<?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>167055</bug_id>
          
          <creation_ts>2017-01-14 13:23:41 -0800</creation_ts>
          <short_desc>Remove PassRefPtr from &quot;loader&quot; directory of WebCore</short_desc>
          <delta_ts>2017-02-02 18:29:48 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</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>167771</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Darin Adler">darin</reporter>
          <assigned_to name="Darin Adler">darin</assigned_to>
          <cc>achristensen</cc>
    
    <cc>buildbot</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ossy</cc>
    
    <cc>pvollan</cc>
    
    <cc>rniwa</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1266840</commentid>
    <comment_count>0</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2017-01-14 13:23:41 -0800</bug_when>
    <thetext>Remove PassRefPtr from &quot;loader&quot; directory of WebCore</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1266867</commentid>
    <comment_count>1</comment_count>
      <attachid>298867</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2017-01-14 16:34:44 -0800</bug_when>
    <thetext>Created attachment 298867
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1266868</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-01-14 16:37:20 -0800</bug_when>
    <thetext>Attachment 298867 did not pass style-queue:


ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:59:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:60:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:61:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:62:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:63:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:64:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
Total errors found: 6 in 124 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>1266876</commentid>
    <comment_count>3</comment_count>
      <attachid>298867</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-01-14 18:12:32 -0800</bug_when>
    <thetext>Comment on attachment 298867
Patch

Attachment 298867 did not pass mac-ews (mac):
Output: http://webkit-queues.webkit.org/results/2890437

Number of test failures exceeded the failure limit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1266877</commentid>
    <comment_count>4</comment_count>
      <attachid>298869</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-01-14 18:12:34 -0800</bug_when>
    <thetext>Created attachment 298869
Archive of layout-test-results from ews101 for mac-elcapitan

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: ews101  Port: mac-elcapitan  Platform: Mac OS X 10.11.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1266878</commentid>
    <comment_count>5</comment_count>
      <attachid>298867</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-01-14 18:22:48 -0800</bug_when>
    <thetext>Comment on attachment 298867
Patch

Attachment 298867 did not pass mac-debug-ews (mac):
Output: http://webkit-queues.webkit.org/results/2890446

Number of test failures exceeded the failure limit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1266879</commentid>
    <comment_count>6</comment_count>
      <attachid>298870</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-01-14 18:22:51 -0800</bug_when>
    <thetext>Created attachment 298870
Archive of layout-test-results from ews117 for mac-elcapitan

The attached test failures were seen while running run-webkit-tests on the mac-debug-ews.
Bot: ews117  Port: mac-elcapitan  Platform: Mac OS X 10.11.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1266881</commentid>
    <comment_count>7</comment_count>
      <attachid>298867</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-01-14 18:31:28 -0800</bug_when>
    <thetext>Comment on attachment 298867
Patch

Attachment 298867 did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.webkit.org/results/2890565

New failing tests:
http/tests/appcache/different-origin-manifest.html
http/tests/appcache/cyrillic-uri.html
http/tests/appcache/origin-usage.html
http/tests/appcache/history-test.html
http/tests/appcache/crash-when-navigating-away-then-back.html
http/tests/appcache/simple-video-sync.html
http/tests/appcache/max-size.html
http/tests/appcache/origin-delete.html
http/tests/appcache/top-frame-1.html
http/tests/appcache/whitelist-wildcard.html
http/tests/ssl/verify-ssl-enabled.php
http/tests/appcache/main-resource-fallback-for-network-error-crash.html
http/tests/appcache/origin-quota-continued-download.html
http/tests/appcache/progress-counter.html
http/tests/appcache/reload.html
http/tests/appcache/foreign-iframe-main.html
http/tests/appcache/main-resource-redirect.html
http/tests/appcache/local-content.html
http/tests/appcache/top-frame-3.html
http/tests/appcache/resource-redirect-2.html
http/tests/appcache/wrong-signature-2.html
http/tests/appcache/manifest-parsing.html
http/tests/appcache/update-cache.html
http/tests/appcache/identifier-test.html
http/tests/appcache/offline-access.html
http/tests/security/cross-origin-appcache.html
http/tests/appcache/x-frame-options-prevents-framing.php</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1266882</commentid>
    <comment_count>8</comment_count>
      <attachid>298871</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-01-14 18:31:31 -0800</bug_when>
    <thetext>Created attachment 298871
Archive of layout-test-results from ews105 for mac-elcapitan-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: ews105  Port: mac-elcapitan-wk2  Platform: Mac OS X 10.11.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1266916</commentid>
    <comment_count>9</comment_count>
      <attachid>298885</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2017-01-14 21:47:45 -0800</bug_when>
    <thetext>Created attachment 298885
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1266918</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-01-14 21:49:51 -0800</bug_when>
    <thetext>Attachment 298885 did not pass style-queue:


ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:59:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:60:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:61:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:62:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:63:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:64:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
Total errors found: 6 in 125 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>1266929</commentid>
    <comment_count>11</comment_count>
      <attachid>298888</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2017-01-14 22:32:29 -0800</bug_when>
    <thetext>Created attachment 298888
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1266932</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-01-14 22:35:17 -0800</bug_when>
    <thetext>Attachment 298888 did not pass style-queue:


ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:59:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:60:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:61:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:62:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:63:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:64:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
Total errors found: 6 in 129 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>1266988</commentid>
    <comment_count>13</comment_count>
      <attachid>298905</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2017-01-15 11:08:20 -0800</bug_when>
    <thetext>Created attachment 298905
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1266989</commentid>
    <comment_count>14</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-01-15 11:10:56 -0800</bug_when>
    <thetext>Attachment 298905 did not pass style-queue:


ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:59:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:60:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:61:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:62:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:63:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:64:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
Total errors found: 6 in 137 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>1267012</commentid>
    <comment_count>15</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2017-01-15 12:05:54 -0800</bug_when>
    <thetext>Darn, still not compiling on iOS. But I am getting closer. Tests all passing, all platforms compiling except for iOS and maybe Windows.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1267020</commentid>
    <comment_count>16</comment_count>
      <attachid>298919</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2017-01-15 12:18:32 -0800</bug_when>
    <thetext>Created attachment 298919
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1267030</commentid>
    <comment_count>17</comment_count>
      <attachid>298926</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2017-01-15 12:28:06 -0800</bug_when>
    <thetext>Created attachment 298926
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1267031</commentid>
    <comment_count>18</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-01-15 12:30:17 -0800</bug_when>
    <thetext>Attachment 298926 did not pass style-queue:


ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:59:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:60:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:61:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:62:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:63:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:64:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
Total errors found: 6 in 140 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>1267041</commentid>
    <comment_count>19</comment_count>
      <attachid>298930</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2017-01-15 13:54:00 -0800</bug_when>
    <thetext>Created attachment 298930
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1267042</commentid>
    <comment_count>20</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-01-15 13:55:46 -0800</bug_when>
    <thetext>Attachment 298930 did not pass style-queue:


ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:59:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:60:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:61:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:62:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:63:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:64:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
Total errors found: 6 in 142 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>1267082</commentid>
    <comment_count>21</comment_count>
      <attachid>298935</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2017-01-15 19:58:06 -0800</bug_when>
    <thetext>Created attachment 298935
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1267083</commentid>
    <comment_count>22</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-01-15 19:59:37 -0800</bug_when>
    <thetext>Attachment 298935 did not pass style-queue:


ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:59:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:60:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:61:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:62:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:63:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:64:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
Total errors found: 6 in 143 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>1267098</commentid>
    <comment_count>23</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2017-01-15 23:59:50 -0800</bug_when>
    <thetext>OK, all green now. Review time.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1267553</commentid>
    <comment_count>24</comment_count>
      <attachid>298935</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-01-17 16:27:05 -0800</bug_when>
    <thetext>Comment on attachment 298935
Patch

Rejecting attachment 298935 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.webkit.org&apos;, &apos;--bot-id=webkit-cq-03&apos;, &apos;apply-attachment&apos;, &apos;--no-update&apos;, &apos;--non-interactive&apos;, 298935, &apos;--port=mac&apos;]&quot; exit_code: 2 cwd: /Volumes/Data/EWS/WebKit

Last 500 characters of output:
file Source/WebKit2/WebProcess/WebPage/gtk/WebPageGtk.cpp
patching file Source/WebKit2/WebProcess/WebPage/ios/WebPageIOS.mm
Hunk #1 succeeded at 468 (offset 1 line).
patching file Source/WebKit2/WebProcess/WebPage/mac/WebPageMac.mm
patching file Source/WebKit2/WebProcess/WebProcess.cpp
patching file Source/WebKit2/WebProcess/WebProcess.h

Failed to run &quot;[u&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/svn-apply&apos;, &apos;--force&apos;, &apos;--reviewer&apos;, u&apos;Alex Christensen&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

Full output: http://webkit-queues.webkit.org/results/2906354</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1267650</commentid>
    <comment_count>25</comment_count>
      <attachid>299112</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2017-01-17 19:43:46 -0800</bug_when>
    <thetext>Created attachment 299112
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1267652</commentid>
    <comment_count>26</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-01-17 19:46:25 -0800</bug_when>
    <thetext>Attachment 299112 did not pass style-queue:


ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:59:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:60:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:61:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:62:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:63:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
ERROR: Source/WebCore/loader/appcache/ApplicationCacheHost.h:64:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
Total errors found: 6 in 141 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>1267669</commentid>
    <comment_count>27</comment_count>
      <attachid>299112</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-01-17 20:58:38 -0800</bug_when>
    <thetext>Comment on attachment 299112
Patch

Attachment 299112 did not pass mac-ews (mac):
Output: http://webkit-queues.webkit.org/results/2907346

New failing tests:
imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/location-protocol-setter-non-broken.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1267670</commentid>
    <comment_count>28</comment_count>
      <attachid>299116</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-01-17 20:58:41 -0800</bug_when>
    <thetext>Created attachment 299116
Archive of layout-test-results from ews101 for mac-elcapitan

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: ews101  Port: mac-elcapitan  Platform: Mac OS X 10.11.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1267674</commentid>
    <comment_count>29</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2017-01-17 21:18:34 -0800</bug_when>
    <thetext>Committed r210845: &lt;http://trac.webkit.org/changeset/210845&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1267692</commentid>
    <comment_count>30</comment_count>
      <attachid>299112</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2017-01-18 01:19:51 -0800</bug_when>
    <thetext>Comment on attachment 299112
Patch

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

&gt; Source/WebCore/loader/DocumentLoader.cpp:866
&gt; +        if (m_archive &amp;&amp; m_archive-&gt;shouldOverrideBaseURL())

This change broke the !ENABLE(MHTML) build, because m_archive 
is declared inside ENABLE(WEB_ARCHIV) || ENABLE(MHTML) guard.

&gt; Source/WebCore/loader/DocumentLoader.cpp:883
&gt; +            if (m_archive &amp;&amp; m_archive-&gt;shouldUseMainResourceEncoding())

ditto</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1267708</commentid>
    <comment_count>31</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2017-01-18 02:29:17 -0800</bug_when>
    <thetext>(In reply to comment #29)
&gt; Committed r210845: &lt;http://trac.webkit.org/changeset/210845&gt;

FYI Alex, it broke the WinCairo build:

C:\Users\Alex\Documents\WinCairoBot\win-cairo-release\build\Source\WebKit\win\WebCoreSupport\WebFrameLoaderClient.h(77): error C3668: &apos;WebFrameLoaderClient::shouldCacheResponse&apos;: method with override specifier &apos;override&apos; did not override any base class methods

C:\Users\Alex\Documents\WinCairoBot\win-cairo-release\build\Source\WebKit\win\WebCoreSupport\WebFrameLoaderClient.h(77): error C3668: &apos;WebFrameLoaderClient::shouldCacheResponse&apos;: method with override specifier &apos;override&apos; did not override any base class methods

C:\Users\Alex\Documents\WinCairoBot\win-cairo-release\build\Source\WebKit\win\WebCoreSupport\WebFrameLoaderClient.h(77): error C3668: &apos;WebFrameLoaderClient::shouldCacheResponse&apos;: method with override specifier &apos;override&apos; did not override any base class methods

C:\Users\Alex\Documents\WinCairoBot\win-cairo-release\build\Source\WebKit\win\WebCoreSupport\WebFrameLoaderClient.h(77): error C3668: &apos;WebFrameLoaderClient::shouldCacheResponse&apos;: method with override specifier &apos;override&apos; did not override any base class methods

C:\Users\Alex\Documents\WinCairoBot\win-cairo-release\build\Source\WebKit\win\WebCoreSupport\WebFrameLoaderClient.h(77): error C3668: &apos;WebFrameLoaderClient::shouldCacheResponse&apos;: method with override specifier &apos;override&apos; did not override any base class methods
ninja: build stopped: subcommand failed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1267820</commentid>
    <comment_count>32</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2017-01-18 12:29:28 -0800</bug_when>
    <thetext>https://trac.webkit.org/changeset/210863</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>298867</attachid>
            <date>2017-01-14 16:34:44 -0800</date>
            <delta_ts>2017-01-14 21:47:40 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-167055-20170114163259.patch</filename>
            <type>text/plain</type>
            <size>613462</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEwNzcwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTQxOTRlNjQ2MmViZmMx
OWRlNTYxM2FhOTcxOGQ3YzNhYThkMjA1ZS4uNjE1NTgzNGM5YmJiYzM4NDQyNWE5ZmZkNmUyZjdi
MmMzZDU3M2FlOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwMyBAQAorMjAxNy0wMS0xNCAgRGFy
aW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIFBhc3NSZWZQdHIg
ZnJvbSAibG9hZGVyIiBkaXJlY3Rvcnkgb2YgV2ViQ29yZQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY3MDU1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6RG9jdW1lbnQ6OnByb2Nlc3NIdHRwRXF1aXYpOiBQYXNzIGEgcmVmZXJlbmNlLgor
ICAgICAgICAqIGVkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6RWRpdENvbW1hbmRDb21wb3NpdGlvbjo6dW5hcHBseSk6IERpdHRvLgorICAgICAgICAo
V2ViQ29yZTo6RWRpdENvbW1hbmRDb21wb3NpdGlvbjo6cmVhcHBseSk6IERpdHRvLgorICAgICAg
ICAoV2ViQ29yZTo6Q29tcG9zaXRlRWRpdENvbW1hbmQ6OmVuc3VyZUNvbXBvc2l0aW9uKTogUmV0
dXJuIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6Q29tcG9zaXRlRWRpdENvbW1hbmQ6
OmFwcGx5Q29tbWFuZFRvQ29tcG9zaXRlKTogVXNlIGEgcmVmZXJlbmNlLgorICAgICAgICAqIGVk
aXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuaDogVXBkYXRlZCBmb3IgYWJvdmUgY2hhbmdlcy4K
KworICAgICAgICAqIGVkaXRpbmcvRWRpdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRv
cjo6dW5hcHBsaWVkRWRpdGluZyk6IFRha2UgYSByZWZlcmVuY2UgaW5zdGVhZCBvZiBhIFBhc3NS
ZWZQdHIuCisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OnJlYXBwbGllZEVkaXRpbmcpOiBEaXR0
by4KKyAgICAgICAgKiBlZGl0aW5nL0VkaXRvci5oOiBVcGRhdGVkIGZvciBhYm92ZSBjaGFuZ2Vz
LiBBbHNvIGNoYW5nZWQgdGhlCisgICAgICAgIEZyYWdtZW50QW5kUmVzb3VyY2VzIHJlc291cmNl
cyB2ZWN0b3IgdG8gaG9sZCBSZWYgaW5zdGVhZCBvZiBSZWZQdHIuCisKKyAgICAgICAgKiBlZGl0
aW5nL21hYy9FZGl0b3JNYWMubW06CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OldlYkNvbnRl
bnRSZWFkZXI6OnJlYWRXZWJBcmNoaXZlKTogUGFzcyBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdl
YkNvcmU6OkVkaXRvcjo6Y3JlYXRlRnJhZ21lbnRBbmRBZGRSZXNvdXJjZXMpOiBVcGRhdGVkIGZv
ciBjaGFuZ2UgdG8KKyAgICAgICAgRnJhZ21lbnRBbmRSZXNvdXJjZXMuCisKKyAgICAgICAgKiBo
aXN0b3J5L1BhZ2VDYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpjYW5DYWNoZUZyYW1lKTog
VXNlIGEgcmVmZXJlbmNlLgorCisgICAgICAgICogaHRtbC9GaWxlSW5wdXRUeXBlLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkZpbGVJbnB1dFR5cGU6OmhhbmRsZURPTUFjdGl2YXRlRXZlbnQpOiBQ
YXNzIHJlZmVyZW5jZXMuCisKKyAgICAgICAgKiBodG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEZvcm1Db250cm9sRWxlbWVudDo6Zm9ybU1ldGhv
ZCk6IFVzZSBhdXRvLgorCisgICAgICAgICogaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6SFRNTEZvcm1FbGVtZW50OjpwcmVwYXJlRm9yU3VibWlzc2lvbik6IFVw
ZGF0ZWQgdG8gdXNlIGEgcmV0dXJuCisgICAgICAgIHZhbHVlcyBmb3IgdGV4dEZpZWxkVmFsdWVz
IGludHNlYWQgb2YgYW4gb3V0IGFyZ3VtZW50IHdpdGggZ2V0VGV4dEZpZWxkVmFsdWVzLgorICAg
ICAgICAoV2ViQ29yZTo6SFRNTEZvcm1FbGVtZW50Ojp0ZXh0RmllbGRWYWx1ZXMpOiBSZW5hbWVk
IGZyb20gZ2V0VGV4dEZpZWxkVmFsdWVzCisgICAgICAgIGFuZCBjaGFuZ2VkIHRvIHVzZSBhIHJl
dHVybiB2YWx1ZSBpbnN0ZWFkIG9mIGFuIG91dCBhcmd1bWVudC4KKyAgICAgICAgKFdlYkNvcmU6
OkhUTUxGb3JtRWxlbWVudDo6c3VibWl0KTogUGFzcyBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdl
YkNvcmU6OkhUTUxGb3JtRWxlbWVudDo6cmVxdWVzdEF1dG9jb21wbGV0ZSk6IFBhc3MgYSBSZWYm
Ji4KKyAgICAgICAgKiBodG1sL0hUTUxGb3JtRWxlbWVudC5oOiBVcGRhdGVkIGZvciBhYm92ZSBj
aGFuZ2VzLgorCisgICAgICAgICogaHRtbC9IVE1MSHRtbEVsZW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTEh0bWxFbGVtZW50OjppbnNlcnRlZEJ5UGFyc2VyKTogVXNlIGEgcmVmZXJl
bmNlLgorCisgICAgICAgICogaHRtbC9IVE1MTGlua0VsZW1lbnQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTExpbmtFbGVtZW50Ojpwcm9jZXNzKTogUGFzcyBhIHJlZmVyZW5jZS4KKyAgICAg
ICAgKFdlYkNvcmU6OkhUTUxMaW5rRWxlbWVudDo6c2V0Q1NTU3R5bGVTaGVldCk6IFVzZSBhdXRv
LgorCisgICAgICAgICogaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkhUTUxNZWRpYUVsZW1lbnQ6OmxvYWRSZXNvdXJjZSk6IFVzZSBhIHJlZmVyZW5jZS4KKwor
ICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50Ojp1cGRhdGVB
cHBsaWNhdGlvbkNhY2hlU3RhdHVzKTogVXNlIGEgcmVmZXJlbmNlLAorICAgICAgICBhbHNvIHVw
ZGF0ZSBmb3Igc3RydWN0LXN0eWxlIG1lbWJlciBuYW1lcyB3aXRob3UgbV8gcHJlZml4LgorICAg
ICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpnZXRGcmFtZXNX
aXRoTWFuaWZlc3RzKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JBcHBsaWNh
dGlvbkNhY2hlQWdlbnQ6OmdldE1hbmlmZXN0Rm9yRnJhbWUpOiBEaXR0by4KKyAgICAgICAgKFdl
YkNvcmU6Okluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6Z2V0QXBwbGljYXRpb25DYWNo
ZUZvckZyYW1lKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JBcHBsaWNhdGlv
bkNhY2hlQWdlbnQ6OmJ1aWxkT2JqZWN0Rm9yQXBwbGljYXRpb25DYWNoZSk6IERpdHRvLgorICAg
ICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZEFycmF5
Rm9yQXBwbGljYXRpb25DYWNoZVJlc291cmNlcyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6
SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZE9iamVjdEZvckFwcGxpY2F0aW9u
Q2FjaGVSZXNvdXJjZSk6IERpdHRvLgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JBcHBs
aWNhdGlvbkNhY2hlQWdlbnQuaDogVXBkYXRlZCBmb3IgYWJvdmUgY2hhbmdlcy4KKworICAgICAg
ICAqIGluc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp1cGRhdGVBcHBsaWNhdGlvbkNhY2hlU3Rh
dHVzSW1wbCk6IFRha2UgYSByZWZlcmVuY2UuCisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3Rv
ckluc3RydW1lbnRhdGlvbi5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBs
b2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXI6OkRvY3VtZW50TG9hZGVyKTogTW92ZSBtdWNoIGluaXRpYWxpemF0aW9uIHRvIGNsYXNzIGRl
ZmluaXRpb24uCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6b3JpZ2luYWxSZXF1
ZXN0KTogTW92ZWQgdG8gaGVhZGVyIHRvIG1ha2UgaXQgaW5saW5lLgorICAgICAgICAoV2ViQ29y
ZTo6RG9jdW1lbnRMb2FkZXI6Om9yaWdpbmFsUmVxdWVzdENvcHkpOiBEaXR0by4KKyAgICAgICAg
KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpyZXF1ZXN0KTogRGl0dG8uCisgICAgICAgIChXZWJD
b3JlOjpEb2N1bWVudExvYWRlcjo6dXJsKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpEb2N1
bWVudExvYWRlcjo6c3RvcExvYWRpbmcpOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXI6OndpbGxTZW5kUmVxdWVzdCk6IFVwZGF0ZWQgdG8gdGFrZSBh
IHJhdyBwb2ludGVyIGluc3RlYWQgb2YgYQorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAo
V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmNvbW1pdERhdGEpOiBDYWxsIHNob3VsZFVzZU1haW5S
ZXNvdXJjZUVuY29kaW5nIGluc3RlYWQgb2YKKyAgICAgICAgc3BlY2lhbCBjYXNpbmcgV2ViQXJj
aGl2ZS4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjptYXliZUNyZWF0ZUFyY2hp
dmUpOiBQYXNzIHJlZmVyZW5jZXMuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6
c2V0QXJjaGl2ZSk6IFRha2UgUmVmJiYgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAo
V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMpOiBUYWtlIGEg
cmVmZXJlbmNlIGluc3RlYWQKKyAgICAgICAgb2YgYSBwb2ludGVyLgorICAgICAgICAoV2ViQ29y
ZTo6RG9jdW1lbnRMb2FkZXI6OnBvcEFyY2hpdmVGb3JTdWJmcmFtZSk6IFJldHVybiBSZWZQdHIg
aW5zdGVhZCBvZgorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXI6OnN1YnJlc291cmNlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVu
dExvYWRlcjo6c3VicmVzb3VyY2VzKTogUmV0dXJuIGEgVmVjdG9yPFJlZj4gaW5zdGVhZCBvZiBh
CisgICAgICAgIFZlY3RvcjxSZWZQdHI+LgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXI6OnN1YnN0aXR1dGVSZXNvdXJjZURlbGl2ZXJ5VGltZXJGaXJlZCk6IFVzZSBtb3ZlCisgICAg
ICAgIGluc3RlYWQgb2Ygc3dhcC4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpz
Y2hlZHVsZUFyY2hpdmVMb2FkKTogVXNlIHNob3VsZExvYWRGcm9tQXJjaGl2ZU9ubHkKKyAgICAg
ICAgaW5zdGVhZCBvZiBhIHNwZWNpYWwgY2FzZSBmb3IgZWFjaCB0eXBlIG9mIGFyY2hpdmUuCisg
ICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6b3JpZ2luYWxVUkwpOiBNb3ZlZCB0byBo
ZWFkZXIgdG8gbWFrZSBpdCBpbmxpbmUuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRl
cjo6cmVzcG9uc2VVUkwpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
Ojpkb2N1bWVudFVSTCk6IENhbGwgc2hvdWxkVXNlTWFpblJlc291cmNlVVJMIGluc3RlYWQgb2YK
KyAgICAgICAgc3BlY2lhbCBjYXNpbmcgV2ViQXJjaGl2ZS4KKyAgICAgICAgKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyOjpyZXNwb25zZU1JTUVUeXBlKTogTW92ZWQgdG8gaGVhZGVyIHRvIG1ha2Ug
aXQgaW5saW5lLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmN1cnJlbnRDb250
ZW50VHlwZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmNvbnRl
bnRGaWx0ZXIpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpnZXRJ
Y29uTG9hZERlY2lzaW9uRm9ySWNvblVSTCk6IFBhc3MgYSByZWZlcmVuY2UuCisgICAgICAgIChX
ZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6Z2V0SWNvbkRhdGFGb3JJY29uVVJMKTogRGl0dG8uCisg
ICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6ZGlzcGF0Y2hPbmxvYWRFdmVudHMpOiBV
c2UgYSByZWZlcmVuY2UuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6dW5yZWFj
aGFibGVVUkwpOiBNb3ZlZCB0byBoZWFkZXIgdG8gbWFrZSBpdCBpbmxpbmUuCisgICAgICAgICog
bG9hZGVyL0RvY3VtZW50TG9hZGVyLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAg
ICAqIGxvYWRlci9FbXB0eUNsaWVudHMuY3BwOiBVcGRhdGVkIGZvciBjaGFuZ2VzIHRvIGNsaWVu
dCBpbnRlcmZhY2VzLgorICAgICAgICAqIGxvYWRlci9FbXB0eUNsaWVudHMuaDogRGl0dG8uCisK
KyAgICAgICAgKiBsb2FkZXIvRm9ybVN0YXRlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvcm1T
dGF0ZTo6Rm9ybVN0YXRlKTogVGFrZSByZWZlcmVuY2VzIGluc3RlYWQgb2YgUGFzc1JlZlB0ciwg
YWxzbworICAgICAgICB0YWtlIFZlY3RvciYmIGluc3RlYWQgb2YgVmVjdG9yJiB3aGVuIHdlIHdh
bnQgdG8gdGFrZSBvd25lcnNoaXAgYW5kIHVzZSBtb3ZlCisgICAgICAgIGluc3RlYWQgb2Ygc3dh
cCB0byBkbyB0aGF0LgorICAgICAgICAoV2ViQ29yZTo6Rm9ybVN0YXRlOjpjcmVhdGUpOiBEaXR0
by4KKyAgICAgICAgKiBsb2FkZXIvRm9ybVN0YXRlLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4g
QWxzbyBjaGFuZ2VkIHJldHVybiB2YWx1ZXMgdG8gYmUKKyAgICAgICAgcmVmZXJlbmNlcyBpbnN0
ZWFkIG9mIHBvaW50ZXJzIGFuZCBtZW1iZXJzIHRvIGJlIFJlZiBpbnN0ZWFkIG9mIFJlZlB0ci4K
KworICAgICAgICAqIGxvYWRlci9Gb3JtU3VibWlzc2lvbi5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpGb3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6cGFyc2VNZXRob2RUeXBlKTogVXBkYXRlZCBm
b3IgY2hhbmdlCisgICAgICAgIHRvIHRoZSBNZXRob2QgZW51bWVyYXRpb24uCisgICAgICAgIChX
ZWJDb3JlOjpGb3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6Y29weUZyb20pOiBEZWxldGVkLgor
ICAgICAgICAoV2ViQ29yZTo6Rm9ybVN1Ym1pc3Npb246OkZvcm1TdWJtaXNzaW9uKTogVXNlIFJl
ZiYmIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYkNvcmU6OkZvcm1TdWJtaXNz
aW9uOjpjcmVhdGUpOiBVc2UgcmVmZXJlbmNlIGluc3RlYWQgb2YgcG9pbnRlciBhbmQKKyAgICAg
ICAgcmF3IHBvaW50ZXIgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLiBBbHNvIGNvcHkgYXR0cmlidXRl
cyB1c2luZyBjb3B5IGNvbnN0cnVjdG9yCisgICAgICAgIGluc3RlYWQgb2YgYW4gZXhwbGljaXQg
Y29weUZyb20gZnVuY3Rpb24uCisgICAgICAgIChXZWJDb3JlOjpGb3JtU3VibWlzc2lvbjo6cmVx
dWVzdFVSTCk6IFVwZGF0ZWQgZm9yIGNoYW5nZSB0byB0aGUgTWV0aG9kCisgICAgICAgIGVudW1l
cmF0aW9uLgorICAgICAgICAoV2ViQ29yZTo6Rm9ybVN1Ym1pc3Npb246OnBvcHVsYXRlRnJhbWVM
b2FkUmVxdWVzdCk6IERpdHRvLgorICAgICAgICAqIGxvYWRlci9Gb3JtU3VibWlzc2lvbi5oOiBV
cGRhdGVkIGZvciB0aGUgYWJvdmUgY2hhbmdlcy4gTWFkZSB0aGUgQXR0cmlidXRlcworICAgICAg
ICBjbGFzcyBjb3B5YWJsZSwgc2luY2Ugd2UgY29weSBpdC4gQ2hhbmdlZCBzb21lIGZ1bmN0aW9u
cyB0byByZXR1cm4gcmVmZXJlbmNlcworICAgICAgICBpbnN0ZWFkIG9mIHBvaW50ZXJzIGFuZCB1
c2UgUmVmIGluc3RlYWQgb2YgUmVmUHRyIGZvciBkYXRhIG1lbWJlcnMuCisKKyAgICAgICAgKiBs
b2FkZXIvRnJhbWVMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6OnN1
Ym1pdEZvcm0pOiBVcGRhdGVkIGZvciBjaGFuZ2VzIHRvIEZvcm1TdWJtaXNzaW9uCisgICAgICAg
IGFuZCBGb3JtU3RhdGUuCisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6cmVjZWl2ZWRG
aXJzdERhdGEpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2FkRnJh
bWVSZXF1ZXN0KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6bG9hZFJl
c291cmNlU3luY2hyb25vdXNseSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2Fk
ZXI6OmNvbnRpbnVlTG9hZEFmdGVyTmF2aWdhdGlvblBvbGljeSk6IERpdHRvLgorCisgICAgICAg
ICogbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50Lmg6IFVzZSByZWZlcmVuY2VzLCBwb2ludGVycywg
UmVmUHRyLCBhbmQgUmVmCisgICAgICAgIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKworICAgICAg
ICAqIGxvYWRlci9IaXN0b3J5Q29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIaXN0
b3J5Q29udHJvbGxlcjo6cHVzaFN0YXRlKTogVGFrZSBSZWZQdHImJiBpbnN0ZWFkIG9mIFBhc3NS
ZWZQdHIuCisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5Q29udHJvbGxlcjo6cmVwbGFjZVN0YXRl
KTogRGl0dG8uCisgICAgICAgICogbG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmg6IFVwZGF0ZWQg
Zm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRlci9JbWFnZUxvYWRlci5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpJbWFnZUxvYWRlcjo6dXBkYXRlRnJvbUVsZW1lbnQpOiBQYXNzIGEgcmVm
ZXJlbmNlLgorCisgICAgICAgICogbG9hZGVyL05hdmlnYXRpb25TY2hlZHVsZXIuY3BwOiBVc2Ug
cmVmZXJuY2VzIGFuZCBSZWYmJiBpbnN0ZWFkIG9mCisgICAgICAgIHBvaW50ZXJzIGFuZCBQYXNz
UmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6U2NoZWR1bGVkTmF2aWdhdGlvbjo6U2NoZWR1bGVk
TmF2aWdhdGlvbik6IEFkZGVkIGFuIG92ZXJsb2FkCisgICAgICAgIHRoYXQgc2VzdHMgbV9zaG91
bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5LgorICAgICAgICAqIGxvYWRlci9OYXZpZ2F0aW9uU2No
ZWR1bGVyLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRlci9SZXNv
dXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcjo6c3RhcnQp
OiBVc2UgYW5kIHBhc3MgcmVmZXJlbmNlcy4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVyOjp3aWxsU2VuZFJlcXVlc3QpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNl
TG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlJl
c291cmNlTG9hZGVyOjpkaWRGYWlsKTogRGl0dG8uCisKKyAgICAgICAgKiBsb2FkZXIvU3ViZnJh
bWVMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OmNyZWF0ZUph
dmFBcHBsZXRXaWRnZXQpOiBSZXR1cm4gUmVmUHRyIGluc3RlYWQKKyAgICAgICAgb2YgUGFzc1Jl
ZlB0ci4gUGFzcyByZWZlcmVuY2VzIGluc3RlYWQgb2YgcG9pbnRlcnMuCisgICAgICAgIChXZWJD
b3JlOjpTdWJmcmFtZUxvYWRlcjo6bG9hZE9yUmVkaXJlY3RTdWJmcmFtZSk6IERpdHRvLgorICAg
ICAgICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OmxvYWRTdWJmcmFtZSk6IERpdHRvLgorICAg
ICAgICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OmRvY3VtZW50KTogRGVsZXRlZC4gVGhpcyB3
YXMgbmV2ZXIgcmVhbGx5IHRoZQorICAgICAgICBjb3JyZWN0IGlkaW9tIGZvciBnZXR0aW5nIHRo
ZSBhcHByb3ByaWF0ZSBkb2N1bWVudDsgaGlkaW5nIHRoZSBkZXBlbmRlbmN5CisgICAgICAgIG9u
IG1fZnJhbWUgd2Fzbid0IHBhaW5nIG9mZi4KKyAgICAgICAgKFdlYkNvcmU6OlN1YmZyYW1lTG9h
ZGVyOjpsb2FkUGx1Z2luKTogUGFzcyByZWZlcmVuY2UgaW5zdGVhZCBvZiBwb2ludGVyLgorICAg
ICAgICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OnNob3VsZENvbnZlcnRJbnZhbGlkVVJMc1Rv
QmxhbmspOiBFbGltaW5hdGVkCisgICAgICAgIHVubmVlZGVkIG51bGwgY2hlY2tpbmcgYW5kIGNv
bXBsZXhpdHkgZHVlIHRvIGdvaW5nIHRocm91Z2ggdGhlIGRvY3VtZW50CisgICAgICAgIGluc3Rl
YWQgb2YgdGhlIGZyYW1lIGZvciB0aGlzIGNoZWNrLgorICAgICAgICAqIGxvYWRlci9TdWJmcmFt
ZUxvYWRlci5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIvYXBw
Y2FjaGUvQXBwbGljYXRpb25DYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlv
bkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlKTogTW92ZWQgZGF0YSBtZW1iZXIKKyAgICAgICAgaW5p
dGlhbGl6YXRpb24gdG8gdGhlIGNsYXNzIGRlZmluaXRpb24uCisgICAgICAgIChXZWJDb3JlOjpB
cHBsaWNhdGlvbkNhY2hlOjp+QXBwbGljYXRpb25DYWNoZSk6IFBhc3MgYSByZWZlcmVuY2UgaW5z
dGVhZAorICAgICAgICBvZiBhIHBvaW50ZXIuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlv
bkNhY2hlOjppc0NvbXBsZXRlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlv
bkNhY2hlOjpzZXRNYW5pZmVzdFJlc291cmNlKTogVGFrZSBSZWYmJiBpbnN0ZWFkIG9mCisgICAg
ICAgIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlOjphZGRS
ZXNvdXJjZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZTo6cmVt
b3ZlUmVzb3VyY2UpOiBEZWxldGVkLiBXYXMgdW51c2VkLgorICAgICAgICAqIGxvYWRlci9hcHBj
YWNoZS9BcHBsaWNhdGlvbkNhY2hlLmg6IFVwZGF0ZWQgZm9yIGFib3ZlIGNoYW5nZXMuCisKKyAg
ICAgICAgKiBsb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6QXBwbGljYXRpb25DYWNoZUdyb3Vw
KTogTW92ZWQgbW9zdAorICAgICAgICBtZW1iZXIgaW5pdGlhbGl6YXRpb24gdG8gdGhlIGNsYXNz
IGRlZmluaXRpb24uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6On5B
cHBsaWNhdGlvbkNhY2hlR3JvdXApOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29y
ZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpjYWNoZUZvck1haW5SZXF1ZXN0KTogUmVtb3ZlZAor
ICAgICAgICB1bm5lY2Vzc2FyeSBwcmVmbGlnaHQgZm9yIHJlbW92ZUZyYWdtZW50SWRlbnRpZmll
ciwgd2hpY2ggZWZmaWNpZW50bHkKKyAgICAgICAgZG9lcyBub3RoaW5nIGlmIHRoZXJlIGlzIG5v
IGlkZW50aWZpZXIuIFVzZSBlYXJseSByZXR1cm4uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNh
dGlvbkNhY2hlR3JvdXA6OmZhbGxiYWNrQ2FjaGVGb3JNYWluUmVxdWVzdCk6IE1vcmUgb2YKKyAg
ICAgICAgdGhlIHNhbWUuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
OnNlbGVjdENhY2hlKTogRGl0dG8sIGFsc28gdGFrZSBhIHJlZmVyZW5jZSwKKyAgICAgICAgYW5k
IHVzZSBldmVudCBuYW1lcyBpbnN0ZWFkIG9mIGEgc3BlY2lhbCBlbnVtZXJhdGlvbiB0byBwb2Fz
dCBldmVudHMuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVj
dENhY2hlV2l0aG91dE1hbmlmZXN0VVJMKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBs
aWNhdGlvbkNhY2hlR3JvdXA6OmZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZSk6IERpdHRvLgor
ICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpmYWlsZWRMb2FkaW5nTWFp
blJlc291cmNlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3Jv
dXA6OmRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKTogRGl0dG8uCisgICAgICAgIChXZWJDb3Jl
OjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNhY2hlRGVzdHJveWVkKTogRGl0dG8uCisgICAgICAg
IChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnN0b3BMb2FkaW5nSW5GcmFtZSk6IERp
dHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZXROZXdlc3RD
YWNoZSk6IFVzZSBSZWYmJiBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIuCisgICAgICAg
IChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6Om1ha2VPYnNvbGV0ZSk6IE1vcmUgb2Yg
dGhlIHNhbWUuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnVwZGF0
ZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjphYm9y
dCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpkaWRS
ZWNlaXZlUmVzcG9uc2UpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2Fj
aGVHcm91cDo6ZGlkRmluaXNoTG9hZGluZyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBw
bGljYXRpb25DYWNoZUdyb3VwOjpkaWRGYWlsKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpB
cHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRpZEZpbmlzaExvYWRpbmdNYW5pZmVzdCk6IERpdHRvLgor
ICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjptYW5pZmVzdE5vdEZvdW5k
KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNoZWNr
SWZMb2FkSXNDb21wbGV0ZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25D
YWNoZUdyb3VwOjpzdGFydExvYWRpbmdFbnRyeSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6
QXBwbGljYXRpb25DYWNoZUdyb3VwOjpkZWxpdmVyRGVsYXllZE1haW5SZXNvdXJjZXMpOiBVc2Ug
YSBtb2Rlcm4KKyAgICAgICAgZm9yIGxvb3AuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlv
bkNhY2hlR3JvdXA6OmFkZEVudHJ5KTogVXNlIGF1dG8gYW5kIHNpbXBsaWZ5IGxvZ2ljCisgICAg
ICAgIGZvciBhZGRpbmcuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
OmFzc29jaWF0ZURvY3VtZW50TG9hZGVyV2l0aENhY2hlKTogVXBkYXRlIHNpbmNlCisgICAgICAg
IGZ1bmN0aW9uIHJlc3VsdCBpcyBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxp
Y2F0aW9uQ2FjaGVHcm91cDo6c2NoZWR1bGVSZWFjaGVkTWF4QXBwQ2FjaGVTaXplQ2FsbGJhY2sp
OgorICAgICAgICBVc2UgYXV0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVH
cm91cDo6cG9zdExpc3RlbmVyVGFzayk6IFRha2UgZXZlbnQgdHlwZSBpbnN0ZWFkIG9mCisgICAg
ICAgIHRha2luZyBhIHNwZWNpYWwgZW51bWVyYXRpb24uCisgICAgICAgICogbG9hZGVyL2FwcGNh
Y2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAg
ICAgICAgKiBsb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUhvc3QuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhvc3Q6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0KTog
TW92ZSBtb3N0IG1lbWJlcgorICAgICAgICBpbml0aWFsaXphdGlvbiB0byB0aGUgY2xhc3MgZGVm
aW5pdGlvbi4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojp+QXBwbGlj
YXRpb25DYWNoZUhvc3QpOiBVc2UgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGlj
YXRpb25DYWNoZUhvc3Q6OnNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0KTogRGl0dG8uCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c2VsZWN0Q2FjaGVXaXRoTWFuaWZl
c3QpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0OjptYWlu
UmVzb3VyY2VEYXRhUmVjZWl2ZWQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0
aW9uQ2FjaGVIb3N0OjpmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKTogRGl0dG8uCisgICAgICAg
IChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6ZmluaXNoZWRMb2FkaW5nTWFpblJlc291
cmNlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWF5
YmVMb2FkRmFsbGJhY2tGb3JSZWRpcmVjdCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBw
bGljYXRpb25DYWNoZUhvc3Q6Om1heWJlTG9hZEZhbGxiYWNrRm9yUmVzcG9uc2UpOiBEaXR0by4K
KyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpjcmVhdGVGaWxlVVJMKTog
RGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWF5YmVMb2Fk
U3luY2hyb25vdXNseSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNo
ZUhvc3Q6Om5vdGlmeURPTUFwcGxpY2F0aW9uQ2FjaGUpOiBUYWtlIGV2ZW50CisgICAgICAgIHR5
cGUgaW5zdGVhZCBvZiBzcGVjaWFsIGVudW1lcmF0aW9uLgorICAgICAgICAoV2ViQ29yZTo6QXBw
bGljYXRpb25DYWNoZUhvc3Q6OnN0b3BMb2FkaW5nSW5GcmFtZSk6IFVzZSByZWZlcmVuY2UuCisg
ICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c3RvcERlZmVycmluZ0V2ZW50
cyk6IFVwZGF0ZWQgdG8gdXNlCisgICAgICAgIGV2ZW50IHR5cGVzIGluc3RlYWQgb2Ygc3BlY2lh
bCBlbnVtZXJhdGlvbiBhbmQgYWxzbyByZXBhaXJlZCBwb3NzaWJsZQorICAgICAgICBlZGdlIGNh
c2Ugd2hlcmUgY29kZSBpbiBldmVudCBoYW5kbGVyIHNvbWVob3cgdHJpZ2dlcnMgYWRkaXRpb25h
bCBldmVudHMuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6cmVzb3Vy
Y2VMaXN0KTogUmVuYW1lZCBmcm9tIGZpbGxSZXNvdXJjZUxpc3QKKyAgICAgICAgYW5kIGNoYW5n
ZWQgdG8gcmV0dXJuIGEgdmVjdG9yIGluc3RlYWQgb2YgcG9wdWxhdGluZyBvbmUuCisgICAgICAg
IChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6YXBwbGljYXRpb25DYWNoZUluZm8pOiBU
d2VhayBjb2Rpbmcgc3R5bGUgYSBiaXQuCisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVBcHBsaWNh
dGlvbkNhY2hlRXZlbnQpOiBGYWN0b3JlZCB0aGlzIGhlbHBlciBvdXQgb2YKKyAgICAgICAgZGlz
cGF0Y2hET01FdmVudCBzbyB3ZSBjYW4gdXNlIFJlZiBpbnN0ZWFkIG9mIFJlZlB0ci4KKyAgICAg
ICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpkaXNwYXRjaERPTUV2ZW50KTogVXBk
YXRlZCB0byByZWNlbnQgZXZlbnQgdHlwZQorICAgICAgICByYXRoZXIgdGhhbiByZWNlaXZpbmcg
YW4gZXZlbnQgaWQgYW5kIG1hcHBpbmcgaXQgdG8gYSB0eXBlLgorICAgICAgICAoV2ViQ29yZTo6
QXBwbGljYXRpb25DYWNoZUhvc3Q6OnNldEFwcGxpY2F0aW9uQ2FjaGUpOiBUYWtlIFJlZlB0ciYm
IGluc3RlYWQgb2YKKyAgICAgICAgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxp
Y2F0aW9uQ2FjaGVIb3N0Ojp1cGRhdGUpOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2Vi
Q29yZTo6QXBwbGljYXRpb25DYWNoZUhvc3Q6OnN3YXBDYWNoZSk6IERpdHRvLgorICAgICAgICAo
V2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhvc3Q6OmFib3J0KTogRGl0dG8uCisgICAgICAgICog
bG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVIb3N0Lmg6IFVwZGF0ZWQgZm9yIHRoZSBh
Ym92ZS4KKworICAgICAgICAqIGxvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFn
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6bG9hZENh
Y2hlR3JvdXApOiBQYXNzIGEgUmVmIGluc3RlYWQgb2YgUmVmUHRyLgorICAgICAgICAoV2ViQ29y
ZTo6QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmNhY2hlR3JvdXBGb3JVUkwpOiBEaXR0by4KKyAg
ICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpmYWxsYmFja0NhY2hlR3Jv
dXBGb3JVUkwpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVTdG9y
YWdlOjpjYWNoZUdyb3VwRGVzdHJveWVkKTogVGFrZSBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdl
YkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpjYWNoZUdyb3VwTWFkZU9ic29sZXRlKTog
RGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6c3RvcmVO
ZXdlc3RDYWNoZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZVN0
b3JhZ2U6OmxvYWRDYWNoZSk6IFJldHVybiBSZWZQdHIgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgor
ICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmRlbGV0ZUNhY2hlR3Jv
dXApOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAqIGxvYWRlci9hcHBjYWNoZS9BcHBsaWNh
dGlvbkNhY2hlU3RvcmFnZS5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBs
b2FkZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25DYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpET01BcHBsaWNhdGlvbkNhY2hlOjpET01BcHBsaWNhdGlvbkNhY2hlKTogVGFrZSBhIHJlZmVy
ZW5jZS4KKyAgICAgICAgKFdlYkNvcmU6OkRPTUFwcGxpY2F0aW9uQ2FjaGU6OnRvRXZlbnRUeXBl
KTogRGVsZXRlZC4KKyAgICAgICAgKiBsb2FkZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25DYWNo
ZS5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuIE1hZGUgbW9zdAorICAgICAgICBtZW1iZXJzIHBy
aXZhdGUuCisKKyAgICAgICAgKiBsb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkFyY2hpdmU6OmNsZWFyQWxsU3ViZnJhbWVBcmNoaXZlcyk6IFVzZSBhIHNldCBm
b3IgdGhlIGxvZ2ljIHRoYXQKKyAgICAgICAgcHJldmVudHMgdXMgZnJvbSB3YWxraW5nIHRoZSBz
YW1lIGFyY2hpdmUgbW9yZSB0aGFuIG9uY2UsIHJhdGhlciB0aGFuIHVzaW5nCisgICAgICAgIGEg
dmVjdG9yLiBMZWZ0IGl0IHJlY3Vyc2l2ZSwgdGhvdWdoLgorICAgICAgICAqIGxvYWRlci9hcmNo
aXZlL0FyY2hpdmUuaDogR2l0IHJpZCBvZiB0aGUgdHlwZSBmdW5jdGlvbiwgcmVwbGFjaW5nIGl0
IHdpdGgKKyAgICAgICAgdGhyZWUgZnVuY3Rpb25zIGZvciB0aGUgdGhyZWUgZGlmZmVyZW50IHBv
bGljaWVzIHdlIGN1cnJlbnRseSBoYXZlIGFib3V0IHRoZQorICAgICAgICBkaWZmZXJlbnQgYXJj
aGl2ZSB0eXBlcy4gQ2hhbmdlZCBmdW5jdGlvbnMgdG8gdGFrZSBSZWYmJiBpbnN0ZWFkIG9mIFBh
c3NSZWZQdHIKKyAgICAgICAgYW5kIHJldHVybiBjb25zdCBWZWN0b3I8UmVmPiYgaW5zdGVhZCBv
ZiBjb25zdCBWZWN0b3I8UmVmUHRyPiYsIGNoYW5naW5nIHRoZQorICAgICAgICBkYXRhIG1lbWJl
cnMgdG8gbWF0Y2guCisKKyAgICAgICAgKiBsb2FkZXIvYXJjaGl2ZS9BcmNoaXZlRmFjdG9yeS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVBcmNoaXZlTUlNRVR5cGVzTWFwKTogRmFjdG9y
ZWQgdGhpcyBvdXQgb2YgdGhlIGFyY2hpdmVNSU1FVHlwZXMKKyAgICAgICAgZnVuY3Rpb24gc28g
d2UgZG9uJ3QgbmVlZCBhIGJvb2xlYW4uIEFsc28gdXNlIEFTQ0lJTGl0ZXJhbC4KKyAgICAgICAg
KFdlYkNvcmU6OmFyY2hpdmVNSU1FVHlwZXMpOiBVcGRhdGVkIHRvIHNlIHRoZSBhYm92ZS4KKwor
ICAgICAgICAqIGxvYWRlci9hcmNoaXZlL0FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24uY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6QXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbjo6YWRkQWxsUmVzb3Vy
Y2VzKTogVGFrZSBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYkNvcmU6OkFyY2hpdmVSZXNvdXJj
ZUNvbGxlY3Rpb246OnBvcFN1YmZyYW1lQXJjaGl2ZSk6IFJldHVybiBSZWZQdHIgaW5zdGVhZAor
ICAgICAgICBvZiBQYXNzUmVmUHRyLgorICAgICAgICAqIGxvYWRlci9hcmNoaXZlL0FyY2hpdmVS
ZXNvdXJjZUNvbGxlY3Rpb24uaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLgorCisgICAgICAgICog
bG9hZGVyL2FyY2hpdmUvY2YvTGVnYWN5V2ViQXJjaGl2ZS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbik6IFVz
ZSBhdXRvIGFuZAorICAgICAgICBmZXdlciBsb2NhbCB2YXJpYWJsZXMsIG1vcmUgcmVmZXJlbmNl
cyBmb3IgYXJndW1lbnQgdHlwZXMgYW5kIHJldHVybiB2YWx1ZXMuCisgICAgICAgIChXZWJDb3Jl
OjpMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVSZXNvdXJjZVJlc3BvbnNlRnJvbVByb3BlcnR5TGlz
dERhdGEpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0
ZVJlc291cmNlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpMZWdhY3lXZWJBcmNoaXZlOjpj
cmVhdGUpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hpdmU6OmV4dHJh
Y3QpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hpdmU6OnR5cGUpOiBE
ZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6cmF3RGF0YVJlcHJl
c2VudGF0aW9uKTogTW9yZSBvZiB0aGUgc2FtZS4KKyAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeVdl
YkFyY2hpdmU6OmNyZWF0ZUZyb21TZWxlY3Rpb24pOiBEaXR0by4KKyAgICAgICAgKiBsb2FkZXIv
YXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNoaXZlLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4gQWxz
byBtYXJrZWQgdGhlCisgICAgICAgIGNsYXNzIGZpbmFsIGFuZCBhZGRlZCBvdmVycmlkZXMgZm9y
IHRoZSB0aHJlZSBuZXcgcG9saWN5IG1lbWJlciBmdW5jdGlvbnMuCisKKyAgICAgICAgKiBsb2Fk
ZXIvYXJjaGl2ZS9taHRtbC9NSFRNTEFyY2hpdmUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TUhU
TUxBcmNoaXZlOjpnZW5lcmF0ZU1IVE1MRGF0YSk6IFJldHVybiBSZWZQdHIgaW5zdGVhZCBvZgor
ICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAqIGxvYWRlci9hcmNoaXZlL21odG1sL01IVE1M
QXJjaGl2ZS5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuIEFsc28gbWFya2VkIHRoZQorICAgICAg
ICBjbGFzcyBmaW5hbCBhbmQgYWRkZWQgb3ZlcnJpZGVzIGZvciB0aGUgdGhyZWUgbmV3IHBvbGlj
eSBtZW1iZXIgZnVuY3Rpb25zLgorCisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZENTU1N0
eWxlU2hlZXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkQ1NTU3R5bGVTaGVldDo6cmVz
dG9yZVBhcnNlZFN0eWxlU2hlZXQpOiBSZXR1cm4gUmVmUHRyIGluc3RlYWQKKyAgICAgICAgb2Yg
UGFzc1JlZlB0ci4KKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5o
OiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVk
UmVzb3VyY2VSZXF1ZXN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlUmVx
dWVzdDo6c2V0SW5pdGlhdG9yKTogVGFrZSBhIHJlZmVyZW5jZSBpbnN0ZWFkIG9mIGEKKyAgICAg
ICAgUGFzc1JlZlB0ci4KKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VSZXF1
ZXN0Lmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRlci9jb2NvYS9E
aXNrQ2FjaGVNb25pdG9yLmg6IFJlbW92ZWQuIFRoaXMgaXMgYSBkdXBsaWNhdGUsIHVudXNlZCBj
b3B5CisgICAgICAgIG9mIERpc2tDYWNoZU1vbml0b3JDb2NvYS5oLgorCisgICAgICAgICogbG9h
ZGVyL2NvY29hL0Rpc2tDYWNoZU1vbml0b3JDb2NvYS5oOiBSZW1vdmVkIHVubmVlZGVkIGV4cG9y
dGluZyBhbmQgdmlydHVhbAorICAgICAgICBtZW1iZXIgZnVuY3Rpb25zLCBtYWRlIG1vcmUgdGhp
bmdzIHByaXZhdGUsIGFuZCBjaGFuZ2VkIHJldHVybiB0eXBlIHRvIFJlZlB0cgorICAgICAgICBp
bnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgICogbG9hZGVyL2NvY29hL0Rpc2tDYWNoZU1v
bml0b3JDb2NvYS5tbToKKyAgICAgICAgKFdlYkNvcmU6OkRpc2tDYWNoZU1vbml0b3I6OnRyeUdl
dEZpbGVCYWNrZWRTaGFyZWRCdWZmZXJGcm9tQ0ZVUkxDYWNoZWRSZXNwb25zZSk6CisgICAgICAg
IENoYW5nZWQgcmV0dXJuIHR5cGUgdG8gUmVmUHRyIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKwor
ICAgICAgICAqIGxvYWRlci9pY29uL0ljb25EYXRhYmFzZS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpJY29uRGF0YWJhc2U6OnNldEljb25EYXRhRm9ySWNvblVSTCk6IFRha2UgcmF3IHBvaW50ZXIg
aW5zdGVhZCBvZgorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6SWNvbkRh
dGFiYXNlOjpnZXRPckNyZWF0ZUljb25SZWNvcmQpOiBSZXR1cm4gUmVmIGluc3RlYWQgb2YgUGFz
c1JlZlB0ci4KKyAgICAgICAgKFdlYkNvcmU6Okljb25EYXRhYmFzZTo6Z2V0SW1hZ2VEYXRhRm9y
SWNvblVSTEZyb21TUUxEYXRhYmFzZSk6IFJldHVybiBSZWZQdHIKKyAgICAgICAgaW5zdGVhZCBv
ZiBQYXNzUmVmUHRyLgorICAgICAgICAqIGxvYWRlci9pY29uL0ljb25EYXRhYmFzZS5oOiBVcGRh
dGVkIGZvciB0aGUgYWJvdmUuIEFsc28gbWFya2VkIGZ1bmN0aW9ucyBmaW5hbAorICAgICAgICBp
bnN0ZWFkIG9mIG92ZXJyaWRlLgorICAgICAgICAqIGxvYWRlci9pY29uL0ljb25EYXRhYmFzZUJh
c2UuaDogRGl0dG8uCisKKyAgICAgICAgKiBsb2FkZXIvaWNvbi9QYWdlVVJMUmVjb3JkLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlBhZ2VVUkxSZWNvcmQ6OlBhZ2VVUkxSZWNvcmQpOiBNb3ZlZCBp
bml0aWFsaXphdGlvbiB0byB0aGUgaGVhZGVyLgorICAgICAgICAoV2ViQ29yZTo6UGFnZVVSTFJl
Y29yZDo6flBhZ2VVUkxSZWNvcmQpOiBXcm90ZSBjb2RlIGhlcmUgaW5zdGVhZCBvZiBjYWxsaW5n
CisgICAgICAgIHNldEljb25SZWNvcmQobnVsbHB0cikuCisgICAgICAgIChXZWJDb3JlOjpQYWdl
VVJMUmVjb3JkOjpzZXRJY29uUmVjb3JkKTogVGFrZSBSZWZQdHImJiBpbnN0ZWFkIG9mIFBhc3NS
ZWZQdHIuCisgICAgICAgICogbG9hZGVyL2ljb24vUGFnZVVSTFJlY29yZC5oOiBVcGRhdGQgZm9y
IHRoZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRlci9pb3MvUXVpY2tMb29rLmg6CisgICAgICAg
IChXZWJDb3JlOjpRdWlja0xvb2tIYW5kbGU6OnNldENsaWVudCk6IFRha2UgUmVmJiYgaW5zdGVh
ZCBvZiBQYXNzUmVGUHRyLgorICAgICAgICAqIGxvYWRlci9pb3MvUXVpY2tMb29rLm1tOgorICAg
ICAgICAoLVtXZWJSZXNvdXJjZUxvYWRlclF1aWNrTG9va0RlbGVnYXRlIGluaXRXaXRoUmVzb3Vy
Y2VMb2FkZXI6XSk6IFRha2UKKyAgICAgICAgcmVmZXJlbmNlIGluc3RlYWQgb2YgUGFzc1JlZlB0
ci4KKyAgICAgICAgKFdlYkNvcmU6OlF1aWNrTG9va0hhbmRsZTo6Y3JlYXRlKTogUGFzcyByZWZl
cmVuY2UgaW5zdGVhZCBvZiBwb2ludGVyLgorCisgICAgICAgICogcGFnZS9DaHJvbWUuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6Q2hyb21lOjpydW5PcGVuUGFuZWwpOiBVcGRhdGVkIHRvIHRha2Ug
dHdvIHJlZmVyZW5jZXMuCisgICAgICAgICogcGFnZS9DaHJvbWUuaDogRGl0dG8uCisgICAgICAg
ICogcGFnZS9DaHJvbWVDbGllbnQuaDogZGl0dG8uCisKKyAgICAgICAgKiBwYWdlL0RPTVdpbmRv
dy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpET01XaW5kb3c6OmFwcGxpY2F0aW9uQ2FjaGUpOiBQ
YXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6RE9NV2luZG93OjpzZXRMb2NhdGlv
bik6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RE9NV2luZG93OjpjcmVhdGVXaW5kb3cpOiBE
aXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkRPTVdpbmRvdzo6b3Blbik6IERpdHRvLgorCisgICAg
ICAgICogcGFnZS9FZGl0b3JDbGllbnQuaDogQ2hhbmdlZCBhcmd1bWVudHMgdG8gcmVmZXJlbmNl
cyBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisKKyAgICAgICAgKiBwYWdlL0hpc3RvcnkuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6SGlzdG9yeTo6c3RhdGVPYmplY3RBZGRlZCk6IFBhc3MgYW4gcnZh
bHVlIHJlZmVyZW5jZS4KKworICAgICAgICAqIHBhZ2UvTG9jYXRpb24uY3BwOgorICAgICAgICAo
V2ViQ29yZTo6TG9jYXRpb246OnJlbG9hZCk6IFBhc3MgcmVmZXJlbmNlIGluc3RlYWQgb2YgcG9p
bnRlci4KKyAgICAgICAgKFdlYkNvcmU6OkxvY2F0aW9uOjpzZXRMb2NhdGlvbik6IERpdHRvLgor
CisgICAgICAgICogcGxhdGZvcm0vVVJMLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlVSTDo6c2V0
RnJhZ21lbnRJZGVudGlmaWVyKTogVGFrZSBhIFN0cmluZ1ZpZXcgcmF0aGVyIHRoYW4KKyAgICAg
ICAgYSBTdHJpbmcsIHdoaWNoIGlzIG1vcmUgZmxleGlibGUgZm9yIGNhbGxlcnMuIEFsc28gZWxp
bWluYXRlZCBhbiB1bm5lZWRlZAorICAgICAgICBzdHJpbmcgYWxsb2NhdGlvbiB3aGVuIHRoZSBv
bGQgc3RyaW5nIGhhZCBhIGZyYWdtZW50IHRoYXQgaXMgYmVpbmcgcmVwbGFjZWQuCisgICAgICAg
ICogcGxhdGZvcm0vVVJMLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIHJl
cGxheS9SZXBsYXlJbnB1dERpc3BhdGNoTWV0aG9kcy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJ
bml0aWFsTmF2aWdhdGlvbjo6ZGlzcGF0Y2gpOiBQYXNzIHJlZmVyZW5jZS4KKyAgICAgICAgKiBz
dmcvU1ZHRkVJbWFnZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZHRkVJbWFnZUVs
ZW1lbnQ6OnJlcXVlc3RJbWFnZVJlc291cmNlKTogRGl0dG8uCisgICAgICAgICogc3ZnL1NWR0Zv
bnRGYWNlVXJpRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdGb250RmFjZVVyaUVs
ZW1lbnQ6OmxvYWRGb250KTogRGl0dG8uCisgICAgICAgICogc3ZnL1NWR1VzZUVsZW1lbnQuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6U1ZHVXNlRWxlbWVudDo6dXBkYXRlRXh0ZXJuYWxEb2N1bWVu
dCk6IERpdHRvLgorCiAyMDE3LTAxLTE0ICBaYWxhbiBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+
CiAKICAgICAgICAgU21hbGwgY29kZSBjbGVhbnVwIGFmdGVyIHIyMTA3NjAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxv
ZwppbmRleCA4ODZkOWNlYmE4N2Q3MzY5ZWE3YjMyNjlmMzlmYWVlNTFlZTIxODczLi5kZWIwZmI2
MzAwYTg2OTg5MWZhYzlhM2JiNDZlMGQ3YzlhNmU3ZDk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L21hYy9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsODkgQEAKKzIwMTctMDEtMTQgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgor
CisgICAgICAgIFJlbW92ZSBQYXNzUmVmUHRyIGZyb20gImxvYWRlciIgZGlyZWN0b3J5IG9mIFdl
YkNvcmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2
NzA1NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
V2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50Lmg6IFVwZGF0ZWQgZm9yIGNoYW5nZXMgdG8g
Q2hyb21lQ2xpZW50LgorICAgICAgICBBbHNvIG1hZGUgY2xhc3MgZmluYWwgYW5kIG1vc3QgZnVu
Y3Rpb25zIHByaXZhdGUgYW5kIGZpbmFsLgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkNo
cm9tZUNsaWVudC5tbToKKyAgICAgICAgKFdlYkNocm9tZUNsaWVudDo6cnVuT3BlblBhbmVsKTog
VXBkYXRlZCB0byB0YWtlIHJlZmVyZW5jZXMuCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9X
ZWJFZGl0b3JDbGllbnQuaDogVXBkYXRlZCBmb3IgY2hhbmdlcyB0byBFZGl0b3JDbGllbnQuCisg
ICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50Lm1tOgorICAgICAgICAoLVtX
ZWJVbmRvU3RlcCBpbml0V2l0aFVuZG9TdGVwOl0pOiBUYWtlIHJlZmVyZW5jZSBpbnN0ZWFkIG9m
IFBhc3NSZWZQdHIuCisgICAgICAgICgrW1dlYlVuZG9TdGVwIHN0ZXBXaXRoVW5kb1N0ZXA6XSk6
IERpdHRvLgorICAgICAgICAoLVtXZWJVbmRvU3RlcCBzdGVwXSk6IFJldHVybiByZWZlcmVuY2Ug
aW5zdGVhZCBvZiBwb2ludGVyLgorICAgICAgICAoLVtXZWJFZGl0b3JVbmRvVGFyZ2V0IHVuZG9F
ZGl0aW5nOl0pOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisgICAgICAgICgtW1dlYkVkaXRvclVu
ZG9UYXJnZXQgcmVkb0VkaXRpbmc6XSk6IERpdHRvLgorICAgICAgICAoV2ViRWRpdG9yQ2xpZW50
OjpyZWdpc3RlclVuZG9PclJlZG9TdGVwKTogVGFrZSByZWZlcmVuY2UgaW5zdGVhZCBvZgorICAg
ICAgICBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9T
dGVwKTogRGl0dG8uCisgICAgICAgIChXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyUmVkb1N0ZXAp
OiBEaXR0by4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50
Lmg6IFVwZGF0ZWQgZm9yIGNoYW5nZXMgdG8KKyAgICAgICAgRnJhbWVMb2FkZXJDbGllbnQsIG1h
cmtlZCBmdW5jdGlvbnMgZmluYWwgaW5zdGVhZCBvZiBvdmVycmlkZS4KKyAgICAgICAgKiBXZWJD
b3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5tbToKKyAgICAgICAgKFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbik6IFRha2UK
KyAgICAgICAgcG9pbnRlciBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJGcmFt
ZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKTog
RGl0dG8uCisgICAgICAgIChtYWtlRm9ybUZpZWxkVmFsdWVzRGljdGlvbmFyeSk6IFRha2UgYSBy
ZWZlcmVuY2UuCisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2Vu
ZFN1Ym1pdEV2ZW50KTogVGFrZSBSZWYmJiBpbnN0ZWFkCisgICAgICAgIG9mIFBhc3NSZWZQdHIu
CisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybSk6
IFRha2UgYSByZWZlcmVuY2UgaW5zdGVhZAorICAgICAgICBvZiBQYXNzUmVmUHRyLgorICAgICAg
ICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmFjdGlvbkRpY3Rpb25hcnkpOiBUYWtlIGEgcG9pbnRl
ciBpbnN0ZWFkIG9mIFBhc3NSZVB0ci4KKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpj
cmVhdGVGcmFtZSk6IFRha2UgYSByZWZlcmVuY2UgaW5zdGVhZCBvZiBhIHBvaW50ZXIuCisgICAg
ICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlUGx1Z2luKTogRGl0dG8uCisgICAgICAg
IChXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlSmF2YUFwcGxldFdpZGdldCk6IERpdHRvLgor
ICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KTog
RGl0dG8uCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250
ZXh0Lmg6IFVzZSBSZWYgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAqIFdlYkNvcmVT
dXBwb3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQubW06IFR3ZWFrIHN0eWxlIGEgYml0Lgor
CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIuaDog
VGFrZSBhIHJlZmVyZW5jZSBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIuIFVzZSBSZWZQ
dHIgZm9yIGNsYXNzIGZpZWxkLgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYk9wZW5QYW5l
bFJlc3VsdExpc3RlbmVyLm1tOgorICAgICAgICAoLVtXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5l
ciBkZWFsbG9jXSk6IERlbGV0ZWQuIENvbXBpbGVyIHdpbGwgbm93IGRvIGl0CisgICAgICAgIGNv
cnJlY3RseSB3aXRob3V0IHVzIGRlY2xhcmluZyBhbnl0aGluZyBleHBsaWNpdGx5LgorICAgICAg
ICAoLVtXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lciBjYW5jZWxdKTogR2V0IHJpZCBvZiBoYW5k
LXdyaXR0ZW4gZGVyZWYgY29kZSwKKyAgICAgICAgYW5kIGxldCBSZWZQdHIgZG8gdGhlIHdvcmsu
CisgICAgICAgICgtW1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyIGNob29zZUZpbGVuYW1lOl0p
OiBEaXR0by4KKyAgICAgICAgKC1bV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIgY2hvb3NlRmls
ZW5hbWVzOl0pOiBEaXR0by4KKyAgICAgICAgKC1bV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIg
Y2hvb3NlRmlsZW5hbWVzOmRpc3BsYXlTdHJpbmc6aWNvbkltYWdlOl0pOgorICAgICAgICBSZXdy
b3RlIHRvIHVzZSBhIG1vZGVybiBPYmplY3RpdmUtQyBmb3IgbG9vcCwgcmVzZXJ2ZUluaXRpYWxD
YXBhY2l0eSwKKyAgICAgICAgYW5kIHVuY2hlY2tlZEFwcGVuZC4KKworICAgICAgICAqIFdlYlZp
ZXcvV2ViQXJjaGl2ZS5tbToKKyAgICAgICAgKC1bV2ViQXJjaGl2ZSBpbml0V2l0aE1haW5SZXNv
dXJjZTpzdWJyZXNvdXJjZXM6c3ViZnJhbWVBcmNoaXZlczpdKToKKyAgICAgICAgVXBkYXRlZCBm
b3IgY2hhbmdlcyB0byBMZWdhY3lXZWJBcmNoaXZlLgorICAgICAgICAoLVtXZWJBcmNoaXZlIG1h
aW5SZXNvdXJjZV0pOiBEaXR0by4KKyAgICAgICAgKC1bV2ViQXJjaGl2ZSBzdWJyZXNvdXJjZXNd
KTogRGl0dG8uCisgICAgICAgICgtW1dlYkFyY2hpdmUgc3ViZnJhbWVBcmNoaXZlc10pOiBEaXR0
by4KKworICAgICAgICAqIFdlYlZpZXcvV2ViRGF0YVNvdXJjZS5tbToKKyAgICAgICAgKC1bV2Vi
RGF0YVNvdXJjZSBfYWRkU3ViZnJhbWVBcmNoaXZlczpdKTogVXNlIGEgbW9kZXJuIE9iamVjdGl2
ZS1DIGZvciBsb29wCisgICAgICAgIGluc3RlYWQgb2YgTlNFbnVtZXJhdG9yLgorICAgICAgICAo
LVtXZWJEYXRhU291cmNlIF9maWxlV3JhcHBlckZvclVSTDpdKTogVXNlIGF1dG8uCisgICAgICAg
ICgtW1dlYkRhdGFTb3VyY2UgX2RvY3VtZW50RnJhZ21lbnRXaXRoQXJjaGl2ZTpdKTogUGFzcyBh
IHJlZmVyZW5jZS4KKyAgICAgICAgKC1bV2ViRGF0YVNvdXJjZSBtYWluUmVzb3VyY2VdKTogRGl0
dG8uCisgICAgICAgICgtW1dlYkRhdGFTb3VyY2Ugc3VicmVzb3VyY2VzXSk6IERpdHRvLgorICAg
ICAgICAoLVtXZWJEYXRhU291cmNlIHN1YnJlc291cmNlRm9yVVJMOl0pOiBEaXR0by4KKyAgICAg
ICAgKC1bV2ViRGF0YVNvdXJjZSBhZGRTdWJyZXNvdXJjZTpdKTogRGl0dG8uCisKKyAgICAgICAg
KiBXZWJWaWV3L1dlYlJlc291cmNlLm1tOgorICAgICAgICAoLVtXZWJSZXNvdXJjZVByaXZhdGUg
aW5pdFdpdGhDb3JlUmVzb3VyY2U6XSk6IFRha2UgUmVmJiYgaW5zdGVhZCBvZiBQYXNzUmVmUHRy
LgorICAgICAgICAoLVtXZWJSZXNvdXJjZVByaXZhdGUgZGVhbGxvY10pOiBSZW1vdmUgZXhwbGlj
aXQgZGVyZWYgc2luY2UgUmVmUHRyIHdpbGwgbm93IHRha2UKKyAgICAgICAgY2FyZSBvZiBpdAor
ICAgICAgICAoLVtXZWJSZXNvdXJjZSBpbml0V2l0aENvZGVyOl0pOiBQYXNzIGEgcmVmZXJlbmNl
LgorICAgICAgICAoLVtXZWJSZXNvdXJjZSBlbmNvZGVXaXRoQ29kZXI6XSk6IFVwZGF0ZWQgc2lu
Y2UgY29yZVJlc291cmNlIGlzIG5vdyBSZWZQdHIuCisgICAgICAgICgtW1dlYlJlc291cmNlIF9p
bml0V2l0aENvcmVSZXNvdXJjZTpdKTogVGFrZSBSZWYmJiBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIu
CisgICAgICAgICgtW1dlYlJlc291cmNlIF9jb3JlUmVzb3VyY2VdKTogUmV0dXJuIHJlZmVyZW5j
ZSByYXRoZXIgdGhhbiBwb2ludGVyLgorICAgICAgICAoLVtXZWJSZXNvdXJjZSBfaW5pdFdpdGhE
YXRhOlVSTDpNSU1FVHlwZTp0ZXh0RW5jb2RpbmdOYW1lOmZyYW1lTmFtZTpyZXNwb25zZTpjb3B5
RGF0YTpdKToKKyAgICAgICAgQWRkZWQgY29kZSB0byBoYW5kbGUgdGhlIG51bGwgY2FzZSBhbmQg
cGFzcyBhIHJlZmVyZW5jZSByYXRoZXIgdGhhbiBhIHBvaW50ZXIuCisgICAgICAgICogV2ViVmll
dy9XZWJSZXNvdXJjZUludGVybmFsLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKwogMjAxNy0w
MS0xMyAgSm9zZXBoIFBlY29yYXJvICA8cGVjb3Jhcm9AYXBwbGUuY29tPgogCiAgICAgICAgIFJl
bW92ZSBFTkFCTEUoREVUQUlMU19FTEVNRU5UKSBndWFyZHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCA3Yjg5M2Ix
MmRhMDQzMzA1N2ZjYjAyYTMzZTkzYTNjZjE5NmVhNDVmLi4zNjA3YzdkMGUxMzViNDk0YzMxODBi
ODAwMzA3ZDE3NzhlNzUyOWRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cK
KysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTE0IEBACisyMDE3LTAx
LTE0ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgUGFz
c1JlZlB0ciBmcm9tICJsb2FkZXIiIGRpcmVjdG9yeSBvZiBXZWJDb3JlCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjcwNTUKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNoYXJlZC9BUElXZWJBcmNoaXZl
Lmg6IFVzZSBSZWZQdHImJiBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgICogU2hhcmVk
L0FQSVdlYkFyY2hpdmUubW06CisgICAgICAgIChBUEk6OldlYkFyY2hpdmU6OmNyZWF0ZSk6IERp
dHRvLgorICAgICAgICAoQVBJOjpXZWJBcmNoaXZlOjpXZWJBcmNoaXZlKTogRGl0dG8uCisgICAg
ICAgIChBUEk6OldlYkFyY2hpdmU6OnN1YnJlc291cmNlcyk6IERpdHRvLgorICAgICAgICAoQVBJ
OjpXZWJBcmNoaXZlOjpzdWJmcmFtZUFyY2hpdmVzKTogRGl0dG8uCisKKyAgICAgICAgKiBTaGFy
ZWQvVGV4dENoZWNrZXJTdGF0ZS5oOiBJbml0aWFsaXplIGRhdGEgbWVtYmVycyBzbyBjbGFzc2Vz
CisgICAgICAgIHVzaW5nIHRoaXMgd29uJ3QgaGF2ZSB0byBleHBsaWNpdGx5IGluaXRhbGl6ZSB0
aGVtLgorCisgICAgICAgICogVUlQcm9jZXNzL1dlYkljb25EYXRhYmFzZS5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYkljb25EYXRhYmFzZTo6c2V0SWNvbkRhdGFGb3JJY29uVVJMKTogUGFzcyBh
IHJhdworICAgICAgICBwb2ludGVyIHRvIFdlYkNvcmUuCisKKyAgICAgICAgKiBVSVByb2Nlc3Mv
V2ViUGFnZVByb3h5Lmg6IFJlbW92ZWQgZm9yd2FyZCBkZWNsYXJhdGlvbiBvZgorICAgICAgICBT
dHJpbmdQYWlyVmVjdG9yLCBub3QgbmVlZGVkIGhlcmUuCisKKyAgICAgICAgKiBXZWJQcm9jZXNz
L0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6
OldlYkljb25EYXRhYmFzZVByb3h5OjpXZWJJY29uRGF0YWJhc2VQcm94eSk6IFRha2UgYSByZWZl
cmVuY2UuCisgICAgICAgIChXZWJLaXQ6OldlYkljb25EYXRhYmFzZVByb3h5OjpyZXRhaW5JY29u
Rm9yUGFnZVVSTCk6IFVwZGF0ZWQgZm9yIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYktpdDo6V2Vi
SWNvbkRhdGFiYXNlUHJveHk6OnJlbGVhc2VJY29uRm9yUGFnZVVSTCk6IERpdHRvLgorICAgICAg
ICAoV2ViS2l0OjpXZWJJY29uRGF0YWJhc2VQcm94eTo6c3luY2hyb25vdXNJY29uRm9yUGFnZVVS
TCk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJJY29uRGF0YWJhc2VQcm94eTo6bG9hZERl
Y2lzaW9uRm9ySWNvblVSTCk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJJY29uRGF0YWJh
c2VQcm94eTo6cmVjZWl2ZWRJY29uTG9hZERlY2lzaW9uKTogRGl0dG8uCisgICAgICAgIChXZWJL
aXQ6OldlYkljb25EYXRhYmFzZVByb3h5OjppY29uRGF0YUZvckljb25VUkwpOiBEaXR0by4KKyAg
ICAgICAgKFdlYktpdDo6V2ViSWNvbkRhdGFiYXNlUHJveHk6OnNldEljb25VUkxGb3JQYWdlVVJM
KTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkljb25EYXRhYmFzZVByb3h5OjpzZXRJY29u
RGF0YUZvckljb25VUkwpOiBEaXR0by4KKyAgICAgICAgKiBXZWJQcm9jZXNzL0ljb25EYXRhYmFz
ZS9XZWJJY29uRGF0YWJhc2VQcm94eS5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisgICAgICAg
IE1hcmtlZCB0aGUgY2xhc3MgZmluYWwsIG1hZGUgbW9zdCBmdW5jdGlvbnMgcHJpdmF0ZSBhbmQg
ZmluYWwuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVu
ZGxlTmF2aWdhdGlvbkFjdGlvbi5jcHA6CisgICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxl
TmF2aWdhdGlvbkFjdGlvbjo6SW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uKToKKyAgICAg
ICAgUmVtb3ZlZCBhc3NlcnRpb24gdGhhdCBhIHBvaW50ZXIgaXMgbm9uLW51bGwgc2luY2UgdGhh
dCBwb2ludGVyIGlzIG5vdyBhCisgICAgICAgIHJlZmVyZW5jZS4gTGVmdCB1c2Ugb2YgUGFzc1Jl
ZlB0ciBoZXJlIGZvciBub3cuegorCisgICAgICAgICogV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYkxv
YWRlclN0cmF0ZWd5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViTG9hZGVyU3RyYXRlZ3k6OnNj
aGVkdWxlTG9hZCk6IFVwZGF0ZWQgc2luY2UgYXBwbGljYXRpb24gY2FjaGUKKyAgICAgICAgaG9z
dCBpcyBub3cgYSByZWZlcmVuY2UgcmF0aGVyIHRobmEgYSBwb2ludGVyLgorICAgICAgICAqIFdl
YlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJLaXQ6
OldlYlJlc291cmNlTG9hZGVyOjp3aWxsU2VuZFJlcXVlc3QpOiBEaXR0by4KKyAgICAgICAgKFdl
YktpdDo6V2ViUmVzb3VyY2VMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZSk6IERpdHRvLgorICAg
ICAgICAoV2ViS2l0OjpXZWJSZXNvdXJjZUxvYWRlcjo6ZGlkRmFpbFJlc291cmNlTG9hZCk6IERp
dHRvLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpidWlsZEhUVFBIZWFkZXJzKTogR290IHJpZCBvZiB1bm5lZWRlZCB1c2Ug
b2YgU3RyaW5nOjpmb3JtYXQuCisgICAgICAgIChXZWJLaXQ6OlBsdWdpblZpZXc6OmNyZWF0ZSk6
IFRha2UgYSByZWZlcmVuY2UgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViS2l0
OjpQbHVnaW5WaWV3OjpQbHVnaW5WaWV3KTogRGl0dG8uIEFsc28gbW92ZWQgbXVjaCBvZiB0aGUg
ZGF0YQorICAgICAgICBtZW1iZXIgaW5pdGlhbGl6YXRpb24gdG8gdGhlIGNsYXNzIGRlZmluaXRp
b24uCisgICAgICAgIChXZWJLaXQ6OlBsdWdpblZpZXc6OnJlY3JlYXRlQW5kSW5pdGlhbGl6ZSk6
IFRha2UgUmVmJiYgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViS2l0OjpQbHVn
aW5WaWV3OjptYW51YWxMb2FkRGlkUmVjZWl2ZVJlc3BvbnNlKTogVXBkYXRlZCBmb3IgY2hhbmdl
IHRvCisgICAgICAgIE1hbnVhbFN0cmVhbVN0YXRlIGVudW1lcmF0aW9uLgorICAgICAgICAoV2Vi
S2l0OjpQbHVnaW5WaWV3OjptYW51YWxMb2FkRGlkUmVjZWl2ZURhdGEpOiBEaXR0by4KKyAgICAg
ICAgKFdlYktpdDo6UGx1Z2luVmlldzo6bWFudWFsTG9hZERpZEZpbmlzaExvYWRpbmcgRGl0dG8u
KToKKyAgICAgICAgKFdlYktpdDo6UGx1Z2luVmlldzo6bWFudWFsTG9hZERpZEZhaWwpOiBEaXR0
by4KKyAgICAgICAgKFdlYktpdDo6UGx1Z2luVmlldzo6bGl2ZVJlc291cmNlRGF0YSk6IFJldHVy
biBSZWZQdHIgaW5zZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJLaXQ6OlBsdWdpblZp
ZXc6OnJlZGVsaXZlck1hbnVhbFN0cmVhbSk6IFVwZGF0ZWQgZm9yIE1hbnVhbFN0cmVhbVN0YXRl
LgorICAgICAgICAqIFdlYlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3Lmg6IFVwZGF0ZWQgZm9y
IHRoZSBhYm92ZS4gQWxzbyBjaGFuZ2VkCisgICAgICAgIE1hbnVhbFN0cmVhbVN0YXRlIGludG8g
YW4gZW51bSBjbGFzcy4KKworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2Vi
Q2hyb21lQ2xpZW50LmNwcDogQ2hhbmdlZCBtX3BhZ2UgdG8gYSByZWZlcmVuY2UuCisgICAgICAg
IChXZWJLaXQ6OldlYkNocm9tZUNsaWVudDo6cnVuT3BlblBhbmVsKTogVGFrZSBib3RoIGFyZ3Vt
ZW50cyBhcyByZWZlcmVuY2VzLgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
V2ViQ2hyb21lQ2xpZW50Lmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIFdl
YlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmNwcDoKKyAgICAgICAgKFdl
YktpdDo6V2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9TdGVwKTogVGFrZSByZWZlcmVuY2Ug
aW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViS2l0OjpXZWJFZGl0b3JDbGllbnQ6
OnJlZ2lzdGVyUmVkb1N0ZXApOiBEaXR0by4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L1dlYkVkaXRvckNsaWVudC5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUKKworICAgICAg
ICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xp
Y3lGb3JOZXdXaW5kb3dBY3Rpb24pOgorICAgICAgICBVcGRhdGVkIGZvciBjaGFuZ2UgdG8gRnJh
bWVMb2FkZXJDbGllbnQuCisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50Ojpk
aXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24pOiBEaXR0by4KKyAgICAgICAg
KFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVu
dCk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0
Y2hXaWxsU3VibWl0Rm9ybSk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRl
ckNsaWVudDo6Y3JlYXRlRnJhbWUpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbik6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJG
cmFtZUxvYWRlckNsaWVudDo6cmVjcmVhdGVQbHVnaW4pOiBEaXR0by4KKyAgICAgICAgKFdlYktp
dDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQpOiBEaXR0by4K
KyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtpbmdD
b250ZXh0KTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50Ojpk
aWRSZXF1ZXN0QXV0b2NvbXBsZXRlKTogRGl0dG8uCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUu
CisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChX
ZWJLaXQ6OldlYlBhZ2U6OldlYlBhZ2UpOiBQYXNzIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYktp
dDo6V2ViUGFnZTo6Y3JlYXRlUGx1Z2luKTogUmV0dXJuIFJlZlB0ciBpbnN0ZWFkIG9mIFBhc3NS
ZWZQdHIuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OmZyb21Db3JlUGFnZSk6IFVwZGF0ZWQg
Zm9yIGNoYW5nZSB0byBXZWJDaHJvbWVDbGllbnQuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6
OnNldEhlYWRlclBhZ2VCYW5uZXIpOiBUYWtlIHBvaW50ZXIgaW5zdGVhZCBvZiBQYXNzUmVmUHRy
LgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpzZXRGb290ZXJQYWdlQmFubmVyKTogRGl0dG8u
CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnNldEFjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3Rl
bmVyKTogVGFrZSBSZWYmJiBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIuCisgICAgICAg
IChXZWJLaXQ6OldlYlBhZ2U6OmN1cnJlbnRTZWxlY3Rpb25Bc1JhbmdlKTogUmV0dXJuIFJlZlB0
ciBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnJhbmdl
RnJvbUVkaXRpbmdSYW5nZSk6IERpdHRvLgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJQYWdlLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIFdlYlByb2Nlc3Mv
V2ViUGFnZS9tYWMvV2ViUGFnZU1hYy5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6Y2Fj
aGVkUmVzcG9uc2VEYXRhRm9yVVJMKTogUmV0dXJuIFJlZlB0ciBpbnN0ZWFkIG9mIFBhc3NSZWZQ
dHIuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnNldFRvcE92ZXJoYW5nSW1hZ2UpOiBUYWtl
IHJhdyBwb2ludGVyIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYktpdDo6V2Vi
UGFnZTo6c2V0Qm90dG9tT3ZlcmhhbmdJbWFnZSk6IERpdHRvLgorCisgICAgICAgICogV2ViUHJv
Y2Vzcy9XZWJQcm9jZXNzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzczo6V2ViUHJv
Y2Vzcyk6IFBhc3MgYSByZWZlcmVuY2UuIE1vdmUgbW9zdCBpbml0aWFsaXphdGlvbiB0bworICAg
ICAgICB0aGUgY2xhc3MgZGVmaW5pdGlvbi4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlByb2Nl
c3MuaDogVXBkYWVkIGZvciB0aGUgYWJvdmUuCisKIDIwMTctMDEtMTQgIFRpbSBIb3J0b24gIDx0
aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIHVudXNlZCBXS1ZpZXcg
aW5pdGlhbGl6ZXIgcGFyYW1ldGVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9j
dW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAppbmRleCAyOWRlMzcx
MjRjZGE1MWE4YmMwYjIyZWE1MDVhNTdhZDg4ZTI5Njc2Li41NmE3OWY0NDNhYjI5N2JhMjBkMzQz
ZDIzZDUxNDVjYmEwZGU0ZjM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1l
bnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKQEAgLTMxMzcsNyAr
MzEzNyw3IEBAIHZvaWQgRG9jdW1lbnQ6OnByb2Nlc3NIdHRwRXF1aXYoY29uc3QgU3RyaW5nJiBl
cXVpdiwgY29uc3QgU3RyaW5nJiBjb250ZW50LCBib29sCiAgICAgICAgICAgICBlbHNlCiAgICAg
ICAgICAgICAgICAgY29tcGxldGVkVVJMID0gY29tcGxldGVVUkwodXJsU3RyaW5nKTsKICAgICAg
ICAgICAgIGlmICghcHJvdG9jb2xJc0phdmFTY3JpcHQoY29tcGxldGVkVVJMKSkKLSAgICAgICAg
ICAgICAgICBmcmFtZS0+bmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlUmVkaXJlY3QodGhp
cywgZGVsYXksIGNvbXBsZXRlZFVSTCk7CisgICAgICAgICAgICAgICAgZnJhbWUtPm5hdmlnYXRp
b25TY2hlZHVsZXIoKS5zY2hlZHVsZVJlZGlyZWN0KCp0aGlzLCBkZWxheSwgY29tcGxldGVkVVJM
KTsKICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgIFN0cmluZyBtZXNzYWdlID0g
IlJlZnVzZWQgdG8gcmVmcmVzaCAiICsgbV91cmwuc3RyaW5nQ2VudGVyRWxsaXBzaXplZFRvTGVu
Z3RoKCkgKyAiIHRvIGEgamF2YXNjcmlwdDogVVJMIjsKICAgICAgICAgICAgICAgICBhZGRDb25z
b2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpTZWN1cml0eSwgTWVzc2FnZUxldmVsOjpFcnJvciwg
bWVzc2FnZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0NvbXBvc2l0ZUVk
aXRDb21tYW5kLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1h
bmQuY3BwCmluZGV4IGNjZTljYWFlYzFhMDFlZTlmNDhiM2FkYTU4MmFmYTJhNzExYzYxODAuLmY3
ZmQ0ODQ4YjdlODM2M2UxZDliMDFlYTM5Nzc4YWJiNWJjOGQ0ODUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuY3BwCkBAIC0yMzksNyArMjM5LDcg
QEAgdm9pZCBFZGl0Q29tbWFuZENvbXBvc2l0aW9uOjp1bmFwcGx5KCkKICAgICBmb3IgKHNpemVf
dCBpID0gc2l6ZTsgaTsgLS1pKQogICAgICAgICBtX2NvbW1hbmRzW2kgLSAxXS0+ZG9VbmFwcGx5
KCk7CiAKLSAgICBmcmFtZS0+ZWRpdG9yKCkudW5hcHBsaWVkRWRpdGluZyh0aGlzKTsKKyAgICBm
cmFtZS0+ZWRpdG9yKCkudW5hcHBsaWVkRWRpdGluZygqdGhpcyk7CiAKICAgICBpZiAoQVhPYmpl
Y3RDYWNoZTo6YWNjZXNzaWJpbGl0eUVuYWJsZWQoKSkKICAgICAgICAgbV9yZXBsYWNlZFRleHQu
cG9zdFRleHRTdGF0ZUNoYW5nZU5vdGlmaWNhdGlvbkZvclVuYXBwbHkobV9kb2N1bWVudC0+ZXhp
c3RpbmdBWE9iamVjdENhY2hlKCkpOwpAQCAtMjY1LDcgKzI2NSw3IEBAIHZvaWQgRWRpdENvbW1h
bmRDb21wb3NpdGlvbjo6cmVhcHBseSgpCiAgICAgZm9yIChhdXRvJiBjb21tYW5kIDogbV9jb21t
YW5kcykKICAgICAgICAgY29tbWFuZC0+ZG9SZWFwcGx5KCk7CiAKLSAgICBmcmFtZS0+ZWRpdG9y
KCkucmVhcHBsaWVkRWRpdGluZyh0aGlzKTsKKyAgICBmcmFtZS0+ZWRpdG9yKCkucmVhcHBsaWVk
RWRpdGluZygqdGhpcyk7CiAKICAgICBpZiAoQVhPYmplY3RDYWNoZTo6YWNjZXNzaWJpbGl0eUVu
YWJsZWQoKSkKICAgICAgICAgbV9yZXBsYWNlZFRleHQucG9zdFRleHRTdGF0ZUNoYW5nZU5vdGlm
aWNhdGlvbkZvclJlYXBwbHkobV9kb2N1bWVudC0+ZXhpc3RpbmdBWE9iamVjdENhY2hlKCkpOwpA
QCAtNDE2LDE0ICs0MTYsMTQgQEAgRWRpdENvbW1hbmRDb21wb3NpdGlvbiogQ29tcG9zaXRlRWRp
dENvbW1hbmQ6OmNvbXBvc2l0aW9uKCkgY29uc3QKICAgICByZXR1cm4gbnVsbHB0cjsKIH0KIAot
RWRpdENvbW1hbmRDb21wb3NpdGlvbiogQ29tcG9zaXRlRWRpdENvbW1hbmQ6OmVuc3VyZUNvbXBv
c2l0aW9uKCkKK0VkaXRDb21tYW5kQ29tcG9zaXRpb24mIENvbXBvc2l0ZUVkaXRDb21tYW5kOjpl
bnN1cmVDb21wb3NpdGlvbigpCiB7Ci0gICAgQ29tcG9zaXRlRWRpdENvbW1hbmQqIGNvbW1hbmQg
PSB0aGlzOwotICAgIHdoaWxlIChjb21tYW5kICYmIGNvbW1hbmQtPnBhcmVudCgpKQotICAgICAg
ICBjb21tYW5kID0gY29tbWFuZC0+cGFyZW50KCk7CisgICAgYXV0byogY29tbWFuZCA9IHRoaXM7
CisgICAgd2hpbGUgKGF1dG8qIHBhcmVudCA9IGNvbW1hbmQtPnBhcmVudCgpKQorICAgICAgICBj
b21tYW5kID0gcGFyZW50OwogICAgIGlmICghY29tbWFuZC0+bV9jb21wb3NpdGlvbikKICAgICAg
ICAgY29tbWFuZC0+bV9jb21wb3NpdGlvbiA9IEVkaXRDb21tYW5kQ29tcG9zaXRpb246OmNyZWF0
ZShkb2N1bWVudCgpLCBzdGFydGluZ1NlbGVjdGlvbigpLCBlbmRpbmdTZWxlY3Rpb24oKSwgZWRp
dGluZ0FjdGlvbigpKTsKLSAgICByZXR1cm4gY29tbWFuZC0+bV9jb21wb3NpdGlvbi5nZXQoKTsK
KyAgICByZXR1cm4gKmNvbW1hbmQtPm1fY29tcG9zaXRpb247CiB9CiAKIGJvb2wgQ29tcG9zaXRl
RWRpdENvbW1hbmQ6OmlzQ3JlYXRlTGlua0NvbW1hbmQoKSBjb25zdApAQCAtNDY1LDcgKzQ2NSw3
IEBAIHZvaWQgQ29tcG9zaXRlRWRpdENvbW1hbmQ6OmFwcGx5Q29tbWFuZFRvQ29tcG9zaXRlKFBh
c3NSZWZQdHI8RWRpdENvbW1hbmQ+IHBycENvCiAgICAgY29tbWFuZC0+ZG9BcHBseSgpOwogICAg
IGlmIChjb21tYW5kLT5pc1NpbXBsZUVkaXRDb21tYW5kKCkpIHsKICAgICAgICAgY29tbWFuZC0+
c2V0UGFyZW50KG51bGxwdHIpOwotICAgICAgICBlbnN1cmVDb21wb3NpdGlvbigpLT5hcHBlbmQo
dG9TaW1wbGVFZGl0Q29tbWFuZChjb21tYW5kLmdldCgpKSk7CisgICAgICAgIGVuc3VyZUNvbXBv
c2l0aW9uKCkuYXBwZW5kKHRvU2ltcGxlRWRpdENvbW1hbmQoY29tbWFuZC5nZXQoKSkpOwogICAg
IH0KICAgICBtX2NvbW1hbmRzLmFwcGVuZChXVEZNb3ZlKGNvbW1hbmQpKTsKIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuaCBiL1NvdXJj
ZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuaAppbmRleCA4NWY0MThmN2Ri
OTE3Y2NmMDE0OGE2Zjc0ZWJjMzhiZWIwNTAzOWIxLi4wMjIxZGM5OTljY2ZlNmZjNTliMTgxYTlm
Zjc4MDk5YjZlMzVmM2I3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0NvbXBv
c2l0ZUVkaXRDb21tYW5kLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9Db21wb3NpdGVF
ZGl0Q29tbWFuZC5oCkBAIC0xMDUsNyArMTA1LDcgQEAgcHVibGljOgogICAgIHZvaWQgYXBwbHko
KTsKICAgICBib29sIGlzRmlyc3RDb21tYW5kKEVkaXRDb21tYW5kKiBjb21tYW5kKSB7IHJldHVy
biAhbV9jb21tYW5kcy5pc0VtcHR5KCkgJiYgbV9jb21tYW5kcy5maXJzdCgpID09IGNvbW1hbmQ7
IH0KICAgICBFZGl0Q29tbWFuZENvbXBvc2l0aW9uKiBjb21wb3NpdGlvbigpIGNvbnN0OwotICAg
IEVkaXRDb21tYW5kQ29tcG9zaXRpb24qIGVuc3VyZUNvbXBvc2l0aW9uKCk7CisgICAgRWRpdENv
bW1hbmRDb21wb3NpdGlvbiYgZW5zdXJlQ29tcG9zaXRpb24oKTsKIAogICAgIHZpcnR1YWwgYm9v
bCBpc0NyZWF0ZUxpbmtDb21tYW5kKCkgY29uc3Q7CiAgICAgdmlydHVhbCBib29sIGlzVHlwaW5n
Q29tbWFuZCgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0
b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCmluZGV4IDRkMzg0MWI2
YjAxNzQxMzM3ZTMzZDIwMzE5OGI3NjUzZmZjM2M3ZjMuLjlmOTc3NzQxOWEyNDA1ZjVlY2Q0ZWRj
Mzg3YzgxYjc0NjY4MTFmNmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRp
dG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5jcHAKQEAgLTk5NSwy
MyArOTk1LDIzIEBAIGJvb2wgRWRpdG9yOjp3aWxsVW5hcHBseUVkaXRpbmcoY29uc3QgRWRpdENv
bW1hbmRDb21wb3NpdGlvbiYgY29tcG9zaXRpb24pIGNvbnN0CiAgICAgcmV0dXJuIGRpc3BhdGNo
QmVmb3JlSW5wdXRFdmVudHMoY29tcG9zaXRpb24uc3RhcnRpbmdSb290RWRpdGFibGVFbGVtZW50
KCksIGNvbXBvc2l0aW9uLmVuZGluZ1Jvb3RFZGl0YWJsZUVsZW1lbnQoKSwgImhpc3RvcnlVbmRv
Iik7CiB9CiAKLXZvaWQgRWRpdG9yOjp1bmFwcGxpZWRFZGl0aW5nKFBhc3NSZWZQdHI8RWRpdENv
bW1hbmRDb21wb3NpdGlvbj4gY21kKQordm9pZCBFZGl0b3I6OnVuYXBwbGllZEVkaXRpbmcoRWRp
dENvbW1hbmRDb21wb3NpdGlvbiYgY29tcG9zaXRpb24pCiB7CiAgICAgZG9jdW1lbnQoKS51cGRh
dGVMYXlvdXQoKTsKIAotICAgIG5vdGlmeVRleHRGcm9tQ29udHJvbHMoY21kLT5zdGFydGluZ1Jv
b3RFZGl0YWJsZUVsZW1lbnQoKSwgY21kLT5lbmRpbmdSb290RWRpdGFibGVFbGVtZW50KCkpOwor
ICAgIG5vdGlmeVRleHRGcm9tQ29udHJvbHMoY29tcG9zaXRpb24uc3RhcnRpbmdSb290RWRpdGFi
bGVFbGVtZW50KCksIGNvbXBvc2l0aW9uLmVuZGluZ1Jvb3RFZGl0YWJsZUVsZW1lbnQoKSk7CiAK
LSAgICBWaXNpYmxlU2VsZWN0aW9uIG5ld1NlbGVjdGlvbihjbWQtPnN0YXJ0aW5nU2VsZWN0aW9u
KCkpOworICAgIFZpc2libGVTZWxlY3Rpb24gbmV3U2VsZWN0aW9uKGNvbXBvc2l0aW9uLnN0YXJ0
aW5nU2VsZWN0aW9uKCkpOwogICAgIGNoYW5nZVNlbGVjdGlvbkFmdGVyQ29tbWFuZChuZXdTZWxl
Y3Rpb24sIEZyYW1lU2VsZWN0aW9uOjpkZWZhdWx0U2V0U2VsZWN0aW9uT3B0aW9ucygpKTsKLSAg
ICBkaXNwYXRjaElucHV0RXZlbnRzKGNtZC0+c3RhcnRpbmdSb290RWRpdGFibGVFbGVtZW50KCks
IGNtZC0+ZW5kaW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCAiaGlzdG9yeVVuZG8iKTsKKyAgICBk
aXNwYXRjaElucHV0RXZlbnRzKGNvbXBvc2l0aW9uLnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVu
dCgpLCBjb21wb3NpdGlvbi5lbmRpbmdSb290RWRpdGFibGVFbGVtZW50KCksICJoaXN0b3J5VW5k
byIpOwogCiAgICAgdXBkYXRlRWRpdG9yVUlOb3dJZlNjaGVkdWxlZCgpOwogCi0gICAgbV9hbHRl
cm5hdGl2ZVRleHRDb250cm9sbGVyLT5yZXNwb25kVG9VbmFwcGxpZWRFZGl0aW5nKGNtZC5nZXQo
KSk7CisgICAgbV9hbHRlcm5hdGl2ZVRleHRDb250cm9sbGVyLT5yZXNwb25kVG9VbmFwcGxpZWRF
ZGl0aW5nKCZjb21wb3NpdGlvbik7CiAKICAgICBtX2xhc3RFZGl0Q29tbWFuZCA9IG51bGxwdHI7
Ci0gICAgaWYgKGNsaWVudCgpKQotICAgICAgICBjbGllbnQoKS0+cmVnaXN0ZXJSZWRvU3RlcChj
bWQpOworICAgIGlmIChhdXRvKiBjbGllbnQgPSB0aGlzLT5jbGllbnQoKSkKKyAgICAgICAgY2xp
ZW50LT5yZWdpc3RlclJlZG9TdGVwKGNvbXBvc2l0aW9uKTsKICAgICByZXNwb25kVG9DaGFuZ2Vk
Q29udGVudHMobmV3U2VsZWN0aW9uKTsKIH0KIApAQCAtMTAyMCwyMSArMTAyMCwyMSBAQCBib29s
IEVkaXRvcjo6d2lsbFJlYXBwbHlFZGl0aW5nKGNvbnN0IEVkaXRDb21tYW5kQ29tcG9zaXRpb24m
IGNvbXBvc2l0aW9uKSBjb25zdAogICAgIHJldHVybiBkaXNwYXRjaEJlZm9yZUlucHV0RXZlbnRz
KGNvbXBvc2l0aW9uLnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCBjb21wb3NpdGlvbi5l
bmRpbmdSb290RWRpdGFibGVFbGVtZW50KCksICJoaXN0b3J5UmVkbyIpOwogfQogCi12b2lkIEVk
aXRvcjo6cmVhcHBsaWVkRWRpdGluZyhQYXNzUmVmUHRyPEVkaXRDb21tYW5kQ29tcG9zaXRpb24+
IGNtZCkKK3ZvaWQgRWRpdG9yOjpyZWFwcGxpZWRFZGl0aW5nKEVkaXRDb21tYW5kQ29tcG9zaXRp
b24mIGNvbXBvc2l0aW9uKQogewogICAgIGRvY3VtZW50KCkudXBkYXRlTGF5b3V0KCk7CiAKLSAg
ICBub3RpZnlUZXh0RnJvbUNvbnRyb2xzKGNtZC0+c3RhcnRpbmdSb290RWRpdGFibGVFbGVtZW50
KCksIGNtZC0+ZW5kaW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpKTsKKyAgICBub3RpZnlUZXh0RnJv
bUNvbnRyb2xzKGNvbXBvc2l0aW9uLnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCBjb21w
b3NpdGlvbi5lbmRpbmdSb290RWRpdGFibGVFbGVtZW50KCkpOwogCi0gICAgVmlzaWJsZVNlbGVj
dGlvbiBuZXdTZWxlY3Rpb24oY21kLT5lbmRpbmdTZWxlY3Rpb24oKSk7CisgICAgVmlzaWJsZVNl
bGVjdGlvbiBuZXdTZWxlY3Rpb24oY29tcG9zaXRpb24uZW5kaW5nU2VsZWN0aW9uKCkpOwogICAg
IGNoYW5nZVNlbGVjdGlvbkFmdGVyQ29tbWFuZChuZXdTZWxlY3Rpb24sIEZyYW1lU2VsZWN0aW9u
OjpkZWZhdWx0U2V0U2VsZWN0aW9uT3B0aW9ucygpKTsKLSAgICBkaXNwYXRjaElucHV0RXZlbnRz
KGNtZC0+c3RhcnRpbmdSb290RWRpdGFibGVFbGVtZW50KCksIGNtZC0+ZW5kaW5nUm9vdEVkaXRh
YmxlRWxlbWVudCgpLCAiaGlzdG9yeVJlZG8iKTsKKyAgICBkaXNwYXRjaElucHV0RXZlbnRzKGNv
bXBvc2l0aW9uLnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCBjb21wb3NpdGlvbi5lbmRp
bmdSb290RWRpdGFibGVFbGVtZW50KCksICJoaXN0b3J5UmVkbyIpOwogICAgIAogICAgIHVwZGF0
ZUVkaXRvclVJTm93SWZTY2hlZHVsZWQoKTsKIAogICAgIG1fbGFzdEVkaXRDb21tYW5kID0gbnVs
bHB0cjsKLSAgICBpZiAoY2xpZW50KCkpCi0gICAgICAgIGNsaWVudCgpLT5yZWdpc3RlclVuZG9T
dGVwKGNtZCk7CisgICAgaWYgKGF1dG8qIGNsaWVudCA9IHRoaXMtPmNsaWVudCgpKQorICAgICAg
ICBjbGllbnQtPnJlZ2lzdGVyVW5kb1N0ZXAoY29tcG9zaXRpb24pOwogICAgIHJlc3BvbmRUb0No
YW5nZWRDb250ZW50cyhuZXdTZWxlY3Rpb24pOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9lZGl0aW5nL0VkaXRvci5oIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuaApp
bmRleCA3MzMwZWJiMDNlYTg0MWE3YzhlMTBkYzNiMDgzYjc0MTFkMDg5MTcxLi5iOGIzYjA2NmEz
YTQyYTE1NWJkYTdjMzUwOTM1MDYxZjkwMmU3OWZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9lZGl0aW5nL0VkaXRvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmgK
QEAgLTk5LDEwICs5OSwxMiBAQCBlbnVtIGNsYXNzIE1haWxCbG9ja3F1b3RlSGFuZGxpbmcgewog
fTsKIAogI2lmIFBMQVRGT1JNKENPQ09BKQorCiBzdHJ1Y3QgRnJhZ21lbnRBbmRSZXNvdXJjZXMg
ewogICAgIFJlZlB0cjxEb2N1bWVudEZyYWdtZW50PiBmcmFnbWVudDsKLSAgICBWZWN0b3I8UmVm
UHRyPEFyY2hpdmVSZXNvdXJjZT4+IHJlc291cmNlczsKKyAgICBWZWN0b3I8UmVmPEFyY2hpdmVS
ZXNvdXJjZT4+IHJlc291cmNlczsKIH07CisKICNlbmRpZgogCiBjbGFzcyBFZGl0b3IgewpAQCAt
MjA2LDggKzIwOCw4IEBAIHB1YmxpYzoKICAgICBib29sIHdpbGxSZWFwcGx5RWRpdGluZyhjb25z
dCBFZGl0Q29tbWFuZENvbXBvc2l0aW9uJikgY29uc3Q7CiAKICAgICB2b2lkIGFwcGxpZWRFZGl0
aW5nKFBhc3NSZWZQdHI8Q29tcG9zaXRlRWRpdENvbW1hbmQ+KTsKLSAgICB2b2lkIHVuYXBwbGll
ZEVkaXRpbmcoUGFzc1JlZlB0cjxFZGl0Q29tbWFuZENvbXBvc2l0aW9uPik7Ci0gICAgdm9pZCBy
ZWFwcGxpZWRFZGl0aW5nKFBhc3NSZWZQdHI8RWRpdENvbW1hbmRDb21wb3NpdGlvbj4pOworICAg
IHZvaWQgdW5hcHBsaWVkRWRpdGluZyhFZGl0Q29tbWFuZENvbXBvc2l0aW9uJik7CisgICAgdm9p
ZCByZWFwcGxpZWRFZGl0aW5nKEVkaXRDb21tYW5kQ29tcG9zaXRpb24mKTsKICAgICB2b2lkIHVu
YXBwbGllZFNwZWxsQ29ycmVjdGlvbihjb25zdCBWaXNpYmxlU2VsZWN0aW9uJiBzZWxlY3Rpb25P
ZkNvcnJlY3RlZCwgY29uc3QgU3RyaW5nJiBjb3JyZWN0ZWQsIGNvbnN0IFN0cmluZyYgY29ycmVj
dGlvbik7CiAKICAgICAvLyBUaGlzIGlzIG9mZiBieSBkZWZhdWx0LCBzaW5jZSBtb3N0IGVkaXRv
cnMgd2FudCB0aGlzIGJlaGF2aW9yIChvcmlnaW5hbGx5IG1hdGNoZWQgSUUgYnV0IG5vdCBGaXJl
Zm94KS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvbWFjL0VkaXRvck1hYy5t
bSBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvbWFjL0VkaXRvck1hYy5tbQppbmRleCBiNTRiYmQx
N2U3ZjA4ZmU2ZWFmMDk5N2U3ODczZTVmNWFjZGQyMzE5Li4zYjVkY2QxMGU0MzBlNmEzMTcxZTc1
Y2IwYzY4YTczYTg5ZTkzYWJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL21h
Yy9FZGl0b3JNYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9tYWMvRWRpdG9yTWFj
Lm1tCkBAIC01MTIsNyArNTEyLDcgQEAgYm9vbCBFZGl0b3I6OldlYkNvbnRlbnRSZWFkZXI6OnJl
YWRXZWJBcmNoaXZlKFNoYXJlZEJ1ZmZlciogYnVmZmVyKQogICAgIGlmICghYnVmZmVyKQogICAg
ICAgICByZXR1cm4gZmFsc2U7CiAKLSAgICBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gYXJjaGl2
ZSA9IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShVUkwoKSwgKmJ1ZmZlcik7CisgICAgYXV0byBh
cmNoaXZlID0gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFVSTCgpLCAqYnVmZmVyKTsKICAgICBp
ZiAoIWFyY2hpdmUpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIApAQCAtNTI1LDcgKzUyNSw3IEBA
IGJvb2wgRWRpdG9yOjpXZWJDb250ZW50UmVhZGVyOjpyZWFkV2ViQXJjaGl2ZShTaGFyZWRCdWZm
ZXIqIGJ1ZmZlcikKICAgICBpZiAoZnJhbWUubG9hZGVyKCkuY2xpZW50KCkuY2FuU2hvd01JTUVU
eXBlQXNIVE1MKHR5cGUpKSB7CiAgICAgICAgIC8vIEZJWE1FOiBUaGUgY29kZSBpbiBjcmVhdGVG
cmFnbWVudEFuZEFkZFJlc291cmNlcyBjYWxscyBzZXREZWZlcnNMb2FkaW5nKHRydWUpLiBEb24n
dCB3ZSBuZWVkIHRoYXQgaGVyZT8KICAgICAgICAgaWYgKERvY3VtZW50TG9hZGVyKiBsb2FkZXIg
PSBmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKQotICAgICAgICAgICAgbG9hZGVyLT5h
ZGRBbGxBcmNoaXZlUmVzb3VyY2VzKGFyY2hpdmUuZ2V0KCkpOworICAgICAgICAgICAgbG9hZGVy
LT5hZGRBbGxBcmNoaXZlUmVzb3VyY2VzKCphcmNoaXZlKTsKIAogICAgICAgICBTdHJpbmcgbWFy
a3VwU3RyaW5nID0gU3RyaW5nOjpmcm9tVVRGOChtYWluUmVzb3VyY2UtPmRhdGEoKS5kYXRhKCks
IG1haW5SZXNvdXJjZS0+ZGF0YSgpLnNpemUoKSk7CiAgICAgICAgIGZyYWdtZW50ID0gY3JlYXRl
RnJhZ21lbnRGcm9tTWFya3VwKCpmcmFtZS5kb2N1bWVudCgpLCBtYXJrdXBTdHJpbmcsIG1haW5S
ZXNvdXJjZS0+dXJsKCksIERpc2FsbG93U2NyaXB0aW5nQW5kUGx1Z2luQ29udGVudCk7CkBAIC03
MDQsMTEgKzcwNCw5IEBAIFJlZlB0cjxEb2N1bWVudEZyYWdtZW50PiBFZGl0b3I6OmNyZWF0ZUZy
YWdtZW50QW5kQWRkUmVzb3VyY2VzKE5TQXR0cmlidXRlZFN0cmluCiAKICAgICBhdXRvIGZyYWdt
ZW50QW5kUmVzb3VyY2VzID0gY3JlYXRlRnJhZ21lbnQoc3RyaW5nKTsKIAotICAgIGlmIChEb2N1
bWVudExvYWRlciogbG9hZGVyID0gbV9mcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKSB7
Ci0gICAgICAgIGZvciAoYXV0byYgcmVzb3VyY2UgOiBmcmFnbWVudEFuZFJlc291cmNlcy5yZXNv
dXJjZXMpIHsKLSAgICAgICAgICAgIGlmIChyZXNvdXJjZSkKLSAgICAgICAgICAgICAgICBsb2Fk
ZXItPmFkZEFyY2hpdmVSZXNvdXJjZShyZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpKTsKLSAgICAg
ICAgfQorICAgIGlmIChhdXRvKiBsb2FkZXIgPSBtX2ZyYW1lLmxvYWRlcigpLmRvY3VtZW50TG9h
ZGVyKCkpIHsKKyAgICAgICAgZm9yIChhdXRvJiByZXNvdXJjZSA6IGZyYWdtZW50QW5kUmVzb3Vy
Y2VzLnJlc291cmNlcykKKyAgICAgICAgICAgIGxvYWRlci0+YWRkQXJjaGl2ZVJlc291cmNlKFdU
Rk1vdmUocmVzb3VyY2UpKTsKICAgICB9CiAKICAgICBpZiAoIXdhc0RlZmVycmluZ0NhbGxiYWNr
cykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2hpc3RvcnkvUGFnZUNhY2hlLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2hpc3RvcnkvUGFnZUNhY2hlLmNwcAppbmRleCA2ZDAwNDM3ZTE5YTViMDg3
MmM5NDFmYmJhMzQwMjc4OTg0N2U0NGQwLi5hOGE0OWY5NDAxM2VkMmQwMmJkMjNiZTZhYjMyZDlj
N2MyZWVjYzM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9oaXN0b3J5L1BhZ2VDYWNoZS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvaGlzdG9yeS9QYWdlQ2FjaGUuY3BwCkBAIC0xNjQsNyAr
MTY0LDcgQEAgc3RhdGljIGJvb2wgY2FuQ2FjaGVGcmFtZShGcmFtZSYgZnJhbWUsIERpYWdub3N0
aWNMb2dnaW5nQ2xpZW50JiBkaWFnbm9zdGljTG9nZ2kKICAgICB9CiAgICAgLy8gRklYTUU6IFdl
IHNob3VsZCBpbnZlc3RpZ2F0aW5nIGNhY2hpbmcgZnJhbWVzIHRoYXQgaGF2ZSBhbiBhc3NvY2lh
dGVkCiAgICAgLy8gYXBwbGljYXRpb24gY2FjaGUuIDxyZGFyOi8vcHJvYmxlbS81OTE3ODk5PiB0
cmFja3MgdGhhdCB3b3JrLgotICAgIGlmICghZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KCktPmNhbkNhY2hlSW5QYWdlQ2FjaGUoKSkgeworICAgIGlmICghZG9jdW1lbnRMb2Fk
ZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuY2FuQ2FjaGVJblBhZ2VDYWNoZSgpKSB7CiAgICAg
ICAgIFBDTE9HKCIgICAtVGhlIERvY3VtZW50TG9hZGVyIHVzZXMgYW4gYXBwbGljYXRpb24gY2Fj
aGUiKTsKICAgICAgICAgbG9nUGFnZUNhY2hlRmFpbHVyZURpYWdub3N0aWNNZXNzYWdlKGRpYWdu
b3N0aWNMb2dnaW5nQ2xpZW50LCBEaWFnbm9zdGljTG9nZ2luZ0tleXM6OmFwcGxpY2F0aW9uQ2Fj
aGVLZXkoKSk7CiAgICAgICAgIGlzQ2FjaGVhYmxlID0gZmFsc2U7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0ZpbGVJbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9G
aWxlSW5wdXRUeXBlLmNwcAppbmRleCA1N2QwZGMxYzc2M2Q2N2I2YjAyMjhjODYwNTEzZDdmMWU5
YzUzNjNiLi4yOGI2YzA2NjFmNGQzMTI5YjE2NzkzZWFlNDE0YjdiYTJmN2NlYjZiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0ZpbGVJbnB1dFR5cGUuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlwZS5jcHAKQEAgLTE5MSw3ICsxOTEsNyBAQCB2b2lkIEZp
bGVJbnB1dFR5cGU6OmhhbmRsZURPTUFjdGl2YXRlRXZlbnQoRXZlbnQmIGV2ZW50KQogICAgIGlm
ICghU2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkpCiAgICAgICAgIHJl
dHVybjsKIAotICAgIGlmIChDaHJvbWUqIGNocm9tZSA9IHRoaXMtPmNocm9tZSgpKSB7CisgICAg
aWYgKGF1dG8qIGNocm9tZSA9IHRoaXMtPmNocm9tZSgpKSB7CiAgICAgICAgIEZpbGVDaG9vc2Vy
U2V0dGluZ3Mgc2V0dGluZ3M7CiAgICAgICAgIEhUTUxJbnB1dEVsZW1lbnQmIGlucHV0ID0gZWxl
bWVudCgpOwogICAgICAgICBzZXR0aW5ncy5hbGxvd3NNdWx0aXBsZUZpbGVzID0gaW5wdXQuaGFz
QXR0cmlidXRlV2l0aG91dFN5bmNocm9uaXphdGlvbihtdWx0aXBsZUF0dHIpOwpAQCAtMjAxLDkg
KzIwMSw4IEBAIHZvaWQgRmlsZUlucHV0VHlwZTo6aGFuZGxlRE9NQWN0aXZhdGVFdmVudChFdmVu
dCYgZXZlbnQpCiAjaWYgRU5BQkxFKE1FRElBX0NBUFRVUkUpCiAgICAgICAgIHNldHRpbmdzLm1l
ZGlhQ2FwdHVyZVR5cGUgPSBpbnB1dC5tZWRpYUNhcHR1cmVUeXBlKCk7CiAjZW5kaWYKLQogICAg
ICAgICBhcHBseUZpbGVDaG9vc2VyU2V0dGluZ3Moc2V0dGluZ3MpOwotICAgICAgICBjaHJvbWUt
PnJ1bk9wZW5QYW5lbChpbnB1dC5kb2N1bWVudCgpLmZyYW1lKCksIG1fZmlsZUNob29zZXIpOwor
ICAgICAgICBjaHJvbWUtPnJ1bk9wZW5QYW5lbCgqaW5wdXQuZG9jdW1lbnQoKS5mcmFtZSgpLCAq
bV9maWxlQ2hvb3Nlcik7CiAgICAgfQogCiAgICAgZXZlbnQuc2V0RGVmYXVsdEhhbmRsZWQoKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVudC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwCmluZGV4
IDJlODcyYWFiYWU2NGIwNDQ4ZDIyMTRlOTYyYmIxNmY2Y2JmOTkwMTIuLmVhOGEzYjMzZTAwMjc4
MzJkNjcwZjllMDk4N2FjY2E4ZDM2OGJhYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTEZvcm1Db250cm9sRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MRm9ybUNvbnRyb2xFbGVtZW50LmNwcApAQCAtODksNyArODksNyBAQCB2b2lkIEhUTUxGb3Jt
Q29udHJvbEVsZW1lbnQ6OnNldEZvcm1FbmN0eXBlKGNvbnN0IFN0cmluZyYgdmFsdWUpCiAKIFN0
cmluZyBIVE1MRm9ybUNvbnRyb2xFbGVtZW50Ojpmb3JtTWV0aG9kKCkgY29uc3QKIHsKLSAgICBj
b25zdCBBdG9taWNTdHJpbmcmIGZvcm1NZXRob2RBdHRyID0gYXR0cmlidXRlV2l0aG91dFN5bmNo
cm9uaXphdGlvbihmb3JtbWV0aG9kQXR0cik7CisgICAgYXV0byYgZm9ybU1ldGhvZEF0dHIgPSBh
dHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKGZvcm1tZXRob2RBdHRyKTsKICAgICBpZiAo
Zm9ybU1ldGhvZEF0dHIuaXNOdWxsKCkpCiAgICAgICAgIHJldHVybiBlbXB0eVN0cmluZygpOwog
ICAgIHJldHVybiBGb3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6bWV0aG9kU3RyaW5nKEZvcm1T
dWJtaXNzaW9uOjpBdHRyaWJ1dGVzOjpwYXJzZU1ldGhvZFR5cGUoZm9ybU1ldGhvZEF0dHIpKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmNwcAppbmRleCA3NDc1ZjY0ZDI2ZGVi
MjU2MDk1ZWRhZDViMWMwNmVmMGVhNWQwMmQ4Li42NDBlMzNlZjNjODk0MmFiOGRkOTExODMwZmU2
ODBmY2VjYmVlMGJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxl
bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwCkBA
IC0yODksMTIgKzI4OSwxMSBAQCB2b2lkIEhUTUxGb3JtRWxlbWVudDo6cHJlcGFyZUZvclN1Ym1p
c3Npb24oRXZlbnQmIGV2ZW50KQogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgU3RyaW5n
UGFpclZlY3RvciBjb250cm9sTmFtZXNBbmRWYWx1ZXM7Ci0gICAgZ2V0VGV4dEZpZWxkVmFsdWVz
KGNvbnRyb2xOYW1lc0FuZFZhbHVlcyk7Ci0gICAgYXV0byBmb3JtU3RhdGUgPSBGb3JtU3RhdGU6
OmNyZWF0ZSh0aGlzLCBjb250cm9sTmFtZXNBbmRWYWx1ZXMsICZkb2N1bWVudCgpLCBOb3RTdWJt
aXR0ZWRCeUphdmFTY3JpcHQpOworICAgIGF1dG8gZm9ybVN0YXRlID0gRm9ybVN0YXRlOjpjcmVh
dGUoKnRoaXMsIHRleHRGaWVsZFZhbHVlcygpLCBkb2N1bWVudCgpLCBOb3RTdWJtaXR0ZWRCeUph
dmFTY3JpcHQpOwogICAgIGZyYW1lLT5sb2FkZXIoKS5jbGllbnQoKS5kaXNwYXRjaFdpbGxTZW5k
U3VibWl0RXZlbnQoV1RGTW92ZShmb3JtU3RhdGUpKTsKIAogICAgIFJlZjxIVE1MRm9ybUVsZW1l
bnQ+IHByb3RlY3RlZFRoaXMoKnRoaXMpOworCiAgICAgLy8gRXZlbnQgaGFuZGxpbmcgY2FuIHJl
c3VsdCBpbiBtX3Nob3VsZFN1Ym1pdCBiZWNvbWluZyB0cnVlLCByZWdhcmRsZXNzIG9mIGRpc3Bh
dGNoRXZlbnQoKSByZXR1cm4gdmFsdWUuCiAgICAgaWYgKGRpc3BhdGNoRXZlbnQoRXZlbnQ6OmNy
ZWF0ZShldmVudE5hbWVzKCkuc3VibWl0RXZlbnQsIHRydWUsIHRydWUpKSkKICAgICAgICAgbV9z
aG91bGRTdWJtaXQgPSB0cnVlOwpAQCAtMzE1LDIwICszMTQsMjAgQEAgdm9pZCBIVE1MRm9ybUVs
ZW1lbnQ6OnN1Ym1pdEZyb21KYXZhU2NyaXB0KCkKICAgICBzdWJtaXQoMCwgZmFsc2UsIFNjcmlw
dENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpLCBTdWJtaXR0ZWRCeUphdmFTY3Jp
cHQpOwogfQogCi12b2lkIEhUTUxGb3JtRWxlbWVudDo6Z2V0VGV4dEZpZWxkVmFsdWVzKFN0cmlu
Z1BhaXJWZWN0b3ImIGZpZWxkTmFtZXNBbmRWYWx1ZXMpIGNvbnN0CitTdHJpbmdQYWlyVmVjdG9y
IEhUTUxGb3JtRWxlbWVudDo6dGV4dEZpZWxkVmFsdWVzKCkgY29uc3QKIHsKLSAgICBBU1NFUlRf
QVJHKGZpZWxkTmFtZXNBbmRWYWx1ZXMsIGZpZWxkTmFtZXNBbmRWYWx1ZXMuaXNFbXB0eSgpKTsK
LQotICAgIGZpZWxkTmFtZXNBbmRWYWx1ZXMucmVzZXJ2ZUNhcGFjaXR5KG1fYXNzb2NpYXRlZEVs
ZW1lbnRzLnNpemUoKSk7CisgICAgU3RyaW5nUGFpclZlY3RvciByZXN1bHQ7CisgICAgcmVzdWx0
LnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobV9hc3NvY2lhdGVkRWxlbWVudHMuc2l6ZSgpKTsKICAg
ICBmb3IgKGF1dG8mIGFzc29jaWF0ZWRFbGVtZW50IDogbV9hc3NvY2lhdGVkRWxlbWVudHMpIHsK
LSAgICAgICAgSFRNTEVsZW1lbnQmIGVsZW1lbnQgPSBhc3NvY2lhdGVkRWxlbWVudC0+YXNIVE1M
RWxlbWVudCgpOworICAgICAgICBhdXRvJiBlbGVtZW50ID0gYXNzb2NpYXRlZEVsZW1lbnQtPmFz
SFRNTEVsZW1lbnQoKTsKICAgICAgICAgaWYgKCFpczxIVE1MSW5wdXRFbGVtZW50PihlbGVtZW50
KSkKICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICBIVE1MSW5wdXRFbGVtZW50JiBpbnB1
dCA9IGRvd25jYXN0PEhUTUxJbnB1dEVsZW1lbnQ+KGVsZW1lbnQpOworICAgICAgICBhdXRvJiBp
bnB1dCA9IGRvd25jYXN0PEhUTUxJbnB1dEVsZW1lbnQ+KGVsZW1lbnQpOwogICAgICAgICBpZiAo
IWlucHV0LmlzVGV4dEZpZWxkKCkpCiAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgZmll
bGROYW1lc0FuZFZhbHVlcy5hcHBlbmQoc3RkOjptYWtlX3BhaXIoaW5wdXQubmFtZSgpLnN0cmlu
ZygpLCBpbnB1dC52YWx1ZSgpKSk7CisgICAgICAgIHJlc3VsdC51bmNoZWNrZWRBcHBlbmQoeyBp
bnB1dC5uYW1lKCkuc3RyaW5nKCksIGlucHV0LnZhbHVlKCkgfSk7CiAgICAgfQorICAgIHJldHVy
biByZXN1bHQ7CiB9CiAKIHZvaWQgSFRNTEZvcm1FbGVtZW50OjpzdWJtaXQoRXZlbnQqIGV2ZW50
LCBib29sIGFjdGl2YXRlU3VibWl0QnV0dG9uLCBib29sIHByb2Nlc3NpbmdVc2VyR2VzdHVyZSwg
Rm9ybVN1Ym1pc3Npb25UcmlnZ2VyIGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikKQEAgLTM2NCw5ICsz
NjMsMTAgQEAgdm9pZCBIVE1MRm9ybUVsZW1lbnQ6OnN1Ym1pdChFdmVudCogZXZlbnQsIGJvb2wg
YWN0aXZhdGVTdWJtaXRCdXR0b24sIGJvb2wgcHJvY2UKICAgICBpZiAobmVlZEJ1dHRvbkFjdGl2
YXRpb24gJiYgZmlyc3RTdWNjZXNzZnVsU3VibWl0QnV0dG9uKQogICAgICAgICBmaXJzdFN1Y2Nl
c3NmdWxTdWJtaXRCdXR0b24tPnNldEFjdGl2YXRlZFN1Ym1pdCh0cnVlKTsKIAotICAgIExvY2tI
aXN0b3J5IGxvY2tIaXN0b3J5ID0gcHJvY2Vzc2luZ1VzZXJHZXN0dXJlID8gTG9ja0hpc3Rvcnk6
Ok5vIDogTG9ja0hpc3Rvcnk6OlllczsKLSAgICBSZWY8SFRNTEZvcm1FbGVtZW50PiBwcm90ZWN0
ZWRUaGlzKCp0aGlzKTsgLy8gRm9ybSBzdWJtaXNzaW9uIGNhbiBleGVjdXRlIGFyYml0YXJ5IEph
dmFTY3JpcHQuCi0gICAgZnJhbWUtPmxvYWRlcigpLnN1Ym1pdEZvcm0oRm9ybVN1Ym1pc3Npb246
OmNyZWF0ZSh0aGlzLCBtX2F0dHJpYnV0ZXMsIGV2ZW50LCBsb2NrSGlzdG9yeSwgZm9ybVN1Ym1p
c3Npb25UcmlnZ2VyKSk7CisgICAgYXV0byBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyk7
IC8vIEZvcm0gc3VibWlzc2lvbiBjYW4gZXhlY3V0ZSBhcmJpdGFyeSBKYXZhU2NyaXB0LgorCisg
ICAgYXV0byBzaG91bGRMb2NrSGlzdG9yeSA9IHByb2Nlc3NpbmdVc2VyR2VzdHVyZSA/IExvY2tI
aXN0b3J5OjpObyA6IExvY2tIaXN0b3J5OjpZZXM7CisgICAgZnJhbWUtPmxvYWRlcigpLnN1Ym1p
dEZvcm0oRm9ybVN1Ym1pc3Npb246OmNyZWF0ZSgqdGhpcywgbV9hdHRyaWJ1dGVzLCBldmVudCwg
c2hvdWxkTG9ja0hpc3RvcnksIGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikpOwogCiAgICAgaWYgKG5l
ZWRCdXR0b25BY3RpdmF0aW9uICYmIGZpcnN0U3VjY2Vzc2Z1bFN1Ym1pdEJ1dHRvbikKICAgICAg
ICAgZmlyc3RTdWNjZXNzZnVsU3VibWl0QnV0dG9uLT5zZXRBY3RpdmF0ZWRTdWJtaXQoZmFsc2Up
OwpAQCAtNDM5LDggKzQzOSw4IEBAIHZvaWQgSFRNTEZvcm1FbGVtZW50OjpyZXF1ZXN0QXV0b2Nv
bXBsZXRlKCkKICAgICBTdHJpbmdQYWlyVmVjdG9yIGNvbnRyb2xOYW1lc0FuZFZhbHVlczsKICAg
ICBnZXRUZXh0RmllbGRWYWx1ZXMoY29udHJvbE5hbWVzQW5kVmFsdWVzKTsKIAotICAgIFJlZlB0
cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSA9IEZvcm1TdGF0ZTo6Y3JlYXRlKHRoaXMsIGNvbnRyb2xO
YW1lc0FuZFZhbHVlcywgJmRvY3VtZW50KCksIFN1Ym1pdHRlZEJ5SmF2YVNjcmlwdCk7Ci0gICAg
ZnJhbWUtPmxvYWRlcigpLmNsaWVudCgpLmRpZFJlcXVlc3RBdXRvY29tcGxldGUoZm9ybVN0YXRl
LnJlbGVhc2UoKSk7CisgICAgYXV0byBmb3JtU3RhdGUgPSBGb3JtU3RhdGU6OmNyZWF0ZSh0aGlz
LCBjb250cm9sTmFtZXNBbmRWYWx1ZXMsICZkb2N1bWVudCgpLCBTdWJtaXR0ZWRCeUphdmFTY3Jp
cHQpOworICAgIGZyYW1lLT5sb2FkZXIoKS5jbGllbnQoKS5kaWRSZXF1ZXN0QXV0b2NvbXBsZXRl
KFdURk1vdmUoZm9ybVN0YXRlKSk7CiB9CiAKIHZvaWQgSFRNTEZvcm1FbGVtZW50OjpmaW5pc2hS
ZXF1ZXN0QXV0b2NvbXBsZXRlKEF1dG9jb21wbGV0ZVJlc3VsdCByZXN1bHQpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MRm9ybUVsZW1lbnQuaAppbmRleCBiYjUxNzk4OTc2ZTNmNjY0M2Q4YmE0YTc1YTdi
MTAzZTcyMDYyMzk3Li41ZGUxOTVlYjk2MTVjZWE2MmU1YTIxY2JmMDQ5Yjk3OWFiMjcxYjI1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmgKQEAgLTEyOCw3ICsxMjgsNyBAQCBw
dWJsaWM6CiAgICAgY29uc3QgVmVjdG9yPEZvcm1Bc3NvY2lhdGVkRWxlbWVudCo+JiBhc3NvY2lh
dGVkRWxlbWVudHMoKSBjb25zdCB7IHJldHVybiBtX2Fzc29jaWF0ZWRFbGVtZW50czsgfQogICAg
IGNvbnN0IFZlY3RvcjxIVE1MSW1hZ2VFbGVtZW50Kj4mIGltYWdlRWxlbWVudHMoKSBjb25zdCB7
IHJldHVybiBtX2ltYWdlRWxlbWVudHM7IH0KIAotICAgIHZvaWQgZ2V0VGV4dEZpZWxkVmFsdWVz
KFN0cmluZ1BhaXJWZWN0b3ImIGZpZWxkTmFtZXNBbmRWYWx1ZXMpIGNvbnN0OworICAgIFN0cmlu
Z1BhaXJWZWN0b3IgdGV4dEZpZWxkVmFsdWVzKCkgY29uc3Q7CiAKICAgICBzdGF0aWMgSFRNTEZv
cm1FbGVtZW50KiBmaW5kQ2xvc2VzdEZvcm1BbmNlc3Rvcihjb25zdCBFbGVtZW50Jik7CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEh0bWxFbGVtZW50LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTEh0bWxFbGVtZW50LmNwcAppbmRleCA1ODQ2ZjU2NDE5OGE5ZDlm
ZmUwMjMyZWJlMTVjMWZkNTBhZjMxOWM4Li40OWY4MzcyNTQzYzE5YmRkOGExYmNkZmQzM2M1NTM1
NmY2ODZmNTU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxIdG1sRWxlbWVu
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSHRtbEVsZW1lbnQuY3BwCkBAIC02
NiwxNSArNjYsMTUgQEAgdm9pZCBIVE1MSHRtbEVsZW1lbnQ6Omluc2VydGVkQnlQYXJzZXIoKQog
ICAgIGlmICghZG9jdW1lbnQoKS5mcmFtZSgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBEb2N1
bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIgPSBkb2N1bWVudCgpLmZyYW1lKCktPmxvYWRlcigp
LmRvY3VtZW50TG9hZGVyKCk7CisgICAgYXV0byogZG9jdW1lbnRMb2FkZXIgPSBkb2N1bWVudCgp
LmZyYW1lKCktPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCk7CiAgICAgaWYgKCFkb2N1bWVudExv
YWRlcikKICAgICAgICAgcmV0dXJuOwogCi0gICAgY29uc3QgQXRvbWljU3RyaW5nJiBtYW5pZmVz
dCA9IGF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24obWFuaWZlc3RBdHRyKTsKKyAgICBh
dXRvJiBtYW5pZmVzdCA9IGF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24obWFuaWZlc3RB
dHRyKTsKICAgICBpZiAobWFuaWZlc3QuaXNFbXB0eSgpKQotICAgICAgICBkb2N1bWVudExvYWRl
ci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+c2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3QoKTsK
KyAgICAgICAgZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2VsZWN0Q2Fj
aGVXaXRob3V0TWFuaWZlc3QoKTsKICAgICBlbHNlCi0gICAgICAgIGRvY3VtZW50TG9hZGVyLT5h
cHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5zZWxlY3RDYWNoZVdpdGhNYW5pZmVzdChkb2N1bWVudCgp
LmNvbXBsZXRlVVJMKG1hbmlmZXN0KSk7CisgICAgICAgIGRvY3VtZW50TG9hZGVyLT5hcHBsaWNh
dGlvbkNhY2hlSG9zdCgpLnNlbGVjdENhY2hlV2l0aE1hbmlmZXN0KGRvY3VtZW50KCkuY29tcGxl
dGVVUkwobWFuaWZlc3QpKTsKIH0KIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MTGlua0VsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGlua0VsZW1l
bnQuY3BwCmluZGV4IGQ3NzdhMzkzNzFjY2ZkOGMzM2EzZmU4MDk2MDdlMjg5YjJlNDk5NTEuLjQ5
NmFlZDZlYmU3NTk4NGI2YjIzMTE1ZWU3ZTMwMzBkOTg2OGRiZTAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTExpbmtFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxMaW5rRWxlbWVudC5jcHAKQEAgLTI2Nyw3ICsyNjcsNyBAQCB2b2lkIEhUTUxMaW5r
RWxlbWVudDo6cHJvY2VzcygpCiAgICAgICAgIGlmICghaXNBY3RpdmUpCiAgICAgICAgICAgICBw
cmlvcml0eSA9IFJlc291cmNlTG9hZFByaW9yaXR5OjpWZXJ5TG93OwogICAgICAgICBDYWNoZWRS
ZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCh1cmwsIENhY2hlZFJlc291cmNlTG9hZGVyOjpkZWZhdWx0
Q2FjaGVkUmVzb3VyY2VPcHRpb25zKCksIHByaW9yaXR5LCBXVEZNb3ZlKGNoYXJzZXQpKTsKLSAg
ICAgICAgcmVxdWVzdC5zZXRJbml0aWF0b3IodGhpcyk7CisgICAgICAgIHJlcXVlc3Quc2V0SW5p
dGlhdG9yKCp0aGlzKTsKIAogICAgICAgICBpZiAoZG9jdW1lbnQoKS5jb250ZW50U2VjdXJpdHlQ
b2xpY3koKS0+YWxsb3dTdHlsZVdpdGhOb25jZShhdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0
aW9uKEhUTUxOYW1lczo6bm9uY2VBdHRyKSkpIHsKICAgICAgICAgICAgIFJlc291cmNlTG9hZGVy
T3B0aW9ucyBvcHRpb25zID0gQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OmRlZmF1bHRDYWNoZWRSZXNv
dXJjZU9wdGlvbnMoKTsKQEAgLTM2Nyw3ICszNjcsNyBAQCB2b2lkIEhUTUxMaW5rRWxlbWVudDo6
c2V0Q1NTU3R5bGVTaGVldChjb25zdCBTdHJpbmcmIGhyZWYsIGNvbnN0IFVSTCYgYmFzZVVSTCwg
YwogICAgIENTU1BhcnNlckNvbnRleHQgcGFyc2VyQ29udGV4dChkb2N1bWVudCgpLCBiYXNlVVJM
LCBjaGFyc2V0KTsKICAgICBhdXRvIGNhY2hlUG9saWN5ID0gZnJhbWUtPmxvYWRlcigpLnN1YnJl
c291cmNlQ2FjaGVQb2xpY3koKTsKIAotICAgIGlmIChSZWZQdHI8U3R5bGVTaGVldENvbnRlbnRz
PiByZXN0b3JlZFNoZWV0ID0gY29uc3RfY2FzdDxDYWNoZWRDU1NTdHlsZVNoZWV0Kj4oY2FjaGVk
U3R5bGVTaGVldCktPnJlc3RvcmVQYXJzZWRTdHlsZVNoZWV0KHBhcnNlckNvbnRleHQsIGNhY2hl
UG9saWN5KSkgeworICAgIGlmIChhdXRvIHJlc3RvcmVkU2hlZXQgPSBjb25zdF9jYXN0PENhY2hl
ZENTU1N0eWxlU2hlZXQqPihjYWNoZWRTdHlsZVNoZWV0KS0+cmVzdG9yZVBhcnNlZFN0eWxlU2hl
ZXQocGFyc2VyQ29udGV4dCwgY2FjaGVQb2xpY3kpKSB7CiAgICAgICAgIEFTU0VSVChyZXN0b3Jl
ZFNoZWV0LT5pc0NhY2hlYWJsZSgpKTsKICAgICAgICAgQVNTRVJUKCFyZXN0b3JlZFNoZWV0LT5p
c0xvYWRpbmcoKSk7CiAgICAgICAgIGluaXRpYWxpemVTdHlsZVNoZWV0KHJlc3RvcmVkU2hlZXQu
cmVsZWFzZU5vbk51bGwoKSwgKmNhY2hlZFN0eWxlU2hlZXQpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTE1lZGlhRWxlbWVudC5jcHAKaW5kZXggM2E5YzRmNTE5OGYxZjI2MDQzODE3ODlhODQ5ZjNh
OWY1ZDJiZjAxOS4uZjRkZDU0ZTU4N2E1ZTY5ODhhOGY4NDk1NzIyMzE4OTY4NzFhZjczYSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCkBAIC0xNDI4LDExICsxNDI4
LDggQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50Ojpsb2FkUmVzb3VyY2UoY29uc3QgVVJMJiBpbml0
aWFsVVJMLCBDb250ZW50VHlwZSYgY29udGVudFQKICAgICB9CiAKICNpZiBFTkFCTEUoQ09OVEVO
VF9FWFRFTlNJT05TKQotICAgIERvY3VtZW50TG9hZGVyKiBkb2N1bWVudExvYWRlciA9IGZyYW1l
LT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwotCi0gICAgaWYgKGRvY3VtZW50TG9hZGVyKSB7
Ci0gICAgICAgIGF1dG8gYmxvY2tlZFN0YXR1cyA9IHBhZ2UtPnVzZXJDb250ZW50UHJvdmlkZXIo
KS5wcm9jZXNzQ29udGVudEV4dGVuc2lvblJ1bGVzRm9yTG9hZCh1cmwsIFJlc291cmNlVHlwZTo6
TWVkaWEsICpkb2N1bWVudExvYWRlcik7Ci0gICAgICAgIGlmIChibG9ja2VkU3RhdHVzLmJsb2Nr
ZWRMb2FkKSB7CisgICAgaWYgKGF1dG8qIGRvY3VtZW50TG9hZGVyID0gZnJhbWUtPmxvYWRlcigp
LmRvY3VtZW50TG9hZGVyKCkpIHsKKyAgICAgICAgaWYgKHBhZ2UtPnVzZXJDb250ZW50UHJvdmlk
ZXIoKS5wcm9jZXNzQ29udGVudEV4dGVuc2lvblJ1bGVzRm9yTG9hZCh1cmwsIFJlc291cmNlVHlw
ZTo6TWVkaWEsICpkb2N1bWVudExvYWRlcikuYmxvY2tlZExvYWQpIHsKICAgICAgICAgICAgIG1l
ZGlhTG9hZGluZ0ZhaWxlZChNZWRpYVBsYXllcjo6Rm9ybWF0RXJyb3IpOwogICAgICAgICAgICAg
cmV0dXJuOwogICAgICAgICB9CkBAIC0xNDQyLDExICsxNDM5LDkgQEAgdm9pZCBIVE1MTWVkaWFF
bGVtZW50Ojpsb2FkUmVzb3VyY2UoY29uc3QgVVJMJiBpbml0aWFsVVJMLCBDb250ZW50VHlwZSYg
Y29udGVudFQKICAgICAvLyBUaGUgcmVzb3VyY2UgZmV0Y2ggYWxnb3JpdGhtIAogICAgIG1fbmV0
d29ya1N0YXRlID0gTkVUV09SS19MT0FESU5HOwogCi0gICAgLy8gSWYgdGhlIHVybCBzaG91bGQg
YmUgbG9hZGVkIGZyb20gdGhlIGFwcGxpY2F0aW9uIGNhY2hlLCBwYXNzIHRoZSB1cmwgb2YgdGhl
IGNhY2hlZCBmaWxlCi0gICAgLy8gdG8gdGhlIG1lZGlhIGVuZ2luZS4KLSAgICBBcHBsaWNhdGlv
bkNhY2hlSG9zdCogY2FjaGVIb3N0ID0gZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkt
PmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7CisgICAgLy8gSWYgdGhlIFVSTCBzaG91bGQgYmUgbG9h
ZGVkIGZyb20gdGhlIGFwcGxpY2F0aW9uIGNhY2hlLCBwYXNzIHRoZSBVUkwgb2YgdGhlIGNhY2hl
ZCBmaWxlIHRvIHRoZSBtZWRpYSBlbmdpbmUuCiAgICAgQXBwbGljYXRpb25DYWNoZVJlc291cmNl
KiByZXNvdXJjZSA9IG51bGxwdHI7Ci0gICAgaWYgKGNhY2hlSG9zdCAmJiBjYWNoZUhvc3QtPnNo
b3VsZExvYWRSZXNvdXJjZUZyb21BcHBsaWNhdGlvbkNhY2hlKFJlc291cmNlUmVxdWVzdCh1cmwp
LCByZXNvdXJjZSkpIHsKKyAgICBpZiAoZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkt
PmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2hvdWxkTG9hZFJlc291cmNlRnJvbUFwcGxpY2F0aW9u
Q2FjaGUoUmVzb3VyY2VSZXF1ZXN0KHVybCksIHJlc291cmNlKSkgewogICAgICAgICAvLyBSZXNv
dXJjZXMgdGhhdCBhcmUgbm90IHByZXNlbnQgaW4gdGhlIG1hbmlmZXN0IHdpbGwgYWx3YXlzIGZh
aWwgdG8gbG9hZCAoYXQgbGVhc3QsIGFmdGVyIHRoZQogICAgICAgICAvLyBjYWNoZSBoYXMgYmVl
biBwcmltZWQgdGhlIGZpcnN0IHRpbWUpLCBtYWtpbmcgdGhlIHRlc3Rpbmcgb2Ygb2ZmbGluZSBh
cHBsaWNhdGlvbnMgc2ltcGxlci4KICAgICAgICAgaWYgKCFyZXNvdXJjZSB8fCByZXNvdXJjZS0+
cGF0aCgpLmlzRW1wdHkoKSkgewpAQCAtMTQ2MCw3ICsxNDU1LDcgQEAgdm9pZCBIVE1MTWVkaWFF
bGVtZW50Ojpsb2FkUmVzb3VyY2UoY29uc3QgVVJMJiBpbml0aWFsVVJMLCBDb250ZW50VHlwZSYg
Y29udGVudFQKIAogICAgIG1fZmlyc3RUaW1lUGxheWluZyA9IHRydWU7CiAKLSAgICAvLyBTZXQg
bV9jdXJyZW50U3JjICpiZWZvcmUqIGNoYW5naW5nIHRvIHRoZSBjYWNoZSB1cmwsIHRoZSBmYWN0
IHRoYXQgd2UgYXJlIGxvYWRpbmcgZnJvbSB0aGUgYXBwCisgICAgLy8gU2V0IG1fY3VycmVudFNy
YyAqYmVmb3JlKiBjaGFuZ2luZyB0byB0aGUgY2FjaGUgVVJMLCB0aGUgZmFjdCB0aGF0IHdlIGFy
ZSBsb2FkaW5nIGZyb20gdGhlIGFwcAogICAgIC8vIGNhY2hlIGlzIGFuIGludGVybmFsIGRldGFp
bCBub3QgZXhwb3NlZCB0aHJvdWdoIHRoZSBtZWRpYSBlbGVtZW50IEFQSS4KICAgICBtX2N1cnJl
bnRTcmMgPSB1cmw7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNw
ZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5jcHAKaW5kZXggZmY0ZmYzMWNjMTlmNDkz
NGQwNGIyMjk3Zjc2ZWI5NDU4ODQ4NWQyMi4uNmUzOWJjZGFkMGQ4NGYwNDI3YTkyYzI3MTBmZmNm
MmYxZTBiMDBjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
ckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5jcHAKQEAgLTY4LDE2ICs2OCwxNyBAQCB2
b2lkIEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6ZW5hYmxlKEVycm9yU3RyaW5nJikK
IAogdm9pZCBJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6OnVwZGF0ZUFwcGxpY2F0aW9u
Q2FjaGVTdGF0dXMoRnJhbWUqIGZyYW1lKQogewotICAgIERvY3VtZW50TG9hZGVyKiBkb2N1bWVu
dExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOworICAgIGlmICghZnJh
bWUpCisgICAgICAgIHJldHVybjsKKyAgICBhdXRvKiBkb2N1bWVudExvYWRlciA9IGZyYW1lLT5s
b2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwogICAgIGlmICghZG9jdW1lbnRMb2FkZXIpCiAgICAg
ICAgIHJldHVybjsKIAotICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0KiBob3N0ID0gZG9jdW1lbnRM
b2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7Ci0gICAgQXBwbGljYXRpb25DYWNoZUhvc3Q6
OlN0YXR1cyBzdGF0dXMgPSBob3N0LT5zdGF0dXMoKTsKLSAgICBBcHBsaWNhdGlvbkNhY2hlSG9z
dDo6Q2FjaGVJbmZvIGluZm8gPSBob3N0LT5hcHBsaWNhdGlvbkNhY2hlSW5mbygpOworICAgIGF1
dG8mIGhvc3QgPSBkb2N1bWVudExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKTsKKyAgICBp
bnQgc3RhdHVzID0gaG9zdC5zdGF0dXMoKTsKKyAgICBhdXRvIG1hbmlmZXN0VVJMID0gaG9zdC5h
cHBsaWNhdGlvbkNhY2hlSW5mbygpLm1hbmlmZXN0LnN0cmluZygpOwogCi0gICAgU3RyaW5nIG1h
bmlmZXN0VVJMID0gaW5mby5tX21hbmlmZXN0LnN0cmluZygpOwotICAgIG1fZnJvbnRlbmREaXNw
YXRjaGVyLT5hcHBsaWNhdGlvbkNhY2hlU3RhdHVzVXBkYXRlZChtX3BhZ2VBZ2VudC0+ZnJhbWVJ
ZChmcmFtZSksIG1hbmlmZXN0VVJMLCBzdGF0aWNfY2FzdDxpbnQ+KHN0YXR1cykpOworICAgIG1f
ZnJvbnRlbmREaXNwYXRjaGVyLT5hcHBsaWNhdGlvbkNhY2hlU3RhdHVzVXBkYXRlZChtX3BhZ2VB
Z2VudC0+ZnJhbWVJZChmcmFtZSksIG1hbmlmZXN0VVJMLCBzdGF0dXMpOwogfQogCiB2b2lkIElu
c3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6bmV0d29ya1N0YXRlQ2hhbmdlZCgpCkBAIC05
MSwyMCArOTIsMTggQEAgdm9pZCBJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6OmdldEZy
YW1lc1dpdGhNYW5pZmVzdHMoRXJyb3JTdHJpbmcmLCBSZWZQdHIKICAgICByZXN1bHQgPSBJbnNw
ZWN0b3I6OlByb3RvY29sOjpBcnJheTxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNh
Y2hlOjpGcmFtZVdpdGhNYW5pZmVzdD46OmNyZWF0ZSgpOwogCiAgICAgZm9yIChGcmFtZSogZnJh
bWUgPSAmbV9wYWdlQWdlbnQtPm1haW5GcmFtZSgpOyBmcmFtZTsgZnJhbWUgPSBmcmFtZS0+dHJl
ZSgpLnRyYXZlcnNlTmV4dCgpKSB7Ci0gICAgICAgIERvY3VtZW50TG9hZGVyKiBkb2N1bWVudExv
YWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOworICAgICAgICBhdXRvKiBk
b2N1bWVudExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwogICAgICAg
ICBpZiAoIWRvY3VtZW50TG9hZGVyKQogICAgICAgICAgICAgY29udGludWU7CiAKLSAgICAgICAg
QXBwbGljYXRpb25DYWNoZUhvc3QqIGhvc3QgPSBkb2N1bWVudExvYWRlci0+YXBwbGljYXRpb25D
YWNoZUhvc3QoKTsKLSAgICAgICAgQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNhY2hlSW5mbyBpbmZv
ID0gaG9zdC0+YXBwbGljYXRpb25DYWNoZUluZm8oKTsKLSAgICAgICAgU3RyaW5nIG1hbmlmZXN0
VVJMID0gaW5mby5tX21hbmlmZXN0LnN0cmluZygpOworICAgICAgICBhdXRvJiBob3N0ID0gZG9j
dW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7CisgICAgICAgIFN0cmluZyBtYW5p
ZmVzdFVSTCA9IGhvc3QuYXBwbGljYXRpb25DYWNoZUluZm8oKS5tYW5pZmVzdC5zdHJpbmcoKTsK
ICAgICAgICAgaWYgKCFtYW5pZmVzdFVSTC5pc0VtcHR5KCkpIHsKLSAgICAgICAgICAgIFJlZjxJ
bnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpGcmFtZVdpdGhNYW5pZmVzdD4g
dmFsdWUgPSBJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpGcmFtZVdpdGhN
YW5pZmVzdDo6Y3JlYXRlKCkKKyAgICAgICAgICAgIHJlc3VsdC0+YWRkSXRlbShJbnNwZWN0b3I6
OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpGcmFtZVdpdGhNYW5pZmVzdDo6Y3JlYXRlKCkK
ICAgICAgICAgICAgICAgICAuc2V0RnJhbWVJZChtX3BhZ2VBZ2VudC0+ZnJhbWVJZChmcmFtZSkp
CiAgICAgICAgICAgICAgICAgLnNldE1hbmlmZXN0VVJMKG1hbmlmZXN0VVJMKQotICAgICAgICAg
ICAgICAgIC5zZXRTdGF0dXMoc3RhdGljX2Nhc3Q8aW50Pihob3N0LT5zdGF0dXMoKSkpCi0gICAg
ICAgICAgICAgICAgLnJlbGVhc2UoKTsKLSAgICAgICAgICAgIHJlc3VsdC0+YWRkSXRlbShXVEZN
b3ZlKHZhbHVlKSk7CisgICAgICAgICAgICAgICAgLnNldFN0YXR1cyhzdGF0aWNfY2FzdDxpbnQ+
KGhvc3Quc3RhdHVzKCkpKQorICAgICAgICAgICAgICAgIC5yZWxlYXNlKCkpOwogICAgICAgICB9
CiAgICAgfQogfQpAQCAtMTI0LDY4ICsxMjMsNjAgQEAgdm9pZCBJbnNwZWN0b3JBcHBsaWNhdGlv
bkNhY2hlQWdlbnQ6OmdldE1hbmlmZXN0Rm9yRnJhbWUoRXJyb3JTdHJpbmcmIGVycm9yU3RyaW4K
ICAgICBpZiAoIWRvY3VtZW50TG9hZGVyKQogICAgICAgICByZXR1cm47CiAKLSAgICBBcHBsaWNh
dGlvbkNhY2hlSG9zdDo6Q2FjaGVJbmZvIGluZm8gPSBkb2N1bWVudExvYWRlci0+YXBwbGljYXRp
b25DYWNoZUhvc3QoKS0+YXBwbGljYXRpb25DYWNoZUluZm8oKTsKLSAgICAqbWFuaWZlc3RVUkwg
PSBpbmZvLm1fbWFuaWZlc3Quc3RyaW5nKCk7CisgICAgKm1hbmlmZXN0VVJMID0gZG9jdW1lbnRM
b2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuYXBwbGljYXRpb25DYWNoZUluZm8oKS5tYW5p
ZmVzdC5zdHJpbmcoKTsKIH0KIAogdm9pZCBJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6
OmdldEFwcGxpY2F0aW9uQ2FjaGVGb3JGcmFtZShFcnJvclN0cmluZyYgZXJyb3JTdHJpbmcsIGNv
bnN0IFN0cmluZyYgZnJhbWVJZCwgUmVmUHRyPEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0
aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGU+JiBhcHBsaWNhdGlvbkNhY2hlKQogewotICAgIERv
Y3VtZW50TG9hZGVyKiBkb2N1bWVudExvYWRlciA9IGFzc2VydEZyYW1lV2l0aERvY3VtZW50TG9h
ZGVyKGVycm9yU3RyaW5nLCBmcmFtZUlkKTsKKyAgICBhdXRvKiBkb2N1bWVudExvYWRlciA9IGFz
c2VydEZyYW1lV2l0aERvY3VtZW50TG9hZGVyKGVycm9yU3RyaW5nLCBmcmFtZUlkKTsKICAgICBp
ZiAoIWRvY3VtZW50TG9hZGVyKQogICAgICAgICByZXR1cm47CiAKLSAgICBBcHBsaWNhdGlvbkNh
Y2hlSG9zdCogaG9zdCA9IGRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpOwot
ICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8gaW5mbyA9IGhvc3QtPmFwcGxpY2F0
aW9uQ2FjaGVJbmZvKCk7Ci0KLSAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6UmVzb3VyY2VJbmZv
TGlzdCByZXNvdXJjZXM7Ci0gICAgaG9zdC0+ZmlsbFJlc291cmNlTGlzdCgmcmVzb3VyY2VzKTsK
LQotICAgIGFwcGxpY2F0aW9uQ2FjaGUgPSBidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGUo
cmVzb3VyY2VzLCBpbmZvKTsKKyAgICBhdXRvJiBob3N0ID0gZG9jdW1lbnRMb2FkZXItPmFwcGxp
Y2F0aW9uQ2FjaGVIb3N0KCk7CisgICAgYXBwbGljYXRpb25DYWNoZSA9IGJ1aWxkT2JqZWN0Rm9y
QXBwbGljYXRpb25DYWNoZShob3N0LnJlc291cmNlTGlzdCgpLCBob3N0LmFwcGxpY2F0aW9uQ2Fj
aGVJbmZvKCkpOwogfQogCi1SZWY8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNo
ZTo6QXBwbGljYXRpb25DYWNoZT4gSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWls
ZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGUoY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6OlJl
c291cmNlSW5mb0xpc3QmIGFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMsIGNvbnN0IEFwcGxpY2F0
aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8mIGFwcGxpY2F0aW9uQ2FjaGVJbmZvKQorUmVmPEluc3Bl
Y3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGU+IEluc3Bl
Y3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6YnVpbGRPYmplY3RGb3JBcHBsaWNhdGlvbkNhY2hl
KGNvbnN0IFZlY3RvcjxBcHBsaWNhdGlvbkNhY2hlSG9zdDo6UmVzb3VyY2VJbmZvPiYgYXBwbGlj
YXRpb25DYWNoZVJlc291cmNlcywgY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNhY2hlSW5m
byYgYXBwbGljYXRpb25DYWNoZUluZm8pCiB7CiAgICAgcmV0dXJuIEluc3BlY3Rvcjo6UHJvdG9j
b2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGU6OmNyZWF0ZSgpCi0gICAgICAg
IC5zZXRNYW5pZmVzdFVSTChhcHBsaWNhdGlvbkNhY2hlSW5mby5tX21hbmlmZXN0LnN0cmluZygp
KQotICAgICAgICAuc2V0U2l6ZShhcHBsaWNhdGlvbkNhY2hlSW5mby5tX3NpemUpCi0gICAgICAg
IC5zZXRDcmVhdGlvblRpbWUoYXBwbGljYXRpb25DYWNoZUluZm8ubV9jcmVhdGlvblRpbWUpCi0g
ICAgICAgIC5zZXRVcGRhdGVUaW1lKGFwcGxpY2F0aW9uQ2FjaGVJbmZvLm1fdXBkYXRlVGltZSkK
KyAgICAgICAgLnNldE1hbmlmZXN0VVJMKGFwcGxpY2F0aW9uQ2FjaGVJbmZvLm1hbmlmZXN0LnN0
cmluZygpKQorICAgICAgICAuc2V0U2l6ZShhcHBsaWNhdGlvbkNhY2hlSW5mby5zaXplKQorICAg
ICAgICAuc2V0Q3JlYXRpb25UaW1lKGFwcGxpY2F0aW9uQ2FjaGVJbmZvLmNyZWF0aW9uVGltZSkK
KyAgICAgICAgLnNldFVwZGF0ZVRpbWUoYXBwbGljYXRpb25DYWNoZUluZm8udXBkYXRlVGltZSkK
ICAgICAgICAgLnNldFJlc291cmNlcyhidWlsZEFycmF5Rm9yQXBwbGljYXRpb25DYWNoZVJlc291
cmNlcyhhcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2VzKSkKICAgICAgICAgLnJlbGVhc2UoKTsKIH0K
IAotUmVmPEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFycmF5PEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFw
cGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4+IEluc3BlY3RvckFwcGxp
Y2F0aW9uQ2FjaGVBZ2VudDo6YnVpbGRBcnJheUZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMo
Y29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mb0xpc3QmIGFwcGxpY2F0aW9u
Q2FjaGVSZXNvdXJjZXMpCitSZWY8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXJyYXk8SW5zcGVjdG9y
OjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZVJlc291cmNlPj4g
SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZEFycmF5Rm9yQXBwbGljYXRpb25D
YWNoZVJlc291cmNlcyhjb25zdCBWZWN0b3I8QXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNl
SW5mbz4mIGFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMpCiB7Ci0gICAgYXV0byByZXNvdXJjZXMg
PSBJbnNwZWN0b3I6OlByb3RvY29sOjpBcnJheTxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNh
dGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+OjpjcmVhdGUoKTsKLQotICAgIGZv
ciAoY29uc3QgYXV0byYgcmVzb3VyY2VJbmZvIDogYXBwbGljYXRpb25DYWNoZVJlc291cmNlcykK
LSAgICAgICAgcmVzb3VyY2VzLT5hZGRJdGVtKGJ1aWxkT2JqZWN0Rm9yQXBwbGljYXRpb25DYWNo
ZVJlc291cmNlKHJlc291cmNlSW5mbykpOwotCi0gICAgcmV0dXJuIHJlc291cmNlczsKKyAgICBh
dXRvIHJlc3VsdCA9IEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFycmF5PEluc3BlY3Rvcjo6UHJvdG9j
b2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT46OmNyZWF0ZSgp
OworICAgIGZvciAoYXV0byYgaW5mbyA6IGFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMpCisgICAg
ICAgIHJlc3VsdC0+YWRkSXRlbShidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJj
ZShpbmZvKSk7CisgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAogUmVmPEluc3BlY3Rvcjo6UHJvdG9j
b2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4gSW5zcGVjdG9y
QXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGVSZXNv
dXJjZShjb25zdCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6UmVzb3VyY2VJbmZvJiByZXNvdXJjZUlu
Zm8pCiB7CiAgICAgU3RyaW5nQnVpbGRlciB0eXBlczsKIAotICAgIGlmIChyZXNvdXJjZUluZm8u
bV9pc01hc3RlcikKKyAgICBpZiAocmVzb3VyY2VJbmZvLmlzTWFzdGVyKQogICAgICAgICB0eXBl
cy5hcHBlbmRMaXRlcmFsKCJNYXN0ZXIgIik7CiAKLSAgICBpZiAocmVzb3VyY2VJbmZvLm1faXNN
YW5pZmVzdCkKKyAgICBpZiAocmVzb3VyY2VJbmZvLmlzTWFuaWZlc3QpCiAgICAgICAgIHR5cGVz
LmFwcGVuZExpdGVyYWwoIk1hbmlmZXN0ICIpOwogCi0gICAgaWYgKHJlc291cmNlSW5mby5tX2lz
RmFsbGJhY2spCisgICAgaWYgKHJlc291cmNlSW5mby5pc0ZhbGxiYWNrKQogICAgICAgICB0eXBl
cy5hcHBlbmRMaXRlcmFsKCJGYWxsYmFjayAiKTsKIAotICAgIGlmIChyZXNvdXJjZUluZm8ubV9p
c0ZvcmVpZ24pCisgICAgaWYgKHJlc291cmNlSW5mby5pc0ZvcmVpZ24pCiAgICAgICAgIHR5cGVz
LmFwcGVuZExpdGVyYWwoIkZvcmVpZ24gIik7CiAKLSAgICBpZiAocmVzb3VyY2VJbmZvLm1faXNF
eHBsaWNpdCkKKyAgICBpZiAocmVzb3VyY2VJbmZvLmlzRXhwbGljaXQpCiAgICAgICAgIHR5cGVz
LmFwcGVuZExpdGVyYWwoIkV4cGxpY2l0ICIpOwogCiAgICAgcmV0dXJuIEluc3BlY3Rvcjo6UHJv
dG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6Y3JlYXRl
KCkKLSAgICAgICAgLnNldFVybChyZXNvdXJjZUluZm8ubV9yZXNvdXJjZS5zdHJpbmcoKSkKLSAg
ICAgICAgLnNldFNpemUoc3RhdGljX2Nhc3Q8aW50PihyZXNvdXJjZUluZm8ubV9zaXplKSkKKyAg
ICAgICAgLnNldFVybChyZXNvdXJjZUluZm8ucmVzb3VyY2Uuc3RyaW5nKCkpCisgICAgICAgIC5z
ZXRTaXplKHN0YXRpY19jYXN0PGludD4ocmVzb3VyY2VJbmZvLnNpemUpKQogICAgICAgICAuc2V0
VHlwZSh0eXBlcy50b1N0cmluZygpKQogICAgICAgICAucmVsZWFzZSgpOwogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2Vu
dC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVB
Z2VudC5oCmluZGV4IGQ1YzU3OWM3ZWFiZTdiMmJhZGM0NzRiMGY0ODcxNmRkNjk0ZmViNzYuLjQ4
NzUyZWZhMGNkNWY2YTc2MmRlNTNkYzJhMTEyZWZmNDY0ZjcyZmIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50
LmgKQEAgLTYyLDggKzYyLDggQEAgcHVibGljOgogICAgIHZvaWQgZ2V0QXBwbGljYXRpb25DYWNo
ZUZvckZyYW1lKEVycm9yU3RyaW5nJiwgY29uc3QgU3RyaW5nJiBmcmFtZUlkLCBSZWZQdHI8SW5z
cGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZT4mKSBv
dmVycmlkZTsKIAogcHJpdmF0ZToKLSAgICBSZWY8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBwbGlj
YXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZT4gYnVpbGRPYmplY3RGb3JBcHBsaWNhdGlvbkNh
Y2hlKGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpSZXNvdXJjZUluZm9MaXN0JiwgY29uc3Qg
QXBwbGljYXRpb25DYWNoZUhvc3Q6OkNhY2hlSW5mbyYpOwotICAgIFJlZjxJbnNwZWN0b3I6OlBy
b3RvY29sOjpBcnJheTxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBs
aWNhdGlvbkNhY2hlUmVzb3VyY2U+PiBidWlsZEFycmF5Rm9yQXBwbGljYXRpb25DYWNoZVJlc291
cmNlcyhjb25zdCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6UmVzb3VyY2VJbmZvTGlzdCYpOworICAg
IFJlZjxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNh
Y2hlPiBidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGUoY29uc3QgVmVjdG9yPEFwcGxpY2F0
aW9uQ2FjaGVIb3N0OjpSZXNvdXJjZUluZm8+JiwgY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6
OkNhY2hlSW5mbyYpOworICAgIFJlZjxJbnNwZWN0b3I6OlByb3RvY29sOjpBcnJheTxJbnNwZWN0
b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+
PiBidWlsZEFycmF5Rm9yQXBwbGljYXRpb25DYWNoZVJlc291cmNlcyhjb25zdCBWZWN0b3I8QXBw
bGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mbz4mKTsKICAgICBSZWY8SW5zcGVjdG9yOjpQ
cm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiBidWls
ZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZShjb25zdCBBcHBsaWNhdGlvbkNhY2hl
SG9zdDo6UmVzb3VyY2VJbmZvJik7CiAKICAgICBEb2N1bWVudExvYWRlciogYXNzZXJ0RnJhbWVX
aXRoRG9jdW1lbnRMb2FkZXIoRXJyb3JTdHJpbmcmLCBjb25zdCBTdHJpbmcmIGZyYW1lSWQpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRh
dGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0
aW9uLmNwcAppbmRleCAyZTQzMzc5NmE2YWYzYjExYjkxZDdjYjA2MjFhMTg0N2I1ZmMyNTdhLi5k
NjhjNTIyZWZjZTAyY2ZlZDU5YThmMDg1OWY0NTRlMWM4YzJjYTgxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcApAQCAt
MSw2ICsxLDYgQEAKIC8qCiAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgotKiBDb3B5cmlnaHQgKEMpIDIwMTQsIDIwMTUgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorKiBDb3B5cmlnaHQgKEMpIDIwMTQtMjAxNyBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCiAqCiAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCkBAIC0x
MDczLDEwICsxMDczLDEwIEBAIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpuZXR3b3Jr
U3RhdGVDaGFuZ2VkSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiBpbnN0CiAgICAgICAgIGFwcGxp
Y2F0aW9uQ2FjaGVBZ2VudC0+bmV0d29ya1N0YXRlQ2hhbmdlZCgpOwogfQogCi12b2lkIEluc3Bl
Y3Rvckluc3RydW1lbnRhdGlvbjo6dXBkYXRlQXBwbGljYXRpb25DYWNoZVN0YXR1c0ltcGwoSW5z
dHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgRnJhbWUqIGZyYW1lKQordm9p
ZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OnVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXNJ
bXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRpbmdBZ2VudHMsIEZyYW1lJiBmcmFt
ZSkKIHsKLSAgICBpZiAoSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50KiBhcHBsaWNhdGlv
bkNhY2hlQWdlbnQgPSBpbnN0cnVtZW50aW5nQWdlbnRzLmluc3BlY3RvckFwcGxpY2F0aW9uQ2Fj
aGVBZ2VudCgpKQotICAgICAgICBhcHBsaWNhdGlvbkNhY2hlQWdlbnQtPnVwZGF0ZUFwcGxpY2F0
aW9uQ2FjaGVTdGF0dXMoZnJhbWUpOworICAgIGlmIChhdXRvKiBhcHBsaWNhdGlvbkNhY2hlQWdl
bnQgPSBpbnN0cnVtZW50aW5nQWdlbnRzLmluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudCgp
KQorICAgICAgICBhcHBsaWNhdGlvbkNhY2hlQWdlbnQtPnVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVT
dGF0dXMoJmZyYW1lKTsKIH0KIAogYm9vbCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmNvbnNv
bGVBZ2VudEVuYWJsZWQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0
cnVtZW50YXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb24uaAppbmRleCA5YjYwMDEwNGRhMmYxZGQ1ZWQxMDJiYmY5NDVhNmY1YWQ0OTk3ZjQy
Li4yNDVjZGM4ODc1MmQwODUxZTU3MDQ0YmI3MjMzNWI2YTA4MjRhYWZkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oCkBAIC00
MDcsNyArNDA3LDcgQEAgcHJpdmF0ZToKICNlbmRpZgogCiAgICAgc3RhdGljIHZvaWQgbmV0d29y
a1N0YXRlQ2hhbmdlZEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYpOwotICAgIHN0YXRpYyB2b2lk
IHVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXNJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBG
cmFtZSopOworICAgIHN0YXRpYyB2b2lkIHVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXNJbXBs
KEluc3RydW1lbnRpbmdBZ2VudHMmLCBGcmFtZSYpOwogCiAgICAgc3RhdGljIHZvaWQgbGF5ZXJU
cmVlRGlkQ2hhbmdlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJik7CiAgICAgc3RhdGljIHZvaWQg
cmVuZGVyTGF5ZXJEZXN0cm95ZWRJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBjb25zdCBSZW5k
ZXJMYXllciYpOwpAQCAtMTE4MSw4ICsxMTgxLDggQEAgaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uOjpuZXR3b3JrU3RhdGVDaGFuZ2VkKFBhZ2UmIHBhZ2UpCiBpbmxpbmUgdm9p
ZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OnVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXMo
RnJhbWUqIGZyYW1lKQogewogICAgIEZBU1RfUkVUVVJOX0lGX05PX0ZST05URU5EUyh2b2lkKCkp
OwotICAgIGlmIChJbnN0cnVtZW50aW5nQWdlbnRzKiBpbnN0cnVtZW50aW5nQWdlbnRzID0gaW5z
dHJ1bWVudGluZ0FnZW50c0ZvckZyYW1lKGZyYW1lKSkKLSAgICAgICAgdXBkYXRlQXBwbGljYXRp
b25DYWNoZVN0YXR1c0ltcGwoKmluc3RydW1lbnRpbmdBZ2VudHMsIGZyYW1lKTsKKyAgICBpZiAo
YXV0byogaW5zdHJ1bWVudGluZ0FnZW50cyA9IGluc3RydW1lbnRpbmdBZ2VudHNGb3JGcmFtZShm
cmFtZSkpCisgICAgICAgIHVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXNJbXBsKCppbnN0cnVt
ZW50aW5nQWdlbnRzLCAqZnJhbWUpOwogfQogCiBpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb246OmFkZE1lc3NhZ2VUb0NvbnNvbGUoUGFnZSYgcGFnZSwgc3RkOjp1bmlxdWVfcHRy
PEluc3BlY3Rvcjo6Q29uc29sZU1lc3NhZ2U+IG1lc3NhZ2UpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0RvY3VtZW50TG9hZGVyLmNwcAppbmRleCA5YjM4YzNiMzYyNzkwNWUxYmVhYTM5ZjU1YmUzZGJj
NjljMzc3YWU5Li5lZWJjYzIxMjhjNzhkMmUxZDMzNWQyMTA2MzFlNTRmMTNjM2Y4Yjg1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5jcHAKQEAgLTEyOSwzMCArMTI5LDE2
IEBAIHN0YXRpYyBib29sIGFyZUFsbExvYWRlcnNQYWdlQ2FjaGVBY2NlcHRhYmxlKGNvbnN0IFJl
c291cmNlTG9hZGVyTWFwJiBsb2FkZXJzKQogICAgIHJldHVybiB0cnVlOwogfQogCi1Eb2N1bWVu
dExvYWRlcjo6RG9jdW1lbnRMb2FkZXIoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXEsIGNvbnN0
IFN1YnN0aXR1dGVEYXRhJiBzdWJzdGl0dXRlRGF0YSkKLSAgICA6IG1fZGVmZXJNYWluUmVzb3Vy
Y2VEYXRhTG9hZCh0cnVlKQotICAgICwgbV9mcmFtZShudWxscHRyKQotICAgICwgbV9jYWNoZWRS
ZXNvdXJjZUxvYWRlcihDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Y3JlYXRlKHRoaXMpKQorRG9jdW1l
bnRMb2FkZXI6OkRvY3VtZW50TG9hZGVyKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwg
Y29uc3QgU3Vic3RpdHV0ZURhdGEmIHN1YnN0aXR1dGVEYXRhKQorICAgIDogbV9jYWNoZWRSZXNv
dXJjZUxvYWRlcihDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Y3JlYXRlKHRoaXMpKQogICAgICwgbV93
cml0ZXIobV9mcmFtZSkKLSAgICAsIG1fb3JpZ2luYWxSZXF1ZXN0KHJlcSkKKyAgICAsIG1fb3Jp
Z2luYWxSZXF1ZXN0KHJlcXVlc3QpCiAgICAgLCBtX3N1YnN0aXR1dGVEYXRhKHN1YnN0aXR1dGVE
YXRhKQotICAgICwgbV9vcmlnaW5hbFJlcXVlc3RDb3B5KHJlcSkKLSAgICAsIG1fcmVxdWVzdChy
ZXEpCisgICAgLCBtX29yaWdpbmFsUmVxdWVzdENvcHkocmVxdWVzdCkKKyAgICAsIG1fcmVxdWVz
dChyZXF1ZXN0KQogICAgICwgbV9vcmlnaW5hbFN1YnN0aXR1dGVEYXRhV2FzVmFsaWQoc3Vic3Rp
dHV0ZURhdGEuaXNWYWxpZCgpKQotICAgICwgbV9jb21taXR0ZWQoZmFsc2UpCi0gICAgLCBtX2lz
U3RvcHBpbmcoZmFsc2UpCi0gICAgLCBtX2dvdEZpcnN0Qnl0ZShmYWxzZSkKLSAgICAsIG1faXND
bGllbnRSZWRpcmVjdChmYWxzZSkKLSAgICAsIG1faXNMb2FkaW5nTXVsdGlwYXJ0Q29udGVudChm
YWxzZSkKLSAgICAsIG1fd2FzT25sb2FkRGlzcGF0Y2hlZChmYWxzZSkKLSAgICAsIG1fc3RvcFJl
Y29yZGluZ1Jlc3BvbnNlcyhmYWxzZSkKICAgICAsIG1fc3Vic3RpdHV0ZVJlc291cmNlRGVsaXZl
cnlUaW1lcigqdGhpcywgJkRvY3VtZW50TG9hZGVyOjpzdWJzdGl0dXRlUmVzb3VyY2VEZWxpdmVy
eVRpbWVyRmlyZWQpCi0gICAgLCBtX2RpZENyZWF0ZUdsb2JhbEhpc3RvcnlFbnRyeShmYWxzZSkK
LSAgICAsIG1fbG9hZGluZ01haW5SZXNvdXJjZShmYWxzZSkKLSAgICAsIG1fdGltZU9mTGFzdERh
dGFSZWNlaXZlZCgwLjApCi0gICAgLCBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNl
TG9hZGVyKDApCiAgICAgLCBtX2RhdGFMb2FkVGltZXIoKnRoaXMsICZEb2N1bWVudExvYWRlcjo6
aGFuZGxlU3Vic3RpdHV0ZURhdGFMb2FkTm93KQotICAgICwgbV9zdWJyZXNvdXJjZUxvYWRlcnNB
cmVQYWdlQ2FjaGVBY2NlcHRhYmxlKGZhbHNlKQogICAgICwgbV9hcHBsaWNhdGlvbkNhY2hlSG9z
dChzdGQ6Om1ha2VfdW5pcXVlPEFwcGxpY2F0aW9uQ2FjaGVIb3N0PigqdGhpcykpCiB7CiB9CkBA
IC0xNjYsNyArMTUyLDkgQEAgRnJhbWVMb2FkZXIqIERvY3VtZW50TG9hZGVyOjpmcmFtZUxvYWRl
cigpIGNvbnN0CiAKIFN1YnJlc291cmNlTG9hZGVyKiBEb2N1bWVudExvYWRlcjo6bWFpblJlc291
cmNlTG9hZGVyKCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9tYWluUmVzb3VyY2UgPyBtX21haW5S
ZXNvdXJjZS0+bG9hZGVyKCkgOiAwOworICAgIGlmICghbV9tYWluUmVzb3VyY2UpCisgICAgICAg
IHJldHVybiBudWxscHRyOworICAgIHJldHVybiBtX21haW5SZXNvdXJjZS0+bG9hZGVyKCk7CiB9
CiAKIERvY3VtZW50TG9hZGVyOjp+RG9jdW1lbnRMb2FkZXIoKQpAQCAtMTc5LDcgKzE2Nyw3IEBA
IERvY3VtZW50TG9hZGVyOjp+RG9jdW1lbnRMb2FkZXIoKQogICAgIGlmIChtX2ljb25EYXRhQ2Fs
bGJhY2spCiAgICAgICAgIG1faWNvbkRhdGFDYWxsYmFjay0+aW52YWxpZGF0ZSgpOwogICAgIG1f
Y2FjaGVkUmVzb3VyY2VMb2FkZXItPmNsZWFyRG9jdW1lbnRMb2FkZXIoKTsKLSAgICAKKwogICAg
IGNsZWFyTWFpblJlc291cmNlKCk7CiB9CiAKQEAgLTE5OSwzMSArMTg3LDYgQEAgRG9jdW1lbnQq
IERvY3VtZW50TG9hZGVyOjpkb2N1bWVudCgpIGNvbnN0CiAgICAgcmV0dXJuIG51bGxwdHI7CiB9
CiAKLWNvbnN0IFJlc291cmNlUmVxdWVzdCYgRG9jdW1lbnRMb2FkZXI6Om9yaWdpbmFsUmVxdWVz
dCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fb3JpZ2luYWxSZXF1ZXN0OwotfQotCi1jb25zdCBS
ZXNvdXJjZVJlcXVlc3QmIERvY3VtZW50TG9hZGVyOjpvcmlnaW5hbFJlcXVlc3RDb3B5KCkgY29u
c3QKLXsKLSAgICByZXR1cm4gbV9vcmlnaW5hbFJlcXVlc3RDb3B5OwotfQotCi1jb25zdCBSZXNv
dXJjZVJlcXVlc3QmIERvY3VtZW50TG9hZGVyOjpyZXF1ZXN0KCkgY29uc3QKLXsKLSAgICByZXR1
cm4gbV9yZXF1ZXN0OwotfQotCi1SZXNvdXJjZVJlcXVlc3QmIERvY3VtZW50TG9hZGVyOjpyZXF1
ZXN0KCkKLXsKLSAgICByZXR1cm4gbV9yZXF1ZXN0OwotfQotCi1jb25zdCBVUkwmIERvY3VtZW50
TG9hZGVyOjp1cmwoKSBjb25zdAotewotICAgIHJldHVybiByZXF1ZXN0KCkudXJsKCk7Ci19Ci0K
IHZvaWQgRG9jdW1lbnRMb2FkZXI6OnJlcGxhY2VSZXF1ZXN0VVJMRm9yU2FtZURvY3VtZW50TmF2
aWdhdGlvbihjb25zdCBVUkwmIHVybCkKIHsKICAgICBtX29yaWdpbmFsUmVxdWVzdENvcHkuc2V0
VVJMKHVybCk7CkBAIC0zMTksNyArMjgyLDcgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6c3RvcExv
YWRpbmcoKQogICAgIGNhbmNlbEFsbChtX211bHRpcGFydFN1YnJlc291cmNlTG9hZGVycyk7CiAK
ICAgICAvLyBBcHBjYWNoZSB1c2VzIFJlc291cmNlSGFuZGxlIGRpcmVjdGx5LCBEb2N1bWVudExv
YWRlciBkb2Vzbid0IGNvdW50IHRoZXNlIGxvYWRzLgotICAgIG1fYXBwbGljYXRpb25DYWNoZUhv
c3QtPnN0b3BMb2FkaW5nSW5GcmFtZShtX2ZyYW1lKTsKKyAgICBtX2FwcGxpY2F0aW9uQ2FjaGVI
b3N0LT5zdG9wTG9hZGluZ0luRnJhbWUoKm1fZnJhbWUpOwogICAgIAogI2lmIEVOQUJMRShXRUJf
QVJDSElWRSkgfHwgRU5BQkxFKE1IVE1MKQogICAgIGNsZWFyQXJjaGl2ZVJlc291cmNlcygpOwpA
QCAtNjAyLDcgKzU2NSw3IEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6OndpbGxTZW5kUmVxdWVzdChS
ZXNvdXJjZVJlcXVlc3QmIG5ld1JlcXVlc3QsIGNvbnN0IFJlc291cmNlCiAKICAgICBBU1NFUlQo
IW1fd2FpdGluZ0Zvck5hdmlnYXRpb25Qb2xpY3kpOwogICAgIG1fd2FpdGluZ0Zvck5hdmlnYXRp
b25Qb2xpY3kgPSB0cnVlOwotICAgIGZyYW1lTG9hZGVyKCktPnBvbGljeUNoZWNrZXIoKS5jaGVj
a05hdmlnYXRpb25Qb2xpY3kobmV3UmVxdWVzdCwgZGlkUmVjZWl2ZVJlZGlyZWN0UmVzcG9uc2Us
IFt0aGlzXShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFBhc3NSZWZQdHI8Rm9ybVN0
YXRlPiwgYm9vbCBzaG91bGRDb250aW51ZSkgeworICAgIGZyYW1lTG9hZGVyKCktPnBvbGljeUNo
ZWNrZXIoKS5jaGVja05hdmlnYXRpb25Qb2xpY3kobmV3UmVxdWVzdCwgZGlkUmVjZWl2ZVJlZGly
ZWN0UmVzcG9uc2UsIFt0aGlzXSAoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBGb3Jt
U3RhdGUqLCBib29sIHNob3VsZENvbnRpbnVlKSB7CiAgICAgICAgIGNvbnRpbnVlQWZ0ZXJOYXZp
Z2F0aW9uUG9saWN5KHJlcXVlc3QsIHNob3VsZENvbnRpbnVlKTsKICAgICB9KTsKIH0KQEAgLTky
Miw3ICs4ODUsNyBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpjb21taXREYXRhKGNvbnN0IGNoYXIq
IGJ5dGVzLCBzaXplX3QgbGVuZ3RoKQogICAgICAgICAgICAgdXNlckNob3NlbiA9IGZhbHNlOwog
ICAgICAgICAgICAgZW5jb2RpbmcgPSByZXNwb25zZSgpLnRleHRFbmNvZGluZ05hbWUoKTsKICNp
ZiBFTkFCTEUoV0VCX0FSQ0hJVkUpCi0gICAgICAgICAgICBpZiAobV9hcmNoaXZlICYmIG1fYXJj
aGl2ZS0+dHlwZSgpID09IEFyY2hpdmU6OldlYkFyY2hpdmUpCisgICAgICAgICAgICBpZiAobV9h
cmNoaXZlICYmIG1fYXJjaGl2ZS0+c2hvdWxkVXNlTWFpblJlc291cmNlRW5jb2RpbmcoKSkKICAg
ICAgICAgICAgICAgICBlbmNvZGluZyA9IG1fYXJjaGl2ZS0+bWFpblJlc291cmNlKCktPnRleHRF
bmNvZGluZygpOwogI2VuZGlmCiAgICAgICAgIH0gZWxzZSB7CkBAIC0xMDgzLDE1ICsxMDQ2LDE2
IEBAIGJvb2wgRG9jdW1lbnRMb2FkZXI6OmlzTG9hZGluZ0luQVBJU2Vuc2UoKSBjb25zdAogICAg
IGlmIChmcmFtZUxvYWRlcigpLT5zdGF0ZSgpICE9IEZyYW1lU3RhdGVDb21wbGV0ZSkgewogICAg
ICAgICBpZiAobV9mcmFtZS0+c2V0dGluZ3MoKS5uZWVkc0lzTG9hZGluZ0luQVBJU2Vuc2VRdWly
aygpICYmICFtX3N1YnJlc291cmNlTG9hZGVycy5pc0VtcHR5KCkpCiAgICAgICAgICAgICByZXR1
cm4gdHJ1ZTsKLSAgICAKLSAgICAgICAgRG9jdW1lbnQqIGRvYyA9IG1fZnJhbWUtPmRvY3VtZW50
KCk7Ci0gICAgICAgIGlmICgoaXNMb2FkaW5nTWFpblJlc291cmNlKCkgfHwgIW1fZnJhbWUtPmRv
Y3VtZW50KCktPmxvYWRFdmVudEZpbmlzaGVkKCkpICYmIGlzTG9hZGluZygpKQorCisgICAgICAg
IEFTU0VSVChtX2ZyYW1lLT5kb2N1bWVudCgpKTsKKyAgICAgICAgYXV0byYgZG9jdW1lbnQgPSAq
bV9mcmFtZS0+ZG9jdW1lbnQoKTsKKyAgICAgICAgaWYgKChpc0xvYWRpbmdNYWluUmVzb3VyY2Uo
KSB8fCAhZG9jdW1lbnQubG9hZEV2ZW50RmluaXNoZWQoKSkgJiYgaXNMb2FkaW5nKCkpCiAgICAg
ICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgaWYgKG1fY2FjaGVkUmVzb3VyY2VMb2FkZXIt
PnJlcXVlc3RDb3VudCgpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgICAgIGlmIChk
b2MtPnByb2Nlc3NpbmdMb2FkRXZlbnQoKSkKKyAgICAgICAgaWYgKGRvY3VtZW50LnByb2Nlc3Np
bmdMb2FkRXZlbnQoKSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAgICAgICBpZiAoZG9j
LT5oYXNBY3RpdmVQYXJzZXIoKSkKKyAgICAgICAgaWYgKGRvY3VtZW50Lmhhc0FjdGl2ZVBhcnNl
cigpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQogICAgIHJldHVybiBmcmFtZUxv
YWRlcigpLT5zdWJmcmFtZUlzTG9hZGluZygpOwpAQCAtMTEwMiw0MCArMTA2NiwzNSBAQCBib29s
IERvY3VtZW50TG9hZGVyOjptYXliZUNyZWF0ZUFyY2hpdmUoKQogI2lmICFFTkFCTEUoV0VCX0FS
Q0hJVkUpICYmICFFTkFCTEUoTUhUTUwpCiAgICAgcmV0dXJuIGZhbHNlOwogI2Vsc2UKLSAgICAK
ICAgICAvLyBHaXZlIHRoZSBhcmNoaXZlIG1hY2hpbmVyeSBhIGNyYWNrIGF0IHRoaXMgZG9jdW1l
bnQuIElmIHRoZSBNSU1FIHR5cGUgaXMgbm90IGFuIGFyY2hpdmUgdHlwZSwgaXQgd2lsbCByZXR1
cm4gMC4KICAgICBtX2FyY2hpdmUgPSBBcmNoaXZlRmFjdG9yeTo6Y3JlYXRlKG1fcmVzcG9uc2Uu
dXJsKCksIG1haW5SZXNvdXJjZURhdGEoKS5nZXQoKSwgbV9yZXNwb25zZS5taW1lVHlwZSgpKTsK
ICAgICBpZiAoIW1fYXJjaGl2ZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIAotICAgIGFk
ZEFsbEFyY2hpdmVSZXNvdXJjZXMobV9hcmNoaXZlLmdldCgpKTsKLSAgICBBcmNoaXZlUmVzb3Vy
Y2UqIG1haW5SZXNvdXJjZSA9IG1fYXJjaGl2ZS0+bWFpblJlc291cmNlKCk7Ci0gICAgbV9wYXJz
ZWRBcmNoaXZlRGF0YSA9ICZtYWluUmVzb3VyY2UtPmRhdGEoKTsKLSAgICBtX3dyaXRlci5zZXRN
SU1FVHlwZShtYWluUmVzb3VyY2UtPm1pbWVUeXBlKCkpOwotICAgIAorICAgIGFkZEFsbEFyY2hp
dmVSZXNvdXJjZXMoKm1fYXJjaGl2ZSk7CisgICAgQVNTRVJUKG1fYXJjaGl2ZS0+bWFpblJlc291
cmNlKCkpOworICAgIGF1dG8mIG1haW5SZXNvdXJjZSA9ICptX2FyY2hpdmUtPm1haW5SZXNvdXJj
ZSgpOworICAgIG1fcGFyc2VkQXJjaGl2ZURhdGEgPSAmbWFpblJlc291cmNlLmRhdGEoKTsKKyAg
ICBtX3dyaXRlci5zZXRNSU1FVHlwZShtYWluUmVzb3VyY2UubWltZVR5cGUoKSk7CisKICAgICBB
U1NFUlQobV9mcmFtZS0+ZG9jdW1lbnQoKSk7Ci0gICAgY29tbWl0RGF0YShtYWluUmVzb3VyY2Ut
PmRhdGEoKS5kYXRhKCksIG1haW5SZXNvdXJjZS0+ZGF0YSgpLnNpemUoKSk7CisgICAgY29tbWl0
RGF0YShtYWluUmVzb3VyY2UuZGF0YSgpLmRhdGEoKSwgbWFpblJlc291cmNlLmRhdGEoKS5zaXpl
KCkpOwogICAgIHJldHVybiB0cnVlOwotI2VuZGlmIC8vICFFTkFCTEUoV0VCX0FSQ0hJVkUpICYm
ICFFTkFCTEUoTUhUTUwpCisjZW5kaWYKIH0KIAogI2lmIEVOQUJMRShXRUJfQVJDSElWRSkgfHwg
RU5BQkxFKE1IVE1MKQogCi12b2lkIERvY3VtZW50TG9hZGVyOjpzZXRBcmNoaXZlKFBhc3NSZWZQ
dHI8QXJjaGl2ZT4gYXJjaGl2ZSkKK3ZvaWQgRG9jdW1lbnRMb2FkZXI6OnNldEFyY2hpdmUoUmVm
PEFyY2hpdmU+JiYgYXJjaGl2ZSkKIHsKLSAgICBtX2FyY2hpdmUgPSBhcmNoaXZlOwotICAgIGFk
ZEFsbEFyY2hpdmVSZXNvdXJjZXMobV9hcmNoaXZlLmdldCgpKTsKKyAgICBtX2FyY2hpdmUgPSBX
VEZNb3ZlKGFyY2hpdmUpOworICAgIGFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoKm1fYXJjaGl2ZSk7
CiB9CiAKLXZvaWQgRG9jdW1lbnRMb2FkZXI6OmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoQXJjaGl2
ZSogYXJjaGl2ZSkKK3ZvaWQgRG9jdW1lbnRMb2FkZXI6OmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMo
QXJjaGl2ZSYgYXJjaGl2ZSkKIHsKICAgICBpZiAoIW1fYXJjaGl2ZVJlc291cmNlQ29sbGVjdGlv
bikKICAgICAgICAgbV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uID0gc3RkOjptYWtlX3VuaXF1
ZTxBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uPigpOwotICAgICAgICAKLSAgICBBU1NFUlQoYXJj
aGl2ZSk7Ci0gICAgaWYgKCFhcmNoaXZlKQotICAgICAgICByZXR1cm47Ci0gICAgICAgIAogICAg
IG1fYXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi0+YWRkQWxsUmVzb3VyY2VzKGFyY2hpdmUpOwog
fQogCkBAIC0xMTQ1LDEzICsxMTA0LDEyIEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6OmFkZEFyY2hp
dmVSZXNvdXJjZShSZWY8QXJjaGl2ZVJlc291cmNlPiYmIHJlc291cmNlKQogewogICAgIGlmICgh
bV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uKQogICAgICAgICBtX2FyY2hpdmVSZXNvdXJjZUNv
bGxlY3Rpb24gPSBzdGQ6Om1ha2VfdW5pcXVlPEFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24+KCk7
Ci0gICAgICAgIAogICAgIG1fYXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi0+YWRkUmVzb3VyY2Uo
V1RGTW92ZShyZXNvdXJjZSkpOwogfQogCi1QYXNzUmVmUHRyPEFyY2hpdmU+IERvY3VtZW50TG9h
ZGVyOjpwb3BBcmNoaXZlRm9yU3ViZnJhbWUoY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0
IFVSTCYgdXJsKQorUmVmUHRyPEFyY2hpdmU+IERvY3VtZW50TG9hZGVyOjpwb3BBcmNoaXZlRm9y
U3ViZnJhbWUoY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IFVSTCYgdXJsKQogewotICAg
IHJldHVybiBtX2FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24gPyBtX2FyY2hpdmVSZXNvdXJjZUNv
bGxlY3Rpb24tPnBvcFN1YmZyYW1lQXJjaGl2ZShmcmFtZU5hbWUsIHVybCkgOiBQYXNzUmVmUHRy
PEFyY2hpdmU+KG51bGxwdHIpOworICAgIHJldHVybiBtX2FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rp
b24gPyBtX2FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24tPnBvcFN1YmZyYW1lQXJjaGl2ZShmcmFt
ZU5hbWUsIHVybCkgOiBudWxscHRyOwogfQogCiB2b2lkIERvY3VtZW50TG9hZGVyOjpjbGVhckFy
Y2hpdmVSZXNvdXJjZXMoKQpAQCAtMTE3MSw3ICsxMTI5LDcgQEAgQXJjaGl2ZVJlc291cmNlKiBE
b2N1bWVudExvYWRlcjo6YXJjaGl2ZVJlc291cmNlRm9yVVJMKGNvbnN0IFVSTCYgdXJsKSBjb25z
dAogewogICAgIGlmICghbV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uKQogICAgICAgICByZXR1
cm4gbnVsbHB0cjsKLSAgICBBcmNoaXZlUmVzb3VyY2UqIHJlc291cmNlID0gbV9hcmNoaXZlUmVz
b3VyY2VDb2xsZWN0aW9uLT5hcmNoaXZlUmVzb3VyY2VGb3JVUkwodXJsKTsKKyAgICBhdXRvKiBy
ZXNvdXJjZSA9IG1fYXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi0+YXJjaGl2ZVJlc291cmNlRm9y
VVJMKHVybCk7CiAgICAgaWYgKCFyZXNvdXJjZSB8fCByZXNvdXJjZS0+c2hvdWxkSWdub3JlV2hl
blVuYXJjaGl2aW5nKCkpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIHJldHVybiByZXNv
dXJjZTsKQEAgLTExODIsMTcgKzExNDAsMTYgQEAgUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gRG9j
dW1lbnRMb2FkZXI6Om1haW5SZXNvdXJjZSgpIGNvbnN0CiAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZl
cj4gZGF0YSA9IG1haW5SZXNvdXJjZURhdGEoKTsKICAgICBpZiAoIWRhdGEpCiAgICAgICAgIGRh
dGEgPSBTaGFyZWRCdWZmZXI6OmNyZWF0ZSgpOwotICAgICAgICAKICAgICBhdXRvJiByZXNwb25z
ZSA9IHRoaXMtPnJlc3BvbnNlKCk7CiAgICAgcmV0dXJuIEFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRl
KFdURk1vdmUoZGF0YSksIHJlc3BvbnNlLnVybCgpLCByZXNwb25zZS5taW1lVHlwZSgpLCByZXNw
b25zZS50ZXh0RW5jb2RpbmdOYW1lKCksIGZyYW1lKCktPnRyZWUoKS51bmlxdWVOYW1lKCkpOwog
fQogCi1QYXNzUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gRG9jdW1lbnRMb2FkZXI6OnN1YnJlc291
cmNlKGNvbnN0IFVSTCYgdXJsKSBjb25zdAorUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gRG9jdW1l
bnRMb2FkZXI6OnN1YnJlc291cmNlKGNvbnN0IFVSTCYgdXJsKSBjb25zdAogewogICAgIGlmICgh
aXNDb21taXR0ZWQoKSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgCi0gICAgQ2FjaGVk
UmVzb3VyY2UqIHJlc291cmNlID0gbV9jYWNoZWRSZXNvdXJjZUxvYWRlci0+Y2FjaGVkUmVzb3Vy
Y2UodXJsKTsKKyAgICBhdXRvKiByZXNvdXJjZSA9IG1fY2FjaGVkUmVzb3VyY2VMb2FkZXItPmNh
Y2hlZFJlc291cmNlKHVybCk7CiAgICAgaWYgKCFyZXNvdXJjZSB8fCAhcmVzb3VyY2UtPmlzTG9h
ZGVkKCkpCiAgICAgICAgIHJldHVybiBhcmNoaXZlUmVzb3VyY2VGb3JVUkwodXJsKTsKIApAQCAt
MTIwNiwxOCArMTE2MywxNiBAQCBQYXNzUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gRG9jdW1lbnRM
b2FkZXI6OnN1YnJlc291cmNlKGNvbnN0IFVSTCYgdXJsKSBjb25zdAogICAgIHJldHVybiBBcmNo
aXZlUmVzb3VyY2U6OmNyZWF0ZShkYXRhLCB1cmwsIHJlc291cmNlLT5yZXNwb25zZSgpKTsKIH0K
IAotVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+PiBEb2N1bWVudExvYWRlcjo6c3VicmVz
b3VyY2VzKCkgY29uc3QKK1ZlY3RvcjxSZWY8QXJjaGl2ZVJlc291cmNlPj4gRG9jdW1lbnRMb2Fk
ZXI6OnN1YnJlc291cmNlcygpIGNvbnN0CiB7CiAgICAgaWYgKCFpc0NvbW1pdHRlZCgpKQogICAg
ICAgICByZXR1cm4geyB9OwogCi0gICAgVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+PiBz
dWJyZXNvdXJjZXM7Ci0KLSAgICBmb3IgKGF1dG8mIGNhY2hlZFJlc291cmNlSGFuZGxlIDogbV9j
YWNoZWRSZXNvdXJjZUxvYWRlci0+YWxsQ2FjaGVkUmVzb3VyY2VzKCkudmFsdWVzKCkpIHsKLSAg
ICAgICAgaWYgKFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IHN1YnJlc291cmNlID0gdGhpcy0+c3Vi
cmVzb3VyY2UoVVJMKFBhcnNlZFVSTFN0cmluZywgY2FjaGVkUmVzb3VyY2VIYW5kbGUtPnVybCgp
KSkpCi0gICAgICAgICAgICBzdWJyZXNvdXJjZXMuYXBwZW5kKFdURk1vdmUoc3VicmVzb3VyY2Up
KTsKKyAgICBWZWN0b3I8UmVmPEFyY2hpdmVSZXNvdXJjZT4+IHN1YnJlc291cmNlczsKKyAgICBm
b3IgKGF1dG8mIGhhbmRsZSA6IG1fY2FjaGVkUmVzb3VyY2VMb2FkZXItPmFsbENhY2hlZFJlc291
cmNlcygpLnZhbHVlcygpKSB7CisgICAgICAgIGlmIChhdXRvIHN1YnJlc291cmNlID0gdGhpcy0+
c3VicmVzb3VyY2UoeyBQYXJzZWRVUkxTdHJpbmcsIGhhbmRsZS0+dXJsKCkgfSkpCisgICAgICAg
ICAgICBzdWJyZXNvdXJjZXMuYXBwZW5kKHN1YnJlc291cmNlLnJlbGVhc2VOb25OdWxsKCkpOwog
ICAgIH0KLQogICAgIHJldHVybiBzdWJyZXNvdXJjZXM7CiB9CiAKQEAgLTEyMjUsOSArMTE4MCwx
MSBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpkZWxpdmVyU3Vic3RpdHV0ZVJlc291cmNlc0FmdGVy
RGVsYXkoKQogewogICAgIGlmIChtX3BlbmRpbmdTdWJzdGl0dXRlUmVzb3VyY2VzLmlzRW1wdHko
KSkKICAgICAgICAgcmV0dXJuOwotICAgIEFTU0VSVChtX2ZyYW1lICYmIG1fZnJhbWUtPnBhZ2Uo
KSk7CisgICAgQVNTRVJUKG1fZnJhbWUpOworICAgIEFTU0VSVChtX2ZyYW1lLT5wYWdlKCkpOwog
ICAgIGlmIChtX2ZyYW1lLT5wYWdlKCktPmRlZmVyc0xvYWRpbmcoKSkKICAgICAgICAgcmV0dXJu
OworCiAgICAgaWYgKCFtX3N1YnN0aXR1dGVSZXNvdXJjZURlbGl2ZXJ5VGltZXIuaXNBY3RpdmUo
KSkKICAgICAgICAgbV9zdWJzdGl0dXRlUmVzb3VyY2VEZWxpdmVyeVRpbWVyLnN0YXJ0T25lU2hv
dCgwKTsKIH0KQEAgLTEyMzYsMTggKzExOTMsMTUgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6c3Vi
c3RpdHV0ZVJlc291cmNlRGVsaXZlcnlUaW1lckZpcmVkKCkKIHsKICAgICBpZiAobV9wZW5kaW5n
U3Vic3RpdHV0ZVJlc291cmNlcy5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybjsKLSAgICBBU1NF
UlQobV9mcmFtZSAmJiBtX2ZyYW1lLT5wYWdlKCkpOworICAgIEFTU0VSVChtX2ZyYW1lKTsKKyAg
ICBBU1NFUlQobV9mcmFtZS0+cGFnZSgpKTsKICAgICBpZiAobV9mcmFtZS0+cGFnZSgpLT5kZWZl
cnNMb2FkaW5nKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIFN1YnN0aXR1dGVSZXNvdXJjZU1h
cCBjb3B5OwotICAgIGNvcHkuc3dhcChtX3BlbmRpbmdTdWJzdGl0dXRlUmVzb3VyY2VzKTsKLQot
ICAgIGZvciAoYXV0byYgZW50cnkgOiBjb3B5KSB7Ci0gICAgICAgIGF1dG8mIGxvYWRlciA9IGVu
dHJ5LmtleTsKLSAgICAgICAgU3Vic3RpdHV0ZVJlc291cmNlKiByZXNvdXJjZSA9IGVudHJ5LnZh
bHVlLmdldCgpOwotCi0gICAgICAgIGlmIChyZXNvdXJjZSkKKyAgICBhdXRvIHBlbmRpbmdTdWJz
dGl0dXRlUmVzb3VyY2VzID0gV1RGTW92ZShtX3BlbmRpbmdTdWJzdGl0dXRlUmVzb3VyY2VzKTsK
KyAgICBmb3IgKGF1dG8mIHBlbmRpbmdTdWJzdGl0dXRlUmVzb3VyY2UgOiBwZW5kaW5nU3Vic3Rp
dHV0ZVJlc291cmNlcykgeworICAgICAgICBhdXRvJiBsb2FkZXIgPSBwZW5kaW5nU3Vic3RpdHV0
ZVJlc291cmNlLmtleTsKKyAgICAgICAgaWYgKGF1dG8mIHJlc291cmNlID0gcGVuZGluZ1N1YnN0
aXR1dGVSZXNvdXJjZS52YWx1ZSkKICAgICAgICAgICAgIHJlc291cmNlLT5kZWxpdmVyKCpsb2Fk
ZXIpOwogICAgICAgICBlbHNlIHsKICAgICAgICAgICAgIC8vIEEgbnVsbCByZXNvdXJjZSBtZWFu
cyB0aGF0IHdlIHNob3VsZCBmYWlsIHRoZSBsb2FkLgpAQCAtMTI1OCwxMCArMTIxMiwxMiBAQCB2
b2lkIERvY3VtZW50TG9hZGVyOjpzdWJzdGl0dXRlUmVzb3VyY2VEZWxpdmVyeVRpbWVyRmlyZWQo
KQogfQogCiAjaWZuZGVmIE5ERUJVRworCiBib29sIERvY3VtZW50TG9hZGVyOjppc1N1YnN0aXR1
dGVMb2FkUGVuZGluZyhSZXNvdXJjZUxvYWRlciogbG9hZGVyKSBjb25zdAogewogICAgIHJldHVy
biBtX3BlbmRpbmdTdWJzdGl0dXRlUmVzb3VyY2VzLmNvbnRhaW5zKGxvYWRlcik7CiB9CisKICNl
bmRpZgogCiB2b2lkIERvY3VtZW50TG9hZGVyOjpjYW5jZWxQZW5kaW5nU3Vic3RpdHV0ZUxvYWQo
UmVzb3VyY2VMb2FkZXIqIGxvYWRlcikKQEAgLTEyNzQsOSArMTIzMCwxMCBAQCB2b2lkIERvY3Vt
ZW50TG9hZGVyOjpjYW5jZWxQZW5kaW5nU3Vic3RpdHV0ZUxvYWQoUmVzb3VyY2VMb2FkZXIqIGxv
YWRlcikKIH0KIAogI2lmIEVOQUJMRShXRUJfQVJDSElWRSkgfHwgRU5BQkxFKE1IVE1MKQorCiBi
b29sIERvY3VtZW50TG9hZGVyOjpzY2hlZHVsZUFyY2hpdmVMb2FkKFJlc291cmNlTG9hZGVyJiBs
b2FkZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKIHsKLSAgICBpZiAoQXJjaGl2
ZVJlc291cmNlKiByZXNvdXJjZSA9IGFyY2hpdmVSZXNvdXJjZUZvclVSTChyZXF1ZXN0LnVybCgp
KSkgeworICAgIGlmIChhdXRvKiByZXNvdXJjZSA9IGFyY2hpdmVSZXNvdXJjZUZvclVSTChyZXF1
ZXN0LnVybCgpKSkgewogICAgICAgICBzY2hlZHVsZVN1YnN0aXR1dGVSZXNvdXJjZUxvYWQobG9h
ZGVyLCAqcmVzb3VyY2UpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CkBAIC0xMjg0LDIx
ICsxMjQxLDE5IEBAIGJvb2wgRG9jdW1lbnRMb2FkZXI6OnNjaGVkdWxlQXJjaGl2ZUxvYWQoUmVz
b3VyY2VMb2FkZXImIGxvYWRlciwgY29uc3QgUmVzb3VyY2VSCiAgICAgaWYgKCFtX2FyY2hpdmUp
CiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIHN3aXRjaCAobV9hcmNoaXZlLT50eXBlKCkp
IHsKICNpZiBFTkFCTEUoV0VCX0FSQ0hJVkUpCi0gICAgY2FzZSBBcmNoaXZlOjpXZWJBcmNoaXZl
OgotICAgICAgICAvLyBXZWJBcmNoaXZlRGVidWdNb2RlIG1lYW5zIHdlIGZhaWwgbG9hZHMgaW5z
dGVhZCBvZiB0cnlpbmcgdG8gZmV0Y2ggdGhlbSBmcm9tIHRoZSBuZXR3b3JrIGlmIHRoZXkncmUg
bm90IGluIHRoZSBhcmNoaXZlLgotICAgICAgICByZXR1cm4gbV9mcmFtZS0+c2V0dGluZ3MoKS53
ZWJBcmNoaXZlRGVidWdNb2RlRW5hYmxlZCgpICYmIEFyY2hpdmVGYWN0b3J5Ojppc0FyY2hpdmVN
aW1lVHlwZShyZXNwb25zZU1JTUVUeXBlKCkpOwotI2VuZGlmCi0jaWYgRU5BQkxFKE1IVE1MKQot
ICAgIGNhc2UgQXJjaGl2ZTo6TUhUTUw6Ci0gICAgICAgIHJldHVybiB0cnVlOyAvLyBBbHdheXMg
ZmFpbCB0aGUgbG9hZCBmb3IgcmVzb3VyY2VzIG5vdCBpbmNsdWRlZCBpbiB0aGUgTUhUTUwuCisg
ICAgLy8gVGhlIGlkZWEgb2YgV2ViQXJjaGl2ZURlYnVnTW9kZSBpcyB0aGF0IHdlIHNob3VsZCBm
YWlsIGluc3RlYWQgb2YgdHJ5aW5nIHRvIGZldGNoIGZyb20gdGhlIG5ldHdvcmsuCisgICAgLy8g
UmV0dXJuaW5nIHRydWUgZW5zdXJlcyB0aGUgY2FsbGVyIHdpbGwgbm90IHRyeSB0byBmZXRjaCBm
cm9tIHRoZSBuZXR3b3JrLgorICAgIGlmIChtX2ZyYW1lLT5zZXR0aW5ncygpLndlYkFyY2hpdmVE
ZWJ1Z01vZGVFbmFibGVkKCkgJiYgcmVzcG9uc2VNSU1FVHlwZSgpID09ICJhcHBsaWNhdGlvbi94
LXdlYmFyY2hpdmUiKQorICAgICAgICByZXR1cm4gdHJ1ZTsKICNlbmRpZgotICAgIGRlZmF1bHQ6
Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICB9CisKKyAgICAvLyBJZiB3ZSB3YW50IHRvIGxv
YWQgZnJvbSB0aGUgYXJjaGl2ZSBvbmx5LCB0aGVuIHdlIHNob3VsZCBhbHdheXMgcmV0dXJuIHRy
dWUgc28gdGhhdCB0aGUgY2FsbGVyCisgICAgLy8gZG9lcyBub3QgdHJ5IHRvIGZldGNoIGZvcm0g
dGhlIG5ldHdvcmsuCisgICAgcmV0dXJuIG1fYXJjaGl2ZS0+c2hvdWxkTG9hZEZyb21BcmNoaXZl
T25seSgpOwogfQotI2VuZGlmIC8vIEVOQUJMRShXRUJfQVJDSElWRSkKKworI2VuZGlmCiAKIHZv
aWQgRG9jdW1lbnRMb2FkZXI6OnNjaGVkdWxlU3Vic3RpdHV0ZVJlc291cmNlTG9hZChSZXNvdXJj
ZUxvYWRlciYgbG9hZGVyLCBTdWJzdGl0dXRlUmVzb3VyY2UmIHJlc291cmNlKQogewpAQCAtMTMw
NiwxMCArMTI2MSwxMCBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpzY2hlZHVsZVN1YnN0aXR1dGVS
ZXNvdXJjZUxvYWQoUmVzb3VyY2VMb2FkZXImIGxvYWRlciwgU3VicwogICAgIGRlbGl2ZXJTdWJz
dGl0dXRlUmVzb3VyY2VzQWZ0ZXJEZWxheSgpOwogfQogCi12b2lkIERvY3VtZW50TG9hZGVyOjph
ZGRSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByKQordm9pZCBEb2N1bWVudExvYWRl
cjo6YWRkUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAg
aWYgKCFtX3N0b3BSZWNvcmRpbmdSZXNwb25zZXMpCi0gICAgICAgIG1fcmVzcG9uc2VzLmFwcGVu
ZChyKTsKKyAgICAgICAgbV9yZXNwb25zZXMuYXBwZW5kKHJlc3BvbnNlKTsKIH0KIAogdm9pZCBE
b2N1bWVudExvYWRlcjo6c3RvcFJlY29yZGluZ1Jlc3BvbnNlcygpCkBAIC0xMzQ0LDIxICsxMjk5
LDExIEBAIGJvb2wgRG9jdW1lbnRMb2FkZXI6OnVybEZvckhpc3RvcnlSZWZsZWN0c0ZhaWx1cmUo
KSBjb25zdAogICAgIHJldHVybiBtX3N1YnN0aXR1dGVEYXRhLmlzVmFsaWQoKSB8fCBtX3Jlc3Bv
bnNlLmh0dHBTdGF0dXNDb2RlKCkgPj0gNDAwOwogfQogCi1jb25zdCBVUkwmIERvY3VtZW50TG9h
ZGVyOjpvcmlnaW5hbFVSTCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fb3JpZ2luYWxSZXF1ZXN0
Q29weS51cmwoKTsKLX0KLQotY29uc3QgVVJMJiBEb2N1bWVudExvYWRlcjo6cmVzcG9uc2VVUkwo
KSBjb25zdAotewotICAgIHJldHVybiBtX3Jlc3BvbnNlLnVybCgpOwotfQotCiBVUkwgRG9jdW1l
bnRMb2FkZXI6OmRvY3VtZW50VVJMKCkgY29uc3QKIHsKICAgICBVUkwgdXJsID0gc3Vic3RpdHV0
ZURhdGEoKS5yZXNwb25zZSgpLnVybCgpOwogI2lmIEVOQUJMRShXRUJfQVJDSElWRSkKLSAgICBp
ZiAodXJsLmlzRW1wdHkoKSAmJiBtX2FyY2hpdmUgJiYgbV9hcmNoaXZlLT50eXBlKCkgPT0gQXJj
aGl2ZTo6V2ViQXJjaGl2ZSkKKyAgICBpZiAodXJsLmlzRW1wdHkoKSAmJiBtX2FyY2hpdmUgJiYg
bV9hcmNoaXZlLT5zaG91bGRVc2VNYWluUmVzb3VyY2VVUkwoKSkKICAgICAgICAgdXJsID0gbV9h
cmNoaXZlLT5tYWluUmVzb3VyY2UoKS0+dXJsKCk7CiAjZW5kaWYKICAgICBpZiAodXJsLmlzRW1w
dHkoKSkKQEAgLTEzNjgsMjggKzEzMTMsMTUgQEAgVVJMIERvY3VtZW50TG9hZGVyOjpkb2N1bWVu
dFVSTCgpIGNvbnN0CiAgICAgcmV0dXJuIHVybDsKIH0KIAotY29uc3QgU3RyaW5nJiBEb2N1bWVu
dExvYWRlcjo6cmVzcG9uc2VNSU1FVHlwZSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fcmVzcG9u
c2UubWltZVR5cGUoKTsKLX0KLQotY29uc3QgU3RyaW5nJiBEb2N1bWVudExvYWRlcjo6Y3VycmVu
dENvbnRlbnRUeXBlKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV93cml0ZXIubWltZVR5cGUoKTsK
LX0KLQogI2lmIFBMQVRGT1JNKElPUykKKwogLy8gRklYTUU6IFRoaXMgbWV0aG9kIHNlZW1zIHRv
IHZpb2xhdGUgdGhlIGVuY2Fwc3VsYXRpb24gb2YgdGhpcyBjbGFzcy4KIHZvaWQgRG9jdW1lbnRM
b2FkZXI6OnNldFJlc3BvbnNlTUlNRVR5cGUoY29uc3QgU3RyaW5nJiByZXNwb25zZU1pbWVUeXBl
KQogewogICAgIG1fcmVzcG9uc2Uuc2V0TWltZVR5cGUocmVzcG9uc2VNaW1lVHlwZSk7CiB9Ci0j
ZW5kaWYKIAotY29uc3QgVVJMJiBEb2N1bWVudExvYWRlcjo6dW5yZWFjaGFibGVVUkwoKSBjb25z
dAotewotICAgIHJldHVybiBtX3N1YnN0aXR1dGVEYXRhLmZhaWxpbmdVUkwoKTsKLX0KKyNlbmRp
ZgogCiB2b2lkIERvY3VtZW50TG9hZGVyOjpzZXREZWZlcnNMb2FkaW5nKGJvb2wgZGVmZXJzKQog
ewpAQCAtMTY4Miw3ICsxNjE0LDcgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6Z2V0SWNvbkxvYWRE
ZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcpCiAgICAgaWYgKG1faWNv
bkxvYWREZWNpc2lvbkNhbGxiYWNrKQogICAgICAgICBtX2ljb25Mb2FkRGVjaXNpb25DYWxsYmFj
ay0+aW52YWxpZGF0ZSgpOwogICAgIG1faWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrID0gSWNvbkxv
YWREZWNpc2lvbkNhbGxiYWNrOjpjcmVhdGUodGhpcywgaWNvbkxvYWREZWNpc2lvbkNhbGxiYWNr
KTsKLSAgICBpY29uRGF0YWJhc2UoKS5sb2FkRGVjaXNpb25Gb3JJY29uVVJMKHVybFN0cmluZywg
bV9pY29uTG9hZERlY2lzaW9uQ2FsbGJhY2spOworICAgIGljb25EYXRhYmFzZSgpLmxvYWREZWNp
c2lvbkZvckljb25VUkwodXJsU3RyaW5nLCAqbV9pY29uTG9hZERlY2lzaW9uQ2FsbGJhY2spOwog
fQogCiB2b2lkIERvY3VtZW50TG9hZGVyOjpjb250aW51ZUljb25Mb2FkV2l0aERlY2lzaW9uKElj
b25Mb2FkRGVjaXNpb24gZGVjaXNpb24pCkBAIC0xNzAzLDcgKzE2MzUsNyBAQCB2b2lkIERvY3Vt
ZW50TG9hZGVyOjpnZXRJY29uRGF0YUZvckljb25VUkwoY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcp
CiAgICAgaWYgKG1faWNvbkRhdGFDYWxsYmFjaykKICAgICAgICAgbV9pY29uRGF0YUNhbGxiYWNr
LT5pbnZhbGlkYXRlKCk7CiAgICAgbV9pY29uRGF0YUNhbGxiYWNrID0gSWNvbkRhdGFDYWxsYmFj
azo6Y3JlYXRlKHRoaXMsIGljb25EYXRhQ2FsbGJhY2spOwotICAgIGljb25EYXRhYmFzZSgpLmlj
b25EYXRhRm9ySWNvblVSTCh1cmxTdHJpbmcsIG1faWNvbkRhdGFDYWxsYmFjayk7CisgICAgaWNv
bkRhdGFiYXNlKCkuaWNvbkRhdGFGb3JJY29uVVJMKHVybFN0cmluZywgKm1faWNvbkRhdGFDYWxs
YmFjayk7CiB9CiAKIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnN0YXJ0SWNvbkxvYWRpbmcoKQpAQCAt
MTc0OSw3ICsxNjgxLDcgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6ZmluaXNoZWRMb2FkaW5nSWNv
bihJY29uTG9hZGVyJiBsb2FkZXIsIFNoYXJlZEJ1ZmZlciogYnVmZmUKIHZvaWQgRG9jdW1lbnRM
b2FkZXI6OmRpc3BhdGNoT25sb2FkRXZlbnRzKCkKIHsKICAgICBtX3dhc09ubG9hZERpc3BhdGNo
ZWQgPSB0cnVlOwotICAgIGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPnN0b3BEZWZlcnJpbmdFdmVu
dHMoKTsKKyAgICBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpLnN0b3BEZWZlcnJpbmdFdmVudHMoKTsK
IH0KIAogdm9pZCBEb2N1bWVudExvYWRlcjo6c2V0VHJpZ2dlcmluZ0FjdGlvbihjb25zdCBOYXZp
Z2F0aW9uQWN0aW9uJiBhY3Rpb24pCkBAIC0xNzg5LDIzICsxNzIxLDE4IEBAIHZvaWQgRG9jdW1l
bnRMb2FkZXI6OmFkZFBlbmRpbmdDb250ZW50RXh0ZW5zaW9uRGlzcGxheU5vbmVTZWxlY3Rvcihj
b25zdCBTdHJpbmcmCiB9CiAjZW5kaWYKIAotI2lmIEVOQUJMRShDT05URU5UX0ZJTFRFUklORykK
LUNvbnRlbnRGaWx0ZXIqIERvY3VtZW50TG9hZGVyOjpjb250ZW50RmlsdGVyKCkgY29uc3QKLXsK
LSAgICByZXR1cm4gbV9jb250ZW50RmlsdGVyLmdldCgpOwotfQotI2VuZGlmCi0KIGJvb2wgRG9j
dW1lbnRMb2FkZXI6OmlzQWx3YXlzT25Mb2dnaW5nQWxsb3dlZCgpIGNvbnN0CiB7Ci0gICAgcmV0
dXJuIG1fZnJhbWUgPyBtX2ZyYW1lLT5pc0Fsd2F5c09uTG9nZ2luZ0FsbG93ZWQoKSA6IHRydWU7
CisgICAgcmV0dXJuICFtX2ZyYW1lIHx8IG1fZnJhbWUtPmlzQWx3YXlzT25Mb2dnaW5nQWxsb3dl
ZCgpOwogfQogCiAjaWYgVVNFKFFVSUNLX0xPT0spCisKIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnNl
dFF1aWNrTG9va0hhbmRsZShzdGQ6OnVuaXF1ZV9wdHI8UXVpY2tMb29rSGFuZGxlPiBxdWlja0xv
b2tIYW5kbGUpCiB7CiAgICAgbV9xdWlja0xvb2tIYW5kbGUgPSBXVEZNb3ZlKHF1aWNrTG9va0hh
bmRsZSk7CiB9CisKICNlbmRpZgogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9Eb2N1bWVudExvYWRlci5oCmluZGV4IGQ3MGIzOWI4NmY4MmMwNzIzZDMyZmE2ZTgx
NTY1OTI0ODdlNjYwOTIuLjY3YjUyOTdkOTA4ZGM0MDRjZTlmMTBkZjIzMmY0YWZhMDI0YWViYWMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5oCkBAIC03Niw4ICs3Niw3IEBA
IGNsYXNzIFNoYXJlZEJ1ZmZlcjsKIGNsYXNzIFN1YnJlc291cmNlTG9hZGVyOwogY2xhc3MgU3Vi
c3RpdHV0ZVJlc291cmNlOwogCi10eXBlZGVmIEhhc2hNYXA8dW5zaWduZWQgbG9uZywgUmVmUHRy
PFJlc291cmNlTG9hZGVyPj4gUmVzb3VyY2VMb2FkZXJNYXA7Ci10eXBlZGVmIFZlY3RvcjxSZXNv
dXJjZVJlc3BvbnNlPiBSZXNwb25zZVZlY3RvcjsKK3VzaW5nIFJlc291cmNlTG9hZGVyTWFwID0g
SGFzaE1hcDx1bnNpZ25lZCBsb25nLCBSZWZQdHI8UmVzb3VyY2VMb2FkZXI+PjsKIAogY2xhc3Mg
RG9jdW1lbnRMb2FkZXIgOiBwdWJsaWMgUmVmQ291bnRlZDxEb2N1bWVudExvYWRlcj4sIHByaXZh
dGUgQ2FjaGVkUmF3UmVzb3VyY2VDbGllbnQgewogICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVE
OwpAQCAtMTUwLDE0ICsxNDksMTUgQEAgcHVibGljOgogI2VuZGlmCiAKICNpZiBFTkFCTEUoV0VC
X0FSQ0hJVkUpIHx8IEVOQUJMRShNSFRNTCkKLSAgICB2b2lkIHNldEFyY2hpdmUoUGFzc1JlZlB0
cjxBcmNoaXZlPik7Ci0gICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBhZGRBbGxBcmNoaXZlUmVzb3Vy
Y2VzKEFyY2hpdmUqKTsKKyAgICB2b2lkIHNldEFyY2hpdmUoUmVmPEFyY2hpdmU+JiYpOworICAg
IFdFQkNPUkVfRVhQT1JUIHZvaWQgYWRkQWxsQXJjaGl2ZVJlc291cmNlcyhBcmNoaXZlJik7CiAg
ICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBhZGRBcmNoaXZlUmVzb3VyY2UoUmVmPEFyY2hpdmVSZXNv
dXJjZT4mJik7Ci0gICAgUGFzc1JlZlB0cjxBcmNoaXZlPiBwb3BBcmNoaXZlRm9yU3ViZnJhbWUo
Y29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IFVSTCYpOworICAgIFJlZlB0cjxBcmNoaXZl
PiBwb3BBcmNoaXZlRm9yU3ViZnJhbWUoY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IFVS
TCYpOwogICAgIFdFQkNPUkVfRVhQT1JUIFNoYXJlZEJ1ZmZlciogcGFyc2VkQXJjaGl2ZURhdGEo
KSBjb25zdDsKIAogICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgc2NoZWR1bGVBcmNoaXZlTG9hZChS
ZXNvdXJjZUxvYWRlciYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYpOwogI2VuZGlmCisKICAgICB2
b2lkIHNjaGVkdWxlU3Vic3RpdHV0ZVJlc291cmNlTG9hZChSZXNvdXJjZUxvYWRlciYsIFN1YnN0
aXR1dGVSZXNvdXJjZSYpOwogCiAgICAgLy8gUmV0dXJuIHRoZSBBcmNoaXZlUmVzb3VyY2UgZm9y
IHRoZSBVUkwgb25seSB3aGVuIGxvYWRpbmcgYW4gQXJjaGl2ZQpAQCAtMTY2LDkgKzE2NiwxMCBA
QCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gbWFp
blJlc291cmNlKCkgY29uc3Q7CiAKICAgICAvLyBSZXR1cm4gYW4gQXJjaGl2ZVJlc291cmNlIGZv
ciB0aGUgVVJMLCBlaXRoZXIgY3JlYXRpbmcgZnJvbSBsaXZlIGRhdGEgb3IKLSAgICAvLyBwdWxs
aW5nIGZyb20gdGhlIEFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24KLSAgICBXRUJDT1JFX0VYUE9S
VCBQYXNzUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gc3VicmVzb3VyY2UoY29uc3QgVVJMJikgY29u
c3Q7Ci0gICAgV0VCQ09SRV9FWFBPUlQgVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+PiBz
dWJyZXNvdXJjZXMoKSBjb25zdDsKKyAgICAvLyBwdWxsaW5nIGZyb20gdGhlIEFyY2hpdmVSZXNv
dXJjZUNvbGxlY3Rpb24uCisgICAgV0VCQ09SRV9FWFBPUlQgUmVmUHRyPEFyY2hpdmVSZXNvdXJj
ZT4gc3VicmVzb3VyY2UoY29uc3QgVVJMJikgY29uc3Q7CisKKyAgICBXRUJDT1JFX0VYUE9SVCBW
ZWN0b3I8UmVmPEFyY2hpdmVSZXNvdXJjZT4+IHN1YnJlc291cmNlcygpIGNvbnN0OwogCiAjaWZu
ZGVmIE5ERUJVRwogICAgIGJvb2wgaXNTdWJzdGl0dXRlTG9hZFBlbmRpbmcoUmVzb3VyY2VMb2Fk
ZXIqKSBjb25zdDsKQEAgLTE3Niw3ICsxNzcsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBjYW5jZWxQ
ZW5kaW5nU3Vic3RpdHV0ZUxvYWQoUmVzb3VyY2VMb2FkZXIqKTsgICAKICAgICAKICAgICB2b2lk
IGFkZFJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICBjb25zdCBSZXNwb25z
ZVZlY3RvciYgcmVzcG9uc2VzKCkgY29uc3QgeyByZXR1cm4gbV9yZXNwb25zZXM7IH0KKyAgICBj
b25zdCBWZWN0b3I8UmVzb3VyY2VSZXNwb25zZT4mIHJlc3BvbnNlcygpIGNvbnN0IHsgcmV0dXJu
IG1fcmVzcG9uc2VzOyB9CiAKICAgICBjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiB0cmlnZ2VyaW5n
QWN0aW9uKCkgY29uc3QgeyByZXR1cm4gbV90cmlnZ2VyaW5nQWN0aW9uOyB9CiAgICAgdm9pZCBz
ZXRUcmlnZ2VyaW5nQWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mKTsKQEAgLTI2Miw3ICsy
NjMsNyBAQCBwdWJsaWM6CiAgICAgLy8gYWN0dWFsbHkgYmUgYWRkZWQgdG8gdGhlIGRvY3VtZW50
LgogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgY29tbWl0RGF0YShjb25zdCBjaGFyKiBieXRlcywg
c2l6ZV90IGxlbmd0aCk7CiAKLSAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdCogYXBwbGljYXRpb25D
YWNoZUhvc3QoKSBjb25zdCB7IHJldHVybiBtX2FwcGxpY2F0aW9uQ2FjaGVIb3N0LmdldCgpOyB9
CisgICAgQXBwbGljYXRpb25DYWNoZUhvc3QmIGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkgY29uc3Qg
eyByZXR1cm4gKm1fYXBwbGljYXRpb25DYWNoZUhvc3Q7IH0KIAogICAgIHZvaWQgY2hlY2tMb2Fk
Q29tcGxldGUoKTsKIApAQCAtMjk3LDcgKzI5OCw3IEBAIHByb3RlY3RlZDoKIAogICAgIFdFQkNP
UkVfRVhQT1JUIHZpcnR1YWwgdm9pZCBhdHRhY2hUb0ZyYW1lKCk7CiAKLSAgICBib29sIG1fZGVm
ZXJNYWluUmVzb3VyY2VEYXRhTG9hZDsKKyAgICBib29sIG1fZGVmZXJNYWluUmVzb3VyY2VEYXRh
TG9hZCB7IHRydWUgfTsKIAogcHJpdmF0ZToKICAgICBEb2N1bWVudCogZG9jdW1lbnQoKSBjb25z
dDsKQEAgLTM1OCw3ICszNTksNyBAQCBwcml2YXRlOgogICAgIHZvaWQgY2FuY2VsUG9saWN5Q2hl
Y2tJZk5lZWRlZCgpOwogICAgIHZvaWQgYmVjb21lTWFpblJlc291cmNlQ2xpZW50KCk7CiAKLSAg
ICBGcmFtZSogbV9mcmFtZTsKKyAgICBGcmFtZSogbV9mcmFtZSB7IG51bGxwdHIgfTsKICAgICBS
ZWY8Q2FjaGVkUmVzb3VyY2VMb2FkZXI+IG1fY2FjaGVkUmVzb3VyY2VMb2FkZXI7CiAKICAgICBD
YWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRSYXdSZXNvdXJjZT4gbV9tYWluUmVzb3VyY2U7CkBA
IC0zOTAsMTUgKzM5MSwxNSBAQCBwcml2YXRlOgogICAgIFJlc291cmNlRXJyb3IgbV9tYWluRG9j
dW1lbnRFcnJvcjsgICAgCiAKICAgICBib29sIG1fb3JpZ2luYWxTdWJzdGl0dXRlRGF0YVdhc1Zh
bGlkOwotICAgIGJvb2wgbV9jb21taXR0ZWQ7Ci0gICAgYm9vbCBtX2lzU3RvcHBpbmc7Ci0gICAg
Ym9vbCBtX2dvdEZpcnN0Qnl0ZTsKLSAgICBib29sIG1faXNDbGllbnRSZWRpcmVjdDsKLSAgICBi
b29sIG1faXNMb2FkaW5nTXVsdGlwYXJ0Q29udGVudDsKKyAgICBib29sIG1fY29tbWl0dGVkIHsg
ZmFsc2UgfTsKKyAgICBib29sIG1faXNTdG9wcGluZyB7IGZhbHNlIH07CisgICAgYm9vbCBtX2dv
dEZpcnN0Qnl0ZSB7IGZhbHNlIH07CisgICAgYm9vbCBtX2lzQ2xpZW50UmVkaXJlY3QgeyBmYWxz
ZSB9OworICAgIGJvb2wgbV9pc0xvYWRpbmdNdWx0aXBhcnRDb250ZW50IHsgZmFsc2UgfTsKIAog
ICAgIC8vIEZJWE1FOiBEb2N1bWVudDo6bV9wcm9jZXNzaW5nTG9hZEV2ZW50IGFuZCBEb2N1bWVu
dExvYWRlcjo6bV93YXNPbmxvYWREaXNwYXRjaGVkIGFyZSByb3VnaGx5IHRoZSBzYW1lCiAgICAg
Ly8gYW5kIHNob3VsZCBiZSBtZXJnZWQuCi0gICAgYm9vbCBtX3dhc09ubG9hZERpc3BhdGNoZWQ7
CisgICAgYm9vbCBtX3dhc09ubG9hZERpc3BhdGNoZWQgeyBmYWxzZSB9OwogCiAgICAgU3RyaW5n
V2l0aERpcmVjdGlvbiBtX3BhZ2VUaXRsZTsKIApAQCAtNDE1LDggKzQxNiw4IEBAIHByaXZhdGU6
CiAgICAgLy8gV2UgcmV0YWluIGFsbCB0aGUgcmVjZWl2ZWQgcmVzcG9uc2VzIHNvIHdlIGNhbiBw
bGF5IGJhY2sgdGhlCiAgICAgLy8gV2ViUmVzb3VyY2VMb2FkRGVsZWdhdGUgbWVzc2FnZXMgaWYg
dGhlIGl0ZW0gaXMgbG9hZGVkIGZyb20gdGhlCiAgICAgLy8gcGFnZSBjYWNoZS4KLSAgICBSZXNw
b25zZVZlY3RvciBtX3Jlc3BvbnNlczsKLSAgICBib29sIG1fc3RvcFJlY29yZGluZ1Jlc3BvbnNl
czsKKyAgICBWZWN0b3I8UmVzb3VyY2VSZXNwb25zZT4gbV9yZXNwb25zZXM7CisgICAgYm9vbCBt
X3N0b3BSZWNvcmRpbmdSZXNwb25zZXMgeyBmYWxzZSB9OwogICAgIAogICAgIHR5cGVkZWYgSGFz
aE1hcDxSZWZQdHI8UmVzb3VyY2VMb2FkZXI+LCBSZWZQdHI8U3Vic3RpdHV0ZVJlc291cmNlPj4g
U3Vic3RpdHV0ZVJlc291cmNlTWFwOwogICAgIFN1YnN0aXR1dGVSZXNvdXJjZU1hcCBtX3BlbmRp
bmdTdWJzdGl0dXRlUmVzb3VyY2VzOwpAQCAtNDMyLDEzICs0MzMsMTMgQEAgcHJpdmF0ZToKICAg
ICBWZWN0b3I8UmVzb3VyY2VSZXF1ZXN0PiBtX3Jlc291cmNlc0xvYWRlZEZyb21NZW1vcnlDYWNo
ZUZvckNsaWVudE5vdGlmaWNhdGlvbjsKICAgICAKICAgICBTdHJpbmcgbV9jbGllbnRSZWRpcmVj
dFNvdXJjZUZvckhpc3Rvcnk7Ci0gICAgYm9vbCBtX2RpZENyZWF0ZUdsb2JhbEhpc3RvcnlFbnRy
eTsKKyAgICBib29sIG1fZGlkQ3JlYXRlR2xvYmFsSGlzdG9yeUVudHJ5IHsgZmFsc2UgfTsKIAot
ICAgIGJvb2wgbV9sb2FkaW5nTWFpblJlc291cmNlOworICAgIGJvb2wgbV9sb2FkaW5nTWFpblJl
c291cmNlIHsgZmFsc2UgfTsKICAgICBMb2FkVGltaW5nIG1fbG9hZFRpbWluZzsKIAotICAgIGRv
dWJsZSBtX3RpbWVPZkxhc3REYXRhUmVjZWl2ZWQ7Ci0gICAgdW5zaWduZWQgbG9uZyBtX2lkZW50
aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyOworICAgIGRvdWJsZSBtX3RpbWVPZkxh
c3REYXRhUmVjZWl2ZWQgeyAwIH07CisgICAgdW5zaWduZWQgbG9uZyBtX2lkZW50aWZpZXJGb3JM
b2FkV2l0aG91dFJlc291cmNlTG9hZGVyIHsgMCB9OwogCiAgICAgRG9jdW1lbnRMb2FkZXJUaW1l
ciBtX2RhdGFMb2FkVGltZXI7CiAgICAgYm9vbCBtX3dhaXRpbmdGb3JDb250ZW50UG9saWN5IHsg
ZmFsc2UgfTsKQEAgLTQ1Miw3ICs0NTMsNyBAQCBwcml2YXRlOgogICAgIEhhc2hNYXA8dWludDY0
X3QsIExpbmtJY29uPiBtX2ljb25zUGVuZGluZ0xvYWREZWNpc2lvbjsKICAgICBIYXNoTWFwPHN0
ZDo6dW5pcXVlX3B0cjxJY29uTG9hZGVyPiwgdWludDY0X3Q+IG1faWNvbkxvYWRlcnM7CiAKLSAg
ICBib29sIG1fc3VicmVzb3VyY2VMb2FkZXJzQXJlUGFnZUNhY2hlQWNjZXB0YWJsZTsKKyAgICBi
b29sIG1fc3VicmVzb3VyY2VMb2FkZXJzQXJlUGFnZUNhY2hlQWNjZXB0YWJsZSB7IGZhbHNlIH07
CiAgICAgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSBtX3Nob3VsZE9wZW5FeHRlcm5hbFVS
THNQb2xpY3kgeyBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5OjpTaG91bGROb3RBbGxvdyB9
OwogCiAgICAgc3RkOjp1bmlxdWVfcHRyPEFwcGxpY2F0aW9uQ2FjaGVIb3N0PiBtX2FwcGxpY2F0
aW9uQ2FjaGVIb3N0OwpAQCAtNDg3LDQgKzQ4OCw2MyBAQCBpbmxpbmUgdm9pZCBEb2N1bWVudExv
YWRlcjo6dGFrZU1lbW9yeUNhY2hlTG9hZHNGb3JDbGllbnROb3RpZmljYXRpb24oVmVjdG9yPFJl
cwogICAgIG1fcmVzb3VyY2VzTG9hZGVkRnJvbU1lbW9yeUNhY2hlRm9yQ2xpZW50Tm90aWZpY2F0
aW9uLmNsZWFyKCk7CiB9CiAKK2lubGluZSBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIERvY3VtZW50
TG9hZGVyOjpvcmlnaW5hbFJlcXVlc3QoKSBjb25zdAoreworICAgIHJldHVybiBtX29yaWdpbmFs
UmVxdWVzdDsKK30KKworaW5saW5lIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgRG9jdW1lbnRMb2Fk
ZXI6Om9yaWdpbmFsUmVxdWVzdENvcHkoKSBjb25zdAoreworICAgIHJldHVybiBtX29yaWdpbmFs
UmVxdWVzdENvcHk7Cit9CisKK2lubGluZSBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIERvY3VtZW50
TG9hZGVyOjpyZXF1ZXN0KCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9yZXF1ZXN0OworfQorCitp
bmxpbmUgUmVzb3VyY2VSZXF1ZXN0JiBEb2N1bWVudExvYWRlcjo6cmVxdWVzdCgpCit7CisgICAg
cmV0dXJuIG1fcmVxdWVzdDsKK30KKworaW5saW5lIGNvbnN0IFVSTCYgRG9jdW1lbnRMb2FkZXI6
OnVybCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fcmVxdWVzdC51cmwoKTsKK30KKworaW5saW5l
IGNvbnN0IFVSTCYgRG9jdW1lbnRMb2FkZXI6Om9yaWdpbmFsVVJMKCkgY29uc3QKK3sKKyAgICBy
ZXR1cm4gbV9vcmlnaW5hbFJlcXVlc3RDb3B5LnVybCgpOworfQorCitpbmxpbmUgY29uc3QgVVJM
JiBEb2N1bWVudExvYWRlcjo6cmVzcG9uc2VVUkwoKSBjb25zdAoreworICAgIHJldHVybiBtX3Jl
c3BvbnNlLnVybCgpOworfQorCitpbmxpbmUgY29uc3QgU3RyaW5nJiBEb2N1bWVudExvYWRlcjo6
cmVzcG9uc2VNSU1FVHlwZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fcmVzcG9uc2UubWltZVR5
cGUoKTsKK30KKworaW5saW5lIGNvbnN0IFN0cmluZyYgRG9jdW1lbnRMb2FkZXI6OmN1cnJlbnRD
b250ZW50VHlwZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fd3JpdGVyLm1pbWVUeXBlKCk7Cit9
CisKK2lubGluZSBjb25zdCBVUkwmIERvY3VtZW50TG9hZGVyOjp1bnJlYWNoYWJsZVVSTCgpIGNv
bnN0Cit7CisgICAgcmV0dXJuIG1fc3Vic3RpdHV0ZURhdGEuZmFpbGluZ1VSTCgpOworfQorCisj
aWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQorCitpbmxpbmUgQ29udGVudEZpbHRlciogRG9j
dW1lbnRMb2FkZXI6OmNvbnRlbnRGaWx0ZXIoKSBjb25zdAoreworICAgIHJldHVybiBtX2NvbnRl
bnRGaWx0ZXIuZ2V0KCk7Cit9CisKKyNlbmRpZgorCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0
eUNsaWVudHMuY3BwCmluZGV4IGUwZjZlNWIzZTM0YThhMWU4ZDMxNDljMDQyZTFkYTBhMzczZDRk
YTkuLmVlZmM0YWE4MzgzMTA0NDZlOTIxZDRmMTcyOTU4MmU4MjRjOGE1ZjIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9FbXB0eUNsaWVudHMuY3BwCkBAIC00Niw2ICs0Niw3IEBACiAjaW5jbHVkZSAi
SFRNTEZvcm1FbGVtZW50LmgiCiAjaW5jbHVkZSAiSW5Qcm9jZXNzSURCU2VydmVyLmgiCiAjaW5j
bHVkZSAiSW5zcGVjdG9yQ2xpZW50LmgiCisjaW5jbHVkZSAiTmV0d29ya1N0b3JhZ2VTZXNzaW9u
LmgiCiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlBhZ2VDb25maWd1cmF0aW9uLmgiCiAj
aW5jbHVkZSAiUGF5bWVudENvb3JkaW5hdG9yQ2xpZW50LmgiCkBAIC0xNzEsOCArMTcyLDggQEAg
cHJpdmF0ZToKICAgICB2b2lkIHJlcXVlc3RDYW5kaWRhdGVzRm9yU2VsZWN0aW9uKGNvbnN0IFZp
c2libGVTZWxlY3Rpb24mKSBmaW5hbCB7IH0KICAgICB2b2lkIGhhbmRsZUFjY2VwdGVkQ2FuZGlk
YXRlV2l0aFNvZnRTcGFjZXMoVGV4dENoZWNraW5nUmVzdWx0KSBmaW5hbCB7IH0KIAotICAgIHZv
aWQgcmVnaXN0ZXJVbmRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPikgZmluYWw7Ci0gICAgdm9p
ZCByZWdpc3RlclJlZG9TdGVwKFBhc3NSZWZQdHI8VW5kb1N0ZXA+KSBmaW5hbDsKKyAgICB2b2lk
IHJlZ2lzdGVyVW5kb1N0ZXAoVW5kb1N0ZXAmKSBmaW5hbDsKKyAgICB2b2lkIHJlZ2lzdGVyUmVk
b1N0ZXAoVW5kb1N0ZXAmKSBmaW5hbDsKICAgICB2b2lkIGNsZWFyVW5kb1JlZG9PcGVyYXRpb25z
KCkgZmluYWwgeyB9CiAKICAgICBib29sIGNhbkNvcHlDdXQoRnJhbWUqLCBib29sIGRlZmF1bHRW
YWx1ZSkgY29uc3QgZmluYWwgeyByZXR1cm4gZGVmYXVsdFZhbHVlOyB9CkBAIC0zMzEsMTQgKzMz
MiwxNCBAQCBjbGFzcyBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50IGZpbmFsIDogcHVibGljIEZyYW1l
TG9hZGVyQ2xpZW50IHsKICAgICB2b2lkIGRpc3BhdGNoU2hvdygpIGZpbmFsIHsgfQogCiAgICAg
dm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvclJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBGcmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5hbCB7
IH0KLSAgICB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0
IE5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPEZv
cm1TdGF0ZT4sIGNvbnN0IFN0cmluZyYsIEZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFsOwotICAg
IHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5hdmln
YXRpb25BY3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPEZvcm1TdGF0
ZT4sIEZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQ
b2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJl
c291cmNlUmVxdWVzdCYsIEZvcm1TdGF0ZSosIGNvbnN0IFN0cmluZyYsIEZyYW1lUG9saWN5RnVu
Y3Rpb24pIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9u
QWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBG
b3JtU3RhdGUqLCBGcmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsKICAgICB2b2lkIGNhbmNlbFBv
bGljeUNoZWNrKCkgZmluYWwgeyB9CiAKICAgICB2b2lkIGRpc3BhdGNoVW5hYmxlVG9JbXBsZW1l
bnRQb2xpY3koY29uc3QgUmVzb3VyY2VFcnJvciYpIGZpbmFsIHsgfQogCi0gICAgdm9pZCBkaXNw
YXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoUGFzc1JlZlB0cjxGb3JtU3RhdGU+KSBmaW5hbDsKLSAg
ICB2b2lkIGRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0oUGFzc1JlZlB0cjxGb3JtU3RhdGU+LCBGcmFt
ZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRTdWJtaXRF
dmVudChSZWY8Rm9ybVN0YXRlPiYmKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFN1Ym1p
dEZvcm0oRm9ybVN0YXRlJiwgRnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7CiAKICAgICB2b2lk
IHJldmVydFRvUHJvdmlzaW9uYWxTdGF0ZShEb2N1bWVudExvYWRlciopIGZpbmFsIHsgfQogICAg
IHZvaWQgc2V0TWFpbkRvY3VtZW50RXJyb3IoRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJj
ZUVycm9yJikgZmluYWwgeyB9CkBAIC00MTAsMTAgKzQxMSwxMCBAQCBjbGFzcyBFbXB0eUZyYW1l
TG9hZGVyQ2xpZW50IGZpbmFsIDogcHVibGljIEZyYW1lTG9hZGVyQ2xpZW50IHsKICAgICB2b2lk
IGRpZERpc3BsYXlJbnNlY3VyZUNvbnRlbnQoKSBmaW5hbCB7IH0KICAgICB2b2lkIGRpZFJ1bklu
c2VjdXJlQ29udGVudChTZWN1cml0eU9yaWdpbiosIGNvbnN0IFVSTCYpIGZpbmFsIHsgfQogICAg
IHZvaWQgZGlkRGV0ZWN0WFNTKGNvbnN0IFVSTCYsIGJvb2wpIGZpbmFsIHsgfQotICAgIFJlZlB0
cjxGcmFtZT4gY3JlYXRlRnJhbWUoY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiwgSFRNTEZyYW1l
T3duZXJFbGVtZW50KiwgY29uc3QgU3RyaW5nJiwgYm9vbCwgaW50LCBpbnQpIGZpbmFsOwotICAg
IFJlZlB0cjxXaWRnZXQ+IGNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiwgSFRNTFBsdWdJbkVs
ZW1lbnQqLCBjb25zdCBVUkwmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFZlY3RvcjxT
dHJpbmc+JiwgY29uc3QgU3RyaW5nJiwgYm9vbCkgZmluYWw7CisgICAgUmVmUHRyPEZyYW1lPiBj
cmVhdGVGcmFtZShjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmLCBIVE1MRnJhbWVPd25lckVsZW1l
bnQmLCBjb25zdCBTdHJpbmcmLCBib29sLCBpbnQsIGludCkgZmluYWw7CisgICAgUmVmUHRyPFdp
ZGdldD4gY3JlYXRlUGx1Z2luKGNvbnN0IEludFNpemUmLCBIVE1MUGx1Z0luRWxlbWVudCYsIGNv
bnN0IFVSTCYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBj
b25zdCBTdHJpbmcmLCBib29sKSBmaW5hbDsKICAgICB2b2lkIHJlY3JlYXRlUGx1Z2luKFdpZGdl
dCopIGZpbmFsOwotICAgIFBhc3NSZWZQdHI8V2lkZ2V0PiBjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0
KGNvbnN0IEludFNpemUmLCBIVE1MQXBwbGV0RWxlbWVudCosIGNvbnN0IFVSTCYsIGNvbnN0IFZl
Y3RvcjxTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mKSBmaW5hbDsKKyAgICBSZWZQdHI8
V2lkZ2V0PiBjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmLCBIVE1MQXBwbGV0
RWxlbWVudCYsIGNvbnN0IFVSTCYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgVmVjdG9y
PFN0cmluZz4mKSBmaW5hbDsKIAogICAgIE9iamVjdENvbnRlbnRUeXBlIG9iamVjdENvbnRlbnRU
eXBlKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYpIGZpbmFsIHsgcmV0dXJuIE9iamVjdENvbnRl
bnRUeXBlOjpOb25lOyB9CiAgICAgU3RyaW5nIG92ZXJyaWRlTWVkaWFUeXBlKCkgY29uc3QgZmlu
YWwgeyByZXR1cm4geyB9OyB9CkBAIC00MzIsMTYgKzQzMywzNyBAQCBjbGFzcyBFbXB0eUZyYW1l
TG9hZGVyQ2xpZW50IGZpbmFsIDogcHVibGljIEZyYW1lTG9hZGVyQ2xpZW50IHsKICAgICBib29s
IHNob3VsZENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nLCBjb25z
dCBSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgdW5zaWduZWQgY2hhciosIHVuc2lnbmVkIGxvbmcg
bG9uZykgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQogI2VuZGlmCiAKLSAgICBQYXNzUmVmUHRyPEZy
YW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkgZmluYWw7Cisg
ICAgUmVmPEZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkg
ZmluYWw7CiAKICNpZiBFTkFCTEUoUkVRVUVTVF9BVVRPQ09NUExFVEUpCi0gICAgdm9pZCBkaWRS
ZXF1ZXN0QXV0b2NvbXBsZXRlKFBhc3NSZWZQdHI8Rm9ybVN0YXRlPikgZmluYWwgeyB9CisgICAg
dm9pZCBkaWRSZXF1ZXN0QXV0b2NvbXBsZXRlKFJlZjxGb3JtU3RhdGU+JiYpIGZpbmFsIHsgfQog
I2VuZGlmCiAKICAgICBib29sIGlzRW1wdHlGcmFtZUxvYWRlckNsaWVudCgpIGZpbmFsIHsgcmV0
dXJuIHRydWU7IH0KICAgICB2b2lkIHByZWZldGNoRE5TKGNvbnN0IFN0cmluZyYpIGZpbmFsIHsg
fQogfTsKIAorY2xhc3MgRW1wdHlGcmFtZU5ldHdvcmtpbmdDb250ZXh0IGZpbmFsIDogcHVibGlj
IEZyYW1lTmV0d29ya2luZ0NvbnRleHQgeworcHVibGljOgorICAgIHN0YXRpYyBSZWY8RW1wdHlG
cmFtZU5ldHdvcmtpbmdDb250ZXh0PiBjcmVhdGUoKSB7IHJldHVybiBhZG9wdFJlZigqbmV3IEVt
cHR5RnJhbWVOZXR3b3JraW5nQ29udGV4dCk7IH0KKworcHJpdmF0ZToKKyAgICBFbXB0eUZyYW1l
TmV0d29ya2luZ0NvbnRleHQoKTsKKworICAgIGJvb2wgc2hvdWxkQ2xlYXJSZWZlcnJlck9uSFRU
UFNUb0hUVFBSZWRpcmVjdCgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KKyAgICBOZXR3b3JrU3Rv
cmFnZVNlc3Npb24mIHN0b3JhZ2VTZXNzaW9uKCkgY29uc3QgZmluYWwgeyByZXR1cm4gTmV0d29y
a1N0b3JhZ2VTZXNzaW9uOjpkZWZhdWx0U3RvcmFnZVNlc3Npb24oKTsgfQorCisjaWYgUExBVEZP
Uk0oQ09DT0EpCisgICAgYm9vbCBsb2NhbEZpbGVDb250ZW50U25pZmZpbmdFbmFibGVkKCkgY29u
c3QgeyByZXR1cm4gZmFsc2U7IH0KKyAgICBTY2hlZHVsZVBhaXJIYXNoU2V0KiBzY2hlZHVsZWRS
dW5Mb29wUGFpcnMoKSBjb25zdCB7IHJldHVybiBudWxscHRyOyB9CisgICAgUmV0YWluUHRyPENG
RGF0YVJlZj4gc291cmNlQXBwbGljYXRpb25BdWRpdERhdGEoKSBjb25zdCB7IHJldHVybiBudWxs
cHRyOyB9OworI2VuZGlmCisKKyNpZiBQTEFURk9STShDT0NPQSkgfHwgUExBVEZPUk0oV0lOKQor
ICAgIFJlc291cmNlRXJyb3IgYmxvY2tlZEVycm9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYpIGNv
bnN0IGZpbmFsIHsgcmV0dXJuIHsgfTsgfQorI2VuZGlmCit9OworCiBjbGFzcyBFbXB0eUluc3Bl
Y3RvckNsaWVudCBmaW5hbCA6IHB1YmxpYyBJbnNwZWN0b3JDbGllbnQgewogICAgIHZvaWQgaW5z
cGVjdGVkUGFnZURlc3Ryb3llZCgpIGZpbmFsIHsgfQogICAgIEluc3BlY3Rvcjo6RnJvbnRlbmRD
aGFubmVsKiBvcGVuTG9jYWxGcm9udGVuZChJbnNwZWN0b3JDb250cm9sbGVyKikgZmluYWwgeyBy
ZXR1cm4gbnVsbHB0cjsgfQpAQCAtNTY5LDIzICs1OTEsMjMgQEAgc3RkOjp1bmlxdWVfcHRyPENv
bG9yQ2hvb3Nlcj4gRW1wdHlDaHJvbWVDbGllbnQ6OmNyZWF0ZUNvbG9yQ2hvb3NlcihDb2xvckNo
b29zZXIKIAogI2VuZGlmCiAKLXZvaWQgRW1wdHlDaHJvbWVDbGllbnQ6OnJ1bk9wZW5QYW5lbChG
cmFtZSosIFBhc3NSZWZQdHI8RmlsZUNob29zZXI+KQordm9pZCBFbXB0eUNocm9tZUNsaWVudDo6
cnVuT3BlblBhbmVsKEZyYW1lJiwgRmlsZUNob29zZXImKQogewogfQogCi12b2lkIEVtcHR5RnJh
bWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNv
bnN0IE5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRy
PEZvcm1TdGF0ZT4sIGNvbnN0IFN0cmluZyYsIEZyYW1lUG9saWN5RnVuY3Rpb24pCit2b2lkIEVt
cHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0
aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBGb3Jt
U3RhdGUqLCBjb25zdCBTdHJpbmcmLCBGcmFtZVBvbGljeUZ1bmN0aW9uKQogewogfQogCi12b2lk
IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlv
bkFjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jiwg
UGFzc1JlZlB0cjxGb3JtU3RhdGU+LCBGcmFtZVBvbGljeUZ1bmN0aW9uKQordm9pZCBFbXB0eUZy
YW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24o
Y29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIEZvcm1TdGF0
ZSosIEZyYW1lUG9saWN5RnVuY3Rpb24pCiB7CiB9CiAKLXZvaWQgRW1wdHlGcmFtZUxvYWRlckNs
aWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFBhc3NSZWZQdHI8Rm9ybVN0YXRlPikK
K3ZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50
KFJlZjxGb3JtU3RhdGU+JiYpCiB7CiB9CiAKLXZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIEZyYW1lUG9saWN5
RnVuY3Rpb24pCit2b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFN1Ym1p
dEZvcm0oRm9ybVN0YXRlJiwgRnJhbWVQb2xpY3lGdW5jdGlvbikKIHsKIH0KIApAQCAtNTk0LDEy
ICs2MTYsMTIgQEAgUmVmPERvY3VtZW50TG9hZGVyPiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojpj
cmVhdGVEb2N1bWVudExvYWRlcihjb25zdCBSZXNvdXJjZVIKICAgICByZXR1cm4gRG9jdW1lbnRM
b2FkZXI6OmNyZWF0ZShyZXF1ZXN0LCBzdWJzdGl0dXRlRGF0YSk7CiB9CiAKLVJlZlB0cjxGcmFt
ZT4gRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlRnJhbWUoY29uc3QgVVJMJiwgY29uc3Qg
U3RyaW5nJiwgSFRNTEZyYW1lT3duZXJFbGVtZW50KiwgY29uc3QgU3RyaW5nJiwgYm9vbCwgaW50
LCBpbnQpCitSZWZQdHI8RnJhbWU+IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1l
KGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYsIEhUTUxGcmFtZU93bmVyRWxlbWVudCYsIGNvbnN0
IFN0cmluZyYsIGJvb2wsIGludCwgaW50KQogewogICAgIHJldHVybiBudWxscHRyOwogfQogCi1S
ZWZQdHI8V2lkZ2V0PiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3Qg
SW50U2l6ZSYsIEhUTUxQbHVnSW5FbGVtZW50KiwgY29uc3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0
cmluZz4mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFN0cmluZyYsIGJvb2wpCitSZWZQ
dHI8V2lkZ2V0PiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50
U2l6ZSYsIEhUTUxQbHVnSW5FbGVtZW50JiwgY29uc3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0cmlu
Zz4mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFN0cmluZyYsIGJvb2wpCiB7CiAgICAg
cmV0dXJuIG51bGxwdHI7CiB9CkBAIC02MDgsMjUgKzYzMCwzMCBAQCB2b2lkIEVtcHR5RnJhbWVM
b2FkZXJDbGllbnQ6OnJlY3JlYXRlUGx1Z2luKFdpZGdldCopCiB7CiB9CiAKLVBhc3NSZWZQdHI8
V2lkZ2V0PiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNv
bnN0IEludFNpemUmLCBIVE1MQXBwbGV0RWxlbWVudCosIGNvbnN0IFVSTCYsIGNvbnN0IFZlY3Rv
cjxTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mKQorUmVmUHRyPFdpZGdldD4gRW1wdHlG
cmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXplJiwg
SFRNTEFwcGxldEVsZW1lbnQmLCBjb25zdCBVUkwmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNv
bnN0IFZlY3RvcjxTdHJpbmc+JikKIHsKICAgICByZXR1cm4gbnVsbHB0cjsKIH0KIAotUGFzc1Jl
ZlB0cjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpjcmVh
dGVOZXR3b3JraW5nQ29udGV4dCgpCitpbmxpbmUgRW1wdHlGcmFtZU5ldHdvcmtpbmdDb250ZXh0
OjpFbXB0eUZyYW1lTmV0d29ya2luZ0NvbnRleHQoKQorICAgIDogRnJhbWVOZXR3b3JraW5nQ29u
dGV4dCB7IG51bGxwdHIgfQoreworfQorCitSZWY8RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gRW1w
dHlGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKQogewotICAgIHJl
dHVybiBQYXNzUmVmUHRyPEZyYW1lTmV0d29ya2luZ0NvbnRleHQ+KCk7CisgICAgcmV0dXJuIEVt
cHR5RnJhbWVOZXR3b3JraW5nQ29udGV4dDo6Y3JlYXRlKCk7CiB9CiAKIHZvaWQgRW1wdHlFZGl0
b3JDbGllbnQ6OkVtcHR5VGV4dENoZWNrZXJDbGllbnQ6OnJlcXVlc3RDaGVja2luZ09mU3RyaW5n
KFRleHRDaGVja2luZ1JlcXVlc3QmLCBjb25zdCBWaXNpYmxlU2VsZWN0aW9uJikKIHsKIH0KIAot
dm9pZCBFbXB0eUVkaXRvckNsaWVudDo6cmVnaXN0ZXJVbmRvU3RlcChQYXNzUmVmUHRyPFVuZG9T
dGVwPikKK3ZvaWQgRW1wdHlFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb1N0ZXAoVW5kb1N0ZXAm
KQogewogfQogCi12b2lkIEVtcHR5RWRpdG9yQ2xpZW50OjpyZWdpc3RlclJlZG9TdGVwKFBhc3NS
ZWZQdHI8VW5kb1N0ZXA+KQordm9pZCBFbXB0eUVkaXRvckNsaWVudDo6cmVnaXN0ZXJSZWRvU3Rl
cChVbmRvU3RlcCYpCiB7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9F
bXB0eUNsaWVudHMuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuaAppbmRl
eCAxYTFkNTNjMzc0MDhhYjk5YzYwZGYwZTJmN2Q4MmE0MWMxYWVkNjY5Li44ZjI1MmJhNzkyZjcx
MTk3ZDA5MTA5MjZjODQwYTI5MDg1YWQxMDM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvRW1wdHlDbGllbnRzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xp
ZW50cy5oCkBAIC0xMzgsNyArMTM4LDcgQEAgY2xhc3MgRW1wdHlDaHJvbWVDbGllbnQgOiBwdWJs
aWMgQ2hyb21lQ2xpZW50IHsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8Q29sb3JDaG9vc2VyPiBjcmVh
dGVDb2xvckNob29zZXIoQ29sb3JDaG9vc2VyQ2xpZW50KiwgY29uc3QgQ29sb3ImKSBmaW5hbDsK
ICNlbmRpZgogCi0gICAgdm9pZCBydW5PcGVuUGFuZWwoRnJhbWUqLCBQYXNzUmVmUHRyPEZpbGVD
aG9vc2VyPikgZmluYWw7CisgICAgdm9pZCBydW5PcGVuUGFuZWwoRnJhbWUmLCBGaWxlQ2hvb3Nl
ciYpIGZpbmFsOwogICAgIHZvaWQgbG9hZEljb25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8U3RyaW5n
PiYsIEZpbGVJY29uTG9hZGVyJikgZmluYWwgeyB9CiAKICAgICB2b2lkIGVsZW1lbnREaWRGb2N1
cyhjb25zdCBOb2RlKikgZmluYWwgeyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvRm9ybVN0YXRlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3RhdGUuY3BwCmlu
ZGV4IDM1MTBiODAyNWRkZmMzNTE2MzhlMDMwNjA2ZmFkNjA0NWNjOTUxOTYuLjVlODk2ZTdmODUy
Zjk2ZTI1NDBlZDhkNGQxNTE3NjJiNmI0MGQ5MTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9Gb3JtU3RhdGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3Rh
dGUuY3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNiwgMjAwOSBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAx
NyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKQEAgLTM0LDE3ICszNCwxNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWlu
bGluZSBGb3JtU3RhdGU6OkZvcm1TdGF0ZShQYXNzUmVmUHRyPEhUTUxGb3JtRWxlbWVudD4gZm9y
bSwgU3RyaW5nUGFpclZlY3RvciYgdGV4dEZpZWxkVmFsdWVzVG9BZG9wdCwgUGFzc1JlZlB0cjxE
b2N1bWVudD4gc291cmNlRG9jdW1lbnQsIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciBmb3JtU3VibWlz
c2lvblRyaWdnZXIpCitpbmxpbmUgRm9ybVN0YXRlOjpGb3JtU3RhdGUoSFRNTEZvcm1FbGVtZW50
JiBmb3JtLCBTdHJpbmdQYWlyVmVjdG9yJiYgdGV4dEZpZWxkVmFsdWVzLCBEb2N1bWVudCYgc291
cmNlRG9jdW1lbnQsIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciBmb3JtU3VibWlzc2lvblRyaWdnZXIp
CiAgICAgOiBtX2Zvcm0oZm9ybSkKKyAgICAsIG1fdGV4dEZpZWxkVmFsdWVzKFdURk1vdmUodGV4
dEZpZWxkVmFsdWVzKSkKICAgICAsIG1fc291cmNlRG9jdW1lbnQoc291cmNlRG9jdW1lbnQpCiAg
ICAgLCBtX2Zvcm1TdWJtaXNzaW9uVHJpZ2dlcihmb3JtU3VibWlzc2lvblRyaWdnZXIpCiB7Ci0g
ICAgbV90ZXh0RmllbGRWYWx1ZXMuc3dhcCh0ZXh0RmllbGRWYWx1ZXNUb0Fkb3B0KTsKIH0KIAot
UmVmPEZvcm1TdGF0ZT4gRm9ybVN0YXRlOjpjcmVhdGUoUGFzc1JlZlB0cjxIVE1MRm9ybUVsZW1l
bnQ+IGZvcm0sIFN0cmluZ1BhaXJWZWN0b3ImIHRleHRGaWVsZFZhbHVlc1RvQWRvcHQsIFBhc3NS
ZWZQdHI8RG9jdW1lbnQ+IHNvdXJjZURvY3VtZW50LCBGb3JtU3VibWlzc2lvblRyaWdnZXIgZm9y
bVN1Ym1pc3Npb25UcmlnZ2VyKQorUmVmPEZvcm1TdGF0ZT4gRm9ybVN0YXRlOjpjcmVhdGUoSFRN
TEZvcm1FbGVtZW50JiBmb3JtLCBTdHJpbmdQYWlyVmVjdG9yJiYgdGV4dEZpZWxkVmFsdWVzLCBE
b2N1bWVudCYgc291cmNlRG9jdW1lbnQsIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciBmb3JtU3VibWlz
c2lvblRyaWdnZXIpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRm9ybVN0YXRlKGZvcm0s
IHRleHRGaWVsZFZhbHVlc1RvQWRvcHQsIHNvdXJjZURvY3VtZW50LCBmb3JtU3VibWlzc2lvblRy
aWdnZXIpKTsKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGb3JtU3RhdGUoZm9ybSwgV1RGTW92
ZSh0ZXh0RmllbGRWYWx1ZXMpLCBzb3VyY2VEb2N1bWVudCwgZm9ybVN1Ym1pc3Npb25UcmlnZ2Vy
KSk7CiB9CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3RhdGUu
aCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3RhdGUuaAppbmRleCA5NTA0MGY5YzI4ZDQ3
OTNiYjE1ZjhmZjM3YTBiNjI0ZDI4YmQ4Y2Y3Li4yZGVkZDA5YmU1MmIwYWZjOTcwMjgzYTExNGNj
ZjAzNGY3YjY1ZmFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN0YXRl
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdGF0ZS5oCkBAIC0xLDUgKzEsNSBA
QAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNiwgMjAwOSBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTI4LDM3ICsy
OCwzMyBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAj
aW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAot
ICAgIGNsYXNzIERvY3VtZW50OwotICAgIGNsYXNzIEhUTUxGb3JtRWxlbWVudDsKK2NsYXNzIERv
Y3VtZW50OworY2xhc3MgSFRNTEZvcm1FbGVtZW50OwogCi0gICAgZW51bSBGb3JtU3VibWlzc2lv
blRyaWdnZXIgewotICAgICAgICBTdWJtaXR0ZWRCeUphdmFTY3JpcHQsCi0gICAgICAgIE5vdFN1
Ym1pdHRlZEJ5SmF2YVNjcmlwdAotICAgIH07Ci0gICAgCi0gICAgdHlwZWRlZiBWZWN0b3I8c3Rk
OjpwYWlyPFN0cmluZywgU3RyaW5nPj4gU3RyaW5nUGFpclZlY3RvcjsKK2VudW0gRm9ybVN1Ym1p
c3Npb25UcmlnZ2VyIHsgU3VibWl0dGVkQnlKYXZhU2NyaXB0LCBOb3RTdWJtaXR0ZWRCeUphdmFT
Y3JpcHQgfTsKIAotICAgIGNsYXNzIEZvcm1TdGF0ZSA6IHB1YmxpYyBSZWZDb3VudGVkPEZvcm1T
dGF0ZT4gewotICAgIHB1YmxpYzoKLSAgICAgICAgc3RhdGljIFJlZjxGb3JtU3RhdGU+IGNyZWF0
ZShQYXNzUmVmUHRyPEhUTUxGb3JtRWxlbWVudD4sIFN0cmluZ1BhaXJWZWN0b3ImIHRleHRGaWVs
ZFZhbHVlc1RvQWRvcHQsIFBhc3NSZWZQdHI8RG9jdW1lbnQ+LCBGb3JtU3VibWlzc2lvblRyaWdn
ZXIpOwordXNpbmcgU3RyaW5nUGFpclZlY3RvciA9IFZlY3RvcjxzdGQ6OnBhaXI8U3RyaW5nLCBT
dHJpbmc+PjsKIAotICAgICAgICBIVE1MRm9ybUVsZW1lbnQqIGZvcm0oKSBjb25zdCB7IHJldHVy
biBtX2Zvcm0uZ2V0KCk7IH0KLSAgICAgICAgY29uc3QgU3RyaW5nUGFpclZlY3RvciYgdGV4dEZp
ZWxkVmFsdWVzKCkgY29uc3QgeyByZXR1cm4gbV90ZXh0RmllbGRWYWx1ZXM7IH0KLSAgICAgICAg
RG9jdW1lbnQqIHNvdXJjZURvY3VtZW50KCkgY29uc3QgeyByZXR1cm4gbV9zb3VyY2VEb2N1bWVu
dC5nZXQoKTsgfQotICAgICAgICBGb3JtU3VibWlzc2lvblRyaWdnZXIgZm9ybVN1Ym1pc3Npb25U
cmlnZ2VyKCkgY29uc3QgeyByZXR1cm4gbV9mb3JtU3VibWlzc2lvblRyaWdnZXI7IH0KK2NsYXNz
IEZvcm1TdGF0ZSA6IHB1YmxpYyBSZWZDb3VudGVkPEZvcm1TdGF0ZT4geworcHVibGljOgorICAg
IHN0YXRpYyBSZWY8Rm9ybVN0YXRlPiBjcmVhdGUoSFRNTEZvcm1FbGVtZW50JiwgU3RyaW5nUGFp
clZlY3RvciYmIHRleHRGaWVsZFZhbHVlcywgRG9jdW1lbnQmLCBGb3JtU3VibWlzc2lvblRyaWdn
ZXIpOwogCi0gICAgcHJpdmF0ZToKLSAgICAgICAgRm9ybVN0YXRlKFBhc3NSZWZQdHI8SFRNTEZv
cm1FbGVtZW50PiwgU3RyaW5nUGFpclZlY3RvciYgdGV4dEZpZWxkVmFsdWVzVG9BZG9wdCwgUGFz
c1JlZlB0cjxEb2N1bWVudD4sIEZvcm1TdWJtaXNzaW9uVHJpZ2dlcik7CisgICAgSFRNTEZvcm1F
bGVtZW50JiBmb3JtKCkgY29uc3QgeyByZXR1cm4gbV9mb3JtOyB9CisgICAgY29uc3QgU3RyaW5n
UGFpclZlY3RvciYgdGV4dEZpZWxkVmFsdWVzKCkgY29uc3QgeyByZXR1cm4gbV90ZXh0RmllbGRW
YWx1ZXM7IH0KKyAgICBEb2N1bWVudCYgc291cmNlRG9jdW1lbnQoKSBjb25zdCB7IHJldHVybiBt
X3NvdXJjZURvY3VtZW50OyB9CisgICAgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIGZvcm1TdWJtaXNz
aW9uVHJpZ2dlcigpIGNvbnN0IHsgcmV0dXJuIG1fZm9ybVN1Ym1pc3Npb25UcmlnZ2VyOyB9CiAK
LSAgICAgICAgUmVmUHRyPEhUTUxGb3JtRWxlbWVudD4gbV9mb3JtOwotICAgICAgICBTdHJpbmdQ
YWlyVmVjdG9yIG1fdGV4dEZpZWxkVmFsdWVzOwotICAgICAgICBSZWZQdHI8RG9jdW1lbnQ+IG1f
c291cmNlRG9jdW1lbnQ7Ci0gICAgICAgIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciBtX2Zvcm1TdWJt
aXNzaW9uVHJpZ2dlcjsKLSAgICB9OworcHJpdmF0ZToKKyAgICBGb3JtU3RhdGUoSFRNTEZvcm1F
bGVtZW50JiwgU3RyaW5nUGFpclZlY3RvciYmIHRleHRGaWVsZFZhbHVlcywgRG9jdW1lbnQmLCBG
b3JtU3VibWlzc2lvblRyaWdnZXIpOworCisgICAgUmVmPEhUTUxGb3JtRWxlbWVudD4gbV9mb3Jt
OworICAgIFN0cmluZ1BhaXJWZWN0b3IgbV90ZXh0RmllbGRWYWx1ZXM7CisgICAgUmVmPERvY3Vt
ZW50PiBtX3NvdXJjZURvY3VtZW50OworICAgIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciBtX2Zvcm1T
dWJtaXNzaW9uVHJpZ2dlcjsKK307CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3VibWlzc2lvbi5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvRm9ybVN1Ym1pc3Npb24uY3BwCmluZGV4IDIwYWFmNGM0YzcyN2FmNjkyYjc5
OGUyNjk2NWZiOTQwNDc4NmM5YjIuLjc3MDczNDNjNWMyMzc1OTc5N2JiY2JmMDQxNTM5MjMwMzc5
Zjc5YzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3VibWlzc2lvbi5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdWJtaXNzaW9uLmNwcApAQCAtMTA2
LDcgKzEwNiw3IEBAIHZvaWQgRm9ybVN1Ym1pc3Npb246OkF0dHJpYnV0ZXM6OnVwZGF0ZUVuY29k
aW5nVHlwZShjb25zdCBTdHJpbmcmIHR5cGUpCiAKIEZvcm1TdWJtaXNzaW9uOjpNZXRob2QgRm9y
bVN1Ym1pc3Npb246OkF0dHJpYnV0ZXM6OnBhcnNlTWV0aG9kVHlwZShjb25zdCBTdHJpbmcmIHR5
cGUpCiB7Ci0gICAgcmV0dXJuIGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHR5cGUsICJw
b3N0IikgPyBGb3JtU3VibWlzc2lvbjo6UG9zdE1ldGhvZCA6IEZvcm1TdWJtaXNzaW9uOjpHZXRN
ZXRob2Q7CisgICAgcmV0dXJuIGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHR5cGUsICJw
b3N0IikgPyBGb3JtU3VibWlzc2lvbjo6TWV0aG9kOjpQb3N0IDogRm9ybVN1Ym1pc3Npb246Ok1l
dGhvZDo6R2V0OwogfQogCiB2b2lkIEZvcm1TdWJtaXNzaW9uOjpBdHRyaWJ1dGVzOjp1cGRhdGVN
ZXRob2RUeXBlKGNvbnN0IFN0cmluZyYgdHlwZSkKQEAgLTExNCwyNCArMTE0LDEzIEBAIHZvaWQg
Rm9ybVN1Ym1pc3Npb246OkF0dHJpYnV0ZXM6OnVwZGF0ZU1ldGhvZFR5cGUoY29uc3QgU3RyaW5n
JiB0eXBlKQogICAgIG1fbWV0aG9kID0gcGFyc2VNZXRob2RUeXBlKHR5cGUpOwogfQogCi12b2lk
IEZvcm1TdWJtaXNzaW9uOjpBdHRyaWJ1dGVzOjpjb3B5RnJvbShjb25zdCBBdHRyaWJ1dGVzJiBv
dGhlcikKLXsKLSAgICBtX21ldGhvZCA9IG90aGVyLm1fbWV0aG9kOwotICAgIG1faXNNdWx0aVBh
cnRGb3JtID0gb3RoZXIubV9pc011bHRpUGFydEZvcm07Ci0KLSAgICBtX2FjdGlvbiA9IG90aGVy
Lm1fYWN0aW9uOwotICAgIG1fdGFyZ2V0ID0gb3RoZXIubV90YXJnZXQ7Ci0gICAgbV9lbmNvZGlu
Z1R5cGUgPSBvdGhlci5tX2VuY29kaW5nVHlwZTsKLSAgICBtX2FjY2VwdENoYXJzZXQgPSBvdGhl
ci5tX2FjY2VwdENoYXJzZXQ7Ci19Ci0KLWlubGluZSBGb3JtU3VibWlzc2lvbjo6Rm9ybVN1Ym1p
c3Npb24oTWV0aG9kIG1ldGhvZCwgY29uc3QgVVJMJiBhY3Rpb24sIGNvbnN0IFN0cmluZyYgdGFy
Z2V0LCBjb25zdCBTdHJpbmcmIGNvbnRlbnRUeXBlLCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4gc3Rh
dGUsIFBhc3NSZWZQdHI8Rm9ybURhdGE+IGRhdGEsIGNvbnN0IFN0cmluZyYgYm91bmRhcnksIExv
Y2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBQYXNzUmVmUHRyPEV2ZW50PiBldmVudCkKK2lubGluZSBG
b3JtU3VibWlzc2lvbjo6Rm9ybVN1Ym1pc3Npb24oTWV0aG9kIG1ldGhvZCwgY29uc3QgVVJMJiBh
Y3Rpb24sIGNvbnN0IFN0cmluZyYgdGFyZ2V0LCBjb25zdCBTdHJpbmcmIGNvbnRlbnRUeXBlLCBS
ZWY8Rm9ybVN0YXRlPiYmIHN0YXRlLCBSZWY8Rm9ybURhdGE+JiYgZGF0YSwgY29uc3QgU3RyaW5n
JiBib3VuZGFyeSwgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnksIEV2ZW50KiBldmVudCkKICAgICA6
IG1fbWV0aG9kKG1ldGhvZCkKICAgICAsIG1fYWN0aW9uKGFjdGlvbikKICAgICAsIG1fdGFyZ2V0
KHRhcmdldCkKICAgICAsIG1fY29udGVudFR5cGUoY29udGVudFR5cGUpCi0gICAgLCBtX2Zvcm1T
dGF0ZShzdGF0ZSkKLSAgICAsIG1fZm9ybURhdGEoZGF0YSkKKyAgICAsIG1fZm9ybVN0YXRlKFdU
Rk1vdmUoc3RhdGUpKQorICAgICwgbV9mb3JtRGF0YShXVEZNb3ZlKGRhdGEpKQogICAgICwgbV9i
b3VuZGFyeShib3VuZGFyeSkKICAgICAsIG1fbG9ja0hpc3RvcnkobG9ja0hpc3RvcnkpCiAgICAg
LCBtX2V2ZW50KGV2ZW50KQpAQCAtMTU1LDEwICsxNDQsOCBAQCBzdGF0aWMgVGV4dEVuY29kaW5n
IGVuY29kaW5nRnJvbUFjY2VwdENoYXJzZXQoY29uc3QgU3RyaW5nJiBhY2NlcHRDaGFyc2V0LCBE
b2N1bQogICAgIHJldHVybiBkb2N1bWVudC50ZXh0RW5jb2RpbmcoKTsKIH0KIAotUmVmPEZvcm1T
dWJtaXNzaW9uPiBGb3JtU3VibWlzc2lvbjo6Y3JlYXRlKEhUTUxGb3JtRWxlbWVudCogZm9ybSwg
Y29uc3QgQXR0cmlidXRlcyYgYXR0cmlidXRlcywgUGFzc1JlZlB0cjxFdmVudD4gZXZlbnQsIExv
Y2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBGb3JtU3VibWlzc2lvblRyaWdnZXIgdHJpZ2dlcikKK1Jl
ZjxGb3JtU3VibWlzc2lvbj4gRm9ybVN1Ym1pc3Npb246OmNyZWF0ZShIVE1MRm9ybUVsZW1lbnQm
IGZvcm0sIGNvbnN0IEF0dHJpYnV0ZXMmIGF0dHJpYnV0ZXMsIEV2ZW50KiBldmVudCwgTG9ja0hp
c3RvcnkgbG9ja0hpc3RvcnksIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciB0cmlnZ2VyKQogewotICAg
IEFTU0VSVChmb3JtKTsKLQogICAgIEhUTUxGb3JtQ29udHJvbEVsZW1lbnQqIHN1Ym1pdEJ1dHRv
biA9IG51bGxwdHI7CiAgICAgaWYgKGV2ZW50ICYmIGV2ZW50LT50YXJnZXQoKSkgewogICAgICAg
ICBmb3IgKE5vZGUqIG5vZGUgPSBldmVudC0+dGFyZ2V0KCktPnRvTm9kZSgpOyBub2RlOyBub2Rl
ID0gbm9kZS0+cGFyZW50Tm9kZSgpKSB7CkBAIC0xNjksOCArMTU2LDcgQEAgUmVmPEZvcm1TdWJt
aXNzaW9uPiBGb3JtU3VibWlzc2lvbjo6Y3JlYXRlKEhUTUxGb3JtRWxlbWVudCogZm9ybSwgY29u
c3QgQXR0cmlidXQKICAgICAgICAgfQogICAgIH0KIAotICAgIEZvcm1TdWJtaXNzaW9uOjpBdHRy
aWJ1dGVzIGNvcGllZEF0dHJpYnV0ZXM7Ci0gICAgY29waWVkQXR0cmlidXRlcy5jb3B5RnJvbShh
dHRyaWJ1dGVzKTsKKyAgICBhdXRvIGNvcGllZEF0dHJpYnV0ZXMgPSBhdHRyaWJ1dGVzOwogICAg
IGlmIChzdWJtaXRCdXR0b24pIHsKICAgICAgICAgQXRvbWljU3RyaW5nIGF0dHJpYnV0ZVZhbHVl
OwogICAgICAgICBpZiAoIShhdHRyaWJ1dGVWYWx1ZSA9IHN1Ym1pdEJ1dHRvbi0+YXR0cmlidXRl
V2l0aG91dFN5bmNocm9uaXphdGlvbihmb3JtYWN0aW9uQXR0cikpLmlzTnVsbCgpKQpAQCAtMTgz
LDE1ICsxNjksMTUgQEAgUmVmPEZvcm1TdWJtaXNzaW9uPiBGb3JtU3VibWlzc2lvbjo6Y3JlYXRl
KEhUTUxGb3JtRWxlbWVudCogZm9ybSwgY29uc3QgQXR0cmlidXQKICAgICAgICAgICAgIGNvcGll
ZEF0dHJpYnV0ZXMuc2V0VGFyZ2V0KGF0dHJpYnV0ZVZhbHVlKTsKICAgICB9CiAgICAgCi0gICAg
RG9jdW1lbnQmIGRvY3VtZW50ID0gZm9ybS0+ZG9jdW1lbnQoKTsKLSAgICBVUkwgYWN0aW9uVVJM
ID0gZG9jdW1lbnQuY29tcGxldGVVUkwoY29waWVkQXR0cmlidXRlcy5hY3Rpb24oKS5pc0VtcHR5
KCkgPyBkb2N1bWVudC51cmwoKS5zdHJpbmcoKSA6IGNvcGllZEF0dHJpYnV0ZXMuYWN0aW9uKCkp
OworICAgIGF1dG8mIGRvY3VtZW50ID0gZm9ybS5kb2N1bWVudCgpOworICAgIGF1dG8gYWN0aW9u
VVJMID0gZG9jdW1lbnQuY29tcGxldGVVUkwoY29waWVkQXR0cmlidXRlcy5hY3Rpb24oKS5pc0Vt
cHR5KCkgPyBkb2N1bWVudC51cmwoKS5zdHJpbmcoKSA6IGNvcGllZEF0dHJpYnV0ZXMuYWN0aW9u
KCkpOwogICAgIGJvb2wgaXNNYWlsdG9Gb3JtID0gYWN0aW9uVVJMLnByb3RvY29sSXMoIm1haWx0
byIpOwogICAgIGJvb2wgaXNNdWx0aVBhcnRGb3JtID0gZmFsc2U7Ci0gICAgU3RyaW5nIGVuY29k
aW5nVHlwZSA9IGNvcGllZEF0dHJpYnV0ZXMuZW5jb2RpbmdUeXBlKCk7CisgICAgYXV0byBlbmNv
ZGluZ1R5cGUgPSBjb3BpZWRBdHRyaWJ1dGVzLmVuY29kaW5nVHlwZSgpOwogCiAgICAgZG9jdW1l
bnQuY29udGVudFNlY3VyaXR5UG9saWN5KCktPnVwZ3JhZGVJbnNlY3VyZVJlcXVlc3RJZk5lZWRl
ZChhY3Rpb25VUkwsIENvbnRlbnRTZWN1cml0eVBvbGljeTo6SW5zZWN1cmVSZXF1ZXN0VHlwZTo6
Rm9ybVN1Ym1pc3Npb24pOwogCi0gICAgaWYgKGNvcGllZEF0dHJpYnV0ZXMubWV0aG9kKCkgPT0g
UG9zdE1ldGhvZCkgeworICAgIGlmIChjb3BpZWRBdHRyaWJ1dGVzLm1ldGhvZCgpID09IE1ldGhv
ZDo6UG9zdCkgewogICAgICAgICBpc011bHRpUGFydEZvcm0gPSBjb3BpZWRBdHRyaWJ1dGVzLmlz
TXVsdGlQYXJ0Rm9ybSgpOwogICAgICAgICBpZiAoaXNNdWx0aVBhcnRGb3JtICYmIGlzTWFpbHRv
Rm9ybSkgewogICAgICAgICAgICAgZW5jb2RpbmdUeXBlID0gImFwcGxpY2F0aW9uL3gtd3d3LWZv
cm0tdXJsZW5jb2RlZCI7CkBAIC0xOTksMTkgKzE4NSwxOSBAQCBSZWY8Rm9ybVN1Ym1pc3Npb24+
IEZvcm1TdWJtaXNzaW9uOjpjcmVhdGUoSFRNTEZvcm1FbGVtZW50KiBmb3JtLCBjb25zdCBBdHRy
aWJ1dAogICAgICAgICB9CiAgICAgfQogCi0gICAgVGV4dEVuY29kaW5nIGRhdGFFbmNvZGluZyA9
IGlzTWFpbHRvRm9ybSA/IFVURjhFbmNvZGluZygpIDogZW5jb2RpbmdGcm9tQWNjZXB0Q2hhcnNl
dChjb3BpZWRBdHRyaWJ1dGVzLmFjY2VwdENoYXJzZXQoKSwgZG9jdW1lbnQpOwotICAgIFJlZlB0
cjxET01Gb3JtRGF0YT4gZG9tRm9ybURhdGEgPSBET01Gb3JtRGF0YTo6Y3JlYXRlKGRhdGFFbmNv
ZGluZy5lbmNvZGluZ0ZvckZvcm1TdWJtaXNzaW9uKCkpOwotICAgIFZlY3RvcjxzdGQ6OnBhaXI8
U3RyaW5nLCBTdHJpbmc+PiBmb3JtVmFsdWVzOworICAgIGF1dG8gZGF0YUVuY29kaW5nID0gaXNN
YWlsdG9Gb3JtID8gVVRGOEVuY29kaW5nKCkgOiBlbmNvZGluZ0Zyb21BY2NlcHRDaGFyc2V0KGNv
cGllZEF0dHJpYnV0ZXMuYWNjZXB0Q2hhcnNldCgpLCBkb2N1bWVudCk7CisgICAgYXV0byBkb21G
b3JtRGF0YSA9IERPTUZvcm1EYXRhOjpjcmVhdGUoZGF0YUVuY29kaW5nLmVuY29kaW5nRm9yRm9y
bVN1Ym1pc3Npb24oKSk7CisgICAgU3RyaW5nUGFpclZlY3RvciBmb3JtVmFsdWVzOwogCiAgICAg
Ym9vbCBjb250YWluc1Bhc3N3b3JkRGF0YSA9IGZhbHNlOwotICAgIGZvciAoYXV0byYgY29udHJv
bCA6IGZvcm0tPmFzc29jaWF0ZWRFbGVtZW50cygpKSB7Ci0gICAgICAgIEhUTUxFbGVtZW50JiBl
bGVtZW50ID0gY29udHJvbC0+YXNIVE1MRWxlbWVudCgpOworICAgIGZvciAoYXV0byYgY29udHJv
bCA6IGZvcm0uYXNzb2NpYXRlZEVsZW1lbnRzKCkpIHsKKyAgICAgICAgYXV0byYgZWxlbWVudCA9
IGNvbnRyb2wtPmFzSFRNTEVsZW1lbnQoKTsKICAgICAgICAgaWYgKCFlbGVtZW50LmlzRGlzYWJs
ZWRGb3JtQ29udHJvbCgpKQotICAgICAgICAgICAgY29udHJvbC0+YXBwZW5kRm9ybURhdGEoKmRv
bUZvcm1EYXRhLCBpc011bHRpUGFydEZvcm0pOworICAgICAgICAgICAgY29udHJvbC0+YXBwZW5k
Rm9ybURhdGEoZG9tRm9ybURhdGEsIGlzTXVsdGlQYXJ0Rm9ybSk7CiAgICAgICAgIGlmIChpczxI
VE1MSW5wdXRFbGVtZW50PihlbGVtZW50KSkgewotICAgICAgICAgICAgSFRNTElucHV0RWxlbWVu
dCYgaW5wdXQgPSBkb3duY2FzdDxIVE1MSW5wdXRFbGVtZW50PihlbGVtZW50KTsKKyAgICAgICAg
ICAgIGF1dG8mIGlucHV0ID0gZG93bmNhc3Q8SFRNTElucHV0RWxlbWVudD4oZWxlbWVudCk7CiAg
ICAgICAgICAgICBpZiAoaW5wdXQuaXNUZXh0RmllbGQoKSkgewotICAgICAgICAgICAgICAgIGZv
cm1WYWx1ZXMuYXBwZW5kKHN0ZDo6cGFpcjxTdHJpbmcsIFN0cmluZz4oaW5wdXQubmFtZSgpLnN0
cmluZygpLCBpbnB1dC52YWx1ZSgpKSk7CisgICAgICAgICAgICAgICAgZm9ybVZhbHVlcy5hcHBl
bmQoeyBpbnB1dC5uYW1lKCkuc3RyaW5nKCksIGlucHV0LnZhbHVlKCkgfSk7CiAgICAgICAgICAg
ICAgICAgaW5wdXQuYWRkU2VhcmNoUmVzdWx0KCk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAg
ICBpZiAoaW5wdXQuaXNQYXNzd29yZEZpZWxkKCkgJiYgIWlucHV0LnZhbHVlKCkuaXNFbXB0eSgp
KQpAQCAtMjIzLDExICsyMDksMTEgQEAgUmVmPEZvcm1TdWJtaXNzaW9uPiBGb3JtU3VibWlzc2lv
bjo6Y3JlYXRlKEhUTUxGb3JtRWxlbWVudCogZm9ybSwgY29uc3QgQXR0cmlidXQKICAgICBTdHJp
bmcgYm91bmRhcnk7CiAKICAgICBpZiAoaXNNdWx0aVBhcnRGb3JtKSB7Ci0gICAgICAgIGZvcm1E
YXRhID0gRm9ybURhdGE6OmNyZWF0ZU11bHRpUGFydCgqKHN0YXRpY19jYXN0PEZvcm1EYXRhTGlz
dCo+KGRvbUZvcm1EYXRhLmdldCgpKSksIGRvbUZvcm1EYXRhLT5lbmNvZGluZygpLCAmZG9jdW1l
bnQpOworICAgICAgICBmb3JtRGF0YSA9IEZvcm1EYXRhOjpjcmVhdGVNdWx0aVBhcnQoZG9tRm9y
bURhdGEsIGRvbUZvcm1EYXRhLT5lbmNvZGluZygpLCAmZG9jdW1lbnQpOwogICAgICAgICBib3Vu
ZGFyeSA9IGZvcm1EYXRhLT5ib3VuZGFyeSgpLmRhdGEoKTsKICAgICB9IGVsc2UgewotICAgICAg
ICBmb3JtRGF0YSA9IEZvcm1EYXRhOjpjcmVhdGUoKihzdGF0aWNfY2FzdDxGb3JtRGF0YUxpc3Qq
Pihkb21Gb3JtRGF0YS5nZXQoKSkpLCBkb21Gb3JtRGF0YS0+ZW5jb2RpbmcoKSwgYXR0cmlidXRl
cy5tZXRob2QoKSA9PSBHZXRNZXRob2QgPyBGb3JtRGF0YTo6Rm9ybVVSTEVuY29kZWQgOiBGb3Jt
RGF0YTo6cGFyc2VFbmNvZGluZ1R5cGUoZW5jb2RpbmdUeXBlKSk7Ci0gICAgICAgIGlmIChjb3Bp
ZWRBdHRyaWJ1dGVzLm1ldGhvZCgpID09IFBvc3RNZXRob2QgJiYgaXNNYWlsdG9Gb3JtKSB7Cisg
ICAgICAgIGZvcm1EYXRhID0gRm9ybURhdGE6OmNyZWF0ZShkb21Gb3JtRGF0YSwgZG9tRm9ybURh
dGEtPmVuY29kaW5nKCksIGF0dHJpYnV0ZXMubWV0aG9kKCkgPT0gTWV0aG9kOjpHZXQgPyBGb3Jt
RGF0YTo6Rm9ybVVSTEVuY29kZWQgOiBGb3JtRGF0YTo6cGFyc2VFbmNvZGluZ1R5cGUoZW5jb2Rp
bmdUeXBlKSk7CisgICAgICAgIGlmIChjb3BpZWRBdHRyaWJ1dGVzLm1ldGhvZCgpID09IE1ldGhv
ZDo6UG9zdCAmJiBpc01haWx0b0Zvcm0pIHsKICAgICAgICAgICAgIC8vIENvbnZlcnQgdGhlIGZv
cm0gZGF0YSBpbnRvIGEgc3RyaW5nIHRoYXQgd2UgcHV0IGludG8gdGhlIFVSTC4KICAgICAgICAg
ICAgIGFwcGVuZE1haWx0b1Bvc3RGb3JtRGF0YVRvVVJMKGFjdGlvblVSTCwgKmZvcm1EYXRhLCBl
bmNvZGluZ1R5cGUpOwogICAgICAgICAgICAgZm9ybURhdGEgPSBGb3JtRGF0YTo6Y3JlYXRlKCk7
CkBAIC0yMzYsMTQgKzIyMiwxNyBAQCBSZWY8Rm9ybVN1Ym1pc3Npb24+IEZvcm1TdWJtaXNzaW9u
OjpjcmVhdGUoSFRNTEZvcm1FbGVtZW50KiBmb3JtLCBjb25zdCBBdHRyaWJ1dAogCiAgICAgZm9y
bURhdGEtPnNldElkZW50aWZpZXIoZ2VuZXJhdGVGb3JtRGF0YUlkZW50aWZpZXIoKSk7CiAgICAg
Zm9ybURhdGEtPnNldENvbnRhaW5zUGFzc3dvcmREYXRhKGNvbnRhaW5zUGFzc3dvcmREYXRhKTsK
KwogICAgIFN0cmluZyB0YXJnZXRPckJhc2VUYXJnZXQgPSBjb3BpZWRBdHRyaWJ1dGVzLnRhcmdl
dCgpLmlzRW1wdHkoKSA/IGRvY3VtZW50LmJhc2VUYXJnZXQoKSA6IGNvcGllZEF0dHJpYnV0ZXMu
dGFyZ2V0KCk7Ci0gICAgYXV0byBmb3JtU3RhdGUgPSBGb3JtU3RhdGU6OmNyZWF0ZShmb3JtLCBm
b3JtVmFsdWVzLCAmZG9jdW1lbnQsIHRyaWdnZXIpOwotICAgIHJldHVybiBhZG9wdFJlZigqbmV3
IEZvcm1TdWJtaXNzaW9uKGNvcGllZEF0dHJpYnV0ZXMubWV0aG9kKCksIGFjdGlvblVSTCwgdGFy
Z2V0T3JCYXNlVGFyZ2V0LCBlbmNvZGluZ1R5cGUsIFdURk1vdmUoZm9ybVN0YXRlKSwgV1RGTW92
ZShmb3JtRGF0YSksIGJvdW5kYXJ5LCBsb2NrSGlzdG9yeSwgZXZlbnQpKTsKKworICAgIGF1dG8g
Zm9ybVN0YXRlID0gRm9ybVN0YXRlOjpjcmVhdGUoZm9ybSwgV1RGTW92ZShmb3JtVmFsdWVzKSwg
ZG9jdW1lbnQsIHRyaWdnZXIpOworCisgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRm9ybVN1Ym1p
c3Npb24oY29waWVkQXR0cmlidXRlcy5tZXRob2QoKSwgYWN0aW9uVVJMLCB0YXJnZXRPckJhc2VU
YXJnZXQsIGVuY29kaW5nVHlwZSwgV1RGTW92ZShmb3JtU3RhdGUpLCBmb3JtRGF0YS5yZWxlYXNl
Tm9uTnVsbCgpLCBib3VuZGFyeSwgbG9ja0hpc3RvcnksIGV2ZW50KSk7CiB9CiAKIFVSTCBGb3Jt
U3VibWlzc2lvbjo6cmVxdWVzdFVSTCgpIGNvbnN0CiB7Ci0gICAgaWYgKG1fbWV0aG9kID09IEZv
cm1TdWJtaXNzaW9uOjpQb3N0TWV0aG9kKQorICAgIGlmIChtX21ldGhvZCA9PSBNZXRob2Q6OlBv
c3QpCiAgICAgICAgIHJldHVybiBtX2FjdGlvbjsKIAogICAgIFVSTCByZXF1ZXN0VVJMKG1fYWN0
aW9uKTsKQEAgLTI1OSw3ICsyNDgsNyBAQCB2b2lkIEZvcm1TdWJtaXNzaW9uOjpwb3B1bGF0ZUZy
YW1lTG9hZFJlcXVlc3QoRnJhbWVMb2FkUmVxdWVzdCYgZnJhbWVSZXF1ZXN0KQogICAgIGlmICgh
bV9yZWZlcnJlci5pc0VtcHR5KCkpCiAgICAgICAgIGZyYW1lUmVxdWVzdC5yZXNvdXJjZVJlcXVl
c3QoKS5zZXRIVFRQUmVmZXJyZXIobV9yZWZlcnJlcik7CiAKLSAgICBpZiAobV9tZXRob2QgPT0g
Rm9ybVN1Ym1pc3Npb246OlBvc3RNZXRob2QpIHsKKyAgICBpZiAobV9tZXRob2QgPT0gTWV0aG9k
OjpQb3N0KSB7CiAgICAgICAgIGZyYW1lUmVxdWVzdC5yZXNvdXJjZVJlcXVlc3QoKS5zZXRIVFRQ
TWV0aG9kKCJQT1NUIik7CiAgICAgICAgIGZyYW1lUmVxdWVzdC5yZXNvdXJjZVJlcXVlc3QoKS5z
ZXRIVFRQQm9keShtX2Zvcm1EYXRhLmNvcHlSZWYoKSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9Gb3JtU3VibWlzc2lvbi5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zv
cm1TdWJtaXNzaW9uLmgKaW5kZXggNDFiMzdlMDY0MmIxOGE4MGUxNjRmMDU2NmJlZjg4ZDJkMTBl
N2VmOC4uMjUyNDEyYzBjMDJiMzliZDllOGI0NTFhYzc1MzVhNDU3MzU0NzZhMCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdWJtaXNzaW9uLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL0Zvcm1TdWJtaXNzaW9uLmgKQEAgLTM2LDMxICszNiwyMSBAQAogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIERvY3VtZW50OwogY2xhc3MgRXZlbnQ7CiBjbGFzcyBG
b3JtRGF0YTsKKwogc3RydWN0IEZyYW1lTG9hZFJlcXVlc3Q7Ci1jbGFzcyBIVE1MRm9ybUVsZW1l
bnQ7Ci1jbGFzcyBUZXh0RW5jb2Rpbmc7CiAKIGNsYXNzIEZvcm1TdWJtaXNzaW9uIDogcHVibGlj
IFJlZkNvdW50ZWQ8Rm9ybVN1Ym1pc3Npb24+IHsKIHB1YmxpYzoKLSAgICBlbnVtIE1ldGhvZCB7
IEdldE1ldGhvZCwgUG9zdE1ldGhvZCB9OworICAgIGVudW0gY2xhc3MgTWV0aG9kIHsgR2V0LCBQ
b3N0IH07CiAKICAgICBjbGFzcyBBdHRyaWJ1dGVzIHsKLSAgICAgICAgV1RGX01BS0VfTk9OQ09Q
WUFCTEUoQXR0cmlidXRlcyk7CiAgICAgcHVibGljOgotICAgICAgICBBdHRyaWJ1dGVzKCkKLSAg
ICAgICAgICAgIDogbV9tZXRob2QoR2V0TWV0aG9kKQotICAgICAgICAgICAgLCBtX2lzTXVsdGlQ
YXJ0Rm9ybShmYWxzZSkKLSAgICAgICAgICAgICwgbV9lbmNvZGluZ1R5cGUoImFwcGxpY2F0aW9u
L3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIpCi0gICAgICAgIHsKLSAgICAgICAgfQotCiAgICAgICAg
IE1ldGhvZCBtZXRob2QoKSBjb25zdCB7IHJldHVybiBtX21ldGhvZDsgfQogICAgICAgICBzdGF0
aWMgTWV0aG9kIHBhcnNlTWV0aG9kVHlwZShjb25zdCBTdHJpbmcmKTsKICAgICAgICAgdm9pZCB1
cGRhdGVNZXRob2RUeXBlKGNvbnN0IFN0cmluZyYpOwotICAgICAgICBzdGF0aWMgU3RyaW5nIG1l
dGhvZFN0cmluZyhNZXRob2QgbWV0aG9kKSB7IHJldHVybiBtZXRob2QgPT0gUG9zdE1ldGhvZCA/
ICJwb3N0IiA6ICJnZXQiOyB9CisgICAgICAgIHN0YXRpYyBBU0NJSUxpdGVyYWwgbWV0aG9kU3Ry
aW5nKE1ldGhvZCBtZXRob2QpIHsgcmV0dXJuIEFTQ0lJTGl0ZXJhbCB7IG1ldGhvZCA9PSBNZXRo
b2Q6OlBvc3QgPyAicG9zdCIgOiAiZ2V0IiB9OyB9CiAKICAgICAgICAgY29uc3QgU3RyaW5nJiBh
Y3Rpb24oKSBjb25zdCB7IHJldHVybiBtX2FjdGlvbjsgfQogICAgICAgICB2b2lkIHBhcnNlQWN0
aW9uKGNvbnN0IFN0cmluZyYpOwpAQCAtNzYsNTAgKzY2LDQ2IEBAIHB1YmxpYzoKICAgICAgICAg
Y29uc3QgU3RyaW5nJiBhY2NlcHRDaGFyc2V0KCkgY29uc3QgeyByZXR1cm4gbV9hY2NlcHRDaGFy
c2V0OyB9CiAgICAgICAgIHZvaWQgc2V0QWNjZXB0Q2hhcnNldChjb25zdCBTdHJpbmcmIHZhbHVl
KSB7IG1fYWNjZXB0Q2hhcnNldCA9IHZhbHVlOyB9CiAKLSAgICAgICAgdm9pZCBjb3B5RnJvbShj
b25zdCBBdHRyaWJ1dGVzJik7Ci0KICAgICBwcml2YXRlOgotICAgICAgICBNZXRob2QgbV9tZXRo
b2Q7Ci0gICAgICAgIGJvb2wgbV9pc011bHRpUGFydEZvcm07Ci0KKyAgICAgICAgTWV0aG9kIG1f
bWV0aG9kIHsgTWV0aG9kOjpHZXQgfTsKKyAgICAgICAgYm9vbCBtX2lzTXVsdGlQYXJ0Rm9ybSB7
IGZhbHNlIH07CiAgICAgICAgIFN0cmluZyBtX2FjdGlvbjsKICAgICAgICAgU3RyaW5nIG1fdGFy
Z2V0OwotICAgICAgICBTdHJpbmcgbV9lbmNvZGluZ1R5cGU7CisgICAgICAgIFN0cmluZyBtX2Vu
Y29kaW5nVHlwZSB7IEFTQ0lJTGl0ZXJhbCB7ICJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVu
Y29kZWQiIH0gfTsKICAgICAgICAgU3RyaW5nIG1fYWNjZXB0Q2hhcnNldDsKICAgICB9OwogCi0g
ICAgc3RhdGljIFJlZjxGb3JtU3VibWlzc2lvbj4gY3JlYXRlKEhUTUxGb3JtRWxlbWVudCosIGNv
bnN0IEF0dHJpYnV0ZXMmLCBQYXNzUmVmUHRyPEV2ZW50PiBldmVudCwgTG9ja0hpc3RvcnksIEZv
cm1TdWJtaXNzaW9uVHJpZ2dlcik7CisgICAgc3RhdGljIFJlZjxGb3JtU3VibWlzc2lvbj4gY3Jl
YXRlKEhUTUxGb3JtRWxlbWVudCYsIGNvbnN0IEF0dHJpYnV0ZXMmLCBFdmVudCosIExvY2tIaXN0
b3J5LCBGb3JtU3VibWlzc2lvblRyaWdnZXIpOwogCiAgICAgdm9pZCBwb3B1bGF0ZUZyYW1lTG9h
ZFJlcXVlc3QoRnJhbWVMb2FkUmVxdWVzdCYpOwotICAgIAogICAgIFVSTCByZXF1ZXN0VVJMKCkg
Y29uc3Q7CiAKICAgICBNZXRob2QgbWV0aG9kKCkgY29uc3QgeyByZXR1cm4gbV9tZXRob2Q7IH0K
ICAgICBjb25zdCBVUkwmIGFjdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fYWN0aW9uOyB9CiAgICAg
Y29uc3QgU3RyaW5nJiB0YXJnZXQoKSBjb25zdCB7IHJldHVybiBtX3RhcmdldDsgfQotICAgIHZv
aWQgY2xlYXJUYXJnZXQoKSB7IG1fdGFyZ2V0ID0gU3RyaW5nKCk7IH0KICAgICBjb25zdCBTdHJp
bmcmIGNvbnRlbnRUeXBlKCkgY29uc3QgeyByZXR1cm4gbV9jb250ZW50VHlwZTsgfQotICAgIEZv
cm1TdGF0ZSogc3RhdGUoKSBjb25zdCB7IHJldHVybiBtX2Zvcm1TdGF0ZS5nZXQoKTsgfQotICAg
IEZvcm1EYXRhKiBkYXRhKCkgY29uc3QgeyByZXR1cm4gbV9mb3JtRGF0YS5nZXQoKTsgfQorICAg
IEZvcm1TdGF0ZSYgc3RhdGUoKSBjb25zdCB7IHJldHVybiBtX2Zvcm1TdGF0ZTsgfQorICAgIEZv
cm1EYXRhJiBkYXRhKCkgY29uc3QgeyByZXR1cm4gbV9mb3JtRGF0YTsgfQogICAgIGNvbnN0IFN0
cmluZyBib3VuZGFyeSgpIGNvbnN0IHsgcmV0dXJuIG1fYm91bmRhcnk7IH0KICAgICBMb2NrSGlz
dG9yeSBsb2NrSGlzdG9yeSgpIGNvbnN0IHsgcmV0dXJuIG1fbG9ja0hpc3Rvcnk7IH0KICAgICBF
dmVudCogZXZlbnQoKSBjb25zdCB7IHJldHVybiBtX2V2ZW50LmdldCgpOyB9Ci0KICAgICBjb25z
dCBTdHJpbmcmIHJlZmVycmVyKCkgY29uc3QgeyByZXR1cm4gbV9yZWZlcnJlcjsgfQotICAgIHZv
aWQgc2V0UmVmZXJyZXIoY29uc3QgU3RyaW5nJiByZWZlcnJlcikgeyBtX3JlZmVycmVyID0gcmVm
ZXJyZXI7IH0KICAgICBjb25zdCBTdHJpbmcmIG9yaWdpbigpIGNvbnN0IHsgcmV0dXJuIG1fb3Jp
Z2luOyB9CisKKyAgICB2b2lkIGNsZWFyVGFyZ2V0KCkgeyBtX3RhcmdldCA9IHsgfTsgfQorICAg
IHZvaWQgc2V0UmVmZXJyZXIoY29uc3QgU3RyaW5nJiByZWZlcnJlcikgeyBtX3JlZmVycmVyID0g
cmVmZXJyZXI7IH0KICAgICB2b2lkIHNldE9yaWdpbihjb25zdCBTdHJpbmcmIG9yaWdpbikgeyBt
X29yaWdpbiA9IG9yaWdpbjsgfQogCiBwcml2YXRlOgotICAgIEZvcm1TdWJtaXNzaW9uKE1ldGhv
ZCwgY29uc3QgVVJMJiBhY3Rpb24sIGNvbnN0IFN0cmluZyYgdGFyZ2V0LCBjb25zdCBTdHJpbmcm
IGNvbnRlbnRUeXBlLCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIFBhc3NSZWZQdHI8Rm9ybURhdGE+
LCBjb25zdCBTdHJpbmcmIGJvdW5kYXJ5LCBMb2NrSGlzdG9yeSwgUGFzc1JlZlB0cjxFdmVudD4p
OworICAgIEZvcm1TdWJtaXNzaW9uKE1ldGhvZCwgY29uc3QgVVJMJiBhY3Rpb24sIGNvbnN0IFN0
cmluZyYgdGFyZ2V0LCBjb25zdCBTdHJpbmcmIGNvbnRlbnRUeXBlLCBSZWY8Rm9ybVN0YXRlPiYm
LCBSZWY8Rm9ybURhdGE+JiYsIGNvbnN0IFN0cmluZyYgYm91bmRhcnksIExvY2tIaXN0b3J5LCBF
dmVudCopOwogCiAgICAgLy8gRklYTUU6IEhvbGQgYW4gaW5zdGFuY2Ugb2YgQXR0cmlidXRlcyBp
bnN0ZWFkIG9mIGluZGl2aWR1YWwgbWVtYmVycy4KICAgICBNZXRob2QgbV9tZXRob2Q7CiAgICAg
VVJMIG1fYWN0aW9uOwogICAgIFN0cmluZyBtX3RhcmdldDsKICAgICBTdHJpbmcgbV9jb250ZW50
VHlwZTsKLSAgICBSZWZQdHI8Rm9ybVN0YXRlPiBtX2Zvcm1TdGF0ZTsKLSAgICBSZWZQdHI8Rm9y
bURhdGE+IG1fZm9ybURhdGE7CisgICAgUmVmPEZvcm1TdGF0ZT4gbV9mb3JtU3RhdGU7CisgICAg
UmVmPEZvcm1EYXRhPiBtX2Zvcm1EYXRhOwogICAgIFN0cmluZyBtX2JvdW5kYXJ5OwogICAgIExv
Y2tIaXN0b3J5IG1fbG9ja0hpc3Rvcnk7CiAgICAgUmVmUHRyPEV2ZW50PiBtX2V2ZW50OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAKaW5kZXggNGNmZWJlZjExZmJlZDM3Mzg5MTEx
YjJiMWI0NGY4ZTZmZDc0NDM0My4uZTVjYzg5NTVkMzZkNGIwOTg0NDU3NTI1ZDc5MWRkYzIzY2Ez
OTJiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCkBAIC0zNjYsMTcgKzM2
NiwxNSBAQCB2b2lkIEZyYW1lTG9hZGVyOjp1cmxTZWxlY3RlZChjb25zdCBGcmFtZUxvYWRSZXF1
ZXN0JiBwYXNzZWRSZXF1ZXN0LCBFdmVudCogdHJpZwogCiB2b2lkIEZyYW1lTG9hZGVyOjpzdWJt
aXRGb3JtKFJlZjxGb3JtU3VibWlzc2lvbj4mJiBzdWJtaXNzaW9uKQogewotICAgIEFTU0VSVChz
dWJtaXNzaW9uLT5tZXRob2QoKSA9PSBGb3JtU3VibWlzc2lvbjo6UG9zdE1ldGhvZCB8fCBzdWJt
aXNzaW9uLT5tZXRob2QoKSA9PSBGb3JtU3VibWlzc2lvbjo6R2V0TWV0aG9kKTsKKyAgICBBU1NF
UlQoc3VibWlzc2lvbi0+bWV0aG9kKCkgPT0gRm9ybVN1Ym1pc3Npb246Ok1ldGhvZDo6UG9zdCB8
fCBzdWJtaXNzaW9uLT5tZXRob2QoKSA9PSBGb3JtU3VibWlzc2lvbjo6TWV0aG9kOjpHZXQpOwog
CiAgICAgLy8gRklYTUU6IEZpbmQgYSBnb29kIHNwb3QgZm9yIHRoZXNlLgotICAgIEFTU0VSVChz
dWJtaXNzaW9uLT5kYXRhKCkpOwotICAgIEFTU0VSVChzdWJtaXNzaW9uLT5zdGF0ZSgpKTsKLSAg
ICBBU1NFUlQoIXN1Ym1pc3Npb24tPnN0YXRlKCktPnNvdXJjZURvY3VtZW50KCktPmZyYW1lKCkg
fHwgc3VibWlzc2lvbi0+c3RhdGUoKS0+c291cmNlRG9jdW1lbnQoKS0+ZnJhbWUoKSA9PSAmbV9m
cmFtZSk7CisgICAgQVNTRVJUKCFzdWJtaXNzaW9uLT5zdGF0ZSgpLnNvdXJjZURvY3VtZW50KCku
ZnJhbWUoKSB8fCBzdWJtaXNzaW9uLT5zdGF0ZSgpLnNvdXJjZURvY3VtZW50KCkuZnJhbWUoKSA9
PSAmbV9mcmFtZSk7CiAKICAgICBpZiAoIW1fZnJhbWUucGFnZSgpKQogICAgICAgICByZXR1cm47
CiAKLSAgICBpZiAoc3VibWlzc2lvbi0+c3RhdGUoKS0+c291cmNlRG9jdW1lbnQoKS0+cGFnZUNh
Y2hlU3RhdGUoKSAhPSBEb2N1bWVudDo6Tm90SW5QYWdlQ2FjaGUpCisgICAgaWYgKHN1Ym1pc3Np
b24tPnN0YXRlKCkuc291cmNlRG9jdW1lbnQoKS5wYWdlQ2FjaGVTdGF0ZSgpICE9IERvY3VtZW50
OjpOb3RJblBhZ2VDYWNoZSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKHN1Ym1pc3Npb24t
PmFjdGlvbigpLmlzRW1wdHkoKSkKQEAgLTM5OCwxMiArMzk2LDEyIEBAIHZvaWQgRnJhbWVMb2Fk
ZXI6OnN1Ym1pdEZvcm0oUmVmPEZvcm1TdWJtaXNzaW9uPiYmIHN1Ym1pc3Npb24pCiAgICAgICAg
IHJldHVybjsKICAgICB9CiAKLSAgICBGcmFtZSogdGFyZ2V0RnJhbWUgPSBmaW5kRnJhbWVGb3JO
YXZpZ2F0aW9uKHN1Ym1pc3Npb24tPnRhcmdldCgpLCBzdWJtaXNzaW9uLT5zdGF0ZSgpLT5zb3Vy
Y2VEb2N1bWVudCgpKTsKKyAgICBGcmFtZSogdGFyZ2V0RnJhbWUgPSBmaW5kRnJhbWVGb3JOYXZp
Z2F0aW9uKHN1Ym1pc3Npb24tPnRhcmdldCgpLCAmc3VibWlzc2lvbi0+c3RhdGUoKS5zb3VyY2VE
b2N1bWVudCgpKTsKICAgICBpZiAoIXRhcmdldEZyYW1lKSB7CiAgICAgICAgIGlmICghRE9NV2lu
ZG93OjphbGxvd1BvcFVwKCZtX2ZyYW1lKSAmJiAhU2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vzc2lu
Z1VzZXJHZXN0dXJlKCkpCiAgICAgICAgICAgICByZXR1cm47CiAKLSAgICAgICAgLy8gRklYTUU6
IHRhcmdldEZyYW1lIGNhbiBiZSAwIGZvciB0d28gZGlzdGluY3QgcmVhc29uczoKKyAgICAgICAg
Ly8gRklYTUU6IHRhcmdldEZyYW1lIGNhbiBiZSBudWxsIGZvciB0d28gZGlzdGluY3QgcmVhc29u
czoKICAgICAgICAgLy8gMS4gVGhlIGZyYW1lIHdhcyBub3QgZm91bmQgYnkgbmFtZSwgc28gd2Ug
c2hvdWxkIHRyeSBvcGVuaW5nIGEgbmV3IHdpbmRvdy4KICAgICAgICAgLy8gMi4gVGhlIGZyYW1l
IHdhcyBmb3VuZCwgYnV0IG5hdmlnYXRpbmcgaXQgd2FzIG5vdCBhbGxvd2VkLCBlLmcuIGJ5IEhU
TUw1IHNhbmRib3ggb3IgYnkgb3JpZ2luIGNoZWNrcy4KICAgICAgICAgLy8gQ29udGludWluZyBm
b3JtIHN1Ym1pc3Npb24gbWFrZXMgbm8gc2Vuc2UgaW4gdGhlIGxhdHRlciBjYXNlLgpAQCAtNDM0
LDcgKzQzMiw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6OnN1Ym1pdEZvcm0oUmVmPEZvcm1TdWJtaXNz
aW9uPiYmIHN1Ym1pc3Npb24pCiAgICAgICAgIG1fc3VibWl0dGVkRm9ybVVSTCA9IHN1Ym1pc3Np
b24tPnJlcXVlc3RVUkwoKTsKICAgICB9CiAKLSAgICBzdWJtaXNzaW9uLT5kYXRhKCktPmdlbmVy
YXRlRmlsZXMobV9mcmFtZS5kb2N1bWVudCgpKTsKKyAgICBzdWJtaXNzaW9uLT5kYXRhKCkuZ2Vu
ZXJhdGVGaWxlcyhtX2ZyYW1lLmRvY3VtZW50KCkpOwogICAgIHN1Ym1pc3Npb24tPnNldFJlZmVy
cmVyKG91dGdvaW5nUmVmZXJyZXIoKSk7CiAgICAgc3VibWlzc2lvbi0+c2V0T3JpZ2luKG91dGdv
aW5nT3JpZ2luKCkpOwogCkBAIC02NjAsMjAgKzY1OCwxOCBAQCB2b2lkIEZyYW1lTG9hZGVyOjpy
ZWNlaXZlZEZpcnN0RGF0YSgpCiAgICAgaWYgKCFtX2RvY3VtZW50TG9hZGVyKQogICAgICAgICBy
ZXR1cm47CiAKKyAgICBBU1NFUlQobV9mcmFtZS5kb2N1bWVudCgpKTsKKyAgICBhdXRvJiBkb2N1
bWVudCA9ICptX2ZyYW1lLmRvY3VtZW50KCk7CisKICAgICBkb3VibGUgZGVsYXk7CiAgICAgU3Ry
aW5nIHVybFN0cmluZzsKICAgICBpZiAoIXBhcnNlSFRUUFJlZnJlc2gobV9kb2N1bWVudExvYWRl
ci0+cmVzcG9uc2UoKS5odHRwSGVhZGVyRmllbGQoSFRUUEhlYWRlck5hbWU6OlJlZnJlc2gpLCBk
ZWxheSwgdXJsU3RyaW5nKSkKICAgICAgICAgcmV0dXJuOwotICAgIFVSTCBjb21wbGV0ZWRVUkw7
Ci0gICAgaWYgKHVybFN0cmluZy5pc0VtcHR5KCkpCi0gICAgICAgIGNvbXBsZXRlZFVSTCA9IG1f
ZnJhbWUuZG9jdW1lbnQoKS0+dXJsKCk7Ci0gICAgZWxzZQotICAgICAgICBjb21wbGV0ZWRVUkwg
PSBtX2ZyYW1lLmRvY3VtZW50KCktPmNvbXBsZXRlVVJMKHVybFN0cmluZyk7Ci0KKyAgICBhdXRv
IGNvbXBsZXRlZFVSTCA9IHVybFN0cmluZy5pc0VtcHR5KCkgPyBkb2N1bWVudC51cmwoKSA6IGRv
Y3VtZW50LmNvbXBsZXRlVVJMKHVybFN0cmluZyk7CiAgICAgaWYgKCFwcm90b2NvbElzSmF2YVNj
cmlwdChjb21wbGV0ZWRVUkwpKQotICAgICAgICBtX2ZyYW1lLm5hdmlnYXRpb25TY2hlZHVsZXIo
KS5zY2hlZHVsZVJlZGlyZWN0KG1fZnJhbWUuZG9jdW1lbnQoKSwgZGVsYXksIGNvbXBsZXRlZFVS
TCk7CisgICAgICAgIG1fZnJhbWUubmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlUmVkaXJl
Y3QoZG9jdW1lbnQsIGRlbGF5LCBjb21wbGV0ZWRVUkwpOwogICAgIGVsc2UgewotICAgICAgICBT
dHJpbmcgbWVzc2FnZSA9ICJSZWZ1c2VkIHRvIHJlZnJlc2ggIiArIG1fZnJhbWUuZG9jdW1lbnQo
KS0+dXJsKCkuc3RyaW5nQ2VudGVyRWxsaXBzaXplZFRvTGVuZ3RoKCkgKyAiIHRvIGEgamF2YXNj
cmlwdDogVVJMIjsKKyAgICAgICAgYXV0byBtZXNzYWdlID0gIlJlZnVzZWQgdG8gcmVmcmVzaCAi
ICsgZG9jdW1lbnQudXJsKCkuc3RyaW5nQ2VudGVyRWxsaXBzaXplZFRvTGVuZ3RoKCkgKyAiIHRv
IGEgamF2YXNjcmlwdDogVVJMIjsKICAgICAgICAgbV9mcmFtZS5kb2N1bWVudCgpLT5hZGRDb25z
b2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpTZWN1cml0eSwgTWVzc2FnZUxldmVsOjpFcnJvciwg
bWVzc2FnZSk7CiAgICAgfQogfQpAQCAtMTEzOSw3ICsxMTM1LDcgQEAgdm9pZCBGcmFtZUxvYWRl
cjo6bG9hZEZyYW1lUmVxdWVzdChjb25zdCBGcmFtZUxvYWRSZXF1ZXN0JiByZXF1ZXN0LCBFdmVu
dCogZXZlbnQKICAgICAgICAgfHwgZXZlbnQtPnRhcmdldCgpLT50b05vZGUoKS0+ZG9jdW1lbnQo
KS5wYWdlQ2FjaGVTdGF0ZSgpID09IERvY3VtZW50OjpOb3RJblBhZ2VDYWNoZSk7CiAKICAgICAv
LyBQcm90ZWN0IGZyYW1lIGZyb20gZ2V0dGluZyBibG93biBhd2F5IGluc2lkZSBkaXNwYXRjaEJl
Zm9yZUxvYWRFdmVudCBpbiBsb2FkV2l0aERvY3VtZW50TG9hZGVyLgotICAgIFJlZjxGcmFtZT4g
cHJvdGVjdChtX2ZyYW1lKTsKKyAgICBhdXRvIHByb3RlY3RGcmFtZSA9IG1ha2VSZWYobV9mcmFt
ZSk7CiAKICAgICBVUkwgdXJsID0gcmVxdWVzdC5yZXNvdXJjZVJlcXVlc3QoKS51cmwoKTsKIApA
QCAtMTE3Miw3ICsxMTY4LDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6bG9hZEZyYW1lUmVxdWVzdChj
b25zdCBGcmFtZUxvYWRSZXF1ZXN0JiByZXF1ZXN0LCBFdmVudCogZXZlbnQKIAogICAgIC8vIEZJ
WE1FOiBJdCdzIHBvc3NpYmxlIHRoaXMgdGFyZ2V0RnJhbWUgd2lsbCBub3QgYmUgdGhlIHNhbWUg
ZnJhbWUgdGhhdCB3YXMgdGFyZ2V0ZWQgYnkgdGhlIGFjdHVhbAogICAgIC8vIGxvYWQgaWYgZnJh
bWUgbmFtZXMgaGF2ZSBjaGFuZ2VkLgotICAgIEZyYW1lKiBzb3VyY2VGcmFtZSA9IGZvcm1TdGF0
ZSA/IGZvcm1TdGF0ZS0+c291cmNlRG9jdW1lbnQoKS0+ZnJhbWUoKSA6ICZtX2ZyYW1lOworICAg
IEZyYW1lKiBzb3VyY2VGcmFtZSA9IGZvcm1TdGF0ZSA/IGZvcm1TdGF0ZS0+c291cmNlRG9jdW1l
bnQoKS5mcmFtZSgpIDogJm1fZnJhbWU7CiAgICAgaWYgKCFzb3VyY2VGcmFtZSkKICAgICAgICAg
c291cmNlRnJhbWUgPSAmbV9mcmFtZTsKICAgICBGcmFtZSogdGFyZ2V0RnJhbWUgPSBzb3VyY2VG
cmFtZS0+bG9hZGVyKCkuZmluZEZyYW1lRm9yTmF2aWdhdGlvbihyZXF1ZXN0LmZyYW1lTmFtZSgp
KTsKQEAgLTEyNTYsNyArMTI1Miw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6OmxvYWRVUkwoY29uc3Qg
RnJhbWVMb2FkUmVxdWVzdCYgZnJhbWVMb2FkUmVxdWVzdCwgY29uc3QgU3RyaW5nCiAgICAgICAg
IG9sZERvY3VtZW50TG9hZGVyLT5zZXRMYXN0Q2hlY2tlZFJlcXVlc3QoUmVzb3VyY2VSZXF1ZXN0
KCkpOwogICAgICAgICBwb2xpY3lDaGVja2VyKCkuc3RvcENoZWNrKCk7CiAgICAgICAgIHBvbGlj
eUNoZWNrZXIoKS5zZXRMb2FkVHlwZShuZXdMb2FkVHlwZSk7Ci0gICAgICAgIHBvbGljeUNoZWNr
ZXIoKS5jaGVja05hdmlnYXRpb25Qb2xpY3kocmVxdWVzdCwgZmFsc2UgLyogZGlkUmVjZWl2ZVJl
ZGlyZWN0UmVzcG9uc2UgKi8sIG9sZERvY3VtZW50TG9hZGVyLmdldCgpLCBmb3JtU3RhdGUsIFt0
aGlzXShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSosIGJvb2wgc2hv
dWxkQ29udGludWUpIHsKKyAgICAgICAgcG9saWN5Q2hlY2tlcigpLmNoZWNrTmF2aWdhdGlvblBv
bGljeShyZXF1ZXN0LCBmYWxzZSAvKiBkaWRSZWNlaXZlUmVkaXJlY3RSZXNwb25zZSAqLywgb2xk
RG9jdW1lbnRMb2FkZXIuZ2V0KCksIGZvcm1TdGF0ZSwgW3RoaXNdIChjb25zdCBSZXNvdXJjZVJl
cXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSosIGJvb2wgc2hvdWxkQ29udGludWUpIHsKICAgICAg
ICAgICAgIGNvbnRpbnVlRnJhZ21lbnRTY3JvbGxBZnRlck5hdmlnYXRpb25Qb2xpY3kocmVxdWVz
dCwgc2hvdWxkQ29udGludWUpOwogICAgICAgICB9KTsKICAgICAgICAgcmV0dXJuOwpAQCAtMTQ1
Miw3ICsxNDQ4LDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6bG9hZFdpdGhEb2N1bWVudExvYWRlcihE
b2N1bWVudExvYWRlciogbG9hZGVyLCBGcmFtZUxvYWRUeXBlIHQKICAgICAgICAgb2xkRG9jdW1l
bnRMb2FkZXItPnNldFRyaWdnZXJpbmdBY3Rpb24oYWN0aW9uKTsKICAgICAgICAgb2xkRG9jdW1l
bnRMb2FkZXItPnNldExhc3RDaGVja2VkUmVxdWVzdChSZXNvdXJjZVJlcXVlc3QoKSk7CiAgICAg
ICAgIHBvbGljeUNoZWNrZXIoKS5zdG9wQ2hlY2soKTsKLSAgICAgICAgcG9saWN5Q2hlY2tlcigp
LmNoZWNrTmF2aWdhdGlvblBvbGljeShsb2FkZXItPnJlcXVlc3QoKSwgZmFsc2UgLyogZGlkUmVj
ZWl2ZVJlZGlyZWN0UmVzcG9uc2UgKi8sIG9sZERvY3VtZW50TG9hZGVyLmdldCgpLCBmb3JtU3Rh
dGUsIFt0aGlzXShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSosIGJv
b2wgc2hvdWxkQ29udGludWUpIHsKKyAgICAgICAgcG9saWN5Q2hlY2tlcigpLmNoZWNrTmF2aWdh
dGlvblBvbGljeShsb2FkZXItPnJlcXVlc3QoKSwgZmFsc2UgLyogZGlkUmVjZWl2ZVJlZGlyZWN0
UmVzcG9uc2UgKi8sIG9sZERvY3VtZW50TG9hZGVyLmdldCgpLCBmb3JtU3RhdGUsIFt0aGlzXSAo
Y29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBGb3JtU3RhdGUqLCBib29sIHNob3VsZENv
bnRpbnVlKSB7CiAgICAgICAgICAgICBjb250aW51ZUZyYWdtZW50U2Nyb2xsQWZ0ZXJOYXZpZ2F0
aW9uUG9saWN5KHJlcXVlc3QsIHNob3VsZENvbnRpbnVlKTsKICAgICAgICAgfSk7CiAgICAgICAg
IHJldHVybjsKQEAgLTE0NzksNyArMTQ3NSw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6OmxvYWRXaXRo
RG9jdW1lbnRMb2FkZXIoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgRnJhbWVMb2FkVHlwZSB0CiAg
ICAgICAgIH0KICAgICB9CiAKLSAgICBwb2xpY3lDaGVja2VyKCkuY2hlY2tOYXZpZ2F0aW9uUG9s
aWN5KGxvYWRlci0+cmVxdWVzdCgpLCBmYWxzZSAvKiBkaWRSZWNlaXZlUmVkaXJlY3RSZXNwb25z
ZSAqLywgbG9hZGVyLCBmb3JtU3RhdGUsIFt0aGlzLCBhbGxvd05hdmlnYXRpb25Ub0ludmFsaWRV
UkxdKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUs
IGJvb2wgc2hvdWxkQ29udGludWUpIHsKKyAgICBwb2xpY3lDaGVja2VyKCkuY2hlY2tOYXZpZ2F0
aW9uUG9saWN5KGxvYWRlci0+cmVxdWVzdCgpLCBmYWxzZSAvKiBkaWRSZWNlaXZlUmVkaXJlY3RS
ZXNwb25zZSAqLywgbG9hZGVyLCBmb3JtU3RhdGUsIFt0aGlzLCBhbGxvd05hdmlnYXRpb25Ub0lu
dmFsaWRVUkxdIChjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSogZm9y
bVN0YXRlLCBib29sIHNob3VsZENvbnRpbnVlKSB7CiAgICAgICAgIGNvbnRpbnVlTG9hZEFmdGVy
TmF2aWdhdGlvblBvbGljeShyZXF1ZXN0LCBmb3JtU3RhdGUsIHNob3VsZENvbnRpbnVlLCBhbGxv
d05hdmlnYXRpb25Ub0ludmFsaWRVUkwpOwogICAgIH0pOwogfQpAQCAtMjcxMSw3ICsyNzA3LDcg
QEAgdm9pZCBGcmFtZUxvYWRlcjo6bG9hZFBvc3RSZXF1ZXN0KGNvbnN0IEZyYW1lTG9hZFJlcXVl
c3QmIHJlcXVlc3QsIGNvbnN0IFN0cmluZyYKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAg
fQogCi0gICAgICAgIHBvbGljeUNoZWNrZXIoKS5jaGVja05ld1dpbmRvd1BvbGljeShhY3Rpb24s
IHdvcmtpbmdSZXNvdXJjZVJlcXVlc3QsIFdURk1vdmUoZm9ybVN0YXRlKSwgZnJhbWVOYW1lLCBb
dGhpcywgYWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMLCBvcGVuZXJQb2xpY3ldKGNvbnN0IFJl
c291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIGNvbnN0IFN0cmlu
ZyYgZnJhbWVOYW1lLCBjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIGJvb2wgc2hvdWxk
Q29udGludWUpIHsKKyAgICAgICAgcG9saWN5Q2hlY2tlcigpLmNoZWNrTmV3V2luZG93UG9saWN5
KGFjdGlvbiwgd29ya2luZ1Jlc291cmNlUmVxdWVzdCwgV1RGTW92ZShmb3JtU3RhdGUpLCBmcmFt
ZU5hbWUsIFt0aGlzLCBhbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkwsIG9wZW5lclBvbGljeV0g
KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIGNv
bnN0IFN0cmluZyYgZnJhbWVOYW1lLCBjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIGJv
b2wgc2hvdWxkQ29udGludWUpIHsKICAgICAgICAgICAgIGNvbnRpbnVlTG9hZEFmdGVyTmV3V2lu
ZG93UG9saWN5KHJlcXVlc3QsIGZvcm1TdGF0ZSwgZnJhbWVOYW1lLCBhY3Rpb24sIHNob3VsZENv
bnRpbnVlLCBhbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkwsIG9wZW5lclBvbGljeSk7CiAgICAg
ICAgIH0pOwogICAgICAgICByZXR1cm47CkBAIC0yNzY5LDExICsyNzY1LDExIEBAIHVuc2lnbmVk
IGxvbmcgRnJhbWVMb2FkZXI6OmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoY29uc3QgUmVzb3Vy
Y2VSZXF1ZXN0JiByZXF1CiAgICAgaWYgKGVycm9yLmlzTnVsbCgpKSB7CiAgICAgICAgIEFTU0VS
VCghbmV3UmVxdWVzdC5pc051bGwoKSk7CiAKLSAgICAgICAgaWYgKCFkb2N1bWVudExvYWRlcigp
LT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5tYXliZUxvYWRTeW5jaHJvbm91c2x5KG5ld1JlcXVl
c3QsIGVycm9yLCByZXNwb25zZSwgZGF0YSkpIHsKKyAgICAgICAgaWYgKCFkb2N1bWVudExvYWRl
cigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLm1heWJlTG9hZFN5bmNocm9ub3VzbHkobmV3UmVx
dWVzdCwgZXJyb3IsIHJlc3BvbnNlLCBkYXRhKSkgewogICAgICAgICAgICAgVmVjdG9yPGNoYXI+
IGJ1ZmZlcjsKICAgICAgICAgICAgIHBsYXRmb3JtU3RyYXRlZ2llcygpLT5sb2FkZXJTdHJhdGVn
eSgpLT5sb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KG5ldHdvcmtpbmdDb250ZXh0KCksIGlkZW50
aWZpZXIsIG5ld1JlcXVlc3QsIHN0b3JlZENyZWRlbnRpYWxzLCBjbGllbnRDcmVkZW50aWFsUG9s
aWN5LCBlcnJvciwgcmVzcG9uc2UsIGJ1ZmZlcik7CiAgICAgICAgICAgICBkYXRhID0gU2hhcmVk
QnVmZmVyOjphZG9wdFZlY3RvcihidWZmZXIpOwotICAgICAgICAgICAgZG9jdW1lbnRMb2FkZXIo
KS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+bWF5YmVMb2FkRmFsbGJhY2tTeW5jaHJvbm91c2x5
KG5ld1JlcXVlc3QsIGVycm9yLCByZXNwb25zZSwgZGF0YSk7CisgICAgICAgICAgICBkb2N1bWVu
dExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLm1heWJlTG9hZEZhbGxiYWNrU3luY2hy
b25vdXNseShuZXdSZXF1ZXN0LCBlcnJvciwgcmVzcG9uc2UsIGRhdGEpOwogICAgICAgICAgICAg
UmVzb3VyY2VMb2FkT2JzZXJ2ZXI6OnNoYXJlZE9ic2VydmVyKCkubG9nU3VicmVzb3VyY2VMb2Fk
aW5nKCZtX2ZyYW1lLCBuZXdSZXF1ZXN0LCByZXNwb25zZSk7CiAgICAgICAgIH0KICAgICB9CkBA
IC0zMTA4LDcgKzMxMDQsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpjb250aW51ZUxvYWRBZnRlck5h
dmlnYXRpb25Qb2xpY3koY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZQogICAgICAgICByZXR1
cm47CiAgICAgfQogCi0gICAgbV9jbGllbnQuZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShmb3JtU3Rh
dGUsIFt0aGlzXShQb2xpY3lBY3Rpb24gYWN0aW9uKSB7CisgICAgbV9jbGllbnQuZGlzcGF0Y2hX
aWxsU3VibWl0Rm9ybSgqZm9ybVN0YXRlLCBbdGhpc10gKFBvbGljeUFjdGlvbiBhY3Rpb24pIHsK
ICAgICAgICAgcG9saWN5Q2hlY2tlcigpLmNvbnRpbnVlTG9hZEFmdGVyV2lsbFN1Ym1pdEZvcm0o
YWN0aW9uKTsKICAgICB9KTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9G
cmFtZUxvYWRlckNsaWVudC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xp
ZW50LmgKaW5kZXggZDEzYjBhMDc5ZGU5OWYzODc3MDU1MjQ3OGE3ZmJiMzIwODhkOWNmNS4uNGI1
NTdmYzc3ZGE2YjY0Zjc1NDJiMmI0MDAxMTQ4YmFjNDI0YjZlNSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50LmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJp
Z2h0IChDKSAyMDA2LTIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29w
eXJpZ2h0IChDKSAyMDA2LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICog
Q29weXJpZ2h0IChDKSAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgog
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CkBAIC0xNzcsMTQgKzE3NywxNCBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2
b2lkIGRpc3BhdGNoU2hvdygpID0gMDsKIAogICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaERlY2lk
ZVBvbGljeUZvclJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmLCBGcmFtZVBvbGljeUZ1bmN0aW9uKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIGRp
c3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rp
b24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIGNvbnN0
IFN0cmluZyYgZnJhbWVOYW1lLCBGcmFtZVBvbGljeUZ1bmN0aW9uKSA9IDA7Ci0gICAgdmlydHVh
bCB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZp
Z2F0aW9uQWN0aW9uJiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgUGFzc1JlZlB0cjxGb3JtU3Rh
dGU+LCBGcmFtZVBvbGljeUZ1bmN0aW9uKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGRpc3BhdGNo
RGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mLCBj
b25zdCBSZXNvdXJjZVJlcXVlc3QmLCBGb3JtU3RhdGUqLCBjb25zdCBTdHJpbmcmIGZyYW1lTmFt
ZSwgRnJhbWVQb2xpY3lGdW5jdGlvbikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaERl
Y2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNv
bnN0IFJlc291cmNlUmVxdWVzdCYsIEZvcm1TdGF0ZSosIEZyYW1lUG9saWN5RnVuY3Rpb24pID0g
MDsKICAgICB2aXJ0dWFsIHZvaWQgY2FuY2VsUG9saWN5Q2hlY2soKSA9IDA7CiAKICAgICB2aXJ0
dWFsIHZvaWQgZGlzcGF0Y2hVbmFibGVUb0ltcGxlbWVudFBvbGljeShjb25zdCBSZXNvdXJjZUVy
cm9yJikgPSAwOwogCi0gICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVu
dChQYXNzUmVmUHRyPEZvcm1TdGF0ZT4pID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hX
aWxsU3VibWl0Rm9ybShQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIEZyYW1lUG9saWN5RnVuY3Rpb24p
ID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJlZjxG
b3JtU3RhdGU+JiYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hXaWxsU3VibWl0Rm9y
bShGb3JtU3RhdGUmLCBGcmFtZVBvbGljeUZ1bmN0aW9uKSA9IDA7CiAKICAgICB2aXJ0dWFsIHZv
aWQgcmV2ZXJ0VG9Qcm92aXNpb25hbFN0YXRlKERvY3VtZW50TG9hZGVyKikgPSAwOwogICAgIHZp
cnR1YWwgdm9pZCBzZXRNYWluRG9jdW1lbnRFcnJvcihEb2N1bWVudExvYWRlciosIGNvbnN0IFJl
c291cmNlRXJyb3ImKSA9IDA7CkBAIC0yNzIsMTIgKzI3MiwxMiBAQCBwdWJsaWM6CiAgICAgdmly
dHVhbCBib29sIGNhbkNhY2hlUGFnZSgpIGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgY29u
dmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKERvY3VtZW50TG9hZGVyKiwgU2Vzc2lvbklE
LCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgPSAwOwog
Ci0gICAgdmlydHVhbCBSZWZQdHI8RnJhbWU+IGNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYsIGNvbnN0
IFN0cmluZyYgbmFtZSwgSFRNTEZyYW1lT3duZXJFbGVtZW50KiwgY29uc3QgU3RyaW5nJiByZWZl
cnJlciwgYm9vbCBhbGxvd3NTY3JvbGxpbmcsIGludCBtYXJnaW5XaWR0aCwgaW50IG1hcmdpbkhl
aWdodCkgPSAwOwotICAgIHZpcnR1YWwgUmVmUHRyPFdpZGdldD4gY3JlYXRlUGx1Z2luKGNvbnN0
IEludFNpemUmLCBIVE1MUGx1Z0luRWxlbWVudCosIGNvbnN0IFVSTCYsIGNvbnN0IFZlY3RvcjxT
dHJpbmc+JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBTdHJpbmcmLCBib29sIGxvYWRN
YW51YWxseSkgPSAwOworICAgIHZpcnR1YWwgUmVmUHRyPEZyYW1lPiBjcmVhdGVGcmFtZShjb25z
dCBVUkwmLCBjb25zdCBTdHJpbmcmIG5hbWUsIEhUTUxGcmFtZU93bmVyRWxlbWVudCYsIGNvbnN0
IFN0cmluZyYgcmVmZXJyZXIsIGJvb2wgYWxsb3dzU2Nyb2xsaW5nLCBpbnQgbWFyZ2luV2lkdGgs
IGludCBtYXJnaW5IZWlnaHQpID0gMDsKKyAgICB2aXJ0dWFsIFJlZlB0cjxXaWRnZXQ+IGNyZWF0
ZVBsdWdpbihjb25zdCBJbnRTaXplJiwgSFRNTFBsdWdJbkVsZW1lbnQmLCBjb25zdCBVUkwmLCBj
b25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgU3RyaW5n
JiwgYm9vbCBsb2FkTWFudWFsbHkpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgcmVjcmVhdGVQbHVn
aW4oV2lkZ2V0KikgPSAwOwogICAgIHZpcnR1YWwgdm9pZCByZWRpcmVjdERhdGFUb1BsdWdpbihX
aWRnZXQqIHBsdWdpbldpZGdldCkgPSAwOwogCi0gICAgdmlydHVhbCBQYXNzUmVmUHRyPFdpZGdl
dD4gY3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXplJiwgSFRNTEFwcGxldEVsZW1l
bnQqLCBjb25zdCBVUkwmIGJhc2VVUkwsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVz
LCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpID0gMDsKKyAgICB2aXJ0dWFsIFJl
ZlB0cjxXaWRnZXQ+IGNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYsIEhUTUxB
cHBsZXRFbGVtZW50JiwgY29uc3QgVVJMJiBiYXNlVVJMLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYg
cGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKSA9IDA7CiAKICAg
ICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hEaWRGYWlsVG9TdGFydFBsdWdpbihjb25zdCBQbHVnaW5W
aWV3QmFzZSopIGNvbnN0IHsgfQogCkBAIC0yOTQsNiArMjk0LDcgQEAgcHVibGljOgogICAgIHZp
cnR1YWwgTlNDYWNoZWRVUkxSZXNwb25zZSogd2lsbENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2Fk
ZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2UqKSBjb25z
dCA9IDA7CiAgICAgdmlydHVhbCBOU0RpY3Rpb25hcnkgKmRhdGFEZXRlY3Rpb25Db250ZXh0KCkg
eyByZXR1cm4gbnVsbHB0cjsgfQogI2VuZGlmCisKICNpZiBQTEFURk9STShXSU4pICYmIFVTRShD
RlVSTENPTk5FQ1RJT04pCiAgICAgLy8gRklYTUU6IFdpbmRvd3Mgc2hvdWxkIHVzZSB3aWxsQ2Fj
aGVSZXNwb25zZSAtIDxodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTcy
NTc+LgogICAgIHZpcnR1YWwgYm9vbCBzaG91bGRDYWNoZVJlc3BvbnNlKERvY3VtZW50TG9hZGVy
KiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgY29u
c3QgdW5zaWduZWQgY2hhciogZGF0YSwgdW5zaWduZWQgbG9uZyBsb25nIGxlbmd0aCkgPSAwOwpA
QCAtMzA5LDEwICszMTAsMTAgQEAgcHVibGljOgogICAgIC8vIENsaWVudHMgdGhhdCBnZW5lcmFs
bHkgZGlzYWxsb3cgdW5pdmVyc2FsIGFjY2VzcyBjYW4gbWFrZSBleGNlcHRpb25zIGZvciBwYXJ0
aWN1bGFyIFVSTHMuCiAgICAgdmlydHVhbCBib29sIHNob3VsZEZvcmNlVW5pdmVyc2FsQWNjZXNz
RnJvbUxvY2FsVVJMKGNvbnN0IFVSTCYpIHsgcmV0dXJuIGZhbHNlOyB9CiAKLSAgICB2aXJ0dWFs
IFBhc3NSZWZQdHI8RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRlTmV0d29ya2luZ0NvbnRl
eHQoKSA9IDA7CisgICAgdmlydHVhbCBSZWY8RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRl
TmV0d29ya2luZ0NvbnRleHQoKSA9IDA7CiAKICNpZiBFTkFCTEUoUkVRVUVTVF9BVVRPQ09NUExF
VEUpCi0gICAgdmlydHVhbCB2b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxldGUoUGFzc1JlZlB0cjxG
b3JtU3RhdGU+KSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxldGUo
UmVmPEZvcm1TdGF0ZT4mJikgPSAwOwogI2VuZGlmCiAKICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxk
UGFpbnRCcm9rZW5JbWFnZShjb25zdCBVUkwmKSBjb25zdCB7IHJldHVybiB0cnVlOyB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvSGlzdG9yeUNvbnRyb2xsZXIuY3BwIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmNwcAppbmRleCAyOTViOTRhMWE1
NTViMmEyOGU3NTAzNmM2YjFkMDI1NzA3Mjk5N2NjLi4yNmE0YjMzOTZkMWU4N2EwMDYzZTBiNGMw
Y2EwNjY5MjIwNGE5MzcwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvSGlzdG9y
eUNvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9IaXN0b3J5Q29udHJv
bGxlci5jcHAKQEAgLTg0Niw3ICs4NDYsNyBAQCB2b2lkIEhpc3RvcnlDb250cm9sbGVyOjp1cGRh
dGVDdXJyZW50SXRlbSgpCiAgICAgfQogfQogCi12b2lkIEhpc3RvcnlDb250cm9sbGVyOjpwdXNo
U3RhdGUoUGFzc1JlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IHN0YXRlT2JqZWN0LCBjb25z
dCBTdHJpbmcmIHRpdGxlLCBjb25zdCBTdHJpbmcmIHVybFN0cmluZykKK3ZvaWQgSGlzdG9yeUNv
bnRyb2xsZXI6OnB1c2hTdGF0ZShSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiYmIHN0YXRl
T2JqZWN0LCBjb25zdCBTdHJpbmcmIHRpdGxlLCBjb25zdCBTdHJpbmcmIHVybFN0cmluZykKIHsK
ICAgICBpZiAoIW1fY3VycmVudEl0ZW0pCiAgICAgICAgIHJldHVybjsKQEAgLTg2MCw3ICs4NjAs
NyBAQCB2b2lkIEhpc3RvcnlDb250cm9sbGVyOjpwdXNoU3RhdGUoUGFzc1JlZlB0cjxTZXJpYWxp
emVkU2NyaXB0VmFsdWU+IHN0YXRlT2JqZWN0LAogICAgIC8vIE92ZXJyaWRlIGRhdGEgaW4gdGhl
IGN1cnJlbnQgaXRlbSAoY3JlYXRlZCBieSBjcmVhdGVJdGVtVHJlZSkgdG8gcmVmbGVjdAogICAg
IC8vIHRoZSBwdXNoU3RhdGUoKSBhcmd1bWVudHMuCiAgICAgbV9jdXJyZW50SXRlbS0+c2V0VGl0
bGUodGl0bGUpOwotICAgIG1fY3VycmVudEl0ZW0tPnNldFN0YXRlT2JqZWN0KHN0YXRlT2JqZWN0
KTsKKyAgICBtX2N1cnJlbnRJdGVtLT5zZXRTdGF0ZU9iamVjdChXVEZNb3ZlKHN0YXRlT2JqZWN0
KSk7CiAgICAgbV9jdXJyZW50SXRlbS0+c2V0VVJMU3RyaW5nKHVybFN0cmluZyk7CiAKICAgICBM
T0coSGlzdG9yeSwgIkhpc3RvcnlDb250cm9sbGVyICVwIHB1c2hTdGF0ZTogQWRkaW5nIHRvcCBp
dGVtICVwLCBzZXR0aW5nIHVybCBvZiBjdXJyZW50IGl0ZW0gJXAgdG8gJXMiLCB0aGlzLCB0b3BJ
dGVtLnB0cigpLCBtX2N1cnJlbnRJdGVtLmdldCgpLCB1cmxTdHJpbmcuYXNjaWkoKS5kYXRhKCkp
OwpAQCAtODc0LDcgKzg3NCw3IEBAIHZvaWQgSGlzdG9yeUNvbnRyb2xsZXI6OnB1c2hTdGF0ZShQ
YXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gc3RhdGVPYmplY3QsCiAgICAgbV9mcmFt
ZS5sb2FkZXIoKS5jbGllbnQoKS51cGRhdGVHbG9iYWxIaXN0b3J5KCk7CiB9CiAKLXZvaWQgSGlz
dG9yeUNvbnRyb2xsZXI6OnJlcGxhY2VTdGF0ZShQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRW
YWx1ZT4gc3RhdGVPYmplY3QsIGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgdXJs
U3RyaW5nKQordm9pZCBIaXN0b3J5Q29udHJvbGxlcjo6cmVwbGFjZVN0YXRlKFJlZlB0cjxTZXJp
YWxpemVkU2NyaXB0VmFsdWU+JiYgc3RhdGVPYmplY3QsIGNvbnN0IFN0cmluZyYgdGl0bGUsIGNv
bnN0IFN0cmluZyYgdXJsU3RyaW5nKQogewogICAgIGlmICghbV9jdXJyZW50SXRlbSkKICAgICAg
ICAgcmV0dXJuOwpAQCAtODg0LDcgKzg4NCw3IEBAIHZvaWQgSGlzdG9yeUNvbnRyb2xsZXI6OnJl
cGxhY2VTdGF0ZShQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gc3RhdGVPYmplCiAg
ICAgaWYgKCF1cmxTdHJpbmcuaXNFbXB0eSgpKQogICAgICAgICBtX2N1cnJlbnRJdGVtLT5zZXRV
UkxTdHJpbmcodXJsU3RyaW5nKTsKICAgICBtX2N1cnJlbnRJdGVtLT5zZXRUaXRsZSh0aXRsZSk7
Ci0gICAgbV9jdXJyZW50SXRlbS0+c2V0U3RhdGVPYmplY3Qoc3RhdGVPYmplY3QpOworICAgIG1f
Y3VycmVudEl0ZW0tPnNldFN0YXRlT2JqZWN0KFdURk1vdmUoc3RhdGVPYmplY3QpKTsKICAgICBt
X2N1cnJlbnRJdGVtLT5zZXRGb3JtRGF0YShudWxscHRyKTsKICAgICBtX2N1cnJlbnRJdGVtLT5z
ZXRGb3JtQ29udGVudFR5cGUoU3RyaW5nKCkpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvSGlzdG9yeUNvbnRyb2xsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9IaXN0
b3J5Q29udHJvbGxlci5oCmluZGV4IDEwZmYxZjE0YTMzZWY3NmI5MGJmZDEzZDQ2NTI4Yzc4NzVm
NWViZDUuLjNkMjVlMjg5YjIyZmIxZjk5NjNmNmRmYjMzNDc4OTU4MWQwOTI3MDEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9IaXN0b3J5Q29udHJvbGxlci5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9IaXN0b3J5Q29udHJvbGxlci5oCkBAIC04NCw4ICs4NCw4IEBAIHB1
YmxpYzoKICAgICBIaXN0b3J5SXRlbSogcHJvdmlzaW9uYWxJdGVtKCkgY29uc3QgeyByZXR1cm4g
bV9wcm92aXNpb25hbEl0ZW0uZ2V0KCk7IH0KICAgICB2b2lkIHNldFByb3Zpc2lvbmFsSXRlbShI
aXN0b3J5SXRlbSopOwogCi0gICAgdm9pZCBwdXNoU3RhdGUoUGFzc1JlZlB0cjxTZXJpYWxpemVk
U2NyaXB0VmFsdWU+LCBjb25zdCBTdHJpbmcmIHRpdGxlLCBjb25zdCBTdHJpbmcmIHVybCk7Ci0g
ICAgdm9pZCByZXBsYWNlU3RhdGUoUGFzc1JlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+LCBj
b25zdCBTdHJpbmcmIHRpdGxlLCBjb25zdCBTdHJpbmcmIHVybCk7CisgICAgdm9pZCBwdXNoU3Rh
dGUoUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4mJiwgY29uc3QgU3RyaW5nJiB0aXRsZSwg
Y29uc3QgU3RyaW5nJiB1cmwpOworICAgIHZvaWQgcmVwbGFjZVN0YXRlKFJlZlB0cjxTZXJpYWxp
emVkU2NyaXB0VmFsdWU+JiYsIGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgdXJs
KTsKIAogICAgIHZvaWQgc2V0RGVmZXJzTG9hZGluZyhib29sKTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL0ltYWdlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9JbWFnZUxvYWRlci5jcHAKaW5kZXggYTUzYWYxMWJiOWY5M2JhMmE4MTIzZGIxYTgxMGYzODg3
OTk2ZmRjNS4uMWIyZmMxYmI0OTdjN2Q0OTE5ZDE5YzYzOWFjMGVmNzI4ZWNlMDc5MyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ltYWdlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvSW1hZ2VMb2FkZXIuY3BwCkBAIC0xNzgsNyArMTc4LDcgQEAgdm9pZCBJ
bWFnZUxvYWRlcjo6dXBkYXRlRnJvbUVsZW1lbnQoKQogICAgICAgICBvcHRpb25zLnNhbWVPcmln
aW5EYXRhVVJMRmxhZyA9IFNhbWVPcmlnaW5EYXRhVVJMRmxhZzo6U2V0OwogCiAgICAgICAgIENh
Y2hlZFJlc291cmNlUmVxdWVzdCByZXF1ZXN0KFJlc291cmNlUmVxdWVzdChkb2N1bWVudC5jb21w
bGV0ZVVSTChzb3VyY2VVUkkoYXR0cikpKSwgb3B0aW9ucyk7Ci0gICAgICAgIHJlcXVlc3Quc2V0
SW5pdGlhdG9yKCZlbGVtZW50KCkpOworICAgICAgICByZXF1ZXN0LnNldEluaXRpYXRvcihlbGVt
ZW50KCkpOwogCiAgICAgICAgIHJlcXVlc3Quc2V0QXNQb3RlbnRpYWxseUNyb3NzT3JpZ2luKGVs
ZW1lbnQoKS5hdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKEhUTUxOYW1lczo6Y3Jvc3Nv
cmlnaW5BdHRyKSwgZG9jdW1lbnQpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvTmF2aWdhdGlvblNjaGVkdWxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdh
dGlvblNjaGVkdWxlci5jcHAKaW5kZXggN2VmZmFkN2ZhMWM1YWEzNDQ2ZWFjMDAyOTYxOGYxMmJi
NTc1YjRlNS4uNTY5Nzc1MzJiOGIxMmJlMDhhNjE5Y2QzZmIxYzE4NzVkM2I3NmViMSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL05hdmlnYXRpb25TY2hlZHVsZXIuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmNwcApAQCAtNjgsNiAr
NjgsMTYgQEAgcHVibGljOgogICAgICAgICAsIG1fdXNlckdlc3R1cmVUb0ZvcndhcmQoVXNlckdl
c3R1cmVJbmRpY2F0b3I6OmN1cnJlbnRVc2VyR2VzdHVyZSgpKQogICAgIHsKICAgICB9CisgICAg
U2NoZWR1bGVkTmF2aWdhdGlvbihkb3VibGUgZGVsYXksIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5
LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QsIGJvb2wgd2FzRHVyaW5n
TG9hZCwgYm9vbCBpc0xvY2F0aW9uQ2hhbmdlLCBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5
IGV4dGVybmFsVVJMUG9saWN5KQorICAgICAgICA6IG1fZGVsYXkoZGVsYXkpCisgICAgICAgICwg
bV9sb2NrSGlzdG9yeShsb2NrSGlzdG9yeSkKKyAgICAgICAgLCBtX2xvY2tCYWNrRm9yd2FyZExp
c3QobG9ja0JhY2tGb3J3YXJkTGlzdCkKKyAgICAgICAgLCBtX3dhc0R1cmluZ0xvYWQod2FzRHVy
aW5nTG9hZCkKKyAgICAgICAgLCBtX2lzTG9jYXRpb25DaGFuZ2UoaXNMb2NhdGlvbkNoYW5nZSkK
KyAgICAgICAgLCBtX3VzZXJHZXN0dXJlVG9Gb3J3YXJkKFVzZXJHZXN0dXJlSW5kaWNhdG9yOjpj
dXJyZW50VXNlckdlc3R1cmUoKSkKKyAgICAgICAgLCBtX3Nob3VsZE9wZW5FeHRlcm5hbFVSTHNQ
b2xpY3koZXh0ZXJuYWxVUkxQb2xpY3kpCisgICAgeworICAgIH0KICAgICB2aXJ0dWFsIH5TY2hl
ZHVsZWROYXZpZ2F0aW9uKCkgeyB9CiAKICAgICB2aXJ0dWFsIHZvaWQgZmlyZShGcmFtZSYpID0g
MDsKQEAgLTgxLDEyICs5MSwxMSBAQCBwdWJsaWM6CiAgICAgTG9ja0JhY2tGb3J3YXJkTGlzdCBs
b2NrQmFja0ZvcndhcmRMaXN0KCkgY29uc3QgeyByZXR1cm4gbV9sb2NrQmFja0ZvcndhcmRMaXN0
OyB9CiAgICAgYm9vbCB3YXNEdXJpbmdMb2FkKCkgY29uc3QgeyByZXR1cm4gbV93YXNEdXJpbmdM
b2FkOyB9CiAgICAgYm9vbCBpc0xvY2F0aW9uQ2hhbmdlKCkgY29uc3QgeyByZXR1cm4gbV9pc0xv
Y2F0aW9uQ2hhbmdlOyB9Ci0gICAgUmVmUHRyPFVzZXJHZXN0dXJlVG9rZW4+IHVzZXJHZXN0dXJl
VG9Gb3J3YXJkKCkgY29uc3QgeyByZXR1cm4gbV91c2VyR2VzdHVyZVRvRm9yd2FyZDsgfQorICAg
IFVzZXJHZXN0dXJlVG9rZW4qIHVzZXJHZXN0dXJlVG9Gb3J3YXJkKCkgY29uc3QgeyByZXR1cm4g
bV91c2VyR2VzdHVyZVRvRm9yd2FyZC5nZXQoKTsgfQogCiBwcm90ZWN0ZWQ6CiAgICAgdm9pZCBj
bGVhclVzZXJHZXN0dXJlKCkgeyBtX3VzZXJHZXN0dXJlVG9Gb3J3YXJkID0gbnVsbHB0cjsgfQot
Ci0gICAgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSBtX3Nob3VsZE9wZW5FeHRlcm5hbFVS
THNQb2xpY3kgeyBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5OjpTaG91bGROb3RBbGxvdyB9
OworICAgIFNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgc2hvdWxkT3BlbkV4dGVybmFsVVJM
cygpIGNvbnN0IHsgcmV0dXJuIG1fc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeTsgfQogCiBw
cml2YXRlOgogICAgIGRvdWJsZSBtX2RlbGF5OwpAQCAtOTUsMTkgKzEwNCwxNyBAQCBwcml2YXRl
OgogICAgIGJvb2wgbV93YXNEdXJpbmdMb2FkOwogICAgIGJvb2wgbV9pc0xvY2F0aW9uQ2hhbmdl
OwogICAgIFJlZlB0cjxVc2VyR2VzdHVyZVRva2VuPiBtX3VzZXJHZXN0dXJlVG9Gb3J3YXJkOwor
ICAgIFNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgbV9zaG91bGRPcGVuRXh0ZXJuYWxVUkxz
UG9saWN5IHsgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeTo6U2hvdWxkTm90QWxsb3cgfTsK
IH07CiAKIGNsYXNzIFNjaGVkdWxlZFVSTE5hdmlnYXRpb24gOiBwdWJsaWMgU2NoZWR1bGVkTmF2
aWdhdGlvbiB7CiBwcm90ZWN0ZWQ6Ci0gICAgU2NoZWR1bGVkVVJMTmF2aWdhdGlvbihEb2N1bWVu
dCogaW5pdGlhdGluZ0RvY3VtZW50LCBkb3VibGUgZGVsYXksIFNlY3VyaXR5T3JpZ2luKiBzZWN1
cml0eU9yaWdpbiwgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIExvY2tI
aXN0b3J5IGxvY2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExp
c3QsIGJvb2wgZHVyaW5nTG9hZCwgYm9vbCBpc0xvY2F0aW9uQ2hhbmdlKQotICAgICAgICA6IFNj
aGVkdWxlZE5hdmlnYXRpb24oZGVsYXksIGxvY2tIaXN0b3J5LCBsb2NrQmFja0ZvcndhcmRMaXN0
LCBkdXJpbmdMb2FkLCBpc0xvY2F0aW9uQ2hhbmdlKQorICAgIFNjaGVkdWxlZFVSTE5hdmlnYXRp
b24oRG9jdW1lbnQmIGluaXRpYXRpbmdEb2N1bWVudCwgZG91YmxlIGRlbGF5LCBTZWN1cml0eU9y
aWdpbiogc2VjdXJpdHlPcmlnaW4sIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIHJlZmVy
cmVyLCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSwgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFj
a0ZvcndhcmRMaXN0LCBib29sIGR1cmluZ0xvYWQsIGJvb2wgaXNMb2NhdGlvbkNoYW5nZSkKKyAg
ICAgICAgOiBTY2hlZHVsZWROYXZpZ2F0aW9uKGRlbGF5LCBsb2NrSGlzdG9yeSwgbG9ja0JhY2tG
b3J3YXJkTGlzdCwgZHVyaW5nTG9hZCwgaXNMb2NhdGlvbkNoYW5nZSwgaW5pdGlhdGluZ0RvY3Vt
ZW50LnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3lUb1Byb3BhZ2F0ZSgpKQogICAgICAgICAs
IG1fc2VjdXJpdHlPcmlnaW4oc2VjdXJpdHlPcmlnaW4pCiAgICAgICAgICwgbV91cmwodXJsKQog
ICAgICAgICAsIG1fcmVmZXJyZXIocmVmZXJyZXIpCi0gICAgICAgICwgbV9oYXZlVG9sZENsaWVu
dChmYWxzZSkKICAgICB7Ci0gICAgICAgIGlmIChpbml0aWF0aW5nRG9jdW1lbnQpCi0gICAgICAg
ICAgICBtX3Nob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgPSBpbml0aWF0aW5nRG9jdW1lbnQt
PnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3lUb1Byb3BhZ2F0ZSgpOwogICAgIH0KIAogICAg
IHZvaWQgZmlyZShGcmFtZSYgZnJhbWUpIG92ZXJyaWRlCkBAIC0xMTUsNyArMTIyLDcgQEAgcHJv
dGVjdGVkOgogICAgICAgICBVc2VyR2VzdHVyZUluZGljYXRvciBnZXN0dXJlSW5kaWNhdG9yKHVz
ZXJHZXN0dXJlVG9Gb3J3YXJkKCkpOwogCiAgICAgICAgIFJlc291cmNlUmVxdWVzdCByZXNvdXJj
ZVJlcXVlc3QobV91cmwsIG1fcmVmZXJyZXIsIFVzZVByb3RvY29sQ2FjaGVQb2xpY3kpOwotICAg
ICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1lUmVxdWVzdChtX3NlY3VyaXR5T3JpZ2luLmdldCgp
LCByZXNvdXJjZVJlcXVlc3QsICJfc2VsZiIsIGxvY2tIaXN0b3J5KCksIGxvY2tCYWNrRm9yd2Fy
ZExpc3QoKSwgTWF5YmVTZW5kUmVmZXJyZXIsIEFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTDo6
WWVzLCBOZXdGcmFtZU9wZW5lclBvbGljeTo6QWxsb3csIG1fc2hvdWxkT3BlbkV4dGVybmFsVVJM
c1BvbGljeSk7CisgICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KG1fc2VjdXJp
dHlPcmlnaW4uZ2V0KCksIHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hpc3RvcnkoKSwg
bG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9u
VG9JbnZhbGlkVVJMOjpZZXMsIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxvdywgc2hvdWxkT3Bl
bkV4dGVybmFsVVJMcygpKTsKIAogICAgICAgICBmcmFtZS5sb2FkZXIoKS5jaGFuZ2VMb2NhdGlv
bihmcmFtZVJlcXVlc3QpOwogICAgIH0KQEAgLTE1MiwxMiArMTU5LDEyIEBAIHByaXZhdGU6CiAg
ICAgUmVmUHRyPFNlY3VyaXR5T3JpZ2luPiBtX3NlY3VyaXR5T3JpZ2luOwogICAgIFVSTCBtX3Vy
bDsKICAgICBTdHJpbmcgbV9yZWZlcnJlcjsKLSAgICBib29sIG1faGF2ZVRvbGRDbGllbnQ7Cisg
ICAgYm9vbCBtX2hhdmVUb2xkQ2xpZW50IHsgZmFsc2UgfTsKIH07CiAKIGNsYXNzIFNjaGVkdWxl
ZFJlZGlyZWN0IDogcHVibGljIFNjaGVkdWxlZFVSTE5hdmlnYXRpb24gewogcHVibGljOgotICAg
IFNjaGVkdWxlZFJlZGlyZWN0KERvY3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQsIGRvdWJsZSBk
ZWxheSwgU2VjdXJpdHlPcmlnaW4qIHNlY3VyaXR5T3JpZ2luLCBjb25zdCBVUkwmIHVybCwgTG9j
a0hpc3RvcnkgbG9ja0hpc3RvcnksIExvY2tCYWNrRm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3YXJk
TGlzdCkKKyAgICBTY2hlZHVsZWRSZWRpcmVjdChEb2N1bWVudCYgaW5pdGlhdGluZ0RvY3VtZW50
LCBkb3VibGUgZGVsYXksIFNlY3VyaXR5T3JpZ2luKiBzZWN1cml0eU9yaWdpbiwgY29uc3QgVVJM
JiB1cmwsIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tC
YWNrRm9yd2FyZExpc3QpCiAgICAgICAgIDogU2NoZWR1bGVkVVJMTmF2aWdhdGlvbihpbml0aWF0
aW5nRG9jdW1lbnQsIGRlbGF5LCBzZWN1cml0eU9yaWdpbiwgdXJsLCBTdHJpbmcoKSwgbG9ja0hp
c3RvcnksIGxvY2tCYWNrRm9yd2FyZExpc3QsIGZhbHNlLCBmYWxzZSkKICAgICB7CiAgICAgICAg
IGNsZWFyVXNlckdlc3R1cmUoKTsKQEAgLTE3Myw3ICsxODAsNyBAQCBwdWJsaWM6CiAgICAgICAg
IFVzZXJHZXN0dXJlSW5kaWNhdG9yIGdlc3R1cmVJbmRpY2F0b3IodXNlckdlc3R1cmVUb0Zvcndh
cmQoKSk7CiAgICAgICAgIGJvb2wgcmVmcmVzaCA9IGVxdWFsSWdub3JpbmdGcmFnbWVudElkZW50
aWZpZXIoZnJhbWUuZG9jdW1lbnQoKS0+dXJsKCksIHVybCgpKTsKICAgICAgICAgUmVzb3VyY2VS
ZXF1ZXN0IHJlc291cmNlUmVxdWVzdCh1cmwoKSwgcmVmZXJyZXIoKSwgcmVmcmVzaCA/IFJlbG9h
ZElnbm9yaW5nQ2FjaGVEYXRhIDogVXNlUHJvdG9jb2xDYWNoZVBvbGljeSk7Ci0gICAgICAgIEZy
YW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KHNlY3VyaXR5T3JpZ2luKCksIHJlc291cmNlUmVx
dWVzdCwgIl9zZWxmIiwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXli
ZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpObywgTmV3RnJhbWVP
cGVuZXJQb2xpY3k6OkFsbG93LCBtX3Nob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kpOworICAg
ICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1lUmVxdWVzdChzZWN1cml0eU9yaWdpbigpLCByZXNv
dXJjZVJlcXVlc3QsICJfc2VsZiIsIGxvY2tIaXN0b3J5KCksIGxvY2tCYWNrRm9yd2FyZExpc3Qo
KSwgTWF5YmVTZW5kUmVmZXJyZXIsIEFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTDo6Tm8sIE5l
d0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxvdywgc2hvdWxkT3BlbkV4dGVybmFsVVJMcygpKTsKIAog
ICAgICAgICBmcmFtZS5sb2FkZXIoKS5jaGFuZ2VMb2NhdGlvbihmcmFtZVJlcXVlc3QpOwogICAg
IH0KQEAgLTE4MSw3ICsxODgsNyBAQCBwdWJsaWM6CiAKIGNsYXNzIFNjaGVkdWxlZExvY2F0aW9u
Q2hhbmdlIDogcHVibGljIFNjaGVkdWxlZFVSTE5hdmlnYXRpb24gewogcHVibGljOgotICAgIFNj
aGVkdWxlZExvY2F0aW9uQ2hhbmdlKERvY3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQsIFNlY3Vy
aXR5T3JpZ2luKiBzZWN1cml0eU9yaWdpbiwgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYg
cmVmZXJyZXIsIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxv
Y2tCYWNrRm9yd2FyZExpc3QsIGJvb2wgZHVyaW5nTG9hZCkKKyAgICBTY2hlZHVsZWRMb2NhdGlv
bkNoYW5nZShEb2N1bWVudCYgaW5pdGlhdGluZ0RvY3VtZW50LCBTZWN1cml0eU9yaWdpbiogc2Vj
dXJpdHlPcmlnaW4sIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBMb2Nr
SGlzdG9yeSBsb2NrSGlzdG9yeSwgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRM
aXN0LCBib29sIGR1cmluZ0xvYWQpCiAgICAgICAgIDogU2NoZWR1bGVkVVJMTmF2aWdhdGlvbihp
bml0aWF0aW5nRG9jdW1lbnQsIDAuMCwgc2VjdXJpdHlPcmlnaW4sIHVybCwgcmVmZXJyZXIsIGxv
Y2tIaXN0b3J5LCBsb2NrQmFja0ZvcndhcmRMaXN0LCBkdXJpbmdMb2FkLCB0cnVlKSB7IH0KIAog
ICAgIHZvaWQgZmlyZShGcmFtZSYgZnJhbWUpIG92ZXJyaWRlCkBAIC0xODksMTQgKzE5NiwxNCBA
QCBwdWJsaWM6CiAgICAgICAgIFVzZXJHZXN0dXJlSW5kaWNhdG9yIGdlc3R1cmVJbmRpY2F0b3Io
dXNlckdlc3R1cmVUb0ZvcndhcmQoKSk7CiAKICAgICAgICAgUmVzb3VyY2VSZXF1ZXN0IHJlc291
cmNlUmVxdWVzdCh1cmwoKSwgcmVmZXJyZXIoKSwgVXNlUHJvdG9jb2xDYWNoZVBvbGljeSk7Ci0g
ICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KHNlY3VyaXR5T3JpZ2luKCksIHJl
c291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlz
dCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpObywg
TmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBtX3Nob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xp
Y3kpOworICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1lUmVxdWVzdChzZWN1cml0eU9yaWdp
bigpLCByZXNvdXJjZVJlcXVlc3QsICJfc2VsZiIsIGxvY2tIaXN0b3J5KCksIGxvY2tCYWNrRm9y
d2FyZExpc3QoKSwgTWF5YmVTZW5kUmVmZXJyZXIsIEFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVS
TDo6Tm8sIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxvdywgc2hvdWxkT3BlbkV4dGVybmFsVVJM
cygpKTsKICAgICAgICAgZnJhbWUubG9hZGVyKCkuY2hhbmdlTG9jYXRpb24oZnJhbWVSZXF1ZXN0
KTsKICAgICB9CiB9OwogCiBjbGFzcyBTY2hlZHVsZWRSZWZyZXNoIDogcHVibGljIFNjaGVkdWxl
ZFVSTE5hdmlnYXRpb24gewogcHVibGljOgotICAgIFNjaGVkdWxlZFJlZnJlc2goRG9jdW1lbnQq
IGluaXRpYXRpbmdEb2N1bWVudCwgU2VjdXJpdHlPcmlnaW4qIHNlY3VyaXR5T3JpZ2luLCBjb25z
dCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiByZWZlcnJlcikKKyAgICBTY2hlZHVsZWRSZWZyZXNo
KERvY3VtZW50JiBpbml0aWF0aW5nRG9jdW1lbnQsIFNlY3VyaXR5T3JpZ2luKiBzZWN1cml0eU9y
aWdpbiwgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIpCiAgICAgICAgIDog
U2NoZWR1bGVkVVJMTmF2aWdhdGlvbihpbml0aWF0aW5nRG9jdW1lbnQsIDAuMCwgc2VjdXJpdHlP
cmlnaW4sIHVybCwgcmVmZXJyZXIsIExvY2tIaXN0b3J5OjpZZXMsIExvY2tCYWNrRm9yd2FyZExp
c3Q6OlllcywgZmFsc2UsIHRydWUpCiAgICAgewogICAgIH0KQEAgLTIwNiw3ICsyMTMsNyBAQCBw
dWJsaWM6CiAgICAgICAgIFVzZXJHZXN0dXJlSW5kaWNhdG9yIGdlc3R1cmVJbmRpY2F0b3IodXNl
ckdlc3R1cmVUb0ZvcndhcmQoKSk7CiAKICAgICAgICAgUmVzb3VyY2VSZXF1ZXN0IHJlc291cmNl
UmVxdWVzdCh1cmwoKSwgcmVmZXJyZXIoKSwgUmVsb2FkSWdub3JpbmdDYWNoZURhdGEpOwotICAg
ICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1lUmVxdWVzdChzZWN1cml0eU9yaWdpbigpLCByZXNv
dXJjZVJlcXVlc3QsICJfc2VsZiIsIGxvY2tIaXN0b3J5KCksIGxvY2tCYWNrRm9yd2FyZExpc3Qo
KSwgTWF5YmVTZW5kUmVmZXJyZXIsIEFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTDo6WWVzLCBO
ZXdGcmFtZU9wZW5lclBvbGljeTo6QWxsb3csIG1fc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGlj
eSk7CisgICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KHNlY3VyaXR5T3JpZ2lu
KCksIHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3
YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJM
OjpZZXMsIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxvdywgc2hvdWxkT3BlbkV4dGVybmFsVVJM
cygpKTsKICAgICAgICAgZnJhbWUubG9hZGVyKCkuY2hhbmdlTG9jYXRpb24oZnJhbWVSZXF1ZXN0
KTsKICAgICB9CiB9OwpAQCAtMjI2LDcgKzIzMyw3IEBAIHB1YmxpYzoKICAgICAgICAgaWYgKCFt
X2hpc3RvcnlTdGVwcykgewogICAgICAgICAgICAgLy8gU3BlY2lhbCBjYXNlIGZvciBnbygwKSBm
cm9tIGEgZnJhbWUgLT4gcmVsb2FkIG9ubHkgdGhlIGZyYW1lCiAgICAgICAgICAgICAvLyBUbyBm
b2xsb3cgRmlyZWZveCBhbmQgSUUncyBiZWhhdmlvciwgaGlzdG9yeSByZWxvYWQgY2FuIG9ubHkg
bmF2aWdhdGUgdGhlIHNlbGYgZnJhbWUuCi0gICAgICAgICAgICBmcmFtZS5sb2FkZXIoKS51cmxT
ZWxlY3RlZChmcmFtZS5kb2N1bWVudCgpLT51cmwoKSwgIl9zZWxmIiwgMCwgbG9ja0hpc3Rvcnko
KSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgbV9zaG91bGRPcGVu
RXh0ZXJuYWxVUkxzUG9saWN5KTsKKyAgICAgICAgICAgIGZyYW1lLmxvYWRlcigpLnVybFNlbGVj
dGVkKGZyYW1lLmRvY3VtZW50KCktPnVybCgpLCAiX3NlbGYiLCAwLCBsb2NrSGlzdG9yeSgpLCBs
b2NrQmFja0ZvcndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVycmVyLCBzaG91bGRPcGVuRXh0ZXJu
YWxVUkxzKCkpOwogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAgICAgICAgIApAQCAt
MjQxLDE1ICsyNDgsMTAgQEAgcHJpdmF0ZToKIAogY2xhc3MgU2NoZWR1bGVkRm9ybVN1Ym1pc3Np
b24gOiBwdWJsaWMgU2NoZWR1bGVkTmF2aWdhdGlvbiB7CiBwdWJsaWM6Ci0gICAgU2NoZWR1bGVk
Rm9ybVN1Ym1pc3Npb24oUGFzc1JlZlB0cjxGb3JtU3VibWlzc2lvbj4gc3VibWlzc2lvbiwgTG9j
a0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0LCBib29sIGR1cmluZ0xvYWQpCi0g
ICAgICAgIDogU2NoZWR1bGVkTmF2aWdhdGlvbigwLCBzdWJtaXNzaW9uLT5sb2NrSGlzdG9yeSgp
LCBsb2NrQmFja0ZvcndhcmRMaXN0LCBkdXJpbmdMb2FkLCB0cnVlKQotICAgICAgICAsIG1fc3Vi
bWlzc2lvbihzdWJtaXNzaW9uKQotICAgICAgICAsIG1faGF2ZVRvbGRDbGllbnQoZmFsc2UpCisg
ICAgU2NoZWR1bGVkRm9ybVN1Ym1pc3Npb24oUmVmPEZvcm1TdWJtaXNzaW9uPiYmIHN1Ym1pc3Np
b24sIExvY2tCYWNrRm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3YXJkTGlzdCwgYm9vbCBkdXJpbmdM
b2FkKQorICAgICAgICA6IFNjaGVkdWxlZE5hdmlnYXRpb24oMCwgc3VibWlzc2lvbi0+bG9ja0hp
c3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCwgZHVyaW5nTG9hZCwgdHJ1ZSwgc3VibWlzc2lv
bi0+c3RhdGUoKS5zb3VyY2VEb2N1bWVudCgpLnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3lU
b1Byb3BhZ2F0ZSgpKQorICAgICAgICAsIG1fc3VibWlzc2lvbihXVEZNb3ZlKHN1Ym1pc3Npb24p
KQogICAgIHsKLSAgICAgICAgQVNTRVJUKG1fc3VibWlzc2lvbi0+c3RhdGUoKSk7Ci0KLSAgICAg
ICAgaWYgKERvY3VtZW50KiBkb2N1bWVudCA9IG1fc3VibWlzc2lvbi0+c3RhdGUoKS0+c291cmNl
RG9jdW1lbnQoKSkKLSAgICAgICAgICAgIG1fc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSA9
IGRvY3VtZW50LT5zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5VG9Qcm9wYWdhdGUoKTsKICAg
ICB9CiAKICAgICB2b2lkIGZpcmUoRnJhbWUmIGZyYW1lKSBvdmVycmlkZQpAQCAtMjYwLDE0ICsy
NjIsMTQgQEAgcHVibGljOgogICAgICAgICAvLyBOb3cgdGhhdCB0aGUgdGltZXIgaGFzIGZpcmVk
LCB3ZSBuZWVkIHRvIHJlcGVhdCB0aGUgc2VjdXJpdHkgY2hlY2sgd2hpY2ggbm9ybWFsbHkgaXMg
ZG9uZSB3aGVuCiAgICAgICAgIC8vIHNlbGVjdGluZyBhIHRhcmdldCwgaW4gY2FzZSBjb25kaXRp
b25zIGhhdmUgY2hhbmdlZC4gT3RoZXIgY29kZSBwYXRocyBhdm9pZCB0aGlzIGJ5IHRhcmdldGlu
ZwogICAgICAgICAvLyB3aXRob3V0IGxlYXZpbmcgYSB0aW1lIHdpbmRvdy4gSWYgd2UgZmFpbCB0
aGUgY2hlY2sganVzdCBzaWxlbnRseSBkcm9wIHRoZSBmb3JtIHN1Ym1pc3Npb24uCi0gICAgICAg
IERvY3VtZW50KiByZXF1ZXN0aW5nRG9jdW1lbnQgPSBtX3N1Ym1pc3Npb24tPnN0YXRlKCktPnNv
dXJjZURvY3VtZW50KCk7Ci0gICAgICAgIGlmICghcmVxdWVzdGluZ0RvY3VtZW50LT5jYW5OYXZp
Z2F0ZSgmZnJhbWUpKQorICAgICAgICBhdXRvJiByZXF1ZXN0aW5nRG9jdW1lbnQgPSBtX3N1Ym1p
c3Npb24tPnN0YXRlKCkuc291cmNlRG9jdW1lbnQoKTsKKyAgICAgICAgaWYgKCFyZXF1ZXN0aW5n
RG9jdW1lbnQuY2FuTmF2aWdhdGUoJmZyYW1lKSkKICAgICAgICAgICAgIHJldHVybjsKLSAgICAg
ICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFtZVJlcXVlc3QocmVxdWVzdGluZ0RvY3VtZW50LT5zZWN1
cml0eU9yaWdpbigpLCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0KCksIE1heWJl
U2VuZFJlZmVycmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkw6OlllcywgTmV3RnJhbWVP
cGVuZXJQb2xpY3k6OkFsbG93LCBtX3Nob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kpOworICAg
ICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1lUmVxdWVzdChyZXF1ZXN0aW5nRG9jdW1lbnQuc2Vj
dXJpdHlPcmlnaW4oKSwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXli
ZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpZZXMsIE5ld0ZyYW1l
T3BlbmVyUG9saWN5OjpBbGxvdywgc2hvdWxkT3BlbkV4dGVybmFsVVJMcygpKTsKICAgICAgICAg
bV9zdWJtaXNzaW9uLT5wb3B1bGF0ZUZyYW1lTG9hZFJlcXVlc3QoZnJhbWVSZXF1ZXN0KTsKLSAg
ICAgICAgZnJhbWUubG9hZGVyKCkubG9hZEZyYW1lUmVxdWVzdChmcmFtZVJlcXVlc3QsIG1fc3Vi
bWlzc2lvbi0+ZXZlbnQoKSwgbV9zdWJtaXNzaW9uLT5zdGF0ZSgpKTsKKyAgICAgICAgZnJhbWUu
bG9hZGVyKCkubG9hZEZyYW1lUmVxdWVzdChmcmFtZVJlcXVlc3QsIG1fc3VibWlzc2lvbi0+ZXZl
bnQoKSwgJm1fc3VibWlzc2lvbi0+c3RhdGUoKSk7CiAgICAgfQotICAgIAorCiAgICAgdm9pZCBk
aWRTdGFydFRpbWVyKEZyYW1lJiBmcmFtZSwgVGltZXImIHRpbWVyKSBvdmVycmlkZQogICAgIHsK
ICAgICAgICAgaWYgKG1faGF2ZVRvbGRDbGllbnQpCkBAIC0yOTMsOCArMjk1LDggQEAgcHVibGlj
OgogICAgIH0KIAogcHJpdmF0ZToKLSAgICBSZWZQdHI8Rm9ybVN1Ym1pc3Npb24+IG1fc3VibWlz
c2lvbjsKLSAgICBib29sIG1faGF2ZVRvbGRDbGllbnQ7CisgICAgUmVmPEZvcm1TdWJtaXNzaW9u
PiBtX3N1Ym1pc3Npb247CisgICAgYm9vbCBtX2hhdmVUb2xkQ2xpZW50IHsgZmFsc2UgfTsKIH07
CiAKIGNsYXNzIFNjaGVkdWxlZFBhZ2VCbG9jayBmaW5hbCA6IHB1YmxpYyBTY2hlZHVsZWROYXZp
Z2F0aW9uIHsKQEAgLTMxMyw3ICszMTUsNyBAQCBwdWJsaWM6CiAgICAgICAgIFN1YnN0aXR1dGVE
YXRhIHJlcGxhY2VtZW50RGF0YShTaGFyZWRCdWZmZXI6OmNyZWF0ZSgpLCBtX29yaWdpbkRvY3Vt
ZW50LnVybCgpLCByZXBsYWNlbWVudFJlc3BvbnNlLCBTdWJzdGl0dXRlRGF0YTo6U2Vzc2lvbkhp
c3RvcnlWaXNpYmlsaXR5OjpIaWRkZW4pOwogCiAgICAgICAgIFJlc291cmNlUmVxdWVzdCByZXNv
dXJjZVJlcXVlc3QobV9vcmlnaW5Eb2N1bWVudC51cmwoKSwgZW1wdHlTdHJpbmcoKSwgUmVsb2Fk
SWdub3JpbmdDYWNoZURhdGEpOwotICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1lUmVxdWVz
dChtX29yaWdpbkRvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCksIHJlc291cmNlUmVxdWVzdCwgbG9j
a0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxs
b3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpZZXMsIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxv
dywgbV9zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5KTsKKyAgICAgICAgRnJhbWVMb2FkUmVx
dWVzdCBmcmFtZVJlcXVlc3QobV9vcmlnaW5Eb2N1bWVudC5zZWN1cml0eU9yaWdpbigpLCByZXNv
dXJjZVJlcXVlc3QsIGxvY2tIaXN0b3J5KCksIGxvY2tCYWNrRm9yd2FyZExpc3QoKSwgTWF5YmVT
ZW5kUmVmZXJyZXIsIEFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTDo6WWVzLCBOZXdGcmFtZU9w
ZW5lclBvbGljeTo6QWxsb3csIHNob3VsZE9wZW5FeHRlcm5hbFVSTHMoKSk7CiAgICAgICAgIGZy
YW1lUmVxdWVzdC5zZXRTdWJzdGl0dXRlRGF0YShyZXBsYWNlbWVudERhdGEpOwogICAgICAgICBm
cmFtZS5sb2FkZXIoKS5sb2FkKGZyYW1lUmVxdWVzdCk7CiAgICAgfQpAQCAtMzY0LDcgKzM2Niw3
IEBAIGlubGluZSBib29sIE5hdmlnYXRpb25TY2hlZHVsZXI6OnNob3VsZFNjaGVkdWxlTmF2aWdh
dGlvbihjb25zdCBVUkwmIHVybCkgY29uc3QKICAgICByZXR1cm4gTmF2aWdhdGlvbkRpc2FibGVy
Rm9yQmVmb3JlVW5sb2FkOjppc05hdmlnYXRpb25BbGxvd2VkKCk7CiB9CiAKLXZvaWQgTmF2aWdh
dGlvblNjaGVkdWxlcjo6c2NoZWR1bGVSZWRpcmVjdChEb2N1bWVudCogaW5pdGlhdGluZ0RvY3Vt
ZW50LCBkb3VibGUgZGVsYXksIGNvbnN0IFVSTCYgdXJsKQordm9pZCBOYXZpZ2F0aW9uU2NoZWR1
bGVyOjpzY2hlZHVsZVJlZGlyZWN0KERvY3VtZW50JiBpbml0aWF0aW5nRG9jdW1lbnQsIGRvdWJs
ZSBkZWxheSwgY29uc3QgVVJMJiB1cmwpCiB7CiAgICAgaWYgKCFzaG91bGRTY2hlZHVsZU5hdmln
YXRpb24odXJsKSkKICAgICAgICAgcmV0dXJuOwpAQCAtMzc1LDcgKzM3Nyw3IEBAIHZvaWQgTmF2
aWdhdGlvblNjaGVkdWxlcjo6c2NoZWR1bGVSZWRpcmVjdChEb2N1bWVudCogaW5pdGlhdGluZ0Rv
Y3VtZW50LCBkb3VibGUKIAogICAgIC8vIFdlIHdhbnQgYSBuZXcgYmFjay9mb3J3YXJkIGxpc3Qg
aXRlbSBpZiB0aGUgcmVmcmVzaCB0aW1lb3V0IGlzID4gMSBzZWNvbmQuCiAgICAgaWYgKCFtX3Jl
ZGlyZWN0IHx8IGRlbGF5IDw9IG1fcmVkaXJlY3QtPmRlbGF5KCkpIHsKLSAgICAgICAgTG9ja0Jh
Y2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0ID0gZGVsYXkgPD0gMSA/IExvY2tCYWNr
Rm9yd2FyZExpc3Q6OlllcyA6IExvY2tCYWNrRm9yd2FyZExpc3Q6Ok5vOworICAgICAgICBhdXRv
IGxvY2tCYWNrRm9yd2FyZExpc3QgPSBkZWxheSA8PSAxID8gTG9ja0JhY2tGb3J3YXJkTGlzdDo6
WWVzIDogTG9ja0JhY2tGb3J3YXJkTGlzdDo6Tm87CiAgICAgICAgIHNjaGVkdWxlKHN0ZDo6bWFr
ZV91bmlxdWU8U2NoZWR1bGVkUmVkaXJlY3Q+KGluaXRpYXRpbmdEb2N1bWVudCwgZGVsYXksIG1f
ZnJhbWUuZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSwgdXJsLCBMb2NrSGlzdG9yeTo6WWVz
LCBsb2NrQmFja0ZvcndhcmRMaXN0KSk7CiAgICAgfQogfQpAQCAtMzk4LDcgKzQwMCw3IEBAIExv
Y2tCYWNrRm9yd2FyZExpc3QgTmF2aWdhdGlvblNjaGVkdWxlcjo6bXVzdExvY2tCYWNrRm9yd2Fy
ZExpc3QoRnJhbWUmIHRhcmdldEZyCiAgICAgcmV0dXJuIExvY2tCYWNrRm9yd2FyZExpc3Q6Ok5v
OwogfQogCi12b2lkIE5hdmlnYXRpb25TY2hlZHVsZXI6OnNjaGVkdWxlTG9jYXRpb25DaGFuZ2Uo
RG9jdW1lbnQqIGluaXRpYXRpbmdEb2N1bWVudCwgU2VjdXJpdHlPcmlnaW4qIHNlY3VyaXR5T3Jp
Z2luLCBjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgTG9ja0hpc3Rvcnkg
bG9ja0hpc3RvcnksIExvY2tCYWNrRm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3YXJkTGlzdCkKK3Zv
aWQgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2NoZWR1bGVMb2NhdGlvbkNoYW5nZShEb2N1bWVudCYg
aW5pdGlhdGluZ0RvY3VtZW50LCBTZWN1cml0eU9yaWdpbiogc2VjdXJpdHlPcmlnaW4sIGNvbnN0
IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9y
eSwgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0KQogewogICAgIGlmICgh
c2hvdWxkU2NoZWR1bGVOYXZpZ2F0aW9uKHVybCkpCiAgICAgICAgIHJldHVybjsKQEAgLTQxMiwx
MCArNDE0LDcgQEAgdm9pZCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjpzY2hlZHVsZUxvY2F0aW9uQ2hh
bmdlKERvY3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQsIFMKICAgICAvLyBmcmFnbWVudCBwYXJ0
LCB3ZSBkb24ndCBuZWVkIHRvIHNjaGVkdWxlIHRoZSBsb2NhdGlvbiBjaGFuZ2UuCiAgICAgaWYg
KHVybC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSAmJiBlcXVhbElnbm9yaW5nRnJhZ21lbnRJZGVu
dGlmaWVyKG1fZnJhbWUuZG9jdW1lbnQoKS0+dXJsKCksIHVybCkpIHsKICAgICAgICAgUmVzb3Vy
Y2VSZXF1ZXN0IHJlc291cmNlUmVxdWVzdChtX2ZyYW1lLmRvY3VtZW50KCktPmNvbXBsZXRlVVJM
KHVybCksIHJlZmVycmVyLCBVc2VQcm90b2NvbENhY2hlUG9saWN5KTsKLSAgICAgICAgU2hvdWxk
T3BlbkV4dGVybmFsVVJMc1BvbGljeSBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5ID0gU2hv
dWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeTo6U2hvdWxkTm90QWxsb3c7Ci0gICAgICAgIGlmIChp
bml0aWF0aW5nRG9jdW1lbnQpCi0gICAgICAgICAgICBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9s
aWN5ID0gaW5pdGlhdGluZ0RvY3VtZW50LT5zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5VG9Q
cm9wYWdhdGUoKTsKLSAgICAgICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFtZVJlcXVlc3Qoc2VjdXJp
dHlPcmlnaW4sIHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hpc3RvcnksIGxvY2tCYWNr
Rm9yd2FyZExpc3QsIE1heWJlU2VuZFJlZmVycmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFsaWRV
Ukw6Ok5vLCBOZXdGcmFtZU9wZW5lclBvbGljeTo6QWxsb3csIFJlcGxhY2VEb2N1bWVudElmSmF2
YVNjcmlwdFVSTCwgc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSk7CisgICAgICAgIEZyYW1l
TG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KHNlY3VyaXR5T3JpZ2luLCByZXNvdXJjZVJlcXVlc3Qs
ICJfc2VsZiIsIGxvY2tIaXN0b3J5LCBsb2NrQmFja0ZvcndhcmRMaXN0LCBNYXliZVNlbmRSZWZl
cnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpObywgTmV3RnJhbWVPcGVuZXJQb2xp
Y3k6OkFsbG93LCBSZXBsYWNlRG9jdW1lbnRJZkphdmFTY3JpcHRVUkwsIGluaXRpYXRpbmdEb2N1
bWVudC5zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5VG9Qcm9wYWdhdGUoKSk7CiAgICAgICAg
IGxvYWRlci5jaGFuZ2VMb2NhdGlvbihmcmFtZVJlcXVlc3QpOwogICAgICAgICByZXR1cm47CiAg
ICAgfQpAQCAtNDI3LDcgKzQyNiw3IEBAIHZvaWQgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2NoZWR1
bGVMb2NhdGlvbkNoYW5nZShEb2N1bWVudCogaW5pdGlhdGluZ0RvY3VtZW50LCBTCiAgICAgc2No
ZWR1bGUoc3RkOjptYWtlX3VuaXF1ZTxTY2hlZHVsZWRMb2NhdGlvbkNoYW5nZT4oaW5pdGlhdGlu
Z0RvY3VtZW50LCBzZWN1cml0eU9yaWdpbiwgdXJsLCByZWZlcnJlciwgbG9ja0hpc3RvcnksIGxv
Y2tCYWNrRm9yd2FyZExpc3QsIGR1cmluZ0xvYWQpKTsKIH0KIAotdm9pZCBOYXZpZ2F0aW9uU2No
ZWR1bGVyOjpzY2hlZHVsZUZvcm1TdWJtaXNzaW9uKFBhc3NSZWZQdHI8Rm9ybVN1Ym1pc3Npb24+
IHN1Ym1pc3Npb24pCit2b2lkIE5hdmlnYXRpb25TY2hlZHVsZXI6OnNjaGVkdWxlRm9ybVN1Ym1p
c3Npb24oUmVmPEZvcm1TdWJtaXNzaW9uPiYmIHN1Ym1pc3Npb24pCiB7CiAgICAgQVNTRVJUKG1f
ZnJhbWUucGFnZSgpKTsKIApAQCAtNDQzLDE0ICs0NDIsMTQgQEAgdm9pZCBOYXZpZ2F0aW9uU2No
ZWR1bGVyOjpzY2hlZHVsZUZvcm1TdWJtaXNzaW9uKFBhc3NSZWZQdHI8Rm9ybVN1Ym1pc3Npb24+
IHN1Ym0KICAgICAvLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTMyMzgzIGZvciB0aGUgb3JpZ2luYWwgbW90aXZhdGlvbiBmb3IgdGhpcy4KICAgICBMb2NrQmFj
a0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QgPSBtdXN0TG9ja0JhY2tGb3J3YXJkTGlz
dChtX2ZyYW1lKTsKICAgICBpZiAobG9ja0JhY2tGb3J3YXJkTGlzdCA9PSBMb2NrQmFja0Zvcndh
cmRMaXN0OjpObwotICAgICAgICAmJiAoc3VibWlzc2lvbi0+c3RhdGUoKS0+Zm9ybVN1Ym1pc3Np
b25UcmlnZ2VyKCkgPT0gU3VibWl0dGVkQnlKYXZhU2NyaXB0ICYmIG1fZnJhbWUudHJlZSgpLnBh
cmVudCgpICYmICFVc2VyR2VzdHVyZUluZGljYXRvcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkp
KSB7CisgICAgICAgICYmIChzdWJtaXNzaW9uLT5zdGF0ZSgpLmZvcm1TdWJtaXNzaW9uVHJpZ2dl
cigpID09IFN1Ym1pdHRlZEJ5SmF2YVNjcmlwdCAmJiBtX2ZyYW1lLnRyZWUoKS5wYXJlbnQoKSAm
JiAhVXNlckdlc3R1cmVJbmRpY2F0b3I6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpKSkgewogICAg
ICAgICBsb2NrQmFja0ZvcndhcmRMaXN0ID0gTG9ja0JhY2tGb3J3YXJkTGlzdDo6WWVzOwogICAg
IH0KICAgICAKLSAgICBzY2hlZHVsZShzdGQ6Om1ha2VfdW5pcXVlPFNjaGVkdWxlZEZvcm1TdWJt
aXNzaW9uPihzdWJtaXNzaW9uLCBsb2NrQmFja0ZvcndhcmRMaXN0LCBkdXJpbmdMb2FkKSk7Cisg
ICAgc2NoZWR1bGUoc3RkOjptYWtlX3VuaXF1ZTxTY2hlZHVsZWRGb3JtU3VibWlzc2lvbj4oV1RG
TW92ZShzdWJtaXNzaW9uKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCwgZHVyaW5nTG9hZCkpOwogfQog
Ci12b2lkIE5hdmlnYXRpb25TY2hlZHVsZXI6OnNjaGVkdWxlUmVmcmVzaChEb2N1bWVudCogaW5p
dGlhdGluZ0RvY3VtZW50KQordm9pZCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjpzY2hlZHVsZVJlZnJl
c2goRG9jdW1lbnQmIGluaXRpYXRpbmdEb2N1bWVudCkKIHsKICAgICBpZiAoIXNob3VsZFNjaGVk
dWxlTmF2aWdhdGlvbigpKQogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L05hdmlnYXRpb25TY2hlZHVsZXIuaAppbmRleCA0OWM0M2JlMmJiMTVlYmE4MDU2NTc2NjEyZDE1
ZDFhYmNmMzA3NzE3Li4wYWUxNzExNDU4YzM3NDZmNzc4MTZmZWQ5MzY3YmE0OGJmNjE2ZmQxIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmgKQEAgLTEsNSAr
MSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTYgQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTcgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgogICogQ29weXJpZ2h0IChDKSAyMDA4LCAyMDA5IFRvcmNoIE1vYmls
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuIChodHRwOi8vd3d3LnRvcmNobW9iaWxlLmNvbS8p
CiAgKiBDb3B5cmlnaHQgKEMpIDIwMDkgQWRhbSBCYXJ0aC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
ICAqCkBAIC02OCwxMCArNjgsMTAgQEAgcHVibGljOgogICAgIGJvb2wgcmVkaXJlY3RTY2hlZHVs
ZWREdXJpbmdMb2FkKCk7CiAgICAgYm9vbCBsb2NhdGlvbkNoYW5nZVBlbmRpbmcoKTsKIAotICAg
IHZvaWQgc2NoZWR1bGVSZWRpcmVjdChEb2N1bWVudCogaW5pdGlhdGluZ0RvY3VtZW50LCBkb3Vi
bGUgZGVsYXksIGNvbnN0IFVSTCYpOwotICAgIHZvaWQgc2NoZWR1bGVMb2NhdGlvbkNoYW5nZShE
b2N1bWVudCogaW5pdGlhdGluZ0RvY3VtZW50LCBTZWN1cml0eU9yaWdpbiosIGNvbnN0IFVSTCYs
IGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIExvY2tIaXN0b3J5ID0gTG9ja0hpc3Rvcnk6Olllcywg
TG9ja0JhY2tGb3J3YXJkTGlzdCA9IExvY2tCYWNrRm9yd2FyZExpc3Q6Olllcyk7Ci0gICAgdm9p
ZCBzY2hlZHVsZUZvcm1TdWJtaXNzaW9uKFBhc3NSZWZQdHI8Rm9ybVN1Ym1pc3Npb24+KTsKLSAg
ICB2b2lkIHNjaGVkdWxlUmVmcmVzaChEb2N1bWVudCogaW5pdGlhdGluZ0RvY3VtZW50KTsKKyAg
ICB2b2lkIHNjaGVkdWxlUmVkaXJlY3QoRG9jdW1lbnQmIGluaXRpYXRpbmdEb2N1bWVudCwgZG91
YmxlIGRlbGF5LCBjb25zdCBVUkwmKTsKKyAgICB2b2lkIHNjaGVkdWxlTG9jYXRpb25DaGFuZ2Uo
RG9jdW1lbnQmIGluaXRpYXRpbmdEb2N1bWVudCwgU2VjdXJpdHlPcmlnaW4qLCBjb25zdCBVUkwm
LCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBMb2NrSGlzdG9yeSA9IExvY2tIaXN0b3J5OjpZZXMs
IExvY2tCYWNrRm9yd2FyZExpc3QgPSBMb2NrQmFja0ZvcndhcmRMaXN0OjpZZXMpOworICAgIHZv
aWQgc2NoZWR1bGVGb3JtU3VibWlzc2lvbihSZWY8Rm9ybVN1Ym1pc3Npb24+JiYpOworICAgIHZv
aWQgc2NoZWR1bGVSZWZyZXNoKERvY3VtZW50JiBpbml0aWF0aW5nRG9jdW1lbnQpOwogICAgIHZv
aWQgc2NoZWR1bGVIaXN0b3J5TmF2aWdhdGlvbihpbnQgc3RlcHMpOwogICAgIHZvaWQgc2NoZWR1
bGVQYWdlQmxvY2soRG9jdW1lbnQmIG9yaWdpbkRvY3VtZW50KTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9SZXNvdXJjZUxvYWRlci5jcHAKaW5kZXggOWUyYWJkYWRjYTE3ODFhZDEwNWMzOTQ5ZjJm
MGNkMTBmZWVhYWQ3YS4uMzY1MGViYjU4OGQ4MDJhODYxZTMzMGExZWQ3NzAwYTk1M2M2N2Y0OCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwCkBAIC0xOTEsNyArMTkx
LDcgQEAgdm9pZCBSZXNvdXJjZUxvYWRlcjo6c3RhcnQoKQogICAgICAgICByZXR1cm47CiAjZW5k
aWYKIAotICAgIGlmIChtX2RvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5t
YXliZUxvYWRSZXNvdXJjZSgqdGhpcywgbV9yZXF1ZXN0LCBtX3JlcXVlc3QudXJsKCkpKQorICAg
IGlmIChtX2RvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLm1heWJlTG9hZFJl
c291cmNlKCp0aGlzLCBtX3JlcXVlc3QsIG1fcmVxdWVzdC51cmwoKSkpCiAgICAgICAgIHJldHVy
bjsKIAogICAgIGlmIChtX2RlZmVyc0xvYWRpbmcpIHsKQEAgLTYwNyw3ICs2MDcsNyBAQCBSZXNv
dXJjZUVycm9yIFJlc291cmNlTG9hZGVyOjpjYW5ub3RTaG93VVJMRXJyb3IoKQogCiBSZXNvdXJj
ZVJlcXVlc3QgUmVzb3VyY2VMb2FkZXI6OndpbGxTZW5kUmVxdWVzdChSZXNvdXJjZUhhbmRsZSos
IFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIFJlc291cmNlUmVzcG9uc2UmJiByZWRpcmVjdFJl
c3BvbnNlKQogewotICAgIGlmIChkb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9z
dCgpLT5tYXliZUxvYWRGYWxsYmFja0ZvclJlZGlyZWN0KHRoaXMsIHJlcXVlc3QsIHJlZGlyZWN0
UmVzcG9uc2UpKQorICAgIGlmIChkb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9z
dCgpLm1heWJlTG9hZEZhbGxiYWNrRm9yUmVkaXJlY3QodGhpcywgcmVxdWVzdCwgcmVkaXJlY3RS
ZXNwb25zZSkpCiAgICAgICAgIHJldHVybiBXVEZNb3ZlKHJlcXVlc3QpOwogICAgIHdpbGxTZW5k
UmVxdWVzdEludGVybmFsKHJlcXVlc3QsIHJlZGlyZWN0UmVzcG9uc2UpOwogICAgIHJldHVybiBX
VEZNb3ZlKHJlcXVlc3QpOwpAQCAtNjIwLDcgKzYyMCw3IEBAIHZvaWQgUmVzb3VyY2VMb2FkZXI6
OmRpZFNlbmREYXRhKFJlc291cmNlSGFuZGxlKiwgdW5zaWduZWQgbG9uZyBsb25nIGJ5dGVzU2Vu
dCwKIAogdm9pZCBSZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlSGFu
ZGxlKiwgUmVzb3VyY2VSZXNwb25zZSYmIHJlc3BvbnNlKQogewotICAgIGlmIChkb2N1bWVudExv
YWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5tYXliZUxvYWRGYWxsYmFja0ZvclJlc3Bv
bnNlKHRoaXMsIHJlc3BvbnNlKSkKKyAgICBpZiAoZG9jdW1lbnRMb2FkZXIoKS0+YXBwbGljYXRp
b25DYWNoZUhvc3QoKS5tYXliZUxvYWRGYWxsYmFja0ZvclJlc3BvbnNlKHRoaXMsIHJlc3BvbnNl
KSkKICAgICAgICAgcmV0dXJuOwogICAgIGRpZFJlY2VpdmVSZXNwb25zZShyZXNwb25zZSk7CiB9
CkBAIC02NDIsNyArNjQyLDcgQEAgdm9pZCBSZXNvdXJjZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGlu
ZyhSZXNvdXJjZUhhbmRsZSosIGRvdWJsZSBmaW5pc2hUaW1lKQogCiB2b2lkIFJlc291cmNlTG9h
ZGVyOjpkaWRGYWlsKFJlc291cmNlSGFuZGxlKiwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3Ip
CiB7Ci0gICAgaWYgKGRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1h
eWJlTG9hZEZhbGxiYWNrRm9yRXJyb3IodGhpcywgZXJyb3IpKQorICAgIGlmIChkb2N1bWVudExv
YWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLm1heWJlTG9hZEZhbGxiYWNrRm9yRXJyb3Io
dGhpcywgZXJyb3IpKQogICAgICAgICByZXR1cm47CiAgICAgZGlkRmFpbChlcnJvcik7CiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3ViZnJhbWVMb2FkZXIuY3BwIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL1N1YmZyYW1lTG9hZGVyLmNwcAppbmRleCBhZjZjMTY0NDJlMWUy
ZTUzM2YzMDMzZjAwNGYzZjc3OTg4MGYxZjFmLi4wOGRkNWNiMTc2MTcyODhhMDY5ZjlkNmNmODFm
MGEwYTZjZmNjYWVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3ViZnJhbWVM
b2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJmcmFtZUxvYWRlci5jcHAK
QEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTYgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTcgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICogQ29weXJpZ2h0IChDKSAyMDA4IE5va2lhIENv
cnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKQogICogQ29weXJpZ2h0IChDKSAy
MDA4LCAyMDA5IFRvcmNoIE1vYmlsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuIChodHRwOi8v
d3d3LnRvcmNobW9iaWxlLmNvbS8pCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDggQWxwIFRva2VyIDxh
bHBAYXRva2VyLmNvbT4KQEAgLTEwOSwyMyArMTA5LDI1IEBAIGJvb2wgU3ViZnJhbWVMb2FkZXI6
OnJlc291cmNlV2lsbFVzZVBsdWdpbihjb25zdCBTdHJpbmcmIHVybCwgY29uc3QgU3RyaW5nJiBt
aW1lCiAKIGJvb2wgU3ViZnJhbWVMb2FkZXI6OnBsdWdpbklzTG9hZGFibGUoY29uc3QgVVJMJiB1
cmwsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUpCiB7CisgICAgYXV0byogZG9jdW1lbnQgPSBtX2Zy
YW1lLmRvY3VtZW50KCk7CisKICAgICBpZiAoTUlNRVR5cGVSZWdpc3RyeTo6aXNKYXZhQXBwbGV0
TUlNRVR5cGUobWltZVR5cGUpKSB7CiAgICAgICAgIGlmICghbV9mcmFtZS5zZXR0aW5ncygpLmlz
SmF2YUVuYWJsZWQoKSkKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgaWYgKGRv
Y3VtZW50KCkgJiYgZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+aXNMb2NhbCgpICYmICFt
X2ZyYW1lLnNldHRpbmdzKCkuaXNKYXZhRW5hYmxlZEZvckxvY2FsRmlsZXMoKSkKKyAgICAgICAg
aWYgKGRvY3VtZW50ICYmIGRvY3VtZW50LT5zZWN1cml0eU9yaWdpbigpLT5pc0xvY2FsKCkgJiYg
IW1fZnJhbWUuc2V0dGluZ3MoKS5pc0phdmFFbmFibGVkRm9yTG9jYWxGaWxlcygpKQogICAgICAg
ICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KIAotICAgIGlmIChkb2N1bWVudCgpKSB7Ci0gICAg
ICAgIGlmIChkb2N1bWVudCgpLT5pc1NhbmRib3hlZChTYW5kYm94UGx1Z2lucykpCisgICAgaWYg
KGRvY3VtZW50KSB7CisgICAgICAgIGlmIChkb2N1bWVudC0+aXNTYW5kYm94ZWQoU2FuZGJveFBs
dWdpbnMpKQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgICAgIGlmICghZG9jdW1l
bnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuRGlzcGxheSh1cmwpKSB7CisgICAgICAgIGlmICgh
ZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCktPmNhbkRpc3BsYXkodXJsKSkgewogICAgICAgICAg
ICAgRnJhbWVMb2FkZXI6OnJlcG9ydExvY2FsTG9hZEZhaWxlZCgmbV9mcmFtZSwgdXJsLnN0cmlu
ZygpKTsKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgfQogCi0gICAgICAgIGlm
ICghbV9mcmFtZS5sb2FkZXIoKS5taXhlZENvbnRlbnRDaGVja2VyKCkuY2FuUnVuSW5zZWN1cmVD
b250ZW50KGRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCksIHVybCkpCisgICAgICAgIGlmICgh
bV9mcmFtZS5sb2FkZXIoKS5taXhlZENvbnRlbnRDaGVja2VyKCkuY2FuUnVuSW5zZWN1cmVDb250
ZW50KGRvY3VtZW50LT5zZWN1cml0eU9yaWdpbigpLCB1cmwpKQogICAgICAgICAgICAgcmV0dXJu
IGZhbHNlOwogICAgIH0KIApAQCAtMjA2LDE4ICsyMDgsMjAgQEAgYm9vbCBTdWJmcmFtZUxvYWRl
cjo6cmVxdWVzdE9iamVjdChIVE1MUGx1Z0luSW1hZ2VFbGVtZW50JiBvd25lckVsZW1lbnQsIGNv
bnN0IFMKICAgICBpZiAodXJsLmlzRW1wdHkoKSAmJiBtaW1lVHlwZS5pc0VtcHR5KCkpCiAgICAg
ICAgIHJldHVybiBmYWxzZTsKIAorICAgIGF1dG8mIGRvY3VtZW50ID0gb3duZXJFbGVtZW50LmRv
Y3VtZW50KCk7CisKICAgICBVUkwgY29tcGxldGVkVVJMOwogICAgIGlmICghdXJsLmlzRW1wdHko
KSkKICAgICAgICAgY29tcGxldGVkVVJMID0gY29tcGxldGVVUkwodXJsKTsKIAotICAgIGRvY3Vt
ZW50KCktPmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT51cGdyYWRlSW5zZWN1cmVSZXF1ZXN0SWZO
ZWVkZWQoY29tcGxldGVkVVJMLCBDb250ZW50U2VjdXJpdHlQb2xpY3k6Okluc2VjdXJlUmVxdWVz
dFR5cGU6OkxvYWQpOworICAgIGRvY3VtZW50LmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT51cGdy
YWRlSW5zZWN1cmVSZXF1ZXN0SWZOZWVkZWQoY29tcGxldGVkVVJMLCBDb250ZW50U2VjdXJpdHlQ
b2xpY3k6Okluc2VjdXJlUmVxdWVzdFR5cGU6OkxvYWQpOwogCiAgICAgYm9vbCBoYXNGYWxsYmFj
a0NvbnRlbnQgPSBpczxIVE1MT2JqZWN0RWxlbWVudD4ob3duZXJFbGVtZW50KSAmJiBkb3duY2Fz
dDxIVE1MT2JqZWN0RWxlbWVudD4ob3duZXJFbGVtZW50KS5oYXNGYWxsYmFja0NvbnRlbnQoKTsK
IAogICAgIGJvb2wgdXNlRmFsbGJhY2s7CiAgICAgaWYgKHNob3VsZFVzZVBsdWdpbihjb21wbGV0
ZWRVUkwsIG1pbWVUeXBlLCBoYXNGYWxsYmFja0NvbnRlbnQsIHVzZUZhbGxiYWNrKSkgewogICAg
ICAgICBib29sIHN1Y2Nlc3MgPSByZXF1ZXN0UGx1Z2luKG93bmVyRWxlbWVudCwgY29tcGxldGVk
VVJMLCBtaW1lVHlwZSwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMsIHVzZUZhbGxiYWNrKTsKLSAg
ICAgICAgbG9nUGx1Z2luUmVxdWVzdChkb2N1bWVudCgpLT5wYWdlKCksIG1pbWVUeXBlLCBjb21w
bGV0ZWRVUkwsIHN1Y2Nlc3MpOworICAgICAgICBsb2dQbHVnaW5SZXF1ZXN0KGRvY3VtZW50LnBh
Z2UoKSwgbWltZVR5cGUsIGNvbXBsZXRlZFVSTCwgc3VjY2Vzcyk7CiAgICAgICAgIHJldHVybiBz
dWNjZXNzOwogICAgIH0KIApAQCAtMjI3LDcgKzIzMSw3IEBAIGJvb2wgU3ViZnJhbWVMb2FkZXI6
OnJlcXVlc3RPYmplY3QoSFRNTFBsdWdJbkltYWdlRWxlbWVudCYgb3duZXJFbGVtZW50LCBjb25z
dCBTCiAgICAgcmV0dXJuIGxvYWRPclJlZGlyZWN0U3ViZnJhbWUob3duZXJFbGVtZW50LCBjb21w
bGV0ZWRVUkwsIGZyYW1lTmFtZSwgTG9ja0hpc3Rvcnk6OlllcywgTG9ja0JhY2tGb3J3YXJkTGlz
dDo6WWVzKTsKIH0KIAotUGFzc1JlZlB0cjxXaWRnZXQ+IFN1YmZyYW1lTG9hZGVyOjpjcmVhdGVK
YXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmIHNpemUsIEhUTUxBcHBsZXRFbGVtZW50JiBl
bGVtZW50LCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0
cmluZz4mIHBhcmFtVmFsdWVzKQorUmVmUHRyPFdpZGdldD4gU3ViZnJhbWVMb2FkZXI6OmNyZWF0
ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYgc2l6ZSwgSFRNTEFwcGxldEVsZW1lbnQm
IGVsZW1lbnQsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8
U3RyaW5nPiYgcGFyYW1WYWx1ZXMpCiB7CiAgICAgU3RyaW5nIGJhc2VVUkxTdHJpbmc7CiAgICAg
U3RyaW5nIGNvZGVCYXNlVVJMU3RyaW5nOwpAQCAtMjU2LDE0ICsyNjAsMTQgQEAgUGFzc1JlZlB0
cjxXaWRnZXQ+IFN1YmZyYW1lTG9hZGVyOjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IElu
dFNpemUmIHNpemUsIEgKICAgICB9CiAKICAgICBpZiAoYmFzZVVSTFN0cmluZy5pc0VtcHR5KCkp
Ci0gICAgICAgIGJhc2VVUkxTdHJpbmcgPSBtX2ZyYW1lLmRvY3VtZW50KCktPmJhc2VVUkwoKS5z
dHJpbmcoKTsKKyAgICAgICAgYmFzZVVSTFN0cmluZyA9IGVsZW1lbnQuZG9jdW1lbnQoKS5iYXNl
VVJMKCkuc3RyaW5nKCk7CiAgICAgVVJMIGJhc2VVUkwgPSBjb21wbGV0ZVVSTChiYXNlVVJMU3Ry
aW5nKTsKIAogICAgIFJlZlB0cjxXaWRnZXQ+IHdpZGdldDsKICAgICBpZiAoYWxsb3dQbHVnaW5z
KCkpCi0gICAgICAgIHdpZGdldCA9IG1fZnJhbWUubG9hZGVyKCkuY2xpZW50KCkuY3JlYXRlSmF2
YUFwcGxldFdpZGdldChzaXplLCAmZWxlbWVudCwgYmFzZVVSTCwgcGFyYW1OYW1lcywgcGFyYW1W
YWx1ZXMpOworICAgICAgICB3aWRnZXQgPSBtX2ZyYW1lLmxvYWRlcigpLmNsaWVudCgpLmNyZWF0
ZUphdmFBcHBsZXRXaWRnZXQoc2l6ZSwgZWxlbWVudCwgYmFzZVVSTCwgcGFyYW1OYW1lcywgcGFy
YW1WYWx1ZXMpOwogCi0gICAgbG9nUGx1Z2luUmVxdWVzdChkb2N1bWVudCgpLT5wYWdlKCksIGVs
ZW1lbnQuc2VydmljZVR5cGUoKSwgU3RyaW5nKCksIHdpZGdldCk7CisgICAgbG9nUGx1Z2luUmVx
dWVzdChtX2ZyYW1lLnBhZ2UoKSwgZWxlbWVudC5zZXJ2aWNlVHlwZSgpLCBTdHJpbmcoKSwgd2lk
Z2V0KTsKIAogICAgIGlmICghd2lkZ2V0KSB7CiAgICAgICAgIFJlbmRlckVtYmVkZGVkT2JqZWN0
KiByZW5kZXJlciA9IGVsZW1lbnQucmVuZGVyRW1iZWRkZWRPYmplY3QoKTsKQEAgLTI3NywxNiAr
MjgxLDE4IEBAIFBhc3NSZWZQdHI8V2lkZ2V0PiBTdWJmcmFtZUxvYWRlcjo6Y3JlYXRlSmF2YUFw
cGxldFdpZGdldChjb25zdCBJbnRTaXplJiBzaXplLCBICiAgICAgcmV0dXJuIHdpZGdldDsKIH0K
IAotRnJhbWUqIFN1YmZyYW1lTG9hZGVyOjpsb2FkT3JSZWRpcmVjdFN1YmZyYW1lKEhUTUxGcmFt
ZU93bmVyRWxlbWVudCYgb3duZXJFbGVtZW50LCBjb25zdCBVUkwmIHJlcXVlc3RVcmwsIGNvbnN0
IEF0b21pY1N0cmluZyYgZnJhbWVOYW1lLCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSwgTG9ja0Jh
Y2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0KQorRnJhbWUqIFN1YmZyYW1lTG9hZGVy
Ojpsb2FkT3JSZWRpcmVjdFN1YmZyYW1lKEhUTUxGcmFtZU93bmVyRWxlbWVudCYgb3duZXJFbGVt
ZW50LCBjb25zdCBVUkwmIHJlcXVlc3RVUkwsIGNvbnN0IEF0b21pY1N0cmluZyYgZnJhbWVOYW1l
LCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSwgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0Zv
cndhcmRMaXN0KQogewotICAgIFVSTCB1cmwgPSByZXF1ZXN0VXJsOwotICAgIG93bmVyRWxlbWVu
dC5kb2N1bWVudCgpLmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT51cGdyYWRlSW5zZWN1cmVSZXF1
ZXN0SWZOZWVkZWQodXJsLCBDb250ZW50U2VjdXJpdHlQb2xpY3k6Okluc2VjdXJlUmVxdWVzdFR5
cGU6OkxvYWQpOworICAgIGF1dG8mIGluaXRpYXRpbmdEb2N1bWVudCA9IG93bmVyRWxlbWVudC5k
b2N1bWVudCgpOwogCi0gICAgRnJhbWUqIGZyYW1lID0gb3duZXJFbGVtZW50LmNvbnRlbnRGcmFt
ZSgpOworICAgIFVSTCB1cGdyYWRlZFJlcXVlc3RVUkwgPSByZXF1ZXN0VVJMOworICAgIG93bmVy
RWxlbWVudC5kb2N1bWVudCgpLmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT51cGdyYWRlSW5zZWN1
cmVSZXF1ZXN0SWZOZWVkZWQodXBncmFkZWRSZXF1ZXN0VVJMLCBDb250ZW50U2VjdXJpdHlQb2xp
Y3k6Okluc2VjdXJlUmVxdWVzdFR5cGU6OkxvYWQpOworCisgICAgYXV0byogZnJhbWUgPSBvd25l
ckVsZW1lbnQuY29udGVudEZyYW1lKCk7CiAgICAgaWYgKGZyYW1lKQotICAgICAgICBmcmFtZS0+
bmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UobV9mcmFtZS5kb2N1
bWVudCgpLCBtX2ZyYW1lLmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCksIHVybCwgbV9mcmFt
ZS5sb2FkZXIoKS5vdXRnb2luZ1JlZmVycmVyKCksIGxvY2tIaXN0b3J5LCBsb2NrQmFja0Zvcndh
cmRMaXN0KTsKKyAgICAgICAgZnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxv
Y2F0aW9uQ2hhbmdlKGluaXRpYXRpbmdEb2N1bWVudCwgaW5pdGlhdGluZ0RvY3VtZW50LnNlY3Vy
aXR5T3JpZ2luKCksIHVwZ3JhZGVkUmVxdWVzdFVSTCwgbV9mcmFtZS5sb2FkZXIoKS5vdXRnb2lu
Z1JlZmVycmVyKCksIGxvY2tIaXN0b3J5LCBsb2NrQmFja0ZvcndhcmRMaXN0KTsKICAgICBlbHNl
Ci0gICAgICAgIGZyYW1lID0gbG9hZFN1YmZyYW1lKG93bmVyRWxlbWVudCwgdXJsLCBmcmFtZU5h
bWUsIG1fZnJhbWUubG9hZGVyKCkub3V0Z29pbmdSZWZlcnJlcigpKTsKKyAgICAgICAgZnJhbWUg
PSBsb2FkU3ViZnJhbWUob3duZXJFbGVtZW50LCB1cGdyYWRlZFJlcXVlc3RVUkwsIGZyYW1lTmFt
ZSwgbV9mcmFtZS5sb2FkZXIoKS5vdXRnb2luZ1JlZmVycmVyKCkpOwogCiAgICAgaWYgKCFmcmFt
ZSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CkBAIC0zMDMsNyArMzA5LDcgQEAgRnJhbWUqIFN1
YmZyYW1lTG9hZGVyOjpsb2FkU3ViZnJhbWUoSFRNTEZyYW1lT3duZXJFbGVtZW50JiBvd25lckVs
ZW1lbnQsIGNvbnN0IFUKICAgICBpbnQgbWFyZ2luV2lkdGggPSAtMTsKICAgICBpbnQgbWFyZ2lu
SGVpZ2h0ID0gLTE7CiAgICAgaWYgKGlzPEhUTUxGcmFtZUVsZW1lbnRCYXNlPihvd25lckVsZW1l
bnQpKSB7Ci0gICAgICAgIEhUTUxGcmFtZUVsZW1lbnRCYXNlJiBmcmFtZUVsZW1lbnRCYXNlID0g
ZG93bmNhc3Q8SFRNTEZyYW1lRWxlbWVudEJhc2U+KG93bmVyRWxlbWVudCk7CisgICAgICAgIGF1
dG8mIGZyYW1lRWxlbWVudEJhc2UgPSBkb3duY2FzdDxIVE1MRnJhbWVFbGVtZW50QmFzZT4ob3du
ZXJFbGVtZW50KTsKICAgICAgICAgYWxsb3dzU2Nyb2xsaW5nID0gZnJhbWVFbGVtZW50QmFzZS5z
Y3JvbGxpbmdNb2RlKCkgIT0gU2Nyb2xsYmFyQWx3YXlzT2ZmOwogICAgICAgICBtYXJnaW5XaWR0
aCA9IGZyYW1lRWxlbWVudEJhc2UubWFyZ2luV2lkdGgoKTsKICAgICAgICAgbWFyZ2luSGVpZ2h0
ID0gZnJhbWVFbGVtZW50QmFzZS5tYXJnaW5IZWlnaHQoKTsKQEAgLTMyMCwxNyArMzI2LDE3IEBA
IEZyYW1lKiBTdWJmcmFtZUxvYWRlcjo6bG9hZFN1YmZyYW1lKEhUTUxGcmFtZU93bmVyRWxlbWVu
dCYgb3duZXJFbGVtZW50LCBjb25zdCBVCiAgICAgU3RyaW5nIHJlZmVycmVyVG9Vc2UgPSBTZWN1
cml0eVBvbGljeTo6Z2VuZXJhdGVSZWZlcnJlckhlYWRlcihvd25lckVsZW1lbnQuZG9jdW1lbnQo
KS5yZWZlcnJlclBvbGljeSgpLCB1cmwsIHJlZmVycmVyKTsKIAogICAgIC8vIFByZXZlbnQgaW5p
dGlhbCBlbXB0eSBkb2N1bWVudCBsb2FkIGZyb20gdHJpZ2dlcmluZyBsb2FkIGV2ZW50cy4KLSAg
ICBtX2ZyYW1lLmRvY3VtZW50KCktPmluY3JlbWVudExvYWRFdmVudERlbGF5Q291bnQoKTsKKyAg
ICBvd25lckVsZW1lbnQuZG9jdW1lbnQoKS5pbmNyZW1lbnRMb2FkRXZlbnREZWxheUNvdW50KCk7
CiAKLSAgICBSZWZQdHI8RnJhbWU+IGZyYW1lID0gbV9mcmFtZS5sb2FkZXIoKS5jbGllbnQoKS5j
cmVhdGVGcmFtZSh1cmwsIG5hbWUsICZvd25lckVsZW1lbnQsIHJlZmVycmVyVG9Vc2UsIGFsbG93
c1Njcm9sbGluZywgbWFyZ2luV2lkdGgsIG1hcmdpbkhlaWdodCk7CisgICAgYXV0byBmcmFtZSA9
IG1fZnJhbWUubG9hZGVyKCkuY2xpZW50KCkuY3JlYXRlRnJhbWUodXJsLCBuYW1lLCBvd25lckVs
ZW1lbnQsIHJlZmVycmVyVG9Vc2UsIGFsbG93c1Njcm9sbGluZywgbWFyZ2luV2lkdGgsIG1hcmdp
bkhlaWdodCk7CiAKLSAgICBtX2ZyYW1lLmRvY3VtZW50KCktPmRlY3JlbWVudExvYWRFdmVudERl
bGF5Q291bnQoKTsKKyAgICBvd25lckVsZW1lbnQuZG9jdW1lbnQoKS5kZWNyZW1lbnRMb2FkRXZl
bnREZWxheUNvdW50KCk7CiAKICAgICBpZiAoIWZyYW1lKSAgewogICAgICAgICBtX2ZyYW1lLmxv
YWRlcigpLmNoZWNrQ2FsbEltcGxpY2l0Q2xvc2UoKTsKICAgICAgICAgcmV0dXJuIG51bGxwdHI7
CiAgICAgfQotICAgIAorCiAgICAgLy8gQWxsIG5ldyBmcmFtZXMgd2lsbCBoYXZlIG1faXNDb21w
bGV0ZSBzZXQgdG8gdHJ1ZSBhdCB0aGlzIHBvaW50IGR1ZSB0byBzeW5jaHJvbm91c2x5IGxvYWRp
bmcKICAgICAvLyBhbiBlbXB0eSBkb2N1bWVudCBpbiBGcmFtZUxvYWRlcjo6aW5pdCgpLiBCdXQg
bWFueSBmcmFtZXMgd2lsbCBub3cgYmUgc3RhcnRpbmcgYW4KICAgICAvLyBhc3luY2hyb25vdXMg
bG9hZCBvZiB1cmwsIHNvIHdlIHNldCBtX2lzQ29tcGxldGUgdG8gZmFsc2UgYW5kIHRoZW4gY2hl
Y2sgaWYgdGhlIGxvYWQgaXMKQEAgLTM0MCwxMiArMzQ2LDEyIEBAIEZyYW1lKiBTdWJmcmFtZUxv
YWRlcjo6bG9hZFN1YmZyYW1lKEhUTUxGcmFtZU93bmVyRWxlbWVudCYgb3duZXJFbGVtZW50LCBj
b25zdCBVCiAgICAgZnJhbWUtPmxvYWRlcigpLnN0YXJ0ZWQoKTsKICAgIAogICAgIGF1dG8qIHJl
bmRlcmVyID0gb3duZXJFbGVtZW50LnJlbmRlcmVyKCk7Ci0gICAgRnJhbWVWaWV3KiB2aWV3ID0g
ZnJhbWUtPnZpZXcoKTsKKyAgICBhdXRvKiB2aWV3ID0gZnJhbWUtPnZpZXcoKTsKICAgICBpZiAo
aXM8UmVuZGVyV2lkZ2V0PihyZW5kZXJlcikgJiYgdmlldykKICAgICAgICAgZG93bmNhc3Q8UmVu
ZGVyV2lkZ2V0PigqcmVuZGVyZXIpLnNldFdpZGdldCh2aWV3KTsKLSAgICAKKwogICAgIG1fZnJh
bWUubG9hZGVyKCkuY2hlY2tDYWxsSW1wbGljaXRDbG9zZSgpOwotICAgIAorCiAgICAgLy8gU29t
ZSBsb2FkcyBhcmUgcGVyZm9ybWVkIHN5bmNocm9ub3VzbHkgKGUuZy4sIGFib3V0OmJsYW5rIGFu
ZCBsb2FkcwogICAgIC8vIGNhbmNlbGxlZCBieSByZXR1cm5pbmcgYSBudWxsIFJlc291cmNlUmVx
dWVzdCBmcm9tIHJlcXVlc3RGcm9tRGVsZWdhdGUpLgogICAgIC8vIEluIHRoZXNlIGNhc2VzLCB0
aGUgc3luY2hyb25vdXMgbG9hZCB3b3VsZCBoYXZlIGZpbmlzaGVkCkBAIC0zODEsMTcgKzM4Nywx
NCBAQCBib29sIFN1YmZyYW1lTG9hZGVyOjpzaG91bGRVc2VQbHVnaW4oY29uc3QgVVJMJiB1cmws
IGNvbnN0IFN0cmluZyYgbWltZVR5cGUsIGJvbwogICAgIHJldHVybiBvYmplY3RUeXBlID09IE9i
amVjdENvbnRlbnRUeXBlOjpOb25lIHx8IG9iamVjdFR5cGUgPT0gT2JqZWN0Q29udGVudFR5cGU6
OlBsdWdJbjsKIH0KIAotRG9jdW1lbnQqIFN1YmZyYW1lTG9hZGVyOjpkb2N1bWVudCgpIGNvbnN0
Ci17Ci0gICAgcmV0dXJuIG1fZnJhbWUuZG9jdW1lbnQoKTsKLX0KLQogYm9vbCBTdWJmcmFtZUxv
YWRlcjo6bG9hZFBsdWdpbihIVE1MUGx1Z0luSW1hZ2VFbGVtZW50JiBwbHVnaW5FbGVtZW50LCBj
b25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgY29uc3QgVmVjdG9yPFN0cmlu
Zz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcywgYm9vbCB1
c2VGYWxsYmFjaykKIHsKICAgICBpZiAodXNlRmFsbGJhY2spCiAgICAgICAgIHJldHVybiBmYWxz
ZTsKIAotICAgIFJlbmRlckVtYmVkZGVkT2JqZWN0KiByZW5kZXJlciA9IHBsdWdpbkVsZW1lbnQu
cmVuZGVyRW1iZWRkZWRPYmplY3QoKTsKKyAgICBhdXRvJiBkb2N1bWVudCA9IHBsdWdpbkVsZW1l
bnQuZG9jdW1lbnQoKTsKKyAgICBhdXRvKiByZW5kZXJlciA9IHBsdWdpbkVsZW1lbnQucmVuZGVy
RW1iZWRkZWRPYmplY3QoKTsKKwogICAgIC8vIEZJWE1FOiBUaGlzIGNvZGUgc2hvdWxkIG5vdCBk
ZXBlbmQgb24gcmVuZGVyZXIhCiAgICAgaWYgKCFyZW5kZXJlcikKICAgICAgICAgcmV0dXJuIGZh
bHNlOwpAQCAtMzk5LDE3ICs0MDIsMTkgQEAgYm9vbCBTdWJmcmFtZUxvYWRlcjo6bG9hZFBsdWdp
bihIVE1MUGx1Z0luSW1hZ2VFbGVtZW50JiBwbHVnaW5FbGVtZW50LCBjb25zdCBVUkwKICAgICBw
bHVnaW5FbGVtZW50LnN1YmZyYW1lTG9hZGVyV2lsbENyZWF0ZVBsdWdJbih1cmwpOwogCiAgICAg
SW50U2l6ZSBjb250ZW50U2l6ZSA9IHJvdW5kZWRJbnRTaXplKExheW91dFNpemUocmVuZGVyZXIt
PmNvbnRlbnRXaWR0aCgpLCByZW5kZXJlci0+Y29udGVudEhlaWdodCgpKSk7Ci0gICAgYm9vbCBs
b2FkTWFudWFsbHkgPSBpczxQbHVnaW5Eb2N1bWVudD4oKmRvY3VtZW50KCkpICYmICFtX2NvbnRh
aW5zUGx1Z2lucyAmJiBkb3duY2FzdDxQbHVnaW5Eb2N1bWVudD4oKmRvY3VtZW50KCkpLnNob3Vs
ZExvYWRQbHVnaW5NYW51YWxseSgpOworICAgIGJvb2wgbG9hZE1hbnVhbGx5ID0gaXM8UGx1Z2lu
RG9jdW1lbnQ+KGRvY3VtZW50KSAmJiAhbV9jb250YWluc1BsdWdpbnMgJiYgZG93bmNhc3Q8UGx1
Z2luRG9jdW1lbnQ+KGRvY3VtZW50KS5zaG91bGRMb2FkUGx1Z2luTWFudWFsbHkoKTsKIAogI2lm
IFBMQVRGT1JNKElPUykKICAgICAvLyBPbiBpT1MsIHdlIG9ubHkgdGVsbCB0aGUgcGx1Z2luIHRv
IGJlIGluIGZ1bGwgcGFnZSBtb2RlIGlmIHRoZSBjb250YWluaW5nIHBsdWdpbiBkb2N1bWVudCBp
cyB0aGUgdG9wIGxldmVsIGRvY3VtZW50LgotICAgIGlmIChkb2N1bWVudCgpLT5vd25lckVsZW1l
bnQoKSkKKyAgICBpZiAoZG9jdW1lbnQub3duZXJFbGVtZW50KCkpCiAgICAgICAgIGxvYWRNYW51
YWxseSA9IGZhbHNlOwogI2VuZGlmCiAKLSAgICBXZWFrUHRyPFJlbmRlcldpZGdldD4gd2Vha1Jl
bmRlcmVyID0gcmVuZGVyZXItPmNyZWF0ZVdlYWtQdHIoKTsKLSAgICAvLyBjcmVhdGVQbHVnaW4g
Km1heSogY2F1c2UgdGhpcyByZW5kZXJlciB0byBkaXNhcHBlYXIgZnJvbSB1bmRlcm5lYXRoLgot
ICAgIFJlZlB0cjxXaWRnZXQ+IHdpZGdldCA9IG1fZnJhbWUubG9hZGVyKCkuY2xpZW50KCkuY3Jl
YXRlUGx1Z2luKGNvbnRlbnRTaXplLCAmcGx1Z2luRWxlbWVudCwgdXJsLCBwYXJhbU5hbWVzLCBw
YXJhbVZhbHVlcywgbWltZVR5cGUsIGxvYWRNYW51YWxseSk7CisgICAgYXV0byB3ZWFrUmVuZGVy
ZXIgPSByZW5kZXJlci0+Y3JlYXRlV2Vha1B0cigpOworCisgICAgYXV0byB3aWRnZXQgPSBtX2Zy
YW1lLmxvYWRlcigpLmNsaWVudCgpLmNyZWF0ZVBsdWdpbihjb250ZW50U2l6ZSwgcGx1Z2luRWxl
bWVudCwgdXJsLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcywgbWltZVR5cGUsIGxvYWRNYW51YWxs
eSk7CisKKyAgICAvLyBUaGUgY2FsbCB0byBjcmVhdGVQbHVnaW4gKm1heSogY2F1c2UgdGhpcyBy
ZW5kZXJlciB0byBkaXNhcHBlYXIgZnJvbSB1bmRlcm5lYXRoLgogICAgIGlmICghd2Vha1JlbmRl
cmVyKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKQEAgLTQzMyw5ICs0MzgsNyBAQCBVUkwgU3Vi
ZnJhbWVMb2FkZXI6OmNvbXBsZXRlVVJMKGNvbnN0IFN0cmluZyYgdXJsKSBjb25zdAogCiBib29s
IFN1YmZyYW1lTG9hZGVyOjpzaG91bGRDb252ZXJ0SW52YWxpZFVSTHNUb0JsYW5rKCkgY29uc3QK
IHsKLSAgICBpZiAoU2V0dGluZ3MqIHNldHRpbmdzID0gZG9jdW1lbnQoKSA/IGRvY3VtZW50KCkt
PnNldHRpbmdzKCkgOiBudWxscHRyKQotICAgICAgICByZXR1cm4gc2V0dGluZ3MtPnNob3VsZENv
bnZlcnRJbnZhbGlkVVJMc1RvQmxhbmsoKTsKLSAgICByZXR1cm4gdHJ1ZTsKKyAgICByZXR1cm4g
bV9mcmFtZS5zZXR0aW5ncygpLnNob3VsZENvbnZlcnRJbnZhbGlkVVJMc1RvQmxhbmsoKTsKIH0K
IAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL1N1YmZyYW1lTG9hZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3ViZnJhbWVMb2Fk
ZXIuaAppbmRleCA5NTEzOTc0YjgxNzA1YWVjNjVkMTU1MDIzMzkzNWQ0YTU0MjNiNzg1Li4xMmJm
NzcxN2U3NDMyMzVjY2M3ZGE3ZGNjYzMzN2Q0MjY5MmFhOTYxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvU3ViZnJhbWVMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvU3ViZnJhbWVMb2FkZXIuaApAQCAtNjEsNyArNjEsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBy
ZXF1ZXN0T2JqZWN0KEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQmLCBjb25zdCBTdHJpbmcmIHVybCwg
Y29uc3QgQXRvbWljU3RyaW5nJiBmcmFtZU5hbWUsCiAgICAgICAgIGNvbnN0IFN0cmluZyYgc2Vy
dmljZVR5cGUsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8
U3RyaW5nPiYgcGFyYW1WYWx1ZXMpOwogCi0gICAgUGFzc1JlZlB0cjxXaWRnZXQ+IGNyZWF0ZUph
dmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYsIEhUTUxBcHBsZXRFbGVtZW50JiwgY29uc3Qg
VmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZh
bHVlcyk7CisgICAgUmVmUHRyPFdpZGdldD4gY3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJ
bnRTaXplJiwgSFRNTEFwcGxldEVsZW1lbnQmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1O
YW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKTsKIAogICAgIFdFQkNPUkVf
RVhQT1JUIGJvb2wgYWxsb3dQbHVnaW5zKCk7CiAKQEAgLTc4LDE0ICs3OCwxMiBAQCBwcml2YXRl
OgogICAgIGJvb2wgc2hvdWxkVXNlUGx1Z2luKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgbWlt
ZVR5cGUsIGJvb2wgaGFzRmFsbGJhY2ssIGJvb2wmIHVzZUZhbGxiYWNrKTsKICAgICBib29sIHBs
dWdpbklzTG9hZGFibGUoY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSk7CiAKLSAg
ICBEb2N1bWVudCogZG9jdW1lbnQoKSBjb25zdDsKKyAgICBVUkwgY29tcGxldGVVUkwoY29uc3Qg
U3RyaW5nJikgY29uc3Q7CiAKICAgICBib29sIHNob3VsZENvbnZlcnRJbnZhbGlkVVJMc1RvQmxh
bmsoKSBjb25zdDsKIAogICAgIGJvb2wgbV9jb250YWluc1BsdWdpbnM7CiAgICAgRnJhbWUmIG1f
ZnJhbWU7Ci0KLSAgICBVUkwgY29tcGxldGVVUkwoY29uc3QgU3RyaW5nJikgY29uc3Q7CiB9Owog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YnJlc291
cmNlTG9hZGVyLmNwcAppbmRleCBiNmE2MzQxMGQzZWM2NmY5NWU2NjEwNWFhZGY3YzMzMmY5YjQ0
MWE2Li42ZTk3ZmE0OTFmNDJiYTRjZTUyOTI2NTkxOWIzNmI4M2Y1MzFjMzU3IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHAKQEAgLTI1Niw2ICsyNTYsNyBA
QCB2b2lkIFN1YnJlc291cmNlTG9hZGVyOjpkaWRTZW5kRGF0YSh1bnNpZ25lZCBsb25nIGxvbmcg
Ynl0ZXNTZW50LCB1bnNpZ25lZCBsb25nCiB9CiAKICNpZiBVU0UoUVVJQ0tfTE9PSykKKwogYm9v
bCBTdWJyZXNvdXJjZUxvYWRlcjo6c2hvdWxkQ3JlYXRlUXVpY2tMb29rSGFuZGxlRm9yUmVzcG9u
c2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpIGNvbnN0CiB7CiAgICAgaWYgKG1f
cmVzb3VyY2UtPnR5cGUoKSAhPSBDYWNoZWRSZXNvdXJjZTo6TWFpblJlc291cmNlKQpAQCAtMjY2
LDYgKzI2Nyw3IEBAIGJvb2wgU3VicmVzb3VyY2VMb2FkZXI6OnNob3VsZENyZWF0ZVF1aWNrTG9v
a0hhbmRsZUZvclJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzCiAKICAgICByZXR1cm4gUXVpY2tM
b29rSGFuZGxlOjpzaG91bGRDcmVhdGVGb3JNSU1FVHlwZShyZXNwb25zZS5taW1lVHlwZSgpKTsK
IH0KKwogI2VuZGlmCiAKIHZvaWQgU3VicmVzb3VyY2VMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25z
ZShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlLmNwcAppbmRleCA2ZjgyZTFkYzc5
NmE5NjAyMDkxYmQ2ODJjOTc0N2MyNDhiOTU0YWQxLi42MDA5Y2NhNzcyZmUyYmNhNzYwMmM3MzE0
Njc4ZmU0YTI0OGI1OWJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2Fj
aGUvQXBwbGljYXRpb25DYWNoZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNh
Y2hlL0FwcGxpY2F0aW9uQ2FjaGUuY3BwCkBAIC00MywxNyArNDMsMTMgQEAgc3RhdGljIGlubGlu
ZSBib29sIGZhbGxiYWNrVVJMTG9uZ2VyVGhhbihjb25zdCBzdGQ6OnBhaXI8VVJMLCBVUkw+JiBs
aHMsIGNvbnN0IHMKIH0KIAogQXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZSgpCi0g
ICAgOiBtX2dyb3VwKG51bGxwdHIpCi0gICAgLCBtX21hbmlmZXN0KG51bGxwdHIpCi0gICAgLCBt
X2VzdGltYXRlZFNpemVJblN0b3JhZ2UoMCkKLSAgICAsIG1fc3RvcmFnZUlEKDApCiB7CiB9CiAK
IEFwcGxpY2F0aW9uQ2FjaGU6On5BcHBsaWNhdGlvbkNhY2hlKCkKIHsKICAgICBpZiAobV9ncm91
cCkKLSAgICAgICAgbV9ncm91cC0+Y2FjaGVEZXN0cm95ZWQodGhpcyk7CisgICAgICAgIG1fZ3Jv
dXAtPmNhY2hlRGVzdHJveWVkKCp0aGlzKTsKIH0KICAgICAKIHZvaWQgQXBwbGljYXRpb25DYWNo
ZTo6c2V0R3JvdXAoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCkKQEAgLTY0LDU3ICs2MCwz
OSBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGU6OnNldEdyb3VwKEFwcGxpY2F0aW9uQ2FjaGVHcm91
cCogZ3JvdXApCiAKIGJvb2wgQXBwbGljYXRpb25DYWNoZTo6aXNDb21wbGV0ZSgpCiB7Ci0gICAg
cmV0dXJuIG1fZ3JvdXAgJiYgbV9ncm91cC0+Y2FjaGVJc0NvbXBsZXRlKHRoaXMpOworICAgIHJl
dHVybiBtX2dyb3VwICYmIG1fZ3JvdXAtPmNhY2hlSXNDb21wbGV0ZSgqdGhpcyk7CiB9CiAKLXZv
aWQgQXBwbGljYXRpb25DYWNoZTo6c2V0TWFuaWZlc3RSZXNvdXJjZShQYXNzUmVmUHRyPEFwcGxp
Y2F0aW9uQ2FjaGVSZXNvdXJjZT4gbWFuaWZlc3QpCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGU6OnNl
dE1hbmlmZXN0UmVzb3VyY2UoUmVmPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4mJiBtYW5pZmVz
dCkKIHsKLSAgICBBU1NFUlQobWFuaWZlc3QpOwogICAgIEFTU0VSVCghbV9tYW5pZmVzdCk7CiAg
ICAgQVNTRVJUKG1hbmlmZXN0LT50eXBlKCkgJiBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6Ok1h
bmlmZXN0KTsKLSAgICAKLSAgICBtX21hbmlmZXN0ID0gbWFuaWZlc3QuZ2V0KCk7Ci0gICAgCi0g
ICAgYWRkUmVzb3VyY2UobWFuaWZlc3QpOworCisgICAgbV9tYW5pZmVzdCA9IG1hbmlmZXN0LnB0
cigpOworCisgICAgYWRkUmVzb3VyY2UoV1RGTW92ZShtYW5pZmVzdCkpOwogfQogICAgIAotdm9p
ZCBBcHBsaWNhdGlvbkNhY2hlOjphZGRSZXNvdXJjZShQYXNzUmVmUHRyPEFwcGxpY2F0aW9uQ2Fj
aGVSZXNvdXJjZT4gcmVzb3VyY2UpCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGU6OmFkZFJlc291cmNl
KFJlZjxBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+JiYgcmVzb3VyY2UpCiB7Ci0gICAgQVNTRVJU
KHJlc291cmNlKTsKLSAgICAKLSAgICBjb25zdCBTdHJpbmcmIHVybCA9IHJlc291cmNlLT51cmwo
KTsKLSAgICAKKyAgICBhdXRvJiB1cmwgPSByZXNvdXJjZS0+dXJsKCk7CisKKyAgICBBU1NFUlQo
IVVSTChQYXJzZWRVUkxTdHJpbmcsIHVybCkuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkpOwogICAg
IEFTU0VSVCghbV9yZXNvdXJjZXMuY29udGFpbnModXJsKSk7Ci0gICAgCisKICAgICBpZiAobV9z
dG9yYWdlSUQpIHsKICAgICAgICAgQVNTRVJUKCFyZXNvdXJjZS0+c3RvcmFnZUlEKCkpOwogICAg
ICAgICBBU1NFUlQocmVzb3VyY2UtPnR5cGUoKSAmIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6
TWFzdGVyKTsKLSAgICAgICAgCisKICAgICAgICAgLy8gQWRkIHRoZSByZXNvdXJjZSB0byB0aGUg
c3RvcmFnZS4KLSAgICAgICAgbV9ncm91cC0+c3RvcmFnZSgpLnN0b3JlKHJlc291cmNlLmdldCgp
LCB0aGlzKTsKKyAgICAgICAgbV9ncm91cC0+c3RvcmFnZSgpLnN0b3JlKHJlc291cmNlLnB0cigp
LCB0aGlzKTsKICAgICB9CiAKICAgICBtX2VzdGltYXRlZFNpemVJblN0b3JhZ2UgKz0gcmVzb3Vy
Y2UtPmVzdGltYXRlZFNpemVJblN0b3JhZ2UoKTsKIAotICAgIG1fcmVzb3VyY2VzLnNldCh1cmws
IHJlc291cmNlKTsKKyAgICBtX3Jlc291cmNlcy5zZXQodXJsLCBXVEZNb3ZlKHJlc291cmNlKSk7
CiB9CiAKLXVuc2lnbmVkIEFwcGxpY2F0aW9uQ2FjaGU6OnJlbW92ZVJlc291cmNlKGNvbnN0IFN0
cmluZyYgdXJsKQotewotICAgIEhhc2hNYXA8U3RyaW5nLCBSZWZQdHI8QXBwbGljYXRpb25DYWNo
ZVJlc291cmNlPj46Oml0ZXJhdG9yIGl0ID0gbV9yZXNvdXJjZXMuZmluZCh1cmwpOwotICAgIGlm
IChpdCA9PSBtX3Jlc291cmNlcy5lbmQoKSkKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICAvLyBU
aGUgcmVzb3VyY2UgZXhpc3RzLCBnZXQgaXRzIHR5cGUgc28gd2UgY2FuIHJldHVybiBpdC4KLSAg
ICB1bnNpZ25lZCB0eXBlID0gaXQtPnZhbHVlLT50eXBlKCk7Ci0KLSAgICBtX2VzdGltYXRlZFNp
emVJblN0b3JhZ2UgLT0gaXQtPnZhbHVlLT5lc3RpbWF0ZWRTaXplSW5TdG9yYWdlKCk7Ci0KLSAg
ICBtX3Jlc291cmNlcy5yZW1vdmUoaXQpOwotCi0gICAgcmV0dXJuIHR5cGU7Ci19ICAgIAotICAg
IAogQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiBBcHBsaWNhdGlvbkNhY2hlOjpyZXNvdXJjZUZv
clVSTChjb25zdCBTdHJpbmcmIHVybCkKIHsKICAgICBBU1NFUlQoIVVSTChQYXJzZWRVUkxTdHJp
bmcsIHVybCkuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkpOwpAQCAtMTMzLDkgKzExMSw3IEBAIEFw
cGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSogQXBwbGljYXRpb25DYWNoZTo6cmVzb3VyY2VGb3JSZXF1
ZXN0KGNvbnN0IFJlc291cmNlUmVxCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCiAgICAgVVJM
IHVybChyZXF1ZXN0LnVybCgpKTsKLSAgICBpZiAodXJsLmhhc0ZyYWdtZW50SWRlbnRpZmllcigp
KQotICAgICAgICB1cmwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7Ci0KKyAgICB1cmwucmVt
b3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CiAgICAgcmV0dXJuIHJlc291cmNlRm9yVVJMKHVybCk7
CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNh
dGlvbkNhY2hlLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25D
YWNoZS5oCmluZGV4IDc2MTc2NjIwZmNkNmZhMzlhZDJhNWMzOTYxYmFjMjNiMTdhN2MwMjUuLjc3
ZGRhNTM2YTdjMTk4YjhhMTkxMTYwMzA1YjMyZjZkMzczNDEwNTIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGUuaApAQCAtMSw1ICsxLDUg
QEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDggQXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2Vy
dmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJl
c2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yNiwxMSArMjYsNyBA
QAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgotI2luY2x1ZGUgPHd0
Zi9IYXNoU2V0Lmg+Ci0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KLSNpbmNsdWRlIDx3dGYv
UmVmQ291bnRlZC5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0hhc2guaD4KLSNpbmNsdWRl
IDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC00MSwy
MCArMzcsMTkgQEAgY2xhc3MgVVJMOwogY2xhc3MgUmVzb3VyY2VSZXF1ZXN0OwogY2xhc3MgU2Vj
dXJpdHlPcmlnaW47CiAKLXR5cGVkZWYgVmVjdG9yPHN0ZDo6cGFpcjxVUkwsIFVSTD4+IEZhbGxi
YWNrVVJMVmVjdG9yOwordXNpbmcgRmFsbGJhY2tVUkxWZWN0b3IgPSBWZWN0b3I8c3RkOjpwYWly
PFVSTCwgVVJMPj47CiAKIGNsYXNzIEFwcGxpY2F0aW9uQ2FjaGUgOiBwdWJsaWMgUmVmQ291bnRl
ZDxBcHBsaWNhdGlvbkNhY2hlPiB7CiBwdWJsaWM6CiAgICAgc3RhdGljIFJlZjxBcHBsaWNhdGlv
bkNhY2hlPiBjcmVhdGUoKSB7IHJldHVybiBhZG9wdFJlZigqbmV3IEFwcGxpY2F0aW9uQ2FjaGUp
OyB9Ci0gICAgCisKICAgICB+QXBwbGljYXRpb25DYWNoZSgpOwogCi0gICAgdm9pZCBhZGRSZXNv
dXJjZShQYXNzUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4gcmVzb3VyY2UpOwotICAg
IHVuc2lnbmVkIHJlbW92ZVJlc291cmNlKGNvbnN0IFN0cmluZyYgdXJsKTsKLSAgICAKLSAgICB2
b2lkIHNldE1hbmlmZXN0UmVzb3VyY2UoUGFzc1JlZlB0cjxBcHBsaWNhdGlvbkNhY2hlUmVzb3Vy
Y2U+IG1hbmlmZXN0KTsKKyAgICB2b2lkIGFkZFJlc291cmNlKFJlZjxBcHBsaWNhdGlvbkNhY2hl
UmVzb3VyY2U+JiYpOworCisgICAgdm9pZCBzZXRNYW5pZmVzdFJlc291cmNlKFJlZjxBcHBsaWNh
dGlvbkNhY2hlUmVzb3VyY2U+JiYpOwogICAgIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSogbWFu
aWZlc3RSZXNvdXJjZSgpIGNvbnN0IHsgcmV0dXJuIG1fbWFuaWZlc3Q7IH0KLSAgICAKKwogICAg
IHZvaWQgc2V0R3JvdXAoQXBwbGljYXRpb25DYWNoZUdyb3VwKik7CiAgICAgQXBwbGljYXRpb25D
YWNoZUdyb3VwKiBncm91cCgpIGNvbnN0IHsgcmV0dXJuIG1fZ3JvdXA7IH0KIApAQCAtNzIsMzkg
KzY3LDM4IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldEZhbGxiYWNrVVJMcyhjb25zdCBGYWxsYmFj
a1VSTFZlY3RvciYpOwogICAgIGNvbnN0IEZhbGxiYWNrVVJMVmVjdG9yJiBmYWxsYmFja1VSTHMo
KSBjb25zdCB7IHJldHVybiBtX2ZhbGxiYWNrVVJMczsgfQogICAgIGJvb2wgdXJsTWF0Y2hlc0Zh
bGxiYWNrTmFtZXNwYWNlKGNvbnN0IFVSTCYsIFVSTCogZmFsbGJhY2tVUkwgPSBudWxscHRyKTsK
LSAgICAKKwogI2lmbmRlZiBOREVCVUcKICAgICB2b2lkIGR1bXAoKTsKICNlbmRpZgogCi0gICAg
dHlwZWRlZiBIYXNoTWFwPFN0cmluZywgUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4+
IFJlc291cmNlTWFwOworICAgIHVzaW5nIFJlc291cmNlTWFwID0gSGFzaE1hcDxTdHJpbmcsIFJl
ZlB0cjxBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+PjsKICAgICBjb25zdCBSZXNvdXJjZU1hcCYg
cmVzb3VyY2VzKCkgY29uc3QgeyByZXR1cm4gbV9yZXNvdXJjZXM7IH0KLSAgICAKKwogICAgIHZv
aWQgc2V0U3RvcmFnZUlEKHVuc2lnbmVkIHN0b3JhZ2VJRCkgeyBtX3N0b3JhZ2VJRCA9IHN0b3Jh
Z2VJRDsgfQogICAgIHVuc2lnbmVkIHN0b3JhZ2VJRCgpIGNvbnN0IHsgcmV0dXJuIG1fc3RvcmFn
ZUlEOyB9CiAgICAgdm9pZCBjbGVhclN0b3JhZ2VJRCgpOwotICAgIAorCiAgICAgc3RhdGljIGJv
b2wgcmVxdWVzdElzSFRUUE9ySFRUUFNHZXQoY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7CiAKICAg
ICBpbnQ2NF90IGVzdGltYXRlZFNpemVJblN0b3JhZ2UoKSBjb25zdCB7IHJldHVybiBtX2VzdGlt
YXRlZFNpemVJblN0b3JhZ2U7IH0KIAogcHJpdmF0ZToKICAgICBBcHBsaWNhdGlvbkNhY2hlKCk7
Ci0gICAgCi0gICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBtX2dyb3VwOworCisgICAgQXBwbGlj
YXRpb25DYWNoZUdyb3VwKiBtX2dyb3VwIHsgbnVsbHB0ciB9OwogICAgIFJlc291cmNlTWFwIG1f
cmVzb3VyY2VzOwotICAgIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSogbV9tYW5pZmVzdDsKKyAg
ICBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqIG1fbWFuaWZlc3QgeyBudWxscHRyIH07CiAKLSAg
ICBib29sIG1fYWxsb3dBbGxOZXR3b3JrUmVxdWVzdHM7CisgICAgYm9vbCBtX2FsbG93QWxsTmV0
d29ya1JlcXVlc3RzIHsgZmFsc2UgfTsKICAgICBWZWN0b3I8VVJMPiBtX29ubGluZVdoaXRlbGlz
dDsKICAgICBGYWxsYmFja1VSTFZlY3RvciBtX2ZhbGxiYWNrVVJMczsKIAogICAgIC8vIFRoZSB0
b3RhbCBzaXplIG9mIHRoZSByZXNvdXJjZXMgYmVsb25naW5nIHRvIHRoaXMgQXBwbGljYXRpb24g
Q2FjaGUgaW5zdGFuY2UuCi0gICAgLy8gVGhpcyBpcyBhbiBlc3RpbWF0aW9uIG9mIHRoZSBzaXpl
IHRoaXMgQXBwbGljYXRpb24gQ2FjaGUgb2NjdXBpZXMgaW4gdGhlCi0gICAgLy8gZGF0YWJhc2Ug
ZmlsZS4KLSAgICBpbnQ2NF90IG1fZXN0aW1hdGVkU2l6ZUluU3RvcmFnZTsKKyAgICAvLyBUaGlz
IGlzIGFuIGVzdGltYXRpb24gb2YgdGhlIHNpemUgdGhpcyBBcHBsaWNhdGlvbiBDYWNoZSBvY2N1
cGllcyBpbiB0aGUgZGF0YWJhc2UgZmlsZS4KKyAgICBpbnQ2NF90IG1fZXN0aW1hdGVkU2l6ZUlu
U3RvcmFnZSB7IDAgfTsKIAotICAgIHVuc2lnbmVkIG1fc3RvcmFnZUlEOworICAgIHVuc2lnbmVk
IG1fc3RvcmFnZUlEIHsgMCB9OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91
cC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdy
b3VwLmNwcAppbmRleCA4NmU5YTVhODg0OTA3Y2RkM2Q0NmFmY2NkZTAzZjhkM2ZhMDk4NTNhLi40
MzNmYjMxMzhhOTVmZTI0NGZlYjdjYTIwNmY5OThhNzBjYWNiNDU3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmNw
cApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDgsIDIwMDksIDIwMTAg
QXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIw
MTcgQXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCkBAIC0zNCw2ICszNCw3IEBACiAjaW5jbHVkZSAiQ2hyb21lQ2xpZW50LmgiCiAj
aW5jbHVkZSAiRE9NQXBwbGljYXRpb25DYWNoZS5oIgogI2luY2x1ZGUgIkRvY3VtZW50TG9hZGVy
LmgiCisjaW5jbHVkZSAiRXZlbnROYW1lcy5oIgogI2luY2x1ZGUgIkZyYW1lLmgiCiAjaW5jbHVk
ZSAiRnJhbWVMb2FkZXIuaCIKICNpbmNsdWRlICJGcmFtZUxvYWRlckNsaWVudC5oIgpAQCAtNTQs
MTcgKzU1LDcgQEAgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXAo
UmVmPEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlPiYmIHN0b3IKICAgICA6IG1fc3RvcmFnZShXVEZN
b3ZlKHN0b3JhZ2UpKQogICAgICwgbV9tYW5pZmVzdFVSTChtYW5pZmVzdFVSTCkKICAgICAsIG1f
b3JpZ2luKFNlY3VyaXR5T3JpZ2luOjpjcmVhdGUobWFuaWZlc3RVUkwpKQotICAgICwgbV91cGRh
dGVTdGF0dXMoSWRsZSkKLSAgICAsIG1fZG93bmxvYWRpbmdQZW5kaW5nTWFzdGVyUmVzb3VyY2VM
b2FkZXJzQ291bnQoMCkKLSAgICAsIG1fcHJvZ3Jlc3NUb3RhbCgwKQotICAgICwgbV9wcm9ncmVz
c0RvbmUoMCkKLSAgICAsIG1fZnJhbWUobnVsbHB0cikKLSAgICAsIG1fc3RvcmFnZUlEKDApCi0g
ICAgLCBtX2lzT2Jzb2xldGUoZmFsc2UpCi0gICAgLCBtX2NvbXBsZXRpb25UeXBlKE5vbmUpCi0g
ICAgLCBtX2NhbGxlZFJlYWNoZWRNYXhBcHBDYWNoZVNpemUoZmFsc2UpCiAgICAgLCBtX2F2YWls
YWJsZVNwYWNlSW5RdW90YShBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6dW5rbm93blF1b3RhKCkp
Ci0gICAgLCBtX29yaWdpblF1b3RhRXhjZWVkZWRQcmV2aW91c2x5KGZhbHNlKQogewogfQogCkBA
IC03MiwxMCArNjMsMTAgQEAgQXBwbGljYXRpb25DYWNoZUdyb3VwOjp+QXBwbGljYXRpb25DYWNo
ZUdyb3VwKCkKIHsKICAgICBBU1NFUlQoIW1fbmV3ZXN0Q2FjaGUpOwogICAgIEFTU0VSVChtX2Nh
Y2hlcy5pc0VtcHR5KCkpOwotICAgIAorCiAgICAgc3RvcExvYWRpbmcoKTsKIAotICAgIG1fc3Rv
cmFnZS0+Y2FjaGVHcm91cERlc3Ryb3llZCh0aGlzKTsKKyAgICBtX3N0b3JhZ2UtPmNhY2hlR3Jv
dXBEZXN0cm95ZWQoKnRoaXMpOwogfQogICAgIAogQXBwbGljYXRpb25DYWNoZSogQXBwbGljYXRp
b25DYWNoZUdyb3VwOjpjYWNoZUZvck1haW5SZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYg
cmVxdWVzdCwgRG9jdW1lbnRMb2FkZXIqIGRvY3VtZW50TG9hZGVyKQpAQCAtODQsMjEgKzc1LDIw
IEBAIEFwcGxpY2F0aW9uQ2FjaGUqIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6Y2FjaGVGb3JNYWlu
UmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCiAg
ICAgVVJMIHVybChyZXF1ZXN0LnVybCgpKTsKLSAgICBpZiAodXJsLmhhc0ZyYWdtZW50SWRlbnRp
ZmllcigpKQotICAgICAgICB1cmwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CisgICAgdXJs
LnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpOwogCiAgICAgYXV0byogcGFnZSA9IGRvY3VtZW50
TG9hZGVyLT5mcmFtZSgpID8gZG9jdW1lbnRMb2FkZXItPmZyYW1lKCktPnBhZ2UoKSA6IG51bGxw
dHI7CiAgICAgaWYgKCFwYWdlIHx8IHBhZ2UtPnVzZXNFcGhlbWVyYWxTZXNzaW9uKCkpCiAgICAg
ICAgIHJldHVybiBudWxscHRyOwogCi0gICAgaWYgKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3Jv
dXAgPSBwYWdlLT5hcHBsaWNhdGlvbkNhY2hlU3RvcmFnZSgpLmNhY2hlR3JvdXBGb3JVUkwodXJs
KSkgewotICAgICAgICBBU1NFUlQoZ3JvdXAtPm5ld2VzdENhY2hlKCkpOwotICAgICAgICBBU1NF
UlQoIWdyb3VwLT5pc09ic29sZXRlKCkpOwotICAgICAgICAKLSAgICAgICAgcmV0dXJuIGdyb3Vw
LT5uZXdlc3RDYWNoZSgpOwotICAgIH0KLSAgICAKLSAgICByZXR1cm4gbnVsbHB0cjsKKyAgICBh
dXRvKiBncm91cCA9IHBhZ2UtPmFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlKCkuY2FjaGVHcm91cEZv
clVSTCh1cmwpOworICAgIGlmICghZ3JvdXApCisgICAgICAgIHJldHVybiBudWxscHRyOworCisg
ICAgQVNTRVJUKGdyb3VwLT5uZXdlc3RDYWNoZSgpKTsKKyAgICBBU1NFUlQoIWdyb3VwLT5pc09i
c29sZXRlKCkpOworCisgICAgcmV0dXJuIGdyb3VwLT5uZXdlc3RDYWNoZSgpOwogfQogICAgIAog
QXBwbGljYXRpb25DYWNoZSogQXBwbGljYXRpb25DYWNoZUdyb3VwOjpmYWxsYmFja0NhY2hlRm9y
TWFpblJlcXVlc3QoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBEb2N1bWVudExvYWRl
ciogZG9jdW1lbnRMb2FkZXIpCkBAIC0xMDYsODEgKzk2LDg3IEBAIEFwcGxpY2F0aW9uQ2FjaGUq
IEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZmFsbGJhY2tDYWNoZUZvck1haW5SZXF1ZXN0KGNvbnN0
IFJlc291CiAgICAgaWYgKCFBcHBsaWNhdGlvbkNhY2hlOjpyZXF1ZXN0SXNIVFRQT3JIVFRQU0dl
dChyZXF1ZXN0KSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKLSAgICBVUkwgdXJsKHJlcXVl
c3QudXJsKCkpOwotICAgIGlmICh1cmwuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkpCi0gICAgICAg
IHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKKyAgICBhdXRvKiBmcmFtZSA9IGRvY3Vt
ZW50TG9hZGVyLT5mcmFtZSgpOworICAgIGlmICghZnJhbWUpCisgICAgICAgIHJldHVybiBudWxs
cHRyOwogCi0gICAgYXV0byogcGFnZSA9IGRvY3VtZW50TG9hZGVyLT5mcmFtZSgpID8gZG9jdW1l
bnRMb2FkZXItPmZyYW1lKCktPnBhZ2UoKSA6IG51bGxwdHI7CisgICAgYXV0byogcGFnZSA9IGZy
YW1lLT5wYWdlKCk7CiAgICAgaWYgKCFwYWdlKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAot
ICAgIGlmIChBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwID0gcGFnZS0+YXBwbGljYXRpb25D
YWNoZVN0b3JhZ2UoKS5mYWxsYmFja0NhY2hlR3JvdXBGb3JVUkwodXJsKSkgewotICAgICAgICBB
U1NFUlQoZ3JvdXAtPm5ld2VzdENhY2hlKCkpOwotICAgICAgICBBU1NFUlQoIWdyb3VwLT5pc09i
c29sZXRlKCkpOworICAgIFVSTCB1cmwocmVxdWVzdC51cmwoKSk7CisgICAgdXJsLnJlbW92ZUZy
YWdtZW50SWRlbnRpZmllcigpOwogCi0gICAgICAgIHJldHVybiBncm91cC0+bmV3ZXN0Q2FjaGUo
KTsKLSAgICB9Ci0gICAgCi0gICAgcmV0dXJuIG51bGxwdHI7CisgICAgYXV0byogZ3JvdXAgPSBw
YWdlLT5hcHBsaWNhdGlvbkNhY2hlU3RvcmFnZSgpLmZhbGxiYWNrQ2FjaGVHcm91cEZvclVSTCh1
cmwpOworICAgIGlmICghZ3JvdXApCisgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgQVNT
RVJUKGdyb3VwLT5uZXdlc3RDYWNoZSgpKTsKKyAgICBBU1NFUlQoIWdyb3VwLT5pc09ic29sZXRl
KCkpOworCisgICAgcmV0dXJuIGdyb3VwLT5uZXdlc3RDYWNoZSgpOwogfQogCi12b2lkIEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cDo6c2VsZWN0Q2FjaGUoRnJhbWUqIGZyYW1lLCBjb25zdCBVUkwmIHBh
c3NlZE1hbmlmZXN0VVJMKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVjdENhY2hl
KEZyYW1lJiBmcmFtZSwgY29uc3QgVVJMJiBwYXNzZWRNYW5pZmVzdFVSTCkKIHsKLSAgICBBU1NF
UlQoZnJhbWUgJiYgZnJhbWUtPnBhZ2UoKSk7Ci0gICAgCi0gICAgaWYgKCFmcmFtZS0+c2V0dGlu
Z3MoKS5vZmZsaW5lV2ViQXBwbGljYXRpb25DYWNoZUVuYWJsZWQoKSkKKyAgICBBU1NFUlQoZnJh
bWUuZG9jdW1lbnQoKSk7CisgICAgQVNTRVJUKGZyYW1lLnBhZ2UoKSk7CisgICAgQVNTRVJUKGZy
YW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkpOworCisgICAgaWYgKCFmcmFtZS5zZXR0aW5n
cygpLm9mZmxpbmVXZWJBcHBsaWNhdGlvbkNhY2hlRW5hYmxlZCgpKQogICAgICAgICByZXR1cm47
Ci0gICAgCi0gICAgRG9jdW1lbnRMb2FkZXIqIGRvY3VtZW50TG9hZGVyID0gZnJhbWUtPmxvYWRl
cigpLmRvY3VtZW50TG9hZGVyKCk7Ci0gICAgQVNTRVJUKCFkb2N1bWVudExvYWRlci0+YXBwbGlj
YXRpb25DYWNoZUhvc3QoKS0+YXBwbGljYXRpb25DYWNoZSgpKTsKKworICAgIGF1dG8mIGRvY3Vt
ZW50TG9hZGVyID0gKmZyYW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCk7CisgICAgQVNTRVJU
KCFkb2N1bWVudExvYWRlci5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLmFwcGxpY2F0aW9uQ2FjaGUo
KSk7CiAKICAgICBpZiAocGFzc2VkTWFuaWZlc3RVUkwuaXNOdWxsKCkpIHsKLSAgICAgICAgc2Vs
ZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3RVUkwoZnJhbWUpOyAgICAgICAgCisgICAgICAgIHNlbGVj
dENhY2hlV2l0aG91dE1hbmlmZXN0VVJMKGZyYW1lKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0K
IAogICAgIC8vIERvbid0IGFjY2VzcyBhbnl0aGluZyBvbiBkaXNrIGlmIHByaXZhdGUgYnJvd3Np
bmcgaXMgZW5hYmxlZC4KLSAgICBpZiAoZnJhbWUtPnBhZ2UoKS0+dXNlc0VwaGVtZXJhbFNlc3Np
b24oKSB8fCAhZnJhbWUtPmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPmNhbkFjY2Vzc0Fw
cGxpY2F0aW9uQ2FjaGUoZnJhbWUtPnRyZWUoKS50b3AoKS5kb2N1bWVudCgpLT5zZWN1cml0eU9y
aWdpbigpKSkgewotICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0
OjpDSEVDS0lOR19FVkVOVCwgZG9jdW1lbnRMb2FkZXIpOwotICAgICAgICBwb3N0TGlzdGVuZXJU
YXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFUlJPUl9FVkVOVCwgZG9jdW1lbnRMb2FkZXIpOwor
ICAgIGlmIChmcmFtZS5wYWdlKCktPnVzZXNFcGhlbWVyYWxTZXNzaW9uKCkgfHwgIWZyYW1lLmRv
Y3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPmNhbkFjY2Vzc0FwcGxpY2F0aW9uQ2FjaGUoZnJh
bWUudHJlZSgpLnRvcCgpLmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCkpKSB7CisgICAgICAg
IHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmNoZWNraW5nRXZlbnQsIGRvY3VtZW50TG9h
ZGVyKTsKKyAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkuZXJyb3JFdmVudCwg
ZG9jdW1lbnRMb2FkZXIpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCiAgICAgVVJMIG1hbmlm
ZXN0VVJMKHBhc3NlZE1hbmlmZXN0VVJMKTsKLSAgICBpZiAobWFuaWZlc3RVUkwuaGFzRnJhZ21l
bnRJZGVudGlmaWVyKCkpCi0gICAgICAgIG1hbmlmZXN0VVJMLnJlbW92ZUZyYWdtZW50SWRlbnRp
ZmllcigpOworICAgIG1hbmlmZXN0VVJMLnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpOwogCi0g
ICAgQXBwbGljYXRpb25DYWNoZSogbWFpblJlc291cmNlQ2FjaGUgPSBkb2N1bWVudExvYWRlci0+
YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+bWFpblJlc291cmNlQXBwbGljYXRpb25DYWNoZSgpOwor
ICAgIGF1dG8qIG1haW5SZXNvdXJjZUNhY2hlID0gZG9jdW1lbnRMb2FkZXIuYXBwbGljYXRpb25D
YWNoZUhvc3QoKS5tYWluUmVzb3VyY2VBcHBsaWNhdGlvbkNhY2hlKCk7CiAgICAgCiAgICAgaWYg
KG1haW5SZXNvdXJjZUNhY2hlKSB7CisgICAgICAgIEFTU0VSVChtYWluUmVzb3VyY2VDYWNoZS0+
Z3JvdXAoKSk7CiAgICAgICAgIGlmIChtYW5pZmVzdFVSTCA9PSBtYWluUmVzb3VyY2VDYWNoZS0+
Z3JvdXAoKS0+bV9tYW5pZmVzdFVSTCkgewogICAgICAgICAgICAgLy8gVGhlIGNhY2hlIG1heSBo
YXZlIGdvdHRlbiBvYnNvbGV0ZWQgYWZ0ZXIgd2UndmUgbG9hZGVkIGZyb20gaXQsIGJ1dCBiZWZv
cmUgd2UgcGFyc2VkIHRoZSBkb2N1bWVudCBhbmQgc2F3IGNhY2hlIG1hbmlmZXN0LgogICAgICAg
ICAgICAgaWYgKG1haW5SZXNvdXJjZUNhY2hlLT5ncm91cCgpLT5pc09ic29sZXRlKCkpCiAgICAg
ICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICAgICAgbWFpblJlc291cmNlQ2FjaGUtPmdyb3Vw
KCktPmFzc29jaWF0ZURvY3VtZW50TG9hZGVyV2l0aENhY2hlKGRvY3VtZW50TG9hZGVyLCBtYWlu
UmVzb3VyY2VDYWNoZSk7CisgICAgICAgICAgICBtYWluUmVzb3VyY2VDYWNoZS0+Z3JvdXAoKS0+
YXNzb2NpYXRlRG9jdW1lbnRMb2FkZXJXaXRoQ2FjaGUoJmRvY3VtZW50TG9hZGVyLCBtYWluUmVz
b3VyY2VDYWNoZSk7CiAgICAgICAgICAgICBtYWluUmVzb3VyY2VDYWNoZS0+Z3JvdXAoKS0+dXBk
YXRlKGZyYW1lLCBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlV2l0aEJyb3dzaW5nQ29udGV4dCk7CiAg
ICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAvLyBUaGUgbWFpbiByZXNvdXJjZSB3YXMgbG9h
ZGVkIGZyb20gY2FjaGUsIHNvIHRoZSBjYWNoZSBtdXN0IGhhdmUgYW4gZW50cnkgZm9yIGl0LiBN
YXJrIGl0IGFzIGZvcmVpZ24uCi0gICAgICAgICAgICBVUkwgcmVzb3VyY2VVUkwoZG9jdW1lbnRM
b2FkZXItPnJlc3BvbnNlVVJMKCkpOwotICAgICAgICAgICAgaWYgKHJlc291cmNlVVJMLmhhc0Zy
YWdtZW50SWRlbnRpZmllcigpKQotICAgICAgICAgICAgICAgIHJlc291cmNlVVJMLnJlbW92ZUZy
YWdtZW50SWRlbnRpZmllcigpOwotICAgICAgICAgICAgQXBwbGljYXRpb25DYWNoZVJlc291cmNl
KiByZXNvdXJjZSA9IG1haW5SZXNvdXJjZUNhY2hlLT5yZXNvdXJjZUZvclVSTChyZXNvdXJjZVVS
TCk7Ci0gICAgICAgICAgICBib29sIGluU3RvcmFnZSA9IHJlc291cmNlLT5zdG9yYWdlSUQoKTsK
LSAgICAgICAgICAgIHJlc291cmNlLT5hZGRUeXBlKEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6
Rm9yZWlnbik7CisgICAgICAgICAgICBVUkwgcmVzb3VyY2VVUkwgeyBkb2N1bWVudExvYWRlci5y
ZXNwb25zZVVSTCgpIH07CisgICAgICAgICAgICByZXNvdXJjZVVSTC5yZW1vdmVGcmFnbWVudElk
ZW50aWZpZXIoKTsKKworICAgICAgICAgICAgQVNTRVJUKG1haW5SZXNvdXJjZUNhY2hlLT5yZXNv
dXJjZUZvclVSTChyZXNvdXJjZVVSTCkpOworICAgICAgICAgICAgYXV0byYgcmVzb3VyY2UgPSAq
bWFpblJlc291cmNlQ2FjaGUtPnJlc291cmNlRm9yVVJMKHJlc291cmNlVVJMKTsKKworICAgICAg
ICAgICAgYm9vbCBpblN0b3JhZ2UgPSByZXNvdXJjZS5zdG9yYWdlSUQoKTsKKyAgICAgICAgICAg
IHJlc291cmNlLmFkZFR5cGUoQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpGb3JlaWduKTsKICAg
ICAgICAgICAgIGlmIChpblN0b3JhZ2UpCi0gICAgICAgICAgICAgICAgZnJhbWUtPnBhZ2UoKS0+
YXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKS5zdG9yZVVwZGF0ZWRUeXBlKHJlc291cmNlLCBtYWlu
UmVzb3VyY2VDYWNoZSk7CisgICAgICAgICAgICAgICAgZnJhbWUucGFnZSgpLT5hcHBsaWNhdGlv
bkNhY2hlU3RvcmFnZSgpLnN0b3JlVXBkYXRlZFR5cGUoJnJlc291cmNlLCBtYWluUmVzb3VyY2VD
YWNoZSk7CiAKICAgICAgICAgICAgIC8vIFJlc3RhcnQgdGhlIGN1cnJlbnQgbmF2aWdhdGlvbiBm
cm9tIHRoZSB0b3Agb2YgdGhlIG5hdmlnYXRpb24gYWxnb3JpdGhtLCB1bmRvaW5nIGFueSBjaGFu
Z2VzIHRoYXQgd2VyZSBtYWRlCiAgICAgICAgICAgICAvLyBhcyBwYXJ0IG9mIHRoZSBpbml0aWFs
IGxvYWQuCiAgICAgICAgICAgICAvLyBUaGUgbmF2aWdhdGlvbiB3aWxsIG5vdCByZXN1bHQgaW4g
dGhlIHNhbWUgcmVzb3VyY2UgYmVpbmcgbG9hZGVkLCBiZWNhdXNlICJmb3JlaWduIiBlbnRyaWVz
IGFyZSBuZXZlciBwaWNrZWQgZHVyaW5nIG5hdmlnYXRpb24uCi0gICAgICAgICAgICBmcmFtZS0+
bmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UoZnJhbWUtPmRvY3Vt
ZW50KCksIGZyYW1lLT5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLCBkb2N1bWVudExvYWRl
ci0+dXJsKCksIGZyYW1lLT5sb2FkZXIoKS5yZWZlcnJlcigpKTsKKyAgICAgICAgICAgIGZyYW1l
Lm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKCpmcmFtZS5kb2N1
bWVudCgpLCBmcmFtZS5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLCBkb2N1bWVudExvYWRl
ci51cmwoKSwgZnJhbWUubG9hZGVyKCkucmVmZXJyZXIoKSk7CiAgICAgICAgIH0KLSAgICAgICAg
CiAgICAgICAgIHJldHVybjsKICAgICB9Ci0gICAgCisKICAgICAvLyBUaGUgcmVzb3VyY2Ugd2Fz
IGxvYWRlZCBmcm9tIHRoZSBuZXR3b3JrLCBjaGVjayBpZiBpdCBpcyBhIEhUVFAvSFRUUFMgR0VU
LiAgICAKLSAgICBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QgPSBmcmFtZS0+bG9hZGVy
KCkuYWN0aXZlRG9jdW1lbnRMb2FkZXIoKS0+cmVxdWVzdCgpOworICAgIGF1dG8mIHJlcXVlc3Qg
PSBmcmFtZS5sb2FkZXIoKS5hY3RpdmVEb2N1bWVudExvYWRlcigpLT5yZXF1ZXN0KCk7CiAKICAg
ICBpZiAoIUFwcGxpY2F0aW9uQ2FjaGU6OnJlcXVlc3RJc0hUVFBPckhUVFBTR2V0KHJlcXVlc3Qp
KQogICAgICAgICByZXR1cm47CkBAIC0xODksNDYgKzE4NSw0OCBAQCB2b2lkIEFwcGxpY2F0aW9u
Q2FjaGVHcm91cDo6c2VsZWN0Q2FjaGUoRnJhbWUqIGZyYW1lLCBjb25zdCBVUkwmIHBhc3NlZE1h
bmlmZXN0VQogICAgIGlmICghcHJvdG9jb2xIb3N0QW5kUG9ydEFyZUVxdWFsKG1hbmlmZXN0VVJM
LCByZXF1ZXN0LnVybCgpKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgQXBwbGljYXRpb25DYWNo
ZUdyb3VwKiBncm91cCA9IGZyYW1lLT5wYWdlKCktPmFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlKCku
ZmluZE9yQ3JlYXRlQ2FjaGVHcm91cChtYW5pZmVzdFVSTCk7CisgICAgYXV0byYgZ3JvdXAgPSAq
ZnJhbWUucGFnZSgpLT5hcHBsaWNhdGlvbkNhY2hlU3RvcmFnZSgpLmZpbmRPckNyZWF0ZUNhY2hl
R3JvdXAobWFuaWZlc3RVUkwpOwogCi0gICAgZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KCktPnNldENhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cChncm91cCk7Ci0gICAg
Z3JvdXAtPm1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5hZGQoZG9jdW1lbnRMb2FkZXIp
OwotICAgIGdyb3VwLT5tX2Rvd25sb2FkaW5nUGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVyc0Nv
dW50Kys7CisgICAgZG9jdW1lbnRMb2FkZXIuYXBwbGljYXRpb25DYWNoZUhvc3QoKS5zZXRDYW5k
aWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoJmdyb3VwKTsKKyAgICBncm91cC5tX3BlbmRpbmdN
YXN0ZXJSZXNvdXJjZUxvYWRlcnMuYWRkKCZkb2N1bWVudExvYWRlcik7CisgICAgZ3JvdXAubV9k
b3dubG9hZGluZ1BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnNDb3VudCsrOwogCi0gICAgQVNT
RVJUKCFncm91cC0+bV9jYWNoZUJlaW5nVXBkYXRlZCB8fCBncm91cC0+bV91cGRhdGVTdGF0dXMg
IT0gSWRsZSk7Ci0gICAgZ3JvdXAtPnVwZGF0ZShmcmFtZSwgQXBwbGljYXRpb25DYWNoZVVwZGF0
ZVdpdGhCcm93c2luZ0NvbnRleHQpOworICAgIEFTU0VSVCghZ3JvdXAubV9jYWNoZUJlaW5nVXBk
YXRlZCB8fCBncm91cC5tX3VwZGF0ZVN0YXR1cyAhPSBJZGxlKTsKKyAgICBncm91cC51cGRhdGUo
ZnJhbWUsIEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVXaXRoQnJvd3NpbmdDb250ZXh0KTsKIH0KIAot
dm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0VVJM
KEZyYW1lKiBmcmFtZSkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZWxlY3RDYWNoZVdp
dGhvdXRNYW5pZmVzdFVSTChGcmFtZSYgZnJhbWUpCiB7Ci0gICAgaWYgKCFmcmFtZS0+c2V0dGlu
Z3MoKS5vZmZsaW5lV2ViQXBwbGljYXRpb25DYWNoZUVuYWJsZWQoKSkKKyAgICBpZiAoIWZyYW1l
LnNldHRpbmdzKCkub2ZmbGluZVdlYkFwcGxpY2F0aW9uQ2FjaGVFbmFibGVkKCkpCiAgICAgICAg
IHJldHVybjsKIAotICAgIERvY3VtZW50TG9hZGVyKiBkb2N1bWVudExvYWRlciA9IGZyYW1lLT5s
b2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwotICAgIEFTU0VSVCghZG9jdW1lbnRMb2FkZXItPmFw
cGxpY2F0aW9uQ2FjaGVIb3N0KCktPmFwcGxpY2F0aW9uQ2FjaGUoKSk7CisgICAgQVNTRVJUKGZy
YW1lLmRvY3VtZW50KCkpOworICAgIEFTU0VSVChmcmFtZS5wYWdlKCkpOworICAgIEFTU0VSVChm
cmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKTsKKyAgICBhdXRvJiBkb2N1bWVudExvYWRl
ciA9ICpmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOworICAgIEFTU0VSVCghZG9jdW1l
bnRMb2FkZXIuYXBwbGljYXRpb25DYWNoZUhvc3QoKS5hcHBsaWNhdGlvbkNhY2hlKCkpOwogCiAg
ICAgLy8gRG9uJ3QgYWNjZXNzIGFueXRoaW5nIG9uIGRpc2sgaWYgcHJpdmF0ZSBicm93c2luZyBp
cyBlbmFibGVkLgotICAgIGlmIChmcmFtZS0+cGFnZSgpLT51c2VzRXBoZW1lcmFsU2Vzc2lvbigp
IHx8ICFmcmFtZS0+ZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuQWNjZXNzQXBwbGlj
YXRpb25DYWNoZShmcmFtZS0+dHJlZSgpLnRvcCgpLmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2lu
KCkpKSB7Ci0gICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNI
RUNLSU5HX0VWRU5ULCBkb2N1bWVudExvYWRlcik7Ci0gICAgICAgIHBvc3RMaXN0ZW5lclRhc2so
QXBwbGljYXRpb25DYWNoZUhvc3Q6OkVSUk9SX0VWRU5ULCBkb2N1bWVudExvYWRlcik7CisgICAg
aWYgKGZyYW1lLnBhZ2UoKS0+dXNlc0VwaGVtZXJhbFNlc3Npb24oKSB8fCAhZnJhbWUuZG9jdW1l
bnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuQWNjZXNzQXBwbGljYXRpb25DYWNoZShmcmFtZS50
cmVlKCkudG9wKCkuZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSkpIHsKKyAgICAgICAgcG9z
dExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkuY2hlY2tpbmdFdmVudCwgZG9jdW1lbnRMb2FkZXIp
OworICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBkb2N1
bWVudExvYWRlcik7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBBcHBsaWNhdGlvbkNh
Y2hlKiBtYWluUmVzb3VyY2VDYWNoZSA9IGRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hl
SG9zdCgpLT5tYWluUmVzb3VyY2VBcHBsaWNhdGlvbkNhY2hlKCk7Ci0KLSAgICBpZiAobWFpblJl
c291cmNlQ2FjaGUpIHsKLSAgICAgICAgbWFpblJlc291cmNlQ2FjaGUtPmdyb3VwKCktPmFzc29j
aWF0ZURvY3VtZW50TG9hZGVyV2l0aENhY2hlKGRvY3VtZW50TG9hZGVyLCBtYWluUmVzb3VyY2VD
YWNoZSk7Ci0gICAgICAgIG1haW5SZXNvdXJjZUNhY2hlLT5ncm91cCgpLT51cGRhdGUoZnJhbWUs
IEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVXaXRoQnJvd3NpbmdDb250ZXh0KTsKKyAgICBpZiAoYXV0
byogbWFpblJlc291cmNlQ2FjaGUgPSBkb2N1bWVudExvYWRlci5hcHBsaWNhdGlvbkNhY2hlSG9z
dCgpLm1haW5SZXNvdXJjZUFwcGxpY2F0aW9uQ2FjaGUoKSkgeworICAgICAgICBBU1NFUlQobWFp
blJlc291cmNlQ2FjaGUtPmdyb3VwKCkpOworICAgICAgICBhdXRvJiBncm91cCA9ICptYWluUmVz
b3VyY2VDYWNoZS0+Z3JvdXAoKTsKKyAgICAgICAgZ3JvdXAuYXNzb2NpYXRlRG9jdW1lbnRMb2Fk
ZXJXaXRoQ2FjaGUoJmRvY3VtZW50TG9hZGVyLCBtYWluUmVzb3VyY2VDYWNoZSk7CisgICAgICAg
IGdyb3VwLnVwZGF0ZShmcmFtZSwgQXBwbGljYXRpb25DYWNoZVVwZGF0ZVdpdGhCcm93c2luZ0Nv
bnRleHQpOwogICAgIH0KIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmZpbmlzaGVk
TG9hZGluZ01haW5SZXNvdXJjZShEb2N1bWVudExvYWRlciogbG9hZGVyKQordm9pZCBBcHBsaWNh
dGlvbkNhY2hlR3JvdXA6OmZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZShEb2N1bWVudExvYWRl
ciYgbG9hZGVyKQogewotICAgIEFTU0VSVChtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMu
Y29udGFpbnMobG9hZGVyKSk7CisgICAgQVNTRVJUKG1fcGVuZGluZ01hc3RlclJlc291cmNlTG9h
ZGVycy5jb250YWlucygmbG9hZGVyKSk7CiAgICAgQVNTRVJUKG1fY29tcGxldGlvblR5cGUgPT0g
Tm9uZSB8fCBtX3BlbmRpbmdFbnRyaWVzLmlzRW1wdHkoKSk7Ci0gICAgVVJMIHVybCA9IGxvYWRl
ci0+dXJsKCk7Ci0gICAgaWYgKHVybC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSkKLSAgICAgICAg
dXJsLnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpOworICAgIFVSTCB1cmwgPSBsb2FkZXIudXJs
KCk7CisgICAgdXJsLnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpOwogCiAgICAgc3dpdGNoICht
X2NvbXBsZXRpb25UeXBlKSB7CiAgICAgY2FzZSBOb25lOgpAQCAtMjM2LDM0ICsyMzQsMzIgQEAg
dm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZShE
b2N1bWVudExvYWRlciogbG9hZGVyKQogICAgICAgICByZXR1cm47CiAgICAgY2FzZSBOb1VwZGF0
ZToKICAgICAgICAgQVNTRVJUKCFtX2NhY2hlQmVpbmdVcGRhdGVkKTsKLSAgICAgICAgYXNzb2Np
YXRlRG9jdW1lbnRMb2FkZXJXaXRoQ2FjaGUobG9hZGVyLCBtX25ld2VzdENhY2hlLmdldCgpKTsK
LQotICAgICAgICBpZiAoQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiByZXNvdXJjZSA9IG1fbmV3
ZXN0Q2FjaGUtPnJlc291cmNlRm9yVVJMKHVybCkpIHsKKyAgICAgICAgYXNzb2NpYXRlRG9jdW1l
bnRMb2FkZXJXaXRoQ2FjaGUoJmxvYWRlciwgbV9uZXdlc3RDYWNoZS5nZXQoKSk7CisgICAgICAg
IGlmIChhdXRvKiByZXNvdXJjZSA9IG1fbmV3ZXN0Q2FjaGUtPnJlc291cmNlRm9yVVJMKHVybCkp
IHsKICAgICAgICAgICAgIGlmICghKHJlc291cmNlLT50eXBlKCkgJiBBcHBsaWNhdGlvbkNhY2hl
UmVzb3VyY2U6Ok1hc3RlcikpIHsKICAgICAgICAgICAgICAgICByZXNvdXJjZS0+YWRkVHlwZShB
cHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6Ok1hc3Rlcik7CiAgICAgICAgICAgICAgICAgQVNTRVJU
KCFyZXNvdXJjZS0+c3RvcmFnZUlEKCkpOwogICAgICAgICAgICAgfQogICAgICAgICB9IGVsc2UK
LSAgICAgICAgICAgIG1fbmV3ZXN0Q2FjaGUtPmFkZFJlc291cmNlKEFwcGxpY2F0aW9uQ2FjaGVS
ZXNvdXJjZTo6Y3JlYXRlKHVybCwgbG9hZGVyLT5yZXNwb25zZSgpLCBBcHBsaWNhdGlvbkNhY2hl
UmVzb3VyY2U6Ok1hc3RlciwgbG9hZGVyLT5tYWluUmVzb3VyY2VEYXRhKCkpKTsKKyAgICAgICAg
ICAgIG1fbmV3ZXN0Q2FjaGUtPmFkZFJlc291cmNlKEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6
Y3JlYXRlKHVybCwgbG9hZGVyLnJlc3BvbnNlKCksIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6
TWFzdGVyLCBsb2FkZXIubWFpblJlc291cmNlRGF0YSgpKSk7CiAgICAgICAgIGJyZWFrOwogICAg
IGNhc2UgRmFpbHVyZToKICAgICAgICAgLy8gQ2FjaGUgdXBkYXRlIGhhcyBiZWVuIGEgZmFpbHVy
ZSwgc28gdGhlcmUgaXMgbm8gcmVhc29uIHRvIGtlZXAgdGhlIGRvY3VtZW50IGFzc29jaWF0ZWQg
d2l0aCB0aGUgaW5jb21wbGV0ZSBjYWNoZQogICAgICAgICAvLyAoaXRzIG1haW4gcmVzb3VyY2Ug
d2FzIG5vdCBjYWNoZWQgeWV0LCBzbyBpdCBpcyBsaWtlbHkgdGhhdCB0aGUgYXBwbGljYXRpb24g
Y2hhbmdlZCBzaWduaWZpY2FudGx5IHNlcnZlci1zaWRlKS4KICAgICAgICAgQVNTRVJUKCFtX2Nh
Y2hlQmVpbmdVcGRhdGVkKTsgLy8gQWxyZWFkeSBjbGVhcmVkIG91dCBieSBzdG9wTG9hZGluZygp
LgotICAgICAgICBsb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPnNldEFwcGxpY2F0aW9u
Q2FjaGUobnVsbHB0cik7IC8vIFdpbGwgdW5zZXQgY2FuZGlkYXRlLCB0b28uCi0gICAgICAgIG1f
YXNzb2NpYXRlZERvY3VtZW50TG9hZGVycy5yZW1vdmUobG9hZGVyKTsKLSAgICAgICAgcG9zdExp
c3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RVJST1JfRVZFTlQsIGxvYWRlcik7Cisg
ICAgICAgIGxvYWRlci5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLnNldEFwcGxpY2F0aW9uQ2FjaGUo
bnVsbHB0cik7IC8vIFdpbGwgdW5zZXQgY2FuZGlkYXRlLCB0b28uCisgICAgICAgIG1fYXNzb2Np
YXRlZERvY3VtZW50TG9hZGVycy5yZW1vdmUoJmxvYWRlcik7CisgICAgICAgIHBvc3RMaXN0ZW5l
clRhc2soZXZlbnROYW1lcygpLmVycm9yRXZlbnQsIGxvYWRlcik7CiAgICAgICAgIGJyZWFrOwog
ICAgIGNhc2UgQ29tcGxldGVkOgotICAgICAgICBBU1NFUlQobV9hc3NvY2lhdGVkRG9jdW1lbnRM
b2FkZXJzLmNvbnRhaW5zKGxvYWRlcikpOwotCi0gICAgICAgIGlmIChBcHBsaWNhdGlvbkNhY2hl
UmVzb3VyY2UqIHJlc291cmNlID0gbV9jYWNoZUJlaW5nVXBkYXRlZC0+cmVzb3VyY2VGb3JVUkwo
dXJsKSkgeworICAgICAgICBBU1NFUlQobV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzLmNvbnRh
aW5zKCZsb2FkZXIpKTsKKyAgICAgICAgaWYgKGF1dG8qIHJlc291cmNlID0gbV9jYWNoZUJlaW5n
VXBkYXRlZC0+cmVzb3VyY2VGb3JVUkwodXJsKSkgewogICAgICAgICAgICAgaWYgKCEocmVzb3Vy
Y2UtPnR5cGUoKSAmIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6TWFzdGVyKSkgewogICAgICAg
ICAgICAgICAgIHJlc291cmNlLT5hZGRUeXBlKEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6TWFz
dGVyKTsKICAgICAgICAgICAgICAgICBBU1NFUlQoIXJlc291cmNlLT5zdG9yYWdlSUQoKSk7CiAg
ICAgICAgICAgICB9CiAgICAgICAgIH0gZWxzZQotICAgICAgICAgICAgbV9jYWNoZUJlaW5nVXBk
YXRlZC0+YWRkUmVzb3VyY2UoQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpjcmVhdGUodXJsLCBs
b2FkZXItPnJlc3BvbnNlKCksIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6TWFzdGVyLCBsb2Fk
ZXItPm1haW5SZXNvdXJjZURhdGEoKSkpOworICAgICAgICAgICAgbV9jYWNoZUJlaW5nVXBkYXRl
ZC0+YWRkUmVzb3VyY2UoQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpjcmVhdGUodXJsLCBsb2Fk
ZXIucmVzcG9uc2UoKSwgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIsIGxvYWRlci5t
YWluUmVzb3VyY2VEYXRhKCkpKTsKICAgICAgICAgLy8gVGhlICJjYWNoZWQiIGV2ZW50IHdpbGwg
YmUgcG9zdGVkIHRvIGFsbCBhc3NvY2lhdGVkIGRvY3VtZW50cyBvbmNlIHVwZGF0ZSBpcyBjb21w
bGV0ZS4KICAgICAgICAgYnJlYWs7CiAgICAgfQpAQCAtMjczLDkgKzI2OSw5IEBAIHZvaWQgQXBw
bGljYXRpb25DYWNoZUdyb3VwOjpmaW5pc2hlZExvYWRpbmdNYWluUmVzb3VyY2UoRG9jdW1lbnRM
b2FkZXIqIGxvYWRlcikKICAgICBjaGVja0lmTG9hZElzQ29tcGxldGUoKTsKIH0KIAotdm9pZCBB
cHBsaWNhdGlvbkNhY2hlR3JvdXA6OmZhaWxlZExvYWRpbmdNYWluUmVzb3VyY2UoRG9jdW1lbnRM
b2FkZXIqIGxvYWRlcikKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpmYWlsZWRMb2FkaW5n
TWFpblJlc291cmNlKERvY3VtZW50TG9hZGVyJiBsb2FkZXIpCiB7Ci0gICAgQVNTRVJUKG1fcGVu
ZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5jb250YWlucyhsb2FkZXIpKTsKKyAgICBBU1NFUlQo
bV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLmNvbnRhaW5zKCZsb2FkZXIpKTsKICAgICBB
U1NFUlQobV9jb21wbGV0aW9uVHlwZSA9PSBOb25lIHx8IG1fcGVuZGluZ0VudHJpZXMuaXNFbXB0
eSgpKTsKIAogICAgIHN3aXRjaCAobV9jb21wbGV0aW9uVHlwZSkgewpAQCAtMjg0LDMyICsyODAs
MjcgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmZhaWxlZExvYWRpbmdNYWluUmVzb3Vy
Y2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlcikKICAgICAgICAgcmV0dXJuOwogICAgIGNhc2UgTm9V
cGRhdGU6CiAgICAgICAgIEFTU0VSVCghbV9jYWNoZUJlaW5nVXBkYXRlZCk7Ci0KICAgICAgICAg
Ly8gVGhlIG1hbmlmZXN0IGRpZG4ndCBjaGFuZ2UsIGFuZCB3ZSBoYXZlIGEgcmVsZXZhbnQgY2Fj
aGUgLSBidXQgdGhlIG1haW4gcmVzb3VyY2UgZG93bmxvYWQgZmFpbGVkIG1pZC13YXksIHNvIGl0
IGNhbm5vdCBiZSBzdG9yZWQgdG8gdGhlIGNhY2hlLAogICAgICAgICAvLyBhbmQgdGhlIGxvYWRl
ciBkb2VzIG5vdCBnZXQgYXNzb2NpYXRlZCB0byBpdC4gSWYgdGhlcmUgYXJlIG90aGVyIG1haW4g
cmVzb3VyY2VzIGJlaW5nIGRvd25sb2FkZWQgZm9yIHRoaXMgY2FjaGUgZ3JvdXAsIHRoZXkgbWF5
IHN0aWxsIHN1Y2NlZWQuCi0gICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNo
ZUhvc3Q6OkVSUk9SX0VWRU5ULCBsb2FkZXIpOwotCisgICAgICAgIHBvc3RMaXN0ZW5lclRhc2so
ZXZlbnROYW1lcygpLmVycm9yRXZlbnQsIGxvYWRlcik7CiAgICAgICAgIGJyZWFrOwogICAgIGNh
c2UgRmFpbHVyZToKICAgICAgICAgLy8gQ2FjaGUgdXBkYXRlIGZhaWxlZCwgdG9vLgogICAgICAg
ICBBU1NFUlQoIW1fY2FjaGVCZWluZ1VwZGF0ZWQpOyAvLyBBbHJlYWR5IGNsZWFyZWQgb3V0IGJ5
IHN0b3BMb2FkaW5nKCkuCi0gICAgICAgIEFTU0VSVCghbG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hl
SG9zdCgpLT5hcHBsaWNhdGlvbkNhY2hlKCkgfHwgbG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9z
dCgpLT5hcHBsaWNhdGlvbkNhY2hlKCktPmdyb3VwKCkgPT0gdGhpcyk7Ci0KLSAgICAgICAgbG9h
ZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5zZXRBcHBsaWNhdGlvbkNhY2hlKG51bGxwdHIp
OyAvLyBXaWxsIHVuc2V0IGNhbmRpZGF0ZSwgdG9vLgotICAgICAgICBtX2Fzc29jaWF0ZWREb2N1
bWVudExvYWRlcnMucmVtb3ZlKGxvYWRlcik7Ci0gICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBw
bGljYXRpb25DYWNoZUhvc3Q6OkVSUk9SX0VWRU5ULCBsb2FkZXIpOworICAgICAgICBBU1NFUlQo
IWxvYWRlci5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLmFwcGxpY2F0aW9uQ2FjaGUoKSB8fCBsb2Fk
ZXIuYXBwbGljYXRpb25DYWNoZUhvc3QoKS5hcHBsaWNhdGlvbkNhY2hlKCktPmdyb3VwKCkgPT0g
dGhpcyk7CisgICAgICAgIGxvYWRlci5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLnNldEFwcGxpY2F0
aW9uQ2FjaGUobnVsbHB0cik7IC8vIFdpbGwgdW5zZXQgY2FuZGlkYXRlLCB0b28uCisgICAgICAg
IG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycy5yZW1vdmUoJmxvYWRlcik7CisgICAgICAgIHBv
c3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmVycm9yRXZlbnQsIGxvYWRlcik7CiAgICAgICAg
IGJyZWFrOwogICAgIGNhc2UgQ29tcGxldGVkOgogICAgICAgICAvLyBUaGUgY2FjaGUgbWFuaWZl
c3QgZGlkbid0IGxpc3QgdGhpcyBtYWluIHJlc291cmNlLCBhbmQgYWxsIGNhY2hlIGVudHJpZXMg
d2VyZSBhbHJlYWR5IHVwZGF0ZWQgc3VjY2Vzc2Z1bGx5IC0gYnV0IHRoZSBtYWluIHJlc291cmNl
IGZhaWxlZCB0byBsb2FkLAogICAgICAgICAvLyBzbyBpdCBjYW5ub3QgYmUgc3RvcmVkIHRvIHRo
ZSBjYWNoZS4gSWYgdGhlcmUgYXJlIG90aGVyIG1haW4gcmVzb3VyY2VzIGJlaW5nIGRvd25sb2Fk
ZWQgZm9yIHRoaXMgY2FjaGUgZ3JvdXAsIHRoZXkgbWF5IHN0aWxsIHN1Y2NlZWQuCi0gICAgICAg
IEFTU0VSVChtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMuY29udGFpbnMobG9hZGVyKSk7Ci0g
ICAgICAgIEFTU0VSVChsb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPmFwcGxpY2F0aW9u
Q2FjaGUoKSA9PSBtX2NhY2hlQmVpbmdVcGRhdGVkKTsKLSAgICAgICAgQVNTRVJUKCFsb2FkZXIt
PmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPmNhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCgp
KTsKLSAgICAgICAgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzLnJlbW92ZShsb2FkZXIpOwot
ICAgICAgICBsb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPnNldEFwcGxpY2F0aW9uQ2Fj
aGUobnVsbHB0cik7Ci0KLSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hl
SG9zdDo6RVJST1JfRVZFTlQsIGxvYWRlcik7Ci0KKyAgICAgICAgQVNTRVJUKG1fYXNzb2NpYXRl
ZERvY3VtZW50TG9hZGVycy5jb250YWlucygmbG9hZGVyKSk7CisgICAgICAgIEFTU0VSVChsb2Fk
ZXIuYXBwbGljYXRpb25DYWNoZUhvc3QoKS5hcHBsaWNhdGlvbkNhY2hlKCkgPT0gbV9jYWNoZUJl
aW5nVXBkYXRlZCk7CisgICAgICAgIEFTU0VSVCghbG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCkuY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKCkpOworICAgICAgICBtX2Fzc29jaWF0
ZWREb2N1bWVudExvYWRlcnMucmVtb3ZlKCZsb2FkZXIpOworICAgICAgICBsb2FkZXIuYXBwbGlj
YXRpb25DYWNoZUhvc3QoKS5zZXRBcHBsaWNhdGlvbkNhY2hlKG51bGxwdHIpOworICAgICAgICBw
b3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBsb2FkZXIpOwogICAgICAg
ICBicmVhazsKICAgICB9CiAKQEAgLTM0NiwxMyArMzM3LDEyIEBAIHZvaWQgQXBwbGljYXRpb25D
YWNoZUdyb3VwOjpzdG9wTG9hZGluZygpCiAgICAgbV9wZW5kaW5nRW50cmllcy5jbGVhcigpOwog
fSAgICAKIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRpc2Fzc29jaWF0ZURvY3VtZW50
TG9hZGVyKERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91
cDo6ZGlzYXNzb2NpYXRlRG9jdW1lbnRMb2FkZXIoRG9jdW1lbnRMb2FkZXImIGxvYWRlcikKIHsK
LSAgICBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMucmVtb3ZlKGxvYWRlcik7Ci0gICAgbV9w
ZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLnJlbW92ZShsb2FkZXIpOworICAgIG1fYXNzb2Np
YXRlZERvY3VtZW50TG9hZGVycy5yZW1vdmUoJmxvYWRlcik7CisgICAgbV9wZW5kaW5nTWFzdGVy
UmVzb3VyY2VMb2FkZXJzLnJlbW92ZSgmbG9hZGVyKTsKIAotICAgIGlmIChhdXRvKiBob3N0ID0g
bG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpKQotICAgICAgICBob3N0LT5zZXRBcHBsaWNh
dGlvbkNhY2hlKG51bGxwdHIpOyAvLyBXaWxsIHNldCBjYW5kaWRhdGUgZ3JvdXAgdG8gbnVsbCwg
dG9vLgorICAgIGxvYWRlci5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLnNldEFwcGxpY2F0aW9uQ2Fj
aGUobnVsbHB0cik7IC8vIFdpbGwgc2V0IGNhbmRpZGF0ZSBncm91cCB0byBudWxsLCB0b28uCiAK
ICAgICBpZiAoIW1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycy5pc0VtcHR5KCkgfHwgIW1fcGVu
ZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybjsKQEAg
LTM3MiwyNiArMzYyLDI2IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpkaXNhc3NvY2lh
dGVEb2N1bWVudExvYWRlcihEb2N1bWVudExvYWRlciogbG9hZGVyKQogICAgIG1fbmV3ZXN0Q2Fj
aGUgPSBudWxscHRyOwogfQogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6Y2FjaGVEZXN0
cm95ZWQoQXBwbGljYXRpb25DYWNoZSogY2FjaGUpCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91
cDo6Y2FjaGVEZXN0cm95ZWQoQXBwbGljYXRpb25DYWNoZSYgY2FjaGUpCiB7Ci0gICAgaWYgKG1f
Y2FjaGVzLnJlbW92ZShjYWNoZSkgJiYgbV9jYWNoZXMuaXNFbXB0eSgpKSB7CisgICAgaWYgKG1f
Y2FjaGVzLnJlbW92ZSgmY2FjaGUpICYmIG1fY2FjaGVzLmlzRW1wdHkoKSkgewogICAgICAgICBB
U1NFUlQobV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzLmlzRW1wdHkoKSk7CiAgICAgICAgIEFT
U0VSVChtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMuaXNFbXB0eSgpKTsKICAgICAgICAg
ZGVsZXRlIHRoaXM7CiAgICAgfQogfQogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c3Rv
cExvYWRpbmdJbkZyYW1lKEZyYW1lKiBmcmFtZSkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3Vw
OjpzdG9wTG9hZGluZ0luRnJhbWUoRnJhbWUmIGZyYW1lKQogewotICAgIGlmIChmcmFtZSAhPSBt
X2ZyYW1lKQorICAgIGlmICgmZnJhbWUgIT0gbV9mcmFtZSkKICAgICAgICAgcmV0dXJuOwogCiAg
ICAgY2FjaGVVcGRhdGVGYWlsZWQoKTsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
OnNldE5ld2VzdENhY2hlKFBhc3NSZWZQdHI8QXBwbGljYXRpb25DYWNoZT4gbmV3ZXN0Q2FjaGUp
Cit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c2V0TmV3ZXN0Q2FjaGUoUmVmPEFwcGxpY2F0
aW9uQ2FjaGU+JiYgbmV3ZXN0Q2FjaGUpCiB7Ci0gICAgbV9uZXdlc3RDYWNoZSA9IG5ld2VzdENh
Y2hlOworICAgIG1fbmV3ZXN0Q2FjaGUgPSBXVEZNb3ZlKG5ld2VzdENhY2hlKTsKIAogICAgIG1f
Y2FjaGVzLmFkZChtX25ld2VzdENhY2hlLmdldCgpKTsKICAgICBtX25ld2VzdENhY2hlLT5zZXRH
cm91cCh0aGlzKTsKQEAgLTQwMyw0MCArMzkzLDQzIEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdy
b3VwOjptYWtlT2Jzb2xldGUoKQogICAgICAgICByZXR1cm47CiAKICAgICBtX2lzT2Jzb2xldGUg
PSB0cnVlOwotICAgIG1fc3RvcmFnZS0+Y2FjaGVHcm91cE1hZGVPYnNvbGV0ZSh0aGlzKTsKKyAg
ICBtX3N0b3JhZ2UtPmNhY2hlR3JvdXBNYWRlT2Jzb2xldGUoKnRoaXMpOwogICAgIEFTU0VSVCgh
bV9zdG9yYWdlSUQpOwogfQogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6dXBkYXRlKEZy
YW1lKiBmcmFtZSwgQXBwbGljYXRpb25DYWNoZVVwZGF0ZU9wdGlvbiB1cGRhdGVPcHRpb24pCit2
b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6dXBkYXRlKEZyYW1lJiBmcmFtZSwgQXBwbGljYXRp
b25DYWNoZVVwZGF0ZU9wdGlvbiB1cGRhdGVPcHRpb24pCiB7CisgICAgQVNTRVJUKGZyYW1lLmxv
YWRlcigpLmRvY3VtZW50TG9hZGVyKCkpOworICAgIGF1dG8mIGRvY3VtZW50TG9hZGVyID0gKmZy
YW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCk7CisKICAgICBpZiAobV91cGRhdGVTdGF0dXMg
PT0gQ2hlY2tpbmcgfHwgbV91cGRhdGVTdGF0dXMgPT0gRG93bmxvYWRpbmcpIHsKICAgICAgICAg
aWYgKHVwZGF0ZU9wdGlvbiA9PSBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlV2l0aEJyb3dzaW5nQ29u
dGV4dCkgewotICAgICAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9z
dDo6Q0hFQ0tJTkdfRVZFTlQsIGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKTsKKyAg
ICAgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmNoZWNraW5nRXZlbnQsIGRv
Y3VtZW50TG9hZGVyKTsKICAgICAgICAgICAgIGlmIChtX3VwZGF0ZVN0YXR1cyA9PSBEb3dubG9h
ZGluZykKLSAgICAgICAgICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVI
b3N0OjpET1dOTE9BRElOR19FVkVOVCwgZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkp
OworICAgICAgICAgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmRvd25sb2Fk
aW5nRXZlbnQsIGRvY3VtZW50TG9hZGVyKTsKICAgICAgICAgfQogICAgICAgICByZXR1cm47CiAg
ICAgfQogCiAgICAgLy8gRG9uJ3QgYWNjZXNzIGFueXRoaW5nIG9uIGRpc2sgaWYgcHJpdmF0ZSBi
cm93c2luZyBpcyBlbmFibGVkLgotICAgIGlmIChmcmFtZS0+cGFnZSgpLT51c2VzRXBoZW1lcmFs
U2Vzc2lvbigpIHx8ICFmcmFtZS0+ZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuQWNj
ZXNzQXBwbGljYXRpb25DYWNoZShmcmFtZS0+dHJlZSgpLnRvcCgpLmRvY3VtZW50KCktPnNlY3Vy
aXR5T3JpZ2luKCkpKSB7CisgICAgaWYgKGZyYW1lLnBhZ2UoKS0+dXNlc0VwaGVtZXJhbFNlc3Np
b24oKSB8fCAhZnJhbWUuZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuQWNjZXNzQXBw
bGljYXRpb25DYWNoZShmcmFtZS50cmVlKCkudG9wKCkuZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmln
aW4oKSkpIHsKICAgICAgICAgQVNTRVJUKG1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5p
c0VtcHR5KCkpOwogICAgICAgICBBU1NFUlQobV9wZW5kaW5nRW50cmllcy5pc0VtcHR5KCkpOwog
ICAgICAgICBBU1NFUlQoIW1fY2FjaGVCZWluZ1VwZGF0ZWQpOwotICAgICAgICBwb3N0TGlzdGVu
ZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDSEVDS0lOR19FVkVOVCwgZnJhbWUtPmxvYWRl
cigpLmRvY3VtZW50TG9hZGVyKCkpOwotICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0
aW9uQ2FjaGVIb3N0OjpFUlJPUl9FVkVOVCwgZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVy
KCkpOworICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5jaGVja2luZ0V2ZW50
LCBkb2N1bWVudExvYWRlcik7CisgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygp
LmVycm9yRXZlbnQsIGRvY3VtZW50TG9hZGVyKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAog
ICAgIEFTU0VSVCghbV9mcmFtZSk7Ci0gICAgbV9mcmFtZSA9IGZyYW1lOworICAgIG1fZnJhbWUg
PSAmZnJhbWU7CiAKICAgICBzZXRVcGRhdGVTdGF0dXMoQ2hlY2tpbmcpOwogCi0gICAgcG9zdExp
c3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q0hFQ0tJTkdfRVZFTlQsIG1fYXNzb2Np
YXRlZERvY3VtZW50TG9hZGVycyk7CisgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCku
Y2hlY2tpbmdFdmVudCwgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsKICAgICBpZiAoIW1f
bmV3ZXN0Q2FjaGUpIHsKICAgICAgICAgQVNTRVJUKHVwZGF0ZU9wdGlvbiA9PSBBcHBsaWNhdGlv
bkNhY2hlVXBkYXRlV2l0aEJyb3dzaW5nQ29udGV4dCk7Ci0gICAgICAgIHBvc3RMaXN0ZW5lclRh
c2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNIRUNLSU5HX0VWRU5ULCBmcmFtZS0+bG9hZGVyKCku
ZG9jdW1lbnRMb2FkZXIoKSk7CisgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygp
LmNoZWNraW5nRXZlbnQsIGRvY3VtZW50TG9hZGVyKTsKICAgICB9CiAgICAgCiAgICAgQVNTRVJU
KCFtX21hbmlmZXN0SGFuZGxlKTsKQEAgLTQ0OSw3ICs0NDIsNyBAQCB2b2lkIEFwcGxpY2F0aW9u
Q2FjaGVHcm91cDo6dXBkYXRlKEZyYW1lKiBmcmFtZSwgQXBwbGljYXRpb25DYWNoZVVwZGF0ZU9w
dGlvbiB1cAogICAgIG1fbWFuaWZlc3RIYW5kbGUgPSBjcmVhdGVSZXNvdXJjZUhhbmRsZShtX21h
bmlmZXN0VVJMLCBtX25ld2VzdENhY2hlID8gbV9uZXdlc3RDYWNoZS0+bWFuaWZlc3RSZXNvdXJj
ZSgpIDogMCk7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjphYm9ydChGcmFtZSog
ZnJhbWUpCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6YWJvcnQoRnJhbWUmIGZyYW1lKQog
ewogICAgIGlmIChtX3VwZGF0ZVN0YXR1cyA9PSBJZGxlKQogICAgICAgICByZXR1cm47CkBAIC00
NTgsNyArNDUxLDcgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFib3J0KEZyYW1lKiBm
cmFtZSkKICAgICBpZiAobV9jb21wbGV0aW9uVHlwZSAhPSBOb25lKQogICAgICAgICByZXR1cm47
CiAKLSAgICBmcmFtZS0+ZG9jdW1lbnQoKS0+YWRkQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJj
ZTo6QXBwQ2FjaGUsIE1lc3NhZ2VMZXZlbDo6RGVidWcsIEFTQ0lJTGl0ZXJhbCgiQXBwbGljYXRp
b24gQ2FjaGUgZG93bmxvYWQgcHJvY2VzcyB3YXMgYWJvcnRlZC4iKSk7CisgICAgZnJhbWUuZG9j
dW1lbnQoKS0+YWRkQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZTo6QXBwQ2FjaGUsIE1lc3Nh
Z2VMZXZlbDo6RGVidWcsIEFTQ0lJTGl0ZXJhbCgiQXBwbGljYXRpb24gQ2FjaGUgZG93bmxvYWQg
cHJvY2VzcyB3YXMgYWJvcnRlZC4iKSk7CiAgICAgY2FjaGVVcGRhdGVGYWlsZWQoKTsKIH0KIApA
QCAtNTAyLDggKzQ5NSw3IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpkaWRSZWNlaXZl
UmVzcG9uc2UoUmVzb3VyY2VIYW5kbGUqIGhhbmRsZSwgUmVzb3VyY2VSCiAgICAgQVNTRVJUKGhh
bmRsZSA9PSBtX2N1cnJlbnRIYW5kbGUpOwogCiAgICAgVVJMIHVybChoYW5kbGUtPmZpcnN0UmVx
dWVzdCgpLnVybCgpKTsKLSAgICBpZiAodXJsLmhhc0ZyYWdtZW50SWRlbnRpZmllcigpKQotICAg
ICAgICB1cmwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CisgICAgdXJsLnJlbW92ZUZyYWdt
ZW50SWRlbnRpZmllcigpOwogICAgIAogICAgIEFTU0VSVCghbV9jdXJyZW50UmVzb3VyY2UpOwog
ICAgIEFTU0VSVChtX3BlbmRpbmdFbnRyaWVzLmNvbnRhaW5zKHVybCkpOwpAQCAtNTkzLDcgKzU4
NSw3IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpkaWRGaW5pc2hMb2FkaW5nKFJlc291
cmNlSGFuZGxlKiBoYW5kbGUsIGRvdWJsZSBmaW5pCiAgICAgCiAgICAgQVNTRVJUKG1fY2FjaGVC
ZWluZ1VwZGF0ZWQpOwogCi0gICAgbV9jYWNoZUJlaW5nVXBkYXRlZC0+YWRkUmVzb3VyY2UoV1RG
TW92ZShtX2N1cnJlbnRSZXNvdXJjZSkpOworICAgIG1fY2FjaGVCZWluZ1VwZGF0ZWQtPmFkZFJl
c291cmNlKG1fY3VycmVudFJlc291cmNlLnJlbGVhc2VOb25OdWxsKCkpOwogICAgIG1fY3VycmVu
dEhhbmRsZSA9IG51bGxwdHI7CiAKICAgICAvLyBXaGlsZSBkb3dubG9hZGluZyBjaGVjayB0byBz
ZWUgaWYgd2UgaGF2ZSBleGNlZWRlZCB0aGUgYXZhaWxhYmxlIHF1b3RhLgpAQCAtNjI2LDggKzYx
OCw3IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpkaWRGYWlsKFJlc291cmNlSGFuZGxl
KiBoYW5kbGUsIGNvbnN0IFJlc291cmNlRXJyb3ImCiAKICAgICB1bnNpZ25lZCB0eXBlID0gbV9j
dXJyZW50UmVzb3VyY2UgPyBtX2N1cnJlbnRSZXNvdXJjZS0+dHlwZSgpIDogbV9wZW5kaW5nRW50
cmllcy5nZXQoaGFuZGxlLT5maXJzdFJlcXVlc3QoKS51cmwoKSk7CiAgICAgVVJMIHVybChoYW5k
bGUtPmZpcnN0UmVxdWVzdCgpLnVybCgpKTsKLSAgICBpZiAodXJsLmhhc0ZyYWdtZW50SWRlbnRp
ZmllcigpKQotICAgICAgICB1cmwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CisgICAgdXJs
LnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpOwogCiAgICAgQVNTRVJUKCFtX2N1cnJlbnRSZXNv
dXJjZSB8fCAhbV9wZW5kaW5nRW50cmllcy5jb250YWlucyh1cmwpKTsKICAgICBtX2N1cnJlbnRS
ZXNvdXJjZSA9IG51bGxwdHI7CkBAIC03MzQsNyArNzI1LDcgQEAgdm9pZCBBcHBsaWNhdGlvbkNh
Y2hlR3JvdXA6OmRpZEZpbmlzaExvYWRpbmdNYW5pZmVzdCgpCiAgICAgLy8gV2UgaGF2ZSB0aGUg
bWFuaWZlc3QsIG5vdyBkb3dubG9hZCB0aGUgcmVzb3VyY2VzLgogICAgIHNldFVwZGF0ZVN0YXR1
cyhEb3dubG9hZGluZyk7CiAgICAgCi0gICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNh
Y2hlSG9zdDo6RE9XTkxPQURJTkdfRVZFTlQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7
CisgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkuZG93bmxvYWRpbmdFdmVudCwgbV9h
c3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsKIAogICAgIEFTU0VSVChtX3BlbmRpbmdFbnRyaWVz
LmlzRW1wdHkoKSk7CiAKQEAgLTgwMiw4ICs3OTMsOCBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVH
cm91cDo6bWFuaWZlc3ROb3RGb3VuZCgpCiB7CiAgICAgbWFrZU9ic29sZXRlKCk7CiAKLSAgICBw
b3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpPQlNPTEVURV9FVkVOVCwgbV9h
c3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsKLSAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0
aW9uQ2FjaGVIb3N0OjpFUlJPUl9FVkVOVCwgbV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJz
KTsKKyAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5vYnNvbGV0ZUV2ZW50LCBtX2Fz
c29jaWF0ZWREb2N1bWVudExvYWRlcnMpOworICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1l
cygpLmVycm9yRXZlbnQsIG1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycyk7CiAKICAgICBz
dG9wTG9hZGluZygpOwogCkBAIC04MTMsMTYgKzgwNCwxNiBAQCB2b2lkIEFwcGxpY2F0aW9uQ2Fj
aGVHcm91cDo6bWFuaWZlc3ROb3RGb3VuZCgpCiAgICAgd2hpbGUgKCFtX3BlbmRpbmdNYXN0ZXJS
ZXNvdXJjZUxvYWRlcnMuaXNFbXB0eSgpKSB7CiAgICAgICAgIEhhc2hTZXQ8RG9jdW1lbnRMb2Fk
ZXIqPjo6aXRlcmF0b3IgaXQgPSBtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMuYmVnaW4o
KTsKICAgICAgICAgCi0gICAgICAgIEFTU0VSVCgoKml0KS0+YXBwbGljYXRpb25DYWNoZUhvc3Qo
KS0+Y2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKCkgPT0gdGhpcyk7Ci0gICAgICAgIEFT
U0VSVCghKCppdCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPmFwcGxpY2F0aW9uQ2FjaGUoKSk7
Ci0gICAgICAgICgqaXQpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5zZXRDYW5kaWRhdGVBcHBs
aWNhdGlvbkNhY2hlR3JvdXAobnVsbHB0cik7CisgICAgICAgIEFTU0VSVCgoKml0KS0+YXBwbGlj
YXRpb25DYWNoZUhvc3QoKS5jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKSA9PSB0aGlz
KTsKKyAgICAgICAgQVNTRVJUKCEoKml0KS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS5hcHBsaWNh
dGlvbkNhY2hlKCkpOworICAgICAgICAoKml0KS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS5zZXRD
YW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAobnVsbHB0cik7CiAgICAgICAgIG1fcGVuZGlu
Z01hc3RlclJlc291cmNlTG9hZGVycy5yZW1vdmUoaXQpOwogICAgIH0KIAogICAgIG1fZG93bmxv
YWRpbmdQZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzQ291bnQgPSAwOwogICAgIHNldFVwZGF0
ZVN0YXR1cyhJZGxlKTsgICAgCiAgICAgbV9mcmFtZSA9IG51bGxwdHI7Ci0gICAgCisKICAgICBp
ZiAobV9jYWNoZXMuaXNFbXB0eSgpKSB7CiAgICAgICAgIEFTU0VSVChtX2Fzc29jaWF0ZWREb2N1
bWVudExvYWRlcnMuaXNFbXB0eSgpKTsKICAgICAgICAgQVNTRVJUKCFtX2NhY2hlQmVpbmdVcGRh
dGVkKTsKQEAgLTg0OSwxMyArODQwLDEzIEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpj
aGVja0lmTG9hZElzQ29tcGxldGUoKQogCiAgICAgICAgIC8vIFRoZSBzdG9yYWdlIGNvdWxkIGhh
dmUgYmVlbiBtYW51YWxseSBlbXB0aWVkIGJ5IHRoZSB1c2VyLgogICAgICAgICBpZiAoIW1fc3Rv
cmFnZUlEKQotICAgICAgICAgICAgbV9zdG9yYWdlLT5zdG9yZU5ld2VzdENhY2hlKHRoaXMpOwor
ICAgICAgICAgICAgbV9zdG9yYWdlLT5zdG9yZU5ld2VzdENhY2hlKCp0aGlzKTsKIAotICAgICAg
ICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpOT1VQREFURV9FVkVOVCwg
bV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsKKyAgICAgICAgcG9zdExpc3RlbmVyVGFzayhl
dmVudE5hbWVzKCkubm91cGRhdGVFdmVudCwgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsK
ICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBGYWlsdXJlOgogICAgICAgICBBU1NFUlQoIW1fY2Fj
aGVCZWluZ1VwZGF0ZWQpOwotICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2Fj
aGVIb3N0OjpFUlJPUl9FVkVOVCwgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsKKyAgICAg
ICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkuZXJyb3JFdmVudCwgbV9hc3NvY2lhdGVk
RG9jdW1lbnRMb2FkZXJzKTsKICAgICAgICAgaWYgKG1fY2FjaGVzLmlzRW1wdHkoKSkgewogICAg
ICAgICAgICAgQVNTRVJUKG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycy5pc0VtcHR5KCkpOwog
ICAgICAgICAgICAgZGVsZXRlIHRoaXM7CkBAIC04NjcsNyArODU4LDcgQEAgdm9pZCBBcHBsaWNh
dGlvbkNhY2hlR3JvdXA6OmNoZWNrSWZMb2FkSXNDb21wbGV0ZSgpCiAKICAgICAgICAgQVNTRVJU
KG1fY2FjaGVCZWluZ1VwZGF0ZWQpOwogICAgICAgICBpZiAobV9tYW5pZmVzdFJlc291cmNlKQot
ICAgICAgICAgICAgbV9jYWNoZUJlaW5nVXBkYXRlZC0+c2V0TWFuaWZlc3RSZXNvdXJjZShXVEZN
b3ZlKG1fbWFuaWZlc3RSZXNvdXJjZSkpOworICAgICAgICAgICAgbV9jYWNoZUJlaW5nVXBkYXRl
ZC0+c2V0TWFuaWZlc3RSZXNvdXJjZShtX21hbmlmZXN0UmVzb3VyY2UucmVsZWFzZU5vbk51bGwo
KSk7CiAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgLy8gV2UgY2FuIGdldCBoZXJlIGFzIGEg
cmVzdWx0IG9mIHJldHJ5aW5nIHRoZSBDb21wbGV0ZSBzdGVwLCBmb2xsb3dpbmcKICAgICAgICAg
ICAgIC8vIGEgZmFpbHVyZSBvZiB0aGUgY2FjaGUgc3RvcmFnZSB0byBzYXZlIHRoZSBuZXdlc3Qg
Y2FjaGUgZHVlIHRvIGhpdHRpbmcKQEAgLTg4NywxOCArODc4LDE4IEBAIHZvaWQgQXBwbGljYXRp
b25DYWNoZUdyb3VwOjpjaGVja0lmTG9hZElzQ29tcGxldGUoKQogICAgICAgICAgICAgZGlkUmVh
Y2hPcmlnaW5RdW90YSh0b3RhbFNwYWNlTmVlZGVkKTsKIAogICAgICAgICBBcHBsaWNhdGlvbkNh
Y2hlU3RvcmFnZTo6RmFpbHVyZVJlYXNvbiBmYWlsdXJlUmVhc29uOwotICAgICAgICBzZXROZXdl
c3RDYWNoZShXVEZNb3ZlKG1fY2FjaGVCZWluZ1VwZGF0ZWQpKTsKLSAgICAgICAgaWYgKG1fc3Rv
cmFnZS0+c3RvcmVOZXdlc3RDYWNoZSh0aGlzLCBvbGROZXdlc3RDYWNoZS5nZXQoKSwgZmFpbHVy
ZVJlYXNvbikpIHsKKyAgICAgICAgc2V0TmV3ZXN0Q2FjaGUobV9jYWNoZUJlaW5nVXBkYXRlZC5y
ZWxlYXNlTm9uTnVsbCgpKTsKKyAgICAgICAgaWYgKG1fc3RvcmFnZS0+c3RvcmVOZXdlc3RDYWNo
ZSgqdGhpcywgb2xkTmV3ZXN0Q2FjaGUuZ2V0KCksIGZhaWx1cmVSZWFzb24pKSB7CiAgICAgICAg
ICAgICAvLyBOZXcgY2FjaGUgc3RvcmVkLCBub3cgcmVtb3ZlIHRoZSBvbGQgY2FjaGUuCiAgICAg
ICAgICAgICBpZiAob2xkTmV3ZXN0Q2FjaGUpCiAgICAgICAgICAgICAgICAgbV9zdG9yYWdlLT5y
ZW1vdmUob2xkTmV3ZXN0Q2FjaGUuZ2V0KCkpOwogCiAgICAgICAgICAgICAvLyBGaXJlIHRoZSBm
aW5hbCBwcm9ncmVzcyBldmVudC4KICAgICAgICAgICAgIEFTU0VSVChtX3Byb2dyZXNzRG9uZSA9
PSBtX3Byb2dyZXNzVG90YWwpOwotICAgICAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNh
dGlvbkNhY2hlSG9zdDo6UFJPR1JFU1NfRVZFTlQsIG1fcHJvZ3Jlc3NUb3RhbCwgbV9wcm9ncmVz
c0RvbmUsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CisgICAgICAgICAgICBwb3N0TGlz
dGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5wcm9ncmVzc0V2ZW50LCBtX3Byb2dyZXNzVG90YWwsIG1f
cHJvZ3Jlc3NEb25lLCBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOwogCiAgICAgICAgICAg
ICAvLyBGaXJlIHRoZSBzdWNjZXNzIGV2ZW50LgotICAgICAgICAgICAgcG9zdExpc3RlbmVyVGFz
ayhpc1VwZ3JhZGVBdHRlbXB0ID8gQXBwbGljYXRpb25DYWNoZUhvc3Q6OlVQREFURVJFQURZX0VW
RU5UIDogQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNBQ0hFRF9FVkVOVCwgbV9hc3NvY2lhdGVkRG9j
dW1lbnRMb2FkZXJzKTsKKyAgICAgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soaXNVcGdyYWRlQXR0
ZW1wdCA/IGV2ZW50TmFtZXMoKS51cGRhdGVyZWFkeUV2ZW50IDogZXZlbnROYW1lcygpLmNhY2hl
ZEV2ZW50LCBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOwogICAgICAgICAgICAgLy8gSXQg
aXMgY2xlYXIgdGhhdCB0aGUgb3JpZ2luIHF1b3RhIHdhcyBub3QgcmVhY2hlZCwgc28gY2xlYXIg
dGhlIGZsYWcgaWYgaXQgd2FzIHNldC4KICAgICAgICAgICAgIG1fb3JpZ2luUXVvdGFFeGNlZWRl
ZFByZXZpb3VzbHkgPSBmYWxzZTsKICAgICAgICAgfSBlbHNlIHsKQEAgLTkxOSwxMCArOTEwLDgg
QEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNoZWNrSWZMb2FkSXNDb21wbGV0ZSgpCiAK
ICAgICAgICAgICAgICAgICAvLyBTYXZlIGEgcmVmZXJlbmNlIHRvIHRoZSBuZXcgY2FjaGUuCiAg
ICAgICAgICAgICAgICAgbV9jYWNoZUJlaW5nVXBkYXRlZCA9IFdURk1vdmUobV9uZXdlc3RDYWNo
ZSk7Ci0gICAgICAgICAgICAgICAgaWYgKG9sZE5ld2VzdENhY2hlKSB7Ci0gICAgICAgICAgICAg
ICAgICAgIC8vIFJlaW5zdGF0ZSB0aGUgb2xkTmV3ZXN0Q2FjaGUuCi0gICAgICAgICAgICAgICAg
ICAgIHNldE5ld2VzdENhY2hlKFdURk1vdmUob2xkTmV3ZXN0Q2FjaGUpKTsKLSAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICAgICAgaWYgKG9sZE5ld2VzdENhY2hlKQorICAgICAgICAgICAg
ICAgICAgICBzZXROZXdlc3RDYWNoZShvbGROZXdlc3RDYWNoZS5yZWxlYXNlTm9uTnVsbCgpKTsK
ICAgICAgICAgICAgICAgICBzY2hlZHVsZVJlYWNoZWRNYXhBcHBDYWNoZVNpemVDYWxsYmFjaygp
OwogICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgIH0KQEAgLTkzMCw3ICs5MTks
NyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6Y2hlY2tJZkxvYWRJc0NvbXBsZXRlKCkK
ICAgICAgICAgICAgIC8vIFJ1biB0aGUgImNhY2hlIGZhaWx1cmUgc3RlcHMiCiAgICAgICAgICAg
ICAvLyBGaXJlIHRoZSBlcnJvciBldmVudHMgdG8gYWxsIHBlbmRpbmcgbWFzdGVyIGVudHJpZXMs
IGFzIHdlbGwgYW55IG90aGVyIGNhY2hlIGhvc3RzCiAgICAgICAgICAgICAvLyBjdXJyZW50bHkg
YXNzb2NpYXRlZCB3aXRoIGEgY2FjaGUgaW4gdGhpcyBncm91cC4KLSAgICAgICAgICAgIHBvc3RM
aXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkVSUk9SX0VWRU5ULCBtX2Fzc29jaWF0
ZWREb2N1bWVudExvYWRlcnMpOworICAgICAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5h
bWVzKCkuZXJyb3JFdmVudCwgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsKICAgICAgICAg
ICAgIC8vIERpc2Fzc29jaWF0ZSB0aGUgcGVuZGluZyBtYXN0ZXIgZW50cmllcyBmcm9tIHRoZSBm
YWlsZWQgbmV3IGNhY2hlLiBOb3RlIHRoYXQKICAgICAgICAgICAgIC8vIGFsbCBvdGhlciBsb2Fk
ZXJzIGluIHRoZSBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMgYXJlIHN0aWxsIGFzc29jaWF0
ZWQgd2l0aAogICAgICAgICAgICAgLy8gc29tZSBvdGhlciBjYWNoZSBpbiB0aGlzIGdyb3VwLiBU
aGV5IGFyZSBub3QgYXNzb2NpYXRlZCB3aXRoIHRoZSBmYWlsZWQgbmV3IGNhY2hlLgpAQCAtOTM5
LDEyICs5MjgsMTIgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNoZWNrSWZMb2FkSXND
b21wbGV0ZSgpCiAgICAgICAgICAgICBWZWN0b3I8RG9jdW1lbnRMb2FkZXIqPiBsb2FkZXJzOwog
ICAgICAgICAgICAgY29weVRvVmVjdG9yKG1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycywg
bG9hZGVycyk7CiAgICAgICAgICAgICBmb3IgKGF1dG8mIGxvYWRlciA6IGxvYWRlcnMpCi0gICAg
ICAgICAgICAgICAgZGlzYXNzb2NpYXRlRG9jdW1lbnRMb2FkZXIobG9hZGVyKTsgLy8gVGhpcyBj
YW4gZGVsZXRlIHRoaXMgZ3JvdXAuCisgICAgICAgICAgICAgICAgZGlzYXNzb2NpYXRlRG9jdW1l
bnRMb2FkZXIoKmxvYWRlcik7IC8vIFRoaXMgY2FuIGRlbGV0ZSB0aGlzIGdyb3VwLgogCiAgICAg
ICAgICAgICAvLyBSZWluc3RhdGUgdGhlIG9sZE5ld2VzdENhY2hlLCBpZiB0aGVyZSB3YXMgb25l
LgogICAgICAgICAgICAgaWYgKG9sZE5ld2VzdENhY2hlKSB7CiAgICAgICAgICAgICAgICAgLy8g
VGhpcyB3aWxsIGRpc2NhcmQgdGhlIGZhaWxlZCBuZXcgY2FjaGUuCi0gICAgICAgICAgICAgICAg
c2V0TmV3ZXN0Q2FjaGUoV1RGTW92ZShvbGROZXdlc3RDYWNoZSkpOworICAgICAgICAgICAgICAg
IHNldE5ld2VzdENhY2hlKG9sZE5ld2VzdENhY2hlLnJlbGVhc2VOb25OdWxsKCkpOwogICAgICAg
ICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAvLyBXZSBtdXN0IGhhdmUgYmVlbiBkZWxl
dGVkIGJ5IHRoZSBsYXN0IGNhbGwgdG8gZGlzYXNzb2NpYXRlRG9jdW1lbnRMb2FkZXIoKS4KICAg
ICAgICAgICAgICAgICByZXR1cm47CkBAIC05NzMsMTQgKzk2MiwxMyBAQCB2b2lkIEFwcGxpY2F0
aW9uQ2FjaGVHcm91cDo6c3RhcnRMb2FkaW5nRW50cnkoKQogICAgICAgICByZXR1cm47CiAgICAg
fQogICAgIAotICAgIEVudHJ5TWFwOjpjb25zdF9pdGVyYXRvciBpdCA9IG1fcGVuZGluZ0VudHJp
ZXMuYmVnaW4oKTsKKyAgICBhdXRvIGZpcnN0UGVuZGluZ0VudHJ5VVJMID0gbV9wZW5kaW5nRW50
cmllcy5iZWdpbigpLT5rZXk7CiAKLSAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2Fj
aGVIb3N0OjpQUk9HUkVTU19FVkVOVCwgbV9wcm9ncmVzc1RvdGFsLCBtX3Byb2dyZXNzRG9uZSwg
bV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsKKyAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50
TmFtZXMoKS5wcm9ncmVzc0V2ZW50LCBtX3Byb2dyZXNzVG90YWwsIG1fcHJvZ3Jlc3NEb25lLCBt
X2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOwogICAgIG1fcHJvZ3Jlc3NEb25lKys7CiAKICAg
ICBBU1NFUlQoIW1fY3VycmVudEhhbmRsZSk7Ci0gICAgCi0gICAgbV9jdXJyZW50SGFuZGxlID0g
Y3JlYXRlUmVzb3VyY2VIYW5kbGUoVVJMKFBhcnNlZFVSTFN0cmluZywgaXQtPmtleSksIG1fbmV3
ZXN0Q2FjaGUgPyBtX25ld2VzdENhY2hlLT5yZXNvdXJjZUZvclVSTChpdC0+a2V5KSA6IDApOwor
ICAgIG1fY3VycmVudEhhbmRsZSA9IGNyZWF0ZVJlc291cmNlSGFuZGxlKFVSTChQYXJzZWRVUkxT
dHJpbmcsIGZpcnN0UGVuZGluZ0VudHJ5VVJMKSwgbV9uZXdlc3RDYWNoZSA/IG1fbmV3ZXN0Q2Fj
aGUtPnJlc291cmNlRm9yVVJMKGZpcnN0UGVuZGluZ0VudHJ5VVJMKSA6IDApOwogfQogCiB2b2lk
IEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZGVsaXZlckRlbGF5ZWRNYWluUmVzb3VyY2VzKCkKQEAg
LTk4OCwxOSArOTc2LDE1IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpkZWxpdmVyRGVs
YXllZE1haW5SZXNvdXJjZXMoKQogICAgIC8vIE5lZWQgdG8gY29weSBsb2FkZXJzLCBiZWNhdXNl
IHRoZSBjYWNoZSBncm91cCBtYXkgYmUgZGVzdHJveWVkIGF0IHRoZSBlbmQgb2YgaXRlcmF0aW9u
LgogICAgIFZlY3RvcjxEb2N1bWVudExvYWRlcio+IGxvYWRlcnM7CiAgICAgY29weVRvVmVjdG9y
KG1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycywgbG9hZGVycyk7Ci0gICAgc2l6ZV90IGNv
dW50ID0gbG9hZGVycy5zaXplKCk7Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgIT0gY291bnQ7
ICsraSkgewotICAgICAgICBEb2N1bWVudExvYWRlciogbG9hZGVyID0gbG9hZGVyc1tpXTsKKyAg
ICBmb3IgKGF1dG8qIGxvYWRlciA6IGxvYWRlcnMpIHsKICAgICAgICAgaWYgKGxvYWRlci0+aXNM
b2FkaW5nTWFpblJlc291cmNlKCkpCiAgICAgICAgICAgICBjb250aW51ZTsKLQotICAgICAgICBj
b25zdCBSZXNvdXJjZUVycm9yJiBlcnJvciA9IGxvYWRlci0+bWFpbkRvY3VtZW50RXJyb3IoKTsK
LSAgICAgICAgaWYgKGVycm9yLmlzTnVsbCgpKQotICAgICAgICAgICAgZmluaXNoZWRMb2FkaW5n
TWFpblJlc291cmNlKGxvYWRlcik7CisgICAgICAgIGlmIChsb2FkZXItPm1haW5Eb2N1bWVudEVy
cm9yKCkuaXNOdWxsKCkpCisgICAgICAgICAgICBmaW5pc2hlZExvYWRpbmdNYWluUmVzb3VyY2Uo
KmxvYWRlcik7CiAgICAgICAgIGVsc2UKLSAgICAgICAgICAgIGZhaWxlZExvYWRpbmdNYWluUmVz
b3VyY2UobG9hZGVyKTsKKyAgICAgICAgICAgIGZhaWxlZExvYWRpbmdNYWluUmVzb3VyY2UoKmxv
YWRlcik7CiAgICAgfQotICAgIGlmICghY291bnQpCisgICAgaWYgKGxvYWRlcnMuaXNFbXB0eSgp
KQogICAgICAgICBjaGVja0lmTG9hZElzQ29tcGxldGUoKTsKIH0KIApAQCAtMTAwOCwxMyArOTky
LDEyIEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjphZGRFbnRyeShjb25zdCBTdHJpbmcm
IHVybCwgdW5zaWduZWQgdHlwZSkKIHsKICAgICBBU1NFUlQobV9jYWNoZUJlaW5nVXBkYXRlZCk7
CiAgICAgQVNTRVJUKCFVUkwoUGFyc2VkVVJMU3RyaW5nLCB1cmwpLmhhc0ZyYWdtZW50SWRlbnRp
ZmllcigpKTsKLSAgICAKKwogICAgIC8vIERvbid0IGFkZCB0aGUgVVJMIGlmIHdlIGFscmVhZHkg
aGF2ZSBhbiBtYXN0ZXIgcmVzb3VyY2UgaW4gdGhlIGNhY2hlCiAgICAgLy8gKGkuZS4sIHRoZSBt
YWluIHJlc291cmNlIGZpbmlzaGVkIGxvYWRpbmcgYmVmb3JlIHRoZSBtYW5pZmVzdCkuCi0gICAg
aWYgKEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSogcmVzb3VyY2UgPSBtX2NhY2hlQmVpbmdVcGRh
dGVkLT5yZXNvdXJjZUZvclVSTCh1cmwpKSB7CisgICAgaWYgKGF1dG8qIHJlc291cmNlID0gbV9j
YWNoZUJlaW5nVXBkYXRlZC0+cmVzb3VyY2VGb3JVUkwodXJsKSkgewogICAgICAgICBBU1NFUlQo
cmVzb3VyY2UtPnR5cGUoKSAmIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6TWFzdGVyKTsKICAg
ICAgICAgQVNTRVJUKCFtX2ZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5pc0xvYWRp
bmdNYWluUmVzb3VyY2UoKSk7Ci0gICAgCiAgICAgICAgIHJlc291cmNlLT5hZGRUeXBlKHR5cGUp
OwogICAgICAgICByZXR1cm47CiAgICAgfQpAQCAtMTAyNSwxMSArMTAwOCw4IEBAIHZvaWQgQXBw
bGljYXRpb25DYWNoZUdyb3VwOjphZGRFbnRyeShjb25zdCBTdHJpbmcmIHVybCwgdW5zaWduZWQg
dHlwZSkKICAgICAgICAgbV9tYW5pZmVzdFJlc291cmNlLT5hZGRUeXBlKHR5cGUpOwogICAgICAg
ICByZXR1cm47CiAgICAgfQotICAgIAotICAgIEVudHJ5TWFwOjpBZGRSZXN1bHQgcmVzdWx0ID0g
bV9wZW5kaW5nRW50cmllcy5hZGQodXJsLCB0eXBlKTsKLSAgICAKLSAgICBpZiAoIXJlc3VsdC5p
c05ld0VudHJ5KQotICAgICAgICByZXN1bHQuaXRlcmF0b3ItPnZhbHVlIHw9IHR5cGU7CisKKyAg
ICBtX3BlbmRpbmdFbnRyaWVzLmFkZCh1cmwsIHR5cGUpLml0ZXJhdG9yLT52YWx1ZSB8PSB0eXBl
OwogfQogCiB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6YXNzb2NpYXRlRG9jdW1lbnRMb2Fk
ZXJXaXRoQ2FjaGUoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgQXBwbGljYXRpb25DYWNoZSogY2Fj
aGUpCkBAIC0xMDQwLDYzICsxMDIwLDYzIEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjph
c3NvY2lhdGVEb2N1bWVudExvYWRlcldpdGhDYWNoZShEb2N1bWVudExvYWRlciogbG9hCiAKICAg
ICBBU1NFUlQoIW1faXNPYnNvbGV0ZSk7CiAKLSAgICBsb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVI
b3N0KCktPnNldEFwcGxpY2F0aW9uQ2FjaGUoY2FjaGUpOworICAgIGxvYWRlci0+YXBwbGljYXRp
b25DYWNoZUhvc3QoKS5zZXRBcHBsaWNhdGlvbkNhY2hlKGNhY2hlKTsKIAogICAgIEFTU0VSVCgh
bV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzLmNvbnRhaW5zKGxvYWRlcikpOwogICAgIG1fYXNz
b2NpYXRlZERvY3VtZW50TG9hZGVycy5hZGQobG9hZGVyKTsKIH0KIAotY2xhc3MgQ2hyb21lQ2xp
ZW50Q2FsbGJhY2tUaW1lcjogcHVibGljIFRpbWVyQmFzZSB7CitjbGFzcyBDaHJvbWVDbGllbnRD
YWxsYmFja1RpbWVyIGZpbmFsIDogcHVibGljIFRpbWVyQmFzZSB7CiBwdWJsaWM6Ci0gICAgQ2hy
b21lQ2xpZW50Q2FsbGJhY2tUaW1lcihBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGNhY2hlR3JvdXAp
Ci0gICAgICAgIDogbV9jYWNoZUdyb3VwKGNhY2hlR3JvdXApCisgICAgQ2hyb21lQ2xpZW50Q2Fs
bGJhY2tUaW1lcihBcHBsaWNhdGlvbkNhY2hlR3JvdXAmIGdyb3VwKQorICAgICAgICA6IG1fZ3Jv
dXAoZ3JvdXApCiAgICAgewogICAgIH0KIAogcHJpdmF0ZToKLSAgICB2b2lkIGZpcmVkKCkgb3Zl
cnJpZGUKKyAgICB2b2lkIGZpcmVkKCkgZmluYWwKICAgICB7Ci0gICAgICAgIG1fY2FjaGVHcm91
cC0+ZGlkUmVhY2hNYXhBcHBDYWNoZVNpemUoKTsKKyAgICAgICAgbV9ncm91cC5kaWRSZWFjaE1h
eEFwcENhY2hlU2l6ZSgpOwogICAgICAgICBkZWxldGUgdGhpczsKICAgICB9Ci0gICAgLy8gTm90
ZSB0aGF0IHRoZXJlIGlzIG5vIG5lZWQgdG8gdXNlIGEgUmVmUHRyIGhlcmUuIFRoZSBBcHBsaWNh
dGlvbkNhY2hlR3JvdXAgaW5zdGFuY2UgaXMgZ3VhcmFudGVlZAotICAgIC8vIHRvIGJlIGFsaXZl
IHdoZW4gdGhlIHRpbWVyIGZpcmVzIHNpbmNlIGludm9raW5nIHRoZSBDaHJvbWVDbGllbnQgY2Fs
bGJhY2sgaXMgcGFydCBvZiBpdHMgbm9ybWFsCisKKyAgICAvLyBOb3RlIHRoYXQgdGhlcmUgaXMg
bm8gbmVlZCB0byB1c2UgYSBSZWYgaGVyZS4gVGhlIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCBpbnN0
YW5jZSBpcyBndWFyYW50ZWVkCisgICAgLy8gdG8gYmUgYWxpdmUgd2hlbiB0aGUgdGltZXIgZmly
ZXMgc2luY2UgaW52b2tpbmcgdGhlIGNhbGxiYWNrIGlzIHBhcnQgb2YgaXRzIG5vcm1hbAogICAg
IC8vIHVwZGF0ZSBtYWNoaW5lcnkgYW5kIG5vdGhpbmcgY2FuIHlldCBjYXVzZSBpdCB0byBnZXQg
ZGVsZXRlZC4KLSAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIG1fY2FjaGVHcm91cDsKKyAgICBB
cHBsaWNhdGlvbkNhY2hlR3JvdXAmIG1fZ3JvdXA7CiB9OwogCiB2b2lkIEFwcGxpY2F0aW9uQ2Fj
aGVHcm91cDo6c2NoZWR1bGVSZWFjaGVkTWF4QXBwQ2FjaGVTaXplQ2FsbGJhY2soKQogewogICAg
IEFTU0VSVChpc01haW5UaHJlYWQoKSk7Ci0gICAgQ2hyb21lQ2xpZW50Q2FsbGJhY2tUaW1lciog
dGltZXIgPSBuZXcgQ2hyb21lQ2xpZW50Q2FsbGJhY2tUaW1lcih0aGlzKTsKKyAgICBhdXRvKiB0
aW1lciA9IG5ldyBDaHJvbWVDbGllbnRDYWxsYmFja1RpbWVyKCp0aGlzKTsKICAgICB0aW1lci0+
c3RhcnRPbmVTaG90KDApOwogICAgIC8vIFRoZSB0aW1lciB3aWxsIGRlbGV0ZSBpdHNlbGYgb25j
ZSBpdCBmaXJlcy4KIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnBvc3RMaXN0ZW5l
clRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkV2ZW50SUQgZXZlbnRJRCwgaW50IHByb2dyZXNz
VG90YWwsIGludCBwcm9ncmVzc0RvbmUsIGNvbnN0IEhhc2hTZXQ8RG9jdW1lbnRMb2FkZXIqPiYg
bG9hZGVyU2V0KQordm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnBvc3RMaXN0ZW5lclRhc2so
Y29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGludCBwcm9ncmVzc1RvdGFsLCBpbnQgcHJv
Z3Jlc3NEb25lLCBjb25zdCBIYXNoU2V0PERvY3VtZW50TG9hZGVyKj4mIGxvYWRlclNldCkKIHsK
ICAgICBmb3IgKGF1dG8mIGxvYWRlciA6IGxvYWRlclNldCkKLSAgICAgICAgcG9zdExpc3RlbmVy
VGFzayhldmVudElELCBwcm9ncmVzc1RvdGFsLCBwcm9ncmVzc0RvbmUsIGxvYWRlcik7CisgICAg
ICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnRUeXBlLCBwcm9ncmVzc1RvdGFsLCBwcm9ncmVzc0Rv
bmUsICpsb2FkZXIpOwogfQogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6cG9zdExpc3Rl
bmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RXZlbnRJRCBldmVudElELCBpbnQgcHJvZ3Jl
c3NUb3RhbCwgaW50IHByb2dyZXNzRG9uZSwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlcikKK3ZvaWQg
QXBwbGljYXRpb25DYWNoZUdyb3VwOjpwb3N0TGlzdGVuZXJUYXNrKGNvbnN0IEF0b21pY1N0cmlu
ZyYgZXZlbnRUeXBlLCBpbnQgcHJvZ3Jlc3NUb3RhbCwgaW50IHByb2dyZXNzRG9uZSwgRG9jdW1l
bnRMb2FkZXImIGxvYWRlcikKIHsKLSAgICBGcmFtZSogZnJhbWUgPSBsb2FkZXItPmZyYW1lKCk7
CisgICAgYXV0byogZnJhbWUgPSBsb2FkZXIuZnJhbWUoKTsKICAgICBpZiAoIWZyYW1lKQogICAg
ICAgICByZXR1cm47CiAgICAgCi0gICAgQVNTRVJUKGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExv
YWRlcigpID09IGxvYWRlcik7CisgICAgQVNTRVJUKGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExv
YWRlcigpID09ICZsb2FkZXIpOwogCi0gICAgUmVmUHRyPERvY3VtZW50TG9hZGVyPiBsb2FkZXJQ
cm90ZWN0b3IobG9hZGVyKTsKLSAgICBmcmFtZS0+ZG9jdW1lbnQoKS0+cG9zdFRhc2soW2xvYWRl
clByb3RlY3RvciwgZXZlbnRJRCwgcHJvZ3Jlc3NUb3RhbCwgcHJvZ3Jlc3NEb25lXSAoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCkgeworICAgIFJlZlB0cjxEb2N1bWVudExvYWRlcj4g
cHJvdGVjdGVkTG9hZGVyKCZsb2FkZXIpOworICAgIGZyYW1lLT5kb2N1bWVudCgpLT5wb3N0VGFz
ayhbcHJvdGVjdGVkTG9hZGVyLCAmZXZlbnRUeXBlLCBwcm9ncmVzc1RvdGFsLCBwcm9ncmVzc0Rv
bmVdIChTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0KSB7CiAgICAgICAgIEFTU0VSVF9V
TlVTRUQoY29udGV4dCwgY29udGV4dC5pc0RvY3VtZW50KCkpOwotICAgICAgICBGcmFtZSogZnJh
bWUgPSBsb2FkZXJQcm90ZWN0b3ItPmZyYW1lKCk7CisgICAgICAgIGF1dG8qIGZyYW1lID0gcHJv
dGVjdGVkTG9hZGVyLT5mcmFtZSgpOwogICAgICAgICBpZiAoIWZyYW1lKQogICAgICAgICAgICAg
cmV0dXJuOwogCi0gICAgICAgIEFTU0VSVChmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIo
KSA9PSBsb2FkZXJQcm90ZWN0b3IpOwotCi0gICAgICAgIGxvYWRlclByb3RlY3Rvci0+YXBwbGlj
YXRpb25DYWNoZUhvc3QoKS0+bm90aWZ5RE9NQXBwbGljYXRpb25DYWNoZShldmVudElELCBwcm9n
cmVzc1RvdGFsLCBwcm9ncmVzc0RvbmUpOworICAgICAgICBBU1NFUlQoZnJhbWUtPmxvYWRlcigp
LmRvY3VtZW50TG9hZGVyKCkgPT0gcHJvdGVjdGVkTG9hZGVyKTsKKyAgICAgICAgcHJvdGVjdGVk
TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLm5vdGlmeURPTUFwcGxpY2F0aW9uQ2FjaGUo
ZXZlbnRUeXBlLCBwcm9ncmVzc1RvdGFsLCBwcm9ncmVzc0RvbmUpOwogICAgIH0pOwogfQogCkBA
IC0xMTA4LDggKzEwODgsNyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c2V0VXBkYXRl
U3RhdHVzKFVwZGF0ZVN0YXR1cyBzdGF0dXMpCiB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6
Y2xlYXJTdG9yYWdlSUQoKQogewogICAgIG1fc3RvcmFnZUlEID0gMDsKLSAgICAKLSAgICBmb3Ig
KGNvbnN0IGF1dG8mIGNhY2hlIDogbV9jYWNoZXMpCisgICAgZm9yIChhdXRvJiBjYWNoZSA6IG1f
Y2FjaGVzKQogICAgICAgICBjYWNoZS0+Y2xlYXJTdG9yYWdlSUQoKTsKIH0KIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5o
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5o
CmluZGV4IGIwNjQ0YzQ2Yzg2NjkxY2E4ZDAwOTM1NTc2OGZiNTg5MTZkZjc5YjEuLmZjODUxZGE3
Y2ZhOGM0MzMyZjY4NWVhMjkxMjJlMzdkNGRiN2FhYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmgKQEAgLTEsNSAr
MSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA4LCAyMDA5LCAyMDEwIEFwcGxlIEluYy4g
QWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOC0yMDE3IEFwcGxlIElu
Yy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpA
QCAtNDksOCArNDksOSBAQCBlbnVtIEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVPcHRpb24gewogICAg
IEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVXaXRob3V0QnJvd3NpbmdDb250ZXh0CiB9OwogCi1jbGFz
cyBBcHBsaWNhdGlvbkNhY2hlR3JvdXAgOiBSZXNvdXJjZUhhbmRsZUNsaWVudCB7Ci0gICAgV1RG
X01BS0VfTk9OQ09QWUFCTEUoQXBwbGljYXRpb25DYWNoZUdyb3VwKTsgV1RGX01BS0VfRkFTVF9B
TExPQ0FURUQ7CitjbGFzcyBBcHBsaWNhdGlvbkNhY2hlR3JvdXAgZmluYWwgOiBwcml2YXRlIFJl
c291cmNlSGFuZGxlQ2xpZW50IHsKKyAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShBcHBsaWNhdGlv
bkNhY2hlR3JvdXApOworICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwogcHVibGljOgogICAg
IGV4cGxpY2l0IEFwcGxpY2F0aW9uQ2FjaGVHcm91cChSZWY8QXBwbGljYXRpb25DYWNoZVN0b3Jh
Z2U+JiYsIGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwpOwogICAgIHZpcnR1YWwgfkFwcGxpY2F0aW9u
Q2FjaGVHcm91cCgpOwpAQCAtNjAsOCArNjEsOCBAQCBwdWJsaWM6CiAgICAgc3RhdGljIEFwcGxp
Y2F0aW9uQ2FjaGUqIGNhY2hlRm9yTWFpblJlcXVlc3QoY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jiwg
RG9jdW1lbnRMb2FkZXIqKTsKICAgICBzdGF0aWMgQXBwbGljYXRpb25DYWNoZSogZmFsbGJhY2tD
YWNoZUZvck1haW5SZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIERvY3VtZW50TG9hZGVy
Kik7CiAgICAgCi0gICAgc3RhdGljIHZvaWQgc2VsZWN0Q2FjaGUoRnJhbWUqLCBjb25zdCBVUkwm
IG1hbmlmZXN0VVJMKTsKLSAgICBzdGF0aWMgdm9pZCBzZWxlY3RDYWNoZVdpdGhvdXRNYW5pZmVz
dFVSTChGcmFtZSopOworICAgIHN0YXRpYyB2b2lkIHNlbGVjdENhY2hlKEZyYW1lJiwgY29uc3Qg
VVJMJiBtYW5pZmVzdFVSTCk7CisgICAgc3RhdGljIHZvaWQgc2VsZWN0Q2FjaGVXaXRob3V0TWFu
aWZlc3RVUkwoRnJhbWUmKTsKIAogICAgIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlJiBzdG9yYWdl
KCkgeyByZXR1cm4gbV9zdG9yYWdlOyB9CiAgICAgY29uc3QgVVJMJiBtYW5pZmVzdFVSTCgpIGNv
bnN0IHsgcmV0dXJuIG1fbWFuaWZlc3RVUkw7IH0KQEAgLTczLDMxICs3NCwzMSBAQCBwdWJsaWM6
CiAgICAgdW5zaWduZWQgc3RvcmFnZUlEKCkgY29uc3QgeyByZXR1cm4gbV9zdG9yYWdlSUQ7IH0K
ICAgICB2b2lkIGNsZWFyU3RvcmFnZUlEKCk7CiAgICAgCi0gICAgdm9pZCB1cGRhdGUoRnJhbWUq
LCBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlT3B0aW9uKTsgLy8gRklYTUU6IEZyYW1lIHNob3VsZCBu
b3QgYmUgbmVlZGVkIHdoZW4gdXBkYXRpbmcgd2l0aG91dCBicm93c2luZyBjb250ZXh0LgotICAg
IHZvaWQgY2FjaGVEZXN0cm95ZWQoQXBwbGljYXRpb25DYWNoZSopOworICAgIHZvaWQgdXBkYXRl
KEZyYW1lJiwgQXBwbGljYXRpb25DYWNoZVVwZGF0ZU9wdGlvbik7IC8vIEZJWE1FOiBGcmFtZSBz
aG91bGQgbm90IGJlIG5lZWRlZCB3aGVuIHVwZGF0aW5nIHdpdGhvdXQgYnJvd3NpbmcgY29udGV4
dC4KKyAgICB2b2lkIGNhY2hlRGVzdHJveWVkKEFwcGxpY2F0aW9uQ2FjaGUmKTsKICAgICAKLSAg
ICB2b2lkIGFib3J0KEZyYW1lKik7CisgICAgdm9pZCBhYm9ydChGcmFtZSYpOwogCi0gICAgYm9v
bCBjYWNoZUlzQ29tcGxldGUoQXBwbGljYXRpb25DYWNoZSogY2FjaGUpIHsgcmV0dXJuIG1fY2Fj
aGVzLmNvbnRhaW5zKGNhY2hlKTsgfQorICAgIGJvb2wgY2FjaGVJc0NvbXBsZXRlKEFwcGxpY2F0
aW9uQ2FjaGUmIGNhY2hlKSB7IHJldHVybiBtX2NhY2hlcy5jb250YWlucygmY2FjaGUpOyB9CiAK
LSAgICB2b2lkIHN0b3BMb2FkaW5nSW5GcmFtZShGcmFtZSopOworICAgIHZvaWQgc3RvcExvYWRp
bmdJbkZyYW1lKEZyYW1lJik7CiAKICAgICBBcHBsaWNhdGlvbkNhY2hlKiBuZXdlc3RDYWNoZSgp
IGNvbnN0IHsgcmV0dXJuIG1fbmV3ZXN0Q2FjaGUuZ2V0KCk7IH0KLSAgICB2b2lkIHNldE5ld2Vz
dENhY2hlKFBhc3NSZWZQdHI8QXBwbGljYXRpb25DYWNoZT4pOworICAgIHZvaWQgc2V0TmV3ZXN0
Q2FjaGUoUmVmPEFwcGxpY2F0aW9uQ2FjaGU+JiYpOwogCiAgICAgdm9pZCBtYWtlT2Jzb2xldGUo
KTsKICAgICBib29sIGlzT2Jzb2xldGUoKSBjb25zdCB7IHJldHVybiBtX2lzT2Jzb2xldGU7IH0K
IAotICAgIHZvaWQgZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKERvY3VtZW50TG9hZGVyKik7
Ci0gICAgdm9pZCBmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKERvY3VtZW50TG9hZGVyKik7Cisg
ICAgdm9pZCBmaW5pc2hlZExvYWRpbmdNYWluUmVzb3VyY2UoRG9jdW1lbnRMb2FkZXImKTsKKyAg
ICB2b2lkIGZhaWxlZExvYWRpbmdNYWluUmVzb3VyY2UoRG9jdW1lbnRMb2FkZXImKTsKIAotICAg
IHZvaWQgZGlzYXNzb2NpYXRlRG9jdW1lbnRMb2FkZXIoRG9jdW1lbnRMb2FkZXIqKTsKKyAgICB2
b2lkIGRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKERvY3VtZW50TG9hZGVyJik7CiAKIHByaXZh
dGU6Ci0gICAgc3RhdGljIHZvaWQgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9z
dDo6RXZlbnRJRCBpZCwgY29uc3QgSGFzaFNldDxEb2N1bWVudExvYWRlcio+JiBzZXQpIHsgcG9z
dExpc3RlbmVyVGFzayhpZCwgMCwgMCwgc2V0KTsgfQotICAgIHN0YXRpYyB2b2lkIHBvc3RMaXN0
ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkV2ZW50SUQgaWQsIERvY3VtZW50TG9hZGVy
KiBsb2FkZXIpICB7IHBvc3RMaXN0ZW5lclRhc2soaWQsIDAsIDAsIGxvYWRlcik7IH0KLSAgICBz
dGF0aWMgdm9pZCBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFdmVudElE
LCBpbnQgcHJvZ3Jlc3NUb3RhbCwgaW50IHByb2dyZXNzRG9uZSwgY29uc3QgSGFzaFNldDxEb2N1
bWVudExvYWRlcio+Jik7Ci0gICAgc3RhdGljIHZvaWQgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNh
dGlvbkNhY2hlSG9zdDo6RXZlbnRJRCwgaW50IHByb2dyZXNzVG90YWwsIGludCBwcm9ncmVzc0Rv
bmUsIERvY3VtZW50TG9hZGVyKik7CisgICAgc3RhdGljIHZvaWQgcG9zdExpc3RlbmVyVGFzayhj
b25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgY29uc3QgSGFzaFNldDxEb2N1bWVudExvYWRl
cio+JiBzZXQpIHsgcG9zdExpc3RlbmVyVGFzayhldmVudFR5cGUsIDAsIDAsIHNldCk7IH0KKyAg
ICBzdGF0aWMgdm9pZCBwb3N0TGlzdGVuZXJUYXNrKGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRU
eXBlLCBEb2N1bWVudExvYWRlciYgbG9hZGVyKSAgeyBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50VHlw
ZSwgMCwgMCwgbG9hZGVyKTsgfQorICAgIHN0YXRpYyB2b2lkIHBvc3RMaXN0ZW5lclRhc2soY29u
c3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGludCBwcm9ncmVzc1RvdGFsLCBpbnQgcHJvZ3Jl
c3NEb25lLCBjb25zdCBIYXNoU2V0PERvY3VtZW50TG9hZGVyKj4mKTsKKyAgICBzdGF0aWMgdm9p
ZCBwb3N0TGlzdGVuZXJUYXNrKGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBpbnQgcHJv
Z3Jlc3NUb3RhbCwgaW50IHByb2dyZXNzRG9uZSwgRG9jdW1lbnRMb2FkZXImKTsKIAogICAgIHZv
aWQgc2NoZWR1bGVSZWFjaGVkTWF4QXBwQ2FjaGVTaXplQ2FsbGJhY2soKTsKIApAQCAtMTM1LDcg
KzEzNiw3IEBAIHByaXZhdGU6CiAKICAgICBVUkwgbV9tYW5pZmVzdFVSTDsKICAgICBSZWZQdHI8
U2VjdXJpdHlPcmlnaW4+IG1fb3JpZ2luOwotICAgIFVwZGF0ZVN0YXR1cyBtX3VwZGF0ZVN0YXR1
czsKKyAgICBVcGRhdGVTdGF0dXMgbV91cGRhdGVTdGF0dXMgeyBJZGxlIH07CiAgICAgCiAgICAg
Ly8gVGhpcyBpcyB0aGUgbmV3ZXN0IGNvbXBsZXRlIGNhY2hlIGluIHRoZSBncm91cC4KICAgICBS
ZWZQdHI8QXBwbGljYXRpb25DYWNoZT4gbV9uZXdlc3RDYWNoZTsKQEAgLTE1MCwyNiArMTUxLDI1
IEBAIHByaXZhdGU6CiAgICAgLy8gTGlzdCBvZiBwZW5kaW5nIG1hc3RlciBlbnRyaWVzLCB1c2Vk
IGR1cmluZyB0aGUgdXBkYXRlIHByb2Nlc3MgdG8gZW5zdXJlIHRoYXQgbmV3IG1hc3RlciBlbnRy
aWVzIGFyZSBjYWNoZWQuCiAgICAgSGFzaFNldDxEb2N1bWVudExvYWRlcio+IG1fcGVuZGluZ01h
c3RlclJlc291cmNlTG9hZGVyczsKICAgICAvLyBIb3cgbWFueSBvZiB0aGUgYWJvdmUgcGVuZGlu
ZyBtYXN0ZXIgZW50cmllcyBoYXZlIG5vdCB5ZXQgZmluaXNoZWQgZG93bmxvYWRpbmcuCi0gICAg
aW50IG1fZG93bmxvYWRpbmdQZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzQ291bnQ7CisgICAg
aW50IG1fZG93bmxvYWRpbmdQZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzQ291bnQgeyAwIH07
CiAgICAgCiAgICAgLy8gVGhlc2UgYXJlIGFsbCB0aGUgZG9jdW1lbnQgbG9hZGVycyB0aGF0IGFy
ZSBhc3NvY2lhdGVkIHdpdGggYSBjYWNoZSBpbiB0aGlzIGdyb3VwLgogICAgIEhhc2hTZXQ8RG9j
dW1lbnRMb2FkZXIqPiBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnM7CiAKICAgICAvLyBUaGUg
VVJMcyBhbmQgdHlwZXMgb2YgcGVuZGluZyBjYWNoZSBlbnRyaWVzLgotICAgIHR5cGVkZWYgSGFz
aE1hcDxTdHJpbmcsIHVuc2lnbmVkPiBFbnRyeU1hcDsKLSAgICBFbnRyeU1hcCBtX3BlbmRpbmdF
bnRyaWVzOworICAgIEhhc2hNYXA8U3RyaW5nLCB1bnNpZ25lZD4gbV9wZW5kaW5nRW50cmllczsK
ICAgICAKICAgICAvLyBUaGUgdG90YWwgbnVtYmVyIG9mIGl0ZW1zIHRvIGJlIHByb2Nlc3NlZCB0
byB1cGRhdGUgdGhlIGNhY2hlIGdyb3VwIGFuZCB0aGUgbnVtYmVyIHRoYXQgaGF2ZSBiZWVuIGRv
bmUuCi0gICAgaW50IG1fcHJvZ3Jlc3NUb3RhbDsKLSAgICBpbnQgbV9wcm9ncmVzc0RvbmU7Cisg
ICAgaW50IG1fcHJvZ3Jlc3NUb3RhbCB7IDAgfTsKKyAgICBpbnQgbV9wcm9ncmVzc0RvbmUgeyAw
IH07CiAKICAgICAvLyBGcmFtZSB1c2VkIGZvciBmZXRjaGluZyByZXNvdXJjZXMgd2hlbiB1cGRh
dGluZy4KICAgICAvLyBGSVhNRTogQW4gdXBkYXRlIHN0YXJ0ZWQgYnkgYSBwYXJ0aWN1bGFyIGZy
YW1lIHNob3VsZCBub3Qgc3RvcCBpZiBpdCBpcyBkZXN0cm95ZWQsIGJ1dCB0aGVyZSBhcmUgb3Ro
ZXIgZnJhbWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgc2FtZSBjYWNoZSBncm91cC4KLSAgICBGcmFt
ZSogbV9mcmFtZTsKKyAgICBGcmFtZSogbV9mcmFtZSB7IG51bGxwdHIgfTsKICAgCiAgICAgLy8g
QW4gb2Jzb2xldGUgY2FjaGUgZ3JvdXAgaXMgbmV2ZXIgc3RvcmVkLCBidXQgdGhlIG9wcG9zaXRl
IGlzIG5vdCB0cnVlIC0gc3RvcmluZyBtYXkgZmFpbCBmb3IgbXVsdGlwbGUgcmVhc29ucywgc3Vj
aCBhcyBleGNlZWRpbmcgZGlzayBxdW90YS4KLSAgICB1bnNpZ25lZCBtX3N0b3JhZ2VJRDsKLSAg
ICBib29sIG1faXNPYnNvbGV0ZTsKKyAgICB1bnNpZ25lZCBtX3N0b3JhZ2VJRCB7IDAgfTsKKyAg
ICBib29sIG1faXNPYnNvbGV0ZSB7IGZhbHNlIH07CiAKICAgICAvLyBEdXJpbmcgdXBkYXRlLCB0
aGlzIGlzIHVzZWQgdG8gaGFuZGxlIGFzeW5jaHJvbm91c2x5IGFycml2aW5nIHJlc3VsdHMuCiAg
ICAgZW51bSBDb21wbGV0aW9uVHlwZSB7CkBAIC0xNzgsMTIgKzE3OCwxMiBAQCBwcml2YXRlOgog
ICAgICAgICBGYWlsdXJlLAogICAgICAgICBDb21wbGV0ZWQKICAgICB9OwotICAgIENvbXBsZXRp
b25UeXBlIG1fY29tcGxldGlvblR5cGU7CisgICAgQ29tcGxldGlvblR5cGUgbV9jb21wbGV0aW9u
VHlwZSB7IE5vbmUgfTsKIAogICAgIC8vIFRoaXMgZmxhZyBpcyBzZXQgaW1tZWRpYXRlbHkgYWZ0
ZXIgdGhlIENocm9tZUNsaWVudDo6cmVhY2hlZE1heEFwcENhY2hlU2l6ZSgpIGNhbGxiYWNrIGlz
IGludm9rZWQgYXMgYSByZXN1bHQgb2YgdGhlIHN0b3JhZ2UgbGF5ZXIgZmFpbGluZyB0byBzYXZl
IGEgY2FjaGUKICAgICAvLyBkdWUgdG8gcmVhY2hpbmcgdGhlIG1heGltdW0gc2l6ZSBvZiB0aGUg
YXBwbGljYXRpb24gY2FjaGUgZGF0YWJhc2UgZmlsZS4gVGhpcyBmbGFnIGlzIHVzZWQgYnkgQXBw
bGljYXRpb25DYWNoZUdyb3VwOjpjaGVja0lmTG9hZElzQ29tcGxldGUoKSB0byBkZWNpZGUKICAg
ICAvLyB0aGUgY291cnNlIG9mIGFjdGlvbiBpbiBjYXNlIG9mIHRoaXMgZmFpbHVyZSAoaS5lLiBj
YWxsIHRoZSBDaHJvbWVDbGllbnQgY2FsbGJhY2sgb3IgcnVuIHRoZSBmYWlsdXJlIHN0ZXBzKS4K
LSAgICBib29sIG1fY2FsbGVkUmVhY2hlZE1heEFwcENhY2hlU2l6ZTsKKyAgICBib29sIG1fY2Fs
bGVkUmVhY2hlZE1heEFwcENhY2hlU2l6ZSB7IGZhbHNlIH07CiAgICAgCiAgICAgUmVmUHRyPFJl
c291cmNlSGFuZGxlPiBtX2N1cnJlbnRIYW5kbGU7CiAgICAgUmVmUHRyPEFwcGxpY2F0aW9uQ2Fj
aGVSZXNvdXJjZT4gbV9jdXJyZW50UmVzb3VyY2U7CkBAIC0xOTMsNyArMTkzLDcgQEAgcHJpdmF0
ZToKICAgICBSZWZQdHI8UmVzb3VyY2VIYW5kbGU+IG1fbWFuaWZlc3RIYW5kbGU7CiAKICAgICBp
bnQ2NF90IG1fYXZhaWxhYmxlU3BhY2VJblF1b3RhOwotICAgIGJvb2wgbV9vcmlnaW5RdW90YUV4
Y2VlZGVkUHJldmlvdXNseTsKKyAgICBib29sIG1fb3JpZ2luUXVvdGFFeGNlZWRlZFByZXZpb3Vz
bHkgeyBmYWxzZSB9OwogCiAgICAgZnJpZW5kIGNsYXNzIENocm9tZUNsaWVudENhbGxiYWNrVGlt
ZXI7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxp
Y2F0aW9uQ2FjaGVIb3N0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBs
aWNhdGlvbkNhY2hlSG9zdC5jcHAKaW5kZXggN2Y1MDA0Yzk4OWY5OWUzZWU3NWVmNWQ5ZmM2NTlm
ZWE1ZDRlYzgzYi4uOTExNDY5OWM4N2ZmODVjMjEzZTBkZGFhMzhlMzY4NmM1NWRiYmE4YSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVI
b3N0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25D
YWNoZUhvc3QuY3BwCkBAIC0zMiw2ICszMiw3IEBACiAjaW5jbHVkZSAiQ29udGVudFNlY3VyaXR5
UG9saWN5LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnRMb2FkZXIuaCIKICNpbmNsdWRlICJET01BcHBs
aWNhdGlvbkNhY2hlLmgiCisjaW5jbHVkZSAiRXZlbnROYW1lcy5oIgogI2luY2x1ZGUgIkZpbGVT
eXN0ZW0uaCIKICNpbmNsdWRlICJGcmFtZS5oIgogI2luY2x1ZGUgIkZyYW1lTG9hZGVyLmgiCkBA
IC00OCwzMSArNDksMjkgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogQXBwbGljYXRpb25DYWNo
ZUhvc3Q6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0KERvY3VtZW50TG9hZGVyJiBkb2N1bWVudExvYWRl
cikKLSAgICA6IG1fZG9tQXBwbGljYXRpb25DYWNoZShudWxscHRyKQotICAgICwgbV9kb2N1bWVu
dExvYWRlcihkb2N1bWVudExvYWRlcikKLSAgICAsIG1fZGVmZXJzRXZlbnRzKHRydWUpCi0gICAg
LCBtX2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cChudWxscHRyKQorICAgIDogbV9kb2N1
bWVudExvYWRlcihkb2N1bWVudExvYWRlcikKIHsKIH0KIAogQXBwbGljYXRpb25DYWNoZUhvc3Q6
On5BcHBsaWNhdGlvbkNhY2hlSG9zdCgpCiB7CiAgICAgQVNTRVJUKCFtX2FwcGxpY2F0aW9uQ2Fj
aGUgfHwgIW1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwIHx8IG1fYXBwbGljYXRpb25D
YWNoZS0+Z3JvdXAoKSA9PSBtX2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCk7Ci0KICAg
ICBpZiAobV9hcHBsaWNhdGlvbkNhY2hlKQotICAgICAgICBtX2FwcGxpY2F0aW9uQ2FjaGUtPmdy
b3VwKCktPmRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKCZtX2RvY3VtZW50TG9hZGVyKTsKKyAg
ICAgICAgbV9hcHBsaWNhdGlvbkNhY2hlLT5ncm91cCgpLT5kaXNhc3NvY2lhdGVEb2N1bWVudExv
YWRlcihtX2RvY3VtZW50TG9hZGVyKTsKICAgICBlbHNlIGlmIChtX2NhbmRpZGF0ZUFwcGxpY2F0
aW9uQ2FjaGVHcm91cCkKLSAgICAgICAgbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAt
PmRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKCZtX2RvY3VtZW50TG9hZGVyKTsKKyAgICAgICAg
bV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAtPmRpc2Fzc29jaWF0ZURvY3VtZW50TG9h
ZGVyKG1fZG9jdW1lbnRMb2FkZXIpOwogfQogCiB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojpz
ZWxlY3RDYWNoZVdpdGhvdXRNYW5pZmVzdCgpCiB7Ci0gICAgQXBwbGljYXRpb25DYWNoZUdyb3Vw
OjpzZWxlY3RDYWNoZVdpdGhvdXRNYW5pZmVzdFVSTChtX2RvY3VtZW50TG9hZGVyLmZyYW1lKCkp
OworICAgIEFTU0VSVChtX2RvY3VtZW50TG9hZGVyLmZyYW1lKCkpOworICAgIEFwcGxpY2F0aW9u
Q2FjaGVHcm91cDo6c2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3RVUkwoKm1fZG9jdW1lbnRMb2Fk
ZXIuZnJhbWUoKSk7CiB9CiAKIHZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OnNlbGVjdENhY2hl
V2l0aE1hbmlmZXN0KGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwpCiB7Ci0gICAgQXBwbGljYXRpb25D
YWNoZUdyb3VwOjpzZWxlY3RDYWNoZShtX2RvY3VtZW50TG9hZGVyLmZyYW1lKCksIG1hbmlmZXN0
VVJMKTsKKyAgICBBU1NFUlQobV9kb2N1bWVudExvYWRlci5mcmFtZSgpKTsKKyAgICBBcHBsaWNh
dGlvbkNhY2hlR3JvdXA6OnNlbGVjdENhY2hlKCptX2RvY3VtZW50TG9hZGVyLmZyYW1lKCksIG1h
bmlmZXN0VVJMKTsKIH0KIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWF5YmVMb2FkTWFp
blJlc291cmNlKFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgU3Vic3RpdHV0ZURhdGEmIHN1YnN0
aXR1dGVEYXRhKQpAQCAtMTQwLDEyICsxMzksMTEgQEAgYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9z
dDo6bWF5YmVMb2FkRmFsbGJhY2tGb3JNYWluRXJyb3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jgog
CiB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjptYWluUmVzb3VyY2VEYXRhUmVjZWl2ZWQoY29u
c3QgY2hhciosIGludCwgbG9uZyBsb25nLCBib29sKQogewotICAgIC8vIFRoaXMgbWV0aG9kIGlz
IGhlcmUgdG8gZmFjaWxpdGF0ZSBhbHRlcm5hdGUgaW1wbGVtZXRhdGlvbnMgb2YgdGhpcyBpbnRl
cmZhY2UgYnkgdGhlIGhvc3QgYnJvd3Nlci4KIH0KIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9z
dDo6ZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZSgpCiB7Ci0gICAgQXBwbGljYXRpb25DYWNoZUdy
b3VwKiBncm91cCA9IG1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwOworICAgIGF1dG8q
IGdyb3VwID0gbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXA7CiAgICAgaWYgKCFncm91
cCAmJiBtX2FwcGxpY2F0aW9uQ2FjaGUpIHsKICAgICAgICAgaWYgKG1haW5SZXNvdXJjZUFwcGxp
Y2F0aW9uQ2FjaGUoKSkgewogICAgICAgICAgICAgLy8gRXZlbiB3aGVuIHRoZSBtYWluIHJlc291
cmNlIGlzIGJlaW5nIGxvYWRlZCBmcm9tIGFuIGFwcGxpY2F0aW9uIGNhY2hlLCBsb2FkaW5nIGNh
biBmYWlsIGlmIGFib3J0ZWQuCkBAIC0xNTUsMTcgKzE1MywxNyBAQCB2b2lkIEFwcGxpY2F0aW9u
Q2FjaGVIb3N0OjpmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKCkKICAgICB9CiAgICAgCiAgICAg
aWYgKGdyb3VwKQotICAgICAgICBncm91cC0+ZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZSgmbV9k
b2N1bWVudExvYWRlcik7CisgICAgICAgIGdyb3VwLT5mYWlsZWRMb2FkaW5nTWFpblJlc291cmNl
KG1fZG9jdW1lbnRMb2FkZXIpOwogfQogCiB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpmaW5p
c2hlZExvYWRpbmdNYWluUmVzb3VyY2UoKQogewotICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCog
Z3JvdXAgPSBjYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKTsKKyAgICBhdXRvKiBncm91
cCA9IGNhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCgpOwogICAgIGlmICghZ3JvdXAgJiYg
YXBwbGljYXRpb25DYWNoZSgpICYmICFtYWluUmVzb3VyY2VBcHBsaWNhdGlvbkNhY2hlKCkpCiAg
ICAgICAgIGdyb3VwID0gYXBwbGljYXRpb25DYWNoZSgpLT5ncm91cCgpOwogICAgIAogICAgIGlm
IChncm91cCkKLSAgICAgICAgZ3JvdXAtPmZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZSgmbV9k
b2N1bWVudExvYWRlcik7CisgICAgICAgIGdyb3VwLT5maW5pc2hlZExvYWRpbmdNYWluUmVzb3Vy
Y2UobV9kb2N1bWVudExvYWRlcik7CiB9CiAKIGJvb2wgQXBwbGljYXRpb25DYWNoZUhvc3Q6Om1h
eWJlTG9hZFJlc291cmNlKFJlc291cmNlTG9hZGVyJiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUmVx
dWVzdCYgcmVxdWVzdCwgY29uc3QgVVJMJiBvcmlnaW5hbFVSTCkKQEAgLTE4NiwxNyArMTg0LDE5
IEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZUhvc3Q6Om1heWJlTG9hZFJlc291cmNlKFJlc291cmNl
TG9hZGVyJiBsb2FkZXIsIGNvbnN0IFJlc291CiAKIGJvb2wgQXBwbGljYXRpb25DYWNoZUhvc3Q6
Om1heWJlTG9hZEZhbGxiYWNrRm9yUmVkaXJlY3QoUmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9h
ZGVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJl
ZGlyZWN0UmVzcG9uc2UpCiB7Ci0gICAgaWYgKCFyZWRpcmVjdFJlc3BvbnNlLmlzTnVsbCgpICYm
ICFwcm90b2NvbEhvc3RBbmRQb3J0QXJlRXF1YWwocmVxdWVzdC51cmwoKSwgcmVkaXJlY3RSZXNw
b25zZS51cmwoKSkpCisgICAgaWYgKCFyZWRpcmVjdFJlc3BvbnNlLmlzTnVsbCgpICYmICFwcm90
b2NvbEhvc3RBbmRQb3J0QXJlRXF1YWwocmVxdWVzdC51cmwoKSwgcmVkaXJlY3RSZXNwb25zZS51
cmwoKSkpIHsKICAgICAgICAgaWYgKHNjaGVkdWxlTG9hZEZhbGxiYWNrUmVzb3VyY2VGcm9tQXBw
bGljYXRpb25DYWNoZShyZXNvdXJjZUxvYWRlcikpCiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsK
KyAgICB9CiAgICAgcmV0dXJuIGZhbHNlOwogfQogCiBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0
OjptYXliZUxvYWRGYWxsYmFja0ZvclJlc3BvbnNlKFJlc291cmNlTG9hZGVyKiByZXNvdXJjZUxv
YWRlciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7Ci0gICAgaWYgKHJlc3Bv
bnNlLmh0dHBTdGF0dXNDb2RlKCkgLyAxMDAgPT0gNCB8fCByZXNwb25zZS5odHRwU3RhdHVzQ29k
ZSgpIC8gMTAwID09IDUpCisgICAgaWYgKHJlc3BvbnNlLmh0dHBTdGF0dXNDb2RlKCkgLyAxMDAg
PT0gNCB8fCByZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpIC8gMTAwID09IDUpIHsKICAgICAgICAg
aWYgKHNjaGVkdWxlTG9hZEZhbGxiYWNrUmVzb3VyY2VGcm9tQXBwbGljYXRpb25DYWNoZShyZXNv
dXJjZUxvYWRlcikpCiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9CiAgICAgcmV0dXJu
IGZhbHNlOwogfQogCkBAIC0yMjAsMTEgKzIyMCw5IEBAIFVSTCBBcHBsaWNhdGlvbkNhY2hlSG9z
dDo6Y3JlYXRlRmlsZVVSTChjb25zdCBTdHJpbmcmIHBhdGgpCiAgICAgLy8gYXBwIGNhY2hlIG1l
ZGlhIGZpbGVzIGFyZSBhbHdheXMgY3JlYXRlZCB3aXRoIGVuY29kZUZvckZpbGVOYW1lKGNyZWF0
ZUNhbm9uaWNhbFVVSURTdHJpbmcoKSkuCiAKICNpZiBVU0UoQ0YpICYmIFBMQVRGT1JNKFdJTikK
LSAgICBSZXRhaW5QdHI8Q0ZVUkxSZWY+IGNmVVJMID0gYWRvcHRDRihDRlVSTENyZWF0ZVdpdGhG
aWxlU3lzdGVtUGF0aCgwLCBwYXRoLmNyZWF0ZUNGU3RyaW5nKCkuZ2V0KCksIGtDRlVSTFdpbmRv
d3NQYXRoU3R5bGUsIGZhbHNlKSk7Ci0gICAgVVJMIHVybChjZlVSTC5nZXQoKSk7CisgICAgVVJM
IHVybChhZG9wdENGKENGVVJMQ3JlYXRlV2l0aEZpbGVTeXN0ZW1QYXRoKDAsIHBhdGguY3JlYXRl
Q0ZTdHJpbmcoKS5nZXQoKSwga0NGVVJMV2luZG93c1BhdGhTdHlsZSwgZmFsc2UpKS5nZXQoKSk7
CiAjZWxzZQogICAgIFVSTCB1cmw7Ci0KICAgICB1cmwuc2V0UHJvdG9jb2woQVNDSUlMaXRlcmFs
KCJmaWxlIikpOwogICAgIHVybC5zZXRQYXRoKHBhdGgpOwogI2VuZGlmCkBAIC0yNDYsNyArMjQ0
LDcgQEAgYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWF5YmVMb2FkU3luY2hyb25vdXNseShS
ZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFJlc28KICAgICBpZiAoIXNob3VsZExvYWRSZXNvdXJj
ZUZyb21BcHBsaWNhdGlvbkNhY2hlKHJlcXVlc3QsIHJlc291cmNlKSkKICAgICAgICAgcmV0dXJu
IGZhbHNlOwogCi0gICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gcmVzcG9uc2VEYXRhID0gcmVzb3Vy
Y2UgPyBidWZmZXJGcm9tUmVzb3VyY2UoKnJlc291cmNlKSA6IG51bGxwdHI7CisgICAgYXV0byBy
ZXNwb25zZURhdGEgPSByZXNvdXJjZSA/IGJ1ZmZlckZyb21SZXNvdXJjZSgqcmVzb3VyY2UpIDog
bnVsbHB0cjsKICAgICBpZiAoIXJlc3BvbnNlRGF0YSkgewogICAgICAgICBlcnJvciA9IG1fZG9j
dW1lbnRMb2FkZXIuZnJhbWVMb2FkZXIoKS0+Y2xpZW50KCkuY2Fubm90U2hvd1VSTEVycm9yKHJl
cXVlc3QpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKQEAgLTI4NiwyMCArMjg0LDIxIEBAIHZvaWQg
QXBwbGljYXRpb25DYWNoZUhvc3Q6OnNldERPTUFwcGxpY2F0aW9uQ2FjaGUoRE9NQXBwbGljYXRp
b25DYWNoZSogZG9tQXBwbGljCiAgICAgbV9kb21BcHBsaWNhdGlvbkNhY2hlID0gZG9tQXBwbGlj
YXRpb25DYWNoZTsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bm90aWZ5RE9NQXBw
bGljYXRpb25DYWNoZShFdmVudElEIGlkLCBpbnQgdG90YWwsIGludCBkb25lKQordm9pZCBBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6bm90aWZ5RE9NQXBwbGljYXRpb25DYWNoZShjb25zdCBBdG9taWNT
dHJpbmcmIGV2ZW50VHlwZSwgaW50IHRvdGFsLCBpbnQgZG9uZSkKIHsKLSAgICBpZiAoaWQgIT0g
UFJPR1JFU1NfRVZFTlQpCisgICAgaWYgKGV2ZW50VHlwZSAhPSBldmVudE5hbWVzKCkucHJvZ3Jl
c3NFdmVudCkKICAgICAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp1cGRhdGVBcHBsaWNh
dGlvbkNhY2hlU3RhdHVzKG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUoKSk7CiAKICAgICBpZiAobV9k
ZWZlcnNFdmVudHMpIHsKICAgICAgICAgLy8gRXZlbnQgZGlzcGF0Y2hpbmcgaXMgZGVmZXJyZWQg
dW50aWwgZG9jdW1lbnQub25sb2FkIGhhcyBmaXJlZC4KLSAgICAgICAgbV9kZWZlcnJlZEV2ZW50
cy5hcHBlbmQoRGVmZXJyZWRFdmVudChpZCwgdG90YWwsIGRvbmUpKTsKKyAgICAgICAgbV9kZWZl
cnJlZEV2ZW50cy5hcHBlbmQoeyBldmVudFR5cGUsIHRvdGFsLCBkb25lIH0pOwogICAgICAgICBy
ZXR1cm47CiAgICAgfQotICAgIGRpc3BhdGNoRE9NRXZlbnQoaWQsIHRvdGFsLCBkb25lKTsKKwor
ICAgIGRpc3BhdGNoRE9NRXZlbnQoZXZlbnRUeXBlLCB0b3RhbCwgZG9uZSk7CiB9CiAKLXZvaWQg
QXBwbGljYXRpb25DYWNoZUhvc3Q6OnN0b3BMb2FkaW5nSW5GcmFtZShGcmFtZSogZnJhbWUpCit2
b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpzdG9wTG9hZGluZ0luRnJhbWUoRnJhbWUmIGZyYW1l
KQogewogICAgIEFTU0VSVCghbV9hcHBsaWNhdGlvbkNhY2hlIHx8ICFtX2NhbmRpZGF0ZUFwcGxp
Y2F0aW9uQ2FjaGVHcm91cCB8fCBtX2FwcGxpY2F0aW9uQ2FjaGUtPmdyb3VwKCkgPT0gbV9jYW5k
aWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXApOwogCkBAIC0zMTIsNTMgKzMxMSw2OCBAQCB2b2lk
IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpzdG9wTG9hZGluZ0luRnJhbWUoRnJhbWUqIGZyYW1lKQog
dm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c3RvcERlZmVycmluZ0V2ZW50cygpCiB7CiAgICAg
UmVmPERvY3VtZW50TG9hZGVyPiBwcm90ZWN0KG1fZG9jdW1lbnRMb2FkZXIpOwotICAgIGZvciAo
YXV0byYgZXZlbnQgOiBtX2RlZmVycmVkRXZlbnRzKQotICAgICAgICBkaXNwYXRjaERPTUV2ZW50
KGV2ZW50LmV2ZW50SUQsIGV2ZW50LnByb2dyZXNzVG90YWwsIGV2ZW50LnByb2dyZXNzRG9uZSk7
CisKKyAgICAvLyBOb3RlLCBkbyBub3QgY2FjaGUgdGhlIHNpemUgaW4gYSBsb2NhbCB2YXJpYWJs
ZS4KKyAgICAvLyBUaGlzIGNvZGUgbmVlZHMgdG8gcHJvcGVybHkgaGFuZGxlIHRoZSBjYXNlIHdo
ZXJlIG1vcmUgZXZlbnRzIGFyZSBhZGRlZCB0bworICAgIC8vIG1fZGVmZXJyZWRFdmVudHMgd2hp
bGUgaXRlcmF0aW5nIGl0LiBUaGlzIGlzIHdoeSB3ZSBkb24ndCB1c2UgYSBtb2Rlcm4gZm9yIGxv
b3AuCisgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX2RlZmVycmVkRXZlbnRzLnNpemUoKTsg
KytpKSB7CisgICAgICAgIGF1dG8mIGV2ZW50ID0gbV9kZWZlcnJlZEV2ZW50c1tpXTsKKyAgICAg
ICAgZGlzcGF0Y2hET01FdmVudChldmVudC5ldmVudFR5cGUsIGV2ZW50LnByb2dyZXNzVG90YWws
IGV2ZW50LnByb2dyZXNzRG9uZSk7CisgICAgfQorCiAgICAgbV9kZWZlcnJlZEV2ZW50cy5jbGVh
cigpOwogICAgIG1fZGVmZXJzRXZlbnRzID0gZmFsc2U7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25D
YWNoZUhvc3Q6OmZpbGxSZXNvdXJjZUxpc3QoUmVzb3VyY2VJbmZvTGlzdCogcmVzb3VyY2VzKQor
VmVjdG9yPEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpSZXNvdXJjZUluZm8+IEFwcGxpY2F0aW9uQ2Fj
aGVIb3N0OjpyZXNvdXJjZUxpc3QoKQogewotICAgIEFwcGxpY2F0aW9uQ2FjaGUqIGNhY2hlID0g
YXBwbGljYXRpb25DYWNoZSgpOworICAgIFZlY3RvcjxSZXNvdXJjZUluZm8+IHJlc3VsdDsKKwor
ICAgIGF1dG8qIGNhY2hlID0gYXBwbGljYXRpb25DYWNoZSgpOwogICAgIGlmICghY2FjaGUgfHwg
IWNhY2hlLT5pc0NvbXBsZXRlKCkpCi0gICAgICAgIHJldHVybjsKKyAgICAgICAgcmV0dXJuIHJl
c3VsdDsKIAotICAgIGZvciAoY29uc3QgYXV0byYgdXJsQW5kUmVzb3VyY2UgOiBjYWNoZS0+cmVz
b3VyY2VzKCkpIHsKLSAgICAgICAgQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiByZXNvdXJjZSA9
IHVybEFuZFJlc291cmNlLnZhbHVlLmdldCgpOworICAgIHJlc3VsdC5yZXNlcnZlSW5pdGlhbENh
cGFjaXR5KGNhY2hlLT5yZXNvdXJjZXMoKS5zaXplKCkpOwogCi0gICAgICAgIHVuc2lnbmVkIHR5
cGUgPSByZXNvdXJjZS0+dHlwZSgpOworICAgIGZvciAoYXV0byYgdXJsQW5kUmVzb3VyY2UgOiBj
YWNoZS0+cmVzb3VyY2VzKCkpIHsKKyAgICAgICAgQVNTRVJUKHVybEFuZFJlc291cmNlLnZhbHVl
KTsKKyAgICAgICAgYXV0byYgcmVzb3VyY2UgPSAqdXJsQW5kUmVzb3VyY2UudmFsdWU7CisKKyAg
ICAgICAgdW5zaWduZWQgdHlwZSA9IHJlc291cmNlLnR5cGUoKTsKICAgICAgICAgYm9vbCBpc01h
c3RlciA9IHR5cGUgJiBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6Ok1hc3RlcjsKICAgICAgICAg
Ym9vbCBpc01hbmlmZXN0ID0gdHlwZSAmIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6TWFuaWZl
c3Q7CiAgICAgICAgIGJvb2wgaXNFeHBsaWNpdCA9IHR5cGUgJiBBcHBsaWNhdGlvbkNhY2hlUmVz
b3VyY2U6OkV4cGxpY2l0OwogICAgICAgICBib29sIGlzRm9yZWlnbiA9IHR5cGUgJiBBcHBsaWNh
dGlvbkNhY2hlUmVzb3VyY2U6OkZvcmVpZ247CiAgICAgICAgIGJvb2wgaXNGYWxsYmFjayA9IHR5
cGUgJiBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6OkZhbGxiYWNrOwogCi0gICAgICAgIHJlc291
cmNlcy0+YXBwZW5kKFJlc291cmNlSW5mbyhyZXNvdXJjZS0+dXJsKCksIGlzTWFzdGVyLCBpc01h
bmlmZXN0LCBpc0ZhbGxiYWNrLCBpc0ZvcmVpZ24sIGlzRXhwbGljaXQsIHJlc291cmNlLT5lc3Rp
bWF0ZWRTaXplSW5TdG9yYWdlKCkpKTsKKyAgICAgICAgcmVzdWx0LnVuY2hlY2tlZEFwcGVuZCh7
IHJlc291cmNlLnVybCgpLCBpc01hc3RlciwgaXNNYW5pZmVzdCwgaXNGYWxsYmFjaywgaXNGb3Jl
aWduLCBpc0V4cGxpY2l0LCByZXNvdXJjZS5lc3RpbWF0ZWRTaXplSW5TdG9yYWdlKCkgfSk7CiAg
ICAgfQorCisgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAogQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNh
Y2hlSW5mbyBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6YXBwbGljYXRpb25DYWNoZUluZm8oKQogewot
ICAgIEFwcGxpY2F0aW9uQ2FjaGUqIGNhY2hlID0gYXBwbGljYXRpb25DYWNoZSgpOworICAgIGF1
dG8qIGNhY2hlID0gYXBwbGljYXRpb25DYWNoZSgpOwogICAgIGlmICghY2FjaGUgfHwgIWNhY2hl
LT5pc0NvbXBsZXRlKCkpCi0gICAgICAgIHJldHVybiBDYWNoZUluZm8oVVJMKCksIDAsIDAsIDAp
OworICAgICAgICByZXR1cm4geyB7IH0sIDAsIDAsIDAgfTsKIAogICAgIC8vIEZJWE1FOiBBZGQg
IkNyZWF0aW9uIFRpbWUiIGFuZCAiVXBkYXRlIFRpbWUiIHRvIEFwcGxpY2F0aW9uIENhY2hlcy4K
LSAgICByZXR1cm4gQ2FjaGVJbmZvKGNhY2hlLT5tYW5pZmVzdFJlc291cmNlKCktPnVybCgpLCAw
LCAwLCBjYWNoZS0+ZXN0aW1hdGVkU2l6ZUluU3RvcmFnZSgpKTsKKyAgICByZXR1cm4geyBjYWNo
ZS0+bWFuaWZlc3RSZXNvdXJjZSgpLT51cmwoKSwgMCwgMCwgY2FjaGUtPmVzdGltYXRlZFNpemVJ
blN0b3JhZ2UoKSB9OwogfQogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpkaXNwYXRjaERP
TUV2ZW50KEV2ZW50SUQgaWQsIGludCB0b3RhbCwgaW50IGRvbmUpCitzdGF0aWMgUmVmPEV2ZW50
PiBjcmVhdGVBcHBsaWNhdGlvbkNhY2hlRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5
cGUsIGludCB0b3RhbCwgaW50IGRvbmUpCiB7Ci0gICAgaWYgKG1fZG9tQXBwbGljYXRpb25DYWNo
ZSkgewotICAgICAgICBjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSA9IERPTUFwcGxpY2F0
aW9uQ2FjaGU6OnRvRXZlbnRUeXBlKGlkKTsKLSAgICAgICAgUmVmUHRyPEV2ZW50PiBldmVudDsK
LSAgICAgICAgaWYgKGlkID09IFBST0dSRVNTX0VWRU5UKQotICAgICAgICAgICAgZXZlbnQgPSBQ
cm9ncmVzc0V2ZW50OjpjcmVhdGUoZXZlbnRUeXBlLCB0cnVlLCBkb25lLCB0b3RhbCk7Ci0gICAg
ICAgIGVsc2UKLSAgICAgICAgICAgIGV2ZW50ID0gRXZlbnQ6OmNyZWF0ZShldmVudFR5cGUsIGZh
bHNlLCBmYWxzZSk7Ci0gICAgICAgIG1fZG9tQXBwbGljYXRpb25DYWNoZS0+ZGlzcGF0Y2hFdmVu
dCgqZXZlbnQpOwotICAgIH0KKyAgICBpZiAoZXZlbnRUeXBlID09IGV2ZW50TmFtZXMoKS5wcm9n
cmVzc0V2ZW50KQorICAgICAgICByZXR1cm4gUHJvZ3Jlc3NFdmVudDo6Y3JlYXRlKGV2ZW50VHlw
ZSwgdHJ1ZSwgZG9uZSwgdG90YWwpOworICAgIHJldHVybiBFdmVudDo6Y3JlYXRlKGV2ZW50VHlw
ZSwgZmFsc2UsIGZhbHNlKTsKK30KKwordm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6ZGlzcGF0
Y2hET01FdmVudChjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgaW50IHRvdGFsLCBpbnQg
ZG9uZSkKK3sKKyAgICBpZiAoIW1fZG9tQXBwbGljYXRpb25DYWNoZSkKKyAgICAgICAgcmV0dXJu
OworICAgIG1fZG9tQXBwbGljYXRpb25DYWNoZS0+ZGlzcGF0Y2hFdmVudChjcmVhdGVBcHBsaWNh
dGlvbkNhY2hlRXZlbnQoZXZlbnRUeXBlLCB0b3RhbCwgZG9uZSkpOwogfQogCiB2b2lkIEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0OjpzZXRDYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoQXBwbGlj
YXRpb25DYWNoZUdyb3VwKiBncm91cCkKQEAgLTM2NywyNSArMzgxLDI0IEBAIHZvaWQgQXBwbGlj
YXRpb25DYWNoZUhvc3Q6OnNldENhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cChBcHBsaWNh
dGlvbkNhY2hlR3JvCiAgICAgbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAgPSBncm91
cDsKIH0KICAgICAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OnNldEFwcGxpY2F0aW9uQ2Fj
aGUoUGFzc1JlZlB0cjxBcHBsaWNhdGlvbkNhY2hlPiBhcHBsaWNhdGlvbkNhY2hlKQordm9pZCBB
cHBsaWNhdGlvbkNhY2hlSG9zdDo6c2V0QXBwbGljYXRpb25DYWNoZShSZWZQdHI8QXBwbGljYXRp
b25DYWNoZT4mJiBhcHBsaWNhdGlvbkNhY2hlKQogewogICAgIGlmIChtX2NhbmRpZGF0ZUFwcGxp
Y2F0aW9uQ2FjaGVHcm91cCkgewogICAgICAgICBBU1NFUlQoIW1fYXBwbGljYXRpb25DYWNoZSk7
CiAgICAgICAgIG1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwID0gbnVsbHB0cjsKICAg
ICB9Ci0KLSAgICBtX2FwcGxpY2F0aW9uQ2FjaGUgPSBhcHBsaWNhdGlvbkNhY2hlOworICAgIG1f
YXBwbGljYXRpb25DYWNoZSA9IFdURk1vdmUoYXBwbGljYXRpb25DYWNoZSk7CiB9CiAKIGJvb2wg
QXBwbGljYXRpb25DYWNoZUhvc3Q6OnNob3VsZExvYWRSZXNvdXJjZUZyb21BcHBsaWNhdGlvbkNh
Y2hlKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgb3JpZ2luYWxSZXF1ZXN0LCBBcHBsaWNhdGlvbkNh
Y2hlUmVzb3VyY2UqJiByZXNvdXJjZSkKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlKiBjYWNoZSA9
IGFwcGxpY2F0aW9uQ2FjaGUoKTsKKyAgICBhdXRvKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUo
KTsKICAgICBpZiAoIWNhY2hlIHx8ICFjYWNoZS0+aXNDb21wbGV0ZSgpKQogICAgICAgICByZXR1
cm4gZmFsc2U7CiAKICAgICBSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdChvcmlnaW5hbFJlcXVlc3Qp
OwotICAgIGlmIChGcmFtZSogbG9hZGVyRnJhbWUgPSBtX2RvY3VtZW50TG9hZGVyLmZyYW1lKCkp
IHsKLSAgICAgICAgaWYgKERvY3VtZW50KiBkb2N1bWVudCA9IGxvYWRlckZyYW1lLT5kb2N1bWVu
dCgpKQorICAgIGlmIChhdXRvKiBsb2FkZXJGcmFtZSA9IG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUo
KSkgeworICAgICAgICBpZiAoYXV0byogZG9jdW1lbnQgPSBsb2FkZXJGcmFtZS0+ZG9jdW1lbnQo
KSkKICAgICAgICAgICAgIGRvY3VtZW50LT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+dXBncmFk
ZUluc2VjdXJlUmVxdWVzdElmTmVlZGVkKHJlcXVlc3QsIENvbnRlbnRTZWN1cml0eVBvbGljeTo6
SW5zZWN1cmVSZXF1ZXN0VHlwZTo6TG9hZCk7CiAgICAgfQogICAgIApAQCAtNDMwLDcgKzQ0Myw2
IEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmdldEFwcGxpY2F0aW9uQ2FjaGVGYWxsYmFj
a1Jlc291cmNlKGNvbnN0IFJlc291cmNlUmVxCiAKICAgICByZXNvdXJjZSA9IGNhY2hlLT5yZXNv
dXJjZUZvclVSTChmYWxsYmFja1VSTCk7CiAgICAgQVNTRVJUKHJlc291cmNlKTsKLQogICAgIHJl
dHVybiB0cnVlOwogfQogCkBAIC00NDQsMzAgKzQ1NiwyNyBAQCBib29sIEFwcGxpY2F0aW9uQ2Fj
aGVIb3N0OjpzY2hlZHVsZUxvYWRGYWxsYmFja1Jlc291cmNlRnJvbUFwcGxpY2F0aW9uQ2FjaGUo
UmVzbwogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICBsb2FkZXItPndpbGxTd2l0Y2hUb1N1
YnN0aXR1dGVSZXNvdXJjZSgpOwotCiAgICAgbV9kb2N1bWVudExvYWRlci5zY2hlZHVsZVN1YnN0
aXR1dGVSZXNvdXJjZUxvYWQoKmxvYWRlciwgKnJlc291cmNlKTsKLQogICAgIHJldHVybiB0cnVl
OwogfQogCiBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6U3RhdHVzIEFwcGxpY2F0aW9uQ2FjaGVIb3N0
OjpzdGF0dXMoKSBjb25zdAogewotICAgIEFwcGxpY2F0aW9uQ2FjaGUqIGNhY2hlID0gYXBwbGlj
YXRpb25DYWNoZSgpOyAgICAKKyAgICBhdXRvKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKTsK
ICAgICBpZiAoIWNhY2hlKQogICAgICAgICByZXR1cm4gVU5DQUNIRUQ7CiAKICAgICBzd2l0Y2gg
KGNhY2hlLT5ncm91cCgpLT51cGRhdGVTdGF0dXMoKSkgewotICAgICAgICBjYXNlIEFwcGxpY2F0
aW9uQ2FjaGVHcm91cDo6Q2hlY2tpbmc6Ci0gICAgICAgICAgICByZXR1cm4gQ0hFQ0tJTkc7Ci0g
ICAgICAgIGNhc2UgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpEb3dubG9hZGluZzoKLSAgICAgICAg
ICAgIHJldHVybiBET1dOTE9BRElORzsKLSAgICAgICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hlR3Jv
dXA6OklkbGU6IHsKLSAgICAgICAgICAgIGlmIChjYWNoZS0+Z3JvdXAoKS0+aXNPYnNvbGV0ZSgp
KQotICAgICAgICAgICAgICAgIHJldHVybiBPQlNPTEVURTsKLSAgICAgICAgICAgIGlmIChjYWNo
ZSAhPSBjYWNoZS0+Z3JvdXAoKS0+bmV3ZXN0Q2FjaGUoKSkKLSAgICAgICAgICAgICAgICByZXR1
cm4gVVBEQVRFUkVBRFk7Ci0gICAgICAgICAgICByZXR1cm4gSURMRTsKLSAgICAgICAgfQorICAg
IGNhc2UgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpDaGVja2luZzoKKyAgICAgICAgcmV0dXJuIENI
RUNLSU5HOworICAgIGNhc2UgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpEb3dubG9hZGluZzoKKyAg
ICAgICAgcmV0dXJuIERPV05MT0FESU5HOworICAgIGNhc2UgQXBwbGljYXRpb25DYWNoZUdyb3Vw
OjpJZGxlOgorICAgICAgICBpZiAoY2FjaGUtPmdyb3VwKCktPmlzT2Jzb2xldGUoKSkKKyAgICAg
ICAgICAgIHJldHVybiBPQlNPTEVURTsKKyAgICAgICAgaWYgKGNhY2hlICE9IGNhY2hlLT5ncm91
cCgpLT5uZXdlc3RDYWNoZSgpKQorICAgICAgICAgICAgcmV0dXJuIFVQREFURVJFQURZOworICAg
ICAgICByZXR1cm4gSURMRTsKICAgICB9CiAKICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKQEAg
LTQ3NiwyNyArNDg1LDMwIEBAIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpTdGF0dXMgQXBwbGljYXRp
b25DYWNoZUhvc3Q6OnN0YXR1cygpIGNvbnN0CiAKIGJvb2wgQXBwbGljYXRpb25DYWNoZUhvc3Q6
OnVwZGF0ZSgpCiB7Ci0gICAgQXBwbGljYXRpb25DYWNoZSogY2FjaGUgPSBhcHBsaWNhdGlvbkNh
Y2hlKCk7CisgICAgYXV0byogY2FjaGUgPSBhcHBsaWNhdGlvbkNhY2hlKCk7CiAgICAgaWYgKCFj
YWNoZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIGNhY2hlLT5ncm91cCgpLT51cGRhdGUo
bV9kb2N1bWVudExvYWRlci5mcmFtZSgpLCBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlV2l0aG91dEJy
b3dzaW5nQ29udGV4dCk7CisgICAgYXV0byogZnJhbWUgPSBtX2RvY3VtZW50TG9hZGVyLmZyYW1l
KCk7CisgICAgaWYgKCFmcmFtZSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIGNhY2hlLT5n
cm91cCgpLT51cGRhdGUoKmZyYW1lLCBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlV2l0aG91dEJyb3dz
aW5nQ29udGV4dCk7CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKIGJvb2wgQXBwbGljYXRpb25DYWNo
ZUhvc3Q6OnN3YXBDYWNoZSgpCiB7Ci0gICAgQXBwbGljYXRpb25DYWNoZSogY2FjaGUgPSBhcHBs
aWNhdGlvbkNhY2hlKCk7CisgICAgYXV0byogY2FjaGUgPSBhcHBsaWNhdGlvbkNhY2hlKCk7CiAg
ICAgaWYgKCFjYWNoZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgLy8gSWYgdGhlIGdy
b3VwIG9mIGFwcGxpY2F0aW9uIGNhY2hlcyB0byB3aGljaCBjYWNoZSBiZWxvbmdzIGhhcyB0aGUg
bGlmZWN5Y2xlIHN0YXR1cyBvYnNvbGV0ZSwgdW5hc3NvY2lhdGUgZG9jdW1lbnQgZnJvbSBjYWNo
ZS4KICAgICBpZiAoY2FjaGUtPmdyb3VwKCktPmlzT2Jzb2xldGUoKSkgewotICAgICAgICBjYWNo
ZS0+Z3JvdXAoKS0+ZGlzYXNzb2NpYXRlRG9jdW1lbnRMb2FkZXIoJm1fZG9jdW1lbnRMb2FkZXIp
OworICAgICAgICBjYWNoZS0+Z3JvdXAoKS0+ZGlzYXNzb2NpYXRlRG9jdW1lbnRMb2FkZXIobV9k
b2N1bWVudExvYWRlcik7CiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KIAogICAgIC8vIElm
IHRoZXJlIGlzIG5vIG5ld2VyIGNhY2hlLCByYWlzZSBhbiBJTlZBTElEX1NUQVRFX0VSUiBleGNl
cHRpb24uCi0gICAgQXBwbGljYXRpb25DYWNoZSogbmV3ZXN0Q2FjaGUgPSBjYWNoZS0+Z3JvdXAo
KS0+bmV3ZXN0Q2FjaGUoKTsKKyAgICBhdXRvKiBuZXdlc3RDYWNoZSA9IGNhY2hlLT5ncm91cCgp
LT5uZXdlc3RDYWNoZSgpOwogICAgIGlmIChjYWNoZSA9PSBuZXdlc3RDYWNoZSkKICAgICAgICAg
cmV0dXJuIGZhbHNlOwogICAgIApAQCAtNTA4LDE0ICs1MjAsMTMgQEAgYm9vbCBBcHBsaWNhdGlv
bkNhY2hlSG9zdDo6c3dhcENhY2hlKCkKIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6YWJv
cnQoKQogewotICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogY2FjaGVHcm91cCA9IGNhbmRpZGF0
ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCgpOwotICAgIGlmIChjYWNoZUdyb3VwKQotICAgICAgICBj
YWNoZUdyb3VwLT5hYm9ydChtX2RvY3VtZW50TG9hZGVyLmZyYW1lKCkpOwotICAgIGVsc2Ugewot
ICAgICAgICBBcHBsaWNhdGlvbkNhY2hlKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKTsKLSAg
ICAgICAgaWYgKGNhY2hlKQotICAgICAgICAgICAgY2FjaGUtPmdyb3VwKCktPmFib3J0KG1fZG9j
dW1lbnRMb2FkZXIuZnJhbWUoKSk7Ci0gICAgfQorICAgIGF1dG8qIGZyYW1lID0gbV9kb2N1bWVu
dExvYWRlci5mcmFtZSgpOworICAgIGlmICghZnJhbWUpCisgICAgICAgIHJldHVybjsKKyAgICBp
ZiAoYXV0byogY2FjaGVHcm91cCA9IGNhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCgpKQor
ICAgICAgICBjYWNoZUdyb3VwLT5hYm9ydCgqZnJhbWUpOworICAgIGVsc2UgaWYgKGF1dG8qIGNh
Y2hlID0gYXBwbGljYXRpb25DYWNoZSgpKQorICAgICAgICBjYWNoZS0+Z3JvdXAoKS0+YWJvcnQo
KmZyYW1lKTsKIH0KIAogYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6aXNBcHBsaWNhdGlvbkNh
Y2hlRW5hYmxlZCgpCkBAIC01MjUsMTUgKzUzNiwxMiBAQCBib29sIEFwcGxpY2F0aW9uQ2FjaGVI
b3N0Ojppc0FwcGxpY2F0aW9uQ2FjaGVFbmFibGVkKCkKIAogYm9vbCBBcHBsaWNhdGlvbkNhY2hl
SG9zdDo6aXNBcHBsaWNhdGlvbkNhY2hlQmxvY2tlZEZvclJlcXVlc3QoY29uc3QgUmVzb3VyY2VS
ZXF1ZXN0JiByZXF1ZXN0KQogewotICAgIEZyYW1lKiBmcmFtZSA9IG1fZG9jdW1lbnRMb2FkZXIu
ZnJhbWUoKTsKKyAgICBhdXRvKiBmcmFtZSA9IG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUoKTsKICAg
ICBpZiAoIWZyYW1lKQogICAgICAgICByZXR1cm4gZmFsc2U7Ci0KICAgICBpZiAoZnJhbWUtPmlz
TWFpbkZyYW1lKCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIFJlZjxTZWN1cml0eU9y
aWdpbj4gb3JpZ2luKFNlY3VyaXR5T3JpZ2luOjpjcmVhdGUocmVxdWVzdC51cmwoKSkpOwotICAg
IHJldHVybiAhb3JpZ2luLmdldCgpLmNhbkFjY2Vzc0FwcGxpY2F0aW9uQ2FjaGUoZnJhbWUtPmRv
Y3VtZW50KCktPnRvcE9yaWdpbigpKTsKKyAgICByZXR1cm4gIVNlY3VyaXR5T3JpZ2luOjpjcmVh
dGUocmVxdWVzdC51cmwoKSktPmNhbkFjY2Vzc0FwcGxpY2F0aW9uQ2FjaGUoZnJhbWUtPmRvY3Vt
ZW50KCktPnRvcE9yaWdpbigpKTsKIH0KIAogfSAgLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlSG9z
dC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVIb3N0
LmgKaW5kZXggYzk1YjIzYjI4NzQ4Mjc5NjA3NThmMzI4MDY3YjFkZmJhZWI4NzhiYS4uMmJmZGM2
MmY5Mzk4ZDAwZjRjYjFlOTFiODZkN2YzNmM4NTNiNzc4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVIb3N0LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVIb3N0LmgKQEAgLTEsNiAr
MSw3IEBACiAvKgotICogQ29weXJpZ2h0IChjKSAyMDA5LCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0
cyByZXNlcnZlZC4KLSAqIAorICogQ29weXJpZ2h0IChjKSAyMDA5LCBHb29nbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChjKSAyMDE3IEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKICAqIG1l
dDoKQEAgLTMwLDE2NSArMzEsMTM2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaW5jbHVkZSAiUGxh
dGZvcm1FeHBvcnRNYWNyb3MuaCIKICNpbmNsdWRlICJVUkwuaCIKICNpbmNsdWRlIDx3dGYvRGVx
dWUuaD4KLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi9SZWZQdHIu
aD4KICNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKLSAgICBj
bGFzcyBET01BcHBsaWNhdGlvbkNhY2hlOwotICAgIGNsYXNzIERvY3VtZW50TG9hZGVyOwotICAg
IGNsYXNzIEZyYW1lOwotICAgIGNsYXNzIFJlc291cmNlRXJyb3I7Ci0gICAgY2xhc3MgUmVzb3Vy
Y2VMb2FkZXI7Ci0gICAgY2xhc3MgUmVzb3VyY2VSZXF1ZXN0OwotICAgIGNsYXNzIFJlc291cmNl
UmVzcG9uc2U7Ci0gICAgY2xhc3MgU2hhcmVkQnVmZmVyOwotICAgIGNsYXNzIFN1YnN0aXR1dGVE
YXRhOwotICAgIGNsYXNzIEFwcGxpY2F0aW9uQ2FjaGU7Ci0gICAgY2xhc3MgQXBwbGljYXRpb25D
YWNoZUdyb3VwOwotICAgIGNsYXNzIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTsKLSAgICBjbGFz
cyBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTsKLQotICAgIGNsYXNzIEFwcGxpY2F0aW9uQ2FjaGVI
b3N0IHsKLSAgICAgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoQXBwbGljYXRpb25DYWNoZUhvc3Qp
OyBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKLSAgICBwdWJsaWM6Ci0gICAgICAgIC8vIFRoZSBT
dGF0dXMgbnVtZXJpYyB2YWx1ZXMgYXJlIHNwZWNpZmllZCBpbiB0aGUgSFRNTDUgc3BlYy4KLSAg
ICAgICAgZW51bSBTdGF0dXMgewotICAgICAgICAgICAgVU5DQUNIRUQgPSAwLAotICAgICAgICAg
ICAgSURMRSA9IDEsCi0gICAgICAgICAgICBDSEVDS0lORyA9IDIsCi0gICAgICAgICAgICBET1dO
TE9BRElORyA9IDMsCi0gICAgICAgICAgICBVUERBVEVSRUFEWSA9IDQsCi0gICAgICAgICAgICBP
QlNPTEVURSA9IDUKLSAgICAgICAgfTsKLQotICAgICAgICBlbnVtIEV2ZW50SUQgewotICAgICAg
ICAgICAgQ0hFQ0tJTkdfRVZFTlQgPSAwLAotICAgICAgICAgICAgRVJST1JfRVZFTlQsCi0gICAg
ICAgICAgICBOT1VQREFURV9FVkVOVCwKLSAgICAgICAgICAgIERPV05MT0FESU5HX0VWRU5ULAot
ICAgICAgICAgICAgUFJPR1JFU1NfRVZFTlQsCi0gICAgICAgICAgICBVUERBVEVSRUFEWV9FVkVO
VCwKLSAgICAgICAgICAgIENBQ0hFRF9FVkVOVCwKLSAgICAgICAgICAgIE9CU09MRVRFX0VWRU5U
ICAvLyBNdXN0IHJlbWFpbiB0aGUgbGFzdCB2YWx1ZSwgdGhpcyBpcyB1c2VkIHRvIHNpemUgYXJy
YXlzLgotICAgICAgICB9OwotCi0gICAgICAgIHN0cnVjdCBDYWNoZUluZm8gewotICAgICAgICAg
ICAgQ2FjaGVJbmZvKGNvbnN0IFVSTCYgbWFuaWZlc3QsIGRvdWJsZSBjcmVhdGlvblRpbWUsIGRv
dWJsZSB1cGRhdGVUaW1lLCBsb25nIGxvbmcgc2l6ZSkKLSAgICAgICAgICAgICAgICA6IG1fbWFu
aWZlc3QobWFuaWZlc3QpCi0gICAgICAgICAgICAgICAgLCBtX2NyZWF0aW9uVGltZShjcmVhdGlv
blRpbWUpCi0gICAgICAgICAgICAgICAgLCBtX3VwZGF0ZVRpbWUodXBkYXRlVGltZSkKLSAgICAg
ICAgICAgICAgICAsIG1fc2l6ZShzaXplKSB7IH0KLSAgICAgICAgICAgIFVSTCBtX21hbmlmZXN0
OwotICAgICAgICAgICAgZG91YmxlIG1fY3JlYXRpb25UaW1lOwotICAgICAgICAgICAgZG91Ymxl
IG1fdXBkYXRlVGltZTsKLSAgICAgICAgICAgIGxvbmcgbG9uZyBtX3NpemU7Ci0gICAgICAgIH07
Ci0KLSAgICAgICAgc3RydWN0IFJlc291cmNlSW5mbyB7Ci0gICAgICAgICAgICBSZXNvdXJjZUlu
Zm8oY29uc3QgVVJMJiByZXNvdXJjZSwgYm9vbCBpc01hc3RlciwgYm9vbCBpc01hbmlmZXN0LCBi
b29sIGlzRmFsbGJhY2ssIGJvb2wgaXNGb3JlaWduLCBib29sIGlzRXhwbGljaXQsIGxvbmcgbG9u
ZyBzaXplKQotICAgICAgICAgICAgICAgIDogbV9yZXNvdXJjZShyZXNvdXJjZSkKLSAgICAgICAg
ICAgICAgICAsIG1faXNNYXN0ZXIoaXNNYXN0ZXIpCi0gICAgICAgICAgICAgICAgLCBtX2lzTWFu
aWZlc3QoaXNNYW5pZmVzdCkKLSAgICAgICAgICAgICAgICAsIG1faXNGYWxsYmFjayhpc0ZhbGxi
YWNrKQotICAgICAgICAgICAgICAgICwgbV9pc0ZvcmVpZ24oaXNGb3JlaWduKQotICAgICAgICAg
ICAgICAgICwgbV9pc0V4cGxpY2l0KGlzRXhwbGljaXQpCi0gICAgICAgICAgICAgICAgLCBtX3Np
emUoc2l6ZSkgeyB9Ci0gICAgICAgICAgICBVUkwgbV9yZXNvdXJjZTsKLSAgICAgICAgICAgIGJv
b2wgbV9pc01hc3RlcjsKLSAgICAgICAgICAgIGJvb2wgbV9pc01hbmlmZXN0OwotICAgICAgICAg
ICAgYm9vbCBtX2lzRmFsbGJhY2s7Ci0gICAgICAgICAgICBib29sIG1faXNGb3JlaWduOwotICAg
ICAgICAgICAgYm9vbCBtX2lzRXhwbGljaXQ7Ci0gICAgICAgICAgICBsb25nIGxvbmcgbV9zaXpl
OwotICAgICAgICB9OwotCi0gICAgICAgIHR5cGVkZWYgVmVjdG9yPFJlc291cmNlSW5mbz4gUmVz
b3VyY2VJbmZvTGlzdDsKLQotICAgICAgICBleHBsaWNpdCBBcHBsaWNhdGlvbkNhY2hlSG9zdChE
b2N1bWVudExvYWRlciYpOwotICAgICAgICB+QXBwbGljYXRpb25DYWNoZUhvc3QoKTsKLQotICAg
ICAgICBzdGF0aWMgVVJMIGNyZWF0ZUZpbGVVUkwoY29uc3QgU3RyaW5nJik7Ci0KLSAgICAgICAg
dm9pZCBzZWxlY3RDYWNoZVdpdGhvdXRNYW5pZmVzdCgpOwotICAgICAgICB2b2lkIHNlbGVjdENh
Y2hlV2l0aE1hbmlmZXN0KGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwpOwotCi0gICAgICAgIHZvaWQg
bWF5YmVMb2FkTWFpblJlc291cmNlKFJlc291cmNlUmVxdWVzdCYsIFN1YnN0aXR1dGVEYXRhJik7
Ci0gICAgICAgIHZvaWQgbWF5YmVMb2FkTWFpblJlc291cmNlRm9yUmVkaXJlY3QoUmVzb3VyY2VS
ZXF1ZXN0JiwgU3Vic3RpdHV0ZURhdGEmKTsKLSAgICAgICAgYm9vbCBtYXliZUxvYWRGYWxsYmFj
a0Zvck1haW5SZXNwb25zZShjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJik7Ci0gICAgICAgIHZvaWQgbWFpblJlc291cmNlRGF0YVJlY2VpdmVkKGNvbnN0IGNo
YXIqIGRhdGEsIGludCBsZW5ndGgsIGxvbmcgbG9uZyBlbmNvZGVkRGF0YUxlbmd0aCwgYm9vbCBh
bGxBdE9uY2UpOwotICAgICAgICB2b2lkIGZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZSgpOwot
ICAgICAgICB2b2lkIGZhaWxlZExvYWRpbmdNYWluUmVzb3VyY2UoKTsKLQotICAgICAgICBXRUJD
T1JFX0VYUE9SVCBib29sIG1heWJlTG9hZFJlc291cmNlKFJlc291cmNlTG9hZGVyJiwgY29uc3Qg
UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgVVJMJiBvcmlnaW5hbFVSTCk7Ci0gICAgICAgIFdFQkNP
UkVfRVhQT1JUIGJvb2wgbWF5YmVMb2FkRmFsbGJhY2tGb3JSZWRpcmVjdChSZXNvdXJjZUxvYWRl
ciosIFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICAgICAg
V0VCQ09SRV9FWFBPUlQgYm9vbCBtYXliZUxvYWRGYWxsYmFja0ZvclJlc3BvbnNlKFJlc291cmNl
TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwotICAgICAgICBXRUJDT1JFX0VYUE9S
VCBib29sIG1heWJlTG9hZEZhbGxiYWNrRm9yRXJyb3IoUmVzb3VyY2VMb2FkZXIqLCBjb25zdCBS
ZXNvdXJjZUVycm9yJik7Ci0KLSAgICAgICAgYm9vbCBtYXliZUxvYWRTeW5jaHJvbm91c2x5KFJl
c291cmNlUmVxdWVzdCYsIFJlc291cmNlRXJyb3ImLCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRy
PFNoYXJlZEJ1ZmZlcj4mKTsKLSAgICAgICAgdm9pZCBtYXliZUxvYWRGYWxsYmFja1N5bmNocm9u
b3VzbHkoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgUmVzb3VyY2VFcnJvciYsIFJlc291cmNlUmVz
cG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPiYpOwotCi0gICAgICAgIGJvb2wgY2FuQ2FjaGVJ
blBhZ2VDYWNoZSgpOwotCi0gICAgICAgIFN0YXR1cyBzdGF0dXMoKSBjb25zdDsgIAotICAgICAg
ICBib29sIHVwZGF0ZSgpOwotICAgICAgICBib29sIHN3YXBDYWNoZSgpOwotICAgICAgICB2b2lk
IGFib3J0KCk7Ci0KLSAgICAgICAgdm9pZCBzZXRET01BcHBsaWNhdGlvbkNhY2hlKERPTUFwcGxp
Y2F0aW9uQ2FjaGUqKTsKLSAgICAgICAgdm9pZCBub3RpZnlET01BcHBsaWNhdGlvbkNhY2hlKEV2
ZW50SUQsIGludCBwcm9ncmVzc1RvdGFsLCBpbnQgcHJvZ3Jlc3NEb25lKTsKLQotICAgICAgICB2
b2lkIHN0b3BMb2FkaW5nSW5GcmFtZShGcmFtZSopOwotCi0gICAgICAgIHZvaWQgc3RvcERlZmVy
cmluZ0V2ZW50cygpOyAvLyBBbHNvIHJhaXNlcyB0aGUgZXZlbnRzIHRoYXQgaGF2ZSBiZWVuIHF1
ZXVlZCB1cC4KLQotICAgICAgICB2b2lkIGZpbGxSZXNvdXJjZUxpc3QoUmVzb3VyY2VJbmZvTGlz
dCopOwotICAgICAgICBDYWNoZUluZm8gYXBwbGljYXRpb25DYWNoZUluZm8oKTsKLQotICAgICAg
ICBib29sIHNob3VsZExvYWRSZXNvdXJjZUZyb21BcHBsaWNhdGlvbkNhY2hlKGNvbnN0IFJlc291
cmNlUmVxdWVzdCYsIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSomKTsKLSAgICAgICAgYm9vbCBn
ZXRBcHBsaWNhdGlvbkNhY2hlRmFsbGJhY2tSZXNvdXJjZShjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
LCBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqJiwgQXBwbGljYXRpb25DYWNoZSogPSBudWxscHRy
KTsKLQotICAgIHByaXZhdGU6Ci0gICAgICAgIGJvb2wgaXNBcHBsaWNhdGlvbkNhY2hlRW5hYmxl
ZCgpOwotICAgICAgICBib29sIGlzQXBwbGljYXRpb25DYWNoZUJsb2NrZWRGb3JSZXF1ZXN0KGNv
bnN0IFJlc291cmNlUmVxdWVzdCYpOwotCi0gICAgICAgIHN0cnVjdCBEZWZlcnJlZEV2ZW50IHsK
LSAgICAgICAgICAgIEV2ZW50SUQgZXZlbnRJRDsKLSAgICAgICAgICAgIGludCBwcm9ncmVzc1Rv
dGFsOwotICAgICAgICAgICAgaW50IHByb2dyZXNzRG9uZTsKLSAgICAgICAgICAgIERlZmVycmVk
RXZlbnQoRXZlbnRJRCBpZCwgaW50IHRvdGFsLCBpbnQgZG9uZSkgOiBldmVudElEKGlkKSwgcHJv
Z3Jlc3NUb3RhbCh0b3RhbCksIHByb2dyZXNzRG9uZShkb25lKSB7IH0KLSAgICAgICAgfTsKLQot
ICAgICAgICBET01BcHBsaWNhdGlvbkNhY2hlKiBtX2RvbUFwcGxpY2F0aW9uQ2FjaGU7Ci0gICAg
ICAgIERvY3VtZW50TG9hZGVyJiBtX2RvY3VtZW50TG9hZGVyOwotICAgICAgICBib29sIG1fZGVm
ZXJzRXZlbnRzOyAvLyBFdmVudHMgYXJlIGRlZmVycmVkIHVudGlsIGFmdGVyIGRvY3VtZW50IG9u
bG9hZC4KLSAgICAgICAgVmVjdG9yPERlZmVycmVkRXZlbnQ+IG1fZGVmZXJyZWRFdmVudHM7Ci0K
LSAgICAgICAgdm9pZCBkaXNwYXRjaERPTUV2ZW50KEV2ZW50SUQsIGludCBwcm9ncmVzc1RvdGFs
LCBpbnQgcHJvZ3Jlc3NEb25lKTsKLQotICAgICAgICBmcmllbmQgY2xhc3MgQXBwbGljYXRpb25D
YWNoZUdyb3VwOwotICAgICAgICBmcmllbmQgY2xhc3MgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U7
Ci0KLSAgICAgICAgYm9vbCBzY2hlZHVsZUxvYWRGYWxsYmFja1Jlc291cmNlRnJvbUFwcGxpY2F0
aW9uQ2FjaGUoUmVzb3VyY2VMb2FkZXIqLCBBcHBsaWNhdGlvbkNhY2hlKiA9IG51bGxwdHIpOwot
ICAgICAgICB2b2lkIHNldENhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cChBcHBsaWNhdGlv
bkNhY2hlR3JvdXAqIGdyb3VwKTsKLSAgICAgICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBjYW5k
aWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKSBjb25zdCB7IHJldHVybiBtX2NhbmRpZGF0ZUFw
cGxpY2F0aW9uQ2FjaGVHcm91cDsgfQotICAgICAgICB2b2lkIHNldEFwcGxpY2F0aW9uQ2FjaGUo
UGFzc1JlZlB0cjxBcHBsaWNhdGlvbkNhY2hlPiBhcHBsaWNhdGlvbkNhY2hlKTsKLSAgICAgICAg
QXBwbGljYXRpb25DYWNoZSogYXBwbGljYXRpb25DYWNoZSgpIGNvbnN0IHsgcmV0dXJuIG1fYXBw
bGljYXRpb25DYWNoZS5nZXQoKTsgfQotICAgICAgICBBcHBsaWNhdGlvbkNhY2hlKiBtYWluUmVz
b3VyY2VBcHBsaWNhdGlvbkNhY2hlKCkgY29uc3QgeyByZXR1cm4gbV9tYWluUmVzb3VyY2VBcHBs
aWNhdGlvbkNhY2hlLmdldCgpOyB9Ci0gICAgICAgIGJvb2wgbWF5YmVMb2FkRmFsbGJhY2tGb3JN
YWluRXJyb3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwot
Ci0gICAgICAgIC8vIFRoZSBhcHBsaWNhdGlvbiBjYWNoZSB0aGF0IHRoZSBkb2N1bWVudCBsb2Fk
ZXIgaXMgYXNzb2NpYXRlZCB3aXRoIChpZiBhbnkpLgotICAgICAgICBSZWZQdHI8QXBwbGljYXRp
b25DYWNoZT4gbV9hcHBsaWNhdGlvbkNhY2hlOwotCi0gICAgICAgIC8vIEJlZm9yZSBhbiBhcHBs
aWNhdGlvbiBjYWNoZSBoYXMgZmluaXNoZWQgbG9hZGluZywgdGhpcyB3aWxsIGJlIHRoZSBjYW5k
aWRhdGUgYXBwbGljYXRpb24KLSAgICAgICAgLy8gZ3JvdXAgdGhhdCB0aGUgZG9jdW1lbnQgbG9h
ZGVyIGlzIGFzc29jaWF0ZWQgd2l0aC4KLSAgICAgICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBt
X2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cDsKLQotICAgICAgICAvLyBUaGlzIGlzIHRo
ZSBhcHBsaWNhdGlvbiBjYWNoZSB0aGUgbWFpbiByZXNvdXJjZSB3YXMgbG9hZGVkIGZyb20gKGlm
IGFueSkuCi0gICAgICAgIFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hlPiBtX21haW5SZXNvdXJjZUFw
cGxpY2F0aW9uQ2FjaGU7CisKK2NsYXNzIEFwcGxpY2F0aW9uQ2FjaGU7CitjbGFzcyBBcHBsaWNh
dGlvbkNhY2hlR3JvdXA7CitjbGFzcyBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U7CitjbGFzcyBB
cHBsaWNhdGlvbkNhY2hlU3RvcmFnZTsKK2NsYXNzIERPTUFwcGxpY2F0aW9uQ2FjaGU7CitjbGFz
cyBEb2N1bWVudExvYWRlcjsKK2NsYXNzIEZyYW1lOworY2xhc3MgUmVzb3VyY2VFcnJvcjsKK2Ns
YXNzIFJlc291cmNlTG9hZGVyOworY2xhc3MgUmVzb3VyY2VSZXF1ZXN0OworY2xhc3MgUmVzb3Vy
Y2VSZXNwb25zZTsKK2NsYXNzIFNoYXJlZEJ1ZmZlcjsKK2NsYXNzIFN1YnN0aXR1dGVEYXRhOwor
CitjbGFzcyBBcHBsaWNhdGlvbkNhY2hlSG9zdCB7CisgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUo
QXBwbGljYXRpb25DYWNoZUhvc3QpOyBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKK3B1YmxpYzoK
KyAgICAvLyBUaGUgU3RhdHVzIG51bWVyaWMgdmFsdWVzIGFyZSBzcGVjaWZpZWQgaW4gdGhlIEhU
TUw1IHNwZWMuCisgICAgZW51bSBTdGF0dXMgeworICAgICAgICBVTkNBQ0hFRCA9IDAsCisgICAg
ICAgIElETEUgPSAxLAorICAgICAgICBDSEVDS0lORyA9IDIsCisgICAgICAgIERPV05MT0FESU5H
ID0gMywKKyAgICAgICAgVVBEQVRFUkVBRFkgPSA0LAorICAgICAgICBPQlNPTEVURSA9IDUKKyAg
ICB9OworCisgICAgc3RydWN0IENhY2hlSW5mbyB7CisgICAgICAgIFVSTCBtYW5pZmVzdDsKKyAg
ICAgICAgZG91YmxlIGNyZWF0aW9uVGltZTsKKyAgICAgICAgZG91YmxlIHVwZGF0ZVRpbWU7Cisg
ICAgICAgIGxvbmcgbG9uZyBzaXplOworICAgIH07CisKKyAgICBzdHJ1Y3QgUmVzb3VyY2VJbmZv
IHsKKyAgICAgICAgVVJMIHJlc291cmNlOworICAgICAgICBib29sIGlzTWFzdGVyOworICAgICAg
ICBib29sIGlzTWFuaWZlc3Q7CisgICAgICAgIGJvb2wgaXNGYWxsYmFjazsKKyAgICAgICAgYm9v
bCBpc0ZvcmVpZ247CisgICAgICAgIGJvb2wgaXNFeHBsaWNpdDsKKyAgICAgICAgbG9uZyBsb25n
IHNpemU7CisgICAgfTsKKworICAgIGV4cGxpY2l0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0KERvY3Vt
ZW50TG9hZGVyJik7CisgICAgfkFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7CisKKyAgICBzdGF0aWMg
VVJMIGNyZWF0ZUZpbGVVUkwoY29uc3QgU3RyaW5nJik7CisKKyAgICB2b2lkIHNlbGVjdENhY2hl
V2l0aG91dE1hbmlmZXN0KCk7CisgICAgdm9pZCBzZWxlY3RDYWNoZVdpdGhNYW5pZmVzdChjb25z
dCBVUkwmIG1hbmlmZXN0VVJMKTsKKworICAgIHZvaWQgbWF5YmVMb2FkTWFpblJlc291cmNlKFJl
c291cmNlUmVxdWVzdCYsIFN1YnN0aXR1dGVEYXRhJik7CisgICAgdm9pZCBtYXliZUxvYWRNYWlu
UmVzb3VyY2VGb3JSZWRpcmVjdChSZXNvdXJjZVJlcXVlc3QmLCBTdWJzdGl0dXRlRGF0YSYpOwor
ICAgIGJvb2wgbWF5YmVMb2FkRmFsbGJhY2tGb3JNYWluUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VS
ZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOworICAgIHZvaWQgbWFpblJlc291cmNl
RGF0YVJlY2VpdmVkKGNvbnN0IGNoYXIqIGRhdGEsIGludCBsZW5ndGgsIGxvbmcgbG9uZyBlbmNv
ZGVkRGF0YUxlbmd0aCwgYm9vbCBhbGxBdE9uY2UpOworICAgIHZvaWQgZmluaXNoZWRMb2FkaW5n
TWFpblJlc291cmNlKCk7CisgICAgdm9pZCBmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKCk7CisK
KyAgICBXRUJDT1JFX0VYUE9SVCBib29sIG1heWJlTG9hZFJlc291cmNlKFJlc291cmNlTG9hZGVy
JiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgVVJMJiBvcmlnaW5hbFVSTCk7CisgICAg
V0VCQ09SRV9FWFBPUlQgYm9vbCBtYXliZUxvYWRGYWxsYmFja0ZvclJlZGlyZWN0KFJlc291cmNl
TG9hZGVyKiwgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOworICAg
IFdFQkNPUkVfRVhQT1JUIGJvb2wgbWF5YmVMb2FkRmFsbGJhY2tGb3JSZXNwb25zZShSZXNvdXJj
ZUxvYWRlciosIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKKyAgICBXRUJDT1JFX0VYUE9SVCBi
b29sIG1heWJlTG9hZEZhbGxiYWNrRm9yRXJyb3IoUmVzb3VyY2VMb2FkZXIqLCBjb25zdCBSZXNv
dXJjZUVycm9yJik7CisKKyAgICBib29sIG1heWJlTG9hZFN5bmNocm9ub3VzbHkoUmVzb3VyY2VS
ZXF1ZXN0JiwgUmVzb3VyY2VFcnJvciYsIFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVk
QnVmZmVyPiYpOworICAgIHZvaWQgbWF5YmVMb2FkRmFsbGJhY2tTeW5jaHJvbm91c2x5KGNvbnN0
IFJlc291cmNlUmVxdWVzdCYsIFJlc291cmNlRXJyb3ImLCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVm
UHRyPFNoYXJlZEJ1ZmZlcj4mKTsKKworICAgIGJvb2wgY2FuQ2FjaGVJblBhZ2VDYWNoZSgpOwor
CisgICAgU3RhdHVzIHN0YXR1cygpIGNvbnN0OworICAgIGJvb2wgdXBkYXRlKCk7CisgICAgYm9v
bCBzd2FwQ2FjaGUoKTsKKyAgICB2b2lkIGFib3J0KCk7CisKKyAgICB2b2lkIHNldERPTUFwcGxp
Y2F0aW9uQ2FjaGUoRE9NQXBwbGljYXRpb25DYWNoZSopOworICAgIHZvaWQgbm90aWZ5RE9NQXBw
bGljYXRpb25DYWNoZShjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgaW50IHByb2dyZXNz
VG90YWwsIGludCBwcm9ncmVzc0RvbmUpOworCisgICAgdm9pZCBzdG9wTG9hZGluZ0luRnJhbWUo
RnJhbWUmKTsKKworICAgIHZvaWQgc3RvcERlZmVycmluZ0V2ZW50cygpOyAvLyBBbHNvIHJhaXNl
cyB0aGUgZXZlbnRzIHRoYXQgaGF2ZSBiZWVuIHF1ZXVlZCB1cC4KKworICAgIFZlY3RvcjxSZXNv
dXJjZUluZm8+IHJlc291cmNlTGlzdCgpOworICAgIENhY2hlSW5mbyBhcHBsaWNhdGlvbkNhY2hl
SW5mbygpOworCisgICAgYm9vbCBzaG91bGRMb2FkUmVzb3VyY2VGcm9tQXBwbGljYXRpb25DYWNo
ZShjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqJik7Cisg
ICAgYm9vbCBnZXRBcHBsaWNhdGlvbkNhY2hlRmFsbGJhY2tSZXNvdXJjZShjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmLCBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqJiwgQXBwbGljYXRpb25DYWNoZSog
PSBudWxscHRyKTsKKworcHJpdmF0ZToKKyAgICBmcmllbmQgY2xhc3MgQXBwbGljYXRpb25DYWNo
ZUdyb3VwOworCisgICAgc3RydWN0IERlZmVycmVkRXZlbnQgeworICAgICAgICBBdG9taWNTdHJp
bmcgZXZlbnRUeXBlOworICAgICAgICBpbnQgcHJvZ3Jlc3NUb3RhbDsKKyAgICAgICAgaW50IHBy
b2dyZXNzRG9uZTsKICAgICB9OwogCisgICAgYm9vbCBpc0FwcGxpY2F0aW9uQ2FjaGVFbmFibGVk
KCk7CisgICAgYm9vbCBpc0FwcGxpY2F0aW9uQ2FjaGVCbG9ja2VkRm9yUmVxdWVzdChjb25zdCBS
ZXNvdXJjZVJlcXVlc3QmKTsKKworICAgIHZvaWQgZGlzcGF0Y2hET01FdmVudChjb25zdCBBdG9t
aWNTdHJpbmcmIGV2ZW50VHlwZSwgaW50IHByb2dyZXNzVG90YWwsIGludCBwcm9ncmVzc0RvbmUp
OworCisgICAgYm9vbCBzY2hlZHVsZUxvYWRGYWxsYmFja1Jlc291cmNlRnJvbUFwcGxpY2F0aW9u
Q2FjaGUoUmVzb3VyY2VMb2FkZXIqLCBBcHBsaWNhdGlvbkNhY2hlKiA9IG51bGxwdHIpOworICAg
IHZvaWQgc2V0Q2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKEFwcGxpY2F0aW9uQ2FjaGVH
cm91cCopOworICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogY2FuZGlkYXRlQXBwbGljYXRpb25D
YWNoZUdyb3VwKCkgY29uc3QgeyByZXR1cm4gbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3Jv
dXA7IH0KKyAgICB2b2lkIHNldEFwcGxpY2F0aW9uQ2FjaGUoUmVmUHRyPEFwcGxpY2F0aW9uQ2Fj
aGU+JiYpOworICAgIEFwcGxpY2F0aW9uQ2FjaGUqIGFwcGxpY2F0aW9uQ2FjaGUoKSBjb25zdCB7
IHJldHVybiBtX2FwcGxpY2F0aW9uQ2FjaGUuZ2V0KCk7IH0KKyAgICBBcHBsaWNhdGlvbkNhY2hl
KiBtYWluUmVzb3VyY2VBcHBsaWNhdGlvbkNhY2hlKCkgY29uc3QgeyByZXR1cm4gbV9tYWluUmVz
b3VyY2VBcHBsaWNhdGlvbkNhY2hlLmdldCgpOyB9CisgICAgYm9vbCBtYXliZUxvYWRGYWxsYmFj
a0Zvck1haW5FcnJvcihjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZUVycm9y
Jik7CisKKyAgICBET01BcHBsaWNhdGlvbkNhY2hlKiBtX2RvbUFwcGxpY2F0aW9uQ2FjaGUgeyBu
dWxscHRyIH07CisgICAgRG9jdW1lbnRMb2FkZXImIG1fZG9jdW1lbnRMb2FkZXI7CisKKyAgICBi
b29sIG1fZGVmZXJzRXZlbnRzIHsgdHJ1ZSB9OyAvLyBFdmVudHMgYXJlIGRlZmVycmVkIHVudGls
IGFmdGVyIGRvY3VtZW50IG9ubG9hZC4KKyAgICBWZWN0b3I8RGVmZXJyZWRFdmVudD4gbV9kZWZl
cnJlZEV2ZW50czsKKworICAgIC8vIFRoZSBhcHBsaWNhdGlvbiBjYWNoZSB0aGF0IHRoZSBkb2N1
bWVudCBsb2FkZXIgaXMgYXNzb2NpYXRlZCB3aXRoIChpZiBhbnkpLgorICAgIFJlZlB0cjxBcHBs
aWNhdGlvbkNhY2hlPiBtX2FwcGxpY2F0aW9uQ2FjaGU7CisKKyAgICAvLyBCZWZvcmUgYW4gYXBw
bGljYXRpb24gY2FjaGUgaGFzIGZpbmlzaGVkIGxvYWRpbmcsIHRoaXMgd2lsbCBiZSB0aGUgY2Fu
ZGlkYXRlIGFwcGxpY2F0aW9uCisgICAgLy8gZ3JvdXAgdGhhdCB0aGUgZG9jdW1lbnQgbG9hZGVy
IGlzIGFzc29jaWF0ZWQgd2l0aC4KKyAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIG1fY2FuZGlk
YXRlQXBwbGljYXRpb25DYWNoZUdyb3VwIHsgbnVsbHB0ciB9OworCisgICAgLy8gVGhpcyBpcyB0
aGUgYXBwbGljYXRpb24gY2FjaGUgdGhlIG1haW4gcmVzb3VyY2Ugd2FzIGxvYWRlZCBmcm9tIChp
ZiBhbnkpLgorICAgIFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hlPiBtX21haW5SZXNvdXJjZUFwcGxp
Y2F0aW9uQ2FjaGU7Cit9OworCiB9ICAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFn
ZS5jcHAKaW5kZXggZGYxMDNlNGEyYjhlYjQ1NTgzZTBlYTkzNjU3ZmRlNmM4NjEwNDkwNi4uZjRm
YTk1YjUxN2VjNzc5MTYyNGZjMGYyNWE2NTZiMGMwOTQ0MTQ3NyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZVN0b3JhZ2Uu
Y3BwCkBAIC0xMjYsMzYgKzEyNiwzMiBAQCBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIEFwcGxpY2F0
aW9uQ2FjaGVTdG9yYWdlOjpsb2FkQ2FjaGVHcm91cChjb25zdCBVUkwmIG1hbmlmZQogICAgIGlm
ICghY2FjaGUpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgICAgICAKLSAgICBBcHBsaWNh
dGlvbkNhY2hlR3JvdXAqIGdyb3VwID0gbmV3IEFwcGxpY2F0aW9uQ2FjaGVHcm91cCgqdGhpcywg
bWFuaWZlc3RVUkwpOwotICAgICAgCi0gICAgZ3JvdXAtPnNldFN0b3JhZ2VJRChzdGF0aWNfY2Fz
dDx1bnNpZ25lZD4oc3RhdGVtZW50LmdldENvbHVtbkludDY0KDApKSk7Ci0gICAgZ3JvdXAtPnNl
dE5ld2VzdENhY2hlKFdURk1vdmUoY2FjaGUpKTsKLQotICAgIHJldHVybiBncm91cDsKKyAgICBh
dXRvJiBncm91cCA9ICpuZXcgQXBwbGljYXRpb25DYWNoZUdyb3VwKCp0aGlzLCBtYW5pZmVzdFVS
TCk7CisgICAgZ3JvdXAuc2V0U3RvcmFnZUlEKHN0YXRpY19jYXN0PHVuc2lnbmVkPihzdGF0ZW1l
bnQuZ2V0Q29sdW1uSW50NjQoMCkpKTsKKyAgICBncm91cC5zZXROZXdlc3RDYWNoZShjYWNoZS5y
ZWxlYXNlTm9uTnVsbCgpKTsKKyAgICByZXR1cm4gJmdyb3VwOwogfSAgICAKIAogQXBwbGljYXRp
b25DYWNoZUdyb3VwKiBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6ZmluZE9yQ3JlYXRlQ2FjaGVH
cm91cChjb25zdCBVUkwmIG1hbmlmZXN0VVJMKQogewogICAgIEFTU0VSVCghbWFuaWZlc3RVUkwu
aGFzRnJhZ21lbnRJZGVudGlmaWVyKCkpOwogCi0gICAgQ2FjaGVHcm91cE1hcDo6QWRkUmVzdWx0
IHJlc3VsdCA9IG1fY2FjaGVzSW5NZW1vcnkuYWRkKG1hbmlmZXN0VVJMLCBudWxscHRyKTsKLSAg
ICAKKyAgICBhdXRvIHJlc3VsdCA9IG1fY2FjaGVzSW5NZW1vcnkuYWRkKG1hbmlmZXN0VVJMLCBu
dWxscHRyKTsKICAgICBpZiAoIXJlc3VsdC5pc05ld0VudHJ5KSB7CiAgICAgICAgIEFTU0VSVChy
ZXN1bHQuaXRlcmF0b3ItPnZhbHVlKTsKICAgICAgICAgcmV0dXJuIHJlc3VsdC5pdGVyYXRvci0+
dmFsdWU7CiAgICAgfQogCiAgICAgLy8gTG9vayB1cCB0aGUgZ3JvdXAgaW4gdGhlIGRhdGFiYXNl
Ci0gICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCA9IGxvYWRDYWNoZUdyb3VwKG1hbmlm
ZXN0VVJMKTsKKyAgICBhdXRvKiBncm91cCA9IGxvYWRDYWNoZUdyb3VwKG1hbmlmZXN0VVJMKTsK
ICAgICAKICAgICAvLyBJZiB0aGUgZ3JvdXAgd2FzIG5vdCBmb3VuZCB3ZSBuZWVkIHRvIGNyZWF0
ZSBpdAogICAgIGlmICghZ3JvdXApIHsKICAgICAgICAgZ3JvdXAgPSBuZXcgQXBwbGljYXRpb25D
YWNoZUdyb3VwKCp0aGlzLCBtYW5pZmVzdFVSTCk7CiAgICAgICAgIG1fY2FjaGVIb3N0U2V0LmFk
ZCh1cmxIb3N0SGFzaChtYW5pZmVzdFVSTCkpOwogICAgIH0KLSAgICAKKwogICAgIHJlc3VsdC5p
dGVyYXRvci0+dmFsdWUgPSBncm91cDsKLSAgICAKICAgICByZXR1cm4gZ3JvdXA7CiB9CiAKQEAg
LTI0NCwyMCArMjQwLDE4IEBAIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogQXBwbGljYXRpb25DYWNo
ZVN0b3JhZ2U6OmNhY2hlR3JvdXBGb3JVUkwoY29uc3QgVVJMJiB1cmwpCiAgICAgICAgIGlmICgh
Y2FjaGUpCiAgICAgICAgICAgICBjb250aW51ZTsKIAotICAgICAgICBBcHBsaWNhdGlvbkNhY2hl
UmVzb3VyY2UqIHJlc291cmNlID0gY2FjaGUtPnJlc291cmNlRm9yVVJMKHVybCk7CisgICAgICAg
IGF1dG8qIHJlc291cmNlID0gY2FjaGUtPnJlc291cmNlRm9yVVJMKHVybCk7CiAgICAgICAgIGlm
ICghcmVzb3VyY2UpCiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgaWYgKHJlc291cmNl
LT50eXBlKCkgJiBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6OkZvcmVpZ24pCiAgICAgICAgICAg
ICBjb250aW51ZTsKIAotICAgICAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwID0gbmV3
IEFwcGxpY2F0aW9uQ2FjaGVHcm91cCgqdGhpcywgbWFuaWZlc3RVUkwpOwotICAgICAgICAKLSAg
ICAgICAgZ3JvdXAtPnNldFN0b3JhZ2VJRChzdGF0aWNfY2FzdDx1bnNpZ25lZD4oc3RhdGVtZW50
LmdldENvbHVtbkludDY0KDApKSk7Ci0gICAgICAgIGdyb3VwLT5zZXROZXdlc3RDYWNoZShXVEZN
b3ZlKGNhY2hlKSk7Ci0gICAgICAgIAotICAgICAgICBtX2NhY2hlc0luTWVtb3J5LnNldChncm91
cC0+bWFuaWZlc3RVUkwoKSwgZ3JvdXApOwotICAgICAgICAKLSAgICAgICAgcmV0dXJuIGdyb3Vw
OworICAgICAgICBhdXRvJiBncm91cCA9ICpuZXcgQXBwbGljYXRpb25DYWNoZUdyb3VwKCp0aGlz
LCBtYW5pZmVzdFVSTCk7CisgICAgICAgIGdyb3VwLnNldFN0b3JhZ2VJRChzdGF0aWNfY2FzdDx1
bnNpZ25lZD4oc3RhdGVtZW50LmdldENvbHVtbkludDY0KDApKSk7CisgICAgICAgIGdyb3VwLnNl
dE5ld2VzdENhY2hlKGNhY2hlLnJlbGVhc2VOb25OdWxsKCkpOworICAgICAgICBtX2NhY2hlc0lu
TWVtb3J5LnNldChncm91cC5tYW5pZmVzdFVSTCgpLCAmZ3JvdXApOworCisgICAgICAgIHJldHVy
biAmZ3JvdXA7CiAgICAgfQogCiAgICAgaWYgKHJlc3VsdCAhPSBTUUxJVEVfRE9ORSkKQEAgLTMy
MCwxNCArMzE0LDEzIEBAIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogQXBwbGljYXRpb25DYWNoZVN0
b3JhZ2U6OmZhbGxiYWNrQ2FjaGVHcm91cEZvclVSTChjb25zdCBVCiAgICAgICAgIGlmIChjYWNo
ZS0+cmVzb3VyY2VGb3JVUkwoZmFsbGJhY2tVUkwpLT50eXBlKCkgJiBBcHBsaWNhdGlvbkNhY2hl
UmVzb3VyY2U6OkZvcmVpZ24pCiAgICAgICAgICAgICBjb250aW51ZTsKIAotICAgICAgICBBcHBs
aWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwID0gbmV3IEFwcGxpY2F0aW9uQ2FjaGVHcm91cCgqdGhp
cywgbWFuaWZlc3RVUkwpOwotICAgICAgICAKLSAgICAgICAgZ3JvdXAtPnNldFN0b3JhZ2VJRChz
dGF0aWNfY2FzdDx1bnNpZ25lZD4oc3RhdGVtZW50LmdldENvbHVtbkludDY0KDApKSk7Ci0gICAg
ICAgIGdyb3VwLT5zZXROZXdlc3RDYWNoZShXVEZNb3ZlKGNhY2hlKSk7Ci0gICAgICAgIAotICAg
ICAgICBtX2NhY2hlc0luTWVtb3J5LnNldChncm91cC0+bWFuaWZlc3RVUkwoKSwgZ3JvdXApOwot
ICAgICAgICAKLSAgICAgICAgcmV0dXJuIGdyb3VwOworICAgICAgICBhdXRvJiBncm91cCA9ICpu
ZXcgQXBwbGljYXRpb25DYWNoZUdyb3VwKCp0aGlzLCBtYW5pZmVzdFVSTCk7CisgICAgICAgIGdy
b3VwLnNldFN0b3JhZ2VJRChzdGF0aWNfY2FzdDx1bnNpZ25lZD4oc3RhdGVtZW50LmdldENvbHVt
bkludDY0KDApKSk7CisgICAgICAgIGdyb3VwLnNldE5ld2VzdENhY2hlKGNhY2hlLnJlbGVhc2VO
b25OdWxsKCkpOworCisgICAgICAgIG1fY2FjaGVzSW5NZW1vcnkuc2V0KGdyb3VwLm1hbmlmZXN0
VVJMKCksICZncm91cCk7CisKKyAgICAgICAgcmV0dXJuICZncm91cDsKICAgICB9CiAKICAgICBp
ZiAocmVzdWx0ICE9IFNRTElURV9ET05FKQpAQCAtMzM2LDMzICszMjksMzMgQEAgQXBwbGljYXRp
b25DYWNoZUdyb3VwKiBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6ZmFsbGJhY2tDYWNoZUdyb3Vw
Rm9yVVJMKGNvbnN0IFUKICAgICByZXR1cm4gbnVsbHB0cjsKIH0KIAotdm9pZCBBcHBsaWNhdGlv
bkNhY2hlU3RvcmFnZTo6Y2FjaGVHcm91cERlc3Ryb3llZChBcHBsaWNhdGlvbkNhY2hlR3JvdXAq
IGdyb3VwKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6Y2FjaGVHcm91cERlc3Ryb3ll
ZChBcHBsaWNhdGlvbkNhY2hlR3JvdXAmIGdyb3VwKQogewotICAgIGlmIChncm91cC0+aXNPYnNv
bGV0ZSgpKSB7Ci0gICAgICAgIEFTU0VSVCghZ3JvdXAtPnN0b3JhZ2VJRCgpKTsKLSAgICAgICAg
QVNTRVJUKG1fY2FjaGVzSW5NZW1vcnkuZ2V0KGdyb3VwLT5tYW5pZmVzdFVSTCgpKSAhPSBncm91
cCk7CisgICAgaWYgKGdyb3VwLmlzT2Jzb2xldGUoKSkgeworICAgICAgICBBU1NFUlQoIWdyb3Vw
LnN0b3JhZ2VJRCgpKTsKKyAgICAgICAgQVNTRVJUKG1fY2FjaGVzSW5NZW1vcnkuZ2V0KGdyb3Vw
Lm1hbmlmZXN0VVJMKCkpICE9ICZncm91cCk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAg
ICBBU1NFUlQobV9jYWNoZXNJbk1lbW9yeS5nZXQoZ3JvdXAtPm1hbmlmZXN0VVJMKCkpID09IGdy
b3VwKTsKKyAgICBBU1NFUlQobV9jYWNoZXNJbk1lbW9yeS5nZXQoZ3JvdXAubWFuaWZlc3RVUkwo
KSkgPT0gJmdyb3VwKTsKIAotICAgIG1fY2FjaGVzSW5NZW1vcnkucmVtb3ZlKGdyb3VwLT5tYW5p
ZmVzdFVSTCgpKTsKKyAgICBtX2NhY2hlc0luTWVtb3J5LnJlbW92ZShncm91cC5tYW5pZmVzdFVS
TCgpKTsKICAgICAKICAgICAvLyBJZiB0aGUgY2FjaGUgZ3JvdXAgaXMgaGFsZi1jcmVhdGVkLCB3
ZSBkb24ndCB3YW50IGl0IGluIHRoZSBzYXZlZCBzZXQgKGFzIGl0IGlzIG5vdCBzdG9yZWQgaW4g
ZGF0YWJhc2UpLgotICAgIGlmICghZ3JvdXAtPnN0b3JhZ2VJRCgpKQotICAgICAgICBtX2NhY2hl
SG9zdFNldC5yZW1vdmUodXJsSG9zdEhhc2goZ3JvdXAtPm1hbmlmZXN0VVJMKCkpKTsKKyAgICBp
ZiAoIWdyb3VwLnN0b3JhZ2VJRCgpKQorICAgICAgICBtX2NhY2hlSG9zdFNldC5yZW1vdmUodXJs
SG9zdEhhc2goZ3JvdXAubWFuaWZlc3RVUkwoKSkpOwogfQogCi12b2lkIEFwcGxpY2F0aW9uQ2Fj
aGVTdG9yYWdlOjpjYWNoZUdyb3VwTWFkZU9ic29sZXRlKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCog
Z3JvdXApCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpjYWNoZUdyb3VwTWFkZU9ic29s
ZXRlKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCYgZ3JvdXApCiB7Ci0gICAgQVNTRVJUKG1fY2FjaGVz
SW5NZW1vcnkuZ2V0KGdyb3VwLT5tYW5pZmVzdFVSTCgpKSA9PSBncm91cCk7Ci0gICAgQVNTRVJU
KG1fY2FjaGVIb3N0U2V0LmNvbnRhaW5zKHVybEhvc3RIYXNoKGdyb3VwLT5tYW5pZmVzdFVSTCgp
KSkpOworICAgIEFTU0VSVChtX2NhY2hlc0luTWVtb3J5LmdldChncm91cC5tYW5pZmVzdFVSTCgp
KSA9PSAmZ3JvdXApOworICAgIEFTU0VSVChtX2NhY2hlSG9zdFNldC5jb250YWlucyh1cmxIb3N0
SGFzaChncm91cC5tYW5pZmVzdFVSTCgpKSkpOwogCi0gICAgaWYgKEFwcGxpY2F0aW9uQ2FjaGUq
IG5ld2VzdENhY2hlID0gZ3JvdXAtPm5ld2VzdENhY2hlKCkpCisgICAgaWYgKGF1dG8qIG5ld2Vz
dENhY2hlID0gZ3JvdXAubmV3ZXN0Q2FjaGUoKSkKICAgICAgICAgcmVtb3ZlKG5ld2VzdENhY2hl
KTsKIAotICAgIG1fY2FjaGVzSW5NZW1vcnkucmVtb3ZlKGdyb3VwLT5tYW5pZmVzdFVSTCgpKTsK
LSAgICBtX2NhY2hlSG9zdFNldC5yZW1vdmUodXJsSG9zdEhhc2goZ3JvdXAtPm1hbmlmZXN0VVJM
KCkpKTsKKyAgICBtX2NhY2hlc0luTWVtb3J5LnJlbW92ZShncm91cC5tYW5pZmVzdFVSTCgpKTsK
KyAgICBtX2NhY2hlSG9zdFNldC5yZW1vdmUodXJsSG9zdEhhc2goZ3JvdXAubWFuaWZlc3RVUkwo
KSkpOwogfQogCiBjb25zdCBTdHJpbmcmIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpjYWNoZURp
cmVjdG9yeSgpIGNvbnN0CkBAIC05OTYsNyArOTg5LDcgQEAgYm9vbCBBcHBsaWNhdGlvbkNhY2hl
U3RvcmFnZTo6Y2hlY2tPcmlnaW5RdW90YShBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwLCBB
cHAKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotYm9vbCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6
c3RvcmVOZXdlc3RDYWNoZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwLCBBcHBsaWNhdGlv
bkNhY2hlKiBvbGRDYWNoZSwgRmFpbHVyZVJlYXNvbiYgZmFpbHVyZVJlYXNvbikKK2Jvb2wgQXBw
bGljYXRpb25DYWNoZVN0b3JhZ2U6OnN0b3JlTmV3ZXN0Q2FjaGUoQXBwbGljYXRpb25DYWNoZUdy
b3VwJiBncm91cCwgQXBwbGljYXRpb25DYWNoZSogb2xkQ2FjaGUsIEZhaWx1cmVSZWFzb24mIGZh
aWx1cmVSZWFzb24pCiB7CiAgICAgb3BlbkRhdGFiYXNlKHRydWUpOwogCkBAIC0xMDEyLDI0ICsx
MDA1LDI0IEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OnN0b3JlTmV3ZXN0Q2FjaGUo
QXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCwgQXBwCiAKICAgICAvLyBDaGVjayBpZiB0aGlz
IHdvdWxkIHJlYWNoIHRoZSBwZXItb3JpZ2luIHF1b3RhLgogICAgIGludDY0X3QgdG90YWxTcGFj
ZU5lZWRlZElnbm9yZWQ7Ci0gICAgaWYgKCFjaGVja09yaWdpblF1b3RhKGdyb3VwLCBvbGRDYWNo
ZSwgZ3JvdXAtPm5ld2VzdENhY2hlKCksIHRvdGFsU3BhY2VOZWVkZWRJZ25vcmVkKSkgeworICAg
IGlmICghY2hlY2tPcmlnaW5RdW90YSgmZ3JvdXAsIG9sZENhY2hlLCBncm91cC5uZXdlc3RDYWNo
ZSgpLCB0b3RhbFNwYWNlTmVlZGVkSWdub3JlZCkpIHsKICAgICAgICAgZmFpbHVyZVJlYXNvbiA9
IE9yaWdpblF1b3RhUmVhY2hlZDsKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KIAogICAg
IEdyb3VwU3RvcmFnZUlESm91cm5hbCBncm91cFN0b3JhZ2VJREpvdXJuYWw7Ci0gICAgaWYgKCFn
cm91cC0+c3RvcmFnZUlEKCkpIHsKKyAgICBpZiAoIWdyb3VwLnN0b3JhZ2VJRCgpKSB7CiAgICAg
ICAgIC8vIFN0b3JlIHRoZSBncm91cAotICAgICAgICBpZiAoIXN0b3JlKGdyb3VwLCAmZ3JvdXBT
dG9yYWdlSURKb3VybmFsKSkgeworICAgICAgICBpZiAoIXN0b3JlKCZncm91cCwgJmdyb3VwU3Rv
cmFnZUlESm91cm5hbCkpIHsKICAgICAgICAgICAgIGNoZWNrRm9yTWF4U2l6ZVJlYWNoZWQoKTsK
ICAgICAgICAgICAgIGZhaWx1cmVSZWFzb24gPSBpc01heGltdW1TaXplUmVhY2hlZCgpID8gVG90
YWxRdW90YVJlYWNoZWQgOiBEaXNrT3JPcGVyYXRpb25GYWlsdXJlOwogICAgICAgICAgICAgcmV0
dXJuIGZhbHNlOwogICAgICAgICB9CiAgICAgfQogICAgIAotICAgIEFTU0VSVChncm91cC0+bmV3
ZXN0Q2FjaGUoKSk7Ci0gICAgQVNTRVJUKCFncm91cC0+aXNPYnNvbGV0ZSgpKTsKLSAgICBBU1NF
UlQoIWdyb3VwLT5uZXdlc3RDYWNoZSgpLT5zdG9yYWdlSUQoKSk7CisgICAgQVNTRVJUKGdyb3Vw
Lm5ld2VzdENhY2hlKCkpOworICAgIEFTU0VSVCghZ3JvdXAuaXNPYnNvbGV0ZSgpKTsKKyAgICBB
U1NFUlQoIWdyb3VwLm5ld2VzdENhY2hlKCktPnN0b3JhZ2VJRCgpKTsKICAgICAKICAgICAvLyBM
b2cgdGhlIHN0b3JhZ2VJRCBjaGFuZ2VzIHRvIHRoZSBpbi1tZW1vcnkgcmVzb3VyY2Ugb2JqZWN0
cy4gVGhlIGpvdXJuYWwKICAgICAvLyBvYmplY3Qgd2lsbCByb2xsIHRoZW0gYmFjayBhdXRvbWF0
aWNhbGx5IGluIGNhc2UgYSBkYXRhYmFzZSBvcGVyYXRpb24KQEAgLTEwMzcsNyArMTAzMCw3IEBA
IGJvb2wgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OnN0b3JlTmV3ZXN0Q2FjaGUoQXBwbGljYXRp
b25DYWNoZUdyb3VwKiBncm91cCwgQXBwCiAgICAgUmVzb3VyY2VTdG9yYWdlSURKb3VybmFsIHJl
c291cmNlU3RvcmFnZUlESm91cm5hbDsKIAogICAgIC8vIFN0b3JlIHRoZSBuZXdlc3QgY2FjaGUK
LSAgICBpZiAoIXN0b3JlKGdyb3VwLT5uZXdlc3RDYWNoZSgpLCAmcmVzb3VyY2VTdG9yYWdlSURK
b3VybmFsKSkgeworICAgIGlmICghc3RvcmUoZ3JvdXAubmV3ZXN0Q2FjaGUoKSwgJnJlc291cmNl
U3RvcmFnZUlESm91cm5hbCkpIHsKICAgICAgICAgY2hlY2tGb3JNYXhTaXplUmVhY2hlZCgpOwog
ICAgICAgICBmYWlsdXJlUmVhc29uID0gaXNNYXhpbXVtU2l6ZVJlYWNoZWQoKSA/IFRvdGFsUXVv
dGFSZWFjaGVkIDogRGlza09yT3BlcmF0aW9uRmFpbHVyZTsKICAgICAgICAgcmV0dXJuIGZhbHNl
OwpAQCAtMTA1MSw4ICsxMDQ0LDggQEAgYm9vbCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6c3Rv
cmVOZXdlc3RDYWNoZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwLCBBcHAKICAgICAgICAg
cmV0dXJuIGZhbHNlOwogICAgIH0KICAgICAKLSAgICBzdGF0ZW1lbnQuYmluZEludDY0KDEsIGdy
b3VwLT5uZXdlc3RDYWNoZSgpLT5zdG9yYWdlSUQoKSk7Ci0gICAgc3RhdGVtZW50LmJpbmRJbnQ2
NCgyLCBncm91cC0+c3RvcmFnZUlEKCkpOworICAgIHN0YXRlbWVudC5iaW5kSW50NjQoMSwgZ3Jv
dXAubmV3ZXN0Q2FjaGUoKS0+c3RvcmFnZUlEKCkpOworICAgIHN0YXRlbWVudC5iaW5kSW50NjQo
MiwgZ3JvdXAuc3RvcmFnZUlEKCkpOwogICAgIAogICAgIGlmICghZXhlY3V0ZVN0YXRlbWVudChz
dGF0ZW1lbnQpKSB7CiAgICAgICAgIGZhaWx1cmVSZWFzb24gPSBEaXNrT3JPcGVyYXRpb25GYWls
dXJlOwpAQCAtMTA2NSwyMiArMTA1OCwyNCBAQCBib29sIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdl
OjpzdG9yZU5ld2VzdENhY2hlKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAsIEFwcAogICAg
IHJldHVybiB0cnVlOwogfQogCi1ib29sIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpzdG9yZU5l
d2VzdENhY2hlKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXApCitib29sIEFwcGxpY2F0aW9u
Q2FjaGVTdG9yYWdlOjpzdG9yZU5ld2VzdENhY2hlKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCYgZ3Jv
dXApCiB7CiAgICAgLy8gSWdub3JlIHRoZSByZWFzb24gZm9yIGZhaWxpbmcsIGp1c3QgYXR0ZW1w
dCB0aGUgc3RvcmUuCiAgICAgRmFpbHVyZVJlYXNvbiBpZ25vcmVkRmFpbHVyZVJlYXNvbjsKLSAg
ICByZXR1cm4gc3RvcmVOZXdlc3RDYWNoZShncm91cCwgMCwgaWdub3JlZEZhaWx1cmVSZWFzb24p
OworICAgIHJldHVybiBzdG9yZU5ld2VzdENhY2hlKGdyb3VwLCBudWxscHRyLCBpZ25vcmVkRmFp
bHVyZVJlYXNvbik7CiB9CiAKLXRlbXBsYXRlIDx0eXBlbmFtZSBDaGFyYWN0ZXJUeXBlPgotc3Rh
dGljIGlubGluZSB2b2lkIHBhcnNlSGVhZGVyKGNvbnN0IENoYXJhY3RlclR5cGUqIGhlYWRlciwg
c2l6ZV90IGhlYWRlckxlbmd0aCwgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCit0ZW1wbGF0
ZTx0eXBlbmFtZSBDaGFyYWN0ZXJUeXBlPgorc3RhdGljIGlubGluZSB2b2lkIHBhcnNlSGVhZGVy
KGNvbnN0IENoYXJhY3RlclR5cGUqIGhlYWRlciwgdW5zaWduZWQgaGVhZGVyTGVuZ3RoLCBSZXNv
dXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKLSAgICBzaXplX3QgcG9zID0gZmluZChoZWFkZXIs
IGhlYWRlckxlbmd0aCwgJzonKTsKLSAgICBBU1NFUlQocG9zICE9IG5vdEZvdW5kKTsKLSAgICAK
LSAgICBTdHJpbmcgaGVhZGVyTmFtZSA9IEF0b21pY1N0cmluZyhoZWFkZXIsIHBvcyk7Ci0gICAg
U3RyaW5nIGhlYWRlclZhbHVlID0gU3RyaW5nKGhlYWRlciArIHBvcyArIDEsIGhlYWRlckxlbmd0
aCAtIHBvcyAtIDEpOwotICAgIAorICAgIEFTU0VSVChmaW5kKGhlYWRlciwgaGVhZGVyTGVuZ3Ro
LCAnOicpICE9IG5vdEZvdW5kKTsKKyAgICB1bnNpZ25lZCBjb2xvblBvc2l0aW9uID0gZmluZCho
ZWFkZXIsIGhlYWRlckxlbmd0aCwgJzonKTsKKworICAgIC8vIFNhdmUgbWVtb3J5IGJ5IHB1dHRp
bmcgdGhlIGhlYWRlciBuYW1lcyBpbnRvIGF0b21pYyBzdHJpbmdzIHNvIGVhY2ggaXMgc3RvcmVk
IG9ubHkgb25jZSwKKyAgICAvLyBldmVuIHRob3VnaCB0aGUgc2V0SFRUUEhlYWRlckZpZWxkIGZ1
bmN0aW9uIGRvZXMgbm90IHJlcXVpcmUgYW4gYXRvbWljIHN0cmluZy4KKyAgICBBdG9taWNTdHJp
bmcgaGVhZGVyTmFtZSB7IGhlYWRlciwgY29sb25Qb3NpdGlvbiB9OworICAgIFN0cmluZyBoZWFk
ZXJWYWx1ZSB7IGhlYWRlciArIGNvbG9uUG9zaXRpb24gKyAxLCBoZWFkZXJMZW5ndGggLSBjb2xv
blBvc2l0aW9uIC0gMSB9OworCiAgICAgcmVzcG9uc2Uuc2V0SFRUUEhlYWRlckZpZWxkKGhlYWRl
ck5hbWUsIGhlYWRlclZhbHVlKTsKIH0KIApAQCAtMTEwNyw3ICsxMTAyLDcgQEAgc3RhdGljIGlu
bGluZSB2b2lkIHBhcnNlSGVhZGVycyhjb25zdCBTdHJpbmcmIGhlYWRlcnMsIFJlc291cmNlUmVz
cG9uc2UmIHJlc3BvbnMKICAgICB9CiB9CiAgICAgCi1QYXNzUmVmUHRyPEFwcGxpY2F0aW9uQ2Fj
aGU+IEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpsb2FkQ2FjaGUodW5zaWduZWQgc3RvcmFnZUlE
KQorUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+IEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpsb2Fk
Q2FjaGUodW5zaWduZWQgc3RvcmFnZUlEKQogewogICAgIEFTU0VSVChTUUxpdGVEYXRhYmFzZVRy
YWNrZXI6Omhhc1RyYW5zYWN0aW9uSW5Qcm9ncmVzcygpKTsKICAgICBTUUxpdGVTdGF0ZW1lbnQg
Y2FjaGVTdGF0ZW1lbnQobV9kYXRhYmFzZSwKQEAgLTE0MDgsMTAgKzE0MDMsMTEgQEAgYm9vbCBB
cHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6ZGVsZXRlQ2FjaGVHcm91cChjb25zdCBTdHJpbmcmIG1h
bmlmZXN0VVJMKQogICAgIFNRTGl0ZVRyYW5zYWN0aW9uSW5Qcm9ncmVzc0F1dG9Db3VudGVyIHRy
YW5zYWN0aW9uQ291bnRlcjsKIAogICAgIFNRTGl0ZVRyYW5zYWN0aW9uIGRlbGV0ZVRyYW5zYWN0
aW9uKG1fZGF0YWJhc2UpOworCiAgICAgLy8gQ2hlY2sgdG8gc2VlIGlmIHRoZSBncm91cCBpcyBp
biBtZW1vcnkuCi0gICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCA9IG1fY2FjaGVzSW5N
ZW1vcnkuZ2V0KG1hbmlmZXN0VVJMKTsKKyAgICBhdXRvKiBncm91cCA9IG1fY2FjaGVzSW5NZW1v
cnkuZ2V0KG1hbmlmZXN0VVJMKTsKICAgICBpZiAoZ3JvdXApCi0gICAgICAgIGNhY2hlR3JvdXBN
YWRlT2Jzb2xldGUoZ3JvdXApOworICAgICAgICBjYWNoZUdyb3VwTWFkZU9ic29sZXRlKCpncm91
cCk7CiAgICAgZWxzZSB7CiAgICAgICAgIC8vIFRoZSBjYWNoZSBncm91cCBpcyBub3QgaW4gbWVt
b3J5LCBzbyByZW1vdmUgaXQgZnJvbSB0aGUgZGlzay4KICAgICAgICAgb3BlbkRhdGFiYXNlKGZh
bHNlKTsKQEAgLTE0MjQsOSArMTQyMCw5IEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6
OmRlbGV0ZUNhY2hlR3JvdXAoY29uc3QgU3RyaW5nJiBtYW5pZmVzdFVSTCkKICAgICB9CiAKICAg
ICBkZWxldGVUcmFuc2FjdGlvbi5jb21taXQoKTsKLSAgICAKKwogICAgIGNoZWNrRm9yRGVsZXRl
ZFJlc291cmNlcygpOwotICAgIAorCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5o
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVTdG9yYWdl
LmgKaW5kZXggZTQ4ZTg2NjczNTM2MmQ5NDc3YThhMjUxMDAzY2M4NjE1MDUyN2QxNi4uOWZhMjky
ZWU1MGZhZWU4OWMzNWM4NjFhOGY5OWZhMTZmOTA1NDc2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlLmgKQEAg
LTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA4LCAyMDEwLCAyMDExIEFwcGxl
IEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOC0yMDE3IEFw
cGxlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucwpAQCAtNDEsNyArNDEsNyBAQCBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U7CiBj
bGFzcyBVUkw7CiBjbGFzcyBTZWN1cml0eU9yaWdpbjsKIGNsYXNzIFNoYXJlZEJ1ZmZlcjsKLXRl
bXBsYXRlIDxjbGFzcyBUPiBjbGFzcyBTdG9yYWdlSURKb3VybmFsOwordGVtcGxhdGU8dHlwZW5h
bWU+IGNsYXNzIFN0b3JhZ2VJREpvdXJuYWw7CiAKIGNsYXNzIEFwcGxpY2F0aW9uQ2FjaGVTdG9y
YWdlIDogcHVibGljIFJlZkNvdW50ZWQ8QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U+IHsKIHB1Ymxp
YzoKQEAgLTczLDE5ICs3MywxOSBAQCBwdWJsaWM6CiAKICAgICBBcHBsaWNhdGlvbkNhY2hlR3Jv
dXAqIGZpbmRPckNyZWF0ZUNhY2hlR3JvdXAoY29uc3QgVVJMJiBtYW5pZmVzdFVSTCk7CiAgICAg
QXBwbGljYXRpb25DYWNoZUdyb3VwKiBmaW5kSW5NZW1vcnlDYWNoZUdyb3VwKGNvbnN0IFVSTCYg
bWFuaWZlc3RVUkwpIGNvbnN0OwotICAgIHZvaWQgY2FjaGVHcm91cERlc3Ryb3llZChBcHBsaWNh
dGlvbkNhY2hlR3JvdXAqKTsKLSAgICB2b2lkIGNhY2hlR3JvdXBNYWRlT2Jzb2xldGUoQXBwbGlj
YXRpb25DYWNoZUdyb3VwKik7Ci0gICAgICAgIAotICAgIGJvb2wgc3RvcmVOZXdlc3RDYWNoZShB
cHBsaWNhdGlvbkNhY2hlR3JvdXAqLCBBcHBsaWNhdGlvbkNhY2hlKiBvbGRDYWNoZSwgRmFpbHVy
ZVJlYXNvbiYgZmFpbHVyZVJlYXNvbik7Ci0gICAgYm9vbCBzdG9yZU5ld2VzdENhY2hlKEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cCopOyAvLyBVcGRhdGVzIHRoZSBjYWNoZSBncm91cCwgYnV0IGRvZXNu
J3QgcmVtb3ZlIG9sZCBjYWNoZS4KKyAgICB2b2lkIGNhY2hlR3JvdXBEZXN0cm95ZWQoQXBwbGlj
YXRpb25DYWNoZUdyb3VwJik7CisgICAgdm9pZCBjYWNoZUdyb3VwTWFkZU9ic29sZXRlKEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cCYpOworCisgICAgYm9vbCBzdG9yZU5ld2VzdENhY2hlKEFwcGxpY2F0
aW9uQ2FjaGVHcm91cCYsIEFwcGxpY2F0aW9uQ2FjaGUqIG9sZENhY2hlLCBGYWlsdXJlUmVhc29u
Jik7CisgICAgYm9vbCBzdG9yZU5ld2VzdENhY2hlKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCYpOyAv
LyBVcGRhdGVzIHRoZSBjYWNoZSBncm91cCwgYnV0IGRvZXNuJ3QgcmVtb3ZlIG9sZCBjYWNoZS4K
ICAgICBib29sIHN0b3JlKEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSosIEFwcGxpY2F0aW9uQ2Fj
aGUqKTsKICAgICBib29sIHN0b3JlVXBkYXRlZFR5cGUoQXBwbGljYXRpb25DYWNoZVJlc291cmNl
KiwgQXBwbGljYXRpb25DYWNoZSopOwogCiAgICAgLy8gUmVtb3ZlcyB0aGUgZ3JvdXAgaWYgdGhl
IGNhY2hlIHRvIGJlIHJlbW92ZWQgaXMgdGhlIG5ld2VzdCBvbmUgKHNvLCBzdG9yZU5ld2VzdENh
Y2hlKCkgbmVlZHMgdG8gYmUgY2FsbGVkIGJlZm9yZWhhbmQgd2hlbiB1cGRhdGluZykuCiAgICAg
dm9pZCByZW1vdmUoQXBwbGljYXRpb25DYWNoZSopOwotICAgIAorCiAgICAgV0VCQ09SRV9FWFBP
UlQgdm9pZCBlbXB0eSgpOwotICAgIAorCiAgICAgYm9vbCBnZXRNYW5pZmVzdFVSTHMoVmVjdG9y
PFVSTD4qIHVybHMpOwogICAgIGJvb2wgY2FjaGVHcm91cFNpemUoY29uc3QgU3RyaW5nJiBtYW5p
ZmVzdFVSTCwgaW50NjRfdCogc2l6ZSk7CiAgICAgYm9vbCBkZWxldGVDYWNoZUdyb3VwKGNvbnN0
IFN0cmluZyYgbWFuaWZlc3RVUkwpOwpAQCAtMTA1LDE0ICsxMDUsMTUgQEAgcHVibGljOgogCiAg
ICAgc3RhdGljIGludDY0X3QgdW5rbm93blF1b3RhKCkgeyByZXR1cm4gLTE7IH0KICAgICBzdGF0
aWMgaW50NjRfdCBub1F1b3RhKCkgeyByZXR1cm4gc3RkOjpudW1lcmljX2xpbWl0czxpbnQ2NF90
Pjo6bWF4KCk7IH0KKwogcHJpdmF0ZToKICAgICBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZShjb25z
dCBTdHJpbmcmIGNhY2hlRGlyZWN0b3J5LCBjb25zdCBTdHJpbmcmIGZsYXRGaWxlU3ViZGlyZWN0
b3J5TmFtZSk7CiAKLSAgICBQYXNzUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+IGxvYWRDYWNoZSh1
bnNpZ25lZCBzdG9yYWdlSUQpOworICAgIFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hlPiBsb2FkQ2Fj
aGUodW5zaWduZWQgc3RvcmFnZUlEKTsKICAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGxvYWRD
YWNoZUdyb3VwKGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwpOwogICAgIAotICAgIHR5cGVkZWYgU3Rv
cmFnZUlESm91cm5hbDxBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+IFJlc291cmNlU3RvcmFnZUlE
Sm91cm5hbDsKLSAgICB0eXBlZGVmIFN0b3JhZ2VJREpvdXJuYWw8QXBwbGljYXRpb25DYWNoZUdy
b3VwPiBHcm91cFN0b3JhZ2VJREpvdXJuYWw7CisgICAgdXNpbmcgUmVzb3VyY2VTdG9yYWdlSURK
b3VybmFsID0gU3RvcmFnZUlESm91cm5hbDxBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+OworICAg
IHVzaW5nIEdyb3VwU3RvcmFnZUlESm91cm5hbCA9IFN0b3JhZ2VJREpvdXJuYWw8QXBwbGljYXRp
b25DYWNoZUdyb3VwPjsKIAogICAgIGJvb2wgc3RvcmUoQXBwbGljYXRpb25DYWNoZUdyb3VwKiwg
R3JvdXBTdG9yYWdlSURKb3VybmFsKik7CiAgICAgYm9vbCBzdG9yZShBcHBsaWNhdGlvbkNhY2hl
KiwgUmVzb3VyY2VTdG9yYWdlSURKb3VybmFsKik7CkBAIC0xNTIsOCArMTUzLDcgQEAgcHJpdmF0
ZToKICAgICAvLyB3ZSBrZWVwIGEgaGFzaCBzZXQgb2YgdGhlIGhvc3RzIG9mIHRoZSBtYW5pZmVz
dCBVUkxzIG9mIGFsbCBub24tb2Jzb2xldGUgY2FjaGUgZ3JvdXBzLgogICAgIEhhc2hDb3VudGVk
U2V0PHVuc2lnbmVkLCBBbHJlYWR5SGFzaGVkPiBtX2NhY2hlSG9zdFNldDsKICAgICAKLSAgICB0
eXBlZGVmIEhhc2hNYXA8U3RyaW5nLCBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqPiBDYWNoZUdyb3Vw
TWFwOwotICAgIENhY2hlR3JvdXBNYXAgbV9jYWNoZXNJbk1lbW9yeTsgLy8gRXhjbHVkZXMgb2Jz
b2xldGUgY2FjaGUgZ3JvdXBzLgorICAgIEhhc2hNYXA8U3RyaW5nLCBBcHBsaWNhdGlvbkNhY2hl
R3JvdXAqPiBtX2NhY2hlc0luTWVtb3J5OyAvLyBFeGNsdWRlcyBvYnNvbGV0ZSBjYWNoZSBncm91
cHMuCiAKICAgICBmcmllbmQgY2xhc3MgV1RGOjpOZXZlckRlc3Ryb3llZDxBcHBsaWNhdGlvbkNh
Y2hlU3RvcmFnZT47CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNh
Y2hlL0RPTUFwcGxpY2F0aW9uQ2FjaGUuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNh
Y2hlL0RPTUFwcGxpY2F0aW9uQ2FjaGUuY3BwCmluZGV4IDRkMGVlZjIyNGMwYWJkMTg5MTViMzYz
ZTE1MWUwMDA0NWQwOTg5MWMuLmVkOGZhZDhmNjk2MTBhNzNlZjVkZjFhNzdlMzdjZWYyZWE0NDVm
MDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9ET01BcHBsaWNh
dGlvbkNhY2hlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvRE9NQXBw
bGljYXRpb25DYWNoZS5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAy
MDA4LCAyMDA5IEFwcGxlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyAqIENvcHlyaWdodCAo
QykgMjAwOC0yMDE3IEFwcGxlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAqCiAgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMjksMTExICsyOSw4NCBAQAogI2luY2x1ZGUgIkFwcGxp
Y2F0aW9uQ2FjaGVIb3N0LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJEb2N1
bWVudExvYWRlci5oIgotI2luY2x1ZGUgIkV2ZW50LmgiCi0jaW5jbHVkZSAiRXZlbnRMaXN0ZW5l
ci5oIgotI2luY2x1ZGUgIkV2ZW50TmFtZXMuaCIKICNpbmNsdWRlICJFeGNlcHRpb25Db2RlLmgi
CiAjaW5jbHVkZSAiRnJhbWUuaCIKLSNpbmNsdWRlICJGcmFtZUxvYWRlci5oIgogCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKLURPTUFwcGxpY2F0aW9uQ2FjaGU6OkRPTUFwcGxpY2F0aW9uQ2FjaGUo
RnJhbWUqIGZyYW1lKQotICAgIDogRE9NV2luZG93UHJvcGVydHkoZnJhbWUpCitET01BcHBsaWNh
dGlvbkNhY2hlOjpET01BcHBsaWNhdGlvbkNhY2hlKEZyYW1lJiBmcmFtZSkKKyAgICA6IERPTVdp
bmRvd1Byb3BlcnR5KCZmcmFtZSkKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdCogY2FjaGVI
b3N0ID0gYXBwbGljYXRpb25DYWNoZUhvc3QoKTsKLSAgICBpZiAoY2FjaGVIb3N0KQotICAgICAg
ICBjYWNoZUhvc3QtPnNldERPTUFwcGxpY2F0aW9uQ2FjaGUodGhpcyk7CisgICAgaWYgKGF1dG8q
IGhvc3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpKQorICAgICAgICBob3N0LT5zZXRET01BcHBs
aWNhdGlvbkNhY2hlKHRoaXMpOwogfQogCiB2b2lkIERPTUFwcGxpY2F0aW9uQ2FjaGU6OmRpc2Nv
bm5lY3RGcmFtZUZvckRvY3VtZW50U3VzcGVuc2lvbigpCiB7Ci0gICAgaWYgKEFwcGxpY2F0aW9u
Q2FjaGVIb3N0KiBjYWNoZUhvc3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpKQotICAgICAgICBj
YWNoZUhvc3QtPnNldERPTUFwcGxpY2F0aW9uQ2FjaGUobnVsbHB0cik7CisgICAgaWYgKGF1dG8q
IGhvc3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpKQorICAgICAgICBob3N0LT5zZXRET01BcHBs
aWNhdGlvbkNhY2hlKG51bGxwdHIpOwogICAgIERPTVdpbmRvd1Byb3BlcnR5OjpkaXNjb25uZWN0
RnJhbWVGb3JEb2N1bWVudFN1c3BlbnNpb24oKTsKIH0KIAogdm9pZCBET01BcHBsaWNhdGlvbkNh
Y2hlOjpyZWNvbm5lY3RGcmFtZUZyb21Eb2N1bWVudFN1c3BlbnNpb24oRnJhbWUqIGZyYW1lKQog
ewogICAgIERPTVdpbmRvd1Byb3BlcnR5OjpyZWNvbm5lY3RGcmFtZUZyb21Eb2N1bWVudFN1c3Bl
bnNpb24oZnJhbWUpOwotICAgIGlmIChBcHBsaWNhdGlvbkNhY2hlSG9zdCogY2FjaGVIb3N0ID0g
YXBwbGljYXRpb25DYWNoZUhvc3QoKSkKLSAgICAgICAgY2FjaGVIb3N0LT5zZXRET01BcHBsaWNh
dGlvbkNhY2hlKHRoaXMpOworICAgIGlmIChhdXRvKiBob3N0ID0gYXBwbGljYXRpb25DYWNoZUhv
c3QoKSkKKyAgICAgICAgaG9zdC0+c2V0RE9NQXBwbGljYXRpb25DYWNoZSh0aGlzKTsKIH0KIAog
dm9pZCBET01BcHBsaWNhdGlvbkNhY2hlOjp3aWxsRGVzdHJveUdsb2JhbE9iamVjdEluRnJhbWUo
KQogewotICAgIGlmIChBcHBsaWNhdGlvbkNhY2hlSG9zdCogY2FjaGVIb3N0ID0gYXBwbGljYXRp
b25DYWNoZUhvc3QoKSkKLSAgICAgICAgY2FjaGVIb3N0LT5zZXRET01BcHBsaWNhdGlvbkNhY2hl
KG51bGxwdHIpOworICAgIGlmIChhdXRvKiBob3N0ID0gYXBwbGljYXRpb25DYWNoZUhvc3QoKSkK
KyAgICAgICAgaG9zdC0+c2V0RE9NQXBwbGljYXRpb25DYWNoZShudWxscHRyKTsKICAgICBET01X
aW5kb3dQcm9wZXJ0eTo6d2lsbERlc3Ryb3lHbG9iYWxPYmplY3RJbkZyYW1lKCk7CiB9CiAKIEFw
cGxpY2F0aW9uQ2FjaGVIb3N0KiBET01BcHBsaWNhdGlvbkNhY2hlOjphcHBsaWNhdGlvbkNhY2hl
SG9zdCgpIGNvbnN0CiB7Ci0gICAgaWYgKCFtX2ZyYW1lIHx8ICFtX2ZyYW1lLT5sb2FkZXIoKS5k
b2N1bWVudExvYWRlcigpKQorICAgIGlmICghbV9mcmFtZSkKICAgICAgICAgcmV0dXJuIG51bGxw
dHI7Ci0gICAgcmV0dXJuIG1fZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCktPmFwcGxp
Y2F0aW9uQ2FjaGVIb3N0KCk7CisgICAgYXV0byogZG9jdW1lbnRMb2FkZXIgPSBtX2ZyYW1lLT5s
b2FkZXIoKS5kb2N1bWVudExvYWRlcigpOworICAgIGlmICghZG9jdW1lbnRMb2FkZXIpCisgICAg
ICAgIHJldHVybiBudWxscHRyOworICAgIHJldHVybiAmZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0
aW9uQ2FjaGVIb3N0KCk7CiB9CiAKIHVuc2lnbmVkIHNob3J0IERPTUFwcGxpY2F0aW9uQ2FjaGU6
OnN0YXR1cygpIGNvbnN0CiB7Ci0gICAgQXBwbGljYXRpb25DYWNoZUhvc3QqIGNhY2hlSG9zdCA9
IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7Ci0gICAgaWYgKCFjYWNoZUhvc3QpCisgICAgYXV0byog
aG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7CisgICAgaWYgKCFob3N0KQogICAgICAgICBy
ZXR1cm4gQXBwbGljYXRpb25DYWNoZUhvc3Q6OlVOQ0FDSEVEOwotICAgIHJldHVybiBjYWNoZUhv
c3QtPnN0YXR1cygpOworICAgIHJldHVybiBob3N0LT5zdGF0dXMoKTsKIH0KIAogRXhjZXB0aW9u
T3I8dm9pZD4gRE9NQXBwbGljYXRpb25DYWNoZTo6dXBkYXRlKCkKIHsKLSAgICBhdXRvKiBjYWNo
ZUhvc3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpOwotICAgIGlmICghY2FjaGVIb3N0IHx8ICFj
YWNoZUhvc3QtPnVwZGF0ZSgpKQorICAgIGF1dG8qIGhvc3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9z
dCgpOworICAgIGlmICghaG9zdCB8fCAhaG9zdC0+dXBkYXRlKCkpCiAgICAgICAgIHJldHVybiBF
eGNlcHRpb24geyBJTlZBTElEX1NUQVRFX0VSUiB9OwogICAgIHJldHVybiB7IH07CiB9CiAKIEV4
Y2VwdGlvbk9yPHZvaWQ+IERPTUFwcGxpY2F0aW9uQ2FjaGU6OnN3YXBDYWNoZSgpCiB7Ci0gICAg
YXV0byogY2FjaGVIb3N0ID0gYXBwbGljYXRpb25DYWNoZUhvc3QoKTsKLSAgICBpZiAoIWNhY2hl
SG9zdCB8fCAhY2FjaGVIb3N0LT5zd2FwQ2FjaGUoKSkKKyAgICBhdXRvKiBob3N0ID0gYXBwbGlj
YXRpb25DYWNoZUhvc3QoKTsKKyAgICBpZiAoIWhvc3QgfHwgIWhvc3QtPnN3YXBDYWNoZSgpKQog
ICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSU5WQUxJRF9TVEFURV9FUlIgfTsKICAgICByZXR1
cm4geyB9OwogfQogCiB2b2lkIERPTUFwcGxpY2F0aW9uQ2FjaGU6OmFib3J0KCkKIHsKLSAgICBB
cHBsaWNhdGlvbkNhY2hlSG9zdCogY2FjaGVIb3N0ID0gYXBwbGljYXRpb25DYWNoZUhvc3QoKTsK
LSAgICBpZiAoY2FjaGVIb3N0KQotICAgICAgICBjYWNoZUhvc3QtPmFib3J0KCk7CisgICAgaWYg
KGF1dG8qIGhvc3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpKQorICAgICAgICBob3N0LT5hYm9y
dCgpOwogfQogCiBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBET01BcHBsaWNhdGlvbkNhY2hlOjpz
Y3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29uc3QKIHsKLSAgICBpZiAobV9mcmFtZSkKLSAgICAg
ICAgcmV0dXJuIG1fZnJhbWUtPmRvY3VtZW50KCk7Ci0gICAgcmV0dXJuIG51bGxwdHI7Ci19Ci0K
LWNvbnN0IEF0b21pY1N0cmluZyYgRE9NQXBwbGljYXRpb25DYWNoZTo6dG9FdmVudFR5cGUoQXBw
bGljYXRpb25DYWNoZUhvc3Q6OkV2ZW50SUQgaWQpCi17Ci0gICAgc3dpdGNoIChpZCkgewotICAg
IGNhc2UgQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNIRUNLSU5HX0VWRU5UOgotICAgICAgICByZXR1
cm4gZXZlbnROYW1lcygpLmNoZWNraW5nRXZlbnQ7Ci0gICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hl
SG9zdDo6RVJST1JfRVZFTlQ6Ci0gICAgICAgIHJldHVybiBldmVudE5hbWVzKCkuZXJyb3JFdmVu
dDsKLSAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpOT1VQREFURV9FVkVOVDoKLSAgICAg
ICAgcmV0dXJuIGV2ZW50TmFtZXMoKS5ub3VwZGF0ZUV2ZW50OwotICAgIGNhc2UgQXBwbGljYXRp
b25DYWNoZUhvc3Q6OkRPV05MT0FESU5HX0VWRU5UOgotICAgICAgICByZXR1cm4gZXZlbnROYW1l
cygpLmRvd25sb2FkaW5nRXZlbnQ7Ci0gICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6UFJP
R1JFU1NfRVZFTlQ6Ci0gICAgICAgIHJldHVybiBldmVudE5hbWVzKCkucHJvZ3Jlc3NFdmVudDsK
LSAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpVUERBVEVSRUFEWV9FVkVOVDoKLSAgICAg
ICAgcmV0dXJuIGV2ZW50TmFtZXMoKS51cGRhdGVyZWFkeUV2ZW50OwotICAgIGNhc2UgQXBwbGlj
YXRpb25DYWNoZUhvc3Q6OkNBQ0hFRF9FVkVOVDoKLSAgICAgICAgcmV0dXJuIGV2ZW50TmFtZXMo
KS5jYWNoZWRFdmVudDsKLSAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpPQlNPTEVURV9F
VkVOVDogICAgICAgICAgICAKLSAgICAgICAgcmV0dXJuIGV2ZW50TmFtZXMoKS5vYnNvbGV0ZUV2
ZW50OwotICAgIH0KLSAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICByZXR1cm4gZXZlbnRO
YW1lcygpLmVycm9yRXZlbnQ7CisgICAgaWYgKCFtX2ZyYW1lKQorICAgICAgICByZXR1cm4gbnVs
bHB0cjsKKyAgICByZXR1cm4gbV9mcmFtZS0+ZG9jdW1lbnQoKTsKIH0KIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0RP
TUFwcGxpY2F0aW9uQ2FjaGUuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9ET01B
cHBsaWNhdGlvbkNhY2hlLmgKaW5kZXggM2YyMGQ4YzJiNzUxOTczMmZhYTFmN2QwZWUwZjkwNGE5
Nzg1MDE5ZC4uY2Y2ZDJhOWQ5OWY3MDY4YzA2Y2MyZjRhMjcxMTFlMmRjZGMxZTY3NSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0RPTUFwcGxpY2F0aW9uQ2FjaGUu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25DYWNo
ZS5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCwgMjAwOSBBcHBs
ZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxNyBB
cHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKQEAgLTI1LDQ2ICsyNSwzOSBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2luY2x1ZGUgIkFw
cGxpY2F0aW9uQ2FjaGVIb3N0LmgiCiAjaW5jbHVkZSAiRE9NV2luZG93UHJvcGVydHkuaCIKICNp
bmNsdWRlICJFdmVudFRhcmdldC5oIgotI2luY2x1ZGUgIkV4Y2VwdGlvbk9yLmgiCi0jaW5jbHVk
ZSAiU2NyaXB0V3JhcHBhYmxlLmgiCi0jaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KLSNpbmNsdWRl
IDx3dGYvdGV4dC9BdG9taWNTdHJpbmdIYXNoLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAor
Y2xhc3MgQXBwbGljYXRpb25DYWNoZUhvc3Q7CiBjbGFzcyBGcmFtZTsKLWNsYXNzIFVSTDsKIAog
Y2xhc3MgRE9NQXBwbGljYXRpb25DYWNoZSBmaW5hbCA6IHB1YmxpYyBSZWZDb3VudGVkPERPTUFw
cGxpY2F0aW9uQ2FjaGU+LCBwdWJsaWMgRXZlbnRUYXJnZXRXaXRoSW5saW5lRGF0YSwgcHVibGlj
IERPTVdpbmRvd1Byb3BlcnR5IHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUmVmPERPTUFwcGxpY2F0
aW9uQ2FjaGU+IGNyZWF0ZShGcmFtZSogZnJhbWUpIHsgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRE9N
QXBwbGljYXRpb25DYWNoZShmcmFtZSkpOyB9CisgICAgc3RhdGljIFJlZjxET01BcHBsaWNhdGlv
bkNhY2hlPiBjcmVhdGUoRnJhbWUmIGZyYW1lKSB7IHJldHVybiBhZG9wdFJlZigqbmV3IERPTUFw
cGxpY2F0aW9uQ2FjaGUoZnJhbWUpKTsgfQogICAgIHZpcnR1YWwgfkRPTUFwcGxpY2F0aW9uQ2Fj
aGUoKSB7IEFTU0VSVCghbV9mcmFtZSk7IH0KIAotICAgIHZvaWQgZGlzY29ubmVjdEZyYW1lRm9y
RG9jdW1lbnRTdXNwZW5zaW9uKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCByZWNvbm5lY3RGcmFtZUZy
b21Eb2N1bWVudFN1c3BlbnNpb24oRnJhbWUqKSBvdmVycmlkZTsKLSAgICB2b2lkIHdpbGxEZXN0
cm95R2xvYmFsT2JqZWN0SW5GcmFtZSgpIG92ZXJyaWRlOwotCiAgICAgdW5zaWduZWQgc2hvcnQg
c3RhdHVzKCkgY29uc3Q7CiAgICAgRXhjZXB0aW9uT3I8dm9pZD4gdXBkYXRlKCk7CiAgICAgRXhj
ZXB0aW9uT3I8dm9pZD4gc3dhcENhY2hlKCk7CiAgICAgdm9pZCBhYm9ydCgpOwogCi0gICAgdXNp
bmcgUmVmQ291bnRlZDxET01BcHBsaWNhdGlvbkNhY2hlPjo6cmVmOwotICAgIHVzaW5nIFJlZkNv
dW50ZWQ8RE9NQXBwbGljYXRpb25DYWNoZT46OmRlcmVmOworICAgIHVzaW5nIFJlZkNvdW50ZWQ6
OnJlZjsKKyAgICB1c2luZyBSZWZDb3VudGVkOjpkZXJlZjsKIAotICAgIEV2ZW50VGFyZ2V0SW50
ZXJmYWNlIGV2ZW50VGFyZ2V0SW50ZXJmYWNlKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gRE9N
QXBwbGljYXRpb25DYWNoZUV2ZW50VGFyZ2V0SW50ZXJmYWNlVHlwZTsgfQotICAgIFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSBjb25zdCBvdmVycmlkZTsK
K3ByaXZhdGU6CisgICAgZXhwbGljaXQgRE9NQXBwbGljYXRpb25DYWNoZShGcmFtZSYpOwogCi0g
ICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgdG9FdmVudFR5cGUoQXBwbGljYXRpb25DYWNo
ZUhvc3Q6OkV2ZW50SUQgaWQpOworICAgIHZvaWQgcmVmRXZlbnRUYXJnZXQoKSBmaW5hbCB7IHJl
ZigpOyB9CisgICAgdm9pZCBkZXJlZkV2ZW50VGFyZ2V0KCkgZmluYWwgeyBkZXJlZigpOyB9CiAK
LXByaXZhdGU6Ci0gICAgZXhwbGljaXQgRE9NQXBwbGljYXRpb25DYWNoZShGcmFtZSopOworICAg
IEV2ZW50VGFyZ2V0SW50ZXJmYWNlIGV2ZW50VGFyZ2V0SW50ZXJmYWNlKCkgY29uc3QgZmluYWwg
eyByZXR1cm4gRE9NQXBwbGljYXRpb25DYWNoZUV2ZW50VGFyZ2V0SW50ZXJmYWNlVHlwZTsgfQor
ICAgIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSBjb25z
dCBmaW5hbDsKIAotICAgIHZvaWQgcmVmRXZlbnRUYXJnZXQoKSBvdmVycmlkZSB7IHJlZigpOyB9
Ci0gICAgdm9pZCBkZXJlZkV2ZW50VGFyZ2V0KCkgb3ZlcnJpZGUgeyBkZXJlZigpOyB9CisgICAg
dm9pZCBkaXNjb25uZWN0RnJhbWVGb3JEb2N1bWVudFN1c3BlbnNpb24oKSBmaW5hbDsKKyAgICB2
b2lkIHJlY29ubmVjdEZyYW1lRnJvbURvY3VtZW50U3VzcGVuc2lvbihGcmFtZSopIGZpbmFsOwor
ICAgIHZvaWQgd2lsbERlc3Ryb3lHbG9iYWxPYmplY3RJbkZyYW1lKCkgZmluYWw7CiAKICAgICBB
cHBsaWNhdGlvbkNhY2hlSG9zdCogYXBwbGljYXRpb25DYWNoZUhvc3QoKSBjb25zdDsKIH07CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvTWFuaWZlc3RQYXJzZXIu
Y3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL01hbmlmZXN0UGFyc2VyLmNwcApp
bmRleCA2MDExNDFkNmZmNjY0NjU1NDZiODFjMjRhMGZhOGI5YjkxZGM0Yzk1Li41YzE1MTM1OWRl
OTgzYTgxYTc1NjA1M2JiZWNkY2ZiODliNDU4MjY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvYXBwY2FjaGUvTWFuaWZlc3RQYXJzZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9hcHBjYWNoZS9NYW5pZmVzdFBhcnNlci5jcHAKQEAgLTExOSw4ICsxMTksNyBAQCBi
b29sIHBhcnNlTWFuaWZlc3QoY29uc3QgVVJMJiBtYW5pZmVzdFVSTCwgY29uc3QgY2hhciogZGF0
YSwgaW50IGxlbmd0aCwgTWFuaWZlcwogICAgICAgICAgICAgaWYgKCF1cmwuaXNWYWxpZCgpKQog
ICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogCi0gICAgICAgICAgICBpZiAodXJsLmhhc0ZyYWdt
ZW50SWRlbnRpZmllcigpKQotICAgICAgICAgICAgICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50
aWZpZXIoKTsKKyAgICAgICAgICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKICAg
ICAgICAgICAgIAogICAgICAgICAgICAgaWYgKCFlcXVhbElnbm9yaW5nQVNDSUlDYXNlKHVybC5w
cm90b2NvbCgpLCBtYW5pZmVzdFVSTC5wcm90b2NvbCgpKSkKICAgICAgICAgICAgICAgICBjb250
aW51ZTsKQEAgLTE1MCw4ICsxNDksNyBAQCBib29sIHBhcnNlTWFuaWZlc3QoY29uc3QgVVJMJiBt
YW5pZmVzdFVSTCwgY29uc3QgY2hhciogZGF0YSwgaW50IGxlbmd0aCwgTWFuaWZlcwogICAgICAg
ICAgICAgVVJMIG5hbWVzcGFjZVVSTChtYW5pZmVzdFVSTCwgbGluZS5zdWJzdHJpbmcoMCwgcCAt
IHVwY29udmVydGVkTGluZUNoYXJhY3RlcnMpKTsKICAgICAgICAgICAgIGlmICghbmFtZXNwYWNl
VVJMLmlzVmFsaWQoKSkKICAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAgIGlm
IChuYW1lc3BhY2VVUkwuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkpCi0gICAgICAgICAgICAgICAg
bmFtZXNwYWNlVVJMLnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpOworICAgICAgICAgICAgbmFt
ZXNwYWNlVVJMLnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpOwogCiAgICAgICAgICAgICBpZiAo
IXByb3RvY29sSG9zdEFuZFBvcnRBcmVFcXVhbChtYW5pZmVzdFVSTCwgbmFtZXNwYWNlVVJMKSkK
ICAgICAgICAgICAgICAgICBjb250aW51ZTsKQEAgLTE2OCw4ICsxNjYsNyBAQCBib29sIHBhcnNl
TWFuaWZlc3QoY29uc3QgVVJMJiBtYW5pZmVzdFVSTCwgY29uc3QgY2hhciogZGF0YSwgaW50IGxl
bmd0aCwgTWFuaWZlcwogICAgICAgICAgICAgVVJMIGZhbGxiYWNrVVJMKG1hbmlmZXN0VVJMLCBT
dHJpbmcoZmFsbGJhY2tTdGFydCwgcCAtIGZhbGxiYWNrU3RhcnQpKTsKICAgICAgICAgICAgIGlm
ICghZmFsbGJhY2tVUkwuaXNWYWxpZCgpKQogICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotICAg
ICAgICAgICAgaWYgKGZhbGxiYWNrVVJMLmhhc0ZyYWdtZW50SWRlbnRpZmllcigpKQotICAgICAg
ICAgICAgICAgIGZhbGxiYWNrVVJMLnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpOworICAgICAg
ICAgICAgZmFsbGJhY2tVUkwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CiAKICAgICAgICAg
ICAgIGlmICghcHJvdG9jb2xIb3N0QW5kUG9ydEFyZUVxdWFsKG1hbmlmZXN0VVJMLCBmYWxsYmFj
a1VSTCkpCiAgICAgICAgICAgICAgICAgY29udGludWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvYXBwY2FjaGUvTWFuaWZlc3RQYXJzZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9hcHBjYWNoZS9NYW5pZmVzdFBhcnNlci5oCmluZGV4IDY2MTJjMDBmNzk1MTdkODZkYWNl
NDM5NzFiMzVmN2IwYTE2ZmE2NzUuLmIyODI0OWViZTQ3ZjVkNjZkMmUyMTQ2Mzk3MzEwNmYxMGNj
MmJmNTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9NYW5pZmVz
dFBhcnNlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9NYW5pZmVzdFBh
cnNlci5oCkBAIC0yNiwxOCArMjYsMTkgQEAKICNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAiQXBw
bGljYXRpb25DYWNoZS5oIgorI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAotICAgIGNsYXNzIFVSTDsKK2NsYXNzIFVSTDsKIAotICAgIHN0cnVjdCBNYW5p
ZmVzdCB7Ci0gICAgICAgIFZlY3RvcjxVUkw+IG9ubGluZVdoaXRlbGlzdGVkVVJMczsKLSAgICAg
ICAgSGFzaFNldDxTdHJpbmc+IGV4cGxpY2l0VVJMczsKLSAgICAgICAgRmFsbGJhY2tVUkxWZWN0
b3IgZmFsbGJhY2tVUkxzOwotICAgICAgICBib29sIGFsbG93QWxsTmV0d29ya1JlcXVlc3RzOyAv
LyBXaWxkY2FyZCBmb3VuZCBpbiBORVRXT1JLIHNlY3Rpb24uCi0gICAgfTsKK3N0cnVjdCBNYW5p
ZmVzdCB7CisgICAgVmVjdG9yPFVSTD4gb25saW5lV2hpdGVsaXN0ZWRVUkxzOworICAgIEhhc2hT
ZXQ8U3RyaW5nPiBleHBsaWNpdFVSTHM7CisgICAgRmFsbGJhY2tVUkxWZWN0b3IgZmFsbGJhY2tV
UkxzOworICAgIGJvb2wgYWxsb3dBbGxOZXR3b3JrUmVxdWVzdHM7IC8vIFdpbGRjYXJkIGZvdW5k
IGluIE5FVFdPUksgc2VjdGlvbi4KK307CiAKLSAgICBib29sIHBhcnNlTWFuaWZlc3QoY29uc3Qg
VVJMJiBtYW5pZmVzdFVSTCwgY29uc3QgY2hhciogZGF0YSwgaW50IGxlbmd0aCwgTWFuaWZlc3Qm
KTsKK2Jvb2wgcGFyc2VNYW5pZmVzdChjb25zdCBVUkwmIG1hbmlmZXN0VVJMLCBjb25zdCBjaGFy
KiBkYXRhLCBpbnQgbGVuZ3RoLCBNYW5pZmVzdCYpOwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmUuY3BwCmluZGV4IGU4OWE0OTlk
ZjQwNDQ2YzMyNjBiYmZmMWIyOGRlMGQ5YWQ5NzdhMGUuLjVlMDViZTIyYzdkNGVhN2YxMjJiYTQx
MTc4NjkzZjI1ZWQyZTBlZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNo
aXZlL0FyY2hpdmUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hp
dmUuY3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxNyBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKQEAgLTM3LDE3ICszNywxNyBAQCBBcmNoaXZlOjp+QXJjaGl2ZSgpCiAKIHZvaWQgQXJjaGl2
ZTo6Y2xlYXJBbGxTdWJmcmFtZUFyY2hpdmVzKCkKIHsKLSAgICBWZWN0b3I8UmVmUHRyPEFyY2hp
dmU+PiBjbGVhcmVkQXJjaGl2ZXM7Ci0gICAgY2xlYXJBbGxTdWJmcmFtZUFyY2hpdmVzSW1wbCgm
Y2xlYXJlZEFyY2hpdmVzKTsKKyAgICBIYXNoU2V0PEFyY2hpdmUqPiBjbGVhcmVkQXJjaGl2ZXM7
CisgICAgY2xlYXJlZEFyY2hpdmVzLmFkZCh0aGlzKTsKKyAgICBjbGVhckFsbFN1YmZyYW1lQXJj
aGl2ZXMoY2xlYXJlZEFyY2hpdmVzKTsKIH0KIAotdm9pZCBBcmNoaXZlOjpjbGVhckFsbFN1YmZy
YW1lQXJjaGl2ZXNJbXBsKFZlY3RvcjxSZWZQdHI8QXJjaGl2ZT4+KiBjbGVhcmVkQXJjaGl2ZXMp
Cit2b2lkIEFyY2hpdmU6OmNsZWFyQWxsU3ViZnJhbWVBcmNoaXZlcyhIYXNoU2V0PEFyY2hpdmUq
PiYgY2xlYXJlZEFyY2hpdmVzKQogeworICAgIEFTU0VSVChjbGVhcmVkQXJjaGl2ZXMuY29udGFp
bnModGhpcykpOwogICAgIGZvciAoYXV0byYgYXJjaGl2ZSA6IG1fc3ViZnJhbWVBcmNoaXZlcykg
ewotICAgICAgICBpZiAoIWNsZWFyZWRBcmNoaXZlcy0+Y29udGFpbnMoYXJjaGl2ZSkpIHsKLSAg
ICAgICAgICAgIGNsZWFyZWRBcmNoaXZlcy0+YXBwZW5kKGFyY2hpdmUpOwotICAgICAgICAgICAg
YXJjaGl2ZS0+Y2xlYXJBbGxTdWJmcmFtZUFyY2hpdmVzSW1wbChjbGVhcmVkQXJjaGl2ZXMpOwot
ICAgICAgICB9CisgICAgICAgIGlmIChjbGVhcmVkQXJjaGl2ZXMuYWRkKGFyY2hpdmUucHRyKCkp
KQorICAgICAgICAgICAgYXJjaGl2ZS0+Y2xlYXJBbGxTdWJmcmFtZUFyY2hpdmVzKGNsZWFyZWRB
cmNoaXZlcyk7CiAgICAgfQogICAgIG1fc3ViZnJhbWVBcmNoaXZlcy5jbGVhcigpOwogfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZS5oIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZS5oCmluZGV4IGYyMDY1NDkzMjI0MjNhN2Zi
MjQwMGRlNThjOWY0YTE5MjJkZGFlZTcuLjliNDk1YWEwZWUyZWEzYWM3OGRjOWYwM2NjNzM0YTNi
OWI1ZDUwNTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hp
dmUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmgKQEAgLTEs
NSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA4IEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOC0yMDE3IEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMzAsNDAg
KzMwLDM1IEBACiAKICNpbmNsdWRlICJBcmNoaXZlUmVzb3VyY2UuaCIKIAotI2luY2x1ZGUgPHd0
Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLSNpbmNsdWRlIDx3
dGYvUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgotCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKIGNsYXNzIEFyY2hpdmUgOiBwdWJsaWMgUmVmQ291bnRlZDxBcmNoaXZlPiB7CiBwdWJs
aWM6Ci0gICAgZW51bSBUeXBlIHsKLSAgICAgIFdlYkFyY2hpdmUsCi0gICAgICBNSFRNTAotICAg
IH07CiAgICAgdmlydHVhbCB+QXJjaGl2ZSgpOwotICAgIHZpcnR1YWwgVHlwZSB0eXBlKCkgY29u
c3QgPSAwOworCisgICAgdmlydHVhbCBib29sIHNob3VsZFVzZU1haW5SZXNvdXJjZUVuY29kaW5n
KCkgY29uc3QgPSAwOworICAgIHZpcnR1YWwgYm9vbCBzaG91bGRVc2VNYWluUmVzb3VyY2VVUkwo
KSBjb25zdCA9IDA7CisgICAgdmlydHVhbCBib29sIHNob3VsZExvYWRGcm9tQXJjaGl2ZU9ubHko
KSBjb25zdCA9IDA7CisKICAgICBBcmNoaXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSgpIHsgcmV0
dXJuIG1fbWFpblJlc291cmNlLmdldCgpOyB9Ci0gICAgY29uc3QgVmVjdG9yPFJlZlB0cjxBcmNo
aXZlUmVzb3VyY2U+PiYgc3VicmVzb3VyY2VzKCkgY29uc3QgeyByZXR1cm4gbV9zdWJyZXNvdXJj
ZXM7IH0KLSAgICBjb25zdCBWZWN0b3I8UmVmUHRyPEFyY2hpdmU+PiYgc3ViZnJhbWVBcmNoaXZl
cygpIGNvbnN0IHsgcmV0dXJuIG1fc3ViZnJhbWVBcmNoaXZlczsgfQorICAgIGNvbnN0IFZlY3Rv
cjxSZWY8QXJjaGl2ZVJlc291cmNlPj4mIHN1YnJlc291cmNlcygpIGNvbnN0IHsgcmV0dXJuIG1f
c3VicmVzb3VyY2VzOyB9CisgICAgY29uc3QgVmVjdG9yPFJlZjxBcmNoaXZlPj4mIHN1YmZyYW1l
QXJjaGl2ZXMoKSBjb25zdCB7IHJldHVybiBtX3N1YmZyYW1lQXJjaGl2ZXM7IH0KIAogcHJvdGVj
dGVkOgogICAgIC8vIFRoZXNlIG1ldGhvZHMgYXJlIG1lYW50IGZvciBzdWJjbGFzc2VzIGZvciBk
aWZmZXJlbnQgYXJjaGl2ZSB0eXBlcyB0byBhZGQgcmVzb3VyY2VzIGluIHRvIHRoZSBhcmNoaXZl
LAogICAgIC8vIGFuZCBzaG91bGQgbm90IGJlIGV4cG9zZWQgYXMgYXJjaGl2ZXMgc2hvdWxkIGJl
IGltbXV0YWJsZSB0byBjbGllbnRzCi0gICAgdm9pZCBzZXRNYWluUmVzb3VyY2UoUGFzc1JlZlB0
cjxBcmNoaXZlUmVzb3VyY2U+IG1haW5SZXNvdXJjZSkgeyBtX21haW5SZXNvdXJjZSA9IG1haW5S
ZXNvdXJjZTsgfQotICAgIHZvaWQgYWRkU3VicmVzb3VyY2UoUGFzc1JlZlB0cjxBcmNoaXZlUmVz
b3VyY2U+IHN1YlJlc291cmNlKSB7IG1fc3VicmVzb3VyY2VzLmFwcGVuZChzdWJSZXNvdXJjZSk7
IH0KLSAgICB2b2lkIGFkZFN1YmZyYW1lQXJjaGl2ZShQYXNzUmVmUHRyPEFyY2hpdmU+IHN1YmZy
YW1lQXJjaGl2ZSkgeyBtX3N1YmZyYW1lQXJjaGl2ZXMuYXBwZW5kKHN1YmZyYW1lQXJjaGl2ZSk7
IH0KKyAgICB2b2lkIHNldE1haW5SZXNvdXJjZShSZWY8QXJjaGl2ZVJlc291cmNlPiYmIG1haW5S
ZXNvdXJjZSkgeyBtX21haW5SZXNvdXJjZSA9IFdURk1vdmUobWFpblJlc291cmNlKTsgfQorICAg
IHZvaWQgYWRkU3VicmVzb3VyY2UoUmVmPEFyY2hpdmVSZXNvdXJjZT4mJiByZXNvdXJjZSkgeyBt
X3N1YnJlc291cmNlcy5hcHBlbmQoV1RGTW92ZShyZXNvdXJjZSkpOyB9CisgICAgdm9pZCBhZGRT
dWJmcmFtZUFyY2hpdmUoUmVmPEFyY2hpdmU+JiYgc3ViZnJhbWVBcmNoaXZlKSB7IG1fc3ViZnJh
bWVBcmNoaXZlcy5hcHBlbmQoV1RGTW92ZShzdWJmcmFtZUFyY2hpdmUpKTsgfQogCiAgICAgdm9p
ZCBjbGVhckFsbFN1YmZyYW1lQXJjaGl2ZXMoKTsKIAogcHJpdmF0ZToKLSAgICB2b2lkIGNsZWFy
QWxsU3ViZnJhbWVBcmNoaXZlc0ltcGwoVmVjdG9yPFJlZlB0cjxBcmNoaXZlPj4qIGNsZWFyZWRB
cmNoaXZlcyk7CisgICAgdm9pZCBjbGVhckFsbFN1YmZyYW1lQXJjaGl2ZXMoSGFzaFNldDxBcmNo
aXZlKj4mKTsKIAogICAgIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IG1fbWFpblJlc291cmNlOwot
ICAgIFZlY3RvcjxSZWZQdHI8QXJjaGl2ZVJlc291cmNlPj4gbV9zdWJyZXNvdXJjZXM7Ci0gICAg
VmVjdG9yPFJlZlB0cjxBcmNoaXZlPj4gbV9zdWJmcmFtZUFyY2hpdmVzOworICAgIFZlY3RvcjxS
ZWY8QXJjaGl2ZVJlc291cmNlPj4gbV9zdWJyZXNvdXJjZXM7CisgICAgVmVjdG9yPFJlZjxBcmNo
aXZlPj4gbV9zdWJmcmFtZUFyY2hpdmVzOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZUZhY3Rvcnku
Y3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZUZhY3RvcnkuY3BwCmlu
ZGV4IDkwYjY3OTk1MTU2ZGIwOGVlNGJlNDc1NDg3NWFkZTVjZmEzNjJkOWMuLjQxN2FjNDdhNzM2
Y2U2NWIyMjMzYzFmY2I1NjJkZjcxNmViNmFiYjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9hcmNoaXZlL0FyY2hpdmVGYWN0b3J5LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvYXJjaGl2ZS9BcmNoaXZlRmFjdG9yeS5jcHAKQEAgLTQ5LDMxICs0OSwzMyBAQCBuYW1l
c3BhY2UgV2ViQ29yZSB7CiB0eXBlZGVmIFJlZlB0cjxBcmNoaXZlPiBSYXdEYXRhQ3JlYXRpb25G
dW5jdGlvbihjb25zdCBVUkwmLCBTaGFyZWRCdWZmZXImKTsKIHR5cGVkZWYgSGFzaE1hcDxTdHJp
bmcsIFJhd0RhdGFDcmVhdGlvbkZ1bmN0aW9uKiwgQVNDSUlDYXNlSW5zZW5zaXRpdmVIYXNoPiBB
cmNoaXZlTUlNRVR5cGVzTWFwOwogCi0vLyBUaGUgY3JlYXRlIGZ1bmN0aW9ucyBpbiB0aGUgYXJj
aGl2ZSBjbGFzc2VzIHJldHVybiBQYXNzUmVmUHRyIHRvIGNvbmNyZXRlIHN1YmNsYXNzZXMKKy8v
IFRoZSBjcmVhdGUgZnVuY3Rpb25zIGluIHRoZSBhcmNoaXZlIGNsYXNzZXMgcmV0dXJuIFJlZlB0
ciB0byBjb25jcmV0ZSBzdWJjbGFzc2VzCiAvLyBvZiBBcmNoaXZlLiBUaGlzIGFkYXB0b3IgbWFr
ZXMgdGhlIGZ1bmN0aW9ucyBoYXZlIGEgdW5pZm9ybSByZXR1cm4gdHlwZS4KLXRlbXBsYXRlIDx0
eXBlbmFtZSBBcmNoaXZlQ2xhc3M+IHN0YXRpYyBSZWZQdHI8QXJjaGl2ZT4gYXJjaGl2ZUZhY3Rv
cnlDcmVhdGUoY29uc3QgVVJMJiB1cmwsIFNoYXJlZEJ1ZmZlciYgYnVmZmVyKQordGVtcGxhdGU8
dHlwZW5hbWUgQXJjaGl2ZUNsYXNzPiBzdGF0aWMgUmVmUHRyPEFyY2hpdmU+IGFyY2hpdmVGYWN0
b3J5Q3JlYXRlKGNvbnN0IFVSTCYgdXJsLCBTaGFyZWRCdWZmZXImIGJ1ZmZlcikKIHsKICAgICBy
ZXR1cm4gQXJjaGl2ZUNsYXNzOjpjcmVhdGUodXJsLCBidWZmZXIpOwogfQogCi1zdGF0aWMgQXJj
aGl2ZU1JTUVUeXBlc01hcCYgYXJjaGl2ZU1JTUVUeXBlcygpCitzdGF0aWMgQXJjaGl2ZU1JTUVU
eXBlc01hcCBjcmVhdGVBcmNoaXZlTUlNRVR5cGVzTWFwKCkKIHsKLSAgICBzdGF0aWMgTmV2ZXJE
ZXN0cm95ZWQ8QXJjaGl2ZU1JTUVUeXBlc01hcD4gbWltZVR5cGVzOwotICAgIHN0YXRpYyBib29s
IGluaXRpYWxpemVkID0gZmFsc2U7Ci0KLSAgICBpZiAoaW5pdGlhbGl6ZWQpCi0gICAgICAgIHJl
dHVybiBtaW1lVHlwZXM7CisgICAgQXJjaGl2ZU1JTUVUeXBlc01hcCBtYXA7CiAKICNpZiBFTkFC
TEUoV0VCX0FSQ0hJVkUpICYmIFVTRShDRikKLSAgICBtaW1lVHlwZXMuZ2V0KCkuc2V0KCJhcHBs
aWNhdGlvbi94LXdlYmFyY2hpdmUiLCBhcmNoaXZlRmFjdG9yeUNyZWF0ZTxMZWdhY3lXZWJBcmNo
aXZlPik7CisgICAgbWFwLmFkZChBU0NJSUxpdGVyYWwgeyAiYXBwbGljYXRpb24veC13ZWJhcmNo
aXZlIiB9LCBhcmNoaXZlRmFjdG9yeUNyZWF0ZTxMZWdhY3lXZWJBcmNoaXZlPik7CiAjZW5kaWYK
KwogI2lmIEVOQUJMRShNSFRNTCkKLSAgICBtaW1lVHlwZXMuZ2V0KCkuc2V0KCJtdWx0aXBhcnQv
cmVsYXRlZCIsIGFyY2hpdmVGYWN0b3J5Q3JlYXRlPE1IVE1MQXJjaGl2ZT4pOwotICAgIG1pbWVU
eXBlcy5nZXQoKS5zZXQoImFwcGxpY2F0aW9uL3gtbWltZWFyY2hpdmUiLCBhcmNoaXZlRmFjdG9y
eUNyZWF0ZTxNSFRNTEFyY2hpdmU+KTsKKyAgICBtYXAuYWRkKEFTQ0lJTGl0ZXJhbCB7ICJtdWx0
aXBhcnQvcmVsYXRlZCIgfSwgYXJjaGl2ZUZhY3RvcnlDcmVhdGU8TUhUTUxBcmNoaXZlPik7Cisg
ICAgbWFwLmFkZChBU0NJSUxpdGVyYWwgeyAiYXBwbGljYXRpb24veC1taW1lYXJjaGl2ZSIgfSwg
YXJjaGl2ZUZhY3RvcnlDcmVhdGU8TUhUTUxBcmNoaXZlPik7CiAjZW5kaWYKIAotICAgIGluaXRp
YWxpemVkID0gdHJ1ZTsKLSAgICByZXR1cm4gbWltZVR5cGVzOworICAgIHJldHVybiBtYXA7Cit9
CisKK3N0YXRpYyBBcmNoaXZlTUlNRVR5cGVzTWFwJiBhcmNoaXZlTUlNRVR5cGVzKCkKK3sKKyAg
ICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8QXJjaGl2ZU1JTUVUeXBlc01hcD4gbWFwID0gY3JlYXRl
QXJjaGl2ZU1JTUVUeXBlc01hcCgpOworICAgIHJldHVybiBtYXA7CiB9CiAKIGJvb2wgQXJjaGl2
ZUZhY3Rvcnk6OmlzQXJjaGl2ZU1pbWVUeXBlKGNvbnN0IFN0cmluZyYgbWltZVR5cGUpCkBAIC04
MywxMCArODUsMTQgQEAgYm9vbCBBcmNoaXZlRmFjdG9yeTo6aXNBcmNoaXZlTWltZVR5cGUoY29u
c3QgU3RyaW5nJiBtaW1lVHlwZSkKIAogUmVmUHRyPEFyY2hpdmU+IEFyY2hpdmVGYWN0b3J5Ojpj
cmVhdGUoY29uc3QgVVJMJiB1cmwsIFNoYXJlZEJ1ZmZlciogZGF0YSwgY29uc3QgU3RyaW5nJiBt
aW1lVHlwZSkKIHsKLSAgICBSYXdEYXRhQ3JlYXRpb25GdW5jdGlvbiogZnVuY3Rpb24gPSBtaW1l
VHlwZS5pc0VtcHR5KCkgPyAwIDogYXJjaGl2ZU1JTUVUeXBlcygpLmdldChtaW1lVHlwZSk7CiAg
ICAgaWYgKCFkYXRhKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICByZXR1cm4gZnVuY3Rp
b24gPyBmdW5jdGlvbih1cmwsICpkYXRhKSA6IFJlZlB0cjxBcmNoaXZlPihudWxscHRyKTsKKyAg
ICBpZiAobWltZVR5cGUuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICBh
dXRvKiBmdW5jdGlvbiA9IGFyY2hpdmVNSU1FVHlwZXMoKS5nZXQobWltZVR5cGUpOworICAgIGlm
ICghZnVuY3Rpb24pCisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIHJldHVybiBmdW5jdGlv
bih1cmwsICpkYXRhKTsKIH0KIAogdm9pZCBBcmNoaXZlRmFjdG9yeTo6cmVnaXN0ZXJLbm93bkFy
Y2hpdmVNSU1FVHlwZXMoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hp
dmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
YXJjaGl2ZS9BcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uLmNwcAppbmRleCA5OGY2YzFlMmZhMWQ0
YTUwOTEzMDBkNTg3ODA0NDIxMWQ4ZjdiMjNiLi5hMzcwNWVjNzdhZDI2MzFlNTk2OGQ4NWFjZTk3
ZGYwZmQxNTdjMWVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9B
cmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
YXJjaGl2ZS9BcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uLmNwcApAQCAtMSw1ICsxLDUgQEAKIC8q
Ci0gKiBDb3B5cmlnaHQgKEMpIDIwMDggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yOSwzMSArMjksMjMgQEAKICNp
bmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uLmgi
CiAKLW5hbWVzcGFjZSBXZWJDb3JlIHsKKyNpbmNsdWRlICJBcmNoaXZlLmgiCiAKLUFyY2hpdmVS
ZXNvdXJjZUNvbGxlY3Rpb246OkFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24oKQotewotfQorbmFt
ZXNwYWNlIFdlYkNvcmUgewogCi12b2lkIEFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb246OmFkZEFs
bFJlc291cmNlcyhBcmNoaXZlKiBhcmNoaXZlKQordm9pZCBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0
aW9uOjphZGRBbGxSZXNvdXJjZXMoQXJjaGl2ZSYgYXJjaGl2ZSkKIHsKLSAgICBBU1NFUlQoYXJj
aGl2ZSk7Ci0gICAgaWYgKCFhcmNoaXZlKQotICAgICAgICByZXR1cm47CisgICAgZm9yIChhdXRv
JiBzdWJyZXNvdXJjZSA6IGFyY2hpdmUuc3VicmVzb3VyY2VzKCkpCisgICAgICAgIG1fc3VicmVz
b3VyY2VzLnNldChzdWJyZXNvdXJjZS0+dXJsKCksIHN1YnJlc291cmNlLnB0cigpKTsKIAotICAg
IGZvciAoYXV0byYgc3VicmVzb3VyY2UgOiBhcmNoaXZlLT5zdWJyZXNvdXJjZXMoKSkKLSAgICAg
ICAgbV9zdWJyZXNvdXJjZXMuc2V0KHN1YnJlc291cmNlLT51cmwoKSwgc3VicmVzb3VyY2UuZ2V0
KCkpOwotCi0gICAgZm9yIChhdXRvJiBzdWJmcmFtZUFyY2hpdmUgOiBhcmNoaXZlLT5zdWJmcmFt
ZUFyY2hpdmVzKCkpIHsKKyAgICBmb3IgKGF1dG8mIHN1YmZyYW1lQXJjaGl2ZSA6IGFyY2hpdmUu
c3ViZnJhbWVBcmNoaXZlcygpKSB7CiAgICAgICAgIEFTU0VSVChzdWJmcmFtZUFyY2hpdmUtPm1h
aW5SZXNvdXJjZSgpKTsKLQotICAgICAgICBjb25zdCBTdHJpbmcmIGZyYW1lTmFtZSA9IHN1YmZy
YW1lQXJjaGl2ZS0+bWFpblJlc291cmNlKCktPmZyYW1lTmFtZSgpOwotICAgICAgICBpZiAoIWZy
YW1lTmFtZS5pc051bGwoKSkKLSAgICAgICAgICAgIG1fc3ViZnJhbWVzLnNldChmcmFtZU5hbWUs
IHN1YmZyYW1lQXJjaGl2ZS5nZXQoKSk7Ci0gICAgICAgIGVsc2UgewotICAgICAgICAgICAgLy8g
SW4gdGhlIE1IVE1MIGNhc2UsIGZyYW1lcyBkb24ndCBoYXZlIGEgbmFtZSBzbyB3ZSB1c2UgdGhl
IFVSTCBpbnN0ZWFkLgotICAgICAgICAgICAgbV9zdWJmcmFtZXMuc2V0KHN1YmZyYW1lQXJjaGl2
ZS0+bWFpblJlc291cmNlKCktPnVybCgpLnN0cmluZygpLCBzdWJmcmFtZUFyY2hpdmUuZ2V0KCkp
OworICAgICAgICBhdXRvIGZyYW1lTmFtZSA9IHN1YmZyYW1lQXJjaGl2ZS0+bWFpblJlc291cmNl
KCktPmZyYW1lTmFtZSgpOworICAgICAgICBpZiAoZnJhbWVOYW1lLmlzTnVsbCgpKSB7CisgICAg
ICAgICAgICAvLyBJbiB0aGUgTUhUTUwgY2FzZSwgZnJhbWVzIGRvbid0IGhhdmUgYSBuYW1lLCBz
byB3ZSB1c2UgdGhlIFVSTCBpbnN0ZWFkLgorICAgICAgICAgICAgZnJhbWVOYW1lID0gc3ViZnJh
bWVBcmNoaXZlLT5tYWluUmVzb3VyY2UoKS0+dXJsKCkuc3RyaW5nKCk7CiAgICAgICAgIH0KKyAg
ICAgICAgbV9zdWJmcmFtZXMuc2V0KGZyYW1lTmFtZSwgc3ViZnJhbWVBcmNoaXZlLnB0cigpKTsK
ICAgICB9CiB9CiAKQEAgLTYxLDI1ICs1MywxOSBAQCB2b2lkIEFyY2hpdmVSZXNvdXJjZUNvbGxl
Y3Rpb246OmFkZEFsbFJlc291cmNlcyhBcmNoaXZlKiBhcmNoaXZlKQogLy8gQ2FuIHdlIGNoYW5n
ZSB0aGUgZGVzaWduIGluIGEgbWFubmVyIHRoYXQgd2lsbCBsZXQgdXMgZGVwcmVjYXRlIHRoYXQg
QVBJIHdpdGhvdXQgcmVkdWNpbmcgZnVuY3Rpb25hbGl0eSBvZiB0aG9zZSBhcHBzPwogdm9pZCBB
cmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uOjphZGRSZXNvdXJjZShSZWY8QXJjaGl2ZVJlc291cmNl
PiYmIHJlc291cmNlKQogewotICAgIGNvbnN0IFVSTCYgdXJsID0gcmVzb3VyY2UtPnVybCgpOwor
ICAgIGF1dG8mIHVybCA9IHJlc291cmNlLT51cmwoKTsKICAgICBtX3N1YnJlc291cmNlcy5zZXQo
dXJsLCBXVEZNb3ZlKHJlc291cmNlKSk7CiB9CiAKIEFyY2hpdmVSZXNvdXJjZSogQXJjaGl2ZVJl
c291cmNlQ29sbGVjdGlvbjo6YXJjaGl2ZVJlc291cmNlRm9yVVJMKGNvbnN0IFVSTCYgdXJsKQog
ewotICAgIEFyY2hpdmVSZXNvdXJjZSogcmVzb3VyY2UgPSBtX3N1YnJlc291cmNlcy5nZXQodXJs
KTsKLSAgICBpZiAoIXJlc291cmNlKQotICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICAgICAg
Ci0gICAgcmV0dXJuIHJlc291cmNlOworICAgIHJldHVybiBtX3N1YnJlc291cmNlcy5nZXQodXJs
KTsKIH0KIAotUGFzc1JlZlB0cjxBcmNoaXZlPiBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uOjpw
b3BTdWJmcmFtZUFyY2hpdmUoY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IFVSTCYgdXJs
KQorUmVmUHRyPEFyY2hpdmU+IEFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb246OnBvcFN1YmZyYW1l
QXJjaGl2ZShjb25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgY29uc3QgVVJMJiB1cmwpCiB7Ci0gICAg
YXV0byBhcmNoaXZlID0gbV9zdWJmcmFtZXMudGFrZShmcmFtZU5hbWUpOwotICAgIGlmIChhcmNo
aXZlKQotICAgICAgICByZXR1cm4gV1RGTW92ZShhcmNoaXZlKTsKLQorICAgIGlmIChhdXRvIGFy
Y2hpdmUgPSBtX3N1YmZyYW1lcy50YWtlKGZyYW1lTmFtZSkpCisgICAgICAgIHJldHVybiBhcmNo
aXZlOwogICAgIHJldHVybiBtX3N1YmZyYW1lcy50YWtlKHVybC5zdHJpbmcoKSk7CiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmVSZXNvdXJjZUNv
bGxlY3Rpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmVSZXNvdXJj
ZUNvbGxlY3Rpb24uaAppbmRleCA1YzYyMGI1MWYzMWU2MzgyZDdlZjFjYzI0OGI5MzIwZjU2Yzg5
N2E3Li4zN2RmNjhiMzY2Y2ZmODUzOWI5NWM4MjNmMmU5MTI0ZDM1ZWE5OTM4IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9u
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29s
bGVjdGlvbi5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxNyBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKQEAgLTI4LDI0ICsyOCwyOSBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2luY2x1ZGUgIkFy
Y2hpdmUuaCIKLSNpbmNsdWRlICJBcmNoaXZlUmVzb3VyY2UuaCIKLSNpbmNsdWRlICJVUkwuaCIK
KyNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+Ci0jaW5j
bHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CisjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+
CisjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nSGFzaC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKK2NsYXNzIEFyY2hpdmU7CitjbGFzcyBBcmNoaXZlUmVzb3VyY2U7CitjbGFzcyBVUkw7CisK
IGNsYXNzIEFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24gewotICAgIFdURl9NQUtFX05PTkNPUFlB
QkxFKEFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24pOyBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsK
KyAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uKTsKKyAg
ICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKKwogcHVibGljOgotICAgIEFyY2hpdmVSZXNvdXJj
ZUNvbGxlY3Rpb24oKTsKKyAgICBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uKCkgPSBkZWZhdWx0
OwogCiAgICAgdm9pZCBhZGRSZXNvdXJjZShSZWY8QXJjaGl2ZVJlc291cmNlPiYmKTsKLSAgICB2
b2lkIGFkZEFsbFJlc291cmNlcyhBcmNoaXZlKik7CisgICAgdm9pZCBhZGRBbGxSZXNvdXJjZXMo
QXJjaGl2ZSYpOwogICAgIAogICAgIFdFQkNPUkVfRVhQT1JUIEFyY2hpdmVSZXNvdXJjZSogYXJj
aGl2ZVJlc291cmNlRm9yVVJMKGNvbnN0IFVSTCYpOwotICAgIFBhc3NSZWZQdHI8QXJjaGl2ZT4g
cG9wU3ViZnJhbWVBcmNoaXZlKGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBjb25zdCBVUkwmKTsK
KyAgICBSZWZQdHI8QXJjaGl2ZT4gcG9wU3ViZnJhbWVBcmNoaXZlKGNvbnN0IFN0cmluZyYgZnJh
bWVOYW1lLCBjb25zdCBVUkwmKTsKICAgICAKIHByaXZhdGU6ICAgIAogICAgIEhhc2hNYXA8U3Ry
aW5nLCBSZWZQdHI8QXJjaGl2ZVJlc291cmNlPj4gbV9zdWJyZXNvdXJjZXM7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNoaXZlLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL2NmL0xlZ2FjeVdlYkFyY2hpdmUuY3BwCmlu
ZGV4IGUwNDkwNjMwMDgxYTAxMmE0MzMzMjZiZTI0MjMxODI3ZGRmY2U5NzEuLjM5ZDgzNTIwNmM3
MTAxZWU0YzE5MGM0MjhmNGJjZWRiNTMxMzMxYWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9hcmNoaXZlL2NmL0xlZ2FjeVdlYkFyY2hpdmUuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9hcmNoaXZlL2NmL0xlZ2FjeVdlYkFyY2hpdmUuY3BwCkBAIC04MCwxOCArODAs
MTYgQEAgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRl
UHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24oQXIKICAgICAgICAgQ0ZEaWN0aW9uYXJ5U2V0VmFs
dWUocHJvcGVydHlMaXN0LmdldCgpLCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VNSU1FVHlwZUtl
eSwgMCk7CiAgICAgICAgIHJldHVybiBwcm9wZXJ0eUxpc3Q7CiAgICAgfQotICAgIAotICAgIFJl
dGFpblB0cjxDRk11dGFibGVEaWN0aW9uYXJ5UmVmPiBwcm9wZXJ0eUxpc3QgPSBhZG9wdENGKENG
RGljdGlvbmFyeUNyZWF0ZU11dGFibGUoMCwgNiwgMCwgJmtDRlR5cGVEaWN0aW9uYXJ5VmFsdWVD
YWxsQmFja3MpKTsKLSAgICAKKworICAgIGF1dG8gcHJvcGVydHlMaXN0ID0gYWRvcHRDRihDRkRp
Y3Rpb25hcnlDcmVhdGVNdXRhYmxlKDAsIDYsIDAsICZrQ0ZUeXBlRGljdGlvbmFyeVZhbHVlQ2Fs
bEJhY2tzKSk7CisKICAgICAvLyBSZXNvdXJjZSBkYXRhIGNhbiBiZSBlbXB0eSwgYnV0IG11c3Qg
YmUgcmVwcmVzZW50ZWQgYnkgYW4gZW1wdHkgQ0ZEYXRhUmVmCi0gICAgU2hhcmVkQnVmZmVyJiBk
YXRhID0gcmVzb3VyY2UtPmRhdGEoKTsKLSAgICBSZXRhaW5QdHI8Q0ZEYXRhUmVmPiBjZkRhdGE7
Ci0gICAgY2ZEYXRhID0gZGF0YS5jcmVhdGVDRkRhdGEoKTsKKyAgICBhdXRvJiBkYXRhID0gcmVz
b3VyY2UtPmRhdGEoKTsKKworICAgIENGRGljdGlvbmFyeVNldFZhbHVlKHByb3BlcnR5TGlzdC5n
ZXQoKSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlRGF0YUtleSwgZGF0YS5jcmVhdGVDRkRhdGEo
KS5nZXQoKSk7CiAKLSAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShwcm9wZXJ0eUxpc3QuZ2V0KCks
IExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZURhdGFLZXksIGNmRGF0YS5nZXQoKSk7Ci0gICAgCiAg
ICAgLy8gUmVzb3VyY2UgVVJMIGNhbm5vdCBiZSBudWxsCi0gICAgaWYgKFJldGFpblB0cjxDRlN0
cmluZ1JlZj4gY2ZVUkwgPSByZXNvdXJjZS0+dXJsKCkuc3RyaW5nKCkuY3JlYXRlQ0ZTdHJpbmco
KSkKKyAgICBpZiAoYXV0byBjZlVSTCA9IHJlc291cmNlLT51cmwoKS5zdHJpbmcoKS5jcmVhdGVD
RlN0cmluZygpKQogICAgICAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShwcm9wZXJ0eUxpc3QuZ2V0
KCksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZVVSTEtleSwgY2ZVUkwuZ2V0KCkpOwogICAgIGVs
c2UgewogICAgICAgICBMT0coQXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZlIC0gTlVMTCByZXNv
dXJjZSBVUkwgaXMgaW52YWxpZCAtIHJldHVybmluZyBudWxsIHByb3BlcnR5IGxpc3QiKTsKQEAg
LTk5LDQyICs5Nyw0MSBAQCBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBMZWdhY3lXZWJBcmNo
aXZlOjpjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihBcgogICAgIH0KIAogICAgIC8v
IEZyYW1lTmFtZSBzaG91bGQgYmUgbGVmdCBvdXQgaWYgZW1wdHkgZm9yIHN1YnJlc291cmNlcywg
YnV0IGFsd2F5cyBpbmNsdWRlZCBmb3IgbWFpbiByZXNvdXJjZXMKLSAgICBjb25zdCBTdHJpbmcm
IGZyYW1lTmFtZShyZXNvdXJjZS0+ZnJhbWVOYW1lKCkpOworICAgIGF1dG8mIGZyYW1lTmFtZSA9
IHJlc291cmNlLT5mcmFtZU5hbWUoKTsKICAgICBpZiAoIWZyYW1lTmFtZS5pc0VtcHR5KCkgfHwg
aXNNYWluUmVzb3VyY2UpCiAgICAgICAgIENGRGljdGlvbmFyeVNldFZhbHVlKHByb3BlcnR5TGlz
dC5nZXQoKSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlRnJhbWVOYW1lS2V5LCBmcmFtZU5hbWUu
Y3JlYXRlQ0ZTdHJpbmcoKS5nZXQoKSk7Ci0gICAgCisKICAgICAvLyBTZXQgTUlNRVR5cGUsIFRl
eHRFbmNvZGluZ05hbWUsIGFuZCBSZXNvdXJjZVJlc3BvbnNlIG9ubHkgaWYgdGhleSBhY3R1YWxs
eSBleGlzdAotICAgIGNvbnN0IFN0cmluZyYgbWltZVR5cGUocmVzb3VyY2UtPm1pbWVUeXBlKCkp
OworICAgIGF1dG8mIG1pbWVUeXBlID0gcmVzb3VyY2UtPm1pbWVUeXBlKCk7CiAgICAgaWYgKCFt
aW1lVHlwZS5pc0VtcHR5KCkpCiAgICAgICAgIENGRGljdGlvbmFyeVNldFZhbHVlKHByb3BlcnR5
TGlzdC5nZXQoKSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlTUlNRVR5cGVLZXksIG1pbWVUeXBl
LmNyZWF0ZUNGU3RyaW5nKCkuZ2V0KCkpOwotICAgIAotICAgIGNvbnN0IFN0cmluZyYgdGV4dEVu
Y29kaW5nKHJlc291cmNlLT50ZXh0RW5jb2RpbmcoKSk7CisKKyAgICBhdXRvJiB0ZXh0RW5jb2Rp
bmcgPSByZXNvdXJjZS0+dGV4dEVuY29kaW5nKCk7CiAgICAgaWYgKCF0ZXh0RW5jb2RpbmcuaXNF
bXB0eSgpKQogICAgICAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShwcm9wZXJ0eUxpc3QuZ2V0KCks
IExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZVRleHRFbmNvZGluZ05hbWVLZXksIHRleHRFbmNvZGlu
Zy5jcmVhdGVDRlN0cmluZygpLmdldCgpKTsKIAogICAgIC8vIERvbid0IGluY2x1ZGUgdGhlIHJl
c291cmNlIHJlc3BvbnNlIGZvciB0aGUgbWFpbiByZXNvdXJjZQogICAgIGlmICghaXNNYWluUmVz
b3VyY2UpIHsKLSAgICAgICAgUmV0YWluUHRyPENGRGF0YVJlZj4gcmVzb3VyY2VSZXNwb25zZURh
dGEgPSBjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihyZXNvdXJjZS0+cmVzcG9uc2Uo
KSk7Ci0gICAgICAgIGlmIChyZXNvdXJjZVJlc3BvbnNlRGF0YSkKKyAgICAgICAgaWYgKGF1dG8g
cmVzb3VyY2VSZXNwb25zZURhdGEgPSBjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihy
ZXNvdXJjZS0+cmVzcG9uc2UoKSkpCiAgICAgICAgICAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShw
cm9wZXJ0eUxpc3QuZ2V0KCksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZVJlc3BvbnNlS2V5LCBy
ZXNvdXJjZVJlc3BvbnNlRGF0YS5nZXQoKSk7ICAgIAogICAgIH0KICAgICAKICAgICByZXR1cm4g
cHJvcGVydHlMaXN0OwogfQogCi1SZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBMZWdhY3lXZWJB
cmNoaXZlOjpjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihBcmNoaXZlKiBhcmNoaXZl
KQorUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlUHJv
cGVydHlMaXN0UmVwcmVzZW50YXRpb24oQXJjaGl2ZSYgYXJjaGl2ZSkKIHsKLSAgICBSZXRhaW5Q
dHI8Q0ZNdXRhYmxlRGljdGlvbmFyeVJlZj4gcHJvcGVydHlMaXN0ID0gYWRvcHRDRihDRkRpY3Rp
b25hcnlDcmVhdGVNdXRhYmxlKDAsIDMsIDAsICZrQ0ZUeXBlRGljdGlvbmFyeVZhbHVlQ2FsbEJh
Y2tzKSk7Ci0gICAgCi0gICAgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gbWFpblJlc291cmNl
RGljdCA9IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKGFyY2hpdmUtPm1haW5SZXNv
dXJjZSgpLCBNYWluUmVzb3VyY2UpOworICAgIGF1dG8gcHJvcGVydHlMaXN0ID0gYWRvcHRDRihD
RkRpY3Rpb25hcnlDcmVhdGVNdXRhYmxlKDAsIDMsIDAsICZrQ0ZUeXBlRGljdGlvbmFyeVZhbHVl
Q2FsbEJhY2tzKSk7CisKKyAgICBhdXRvIG1haW5SZXNvdXJjZURpY3QgPSBjcmVhdGVQcm9wZXJ0
eUxpc3RSZXByZXNlbnRhdGlvbihhcmNoaXZlLm1haW5SZXNvdXJjZSgpLCBNYWluUmVzb3VyY2Up
OwogICAgIEFTU0VSVChtYWluUmVzb3VyY2VEaWN0KTsKICAgICBpZiAoIW1haW5SZXNvdXJjZURp
Y3QpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIENGRGljdGlvbmFyeVNldFZhbHVlKHBy
b3BlcnR5TGlzdC5nZXQoKSwgTGVnYWN5V2ViQXJjaGl2ZU1haW5SZXNvdXJjZUtleSwgbWFpblJl
c291cmNlRGljdC5nZXQoKSk7CiAKLSAgICBSZXRhaW5QdHI8Q0ZNdXRhYmxlQXJyYXlSZWY+IHN1
YnJlc291cmNlc0FycmF5ID0gYWRvcHRDRihDRkFycmF5Q3JlYXRlTXV0YWJsZSgwLCBhcmNoaXZl
LT5zdWJyZXNvdXJjZXMoKS5zaXplKCksICZrQ0ZUeXBlQXJyYXlDYWxsQmFja3MpKTsKLSAgICBm
b3IgKGF1dG8mIHJlc291cmNlIDogYXJjaGl2ZS0+c3VicmVzb3VyY2VzKCkpIHsKLSAgICAgICAg
aWYgKFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IHN1YnJlc291cmNlID0gY3JlYXRlUHJvcGVy
dHlMaXN0UmVwcmVzZW50YXRpb24ocmVzb3VyY2UuZ2V0KCksIFN1YnJlc291cmNlKSkKKyAgICBh
dXRvIHN1YnJlc291cmNlc0FycmF5ID0gYWRvcHRDRihDRkFycmF5Q3JlYXRlTXV0YWJsZSgwLCBh
cmNoaXZlLnN1YnJlc291cmNlcygpLnNpemUoKSwgJmtDRlR5cGVBcnJheUNhbGxCYWNrcykpOwor
ICAgIGZvciAoYXV0byYgcmVzb3VyY2UgOiBhcmNoaXZlLnN1YnJlc291cmNlcygpKSB7CisgICAg
ICAgIGlmIChhdXRvIHN1YnJlc291cmNlID0gY3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRp
b24ocmVzb3VyY2UucHRyKCksIFN1YnJlc291cmNlKSkKICAgICAgICAgICAgIENGQXJyYXlBcHBl
bmRWYWx1ZShzdWJyZXNvdXJjZXNBcnJheS5nZXQoKSwgc3VicmVzb3VyY2UuZ2V0KCkpOwogICAg
ICAgICBlbHNlCiAgICAgICAgICAgICBMT0coQXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZlIC0g
RmFpbGVkIHRvIGNyZWF0ZSBwcm9wZXJ0eSBsaXN0IGZvciBzdWJyZXNvdXJjZSIpOwpAQCAtMTQy
LDkgKzEzOSw5IEBAIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IExlZ2FjeVdlYkFyY2hpdmU6
OmNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKEFyCiAgICAgaWYgKENGQXJyYXlHZXRD
b3VudChzdWJyZXNvdXJjZXNBcnJheS5nZXQoKSkpCiAgICAgICAgIENGRGljdGlvbmFyeVNldFZh
bHVlKHByb3BlcnR5TGlzdC5nZXQoKSwgTGVnYWN5V2ViQXJjaGl2ZVN1YnJlc291cmNlc0tleSwg
c3VicmVzb3VyY2VzQXJyYXkuZ2V0KCkpOwogCi0gICAgUmV0YWluUHRyPENGTXV0YWJsZUFycmF5
UmVmPiBzdWJmcmFtZXNBcnJheSA9IGFkb3B0Q0YoQ0ZBcnJheUNyZWF0ZU11dGFibGUoMCwgYXJj
aGl2ZS0+c3ViZnJhbWVBcmNoaXZlcygpLnNpemUoKSwgJmtDRlR5cGVBcnJheUNhbGxCYWNrcykp
OwotICAgIGZvciAoYXV0byYgc3ViZnJhbWUgOiBhcmNoaXZlLT5zdWJmcmFtZUFyY2hpdmVzKCkp
IHsKLSAgICAgICAgaWYgKFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IHN1YmZyYW1lQXJjaGl2
ZSA9IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKHN1YmZyYW1lLmdldCgpKSkKKyAg
ICBhdXRvIHN1YmZyYW1lc0FycmF5ID0gYWRvcHRDRihDRkFycmF5Q3JlYXRlTXV0YWJsZSgwLCBh
cmNoaXZlLnN1YmZyYW1lQXJjaGl2ZXMoKS5zaXplKCksICZrQ0ZUeXBlQXJyYXlDYWxsQmFja3Mp
KTsKKyAgICBmb3IgKGF1dG8mIHN1YmZyYW1lIDogYXJjaGl2ZS5zdWJmcmFtZUFyY2hpdmVzKCkp
IHsKKyAgICAgICAgaWYgKGF1dG8gc3ViZnJhbWVBcmNoaXZlID0gY3JlYXRlUHJvcGVydHlMaXN0
UmVwcmVzZW50YXRpb24oc3ViZnJhbWUuZ2V0KCkpKQogICAgICAgICAgICAgQ0ZBcnJheUFwcGVu
ZFZhbHVlKHN1YmZyYW1lc0FycmF5LmdldCgpLCBzdWJmcmFtZUFyY2hpdmUuZ2V0KCkpOwogICAg
ICAgICBlbHNlCiAgICAgICAgICAgICBMT0coQXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZlIC0g
RmFpbGVkIHRvIGNyZWF0ZSBwcm9wZXJ0eSBsaXN0IGZvciBzdWJmcmFtZSBhcmNoaXZlIik7CkBA
IC0xNjAsMTMgKzE1NywxMyBAQCBSZXNvdXJjZVJlc3BvbnNlIExlZ2FjeVdlYkFyY2hpdmU6OmNy
ZWF0ZVJlc291cmNlUmVzcG9uc2VGcm9tUHJvcGVydHlMaXN0RGF0YShDRgogICAgIEFTU0VSVChk
YXRhKTsKICAgICBpZiAoIWRhdGEpCiAgICAgICAgIHJldHVybiBSZXNvdXJjZVJlc3BvbnNlKCk7
Ci0gICAgCisKICAgICAvLyBJZiB0aGUgUmVzb3VyY2VSZXNwb25zZVZlcnNpb24gKHBhc3NlZCBp
biBhcyByZXNwb25zZURhdGFUeXBlKSBleGlzdHMgYXQgYWxsLCB0aGlzIGlzIGEgIm5ldyIgd2Vi
IGFyY2hpdmUgdGhhdCB3ZQogICAgIC8vIGNhbiBwYXJzZSB3ZWxsIGluIGEgY3Jvc3MgcGxhdGZv
cm0gbWFubmVyIElmIGl0IGRvZXNuJ3QgZXhpc3QsIHdlIHdpbGwgYXNzdW1lIHRoaXMgaXMgYW4g
Im9sZCIgd2ViIGFyY2hpdmUgd2l0aCwKICAgICAvLyBOU1VSTFJlc3BvbnNlIG9iamVjdHMgaW4g
aXQgYW5kIHBhcnNlIHRoZSBSZXNvdXJjZVJlc3BvbnNlIGFzIHN1Y2guCiAgICAgaWYgKCFyZXNw
b25zZURhdGFUeXBlKQogICAgICAgICByZXR1cm4gY3JlYXRlUmVzb3VyY2VSZXNwb25zZUZyb21N
YWNBcmNoaXZlZERhdGEoZGF0YSk7Ci0gICAgICAgIAorCiAgICAgLy8gRklYTUU6IFBhcnNlIHRo
ZSAibmV3IiBmb3JtYXQgdGhhdCB0aGUgYWJvdmUgY29tbWVudCByZWZlcmVuY2VzIGhlcmUuIFRo
aXMgZm9ybWF0IGRvZXNuJ3QgZXhpc3QgeWV0LgogICAgIHJldHVybiBSZXNvdXJjZVJlc3BvbnNl
KCk7CiB9CkBAIC0xNzYsNDcgKzE3Myw0NiBAQCBSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBMZWdh
Y3lXZWJBcmNoaXZlOjpjcmVhdGVSZXNvdXJjZShDRkRpY3Rpb25hcnlSZWYgZGljdGlvbgogICAg
IEFTU0VSVChkaWN0aW9uYXJ5KTsKICAgICBpZiAoIWRpY3Rpb25hcnkpCiAgICAgICAgIHJldHVy
biBudWxscHRyOwotICAgICAgICAKLSAgICBDRkRhdGFSZWYgcmVzb3VyY2VEYXRhID0gc3RhdGlj
X2Nhc3Q8Q0ZEYXRhUmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBMZWdhY3lX
ZWJBcmNoaXZlUmVzb3VyY2VEYXRhS2V5KSk7CisKKyAgICBhdXRvIHJlc291cmNlRGF0YSA9IHN0
YXRpY19jYXN0PENGRGF0YVJlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVn
YWN5V2ViQXJjaGl2ZVJlc291cmNlRGF0YUtleSkpOwogICAgIGlmIChyZXNvdXJjZURhdGEgJiYg
Q0ZHZXRUeXBlSUQocmVzb3VyY2VEYXRhKSAhPSBDRkRhdGFHZXRUeXBlSUQoKSkgewogICAgICAg
ICBMT0coQXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZlIC0gUmVzb3VyY2UgZGF0YSBpcyBub3Qg
b2YgdHlwZSBDRkRhdGEsIGNhbm5vdCBjcmVhdGUgaW52YWxpZCByZXNvdXJjZSIpOwogICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKICAgICB9Ci0gICAgCi0gICAgQ0ZTdHJpbmdSZWYgZnJhbWVOYW1l
ID0gc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25h
cnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZUZyYW1lTmFtZUtleSkpOworCisgICAgYXV0byBm
cmFtZU5hbWUgPSBzdGF0aWNfY2FzdDxDRlN0cmluZ1JlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUo
ZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlRnJhbWVOYW1lS2V5KSk7CiAgICAg
aWYgKGZyYW1lTmFtZSAmJiBDRkdldFR5cGVJRChmcmFtZU5hbWUpICE9IENGU3RyaW5nR2V0VHlw
ZUlEKCkpIHsKICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIEZyYW1l
IG5hbWUgaXMgbm90IG9mIHR5cGUgQ0ZTdHJpbmcsIGNhbm5vdCBjcmVhdGUgaW52YWxpZCByZXNv
dXJjZSIpOwogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICB9Ci0gICAgCi0gICAgQ0ZTdHJp
bmdSZWYgbWltZVR5cGUgPSBzdGF0aWNfY2FzdDxDRlN0cmluZ1JlZj4oQ0ZEaWN0aW9uYXJ5R2V0
VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlTUlNRVR5cGVLZXkpKTsK
KworICAgIGF1dG8gbWltZVR5cGUgPSBzdGF0aWNfY2FzdDxDRlN0cmluZ1JlZj4oQ0ZEaWN0aW9u
YXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlTUlNRVR5cGVL
ZXkpKTsKICAgICBpZiAobWltZVR5cGUgJiYgQ0ZHZXRUeXBlSUQobWltZVR5cGUpICE9IENGU3Ry
aW5nR2V0VHlwZUlEKCkpIHsKICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2
ZSAtIE1JTUUgdHlwZSBpcyBub3Qgb2YgdHlwZSBDRlN0cmluZywgY2Fubm90IGNyZWF0ZSBpbnZh
bGlkIHJlc291cmNlIik7CiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIH0KLSAgICAKLSAg
ICBDRlN0cmluZ1JlZiB1cmwgPSBzdGF0aWNfY2FzdDxDRlN0cmluZ1JlZj4oQ0ZEaWN0aW9uYXJ5
R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlVVJMS2V5KSk7CisK
KyAgICBhdXRvIHVybCA9IHN0YXRpY19jYXN0PENGU3RyaW5nUmVmPihDRkRpY3Rpb25hcnlHZXRW
YWx1ZShkaWN0aW9uYXJ5LCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VVUkxLZXkpKTsKICAgICBp
ZiAodXJsICYmIENGR2V0VHlwZUlEKHVybCkgIT0gQ0ZTdHJpbmdHZXRUeXBlSUQoKSkgewogICAg
ICAgICBMT0coQXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZlIC0gVVJMIGlzIG5vdCBvZiB0eXBl
IENGU3RyaW5nLCBjYW5ub3QgY3JlYXRlIGludmFsaWQgcmVzb3VyY2UiKTsKICAgICAgICAgcmV0
dXJuIG51bGxwdHI7CiAgICAgfQotICAgIAotICAgIENGU3RyaW5nUmVmIHRleHRFbmNvZGluZyA9
IHN0YXRpY19jYXN0PENGU3RyaW5nUmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5
LCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VUZXh0RW5jb2RpbmdOYW1lS2V5KSk7CisKKyAgICBh
dXRvIHRleHRFbmNvZGluZyA9IHN0YXRpY19jYXN0PENGU3RyaW5nUmVmPihDRkRpY3Rpb25hcnlH
ZXRWYWx1ZShkaWN0aW9uYXJ5LCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VUZXh0RW5jb2RpbmdO
YW1lS2V5KSk7CiAgICAgaWYgKHRleHRFbmNvZGluZyAmJiBDRkdldFR5cGVJRCh0ZXh0RW5jb2Rp
bmcpICE9IENGU3RyaW5nR2V0VHlwZUlEKCkpIHsKICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVn
YWN5V2ViQXJjaGl2ZSAtIFRleHQgZW5jb2RpbmcgaXMgbm90IG9mIHR5cGUgQ0ZTdHJpbmcsIGNh
bm5vdCBjcmVhdGUgaW52YWxpZCByZXNvdXJjZSIpOwogICAgICAgICByZXR1cm4gbnVsbHB0cjsK
ICAgICB9CiAKICAgICBSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlOwotICAgIAotICAgIENGRGF0
YVJlZiByZXNvdXJjZVJlc3BvbnNlRGF0YSA9IHN0YXRpY19jYXN0PENGRGF0YVJlZj4oQ0ZEaWN0
aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlUmVzcG9u
c2VLZXkpKTsKLSAgICBpZiAocmVzb3VyY2VSZXNwb25zZURhdGEpIHsKKworICAgIGlmIChhdXRv
IHJlc291cmNlUmVzcG9uc2VEYXRhID0gc3RhdGljX2Nhc3Q8Q0ZEYXRhUmVmPihDRkRpY3Rpb25h
cnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VSZXNwb25zZUtl
eSkpKSB7CiAgICAgICAgIGlmIChDRkdldFR5cGVJRChyZXNvdXJjZVJlc3BvbnNlRGF0YSkgIT0g
Q0ZEYXRhR2V0VHlwZUlEKCkpIHsKICAgICAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdl
YkFyY2hpdmUgLSBSZXNvdXJjZSByZXNwb25zZSBkYXRhIGlzIG5vdCBvZiB0eXBlIENGRGF0YSwg
Y2Fubm90IGNyZWF0ZSBpbnZhbGlkIHJlc291cmNlIik7CiAgICAgICAgICAgICByZXR1cm4gbnVs
bHB0cjsKICAgICAgICAgfQogICAgICAgICAKLSAgICAgICAgQ0ZTdHJpbmdSZWYgcmVzb3VyY2VS
ZXNwb25zZVZlcnNpb24gPSBzdGF0aWNfY2FzdDxDRlN0cmluZ1JlZj4oQ0ZEaWN0aW9uYXJ5R2V0
VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlUmVzcG9uc2VWZXJzaW9u
S2V5KSk7CisgICAgICAgIGF1dG8gcmVzb3VyY2VSZXNwb25zZVZlcnNpb24gPSBzdGF0aWNfY2Fz
dDxDRlN0cmluZ1JlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2Vi
QXJjaGl2ZVJlc291cmNlUmVzcG9uc2VWZXJzaW9uS2V5KSk7CiAgICAgICAgIGlmIChyZXNvdXJj
ZVJlc3BvbnNlVmVyc2lvbiAmJiBDRkdldFR5cGVJRChyZXNvdXJjZVJlc3BvbnNlVmVyc2lvbikg
IT0gQ0ZTdHJpbmdHZXRUeXBlSUQoKSkgewogICAgICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVn
YWN5V2ViQXJjaGl2ZSAtIFJlc291cmNlIHJlc3BvbnNlIHZlcnNpb24gaXMgbm90IG9mIHR5cGUg
Q0ZTdHJpbmcsIGNhbm5vdCBjcmVhdGUgaW52YWxpZCByZXNvdXJjZSIpOwogICAgICAgICAgICAg
cmV0dXJuIG51bGxwdHI7CkBAIC0yMjQsNyArMjIwLDcgQEAgUmVmUHRyPEFyY2hpdmVSZXNvdXJj
ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlUmVzb3VyY2UoQ0ZEaWN0aW9uYXJ5UmVmIGRpY3Rp
b24KICAgICAgICAgCiAgICAgICAgIHJlc3BvbnNlID0gY3JlYXRlUmVzb3VyY2VSZXNwb25zZUZy
b21Qcm9wZXJ0eUxpc3REYXRhKHJlc291cmNlUmVzcG9uc2VEYXRhLCByZXNvdXJjZVJlc3BvbnNl
VmVyc2lvbik7CiAgICAgfQotICAgIAorCiAgICAgcmV0dXJuIEFyY2hpdmVSZXNvdXJjZTo6Y3Jl
YXRlKFNoYXJlZEJ1ZmZlcjo6d3JhcENGRGF0YShyZXNvdXJjZURhdGEpLCBVUkwoVVJMKCksIHVy
bCksIG1pbWVUeXBlLCB0ZXh0RW5jb2RpbmcsIGZyYW1lTmFtZSwgcmVzcG9uc2UpOwogfQogCkBA
IC0yMzMsMjEgKzIyOSwxOSBAQCBSZWY8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2
ZTo6Y3JlYXRlKCkKICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBMZWdhY3lXZWJBcmNoaXZlKTsK
IH0KIAotUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShS
ZWZQdHI8QXJjaGl2ZVJlc291cmNlPiYmIG1haW5SZXNvdXJjZSwgVmVjdG9yPFJlZlB0cjxBcmNo
aXZlUmVzb3VyY2U+PiYmIHN1YnJlc291cmNlcywgVmVjdG9yPFJlZlB0cjxMZWdhY3lXZWJBcmNo
aXZlPj4mJiBzdWJmcmFtZUFyY2hpdmVzKQorUmVmPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdl
YkFyY2hpdmU6OmNyZWF0ZShSZWY8QXJjaGl2ZVJlc291cmNlPiYmIG1haW5SZXNvdXJjZSwgVmVj
dG9yPFJlZjxBcmNoaXZlUmVzb3VyY2U+PiYmIHN1YnJlc291cmNlcywgVmVjdG9yPFJlZjxMZWdh
Y3lXZWJBcmNoaXZlPj4mJiBzdWJmcmFtZUFyY2hpdmVzKQogewotICAgIGlmICghbWFpblJlc291
cmNlKQotICAgICAgICByZXR1cm4gbnVsbHB0cjsKLQogICAgIGF1dG8gYXJjaGl2ZSA9IGNyZWF0
ZSgpOworCiAgICAgYXJjaGl2ZS0+c2V0TWFpblJlc291cmNlKFdURk1vdmUobWFpblJlc291cmNl
KSk7Ci0gICAgCisKICAgICBmb3IgKGF1dG8mIHN1YnJlc291cmNlIDogc3VicmVzb3VyY2VzKQog
ICAgICAgICBhcmNoaXZlLT5hZGRTdWJyZXNvdXJjZShXVEZNb3ZlKHN1YnJlc291cmNlKSk7CiAK
ICAgICBmb3IgKGF1dG8mIHN1YmZyYW1lQXJjaGl2ZSA6IHN1YmZyYW1lQXJjaGl2ZXMpCiAgICAg
ICAgIGFyY2hpdmUtPmFkZFN1YmZyYW1lQXJjaGl2ZShXVEZNb3ZlKHN1YmZyYW1lQXJjaGl2ZSkp
OwogCi0gICAgcmV0dXJuIFdURk1vdmUoYXJjaGl2ZSk7CisgICAgcmV0dXJuIGFyY2hpdmU7CiB9
CiAKIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoU2hh
cmVkQnVmZmVyJiBkYXRhKQpAQCAtMzA3LDQ4ICszMDEsNTAgQEAgYm9vbCBMZWdhY3lXZWJBcmNo
aXZlOjpleHRyYWN0KENGRGljdGlvbmFyeVJlZiBkaWN0aW9uYXJ5KQogICAgICAgICBMT0coQXJj
aGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZlIC0gTWFpbiByZXNvdXJjZSBpcyBub3QgdGhlIGV4cGVj
dGVkIENGRGljdGlvbmFyeSwgYWJvcnRpbmcgaW52YWxpZCBXZWJBcmNoaXZlIik7CiAgICAgICAg
IHJldHVybiBmYWxzZTsKICAgICB9Ci0gICAgCi0gICAgc2V0TWFpblJlc291cmNlKGNyZWF0ZVJl
c291cmNlKG1haW5SZXNvdXJjZURpY3QpKTsKLSAgICBpZiAoIW1haW5SZXNvdXJjZSgpKSB7CisK
KyAgICBhdXRvIG1haW5SZXNvdXJjZSA9IGNyZWF0ZVJlc291cmNlKG1haW5SZXNvdXJjZURpY3Qp
OworICAgIGlmICghbWFpblJlc291cmNlKSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2Fj
eVdlYkFyY2hpdmUgLSBGYWlsZWQgdG8gcGFyc2UgbWFpbiByZXNvdXJjZSBmcm9tIENGRGljdGlv
bmFyeSBvciBtYWluIHJlc291cmNlIGRvZXMgbm90IGV4aXN0LCBhYm9ydGluZyBpbnZhbGlkIFdl
YkFyY2hpdmUiKTsKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KLSAgICAKLSAgICBpZiAo
bWFpblJlc291cmNlKCktPm1pbWVUeXBlKCkuaXNOdWxsKCkpIHsKKworICAgIGlmIChtYWluUmVz
b3VyY2UtPm1pbWVUeXBlKCkuaXNOdWxsKCkpIHsKICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVn
YWN5V2ViQXJjaGl2ZSAtIE1haW4gcmVzb3VyY2UgTUlNRSB0eXBlIGlzIHJlcXVpcmVkLCBidXQg
d2FzIG51bGwuIik7CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9Ci0gICAgCi0gICAgQ0ZB
cnJheVJlZiBzdWJyZXNvdXJjZUFycmF5ID0gc3RhdGljX2Nhc3Q8Q0ZBcnJheVJlZj4oQ0ZEaWN0
aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVN1YnJlc291cmNlc0tl
eSkpOworCisgICAgc2V0TWFpblJlc291cmNlKG1haW5SZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgp
KTsKKworICAgIGF1dG8gc3VicmVzb3VyY2VBcnJheSA9IHN0YXRpY19jYXN0PENGQXJyYXlSZWY+
KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVTdWJyZXNv
dXJjZXNLZXkpKTsKICAgICBpZiAoc3VicmVzb3VyY2VBcnJheSAmJiBDRkdldFR5cGVJRChzdWJy
ZXNvdXJjZUFycmF5KSAhPSBDRkFycmF5R2V0VHlwZUlEKCkpIHsKICAgICAgICAgTE9HKEFyY2hp
dmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIFN1YnJlc291cmNlcyBpcyBub3QgdGhlIGV4cGVjdGVk
IEFycmF5LCBhYm9ydGluZyBpbnZhbGlkIFdlYkFyY2hpdmUiKTsKICAgICAgICAgcmV0dXJuIGZh
bHNlOwogICAgIH0KLSAgICAKKwogICAgIGlmIChzdWJyZXNvdXJjZUFycmF5KSB7Ci0gICAgICAg
IENGSW5kZXggY291bnQgPSBDRkFycmF5R2V0Q291bnQoc3VicmVzb3VyY2VBcnJheSk7CisgICAg
ICAgIGF1dG8gY291bnQgPSBDRkFycmF5R2V0Q291bnQoc3VicmVzb3VyY2VBcnJheSk7CiAgICAg
ICAgIGZvciAoQ0ZJbmRleCBpID0gMDsgaSA8IGNvdW50OyArK2kpIHsKLSAgICAgICAgICAgIENG
RGljdGlvbmFyeVJlZiBzdWJyZXNvdXJjZURpY3QgPSBzdGF0aWNfY2FzdDxDRkRpY3Rpb25hcnlS
ZWY+KENGQXJyYXlHZXRWYWx1ZUF0SW5kZXgoc3VicmVzb3VyY2VBcnJheSwgaSkpOworICAgICAg
ICAgICAgYXV0byBzdWJyZXNvdXJjZURpY3QgPSBzdGF0aWNfY2FzdDxDRkRpY3Rpb25hcnlSZWY+
KENGQXJyYXlHZXRWYWx1ZUF0SW5kZXgoc3VicmVzb3VyY2VBcnJheSwgaSkpOwogICAgICAgICAg
ICAgaWYgKENGR2V0VHlwZUlEKHN1YnJlc291cmNlRGljdCkgIT0gQ0ZEaWN0aW9uYXJ5R2V0VHlw
ZUlEKCkpIHsKICAgICAgICAgICAgICAgICBMT0coQXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZl
IC0gU3VicmVzb3VyY2UgaXMgbm90IGV4cGVjdGVkIENGRGljdGlvbmFyeSwgYWJvcnRpbmcgaW52
YWxpZCBXZWJBcmNoaXZlIik7CiAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAg
ICAgICAgfQogICAgICAgICAgICAgCiAgICAgICAgICAgICBpZiAoYXV0byBzdWJyZXNvdXJjZSA9
IGNyZWF0ZVJlc291cmNlKHN1YnJlc291cmNlRGljdCkpCi0gICAgICAgICAgICAgICAgYWRkU3Vi
cmVzb3VyY2UoV1RGTW92ZShzdWJyZXNvdXJjZSkpOworICAgICAgICAgICAgICAgIGFkZFN1YnJl
c291cmNlKHN1YnJlc291cmNlLnJlbGVhc2VOb25OdWxsKCkpOwogICAgICAgICB9CiAgICAgfQot
ICAgIAotICAgIENGQXJyYXlSZWYgc3ViZnJhbWVBcnJheSA9IHN0YXRpY19jYXN0PENGQXJyYXlS
ZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVTdWJm
cmFtZUFyY2hpdmVzS2V5KSk7CisKKyAgICBhdXRvIHN1YmZyYW1lQXJyYXkgPSBzdGF0aWNfY2Fz
dDxDRkFycmF5UmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBMZWdhY3lXZWJB
cmNoaXZlU3ViZnJhbWVBcmNoaXZlc0tleSkpOwogICAgIGlmIChzdWJmcmFtZUFycmF5ICYmIENG
R2V0VHlwZUlEKHN1YmZyYW1lQXJyYXkpICE9IENGQXJyYXlHZXRUeXBlSUQoKSkgewogICAgICAg
ICBMT0coQXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZlIC0gU3ViZnJhbWUgYXJjaGl2ZXMgaXMg
bm90IHRoZSBleHBlY3RlZCBBcnJheSwgYWJvcnRpbmcgaW52YWxpZCBXZWJBcmNoaXZlIik7CiAg
ICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9Ci0gICAgCisKICAgICBpZiAoc3ViZnJhbWVBcnJh
eSkgewotICAgICAgICBDRkluZGV4IGNvdW50ID0gQ0ZBcnJheUdldENvdW50KHN1YmZyYW1lQXJy
YXkpOworICAgICAgICBhdXRvIGNvdW50ID0gQ0ZBcnJheUdldENvdW50KHN1YmZyYW1lQXJyYXkp
OwogICAgICAgICBmb3IgKENGSW5kZXggaSA9IDA7IGkgPCBjb3VudDsgKytpKSB7Ci0gICAgICAg
ICAgICBDRkRpY3Rpb25hcnlSZWYgc3ViZnJhbWVEaWN0ID0gc3RhdGljX2Nhc3Q8Q0ZEaWN0aW9u
YXJ5UmVmPihDRkFycmF5R2V0VmFsdWVBdEluZGV4KHN1YmZyYW1lQXJyYXksIGkpKTsKKyAgICAg
ICAgICAgIGF1dG8gc3ViZnJhbWVEaWN0ID0gc3RhdGljX2Nhc3Q8Q0ZEaWN0aW9uYXJ5UmVmPihD
RkFycmF5R2V0VmFsdWVBdEluZGV4KHN1YmZyYW1lQXJyYXksIGkpKTsKICAgICAgICAgICAgIGlm
IChDRkdldFR5cGVJRChzdWJmcmFtZURpY3QpICE9IENGRGljdGlvbmFyeUdldFR5cGVJRCgpKSB7
CiAgICAgICAgICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIFN1YmZy
YW1lIGFycmF5IGlzIG5vdCBleHBlY3RlZCBDRkRpY3Rpb25hcnksIGFib3J0aW5nIGludmFsaWQg
V2ViQXJjaGl2ZSIpOwogICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKQEAgLTM2NSwyNiAr
MzYxLDIxIEBAIGJvb2wgTGVnYWN5V2ViQXJjaGl2ZTo6ZXh0cmFjdChDRkRpY3Rpb25hcnlSZWYg
ZGljdGlvbmFyeSkKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotQXJjaGl2ZTo6VHlwZSBMZWdhY3lX
ZWJBcmNoaXZlOjp0eXBlKCkgY29uc3QKLXsKLSAgICByZXR1cm4gQXJjaGl2ZTo6V2ViQXJjaGl2
ZTsKLX0KLSAgICAKIFJldGFpblB0cjxDRkRhdGFSZWY+IExlZ2FjeVdlYkFyY2hpdmU6OnJhd0Rh
dGFSZXByZXNlbnRhdGlvbigpCiB7Ci0gICAgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gcHJv
cGVydHlMaXN0ID0gY3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24odGhpcyk7CisgICAg
YXV0byBwcm9wZXJ0eUxpc3QgPSBjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbigqdGhp
cyk7CiAgICAgQVNTRVJUKHByb3BlcnR5TGlzdCk7CiAgICAgaWYgKCFwcm9wZXJ0eUxpc3QpIHsK
ICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIEZhaWxlZCB0byBjcmVh
dGUgcHJvcGVydHkgbGlzdCBmb3IgYXJjaGl2ZSwgcmV0dXJuaW5nIG5vIGRhdGEiKTsKICAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQogCi0gICAgUmV0YWluUHRyPENGV3JpdGVTdHJlYW1S
ZWY+IHN0cmVhbSA9IGFkb3B0Q0YoQ0ZXcml0ZVN0cmVhbUNyZWF0ZVdpdGhBbGxvY2F0ZWRCdWZm
ZXJzKDAsIDApKTsKKyAgICBhdXRvIHN0cmVhbSA9IGFkb3B0Q0YoQ0ZXcml0ZVN0cmVhbUNyZWF0
ZVdpdGhBbGxvY2F0ZWRCdWZmZXJzKDAsIDApKTsKIAogICAgIENGV3JpdGVTdHJlYW1PcGVuKHN0
cmVhbS5nZXQoKSk7CiAgICAgQ0ZQcm9wZXJ0eUxpc3RXcml0ZShwcm9wZXJ0eUxpc3QuZ2V0KCks
IHN0cmVhbS5nZXQoKSwga0NGUHJvcGVydHlMaXN0QmluYXJ5Rm9ybWF0X3YxXzAsIDAsIDApOwog
Ci0gICAgUmV0YWluUHRyPENGRGF0YVJlZj4gcGxpc3REYXRhID0gYWRvcHRDRihzdGF0aWNfY2Fz
dDxDRkRhdGFSZWY+KENGV3JpdGVTdHJlYW1Db3B5UHJvcGVydHkoc3RyZWFtLmdldCgpLCBrQ0ZT
dHJlYW1Qcm9wZXJ0eURhdGFXcml0dGVuKSkpOworICAgIGF1dG8gcGxpc3REYXRhID0gYWRvcHRD
RihzdGF0aWNfY2FzdDxDRkRhdGFSZWY+KENGV3JpdGVTdHJlYW1Db3B5UHJvcGVydHkoc3RyZWFt
LmdldCgpLCBrQ0ZTdHJlYW1Qcm9wZXJ0eURhdGFXcml0dGVuKSkpOwogICAgIEFTU0VSVChwbGlz
dERhdGEpOwogCiAgICAgQ0ZXcml0ZVN0cmVhbUNsb3NlKHN0cmVhbS5nZXQoKSk7CkBAIC00MzIs
NyArNDIzLDcgQEAgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNy
ZWF0ZShOb2RlJiBub2RlLCBzdGQ6OmZ1bmN0aW9uPGJvb2wKIAogICAgIFZlY3RvcjxOb2RlKj4g
bm9kZUxpc3Q7CiAgICAgU3RyaW5nIG1hcmt1cFN0cmluZyA9IGNyZWF0ZU1hcmt1cChub2RlLCBJ
bmNsdWRlTm9kZSwgJm5vZGVMaXN0LCBEb05vdFJlc29sdmVVUkxzLCB0YWdOYW1lc1RvRmlsdGVy
LmdldCgpKTsKLSAgICBOb2RlOjpOb2RlVHlwZSBub2RlVHlwZSA9IG5vZGUubm9kZVR5cGUoKTsK
KyAgICBhdXRvIG5vZGVUeXBlID0gbm9kZS5ub2RlVHlwZSgpOwogICAgIGlmIChub2RlVHlwZSAh
PSBOb2RlOjpET0NVTUVOVF9OT0RFICYmIG5vZGVUeXBlICE9IE5vZGU6OkRPQ1VNRU5UX1RZUEVf
Tk9ERSkKICAgICAgICAgbWFya3VwU3RyaW5nID0gZG9jdW1lbnRUeXBlU3RyaW5nKG5vZGUuZG9j
dW1lbnQoKSkgKyBtYXJrdXBTdHJpbmc7CiAKQEAgLTQ0MSwyMCArNDMyLDIxIEBAIFJlZlB0cjxM
ZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoTm9kZSYgbm9kZSwgc3Rk
OjpmdW5jdGlvbjxib29sCiAKIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNo
aXZlOjpjcmVhdGUoRnJhbWUmIGZyYW1lKQogewotICAgIERvY3VtZW50TG9hZGVyKiBkb2N1bWVu
dExvYWRlciA9IGZyYW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCk7Ci0KKyAgICBhdXRvKiBk
b2N1bWVudExvYWRlciA9IGZyYW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCk7CiAgICAgaWYg
KCFkb2N1bWVudExvYWRlcikKICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgICAgIAotICAg
IFZlY3RvcjxSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4+IHN1YmZyYW1lQXJjaGl2ZXM7Ci0gICAg
CisKKyAgICBhdXRvIG1haW5SZXNvdXJjZSA9IGRvY3VtZW50TG9hZGVyLT5tYWluUmVzb3VyY2Uo
KTsKKyAgICBpZiAoIW1haW5SZXNvdXJjZSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAg
ICBWZWN0b3I8UmVmPExlZ2FjeVdlYkFyY2hpdmU+PiBzdWJmcmFtZUFyY2hpdmVzOwogICAgIGZv
ciAodW5zaWduZWQgaSA9IDA7IGkgPCBmcmFtZS50cmVlKCkuY2hpbGRDb3VudCgpOyArK2kpIHsK
LSAgICAgICAgaWYgKFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBjaGlsZEZyYW1lQXJjaGl2ZSA9
IGNyZWF0ZSgqZnJhbWUudHJlZSgpLmNoaWxkKGkpKSkKLSAgICAgICAgICAgIHN1YmZyYW1lQXJj
aGl2ZXMuYXBwZW5kKFdURk1vdmUoY2hpbGRGcmFtZUFyY2hpdmUpKTsKKyAgICAgICAgaWYgKGF1
dG8gY2hpbGRGcmFtZUFyY2hpdmUgPSBjcmVhdGUoKmZyYW1lLnRyZWUoKS5jaGlsZChpKSkpCisg
ICAgICAgICAgICBzdWJmcmFtZUFyY2hpdmVzLmFwcGVuZChjaGlsZEZyYW1lQXJjaGl2ZS5yZWxl
YXNlTm9uTnVsbCgpKTsKICAgICB9CiAKLSAgICBhdXRvIHN1YnJlc291cmNlcyA9IGRvY3VtZW50
TG9hZGVyLT5zdWJyZXNvdXJjZXMoKTsKLSAgICByZXR1cm4gY3JlYXRlKGRvY3VtZW50TG9hZGVy
LT5tYWluUmVzb3VyY2UoKSwgV1RGTW92ZShzdWJyZXNvdXJjZXMpLCBXVEZNb3ZlKHN1YmZyYW1l
QXJjaGl2ZXMpKTsKKyAgICByZXR1cm4gY3JlYXRlKG1haW5SZXNvdXJjZS5yZWxlYXNlTm9uTnVs
bCgpLCBkb2N1bWVudExvYWRlci0+c3VicmVzb3VyY2VzKCksIFdURk1vdmUoc3ViZnJhbWVBcmNo
aXZlcykpOwogfQogCiBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6
Y3JlYXRlKFJhbmdlKiByYW5nZSkKQEAgLTQ2MiwyMiArNDU0LDIwIEBAIFJlZlB0cjxMZWdhY3lX
ZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoUmFuZ2UqIHJhbmdlKQogICAgIGlm
ICghcmFuZ2UpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgICAgICAKLSAgICBEb2N1bWVu
dCYgZG9jdW1lbnQgPSByYW5nZS0+c3RhcnRDb250YWluZXIoKS5kb2N1bWVudCgpOwotCi0gICAg
RnJhbWUqIGZyYW1lID0gZG9jdW1lbnQuZnJhbWUoKTsKKyAgICBhdXRvJiBkb2N1bWVudCA9IHJh
bmdlLT5zdGFydENvbnRhaW5lcigpLmRvY3VtZW50KCk7CisgICAgYXV0byogZnJhbWUgPSBkb2N1
bWVudC5mcmFtZSgpOwogICAgIGlmICghZnJhbWUpCiAgICAgICAgIHJldHVybiBudWxscHRyOwot
ICAgIAotICAgIC8vIEZJWE1FOiBUaGlzIGlzIGFsd2F5cyAiZm9yIGludGVyY2hhbmdlIi4gSXMg
dGhhdCByaWdodD8gU2VlIHRoZSBwcmV2aW91cyBtZXRob2QuCisKKyAgICAvLyBGSVhNRTogVGhp
cyBpcyBhbHdheXMgImZvciBpbnRlcmNoYW5nZSIuIElzIHRoYXQgcmlnaHQ/CiAgICAgVmVjdG9y
PE5vZGUqPiBub2RlTGlzdDsKICAgICBTdHJpbmcgbWFya3VwU3RyaW5nID0gZG9jdW1lbnRUeXBl
U3RyaW5nKGRvY3VtZW50KSArIGNyZWF0ZU1hcmt1cCgqcmFuZ2UsICZub2RlTGlzdCwgQW5ub3Rh
dGVGb3JJbnRlcmNoYW5nZSk7Ci0KICAgICByZXR1cm4gY3JlYXRlKG1hcmt1cFN0cmluZywgKmZy
YW1lLCBub2RlTGlzdCwgbnVsbHB0cik7CiB9CiAKIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBM
ZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoY29uc3QgU3RyaW5nJiBtYXJrdXBTdHJpbmcsIEZyYW1l
JiBmcmFtZSwgY29uc3QgVmVjdG9yPE5vZGUqPiYgbm9kZXMsIHN0ZDo6ZnVuY3Rpb248Ym9vbCAo
RnJhbWUmKT4gZnJhbWVGaWx0ZXIpCiB7Ci0gICAgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVz
cG9uc2UgPSBmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5yZXNwb25zZSgpOworICAg
IGF1dG8mIHJlc3BvbnNlID0gZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKS0+cmVzcG9u
c2UoKTsKICAgICBVUkwgcmVzcG9uc2VVUkwgPSByZXNwb25zZS51cmwoKTsKICAgICAKICAgICAv
LyBpdCdzIHBvc3NpYmxlIHRvIGhhdmUgYSByZXNwb25zZSB3aXRob3V0IGEgVVJMIGhlcmUKQEAg
LTQ4NSw0MiArNDc1LDQxIEBAIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNo
aXZlOjpjcmVhdGUoY29uc3QgU3RyaW5nJiBtYXJrdXBTdHJpbmcsIEZyCiAgICAgaWYgKHJlc3Bv
bnNlVVJMLmlzTnVsbCgpKQogICAgICAgICByZXNwb25zZVVSTCA9IFVSTChQYXJzZWRVUkxTdHJp
bmcsIGVtcHR5U3RyaW5nKCkpOwogCi0gICAgUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gbWFpblJl
c291cmNlID0gQXJjaGl2ZVJlc291cmNlOjpjcmVhdGUodXRmOEJ1ZmZlcihtYXJrdXBTdHJpbmcp
LCByZXNwb25zZVVSTCwgcmVzcG9uc2UubWltZVR5cGUoKSwgIlVURi04IiwgZnJhbWUudHJlZSgp
LnVuaXF1ZU5hbWUoKSk7CisgICAgYXV0byBtYWluUmVzb3VyY2UgPSBBcmNoaXZlUmVzb3VyY2U6
OmNyZWF0ZSh1dGY4QnVmZmVyKG1hcmt1cFN0cmluZyksIHJlc3BvbnNlVVJMLCByZXNwb25zZS5t
aW1lVHlwZSgpLCAiVVRGLTgiLCBmcmFtZS50cmVlKCkudW5pcXVlTmFtZSgpKTsKICAgICBpZiAo
IW1haW5SZXNvdXJjZSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKLSAgICBWZWN0b3I8UmVm
UHRyPExlZ2FjeVdlYkFyY2hpdmU+PiBzdWJmcmFtZUFyY2hpdmVzOwotICAgIFZlY3RvcjxSZWZQ
dHI8QXJjaGl2ZVJlc291cmNlPj4gc3VicmVzb3VyY2VzOworICAgIFZlY3RvcjxSZWY8TGVnYWN5
V2ViQXJjaGl2ZT4+IHN1YmZyYW1lQXJjaGl2ZXM7CisgICAgVmVjdG9yPFJlZjxBcmNoaXZlUmVz
b3VyY2U+PiBzdWJyZXNvdXJjZXM7CiAgICAgSGFzaFNldDxVUkw+IHVuaXF1ZVN1YnJlc291cmNl
czsKIAotICAgIHNpemVfdCBub2Rlc1NpemUgPSBub2Rlcy5zaXplKCk7ICAgIAotICAgIGZvciAo
c2l6ZV90IGkgPSAwOyBpIDwgbm9kZXNTaXplOyArK2kpIHsKLSAgICAgICAgTm9kZSYgbm9kZSA9
ICpub2Rlc1tpXTsKKyAgICBmb3IgKGF1dG8mIG5vZGVQdHIgOiBub2RlcykgeworICAgICAgICBO
b2RlJiBub2RlID0gKm5vZGVQdHI7CiAgICAgICAgIEZyYW1lKiBjaGlsZEZyYW1lOwogICAgICAg
ICBpZiAoKGlzPEhUTUxGcmFtZUVsZW1lbnRCYXNlPihub2RlKSB8fCBpczxIVE1MT2JqZWN0RWxl
bWVudD4obm9kZSkpCiAgICAgICAgICAgICAmJiAoY2hpbGRGcmFtZSA9IGRvd25jYXN0PEhUTUxG
cmFtZU93bmVyRWxlbWVudD4obm9kZSkuY29udGVudEZyYW1lKCkpKSB7CiAgICAgICAgICAgICBp
ZiAoZnJhbWVGaWx0ZXIgJiYgIWZyYW1lRmlsdGVyKCpjaGlsZEZyYW1lKSkKICAgICAgICAgICAg
ICAgICBjb250aW51ZTsKLSAgICAgICAgICAgICAgICAKLSAgICAgICAgICAgIGlmIChSZWZQdHI8
TGVnYWN5V2ViQXJjaGl2ZT4gc3ViZnJhbWVBcmNoaXZlID0gY3JlYXRlKCpjaGlsZEZyYW1lLT5k
b2N1bWVudCgpLCBmcmFtZUZpbHRlcikpCi0gICAgICAgICAgICAgICAgc3ViZnJhbWVBcmNoaXZl
cy5hcHBlbmQoV1RGTW92ZShzdWJmcmFtZUFyY2hpdmUpKTsKKyAgICAgICAgICAgIGlmIChhdXRv
IHN1YmZyYW1lQXJjaGl2ZSA9IGNyZWF0ZSgqY2hpbGRGcmFtZS0+ZG9jdW1lbnQoKSwgZnJhbWVG
aWx0ZXIpKQorICAgICAgICAgICAgICAgIHN1YmZyYW1lQXJjaGl2ZXMuYXBwZW5kKHN1YmZyYW1l
QXJjaGl2ZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAg
ICAgICBMT0dfRVJST1IoIlVuYWJsZWQgdG8gYXJjaGl2ZSBzdWJmcmFtZSAlcyIsIGNoaWxkRnJh
bWUtPnRyZWUoKS51bmlxdWVOYW1lKCkuc3RyaW5nKCkudXRmOCgpLmRhdGEoKSk7CiAKICAgICAg
ICAgfSBlbHNlIHsKICAgICAgICAgICAgIExpc3RIYXNoU2V0PFVSTD4gc3VicmVzb3VyY2VVUkxz
OwogICAgICAgICAgICAgbm9kZS5nZXRTdWJyZXNvdXJjZVVSTHMoc3VicmVzb3VyY2VVUkxzKTsK
LSAgICAgICAgICAgIAotICAgICAgICAgICAgRG9jdW1lbnRMb2FkZXIqIGRvY3VtZW50TG9hZGVy
ID0gZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKIAotICAgICAgICAgICAgZm9yIChj
b25zdCBhdXRvJiBzdWJyZXNvdXJjZVVSTCA6IHN1YnJlc291cmNlVVJMcykgeworICAgICAgICAg
ICAgQVNTRVJUKGZyYW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkpOworICAgICAgICAgICAg
YXV0byYgZG9jdW1lbnRMb2FkZXIgPSAqZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsK
KworICAgICAgICAgICAgZm9yIChhdXRvJiBzdWJyZXNvdXJjZVVSTCA6IHN1YnJlc291cmNlVVJM
cykgewogICAgICAgICAgICAgICAgIGlmICh1bmlxdWVTdWJyZXNvdXJjZXMuY29udGFpbnMoc3Vi
cmVzb3VyY2VVUkwpKQogICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKIAogICAgICAgICAg
ICAgICAgIHVuaXF1ZVN1YnJlc291cmNlcy5hZGQoc3VicmVzb3VyY2VVUkwpOwogCi0gICAgICAg
ICAgICAgICAgaWYgKFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IHJlc291cmNlID0gZG9jdW1lbnRM
b2FkZXItPnN1YnJlc291cmNlKHN1YnJlc291cmNlVVJMKSkgewotICAgICAgICAgICAgICAgICAg
ICBzdWJyZXNvdXJjZXMuYXBwZW5kKFdURk1vdmUocmVzb3VyY2UpKTsKKyAgICAgICAgICAgICAg
ICBpZiAoYXV0byByZXNvdXJjZSA9IGRvY3VtZW50TG9hZGVyLnN1YnJlc291cmNlKHN1YnJlc291
cmNlVVJMKSkgeworICAgICAgICAgICAgICAgICAgICBzdWJyZXNvdXJjZXMuYXBwZW5kKHJlc291
cmNlLnJlbGVhc2VOb25OdWxsKCkpOwogICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAg
ICAgICAgICAgICAgICB9CiAKQEAgLTUyOCwxMCArNTE3LDkgQEAgUmVmUHRyPExlZ2FjeVdlYkFy
Y2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShjb25zdCBTdHJpbmcmIG1hcmt1cFN0cmlu
ZywgRnIKICNpZiBFTkFCTEUoQ0FDSEVfUEFSVElUSU9OSU5HKQogICAgICAgICAgICAgICAgIHJl
cXVlc3Quc2V0RG9tYWluRm9yQ2FjaGVQYXJ0aXRpb24oZnJhbWUuZG9jdW1lbnQoKS0+dG9wT3Jp
Z2luKCktPmRvbWFpbkZvckNhY2hlUGFydGl0aW9uKCkpOwogI2VuZGlmCi0gICAgICAgICAgICAg
ICAgQ2FjaGVkUmVzb3VyY2UqIGNhY2hlZFJlc291cmNlID0gTWVtb3J5Q2FjaGU6OnNpbmdsZXRv
bigpLnJlc291cmNlRm9yUmVxdWVzdChyZXF1ZXN0LCBmcmFtZS5wYWdlKCktPnNlc3Npb25JRCgp
KTsKLSAgICAgICAgICAgICAgICBpZiAoY2FjaGVkUmVzb3VyY2UpIHsKLSAgICAgICAgICAgICAg
ICAgICAgaWYgKFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IHJlc291cmNlID0gQXJjaGl2ZVJlc291
cmNlOjpjcmVhdGUoY2FjaGVkUmVzb3VyY2UtPnJlc291cmNlQnVmZmVyKCksIHN1YnJlc291cmNl
VVJMLCBjYWNoZWRSZXNvdXJjZS0+cmVzcG9uc2UoKSkpIHsKLSAgICAgICAgICAgICAgICAgICAg
ICAgIHN1YnJlc291cmNlcy5hcHBlbmQoV1RGTW92ZShyZXNvdXJjZSkpOworICAgICAgICAgICAg
ICAgIGlmIChhdXRvKiBjYWNoZWRSZXNvdXJjZSA9IE1lbW9yeUNhY2hlOjpzaW5nbGV0b24oKS5y
ZXNvdXJjZUZvclJlcXVlc3QocmVxdWVzdCwgZnJhbWUucGFnZSgpLT5zZXNzaW9uSUQoKSkpIHsK
KyAgICAgICAgICAgICAgICAgICAgaWYgKGF1dG8gcmVzb3VyY2UgPSBBcmNoaXZlUmVzb3VyY2U6
OmNyZWF0ZShjYWNoZWRSZXNvdXJjZS0+cmVzb3VyY2VCdWZmZXIoKSwgc3VicmVzb3VyY2VVUkws
IGNhY2hlZFJlc291cmNlLT5yZXNwb25zZSgpKSkgeworICAgICAgICAgICAgICAgICAgICAgICAg
c3VicmVzb3VyY2VzLmFwcGVuZChyZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICAgICAg
ICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAg
ICAgICAgICAgfQpAQCAtNTQzLDE3ICs1MzEsMTcgQEAgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+
IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShjb25zdCBTdHJpbmcmIG1hcmt1cFN0cmluZywgRnIK
ICAgICB9CiAKICAgICAvLyBBZGQgZmF2aWNvbiBpZiBvbmUgZXhpc3RzIGZvciB0aGlzIHBhZ2Us
IGlmIHdlIGFyZSBhcmNoaXZpbmcgdGhlIGVudGlyZSBwYWdlLgotICAgIGlmIChub2Rlc1NpemUg
JiYgbm9kZXNbMF0tPmlzRG9jdW1lbnROb2RlKCkgJiYgaWNvbkRhdGFiYXNlKCkuaXNFbmFibGVk
KCkpIHsKLSAgICAgICAgY29uc3QgU3RyaW5nJiBpY29uVVJMID0gaWNvbkRhdGFiYXNlKCkuc3lu
Y2hyb25vdXNJY29uVVJMRm9yUGFnZVVSTChyZXNwb25zZVVSTCk7CisgICAgaWYgKCFub2Rlcy5p
c0VtcHR5KCkgJiYgbm9kZXNbMF0tPmlzRG9jdW1lbnROb2RlKCkgJiYgaWNvbkRhdGFiYXNlKCku
aXNFbmFibGVkKCkpIHsKKyAgICAgICAgYXV0byBpY29uVVJMID0gaWNvbkRhdGFiYXNlKCkuc3lu
Y2hyb25vdXNJY29uVVJMRm9yUGFnZVVSTChyZXNwb25zZVVSTCk7CiAgICAgICAgIGlmICghaWNv
blVSTC5pc0VtcHR5KCkgJiYgaWNvbkRhdGFiYXNlKCkuc3luY2hyb25vdXNJY29uRGF0YUtub3du
Rm9ySWNvblVSTChpY29uVVJMKSkgewotICAgICAgICAgICAgaWYgKEltYWdlKiBpY29uSW1hZ2Ug
PSBpY29uRGF0YWJhc2UoKS5zeW5jaHJvbm91c0ljb25Gb3JQYWdlVVJMKHJlc3BvbnNlVVJMLCBJ
bnRTaXplKDE2LCAxNikpKSB7CisgICAgICAgICAgICBpZiAoYXV0byogaWNvbkltYWdlID0gaWNv
bkRhdGFiYXNlKCkuc3luY2hyb25vdXNJY29uRm9yUGFnZVVSTChyZXNwb25zZVVSTCwgSW50U2l6
ZSgxNiwgMTYpKSkgewogICAgICAgICAgICAgICAgIGlmIChhdXRvIHJlc291cmNlID0gQXJjaGl2
ZVJlc291cmNlOjpjcmVhdGUoaWNvbkltYWdlLT5kYXRhKCksIFVSTChQYXJzZWRVUkxTdHJpbmcs
IGljb25VUkwpLCAiaW1hZ2UveC1pY29uIiwgIiIsICIiKSkKLSAgICAgICAgICAgICAgICAgICAg
c3VicmVzb3VyY2VzLmFwcGVuZChXVEZNb3ZlKHJlc291cmNlKSk7CisgICAgICAgICAgICAgICAg
ICAgIHN1YnJlc291cmNlcy5hcHBlbmQocmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSk7CiAgICAg
ICAgICAgICB9CiAgICAgICAgIH0KICAgICB9CiAKLSAgICByZXR1cm4gY3JlYXRlKFdURk1vdmUo
bWFpblJlc291cmNlKSwgV1RGTW92ZShzdWJyZXNvdXJjZXMpLCBXVEZNb3ZlKHN1YmZyYW1lQXJj
aGl2ZXMpKTsKKyAgICByZXR1cm4gY3JlYXRlKG1haW5SZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgp
LCBXVEZNb3ZlKHN1YnJlc291cmNlcyksIFdURk1vdmUoc3ViZnJhbWVBcmNoaXZlcykpOwogfQog
CiBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlRnJvbVNl
bGVjdGlvbihGcmFtZSogZnJhbWUpCkBAIC01NjEsNyArNTQ5LDcgQEAgUmVmUHRyPExlZ2FjeVdl
YkFyY2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZUZyb21TZWxlY3Rpb24oRnJhbWUqIGZy
YW1lKQogICAgIGlmICghZnJhbWUpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgRG9j
dW1lbnQqIGRvY3VtZW50ID0gZnJhbWUtPmRvY3VtZW50KCk7CisgICAgYXV0byogZG9jdW1lbnQg
PSBmcmFtZS0+ZG9jdW1lbnQoKTsKICAgICBpZiAoIWRvY3VtZW50KQogICAgICAgICByZXR1cm4g
bnVsbHB0cjsKIApAQCAtNTY5LDEyICs1NTcsMTAgQEAgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+
IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZUZyb21TZWxlY3Rpb24oRnJhbWUqIGZyYW1lKQogICAg
IGJ1aWxkZXIuYXBwZW5kKGRvY3VtZW50VHlwZVN0cmluZygqZG9jdW1lbnQpKTsKIAogICAgIFZl
Y3RvcjxOb2RlKj4gbm9kZUxpc3Q7Ci0gICAgUmVmUHRyPFJhbmdlPiBzZWxlY3Rpb25SYW5nZSA9
IGZyYW1lLT5zZWxlY3Rpb24oKS50b05vcm1hbGl6ZWRSYW5nZSgpOwotICAgIGlmIChzZWxlY3Rp
b25SYW5nZSkKKyAgICBpZiAoYXV0byBzZWxlY3Rpb25SYW5nZSA9IGZyYW1lLT5zZWxlY3Rpb24o
KS50b05vcm1hbGl6ZWRSYW5nZSgpKQogICAgICAgICBidWlsZGVyLmFwcGVuZChjcmVhdGVNYXJr
dXAoKnNlbGVjdGlvblJhbmdlLCAmbm9kZUxpc3QsIEFubm90YXRlRm9ySW50ZXJjaGFuZ2UpKTsK
IAotICAgIFN0cmluZyBtYXJrdXBTdHJpbmcgPSBidWlsZGVyLnRvU3RyaW5nKCk7Ci0gICAgUmVm
UHRyPExlZ2FjeVdlYkFyY2hpdmU+IGFyY2hpdmUgPSBjcmVhdGUobWFya3VwU3RyaW5nLCAqZnJh
bWUsIG5vZGVMaXN0LCBudWxscHRyKTsKKyAgICBhdXRvIGFyY2hpdmUgPSBjcmVhdGUoYnVpbGRl
ci50b1N0cmluZygpLCAqZnJhbWUsIG5vZGVMaXN0LCBudWxscHRyKTsKICAgICAKICAgICBpZiAo
IWRvY3VtZW50LT5pc0ZyYW1lU2V0KCkpCiAgICAgICAgIHJldHVybiBhcmNoaXZlOwpAQCAtNTg0
LDcgKzU3MCwxMSBAQCBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6
Y3JlYXRlRnJvbVNlbGVjdGlvbihGcmFtZSogZnJhbWUpCiAgICAgU3RyaW5nIGlmcmFtZU1hcmt1
cCA9ICI8aWZyYW1lIGZyYW1lYm9yZGVyPVwibm9cIiBtYXJnaW53aWR0aD1cIjBcIiBtYXJnaW5o
ZWlnaHQ9XCIwXCIgd2lkdGg9XCI5OCUlXCIgaGVpZ2h0PVwiOTglJVwiIHNyYz1cIiIgKyBmcmFt
ZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKS0+cmVzcG9uc2UoKS51cmwoKS5zdHJpbmcoKSAr
ICJcIj48L2lmcmFtZT4iOwogICAgIGF1dG8gaWZyYW1lUmVzb3VyY2UgPSBBcmNoaXZlUmVzb3Vy
Y2U6OmNyZWF0ZSh1dGY4QnVmZmVyKGlmcmFtZU1hcmt1cCksIGJsYW5rVVJMKCksICJ0ZXh0L2h0
bWwiLCAiVVRGLTgiLCBTdHJpbmcoKSk7CiAKLSAgICByZXR1cm4gY3JlYXRlKFdURk1vdmUoaWZy
YW1lUmVzb3VyY2UpLCBWZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+KCksIFZlY3RvcjxS
ZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4+IHsgYXJjaGl2ZSB9KTsKKyAgICBWZWN0b3I8UmVmPExl
Z2FjeVdlYkFyY2hpdmU+PiBzdWJmcmFtZUFyY2hpdmVzOworICAgIHN1YmZyYW1lQXJjaGl2ZXMu
cmVzZXJ2ZUluaXRpYWxDYXBhY2l0eSgxKTsKKyAgICBzdWJmcmFtZUFyY2hpdmVzLnVuY2hlY2tl
ZEFwcGVuZChhcmNoaXZlLnJlbGVhc2VOb25OdWxsKCkpOworCisgICAgcmV0dXJuIGNyZWF0ZShp
ZnJhbWVSZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpLCB7IH0sIFdURk1vdmUoc3ViZnJhbWVBcmNo
aXZlcykpOwogfQogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2
ZS9jZi9MZWdhY3lXZWJBcmNoaXZlLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9j
Zi9MZWdhY3lXZWJBcmNoaXZlLmgKaW5kZXggMzVkZGYzYzJhNTljMDg2MzNiZGQ5YjIxMzQ3YjM2
ZjhkMjc2MmMxYS4uMmMwMGIwODk2ZDkyM2ZkOTIwNjZhYmY3YmNiZDJlZmRjOTFhZmU3ZSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvY2YvTGVnYWN5V2ViQXJjaGl2
ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL2NmL0xlZ2FjeVdlYkFyY2hp
dmUuaApAQCAtMzcsMjMgKzM3LDI1IEBAIGNsYXNzIEZyYW1lOwogY2xhc3MgTm9kZTsKIGNsYXNz
IFJhbmdlOwogCi1jbGFzcyBMZWdhY3lXZWJBcmNoaXZlIDogcHVibGljIEFyY2hpdmUgeworY2xh
c3MgTGVnYWN5V2ViQXJjaGl2ZSBmaW5hbCA6IHB1YmxpYyBBcmNoaXZlIHsKIHB1YmxpYzoKICAg
ICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmPExlZ2FjeVdlYkFyY2hpdmU+IGNyZWF0ZSgpOwog
ICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gY3JlYXRl
KFNoYXJlZEJ1ZmZlciYpOwogICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBSZWZQdHI8TGVnYWN5
V2ViQXJjaGl2ZT4gY3JlYXRlKGNvbnN0IFVSTCYsIFNoYXJlZEJ1ZmZlciYpOwotICAgIFdFQkNP
UkVfRVhQT1JUIHN0YXRpYyBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gY3JlYXRlKFJlZlB0cjxB
cmNoaXZlUmVzb3VyY2U+JiYgbWFpblJlc291cmNlLCBWZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNv
dXJjZT4+JiYgc3VicmVzb3VyY2VzLCBWZWN0b3I8UmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+PiYm
IHN1YmZyYW1lQXJjaGl2ZXMpOworICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBSZWY8TGVnYWN5
V2ViQXJjaGl2ZT4gY3JlYXRlKFJlZjxBcmNoaXZlUmVzb3VyY2U+JiYgbWFpblJlc291cmNlLCBW
ZWN0b3I8UmVmPEFyY2hpdmVSZXNvdXJjZT4+JiYgc3VicmVzb3VyY2VzLCBWZWN0b3I8UmVmPExl
Z2FjeVdlYkFyY2hpdmU+PiYmIHN1YmZyYW1lQXJjaGl2ZXMpOwogICAgIFdFQkNPUkVfRVhQT1JU
IHN0YXRpYyBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gY3JlYXRlKE5vZGUmLCBzdGQ6OmZ1bmN0
aW9uPGJvb2woRnJhbWUmKT4gZnJhbWVGaWx0ZXIgPSBudWxscHRyKTsKICAgICBXRUJDT1JFX0VY
UE9SVCBzdGF0aWMgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IGNyZWF0ZShGcmFtZSYpOwogICAg
IFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gY3JlYXRlRnJv
bVNlbGVjdGlvbihGcmFtZSopOwogICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBSZWZQdHI8TGVn
YWN5V2ViQXJjaGl2ZT4gY3JlYXRlKFJhbmdlKik7CiAKLSAgICBUeXBlIHR5cGUoKSBjb25zdCBv
dmVycmlkZTsKLQogICAgIFdFQkNPUkVfRVhQT1JUIFJldGFpblB0cjxDRkRhdGFSZWY+IHJhd0Rh
dGFSZXByZXNlbnRhdGlvbigpOwogCiBwcml2YXRlOgotICAgIExlZ2FjeVdlYkFyY2hpdmUoKSB7
IH0KKyAgICBMZWdhY3lXZWJBcmNoaXZlKCkgPSBkZWZhdWx0OworCisgICAgYm9vbCBzaG91bGRV
c2VNYWluUmVzb3VyY2VFbmNvZGluZygpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KKyAg
ICBib29sIHNob3VsZFVzZU1haW5SZXNvdXJjZVVSTCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIHRy
dWU7IH0KKyAgICBib29sIHNob3VsZExvYWRGcm9tQXJjaGl2ZU9ubHkoKSBjb25zdCBmaW5hbCB7
IHJldHVybiBmYWxzZTsgfQogCiAgICAgZW51bSBNYWluUmVzb3VyY2VTdGF0dXMgeyBTdWJyZXNv
dXJjZSwgTWFpblJlc291cmNlIH07CiAKQEAgLTYyLDcgKzY0LDcgQEAgcHJpdmF0ZToKICAgICBz
dGF0aWMgUmVzb3VyY2VSZXNwb25zZSBjcmVhdGVSZXNvdXJjZVJlc3BvbnNlRnJvbU1hY0FyY2hp
dmVkRGF0YShDRkRhdGFSZWYpOwogICAgIHN0YXRpYyBSZXNvdXJjZVJlc3BvbnNlIGNyZWF0ZVJl
c291cmNlUmVzcG9uc2VGcm9tUHJvcGVydHlMaXN0RGF0YShDRkRhdGFSZWYsIENGU3RyaW5nUmVm
IHJlc3BvbnNlRGF0YVR5cGUpOwogICAgIHN0YXRpYyBSZXRhaW5QdHI8Q0ZEYXRhUmVmPiBjcmVh
dGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7Ci0g
ICAgc3RhdGljIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IGNyZWF0ZVByb3BlcnR5TGlzdFJl
cHJlc2VudGF0aW9uKEFyY2hpdmUqKTsKKyAgICBzdGF0aWMgUmV0YWluUHRyPENGRGljdGlvbmFy
eVJlZj4gY3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24oQXJjaGl2ZSYpOwogICAgIHN0
YXRpYyBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNl
bnRhdGlvbihBcmNoaXZlUmVzb3VyY2UqLCBNYWluUmVzb3VyY2VTdGF0dXMpOwogCiAgICAgYm9v
bCBleHRyYWN0KENGRGljdGlvbmFyeVJlZik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRNTEFyY2hpdmUuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2FyY2hpdmUvbWh0bWwvTUhUTUxBcmNoaXZlLmNwcAppbmRleCBlMWYzYWQwNmE1ZjdmMmI4
MDU1MzEwNDVkYTRiODZjMmQzYzgyZGQzLi4zZWZiMGFhOGM3M2QyMTRkM2Y1NTQwN2JmNDhhYWYw
ODU0ZTc5ZjVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9taHRt
bC9NSFRNTEFyY2hpdmUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL21o
dG1sL01IVE1MQXJjaGl2ZS5jcHAKQEAgLTEzMCw3ICsxMzAsNyBAQCBSZWZQdHI8TUhUTUxBcmNo
aXZlPiBNSFRNTEFyY2hpdmU6OmNyZWF0ZShjb25zdCBVUkwmIHVybCwgU2hhcmVkQnVmZmVyJiBk
YXRhKQogICAgIHJldHVybiBtYWluQXJjaGl2ZTsKIH0KIAotUGFzc1JlZlB0cjxTaGFyZWRCdWZm
ZXI+IE1IVE1MQXJjaGl2ZTo6Z2VuZXJhdGVNSFRNTERhdGEoUGFnZSogcGFnZSkKK1JlZlB0cjxT
aGFyZWRCdWZmZXI+IE1IVE1MQXJjaGl2ZTo6Z2VuZXJhdGVNSFRNTERhdGEoUGFnZSogcGFnZSkK
IHsKICAgICBWZWN0b3I8UGFnZVNlcmlhbGl6ZXI6OlJlc291cmNlPiByZXNvdXJjZXM7CiAgICAg
UGFnZVNlcmlhbGl6ZXIgcGFnZVNlcmlhbGl6ZXIoJnJlc291cmNlcyk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRNTEFyY2hpdmUuaCBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL21odG1sL01IVE1MQXJjaGl2ZS5oCmluZGV4IGNhMjAw
MDM3OWJkZjQxMmY0ZTQxMjRlYWYyMWFiYTY2YTE1ZTM0YjIuLmUyYWRjZGYxMTE4NmI2ZmYxYjBi
ODNjNzdlOWFhOWIzODllYWQyYTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9h
cmNoaXZlL21odG1sL01IVE1MQXJjaGl2ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9h
cmNoaXZlL21odG1sL01IVE1MQXJjaGl2ZS5oCkBAIC00MCwyMiArNDAsMjMgQEAgY2xhc3MgTUhU
TUxQYXJzZXI7CiBjbGFzcyBQYWdlOwogY2xhc3MgU2hhcmVkQnVmZmVyOwogCi1jbGFzcyBNSFRN
TEFyY2hpdmUgOiBwdWJsaWMgQXJjaGl2ZSB7CitjbGFzcyBNSFRNTEFyY2hpdmUgZmluYWwgOiBw
dWJsaWMgQXJjaGl2ZSB7CiBwdWJsaWM6Ci0gICAgVHlwZSB0eXBlKCkgY29uc3Qgb3ZlcnJpZGUg
eyByZXR1cm4gTUhUTUw7IH0KLQogICAgIHN0YXRpYyBSZWY8TUhUTUxBcmNoaXZlPiBjcmVhdGUo
KTsKICAgICBzdGF0aWMgUmVmUHRyPE1IVE1MQXJjaGl2ZT4gY3JlYXRlKGNvbnN0IFVSTCYsIFNo
YXJlZEJ1ZmZlciYpOwogCi0gICAgc3RhdGljIFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBnZW5l
cmF0ZU1IVE1MRGF0YShQYWdlKik7CisgICAgc3RhdGljIFJlZlB0cjxTaGFyZWRCdWZmZXI+IGdl
bmVyYXRlTUhUTUxEYXRhKFBhZ2UqKTsKIAogICAgIHZpcnR1YWwgfk1IVE1MQXJjaGl2ZSgpOwog
CiBwcml2YXRlOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZ2VuZXJhdGVN
SFRNTERhdGEoUGFnZSosIGJvb2wgdXNlQmluYXJ5RW5jb2RpbmcpOwotCiAgICAgZnJpZW5kIGNs
YXNzIE1IVE1MUGFyc2VyOworCiAgICAgTUhUTUxBcmNoaXZlKCk7CisKKyAgICBib29sIHNob3Vs
ZFVzZU1haW5SZXNvdXJjZUVuY29kaW5nKCkgY29uc3QgZmluYWwgeyByZXR1cm4gZmFsc2U7IH0K
KyAgICBib29sIHNob3VsZFVzZU1haW5SZXNvdXJjZVVSTCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJu
IGZhbHNlOyB9CisgICAgYm9vbCBzaG91bGRMb2FkRnJvbUFyY2hpdmVPbmx5KCkgY29uc3QgZmlu
YWwgeyByZXR1cm4gdHJ1ZTsgfQogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZENTU1N0eWxlU2hlZXQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZENTU1N0eWxlU2hlZXQuY3BwCmlu
ZGV4IDhiZjA2OTFhYzQ5NjY1NTE4Y2ZhOGFiNWU5MTEwNTA3ZGVkNzcwNjkuLmFmNDBjYzIwNGFk
MDQ3Zjg1YzIzNDE3Y2JjZTdmMTk3ZTNiZTYyNDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5jcHAKQEAgLTMsNyArMyw3IEBACiAg
ICAgQ29weXJpZ2h0IChDKSAyMDAxIERpcmsgTXVlbGxlciAobXVlbGxlckBrZGUub3JnKQogICAg
IENvcHlyaWdodCAoQykgMjAwMiBXYWxkbyBCYXN0aWFuIChiYXN0aWFuQGtkZS5vcmcpCiAgICAg
Q29weXJpZ2h0IChDKSAyMDA2IFNhbXVlbCBXZWluaWcgKHNhbS53ZWluaWdAZ21haWwuY29tKQot
ICAgIENvcHlyaWdodCAoQykgMjAwNCwgMjAwNSwgMjAwNiBBcHBsZSBJbmMuCisgICAgQ29weXJp
Z2h0IChDKSAyMDA0LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogCiAgICAg
VGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFu
ZC9vcgogICAgIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdl
bmVyYWwgUHVibGljCkBAIC0xOSw5ICsxOSw2IEBACiAgICAgYWxvbmcgd2l0aCB0aGlzIGxpYnJh
cnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KICAgICB0aGUg
RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRo
IEZsb29yLAogICAgIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgotCi0gICAgVGhpcyBjbGFz
cyBwcm92aWRlcyBhbGwgZnVuY3Rpb25hbGl0eSBuZWVkZWQgZm9yIGxvYWRpbmcgaW1hZ2VzLCBz
dHlsZSBzaGVldHMgYW5kIGh0bWwKLSAgICBwYWdlcyBmcm9tIHRoZSB3ZWIuIEl0IGhhcyBhIG1l
bW9yeSBjYWNoZSBmb3IgdGhlc2Ugb2JqZWN0cy4KICovCiAKICNpbmNsdWRlICJjb25maWcuaCIK
QEAgLTE1Niw3ICsxNTMsNyBAQCB2b2lkIENhY2hlZENTU1N0eWxlU2hlZXQ6OmRlc3Ryb3lEZWNv
ZGVkRGF0YSgpCiAgICAgc2V0RGVjb2RlZFNpemUoMCk7CiB9CiAKLVBhc3NSZWZQdHI8U3R5bGVT
aGVldENvbnRlbnRzPiBDYWNoZWRDU1NTdHlsZVNoZWV0OjpyZXN0b3JlUGFyc2VkU3R5bGVTaGVl
dChjb25zdCBDU1NQYXJzZXJDb250ZXh0JiBjb250ZXh0LCBDYWNoZVBvbGljeSBjYWNoZVBvbGlj
eSkKK1JlZlB0cjxTdHlsZVNoZWV0Q29udGVudHM+IENhY2hlZENTU1N0eWxlU2hlZXQ6OnJlc3Rv
cmVQYXJzZWRTdHlsZVNoZWV0KGNvbnN0IENTU1BhcnNlckNvbnRleHQmIGNvbnRleHQsIENhY2hl
UG9saWN5IGNhY2hlUG9saWN5KQogewogICAgIGlmICghbV9wYXJzZWRTdHlsZVNoZWV0Q2FjaGUp
CiAgICAgICAgIHJldHVybiBudWxscHRyOwpAQCAtMTgwLDcgKzE3Nyw3IEBAIFBhc3NSZWZQdHI8
U3R5bGVTaGVldENvbnRlbnRzPiBDYWNoZWRDU1NTdHlsZVNoZWV0OjpyZXN0b3JlUGFyc2VkU3R5
bGVTaGVldChjb25zCiAKIHZvaWQgQ2FjaGVkQ1NTU3R5bGVTaGVldDo6c2F2ZVBhcnNlZFN0eWxl
U2hlZXQoUmVmPFN0eWxlU2hlZXRDb250ZW50cz4mJiBzaGVldCkKIHsKLSAgICBBU1NFUlQoc2hl
ZXQuZ2V0KCkuaXNDYWNoZWFibGUoKSk7CisgICAgQVNTRVJUKHNoZWV0LT5pc0NhY2hlYWJsZSgp
KTsKIAogICAgIGlmIChtX3BhcnNlZFN0eWxlU2hlZXRDYWNoZSkKICAgICAgICAgbV9wYXJzZWRT
dHlsZVNoZWV0Q2FjaGUtPnJlbW92ZWRGcm9tTWVtb3J5Q2FjaGUoKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmggYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5oCmluZGV4IDNjOGFlMjhk
ZDI3YWVmODBhZTJkZWViNGEzMzZlNzQ4NTRlN2VmMGMuLmMzM2FhMmU0MDg1NTM4YmM3YjQ1NmY0
MTYzOWMyY2MxODc5Zjg3NGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNo
ZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hl
L0NhY2hlZENTU1N0eWxlU2hlZXQuaApAQCAtMiw3ICsyLDcgQEAKICAgICBDb3B5cmlnaHQgKEMp
IDE5OTggTGFycyBLbm9sbCAoa25vbGxAbXBpLWhkLm1wZy5kZSkKICAgICBDb3B5cmlnaHQgKEMp
IDIwMDEgRGlyayBNdWVsbGVyIDxtdWVsbGVyQGtkZS5vcmc+CiAgICAgQ29weXJpZ2h0IChDKSAy
MDA2IFNhbXVlbCBXZWluaWcgKHNhbS53ZWluaWdAZ21haWwuY29tKQotICAgIENvcHlyaWdodCAo
QykgMjAwNCwgMjAwNSwgMjAwNiwgMjAwNywgMjAwOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgICAgQ29weXJpZ2h0IChDKSAyMDA0LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgogCiAgICAgVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4g
cmVkaXN0cmlidXRlIGl0IGFuZC9vcgogICAgIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2Yg
dGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCkBAIC0xOCw5ICsxOCw2IEBACiAgICAgYWxv
bmcgd2l0aCB0aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwg
d3JpdGUgdG8KICAgICB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFu
a2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAogICAgIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNB
LgotCi0gICAgVGhpcyBjbGFzcyBwcm92aWRlcyBhbGwgZnVuY3Rpb25hbGl0eSBuZWVkZWQgZm9y
IGxvYWRpbmcgaW1hZ2VzLCBzdHlsZSBzaGVldHMgYW5kIGh0bWwKLSAgICBwYWdlcyBmcm9tIHRo
ZSB3ZWIuIEl0IGhhcyBhIG1lbW9yeSBjYWNoZSBmb3IgdGhlc2Ugb2JqZWN0cy4KICovCiAKICNw
cmFnbWEgb25jZQpAQCAtMjksNDQgKzI2LDQ0IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAot
ICAgIGNsYXNzIENhY2hlZFJlc291cmNlQ2xpZW50OwotICAgIGNsYXNzIFN0eWxlU2hlZXRDb250
ZW50czsKLSAgICBjbGFzcyBUZXh0UmVzb3VyY2VEZWNvZGVyOwotICAgIHN0cnVjdCBDU1NQYXJz
ZXJDb250ZXh0OworY2xhc3MgU3R5bGVTaGVldENvbnRlbnRzOworY2xhc3MgVGV4dFJlc291cmNl
RGVjb2RlcjsKKworc3RydWN0IENTU1BhcnNlckNvbnRleHQ7CiAKLSAgICBjbGFzcyBDYWNoZWRD
U1NTdHlsZVNoZWV0IGZpbmFsIDogcHVibGljIENhY2hlZFJlc291cmNlIHsKLSAgICBwdWJsaWM6
Ci0gICAgICAgIENhY2hlZENTU1N0eWxlU2hlZXQoQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0JiYsIFNl
c3Npb25JRCk7Ci0gICAgICAgIHZpcnR1YWwgfkNhY2hlZENTU1N0eWxlU2hlZXQoKTsKK2NsYXNz
IENhY2hlZENTU1N0eWxlU2hlZXQgZmluYWwgOiBwdWJsaWMgQ2FjaGVkUmVzb3VyY2UgeworcHVi
bGljOgorICAgIENhY2hlZENTU1N0eWxlU2hlZXQoQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0JiYsIFNl
c3Npb25JRCk7CisgICAgdmlydHVhbCB+Q2FjaGVkQ1NTU3R5bGVTaGVldCgpOwogCi0gICAgICAg
IGVudW0gY2xhc3MgTUlNRVR5cGVDaGVjayB7IFN0cmljdCwgTGF4IH07Ci0gICAgICAgIGNvbnN0
IFN0cmluZyBzaGVldFRleHQoTUlNRVR5cGVDaGVjayA9IE1JTUVUeXBlQ2hlY2s6OlN0cmljdCwg
Ym9vbCogaGFzVmFsaWRNSU1FVHlwZSA9IG51bGxwdHIpIGNvbnN0OworICAgIGVudW0gY2xhc3Mg
TUlNRVR5cGVDaGVjayB7IFN0cmljdCwgTGF4IH07CisgICAgY29uc3QgU3RyaW5nIHNoZWV0VGV4
dChNSU1FVHlwZUNoZWNrID0gTUlNRVR5cGVDaGVjazo6U3RyaWN0LCBib29sKiBoYXNWYWxpZE1J
TUVUeXBlID0gbnVsbHB0cikgY29uc3Q7CiAKLSAgICAgICAgUGFzc1JlZlB0cjxTdHlsZVNoZWV0
Q29udGVudHM+IHJlc3RvcmVQYXJzZWRTdHlsZVNoZWV0KGNvbnN0IENTU1BhcnNlckNvbnRleHQm
LCBDYWNoZVBvbGljeSk7Ci0gICAgICAgIHZvaWQgc2F2ZVBhcnNlZFN0eWxlU2hlZXQoUmVmPFN0
eWxlU2hlZXRDb250ZW50cz4mJik7CisgICAgUmVmUHRyPFN0eWxlU2hlZXRDb250ZW50cz4gcmVz
dG9yZVBhcnNlZFN0eWxlU2hlZXQoY29uc3QgQ1NTUGFyc2VyQ29udGV4dCYsIENhY2hlUG9saWN5
KTsKKyAgICB2b2lkIHNhdmVQYXJzZWRTdHlsZVNoZWV0KFJlZjxTdHlsZVNoZWV0Q29udGVudHM+
JiYpOwogCi0gICAgcHJpdmF0ZToKLSAgICAgICAgYm9vbCBjYW5Vc2VTaGVldChNSU1FVHlwZUNo
ZWNrLCBib29sKiBoYXNWYWxpZE1JTUVUeXBlKSBjb25zdDsKLSAgICAgICAgYm9vbCBtYXlUcnlS
ZXBsYWNlRW5jb2RlZERhdGEoKSBjb25zdCBmaW5hbCB7IHJldHVybiB0cnVlOyB9Citwcml2YXRl
OgorICAgIGJvb2wgY2FuVXNlU2hlZXQoTUlNRVR5cGVDaGVjaywgYm9vbCogaGFzVmFsaWRNSU1F
VHlwZSkgY29uc3Q7CisgICAgYm9vbCBtYXlUcnlSZXBsYWNlRW5jb2RlZERhdGEoKSBjb25zdCBm
aW5hbCB7IHJldHVybiB0cnVlOyB9CiAKLSAgICAgICAgdm9pZCBkaWRBZGRDbGllbnQoQ2FjaGVk
UmVzb3VyY2VDbGllbnQmKSBmaW5hbDsKKyAgICB2b2lkIGRpZEFkZENsaWVudChDYWNoZWRSZXNv
dXJjZUNsaWVudCYpIGZpbmFsOwogCi0gICAgICAgIHZvaWQgc2V0RW5jb2RpbmcoY29uc3QgU3Ry
aW5nJikgZmluYWw7Ci0gICAgICAgIFN0cmluZyBlbmNvZGluZygpIGNvbnN0IGZpbmFsOwotICAg
ICAgICBjb25zdCBUZXh0UmVzb3VyY2VEZWNvZGVyKiB0ZXh0UmVzb3VyY2VEZWNvZGVyKCkgY29u
c3QgZmluYWwgeyByZXR1cm4gbV9kZWNvZGVyLmdldCgpOyB9Ci0gICAgICAgIHZvaWQgZmluaXNo
TG9hZGluZyhTaGFyZWRCdWZmZXIqKSBmaW5hbDsKLSAgICAgICAgdm9pZCBkZXN0cm95RGVjb2Rl
ZERhdGEoKSBmaW5hbDsKKyAgICB2b2lkIHNldEVuY29kaW5nKGNvbnN0IFN0cmluZyYpIGZpbmFs
OworICAgIFN0cmluZyBlbmNvZGluZygpIGNvbnN0IGZpbmFsOworICAgIGNvbnN0IFRleHRSZXNv
dXJjZURlY29kZXIqIHRleHRSZXNvdXJjZURlY29kZXIoKSBjb25zdCBmaW5hbCB7IHJldHVybiBt
X2RlY29kZXIuZ2V0KCk7IH0KKyAgICB2b2lkIGZpbmlzaExvYWRpbmcoU2hhcmVkQnVmZmVyKikg
ZmluYWw7CisgICAgdm9pZCBkZXN0cm95RGVjb2RlZERhdGEoKSBmaW5hbDsKIAotICAgICAgICB2
b2lkIHNldEJvZHlEYXRhRnJvbShjb25zdCBDYWNoZWRSZXNvdXJjZSYpIGZpbmFsOworICAgIHZv
aWQgc2V0Qm9keURhdGFGcm9tKGNvbnN0IENhY2hlZFJlc291cmNlJikgZmluYWw7CiAKLSAgICBw
cm90ZWN0ZWQ6Ci0gICAgICAgIHZvaWQgY2hlY2tOb3RpZnkoKSBmaW5hbDsKK3Byb3RlY3RlZDoK
KyAgICB2b2lkIGNoZWNrTm90aWZ5KCkgZmluYWw7CiAKLSAgICAgICAgUmVmUHRyPFRleHRSZXNv
dXJjZURlY29kZXI+IG1fZGVjb2RlcjsKLSAgICAgICAgU3RyaW5nIG1fZGVjb2RlZFNoZWV0VGV4
dDsKKyAgICBSZWZQdHI8VGV4dFJlc291cmNlRGVjb2Rlcj4gbV9kZWNvZGVyOworICAgIFN0cmlu
ZyBtX2RlY29kZWRTaGVldFRleHQ7CiAKLSAgICAgICAgUmVmUHRyPFN0eWxlU2hlZXRDb250ZW50
cz4gbV9wYXJzZWRTdHlsZVNoZWV0Q2FjaGU7Ci0gICAgfTsKKyAgICBSZWZQdHI8U3R5bGVTaGVl
dENvbnRlbnRzPiBtX3BhcnNlZFN0eWxlU2hlZXRDYWNoZTsKK307CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hl
ZFJlc291cmNlUmVxdWVzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
UmVzb3VyY2VSZXF1ZXN0LmNwcAppbmRleCA0NzNhY2Q1OWYwMzRhMTEyYmVlNjQzNTE1ZDZjYjI5
YjViNTAxNTRiLi42ZDBjMjIxMTlhZTM0YjFjZDA0ZmEzZjEwYTUzNDZlZjYxYjA2MjVlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VSZXF1
ZXN0LmNwcApAQCAtNTksMTUgKzU5LDE3IEBAIFN0cmluZyBDYWNoZWRSZXNvdXJjZVJlcXVlc3Q6
OnNwbGl0RnJhZ21lbnRJZGVudGlmaWVyRnJvbVJlcXVlc3RVUkwoUmVzb3VyY2VSZXF1CiAgICAg
cmV0dXJuIGZyYWdtZW50SWRlbnRpZmllcjsKIH0KIAotdm9pZCBDYWNoZWRSZXNvdXJjZVJlcXVl
c3Q6OnNldEluaXRpYXRvcihQYXNzUmVmUHRyPEVsZW1lbnQ+IGVsZW1lbnQpCit2b2lkIENhY2hl
ZFJlc291cmNlUmVxdWVzdDo6c2V0SW5pdGlhdG9yKEVsZW1lbnQmIGVsZW1lbnQpCiB7Ci0gICAg
QVNTRVJUKCFtX2luaXRpYXRvckVsZW1lbnQgJiYgbV9pbml0aWF0b3JOYW1lLmlzRW1wdHkoKSk7
Ci0gICAgbV9pbml0aWF0b3JFbGVtZW50ID0gZWxlbWVudDsKKyAgICBBU1NFUlQoIW1faW5pdGlh
dG9yRWxlbWVudCk7CisgICAgQVNTRVJUKG1faW5pdGlhdG9yTmFtZS5pc0VtcHR5KCkpOworICAg
IG1faW5pdGlhdG9yRWxlbWVudCA9ICZlbGVtZW50OwogfQogCiB2b2lkIENhY2hlZFJlc291cmNl
UmVxdWVzdDo6c2V0SW5pdGlhdG9yKGNvbnN0IEF0b21pY1N0cmluZyYgbmFtZSkKIHsKLSAgICBB
U1NFUlQoIW1faW5pdGlhdG9yRWxlbWVudCAmJiBtX2luaXRpYXRvck5hbWUuaXNFbXB0eSgpKTsK
KyAgICBBU1NFUlQoIW1faW5pdGlhdG9yRWxlbWVudCk7CisgICAgQVNTRVJUKG1faW5pdGlhdG9y
TmFtZS5pc0VtcHR5KCkpOwogICAgIG1faW5pdGlhdG9yTmFtZSA9IG5hbWU7CiB9CiAKQEAgLTIw
OSwxMCArMjExLDEyIEBAIHZvaWQgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0OjpyZW1vdmVGcmFnbWVu
dElkZW50aWZpZXJJZk5lZWRlZCgpCiB9CiAKICNpZiBFTkFCTEUoQ09OVEVOVF9FWFRFTlNJT05T
KQorCiB2b2lkIENhY2hlZFJlc291cmNlUmVxdWVzdDo6YXBwbHlCbG9ja2VkU3RhdHVzKGNvbnN0
IENvbnRlbnRFeHRlbnNpb25zOjpCbG9ja2VkU3RhdHVzJiBibG9ja2VkU3RhdHVzKQogewogICAg
IENvbnRlbnRFeHRlbnNpb25zOjphcHBseUJsb2NrZWRTdGF0dXNUb1JlcXVlc3QoYmxvY2tlZFN0
YXR1cywgbV9yZXNvdXJjZVJlcXVlc3QpOwogfQorCiAjZW5kaWYKIAogdm9pZCBDYWNoZWRSZXNv
dXJjZVJlcXVlc3Q6OnVwZGF0ZVJlZmVycmVyT3JpZ2luQW5kVXNlckFnZW50SGVhZGVycyhGcmFt
ZUxvYWRlciYgZnJhbWVMb2FkZXIsIFJlZmVycmVyUG9saWN5IGRlZmF1bHRQb2xpY3kpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0
LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmgK
aW5kZXggMGU4YTRjM2ZiOTNiZTUxMzI5NGQ0ZjA0NWU5OWVmOWFlNzEwNzYwMC4uZWVlZDFhMWZm
ZjQ1NmYyZmMzMTM2MmJjZTRhYzZmZmM4MjdkZmI2MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3QuaApAQCAtNTgsNyArNTgsNyBA
QCBwdWJsaWM6CiAgICAgY29uc3QgUmVzb3VyY2VMb2FkZXJPcHRpb25zJiBvcHRpb25zKCkgY29u
c3QgeyByZXR1cm4gbV9vcHRpb25zOyB9CiAgICAgdm9pZCBzZXRPcHRpb25zKGNvbnN0IFJlc291
cmNlTG9hZGVyT3B0aW9ucyYgb3B0aW9ucykgeyBtX29wdGlvbnMgPSBvcHRpb25zOyB9CiAgICAg
Y29uc3Qgc3RkOjpvcHRpb25hbDxSZXNvdXJjZUxvYWRQcmlvcml0eT4mIHByaW9yaXR5KCkgY29u
c3QgeyByZXR1cm4gbV9wcmlvcml0eTsgfQotICAgIHZvaWQgc2V0SW5pdGlhdG9yKFBhc3NSZWZQ
dHI8RWxlbWVudD4pOworICAgIHZvaWQgc2V0SW5pdGlhdG9yKEVsZW1lbnQmKTsKICAgICB2b2lk
IHNldEluaXRpYXRvcihjb25zdCBBdG9taWNTdHJpbmcmIG5hbWUpOwogICAgIGNvbnN0IEF0b21p
Y1N0cmluZyYgaW5pdGlhdG9yTmFtZSgpIGNvbnN0OwogICAgIGJvb2wgYWxsb3dzQ2FjaGluZygp
IGNvbnN0IHsgcmV0dXJuIG1fb3B0aW9ucy5jYWNoaW5nUG9saWN5ID09IENhY2hpbmdQb2xpY3k6
OkFsbG93Q2FjaGluZzsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NvY29h
L0Rpc2tDYWNoZU1vbml0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jb2NvYS9EaXNrQ2Fj
aGVNb25pdG9yLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDg1ZGFlYzcwYTIwOWM3
MmRlYzk2YjJkYWZjYjRjNzc1OGRiY2UyN2QuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NvY29hL0Rpc2tDYWNoZU1v
bml0b3IuaAorKysgL2Rldi9udWxsCkBAIC0xLDYyICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQg
KEMpIDIwMTQgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jcHJh
Z21hIG9uY2UKLQotI2luY2x1ZGUgIlJlc291cmNlUmVxdWVzdC5oIgotI2luY2x1ZGUgIlNlc3Np
b25JRC5oIgotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0KLXR5cGVkZWYgY29uc3Qgc3Ry
dWN0IF9DRkNhY2hlZFVSTFJlc3BvbnNlKiBDRkNhY2hlZFVSTFJlc3BvbnNlUmVmOwotCi1uYW1l
c3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIFNoYXJlZEJ1ZmZlcjsKLQotY2xhc3MgRGlza0NhY2hl
TW9uaXRvciB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIHZvaWQgbW9uaXRvckZpbGVCYWNraW5nU3Rv
cmVDcmVhdGlvbihjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBTZXNzaW9uSUQsIENGQ2FjaGVkVVJM
UmVzcG9uc2VSZWYpOwotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gdHJ5R2V0
RmlsZUJhY2tlZFNoYXJlZEJ1ZmZlckZyb21DRlVSTENhY2hlZFJlc3BvbnNlKENGQ2FjaGVkVVJM
UmVzcG9uc2VSZWYpOwotICAgIHZpcnR1YWwgfkRpc2tDYWNoZU1vbml0b3IoKSB7IH0KLQotcHJv
dGVjdGVkOgotICAgIERpc2tDYWNoZU1vbml0b3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgU2Vz
c2lvbklELCBDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKTsKLQotICAgIHZpcnR1YWwgdm9pZCByZXNv
dXJjZUJlY2FtZUZpbGVCYWNrZWQoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+KTsKLQotICAgIGNv
bnN0IFJlc291cmNlUmVxdWVzdCYgcmVzb3VyY2VSZXF1ZXN0KCkgY29uc3QgeyByZXR1cm4gbV9y
ZXNvdXJjZVJlcXVlc3Q7IH0KLSAgICBTZXNzaW9uSUQgc2Vzc2lvbklEKCkgY29uc3QgeyByZXR1
cm4gbV9zZXNzaW9uSUQ7IH0KLQotcHJpdmF0ZToKLSAgICBSZXNvdXJjZVJlcXVlc3QgbV9yZXNv
dXJjZVJlcXVlc3Q7Ci0gICAgU2Vzc2lvbklEIG1fc2Vzc2lvbklEOwotfTsKLQotI2lmIChQTEFU
Rk9STShJT1MpICYmIF9fSVBIT05FX09TX1ZFUlNJT05fTUlOX1JFUVVJUkVEIDwgODAwMDApIHx8
IChQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPCAxMDkw
KQotdm9pZCBEaXNrQ2FjaGVNb25pdG9yOjptb25pdG9yRmlsZUJhY2tpbmdTdG9yZUNyZWF0aW9u
KGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIFNlc3Npb25JRCwgQ0ZDYWNoZWRVUkxSZXNwb25zZVJl
ZikgeyB9Ci1QYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gRGlza0NhY2hlTW9uaXRvcjo6dHJ5R2V0
RmlsZUJhY2tlZFNoYXJlZEJ1ZmZlckZyb21DRlVSTENhY2hlZFJlc3BvbnNlKENGQ2FjaGVkVVJM
UmVzcG9uc2VSZWYpIHsgcmV0dXJuIG51bGxwdHI7IH0KLSNlbmRpZgotCi19IC8vIG5hbWVzcGFj
ZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jb2NvYS9EaXNrQ2Fj
aGVNb25pdG9yQ29jb2EuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jb2NvYS9EaXNrQ2FjaGVN
b25pdG9yQ29jb2EuaAppbmRleCAxODZjMzRhZjk3ZmJlZWIzOGY2NDNkNDE3MjdmMTQ4ZjUxNmFh
YTZkLi42MzA0ZjFmMDZlZDAxYWMwZGNmZjhkM2RiM2I2NTE3N2YxZjc5MjFlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvckNvY29hLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NvY29hL0Rpc2tDYWNoZU1vbml0b3JDb2NvYS5oCkBA
IC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNCBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQtMjAxNyBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTI3
LDcgKzI3LDYgQEAKIAogI2luY2x1ZGUgIlJlc291cmNlUmVxdWVzdC5oIgogI2luY2x1ZGUgIlNl
c3Npb25JRC5oIgotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CiAKIHR5cGVkZWYgY29uc3Qg
c3RydWN0IF9DRkNhY2hlZFVSTFJlc3BvbnNlKiBDRkNhY2hlZFVSTFJlc3BvbnNlUmVmOwogCkBA
IC0zNSwyMSArMzQsMTkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBTaGFyZWRCdWZm
ZXI7CiAKLWNsYXNzIFdFQkNPUkVfRVhQT1JUIERpc2tDYWNoZU1vbml0b3IgeworY2xhc3MgRGlz
a0NhY2hlTW9uaXRvciB7CiBwdWJsaWM6CiAgICAgc3RhdGljIHZvaWQgbW9uaXRvckZpbGVCYWNr
aW5nU3RvcmVDcmVhdGlvbihjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBTZXNzaW9uSUQsIENGQ2Fj
aGVkVVJMUmVzcG9uc2VSZWYpOwotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4g
dHJ5R2V0RmlsZUJhY2tlZFNoYXJlZEJ1ZmZlckZyb21DRlVSTENhY2hlZFJlc3BvbnNlKENGQ2Fj
aGVkVVJMUmVzcG9uc2VSZWYpOwotICAgIHZpcnR1YWwgfkRpc2tDYWNoZU1vbml0b3IoKSB7IH0K
KyAgICBzdGF0aWMgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gdHJ5R2V0RmlsZUJhY2tlZFNoYXJlZEJ1
ZmZlckZyb21DRlVSTENhY2hlZFJlc3BvbnNlKENGQ2FjaGVkVVJMUmVzcG9uc2VSZWYpOwogCi1w
cm90ZWN0ZWQ6Ci0gICAgV0VCQ09SRV9FWFBPUlQgRGlza0NhY2hlTW9uaXRvcihjb25zdCBSZXNv
dXJjZVJlcXVlc3QmLCBTZXNzaW9uSUQsIENGQ2FjaGVkVVJMUmVzcG9uc2VSZWYpOworcHJpdmF0
ZToKKyAgICBEaXNrQ2FjaGVNb25pdG9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIFNlc3Npb25J
RCwgQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZik7CiAKLSAgICB2aXJ0dWFsIHZvaWQgcmVzb3VyY2VC
ZWNhbWVGaWxlQmFja2VkKFNoYXJlZEJ1ZmZlciYpOworICAgIHZvaWQgcmVzb3VyY2VCZWNhbWVG
aWxlQmFja2VkKFNoYXJlZEJ1ZmZlciYpOwogCiAgICAgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiBy
ZXNvdXJjZVJlcXVlc3QoKSBjb25zdCB7IHJldHVybiBtX3Jlc291cmNlUmVxdWVzdDsgfQogICAg
IFNlc3Npb25JRCBzZXNzaW9uSUQoKSBjb25zdCB7IHJldHVybiBtX3Nlc3Npb25JRDsgfQogCi1w
cml2YXRlOgogICAgIFJlc291cmNlUmVxdWVzdCBtX3Jlc291cmNlUmVxdWVzdDsKICAgICBTZXNz
aW9uSUQgbV9zZXNzaW9uSUQ7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NvY29hL0Rpc2tDYWNoZU1vbml0b3JDb2NvYS5tbSBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9j
b2NvYS9EaXNrQ2FjaGVNb25pdG9yQ29jb2EubW0KaW5kZXggNjg1ODAzNjBiOGViY2RjYWNhOGEz
ZTkzODQ5OGExOTc1NTJkYzE2YS4uNmFjNDVhMTZmZTk2YzM4YTcyOTI4YzE5YzU1ZGMxZWUzY2Nl
YWE0ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NvY29hL0Rpc2tDYWNoZU1v
bml0b3JDb2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY29jb2EvRGlza0NhY2hl
TW9uaXRvckNvY29hLm1tCkBAIC0yOSwxMSArMjksOCBAQAogI2ltcG9ydCAiQ0ZOZXR3b3JrU1BJ
LmgiCiAjaW1wb3J0ICJDYWNoZWRSZXNvdXJjZS5oIgogI2ltcG9ydCAiTWVtb3J5Q2FjaGUuaCIK
LSNpbXBvcnQgIlJlc291cmNlUmVxdWVzdC5oIgotI2ltcG9ydCAiU2Vzc2lvbklELmgiCiAjaW1w
b3J0ICJTaGFyZWRCdWZmZXIuaCIKICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+Ci0jaW1wb3J0
IDx3dGYvUGFzc1JlZlB0ci5oPgogI2ltcG9ydCA8d3RmL1JlZlB0ci5oPgogCiAjaWYgVVNFKFdF
Ql9USFJFQUQpCkBAIC00NSw5ICs0Miw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIC8vIFRoZSBt
YXhpbXVtIG51bWJlciBvZiBzZWNvbmRzIHdlJ2xsIHRyeSB0byB3YWl0IGZvciBhIHJlc291cmNl
IHRvIGJlIGRpc2sgY2FjaGVkIGJlZm9yZSB3ZSBmb3JnZXQgdGhlIHJlcXVlc3QuCiBzdGF0aWMg
Y29uc3QgZG91YmxlIGRpc2tDYWNoZU1vbml0b3JUaW1lb3V0ID0gMjA7CiAKLVBhc3NSZWZQdHI8
U2hhcmVkQnVmZmVyPiBEaXNrQ2FjaGVNb25pdG9yOjp0cnlHZXRGaWxlQmFja2VkU2hhcmVkQnVm
ZmVyRnJvbUNGVVJMQ2FjaGVkUmVzcG9uc2UoQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZiBjYWNoZWRS
ZXNwb25zZSkKK1JlZlB0cjxTaGFyZWRCdWZmZXI+IERpc2tDYWNoZU1vbml0b3I6OnRyeUdldEZp
bGVCYWNrZWRTaGFyZWRCdWZmZXJGcm9tQ0ZVUkxDYWNoZWRSZXNwb25zZShDRkNhY2hlZFVSTFJl
c3BvbnNlUmVmIGNhY2hlZFJlc3BvbnNlKQogewotICAgIENGRGF0YVJlZiBkYXRhID0gX0NGQ2Fj
aGVkVVJMUmVzcG9uc2VHZXRNZW1NYXBwZWREYXRhKGNhY2hlZFJlc3BvbnNlKTsKKyAgICBhdXRv
IGRhdGEgPSBfQ0ZDYWNoZWRVUkxSZXNwb25zZUdldE1lbU1hcHBlZERhdGEoY2FjaGVkUmVzcG9u
c2UpOwogICAgIGlmICghZGF0YSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKQEAgLTg3LDgg
Kzg0LDcgQEAgRGlza0NhY2hlTW9uaXRvcjo6RGlza0NhY2hlTW9uaXRvcihjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmIHJlcXVlc3QsIFNlc3Npb25JRCBzZXMKICAgICBkaXNwYXRjaF9hZnRlcihkaXNw
YXRjaF90aW1lKERJU1BBVENIX1RJTUVfTk9XLCBOU0VDX1BFUl9TRUMgKiBkaXNrQ2FjaGVNb25p
dG9yVGltZW91dCksIGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIGNhbmNlbE1vbml0b3JCbG9j
a1RvUnVuKTsKIAogICAgIC8vIFNldCB1cCB0aGUgZGlzayBjYWNoaW5nIGNhbGxiYWNrIHRvIGNy
ZWF0ZSB0aGUgU2hhcmVhYmxlUmVzb3VyY2UgYW5kIHNlbmQgaXQgdG8gdGhlIFdlYlByb2Nlc3Mu
Ci0gICAgQ0ZDYWNoZWRVUkxSZXNwb25zZUNhbGxCYWNrQmxvY2sgYmxvY2sgPSBeKENGQ2FjaGVk
VVJMUmVzcG9uc2VSZWYgY2FjaGVkUmVzcG9uc2UpCi0gICAgeworICAgIGF1dG8gYmxvY2sgPSBe
KENGQ2FjaGVkVVJMUmVzcG9uc2VSZWYgY2FjaGVkUmVzcG9uc2UpIHsKICAgICAgICAgQVNTRVJU
KGlzTWFpblRocmVhZCgpKTsKICAgICAgICAgLy8gSWYgdGhlIG1vbml0b3IgaXNuJ3QgdGhlcmUg
dGhlbiBpdCB0aW1lZCBvdXQgYmVmb3JlIHRoaXMgcmVzb3VyY2Ugd2FzIGNhY2hlZCB0byBkaXNr
LgogICAgICAgICBpZiAoIXJhd01vbml0b3IpCkBAIC05Nyw3ICs5Myw3IEBAIERpc2tDYWNoZU1v
bml0b3I6OkRpc2tDYWNoZU1vbml0b3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBT
ZXNzaW9uSUQgc2VzCiAgICAgICAgIGF1dG8gbW9uaXRvciA9IHN0ZDo6dW5pcXVlX3B0cjxEaXNr
Q2FjaGVNb25pdG9yPihyYXdNb25pdG9yKTsgLy8gQmFsYW5jZWQgYnkgIm5ldyBEaXNrQ2FjaGVN
b25pdG9yIiBpbiBtb25pdG9yRmlsZUJhY2tpbmdTdG9yZUNyZWF0aW9uLgogICAgICAgICByYXdN
b25pdG9yID0gbnVsbHB0cjsKIAotICAgICAgICBSZWZQdHI8U2hhcmVkQnVmZmVyPiBmaWxlQmFj
a2VkQnVmZmVyID0gRGlza0NhY2hlTW9uaXRvcjo6dHJ5R2V0RmlsZUJhY2tlZFNoYXJlZEJ1ZmZl
ckZyb21DRlVSTENhY2hlZFJlc3BvbnNlKGNhY2hlZFJlc3BvbnNlKTsKKyAgICAgICAgYXV0byBm
aWxlQmFja2VkQnVmZmVyID0gRGlza0NhY2hlTW9uaXRvcjo6dHJ5R2V0RmlsZUJhY2tlZFNoYXJl
ZEJ1ZmZlckZyb21DRlVSTENhY2hlZFJlc3BvbnNlKGNhY2hlZFJlc3BvbnNlKTsKICAgICAgICAg
aWYgKCFmaWxlQmFja2VkQnVmZmVyKQogICAgICAgICAgICAgcmV0dXJuOwogCkBAIC0xMDUsOCAr
MTAxLDcgQEAgRGlza0NhY2hlTW9uaXRvcjo6RGlza0NhY2hlTW9uaXRvcihjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmIHJlcXVlc3QsIFNlc3Npb25JRCBzZXMKICAgICB9OwogCiAjaWYgVVNFKFdFQl9U
SFJFQUQpCi0gICAgQ0ZDYWNoZWRVUkxSZXNwb25zZUNhbGxCYWNrQmxvY2sgYmxvY2tUb1J1biA9
IF4oQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZiByZXNwb25zZSkKLSAgICB7CisgICAgYXV0byBibG9j
a1RvUnVuID0gXihDRkNhY2hlZFVSTFJlc3BvbnNlUmVmIHJlc3BvbnNlKSB7CiAgICAgICAgIENG
UmV0YWluKHJlc3BvbnNlKTsKICAgICAgICAgV2ViVGhyZWFkUnVuKF57CiAgICAgICAgICAgICBi
bG9jayhyZXNwb25zZSk7CkBAIC0xMTQsMTQgKzEwOSwxNCBAQCBEaXNrQ2FjaGVNb25pdG9yOjpE
aXNrQ2FjaGVNb25pdG9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgU2Vzc2lvbklE
IHNlcwogICAgICAgICB9KTsKICAgICB9OwogI2Vsc2UKLSAgICBDRkNhY2hlZFVSTFJlc3BvbnNl
Q2FsbEJhY2tCbG9jayBibG9ja1RvUnVuID0gYmxvY2s7CisgICAgYXV0byBibG9ja1RvUnVuID0g
YmxvY2s7CiAjZW5kaWYKICAgICBfQ0ZDYWNoZWRVUkxSZXNwb25zZVNldEJlY2FtZUZpbGVCYWNr
ZWRDYWxsQmFja0Jsb2NrKGNhY2hlZFJlc3BvbnNlLCBibG9ja1RvUnVuLCBkaXNwYXRjaF9nZXRf
bWFpbl9xdWV1ZSgpKTsKIH0KIAogdm9pZCBEaXNrQ2FjaGVNb25pdG9yOjpyZXNvdXJjZUJlY2Ft
ZUZpbGVCYWNrZWQoU2hhcmVkQnVmZmVyJiBmaWxlQmFja2VkQnVmZmVyKQogewotICAgIENhY2hl
ZFJlc291cmNlKiByZXNvdXJjZSA9IE1lbW9yeUNhY2hlOjpzaW5nbGV0b24oKS5yZXNvdXJjZUZv
clJlcXVlc3QobV9yZXNvdXJjZVJlcXVlc3QsIG1fc2Vzc2lvbklEKTsKKyAgICBhdXRvKiByZXNv
dXJjZSA9IE1lbW9yeUNhY2hlOjpzaW5nbGV0b24oKS5yZXNvdXJjZUZvclJlcXVlc3QobV9yZXNv
dXJjZVJlcXVlc3QsIG1fc2Vzc2lvbklEKTsKICAgICBpZiAoIXJlc291cmNlKQogICAgICAgICBy
ZXR1cm47CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL0ljb25EYXRh
YmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2UuY3BwCmlu
ZGV4IGVlNDM3ZTg2MjhlYmY0ZTg2MzI3Y2M3NzAzMGY1ZjY5NGUzMGJiMmQuLmRjY2UwYTVjM2Nk
ODE2Y2M4NDdiYzdhZmUyYmEyMTY3YWNkMDg4MGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9pY29uL0ljb25EYXRhYmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2ljb24vSWNvbkRhdGFiYXNlLmNwcApAQCAtNTMzLDcgKzUzMyw3IEBAIHZvaWQgSWNvbkRhdGFi
YXNlOjpwZXJmb3JtUmVsZWFzZUljb25Gb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYgcGFnZVVSTE9y
aWdpbmFsLCBpCiAgICAgZGVsZXRlIHBhZ2VSZWNvcmQ7CiB9CiAKLXZvaWQgSWNvbkRhdGFiYXNl
OjpzZXRJY29uRGF0YUZvckljb25VUkwoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGRhdGFPcmln
aW5hbCwgY29uc3QgU3RyaW5nJiBpY29uVVJMT3JpZ2luYWwpCit2b2lkIEljb25EYXRhYmFzZTo6
c2V0SWNvbkRhdGFGb3JJY29uVVJMKFNoYXJlZEJ1ZmZlciogZGF0YU9yaWdpbmFsLCBjb25zdCBT
dHJpbmcmIGljb25VUkxPcmlnaW5hbCkKIHsgICAgCiAgICAgQVNTRVJUX05PVF9TWU5DX1RIUkVB
RCgpOwogICAgIApAQCAtNTQyLDcgKzU0Miw3IEBAIHZvaWQgSWNvbkRhdGFiYXNlOjpzZXRJY29u
RGF0YUZvckljb25VUkwoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGRhdGFPcmlnaW5hbCwKICAg
ICBpZiAoIWlzT3BlbigpIHx8IGljb25VUkxPcmlnaW5hbC5pc0VtcHR5KCkpCiAgICAgICAgIHJl
dHVybjsKICAgICAKLSAgICBSZWZQdHI8U2hhcmVkQnVmZmVyPiBkYXRhID0gZGF0YU9yaWdpbmFs
ID8gZGF0YU9yaWdpbmFsLT5jb3B5KCkgOiBQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4obnVsbHB0
cik7CisgICAgYXV0byBkYXRhID0gZGF0YU9yaWdpbmFsID8gUmVmUHRyPFNoYXJlZEJ1ZmZlcj4g
eyBkYXRhT3JpZ2luYWwtPmNvcHkoKSB9IDogbnVsbHB0cjsKICAgICBTdHJpbmcgaWNvblVSTCA9
IGljb25VUkxPcmlnaW5hbC5pc29sYXRlZENvcHkoKTsKICAgICAKICAgICBWZWN0b3I8U3RyaW5n
PiBwYWdlVVJMczsKQEAgLTg4NSwxOCArODg1LDE3IEBAIFN0cmluZyBJY29uRGF0YWJhc2U6OmRl
ZmF1bHREYXRhYmFzZUZpbGVuYW1lKCkKIH0KIAogLy8gVW5saWtlIGdldE9yQ3JlYXRlUGFnZVVS
TFJlY29yZCgpLCBnZXRPckNyZWF0ZUljb25SZWNvcmQoKSBkb2VzIG5vdCBtYXJrIHRoZSBpY29u
IGFzICJpbnRlcmVzdGVkIGluIGltcG9ydCIKLVBhc3NSZWZQdHI8SWNvblJlY29yZD4gSWNvbkRh
dGFiYXNlOjpnZXRPckNyZWF0ZUljb25SZWNvcmQoY29uc3QgU3RyaW5nJiBpY29uVVJMKQorUmVm
PEljb25SZWNvcmQ+IEljb25EYXRhYmFzZTo6Z2V0T3JDcmVhdGVJY29uUmVjb3JkKGNvbnN0IFN0
cmluZyYgaWNvblVSTCkKIHsKICAgICAvLyBDbGllbnRzIG9mIGdldE9yQ3JlYXRlSWNvblJlY29y
ZCgpIGFyZSByZXF1aXJlZCB0byBhY3F1aXJlIHRoZSBtX3VybEFuZEljb25Mb2NrIGJlZm9yZSBj
YWxsaW5nIHRoaXMgbWV0aG9kCiAgICAgQVNTRVJUKCFtX3VybEFuZEljb25Mb2NrLnRyeUxvY2so
KSk7CiAKLSAgICBpZiAoSWNvblJlY29yZCogaWNvbiA9IG1faWNvblVSTFRvUmVjb3JkTWFwLmdl
dChpY29uVVJMKSkKLSAgICAgICAgcmV0dXJuIGljb247CisgICAgaWYgKGF1dG8qIGljb24gPSBt
X2ljb25VUkxUb1JlY29yZE1hcC5nZXQoaWNvblVSTCkpCisgICAgICAgIHJldHVybiAqaWNvbjsK
IAogICAgIGF1dG8gbmV3SWNvbiA9IEljb25SZWNvcmQ6OmNyZWF0ZShpY29uVVJMKTsKICAgICBt
X2ljb25VUkxUb1JlY29yZE1hcC5zZXQoaWNvblVSTCwgbmV3SWNvbi5wdHIoKSk7Ci0KLSAgICBy
ZXR1cm4gV1RGTW92ZShuZXdJY29uKTsKKyAgICByZXR1cm4gbmV3SWNvbjsKIH0KIAogLy8gVGhp
cyBtZXRob2QgcmV0cmlldmVzIHRoZSBleGlzdGluZyBQYWdlVVJMUmVjb3JkLCBvciBjcmVhdGVz
IGEgbmV3IG9uZSBhbmQgbWFya3MgaXQgYXMgImludGVyZXN0ZWQgaW4gdGhlIGltcG9ydCIgZm9y
IGxhdGVyIG5vdGlmaWNhdGlvbgpAQCAtMTkxNyw3ICsxOTE2LDcgQEAgaW50NjRfdCBJY29uRGF0
YWJhc2U6OmFkZEljb25VUkxUb1NRTERhdGFiYXNlKGNvbnN0IFN0cmluZyYgaWNvblVSTCkKICAg
ICByZXR1cm4gaWNvbklEOwogfQogCi1QYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gSWNvbkRhdGFi
YXNlOjpnZXRJbWFnZURhdGFGb3JJY29uVVJMRnJvbVNRTERhdGFiYXNlKGNvbnN0IFN0cmluZyYg
aWNvblVSTCkKK1JlZlB0cjxTaGFyZWRCdWZmZXI+IEljb25EYXRhYmFzZTo6Z2V0SW1hZ2VEYXRh
Rm9ySWNvblVSTEZyb21TUUxEYXRhYmFzZShjb25zdCBTdHJpbmcmIGljb25VUkwpCiB7CiAgICAg
QVNTRVJUX0lDT05fU1lOQ19USFJFQUQoKTsKICAgICAKQEAgLTE5MzYsNyArMTkzNSw3IEBAIFBh
c3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBJY29uRGF0YWJhc2U6OmdldEltYWdlRGF0YUZvckljb25V
UkxGcm9tU1FMRGF0YWJhc2UoY29uCiAKICAgICBtX2dldEltYWdlRGF0YUZvckljb25VUkxTdGF0
ZW1lbnQtPnJlc2V0KCk7CiAgICAgCi0gICAgcmV0dXJuIFdURk1vdmUoaW1hZ2VEYXRhKTsKKyAg
ICByZXR1cm4gaW1hZ2VEYXRhOwogfQogCiB2b2lkIEljb25EYXRhYmFzZTo6cmVtb3ZlSWNvbkZy
b21TUUxEYXRhYmFzZShjb25zdCBTdHJpbmcmIGljb25VUkwpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2UuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9pY29uL0ljb25EYXRhYmFzZS5oCmluZGV4IGQ1ZDQ1MmNlZmQzN2MwYWNlODEyYWRhMzUwMzQ3
MGFlNjI4ZDdjOWUuLjA2MWFmNGExMjU1NzcxZGUxMWEzMmY1NjgzYzBlZmRhNTkyOTNiOWQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL0ljb25EYXRhYmFzZS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL0ljb25EYXRhYmFzZS5oCkBAIC00NSw2ICs0NSw3
IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIC8vIER1bW15IHZlcnNpb24gb2YgSWNvbkRhdGFiYXNl
IHRoYXQgZG9lcyBub3RoaW5nLgogY2xhc3MgSWNvbkRhdGFiYXNlIGZpbmFsIDogcHVibGljIElj
b25EYXRhYmFzZUJhc2UgewogICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworCiBwdWJsaWM6
CiAgICAgc3RhdGljIHZvaWQgZGVsYXlEYXRhYmFzZUNsZWFudXAoKSB7IH0KICAgICBzdGF0aWMg
dm9pZCBhbGxvd0RhdGFiYXNlQ2xlYW51cCgpIHsgfQpAQCAtNzAsMzIgKzcxLDMyIEBAIHB1Ymxp
YzoKICAgICBXRUJDT1JFX0VYUE9SVCBJY29uRGF0YWJhc2UoKTsKICAgICB+SWNvbkRhdGFiYXNl
KCk7CiAKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldENsaWVudChJY29uRGF0YWJhc2VDbGll
bnQqKSBvdmVycmlkZTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldENsaWVudChJY29uRGF0
YWJhc2VDbGllbnQqKSBmaW5hbDsKIAotICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgb3Blbihjb25z
dCBTdHJpbmcmIGRpcmVjdG9yeSwgY29uc3QgU3RyaW5nJiBmaWxlbmFtZSkgb3ZlcnJpZGU7Ci0g
ICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBjbG9zZSgpIG92ZXJyaWRlOworICAgIFdFQkNPUkVfRVhQ
T1JUIGJvb2wgb3Blbihjb25zdCBTdHJpbmcmIGRpcmVjdG9yeSwgY29uc3QgU3RyaW5nJiBmaWxl
bmFtZSkgZmluYWw7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBjbG9zZSgpIGZpbmFsOwogICAg
ICAgICAgICAgCi0gICAgV0VCQ09SRV9FWFBPUlQgdm9pZCByZW1vdmVBbGxJY29ucygpIG92ZXJy
aWRlOworICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgcmVtb3ZlQWxsSWNvbnMoKSBmaW5hbDsKIAog
ICAgIHZvaWQgcmVhZEljb25Gb3JQYWdlVVJMRnJvbURpc2soY29uc3QgU3RyaW5nJik7CiAKLSAg
ICBXRUJDT1JFX0VYUE9SVCBJbWFnZSogZGVmYXVsdEljb24oY29uc3QgSW50U2l6ZSYpIG92ZXJy
aWRlOworICAgIFdFQkNPUkVfRVhQT1JUIEltYWdlKiBkZWZhdWx0SWNvbihjb25zdCBJbnRTaXpl
JikgZmluYWw7CiAKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHJldGFpbkljb25Gb3JQYWdlVVJM
KGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgcmVsZWFz
ZUljb25Gb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAgIFdFQkNPUkVfRVhQ
T1JUIHZvaWQgc2V0SWNvbkRhdGFGb3JJY29uVVJMKFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBk
YXRhLCBjb25zdCBTdHJpbmcmKSBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNl
dEljb25VUkxGb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYgaWNvblVSTCwgY29uc3QgU3RyaW5nJiBw
YWdlVVJMKSBvdmVycmlkZTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHJldGFpbkljb25Gb3JQ
YWdlVVJMKGNvbnN0IFN0cmluZyYpIGZpbmFsOworICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgcmVs
ZWFzZUljb25Gb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYpIGZpbmFsOworICAgIFdFQkNPUkVfRVhQ
T1JUIHZvaWQgc2V0SWNvbkRhdGFGb3JJY29uVVJMKFNoYXJlZEJ1ZmZlciogZGF0YSwgY29uc3Qg
U3RyaW5nJiBpY29uVVJMKSBmaW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldEljb25V
UkxGb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYgaWNvblVSTCwgY29uc3QgU3RyaW5nJiBwYWdlVVJM
KSBmaW5hbDsKIAotICAgIFdFQkNPUkVfRVhQT1JUIEltYWdlKiBzeW5jaHJvbm91c0ljb25Gb3JQ
YWdlVVJMKGNvbnN0IFN0cmluZyYsIGNvbnN0IEludFNpemUmKSBvdmVycmlkZTsKLSAgICBOYXRp
dmVJbWFnZVB0ciBzeW5jaHJvbm91c05hdGl2ZUljb25Gb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYg
cGFnZVVSTE9yaWdpbmFsLCBjb25zdCBJbnRTaXplJikgb3ZlcnJpZGU7Ci0gICAgV0VCQ09SRV9F
WFBPUlQgU3RyaW5nIHN5bmNocm9ub3VzSWNvblVSTEZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikg
b3ZlcnJpZGU7Ci0gICAgYm9vbCBzeW5jaHJvbm91c0ljb25EYXRhS25vd25Gb3JJY29uVVJMKGNv
bnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAgIFdFQkNPUkVfRVhQT1JUIEljb25Mb2FkRGVjaXNp
b24gc3luY2hyb25vdXNMb2FkRGVjaXNpb25Gb3JJY29uVVJMKGNvbnN0IFN0cmluZyYsIERvY3Vt
ZW50TG9hZGVyKikgb3ZlcnJpZGU7CisgICAgV0VCQ09SRV9FWFBPUlQgSW1hZ2UqIHN5bmNocm9u
b3VzSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJiwgY29uc3QgSW50U2l6ZSYpIGZpbmFsOwor
ICAgIE5hdGl2ZUltYWdlUHRyIHN5bmNocm9ub3VzTmF0aXZlSWNvbkZvclBhZ2VVUkwoY29uc3Qg
U3RyaW5nJiBwYWdlVVJMT3JpZ2luYWwsIGNvbnN0IEludFNpemUmKSBmaW5hbDsKKyAgICBXRUJD
T1JFX0VYUE9SVCBTdHJpbmcgc3luY2hyb25vdXNJY29uVVJMRm9yUGFnZVVSTChjb25zdCBTdHJp
bmcmKSBmaW5hbDsKKyAgICBib29sIHN5bmNocm9ub3VzSWNvbkRhdGFLbm93bkZvckljb25VUkwo
Y29uc3QgU3RyaW5nJikgZmluYWw7CisgICAgV0VCQ09SRV9FWFBPUlQgSWNvbkxvYWREZWNpc2lv
biBzeW5jaHJvbm91c0xvYWREZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5nJiwgRG9jdW1l
bnRMb2FkZXIqKSBmaW5hbDsKIAotICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0RW5hYmxlZChi
b29sKSBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCBib29sIGlzRW5hYmxlZCgpIGNvbnN0
IG92ZXJyaWRlOworICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0RW5hYmxlZChib29sKTsKKyAg
ICBXRUJDT1JFX0VYUE9SVCBib29sIGlzRW5hYmxlZCgpIGNvbnN0IGZpbmFsOwogCi0gICAgV0VC
Q09SRV9FWFBPUlQgdm9pZCBzZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkKGJvb2wgZmxhZykgb3Zl
cnJpZGU7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRQcml2YXRlQnJvd3NpbmdFbmFibGVk
KGJvb2wgZmxhZykgZmluYWw7CiAgICAgYm9vbCBpc1ByaXZhdGVCcm93c2luZ0VuYWJsZWQoKSBj
b25zdDsKIAogICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyB2b2lkIGRlbGF5RGF0YWJhc2VDbGVh
bnVwKCk7CkBAIC0xMDMsMTAgKzEwNCwxMCBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQg
c3RhdGljIHZvaWQgY2hlY2tJbnRlZ3JpdHlCZWZvcmVPcGVuaW5nKCk7CiAKICAgICAvLyBTdXBw
b3J0IGZvciBXZWJDb3JlU3RhdGlzdGljcyBpbiBXZWJLaXQKLSAgICBXRUJDT1JFX0VYUE9SVCBz
aXplX3QgcGFnZVVSTE1hcHBpbmdDb3VudCgpIG92ZXJyaWRlOwotICAgIFdFQkNPUkVfRVhQT1JU
IHNpemVfdCByZXRhaW5lZFBhZ2VVUkxDb3VudCgpIG92ZXJyaWRlOwotICAgIFdFQkNPUkVfRVhQ
T1JUIHNpemVfdCBpY29uUmVjb3JkQ291bnQoKSBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9S
VCBzaXplX3QgaWNvblJlY29yZENvdW50V2l0aERhdGEoKSBvdmVycmlkZTsKKyAgICBXRUJDT1JF
X0VYUE9SVCBzaXplX3QgcGFnZVVSTE1hcHBpbmdDb3VudCgpIGZpbmFsOworICAgIFdFQkNPUkVf
RVhQT1JUIHNpemVfdCByZXRhaW5lZFBhZ2VVUkxDb3VudCgpIGZpbmFsOworICAgIFdFQkNPUkVf
RVhQT1JUIHNpemVfdCBpY29uUmVjb3JkQ291bnQoKSBmaW5hbDsKKyAgICBXRUJDT1JFX0VYUE9S
VCBzaXplX3QgaWNvblJlY29yZENvdW50V2l0aERhdGEoKSBmaW5hbDsKIAogcHJpdmF0ZToKICAg
ICBmcmllbmQgSWNvbkRhdGFiYXNlQmFzZSYgaWNvbkRhdGFiYXNlKCk7CkBAIC0xMzAsMTIgKzEz
MSwxMiBAQCBwcml2YXRlOgogCiAvLyAqKiogQW55IFRocmVhZCAqKioKIHB1YmxpYzoKLSAgICBX
RUJDT1JFX0VYUE9SVCBib29sIGlzT3BlbigpIGNvbnN0IG92ZXJyaWRlOwotICAgIFdFQkNPUkVf
RVhQT1JUIFN0cmluZyBkYXRhYmFzZVBhdGgoKSBjb25zdCBvdmVycmlkZTsKKyAgICBXRUJDT1JF
X0VYUE9SVCBib29sIGlzT3BlbigpIGNvbnN0IGZpbmFsOworICAgIFdFQkNPUkVfRVhQT1JUIFN0
cmluZyBkYXRhYmFzZVBhdGgoKSBjb25zdCBmaW5hbDsKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0
aWMgU3RyaW5nIGRlZmF1bHREYXRhYmFzZUZpbGVuYW1lKCk7CiAKIHByaXZhdGU6Ci0gICAgUGFz
c1JlZlB0cjxJY29uUmVjb3JkPiBnZXRPckNyZWF0ZUljb25SZWNvcmQoY29uc3QgU3RyaW5nJiBp
Y29uVVJMKTsKKyAgICBSZWY8SWNvblJlY29yZD4gZ2V0T3JDcmVhdGVJY29uUmVjb3JkKGNvbnN0
IFN0cmluZyYgaWNvblVSTCk7CiAgICAgUGFnZVVSTFJlY29yZCogZ2V0T3JDcmVhdGVQYWdlVVJM
UmVjb3JkKGNvbnN0IFN0cmluZyYgcGFnZVVSTCk7CiAgICAgCiAgICAgYm9vbCBtX2lzRW5hYmxl
ZDsKQEAgLTE3OCw3ICsxNzksNyBAQCBwcml2YXRlOgogCiAvLyAqKiogU3luYyBUaHJlYWQgT25s
eSAqKioKIHB1YmxpYzoKLSAgICBXRUJDT1JFX0VYUE9SVCBib29sIHNob3VsZFN0b3BUaHJlYWRB
Y3Rpdml0eSgpIGNvbnN0IG92ZXJyaWRlOworICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgc2hvdWxk
U3RvcFRocmVhZEFjdGl2aXR5KCkgY29uc3QgZmluYWw7CiAKIHByaXZhdGU6ICAgIAogICAgIHN0
YXRpYyB2b2lkIGljb25EYXRhYmFzZVN5bmNUaHJlYWRTdGFydCh2b2lkICopOwpAQCAtMjEzLDcg
KzIxNCw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCByZW1vdmVQYWdlVVJMRnJvbVNRTERhdGFiYXNl
KGNvbnN0IFN0cmluZyYgcGFnZVVSTCk7CiAgICAgaW50NjRfdCBnZXRJY29uSURGb3JJY29uVVJM
RnJvbVNRTERhdGFiYXNlKGNvbnN0IFN0cmluZyYgaWNvblVSTCk7CiAgICAgaW50NjRfdCBhZGRJ
Y29uVVJMVG9TUUxEYXRhYmFzZShjb25zdCBTdHJpbmcmKTsKLSAgICBQYXNzUmVmUHRyPFNoYXJl
ZEJ1ZmZlcj4gZ2V0SW1hZ2VEYXRhRm9ySWNvblVSTEZyb21TUUxEYXRhYmFzZShjb25zdCBTdHJp
bmcmIGljb25VUkwpOworICAgIFJlZlB0cjxTaGFyZWRCdWZmZXI+IGdldEltYWdlRGF0YUZvcklj
b25VUkxGcm9tU1FMRGF0YWJhc2UoY29uc3QgU3RyaW5nJiBpY29uVVJMKTsKICAgICB2b2lkIHJl
bW92ZUljb25Gcm9tU1FMRGF0YWJhc2UoY29uc3QgU3RyaW5nJiBpY29uVVJMKTsKICAgICB2b2lk
IHdyaXRlSWNvblNuYXBzaG90VG9TUUxEYXRhYmFzZShjb25zdCBJY29uU25hcHNob3QmKTsgICAg
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL0ljb25EYXRhYmFzZUJh
c2UuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL0ljb25EYXRhYmFzZUJhc2UuaAppbmRl
eCA5ODZkNGQ5NmY1NzI3ZjQ2YTFmMmU4NzUwMzllNmM4NjAzMmY2MzgxLi5kNDA1MWI5MzZjNzEw
ZmMyOWM3MWQ1MmU0NzI3YmE4NWIwYWViOTk3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvaWNvbi9JY29uRGF0YWJhc2VCYXNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2ljb24vSWNvbkRhdGFiYXNlQmFzZS5oCkBAIC0yOCw3ICsyOCw2IEBACiAjaW5jbHVkZSAiTmF0
aXZlSW1hZ2UuaCIKICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogI2luY2x1ZGUgPHd0Zi9Ob25j
b3B5YWJsZS5oPgotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1Jl
ZkNvdW50ZWQuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtMzksMTEgKzM4LDcgQEAgY2xh
c3MgSW1hZ2U7CiBjbGFzcyBJbnRTaXplOwogY2xhc3MgU2hhcmVkQnVmZmVyOwogCi1lbnVtIElj
b25Mb2FkRGVjaXNpb24gewotICAgIEljb25Mb2FkWWVzLAotICAgIEljb25Mb2FkTm8sCi0gICAg
SWNvbkxvYWRVbmtub3duCi19OworZW51bSBJY29uTG9hZERlY2lzaW9uIHsgSWNvbkxvYWRZZXMs
IEljb25Mb2FkTm8sIEljb25Mb2FkVW5rbm93biB9OwogCiBjbGFzcyBDYWxsYmFja0Jhc2UgOiBw
dWJsaWMgUmVmQ291bnRlZDxDYWxsYmFja0Jhc2U+IHsKIHB1YmxpYzoKQEAgLTEzNCw3ICsxMjks
NyBAQCBwdWJsaWM6CiAgICAgICAgIG1fY2FsbGJhY2socmVzdWx0LCBjb250ZXh0KCkpOwogICAg
ICAgICBtX2NhbGxiYWNrID0gbnVsbHB0cjsKICAgICB9Ci0gICAgCisKICAgICB2b2lkIGludmFs
aWRhdGUoKQogICAgIHsKICAgICAgICAgbV9jYWxsYmFjayA9IG51bGxwdHI7CkBAIC0xNTEsMjYg
KzE0NiwyMiBAQCBwcml2YXRlOgogICAgIENhbGxiYWNrRnVuY3Rpb24gbV9jYWxsYmFjazsKIH07
CiAKLXR5cGVkZWYgRW51bUNhbGxiYWNrPEljb25Mb2FkRGVjaXNpb24+IEljb25Mb2FkRGVjaXNp
b25DYWxsYmFjazsKLXR5cGVkZWYgT2JqZWN0Q2FsbGJhY2s8U2hhcmVkQnVmZmVyKj4gSWNvbkRh
dGFDYWxsYmFjazsKK3VzaW5nIEljb25Mb2FkRGVjaXNpb25DYWxsYmFjayA9IEVudW1DYWxsYmFj
azxJY29uTG9hZERlY2lzaW9uPjsKK3VzaW5nIEljb25EYXRhQ2FsbGJhY2sgPSBPYmplY3RDYWxs
YmFjazxTaGFyZWRCdWZmZXIqPjsKIAogY2xhc3MgV0VCQ09SRV9FWFBPUlQgSWNvbkRhdGFiYXNl
QmFzZSB7CiAgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoSWNvbkRhdGFiYXNlQmFzZSk7CiAKLXBy
b3RlY3RlZDoKLSAgICBJY29uRGF0YWJhc2VCYXNlKCkgeyB9Ci0KIHB1YmxpYzoKICAgICB2aXJ0
dWFsIH5JY29uRGF0YWJhc2VCYXNlKCkgeyB9CiAKLSAgICAvLyBVc2VkIGludGVybmFsbHkgYnkg
V2ViQ29yZQogICAgIHZpcnR1YWwgYm9vbCBpc0VuYWJsZWQoKSBjb25zdCB7IHJldHVybiBmYWxz
ZTsgfQotICAgICAgICAKKwogICAgIHZpcnR1YWwgdm9pZCByZXRhaW5JY29uRm9yUGFnZVVSTChj
b25zdCBTdHJpbmcmKSB7IH0KICAgICB2aXJ0dWFsIHZvaWQgcmVsZWFzZUljb25Gb3JQYWdlVVJM
KGNvbnN0IFN0cmluZyYpIHsgfQogCi0gICAgdmlydHVhbCB2b2lkIHNldEljb25VUkxGb3JQYWdl
VVJMKGNvbnN0IFN0cmluZyYsIGNvbnN0IFN0cmluZyYpIHsgfQotICAgIHZpcnR1YWwgdm9pZCBz
ZXRJY29uRGF0YUZvckljb25VUkwoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+LCBjb25zdCBTdHJp
bmcmKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgc2V0SWNvblVSTEZvclBhZ2VVUkwoY29uc3QgU3Ry
aW5nJiAvKmljb25VUkwqLywgY29uc3QgU3RyaW5nJiAvKnBhZ2VVUkwqLykgeyB9CisgICAgdmly
dHVhbCB2b2lkIHNldEljb25EYXRhRm9ySWNvblVSTChTaGFyZWRCdWZmZXIqLCBjb25zdCBTdHJp
bmcmIC8qaWNvblVSTCovKSB7IH0KIAogICAgIC8vIFN5bmNocm9ub3VzIGNhbGxzIHVzZWQgaW50
ZXJuYWxseSBieSBXZWJDb3JlLgogICAgIC8vIFVzYWdlIHNob3VsZCBiZSByZXBsYWNlZCBieSBh
c3luY2hyb25vdXMgY2FsbHMuCkBAIC0xODIsMTIgKzE3MywxMiBAQCBwdWJsaWM6CiAKICAgICAv
LyBBc3luY2hyb25vdXMgY2FsbHMgd2Ugc2hvdWxkIHVzZSB0byByZXBsYWNlIHRoZSBhYm92ZSB3
aGVuIHN1cHBvcnRlZC4KICAgICB2aXJ0dWFsIGJvb2wgc3VwcG9ydHNBc3luY2hyb25vdXNNb2Rl
KCkgeyByZXR1cm4gZmFsc2U7IH0KLSAgICB2aXJ0dWFsIHZvaWQgbG9hZERlY2lzaW9uRm9ySWNv
blVSTChjb25zdCBTdHJpbmcmLCBQYXNzUmVmUHRyPEljb25Mb2FkRGVjaXNpb25DYWxsYmFjaz4p
IHsgfQotICAgIHZpcnR1YWwgdm9pZCBpY29uRGF0YUZvckljb25VUkwoY29uc3QgU3RyaW5nJiwg
UGFzc1JlZlB0cjxJY29uRGF0YUNhbGxiYWNrPikgeyB9Ci0gICAgCisgICAgdmlydHVhbCB2b2lk
IGxvYWREZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5nJiwgSWNvbkxvYWREZWNpc2lvbkNh
bGxiYWNrJikgeyB9CisgICAgdmlydHVhbCB2b2lkIGljb25EYXRhRm9ySWNvblVSTChjb25zdCBT
dHJpbmcmLCBJY29uRGF0YUNhbGxiYWNrJikgeyB9CiAKICAgICAvLyBVc2VkIHdpdGhpbiBvbmUg
b3IgbW9yZSBXZWJLaXQgcG9ydHMuCiAgICAgLy8gV2Ugc2hvdWxkIHRyeSB0byByZW1vdmUgdGhl
c2UgZGVwZW5kZW5jaWVzIGZyb20gdGhlIEljb25EYXRhYmFzZUJhc2UgY2xhc3MuCisKICAgICB2
aXJ0dWFsIHZvaWQgc2V0RW5hYmxlZChib29sKSB7IH0KIAogICAgIHZpcnR1YWwgSW1hZ2UqIGRl
ZmF1bHRJY29uKGNvbnN0IEludFNpemUmKSB7IHJldHVybiBudWxscHRyOyB9CkBAIC0yMDUsMTAg
KzE5NiwxMiBAQCBwdWJsaWM6CiAKICAgICB2aXJ0dWFsIHZvaWQgc2V0UHJpdmF0ZUJyb3dzaW5n
RW5hYmxlZChib29sKSB7IH0KICAgICB2aXJ0dWFsIHZvaWQgc2V0Q2xpZW50KEljb25EYXRhYmFz
ZUNsaWVudCopIHsgfQotICAgIAorCiAgICAgdmlydHVhbCBib29sIGlzT3BlbigpIGNvbnN0IHsg
cmV0dXJuIGZhbHNlOyB9CiAgICAgdmlydHVhbCBTdHJpbmcgZGF0YWJhc2VQYXRoKCkgY29uc3Q7
CiAKK3Byb3RlY3RlZDoKKyAgICBJY29uRGF0YWJhc2VCYXNlKCkgPSBkZWZhdWx0OwogfTsKIAog
Ly8gRnVuY3Rpb25zIHRvIGdldC9zZXQgdGhlIGdsb2JhbCBpY29uIGRhdGFiYXNlLgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vUGFnZVVSTFJlY29yZC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9QYWdlVVJMUmVjb3JkLmNwcAppbmRleCBmOGIyMzE0Y2Yx
MThjYjlkODY4YzE0MGQ4YjgyZWExMzU0MWRiOGIwLi45OWRkZWQ4ZjIwNWYzYWFiZjRlY2Y4MGQw
NzVhYWM4NWY5NjI5MWJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9Q
YWdlVVJMUmVjb3JkLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9QYWdlVVJM
UmVjb3JkLmNwcApAQCAtMzUsMjkgKzM1LDI5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogUGFn
ZVVSTFJlY29yZDo6UGFnZVVSTFJlY29yZChjb25zdCBTdHJpbmcmIHBhZ2VVUkwpCiAgICAgOiBt
X3BhZ2VVUkwocGFnZVVSTCkKLSAgICAsIG1fcmV0YWluQ291bnQoMCkKIHsKIH0KIAogUGFnZVVS
TFJlY29yZDo6flBhZ2VVUkxSZWNvcmQoKQogewotICAgIHNldEljb25SZWNvcmQobnVsbHB0cik7
CisgICAgaWYgKG1faWNvblJlY29yZCkKKyAgICAgICAgbV9pY29uUmVjb3JkLT5tX3JldGFpbmlu
Z1BhZ2VVUkxzLnJlbW92ZShtX3BhZ2VVUkwpOwogfQogCi12b2lkIFBhZ2VVUkxSZWNvcmQ6OnNl
dEljb25SZWNvcmQoUGFzc1JlZlB0cjxJY29uUmVjb3JkPiBpY29uKQordm9pZCBQYWdlVVJMUmVj
b3JkOjpzZXRJY29uUmVjb3JkKFJlZlB0cjxJY29uUmVjb3JkPiYmIGljb24pCiB7CiAgICAgaWYg
KG1faWNvblJlY29yZCkKICAgICAgICAgbV9pY29uUmVjb3JkLT5tX3JldGFpbmluZ1BhZ2VVUkxz
LnJlbW92ZShtX3BhZ2VVUkwpOwotICAgICAgICAKLSAgICBtX2ljb25SZWNvcmQgPSBpY29uOwot
ICAgIAorCisgICAgbV9pY29uUmVjb3JkID0gV1RGTW92ZShpY29uKTsKKwogICAgIGlmIChtX2lj
b25SZWNvcmQpCiAgICAgICAgIG1faWNvblJlY29yZC0+bV9yZXRhaW5pbmdQYWdlVVJMcy5hZGQo
bV9wYWdlVVJMKTsKIH0KICAgICAKIFBhZ2VVUkxTbmFwc2hvdCBQYWdlVVJMUmVjb3JkOjpzbmFw
c2hvdChib29sIGZvckRlbGV0aW9uKSBjb25zdCAKIHsKLSAgICByZXR1cm4gUGFnZVVSTFNuYXBz
aG90KG1fcGFnZVVSTCwgKG1faWNvblJlY29yZCAmJiAhZm9yRGVsZXRpb24pID8gbV9pY29uUmVj
b3JkLT5pY29uVVJMKCkgOiBTdHJpbmcoKSk7CisgICAgcmV0dXJuIHsgbV9wYWdlVVJMLCAobV9p
Y29uUmVjb3JkICYmICFmb3JEZWxldGlvbikgPyBtX2ljb25SZWNvcmQtPmljb25VUkwoKSA6IFN0
cmluZygpIH07CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9pY29uL1BhZ2VVUkxSZWNvcmQuaCBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9pY29uL1BhZ2VVUkxSZWNvcmQuaAppbmRleCBlZmVkMzQ1MGM1MmQ3OTA0M2YzYmI2MmY3
MGYyNmYzZmRmY2VjYjNkLi4xODk4NzVlMzJkOGE3NGRlNDE3ZDU5ZTE2YmQ0MGNhNzhhOTIwZTgx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9QYWdlVVJMUmVjb3JkLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vUGFnZVVSTFJlY29yZC5oCkBAIC02MSw3
ICs2MSw3IEBAIHB1YmxpYzoKIAogICAgIGlubGluZSBTdHJpbmcgdXJsKCkgY29uc3QgeyByZXR1
cm4gbV9wYWdlVVJMOyB9CiAgICAgCi0gICAgdm9pZCBzZXRJY29uUmVjb3JkKFBhc3NSZWZQdHI8
SWNvblJlY29yZD4pOworICAgIHZvaWQgc2V0SWNvblJlY29yZChSZWZQdHI8SWNvblJlY29yZD4m
Jik7CiAgICAgSWNvblJlY29yZCogaWNvblJlY29yZCgpIHsgcmV0dXJuIG1faWNvblJlY29yZC5n
ZXQoKTsgfQogCiAgICAgUGFnZVVSTFNuYXBzaG90IHNuYXBzaG90KGJvb2wgZm9yRGVsZXRpb24g
PSBmYWxzZSkgY29uc3Q7CkBAIC04MiwxMiArODIsMTIgQEAgcHVibGljOgogICAgICAgICByZXR1
cm4gbV9yZXRhaW5Db3VudCA+IDA7CiAgICAgfQogCi0gICAgaW5saW5lIGludCByZXRhaW5Db3Vu
dCgpIGNvbnN0IHsgcmV0dXJuIG1fcmV0YWluQ291bnQ7IH0KKyAgICBpbnQgcmV0YWluQ291bnQo
KSBjb25zdCB7IHJldHVybiBtX3JldGFpbkNvdW50OyB9CiAKIHByaXZhdGU6CiAgICAgU3RyaW5n
IG1fcGFnZVVSTDsKICAgICBSZWZQdHI8SWNvblJlY29yZD4gbV9pY29uUmVjb3JkOwotICAgIGlu
dCBtX3JldGFpbkNvdW50OworICAgIGludCBtX3JldGFpbkNvdW50IHsgMCB9OwogfTsKIAogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2lv
cy9RdWlja0xvb2suaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pb3MvUXVpY2tMb29rLmgKaW5k
ZXggNTUzY2VkNTI1NjVmOWFiNmQ0MDM4OGMxMzZlNTNhN2U2OWU0Yzc2MS4uNmZkMWNjNjhlYjZk
NGYxOGFlODFlNTczMTc3Yjc2YTVkYTQ0ZDVhMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2lvcy9RdWlja0xvb2suaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaW9zL1F1
aWNrTG9vay5oCkBAIC04NCw3ICs4NCw3IEBAIHB1YmxpYzoKIAogICAgIFdFQkNPUkVfRVhQT1JU
IE5TVVJMUmVzcG9uc2UgKm5zUmVzcG9uc2UoKTsKIAotICAgIHZvaWQgc2V0Q2xpZW50KFBhc3NS
ZWZQdHI8UXVpY2tMb29rSGFuZGxlQ2xpZW50PiBjbGllbnQpIHsgbV9jbGllbnQgPSBjbGllbnQ7
IH0KKyAgICB2b2lkIHNldENsaWVudChSZWY8UXVpY2tMb29rSGFuZGxlQ2xpZW50PiYmIGNsaWVu
dCkgeyBtX2NsaWVudCA9IFdURk1vdmUoY2xpZW50KTsgfQogCiAgICAgV0VCQ09SRV9FWFBPUlQg
U3RyaW5nIHByZXZpZXdGaWxlTmFtZSgpIGNvbnN0OwogICAgIFdFQkNPUkVfRVhQT1JUIFN0cmlu
ZyBwcmV2aWV3VVRJKCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
aW9zL1F1aWNrTG9vay5tbSBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pb3MvUXVpY2tMb29rLm1t
CmluZGV4IGQxNDIxNDc2N2NiNTdhYzMwMmNiMWViMWI1NjcyMjAzNDUyNzdmM2IuLjI4NGQ0MmUx
ZmY1MjQ4ZGQ0YzNiMjY2Y2I4NGI5MjRlYzM1Yjc0MjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9pb3MvUXVpY2tMb29rLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9p
b3MvUXVpY2tMb29rLm1tCkBAIC0xODksMTMgKzE4OSwxMyBAQCBAZW5kCiAKIEBpbXBsZW1lbnRh
dGlvbiBXZWJSZXNvdXJjZUxvYWRlclF1aWNrTG9va0RlbGVnYXRlCiAKLS0gKGlkKWluaXRXaXRo
UmVzb3VyY2VMb2FkZXI6KFBhc3NSZWZQdHI8UmVzb3VyY2VMb2FkZXI+KXJlc291cmNlTG9hZGVy
CistIChpZClpbml0V2l0aFJlc291cmNlTG9hZGVyOihSZXNvdXJjZUxvYWRlciYpcmVzb3VyY2VM
b2FkZXIKIHsKICAgICBzZWxmID0gW3N1cGVyIGluaXRdOwogICAgIGlmICghc2VsZikKICAgICAg
ICAgcmV0dXJuIG5pbDsKIAotICAgIF9yZXNvdXJjZUxvYWRlciA9IHJlc291cmNlTG9hZGVyOwor
ICAgIF9yZXNvdXJjZUxvYWRlciA9ICZyZXNvdXJjZUxvYWRlcjsKICAgICByZXR1cm4gc2VsZjsK
IH0KIApAQCAtMzMxLDcgKzMzMSw3IEBAIHN0ZDo6dW5pcXVlX3B0cjxRdWlja0xvb2tIYW5kbGU+
IFF1aWNrTG9va0hhbmRsZTo6Y3JlYXRlKFJlc291cmNlTG9hZGVyJiBsb2FkZXIsCiB7CiAgICAg
QVNTRVJUKHNob3VsZENyZWF0ZUZvck1JTUVUeXBlKHJlc3BvbnNlLm1pbWVUeXBlKCkpKTsKIAot
ICAgIFJldGFpblB0cjxXZWJSZXNvdXJjZUxvYWRlclF1aWNrTG9va0RlbGVnYXRlPiBkZWxlZ2F0
ZSA9IGFkb3B0TlMoW1tXZWJSZXNvdXJjZUxvYWRlclF1aWNrTG9va0RlbGVnYXRlIGFsbG9jXSBp
bml0V2l0aFJlc291cmNlTG9hZGVyOiZsb2FkZXJdKTsKKyAgICBSZXRhaW5QdHI8V2ViUmVzb3Vy
Y2VMb2FkZXJRdWlja0xvb2tEZWxlZ2F0ZT4gZGVsZWdhdGUgPSBhZG9wdE5TKFtbV2ViUmVzb3Vy
Y2VMb2FkZXJRdWlja0xvb2tEZWxlZ2F0ZSBhbGxvY10gaW5pdFdpdGhSZXNvdXJjZUxvYWRlcjps
b2FkZXJdKTsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8UXVpY2tMb29rSGFuZGxlPiBxdWlja0xvb2tI
YW5kbGUobmV3IFF1aWNrTG9va0hhbmRsZShbbG9hZGVyLm9yaWdpbmFsUmVxdWVzdCgpLm5zVVJM
UmVxdWVzdChEb05vdFVwZGF0ZUhUVFBCb2R5KSBVUkxdLCByZXNwb25zZS5uc1VSTFJlc3BvbnNl
KCksIGRlbGVnYXRlLmdldCgpKSk7CiAgICAgW2RlbGVnYXRlIHNldFF1aWNrTG9va0hhbmRsZTpx
dWlja0xvb2tIYW5kbGUuZ2V0KCldOwogICAgIGxvYWRlci5kaWRDcmVhdGVRdWlja0xvb2tIYW5k
bGUoKnF1aWNrTG9va0hhbmRsZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0No
cm9tZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZS5jcHAKaW5kZXggZDAxNWJhNDVh
MzNhZWJjZTE3MjlkM2I5OWIyNTVmNTQ1MzAxZTc2YS4uMWVjNjZlOTkxMGY1NTY0OWVlNjBiOWY2
ZGMyOTBmMTMzMjQwYWQ0ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWUu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21lLmNwcApAQCAtNDMyLDcgKzQzMiw3
IEBAIHN0ZDo6dW5pcXVlX3B0cjxDb2xvckNob29zZXI+IENocm9tZTo6Y3JlYXRlQ29sb3JDaG9v
c2VyKENvbG9yQ2hvb3NlckNsaWVudCogY2xpCiB9CiAjZW5kaWYKIAotdm9pZCBDaHJvbWU6OnJ1
bk9wZW5QYW5lbChGcmFtZSogZnJhbWUsIFBhc3NSZWZQdHI8RmlsZUNob29zZXI+IGZpbGVDaG9v
c2VyKQordm9pZCBDaHJvbWU6OnJ1bk9wZW5QYW5lbChGcmFtZSYgZnJhbWUsIEZpbGVDaG9vc2Vy
JiBmaWxlQ2hvb3NlcikKIHsKICAgICBub3RpZnlQb3B1cE9wZW5pbmdPYnNlcnZlcnMoKTsKICAg
ICBtX2NsaWVudC5ydW5PcGVuUGFuZWwoZnJhbWUsIGZpbGVDaG9vc2VyKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21lLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9t
ZS5oCmluZGV4IGYyMzg2MGEyYmRhZjNjMjkzZTAxOTNjMmNhNDkyYmE2YTg4ZjdjNTIuLmI1MGY3
ODczZjEwNDllMDYxNmQ3MjM5ODAxM2QzMTQ2Mjc0YjNmNzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvQ2hyb21lLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWUuaApA
QCAtMTU2LDcgKzE1Niw3IEBAIHB1YmxpYzoKICAgICBzdGQ6OnVuaXF1ZV9wdHI8Q29sb3JDaG9v
c2VyPiBjcmVhdGVDb2xvckNob29zZXIoQ29sb3JDaG9vc2VyQ2xpZW50KiwgY29uc3QgQ29sb3Im
IGluaXRpYWxDb2xvcik7CiAjZW5kaWYKIAotICAgIHZvaWQgcnVuT3BlblBhbmVsKEZyYW1lKiwg
UGFzc1JlZlB0cjxGaWxlQ2hvb3Nlcj4pOworICAgIHZvaWQgcnVuT3BlblBhbmVsKEZyYW1lJiwg
RmlsZUNob29zZXImKTsKICAgICB2b2lkIGxvYWRJY29uRm9yRmlsZXMoY29uc3QgVmVjdG9yPFN0
cmluZz4mLCBGaWxlSWNvbkxvYWRlciYpOwogCiAgICAgdm9pZCBkaXNwYXRjaFZpZXdwb3J0UHJv
cGVydGllc0RpZENoYW5nZShjb25zdCBWaWV3cG9ydEFyZ3VtZW50cyYpIGNvbnN0OwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWVDbGllbnQuaCBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvQ2hyb21lQ2xpZW50LmgKaW5kZXggYTA5ZmUzY2IzMGJhM2Q4MThjMTRkMWQxOGVkNjUz
NWUxZmUzODgxNS4uODY4MjZlNTk1MDg5ZjI0YzI1YjI3ODZjMWY0ZTk4MjJkYzQ0ZGVkZiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWVDbGllbnQuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0Nocm9tZUNsaWVudC5oCkBAIC0yNzMsNyArMjczLDcgQEAgcHVibGljOgog
ICAgIHZpcnR1YWwgc3RkOjp1bmlxdWVfcHRyPENvbG9yQ2hvb3Nlcj4gY3JlYXRlQ29sb3JDaG9v
c2VyKENvbG9yQ2hvb3NlckNsaWVudCosIGNvbnN0IENvbG9yJikgPSAwOwogI2VuZGlmCiAKLSAg
ICB2aXJ0dWFsIHZvaWQgcnVuT3BlblBhbmVsKEZyYW1lKiwgUGFzc1JlZlB0cjxGaWxlQ2hvb3Nl
cj4pID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgcnVuT3BlblBhbmVsKEZyYW1lJiwgRmlsZUNob29z
ZXImKSA9IDA7CiAgICAgLy8gQXN5bmNocm9ub3VzIHJlcXVlc3QgdG8gbG9hZCBhbiBpY29uIGZv
ciBzcGVjaWZpZWQgZmlsZW5hbWVzLgogICAgIHZpcnR1YWwgdm9pZCBsb2FkSWNvbkZvckZpbGVz
KGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgRmlsZUljb25Mb2FkZXImKSA9IDA7CiAgICAgICAgIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9ET01XaW5kb3cuY3BwCmluZGV4IDZhMjdiMmMyOWJkMmZlNDQxYTIwODIyZDRk
OWQ1ZGI1NzllYTc3NmQuLjlmN2E2YWM1MDFhMzZiODRjZGI1NzE0YTJkYzI0ZWJmNzJkYWI1M2Ug
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAKQEAgLTc3Myw3ICs3NzMsNyBAQCBET01BcHBs
aWNhdGlvbkNhY2hlKiBET01XaW5kb3c6OmFwcGxpY2F0aW9uQ2FjaGUoKSBjb25zdAogICAgIGlm
ICghaXNDdXJyZW50bHlEaXNwbGF5ZWRJbkZyYW1lKCkpCiAgICAgICAgIHJldHVybiBudWxscHRy
OwogICAgIGlmICghbV9hcHBsaWNhdGlvbkNhY2hlKQotICAgICAgICBtX2FwcGxpY2F0aW9uQ2Fj
aGUgPSBET01BcHBsaWNhdGlvbkNhY2hlOjpjcmVhdGUobV9mcmFtZSk7CisgICAgICAgIG1fYXBw
bGljYXRpb25DYWNoZSA9IERPTUFwcGxpY2F0aW9uQ2FjaGU6OmNyZWF0ZSgqbV9mcmFtZSk7CiAg
ICAgcmV0dXJuIG1fYXBwbGljYXRpb25DYWNoZS5nZXQoKTsKIH0KIApAQCAtMjA4Nyw3ICsyMDg3
LDcgQEAgdm9pZCBET01XaW5kb3c6OnNldExvY2F0aW9uKERPTVdpbmRvdyYgYWN0aXZlV2luZG93
LCBET01XaW5kb3cmIGZpcnN0V2luZG93LCBjb24KICAgICAvLyBXZSB3YW50IGEgbmV3IGhpc3Rv
cnkgaXRlbSBpZiB3ZSBhcmUgcHJvY2Vzc2luZyBhIHVzZXIgZ2VzdHVyZS4KICAgICBMb2NrSGlz
dG9yeSBsb2NrSGlzdG9yeSA9IChsb2NraW5nICE9IExvY2tIaXN0b3J5QmFzZWRPbkdlc3R1cmVT
dGF0ZSB8fCAhU2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkpID8gTG9j
a0hpc3Rvcnk6OlllcyA6IExvY2tIaXN0b3J5OjpObzsKICAgICBMb2NrQmFja0ZvcndhcmRMaXN0
IGxvY2tCYWNrRm9yd2FyZExpc3QgPSAobG9ja2luZyAhPSBMb2NrSGlzdG9yeUJhc2VkT25HZXN0
dXJlU3RhdGUpID8gTG9ja0JhY2tGb3J3YXJkTGlzdDo6WWVzIDogTG9ja0JhY2tGb3J3YXJkTGlz
dDo6Tm87Ci0gICAgbV9mcmFtZS0+bmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlTG9jYXRp
b25DaGFuZ2UoYWN0aXZlRG9jdW1lbnQsIGFjdGl2ZURvY3VtZW50LT5zZWN1cml0eU9yaWdpbigp
LAorICAgIG1fZnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hh
bmdlKCphY3RpdmVEb2N1bWVudCwgYWN0aXZlRG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCksCiAg
ICAgICAgIC8vIEZJWE1FOiBXaGF0IGlmIGFjdGl2ZURvY3VtZW50KCktPmZyYW1lKCkgaXMgMD8K
ICAgICAgICAgY29tcGxldGVkVVJMLCBhY3RpdmVEb2N1bWVudC0+ZnJhbWUoKS0+bG9hZGVyKCku
b3V0Z29pbmdSZWZlcnJlcigpLAogICAgICAgICBsb2NrSGlzdG9yeSwgbG9ja0JhY2tGb3J3YXJk
TGlzdCk7CkBAIC0yMjEzLDcgKzIyMTMsNyBAQCBSZWZQdHI8RnJhbWU+IERPTVdpbmRvdzo6Y3Jl
YXRlV2luZG93KGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nLCBjb25zdCBBdG9taWNTdHJpbgogICAg
ICAgICBuZXdGcmFtZS0+bG9hZGVyKCkuY2hhbmdlTG9jYXRpb24oZnJhbWVSZXF1ZXN0KTsKICAg
ICB9IGVsc2UgaWYgKCF1cmxTdHJpbmcuaXNFbXB0eSgpKSB7CiAgICAgICAgIExvY2tIaXN0b3J5
IGxvY2tIaXN0b3J5ID0gU2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkg
PyBMb2NrSGlzdG9yeTo6Tm8gOiBMb2NrSGlzdG9yeTo6WWVzOwotICAgICAgICBuZXdGcmFtZS0+
bmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UoYWN0aXZlV2luZG93
LmRvY3VtZW50KCksIGFjdGl2ZVdpbmRvdy5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLCBj
b21wbGV0ZWRVUkwsIHJlZmVycmVyLCBsb2NrSGlzdG9yeSwgTG9ja0JhY2tGb3J3YXJkTGlzdDo6
Tm8pOworICAgICAgICBuZXdGcmFtZS0+bmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlTG9j
YXRpb25DaGFuZ2UoKmFjdGl2ZVdpbmRvdy5kb2N1bWVudCgpLCBhY3RpdmVXaW5kb3cuZG9jdW1l
bnQoKS0+c2VjdXJpdHlPcmlnaW4oKSwgY29tcGxldGVkVVJMLCByZWZlcnJlciwgbG9ja0hpc3Rv
cnksIExvY2tCYWNrRm9yd2FyZExpc3Q6Ok5vKTsKICAgICB9CiAKICAgICAvLyBOYXZpZ2F0aW5n
IHRoZSBuZXcgZnJhbWUgY291bGQgcmVzdWx0IGluIGl0IGJlaW5nIGRldGFjaGVkIGZyb20gaXRz
IHBhZ2UgYnkgYSBuYXZpZ2F0aW9uIHBvbGljeSBkZWxlZ2F0ZS4KQEAgLTIyMjMsMjggKzIyMjMs
MjYgQEAgUmVmUHRyPEZyYW1lPiBET01XaW5kb3c6OmNyZWF0ZVdpbmRvdyhjb25zdCBTdHJpbmcm
IHVybFN0cmluZywgY29uc3QgQXRvbWljU3RyaW4KICAgICByZXR1cm4gbmV3RnJhbWU7CiB9CiAK
LVJlZlB0cjxET01XaW5kb3c+IERPTVdpbmRvdzo6b3Blbihjb25zdCBTdHJpbmcmIHVybFN0cmlu
ZywgY29uc3QgQXRvbWljU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IFN0cmluZyYgd2luZG93RmVh
dHVyZXNTdHJpbmcsCi0gICAgRE9NV2luZG93JiBhY3RpdmVXaW5kb3csIERPTVdpbmRvdyYgZmly
c3RXaW5kb3cpCitSZWZQdHI8RE9NV2luZG93PiBET01XaW5kb3c6Om9wZW4oY29uc3QgU3RyaW5n
JiB1cmxTdHJpbmcsIGNvbnN0IEF0b21pY1N0cmluZyYgZnJhbWVOYW1lLCBjb25zdCBTdHJpbmcm
IHdpbmRvd0ZlYXR1cmVzU3RyaW5nLCBET01XaW5kb3cmIGFjdGl2ZVdpbmRvdywgRE9NV2luZG93
JiBmaXJzdFdpbmRvdykKIHsKICAgICBpZiAoIWlzQ3VycmVudGx5RGlzcGxheWVkSW5GcmFtZSgp
KQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAotICAgIERvY3VtZW50KiBhY3RpdmVEb2N1bWVu
dCA9IGFjdGl2ZVdpbmRvdy5kb2N1bWVudCgpOworICAgIGF1dG8qIGFjdGl2ZURvY3VtZW50ID0g
YWN0aXZlV2luZG93LmRvY3VtZW50KCk7CiAgICAgaWYgKCFhY3RpdmVEb2N1bWVudCkKICAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CiAKLSAgICBGcmFtZSogZmlyc3RGcmFtZSA9IGZpcnN0V2luZG93
LmZyYW1lKCk7CisgICAgYXV0byogZmlyc3RGcmFtZSA9IGZpcnN0V2luZG93LmZyYW1lKCk7CiAg
ICAgaWYgKCFmaXJzdEZyYW1lKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAogI2lmIEVOQUJM
RShDT05URU5UX0VYVEVOU0lPTlMpCiAgICAgaWYgKGZpcnN0RnJhbWUtPmRvY3VtZW50KCkKLSAg
ICAgICAgJiYgZmlyc3RGcmFtZS0+bWFpbkZyYW1lKCkucGFnZSgpCisgICAgICAgICYmIGZpcnN0
RnJhbWUtPnBhZ2UoKQogICAgICAgICAmJiBmaXJzdEZyYW1lLT5tYWluRnJhbWUoKS5kb2N1bWVu
dCgpCiAgICAgICAgICYmIGZpcnN0RnJhbWUtPm1haW5GcmFtZSgpLmRvY3VtZW50KCktPmxvYWRl
cigpKSB7Ci0gICAgICAgIFJlc291cmNlTG9hZEluZm8gcmVzb3VyY2VMb2FkSW5mbyA9IHsgZmly
c3RGcmFtZS0+ZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwodXJsU3RyaW5nKSwgZmlyc3RGcmFtZS0+
bWFpbkZyYW1lKCkuZG9jdW1lbnQoKS0+dXJsKCksIFJlc291cmNlVHlwZTo6UG9wdXAgfTsKLSAg
ICAgICAgVmVjdG9yPENvbnRlbnRFeHRlbnNpb25zOjpBY3Rpb24+IGFjdGlvbnMgPSBmaXJzdEZy
YW1lLT5tYWluRnJhbWUoKS5wYWdlKCktPnVzZXJDb250ZW50UHJvdmlkZXIoKS5hY3Rpb25zRm9y
UmVzb3VyY2VMb2FkKHJlc291cmNlTG9hZEluZm8sICpmaXJzdEZyYW1lLT5tYWluRnJhbWUoKS5k
b2N1bWVudCgpLT5sb2FkZXIoKSk7Ci0gICAgICAgIGZvciAoY29uc3QgQ29udGVudEV4dGVuc2lv
bnM6OkFjdGlvbiYgYWN0aW9uIDogYWN0aW9ucykgeworICAgICAgICBSZXNvdXJjZUxvYWRJbmZv
IHJlc291cmNlTG9hZEluZm8geyBmaXJzdEZyYW1lLT5kb2N1bWVudCgpLT5jb21wbGV0ZVVSTCh1
cmxTdHJpbmcpLCBmaXJzdEZyYW1lLT5tYWluRnJhbWUoKS5kb2N1bWVudCgpLT51cmwoKSwgUmVz
b3VyY2VUeXBlOjpQb3B1cCB9OworICAgICAgICBmb3IgKGF1dG8mIGFjdGlvbiA6IGZpcnN0RnJh
bWUtPnBhZ2UoKS0+dXNlckNvbnRlbnRQcm92aWRlcigpLmFjdGlvbnNGb3JSZXNvdXJjZUxvYWQo
cmVzb3VyY2VMb2FkSW5mbywgKmZpcnN0RnJhbWUtPm1haW5GcmFtZSgpLmRvY3VtZW50KCktPmxv
YWRlcigpKSkgewogICAgICAgICAgICAgaWYgKGFjdGlvbi50eXBlKCkgPT0gQ29udGVudEV4dGVu
c2lvbnM6OkFjdGlvblR5cGU6OkJsb2NrTG9hZCkKICAgICAgICAgICAgICAgICByZXR1cm4gbnVs
bHB0cjsKICAgICAgICAgfQpAQCAtMjI4NCw3ICsyMjgyLDcgQEAgUmVmUHRyPERPTVdpbmRvdz4g
RE9NV2luZG93OjpvcGVuKGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nLCBjb25zdCBBdG9taWNTdHJp
bmcmIGYKICAgICAgICAgLy8gRm9yIHdoYXRldmVyIHJlYXNvbiwgRmlyZWZveCB1c2VzIHRoZSBm
aXJzdCB3aW5kb3cgcmF0aGVyIHRoYW4gdGhlIGFjdGl2ZSB3aW5kb3cgdG8KICAgICAgICAgLy8g
ZGV0ZXJtaW5lIHRoZSBvdXRnb2luZyByZWZlcnJlci4gV2UgcmVwbGljYXRlIHRoYXQgYmVoYXZp
b3IgaGVyZS4KICAgICAgICAgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnkgPSBTY3JpcHRDb250cm9s
bGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSA/IExvY2tIaXN0b3J5OjpObyA6IExvY2tIaXN0
b3J5OjpZZXM7Ci0gICAgICAgIHRhcmdldEZyYW1lLT5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2No
ZWR1bGVMb2NhdGlvbkNoYW5nZShhY3RpdmVEb2N1bWVudCwgYWN0aXZlRG9jdW1lbnQtPnNlY3Vy
aXR5T3JpZ2luKCksIGNvbXBsZXRlZFVSTCwgZmlyc3RGcmFtZS0+bG9hZGVyKCkub3V0Z29pbmdS
ZWZlcnJlcigpLAorICAgICAgICB0YXJnZXRGcmFtZS0+bmF2aWdhdGlvblNjaGVkdWxlcigpLnNj
aGVkdWxlTG9jYXRpb25DaGFuZ2UoKmFjdGl2ZURvY3VtZW50LCBhY3RpdmVEb2N1bWVudC0+c2Vj
dXJpdHlPcmlnaW4oKSwgY29tcGxldGVkVVJMLCBmaXJzdEZyYW1lLT5sb2FkZXIoKS5vdXRnb2lu
Z1JlZmVycmVyKCksCiAgICAgICAgICAgICBsb2NrSGlzdG9yeSwgTG9ja0JhY2tGb3J3YXJkTGlz
dDo6Tm8pOwogICAgICAgICByZXR1cm4gdGFyZ2V0RnJhbWUtPmRvY3VtZW50KCktPmRvbVdpbmRv
dygpOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRWRpdG9yQ2xpZW50
LmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0VkaXRvckNsaWVudC5oCmluZGV4IGViMWE0MmUyZWVk
MDNhNTE0ZDEyMzYwOGJjZTczYjRlMmQ1Njc4MGEuLmY0MTMyMTA5ZjY0OTNjMzA1ODJhOTg5MTky
YzhkYjM1NTk5OTc4NGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRWRpdG9yQ2xp
ZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FZGl0b3JDbGllbnQuaApAQCAtMTA0LDgg
KzEwNCw4IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgZGlzY2FyZGVkQ29tcG9zaXRpb24o
RnJhbWUqKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGNhbmNlbGVkQ29tcG9zaXRpb24oKSA9IDA7
CiAKLSAgICB2aXJ0dWFsIHZvaWQgcmVnaXN0ZXJVbmRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVw
PikgPSAwOwotICAgIHZpcnR1YWwgdm9pZCByZWdpc3RlclJlZG9TdGVwKFBhc3NSZWZQdHI8VW5k
b1N0ZXA+KSA9IDA7CisgICAgdmlydHVhbCB2b2lkIHJlZ2lzdGVyVW5kb1N0ZXAoVW5kb1N0ZXAm
KSA9IDA7CisgICAgdmlydHVhbCB2b2lkIHJlZ2lzdGVyUmVkb1N0ZXAoVW5kb1N0ZXAmKSA9IDA7
CiAgICAgdmlydHVhbCB2b2lkIGNsZWFyVW5kb1JlZG9PcGVyYXRpb25zKCkgPSAwOwogCiAgICAg
dmlydHVhbCBib29sIGNhbkNvcHlDdXQoRnJhbWUqLCBib29sIGRlZmF1bHRWYWx1ZSkgY29uc3Qg
PSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9IaXN0b3J5LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvSGlzdG9yeS5jcHAKaW5kZXggMWQ0NTQyYjg3ZWE2MTI1MGE4NGJkN2Nk
OTE2NzJkNWVhZmIzODRkZi4uNjNlZDNkMDA3ZWJlZDFhODIzOTBiYWUxOTg3NWIzNTI3NjlmZThl
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9IaXN0b3J5LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0hpc3RvcnkuY3BwCkBAIC0yMDcsMTAgKzIwNywxMCBAQCBFeGNlcHRp
b25Pcjx2b2lkPiBIaXN0b3J5OjpzdGF0ZU9iamVjdEFkZGVkKFJlZlB0cjxTZXJpYWxpemVkU2Ny
aXB0VmFsdWU+JiYgZGF0YQogICAgICAgICBtX2ZyYW1lLT5kb2N1bWVudCgpLT51cGRhdGVVUkxG
b3JQdXNoT3JSZXBsYWNlU3RhdGUoZnVsbFVSTCk7CiAKICAgICBpZiAoc3RhdGVPYmplY3RUeXBl
ID09IFN0YXRlT2JqZWN0VHlwZTo6UHVzaCkgewotICAgICAgICBtX2ZyYW1lLT5sb2FkZXIoKS5o
aXN0b3J5KCkucHVzaFN0YXRlKGRhdGEsIHRpdGxlLCBmdWxsVVJMLnN0cmluZygpKTsKKyAgICAg
ICAgbV9mcmFtZS0+bG9hZGVyKCkuaGlzdG9yeSgpLnB1c2hTdGF0ZShXVEZNb3ZlKGRhdGEpLCB0
aXRsZSwgZnVsbFVSTC5zdHJpbmcoKSk7CiAgICAgICAgIG1fZnJhbWUtPmxvYWRlcigpLmNsaWVu
dCgpLmRpc3BhdGNoRGlkUHVzaFN0YXRlV2l0aGluUGFnZSgpOwogICAgIH0gZWxzZSBpZiAoc3Rh
dGVPYmplY3RUeXBlID09IFN0YXRlT2JqZWN0VHlwZTo6UmVwbGFjZSkgewotICAgICAgICBtX2Zy
YW1lLT5sb2FkZXIoKS5oaXN0b3J5KCkucmVwbGFjZVN0YXRlKGRhdGEsIHRpdGxlLCBmdWxsVVJM
LnN0cmluZygpKTsKKyAgICAgICAgbV9mcmFtZS0+bG9hZGVyKCkuaGlzdG9yeSgpLnJlcGxhY2VT
dGF0ZShXVEZNb3ZlKGRhdGEpLCB0aXRsZSwgZnVsbFVSTC5zdHJpbmcoKSk7CiAgICAgICAgIG1f
ZnJhbWUtPmxvYWRlcigpLmNsaWVudCgpLmRpc3BhdGNoRGlkUmVwbGFjZVN0YXRlV2l0aGluUGFn
ZSgpOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Mb2NhdGlvbi5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0xvY2F0aW9uLmNwcAppbmRleCA4ZDgzOWQxM2E5MTk4
MGUxYTAyOGRiYzU4MGJiYmYxZDM2NmQ0NTZmLi5iZGI1NDhiMGI3ODkzNGFjNjJjMTcxZTY5Zjdm
MTI5M2JmZmE0Mjc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0xvY2F0aW9uLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0xvY2F0aW9uLmNwcApAQCAtMjIxLDkgKzIyMSwx
MCBAQCB2b2lkIExvY2F0aW9uOjpzZXRIYXNoKERPTVdpbmRvdyYgYWN0aXZlV2luZG93LCBET01X
aW5kb3cmIGZpcnN0V2luZG93LCBjb25zdCBTdAogewogICAgIGlmICghbV9mcmFtZSkKICAgICAg
ICAgcmV0dXJuOwotICAgIFVSTCB1cmwgPSBtX2ZyYW1lLT5kb2N1bWVudCgpLT51cmwoKTsKLSAg
ICBTdHJpbmcgb2xkRnJhZ21lbnRJZGVudGlmaWVyID0gdXJsLmZyYWdtZW50SWRlbnRpZmllcigp
OwotICAgIFN0cmluZyBuZXdGcmFnbWVudElkZW50aWZpZXIgPSBoYXNoOworICAgIEFTU0VSVCht
X2ZyYW1lLT5kb2N1bWVudCgpKTsKKyAgICBhdXRvIHVybCA9IG1fZnJhbWUtPmRvY3VtZW50KCkt
PnVybCgpOworICAgIGF1dG8gb2xkRnJhZ21lbnRJZGVudGlmaWVyID0gdXJsLmZyYWdtZW50SWRl
bnRpZmllcigpOworICAgIGF1dG8gbmV3RnJhZ21lbnRJZGVudGlmaWVyID0gaGFzaDsKICAgICBp
ZiAoaGFzaFswXSA9PSAnIycpCiAgICAgICAgIG5ld0ZyYWdtZW50SWRlbnRpZmllciA9IGhhc2gu
c3Vic3RyaW5nKDEpOwogICAgIHVybC5zZXRGcmFnbWVudElkZW50aWZpZXIobmV3RnJhZ21lbnRJ
ZGVudGlmaWVyKTsKQEAgLTI0Niw3ICsyNDcsOSBAQCB2b2lkIExvY2F0aW9uOjpyZXBsYWNlKERP
TVdpbmRvdyYgYWN0aXZlV2luZG93LCBET01XaW5kb3cmIGZpcnN0V2luZG93LCBjb25zdCBTdAog
ewogICAgIGlmICghbV9mcmFtZSkKICAgICAgICAgcmV0dXJuOwotICAgIC8vIE5vdGU6IFdlIGNh
bGwgRE9NV2luZG93OjpzZXRMb2NhdGlvbiBkaXJlY3RseSBoZXJlIGJlY2F1c2UgcmVwbGFjZSgp
IGFsd2F5cyBvcGVyYXRlcyBvbiB0aGUgY3VycmVudCBmcmFtZS4KKyAgICBBU1NFUlQobV9mcmFt
ZS0+ZG9jdW1lbnQoKSk7CisgICAgQVNTRVJUKG1fZnJhbWUtPmRvY3VtZW50KCktPmRvbVdpbmRv
dygpKTsKKyAgICAvLyBXZSBjYWxsIERPTVdpbmRvdzo6c2V0TG9jYXRpb24gZGlyZWN0bHkgaGVy
ZSBiZWNhdXNlIHJlcGxhY2UoKSBhbHdheXMgb3BlcmF0ZXMgb24gdGhlIGN1cnJlbnQgZnJhbWUu
CiAgICAgbV9mcmFtZS0+ZG9jdW1lbnQoKS0+ZG9tV2luZG93KCktPnNldExvY2F0aW9uKGFjdGl2
ZVdpbmRvdywgZmlyc3RXaW5kb3csIHVybCwgTG9ja0hpc3RvcnlBbmRCYWNrRm9yd2FyZExpc3Qp
OwogfQogCkBAIC0yNTQsMjYgKzI1NywzOCBAQCB2b2lkIExvY2F0aW9uOjpyZWxvYWQoRE9NV2lu
ZG93JiBhY3RpdmVXaW5kb3cpCiB7CiAgICAgaWYgKCFtX2ZyYW1lKQogICAgICAgICByZXR1cm47
CisKKyAgICBBU1NFUlQoYWN0aXZlV2luZG93LmRvY3VtZW50KCkpOworICAgIEFTU0VSVChtX2Zy
YW1lLT5kb2N1bWVudCgpKTsKKyAgICBBU1NFUlQobV9mcmFtZS0+ZG9jdW1lbnQoKS0+ZG9tV2lu
ZG93KCkpOworCisgICAgYXV0byYgYWN0aXZlRG9jdW1lbnQgPSAqYWN0aXZlV2luZG93LmRvY3Vt
ZW50KCk7CisgICAgYXV0byYgdGFyZ2V0RG9jdW1lbnQgPSAqbV9mcmFtZS0+ZG9jdW1lbnQoKTsK
KwogICAgIC8vIEZJWE1FOiBJdCdzIG5vdCBjbGVhciB0aGlzIGNyb3NzLW9yaWdpbiBzZWN1cml0
eSBjaGVjayBpcyB2YWx1YWJsZS4KICAgICAvLyBXZSBhbGxvdyBvbmUgcGFnZSB0byBjaGFuZ2Ug
dGhlIGxvY2F0aW9uIG9mIGFub3RoZXIuIFdoeSBibG9jayBhdHRlbXB0cyB0byByZWxvYWQ/CiAg
ICAgLy8gT3RoZXIgbG9jYXRpb24gb3BlcmF0aW9ucyBzaW1wbHkgYmxvY2sgdXNlIG9mIEphdmFT
Y3JpcHQgVVJMcyBjcm9zcyBvcmlnaW4uCi0gICAgRE9NV2luZG93KiB0YXJnZXRXaW5kb3cgPSBt
X2ZyYW1lLT5kb2N1bWVudCgpLT5kb21XaW5kb3coKTsKLSAgICBpZiAoIWFjdGl2ZVdpbmRvdy5k
b2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5jYW5BY2Nlc3MobV9mcmFtZS0+ZG9jdW1lbnQo
KS0+c2VjdXJpdHlPcmlnaW4oKSkpIHsKLSAgICAgICAgdGFyZ2V0V2luZG93LT5wcmludEVycm9y
TWVzc2FnZSh0YXJnZXRXaW5kb3ctPmNyb3NzRG9tYWluQWNjZXNzRXJyb3JNZXNzYWdlKGFjdGl2
ZVdpbmRvdykpOworICAgIGlmICghYWN0aXZlRG9jdW1lbnQuc2VjdXJpdHlPcmlnaW4oKS0+Y2Fu
QWNjZXNzKHRhcmdldERvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCkpKSB7CisgICAgICAgIGF1dG8m
IHRhcmdldFdpbmRvdyA9ICp0YXJnZXREb2N1bWVudC5kb21XaW5kb3coKTsKKyAgICAgICAgdGFy
Z2V0V2luZG93LnByaW50RXJyb3JNZXNzYWdlKHRhcmdldFdpbmRvdy5jcm9zc0RvbWFpbkFjY2Vz
c0Vycm9yTWVzc2FnZShhY3RpdmVXaW5kb3cpKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KLSAg
ICBpZiAocHJvdG9jb2xJc0phdmFTY3JpcHQobV9mcmFtZS0+ZG9jdW1lbnQoKS0+dXJsKCkpKQor
CisgICAgaWYgKHByb3RvY29sSXNKYXZhU2NyaXB0KHRhcmdldERvY3VtZW50LnVybCgpKSkKICAg
ICAgICAgcmV0dXJuOwotICAgIG1fZnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVs
ZVJlZnJlc2goYWN0aXZlV2luZG93LmRvY3VtZW50KCkpOworCisgICAgbV9mcmFtZS0+bmF2aWdh
dGlvblNjaGVkdWxlcigpLnNjaGVkdWxlUmVmcmVzaChhY3RpdmVEb2N1bWVudCk7CiB9CiAKIHZv
aWQgTG9jYXRpb246OnNldExvY2F0aW9uKERPTVdpbmRvdyYgYWN0aXZlV2luZG93LCBET01XaW5k
b3cmIGZpcnN0V2luZG93LCBjb25zdCBTdHJpbmcmIHVybCkKIHsKICAgICBBU1NFUlQobV9mcmFt
ZSk7Ci0gICAgRnJhbWUqIGZyYW1lID0gbV9mcmFtZS0+bG9hZGVyKCkuZmluZEZyYW1lRm9yTmF2
aWdhdGlvbihTdHJpbmcoKSwgYWN0aXZlV2luZG93LmRvY3VtZW50KCkpOwotICAgIGlmICghZnJh
bWUpCisgICAgYXV0byogdGFyZ2V0RnJhbWUgPSBtX2ZyYW1lLT5sb2FkZXIoKS5maW5kRnJhbWVG
b3JOYXZpZ2F0aW9uKHsgfSwgYWN0aXZlV2luZG93LmRvY3VtZW50KCkpOworICAgIGlmICghdGFy
Z2V0RnJhbWUpCiAgICAgICAgIHJldHVybjsKLSAgICBmcmFtZS0+ZG9jdW1lbnQoKS0+ZG9tV2lu
ZG93KCktPnNldExvY2F0aW9uKGFjdGl2ZVdpbmRvdywgZmlyc3RXaW5kb3csIHVybCk7CisgICAg
QVNTRVJUKHRhcmdldEZyYW1lLT5kb2N1bWVudCgpKTsKKyAgICBBU1NFUlQodGFyZ2V0RnJhbWUt
PmRvY3VtZW50KCktPmRvbVdpbmRvdygpKTsKKyAgICB0YXJnZXRGcmFtZS0+ZG9jdW1lbnQoKS0+
ZG9tV2luZG93KCktPnNldExvY2F0aW9uKGFjdGl2ZVdpbmRvdywgZmlyc3RXaW5kb3csIHVybCk7
CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL1VSTC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9VUkwuY3BwCmluZGV4
IGU3MGEwZjdiODNlOWUyZjg0NTRjZDExZjVhNjQ5ODYxYTAyNjM4OTMuLjVlZmI4NWEzMDM0ZWUz
ZWVkMDBiYWZkY2YwZTY4MzIyNjUwNzc4YTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL1VSTC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVVJMLmNwcApAQCAt
MTEyNiwxNyArMTEyNiwxNyBAQCB2b2lkIFVSTDo6c2V0UGFzcyhjb25zdCBTdHJpbmcmIHBhc3N3
b3JkKQogICAgIH0KIH0KIAotdm9pZCBVUkw6OnNldEZyYWdtZW50SWRlbnRpZmllcihjb25zdCBT
dHJpbmcmIHMpCit2b2lkIFVSTDo6c2V0RnJhZ21lbnRJZGVudGlmaWVyKFN0cmluZ1ZpZXcgaWRl
bnRpZmllcikKIHsKICAgICBpZiAoIW1faXNWYWxpZCkKICAgICAgICAgcmV0dXJuOwogCi0gICAg
Ly8gRklYTUU6IE5vbi1BU0NJSSBjaGFyYWN0ZXJzIG11c3QgYmUgZW5jb2RlZCBhbmQgZXNjYXBl
ZCB0byBtYXRjaCBwYXJzZSgpIGV4cGVjdGF0aW9ucy4KLSAgICBpZiAoVVJMUGFyc2VyOjplbmFi
bGVkKCkpIHsKLSAgICAgICAgVVJMUGFyc2VyIHBhcnNlcihtYWtlU3RyaW5nKG1fc3RyaW5nLmxl
ZnQobV9xdWVyeUVuZCksICIjIiwgcykpOwotICAgICAgICAqdGhpcyA9IHBhcnNlci5yZXN1bHQo
KTsKLSAgICB9IGVsc2UKLSAgICAgICAgcGFyc2UobV9zdHJpbmcubGVmdChtX3F1ZXJ5RW5kKSAr
ICIjIiArIHMpOworICAgIC8vIEZJWE1FOiBPcHRpbWl6ZSB0aGUgY2FzZSB3aGVyZSB0aGUgaWRl
bnRpZmllciBhbHJlYWR5IGhhcHBlbnMgdG8gYmUgZXF1YWwgdG8gd2hhdCB3YXMgcGFzc2VkPwor
ICAgIC8vIEZJWE1FOiBJcyBpdCBjb3JyZWN0IHRvIGRvIHRoaXMgd2l0aG91dCBlbmNvZGluZyBh
bmQgZXNjYXBpbmcgbm9uLUFTQ0lJIGNoYXJhY3RlcnM/CisgICAgaWYgKFVSTFBhcnNlcjo6ZW5h
YmxlZCgpKQorICAgICAgICAqdGhpcyA9IFVSTFBhcnNlciB7IG1ha2VTdHJpbmcoU3RyaW5nVmll
dyB7IG1fc3RyaW5nIH0uc3Vic3RyaW5nKDAsIG1fcXVlcnlFbmQpLCAnIycsIGlkZW50aWZpZXIp
IH0ucmVzdWx0KCk7CisgICAgZWxzZQorICAgICAgICBwYXJzZShtX3N0cmluZy5sZWZ0KG1fcXVl
cnlFbmQpICsgIiMiICsgaWRlbnRpZmllcik7CiB9CiAKIHZvaWQgVVJMOjpyZW1vdmVGcmFnbWVu
dElkZW50aWZpZXIoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVVJMLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9VUkwuaAppbmRleCA1YWJmMDVmZTdjNjM3NGZkNTUy
YTgwMWRjNzhkYTJkYjZhNmNjZWZlLi5iMmMyM2RlNDExNzg0MDAwMjA0MzNkM2IzNGJkNjdjMTZh
NTQ1ZGQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9VUkwuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9VUkwuaApAQCAtMTU4LDcgKzE1OCw3IEBAIHB1YmxpYzoK
ICAgICAvLyBVUkwgKHdpdGggbm90aGluZyBhZnRlciBpdCkuIFRvIGNsZWFyIHRoZSBxdWVyeSwg
cGFzcyBhIG51bGwgc3RyaW5nLgogICAgIHZvaWQgc2V0UXVlcnkoY29uc3QgU3RyaW5nJik7CiAK
LSAgICB2b2lkIHNldEZyYWdtZW50SWRlbnRpZmllcihjb25zdCBTdHJpbmcmKTsKKyAgICB2b2lk
IHNldEZyYWdtZW50SWRlbnRpZmllcihTdHJpbmdWaWV3KTsKICAgICB2b2lkIHJlbW92ZUZyYWdt
ZW50SWRlbnRpZmllcigpOwogCiAgICAgV0VCQ09SRV9FWFBPUlQgZnJpZW5kIGJvb2wgZXF1YWxJ
Z25vcmluZ0ZyYWdtZW50SWRlbnRpZmllcihjb25zdCBVUkwmLCBjb25zdCBVUkwmKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlcGxheS9SZXBsYXlJbnB1dERpc3BhdGNoTWV0aG9kcy5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9yZXBsYXkvUmVwbGF5SW5wdXREaXNwYXRjaE1ldGhvZHMuY3Bw
CmluZGV4IDg0NzUyYTIzMmZlYTZlMzllYzU3NjE0MmZlMzU3MGMxYmMzZDI0MTYuLjdmM2MzMDAz
YzE1MmFlYzA4MmZhOTdmNjAyNmY3ODZmYTkyY2Y0YjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3JlcGxheS9SZXBsYXlJbnB1dERpc3BhdGNoTWV0aG9kcy5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcmVwbGF5L1JlcGxheUlucHV0RGlzcGF0Y2hNZXRob2RzLmNwcApAQCAtNTAsOCArNTAs
OSBAQCB2b2lkIEVuZFNlZ21lbnRTZW50aW5lbDo6ZGlzcGF0Y2goUmVwbGF5Q29udHJvbGxlciYp
CiAvLyBOYXZpZ2F0aW9uIGlucHV0cy4KIHZvaWQgSW5pdGlhbE5hdmlnYXRpb246OmRpc3BhdGNo
KFJlcGxheUNvbnRyb2xsZXImIGNvbnRyb2xsZXIpCiB7Ci0gICAgRnJhbWUmIGZyYW1lID0gY29u
dHJvbGxlci5wYWdlKCkubWFpbkZyYW1lKCk7Ci0gICAgZnJhbWUubmF2aWdhdGlvblNjaGVkdWxl
cigpLnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UoZnJhbWUuZG9jdW1lbnQoKSwgbV9zZWN1cml0eU9y
aWdpbi5nZXQoKSwgbV91cmwsIG1fcmVmZXJyZXIpOworICAgIGF1dG8mIGZyYW1lID0gY29udHJv
bGxlci5wYWdlKCkubWFpbkZyYW1lKCk7CisgICAgQVNTRVJUKGZyYW1lLmRvY3VtZW50KCkpOwor
ICAgIGZyYW1lLm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKCpm
cmFtZS5kb2N1bWVudCgpLCBtX3NlY3VyaXR5T3JpZ2luLmdldCgpLCBtX3VybCwgbV9yZWZlcnJl
cik7CiB9CiAKIHZvaWQgSGFuZGxlS2V5UHJlc3M6OmRpc3BhdGNoKFJlcGxheUNvbnRyb2xsZXIm
IGNvbnRyb2xsZXIpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRkVJbWFnZUVs
ZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZFSW1hZ2VFbGVtZW50LmNwcAppbmRl
eCAwYjMyNzEwYjZmYTlkNDMzZmI4MmFhOTExNmIyMGQ2ODE4ZDVhZmIyLi5jMmNkNmY2NWIzMGI3
YTBiZWY0NDc4ZDVhYzQ3MDllZDljZmQyMWEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHRkVJbWFnZUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGRUlt
YWdlRWxlbWVudC5jcHAKQEAgLTg4LDcgKzg4LDcgQEAgdm9pZCBTVkdGRUltYWdlRWxlbWVudDo6
cmVxdWVzdEltYWdlUmVzb3VyY2UoKQogICAgIG9wdGlvbnMuY29udGVudFNlY3VyaXR5UG9saWN5
SW1wb3NpdGlvbiA9IGlzSW5Vc2VyQWdlbnRTaGFkb3dUcmVlKCkgPyBDb250ZW50U2VjdXJpdHlQ
b2xpY3lJbXBvc2l0aW9uOjpTa2lwUG9saWN5Q2hlY2sgOiBDb250ZW50U2VjdXJpdHlQb2xpY3lJ
bXBvc2l0aW9uOjpEb1BvbGljeUNoZWNrOwogCiAgICAgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0IHJl
cXVlc3QoUmVzb3VyY2VSZXF1ZXN0KGRvY3VtZW50KCkuY29tcGxldGVVUkwoaHJlZigpKSksIG9w
dGlvbnMpOwotICAgIHJlcXVlc3Quc2V0SW5pdGlhdG9yKHRoaXMpOworICAgIHJlcXVlc3Quc2V0
SW5pdGlhdG9yKCp0aGlzKTsKICAgICBtX2NhY2hlZEltYWdlID0gZG9jdW1lbnQoKS5jYWNoZWRS
ZXNvdXJjZUxvYWRlcigpLnJlcXVlc3RJbWFnZShXVEZNb3ZlKHJlcXVlc3QpKTsKIAogICAgIGlm
IChtX2NhY2hlZEltYWdlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvbnRG
YWNlVXJpRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRm9udEZhY2VVcmlFbGVt
ZW50LmNwcAppbmRleCAzNTY2YWM0NjUzMjlmN2ZhMWNkNDQ2ZWYxN2EzNjVkNzVlZjZmMjQzLi41
NmQ1ZTYzYzNjMTVhYWY2ZjVmNmU5YjY5OTRhOTBlNmZkNjIyMzQ0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9zdmcvU1ZHRm9udEZhY2VVcmlFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9zdmcvU1ZHRm9udEZhY2VVcmlFbGVtZW50LmNwcApAQCAtMTA1LDcgKzEwNSw3IEBAIHZv
aWQgU1ZHRm9udEZhY2VVcmlFbGVtZW50Ojpsb2FkRm9udCgpCiAKICAgICAgICAgQ2FjaGVkUmVz
b3VyY2VMb2FkZXImIGNhY2hlZFJlc291cmNlTG9hZGVyID0gZG9jdW1lbnQoKS5jYWNoZWRSZXNv
dXJjZUxvYWRlcigpOwogICAgICAgICBDYWNoZWRSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdChSZXNv
dXJjZVJlcXVlc3QoZG9jdW1lbnQoKS5jb21wbGV0ZVVSTChocmVmKSksIG9wdGlvbnMpOwotICAg
ICAgICByZXF1ZXN0LnNldEluaXRpYXRvcih0aGlzKTsKKyAgICAgICAgcmVxdWVzdC5zZXRJbml0
aWF0b3IoKnRoaXMpOwogICAgICAgICBtX2NhY2hlZEZvbnQgPSBjYWNoZWRSZXNvdXJjZUxvYWRl
ci5yZXF1ZXN0Rm9udChXVEZNb3ZlKHJlcXVlc3QpLCBpc1NWR0ZvbnRUYXJnZXQoKnRoaXMpKTsK
ICAgICAgICAgaWYgKG1fY2FjaGVkRm9udCkgewogICAgICAgICAgICAgbV9jYWNoZWRGb250LT5h
ZGRDbGllbnQoKnRoaXMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1VzZUVs
ZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1VzZUVsZW1lbnQuY3BwCmluZGV4IDhm
NTAwOTkyZjU1ZWIyNjU2MWE1OGZiYzE1OWI2MjMxMjdiMTU4NjcuLmU2YjRlZjY5NzNmMzYyYWI4
ZGZmNTZlOTMwOTFkYjlkZmQ4ZjIxOTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9T
VkdVc2VFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVXNlRWxlbWVudC5j
cHAKQEAgLTU3Miw3ICs1NzIsNyBAQCB2b2lkIFNWR1VzZUVsZW1lbnQ6OnVwZGF0ZUV4dGVybmFs
RG9jdW1lbnQoKQogICAgICAgICBvcHRpb25zLmNvbnRlbnRTZWN1cml0eVBvbGljeUltcG9zaXRp
b24gPSBpc0luVXNlckFnZW50U2hhZG93VHJlZSgpID8gQ29udGVudFNlY3VyaXR5UG9saWN5SW1w
b3NpdGlvbjo6U2tpcFBvbGljeUNoZWNrIDogQ29udGVudFNlY3VyaXR5UG9saWN5SW1wb3NpdGlv
bjo6RG9Qb2xpY3lDaGVjazsKICAgICAgICAgb3B0aW9ucy5tb2RlID0gRmV0Y2hPcHRpb25zOjpN
b2RlOjpTYW1lT3JpZ2luOwogICAgICAgICBDYWNoZWRSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCB7
IFJlc291cmNlUmVxdWVzdCB7IGV4dGVybmFsRG9jdW1lbnRVUkwgfSwgb3B0aW9ucyB9OwotICAg
ICAgICByZXF1ZXN0LnNldEluaXRpYXRvcih0aGlzKTsKKyAgICAgICAgcmVxdWVzdC5zZXRJbml0
aWF0b3IoKnRoaXMpOwogICAgICAgICBtX2V4dGVybmFsRG9jdW1lbnQgPSBkb2N1bWVudCgpLmNh
Y2hlZFJlc291cmNlTG9hZGVyKCkucmVxdWVzdFNWR0RvY3VtZW50KFdURk1vdmUocmVxdWVzdCkp
OwogICAgICAgICBpZiAobV9leHRlcm5hbERvY3VtZW50KQogICAgICAgICAgICAgbV9leHRlcm5h
bERvY3VtZW50LT5hZGRDbGllbnQoKnRoaXMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9t
YWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0L21hYy9X
ZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaAppbmRleCA0OGFiZTMwOGE4ZmVmNzVhZjg2
ODZlMWU1M2E4M2M4NzIxZjgyN2Y5Li41MTc1NzNjNzNhYWQzYjg2Y2RjMjExNjIyNWUzYWEyOTNh
ZjAwMjE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJD
aHJvbWVDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJD
aHJvbWVDbGllbnQuaApAQCAtMzMsMTMwICszMywxMzUgQEAKIAogQGNsYXNzIFdlYlZpZXc7CiAK
LWNsYXNzIFdlYkNocm9tZUNsaWVudCA6IHB1YmxpYyBXZWJDb3JlOjpDaHJvbWVDbGllbnQgewor
Y2xhc3MgV2ViQ2hyb21lQ2xpZW50IGZpbmFsIDogcHVibGljIFdlYkNvcmU6OkNocm9tZUNsaWVu
dCB7CiBwdWJsaWM6CiAgICAgV2ViQ2hyb21lQ2xpZW50KFdlYlZpZXcqKTsKLSAgICAKLSAgICB2
b2lkIGNocm9tZURlc3Ryb3llZCgpIG92ZXJyaWRlOwotICAgIAotICAgIHZvaWQgc2V0V2luZG93
UmVjdChjb25zdCBXZWJDb3JlOjpGbG9hdFJlY3QmKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpG
bG9hdFJlY3Qgd2luZG93UmVjdCgpIG92ZXJyaWRlOwotCi0gICAgV2ViQ29yZTo6RmxvYXRSZWN0
IHBhZ2VSZWN0KCkgb3ZlcnJpZGU7Ci0KLSAgICB2b2lkIGZvY3VzKCkgb3ZlcnJpZGU7Ci0gICAg
dm9pZCB1bmZvY3VzKCkgb3ZlcnJpZGU7Ci0gICAgCi0gICAgYm9vbCBjYW5UYWtlRm9jdXMoV2Vi
Q29yZTo6Rm9jdXNEaXJlY3Rpb24pIG92ZXJyaWRlOwotICAgIHZvaWQgdGFrZUZvY3VzKFdlYkNv
cmU6OkZvY3VzRGlyZWN0aW9uKSBvdmVycmlkZTsKLQotICAgIHZvaWQgZm9jdXNlZEVsZW1lbnRD
aGFuZ2VkKFdlYkNvcmU6OkVsZW1lbnQqKSBvdmVycmlkZTsKLSAgICB2b2lkIGZvY3VzZWRGcmFt
ZUNoYW5nZWQoV2ViQ29yZTo6RnJhbWUqKSBvdmVycmlkZTsKLQotICAgIFdlYkNvcmU6OlBhZ2Uq
IGNyZWF0ZVdpbmRvdyhXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6OkZyYW1lTG9hZFJl
cXVlc3QmLCBjb25zdCBXZWJDb3JlOjpXaW5kb3dGZWF0dXJlcyYsIGNvbnN0IFdlYkNvcmU6Ok5h
dmlnYXRpb25BY3Rpb24mKSBvdmVycmlkZTsKLSAgICB2b2lkIHNob3coKSBvdmVycmlkZTsKLQot
ICAgIGJvb2wgY2FuUnVuTW9kYWwoKSBvdmVycmlkZTsKLSAgICB2b2lkIHJ1bk1vZGFsKCkgb3Zl
cnJpZGU7Ci0KLSAgICB2b2lkIHNldFRvb2xiYXJzVmlzaWJsZShib29sKSBvdmVycmlkZTsKLSAg
ICBib29sIHRvb2xiYXJzVmlzaWJsZSgpIG92ZXJyaWRlOwotICAgIAotICAgIHZvaWQgc2V0U3Rh
dHVzYmFyVmlzaWJsZShib29sKSBvdmVycmlkZTsKLSAgICBib29sIHN0YXR1c2JhclZpc2libGUo
KSBvdmVycmlkZTsKLSAgICAKLSAgICB2b2lkIHNldFNjcm9sbGJhcnNWaXNpYmxlKGJvb2wpIG92
ZXJyaWRlOwotICAgIGJvb2wgc2Nyb2xsYmFyc1Zpc2libGUoKSBvdmVycmlkZTsKLSAgICAKLSAg
ICB2b2lkIHNldE1lbnViYXJWaXNpYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJvb2wgbWVudWJh
clZpc2libGUoKSBvdmVycmlkZTsKLSAgICAKLSAgICB2b2lkIHNldFJlc2l6YWJsZShib29sKSBv
dmVycmlkZTsKLSAgICAKLSAgICB2b2lkIGFkZE1lc3NhZ2VUb0NvbnNvbGUoSlNDOjpNZXNzYWdl
U291cmNlLCBKU0M6Ok1lc3NhZ2VMZXZlbCwgY29uc3QgV1RGOjpTdHJpbmcmIG1lc3NhZ2UsIHVu
c2lnbmVkIGxpbmVOdW1iZXIsIHVuc2lnbmVkIGNvbHVtbk51bWJlciwgY29uc3QgV1RGOjpTdHJp
bmcmIHNvdXJjZVVSTCkgb3ZlcnJpZGU7Ci0KLSAgICBib29sIGNhblJ1bkJlZm9yZVVubG9hZENv
bmZpcm1QYW5lbCgpIG92ZXJyaWRlOwotICAgIGJvb2wgcnVuQmVmb3JlVW5sb2FkQ29uZmlybVBh
bmVsKGNvbnN0IFdURjo6U3RyaW5nJiBtZXNzYWdlLCBXZWJDb3JlOjpGcmFtZSopIG92ZXJyaWRl
OwotCi0gICAgdm9pZCBjbG9zZVdpbmRvd1Nvb24oKSBvdmVycmlkZTsKLQotICAgIHZvaWQgcnVu
SmF2YVNjcmlwdEFsZXJ0KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV1RGOjpTdHJpbmcmKSBvdmVy
cmlkZTsKLSAgICBib29sIHJ1bkphdmFTY3JpcHRDb25maXJtKFdlYkNvcmU6OkZyYW1lKiwgY29u
c3QgV1RGOjpTdHJpbmcmKSBvdmVycmlkZTsKLSAgICBib29sIHJ1bkphdmFTY3JpcHRQcm9tcHQo
V2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXVEY6OlN0cmluZyYgbWVzc2FnZSwgY29uc3QgV1RGOjpT
dHJpbmcmIGRlZmF1bHRWYWx1ZSwgV1RGOjpTdHJpbmcmIHJlc3VsdCkgb3ZlcnJpZGU7Ci0KLSAg
ICBib29sIHN1cHBvcnRzSW1tZWRpYXRlSW52YWxpZGF0aW9uKCkgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBpbnZhbGlkYXRlUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIG92ZXJyaWRlOwot
ICAgIHZvaWQgaW52YWxpZGF0ZUNvbnRlbnRzQW5kUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50
UmVjdCYpIG92ZXJyaWRlOwotICAgIHZvaWQgaW52YWxpZGF0ZUNvbnRlbnRzRm9yU2xvd1Njcm9s
bChjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzY3JvbGwoY29u
c3QgV2ViQ29yZTo6SW50U2l6ZSYgc2Nyb2xsRGVsdGEsIGNvbnN0IFdlYkNvcmU6OkludFJlY3Qm
IHJlY3RUb1Njcm9sbCwgY29uc3QgV2ViQ29yZTo6SW50UmVjdCYgY2xpcFJlY3QpIG92ZXJyaWRl
OwotCi0gICAgV2ViQ29yZTo6SW50UG9pbnQgc2NyZWVuVG9Sb290Vmlldyhjb25zdCBXZWJDb3Jl
OjpJbnRQb2ludCYpIGNvbnN0IG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OkludFJlY3Qgcm9vdFZp
ZXdUb1NjcmVlbihjb25zdCBXZWJDb3JlOjpJbnRSZWN0JikgY29uc3Qgb3ZlcnJpZGU7CisKKyAg
ICBXZWJWaWV3KiB3ZWJWaWV3KCkgY29uc3QgeyByZXR1cm4gbV93ZWJWaWV3OyB9CisKK3ByaXZh
dGU6CisgICAgdm9pZCBjaHJvbWVEZXN0cm95ZWQoKSBmaW5hbDsKKworICAgIHZvaWQgc2V0V2lu
ZG93UmVjdChjb25zdCBXZWJDb3JlOjpGbG9hdFJlY3QmKSBmaW5hbDsKKyAgICBXZWJDb3JlOjpG
bG9hdFJlY3Qgd2luZG93UmVjdCgpIGZpbmFsOworCisgICAgV2ViQ29yZTo6RmxvYXRSZWN0IHBh
Z2VSZWN0KCkgZmluYWw7CisKKyAgICB2b2lkIGZvY3VzKCkgZmluYWw7CisgICAgdm9pZCB1bmZv
Y3VzKCkgZmluYWw7CisKKyAgICBib29sIGNhblRha2VGb2N1cyhXZWJDb3JlOjpGb2N1c0RpcmVj
dGlvbikgZmluYWw7CisgICAgdm9pZCB0YWtlRm9jdXMoV2ViQ29yZTo6Rm9jdXNEaXJlY3Rpb24p
IGZpbmFsOworCisgICAgdm9pZCBmb2N1c2VkRWxlbWVudENoYW5nZWQoV2ViQ29yZTo6RWxlbWVu
dCopIGZpbmFsOworICAgIHZvaWQgZm9jdXNlZEZyYW1lQ2hhbmdlZChXZWJDb3JlOjpGcmFtZSop
IGZpbmFsOworCisgICAgV2ViQ29yZTo6UGFnZSogY3JlYXRlV2luZG93KFdlYkNvcmU6OkZyYW1l
KiwgY29uc3QgV2ViQ29yZTo6RnJhbWVMb2FkUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OldpbmRv
d0ZlYXR1cmVzJiwgY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYpIGZpbmFsOworICAg
IHZvaWQgc2hvdygpIGZpbmFsOworCisgICAgYm9vbCBjYW5SdW5Nb2RhbCgpIGZpbmFsOworICAg
IHZvaWQgcnVuTW9kYWwoKSBmaW5hbDsKKworICAgIHZvaWQgc2V0VG9vbGJhcnNWaXNpYmxlKGJv
b2wpIGZpbmFsOworICAgIGJvb2wgdG9vbGJhcnNWaXNpYmxlKCkgZmluYWw7CisKKyAgICB2b2lk
IHNldFN0YXR1c2JhclZpc2libGUoYm9vbCkgZmluYWw7CisgICAgYm9vbCBzdGF0dXNiYXJWaXNp
YmxlKCkgZmluYWw7CisKKyAgICB2b2lkIHNldFNjcm9sbGJhcnNWaXNpYmxlKGJvb2wpIGZpbmFs
OworICAgIGJvb2wgc2Nyb2xsYmFyc1Zpc2libGUoKSBmaW5hbDsKKworICAgIHZvaWQgc2V0TWVu
dWJhclZpc2libGUoYm9vbCkgZmluYWw7CisgICAgYm9vbCBtZW51YmFyVmlzaWJsZSgpIGZpbmFs
OworCisgICAgdm9pZCBzZXRSZXNpemFibGUoYm9vbCkgZmluYWw7CisKKyAgICB2b2lkIGFkZE1l
c3NhZ2VUb0NvbnNvbGUoSlNDOjpNZXNzYWdlU291cmNlLCBKU0M6Ok1lc3NhZ2VMZXZlbCwgY29u
c3QgV1RGOjpTdHJpbmcmIG1lc3NhZ2UsIHVuc2lnbmVkIGxpbmVOdW1iZXIsIHVuc2lnbmVkIGNv
bHVtbk51bWJlciwgY29uc3QgV1RGOjpTdHJpbmcmIHNvdXJjZVVSTCkgZmluYWw7CisKKyAgICBi
b29sIGNhblJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbCgpIGZpbmFsOworICAgIGJvb2wgcnVu
QmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsKGNvbnN0IFdURjo6U3RyaW5nJiBtZXNzYWdlLCBXZWJD
b3JlOjpGcmFtZSopIGZpbmFsOworCisgICAgdm9pZCBjbG9zZVdpbmRvd1Nvb24oKSBmaW5hbDsK
KworICAgIHZvaWQgcnVuSmF2YVNjcmlwdEFsZXJ0KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV1RG
OjpTdHJpbmcmKSBmaW5hbDsKKyAgICBib29sIHJ1bkphdmFTY3JpcHRDb25maXJtKFdlYkNvcmU6
OkZyYW1lKiwgY29uc3QgV1RGOjpTdHJpbmcmKSBmaW5hbDsKKyAgICBib29sIHJ1bkphdmFTY3Jp
cHRQcm9tcHQoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXVEY6OlN0cmluZyYgbWVzc2FnZSwgY29u
c3QgV1RGOjpTdHJpbmcmIGRlZmF1bHRWYWx1ZSwgV1RGOjpTdHJpbmcmIHJlc3VsdCkgZmluYWw7
CisKKyAgICBib29sIHN1cHBvcnRzSW1tZWRpYXRlSW52YWxpZGF0aW9uKCkgZmluYWw7CisgICAg
dm9pZCBpbnZhbGlkYXRlUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGZpbmFsOwor
ICAgIHZvaWQgaW52YWxpZGF0ZUNvbnRlbnRzQW5kUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50
UmVjdCYpIGZpbmFsOworICAgIHZvaWQgaW52YWxpZGF0ZUNvbnRlbnRzRm9yU2xvd1Njcm9sbChj
b25zdCBXZWJDb3JlOjpJbnRSZWN0JikgZmluYWw7CisgICAgdm9pZCBzY3JvbGwoY29uc3QgV2Vi
Q29yZTo6SW50U2l6ZSYgc2Nyb2xsRGVsdGEsIGNvbnN0IFdlYkNvcmU6OkludFJlY3QmIHJlY3RU
b1Njcm9sbCwgY29uc3QgV2ViQ29yZTo6SW50UmVjdCYgY2xpcFJlY3QpIGZpbmFsOworCisgICAg
V2ViQ29yZTo6SW50UG9pbnQgc2NyZWVuVG9Sb290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRQb2lu
dCYpIGNvbnN0IGZpbmFsOworICAgIFdlYkNvcmU6OkludFJlY3Qgcm9vdFZpZXdUb1NjcmVlbihj
b25zdCBXZWJDb3JlOjpJbnRSZWN0JikgY29uc3QgZmluYWw7CisKICNpZiBQTEFURk9STShJT1Mp
Ci0gICAgV2ViQ29yZTo6SW50UG9pbnQgYWNjZXNzaWJpbGl0eVNjcmVlblRvUm9vdFZpZXcoY29u
c3QgV2ViQ29yZTo6SW50UG9pbnQmKSBjb25zdCBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpJbnRS
ZWN0IHJvb3RWaWV3VG9BY2Nlc3NpYmlsaXR5U2NyZWVuKGNvbnN0IFdlYkNvcmU6OkludFJlY3Qm
KSBjb25zdCBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpJbnRQb2ludCBhY2Nlc3NpYmlsaXR5U2Ny
ZWVuVG9Sb290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIGNvbnN0IGZpbmFsOworICAg
IFdlYkNvcmU6OkludFJlY3Qgcm9vdFZpZXdUb0FjY2Vzc2liaWxpdHlTY3JlZW4oY29uc3QgV2Vi
Q29yZTo6SW50UmVjdCYpIGNvbnN0IGZpbmFsOwogI2VuZGlmCi0gICAgUGxhdGZvcm1QYWdlQ2xp
ZW50IHBsYXRmb3JtUGFnZUNsaWVudCgpIGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQgY29udGVu
dHNTaXplQ2hhbmdlZChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6OkludFNpemUmKSBj
b25zdCBvdmVycmlkZTsKLSAgICB2b2lkIHNjcm9sbFJlY3RJbnRvVmlldyhjb25zdCBXZWJDb3Jl
OjpJbnRSZWN0JikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgCi0gICAgdm9pZCBzZXRTdGF0dXNiYXJU
ZXh0KGNvbnN0IFdURjo6U3RyaW5nJikgb3ZlcnJpZGU7CiAKLSAgICB2b2lkIHNjcm9sbGJhcnNN
b2RlRGlkQ2hhbmdlKCkgY29uc3Qgb3ZlcnJpZGUgeyB9Ci0gICAgYm9vbCBzaG91bGRVbmF2YWls
YWJsZVBsdWdpbk1lc3NhZ2VCZUJ1dHRvbihXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6
UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24pIGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQgdW5h
dmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2VkKFdlYkNvcmU6OkVsZW1lbnQqLCBXZWJDb3JlOjpS
ZW5kZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24pIGNvbnN0IG92
ZXJyaWRlOwotICAgIHZvaWQgbW91c2VEaWRNb3ZlT3ZlckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6
SGl0VGVzdFJlc3VsdCYsIHVuc2lnbmVkIG1vZGlmaWVyRmxhZ3MpIG92ZXJyaWRlOworICAgIFBs
YXRmb3JtUGFnZUNsaWVudCBwbGF0Zm9ybVBhZ2VDbGllbnQoKSBjb25zdCBmaW5hbDsKKyAgICB2
b2lkIGNvbnRlbnRzU2l6ZUNoYW5nZWQoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXZWJDb3JlOjpJ
bnRTaXplJikgY29uc3QgZmluYWw7CisgICAgdm9pZCBzY3JvbGxSZWN0SW50b1ZpZXcoY29uc3Qg
V2ViQ29yZTo6SW50UmVjdCYpIGNvbnN0IGZpbmFsOworCisgICAgdm9pZCBzZXRTdGF0dXNiYXJU
ZXh0KGNvbnN0IFdURjo6U3RyaW5nJikgZmluYWw7CisKKyAgICB2b2lkIHNjcm9sbGJhcnNNb2Rl
RGlkQ2hhbmdlKCkgY29uc3QgZmluYWwgeyB9CisgICAgYm9vbCBzaG91bGRVbmF2YWlsYWJsZVBs
dWdpbk1lc3NhZ2VCZUJ1dHRvbihXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2lu
VW5hdmFpbGFiaWxpdHlSZWFzb24pIGNvbnN0IGZpbmFsOworICAgIHZvaWQgdW5hdmFpbGFibGVQ
bHVnaW5CdXR0b25DbGlja2VkKFdlYkNvcmU6OkVsZW1lbnQqLCBXZWJDb3JlOjpSZW5kZXJFbWJl
ZGRlZE9iamVjdDo6UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24pIGNvbnN0IGZpbmFsOworICAg
IHZvaWQgbW91c2VEaWRNb3ZlT3ZlckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6SGl0VGVzdFJlc3Vs
dCYsIHVuc2lnbmVkIG1vZGlmaWVyRmxhZ3MpIGZpbmFsOwogCi0gICAgdm9pZCBzZXRUb29sVGlw
KGNvbnN0IFdURjo6U3RyaW5nJiwgV2ViQ29yZTo6VGV4dERpcmVjdGlvbikgb3ZlcnJpZGU7Cisg
ICAgdm9pZCBzZXRUb29sVGlwKGNvbnN0IFdURjo6U3RyaW5nJiwgV2ViQ29yZTo6VGV4dERpcmVj
dGlvbikgZmluYWw7CiAKLSAgICB2b2lkIHByaW50KFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBleGNlZWRlZERhdGFiYXNlUXVvdGEoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBX
VEY6OlN0cmluZyYgZGF0YWJhc2VOYW1lLCBXZWJDb3JlOjpEYXRhYmFzZURldGFpbHMpIG92ZXJy
aWRlOwotICAgIHZvaWQgcmVhY2hlZE1heEFwcENhY2hlU2l6ZShpbnQ2NF90IHNwYWNlTmVlZGVk
KSBvdmVycmlkZTsKLSAgICB2b2lkIHJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEo
V2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4qLCBpbnQ2NF90IHRvdGFsU3BhY2VOZWVkZWQpIG92ZXJy
aWRlOworICAgIHZvaWQgcHJpbnQoV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKKyAgICB2b2lkIGV4
Y2VlZGVkRGF0YWJhc2VRdW90YShXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdURjo6U3RyaW5nJiBk
YXRhYmFzZU5hbWUsIFdlYkNvcmU6OkRhdGFiYXNlRGV0YWlscykgZmluYWw7CisgICAgdm9pZCBy
ZWFjaGVkTWF4QXBwQ2FjaGVTaXplKGludDY0X3Qgc3BhY2VOZWVkZWQpIGZpbmFsOworICAgIHZv
aWQgcmVhY2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YShXZWJDb3JlOjpTZWN1cml0eU9y
aWdpbiosIGludDY0X3QgdG90YWxTcGFjZU5lZWRlZCkgZmluYWw7CiAKICNpZiBFTkFCTEUoREFT
SEJPQVJEX1NVUFBPUlQpCi0gICAgdm9pZCBhbm5vdGF0ZWRSZWdpb25zQ2hhbmdlZCgpIG92ZXJy
aWRlOworICAgIHZvaWQgYW5ub3RhdGVkUmVnaW9uc0NoYW5nZWQoKSBmaW5hbDsKICNlbmRpZgog
Ci0gICAgdm9pZCBydW5PcGVuUGFuZWwoV2ViQ29yZTo6RnJhbWUqLCBQYXNzUmVmUHRyPFdlYkNv
cmU6OkZpbGVDaG9vc2VyPikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBsb2FkSWNvbkZvckZpbGVzKGNv
bnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mLCBXZWJDb3JlOjpGaWxlSWNvbkxvYWRlciYpIG92ZXJy
aWRlOworICAgIHZvaWQgcnVuT3BlblBhbmVsKFdlYkNvcmU6OkZyYW1lJiwgV2ViQ29yZTo6Rmls
ZUNob29zZXImKSBmaW5hbDsKKyAgICB2b2lkIGxvYWRJY29uRm9yRmlsZXMoY29uc3QgVmVjdG9y
PFdURjo6U3RyaW5nPiYsIFdlYkNvcmU6OkZpbGVJY29uTG9hZGVyJikgZmluYWw7CiAKICNpZiAh
UExBVEZPUk0oSU9TKQotICAgIHZvaWQgc2V0Q3Vyc29yKGNvbnN0IFdlYkNvcmU6OkN1cnNvciYp
IG92ZXJyaWRlOwotICAgIHZvaWQgc2V0Q3Vyc29ySGlkZGVuVW50aWxNb3VzZU1vdmVzKGJvb2wp
IG92ZXJyaWRlOworICAgIHZvaWQgc2V0Q3Vyc29yKGNvbnN0IFdlYkNvcmU6OkN1cnNvciYpIGZp
bmFsOworICAgIHZvaWQgc2V0Q3Vyc29ySGlkZGVuVW50aWxNb3VzZU1vdmVzKGJvb2wpIGZpbmFs
OwogI2VuZGlmCiAKICNpZiBFTkFCTEUoSU5QVVRfVFlQRV9DT0xPUikKLSAgICBzdGQ6OnVuaXF1
ZV9wdHI8V2ViQ29yZTo6Q29sb3JDaG9vc2VyPiBjcmVhdGVDb2xvckNob29zZXIoV2ViQ29yZTo6
Q29sb3JDaG9vc2VyQ2xpZW50KiwgY29uc3QgV2ViQ29yZTo6Q29sb3ImKSBvdmVycmlkZTsKKyAg
ICBzdGQ6OnVuaXF1ZV9wdHI8V2ViQ29yZTo6Q29sb3JDaG9vc2VyPiBjcmVhdGVDb2xvckNob29z
ZXIoV2ViQ29yZTo6Q29sb3JDaG9vc2VyQ2xpZW50KiwgY29uc3QgV2ViQ29yZTo6Q29sb3ImKSBm
aW5hbDsKICNlbmRpZgotICAgIAorCiAjaWYgRU5BQkxFKFBPSU5URVJfTE9DSykKLSAgICBib29s
IHJlcXVlc3RQb2ludGVyTG9jaygpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVxdWVzdFBvaW50ZXJV
bmxvY2soKSBvdmVycmlkZTsKKyAgICBib29sIHJlcXVlc3RQb2ludGVyTG9jaygpIGZpbmFsOwor
ICAgIHZvaWQgcmVxdWVzdFBvaW50ZXJVbmxvY2soKSBmaW5hbDsKICNlbmRpZgogCi0gICAgV2Vi
Q29yZTo6S2V5Ym9hcmRVSU1vZGUga2V5Ym9hcmRVSU1vZGUoKSBvdmVycmlkZTsKKyAgICBXZWJD
b3JlOjpLZXlib2FyZFVJTW9kZSBrZXlib2FyZFVJTW9kZSgpIGZpbmFsOworCisgICAgTlNSZXNw
b25kZXIgKmZpcnN0UmVzcG9uZGVyKCkgZmluYWw7CisgICAgdm9pZCBtYWtlRmlyc3RSZXNwb25k
ZXIoTlNSZXNwb25kZXIgKikgZmluYWw7CiAKLSAgICBOU1Jlc3BvbmRlciAqZmlyc3RSZXNwb25k
ZXIoKSBvdmVycmlkZTsKLSAgICB2b2lkIG1ha2VGaXJzdFJlc3BvbmRlcihOU1Jlc3BvbmRlciAq
KSBvdmVycmlkZTsKKyAgICB2b2lkIGVuYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkgZmluYWw7Cisg
ICAgdm9pZCBkaXNhYmxlU3VkZGVuVGVybWluYXRpb24oKSBmaW5hbDsKIAotICAgIHZvaWQgZW5h
YmxlU3VkZGVuVGVybWluYXRpb24oKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc2FibGVTdWRkZW5U
ZXJtaW5hdGlvbigpIG92ZXJyaWRlOwotICAgIAotICAgIGJvb2wgc2hvdWxkUmVwbGFjZVdpdGhH
ZW5lcmF0ZWRGaWxlRm9yVXBsb2FkKGNvbnN0IFdURjo6U3RyaW5nJiBwYXRoLCBXVEY6OlN0cmlu
ZyAmZ2VuZXJhdGVkRmlsZW5hbWUpIG92ZXJyaWRlOwotICAgIFdURjo6U3RyaW5nIGdlbmVyYXRl
UmVwbGFjZW1lbnRGaWxlKGNvbnN0IFdURjo6U3RyaW5nJiBwYXRoKSBvdmVycmlkZTsKKyAgICBi
b29sIHNob3VsZFJlcGxhY2VXaXRoR2VuZXJhdGVkRmlsZUZvclVwbG9hZChjb25zdCBXVEY6OlN0
cmluZyYgcGF0aCwgV1RGOjpTdHJpbmcgJmdlbmVyYXRlZEZpbGVuYW1lKSBmaW5hbDsKKyAgICBX
VEY6OlN0cmluZyBnZW5lcmF0ZVJlcGxhY2VtZW50RmlsZShjb25zdCBXVEY6OlN0cmluZyYgcGF0
aCkgZmluYWw7CiAKLSAgICB2b2lkIGVsZW1lbnREaWRGb2N1cyhjb25zdCBXZWJDb3JlOjpOb2Rl
Kikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBlbGVtZW50RGlkQmx1cihjb25zdCBXZWJDb3JlOjpOb2Rl
Kikgb3ZlcnJpZGU7CisgICAgdm9pZCBlbGVtZW50RGlkRm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9k
ZSopIGZpbmFsOworICAgIHZvaWQgZWxlbWVudERpZEJsdXIoY29uc3QgV2ViQ29yZTo6Tm9kZSop
IGZpbmFsOwogCi0gICAgYm9vbCBzaG91bGRQYWludEVudGlyZUNvbnRlbnRzKCkgY29uc3Qgb3Zl
cnJpZGU7CisgICAgYm9vbCBzaG91bGRQYWludEVudGlyZUNvbnRlbnRzKCkgY29uc3QgZmluYWw7
CiAKLSAgICB2b2lkIGF0dGFjaFJvb3RHcmFwaGljc0xheWVyKFdlYkNvcmU6OkZyYW1lKiwgV2Vi
Q29yZTo6R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOwotICAgIHZvaWQgYXR0YWNoVmlld092ZXJs
YXlHcmFwaGljc0xheWVyKFdlYkNvcmU6OkZyYW1lKiwgV2ViQ29yZTo6R3JhcGhpY3NMYXllciop
IG92ZXJyaWRlOwotICAgIHZvaWQgc2V0TmVlZHNPbmVTaG90RHJhd2luZ1N5bmNocm9uaXphdGlv
bigpIG92ZXJyaWRlOwotICAgIHZvaWQgc2NoZWR1bGVDb21wb3NpdGluZ0xheWVyRmx1c2goKSBv
dmVycmlkZTsKKyAgICB2b2lkIGF0dGFjaFJvb3RHcmFwaGljc0xheWVyKFdlYkNvcmU6OkZyYW1l
KiwgV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIGZpbmFsOworICAgIHZvaWQgYXR0YWNoVmlld092
ZXJsYXlHcmFwaGljc0xheWVyKFdlYkNvcmU6OkZyYW1lKiwgV2ViQ29yZTo6R3JhcGhpY3NMYXll
ciopIGZpbmFsOworICAgIHZvaWQgc2V0TmVlZHNPbmVTaG90RHJhd2luZ1N5bmNocm9uaXphdGlv
bigpIGZpbmFsOworICAgIHZvaWQgc2NoZWR1bGVDb21wb3NpdGluZ0xheWVyRmx1c2goKSBmaW5h
bDsKIAotICAgIENvbXBvc2l0aW5nVHJpZ2dlckZsYWdzIGFsbG93ZWRDb21wb3NpdGluZ1RyaWdn
ZXJzKCkgY29uc3Qgb3ZlcnJpZGUKKyAgICBDb21wb3NpdGluZ1RyaWdnZXJGbGFncyBhbGxvd2Vk
Q29tcG9zaXRpbmdUcmlnZ2VycygpIGNvbnN0IGZpbmFsCiAgICAgewogICAgICAgICByZXR1cm4g
c3RhdGljX2Nhc3Q8Q29tcG9zaXRpbmdUcmlnZ2VyRmxhZ3M+KAogICAgICAgICAgICAgVGhyZWVE
VHJhbnNmb3JtVHJpZ2dlciB8CkBAIC0xNjksNTIgKzE3NCw0OSBAQCBwdWJsaWM6CiAgICAgICAg
ICAgICBBbmltYXRpb25UcmlnZ2VyKTsKICAgICB9CiAKLSNpZiBFTkFCTEUoVklERU8pCi0jaWYg
UExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCi0gICAgdm9p
ZCBzZXRVcFBsYXliYWNrQ29udHJvbHNNYW5hZ2VyKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQm
KSBvdmVycmlkZTsKLSAgICB2b2lkIGNsZWFyUGxheWJhY2tDb250cm9sc01hbmFnZXIoKSBvdmVy
cmlkZTsKKyNpZiBFTkFCTEUoVklERU8pICYmIFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVP
X1BSRVNFTlRBVElPTl9NT0RFKQorICAgIHZvaWQgc2V0VXBQbGF5YmFja0NvbnRyb2xzTWFuYWdl
cihXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50JikgZmluYWw7CisgICAgdm9pZCBjbGVhclBsYXli
YWNrQ29udHJvbHNNYW5hZ2VyKCkgZmluYWw7CiAjZW5kaWYKIAotICAgIGJvb2wgc3VwcG9ydHNW
aWRlb0Z1bGxzY3JlZW4oV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxz
Y3JlZW5Nb2RlKSBvdmVycmlkZTsKLSAgICB2b2lkIGVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlk
ZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmLCBXZWJDb3JlOjpIVE1MTWVkaWFF
bGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIG92ZXJyaWRlOwotICAgIHZvaWQgZXhp
dFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50
Jikgb3ZlcnJpZGU7CisjaWYgRU5BQkxFKFZJREVPKQorICAgIGJvb2wgc3VwcG9ydHNWaWRlb0Z1
bGxzY3JlZW4oV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5N
b2RlKSBmaW5hbDsKKyAgICB2b2lkIGVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50
KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmLCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50RW51
bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIGZpbmFsOworICAgIHZvaWQgZXhpdFZpZGVvRnVsbHNj
cmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50JikgZmluYWw7CiAj
ZW5kaWYKLSAgICAKKwogI2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQSSkKLSAgICBib29sIHN1cHBv
cnRzRnVsbFNjcmVlbkZvckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6RWxlbWVudCosIGJvb2wgd2l0
aEtleWJvYXJkKSBvdmVycmlkZTsKLSAgICB2b2lkIGVudGVyRnVsbFNjcmVlbkZvckVsZW1lbnQo
V2ViQ29yZTo6RWxlbWVudCopIG92ZXJyaWRlOwotICAgIHZvaWQgZXhpdEZ1bGxTY3JlZW5Gb3JF
bGVtZW50KFdlYkNvcmU6OkVsZW1lbnQqKSBvdmVycmlkZTsKKyAgICBib29sIHN1cHBvcnRzRnVs
bFNjcmVlbkZvckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6RWxlbWVudCosIGJvb2wgd2l0aEtleWJv
YXJkKSBmaW5hbDsKKyAgICB2b2lkIGVudGVyRnVsbFNjcmVlbkZvckVsZW1lbnQoV2ViQ29yZTo6
RWxlbWVudCopIGZpbmFsOworICAgIHZvaWQgZXhpdEZ1bGxTY3JlZW5Gb3JFbGVtZW50KFdlYkNv
cmU6OkVsZW1lbnQqKSBmaW5hbDsKICNlbmRpZgogCi0gICAgYm9vbCBzZWxlY3RJdGVtV3JpdGlu
Z0RpcmVjdGlvbklzTmF0dXJhbCgpIG92ZXJyaWRlOwotICAgIGJvb2wgc2VsZWN0SXRlbUFsaWdu
bWVudEZvbGxvd3NNZW51V3JpdGluZ0RpcmVjdGlvbigpIG92ZXJyaWRlOwotICAgIGJvb2wgaGFz
T3BlbmVkUG9wdXAoKSBjb25zdCBvdmVycmlkZTsKLSAgICBSZWZQdHI8V2ViQ29yZTo6UG9wdXBN
ZW51PiBjcmVhdGVQb3B1cE1lbnUoV2ViQ29yZTo6UG9wdXBNZW51Q2xpZW50KikgY29uc3Qgb3Zl
cnJpZGU7Ci0gICAgUmVmUHRyPFdlYkNvcmU6OlNlYXJjaFBvcHVwTWVudT4gY3JlYXRlU2VhcmNo
UG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCopIGNvbnN0IG92ZXJyaWRlOworICAg
IGJvb2wgc2VsZWN0SXRlbVdyaXRpbmdEaXJlY3Rpb25Jc05hdHVyYWwoKSBmaW5hbDsKKyAgICBi
b29sIHNlbGVjdEl0ZW1BbGlnbm1lbnRGb2xsb3dzTWVudVdyaXRpbmdEaXJlY3Rpb24oKSBmaW5h
bDsKKyAgICBib29sIGhhc09wZW5lZFBvcHVwKCkgY29uc3QgZmluYWw7CisgICAgUmVmUHRyPFdl
YkNvcmU6OlBvcHVwTWVudT4gY3JlYXRlUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVu
dCopIGNvbnN0IGZpbmFsOworICAgIFJlZlB0cjxXZWJDb3JlOjpTZWFyY2hQb3B1cE1lbnU+IGNy
ZWF0ZVNlYXJjaFBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1lbnVDbGllbnQqKSBjb25zdCBmaW5h
bDsKIAotICAgIHZvaWQgd2hlZWxFdmVudEhhbmRsZXJzQ2hhbmdlZChib29sKSBvdmVycmlkZSB7
IH0KKyAgICB2b2lkIHdoZWVsRXZlbnRIYW5kbGVyc0NoYW5nZWQoYm9vbCkgZmluYWwgeyB9CiAK
ICNpZiBFTkFCTEUoU1VCVExFX0NSWVBUTykKLSAgICBib29sIHdyYXBDcnlwdG9LZXkoY29uc3Qg
VmVjdG9yPHVpbnQ4X3Q+JiwgVmVjdG9yPHVpbnQ4X3Q+JikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAg
Ym9vbCB1bndyYXBDcnlwdG9LZXkoY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiwgVmVjdG9yPHVpbnQ4
X3Q+JikgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCB3cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rv
cjx1aW50OF90PiYsIFZlY3Rvcjx1aW50OF90PiYpIGNvbnN0IGZpbmFsOworICAgIGJvb2wgdW53
cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90PiYsIFZlY3Rvcjx1aW50OF90PiYpIGNv
bnN0IGZpbmFsOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoU0VSVklDRV9DT05UUk9MUykKLSAgICB2
b2lkIGhhbmRsZVNlbGVjdGlvblNlcnZpY2VDbGljayhXZWJDb3JlOjpGcmFtZVNlbGVjdGlvbiYs
IGNvbnN0IFZlY3RvcjxTdHJpbmc+JiB0ZWxlcGhvbmVOdW1iZXJzLCBjb25zdCBXZWJDb3JlOjpJ
bnRQb2ludCYpIG92ZXJyaWRlOwotICAgIGJvb2wgaGFzUmVsZXZhbnRTZWxlY3Rpb25TZXJ2aWNl
cyhib29sIGlzVGV4dE9ubHkpIGNvbnN0IG92ZXJyaWRlOworICAgIHZvaWQgaGFuZGxlU2VsZWN0
aW9uU2VydmljZUNsaWNrKFdlYkNvcmU6OkZyYW1lU2VsZWN0aW9uJiwgY29uc3QgVmVjdG9yPFN0
cmluZz4mIHRlbGVwaG9uZU51bWJlcnMsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JikgZmluYWw7
CisgICAgYm9vbCBoYXNSZWxldmFudFNlbGVjdGlvblNlcnZpY2VzKGJvb2wgaXNUZXh0T25seSkg
Y29uc3QgZmluYWw7CiAjZW5kaWYKIAotICAgIFdlYlZpZXcqIHdlYlZpZXcoKSBjb25zdCB7IHJl
dHVybiBtX3dlYlZpZXc7IH0KLQogI2lmIEVOQUJMRShXSVJFTEVTU19QTEFZQkFDS19UQVJHRVQp
ICYmICFQTEFURk9STShJT1MpCi0gICAgdm9pZCBhZGRQbGF5YmFja1RhcmdldFBpY2tlckNsaWVu
dCh1aW50NjRfdCAvKmNvbnRleHRJZCovKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlbW92ZVBsYXli
YWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2NF90IC8qY29udGV4dElkKi8pIG92ZXJyaWRlOwot
ICAgIHZvaWQgc2hvd1BsYXliYWNrVGFyZ2V0UGlja2VyKHVpbnQ2NF90IC8qY29udGV4dElkKi8s
IGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiwgYm9vbCAvKiBoYXNWaWRlbyAqLykgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBwbGF5YmFja1RhcmdldFBpY2tlckNsaWVudFN0YXRlRGlkQ2hhbmdlKHVpbnQ2
NF90IC8qY29udGV4dElkKi8sIFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFn
cykgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVu
YWJsZWQoYm9vbCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1Rhcmdl
dFBpY2tlclN0YXRlKGNvbnN0IFN0cmluZyYsIFdlYkNvcmU6Ok1lZGlhUGxheWJhY2tUYXJnZXRD
b250ZXh0OjpTdGF0ZSkgb3ZlcnJpZGU7CisgICAgdm9pZCBhZGRQbGF5YmFja1RhcmdldFBpY2tl
ckNsaWVudCh1aW50NjRfdCAvKmNvbnRleHRJZCovKSBmaW5hbDsKKyAgICB2b2lkIHJlbW92ZVBs
YXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2NF90IC8qY29udGV4dElkKi8pIGZpbmFsOwor
ICAgIHZvaWQgc2hvd1BsYXliYWNrVGFyZ2V0UGlja2VyKHVpbnQ2NF90IC8qY29udGV4dElkKi8s
IGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiwgYm9vbCAvKiBoYXNWaWRlbyAqLykgZmluYWw7Cisg
ICAgdm9pZCBwbGF5YmFja1RhcmdldFBpY2tlckNsaWVudFN0YXRlRGlkQ2hhbmdlKHVpbnQ2NF90
IC8qY29udGV4dElkKi8sIFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncykg
ZmluYWw7CisgICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVuYWJsZWQo
Ym9vbCkgZmluYWw7CisgICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlclN0
YXRlKGNvbnN0IFN0cmluZyYsIFdlYkNvcmU6Ok1lZGlhUGxheWJhY2tUYXJnZXRDb250ZXh0OjpT
dGF0ZSkgZmluYWw7CiAjZW5kaWYKIAotcHJpdmF0ZToKICAgICBXZWJWaWV3ICptX3dlYlZpZXc7
CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hy
b21lQ2xpZW50Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21l
Q2xpZW50Lm1tCmluZGV4IGQ3ZWM4Y2IxYjQ2YWI3ODE4ZTBkZTIyNDEyNmNhYTVhMDY1ZGEyOTEu
LmE1MmE0NjAxYzE2NDdkZTQ1ZDQwOTk1N2E4MTMyYTIzZDFhMzYwNjAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5tbQorKysgYi9T
b3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQubW0KQEAgLTc0
MSwxMCArNzQxLDEwIEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpyZXF1ZXN0UG9pbnRlclVubG9j
aygpCiB9CiAjZW5kaWYKIAotdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJ1bk9wZW5QYW5lbChGcmFt
ZSosIFBhc3NSZWZQdHI8RmlsZUNob29zZXI+IGNob29zZXIpCit2b2lkIFdlYkNocm9tZUNsaWVu
dDo6cnVuT3BlblBhbmVsKEZyYW1lJiwgRmlsZUNob29zZXImIGNob29zZXIpCiB7CiAgICAgQkVH
SU5fQkxPQ0tfT0JKQ19FWENFUFRJT05TOwotICAgIEJPT0wgYWxsb3dNdWx0aXBsZUZpbGVzID0g
Y2hvb3Nlci0+c2V0dGluZ3MoKS5hbGxvd3NNdWx0aXBsZUZpbGVzOworICAgIEJPT0wgYWxsb3dN
dWx0aXBsZUZpbGVzID0gY2hvb3Nlci5zZXR0aW5ncygpLmFsbG93c011bHRpcGxlRmlsZXM7CiAg
ICAgV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIgKmxpc3RlbmVyID0gW1tXZWJPcGVuUGFuZWxS
ZXN1bHRMaXN0ZW5lciBhbGxvY10gaW5pdFdpdGhDaG9vc2VyOmNob29zZXJdOwogICAgIGlkIGRl
bGVnYXRlID0gW21fd2ViVmlldyBVSURlbGVnYXRlXTsKICAgICBpZiAoW2RlbGVnYXRlIHJlc3Bv
bmRzVG9TZWxlY3RvcjpAc2VsZWN0b3Iod2ViVmlldzpydW5PcGVuUGFuZWxGb3JGaWxlQnV0dG9u
V2l0aFJlc3VsdExpc3RlbmVyOmFsbG93TXVsdGlwbGVGaWxlczopXSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oIGIvU291cmNl
L1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmgKaW5kZXggM2IzNWQ0
ZDIxMTBmNDlmMWM0OTNmZWFjY2QwODQ3MzhiODIzOGFmOS4uODgyMTUzMTA0YzUwMDllNWU3ZWEw
YWU3ZjkwOGIzNzZjNzBjZjdjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29y
ZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29y
ZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmgKQEAgLTExNSw4ICsxMTUsOCBAQCBwcml2YXRlOgog
ICAgIHZvaWQgZGlzY2FyZGVkQ29tcG9zaXRpb24oV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKICAg
ICB2b2lkIGNhbmNlbGVkQ29tcG9zaXRpb24oKSBmaW5hbDsKIAotICAgIHZvaWQgcmVnaXN0ZXJV
bmRvU3RlcChQYXNzUmVmUHRyPFdlYkNvcmU6OlVuZG9TdGVwPikgZmluYWw7Ci0gICAgdm9pZCBy
ZWdpc3RlclJlZG9TdGVwKFBhc3NSZWZQdHI8V2ViQ29yZTo6VW5kb1N0ZXA+KSBmaW5hbDsKKyAg
ICB2b2lkIHJlZ2lzdGVyVW5kb1N0ZXAoV2ViQ29yZTo6VW5kb1N0ZXAmKSBmaW5hbDsKKyAgICB2
b2lkIHJlZ2lzdGVyUmVkb1N0ZXAoV2ViQ29yZTo6VW5kb1N0ZXAmKSBmaW5hbDsKICAgICB2b2lk
IGNsZWFyVW5kb1JlZG9PcGVyYXRpb25zKCkgZmluYWw7CiAKICAgICBib29sIGNhbkNvcHlDdXQo
V2ViQ29yZTo6RnJhbWUqLCBib29sIGRlZmF1bHRWYWx1ZSkgY29uc3QgZmluYWw7CkBAIC0xNzQs
NyArMTc0LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIGhhbmRsZUFjY2VwdGVkQ2FuZGlkYXRlV2l0
aFNvZnRTcGFjZXMoV2ViQ29yZTo6VGV4dENoZWNraW5nUmVzdWx0KSBmaW5hbDsKICNlbmRpZgog
Ci0gICAgdm9pZCByZWdpc3RlclVuZG9PclJlZG9TdGVwKFBhc3NSZWZQdHI8V2ViQ29yZTo6VW5k
b1N0ZXA+LCBib29sIGlzUmVkbyk7CisgICAgdm9pZCByZWdpc3RlclVuZG9PclJlZG9TdGVwKFdl
YkNvcmU6OlVuZG9TdGVwJiwgYm9vbCBpc1JlZG8pOwogCiAgICAgV2ViVmlldyAqbV93ZWJWaWV3
OwogICAgIFJldGFpblB0cjxXZWJFZGl0b3JVbmRvVGFyZ2V0PiBtX3VuZG9UYXJnZXQ7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQu
bW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQubW0K
aW5kZXggN2Y5ZjQxN2FkMWM0M2E4NmFhMjVkMjE0OGU1NDY5NWUxZGI3MDI4ZS4uZjM4YTlmMGNk
YzJkNDk1MGRkMDY0NmQ3MDM4ZjhjNWEzMzNlMDQ4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50Lm1tCisrKyBiL1NvdXJjZS9XZWJL
aXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5tbQpAQCAtMTE5LDggKzExOSw4
IEBAIEBpbnRlcmZhY2UgV2ViVW5kb1N0ZXAgOiBOU09iamVjdAogICAgIFJlZlB0cjxVbmRvU3Rl
cD4gbV9zdGVwOyAgIAogfQogCi0rIChXZWJVbmRvU3RlcCAqKXN0ZXBXaXRoVW5kb1N0ZXA6KFBh
c3NSZWZQdHI8VW5kb1N0ZXA+KXN0ZXA7Ci0tIChVbmRvU3RlcCAqKXN0ZXA7CisrIChXZWJVbmRv
U3RlcCAqKXN0ZXBXaXRoVW5kb1N0ZXA6KFVuZG9TdGVwJilzdGVwOworLSAoVW5kb1N0ZXAmKXN0
ZXA7CiAKIEBlbmQKIApAQCAtMTM1LDEzICsxMzUsMTIgQEAgKyAodm9pZClpbml0aWFsaXplCiAj
ZW5kaWYKIH0KIAotLSAoaWQpaW5pdFdpdGhVbmRvU3RlcDooUGFzc1JlZlB0cjxVbmRvU3RlcD4p
c3RlcAorLSAoaWQpaW5pdFdpdGhVbmRvU3RlcDooVW5kb1N0ZXAmKXN0ZXAKIHsKLSAgICBBU1NF
UlQoc3RlcCk7CiAgICAgc2VsZiA9IFtzdXBlciBpbml0XTsKICAgICBpZiAoIXNlbGYpCiAgICAg
ICAgIHJldHVybiBuaWw7Ci0gICAgbV9zdGVwID0gc3RlcDsKKyAgICBtX3N0ZXAgPSAmc3RlcDsK
ICAgICByZXR1cm4gc2VsZjsKIH0KIApAQCAtMTUzLDE0ICsxNTIsMTQgQEAgLSAodm9pZClkZWFs
bG9jCiAgICAgW3N1cGVyIGRlYWxsb2NdOwogfQogCi0rIChXZWJVbmRvU3RlcCAqKXN0ZXBXaXRo
VW5kb1N0ZXA6KFBhc3NSZWZQdHI8VW5kb1N0ZXA+KXN0ZXAKKysgKFdlYlVuZG9TdGVwICopc3Rl
cFdpdGhVbmRvU3RlcDooVW5kb1N0ZXAmKXN0ZXAKIHsKICAgICByZXR1cm4gW1tbV2ViVW5kb1N0
ZXAgYWxsb2NdIGluaXRXaXRoVW5kb1N0ZXA6c3RlcF0gYXV0b3JlbGVhc2VdOwogfQogCi0tIChV
bmRvU3RlcCAqKXN0ZXAKKy0gKFVuZG9TdGVwJilzdGVwCiB7Ci0gICAgcmV0dXJuIG1fc3RlcC5n
ZXQoKTsKKyAgICByZXR1cm4gKm1fc3RlcDsKIH0KIAogQGVuZApAQCAtMTc3LDEzICsxNzYsMTMg
QEAgQGltcGxlbWVudGF0aW9uIFdlYkVkaXRvclVuZG9UYXJnZXQKIC0gKHZvaWQpdW5kb0VkaXRp
bmc6KGlkKWFyZwogewogICAgIEFTU0VSVChbYXJnIGlzS2luZE9mQ2xhc3M6W1dlYlVuZG9TdGVw
IGNsYXNzXV0pOwotICAgIFthcmcgc3RlcF0tPnVuYXBwbHkoKTsKKyAgICBbYXJnIHN0ZXBdLnVu
YXBwbHkoKTsKIH0KIAogLSAodm9pZClyZWRvRWRpdGluZzooaWQpYXJnCiB7CiAgICAgQVNTRVJU
KFthcmcgaXNLaW5kT2ZDbGFzczpbV2ViVW5kb1N0ZXAgY2xhc3NdXSk7Ci0gICAgW2FyZyBzdGVw
XS0+cmVhcHBseSgpOworICAgIFthcmcgc3RlcF0ucmVhcHBseSgpOwogfQogCiBAZW5kCkBAIC02
NDIsMTAgKzY0MSw4IEBAIHN0YXRpYyBOU1N0cmluZyogdW5kb05hbWVGb3JFZGl0QWN0aW9uKEVk
aXRBY3Rpb24gZWRpdEFjdGlvbikKICAgICByZXR1cm4gbmlsOwogfQogCi12b2lkIFdlYkVkaXRv
ckNsaWVudDo6cmVnaXN0ZXJVbmRvT3JSZWRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPiBzdGVw
LCBib29sIGlzUmVkbykKK3ZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9PclJlZG9T
dGVwKFVuZG9TdGVwJiBzdGVwLCBib29sIGlzUmVkbykKIHsKLSAgICBBU1NFUlQoc3RlcCk7Ci0g
ICAgCiAgICAgTlNVbmRvTWFuYWdlciAqdW5kb01hbmFnZXIgPSBbbV93ZWJWaWV3IHVuZG9NYW5h
Z2VyXTsKIAogI2lmIFBMQVRGT1JNKElPUykKQEAgLTY1Niw3ICs2NTMsNyBAQCB2b2lkIFdlYkVk
aXRvckNsaWVudDo6cmVnaXN0ZXJVbmRvT3JSZWRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPiBz
dGVwLCBib29sIGlzUgogICAgICAgICByZXR1cm47CiAjZW5kaWYKIAotICAgIE5TU3RyaW5nICph
Y3Rpb25OYW1lID0gdW5kb05hbWVGb3JFZGl0QWN0aW9uKHN0ZXAtPmVkaXRpbmdBY3Rpb24oKSk7
CisgICAgTlNTdHJpbmcgKmFjdGlvbk5hbWUgPSB1bmRvTmFtZUZvckVkaXRBY3Rpb24oc3RlcC5l
ZGl0aW5nQWN0aW9uKCkpOwogICAgIFdlYlVuZG9TdGVwICp3ZWJFbnRyeSA9IFtXZWJVbmRvU3Rl
cCBzdGVwV2l0aFVuZG9TdGVwOnN0ZXBdOwogICAgIFt1bmRvTWFuYWdlciByZWdpc3RlclVuZG9X
aXRoVGFyZ2V0Om1fdW5kb1RhcmdldC5nZXQoKSBzZWxlY3RvcjooaXNSZWRvID8gQHNlbGVjdG9y
KHJlZG9FZGl0aW5nOikgOiBAc2VsZWN0b3IodW5kb0VkaXRpbmc6KSkgb2JqZWN0OndlYkVudHJ5
XTsKICAgICBpZiAoYWN0aW9uTmFtZSkKQEAgLTY4NCwxMiArNjgxLDEyIEBAIHZvaWQgV2ViRWRp
dG9yQ2xpZW50Ojp1cGRhdGVFZGl0b3JTdGF0ZUFmdGVyTGF5b3V0SWZFZGl0YWJpbGl0eUNoYW5n
ZWQoKQogICAgICAgICBbbV93ZWJWaWV3IHVwZGF0ZVRvdWNoQmFyXTsKIH0KIAotdm9pZCBXZWJF
ZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb1N0ZXAoUGFzc1JlZlB0cjxVbmRvU3RlcD4gY21kKQor
dm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb1N0ZXAoVW5kb1N0ZXAmIGNtZCkKIHsK
ICAgICByZWdpc3RlclVuZG9PclJlZG9TdGVwKGNtZCwgZmFsc2UpOwogfQogCi12b2lkIFdlYkVk
aXRvckNsaWVudDo6cmVnaXN0ZXJSZWRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPiBjbWQpCit2
b2lkIFdlYkVkaXRvckNsaWVudDo6cmVnaXN0ZXJSZWRvU3RlcChVbmRvU3RlcCYgY21kKQogewog
ICAgIHJlZ2lzdGVyVW5kb09yUmVkb1N0ZXAoY21kLCB0cnVlKTsKIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmggYi9T
b3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCmlu
ZGV4IGExMWZiODhiZGJkOTFiYWQ4ZmQ4ZGY5ZmQyOTJmODI1ODhmYzQ1ZjYuLmJmYmQyZjc4MzZm
NjQ4YjgwNzBhYzc0M2YyZWFjODM2YTVjOTY5MTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
bWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNlL1dl
YktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaApAQCAtMSw1ICsx
LDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTU4LDIw
MiArNTgsMjAyIEBAIHB1YmxpYzoKICAgICBXZWJGcmFtZSogd2ViRnJhbWUoKSBjb25zdCB7IHJl
dHVybiBtX3dlYkZyYW1lLmdldCgpOyB9CiAKIHByaXZhdGU6Ci0gICAgdm9pZCBmcmFtZUxvYWRl
ckRlc3Ryb3llZCgpIG92ZXJyaWRlOwotICAgIGJvb2wgaGFzV2ViVmlldygpIGNvbnN0IG92ZXJy
aWRlOyAvLyBtYWlubHkgZm9yIGFzc2VydGlvbnMKKyAgICB2b2lkIGZyYW1lTG9hZGVyRGVzdHJv
eWVkKCkgZmluYWw7CisgICAgYm9vbCBoYXNXZWJWaWV3KCkgY29uc3QgZmluYWw7IC8vIG1haW5s
eSBmb3IgYXNzZXJ0aW9ucwogCi0gICAgdm9pZCBtYWtlUmVwcmVzZW50YXRpb24oV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXIqKSBvdmVycmlkZTsKLSAgICBib29sIGhhc0hUTUxWaWV3KCkgY29uc3Qg
b3ZlcnJpZGU7CisgICAgdm9pZCBtYWtlUmVwcmVzZW50YXRpb24oV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXIqKSBmaW5hbDsKKyAgICBib29sIGhhc0hUTUxWaWV3KCkgY29uc3QgZmluYWw7CiAjaWYg
UExBVEZPUk0oSU9TKQotICAgIGJvb2wgZm9yY2VMYXlvdXRPblJlc3RvcmVGcm9tUGFnZUNhY2hl
KCkgb3ZlcnJpZGU7CisgICAgYm9vbCBmb3JjZUxheW91dE9uUmVzdG9yZUZyb21QYWdlQ2FjaGUo
KSBmaW5hbDsKICNlbmRpZgotICAgIHZvaWQgZm9yY2VMYXlvdXRGb3JOb25IVE1MKCkgb3ZlcnJp
ZGU7CisgICAgdm9pZCBmb3JjZUxheW91dEZvck5vbkhUTUwoKSBmaW5hbDsKIAotICAgIHZvaWQg
c2V0Q29waWVzT25TY3JvbGwoKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldENvcGllc09uU2Nyb2xs
KCkgZmluYWw7CiAKLSAgICB2b2lkIGRldGFjaGVkRnJvbVBhcmVudDIoKSBvdmVycmlkZTsKLSAg
ICB2b2lkIGRldGFjaGVkRnJvbVBhcmVudDMoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRldGFjaGVk
RnJvbVBhcmVudDIoKSBmaW5hbDsKKyAgICB2b2lkIGRldGFjaGVkRnJvbVBhcmVudDMoKSBmaW5h
bDsKIAotICAgIHZvaWQgY29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6U2Vzc2lvbklELCBjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7
CisgICAgdm9pZCBjb252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxvYWQoV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpTZXNzaW9uSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKIAotICAg
IHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYpIG92ZXJyaWRlOworICAgIHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJl
cXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlcios
IGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOwogCi0gICAgdm9pZCBkaXNw
YXRjaFdpbGxTZW5kUmVxdWVzdChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkgb3ZlcnJpZGU7Ci0gICAgYm9vbCBz
aG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllcikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2Vp
dmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVu
Z2UmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJl
c3BvbnNlKSBmaW5hbDsKKyAgICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYkNv
cmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKKyAg
ICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3Jl
OjpBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpIGZpbmFsOwogI2lmIFVTRShQUk9URUNUSU9OX1NQ
QUNFX0FVVEhfQ0FMTEJBQ0spCi0gICAgYm9vbCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVj
dGlvblNwYWNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyLCBjb25zdCBXZWJDb3JlOjpQcm90ZWN0aW9uU3BhY2UmKSBvdmVycmlkZTsKKyAgICBib29s
IGNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UoV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlByb3RlY3Rp
b25TcGFjZSYpIGZpbmFsOwogI2VuZGlmCiAKICNpZiBQTEFURk9STShJT1MpCi0gICAgUmV0YWlu
UHRyPENGRGljdGlvbmFyeVJlZj4gY29ubmVjdGlvblByb3BlcnRpZXMoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIG92ZXJyaWRlOworICAgIFJldGFp
blB0cjxDRkRpY3Rpb25hcnlSZWY+IGNvbm5lY3Rpb25Qcm9wZXJ0aWVzKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKICNlbmRpZgogCi0g
ICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRl
ciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNw
b25zZSYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0
aChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgaW50
IGRhdGFMZW5ndGgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5n
KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBvdmVy
cmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlc3BvbnNlJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50
TGVuZ3RoKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
LCBpbnQgZGF0YUxlbmd0aCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWRp
bmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIGZp
bmFsOwogI2lmIEVOQUJMRShEQVRBX0RFVEVDVElPTikKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmlu
aXNoRGF0YURldGVjdGlvbihOU0FycmF5ICpkZXRlY3Rpb25SZXN1bHRzKSBvdmVycmlkZTsKKyAg
ICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoRGF0YURldGVjdGlvbihOU0FycmF5ICpkZXRlY3Rpb25S
ZXN1bHRzKSBmaW5hbDsKICNlbmRpZgotICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwotCi0gICAgTlNDYWNoZWRVUkxSZXNw
b25zZSogd2lsbENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2UqKSBjb25zdCBvdmVycmlkZTsK
LQotICAgIHZvaWQgZGlzcGF0Y2hEaWREaXNwYXRjaE9ubG9hZEV2ZW50cygpIG92ZXJyaWRlOwot
ICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlU2VydmVyUmVkaXJlY3RGb3JQcm92aXNpb25hbExv
YWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkQ2FuY2VsQ2xpZW50UmVkaXJlY3Qo
KSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFBlcmZvcm1DbGllbnRSZWRpcmVjdChj
b25zdCBXZWJDb3JlOjpVUkwmLCBkb3VibGUgaW50ZXJ2YWwsIGRvdWJsZSBmaXJlRGF0ZSkgb3Zl
cnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZENoYW5nZUxvY2F0aW9uV2l0aGluUGFnZSgpIG92
ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRQdXNoU3RhdGVXaXRoaW5QYWdlKCkgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlcGxhY2VTdGF0ZVdpdGhpblBhZ2UoKSBvdmVycmlk
ZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUG9wU3RhdGVXaXRoaW5QYWdlKCkgb3ZlcnJpZGU7Cisg
ICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikg
ZmluYWw7CisKKyAgICBOU0NhY2hlZFVSTFJlc3BvbnNlKiB3aWxsQ2FjaGVSZXNwb25zZShXZWJD
b3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgTlNDYWNoZWRV
UkxSZXNwb25zZSopIGNvbnN0IGZpbmFsOworCisgICAgdm9pZCBkaXNwYXRjaERpZERpc3BhdGNo
T25sb2FkRXZlbnRzKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVTZXJ2ZXJS
ZWRpcmVjdEZvclByb3Zpc2lvbmFsTG9hZCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRD
YW5jZWxDbGllbnRSZWRpcmVjdCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsUGVyZm9y
bUNsaWVudFJlZGlyZWN0KGNvbnN0IFdlYkNvcmU6OlVSTCYsIGRvdWJsZSBpbnRlcnZhbCwgZG91
YmxlIGZpcmVEYXRlKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkQ2hhbmdlTG9jYXRpb25X
aXRoaW5QYWdlKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFB1c2hTdGF0ZVdpdGhpblBh
Z2UoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVwbGFjZVN0YXRlV2l0aGluUGFnZSgp
IGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRQb3BTdGF0ZVdpdGhpblBhZ2UoKSBmaW5hbDsK
ICAgICAKLSAgICB2b2lkIGRpc3BhdGNoV2lsbENsb3NlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBk
aXNwYXRjaERpZFJlY2VpdmVJY29uKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFN0
YXJ0UHJvdmlzaW9uYWxMb2FkKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2Vp
dmVUaXRsZShjb25zdCBXZWJDb3JlOjpTdHJpbmdXaXRoRGlyZWN0aW9uJikgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBkaXNwYXRjaERpZENvbW1pdExvYWQoc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpIYXNJ
bnNlY3VyZUNvbnRlbnQ+KSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbFByb3Zp
c2lvbmFsTG9hZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7Ci0gICAg
dm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBv
dmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoRG9jdW1lbnRMb2FkKCkgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWQoKSBvdmVycmlkZTsKLSAgICB2b2lk
IGRpc3BhdGNoRGlkUmVhY2hMYXlvdXRNaWxlc3RvbmUoV2ViQ29yZTo6TGF5b3V0TWlsZXN0b25l
cykgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxDbG9zZSgpIGZpbmFsOworICAgIHZv
aWQgZGlzcGF0Y2hEaWRSZWNlaXZlSWNvbigpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRT
dGFydFByb3Zpc2lvbmFsTG9hZCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZl
VGl0bGUoY29uc3QgV2ViQ29yZTo6U3RyaW5nV2l0aERpcmVjdGlvbiYpIGZpbmFsOworICAgIHZv
aWQgZGlzcGF0Y2hEaWRDb21taXRMb2FkKHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6SGFzSW5zZWN1
cmVDb250ZW50PikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxQcm92aXNpb25hbExv
YWQoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0
Y2hEaWRGYWlsTG9hZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmluYWw7CisgICAg
dm9pZCBkaXNwYXRjaERpZEZpbmlzaERvY3VtZW50TG9hZCgpIGZpbmFsOworICAgIHZvaWQgZGlz
cGF0Y2hEaWRGaW5pc2hMb2FkKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlYWNoTGF5
b3V0TWlsZXN0b25lKFdlYkNvcmU6OkxheW91dE1pbGVzdG9uZXMpIGZpbmFsOwogCi0gICAgV2Vi
Q29yZTo6RnJhbWUqIGRpc3BhdGNoQ3JlYXRlUGFnZShjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9u
QWN0aW9uJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFNob3coKSBvdmVycmlkZTsKKyAg
ICBXZWJDb3JlOjpGcmFtZSogZGlzcGF0Y2hDcmVhdGVQYWdlKGNvbnN0IFdlYkNvcmU6Ok5hdmln
YXRpb25BY3Rpb24mKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoU2hvdygpIGZpbmFsOwogCi0g
ICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvclJlc3BvbnNlKGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlUmVzcG9uc2UmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3Jl
OjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGVjaWRl
UG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24m
LCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPFdlYkNvcmU6OkZv
cm1TdGF0ZT4sIGNvbnN0IFdURjo6U3RyaW5nJiBmcmFtZU5hbWUsIFdlYkNvcmU6OkZyYW1lUG9s
aWN5RnVuY3Rpb24pIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JO
YXZpZ2F0aW9uQWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4s
IFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOwotICAgIHZvaWQgY2FuY2Vs
UG9saWN5Q2hlY2soKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9y
UmVzcG9uc2UoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlUmVxdWVzdCYsIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFsOwor
ICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgV2Vi
Q29yZTo6TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYs
IFdlYkNvcmU6OkZvcm1TdGF0ZSosIGNvbnN0IFdURjo6U3RyaW5nJiBmcmFtZU5hbWUsIFdlYkNv
cmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQ
b2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24m
LCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpGb3JtU3RhdGUqLCBX
ZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsKKyAgICB2b2lkIGNhbmNlbFBvbGlj
eUNoZWNrKCkgZmluYWw7CiAKLSAgICB2b2lkIGRpc3BhdGNoVW5hYmxlVG9JbXBsZW1lbnRQb2xp
Y3koY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOworICAgIHZvaWQgZGlz
cGF0Y2hVbmFibGVUb0ltcGxlbWVudFBvbGljeShjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9y
JikgZmluYWw7CiAKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChQYXNzUmVm
UHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4pIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hXaWxs
U3VibWl0Rm9ybShQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4sIFdlYkNvcmU6OkZyYW1l
UG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFN1Ym1p
dEV2ZW50KFJlZjxXZWJDb3JlOjpGb3JtU3RhdGU+JiYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0
Y2hXaWxsU3VibWl0Rm9ybShXZWJDb3JlOjpGb3JtU3RhdGUmLCBXZWJDb3JlOjpGcmFtZVBvbGlj
eUZ1bmN0aW9uKSBmaW5hbDsKIAotICAgIHZvaWQgcmV2ZXJ0VG9Qcm92aXNpb25hbFN0YXRlKFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRNYWluRG9jdW1l
bnRFcnJvcihXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
RXJyb3ImKSBvdmVycmlkZTsKLSAgICBib29sIGRpc3BhdGNoRGlkTG9hZFJlc291cmNlRnJvbU1l
bW9yeUNhY2hlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGludCBsZW5ndGgp
IG92ZXJyaWRlOworICAgIHZvaWQgcmV2ZXJ0VG9Qcm92aXNpb25hbFN0YXRlKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKikgZmluYWw7CisgICAgdm9pZCBzZXRNYWluRG9jdW1lbnRFcnJvcihXZWJD
b3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBmaW5h
bDsKKyAgICBib29sIGRpc3BhdGNoRGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlKFdlYkNv
cmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGludCBsZW5ndGgpIGZpbmFsOwogCi0gICAg
dm9pZCBzZXRNYWluRnJhbWVEb2N1bWVudFJlYWR5KGJvb2wpIG92ZXJyaWRlOworICAgIHZvaWQg
c2V0TWFpbkZyYW1lRG9jdW1lbnRSZWFkeShib29sKSBmaW5hbDsKIAotICAgIHZvaWQgc3RhcnRE
b3dubG9hZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBTdHJpbmcmIHN1
Z2dlc3RlZE5hbWUgPSBTdHJpbmcoKSkgb3ZlcnJpZGU7CisgICAgdm9pZCBzdGFydERvd25sb2Fk
KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFN0cmluZyYgc3VnZ2VzdGVk
TmFtZSA9IFN0cmluZygpKSBmaW5hbDsKIAotICAgIHZvaWQgd2lsbENoYW5nZVRpdGxlKFdlYkNv
cmU6OkRvY3VtZW50TG9hZGVyKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRDaGFuZ2VUaXRsZShX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciopIG92ZXJyaWRlOworICAgIHZvaWQgd2lsbENoYW5nZVRp
dGxlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgZmluYWw7CisgICAgdm9pZCBkaWRDaGFuZ2VU
aXRsZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIGZpbmFsOwogCi0gICAgdm9pZCB3aWxsUmVw
bGFjZU11bHRpcGFydENvbnRlbnQoKSBvdmVycmlkZSB7IH0KLSAgICB2b2lkIGRpZFJlcGxhY2VN
dWx0aXBhcnRDb250ZW50KCkgb3ZlcnJpZGU7CisgICAgdm9pZCB3aWxsUmVwbGFjZU11bHRpcGFy
dENvbnRlbnQoKSBmaW5hbCB7IH0KKyAgICB2b2lkIGRpZFJlcGxhY2VNdWx0aXBhcnRDb250ZW50
KCkgZmluYWw7CiAKLSAgICB2b2lkIGNvbW1pdHRlZExvYWQoV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXIqLCBjb25zdCBjaGFyKiwgaW50KSBvdmVycmlkZTsKLSAgICB2b2lkIGZpbmlzaGVkTG9hZGlu
ZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIG92ZXJyaWRlOwotICAgIHZvaWQgdXBkYXRlR2xv
YmFsSGlzdG9yeSgpIG92ZXJyaWRlOwotICAgIHZvaWQgdXBkYXRlR2xvYmFsSGlzdG9yeVJlZGly
ZWN0TGlua3MoKSBvdmVycmlkZTsKKyAgICB2b2lkIGNvbW1pdHRlZExvYWQoV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXIqLCBjb25zdCBjaGFyKiwgaW50KSBmaW5hbDsKKyAgICB2b2lkIGZpbmlzaGVk
TG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIGZpbmFsOworICAgIHZvaWQgdXBkYXRl
R2xvYmFsSGlzdG9yeSgpIGZpbmFsOworICAgIHZvaWQgdXBkYXRlR2xvYmFsSGlzdG9yeVJlZGly
ZWN0TGlua3MoKSBmaW5hbDsKIAotICAgIGJvb2wgc2hvdWxkR29Ub0hpc3RvcnlJdGVtKFdlYkNv
cmU6Okhpc3RvcnlJdGVtKikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCB1cGRhdGVHbG9iYWxI
aXN0b3J5SXRlbUZvclBhZ2UoKSBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZEdvVG9IaXN0b3J5
SXRlbShXZWJDb3JlOjpIaXN0b3J5SXRlbSopIGNvbnN0IGZpbmFsOworICAgIHZvaWQgdXBkYXRl
R2xvYmFsSGlzdG9yeUl0ZW1Gb3JQYWdlKCkgZmluYWw7CiAKLSAgICB2b2lkIGRpZERpc3BsYXlJ
bnNlY3VyZUNvbnRlbnQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZFJ1bkluc2VjdXJlQ29udGVu
dChXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiosIGNvbnN0IFdlYkNvcmU6OlVSTCYpIG92ZXJyaWRl
OwotICAgIHZvaWQgZGlkRGV0ZWN0WFNTKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGJvb2wgZGlkQmxv
Y2tFbnRpcmVQYWdlKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZERpc3BsYXlJbnNlY3VyZUNvbnRl
bnQoKSBmaW5hbDsKKyAgICB2b2lkIGRpZFJ1bkluc2VjdXJlQ29udGVudChXZWJDb3JlOjpTZWN1
cml0eU9yaWdpbiosIGNvbnN0IFdlYkNvcmU6OlVSTCYpIGZpbmFsOworICAgIHZvaWQgZGlkRGV0
ZWN0WFNTKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGJvb2wgZGlkQmxvY2tFbnRpcmVQYWdlKSBmaW5h
bDsKIAotICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgY2FuY2VsbGVkRXJyb3IoY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VF
cnJvciBibG9ja2VkRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJp
ZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkQnlDb250ZW50QmxvY2tlckVy
cm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRlOwotICAgIFdlYkNv
cmU6OlJlc291cmNlRXJyb3IgY2Fubm90U2hvd1VSTEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlUmVxdWVzdCYpIG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgaW50ZXJy
dXB0ZWRGb3JQb2xpY3lDaGFuZ2VFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qm
KSBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbmNlbGxlZEVycm9yKGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOworICAgIFdlYkNvcmU6OlJlc291
cmNlRXJyb3IgYmxvY2tlZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZp
bmFsOworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgYmxvY2tlZEJ5Q29udGVudEJsb2NrZXJF
cnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKKyAgICBXZWJDb3Jl
OjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dVUkxFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZVJlcXVlc3QmKSBmaW5hbDsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGludGVycnVwdGVk
Rm9yUG9saWN5Q2hhbmdlRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmlu
YWw7CiAjaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQotICAgIFdlYkNvcmU6OlJlc291cmNl
RXJyb3IgYmxvY2tlZEJ5Q29udGVudEZpbHRlckVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYpIG92ZXJyaWRlOworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgYmxvY2tlZEJ5
Q29udGVudEZpbHRlckVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFs
OwogI2VuZGlmCiAKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dNSU1FVHlw
ZUVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKLSAgICBX
ZWJDb3JlOjpSZXNvdXJjZUVycm9yIGZpbGVEb2VzTm90RXhpc3RFcnJvcihjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJv
ciBwbHVnaW5XaWxsSGFuZGxlTG9hZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2UmKSBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dNSU1F
VHlwZUVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICBX
ZWJDb3JlOjpSZXNvdXJjZUVycm9yIGZpbGVEb2VzTm90RXhpc3RFcnJvcihjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBw
bHVnaW5XaWxsSGFuZGxlTG9hZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Um
KSBmaW5hbDsKIAotICAgIGJvb2wgc2hvdWxkRmFsbEJhY2soY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VFcnJvciYpIG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkRmFsbEJhY2soY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VFcnJvciYpIGZpbmFsOwogCi0gICAgV1RGOjpTdHJpbmcgdXNlckFnZW50KGNv
bnN0IFdlYkNvcmU6OlVSTCYpIG92ZXJyaWRlOworICAgIFdURjo6U3RyaW5nIHVzZXJBZ2VudChj
b25zdCBXZWJDb3JlOjpVUkwmKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHNhdmVQbGF0Zm9ybURh
dGFUb0NhY2hlZEZyYW1lKFdlYkNvcmU6OkNhY2hlZEZyYW1lKikgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCB0cmFuc2l0aW9uVG9Db21taXR0ZWRGcm9tQ2FjaGVkRnJhbWUoV2ViQ29yZTo6Q2FjaGVkRnJh
bWUqKSBvdmVycmlkZTsKKyAgICB2b2lkIHNhdmVQbGF0Zm9ybURhdGFUb0NhY2hlZEZyYW1lKFdl
YkNvcmU6OkNhY2hlZEZyYW1lKikgZmluYWw7CisgICAgdm9pZCB0cmFuc2l0aW9uVG9Db21taXR0
ZWRGcm9tQ2FjaGVkRnJhbWUoV2ViQ29yZTo6Q2FjaGVkRnJhbWUqKSBmaW5hbDsKICNpZiBQTEFU
Rk9STShJT1MpCi0gICAgdm9pZCBkaWRSZXN0b3JlRnJhbWVIaWVyYXJjaHlGb3JDYWNoZWRGcmFt
ZSgpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkUmVzdG9yZUZyYW1lSGllcmFyY2h5Rm9yQ2FjaGVk
RnJhbWUoKSBmaW5hbDsKICNlbmRpZgotICAgIHZvaWQgdHJhbnNpdGlvblRvQ29tbWl0dGVkRm9y
TmV3UGFnZSgpIG92ZXJyaWRlOworICAgIHZvaWQgdHJhbnNpdGlvblRvQ29tbWl0dGVkRm9yTmV3
UGFnZSgpIGZpbmFsOwogCi0gICAgdm9pZCBkaWRTYXZlVG9QYWdlQ2FjaGUoKSBvdmVycmlkZTsK
LSAgICB2b2lkIGRpZFJlc3RvcmVGcm9tUGFnZUNhY2hlKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBk
aWRTYXZlVG9QYWdlQ2FjaGUoKSBmaW5hbDsKKyAgICB2b2lkIGRpZFJlc3RvcmVGcm9tUGFnZUNh
Y2hlKCkgZmluYWw7CiAKLSAgICB2b2lkIGRpc3BhdGNoRGlkQmVjb21lRnJhbWVzZXQoYm9vbCkg
b3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERpZEJlY29tZUZyYW1lc2V0KGJvb2wpIGZpbmFs
OwogCi0gICAgYm9vbCBjYW5IYW5kbGVSZXF1ZXN0KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVx
dWVzdCYpIGNvbnN0IG92ZXJyaWRlOwotICAgIGJvb2wgY2FuU2hvd01JTUVUeXBlKGNvbnN0IFdU
Rjo6U3RyaW5nJiBNSU1FVHlwZSkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgYm9vbCBjYW5TaG93TUlN
RVR5cGVBc0hUTUwoY29uc3QgV1RGOjpTdHJpbmcmIE1JTUVUeXBlKSBjb25zdCBvdmVycmlkZTsK
LSAgICBib29sIHJlcHJlc2VudGF0aW9uRXhpc3RzRm9yVVJMU2NoZW1lKGNvbnN0IFdURjo6U3Ry
aW5nJiBVUkxTY2hlbWUpIGNvbnN0IG92ZXJyaWRlOwotICAgIFdURjo6U3RyaW5nIGdlbmVyYXRl
ZE1JTUVUeXBlRm9yVVJMU2NoZW1lKGNvbnN0IFdURjo6U3RyaW5nJiBVUkxTY2hlbWUpIGNvbnN0
IG92ZXJyaWRlOworICAgIGJvb2wgY2FuSGFuZGxlUmVxdWVzdChjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmKSBjb25zdCBmaW5hbDsKKyAgICBib29sIGNhblNob3dNSU1FVHlwZShjb25z
dCBXVEY6OlN0cmluZyYgTUlNRVR5cGUpIGNvbnN0IGZpbmFsOworICAgIGJvb2wgY2FuU2hvd01J
TUVUeXBlQXNIVE1MKGNvbnN0IFdURjo6U3RyaW5nJiBNSU1FVHlwZSkgY29uc3QgZmluYWw7Cisg
ICAgYm9vbCByZXByZXNlbnRhdGlvbkV4aXN0c0ZvclVSTFNjaGVtZShjb25zdCBXVEY6OlN0cmlu
ZyYgVVJMU2NoZW1lKSBjb25zdCBmaW5hbDsKKyAgICBXVEY6OlN0cmluZyBnZW5lcmF0ZWRNSU1F
VHlwZUZvclVSTFNjaGVtZShjb25zdCBXVEY6OlN0cmluZyYgVVJMU2NoZW1lKSBjb25zdCBmaW5h
bDsKIAotICAgIHZvaWQgZnJhbWVMb2FkQ29tcGxldGVkKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBz
YXZlVmlld1N0YXRlVG9JdGVtKFdlYkNvcmU6Okhpc3RvcnlJdGVtJikgb3ZlcnJpZGU7Ci0gICAg
dm9pZCByZXN0b3JlVmlld1N0YXRlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBwcm92aXNpb25hbExv
YWRTdGFydGVkKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRGaW5pc2hMb2FkKCkgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBwcmVwYXJlRm9yRGF0YVNvdXJjZVJlcGxhY2VtZW50KCkgb3ZlcnJpZGU7Ci0g
ICAgUmVmPFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyPiBjcmVhdGVEb2N1bWVudExvYWRlcihjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpTdWJzdGl0dXRlRGF0
YSYpIG92ZXJyaWRlOwotICAgIHZvaWQgdXBkYXRlQ2FjaGVkRG9jdW1lbnRMb2FkZXIoV2ViQ29y
ZTo6RG9jdW1lbnRMb2FkZXImKSBvdmVycmlkZSB7IH0KKyAgICB2b2lkIGZyYW1lTG9hZENvbXBs
ZXRlZCgpIGZpbmFsOworICAgIHZvaWQgc2F2ZVZpZXdTdGF0ZVRvSXRlbShXZWJDb3JlOjpIaXN0
b3J5SXRlbSYpIGZpbmFsOworICAgIHZvaWQgcmVzdG9yZVZpZXdTdGF0ZSgpIGZpbmFsOworICAg
IHZvaWQgcHJvdmlzaW9uYWxMb2FkU3RhcnRlZCgpIGZpbmFsOworICAgIHZvaWQgZGlkRmluaXNo
TG9hZCgpIGZpbmFsOworICAgIHZvaWQgcHJlcGFyZUZvckRhdGFTb3VyY2VSZXBsYWNlbWVudCgp
IGZpbmFsOworICAgIFJlZjxXZWJDb3JlOjpEb2N1bWVudExvYWRlcj4gY3JlYXRlRG9jdW1lbnRM
b2FkZXIoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6U3Vi
c3RpdHV0ZURhdGEmKSBmaW5hbDsKKyAgICB2b2lkIHVwZGF0ZUNhY2hlZERvY3VtZW50TG9hZGVy
KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyJikgZmluYWwgeyB9CiAKLSAgICB2b2lkIHNldFRpdGxl
KGNvbnN0IFdlYkNvcmU6OlN0cmluZ1dpdGhEaXJlY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpVUkwm
KSBvdmVycmlkZTsKKyAgICB2b2lkIHNldFRpdGxlKGNvbnN0IFdlYkNvcmU6OlN0cmluZ1dpdGhE
aXJlY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpVUkwmKSBmaW5hbDsKIAotICAgIFJlZlB0cjxXZWJD
b3JlOjpGcmFtZT4gY3JlYXRlRnJhbWUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgV1RGOjpT
dHJpbmcmIG5hbWUsIFdlYkNvcmU6OkhUTUxGcmFtZU93bmVyRWxlbWVudCosCi0gICAgICAgIGNv
bnN0IFdURjo6U3RyaW5nJiByZWZlcnJlciwgYm9vbCBhbGxvd3NTY3JvbGxpbmcsIGludCBtYXJn
aW5XaWR0aCwgaW50IG1hcmdpbkhlaWdodCkgb3ZlcnJpZGU7Ci0gICAgUmVmUHRyPFdlYkNvcmU6
OldpZGdldD4gY3JlYXRlUGx1Z2luKGNvbnN0IFdlYkNvcmU6OkludFNpemUmLCBXZWJDb3JlOjpI
VE1MUGx1Z0luRWxlbWVudCosIGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNvbnN0IFZlY3RvcjxXVEY6
OlN0cmluZz4mLAotICAgICAgICBjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiwgY29uc3QgV1RG
OjpTdHJpbmcmLCBib29sKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlY3JlYXRlUGx1Z2luKFdlYkNv
cmU6OldpZGdldCopIG92ZXJyaWRlOwotICAgIHZvaWQgcmVkaXJlY3REYXRhVG9QbHVnaW4oV2Vi
Q29yZTo6V2lkZ2V0KiBwbHVnaW5XaWRnZXQpIG92ZXJyaWRlOworICAgIFJlZlB0cjxXZWJDb3Jl
OjpGcmFtZT4gY3JlYXRlRnJhbWUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgV1RGOjpTdHJp
bmcmIG5hbWUsIFdlYkNvcmU6OkhUTUxGcmFtZU93bmVyRWxlbWVudCYsCisgICAgICAgIGNvbnN0
IFdURjo6U3RyaW5nJiByZWZlcnJlciwgYm9vbCBhbGxvd3NTY3JvbGxpbmcsIGludCBtYXJnaW5X
aWR0aCwgaW50IG1hcmdpbkhlaWdodCkgZmluYWw7CisgICAgUmVmUHRyPFdlYkNvcmU6OldpZGdl
dD4gY3JlYXRlUGx1Z2luKGNvbnN0IFdlYkNvcmU6OkludFNpemUmLCBXZWJDb3JlOjpIVE1MUGx1
Z0luRWxlbWVudCYsIGNvbnN0IFdlYkNvcmU6OlVSTCYsCisgICAgICAgIGNvbnN0IFZlY3RvcjxX
VEY6OlN0cmluZz4mLCBjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiwgY29uc3QgV1RGOjpTdHJp
bmcmLCBib29sKSBmaW5hbDsKKyAgICB2b2lkIHJlY3JlYXRlUGx1Z2luKFdlYkNvcmU6OldpZGdl
dCopIGZpbmFsOworICAgIHZvaWQgcmVkaXJlY3REYXRhVG9QbHVnaW4oV2ViQ29yZTo6V2lkZ2V0
KiBwbHVnaW5XaWRnZXQpIGZpbmFsOwogCiAjaWYgRU5BQkxFKFdFQkdMKQotICAgIFdlYkNvcmU6
OldlYkdMTG9hZFBvbGljeSB3ZWJHTFBvbGljeUZvclVSTChjb25zdCBTdHJpbmcmKSBjb25zdCBv
dmVycmlkZTsKLSAgICBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgcmVzb2x2ZVdlYkdMUG9saWN5
Rm9yVVJMKGNvbnN0IFN0cmluZyYpIGNvbnN0IG92ZXJyaWRlOwotI2VuZGlmIC8vIEVOQUJMRShX
RUJHTCkKKyAgICBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgd2ViR0xQb2xpY3lGb3JVUkwoY29u
c3QgU3RyaW5nJikgY29uc3QgZmluYWw7CisgICAgV2ViQ29yZTo6V2ViR0xMb2FkUG9saWN5IHJl
c29sdmVXZWJHTFBvbGljeUZvclVSTChjb25zdCBTdHJpbmcmKSBjb25zdCBmaW5hbDsKKyNlbmRp
ZgogCi0gICAgUGFzc1JlZlB0cjxXZWJDb3JlOjpXaWRnZXQ+IGNyZWF0ZUphdmFBcHBsZXRXaWRn
ZXQoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxBcHBsZXRFbGVtZW50Kiwg
Y29uc3QgV2ViQ29yZTo6VVJMJiBiYXNlVVJMLAotICAgICAgICBjb25zdCBWZWN0b3I8V1RGOjpT
dHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiBwYXJhbVZhbHVl
cykgb3ZlcnJpZGU7CisgICAgUmVmUHRyPFdlYkNvcmU6OldpZGdldD4gY3JlYXRlSmF2YUFwcGxl
dFdpZGdldChjb25zdCBXZWJDb3JlOjpJbnRTaXplJiwgV2ViQ29yZTo6SFRNTEFwcGxldEVsZW1l
bnQmLCBjb25zdCBXZWJDb3JlOjpVUkwmIGJhc2VVUkwsCisgICAgICAgIGNvbnN0IFZlY3RvcjxX
VEY6OlN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mIHBhcmFt
VmFsdWVzKSBmaW5hbDsKICAgICAKLSAgICBXZWJDb3JlOjpPYmplY3RDb250ZW50VHlwZSBvYmpl
Y3RDb250ZW50VHlwZShjb25zdCBXZWJDb3JlOjpVUkwmLCBjb25zdCBXVEY6OlN0cmluZyYgbWlt
ZVR5cGUpIG92ZXJyaWRlOwotICAgIFdURjo6U3RyaW5nIG92ZXJyaWRlTWVkaWFUeXBlKCkgY29u
c3Qgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6T2JqZWN0Q29udGVudFR5cGUgb2JqZWN0Q29udGVu
dFR5cGUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgV1RGOjpTdHJpbmcmIG1pbWVUeXBlKSBm
aW5hbDsKKyAgICBXVEY6OlN0cmluZyBvdmVycmlkZU1lZGlhVHlwZSgpIGNvbnN0IGZpbmFsOwog
ICAgIAotICAgIHZvaWQgZGlzcGF0Y2hEaWRDbGVhcldpbmRvd09iamVjdEluV29ybGQoV2ViQ29y
ZTo6RE9NV3JhcHBlcldvcmxkJikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERpZENsZWFy
V2luZG93T2JqZWN0SW5Xb3JsZChXZWJDb3JlOjpET01XcmFwcGVyV29ybGQmKSBmaW5hbDsKIAot
ICAgIHZvaWQgcmVnaXN0ZXJGb3JJY29uTm90aWZpY2F0aW9uKGJvb2wgbGlzdGVuKSBvdmVycmlk
ZTsKKyAgICB2b2lkIHJlZ2lzdGVyRm9ySWNvbk5vdGlmaWNhdGlvbihib29sIGxpc3RlbikgZmlu
YWw7CiAKICNpZiBQTEFURk9STShJT1MpCi0gICAgYm9vbCBzaG91bGRMb2FkTWVkaWFFbGVtZW50
VVJMKGNvbnN0IFdlYkNvcmU6OlVSTCYpIGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxk
TG9hZE1lZGlhRWxlbWVudFVSTChjb25zdCBXZWJDb3JlOjpVUkwmKSBjb25zdCBmaW5hbDsKICNl
bmRpZgogCi0gICAgUmVtb3RlQVhPYmplY3RSZWYgYWNjZXNzaWJpbGl0eVJlbW90ZU9iamVjdCgp
IG92ZXJyaWRlIHsgcmV0dXJuIDA7IH0KKyAgICBSZW1vdGVBWE9iamVjdFJlZiBhY2Nlc3NpYmls
aXR5UmVtb3RlT2JqZWN0KCkgZmluYWwgeyByZXR1cm4gMDsgfQogICAgIAogICAgIFJldGFpblB0
cjxXZWJGcmFtZVBvbGljeUxpc3RlbmVyPiBzZXRVcFBvbGljeUxpc3RlbmVyKFdlYkNvcmU6OkZy
YW1lUG9saWN5RnVuY3Rpb24sIE5TVVJMICphcHBMaW5rVVJMID0gbmlsKTsKIAotICAgIE5TRGlj
dGlvbmFyeSAqYWN0aW9uRGljdGlvbmFyeShjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9u
JiwgUGFzc1JlZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+KSBjb25zdDsKKyAgICBOU0RpY3Rpb25h
cnkgKmFjdGlvbkRpY3Rpb25hcnkoY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYsIFdl
YkNvcmU6OkZvcm1TdGF0ZSopIGNvbnN0OwogICAgIAotICAgIGJvb2wgY2FuQ2FjaGVQYWdlKCkg
Y29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBjYW5DYWNoZVBhZ2UoKSBjb25zdCBmaW5hbDsKIAot
ICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRlTmV0
d29ya2luZ0NvbnRleHQoKSBvdmVycmlkZTsKKyAgICBSZWY8V2ViQ29yZTo6RnJhbWVOZXR3b3Jr
aW5nQ29udGV4dD4gY3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKSBmaW5hbDsKIAogI2lmIEVOQUJM
RShSRVFVRVNUX0FVVE9DT01QTEVURSkKLSAgICB2b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxldGUo
UGFzc1JlZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+KSBvdmVycmlkZSB7IH0KKyAgICB2b2lkIGRp
ZFJlcXVlc3RBdXRvY29tcGxldGUoUmVmPFdlYkNvcmU6OkZvcm1TdGF0ZT4mJikgZmluYWwgeyB9
CiAjZW5kaWYKIAotICAgIGJvb2wgc2hvdWxkUGFpbnRCcm9rZW5JbWFnZShjb25zdCBXZWJDb3Jl
OjpVUkwmKSBjb25zdCBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZFBhaW50QnJva2VuSW1hZ2Uo
Y29uc3QgV2ViQ29yZTo6VVJMJikgY29uc3QgZmluYWw7CiAKICNpZiBVU0UoUVVJQ0tfTE9PSykK
LSAgICB2b2lkIGRpZENyZWF0ZVF1aWNrTG9va0hhbmRsZShXZWJDb3JlOjpRdWlja0xvb2tIYW5k
bGUmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZENyZWF0ZVF1aWNrTG9va0hhbmRsZShXZWJDb3Jl
OjpRdWlja0xvb2tIYW5kbGUmKSBmaW5hbDsKICNlbmRpZgogCiAjaWYgRU5BQkxFKENPTlRFTlRf
RklMVEVSSU5HKQotICAgIHZvaWQgY29udGVudEZpbHRlckRpZEJsb2NrTG9hZChXZWJDb3JlOjpD
b250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXIpIG92ZXJyaWRlOworICAgIHZvaWQgY29udGVudEZp
bHRlckRpZEJsb2NrTG9hZChXZWJDb3JlOjpDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXIpIGZp
bmFsOwogI2VuZGlmCiAKLSAgICB2b2lkIHByZWZldGNoRE5TKGNvbnN0IFN0cmluZyYpIG92ZXJy
aWRlOworICAgIHZvaWQgcHJlZmV0Y2hETlMoY29uc3QgU3RyaW5nJikgZmluYWw7CiAKICAgICBS
ZXRhaW5QdHI8V2ViRnJhbWU+IG1fd2ViRnJhbWU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1tIGIvU291cmNlL1dl
YktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW0KaW5kZXggNGU5
YjJlMjcyZDJkMzlkYWE4MGRhMGNjYTQzZGQyZmEwOTg5YzEwNS4uYTU0NzNlM2I4ZWU5NGI0YzE5
OGJlZGE0MzRhOWMzNjEyNTQ0MTIwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2Vi
Q29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW0KKysrIGIvU291cmNlL1dlYktpdC9t
YWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW0KQEAgLTEsNSArMSw1IEBA
CiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0xMjgsNyArMTI4
LDcgQEAKICNpbXBvcnQgPHJ1bnRpbWUvSW5pdGlhbGl6ZVRocmVhZGluZy5oPgogI2ltcG9ydCA8
d3RmL0Jsb2NrT2JqQ0V4Y2VwdGlvbnMuaD4KICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+Ci0j
aW1wb3J0IDx3dGYvUGFzc1JlZlB0ci5oPgorI2ltcG9ydCA8d3RmL1JlZi5oPgogI2ltcG9ydCA8
d3RmL1J1bkxvb3AuaD4KICNpbXBvcnQgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC04ODQs
NyArODg0LDcgQEAgc3RhdGljIEJPT0wgc2hvdWxkVHJ5QXBwTGluayhXZWJWaWV3ICp3ZWJWaWV3
LCBjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIEYKICNlbmRpZgogfQogCi12b2lkIFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlv
bihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYg
cmVxdWVzdCwgUGFzc1JlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSwgY29uc3QgU3RyaW5nJiBm
cmFtZU5hbWUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24pCit2b2lkIFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBO
YXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwg
Rm9ybVN0YXRlKiBmb3JtU3RhdGUsIGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBGcmFtZVBvbGlj
eUZ1bmN0aW9uIGZ1bmN0aW9uKQogewogICAgIFdlYlZpZXcgKndlYlZpZXcgPSBnZXRXZWJWaWV3
KG1fd2ViRnJhbWUuZ2V0KCkpOwogICAgIEJPT0wgdHJ5QXBwTGluayA9IHNob3VsZFRyeUFwcExp
bmsod2ViVmlldywgYWN0aW9uLCBudWxscHRyKTsKQEAgLTg5Niw3ICs4OTYsNyBAQCB2b2lkIFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlv
bihjb25zdCBOYXZpZ2F0aQogICAgICAgICAgICAgICAgICAgICAgICAgICBkZWNpc2lvbkxpc3Rl
bmVyOnNldFVwUG9saWN5TGlzdGVuZXIoV1RGTW92ZShmdW5jdGlvbiksIHRyeUFwcExpbmsgPyAo
TlNVUkwgKilyZXF1ZXN0LnVybCgpIDogbmlsKS5nZXQoKV07CiB9CiAKLXZvaWQgV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25z
dCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVz
dCwgUGFzc1JlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSwgRnJhbWVQb2xpY3lGdW5jdGlvbiBm
dW5jdGlvbikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5
Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIGNvbnN0
IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIEZyYW1lUG9s
aWN5RnVuY3Rpb24gZnVuY3Rpb24pCiB7CiAgICAgV2ViVmlldyAqd2ViVmlldyA9IGdldFdlYlZp
ZXcobV93ZWJGcmFtZS5nZXQoKSk7CiAgICAgQk9PTCB0cnlBcHBMaW5rID0gc2hvdWxkVHJ5QXBw
TGluayh3ZWJWaWV3LCBhY3Rpb24sIGNvcmUobV93ZWJGcmFtZS5nZXQoKSkpOwpAQCAtOTIwLDI5
ICs5MjAsMjggQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hVbmFibGVUb0lt
cGxlbWVudFBvbGljeShjb25zdCBSZXNvdXJjZUVycm9yJgogICAgIFtbd2ViVmlldyBfcG9saWN5
RGVsZWdhdGVGb3J3YXJkZXJdIHdlYlZpZXc6d2ViVmlldyB1bmFibGVUb0ltcGxlbWVudFBvbGlj
eVdpdGhFcnJvcjplcnJvciBmcmFtZTptX3dlYkZyYW1lLmdldCgpXTsgICAgCiB9CiAKLXN0YXRp
YyBOU0RpY3Rpb25hcnkgKm1ha2VGb3JtRmllbGRWYWx1ZXNEaWN0aW9uYXJ5KEZvcm1TdGF0ZSog
Zm9ybVN0YXRlKQorc3RhdGljIE5TRGljdGlvbmFyeSAqbWFrZUZvcm1GaWVsZFZhbHVlc0RpY3Rp
b25hcnkoRm9ybVN0YXRlJiBmb3JtU3RhdGUpCiB7Ci0gICAgY29uc3QgU3RyaW5nUGFpclZlY3Rv
ciYgdGV4dEZpZWxkVmFsdWVzID0gZm9ybVN0YXRlLT50ZXh0RmllbGRWYWx1ZXMoKTsKKyAgICBh
dXRvJiB0ZXh0RmllbGRWYWx1ZXMgPSBmb3JtU3RhdGUudGV4dEZpZWxkVmFsdWVzKCk7CiAgICAg
c2l6ZV90IHNpemUgPSB0ZXh0RmllbGRWYWx1ZXMuc2l6ZSgpOwogICAgIE5TTXV0YWJsZURpY3Rp
b25hcnkgKmRpY3Rpb25hcnkgPSBbW05TTXV0YWJsZURpY3Rpb25hcnkgYWxsb2NdIGluaXRXaXRo
Q2FwYWNpdHk6c2l6ZV07Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzaXplOyArK2kpCi0g
ICAgICAgIFtkaWN0aW9uYXJ5IHNldE9iamVjdDp0ZXh0RmllbGRWYWx1ZXNbaV0uc2Vjb25kIGZv
cktleTp0ZXh0RmllbGRWYWx1ZXNbaV0uZmlyc3RdOwotCisgICAgZm9yIChhdXRvJiB2YWx1ZSA6
IHRleHRGaWVsZFZhbHVlcykKKyAgICAgICAgW2RpY3Rpb25hcnkgc2V0T2JqZWN0OnZhbHVlLnNl
Y29uZCBmb3JLZXk6dmFsdWUuZmlyc3RdOwogICAgIHJldHVybiBbZGljdGlvbmFyeSBhdXRvcmVs
ZWFzZV07CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRT
dWJtaXRFdmVudChQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4gZm9ybVN0YXRlKQordm9p
ZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJlZjxX
ZWJDb3JlOjpGb3JtU3RhdGU+JiYgZm9ybVN0YXRlKQogewogICAgIGlkIDxXZWJGb3JtRGVsZWdh
dGU+IGZvcm1EZWxlZ2F0ZSA9IFtnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkpIF9mb3JtRGVs
ZWdhdGVdOwogICAgIGlmICghZm9ybURlbGVnYXRlKQogICAgICAgICByZXR1cm47CiAKLSAgICBE
T01IVE1MRm9ybUVsZW1lbnQgKmZvcm1FbGVtZW50ID0ga2l0KGZvcm1TdGF0ZS0+Zm9ybSgpKTsK
KyAgICBET01IVE1MRm9ybUVsZW1lbnQgKmZvcm1FbGVtZW50ID0ga2l0KCZmb3JtU3RhdGUtPmZv
cm0oKSk7CiAgICAgTlNEaWN0aW9uYXJ5ICp2YWx1ZXMgPSBtYWtlRm9ybUZpZWxkVmFsdWVzRGlj
dGlvbmFyeShmb3JtU3RhdGUuZ2V0KCkpOwogICAgIENhbGxGb3JtRGVsZWdhdGUoZ2V0V2ViVmll
dyhtX3dlYkZyYW1lLmdldCgpKSwgQHNlbGVjdG9yKHdpbGxTZW5kU3VibWl0RXZlbnRUb0Zvcm06
aW5GcmFtZTp3aXRoVmFsdWVzOiksIGZvcm1FbGVtZW50LCBtX3dlYkZyYW1lLmdldCgpLCB2YWx1
ZXMpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTdWJtaXRG
b3JtKFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiBmb3JtU3RhdGUsIEZyYW1lUG9saWN5RnVuY3Rpb24g
ZnVuY3Rpb24pCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTdWJtaXRG
b3JtKEZvcm1TdGF0ZSYgZm9ybVN0YXRlLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQog
ewogICAgIGlkIDxXZWJGb3JtRGVsZWdhdGU+IGZvcm1EZWxlZ2F0ZSA9IFtnZXRXZWJWaWV3KG1f
d2ViRnJhbWUuZ2V0KCkpIF9mb3JtRGVsZWdhdGVdOwogICAgIGlmICghZm9ybURlbGVnYXRlKSB7
CkBAIC05NTAsOCArOTQ5LDggQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hX
aWxsU3VibWl0Rm9ybShQYXNzUmVmUHRyPEZvcm1TdGF0ZT4gZm9ybVN0YXQKICAgICAgICAgcmV0
dXJuOwogICAgIH0KIAotICAgIE5TRGljdGlvbmFyeSAqdmFsdWVzID0gbWFrZUZvcm1GaWVsZFZh
bHVlc0RpY3Rpb25hcnkoZm9ybVN0YXRlLmdldCgpKTsKLSAgICBDYWxsRm9ybURlbGVnYXRlKGdl
dFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSksIEBzZWxlY3RvcihmcmFtZTpzb3VyY2VGcmFtZTp3
aWxsU3VibWl0Rm9ybTp3aXRoVmFsdWVzOnN1Ym1pc3Npb25MaXN0ZW5lcjopLCBtX3dlYkZyYW1l
LmdldCgpLCBraXQoZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLT5mcmFtZSgpKSwga2l0KGZv
cm1TdGF0ZS0+Zm9ybSgpKSwgdmFsdWVzLCBzZXRVcFBvbGljeUxpc3RlbmVyKFdURk1vdmUoZnVu
Y3Rpb24pKS5nZXQoKSk7CisgICAgTlNEaWN0aW9uYXJ5ICp2YWx1ZXMgPSBtYWtlRm9ybUZpZWxk
VmFsdWVzRGljdGlvbmFyeShmb3JtU3RhdGUpOworICAgIENhbGxGb3JtRGVsZWdhdGUoZ2V0V2Vi
VmlldyhtX3dlYkZyYW1lLmdldCgpKSwgQHNlbGVjdG9yKGZyYW1lOnNvdXJjZUZyYW1lOndpbGxT
dWJtaXRGb3JtOndpdGhWYWx1ZXM6c3VibWlzc2lvbkxpc3RlbmVyOiksIG1fd2ViRnJhbWUuZ2V0
KCksIGtpdChmb3JtU3RhdGUuc291cmNlRG9jdW1lbnQoKS5mcmFtZSgpKSwga2l0KCZmb3JtU3Rh
dGUuZm9ybSgpKSwgdmFsdWVzLCBzZXRVcFBvbGljeUxpc3RlbmVyKFdURk1vdmUoZnVuY3Rpb24p
KS5nZXQoKSk7CiB9CiAKIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnJldmVydFRvUHJvdmlz
aW9uYWxTdGF0ZShEb2N1bWVudExvYWRlciogbG9hZGVyKQpAQCAtMTU1Miw3ICsxNTUxLDcgQEAg
c3RhdGljIGNvbnN0IE1vdXNlRXZlbnQqIGZpbmRNb3VzZUV2ZW50KGNvbnN0IEV2ZW50KiBldmVu
dCkKICAgICByZXR1cm4gMDsKIH0KIAotTlNEaWN0aW9uYXJ5ICpXZWJGcmFtZUxvYWRlckNsaWVu
dDo6YWN0aW9uRGljdGlvbmFyeShjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIFBhc3NS
ZWZQdHI8Rm9ybVN0YXRlPiBmb3JtU3RhdGUpIGNvbnN0CitOU0RpY3Rpb25hcnkgKldlYkZyYW1l
TG9hZGVyQ2xpZW50OjphY3Rpb25EaWN0aW9uYXJ5KGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIGFj
dGlvbiwgRm9ybVN0YXRlKiBmb3JtU3RhdGUpIGNvbnN0CiB7CiAgICAgdW5zaWduZWQgbW9kaWZp
ZXJGbGFncyA9IDA7CiAgICAgY29uc3QgRXZlbnQqIGV2ZW50ID0gYWN0aW9uLmV2ZW50KCk7CkBA
IC0xNTkzLDEwICsxNTkyLDggQEAgTlNEaWN0aW9uYXJ5ICpXZWJGcmFtZUxvYWRlckNsaWVudDo6
YWN0aW9uRGljdGlvbmFyeShjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3QKICAgICAgICAgICAg
IFtyZXN1bHQgc2V0T2JqZWN0OltOU051bWJlciBudW1iZXJXaXRoSW50OldlYkNvcmU6Ok5vQnV0
dG9uXSBmb3JLZXk6V2ViQWN0aW9uQnV0dG9uS2V5XTsKICAgICB9CiAKLSAgICBpZiAoZm9ybVN0
YXRlKSB7Ci0gICAgICAgIEFTU0VSVChmb3JtU3RhdGUtPmZvcm0oKSk7Ci0gICAgICAgIFtyZXN1
bHQgc2V0T2JqZWN0OmtpdChmb3JtU3RhdGUtPmZvcm0oKSkgZm9yS2V5OldlYkFjdGlvbkZvcm1L
ZXldOwotICAgIH0KKyAgICBpZiAoZm9ybVN0YXRlKQorICAgICAgICBbcmVzdWx0IHNldE9iamVj
dDpraXQoJmZvcm1TdGF0ZS0+Zm9ybSgpKSBmb3JLZXk6V2ViQWN0aW9uRm9ybUtleV07CiAKICAg
ICByZXR1cm4gcmVzdWx0OwogfQpAQCAtMTYyMiw3ICsxNjE5LDcgQEAgYm9vbCBXZWJGcmFtZUxv
YWRlckNsaWVudDo6Y2FuQ2FjaGVQYWdlKCkgY29uc3QKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAot
UmVmUHRyPEZyYW1lPiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlRnJhbWUoY29uc3QgVVJM
JiB1cmwsIGNvbnN0IFN0cmluZyYgbmFtZSwgSFRNTEZyYW1lT3duZXJFbGVtZW50KiBvd25lckVs
ZW1lbnQsCitSZWZQdHI8RnJhbWU+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVGcmFtZShj
b25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiBuYW1lLCBIVE1MRnJhbWVPd25lckVsZW1lbnQm
IG93bmVyRWxlbWVudCwKICAgICBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBib29sIGFsbG93c1Nj
cm9sbGluZywgaW50IG1hcmdpbldpZHRoLCBpbnQgbWFyZ2luSGVpZ2h0KQogewogICAgIEJFR0lO
X0JMT0NLX09CSkNfRVhDRVBUSU9OUzsKQEAgLTE2MzEsNyArMTYyOCw3IEBAIFJlZlB0cjxGcmFt
ZT4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYgdXJsLCBjb25z
dCBTdHJpbmcmIG5hCiAgICAgCiAgICAgV2ViRnJhbWVWaWV3ICpjaGlsZFZpZXcgPSBbW1dlYkZy
YW1lVmlldyBhbGxvY10gaW5pdF07CiAgICAgCi0gICAgUmVmUHRyPEZyYW1lPiByZXN1bHQgPSBb
V2ViRnJhbWUgX2NyZWF0ZVN1YmZyYW1lV2l0aE93bmVyRWxlbWVudDpvd25lckVsZW1lbnQgZnJh
bWVOYW1lOm5hbWUgZnJhbWVWaWV3OmNoaWxkVmlld107CisgICAgUmVmUHRyPEZyYW1lPiByZXN1
bHQgPSBbV2ViRnJhbWUgX2NyZWF0ZVN1YmZyYW1lV2l0aE93bmVyRWxlbWVudDomb3duZXJFbGVt
ZW50IGZyYW1lTmFtZTpuYW1lIGZyYW1lVmlldzpjaGlsZFZpZXddOwogICAgIFtjaGlsZFZpZXcg
cmVsZWFzZV07CiAKICAgICBXZWJGcmFtZSAqbmV3RnJhbWUgPSBraXQocmVzdWx0LmdldCgpKTsK
QEAgLTE5MDksNyArMTkwNiw3IEBAIHN0YXRpYyBib29sIHNob3VsZEJsb2NrUGx1Z2luKFdlYkJh
c2VQbHVnaW5QYWNrYWdlICpwbHVnaW5QYWNrYWdlKQogI2VuZGlmCiB9CiAKLVJlZlB0cjxXaWRn
ZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYgc2l6
ZSwgSFRNTFBsdWdJbkVsZW1lbnQqIGVsZW1lbnQsIGNvbnN0IFVSTCYgdXJsLAorUmVmUHRyPFdp
ZGdldD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiBz
aXplLCBIVE1MUGx1Z0luRWxlbWVudCYgZWxlbWVudCwgY29uc3QgVVJMJiB1cmwsCiAgICAgY29u
c3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJh
bVZhbHVlcywgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgYm9vbCBsb2FkTWFudWFsbHkpCiB7CiAg
ICAgQkVHSU5fQkxPQ0tfT0JKQ19FWENFUFRJT05TOwpAQCAtMTk0OCw3ICsxOTQ1LDcgQEAgUmVm
UHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRT
aXplJiBzaXplLCBIVE1MUGx1Z0kKICAgICAgICAgICAgIGF0dHJpYnV0ZXMsIFdlYlBsdWdJbkF0
dHJpYnV0ZXNLZXksCiAgICAgICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEludDpsb2FkTWFu
dWFsbHkgPyBXZWJQbHVnSW5Nb2RlRnVsbCA6IFdlYlBsdWdJbk1vZGVFbWJlZF0sIFdlYlBsdWdJ
bk1vZGVLZXksCiAgICAgICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6IWxvYWRNYW51
YWxseV0sIFdlYlBsdWdJblNob3VsZExvYWRNYWluUmVzb3VyY2VLZXksCi0gICAgICAgICAgICBr
aXQoZWxlbWVudCksIFdlYlBsdWdJbkNvbnRhaW5pbmdFbGVtZW50S2V5LAorICAgICAgICAgICAg
a2l0KCZlbGVtZW50KSwgV2ViUGx1Z0luQ29udGFpbmluZ0VsZW1lbnRLZXksCiAgICAgICAgICAg
ICAvLyBGSVhNRTogV2Ugc2hvdWxkIGJlIHBhc3NpbmcgYmFzZSBVUkwsIHNlZSA8aHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM1MjE1Pi4KICAgICAgICAgICAgIHBsdWdp
blVSTCwgV2ViUGx1Z0luQmFzZVVSTEtleSwgLy8gcGx1Z2luVVJMIG1pZ2h0IGJlIG5pbCwgc28g
YWRkIGl0IGxhc3QKICAgICAgICAgICAgIG5pbF07CkBAIC0xOTk0LDExICsxOTkxLDExIEBAIFJl
ZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50
U2l6ZSYgc2l6ZSwgSFRNTFBsdWdJCiAgICAgaWYgKHBsdWdpblBhY2thZ2UpIHsKICAgICAgICAg
aWYgKHNob3VsZEJsb2NrUGx1Z2luKHBsdWdpblBhY2thZ2UpKSB7CiAgICAgICAgICAgICBlcnJv
ckNvZGUgPSBXZWJLaXRFcnJvckJsb2NrZWRQbHVnSW5WZXJzaW9uOwotICAgICAgICAgICAgaWYg
KGlzPFJlbmRlckVtYmVkZGVkT2JqZWN0PihlbGVtZW50LT5yZW5kZXJlcigpKSkKLSAgICAgICAg
ICAgICAgICBkb3duY2FzdDxSZW5kZXJFbWJlZGRlZE9iamVjdD4oKmVsZW1lbnQtPnJlbmRlcmVy
KCkpLnNldFBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKFJlbmRlckVtYmVkZGVkT2JqZWN0OjpJ
bnNlY3VyZVBsdWdpblZlcnNpb24pOworICAgICAgICAgICAgaWYgKGlzPFJlbmRlckVtYmVkZGVk
T2JqZWN0PihlbGVtZW50LnJlbmRlcmVyKCkpKQorICAgICAgICAgICAgICAgIGRvd25jYXN0PFJl
bmRlckVtYmVkZGVkT2JqZWN0PigqZWxlbWVudC5yZW5kZXJlcigpKS5zZXRQbHVnaW5VbmF2YWls
YWJpbGl0eVJlYXNvbihSZW5kZXJFbWJlZGRlZE9iamVjdDo6SW5zZWN1cmVQbHVnaW5WZXJzaW9u
KTsKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIGlmIChbcGx1Z2luUGFja2FnZSBpc0tp
bmRPZkNsYXNzOltXZWJQbHVnaW5QYWNrYWdlIGNsYXNzXV0pCi0gICAgICAgICAgICAgICAgdmll
dyA9IHBsdWdpblZpZXcobV93ZWJGcmFtZS5nZXQoKSwgKFdlYlBsdWdpblBhY2thZ2UgKilwbHVn
aW5QYWNrYWdlLCBhdHRyaWJ1dGVLZXlzLCBraXQocGFyYW1WYWx1ZXMpLCBiYXNlVVJMLCBraXQo
ZWxlbWVudCksIGxvYWRNYW51YWxseSk7CisgICAgICAgICAgICAgICAgdmlldyA9IHBsdWdpblZp
ZXcobV93ZWJGcmFtZS5nZXQoKSwgKFdlYlBsdWdpblBhY2thZ2UgKilwbHVnaW5QYWNrYWdlLCBh
dHRyaWJ1dGVLZXlzLCBraXQocGFyYW1WYWx1ZXMpLCBiYXNlVVJMLCBraXQoJmVsZW1lbnQpLCBs
b2FkTWFudWFsbHkpOwogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgICAgICAg
ICAgZWxzZSBpZiAoW3BsdWdpblBhY2thZ2UgaXNLaW5kT2ZDbGFzczpbV2ViTmV0c2NhcGVQbHVn
aW5QYWNrYWdlIGNsYXNzXV0pIHsKICAgICAgICAgICAgICAgICBXZWJCYXNlTmV0c2NhcGVQbHVn
aW5WaWV3ICpwbHVnaW5WaWV3ID0gW1tbTkVUU0NBUEVfUExVR0lOX1ZJRVcgYWxsb2NdCkBAIC0y
MDEwLDcgKzIwMDcsNyBAQCBSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3Jl
YXRlUGx1Z2luKGNvbnN0IEludFNpemUmIHNpemUsIEhUTUxQbHVnSQogICAgICAgICAgICAgICAg
ICAgICBhdHRyaWJ1dGVLZXlzOmF0dHJpYnV0ZUtleXMKICAgICAgICAgICAgICAgICAgICAgYXR0
cmlidXRlVmFsdWVzOmtpdChwYXJhbVZhbHVlcykKICAgICAgICAgICAgICAgICAgICAgbG9hZE1h
bnVhbGx5OmxvYWRNYW51YWxseQotICAgICAgICAgICAgICAgICAgICBlbGVtZW50OmVsZW1lbnRd
IGF1dG9yZWxlYXNlXTsKKyAgICAgICAgICAgICAgICAgICAgZWxlbWVudDomZWxlbWVudF0gYXV0
b3JlbGVhc2VdOwogCiAgICAgICAgICAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBOZXRzY2Fw
ZVBsdWdpbldpZGdldChwbHVnaW5WaWV3KSk7CiAgICAgICAgICAgICB9CkBAIC0yMDgxLDcgKzIw
NzgsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpyZWRpcmVjdERhdGFUb1BsdWdpbihX
aWRnZXQqIHBsdWdpbldpZGdldCkKICAgICBFTkRfQkxPQ0tfT0JKQ19FWENFUFRJT05TOwogfQog
ICAgIAotUGFzc1JlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZh
QXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmIHNpemUsIEhUTUxBcHBsZXRFbGVtZW50KiBlbGVt
ZW50LCBjb25zdCBVUkwmIGJhc2VVUkwsIAorUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYgc2l6ZSwgSFRNTEFw
cGxldEVsZW1lbnQmIGVsZW1lbnQsIGNvbnN0IFVSTCYgYmFzZVVSTCwKICAgICBjb25zdCBWZWN0
b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVz
KQogewogICAgIEJFR0lOX0JMT0NLX09CSkNfRVhDRVBUSU9OUzsKQEAgLTIwOTksOCArMjA5Niw4
IEBAIFBhc3NSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlSmF2YUFw
cGxldFdpZGdldChjb25zdCBJbnRTaXplJiBzCiAgICAgaWYgKHBsdWdpblBhY2thZ2UpIHsKICAg
ICAgICAgaWYgKHNob3VsZEJsb2NrUGx1Z2luKHBsdWdpblBhY2thZ2UpKSB7CiAgICAgICAgICAg
ICBlcnJvckNvZGUgPSBXZWJLaXRFcnJvckJsb2NrZWRQbHVnSW5WZXJzaW9uOwotICAgICAgICAg
ICAgaWYgKGlzPFJlbmRlckVtYmVkZGVkT2JqZWN0PihlbGVtZW50LT5yZW5kZXJlcigpKSkKLSAg
ICAgICAgICAgICAgICBkb3duY2FzdDxSZW5kZXJFbWJlZGRlZE9iamVjdD4oKmVsZW1lbnQtPnJl
bmRlcmVyKCkpLnNldFBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKFJlbmRlckVtYmVkZGVkT2Jq
ZWN0OjpJbnNlY3VyZVBsdWdpblZlcnNpb24pOworICAgICAgICAgICAgaWYgKGlzPFJlbmRlckVt
YmVkZGVkT2JqZWN0PihlbGVtZW50LnJlbmRlcmVyKCkpKQorICAgICAgICAgICAgICAgIGRvd25j
YXN0PFJlbmRlckVtYmVkZGVkT2JqZWN0PigqZWxlbWVudC5yZW5kZXJlcigpKS5zZXRQbHVnaW5V
bmF2YWlsYWJpbGl0eVJlYXNvbihSZW5kZXJFbWJlZGRlZE9iamVjdDo6SW5zZWN1cmVQbHVnaW5W
ZXJzaW9uKTsKICAgICAgICAgfSBlbHNlIHsKICNpZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQ
SSkKICAgICAgICAgICAgIGlmIChbcGx1Z2luUGFja2FnZSBpc0tpbmRPZkNsYXNzOltXZWJOZXRz
Y2FwZVBsdWdpblBhY2thZ2UgY2xhc3NdXSkgewpAQCAtMjExMiw3ICsyMTA5LDcgQEAgUGFzc1Jl
ZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0
KGNvbnN0IEludFNpemUmIHMKICAgICAgICAgICAgICAgICAgICAgYXR0cmlidXRlS2V5czpraXQo
cGFyYW1OYW1lcykKICAgICAgICAgICAgICAgICAgICAgYXR0cmlidXRlVmFsdWVzOmtpdChwYXJh
bVZhbHVlcykKICAgICAgICAgICAgICAgICAgICAgbG9hZE1hbnVhbGx5Ok5PCi0gICAgICAgICAg
ICAgICAgICAgIGVsZW1lbnQ6ZWxlbWVudF0gYXV0b3JlbGVhc2VdOworICAgICAgICAgICAgICAg
ICAgICBlbGVtZW50OiZlbGVtZW50XSBhdXRvcmVsZWFzZV07CiAgICAgICAgICAgICAgICAgaWYg
KHZpZXcpCiAgICAgICAgICAgICAgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgTmV0c2NhcGVQ
bHVnaW5XaWRnZXQoc3RhdGljX2Nhc3Q8V2ViQmFzZU5ldHNjYXBlUGx1Z2luVmlldyAqPih2aWV3
KSkpOwogICAgICAgICAgICAgfQpAQCAtMjIwOSw3ICsyMjA2LDcgQEAgdm9pZCBXZWJGcmFtZUxv
YWRlckNsaWVudDo6cmVnaXN0ZXJGb3JJY29uTm90aWZpY2F0aW9uKGJvb2wgbGlzdGVuKQogI2Vu
ZGlmCiB9CiAKLVBhc3NSZWZQdHI8RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gV2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkKK1JlZjxGcmFtZU5ldHdvcmtpbmdD
b250ZXh0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKQog
ewogICAgIHJldHVybiBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0OjpjcmVhdGUoY29yZShtX3dl
YkZyYW1lLmdldCgpKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3Jl
U3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0LmggYi9Tb3VyY2UvV2ViS2l0L21hYy9X
ZWJDb3JlU3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0LmgKaW5kZXggYjA4ZDU2ZTE4
YzljOGVlNjQxODBhMjE0ZjVmYmIwZWRlMDRmNWE0ZC4uOTdlMGVhZDlmMDhiN2YzNjEyNzhhM2Q3
NTZkNjI4YTVmYWVhYTkxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1
cHBvcnQvV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFj
L1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQuaApAQCAtMjMsMTYgKzIz
LDE1IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRl
ZiBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0X2gKLSNkZWZpbmUgV2ViRnJhbWVOZXR3b3JraW5n
Q29udGV4dF9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPFdlYkNvcmUvRnJhbWVOZXR3b3Jr
aW5nQ29udGV4dC5oPgogCiBjbGFzcyBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0IDogcHVibGlj
IFdlYkNvcmU6OkZyYW1lTmV0d29ya2luZ0NvbnRleHQgewogcHVibGljOgotICAgIHN0YXRpYyBQ
YXNzUmVmUHRyPFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZShXZWJDb3JlOjpGcmFt
ZSogZnJhbWUpCisgICAgc3RhdGljIFJlZjxXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBjcmVh
dGUoV2ViQ29yZTo6RnJhbWUqIGZyYW1lKQogICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVm
KG5ldyBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0KGZyYW1lKSk7CisgICAgICAgIHJldHVybiBh
ZG9wdFJlZigqbmV3IFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQoZnJhbWUpKTsKICAgICB9CiAK
ICAgICBzdGF0aWMgV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uJiBlbnN1cmVQcml2YXRl
QnJvd3NpbmdTZXNzaW9uKCk7CkBAIC01MSw3ICs1MCw0IEBAIHByaXZhdGU6CiAgICAgU3RyaW5n
IHNvdXJjZUFwcGxpY2F0aW9uSWRlbnRpZmllcigpIGNvbnN0IG92ZXJyaWRlOwogICAgIFdlYkNv
cmU6OlJlc291cmNlRXJyb3IgYmxvY2tlZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVx
dWVzdCYpIGNvbnN0IG92ZXJyaWRlOwogICAgIFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lv
biYgc3RvcmFnZVNlc3Npb24oKSBjb25zdCBvdmVycmlkZTsKLQogfTsKLQotI2VuZGlmCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtp
bmdDb250ZXh0Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVO
ZXR3b3JraW5nQ29udGV4dC5tbQppbmRleCA5M2U3NGJiZTYyODRiNjNjMjMyMTI5ZDE3NDhlMGQ5
MTYyZDFhMTljLi5lZWY3MDJjNTZmZDBlZDY3ZDM3MGYzNGE2Njk5ZTI1MzY3MmQ4MDRhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtp
bmdDb250ZXh0Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZy
YW1lTmV0d29ya2luZ0NvbnRleHQubW0KQEAgLTQ3LDE2ICs0NywxMyBAQCB1c2luZyBuYW1lc3Bh
Y2UgV2ViQ29yZTsKIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgV2ViRnJhbWVOZXR3b3JraW5nQ29u
dGV4dDo6ZW5zdXJlUHJpdmF0ZUJyb3dzaW5nU2Vzc2lvbigpCiB7CiAgICAgQVNTRVJUKGlzTWFp
blRocmVhZCgpKTsKLQogICAgIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6ZW5zdXJlUHJpdmF0ZUJy
b3dzaW5nU2Vzc2lvbihTZXNzaW9uSUQ6OmxlZ2FjeVByaXZhdGVTZXNzaW9uSUQoKSwgW1tOU0J1
bmRsZSBtYWluQnVuZGxlXSBidW5kbGVJZGVudGlmaWVyXSk7Ci0KICAgICByZXR1cm4gKk5ldHdv
cmtTdG9yYWdlU2Vzc2lvbjo6c3RvcmFnZVNlc3Npb24oU2Vzc2lvbklEOjpsZWdhY3lQcml2YXRl
U2Vzc2lvbklEKCkpOwogfQogCiB2b2lkIFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQ6OmRlc3Ry
b3lQcml2YXRlQnJvd3NpbmdTZXNzaW9uKCkKIHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkp
OwotCiAgICAgTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpkZXN0cm95U2Vzc2lvbihTZXNzaW9uSUQ6
OmxlZ2FjeVByaXZhdGVTZXNzaW9uSUQoKSk7CiB9CiAKQEAgLTY4LDE5ICs2NSwxOSBAQCBib29s
IFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQ6OmxvY2FsRmlsZUNvbnRlbnRTbmlmZmluZ0VuYWJs
ZWQoKSBjb25zdAogU2NoZWR1bGVQYWlySGFzaFNldCogV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4
dDo6c2NoZWR1bGVkUnVuTG9vcFBhaXJzKCkgY29uc3QKIHsKICAgICBpZiAoIWZyYW1lKCkgfHwg
IWZyYW1lKCktPnBhZ2UoKSkKLSAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIHJldHVybiBudWxs
cHRyOwogICAgIHJldHVybiBmcmFtZSgpLT5wYWdlKCktPnNjaGVkdWxlZFJ1bkxvb3BQYWlycygp
OwogfQogCiBSZXRhaW5QdHI8Q0ZEYXRhUmVmPiBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0Ojpz
b3VyY2VBcHBsaWNhdGlvbkF1ZGl0RGF0YSgpIGNvbnN0CiB7CiAgICAgaWYgKCFmcmFtZSgpIHx8
ICFmcmFtZSgpLT5wYWdlKCkpCi0gICAgICAgIHJldHVybiAwOworICAgICAgICByZXR1cm4gbnVs
bHB0cjsKICAgICAKICAgICBXZWJWaWV3ICp3ZWJ2aWV3ID0ga2l0KGZyYW1lKCktPnBhZ2UoKSk7
Ci0gICAgCiAgICAgaWYgKCF3ZWJ2aWV3KQotICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgcmV0
dXJuIG51bGxwdHI7CisKICAgICByZXR1cm4gcmVpbnRlcnByZXRfY2FzdDxDRkRhdGFSZWY+KHdl
YnZpZXcuX3NvdXJjZUFwcGxpY2F0aW9uQXVkaXREYXRhKTsKIH0KIApAQCAtOTgsNyArOTUsNyBA
QCBOZXR3b3JrU3RvcmFnZVNlc3Npb24mIFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQ6OnN0b3Jh
Z2VTZXNzaW9uKCkgY29uc3QKIHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwogICAgIGlm
IChmcmFtZSgpICYmIGZyYW1lKCktPnBhZ2UoKS0+c2Vzc2lvbklEKCkuaXNFcGhlbWVyYWwoKSkg
ewotICAgICAgICBpZiAoTmV0d29ya1N0b3JhZ2VTZXNzaW9uKiBzZXNzaW9uID0gTmV0d29ya1N0
b3JhZ2VTZXNzaW9uOjpzdG9yYWdlU2Vzc2lvbihTZXNzaW9uSUQ6OmxlZ2FjeVByaXZhdGVTZXNz
aW9uSUQoKSkpCisgICAgICAgIGlmIChhdXRvKiBzZXNzaW9uID0gTmV0d29ya1N0b3JhZ2VTZXNz
aW9uOjpzdG9yYWdlU2Vzc2lvbihTZXNzaW9uSUQ6OmxlZ2FjeVByaXZhdGVTZXNzaW9uSUQoKSkp
CiAgICAgICAgICAgICByZXR1cm4gKnNlc3Npb247CiAgICAgICAgIC8vIFNvbWUgcmVxdWVzdHMg
bWF5IHN0aWxsIGJlIGNvbWluZyBzaG9ydGx5IGJlZm9yZSBXZWJDb3JlIHVwZGF0ZXMgdGhlIHNl
c3Npb24gSUQgYW5kIGFmdGVyIFdlYktpdCBkZXN0cm95cyB0aGUgcHJpdmF0ZSBicm93c2luZyBz
ZXNzaW9uLgogICAgICAgICBMT0dfRVJST1IoIkludmFsaWQgc2Vzc2lvbiBJRC4gUGxlYXNlIGZp
bGUgYSBidWcgdW5sZXNzIHlvdSBqdXN0IGRpc2FibGVkIHByaXZhdGUgYnJvd3NpbmcsIGluIHdo
aWNoIGNhc2UgaXQncyBhbiBleHBlY3RlZCByYWNlLiIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIuaCBiL1Nv
dXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVy
LmgKaW5kZXggYWNjNjJjYWQ3NDAxYzU1ZGZjNzgwODdhZWM5ZmJiYjRiYWNjMjk1Mi4uMGU0MGFh
MmVkMjU5M2QxNzVjNTBkOGQwN2EyN2FiMDZkZTFkMWU1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJPcGVuUGFuZWxSZXN1bHRMaXN0
ZW5lci5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCBBcHBsZSBJ
bmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2ltcG9ydCAiV2ViVUlEZWxlZ2F0ZS5oIgot
I2ltcG9ydCA8d3RmL0ZvcndhcmQuaD4KKyNpbXBvcnQgPHd0Zi9SZWZQdHIuaD4KIAogbmFtZXNw
YWNlIFdlYkNvcmUgewogY2xhc3MgRmlsZUNob29zZXI7CkBAIC0zMiw5ICszMiw5IEBAIGNsYXNz
IEZpbGVDaG9vc2VyOwogCiBAaW50ZXJmYWNlIFdlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyIDog
TlNPYmplY3QgPFdlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyPgogewotICAgIFdlYkNvcmU6OkZp
bGVDaG9vc2VyKiBfY2hvb3NlcjsKKyAgICBSZWZQdHI8V2ViQ29yZTo6RmlsZUNob29zZXI+IF9j
aG9vc2VyOwogfQogCi0tIChpZClpbml0V2l0aENob29zZXI6KFBhc3NSZWZQdHI8V2ViQ29yZTo6
RmlsZUNob29zZXI+KWNob29zZXI7CistIChpZClpbml0V2l0aENob29zZXI6KFdlYkNvcmU6OkZp
bGVDaG9vc2VyJiljaG9vc2VyOwogCiBAZW5kCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21h
Yy9XZWJDb3JlU3VwcG9ydC9XZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lci5tbSBiL1NvdXJjZS9X
ZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLm1tCmlu
ZGV4IGI2YmQyNjdiZGVkODFhN2I0Zjg3ZmQ4Y2YzY2RkMDBhYzQxMmE4ZWEuLjhiMjUyMDkwNzAz
YWU0N2Q3YmJhZmFhNjViMzI2ZmVlZmNjMzA0N2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
bWFjL1dlYkNvcmVTdXBwb3J0L1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLm1tCisrKyBiL1Nv
dXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVy
Lm1tCkBAIC0zNiwzMCArMzYsMTggQEAgdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKIEBpbXBs
ZW1lbnRhdGlvbiBXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcgogCi0tIChpZClpbml0V2l0aENo
b29zZXI6KFBhc3NSZWZQdHI8RmlsZUNob29zZXI+KWNob29zZXIKKy0gKGlkKWluaXRXaXRoQ2hv
b3NlcjooRmlsZUNob29zZXImKWNob29zZXIKIHsKICAgICBzZWxmID0gW3N1cGVyIGluaXRdOwog
ICAgIGlmICghc2VsZikKICAgICAgICAgcmV0dXJuIG5pbDsKLSAgICBfY2hvb3NlciA9IGNob29z
ZXIubGVha1JlZigpOworICAgIF9jaG9vc2VyID0gJmNob29zZXI7CiAgICAgcmV0dXJuIHNlbGY7
CiB9CiAKLSNpZm5kZWYgTkRFQlVHCi0tICh2b2lkKWRlYWxsb2MKLXsKLSAgICBBU1NFUlQoIV9j
aG9vc2VyKTsKLSAgICBbc3VwZXIgZGVhbGxvY107Ci19Ci0jZW5kaWYKLQogLSAodm9pZCljYW5j
ZWwKIHsKLSAgICBBU1NFUlQoX2Nob29zZXIpOwotICAgIGlmICghX2Nob29zZXIpCi0gICAgICAg
IHJldHVybjsKLSAgICBfY2hvb3Nlci0+ZGVyZWYoKTsKLSAgICBfY2hvb3NlciA9IDA7CisgICAg
X2Nob29zZXIgPSBudWxscHRyOwogfQogCiAtICh2b2lkKWNob29zZUZpbGVuYW1lOihOU1N0cmlu
ZyAqKWZpbGVuYW1lCkBAIC02OCw4ICs1Niw3IEBAIC0gKHZvaWQpY2hvb3NlRmlsZW5hbWU6KE5T
U3RyaW5nICopZmlsZW5hbWUKICAgICBpZiAoIV9jaG9vc2VyKQogICAgICAgICByZXR1cm47CiAg
ICAgX2Nob29zZXItPmNob29zZUZpbGUoZmlsZW5hbWUpOwotICAgIF9jaG9vc2VyLT5kZXJlZigp
OwotICAgIF9jaG9vc2VyID0gMDsKKyAgICBfY2hvb3NlciA9IG51bGxwdHI7CiB9CiAKIC0gKHZv
aWQpY2hvb3NlRmlsZW5hbWVzOihOU0FycmF5ICopZmlsZW5hbWVzCkBAIC04MiwxMSArNjksMTEg
QEAgLSAodm9pZCljaG9vc2VGaWxlbmFtZXM6KE5TQXJyYXkgKilmaWxlbmFtZXMKICAgICBmb3Ig
KE5TVUludGVnZXIgaSA9IDA7IGkgPCBjb3VudDsgaSsrKQogICAgICAgICBuYW1lc1tpXSA9IFtm
aWxlbmFtZXMgb2JqZWN0QXRJbmRleDppXTsKICAgICBfY2hvb3Nlci0+Y2hvb3NlRmlsZXMobmFt
ZXMpOwotICAgIF9jaG9vc2VyLT5kZXJlZigpOwotICAgIF9jaG9vc2VyID0gMDsKKyAgICBfY2hv
b3NlciA9IG51bGxwdHI7CiB9CiAKICNpZiBQTEFURk9STShJT1MpCisKIC0gKHZvaWQpY2hvb3Nl
RmlsZW5hbWU6KE5TU3RyaW5nICopZmlsZW5hbWUgZGlzcGxheVN0cmluZzooTlNTdHJpbmcgKilk
aXNwbGF5U3RyaW5nIGljb25JbWFnZTooQ0dJbWFnZVJlZilpbWFnZVJlZgogewogICAgIFtzZWxm
IGNob29zZUZpbGVuYW1lczpbTlNBcnJheSBhcnJheVdpdGhPYmplY3Q6ZmlsZW5hbWVdIGRpc3Bs
YXlTdHJpbmc6ZGlzcGxheVN0cmluZyBpY29uSW1hZ2U6aW1hZ2VSZWZdOwpAQCAtOTgsMTggKzg1
LDE0IEBAIC0gKHZvaWQpY2hvb3NlRmlsZW5hbWVzOihOU0FycmF5ICopZmlsZW5hbWVzIGRpc3Bs
YXlTdHJpbmc6KE5TU3RyaW5nICopZGlzcGxheVN0CiAgICAgaWYgKCFfY2hvb3NlcikKICAgICAg
ICAgcmV0dXJuOwogCi0gICAgUmVmUHRyPEljb24+IGljb24gPSBJY29uOjpjcmVhdGVJY29uRm9y
SW1hZ2UoaW1hZ2VSZWYpOwotCi0gICAgTlNVSW50ZWdlciBjb3VudCA9IFtmaWxlbmFtZXMgY291
bnRdOwotICAgIFZlY3RvcjxTdHJpbmc+IG5hbWVzKGNvdW50KTsKLSAgICBmb3IgKE5TVUludGVn
ZXIgaSA9IDA7IGkgPCBjb3VudDsgKytpKQotICAgICAgICBuYW1lc1tpXSA9IFtmaWxlbmFtZXMg
b2JqZWN0QXRJbmRleDppXTsKLSAgICBfY2hvb3Nlci0+Y2hvb3NlTWVkaWFGaWxlcyhuYW1lcywg
ZGlzcGxheVN0cmluZywgaWNvbi5nZXQoKSk7Ci0gICAgCi0gICAgLy8gRklYTUU6IHdlIHNob3Vs
ZG4ndCBiZSBtYW51YWxseSBkZXJlZigpJ2luZyBoZXJlLgotICAgIF9jaG9vc2VyLT5kZXJlZigp
OworICAgIFZlY3RvcjxTdHJpbmc+IG5hbWVzOworICAgIG5hbWVzLnJlc2VydmVJbml0aWFsQ2Fw
YWNpdHkoW2ZpbGVuYW1lcyBjb3VudF0pOworICAgIGZvciAoTlNTdHJpbmcgKmZpbGVuYW1lIGlu
IGZpbGVuYW1lcykKKyAgICAgICAgbmFtZXMudW5jaGVja2VkQXBwZW5kKGZpbGVuYW1lKTsKKyAg
ICBfY2hvb3Nlci0+Y2hvb3NlTWVkaWFGaWxlcyhuYW1lcywgZGlzcGxheVN0cmluZywgSWNvbjo6
Y3JlYXRlSWNvbkZvckltYWdlKGltYWdlUmVmKS5nZXQoKSk7CiAgICAgX2Nob29zZXIgPSBudWxs
cHRyOwogfQorCiAjZW5kaWYKIAogQGVuZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMv
V2ViVmlldy9XZWJBcmNoaXZlLm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJBcmNo
aXZlLm1tCmluZGV4IGU5NmM2MDdjZmI4NGM4NWExZWJmYWFiZGMzMWNlYmEwNGVhNWMzZTguLmZm
NzU0NmQ4NWY4YTU1YTU5YjgwYWFmMTdiNTRlNzJlYTYxZjk2NzggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViQXJjaGl2ZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21h
Yy9XZWJWaWV3L1dlYkFyY2hpdmUubW0KQEAgLTE3NCwyNSArMTc0LDE2IEBAIC0gKGluc3RhbmNl
dHlwZSlpbml0V2l0aE1haW5SZXNvdXJjZTooV2ViUmVzb3VyY2UgKiltYWluUmVzb3VyY2Ugc3Vi
cmVzb3VyY2VzOihOCiAgICAgICAgIFtzZWxmIHJlbGVhc2VdOwogICAgICAgICByZXR1cm4gbmls
OwogICAgIH0KLSAgICAKLSAgICBSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBjb3JlTWFpblJlc291
cmNlID0gbWFpblJlc291cmNlID8gW21haW5SZXNvdXJjZSBfY29yZVJlc291cmNlXSA6IG51bGxw
dHI7CiAKLSAgICBWZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+IGNvcmVSZXNvdXJjZXM7
CisgICAgVmVjdG9yPFJlZjxBcmNoaXZlUmVzb3VyY2U+PiBjb3JlUmVzb3VyY2VzOwogICAgIGZv
ciAoV2ViUmVzb3VyY2UgKnN1YnJlc291cmNlIGluIHN1YnJlc291cmNlcykKICAgICAgICAgY29y
ZVJlc291cmNlcy5hcHBlbmQoW3N1YnJlc291cmNlIF9jb3JlUmVzb3VyY2VdKTsKIAotICAgIFZl
Y3RvcjxSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4+IGNvcmVBcmNoaXZlczsKKyAgICBWZWN0b3I8
UmVmPExlZ2FjeVdlYkFyY2hpdmU+PiBjb3JlQXJjaGl2ZXM7CiAgICAgZm9yIChXZWJBcmNoaXZl
ICpzdWJmcmFtZUFyY2hpdmUgaW4gc3ViZnJhbWVBcmNoaXZlcykKLSAgICAgICAgY29yZUFyY2hp
dmVzLmFwcGVuZChbc3ViZnJhbWVBcmNoaXZlLT5fcHJpdmF0ZSBjb3JlQXJjaGl2ZV0pOwotCi0g
ICAgYXV0byBjb3JlQXJjaGl2ZSA9IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShXVEZNb3ZlKGNv
cmVNYWluUmVzb3VyY2UpLCBXVEZNb3ZlKGNvcmVSZXNvdXJjZXMpLCBXVEZNb3ZlKGNvcmVBcmNo
aXZlcykpOwotICAgIGlmICghY29yZUFyY2hpdmUpIHsKLSAgICAgICAgW3NlbGYgcmVsZWFzZV07
Ci0gICAgICAgIHJldHVybiBuaWw7Ci0gICAgfQotCi0gICAgW19wcml2YXRlIHNldENvcmVBcmNo
aXZlOldURk1vdmUoY29yZUFyY2hpdmUpXTsKKyAgICAgICAgY29yZUFyY2hpdmVzLmFwcGVuZCgq
W3N1YmZyYW1lQXJjaGl2ZS0+X3ByaXZhdGUgY29yZUFyY2hpdmVdKTsKIAorICAgIFtfcHJpdmF0
ZSBzZXRDb3JlQXJjaGl2ZTpMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoW21haW5SZXNvdXJjZSBf
Y29yZVJlc291cmNlXSwgV1RGTW92ZShjb3JlUmVzb3VyY2VzKSwgV1RGTW92ZShjb3JlQXJjaGl2
ZXMpKV07CiAgICAgcmV0dXJuIHNlbGY7CiB9CiAKQEAgLTI3NSw5ICsyNjYsMTAgQEAgLSAoV2Vi
UmVzb3VyY2UgKiltYWluUmVzb3VyY2UKICAgICAvLyBDdXJyZW50bHkgZnJvbSBXZWJLaXQgQVBJ
IHBlcnNwZWN0aXZlLCBXZWJBcmNoaXZlcyBhcmUgZW50aXJlbHkgaW1tdXRhYmxlIG9uY2UgY3Jl
YXRlZAogICAgIC8vIElmIHRoZXkgZXZlciBiZWNvbWUgbXV0YWJsZSwgd2UnbGwgbmVlZCB0byBy
ZXRoaW5rIHRoaXMuIAogICAgIGlmICghX3ByaXZhdGUtPmNhY2hlZE1haW5SZXNvdXJjZSkgewot
ICAgICAgICBMZWdhY3lXZWJBcmNoaXZlKiBjb3JlQXJjaGl2ZSA9IFtfcHJpdmF0ZSBjb3JlQXJj
aGl2ZV07Ci0gICAgICAgIGlmIChjb3JlQXJjaGl2ZSkKLSAgICAgICAgICAgIF9wcml2YXRlLT5j
YWNoZWRNYWluUmVzb3VyY2UgPSBbW1dlYlJlc291cmNlIGFsbG9jXSBfaW5pdFdpdGhDb3JlUmVz
b3VyY2U6Y29yZUFyY2hpdmUtPm1haW5SZXNvdXJjZSgpXTsKKyAgICAgICAgaWYgKGF1dG8qIGNv
cmVBcmNoaXZlID0gW19wcml2YXRlIGNvcmVBcmNoaXZlXSkgeworICAgICAgICAgICAgaWYgKGF1
dG8qIG1haW5SZXNvdXJjZSA9IGNvcmVBcmNoaXZlLT5tYWluUmVzb3VyY2UoKSkKKyAgICAgICAg
ICAgICAgICBfcHJpdmF0ZS0+Y2FjaGVkTWFpblJlc291cmNlID0gW1tXZWJSZXNvdXJjZSBhbGxv
Y10gX2luaXRXaXRoQ29yZVJlc291cmNlOiptYWluUmVzb3VyY2VdOworICAgICAgICB9CiAgICAg
fQogICAgIAogICAgIHJldHVybiBbW19wcml2YXRlLT5jYWNoZWRNYWluUmVzb3VyY2UgcmV0YWlu
XSBhdXRvcmVsZWFzZV07CkBAIC0yOTQsMTIgKzI4NiwxMSBAQCAtIChOU0FycmF5ICopc3VicmVz
b3VyY2VzCiAgICAgICAgIGlmICghY29yZUFyY2hpdmUpCiAgICAgICAgICAgICBfcHJpdmF0ZS0+
Y2FjaGVkU3VicmVzb3VyY2VzID0gW1tOU0FycmF5IGFsbG9jXSBpbml0XTsKICAgICAgICAgZWxz
ZSB7Ci0gICAgICAgICAgICBjb25zdCBWZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+JiBz
dWJyZXNvdXJjZXMoY29yZUFyY2hpdmUtPnN1YnJlc291cmNlcygpKTsKKyAgICAgICAgICAgIGF1
dG8mIHN1YnJlc291cmNlcyA9IGNvcmVBcmNoaXZlLT5zdWJyZXNvdXJjZXMoKTsKICAgICAgICAg
ICAgIE5TTXV0YWJsZUFycmF5ICptdXRhYmxlQXJyYXkgPSBbW05TTXV0YWJsZUFycmF5IGFsbG9j
XSBpbml0V2l0aENhcGFjaXR5OnN1YnJlc291cmNlcy5zaXplKCldOwogICAgICAgICAgICAgX3By
aXZhdGUtPmNhY2hlZFN1YnJlc291cmNlcyA9IG11dGFibGVBcnJheTsKLSAgICAgICAgICAgIGZv
ciAodW5zaWduZWQgaSA9IDA7IGkgPCBzdWJyZXNvdXJjZXMuc2l6ZSgpOyArK2kpIHsKLSAgICAg
ICAgICAgICAgICBXZWJSZXNvdXJjZSAqcmVzb3VyY2UgPSBbW1dlYlJlc291cmNlIGFsbG9jXSBf
aW5pdFdpdGhDb3JlUmVzb3VyY2U6c3VicmVzb3VyY2VzW2ldLmdldCgpXTsKLSAgICAgICAgICAg
ICAgICBpZiAocmVzb3VyY2UpIHsKKyAgICAgICAgICAgIGZvciAoYXV0byYgc3VicmVzb3VyY2Ug
OiBzdWJyZXNvdXJjZXMpIHsKKyAgICAgICAgICAgICAgICBpZiAoV2ViUmVzb3VyY2UgKnJlc291
cmNlID0gW1tXZWJSZXNvdXJjZSBhbGxvY10gX2luaXRXaXRoQ29yZVJlc291cmNlOnN1YnJlc291
cmNlLmdldCgpXSkgewogICAgICAgICAgICAgICAgICAgICBbbXV0YWJsZUFycmF5IGFkZE9iamVj
dDpyZXNvdXJjZV07CiAgICAgICAgICAgICAgICAgICAgIFtyZXNvdXJjZSByZWxlYXNlXTsKICAg
ICAgICAgICAgICAgICB9CkBAIC0zMTgsMTUgKzMwOSwxNSBAQCAtIChOU0FycmF5ICopc3ViZnJh
bWVBcmNoaXZlcwogICAgIC8vIEN1cnJlbnRseSBmcm9tIFdlYktpdCBBUEkgcGVyc3BlY3RpdmUs
IFdlYkFyY2hpdmVzIGFyZSBlbnRpcmVseSBpbW11dGFibGUgb25jZSBjcmVhdGVkCiAgICAgLy8g
SWYgdGhleSBldmVyIGJlY29tZSBtdXRhYmxlLCB3ZSdsbCBuZWVkIHRvIHJldGhpbmsgdGhpcy4g
IAogICAgIGlmICghX3ByaXZhdGUtPmNhY2hlZFN1YmZyYW1lQXJjaGl2ZXMpIHsKLSAgICAgICAg
TGVnYWN5V2ViQXJjaGl2ZSogY29yZUFyY2hpdmUgPSBbX3ByaXZhdGUgY29yZUFyY2hpdmVdOwor
ICAgICAgICBhdXRvKiBjb3JlQXJjaGl2ZSA9IFtfcHJpdmF0ZSBjb3JlQXJjaGl2ZV07CiAgICAg
ICAgIGlmICghY29yZUFyY2hpdmUpCiAgICAgICAgICAgICBfcHJpdmF0ZS0+Y2FjaGVkU3ViZnJh
bWVBcmNoaXZlcyA9IFtbTlNBcnJheSBhbGxvY10gaW5pdF07CiAgICAgICAgIGVsc2UgewotICAg
ICAgICAgICAgY29uc3QgVmVjdG9yPFJlZlB0cjxBcmNoaXZlPj4mIHN1YmZyYW1lQXJjaGl2ZXMo
Y29yZUFyY2hpdmUtPnN1YmZyYW1lQXJjaGl2ZXMoKSk7Ci0gICAgICAgICAgICBOU011dGFibGVB
cnJheSAqbXV0YWJsZUFycmF5ID0gW1tOU011dGFibGVBcnJheSBhbGxvY10gaW5pdFdpdGhDYXBh
Y2l0eTpzdWJmcmFtZUFyY2hpdmVzLnNpemUoKV07CisgICAgICAgICAgICBhdXRvJiBzdWJmcmFt
ZUFyY2hpdmVzID0gY29yZUFyY2hpdmUtPnN1YmZyYW1lQXJjaGl2ZXMoKTsKKyAgICAgICAgICAg
IGF1dG8gbXV0YWJsZUFycmF5ID0gW1tOU011dGFibGVBcnJheSBhbGxvY10gaW5pdFdpdGhDYXBh
Y2l0eTpzdWJmcmFtZUFyY2hpdmVzLnNpemUoKV07CiAgICAgICAgICAgICBfcHJpdmF0ZS0+Y2Fj
aGVkU3ViZnJhbWVBcmNoaXZlcyA9IG11dGFibGVBcnJheTsKICAgICAgICAgICAgIGZvciAodW5z
aWduZWQgaSA9IDA7IGkgPCBzdWJmcmFtZUFyY2hpdmVzLnNpemUoKTsgKytpKSB7Ci0gICAgICAg
ICAgICAgICAgV2ViQXJjaGl2ZSAqYXJjaGl2ZSA9IFtbV2ViQXJjaGl2ZSBhbGxvY10gX2luaXRX
aXRoQ29yZUxlZ2FjeVdlYkFyY2hpdmU6KExlZ2FjeVdlYkFyY2hpdmUgKilzdWJmcmFtZUFyY2hp
dmVzW2ldLmdldCgpXTsKKyAgICAgICAgICAgICAgICBXZWJBcmNoaXZlICphcmNoaXZlID0gW1tX
ZWJBcmNoaXZlIGFsbG9jXSBfaW5pdFdpdGhDb3JlTGVnYWN5V2ViQXJjaGl2ZTooTGVnYWN5V2Vi
QXJjaGl2ZSAqKXN1YmZyYW1lQXJjaGl2ZXNbaV0ucHRyKCldOwogICAgICAgICAgICAgICAgIFtt
dXRhYmxlQXJyYXkgYWRkT2JqZWN0OmFyY2hpdmVdOwogICAgICAgICAgICAgICAgIFthcmNoaXZl
IHJlbGVhc2VdOwogICAgICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMv
V2ViVmlldy9XZWJEYXRhU291cmNlLm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJE
YXRhU291cmNlLm1tCmluZGV4IDYwNjQ3MjJhNTYzNjE0ODU4NDJjZjU3ZmQ5MzBmNzU1ODhkNmU4
ZjYuLjE4Y2Y5ZjdkYjRjNjM4Nzg0NzE3MDg5MjhiYWI4OTU4YTQ3OTI3MDEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViRGF0YVNvdXJjZS5tbQorKysgYi9Tb3VyY2Uv
V2ViS2l0L21hYy9XZWJWaWV3L1dlYkRhdGFTb3VyY2UubW0KQEAgLTE2NiwyNSArMTY2LDIyIEBA
IC0gKE5TRXJyb3IgKilfbWFpbkRvY3VtZW50RXJyb3IKIAogLSAodm9pZClfYWRkU3ViZnJhbWVB
cmNoaXZlczooTlNBcnJheSAqKXN1YmZyYW1lQXJjaGl2ZXMKIHsKLSAgICAvLyBGSVhNRTogVGhp
cyBTUEkgaXMgcG9vciwgcG9vciBkZXNpZ24uICBDYW4gd2UgY29tZSB1cCB3aXRoIGFub3RoZXIg
c29sdXRpb24gZm9yIHRob3NlIHdobyBuZWVkIGl0PwotICAgIE5TRW51bWVyYXRvciAqZW51bWVy
YXRvciA9IFtzdWJmcmFtZUFyY2hpdmVzIG9iamVjdEVudW1lcmF0b3JdOwotICAgIFdlYkFyY2hp
dmUgKmFyY2hpdmU7Ci0gICAgd2hpbGUgKChhcmNoaXZlID0gW2VudW1lcmF0b3IgbmV4dE9iamVj
dF0pICE9IG5pbCkKLSAgICAgICAgdG9Qcml2YXRlKF9wcml2YXRlKS0+bG9hZGVyLT5hZGRBbGxB
cmNoaXZlUmVzb3VyY2VzKFthcmNoaXZlIF9jb3JlTGVnYWN5V2ViQXJjaGl2ZV0pOworICAgIC8v
IEZJWE1FOiBUaGlzIFNQSSBpcyBwb29yLCBwb29yIGRlc2lnbi4gQ2FuIHdlIGNvbWUgdXAgd2l0
aCBhbm90aGVyIHNvbHV0aW9uIGZvciB0aG9zZSB3aG8gbmVlZCBpdD8KKyAgICBmb3IgKFdlYkFy
Y2hpdmUgKmFyY2hpdmUgaW4gc3ViZnJhbWVBcmNoaXZlcykKKyAgICAgICAgdG9Qcml2YXRlKF9w
cml2YXRlKS0+bG9hZGVyLT5hZGRBbGxBcmNoaXZlUmVzb3VyY2VzKCpbYXJjaGl2ZSBfY29yZUxl
Z2FjeVdlYkFyY2hpdmVdKTsKIH0KIAogI2lmICFQTEFURk9STShJT1MpCisKIC0gKE5TRmlsZVdy
YXBwZXIgKilfZmlsZVdyYXBwZXJGb3JVUkw6KE5TVVJMICopVVJMCiB7CiAgICAgaWYgKFtVUkwg
aXNGaWxlVVJMXSkKICAgICAgICAgcmV0dXJuIFtbW05TRmlsZVdyYXBwZXIgYWxsb2NdIGluaXRX
aXRoVVJMOltVUkwgVVJMQnlSZXNvbHZpbmdTeW1saW5rc0luUGF0aF0gb3B0aW9uczowIGVycm9y
Om51bGxwdHJdIGF1dG9yZWxlYXNlXTsKIAotICAgIFdlYlJlc291cmNlICpyZXNvdXJjZSA9IFtz
ZWxmIHN1YnJlc291cmNlRm9yVVJMOlVSTF07Ci0gICAgaWYgKHJlc291cmNlKQorICAgIGlmIChh
dXRvIHJlc291cmNlID0gW3NlbGYgc3VicmVzb3VyY2VGb3JVUkw6VVJMXSkKICAgICAgICAgcmV0
dXJuIFtyZXNvdXJjZSBfZmlsZVdyYXBwZXJSZXByZXNlbnRhdGlvbl07Ci0gICAgCi0gICAgTlND
YWNoZWRVUkxSZXNwb25zZSAqY2FjaGVkUmVzcG9uc2UgPSBbW3NlbGYgX3dlYlZpZXddIF9jYWNo
ZWRSZXNwb25zZUZvclVSTDpVUkxdOwotICAgIGlmIChjYWNoZWRSZXNwb25zZSkgeworCisgICAg
aWYgKGF1dG8gY2FjaGVkUmVzcG9uc2UgPSBbW3NlbGYgX3dlYlZpZXddIF9jYWNoZWRSZXNwb25z
ZUZvclVSTDpVUkxdKSB7CiAgICAgICAgIE5TRmlsZVdyYXBwZXIgKndyYXBwZXIgPSBbW1tOU0Zp
bGVXcmFwcGVyIGFsbG9jXSBpbml0UmVndWxhckZpbGVXaXRoQ29udGVudHM6W2NhY2hlZFJlc3Bv
bnNlIGRhdGFdXSBhdXRvcmVsZWFzZV07CiAgICAgICAgIFt3cmFwcGVyIHNldFByZWZlcnJlZEZp
bGVuYW1lOltbY2FjaGVkUmVzcG9uc2UgcmVzcG9uc2VdIHN1Z2dlc3RlZEZpbGVuYW1lXV07CiAg
ICAgICAgIHJldHVybiB3cmFwcGVyOwpAQCAtMTkyLDYgKzE4OSw3IEBAIC0gKE5TRmlsZVdyYXBw
ZXIgKilfZmlsZVdyYXBwZXJGb3JVUkw6KE5TVVJMICopVVJMCiAgICAgCiAgICAgcmV0dXJuIG5p
bDsKIH0KKwogI2VuZGlmCiAKIC0gKE5TU3RyaW5nICopX3Jlc3BvbnNlTUlNRVR5cGUKQEAgLTMw
NSw5ICszMDMsMTAgQEAgLSAoRE9NRG9jdW1lbnRGcmFnbWVudCAqKV9kb2N1bWVudEZyYWdtZW50
V2l0aEFyY2hpdmU6KFdlYkFyY2hpdmUgKilhcmNoaXZlCiAgICAgICAgIE5TU3RyaW5nICpNSU1F
VHlwZSA9IFttYWluUmVzb3VyY2UgTUlNRVR5cGVdOwogICAgICAgICBpZiAoW1dlYlZpZXcgY2Fu
U2hvd01JTUVUeXBlQXNIVE1MOk1JTUVUeXBlXSkgewogICAgICAgICAgICAgTlNTdHJpbmcgKm1h
cmt1cFN0cmluZyA9IFtbTlNTdHJpbmcgYWxsb2NdIGluaXRXaXRoRGF0YTpbbWFpblJlc291cmNl
IGRhdGFdIGVuY29kaW5nOk5TVVRGOFN0cmluZ0VuY29kaW5nXTsKKwogICAgICAgICAgICAgLy8g
RklYTUU6IHNlZW1zIHBvb3IgZm9ybSB0byBkbyB0aGlzIGFzIGEgc2lkZSBlZmZlY3Qgb2YgZ2V0
dGluZyBhIGRvY3VtZW50IGZyYWdtZW50CiAgICAgICAgICAgICBpZiAodG9Qcml2YXRlKF9wcml2
YXRlKS0+bG9hZGVyKQotICAgICAgICAgICAgICAgIHRvUHJpdmF0ZShfcHJpdmF0ZSktPmxvYWRl
ci0+YWRkQWxsQXJjaGl2ZVJlc291cmNlcyhbYXJjaGl2ZSBfY29yZUxlZ2FjeVdlYkFyY2hpdmVd
KTsKKyAgICAgICAgICAgICAgICB0b1ByaXZhdGUoX3ByaXZhdGUpLT5sb2FkZXItPmFkZEFsbEFy
Y2hpdmVSZXNvdXJjZXMoKlthcmNoaXZlIF9jb3JlTGVnYWN5V2ViQXJjaGl2ZV0pOwogCiAgICAg
ICAgICAgICBET01Eb2N1bWVudEZyYWdtZW50ICpmcmFnbWVudCA9IFtbc2VsZiB3ZWJGcmFtZV0g
X2RvY3VtZW50RnJhZ21lbnRXaXRoTWFya3VwU3RyaW5nOm1hcmt1cFN0cmluZyBiYXNlVVJMU3Ry
aW5nOltbbWFpblJlc291cmNlIFVSTF0gX3dlYl9vcmlnaW5hbERhdGFBc1N0cmluZ11dOwogICAg
ICAgICAgICAgW21hcmt1cFN0cmluZyByZWxlYXNlXTsKQEAgLTMyNCw3ICszMjMsNyBAQCAtIChE
T01Eb2N1bWVudEZyYWdtZW50ICopX2RvY3VtZW50RnJhZ21lbnRXaXRoSW1hZ2VSZXNvdXJjZToo
V2ViUmVzb3VyY2UgKilyZXNvdQogewogICAgIERPTUVsZW1lbnQgKmltYWdlRWxlbWVudCA9IFtz
ZWxmIF9pbWFnZUVsZW1lbnRXaXRoSW1hZ2VSZXNvdXJjZTpyZXNvdXJjZV07CiAgICAgaWYgKCFp
bWFnZUVsZW1lbnQpCi0gICAgICAgIHJldHVybiAwOworICAgICAgICByZXR1cm4gbmlsOwogICAg
IERPTURvY3VtZW50RnJhZ21lbnQgKmZyYWdtZW50ID0gW1tbc2VsZiB3ZWJGcmFtZV0gRE9NRG9j
dW1lbnRdIGNyZWF0ZURvY3VtZW50RnJhZ21lbnRdOwogICAgIFtmcmFnbWVudCBhcHBlbmRDaGls
ZDppbWFnZUVsZW1lbnRdOwogICAgIHJldHVybiBmcmFnbWVudDsKQEAgLTUxOSwzMiArNTE4LDMx
IEBAIC0gKFdlYkFyY2hpdmUgKil3ZWJBcmNoaXZlCiAtIChXZWJSZXNvdXJjZSAqKW1haW5SZXNv
dXJjZQogewogICAgIGF1dG8gY29yZVJlc291cmNlID0gdG9Qcml2YXRlKF9wcml2YXRlKS0+bG9h
ZGVyLT5tYWluUmVzb3VyY2UoKTsKLSAgICByZXR1cm4gW1tbV2ViUmVzb3VyY2UgYWxsb2NdIF9p
bml0V2l0aENvcmVSZXNvdXJjZTpXVEZNb3ZlKGNvcmVSZXNvdXJjZSldIGF1dG9yZWxlYXNlXTsK
KyAgICBpZiAoIWNvcmVSZXNvdXJjZSkKKyAgICAgICAgcmV0dXJuIG5pbDsKKyAgICByZXR1cm4g
W1tbV2ViUmVzb3VyY2UgYWxsb2NdIF9pbml0V2l0aENvcmVSZXNvdXJjZTpjb3JlUmVzb3VyY2Uu
cmVsZWFzZU5vbk51bGwoKV0gYXV0b3JlbGVhc2VdOwogfQogCiAtIChOU0FycmF5ICopc3VicmVz
b3VyY2VzCiB7CiAgICAgYXV0byBjb3JlU3VicmVzb3VyY2VzID0gdG9Qcml2YXRlKF9wcml2YXRl
KS0+bG9hZGVyLT5zdWJyZXNvdXJjZXMoKTsKLQogICAgIGF1dG8gc3VicmVzb3VyY2VzID0gYWRv
cHROUyhbW05TTXV0YWJsZUFycmF5IGFsbG9jXSBpbml0V2l0aENhcGFjaXR5OmNvcmVTdWJyZXNv
dXJjZXMuc2l6ZSgpXSk7Ci0gICAgZm9yIChjb25zdCBhdXRvJiBjb3JlU3VicmVzb3VyY2UgOiBj
b3JlU3VicmVzb3VyY2VzKSB7Ci0gICAgICAgIGlmIChhdXRvIHJlc291cmNlID0gYWRvcHROUyhb
W1dlYlJlc291cmNlIGFsbG9jXSBfaW5pdFdpdGhDb3JlUmVzb3VyY2U6Y29yZVN1YnJlc291cmNl
XSkpCisgICAgZm9yIChhdXRvJiBjb3JlU3VicmVzb3VyY2UgOiBjb3JlU3VicmVzb3VyY2VzKSB7
CisgICAgICAgIGlmIChhdXRvIHJlc291cmNlID0gYWRvcHROUyhbW1dlYlJlc291cmNlIGFsbG9j
XSBfaW5pdFdpdGhDb3JlUmVzb3VyY2U6Y29yZVN1YnJlc291cmNlLmNvcHlSZWYoKV0pKQogICAg
ICAgICAgICAgW3N1YnJlc291cmNlcyBhZGRPYmplY3Q6cmVzb3VyY2UuZ2V0KCldOwogICAgIH0K
LQogICAgIHJldHVybiBzdWJyZXNvdXJjZXMuYXV0b3JlbGVhc2UoKTsKIH0KIAogLSAoV2ViUmVz
b3VyY2UgKilzdWJyZXNvdXJjZUZvclVSTDooTlNVUkwgKilVUkwKIHsKLSAgICBSZWZQdHI8QXJj
aGl2ZVJlc291cmNlPiBzdWJyZXNvdXJjZSA9IHRvUHJpdmF0ZShfcHJpdmF0ZSktPmxvYWRlci0+
c3VicmVzb3VyY2UoVVJMKTsKLSAgICAKLSAgICByZXR1cm4gc3VicmVzb3VyY2UgPyBbW1tXZWJS
ZXNvdXJjZSBhbGxvY10gX2luaXRXaXRoQ29yZVJlc291cmNlOnN1YnJlc291cmNlLmdldCgpXSBh
dXRvcmVsZWFzZV0gOiBuaWw7CisgICAgYXV0byBzdWJyZXNvdXJjZSA9IHRvUHJpdmF0ZShfcHJp
dmF0ZSktPmxvYWRlci0+c3VicmVzb3VyY2UoVVJMKTsKKyAgICByZXR1cm4gc3VicmVzb3VyY2Ug
PyBbW1tXZWJSZXNvdXJjZSBhbGxvY10gX2luaXRXaXRoQ29yZVJlc291cmNlOnN1YnJlc291cmNl
LnJlbGVhc2VOb25OdWxsKCldIGF1dG9yZWxlYXNlXSA6IG5pbDsKIH0KIAogLSAodm9pZClhZGRT
dWJyZXNvdXJjZTooV2ViUmVzb3VyY2UgKilzdWJyZXNvdXJjZQogeyAgICAKLSAgICB0b1ByaXZh
dGUoX3ByaXZhdGUpLT5sb2FkZXItPmFkZEFyY2hpdmVSZXNvdXJjZSgqW3N1YnJlc291cmNlIF9j
b3JlUmVzb3VyY2VdKTsKKyAgICB0b1ByaXZhdGUoX3ByaXZhdGUpLT5sb2FkZXItPmFkZEFyY2hp
dmVSZXNvdXJjZShbc3VicmVzb3VyY2UgX2NvcmVSZXNvdXJjZV0pOwogfQogCiBAZW5kCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlJlc291cmNlLm1tIGIvU291cmNl
L1dlYktpdC9tYWMvV2ViVmlldy9XZWJSZXNvdXJjZS5tbQppbmRleCBlNWQ4ZmQ0YWZiZDRkMmZh
YzljZDM5MjE5MTZhNDliOGYxNzM1ZWY2Li5iM2JiNzViYTlkMThkYzY5MDhhYmVlOWMyZGNiMDY2
NWIxMTRhZmIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlJlc291
cmNlLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUmVzb3VyY2UubW0KQEAg
LTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA1LCAyMDA2LCAyMDA3LCAyMDA4
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNS0y
MDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwpAQCAtNTcsOSArNTcsOSBAQCBzdGF0aWMgTlNTdHJpbmcgKiBjb25zdCBXZWJS
ZXNvdXJjZVJlc3BvbnNlS2V5ID0gICAgICAgICAgQCJXZWJSZXNvdXJjZVJlc3BvbnNlIgogCiBA
aW50ZXJmYWNlIFdlYlJlc291cmNlUHJpdmF0ZSA6IE5TT2JqZWN0IHsKIEBwdWJsaWMKLSAgICBB
cmNoaXZlUmVzb3VyY2UqIGNvcmVSZXNvdXJjZTsKKyAgICBSZWZQdHI8QXJjaGl2ZVJlc291cmNl
PiBjb3JlUmVzb3VyY2U7CiB9Ci0tIChpbnN0YW5jZXR5cGUpaW5pdFdpdGhDb3JlUmVzb3VyY2U6
KFBhc3NSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiljb3JlUmVzb3VyY2U7CistIChpbnN0YW5jZXR5
cGUpaW5pdFdpdGhDb3JlUmVzb3VyY2U6KFJlZjxBcmNoaXZlUmVzb3VyY2U+JiYpY29yZVJlc291
cmNlOwogQGVuZAogCiBAaW1wbGVtZW50YXRpb24gV2ViUmVzb3VyY2VQcml2YXRlCkBAIC03OCwx
MyArNzgsMTIgQEAgLSAoaW5zdGFuY2V0eXBlKWluaXQKICAgICByZXR1cm4gW3N1cGVyIGluaXRd
OwogfQogCi0tIChpbnN0YW5jZXR5cGUpaW5pdFdpdGhDb3JlUmVzb3VyY2U6KFBhc3NSZWZQdHI8
QXJjaGl2ZVJlc291cmNlPilwYXNzZWRSZXNvdXJjZQorLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRo
Q29yZVJlc291cmNlOihSZWY8QXJjaGl2ZVJlc291cmNlPiYmKXBhc3NlZFJlc291cmNlCiB7CiAg
ICAgc2VsZiA9IFtzdXBlciBpbml0XTsKICAgICBpZiAoIXNlbGYpCiAgICAgICAgIHJldHVybiBu
aWw7Ci0gICAgLy8gQWNxdWlyZSB0aGUgUGFzc1JlZlB0cjw+J3MgcmVmIGFzIG91ciBvd24gbWFu
dWFsIHJlZgotICAgIGNvcmVSZXNvdXJjZSA9IHBhc3NlZFJlc291cmNlLmxlYWtSZWYoKTsKKyAg
ICBjb3JlUmVzb3VyY2UgPSBXVEZNb3ZlKHBhc3NlZFJlc291cmNlKTsKICAgICByZXR1cm4gc2Vs
ZjsKIH0KIApAQCAtOTIsOSArOTEsNiBAQCAtICh2b2lkKWRlYWxsb2MKIHsKICAgICBpZiAoV2Vi
Q29yZU9iakNTY2hlZHVsZURlYWxsb2NhdGVPbk1haW5UaHJlYWQoW1dlYlJlc291cmNlUHJpdmF0
ZSBjbGFzc10sIHNlbGYpKQogICAgICAgICByZXR1cm47Ci0KLSAgICBpZiAoY29yZVJlc291cmNl
KQotICAgICAgICBjb3JlUmVzb3VyY2UtPmRlcmVmKCk7CiAgICAgW3N1cGVyIGRlYWxsb2NdOwog
fQogCkBAIC0xNTMsMTQgKzE0OSwxOSBAQCAtIChpbnN0YW5jZXR5cGUpaW5pdFdpdGhDb2Rlcjoo
TlNDb2RlciAqKWRlY29kZXIKICAgICAgICAgcmV0dXJuIG5pbDsKICAgICB9CiAKLSAgICBfcHJp
dmF0ZSA9IFtbV2ViUmVzb3VyY2VQcml2YXRlIGFsbG9jXSBpbml0V2l0aENvcmVSZXNvdXJjZTpB
cmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShTaGFyZWRCdWZmZXI6OndyYXBOU0RhdGEoZGF0YSksIHVy
bCwgbWltZVR5cGUsIHRleHRFbmNvZGluZywgZnJhbWVOYW1lLCByZXNwb25zZSldOworICAgIGF1
dG8gY29yZVJlc291cmNlID0gQXJjaGl2ZVJlc291cmNlOjpjcmVhdGUoU2hhcmVkQnVmZmVyOjp3
cmFwTlNEYXRhKGRhdGEpLCB1cmwsIG1pbWVUeXBlLCB0ZXh0RW5jb2RpbmcsIGZyYW1lTmFtZSwg
cmVzcG9uc2UpOworICAgIGlmICghY29yZVJlc291cmNlKSB7CisgICAgICAgIFtzZWxmIHJlbGVh
c2VdOworICAgICAgICByZXR1cm4gbmlsOworICAgIH0KIAorICAgIF9wcml2YXRlID0gW1tXZWJS
ZXNvdXJjZVByaXZhdGUgYWxsb2NdIGluaXRXaXRoQ29yZVJlc291cmNlOmNvcmVSZXNvdXJjZS5y
ZWxlYXNlTm9uTnVsbCgpXTsKICAgICByZXR1cm4gc2VsZjsKIH0KIAogLSAodm9pZCllbmNvZGVX
aXRoQ29kZXI6KE5TQ29kZXIgKillbmNvZGVyCiB7Ci0gICAgQXJjaGl2ZVJlc291cmNlICpyZXNv
dXJjZSA9IF9wcml2YXRlLT5jb3JlUmVzb3VyY2U7CisgICAgYXV0byogcmVzb3VyY2UgPSBfcHJp
dmF0ZS0+Y29yZVJlc291cmNlLmdldCgpOwogICAgIAogICAgIE5TRGF0YSAqZGF0YSA9IG5pbDsK
ICAgICBOU1VSTCAqdXJsID0gbmlsOwpAQCAtMjA5LDggKzIxMCw3IEBAIC0gKE5TVVJMICopVVJM
CiAKICAgICBpZiAoIV9wcml2YXRlLT5jb3JlUmVzb3VyY2UpCiAgICAgICAgIHJldHVybiBuaWw7
Ci0gICAgTlNVUkwgKnVybCA9IF9wcml2YXRlLT5jb3JlUmVzb3VyY2UtPnVybCgpOwotICAgIHJl
dHVybiB1cmw7CisgICAgcmV0dXJuIF9wcml2YXRlLT5jb3JlUmVzb3VyY2UtPnVybCgpOwogfQog
CiAtIChOU1N0cmluZyAqKU1JTUVUeXBlCkBAIC0yNTIsMjIgKzI1MiwxOSBAQCBAZW5kCiAKIEBp
bXBsZW1lbnRhdGlvbiBXZWJSZXNvdXJjZSAoV2ViUmVzb3VyY2VJbnRlcm5hbCkKIAotLSAoaWQp
X2luaXRXaXRoQ29yZVJlc291cmNlOihQYXNzUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4pY29yZVJl
c291cmNlCistIChpZClfaW5pdFdpdGhDb3JlUmVzb3VyY2U6KFJlZjxBcmNoaXZlUmVzb3VyY2U+
JiYpY29yZVJlc291cmNlCiB7CiAgICAgc2VsZiA9IFtzdXBlciBpbml0XTsKICAgICBpZiAoIXNl
bGYpCiAgICAgICAgIHJldHVybiBuaWw7Ci0gICAgICAgICAgICAKLSAgICBBU1NFUlQoY29yZVJl
c291cmNlKTsKLSAgICAKLSAgICBfcHJpdmF0ZSA9IFtbV2ViUmVzb3VyY2VQcml2YXRlIGFsbG9j
XSBpbml0V2l0aENvcmVSZXNvdXJjZTpjb3JlUmVzb3VyY2VdOwotICAgICAgICAgICAgCisKKyAg
ICBfcHJpdmF0ZSA9IFtbV2ViUmVzb3VyY2VQcml2YXRlIGFsbG9jXSBpbml0V2l0aENvcmVSZXNv
dXJjZTpXVEZNb3ZlKGNvcmVSZXNvdXJjZSldOwogICAgIHJldHVybiBzZWxmOwogfQogCi0tIChX
ZWJDb3JlOjpBcmNoaXZlUmVzb3VyY2UgKilfY29yZVJlc291cmNlCistIChXZWJDb3JlOjpBcmNo
aXZlUmVzb3VyY2UmKV9jb3JlUmVzb3VyY2UKIHsKLSAgICByZXR1cm4gX3ByaXZhdGUtPmNvcmVS
ZXNvdXJjZTsKKyAgICByZXR1cm4gKl9wcml2YXRlLT5jb3JlUmVzb3VyY2U7CiB9CiAKIEBlbmQK
QEAgLTMwNCw4ICszMDEsMTMgQEAgLSAoaWQpX2luaXRXaXRoRGF0YTooTlNEYXRhICopZGF0YQog
ICAgICAgICByZXR1cm4gbmlsOwogICAgIH0KIAotICAgIF9wcml2YXRlID0gW1tXZWJSZXNvdXJj
ZVByaXZhdGUgYWxsb2NdIGluaXRXaXRoQ29yZVJlc291cmNlOkFyY2hpdmVSZXNvdXJjZTo6Y3Jl
YXRlKFNoYXJlZEJ1ZmZlcjo6d3JhcE5TRGF0YShjb3B5RGF0YSA/IFtbZGF0YSBjb3B5XSBhdXRv
cmVsZWFzZV0gOiBkYXRhKSwgVVJMLCBNSU1FVHlwZSwgdGV4dEVuY29kaW5nTmFtZSwgZnJhbWVO
YW1lLCByZXNwb25zZSldOworICAgIGF1dG8gY29yZVJlc291cmNlID0gQXJjaGl2ZVJlc291cmNl
OjpjcmVhdGUoU2hhcmVkQnVmZmVyOjp3cmFwTlNEYXRhKGNvcHlEYXRhID8gW1tkYXRhIGNvcHld
IGF1dG9yZWxlYXNlXSA6IGRhdGEpLCBVUkwsIE1JTUVUeXBlLCB0ZXh0RW5jb2RpbmdOYW1lLCBm
cmFtZU5hbWUsIHJlc3BvbnNlKTsKKyAgICBpZiAoIWNvcmVSZXNvdXJjZSkgeworICAgICAgICBb
c2VsZiByZWxlYXNlXTsKKyAgICAgICAgcmV0dXJuIG5pbDsKKyAgICB9CiAKKyAgICBfcHJpdmF0
ZSA9IFtbV2ViUmVzb3VyY2VQcml2YXRlIGFsbG9jXSBpbml0V2l0aENvcmVSZXNvdXJjZTpjb3Jl
UmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKV07CiAgICAgcmV0dXJuIHNlbGY7CiB9CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUmVzb3VyY2VJbnRlcm5hbC5oIGIv
U291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJSZXNvdXJjZUludGVybmFsLmgKaW5kZXggMmY0
NjkxMmU4YmU4ZDNiMzkyY2Y1NzM5MmYwNzlkYWI5ZDgwOWUyNS4uODBjOTc2ZWI2YjM2NTRmYzFj
Njg4YzJhOTZiODNiZGI3YWY3NzI1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2Vi
Vmlldy9XZWJSZXNvdXJjZUludGVybmFsLmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmll
dy9XZWJSZXNvdXJjZUludGVybmFsLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0
IChDKSAyMDA4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAo
QykgMjAwOC0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMjcsMTMgKzI3LDEzIEBACiAgKi8KIAogI2ltcG9ydCAi
V2ViUmVzb3VyY2VQcml2YXRlLmgiCi0jaW1wb3J0IDx3dGYvUGFzc1JlZlB0ci5oPgorI2ltcG9y
dCA8d3RmL1JlZi5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgY2xhc3MgQXJjaGl2ZVJl
c291cmNlOwogfQogCiBAaW50ZXJmYWNlIFdlYlJlc291cmNlIChXZWJSZXNvdXJjZUludGVybmFs
KQotLSAoaWQpX2luaXRXaXRoQ29yZVJlc291cmNlOihQYXNzUmVmUHRyPFdlYkNvcmU6OkFyY2hp
dmVSZXNvdXJjZT4pY29yZVJlc291cmNlOwotLSAoV2ViQ29yZTo6QXJjaGl2ZVJlc291cmNlKilf
Y29yZVJlc291cmNlOworLSAoaWQpX2luaXRXaXRoQ29yZVJlc291cmNlOihSZWY8V2ViQ29yZTo6
QXJjaGl2ZVJlc291cmNlPiYmKWNvcmVSZXNvdXJjZTsKKy0gKFdlYkNvcmU6OkFyY2hpdmVSZXNv
dXJjZSYpX2NvcmVSZXNvdXJjZTsKIEBlbmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1No
YXJlZC9BUElXZWJBcmNoaXZlLmggYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJV2ViQXJjaGl2
ZS5oCmluZGV4IGQ5NmI1OTZkYWJmYmU5MDY4YWM1MzQxMDY4N2JmYTJkMTg2MThiMjMuLjgzNzU3
NzdkYjgwZmUwN2VhYzgzNDkzMDMzYmQxODY0YWJhYzdhNzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL1NoYXJlZC9BUElXZWJBcmNoaXZlLmgKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVk
L0FQSVdlYkFyY2hpdmUuaApAQCAtMjksNyArMjksNiBAQAogI2lmIFBMQVRGT1JNKENPQ09BKQog
CiAjaW5jbHVkZSAiQVBJT2JqZWN0LmgiCi0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KICNp
bmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAKIG5hbWVzcGFjZSBBUEkgewpAQCAtNTAsOSArNDksOSBA
QCBjbGFzcyBXZWJBcmNoaXZlIDogcHVibGljIEFQSTo6T2JqZWN0SW1wbDxBUEk6Ok9iamVjdDo6
VHlwZTo6V2ViQXJjaGl2ZT4gewogcHVibGljOgogICAgIHZpcnR1YWwgfldlYkFyY2hpdmUoKTsK
IAotICAgIHN0YXRpYyBSZWY8V2ViQXJjaGl2ZT4gY3JlYXRlKFdlYkFyY2hpdmVSZXNvdXJjZSog
bWFpblJlc291cmNlLCBQYXNzUmVmUHRyPEFQSTo6QXJyYXk+IHN1YnJlc291cmNlcywgUGFzc1Jl
ZlB0cjxBUEk6OkFycmF5PiBzdWJmcmFtZUFyY2hpdmVzKTsKKyAgICBzdGF0aWMgUmVmPFdlYkFy
Y2hpdmU+IGNyZWF0ZShXZWJBcmNoaXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSwgUmVmUHRyPEFQ
STo6QXJyYXk+JiYgc3VicmVzb3VyY2VzLCBSZWZQdHI8QVBJOjpBcnJheT4mJiBzdWJmcmFtZUFy
Y2hpdmVzKTsKICAgICBzdGF0aWMgUmVmPFdlYkFyY2hpdmU+IGNyZWF0ZShBUEk6OkRhdGEqKTsK
LSAgICBzdGF0aWMgUmVmPFdlYkFyY2hpdmU+IGNyZWF0ZShQYXNzUmVmUHRyPFdlYkNvcmU6Okxl
Z2FjeVdlYkFyY2hpdmU+KTsKKyAgICBzdGF0aWMgUmVmPFdlYkFyY2hpdmU+IGNyZWF0ZShSZWZQ
dHI8V2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZT4mJik7CiAgICAgc3RhdGljIFJlZjxXZWJBcmNo
aXZlPiBjcmVhdGUoV2ViQ29yZTo6UmFuZ2UqKTsKIAogICAgIFdlYkFyY2hpdmVSZXNvdXJjZSog
bWFpblJlc291cmNlKCk7CkBAIC02NCw5ICs2Myw5IEBAIHB1YmxpYzoKICAgICBXZWJDb3JlOjpM
ZWdhY3lXZWJBcmNoaXZlKiBjb3JlTGVnYWN5V2ViQXJjaGl2ZSgpOwogCiBwcml2YXRlOgotICAg
IFdlYkFyY2hpdmUoV2ViQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3VyY2UsIFBhc3NSZWZQdHI8
QVBJOjpBcnJheT4gc3VicmVzb3VyY2VzLCBQYXNzUmVmUHRyPEFQSTo6QXJyYXk+IHN1YmZyYW1l
QXJjaGl2ZXMpOworICAgIFdlYkFyY2hpdmUoV2ViQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3Vy
Y2UsIFJlZlB0cjxBUEk6OkFycmF5PiYmIHN1YnJlc291cmNlcywgUmVmUHRyPEFQSTo6QXJyYXk+
JiYgc3ViZnJhbWVBcmNoaXZlcyk7CiAgICAgV2ViQXJjaGl2ZShBUEk6OkRhdGEqKTsKLSAgICBX
ZWJBcmNoaXZlKFBhc3NSZWZQdHI8V2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZT4pOworICAgIFdl
YkFyY2hpdmUoUmVmUHRyPFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hpdmU+JiYpOwogCiAgICAgUmVm
UHRyPFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hpdmU+IG1fbGVnYWN5V2ViQXJjaGl2ZTsKICAgICBS
ZWZQdHI8V2ViQXJjaGl2ZVJlc291cmNlPiBtX2NhY2hlZE1haW5SZXNvdXJjZTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUElXZWJBcmNoaXZlLm1tIGIvU291cmNlL1dlYktp
dDIvU2hhcmVkL0FQSVdlYkFyY2hpdmUubW0KaW5kZXggOTI5MDNiMzQ3YTQ5ZmNlY2ZhNmMzNWM1
OWUyZjZkNjkxNmQ5ODJlOS4uZjJmMGZlMDE3MWY5ZTMzMzE0NDdkMzZkMGE0N2M2ZGJlMDFhMjMy
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSVdlYkFyY2hpdmUubW0KKysr
IGIvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSVdlYkFyY2hpdmUubW0KQEAgLTM4LDkgKzM4LDkg
QEAgdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKIG5hbWVzcGFjZSBBUEkgewogCi1SZWY8V2Vi
QXJjaGl2ZT4gV2ViQXJjaGl2ZTo6Y3JlYXRlKFdlYkFyY2hpdmVSZXNvdXJjZSogbWFpblJlc291
cmNlLCBQYXNzUmVmUHRyPEFQSTo6QXJyYXk+IHN1YnJlc291cmNlcywgUGFzc1JlZlB0cjxBUEk6
OkFycmF5PiBzdWJmcmFtZUFyY2hpdmVzKQorUmVmPFdlYkFyY2hpdmU+IFdlYkFyY2hpdmU6OmNy
ZWF0ZShXZWJBcmNoaXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSwgUmVmUHRyPEFQSTo6QXJyYXk+
JiYgc3VicmVzb3VyY2VzLCBSZWZQdHI8QVBJOjpBcnJheT4mJiBzdWJmcmFtZUFyY2hpdmVzKQog
ewotICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYkFyY2hpdmUobWFpblJlc291cmNlLCBzdWJy
ZXNvdXJjZXMsIHN1YmZyYW1lQXJjaGl2ZXMpKTsKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBX
ZWJBcmNoaXZlKG1haW5SZXNvdXJjZSwgV1RGTW92ZShzdWJyZXNvdXJjZXMpLCBXVEZNb3ZlKHN1
YmZyYW1lQXJjaGl2ZXMpKSk7CiB9CiAKIFJlZjxXZWJBcmNoaXZlPiBXZWJBcmNoaXZlOjpjcmVh
dGUoQVBJOjpEYXRhKiBkYXRhKQpAQCAtNDgsOSArNDgsOSBAQCBSZWY8V2ViQXJjaGl2ZT4gV2Vi
QXJjaGl2ZTo6Y3JlYXRlKEFQSTo6RGF0YSogZGF0YSkKICAgICByZXR1cm4gYWRvcHRSZWYoKm5l
dyBXZWJBcmNoaXZlKGRhdGEpKTsKIH0KIAotUmVmPFdlYkFyY2hpdmU+IFdlYkFyY2hpdmU6OmNy
ZWF0ZShQYXNzUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IGxlZ2FjeVdlYkFyY2hpdmUpCitSZWY8
V2ViQXJjaGl2ZT4gV2ViQXJjaGl2ZTo6Y3JlYXRlKFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiYm
IGxlZ2FjeVdlYkFyY2hpdmUpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgV2ViQXJjaGl2
ZShsZWdhY3lXZWJBcmNoaXZlKSk7CisgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgV2ViQXJjaGl2
ZShsZWdhY3lXZWJBcmNoaXZlLnJlbGVhc2VOb25OdWxsKCkpKTsKIH0KIAogUmVmPFdlYkFyY2hp
dmU+IFdlYkFyY2hpdmU6OmNyZWF0ZShSYW5nZSogcmFuZ2UpCkBAIC01OCwzMSArNTgsMzIgQEAg
UmVmPFdlYkFyY2hpdmU+IFdlYkFyY2hpdmU6OmNyZWF0ZShSYW5nZSogcmFuZ2UpCiAgICAgcmV0
dXJuIGFkb3B0UmVmKCpuZXcgV2ViQXJjaGl2ZShMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUocmFu
Z2UpKSk7CiB9CiAKLVdlYkFyY2hpdmU6OldlYkFyY2hpdmUoV2ViQXJjaGl2ZVJlc291cmNlKiBt
YWluUmVzb3VyY2UsIFBhc3NSZWZQdHI8QVBJOjpBcnJheT4gc3VicmVzb3VyY2VzLCBQYXNzUmVm
UHRyPEFQSTo6QXJyYXk+IHN1YmZyYW1lQXJjaGl2ZXMpCitXZWJBcmNoaXZlOjpXZWJBcmNoaXZl
KFdlYkFyY2hpdmVSZXNvdXJjZSogbWFpblJlc291cmNlLCBSZWZQdHI8QVBJOjpBcnJheT4mJiBz
dWJyZXNvdXJjZXMsIFJlZlB0cjxBUEk6OkFycmF5PiYmIHN1YmZyYW1lQXJjaGl2ZXMpCiAgICAg
OiBtX2NhY2hlZE1haW5SZXNvdXJjZShtYWluUmVzb3VyY2UpCiAgICAgLCBtX2NhY2hlZFN1YnJl
c291cmNlcyhzdWJyZXNvdXJjZXMpCiAgICAgLCBtX2NhY2hlZFN1YmZyYW1lQXJjaGl2ZXMoc3Vi
ZnJhbWVBcmNoaXZlcykKIHsKLSAgICBSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBjb3JlTWFpblJl
c291cmNlID0gbV9jYWNoZWRNYWluUmVzb3VyY2UtPmNvcmVBcmNoaXZlUmVzb3VyY2UoKTsKKyAg
ICBhdXRvIGNvcmVNYWluUmVzb3VyY2UgPSBtX2NhY2hlZE1haW5SZXNvdXJjZS0+Y29yZUFyY2hp
dmVSZXNvdXJjZSgpOwogCi0gICAgVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+PiBjb3Jl
QXJjaGl2ZVJlc291cmNlczsKKyAgICBWZWN0b3I8UmVmPEFyY2hpdmVSZXNvdXJjZT4+IGNvcmVB
cmNoaXZlUmVzb3VyY2VzOwogICAgIGNvcmVBcmNoaXZlUmVzb3VyY2VzLnJlc2VydmVJbml0aWFs
Q2FwYWNpdHkobV9jYWNoZWRTdWJyZXNvdXJjZXMtPnNpemUoKSk7CiAgICAgZm9yIChzaXplX3Qg
aSA9IDA7IGkgPCBtX2NhY2hlZFN1YnJlc291cmNlcy0+c2l6ZSgpOyArK2kpIHsKLSAgICAgICAg
UmVmUHRyPFdlYkFyY2hpdmVSZXNvdXJjZT4gcmVzb3VyY2UgPSBtX2NhY2hlZFN1YnJlc291cmNl
cy0+YXQ8V2ViQXJjaGl2ZVJlc291cmNlPihpKTsKKyAgICAgICAgYXV0byByZXNvdXJjZSA9IG1f
Y2FjaGVkU3VicmVzb3VyY2VzLT5hdDxXZWJBcmNoaXZlUmVzb3VyY2U+KGkpOwogICAgICAgICBB
U1NFUlQocmVzb3VyY2UpOwotICAgICAgICBjb3JlQXJjaGl2ZVJlc291cmNlcy51bmNoZWNrZWRB
cHBlbmQocmVzb3VyY2UtPmNvcmVBcmNoaXZlUmVzb3VyY2UoKSk7CisgICAgICAgIEFTU0VSVChy
ZXNvdXJjZS0+Y29yZUFyY2hpdmVSZXNvdXJjZSgpKTsKKyAgICAgICAgY29yZUFyY2hpdmVSZXNv
dXJjZXMudW5jaGVja2VkQXBwZW5kKCpyZXNvdXJjZS0+Y29yZUFyY2hpdmVSZXNvdXJjZSgpKTsK
ICAgICB9CiAKLSAgICBWZWN0b3I8UmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+PiBjb3JlU3ViZnJh
bWVMZWdhY3lXZWJBcmNoaXZlczsKKyAgICBWZWN0b3I8UmVmPExlZ2FjeVdlYkFyY2hpdmU+PiBj
b3JlU3ViZnJhbWVMZWdhY3lXZWJBcmNoaXZlczsKICAgICBjb3JlU3ViZnJhbWVMZWdhY3lXZWJB
cmNoaXZlcy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KG1fY2FjaGVkU3ViZnJhbWVBcmNoaXZlcy0+
c2l6ZSgpKTsKLQogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9jYWNoZWRTdWJmcmFtZUFy
Y2hpdmVzLT5zaXplKCk7ICsraSkgewotICAgICAgICBSZWZQdHI8V2ViQXJjaGl2ZT4gc3ViZnJh
bWVXZWJBcmNoaXZlID0gbV9jYWNoZWRTdWJmcmFtZUFyY2hpdmVzLT5hdDxXZWJBcmNoaXZlPihp
KTsKKyAgICAgICAgYXV0byBzdWJmcmFtZVdlYkFyY2hpdmUgPSBtX2NhY2hlZFN1YmZyYW1lQXJj
aGl2ZXMtPmF0PFdlYkFyY2hpdmU+KGkpOwogICAgICAgICBBU1NFUlQoc3ViZnJhbWVXZWJBcmNo
aXZlKTsKLSAgICAgICAgY29yZVN1YmZyYW1lTGVnYWN5V2ViQXJjaGl2ZXMudW5jaGVja2VkQXBw
ZW5kKHN1YmZyYW1lV2ViQXJjaGl2ZS0+Y29yZUxlZ2FjeVdlYkFyY2hpdmUoKSk7CisgICAgICAg
IEFTU0VSVChzdWJmcmFtZVdlYkFyY2hpdmUtPmNvcmVMZWdhY3lXZWJBcmNoaXZlKCkpOworICAg
ICAgICBjb3JlU3ViZnJhbWVMZWdhY3lXZWJBcmNoaXZlcy51bmNoZWNrZWRBcHBlbmQoKnN1YmZy
YW1lV2ViQXJjaGl2ZS0+Y29yZUxlZ2FjeVdlYkFyY2hpdmUoKSk7CiAgICAgfQogCi0gICAgbV9s
ZWdhY3lXZWJBcmNoaXZlID0gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFdURk1vdmUoY29yZU1h
aW5SZXNvdXJjZSksIFdURk1vdmUoY29yZUFyY2hpdmVSZXNvdXJjZXMpLCBXVEZNb3ZlKGNvcmVT
dWJmcmFtZUxlZ2FjeVdlYkFyY2hpdmVzKSk7CisgICAgbV9sZWdhY3lXZWJBcmNoaXZlID0gTGVn
YWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKCpjb3JlTWFpblJlc291cmNlLCBXVEZNb3ZlKGNvcmVBcmNo
aXZlUmVzb3VyY2VzKSwgV1RGTW92ZShjb3JlU3ViZnJhbWVMZWdhY3lXZWJBcmNoaXZlcykpOwog
fQogCiBXZWJBcmNoaXZlOjpXZWJBcmNoaXZlKEFQSTo6RGF0YSogZGF0YSkKQEAgLTkwLDcgKzkx
LDcgQEAgV2ViQXJjaGl2ZTo6V2ViQXJjaGl2ZShBUEk6OkRhdGEqIGRhdGEpCiAgICAgbV9sZWdh
Y3lXZWJBcmNoaXZlID0gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFNoYXJlZEJ1ZmZlcjo6Y3Jl
YXRlKGRhdGEtPmJ5dGVzKCksIGRhdGEtPnNpemUoKSkuZ2V0KCkpOwogfQogCi1XZWJBcmNoaXZl
OjpXZWJBcmNoaXZlKFBhc3NSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gbGVnYWN5V2ViQXJjaGl2
ZSkKK1dlYkFyY2hpdmU6OldlYkFyY2hpdmUoUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+JiYgbGVn
YWN5V2ViQXJjaGl2ZSkKICAgICA6IG1fbGVnYWN5V2ViQXJjaGl2ZShsZWdhY3lXZWJBcmNoaXZl
KQogewogfQpAQCAtMTExLDEwICsxMTIsOCBAQCBBUEk6OkFycmF5KiBXZWJBcmNoaXZlOjpzdWJy
ZXNvdXJjZXMoKQogICAgIGlmICghbV9jYWNoZWRTdWJyZXNvdXJjZXMpIHsKICAgICAgICAgVmVj
dG9yPFJlZlB0cjxBUEk6Ok9iamVjdD4+IHN1YnJlc291cmNlczsKICAgICAgICAgc3VicmVzb3Vy
Y2VzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobV9sZWdhY3lXZWJBcmNoaXZlLT5zdWJyZXNvdXJj
ZXMoKS5zaXplKCkpOwotCi0gICAgICAgIGZvciAoY29uc3QgYXV0byYgc3VicmVzb3VyY2UgOiBt
X2xlZ2FjeVdlYkFyY2hpdmUtPnN1YnJlc291cmNlcygpKQotICAgICAgICAgICAgc3VicmVzb3Vy
Y2VzLnVuY2hlY2tlZEFwcGVuZChXZWJBcmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShzdWJyZXNvdXJj
ZSkpOwotCisgICAgICAgIGZvciAoYXV0byYgc3VicmVzb3VyY2UgOiBtX2xlZ2FjeVdlYkFyY2hp
dmUtPnN1YnJlc291cmNlcygpKQorICAgICAgICAgICAgc3VicmVzb3VyY2VzLnVuY2hlY2tlZEFw
cGVuZChXZWJBcmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShzdWJyZXNvdXJjZS5wdHIoKSkpOwogICAg
ICAgICBtX2NhY2hlZFN1YnJlc291cmNlcyA9IEFQSTo6QXJyYXk6OmNyZWF0ZShXVEZNb3ZlKHN1
YnJlc291cmNlcykpOwogICAgIH0KIApAQCAtMTI2LDEwICsxMjUsOCBAQCBBUEk6OkFycmF5KiBX
ZWJBcmNoaXZlOjpzdWJmcmFtZUFyY2hpdmVzKCkKICAgICBpZiAoIW1fY2FjaGVkU3ViZnJhbWVB
cmNoaXZlcykgewogICAgICAgICBWZWN0b3I8UmVmUHRyPEFQSTo6T2JqZWN0Pj4gc3ViZnJhbWVX
ZWJBcmNoaXZlczsKICAgICAgICAgc3ViZnJhbWVXZWJBcmNoaXZlcy5yZXNlcnZlSW5pdGlhbENh
cGFjaXR5KG1fbGVnYWN5V2ViQXJjaGl2ZS0+c3ViZnJhbWVBcmNoaXZlcygpLnNpemUoKSk7Ci0K
LSAgICAgICAgZm9yIChjb25zdCBhdXRvJiBzdWJmcmFtZUFyY2hpdmUgOiBtX2xlZ2FjeVdlYkFy
Y2hpdmUtPnN1YmZyYW1lQXJjaGl2ZXMoKSkKLSAgICAgICAgICAgIHN1YmZyYW1lV2ViQXJjaGl2
ZXMudW5jaGVja2VkQXBwZW5kKFdlYkFyY2hpdmU6OmNyZWF0ZShzdGF0aWNfY2FzdDxMZWdhY3lX
ZWJBcmNoaXZlKj4oc3ViZnJhbWVBcmNoaXZlLmdldCgpKSkpOwotCisgICAgICAgIGZvciAoYXV0
byYgc3ViZnJhbWVBcmNoaXZlIDogbV9sZWdhY3lXZWJBcmNoaXZlLT5zdWJmcmFtZUFyY2hpdmVz
KCkpCisgICAgICAgICAgICBzdWJmcmFtZVdlYkFyY2hpdmVzLnVuY2hlY2tlZEFwcGVuZChXZWJB
cmNoaXZlOjpjcmVhdGUoc3RhdGljX2Nhc3Q8TGVnYWN5V2ViQXJjaGl2ZSo+KHN1YmZyYW1lQXJj
aGl2ZS5wdHIoKSkpKTsKICAgICAgICAgbV9jYWNoZWRTdWJmcmFtZUFyY2hpdmVzID0gQVBJOjpB
cnJheTo6Y3JlYXRlKFdURk1vdmUoc3ViZnJhbWVXZWJBcmNoaXZlcykpOwogICAgIH0KIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1RleHRDaGVja2VyU3RhdGUuaCBiL1NvdXJj
ZS9XZWJLaXQyL1NoYXJlZC9UZXh0Q2hlY2tlclN0YXRlLmgKaW5kZXggYmNjOWZlY2NjY2IyZjY5
Yjc2Nzk4NDY4NTE5Y2Q0MmIwMzdjYTJkZC4uY2U2NmYxMDI1MDIzYWFkZWY4OGQzNTc4Njc4OTk4
NjEwOWIyY2NmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1RleHRDaGVja2Vy
U3RhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvVGV4dENoZWNrZXJTdGF0ZS5oCkBA
IC0yMywyMyArMjMsMjIgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAq
LwogCi0jaWZuZGVmIFRleHRDaGVja2VyU3RhdGVfaAotI2RlZmluZSBUZXh0Q2hlY2tlclN0YXRl
X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAiQXJndW1lbnRDb2RlcnMuaCIKIAogbmFtZXNw
YWNlIFdlYktpdCB7CiAKIHN0cnVjdCBUZXh0Q2hlY2tlclN0YXRlIHsKLSAgICBib29sIGlzQ29u
dGludW91c1NwZWxsQ2hlY2tpbmdFbmFibGVkOwotICAgIGJvb2wgaXNHcmFtbWFyQ2hlY2tpbmdF
bmFibGVkOworICAgIGJvb2wgaXNDb250aW51b3VzU3BlbGxDaGVja2luZ0VuYWJsZWQgeyBmYWxz
ZSB9OworICAgIGJvb2wgaXNHcmFtbWFyQ2hlY2tpbmdFbmFibGVkIHsgZmFsc2UgfTsKIAogI2lm
IFVTRShBUFBLSVQpCi0gICAgYm9vbCBpc0F1dG9tYXRpY1NwZWxsaW5nQ29ycmVjdGlvbkVuYWJs
ZWQ7Ci0gICAgYm9vbCBpc0F1dG9tYXRpY1F1b3RlU3Vic3RpdHV0aW9uRW5hYmxlZDsKLSAgICBi
b29sIGlzQXV0b21hdGljRGFzaFN1YnN0aXR1dGlvbkVuYWJsZWQ7Ci0gICAgYm9vbCBpc0F1dG9t
YXRpY0xpbmtEZXRlY3Rpb25FbmFibGVkOwotICAgIGJvb2wgaXNBdXRvbWF0aWNUZXh0UmVwbGFj
ZW1lbnRFbmFibGVkOworICAgIGJvb2wgaXNBdXRvbWF0aWNTcGVsbGluZ0NvcnJlY3Rpb25FbmFi
bGVkIHsgZmFsc2UgfTsKKyAgICBib29sIGlzQXV0b21hdGljUXVvdGVTdWJzdGl0dXRpb25FbmFi
bGVkIHsgZmFsc2UgfTsKKyAgICBib29sIGlzQXV0b21hdGljRGFzaFN1YnN0aXR1dGlvbkVuYWJs
ZWQgeyBmYWxzZSB9OworICAgIGJvb2wgaXNBdXRvbWF0aWNMaW5rRGV0ZWN0aW9uRW5hYmxlZCB7
IGZhbHNlIH07CisgICAgYm9vbCBpc0F1dG9tYXRpY1RleHRSZXBsYWNlbWVudEVuYWJsZWQgeyBm
YWxzZSB9OwogI2VuZGlmCiB9OwogCkBAIC00OCw1ICs0NywzIEBAIHN0cnVjdCBUZXh0Q2hlY2tl
clN0YXRlIHsKIG5hbWVzcGFjZSBJUEMgewogdGVtcGxhdGU8PiBzdHJ1Y3QgQXJndW1lbnRDb2Rl
cjxXZWJLaXQ6OlRleHRDaGVja2VyU3RhdGU+IDogU2ltcGxlQXJndW1lbnRDb2RlcjxXZWJLaXQ6
OlRleHRDaGVja2VyU3RhdGU+IHsgfTsKIH07Ci0KLSNlbmRpZiAvLyBUZXh0Q2hlY2tlclN0YXRl
X2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJJY29uRGF0YWJhc2Uu
Y3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkljb25EYXRhYmFzZS5jcHAKaW5kZXgg
NTZmNWRhMWEyMDEzYTA5YTY5YTVmYmVhMjRmZTRhNmJiYmIwYTAwNC4uODkyYzA1ZmRhY2Y0YjMz
YWM4NWM2YzQ1NWQ1ODNhNGU4NzlmYmJmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL1dlYkljb25EYXRhYmFzZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L1dlYkljb25EYXRhYmFzZS5jcHAKQEAgLTEzMCw3ICsxMzAsNyBAQCB2b2lkIFdlYkljb25EYXRh
YmFzZTo6c2V0SWNvbkRhdGFGb3JJY29uVVJMKGNvbnN0IElQQzo6RGF0YVJlZmVyZW5jZSYgaWNv
bkRhdGEsCiAgICAgTE9HKEljb25EYXRhYmFzZSwgIldLMiBVSVByb2Nlc3Mgc2V0dGluZyBpY29u
IGRhdGEgKCVpIGJ5dGVzKSBmb3IgcGFnZSBVUkwgJXMiLCAoaW50KWljb25EYXRhLnNpemUoKSwg
aWNvblVSTC5hc2NpaSgpLmRhdGEoKSk7CiAgICAgaWYgKCFtX2ljb25EYXRhYmFzZUltcGwpCiAg
ICAgICAgIHJldHVybjsKLSAgICBtX2ljb25EYXRhYmFzZUltcGwtPnNldEljb25EYXRhRm9ySWNv
blVSTChTaGFyZWRCdWZmZXI6OmNyZWF0ZShpY29uRGF0YS5kYXRhKCksIGljb25EYXRhLnNpemUo
KSksIGljb25VUkwpOworICAgIG1faWNvbkRhdGFiYXNlSW1wbC0+c2V0SWNvbkRhdGFGb3JJY29u
VVJMKFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKGljb25EYXRhLmRhdGEoKSwgaWNvbkRhdGEuc2l6ZSgp
KS5wdHIoKSwgaWNvblVSTCk7CiB9CiAKIHZvaWQgV2ViSWNvbkRhdGFiYXNlOjpzeW5jaHJvbm91
c0ljb25EYXRhRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmLCBJUEM6OkRhdGFSZWZlcmVuY2UmIGlj
b25EYXRhKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94
eS5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCmluZGV4IDc1OGMy
Mzk1OTg1MDUyNDM5ODZjMDczNzUxNDljM2VlZWIxMzcyODYuLjQ2MDZkZjExNGFkNzc3NGU0Mzc5
NDBlNGZjMDk4N2E5ZjFhZGY2YWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9XZWJQYWdlUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVBy
b3h5LmgKQEAgLTE4Niw3ICsxODYsNiBAQCBjbGFzcyBQYWdlQ2xpZW50OwogY2xhc3MgUmVtb3Rl
TGF5ZXJUcmVlU2Nyb2xsaW5nUGVyZm9ybWFuY2VEYXRhOwogY2xhc3MgUmVtb3RlTGF5ZXJUcmVl
VHJhbnNhY3Rpb247CiBjbGFzcyBSZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvclByb3h5OwotY2xh
c3MgU3RyaW5nUGFpclZlY3RvcjsKIGNsYXNzIFVzZXJEYXRhOwogY2xhc3MgVmlld1NuYXBzaG90
OwogY2xhc3MgVmlzaXRlZExpbmtTdG9yZTsKQEAgLTIwNiwxMSArMjA1LDEyIEBAIGNsYXNzIFdl
YlByb2Nlc3NQcm94eTsKIGNsYXNzIFdlYlVzZXJDb250ZW50Q29udHJvbGxlclByb3h5OwogY2xh
c3MgV2ViV2hlZWxFdmVudDsKIGNsYXNzIFdlYnNpdGVEYXRhU3RvcmU7CitjbGFzcyBHYW1lcGFk
RGF0YTsKKwogc3RydWN0IEF0dHJpYnV0ZWRTdHJpbmc7CiBzdHJ1Y3QgQ29sb3JTcGFjZURhdGE7
CiBzdHJ1Y3QgRWRpdGluZ1JhbmdlOwogc3RydWN0IEVkaXRvclN0YXRlOwotY2xhc3MgR2FtZXBh
ZERhdGE7CiBzdHJ1Y3QgSW50ZXJhY3Rpb25JbmZvcm1hdGlvblJlcXVlc3Q7CiBzdHJ1Y3QgTG9h
ZFBhcmFtZXRlcnM7CiBzdHJ1Y3QgUGxhdGZvcm1Qb3B1cE1lbnVEYXRhOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JY29uRGF0YWJhc2UvV2ViSWNvbkRhdGFiYXNlUHJv
eHkuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JY29uRGF0YWJhc2UvV2ViSWNvbkRh
dGFiYXNlUHJveHkuY3BwCmluZGV4IDMzZmU1ODdlNDE1NzYzODQwMDMzMTUwOWQ4ZjdiMjUzYzcz
M2U4OWQuLjU0MmVkZGQ2ZGMwOWIzYmFjMTQ3ZTgzZTFjYjc2NDU5ODk4OTdiMzYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSWNvbkRhdGFiYXNlL1dlYkljb25EYXRhYmFz
ZVByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9X
ZWJJY29uRGF0YWJhc2VQcm94eS5jcHAKQEAgLTQyLDExICs0MiwxMCBAQCBXZWJJY29uRGF0YWJh
c2VQcm94eTo6fldlYkljb25EYXRhYmFzZVByb3h5KCkKIHsKIH0KIAotV2ViSWNvbkRhdGFiYXNl
UHJveHk6OldlYkljb25EYXRhYmFzZVByb3h5KFdlYlByb2Nlc3MqIHByb2Nlc3MpCi0gICAgOiBt
X2lzRW5hYmxlZChmYWxzZSkKLSAgICAsIG1fcHJvY2Vzcyhwcm9jZXNzKQorV2ViSWNvbkRhdGFi
YXNlUHJveHk6OldlYkljb25EYXRhYmFzZVByb3h5KFdlYlByb2Nlc3MmIHByb2Nlc3MpCisgICAg
OiBtX3Byb2Nlc3MocHJvY2VzcykKIHsKLSAgICBtX3Byb2Nlc3MtPmFkZE1lc3NhZ2VSZWNlaXZl
cihNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlUHJveHk6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSwg
KnRoaXMpOworICAgIG1fcHJvY2Vzcy5hZGRNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6OldlYklj
b25EYXRhYmFzZVByb3h5OjptZXNzYWdlUmVjZWl2ZXJOYW1lKCksICp0aGlzKTsKIH0KIAogYm9v
bCBXZWJJY29uRGF0YWJhc2VQcm94eTo6aXNFbmFibGVkKCkgY29uc3QKQEAgLTY1LDE4ICs2NCwx
OCBAQCB2b2lkIFdlYkljb25EYXRhYmFzZVByb3h5OjpzZXRFbmFibGVkKGJvb2wgZW5hYmxlZCkK
IAogdm9pZCBXZWJJY29uRGF0YWJhc2VQcm94eTo6cmV0YWluSWNvbkZvclBhZ2VVUkwoY29uc3Qg
U3RyaW5nJiBwYWdlVVJMKQogewotICAgIG1fcHJvY2Vzcy0+cGFyZW50UHJvY2Vzc0Nvbm5lY3Rp
b24oKS0+c2VuZChNZXNzYWdlczo6V2ViUHJvY2Vzc1Byb3h5OjpSZXRhaW5JY29uRm9yUGFnZVVS
TChwYWdlVVJMKSwgMCk7CisgICAgbV9wcm9jZXNzLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCkt
PnNlbmQoTWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6UmV0YWluSWNvbkZvclBhZ2VVUkwocGFn
ZVVSTCksIDApOwogfQogCiB2b2lkIFdlYkljb25EYXRhYmFzZVByb3h5OjpyZWxlYXNlSWNvbkZv
clBhZ2VVUkwoY29uc3QgU3RyaW5nJiBwYWdlVVJMKQogewotICAgIG1fcHJvY2Vzcy0+cGFyZW50
UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViUHJvY2Vzc1Byb3h5OjpSZWxl
YXNlSWNvbkZvclBhZ2VVUkwocGFnZVVSTCksIDApOworICAgIG1fcHJvY2Vzcy5wYXJlbnRQcm9j
ZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpXZWJQcm9jZXNzUHJveHk6OlJlbGVhc2VJ
Y29uRm9yUGFnZVVSTChwYWdlVVJMKSwgMCk7CiB9CiAKIEltYWdlKiBXZWJJY29uRGF0YWJhc2VQ
cm94eTo6c3luY2hyb25vdXNJY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIHBhZ2VVUkwsIGNv
bnN0IEludFNpemUmIC8qc2l6ZSovKQogewogICAgIElQQzo6RGF0YVJlZmVyZW5jZSByZXN1bHQ7
Ci0gICAgaWYgKCFtX3Byb2Nlc3MtPnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5j
KE1lc3NhZ2VzOjpXZWJJY29uRGF0YWJhc2U6OlN5bmNocm9ub3VzSWNvbkRhdGFGb3JQYWdlVVJM
KHBhZ2VVUkwpLCBNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpTeW5jaHJvbm91c0ljb25EYXRh
Rm9yUGFnZVVSTDo6UmVwbHkocmVzdWx0KSwgMCkpCisgICAgaWYgKCFtX3Byb2Nlc3MucGFyZW50
UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYkljb25EYXRhYmFzZTo6
U3luY2hyb25vdXNJY29uRGF0YUZvclBhZ2VVUkwocGFnZVVSTCksIE1lc3NhZ2VzOjpXZWJJY29u
RGF0YWJhc2U6OlN5bmNocm9ub3VzSWNvbkRhdGFGb3JQYWdlVVJMOjpSZXBseShyZXN1bHQpLCAw
KSkKICAgICAgICAgcmV0dXJuIDA7CiAgICAgCiAgICAgLy8gRklYTUU6IFJldHVybiBJbWFnZSBj
cmVhdGVkIHdpdGggdGhlIGFib3ZlIGRhdGEuCkBAIC0xMTAsMzQgKzEwOSwzMiBAQCBib29sIFdl
Ykljb25EYXRhYmFzZVByb3h5OjpzdXBwb3J0c0FzeW5jaHJvbm91c01vZGUoKQogICAgIHJldHVy
biB0cnVlOwogfQogCi12b2lkIFdlYkljb25EYXRhYmFzZVByb3h5Ojpsb2FkRGVjaXNpb25Gb3JJ
Y29uVVJMKGNvbnN0IFN0cmluZyYgaWNvblVSTCwgUGFzc1JlZlB0cjxXZWJDb3JlOjpJY29uTG9h
ZERlY2lzaW9uQ2FsbGJhY2s+IGNhbGxiYWNrKQordm9pZCBXZWJJY29uRGF0YWJhc2VQcm94eTo6
bG9hZERlY2lzaW9uRm9ySWNvblVSTChjb25zdCBTdHJpbmcmIGljb25VUkwsIFdlYkNvcmU6Oklj
b25Mb2FkRGVjaXNpb25DYWxsYmFjayYgY2FsbGJhY2spCiB7Ci0gICAgdWludDY0X3QgaWQgPSBj
YWxsYmFjay0+Y2FsbGJhY2tJRCgpOwotICAgIG1faWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrcy5h
ZGQoaWQsIGNhbGxiYWNrKTsKLSAgICAKLSAgICBtX3Byb2Nlc3MtPnBhcmVudFByb2Nlc3NDb25u
ZWN0aW9uKCktPnNlbmQoTWVzc2FnZXM6OldlYkljb25EYXRhYmFzZTo6R2V0TG9hZERlY2lzaW9u
Rm9ySWNvblVSTChpY29uVVJMLCBpZCksIDApOworICAgIHVpbnQ2NF90IGlkID0gY2FsbGJhY2su
Y2FsbGJhY2tJRCgpOworICAgIG1faWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrcy5hZGQoaWQsICZj
YWxsYmFjayk7CisgICAgbV9wcm9jZXNzLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmQo
TWVzc2FnZXM6OldlYkljb25EYXRhYmFzZTo6R2V0TG9hZERlY2lzaW9uRm9ySWNvblVSTChpY29u
VVJMLCBpZCksIDApOwogfQogCiB2b2lkIFdlYkljb25EYXRhYmFzZVByb3h5OjpyZWNlaXZlZElj
b25Mb2FkRGVjaXNpb24oaW50IGRlY2lzaW9uLCB1aW50NjRfdCBjYWxsYmFja0lEKQogewotICAg
IFJlZlB0cjxXZWJDb3JlOjpJY29uTG9hZERlY2lzaW9uQ2FsbGJhY2s+IGNhbGxiYWNrID0gbV9p
Y29uTG9hZERlY2lzaW9uQ2FsbGJhY2tzLnRha2UoY2FsbGJhY2tJRCk7Ci0gICAgaWYgKGNhbGxi
YWNrKQorICAgIGlmIChhdXRvIGNhbGxiYWNrID0gbV9pY29uTG9hZERlY2lzaW9uQ2FsbGJhY2tz
LnRha2UoY2FsbGJhY2tJRCkpCiAgICAgICAgIGNhbGxiYWNrLT5wZXJmb3JtQ2FsbGJhY2soc3Rh
dGljX2Nhc3Q8V2ViQ29yZTo6SWNvbkxvYWREZWNpc2lvbj4oZGVjaXNpb24pKTsKIH0KIAotdm9p
ZCBXZWJJY29uRGF0YWJhc2VQcm94eTo6aWNvbkRhdGFGb3JJY29uVVJMKGNvbnN0IFN0cmluZyYg
LyppY29uVVJMKi8sIFBhc3NSZWZQdHI8V2ViQ29yZTo6SWNvbkRhdGFDYWxsYmFjaz4pCit2b2lk
IFdlYkljb25EYXRhYmFzZVByb3h5OjppY29uRGF0YUZvckljb25VUkwoY29uc3QgU3RyaW5nJiwg
V2ViQ29yZTo6SWNvbkRhdGFDYWxsYmFjayYpCiB7CiB9CiAKIHZvaWQgV2ViSWNvbkRhdGFiYXNl
UHJveHk6OnNldEljb25VUkxGb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYgaWNvblVSTCwgY29uc3Qg
U3RyaW5nJiBwYWdlVVJMKQogewotICAgIG1fcHJvY2Vzcy0+cGFyZW50UHJvY2Vzc0Nvbm5lY3Rp
b24oKS0+c2VuZChNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpTZXRJY29uVVJMRm9yUGFnZVVS
TChpY29uVVJMLCBwYWdlVVJMKSwgMCk7CisgICAgbV9wcm9jZXNzLnBhcmVudFByb2Nlc3NDb25u
ZWN0aW9uKCktPnNlbmQoTWVzc2FnZXM6OldlYkljb25EYXRhYmFzZTo6U2V0SWNvblVSTEZvclBh
Z2VVUkwoaWNvblVSTCwgcGFnZVVSTCksIDApOwogfQogCi12b2lkIFdlYkljb25EYXRhYmFzZVBy
b3h5OjpzZXRJY29uRGF0YUZvckljb25VUkwoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGljb25E
YXRhLCBjb25zdCBTdHJpbmcmIGljb25VUkwpCit2b2lkIFdlYkljb25EYXRhYmFzZVByb3h5Ojpz
ZXRJY29uRGF0YUZvckljb25VUkwoU2hhcmVkQnVmZmVyKiBpY29uRGF0YSwgY29uc3QgU3RyaW5n
JiBpY29uVVJMKQogewotICAgIElQQzo6RGF0YVJlZmVyZW5jZSBkYXRhKHJlaW50ZXJwcmV0X2Nh
c3Q8Y29uc3QgdWludDhfdCo+KGljb25EYXRhID8gaWNvbkRhdGEtPmRhdGEoKSA6IDApLCBpY29u
RGF0YSA/IGljb25EYXRhLT5zaXplKCkgOiAwKTsKLSAgICBtX3Byb2Nlc3MtPnBhcmVudFByb2Nl
c3NDb25uZWN0aW9uKCktPnNlbmQoTWVzc2FnZXM6OldlYkljb25EYXRhYmFzZTo6U2V0SWNvbkRh
dGFGb3JJY29uVVJMKGRhdGEsIGljb25VUkwpLCAwKTsKKyAgICBJUEM6OkRhdGFSZWZlcmVuY2Ug
ZGF0YShyZWludGVycHJldF9jYXN0PGNvbnN0IHVpbnQ4X3QqPihpY29uRGF0YSA/IGljb25EYXRh
LT5kYXRhKCkgOiBudWxscHRyKSwgaWNvbkRhdGEgPyBpY29uRGF0YS0+c2l6ZSgpIDogMCk7Cisg
ICAgbV9wcm9jZXNzLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmQoTWVzc2FnZXM6Oldl
Ykljb25EYXRhYmFzZTo6U2V0SWNvbkRhdGFGb3JJY29uVVJMKGRhdGEsIGljb25VUkwpLCAwKTsK
IH0KIAogdm9pZCBXZWJJY29uRGF0YWJhc2VQcm94eTo6dXJsSW1wb3J0RmluaXNoZWQoKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JY29uRGF0YWJhc2UvV2ViSWNvbkRh
dGFiYXNlUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSWNvbkRhdGFiYXNlL1dl
Ykljb25EYXRhYmFzZVByb3h5LmgKaW5kZXggNjJhMDZjM2Y5NGY3ZDdlMDk3NjM1YjUyYjc4YzQz
MzhlYjNjYThiZC4uYmRmOGQ0Y2Y2M2FiZTljZWEzZDJhYzE5ODFlOTA2ZWI2NjFmNWEzZSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JY29uRGF0YWJhc2UvV2ViSWNvbkRh
dGFiYXNlUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0ljb25EYXRhYmFz
ZS9XZWJJY29uRGF0YWJhc2VQcm94eS5oCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBXZWJJY29uRGF0YWJhc2VQcm94
eV9oCi0jZGVmaW5lIFdlYkljb25EYXRhYmFzZVByb3h5X2gKKyNwcmFnbWEgb25jZQogCiAjaW5j
bHVkZSAiQVBJT2JqZWN0LmgiCiAjaW5jbHVkZSAiTWVzc2FnZVJlY2VpdmVyLmgiCkBAIC0zNyw0
MyArMzYsNDEgQEAgbmFtZXNwYWNlIFdlYktpdCB7CiAKIGNsYXNzIFdlYlByb2Nlc3M7CiAKLWNs
YXNzIFdlYkljb25EYXRhYmFzZVByb3h5IDogcHVibGljIFdlYkNvcmU6Okljb25EYXRhYmFzZUJh
c2UsIHByaXZhdGUgSVBDOjpNZXNzYWdlUmVjZWl2ZXIgeworY2xhc3MgV2ViSWNvbkRhdGFiYXNl
UHJveHkgZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6SWNvbkRhdGFiYXNlQmFzZSwgcHJpdmF0ZSBJ
UEM6Ok1lc3NhZ2VSZWNlaXZlciB7CiBwdWJsaWM6Ci0gICAgZXhwbGljaXQgV2ViSWNvbkRhdGFi
YXNlUHJveHkoV2ViUHJvY2VzcyopOworICAgIGV4cGxpY2l0IFdlYkljb25EYXRhYmFzZVByb3h5
KFdlYlByb2Nlc3MmKTsKICAgICB2aXJ0dWFsIH5XZWJJY29uRGF0YWJhc2VQcm94eSgpOwogCi0g
ICAgYm9vbCBpc0VuYWJsZWQoKSBjb25zdCBvdmVycmlkZTsKLSAgICB2b2lkIHNldEVuYWJsZWQo
Ym9vbCkgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRFbmFibGVkKGJvb2wpIGZpbmFsOwogCi0gICAg
dm9pZCByZXRhaW5JY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmKSBvdmVycmlkZTsKLSAgICB2
b2lkIHJlbGVhc2VJY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmKSBvdmVycmlkZTsKLSAgICB2
b2lkIHNldEljb25VUkxGb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYsIGNvbnN0IFN0cmluZyYpIG92
ZXJyaWRlOwotICAgIHZvaWQgc2V0SWNvbkRhdGFGb3JJY29uVVJMKFBhc3NSZWZQdHI8V2ViQ29y
ZTo6U2hhcmVkQnVmZmVyPiwgY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7Citwcml2YXRlOgorICAg
IGJvb2wgaXNFbmFibGVkKCkgY29uc3QgZmluYWw7CisKKyAgICB2b2lkIHJldGFpbkljb25Gb3JQ
YWdlVVJMKGNvbnN0IFN0cmluZyYpIGZpbmFsOworICAgIHZvaWQgcmVsZWFzZUljb25Gb3JQYWdl
VVJMKGNvbnN0IFN0cmluZyYpIGZpbmFsOworICAgIHZvaWQgc2V0SWNvblVSTEZvclBhZ2VVUkwo
Y29uc3QgU3RyaW5nJiwgY29uc3QgU3RyaW5nJikgZmluYWw7CisgICAgdm9pZCBzZXRJY29uRGF0
YUZvckljb25VUkwoV2ViQ29yZTo6U2hhcmVkQnVmZmVyKiwgY29uc3QgU3RyaW5nJikgZmluYWw7
CiAKLSAgICBTdHJpbmcgc3luY2hyb25vdXNJY29uVVJMRm9yUGFnZVVSTChjb25zdCBTdHJpbmcm
KSBvdmVycmlkZTsKLSAgICBib29sIHN5bmNocm9ub3VzSWNvbkRhdGFLbm93bkZvckljb25VUkwo
Y29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6SWNvbkxvYWREZWNpc2lvbiBz
eW5jaHJvbm91c0xvYWREZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5nJiwgV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXIqKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpJbWFnZSogc3luY2hyb25v
dXNJY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmLCBjb25zdCBXZWJDb3JlOjpJbnRTaXplJikg
b3ZlcnJpZGU7CisgICAgU3RyaW5nIHN5bmNocm9ub3VzSWNvblVSTEZvclBhZ2VVUkwoY29uc3Qg
U3RyaW5nJikgZmluYWw7CisgICAgYm9vbCBzeW5jaHJvbm91c0ljb25EYXRhS25vd25Gb3JJY29u
VVJMKGNvbnN0IFN0cmluZyYpIGZpbmFsOworICAgIFdlYkNvcmU6Okljb25Mb2FkRGVjaXNpb24g
c3luY2hyb25vdXNMb2FkRGVjaXNpb25Gb3JJY29uVVJMKGNvbnN0IFN0cmluZyYsIFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyKikgZmluYWw7CisgICAgV2ViQ29yZTo6SW1hZ2UqIHN5bmNocm9ub3Vz
SWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJiwgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYpIGZp
bmFsOwogICAgIAotICAgIC8vIEFzeW5jaHJvbm91cyBjYWxscyB3ZSBzaG91bGQgdXNlIHRvIHJl
cGxhY2UgdGhlIGFib3ZlIHdoZW4gc3VwcG9ydGVkLgotICAgIGJvb2wgc3VwcG9ydHNBc3luY2hy
b25vdXNNb2RlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBsb2FkRGVjaXNpb25Gb3JJY29uVVJMKGNv
bnN0IFN0cmluZyYsIFBhc3NSZWZQdHI8V2ViQ29yZTo6SWNvbkxvYWREZWNpc2lvbkNhbGxiYWNr
Pikgb3ZlcnJpZGU7CisgICAgYm9vbCBzdXBwb3J0c0FzeW5jaHJvbm91c01vZGUoKSBmaW5hbDsK
KyAgICB2b2lkIGxvYWREZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5nJiwgV2ViQ29yZTo6
SWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrJikgZmluYWw7CiAgICAgdm9pZCByZWNlaXZlZEljb25M
b2FkRGVjaXNpb24oaW50IGRlY2lzaW9uLCB1aW50NjRfdCBjYWxsYmFja0lEKTsKLSAgICB2b2lk
IGljb25EYXRhRm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBQYXNzUmVmUHRyPFdlYkNvcmU6Oklj
b25EYXRhQ2FsbGJhY2s+KSBvdmVycmlkZTsKKyAgICB2b2lkIGljb25EYXRhRm9ySWNvblVSTChj
b25zdCBTdHJpbmcmLCBXZWJDb3JlOjpJY29uRGF0YUNhbGxiYWNrJikgZmluYWw7CiAKLXByaXZh
dGU6CiAgICAgLy8gSVBDOjpNZXNzYWdlUmVjZWl2ZXIKLSAgICB2b2lkIGRpZFJlY2VpdmVNZXNz
YWdlKElQQzo6Q29ubmVjdGlvbiYsIElQQzo6RGVjb2RlciYpIG92ZXJyaWRlOworICAgIHZvaWQg
ZGlkUmVjZWl2ZU1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiwgSVBDOjpEZWNvZGVyJikgZmluYWw7
CiAgICAgCiAgICAgLy8gQ2FsbGJhY2tzIGZyb20gdGhlIFVJUHJvY2VzcwogICAgIHZvaWQgdXJs
SW1wb3J0RmluaXNoZWQoKTsKIAotICAgIGJvb2wgbV9pc0VuYWJsZWQ7Ci0gICAgV2ViUHJvY2Vz
cyogbV9wcm9jZXNzOworICAgIGJvb2wgbV9pc0VuYWJsZWQgeyBmYWxzZSB9OworICAgIFdlYlBy
b2Nlc3MmIG1fcHJvY2VzczsKICAgICAKICAgICBIYXNoTWFwPHVpbnQ2NF90LCBSZWZQdHI8V2Vi
Q29yZTo6SWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrPj4gbV9pY29uTG9hZERlY2lzaW9uQ2FsbGJh
Y2tzOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0Ci0KLSNlbmRpZiAvLyBXZWJJY29uRGF0
YWJhc2VQcm94eV9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVj
dGVkQnVuZGxlL0luamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbi5jcHAgYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFj
dGlvbi5jcHAKaW5kZXggMTk2M2ExYTAyNjU1MzkxMGMyZWRjNmE2NDdhMzlkYTk5ZTJiODEyMS4u
MzU2OWZkODc1YmU4NmM5NTg2ZjBlZTdiMjUwMDEzYzk3YzNjNTNkZSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZU5hdmln
YXRpb25BY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRC
dW5kbGUvSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uLmNwcApAQCAtMTAyLDcgKzEwMiw3
IEBAIFJlZjxJbmplY3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rpb24+IEluamVjdGVkQnVuZGxlTmF2
aWdhdGlvbkFjdGlvbjo6Y3JlYXRlKFdlYkZyCiAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgSW5q
ZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uKGZyYW1lLCBhY3Rpb24sIGZvcm1TdGF0ZSkpOwog
fQogCi1JbmplY3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rpb246OkluamVjdGVkQnVuZGxlTmF2aWdh
dGlvbkFjdGlvbihXZWJGcmFtZSogZnJhbWUsIGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIG5hdmln
YXRpb25BY3Rpb24sIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiBwcnBGb3JtU3RhdGUpCitJbmplY3Rl
ZEJ1bmRsZU5hdmlnYXRpb25BY3Rpb246OkluamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbihX
ZWJGcmFtZSogZnJhbWUsIGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIG5hdmlnYXRpb25BY3Rpb24s
IFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiBmb3JtU3RhdGUpCiAgICAgOiBtX25hdmlnYXRpb25UeXBl
KG5hdmlnYXRpb25BY3Rpb24udHlwZSgpKQogICAgICwgbV9tb2RpZmllcnMobW9kaWZpZXJzRm9y
TmF2aWdhdGlvbkFjdGlvbihuYXZpZ2F0aW9uQWN0aW9uKSkKICAgICAsIG1fbW91c2VCdXR0b24o
V2ViTW91c2VFdmVudDo6Tm9CdXR0b24pCkBAIC0xMTYsMTEgKzExNiw4IEBAIEluamVjdGVkQnVu
ZGxlTmF2aWdhdGlvbkFjdGlvbjo6SW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uKFdlYkZy
YW1lKiBmcmFtZSwKICAgICAgICAgbV9zeW50aGV0aWNDbGlja1R5cGUgPSBzeW50aGV0aWNDbGlj
a1R5cGVGb3JOYXZpZ2F0aW9uQWN0aW9uKG5hdmlnYXRpb25BY3Rpb24pOwogICAgIH0KIAotICAg
IFJlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSA9IHBycEZvcm1TdGF0ZTsKLSAgICBpZiAoZm9y
bVN0YXRlKSB7Ci0gICAgICAgIEFTU0VSVChmb3JtU3RhdGUtPmZvcm0oKSk7Ci0gICAgICAgIG1f
Zm9ybUVsZW1lbnQgICA9IEluamVjdGVkQnVuZGxlTm9kZUhhbmRsZTo6Z2V0T3JDcmVhdGUoZm9y
bVN0YXRlLT5mb3JtKCkpOwotICAgIH0KKyAgICBpZiAoZm9ybVN0YXRlKQorICAgICAgICBtX2Zv
cm1FbGVtZW50ID0gSW5qZWN0ZWRCdW5kbGVOb2RlSGFuZGxlOjpnZXRPckNyZWF0ZShmb3JtU3Rh
dGUtPmZvcm0oKSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmNwcCBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5jcHAKaW5k
ZXggMTIxMDI1MWY1NGQ3ZjI1NTY1Zjg5YmVmNTQ0N2JjMWQ0OGFhYTZkNS4uMzYxZjllMmNhYjgy
OWQ4MzI1MDBmM2E2NDE1NDUwNTZhMTkwNDBjYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwCkBAIC0xNjMsNyAr
MTYzLDcgQEAgdm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6c2NoZWR1bGVMb2FkKFJlc291cmNlTG9h
ZGVyJiByZXNvdXJjZUxvYWRlciwgQ2FjaGVkUmVzb3UKICAgICB9CiAjZW5kaWYKIAotICAgIGlm
IChyZXNvdXJjZUxvYWRlci5kb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgp
LT5tYXliZUxvYWRSZXNvdXJjZShyZXNvdXJjZUxvYWRlciwgcmVzb3VyY2VMb2FkZXIucmVxdWVz
dCgpLCByZXNvdXJjZUxvYWRlci5yZXF1ZXN0KCkudXJsKCkpKSB7CisgICAgaWYgKHJlc291cmNl
TG9hZGVyLmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWF5YmVMb2Fk
UmVzb3VyY2UocmVzb3VyY2VMb2FkZXIsIHJlc291cmNlTG9hZGVyLnJlcXVlc3QoKSwgcmVzb3Vy
Y2VMb2FkZXIucmVxdWVzdCgpLnVybCgpKSkgewogICAgICAgICBMT0coTmV0d29ya1NjaGVkdWxp
bmcsICIoV2ViUHJvY2VzcykgV2ViTG9hZGVyU3RyYXRlZ3k6OnNjaGVkdWxlTG9hZCwgdXJsICcl
cycgd2lsbCBiZSBsb2FkZWQgZnJvbSBhcHBsaWNhdGlvbiBjYWNoZS4iLCByZXNvdXJjZUxvYWRl
ci51cmwoKS5zdHJpbmcoKS51dGY4KCkuZGF0YSgpKTsKICAgICAgICAgUkVMRUFTRV9MT0dfSUZf
QUxMT1dFRChyZXNvdXJjZUxvYWRlciwgInNjaGVkdWxlTG9hZDogVVJMIHdpbGwgYmUgbG9hZGVk
IGZyb20gYXBwbGljYXRpb24gY2FjaGUgKGZyYW1lID0gJXAsIHJlc291cmNlSUQgPSAlIiBQUkl1
NjQgIikiLCByZXNvdXJjZUxvYWRlci5mcmFtZSgpLCBpZGVudGlmaWVyKTsKICAgICAgICAgbV93
ZWJSZXNvdXJjZUxvYWRlcnMuc2V0KGlkZW50aWZpZXIsIFdlYlJlc291cmNlTG9hZGVyOjpjcmVh
dGUocmVzb3VyY2VMb2FkZXIsIHRyYWNraW5nUGFyYW1ldGVycykpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlTG9hZGVyLmNwcCBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUxvYWRlci5jcHAKaW5k
ZXggNzM4YjFkY2MzMzkzNzI2OTY4YTYyYzU3M2MzODI4OGQ5N2Y3YjNkMS4uMzhhODgyYmI4ZjRl
OTEwMjYwYjllNTJkOGU1NWRjMTE5ZWQwYjMxOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIuY3BwCkBAIC04Nyw3ICs4
Nyw3IEBAIHZvaWQgV2ViUmVzb3VyY2VMb2FkZXI6OndpbGxTZW5kUmVxdWVzdChSZXNvdXJjZVJl
cXVlc3QmJiBwcm9wb3NlZFJlcXVlc3QsIFJlc291CiAKICAgICBSZWZQdHI8V2ViUmVzb3VyY2VM
b2FkZXI+IHByb3RlY3RlZFRoaXModGhpcyk7CiAKLSAgICBpZiAobV9jb3JlTG9hZGVyLT5kb2N1
bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5tYXliZUxvYWRGYWxsYmFja0Zv
clJlZGlyZWN0KG1fY29yZUxvYWRlci5nZXQoKSwgcHJvcG9zZWRSZXF1ZXN0LCByZWRpcmVjdFJl
c3BvbnNlKSkKKyAgICBpZiAobV9jb3JlTG9hZGVyLT5kb2N1bWVudExvYWRlcigpLT5hcHBsaWNh
dGlvbkNhY2hlSG9zdCgpLm1heWJlTG9hZEZhbGxiYWNrRm9yUmVkaXJlY3QobV9jb3JlTG9hZGVy
LmdldCgpLCBwcm9wb3NlZFJlcXVlc3QsIHJlZGlyZWN0UmVzcG9uc2UpKQogICAgICAgICByZXR1
cm47CiAKICAgICBtX2NvcmVMb2FkZXItPndpbGxTZW5kUmVxdWVzdChXVEZNb3ZlKHByb3Bvc2Vk
UmVxdWVzdCksIHJlZGlyZWN0UmVzcG9uc2UsIFtwcm90ZWN0ZWRUaGlzXShSZXNvdXJjZVJlcXVl
c3QmJiByZXF1ZXN0KSB7CkBAIC0xMTAsNyArMTEwLDcgQEAgdm9pZCBXZWJSZXNvdXJjZUxvYWRl
cjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBi
b28KIAogICAgIFJlZjxXZWJSZXNvdXJjZUxvYWRlcj4gcHJvdGVjdCgqdGhpcyk7CiAKLSAgICBp
ZiAobV9jb3JlTG9hZGVyLT5kb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgp
LT5tYXliZUxvYWRGYWxsYmFja0ZvclJlc3BvbnNlKG1fY29yZUxvYWRlci5nZXQoKSwgcmVzcG9u
c2UpKQorICAgIGlmIChtX2NvcmVMb2FkZXItPmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9u
Q2FjaGVIb3N0KCkubWF5YmVMb2FkRmFsbGJhY2tGb3JSZXNwb25zZShtX2NvcmVMb2FkZXIuZ2V0
KCksIHJlc3BvbnNlKSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgbV9jb3JlTG9hZGVyLT5kaWRS
ZWNlaXZlUmVzcG9uc2UocmVzcG9uc2UpOwpAQCAtMTQ4LDcgKzE0OCw3IEBAIHZvaWQgV2ViUmVz
b3VyY2VMb2FkZXI6OmRpZEZhaWxSZXNvdXJjZUxvYWQoY29uc3QgUmVzb3VyY2VFcnJvciYgZXJy
b3IpCiAgICAgTE9HKE5ldHdvcmssICIoV2ViUHJvY2VzcykgV2ViUmVzb3VyY2VMb2FkZXI6OmRp
ZEZhaWxSZXNvdXJjZUxvYWQgZm9yICclcyciLCBtX2NvcmVMb2FkZXItPnVybCgpLnN0cmluZygp
LmxhdGluMSgpLmRhdGEoKSk7CiAgICAgUkVMRUFTRV9MT0dfSUZfQUxMT1dFRCgiZGlkRmFpbFJl
c291cmNlTG9hZDogKHBhZ2VJRCA9ICUiIFBSSXU2NCAiLCBmcmFtZUlEID0gJSIgUFJJdTY0ICIs
IHJlc291cmNlSUQgPSAlIiBQUkl1NjQgIikiLCBtX3RyYWNraW5nUGFyYW1ldGVycy5wYWdlSUQs
IG1fdHJhY2tpbmdQYXJhbWV0ZXJzLmZyYW1lSUQsIG1fdHJhY2tpbmdQYXJhbWV0ZXJzLnJlc291
cmNlSUQpOwogCi0gICAgaWYgKG1fY29yZUxvYWRlci0+ZG9jdW1lbnRMb2FkZXIoKS0+YXBwbGlj
YXRpb25DYWNoZUhvc3QoKS0+bWF5YmVMb2FkRmFsbGJhY2tGb3JFcnJvcihtX2NvcmVMb2FkZXIu
Z2V0KCksIGVycm9yKSkKKyAgICBpZiAobV9jb3JlTG9hZGVyLT5kb2N1bWVudExvYWRlcigpLT5h
cHBsaWNhdGlvbkNhY2hlSG9zdCgpLm1heWJlTG9hZEZhbGxiYWNrRm9yRXJyb3IobV9jb3JlTG9h
ZGVyLmdldCgpLCBlcnJvcikpCiAgICAgICAgIHJldHVybjsKICAgICBtX2NvcmVMb2FkZXItPmRp
ZEZhaWwoZXJyb3IpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9Q
bHVnaW5zL1BsdWdpblZpZXcuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5z
L1BsdWdpblZpZXcuY3BwCmluZGV4IGFjMWRhYWJhZDA2M2E0OTYyNmIzN2UwNDAyZTllYmY1NDky
ZDNiMWIuLjc4ODYyNjg1OWE2ODY1MTQ2NWJjMTcxZmExYWIwYjJiNTJhZjg3MzAgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3LmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5jcHAKQEAgLTE4
NSwyMyArMTg1LDE5IEBAIHN0YXRpYyBTdHJpbmcgYnVpbGRIVFRQSGVhZGVycyhjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJiByZXNwb25zZSwgbG9uZyBsb25nJiBleHBlCiAgICAgaWYgKCFyZXNwb25z
ZS5pc0hUVFAoKSkKICAgICAgICAgcmV0dXJuIFN0cmluZygpOwogCi0gICAgU3RyaW5nQnVpbGRl
ciBzdHJpbmdCdWlsZGVyOwotICAgIAotICAgIFN0cmluZyBzdGF0dXNMaW5lID0gU3RyaW5nOjpm
b3JtYXQoIkhUVFAgJWQgIiwgcmVzcG9uc2UuaHR0cFN0YXR1c0NvZGUoKSk7Ci0gICAgc3RyaW5n
QnVpbGRlci5hcHBlbmQoc3RhdHVzTGluZSk7Ci0gICAgc3RyaW5nQnVpbGRlci5hcHBlbmQocmVz
cG9uc2UuaHR0cFN0YXR1c1RleHQoKSk7Ci0gICAgc3RyaW5nQnVpbGRlci5hcHBlbmQoJ1xuJyk7
Ci0gICAgCi0gICAgSFRUUEhlYWRlck1hcDo6Y29uc3RfaXRlcmF0b3IgZW5kID0gcmVzcG9uc2Uu
aHR0cEhlYWRlckZpZWxkcygpLmVuZCgpOwotICAgIGZvciAoSFRUUEhlYWRlck1hcDo6Y29uc3Rf
aXRlcmF0b3IgaXQgPSByZXNwb25zZS5odHRwSGVhZGVyRmllbGRzKCkuYmVnaW4oKTsgaXQgIT0g
ZW5kOyArK2l0KSB7Ci0gICAgICAgIHN0cmluZ0J1aWxkZXIuYXBwZW5kKGl0LT5rZXkpOwotICAg
ICAgICBzdHJpbmdCdWlsZGVyLmFwcGVuZExpdGVyYWwoIjogIik7Ci0gICAgICAgIHN0cmluZ0J1
aWxkZXIuYXBwZW5kKGl0LT52YWx1ZSk7Ci0gICAgICAgIHN0cmluZ0J1aWxkZXIuYXBwZW5kKCdc
bicpOworICAgIFN0cmluZ0J1aWxkZXIgaGVhZGVyOworICAgIGhlYWRlci5hcHBlbmRMaXRlcmFs
KCJIVFRQICIpOworICAgIGhlYWRlci5hcHBlbmROdW1iZXIocmVzcG9uc2UuaHR0cFN0YXR1c0Nv
ZGUoKSk7CisgICAgaGVhZGVyLmFwcGVuZCgnICcpOworICAgIGhlYWRlci5hcHBlbmQocmVzcG9u
c2UuaHR0cFN0YXR1c1RleHQoKSk7CisgICAgaGVhZGVyLmFwcGVuZCgnXG4nKTsKKyAgICBmb3Ig
KGF1dG8mIGZpZWxkIDogcmVzcG9uc2UuaHR0cEhlYWRlckZpZWxkcygpKSB7CisgICAgICAgIGhl
YWRlci5hcHBlbmQoZmllbGQua2V5KTsKKyAgICAgICAgaGVhZGVyLmFwcGVuZExpdGVyYWwoIjog
Iik7CisgICAgICAgIGhlYWRlci5hcHBlbmQoZmllbGQudmFsdWUpOworICAgICAgICBoZWFkZXIu
YXBwZW5kKCdcbicpOwogICAgIH0KLSAgICAKLSAgICBTdHJpbmcgaGVhZGVycyA9IHN0cmluZ0J1
aWxkZXIudG9TdHJpbmcoKTsKLSAgICAKKwogICAgIC8vIElmIHRoZSBjb250ZW50IGlzIGVuY29k
ZWQgKG1vc3QgbGlrZWx5IGNvbXByZXNzZWQpLCB0aGVuIGRvbid0IHNlbmQgaXRzIGxlbmd0aCB0
byB0aGUgcGx1Z2luLAogICAgIC8vIHdoaWNoIGlzIG9ubHkgaW50ZXJlc3RlZCBpbiB0aGUgZGVj
b2RlZCBsZW5ndGgsIG5vdCB5ZXQga25vd24gYXQgdGhlIG1vbWVudC4KICAgICAvLyA8cmRhcjov
L3Byb2JsZW0vNDQ3MDU5OT4gdHJhY2tzIGEgcmVxdWVzdCBmb3IgLVtOU1VSTFJlc3BvbnNlIGV4
cGVjdGVkQ29udGVudExlbmd0aF0gdG8gaW5jb3Jwb3JhdGUgdGhpcyBsb2dpYy4KQEAgLTIwOSw3
ICsyMDUsNyBAQCBzdGF0aWMgU3RyaW5nIGJ1aWxkSFRUUEhlYWRlcnMoY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYgcmVzcG9uc2UsIGxvbmcgbG9uZyYgZXhwZQogICAgIGlmICghY29udGVudEVuY29k
aW5nLmlzTnVsbCgpICYmIGNvbnRlbnRFbmNvZGluZyAhPSAiaWRlbnRpdHkiKQogICAgICAgICBl
eHBlY3RlZENvbnRlbnRMZW5ndGggPSAtMTsKIAotICAgIHJldHVybiBoZWFkZXJzOworICAgIHJl
dHVybiBoZWFkZXIudG9TdHJpbmcoKTsKIH0KIAogc3RhdGljIHVpbnQzMl90IGxhc3RNb2RpZmll
ZERhdGVNUyhjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKQEAgLTI5MiwzNyArMjg4
LDE5IEBAIHN0YXRpYyBpbmxpbmUgV2ViUGFnZSogd2ViUGFnZShIVE1MUGx1Z0luRWxlbWVudCog
cGx1Z2luRWxlbWVudCkKICAgICByZXR1cm4gd2ViRnJhbWUtPnBhZ2UoKTsKIH0KIAotUmVmPFBs
dWdpblZpZXc+IFBsdWdpblZpZXc6OmNyZWF0ZShQYXNzUmVmUHRyPEhUTUxQbHVnSW5FbGVtZW50
PiBwbHVnaW5FbGVtZW50LCBQYXNzUmVmUHRyPFBsdWdpbj4gcGx1Z2luLCBjb25zdCBQbHVnaW46
OlBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpCitSZWY8UGx1Z2luVmlldz4gUGx1Z2luVmlldzo6Y3Jl
YXRlKEhUTUxQbHVnSW5FbGVtZW50JiBwbHVnaW5FbGVtZW50LCBSZWY8UGx1Z2luPiYmIHBsdWdp
biwgY29uc3QgUGx1Z2luOjpQYXJhbWV0ZXJzJiBwYXJhbWV0ZXJzKQogewotICAgIHJldHVybiBh
ZG9wdFJlZigqbmV3IFBsdWdpblZpZXcocGx1Z2luRWxlbWVudCwgcGx1Z2luLCBwYXJhbWV0ZXJz
KSk7CisgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgUGx1Z2luVmlldyhwbHVnaW5FbGVtZW50LCBX
VEZNb3ZlKHBsdWdpbiksIHBhcmFtZXRlcnMpKTsKIH0KIAotUGx1Z2luVmlldzo6UGx1Z2luVmll
dyhQYXNzUmVmUHRyPEhUTUxQbHVnSW5FbGVtZW50PiBwbHVnaW5FbGVtZW50LCBQYXNzUmVmUHRy
PFBsdWdpbj4gcGx1Z2luLCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpCitQ
bHVnaW5WaWV3OjpQbHVnaW5WaWV3KEhUTUxQbHVnSW5FbGVtZW50JiBwbHVnaW5FbGVtZW50LCBS
ZWY8UGx1Z2luPiYmIHBsdWdpbiwgY29uc3QgUGx1Z2luOjpQYXJhbWV0ZXJzJiBwYXJhbWV0ZXJz
KQogICAgIDogUGx1Z2luVmlld0Jhc2UoMCkKLSAgICAsIG1fcGx1Z2luRWxlbWVudChwbHVnaW5F
bGVtZW50KQotICAgICwgbV9wbHVnaW4ocGx1Z2luKQorICAgICwgbV9wbHVnaW5FbGVtZW50KCZw
bHVnaW5FbGVtZW50KQorICAgICwgbV9wbHVnaW4oV1RGTW92ZShwbHVnaW4pKQogICAgICwgbV93
ZWJQYWdlKHdlYlBhZ2UobV9wbHVnaW5FbGVtZW50LmdldCgpKSkKICAgICAsIG1fcGFyYW1ldGVy
cyhwYXJhbWV0ZXJzKQotICAgICwgbV9pc0luaXRpYWxpemVkKGZhbHNlKQotICAgICwgbV9pc1dh
aXRpbmdGb3JTeW5jaHJvbm91c0luaXRpYWxpemF0aW9uKGZhbHNlKQotICAgICwgbV9pc1dhaXRp
bmdVbnRpbE1lZGlhQ2FuU3RhcnQoZmFsc2UpCi0gICAgLCBtX2lzQmVpbmdEZXN0cm95ZWQoZmFs
c2UpCi0gICAgLCBtX3BsdWdpblByb2Nlc3NIYXNDcmFzaGVkKGZhbHNlKQotI2lmIEVOQUJMRShQ
UklNQVJZX1NOQVBTSE9UVEVEX1BMVUdJTl9IRVVSSVNUSUMpCi0gICAgLCBtX2RpZFBsdWdJblN0
YXJ0T2ZmU2NyZWVuKGZhbHNlKQotI2VuZGlmCiAgICAgLCBtX3BlbmRpbmdVUkxSZXF1ZXN0c1Rp
bWVyKFJ1bkxvb3A6Om1haW4oKSwgdGhpcywgJlBsdWdpblZpZXc6OnBlbmRpbmdVUkxSZXF1ZXN0
c1RpbWVyRmlyZWQpCi0jaWYgRU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCi0gICAgLCBtX25w
UnVudGltZU9iamVjdE1hcCh0aGlzKQotI2VuZGlmCi0gICAgLCBtX21hbnVhbFN0cmVhbVN0YXRl
KFN0cmVhbVN0YXRlSW5pdGlhbCkKICAgICAsIG1fcGx1Z2luU25hcHNob3RUaW1lcigqdGhpcywg
JlBsdWdpblZpZXc6OnBsdWdpblNuYXBzaG90VGltZXJGaXJlZCwgcGx1Z2luU25hcHNob3RUaW1l
ckRlbGF5KQotI2lmIEVOQUJMRShQUklNQVJZX1NOQVBTSE9UVEVEX1BMVUdJTl9IRVVSSVNUSUMp
IHx8IFBMQVRGT1JNKENPQ09BKQotICAgICwgbV9jb3VudFNuYXBzaG90UmV0cmllcygwKQotI2Vu
ZGlmCi0gICAgLCBtX2RpZFJlY2VpdmVVc2VySW50ZXJhY3Rpb24oZmFsc2UpCi0gICAgLCBtX3Bh
Z2VTY2FsZUZhY3RvcigxKQotICAgICwgbV9wbHVnaW5Jc1BsYXlpbmdBdWRpbyhmYWxzZSkKIHsK
ICAgICBtX3dlYlBhZ2UtPmFkZFBsdWdpblZpZXcodGhpcyk7CiB9CkBAIC0zNzQsNyArMzUyLDcg
QEAgdm9pZCBQbHVnaW5WaWV3OjpkZXN0cm95UGx1Z2luQW5kUmVzZXQoKQogICAgIGNhbmNlbEFs
bFN0cmVhbXMoKTsKIH0KIAotdm9pZCBQbHVnaW5WaWV3OjpyZWNyZWF0ZUFuZEluaXRpYWxpemUo
UGFzc1JlZlB0cjxQbHVnaW4+IHBsdWdpbikKK3ZvaWQgUGx1Z2luVmlldzo6cmVjcmVhdGVBbmRJ
bml0aWFsaXplKFJlZjxQbHVnaW4+JiYgcGx1Z2luKQogewogICAgIGlmIChtX3BsdWdpbikgewog
ICAgICAgICBpZiAobV9wbHVnaW5TbmFwc2hvdFRpbWVyLmlzQWN0aXZlKCkpCkBAIC0zODIsMTMg
KzM2MCwxMiBAQCB2b2lkIFBsdWdpblZpZXc6OnJlY3JlYXRlQW5kSW5pdGlhbGl6ZShQYXNzUmVm
UHRyPFBsdWdpbj4gcGx1Z2luKQogICAgICAgICBkZXN0cm95UGx1Z2luQW5kUmVzZXQoKTsKICAg
ICB9CiAKLSAgICAvLyBSZXNldCBtZW1iZXIgdmFyaWFibGVzIHRvIGluaXRpYWwgdmFsdWVzLgot
ICAgIG1fcGx1Z2luID0gcGx1Z2luOworICAgIG1fcGx1Z2luID0gV1RGTW92ZShwbHVnaW4pOwog
ICAgIG1faXNJbml0aWFsaXplZCA9IGZhbHNlOwogICAgIG1faXNXYWl0aW5nRm9yU3luY2hyb25v
dXNJbml0aWFsaXphdGlvbiA9IGZhbHNlOwogICAgIG1faXNXYWl0aW5nVW50aWxNZWRpYUNhblN0
YXJ0ID0gZmFsc2U7CiAgICAgbV9pc0JlaW5nRGVzdHJveWVkID0gZmFsc2U7Ci0gICAgbV9tYW51
YWxTdHJlYW1TdGF0ZSA9IFN0cmVhbVN0YXRlSW5pdGlhbDsKKyAgICBtX21hbnVhbFN0cmVhbVN0
YXRlID0gTWFudWFsU3RyZWFtU3RhdGU6OkluaXRpYWw7CiAgICAgbV90cmFuc2llbnRQYWludGlu
Z1NuYXBzaG90ID0gbnVsbHB0cjsKIAogICAgIGluaXRpYWxpemVQbHVnaW4oKTsKQEAgLTQyMSw4
ICszOTgsOCBAQCB2b2lkIFBsdWdpblZpZXc6Om1hbnVhbExvYWREaWRSZWNlaXZlUmVzcG9uc2Uo
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiAgICAgICAgIHJldHVybjsKIAogICAg
IGlmICghbV9pc0luaXRpYWxpemVkKSB7Ci0gICAgICAgIEFTU0VSVChtX21hbnVhbFN0cmVhbVN0
YXRlID09IFN0cmVhbVN0YXRlSW5pdGlhbCk7Ci0gICAgICAgIG1fbWFudWFsU3RyZWFtU3RhdGUg
PSBTdHJlYW1TdGF0ZUhhc1JlY2VpdmVkUmVzcG9uc2U7CisgICAgICAgIEFTU0VSVChtX21hbnVh
bFN0cmVhbVN0YXRlID09IE1hbnVhbFN0cmVhbVN0YXRlOjpJbml0aWFsKTsKKyAgICAgICAgbV9t
YW51YWxTdHJlYW1TdGF0ZSA9IE1hbnVhbFN0cmVhbVN0YXRlOjpIYXNSZWNlaXZlZFJlc3BvbnNl
OwogICAgICAgICBtX21hbnVhbFN0cmVhbVJlc3BvbnNlID0gcmVzcG9uc2U7CiAgICAgICAgIHJl
dHVybjsKICAgICB9CkBAIC00NDgsNyArNDI1LDcgQEAgdm9pZCBQbHVnaW5WaWV3OjptYW51YWxM
b2FkRGlkUmVjZWl2ZURhdGEoY29uc3QgY2hhciogYnl0ZXMsIGludCBsZW5ndGgpCiAgICAgICAg
IHJldHVybjsKIAogICAgIGlmICghbV9pc0luaXRpYWxpemVkKSB7Ci0gICAgICAgIEFTU0VSVCht
X21hbnVhbFN0cmVhbVN0YXRlID09IFN0cmVhbVN0YXRlSGFzUmVjZWl2ZWRSZXNwb25zZSk7Cisg
ICAgICAgIEFTU0VSVChtX21hbnVhbFN0cmVhbVN0YXRlID09IE1hbnVhbFN0cmVhbVN0YXRlOjpI
YXNSZWNlaXZlZFJlc3BvbnNlKTsKICAgICAgICAgaWYgKCFtX21hbnVhbFN0cmVhbURhdGEpCiAg
ICAgICAgICAgICBtX21hbnVhbFN0cmVhbURhdGEgPSBTaGFyZWRCdWZmZXI6OmNyZWF0ZSgpOwog
CkBAIC00NjYsOCArNDQzLDggQEAgdm9pZCBQbHVnaW5WaWV3OjptYW51YWxMb2FkRGlkRmluaXNo
TG9hZGluZygpCiAgICAgICAgIHJldHVybjsKIAogICAgIGlmICghbV9pc0luaXRpYWxpemVkKSB7
Ci0gICAgICAgIEFTU0VSVChtX21hbnVhbFN0cmVhbVN0YXRlID09IFN0cmVhbVN0YXRlSGFzUmVj
ZWl2ZWRSZXNwb25zZSk7Ci0gICAgICAgIG1fbWFudWFsU3RyZWFtU3RhdGUgPSBTdHJlYW1TdGF0
ZUZpbmlzaGVkOworICAgICAgICBBU1NFUlQobV9tYW51YWxTdHJlYW1TdGF0ZSA9PSBNYW51YWxT
dHJlYW1TdGF0ZTo6SGFzUmVjZWl2ZWRSZXNwb25zZSk7CisgICAgICAgIG1fbWFudWFsU3RyZWFt
U3RhdGUgPSBNYW51YWxTdHJlYW1TdGF0ZTo6RmluaXNoZWQ7CiAgICAgICAgIHJldHVybjsKICAg
ICB9CiAKQEAgLTQ4MSw3ICs0NTgsNyBAQCB2b2lkIFBsdWdpblZpZXc6Om1hbnVhbExvYWREaWRG
YWlsKGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQogICAgICAgICByZXR1cm47CiAKICAgICBp
ZiAoIW1faXNJbml0aWFsaXplZCkgewotICAgICAgICBtX21hbnVhbFN0cmVhbVN0YXRlID0gU3Ry
ZWFtU3RhdGVGaW5pc2hlZDsKKyAgICAgICAgbV9tYW51YWxTdHJlYW1TdGF0ZSA9IE1hbnVhbFN0
cmVhbVN0YXRlOjpGaW5pc2hlZDsKICAgICAgICAgbV9tYW51YWxTdHJlYW1FcnJvciA9IGVycm9y
OwogICAgICAgICBtX21hbnVhbFN0cmVhbURhdGEgPSBudWxscHRyOwogICAgICAgICByZXR1cm47
CkBAIC0xMDA3LDcgKzk4NCw3IEBAIHZvaWQgUGx1Z2luVmlldzo6d2lsbERldGF0Y2hSZW5kZXJl
cigpCiAgICAgbV9wbHVnaW4tPndpbGxEZXRhdGNoUmVuZGVyZXIoKTsKIH0KIAotUGFzc1JlZlB0
cjxTaGFyZWRCdWZmZXI+IFBsdWdpblZpZXc6OmxpdmVSZXNvdXJjZURhdGEoKSBjb25zdAorUmVm
UHRyPFNoYXJlZEJ1ZmZlcj4gUGx1Z2luVmlldzo6bGl2ZVJlc291cmNlRGF0YSgpIGNvbnN0CiB7
CiAgICAgaWYgKCFtX2lzSW5pdGlhbGl6ZWQgfHwgIW1fcGx1Z2luKQogICAgICAgICByZXR1cm4g
MDsKQEAgLTEzMDgsMTIgKzEyODUsMTIgQEAgdm9pZCBQbHVnaW5WaWV3OjpjYW5jZWxBbGxTdHJl
YW1zKCkKIAogdm9pZCBQbHVnaW5WaWV3OjpyZWRlbGl2ZXJNYW51YWxTdHJlYW0oKQogewotICAg
IGlmIChtX21hbnVhbFN0cmVhbVN0YXRlID09IFN0cmVhbVN0YXRlSW5pdGlhbCkgeworICAgIGlm
IChtX21hbnVhbFN0cmVhbVN0YXRlID09IE1hbnVhbFN0cmVhbVN0YXRlOjpJbml0aWFsKSB7CiAg
ICAgICAgIC8vIE5vdGhpbmcgdG8gZG8uCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBp
ZiAobV9tYW51YWxTdHJlYW1TdGF0ZSA9PSBTdHJlYW1TdGF0ZUZhaWxlZCkgeworICAgIGlmICht
X21hbnVhbFN0cmVhbVN0YXRlID09IE1hbnVhbFN0cmVhbVN0YXRlOjpGYWlsZWQpIHsKICAgICAg
ICAgbWFudWFsTG9hZERpZEZhaWwobV9tYW51YWxTdHJlYW1FcnJvcik7CiAgICAgICAgIHJldHVy
bjsKICAgICB9CkBAIC0xMzM0LDcgKzEzMTEsNyBAQCB2b2lkIFBsdWdpblZpZXc6OnJlZGVsaXZl
ck1hbnVhbFN0cmVhbSgpCiAgICAgICAgIG1fbWFudWFsU3RyZWFtRGF0YSA9IG51bGxwdHI7CiAg
ICAgfQogCi0gICAgaWYgKG1fbWFudWFsU3RyZWFtU3RhdGUgPT0gU3RyZWFtU3RhdGVGaW5pc2hl
ZCkKKyAgICBpZiAobV9tYW51YWxTdHJlYW1TdGF0ZSA9PSBNYW51YWxTdHJlYW1TdGF0ZTo6Rmlu
aXNoZWQpCiAgICAgICAgIG1hbnVhbExvYWREaWRGaW5pc2hMb2FkaW5nKCk7CiB9CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3LmggYi9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5oCmluZGV4IDAwNzU4
M2M0M2QwMzhiOWZhY2MyZWRiNzNkM2ExMjViNGJjZGE0ODMuLjM4YmU2MjFiODFhZjY5YTYzNzM3
MzYyYWNiMjAxN2VkMzc4MDc1ODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvUGx1Z2lucy9QbHVnaW5WaWV3LmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9Q
bHVnaW5zL1BsdWdpblZpZXcuaApAQCAtNjQsOSArNjQsOSBAQCBjbGFzcyBXZWJFdmVudDsKIAog
Y2xhc3MgUGx1Z2luVmlldyA6IHB1YmxpYyBXZWJDb3JlOjpQbHVnaW5WaWV3QmFzZSwgcHVibGlj
IFBsdWdpbkNvbnRyb2xsZXIsIHByaXZhdGUgV2ViQ29yZTo6TWVkaWFDYW5TdGFydExpc3RlbmVy
LCBwcml2YXRlIFdlYkZyYW1lOjpMb2FkTGlzdGVuZXIsIHByaXZhdGUgV2ViQ29yZTo6TWVkaWFQ
cm9kdWNlciB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFJlZjxQbHVnaW5WaWV3PiBjcmVhdGUoUGFz
c1JlZlB0cjxXZWJDb3JlOjpIVE1MUGx1Z0luRWxlbWVudD4sIFBhc3NSZWZQdHI8UGx1Z2luPiwg
Y29uc3QgUGx1Z2luOjpQYXJhbWV0ZXJzJik7CisgICAgc3RhdGljIFJlZjxQbHVnaW5WaWV3PiBj
cmVhdGUoV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQmLCBSZWY8UGx1Z2luPiYmLCBjb25zdCBQ
bHVnaW46OlBhcmFtZXRlcnMmKTsKIAotICAgIHZvaWQgcmVjcmVhdGVBbmRJbml0aWFsaXplKFBh
c3NSZWZQdHI8UGx1Z2luPik7CisgICAgdm9pZCByZWNyZWF0ZUFuZEluaXRpYWxpemUoUmVmPFBs
dWdpbj4mJik7CiAKICAgICBXZWJDb3JlOjpGcmFtZSogZnJhbWUoKSBjb25zdDsKIApAQCAtMTEy
LDEzICsxMTIsMTMgQEAgcHVibGljOgogCiAgICAgYm9vbCBzaG91bGRBbGxvd1NjcmlwdGluZygp
OwogCi0gICAgUGFzc1JlZlB0cjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+IGxpdmVSZXNvdXJjZURh
dGEoKSBjb25zdDsKKyAgICBSZWZQdHI8V2ViQ29yZTo6U2hhcmVkQnVmZmVyPiBsaXZlUmVzb3Vy
Y2VEYXRhKCkgY29uc3Q7CiAgICAgYm9vbCBwZXJmb3JtRGljdGlvbmFyeUxvb2t1cEF0TG9jYXRp
b24oY29uc3QgV2ViQ29yZTo6RmxvYXRQb2ludCYpOwogICAgIFN0cmluZyBnZXRTZWxlY3Rpb25G
b3JXb3JkQXRQb2ludChjb25zdCBXZWJDb3JlOjpGbG9hdFBvaW50JikgY29uc3Q7CiAgICAgYm9v
bCBleGlzdGluZ1NlbGVjdGlvbkNvbnRhaW5zUG9pbnQoY29uc3QgV2ViQ29yZTo6RmxvYXRQb2lu
dCYpIGNvbnN0OwogCiBwcml2YXRlOgotICAgIFBsdWdpblZpZXcoUGFzc1JlZlB0cjxXZWJDb3Jl
OjpIVE1MUGx1Z0luRWxlbWVudD4sIFBhc3NSZWZQdHI8UGx1Z2luPiwgY29uc3QgUGx1Z2luOjpQ
YXJhbWV0ZXJzJiBwYXJhbWV0ZXJzKTsKKyAgICBQbHVnaW5WaWV3KFdlYkNvcmU6OkhUTUxQbHVn
SW5FbGVtZW50JiwgUmVmPFBsdWdpbj4mJiwgY29uc3QgUGx1Z2luOjpQYXJhbWV0ZXJzJik7CiAg
ICAgdmlydHVhbCB+UGx1Z2luVmlldygpOwogCiAgICAgdm9pZCBpbml0aWFsaXplUGx1Z2luKCk7
CkBAIC0yNDQsMTQgKzI0NCwxNCBAQCBwcml2YXRlOgogICAgIFdlYlBhZ2UqIG1fd2ViUGFnZTsK
ICAgICBQbHVnaW46OlBhcmFtZXRlcnMgbV9wYXJhbWV0ZXJzOwogCi0gICAgYm9vbCBtX2lzSW5p
dGlhbGl6ZWQ7Ci0gICAgYm9vbCBtX2lzV2FpdGluZ0ZvclN5bmNocm9ub3VzSW5pdGlhbGl6YXRp
b247Ci0gICAgYm9vbCBtX2lzV2FpdGluZ1VudGlsTWVkaWFDYW5TdGFydDsKLSAgICBib29sIG1f
aXNCZWluZ0Rlc3Ryb3llZDsKLSAgICBib29sIG1fcGx1Z2luUHJvY2Vzc0hhc0NyYXNoZWQ7Cisg
ICAgYm9vbCBtX2lzSW5pdGlhbGl6ZWQgeyBmYWxzZSB9OworICAgIGJvb2wgbV9pc1dhaXRpbmdG
b3JTeW5jaHJvbm91c0luaXRpYWxpemF0aW9uIHsgZmFsc2UgfTsKKyAgICBib29sIG1faXNXYWl0
aW5nVW50aWxNZWRpYUNhblN0YXJ0IHsgZmFsc2UgfTsKKyAgICBib29sIG1faXNCZWluZ0Rlc3Ry
b3llZCB7IGZhbHNlIH07CisgICAgYm9vbCBtX3BsdWdpblByb2Nlc3NIYXNDcmFzaGVkIHsgZmFs
c2UgfTsKIAogI2lmIEVOQUJMRShQUklNQVJZX1NOQVBTSE9UVEVEX1BMVUdJTl9IRVVSSVNUSUMp
Ci0gICAgYm9vbCBtX2RpZFBsdWdJblN0YXJ0T2ZmU2NyZWVuOworICAgIGJvb2wgbV9kaWRQbHVn
SW5TdGFydE9mZlNjcmVlbiB7IGZhbHNlIH07CiAjZW5kaWYKIAogICAgIC8vIFBlbmRpbmcgVVJM
UmVxdWVzdHMgdGhhdCB0aGUgcGx1Zy1pbiBoYXMgbWFkZS4KQEAgLTI2NywxOCArMjY3LDEzIEBA
IHByaXZhdGU6CiAKICNpZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKICAgICAvLyBBIG1h
cCBvZiBhbGwgcmVsYXRlZCBOUE9iamVjdHMgZm9yIHRoaXMgcGx1Zy1pbiB2aWV3LgotICAgIE5Q
UnVudGltZU9iamVjdE1hcCBtX25wUnVudGltZU9iamVjdE1hcDsKKyAgICBOUFJ1bnRpbWVPYmpl
Y3RNYXAgbV9ucFJ1bnRpbWVPYmplY3RNYXAgeyB0aGlzIH07CiAjZW5kaWYKIAogICAgIC8vIFRo
ZSBtYW51YWwgc3RyZWFtIHN0YXRlLiBUaGlzIGlzIHVzZWQgc28gd2UgY2FuIGRlbGl2ZXIgYSBt
YW51YWwgc3RyZWFtIHRvIGEgcGx1Zy1pbgogICAgIC8vIHdoZW4gaXQgaXMgaW5pdGlhbGl6ZWQu
Ci0gICAgZW51bSBNYW51YWxTdHJlYW1TdGF0ZSB7Ci0gICAgICAgIFN0cmVhbVN0YXRlSW5pdGlh
bCwKLSAgICAgICAgU3RyZWFtU3RhdGVIYXNSZWNlaXZlZFJlc3BvbnNlLAotICAgICAgICBTdHJl
YW1TdGF0ZUZpbmlzaGVkLAotICAgICAgICBTdHJlYW1TdGF0ZUZhaWxlZAotICAgIH07Ci0gICAg
TWFudWFsU3RyZWFtU3RhdGUgbV9tYW51YWxTdHJlYW1TdGF0ZTsKKyAgICBlbnVtIGNsYXNzIE1h
bnVhbFN0cmVhbVN0YXRlIHsgSW5pdGlhbCwgSGFzUmVjZWl2ZWRSZXNwb25zZSwgRmluaXNoZWQs
IEZhaWxlZCB9OworICAgIE1hbnVhbFN0cmVhbVN0YXRlIG1fbWFudWFsU3RyZWFtU3RhdGUgeyBN
YW51YWxTdHJlYW1TdGF0ZTo6SW5pdGlhbCB9OwogCiAgICAgV2ViQ29yZTo6UmVzb3VyY2VSZXNw
b25zZSBtX21hbnVhbFN0cmVhbVJlc3BvbnNlOwogICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3Ig
bV9tYW51YWxTdHJlYW1FcnJvcjsKQEAgLTI4OSwxMyArMjg0LDEzIEBAIHByaXZhdGU6CiAgICAg
Ly8gVGhpcyB0aW1lciBpcyB1c2VkIHdoZW4gcGx1Z2luIHNuYXBzaG90dGluZyBpcyBlbmFibGVk
LCB0byBjYXB0dXJlIGEgcGx1Z2luIHBsYWNlaG9sZGVyLgogICAgIFdlYkNvcmU6OkRlZmVycmFi
bGVPbmVTaG90VGltZXIgbV9wbHVnaW5TbmFwc2hvdFRpbWVyOwogI2lmIEVOQUJMRShQUklNQVJZ
X1NOQVBTSE9UVEVEX1BMVUdJTl9IRVVSSVNUSUMpIHx8IFBMQVRGT1JNKENPQ09BKQotICAgIHVu
c2lnbmVkIG1fY291bnRTbmFwc2hvdFJldHJpZXM7CisgICAgdW5zaWduZWQgbV9jb3VudFNuYXBz
aG90UmV0cmllcyB7IDAgfTsKICNlbmRpZgotICAgIGJvb2wgbV9kaWRSZWNlaXZlVXNlckludGVy
YWN0aW9uOworICAgIGJvb2wgbV9kaWRSZWNlaXZlVXNlckludGVyYWN0aW9uIHsgZmFsc2UgfTsK
IAotICAgIGRvdWJsZSBtX3BhZ2VTY2FsZUZhY3RvcjsKKyAgICBkb3VibGUgbV9wYWdlU2NhbGVG
YWN0b3IgeyAxIH07CiAKLSAgICBib29sIG1fcGx1Z2luSXNQbGF5aW5nQXVkaW87CisgICAgYm9v
bCBtX3BsdWdpbklzUGxheWluZ0F1ZGlvIHsgZmFsc2UgfTsKIH07CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3Vw
cG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwCmluZGV4IGRjM2ZlZDVjOWJiZmUzMGM4YmQy
MGFlZTllOWIwMWQ4MmRmZTRmZTguLjNkNzJjNjczMTc2ZTBkMDFjZjUzM2EzY2MzNTllOWJiMGFj
MjVhNmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvV2ViQ2hyb21lQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAKQEAgLTEwMywyMCArMTAzLDIwIEBAIHN0
YXRpYyBkb3VibGUgYXJlYShXZWJGcmFtZSogZnJhbWUpCiB9CiAKIAotc3RhdGljIFdlYkZyYW1l
KiBmaW5kTGFyZ2VzdEZyYW1lSW5GcmFtZVNldChXZWJQYWdlKiBwYWdlKQorc3RhdGljIFdlYkZy
YW1lKiBmaW5kTGFyZ2VzdEZyYW1lSW5GcmFtZVNldChXZWJQYWdlJiBwYWdlKQogewogICAgIC8v
IEFwcHJveGltYXRlIHdoYXQgYSB1c2VyIGNvdWxkIGNvbnNpZGVyIGEgZGVmYXVsdCB0YXJnZXQg
ZnJhbWUgZm9yIGFwcGxpY2F0aW9uIG1lbnUgb3BlcmF0aW9ucy4KIAotICAgIFdlYkZyYW1lKiBt
YWluRnJhbWUgPSBwYWdlLT5tYWluV2ViRnJhbWUoKTsKKyAgICBXZWJGcmFtZSogbWFpbkZyYW1l
ID0gcGFnZS5tYWluV2ViRnJhbWUoKTsKICAgICBpZiAoIW1haW5GcmFtZSB8fCAhbWFpbkZyYW1l
LT5pc0ZyYW1lU2V0KCkpCi0gICAgICAgIHJldHVybiAwOworICAgICAgICByZXR1cm4gbnVsbHB0
cjsKIAotICAgIFdlYkZyYW1lKiBsYXJnZXN0U29GYXIgPSAwOworICAgIFdlYkZyYW1lKiBsYXJn
ZXN0U29GYXIgPSBudWxscHRyOwogCiAgICAgUmVmPEFQSTo6QXJyYXk+IGZyYW1lQ2hpbGRyZW4g
PSBtYWluRnJhbWUtPmNoaWxkRnJhbWVzKCk7CiAgICAgc2l6ZV90IGNvdW50ID0gZnJhbWVDaGls
ZHJlbi0+c2l6ZSgpOwogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgY291bnQ7ICsraSkgewot
ICAgICAgICBXZWJGcmFtZSogY2hpbGRGcmFtZSA9IGZyYW1lQ2hpbGRyZW4tPmF0PFdlYkZyYW1l
PihpKTsKKyAgICAgICAgYXV0byogY2hpbGRGcmFtZSA9IGZyYW1lQ2hpbGRyZW4tPmF0PFdlYkZy
YW1lPihpKTsKICAgICAgICAgaWYgKCFsYXJnZXN0U29GYXIgfHwgYXJlYShjaGlsZEZyYW1lKSA+
IGFyZWEobGFyZ2VzdFNvRmFyKSkKICAgICAgICAgICAgIGxhcmdlc3RTb0ZhciA9IGNoaWxkRnJh
bWU7CiAgICAgfQpAQCAtMTI0LDYgKzEyNCwxNSBAQCBzdGF0aWMgV2ViRnJhbWUqIGZpbmRMYXJn
ZXN0RnJhbWVJbkZyYW1lU2V0KFdlYlBhZ2UqIHBhZ2UpCiAgICAgcmV0dXJuIGxhcmdlc3RTb0Zh
cjsKIH0KIAorV2ViQ2hyb21lQ2xpZW50OjpXZWJDaHJvbWVDbGllbnQoV2ViUGFnZSYgcGFnZSkK
KyAgICA6IG1fcGFnZShwYWdlKQoreworfQorCitpbmxpbmUgV2ViQ2hyb21lQ2xpZW50Ojp+V2Vi
Q2hyb21lQ2xpZW50KCkKK3sKK30KKwogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmNocm9tZURlc3Ry
b3llZCgpCiB7CiAgICAgZGVsZXRlIHRoaXM7CkBAIC0xMzEsNyArMTQwLDcgQEAgdm9pZCBXZWJD
aHJvbWVDbGllbnQ6OmNocm9tZURlc3Ryb3llZCgpCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpz
ZXRXaW5kb3dSZWN0KGNvbnN0IEZsb2F0UmVjdCYgd2luZG93RnJhbWUpCiB7Ci0gICAgbV9wYWdl
LT5zZW5kU2V0V2luZG93RnJhbWUod2luZG93RnJhbWUpOworICAgIG1fcGFnZS5zZW5kU2V0V2lu
ZG93RnJhbWUod2luZG93RnJhbWUpOwogfQogCiBGbG9hdFJlY3QgV2ViQ2hyb21lQ2xpZW50Ojp3
aW5kb3dSZWN0KCkKQEAgLTE0MCwxMyArMTQ5LDEzIEBAIEZsb2F0UmVjdCBXZWJDaHJvbWVDbGll
bnQ6OndpbmRvd1JlY3QoKQogICAgIHJldHVybiBGbG9hdFJlY3QoKTsKICNlbHNlCiAjaWYgUExB
VEZPUk0oTUFDKQotICAgIGlmIChtX3BhZ2UtPmhhc0NhY2hlZFdpbmRvd0ZyYW1lKCkpCi0gICAg
ICAgIHJldHVybiBtX3BhZ2UtPndpbmRvd0ZyYW1lSW5VbmZsaXBwZWRTY3JlZW5Db29yZGluYXRl
cygpOworICAgIGlmIChtX3BhZ2UuaGFzQ2FjaGVkV2luZG93RnJhbWUoKSkKKyAgICAgICAgcmV0
dXJuIG1fcGFnZS53aW5kb3dGcmFtZUluVW5mbGlwcGVkU2NyZWVuQ29vcmRpbmF0ZXMoKTsKICNl
bmRpZgogCiAgICAgRmxvYXRSZWN0IG5ld1dpbmRvd0ZyYW1lOwogCi0gICAgaWYgKCFXZWJQcm9j
ZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpHZXRXaW5kb3dGcmFtZSgpLCBNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpHZXRXaW5kb3dGcmFtZTo6UmVwbHkobmV3V2luZG93RnJhbWUpLCBtX3BhZ2UtPnBhZ2VJ
RCgpKSkKKyAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25u
ZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFdpbmRvd0ZyYW1l
KCksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFdpbmRvd0ZyYW1lOjpSZXBseShuZXdXaW5k
b3dGcmFtZSksIG1fcGFnZS5wYWdlSUQoKSkpCiAgICAgICAgIHJldHVybiBGbG9hdFJlY3QoKTsK
IAogICAgIHJldHVybiBuZXdXaW5kb3dGcmFtZTsKQEAgLTE1NSwzMyArMTY0LDMzIEBAIEZsb2F0
UmVjdCBXZWJDaHJvbWVDbGllbnQ6OndpbmRvd1JlY3QoKQogCiBGbG9hdFJlY3QgV2ViQ2hyb21l
Q2xpZW50OjpwYWdlUmVjdCgpCiB7Ci0gICAgcmV0dXJuIEZsb2F0UmVjdChGbG9hdFBvaW50KCks
IG1fcGFnZS0+c2l6ZSgpKTsKKyAgICByZXR1cm4gRmxvYXRSZWN0KEZsb2F0UG9pbnQoKSwgbV9w
YWdlLnNpemUoKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpmb2N1cygpCiB7Ci0gICAg
bV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldEZvY3VzKHRydWUpKTsKKyAg
ICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRGb2N1cyh0cnVlKSk7CiB9
CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojp1bmZvY3VzKCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQo
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0Rm9jdXMoZmFsc2UpKTsKKyAgICBtX3BhZ2Uuc2Vu
ZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRGb2N1cyhmYWxzZSkpOwogfQogCiAjaWYgUExB
VEZPUk0oQ09DT0EpCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZWxlbWVudERpZEZvY3VzKGNvbnN0
IFdlYkNvcmU6Ok5vZGUqIG5vZGUpCiB7Ci0gICAgbV9wYWdlLT5lbGVtZW50RGlkRm9jdXMoY29u
c3RfY2FzdDxXZWJDb3JlOjpOb2RlKj4obm9kZSkpOworICAgIG1fcGFnZS5lbGVtZW50RGlkRm9j
dXMoY29uc3RfY2FzdDxXZWJDb3JlOjpOb2RlKj4obm9kZSkpOwogfQogCiB2b2lkIFdlYkNocm9t
ZUNsaWVudDo6ZWxlbWVudERpZEJsdXIoY29uc3QgV2ViQ29yZTo6Tm9kZSogbm9kZSkKIHsKLSAg
ICBtX3BhZ2UtPmVsZW1lbnREaWRCbHVyKGNvbnN0X2Nhc3Q8V2ViQ29yZTo6Tm9kZSo+KG5vZGUp
KTsKKyAgICBtX3BhZ2UuZWxlbWVudERpZEJsdXIoY29uc3RfY2FzdDxXZWJDb3JlOjpOb2RlKj4o
bm9kZSkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6bWFrZUZpcnN0UmVzcG9uZGVyKCkK
IHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6TWFrZUZpcnN0UmVz
cG9uZGVyKCkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6Ok1ha2VG
aXJzdFJlc3BvbmRlcigpKTsKIH0gICAgCiAjZW5kaWYgICAgCiAKQEAgLTE5Myw3ICsyMDIsNyBA
QCBib29sIFdlYkNocm9tZUNsaWVudDo6Y2FuVGFrZUZvY3VzKEZvY3VzRGlyZWN0aW9uKQogCiB2
b2lkIFdlYkNocm9tZUNsaWVudDo6dGFrZUZvY3VzKEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbikK
IHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6VGFrZUZvY3VzKGRp
cmVjdGlvbikpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlRha2VG
b2N1cyhkaXJlY3Rpb24pKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmZvY3VzZWRFbGVt
ZW50Q2hhbmdlZChFbGVtZW50KiBlbGVtZW50KQpAQCAtMjA3LDE0ICsyMTYsMTQgQEAgdm9pZCBX
ZWJDaHJvbWVDbGllbnQ6OmZvY3VzZWRFbGVtZW50Q2hhbmdlZChFbGVtZW50KiBlbGVtZW50KQog
CiAgICAgV2ViRnJhbWUqIHdlYkZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmVsZW1l
bnQtPmRvY3VtZW50KCkuZnJhbWUoKSk7CiAgICAgQVNTRVJUKHdlYkZyYW1lKTsKLSAgICBtX3Bh
Z2UtPmluamVjdGVkQnVuZGxlRm9ybUNsaWVudCgpLmRpZEZvY3VzVGV4dEZpZWxkKG1fcGFnZSwg
JmlucHV0RWxlbWVudCwgd2ViRnJhbWUpOworICAgIG1fcGFnZS5pbmplY3RlZEJ1bmRsZUZvcm1D
bGllbnQoKS5kaWRGb2N1c1RleHRGaWVsZCgmbV9wYWdlLCAmaW5wdXRFbGVtZW50LCB3ZWJGcmFt
ZSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpmb2N1c2VkRnJhbWVDaGFuZ2VkKEZyYW1l
KiBmcmFtZSkKIHsKICAgICBXZWJGcmFtZSogd2ViRnJhbWUgPSBmcmFtZSA/IFdlYkZyYW1lOjpm
cm9tQ29yZUZyYW1lKCpmcmFtZSkgOiBudWxscHRyOwogCi0gICAgV2ViUHJvY2Vzczo6c2luZ2xl
dG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpGb2N1c2VkRnJhbWVDaGFuZ2VkKHdlYkZyYW1lID8gd2ViRnJhbWUtPmZyYW1lSUQoKSA6
IDApLCBtX3BhZ2UtPnBhZ2VJRCgpKTsKKyAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJl
bnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZvY3Vz
ZWRGcmFtZUNoYW5nZWQod2ViRnJhbWUgPyB3ZWJGcmFtZS0+ZnJhbWVJRCgpIDogMCksIG1fcGFn
ZS5wYWdlSUQoKSk7CiB9CiAKIFBhZ2UqIFdlYkNocm9tZUNsaWVudDo6Y3JlYXRlV2luZG93KEZy
YW1lKiBmcmFtZSwgY29uc3QgRnJhbWVMb2FkUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgV2luZG93
RmVhdHVyZXMmIHdpbmRvd0ZlYXR1cmVzLCBjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBuYXZpZ2F0
aW9uQWN0aW9uKQpAQCAtMjM0LDEzICsyNDMsMTMgQEAgUGFnZSogV2ViQ2hyb21lQ2xpZW50Ojpj
cmVhdGVXaW5kb3coRnJhbWUqIGZyYW1lLCBjb25zdCBGcmFtZUxvYWRSZXF1ZXN0JiByZXF1ZXMK
ICAgICBuYXZpZ2F0aW9uQWN0aW9uRGF0YS5tb3VzZUJ1dHRvbiA9IEluamVjdGVkQnVuZGxlTmF2
aWdhdGlvbkFjdGlvbjo6bW91c2VCdXR0b25Gb3JOYXZpZ2F0aW9uQWN0aW9uKG5hdmlnYXRpb25B
Y3Rpb24pOwogICAgIG5hdmlnYXRpb25BY3Rpb25EYXRhLnN5bnRoZXRpY0NsaWNrVHlwZSA9IElu
amVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbjo6c3ludGhldGljQ2xpY2tUeXBlRm9yTmF2aWdh
dGlvbkFjdGlvbihuYXZpZ2F0aW9uQWN0aW9uKTsKICAgICBuYXZpZ2F0aW9uQWN0aW9uRGF0YS51
c2VyR2VzdHVyZVRva2VuSWRlbnRpZmllciA9IHdlYlByb2Nlc3MudXNlckdlc3R1cmVUb2tlbklk
ZW50aWZpZXIobmF2aWdhdGlvbkFjdGlvbi51c2VyR2VzdHVyZVRva2VuKCkpOwotICAgIG5hdmln
YXRpb25BY3Rpb25EYXRhLmNhbkhhbmRsZVJlcXVlc3QgPSBtX3BhZ2UtPmNhbkhhbmRsZVJlcXVl
c3QocmVxdWVzdC5yZXNvdXJjZVJlcXVlc3QoKSk7CisgICAgbmF2aWdhdGlvbkFjdGlvbkRhdGEu
Y2FuSGFuZGxlUmVxdWVzdCA9IG1fcGFnZS5jYW5IYW5kbGVSZXF1ZXN0KHJlcXVlc3QucmVzb3Vy
Y2VSZXF1ZXN0KCkpOwogICAgIG5hdmlnYXRpb25BY3Rpb25EYXRhLnNob3VsZE9wZW5FeHRlcm5h
bFVSTHNQb2xpY3kgPSBuYXZpZ2F0aW9uQWN0aW9uLnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xp
Y3koKTsKICAgICBuYXZpZ2F0aW9uQWN0aW9uRGF0YS5kb3dubG9hZEF0dHJpYnV0ZSA9IG5hdmln
YXRpb25BY3Rpb24uZG93bmxvYWRBdHRyaWJ1dGUoKTsKIAogICAgIHVpbnQ2NF90IG5ld1BhZ2VJ
RCA9IDA7CiAgICAgV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycyBwYXJhbWV0ZXJzOwotICAgIGlm
ICghd2ViUHJvY2Vzcy5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdl
czo6V2ViUGFnZVByb3h5OjpDcmVhdGVOZXdQYWdlKHdlYkZyYW1lLT5mcmFtZUlEKCksIFNlY3Vy
aXR5T3JpZ2luRGF0YTo6ZnJvbUZyYW1lKGZyYW1lKSwgcmVxdWVzdC5yZXNvdXJjZVJlcXVlc3Qo
KSwgd2luZG93RmVhdHVyZXMsIG5hdmlnYXRpb25BY3Rpb25EYXRhKSwgTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6Q3JlYXRlTmV3UGFnZTo6UmVwbHkobmV3UGFnZUlELCBwYXJhbWV0ZXJzKSwgbV9w
YWdlLT5wYWdlSUQoKSkpCisgICAgaWYgKCF3ZWJQcm9jZXNzLnBhcmVudFByb2Nlc3NDb25uZWN0
aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkNyZWF0ZU5ld1BhZ2Uod2Vi
RnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tRnJhbWUoZnJhbWUpLCBy
ZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLCB3aW5kb3dGZWF0dXJlcywgbmF2aWdhdGlvbkFjdGlv
bkRhdGEpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpDcmVhdGVOZXdQYWdlOjpSZXBseShuZXdQ
YWdlSUQsIHBhcmFtZXRlcnMpLCBtX3BhZ2UucGFnZUlEKCkpKQogICAgICAgICByZXR1cm4gbnVs
bHB0cjsKIAogICAgIGlmICghbmV3UGFnZUlEKQpAQCAtMjUyLDMyICsyNjEsMzIgQEAgUGFnZSog
V2ViQ2hyb21lQ2xpZW50OjpjcmVhdGVXaW5kb3coRnJhbWUqIGZyYW1lLCBjb25zdCBGcmFtZUxv
YWRSZXF1ZXN0JiByZXF1ZXMKIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNob3coKQogewotICAg
IG1fcGFnZS0+c2hvdygpOworICAgIG1fcGFnZS5zaG93KCk7CiB9CiAKIGJvb2wgV2ViQ2hyb21l
Q2xpZW50OjpjYW5SdW5Nb2RhbCgpCiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+Y2FuUnVuTW9kYWwo
KTsKKyAgICByZXR1cm4gbV9wYWdlLmNhblJ1bk1vZGFsKCk7CiB9CiAKIHZvaWQgV2ViQ2hyb21l
Q2xpZW50OjpydW5Nb2RhbCgpCiB7Ci0gICAgbV9wYWdlLT5ydW5Nb2RhbCgpOworICAgIG1fcGFn
ZS5ydW5Nb2RhbCgpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0VG9vbGJhcnNWaXNp
YmxlKGJvb2wgdG9vbGJhcnNBcmVWaXNpYmxlKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdl
czo6V2ViUGFnZVByb3h5OjpTZXRUb29sYmFyc0FyZVZpc2libGUodG9vbGJhcnNBcmVWaXNpYmxl
KSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0VG9vbGJhcnNB
cmVWaXNpYmxlKHRvb2xiYXJzQXJlVmlzaWJsZSkpOwogfQogCiBib29sIFdlYkNocm9tZUNsaWVu
dDo6dG9vbGJhcnNWaXNpYmxlKCkKIHsKLSAgICBBUEk6OkluamVjdGVkQnVuZGxlOjpQYWdlVUlD
bGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHkgdG9vbGJhcnNWaXNpYmlsaXR5ID0gbV9wYWdlLT5p
bmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkudG9vbGJhcnNBcmVWaXNpYmxlKG1fcGFnZSk7CisgICAg
QVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5IHRv
b2xiYXJzVmlzaWJpbGl0eSA9IG1fcGFnZS5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkudG9vbGJh
cnNBcmVWaXNpYmxlKCZtX3BhZ2UpOwogICAgIGlmICh0b29sYmFyc1Zpc2liaWxpdHkgIT0gQVBJ
OjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5OjpVbmtu
b3duKQogICAgICAgICByZXR1cm4gdG9vbGJhcnNWaXNpYmlsaXR5ID09IEFQSTo6SW5qZWN0ZWRC
dW5kbGU6OlBhZ2VVSUNsaWVudDo6VUlFbGVtZW50VmlzaWJpbGl0eTo6VmlzaWJsZTsKICAgICAK
ICAgICBib29sIHRvb2xiYXJzQXJlVmlzaWJsZSA9IHRydWU7Ci0gICAgaWYgKCFXZWJQcm9jZXNz
OjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdl
czo6V2ViUGFnZVByb3h5OjpHZXRUb29sYmFyc0FyZVZpc2libGUoKSwgTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6R2V0VG9vbGJhcnNBcmVWaXNpYmxlOjpSZXBseSh0b29sYmFyc0FyZVZpc2libGUp
LCBtX3BhZ2UtPnBhZ2VJRCgpKSkKKyAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBh
cmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OkdldFRvb2xiYXJzQXJlVmlzaWJsZSgpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRUb29s
YmFyc0FyZVZpc2libGU6OlJlcGx5KHRvb2xiYXJzQXJlVmlzaWJsZSksIG1fcGFnZS5wYWdlSUQo
KSkpCiAgICAgICAgIHJldHVybiB0cnVlOwogCiAgICAgcmV0dXJuIHRvb2xiYXJzQXJlVmlzaWJs
ZTsKQEAgLTI4NSwxNyArMjk0LDE3IEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50Ojp0b29sYmFyc1Zp
c2libGUoKQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0U3RhdHVzYmFyVmlzaWJsZShib29s
IHN0YXR1c0JhcklzVmlzaWJsZSkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6U2V0U3RhdHVzQmFySXNWaXNpYmxlKHN0YXR1c0JhcklzVmlzaWJsZSkpOworICAg
IG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldFN0YXR1c0JhcklzVmlzaWJs
ZShzdGF0dXNCYXJJc1Zpc2libGUpKTsKIH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnN0YXR1
c2JhclZpc2libGUoKQogewotICAgIEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VVSUNsaWVudDo6
VUlFbGVtZW50VmlzaWJpbGl0eSBzdGF0dXNiYXJWaXNpYmlsaXR5ID0gbV9wYWdlLT5pbmplY3Rl
ZEJ1bmRsZVVJQ2xpZW50KCkuc3RhdHVzQmFySXNWaXNpYmxlKG1fcGFnZSk7CisgICAgQVBJOjpJ
bmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5IHN0YXR1c2Jh
clZpc2liaWxpdHkgPSBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLnN0YXR1c0Jhcklz
VmlzaWJsZSgmbV9wYWdlKTsKICAgICBpZiAoc3RhdHVzYmFyVmlzaWJpbGl0eSAhPSBBUEk6Oklu
amVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHk6OlVua25vd24p
CiAgICAgICAgIHJldHVybiBzdGF0dXNiYXJWaXNpYmlsaXR5ID09IEFQSTo6SW5qZWN0ZWRCdW5k
bGU6OlBhZ2VVSUNsaWVudDo6VUlFbGVtZW50VmlzaWJpbGl0eTo6VmlzaWJsZTsKIAogICAgIGJv
b2wgc3RhdHVzQmFySXNWaXNpYmxlID0gdHJ1ZTsKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmds
ZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OkdldFN0YXR1c0JhcklzVmlzaWJsZSgpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjpHZXRTdGF0dXNCYXJJc1Zpc2libGU6OlJlcGx5KHN0YXR1c0JhcklzVmlzaWJsZSksIG1fcGFn
ZS0+cGFnZUlEKCkpKQorICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJv
Y2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0U3Rh
dHVzQmFySXNWaXNpYmxlKCksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFN0YXR1c0Jhcklz
VmlzaWJsZTo6UmVwbHkoc3RhdHVzQmFySXNWaXNpYmxlKSwgbV9wYWdlLnBhZ2VJRCgpKSkKICAg
ICAgICAgcmV0dXJuIHRydWU7CiAKICAgICByZXR1cm4gc3RhdHVzQmFySXNWaXNpYmxlOwpAQCAt
MzE0LDE3ICszMjMsMTcgQEAgYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnNjcm9sbGJhcnNWaXNpYmxl
KCkKIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNldE1lbnViYXJWaXNpYmxlKGJvb2wgbWVudUJh
clZpc2libGUpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNl
dE1lbnVCYXJJc1Zpc2libGUobWVudUJhclZpc2libGUpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpTZXRNZW51QmFySXNWaXNpYmxlKG1lbnVCYXJWaXNpYmxlKSk7
CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjptZW51YmFyVmlzaWJsZSgpCiB7Ci0gICAgQVBJ
OjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5IG1lbnVi
YXJWaXNpYmlsaXR5ID0gbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkubWVudUJhcklz
VmlzaWJsZShtX3BhZ2UpOworICAgIEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VVSUNsaWVudDo6
VUlFbGVtZW50VmlzaWJpbGl0eSBtZW51YmFyVmlzaWJpbGl0eSA9IG1fcGFnZS5pbmplY3RlZEJ1
bmRsZVVJQ2xpZW50KCkubWVudUJhcklzVmlzaWJsZSgmbV9wYWdlKTsKICAgICBpZiAobWVudWJh
clZpc2liaWxpdHkgIT0gQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1l
bnRWaXNpYmlsaXR5OjpVbmtub3duKQogICAgICAgICByZXR1cm4gbWVudWJhclZpc2liaWxpdHkg
PT0gQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5
OjpWaXNpYmxlOwogICAgIAogICAgIGJvb2wgbWVudUJhcklzVmlzaWJsZSA9IHRydWU7Ci0gICAg
aWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5z
ZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRNZW51QmFySXNWaXNpYmxlKCksIE1l
c3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldE1lbnVCYXJJc1Zpc2libGU6OlJlcGx5KG1lbnVCYXJJ
c1Zpc2libGUpLCBtX3BhZ2UtPnBhZ2VJRCgpKSkKKyAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmds
ZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OkdldE1lbnVCYXJJc1Zpc2libGUoKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6
R2V0TWVudUJhcklzVmlzaWJsZTo6UmVwbHkobWVudUJhcklzVmlzaWJsZSksIG1fcGFnZS5wYWdl
SUQoKSkpCiAgICAgICAgIHJldHVybiB0cnVlOwogCiAgICAgcmV0dXJuIG1lbnVCYXJJc1Zpc2li
bGU7CkBAIC0zMzIsMTggKzM0MSwxOCBAQCBib29sIFdlYkNocm9tZUNsaWVudDo6bWVudWJhclZp
c2libGUoKQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0UmVzaXphYmxlKGJvb2wgcmVzaXph
YmxlKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRJc1Jl
c2l6YWJsZShyZXNpemFibGUpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpTZXRJc1Jlc2l6YWJsZShyZXNpemFibGUpKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGll
bnQ6OmFkZE1lc3NhZ2VUb0NvbnNvbGUoTWVzc2FnZVNvdXJjZSBzb3VyY2UsIE1lc3NhZ2VMZXZl
bCBsZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCB1bnNpZ25lZCBsaW5lTnVtYmVyLCB1bnNp
Z25lZCBjb2x1bW5OdW1iZXIsIGNvbnN0IFN0cmluZyYgc291cmNlSUQpCiB7CiAgICAgLy8gTm90
aWZ5IHRoZSBidW5kbGUgY2xpZW50LgotICAgIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVVSUNsaWVu
dCgpLndpbGxBZGRNZXNzYWdlVG9Db25zb2xlKG1fcGFnZSwgc291cmNlLCBsZXZlbCwgbWVzc2Fn
ZSwgbGluZU51bWJlciwgY29sdW1uTnVtYmVyLCBzb3VyY2VJRCk7CisgICAgbV9wYWdlLmluamVj
dGVkQnVuZGxlVUlDbGllbnQoKS53aWxsQWRkTWVzc2FnZVRvQ29uc29sZSgmbV9wYWdlLCBzb3Vy
Y2UsIGxldmVsLCBtZXNzYWdlLCBsaW5lTnVtYmVyLCBjb2x1bW5OdW1iZXIsIHNvdXJjZUlEKTsK
IH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OmNhblJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5l
bCgpCiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+Y2FuUnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVs
KCk7CisgICAgcmV0dXJuIG1fcGFnZS5jYW5SdW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoKTsK
IH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbChj
b25zdCBTdHJpbmcmIG1lc3NhZ2UsIEZyYW1lKiBmcmFtZSkKQEAgLTM1NCw3ICszNjMsNyBAQCBi
b29sIFdlYkNocm9tZUNsaWVudDo6cnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsKGNvbnN0IFN0
cmluZyYgbWVzc2FnZSwgRnJhbWUqCiAKICAgICBIYW5nRGV0ZWN0aW9uRGlzYWJsZXIgaGFuZ0Rl
dGVjdGlvbkRpc2FibGVyOwogCi0gICAgaWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJl
bnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpS
dW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwobWVzc2FnZSwgd2ViRnJhbWUtPmZyYW1lSUQoKSks
IE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbDo6UmVw
bHkoc2hvdWxkQ2xvc2UpLCBtX3BhZ2UtPnBhZ2VJRCgpLCBTZWNvbmRzOjppbmZpbml0eSgpLCBJ
UEM6OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0Zm9ybVByb2Nlc3NXaWxsU3VzcGVuZCkpCisg
ICAgaWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigp
LT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5CZWZvcmVVbmxvYWRDb25maXJt
UGFuZWwobWVzc2FnZSwgd2ViRnJhbWUtPmZyYW1lSUQoKSksIE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OlJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbDo6UmVwbHkoc2hvdWxkQ2xvc2UpLCBtX3Bh
Z2UucGFnZUlEKCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246Oklu
Zm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwog
CiAgICAgcmV0dXJuIHNob3VsZENsb3NlOwpAQCAtMzY5LDE0ICszNzgsMTQgQEAgdm9pZCBXZWJD
aHJvbWVDbGllbnQ6OmNsb3NlV2luZG93U29vbigpCiAgICAgLy8gYSBjbG9zZSBleGVjdXRlIHN5
bmNocm9ub3VzbHkgYXMgcGFydCBvZiB3aW5kb3cuY2xvc2UsIGJ1dCBvdGhlciBwYXJ0cwogICAg
IC8vIGxhdGVyIG9uLgogCi0gICAgbV9wYWdlLT5jb3JlUGFnZSgpLT5zZXRHcm91cE5hbWUoU3Ry
aW5nKCkpOworICAgIG1fcGFnZS5jb3JlUGFnZSgpLT5zZXRHcm91cE5hbWUoU3RyaW5nKCkpOwog
Ci0gICAgaWYgKFdlYkZyYW1lKiBmcmFtZSA9IG1fcGFnZS0+bWFpbldlYkZyYW1lKCkpIHsKKyAg
ICBpZiAoV2ViRnJhbWUqIGZyYW1lID0gbV9wYWdlLm1haW5XZWJGcmFtZSgpKSB7CiAgICAgICAg
IGlmIChGcmFtZSogY29yZUZyYW1lID0gZnJhbWUtPmNvcmVGcmFtZSgpKQogICAgICAgICAgICAg
Y29yZUZyYW1lLT5sb2FkZXIoKS5zdG9wRm9yVXNlckNhbmNlbCgpOwogICAgIH0KIAotICAgIG1f
cGFnZS0+c2VuZENsb3NlKCk7CisgICAgbV9wYWdlLnNlbmRDbG9zZSgpOwogfQogCiBzdGF0aWMg
Ym9vbCBzaG91bGRTdXBwcmVzc0phdmFTY3JpcHREaWFsb2dzKEZyYW1lJiBmcmFtZSkKQEAgLTM5
NiwxMSArNDA1LDExIEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpydW5KYXZhU2NyaXB0QWxlcnQo
RnJhbWUqIGZyYW1lLCBjb25zdCBTdHJpbmcmIGFsZXJ0VGV4dCkKICAgICBBU1NFUlQod2ViRnJh
bWUpOwogCiAgICAgLy8gTm90aWZ5IHRoZSBidW5kbGUgY2xpZW50LgotICAgIG1fcGFnZS0+aW5q
ZWN0ZWRCdW5kbGVVSUNsaWVudCgpLndpbGxSdW5KYXZhU2NyaXB0QWxlcnQobV9wYWdlLCBhbGVy
dFRleHQsIHdlYkZyYW1lKTsKKyAgICBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLndp
bGxSdW5KYXZhU2NyaXB0QWxlcnQoJm1fcGFnZSwgYWxlcnRUZXh0LCB3ZWJGcmFtZSk7CiAKICAg
ICBIYW5nRGV0ZWN0aW9uRGlzYWJsZXIgaGFuZ0RldGVjdGlvbkRpc2FibGVyOwogCi0gICAgV2Vi
UHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMo
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdEFsZXJ0KHdlYkZyYW1lLT5mcmFt
ZUlEKCksIFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbUZyYW1lKGZyYW1lKSwgYWxlcnRUZXh0KSwg
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdEFsZXJ0OjpSZXBseSgpLCBtX3Bh
Z2UtPnBhZ2VJRCgpLCBTZWNvbmRzOjppbmZpbml0eSgpLCBJUEM6OlNlbmRTeW5jT3B0aW9uOjpJ
bmZvcm1QbGF0Zm9ybVByb2Nlc3NXaWxsU3VzcGVuZCk7CisgICAgV2ViUHJvY2Vzczo6c2luZ2xl
dG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6UnVuSmF2YVNjcmlwdEFsZXJ0KHdlYkZyYW1lLT5mcmFtZUlEKCksIFNlY3VyaXR5
T3JpZ2luRGF0YTo6ZnJvbUZyYW1lKGZyYW1lKSwgYWxlcnRUZXh0KSwgTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6UnVuSmF2YVNjcmlwdEFsZXJ0OjpSZXBseSgpLCBtX3BhZ2UucGFnZUlEKCksIFNl
Y29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246OkluZm9ybVBsYXRmb3JtUHJv
Y2Vzc1dpbGxTdXNwZW5kKTsKIH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnJ1bkphdmFTY3Jp
cHRDb25maXJtKEZyYW1lKiBmcmFtZSwgY29uc3QgU3RyaW5nJiBtZXNzYWdlKQpAQCAtNDEyLDEy
ICs0MjEsMTIgQEAgYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnJ1bkphdmFTY3JpcHRDb25maXJtKEZy
YW1lKiBmcmFtZSwgY29uc3QgU3RyaW5nJiBtZXNzYWdlKQogICAgIEFTU0VSVCh3ZWJGcmFtZSk7
CiAKICAgICAvLyBOb3RpZnkgdGhlIGJ1bmRsZSBjbGllbnQuCi0gICAgbV9wYWdlLT5pbmplY3Rl
ZEJ1bmRsZVVJQ2xpZW50KCkud2lsbFJ1bkphdmFTY3JpcHRDb25maXJtKG1fcGFnZSwgbWVzc2Fn
ZSwgd2ViRnJhbWUpOworICAgIG1fcGFnZS5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkud2lsbFJ1
bkphdmFTY3JpcHRDb25maXJtKCZtX3BhZ2UsIG1lc3NhZ2UsIHdlYkZyYW1lKTsKIAogICAgIEhh
bmdEZXRlY3Rpb25EaXNhYmxlciBoYW5nRGV0ZWN0aW9uRGlzYWJsZXI7CiAKICAgICBib29sIHJl
c3VsdCA9IGZhbHNlOwotICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJv
Y2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuSmF2
YVNjcmlwdENvbmZpcm0od2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpm
cm9tRnJhbWUoZnJhbWUpLCBtZXNzYWdlKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuSmF2
YVNjcmlwdENvbmZpcm06OlJlcGx5KHJlc3VsdCksIG1fcGFnZS0+cGFnZUlEKCksIFNlY29uZHM6
OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246OkluZm9ybVBsYXRmb3JtUHJvY2Vzc1dp
bGxTdXNwZW5kKSkKKyAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nl
c3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJ1bkphdmFT
Y3JpcHRDb25maXJtKHdlYkZyYW1lLT5mcmFtZUlEKCksIFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJv
bUZyYW1lKGZyYW1lKSwgbWVzc2FnZSksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJ1bkphdmFT
Y3JpcHRDb25maXJtOjpSZXBseShyZXN1bHQpLCBtX3BhZ2UucGFnZUlEKCksIFNlY29uZHM6Omlu
ZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246OkluZm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxT
dXNwZW5kKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgcmV0dXJuIHJlc3VsdDsKQEAg
LTQzMiwxMSArNDQxLDExIEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpydW5KYXZhU2NyaXB0UHJv
bXB0KEZyYW1lKiBmcmFtZSwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjCiAgICAgQVNTRVJUKHdl
YkZyYW1lKTsKIAogICAgIC8vIE5vdGlmeSB0aGUgYnVuZGxlIGNsaWVudC4KLSAgICBtX3BhZ2Ut
PmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS53aWxsUnVuSmF2YVNjcmlwdFByb21wdChtX3BhZ2Us
IG1lc3NhZ2UsIGRlZmF1bHRWYWx1ZSwgd2ViRnJhbWUpOworICAgIG1fcGFnZS5pbmplY3RlZEJ1
bmRsZVVJQ2xpZW50KCkud2lsbFJ1bkphdmFTY3JpcHRQcm9tcHQoJm1fcGFnZSwgbWVzc2FnZSwg
ZGVmYXVsdFZhbHVlLCB3ZWJGcmFtZSk7CiAKICAgICBIYW5nRGV0ZWN0aW9uRGlzYWJsZXIgaGFu
Z0RldGVjdGlvbkRpc2FibGVyOwogCi0gICAgaWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5w
YXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjpSdW5KYXZhU2NyaXB0UHJvbXB0KHdlYkZyYW1lLT5mcmFtZUlEKCksIFNlY3VyaXR5T3JpZ2lu
RGF0YTo6ZnJvbUZyYW1lKGZyYW1lKSwgbWVzc2FnZSwgZGVmYXVsdFZhbHVlKSwgTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdFByb21wdDo6UmVwbHkocmVzdWx0KSwgbV9wYWdl
LT5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBDOjpTZW5kU3luY09wdGlvbjo6SW5m
b3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpKQorICAgIGlmICghV2ViUHJvY2Vzczo6c2lu
Z2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6Oldl
YlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdFByb21wdCh3ZWJGcmFtZS0+ZnJhbWVJRCgpLCBTZWN1
cml0eU9yaWdpbkRhdGE6OmZyb21GcmFtZShmcmFtZSksIG1lc3NhZ2UsIGRlZmF1bHRWYWx1ZSks
IE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJ1bkphdmFTY3JpcHRQcm9tcHQ6OlJlcGx5KHJlc3Vs
dCksIG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBDOjpTZW5kU3luY09w
dGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpKQogICAgICAgICByZXR1cm4g
ZmFsc2U7CiAKICAgICByZXR1cm4gIXJlc3VsdC5pc051bGwoKTsKQEAgLTQ0NSwyNyArNDU0LDI5
IEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpydW5KYXZhU2NyaXB0UHJvbXB0KEZyYW1lKiBmcmFt
ZSwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0U3Rh
dHVzYmFyVGV4dChjb25zdCBTdHJpbmcmIHN0YXR1c2JhclRleHQpCiB7CiAgICAgLy8gTm90aWZ5
IHRoZSBidW5kbGUgY2xpZW50LgotICAgIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgp
LndpbGxTZXRTdGF0dXNiYXJUZXh0KG1fcGFnZSwgc3RhdHVzYmFyVGV4dCk7CisgICAgbV9wYWdl
LmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS53aWxsU2V0U3RhdHVzYmFyVGV4dCgmbV9wYWdlLCBz
dGF0dXNiYXJUZXh0KTsKIAotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjpTZXRTdGF0dXNUZXh0KHN0YXR1c2JhclRleHQpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdl
czo6V2ViUGFnZVByb3h5OjpTZXRTdGF0dXNUZXh0KHN0YXR1c2JhclRleHQpKTsKIH0KIAogS2V5
Ym9hcmRVSU1vZGUgV2ViQ2hyb21lQ2xpZW50OjprZXlib2FyZFVJTW9kZSgpCiB7Ci0gICAgcmV0
dXJuIG1fcGFnZS0+a2V5Ym9hcmRVSU1vZGUoKTsKKyAgICByZXR1cm4gbV9wYWdlLmtleWJvYXJk
VUlNb2RlKCk7CiB9CiAKICNpZiBFTkFCTEUoUE9JTlRFUl9MT0NLKQorCiBib29sIFdlYkNocm9t
ZUNsaWVudDo6cmVxdWVzdFBvaW50ZXJMb2NrKCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2Fn
ZXM6OldlYlBhZ2VQcm94eTo6UmVxdWVzdFBvaW50ZXJMb2NrKCkpOworICAgIG1fcGFnZS5zZW5k
KE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJlcXVlc3RQb2ludGVyTG9jaygpKTsKICAgICByZXR1
cm4gdHJ1ZTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJlcXVlc3RQb2ludGVyVW5sb2Nr
KCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UmVxdWVzdFBv
aW50ZXJVbmxvY2soKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6
UmVxdWVzdFBvaW50ZXJVbmxvY2soKSk7CiB9CisKICNlbmRpZgogCiB2b2lkIFdlYkNocm9tZUNs
aWVudDo6aW52YWxpZGF0ZVJvb3RWaWV3KGNvbnN0IEludFJlY3QmKQpAQCAtNDc1LDYxICs0ODYs
NjEgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmludmFsaWRhdGVSb290Vmlldyhjb25zdCBJbnRS
ZWN0JikKIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmludmFsaWRhdGVDb250ZW50c0FuZFJvb3RW
aWV3KGNvbnN0IEludFJlY3QmIHJlY3QpCiB7Ci0gICAgaWYgKERvY3VtZW50KiBkb2N1bWVudCA9
IG1fcGFnZS0+Y29yZVBhZ2UoKS0+bWFpbkZyYW1lKCkuZG9jdW1lbnQoKSkgeworICAgIGlmIChE
b2N1bWVudCogZG9jdW1lbnQgPSBtX3BhZ2UuY29yZVBhZ2UoKS0+bWFpbkZyYW1lKCkuZG9jdW1l
bnQoKSkgewogICAgICAgICBpZiAoZG9jdW1lbnQtPnByaW50aW5nKCkpCiAgICAgICAgICAgICBy
ZXR1cm47CiAgICAgfQogCi0gICAgbV9wYWdlLT5kcmF3aW5nQXJlYSgpLT5zZXROZWVkc0Rpc3Bs
YXlJblJlY3QocmVjdCk7CisgICAgbV9wYWdlLmRyYXdpbmdBcmVhKCktPnNldE5lZWRzRGlzcGxh
eUluUmVjdChyZWN0KTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmludmFsaWRhdGVDb250
ZW50c0ZvclNsb3dTY3JvbGwoY29uc3QgSW50UmVjdCYgcmVjdCkKIHsKLSAgICBpZiAoRG9jdW1l
bnQqIGRvY3VtZW50ID0gbV9wYWdlLT5jb3JlUGFnZSgpLT5tYWluRnJhbWUoKS5kb2N1bWVudCgp
KSB7CisgICAgaWYgKERvY3VtZW50KiBkb2N1bWVudCA9IG1fcGFnZS5jb3JlUGFnZSgpLT5tYWlu
RnJhbWUoKS5kb2N1bWVudCgpKSB7CiAgICAgICAgIGlmIChkb2N1bWVudC0+cHJpbnRpbmcoKSkK
ICAgICAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBtX3BhZ2UtPnBhZ2VEaWRTY3JvbGwo
KTsKKyAgICBtX3BhZ2UucGFnZURpZFNjcm9sbCgpOwogI2lmIFVTRShDT09SRElOQVRFRF9HUkFQ
SElDUykKLSAgICBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPnNjcm9sbChyZWN0LCBJbnRTaXplKCkp
OworICAgIG1fcGFnZS5kcmF3aW5nQXJlYSgpLT5zY3JvbGwocmVjdCwgSW50U2l6ZSgpKTsKICNl
bHNlCi0gICAgbV9wYWdlLT5kcmF3aW5nQXJlYSgpLT5zZXROZWVkc0Rpc3BsYXlJblJlY3QocmVj
dCk7CisgICAgbV9wYWdlLmRyYXdpbmdBcmVhKCktPnNldE5lZWRzRGlzcGxheUluUmVjdChyZWN0
KTsKICNlbmRpZgogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2Nyb2xsKGNvbnN0IEludFNp
emUmIHNjcm9sbERlbHRhLCBjb25zdCBJbnRSZWN0JiBzY3JvbGxSZWN0LCBjb25zdCBJbnRSZWN0
JiBjbGlwUmVjdCkKIHsKLSAgICBtX3BhZ2UtPnBhZ2VEaWRTY3JvbGwoKTsKLSAgICBtX3BhZ2Ut
PmRyYXdpbmdBcmVhKCktPnNjcm9sbChpbnRlcnNlY3Rpb24oc2Nyb2xsUmVjdCwgY2xpcFJlY3Qp
LCBzY3JvbGxEZWx0YSk7CisgICAgbV9wYWdlLnBhZ2VEaWRTY3JvbGwoKTsKKyAgICBtX3BhZ2Uu
ZHJhd2luZ0FyZWEoKS0+c2Nyb2xsKGludGVyc2VjdGlvbihzY3JvbGxSZWN0LCBjbGlwUmVjdCks
IHNjcm9sbERlbHRhKTsKIH0KIAogI2lmIFVTRShDT09SRElOQVRFRF9HUkFQSElDUykKIHZvaWQg
V2ViQ2hyb21lQ2xpZW50OjpkZWxlZ2F0ZWRTY3JvbGxSZXF1ZXN0ZWQoY29uc3QgSW50UG9pbnQm
IHNjcm9sbE9mZnNldCkKIHsKLSAgICBtX3BhZ2UtPnBhZ2VEaWRSZXF1ZXN0U2Nyb2xsKHNjcm9s
bE9mZnNldCk7CisgICAgbV9wYWdlLnBhZ2VEaWRSZXF1ZXN0U2Nyb2xsKHNjcm9sbE9mZnNldCk7
CiB9CiAjZW5kaWYKIAogSW50UG9pbnQgV2ViQ2hyb21lQ2xpZW50OjpzY3JlZW5Ub1Jvb3RWaWV3
KGNvbnN0IEludFBvaW50JiBwb2ludCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5zY3Jl
ZW5Ub1Jvb3RWaWV3KHBvaW50KTsKKyAgICByZXR1cm4gbV9wYWdlLnNjcmVlblRvUm9vdFZpZXco
cG9pbnQpOwogfQogCiBJbnRSZWN0IFdlYkNocm9tZUNsaWVudDo6cm9vdFZpZXdUb1NjcmVlbihj
b25zdCBJbnRSZWN0JiByZWN0KSBjb25zdAogewotICAgIHJldHVybiBtX3BhZ2UtPnJvb3RWaWV3
VG9TY3JlZW4ocmVjdCk7CisgICAgcmV0dXJuIG1fcGFnZS5yb290Vmlld1RvU2NyZWVuKHJlY3Qp
OwogfQogICAgIAogI2lmIFBMQVRGT1JNKElPUykKIEludFBvaW50IFdlYkNocm9tZUNsaWVudDo6
YWNjZXNzaWJpbGl0eVNjcmVlblRvUm9vdFZpZXcoY29uc3QgSW50UG9pbnQmIHBvaW50KSBjb25z
dAogewotICAgIHJldHVybiBtX3BhZ2UtPmFjY2Vzc2liaWxpdHlTY3JlZW5Ub1Jvb3RWaWV3KHBv
aW50KTsKKyAgICByZXR1cm4gbV9wYWdlLmFjY2Vzc2liaWxpdHlTY3JlZW5Ub1Jvb3RWaWV3KHBv
aW50KTsKIH0KIAogSW50UmVjdCBXZWJDaHJvbWVDbGllbnQ6OnJvb3RWaWV3VG9BY2Nlc3NpYmls
aXR5U2NyZWVuKGNvbnN0IEludFJlY3QmIHJlY3QpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFn
ZS0+cm9vdFZpZXdUb0FjY2Vzc2liaWxpdHlTY3JlZW4ocmVjdCk7CisgICAgcmV0dXJuIG1fcGFn
ZS5yb290Vmlld1RvQWNjZXNzaWJpbGl0eVNjcmVlbihyZWN0KTsKIH0KICNlbmRpZgogCkBAIC01
NDEsMjAgKzU1MiwyMCBAQCBQbGF0Zm9ybVBhZ2VDbGllbnQgV2ViQ2hyb21lQ2xpZW50OjpwbGF0
Zm9ybVBhZ2VDbGllbnQoKSBjb25zdAogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y29udGVudHNT
aXplQ2hhbmdlZChGcmFtZSogZnJhbWUsIGNvbnN0IEludFNpemUmIHNpemUpIGNvbnN0CiB7Ci0g
ICAgaWYgKCFtX3BhZ2UtPmNvcmVQYWdlKCktPnNldHRpbmdzKCkuZnJhbWVGbGF0dGVuaW5nRW5h
YmxlZCgpKSB7CisgICAgaWYgKCFtX3BhZ2UuY29yZVBhZ2UoKS0+c2V0dGluZ3MoKS5mcmFtZUZs
YXR0ZW5pbmdFbmFibGVkKCkpIHsKICAgICAgICAgV2ViRnJhbWUqIGxhcmdlc3RGcmFtZSA9IGZp
bmRMYXJnZXN0RnJhbWVJbkZyYW1lU2V0KG1fcGFnZSk7CiAgICAgICAgIGlmIChsYXJnZXN0RnJh
bWUgIT0gbV9jYWNoZWRGcmFtZVNldExhcmdlc3RGcmFtZS5nZXQoKSkgewogICAgICAgICAgICAg
bV9jYWNoZWRGcmFtZVNldExhcmdlc3RGcmFtZSA9IGxhcmdlc3RGcmFtZTsKLSAgICAgICAgICAg
IG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpGcmFtZVNldExhcmdlc3RGcmFt
ZUNoYW5nZWQobGFyZ2VzdEZyYW1lID8gbGFyZ2VzdEZyYW1lLT5mcmFtZUlEKCkgOiAwKSk7Cisg
ICAgICAgICAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpGcmFtZVNldExh
cmdlc3RGcmFtZUNoYW5nZWQobGFyZ2VzdEZyYW1lID8gbGFyZ2VzdEZyYW1lLT5mcmFtZUlEKCkg
OiAwKSk7CiAgICAgICAgIH0KICAgICB9CiAKICAgICBpZiAoJmZyYW1lLT5wYWdlKCktPm1haW5G
cmFtZSgpICE9IGZyYW1lKQogICAgICAgICByZXR1cm47CiAKLSAgICBtX3BhZ2UtPnNlbmQoTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6RGlkQ2hhbmdlQ29udGVudFNpemUoc2l6ZSkpOworICAgIG1f
cGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkRpZENoYW5nZUNvbnRlbnRTaXplKHNp
emUpKTsKIAotICAgIG1fcGFnZS0+ZHJhd2luZ0FyZWEoKS0+bWFpbkZyYW1lQ29udGVudFNpemVD
aGFuZ2VkKHNpemUpOworICAgIG1fcGFnZS5kcmF3aW5nQXJlYSgpLT5tYWluRnJhbWVDb250ZW50
U2l6ZUNoYW5nZWQoc2l6ZSk7CiAKICAgICBGcmFtZVZpZXcqIGZyYW1lVmlldyA9IGZyYW1lLT52
aWV3KCk7CiAgICAgaWYgKGZyYW1lVmlldyAmJiAhZnJhbWVWaWV3LT5kZWxlZ2F0ZXNTY3JvbGxp
bmcoKSkgIHsKQEAgLTU2Miw3ICs1NzMsNyBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y29udGVu
dHNTaXplQ2hhbmdlZChGcmFtZSogZnJhbWUsIGNvbnN0IEludFNpemUmIHNpemUpIGNvbgogICAg
ICAgICBib29sIGhhc1ZlcnRpY2FsU2Nyb2xsYmFyID0gZnJhbWVWaWV3LT52ZXJ0aWNhbFNjcm9s
bGJhcigpOwogCiAgICAgICAgIGlmIChoYXNIb3Jpem9udGFsU2Nyb2xsYmFyICE9IG1fY2FjaGVk
TWFpbkZyYW1lSGFzSG9yaXpvbnRhbFNjcm9sbGJhciB8fCBoYXNWZXJ0aWNhbFNjcm9sbGJhciAh
PSBtX2NhY2hlZE1haW5GcmFtZUhhc1ZlcnRpY2FsU2Nyb2xsYmFyKSB7Ci0gICAgICAgICAgICBt
X3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RGlkQ2hhbmdlU2Nyb2xsYmFyc0Zv
ck1haW5GcmFtZShoYXNIb3Jpem9udGFsU2Nyb2xsYmFyLCBoYXNWZXJ0aWNhbFNjcm9sbGJhcikp
OworICAgICAgICAgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RGlkQ2hh
bmdlU2Nyb2xsYmFyc0Zvck1haW5GcmFtZShoYXNIb3Jpem9udGFsU2Nyb2xsYmFyLCBoYXNWZXJ0
aWNhbFNjcm9sbGJhcikpOwogCiAgICAgICAgICAgICBtX2NhY2hlZE1haW5GcmFtZUhhc0hvcml6
b250YWxTY3JvbGxiYXIgPSBoYXNIb3Jpem9udGFsU2Nyb2xsYmFyOwogICAgICAgICAgICAgbV9j
YWNoZWRNYWluRnJhbWVIYXNWZXJ0aWNhbFNjcm9sbGJhciA9IGhhc1ZlcnRpY2FsU2Nyb2xsYmFy
OwpAQCAtNjAzLDEyICs2MTQsMTIgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnVuYXZhaWxhYmxl
UGx1Z2luQnV0dG9uQ2xpY2tlZChFbGVtZW50KiBlbGVtZW50LCBSZW5kZXJFbWIKICAgICBIVE1M
UGx1Z0luSW1hZ2VFbGVtZW50KiBwbHVnaW5FbGVtZW50ID0gc3RhdGljX2Nhc3Q8SFRNTFBsdWdJ
bkltYWdlRWxlbWVudCo+KGVsZW1lbnQpOwogCiAgICAgU3RyaW5nIGZyYW1lVVJMU3RyaW5nID0g
cGx1Z2luRWxlbWVudC0+ZG9jdW1lbnQoKS5mcmFtZSgpLT5sb2FkZXIoKS5kb2N1bWVudExvYWRl
cigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwotICAgIFN0cmluZyBwYWdlVVJMU3RyaW5nID0g
bV9wYWdlLT5tYWluRnJhbWUoKS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKS0+cmVzcG9uc2VV
UkwoKS5zdHJpbmcoKTsKKyAgICBTdHJpbmcgcGFnZVVSTFN0cmluZyA9IG1fcGFnZS5tYWluRnJh
bWUoKS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKS0+cmVzcG9uc2VVUkwoKS5zdHJpbmcoKTsK
ICAgICBTdHJpbmcgcGx1Z2luVVJMU3RyaW5nID0gcGx1Z2luRWxlbWVudC0+ZG9jdW1lbnQoKS5j
b21wbGV0ZVVSTChwbHVnaW5FbGVtZW50LT51cmwoKSkuc3RyaW5nKCk7CiAgICAgVVJMIHBsdWdp
bnNwYWdlQXR0cmlidXRlVVJMID0gZWxlbWVudC0+ZG9jdW1lbnQoKS5jb21wbGV0ZVVSTChzdHJp
cExlYWRpbmdBbmRUcmFpbGluZ0hUTUxTcGFjZXMocGx1Z2luRWxlbWVudC0+Z2V0QXR0cmlidXRl
KHBsdWdpbnNwYWdlQXR0cikpKTsKICAgICBpZiAoIXBsdWdpbnNwYWdlQXR0cmlidXRlVVJMLnBy
b3RvY29sSXNJbkhUVFBGYW1pbHkoKSkKICAgICAgICAgcGx1Z2luc3BhZ2VBdHRyaWJ1dGVVUkwg
PSBVUkwoKTsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6VW5hdmFp
bGFibGVQbHVnaW5CdXR0b25DbGlja2VkKHBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uLCBwbHVn
aW5FbGVtZW50LT5zZXJ2aWNlVHlwZSgpLCBwbHVnaW5VUkxTdHJpbmcsIHBsdWdpbnNwYWdlQXR0
cmlidXRlVVJMLnN0cmluZygpLCBmcmFtZVVSTFN0cmluZywgcGFnZVVSTFN0cmluZykpOworICAg
IG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlVuYXZhaWxhYmxlUGx1Z2luQnV0
dG9uQ2xpY2tlZChwbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbiwgcGx1Z2luRWxlbWVudC0+c2Vy
dmljZVR5cGUoKSwgcGx1Z2luVVJMU3RyaW5nLCBwbHVnaW5zcGFnZUF0dHJpYnV0ZVVSTC5zdHJp
bmcoKSwgZnJhbWVVUkxTdHJpbmcsIHBhZ2VVUkxTdHJpbmcpKTsKICNlbHNlCiAgICAgVU5VU0VE
X1BBUkFNKGVsZW1lbnQpOwogICAgIFVOVVNFRF9QQVJBTShwbHVnaW5VbmF2YWlsYWJpbGl0eVJl
YXNvbik7CkBAIC02MjUsMTEgKzYzNiwxMSBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6bW91c2VE
aWRNb3ZlT3ZlckVsZW1lbnQoY29uc3QgSGl0VGVzdFJlc3VsdCYgaGl0VGVzdFJlc3VsdAogICAg
IFJlZlB0cjxBUEk6Ok9iamVjdD4gdXNlckRhdGE7CiAKICAgICAvLyBOb3RpZnkgdGhlIGJ1bmRs
ZSBjbGllbnQuCi0gICAgbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkubW91c2VEaWRN
b3ZlT3ZlckVsZW1lbnQobV9wYWdlLCBoaXRUZXN0UmVzdWx0LCBzdGF0aWNfY2FzdDxXZWJFdmVu
dDo6TW9kaWZpZXJzPihtb2RpZmllckZsYWdzKSwgdXNlckRhdGEpOworICAgIG1fcGFnZS5pbmpl
Y3RlZEJ1bmRsZVVJQ2xpZW50KCkubW91c2VEaWRNb3ZlT3ZlckVsZW1lbnQoJm1fcGFnZSwgaGl0
VGVzdFJlc3VsdCwgc3RhdGljX2Nhc3Q8V2ViRXZlbnQ6Ok1vZGlmaWVycz4obW9kaWZpZXJGbGFn
cyksIHVzZXJEYXRhKTsKIAogICAgIC8vIE5vdGlmeSB0aGUgVUlQcm9jZXNzLgogICAgIFdlYkhp
dFRlc3RSZXN1bHREYXRhIHdlYkhpdFRlc3RSZXN1bHREYXRhKGhpdFRlc3RSZXN1bHQpOwotICAg
IG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpNb3VzZURpZE1vdmVPdmVyRWxl
bWVudCh3ZWJIaXRUZXN0UmVzdWx0RGF0YSwgbW9kaWZpZXJGbGFncywgVXNlckRhdGEoV2ViUHJv
Y2Vzczo6c2luZ2xldG9uKCkudHJhbnNmb3JtT2JqZWN0c1RvSGFuZGxlcyh1c2VyRGF0YS5nZXQo
KSkuZ2V0KCkpKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6TW91
c2VEaWRNb3ZlT3ZlckVsZW1lbnQod2ViSGl0VGVzdFJlc3VsdERhdGEsIG1vZGlmaWVyRmxhZ3Ms
IFVzZXJEYXRhKFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnRyYW5zZm9ybU9iamVjdHNUb0hhbmRs
ZXModXNlckRhdGEuZ2V0KCkpLmdldCgpKSkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6
c2V0VG9vbFRpcChjb25zdCBTdHJpbmcmIHRvb2xUaXAsIFRleHREaXJlY3Rpb24pCkBAIC02NDAs
NyArNjUxLDcgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNldFRvb2xUaXAoY29uc3QgU3RyaW5n
JiB0b29sVGlwLCBUZXh0RGlyZWN0aW9uKQogICAgICAgICByZXR1cm47CiAgICAgbV9jYWNoZWRU
b29sVGlwID0gdG9vbFRpcDsKIAotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpTZXRUb29sVGlwKG1fY2FjaGVkVG9vbFRpcCkpOworICAgIG1fcGFnZS5zZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OlNldFRvb2xUaXAobV9jYWNoZWRUb29sVGlwKSk7CiB9CiAKIHZv
aWQgV2ViQ2hyb21lQ2xpZW50OjpwcmludChGcmFtZSogZnJhbWUpCkBAIC02NjgsNyArNjc5LDcg
QEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnByaW50KEZyYW1lKiBmcmFtZSkKICAgICB9CiAjZW5k
aWYKIAotICAgIG1fcGFnZS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UHJpbnRG
cmFtZSh3ZWJGcmFtZS0+ZnJhbWVJRCgpKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UHJpbnRG
cmFtZTo6UmVwbHkoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBDOjpTZW5kU3luY09wdGlvbjo6
SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpOworICAgIG1fcGFnZS5zZW5kU3luYyhN
ZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQcmludEZyYW1lKHdlYkZyYW1lLT5mcmFtZUlEKCkpLCBN
ZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQcmludEZyYW1lOjpSZXBseSgpLCBTZWNvbmRzOjppbmZp
bml0eSgpLCBJUEM6OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0Zm9ybVByb2Nlc3NXaWxsU3Vz
cGVuZCk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpleGNlZWRlZERhdGFiYXNlUXVvdGEo
RnJhbWUqIGZyYW1lLCBjb25zdCBTdHJpbmcmIGRhdGFiYXNlTmFtZSwgRGF0YWJhc2VEZXRhaWxz
IGRldGFpbHMpCkBAIC02ODYsMTIgKzY5NywxMiBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZXhj
ZWVkZWREYXRhYmFzZVF1b3RhKEZyYW1lKiBmcmFtZSwgY29uc3QgU3RyaW5nJiBkYXRhYmFzZQog
ICAgIGF1dG8gY3VycmVudE9yaWdpblVzYWdlID0gdHJhY2tlci51c2FnZShvcmlnaW5EYXRhKTsK
ICAgICB1aW50NjRfdCBuZXdRdW90YSA9IDA7CiAgICAgUmVmUHRyPEFQSTo6U2VjdXJpdHlPcmln
aW4+IHNlY3VyaXR5T3JpZ2luID0gQVBJOjpTZWN1cml0eU9yaWdpbjo6Y3JlYXRlKFdlYkNvcmU6
OlNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbURhdGFiYXNlSWRlbnRpZmllcihXZWJDb3JlOjpTZWN1
cml0eU9yaWdpbkRhdGE6OmZyb21TZWN1cml0eU9yaWdpbigqb3JpZ2luKS5kYXRhYmFzZUlkZW50
aWZpZXIoKSktPnNlY3VyaXR5T3JpZ2luKCkpOwotICAgIG5ld1F1b3RhID0gbV9wYWdlLT5pbmpl
Y3RlZEJ1bmRsZVVJQ2xpZW50KCkuZGlkRXhjZWVkRGF0YWJhc2VRdW90YShtX3BhZ2UsIHNlY3Vy
aXR5T3JpZ2luLmdldCgpLCBkYXRhYmFzZU5hbWUsIGRldGFpbHMuZGlzcGxheU5hbWUoKSwgY3Vy
cmVudFF1b3RhLCBjdXJyZW50T3JpZ2luVXNhZ2UsIGRldGFpbHMuY3VycmVudFVzYWdlKCksIGRl
dGFpbHMuZXhwZWN0ZWRVc2FnZSgpKTsKKyAgICBuZXdRdW90YSA9IG1fcGFnZS5pbmplY3RlZEJ1
bmRsZVVJQ2xpZW50KCkuZGlkRXhjZWVkRGF0YWJhc2VRdW90YSgmbV9wYWdlLCBzZWN1cml0eU9y
aWdpbi5nZXQoKSwgZGF0YWJhc2VOYW1lLCBkZXRhaWxzLmRpc3BsYXlOYW1lKCksIGN1cnJlbnRR
dW90YSwgY3VycmVudE9yaWdpblVzYWdlLCBkZXRhaWxzLmN1cnJlbnRVc2FnZSgpLCBkZXRhaWxz
LmV4cGVjdGVkVXNhZ2UoKSk7CiAKICAgICBpZiAoIW5ld1F1b3RhKSB7CiAgICAgICAgIFdlYlBy
b2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKAog
ICAgICAgICAgICAgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RXhjZWVkZWREYXRhYmFzZVF1b3Rh
KHdlYkZyYW1lLT5mcmFtZUlEKCksIFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbVNl
Y3VyaXR5T3JpZ2luKCpvcmlnaW4pLmRhdGFiYXNlSWRlbnRpZmllcigpLCBkYXRhYmFzZU5hbWUs
IGRldGFpbHMuZGlzcGxheU5hbWUoKSwgY3VycmVudFF1b3RhLCBjdXJyZW50T3JpZ2luVXNhZ2Us
IGRldGFpbHMuY3VycmVudFVzYWdlKCksIGRldGFpbHMuZXhwZWN0ZWRVc2FnZSgpKSwKLSAgICAg
ICAgICAgIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkV4Y2VlZGVkRGF0YWJhc2VRdW90YTo6UmVw
bHkobmV3UXVvdGEpLCBtX3BhZ2UtPnBhZ2VJRCgpLCBTZWNvbmRzOjppbmZpbml0eSgpLCBJUEM6
OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0Zm9ybVByb2Nlc3NXaWxsU3VzcGVuZCk7CisgICAg
ICAgICAgICBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpFeGNlZWRlZERhdGFiYXNlUXVvdGE6OlJl
cGx5KG5ld1F1b3RhKSwgbV9wYWdlLnBhZ2VJRCgpLCBTZWNvbmRzOjppbmZpbml0eSgpLCBJUEM6
OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0Zm9ybVByb2Nlc3NXaWxsU3VzcGVuZCk7CiAgICAg
fQogCiAgICAgdHJhY2tlci5zZXRRdW90YShvcmlnaW5EYXRhLCBuZXdRdW90YSk7CkBAIC03MDUs
MTAgKzcxNiwxMCBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6cmVhY2hlZE1heEFwcENhY2hlU2l6
ZShpbnQ2NF90KQogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJlYWNoZWRBcHBsaWNhdGlvbkNhY2hl
T3JpZ2luUXVvdGEoU2VjdXJpdHlPcmlnaW4qIG9yaWdpbiwgaW50NjRfdCB0b3RhbEJ5dGVzTmVl
ZGVkKQogewogICAgIFJlZlB0cjxBUEk6OlNlY3VyaXR5T3JpZ2luPiBzZWN1cml0eU9yaWdpbiA9
IEFQSTo6U2VjdXJpdHlPcmlnaW46OmNyZWF0ZUZyb21TdHJpbmcob3JpZ2luLT50b1N0cmluZygp
KTsKLSAgICBpZiAobV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkuZGlkUmVhY2hBcHBs
aWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEobV9wYWdlLCBzZWN1cml0eU9yaWdpbi5nZXQoKSwgdG90
YWxCeXRlc05lZWRlZCkpCisgICAgaWYgKG1fcGFnZS5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCku
ZGlkUmVhY2hBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoJm1fcGFnZSwgc2VjdXJpdHlPcmln
aW4uZ2V0KCksIHRvdGFsQnl0ZXNOZWVkZWQpKQogICAgICAgICByZXR1cm47CiAKLSAgICBhdXRv
JiBjYWNoZVN0b3JhZ2UgPSBtX3BhZ2UtPmNvcmVQYWdlKCktPmFwcGxpY2F0aW9uQ2FjaGVTdG9y
YWdlKCk7CisgICAgYXV0byYgY2FjaGVTdG9yYWdlID0gbV9wYWdlLmNvcmVQYWdlKCktPmFwcGxp
Y2F0aW9uQ2FjaGVTdG9yYWdlKCk7CiAgICAgaW50NjRfdCBjdXJyZW50UXVvdGEgPSAwOwogICAg
IGlmICghY2FjaGVTdG9yYWdlLmNhbGN1bGF0ZVF1b3RhRm9yT3JpZ2luKG9yaWdpbiwgY3VycmVu
dFF1b3RhKSkKICAgICAgICAgcmV0dXJuOwpAQCAtNzE2LDcgKzcyNyw3IEBAIHZvaWQgV2ViQ2hy
b21lQ2xpZW50OjpyZWFjaGVkQXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3RhKFNlY3VyaXR5T3Jp
Z2luKiBvcmlnaW4sCiAgICAgdWludDY0X3QgbmV3UXVvdGEgPSAwOwogICAgIFdlYlByb2Nlc3M6
OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKAogICAgICAg
ICBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZWFjaGVkQXBwbGljYXRpb25DYWNoZU9yaWdpblF1
b3RhKFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbVNlY3VyaXR5T3JpZ2luKCpvcmln
aW4pLmRhdGFiYXNlSWRlbnRpZmllcigpLCBjdXJyZW50UXVvdGEsIHRvdGFsQnl0ZXNOZWVkZWQp
LAotICAgICAgICBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZWFjaGVkQXBwbGljYXRpb25DYWNo
ZU9yaWdpblF1b3RhOjpSZXBseShuZXdRdW90YSksIG1fcGFnZS0+cGFnZUlEKCksIFNlY29uZHM6
OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246OkluZm9ybVBsYXRmb3JtUHJvY2Vzc1dp
bGxTdXNwZW5kKTsKKyAgICAgICAgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UmVhY2hlZEFwcGxp
Y2F0aW9uQ2FjaGVPcmlnaW5RdW90YTo6UmVwbHkobmV3UXVvdGEpLCBtX3BhZ2UucGFnZUlEKCks
IFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246OkluZm9ybVBsYXRmb3Jt
UHJvY2Vzc1dpbGxTdXNwZW5kKTsKIAogICAgIGNhY2hlU3RvcmFnZS5zdG9yZVVwZGF0ZWRRdW90
YUZvck9yaWdpbihvcmlnaW4sIG5ld1F1b3RhKTsKIH0KQEAgLTczMCwzNSArNzQxLDMyIEBAIHZv
aWQgV2ViQ2hyb21lQ2xpZW50Ojphbm5vdGF0ZWRSZWdpb25zQ2hhbmdlZCgpCiAKIGJvb2wgV2Vi
Q2hyb21lQ2xpZW50OjpzaG91bGRSZXBsYWNlV2l0aEdlbmVyYXRlZEZpbGVGb3JVcGxvYWQoY29u
c3QgU3RyaW5nJiBwYXRoLCBTdHJpbmcmIGdlbmVyYXRlZEZpbGVuYW1lKQogewotICAgIGdlbmVy
YXRlZEZpbGVuYW1lID0gbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkuc2hvdWxkR2Vu
ZXJhdGVGaWxlRm9yVXBsb2FkKG1fcGFnZSwgcGF0aCk7CisgICAgZ2VuZXJhdGVkRmlsZW5hbWUg
PSBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLnNob3VsZEdlbmVyYXRlRmlsZUZvclVw
bG9hZCgmbV9wYWdlLCBwYXRoKTsKICAgICByZXR1cm4gIWdlbmVyYXRlZEZpbGVuYW1lLmlzTnVs
bCgpOwogfQogCiBTdHJpbmcgV2ViQ2hyb21lQ2xpZW50OjpnZW5lcmF0ZVJlcGxhY2VtZW50Rmls
ZShjb25zdCBTdHJpbmcmIHBhdGgpCiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+aW5qZWN0ZWRCdW5k
bGVVSUNsaWVudCgpLmdlbmVyYXRlRmlsZUZvclVwbG9hZChtX3BhZ2UsIHBhdGgpOworICAgIHJl
dHVybiBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLmdlbmVyYXRlRmlsZUZvclVwbG9h
ZCgmbV9wYWdlLCBwYXRoKTsKIH0KIAogI2lmIEVOQUJMRShJTlBVVF9UWVBFX0NPTE9SKQogc3Rk
Ojp1bmlxdWVfcHRyPENvbG9yQ2hvb3Nlcj4gV2ViQ2hyb21lQ2xpZW50OjpjcmVhdGVDb2xvckNo
b29zZXIoQ29sb3JDaG9vc2VyQ2xpZW50KiBjbGllbnQsIGNvbnN0IENvbG9yJiBpbml0aWFsQ29s
b3IpCiB7Ci0gICAgcmV0dXJuIHN0ZDo6bWFrZV91bmlxdWU8V2ViQ29sb3JDaG9vc2VyPihtX3Bh
Z2UsIGNsaWVudCwgaW5pdGlhbENvbG9yKTsKKyAgICByZXR1cm4gc3RkOjptYWtlX3VuaXF1ZTxX
ZWJDb2xvckNob29zZXI+KCZtX3BhZ2UsIGNsaWVudCwgaW5pdGlhbENvbG9yKTsKIH0KICNlbmRp
ZgogCi12b2lkIFdlYkNocm9tZUNsaWVudDo6cnVuT3BlblBhbmVsKEZyYW1lKiBmcmFtZSwgUGFz
c1JlZlB0cjxGaWxlQ2hvb3Nlcj4gcHJwRmlsZUNob29zZXIpCit2b2lkIFdlYkNocm9tZUNsaWVu
dDo6cnVuT3BlblBhbmVsKEZyYW1lJiBmcmFtZSwgRmlsZUNob29zZXImIGZpbGVDaG9vc2VyKQog
ewotICAgIGlmIChtX3BhZ2UtPmFjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyKCkpCisgICAg
aWYgKG1fcGFnZS5hY3RpdmVPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcigpKQogICAgICAgICByZXR1
cm47CiAKLSAgICBSZWZQdHI8RmlsZUNob29zZXI+IGZpbGVDaG9vc2VyID0gcHJwRmlsZUNob29z
ZXI7CisgICAgbV9wYWdlLnNldEFjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyKFdlYk9wZW5Q
YW5lbFJlc3VsdExpc3RlbmVyOjpjcmVhdGUoJm1fcGFnZSwgJmZpbGVDaG9vc2VyKSk7CiAKLSAg
ICBtX3BhZ2UtPnNldEFjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyKFdlYk9wZW5QYW5lbFJl
c3VsdExpc3RlbmVyOjpjcmVhdGUobV9wYWdlLCBmaWxlQ2hvb3Nlci5nZXQoKSkpOwotCi0gICAg
V2ViRnJhbWUqIHdlYkZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZyYW1lKTsKKyAg
ICBhdXRvKiB3ZWJGcmFtZSA9IFdlYkZyYW1lOjpmcm9tQ29yZUZyYW1lKGZyYW1lKTsKICAgICBB
U1NFUlQod2ViRnJhbWUpOwotCi0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OlJ1bk9wZW5QYW5lbCh3ZWJGcmFtZS0+ZnJhbWVJRCgpLCBTZWN1cml0eU9yaWdpbkRhdGE6
OmZyb21GcmFtZShmcmFtZSksIGZpbGVDaG9vc2VyLT5zZXR0aW5ncygpKSk7CisgICAgbV9wYWdl
LnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuT3BlblBhbmVsKHdlYkZyYW1lLT5mcmFt
ZUlEKCksIFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbUZyYW1lKCZmcmFtZSksIGZpbGVDaG9vc2Vy
LnNldHRpbmdzKCkpKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmxvYWRJY29uRm9yRmls
ZXMoY29uc3QgVmVjdG9yPFN0cmluZz4mIGZpbGVuYW1lcywgRmlsZUljb25Mb2FkZXImIGxvYWRl
cikKQEAgLTc2NywzNCArNzc1LDM4IEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpsb2FkSWNvbkZv
ckZpbGVzKGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBmaWxlbmFtZXMsIEZpbGVJY29uCiB9CiAKICNp
ZiAhUExBVEZPUk0oSU9TKQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0Q3Vyc29yKGNvbnN0
IFdlYkNvcmU6OkN1cnNvciYgY3Vyc29yKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6
V2ViUGFnZVByb3h5OjpTZXRDdXJzb3IoY3Vyc29yKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2Fn
ZXM6OldlYlBhZ2VQcm94eTo6U2V0Q3Vyc29yKGN1cnNvcikpOwogfQogCiB2b2lkIFdlYkNocm9t
ZUNsaWVudDo6c2V0Q3Vyc29ySGlkZGVuVW50aWxNb3VzZU1vdmVzKGJvb2wgaGlkZGVuVW50aWxN
b3VzZU1vdmVzKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpT
ZXRDdXJzb3JIaWRkZW5VbnRpbE1vdXNlTW92ZXMoaGlkZGVuVW50aWxNb3VzZU1vdmVzKSk7Cisg
ICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0Q3Vyc29ySGlkZGVuVW50
aWxNb3VzZU1vdmVzKGhpZGRlblVudGlsTW91c2VNb3ZlcykpOwogfQorCiAjZW5kaWYKIAogI2lm
IEVOQUJMRShSRVFVRVNUX0FOSU1BVElPTl9GUkFNRSkgJiYgIVVTRShSRVFVRVNUX0FOSU1BVElP
Tl9GUkFNRV9USU1FUikKKwogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNjaGVkdWxlQW5pbWF0aW9u
KCkKIHsKICNpZiBVU0UoQ09PUkRJTkFURURfR1JBUEhJQ1MpCi0gICAgbV9wYWdlLT5kcmF3aW5n
QXJlYSgpLT5sYXllclRyZWVIb3N0KCktPnNjaGVkdWxlQW5pbWF0aW9uKCk7CisgICAgbV9wYWdl
LmRyYXdpbmdBcmVhKCktPmxheWVyVHJlZUhvc3QoKS0+c2NoZWR1bGVBbmltYXRpb24oKTsKICNl
bmRpZgogfQorCiAjZW5kaWYKIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmRpZEFzc29jaWF0ZUZv
cm1Db250cm9scyhjb25zdCBWZWN0b3I8UmVmUHRyPFdlYkNvcmU6OkVsZW1lbnQ+PiYgZWxlbWVu
dHMpCiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCkuZGlk
QXNzb2NpYXRlRm9ybUNvbnRyb2xzKG1fcGFnZSwgZWxlbWVudHMpOworICAgIHJldHVybiBtX3Bh
Z2UuaW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCkuZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xzKCZt
X3BhZ2UsIGVsZW1lbnRzKTsKIH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnNob3VsZE5vdGlm
eU9uRm9ybUNoYW5nZXMoKQogewotICAgIHJldHVybiBtX3BhZ2UtPmluamVjdGVkQnVuZGxlRm9y
bUNsaWVudCgpLnNob3VsZE5vdGlmeU9uRm9ybUNoYW5nZXMobV9wYWdlKTsKKyAgICByZXR1cm4g
bV9wYWdlLmluamVjdGVkQnVuZGxlRm9ybUNsaWVudCgpLnNob3VsZE5vdGlmeU9uRm9ybUNoYW5n
ZXMoJm1fcGFnZSk7CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpzZWxlY3RJdGVtV3JpdGlu
Z0RpcmVjdGlvbklzTmF0dXJhbCgpCkBAIC04MTksMzkgKzgzMSw0MSBAQCBib29sIFdlYkNocm9t
ZUNsaWVudDo6aGFzT3BlbmVkUG9wdXAoKSBjb25zdAogCiBSZWZQdHI8V2ViQ29yZTo6UG9wdXBN
ZW51PiBXZWJDaHJvbWVDbGllbnQ6OmNyZWF0ZVBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1lbnVD
bGllbnQqIGNsaWVudCkgY29uc3QKIHsKLSAgICByZXR1cm4gV2ViUG9wdXBNZW51OjpjcmVhdGUo
bV9wYWdlLCBjbGllbnQpOworICAgIHJldHVybiBXZWJQb3B1cE1lbnU6OmNyZWF0ZSgmbV9wYWdl
LCBjbGllbnQpOwogfQogCiBSZWZQdHI8V2ViQ29yZTo6U2VhcmNoUG9wdXBNZW51PiBXZWJDaHJv
bWVDbGllbnQ6OmNyZWF0ZVNlYXJjaFBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1lbnVDbGllbnQq
IGNsaWVudCkgY29uc3QKIHsKLSAgICByZXR1cm4gV2ViU2VhcmNoUG9wdXBNZW51OjpjcmVhdGUo
bV9wYWdlLCBjbGllbnQpOworICAgIHJldHVybiBXZWJTZWFyY2hQb3B1cE1lbnU6OmNyZWF0ZSgm
bV9wYWdlLCBjbGllbnQpOwogfQogCiBHcmFwaGljc0xheWVyRmFjdG9yeSogV2ViQ2hyb21lQ2xp
ZW50OjpncmFwaGljc0xheWVyRmFjdG9yeSgpIGNvbnN0CiB7Ci0gICAgaWYgKGF1dG8gZHJhd2lu
Z0FyZWEgPSBtX3BhZ2UtPmRyYXdpbmdBcmVhKCkpCisgICAgaWYgKGF1dG8gZHJhd2luZ0FyZWEg
PSBtX3BhZ2UuZHJhd2luZ0FyZWEoKSkKICAgICAgICAgcmV0dXJuIGRyYXdpbmdBcmVhLT5ncmFw
aGljc0xheWVyRmFjdG9yeSgpOwogICAgIHJldHVybiBudWxscHRyOwogfQogCiAjaWYgVVNFKFJF
UVVFU1RfQU5JTUFUSU9OX0ZSQU1FX0RJU1BMQVlfTU9OSVRPUikKKwogUmVmUHRyPFdlYkNvcmU6
OkRpc3BsYXlSZWZyZXNoTW9uaXRvcj4gV2ViQ2hyb21lQ2xpZW50OjpjcmVhdGVEaXNwbGF5UmVm
cmVzaE1vbml0b3IoUGxhdGZvcm1EaXNwbGF5SUQgZGlzcGxheUlEKSBjb25zdAogewotICAgIHJl
dHVybiBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPmNyZWF0ZURpc3BsYXlSZWZyZXNoTW9uaXRvcihk
aXNwbGF5SUQpOworICAgIHJldHVybiBtX3BhZ2UuZHJhd2luZ0FyZWEoKS0+Y3JlYXRlRGlzcGxh
eVJlZnJlc2hNb25pdG9yKGRpc3BsYXlJRCk7CiB9CisKICNlbmRpZgogCiB2b2lkIFdlYkNocm9t
ZUNsaWVudDo6YXR0YWNoUm9vdEdyYXBoaWNzTGF5ZXIoRnJhbWUqLCBHcmFwaGljc0xheWVyKiBs
YXllcikKIHsKICAgICBpZiAobGF5ZXIpCi0gICAgICAgIG1fcGFnZS0+ZW50ZXJBY2NlbGVyYXRl
ZENvbXBvc2l0aW5nTW9kZShsYXllcik7CisgICAgICAgIG1fcGFnZS5lbnRlckFjY2VsZXJhdGVk
Q29tcG9zaXRpbmdNb2RlKGxheWVyKTsKICAgICBlbHNlCi0gICAgICAgIG1fcGFnZS0+ZXhpdEFj
Y2VsZXJhdGVkQ29tcG9zaXRpbmdNb2RlKCk7CisgICAgICAgIG1fcGFnZS5leGl0QWNjZWxlcmF0
ZWRDb21wb3NpdGluZ01vZGUoKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmF0dGFjaFZp
ZXdPdmVybGF5R3JhcGhpY3NMYXllcihGcmFtZSogZnJhbWUsIEdyYXBoaWNzTGF5ZXIqIGdyYXBo
aWNzTGF5ZXIpCiB7Ci0gICAgaWYgKGF1dG8gZHJhd2luZ0FyZWEgPSBtX3BhZ2UtPmRyYXdpbmdB
cmVhKCkpCisgICAgaWYgKGF1dG8gZHJhd2luZ0FyZWEgPSBtX3BhZ2UuZHJhd2luZ0FyZWEoKSkK
ICAgICAgICAgZHJhd2luZ0FyZWEtPmF0dGFjaFZpZXdPdmVybGF5R3JhcGhpY3NMYXllcihmcmFt
ZSwgZ3JhcGhpY3NMYXllcik7CiB9CiAKQEAgLTg2MiwxMjggKzg3NiwxMzYgQEAgdm9pZCBXZWJD
aHJvbWVDbGllbnQ6OnNldE5lZWRzT25lU2hvdERyYXdpbmdTeW5jaHJvbml6YXRpb24oKQogCiB2
b2lkIFdlYkNocm9tZUNsaWVudDo6c2NoZWR1bGVDb21wb3NpdGluZ0xheWVyRmx1c2goKQogewot
ICAgIGlmIChtX3BhZ2UtPmRyYXdpbmdBcmVhKCkpCi0gICAgICAgIG1fcGFnZS0+ZHJhd2luZ0Fy
ZWEoKS0+c2NoZWR1bGVDb21wb3NpdGluZ0xheWVyRmx1c2goKTsKKyAgICBpZiAobV9wYWdlLmRy
YXdpbmdBcmVhKCkpCisgICAgICAgIG1fcGFnZS5kcmF3aW5nQXJlYSgpLT5zY2hlZHVsZUNvbXBv
c2l0aW5nTGF5ZXJGbHVzaCgpOwogfQogCiBib29sIFdlYkNocm9tZUNsaWVudDo6YWRqdXN0TGF5
ZXJGbHVzaFRocm90dGxpbmcoV2ViQ29yZTo6TGF5ZXJGbHVzaFRocm90dGxlU3RhdGU6OkZsYWdz
IGZsYWdzKQogewotICAgIHJldHVybiBtX3BhZ2UtPmRyYXdpbmdBcmVhKCkgJiYgbV9wYWdlLT5k
cmF3aW5nQXJlYSgpLT5hZGp1c3RMYXllckZsdXNoVGhyb3R0bGluZyhmbGFncyk7CisgICAgcmV0
dXJuIG1fcGFnZS5kcmF3aW5nQXJlYSgpICYmIG1fcGFnZS5kcmF3aW5nQXJlYSgpLT5hZGp1c3RM
YXllckZsdXNoVGhyb3R0bGluZyhmbGFncyk7CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50Ojps
YXllclRyZWVTdGF0ZUlzRnJvemVuKCkgY29uc3QKIHsKLSAgICBpZiAobV9wYWdlLT5kcmF3aW5n
QXJlYSgpKQotICAgICAgICByZXR1cm4gbV9wYWdlLT5kcmF3aW5nQXJlYSgpLT5sYXllclRyZWVT
dGF0ZUlzRnJvemVuKCk7CisgICAgaWYgKG1fcGFnZS5kcmF3aW5nQXJlYSgpKQorICAgICAgICBy
ZXR1cm4gbV9wYWdlLmRyYXdpbmdBcmVhKCktPmxheWVyVHJlZVN0YXRlSXNGcm96ZW4oKTsKIAog
ICAgIHJldHVybiBmYWxzZTsKIH0KIAogI2lmIEVOQUJMRShBU1lOQ19TQ1JPTExJTkcpCisKIFBh
c3NSZWZQdHI8U2Nyb2xsaW5nQ29vcmRpbmF0b3I+IFdlYkNocm9tZUNsaWVudDo6Y3JlYXRlU2Ny
b2xsaW5nQ29vcmRpbmF0b3IoUGFnZSogcGFnZSkgY29uc3QKIHsKLSAgICBBU1NFUlQobV9wYWdl
LT5jb3JlUGFnZSgpID09IHBhZ2UpOwotICAgIGlmIChtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPnR5
cGUoKSA9PSBEcmF3aW5nQXJlYVR5cGVSZW1vdGVMYXllclRyZWUpCi0gICAgICAgIHJldHVybiBS
ZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvcjo6Y3JlYXRlKG1fcGFnZSk7Ci0KLSAgICByZXR1cm4g
MDsKKyAgICBBU1NFUlQobV9wYWdlLmNvcmVQYWdlKCkgPT0gcGFnZSk7CisgICAgaWYgKG1fcGFn
ZS5kcmF3aW5nQXJlYSgpLT50eXBlKCkgIT0gRHJhd2luZ0FyZWFUeXBlUmVtb3RlTGF5ZXJUcmVl
KQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICByZXR1cm4gUmVtb3RlU2Nyb2xsaW5nQ29v
cmRpbmF0b3I6OmNyZWF0ZSgmbV9wYWdlKTsKIH0KKwogI2VuZGlmCiAKICNpZiAoUExBVEZPUk0o
SU9TKSAmJiBIQVZFKEFWS0lUKSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BS
RVNFTlRBVElPTl9NT0RFKSkKKwogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnN1cHBvcnRzVmlkZW9G
dWxsc2NyZWVuKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVu
TW9kZSBtb2RlKQogewotICAgIHJldHVybiBtX3BhZ2UtPnZpZGVvRnVsbHNjcmVlbk1hbmFnZXIo
KS5zdXBwb3J0c1ZpZGVvRnVsbHNjcmVlbihtb2RlKTsKKyAgICByZXR1cm4gbV9wYWdlLnZpZGVv
RnVsbHNjcmVlbk1hbmFnZXIoKS5zdXBwb3J0c1ZpZGVvRnVsbHNjcmVlbihtb2RlKTsKIH0KIAog
dm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNldFVwUGxheWJhY2tDb250cm9sc01hbmFnZXIoV2ViQ29y
ZTo6SFRNTE1lZGlhRWxlbWVudCYgbWVkaWFFbGVtZW50KQogewotICAgIG1fcGFnZS0+cGxheWJh
Y2tTZXNzaW9uTWFuYWdlcigpLnNldFVwUGxheWJhY2tDb250cm9sc01hbmFnZXIobWVkaWFFbGVt
ZW50KTsKKyAgICBtX3BhZ2UucGxheWJhY2tTZXNzaW9uTWFuYWdlcigpLnNldFVwUGxheWJhY2tD
b250cm9sc01hbmFnZXIobWVkaWFFbGVtZW50KTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6
OmNsZWFyUGxheWJhY2tDb250cm9sc01hbmFnZXIoKQogewotICAgIG1fcGFnZS0+cGxheWJhY2tT
ZXNzaW9uTWFuYWdlcigpLmNsZWFyUGxheWJhY2tDb250cm9sc01hbmFnZXIoKTsKKyAgICBtX3Bh
Z2UucGxheWJhY2tTZXNzaW9uTWFuYWdlcigpLmNsZWFyUGxheWJhY2tDb250cm9sc01hbmFnZXIo
KTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlk
ZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmIHZpZGVvRWxlbWVudCwgV2ViQ29y
ZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIG1vZGUpCiB7CiAg
ICAgQVNTRVJUKG1vZGUgIT0gSFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5N
b2RlTm9uZSk7Ci0gICAgbV9wYWdlLT52aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyKCkuZW50ZXJWaWRl
b0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQodmlkZW9FbGVtZW50LCBtb2RlKTsKKyAgICBtX3Bh
Z2UudmlkZW9GdWxsc2NyZWVuTWFuYWdlcigpLmVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9F
bGVtZW50KHZpZGVvRWxlbWVudCwgbW9kZSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpl
eGl0VmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1l
bnQmIHZpZGVvRWxlbWVudCkKIHsKLSAgICBtX3BhZ2UtPnZpZGVvRnVsbHNjcmVlbk1hbmFnZXIo
KS5leGl0VmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KHZpZGVvRWxlbWVudCk7CisgICAg
bV9wYWdlLnZpZGVvRnVsbHNjcmVlbk1hbmFnZXIoKS5leGl0VmlkZW9GdWxsc2NyZWVuRm9yVmlk
ZW9FbGVtZW50KHZpZGVvRWxlbWVudCk7CiB9CiAKKyNlbmRpZgorCiAjaWYgUExBVEZPUk0oTUFD
KSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCisKIHZvaWQgV2ViQ2hyb21lQ2xp
ZW50OjpleGl0VmlkZW9GdWxsc2NyZWVuVG9Nb2RlV2l0aG91dEFuaW1hdGlvbihXZWJDb3JlOjpI
VE1MVmlkZW9FbGVtZW50JiB2aWRlb0VsZW1lbnQsIEhUTUxNZWRpYUVsZW1lbnRFbnVtczo6Vmlk
ZW9GdWxsc2NyZWVuTW9kZSB0YXJnZXRNb2RlKQogewotICAgIG1fcGFnZS0+dmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlcigpLmV4aXRWaWRlb0Z1bGxzY3JlZW5Ub01vZGVXaXRob3V0QW5pbWF0aW9uKHZp
ZGVvRWxlbWVudCwgdGFyZ2V0TW9kZSk7CisgICAgbV9wYWdlLnZpZGVvRnVsbHNjcmVlbk1hbmFn
ZXIoKS5leGl0VmlkZW9GdWxsc2NyZWVuVG9Nb2RlV2l0aG91dEFuaW1hdGlvbih2aWRlb0VsZW1l
bnQsIHRhcmdldE1vZGUpOwogfQotI2VuZGlmCiAKICNlbmRpZgotICAgIAorCiAjaWYgRU5BQkxF
KEZVTExTQ1JFRU5fQVBJKQorCiBib29sIFdlYkNocm9tZUNsaWVudDo6c3VwcG9ydHNGdWxsU2Ny
ZWVuRm9yRWxlbWVudChjb25zdCBXZWJDb3JlOjpFbGVtZW50KiwgYm9vbCB3aXRoS2V5Ym9hcmQp
CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+ZnVsbFNjcmVlbk1hbmFnZXIoKS0+c3VwcG9ydHNGdWxs
U2NyZWVuKHdpdGhLZXlib2FyZCk7CisgICAgcmV0dXJuIG1fcGFnZS5mdWxsU2NyZWVuTWFuYWdl
cigpLT5zdXBwb3J0c0Z1bGxTY3JlZW4od2l0aEtleWJvYXJkKTsKIH0KIAogdm9pZCBXZWJDaHJv
bWVDbGllbnQ6OmVudGVyRnVsbFNjcmVlbkZvckVsZW1lbnQoV2ViQ29yZTo6RWxlbWVudCogZWxl
bWVudCkKIHsKLSAgICBtX3BhZ2UtPmZ1bGxTY3JlZW5NYW5hZ2VyKCktPmVudGVyRnVsbFNjcmVl
bkZvckVsZW1lbnQoZWxlbWVudCk7CisgICAgbV9wYWdlLmZ1bGxTY3JlZW5NYW5hZ2VyKCktPmVu
dGVyRnVsbFNjcmVlbkZvckVsZW1lbnQoZWxlbWVudCk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xp
ZW50OjpleGl0RnVsbFNjcmVlbkZvckVsZW1lbnQoV2ViQ29yZTo6RWxlbWVudCogZWxlbWVudCkK
IHsKLSAgICBtX3BhZ2UtPmZ1bGxTY3JlZW5NYW5hZ2VyKCktPmV4aXRGdWxsU2NyZWVuRm9yRWxl
bWVudChlbGVtZW50KTsKKyAgICBtX3BhZ2UuZnVsbFNjcmVlbk1hbmFnZXIoKS0+ZXhpdEZ1bGxT
Y3JlZW5Gb3JFbGVtZW50KGVsZW1lbnQpOwogfQorCiAjZW5kaWYKIAogI2lmIFBMQVRGT1JNKElP
UykKKwogRmxvYXRTaXplIFdlYkNocm9tZUNsaWVudDo6c2NyZWVuU2l6ZSgpIGNvbnN0CiB7Ci0g
ICAgcmV0dXJuIG1fcGFnZS0+c2NyZWVuU2l6ZSgpOworICAgIHJldHVybiBtX3BhZ2Uuc2NyZWVu
U2l6ZSgpOwogfQogCiBGbG9hdFNpemUgV2ViQ2hyb21lQ2xpZW50OjphdmFpbGFibGVTY3JlZW5T
aXplKCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5hdmFpbGFibGVTY3JlZW5TaXplKCk7
CisgICAgcmV0dXJuIG1fcGFnZS5hdmFpbGFibGVTY3JlZW5TaXplKCk7CiB9CisKICNlbmRpZgog
CiB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZGlzcGF0Y2hWaWV3cG9ydFByb3BlcnRpZXNEaWRDaGFu
Z2UoY29uc3QgVmlld3BvcnRBcmd1bWVudHMmIHZpZXdwb3J0QXJndW1lbnRzKSBjb25zdAogewot
ICAgIG1fcGFnZS0+dmlld3BvcnRQcm9wZXJ0aWVzRGlkQ2hhbmdlKHZpZXdwb3J0QXJndW1lbnRz
KTsKKyAgICBtX3BhZ2Uudmlld3BvcnRQcm9wZXJ0aWVzRGlkQ2hhbmdlKHZpZXdwb3J0QXJndW1l
bnRzKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6Om5vdGlmeVNjcm9sbGVyVGh1bWJJc1Zp
c2libGVJblJlY3QoY29uc3QgSW50UmVjdCYgc2Nyb2xsZXJUaHVtYikKIHsKLSAgICBtX3BhZ2Ut
PnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6Tm90aWZ5U2Nyb2xsZXJUaHVtYklzVmlzaWJs
ZUluUmVjdChzY3JvbGxlclRodW1iKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6Tm90aWZ5U2Nyb2xsZXJUaHVtYklzVmlzaWJsZUluUmVjdChzY3JvbGxlclRodW1i
KSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpyZWNvbW1lbmRlZFNjcm9sbGJhclN0eWxl
RGlkQ2hhbmdlKFNjcm9sbGJhclN0eWxlIG5ld1N0eWxlKQogewotICAgIG1fcGFnZS0+c2VuZChN
ZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZWNvbW1lbmRlZFNjcm9sbGJhclN0eWxlRGlkQ2hhbmdl
KHN0YXRpY19jYXN0PGludDMyX3Q+KG5ld1N0eWxlKSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OlJlY29tbWVuZGVkU2Nyb2xsYmFyU3R5bGVEaWRDaGFuZ2Uoc3Rh
dGljX2Nhc3Q8aW50MzJfdD4obmV3U3R5bGUpKSk7CiB9CiAKIHN0ZDo6b3B0aW9uYWw8U2Nyb2xs
YmFyT3ZlcmxheVN0eWxlPiBXZWJDaHJvbWVDbGllbnQ6OnByZWZlcnJlZFNjcm9sbGJhck92ZXJs
YXlTdHlsZSgpCiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+c2Nyb2xsYmFyT3ZlcmxheVN0eWxlKCk7
IAorICAgIHJldHVybiBtX3BhZ2Uuc2Nyb2xsYmFyT3ZlcmxheVN0eWxlKCk7CiB9CiAKIENvbG9y
IFdlYkNocm9tZUNsaWVudDo6dW5kZXJsYXlDb2xvcigpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1f
cGFnZS0+dW5kZXJsYXlDb2xvcigpOworICAgIHJldHVybiBtX3BhZ2UudW5kZXJsYXlDb2xvcigp
OwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6cGFnZUV4dGVuZGVkQmFja2dyb3VuZENvbG9y
RGlkQ2hhbmdlKENvbG9yIGJhY2tncm91bmRDb2xvcikgY29uc3QKIHsKICNpZiBQTEFURk9STShN
QUMpIHx8IFBMQVRGT1JNKEVGTCkKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6UGFnZUV4dGVuZGVkQmFja2dyb3VuZENvbG9yRGlkQ2hhbmdlKGJhY2tncm91bmRDb2xv
cikpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlBhZ2VFeHRlbmRl
ZEJhY2tncm91bmRDb2xvckRpZENoYW5nZShiYWNrZ3JvdW5kQ29sb3IpKTsKICNlbHNlCiAgICAg
VU5VU0VEX1BBUkFNKGJhY2tncm91bmRDb2xvcik7CiAjZW5kaWYKQEAgLTk5MSw0MyArMTAxMyw0
MyBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6cGFnZUV4dGVuZGVkQmFja2dyb3VuZENvbG9yRGlk
Q2hhbmdlKENvbG9yIGJhY2tncm91bmRDb2xvcgogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6d2hl
ZWxFdmVudEhhbmRsZXJzQ2hhbmdlZChib29sIGhhc0hhbmRsZXJzKQogewotICAgIG1fcGFnZS0+
d2hlZWxFdmVudEhhbmRsZXJzQ2hhbmdlZChoYXNIYW5kbGVycyk7CisgICAgbV9wYWdlLndoZWVs
RXZlbnRIYW5kbGVyc0NoYW5nZWQoaGFzSGFuZGxlcnMpOwogfQogCiBTdHJpbmcgV2ViQ2hyb21l
Q2xpZW50OjpwbHVnSW5TdGFydExhYmVsVGl0bGUoY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkgY29u
c3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkucGx1Z0lu
U3RhcnRMYWJlbFRpdGxlKG1pbWVUeXBlKTsKKyAgICByZXR1cm4gbV9wYWdlLmluamVjdGVkQnVu
ZGxlVUlDbGllbnQoKS5wbHVnSW5TdGFydExhYmVsVGl0bGUobWltZVR5cGUpOwogfQogCiBTdHJp
bmcgV2ViQ2hyb21lQ2xpZW50OjpwbHVnSW5TdGFydExhYmVsU3VidGl0bGUoY29uc3QgU3RyaW5n
JiBtaW1lVHlwZSkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJ
Q2xpZW50KCkucGx1Z0luU3RhcnRMYWJlbFN1YnRpdGxlKG1pbWVUeXBlKTsKKyAgICByZXR1cm4g
bV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5wbHVnSW5TdGFydExhYmVsU3VidGl0bGUo
bWltZVR5cGUpOwogfQogCiBTdHJpbmcgV2ViQ2hyb21lQ2xpZW50OjpwbHVnSW5FeHRyYVN0eWxl
U2hlZXQoKSBjb25zdAogewotICAgIHJldHVybiBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGll
bnQoKS5wbHVnSW5FeHRyYVN0eWxlU2hlZXQoKTsKKyAgICByZXR1cm4gbV9wYWdlLmluamVjdGVk
QnVuZGxlVUlDbGllbnQoKS5wbHVnSW5FeHRyYVN0eWxlU2hlZXQoKTsKIH0KIAogU3RyaW5nIFdl
YkNocm9tZUNsaWVudDo6cGx1Z0luRXh0cmFTY3JpcHQoKSBjb25zdAogewotICAgIHJldHVybiBt
X3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5wbHVnSW5FeHRyYVNjcmlwdCgpOworICAg
IHJldHVybiBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLnBsdWdJbkV4dHJhU2NyaXB0
KCk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjplbmFibGVTdWRkZW5UZXJtaW5hdGlvbigp
CiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQcm9jZXNzUHJveHk6OkVuYWJsZVN1
ZGRlblRlcm1pbmF0aW9uKCkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQcm9jZXNz
UHJveHk6OkVuYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNs
aWVudDo6ZGlzYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVz
c2FnZXM6OldlYlByb2Nlc3NQcm94eTo6RGlzYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkpOworICAg
IG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQcm9jZXNzUHJveHk6OkRpc2FibGVTdWRkZW5UZXJt
aW5hdGlvbigpKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmRpZEFkZEhlYWRlckxheWVy
KEdyYXBoaWNzTGF5ZXIqIGhlYWRlclBhcmVudCkKIHsKICNpZiBFTkFCTEUoUlVCQkVSX0JBTkRJ
TkcpCi0gICAgaWYgKFBhZ2VCYW5uZXIqIGJhbm5lciA9IG1fcGFnZS0+aGVhZGVyUGFnZUJhbm5l
cigpKQorICAgIGlmIChQYWdlQmFubmVyKiBiYW5uZXIgPSBtX3BhZ2UuaGVhZGVyUGFnZUJhbm5l
cigpKQogICAgICAgICBiYW5uZXItPmRpZEFkZFBhcmVudExheWVyKGhlYWRlclBhcmVudCk7CiAj
ZWxzZQogICAgIFVOVVNFRF9QQVJBTShoZWFkZXJQYXJlbnQpOwpAQCAtMTAzNyw3ICsxMDU5LDcg
QEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmRpZEFkZEhlYWRlckxheWVyKEdyYXBoaWNzTGF5ZXIq
IGhlYWRlclBhcmVudCkKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpkaWRBZGRGb290ZXJMYXllcihH
cmFwaGljc0xheWVyKiBmb290ZXJQYXJlbnQpCiB7CiAjaWYgRU5BQkxFKFJVQkJFUl9CQU5ESU5H
KQotICAgIGlmIChQYWdlQmFubmVyKiBiYW5uZXIgPSBtX3BhZ2UtPmZvb3RlclBhZ2VCYW5uZXIo
KSkKKyAgICBpZiAoUGFnZUJhbm5lciogYmFubmVyID0gbV9wYWdlLmZvb3RlclBhZ2VCYW5uZXIo
KSkKICAgICAgICAgYmFubmVyLT5kaWRBZGRQYXJlbnRMYXllcihmb290ZXJQYXJlbnQpOwogI2Vs
c2UKICAgICBVTlVTRURfUEFSQU0oZm9vdGVyUGFyZW50KTsKQEAgLTEwNDYsMzYgKzEwNjgsMzkg
QEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmRpZEFkZEZvb3RlckxheWVyKEdyYXBoaWNzTGF5ZXIq
IGZvb3RlclBhcmVudCkKIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnNob3VsZFVzZVRpbGVkQmFj
a2luZ0ZvckZyYW1lVmlldyhjb25zdCBGcmFtZVZpZXcqIGZyYW1lVmlldykgY29uc3QKIHsKLSAg
ICByZXR1cm4gbV9wYWdlLT5kcmF3aW5nQXJlYSgpLT5zaG91bGRVc2VUaWxlZEJhY2tpbmdGb3JG
cmFtZVZpZXcoZnJhbWVWaWV3KTsKKyAgICByZXR1cm4gbV9wYWdlLmRyYXdpbmdBcmVhKCktPnNo
b3VsZFVzZVRpbGVkQmFja2luZ0ZvckZyYW1lVmlldyhmcmFtZVZpZXcpOwogfQogCiB2b2lkIFdl
YkNocm9tZUNsaWVudDo6aXNQbGF5aW5nTWVkaWFEaWRDaGFuZ2UoV2ViQ29yZTo6TWVkaWFQcm9k
dWNlcjo6TWVkaWFTdGF0ZUZsYWdzIHN0YXRlLCB1aW50NjRfdCBzb3VyY2VFbGVtZW50SUQpCiB7
Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OklzUGxheWluZ01lZGlh
RGlkQ2hhbmdlKHN0YXRlLCBzb3VyY2VFbGVtZW50SUQpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpJc1BsYXlpbmdNZWRpYURpZENoYW5nZShzdGF0ZSwgc291cmNl
RWxlbWVudElEKSk7CiB9CiAKICNpZiBFTkFCTEUoTUVESUFfU0VTU0lPTikKKwogdm9pZCBXZWJD
aHJvbWVDbGllbnQ6Omhhc01lZGlhU2Vzc2lvbldpdGhBY3RpdmVNZWRpYUVsZW1lbnRzRGlkQ2hh
bmdlKGJvb2wgc3RhdGUpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6Okhhc01lZGlhU2Vzc2lvbldpdGhBY3RpdmVNZWRpYUVsZW1lbnRzRGlkQ2hhbmdlKHN0YXRl
KSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6SGFzTWVkaWFTZXNz
aW9uV2l0aEFjdGl2ZU1lZGlhRWxlbWVudHNEaWRDaGFuZ2Uoc3RhdGUpKTsKIH0KIAogdm9pZCBX
ZWJDaHJvbWVDbGllbnQ6Om1lZGlhU2Vzc2lvbk1ldGFkYXRhRGlkQ2hhbmdlKGNvbnN0IFdlYkNv
cmU6Ok1lZGlhU2Vzc2lvbk1ldGFkYXRhJiBtZXRhZGF0YSkKIHsKLSAgICBtX3BhZ2UtPnNlbmQo
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6TWVkaWFTZXNzaW9uTWV0YWRhdGFEaWRDaGFuZ2UobWV0
YWRhdGEpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpNZWRpYVNl
c3Npb25NZXRhZGF0YURpZENoYW5nZShtZXRhZGF0YSkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNs
aWVudDo6Zm9jdXNlZENvbnRlbnRNZWRpYUVsZW1lbnREaWRDaGFuZ2UodWludDY0X3QgZWxlbWVu
dElEKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpGb2N1c2Vk
Q29udGVudE1lZGlhRWxlbWVudERpZENoYW5nZShlbGVtZW50SUQpKTsKKyAgICBtX3BhZ2Uuc2Vu
ZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpGb2N1c2VkQ29udGVudE1lZGlhRWxlbWVudERpZENo
YW5nZShlbGVtZW50SUQpKTsKIH0KKwogI2VuZGlmCiAKICNpZiBFTkFCTEUoU1VCVExFX0NSWVBU
TykKKwogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OndyYXBDcnlwdG9LZXkoY29uc3QgVmVjdG9yPHVp
bnQ4X3Q+JiBrZXksIFZlY3Rvcjx1aW50OF90PiYgd3JhcHBlZEtleSkgY29uc3QKIHsKICAgICBi
b29sIHN1Y2NlZWRlZDsKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFBy
b2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OldyYXBD
cnlwdG9LZXkoa2V5KSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6V3JhcENyeXB0b0tleTo6UmVw
bHkoc3VjY2VlZGVkLCB3cmFwcGVkS2V5KSwgbV9wYWdlLT5wYWdlSUQoKSkpCisgICAgaWYgKCFX
ZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3lu
YyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpXcmFwQ3J5cHRvS2V5KGtleSksIE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OldyYXBDcnlwdG9LZXk6OlJlcGx5KHN1Y2NlZWRlZCwgd3JhcHBlZEtleSks
IG1fcGFnZS5wYWdlSUQoKSkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICByZXR1cm4gc3Vj
Y2VlZGVkOwogfQpAQCAtMTA4MywzNCArMTEwOCwzOSBAQCBib29sIFdlYkNocm9tZUNsaWVudDo6
d3JhcENyeXB0b0tleShjb25zdCBWZWN0b3I8dWludDhfdD4mIGtleSwgVmVjdG9yPHVpbnQ4X3Q+
JgogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnVud3JhcENyeXB0b0tleShjb25zdCBWZWN0b3I8dWlu
dDhfdD4mIHdyYXBwZWRLZXksIFZlY3Rvcjx1aW50OF90PiYga2V5KSBjb25zdAogewogICAgIGJv
b2wgc3VjY2VlZGVkOwotICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJv
Y2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6VW53cmFw
Q3J5cHRvS2V5KHdyYXBwZWRLZXkpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpVbndyYXBDcnlw
dG9LZXk6OlJlcGx5KHN1Y2NlZWRlZCwga2V5KSwgbV9wYWdlLT5wYWdlSUQoKSkpCisgICAgaWYg
KCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5k
U3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpVbndyYXBDcnlwdG9LZXkod3JhcHBlZEtleSks
IE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlVud3JhcENyeXB0b0tleTo6UmVwbHkoc3VjY2VlZGVk
LCBrZXkpLCBtX3BhZ2UucGFnZUlEKCkpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgcmV0
dXJuIHN1Y2NlZWRlZDsKIH0KKwogI2VuZGlmCiAKICNpZiBFTkFCTEUoVEVMRVBIT05FX05VTUJF
Ul9ERVRFQ1RJT04pICYmIFBMQVRGT1JNKE1BQykKKwogdm9pZCBXZWJDaHJvbWVDbGllbnQ6Omhh
bmRsZVRlbGVwaG9uZU51bWJlckNsaWNrKGNvbnN0IFN0cmluZyYgbnVtYmVyLCBjb25zdCBXZWJD
b3JlOjpJbnRQb2ludCYgcG9pbnQpCiB7Ci0gICAgbV9wYWdlLT5oYW5kbGVUZWxlcGhvbmVOdW1i
ZXJDbGljayhudW1iZXIsIHBvaW50KTsKKyAgICBtX3BhZ2UuaGFuZGxlVGVsZXBob25lTnVtYmVy
Q2xpY2sobnVtYmVyLCBwb2ludCk7CiB9CisKICNlbmRpZgogCiAjaWYgRU5BQkxFKFNFUlZJQ0Vf
Q09OVFJPTFMpCisKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpoYW5kbGVTZWxlY3Rpb25TZXJ2aWNl
Q2xpY2soV2ViQ29yZTo6RnJhbWVTZWxlY3Rpb24mIHNlbGVjdGlvbiwgY29uc3QgVmVjdG9yPFN0
cmluZz4mIHRlbGVwaG9uZU51bWJlcnMsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBwb2ludCkK
IHsKLSAgICBtX3BhZ2UtPmhhbmRsZVNlbGVjdGlvblNlcnZpY2VDbGljayhzZWxlY3Rpb24sIHRl
bGVwaG9uZU51bWJlcnMsIHBvaW50KTsKKyAgICBtX3BhZ2UuaGFuZGxlU2VsZWN0aW9uU2Vydmlj
ZUNsaWNrKHNlbGVjdGlvbiwgdGVsZXBob25lTnVtYmVycywgcG9pbnQpOwogfQogCiBib29sIFdl
YkNocm9tZUNsaWVudDo6aGFzUmVsZXZhbnRTZWxlY3Rpb25TZXJ2aWNlcyhib29sIGlzVGV4dE9u
bHkpIGNvbnN0CiB7CiAgICAgcmV0dXJuIChpc1RleHRPbmx5ICYmIFdlYlByb2Nlc3M6OnNpbmds
ZXRvbigpLmhhc1NlbGVjdGlvblNlcnZpY2VzKCkpIHx8IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigp
Lmhhc1JpY2hDb250ZW50U2VydmljZXMoKTsKIH0KKwogI2VuZGlmCiAKIGJvb2wgV2ViQ2hyb21l
Q2xpZW50OjpzaG91bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHMoKSBjb25zdAogewotICAg
IHJldHVybiBtX3BhZ2UtPnNob3VsZERpc3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50cygpOworICAg
IHJldHVybiBtX3BhZ2Uuc2hvdWxkRGlzcGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKCk7CiB9CiAK
IHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpoYW5kbGVBdXRvRmlsbEJ1dHRvbkNsaWNrKEhUTUxJbnB1
dEVsZW1lbnQmIGlucHV0RWxlbWVudCkKQEAgLTExMTksNjQgKzExNDksNjUgQEAgdm9pZCBXZWJD
aHJvbWVDbGllbnQ6OmhhbmRsZUF1dG9GaWxsQnV0dG9uQ2xpY2soSFRNTElucHV0RWxlbWVudCYg
aW5wdXRFbGVtZW50KQogCiAgICAgLy8gTm90aWZ5IHRoZSBidW5kbGUgY2xpZW50LgogICAgIGF1
dG8gbm9kZUhhbmRsZSA9IEluamVjdGVkQnVuZGxlTm9kZUhhbmRsZTo6Z2V0T3JDcmVhdGUoaW5w
dXRFbGVtZW50KTsKLSAgICBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5kaWRDbGlj
a0F1dG9GaWxsQnV0dG9uKCptX3BhZ2UsIG5vZGVIYW5kbGUuZ2V0KCksIHVzZXJEYXRhKTsKKyAg
ICBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLmRpZENsaWNrQXV0b0ZpbGxCdXR0b24o
bV9wYWdlLCBub2RlSGFuZGxlLmdldCgpLCB1c2VyRGF0YSk7CiAKICAgICAvLyBOb3RpZnkgdGhl
IFVJUHJvY2Vzcy4KLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6SGFu
ZGxlQXV0b0ZpbGxCdXR0b25DbGljayhVc2VyRGF0YShXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS50
cmFuc2Zvcm1PYmplY3RzVG9IYW5kbGVzKHVzZXJEYXRhLmdldCgpKS5nZXQoKSkpKTsKKyAgICBt
X3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpIYW5kbGVBdXRvRmlsbEJ1dHRvbkNs
aWNrKFVzZXJEYXRhKFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnRyYW5zZm9ybU9iamVjdHNUb0hh
bmRsZXModXNlckRhdGEuZ2V0KCkpLmdldCgpKSkpOwogfQogCiAjaWYgRU5BQkxFKFdJUkVMRVNT
X1BMQVlCQUNLX1RBUkdFVCkgJiYgIVBMQVRGT1JNKElPUykKKwogdm9pZCBXZWJDaHJvbWVDbGll
bnQ6OmFkZFBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2NF90IGNvbnRleHRJZCkKIHsK
LSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6QWRkUGxheWJhY2tUYXJn
ZXRQaWNrZXJDbGllbnQoY29udGV4dElkKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6Oldl
YlBhZ2VQcm94eTo6QWRkUGxheWJhY2tUYXJnZXRQaWNrZXJDbGllbnQoY29udGV4dElkKSk7CiB9
CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpyZW1vdmVQbGF5YmFja1RhcmdldFBpY2tlckNsaWVu
dCh1aW50NjRfdCBjb250ZXh0SWQpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OlJlbW92ZVBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KGNvbnRleHRJZCkpOwor
ICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJlbW92ZVBsYXliYWNrVGFy
Z2V0UGlja2VyQ2xpZW50KGNvbnRleHRJZCkpOwogfQogCi0KIHZvaWQgV2ViQ2hyb21lQ2xpZW50
OjpzaG93UGxheWJhY2tUYXJnZXRQaWNrZXIodWludDY0X3QgY29udGV4dElkLCBjb25zdCBXZWJD
b3JlOjpJbnRQb2ludCYgcG9zaXRpb24sIGJvb2wgaXNWaWRlbykKIHsKLSAgICBGcmFtZVZpZXcq
IGZyYW1lVmlldyA9IG1fcGFnZS0+bWFpbkZyYW1lKCktPnZpZXcoKTsKKyAgICBGcmFtZVZpZXcq
IGZyYW1lVmlldyA9IG1fcGFnZS5tYWluRnJhbWUoKS0+dmlldygpOwogICAgIEZsb2F0UmVjdCBy
ZWN0KGZyYW1lVmlldy0+Y29udGVudHNUb1Jvb3RWaWV3KGZyYW1lVmlldy0+d2luZG93VG9Db250
ZW50cyhwb3NpdGlvbikpLCBGbG9hdFNpemUoKSk7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6OlNob3dQbGF5YmFja1RhcmdldFBpY2tlcihjb250ZXh0SWQsIHJlY3Qs
IGlzVmlkZW8pKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTaG93
UGxheWJhY2tUYXJnZXRQaWNrZXIoY29udGV4dElkLCByZWN0LCBpc1ZpZGVvKSk7CiB9CiAKIHZv
aWQgV2ViQ2hyb21lQ2xpZW50OjpwbGF5YmFja1RhcmdldFBpY2tlckNsaWVudFN0YXRlRGlkQ2hh
bmdlKHVpbnQ2NF90IGNvbnRleHRJZCwgV2ViQ29yZTo6TWVkaWFQcm9kdWNlcjo6TWVkaWFTdGF0
ZUZsYWdzIHN0YXRlKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjpQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudFN0YXRlRGlkQ2hhbmdlKGNvbnRleHRJZCwgc3Rh
dGUpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQbGF5YmFja1Rh
cmdldFBpY2tlckNsaWVudFN0YXRlRGlkQ2hhbmdlKGNvbnRleHRJZCwgc3RhdGUpKTsKIH0KIAog
dm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNldE1vY2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyRW5h
YmxlZChib29sIGVuYWJsZWQpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OlNldE1vY2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyRW5hYmxlZChlbmFibGVkKSk7
CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0TW9ja01lZGlhUGxh
eWJhY2tUYXJnZXRQaWNrZXJFbmFibGVkKGVuYWJsZWQpKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVD
bGllbnQ6OnNldE1vY2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyU3RhdGUoY29uc3QgU3RyaW5n
JiBuYW1lLCBXZWJDb3JlOjpNZWRpYVBsYXliYWNrVGFyZ2V0Q29udGV4dDo6U3RhdGUgc3RhdGUp
CiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldE1vY2tNZWRp
YVBsYXliYWNrVGFyZ2V0UGlja2VyU3RhdGUobmFtZSwgc3RhdGUpKTsKKyAgICBtX3BhZ2Uuc2Vu
ZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tl
clN0YXRlKG5hbWUsIHN0YXRlKSk7CiB9CisKICNlbmRpZgogCiB2b2lkIFdlYkNocm9tZUNsaWVu
dDo6aW1hZ2VPck1lZGlhRG9jdW1lbnRTaXplQ2hhbmdlZChjb25zdCBXZWJDb3JlOjpJbnRTaXpl
JiBuZXdTaXplKQogewotICAgIG1fcGFnZS0+aW1hZ2VPck1lZGlhRG9jdW1lbnRTaXplQ2hhbmdl
ZChuZXdTaXplKTsKKyAgICBtX3BhZ2UuaW1hZ2VPck1lZGlhRG9jdW1lbnRTaXplQ2hhbmdlZChu
ZXdTaXplKTsKIH0KIAotI2lmIEVOQUJMRShWSURFTykKLSNpZiBVU0UoR1NUUkVBTUVSKQorI2lm
IEVOQUJMRShWSURFTykgJiYgVVNFKEdTVFJFQU1FUikKKwogdm9pZCBXZWJDaHJvbWVDbGllbnQ6
OnJlcXVlc3RJbnN0YWxsTWlzc2luZ01lZGlhUGx1Z2lucyhjb25zdCBTdHJpbmcmIGRldGFpbHMs
IGNvbnN0IFN0cmluZyYgZGVzY3JpcHRpb24sIFdlYkNvcmU6Ok1lZGlhUGxheWVyUmVxdWVzdElu
c3RhbGxNaXNzaW5nUGx1Z2luc0NhbGxiYWNrJiBjYWxsYmFjaykKIHsKLSAgICBtX3BhZ2UtPnJl
cXVlc3RJbnN0YWxsTWlzc2luZ01lZGlhUGx1Z2lucyhkZXRhaWxzLCBkZXNjcmlwdGlvbiwgY2Fs
bGJhY2spOworICAgIG1fcGFnZS5yZXF1ZXN0SW5zdGFsbE1pc3NpbmdNZWRpYVBsdWdpbnMoZGV0
YWlscywgZGVzY3JpcHRpb24sIGNhbGxiYWNrKTsKIH0KKwogI2VuZGlmCi0jZW5kaWYgLy8gRU5B
QkxFKFZJREVPKQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZGlkSW52YWxpZGF0ZURvY3VtZW50
TWFya2VyUmVjdHMoKQogewotICAgIG1fcGFnZS0+ZmluZENvbnRyb2xsZXIoKS5kaWRJbnZhbGlk
YXRlRG9jdW1lbnRNYXJrZXJSZWN0cygpOworICAgIG1fcGFnZS5maW5kQ29udHJvbGxlcigpLmRp
ZEludmFsaWRhdGVEb2N1bWVudE1hcmtlclJlY3RzKCk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdl
YktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9XZWJDaHJvbWVDbGllbnQuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmgKaW5kZXggYWY5MGIzOGRkOTVmMzJhZjQ4YTQ1ODdiYTI3
ZjJmYmM1ZDdkNmIxZC4uZDRhOTkxYjI3NDg2MGZmYzMyZGYzNGUwZjFiYzQ3MzdhYWI5MGUwMCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJD
aHJvbWVDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L1dlYkNocm9tZUNsaWVudC5oCkBAIC0yNiwxOTggKzI2LDE5NiBAQAogCiAjcHJhZ21hIG9u
Y2UKIAotI2luY2x1ZGUgIldlYkZyYW1lLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9DaHJvbWVDbGll
bnQuaD4KLSNpbmNsdWRlIDxXZWJDb3JlL1ZpZXdwb3J0QXJndW1lbnRzLmg+Ci0jaW5jbHVkZSA8
d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCitjbGFzcyBXZWJG
cmFtZTsKIGNsYXNzIFdlYlBhZ2U7CiAKLWNsYXNzIFdlYkNocm9tZUNsaWVudCA6IHB1YmxpYyBX
ZWJDb3JlOjpDaHJvbWVDbGllbnQgeworY2xhc3MgV2ViQ2hyb21lQ2xpZW50IGZpbmFsIDogcHVi
bGljIFdlYkNvcmU6OkNocm9tZUNsaWVudCB7CiBwdWJsaWM6Ci0gICAgV2ViQ2hyb21lQ2xpZW50
KFdlYlBhZ2UqIHBhZ2UpCi0gICAgICAgIDogbV9jYWNoZWRNYWluRnJhbWVIYXNIb3Jpem9udGFs
U2Nyb2xsYmFyKGZhbHNlKQotICAgICAgICAsIG1fY2FjaGVkTWFpbkZyYW1lSGFzVmVydGljYWxT
Y3JvbGxiYXIoZmFsc2UpCi0gICAgICAgICwgbV9wYWdlKHBhZ2UpCi0gICAgewotICAgIH0KLSAg
ICAKLSAgICBXZWJQYWdlKiBwYWdlKCkgY29uc3QgeyByZXR1cm4gbV9wYWdlOyB9CisgICAgV2Vi
Q2hyb21lQ2xpZW50KFdlYlBhZ2UmKTsKIAotICAgIHZpcnR1YWwgdm9pZCogd2ViVmlldygpIGNv
bnN0IHsgcmV0dXJuIDA7IH0KKyAgICBXZWJQYWdlJiBwYWdlKCkgY29uc3QgeyByZXR1cm4gbV9w
YWdlOyB9CiAKIHByaXZhdGU6Ci0gICAgdm9pZCBjaHJvbWVEZXN0cm95ZWQoKSBvdmVycmlkZTsK
KyAgICB+V2ViQ2hyb21lQ2xpZW50KCk7CisKKyAgICB2b2lkIGNocm9tZURlc3Ryb3llZCgpIGZp
bmFsOwogICAgIAotICAgIHZvaWQgc2V0V2luZG93UmVjdChjb25zdCBXZWJDb3JlOjpGbG9hdFJl
Y3QmKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpGbG9hdFJlY3Qgd2luZG93UmVjdCgpIG92ZXJy
aWRlOworICAgIHZvaWQgc2V0V2luZG93UmVjdChjb25zdCBXZWJDb3JlOjpGbG9hdFJlY3QmKSBm
aW5hbDsKKyAgICBXZWJDb3JlOjpGbG9hdFJlY3Qgd2luZG93UmVjdCgpIGZpbmFsOwogICAgIAot
ICAgIFdlYkNvcmU6OkZsb2F0UmVjdCBwYWdlUmVjdCgpIG92ZXJyaWRlOworICAgIFdlYkNvcmU6
OkZsb2F0UmVjdCBwYWdlUmVjdCgpIGZpbmFsOwogICAgIAotICAgIHZvaWQgZm9jdXMoKSBvdmVy
cmlkZTsKLSAgICB2b2lkIHVuZm9jdXMoKSBvdmVycmlkZTsKKyAgICB2b2lkIGZvY3VzKCkgZmlu
YWw7CisgICAgdm9pZCB1bmZvY3VzKCkgZmluYWw7CiAgICAgCi0gICAgYm9vbCBjYW5UYWtlRm9j
dXMoV2ViQ29yZTo6Rm9jdXNEaXJlY3Rpb24pIG92ZXJyaWRlOwotICAgIHZvaWQgdGFrZUZvY3Vz
KFdlYkNvcmU6OkZvY3VzRGlyZWN0aW9uKSBvdmVycmlkZTsKKyAgICBib29sIGNhblRha2VGb2N1
cyhXZWJDb3JlOjpGb2N1c0RpcmVjdGlvbikgZmluYWw7CisgICAgdm9pZCB0YWtlRm9jdXMoV2Vi
Q29yZTo6Rm9jdXNEaXJlY3Rpb24pIGZpbmFsOwogCi0gICAgdm9pZCBmb2N1c2VkRWxlbWVudENo
YW5nZWQoV2ViQ29yZTo6RWxlbWVudCopIG92ZXJyaWRlOwotICAgIHZvaWQgZm9jdXNlZEZyYW1l
Q2hhbmdlZChXZWJDb3JlOjpGcmFtZSopIG92ZXJyaWRlOworICAgIHZvaWQgZm9jdXNlZEVsZW1l
bnRDaGFuZ2VkKFdlYkNvcmU6OkVsZW1lbnQqKSBmaW5hbDsKKyAgICB2b2lkIGZvY3VzZWRGcmFt
ZUNoYW5nZWQoV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKIAogICAgIC8vIFRoZSBGcmFtZSBwb2lu
dGVyIHByb3ZpZGVzIHRoZSBDaHJvbWVDbGllbnQgd2l0aCBjb250ZXh0IGFib3V0IHdoaWNoCiAg
ICAgLy8gRnJhbWUgd2FudHMgdG8gY3JlYXRlIHRoZSBuZXcgUGFnZS4gIEFsc28sIHRoZSBuZXds
eSBjcmVhdGVkIHdpbmRvdwogICAgIC8vIHNob3VsZCBub3QgYmUgc2hvd24gdG8gdGhlIHVzZXIg
dW50aWwgdGhlIENocm9tZUNsaWVudCBvZiB0aGUgbmV3bHkKICAgICAvLyBjcmVhdGVkIFBhZ2Ug
aGFzIGl0cyBzaG93IG1ldGhvZCBjYWxsZWQuCi0gICAgV2ViQ29yZTo6UGFnZSogY3JlYXRlV2lu
ZG93KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV2ViQ29yZTo6RnJhbWVMb2FkUmVxdWVzdCYsIGNv
bnN0IFdlYkNvcmU6OldpbmRvd0ZlYXR1cmVzJiwgY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFj
dGlvbiYpIG92ZXJyaWRlOwotICAgIHZvaWQgc2hvdygpIG92ZXJyaWRlOworICAgIFdlYkNvcmU6
OlBhZ2UqIGNyZWF0ZVdpbmRvdyhXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6OkZyYW1l
TG9hZFJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpXaW5kb3dGZWF0dXJlcyYsIGNvbnN0IFdlYkNv
cmU6Ok5hdmlnYXRpb25BY3Rpb24mKSBmaW5hbDsKKyAgICB2b2lkIHNob3coKSBmaW5hbDsKICAg
ICAKLSAgICBib29sIGNhblJ1bk1vZGFsKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBydW5Nb2RhbCgp
IG92ZXJyaWRlOworICAgIGJvb2wgY2FuUnVuTW9kYWwoKSBmaW5hbDsKKyAgICB2b2lkIHJ1bk1v
ZGFsKCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBzZXRUb29sYmFyc1Zpc2libGUoYm9vbCkgb3Zl
cnJpZGU7Ci0gICAgYm9vbCB0b29sYmFyc1Zpc2libGUoKSBvdmVycmlkZTsKKyAgICB2b2lkIHNl
dFRvb2xiYXJzVmlzaWJsZShib29sKSBmaW5hbDsKKyAgICBib29sIHRvb2xiYXJzVmlzaWJsZSgp
IGZpbmFsOwogICAgIAotICAgIHZvaWQgc2V0U3RhdHVzYmFyVmlzaWJsZShib29sKSBvdmVycmlk
ZTsKLSAgICBib29sIHN0YXR1c2JhclZpc2libGUoKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldFN0
YXR1c2JhclZpc2libGUoYm9vbCkgZmluYWw7CisgICAgYm9vbCBzdGF0dXNiYXJWaXNpYmxlKCkg
ZmluYWw7CiAgICAgCi0gICAgdm9pZCBzZXRTY3JvbGxiYXJzVmlzaWJsZShib29sKSBvdmVycmlk
ZTsKLSAgICBib29sIHNjcm9sbGJhcnNWaXNpYmxlKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRT
Y3JvbGxiYXJzVmlzaWJsZShib29sKSBmaW5hbDsKKyAgICBib29sIHNjcm9sbGJhcnNWaXNpYmxl
KCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBzZXRNZW51YmFyVmlzaWJsZShib29sKSBvdmVycmlk
ZTsKLSAgICBib29sIG1lbnViYXJWaXNpYmxlKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRNZW51
YmFyVmlzaWJsZShib29sKSBmaW5hbDsKKyAgICBib29sIG1lbnViYXJWaXNpYmxlKCkgZmluYWw7
CiAgICAgCi0gICAgdm9pZCBzZXRSZXNpemFibGUoYm9vbCkgb3ZlcnJpZGU7CisgICAgdm9pZCBz
ZXRSZXNpemFibGUoYm9vbCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBhZGRNZXNzYWdlVG9Db25z
b2xlKEpTQzo6TWVzc2FnZVNvdXJjZSwgSlNDOjpNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYg
bWVzc2FnZSwgdW5zaWduZWQgbGluZU51bWJlciwgdW5zaWduZWQgY29sdW1uTnVtYmVyLCBjb25z
dCBTdHJpbmcmIHNvdXJjZUlEKSBvdmVycmlkZTsKKyAgICB2b2lkIGFkZE1lc3NhZ2VUb0NvbnNv
bGUoSlNDOjpNZXNzYWdlU291cmNlLCBKU0M6Ok1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiBt
ZXNzYWdlLCB1bnNpZ25lZCBsaW5lTnVtYmVyLCB1bnNpZ25lZCBjb2x1bW5OdW1iZXIsIGNvbnN0
IFN0cmluZyYgc291cmNlSUQpIGZpbmFsOwogICAgIAotICAgIGJvb2wgY2FuUnVuQmVmb3JlVW5s
b2FkQ29uZmlybVBhbmVsKCkgb3ZlcnJpZGU7Ci0gICAgYm9vbCBydW5CZWZvcmVVbmxvYWRDb25m
aXJtUGFuZWwoY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBXZWJDb3JlOjpGcmFtZSopIG92ZXJyaWRl
OworICAgIGJvb2wgY2FuUnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsKCkgZmluYWw7CisgICAg
Ym9vbCBydW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBX
ZWJDb3JlOjpGcmFtZSopIGZpbmFsOwogICAgIAotICAgIHZvaWQgY2xvc2VXaW5kb3dTb29uKCkg
b3ZlcnJpZGU7CisgICAgdm9pZCBjbG9zZVdpbmRvd1Nvb24oKSBmaW5hbDsKICAgICAKLSAgICB2
b2lkIHJ1bkphdmFTY3JpcHRBbGVydChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFN0cmluZyYpIG92
ZXJyaWRlOwotICAgIGJvb2wgcnVuSmF2YVNjcmlwdENvbmZpcm0oV2ViQ29yZTo6RnJhbWUqLCBj
b25zdCBTdHJpbmcmKSBvdmVycmlkZTsKLSAgICBib29sIHJ1bkphdmFTY3JpcHRQcm9tcHQoV2Vi
Q29yZTo6RnJhbWUqLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgZGVmYXVs
dFZhbHVlLCBTdHJpbmcmIHJlc3VsdCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRTdGF0dXNiYXJU
ZXh0KGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotCi0gICAgV2ViQ29yZTo6S2V5Ym9hcmRVSU1v
ZGUga2V5Ym9hcmRVSU1vZGUoKSBvdmVycmlkZTsKLQotICAgIC8vIEhvc3RXaW5kb3cgbWVtYmVy
IGZ1bmN0aW9uIG92ZXJyaWRlcy4KLSAgICB2b2lkIGludmFsaWRhdGVSb290Vmlldyhjb25zdCBX
ZWJDb3JlOjpJbnRSZWN0Jikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBpbnZhbGlkYXRlQ29udGVudHNB
bmRSb290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBp
bnZhbGlkYXRlQ29udGVudHNGb3JTbG93U2Nyb2xsKGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBv
dmVycmlkZTsKLSAgICB2b2lkIHNjcm9sbChjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBzY3JvbGxE
ZWx0YSwgY29uc3QgV2ViQ29yZTo6SW50UmVjdCYgc2Nyb2xsUmVjdCwgY29uc3QgV2ViQ29yZTo6
SW50UmVjdCYgY2xpcFJlY3QpIG92ZXJyaWRlOworICAgIHZvaWQgcnVuSmF2YVNjcmlwdEFsZXJ0
KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgU3RyaW5nJikgZmluYWw7CisgICAgYm9vbCBydW5KYXZh
U2NyaXB0Q29uZmlybShXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFN0cmluZyYpIGZpbmFsOworICAg
IGJvb2wgcnVuSmF2YVNjcmlwdFByb21wdChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFN0cmluZyYg
bWVzc2FnZSwgY29uc3QgU3RyaW5nJiBkZWZhdWx0VmFsdWUsIFN0cmluZyYgcmVzdWx0KSBmaW5h
bDsKKyAgICB2b2lkIHNldFN0YXR1c2JhclRleHQoY29uc3QgU3RyaW5nJikgZmluYWw7CisKKyAg
ICBXZWJDb3JlOjpLZXlib2FyZFVJTW9kZSBrZXlib2FyZFVJTW9kZSgpIGZpbmFsOworCisgICAg
Ly8gSG9zdFdpbmRvdyBtZW1iZXIgZnVuY3Rpb24gZmluYWxzLgorICAgIHZvaWQgaW52YWxpZGF0
ZVJvb3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBmaW5hbDsKKyAgICB2b2lkIGludmFs
aWRhdGVDb250ZW50c0FuZFJvb3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBmaW5hbDsK
KyAgICB2b2lkIGludmFsaWRhdGVDb250ZW50c0ZvclNsb3dTY3JvbGwoY29uc3QgV2ViQ29yZTo6
SW50UmVjdCYpIGZpbmFsOworICAgIHZvaWQgc2Nyb2xsKGNvbnN0IFdlYkNvcmU6OkludFNpemUm
IHNjcm9sbERlbHRhLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiBzY3JvbGxSZWN0LCBjb25zdCBX
ZWJDb3JlOjpJbnRSZWN0JiBjbGlwUmVjdCkgZmluYWw7CisKICNpZiBVU0UoQ09PUkRJTkFURURf
R1JBUEhJQ1MpCi0gICAgdm9pZCBkZWxlZ2F0ZWRTY3JvbGxSZXF1ZXN0ZWQoY29uc3QgV2ViQ29y
ZTo6SW50UG9pbnQmIHNjcm9sbE9mZnNldCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkZWxlZ2F0ZWRT
Y3JvbGxSZXF1ZXN0ZWQoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIHNjcm9sbE9mZnNldCkgZmlu
YWw7CiAjZW5kaWYKLSAgICBXZWJDb3JlOjpJbnRQb2ludCBzY3JlZW5Ub1Jvb3RWaWV3KGNvbnN0
IFdlYkNvcmU6OkludFBvaW50JikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6SW50UmVj
dCByb290Vmlld1RvU2NyZWVuKGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBjb25zdCBvdmVycmlk
ZTsKKworICAgIFdlYkNvcmU6OkludFBvaW50IHNjcmVlblRvUm9vdFZpZXcoY29uc3QgV2ViQ29y
ZTo6SW50UG9pbnQmKSBjb25zdCBmaW5hbDsKKyAgICBXZWJDb3JlOjpJbnRSZWN0IHJvb3RWaWV3
VG9TY3JlZW4oY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGNvbnN0IGZpbmFsOworCiAjaWYgUExB
VEZPUk0oSU9TKQotICAgIFdlYkNvcmU6OkludFBvaW50IGFjY2Vzc2liaWxpdHlTY3JlZW5Ub1Jv
b3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFBvaW50JikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgV2Vi
Q29yZTo6SW50UmVjdCByb290Vmlld1RvQWNjZXNzaWJpbGl0eVNjcmVlbihjb25zdCBXZWJDb3Jl
OjpJbnRSZWN0JikgY29uc3Qgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6SW50UG9pbnQgYWNjZXNz
aWJpbGl0eVNjcmVlblRvUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKSBjb25zdCBm
aW5hbDsKKyAgICBXZWJDb3JlOjpJbnRSZWN0IHJvb3RWaWV3VG9BY2Nlc3NpYmlsaXR5U2NyZWVu
KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBjb25zdCBmaW5hbDsKICNlbmRpZgotICAgIFBsYXRm
b3JtUGFnZUNsaWVudCBwbGF0Zm9ybVBhZ2VDbGllbnQoKSBjb25zdCBvdmVycmlkZTsKLSAgICB2
b2lkIGNvbnRlbnRzU2l6ZUNoYW5nZWQoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXZWJDb3JlOjpJ
bnRTaXplJikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzY3JvbGxSZWN0SW50b1ZpZXcoY29u
c3QgV2ViQ29yZTo6SW50UmVjdCYpIGNvbnN0IG92ZXJyaWRlOyAvLyBDdXJyZW50bHkgb25seSBN
YWMgaGFzIGEgbm9uIGVtcHR5IGltcGxlbWVudGF0aW9uLgogCi0gICAgYm9vbCBzaG91bGRVbmF2
YWlsYWJsZVBsdWdpbk1lc3NhZ2VCZUJ1dHRvbihXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVj
dDo6UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24pIGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQg
dW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2VkKFdlYkNvcmU6OkVsZW1lbnQqLCBXZWJDb3Jl
OjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24pIGNvbnN0
IG92ZXJyaWRlOworICAgIFBsYXRmb3JtUGFnZUNsaWVudCBwbGF0Zm9ybVBhZ2VDbGllbnQoKSBj
b25zdCBmaW5hbDsKKyAgICB2b2lkIGNvbnRlbnRzU2l6ZUNoYW5nZWQoV2ViQ29yZTo6RnJhbWUq
LCBjb25zdCBXZWJDb3JlOjpJbnRTaXplJikgY29uc3QgZmluYWw7CisgICAgdm9pZCBzY3JvbGxS
ZWN0SW50b1ZpZXcoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGNvbnN0IGZpbmFsOyAvLyBDdXJy
ZW50bHkgb25seSBNYWMgaGFzIGEgbm9uIGVtcHR5IGltcGxlbWVudGF0aW9uLgogCi0gICAgdm9p
ZCBzY3JvbGxiYXJzTW9kZURpZENoYW5nZSgpIGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQgbW91
c2VEaWRNb3ZlT3ZlckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6SGl0VGVzdFJlc3VsdCYsIHVuc2ln
bmVkIG1vZGlmaWVyRmxhZ3MpIG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkVW5hdmFpbGFibGVQ
bHVnaW5NZXNzYWdlQmVCdXR0b24oV2ViQ29yZTo6UmVuZGVyRW1iZWRkZWRPYmplY3Q6OlBsdWdp
blVuYXZhaWxhYmlsaXR5UmVhc29uKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIHVuYXZhaWxhYmxl
UGx1Z2luQnV0dG9uQ2xpY2tlZChXZWJDb3JlOjpFbGVtZW50KiwgV2ViQ29yZTo6UmVuZGVyRW1i
ZWRkZWRPYmplY3Q6OlBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKSBjb25zdCBmaW5hbDsKIAot
ICAgIHZvaWQgc2V0VG9vbFRpcChjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpUZXh0RGlyZWN0aW9u
KSBvdmVycmlkZTsKKyAgICB2b2lkIHNjcm9sbGJhcnNNb2RlRGlkQ2hhbmdlKCkgY29uc3QgZmlu
YWw7CisgICAgdm9pZCBtb3VzZURpZE1vdmVPdmVyRWxlbWVudChjb25zdCBXZWJDb3JlOjpIaXRU
ZXN0UmVzdWx0JiwgdW5zaWduZWQgbW9kaWZpZXJGbGFncykgZmluYWw7CisKKyAgICB2b2lkIHNl
dFRvb2xUaXAoY29uc3QgU3RyaW5nJiwgV2ViQ29yZTo6VGV4dERpcmVjdGlvbikgZmluYWw7CiAg
ICAgCi0gICAgdm9pZCBwcmludChXZWJDb3JlOjpGcmFtZSopIG92ZXJyaWRlOworICAgIHZvaWQg
cHJpbnQoV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKIAotICAgIHZvaWQgZXhjZWVkZWREYXRhYmFz
ZVF1b3RhKFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgU3RyaW5nJiBkYXRhYmFzZU5hbWUsIFdlYkNv
cmU6OkRhdGFiYXNlRGV0YWlscykgb3ZlcnJpZGU7CisgICAgdm9pZCBleGNlZWRlZERhdGFiYXNl
UXVvdGEoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBTdHJpbmcmIGRhdGFiYXNlTmFtZSwgV2ViQ29y
ZTo6RGF0YWJhc2VEZXRhaWxzKSBmaW5hbDsKIAotICAgIHZvaWQgcmVhY2hlZE1heEFwcENhY2hl
U2l6ZShpbnQ2NF90IHNwYWNlTmVlZGVkKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlYWNoZWRBcHBs
aWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4qLCBpbnQ2NF90
IHNwYWNlTmVlZGVkKSBvdmVycmlkZTsKKyAgICB2b2lkIHJlYWNoZWRNYXhBcHBDYWNoZVNpemUo
aW50NjRfdCBzcGFjZU5lZWRlZCkgZmluYWw7CisgICAgdm9pZCByZWFjaGVkQXBwbGljYXRpb25D
YWNoZU9yaWdpblF1b3RhKFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luKiwgaW50NjRfdCBzcGFjZU5l
ZWRlZCkgZmluYWw7CiAKICNpZiBFTkFCTEUoREFTSEJPQVJEX1NVUFBPUlQpCi0gICAgdm9pZCBh
bm5vdGF0ZWRSZWdpb25zQ2hhbmdlZCgpIG92ZXJyaWRlOworICAgIHZvaWQgYW5ub3RhdGVkUmVn
aW9uc0NoYW5nZWQoKSBmaW5hbDsKICNlbmRpZgogCi0gICAgYm9vbCBzaG91bGRSZXBsYWNlV2l0
aEdlbmVyYXRlZEZpbGVGb3JVcGxvYWQoY29uc3QgU3RyaW5nJiBwYXRoLCBTdHJpbmcmIGdlbmVy
YXRlZEZpbGVuYW1lKSBvdmVycmlkZTsKLSAgICBTdHJpbmcgZ2VuZXJhdGVSZXBsYWNlbWVudEZp
bGUoY29uc3QgU3RyaW5nJiBwYXRoKSBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZFJlcGxhY2VX
aXRoR2VuZXJhdGVkRmlsZUZvclVwbG9hZChjb25zdCBTdHJpbmcmIHBhdGgsIFN0cmluZyYgZ2Vu
ZXJhdGVkRmlsZW5hbWUpIGZpbmFsOworICAgIFN0cmluZyBnZW5lcmF0ZVJlcGxhY2VtZW50Rmls
ZShjb25zdCBTdHJpbmcmIHBhdGgpIGZpbmFsOwogICAgIAogI2lmIEVOQUJMRShJTlBVVF9UWVBF
X0NPTE9SKQotICAgIHN0ZDo6dW5pcXVlX3B0cjxXZWJDb3JlOjpDb2xvckNob29zZXI+IGNyZWF0
ZUNvbG9yQ2hvb3NlcihXZWJDb3JlOjpDb2xvckNob29zZXJDbGllbnQqLCBjb25zdCBXZWJDb3Jl
OjpDb2xvciYpIG92ZXJyaWRlOworICAgIHN0ZDo6dW5pcXVlX3B0cjxXZWJDb3JlOjpDb2xvckNo
b29zZXI+IGNyZWF0ZUNvbG9yQ2hvb3NlcihXZWJDb3JlOjpDb2xvckNob29zZXJDbGllbnQqLCBj
b25zdCBXZWJDb3JlOjpDb2xvciYpIGZpbmFsOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoSU9TX1RP
VUNIX0VWRU5UUykKLSAgICB2b2lkIGRpZFByZXZlbnREZWZhdWx0Rm9yRXZlbnQoKSBvdmVycmlk
ZTsKKyAgICB2b2lkIGRpZFByZXZlbnREZWZhdWx0Rm9yRXZlbnQoKSBmaW5hbDsKICNlbmRpZgog
CiAjaWYgUExBVEZPUk0oSU9TKQotICAgIHZvaWQgZGlkUmVjZWl2ZU1vYmlsZURvY1R5cGUoYm9v
bCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXROZWVkc1Njcm9sbE5vdGlmaWNhdGlvbnMoV2ViQ29y
ZTo6RnJhbWUqLCBib29sKSBvdmVycmlkZTsKLSAgICB2b2lkIG9ic2VydmVkQ29udGVudENoYW5n
ZShXZWJDb3JlOjpGcmFtZSopIG92ZXJyaWRlOwotICAgIHZvaWQgY2xlYXJDb250ZW50Q2hhbmdl
T2JzZXJ2ZXJzKFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBub3RpZnlSZXZl
YWxlZFNlbGVjdGlvbkJ5U2Nyb2xsaW5nRnJhbWUoV2ViQ29yZTo6RnJhbWUqKSBvdmVycmlkZTsK
LSAgICBib29sIGlzU3RvcHBpbmcoKSBvdmVycmlkZTsKLQotICAgIHZvaWQgZGlkTGF5b3V0KExh
eW91dFR5cGUgPSBOb3JtYWxMYXlvdXQpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkU3RhcnRPdmVy
Zmxvd1Njcm9sbCgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkRW5kT3ZlcmZsb3dTY3JvbGwoKSBv
dmVycmlkZTsKLSAgICBib29sIGhhc1N0YWJsZVBhZ2VTY2FsZUZhY3RvcigpIGNvbnN0IG92ZXJy
aWRlOworICAgIHZvaWQgZGlkUmVjZWl2ZU1vYmlsZURvY1R5cGUoYm9vbCkgZmluYWw7CisgICAg
dm9pZCBzZXROZWVkc1Njcm9sbE5vdGlmaWNhdGlvbnMoV2ViQ29yZTo6RnJhbWUqLCBib29sKSBm
aW5hbDsKKyAgICB2b2lkIG9ic2VydmVkQ29udGVudENoYW5nZShXZWJDb3JlOjpGcmFtZSopIGZp
bmFsOworICAgIHZvaWQgY2xlYXJDb250ZW50Q2hhbmdlT2JzZXJ2ZXJzKFdlYkNvcmU6OkZyYW1l
KikgZmluYWw7CisgICAgdm9pZCBub3RpZnlSZXZlYWxlZFNlbGVjdGlvbkJ5U2Nyb2xsaW5nRnJh
bWUoV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKKyAgICBib29sIGlzU3RvcHBpbmcoKSBmaW5hbDsK
KworICAgIHZvaWQgZGlkTGF5b3V0KExheW91dFR5cGUgPSBOb3JtYWxMYXlvdXQpIGZpbmFsOwor
ICAgIHZvaWQgZGlkU3RhcnRPdmVyZmxvd1Njcm9sbCgpIGZpbmFsOworICAgIHZvaWQgZGlkRW5k
T3ZlcmZsb3dTY3JvbGwoKSBmaW5hbDsKKyAgICBib29sIGhhc1N0YWJsZVBhZ2VTY2FsZUZhY3Rv
cigpIGNvbnN0IGZpbmFsOwogCiAgICAgLy8gRklYTUU6IFNlZSA8cmRhcjovL3Byb2JsZW0vNTk3
NTU1OT4KLSAgICB2b2lkIHN1cHByZXNzRm9ybU5vdGlmaWNhdGlvbnMoKSBvdmVycmlkZTsKLSAg
ICB2b2lkIHJlc3RvcmVGb3JtTm90aWZpY2F0aW9ucygpIG92ZXJyaWRlOworICAgIHZvaWQgc3Vw
cHJlc3NGb3JtTm90aWZpY2F0aW9ucygpIGZpbmFsOworICAgIHZvaWQgcmVzdG9yZUZvcm1Ob3Rp
ZmljYXRpb25zKCkgZmluYWw7CiAKLSAgICB2b2lkIGFkZE9yVXBkYXRlU2Nyb2xsaW5nTGF5ZXIo
V2ViQ29yZTo6Tm9kZSosIFBsYXRmb3JtTGF5ZXIqIHNjcm9sbGluZ0xheWVyLCBQbGF0Zm9ybUxh
eWVyKiBjb250ZW50c0xheWVyLCBjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBzY3JvbGxTaXplLCBi
b29sIGFsbG93SG9yaXpvbnRhbFNjcm9sbGJhciwgYm9vbCBhbGxvd1ZlcnRpY2FsU2Nyb2xsYmFy
KSBvdmVycmlkZTsKLSAgICB2b2lkIHJlbW92ZVNjcm9sbGluZ0xheWVyKFdlYkNvcmU6Ok5vZGUq
LCBQbGF0Zm9ybUxheWVyKiBzY3JvbGxpbmdMYXllciwgUGxhdGZvcm1MYXllciogY29udGVudHNM
YXllcikgb3ZlcnJpZGU7CisgICAgdm9pZCBhZGRPclVwZGF0ZVNjcm9sbGluZ0xheWVyKFdlYkNv
cmU6Ok5vZGUqLCBQbGF0Zm9ybUxheWVyKiBzY3JvbGxpbmdMYXllciwgUGxhdGZvcm1MYXllciog
Y29udGVudHNMYXllciwgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgc2Nyb2xsU2l6ZSwgYm9vbCBh
bGxvd0hvcml6b250YWxTY3JvbGxiYXIsIGJvb2wgYWxsb3dWZXJ0aWNhbFNjcm9sbGJhcikgZmlu
YWw7CisgICAgdm9pZCByZW1vdmVTY3JvbGxpbmdMYXllcihXZWJDb3JlOjpOb2RlKiwgUGxhdGZv
cm1MYXllciogc2Nyb2xsaW5nTGF5ZXIsIFBsYXRmb3JtTGF5ZXIqIGNvbnRlbnRzTGF5ZXIpIGZp
bmFsOwogCi0gICAgdm9pZCB3ZWJBcHBPcmllbnRhdGlvbnNVcGRhdGVkKCkgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBzaG93UGxheWJhY2tUYXJnZXRQaWNrZXIoYm9vbCBoYXNWaWRlbykgb3ZlcnJpZGU7
CisgICAgdm9pZCB3ZWJBcHBPcmllbnRhdGlvbnNVcGRhdGVkKCkgZmluYWw7CisgICAgdm9pZCBz
aG93UGxheWJhY2tUYXJnZXRQaWNrZXIoYm9vbCBoYXNWaWRlbykgZmluYWw7CiAKLSAgICBTZWNv
bmRzIGV2ZW50VGhyb3R0bGluZ0RlbGF5KCkgb3ZlcnJpZGU7CisgICAgU2Vjb25kcyBldmVudFRo
cm90dGxpbmdEZWxheSgpIGZpbmFsOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoT1JJRU5UQVRJT05f
RVZFTlRTKQotICAgIGludCBkZXZpY2VPcmllbnRhdGlvbigpIGNvbnN0IG92ZXJyaWRlOworICAg
IGludCBkZXZpY2VPcmllbnRhdGlvbigpIGNvbnN0IGZpbmFsOwogI2VuZGlmCiAKLSAgICB2b2lk
IHJ1bk9wZW5QYW5lbChXZWJDb3JlOjpGcmFtZSosIFBhc3NSZWZQdHI8V2ViQ29yZTo6RmlsZUNo
b29zZXI+KSBvdmVycmlkZTsKLSAgICB2b2lkIGxvYWRJY29uRm9yRmlsZXMoY29uc3QgVmVjdG9y
PFN0cmluZz4mLCBXZWJDb3JlOjpGaWxlSWNvbkxvYWRlciYpIG92ZXJyaWRlOworICAgIHZvaWQg
cnVuT3BlblBhbmVsKFdlYkNvcmU6OkZyYW1lJiwgV2ViQ29yZTo6RmlsZUNob29zZXImKSBmaW5h
bDsKKyAgICB2b2lkIGxvYWRJY29uRm9yRmlsZXMoY29uc3QgVmVjdG9yPFN0cmluZz4mLCBXZWJD
b3JlOjpGaWxlSWNvbkxvYWRlciYpIGZpbmFsOwogCiAjaWYgIVBMQVRGT1JNKElPUykKLSAgICB2
b2lkIHNldEN1cnNvcihjb25zdCBXZWJDb3JlOjpDdXJzb3ImKSBvdmVycmlkZTsKLSAgICB2b2lk
IHNldEN1cnNvckhpZGRlblVudGlsTW91c2VNb3Zlcyhib29sKSBvdmVycmlkZTsKKyAgICB2b2lk
IHNldEN1cnNvcihjb25zdCBXZWJDb3JlOjpDdXJzb3ImKSBmaW5hbDsKKyAgICB2b2lkIHNldEN1
cnNvckhpZGRlblVudGlsTW91c2VNb3Zlcyhib29sKSBmaW5hbDsKICNlbmRpZgorCiAjaWYgRU5B
QkxFKFJFUVVFU1RfQU5JTUFUSU9OX0ZSQU1FKSAmJiAhVVNFKFJFUVVFU1RfQU5JTUFUSU9OX0ZS
QU1FX1RJTUVSKQotICAgIHZvaWQgc2NoZWR1bGVBbmltYXRpb24oKSBvdmVycmlkZTsKKyAgICB2
b2lkIHNjaGVkdWxlQW5pbWF0aW9uKCkgZmluYWw7CiAjZW5kaWYKICAgICAKICNpZiBFTkFCTEUo
UE9JTlRFUl9MT0NLKQotICAgIGJvb2wgcmVxdWVzdFBvaW50ZXJMb2NrKCkgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCByZXF1ZXN0UG9pbnRlclVubG9jaygpIG92ZXJyaWRlOworICAgIGJvb2wgcmVxdWVz
dFBvaW50ZXJMb2NrKCkgZmluYWw7CisgICAgdm9pZCByZXF1ZXN0UG9pbnRlclVubG9jaygpIGZp
bmFsOwogI2VuZGlmCiAKLSAgICB2b2lkIGRpZEFzc29jaWF0ZUZvcm1Db250cm9scyhjb25zdCBW
ZWN0b3I8UmVmUHRyPFdlYkNvcmU6OkVsZW1lbnQ+PiYpIG92ZXJyaWRlOwotICAgIGJvb2wgc2hv
dWxkTm90aWZ5T25Gb3JtQ2hhbmdlcygpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkQXNzb2NpYXRl
Rm9ybUNvbnRyb2xzKGNvbnN0IFZlY3RvcjxSZWZQdHI8V2ViQ29yZTo6RWxlbWVudD4+JikgZmlu
YWw7CisgICAgYm9vbCBzaG91bGROb3RpZnlPbkZvcm1DaGFuZ2VzKCkgZmluYWw7CiAKLSAgICBi
b29sIHNlbGVjdEl0ZW1Xcml0aW5nRGlyZWN0aW9uSXNOYXR1cmFsKCkgb3ZlcnJpZGU7Ci0gICAg
Ym9vbCBzZWxlY3RJdGVtQWxpZ25tZW50Rm9sbG93c01lbnVXcml0aW5nRGlyZWN0aW9uKCkgb3Zl
cnJpZGU7Ci0gICAgYm9vbCBoYXNPcGVuZWRQb3B1cCgpIGNvbnN0IG92ZXJyaWRlOwotICAgIFJl
ZlB0cjxXZWJDb3JlOjpQb3B1cE1lbnU+IGNyZWF0ZVBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1l
bnVDbGllbnQqKSBjb25zdCBvdmVycmlkZTsKLSAgICBSZWZQdHI8V2ViQ29yZTo6U2VhcmNoUG9w
dXBNZW51PiBjcmVhdGVTZWFyY2hQb3B1cE1lbnUoV2ViQ29yZTo6UG9wdXBNZW51Q2xpZW50Kikg
Y29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzZWxlY3RJdGVtV3JpdGluZ0RpcmVjdGlvbklzTmF0
dXJhbCgpIGZpbmFsOworICAgIGJvb2wgc2VsZWN0SXRlbUFsaWdubWVudEZvbGxvd3NNZW51V3Jp
dGluZ0RpcmVjdGlvbigpIGZpbmFsOworICAgIGJvb2wgaGFzT3BlbmVkUG9wdXAoKSBjb25zdCBm
aW5hbDsKKyAgICBSZWZQdHI8V2ViQ29yZTo6UG9wdXBNZW51PiBjcmVhdGVQb3B1cE1lbnUoV2Vi
Q29yZTo6UG9wdXBNZW51Q2xpZW50KikgY29uc3QgZmluYWw7CisgICAgUmVmUHRyPFdlYkNvcmU6
OlNlYXJjaFBvcHVwTWVudT4gY3JlYXRlU2VhcmNoUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVu
dUNsaWVudCopIGNvbnN0IGZpbmFsOwogCi0gICAgV2ViQ29yZTo6R3JhcGhpY3NMYXllckZhY3Rv
cnkqIGdyYXBoaWNzTGF5ZXJGYWN0b3J5KCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCBhdHRh
Y2hSb290R3JhcGhpY3NMYXllcihXZWJDb3JlOjpGcmFtZSosIFdlYkNvcmU6OkdyYXBoaWNzTGF5
ZXIqKSBvdmVycmlkZTsKLSAgICB2b2lkIGF0dGFjaFZpZXdPdmVybGF5R3JhcGhpY3NMYXllcihX
ZWJDb3JlOjpGcmFtZSosIFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXIqKSBvdmVycmlkZTsKLSAgICB2
b2lkIHNldE5lZWRzT25lU2hvdERyYXdpbmdTeW5jaHJvbml6YXRpb24oKSBvdmVycmlkZTsKLSAg
ICB2b2lkIHNjaGVkdWxlQ29tcG9zaXRpbmdMYXllckZsdXNoKCkgb3ZlcnJpZGU7Ci0gICAgYm9v
bCBhZGp1c3RMYXllckZsdXNoVGhyb3R0bGluZyhXZWJDb3JlOjpMYXllckZsdXNoVGhyb3R0bGVT
dGF0ZTo6RmxhZ3MpIG92ZXJyaWRlOworICAgIFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXJGYWN0b3J5
KiBncmFwaGljc0xheWVyRmFjdG9yeSgpIGNvbnN0IGZpbmFsOworICAgIHZvaWQgYXR0YWNoUm9v
dEdyYXBoaWNzTGF5ZXIoV2ViQ29yZTo6RnJhbWUqLCBXZWJDb3JlOjpHcmFwaGljc0xheWVyKikg
ZmluYWw7CisgICAgdm9pZCBhdHRhY2hWaWV3T3ZlcmxheUdyYXBoaWNzTGF5ZXIoV2ViQ29yZTo6
RnJhbWUqLCBXZWJDb3JlOjpHcmFwaGljc0xheWVyKikgZmluYWw7CisgICAgdm9pZCBzZXROZWVk
c09uZVNob3REcmF3aW5nU3luY2hyb25pemF0aW9uKCkgZmluYWw7CisgICAgdm9pZCBzY2hlZHVs
ZUNvbXBvc2l0aW5nTGF5ZXJGbHVzaCgpIGZpbmFsOworICAgIGJvb2wgYWRqdXN0TGF5ZXJGbHVz
aFRocm90dGxpbmcoV2ViQ29yZTo6TGF5ZXJGbHVzaFRocm90dGxlU3RhdGU6OkZsYWdzKSBmaW5h
bDsKIAogI2lmIFVTRShSRVFVRVNUX0FOSU1BVElPTl9GUkFNRV9ESVNQTEFZX01PTklUT1IpCi0g
ICAgUmVmUHRyPFdlYkNvcmU6OkRpc3BsYXlSZWZyZXNoTW9uaXRvcj4gY3JlYXRlRGlzcGxheVJl
ZnJlc2hNb25pdG9yKFdlYkNvcmU6OlBsYXRmb3JtRGlzcGxheUlEKSBjb25zdCBvdmVycmlkZTsK
KyAgICBSZWZQdHI8V2ViQ29yZTo6RGlzcGxheVJlZnJlc2hNb25pdG9yPiBjcmVhdGVEaXNwbGF5
UmVmcmVzaE1vbml0b3IoV2ViQ29yZTo6UGxhdGZvcm1EaXNwbGF5SUQpIGNvbnN0IGZpbmFsOwog
I2VuZGlmCiAKLSAgICBDb21wb3NpdGluZ1RyaWdnZXJGbGFncyBhbGxvd2VkQ29tcG9zaXRpbmdU
cmlnZ2VycygpIGNvbnN0IG92ZXJyaWRlCisgICAgQ29tcG9zaXRpbmdUcmlnZ2VyRmxhZ3MgYWxs
b3dlZENvbXBvc2l0aW5nVHJpZ2dlcnMoKSBjb25zdCBmaW5hbAogICAgIHsKICAgICAgICAgcmV0
dXJuIHN0YXRpY19jYXN0PENvbXBvc2l0aW5nVHJpZ2dlckZsYWdzPigKICAgICAgICAgICAgIFRo
cmVlRFRyYW5zZm9ybVRyaWdnZXIgfApAQCAtMjMwLDExOSArMjI4LDEyMSBAQCBwcml2YXRlOgog
ICAgICAgICAgICAgQW5pbWF0aW9uVHJpZ2dlcik7CiAgICAgfQogCi0gICAgYm9vbCBsYXllclRy
ZWVTdGF0ZUlzRnJvemVuKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBsYXllclRyZWVTdGF0
ZUlzRnJvemVuKCkgY29uc3QgZmluYWw7CiAKICNpZiBFTkFCTEUoQVNZTkNfU0NST0xMSU5HKQot
ICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6U2Nyb2xsaW5nQ29vcmRpbmF0b3I+IGNyZWF0ZVNjcm9s
bGluZ0Nvb3JkaW5hdG9yKFdlYkNvcmU6OlBhZ2UqKSBjb25zdCBvdmVycmlkZTsKKyAgICBQYXNz
UmVmUHRyPFdlYkNvcmU6OlNjcm9sbGluZ0Nvb3JkaW5hdG9yPiBjcmVhdGVTY3JvbGxpbmdDb29y
ZGluYXRvcihXZWJDb3JlOjpQYWdlKikgY29uc3QgZmluYWw7CiAjZW5kaWYKIAogI2lmIFBMQVRG
T1JNKElPUykKLSAgICB2b2lkIGVsZW1lbnREaWRSZWZvY3VzKGNvbnN0IFdlYkNvcmU6Ok5vZGUq
KSBvdmVycmlkZTsKKyAgICB2b2lkIGVsZW1lbnREaWRSZWZvY3VzKGNvbnN0IFdlYkNvcmU6Ok5v
ZGUqKSBmaW5hbDsKICNlbmRpZgogCiAjaWYgKFBMQVRGT1JNKElPUykgJiYgSEFWRShBVktJVCkp
IHx8IChQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkpCi0g
ICAgYm9vbCBzdXBwb3J0c1ZpZGVvRnVsbHNjcmVlbihXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50
RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0VXBQbGF5
YmFja0NvbnRyb2xzTWFuYWdlcihXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50Jikgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBjbGVhclBsYXliYWNrQ29udHJvbHNNYW5hZ2VyKCkgb3ZlcnJpZGU7Ci0gICAg
dm9pZCBlbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlk
ZW9FbGVtZW50JiwgV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3Jl
ZW5Nb2RlKSBvdmVycmlkZTsKLSAgICB2b2lkIGV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0Vs
ZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCYpIG92ZXJyaWRlOwotI2lmIFBMQVRGT1JN
KE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQotICAgIHZvaWQgZXhpdFZp
ZGVvRnVsbHNjcmVlblRvTW9kZVdpdGhvdXRBbmltYXRpb24oV2ViQ29yZTo6SFRNTFZpZGVvRWxl
bWVudCYsIFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVuTW9k
ZSkgb3ZlcnJpZGU7CisgICAgYm9vbCBzdXBwb3J0c1ZpZGVvRnVsbHNjcmVlbihXZWJDb3JlOjpI
VE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIGZpbmFsOworICAgIHZv
aWQgc2V0VXBQbGF5YmFja0NvbnRyb2xzTWFuYWdlcihXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50
JikgZmluYWw7CisgICAgdm9pZCBjbGVhclBsYXliYWNrQ29udHJvbHNNYW5hZ2VyKCkgZmluYWw7
CisgICAgdm9pZCBlbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpI
VE1MVmlkZW9FbGVtZW50JiwgV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1
bGxzY3JlZW5Nb2RlKSBmaW5hbDsKKyAgICB2b2lkIGV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRl
b0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCYpIGZpbmFsOwogI2VuZGlmCisKKyNp
ZiBQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKKyAgICB2
b2lkIGV4aXRWaWRlb0Z1bGxzY3JlZW5Ub01vZGVXaXRob3V0QW5pbWF0aW9uKFdlYkNvcmU6OkhU
TUxWaWRlb0VsZW1lbnQmLCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVs
bHNjcmVlbk1vZGUpIGZpbmFsOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoRlVMTFNDUkVFTl9BUEkp
Ci0gICAgYm9vbCBzdXBwb3J0c0Z1bGxTY3JlZW5Gb3JFbGVtZW50KGNvbnN0IFdlYkNvcmU6OkVs
ZW1lbnQqLCBib29sIHdpdGhLZXlib2FyZCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBlbnRlckZ1bGxT
Y3JlZW5Gb3JFbGVtZW50KFdlYkNvcmU6OkVsZW1lbnQqKSBvdmVycmlkZTsKLSAgICB2b2lkIGV4
aXRGdWxsU2NyZWVuRm9yRWxlbWVudChXZWJDb3JlOjpFbGVtZW50Kikgb3ZlcnJpZGU7CisgICAg
Ym9vbCBzdXBwb3J0c0Z1bGxTY3JlZW5Gb3JFbGVtZW50KGNvbnN0IFdlYkNvcmU6OkVsZW1lbnQq
LCBib29sIHdpdGhLZXlib2FyZCkgZmluYWw7CisgICAgdm9pZCBlbnRlckZ1bGxTY3JlZW5Gb3JF
bGVtZW50KFdlYkNvcmU6OkVsZW1lbnQqKSBmaW5hbDsKKyAgICB2b2lkIGV4aXRGdWxsU2NyZWVu
Rm9yRWxlbWVudChXZWJDb3JlOjpFbGVtZW50KikgZmluYWw7CiAjZW5kaWYKIAogI2lmIFBMQVRG
T1JNKENPQ09BKQotICAgIHZvaWQgZWxlbWVudERpZEZvY3VzKGNvbnN0IFdlYkNvcmU6Ok5vZGUq
KSBvdmVycmlkZTsKLSAgICB2b2lkIGVsZW1lbnREaWRCbHVyKGNvbnN0IFdlYkNvcmU6Ok5vZGUq
KSBvdmVycmlkZTsKKyAgICB2b2lkIGVsZW1lbnREaWRGb2N1cyhjb25zdCBXZWJDb3JlOjpOb2Rl
KikgZmluYWw7CisgICAgdm9pZCBlbGVtZW50RGlkQmx1cihjb25zdCBXZWJDb3JlOjpOb2RlKikg
ZmluYWw7CiAKLSAgICB2b2lkIG1ha2VGaXJzdFJlc3BvbmRlcigpIG92ZXJyaWRlOworICAgIHZv
aWQgbWFrZUZpcnN0UmVzcG9uZGVyKCkgZmluYWw7CiAjZW5kaWYKIAotICAgIHZvaWQgZW5hYmxl
U3VkZGVuVGVybWluYXRpb24oKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc2FibGVTdWRkZW5UZXJt
aW5hdGlvbigpIG92ZXJyaWRlOworICAgIHZvaWQgZW5hYmxlU3VkZGVuVGVybWluYXRpb24oKSBm
aW5hbDsKKyAgICB2b2lkIGRpc2FibGVTdWRkZW5UZXJtaW5hdGlvbigpIGZpbmFsOwogCiAjaWYg
UExBVEZPUk0oSU9TKQotICAgIFdlYkNvcmU6OkZsb2F0U2l6ZSBzY3JlZW5TaXplKCkgY29uc3Qg
b3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6RmxvYXRTaXplIGF2YWlsYWJsZVNjcmVlblNpemUoKSBj
b25zdCBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpGbG9hdFNpemUgc2NyZWVuU2l6ZSgpIGNvbnN0
IGZpbmFsOworICAgIFdlYkNvcmU6OkZsb2F0U2l6ZSBhdmFpbGFibGVTY3JlZW5TaXplKCkgY29u
c3QgZmluYWw7CiAjZW5kaWYKLSAgICB2b2lkIGRpc3BhdGNoVmlld3BvcnRQcm9wZXJ0aWVzRGlk
Q2hhbmdlKGNvbnN0IFdlYkNvcmU6OlZpZXdwb3J0QXJndW1lbnRzJikgY29uc3Qgb3ZlcnJpZGU7
CiAKLSAgICB2b2lkIG5vdGlmeVNjcm9sbGVyVGh1bWJJc1Zpc2libGVJblJlY3QoY29uc3QgV2Vi
Q29yZTo6SW50UmVjdCYpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVjb21tZW5kZWRTY3JvbGxiYXJT
dHlsZURpZENoYW5nZShXZWJDb3JlOjpTY3JvbGxiYXJTdHlsZSBuZXdTdHlsZSkgb3ZlcnJpZGU7
CisgICAgdm9pZCBkaXNwYXRjaFZpZXdwb3J0UHJvcGVydGllc0RpZENoYW5nZShjb25zdCBXZWJD
b3JlOjpWaWV3cG9ydEFyZ3VtZW50cyYpIGNvbnN0IGZpbmFsOwogCi0gICAgc3RkOjpvcHRpb25h
bDxXZWJDb3JlOjpTY3JvbGxiYXJPdmVybGF5U3R5bGU+IHByZWZlcnJlZFNjcm9sbGJhck92ZXJs
YXlTdHlsZSgpIG92ZXJyaWRlOworICAgIHZvaWQgbm90aWZ5U2Nyb2xsZXJUaHVtYklzVmlzaWJs
ZUluUmVjdChjb25zdCBXZWJDb3JlOjpJbnRSZWN0JikgZmluYWw7CisgICAgdm9pZCByZWNvbW1l
bmRlZFNjcm9sbGJhclN0eWxlRGlkQ2hhbmdlKFdlYkNvcmU6OlNjcm9sbGJhclN0eWxlIG5ld1N0
eWxlKSBmaW5hbDsKIAotICAgIFdlYkNvcmU6OkNvbG9yIHVuZGVybGF5Q29sb3IoKSBjb25zdCBv
dmVycmlkZTsKKyAgICBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlNjcm9sbGJhck92ZXJsYXlTdHls
ZT4gcHJlZmVycmVkU2Nyb2xsYmFyT3ZlcmxheVN0eWxlKCkgZmluYWw7CiAKLSAgICB2b2lkIHBh
Z2VFeHRlbmRlZEJhY2tncm91bmRDb2xvckRpZENoYW5nZShXZWJDb3JlOjpDb2xvcikgY29uc3Qg
b3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6Q29sb3IgdW5kZXJsYXlDb2xvcigpIGNvbnN0IGZpbmFs
OworCisgICAgdm9pZCBwYWdlRXh0ZW5kZWRCYWNrZ3JvdW5kQ29sb3JEaWRDaGFuZ2UoV2ViQ29y
ZTo6Q29sb3IpIGNvbnN0IGZpbmFsOwogICAgIAotICAgIHZvaWQgd2hlZWxFdmVudEhhbmRsZXJz
Q2hhbmdlZChib29sKSBvdmVycmlkZTsKKyAgICB2b2lkIHdoZWVsRXZlbnRIYW5kbGVyc0NoYW5n
ZWQoYm9vbCkgZmluYWw7CiAKLSAgICBTdHJpbmcgcGx1Z0luU3RhcnRMYWJlbFRpdGxlKGNvbnN0
IFN0cmluZyYgbWltZVR5cGUpIGNvbnN0IG92ZXJyaWRlOwotICAgIFN0cmluZyBwbHVnSW5TdGFy
dExhYmVsU3VidGl0bGUoY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkgY29uc3Qgb3ZlcnJpZGU7Ci0g
ICAgU3RyaW5nIHBsdWdJbkV4dHJhU3R5bGVTaGVldCgpIGNvbnN0IG92ZXJyaWRlOwotICAgIFN0
cmluZyBwbHVnSW5FeHRyYVNjcmlwdCgpIGNvbnN0IG92ZXJyaWRlOworICAgIFN0cmluZyBwbHVn
SW5TdGFydExhYmVsVGl0bGUoY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkgY29uc3QgZmluYWw7Cisg
ICAgU3RyaW5nIHBsdWdJblN0YXJ0TGFiZWxTdWJ0aXRsZShjb25zdCBTdHJpbmcmIG1pbWVUeXBl
KSBjb25zdCBmaW5hbDsKKyAgICBTdHJpbmcgcGx1Z0luRXh0cmFTdHlsZVNoZWV0KCkgY29uc3Qg
ZmluYWw7CisgICAgU3RyaW5nIHBsdWdJbkV4dHJhU2NyaXB0KCkgY29uc3QgZmluYWw7CiAKLSAg
ICB2b2lkIGRpZEFkZEhlYWRlckxheWVyKFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXIqKSBvdmVycmlk
ZTsKLSAgICB2b2lkIGRpZEFkZEZvb3RlckxheWVyKFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXIqKSBv
dmVycmlkZTsKKyAgICB2b2lkIGRpZEFkZEhlYWRlckxheWVyKFdlYkNvcmU6OkdyYXBoaWNzTGF5
ZXIqKSBmaW5hbDsKKyAgICB2b2lkIGRpZEFkZEZvb3RlckxheWVyKFdlYkNvcmU6OkdyYXBoaWNz
TGF5ZXIqKSBmaW5hbDsKIAotICAgIGJvb2wgc2hvdWxkVXNlVGlsZWRCYWNraW5nRm9yRnJhbWVW
aWV3KGNvbnN0IFdlYkNvcmU6OkZyYW1lVmlldyopIGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wg
c2hvdWxkVXNlVGlsZWRCYWNraW5nRm9yRnJhbWVWaWV3KGNvbnN0IFdlYkNvcmU6OkZyYW1lVmll
dyopIGNvbnN0IGZpbmFsOwogCi0gICAgdm9pZCBpc1BsYXlpbmdNZWRpYURpZENoYW5nZShXZWJD
b3JlOjpNZWRpYVByb2R1Y2VyOjpNZWRpYVN0YXRlRmxhZ3MsIHVpbnQ2NF90KSBvdmVycmlkZTsK
KyAgICB2b2lkIGlzUGxheWluZ01lZGlhRGlkQ2hhbmdlKFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6
Ok1lZGlhU3RhdGVGbGFncywgdWludDY0X3QpIGZpbmFsOwogCiAjaWYgRU5BQkxFKE1FRElBX1NF
U1NJT04pCi0gICAgdm9pZCBoYXNNZWRpYVNlc3Npb25XaXRoQWN0aXZlTWVkaWFFbGVtZW50c0Rp
ZENoYW5nZShib29sKSBvdmVycmlkZTsKLSAgICB2b2lkIG1lZGlhU2Vzc2lvbk1ldGFkYXRhRGlk
Q2hhbmdlKGNvbnN0IFdlYkNvcmU6Ok1lZGlhU2Vzc2lvbk1ldGFkYXRhJikgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBmb2N1c2VkQ29udGVudE1lZGlhRWxlbWVudERpZENoYW5nZSh1aW50NjRfdCkgb3Zl
cnJpZGU7CisgICAgdm9pZCBoYXNNZWRpYVNlc3Npb25XaXRoQWN0aXZlTWVkaWFFbGVtZW50c0Rp
ZENoYW5nZShib29sKSBmaW5hbDsKKyAgICB2b2lkIG1lZGlhU2Vzc2lvbk1ldGFkYXRhRGlkQ2hh
bmdlKGNvbnN0IFdlYkNvcmU6Ok1lZGlhU2Vzc2lvbk1ldGFkYXRhJikgZmluYWw7CisgICAgdm9p
ZCBmb2N1c2VkQ29udGVudE1lZGlhRWxlbWVudERpZENoYW5nZSh1aW50NjRfdCkgZmluYWw7CiAj
ZW5kaWYKIAogI2lmIEVOQUJMRShTVUJUTEVfQ1JZUFRPKQotICAgIGJvb2wgd3JhcENyeXB0b0tl
eShjb25zdCBWZWN0b3I8dWludDhfdD4mLCBWZWN0b3I8dWludDhfdD4mKSBjb25zdCBvdmVycmlk
ZTsKLSAgICBib29sIHVud3JhcENyeXB0b0tleShjb25zdCBWZWN0b3I8dWludDhfdD4mLCBWZWN0
b3I8dWludDhfdD4mKSBjb25zdCBvdmVycmlkZTsKKyAgICBib29sIHdyYXBDcnlwdG9LZXkoY29u
c3QgVmVjdG9yPHVpbnQ4X3Q+JiwgVmVjdG9yPHVpbnQ4X3Q+JikgY29uc3QgZmluYWw7CisgICAg
Ym9vbCB1bndyYXBDcnlwdG9LZXkoY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiwgVmVjdG9yPHVpbnQ4
X3Q+JikgY29uc3QgZmluYWw7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShURUxFUEhPTkVfTlVNQkVS
X0RFVEVDVElPTikgJiYgUExBVEZPUk0oTUFDKQotICAgIHZvaWQgaGFuZGxlVGVsZXBob25lTnVt
YmVyQ2xpY2soY29uc3QgU3RyaW5nJiBudW1iZXIsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50Jikg
b3ZlcnJpZGU7CisgICAgdm9pZCBoYW5kbGVUZWxlcGhvbmVOdW1iZXJDbGljayhjb25zdCBTdHJp
bmcmIG51bWJlciwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKSBmaW5hbDsKICNlbmRpZgorCiAj
aWYgRU5BQkxFKFNFUlZJQ0VfQ09OVFJPTFMpCi0gICAgdm9pZCBoYW5kbGVTZWxlY3Rpb25TZXJ2
aWNlQ2xpY2soV2ViQ29yZTo6RnJhbWVTZWxlY3Rpb24mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYg
dGVsZXBob25lTnVtYmVycywgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKSBvdmVycmlkZTsKLSAg
ICBib29sIGhhc1JlbGV2YW50U2VsZWN0aW9uU2VydmljZXMoYm9vbCBpc1RleHRPbmx5KSBjb25z
dCBvdmVycmlkZTsKKyAgICB2b2lkIGhhbmRsZVNlbGVjdGlvblNlcnZpY2VDbGljayhXZWJDb3Jl
OjpGcmFtZVNlbGVjdGlvbiYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiB0ZWxlcGhvbmVOdW1iZXJz
LCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIGZpbmFsOworICAgIGJvb2wgaGFzUmVsZXZhbnRT
ZWxlY3Rpb25TZXJ2aWNlcyhib29sIGlzVGV4dE9ubHkpIGNvbnN0IGZpbmFsOwogI2VuZGlmCiAK
LSAgICBib29sIHNob3VsZERpc3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50cygpIGNvbnN0IG92ZXJy
aWRlOworICAgIGJvb2wgc2hvdWxkRGlzcGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKCkgY29uc3Qg
ZmluYWw7CiAKLSAgICB2b2lkIGhhbmRsZUF1dG9GaWxsQnV0dG9uQ2xpY2soV2ViQ29yZTo6SFRN
TElucHV0RWxlbWVudCYpIG92ZXJyaWRlOworICAgIHZvaWQgaGFuZGxlQXV0b0ZpbGxCdXR0b25D
bGljayhXZWJDb3JlOjpIVE1MSW5wdXRFbGVtZW50JikgZmluYWw7CiAKICNpZiBFTkFCTEUoV0lS
RUxFU1NfUExBWUJBQ0tfVEFSR0VUKSAmJiAhUExBVEZPUk0oSU9TKQotICAgIHZvaWQgYWRkUGxh
eWJhY2tUYXJnZXRQaWNrZXJDbGllbnQodWludDY0X3QgLypjb250ZXh0SWQqLykgb3ZlcnJpZGU7
Ci0gICAgdm9pZCByZW1vdmVQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudCh1aW50NjRfdCAvKmNv
bnRleHRJZCovKSBvdmVycmlkZTsKLSAgICB2b2lkIHNob3dQbGF5YmFja1RhcmdldFBpY2tlcih1
aW50NjRfdCBjb250ZXh0SWQsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiwgYm9vbCkgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCBwbGF5YmFja1RhcmdldFBpY2tlckNsaWVudFN0YXRlRGlkQ2hhbmdlKHVp
bnQ2NF90LCBXZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpNZWRpYVN0YXRlRmxhZ3MpIG92ZXJyaWRl
OwotICAgIHZvaWQgc2V0TW9ja01lZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJFbmFibGVkKGJvb2wp
IG92ZXJyaWRlOwotICAgIHZvaWQgc2V0TW9ja01lZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJTdGF0
ZShjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpNZWRpYVBsYXliYWNrVGFyZ2V0Q29udGV4dDo6U3Rh
dGUpIG92ZXJyaWRlOworICAgIHZvaWQgYWRkUGxheWJhY2tUYXJnZXRQaWNrZXJDbGllbnQodWlu
dDY0X3QgLypjb250ZXh0SWQqLykgZmluYWw7CisgICAgdm9pZCByZW1vdmVQbGF5YmFja1Rhcmdl
dFBpY2tlckNsaWVudCh1aW50NjRfdCAvKmNvbnRleHRJZCovKSBmaW5hbDsKKyAgICB2b2lkIHNo
b3dQbGF5YmFja1RhcmdldFBpY2tlcih1aW50NjRfdCBjb250ZXh0SWQsIGNvbnN0IFdlYkNvcmU6
OkludFBvaW50JiwgYm9vbCkgZmluYWw7CisgICAgdm9pZCBwbGF5YmFja1RhcmdldFBpY2tlckNs
aWVudFN0YXRlRGlkQ2hhbmdlKHVpbnQ2NF90LCBXZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpNZWRp
YVN0YXRlRmxhZ3MpIGZpbmFsOworICAgIHZvaWQgc2V0TW9ja01lZGlhUGxheWJhY2tUYXJnZXRQ
aWNrZXJFbmFibGVkKGJvb2wpIGZpbmFsOworICAgIHZvaWQgc2V0TW9ja01lZGlhUGxheWJhY2tU
YXJnZXRQaWNrZXJTdGF0ZShjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpNZWRpYVBsYXliYWNrVGFy
Z2V0Q29udGV4dDo6U3RhdGUpIGZpbmFsOwogI2VuZGlmCiAKLSAgICB2b2lkIGltYWdlT3JNZWRp
YURvY3VtZW50U2l6ZUNoYW5nZWQoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYpIG92ZXJyaWRlOwot
I2lmIEVOQUJMRShWSURFTykKLSNpZiBVU0UoR1NUUkVBTUVSKQotICAgIHZvaWQgcmVxdWVzdElu
c3RhbGxNaXNzaW5nTWVkaWFQbHVnaW5zKGNvbnN0IFN0cmluZyYgLypkZXRhaWxzKi8sIGNvbnN0
IFN0cmluZyYgLypkZXNjcmlwdGlvbiovLCBXZWJDb3JlOjpNZWRpYVBsYXllclJlcXVlc3RJbnN0
YWxsTWlzc2luZ1BsdWdpbnNDYWxsYmFjayYpIG92ZXJyaWRlOwotI2VuZGlmCisgICAgdm9pZCBp
bWFnZU9yTWVkaWFEb2N1bWVudFNpemVDaGFuZ2VkKGNvbnN0IFdlYkNvcmU6OkludFNpemUmKSBm
aW5hbDsKKworI2lmIEVOQUJMRShWSURFTykgJiYgVVNFKEdTVFJFQU1FUikKKyAgICB2b2lkIHJl
cXVlc3RJbnN0YWxsTWlzc2luZ01lZGlhUGx1Z2lucyhjb25zdCBTdHJpbmcmIC8qZGV0YWlscyov
LCBjb25zdCBTdHJpbmcmIC8qZGVzY3JpcHRpb24qLywgV2ViQ29yZTo6TWVkaWFQbGF5ZXJSZXF1
ZXN0SW5zdGFsbE1pc3NpbmdQbHVnaW5zQ2FsbGJhY2smKSBmaW5hbDsKICNlbmRpZgogCi0gICAg
dm9pZCBkaWRJbnZhbGlkYXRlRG9jdW1lbnRNYXJrZXJSZWN0cygpIG92ZXJyaWRlOworICAgIHZv
aWQgZGlkSW52YWxpZGF0ZURvY3VtZW50TWFya2VyUmVjdHMoKSBmaW5hbDsKIAogICAgIFN0cmlu
ZyBtX2NhY2hlZFRvb2xUaXA7CiAgICAgbXV0YWJsZSBSZWZQdHI8V2ViRnJhbWU+IG1fY2FjaGVk
RnJhbWVTZXRMYXJnZXN0RnJhbWU7Ci0gICAgbXV0YWJsZSBib29sIG1fY2FjaGVkTWFpbkZyYW1l
SGFzSG9yaXpvbnRhbFNjcm9sbGJhcjsKLSAgICBtdXRhYmxlIGJvb2wgbV9jYWNoZWRNYWluRnJh
bWVIYXNWZXJ0aWNhbFNjcm9sbGJhcjsKKyAgICBtdXRhYmxlIGJvb2wgbV9jYWNoZWRNYWluRnJh
bWVIYXNIb3Jpem9udGFsU2Nyb2xsYmFyIHsgZmFsc2UgfTsKKyAgICBtdXRhYmxlIGJvb2wgbV9j
YWNoZWRNYWluRnJhbWVIYXNWZXJ0aWNhbFNjcm9sbGJhciB7IGZhbHNlIH07CiAKLSAgICBXZWJQ
YWdlKiBtX3BhZ2U7CisgICAgV2ViUGFnZSYgbV9wYWdlOwogfTsKIAogfSAvLyBuYW1lc3BhY2Ug
V2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L1dlYkVkaXRvckNsaWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5jcHAKaW5kZXggNTRiMjdiNDQwNDg1MjY5ZTVlODdm
ODJkMGZiNTAyYTFmMDIyYWMzMy4uOGI4MDc1NTJjNDExNDUyNjI0ODgwMzgzZjlkMzJhYmFhMDc2
YmVmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9XZWJFZGl0b3JDbGllbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
Q29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmNwcApAQCAtMjM4LDIxICsyMzgsMjEgQEAgdm9p
ZCBXZWJFZGl0b3JDbGllbnQ6OmdldENsaWVudFBhc3RlYm9hcmREYXRhRm9yUmFuZ2UoUmFuZ2Uq
IHJhbmdlLCBWZWN0b3I8U3RyaW4KICAgICBtX3BhZ2UtPmluamVjdGVkQnVuZGxlRWRpdG9yQ2xp
ZW50KCkuZ2V0UGFzdGVib2FyZERhdGFGb3JSYW5nZSgqbV9wYWdlLCByYW5nZSwgcGFzdGVib2Fy
ZFR5cGVzLCBwYXN0ZWJvYXJkRGF0YSk7CiB9CiAKLXZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdp
c3RlclVuZG9TdGVwKFBhc3NSZWZQdHI8VW5kb1N0ZXA+IHN0ZXApCit2b2lkIFdlYkVkaXRvckNs
aWVudDo6cmVnaXN0ZXJVbmRvU3RlcChVbmRvU3RlcCYgc3RlcCkKIHsKICAgICAvLyBGSVhNRTog
QWRkIGFzc2VydGlvbiB0aGF0IHRoZSBjb21tYW5kIGJlaW5nIHJlYXBwbGllZCBpcyB0aGUgc2Ft
ZSBjb21tYW5kIHRoYXQgaXMKICAgICAvLyBiZWluZyBwYXNzZWQgdG8gdXMuCiAgICAgaWYgKG1f
cGFnZS0+aXNJblJlZG8oKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgUmVmUHRyPFdlYlVuZG9T
dGVwPiB3ZWJTdGVwID0gV2ViVW5kb1N0ZXA6OmNyZWF0ZShzdGVwKTsKLSAgICBtX3BhZ2UtPmFk
ZFdlYlVuZG9TdGVwKHdlYlN0ZXAtPnN0ZXBJRCgpLCB3ZWJTdGVwLmdldCgpKTsKLSAgICB1aW50
MzJfdCBlZGl0QWN0aW9uID0gc3RhdGljX2Nhc3Q8dWludDMyX3Q+KHdlYlN0ZXAtPnN0ZXAoKS0+
ZWRpdGluZ0FjdGlvbigpKTsKKyAgICBhdXRvIHdlYlN0ZXAgPSBXZWJVbmRvU3RlcDo6Y3JlYXRl
KCZzdGVwKTsKKyAgICBhdXRvIGVkaXRBY3Rpb24gPSBzdGF0aWNfY2FzdDx1aW50MzJfdD4od2Vi
U3RlcC0+c3RlcCgpLT5lZGl0aW5nQWN0aW9uKCkpOwogCisgICAgbV9wYWdlLT5hZGRXZWJVbmRv
U3RlcCh3ZWJTdGVwLT5zdGVwSUQoKSwgd2ViU3RlcC5wdHIoKSk7CiAgICAgbV9wYWdlLT5zZW5k
KE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJlZ2lzdGVyRWRpdENvbW1hbmRGb3JVbmRvKHdlYlN0
ZXAtPnN0ZXBJRCgpLCBlZGl0QWN0aW9uKSk7CiB9CiAKLXZvaWQgV2ViRWRpdG9yQ2xpZW50Ojpy
ZWdpc3RlclJlZG9TdGVwKFBhc3NSZWZQdHI8VW5kb1N0ZXA+KQordm9pZCBXZWJFZGl0b3JDbGll
bnQ6OnJlZ2lzdGVyUmVkb1N0ZXAoVW5kb1N0ZXAmKQogewogfQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oIGIv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQu
aAppbmRleCA4ZDgxNzRkYzkxM2FmNWUyY2IzMDE4MDc0MjA1YWQ5NTgxOTY0YTYwLi5jZTJiY2M0
NzE4ODRhZWUxZDlkYTVjMmRhN2M1Yzc4YjZlZjg1NGVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmgK
QEAgLTcxLDggKzcxLDggQEAgcHJpdmF0ZToKICAgICB2b2lkIGRpZFdyaXRlU2VsZWN0aW9uVG9Q
YXN0ZWJvYXJkKCkgZmluYWw7CiAgICAgdm9pZCBnZXRDbGllbnRQYXN0ZWJvYXJkRGF0YUZvclJh
bmdlKFdlYkNvcmU6OlJhbmdlKiwgVmVjdG9yPFN0cmluZz4mIHBhc3RlYm9hcmRUeXBlcywgVmVj
dG9yPFJlZlB0cjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+PiYgcGFzdGVib2FyZERhdGEpIGZpbmFs
OwogICAgIAotICAgIHZvaWQgcmVnaXN0ZXJVbmRvU3RlcChQYXNzUmVmUHRyPFdlYkNvcmU6OlVu
ZG9TdGVwPikgZmluYWw7Ci0gICAgdm9pZCByZWdpc3RlclJlZG9TdGVwKFBhc3NSZWZQdHI8V2Vi
Q29yZTo6VW5kb1N0ZXA+KSBmaW5hbDsKKyAgICB2b2lkIHJlZ2lzdGVyVW5kb1N0ZXAoV2ViQ29y
ZTo6VW5kb1N0ZXAmKSBmaW5hbDsKKyAgICB2b2lkIHJlZ2lzdGVyUmVkb1N0ZXAoV2ViQ29yZTo6
VW5kb1N0ZXAmKSBmaW5hbDsKICAgICB2b2lkIGNsZWFyVW5kb1JlZG9PcGVyYXRpb25zKCkgZmlu
YWw7CiAKICAgICBib29sIGNhbkNvcHlDdXQoV2ViQ29yZTo6RnJhbWUqLCBib29sIGRlZmF1bHRW
YWx1ZSkgY29uc3QgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcCBiL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCmluZGV4
IGYxNzc1YzY4NmY4ZjQwNjUwODY4NTM1MjVlMDBmMWRkMmIxMzFiZGYuLjhhNzU5NGUwMTNiMjMx
N2EzYTMyN2JhYmQ0NDkyZjkzNGUyMDFkYmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGll
bnQuY3BwCkBAIC03MDEsNyArNzAxLDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hEZWNpZGVQb2xpY3lGb3JSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnMKICAgICAg
ICAgbV9mcmFtZS0+ZGlkUmVjZWl2ZVBvbGljeURlY2lzaW9uKGxpc3RlbmVySUQsIHN0YXRpY19j
YXN0PFBvbGljeUFjdGlvbj4ocG9saWN5QWN0aW9uKSwgMCwgZG93bmxvYWRJRCk7CiB9CiAKLXZv
aWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93
QWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIG5hdmlnYXRpb25BY3Rpb24sIGNvbnN0IFJl
c291cmNlUmVxdWVzdCYgcmVxdWVzdCwgUGFzc1JlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSwg
Y29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24pCit2
b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRv
d0FjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBuYXZpZ2F0aW9uQWN0aW9uLCBjb25zdCBS
ZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSogZm9ybVN0YXRlLCBjb25zdCBTdHJp
bmcmIGZyYW1lTmFtZSwgRnJhbWVQb2xpY3lGdW5jdGlvbiBmdW5jdGlvbikKIHsKICAgICBXZWJQ
YWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpOwogICAgIGlmICghd2ViUGFnZSkgewpAQCAt
NzM3LDcgKzczNyw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRl
UG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IE5hdmlnYXRpCiAgICAgd2ViUGFnZS0+c2Vu
ZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24o
bV9mcmFtZS0+ZnJhbWVJRCgpLCBTZWN1cml0eU9yaWdpbkRhdGE6OmZyb21GcmFtZShjb3JlRnJh
bWUpLCBuYXZpZ2F0aW9uQWN0aW9uRGF0YSwgcmVxdWVzdCwgZnJhbWVOYW1lLCBsaXN0ZW5lcklE
LCBVc2VyRGF0YShXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS50cmFuc2Zvcm1PYmplY3RzVG9IYW5k
bGVzKHVzZXJEYXRhLmdldCgpKS5nZXQoKSkpKTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNs
aWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5hdmln
YXRpb25BY3Rpb24mIG5hdmlnYXRpb25BY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVx
dWVzdCwgUGFzc1JlZlB0cjxGb3JtU3RhdGU+IHBycEZvcm1TdGF0ZSwgRnJhbWVQb2xpY3lGdW5j
dGlvbiBmdW5jdGlvbikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRl
UG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBuYXZpZ2F0
aW9uQWN0aW9uLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSogZm9y
bVN0YXRlLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQogewogICAgIFdlYlBhZ2UqIHdl
YlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7CiAgICAgaWYgKCF3ZWJQYWdlKSB7CkBAIC03NTIsNyAr
NzUyLDYgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lG
b3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5hdmlnYXQKICAgICB9CiAKICAgICBSZWZQdHI8QVBJ
OjpPYmplY3Q+IHVzZXJEYXRhOwotICAgIFJlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSA9IHBy
cEZvcm1TdGF0ZTsKIAogICAgIFJlZlB0cjxJbmplY3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rpb24+
IGFjdGlvbiA9IEluamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbjo6Y3JlYXRlKG1fZnJhbWUs
IG5hdmlnYXRpb25BY3Rpb24sIGZvcm1TdGF0ZSk7CiAKQEAgLTc4Miw3ICs3ODEsNyBAQCB2b2lk
IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25B
Y3Rpb24oY29uc3QgTmF2aWdhdAogICAgIGNhc2UgTmF2aWdhdGlvblR5cGU6OkZvcm1TdWJtaXR0
ZWQ6CiAgICAgY2FzZSBOYXZpZ2F0aW9uVHlwZTo6Rm9ybVJlc3VibWl0dGVkOgogICAgICAgICBp
ZiAoZm9ybVN0YXRlKQotICAgICAgICAgICAgb3JpZ2luYXRpbmdGcmFtZSA9IFdlYkZyYW1lOjpm
cm9tQ29yZUZyYW1lKCpmb3JtU3RhdGUtPnNvdXJjZURvY3VtZW50KCktPmZyYW1lKCkpOworICAg
ICAgICAgICAgb3JpZ2luYXRpbmdGcmFtZSA9IFdlYkZyYW1lOjpmcm9tQ29yZUZyYW1lKCpmb3Jt
U3RhdGUtPnNvdXJjZURvY3VtZW50KCkuZnJhbWUoKSk7CiAgICAgICAgIGJyZWFrOwogICAgIGNh
c2UgTmF2aWdhdGlvblR5cGU6OkJhY2tGb3J3YXJkOgogICAgIGNhc2UgTmF2aWdhdGlvblR5cGU6
OlJlbG9hZDoKQEAgLTg0Myw0MCArODQyLDM2IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoVW5hYmxlVG9JbXBsZW1lbnRQb2xpY3koY29uc3QgUmVzb3VyY2VFcnJvciYKICAg
ICB3ZWJQYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlVuYWJsZVRvSW1wbGVtZW50
UG9saWN5KG1fZnJhbWUtPmZyYW1lSUQoKSwgZXJyb3IsIFVzZXJEYXRhKFdlYlByb2Nlc3M6OnNp
bmdsZXRvbigpLnRyYW5zZm9ybU9iamVjdHNUb0hhbmRsZXModXNlckRhdGEuZ2V0KCkpLmdldCgp
KSkpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kU3Vi
bWl0RXZlbnQoUGFzc1JlZlB0cjxGb3JtU3RhdGU+IHBycEZvcm1TdGF0ZSkKK3ZvaWQgV2ViRnJh
bWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChSZWY8Rm9ybVN0YXRl
PiYmIGZvcm1TdGF0ZSkKIHsKLSAgICBXZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgp
OworICAgIGF1dG8qIHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7CiAgICAgaWYgKCF3ZWJQYWdl
KQogICAgICAgICByZXR1cm47CiAKLSAgICBSZWZQdHI8Rm9ybVN0YXRlPiBmb3JtU3RhdGUgPSBw
cnBGb3JtU3RhdGU7Ci0gICAgSFRNTEZvcm1FbGVtZW50KiBmb3JtID0gZm9ybVN0YXRlLT5mb3Jt
KCk7CisgICAgYXV0byYgZm9ybSA9IGZvcm1TdGF0ZS0+Zm9ybSgpOwogCi0gICAgV2ViRnJhbWUq
IHNvdXJjZUZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZvcm1TdGF0ZS0+c291cmNl
RG9jdW1lbnQoKS0+ZnJhbWUoKSk7CisgICAgQVNTRVJUKGZvcm1TdGF0ZS0+c291cmNlRG9jdW1l
bnQoKS5mcmFtZSgpKTsKKyAgICBhdXRvKiBzb3VyY2VGcmFtZSA9IFdlYkZyYW1lOjpmcm9tQ29y
ZUZyYW1lKCpmb3JtU3RhdGUtPnNvdXJjZURvY3VtZW50KCkuZnJhbWUoKSk7CiAgICAgQVNTRVJU
KHNvdXJjZUZyYW1lKTsKIAotICAgIHdlYlBhZ2UtPmluamVjdGVkQnVuZGxlRm9ybUNsaWVudCgp
LndpbGxTZW5kU3VibWl0RXZlbnQod2ViUGFnZSwgZm9ybSwgbV9mcmFtZSwgc291cmNlRnJhbWUs
IGZvcm1TdGF0ZS0+dGV4dEZpZWxkVmFsdWVzKCkpOworICAgIHdlYlBhZ2UtPmluamVjdGVkQnVu
ZGxlRm9ybUNsaWVudCgpLndpbGxTZW5kU3VibWl0RXZlbnQod2ViUGFnZSwgJmZvcm0sIG1fZnJh
bWUsIHNvdXJjZUZyYW1lLCBmb3JtU3RhdGUtPnRleHRGaWVsZFZhbHVlcygpKTsKIH0KIAotdm9p
ZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShQYXNzUmVmUHRy
PEZvcm1TdGF0ZT4gcHJwRm9ybVN0YXRlLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQor
dm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShGb3JtU3Rh
dGUmIGZvcm1TdGF0ZSwgRnJhbWVQb2xpY3lGdW5jdGlvbiBmdW5jdGlvbikKIHsKICAgICBXZWJQ
YWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpOwogICAgIGlmICghd2ViUGFnZSkKICAgICAg
ICAgcmV0dXJuOwogCi0gICAgLy8gRklYTUU6IFBhc3MgbW9yZSBvZiB0aGUgZm9ybSBzdGF0ZS4K
LSAgICBSZWZQdHI8Rm9ybVN0YXRlPiBmb3JtU3RhdGUgPSBwcnBGb3JtU3RhdGU7Ci0gICAgCi0g
ICAgSFRNTEZvcm1FbGVtZW50KiBmb3JtID0gZm9ybVN0YXRlLT5mb3JtKCk7CisgICAgYXV0byYg
Zm9ybSA9IGZvcm1TdGF0ZS5mb3JtKCk7CiAKLSAgICBXZWJGcmFtZSogc291cmNlRnJhbWUgPSBX
ZWJGcmFtZTo6ZnJvbUNvcmVGcmFtZSgqZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLT5mcmFt
ZSgpKTsKKyAgICBhdXRvKiBzb3VyY2VGcmFtZSA9IFdlYkZyYW1lOjpmcm9tQ29yZUZyYW1lKCpm
b3JtU3RhdGUuc291cmNlRG9jdW1lbnQoKS5mcmFtZSgpKTsKICAgICBBU1NFUlQoc291cmNlRnJh
bWUpOwogCi0gICAgY29uc3QgVmVjdG9yPHN0ZDo6cGFpcjxTdHJpbmcsIFN0cmluZz4+JiB2YWx1
ZXMgPSBmb3JtU3RhdGUtPnRleHRGaWVsZFZhbHVlcygpOworICAgIGF1dG8mIHZhbHVlcyA9IGZv
cm1TdGF0ZS50ZXh0RmllbGRWYWx1ZXMoKTsKIAogICAgIFJlZlB0cjxBUEk6Ok9iamVjdD4gdXNl
ckRhdGE7Ci0gICAgd2ViUGFnZS0+aW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCkud2lsbFN1Ym1p
dEZvcm0od2ViUGFnZSwgZm9ybSwgbV9mcmFtZSwgc291cmNlRnJhbWUsIHZhbHVlcywgdXNlckRh
dGEpOwotCisgICAgd2ViUGFnZS0+aW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCkud2lsbFN1Ym1p
dEZvcm0od2ViUGFnZSwgJmZvcm0sIG1fZnJhbWUsIHNvdXJjZUZyYW1lLCB2YWx1ZXMsIHVzZXJE
YXRhKTsKIAogICAgIHVpbnQ2NF90IGxpc3RlbmVySUQgPSBtX2ZyYW1lLT5zZXRVcFBvbGljeUxp
c3RlbmVyKFdURk1vdmUoZnVuY3Rpb24pKTsKIApAQCAtMTQwMCwxNCArMTM5NSwxMyBAQCB2b2lk
IFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpjb252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxvYWQo
RG9jdW1lbnRMb2FkZXIgKmRvYwogICAgIG1fZnJhbWUtPmNvbnZlcnRNYWluUmVzb3VyY2VMb2Fk
VG9Eb3dubG9hZChkb2N1bWVudExvYWRlciwgc2Vzc2lvbklELCByZXF1ZXN0LCByZXNwb25zZSk7
CiB9CiAKLVJlZlB0cjxGcmFtZT4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1lKGNv
bnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIG5hbWUsIEhUTUxGcmFtZU93bmVyRWxlbWVudCog
b3duZXJFbGVtZW50LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIGJvb2wgLyphbGxvd3NTY3JvbGxpbmcq
LywgaW50IC8qbWFyZ2luV2lkdGgqLywgaW50IC8qbWFyZ2luSGVpZ2h0Ki8pCitSZWZQdHI8RnJh
bWU+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVGcmFtZShjb25zdCBVUkwmIHVybCwgY29u
c3QgU3RyaW5nJiBuYW1lLCBIVE1MRnJhbWVPd25lckVsZW1lbnQmIG93bmVyRWxlbWVudCwKKyAg
ICBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBib29sIC8qYWxsb3dzU2Nyb2xsaW5nKi8sIGludCAv
Km1hcmdpbldpZHRoKi8sIGludCAvKm1hcmdpbkhlaWdodCovKQogewotICAgIFdlYlBhZ2UqIHdl
YlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7CisgICAgYXV0byogd2ViUGFnZSA9IG1fZnJhbWUtPnBh
Z2UoKTsKIAotICAgIFJlZlB0cjxXZWJGcmFtZT4gc3ViZnJhbWUgPSBXZWJGcmFtZTo6Y3JlYXRl
U3ViZnJhbWUod2ViUGFnZSwgbmFtZSwgb3duZXJFbGVtZW50KTsKLQotICAgIEZyYW1lKiBjb3Jl
U3ViZnJhbWUgPSBzdWJmcmFtZS0+Y29yZUZyYW1lKCk7CisgICAgYXV0byBzdWJmcmFtZSA9IFdl
YkZyYW1lOjpjcmVhdGVTdWJmcmFtZSh3ZWJQYWdlLCBuYW1lLCAmb3duZXJFbGVtZW50KTsKKyAg
ICBhdXRvKiBjb3JlU3ViZnJhbWUgPSBzdWJmcmFtZS0+Y29yZUZyYW1lKCk7CiAgICAgaWYgKCFj
b3JlU3ViZnJhbWUpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCkBAIC0xNDI3LDcgKzE0MjEs
NyBAQCBSZWZQdHI8RnJhbWU+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVGcmFtZShjb25z
dCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiBuYQogICAgIHJldHVybiBjb3JlU3ViZnJhbWU7CiB9
CiAKLVJlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29u
c3QgSW50U2l6ZSYsIEhUTUxQbHVnSW5FbGVtZW50KiBwbHVnaW5FbGVtZW50LCBjb25zdCBVUkwm
IHVybCwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJp
bmc+JiBwYXJhbVZhbHVlcywgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgYm9vbCBsb2FkTWFudWFs
bHkpCitSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlUGx1Z2luKGNv
bnN0IEludFNpemUmLCBIVE1MUGx1Z0luRWxlbWVudCYgcGx1Z2luRWxlbWVudCwgY29uc3QgVVJM
JiB1cmwsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3Ry
aW5nPiYgcGFyYW1WYWx1ZXMsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUsIGJvb2wgbG9hZE1hbnVh
bGx5KQogewogICAgIEFTU0VSVChwYXJhbU5hbWVzLnNpemUoKSA9PSBwYXJhbVZhbHVlcy5zaXpl
KCkpOwogICAgIEFTU0VSVChtX2ZyYW1lLT5wYWdlKCkpOwpAQCAtMTQ0NCwxMSArMTQzOCwxMSBA
QCBSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlUGx1Z2luKGNvbnN0
IEludFNpemUmLCBIVE1MUGx1Z0luRWxlbQogI2VuZGlmCiAKICNpZiBFTkFCTEUoTkVUU0NBUEVf
UExVR0lOX0FQSSkKLSAgICBhdXRvIHBsdWdpbiA9IG1fZnJhbWUtPnBhZ2UoKS0+Y3JlYXRlUGx1
Z2luKG1fZnJhbWUsIHBsdWdpbkVsZW1lbnQsIHBhcmFtZXRlcnMsIHBhcmFtZXRlcnMubWltZVR5
cGUpOworICAgIGF1dG8gcGx1Z2luID0gbV9mcmFtZS0+cGFnZSgpLT5jcmVhdGVQbHVnaW4obV9m
cmFtZSwgJnBsdWdpbkVsZW1lbnQsIHBhcmFtZXRlcnMsIHBhcmFtZXRlcnMubWltZVR5cGUpOwog
ICAgIGlmICghcGx1Z2luKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAotICAgIHJldHVybiBQ
bHVnaW5WaWV3OjpjcmVhdGUocGx1Z2luRWxlbWVudCwgV1RGTW92ZShwbHVnaW4pLCBwYXJhbWV0
ZXJzKTsKKyAgICByZXR1cm4gUGx1Z2luVmlldzo6Y3JlYXRlKHBsdWdpbkVsZW1lbnQsIHBsdWdp
bi5yZWxlYXNlTm9uTnVsbCgpLCBwYXJhbWV0ZXJzKTsKICNlbHNlCiAgICAgVU5VU0VEX1BBUkFN
KHBsdWdpbkVsZW1lbnQpOwogICAgIHJldHVybiBudWxscHRyOwpAQCAtMTQ1OCwxMyArMTQ1Miwx
NCBAQCBSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlUGx1Z2luKGNv
bnN0IEludFNpemUmLCBIVE1MUGx1Z0luRWxlbQogdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
cmVjcmVhdGVQbHVnaW4oV2lkZ2V0KiB3aWRnZXQpCiB7CiAjaWYgRU5BQkxFKE5FVFNDQVBFX1BM
VUdJTl9BUEkpCi0gICAgQVNTRVJUKHdpZGdldCAmJiB3aWRnZXQtPmlzUGx1Z2luVmlld0Jhc2Uo
KSk7CisgICAgQVNTRVJUKHdpZGdldCk7CisgICAgQVNTRVJUKHdpZGdldC0+aXNQbHVnaW5WaWV3
QmFzZSgpKTsKICAgICBBU1NFUlQobV9mcmFtZS0+cGFnZSgpKTsKIAotICAgIFBsdWdpblZpZXcq
IHBsdWdpblZpZXcgPSBzdGF0aWNfY2FzdDxQbHVnaW5WaWV3Kj4od2lkZ2V0KTsKKyAgICBhdXRv
JiBwbHVnaW5WaWV3ID0gc3RhdGljX2Nhc3Q8UGx1Z2luVmlldyY+KCp3aWRnZXQpOwogICAgIFN0
cmluZyBuZXdNSU1FVHlwZTsKLSAgICBhdXRvIHBsdWdpbiA9IG1fZnJhbWUtPnBhZ2UoKS0+Y3Jl
YXRlUGx1Z2luKG1fZnJhbWUsIHBsdWdpblZpZXctPnBsdWdpbkVsZW1lbnQoKSwgcGx1Z2luVmll
dy0+aW5pdGlhbFBhcmFtZXRlcnMoKSwgbmV3TUlNRVR5cGUpOwotICAgIHBsdWdpblZpZXctPnJl
Y3JlYXRlQW5kSW5pdGlhbGl6ZShXVEZNb3ZlKHBsdWdpbikpOworICAgIGF1dG8gcGx1Z2luID0g
bV9mcmFtZS0+cGFnZSgpLT5jcmVhdGVQbHVnaW4obV9mcmFtZSwgcGx1Z2luVmlldy5wbHVnaW5F
bGVtZW50KCksIHBsdWdpblZpZXcuaW5pdGlhbFBhcmFtZXRlcnMoKSwgbmV3TUlNRVR5cGUpOwor
ICAgIHBsdWdpblZpZXcucmVjcmVhdGVBbmRJbml0aWFsaXplKHBsdWdpbi5yZWxlYXNlTm9uTnVs
bCgpKTsKICNlbHNlCiAgICAgVU5VU0VEX1BBUkFNKHdpZGdldCk7CiAjZW5kaWYKQEAgLTE0Nzcs
OSArMTQ3MiwxMCBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpyZWRpcmVjdERhdGFUb1Bs
dWdpbihXaWRnZXQqIHBsdWdpbldpZGdldCkKIH0KIAogI2lmIEVOQUJMRShXRUJHTCkKKwogV2Vi
Q29yZTo6V2ViR0xMb2FkUG9saWN5IFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojp3ZWJHTFBvbGljeUZv
clVSTChjb25zdCBTdHJpbmcmIHVybCkgY29uc3QKIHsKLSAgICBpZiAoV2ViUGFnZSogd2ViUGFn
ZSA9IG1fZnJhbWUtPnBhZ2UoKSkKKyAgICBpZiAoYXV0byogd2ViUGFnZSA9IG1fZnJhbWUtPnBh
Z2UoKSkKICAgICAgICAgcmV0dXJuIHdlYlBhZ2UtPndlYkdMUG9saWN5Rm9yVVJMKG1fZnJhbWUs
IHVybCk7CiAKICAgICByZXR1cm4gV2ViR0xBbGxvd0NyZWF0aW9uOwpAQCAtMTQ4NywzMSArMTQ4
MywzMiBAQCBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgV2ViRnJhbWVMb2FkZXJDbGllbnQ6Ondl
YkdMUG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYgdQogCiBXZWJDb3JlOjpXZWJHTExvYWRQb2xp
Y3kgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnJlc29sdmVXZWJHTFBvbGljeUZvclVSTChjb25zdCBT
dHJpbmcmIHVybCkgY29uc3QKIHsKLSAgICBpZiAoV2ViUGFnZSogd2ViUGFnZSA9IG1fZnJhbWUt
PnBhZ2UoKSkKKyAgICBpZiAoYXV0byogd2ViUGFnZSA9IG1fZnJhbWUtPnBhZ2UoKSkKICAgICAg
ICAgcmV0dXJuIHdlYlBhZ2UtPnJlc29sdmVXZWJHTFBvbGljeUZvclVSTChtX2ZyYW1lLCB1cmwp
OwogCiAgICAgcmV0dXJuIFdlYkdMQWxsb3dDcmVhdGlvbjsKIH0KLSNlbmRpZiAvLyBFTkFCTEUo
V0VCR0wpCiAKLVBhc3NSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRl
SmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXplJiBwbHVnaW5TaXplLCBIVE1MQXBwbGV0RWxl
bWVudCogYXBwbGV0RWxlbWVudCwgY29uc3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBh
cmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykKKyNlbmRpZgorCitS
ZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlSmF2YUFwcGxldFdpZGdl
dChjb25zdCBJbnRTaXplJiBwbHVnaW5TaXplLCBIVE1MQXBwbGV0RWxlbWVudCYgYXBwbGV0RWxl
bWVudCwgY29uc3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0
IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykKIHsKICNpZiBFTkFCTEUoTkVUU0NBUEVfUExV
R0lOX0FQSSkKLSAgICBhdXRvIHBsdWdpbiA9IGNyZWF0ZVBsdWdpbihwbHVnaW5TaXplLCBhcHBs
ZXRFbGVtZW50LCBVUkwoKSwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMsIGFwcGxldEVsZW1lbnQt
PnNlcnZpY2VUeXBlKCksIGZhbHNlKTsKKyAgICBhdXRvIHBsdWdpbiA9IGNyZWF0ZVBsdWdpbihw
bHVnaW5TaXplLCBhcHBsZXRFbGVtZW50LCBVUkwoKSwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMs
IGFwcGxldEVsZW1lbnQuc2VydmljZVR5cGUoKSwgZmFsc2UpOwogICAgIGlmICghcGx1Z2luKSB7
Ci0gICAgICAgIGlmIChXZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpKSB7Ci0gICAg
ICAgICAgICBTdHJpbmcgZnJhbWVVUkxTdHJpbmcgPSBtX2ZyYW1lLT5jb3JlRnJhbWUoKS0+bG9h
ZGVyKCkuZG9jdW1lbnRMb2FkZXIoKS0+cmVzcG9uc2VVUkwoKS5zdHJpbmcoKTsKLSAgICAgICAg
ICAgIFN0cmluZyBwYWdlVVJMU3RyaW5nID0gd2ViUGFnZS0+Y29yZVBhZ2UoKS0+bWFpbkZyYW1l
KCkubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKS0+cmVzcG9uc2VVUkwoKS5zdHJpbmcoKTsKLSAg
ICAgICAgICAgIHdlYlBhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RGlkRmFpbFRv
SW5pdGlhbGl6ZVBsdWdpbihhcHBsZXRFbGVtZW50LT5zZXJ2aWNlVHlwZSgpLCBmcmFtZVVSTFN0
cmluZywgcGFnZVVSTFN0cmluZykpOworICAgICAgICBpZiAoYXV0byogd2ViUGFnZSA9IG1fZnJh
bWUtPnBhZ2UoKSkgeworICAgICAgICAgICAgYXV0byBmcmFtZVVSTFN0cmluZyA9IG1fZnJhbWUt
PmNvcmVGcmFtZSgpLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0
cmluZygpOworICAgICAgICAgICAgYXV0byBwYWdlVVJMU3RyaW5nID0gd2ViUGFnZS0+Y29yZVBh
Z2UoKS0+bWFpbkZyYW1lKCkubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKS0+cmVzcG9uc2VVUkwo
KS5zdHJpbmcoKTsKKyAgICAgICAgICAgIHdlYlBhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6RGlkRmFpbFRvSW5pdGlhbGl6ZVBsdWdpbihhcHBsZXRFbGVtZW50LnNlcnZpY2VUeXBl
KCksIGZyYW1lVVJMU3RyaW5nLCBwYWdlVVJMU3RyaW5nKSk7CiAgICAgICAgIH0KICAgICB9Ci0g
ICAgcmV0dXJuIFdURk1vdmUocGx1Z2luKTsKKyAgICByZXR1cm4gcGx1Z2luOwogI2Vsc2UKICAg
ICBVTlVTRURfUEFSQU0ocGx1Z2luU2l6ZSk7CiAgICAgVU5VU0VEX1BBUkFNKGFwcGxldEVsZW1l
bnQpOwogICAgIFVOVVNFRF9QQVJBTShwYXJhbU5hbWVzKTsKICAgICBVTlVTRURfUEFSQU0ocGFy
YW1WYWx1ZXMpOwotICAgIHJldHVybiAwOworICAgIHJldHVybiBudWxscHRyOwogI2VuZGlmCiB9
CiAKQEAgLTE3MTcsMTMgKzE3MTQsMTMgQEAgYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6c2hv
dWxkRm9yY2VVbml2ZXJzYWxBY2Nlc3NGcm9tTG9jYWxVUkwoY29uc3QgV2ViQ29yZToKICAgICBy
ZXR1cm4gd2ViUGFnZS0+aW5qZWN0ZWRCdW5kbGVMb2FkZXJDbGllbnQoKS5zaG91bGRGb3JjZVVu
aXZlcnNhbEFjY2Vzc0Zyb21Mb2NhbFVSTCh3ZWJQYWdlLCB1cmwuc3RyaW5nKCkpOwogfQogCi1Q
YXNzUmVmUHRyPEZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpj
cmVhdGVOZXR3b3JraW5nQ29udGV4dCgpCitSZWY8RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkKIHsKLSAgICBhdXRv
IGNvbnRleHQgPSBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0OjpjcmVhdGUobV9mcmFtZSk7Ci0g
ICAgcmV0dXJuIFdURk1vdmUoY29udGV4dCk7CisgICAgcmV0dXJuIFdlYkZyYW1lTmV0d29ya2lu
Z0NvbnRleHQ6OmNyZWF0ZShtX2ZyYW1lKTsKIH0KIAogI2lmIEVOQUJMRShDT05URU5UX0ZJTFRF
UklORykKKwogdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y29udGVudEZpbHRlckRpZEJsb2Nr
TG9hZChXZWJDb3JlOjpDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXIgdW5ibG9ja0hhbmRsZXIp
CiB7CiAgICAgaWYgKCF1bmJsb2NrSGFuZGxlci5uZWVkc1VJUHJvY2VzcygpKSB7CkBAIC0xNzM0
LDEyICsxNzMxLDE1IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNvbnRlbnRGaWx0ZXJE
aWRCbG9ja0xvYWQoV2ViQ29yZTo6Q29udGVudEZpbHRlclVuYmxvCiAgICAgaWYgKFdlYlBhZ2Uq
IHdlYlBhZ2UgeyBtX2ZyYW1lLT5wYWdlKCkgfSkKICAgICAgICAgd2ViUGFnZS0+c2VuZChNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpDb250ZW50RmlsdGVyRGlkQmxvY2tMb2FkRm9yRnJhbWUodW5i
bG9ja0hhbmRsZXIsIG1fZnJhbWUtPmZyYW1lSUQoKSkpOwogfQorCiAjZW5kaWYKIAogI2lmIEVO
QUJMRShSRVFVRVNUX0FVVE9DT01QTEVURSkKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRp
ZFJlcXVlc3RBdXRvY29tcGxldGUoUGFzc1JlZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+KQorCit2
b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaWRSZXF1ZXN0QXV0b2NvbXBsZXRlKFJlZjxXZWJD
b3JlOjpGb3JtU3RhdGU+JiYpCiB7CiB9CisKICNlbmRpZgogCiB2b2lkIFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpwcmVmZXRjaEROUyhjb25zdCBTdHJpbmcmIGhvc3RuYW1lKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNs
aWVudC5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFt
ZUxvYWRlckNsaWVudC5oCmluZGV4IGRiMmY5NDkxNDA3MjQwNzc3M2JkMDg2ZjdmOGI5YWNkMDdl
ZWE3NDYuLjBiODI5YjRhMjkwN2M4NGU4OTE2MGMxODdlMzhkZTRhZjkzYTUxOTkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2Fk
ZXJDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKQEAgLTM2LDcgKzM2LDcgQEAgbmFtZXNwYWNlIFdlYktp
dCB7CiBjbGFzcyBQbHVnaW5WaWV3OwogY2xhc3MgV2ViRnJhbWU7CiAgICAgCi1jbGFzcyBXZWJG
cmFtZUxvYWRlckNsaWVudCA6IHB1YmxpYyBXZWJDb3JlOjpGcmFtZUxvYWRlckNsaWVudCB7Citj
bGFzcyBXZWJGcmFtZUxvYWRlckNsaWVudCBmaW5hbCA6IHB1YmxpYyBXZWJDb3JlOjpGcmFtZUxv
YWRlckNsaWVudCB7CiBwdWJsaWM6CiAgICAgV2ViRnJhbWVMb2FkZXJDbGllbnQoKTsKICAgICB+
V2ViRnJhbWVMb2FkZXJDbGllbnQoKTsKQEAgLTQ5LDIxNyArNDksMjE2IEBAIHB1YmxpYzoKICAg
ICB2b2lkIHNldFVzZUljb25Mb2FkaW5nQ2xpZW50KGJvb2wgdXNlSWNvbkxvYWRpbmdDbGllbnQp
IHsgbV91c2VJY29uTG9hZGluZ0NsaWVudCA9IHVzZUljb25Mb2FkaW5nQ2xpZW50OyB9CiAKIHBy
aXZhdGU6Ci0gICAgdm9pZCBmcmFtZUxvYWRlckRlc3Ryb3llZCgpIG92ZXJyaWRlOworICAgIHZv
aWQgZnJhbWVMb2FkZXJEZXN0cm95ZWQoKSBmaW5hbDsKIAotICAgIGJvb2wgaGFzSFRNTFZpZXco
KSBjb25zdCBvdmVycmlkZTsKLSAgICBib29sIGhhc1dlYlZpZXcoKSBjb25zdCBvdmVycmlkZTsK
KyAgICBib29sIGhhc0hUTUxWaWV3KCkgY29uc3QgZmluYWw7CisgICAgYm9vbCBoYXNXZWJWaWV3
KCkgY29uc3QgZmluYWw7CiAgICAgCi0gICAgdm9pZCBtYWtlUmVwcmVzZW50YXRpb24oV2ViQ29y
ZTo6RG9jdW1lbnRMb2FkZXIqKSBvdmVycmlkZTsKKyAgICB2b2lkIG1ha2VSZXByZXNlbnRhdGlv
bihXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIGZpbmFsOwogI2lmIFBMQVRGT1JNKElPUykKLSAg
ICBib29sIGZvcmNlTGF5b3V0T25SZXN0b3JlRnJvbVBhZ2VDYWNoZSgpIG92ZXJyaWRlOworICAg
IGJvb2wgZm9yY2VMYXlvdXRPblJlc3RvcmVGcm9tUGFnZUNhY2hlKCkgZmluYWw7CiAjZW5kaWYK
LSAgICB2b2lkIGZvcmNlTGF5b3V0Rm9yTm9uSFRNTCgpIG92ZXJyaWRlOworICAgIHZvaWQgZm9y
Y2VMYXlvdXRGb3JOb25IVE1MKCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBzZXRDb3BpZXNPblNj
cm9sbCgpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0Q29waWVzT25TY3JvbGwoKSBmaW5hbDsKICAg
ICAKLSAgICB2b2lkIGRldGFjaGVkRnJvbVBhcmVudDIoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRl
dGFjaGVkRnJvbVBhcmVudDMoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRldGFjaGVkRnJvbVBhcmVu
dDIoKSBmaW5hbDsKKyAgICB2b2lkIGRldGFjaGVkRnJvbVBhcmVudDMoKSBmaW5hbDsKICAgICAK
LSAgICB2b2lkIGFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKKyAgICB2b2lkIGFzc2lnbklkZW50aWZpZXJUb0luaXRp
YWxSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKICAgICAKLSAgICB2
b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKSBvdmVycmlkZTsKLSAg
ICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
KiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNo
RGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
KiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpBdXRoZW50aWNhdGlv
bkNoYWxsZW5nZSYpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3Qo
V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmIHJl
ZGlyZWN0UmVzcG9uc2UpIGZpbmFsOworICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3Jh
Z2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIGZp
bmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2Uo
V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0
IFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikgZmluYWw7CiAjaWYgVVNFKFBST1RF
Q1RJT05fU1BBQ0VfQVVUSF9DQUxMQkFDSykKLSAgICBib29sIGNhbkF1dGhlbnRpY2F0ZUFnYWlu
c3RQcm90ZWN0aW9uU3BhY2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlByb3RlY3Rpb25TcGFjZSYpIG92ZXJyaWRlOwor
ICAgIGJvb2wgY2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShXZWJDb3JlOjpE
b2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6
UHJvdGVjdGlvblNwYWNlJikgZmluYWw7CiAjZW5kaWYKICNpZiBQTEFURk9STShJT1MpCi0gICAg
UmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gY29ubmVjdGlvblByb3BlcnRpZXMoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIG92ZXJyaWRlOworICAg
IFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IGNvbm5lY3Rpb25Qcm9wZXJ0aWVzKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKICNlbmRp
ZgotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVzcG9uc2UmKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRM
ZW5ndGgoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IGludCBkYXRhTGVuZ3RoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9h
ZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5nKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZUVycm9yJikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBkaXNwYXRjaERpZExvYWRSZXNvdXJjZUZy
b21NZW1vcnlDYWNoZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBpbnQgbGVu
Z3RoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNv
cmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2Vp
dmVDb250ZW50TGVuZ3RoKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZp
bmlzaExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhXZWJDb3JlOjpE
b2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VFcnJvciYpIGZpbmFsOworICAgIGJvb2wgZGlzcGF0Y2hEaWRMb2FkUmVzb3VyY2VG
cm9tTWVtb3J5Q2FjaGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgaW50IGxl
bmd0aCkgZmluYWw7CiAjaWYgRU5BQkxFKERBVEFfREVURUNUSU9OKQotICAgIHZvaWQgZGlzcGF0
Y2hEaWRGaW5pc2hEYXRhRGV0ZWN0aW9uKE5TQXJyYXkgKmRldGVjdGlvblJlc3VsdHMpIG92ZXJy
aWRlOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hEYXRhRGV0ZWN0aW9uKE5TQXJyYXkgKmRl
dGVjdGlvblJlc3VsdHMpIGZpbmFsOwogI2VuZGlmCiAgICAgCi0gICAgdm9pZCBkaXNwYXRjaERp
ZERpc3BhdGNoT25sb2FkRXZlbnRzKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJl
Y2VpdmVTZXJ2ZXJSZWRpcmVjdEZvclByb3Zpc2lvbmFsTG9hZCgpIG92ZXJyaWRlOwotICAgIHZv
aWQgZGlzcGF0Y2hEaWRDaGFuZ2VQcm92aXNpb25hbFVSTCgpIG92ZXJyaWRlOwotICAgIHZvaWQg
ZGlzcGF0Y2hEaWRDYW5jZWxDbGllbnRSZWRpcmVjdCgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlz
cGF0Y2hXaWxsUGVyZm9ybUNsaWVudFJlZGlyZWN0KGNvbnN0IFdlYkNvcmU6OlVSTCYsIGRvdWJs
ZSBpbnRlcnZhbCwgZG91YmxlIGZpcmVEYXRlKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNo
RGlkQ2hhbmdlTG9jYXRpb25XaXRoaW5QYWdlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRj
aERpZFB1c2hTdGF0ZVdpdGhpblBhZ2UoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlk
UmVwbGFjZVN0YXRlV2l0aGluUGFnZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRQ
b3BTdGF0ZVdpdGhpblBhZ2UoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoV2lsbENsb3Nl
KCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVJY29uKCkgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBkaXNwYXRjaERpZFN0YXJ0UHJvdmlzaW9uYWxMb2FkKCkgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVUaXRsZShjb25zdCBXZWJDb3JlOjpTdHJpbmdXaXRo
RGlyZWN0aW9uJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZENvbW1pdExvYWQoc3Rk
OjpvcHRpb25hbDxXZWJDb3JlOjpIYXNJbnNlY3VyZUNvbnRlbnQ+KSBvdmVycmlkZTsKLSAgICB2
b2lkIGRpc3BhdGNoRGlkRmFpbFByb3Zpc2lvbmFsTG9hZChjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZUVycm9yJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkKGNvbnN0IFdl
YkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmlu
aXNoRG9jdW1lbnRMb2FkKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExv
YWQoKSBvdmVycmlkZTsKLQotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWFjaExheW91dE1pbGVzdG9u
ZShXZWJDb3JlOjpMYXlvdXRNaWxlc3RvbmVzKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNo
RGlkTGF5b3V0KCkgb3ZlcnJpZGU7Ci0KLSAgICBXZWJDb3JlOjpGcmFtZSogZGlzcGF0Y2hDcmVh
dGVQYWdlKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mKSBvdmVycmlkZTsKLSAgICB2
b2lkIGRpc3BhdGNoU2hvdygpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hEaWREaXNwYXRj
aE9ubG9hZEV2ZW50cygpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlU2VydmVy
UmVkaXJlY3RGb3JQcm92aXNpb25hbExvYWQoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlk
Q2hhbmdlUHJvdmlzaW9uYWxVUkwoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkQ2FuY2Vs
Q2xpZW50UmVkaXJlY3QoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFBlcmZvcm1DbGll
bnRSZWRpcmVjdChjb25zdCBXZWJDb3JlOjpVUkwmLCBkb3VibGUgaW50ZXJ2YWwsIGRvdWJsZSBm
aXJlRGF0ZSkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZENoYW5nZUxvY2F0aW9uV2l0aGlu
UGFnZSgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRQdXNoU3RhdGVXaXRoaW5QYWdlKCkg
ZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlcGxhY2VTdGF0ZVdpdGhpblBhZ2UoKSBmaW5h
bDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUG9wU3RhdGVXaXRoaW5QYWdlKCkgZmluYWw7CisgICAg
dm9pZCBkaXNwYXRjaFdpbGxDbG9zZSgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNl
aXZlSWNvbigpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRTdGFydFByb3Zpc2lvbmFsTG9h
ZCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlVGl0bGUoY29uc3QgV2ViQ29y
ZTo6U3RyaW5nV2l0aERpcmVjdGlvbiYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRDb21t
aXRMb2FkKHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6SGFzSW5zZWN1cmVDb250ZW50PikgZmluYWw7
CisgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxQcm92aXNpb25hbExvYWQoY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VFcnJvciYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZChjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZp
bmlzaERvY3VtZW50TG9hZCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2Fk
KCkgZmluYWw7CisKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVhY2hMYXlvdXRNaWxlc3RvbmUoV2Vi
Q29yZTo6TGF5b3V0TWlsZXN0b25lcykgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZExheW91
dCgpIGZpbmFsOworCisgICAgV2ViQ29yZTo6RnJhbWUqIGRpc3BhdGNoQ3JlYXRlUGFnZShjb25z
dCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaFNo
b3coKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yUmVzcG9u
c2UoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlUmVxdWVzdCYsIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOwotICAg
IHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgV2ViQ29y
ZTo6TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFBh
c3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0YXRlPiwgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIFdl
YkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hE
ZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25B
Y3Rpb24mLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPFdlYkNv
cmU6OkZvcm1TdGF0ZT4sIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOwot
ICAgIHZvaWQgY2FuY2VsUG9saWN5Q2hlY2soKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNo
RGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYs
IGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVu
Y3Rpb24pIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dB
Y3Rpb24oY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCYsIFdlYkNvcmU6OkZvcm1TdGF0ZSosIGNvbnN0IFN0cmluZyYgZnJhbWVO
YW1lLCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsKKyAgICB2b2lkIGRpc3Bh
dGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBXZWJDb3JlOjpOYXZpZ2F0
aW9uQWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgV2ViQ29yZTo6Rm9y
bVN0YXRlKiwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7CisgICAgdm9pZCBj
YW5jZWxQb2xpY3lDaGVjaygpIGZpbmFsOwogICAgIAotICAgIHZvaWQgZGlzcGF0Y2hVbmFibGVU
b0ltcGxlbWVudFBvbGljeShjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7
CisgICAgdm9pZCBkaXNwYXRjaFVuYWJsZVRvSW1wbGVtZW50UG9saWN5KGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRT
dWJtaXRFdmVudChQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4pIG92ZXJyaWRlOwotICAg
IHZvaWQgZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0
ZT4sIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOworICAgIHZvaWQgZGlz
cGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJlZjxXZWJDb3JlOjpGb3JtU3RhdGU+JiYpIGZpbmFs
OworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShXZWJDb3JlOjpGb3JtU3RhdGUmLCBX
ZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHJldmVy
dFRvUHJvdmlzaW9uYWxTdGF0ZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIG92ZXJyaWRlOwot
ICAgIHZvaWQgc2V0TWFpbkRvY3VtZW50RXJyb3IoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7CisgICAgdm9pZCByZXZlcnRU
b1Byb3Zpc2lvbmFsU3RhdGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBmaW5hbDsKKyAgICB2
b2lkIHNldE1haW5Eb2N1bWVudEVycm9yKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIGZpbmFsOwogICAgIAotICAgIHZvaWQgc2V0TWFpbkZy
YW1lRG9jdW1lbnRSZWFkeShib29sKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldE1haW5GcmFtZURv
Y3VtZW50UmVhZHkoYm9vbCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBzdGFydERvd25sb2FkKGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFN0cmluZyYgc3VnZ2VzdGVkTmFt
ZSA9IFN0cmluZygpKSBvdmVycmlkZTsKKyAgICB2b2lkIHN0YXJ0RG93bmxvYWQoY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgU3RyaW5nJiBzdWdnZXN0ZWROYW1lID0gU3Ry
aW5nKCkpIGZpbmFsOwogICAgIAotICAgIHZvaWQgd2lsbENoYW5nZVRpdGxlKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRDaGFuZ2VUaXRsZShXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciopIG92ZXJyaWRlOworICAgIHZvaWQgd2lsbENoYW5nZVRpdGxlKFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKikgZmluYWw7CisgICAgdm9pZCBkaWRDaGFuZ2VUaXRsZShX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciopIGZpbmFsOwogCi0gICAgdm9pZCB3aWxsUmVwbGFjZU11
bHRpcGFydENvbnRlbnQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZFJlcGxhY2VNdWx0aXBhcnRD
b250ZW50KCkgb3ZlcnJpZGU7CisgICAgdm9pZCB3aWxsUmVwbGFjZU11bHRpcGFydENvbnRlbnQo
KSBmaW5hbDsKKyAgICB2b2lkIGRpZFJlcGxhY2VNdWx0aXBhcnRDb250ZW50KCkgZmluYWw7CiAK
LSAgICB2b2lkIGNvbW1pdHRlZExvYWQoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBj
aGFyKiwgaW50KSBvdmVycmlkZTsKLSAgICB2b2lkIGZpbmlzaGVkTG9hZGluZyhXZWJDb3JlOjpE
b2N1bWVudExvYWRlciopIG92ZXJyaWRlOworICAgIHZvaWQgY29tbWl0dGVkTG9hZChXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciosIGNvbnN0IGNoYXIqLCBpbnQpIGZpbmFsOworICAgIHZvaWQgZmlu
aXNoZWRMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgZmluYWw7CiAgICAgCi0gICAg
dm9pZCB1cGRhdGVHbG9iYWxIaXN0b3J5KCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCB1cGRhdGVHbG9i
YWxIaXN0b3J5UmVkaXJlY3RMaW5rcygpIG92ZXJyaWRlOworICAgIHZvaWQgdXBkYXRlR2xvYmFs
SGlzdG9yeSgpIGZpbmFsOworICAgIHZvaWQgdXBkYXRlR2xvYmFsSGlzdG9yeVJlZGlyZWN0TGlu
a3MoKSBmaW5hbDsKICAgICAKLSAgICBib29sIHNob3VsZEdvVG9IaXN0b3J5SXRlbShXZWJDb3Jl
OjpIaXN0b3J5SXRlbSopIGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkR29Ub0hpc3Rv
cnlJdGVtKFdlYkNvcmU6Okhpc3RvcnlJdGVtKikgY29uc3QgZmluYWw7CiAKLSAgICB2b2lkIGRp
ZERpc3BsYXlJbnNlY3VyZUNvbnRlbnQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZFJ1bkluc2Vj
dXJlQ29udGVudChXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiosIGNvbnN0IFdlYkNvcmU6OlVSTCYp
IG92ZXJyaWRlOwotICAgIHZvaWQgZGlkRGV0ZWN0WFNTKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGJv
b2wgZGlkQmxvY2tFbnRpcmVQYWdlKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZERpc3BsYXlJbnNl
Y3VyZUNvbnRlbnQoKSBmaW5hbDsKKyAgICB2b2lkIGRpZFJ1bkluc2VjdXJlQ29udGVudChXZWJD
b3JlOjpTZWN1cml0eU9yaWdpbiosIGNvbnN0IFdlYkNvcmU6OlVSTCYpIGZpbmFsOworICAgIHZv
aWQgZGlkRGV0ZWN0WFNTKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGJvb2wgZGlkQmxvY2tFbnRpcmVQ
YWdlKSBmaW5hbDsKIAotICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgY2FuY2VsbGVkRXJyb3Io
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6
UmVzb3VyY2VFcnJvciBibG9ja2VkRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkQnlDb250ZW50
QmxvY2tlckVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRlOwot
ICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgY2Fubm90U2hvd1VSTEVycm9yKGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OlJlc291cmNlRXJy
b3IgaW50ZXJydXB0ZWRGb3JQb2xpY3lDaGFuZ2VFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZVJlcXVlc3QmKSBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbmNlbGxl
ZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOworICAgIFdlYkNv
cmU6OlJlc291cmNlRXJyb3IgYmxvY2tlZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVx
dWVzdCYpIGZpbmFsOworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgYmxvY2tlZEJ5Q29udGVu
dEJsb2NrZXJFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKKyAg
ICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dVUkxFcnJvcihjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGlu
dGVycnVwdGVkRm9yUG9saWN5Q2hhbmdlRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1
ZXN0JikgZmluYWw7CiAjaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQotICAgIFdlYkNvcmU6
OlJlc291cmNlRXJyb3IgYmxvY2tlZEJ5Q29udGVudEZpbHRlckVycm9yKGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRlOworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3Ig
YmxvY2tlZEJ5Q29udGVudEZpbHRlckVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYpIGZpbmFsOwogI2VuZGlmCiAgICAgCi0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBjYW5u
b3RTaG93TUlNRVR5cGVFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgb3Zl
cnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBmaWxlRG9lc05vdEV4aXN0RXJyb3Io
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOwotICAgIFdlYkNvcmU6
OlJlc291cmNlRXJyb3IgcGx1Z2luV2lsbEhhbmRsZUxvYWRFcnJvcihjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBj
YW5ub3RTaG93TUlNRVR5cGVFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikg
ZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBmaWxlRG9lc05vdEV4aXN0RXJyb3Io
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOworICAgIFdlYkNvcmU6OlJl
c291cmNlRXJyb3IgcGx1Z2luV2lsbEhhbmRsZUxvYWRFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlc3BvbnNlJikgZmluYWw7CiAgICAgCi0gICAgYm9vbCBzaG91bGRGYWxsQmFjayhjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRGYWxs
QmFjayhjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmluYWw7CiAgICAgCi0gICAgYm9v
bCBjYW5IYW5kbGVSZXF1ZXN0KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGNvbnN0
IG92ZXJyaWRlOwotICAgIGJvb2wgY2FuU2hvd01JTUVUeXBlKGNvbnN0IFN0cmluZyYgTUlNRVR5
cGUpIGNvbnN0IG92ZXJyaWRlOwotICAgIGJvb2wgY2FuU2hvd01JTUVUeXBlQXNIVE1MKGNvbnN0
IFN0cmluZyYgTUlNRVR5cGUpIGNvbnN0IG92ZXJyaWRlOwotICAgIGJvb2wgcmVwcmVzZW50YXRp
b25FeGlzdHNGb3JVUkxTY2hlbWUoY29uc3QgU3RyaW5nJiBVUkxTY2hlbWUpIGNvbnN0IG92ZXJy
aWRlOwotICAgIFN0cmluZyBnZW5lcmF0ZWRNSU1FVHlwZUZvclVSTFNjaGVtZShjb25zdCBTdHJp
bmcmIFVSTFNjaGVtZSkgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBjYW5IYW5kbGVSZXF1ZXN0
KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGNvbnN0IGZpbmFsOworICAgIGJvb2wg
Y2FuU2hvd01JTUVUeXBlKGNvbnN0IFN0cmluZyYgTUlNRVR5cGUpIGNvbnN0IGZpbmFsOworICAg
IGJvb2wgY2FuU2hvd01JTUVUeXBlQXNIVE1MKGNvbnN0IFN0cmluZyYgTUlNRVR5cGUpIGNvbnN0
IGZpbmFsOworICAgIGJvb2wgcmVwcmVzZW50YXRpb25FeGlzdHNGb3JVUkxTY2hlbWUoY29uc3Qg
U3RyaW5nJiBVUkxTY2hlbWUpIGNvbnN0IGZpbmFsOworICAgIFN0cmluZyBnZW5lcmF0ZWRNSU1F
VHlwZUZvclVSTFNjaGVtZShjb25zdCBTdHJpbmcmIFVSTFNjaGVtZSkgY29uc3QgZmluYWw7CiAg
ICAgCi0gICAgdm9pZCBmcmFtZUxvYWRDb21wbGV0ZWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIHNh
dmVWaWV3U3RhdGVUb0l0ZW0oV2ViQ29yZTo6SGlzdG9yeUl0ZW0mKSBvdmVycmlkZTsKLSAgICB2
b2lkIHJlc3RvcmVWaWV3U3RhdGUoKSBvdmVycmlkZTsKLSAgICB2b2lkIHByb3Zpc2lvbmFsTG9h
ZFN0YXJ0ZWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZEZpbmlzaExvYWQoKSBvdmVycmlkZTsK
LSAgICB2b2lkIHByZXBhcmVGb3JEYXRhU291cmNlUmVwbGFjZW1lbnQoKSBvdmVycmlkZTsKKyAg
ICB2b2lkIGZyYW1lTG9hZENvbXBsZXRlZCgpIGZpbmFsOworICAgIHZvaWQgc2F2ZVZpZXdTdGF0
ZVRvSXRlbShXZWJDb3JlOjpIaXN0b3J5SXRlbSYpIGZpbmFsOworICAgIHZvaWQgcmVzdG9yZVZp
ZXdTdGF0ZSgpIGZpbmFsOworICAgIHZvaWQgcHJvdmlzaW9uYWxMb2FkU3RhcnRlZCgpIGZpbmFs
OworICAgIHZvaWQgZGlkRmluaXNoTG9hZCgpIGZpbmFsOworICAgIHZvaWQgcHJlcGFyZUZvckRh
dGFTb3VyY2VSZXBsYWNlbWVudCgpIGZpbmFsOwogICAgIAotICAgIFJlZjxXZWJDb3JlOjpEb2N1
bWVudExvYWRlcj4gY3JlYXRlRG9jdW1lbnRMb2FkZXIoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VS
ZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6U3Vic3RpdHV0ZURhdGEmKSBvdmVycmlkZTsKLSAgICB2
b2lkIHVwZGF0ZUNhY2hlZERvY3VtZW50TG9hZGVyKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyJikg
b3ZlcnJpZGU7CisgICAgUmVmPFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyPiBjcmVhdGVEb2N1bWVu
dExvYWRlcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpT
dWJzdGl0dXRlRGF0YSYpIGZpbmFsOworICAgIHZvaWQgdXBkYXRlQ2FjaGVkRG9jdW1lbnRMb2Fk
ZXIoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXImKSBmaW5hbDsKIAotICAgIHZvaWQgc2V0VGl0bGUo
Y29uc3QgV2ViQ29yZTo6U3RyaW5nV2l0aERpcmVjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlVSTCYp
IG92ZXJyaWRlOworICAgIHZvaWQgc2V0VGl0bGUoY29uc3QgV2ViQ29yZTo6U3RyaW5nV2l0aERp
cmVjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlVSTCYpIGZpbmFsOwogICAgIAotICAgIFN0cmluZyB1
c2VyQWdlbnQoY29uc3QgV2ViQ29yZTo6VVJMJikgb3ZlcnJpZGU7CisgICAgU3RyaW5nIHVzZXJB
Z2VudChjb25zdCBXZWJDb3JlOjpVUkwmKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHNhdmVQbGF0
Zm9ybURhdGFUb0NhY2hlZEZyYW1lKFdlYkNvcmU6OkNhY2hlZEZyYW1lKikgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCB0cmFuc2l0aW9uVG9Db21taXR0ZWRGcm9tQ2FjaGVkRnJhbWUoV2ViQ29yZTo6Q2Fj
aGVkRnJhbWUqKSBvdmVycmlkZTsKKyAgICB2b2lkIHNhdmVQbGF0Zm9ybURhdGFUb0NhY2hlZEZy
YW1lKFdlYkNvcmU6OkNhY2hlZEZyYW1lKikgZmluYWw7CisgICAgdm9pZCB0cmFuc2l0aW9uVG9D
b21taXR0ZWRGcm9tQ2FjaGVkRnJhbWUoV2ViQ29yZTo6Q2FjaGVkRnJhbWUqKSBmaW5hbDsKICNp
ZiBQTEFURk9STShJT1MpCi0gICAgdm9pZCBkaWRSZXN0b3JlRnJhbWVIaWVyYXJjaHlGb3JDYWNo
ZWRGcmFtZSgpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkUmVzdG9yZUZyYW1lSGllcmFyY2h5Rm9y
Q2FjaGVkRnJhbWUoKSBmaW5hbDsKICNlbmRpZgotICAgIHZvaWQgdHJhbnNpdGlvblRvQ29tbWl0
dGVkRm9yTmV3UGFnZSgpIG92ZXJyaWRlOworICAgIHZvaWQgdHJhbnNpdGlvblRvQ29tbWl0dGVk
Rm9yTmV3UGFnZSgpIGZpbmFsOwogCi0gICAgdm9pZCBkaWRTYXZlVG9QYWdlQ2FjaGUoKSBvdmVy
cmlkZTsKLSAgICB2b2lkIGRpZFJlc3RvcmVGcm9tUGFnZUNhY2hlKCkgb3ZlcnJpZGU7CisgICAg
dm9pZCBkaWRTYXZlVG9QYWdlQ2FjaGUoKSBmaW5hbDsKKyAgICB2b2lkIGRpZFJlc3RvcmVGcm9t
UGFnZUNhY2hlKCkgZmluYWw7CiAKLSAgICB2b2lkIGRpc3BhdGNoRGlkQmVjb21lRnJhbWVzZXQo
Ym9vbCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERpZEJlY29tZUZyYW1lc2V0KGJvb2wp
IGZpbmFsOwogCi0gICAgYm9vbCBjYW5DYWNoZVBhZ2UoKSBjb25zdCBvdmVycmlkZTsKLSAgICB2
b2lkIGNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZChXZWJDb3JlOjpEb2N1bWVudExv
YWRlciosIFdlYkNvcmU6OlNlc3Npb25JRCwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOworICAgIGJvb2wg
Y2FuQ2FjaGVQYWdlKCkgY29uc3QgZmluYWw7CisgICAgdm9pZCBjb252ZXJ0TWFpblJlc291cmNl
TG9hZFRvRG93bmxvYWQoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpTZXNzaW9u
SUQsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlUmVzcG9uc2UmKSBmaW5hbDsKIAotICAgIFJlZlB0cjxXZWJDb3JlOjpGcmFtZT4gY3JlYXRl
RnJhbWUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgU3RyaW5nJiBuYW1lLCBXZWJDb3JlOjpI
VE1MRnJhbWVPd25lckVsZW1lbnQqLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgYm9vbCBhbGxvd3NTY3JvbGxpbmcsIGlu
dCBtYXJnaW5XaWR0aCwgaW50IG1hcmdpbkhlaWdodCkgb3ZlcnJpZGU7Ci0gICAgCi0gICAgUmVm
UHRyPFdlYkNvcmU6OldpZGdldD4gY3JlYXRlUGx1Z2luKGNvbnN0IFdlYkNvcmU6OkludFNpemUm
LCBXZWJDb3JlOjpIVE1MUGx1Z0luRWxlbWVudCosIGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNvbnN0
IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBTdHJpbmcmLCBi
b29sIGxvYWRNYW51YWxseSkgb3ZlcnJpZGU7Ci0gICAgdm9pZCByZWNyZWF0ZVBsdWdpbihXZWJD
b3JlOjpXaWRnZXQqKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlZGlyZWN0RGF0YVRvUGx1Z2luKFdl
YkNvcmU6OldpZGdldCogcGx1Z2luV2lkZ2V0KSBvdmVycmlkZTsKKyAgICBSZWZQdHI8V2ViQ29y
ZTo6RnJhbWU+IGNyZWF0ZUZyYW1lKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNvbnN0IFN0cmluZyYg
bmFtZSwgV2ViQ29yZTo6SFRNTEZyYW1lT3duZXJFbGVtZW50JiwgY29uc3QgU3RyaW5nJiByZWZl
cnJlciwgYm9vbCBhbGxvd3NTY3JvbGxpbmcsIGludCBtYXJnaW5XaWR0aCwgaW50IG1hcmdpbkhl
aWdodCkgZmluYWw7CisKKyAgICBSZWZQdHI8V2ViQ29yZTo6V2lkZ2V0PiBjcmVhdGVQbHVnaW4o
Y29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50JiwgY29u
c3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBWZWN0b3I8U3Ry
aW5nPiYsIGNvbnN0IFN0cmluZyYsIGJvb2wgbG9hZE1hbnVhbGx5KSBmaW5hbDsKKyAgICB2b2lk
IHJlY3JlYXRlUGx1Z2luKFdlYkNvcmU6OldpZGdldCopIGZpbmFsOworICAgIHZvaWQgcmVkaXJl
Y3REYXRhVG9QbHVnaW4oV2ViQ29yZTo6V2lkZ2V0KiBwbHVnaW5XaWRnZXQpIGZpbmFsOwogICAg
IAogI2lmIEVOQUJMRShXRUJHTCkKLSAgICBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgd2ViR0xQ
b2xpY3lGb3JVUkwoY29uc3QgU3RyaW5nJikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6
V2ViR0xMb2FkUG9saWN5IHJlc29sdmVXZWJHTFBvbGljeUZvclVSTChjb25zdCBTdHJpbmcmKSBj
b25zdCBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgd2ViR0xQb2xpY3lG
b3JVUkwoY29uc3QgU3RyaW5nJikgY29uc3QgZmluYWw7CisgICAgV2ViQ29yZTo6V2ViR0xMb2Fk
UG9saWN5IHJlc29sdmVXZWJHTFBvbGljeUZvclVSTChjb25zdCBTdHJpbmcmKSBjb25zdCBmaW5h
bDsKICNlbmRpZiAvLyBFTkFCTEUoV0VCR0wpCiAKLSAgICBQYXNzUmVmUHRyPFdlYkNvcmU6Oldp
ZGdldD4gY3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBXZWJDb3JlOjpJbnRTaXplJiwgV2Vi
Q29yZTo6SFRNTEFwcGxldEVsZW1lbnQqLCBjb25zdCBXZWJDb3JlOjpVUkwmIGJhc2VVUkwsIGNv
bnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFy
YW1WYWx1ZXMpIG92ZXJyaWRlOworICAgIFJlZlB0cjxXZWJDb3JlOjpXaWRnZXQ+IGNyZWF0ZUph
dmFBcHBsZXRXaWRnZXQoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxBcHBs
ZXRFbGVtZW50JiwgY29uc3QgV2ViQ29yZTo6VVJMJiBiYXNlVVJMLCBjb25zdCBWZWN0b3I8U3Ry
aW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKSBmaW5h
bDsKICAgICAKLSAgICBXZWJDb3JlOjpPYmplY3RDb250ZW50VHlwZSBvYmplY3RDb250ZW50VHlw
ZShjb25zdCBXZWJDb3JlOjpVUkwmLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlKSBvdmVycmlkZTsK
LSAgICBTdHJpbmcgb3ZlcnJpZGVNZWRpYVR5cGUoKSBjb25zdCBvdmVycmlkZTsKKyAgICBXZWJD
b3JlOjpPYmplY3RDb250ZW50VHlwZSBvYmplY3RDb250ZW50VHlwZShjb25zdCBXZWJDb3JlOjpV
UkwmLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlKSBmaW5hbDsKKyAgICBTdHJpbmcgb3ZlcnJpZGVN
ZWRpYVR5cGUoKSBjb25zdCBmaW5hbDsKIAotICAgIHZvaWQgZGlzcGF0Y2hEaWRDbGVhcldpbmRv
d09iamVjdEluV29ybGQoV2ViQ29yZTo6RE9NV3JhcHBlcldvcmxkJikgb3ZlcnJpZGU7CisgICAg
dm9pZCBkaXNwYXRjaERpZENsZWFyV2luZG93T2JqZWN0SW5Xb3JsZChXZWJDb3JlOjpET01XcmFw
cGVyV29ybGQmKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIGRpc3BhdGNoR2xvYmFsT2JqZWN0QXZh
aWxhYmxlKFdlYkNvcmU6OkRPTVdyYXBwZXJXb3JsZCYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlz
cGF0Y2hXaWxsRGlzY29ubmVjdERPTVdpbmRvd0V4dGVuc2lvbkZyb21HbG9iYWxPYmplY3QoV2Vi
Q29yZTo6RE9NV2luZG93RXh0ZW5zaW9uKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERp
ZFJlY29ubmVjdERPTVdpbmRvd0V4dGVuc2lvblRvR2xvYmFsT2JqZWN0KFdlYkNvcmU6OkRPTVdp
bmRvd0V4dGVuc2lvbiopIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hXaWxsRGVzdHJveUds
b2JhbE9iamVjdEZvckRPTVdpbmRvd0V4dGVuc2lvbihXZWJDb3JlOjpET01XaW5kb3dFeHRlbnNp
b24qKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoR2xvYmFsT2JqZWN0QXZhaWxhYmxlKFdl
YkNvcmU6OkRPTVdyYXBwZXJXb3JsZCYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsRGlz
Y29ubmVjdERPTVdpbmRvd0V4dGVuc2lvbkZyb21HbG9iYWxPYmplY3QoV2ViQ29yZTo6RE9NV2lu
ZG93RXh0ZW5zaW9uKikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY29ubmVjdERPTVdp
bmRvd0V4dGVuc2lvblRvR2xvYmFsT2JqZWN0KFdlYkNvcmU6OkRPTVdpbmRvd0V4dGVuc2lvbiop
IGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsRGVzdHJveUdsb2JhbE9iamVjdEZvckRPTVdp
bmRvd0V4dGVuc2lvbihXZWJDb3JlOjpET01XaW5kb3dFeHRlbnNpb24qKSBmaW5hbDsKIAotICAg
IHZvaWQgcmVnaXN0ZXJGb3JJY29uTm90aWZpY2F0aW9uKGJvb2wgbGlzdGVuID0gdHJ1ZSkgb3Zl
cnJpZGU7CisgICAgdm9pZCByZWdpc3RlckZvckljb25Ob3RpZmljYXRpb24oYm9vbCBsaXN0ZW4g
PSB0cnVlKSBmaW5hbDsKICAgICAKICNpZiBQTEFURk9STShDT0NPQSkKLSAgICBSZW1vdGVBWE9i
amVjdFJlZiBhY2Nlc3NpYmlsaXR5UmVtb3RlT2JqZWN0KCkgb3ZlcnJpZGU7CisgICAgUmVtb3Rl
QVhPYmplY3RSZWYgYWNjZXNzaWJpbGl0eVJlbW90ZU9iamVjdCgpIGZpbmFsOwogICAgIAotICAg
IE5TQ2FjaGVkVVJMUmVzcG9uc2UqIHdpbGxDYWNoZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBOU0NhY2hlZFVSTFJlc3BvbnNlKikg
Y29uc3Qgb3ZlcnJpZGU7CisgICAgTlNDYWNoZWRVUkxSZXNwb25zZSogd2lsbENhY2hlUmVzcG9u
c2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIE5T
Q2FjaGVkVVJMUmVzcG9uc2UqKSBjb25zdCBmaW5hbDsKIAotICAgIE5TRGljdGlvbmFyeSAqZGF0
YURldGVjdGlvbkNvbnRleHQoKSBvdmVycmlkZTsKKyAgICBOU0RpY3Rpb25hcnkgKmRhdGFEZXRl
Y3Rpb25Db250ZXh0KCkgZmluYWw7CiAjZW5kaWYKIAotICAgIGJvb2wgc2hvdWxkQWx3YXlzVXNl
UGx1Z2luRG9jdW1lbnQoY29uc3QgU3RyaW5nJiAvKm1pbWVUeXBlKi8pIGNvbnN0IG92ZXJyaWRl
OworICAgIGJvb2wgc2hvdWxkQWx3YXlzVXNlUGx1Z2luRG9jdW1lbnQoY29uc3QgU3RyaW5nJiAv
Km1pbWVUeXBlKi8pIGNvbnN0IGZpbmFsOwogCi0gICAgdm9pZCBkaWRDaGFuZ2VTY3JvbGxPZmZz
ZXQoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZENoYW5nZVNjcm9sbE9mZnNldCgpIGZpbmFsOwog
Ci0gICAgYm9vbCBhbGxvd1NjcmlwdChib29sIGVuYWJsZWRQZXJTZXR0aW5ncykgb3ZlcnJpZGU7
CisgICAgYm9vbCBhbGxvd1NjcmlwdChib29sIGVuYWJsZWRQZXJTZXR0aW5ncykgZmluYWw7CiAK
LSAgICBib29sIHNob3VsZEZvcmNlVW5pdmVyc2FsQWNjZXNzRnJvbUxvY2FsVVJMKGNvbnN0IFdl
YkNvcmU6OlVSTCYpIG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkRm9yY2VVbml2ZXJzYWxBY2Nl
c3NGcm9tTG9jYWxVUkwoY29uc3QgV2ViQ29yZTo6VVJMJikgZmluYWw7CiAKLSAgICBQYXNzUmVm
UHRyPFdlYkNvcmU6OkZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZU5ldHdvcmtpbmdDb250
ZXh0KCkgb3ZlcnJpZGU7CisgICAgUmVmPFdlYkNvcmU6OkZyYW1lTmV0d29ya2luZ0NvbnRleHQ+
IGNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkgZmluYWw7CiAKICNpZiBFTkFCTEUoUkVRVUVTVF9B
VVRPQ09NUExFVEUpCi0gICAgdm9pZCBkaWRSZXF1ZXN0QXV0b2NvbXBsZXRlKFBhc3NSZWZQdHI8
V2ViQ29yZTo6Rm9ybVN0YXRlPikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRSZXF1ZXN0QXV0b2Nv
bXBsZXRlKFJlZjxXZWJDb3JlOjpGb3JtU3RhdGU+JiYpIGZpbmFsOwogI2VuZGlmCiAKLSAgICB2
b2lkIGZvcmNlUGFnZVRyYW5zaXRpb25JZk5lZWRlZCgpIG92ZXJyaWRlOworICAgIHZvaWQgZm9y
Y2VQYWdlVHJhbnNpdGlvbklmTmVlZGVkKCkgZmluYWw7CiAKICNpZiBVU0UoUVVJQ0tfTE9PSykK
LSAgICB2b2lkIGRpZENyZWF0ZVF1aWNrTG9va0hhbmRsZShXZWJDb3JlOjpRdWlja0xvb2tIYW5k
bGUmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZENyZWF0ZVF1aWNrTG9va0hhbmRsZShXZWJDb3Jl
OjpRdWlja0xvb2tIYW5kbGUmKSBmaW5hbDsKICNlbmRpZgogCiAjaWYgRU5BQkxFKENPTlRFTlRf
RklMVEVSSU5HKQotICAgIHZvaWQgY29udGVudEZpbHRlckRpZEJsb2NrTG9hZChXZWJDb3JlOjpD
b250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXIpIG92ZXJyaWRlOworICAgIHZvaWQgY29udGVudEZp
bHRlckRpZEJsb2NrTG9hZChXZWJDb3JlOjpDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXIpIGZp
bmFsOwogI2VuZGlmCiAKLSAgICB2b2lkIHByZWZldGNoRE5TKGNvbnN0IFN0cmluZyYpIG92ZXJy
aWRlOworICAgIHZvaWQgcHJlZmV0Y2hETlMoY29uc3QgU3RyaW5nJikgZmluYWw7CiAKLSAgICB2
b2lkIGRpZFJlc3RvcmVTY3JvbGxQb3NpdGlvbigpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkUmVz
dG9yZVNjcm9sbFBvc2l0aW9uKCkgZmluYWw7CiAKLSAgICBib29sIHVzZUljb25Mb2FkaW5nQ2xp
ZW50KCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBnZXRMb2FkRGVjaXNpb25Gb3JJY29uKGNvbnN0IFdl
YkNvcmU6OkxpbmtJY29uJiwgdWludDY0X3QgY2FsbGJhY2tJRCkgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBmaW5pc2hlZExvYWRpbmdJY29uKHVpbnQ2NF90IGxvYWRJZGVudGlmaWVyLCBXZWJDb3JlOjpT
aGFyZWRCdWZmZXIqKSBvdmVycmlkZTsKKyAgICBib29sIHVzZUljb25Mb2FkaW5nQ2xpZW50KCkg
ZmluYWw7CisgICAgdm9pZCBnZXRMb2FkRGVjaXNpb25Gb3JJY29uKGNvbnN0IFdlYkNvcmU6Okxp
bmtJY29uJiwgdWludDY0X3QgY2FsbGJhY2tJRCkgZmluYWw7CisgICAgdm9pZCBmaW5pc2hlZExv
YWRpbmdJY29uKHVpbnQ2NF90IGxvYWRJZGVudGlmaWVyLCBXZWJDb3JlOjpTaGFyZWRCdWZmZXIq
KSBmaW5hbDsKIAogICAgIFdlYkZyYW1lKiBtX2ZyYW1lOwogICAgIFJlZlB0cjxQbHVnaW5WaWV3
PiBtX3BsdWdpblZpZXc7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2Vi
UGFnZS5jcHAKaW5kZXggZTk0Zjg3YTlkZGY3OWFjMzQwZGZlMDE1ZGQ2YjVlMzJhNGFlZGIyOC4u
YzUwMmM2MjdlMjkyYmJlNTM1MjJhOWE3NzQzMjIwN2IxODBlMTZhMSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcApAQCAtMzQyLDcgKzM0Miw3IEBA
IFdlYlBhZ2U6OldlYlBhZ2UodWludDY0X3QgcGFnZUlELCBjb25zdCBXZWJQYWdlQ3JlYXRpb25Q
YXJhbWV0ZXJzJiBwYXJhbWV0ZXJzKQogI2VuZGlmCiAKICAgICBQYWdlQ29uZmlndXJhdGlvbiBw
YWdlQ29uZmlndXJhdGlvbihtYWtlVW5pcXVlUmVmPFdlYkVkaXRvckNsaWVudD4odGhpcyksIFdl
YlNvY2tldFByb3ZpZGVyOjpjcmVhdGUoKSk7Ci0gICAgcGFnZUNvbmZpZ3VyYXRpb24uY2hyb21l
Q2xpZW50ID0gbmV3IFdlYkNocm9tZUNsaWVudCh0aGlzKTsKKyAgICBwYWdlQ29uZmlndXJhdGlv
bi5jaHJvbWVDbGllbnQgPSBuZXcgV2ViQ2hyb21lQ2xpZW50KCp0aGlzKTsKICNpZiBFTkFCTEUo
Q09OVEVYVF9NRU5VUykKICAgICBwYWdlQ29uZmlndXJhdGlvbi5jb250ZXh0TWVudUNsaWVudCA9
IG5ldyBXZWJDb250ZXh0TWVudUNsaWVudCh0aGlzKTsKICNlbmRpZgpAQCAtNjk4LDcgKzY5OCw4
IEBAIHZvaWQgV2ViUGFnZTo6aW5pdGlhbGl6ZUluamVjdGVkQnVuZGxlRGlhZ25vc3RpY0xvZ2dp
bmdDbGllbnQoV0tCdW5kbGVQYWdlRGlhZ25vCiB9CiAKICNpZiBFTkFCTEUoTkVUU0NBUEVfUExV
R0lOX0FQSSkKLVBhc3NSZWZQdHI8UGx1Z2luPiBXZWJQYWdlOjpjcmVhdGVQbHVnaW4oV2ViRnJh
bWUqIGZyYW1lLCBIVE1MUGx1Z0luRWxlbWVudCogcGx1Z2luRWxlbWVudCwgY29uc3QgUGx1Z2lu
OjpQYXJhbWV0ZXJzJiBwYXJhbWV0ZXJzLCBTdHJpbmcmIG5ld01JTUVUeXBlKQorCitSZWZQdHI8
UGx1Z2luPiBXZWJQYWdlOjpjcmVhdGVQbHVnaW4oV2ViRnJhbWUqIGZyYW1lLCBIVE1MUGx1Z0lu
RWxlbWVudCogcGx1Z2luRWxlbWVudCwgY29uc3QgUGx1Z2luOjpQYXJhbWV0ZXJzJiBwYXJhbWV0
ZXJzLCBTdHJpbmcmIG5ld01JTUVUeXBlKQogewogICAgIFN0cmluZyBmcmFtZVVSTFN0cmluZyA9
IGZyYW1lLT5jb3JlRnJhbWUoKS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKS0+cmVzcG9uc2VV
UkwoKS5zdHJpbmcoKTsKICAgICBTdHJpbmcgcGFnZVVSTFN0cmluZyA9IG1fcGFnZS0+bWFpbkZy
YW1lKCkubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKS0+cmVzcG9uc2VVUkwoKS5zdHJpbmcoKTsK
QEAgLTEzMjUsNyArMTMyNiw3IEBAIHZvaWQgV2ViUGFnZTo6bGF5b3V0SWZOZWVkZWQoKQogCiBX
ZWJQYWdlKiBXZWJQYWdlOjpmcm9tQ29yZVBhZ2UoUGFnZSogcGFnZSkKIHsKLSAgICByZXR1cm4g
c3RhdGljX2Nhc3Q8V2ViQ2hyb21lQ2xpZW50Jj4ocGFnZS0+Y2hyb21lKCkuY2xpZW50KCkpLnBh
Z2UoKTsKKyAgICByZXR1cm4gJnN0YXRpY19jYXN0PFdlYkNocm9tZUNsaWVudCY+KHBhZ2UtPmNo
cm9tZSgpLmNsaWVudCgpKS5wYWdlKCk7CiB9CiAKIHZvaWQgV2ViUGFnZTo6c2V0U2l6ZShjb25z
dCBXZWJDb3JlOjpJbnRTaXplJiB2aWV3U2l6ZSkKQEAgLTE3OTEsNyArMTc5Miw4IEBAIHZvaWQg
V2ViUGFnZTo6cG9zdEluamVjdGVkQnVuZGxlTWVzc2FnZShjb25zdCBTdHJpbmcmIG1lc3NhZ2VO
YW1lLCBjb25zdCBVc2VyRGF0CiB9CiAKICNpZiAhUExBVEZPUk0oSU9TKQotdm9pZCBXZWJQYWdl
OjpzZXRIZWFkZXJQYWdlQmFubmVyKFBhc3NSZWZQdHI8UGFnZUJhbm5lcj4gcGFnZUJhbm5lcikK
Kwordm9pZCBXZWJQYWdlOjpzZXRIZWFkZXJQYWdlQmFubmVyKFBhZ2VCYW5uZXIqIHBhZ2VCYW5u
ZXIpCiB7CiAgICAgaWYgKG1faGVhZGVyQmFubmVyKQogICAgICAgICBtX2hlYWRlckJhbm5lci0+
ZGV0YWNoRnJvbVBhZ2UoKTsKQEAgLTE4MDcsNyArMTgwOSw3IEBAIFBhZ2VCYW5uZXIqIFdlYlBh
Z2U6OmhlYWRlclBhZ2VCYW5uZXIoKQogICAgIHJldHVybiBtX2hlYWRlckJhbm5lci5nZXQoKTsK
IH0KIAotdm9pZCBXZWJQYWdlOjpzZXRGb290ZXJQYWdlQmFubmVyKFBhc3NSZWZQdHI8UGFnZUJh
bm5lcj4gcGFnZUJhbm5lcikKK3ZvaWQgV2ViUGFnZTo6c2V0Rm9vdGVyUGFnZUJhbm5lcihQYWdl
QmFubmVyKiBwYWdlQmFubmVyKQogewogICAgIGlmIChtX2Zvb3RlckJhbm5lcikKICAgICAgICAg
bV9mb290ZXJCYW5uZXItPmRldGFjaEZyb21QYWdlKCk7CkBAIC0zNTc1LDYgKzM1NzcsNyBAQCB2
b2lkIFdlYlBhZ2U6OnNldEFjdGl2ZVBvcHVwTWVudShXZWJQb3B1cE1lbnUqIG1lbnUpCiB9CiAK
ICNpZiBFTkFCTEUoSU5QVVRfVFlQRV9DT0xPUikKKwogdm9pZCBXZWJQYWdlOjpzZXRBY3RpdmVD
b2xvckNob29zZXIoV2ViQ29sb3JDaG9vc2VyKiBjb2xvckNob29zZXIpCiB7CiAgICAgbV9hY3Rp
dmVDb2xvckNob29zZXIgPSBjb2xvckNob29zZXI7CkBAIC0zNTg5LDExICszNTkyLDEyIEBAIHZv
aWQgV2ViUGFnZTo6ZGlkQ2hvb3NlQ29sb3IoY29uc3QgV2ViQ29yZTo6Q29sb3ImIGNvbG9yKQog
ewogICAgIG1fYWN0aXZlQ29sb3JDaG9vc2VyLT5kaWRDaG9vc2VDb2xvcihjb2xvcik7CiB9CisK
ICNlbmRpZgogCi12b2lkIFdlYlBhZ2U6OnNldEFjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVy
KFBhc3NSZWZQdHI8V2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXI+IG9wZW5QYW5lbFJlc3VsdExp
c3RlbmVyKQordm9pZCBXZWJQYWdlOjpzZXRBY3RpdmVPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcihS
ZWY8V2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXI+JiYgb3BlblBhbmVsUmVzdWx0TGlzdGVuZXIp
CiB7Ci0gICAgbV9hY3RpdmVPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lciA9IG9wZW5QYW5lbFJlc3Vs
dExpc3RlbmVyOworICAgIG1fYWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIgPSBXVEZNb3Zl
KG9wZW5QYW5lbFJlc3VsdExpc3RlbmVyKTsKIH0KIAogYm9vbCBXZWJQYWdlOjpmaW5kU3RyaW5n
RnJvbUluamVjdGVkQnVuZGxlKGNvbnN0IFN0cmluZyYgdGFyZ2V0LCBGaW5kT3B0aW9ucyBvcHRp
b25zKQpAQCAtNTQwOCwxMSArNTQxMiwxMSBAQCBib29sIFdlYlBhZ2U6OnBsdWdJbklzUHJpbWFy
eVNpemUoV2ViQ29yZTo6SFRNTFBsdWdJbkltYWdlRWxlbWVudCYgcGx1Z0luSW1hZ2VFbAogCiAj
ZW5kaWYgLy8gRU5BQkxFKFBSSU1BUllfU05BUFNIT1RURURfUExVR0lOX0hFVVJJU1RJQykKIAot
UGFzc1JlZlB0cjxSYW5nZT4gV2ViUGFnZTo6Y3VycmVudFNlbGVjdGlvbkFzUmFuZ2UoKQorUmVm
UHRyPFJhbmdlPiBXZWJQYWdlOjpjdXJyZW50U2VsZWN0aW9uQXNSYW5nZSgpCiB7Ci0gICAgRnJh
bWUqIGZyYW1lID0gZnJhbWVXaXRoU2VsZWN0aW9uKG1fcGFnZS5nZXQoKSk7CisgICAgYXV0byog
ZnJhbWUgPSBmcmFtZVdpdGhTZWxlY3Rpb24obV9wYWdlLmdldCgpKTsKICAgICBpZiAoIWZyYW1l
KQotICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKICAgICByZXR1
cm4gZnJhbWUtPnNlbGVjdGlvbigpLnRvTm9ybWFsaXplZFJhbmdlKCk7CiB9CkBAIC01NTEyLDcg
KzU1MTYsNyBAQCB2b2lkIFdlYlBhZ2U6OmdldFNhbXBsaW5nUHJvZmlsZXJPdXRwdXQodWludDY0
X3QgY2FsbGJhY2tJRCkKICNlbmRpZgogfQogCi1QYXNzUmVmUHRyPFdlYkNvcmU6OlJhbmdlPiBX
ZWJQYWdlOjpyYW5nZUZyb21FZGl0aW5nUmFuZ2UoV2ViQ29yZTo6RnJhbWUmIGZyYW1lLCBjb25z
dCBFZGl0aW5nUmFuZ2UmIHJhbmdlLCBFZGl0aW5nUmFuZ2VJc1JlbGF0aXZlVG8gZWRpdGluZ1Jh
bmdlSXNSZWxhdGl2ZVRvKQorUmVmUHRyPFdlYkNvcmU6OlJhbmdlPiBXZWJQYWdlOjpyYW5nZUZy
b21FZGl0aW5nUmFuZ2UoV2ViQ29yZTo6RnJhbWUmIGZyYW1lLCBjb25zdCBFZGl0aW5nUmFuZ2Um
IHJhbmdlLCBFZGl0aW5nUmFuZ2VJc1JlbGF0aXZlVG8gZWRpdGluZ1JhbmdlSXNSZWxhdGl2ZVRv
KQogewogICAgIEFTU0VSVChyYW5nZS5sb2NhdGlvbiAhPSBub3RGb3VuZCk7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmggYi9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCmluZGV4IDgxY2U3NTFmOGViZDFk
OGUwZTBiN2RjYTVmZjA3YmI3M2QzZDIxNjUuLmI2NWQ5M2JjN2FlY2VjNmQ3ODI5NGJmMWVjYmI2
NThhOGY1OThiMjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJQYWdlLmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBh
Z2UuaApAQCAtNzQsNyArNzQsNiBAQAogI2luY2x1ZGUgPG1lbW9yeT4KICNpbmNsdWRlIDx3dGYv
SGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9Nb25vdG9uaWNUaW1lLmg+Ci0jaW5jbHVkZSA8d3Rm
L1Bhc3NSZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1J1
bkxvb3AuaD4KICNpbmNsdWRlIDx3dGYvU2Vjb25kcy5oPgpAQCAtMzE0LDcgKzMxMyw3IEBAIHB1
YmxpYzoKICNlbmRpZgogCiAgICAgV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIqIGFjdGl2ZU9w
ZW5QYW5lbFJlc3VsdExpc3RlbmVyKCkgY29uc3QgeyByZXR1cm4gbV9hY3RpdmVPcGVuUGFuZWxS
ZXN1bHRMaXN0ZW5lci5nZXQoKTsgfQotICAgIHZvaWQgc2V0QWN0aXZlT3BlblBhbmVsUmVzdWx0
TGlzdGVuZXIoUGFzc1JlZlB0cjxXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcj4pOworICAgIHZv
aWQgc2V0QWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIoUmVmPFdlYk9wZW5QYW5lbFJlc3Vs
dExpc3RlbmVyPiYmKTsKIAogICAgIHZvaWQgZGlkUmVjZWl2ZU1lc3NhZ2UoSVBDOjpDb25uZWN0
aW9uJiwgSVBDOjpEZWNvZGVyJikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaWRSZWNlaXZlU3luY01l
c3NhZ2UoSVBDOjpDb25uZWN0aW9uJiwgSVBDOjpEZWNvZGVyJiwgc3RkOjp1bmlxdWVfcHRyPElQ
Qzo6RW5jb2Rlcj4mKSBvdmVycmlkZTsKQEAgLTM1NSwxNiArMzU0LDE2IEBAIHB1YmxpYzoKICAg
ICBXZWJDb3JlOjpNYWluRnJhbWUqIG1haW5GcmFtZSgpIGNvbnN0OyAvLyBNYXkgcmV0dXJuIDAu
CiAgICAgV2ViQ29yZTo6RnJhbWVWaWV3KiBtYWluRnJhbWVWaWV3KCkgY29uc3Q7IC8vIE1heSBy
ZXR1cm4gMC4KIAotICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6UmFuZ2U+IGN1cnJlbnRTZWxlY3Rp
b25Bc1JhbmdlKCk7CisgICAgUmVmUHRyPFdlYkNvcmU6OlJhbmdlPiBjdXJyZW50U2VsZWN0aW9u
QXNSYW5nZSgpOwogCiAjaWYgRU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCi0gICAgUGFzc1Jl
ZlB0cjxQbHVnaW4+IGNyZWF0ZVBsdWdpbihXZWJGcmFtZSosIFdlYkNvcmU6OkhUTUxQbHVnSW5F
bGVtZW50KiwgY29uc3QgUGx1Z2luOjpQYXJhbWV0ZXJzJiwgU3RyaW5nJiBuZXdNSU1FVHlwZSk7
CisgICAgUmVmUHRyPFBsdWdpbj4gY3JlYXRlUGx1Z2luKFdlYkZyYW1lKiwgV2ViQ29yZTo6SFRN
TFBsdWdJbkVsZW1lbnQqLCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmLCBTdHJpbmcmIG5ld01J
TUVUeXBlKTsKICNlbmRpZgogCiAjaWYgRU5BQkxFKFdFQkdMKQogICAgIFdlYkNvcmU6OldlYkdM
TG9hZFBvbGljeSB3ZWJHTFBvbGljeUZvclVSTChXZWJGcmFtZSosIGNvbnN0IFN0cmluZyYpOwog
ICAgIFdlYkNvcmU6OldlYkdMTG9hZFBvbGljeSByZXNvbHZlV2ViR0xQb2xpY3lGb3JVUkwoV2Vi
RnJhbWUqLCBjb25zdCBTdHJpbmcmKTsKLSNlbmRpZiAvLyBFTkFCTEUoV0VCR0wpCisjZW5kaWYK
ICAgICAKICAgICBlbnVtIGNsYXNzIEluY2x1ZGVQb3N0TGF5b3V0RGF0YUhpbnQgeyBObywgWWVz
IH07CiAgICAgRWRpdG9yU3RhdGUgZWRpdG9yU3RhdGUoSW5jbHVkZVBvc3RMYXlvdXREYXRhSGlu
dCA9IEluY2x1ZGVQb3N0TGF5b3V0RGF0YUhpbnQ6OlllcykgY29uc3Q7CkBAIC00NTUsMjEgKzQ1
NCwyMSBAQCBwdWJsaWM6CiAKICAgICBib29sIGhhc0NhY2hlZFdpbmRvd0ZyYW1lKCkgY29uc3Qg
eyByZXR1cm4gbV9oYXNDYWNoZWRXaW5kb3dGcmFtZTsgfQogCi0jaWYgIVBMQVRGT1JNKElPUykK
LSAgICB2b2lkIHNldFRvcE92ZXJoYW5nSW1hZ2UoUGFzc1JlZlB0cjxXZWJJbWFnZT4pOwotICAg
IHZvaWQgc2V0Qm90dG9tT3ZlcmhhbmdJbWFnZShQYXNzUmVmUHRyPFdlYkltYWdlPik7Ci0jZW5k
aWYgLy8gIVBMQVRGT1JNKElPUykKLQogICAgIHZvaWQgdXBkYXRlSGVhZGVyQW5kRm9vdGVyTGF5
ZXJzRm9yRGV2aWNlU2NhbGVDaGFuZ2UoZmxvYXQgc2NhbGVGYWN0b3IpOwotI2VuZGlmIC8vIFBM
QVRGT1JNKENPQ09BKQorI2VuZGlmCisKKyNpZiBQTEFURk9STShNQUMpCisgICAgdm9pZCBzZXRU
b3BPdmVyaGFuZ0ltYWdlKFdlYkltYWdlKik7CisgICAgdm9pZCBzZXRCb3R0b21PdmVyaGFuZ0lt
YWdlKFdlYkltYWdlKik7CisjZW5kaWYKIAogICAgIGJvb2wgd2luZG93SXNGb2N1c2VkKCkgY29u
c3Q7CiAgICAgYm9vbCB3aW5kb3dBbmRXZWJQYWdlQXJlRm9jdXNlZCgpIGNvbnN0OwogCiAjaWYg
IVBMQVRGT1JNKElPUykKLSAgICB2b2lkIHNldEhlYWRlclBhZ2VCYW5uZXIoUGFzc1JlZlB0cjxQ
YWdlQmFubmVyPik7CisgICAgdm9pZCBzZXRIZWFkZXJQYWdlQmFubmVyKFBhZ2VCYW5uZXIqKTsK
ICAgICBQYWdlQmFubmVyKiBoZWFkZXJQYWdlQmFubmVyKCk7Ci0gICAgdm9pZCBzZXRGb290ZXJQ
YWdlQmFubmVyKFBhc3NSZWZQdHI8UGFnZUJhbm5lcj4pOworICAgIHZvaWQgc2V0Rm9vdGVyUGFn
ZUJhbm5lcihQYWdlQmFubmVyKik7CiAgICAgUGFnZUJhbm5lciogZm9vdGVyUGFnZUJhbm5lcigp
OwogCiAgICAgdm9pZCBoaWRlUGFnZUJhbm5lcnMoKTsKQEAgLTQ3Nyw3ICs0NzYsNyBAQCBwdWJs
aWM6CiAgICAgCiAgICAgdm9pZCBzZXRIZWFkZXJCYW5uZXJIZWlnaHRGb3JUZXN0aW5nKGludCk7
CiAgICAgdm9pZCBzZXRGb290ZXJCYW5uZXJIZWlnaHRGb3JUZXN0aW5nKGludCk7Ci0jZW5kaWYg
Ly8gIVBMQVRGT1JNKElPUykKKyNlbmRpZgogCiAgICAgV2ViQ29yZTo6SW50UG9pbnQgc2NyZWVu
VG9Sb290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpOwogICAgIFdlYkNvcmU6OkludFJl
Y3Qgcm9vdFZpZXdUb1NjcmVlbihjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jik7CkBAIC02MjEsNyAr
NjIwLDcgQEAgcHVibGljOgogICAgIGJvb2wgaGFzTG9jYWxEYXRhRm9yVVJMKGNvbnN0IFdlYkNv
cmU6OlVSTCYpOwogICAgIFN0cmluZyBjYWNoZWRSZXNwb25zZU1JTUVUeXBlRm9yVVJMKGNvbnN0
IFdlYkNvcmU6OlVSTCYpOwogICAgIFN0cmluZyBjYWNoZWRTdWdnZXN0ZWRGaWxlbmFtZUZvclVS
TChjb25zdCBXZWJDb3JlOjpVUkwmKTsKLSAgICBQYXNzUmVmUHRyPFdlYkNvcmU6OlNoYXJlZEJ1
ZmZlcj4gY2FjaGVkUmVzcG9uc2VEYXRhRm9yVVJMKGNvbnN0IFdlYkNvcmU6OlVSTCYpOworICAg
IFJlZlB0cjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+IGNhY2hlZFJlc3BvbnNlRGF0YUZvclVSTChj
b25zdCBXZWJDb3JlOjpVUkwmKTsKIAogICAgIHN0YXRpYyBib29sIGNhbkhhbmRsZVJlcXVlc3Qo
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jik7CiAKQEAgLTEwMTYsOSArMTAxNSwxMSBA
QCBwcml2YXRlOgogICAgIGJvb2wgc2hvdWxkU3dpdGNoVG9CbG9ja01vZGVGb3JIYW5kbGUoY29u
c3QgV2ViQ29yZTo6SW50UG9pbnQmIGhhbmRsZVBvaW50LCBTZWxlY3Rpb25IYW5kbGVQb3NpdGlv
bik7CiAgICAgUmVmUHRyPFdlYkNvcmU6OlJhbmdlPiBzd2l0Y2hUb0Jsb2NrU2VsZWN0aW9uQXRQ
b2ludChjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYsIFNlbGVjdGlvbkhhbmRsZVBvc2l0aW9uKTsK
ICNlbmRpZgorCiAjaWYgIVBMQVRGT1JNKENPQ09BKQogICAgIHN0YXRpYyBjb25zdCBjaGFyKiBp
bnRlcnByZXRLZXlFdmVudChjb25zdCBXZWJDb3JlOjpLZXlib2FyZEV2ZW50Kik7CiAjZW5kaWYK
KwogICAgIGJvb2wgcGVyZm9ybURlZmF1bHRCZWhhdmlvckZvcktleUV2ZW50KGNvbnN0IFdlYktl
eWJvYXJkRXZlbnQmKTsKIAogI2lmIFBMQVRGT1JNKE1BQykKQEAgLTEyMDYsNyArMTIwNyw3IEBA
IHByaXZhdGU6CiAgICAgc3RhdGljIFBsdWdpblZpZXcqIGZvY3VzZWRQbHVnaW5WaWV3Rm9yRnJh
bWUoV2ViQ29yZTo6RnJhbWUmKTsKICAgICBzdGF0aWMgUGx1Z2luVmlldyogcGx1Z2luVmlld0Zv
ckZyYW1lKFdlYkNvcmU6OkZyYW1lKik7CiAKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxXZWJDb3Jl
OjpSYW5nZT4gcmFuZ2VGcm9tRWRpdGluZ1JhbmdlKFdlYkNvcmU6OkZyYW1lJiwgY29uc3QgRWRp
dGluZ1JhbmdlJiwgRWRpdGluZ1JhbmdlSXNSZWxhdGl2ZVRvID0gRWRpdGluZ1JhbmdlSXNSZWxh
dGl2ZVRvOjpFZGl0YWJsZVJvb3QpOworICAgIHN0YXRpYyBSZWZQdHI8V2ViQ29yZTo6UmFuZ2U+
IHJhbmdlRnJvbUVkaXRpbmdSYW5nZShXZWJDb3JlOjpGcmFtZSYsIGNvbnN0IEVkaXRpbmdSYW5n
ZSYsIEVkaXRpbmdSYW5nZUlzUmVsYXRpdmVUbyA9IEVkaXRpbmdSYW5nZUlzUmVsYXRpdmVUbzo6
RWRpdGFibGVSb290KTsKIAogICAgIHZvaWQgcmVwb3J0VXNlZEZlYXR1cmVzKCk7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvV2ViUGFnZU1hYy5t
bSBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvV2ViUGFnZU1hYy5tbQpp
bmRleCBmN2ViOGQ3MGM2ZDYyOGU2ZWJkMzc5YTYyODk2ZjQxMmE1Y2JiZTVhLi4xNmNjNzM0YmVj
YzVhNjZiZDc4OTgyZDE5OTg0MjU0YTEyN2FiY2Y2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1dlYlBhZ2VNYWMubW0KKysrIGIvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9XZWJQYWdlTWFjLm1tCkBAIC03MjQsNyArNzI0LDcg
QEAgU3RyaW5nIFdlYlBhZ2U6OmNhY2hlZFJlc3BvbnNlTUlNRVR5cGVGb3JVUkwoY29uc3QgVVJM
JiB1cmwpCiAgICAgcmV0dXJuIFtbY2FjaGVkUmVzcG9uc2VGb3JVUkwodGhpcywgdXJsKSByZXNw
b25zZV0gTUlNRVR5cGVdOwogfQogCi1QYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gV2ViUGFnZTo6
Y2FjaGVkUmVzcG9uc2VEYXRhRm9yVVJMKGNvbnN0IFVSTCYgdXJsKQorUmVmUHRyPFNoYXJlZEJ1
ZmZlcj4gV2ViUGFnZTo6Y2FjaGVkUmVzcG9uc2VEYXRhRm9yVVJMKGNvbnN0IFVSTCYgdXJsKQog
ewogICAgIHJldHVybiBTaGFyZWRCdWZmZXI6OndyYXBOU0RhdGEoW2NhY2hlZFJlc3BvbnNlRm9y
VVJMKHRoaXMsIHVybCkgZGF0YV0pOwogfQpAQCAtNzczLDM3ICs3NzMsMzMgQEAgdm9pZCBXZWJQ
YWdlOjphY2NlcHRzRmlyc3RNb3VzZShpbnQgZXZlbnROdW1iZXIsIGNvbnN0IFdlYktpdDo6V2Vi
TW91c2VFdmVudCYgZXYKICAgICAgICAgcmVzdWx0ID0gISFoaXRSZXN1bHQuc2Nyb2xsYmFyKCk7
CiB9CiAKLXZvaWQgV2ViUGFnZTo6c2V0VG9wT3ZlcmhhbmdJbWFnZShQYXNzUmVmUHRyPFdlYklt
YWdlPiBpbWFnZSkKK3ZvaWQgV2ViUGFnZTo6c2V0VG9wT3ZlcmhhbmdJbWFnZShXZWJJbWFnZSog
aW1hZ2UpCiB7Ci0gICAgRnJhbWVWaWV3KiBmcmFtZVZpZXcgPSBtX21haW5GcmFtZS0+Y29yZUZy
YW1lKCktPnZpZXcoKTsKKyAgICBhdXRvKiBmcmFtZVZpZXcgPSBtX21haW5GcmFtZS0+Y29yZUZy
YW1lKCktPnZpZXcoKTsKICAgICBpZiAoIWZyYW1lVmlldykKICAgICAgICAgcmV0dXJuOwogCi0g
ICAgR3JhcGhpY3NMYXllciogbGF5ZXIgPSBmcmFtZVZpZXctPnNldFdhbnRzTGF5ZXJGb3JUb3BP
dmVySGFuZ0FyZWEoaW1hZ2UuZ2V0KCkpOworICAgIGF1dG8qIGxheWVyID0gZnJhbWVWaWV3LT5z
ZXRXYW50c0xheWVyRm9yVG9wT3ZlckhhbmdBcmVhKGltYWdlKTsKICAgICBpZiAoIWxheWVyKQog
ICAgICAgICByZXR1cm47CiAKICAgICBsYXllci0+c2V0U2l6ZShpbWFnZS0+c2l6ZSgpKTsKICAg
ICBsYXllci0+c2V0UG9zaXRpb24oRmxvYXRQb2ludCgwLCAtaW1hZ2UtPnNpemUoKS5oZWlnaHQo
KSkpOwotCi0gICAgUmV0YWluUHRyPENHSW1hZ2VSZWY+IGNnSW1hZ2UgPSBpbWFnZS0+Yml0bWFw
KCkubWFrZUNHSW1hZ2VDb3B5KCk7Ci0gICAgbGF5ZXItPnBsYXRmb3JtTGF5ZXIoKS5jb250ZW50
cyA9IChpZCljZ0ltYWdlLmdldCgpOworICAgIGxheWVyLT5wbGF0Zm9ybUxheWVyKCkuY29udGVu
dHMgPSAoaWQpaW1hZ2UtPmJpdG1hcCgpLm1ha2VDR0ltYWdlQ29weSgpLmdldCgpOwogfQogCi12
b2lkIFdlYlBhZ2U6OnNldEJvdHRvbU92ZXJoYW5nSW1hZ2UoUGFzc1JlZlB0cjxXZWJJbWFnZT4g
aW1hZ2UpCit2b2lkIFdlYlBhZ2U6OnNldEJvdHRvbU92ZXJoYW5nSW1hZ2UoV2ViSW1hZ2UqIGlt
YWdlKQogewotICAgIEZyYW1lVmlldyogZnJhbWVWaWV3ID0gbV9tYWluRnJhbWUtPmNvcmVGcmFt
ZSgpLT52aWV3KCk7CisgICAgYXV0byogZnJhbWVWaWV3ID0gbV9tYWluRnJhbWUtPmNvcmVGcmFt
ZSgpLT52aWV3KCk7CiAgICAgaWYgKCFmcmFtZVZpZXcpCiAgICAgICAgIHJldHVybjsKIAotICAg
IEdyYXBoaWNzTGF5ZXIqIGxheWVyID0gZnJhbWVWaWV3LT5zZXRXYW50c0xheWVyRm9yQm90dG9t
T3ZlckhhbmdBcmVhKGltYWdlLmdldCgpKTsKKyAgICBhdXRvKiBsYXllciA9IGZyYW1lVmlldy0+
c2V0V2FudHNMYXllckZvckJvdHRvbU92ZXJIYW5nQXJlYShpbWFnZSk7CiAgICAgaWYgKCFsYXll
cikKICAgICAgICAgcmV0dXJuOwogCiAgICAgbGF5ZXItPnNldFNpemUoaW1hZ2UtPnNpemUoKSk7
Ci0gICAgCi0gICAgUmV0YWluUHRyPENHSW1hZ2VSZWY+IGNnSW1hZ2UgPSBpbWFnZS0+Yml0bWFw
KCkubWFrZUNHSW1hZ2VDb3B5KCk7Ci0gICAgbGF5ZXItPnBsYXRmb3JtTGF5ZXIoKS5jb250ZW50
cyA9IChpZCljZ0ltYWdlLmdldCgpOworICAgIGxheWVyLT5wbGF0Zm9ybUxheWVyKCkuY29udGVu
dHMgPSAoaWQpaW1hZ2UtPmJpdG1hcCgpLm1ha2VDR0ltYWdlQ29weSgpLmdldCgpOwogfQogCiB2
b2lkIFdlYlBhZ2U6OnVwZGF0ZUhlYWRlckFuZEZvb3RlckxheWVyc0ZvckRldmljZVNjYWxlQ2hh
bmdlKGZsb2F0IHNjYWxlRmFjdG9yKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJQcm9jZXNzLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vz
cy5jcHAKaW5kZXggYzEyODAxODMwMzU2MDIyYWJmMzBmODc4NzM3OTZjMzUzZGUzYmJmNC4uM2U1
Y2JhZGFiMjQ0NDI4NjA1MDEzNzAyZTkzNDUwMjNmMTYwYjI5MiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCkBAIC0xNTgsMjIgKzE1OCwxMiBAQCBXZWJQcm9jZXNz
OjpXZWJQcm9jZXNzKCkKICNpZiBQTEFURk9STShJT1MpCiAgICAgLCBtX3ZpZXdVcGRhdGVEaXNw
YXRjaGVyKFZpZXdVcGRhdGVEaXNwYXRjaGVyOjpjcmVhdGUoKSkKICNlbmRpZgotICAgICwgbV9p
bkRpZENsb3NlKGZhbHNlKQotICAgICwgbV9oYXNTZXRDYWNoZU1vZGVsKGZhbHNlKQotICAgICwg
bV9jYWNoZU1vZGVsKENhY2hlTW9kZWxEb2N1bWVudFZpZXdlcikKLSAgICAsIG1fZnVsbEtleWJv
YXJkQWNjZXNzRW5hYmxlZChmYWxzZSkKLSAgICAsIG1fdGV4dENoZWNrZXJTdGF0ZSgpCi0gICAg
LCBtX2ljb25EYXRhYmFzZVByb3h5KCpuZXcgV2ViSWNvbkRhdGFiYXNlUHJveHkodGhpcykpCisg
ICAgLCBtX2ljb25EYXRhYmFzZVByb3h5KCpuZXcgV2ViSWNvbkRhdGFiYXNlUHJveHkoKnRoaXMp
KQogICAgICwgbV93ZWJMb2FkZXJTdHJhdGVneSgqbmV3IFdlYkxvYWRlclN0cmF0ZWd5KQogICAg
ICwgbV9kbnNQcmVmZXRjaEh5c3RlcmVyaXMoW3RoaXNdKEh5c3RlcmVzaXNTdGF0ZSBzdGF0ZSkg
eyBpZiAoc3RhdGUgPT0gSHlzdGVyZXNpc1N0YXRlOjpTdG9wcGVkKSBtX2Ruc1ByZWZldGNoZWRI
b3N0cy5jbGVhcigpOyB9KQogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgICwg
bV9wbHVnaW5Qcm9jZXNzQ29ubmVjdGlvbk1hbmFnZXIoUGx1Z2luUHJvY2Vzc0Nvbm5lY3Rpb25N
YW5hZ2VyOjpjcmVhdGUoKSkKICNlbmRpZgotI2lmIEVOQUJMRShTRVJWSUNFX0NPTlRST0xTKQot
ICAgICwgbV9oYXNJbWFnZVNlcnZpY2VzKGZhbHNlKQotICAgICwgbV9oYXNTZWxlY3Rpb25TZXJ2
aWNlcyhmYWxzZSkKLSAgICAsIG1faGFzUmljaENvbnRlbnRTZXJ2aWNlcyhmYWxzZSkKLSNlbmRp
ZgogICAgICwgbV9ub25WaXNpYmxlUHJvY2Vzc0NsZWFudXBUaW1lcigqdGhpcywgJldlYlByb2Nl
c3M6Om5vblZpc2libGVQcm9jZXNzQ2xlYW51cFRpbWVyRmlyZWQpCiAgICAgLCBtX3N0YXRpc3Rp
Y3NDaGFuZ2VkVGltZXIoKnRoaXMsICZXZWJQcm9jZXNzOjpzdGF0aXN0aWNzQ2hhbmdlZFRpbWVy
RmlyZWQpCiAjaWYgUExBVEZPUk0oSU9TKQpAQCAtMTk0LDkgKzE4NCwxMSBAQCBXZWJQcm9jZXNz
OjpXZWJQcm9jZXNzKCkKICNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykgfHwgRU5BQkxFKExFR0FD
WV9OT1RJRklDQVRJT05TKQogICAgIGFkZFN1cHBsZW1lbnQ8V2ViTm90aWZpY2F0aW9uTWFuYWdl
cj4oKTsKICNlbmRpZgorCiAjaWYgRU5BQkxFKExFR0FDWV9FTkNSWVBURURfTUVESUEpCiAgICAg
YWRkU3VwcGxlbWVudDxXZWJNZWRpYUtleVN0b3JhZ2VNYW5hZ2VyPigpOwogI2VuZGlmCisKICAg
ICBtX3BsdWdJbkF1dG9TdGFydE9yaWdpbkhhc2hlcy5hZGQoU2Vzc2lvbklEOjpkZWZhdWx0U2Vz
c2lvbklEKCksIEhhc2hNYXA8dW5zaWduZWQsIGRvdWJsZT4oKSk7CiAKICNpZiBFTkFCTEUoSU5E
RVhFRF9EQVRBQkFTRSkKQEAgLTIwNyw3ICsxOTksNiBAQCBXZWJQcm9jZXNzOjpXZWJQcm9jZXNz
KCkKICAgICBtX3Jlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yYWdlLT5zZXROb3RpZmljYXRpb25D
YWxsYmFjayhbdGhpc10gewogICAgICAgICBpZiAobV9zdGF0aXN0aWNzQ2hhbmdlZFRpbWVyLmlz
QWN0aXZlKCkpCiAgICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIAogICAgICAgICBtX3N0YXRp
c3RpY3NDaGFuZ2VkVGltZXIuc3RhcnRPbmVTaG90KHN0ZDo6Y2hyb25vOjpzZWNvbmRzKDUpKTsK
ICAgICB9KTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJv
Y2Vzcy5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmgKaW5kZXggMjI4
ZjA0NjExZGIxODBiYmZkZTdmNGQ5YjVmMjEzZmRiNjNjYzllMi4uMzU0NDY0YTgxZTQwYjBkZTRl
ZmNhY2FkNWZiODY0YWE5MzcwMzEzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJQcm9jZXNzLmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9j
ZXNzLmgKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KICAqLwogCi0jaWZuZGVmIFdlYlByb2Nlc3NfaAotI2RlZmluZSBXZWJQcm9jZXNzX2gKKyNw
cmFnbWEgb25jZQogCiAjaW5jbHVkZSAiQ2FjaGVNb2RlbC5oIgogI2luY2x1ZGUgIkNoaWxkUHJv
Y2Vzcy5oIgpAQCAtMzQ2LDIwICszNDUsMjAgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8Vmlld1Vw
ZGF0ZURpc3BhdGNoZXI+IG1fdmlld1VwZGF0ZURpc3BhdGNoZXI7CiAjZW5kaWYKIAotICAgIGJv
b2wgbV9pbkRpZENsb3NlOworICAgIGJvb2wgbV9pbkRpZENsb3NlIHsgZmFsc2UgfTsKIAogICAg
IEhhc2hNYXA8V2ViQ29yZTo6U2Vzc2lvbklELCBIYXNoTWFwPHVuc2lnbmVkLCBkb3VibGU+PiBt
X3BsdWdJbkF1dG9TdGFydE9yaWdpbkhhc2hlczsKICAgICBIYXNoU2V0PFN0cmluZz4gbV9wbHVn
SW5BdXRvU3RhcnRPcmlnaW5zOwogCi0gICAgYm9vbCBtX2hhc1NldENhY2hlTW9kZWw7Ci0gICAg
Q2FjaGVNb2RlbCBtX2NhY2hlTW9kZWw7CisgICAgYm9vbCBtX2hhc1NldENhY2hlTW9kZWwgeyBm
YWxzZSB9OworICAgIENhY2hlTW9kZWwgbV9jYWNoZU1vZGVsIHsgQ2FjaGVNb2RlbERvY3VtZW50
Vmlld2VyIH07CiAKICNpZiBQTEFURk9STShDT0NPQSkKICAgICBXZWJDb3JlOjpNYWNoU2VuZFJp
Z2h0IG1fY29tcG9zaXRpbmdSZW5kZXJTZXJ2ZXJQb3J0OwogICAgIHBpZF90IG1fcHJlc2VudGVy
QXBwbGljYXRpb25QaWQ7CiAjZW5kaWYKIAotICAgIGJvb2wgbV9mdWxsS2V5Ym9hcmRBY2Nlc3NF
bmFibGVkOworICAgIGJvb2wgbV9mdWxsS2V5Ym9hcmRBY2Nlc3NFbmFibGVkIHsgZmFsc2UgfTsK
IAogICAgIEhhc2hNYXA8dWludDY0X3QsIFdlYkZyYW1lKj4gbV9mcmFtZU1hcDsKIApAQCAtMzg4
LDkgKzM4Nyw5IEBAIHByaXZhdGU6CiAjZW5kaWYKIAogI2lmIEVOQUJMRShTRVJWSUNFX0NPTlRS
T0xTKQotICAgIGJvb2wgbV9oYXNJbWFnZVNlcnZpY2VzOwotICAgIGJvb2wgbV9oYXNTZWxlY3Rp
b25TZXJ2aWNlczsKLSAgICBib29sIG1faGFzUmljaENvbnRlbnRTZXJ2aWNlczsKKyAgICBib29s
IG1faGFzSW1hZ2VTZXJ2aWNlcyB7IGZhbHNlIH07CisgICAgYm9vbCBtX2hhc1NlbGVjdGlvblNl
cnZpY2VzIHsgZmFsc2UgfTsKKyAgICBib29sIG1faGFzUmljaENvbnRlbnRTZXJ2aWNlcyB7IGZh
bHNlIH07CiAjZW5kaWYKIAogICAgIEhhc2hTZXQ8dWludDY0X3Q+IG1fcGFnZXNJbldpbmRvd3M7
CkBAIC00MTYsNSArNDE1LDMgQEAgcHJpdmF0ZToKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktp
dAotCi0jZW5kaWYgLy8gV2ViUHJvY2Vzc19oCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>298869</attachid>
            <date>2017-01-14 18:12:34 -0800</date>
            <delta_ts>2017-01-14 21:48:00 -0800</delta_ts>
            <desc>Archive of layout-test-results from ews101 for mac-elcapitan</desc>
            <filename>layout-test-results.zip</filename>
            <type>application/zip</type>
            <size>1339751</size>
            <attacher name="Build Bot">buildbot</attacher>
            
              <data encoding="base64">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
Tr1mdqnWWlQXbBnWImoAsfuo/TyprxTI/tgLg0hce+B6UWOFaaMkY2dFPTyGThEVThXhtJASK9Qg
dIsyxh9EV0VW5WSLobGh6CFDVWagZRSLGsrIJ37V6plJa3AaD/cV3HgMhLTL6h5h+QRgXt8SUuog
ygaORCqI8fEGpmQP5ikhjBpJwiC+izq2Bt9/43TsHf7FlFBpUIZx8MSDxmA5KEUphrZI2BAHvOcl
9fURw4k6f0TPtAg9nAGcJe3huoCA0C0Hpchs/EWP43X8sOl6w5Hf9l175NVvG4Hvt8Z317U/zoVd
+Y5d+C0nXliBzTpuvO/EvlBakee41dgOHHbt3O2FU4QTxw4Cb5uuG/NSqkSnzRYb6yZiiS1mIUvu
dtau2DW829dgNK6CkX0NWw7//u4WjKKvd41nXp87xSxjv2pF815/t/CXlyS0MbOGE9mtovDe7RYe
iHYu/nbsAe97+bIYWZG9KMNX52D5t91c7qX3zng6d+6tzkvPmvLIN6vG9TxXFVEN3iYrprSLoT17
v+q27Ku6FueT92nUuR/i7W3pTWXzokT312DWf+/L4roKT3E/Zo15ft7H5THNprrmh/pHvMujnZpq
SifM11VZ3W+TfaeyX3fL1ch4F5fNctqN0u4uHH10L+7go/Fqdjr3IT/F19V5uZgcktEFFfsYvpiz
IJmkkXptnbtOMr4or+bLUr3fNa16N14nV/8t5Eel2+irhq5fPs1B7+6+TN9KfbzdvZnOIfAn63en
PzcGE1XS1lHSkl73Qt6WZSz2XWm7ii6Ztp+pjXN3JUx775+Ta6n7Y1awvDPsG4sk9sbjtypStNvW
cjYffmC6duXZNn9zNnfX2bRwLLBzje4w8JyR3bKj7iu2tGNL47RVRFPHGbXUeea6zjoTg3Oxby9j
/cLPYX/VWX44XTLuxoHXiFr2S/G7w3tv+emYVXfkicBZUQDPrqo4lSflYOYcG/PZcCOU3mkwG64T
ZXgviqDd27LKreatyZC9OzaGKHwvcII6u14UBYG967jusWNH43bDqfDTk7m3VdyLyG2xuJjPZXe1
K27njtqT+lNNDLYTLX5/9V/11bohv+XM31VVcRlPWbe/it3QW7x5I31vBiextvjnwH/tzRZRcfY/
ffV45tpW37aqgu+X+v5Vaxwiq83VbD+5aL7Z+dwUYiIcn3enyj6M490qVa6Lt1lyH2jbrVZ238qB
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
BAoAAAAAADuILkoAAAAAAAAAAAAAAAAOABwAY3J5cHRvL3N1YnRsZS9VVAkAAwLKelhbz3pYdXgL
AAEE9QEAAAQUAAAAUEsDBAoAAgAAADuILkol4NMILAAAACwAAAA+ABwAY3J5cHRvL3N1YnRsZS9y
c2EtZ2VuZXJhdGUta2V5LW1hbGZvcm1lZC1wYXJhbWV0ZXJzLXN0ZGVyci50eHRVVAkAAwHKelgB
ynpYdXgLAAEE9QEAAAQUAAAAQ291bGQgbm90IGdlbmVyYXRlIGEga2V5IHBhaXIsIHN0YXR1cyAt
NDMwNApQSwMEFAACAAgAO4guSjA7uLFLAAAAaAAAADwAHABjcnlwdG8vc3VidGxlL3JzYS1pbXBv
cnQta2V5LW1hbGZvcm1lZC1wYXJhbWV0ZXJzLXN0ZGVyci50eHRVVAkAAwLKelgCynpYdXgLAAEE
9QEAAAQUAAAAbcuxDYAwDETRniluHxpWsGRLsYA4ci5EbA8NHfV/f0u/hIbd7o7pLDEIUXV6VDmg
QoGkoQbRR2uRNF3Wj+OMN7JIBWegpZ/Wf4YHUEsDBAoAAAAAADmILkoAAAAAAAAAAAAAAAAPABwA
Y3J5cHRvL3dvcmtlcnMvVVQJAAP+yXpYW896WHV4CwABBPUBAAAEFAAAAFBLAwQKAAAAAAA5iC5K
AAAAAAAAAAAAAAAAFgAcAGNyeXB0by93b3JrZXJzL3N1YnRsZS9VVAkAA/7Jelhbz3pYdXgLAAEE
9QEAAAQUAAAAUEsDBAoAAgAAADmILkol4NMILAAAACwAAAAxABwAY3J5cHRvL3dvcmtlcnMvc3Vi
dGxlL3JzYS1nZW5lcmF0ZS1rZXktc3RkZXJyLnR4dFVUCQAD/sl6WP7Jelh1eAsAAQT1AQAABBQA
AABDb3VsZCBub3QgZ2VuZXJhdGUgYSBrZXkgcGFpciwgc3RhdHVzIC00MzA0ClBLAwQKAAAAAAA8
iC5KAAAAAAAAAAAAAAAADQAcAGRpc3BsYXlsaXN0cy9VVAkAAwTKelhbz3pYdXgLAAEE9QEAAAQU
AAAAUEsDBBQAAgAIADyILkqjV/3oUAAAAI4AAAAyABwAZGlzcGxheWxpc3RzL2V4dGVudC1pbmNs
dWRlcy10cmFuc2Zvcm1zLXN0ZGVyci50eHRVVAkAAwTKelgEynpYdXgLAAEE9QEAAAQUAAAAcy9K
LMjITC52zs8rSa0osbJKTy1xDvHV0FTILFbIyy9RqEwtUUjOzy1ILMlMyklVKM8syVAoSk3OL0rJ
zEsHyoC1FetxuaMbVIxmEDGGAABQSwMEFAACAAgAPIguSvKWldVHAAAASQAAACkAHABkaXNwbGF5
bGlzdHMvbGF5ZXItZGlzcGF5LWxpc3Qtc3RkZXJyLnR4dFVUCQADBMp6WATKelh1eAsAAQT1AQAA
BBQAAABzL0osyMhMLnbOzytJrSixskpPLXEO8dXQVMgsVsjLL1GoTC1RSM7PLUgsyUzKSVUozyzJ
UChKTc4vSsnMSwfKgLUV63EBAFBLAwQKAAAAAAByiC5KAAAAAAAAAAAAAAAACAAcAGVkaXRpbmcv
VVQJAANoynpYW896WHV4CwABBPUBAAAEFAAAAFBLAwQKAAAAAAByiC5KAAAAAAAAAAAAAAAAEQAc
AGVkaXRpbmcvZGVsZXRpbmcvVVQJAANoynpYW896WHV4CwABBPUBAAAEFAAAAFBLAwQUAAIACABy
iC5KqNlnmLsBAAAGEwAAKAAcAGVkaXRpbmcvZGVsZXRpbmcvZGVsZXRlLWVtb2ppLXN0ZGVyci50
eHRVVAkAA2jKelhoynpYdXgLAAEE9QEAAAQUAAAA7ZfLatwwGIXX9VMIL4eZ8OtiSWPagXZC6CqL
jLMastDI8tQQX7BlmDYYQl6g675Jnycv0FeoPElvMFAIhngh7/RLOjrSx0EWASwWgBeYISxiIDHQ
MyYJOu+K+sqUqWmSxpgtk0yQWAomMb5B66oxiTnYGM1mM3RdFqquTYrCx2/3P75/DdHbdXJRla4b
DiLLgNEo4krC6q5UhUHv0CbZVOXe5otkvbgy++5WNXPU5l+GPszP4PjNUaFskx9cDQ6ulZpWN3lt
q8ZVnlc4/137sxYHmRm3lrJu9q6zpj2Ov/ig2lx/VO2nv0eqHaDtsZ0Ne+OMwc3qzn6uBytFZ9Xu
1qA013aOdNWVdjA4D0zppAfdVfCGoHhQ37hKuUfPUpHSWGSnpLVz7aYPnsLLzbCHS3cm7395Dfsn
s//KMZFGTP5P7sSphn3QB6u+D8gJzBHgl2J+OIlZQWQw85gnhpmwcdPMNads6TFPDDMj46aZcrLT
wmOeGGYejZzmjNAUPOaJYZZi5LsZEwmpxzwtzBzoyGmmkfB38+Qw4+XoaU5Be8wTw0yX46ZZEWqM
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
e65uQu1h+5tjYpn2/AHYruXsHROe0+aRs5QUlKQxItckUe3Cp6tcC9ZrwuUhKcZyokB6g1TrTy33
nKtsqorFr03HtiapZTVNjRXHnEEaKsRq9QSeua161mrWvgRZg9hydMtWKXKnrFHYXr6BrOteD3r+
ez/qKbiPZf0k4PyBQJOW1inp0t0ey3+Cyz0brLp+jpjXj14pZarH8zT1eF6r8mwn9iIdoJ/rqa/3
FGYUowRX44lEg4NfTvsnv79FYlLVB6goZVfFT/8DUEsDBAoAAAAAAFyILkoAAAAAAAAAAAAAAAAF
ABwAZmFzdC9VVAkAAz/Kelhbz3pYdXgLAAEE9QEAAAQUAAAAUEsDBAoAAAAAAEyILkoAAAAAAAAA
AAAAAAAMABwAZmFzdC9jYW52YXMvVVQJAAMfynpYW896WHV4CwABBPUBAAAEFAAAAFBLAwQUAAIA
CABMiC5K2IpiNnwAAAACAQAAJgAcAGZhc3QvY2FudmFzL2NhbnZhcy1saW5lRGFzaC1zdGRlcnIu
dHh0VVQJAAMfynpYH8p6WHV4CwABBPUBAAAEFAAAAMXOMQrCQBRF0d5VvA0oJg5EBrFJghCs1E4s
vswDA5M/8jMRdfVmF5b3VLcTReFQVH5d+nIDNNPwPFED7WLk1W1d5W7YtWbJ9h71oU6a+c5n5mOv
bGR8ePT6ktgHhLkgZvLxkIxIGTOSEowcqBnDNMOd0KTLLy2tFt2/B35QSwMECgAAAAAAVIguSgAA
AAAAAAAAAAAAAAwAHABmYXN0L2ltYWdlcy9VVAkAAzDKelhbz3pYdXgLAAEE9QEAAAQUAAAAUEsD
BBQAAgAIAFSILkohj704MgAAADMAAAAsABwAZmFzdC9pbWFnZXMvcGRmLWFzLWltYWdlLWNyb3At
Ym94LXN0ZGVyci50eHRVVAkAAzDKelgwynpYdXgLAAEE9QEAAAQUAAAAc8tJLEl1SU3OT0m1UkgB
0Zl56QqpRUX5RVYKmXnJ+UVFqcklCimJJYkKyRmpydl6XABQSwMECgAAAAAAXIguSgAAAAAAAAAA
AAAAAAoAHABmYXN0L3RleHQvVVQJAAM/ynpYW896WHV4CwABBPUBAAAEFAAAAFBLAwQUAAIACABc
iC5KcQ5K9XwBAACICQAAIwAcAGZhc3QvdGV4dC9lbW9qaS1nZW5kZXItMi1zdGRlcnIudHh0VVQJ
AAM/ynpYP8p6WHV4CwABBPUBAAAEFAAAAO2UP2rDMBTG5/oUwmOwg+w8R4ppDW1C6JQhcaeSQbbl
1BD/wZbBbTD0Bp17k56nF+gVKqVpaCHQxdAMliY9Sd/7nn7o2dgiJrZMC5BFXGy7DgwJIWhWp8WS
ZxEv/ZLze6AA1KUERkDXaJqX3OeNcNFgMEB3WcqKgkdIf399/nh70dHl1J/nmdzGDYkjmNBxSAKK
vV3GUo6u0Mpf5dlGJKY/NZd8U29ZaaAqeVJ7FsZDvB8GSpkok0YGcSNXEa/CMilEXsrIIcXsGDsm
Y4AnoJIxIW8HteDV/vz8hlVJeMuqhx8nKQ0wulfrOCZArTEAXns78VgoL2ktWLDlKEpCYaAwrzOh
HBoaz6S00vW0Cxu5Sn0lI9kGHaQcFlokPiUdStfyuvKkL1aqhoV8lOtvr3r7Zfa3HJDIkTX9IXfi
WfVWazWvbTX7FOeJ3SlnGlo2pbjnfGacKYZu/zMbkwBGPedz42yPOu7bRM6+b58dZ6Dd9u2AYx44
Ped/5PwJUEsDBAoAAAAAAFuILkoAAAAAAAAAAAAAAAAJABwAZmFzdC94c2wvVVQJAAM9ynpYW896
WHV4CwABBPUBAAAEFAAAAFBLAwQUAAIACABaiC5KTvsg+IgAAADnAAAAJQAcAGZhc3QveHNsL3Ry
YW5zZm9ybS14aHItZG9jLXN0ZGVyci50eHRVVAkAAzzKelg8ynpYdXgLAAEE9QEAAAQUAAAApY6x
DsIwDET3foV/oHhgywwTbCA6u60rIjlx5ThS+XsC5Q9YTiffye8mTWsU8qgZ2EwtwBKFvxIQ8aFS
Exc8kROehxsOPF6i45VeWv3OxQsuVBy3ImhctNrU6tvT+lmnQ7uCxMxwBBZOnB1iWtW8a0nYLQSo
mcYGdQVRmn/w/9D9/pznz4buDVBLAwQUAAIACABaiC5K/aIuZI8AAADuAAAAJwAcAGZhc3QveHNs
L3hzbHQtYmFkLWltcG9ydC11cmktc3RkZXJyLnR4dFVUCQADPMp6WDzKelh1eAsAAQT1AQAABBQA
AACdjjEOwjAMRfeewhcoHtgywwQbiM5u64pITlw5jlRuT6CcgOXL/3/bepOmNQp51AxsphZgicJf
CYj4UKmJC57ICc/DDQceL9HxSi+tfufiBRcqjlsRNC5abWrrzXk/0tzHtKp5Xy0eWgYSM8MRWDhx
dtjbrjVhHyFAzTQ2AFcQpfkH8idG1lKn5+dFuxPp3lBLAwQUAAIACABaiC5Kz49mDlAAAACgAAAA
JAAcAGZhc3QveHNsL3hzbHQtY29udGVudFR5cGUtc3RkZXJyLnR4dFVUCQADPMp6WDzKelh1eAsA
AQT1AQAABBQAAACtzLENwCAMBdGeKf4GUdpsg8AISzZGlokyfsgOaa67V0wnSw62AXI3v9BYCBAe
hBMkpDQCtmKuSDzuLFyxuwjNHErRre7LLJW/sKeHyvGRL1BLAwQUAAIACABbiC5KgUp3rUsAAACs
AAAANAAcAGZhc3QveHNsL3hzbHQtdHJhbnNmb3JtLXRvLWZyYWdtZW50LWNyYXNoLXN0ZGVyci50
eHRVVAkAAz3Kelg9ynpYdXgLAAEE9QEAAAQUAAAAtcyxDYAwDETRPlPcCrRs48AFWXJsZCzmR6Jg
A+qv97eYp5qUhoOZkSuGGgFTJxbQOOmFW1KlG1ty51DXV8TAYdHFvo7iVW375foAUEsDBBQAAgAI
ABWLLkrmsRoR9QIAACwMAAARABwAZnVsbF9yZXN1bHRzLmpzb25VVAkAA1nPelhbz3pYdXgLAAEE
9QEAAAQUAAAAtVZNTxsxEP0ryKdWiptAAlXTEypRSwsFkVB6ixzvbHYUr+36g7BC/PeOvZCKHsHs
aWXZb2aen9/M8cnJ8mo2vz5bzN/dswA+eDa9Z9ha4wJU6X+lUG/Sj9DYioBG5y0r4YE70BU47kOn
gK9M1XHphG8+NKFVaZODhMOm7Gr2lcLMTy9+sgGDOwsyo7PL4/mcVoQMUdAJtjg9n11cL9gDfQPW
hGATzC4v7zNstGsnKuDG4Ro1j16s4eUxv1wdz7+xFM+DjA5Dl6u1VgrZAPdbDLJBvebW4a0IVKgz
W08Lrw45YNIZ75/qeAr5VrhcKGW2UJWg6gkzwbRRBeQ1oa+E3BTIvjYOcK051k60wFuBugDqZDQh
wXoTnQROl9pwT3Rk9N36B9vYlwl39nuRgkBrQ0eYGmsSbYGsKyNjCzrwLSkTeALkoCAvHRTARx3A
uWhpG4+2In0XADWaTINIbihlhUV4MHWdMYWU4H0JkZXTK1Z0G1gjWWEoc+vPRMmbV3nqDlTEUAJG
dg6VQsnJKwvAKSOF4tKQDnUJ6hrSm3FdqZt49NA/0QSRs0Qd6alUZquVERXP5mcV7N68f/ugJWwF
6xpcMpHUZHetYie5Qp7bv1Z+i4KgK3R04MUW+z87FdlgKNMs6X2RWYHmWtzimoYc6vZiK0hEabGQ
S/yj3FPjbKGITfSa69tZ33tqVEWhk/xIDIkSDB5U/frxIQ0QLclB5OHOEb27H46Jb131M+UrBsnc
j3Mkv0Fr06bx/tHRgOnYLh2sSem+n2XHI5IUXbRbZiFAmjSfN0Y2DS5Cf7RFn2Y/NqVTSnQmhmUe
T5ekboo7/GUU9Ws/PBFBDGc38+ENrH5gGJ7lvYs8yQ7YLbgUnU0nPaoV3qfAk/HhmHK0eAfqERe0
WKmUAzUsT0mkFk2BRofTg8nl+Z7Re9+FjsJ1e/uTwd7BaP8j4VPHWFoHIXQETePrUwU13iW0xMWn
Ry5qJTZdLidSCsue037OXyYt9Ucf3n/+C1BLAwQKAAAAAABciC5KAAAAAAAAAAAAAAAABQAcAGh0
dHAvVVQJAANAynpYW896WHV4CwABBPUBAAAEFAAAAFBLAwQKAAAAAACPiC5KAAAAAAAAAAAAAAAA
CwAcAGh0dHAvdGVzdHMvVVQJAAOeynpYW896WHV4CwABBPUBAAAEFAAAAFBLAwQKAAAAAAAAiy5K
AAAAAAAAAAAAAAAAFAAcAGh0dHAvdGVzdHMvYXBwY2FjaGUvVVQJAAMvz3pYW896WHV4CwABBPUB
AAAEFAAAAFBLAwQUAAIACABciC5Kwk3IHXQAAACbAAAAQwAcAGh0dHAvdGVzdHMvYXBwY2FjaGUv
NDA0LXJlc291cmNlLXdpdGgtc2xvdy1tYWluLXJlc291cmNlLWFjdHVhbC50eHRVVAkAA0DKelhA
ynpYdXgLAAEE9QEAAAQUAAAAJYzREcIwDEP/O4UmYIkeEwQGMMEhPtKYs1O6Pk750Z2kJ92qOAb7
CK00QNioS4ng77P2QdJ9FuIu/YUijXFIa+gagJHXYBkP08PZwF/ukHJmW2xh7LpbZryZP46m9Jw/
VEbQk2IzNWjOu/llSfd1vaa0/ABQSwMEFAACAAgAXIguSo3tiOxBAQAATgIAAEEAHABodHRwL3Rl
c3RzL2FwcGNhY2hlLzQwNC1yZXNvdXJjZS13aXRoLXNsb3ctbWFpbi1yZXNvdXJjZS1kaWZmLnR4
dFVUCQADQMp6WEDKelh1eAsAAQT1AQAABBQAAADFkM9OAjEQxu88xdyhdEESDScQNx78Q+KqnIfu
rNtYtpvOVPDtbVcJj2B6aPrN129+M0op0O/exQOxvkNBXe4qvaP9g5W/6zZaV+sXcoRM2uG3j6KE
WFQgjk5YtyK9zgpr7HuDpiW9KBa57mMwpI5WWsXOH9UBbXfR6dSTEaqncpLReDz+RxQ0EtENIKsV
qNnkCsazyRxWq5HabJ+r7WMJT2VVre/LJaz73lmDYn0Hm9wDYl+jEDRoHdUT2JPByAQZZ6n1bH49
LdKZLW+KoriQnbuzrj2x6ryklViWjAHGR1dD0lIaNCTpQz0dwWtrGYYJQVoUQDhgZ5sk/L6N7yRN
xrlgmW33AU2CgqN1bkgzAblNXoJ98EemAPRFHdhm0PJW4MwFn0Q9g/NY5xxsJLmzi0LwAbwxMXBi
qt42m7Sb0Q9QSwMEFAACAAgAXIguSijTFXbYAAAAJwEAAEUAHABodHRwL3Rlc3RzL2FwcGNhY2hl
LzQwNC1yZXNvdXJjZS13aXRoLXNsb3ctbWFpbi1yZXNvdXJjZS1leHBlY3RlZC50eHRVVAkAA0DK
elhAynpYdXgLAAEE9QEAAAQUAAAANVDNasMwDL7nKfQAa5L2spFbCWGXrT1kewDVlhcx1zaWsvbx
p3QMgUDfHx8az6f5/DbB+zTPx9dpgGMpkR0q5wQjuoVgLR6VICBH8k9wIYerECyqZei6/eG57W32
w0vf9x2W4jZXV0nyWh1J5zPJLmXd0Z1FW70ruLxGD4ZZGgRSM/i2+VhYQEnU9oIKCFdMHAz4u11O
ipxkI1iE0xcE6wQ3jvER5irKYlqCS803oQr0Qwk4PLCreeG/FnwTFYGY0W85GNTUm4pqzRWyc2uV
tpk/x9E+0/wCUEsDBBQAAgAIAFyILkr6cHqVCggAAL8YAABJABwAaHR0cC90ZXN0cy9hcHBjYWNo
ZS80MDQtcmVzb3VyY2Utd2l0aC1zbG93LW1haW4tcmVzb3VyY2UtcHJldHR5LWRpZmYuaHRtbFVU
CQADQMp6WEDKelh1eAsAAQT1AQAABBQAAAClWWtv4zYW/Z5fQSToBiiih2Nn6jgzXsw4yS7Q12I9
235cUBJlcUKJKkklzrT973v5kiVZSrJoBx1L5CV5H+eee6l5X6iSrU/eFwRn8FMShVFaYCGJ+nDe
qDxYnsOwVM+MrE9WjFYPF2j1SCVVJEO/nyD4T5G9CjKScoEV5dUKVbwiN2Yq4SIjIki4UrxcoVm9
Rxk8k+zm5M8Tu53bJOWMixU6i+fXZi68p4zc0jx38wlOH3aCN1UWeNF8qf90D7InSM5ohs6yLLNz
Oa9UkOOSsucVKnnFZY1Tp2CJxY6CyjNSotgO1RyMM3YIwsCiR2IUKmYDTefz+cj+ElcykETQvDMp
6VdizugeGjCSqxWKwys/nlFZMwyb0Ao84zR8opkqYHEcf+P0w1lGq1270urmQqOf+tFx6tKqAKVU
K17wRyIGFl1dXd1MOZsQ64ZQx+QHOEu6xTnjGMwQdFeofuS01AbMx2CLP4qD66kCE+OByQonjAQp
YaxnZWD27XnpqQDrAhNDDbUngeuDZluS6thNgsYs7kNmCBeHWe93AFRc7+0Jd/sawgv7g2nkAoX6
Z2jhpHqSZiR51n8jo+onxtOHf2GhQjB1lVMhVZAWlGWTjtXHbWH9xUubCVJCaC9eOc+d4d1vARck
WqQHuyuPOkCLoilmAWZ0B7mh+IhZgmik/xNXGSPeHW4f7UL9XhAb0AOe00ZIHRqt9jADcQLRaXzE
4MwWODZ5jHovadHD+TEcdoI83wyAGV69Fi/rYhQq/qqbw1zwcuBsx4/6DO31n5oyIQLQRLrosqNe
8WMadai9vu4RoE+XMRr0mbxYLEbpphv9lmP0Rlc2BWwatITvcODgOQYRq24PTnNHWB3DjYmjhGOL
xKRbXiCpWujs1Go6B3o2cajxhvRyFRYFNlvNFPjTvIIdguCHQA9YhWiJd6QXmRW6bB2eMKy9qAVT
oAbQAVRxT2ho9yEqy8X1JPfmJD8QgIYV7NiWx042jyzN8qy/FIItp8WvyfXNSzW93cmxTFcPlxXT
5TrLjjZAGWHTK8j1q9pE36JtU9dcKKi0wiEZnFqWpFISfRvBebhRBbf+ttVYNzOAegU4TX2kzAIj
M1H/WxmtDAZIGGFPZ+88sDXdYMY2XoNR6Utby0q8DwblvYS+wA1dxm3dGR4Nfn/xnDaz25TuHTOm
Z8hrYstm8ESSB6oCJXTaWU9YxVF4KW86Ziyc0WdSYdXIT00CNbyth6HOnlF19BLFOUuw6M/7o3NG
TIYeJkr+tR1tyWlu89j1UfrRdwv6ebolnGKOF1u5Ayxyuid2H8fHcd+kEJsexKbZcRV/osAFYgC1
ds+vAa0ysgeSesG0QyHsqDBmlyOjXnlbOhartJouYUdLE5yX8P2rir47KDqzIPZFyL4ZZd1zW8Hc
a6tw25n1jqa5wKXVcJAn/TaikyObCaY99s0z9Jr8ydV6wqBxhJ75DYXp3fX9AV6uJk9MGkf059o2
Mjtuj/vNsdvDuu8Yw5MtQeZ51h7z0ZOCv+rE3dnPvkYO7iTvvvOEdqzmC0nSue3IEttevsu5FRcw
fDPBMs5+3YLJscOtHT6v4zERhhPCVjiHDLs4Wm7HzSamIFdg6in6A53enLSFuFO+h6sZhg6d54F6
rsnoVqeTGjnBwRW3IMwQZNuMYt2MTtSos5JI6RuPST+PhaWTHVtD1G8phVBioCF6pLyRm3YEmtmv
pNp0iuVYnfctx7DEdIuL5nJArUGC53b37pDoSGTua+CbtHHQgB6HKJ0TvXLh2r6Jpq9bZ5MGsqrq
8o6v7xl9XOU8dT7kjdJ80U2/hDWmkrgpwEsOukAFm3lDusXS7AI9zOeC2JMiV2l3oL+2QXGkYC6x
0g5qEj1SrDlZ/egwAcomgj9BwKETKDCsdU0RVaFuglo7Fleui29bEffu2UE3svr/uF9E/SedYY9f
0gxuWdYwHSDpL98jFQX6MC7xI/gePEAGdaV70zsqdcEsnNuW6fDxw1f/kRic3d7edlL6bHl/e391
P8pP0FyOo/ju7m5M6xUpa2CoXvBdmzaQDOERNO1l/t31Ml463koZweK/pj3wVwE9Yq5NhRZ5H7mv
bu9lKmgNMRXph9NCqVquogh/wftwx/kOFtVUauiasYjRREZffmuIeI5m4SK8dC8htJbhF3m6hn3N
fmvU3znlGQl0DMkTyP0dIq2D+WGx7CwBpdyHwoRnz/AD+QB6Yyk/nPubgP5eWMzW0S8QT+Cs6BYr
HN39uo1+Jcn3VLmfTw1lWfRvqLtYkgiQAu4MFAGGhet7w5SMtKWRHpERrusUpwWJFvFCz/NGpJC3
VBWBhBoelFgThh+HvqbBLFR7BdrO+kp2vhGdH8+Yu/vUuL7TI3ttGYjoCw3qfws6yAHRVF7QfAw4
dBjn6xl4FubXPSnI+a7M36pE1jejglC8z9ebn3/a/vzDHfrxbrv9+I+7FfpY18Dm5qaENtptqKkz
nXE5hhDB5TEhKW4kQdrDAKXZ5XdhDH9mq2Ucxwdne4fKKONEBhVXAdlTqbRnAdINyyC5gSxhY6Jg
QRY6JQEl4B3/0/VUB/TnazftZP/vUMgC7jvZq6F4NQaXb4jBbNr9nwuqb19SOebFQKUVzWHAvqdW
EaknqJSaEnIIAxAyY8Z/qcCysCxvKRyRR7iK0dyMaWgjHwn0QEgtEbhPkyCyPYiWIkLADZen+lva
URT+mnvmb3DP5bR7tv/ZbACYfwUZgx/DPJDZ5t8t/gdQSwMEFAACAAgAjoguSlljnJOGSAAAXD0B
ADUAHABodHRwL3Rlc3RzL2FwcGNhY2hlL2FjY2Vzcy12aWEtcmVkaXJlY3QtY3Jhc2gtbG9nLnR4
dFVUCQADm8p6WJvKelh1eAsAAQT1AQAABBQAAADsXW1zm8qS/rz6FfNh61w5CfK8wAxQ3lQhhBLf
Yzu+lvOylTqlQjDYbCShA8iJ74f97dsDSEZISqzY99TNSk7VsY4G+unu6Xm6Zxg8l2kSyCyz0epP
bz6ZXclpKNPrVEr0WTd1bv7RuvTz2+al8HP8IRnPJzI7/vDu7P25d/ziePX+1mkop3kcxTK1t6O0
Psg0i5NpEwC33CSU6Pp+JlebPplc4zpqX/h5fCePQLsUYNBlw6TL+/w2mZY2iD9aVzKbJdMsHo1X
xG2x+H0mU3Taa+pkYNJq9fxcHl/Hk4ZaFBOhYaIRHRFhY2oboqMLgjRsYtx6N0Cb7Dz3AwRNnxDB
HUI6HLWJ8YZQQo9A4VmS5mt3EdJypsn0fpLMM/T+fU3Hbs8hbhc7GhYMazoDdfqmh7Wex52+i3XD
MZxWq6U0R85X/4tEg3gaSNRNktxGhsAYo0wGyTTMWq3BfZbLCTqd5vImjfN75d5cBnmhipz64Maw
1XJTP7uVIbq+TaUfLjXB4Nc4m/l5cIv+nMs5eCpIJh1/NhvLzsSPp1pe3NBqed8COVNCV/vZ++QO
u05v6LiuNxig9uD0zcB78+Godr0KjmVn/+5dXQxPLz44Z6dwU693pe7yc4S/4ZUfhmsSLsCgFUT3
3dXlwBtevLs+7f93q/XhHF3JG7gyQxfST0EYw3ZL016jlrpjOLz2Pl2vDYoKieDAN0P4oNW+CNUX
6DNCjOLf/0Cp9u04/foNDc7/y333ccN4arUccFkc+IW+g5kMYDAF0ClRkk6KL+2We+UM3p5evEHX
3uDaRrd5PjvOZZZnx+DuwA9u5bEfqIGh3cW+lsowTqEbO7PbWav1ZpyM/DG6Tn0VBvMogqBvp/IO
Qk6i4DZNpsk4uQH88SIwjuyWhTuGTk1hKGvd/oXMvybplzU//EfpexFFkcWF73PDQtfuJfTbdAqu
FJFFdBJyHkmsggMiI5cdFEEQEfwKyRQoA1dYFtN3wDKZGTG2FQusA7IgnRUIJgjeyRzLoqOtEFnu
pzkMD4t2BKW6IZ7sKRaEOg6tpqcoefBUgWVw8hxYTJhkrVesBpYg1pN7ZWnXWq8UEKaOnwOiNGcj
BDMJeXLHLyFWOp5ZhvEcoksHLUXrHYp1Yj1HP0thGtFaP+sP/VxgMSyeoRMqrLVOUBAGBNMzeKqC
qHuKUos8h6dGnBjG93iqxDL5M3iqwtrkKYgp8RzhWkEsPSU6loAqhSkBKuPIv196b74rmsooIiRA
nyuRIQ4jivEfqAd5IoynN0tfhehrDIXYPFeGJGlWoVnM3AktxNEGtHdFJs9UX+BvYNHnfvXzavHh
D5WQSQ9z/JPAQeTL7WbayMVFlcF1qC5oVXAwrDvwkVICPxjXyhBkckxLTZhF6W6aYGODJi4UUsrL
GaR48MVCdsk9j5ftwzh5kC2prmRfybH0M9WbK9J1zthTNK+kNzUnmHYIF4IbOwwiDkWViS4G76/O
VIiXFSqK4mlcFKYq9srAQxqEJMwnNNUjgMU6nBCd878GS1DDKJLZvxqL8I4gOiXsL8KCSDPNvwCL
MxV4zMS7sN8oHG0g2MAc6QKjweAMvfWhpr1VU6HeuwsPUPQOZjqhfCeUwIy2ohQcq0aQgpvKmySP
i8J9gQXTrqenpwpra3qqsCyDPj09VVjN9FRCcN3gT58VSKzLoGmO1bAG7sRPnxRUUJutgYATT0+2
9UCAZLsQzfHT5xuV9nXRHCpafYfBL3hocFlysQrTUEb+fJyD85MvsQTRSerfyHJczsoVluPRfBqO
JYqXqzs/jYw56is4hRzDnL7/9vr60i2gBxWySj8QBdWI+QkQYKgVkIvB90Ba5VIGwqha27DtR65l
qP58aPkoR26Syk2aFYsBckSoD+ZX19l2babvqln72yTLbTuTebOh/fG6b9tXMrrM05Ott7/+7bcj
9BJx1N4kuBPMZjYz+VGL7Kg1HmHILVth36TJfGbbYZz5WZYEwHWylwTzCUTKWeKHMm0vb139vtCW
CgO153k8jvN7G+qAoxbd1ak4ZPJHTv3fTV+3lQI6b+Cz3fBDP7JwiLbYCMgNZxSY1NrSSbe2ASro
TRV+j/MzeeMH9xtUIARI1We6UmEV69wPAH/T14UWqkxtrzYBvkmPWsau+Ny0LKR9VlB+7g+SeRpI
4BV/PE6CPwDKBHtXGjuTia0zCEa+I1SoR5BvCqi31+dnH2L59TKN7yDoUACVa6rQCEwL2rULFBjB
FhgmdkXzDSZW0epmwcysiUNNkxy1VHk0jkfJ6H+CjtMJ7+HzdyhLSF/4gY7a/nKVd+pPJDBQII8g
oudAWUVZLi+TZHwJ7GXbs2TWvkvi8EURT4K3rBXTVCz2EyDtch2xCWkGwEUjQdHQ7TfFJzOQaKga
ti6wKawpUEqi+5EBvroYNCSi6nPRNTpvqel5Yw1+s3OqJVQr4tCh6Xx6LWHMZjnw83BIbHsE85Rg
mOUpMPlJcOunr9BDo/r/YZ76cZ4Vba/rjUUH+qBk2YReg6HTLC8JyWTQq6v6FR1LiAXcSXfUXVrE
QuHKHe14mr9CCrmEfVH0IbVgLrkBlzCKAZfthutjHJDGHeeQuTZjE15QwTo2VN+ArRfBDFEcbgzl
1UAYWZwakE2LCkXJXuZXYhcJEwRkxZOG4ReZTuV4VWZdlIlDYkgI0qHK+n8W16cyn6fTgr2KRPYg
bVYm5RVx9VHGRsIyhIkWFw6//ll+UMKg14vEs5M4AfOG0s4VWWxpMf1uJaF8WjVqE38Kwzr9CQdB
8Ya+FMXs8M8kW3HMQvqGXluxhDCDwAx8uLh+OLlJh/H0LoFJEgQm4QvXPF6gHgZhQ+DSQQZdOojt
XUjoe2exsXcW85+xmGAfLM7k5CvkrGEW30z98SZ7g+8PPpMTi4c4ggpimmRjKVU2J5a1MDN4+bJD
NtN4XYphYoYpruXM/DbOqjEMcxQleBglabuecdXDQ5gIzNOiTjgZJzD7Uv+pp96i7YSMX6nys/oZ
r2ZgYTRq8L/7d/4gSONZ/lCK19NdaEZYyhEaTYrEbttvpQ8zkizwgRZvZE3H+TQGGh7CRV9OllcP
ctApOJ/n8tvr31ZriN0tUrYUKdWAec1wOFFSh1CpSJtYolnZP8awkOpNw8BVwTxVOyAGCxOLiZ/Z
RGSkWcs/ApEamDwgOtn9NLj2s5q/lBKvkCo+Ubuh2Yuj9tFrFSsqTK7m07MEylSlmyVgwrMQBbMM
Qo1m7f8Y1XSYaT2Hat40T+8vEyiG2k8RVxVujWnFYwzho7CQ+6IWSMNqeA1nafLt/qQ29OYg9qRU
A3CfpvGrJznwBYT3w7zDYqg9kZMkvbcpN8Ry3rMDNVtW+EDNoyS8L6iUFNOZHSUR/0HSsvrkZjGR
2ZHgDYKagh7oXdj1Kq6xrl3Oo3fm/8CPYDY28VWtlN2oictsE/k/RhAbsaUgVW0ZjRWVH08NDZ0A
6QxhblgN4YFM7+IAJhDB7WVSuIMS2iDpR4hlhgzqYuFX4VmDN3jxEbKoZCaqS1pulVEjkjdob9PS
4eqiocA+hzT+udGd7bI/j9AwlVmxcqG+UJC2ms6Coxos9uN5MjUkV969GJTxNCxjbDgsfUEKNnme
QWQ+3yCy0PMOInPvqkJr7ywmeP9M3r9FDkL3z+T9W7cg+7dwQfZv5YLw/TNZ7J/J+1d8kf2rvuj+
VV90Dx8x7V/1Rfev+qL7V33R/au+6P5VX3R1MdXtD5Lgi8w7s3JPz0+4A4vyOdpYBvmDE3ZZW7SI
bvjFOmWpzHn5bF49meJ0dx9sXZ1jz7c6pz/z6hzdvwqRWquRCGHiTOPylctOWmyL0TKZ3v17L+7/
Yw4W/nN1x+LK02FKIjOMkOuo/aTTYofioLBKbTxVv6uHUA8PeaghGkv9jwERoVjEV1Qs81Nj9yjd
OnSM5xs6/JmHjnphePmZQEwtdoaisyTwx9X2491HFw5HHEbXTD2zux0Gd2qbwE8OLV/Q2tBSL/kO
K2mCi0ZA/fhhpqSWjFCxQ7k02wWBcfGmsp3HExl+BNnlDubiGftvr1CYzEdjWTyzZqhd3hVPby5L
jbJyq/L6Xtwf6xKMGKalLpd++gVkniW5bc/g81Irfzy+P53MxkWEV7vgXpX3DIJkJsMzfzIK/ZOR
2rrYPlrsTNh0SfmctHmJetv+Y5zf9u6n/iQOXLXbQL3qXt9kyAlG7QcVC4s51nff+mtKnXJU6FqA
L83sqh0AturX99M8Hp8UrRCCX163lx930LjYU1tT+NY2ye4bhS3C9Ait7ceYqW3tSpH+fFo8dlt6
tr7RonpPYRhK9YrIlhuQ+lcGm8wyGGn/UNvutl5ceqifpNXV/XicyxRiFryhvJLM85Ofl9Y+su2/
jYtY+Vt7y02Vi6teqcOocXMlMzB50U//aiV+WwB9hEGizC96nhDUriOr7RsG233rtoX9UW2jfMWE
1d+RWN+YUWCL+g4DXT/aeauFJOaCEdYQlikOhhFqR5VX/LFNhE7LzQy7QY2Cigi/5tH1djSjsWvC
era8uPNWh+/smiDPnBfpIRcecuEhFx5y4SEXHnLhnudCpnKhco56VUqtMQTXD2+U/n9JhT4VP5sK
CbG25kL1Cuu+58IfWsxIGIp/l1z44/7xA0nCla3QCwZafD7ZNFxsuxhcD4rL9MEeZeiSzW37P4d4
8yuAzyD49WLLtNphDnGQKsHto5K21buvDfFFt1LMdt8C/wQKF38Vhe/FJnCmHyj8QOEHCj9Q+IHC
f1UKNw4UfqDwA4UfKPxA4b8qhfMDhR8o/EDhBwo/UPivSuHiQOEHCj9Q+IHCDxT+q1K4eaDwA4Uf
KPxA4QcK/1Up3DpQ+IHCDxR+oPADhf+iFK7jA4UfKPxA4QcKP1D4L0rhGAXV6crF4UufTF4ds4zU
36iWqM11bRTnR3YLodT/Zq8ddoxBoXS0rSHY1hDWG4AmjZAEGCuQMN5yS7ZsULYZjAiil+iztQYW
FndsaAgUCErNDSAqslJrRa9IjGSkjoNLCd6ksGogdVF+4EuDUKYsIXSLJYStyAqiAAtRNOjbQIy1
O3hUuCue1VuWJz6hNBo30AmmMOagvzeoxZSs1ll1DLN7+b48spq3vOKUPHUMdnWI9fJOvXWt/qrA
xXwyWpy8TvRWq9WNp356j04n/o3M7NbiwOpvy7OqkYZWvgwD6Bz0snHWSBsfoRODd13BHVMzXNHX
GOtSzXRMpjm64wpChOfg3usfnxBfhxsJfV0H+DKKBHoJo6h6QUYd/DK4jSfV0Cq0waxv9E3haqbh
mRpz+rrW7cMnw/KcPun1utTob9Jmm9SGXmKDXjLYpNd8pg5tr6umc6/vMaZrPezpGtMF1xyz52ie
0eu5pmFQgbuPUK0ueEW7wORr2oWWCcOKfYeN25DyX8JN8KtDOvpLUNTF2MSWMDRqMqYxr6drDsVY
010de4bT9yh2Nym6KrkTpf5Eqj/7cVydXJ8dO41r6vqHkW+t6S8Z9Rv6l29RbdJbN/o9s9f1NL2r
+p5RrlmUCa2nm6YQxOCOgzfpXUrcrG/ZVtdT+gFe0zOK9GBdz20O7npWX/S9rubqxNCYq3Ot6/ao
Znie54C/Pc+gWxTd7tmqsaYqDD68FhKEmHIURaOtL6Zt0Fd0DWGAPzXq6FhjlgWR63BL8wjwlWE4
Xq/Ptju2lPs995ZX1DUf+dYaBZDRyOJqqNU0d85759dn3TSZ/lP20vhOHVsPStMOVAoagk8dCvqb
psWExx3NJF3QHwtLs7o9oRHqQXD3XcvpOqD/oEjYx2fxKAV2PPa+5XJaKboG0ymPPjyGWheuyrPj
cz94N9hwYd2qQB/RNasCg2+w6soPZTL9pJzw5my7ZYRQU7cYWAaJAziFqUhywDwqurpuwu269SPL
NkBtt27DxSsWGkKuW+gblkofyLk+rd0/cEGfBUFWpin2sfp9R/fAEFrkE86g24B9LNMgjuh1ec/T
n9GkbSq1Su1VUcItII8Hq5Zf6oGvjgVVJ2ChNuO4Q8tgA2ZnfVdzXQz6E9fVHNfVNWE4JjZcT8dE
5cN5lipmP1Z317BMyizWxFJfGoUHV/8SUW8u854czWE2dHOjDrUEN6o7iRqzrsUo4RjALRfUEEwD
eu2DGwkzPZNabpetu7E6NK+/GKvZ8SaczWN505Urlhk8WLeMG7KIfvBFDPOcuw5dhISugxl9bDjY
MRyIaAhrxrmpmX0I9T4VbrfnUA5cWvNmU8oKPud4A76wIlniq2Nm0/II6oUO1FQ6mKyvU9LTCDF6
mjqpV3Msx9FI1+saWGCHFYm7psOapFU9hL9BD5M1WMBNJpNkCtO5W/BF0a+0U9QRXZML5hHwhiU0
BulYM3tMdbRwXAP4zOz2H9ezC/nb+nPRvqp9NNqgfRQuenFxIFEyjeKb6oichTuBpTo67hAGZrCe
1xW9vqVxE0M5JMCgrgt1IybQySbt93G/X/NqKfb4uwAregpM1vU0A7/h5aIGPn334AIYyh1WDiOd
K387wKo9A9TjugflEHOIBsmJaT2XM09ApURNY93fNUevQdS9XDWuqG75+rrqvm42KKA7htGWJGV8
6B0ONxS/IzX+dSyoKiZgpPQgaKkLWncJZAbGLFfg/yPuypbcuLHsu75iHh3RATb25RGrRhPWWKGy
Pf3WwdVmdLlKwSq5238/B8kVmSCL063oeSlSzBRwb+Iu51xckNZQxW5L/cNp/CuSn29opJ8r1ZFe
rQbpsUofh9+KYycXM9UYfKShBEuQpuHmFcR5BgRqinBSlyiVkq2LNaO08xvdmX85fnrDb9b/7Mt5
3dWMzgTHf9y/qUCNATcKlUlkQA+CA/g4Fx2JydNsM/eA7fe42mGu/nM8XGx1WLqpDgthxkDh/GOx
hx9jeZn5Hx9gwsbgP+PZzWoQdca47Jgm1FgA4+gjCSxHUrQNMTDuedA3baE3T1eXy//z48MVfX98
aHRdyE7CW61WIzz9sl5+3W1fAVDN4J3KCGFmNetCw8yzUvBGUBak2mGhggj4E1iAvgZPQtzU8OEw
el/k49VLuQVdTr1UCDU/2vlv6+Uc8xztXDs9q/gmFw1bB6dSlZcKWQL4cipEO69EzNEZP8pozUDv
2tkWHREqV+8+us35Cy6/0/uHqBjXECp5L0tKFA5n8fwoslvIGmhBh+DAp1mh5q7nd/4OzdtP8nxf
q9CKdhRaLUd2/8OX9VPa7tbL1+cdDIIhpbAasF21dsG8Nj4pomLkRCgK8KCB9i1SeJEBnMvdtvZm
9L4azS0jDVYdDfC31eDh1/luQGyy4l6xD96Ht3U9UuKWsUh0jgH2XJDjc01BLhSnFcC9t/cEnsM0
V9Zif7ERX9LOAkgqj0a9rL9JfTRpU+3ZKWm9zw7kMACOKK6IyxHxm3sDZgs4LE03j18MNRJB9UQw
RxHi+7/UjYHTLyh/5xAEahIpisfgsPABOJEI70QNc7qyPmWFNgr57+bCVwT7fjf/8ut2eSW+fT78
3NPLn6eCtEqwjhJKrEZJ6PD7Uyf2congY0nOWg13TNBJOJZJoBlpCOjISW9UFLcz+Hjwvkrjuxo1
1LwTYOZrN7Lmj+vVdv7j8/Pj4vkfJxWMYGB0M07r2mjhkygwkIBXBBhJEfWcIxbBX4jCZSy3nfJy
ir4il3c0SizYlHfgw83JoLDsP3+Mj1vwwhMfZW6I1krTZChitKEObI4CZzsNBACJXYkAsF6nN4PJ
++/7Eu9v3x6saSJFqwTXHSXkeCWOP2h2YUdFxFqIhUe4iq0Ywoj1NhMak/SsZGGFuSeWHIa+aUWN
yMv5eirycmWOTOEfX5anSKLVTNFZZVtKJiZ4lU/JDNtHKrIOHEcYZTgvLjHb5wWn4RohVtRMhVgJ
ehLi5fH1DEbZHjAZHhOLXhJWAsCzNpz4VGOadQhykmm8tjn6cph2ftFBCSs9pvPvHx5alhekg2MI
uHsAiBdABRABiLgGVJ2dd0zSm4aHEftLhQuNhGtppxJuHB9Z1hL2+XULvD6rqRYRdlaNq1YTtABS
AEs3tdqBPAsHAbhRRpriWeD+3jLDTx+uFxZ++vCuFU/0ZF50iiQnwFoecv097BesMudiVkFD9ZDj
+7rsRQXjOdJGBNsXxTsQfZCSpADT4DfOOP9mArkbIB/luXLj4epI7WVP7c3RmIdvMX+Ilzn6GMi4
sC4hXJFgMwJZDpJ47wspIadMWUw5+m8XyBohLlWQlE+LH8AX4zh2mmbP0yzl9TvW2CGqMc5mYl8B
dVQa2BlyI7IV/EQgutV4XVIplAdgPpfupmjDNDdY2nC9VUd21GFSH1ekPD+9fprvXta704IoO0A8
DpDqfJZEwoXgOayWcQxsL5UUgfG0LeXfR8oaYDMW+l2rnOlorOwJIf725dcT56mBzMtQeNSgFjWe
C/iTS4DjmoFJZ6xajmVUPTuN0E6sO49aqs3I5//zwwmIIFQNPm6pGWxFaDzrKGEmGpYvJBzBRZpJ
YTYIllhW+nYlJ853i2s46uK2kwj9O0+XG/VkpzpZPxyHtEGEakayeoKq4MoWnZOmnCjQXPg2R9wy
Ff1GgXTPI7Mi/dN67a81omrRWQmwkk51Yv3zp8sSS10RPuQ4NqyICVwDREHeHCA5ghABtUn440Kk
JTFq+f0Flk83KyyffKuEsj0lTrG01nC3j+vdX8+7uLqK7Fm1WCCpoioitAg9VlNHTADglQqxJ6Y+
3xkP2Ioz74kzX4+W/8MPfrlcP+7bfvA8qdpT3/2byhoUC8VwSYqt5QWwd8RDDehCadSKKg2XueeJ
NhNdKwBe3DJSZtNRZoDcl8rk8qG2MzxVuxiQT/VRC+bEHJJuqts/sUbECAwYjQxBGI0IfxegOI7d
F/14tZHadgqH+HA95Wzl4VhAkQNYs5J7YARNwGNgxoXzyoELycpqz0DaWOFvUbXycBVZlwawSbeY
4mrpluwYgQ8F8pf506rGoON2CljyoVrGvUbAc/A1YytRpopY4B6idB7gpSvB3iq9NyNfiqboZkp7
FWNsKEjh5vpzyY+/z9zJo4YCO+wyqGgJc4rW2AxuqBMjNHA4pEBwLiO03Q7TSACSPZVArcebK5/n
f4942Lv5YV+wridzNVfst52YdI4D+wM9wIt0hpN7xYgD8OecZoanNF3QS/j35/EM453H0/VGfM2m
hFtpLnrF64fPn4ai9YHnAYx4FTklWirQJR0C8bEYwl3wOiIoRGnvjqUY+0YsxdVGarOYFr2UZSeS
tfzTny44Ft+jbVuiANVziE8KKVnC552PYDhSGzDrAh44qvlfDPOunYl1pucnh1i8/Dajx+nFQPBy
DdUygtHVjgBwFRJ0DkQlVXyIhjuu27kvxmjn5qYzt5h3mMjFfs2ZnWclI3AgCKYCRhIUD8AlxGsr
DU/BO2FYfpNzvLFT09zSSi865mbtuEwVH5+/rtLz8uUoubBiv4unSnLAr4lQhyyOdGNICEjgSjue
wZNNEfQu/nec4YoGx8uN9OCoU+kX4lSBL88vj39d7RuKT9anZ1wOgrsULE8gCjKAN8BlEDwYiZly
WlztehqV4aejNcIs5XTLRi0VP4a+Q+x8en7dbv44kwE6bIjWkq+0IWUhCS0GOBlWgZxdConK2Cyc
sybGW0H5cuBWsHnHO5ZzfRTs69Pft0+rk3uoWV1XIMogbVYEXliL6A7SBCVJhEGWEDJol+hKczla
I8aKTrOrWmk5MrW9pcTLzd1qdGxAu3gZOiyszpgfLqtrj590FSIoIB4kLpojPDne3qyYznGlQj69
sdVJT9OdpjXZNPsvP29X6+fb5dFoItcMqx20qm2LSDU8G8K0jz7VGFDkTZUup+jrcnnHpRKadSpk
mjE9ahL7fv70i3+aP/7xsh3CwH4XbnitjUg2gRpzQXzdhRO25kojPaGwoSQVeLJR35zNXop0pTBx
cUerNOspPZebdYOhzmEDRKTCp+qp3BohEjBe3XIERA0RzJ1HklOE0+gswS5vdi5MvUNzNsV0WqzH
TYUXv7FVnaIif1mLV8O+V8zeaKaJFrVVJoCihNqXK40ORSdRlA03l+A8eP9hnq83oouN6Ii+GcPm
WHvYP69r8+p6d+hiPW/dGVZrv1RZoC5lSOEx4clapGWHP1QyU3QQmqVwVzbpzHUlsXTuHGk3zTHa
uvnIO96vn49me/JwpthMur3JJGuNYkiORkCxGtcdS4AfRXsk0OJ0cPcodjHNleLu+YZLNYxbTCNV
/fCI0L4+nUydu2EDMrDspAHvMmpftYFpM9hWVhmmZQvNV+J/x7zNogNrzYLrY6Z+/+mnw8P/uN4t
v+7OCZIfXM6p2vBFeLYQJ7GM8AKyYJQp3FsnSryLFZ7nuaOQeUWoVrEO/DMrcdov3S6/1sL5ebNS
wSiqXQxU17nAwBqFrW21CeHSRvwpSPcsqcRVNOPetma0RpKVch1JlvJqYbU68v987//7oqxKGfJR
lSwIFRUyrCmx1uxELSJERqTgxUuWUkxvg9I69nU8Wq+28i9VT351fJK1/rzvHN8+/fLT6/bxjOj2
PuYTTT5aD5IGRCCoMcQ5B0fzOSLeg835UZvelSEvxbJ0Ma11Wbqyo3a35vjkd4JLO2QLdqhzsRiF
LSWQHAzQpqQJ3Kw2VBtlqWfKR+pvpYzL4VvxVq4nnjuK97f1H7/9smvaGS3gRATtIMDuNchm5AmR
CsnORuSPoEumXVkux2qEYG6avCxb8qMQ//Upvz/vsA2c33JfTO3KCCLXnUmPZZPAvVFIz22t/MXy
zzfVNdXs8+yt0EvRE3pxCknlL7VBYr0ahSKsoghA6oTW4j2oI0WOKpKwECnikDXGfKONlJEEjfSu
00tbP7yxAfYf3xluwdpqth3eVPaJhc/16EGOtbOAS464ClLkVHDg4UjFwf6LO16Xd7QqLGlHhdpb
sBgW4POHT9MeDx1d1hFgS/NS2xphPD4jOSktvVCMBmb8t+zxuBCiFX497wm/GkXbX9ePXyoeELP6
2GXdDxEqeQmyR2gY2pM8q/s+kUjqqIqpyKLlN9mEwNRX9h9wpVFm3tnSwYdjZV6+rNfLX2e79fL5
l6dty5pqIWq/2TK81o25rLxDcCNF1vIOr305ISObhKQpszFKlb+Fng+DVJ97QjVUbnzb6Al0Iti8
tqY38PvT7vn1efn8GL5uNsOBjFq0lmLY5QIuUtGRlFQF33WXy0hGci5RZUFBC/I9AKWdoa9Ke0+r
h9p09NDzafnwYV/DPTUdaFYLETVXKW40+AjdV8QEECuoPwtE8ky984nnfG8d8TDJ1Uri4XqrgmUd
Fdy4JPV+/bTeM/LTLwaethHEHhDYaDmT8DTJXe0wF5q4mAup9UUnjFXxXtA9meoa+J7c2KrWy5Pz
1alM+uPu67p2lD0s54/TDWOpHfhdPeaDFE1EphqgzBtED+vqGUIXLft/2jDuCd5qvuos6mJuRiwq
bV/+tj+UerFnOFDEmRyorhmAc3CKq0rAdQGQEi4itHgXiEuFOVUyc/ouCz1P19fxfP1dK/d0q84u
NTsu4+8fty8nNqW0GPovQMEZLyaR4gW8qtR9uZDr6gE4BM5yjG8USI57bes3F+339bKeY+re1srX
6LXqNO7jw9PO/suX7dPq629fTobpzOBn1IEjGlsILUhmokiwdqYR6U0qiUfFY7Qt8G5HuhTCqcX0
4TqjxzRm/vtlM/Pe7xmi7AyuX4OYZCElCt6iVN3vH7ZBa9eBYVRLqxCu3yiG+J/famW+vKNRwXTs
w1nNRxEM1rWs+Wi3GhqB3WzfkOQoDF4ORVglqVX1QHWolTWhNK3n/ASJDjGYc+AFdhvsNFNctfHz
Le9aiUVHjfl6ckxptx5aLz/8AIRJ90dnpHHVMpRJjseSSTasVgXxziN7ADrLhEV12rjyJlo7DH4d
XR5uaISfr6ah1i34uFlk/nW1fR5U8PVdzYYHBeprBcjeJFngsVTzUCtSjADVRBKt41omSpN8GyAP
Y1+Xf7jcSL8QPenlOI1PMM2+MMhnfGaGJgu+x8zBQ3pHSQJGhhmxSKwptTrIMqJSKfS+Uyzd6e5E
W+OqoVuYjoobpYcCbGtd/qcIpRiAyj69798NB/NoZC56omOq53oV2EtEWqDcWs+VifvAc1fzISa5
sUI/xUb4oSY4EX6jph7+N79bbF93pzi1X5d9t7pylIP3KlF7czlAsjeUkZJyUkEpQd9oRhqNfj2F
Xdx0qQUIzHRHZk73X2cw7Nru/vjy+oxn7Wb2lM7csQqetKX1nAVJLOPhs3o2yuCPYiE7sEfAkTza
vp2M14gj7LSUMd8s+LSraH/+f+aGM3pUzuTwPIVkrCDtpGQRa+CbxEZtSdQucE5Vliy9BY+ufA1A
PFxrxN2sREfcVafDf3+Ec98vogfDTdrxAOcjtbEUcdHV4x28EB6CN9H6koy8syX7+vnNw8WR0FOv
W9DD2YqW56yXr+vVsO96gtcXp4ul0IEHQZysLcrADSTQ2s5PCxO1Y5lSfi/dmUx0nfVMbr1UbqEo
nyqHD8fk5wyk9kCpnvhk9f8d/ln/NfRTWAaYCfZTWC30cOBtAzBRSkwBM8Vk9L8Dse2vNZqaDkiq
H3a6REaAHxnO1vRmh4JpQoLG+jHJK6EogNElWZJ9TGBOwElWfhtC0bmx0cd1aOvCVcS0LwXVQ/Kn
2urxoH1hFNioBJKERVqzEQTAcU8y0yHFQKmn/S3q82itEB28s1hS18E7af46HxpZqkdLNoA1z51X
0jGiWT1mYQAXLAcotjJnGmuXQZRvIoU68I3T9bjaiLzSHYtfrdxmvTj0MO7Wh6h7fHpiOGhRfTio
SBUiDYHY9bsjlId9BwiMSAnb9yKyKwe3RqO2Iq2mhbHFmm06pwlejjazr3KW7eP6++0LQjuXA93D
S2VOLHGfjAnEVI6BRAmP5K7uAlEvuIeTsvjtuvJbWa4fnDvf06i/6fQQ4sNNv43z4/BdZh+eNs+X
wVU5GLSTEY5Yat0iYomwbkTzBBNLOXYPMF5t4TxPcrON83xbq5ClHYXq11GIw2m8D0+v691mXh/u
0cjA0+smojRCCpkZQew87Mh4Kg1JyMaUS5/1GyfY/i8RdCDq9xxPmAjc6ut6C7hxRxIM1reH86fd
p8MOD2hBCkUQ6SiIgkFcctzWrhmWhc66Vmj+RcLZlFxaOS5VWFI77cZb0sVpO+YTuGC7G8O9Y6Yi
JlmjgPAJmZxJRmpTeXaeJSPUN9qNOU3eiFy/820iMhOn7wxI2/kvT88vr9vlx/XLS63IjI7r0eGb
MbgUQQdJOMuwN6WwBrF+d4jySGccwMSNuvpuj9uKuJrm3CXnY7znc2XBQ0sD3e9KSseN5KTYerLa
6kC8VJQUH7llYfiym28XvXy+koDzu1bsdUcXMYaB22WFWrOyfVp9/CP9L3FX2iO3zaS/z3/RLO/j
I08nWAdrZN7k60LTrbEHnuudIxvn128V1a0WJXZPBzvIAkFgt2SqSiJZB596akAR5vuUt0ELmjEN
50LHwXXFlDHpsDiNBJVMFGflvOfjH9FwdketCG99FCkWp7P3hYJzAh3rPeZOamGS8fhxICjmIoCL
5ymsYakY5ZRppU8Coefj1nI1Umkbdn3I9P6c82INcg0zxUaHxHkQD0Lo2pmsYKJwLTI4NoET8UFr
8PD0Wuhr2hKars4UN499wUuX44/CeQRbu9EOXDHGMQMoMUtiYaZbDtoxHqSm70xyGPOY4wOXFnKy
hpyDbBUll1CRqlIEZEsa1hDOcuqUwrygzqpzirHOB51S4sm588hz9oOfKEVeBIwgoWqJrZew/WFz
+3A77WwjHgOiRQfRbBcREsUzBI3ehAQrTTIvdOBJ+ZOA/fmYlVC6kQPY6BUqs9qE/uvq1JEy04Ey
DxGtNviGTYxdwdnGID0sJ4ijovq4De8gyxGihqtWwLGxomFvLO4b1/NvsX14edkeqn8k5j4KApVQ
Y6014I0ifJyq0IE3LSGcN7ilKE15PPU9ZuPWYrW2DSuXeb9/hVAVeMuUPINA1SLCjCNzo9U+dYwF
bxKlHnz5c+Y0DNt+iXChFrOBidnYLV3suv3LDBDD92EHWAwUKnfUY9IuU5gfDoJQ56jUOkVrKv6T
1bubRq1F2jb2hJ4OjbCjkDGPsGL4VJcUU3LgxclLbgpRAVchFxS+jnj6iUR0indSxagSiOxNfHf6
ft494ngot7+jUqJv1Phvej7VMXz6vMCiaBIlxOm8IwItsCAEbAaFzVflwKQ1khn7QViUz42X3vPW
S+eT9f21h23wYTMsLF1OkhoSGfKplQPmAFJb0oUMm4MvSCn+QZaulmAhvGwJv9yOq0B1OvgaXX4P
ls7lUDJCHUemFuOtQ1iw4Uplz0g8zWC2HHohYMO36ftlJP3LL+GqQEywLEOOJ3JS2OwTSCZlxqp8
QjtfjDLxNOuQwWicFUHi2EcsHFyppd009oQbQRrZk1zREJUsLkxWFJtGmjEjanMKmJBineGGdSzC
fqplBoPyPrjnvSiqvqfSAQvYljpsmVpifSsDNaJUdohsylUpbx3/UHC/3iG/KJ5QKDx6gc2OQlBv
dDTUORXVOywOf8sYHmQ5Vcq7PIoBDYeG2mYZDYR8knYJtnQrkSlDSjwPyDZ2EFRC7J9MkMqlZN85
KTuDdmmuaz7j/sVNc60HxtbLa+DX0+b16fOX58evMOp9f317h9Rg9d4bXLKJednpxGGNcdzF0DsT
WQgbIJgSVnzU3tuU5KIWXDe0uaGL5Ve4Oa9+3F8/3iFOvbDd0UJ1x7gTLEjeeQuBPzfw5WxKrBMB
HHusTZf+rEPC+ROOHEnN7qh1uGEtHfrFjvwwUs0ME63R3scwEuM6jlgZpYiVMehOSW7x4JmBc5QS
BHZgH2VWkVS1hetiquYzFtKuIe2DYDeNDa+U3uAebcpqGfPFsPyZcNR34KShT698h9y2YBRh4kjB
FMyid7eGMvLxfa5crqQWjZPlQQi1qHt5uutfbx6fJ2p1LfboMAbRPZEpd0prmPaB886gE6wCd8YE
4cGNO/Vm65Fr2RowxEGuMJXjmf3rrtapJMFmtVUlGKE7ilFNkpU+wLcHD51bBfZEhdARR5FvyhH+
jns0H/xIYmV2x0Ut99BSZknN9/R8+zALIi+/4N/L1jqi8gpiNBkw4yR04JEicTwypRrjukCzJLDR
2hDdRyApv9Sy1IdvcKnWr3EEDgHu5D7dw/b1MpEfooFIwlLrkTjVIqmSy1hSwlUhQQ/WJJ7Josx7
PsZF/ZzG2isEFNc1Fci8JocVak9JCiJCKy9oAJcT850igEVGDHfKUQfHIw02fjiU7iDNMVqQVqg6
KCsbuvZk/6K//zk7G1vVHXhuLXUWw4IMKwBPMxG+ImDJgnU2KdC2i3oYtRamUUs6aLlMEV33m+9v
T3N0MNYJil29YCmw50QkG8HIgHgd1zZ1VkkLbqqRgUsvDDkLuuEXT5q/0PHaRS0qa8nf743+bt+f
0A5mCltThtBUswTuDcKZSSAdeHa609qSzIiHTTvWs7caq5LimqxPGvHHA3Poa3/339i56uW1P+Dt
wAhfkksx8h7FlBylDARwSEqNvrITHv6XwJkOHn48z15/+vJb2BGTzN7iMSEWaqypzYYNW5Jwfe7f
HjbfTqWMYrZO2QBhrHJYHadQFwKBFEmRsuCoCR/Iu1XLc6xudH5PpfXGND7exk7Jj+u/kNzmQDdg
SvlaAosuTRdITpgTE53DzALVWOcdgudiQXVQjVI/3zam8KbX67N/JJzobx8QqL4CeWdksdAEYvBA
EFEM0bhF8qCgExJLeiHouSDv6TFHz/6nO2pFGjBJ+HGq/xiffekPfjdTe6Y2ApNcGIi6FRXFlhDk
+6XglKgsmI4sxMVJTz1aJci2YcpuqFjmQI+GrRo22Mgd6TC6hqWI7RhU5h2ml7iSTqV32F9Oh6zh
P9rh6o0e1pYBflxmC0syGk9SX15ux/hhnzzUthAGJUW9kB21Chw6pJFy8GoLUSRn3lrj2fvMnNX4
J5Li1X0LbdY2HWvZlmdSD98ru0LKl2ClAppmrUIGl4Jnjc0CsGg1QHAWJOwmmQvPufkIR+nnhyMs
mHDhohafNnTCY6AqzXx/ODgniHggJtGymSusXsASrc5JU/pIaA7GMel0MnppONfw1KYoS2KZO2RF
epmqs6ccs/Usy2x9l2Jhq+O58xpZmphXSntYbueZm7vjnEzLu15OFerO76j13LT0xJY3ExUNRNHT
C98xw1nGUvYwcyBggA0a85JI7NIlQ10QXGgWyIqLZhqnEqCX60TYTa+XL/oRov+Xfe3p6B+VXMqu
mJWr5CFCwcSCcIiu1JgKyyBQ0NgYJUTvP2IqVyWwx7mup1tqVfXaAbi5ZpsWYuptqOZTDjQ5ZLTW
3EFMg4euTnHRIdgHPClwr7z+O+1JTrckuagF3Dak5kvw7jTgyw7yNdyPVCRjgIl+SwiSx0AZtpmi
2Mcpw58gordOaxKF4pyd32OljN9Sw8+u14rw9XHBzeZG7XcX/9ldHWhAFSsz3YvAqGGqk4VxL6gI
Cxk8yACbvlEJlrNT/1AdykG+i1qDVRrAEnJA4Hx2X1z4z5VigjFusFcZBHcOQx1wCTJ4xRBoOBKY
0Yzyf0ixuYQXtRb9WjVK1GLq7QotX348vH4bKm4TLLMUl3RsUiHGUhdNoyMEa2CTA3WZgr3LUNFJ
i93uJGVZfTz1ygjwv1pLuK4CmG6qXgX4To1XwSbEz+bx6ccNRCUH70+XXizgUoG56TLHTyvgf94r
04mgZI7w7w1nRzCL8+EWkgwNSfhEBPnXgboMsV478CRP3iNsVhhsCgPTq7OlGA1sNxFREO1CbTD+
alCXWdKIofDHZUewfQeHb7elUGhMZBBMDtGkfZIMNh2NFdzgi0IIGFxHU2IuMqGi+ZDk0L5xw08/
n27s8NOcqNnSggZd6Ee311P24uoJeWabO5XK0lJHkHoCD4oNOPoQeonOEy6DgMjQ+/gPLeillLWK
a88KftxO82fPlkgbTIzOoKmDTYthLSCnBTQs4U+eGKG5jkYtsgqL0SpJhnV9Kfw4TEca/dsBCEwN
zh5rLXj/8I4FzeDyM8eR6Bwi7xSIsF7JmBecGYcx5o9mRK+KN+BHM7EpvPQvd+zQ24sVMA6lAUI1
iD8J0ndxkiEsphbmroaA39AoTE5L7WfD1AKYzVoAqie/78/76vl2ZEuN3kWFNjBmpJ5kiSAciHZZ
ShVzpMwV4NKc6P3+iAB07euDV2n5PrP+R7z6siwKlRCBK0kSPJ6goy8NVk6CF5EycbCnEOb/KZt1
EO+iVmC9PzGutg18UInv2vRmGj5wFOjNZoPgWAg0nWDY088nMH8sME7OqwN8pwqwkp2vGWXwx8mR
+PTzEoMXEwIBcSXIjFkR2NptlLzLTFmvmXPqnQ4i5yMTpocvRF47CExwuyz8G/rnzbcR23YpdkRs
IxVtptI6g22ekEGQq0whbDSpS9gJyQQLC5p/IFp+L8gxo7C7fFHr01JSLwu9fgWH93X4/Xb4n0Pu
cF/oW0wwQzdH2M5ghSkm7TsvfO4orF1BuGWSn+V9r59z7PMt76u16tduK5NbsTjwGfv4/vmKTIuj
NsLuHDkXfTJcyi6KjJxbFLGJQXRRCRoVlSGdUUGCYx9fJHj1ohawsUbUio7/p+H2ftvf1S0qZORK
ckM742XCwgz4FAaWdg6w1COE1j6ehf/dDX6MrKRcrIRWZm3nmCFL8pvffp6n7MZ9SfCxb4Vz3ksG
woL7BNsSdtbwRNIuKSV9BLPcJFxcyz5/RluB+R2VFr3errXoe7MP33Dp3P4xHIwW5+h9FtcocA0G
AunYkAXHKTxKg3BO8tJLx2u97Ei5GKwSZGOu14IUgtBdV4lf89Xb7etQMegSbSCUjKZTDpOFBF6l
Z96BKWeOeOeNC7wWoR6mkmCr114iG8wUDLz8+w7+IZ+sN1XlECkGMJkWHCfwE8EJ1xh/Sx06pazV
zGIV2+I1VANd1E8bWiLcLMAH13ePm+8TEEyV+iQmRMS2U1k5rIX0vvMw+TujjKQBvoZJJ0/E50PW
IvV8LdINJ9vtmmYfSa4qbH7WKfroOydZRJwzfJ6YRJewHoFTEscuc+eRQRcGreNs0Hj5opax4Qrd
aHaA1vy2BNOAPBI7FPLEC/ILa7xwTTLwqqjy1gb/UWCa3xqv+ka3XrUdoQefPo996ofnfPfYv05C
U2ks9i6EsESW5ssw/QS8bRWpMj7n6N/JOJwS+uAsLB6/pxNf/Fyr0wgEIHSSq5O5h69v4LD88rgd
7hb9g6UJ1DhRpg3iPHzqwDUinbbgldpIYf+h50yg5TOO87TO77qoBO/7hjbDEtv0ObovVasJcclG
wM1YR2hd4txn1mWPMGn8UibT1MlseMAKLa9OO3f4gCPiw5Va5PXRTPnxaClyga7gP5j9RMc6ZGk4
tiFFvAc2F1DYYC9jv70QvPIs6ZT+b1V0h+sLHVRLh+VB47+e315e0x/93Vsxce7rgACWHRNTOc1g
3IKPk7qc0E+ziMfBk/PEJPVOUgZf4Sx4euNBR/DqjTsXqpmWapv9Zv/U389j1dKML0SKuBWD2Scw
sh57i4ZOQOiSYIOXmS7AK7MxqmdT2pgalNlj/b1L3ndP+TVfoeATEvgP3ibFIwKwudiIRMMKzcpk
ETRl6W91+K6e9E6P7+reWj+2aek3vVvkyPr64/W5n+HCJxJ04oSlAQNFIbGQCKyqtQipNg6xQuD5
LS36ariFMNuGMIcerdvbl6fSSHgfmJNyQl7c8aCFtUZipyLMTmA5gJPJdUrGEAy4Htm2c431oLU8
wzqc5swuIW6l7u47RFWF66DEecKwS2ZL6T7+ofS8BV+D69RRrDrHyhPcqw1myiSBECKZ+E5QvRv8
BOX+InQDURuGhTPVKhcqCM/bfa0FH8kBDRFmNJ5O+UwF4mkyJlAF2peIq4oxbwMyuJw9e6tHnWCh
nN92UWugW2pNmYLw+y9XX+7evt4+7NmDF+6LJBzr/7vIHW5xXHYmEfAEbJBaKiO8Ih/UXK0tSaWN
Wnc+hx9v+IGOlS3yHjpHxTjF012P3AU6I0MQgb9SsIwxqMzoh7GxtjZFddNYF5q1gmf3e/gp4jmI
GfPgsJNfjpAo4RyYduz/rDGbRrLFBiius9j1CM9wiQhn0wHhU04QAuHlSgO9abx0vZle+r/f+uf+
4fX2Ydr1DL55kgVVNmMKFFHAjmH3WphDSWjPpVHRknYF6nK8hTCt17mZWIHv+823KRNstByPnPFY
UGTcbDPFAzSDBBayoxlcDpGSoEcov2ejVVKYdXdq+LE/8Au9Pb0czKzgcjyKB7daOEE6VqA9YF07
pyjvQmKMGUu4XrLJzcepBbhp7P6WXx/ikJE0oF7MYNfBmFuIprFuhluisIi/8CzyHJD5JX9YUdXs
+ZXkjUJA+BFZ5/nUVvDX4evty+uMKl2OL9BpEiHIw17MuLOKCCsgUNtl4S0hhiSr6P9jY8Fa7Frr
vqF1vwpbfhle++3IwEJ2bSgg3L/kY1sXQXTAokyIymE9UdiJCYZoLEZPBCNMfGC5/V6SY4Cn8Wql
Y29tQ8dVZNDEhe+rjEqNEexnI12rS8aBMcXONRarP2Pn8UQJZikECJlmrT8eyzyJcwIuvqgzQi0b
AcW1lvPupXsKqL0/RvUEwFUM1h+SlUusdaQUPmoUAYmzQEsjreGLw6LVeBf1g5vS3CyKWJ9evz0P
/YEEnBvEIBb6/hixLUvoaATLyR1S54SgChAxpJRgDZ8sZK1GrkS7IQ0X+kYucTULD2vkSEUPqwCs
NfFZK4kNXi2W2YJ/JYND/ypDvALbajiLoesM3+qoXyWUXW/AQhNxDGoz9iS4zbeNngQWvCrLwDJ5
juYpuxKLxS45CN+5oj6EfK51x0ecaE0AVys1rhuHYPDjBLR5m3UjKGzQIlgP/rfvpEKy1wRRg+OM
dxCWoc8LUY5aoAPeWt0HrNjwtWMqtkIu/KLt8PL99fHpZVbtAJN0VwlDClaJOwWWDPaFgFARTiK8
SGlsR4RSSSbBmtmPVn1XedR+p8AbjpV5rW68qLVQLdWW6PFiIUP/9PqGe9+IfbDl+MGFFDLxEPBG
y9B1Yp3PQnfJwNyAdSm5/hi050yCI7DP2R21jg28jxjY8nQl3m4KafTzj6pepSRQdl+PwJ+kYF3w
mGMGe445b1jNEuH/iWppP9CsreU5Ri65vK/Sfmit/hvOV8Hi3ePz1Y+HDZ4u2R376viJsUWgTtjS
UCKgF5yvzsbS7otbuGRiNvrDbdskz7EdYnf5olZLtHQ1K13vMW/SPwx34ze+RGoSW+i9XdIJjDkE
xAjM0xi4YJsJD4GZ0C46luxHTOe5CMc0PNyxUNK2lOz3++DzcP/4xzBHbYmSSpYsZW4xURERYc4T
hmQWWXbAlIM5sqIdWCzHWwhz3RCmX5JQHK/o8ZJFh+z2lkVwKCLSF2ERmDfWRoV9cgM9o0a0Jdq2
NfGHCfZ9tXkehodfwfgfWN4FU5eilGypHDRWRgmpsZmzJZ0VEjvDwQ4XJXg6eQEJWg9XSzOsI1PJ
CGugdMtGVmzveM7LlcLYuqQINMNsreywny1mz8Gx5rDvBhl1kNjj1vl3d6ATHG3T5YtKzHXfKPiR
TaCazd128/Q2PHydxdUMYgLcMxU4xf/b25EtN24j3/UVfEnVTNXShRvgVOUBJEiXMvZ4JpaT7L64
qMO2NrI0Jcm5vj7dIEXxlLTZVPRgSySB7gaBPoA+jEE7zmKkKqEijLQhoePKUJcQS8z5M6XkEjuu
i0WTCNblDUqYvGdz41CZBHmDD/fy3KEsfQKvnoCyExJuQYJzTHCLWe+5w/RKoOVf4tlxuvRJ/YlR
E9tpDwlRVb9rtnua9yntkmXExcqGFCuIcSnTEGSzCzXo8sJxDO1qnRLXempi0GM3KZHnreXe2Fdm
pFJ/Utx4Twgs9lTR0t8841looWOpsgw9fE4t9oENZsCgZ2CULFTD65vUz4lj7SDt4pRnIMoo5ijm
ToFeiCzHYRRvCrKNyb/lxLCAezwqLH43MNeqZ0Cjp069+exTweeCdxr9Fr1WWX7zNTbiCMRyGjqS
wVSkGNlGQYgxK7OUMGOdOsMWDv0PZXAobzdwn/ZNx2leJaVc/fGaX8nj8YL31SdgP4Chlln0r0SH
Q4vZ3IkDYji3CUla5mO9kyb0XPVAn1Y1337Lt0dnT9DccJuPM6IzpUKGBd64w4MkB9A1AUUVbFfC
k1YAYK2TJvBuIT9Yhou2UvXL0qctyGDWFrsG/KrYgff/i7rD8HrAMBEMT0OJNqFlMQV+zsAYAEkt
o8uS95UQBvSO8m6dBB11w0bg4lR18rft0eNIKq8j4T+vCIME1BRrJmHcIui9mDgKE08TYCfGpCri
Z6LV9kOuRv5WE9NuVo1I553jDtzkmS/2PsnIbuaHu9iWKnbXU6NAqBNQ2QnuXBjFw5j6IGyVKueo
TS7zk8L0v+4AZnjMO4+NmtjnPSTpqsjH7G27Apl/KLvla7uylNBUxFjdHneYRAJaOEtwPyEzWDFb
yKi9I3vspAm9x+dJ51E7XyOO4X5VudmAziaIP8NPIuJsyk0oiAGbD7M2ggiRwG6UNbHSWjFzLuVS
1XETs26YPV40ncS9928+d6wvCQv6uzeyi29e3qWYxEhhsSQYKocOOJgdThjGZApChp1x4av6H8rV
W95u4p73LKh83qfhHawgnwN3jesLUwZ4UxP/o5qRUkozYkOncZ9Fw2BbdAFJssjw2Ik0MfHFB3Mt
aOcrxB2ebNL3ZHroe2qfmtrdbrFP8tlLreQdFUVYnSjUkYyJKDMiVAoIBN0aowlAy1aaRWB9Oanc
ZV5RHUgDnhWd51p0dU9T9RQD6PmZkthXqf1sCKM/eQoLPZEWDsCOpjwlkoCowVKpAjQdkxoTOiuA
SheJLLvoFOwAoZ+yw91RE/VZDz28nYD/p89JORyVQy++m5RRMHBUmGUYxgRGYxhnsJKizPGMq1iQ
y2r/Hnvvx/x4v4l7j22rp2XRniMDWWIa7YPJpr2e63dbrY0YUy5UwmHhIwViSaFzZGJjK2KdZeJk
Krhjt02kuinp4aJpHxaMZ/UE/8r4Ka9M6VmXpqB0wrBK3IqMsdwgw4ATHmOmEwfG90VTvg5jgDfN
erP7I8J908K0c6Lf5uvnLdj7dR8X5oyKucVxRd+nOIYFm4AaRZPMERAGqREXueke+h4Q/OXdJtZR
1ydVz2h77+7zYovpjDDJYL06+oEAol1iHGehVDbDzNqwGjlMjMglsDJjaxJ20a51D5iBo5fugw2y
5vSpS9ZctRNlYnjybFUY04XHd1HnHbTY2GCIvSUEcz6DLRcnICKiFASDMCIiOv3LRnVxr4nurGcF
zOe0J5r6eVXYWcXY+y8ozlgU6Rgzy2CZU241BWsL2AqINInJ+axO2F82uYp7TYS7iUjh4lNbZbx9
W+2X+83b7KVTjxpthjLGs/iC60ACU8QUUFgCHYUyC22cSSyEQJkgYGXZy9bBMNjGgmg/1iSxJ0BX
L3j7nXxx3uunoMMbQVkqwfAFyWR8+QaKtiJoFhkwpBS0JqLSv/9g+suAF8eXhvtGkUqjQ1OncObH
xXa62G52SFnlhxcLLTDwxO/ecpPCu7FShSlIM3Qsylh6+hzi0Gk/ooe7TXR7/JXxYm95s7f1cr8r
EqU9rIuYoWaWNBNLFrEwY74QlcVEdMyEJgGzWDOniWTns6RhzydSpOHtFgWij4LKElj5DDxV/jnl
y5YU5atF6hSRoaRYlkcJCsMtXJgmGaexITSR/eWr6z02UemJUTWMTJUsUNlM/zs7ViJW3m/HSTB8
DNEhzWKMfbEyjCggJYTTNksV8PVW7fZ6L6MmpFkPeKorNxm/HZ80yrgoQnRVyCVCfsBwW0uAfOQR
DEusQYcCc9NQMI8wCelAUHS75yZiWvcgZio3/uRluV7sFpPNz4v18o9awVI01HUUm0RhJD5BzBIN
MoIlLhRKEk0jGCHX2vHo766JUTf3El6sirG/FMFCYb5bH6Ntpbce/SZQZKhLBcFNIJzqCqMiUiy+
lRhLqXQqcS1LtttjC6GoD6FpS5r+9nV2VXIs0DXy58Wrd5I+qgkuUjBvQH9MHdbcxVSVsXRRmMIS
BCFLKI1Pbwx2eh8KyGs91qKmbybm1fB2Um5qXJCZi/AkRWF55wQP6RTGdfIQWTqF1ZhI0dpZG06r
ieB6RpRjIu8Bl4HxnfePBUOiTL2rI1wY3hNKksh7ZEZYbxu4gw5NlGjMkWBhgcAaOpPayPc9ZIm3
fGON6qbRxYtVBNEKtMxlrZq8d3ZLEpHhWTyMEm5LK9RTMM1Lyq2koOMaxlq7krVemuB7YqjgIuuE
js6SzXzx4xZ+9mYGo5nBUD5AKcJjhthHtcAfB/YM00KBuLjMcaQBaDBpQO2ZFjmqhxxTOQ/eALPI
t3b1vAAEOrkDMlA1QExkYUawVnJCMCWXsKFIrI5jLMbF/qncAT2INgntVuuBi9NOBYaXt/XPy/Vz
iSty2SJxvU+L4XTGjExCQjASU8UxLEHLQ4kenZRLzuPLnKmbQAa2a5oPNYjpKUwXYT2Jp1lzd7o8
aCxceE1x1i+zWFCGkcrcR1Px0IIQCWMegQ6VGA7i9p8oFlXcG43S38odstvNfPl08LK6f3t9Bbgf
gOokX612wWs+XwTT34PN/gWW09ftBvObgRm+z7fPC5/baf8CJmF544MfrX2++/kRrLTHr8v5h4AW
17wz2OMM/u4XHwJSv7hb7B93++p6E/C57sn/1z38qFEFI+DhocsvzOs+eBxPO/83mKMfbgN0C62P
Lx5n361XvwdofuCdzVNQHbp+CCabfb76lnN2Fd0G28VuOQdh9i35+I588z7Y/Yr8ZP64eds/Alpv
a1+mB4DNyxZYL+qb96Mft8t9Pl0toAMEXnVLr+R18CvcBDF16PMEjMOlOhzsooQSeLpPf34Yfz95
sDfw7fv0enz3KRiV/yf//pwON7sf/8ffTe4ePk2Cd+vNOpxt8tViN1vM3wejb4+fgQ6qu4cvo75V
1GlGmfl4+M6wzX75C+YVnGzzGU75ng8jotEmuQ4wSyw+vdtjIYSeNtRo1Wqz9IzjxIcaQ6o23LfZ
+XJ9RdNdf6MaHAVt0MN/Dc/7iTfwYZQd2ghatHkYl/h57+S+NkZUcGSrDbq59OIWVXACEYxcGVwE
3BS9/4sItxZVAjjqbW3camHwJz5M1Met4NDju5PTNjrSQ6Ng9N198N14EjxjTBauAsBx3qKJSVXD
TQ61eVdUxsBZHARaNek5fA7PBMA+8vkcfu4CGBzcVq4txfcjsKDXi1Vg8Upwt54NzB9TJ//W3tzc
JSeJ54Jd6QNaQlRtnt/y7Tz4OjRP+fF1amjjqy4Gk/wZhoYOTurGMih2nYLrm/ubE29Tqvq0+Vyw
8ACm3NcdvFcsOXluid5/uVnuFwUlMzzE6EWtyQruJzb5GFw/2O/dIGowBdhtbenc74ERnGGQTF+J
+lj/cPvoR9tO0pO8oJqeJBj9uJiiqXDrp8ZAE1CCKzgR0PP46OzEnsFNVPQwKbANvpr4YXwzGX+6
H3o9pjFuj4/jW3udngYkWavNzfjTx9TB8hkcARahgCx/cGwzSX+anCaH8Gq5MSmxzcOncXLnTmIn
Javj9uql4yBTK/rWV/S24ozBqOTTr8WSGFoJx/eD9PwVETe5m9ibcxKZXdHrki8YUbb5V/AKHHfX
YDwFwykRuhL1NqM/AVBLAwQUAAIACAC6iC5KxINTa9BAAAAtFAEAJgAcAGh0dHAvdGVzdHMvYXBw
Y2FjaGUvYXV0aC1jcmFzaC1sb2cudHh0VVQJAAPvynpY78p6WHV4CwABBPUBAAAEFAAAAOxdXXOb
SLO+PvoVXJxKyZsgzycDVE6q+Mz6rGO7IiW7p7a2VAhGNhVJaAEl8c37208PSLJAyGutc5OyfKEo
DNP9dE/3Mz2Ahps8i2VR2Frzz1/Nlx/lIpH5KJdS+5NZAqG/ejdRedc+Ff7OP2ez1VwW55+vLz99
CM5/OW/2710kclGm01Tm9mEtvc8yL9Js0VaAel6WSG10v5TNpj9MQzeY1r+KyvSrPAN0OajRblom
3dyXd9kCbDCZIf7qfZTFMlsU6WTWEHfA4k+FzLULv42JI9zr+VEpz0fpvAWLICx0hHXMNCxsxGxi
Dghjmo5MhHrXQ63Lzg9RrEHTHxpGA4wHhtbH/D0mmJwB4GWWl3u9MO45i2xxP89Whfbp0w5G13ew
5yJHR4IinVGAE5oB0v3AcEIPMe5wp9frKeSa8y36IrVhuoil5mZZaWsc7EZaIeNskRS93vC+KOVc
u1iU8jZPy3vl3lLGZQVFLiJwY9LreXlU3MlEG93lMkq2SBD4NS2WURnfaX+v5Ao8FWfzQbRczuRg
HqULvaw69HrB91guldDmOAd/eGPX8ceO5wXDodYfXrwfBu8/n+2cr4JjO9i/BR+vxhdXn53LC+jk
+x9Vr6jU0HfU+KNoR8IVGNTQ6F1/vBkG46vr0UX4f73e5w/aR3kLZxbalYxyEEaR3dP1d1pP9RiP
R8Efo72kWGvCiEgTBh7pOwcSdUD7U9MoQb/9peX69/P823dt+OF/vOvfO/Kp13PAZWkcVXiHSxlD
MsUwKNMsn1cH7Z730Rn+enH1XhsFw5Gt3ZXl8ryURVmcg7vjKL6T59GqvBvclfNZr/d+lk2imTbK
IzXwq+kUwryfy68QZFKL7/Jskc2yW9A424TCmd3DJoMUYgziaoCQaVBD88IrWX7L8i979v9X7XMx
nU4tQ0STZEK1kXcD47VYgAvFNJlOyASRCDwxHF5qv0ag5E5Fo399FTR1McrEEboig1t7uuiEWwbo
ggCE6CvlQJtCoGLrjSZzoCXU1mhg8VSNJjWnlB7UCF4FWsKDbkWMmuzpplkWmRxUVJRRXkI6NhRw
ip5uySHfWShmfM93tNt3nGJGn+u7tcZHfccZ4/iIEIzN6cEQrHyXLm6rWFzI26xMq8RqazTQc525
0dhyJjvgTCY4eaYzNxofd6aAgXtunERIIrJnmjhgmoAJ7rlxstb4uGkWItZzc2ytqDvHLGziZypo
BGKXAv5cC9Yp1aUAM2aa5LmBHVMZi73RR52jjwEKuPOZgb3W+NjoY2YQ8lzfbRR1+Q4SBz89RYWR
cENqHpQ9Fd0kchqtZiU4LfuSSlCQ5dGt1L6l5Z22rCvZ88lqkcyklm6r6GfqR4YWKqVKfwoVVPjr
aHTjVQCGa/0FtMEYtvjvaFXU4g1VV8PHVPXq8hHKxnU9adtPrB+h0Nxp+V1OvCyXXciqAoxNMaSa
oa3Ps+2d6spTldKvWVHadiHLdkP/91Fo2x/l9KbM3x7s/u7VqzPttQZFfJfgQbxc2tQ0znr4SNRo
gjA9jPp9nq2Wtp2kRVQUWQzzl/SzGArJRXmZRbCy6W+7No9XaIngWn9VpjMo8m1h8LMeOdapKKHy
n5z6n67DfQWAGS399Cj9HEdTCyXaARtBc8sZlU6YF7oH6c7mAIG1IfyWlpfyNorvuyCISWRGlCkI
TV2wugP9XYcrFBhov99sAv0mrP34sREiqZhqVZCGq0W1Snv7NUsT7WHoh3GeLsvgu4xXlcUZrOy+
l6/O3tm2F81makH3ew765CMBvo60JTjqMoX14QJWzVHxpc4Op8zmaTwsc5XzsHQoyldvIPfL9cfB
GLTt/x4jQPGfFozKRQbV+huLwDcCn/WMI8PDmkytqNM3j9q+gVmbW5v5uC9tW531qraIHLKIEa0P
RKICzTzriYYx/xt9jWrZDzbtGkPjGCUI18Yka4bcGFWEeTb/AORYs2mlTM2A/YdjFQVBkX7WM4/V
i3m0DrAyncs8THOZ9MdjL/y4Wlxm2VJdVch/eaMpz/6iVFO8qxlCfjCf2xiDbquhW2kMM5jp6kVu
ezox4wmPoynTKl2fri6vr2/GF8Ox51xewqp3fP1pNB5dj53x6OJD8LE67Dreb+Pw05U3uri+Go+V
G6A0QMcqFSbVdgz0s8rEKm0F72F8rDySRB3yCgXPMnuYHCmPigTvyoN/FDaT4R5MFsfJIpKa2q6k
7aUGBc7oYbZ3oay7AFhf57AiZjAtXy1GEki+KGFCH4+xbU+iIo3HRUURb+O7KH+jPTSq/4/LPErL
omp7t9sIiZQBEWV53aS9WzNMFeSUAps38algI8hgMNnyI7FbFra0pNGjXzGY0lyr/aWKcGJR0qUX
U4JAr3Gk3gmKcauHyp9u3dio5o593YwCq8DCX5ulk+R+lgzgI508VrCZE8sgHMqvqshVsrcFGbar
CgsEFNXlwPEXmS/krClzV5SJEswlgbhUZeLf1fm5LFd5FZuoqnwepC3rKq4hbreSpBNhcWFqmxPH
3/6uvyhhxKRVpXKUOEEZru1syKJbi8mjpafy6bpRn0cLqGLzf+EgqPy1L9XSZfx3VjQcs5HeMWoN
SzDl2ODaeHP+eH6bj9PF1+yLVIGJjY1rni6QJXHSErh1ECdbB9EXFxLsxVnM/43FGKnprZDzb8Dg
4yK9XUSzLnvjx0PRNLBlJGiqLaJFVsykXCohlrUxM379eoC7SW1XCjcRrS/bbGaQ8i4t1hENSzwl
eDzN8v7u/KOufkNdtcqrmfLtLINCVn3sTkRV21s8e6Oq9/XfrDkfQXVAjyyvZCLlRJvMq2nOtn+V
EZTZRRwBSdzKHYyrRQqkNIaTvrzdnj0sAVP8YQU16LtXzRn1eIuULdUEw6FyHI/nSuoY5m1pY0u0
F0ZPMSwhrG0YuCpe5eqm3XBjYlXrm22NFLeXQk/QOOVQIW81OsX9IlZ1+dsGiLpQ1fotZL+cVYuC
OkzW5VCFzRKwXtyIgtodE95eiTwFGoOF6o+AFizK/P4mg9Kg/xxx6zLm6FWInBqTpC71dwJpvE6v
8TLPvt+/3Um9FYhdr7lA7/MQv3mWA3+B8O5v1ygWrC7ncp7l9zYxuKiXRcdRs2UlD9Q8yZL7ikpx
tcg5UhKOHiRtazHDrJYuRxI8x1pb0AO9G/ZuTXM1/PTxUl3zrG/u1qvyo/kflmiCaPNIVQ7FrSrj
l13k/xRBdEK3glTtwVsXpJ6wnmGYsN210VDmX9MYyun47iar3EEwaZH0U5ZcXMYdSy7KjRYv/oAl
V5P2uq68Nq+5ChQZMI3/2RrOfj2eZ9o4l0W2ymOpDiiV9l/qYgS4oclibdht6FISLg3l3athHU/j
OsaqhbaqSys2+TFJZP64JLK0H5tE4sVVheaLs9h6cRZj9PJMfnkXOTB5eSa/vOsW+OVduMD85Zls
vDyTX17thV9e8YVfXvVFXl71RV7gLaaXV32Rl1d9kZdXfZGXV32Rl1d9EWHb9YNAzqrM1K9Q4tHD
w5hHOQIlEwMcsVSX8e/G8Vd15/BfeiESZMcL6ocr47U0YYjWBeR/vr+RTCMiaiNr2zwQmFa/t6ke
f0p+B9n1U2/VbbdXb7QkW01msrpzhi2tX3dLF7c3NaTi4enPY+8NxiZFpAZzE+VfQOZlpp5Kg+9b
WNFsdn8xX86qWxvr50Te1H2GcbaUyWU0nyTR20mWzdRzb9vn8/ZP2Twa1zxFPav0e1re+feLaJ7G
nroDqX6xtfsYjoGR1n+AWFlsIHb0TUOBo0QYWoW1Ur4101V3BW01sJ8WZTp7W7VeApR3/e3XIxBj
3gR8Z5v/4oZjZEmcNG6DTddP5G2+v+1KF9uusuwBuHr4cPNdGbq9pVw9INn9MNQPEPxuc7tM3V2E
OMiV4P5Z/YCqqR6TbYqvhpUgevztz0Sam0Deu4u5vSWHgc36GwdGMxsLRo5/TDKRk3j9uOK3cjo6
rI2/xBuAxDxR+InCTxR+ovAThf+sFG6dKPxE4ScKP1H4icJ/Ugqn6EThJwo/UfiJwk8U/rNSOD5R
+InCTxR+ovAThf+sFE5OFH6i8BOFnyj8ROE/K4XTE4WfKPxE4ScKP1H4z0rh7EThJwo/UfiJwk8U
/rNSOG9sK+KFQxUl5WCZp1+jUv6Lx+SRqHeUmsl4h8GP2WXDwozXmy7WYD7Ue7ZVBE6Ofzb+4LDQ
Hzcs7AfvU4G0eP2Ojmpr6T9MY/2yDk1tGyW1vsH0SVqe2T1Ny6Pv9t4rMxAMXD451BAfakh2GzCa
WlMSI6SUJOmBLsW2QdnG40SwyKq0L/cbjKpHRwNXSrTc7FCiEj63GrgSEnEeK1kYdQFWDXhXFJ1w
JKiBlSWYHLAE06YSalKDmaqBHVLC93rw2FRK0mWjZbOHtZZPZy3tGBGkdhHNO2BR5ZXe5frVHt7N
J3v9jp0gz7O8epnK+lUo256sN1K7+Fyt5pPN+3sw6/V6brqI8nvtYg6pVNi9zWtPvm/feKLpWuNg
ogZHe93aDLOPzrS33HA9YTimzj0R6pS6RDcdk+oOczyBsQgc5L/75/cM7aqbGpN9DHBwOhXaa8ii
9Sa+amfS4V06X6dWhQbRkIem8HSTB6ZOnZDpbgjfuBU4IfZ9l/CwC80hqU1cgnXgklYXrtVSvfpn
FxozgjCglOk+CpiuXouiO6bv6AH3fc/knAjkPgHaruBddBRBPdhGRxOTTaf0kUmyD5XYa+gE/wzw
gL0GoB5CJrIE14lJqU4Dn+kOQUhnHkMBd8KAIK8LaFPyYJpHc6l+IXW+fv9Rce60ztnFz2gU7eFn
gkxa+OudvLtwMx76pu8GOnPV2FNi6BahQveZaQqBueE4qAt3LbEbb93WwCljtIfToCzex3nIwW5g
hSIMXN1jmOvUY4buej7ReRAEDvg7CDg5APSwZ9eNu1DFBO0HrIhVwE4Obo7egVe4XHDwp04chnRq
WRC5jmHpAYb459wJ/JAedmwt9zH31mf0aoSKaQwpuPWAfHvQQhGDGUBtiqv1qYEGhAA804RcoqGn
ex4CBsKepzuex3TBHRNxL2AIKwZaFbnKpXPVe0eXSahF27rUQa4or1Wr+CtZ+nKygmXB7a3aJL2P
B6onVl7yLEqwgUC55QEMQXWwIdQtE1MzMInlucpL9Vu5zi/TSQ4cfH5T11bhxjvFeZeebu91ndmw
jBvxvmUGl4qwVImSQsH/dUA2LMUYmBEi7iCHO5A7jqVTwzB1MyRID4nwXN8hBkTvjjfbUhr6DQN1
6BfWVNb61etGclkoezYYiKkwmDRkBPs6xtwHquRCdyzH0bEbuDB3I4dWVLmDYU9SE4eIOnCYtPLD
7gjP59kC1jV34ItqXMmgYm7XNAQNMHjDEjoFAtRNn6qBFo7HfRaabvi0kd3IPzSem/Ym+umkA/00
2YziZlfWbDFNb9f7hG7cCSurAUMDTMEM6geu8ENLN0wEE5AAg1wPZmqEYZBNEoYoDHe8Wos9f1RB
A6dAeB+nGUctL1dVx8X1gwsglQe0TiNmKH87jBo+B3gGC2ACog7WLYao7nsGDQTMTcTk+/7ecfSe
il0vrxsb0K2I7UOPmNmiAHcG2ZZldXywgQEdqn+nKv8ZEkTRN2SKD0FLPEDtYku3KLU8gUyBOH4c
9fVW/gHkDyc00EP924GeJxV6GKUP1fbReJtiQgWD4yE3dE1dBMDkVE2bDoY5X4TUYkboMc5ZM8Ua
Upr6hdGhP257T72KQn52wodx5wM0oAQ61l/U1IhhpqY80D1sOOBEmGosy7N0z3dQYAbEgULpKam2
1tXtx3Vj04bY2rdhQkUreHdep7HekbIYOKMhhLAQ0Bl8N1AkaglhBRY2dCRMKEU8x9NdHHh6aJiu
52LiENd4NBa69HTasttnNDxg72jYsHXCOia8JElaFUwh41X13si+qLKTC0rFQM26YGFAAs4hG6FI
hKm2GiiXuvDhYhfsFeAJ+qiFw7X0bsib1l3cFMX7WUopjzZxPpdxBHo2cW5YxoArqKEBsQ5VLFcr
AcpCF1YofqgblsOpF3iWcFozWkNQr6lt0gEBar9u100frm30jdqJHBMDQPmOw0LfR5BwJvgPwezm
BgZUC4brWrCCwSEST/Lfw+WTxz35cF7ToAR1GJTErbi/XsqFn+YyLjNYOParV50qwrZUtFPsGMLx
OSwBPaJTjqB4MHyhmzCFh8yFKtd6PNob0rvNaJzSsiDpsAA+mxYM76LqtTZQ5RCYD2vyXn9V4+H7
xMTY043AcyGeQ5jjAzUFWW5oGVy4zDGfQjxrNQfGom5swGeoYwAYYpugrt7/uQlpoeLZ4sx0nMCC
ctyFcoQTrluBB/xNHAFrCSiHmeicx3dEtSDwLghiA8F7/4e6Qj5wNjAsIAE1iYSceK4FA+9CnQir
bYsqmjN0E7vcpIbgMP89OvCqgn2fR8u7ND7Abx/Xe94W5/tAmkbgDiM4TVqT0HoT3uB7KRdFlZcP
FbwX+pZpGpCOPthELfz/vF3LdhtHkt37K2bZm4Tz/VjmU6M50lhj2Z7Z9cGjIOM0TeqQlLvdXz83
qwCwsqoAsLt5eiOSqFJmRGVkxL0RkYVMAs0IQ0BHTnqjorgewaeDL6s0vatRQ60XHMx6yDGM1PjY
7Q7rnx4e7jYPfzurYARbMbXitK6NFj6JAgMJ+AkHA+ZmvXPEwvkLUbiM5fqmHE+xrMj4jkaJDZvz
Dny4PxsUlv2Xj/Hu0N2fUySMud5bK02TofDRhjqwOQqc7TQQACR2JQLAep1uOpN3H5YlHm4/HK1p
JkWrBNcLSsjpSpze6jyyoyJiTX1hR7iKrRjciPU2ExqT9KxkYYV5jS85Dn3VihqRt+tuLvJ2Z05M
4W9ft2dPotVK0VVlW0omJniVT8kM20cosg4cRxhlOC8uMbvMC87DNULsqJkLsRP0LMTT3fMLGGUD
YDI8Jha9JKwEgGdtOPGp+jTr4OQk0/jZxujxMO38YgEl7PSUzr+rX0o9ZnlBOmwMge0eAOIFUAFE
ACKuDlVn5x2T9KrhYcTlpcKFRsJO2rmEe8cnlrWFfX47AK+vaqiFh11V46rZBC2AFMDSTc12IM5i
gwDcKCNN8Sxw/9o0w8/vLycWfn7/XSueWJJ5s5AkOQPW8jnXr8h5wipzLlYVNNQdcvq9LntRwXiO
sBHB9kXxDkQfpCQpwDTsG2ecvxlAXg2QT/JcuPF4daL2dknt/cmY+wLW5ziO0SdHxoV1Ce6KBJvh
yHKQxHtfSAk5ZcpiytG/nSNrhBirIPvvpp2oAHwx9WPnaQaeZikHwoMyg1djnK2E7JG/o9LAzhAb
Ea2wTwS8W/XXJZVCeQDmc+nVFK2f5gpL66+36sgFdZjUpxUpD/fPn9aPT93jeUGU7SEeB0h1Pksi
sYWwc1hN4xjYXiopAuNpW8q/j5Q1wGYq9HetcmZBY2XPCPG3r7+eOU91ZF6GwqMGtaj+XGA/uQQ4
rhmYdMaq5Vgm2bPzCO3EeuFRS7Wf7Pn/fH8GInBV/R631PS2IjSedZQwEw3LFxIbwUWaSWE2CJZY
Vvp6JieuHzeXcNTotrMIy3eeLzfqyYXsZP1w6tJ6EaoZyboTVAVXtuicNOVEgeZib3P4LVPRbxQI
9zwyK9I/rddwrRFVi4WVACtZyE50v3wap1jqivA+xrF+RUzgGiAK8uYAyeGECKhNwj8uRFoSo5a/
PsHy6WqG5ZNvlVB2SYmzL6053MNd9/jnl7qZriJ7Vi0WSKqoiggtXI/V1BETAHilgu+JaZnvTAds
xVkvibPuJsv//ge/3XZ3Q/8LnidVA/UdfqmsQbFQDJek2JpeAHuHP9SALpRGrajS2DKveaLNRJcS
gKNbGmXsQgoOH3Zz9lM+n1IRsoc9VnKPaKsJGAEMonBe2WQhWVntGegPK/wW6SmfL2LU0kAf6TZz
hCrdlp182THV/LS+39XdfCpMgG8e807ca7gOB6s1tlJOqogFgiBK5x6ouRLstSR2M/JYNEX3cwKp
GGN9agc3129fuft95c622aeqscJBRUuYU7R6ObAsnRihgcO0BdxcmeDWdphGAtDVuQSqm5Ypflz/
NeJhP65Xx28Xx3oyV73uUMBh0jkOFI04DHvUGdvFK0YcIDTnNDM8pfmCjoHU99MZvu+/HhfY6PuP
6+0Pn1+uN+KbzTwRoyw7A//x974BEQ4I0JYoQD/AS6lCmJAOwcpHoG6pDdheATeZ5KFHw3zXzsQW
pudn09o8/baip+lFTzpydR8ygmUELB7wMwk6B6KSKj5Ewx3X7dyjMdq5uVmYW6wX0PGohvDCGLOS
EdgEpEchbguKB+ASfIiVhqfgnTAs38TBN6oHzS2t9GKzIL2dpk7i3cO3XXrYPp0kB48dKkuqJAdM
lQh1iCxwgYaEgKCitOMZ3M0UQV/FSU4zXNDgdLmRHrxpLv1GnLPC5eHp7s+7odvzbH16xWUvuEvB
8gTwKgOwrAIkxK4lMVNOi6u9D5PU8Hy0RpitnJcR1FbxkxM5eqH7h+fD/o8XgEr7Il1NQ0obUhaS
0GKA3WAViCOlkKiMzcI5a2K85t7GA7eCrRd2x3atT4J9u//r4X533h5qVdcVKCdImxXBLqyJXQdp
gpIkwiBLCBlUQCxKMx6tEWNH53FK7bScmNpgKXFccKxGx3oEhh991d/qjPmxZXXt9JEO6MsrRGGE
AJojdnK8nkCfz3Ehazu/sdVJzwOHptVtNzWBXw677uF6yi6ayDXDagetavMSnDbPhjDto0/VBxR5
VaXxFMu6jO8YK6HZQtZGM6YnrSIf1vdf/P367o+nQ+8GhspQ/xMKMJtA10Dnfa0MCVujjpGeUNhQ
kgrczag3Z1hjkS6Q5dEdrdJsSem13Hf7pe87/VMFxxWI1J3KrREiAS3VMhgRMUSwSR5JThGbRmcJ
xnO1mj7fHZqzOTrSopu2Fv3Pt/Xj89+H7iI2oFFZEyp9LSZmbzTTRIvavhEAm0PtzpNGh6KTKMqG
q0vwMvjyw3y53ogu9mJB9P0UgMbayfpjV1vYusdjL9tLOcmwmo+kygK/KENAYhOerEVYdviHSmaK
DkKzFF4VTRbmuhBYFu6caDePMdq69WR3vOseTmZ73uFMsZV0g8kka41iCI5GQLHq1x1LgB9FewTQ
4nRwr1FsNM2FhOPLDWM1jNvMPVX98ITQvt2fTZ27vigWWHbSkGiMGjIJMG0G28oqw7RsofmC/18w
b7NZQElmJ86lrsP2W815vtSZFJ5dfXzVrq1zgYGmCFt70BK8io34pyAqsqQSV9FM25Ka0RpJdvP2
Mny4lRdzYtXe//eD/+9RRoyCUFenJ4JQUSEQmRJrukVU/hcZkYIXL1lKMd3GbnXsy7CtXm3l36ol
+dXpSdbU4dBmebj/8vPz4e4F+Aym6BNNPloPVoDAKagxxDkwV+dzhFsEffCTDqsLQ47FsnQzT1NY
urOTTqXm5MCfBJe2d6rsmKJgMQpbSiA5GIAySRPxsXYfGmWpZ8pH6q951vHwrXg7tySeO4n3l+6P
3748Np1oFlE3Ap0TQNzqizLcqUhgx85GuNmgS6aLsozHaoRgbu7jLdvykxD/9Sm/eymO9CTTcl9M
LagHkWtRyWPZJOBhFNJzW5M2sfzz/VBNIvJl9lborVgSenOyt3fl/2ptu9u90LvezLCKIgDQElrz
rmBYFK68SMJCpE4Ua4x5oxz4RIJGerfQBlk/vFK7+I8/GW5BbmpQ6n+pJA0Ln2ufbo61KMwlB7oB
d3AqONBVRKxg/8VixfiOVoUtXVDh2MkLfX98/2lentfRZR2BSTQvtSMNxuMzfLjS0gvFaGDGv2V5
fiREK3y3XhJ+N/G2v3Z3X2vYFKv62GVNZQuVvAQnIjT0nSWe1ZR9JJI6qmIqsmj5JvljTH0hdYwr
jTLrhWw8Ppwq8/S167a/rh677cOX+0NLLmrj25An73/WmkpW3sG5kSJrFoTXloqQEU1C0pTZGKXK
b6Hn516qH5eEahjP9LbJE1jwYOvaVdyg1E+PD88P24e78G2/7x6xsDVpKkVfoAB8UNGRlFTFqLVA
YSQjOZeosqBAz/k1OKidYVmV9p5WD7Vf0EOv522Ln4ek4blerFnl6zVWKW40YDsdEkcCwA4MmQUi
eabe+cRztq9Mpx8nuZhQP15vVbBsQQU3zdy86+67gbiu7z4/PzwiGtTKQK+LGACBjZYziZ0muavN
wUITF3MhNQ0Htm9VfC02nU11CaPObmxU2yyk5+1Ws1Oc/P3j4emMVpUWfc0VFIfxYhIpXmA5Ss3F
B1BRmxBxAmc5xhsE9JRf727upd+7LQZYvq2Vr9Frt9Csiw/P1bynr4f73bffvp4jqTP9AlEHDG5s
IbTAC4oiwYqYhoswqYB3Kh6jbRFbO9JYCKc284frjJ7i3/Xv4wbGwWAYtucKNlOtX7KQEgXgVarW
+PrSR600Gka1tAr7/AbZ9L/cal8c39GoAFI2V8Guu1lP/2PX9ym9/wExnQ595tK4+kiVSY7Hkkk2
rKYr8JvHfgVYkQlPw2njys34eBz8cjw/3tAIv97NXajb8Glldf1td3joVfD1t+p/jgrUnxWSeJNk
galTzUOlyowgjkQSwaC1TJQidt7UoB/7svz95Ub6jViSXk4d5yyKDBkLvuIr01ck+YBSgof0jhJw
OoEYzyKxptS0BcvYzqXQ17V8L073yvg2TWe4jVlQca90nxlqrcv/HKEUQ2gYHOrwW3+KBTTQRU90
TKCsVAEvRs4J5dZ6rkwcduyrOnUwyZUV+jk2wvfJipnw+2kHVDo8/cU/bg7Pj+cNPqzL0NoJiszB
NJSojWwcsMQbykhJOamglKA3KveT0Zeln9w01mINxj/TYr3f8HnNezgPuHL9CRIqV7JXQEjGChxk
ShabG5uB2KgtidoFzqnKkqVbucgLxwLj8Voj7n4nFsTdLfSfDgeMhhqs7i0laccDrJ3Utic4Ileb
j3khPARvwNJLMvKVDYOXTxcdL06Enpv5hh47f1so122fu11fgTkjiNHZNyl04EGAl9YGOkQ4Emht
NqWFidpPRyl/LaKbTXQZ2M1uHSu3UZTPlcOHU3z3EvKHkF7PI7H6/45/1r/6QrllXCUAvMIql+Ua
fgphr5SYAmaKyeh/B7YYrjWamoVwXj9cOIAzya4jpNgaT2yfE0qIiFg/JnltWCsgISVZkn1MAIeI
6Fa+TfZ+4cZGH7eAzDdO8xPbrUc4z+mj0zHQwqgIvASShEUcsTEQ57gnmemQYqDU0+Vi1ctorRAL
AGOzpW4BYKT187ovadcdLVlfO/PceSUdI5rVJmCD+Gw54JuVOdNY641R3gzNdeArZz9xtRF5pxcs
frdz+25z7LABH3384+vzw/npib4NuO7hoCJV8DQEYtN66NLDvgMEhqeE7XsR2YVjBZNRW5F2c+6/
6dh+odf16WQzQyKnHO66D4cnuHYOl96Txx7js8R9MiYQU9EwIhN2JHeAn4l6wT02KYtv1zPaynL5
WMfLPY36ezsPxZt9PVssjkcr3t8/d4/7dZXltCbMrGr2XRohhcyMwNUcc7SeSkMSghfl0md94zjC
P+Jw+hTha3pNZwK3+jq9oG/fMNvrCzg/wM1zPvqY8wVsTaEIIh0FkDXYxo7bWm5mWeis60sS/kUm
0aSqWjnGKmypnbexbOnmnKD9dP9lkp/l3jFTAYasm0b4hMDHJCO1QzA7z5IR6o3ys+fJG5GZmCc4
8eH5AGg6rL/cPzw9H7Yfu6en+tKPydkL2h9z5lIEHSQBT4a9KYU1iPUguPLw/hxx3E3aYa6P24q4
m4eoLedTeORzZWl9LZAOdQrpuJGcFFuPyVkdiJeKgt9HbhkIZ/Hy7Ta7zxfiVW504WJJFyUnZY7f
+vdxndvFzKnHQxlpQYyrTuA6QkYAicBg+kpzJhg32lxtYRuP28q1kFrY8s25Aeun96VMTFeAPzqX
fH1dC2A+GAmxReP5CiMLwmcUVL6R6b7M3gq9YUtCs1lyfvuw7jvd+jxi/94HeERrPAI+FzUjoir5
dTAQJ6AdF1EZdsM2MOal8IpLrZydXpCzM9POxW57AKc8F5H6hwxw70E+SKq1bFGA8YONmQAg8CBN
FFmHqz2L4zEbocxCO83WzNppmk3ww+drRQ5uIuMBBMTYmtKxKZG+QSpFFWCXgL1Jv92Ge5HlwqnP
z0v4cOvkgr9zdQNuxmuxu3962r20EqtaZexbhyizzjkL8FD7/piOBOBHgX3Zuje1YSJdW4/RuK1Y
S/vPqWle5KcYm9NiKufAwStcbQ0Q9cU7zoRMOI/BZsYCoNdruBOGXX6IuNCKuVCl3bodm7iv9dOo
RCtOKFGyUoUqhIWa1CgM9uHBGbxnypicnG0OU8+e3XnUVqTdHLhu16xbQIn9Kw6HfjAs1YrVlAVQ
hFoJ2596FDqWvn3SpJqP1yRwLYjSKekMkYNNN833w3GKy8j7dEejxHrhwOB2Lc4NqO8+TKqjhiYF
WiUIlb4GArBmWxi8mC6RK2cVt+6NqqMfFh76Wiw9dHEOYz+ud4f1/babhIySFbM08fpylr7kESG1
oyQWOIfQ1+7FG4WMVoKJ8GpJ+Kk7bnjFOaM+QM6AkOFL7Ak86C74og3O134uK7Qu4PTp+utQpkNP
BFwACev1lPh8/Bg/90XP2k+rhlQ/aGMJGZIpVeoRP8pAxGt0o4EVEwuChn6NR6hjXzi5iyuttNsF
n7CXdIHsluadBn3SDcZaxWaJlZrAciXHmj/gxArLCU/wp0YVBJTb5eZbKL69p9Gh9vBPddhxPW3S
agLUUDc9ttIxofuzMsMvfcNWgIG4PoOra2oazo4VCV6cLPNeJ33jSOg/FAxfZLl2LmiaqoaG3YLa
dprDi+XqOxzg0p2qx24VyGWtnCUCUgPumW1U2ufsblQSXvEOh7Gu5RX3T24aa92JzbwM34k9mxhs
/2qsz3/8tnm4qy15/ctmWP+mGS685FEJEhyomrDQ1eXMiYzAlPVomAqvKjuMZ7iQ5B7d0eqw50s6
rCc+7H446d2d3ypwispWVUohaqOE1tSpFA3RSrhayuKAEzmDUyCiqKITbY5RzPvGF+eYSDs/JdBJ
vl9wEX2XcfVqtrevISGGDcOlZ4EA1lQUDCoXdMoII9JJJbmW7nbeph/5smfoLzdSy4VaVSelnrT4
fr1bP+8fHs/vkjTyVOHnzjuqciHaGDjjKASxFTbqKLy1UQYAn2tPth25lW2hlaRTs76YoQr4fGzr
7tMWozbyHr6z4xu+DM1OhYi1B6YVTsMD6xgJ9ay+7sFTcQNQjAe/QIVHd3zXyt0tKTN9M87Xx8P9
KI22+lT/7p3R0FnRd/1ki8BHIwGGq2/KrC8qs9aT+P/EXVuT28Zyft9fkce8QJn75XGuturYFdmK
XectBXJBidFqV2cvju1fn+4BCWKAIZcn2XKqXBINQDPdA8z0/WuaJYGjyYbo3iIb5kNNSx1dgFs1
f42gGpiEk8LxFZStpwl7CI/UJCy1HnHLLGIauIzZs1wV1MdgTeKZLGrD5mPc1PM09l6p/9zUlbjz
9GNWkLUkKTFWrbygAZQ09FCJADIM8/BSjjo4Hmmw8c0T80/UnKvKbRl3g7KywWtPjgv95feZ83+V
O+q5tdRZVKQz7AAM12BAXMCWBXlmUqBtpe40ak1Mo2xm0HLpndj02y8v3+YZXlgSIQ6lEaUqjxOR
bAQhA+R1XFsw/5W0oNgZGbj0wpCrgsF+MdN8Qcd7NzWprEV/f9TxD+f+lEdjJkMvZTDmNEugEGBK
GgmkA11Id1pbkhnxcGjH+uutxqqo2JB1KAUvnoC7nvu7/8QOCk/P/Sn1BYTwO7DYR9iBmJKjlAEB
DjEhUbt0wsMfCdTP4OHidfL6uw+/hENd8GwVzxGxYGONLDJs2RID44f+5X77+ZKTJWbrlA1g+CmH
hQAKeSFgepAUKQuOmvCGsBc1PedKZObPVFxvTePlbe3kLtj8ibXlp8pKU4pjEkh0abpAckIvkugc
2uJUY0lbCJ6LRVVnNUo9v218wtter4ObWKXa7+8x2XCVqJex9FUTsFoDmNncg/1qsXY/6IS4Tl4I
em2i3jTN2eDm9ETNSCOjDS5OObzj3O/8yUvA1BEohcBHLgzYqYqKIksIwu1RUEpUFkxHFuLCN1+P
VhFy2xBlOyqWXsOzhp6GAzZyRzq0R2ErcgdqRuYdOmS4kk6lV0rGLxt54d/aBt5OD2vJABeX/rWS
cIWxr6en/WZ/VxAMR3ebtqVePynqheyoVaDQIYqDg6UtOE2ceWuNZ68DY1XjX4DHqp5bcLOW6ViP
sOBmf/+lkiukvAlWir1o1ipkUCl41ojVi/U5gesuSDhNwBT3nJu3UJTe358BoYIbNzX5tMETRiAq
x+zXU6iTYEiXmETLYa4wAxXT7DsnTYFx1hyEY9LpovXSUK5h1iYpfLG8dw+f9vdPUyHa5JW1nmWZ
re9SLGAxPHdeW9NF5pXSHrbbdeKmjP/qAs+pOJNROnui5nPb4nPYzKru+81+WvADMItlLGUPXw4Y
DHBAoycPa9i7ZKgLggvNAlmV3U/jVAT0cu062vV6udAPYMo/HeuHRv2oeB8OBUlcJQ8WCmxILkA/
olaj8ygDQUF7pjHHxr/Fp1yVMZ2HmpweqVnVawVgt2HbVkrIy1B9TznQ5BBQUnMHNg3G+5ziosNs
BtCkQL3y+p9BB7+MCF5RveFrv/Ruu1PHTel/cB9P4FWKlQ/Ei8CoYaqTBScmqAjfPyheAc5KoxLs
Aqf+okzqE303NQcr69kScko1+MF9cOFvK8YEY9xgTwOwiRxaCCBJMyiToJ87EpjRjPK/iLE5hTc1
F/2aNUrUYksdakye/rh//jxU1c9YYSLe0RFaWYzJ2ppGRwiW/yQH7DIFW95Q0UmLXTEkZVm9fXH2
mGn7cU3hOh13eqhaClA5GkvBptSG7cO3P3agzJ+UJl0QxEETgVO6yxxfrYA/vFemE0HJHOHfG87O
5DLNh1tQMjQo4RN80Z8ncBNMajkkVfHkPabTCYNQ5vB5dTYT1PlNIiIKol2oz9k/G+AmljRMD7yo
llVHB7Dfz/t/+Vd7wBsmBH0qNGmfJPOd1Vi8BiocWE7BdTQl5iITKpo38akc4Ya/f38Zjvj7Obyg
pSVLbMEfvd1MRv/Hb4iO1jypVJZgUhOsusWIpAH9GCwW0XnCZRBgUHkf/6INvaSyZnGtkMDF2+n7
OSIT0QbqkTMoIeDQYljNwmlJJpTwyxMjNNfRqIUxvhitomRYl6DCxWEK/PUvpwRBavDrsdaC0gxr
LGgGTZk5jvCcYLCmQIT1Ssa8KBc+jTGfmhGzitxbRvWkrfz+9Y6dGlIwO0JsRe+iQhEUM6IssURA
eDLaZSlVzGAyu5LpMUcHnY1TEUDXGiroQpYf/cG/xY8fllVFEuxGBbY5TE9QPQW71lPE6k6ZONjS
hPm/SmScyLupGVgfD4yr20YeSLFK2vgjmgQXBepg2WASHphHTjDSgUWUQPqwwDi5rh7mlWqYina+
rmXHi5Mc/+79MmkpJsycwg9RZrTl4WS1UfIuM2W9Zs6pV2Cnr49AT5MvSF7LZya4XRbADP3j9nOp
TqDvxAEpZURdy1RaZ7A3AEL8cJUpGDsmdQnh802wsJ/4GyaxHgk5dyYfbt/U/LSY1Mv6i5+Hrw/P
w6/74b9PHq9jpViRgAy1DGE7g5VW6GruvPC5o7B3BeGWSX5Vest6nnOvb/lczVW/1hqZvF12yRrb
bf3+jFBIIzfCHvQoF30yXMouioygGFTBYRREF5WgUVEZ0hWJ3Tj2+U2Cd29qAht7RK0wXL8f9l9v
+7sa11hGriQ3tDNeJsyXhldhYGvnAFs9gkHo41XVtofBz5VJl5sV0cqsxQwzZFl2/8v7uaNpPJcE
H8GOnfNeMiAWtBc4lhCO2RNJu6SU9BGkYhMRaU37fI42A/MnKi56fbvmou/N0XrCrbP/bTgJLc5R
+SuaSeAaBATipWD9vVMYAAJrSvICwO61XrYxWgxWEbI1mzUhBcHrAEX8c/74sn8eKog7og1YctF0
yqGLi8BSeuZdB5aOI9554wKvSaiHqSi41WsljQ1m0sWf/nEH/5BP0puqEvqIAUSmBb0F1DTQgTVm
iEgdOqWs1cxiccliGaqBburZhhYJu0XIfINdfaeEH1XKBpgQEXsVZOWwRMn7zsPH3xllJA3wNky6
GMedD1mT1PM1STtObm/X2KwIrzH3CvisU/TRd06yiGnv8HpiEl3CvGdOSRxbk1yHxlqwO87DseLt
m5rGhiq001Oi+3c//LJIWAtAj8S2NjzxkuGDpRe4JxloVVR5a4N/q4S1XxpLvWsorqDqy1UA5v7T
C0j4Hx9uh7tFlzZpAjVOlHXGcL5PHegSpNMW1DgbKWxYes2KL+c4jzw2f+qmInztzi4Xz9anlXA/
/oPZJToWp0nDsXMSxsgRxVVhT5CMLUJC8MqzpFP6v9WKnO4veDAtHrbH/fit/zpT50lpshEixYC4
QfsczkGPPYMCmOaMJ9iDMtNFVHw2RjU3pY31o8ye69vXg2Zwf8SDmH8TILYJ/BfggELfIxyLCDCs
4ZvIymQRNGXpn+rcV830Su++6tmaP7Zt8TetLQIofPrj+bGfpWhOQJLECUsD6vJCYnI8HHxgxIHF
ZhwmIYBwXh66q+EWxNw2iDn1XrrdP30rDcKOthMpobeiMQUtrDUSEcgd1mnpCOddch2YjSEYkA7Z
tr0x9aA1PcPa4uHMLnNntlgc+gUU31IlWlRxYcAytKXoEX+UXlYgDrhOHcV6PUwCx9PBoC9BgtGd
E1jflzW6w+AXYEsX2jWQ2jjKOFOtzP2SOrY/pj3zETnGEGHKm6ZO+UwFBuozupgEnmgRdxVj3gYs
Nr/6662mugBRNH/spuZAt9iajLnw648fP9y9fNrfLzrkHiWMJBwrJ7vIHTbh4LIzicRO2SC1VEZ4
Rd6oaUKbkoobte5oCBd3/ITVxRamqc5RMU4xbOSx6lNnBDMg8L80qBSDyoy+GVRX61BUu8a+0Kxl
37hfw/cRPcVm9BTCSf5uzLUQzmU4kxEHBh0eJFuwTrPrLKKZY3CIiHA1cgHOcgG7AG9XHOhtY9H1
dlr0f7z0j/398/5+ODW5xAMvC6osLDUpRTaOYVcq+IaS0J5Lo6Il7aqq5XgLYlrLuZ0g477228+T
r8xoOcayMHAiMh62YNdzhOE2zMiOZpDLIiVBz8AmzkarqDDrrnNwsd9OMb6Xb0+zNq5cjjE+Ko3A
jr2s5AyAdAVDlfIuJMaYsYTrJWLMfJyagF3j9Ld8c1IVx/rRejODXAdhbsHgwRR2bonCek5E4zE8
B6yZz29W3zCbv6K8UZMDFxG5k0/tQn4ePu2fnh9neMzjAjpNIujh2GMNT1YRYQcEarssvMUe2ckq
+v/YMKQmu+a6b3DdrxTlH4fn/nasXScHKF+wyN7xERpbEB2wPgoMJ9hPFE5ighUqLEZPBCNMvGHl
5ZGSc5kU492Kx97aBo8r9bmZcHpM+C/p/nCejVheLhkHwhTRvy0WYsXOo88dvlLQojPNWr99kuRE
zoU81EXKP+y7dbcHvLhbVHB9e/78OPQnTEZuMJ2ooKnGiGDSoaMRZBV3WOYfQmnhSUNKCXbNxSqu
auSKtB1pKK07uQyRL3QaWnIlUacpuZKagGGsJLZKslhjBhqNDA41mgwWAhxk4So0kSu0mbOajFB2
feQJTZZJUguI2H3eNyBiLegxloEs8BwFQnbF+olg5hseuKI+hHytPMUpLiDFwt2KjS1fK2TiVsiF
PnA7PH15fvj2NEsfhk/lkFpOSv4+dwpOcNgPAYPInERgRxrbEaFUkkkwr+x1BRNlquMOwQfO1U2s
HrypuVAt1pbpmEUyhP7b8wvu+TEqaotn1IUUMvFg6EXLUGVgnc9Cd8nAG4LdIbl+m/SpGQUXelIf
nqh5bGQCiIEtHb9xvy1Ieo9/VAng6AOWh7dH4JcUrAse3V8Wu1NTbDorMZ82US3tGx7na3rO4T8t
n6u4H1p7cMf5yki6e3j8+Mf9Fh3f9gCQNr5ibC+iEyNga2KGHCgdnY2lVQC3cMvEbPSbn+kTPef2
6eH2Tc2WaPFqVrxij/gP/f1wN77j0sjWqqK1J51AiIEhiCk7GhV2xN71YJAI7aJjyb7F5zwn4VIj
+/GJBZO2xWR/dKY/Dl8ffhvm+RyiOO0kS5lbNNAjpmzyhKaIRcQE6QIIBSvaCvVyvAUxmwYx/bIO
+nyKvJcsOoT8tCwGbJypR3Rjb6yNCvs+BXpF0VWLtNvWhz9MeZQft4/DcP8ziOBTmzvB1DtRaiBU
DhpLDYTU2JzMks4KiV0l4ISLkhqZF8kC6+Fqaoa1RSYZYY20t3KQFQk4hqCwa6UYhaDWjHqHOHJg
/oA2DQaa4XDuBhl1kNhpyvlXT6ALMDXT7ZuKTLbeVkqYvmEPH5GOcVuV0oOysQ5QyrBqBKR1R7gD
4cdj6aYLqlNElAlQDK+J116GUp4/cVNR21B0lej7xXdaOQIZmeR2Qk9pIPCVJkUPmYeZZ7AFhZUq
Z4yaX/pKz3gElVYNsuxu1T4vTx1yNSa0FKXi8KvgznoLp3LqIvaQ5BQrBSicYczJnAgzLqpXvop8
sU3udLuifdOIpalNP8Ey3f35tX8nT15V9EzBEkoL2nJ2mHiDrWYc4m2SCMxw7gIJqd5V80Hq2XvV
mH0z9UH4vX88ZQGB4EbvBmdEZ6U6hk0PeET/eYTZNQE9xUgw5sOioGI2SD35ugeEVbthKVN/25cy
0AzvfjSW+LvR8Vj+HltWwetJrhMMYSuINp1jnsJ2ZqALwkEt7VVux+MMZ8TO4e6cBW3XabhwcaNW
PbKfMRYuVRGR+FfRg+AA1BRxxLEOBNQehK5ApEISeTAmKctfyf5/PhcEL7dqStdVylb3Ky8v2ra3
w3Mpc37aluUerfHRqZiMgjOdgMZGECfCKGyzXoraVFJgyblwXQQf8eLicZrza756rGKpFQ/XvV2C
HyEXz3dTCBaEpiAlmSpYEl3iphPEgNKNEEgODlfY8MoZr7RWzLwGuzANXFO2LhzEi2bV0PHjS8Ev
K/18QIEqVs74qyB6JwQyUAjhbbETvAf6FCy2YUwmOCzZK+kd0/jnejgebte0941Pur9tidijGlpw
2O7xC8ciyKLr498orBKlNBPXRY3mpobFdhjtDNka7qNIwfirIwKL2V7vW3B8suZvZxr87ZbhGvf0
NDyXRsYzO0aMhQJixMYofeCN6JQCBkG5wURPUHOUZhbU3yhVvC5ivprpTNxz9dyCr3UYR2+wJJC/
0s/sXXIfsLvx3wuHo7ZBx+SwSBNPRBI47A32RASJbZIxXXQCuIxW5HyV+/04Q5uz492bmvRtgx++
xEz9+4dwWI4p2QvfTWIUNEzV5YwZ5qC1gz0NO8nmyDNXXpDrGjedRm9Tfrpf094wLvRGsUVuyP5+
N3nshdaozBenk3OWMRU7JSKiqisQDAoTZ4LDhso6Z3ERDuY0bE3UGkUULpqll/L9do7Jqkz55JU5
ZF2kFH2CZZUIau+xCQbDXGDusXY7gvVz1Sc/n+PM2bRtArIiwa3Pwizxyn/s7z89gsE1D66zaJTn
DtcVMxO8hw0bQJGhIUcCwiAZcVUK13HsM6L3cLem2q7zlfSWLp0nH4ZHBGhAoKF5a7sjA0THYCLH
FrPYw9pF2I08Yk/tADvTOwMG6FXYxutpzvh81w9WbN3S3ZqtW7UEy8KCq+1dQfU+ZAOOTfpAj/QG
iwaxQTG8kBzRGwL8JBAMwghLdHo1KhN+OF87FX6oyd02dsDtLW3Uh326G2NH49qXHyjOmLXaY608
Nt/hTtPOo4AGkSYRoMfpwP7XYaTxXk3wGowMLu6WStuPL3fP++eHl+3nVW851NoP5TfjD9wHEg5F
BLXA/nUolFnnfJaIXUvBRgU7x123D85PW22I5WM1i43aKT3w5Tv5KZZ0g5GPYobkhE2NQTKZgrhL
0VoDzSLDgZRAayIqvX1E7Kcz4eOfqrjxWBy84mnVzuVvw+NmeHx4Qs6mBCAvtMCk5OI+4ybBu3FS
dQmkGWY0ZJYuO4KPg7YJPd6tydWNbTGsyiZH8JeX+/3z0wj98sv9mE9e474YL5llXWYFrN8htA4z
nQlgmGoWNZHsddwXHPkC6AveXnAgWhxMlsBdwRSYEHVUQZoem6qJFBWRnaSIpK4EheUWsUshc+oN
oUG2m6rNR6xJaZQPGUY2So6kPGz+a3vqj6VKwkCUMkpDdEezx7xoMOgtBaKEiNrlpOBcX3QUnI9y
U8+0bUxP9ayz/deH+1AhbytC9IS9bfE8YOieESAfuYVl8djVHAw+Q8E8QiCycy3uFyPXhGndIMxM
KZ7h8/5+eBr+4+HLcL//8+RLpGgqa+tNUFgkSZCyABa+xY6cQkmiqYUVigufQ3u4mqI1mgRenFoE
fh4Tybv+6f5UCCWL9VjcMNbQmARBNwx+6gozZhP2SwjGUSqjCnHRsXk94oIg2yJos5Cmv3/bvjuc
WKBr9J+Gr8N9VeAbrYLvBvTHFLETFIJveRltl2ALgpAllPrL5ZWr0c8VayweW3DT+hL7aXlXIGIa
N2SOFl3ZCpuOBYySKKz54R0e6RR2Y5Bi4ds6DxSG0zVWlNPhbOT0/b+XxDwwJA7we9rixigpGJLY
kgpmsQscnA66MzZoLF91sEFgD70C1lDGPmeJL5LyjFpD6eHFKbv8DrTM/azHYcmyCUFkDIbCKv1P
b1f32ygOxN/5K+ZlpVa6RGADIZH6QMiH2CTNXkPau3tBFGgabQJVILu3//3NmI9ACnTvTlo/JGDz
88wYe/zBeKzkB+5atHF9yk1NwTGuwdjVumAllzr5Bvt6jGTvthX5VhyETye8bfR1oswM2uaBLA1p
sXrMZ3Qux6w3wfkMG6g6dhc/9/28Rqh1P2flmStx9AZxjNJqaYnKwjuZh12IDLzb1jnDoQZ2E7Pe
TNZx2G3J5GRENXuqZQ7GYzo/gf2qbZ0NjNYFfe8xHiOf33lhfj1HX/fRLueVtGzmvFbsWJ4MZszQ
rJ4s0y4dfTzGJmjynkamZArXOB//nBVnnUjLck39oZowDWeJDMmn9ItfXx/Ov/RktoNG9rFVm41V
hdEuNk4nSHDeM7ET6Y35EMdQlsGxu/0VBxZkaZI0/TtfIVvFwf6lMDbZnI9HpDtCqS3vcEjg6AUh
PP+AOH3F5vR2isljC07DU++0C4W3ivQVp4R5wkiUVuolX12cpblv+2AEShYnbGJcH3/TcARyNTIJ
UzdJy/g64Y+yl/9f9nhTkQpLQNAjW0Os1030cMjL1H9HU3pcAdmjVcuXvieuo8MPoOkHpcQvUFrt
jcCJU+9wh7OJPl/BKUz2AXZmd/LiRv50C8l30ieBG59TF9k6R8LnPRILcgSdWfDpVno67VPv+RBi
BkS8zFbp8zl8x0Tspoo8O2gUUVU6lEVOBYTc3eHRfnC25hKvHqZze30PUv7v/Pll2g7b2H+JVGu9
vXfgJoqjnh97hzDxw+AWpLtLaMmgTC0uJNNP99/I65Fz8nyqvg2ByaqxKG9AsuZAPuzo6SQlx8YN
GMUY6FeYvVACHaEBk4jTUjJo0gyqYDTEkJlwhM+LStRK6YJRM8zWzvmj7//NELnEcJAm+W4D1HJk
DnwW9K44VFHTrSryVLYudgQmV8vg8wY+2w7ssgMwsSh87ECvOGNVOmob5ibzQE01BcAY6jXeilA8
A9hEvSDA2wRQUFq6rVT3W2khjs0Gk2JgHfkt79WoFtnKXC7XVme7YMrwwhYzSszu7J0CeGurP5yV
dAYgfcnUF+BrfUtCsKOX+MMqvfl9uU/DjIJPC/iNVYDVMY5pLWC+NR8mrQJpel8p5OHI2ybFhvOB
cmAaKbkcg2XwuHJFKZhOh2oAVa42g6fwmYbJK/HKWptbn5V0hiC57sR0zA9446U8jN6P69orcz7t
Bmn1cnPdpX2/mE6wira2Tzbs6wVvikwYZ/qHA93aw+gPCt64wGzvbWs96eRO01iVt6PQ8q1KQNBR
9Mv7UbC55TrqGB7JVXabwqlg+H9T1c7aEV1Gdyn0jXl2pessx/wGR9RQSa1xZ42awnBwUR8CI/0D
UEsDBBQAAgAIANuILkomU1Qr3kAAAKsSAQBGABwAaHR0cC90ZXN0cy9hcHBjYWNoZS9jcmFzaC13
aGVuLW5hdmlnYXRpbmctYXdheS10aGVuLWJhY2stY3Jhc2gtbG9nLnR4dFVUCQADLst6WC7Lelh1
eAsAAQT1AQAABBQAAADsXV1zm0izvj78Ci5ObclJkOeTAVVOqgBB4ncd2xUp2Zza2lIhGGwqktAC
SuKb89tPD+gLjLzWJjcpy1VJFA3T/XTPzNPdAx5u8iySRTHQmz/D1Xz5QS5imY9zKfU/mW0h+y/t
Jizv2pfCz/mnbLaay+L80/Xlx/f++YvzZn/tIpaLMk1SmQ8Oa9E+ybxIs0VbAdK8LJb6+H4pm02f
LdMwmd67Csv0qzwDdDmo0W9aJt3cl3fZAmywmCn+0j7IYpktinQ6a4g7YPHHQub6xbCNiSOsacOw
lOfjdN6CRRAWBsIGZjoWA8QHHPdtYeoGshDSrkd6l53vw0iHps86Rn2M+6bew/wtJpicAeBllpcP
emGsOYtscT/PVoX+8eMeRnfoYM9FjoEERQajACewfGQMfdMJPMS4wx1N0xRy3fkWfpH6KF1EUnez
rBzoXCCE9EJG2SIuNG10X5Ryrl8sSnmbp+W9cm8po7KCIhchuDHWNC8PizsZ6+O7XIbxFgkCv6bF
MiyjO/3vlVyBp6Js3g+Xy5nsz8N0YZRVB03zv0dyqYQ2x9n/7E1cZzhxPM8fjfTe6OLtyH/76Wzv
ejU5toP9u//hanJx9cm5vIBOw+EH1SssdfQdNX4o2pNwBQY1NHrXH25G/uTqenwR/K+mfXqvf5C3
cGWhX8kwB2EUDTTDeKNrqsdkMvY/jx8sirUmjEISxfDB2H1BsfpC/1PXKUG//6Xnxvfz/Nt3ffT+
f7zrPzrWk6Y54LI0Ciu8o6WMYDFFMChJls+rLwea98EZvbu4equP/dF4oN+V5fK8lEVZnIO7ozC6
k+eRGiXj251cGIvwa3oLPRe3RvgtvIdxgC+nYfSlf1fOZ5r2dpZNw5k+zkM1MVZJAsugl8uvMAml
Ht3l2SKbZbeAaLaZKmcDDVsMlhijtmX3iWmZJta94EqW37L8ywP//Fc9JiJJEtsU4TSeUn3s3cB4
LhbgYgHfJiSiHEukj0aX+rsQlNyp2Tq8vvIbuiiyMaZH6Iqs5KCuogxz5ZdK6ULeZmVaebitkdjm
0zWGJrcPaoQlAeuhlH09gaWD+Std5kCUqKkRgzT2VI0WtRJ62J8wjkCUuN+tCBPb+lHTYsQj/MA0
dsA0Qk36o6atNT5ummUL8XTTbJtMH58nwH1NBTZh1o8qWFvSpYARBv/5wcFhNqMibA+O3Tk2oJDT
H512G4WPjQ0j3LLQD7puo6jLdTbEZYs/WYEZc1PqHkSnigximYSrWQk+y76kEhRkeXgr9W9peacv
64TjfLpaxDOpp9tk5wf1I1MPlFKlP4VAF7wbj2+8CsBorb+ANhjCFjtVquwjVFGbN1RdjR5TpdVR
HqL7OuwPBk8M85AP7LX8IadelssuZFWchIXGQ3DC+rrBYC8IeiqgvcuKcjAoZNlu6P0xDgaDDzK5
KfPXB7u/+e23M/2lDrlWl+B+tFwOqGWeafhI1EwiiEYH1b7Ns9VyMIjTIiyKLILoIodZBPF+UV5m
ISSgvW3X5vcVWiK43luV6QxysYEw+ZlGjnUqjan8J6f+X9fXPQUA6Kepnx6nnyfERrF+wEbQ3HJG
pZPYBwbpbsABAmtD+D0tL+VtGN13QZCJjEMgNbiuqQuScNDf9XWFAiKw3ms2gX4LUnR+nAsEwxGJ
di4I8nAuN/bHsgTrgjyb1/VMpZpYUOfsXVZNTsIZ6DaPsj1BAtuW1I0/4cpPqfymJttNnn6FWXim
T6JZVsi/KoUwzOtL+vP5ACoReqaJh4VSN7OsE98kiiMGuqA6kTPAVAJj1jI9pWigNEGS2Nu1K11A
ZWea1TBL+SnIgF/rDLhNYlY05ciOIsjF08VXYK3F7WQyUUPGkGYfLcniykFXowuQtc65K7Ebz2gQ
nY8SaU7hT7fIPyCCjMP8VpaVNzjTMD5yQKcJnYLwCVw6ChOAkn8LcxgfPak/7XRWKmzcGFkOqTNw
HDnOIpYQScDdk7WOrcc5BgvoscIQt/SJF+xLW+ZyOUFqDAlkCmxfYltaW6KUFp0yCfCuRkGaS5hc
4b2Mb2Su6iUQSYXQMD9yWkRhwkCkF3z4eHV5fX0zuRhNPOfyEmquyfXH8WR8PXEm44v3/ofqa9fx
fp8EH6+88cX1VeUaZYd5rFJh0VrpanGZZcthpsr2vGIjwTUsjpVH4rBDXqHg2RZkEUfKoyLG+/Lg
H4XNYljD9pGyiKQqd95J2ha6CpypEXQc+8QJM5merxZjKIN7RQl5ymSCB4NpWKTRpChzmGavo7sw
f6XvGtX/J2UepmVRtb3ZbwxnM7WSsrxu0t+AgYuirAMzpRCkmvgq5kQm0BnBR2KXNvgvbvTopYvy
la4012pfvKj02pR06cWUINBLjtMrEYpwq8d7yOC6dWOzCokPdTNqgW6ggVk6je9ncR/+SqeP5aHW
1DYJh6yyyt2V7G2eiQdV4ggCimozavJF5gs5a8rcF2WhGPOKnlT2+3d1fS7LVV7NTVQldDtpyzo5
bYjbT5DpVNhcAD+tL5x8+7v+UHGTRasE7ChxgjJc29mQRbcWk0czauXTdaMxDxeQnOf/wkFQ0Ohf
qops8ndWNByzkd4xag1LMFTCJtcnm+sn89u8DsBSTUxsblzzdIEsjuKWwK2DONk6iD67KcGencX8
2Vls/huLgbXB4kLOv0HMmhTp7SKcddkbPb74LBPbZowSfREusmIm5VIJse2NmdHLl33cTeP7UriF
KCJoL2aWd2mxXsNQqyvBKsvr7UdctZsMhc8qr3KD17Nscaurv/ZDb9X2Gs9eqTJs/TNrRmDIh5q1
6H/Cr+EoytNluavH9sPdFBMp5VSfzqvAPhi8kyFU5kUUAi3eyj2Mq0UKNDyBi7683l49KgFT9H5V
yu9vfmvmEMdbpGypQiqH+n4ymSupE8hU5ADbol3hPsWwmLC2YeCqaJWronK0MbHaALHaGilu17T/
rJEijvBOo1PcL6JxWOz5S4F4pX/N0ljvtZC9OOudvVFzRU2TdQJYYbMFFP4bUVBtY8LbJe9ToDEU
/xRo/qLM728ySIZ6PyJunbhV9fRxhpjTuJL7Ym8iTdbLC0qm7Pv9672ltwKxr2sYoPfHEL/6IQe+
gOndq4BXo0r13lzOs/x+QEwu6mr/OGq27XhHzdMsvq+oFFfV/pGScLiTtM0+Tauq8o8keI71tqAd
vYvBfhZ3Nfr44VJtXtc3U+t9naP5H4pSQfR5qHKl4lYVLssu8n+KIDqlW0Eq2+KtncUnVHAME7Zf
DY5k/jWNoICI7m6yyh0EkxZJP6XI5DLqKDIpN1u8+BOKzCbtdW2hNzfPBQpNCON/toazV4/nmT7J
ZZGt8qjauFMqqz0YcFSLxf55T4NwabJqT6OeT5N6jtX7XDDzKjb5OYvI+nmLyNZ/7iKynl1WaD87
izF6fiY/v00OTJ6fyc9v3wI/v40L/Px2LrD5/EwWz8/k55d84eeXfZHnl32RZ3iL6fllX+T5ZV/k
+WVf5PllX+T5ZV9EbaZWT3k6qzJTvwMRjXfPmB7lCBRPTXDEUm1q302ir+o+2r/0QijInhfUr0VM
1tKEKVrbqU+4h4NCImoja9s8EJhWz3ENynQu4z9Adv2oa3UT6rdXepytpjNZ3UfCtt6ru6WL25sa
UrF7qPXYO2XIpojUYG7CXD1hd5mVg8ESPm9hhbPZ/cV8Oas2+tfPibyq+4yibCnjy3A+jcPX0yyb
6b2zzb27rkvqOwntS9SzSuqBueH9Ipynkafux6nfF9p/DMfESO/tIFYWm4gdewstnPJpLEy9wlop
35rpqntkAzWwHxdlOntdtV4ClDe97ccjEGPeBHw3sI6//YZkKHHcuCmUrBb1r2mtP7/uWi6DQbXK
dsBlvrNHGbq9wToY/PcEdT8M9RMEv9ncPFL32mAe5Epw76x+7tZST/82xdcPwCJ6/M1AnFibifzg
nt72BhUGNuttHBjOBlioR23F0aqmUVKr+lYm48Pa+HO8HUasE4WfKPxE4ScKP1H4r0rh9onCTxR+
ovAThZ8o/BelcIpOFH6i8BOFnyj8ROG/KoXjE4WfKPxE4ScKP1H4r0rh5EThJwo/UfiJwk8U/qtS
OD1R+InCTxR+ovAThf+qFM5OFH6i8BOFnyj8ROG/KoXzxiEbXjBSs6TsL+sjTv/FY/JI1OcrzWS0
x+DHnDlhY8brQxdrMO/rM9sqAifHPxt/cFjozxsW9pNPbUB6tH5DRHVi9mfLXL8qQleHKEm9ZzJj
mpZnA03X8/D74MELGxAMXD491BAdaoj3GzA244RECCklcXqgS7FtULZxbpNEJJX25cOGqOrR0TBV
SvTc6lCiFnxuN3AxM47jSjtGXYBVA94XlUwRYkxgZQkmByzBtKlEWFSIqoEdUsIf9DCTyl3pcr9l
ezS3niezlnaMCFKHyeYdsKiSpV2uXxzh3XysX7tBND/Ps7x6lcf6RRzbnkwbqzNtrlbz6ebtMZhp
muamizC/1y/msJSKgbZ56cb37fs2dEPf/5LiCAZHf9k6DLOHzvTX3HQ9YTqWwT0RGJS6xLAcixoO
czyBsfAdNHzzz2+5aaibsg4MU5YkQn8Jq2h99rM6mXR0l87XS6tCg2jAA0t4hsV9y6BOwAw3gE/c
9p0AD4cu4UEXmkNSW7jCh7gYSbpwrZbqxTP70JjpBz6lzBginxmUCdNwrKFj+Hw49CzOiUDuE6Dt
C26gY9FDr01xxJOEPhIke5CJvYRO8E8f99lLAOohZCFbcINYlBrUHzLDIQgZzGPI507gE+R1AW1K
7ifqxG31G1Ln67fvFOdO65p9/FMh7Yf4p2bYwl+f6dyFm/FgaA1d32CuGntKTMMmVBhDZllCYG46
DurCXUvsxlu37eOMKKzENs5YWMlDnIcc7Pp2IALfNTyGuUE9ZhquNyQG933fAX/7PicHgB727Lpx
H6pM2EOXJpjIJJkePCa7A69wueDgT4M4DBnUtmHmOqZt+Bj4inPHHwb0sGNruY+5t75CqxGqMGBO
Ybh2yLdfsihkEAHUobh6j5qoTwjAsyxYSzTwDM9DwEDY8wzH85ghuGMh7vkMYcVAqyJXa+lc9d7T
ZRFq07Yu9SVXlNfKVYYrWQ7ldAVlwe2tet9DD/dVT6y85NmUYBOBctsDGIIa4P3AsC1MLd8itucq
L9XvhDq/TKc5cPD5+vj4YOOd4rxLT7f3uq5sWMbN6KFlJpeKsFSKkkLC/7VPNizFGJgRIO4ghzuw
dhzboKZpGVZAkBEQ4blDh5gwe/e82ZbS0G+aqEO/sBNZ61cvUclloezZYCCWwmDRgBE8NDDmQ6BK
LgzHdhwDu77LkUAOrahyD8MDSU0cIuzAYdHKD/sjPJ9nC6hr7sAX1biSfsXcrmUK6mPwhi0MCgRo
WEOqBlo4Hh+ywHKDp43sRv6h8dy0N9GrhOUB+iTejOLmjNJskaS361MzN+6EyqrPUB9TMIMOfVcM
A9swLQQBSIBBrgeRGmEYZIsEAQqCPa/WYs8fVdDAKRB+iNOKwpaXq6zj4nrnAljKfVovI2YqfzuM
mkMO8EzmQwCiDjZshqgx9EzqC4hNxOIP/b3n6Acq9r28bmxAt0P2EHrIrBYFuDNYbVlWzw/WN6FD
9W+i1j9Dgij6hpUyhElLPEDtYtuwKbU9gSyBOH4c9fVW/gHkuwsa6EPOO9DzuEIPo/S+Oj4ab5eY
UJPB8ZAbuJYhfGByqsKmgyHmi4DazAw8xjlrLrGGlKZ+YXboj9reU+8gkZ+cYDfuvI/6lEDH+oMK
jRgiNeW+4WHTASdCqLFtzza8oYN8yycOJEpPWWprXd1+XDc2bYjshzZMqWhN3r33qKzPZyz6zngE
U1gI6Ay+6ysStYWwfRubBhIWpCKe4xku9j0jMC3XczFxiGs+Ohe69HTast9nPDpg73jUsHXKOgIe
FFGtDKaQ0ap6a2FPVKuTC0pFX0VdsNAnPuewGiFJhFBbDZRLXfjLxS7YK8AT9FELR2vp3ZA3rfu4
KYoerlJKebiZ53MZhaBnM89N2+xzBTUwYa5DFstVJUBZ4EKFMgwM03Y49XzPFk4rojUEaU1t0w4I
UXLAdclub6Nn1k7kmJgAaug4LBgOESw4C/yHILq5vgnZgum6NlQwOEDiSf7bbZ887snddU2DYtRh
UBy15v31Ui6GaS6jMoPCsVe9aFMRtq1mO8WOKZwhhxLQIwblCJIHcygMC0J4wFzIcu3HZ3tDercZ
jUtaFsQdFiRJy4LRXZhXGRtjBOJhTd7rj2o8hkNiYewZpu+5MJ8DiPG+CkG2G9gmFy5zrKcQz1rN
gbGoGxvwGeoYAIbYZlJXb5/cTGmh5rPNmeU4vg3puAvpCCfcsH0P+Js4AmoJSIeZ6Izje6JaEHgX
BLGB4L39rHbI+84Ghg0koIJIwInn2jDwLuSJUG3bVNGcaVjY5RY1BYf49+jAqwz2/3m7lu3GjSS7
91fM0puk8/1Y5rOm5lSNa0q2Z3Z9+ADLPC1LdSSV2+6vn5sASSEBkFJ36/SmRBNwZgQyMuLeiEjw
3cP666+H7QX/9vn4BtjHH+aCtEqwBSWU2E2C0PGVtPmPp+7usd+Xzwg+luSs1diOCToJxzIJNCMM
AR056Y2K4noEnw6+rNL0rkYNtV5wMOvOTaz5Y7c7rH+6v7/d3P9xVsEItmJqxWldGy18EgUGEvCX
1Ld4w+s5RyycvxCFy1iub8rxFMuKjO9olNiwOe/Al/uzQWHZf/kYbw/d3TlFwpjrvbXSNBkKH22o
A5sD2YYzAQKAxK5EAFiv04vO5N2HZYmH2w9Ha5pJ0SrB9YIScroSp3ccj+yoiFhTX9gRrmIrBjdi
vc2ExiQ9K1lYYV7jS45DX7WiRuTtupuLvN2ZE1P44+v27Em0Wim6qmxLycQEr/IpmWH7CEXWgeMI
owznxSVml3nBebhGiB01cyF2gp6FeLx9egajbABMhsfEopeElQDwrA0nPlWfZh2cnGQaf9sYPR6m
nV8soISdntL5d/UnkccsL0iHjSGw3QNAvAAqgAhAxNWh6uy8Y5JeNTyMuLxUuNBI2Ek7l3Dv+MSy
trDPbwfg9VUNtfCwq2pcNZugBZACWLqp2Q7EWWwQgBtlpCmeBe5fm2b4+f3lxMLP779rxRNLMm8W
kiRnwFpucv2JnEesMudiVUFD3SGnz3XZiwrGc4SNCLYvincg+iAlSQGmYd844/yLAeTVAPkkz4Ub
j1cnam+X1N6fjLkvYN3EcYw+OTIurEtwVyTYDEeWgyTe+0JKyClTFlOO/u0cWSPEWAVJ+Tz5AXwx
9WPnaQaeZikHwoMyg1djnK2E7JG/o9LAzhAbEa2wTwS8W/XXJZVCeQDmc+nVFK2f5gpL66+36sgF
dZjUpxUp93dPn9YPj93DeUGU7SEeB0h1PksisYVI/almYpOB7aWSIjCetqX8+0hZA2ymQn/XKmcW
NFb2jBB/+/rrmfNUR+ZlKDxqUIvqzwX2k0uA45qBSWesWo5lkj07j9BOrBcetVT7yZ7/z/dnIAJX
1e9xS01vK0LjWUcJM9GwfCGxEVykmRRmg2CJZaWvZ3Li+mFzCUeNbjuLsHzn+XKjnlzITtYvpy6t
F6Gakaw7QVVwZYvOSVNOFGgu9jaH3zIV/UaBcM8jsyL903oN1xpRtVhYCbCShexE98uncYqlrgjv
YxzrV8QErgGiIG8OkBxOiIDaJPzjQqQlMWr56xMsn65mWD75Vglll5Q4+9Kawz3cdg9/ea6b6Sqy
Z9VigaSKqojQwvVYTR0xAYBXKviemJb5znTAVpz1kjjrbrL873/02213O/S/4HlSNVDf4UNlDYqF
Yrgkxdb0Atg7/KEGdKE0akWVxpZ5zRNtJrqUABzd0ihjF1Jw+LKbs59yc0pFyB72WMk9oq0mYAQw
iMJ5ZZOFZGW1Z6A/rPCXSE+5uYhRSwN9pNvMEap0W3byZcdU8+P6bld386kwAb55zDtxr+E6HKzW
2Eo5qSIWCIIonXug5kqw15LYzchj0RTdzwmkYoz1qR3cXH+L5Pb3lTvbZp+qxgoHFS1hTtHq5cCy
dGKEBg7TFnBzZYJb22EaCUBX5xKoblqm+Lz+W8TDflivjj+ajvVkrnrdoYDDpHMcKBpxGPaoM7aL
V4w4QGjOaWZ4SvMFHQOpH6Yz4OrdU8VGP3xcb3+8eb7eiG8280SMsuwM/Me/ggZEOCBAW6IA/QAv
pQphQjoEKx+BuqU2YHsF3GSShx4N8107E1uYnp9Na/P424qephc96cjVfcgIlhGweMDPJOgciEqq
+BANd1y3c4/GaOfmZmFusV5Ax6MawjNjzEpGYBOQHoW4LSgegEvwIVYanoJ3wrD8Ig5+oXrQ3NJK
LzYL0ttp6iTe3n/bpfvt40ly8NihsqRKcsBUiVCHyAIXaEgICCpKO57B3UwR9FWc5DTDBQ1Olxvp
wZvm0m/EOStc7h9v/7Ibuj3P1qdXXPaCuxQsTwCvMgDLKkBC7FoSM+W0uNr7MEkNz0drhNnKeRlB
bRU/OZGjF7q7fzrs/3wGqLQv0tU0pLQhZSEJLQbYDVaBOFIKicrYLJyzJsZr7m08cCvYemF3bNf6
JNi3u78d7nbn7aFWdV2BcoK0WRHswprYdZAmKEkiDLKEkEEFxKI049EaMXZ0HqfUTsuJqQ2WEscF
x2p0rEdg+NNX/a3OmB9bVtdOH+mAvrxCFEYIoDliJ8frCfT5HBeytvMbW530PHBoWt12UxP45bDr
7q+n7KKJXDOsdtCqNi/BafNsCNM++lR9QJFXVRpPsazL+I6xEpotZG00Y3rSKvJhfffF361v/3w8
9G5gqAz1f6EAswl0DXTe18qQsDXqGOkJhQ0lqcDdjHpzhjUW6QJZHt3RKs2WlF7Lfbdf+vXP7ys4
rkCk7lRujRAJaKmWwYiIIYJN8khyitg0OkswnqvV9Pnu0JzN0ZEW3XZiSf/zbf3w9Pehu4gNaFTW
hEpfi4nZG8000aK2bwTA5lC786TRoegkirLh6hI8D778MJ+vN6KLvVgQfT8FoLF2sn7uagtb93Ds
ZXsuJxlW85FUWeAXZQhIbMKTtQjLDv9QyUzRQWiWwquiycJcFwLLwp0T7eYxRlu3nuyOd939yWzP
O5wptpJuMJlkrVEMwdEIKFb9umMJ8KNojwBanA7uNYqNprmQcHy+YayGcZu5p6pfnhDat7uzqXPX
F8UCy04aEo1RQyYBps1gW1llmJYtNF/w/wvmbTYLKMnsxLnUddh+qznP5zqTwrOrj6/atXUuMNAU
YWsPWoJXsRH/FERFllTiKpppW1IzWiPJTrkFSbbyYk6s2vv/fvD/PcqIURDq6vREECoqBCJTYk23
iMr/IiNS8OIlSymml7FbHfsybKtXW/m3akl+dXqSNXU4tFke7r78/HS4fQY+gyn6RJOP1oMVIHAK
agxxDszV+RzhFkEf/KTD6sKQY7Es3czTFJbu7KRTqTk58L3g0vZOlR1TFCxGYUsJJAcDUCZpIj7W
7kOjLPVM+Uj9Nc86Hr4Vb+eWxHMn8f7a/fnbl4emE80i6kagcwKIW31RhjsVCezY2Qg3G3TJdFGW
8ViNEMzNfbxlW34S4r8+5XfPxZGeZFrui6kF9SByLSp5LJsEPIxCem5r0iaWf74fqklEPs/eCr0V
S0JvTvb2rvxfrW13u2d615sZVlEEAFpCa94VDIvClRdJWIjUiWKNMW+UA59I0EjvFtog65dXahf/
8b3hFuSmBqX+QyVpWPhc+3RzrEVhLjnQDbiDU8GBriJiBfsvFivGd7QqbOmCCrUsvOkX4PP7T/Py
vI4u6whMonmpHWkwHp/hw5WWXihGAzP+LcvzIyFa4bv1kvC7ibf9tbv9WsOmWNXHLmsqW6jkJTgR
oaHvLPGspuwjkdRRFVORRcs3yR9j6gupY1xplFkvZOPx5VSZx69dt/119dBt77/cHVpyURvfhjx5
/7fWVLLyDs6NFFmzILy2VISMaBKSpszGKFV+Cz1veqk+LwnVMJ7pbZMnsODB1rWruEGpnx7un+63
97fh237fPWBha9JUir5AAfigoiMpqYpRa4HCSEZyLlFlQYGe82twUDvDsirtPa0ear+gh17P2xZv
hqThuV6sWeXrNVYpbjRgOx0SRwLADgyZBSJ5pt75xHO2r0ynHye5mFA/Xm9VsGxBBTfN3Lzr7rqB
uK5vb57uHxANamWg10UMgMBGy5nETpPc1eZgoYmLuZCahgPbtyq+FpvOprqEUWc3NqptFtLzdqvZ
KU7+/vHweEarSou+5gqKw3gxiRQvsByl5uIDqKhNiDiBsxzjCwT0lF/vXtxLv3dbDLB8Wytfo9du
oVkXX56reY9fD3e7b799PUdSZ/oFog4Y3NhCaIEXFEWCFTENF2FSAe9UPEbbIrZ2pLEQTm3mD9cZ
PcW/69/HDYyDwTBszxVsplq/ZCElCsCrVK3x9aWPWmk0jGppFfb5C2TT//JS++L4jkYFkLK5Cnbd
zXr6H7q+T+n9j4jpdOgzl8bVR6pMcjyWTLJhNV2BTx77FWBFJjwNp40rL8bH4+CX4/nxhkb49W7u
Qt2GTyur62+7w32vgq+fqv85KlD/VkjiTZIFpk41D5UqM4I4EkkEg9YyUYrY+aIG/diX5e8vN9Jv
xJL0cuo4Z1FkyFjwFV+ZviLJB5QSPKR3lIDTCcR4Fok1paYtWMZ2LoW+ruV7cbpXxrdpOsNtzIKK
e6X7zFBrXf7nCKUYQsPgUIdP/SkW0EAXPdExgbJSBbwYOSeUW+u5MnHYsa/q1MEkV1bo59gI3ycr
ZsLvpx1Q6fD4V/+wOTw9nDf4sC5DaycoMgfTUKI2snHAEm8oIyXlpIJSgr5QuZ+Mviz95KaxFmsw
/pkW6/2Gz2vew3nAletPkFC5kr0CQjJW4CBTstjc2AzERm1J1C5wTlWWLL2Ui7xwLDAerzXi7ndi
QdzdQv/pcMBoqMHq3lKSdjzA2klte4IjcrX5mBfCQ/AGLL0kI1/ZMHj5dNHx4kTouZlv6LHzt4Vy
3fap2/UVmDOCGJ19k0IHHgR4aW2gQ4QjgdZmU1qYqP10lPLXIrrZRJeB3ezWsXIbRflcOXw5xXfP
IX8I6fU8Eqv/3/E/63/1hXLLuEoAeIVVLss1/BTCXikxBcwUk9H/DmwxXGs0NQvhvH65cABnkl1H
SLE1ntg+J5QQEbF+TPLasFZAQkqyJPuYAA4R0a18m+z9wo2NPm4BmW+c5ie2W49wntNHp2OghVER
eAkkCYs4YmMgznFPMtMhxUCpp8vFqufRWiEWAMZmS90CwEjrp3Vf0q47WrK+dua580o6RjSrTcAG
8dlywDcrc6ax1hujfDE014GvnP3E1UbknV6w+N3O7bvNscMGfPThz69P9+enJ/o24LqHg4pUwdMQ
iE3roUsP+w4QGJ4Stu9FZBeOFUxGbUXazbn/pmP7hV7Xx5PNDImccrjtPhwe4do5XHpPHnuMzxL3
yZhATEXDiEzYkdwBfibqBffYpCy+Xc9oK8vlYx3P9zTq7+08FG/2Tp3KrvHd+7un7mG/rrKc1oSZ
Vc2+SyOkkJkRuJpjjtZTaUhC8KJc+qxfOI7wjzicPkX4ml7TmcCtvk4v6Ns3zPb6As4PcPOcjz7m
fAFbUyiCSEcBZA22seO2lptZFjrr+pKEf5FJNKmqVo6xCltq520sW7o5J2g/3X2Z5Ge5d8xUgCHr
phE+IfAxyUjtEMzOs2SEeqP87HnyRmQm5glOfHk+AJoO6y93949Ph+3H7vGxvvRjcvaC9secuRRB
B0nAk2FvSmENYj0Irjy8P0ccd5N2mOvjtiLu5iFqy/kUHvlcWVpfC6RDnUI6biQnxdZjclYH4qWi
4PeRWwbCWbx8u83u84V4lRtduFjSRclJmeO3/n1c53Yxc+rxUEZaEOOqE7iOkBFAIjCYvtKcCcaN
Nldb2MbjtnItpBa2fHNuwPrpfSkT0xXgj84lX1/XApgPRkJs0Xi+wsiC8BkFlW9kus+zt0Jv2JLQ
bJac396v+063Po/Yv/cBHtEaj4DPRc2IqEp+HQzECWjHRVSGvWAbGPNSeMWlVs5OL8jZmWnnYrc9
gFOei0j9Qwa49yAfJNVatijA+MHGTAAQeJAmiqzD1Z7F8ZiNUGahnWZrZu00zSb48eZakYObyHgA
ATG2pnRsSqRvkEpRBdglYG/Sb7fhnmW5cOrzZgkfbp1c8HeubsDNeC12d4+Pu+dWYlWrjH3rEGXW
OWcBHmrfH9ORAPwosC9b96Y2TKRr6zEatxVraf85Nc2L/BRjc1pM5Rw4eIWrrQGivnjHmZAJ5zHY
zFgA9HoNd8Kwyw8RF1oxF6q0W7djE/e1fhyVaMUJJUpWqlCFsFCTGoXBPjw4g/dMGZOTs81h6tmz
O4/airSbA9ftmnULKLF/xeHQD4alWrGasgCKUCth+1OPQsfSt0+aVPPxmgSuBVE6JZ0hcrDpRfP9
cJziMvI+3dEosV44MLhdi3MD6rsPk+qooUmBVglCpa+BAKzZFgYvpkvkylnFrXuj6uiHhYe+FksP
XZzD2Of17rC+23aTkFGyYpYmXl/O0pc8IqR2lMQC5xD62r14o5DRSjARXi0JP3XHDa84Z9QHyBkQ
MnyJPYEH3QVftMH52s9lhdYFnD5dfx3KdOiJgAsgYb2eEp+PH+NNX/Ss/bRqSPWDNpaQIZlSpR7x
owxEvEY3GlgxsSBo6Nd4hDr2hZO7uNJKu13wCXtJF8huad5p0CfdYKxVbJZYqQksV3Ks+QNOrLCc
8AR/alRBQHm53PwSim/vaXSoPfxTHXZcT5u0mgA11E2PrXRM6P6szPChb9gKMBDXZ3B1TU3D2bEi
wYuTZd7rpF84EvoPBcNnWa6dC5qmqqFht6C2nebwYrn6Dge4dKfqsVsFclkrZ4mA1IB7ZhuV9jm7
FyoJr3iHw1jX8or7JzeNte7EZl6G78SeTQy2fzXWzZ+/be5va0te/7IZ1r9phgsveVSCBAeqJix0
dTlzIiMwZT0apsKryg7jGS4kuUd3tDrs+ZIO64kPuxtOenfntwqcorJVlVKI2iihNXUqRUO0Eq6W
sjjgRM7gFIgoquhEm2MU877xxTkm0s5PCXTHtx9OtlffZVy9mu3ta0iIYcNw6VkggDUVBYPKBZ0y
woh0UkmupXs5b9OPfNkz9JcbqeVCraqTUk9afL/erp/29w/nd0kaearwc+cdVbkQbQyccRSC2Aob
dRTe2igDgM+1J9uO3Mq20ErSqVlfzFAFfDq2dfdpi1EbeQ/f2fENX4Zmp0LE2gPTCvf/xF1Zk9tG
kn7vX7GP+wJt3cdjnbZj5AjZWjvmbQPNBiWuWmxNH17bv34yCySIAopszm6HN8JhUQBUlVlA5VWZ
XyqQwCqEjjiKcA+O8FcMivngZ1zh2RM3Nd1Di5klMs63x91+FkZ79wH/XoTRmFlRsn6SAcVHQgc2
HCJlIlCZMa4LNEsCosmG6N4iG+ZDTUt9ugC3av4ah2rgEk4Gx1cwtp4m7CEUqUlYaj3illnENHAZ
s2e5KqiPwZrEM1nUhs3HuKnnaey9Uv95W1fiztOPWUHWkqScsWrlBQ1gpGGESgTQYZiHl3LUwfFI
g41vnph/ouZcVW7LuRuUlQ1ee3Jc6C+/z4L/q9xRz62lzqIhnWEH4HENHogL2LKgz0wKtG3UnUat
iWmUzQxaLqMTt/3my8u3eYYXlkSIQ2lEqcrjRCQbQckAeR3XFtx/JS0YdkYGLr0w5KrDYL+Yab6g
472bmlTWor8/2vgHuT/l0ZjJ0UsZnDnNEhgEmJJGAunAFtKd1pZkRjwI7Vh/vdVYFRW3ZH2UghdP
wF3P/f1/YQeFp+f+lPoCSvgdeOwj7EBMyVHKgACHmJBoXTrh4X8JzM/g4eJ1+vq7D7+EQ13wbBXP
EbFgY40sMmzYEgPjff+y33y+FGSJ2TplAzh+ymEhgEJeCLgeJEXKgqMmvCHsRU3PuRKZ+TMV1xvT
eHkbO4ULbv/E2vJTZaUpxTEJNLo0XSA5YRRJdA59caqxpC0Ez8WiqrMapZ7fNj7hTa/Xh5tYpdrv
9phsuErUy1j6qgl4rQHcbO7Bf7VYux90QlwnLwS9NlFvmubs4eb0RM1II6MNLk45vOPc7/wpSsDU
ESiFwEcuDPipioqiSwjC7VEwSlQWTEcW4iI2X49WEXLXUGVbKpZRw7OOngYBG7kjHfqjsBW5AzMj
8w4DMlxJp9IrJeOXnbzwH20Hb6uHtWaAi8v4Wkm4wrOvp6fd7e6+IBiO4TZtS71+UtQL2VGrwKBD
FAcHS1twmjjz1hrPXgfGqsa/AI9VPbfgZq3TsR5hwc1u/6XSK6S8CVaKvWjWKmQwKXjWiNWL9TmB
6y5IkCbginvOzVsYSj/sz4BQwY2bmnza4AlPIKrA7NfTUSfBI11iEi3CXGEGKqbZd06aAuOsOSjH
pNNF76VhXMOsTVL4YnnvHz7t9k9TIdoUlbWeZZmt71IsYDE8d15b00XmldIettt16qaM/+oCz6k4
k1E6e6Lmc9Pic7idVd33t7tpwQ/ALJaxlD18OeAwgIDGSB7WsHfJUBcEF5oFsiq7n8apCOjlOnS0
7fVyoR/AlX861g+N9lGJPhwKkrhKHjwU2JBcgH1ErcbgUQaCgvZMY46Nf4tPuSpjOg81OT1Ss6rX
BsD2lm1aKSEvQ/U95UCTQ0BJzR34NHje5xQXHWYzgCUF5pXX/wo6+GVE8IrqW76OS283W3XclP69
+3gCr1KsfCBeBEYNU50sODFBRfj+wfAKICuNSrALnPqLMqlP9N3UHKy8Z0vIKdXgvfvgwt9WjAnG
uMGeBuATOfQQQJNmMCbBPnckMKMZ5X8RY3MKb2ou+jVrlKjFljrUmDz9sX/+PFTVz1hhIt7REVpZ
jMnamkZHCJb/JAfsMgVb3lDRSYtdMSRlWb19cfaYaftxTeE6HXd6qFoKMDkaS8Gm1IbNw7c/tmDM
n4wmXRDEwRIBKd1ljq9WwP+8V6YTQckc4d8bzs7kMs2HW1AyNCjhE3zRnydwE0xqOSRV8eQ9ptMJ
g1Dm8Hl1NhO0+U0iIgqiXajl7J8NcBNLGq4HXlTLqqMD2O/n3b/9uz3gDROCMRWatE+S+c5qLF4D
Ew48p+A6mhJzkQkVzZvEVI5ww9//cBmO+Ps5vKClJUtswR+9u52c/o/fEB2tKalUluBSE6y6xRNJ
A/YxeCyi84TLIMCh8j7+RRt6SWXN4toggYt30/dzRCaiDdQjZ1BDgNBiWM3CaUkmlPDLEyM019Go
hTO+GK2iZFiXoMLFYTr4619OCYLU4NdjrQWjGdZY0AyWMnMc4TnBYU2BCOuVjHlRLnwaYz41I2Z1
cm8Z1ZO18vvXe3ZqSMHsCLEVvYsKVVDMiLLEEgHlyWiXpVQxg8vsSqbHHB10Nk5FAF1bqGALWX6M
B/8WP35YVhVJ8BsV+OYwPUHzFPxaTxGrO2XiYEsT5v8qlXEi76ZmYC0eGFd3jTyQ4pW08Uc0CS4K
tMGywSQ8cI+cYKQDjyiB9mGBcXJdPcwr1TAV7Xxdy44XJz3+3Q/LpKWYMHMKP0SZ0ZcHyWqj5F1m
ynrNnFOvwE5ffwI9Tb4gea2fmeB2WQAz9I+bz6U6gb4TB6SUEXUtU2mdwd4ACPHDVabg7JjUJYTP
N8HCfuJvmMR6JOScTD7cvqn5aTGpl/UXPw9fH56HX3fD/5wiXsdKsaIBGVoZwnYGK60w1Nx54XNH
Ye8Kwi2T/Kr0lvU8517f8rmaq35tNTJ5JxbHFGO7rd+fEQpp5EbYgx3lok+GS9lFkREUgyoQRkF0
UQkaFZUhXZHYjWOf3yR496YmsLFH1ArD9fth9/Wuv69xjWXkSnJDO+NlwnxpeBUGtnYOsNUjOIQ+
XlVtexj8XJl0uVkRrcxazTBDlmX3v/wwDzSNcknwEezYOe8lA2LBegGxhHDMnkjaJaWkj6AVm4hI
a9rnc7QZmD9RcdHruzUXfW+O3hNund1vw0lpcY7GX7FMAtegIBAvBevvncIDIPCmJC8A7F7rZRuj
xWAVIRtzuyakIHgdoIh/zh9fds9DBXFHtAFPLppOOQxxEVhKz7zrwNNxxDtvXOA1CfUwFQV3em2k
scFMtvjTP+7hH/JJe1NVjj5iAJVpwW4BMw1sYI0ZIlKHTilrNbNYXLJYhmqgm3q2oUXCdnFkfotd
faeEH1XKBpgQEXsVZOWwRMn7zsPH3xllJA3wNky6eI47H7Imqedrkrac3N2tsVkRXmMeFfBZp+ij
75xkEdPe4fXEJLqEec+ckji2JrkOjbVgd5yHY8XbNzWNDVNoq6dE9+/e/7JIWAtAj8S2NjzxkuGD
pRe4JxlYVVR5a4N/q4S1XxpLvW0YrmDqy9UBzP7TC2j4Hx/uhvtFlzZpAjVOlHXG43yfOrAlSKct
mHE2Utiw9JoVX85xHnls/tRNRfg6nF0unq1PK8f9+A9ml+hYnCYNx85JeEaOKK4Ke4JkbBESglee
JZ3S/61W5HR/wYNp8bA57sdv/deZOU9Kk40QKR6IG/TPQQ567BkUwDVnPMEelJkuTsVnY1RzU9pY
P8rsub59PVgG+yMexPybALVN4L8AAgpjjyAWEWBYwzeRlckiaMrSv9S5r5rpld591bM1f2zT4m9a
WwRQ+PTH82M/S9GcgCSJE5YGtOWFxOR4EHzgxIHHZhwmIYByXgrd1XALYu4axJx6L93tnr6VBmFH
34mUo7diMQUtrDUSEcgd1mnpCPIuuQ7cxhAMaIds29GYetCanmHt8XBml7kzGywO/QKGb6kSLaa4
MOAZ2lL0iD9KLytQB1ynjmK9HiaBo3QwGEuQ4HTnBN73ZYvuMPgF2NKFdQ2kNkQZZ6qVuV9Sx3bH
tGc+IscYIkx509Qpn6nAg/qMISaBEi3irmLM24DF5ld/vdVUFyCK5o/d1BzoFluTMxd+/fHjh/uX
T7v9okPuUcNIwrFysovcYRMOLjuTSOyUDVJLZYRX5I2aJrQpqbhR646GcHHLT1hdbOGa6hwV4xSP
jTxWfeqMYAYE/kqDSjGozOibQXW1hKLaNvaFZi3/xv0avo8YKTZjpBAk+bsx10I4l0EmIw4MBjxI
tuCdZtdZRDPHwyEiwtXIBTjLBewCvF1xoDeNRdebadH/8dI/9vvn3X44NblEgZcFVRaWmpQiG8ew
KxV8Q0loz6VR0ZJ2VdVyvAUxreXcTJBxX/vN5ylWZrQcz7Lw4ERkFLbg13OE4TbMyI5m0MsiJUHP
wCbORquoMOuuc3Cx30xnfC/fnmZtXLkcz/ioNAI79rKSMwDaFRxVyruQGGPGEq6XiDHzcWoCtg3p
b/ntyVQc60frzQx6HZS5BYcHU9i5JQrrORGNx/AcsGY+v1l9w2z+ivJGTQ5ctP2xABc7b/w8fNo9
PT/O8JjHBXSaRLDDsccaSlYRYQcEarssvMUe2ckq+v/YMKQmu+a6b3DdrwzlH4fn/m6sXScHKF/w
yN7xERpbEB2wPgocJ9hPFCQxwQoVFqMnghEm3rDy8kjJuUyK8W7FY29tg8eV+dxMOD0m/Jd0f5Bn
I5aXS8aBMkX0b4uFWLHzGHOHrxSs6Eyz1m+fJDmRcyEPdZHyD/tu3e0BL24XFVzfnj8/Dv0Jk5Eb
TCcqaKoxIph06GgEXcUdlvmHUFp40pBSgl1zsYqrGrkibUsaRutWLo/IFzYNLbmSaNOUXElNwDFW
ElslWawxA4tGBocWTQYPAQRZuApN5Apr5qwlI5RdizyhyTJJagERu8u7BkSsBTvGMtAFnqNCyK54
PxHcfMMDV9SHkK/VpzjFBaRYuFuxseFrg0zcCbmwB+6Gpy/PD9+eZunD8KkcUstJyd/nToEEh/0Q
8BCZkwjsSGM7IpRKMgnmlb2uYKJMddwh+MC5uonVgzc1F6rF2jIds2iG0H97fsE9P56K2hIZdSGF
TDw4etEyNBlY57PQXTLwhmB3SK7fJn1qRsGFntSHJ2oeG5kAYmDLwG/cbQqS3uMfVQI4xoDl4e0R
+CUF64LH8JfF7tQUm85KzKdNVEv7huJ8Tc85/KflcxX3Q2sPbjlfOUn3D48f/9hvMPBtDwBp4yvG
9iI6MQK+JmbIgdHR2VhaBXALt0zMRr+5TJ/oObdPD7dvarZEi1ez4hV7xH/o98P9+I5LI1uritWe
dAIlBo4gpuxoNNgRe9eDQyK0i44l+xaf85yES43sxycWTNoWk/0xmP44fH34bZjnc4gStJMsZW7R
QY+YsskTuiIWEROkC6AUrGgb1MvxFsTcNojpl3XQ51PkvWTRIeSnZTFg40w9oht7Y21U2Pcp0CuK
rlqk3bU+/GHKo/y4eRyG/c+ggk9t7gRT70SpgVA5aCw1EFJjczJLOiskdpUACRclNTIvkgXWw9XU
DGuPTDLCGmlvRZAVDTgeQWHXSjEqQa0Z9Q5x5MD9AWsaHDTDQe4GGXWQ2GnK+Vcl0AWYmun2TUUm
W28rJUzf8IePSMe4rUrpQdlYByhlWDUC2roj3IHy47F00wXTKSLKBBiG15zXXoZSnj9xU1HbMHSV
6PvFd1oFAhmZ9HbCSGkg8JUmRQ+Zh5ln8AWFlSpnPDW/9JWeiQgqrRpk2e2qfV6eOuRqTGgpRsXh
V8Gd9Rakcuoi9pDkFCsFKMgw5mROhBkX1StfRb7YJne6XdF+2zhLU7f9BMt0/+fX/p08RVUxMgVL
KC1Yy9lh4g22mnGIt0kiMMO5CySkelfNB6ln71Vj9tupD8Lv/eMpCwgUN0Y3OCM6K9UxbHrAI8bP
I8yuCdgpRoIzHxYFFbNB6snXPSCs2g5LnfrbrpSBZnj3o7PE342Bx/Ln2LIKXk9ynWAIW0G06Rzz
FLYzA1sQBLW0V4UdjzOcUTuHu3MWtF2n4cLFW7Xqkf2MZ+FSFRWJfxQ7CASgpogjjnUgYPYgdAUi
FZLIgzFJWf5K9v/zuUPwcqumdF2lbHW/ivKib3s3PJcy56dNWe7RGx+DiskokOkELDaCOBFGYZv1
UtSmkgJPzoXrTvARLy4epzm/5qvHKpZa5+G6t0vwI+Ti+X46ggWlKUhJpgqWRJe46QQxYHQjBJID
4QobXjnjldaKmddgF6aBa8rWhYN40awaOn58KfhlpZ8PGFDFyxl/FUTvhEAGCiG8LXaC90CfgsU2
jMkEwpK9kt4xjX+uh+Phdk173/ik+7uWij2aoQWHbY9fOBZBFlsf/0RllSilmbguanQ3NSy2w9PO
kK3hPooUjL/6RGAx2+t9C45P1vxtTYO/7fK4xj09Dc+lkfHMjxFjoYAYsTFKH3gjOqWAQTBuMNET
zBylmQXzN0oVrzsxX8105txz9dyCr/Uxjr7FkkD+Sj+zd8l9wO7Gfy8cjtYGHZPDIk08EUlA2Bvs
iQga2yRjuugEcBmtyPmq8PtxhjZnx7s3NembBj98iZn69w/hsBxTshe+m8QoWJiqyxkzzMFqB38a
dpLNkWeuvCDXNW46jd6m/HS/pr3hXOhbxRa5Ibv9dorYC63RmC9BJ+csYyp2SkREVVegGBQmzgSH
DZV1zuIiHMxp2JqoNYooXDTLKOUPmzkmqzLlk1fmkHWRUvQJllUiqL3HJhgMc4G5x9rtCN7PVZ/8
fI4zsmnTBGRFglufhVnilf/Y7z89gsM1P1xn0SjPHa4rZiZ4Dxs2gCFDQ44ElEEy4qoUruPYZ1Tv
4W5NtV3nK+kNXQZPPgyPCNCAQEPz1nZHBoiOwUSOLWaxh7WLsBt5xJ7aAXamdwYc0KuwjdfTnIn5
rh+s2Lqj2zVbd2oJloUFV5v7gup9yAYcm/SBHekNFg1ig2J4ITliNAT4SaAYhBGW6PTqqUx4f752
Kryvyd00dsDdHW3Uh326H8+OxrUvP1CdMWu1x1p5bL7DnaadRwUNKk0iQI/Tgf2vj5HGezXBazAy
uLhdGm0/vtw/754fXjafV73l0Go/lN+MP3AfSBCKCGqB/etQKbPO+SwRu5aCjwp+jrtuH5yfttoQ
y8dqFhu1U3rgy3fyUyzpBiMfxQ3JCZsag2YyBXGXorcGlkUGgZTAaiIqvf2J2E9njo9/qs6Nx+Lg
FU+rdi5/Gx5vh8eHJ+RsSgDyQgtMSi7hM24SvBsnVZdAm2FGQ2bpciD4OGib0OPdmlzd2BbDqmxy
BH952e+en0bol1/2Yz55jftivGSWdZkVsH6H0DrMdCaAY6pZ1ESy13FfcOQLoC94e8GBaHEweQL3
BVNgQtRRBWl6bKomUlREdpIikroSFJZbxC6FzKk3hAbZbqo2H7EmpVE+ZBi5VXIk5eH2vzen/liq
JAxEKaM0RHc0e8yLBofeUiBKiKhdTgrk+qKj4HyUm3qmTWN6qmed7b8+7EOFvK0I0RP2tkV5wDA8
I0A/cgvL4rGrOTh8hoJ7hEBk51rcL0auCdO6QZiZUjzD591+eBr+8+HLsN/9eYolUnSVtfUmKCyS
JEhZAA/fYkdOoSTR1MIKxUXMoT1cTdEaTQIvTi0CP4+J5F3/tD8VQsniPZYwjDU0JkEwDIOfusKM
2YT9EoJxlMqoQlx0bF6PuCDItgi6XWjT379t3h0kFtga/afh67CvCnyjVfDdgP2YInaCQvAtL6Pt
EmxBULKEUn+5vHI1+rlijcVjC25aX2I/Le8KREzjhszRYihbYdOxgKckCmt+eIcincJuDFIsYlvn
gcJwusaK8n/2dmy7bSrBd75iXiolUm3BcreUB4wvorbjNsFN2xdEgDhWbRMZ3J7+/ZlZLgYbcM+p
1H1IzC6zM7vMzN5mZ6So9eTUWXLDPFxI5O73dJMEg5tgqKLJTcFMigKH2kHvGaat0/VVCwUEZeiK
swZed9tK/Mwoz9AuXelRZmldvsVZ5qYS45Bb2di2MqHDUOwlKQ+4a9PF9bFsqRLOcQ3GzvYFK7XU
0TfY12Mmu7hWFNhxGD0d8LHR14k0MeiaB5Jk0mb1UJ5QXI5Jb4TrGaYrGg4Xv3d+XkPUep+z8s5Z
c7SG5hil1dIclYV/sLbrCAm4uNY5wakGDhOT3kTUcNpti+RkRLF6im3pwyHFT2B/61pnA6H1hl56
jMfM5wsvzK/H/ffNfp3TSlo2c17LbyyP9AkzVLsninRLRxsOUQQtuaeSKZkkq7I8/D0rzjqSlu2a
+ku1xjTEEjHJp/RLUN8fzk96MttBIztsVSdDRWJ0i02mCBKy3LNwEOkNZRPnULYh43D7NwIWZGWC
MP4n3yFbxOHmpTA2eTzudoh3gK22/e02gZ0fRvD8C+L0FcXp7RCTxxZchqf+YR1xbxXpKy4J84IB
763UT757uErz3jbhAKQsj9vEeAH+TaMBiNXMJEq9JC3z64ivVS/+WfX4UGkV9gDHR7aGyNdN+HDK
y4z/hlP4vACyR6v2L50nLvfbX0DLDyqJX6C02huAG6f+9g5XE315AYco2YQ4mN2Jsxvx3S0kP0mf
hF58TD0k67jnPu8RWZhDUMyCd7fC02GT+s/bCCsg5GW1Ul+ewk8sxGGqqLMDR5FVxUNV5FiAt7s7
fXYe3JU1x18P46mzvAch/+9+/ThuB3t0vvFSe7m6d+FmH+97QexvoySIwlsQ7k6ppYKytPghWEG6
+UFej9yDHxD7NiQmKsasfADBngL5sKO3k5QcGzfAyLrKShiZw2y4EuhIkqFrZ3gSHi0lA02gmbgT
bTrCkJnwHt/nTNSKSavRhjArJ6ePzv+bQcQqzCi/bYBajsyBjxzfGYUKarpFpT2Vq4sdiYnVPvjw
CB8cF9ZZAEzsigAH0DPKWBWP0gZzk3mgJk4BMEytRluRincARdQPQ3xMABtKW7cVdr8VZjxsNliU
A8t90PJdjWqXLaz5fGl3ygVjYl8pyGJ6CbM++ocQ3tr4R2ZVFviYqS/Az/qWRODsX+KrLP34ab5J
owxDQBv4jSzA6jCuZc9gurIeRq0NUrW+tChFAmFSFJwryoGppORyGANQW3q8Fyy3QzWAcmIbDYSn
6JmmyQv+yVrFrUKbCoLnjSzXukKbXMIwZhCMs7Cm424gtd5vnjd37mfjEbJoq3wys68VtEkiwbjj
Ly50aw+jrxe0yRxmde/Yy1EndWpFTSFtO67lW5UAx0OWwCVtyNe5jtpFO3KV3aZwTt+UYP6PqnaX
Lh8yunuhb0xzLlDNHOY97FBDJTXhzoSakqmfeJTDCP8CUEsDBBQAAgAIABSLLkrmbovD00EAAOAW
AQAuABwAaHR0cC90ZXN0cy9hcHBjYWNoZS9jeXJpbGxpYy11cmktY3Jhc2gtbG9nLnR4dFVUCQAD
WM96WGDLelh1eAsAAQT1AQAABBQAAADsXVuTm8iSfl5+BQ8bE+qxUdeFqgLC6wiEwO6dvkVL9szu
iQkCQambY0loELLdL/vbNwt0A6Ge1rRfHC09uGWKyu/LrKzMrALBbZ7FcrFw9Pqnv5zO7+Qskfkw
l1L/l2lbhP+p3UbFQ/NU+Jx/zibLqVycf765/HTln/96Xu+vXSRyVqTjVObOYRTts8wXaTZrAiDN
yxKpDx/nst70h8UNbuqd66hIv8ozYJcDjH7bUOn2sXjIZqCDZXLxp3YnF/NstkhHk5q4Axp/Wshc
v+g3OTGENa0fFfJ8mE4btAjCwkDYwKaOhYO4w8wu51w3kIWQdjPQ2/S8imIdmv7QMepi3OV6B7MP
mGByBoTnWV7s9cJYc2fZ7HGaLRf6p087HHt9F3s95BpIUGSYFOgElo+Mvs/dwEMmc5mraZpirrvf
oi9SH6SzWOq9LCscnQmEkL6QcTZLFpo2eFwUcqpfzAp5n6fFozJvIeOipCJnEZgx0TQvjxYPMtGH
D7mMkg0TBHZNF/OoiB/0v5ZyCZaKs2k3ms8nsjuN0plRlB00zf8ey7kSWh9n/w8v7Ln90PU8fzDQ
O4OLDwP/w+eznfOVc2wG+zf/7jq8uP7sXl5Ap37/TvWKCh19R7UPRTsSrkGhGqJ3c3c78MPrm+FF
8D+a9vlKv5P3cOZCv5ZRDsIocjTDeK9rqkcYDv0/hnuTYoWEkbCoDV+MnQOWOqD/S9cpQb/9qefG
9/P823d9cPVf3s3vLfNJ01wwWRpHJd/BXMYwmWIYlHGWT8uDjubduYOPF9cf9KE/GDr6Q1HMzwu5
KBbnYO44ih/kefyYpxMQYyzztPtQTCea9mGSjaKJPswj5QDL8RjcvZPLr+BsUo8f8myWTbJ7QJ6s
XeLM0bBlwlQyqU14l1mEEqZ7wbUsvmX5lz07/EdlezEej20uoogzWx96tzBusxmYUowtO8Lc5thC
yjnAMwrZ1cfgRIS81WUOIQPtIYpnI1rUGlN6EBE0hZCBu+1AFGPr+arZNhkdBFoUUV7AVNkF4EjA
5/kAo2S0rwmNSYQTpA8Gl/rHCAboQc3o/s21X8cyuW2SI7Bia3wQq1Qmnd2XoDN5nxVp6YUNRIEY
faFnrBHrnoFpq2cAIn6xZ6wRn/IMDrlE8JeqNsJYRHuqmQdUs5iwX6raCvFJ1Rg3qXih09f8pOn0
DIzxYoCVJm0AgggIuS/2O5Qk4+bg2K1jA4AW4y92uwrwqbERBBIHe/HYVED7phNdxLmNnh8keMK4
1D3I4GUwSOQ4Wk4KsFn2JZUAkOXRvdS/pcWDPq+KsvPRcpZMpJ5uCsIX4iOuBwpU4adQDAQfh8Nb
ryQwWOEvoA2GsBad/gEUtVkN6nrwFJRWVUJQAa1KI8d5ZikENdNOy+9y5GW5bGNW1hK2FeMIjLA6
z3F2CgVPJf2P2aJwnIUsmg2d34eB49zJ8W2RvzvY/f0vv5zpb3SoR9sEd+P53KEWP9PwkaxHEcL0
MOsPebacO06SLqLFIoshu8h+FkNNNCsuswiK9M6ma/14yZZAEugsi3QC9aojODvTyLH0xgmVf2fU
/2s73FEETN7Ap8fhj5i0UaIf0BGQG8YoMYl9YJAeHAYUzCaF39LiUt5H8WMbhZixJKKmolDHgoUK
4LcdLllgqGs79SbAt2AZw47Fty3b1o1/KaioiAbZMocSNZHRZJLFfwKUBfrWGrvTqWNScEZ+JJQl
xhC/S6iPw6vLz6n8dpunX8Hp9HgCFb9CwwyVcOsTFBiMFCgmjkVLGCTYGtquWgLv4RDLwmeaBZIm
6Sgb/Tvuut3kEb4/EbKEjEQUw+o42iwSZxGsKeZQ6J+BRy8hZElQbiFvs2xyC9HLcebZvPM1S5Nf
S38SXLNrqrXFynqUtDlkflDtevDp7lIlnWqhqBaP+QyWEKHKBdvj7izpA4d7MLSTzSaPbqwW8o6y
AjGxhtGx6GQ0/jv0CqOdgwI2LQ3jI3GjcST1sAHbT5M7GUsAUx7q5nn02Am9oHbOr29h9egFZSNA
zhYFHFEjsPqPGgeLaJgcS2g0YiA5/N9rImqA3iSFeRl6EwiraUzsMFnpHib7dP2v4Qic8kuYzr5m
sKaASWAyDcL2MWRsihBPnkEGW+X4rAfDXTzOYv/2t/gTphWLeZaqkQy+3mLeNOTtb5Q2DlXSvWWu
NoXCz1fRd7+mTkiqcKVhs5xXySo7t8ysXYUoJmMTjfRwfX4YV2rEagYvCzViGmbHiaQJovaOyIbZ
TWFqmB87GbCI9bvlbJJl856SB6Yp5HfIW2sDlCidHXerfK/0OgKIooYI4SLIoHqr9iCaiFY8wjxO
TH3lzSoRPQbLWTkUqoAAo1jHaoAgj7dqMJe52vmoMg4VGraPFM3GYM8rVcxBh+8yrxJIXTCBmUeO
DUEsoVab4HAteWNhAdLxcRYWppC4jBh3n64vb25uw4tB6LmXlxfXH8KbT8NweBO64eDm053no/DW
vwtu7q7C4NO1N7y4uQ5DZS2hEXIcKqNjHFeoy9kljEU/q7RaIBDIGNcIPVaiSce7EuEPiIKyXCPm
kaKIpGqLZitoszsGI2gDN7a3t9ueNVdbc+bI5KaeL2dDCcXcooDCPQyx44wiiFHhosihxH8XP0T5
W33bqP4fFnmUFouy7f1uY5nZI0i3VZP+vpptVaVKYd536vzKjI+4CVUrP5J7ZMNMSGo9OhA03+oK
eTXJq+ltU9KGiylBgCuOxI1RjBs9rmBJ046NeVkj7mOb1AJsqwqdj5OktcapO8AIcj6DZVa5mFWy
Nwsv7JQrKRCwKHewwy9QBMhJXeauKAslmEkCbqlm+F/l+bkslvmszBPlCmcrbV6t1mriajF9BLFA
WPr6xPDbX9UXJYxYtFyRHCVOUBNXetZk0Y3G5Mkl5k46MqbRDOq9/B8YCFb4+pdyiyL8K1vUDPP8
ZMcwZzvJbnqfb1MdwXxtmucLNJM4aQjcGIiRjYHoq3MJ89VpzF6dxvyfaIxRBBov5PQb5Kxwkd6r
9VGLvvHTk8/i2OYJGsPScpYtJlLOlRDbXqsZv3nTxe1hfFcKsxBFBO3kzOIhXazmsOOUgkOonjq7
GVddmnKcZJmXtcG7STa719U/u6m3bHuHJ29Vob/6TOoZWLDG5sx/R1+jQZyn82K7R7Ob7ixu21KO
9NG0TOyO81FGcyAZRxAW7+UOx+UshTAcqsr13ebsQQGc4qslFLLvf6nXEMdrpHQpUypjeicMp0pq
CJWKdLAtmls+z1EsgfqroRiYKq4WUYO1iuWOoNVEpLi5yfMMxBFDeItYLvqG0WLHXorEak3caTD7
9axz9l75inKTVQFYcrOF3tmI6j44mLDmptBzqJko+SHU/FmRP96q1WvnJeJWhVtjv+k5ivBRUq3s
dhwpXE2vcJ5n3x/f7Uy9JYh9V9EA3JcxfvsiA/4K7r1dMNlU70zlNMsfHcKZ2GyIHRGawcG3oXmU
JY9lKMXlPteRknC0lbSpPtUqFx0d4BnWm4K24V04u1VcY4+p2mA9Ov7H0VgQfRqpWmlxrxYu87bg
/xxBdEQ3gsrVYGOr/RkrOBND0NlZDA5k/jWNYQERP9xmpTkIJo0g/Zw1JpPx/hoTqk/eiIs/YJHJ
jtwnFSjikMabO5WdajzP9DCXi3KJrQ4oyGprEsxQj2JN2k3qUhImubLu9aDyp7DysWovADyvjCY/
ZhJZP24S2fqPnUTWq6sK7VenMUavT+XXt8mByetT+fXtW+DXt3GBX9/OBeavT2Xx+lR+fcUXfn3V
F3l91Rd5hZeYXl/1RV5f9UVeX/VFXl/1RV5f9UXUZmp527O6/VH9cCoebm+6PsoQKBlxMMRcbWo/
hPFXdR3tH1ohEmTHCuo3VuFKmuCisZ3697v91igiolKy0s0DgWn5EzGnSKcy+R1kV/d+lxehfnmr
J9lyNJHldSRs652qWzq7v60oLbZ3eR97pUyYFJGKzG2UfwGZl5m6fQu+b2hFk8njxXQ+qd+IVvYZ
xNlcJpfRdJRE70ZZNtE7Z+trd22nVFcSmqeo3zn+ru4sfJxF0zT21PU49SPD3dtwOEZ6Z0ux1Jgj
8+hLaCjmieB6ybUE36jZU9fIHDWwn2ZFOnlXtl4ClfedzdcjGJe3I+8QfnCsf3D5jTGJk9pFofHq
lr3193dt08Vxylm2JS7zrT5K0c0FVsf5zxC13wz1AwS/X188UtfawA9yJbhzVt0WqG4Pb4gvh5Ug
evzFQCuy1o68d01vc4EKQzTrrA0YTRwszL3bw58DNYrHFdS3Yjw8jMZe4+UwYp1C+CmEn0L4KYSf
QvjPGsLtUwg/hfBTCD+F8FMI/0lDOEWnEH4K4acQfgrhpxD+s4ZwfArhpxB+CuGnEH4K4T9rCCen
EH4K4acQfgrhpxD+s4ZwegrhpxB+CuGnEH4K4T9rCDdPIfwUwk8h/BTCTyH8Zw3hrPaQDS8YKC8p
uvPqIcD/4DZ5JKrnK01kvBPBj3nmhI1NFpXPr6jIXFXPbCsDODn+3viDw0J/3LCYP/ipDUiPV6+V
KR8h/4fFV++X0dVDlKTe4aYxSoszR9P1PPrubN/ygjGO+dhGMHD5qKXBUg3xoYZkt2HzUSBJ2tYC
DYtNg9KNWTQ2cYU+32uAPK96tDTECkTPrRYQNeFze5+wqWRhVGswaSIqWhhvQdS7SMRGE0wOyaL1
hsSikbRUg3kIhO33AG+AlnS+27J5Vr2ejycNFTEiSD2WNCdO27t6dF27XL2Fxrv9VL2rh2t+nmd5
+f6f1dt7Nj1NbaieaXO9nI7Wr5zCpqZpvXQW5Y/6xRSm0sLR1m/q+b55SY9u6LWDlgWDo79pPAyz
g870d4z3PMFdy2CeCAxKe8SwXIsarul6AmPhu6j//u9fjbULZ+PRPgc4OB4L/Q3MotXz4NWTSQcP
6XQ1tUo2iAYssIRnWMy3DOoGptEL4BuzfTfA/X6PsKCNzSGpdV7EbOFl2228lnP1tqpdaib3A59S
0+gj3zSoKbjhWn3X8Fm/71mMEYF6z6C2K7jGLiLjPXaWoGg8pk8kyQ5UYm+gE/zp4q75Boh6CGot
WzCDWJQa1O+bhksQMkzPRD5zA58gr41oXXJ3nEdTqX4hdb56Zdfi3G2cs8vfSti+dW2UsAb/6sHy
bbxNFvStfs83zJ4ae0q4YRMqjL5pWUJgxl0XtfGuJLbzrdp2edoW37dzFI9H+zwPGbjn24EI/J7h
mZgZ1DO50fP6xGC+77tgb99n5ADRw5ZdNe5Sjc3R/mSOuS3H49HBZ/W38BU9JhjY0yCuiQxq2+C5
LrcNH0O8Ysz1+wE9bNhK7lPmrc7QKoYqDXDKrXjLfHMwppEJGUA9FFfvUI66hAA9S72EiAae4XkI
IhD2PMP1PNMQzLUQ83wTYRWBlotczaVz1XsHyyJUPZu9jqUOMhXyGrVKfymLvhwtYVlwf69egNLB
XdUTKyt5NiWYIwC3PaAhqAHWDwzbwtTyLWJ7PWWl6kVy55fpKIcYfL56wUKwts7ivA2n3XptZ9Y0
Yzze14wzqQKWKlFSKPi/dsk6SpkmqBEg5iKXuTB3XNugnFuGFRBkBER4vb5LOHjvjjWbUmr4nKMW
fGGPZYWv3iqUy4XSZ82BWIqDRQOT4L6BMetDqGTCcG3XNXDP7zEkkEvLULnDYU9SnYeIWnhYtLTD
7ghPp9kM1jUPYItyXEm3jNw9WG1TH4M1bGFQCICG1adqoIXrsb4ZWL3geSO7ln9oPNftdfbjUQv7
cbIexfUzSrPZOL1fPTVzbU5YWXVN1MUU1KB9vyf6gW1wC0ECEqBQz4NMjTAMskWCAAXBjlUrsedP
AtR4CoT3eVpx1LByWXVc3GxNAFO5S6tpZHJlb9ekvM+AHjd9SEDUxQYUZdToe5z6AnITsdi+vXcM
vQexa+VVY426HZn71CPTaoSA3gRmW5ZV/mF2OXQo/47V/DeRICp8w0zpg9MSD1j3sG3YlNqegFSM
GH6a9c1G/gHm2xNq7CPGWtizpGQPo3RVPj4ab6aYUM7geqgX9CxD+BDJqUqbLoacLwJqmzzwTMbM
+hSrSanjC96CHzetp96FID+7wXbcWRd1KYGO1ReVGjFkasp8w8PcBSNCqrFtzza8vot8yycuFErP
mWorrHY7rhrrOsT2vg4jKhrOu/NiodXzGRdddzgAFxYCOoPtuiqI2kLYvo25oWpnyPCuZ/Sw7xkB
t3peDxOX9PiTvtCG06rLbp/h4IC+w0FN15HZkvCSJGlUMAsZL8tXnXZEOTuZoFR0VdYFDX3iMwaz
EYpESLXlQPVoD/7p4R7oK8AS9EkNByvp7ZTXrbu8KRQ0e7wpZdHaz6cyjgBn7efc5l2mqAYcfB2q
WKZWAtQMerBC6QcGt11GPd+zhdvIaDVBWh1t1EIhHh8w3Xi7t9HhlREZJhxI9V3XDPp9BBPOAvsh
yG49n0O1wHs9G1YwOEDiWfbbbp88bcnteXWFEtSiUBI3/P5mLmf9NJdx8f+8Xct2IzeS3fsrZukN
aLwfSzxrak7VuKZke3rXh88yT8tSHUnltufr5yKTpIhMkFJ36/SmRDPTQEQiEHFvRCB5D+L4/fDr
vNVhu2rtgnltfFKggJEToSjAg06GWITwIgNQrrtu7c3ofTWaWyYabDoa4N9Wg5tflw8DYpOSIx6O
zvvwsa5HStwyFonOMcCeC2J8riHIheK0MkF6+xrHc5jmwlqMFxvxJe0sgKTyaNTDT9YeTdpUe3ZK
Wu+zAxwPgCOKK+JyhP/m3oBLAA5L043jZ0NNRFA9EcxRhPjuLzVDfvq1re8dnEANIkXxGBwWPgAn
gm07Ud2cJpYFZYU2CvHv6sJXBPvuYfn11/36gn/7fHgD7OMPc0FaJVhHCSU2kyB0eCVt/uNpe/c4
7MtnBB9LctZqbMcEnYRjmQSaEYaAjpz0RkVxPYJPB++rNL2rUUMtOw5muXUTa/643eyXP93f367u
/zipYARbMLXgtK6NFj6JAgMJ+AsHA+ZmvXPEwvkLUbiM5fqmPJ+ir8j5HY0SKzbnHfhydzIoLPsv
H8dfpjraFGNu8NZK02QofLShDmyOAmc7DQQAiV2JALBepxedybsPfYnH2/cHa5pJ0SrBdUcJOV2J
4zuOz+yoiFhTX9gRrmIrBjdivc2ExiQ9K1lYYV7jSw5DX7WiRuT1cjsXeb0xR6bwx9f1yZNotVB0
UdmWkokJXuVTMsP2EYqsA8cRRhnOi0vM9nnBabhGiA01cyE2NQ91EOLx9ukZjLIRMBkeE4teElYC
wLM2nPhUfZp1cHKSafxtY/T5MO38ooMSNnpK59/V31E/Z3lBOmwMge0eAOIFUAFEACKuDlVn5x2T
9KrhYcT+UuFCI+FW2rmEO8cnlrWGfX7bA68vaqiFh11U46rZBC2AFMDSTc12IM5igwDcKCNN8Sxw
/9o0w8/vLycWfn7/XSue6Mm86iRJToC13OT6EzmPWGXOxaKChrpDjp/rshcVjOcIGxFsXxTvQPRB
SpICTMO+ccb5FwPIqwHyUZ4LNx6uTtRe99TeHY15KGDdxPMYfXRkXFiX4K5IsBmOLAdJvPeFlJBT
piymHP3bObJGiHMVJOXz5AfwxdSPnaYZeZqlHAgPyoxejXG2EHJA/o5KAztDbES0wj4R8G7VX5dU
CuUBmM+lV1O0YZorLG243qojO+owqY8rUu7vnj4tHx63D6cFUXaAeBwg1fksicQWws5hNY1jYHup
pAiMp20p/z5S1gCbqdDftcqZjsbKnhDib19/PXGe6si8DIVHDWpR/bnAfnIJcFwzMOmMVcuxTLJn
pxHaiXXnUUu1m+z5/3x/AiJwVcMet9QMtiI0nnWUMBMNyxcSG8FFmklhNgiWWFb6eiYnLh9Wl3DU
2W0nEfp3ni436slOdrJ+OXVpgwjVjGTdCaqCK1t0TppyokBzsbc5/Jap6DcKhHsemRXpn9ZrvNaI
qkVnJcBKOtmJ7S+fzlMsdUX4EOPYsCImcA0QBXlzgORwQgTUJuEfFyItiVHLX59g+XQ1w/LJt0oo
21Pi5EtrDnd/u33463PdTFeRPasWCyRVVEWEFq7HauqICQC8UsH3xNTnO9MBW3GWPXGW28nyv//R
r9fb27H/Bc+TqpH6jh8qa1AsFMMlKbamF8De4Q81oAulUSuqNLbMa55oM9GlBODZLY0ytpOCw5fb
OfspN8dUhBxgj5XcI9pqAkYAgyicVzZZSFZWewb6wwp/ifSUm4sYtTTQR7rVHKFKt2ZHX3ZINT8u
7zZ1Nx8LE+Cbh7wT9xquw8Fqja2UkypigSCI0nkAaq4Eey2J3Yx8LpqiuzmBVIyxIbWDm+tvkdz+
vnAn2xxS1VjhoKIlzClavRxYlk6M0MBh2gJurkxwaztMIwHo6lwCtZ2WKT4v/x7xsB+Wi9W3u81t
LTEumKtedyzgMOkcB4pGHIY96ozt4hUjDhCac5oZntJ8Qc+B1A/TGX4YfnEW2OiHj8v1jzfP1xvx
zWqeiFGWnYD/+a+gARGOCNCWKEA/wEupQpiQDsHKR6BuqQ3YXgE3meShz4b5rp2JdabnJ9NaPf62
oMfpxUA6cnUfMoJlBCwe8DMJOgeikio+RMMd1+3cZ2O0c3PTmVssO+j4rIbwzBizkhHYBKRHIW4L
igfgEnyIlYan4J0wLL+Ig1+oHjS3tNKLVUd6O02dxNv7b5t0v348Sg4eO1aWVEkOmCoR6hBZ4AIN
CQFBRWnHM7ibKYK+ipMcZ7igwfFyI70773s4frkSp6xwuX+8/etm7PY8WZ9ecDkI7lKwPAG8ygAs
qwAJsWtJzJTT4mrvwyQ1PB+tEWYt52UEtVb86EQOXuju/mm/+/MZoNKhSFfTkNKGlIUktBhgN1gF
4kgpJCpjs3DOmhivubfzgVvBlp3dsV7qo2Df7v6+v9uctoda1HUFygnSZkWwC2ti10GaoCSJMMgS
QgYVEF1pzkdrxNjQeZxSGy0npjZaSjwvOFajYwMCw5+h6m91xvzYsrp2+kgH9OUVojBCAM0ROzle
T6DP57iQtZ3f2Oqk54FD0+q2m5rAL/vN9v56yi6ayDXDagetavMSnDbPhjDto0/VBxR5VaXzKfq6
nN9xroRmnayNZkxPWkU+LO+++Lvl7Z+P+8ENjJWh4S8UYDaBroHO+1oZErZGHSM9obChJBW4m1Fv
zrDORbpAls/uaJVmPaWXcrfd9X798/sKjisQqTuVWyNEAlqqZTAiYohgkzySnCI2jc4SjOdqNX2+
OzRnc3SkxXY9saT/+bZ8ePq/sbuIjWhU1oTKUIuJ2RvNNNGitm8EwOZQu/Ok0aHoJIqy4eoSPA/e
f5jP1xvRxU50RN9NAWisnayft7WFbftw6GV7LicZVvORVFngF2UISGzCk7UIyw7/UMlM0UFolsKr
oklnrguBpXPnRLt5jNHWLSe74932/mi2px3OFFtIN5pMstYohuBoBBSrft2xBPhRtEcALU4H9xrF
zqa5kHB8vuFcDVN/ZnSqRv3yiNC+3Z1MnbuhKBZYdtKQaIwaMwkwbQbbyirDtGyh+YL/75i3WXVQ
ktmIU6lrv/5Wc57PdSaFZ1cfX7Vr61xgoCnC1h60BK9iI/4piIosqcRVNNO2pGa0RpKNch1J1vJi
Tqza+/9+8P99lhGjINTV6YkgVFQIRKbEmm4Rlf9FRqTgxUuWUkwvY7c69mXYVq+28q9VT351fJI1
dTi2We7vvvz8tL99Bj6jKfpEk4/WgxUgcApqDHEOzNX5HOEWQR/8pMPqwpDnYlm6mqcpLN3YSadS
c3Lge8GlHZwqO6QoWIzClhJIDgagTNJEfKzdh0ZZ6pnykfprnvV8+Fa8jeuJ547i/W37529fHppO
NIuoG4HOCSBu9UUZ7lQksGNnI9xs0CXTriznYzVCMDf38Zat+VGI//qU3z0XRwaSabkvphbUg8i1
qOSxbBLwMArpua1Jm1j++X6oJhH5PHsr9Fr0hF4d7e1d+UutbW83z/RuMDOsoggAtITWvCsYFoUr
L5KwEKkTxRpj3igHPpGgkd512iDrl1dqF//xveEW5KYGpeFDJWlY+Fz7dHOsRWEuOdANuINTwYGu
ImIF+y8WK87vaFVY044KtSy8Ghbg8/tP8/K8ji7rCEyieakdaTAen+HDlZZeKEYDM/4ty/NnQrTC
b5c94TcTb/vr9vZrDZtiUR+7rKlsoZKX4ESEhqGzxLOaso9EUkdVTEUWLd8kf4ypL6SOcaVRZtnJ
xuPLqTKPX7fb9a+Lh+36/svdviUXtfFtzJMPf2tNJSvv4NxIkTULwmtLRciIJiFpymyMUuW30PNm
kOpzT6iG8UxvmzyBjgdb1q7iBqV+erh/ul/f34Zvu932AQtbk6ZSDAUKwAcVHUlJVYxaCxRGMpJz
iSoLCvScX4OD2hn6qrT3tHqoXUcPvZy3Ld6MScNTvVizytdrrFLcaMB2OiaOBIAdGDILRPJMvfOJ
52xfmU4/THIxoX643qpgWUcFN83cvNvebUfiury9ebp/QDSolYFBFzECAhstZxI7TXJXm4OFJi7m
QmoaDmzfqvhabDqb6hJGnd3YqLbqpOftWrNjnPz94/7xhFaVFkPNFRSH8WISKV5gOUrNxQdQUZsQ
cQJnOcYXCOgxv759cS/9vl1jgP5trXyNXptOsy6+PFXzHr/u7zbffvt6iqTODAtEHTC4sYXQAi8o
igQrYhouwqQC3ql4jLZFbO1I50I4tZo/XGf0FP8ufz9vYBwNhmF7LmAz1folCylRAF6lao1vKH3U
SqNhVEursM9fIJv+l5faF8/vaFQAKZurYJfbWU//w3boU3r/I2I6HfvMpXH1kSqTHI8lk2xYTVfg
k8d+BViRCU/DaePKi/HxMPjleH64oRF+uZm7ULfi08rq8ttmfz+o4Oun6n8OCtS/FZJ4k2SBqVPN
Q6XKjCCORBLBoLVMlCJ2vqjBMPZl+YfLjfQr0ZNeTh3nLIqMGQu+4AszVCT5iFKCh/SOEnA6gRjP
IrGm1LQFy9jOpdDXtXx3p3tlfJumM9zKdFTcKT1khlrr8j9HKMUQGkaHOn4aTrGABrroiY4JlJUq
4MXIOaHcWs+VieOOfVWnDia5skI/x0b4IVkxE3437YBK+8e/+YfV/unhtMHHdRlbO0GROZiGErWR
jQOWeEMZKSknFZQS9IXK/WT0vvSTm861WILxz7RY7lZ8XvMezwMu3HCChMqFHBQQkrECB5mSxebG
ZiA2akuidoFzqrJk6aVc5IVjgfFwrRF3txEdcTed/tPxgNFYg9WDpSTteIC1k9r2BEfkavMxL4SH
4A1YeklGvrJh8PLposPFidBzM1/RQ+dvC+W266ftZqjAnBDE2dk3KXTgQYCX1gY6RDgSaG02pYWJ
2k9HKX8toptNdBnYzW49V26lKJ8rhy+n+O455I8hvZ5HYvX/O/xn/a+hUG4ZVwkAr7DKZbmGn0LY
KyWmgJliMvrfgS3Ga42mphPO65edAziT7DpCiq3xxA45oYSIiPVjkteGtQISUpIl2ccEcIiIbuXb
ZO87Nzb6uA4yXznNj2y3HuE8pY+Ox0ALoyLwEkgSFnHExkCc455kpkOKgVJP+8Wq59FaIToAY7Wm
rgMw0vJpOZS0646WbKidee68ko4RzWoTsEF8thzwzcqcaaz1xihfDM114CtnP3G1EXmjOxa/2bjd
dnXosAEfffjz69P96emJoQ247uGgIlXwNARi03ro0sO+AwSGp4TtexHZhWMFk1FbkTZz7r/asl2n
1/XxaDNjIqfsb7cf9o9w7RwufSCPA8ZniftkTCCmomFEJuxI7gA/E/WCe2xSFt+uZ7SV5fKxjud7
GvV3dh6KVzunjmXX+O793dP2YbesshzXhJlFzb5LI6SQmRG4mkOO1lNpSELwolz6rF84jvCPOJwh
RfiaXtOZwK2+Tnf0HRpmB30B50e4ecpHH3K+gK0pFEGkowCyBtvYcVvLzSwLnXV9ScK/yCSaVFUr
x7kKa2rnbSxrujolaD/dfZnkZ7l3zFSAIeumET4h8DHJSO0QzM6zZIR6o/zsafJGZCbmCU58eToA
mvbLL3f3j0/79cft42N96cfk7AUdjjlzKYIOkoAnw96UwhrEehBceXh/jjjuJu0w18dtRdzMQ9Sa
8yk88rmytKEWSMc6hXTcSE6KrcfkrA7ES0XB7yO3DISzePl2m93nC/EqN7pw0dNFyUmZ47fhfVyn
djFz7PFQRloQ46oTuI6QEUAiMJi+0pwJxo02V1vYzsdt5eqkFtZ8dWrA+ul9KRPTFeCPziVfX9cC
mA9GQmzReL7CyILwGQWVb2S6z7O3Qq9YT2g2S86v75dDp9uQRxze+wCPaI1HwOeiZkRUJb8OBuIE
tOMiKsNesA2MeSm84lIr51Z35Nyaaefidr0HpzwVkYaHDHDvQT5IqrVsUYDxg42ZACDwIE0UWYer
PYvnYzZCmU47zdrM2mmaTfDjzbUiBzeR8QACYmxN6diUyNAglaIKsEvA3qTfbsM9y3Lh1OdNDx+u
nez4O1c34Op8LTZ3j4+b51ZiVauMQ+sQZdY5ZwEeat8f05EA/CiwL1v3pjZMpGvrcTZuK1Zv/zk1
zYv8FGNzWkzlHDh4hautAaK+eMeZkAnnMdjMWAD0eg13wrD9h4gLrZidKu3abdjEfS0fz0q04ogS
JStVqEJYqEmNwmAfHpzBe6aMycnZ5jD17NmdRm1F2syB63rJth2UOLzicOwHw1ItWE1ZAEWohbDD
qUehYxnaJ02q+XhNAteCKJ2SzhA52PSi+X44THEZeR/vaJRYdg4Mrpfi1ID67sOkOmpoUqBVglDp
ayAAa7aFwYvpErlyVnHr3qg6+qHz0Jei99DFKYx9Xm72y7v1dhIySlbM0sTry1mGkkeE1I6SWOAc
wlC7F28UMloJJsKrnvBTd9zwilNGfYScASHDlzgQeNBd8EUbnK/9XFZoXcDp0/XXoUyHngjYAQnL
5ZT4fPwYb4aiZ+2nVWOqH7SxhAzJlCr1iB9lIOI1utHAiokFQUO/xiPUsS+c3MWVVtp1xyfsJO2Q
3dK802BIusFYq9gssVITWK7kWPMHnFhhOeEJ/tSogoDycrn5JRTf3tPoUHv4pzpsuJ42aTUBaqyb
HlrpmNDDWZnxw9CwFWAgbsjg6pqahrNjRYIXJ8u810m/cCT0HwqGz7JcOxc0TVVDw21HbTvN4cVy
9R0OcOlO1WO3CuSyVs4SAakB98w2Ku1zdi9UEl7xDodzXcsr7p/cdK71VqzmZfit2LGJwQ6vxrr5
87fV/W1tyRteNsOGN81w4SWPSpDgQNWEha4u5/8n7sqa3DaS9Hv/in3cF/TWfTzWaTtGjtBYYce8
bYBsUOK61a3pw2v7129mgQRRQJHN2e3wRjgsCoCqMguovCrzS9aJADYlloZJf9Wxw3yGM0Hu2RM1
DzvW4qFfyLCHsdJ7mFAFjlrZSHQpOCZKKEWsjEF3SnKLR1kMzImUwKcAjSKziqQqo1jnjTfnWFC7
rhIYBNs1RETJMkapZsr3NQbEYMMw4ajvwKxBKxhcOa9iAjUirJCCKWHfjtuUkc9LhnK7olo0zqoG
IdQixffbff+ye3yasCS1OJ7wM+sskSl3SmsQxoHzzqDZqAJ3xgThwfC5tLL1yDVtjVSSQa7yYsZT
wJdDWncJW8zSyIv5Tg8IX5okK32Adw82LbcKJLAKoSOOItyDI/wNg2I++BlXePbETU330GJmiYzz
7Wn/MAuj3X7EvxdhNGZWlKyfZEDxkdCBDYdImQhUZozrAs2SgGiyIbr3yIb5WNNSny7ArZq/xqEa
uISTwfEVjK3nCXsIRWoSllqPuGUWMQ1cxuxZrgrqY7Am8UwWtWHzMW7qeRp7r9R/bupK3Hn6MSvI
WpKUM1atvKABjDSMUIkAOgzz8FKOOjgeabDx3RPzT9Scq8ptOXeDsrLBa0+OC/3r77Pg/yp31HNr
qbNoSGfYAXhcgwfiArYs6DOTAm0bdadRa2IaZTODlsvoxKbf/vr6bZ7hhSUR4lAaUaryOBHJRlAy
QF7HtQX3X0kLhp2RgUsvDLnqMNgvZpov6HjvpiaVtejvjzb+Qe5PeTRmcvRSBmdOswQGAaakkUA6
sIV0p7UlmREPQjvWX281VkXFhqyPUvDiCbjrpb//T+yg8PzSn1JfQAnfgsc+wg7ElBylDAhwiAmJ
1qUTHv6XwPwMHi5ep6+/+/hzONQFz1bxHBELNtbIIsOWLTEwPvSvD9svl4IsMVunbADHTzksBFDI
CwHXg6RIWXDUhHeEvajpOVciM3+m4nprGi9va6dwweZPrC0/VVaaUhyTQKNL0wWSE0aRROfQF6ca
S9pC8FwsqjqrUer5beMT3vZ6fbiJVar9/gGTDVeJehlLXzUBrzWAm809+K8Wa/eDTojr5IWg1ybq
TdOcPdycnqgZaWS0wcUph3ec+9afogRMHYFSCHzkwoCfqqgouoQg3B4Fo0RlwXRkIS5i8/VoFSF3
DVW2o2IZNTzr6GkQsJE70qE/CluROzAzMu8wIMOVdCq9UTJ+2ckL/9F28HZ6WGsGuLiMr5WEKzz7
en7eb/b3BcFwDLdpW+r1k6JeyI5aBQYdojg4WNqC08SZt9Z49jYwVjX+BXis6rkFN2udjvUIC272
D79WeoWUN8FKsRfNWoUMJgXPGrF6sT4ncN0FCdIEXHHPuXkPQ+mHhzMgVHDjpiafNnjCE4gqMPv1
dNRJ8EiXmESLMFeYgYpp9p2TpsA4aw7KMel00XtpGNcwa5MUvlje+8fP+4fnqRBtispaz7LM1ncp
FrAYnjuvreki80ppD9vtOnVTxn9zgedUnMkonT1R87lt8TlsZlX3/WY/LfgBmMUylrKHLwccBhDQ
GMnDGvYuGeqC4EKzQFZl99M4FQG9XIeOdr1eLvQjuPLPx/qh0T4q0YdDQRJXyYOHAhuSC7CPqNUY
PMpAUNCeacyx8e/xKVdlTOehJqdHalb12gDYbdi2lRLyOlTfUw40OQSU1NyBT4PnfU5x0WE2A1hS
YF55/a+gg19GBK+o3vB1XHq33anjpvQf3KcTeJVi5QPxIjBqmOpkwYkJKsL3D4ZXAFlpVIJd4NRf
lEl9ou+m5mDlPVtCTqkGH9xHF/62Ykwwxg32NACfyKGHAJo0gzEJ9rkjgRnNKP+LGJtTeFNz0a9Z
o0QtttShxuT5j4eXL0NV/YwVJuKWjtDKYkzW1jQ6QrD8JzlglynY8oaKTlrsiiEpy+r9i7PHTNtP
awrX6bjTQ9VSgMnRWAo2pTZsH7/9sQNj/mQ06YIgDpYISOkuc3y1Av7nvTKdCErmCP/ecHYml2k+
3IKSoUEJn+CL/jyBm2BSyyGpiifvMZ1OGIQyh8+rs5mgzW8SEVEQ7UItZ/9sgJtY0nA98KJaVh0d
wH6/7P/t3+0Bb5gQjKnQpH2SzHdWY/EamHDgOQXX0ZSYi0yoaN4lpnKEG/7+h8twxN/P4QUtLVli
C/7o3WZy+j99Q3S0pqRSWYJLTbDqFk8kDdjH4LGIzhMugwCHyvv4F23oJZU1i2uDBC7eTd/PEZmI
NlCPnEENAUKLYTULpyWZUMIvT4zQXEejFs74YrSKkmFdggoXh+ngr389JQhSg1+PtRaMZlhjQTNY
ysxxhOcEhzUFIqxXMuZFufBpjPnUjKz7elhG9WSt/P71np0aUjA7QmxF76JCFRQzoiyxREB5Mtpl
KVXM4DK7kukxRwedjVMRQNcWKthClh/jwb/FTx+XVUUS/EYFvjlMT9A8Bb/WU8TqTpk42NKE+b9K
ZZzIu6kZWIsHxtVdIw+keCVt/BFNgosCbbBsMAkP3CMnGOnAI0qgfVhgnFxXD/NGNUxFO1/XsuPF
SY9/98MyaSkmzJzCD1Fm9OVBstooeZeZsl4z59QbsNPXn0BPky9IXutnJrhdFsAM/dP2S6lOoLfi
gJQyoq5lKq0z2BsAIX64yhScHZO6hPD5JljYT/wdk1iPhJyTyYfbNzU/LSb1sv7ip+Hr48vwy374
71PE61gpVjQgQytD2M5gpRWGmjsvfO4o7F1BuGWSX5Xesp7n3OtbPldz1a+tRibvxOKYYmy39fsL
QiGN3Ah7sKNc9MlwKbsoMoJiUAXCKIguKkGjojKkKxK7cezzmwTv3tQENvaIWmG4fj/sv9719zWu
sYxcSW5oZ7xMmC8Nr8LA1s4BtnoEh9DHq6ptD4OfK5MuNyuilVmrGWbIsuz+5x/mgaZRLgk+gh07
571kQCxYLyCWEI7ZE0m7pJT0EbRiExFpTft8jjYD8ycqLnp9t+ai783Re8Kts/9tOCktztH4K5ZJ
4BoUBOKlYP29U3gABN6U5AWA3Wu9bGO0GKwiZGs2a0IKgtcBivin/Ol1/zJUEHdEG/DkoumUwxAX
gaX0zLsOPB1HvPPGBV6TUA9TUVA6HS4pGMxkiz//8x7+IZ+0N1Xl6CMGUJkW7BYw08AG1pghInXo
lLJWM4vFJYtlqAa6qWcbWiTsFkfmG+zqOyX8qFI2wISI2KsgK4clSt53Hj7+zigjaYC3YdLFc9z5
kDVJPV+TtOPk7m6NzYrwGvOogM86RR995ySLmPYOrycm0SXMe+aUxLE1yXVorAW74zwcK96+qWls
mEI7PSW6f/fh50XCWgB6JLa14YmXDB8svcA9ycCqospbG/x7Jaz93FjqXcNwBVNfrg5gHj6/gob/
8fFuuF90aZMmUONEWWc8zvepA1uCdNqCGWcjhQ1Lr1nx5RznkcfmT91UhK/D2eXi2fq0ctyP/2B2
iY7FadJw7JyEZ+SI4qqwJ0jGFiEheOVZ0in932pFTvcXPJgWD9vjfvzWf52Z86Q02QiR4oG4Qf8c
5KDHnkEBXHPGE+xBmeniVHw2RjU3pY31o8ye69vXg2XwcMSDmH8ToLYJ/BdAQGHsEcQiAgxr+Cay
MlkETVn6lzr3VTO90buverbmj21b/E1riwAKn/94eepnKZoTkCRxwtKAtryQmBwPgg+cOPDYjMMk
BFDOS6G7Gm5BzF2DmFPvpbv987fSIOzoO5Fy9FYspqCFtUYiArnDOi0dQd4l14HbGIIB7ZBtOxpT
D1rTM6w9Hs7sMndmi8Whv4LhW6pEiykuDHiGthQ94o/SywrUAdepo1ivh0ngKB0MxhIkON05gfd9
2aI7DH4BtnRhXQOpDVHGmWpl7pfUsf0x7ZmPyDGGCFPeNHXKZyrwoD5jiEmgRIu4qxjzNmCx+dVf
bzXVBYii+WM3NQe6xdbkzIVffvz08f718/5h0SH3qGEk4Vg52UXusAkHl51JJHbKBqmlMsIr8k5N
E9qUVNyodUdDuLjjJ6wutnBNdY6KcYrHRh6rPnVGMAMCf6VBpRhUZvTdoLpaQlHtGvtCs5Z/434J
30eMFJsxUgiS/HbMtRDOZZDJiAODAQ+SLXin2XUW0czxcIiIcDVyAc5yAbsAb1cc6G1j0fV2WvR/
vvZP/cPL/mE4NblEgZcFVRaWmpQiG8ewKxV8Q0loz6VR0ZJ2VdVyvAUxreXcTpBxX/vtlylWZrQc
z7Lw4ERkFLbg13OE4TbMyI5m0MsiJUHPwCbORquoMOuuc3Cx305nfK/fnmdtXLkcz/ioNAI79rKS
MwDaFRxVyruQGGPGEq6XiDHzcWoCdg3pb/nmZCqO9aP1Zga9DsrcgsODKezcEoX1nIjGY3gOWDOf
362+YTZ/RXmjJgcuInInn9qF/DR83j+/PM3wmMcFdJpEsMOxxxpKVhFhBwRquyy8xR7ZySr6/9gw
pCa75rpvcN2vDOUfh5f+bqxdJwcoX/DIbvkIjS2IDlgfBY4T7CcKkphghQqL0RPBCBPvWHl5pORc
JsV4t+Kxt7bB48p8biacHhP+S7o/yLMRy8sl40CZIvq3xUKs2HmMucNXClZ0plnr90+SnMi5kIe6
SPmHfbfu9oAXd4sKrm8vX56G/oTJyA2mExU01RgRTDp0NIKu4g7L/EMoLTxpSCnBrrlYxVWNXJG2
Iw2jdSeXR+QLm4aWXEm0aUqupCbgGCuJrZIs1piBRSODQ4smg4cAgixchSZyhTVz1pIRyq5FntBk
mSS1gIjd530DItaCHWMZ6ALPUSFkV7yfCG6+4YEr6kPI1+pTnOICUizcrdjY8rVBJu6EXNgDd8Pz
ry+P355n6cPwqRxSy0nJ3+dOgQSH/RDwEJmTCOxIYzsilEoyCeaVva5gokx13CH4wLm6idWDNzUX
qsXaMh2zaIbQf3t5xT0/noraEhl1IYVMPDh60TI0GVjns9BdMvCGYHdIrt8nfWpGwYWe1Icnah4b
mQBiYMvAb9xvC5Le0x9VAjjGgOXh7RH4JQXrgsfwl8Xu1BSbzkrMp01US/uO4nxNzzn8p+VzFfdD
aw/uOF85SfePT5/+eNhi4NseANLGV4ztRXRiBHxNzJADo6OzsbQK4BZumZiNfneZPtFzbp8ebt/U
bIkWr2bFK/aI/9g/DPfjOy6NbK0qVnvSCZQYOIKYsqPRYEfsXQ8OidAuOpbse3zOcxIuNbIfn1gw
aVtM9sdg+tPw9fG3YZ7PIUrQTrKUuUUHPWLKJk/oilhETJAugFKwom1QL8dbELNpENMv66DPp8h7
yaJDyE/LYsDGmXpEN/bG2qiw71OgVxRdtUi7a334w5RH+Wn7NAwPP4EKPrW5E0zdilIDoXLQWGog
pMbmZJZ0VkjsKgESLkpqZF4kC6yHq6kZ1h6ZZIQ10t6KICsacDyCwq6VYlSCWjPqHeLIgfsD1jQ4
aIaD3A0y6iCx05Tzb0qgCzA10+2biky23lZKmL7hDx+RjnFbldKDsrEOUMqwagS0dUe4A+XHY+mm
C6ZTRJQJMAyvOa+9DKU8f+KmorZh6CrR94vvtAoEMjLp7YSR0kDgK02KHjIPM8/gCworVc54an7p
Kz0TEVRaNciyu1X7vDx1yNWY0FKMisOvgjvrLUjl1EXsIckpVgpQkGHMyZwIMy6qN76KfLFN7nS7
on3TOEtTm36CZbr/82t/K09RVYxMwRJKC9Zydph4g61mHOJtkgjMcO4CCaneVfNB6tl71Zh9M/VB
+L1/OmUBgeLG6AZnRGelOoZND3jE+HmE2TUBO8VIcObDoqBiNkg9+boHhFW7YalTf9uXMtAM7350
lvjtGHgsf44tq+D1JNcJhrAVRJvOMU9hOzOwBUFQS3tV2PE4wxm1c7g7Z0HbdRouXNyoVY/sFzwL
l6qoSPyj2EEgADVFHHGsAwGzB6ErEKmQRB6MScryN7L/X84dgpdbNaXrKmWr+1WUF33bu+GllDk/
b8tyj974GFRMRoFMJ2CxEcSJMArbrJeiNpUUeHIuXHeCj3hx8TjN+TVfPVax1DoP171dgh8hFy/3
0xEsKE1BSjJVsCS6xE0niAGjGyGQHAhX2PDKGa+0Vsy8BbswDVxTti4cxItm1dDx02vBLyv9fMCA
Kl7O+KsgeicEMlAI4W2xE7wH+hQstmFMJhCW7I30jmn8cz0cD7dr2vvGJ93ftVTs0QwtOGwP+IVj
EWSx9fFPVFaJUpqJ66JGd1PDYjs87QzZGu6jSMH4q08EFrO93bfg+GTN3840+Nstj2vc8/PwUhoZ
z/wYMRYKiBEbo/SBN6JTChgE4wYTPcHMUZpZMH+jVPG6E/PVTGfOPVfPLfhaH+PoDZYE8jf6md0m
9xG7G/+jcDhaG3RMDos08UQkAWFvsCciaGyTjOmiE8BltCLnq8LvxxnanB3v3tSkbxv88CVm6j8+
hsNyTMle+G4So2Bhqi5nzDAHqx38adhJNkeeufKCXNe46TR6m/LT/Zr2hnOhN4otckP2D7spYi+0
RmO+BJ2cs4yp2CkREVVdgWJQmDgTHDZU1jmLi3Awp2FrotYoonDRLKOUP2znmKzKlE9emUPWRUrR
J1hWiaD2HptgMMwF5h5rtyN4P1d98vM5zsimbROQFQlufRZmiVf+Y//w+QkcrvnhOotGee5wXTEz
wXvYsAEMGRpyJKAMkhFXpXAdxz6jeg93a6rtOl9Jb+kyePJxeEKABgQamre2OzJAdAwmcmwxiz2s
XYTdyCP21A6wM70z4IBehW28nuZMzHf9YMXWHd2t2bpTS7AsLLja3hdU70M24NikD+xIb7BoEBsU
wwvJEaMhwE8CxSCMsESnN09lwofztVPhQ03utrED7u5ooz7s8/14djSuffmB6oxZqz3WymPzHe40
7TwqaFBpEgF6nA7sf32MNN6rCV6DkcHF3dJo+/H1/mX/8vi6/bLqLYdW+6H8ZvyB+0CCUERQC+xf
h0qZdc5nidi1FHxU8HPcdfvg/LTVhlg+VrPYqJ3SA1++k7/Hkm4w8lHckJywqTFoJlMQdyl6a2BZ
ZBBICawmotL7n4j9/czx8d+rc+OxOHjF06qdy9+Gp83w9PiMnE0JQF5ogUnJJXzGTYJ346TqEmgz
zGjILF0OBB8HbRN6vFuTqxvbYliVTY7gL68P+5fnEfrl54cxn7zGfTFeMsu6zApYv0NoHWY6E8Ax
1SxqItnbuC848gXQF7y94EC0OJg8gfuCKTAh6qiCND02VRMpKiI7SRFJXQkKyy1il0Lm1BtCg2w3
VZuPWJPSKB8yjGyUHEl53PzX9tQfS5WEgShllIbojmaPedHg0FsKRAkRtctJgVxfdBScj3JTz7Rt
TE/1rLP918eHUCFvK0L0hL1tUR4wDM8I0I/cwrJ47Gr+P70dy26jSPDOV/RlpERaLJo3kXKABlue
2PFsQia7e0EEiIPGhsjgeezXb1WDCWAgs7vScEhMQ3VVN1XVr3rAgs+ksDzCQGRjKe57NXcJM4wB
wszGxJO9pFlSJH7+JcnSv9/2EikulQ3LMZmOTpISUsZghW9hRk5V1ySDWtBDbm/PYbi6LkXn0SSw
sEkR+FIZkothkb05Qml89ci3YSyTup4q4TYMsrqOFrMe5ktgpk2p5urM7WVsPq+xR5A1RNBTbzT9
/hrNao0Fc41wm+yTrOPg61o68A3MHz0XM0Fh8C1Hcy3RAxGEQVai1Jl2rzyrfcxZo/darzVDnBg2
3XsWRMxAgZy7Fm5l65h0jOEpiY4+P4qIKp2CNDJN7e1tjQcKQ3QDParQZPTkdLnhhnmwkKjD7xkW
CgY3wdAki5uCWZgFDrSDIZoWM9B91QYBARl6J1gDr3tsJd4zyjP181B6WNhYl+9glpm2chxyKxvG
1DkehkIv0TrhLkPHdU+xNQpzXFOWe/uCrVq66Afs66FQPnMrilgeJ48HuB2MdULnJrp5AEkWblY7
yhzzcsxFF9YzsqHqMFz83Pl5B9GoP2frnV5z9IHmmI3V0gqURXiwd9sECDhz65zDVAOGibk4l3SY
djMJg4yotqgy23AczJ8g/yq3zgFCuw09jxgPhU9nUZhfjtmXNNvWtKKWrYLXco9l15jLpsZESUIv
Hd1xQARtRdTQlIwqmqI4P2fF2UUysl3TfanTmIFcIhbGlH6OuvvD9UlPZTtoVoet2txRqYxebApm
kFAU0YZBRHQUC+ZQzFRguP0VCQuqZ4Lgfa93yNZ5nD6fjE3uj/s94L2CVrNwtyvIPowT8vSD5OUL
iNPrIceILbAML8PDNuHRKsoXWBLWD654b5Vh8SWAVVrwmsZXhFZl3CYmiOBvmVwRqV1YJGVQlE15
F/F71Uv/r3q4abUKeoDjQ1tD4OshfDDlVZR/h1P4vCZoj9buXzxP3GS7HwSXH/gkfyaN1d4V8fMy
3F3DamKmrMkhKdIYBrNr6eZC+nBJim+oT+IgP5YBkHXMeMx7QBbXEJiz4MOl8HhIy/Bpl0AFiLyp
ls7kBfkGD2GYOtU5geNU1MaDVdRYCG/39PV5eec/2Cv4dectlptbItT//T8/eeNg98u/+FO2ebj1
yUWWZ2KUh7ukiJL4kgjXb9dIBc3T0w/Bjsr0K0Y98g9hhOw7cMmSat40N0RgC4Ix7PDtosTAxgMw
1DT0HkzKlcDENQBT8GwpFWgxDNSC0QAGzYQzeJ8z0SimNxilgnlY1vTh+f8wiNSGcWtvA9ByaA58
5Ph6FKqg6dat9rRcFycuWWr3wcd78nHpk22VABO6IoIBtEeZ3MajjcFcVBGokVMIMS29Q9vpOr1D
QETDOIbbgkBDceu2xe6Xwg1Pm01sLCGbLBr5rma7y9b2arVhk3JBqTVTT2TJagOzPYaHmLyO8Y8i
N3gMInyq1BeBz/paJGSZPefvsvT976u0TCoMEW7gD1Ind2F8m92QxYN95442SNNn9NQeBWi7L0Fw
3lEOsoZKroYxCWjLgPeC7U+oBqJKbTF4TJ5wmrzmn2xU3GZyg8ciQhC4tm+/Q5vStEeWTYRZru2F
Nw2kdfstCFbL2xvPBRYd5QPZmukn2qiEML73hz/NO6Y5M060KRzm4XbJNu4kdZomt2nbcy0/qgQq
HtXfvg8Fvq511D7ZY6jsMYXTgpH/m6r2Nz4fMqZ7YWYsql+6ptcwv5E9aKiiI9yVUHMZNcxG5jiM
8A9QSwMEFAACAAgAFIsuSnZTAHTcRQAAqiYBAEYAHABodHRwL3Rlc3RzL2FwcGNhY2hlL2RpZmZl
cmVudC1odHRwcy1vcmlnaW4tcmVzb3VyY2UtbWFpbi1jcmFzaC1sb2cudHh0VVQJAANYz3pYkct6
WHV4CwABBPUBAAAEFAAAAOxdXXObSJe+Xv0KLram5CTI/UF/oMqmCiHI+B3HcUVOZramplQIWjYV
SWgAOfHN/vY9DZIMCHmsjG9Ski9sRU2f85yPfvo03YHrNAlVlvWN+s9wNV9+UotIpTepUsafli1t
/lfnOsjvmpfCz/mXZLaaq+z8y8fLzx+881fn9f6di0gt8ngaq7S/X0vni0qzOFk0FaCOm0TKuHlY
qnrTH5Kb3DK6V0Ee36szQJeCGuO6YdL1Q36XLMAGaXHxV+eTypbJIosns5q4PRZ/zlRqXAybmBjC
nc4wyNX5TTxvwCIICxNhE1sGFn0k+hbrUVsaJpIIdT6OjDY7PwShAU1/GBj1MO5xo4vZe0wwOQPA
yyTNd3ph3HEWyeJhnqwy4/PnCsbB0MHuADkmEhSZFgU4vvSQOfS447vIYg5zOp2ORm4434KvyhjF
i1AZgyTJ+wYTCCEjU2GyiLJOZ/SQ5WpuXCxydZvG+YN2b67CvICiFgG4Mep03DTI7lRk3NylKoi2
SBD4Nc6WQR7eGX+v1Ao8FSbzXrBczlRvHsQLMy86dDre91AttdB6nL0/3PHAGY4d1/VGI6M7ung/
8t5/Oatcr5NjG+zfvE9X44urL87lBXQaDj/pXkFuoO+o9kNRRcIVGFTT6H78dD3yxlcfby78/+10
vnwwPqlbuDIzrlSQgjCK+h3TfGd0dI/x+Mb742ZnUKw1YSQCxuGDWfki0F8YfxoGJei3v4zU/H6e
fvtujD78j/vx95bx1Ok44LI4DAq8o6UKYTCFEJRpks6LL/sd95Mz+vXi6r1x441u+sZdni/Pc5Xl
2Tm4OwzCO3UexdOp0mPE1K2ZmaTxLcQgVVmySkNl6oj07vL5rNN5P0smwcy4SQOdGCvdz+im6h6S
UBnhXZoskllyC4hmm1Q563cs0bMlJ8TS9rv+lcq/JenXHc/8VxkNMZ1ObS6CSTShxo17DZFcLMC5
YhqFE0sSGmJkjEaXxq8BiL/TeTr8eOUVWuDHki+gJaAolO1aZE/HitiHaQnldK8tWR6keby4LdQt
1G2Sx0Xs1rowFgfpCjiz9+qCYQZjLFc9YwrDEdtvDJUC+aKNLkkO0CWpnNL9MYKsANrFvboKIflB
5tg2mTztOiAaLZoyicQLRGUd+yejQplN2AtEZa2rERWrFhXKkSVeICprXW1RodzC5GXMsac75tCG
OcxCL2OO1tVmjmXB5PYCSVbNhHWSWRYj6GVEa/QV0RgTQl8ipyJOImsnCKgaBNBFsXyBIKx1tQQB
Y8qQfAFPrVVUPGVhsPugIPCIcWW4UFIUIzpS02A1y8FFyddYgegkDW6V8S3O74xlWSWeT1aLaKaM
eFuh/rBmxA1fq9OaY6hL/F9vbq7dQvVorTmDNohVSS4/ooTarKbkavSUkk5ZjkEZtq7P+v1n1mMa
1mPL72riJqlqQ1YUNHagRADmr6/r9yvViqsrj1+TLO/3M5U3G7q/3/j9/ic1vc7Tt3u7v/vllzPj
tQFFcZvgXrhc9qnkZx18KGr4Q/ejfp8mq2W/H8VZkGVJCNOCGiYhFGaL/DIJYKXQ3Xatf1+gJYIZ
3VUez6Bo7gvOzjrkUHgsouqfnPp/bV93NQCLN/TTw/RH0rJRZOyxETQ3nFHohHqpPUh3fQYQrCaE
3+L8Ut0G4UMbhFAIFVBLQ6jrgtUS6G/7ukCBobju1ptAv4S1FDvMBSqiIQkfXeCnwVxt7I9UDtb5
aTIvF56FaiJhQVq5rEhOwizQzQ/UHUY4mD6p272LZxGoLjUz1qLZojAuxKFWYzsSezTDIH7eIHil
QVF7FxMWCDJBHoqJCNvegylPA1jQ63y7SdxkPo9zmEEecRVJGF0DNxaYiAWgSsrRWYHOOvbB/gn3
RiYs9MMi+T7Wy/VgphuKAFHc6gwbUgMq3MNGJrdsvn9kTuNFrOle/xsmg26UrGCZXowMqPubI6OA
YUlAgQ9EEQTqCX6YBw+TwlRvvswfChfoYrrOSbocPUxnxOz9OovqYW32B5jPPq2XtoV2xuge46lG
Qg8cntMoknuTAIqJxar4tzPNVXoV3Me3BSNeJ8CND4/JuUH4ScGEnOlaZZHlv7ypCIYl/iiHuefV
G2OSJLNKkzObJd8eRd8kF4v7YBZHnz9dFsGmjHSwdYhZgZCKWsGjihKue6fCr4Vh+sPhxjRwN4hi
j7FZDvXKeIwhn1eL4obT2/skjox/4buzd0UWCpgeaoYVaWDrJGCHJgFX+5JgBn9/h1LzmXT5pkWM
vhe2x5znJgERRBrdjQeDGTCOnowwP9BQNVHhE4Z2d5vqUSkSEgNraerV1YAmHHFYNSAVZKhh/glX
FlqM2aOa/l+aYjkp0qNo7c3nMP8xXRfKnfu77XX2+vYcl5yGRrpa3IDg7mMeToIsDsdZngK7vA3v
grSapPrfY5iJ4jwr2t5VGwMIElRESVo2Ge8qXiESiLdbx1dgh6UVYLcPxC5s6BLVenTjRf7G0JpL
ta/KedCmpE0vpgTmRL36PUivjULc6KEZuF035kWJtqvbopAXBCaiWTyJHmZRD37Fk6fWRXJic8Jg
lVNwv5a9XffgfrGQAQFZcRd7DEN9oWZ1mVVREkWYKWKMx3o19ndxfaryVbooqspigfEobVkulmri
qgs2OhE2E9LYXDj+9nf5QQsjkhYLgoPECWrh0s6aLLq1mDy5wtM+XTea82ABBVH6Aw6CRbXxtbgT
MP47yWqO2UhviVrNEpiZYPFrjDfXj+e36The3CdflU5MzDeueb5AKwqjhsCtg2Aa3DiIHl1KWEdn
MfsRi/XMMh5nav4NGHycxbcwV7bZGz6dipLDHBehqbEIFkk2U2qphdj2xszw9esebie1qhQmEUUE
VWaQ/C7O1hkNZa4WPJ4mabc6/+hNGVgartKiEHg7Sxa3hv5VnYiKtrcYqjG83Qyb1ecjwRp3Cv4T
3AejMI2X+WORUCV/KSeBUhNjMi+muX7/VxUsAWQYAEncqgrG1SIGUhrDRV/fbq/WFU0cfljl6vu7
X+oz6uEWaVuKCUavhsfjuZY6hnlb9bEtmvcfnmNYRKymYeCqcJXqJf9oY2Jxe0o2NVLcvOPwDI0h
Q/hRo5M9LMKbIKv4S4N4Y5SlcAPZq7Pu2TudKzpNPq0Wl0myLBdewuhuRUH1hQlr3pB4DjQLRS8C
zVvk6cN1AqVB99+IW5cxjfsbzzGET6JC7qtKIo3Xw2u8TJPvD28rQ28FYtdrD9D77xC/+VcOfAXp
3S2AF1GF9exczZP0oU84E+VNlcOo2bajR2qeJNFDQaW4uCVyoCQcPEra1mJcFjc3DiR4ho2moEd6
5/1qTXM1goWO3kgozySUa5KD+T8MpoIY80BXDtmtLuOXbeT/HEF0QreCipsOjfu+Oin9ZLWIys38
HRnhhFkYSGc8dv31EB6p9D4OoZwO766Twh0EkwZJP0MsZbCEq4iFP+VdAt7gxWfIIopKoyppeyhB
j0jeoL22DY761oZAAYdp/M9GOLtlPM+M8eaQgv5CqyzWe+CoBos1YTehK0WY4tq7V6Myn8Zljo3H
pS9wwSYvM4jkyw0i23jZQSSOriqUR2exfXQWY3R8Jh/fTQ5Mjs/k47tvgY/vxgVmx2cyPz6Tj6/2
wsdXfOHjq77I8VVf5Ai3mI6v+iLHV32R46u+yPFVX+T4qi9yfNUXkf2+URy0dlZ5ov+/WHjzeMz7
IEegaMLBEUu9c3E3Du/1ZukPeiHQB5O2XtD/hWy8lia4aNwz/+ctnSAMiCiNLG1zQWBxJLTfz+O5
in4H2eVp82Kn8Zc3RuVUpD6ZWXaLF7fXJaTs8Vz5oduhNqOIlGCug/QryLxM8n5/CZ+3sILZ7OFi
vpwVuznrozFvyj6jMFmq6DKYT6LgrT62ZnTP3j0ebtu5pNwual6i/3tncfzsYRHM49DVm676PFn1
5BHH+iTcFmJhMUfWwfukRIlI8OKIXal8a+ZAb4T2dWA/L/J49rZovQQo77rbjwcgxqwO+K4vf2CP
VXCFo9rO3+Z83Obz27bhsj5e+ghcpY/2aEO3u+j9/n+PUfv5rxcQ/G6zQ6g3VCEPUi24e1YefZf6
AH5dfHkSHNHDd3yDidwk8s7G7XYXEou2A4biYFWTcFqq+pZPb/ZrY8e450nsE4WfKPxE4ScKP1H4
T0rhFJ0o/EThJwo/UfiJwn9WCscnCj9R+InCTxR+ovCflcLJicJPFH6i8BOFnyj8Z6VweqLwE4Wf
KPxE4ScK/1kp3DpR+InCTxR+ovAThf+sFM5OFH6i8BOFnyj8ROE/K4XXn6Ti+iOdJXlvmcb3Qa5+
4Jg8EuVDtGYqrDD4IQ8WsbHFguIhJSWYD+Vj6goCJ4efjd8bFvpyYbFe+NEcyAjXb9MpHlT/h+Tr
1+oYxbM/jS63zEmcn/U7hpEG3/s7L7dBELh0sq8h3NcQVRswxCGK4INWEsV7umTbBm0bkzhgalpo
X+42hEWPloaJVmKkskWJHvCpXcOFFZ7QQhZGbYB1A66KmkxsNA0Cqi3BZI8lmNaVTAkOlNQN1j4l
bLcHZAO0xMtqy/bp+EY6nTW0Y0SQfgBy2gKLaq90Ltcv2XGvP5evKCIdL02TtHjt0fqlRdueVudG
P7joajWfbN60ha1OpzOIF0H6YFzMYShl/c7mBUXft+8mMkyj9mXAIDjG68bzP7vozHjL+MAV3JEm
c4VvUjogpnQkNR3LcQXGwnPQ8N0/vxGsqm5CxS4G+HI6FcZrGEXrR8vqh7GO7uL5emgVaBD1mS+F
a0rmSZM6vmUOfPjEbM/x8XA4IMxvQ7NPah2XhVpwTVgbrtVSv6SrCs3inu9RaplD5FkmtQQ3HTl0
TI8Nh65kjAg0eAa0quAaupDtooMiEU+n9IlJsguV2GvoBH96uGe9BqAuQhLZgplEUmpSb2iZDkHI
tFwLeczxPYLcNqB1yb2pfuau/h9S5+s3lWXnTuOaKn45FfYOfptMgwb+8qnAbbgt5g/lcOCZ1kDH
nhJu2oQKc2hBMSYw446D2nCXEtvxlm1VnHZgsx2cAQz2XZz7HDzwbF/43sB0LcxM6lrcHLhDYjLP
8xzwt+cxsgfofs+uG6tQQx4FO1BDOYGxPNn7oOUWvGLABAN/msSxkEltGzLX4bbpYeArxhxv6NP9
ji3lPuXe8ooKcsyDEDeRw5eRpYdaBfk3NdGPVleLfBrPcpU+ajG6rIehP/wGC2wLO5zbzJTC1xY4
kBqu55sDbiGLyoHnDLXHy3fbnV/GkxT48fy6rHv8jcysdHKhz4Ei9CGLs4pdu42dErqe2Thhkwqr
bb9UKtAvedKPNja6lKMeIYBXSqAH6rum6yIgVey6puO6limYIxFzPQthTaqrLNX0cK57V3RJQm3a
1KW/LFi8UX4NVyofqskKVjq3t/otMl3c0z2124RrU4I5AuW2CzAENWGM+qYtMZWeJLY7oM9xW5ue
9oRou7JmGePhrmUcqgydGOCLGPLhvkc2xGtZYIaPmIMc5gAdOLZJOZem9AkyfSLcwdAhHAZkxZtN
KTX9nKMW/cKeqlK/fvtSqjJtzwYDkRqDpL5F8NDEmA2B/ZkwHdtxTDzwBgwJ5NCC/SsYdiTVcYig
BYekjQGi336RLGCpdge+KOJKesVkNJBcUA+DN2xhUuB0Uw6pDrRwXDa0fDnwnxfZjfx98dy019FP
Jy3op9Emiptn6yaLaXy7ftrrxp2wWOxZqIcpmEGH3kAMfdvkEsGcKsCggQvFB8IQZEl8H/l+xaul
2PMnFdRwCoR3ccowaHi5KKQuPlbZh/ZoOYwsrv3tWJQPGcDjlgdzKnWwaVuImkOXU0/AdEsk2/V3
xdE7KqpeXjfWoNuBtQs9sGSDAgYzGG1JUuaH1ePQofg71ePfQoLoGQlGyhCSlriAeoBt06bUdgWS
AjH8NOqPW/l7kD9eUEMfMNaCnkUFeojSh+Ih4Hg7xIROBsdFA38gTeHB5ER1JeBgKGOET22L+67F
mFUfYjUpdf2Ct+gPm97TbzZSXxy/OuugHiXFxKM/6NkeQ/FBmWe6mDvgRJg9bdu1TXfoIE96xIHa
7zlDba2r3Y/rxroNob1rw7qMbtiwfjvT+rmiWc+5GUEKCwGdwXc9TaK2ELZnY24iIaG6ch3XHGDP
NX0uB+4AE4cM+JO50Kan1ZZqn5vRHntvRjVbJ1bLhBdFUaMoy1S4Kl5a2xXF6GSCUtHTsy5Y6BGP
MRiNUPfCVFsEakAH8GuAB2CvAE/QJy0craW3Q960VnFTFO6OUkpZsMnzuQoD0LPJc27zHtNQfQ65
DoU504sbavkDWHQNfZPbDqOu59rCacxoNUGdurZJC4Rwusd108fbNV1eOpFhwgHU0HEsfzhEMOAk
+A/B7DbwOFQLfDCwYVGGfSSe5b/HO0JPe/LxurpBEWoxKAobef9xqRbDOFVhnsBauFu8Z1kTtq2z
nUK9KJwhg1WtS0zKEBQPfChMCVO4bw2gcLefzvaa9HYzapc0LIhaLIDfdQtGd0FaVGyWRWA+LMl7
/VHHYzjUrxJxTe65A8hnH+Z4T09B9sC3ORMDy5HPIZ61mj2xKBtr8C30/7xdyXIcR5K98yvm2Jcs
xb4cY+VwTBpxBFHTt7baIJUJAmgAqZb66+d51paRmVWo6Yb1hYAqQxHuGR7u77l7FGY2AED7aNT9
Hx8+mrQle/ZauRCKB8OIgCNa6M6XBP8tggU9AhxWdjaOD6YaiaDnRLBHEdL7v1LSfxGOYng4AQoi
VYsUPTY+Aid2MnhJbs50jkftpLEa8e/qxhOCff+8/PzLbn3Bvx3/StHLN1NBWiX4jBJabkZB6PBV
yuUPUI+X/lyeEXyq2TtncBwzdJKely6ygjAEdORVsDrJ6xF8PPm8SuNRjRp6OeNglls/subvtpvd
8senp4fV0x8nFazkC64XgtHeGBmyrDCQiJ9wMCCjLnjfOTh/KatQqV4/lMMl5hUZjmiUWPEp78CH
9yeDwrb/9F162IH+HW2Kc997a21Ytgw+2jIPNseAs70BAoDEviYA2GDyq87k/bfzEu+H7w7WNJGi
VUKYGSXUeCeO3809sKMqE2XzcCI8YSsON+KCKx1LWQVei3TS3uJLDlNftaJG5DX9Uc6xyOuNPTKF
Pz6vT57E6IVmC2JbWmUuBcmnVYHtIxQ5D44jrbZCVJ+5m+cFp+kaITbMToXYSHYS4uXhyxmM8j1g
siJlnoLqeI0Az8aKLmTyac7DySlu8LON0cNp2vXlDErYmDGdf39317K8qDwOhsRxjwDxEqgAIgAR
k0M1xQfPFbtqeJhxfqvwoJFwq9xUwnsvRpa1hn1+3QGv97kZeNg+O0PZBCOBFMDSLWU7EGdxQABu
tFW2Bh5FuDXN8OnD5cTCpw/vWvHknMyrmSTJCbDWu0J/6OgFuyyEXBBooBNy/J22vepog0DYSGD7
sgYPog9SkjVgGs6Ntz68GkBuBshHeS4MPDwdqb2eU/v+aMx9Te4uDWP00ZEJ6XyGu+qiK3BkJaou
hFC7GksujKdcUng7R9YI0aqwnAEY90s12jmqlTx++rBPw8oFsTLZI32thSpAcZ3Cuca5qNCjMtMV
ynIKy0Up7BaDOyxwMXs8HXo5fzsYMNRVMTFN9ABLjX32ac49J3VM0B+R4wcPzgVfSNXr7pmyOFPA
AYjM0F3Ck1NsqrlWJiLwrc8309F+mSuMtH/eqqNm1OHKHK2vPj1++bh8ftk+n4xPux7OCgByH4rq
FNwFvASnlJXFOcs1J+BZ42r99xHQBsSNhX7XKmdnNNbuhIZ/+/zLid+R0w4qVpEMaBTFLgnf4TOo
h+E++YJdK6mOMoWnGdqFzcyrVvp+dEr+88MJdMEt9/7MMdvbijR410nBTAxOuVQ49D6x0lXuouSZ
F22uZ63S8nl1CTMOhp1EmB95etyop2YysfTh2H33IpAZKToJmoCkq6Zkw0SnQenhxwR8tCWknySg
jUjcyfxP67V/1ohq5MxOgIHNZGK2P30cppNoR0Qfz3m/IzYKA8AIeUuE5HC4HWhcxj8+JlYztUnd
nkz6eDWb9DG0Smg3p8QpblC+evewff7buexpSOTAyWKBGqsm9OvgepxhvrMR4F5p+J6U57ndeMJW
nOWcOMvtaPs/fB/W6+3Dvn0J75PpPc3f/0IMSfNYrVBddZRKiZDRMQOYxlgymmmDI3PLG20WupTs
HAwZKXM/o0xPL4bKlPqhDxNkFz3KozPqwBK5B8DIVH9P5BET8G6yKkZpDTz8TeDpOPe86MenjdRu
JkmKD7dTflrvjski1QNTp0QAHjIdOBvMuApBfL8iADsTOAgqr+I1WlrvLrKI2oBT5VdTDqH8mh89
8KEY8LJ83JAPOpaODDtmBkUwcHgeZ806SgowKiQGuA9Teijta3TXygzNzEPRNLufUnxNzSOUfMNg
+itHD78v/OlE9cUE2GXUyXXca0a+GTzYZN6xKHAgJZxzHTGLdppGAqmnKFjr7biQ9MPy7wkv+3m5
WH193DxQXXvBPcWKfYmNK+8FeA7QA06RKTjkQfPOg+QIwQrHW5pu6BDqfjNe4ZtDMRW0fbn+/u78
vBHf8GlyQRsh5xL1dz987BP0B04LMBJ0EqwzSoMamhi7kKrthI/BJDiFpNzNvhRzX/GleNpIbVfT
BJ92/EQoh38VEkxjzyxcTRK01sM/aYRkhTPvQwKbU8amCLSQ+ai+MZjmXbsSn1lenA7E6uW3BTsu
L3syW8hVqwT2GmFy4GVdNCV2OusaYrLCC9OuPZijXVvYmbXlcoZ1DWpT50xE0SoBB4JMa2AkyfAC
fIa/dsqKHIOXlpdX+dUrValmSCu9nDE358YpufTw9HWTn9YvR8mlk/uKpa7ZA7/mjnlEcYQb28WI
AK6NF4UbZ6u8iXqcVrigwfFxIz34+FT6lTxVG+rTy8PfNvvG6JP1mYVQveA+RycyiIKK4A04MnAe
vEuFCVY9tQmNSg7T2Rph1mpantJrLY6u7+A7H5++7O7/PJMB1hd/Kb2tXMxFqo5VC5wMq0DMrrVL
2roivXc2pWtOeThxK9hy5nSsl+Yo2NfHv+8eN6fjoRe0r0CUUbmiO5xCKhh4SBO16hIMssZYQLvk
rDTD2RoxNmwaXfXGjEnu3lLSsJBNRsd7tIsffTeJMwXr48gaaopTniCCBuJB4GIl4SSn64WZ6RoX
qgHTga1OZhruDKNg09Saftpttk/XU8HJJmE4djsaTX1+CDWi2I6bkEImH1DVVZWGS8zrMhwxVMLw
mWyg4dyMuqq+XT7+fGwEIiX2Fcf+JxTgLoMaC9kFqjhKR7HSqtAx2FBWGjzZ6jdns0ORLmQhBiNa
pfmc0kt1v72f+2vIfyEiQvCJTqpwVsoMjEflVUDUmMDcRepKTjg0piiwy6tdGtPTYQSfYjojt+uR
Jf3P1+Xzl3/sM0B8j/wVJer6Gl8qwRpuOiOpLSiCokRqZFXWxGqyrNrFq1twnnz+ZZ6fN6LLezkj
+v0YNidq+v5hS92e2+dD2+e5TGk55bmZdkBd2nZVpIw36xCWPf5hittqojQ8x5uiycxaFwLLzMiR
dtMYY5xfjk7H++3T0WxPJ5xrvlB+bzLZOas5gqOVUIz8uucZ8KOagABavYn+FsUGy1xIZJ8HDNWw
fjX1VPThEaF9fTyZuvB9sTXy4pUF77J6n7WBaXPYVtEFpuUqKxf8/4x529UMSrIbeSqh7tZfKZd+
rl9qvDt6fT0j9D5ykCvpqF0zw6u4hH8qoiLPOgud7LjdrZmtkWSj/Ywka3Ux/0j2/r/fhv8eZB8Z
h9smyaLUSSMQ2ZootSWJayfeKSlqUDznlF/HbjT3ZdhGT1v513pOfn18k5SS3nck7x5//vRl93AG
PntTDJnlkFwAl0HglMzaznsPewwlwS2C9IRR596FKYdiObaapoQc27hRB1xzyeYvUijXO1V+SAfx
lKSrNXYlWoAyxTIoDDXqWu1Y4DokFq551uH0rXgbPyeeP4r36/bP335+bjocHaJuAjrvAHHJFxW4
U5nB6b1LcLPR1D6pPpVlOFcjBPdTH+/4WhyF+K+P5f256NZTYydCtdSoEWWhYmXAtinAwyRVEI4S
ZKn+8312TdL3vHor9FrOCb062tv7+lfqmdhuzvSuNzPsoowAtB2jHDcYFoMrr6rjMTEvq7PWvlFt
ZSRBI72faa+lD6/UxP7jL1Y4kBsKSv0vRNKw8YVa2kuiZgOhBNANuIPX0YOuImJF9y8WwYYjWhXW
bEYFajdY9Rvww4eP07YPk3wxCZjEiEqdjjCeUODDtVFBas4it+Et2z4GQrTCb5dzwm9G3vaX7cNn
CptyQa9dUdlA6hwUOFHHYt+xFDiVR1KnmGc65aqqUW+Sq8fSF9L0eNIos5ypfODDsTIvn7fb9S+L
5+366efHXUsu+jb+YyP/vpW/6ODh3LqqKAsiqFUnFkSTmA3jLiWly1voeddL9cOcUA3jGQ8bvYEZ
D0Z34lqU+vH56cvT+ukhfr2/3z5jYym3q2RfDAJ80Ml3OWvCqFQMsop3pdSki2RAz+UWHNSuMK9K
O6bVQ9/P6GGW0yzb3T7VeepDMJz4el90FdYAtrN94kgC2IEh89gpUVjwIYtSbk23HRa5mHA7PG9V
cHxGBT/O3LzfPm73xHX5cPfl6RnR4JRtl3tA4JITXOGkKeGp6VweLpNQGg5s3+l0KzadLHUJo04G
tqptZlRbLe0Icufdy6/7K3+DAlPPJxaq50W2h4/Ra6GJrZkKOCF9wgELPnY+V+51Ldybm/bpvNy8
Vufn71q5p3Udtzb8GPR//273coLe2si+MQF8jYtqc1eDhG1VKuJE8GqXET6j4CWlV9j0sTCzfdUx
/L5dY4L5Ya18jV6bmXSX2+hxOufUEHqIbYvxXp1aVE11wmYGwFAZHH5kwFsC9FVo4YwuJQV7HepM
lrqwTe2oVqmZNn18eKptv3zePW6+/vb5hHW87Y8Q82BJ1lXIjjglqwJv5QZO3OaaRdIiJddi6nam
oRBer6YW460ZM5Tl78PW5f2R5nCgC5xq8k+Kx5wZKInWVPHuC4FUd7ecGeU0PPEr6YDw02uNy8MR
jQp2xui9M2JiHC9rCjXPm77t1y/27UeewTJUn4bUijlNd3Aj5ZakNgwMC78lD/cqBKAAD68YxWCJ
iwf3PORdK7GcUWO5nVxKet72jZYfvgd4ZPuLMsp6sgxtsxeplq5YTnkx/BYQGICKVcamemN9fRWI
HSa/DBwPAxrhl5tprPYrMW6XWH7d7J56FQL9RoHuoAD9JOwbbFYVbogZESknwzsAltQl54VRmbGs
Xse+/dyX5e8fN9Kv5Jz0ahyhJ3BlnxoTC7GwfZuB2MPhGCC9Z10G/IUZ8UQ3Jyk/xgtcba3stjsr
s8vdCKTGeTO/sjMq3mvTpyBb6wqfEpTiwCD7yL3/rb+GxxL3KXQmZQYyr0FMEmIdE84FoW3aO56b
Wg2xyJUd+pQa4fus2ET4ez094b+G59Xuy/PJT+33Zd+brj0ToLRaUieuAP4NlvGu5pJ11FqyV9px
RrNfjsuDQUMtwE2mNYkl265PdcvnPz9/ecK79gt3itH+mAfOxjG6VdFlXvDyOd2EsvhH81g8iKFP
rowKmJP5GnGkm8bU5f1KTPtq9lfGF76/kcfUQvXvUyrOK8JOzg6+Bmezc8m4LhkfhWC6KJ5fy8Ff
6P1Lh2eNuPcbOSPuZqaff39hc98xYXrDzcaLiMPXURsp/KKnyxyidiLGYJMLNVt1YwP25duah4cj
oaenbsUONylaCgOcsN30lccTch7cJVbSRBFl5xU1JAM3dIAsVMyuXFJ/MmPiViYzWegyoZkMHSq3
0kxMlcOHY15zRod79EftpJz+v8N/0n/1HQWOAzuD2FROORxh4DYBJmpNOWKllK35d8DQ/bNGUzsD
kujDmT6JUVUJEc5ReHN9LjQjQGP/uBLUAFzBDWp2XQkpgxQBJzn1NlWrmYGNPn6Gka48IaZ9loeu
xJ/Spsdr9ZUzYKMauywdwppLYDVehK5wE3OKjAU2X6Q9z9YKMYN3VmvmZ/BOXn5Z9q0cdKIV78Fa
ED5o5XlnOF2qsIALTgAUO1UKS1RnT+pVpEATX7lLj6eNyBszY/Gbjb/frg5dfID7e697fHuyv1ZB
ZzjqxDQ8TQexGV1iD7DvCIHhKWH7QSZ+4ZrWaNZWpM0057Xa8vuZuwMvR5vZJzDr7mH77e4Frl2o
nsPiB9FBnkXI1sbOEsdAoMSJFB6gPrMgwZG44OntevBbWS5fkzuPadS/d1NksLqn72qQh6tqHx6/
bJ/vlyTLcU/A1anqpKxUUhXewdUcahOBKdtlBC8mVCjmletd/x+H05P1W3r3JwK3+nozo29/AaHX
FyRpj35PdZhDrQMoOscqOxBp4GqLY+yFozYLXqQphr5H51/kZ02KtpVjqMKauWn71pqtToWJj6BO
bV1CBM8tAQxFh0aGjMDHFe+oC7n4wLOV+o3qEqfFG5G5nCb28eHpQn3eLX9+fHr5slt/t315oazM
6C4b6782QigZTVSd4AX2pjX2INEXa+gA7y8Qx/2oDez6vK2Im2mIWgsxhkehEGnsa+BsX59TXlgl
uuro2rEzsQtKs66GJBwHja9Bvd1hD+VCvCrvWrG3M7rIMWrarQmZLOrucfPdn3lLIgwxU/TJKl4p
FRdSJ4H0KHnKOrq5xZIpLqubsr/D+S9oOBjRKiLnNkWrUZ3yt/67J09dqvbYpKWtcsVF2hxwSKkS
EFHkOMPaCC65sMZe7ZwdztvKNZN5WovVqYPyxw+1js6gBC/3Pgf6ajLQJzC9zlUDQ5FWVeCAJJl6
ozN4Xr0VesXnhOaT6tr6adk32PaFgP4LgeDanQ1ALkJSwkxTUsHD0r2EdkImbfkrRo45L+EEPBrJ
KWbk3Oq5G7s9s+KmvzXi+1SsY1LU0hlDaTRbTRcMGHZMtpQiSwi3fbPMcfIr93RH/AoSmjmx7bjP
e7vePe5Onm3fmQByFUD+ukw9NLKCY0WXCk6aFlHZJIuJVzu8h3M2QtkZyry2kza+xgl9f3etuCps
4iKCAFpHb9jl3PWNmTnpiOME2pHN2zm8sywXvsXgbg6fr72aiTee/MZquBebx5eXzfm6iKZUQd+y
yLjz3juAN+o35iZ1AJ8a7NeRSzGWy3xtPwbztmLNuQ2vx2myH1Nqbj/rUqIAr/PUkiTpu/G8jaUT
IkVXOI+AvrfYNKadf4l40Io50x2y9hs+8rrLl0FriDyidEQMEqp2PFKOq3LYRwBnC4Fra0v2rvly
kMm7O83airSZ8QlLvp1B6f23EO/7ULFVC04ZLKA4vZCuv8UvTap927bNVAc0XRRGdtrkbApEji6/
ar7fHpa4zHyOIxolljMX4NdLeWp8f//tqCvDsqxBa+X/EXdlzZHbSPpdv2If9wVa3McjzrFj2xsd
7vG8blAllq2wpO7R4bX96zcTrGIRJEqqiVV4Ixx2m2QDmSwCeeDLLwmVaIElpWAzGGy+ukSunFXc
ug9CZXzqvPRB9F66mK3vjwNsg4+7cWXpSlbM0sSRbKwetUaQ2lESC2wOoWKGxAdZulaClfCqJ/x6
O27iuvmcaHL5A1g6X2JNoBCBNCY2OI84Uiu0LoHT9Da913rolYAd32YY1oHnDz/ELxVsgTh+NR1g
QdheQgbJlCpYsk4ZCdUo08CKiQWMhr7IysHYZywc3Gml3XX2hL2knWRDaTh6atITPlYUmyVWMIHo
So6Yv+HECssJT7CfGlXAoLwPc3kvimqfaXTAiqe1Drdcr8GhjYGa8BoHCC8TutZDTn+oQNEAH4ir
CX2NJxWw2bEiiTXJMu910u9QHPxLxvAky1u1n+uTC9Dwpqf2nDb/eru/ndcwr+UEVsaAzItJ12Jn
h7CJoojnGuPFQl1ZBVqLMVZzj5257ToSieVNPiQwJ04hhYVSmLovLhEIaBlR2Ualfc7unUOtC/iQ
lu+5XPD86qGl1qPYkm3CxT1bLZZKM/nlj4ebr/cIQ67EbayytnHhJY9KkOAgTBcWdHU5cyIjuOFY
eqzCRSdgyxnOnLcsnmh12POeDsNq/3ycWFPGmaHn6BFYhVGYQHCY1tSpFA3RSjg8VeXgyuQMYRhY
M1V0ok3p2LZWpjvHStrtNz5Kvu9sT7WyAndUW7+vKRkKi5VLzwIBlwo9cAjjg04ZTJh0UkmupXs/
Z1dHPr8r1duN1LJzbDpKqVdlDd/uh5f916eZatrII6qJQyxOVS5EGwOGIApBLLqsOgpvbZQBnK63
3mw7citbBz43qg0WcDqQfjmUstSU1aJ0poYO7MCWaWh2KkT47cGfFk7D7q9jJNQzpE7yVLzjzCwH
P5MGWTxx1co99pRZs8x9e7p7XIR815/x/+tmNKHJKtIxWzC6NBLwH5FIG0k/rfUksqIobE0uJv8R
CMDPrSztyRLcavXrnO9CODo7Ow/g6D3PPH64pWbpmAvIAeqQH8gXrBgQupJCR2ezKHRVxbsc46qd
p7P2Kr/ATcv0sCy54JWlUtF63G90kCyCg4jZSRnBfiL2OJdkoheJRZc+vBjpJM051odeYDlqpzq6
DvT4on/9fXHws8HLB+Ec8w6d+AIrAI/qEJshYcmCPbM5sr5DeRq1FaZTKjgatU7o3Ay7X1+/LVGt
WAYmD+VgtX5aUJldAiMD4hFhXCZOKwdOpVVRqCAtvQiXEFYzLV/odO+qFZX35B+Ojslh35+P8u0c
ZOYCgaThGRwChOHSSAn4YYYY42jhNMCmndqvtxmrkeKGbo/R8OKJBPNluP9vbLD0/DKcwGRghK/p
tZxobVLOnjEOAnjkV0bP1ssA/8rg+sYAFy+z13/7/FM88E4s3uI5IVZqbFm6xh1f80l9Gl4fd7+8
leBJxXntIgSd2mPxk0ZdKIQ9NCfGo2c2fiCFVCvPubLA5TON1jvb+fF2bk5V3PyJ3CWnanJbCwIz
WHRlSaQlYwZLEo95AGawjDfGIOSqkr0ZpZ3fdT7h3WC2B9vIJzDcPSLAegNOLkhSYChEzBEZoQLE
zg65YaLJyJEYpGSXgpPnac4ebM9PtIp0MIBwca5bmOa+DqcMBddH0jEKH7m0ECNrJqstoUhdy8Ap
0UVyk3hMq3ChHa0R5LZjyvZMrjOWZ4NMAxtsEp4SjIVhKQoPbkYRBJNBQiuv8zvkHm8HmPE/+sHl
3oxbywAX17m9mjrGc8/n57ubu/vKBjyl+oyrfDBZsyAVYU6DQ4csQR5ebeU8FDw4ZwN/n2SyGf+N
FHbz3EqbrU3HGqz1CdLjr41dofWX4LXAlRWjYwGXQhSDvPdYkxiFIVHBblKEDELYj3CUvn88Q+gI
N65a8VlHJzy0aZLCD6djborH+dRmVjdzjah7LC0iXtnaEsEIMI7Z5Dejl45zDbN2RVnzhtwj6c3z
XHw7Z4Rd4EUVF0hONT4XhQSDJDw8aG0CLLfLzM39ecqd9VPPb5XlLp9o9dz19BxvFkwjw83d/MIP
xF+O81wCfDkQMMAGjVlE5O0g2TIfpZCGR7qhGpnHaQQY1DZttR/M+kV/hVD++VgzOflHNftwKMIU
OgeIUGBBCukxH2IwcVVAoGgCN4ivCh/xKTelm+dpm+dHWlXN1gHY3/BdDw70OjbfU4kseyRnNsJD
TINHpF4LSRDJAp4UuFfB/CudNt7urnHVCnjbkVqskanzgM8HPNP4MDFNTAEm+i0xKpEi49h2h2Ff
mwJ/gojeeWNokloIfnm7kDp+T42wuN8qIrbJ/f1ur4+7S/jkv5wYLTWvX3qQkTPLNVGVUC3qBAsZ
PMgIm77VGZaz139R5chJvqtWg00awFF6wst88p99/M+NYpJzYbF3EwR3HkMdcAkKeMUQaHgauTWc
ib9IsaWEV60Ww1Y1RvXq0zsUCD7/8fjyy9hQV2B5oLxmU78FOdVxGJY8pVi7mT2oyzXsXZZJohx2
/1KMF/3xzBoTev3LVsItxH1+qHkV4Dt1XgWf8Tm7r9/+2ENUcvL+TG0rAi4VmBtSBP60Ev4VgrZE
Rq1Kgr9vBT8DyFsOt5Jk7EgiZp6/P0/MVIjMOiADRQ4BMaHSYn8T+LyIq+VjYLupTJIaH1uD8WeH
mcrRTgyFF/W6ZPTQAeCXu1oFMyUyKCaHWDYhKw6bjsHKY/BFIQSMnrCcuU9c6mQ/JDl07EHw3fdv
9yj4bsk57NjtlrkWLt7M2Ysv35BGtLtT6aIc8xQpE/BY14KjD6GXJIEKFSVEhiGkv2hBr6VsVdx6
VnDxdv5+jmR4rEO05y2aOti0OFbvCVYRscpgdZuVRphk9SqrsBqtkWTc8gfAxXE+PR1eTyhXZvHr
cc6B9w/vWLICLj/3Ajm7IfLOkUoXtEplxfVwGmM5NadmU5kAF+3MAvA8PN/zU5sqXqEzjEUI1SD+
pMjOJCjSEjMH366BgN+yJG3Ja+0Xw7QC2N1WAGZmv+/3h2Z+N5FhpuCTRhuYCjIL8kwRvMNIUUqn
khj3FWa05Cx/OCMA2/r64FU6ccys/5a+fF6XcSqIwLWiGaan6Ogri2WB4EXkQj3sKZSHv8pmncS7
ahXY7k9c6NsOmqfGd332KgM/cJLozRaLUFYINL3klEBsmcH88cgFvazI7Z0St0Z2sWVCwYuzI/G3
79eIuZQRtocrQWHbvABbu0tKkMK1C4Z7r99phnE5jmCefCXy1kHgUrh1Vds4PO1+mZBo1/LAszUx
jRamnLfYsQgJ4oQuDMJGm0nGpj42OljQ4gOh4EdBzhmFw+2rVp+ekmZdxfQjOLwv4z/uxv855Q6P
VazVBHN0c6QjFssnMWlPggyFMFi7kgrHlbjI+97Oc+7nWz/XajVs3VausIOjWK+Uv4+/vyCR3qSN
dAdHzqeQrVCKJFmQUokhkjBKkrRkSTMV8wXlETj2+UWCd69aATtrRG/Y1r8b7x5uh/u224JKQith
GbFBZaw6gJ/CwtIuEZZ6gtA6pIvQuofBz5Fs1JuN0Npu7Ry3dE3a8tP3y5TdtC9JMbVg8D4ExUFY
cJ9gW8ImEYEqRrLWKiQwy10+va3syzn6CiyfaLQYzO1Wi2Gwx/ANl87db+PJaAmB3md1jaIwYCCQ
bQvZW7zGozQI55SobWGCMevmiqvBGkF29mYrSOV/PDRI+LF8eb17GRuCVGoshJLJEu0xWUjhVQYe
PJhy7mnwwfooWhHaYRoJbs3WS+SjnYOB53/ew18Us/Vmuh4ipQgm04HjBH4iOOEG429lItHaOcMd
lmitXkMz0FU729gTYb8CH9zcf939OsO2dC2+4VIm7KBUtMdCvxBIgI+fWG0Vi/Br2PzmifhyyFak
QWxF2gt6e7tlUUdypgZJX0xOIQXiFU+ISoafJ2VJMlYPCEbT1DDtMq7fyvx0nuwXb1+1MnZcob2Z
y0X+9umnFewwgjwKm+2JLCpOCwuYcE1y8KqYDs7F8FGww586r3rf8Zwh1lCbo6zHn1/Bwv/w9Xa8
X/WOVTYy62V9zwiMCJmAL0GJceDGucRgwbKLemys5jjPW7l86qoRfBg62oxrMNCn5D831Pvymk8I
lamqzPksRIAQuwREAUv4kGxhmahiRcQCpKDf9oZwgjPiw51W5O1ZRr14tjC1Yj3wLywusakqVVmB
LSgRIIFk6xqbqxXstRZj0IFnk/P/rUjsdH+lg+7psD6Z+/vT6/NL/m24f602wf88IuLjQLlT0/9c
OHAKMikZHRuHABY8as5cseAV4/ArXIS+7kx0Bo7deXKlmu2ptjvujt+Gh2VwVxuxxcQQ6GExXQNW
KWBfyUgk+PoZdkRV2ArtsRijmZuxzqfBuDvX27kmSo/cTssVCk4UhX/gbTLMqYORwsYMBlZo0bbI
iH1w/qXuzs1M7/R3bp5t9eO7nn7zu0UypJ//eHkaFrDnmRSaeulYxMhKKqyTATMEMT0E8NYjuAZc
pbUJ3Ay3Eua2I8ypP+ft3fO32kT2GMnSeqRc/ddopHNWYecWDOcR7e5V9kSrFKMFW11cPznXDtrK
M27jT8HdGhNWy8p+hTCkVr7XwEhaiNNdLeTGP9R+p2CchcmEYQ0yFlbgXm0xtaQo+NzZpnei0MPg
b1CQr2IdELVjWATXvWqYCom8O5YSiIkFzlJp6y/NvA6FSQSgFMw4SrQvCVcV58FF5PO4+OttpnqD
bnD52FWrgempNYfW8R8/fPl8//rz3eORXHdl7xUVWA1OkvC4xQlFbKaJaBeVUdrKoOkHNdbqS9Jq
M/CONrvx3InQgYPc3z7cPd49vzw1EQab6K6xK4X2lQoBbRBTuOsgIWQMJavgDb/ofKs301tU5O2T
jZZ629sbLu7FiV2Ur9IhpiTNBcND34D1+qYgKw6F/2Vg/1PUhbMPIxftbf1631n9hvdiav+P+F3C
4xE7pcfBXl1PSCnpPTgw2OHYYJKNFodtLzxx2OsGj3apjBdT4OAsb5Dg4O1GA7PrvHSzm1/6P1+H
p+Hx5e5xPLV7x229SKZdwcwogoM9x/6ssFKyNEEoq5Oj/TLS9XgrYXqvczeT3D4Mu1/mBLE1ajqJ
xtNCWdCkFIbnahZJGxRhBRwrmbNkZ4ieF6M1Utht/2W4OJw4dV6/PZ+cCSnUdELPlJVeUsIr4gd8
COI1EyRmzrl1VJg1g9pynFaAoWPj7C3t03R+GrApy5fxAV/r7ge4B+5227Fq6u44/aEmlcGhQMOi
SoI3JlIkAdYekmRnb6TR8p1gpjvluTig82ir7b6jrRM3p2Bs4jloN2jw1cBBc4IoLPURjmrkHUCC
QStKRG6X8mF1YIv5G8k7tYtwEZnVxdw678fxZ9ztFv0yps/FG5og0sXeymgtZYL1HpkjRQZHqaXZ
afb/2DyvFbvVeuhoPWxC0R/Gl+F24lihh1YLzvBrMbUukdRErCPlEncPMD7ovsO6TSlQySmXH8gQ
cJTkHOprutvoODjX0XET7XXB8cfCqFoWBbv3xLXqs/XgIGF3FocFqwmWXMJWKQ6CvsKKMR8P6J7F
eQMzvyqNQi07QeKNUctupEeSp6OPzcyMQtYc1h8yjSssz2Swq9gkI1JjgZZWOStWJ2ab8a7aibvS
7Fd1t99efnkahxODt7AIxKzc+ylh65FIWAI/QXgkx4lRVzRmzDnDGn6z9rYZuRFtTzth0V6twUUr
r3midkWvuaLMDQ3FaIUNWx1WBoPPrKJHn7lADApGJPLLvLB3/eWzvrLUbrsBS0PlWe+y0vrflbtO
QwEHnrLjYIeDQGNcfI2vE8neigheZoixXOrL4BRv9BWAu40aN52TQLg4o41eF60EKpWzjA5cXRuI
0shRmyES9IILAqE2xjEQueoVROK11zrAyZ3YBhvyVqqVF3g7Pv/68vXb86LkAz7SQzkQrYAt4TVY
MtgXIuJlBAXzHJR1hEqts8qSdzNavSK3OtVxp8AHztW6bR68arXQPdXWEPpqIePw7eUV974JAOJq
nOFjjoUGQ5BGFB1FTkKRhmQL3wasSyXMx0BeFxKcwb4unmh17ICe5MjXR0zpblcZn2fi3alopybF
Dr8ehT8pyUkMmGgHe46Jf1jNCmsgMjPKfaBZ28pzjj5y/Vyj/dhb/XshNgmA+69PX/543OERmzvw
q04/MbbBMxnb9ilENYPzRVyqLa2Eg1s2FWs+3LbN8pzbIQ63r1q1ZE9Xu9H1AXNhw+N4P/3G18im
4nSN1bLJYMyJUohONBimYY+IAGGoND55nt1HfM5LEc5peHpipaTrKTkc98Gn8eHrb+MSuibZ1II7
F+Ew+ZQQZi8yBqAOiYHAlIM5crIfRq3HWwlz0xFmWPNmnC9rCoonj9T0jkOYIhIyLmElXLDOJY29
YCO7oFC2J9pt78MfZ+z7l93TOD7+CMb/1Ppacn0ta92aLtFgeZhUBhsWO0qcVNj9DHa4pMDTKStc
1Ha4VppxG4crTnkHqlw3smp7p8NuoTVmEmpCxHDMwCuCPVvxRAQcawH7blTJRIV9XH14dwd6g1Zu
vn3ViMm3y0pLO3SyIMeOHLisarlYXViHlh/w1ij4CYQKbzEsBd8Ree4hPlWGgYN8CTLk7ZYfyyeu
WmlvOio4PaM9nxeEAAt/V/FCU9CeMGwwJZTKBMxaIgbcYJkEloatTpkXI7USdEIOLYdhtVKaNDun
s+eQ8RwiUlgnWbMDXr2IQjwMrHQpiBB6a52cybdroztiuf2mqXf5r2mh/du/G0QPVrfm8KfaoSE4
sAuZJOxsLxjWlzHYRblXJVNufdLvfJfH8c8xDxxuN7Lf9H7Um2Emcrz/82G4Vqczi4qYp+DAQqRQ
PKIcEfbnkTCcJlBGCB9pXMUvy0Ha2Qfdmf1m7hj2+/B0glyC64BZNcGpKVoTju3BRMLTqQSzGwqe
EgRPVMRVGd5ikHbybbc0+JjHtVX/7a6SBxT47aewVVxPaf3636m5K/w84BlLjkes1FjieWCwoXDw
RsFUKHcZ4d1hhjOG73B3qYJx2+INuHijN5xnL4j7UboaafxP9cRgCzYMO+5g9SA4Xki2hNzGFBal
tVk78U7N2Ms5wE+91Uq65bZwZticoWCW4XZ8qeQYz7v6uqe8yJTMzlaDVaHgM1IMna0WJLBaCq2z
hijWx8vQSsgwm47TnH/nm8euWumHjkpm7iOxe326B6NzbNpUTxR4pizLgC3EMcUBMbfDppIQ0BaL
bYmlcusE6GmQdvYO8sgMbs1xiO/w5X4Gu4DTIGkFBkRHk8/CEkktBB3IdAgbsYLtRnsbtDGa2/do
iuaBW8m2xe540W6a3H/5396ObTlxXPnOV/hlq2aqjilLliU5VfMgS3aKTZhkZsjOnH2hwDgJZwik
gOzt60+3bIyvwF5q/ZCAbam7hVrdLfXlzeZbtXU3QYG0Vl7+yUqNGBP/cCy1A0Nl0A0GM6oxSWkQ
w1JNzzjSlf331bUvHtdxn3Uw1GzRpWIc1HCbN3aN/IWB+9bWwf8orGNCSOIp1wg09AUMtkK/Ep2E
0o8Mi7WMLj7ta0A7X1/s8GadvkfZQd9j8yhW7XbZXs/S50rBNMLy4DaWC/WEsjCRzOUcCATlDn36
Qc3jgoag/puAm8t8k1qQetw1Wu816Gof0Yo5hrH7Z+oOD2N1Lz1KvlkKc22L5G64hsR+7AUeiBqJ
tctBX5CxlK5RDKg0IUuSiw6dDhC6KTs8HdRRTzvo8Zs53r/d62I4Srda/G1iSkDD5m6SYDARWC1u
lAAnhYnxE59HzLuswOqx927Mj8/ruHcYV2Je1IU5LiDL9WN5TsWE1Rbtdp9SIaXcuJwZrK3DQSxx
dFHUKlIsEknCTqZPO3ZbR6qd9RxuyuZu9Sit5pDn0k55Lgv/tjg2UQzDGuBeWITF6iiGffgR5hsx
YP1dNOWrMHrWprQzgTwi3DUtZLPcy3i2ftqCwVl1nKFG8shXOK54mB1FwLAa1CiiE+OBMIglu8hZ
9tB3j+AvntaxDtueoSIlzc2j+2yLSYUwMV+1BPWBAE8YLY1P3YCrBLNRAzf6MDFCo4EzIyXBAL+o
FkMbTM/ef/vFGlkL8tgma8GbySUxSDhd2aIohd91XkwbtNhIYqC78jzMkwwWUaRBRIQxCAYmWeiJ
+OzpnL7tj/fVt3V00w4OWCxIR0zz0yo/Q8zH3n5AcUbDUESY3wWLZPpKEDdCAQ0iLcCEdkpo+peP
E/NndYTbyTvh5mNTZRy/rfbL/eYtfW7VgEaboYi0zD8gHwSwKGIiJqwzjUKZuiqySepCAjY6WFnq
Mj7oB1tjiOZrdRI7wmRF5jd/k0/GuhLldFgjKIkDn0iQTNJWCCBoK4JmkcCCFIPW5PH4nz8Z/dTj
NPGp5i2RJ7Ro0dQqu3iTbefZdrNDykrnvogJhuEfdvvQlzH8NirgbgzSDL2VEhqf3gg/dNqN6OFp
HV3RwRZZK9Q/T1j2tl7ud3m6sod1HrlTz1Umo4CG1E2orXWkMB0cla7UYBYLaoQX0PO5yrDnE4nK
8HGDAtZFQWkJrGwenDILHLeVMfLixyw23AvcgGDlF84IDDczbqwTn0TSIzroLn5c7bGOSkekqKTe
nAdFzsj5/9JjHVtu3WRMAIaP9IRLkggjUBR6WQFSjBmhkpjDut6o/F3tZVCHlHaAJ6L0SrH7wbpW
KYR7nihrhYS4HlDcHGIgH/0QhiUSoEOBuSkJmEeYuLMnNLnZcx0xIToQk6UzvX5errNdNtl8z9bL
P457qQQNdRFGUnOMh/cQMy1ARlBtXMYDT5AQRsg0djy6u6tj1M6AhDfLUt7PeciOO9utjzGvgbUe
7SZQKImJmYebQDjVOcYmxFjfSUtFSGC4Ng1Ltt1jA6GwC6F5Q5r+9poOixULdI3ZU/ZiPa+PaoIJ
Ocwb0B9jgxVbMWFkFJjQjYEFQch6hESnI+lbvfeFxTVea1DTNRNn5fC2El8KZMjEhLiVz7E4sMZT
Io7Rlb6LSzoBbtQBa+ys9Se3RHAdI+qTfo/I0Z11ugVDokhXK0JkDOuKE3ihdfMMsVozrA7ClaEW
mKlAAYMAD51JMGT77rPEGw63krfTv+LNMo5nBVrmslKL3PqWac0SPAyGUcLNXY56CiZbiX0VENBx
JaWNXclKL3XwHZFMcJO2AjhTvVlkX7fwtTM/F0kkBtQBSiFu1kd+gnXEEteAPUMF4yAuLvNcqAHq
Dd2vvNMgh3eQI0tfvVtYLGZbtXrKAIFWBH8CqgaIicRNPA5qt/YwMRZTLtNKRBHWe6L/VgR/B6J1
QtsVbuDmvFW14Plt/X25fipwxVU2T/Zuk1MYkVAZaNfzMB6SRxGwoPLdAB0oiR+g/99FezZ1ID3b
NfWXasR01D4LsQbDY1rfnS5OunKPWZkfNgdJxAjFeGEfK175vqtAiLiRH4IOpaUP4vbfKLCUPxsM
4t+KHbLxZrF8PLj5fHl7eQG4V0C1nq1WO+dltsic+e/OZv8M7PS63WCWMTDD97PtU2YzLO2fwSQs
HlzZ0drPdt+nYKVNX5eLK4fk96w30jSFv/vsyvGqN3fZfrrbl/frgM917/297uFLhSoYAQsPPWxh
XnfBA5XX538O5uCnsYN+idXxxfPUu/XqdwfND3yyeXRK780rZ7LZz1YfQO0ZyrGzzXbLBQizD97N
O++H987uV1xPFtPN234KaL2tbWkbALYoWmCNpR/eD75ul/vZfJVBBwi87JYM/WvnV3gIYurQ5wkY
h1tVONhFAcWxdJ++fhp9njyoW/j0Ob4e3X10BsX/yX/v4/5mX0Y/26f67uHjxHm33qzddDNbZbs0
W7x3Bh+OV08H5dPDh4FK98tfMFPfZDtLcfp2XNRj8qb84gz0tYN5V/Ht3R4LAXS0IVLwRpulXQRO
XB1tdra6W950192o0kZAG3SOX8P7dhL1Qjq2YXmbh1GBH/o/dDfxyja+MzBFJBGscugEn4ezNTBk
sNKNK/RUgsRPXNSrjsGPX5wfRxPnKS9UD0ORggBtYEarcFhfm3d5xQacKY4jQ17D7XAd3nGARWeL
BXzdOUAobt1Wpvv7AVip62zlKLzj3K3Tnt9VVodsrG5v7/RJviAsGLIDWpSXbZ7eZtuF89o3f3xa
nQL3+fLlwM/6usuc0fpxc3ZKf/l0u9xnOYQUN/A7saP1NhOlb5zrB/XZ9BIU8CE50ONLaLMHxjmz
ONBgGJZtQgdWy6kdBTU5sTQ47DhtYNy+ZnNUk8f2J+tltyGtwplOjZqoM7j5Q1G0ocy2GY3VdXy6
UVAft+n0dvTxJjYwRXvnAQ1LOKDiY5tJ/G1yeu6EfkkPDWybh48jfWdOYhcEtIrbi13lexeBHB0+
9EvcAmdQrFEv2QuWd+hbcCpt/L+2VE/uJlZknB6FobwuOMELizb/cV5ghdrVmDtnarxCzHQ7rrQZ
/B9QSwMEFAACAAgAFIsuSlXLjkHZPwAAuAwBADIAHABodHRwL3Rlc3RzL2FwcGNhY2hlL2RpZmZl
cmVudC1zY2hlbWUtY3Jhc2gtbG9nLnR4dFVUCQADWM96WMHLelh1eAsAAQT1AQAABBQAAADsXVtz
m0iUfl79Ch62puRJkLtp+qbKpoprJjuO44qczGxNTakQtGw2ktAASuKX/e17GiQZEPLYM3lJWX6I
FRrO+c6lv3MacOsqz2JVFGOj/eNvlusPapWo/DpXyvjDlhKhPwdXUXnbPRV+zj9li81SFeef3l98
fBec/3zevn7wNlGrMp2nKh8f1zL4pPIizVZdBWjgZYkyru/Wqj30u2Ams43hZVSmX9QZoMtBjXHV
MenqrrzNVmCDsBn/c/BBFetsVaSzRUvcEYs/Fio33vpdTBThwcCPSnV+nS47sCyEuYmwiW0D8zES
Y0JGIMswkUBo8H5i9Nn5LooNGPrdwGiE8YgZQ0zfYAtbZwB4neXlwVUYD5xVtrpbZpvC+PixgdH1
Hey5yDERJ8i0CcAJRYBMP2BO6CGbOtQZDAYaueF8jT4rY5KuYmW4WVaODcoRgC1UnK2SYjCY3BWl
WhpvV6W6ydPyTru3VHFZQVGrCNyYDAZeHhW3KjGub3MVJXskCPyaFuuojG+NvzZqA56Ks+UoWq8X
arSM0pVZVhcMBsG3WK210Hacg9+9qev4U8fzgsnEGE7evpkEbz6dNc7XybEP9q/Bh8vp28tPzsVb
uMj3P+irotJA31Drh6CGhEswqKXRe//hahJML99fvw3/ZzD49M74oG7gzMK4VFEOwggaD0zztTHQ
V0yn18Hv1weTYqsJIxLTCD6YjQORPmD8YRjEQr/+aeTmt/P86zdj8u6/vPe/9cynwcABl6VxVOGd
rFUMkymGoMyzfFkdHA+8D87kl7eXb4zrYHI9Nm7Lcn1eqqIszsHdcRTfqvMknc+VniNmAf9dqtFt
uVwMBm8W2SxaGNd5pJNgo88xhrn6AgmnjPg2z1bZIrsB7YtdWpyNB1jYMJ1sG3JshKVtY8vwwktV
fs3yzwe++I/a/3w+n0vGo1kyI8a1dwWxW63AnXAcfCJxnMyRMZlcGL9EoORWZ6b//jJo6bIszhh9
gq5YzI/qKsooL9PVTaV0pW6yMq282dXIgWYerTFiVB7VCOkPuV+qkTGHaYLJS0PlQIqoq1Ew/liN
gog5Oe5PiCOQIh71KxKE0u9gmrAPTLOPmAYsbH0H07TGB00jXNrs8aZJac0ezhPgua4CYX8HBdqS
PgUEmJrJfx+cmcAHwUG9wQGNDMt/H5xK40PBIYhy+h2CUynq8x3DGJPHB4cllCnDg1JUsUGi5tFm
UYLTss+pAgVZHt0o42ta3hrrurs4n21WyUIZ6b6z+Zf6ETNCrVTrT6Gqhb9cX195FYDJVn8BYxDD
Dj09WRWRtKXqcvKQqkFd0qGUb2v8ePzImg7FvzHym5p5Wa76kFVFkcYKyiQztueNx42K5+nq9UtW
lONxocruwPC363A8/qDmV2X+6ujlr3/66cx4YUBj1Sd4FK/XYyLY2QA/EXWiECbHUb/Js816PE7S
IiqKLIbyovwshuK+Ki+yCLrN4f7S9vEKrcWpMdyU6QIarzFn9GxgPdWpJCHq75z6f32HhxoAMGhb
P3ma/rmwJEqMIzaC5o4zKp2WPBKk2zEFCHYXwq9peaFuoviuD4KQPI5gfsB5bV3QcYP+vsMVCgwN
2rA9BPoF9OP0qfqFkNIw/9CqojKaZJsc+qxERYtFFv8JqgTY2xocLZdjm0AysieqitgcaLVS9cv1
u4tPqfp6ladfIOmMeAGtq9aGKarU7U7QyjCSYBh/qraYEt7W1jSL4wM9lhD4bCBA0iKdZbP/jUfO
KLmDzw9QFlcRj2JY5kX71c4qguZ4Dd3qGWT0BihLgXGFusqyxRWw13i8ztbDL1ma/FzlE2cD2TJN
52KYAYHX/XRXpYhn2Jpxy5h6YVd8tgaJFKoZagrsCusKVArb0ZyCry4nHYnG9nMVGpsNMD5Yi/Y7
Z7uUYDGDgOab1TX0+sOiBH6eTvF4PIuKNJ4WZQ5M/iq+jfKXxv2g/v+0zKO0LKqx183BKoARgKyH
jNdg6Kooa0ISBKLaxlcFFmMJ3Gk9EftMQruRtK4YpqvypaE112p/rmJoSWL16cWwgAK95Il6ExTj
zhXvoHL168asooJD3TYRoNuukhmyOOlN5XYizCSzKFTTqmfRsvf1FY+rggkCimrFPf2s8pVatGU2
RQmUYKogSae66v9VnZ+rcpOvKvaqCtm9tHVdlFvimrOMzLikXBi7E6df/6o/aGEQ9arwPEkcJzau
7WzJInuLrQc7Ce3T7aC5jFYwrfN/4CBo5IzPVSc6/SsrWo7ZSe+JWssSTCiGBed0d/50eZNP09WX
DFankJiY7VzzeIF2EicdgXsHUWvvIPLsUsJ+dhbTZ2cx+ycWYxSBxYVafoWaNS3Sm1W06LM3fnjy
CVjeAvnPoYNYZcVCKV3NsZQ7M+MXL0a4n8abUqhABFmoUTPL27TYzmFYo2jB03mWD5sVV99Gg4XA
Jq/6hFeLDFZf+p9m6a3GXuHFS91+bn8W7QrMaacH/+/oSzSJ83Rd3rfizXJnR7NYqZkxW1aFfTz+
RUWwIiniCGjxRjUwblYp0PAUTvr8an/2pARM8btNqb69/qndQzzdIm1LVVIprGum06WWOoVORY2x
5N3O/jGGJZbdNQxcFW9yfZdzsjOxWviJrkaCu738IzQqivC9Rqe4W8XXUdHwlwbx0tDNpzHsIPv5
bHj2WueKTpMPm9VFBm2qxiY5LHh2omCVgS3a7f0fA82Gldb3gBasyvzuKoNmaPhvxG0bt86y4jGG
sFlSyf25kUjT7fSarvPs292rxtTbgNhXNQzQ++8Qv/xXDvwZ0vt+3SGJMVyqZZbfjS1G+X7d8wRq
ljK5p+ZZltxVVIqr5cwTJeHoXtK++2SiWsg8keApNrqC7umdj5td3OXk44cLfdOufmJUr6OfzP9x
NIfV2DLSvVJxoxcu6z7yf4wgMiN7Qbrbop07Kn+/NKQ2BtKZwtpwO4UnKv+SxrCAiG+vssodFrY6
JP0IsYSquCkWflWepazDi4+QZSkijKak/SMjPSNZh/b6bh22bxpyFDEo4390wjms43lmTHNVVHcu
9AGtcqyXs+CoDov9/TrZoopp715O6nya1jk2nda+wBWbfJ9JJL7fJJLG951E4tl1hfLZWYzR8zP5
+d3kwNbzM/n53bfAz+/GBX5+dy4we34m8+dn8vNrvvDz676s59d9Wc/wEdPz676s59d9WfZ4bFQv
Aeln6/p92Pj6/hWkJzkCJTMGjljre3+30/iLftzwD70QcavhBf3a7HQrjTPeuev09zdFIxVZvDay
ts0DgWn15u+4TJcq+Q1k129CVffqf3ppJNlmtlDV7XYsjWF9Wbq6uaohFffvPD31gYLkBFk1mKso
/wwyL7JyPF7D5z2saLG4e7tcL6r7odvH6S/rayZxtlbJRbScJdGrmX4HYni2e8TRd0p9w7V7in59
/be0vPXvVtEyjT392EK/O958W4FhZAzvIVYWM2Q/+UmDrWTCmVFhrZTvzXT1o4SxDuzHVZkuXlWj
FwDl9XD/8QmIq5dzGoBvx+IfPKXgQuGkde98vlnVr+xvP7/qmy7jcTXL7oGr/N4ebej+OdR4/J9T
1P/OyHcQ/Hp3j10/koA8yLXg4Vn9WpZ+WaojvgqrhcjTn5lEidgl8sGjj/19fAxsNtw5MFqMMbcP
XpZ6jKpZPK9VfS3n18e10ef41MCiJwo/UfiJwk8UfqLwH5XC2YnCTxR+ovAThZ8o/EelcH6i8BOF
nyj8ROEnCv9RKVycKPxE4ScKP1H4icJ/VAqXJwo/UfiJwk8UfqLwH5TCCTpR+InCTxR+ovAThf+o
FI5PFH6i8BOFnyj8ROE/KoVbrb0IvHCis6Qcrest8f7Ba/KI19vQLFTcYPCn/Gm+xDaNqj/zr8G8
q7e2qgjcevq78UfDQr5fWOzv/MftyIi3u4VXG6r+Lth223BD7zWjjCGzzVlano0HhpFH38YHm3cj
CFw+OzYQHxtImgMYYjknekN2PZIeuaTYD2jb6Gwe2XatfX0wQJLqip6BWCsxctGjRE/4XDZxoURJ
QoWWhVEfYD2Am6IEI5YSyUxbgq0jlmDSVjIXhPNqwD6mhB5cweaVu9J1a2S3c6uRzxcd7RhZQIUQ
7x5YRMsaXGw3FveuPtZbsFvWIMjzLK/2dd/uyr6/1B5c670/LjfL2e6rBLA9GAzcdBXld8bbJcyl
YjzY7cD+bb/5umEarYORhOgYLzqbBg7RmfGKMtfjzBEm9XhoEuJapnAEMR3b8TjGPHCQ//rvv/Kg
qS4h80MMcHA+58YLmEbb7VH1Do6T23S5nVsVGkRCGgrumYIGwiROaJtuCJ+oDJwQ+75r0bAPzTGp
bVw27cE1i/pwbdb6Wwia0GwWhAEhtumjwDaJzZnpCN8xA+r7nqDU4sh9BLSm4BY6Ra0DdPaMgtvI
A1VyCK3YC7gIfo3wyH4BQD2YI0hyalqCEJMEvm06INq0PRsF1AkDC3l9QNuSR/M8Wir9J1Ln269i
KM6dzjlN/BRzeYCf2vOog7/eZ7UPt01DX/huYNqujj2xmCktwk3fFoJzTJnjoD7ctcR+vPVYC2cs
yQFOSPT5Ic5jDnYDGfIwcE3PxtQkns1M1/MtkwZB4IC/g4BaR4Ae9+x2sAlVCGitulBFNEvm89nR
rWt78HKXcgr+NC3HRiaREjLXYdIMgP8sSp3AD8lxx9ZyH3JvfcagRqjrAJMRb0y1/cEojmwoAXrz
UGNIGBpZFsATAuYSCT3T8xAwEPY80/E82+TUEYh6gY2wZqBNkeu5dK6vbugSFmkG9P4g1ZTXaVb8
jSp9NdvAuuDmRu8HPsQjfSXWXvIksTBDoFx6AIMTExI6NKXARATCkp6rvVR/Qcj5RTrLgYPPt/sN
hzvvFOd9evq913dmyzLK4kPLGFWasHSPkkLH/2Vk7VjKtsGMEFEHOdSBueNIkzAmTBFayAwt7rm+
YzHI3oY3u1Ja+hlDPfq5nKtav95lP1eFtmeHwRIagyChbWHfxJj6QJWUm450HBO7gUsRRw6pqLKB
4UBSGwePenAIUvmhGeHlMlvBwuYWfFHF1RpVzO0KxkmAwRuSmwQI0BQ+0YHmjkd9OxRu+LjI7uQf
i+duvI1+PutBP092Udzt5Zit5unNdnfBnTthaTWy0QgTMIP4gcv9UJpMIChAHAxyPajUCEOQhRWG
KAwbXq3Fnj+ooIWTI3yIU8RRx8tV1/H2/b0LYCqPSD2NbKb97diE+RTgMTuAAkQcbEobEdP3GAk4
1CZL0EN/Nxx9oKLp5e1gC7qM7EPokS06FOAuYLZlWZ0f9ojBBdXvuZ7/NuKWpm+YKT4kreUBahdL
UxIiPY4EhxL3MOr3e/lHkN+f0EIfUdqDniYVeojSu2qbXbyfYlwng+MhN3SFyQNgcqLLpoOh5vOQ
SJuFnk2p3Z5iLSlt/Zz16I+73tN71KtPTngfdzpCI2LBhfUHXRoxVGpCA9PDzAEnQqmR0pOm5zso
EIHlQKP0mKm21dXvx+1g24ZYHtowI7yTvI199rf72BUj53oCKcw5XAy+G2kSlZzLQGJmIi6gFfEc
z3Rx4JkhE67nYsuxXPZgLvTp6bWlec315Ii915OWrTO7p+AlSdLpYAoVb6qvsBryanZSTggf6aoL
FgZWQCnMRmgSodRWgXKJC/+42AV7OXiCPGjhZCu9H/JutImboPhwlhJCo12eL1UcgZ5dnjPJRlRD
DRnkOnSxVK8EiB26sELxQ5NJhxIv8CR3OhWtJWjQ1jbrgRDPj7hufn9zY8hqJ1JsMQDlO44d+j6C
CSfAfwiqmxsw6BaY60pYweAQ8Uf57/7+ycOevD+vbVCCegxK4k7ev1+rlZ/mKi4zWDgOq29d04Qt
dbYT7DDu+BSWgJ5lEoqgeWA+NwWU8NB2ocuVD2d7S3q/Ga1TOhYkPRbM5x0LJrdRXnVstm1BPazJ
e/tRx8P3LYGxZ7LAcyGfQ6jxgS5B0g0lo9y1HfEY4tmqORKLerAF30Y9AbCRvUvq6qvIdinNdT5L
agvHCSS04y60I9Sipgw84G/L4bCWgHbY5r11vCGqA4H2QeA7CN6b3/Ut8v2XTwwlkIAuIiG1PFdC
4F3oE2G1LYmmOWYK7FJBGKdQ/x4MvO5g3+TR+jaNj/Dbh+1OmcX5IZC2EbjHCEqSThHabt0ZfCvV
qqjm5X0H74W+FILBdPTBJiJxYLoogDIE3ZG0HU498nAF7wrvN6l7VssMGvUQTKRkJ5vfqSSNrrNs
Mcu+7U3gBI8wHVlIx4YRxychJIgLv4FgYOUmHClNAeRPSGjZXvjwpGyq6DekeUbLiBk+XHfAwfk+
oSDsn955i1St9rdIMJYVW1OGfI6AozmSsJpD0GdLBh0AIJahBw2sw/y/JZM3F/2I69PTbTYdoGgb
YbEeI+xuJHZ7wTbyKCSevvUFM0Lq3goDjQhHBCbyfNvBYUAE4Y/hkq3oB7OoBTmO1CHkOOG7lcK3
/+ftWrYjN5LrXl/h5WySk+/HMp9y+0hWWz2SvZtTT4lHbLIPydZY/nrfAFhFJIAiOTM8s2mSBXRm
BDIy4t6ISNSX3dmTWHNl+BWxLaOLUJLkM7rC9hGKfADHUc44KVsowq/zgvNwnRB77pZC7BU/C/Fw
8/gMRsUImJzMReSomWgJ4Nk6yWIhn+YDnJwWFj/7GD0dpp9fraCEvZ3T+W/p+zGnLC/pgI2hsN0T
QLwCKoAIQMTkUG0NMQjNXzQ8jLi+VLjQSXjQfinhMciZZe1gn1+vgdevKNTCw16RcVE2wSogBbB0
R9kOxFlsEIAb47RrUSQZ35pm+OnD5cTCTx++6cVTazJvV5IkZ8DaPlX6KpEHrLKU6opAA+2Q0++0
7M0kFyXCRgbbVy0GEH2QkmIA07Bvggvx1QDyZoB8kufCjU9XZ2rv1tQ+nox5qGB9ytMYfXJkUvlQ
4K5Y8hWOrCbNYoyNtVRL5SKXmuP7ObJOiKkKmstl8gP4Yu7HztOMPM1zCYQHZUavJqS4UnpA/oFr
BztDbES0wj5R8G7kr1tpjcsEzBfKmynaMM0LLG243qujV9QR2p5WpN3dPn7c3D8c7s8LYvwA8SRA
aohVM40thJ0jKI3jYHullQyMZ31r/zpS1gGbudDf9Mq5FY2NPyPEz19+PXMecmRRpyazBbUgf66w
n0IBHLcCTLpi1Wpus+zZeYR+YrvyqLU5zvb8v384AxG4qmGPe+4GW1EWzzprmImF5SuNjRAyr6wJ
n5Qoohr7ciYnb+63l3DU5LazCOt3ni936umV7CR9OHdpgwhkRpp2giFw5ZutxXLJDGgu9raE33KE
frNCuJdZeFX+Yb3Ga52oVq2sBFjJSnbi8PPHaYqFVkQOMU4MK+KStABRkLcmSA4nxEBtCv4JKfNW
BPfy7QmWjy9mWD7GXgnj15Q4+1LK4V7fHO7/+lw3syRyFGSxQFLNECL0cD3e8sBcAuDVBr4nl3W+
Mx+wF2ezJs7mMFv+Dz/E3e5wMzbA4HlyM1Lf8RdiDUak5qSmLw2HWwF7hz+0gC6cZ2u4sdgyb3mi
3USXEoCTWzpl/EoKDh8eluynfTqlIvQAe7yWEdHWMjACGESTkthkY9V4GwXoj2jyNdLTPl3EqK2D
PjpslwhVh504+bKnVPPD5nZPu/lUmADffMo7yWjhOgKs1nminNwwDwTBjK0DUAst+ZeS2N3IU9EM
Py4JpBFU2FODaPSdDTe/X4WzbQ6paqxwMtkzEQwnLweWZYtgPEmYtoKbazPc2g/TSQC6upTAHOZl
ih83f8t42Pebq6cv1cV6ikBedyzgCB2CBIpGHIY92ortEo1gARBaSl4FntJyQadA6s/zGXD19pGw
0Z+/3+x++PR8vRPfbZeJGOPFGfhPvy0KiHBEgL5lBfoBXsoNwoQOCFYxA3Vr68D2GrjJLA89Geab
fiaxMr08m9b24fMVP02vBtJRyX3oDJaRsHjAzyzZmpgppsWUnQzS9nNPxujnlm5lbrVZQceTGsIz
Y6xGZ2ATkB6DuK04HkAo8CFeO1lSDMqJ+ioOfqV60N3SS6+2K9L7eeok39x93Ze73cNJcvDYsbJk
WgnAVIXxgMgCF+hYSggqxgZZwd1cU/xNnOQ0wwUNTpc76cGbltJv1Tkr3O4ebv66H9s9z9Znr6Qe
BA8leVkAXnUCljWAhNi1LFcueQvU+zBLDS9H64TZ6WUZweyMPDmRJy90e/d4ffzjGaDyoUhHaUjt
U6lKM94csBusAnGkNZaN81WF4F3OL7m36cC9YJuV3bHb2JNgX2//dn27P28Pc0XrCpSTtK+GYRdS
YjdAmmQ0yzDIllIFFVCr0kxH68TY82WcMnurZ6Y2WkqeFhzJ6MSAwPBjqPp7WzE/tqylTh8dgL6i
QRRGCOA1YyfnlxPoyzkuZG2XN/Y62WXgsPwwb7z5+Xp/uHs5ZZddllZgtZM11LwEpy2rY8LGHAv5
gKZfVGk6xbou0zumSlixkrWxQthZq8h3m9tf4u3m5o+H68ENjJWh4ScUEL6AroHOR6oMKU9Rx+nI
OGyoaAPu5sy7M6ypSBfI8uSOXmmxpvRGHw/HtW9J/BOBYwIitFOld0oVoCUqgzGVUwablJnVkrFp
bNVgPC9W05e7w0qxREdWHXYzS/qvr5v7x/8bu4vEiEY1JVSGWkyu0VlhmVXUvpEAmxN152lnU7NF
NePTi0vwPPj6w3y+3omujmpF9OMcgGZqZf3xQC1sh/unXrbncpITlI/kxgO/GMdAYguerEdYDviH
a+GaTcqKkt4UTVbmuhBYVu6cabeMMdaHzWx3fHu4O5nteYcLI650GE2meO+MQHB0CoqRXw+iAH40
GxFAW7ApvEWxyTQXEo7PN0zVcGG79FT04Qmhfb09m7oMQ1EsiRq0Y9k5M2YSYNoCtlVNhWn5xusF
/79i3m67gpLcXp1LXde7r5TzfK4zGTw7enxk1z6EJEBTlKcetAKv4jP+aYiKopgiTXbztqRutE6S
vQkrkuz0xZwY2ft/fxf/c5IR4yDU5PRUUiYbBCLXMqVbFPG/LJhWskUtSsnldexGY1+GbXS1l39n
1uQ3pydJqcOxzfL69pefHq9vnoHPaIqx8BKzj2AFCJyKO8dCAHMNsWa4RdCHOOuwujDkVCzPt8s0
hed7P+tU6o4O/ElJ7QenKp5SFCJn5VtLrCYHUKZ5YTFT96EznkdhYubxJc86Hb4Xbx/WxAsn8X47
/PH5l/uuE80j6magcwaIS76owp2qAnYcfIabTbZVvirLdKxOCBGWPt6LnTwJ8R8f67fPxZGBZHoZ
m6OCelKVikoRy6YBD7PSUXpK2uT2j/dDdYnI59l7oXdqTejtyd6+bf9Dte3D/pneDWaGVVQJgJZx
yruCYXG48qaZSJkH1bxz7p1y4DMJOunDShskffhC7eLf/uSkB7mhoDT8QiQNC1+pT7dmKgpLLYFu
wB2CSQF0FREr+X+yWDG9o1dhx1dUoLLwdliAHz98XJbnbQ7VZmASKxt1pMF4YoUPN1ZHZQRPwsX3
LM9PhOiFP2zWhN/PvO2vh5svFDbVFT12TalsZUrU4ESMp6GzJApK2WemeeAml6ab1e+SP8bUF1LH
uNIps1nJxuPDuTIPXw6H3a9X94fd3S+31z25oMa3MU8+/KSaSjUxwLmxpikLIqmlIlVEk1QsFz5n
bep76PlpkOrHNaE6xjO/bfYEVjzYhrqKO5T68f7u8W53d5O+Ho+HeywsJU21GgoUgA8mB1aKIYxK
BQqnBau1ZVMVB3qub8FB/QzrqvT39HqY44oedrNsW/w0Jg3P9WIriK9TrDLSWcB2PiaOFIAdGLJI
TMvKY4hF1urfmE5/muRiQv3peq+CFysqhHnm5tvD7WEkrpubT49394gGVBkYdFEjIPDZS6Gx07QM
1BysLAu5NkZpOLB9b/JbseliqksYdXFjp9p2JT3vd1ac4uTv318/nNGqsWqouYLiCNlcYS0qLEej
XHwCFfUFESdJUXN+hYCe8uuHV/fS74cdBli/rZev02u/0qyLD8/VvIcv17f7r5+/nCNpcMMC8QAM
7nxjvMELqqbBioSFi3ClgXcambPvEVs/0lSIYLbLhxucnePfze/TBsbRYAS25xVshqxfi1QKB+A1
hmp8Q+mDKo1OcKu9wT5/hWzGn19rX5ze0akAUrZUwW8Oi57++8PQp/ThB8R0PvaZaxfokRpXgsyt
suoEpSvwW8R+BVjRBU8jWBfaq/HxafDL8fzphk74zX7pQsNWziurm6/767tBhUi/kf95UoB+EiSJ
rugGU+dWJqLKgiGOZJbBoK0unCN2vqrBMPZl+YfLnfRbtSa9njvORRQZMxbySl65oSIpR5SSIqQP
nIHTKcR4kZl3jdIWomI7t8bf1vK9Ot0b49s8nRG2bkXFo7FDZqi3rvhThlICoWF0qONvwykW0MCQ
I7O5gLJyA7yYpWRceh+lcXncsW/q1MEkL6zQT7kTfkhWLIQ/zjugyvXDb/F+e/14f97g47qMrZ2g
yBJMwyhqZJOAJdFxwVqpxSRjFH+lcj8bfV362U1TLTZg/AstNsetXNa8x/OAV2E4QcL1lR4UUFqI
BgdZisfmxmZgPlvPsg1JSm6qFuW1XOSFY4H56Von7nGvVsTdr/SfjgeMxhqsHSyl2CATrJ1R2xMc
UaDmY9mYTCk6sPRWnH5jw+Dl00VPF2dCL818y586f3sod9g9HvZDBeaMICZn37SySSYFXkoNdIhw
LHFqNuVNKOqn41y+FdEtJroM7Ba3TpXbGi6XyuHDOb57DvljSKfzSIL+39Of9NdQKPdCmgKA1wRx
WWnhpxD2WsslYaZcnP1XYIvxWqepWwnn9OHKAZxZdh0hxVM88UNOqCAiYv2EltSw1kBCWvGsxlwA
DhHRvX6f7P3KjZ0+YQWZb4OVJ7ZLRzjP6aPTMdAmuEqyJVaURxzxObEQZGRV2FRy4jzy9WLV82i9
ECsAY7vjYQVglM3jZihp047WYqidRRmi0UEwK6gJ2CE+ewn45nWtPFO9MetXQzMN/MLZT1ztRN7b
FYvf78PxsH3qsAEfvf/jy+Pd+empoQ2Y9nAymRt4GgaxOR26jLDvBIHhKWH7UWVx4VjBbNRepP2S
+28P4rjS6/pwspkxkdOubw7fXT/AtUu49IE8DhhfFBmLc4k5QsOITNiRMgB+Fh6VjNikIr9fz2gv
y+VjHc/3dOof/TIUb490tlg9Ha34cPt4uD9uSJbTmgh3Rdl37ZRWugoGV/OUo41cO1YQvLjUsdpX
jiP8PQ5nSBG+pdd0IXCvb7Ar+g4Ns4O+gPMj3Dzno59yvoCtJTXFdOAAsg7bOEhP5WZRla2WXpLw
TzKJLlXVyzFVYcf9so1lx7fnBO3H219m+VkZg3AEMDRtGhULAp/QglGHYA1RFKfMO+Vnz5N3Igu1
THDiw/MB0HK9+eX27uHxevf94eGBXvoxO3vBh2POUqtkk2bgybA3Y7AGmQ6CmwjvLxHHw6wd5uVx
exH3yxC1k3IOj2IlljbUAvlYp9BBOi1Z83RMztvEojYc/D5LL0A4W9Tvt9ljvRCvaqeLVGu6GD0r
c3weXsh1bhdzpx4P47QHMSadwHWUzgASScD0jZVCCemse7GFbTpuL9dKamEnt+cGrL98aG1mugr8
MYQS6XUtgPlgJMw3i+ernG4In1lx/U6m+zx7L/RWrAktFsn53d1m6HQb8ojDex/gEb2LCPhSUUbE
EPkNMJCgoJ1U2Tjxim1gzEvhFZd6OQ92Rc6Dm3cuHnbX4JTnItLwkAHuI8gHK1TLVg0YP/lcGQCC
TNplVW16sWdxOmYnlFtpp9m5RTtNtwl++PRSkUO6LGQCAXGeUjq+FDY0SJVsEuwSsLfY99twz7Jc
OPX5aQ0f7oJe8XeBNuB2uhb724eH/XMrsaEq49A6xIUPIXiAB+r7EzYzgB8D9uVpb1onVHlpPSbj
9mKt7b9g5nmRv+TcnRYztSYJXhGoNUDRi3eCS5VJmZOvQiRAr7dwJwy7/hBxoRdzpUq7C3sxc1+b
h0mJVp1QohaNhGpMJEpqNAH7iOAMMQrjXC3Bd4epF8/uPGov0n4JXHcbcVhBicM7Dsd+MCzVlaCU
BVCEuVJ+OPWobG5D+6QrlI+3LEmrmLGl2AqRky+vmu93T1NcRt6nOzolNisHBncbdW5A/fa7WXXU
8WJAqxTjOlIgAGv2TcCL2ZalCd5IH96pOvrdykPfqLWHrs5h7MfN/npzuzvMQkarRnheJL2cZSh5
ZEgdOMsNziENtXv1TiGjl2AmvFkTfu6OO15xzqiPkDMhZMSWBwIPugu+6FOI1M/llbUNnL68/DqU
+dAzAVdAwmYzJz7ff58/DUVP6qc1Y6oftLGlCsmMaXTEjwsQcYpuPInmckPQsG/xCDT2hZO7uNJL
u1vxCUfNV8hu695pMCTdYKwktiiiUQIrtJopfyCZV14yWeBPnWkIKK+Xm19D8f09nQ7Uwz/XYS/t
vEmrC1Bj3fSplU4oO5yVGX8ZGrYSDCQMGVxLqWk4O9E0eHHxIkZb7CtHQv+uYPgsy0vnguapamh4
WFHbz3N4ub34Dge49GDo2K0BuaTKWWEgNeCe1WdjY63hlUrCG97hMNW1veH+2U1TrQ9quyzDH9RR
zAx2eDXWpz8+b+9uqCVveNmMGN40I1XUMhvFUgBVUx66hlol0xmYko6GmfSmssN0hgtJ7skdvQ5H
uabDZubDbseT3ofzWwVOUdkbohSKGiWs5cGU7Jg1KlApSwJO1ApOgYhimi28O0ax7BtfnWMm7fKU
wEHL44qLGLqMyav5wb7GhBg2jNRRJAZYQygYVC7ZUhFGdNBGS6vD63mbYeTLnmG43EmtV2pVB63t
rMX3y83m8Xh3f36XpNOnCr8MMXBTG7POwRlnpZgn2Gizit5nnQB8Xnqy/ci9bCutJAez6IsZq4CP
T23dQ9pi0kY+wHfx9IYvx2swKWPtgWlVsPDANmfGo6DXPUSuXgEU08EvUOHJHd/0ch/WlJm/GefL
/fXtJI129ZH+HpzR2FkxdP1Uj8DHMwOGozdl0ovKvI8si2Y4XFPIJb5HN8zHXpa+uoBLvX4rRTVQ
wjPg+Ayw9XB+9xC51KqDCIneWxbonQaxUfesssNbH3PwVTU+Oxs2HeObfp6VvTec/9z2J3Gn7cdy
eLOW4UON1dmkRQZIowyVzohh1IdXW3E5qiJyKO/emP8szaVTuWvk7mCDWdF1w08P+rf/nST/F72j
SYUgYiAg3bADqFxDBXGNLYt45msW66DuedRemJVjMwdn5tmJ7Wb329cv0w4vOhKhn45GDKfyFNc1
FAQZiMeUC6D/1gQAO2+yMkl7/qZicJrNNH2g47VvelHlmvybE8b/f+KurcltIzu/z6/IY16g9P3y
2FfbtXJFa8XOvqVAEpQYjzjauTi2f/2e0yBBNtDkcJMppcplUQDUfU4D3ef+ncO5P+XRmMnQSxmM
Oc0SKASYkkYC6UAX0p3WlmRGPBzasf56q7EqKlZkGUrBiyfgruf+/r+whcLTc39KfQEh/A4s9hF2
IKbkKGVAgENMSNQunfDwvwTqZ/Bw8TZ5/d2Hn8OhLvhsFS8RMWNjiSwyrNkcA+N9/7Jff77mZInZ
OmUDGH7KYSGAQl4ImB4kRcqCoya8IexFTc+lEpnzZyqu16bx8tZ2ches/sTa8lNlpSnFMQkkujRd
IDmhF0l0Dm1xqrGkLQTPxayqsxqlnt82PuF1r5fBTaxS7Xd7TDZcJOplLH3VBKzWAGY292C/Wqzd
DzohrpMXgt6aqDdNczG4OT1RM9LIaBsKtPbotRrnfudPXgKmjkApBD5yYcBOVVQUWUIQbo+CUqKy
YDqyEGe++Xq0ipBNQ5RtqZh7DS8aehoO2Mgd6dAeha3IHagZmXfokOFKOpVeKRm/buSFf2sbeFs9
LCUDXJz710rCFca+np52q919QTAc3W3alnr9pKgXsqNWgUKHKA4OlrbgNHHmrTWevQ6MVY1/BR6r
em7GzVKmYz3CjJvd/tdKrpDyJlgp9qJZq5BBpeBZI1Yv1ucErrsg4TQBU9xzbt5CUfphfwGECm7c
1eTTBk8Ygagcs19OoU6CIV1iEi2HucIMVEyz75w0BcZZcxCOSaer1ktDuYZZm6Tw2fLeP3za7Z+m
QrTJK2s9yzJb36VYwGJ47ry2povMK6U9bLfbxE0Z/9UFPqfiQkbp2RM1n+sWn8PqrOq+X+2mBT8A
s1jGUvbw5YDBAAc0evKwhr1LhroguNAskEXZ/TRORUAvl66jba/nC/0ApvzTsX5o1I+K9+FQkMRV
8mChwIbkAvQjajU6jzIQFLRnGnNs/Ft8ylUZ02WoyemRmlW9VAC2K7ZupYS8DNX3lANNDgElNXdg
02C8zykuOsxmAE0K1Cuv/xl08OuI4BXVK770S2/XW3XclP69+3gCr1KsfCBeBEYNU50sODFBRfj+
QfEKcFYalWAXOPWNMqlP9N3VHCysZ0vIKdXgvfvgwl8WjAnGuMGeBmATObQQQJJmUCZBP3ckMKMZ
5d+IsXMK72ou+iVrlKjZljrUmDz9sX/+PFTVz1hhIt7REVpZjMnamkZHCJb/JAfsMgVb3lDRSYtd
MSRlWb19cfaYaftxSeEyHXd6qFoKUDkaS8Gm1Ib1w9c/tqDMn5QmXRDEQROBU7rLHF+tgP95r0wn
gpI5wr83nF3IZTofbkbJ0KCET/BFf57ATTCp5ZBUxZP3mE4nDEKZw+fV2UxQ5zeJiCiIdqE+Z/9s
gJtY0jA98KKaVx0dwH4/7/7lX+0Bb5gQ9KnQpH2SzHdWY/EaqHBgOQXX0ZSYi0yoaN7Ep3KEG/7+
h+twxN+fwwtaWrLEZvzRzWoy+j9+RXS05kmlsgSTmmDVLUYkDejHYLGIzhMugwCDyvv4jTb0nMqa
xaVCAhc30/dzRCaiDdQjZ1BCwKHFsJqF05JMKOGXJ0ZorqNRM2N8NlpFybAsQYWLwxT4619OCYLU
4NdjrQWlGdZY0AyaMnMc4TnBYE2BCOuVjHlWLnwa43xqRswicm8Z1ZO28vuXe3ZqSMHsCLEVvYsK
RVDMiLLEEgHhyWiXpVQxg8nsSqbHOTro2TgVAXSpoYIuZPnRH/xb/PhhXlUkwW5UYJvD9ATVU7Br
PUWs7pSJgy1NmP9WIuNE3l3NwPJ4YFxtGnkgxSpp449oElwUqINlg0l4YB45wUgHFlEC6cMC4+S2
ephXqmEq2vmylh0vTnL8ux/mSUsxYeYUfogyoy0PJ6uNkneZKes1c069Ajt9ewR6mnxG8lI+M8Ht
vABm6B/Xn0t1An0nDkgpI+paptI6g70BEOKHq0zB2DGpSwifb4KF/cTfMIn1SMilM/lw+67mp8Wk
ntdf/DR8eXgeftkN/3PyeB0rxYoEZKhlCNsZrLRCV3Pnhc8dhb0rCLdM8pvSW5bzXHp98+dqrvql
1sjkRszCFGO7rd+fEQpp5EbYgx7lok+GS9lFkREUgyo4jILoohI0KipDuiGxG8e+vEnw7l1NYGOP
qAWG6/fD7sumv69xjWXkSnJDO+NlwnxpeBUGtnYOsNUjGIQ+3lRtexj8Upl0uVkRrcxSzDBD5mX3
P/9w7mgazyXBR7Bj57yXDIgF7QWOJYRj9kTSLiklfQSp2EREWtJ+PkebgfMnKi56vVly0ffmaD3h
1tn9NpyEFueo/BXNJHANAgLxUrD+3ikMAIE1JXkBYPdaz9sYzQarCFmb1ZKQguB1gCL+KX982T0P
FcQd0QYsuWg65dDFRWApPfOuA0vHEe+8cYHXJNTDVBRs9FJJw1aKU7z67/fwD/kkvakqoY8YQGRa
0FtATQMdWGOGiNShU8pazSwWl8yWoRrorp5taJGwnYXMV9jWd0r4UaVsgAkRsVdBVg5LlLzvPHz8
nVFG0gBvw6SrcdzzIWuSer4kacvJZrPEZkV4jXOvgM86RR995ySLmPYOrycm0SXMe+aUxLE1yW1o
rAW74zIcK96+q2lsqEJbPSW6f/f+51nCWgB6JLa14YmXDB8svcA9yUCrospbG/xbJaz93FjqbUNx
BVVfLgIw+08vIOF/fNgM97MubdIEapwo64zhfJ860CVIpy2ocTZS2LD0lhWfz3EZeez8qbuK8KU7
u1y8WJ9Wwv34D84u0bE4TRqOnZMwRo4orgp7gmRsERKCV54lndL/rVbkdH/Gg2nxsD7ux6/9lzN1
npQmGyFSDIgbtM/hHPTYMyiAac54gj0oM51Fxc/GqOamtLF+lNlLfft60Az2RzyI828CxDaB/wIc
UOh7hGMRAYY1fBNZmSyCpiz9U537qple6d1XPVvzx9Yt/qa1RQCFT388P/ZnKZoTkCRxwtKAuryQ
mBwPBx8YcWCxGYdJCCCc54fuYrgZMZsGMafeS5vd09fSIOxoO5ESeisaU9DCWiMRgdxhnZaOcN4l
14HZGIIB6ZBt2xtTD1rTMywtHs7sPHdmjcWhv4LiW6pEiyouDFiGthQ94o/SywrEAdepo1ivh0ng
eDoY9CVIMLpzAuv7ukZ3GPwKbOlMuwZSG0cZZ6qVuV9Sx3bHtGc+IscYIkx509Qpn6nAQH1GF5PA
Ey3irmLM24DF5jd/vdVUVyCKzh+7qznQLbYmYy788uPHD/cvn3b7WYfco4SRhGPlZBe5wyYcXHYm
kdgpG6SWygivyBs1TWhTUnGjlh0N4eKWn7C62Mw01TkqximGjTxWfeqMYAYE/kqDSjGozOibQXW1
DkW1bewLzVr2jfslfB/RU2xGTyGc5O/GXAvhXIYzGXFg0OFBsgXrNLvOIpo5BoeICDcjF+AsV7AL
8HbFgV43Fl2vp0X/+0v/2O+fd/vh1OQSD7wsqLKw1KQU2TiGXangG0pCey6Nipa0q6rm482IaS3n
eoKM+9KvP0++MqPlGMvCwInIeNiCXc8RhtswIzuaQS6LlAS9AJt4NlpFhVl2nYOL/XqK8b18fTpr
48rlGOOj0gjs2MtKzgBIVzBUKe9CYowZS7ieI8acj1MTsG2c/pavTqriWD9ab2aQ6yDMLRg8mMLO
LVFYz4loPIbngDXz+c3qG87mryhv1OTARdsfC3Cx88ZPw6fd0/PjGR7zuIBOkwh6OPZYw5NVRNgB
gdouC2+xR3ayiv4/Ngypya657htc9wtF+cfhud+MtevkAOULFtk7PkJjC6ID1keB4QT7icJJTLBC
hcXoiWCEiTesvDxScimTYrxb8dhb2+BxoT43E06PCf8l3R/OsxHLyyXjQJgi+rfFQqzYefS5w1cK
WnSmWeu3T5KcyLmShzpL+Yd9t+z2gBe3swqur8+fH4f+hMnIDaYTFTTVGBFMOnQ0gqziDsv8Qygt
PGlIKcGuuVrFVY1ckbYlDaV1K+ch8plOQ0uuJOo0JVdSEzCMlcRWSRZrzECjkcGhRpPBQoCDLNyE
JnKDNnNRkxHKLo88ock8SWoGEbvLuwZErAU9xjKQBZ6jQMiuWD8RzHzDA1fUh5Bvlac4xRWkWLhb
sbHmS4VMbISc6QOb4enX54evT2fpw/CpHFLLScnf507BCQ77IWAQmZMI7EhjOyKUSjIJ5pW9rWCi
THXcIfjApbqJxYN3NReqxdo8HbNIhtB/fX7BPT9GRW3xjLqQQiYeDL1oGaoMrPNZ6C4ZeEOwOyTX
b5M+dUbBlZ7UhydqHhuZAGJgc8dv3K0Lkt7jH1UCOPqA5eHtEfglBeuCR/eXxe7UFJvOSsynTVRL
+4bH+ZKeS/hP8+cq7ofWHtxyvjCS7h8eP/6xX6Pj2x4A0sZXjO1FdGIEbE3MkAOlo7OxtArgFm6Z
mI1+8zN9oufSPj3cvqvZEi1ezYJX7BH/od8P9+M7Lo1srSpae9IJhBgYgpiyo1FhR+xdDwaJ0C46
luxbfM7nJFxrZD8+MWPStpjsj870x+HLw2/DeT6HKE47yVLmFg30iCmbPKEpYhExQboAQsGKtkI9
H29GzKpBTD+vg76cIu8liw4hPy2LARtn6hHd2Btro8K+T4HeUHTVIm3T+vCHKY/y4/pxGPY/gQg+
tbkTTL0TpQZC5aCx1EBIjc3JLOmskNhVAk64KKmReZYssByupmZYWmSSEdZIeysHWZGAYwgKu1aK
UQhqzah3iCMH5g9o02CgGQ7nbpBRB4mdppx/9QS6AlMz3b6ryGTLbaWE6Rv28BHpGLdVKT0oG+sA
pQyrRkBad4Q7EH48lm66oDpFRJkAxfCWeO11KOXzJ+4qahuKrhJ9P/tOK0cgI5PcTugpDQS+0qTo
IfMw8wy2oLBS5YxR82tf6QWPoNKqQZbdLtrn5alDrsaElqJUHH4V3Flv4VROXcQekpxipQCFM4w5
mRNhxkX1yleRr7bJnW5XtK8asTS16idYpvs/v/Tv5Mmrip4pWEJpQVvODhNvsNWMQ7xNEoEZzl0g
IdW76nyQevZeNWZfTX0Qfu8fT1lAILjRu8EZ0VmpjmHTAx7Rfx5hdk1ATzESjPkwK6g4G6SefNkD
wqrtMJepv+1KGWiGdz8aS/zd6Hgsf44tq+D1JNcJhrAVRJvOMU9hOzPQBeGglvYmt+Nxhgti53D3
nAVtl2m4cHGlFj2ynzEWLlURkfhH0YPgANQUccSxDgTUHoSuQKRCEnkwJinLX8n+f74UBC+3akqX
VcpW9wsvL9q2m+G5lDk/rctyj9b46FRMRsGZTkBjI4gTYRS2WS9FbSopsORcuC2Cj3hx8TjN5TVf
PFax1IqH697OwY+Qi+f7KQQLQlOQkkwVLIkucdMJYkDpRggkB4crbHjljFdaK2Zeg12YBq4pWxYO
4kWzaOj48aXgl5V+PqBAFStn/FUQvRMCGSiE8LbYCd4DfQoW2zAmExyW7JX0jmn8Sz0cD7dr2vvG
J91vWiL2qIYWHLY9fuFYBFl0ffwThVWilGbiuqjR3NSw2A6jnSFbw30UKRh/c0RgNtvrfQuOT9b8
bU2Dv+08XOOenobn0sj4zI4RY6GAGLExSh94IzqlgEFQbjDRE9QcpZkF9TdKFW+LmC9muhD3XDw3
42sZxtErLAnkr/Qze5fcB+xu/LfC4aht0DE5LNLEE5EEDnuDPRFBYptkTBedAC6jFTnf5H4/ztDm
7Hj3riZ93eCHzzFT//YhHJZjSvbCd5MYBQ1TdTljhjlo7WBPw06yOfLMlRfktsZNp9HblJ/u17Q3
jAu9UmyWG7LbbyePvdAalfnidHLOMqZip0REVHUFgkFh4kxw2FBZ5yyuwsGchq2JWqKIwkUz91L+
sD7HZFWmfPLKHLIuUoo+wbJKBLX32ASDYS4w91i7HcH6uemTP5/jwtm0bgKyIsGtz8LM8cp/7Pef
HsHgOg+us2iU5w7XFTMTvIcNG0CRoSFHAsIgGXFTCtdx7Aui93C3ptou85X0ms6dJx+GRwRoQKCh
89Z2RwaIjsFEji1msYe1i7AbecSe2gF2pncGDNCbsI2X01zw+S4frNja0O2SrY2ag2VhwdX6vqB6
H7IBxyZ9oEd6g0WD2KAYXkiO6A0BfhIIBmGEJTq9GpUJ7y/XToX3Nbnrxg7YbGijPuzT/Rg7Gte+
/EBxxqzVHmvlsfkOd5p2HgU0iDSJAD1OB/a/DiON92qCl2BkcHE7V9p+fLl/3j0/vKw/L3rLodZ+
KL8Zf+A+kHAoIqgF9q9Docw657NE7FoKNirYOe62fXB52mpDzB+rWWzUTumBz9/JX2NJNxj5KGZI
TtjUGCSTKYi7FK010CwyHEgJtCai0ttHxP56IXz81ypuPBYHL3hatHP5y/C4Gh4fnpCzKQHICy0w
Kbm4z7hJ8G6cVF0CaYYZDZml647g46BtQo93a3J1Y1sMi7LJEfzlZb97fhqhX37ej/nkNe6L8ZJZ
1mVWwPodQusw05kAhqlmURPJXsd9wZGvgL7g7RkHosXBZAncF0yBCVFHFaTpsamaSFER2UmKSOpK
UFhuEbsUMqfeEBpku6na+Yg1KY3yIcPISsmRlIfVf69P/bFUSRiIUkZpiO5o9pgXDQa9pUCUEFG7
nBSc67OOguej3NUzrRvTU33W2f7Lwz5UyNuKED1hb1s8Dxi6ZwTIR25hWTx2NQeDz1AwjxCI7FKL
+9nINWFaNwgzU4pn+LzbD0/Dfzz8Oux3f558iRRNZW29CQqLJAlSFsDCt9iRUyhJNLWwQnHmc2gP
V1O0RJPAi1OLwM9jInnXP+1PhVCyWI/FDWMNjUkQdMPgp64wYzZhv4RgHKUyqhBnHZuXI84Isi2C
VjNp+vvX9bvDiQW6Rv9p+DLsqwLfaBV8N6A/poidoBB8y8touwRbEIQsodRfL69cjH6pWGP22Iyb
1pfYT8u7ABHTuCFztOjKVth0LGCURGHND+/wSKewG4MUM9/WZaAwnK6xopwOFyOnP/x7ScwDQ+IA
v6ctboySgiGJLalgFrvAwemgO2ODxvJVBxsE9tArYA1l7EuW+Cwpz6gllB5enLLL70HL3J31OCxZ
NiGIjMFQWCV6aLgbsHA9cScp6LiGsZlf8GyUevpGfj1cZIuyonV42Az/+Qh/bWKd0GywzANIsuis
9jxjX47cRbBnmBYKxMVt8fNqoov1nGfPzNhRDXbMlLX0Hg6L/tHdfxqAgEVZZwZVA8RE7jJRoHYH
giAjwnUiOO099k9g36qss0FozegSMR4urhYozJ9f9r/u9p8OtOIpO4LXlorlqDMzMnSEYJWO8h62
oOOdxFQyyiXn/rYsznqSC+6a+qGKmUYvEYuY0tt17R8+RHrG3EEzBltl9oIyrGLj2EGC886BEOk8
t6BDBcNB3H6LhgX/KO3qftuEgfg7f8W9TGqkDfGVhETqA0qiiCaEriHtthdEgbZoAaLgrOt/vzvz
UacCom1+SLDNz/fB3RmDscs6SVr8rp6QOXmUPNWTTbanNEW6U5R6Fuz3BaRBFMPjG+TsBd3pcMxp
xRYchrPg+Bzz1SrYCw4Jq4op1xYLip8+jtL8QxJNQS3L+JwYP8RfFk9BEQuLmPkFa8rPCV9qXvm/
5jEjSIUa4PRoriHadRs9vOXVJ39HU7p3gOajifql94lutn8DGn5QTf4Ezay9KXg5C/bXOJqQdQeO
cZFE2JldK6sr5dMAileKJ5Gfn5iPbJ0yvuY9EosqBO1Z8GkgPRwTFjzuY2yAiDfNqrK2hFesxG6q
brOHRl0k0qEmKirA5e5P9/adt7PWeHS3WNruBqTq3/t+u+iGbe0fvHbm7jYeXGV59iXMg31chHE0
AOn6PXU00NTWB5IVsuQXrXrkHYOQzLclaYphrpoMSLMl0Bp2dHbBaGHjFoxqjkcfMAkPAj2pBVPw
3VJKaNEOEjBjxNA04QzP50bUSekdY5SYnV3xR+//2yFKg9FBmldfG2CUo+nAJ07vA4cGRjpHkEf4
dLEnaYqog5st3NgePJcbYKIqQuxAP3CmiXSMLsxVuQI1WQqAORmd8Van+hxAFw2iCLMFoKD06FYw
94G04ttmg0Ul4GZhx3U1RZU51nrtznr9QtUU2ajZ0owG83wKjhEcuuxH10QTuC3DF+BlPRQx2NlT
ftGkt1/XCYtLCiE9wG/n7hzjWbMVLHfW3bxToOFIVmt5dJRny9BxLgQHTZfNBjMEjJY+14Ll9YQG
MN7NZgTSQ/xIt8kOv2Sd7iZrDR3Um+/PLc+6yFstj6aZhLEda7noBw3P9eb7a3uzWszRRLvtYCKP
at5UhTDe4pvXbzumKY9r3nSO2W3smTvv5W441ETeUh7lO4MAp6OOqBOqMnh9qhiVxiktld0VcASM
9m+h2nM93mX0a0EeLysrGOoV5jOkGKGKM+cunZr76HgsTxwBI/0BUEsDBBQAAgAIABSLLkqSXCfU
zkMAAMwdAQA/ABwAaHR0cC90ZXN0cy9hcHBjYWNoZS9kb2N1bWVudC13cml0ZS1odG1sLWVsZW1l
bnQtMi1jcmFzaC1sb2cudHh0VVQJAANYz3pY+Mt6WHV4CwABBPUBAAAEFAAAAOxdXXObSpO+Xn4F
F1un5CTI88HwVdlUIYRyvHEcraXkZPfUKQrByOaNBDqAnPhmf/v2DEgGJCVWjqu2UpYvEomB7qd7
ep7pgUYzzrOIF4Wjtv+G6+Xqmqcxz6c55+qfum0j8pcyDsvb7qnwd/4pW6yXvDj/9OHy43v//MV5
+3rlIuZpmcwTnjuHtSifeF4kWdpVgBQvi7k6vV/xdtNny9AMXe1dhWVyx88AXQ5q1HHHpPF9eZul
YIOlG+ZfyjUvVllaJLNFS9wBiz8WPFcvhl1MDGFFGYYlP58myw4sgrCpIaxhXcWmg2yHkD41iKoh
CyHlw0TdZ+f7MFKh6bOKUR/jvqH2MHuLCSZnAHiV5eXOVRgrbpql98tsXagfPzYwDoYu9gbI1ZBJ
kaZTgDOyfKQNfcMdeUhnLnMVRRHIVfdr+IWrkySNuDrIstJRmYkQUgseZWlcKMrkvij5Ur1IS36T
J+W9cG/Jo1JC4WkIbowVxcvD4pbH6vQ252G8RYLAr0mxCsvoVv17zdfgqShb9sPVasH7yzBJtVJe
oCj+t4ivhNB2P/ufvWDgDgPX8/zJRO1NLt5O/Lefzhrni+DYdvY7//oquLj65F5ewEXD4bW4KixV
9A21/ihqSLgCg1oavQ/X44kfXH2YXoz+W1E+vVev+Q2cWahXPMxBGEWOomlvVEVcEQRT//N0Z1DU
mjBCOhcu1R4OMCp9/KeqUoLe/aXm2rfz/Os3dfL+P7wPf+wZT4rigsuSKJR4JysewWCKoFPmWb6U
Bx3Fu3Ynv19cvVWn/mTqqLdluToveVEW5+DuKIxu+XmcRSA2LbWv0JNcuy2XC40vuDxE+uKrorxd
ZLNwoU7zUETEej6H+O/l/A6ij6vRbZ6l2SK7ASiLTYycOQrT+wwTg2JhuDe64uXXLP+y45J/q7rB
nM/ntmGGs8iaq1NvDF2YpuBVcz6L5yEmJjIgAMswL5P0Rp1MLtWU32RlIg2tdZm6cZSu0GD2QV0Q
kxCQJe+rc4hdrL9SeQ5MhWpdlmEeocui1pzSg7rAk8BRuN9SoZvUfgJzCLLNeMcco20O0KD9BObU
uvaZQwix0VHm2DaZfT8SgGQq0WDAE4iu0TdF2wi6+gk6gRpRbO90Amp1AuiyyRN0Qq1rXyfY2DLp
E3iqVtHwlGVTkxzlKSNmBlc9YHo5omM+D9eLElyUfUk4iM7y8IarX5PyVl1Vk/f5bJ3GC64m28Th
pzUjQx0JdUJzAtPF6PfpdOxJ1ZNacwFt0FcVufyMEmqzlpKryfeUKNUsCbNjPW06ziOnSTGqHlr+
4DMvy/k+ZHKeIcyYh2B+fZ7jNCYRT0wIv2dF6TgFL7sNvT+mI8e55vNxmb8+ePmb3347U1+qkKvs
E9yPViuHWsaZgo9FbSFMD6N+m2frlePESREWRRbBtMCH9cR2mYWQwPW2l7aPS7TEZGpvXSYLyGUc
02BnCjkWXhxT/iOn/u++wz0BACautn56nH4LRTaK1QM2guaOM6ROYh/opFuHAQS9C+FdUl7ymzC6
3weBEWSEVBcQ2rogiQX9+w5LFJD5qL12E+i3IMVlx+onlm2r2p9CVViGk2ydQ7YS83CxyKK/QJUF
9rYa+8ulo1MIRuNIVRTNmVGp+n36/vJTwr+O8+QOgk6NFpANCm2YIaluc4JQhpENhpnHajMgN2xr
a5pl4h09xLLwmWKBpEUyy2b/ivpuP76Hz9+hLJOHZhjByincLiDSEPLNFeR8ZxDRa6AsyAvDgo+z
bDEG9nKcVbbq3WVJ/ELGk2kodss0EYujDEi7SlG7Kq1ohsnMJGrgjbrisxVIZEjBqCmwK6wrkHOs
h3MGvrqadCSq9WfZNbqhYLyzvNvvnDpdB06HDs3X6RTS515RAj8HAXacWVgkUVCUOTD56+g2zF+p
D43ie1DmYVIWsu1Ns1F2YAggqyb1DRiaFmVFSBakzb02PtmxGNvAneRI7JaNbTVuXdFL0vKVKjRX
al/IPiQ2Jfv0YliTgF56pN4QRbhzxXuYufbrxoakgl3dOrVAty6DGaI43hvK7UCY2QZhMJvKDEXI
3s6v2JETJggo5CI2+MLzlC/aMpuiLBRjxiFIAzHr/y3Pz3m5zlPJXnIie5C2qibllrjmKKMz02am
pW5ODL7+XX0QwqDX5cRzlDiT6riysyWLbi0m380khE/rRm0ZpjCs859wECRv6heZcQZ/Z0XLMRvp
e3qtZQmmDBtMDTbnB8ubPEjSu+wLF4GJjY1rHi9Qj6O4I3DrIEa2DqLPLiT0Z2cx+xmLMQrB4oIv
vwKDB0Vyk4aLffZG3w9Fy8C2EaM5zKdpViw4F3Mbtu2NmdHLl328n9SaUpiFKCKoMYOUt0lRRzRk
7EJwMM/yXnP+EbdmIC1e53LWfL3IYC0i/mlORLLtNV68EslY/bdoz0cm62Sk/xnehZMoT1blQ2La
JH8YfDAbz9TZUk5zjvM7DyE/L6IQSOKGNzCu0wRIKYCTvrzenj0pAVP0fl3yb29+a8+ox1skbJET
DIMsPwiWQmoA8zZ3sG1289zHGBYTvWsYuCpa5+JW82RjolwGWV2NFHcz20doDBnCDxrd4j6NpmHR
8JcA8UoVqZja6yB7cdY7eyNiRYTJ9Tq9zCBpE9hsE9L/jSjIuTFh3Uz4MdB0WHc8BTQ/LfP7cQap
Qe+fiKvTmE6S/RhDjFks5b5oBFJQD69glWff7l83ht4axL6uYIDef4b41T9y4AsI74cs3KZqb8mX
WX7vEIOZ21XAEdRs2/EDNc+y+F5SKZbJ/ZGScPggaZuLGZZM648keIbVrqAHejecZk5zNfl4fSlu
WFWPJKpV5dH8H4VzWJssQ5E5FDcijV/tI//HCKIzuhUkcg/Wub/w44US0zGQTgArpXoIT3h+l0SQ
Tke340y6g2DSIelHiKWMR02x8J/0LDM6vPgIWYRTS21K2j6TECPS6NDevhtp7VtoJgoNmMb/7HRn
r+rPMzXIeSHX8eKAUOmIxR04qsNiP141EsYN4d2rSRVPQRVjQVD5Aks2eZpBZD3dILLVpx1E5rPL
Cq1nZ7H97CzG6PmZ/PxucmDy/Ex+fvct8PO7cYHZ8zPZeH4mP7/cCz+/5As/v+yLPL/sizzDR0zP
L/sizy/7Ivp3nyRGWc6XPE7C/ii5kaVOoSylveZwalF26pQKHq1l6fCBpx1kZpg2itSJ7wXu5Ar7
aZTFPP+4ikWVhbARdWqIHiNRD62ORBBFzc7tuEdJMkx1wqOroqjkXICX5V3Y+pH2K9HqFime8uVq
AZhFjcA6KpvNUonjuJtCgN9eqVFRLAMwMZSPXTA2Orf0HgONRuEOtA9C5k/i8wDTh68pj4cbXIR1
7g4+BhZGRL3h5SjhizhIs3x5PbwKriYTaafVuTv4Y4EQkba9FXhRFGueX4HU3pALo2NhNTh0nYrn
djxWZc1B89tv37fRMDu3ER9hoygXVUVJFf/MkO1dTnghy/Mdj+flWwE1L0pZZxVL1J/CxZr3qqdX
bSwCRv38bQf1NkZe1EFCO087HoHUmuOwEvQIaNW/W7XbEBHHX7ThvWjCq8o6GJE3PY+DFwPfeJPJ
+8C7/C5CSZ2sU3f0YwWmMZ/HKlDUQoSJKJl3nDkHWpOSe7umdowyWKcy6TEq45h0VDa/tXy9afDC
xaLYxsEurOlYnpWt7lv1NNLvOpFFTsdhnBkzoRw8vkVYf/5BLHwHiY5lxdJxQMLZvAZSl3Y2vlT9
E8HXG/F1658mwgP0+oDslTrLsoUALmWKwZ8LtBSZstDpOLi2xf6f4GJZGnUUWhYzs6Kp6bhNUUL0
J54n8/vd7t41QB4uV8GdvCKAwyX/VrbHzE6zeGqzXlSRwRiMI3Ys+jCOGtR1APJh4C+eADjBuoKN
Y4FbhFakNh13sdc8hs1jZWJ93pk6vEXC01JE4AXM7I4TdbzUOHvTsu3Rh7bpuDrda/pm7xnXD27B
1FawdaQJCLOoIfYdv4ewT9KqkHmar0XlNL8DsockpScGQVWxDSkDto+cVuaMzIQqKdWvZVYMRVp0
/l7ksVPQNcu+7ZNFLd2geihfiBBfWTgTL28JXJRYpq4QfNSzTouG9kw8gQz+54qYrcedVXcG3iKE
gRoxHMR8wW9EwvY1WSwmPI3rBHuU5e66vBXvRtQF3bcwe4hSFH+M7cAbgVhxwvZwMBNFNw81dpjY
CiFH4bYpQkb8CNzYCsSrHMMauyxz8Mfvoo+YVihWovKD56O7MTYqrA+ixu8o7RyqpHtVyU3w6X34
zW+ZE5Cqtlwh9OiOwLVB77D1XyIKJyLlWC+S9GbCS0xWPBdv2FUm7OK/87t+JRBd+pGli6FNm6WL
EXRZLTZM46CuZZZ9phB2nGwy19GsKbvqKKEiW4tHwpZCjGMrLRFtipRrwyDOYRjL4jEYD+axDjCR
uSNx61KmQ6haR4okMaMNkXmWlR2kjILt9rFiYeg3xIro4ptCUyoqcrBCjy13sXVYme5d2otBKl6p
fOKlPYOlvXy/R5TNi7dHo+nD20VH3eNA8cyA8bMSwwOC607UTv7kDY7QJI0bHOK90qCWZhrdNfuP
K7xoGEIUSiMr24BN4kS+J+uUyZLHf4Ds6iUnWXgIk12crWcLXi2ybLVXXQY8MK4gFQ+vMx1bHUko
heWwVDYO8y8g8zKDeW4Fn7ewYEDeiym8vWyX10yibMXjy3A5i8PXYk5Ue2dvtnP07ilV9Vj3FPGy
9x+Cle/TcJlEnuAX8aZ180UEA9Y5vQeI0mID6ceWTaIYsk7TkElspXxr5kDURTqiYz/C1LV4LVsv
Acqb3vbjEYjlezcNwLeO9RMll0jnOG4VAs7XafWCe/359b7h4jhylD0A5/mDPcLQbVGt4/x7gPa/
DvIEgt9sCgZFfSXEQS4E986qN67Ee1Ad8bJbCaLHF4BS29oE8k4d57YoEZuW2ts4MFw42NR33oN6
jKpZNK9UfS3n08Pa2HMsgSTGicJPFH6i8BOFnyj8V6Vw80ThJwo/UfiJwk8U/qtSuHWi8BOFnyj8
ROEnCv9VKdw+UfiJwk8UfqLwE4X/ohRO0YnCTxR+ovAThZ8o/FelcHyi8BOFnyj8ROEnCv9VKZyc
KPxE4ScKP1H4icJ/VQqnrR9W9EYTESVlf1X92v1PvAGPzOo3dRc8ajD4Mb8zaGOdhfI3Cysw76tf
rZYETo5/7f1gt9Cn6xb9iX+pjz6/30Giz+93kJAa1TuoyV1wPltGvZWaKn4emas9Q9dmSXnmKKqa
h9+cnQ3NEDgsnx1qiA41xM0GDF6cU7FJnWhJDlxSbBuEdWxuAhlX2lc7DTSWV+xpiIQSNbf2KBG0
ntstXGFoczsSsjDaB1g04Kao+YwyIPu5sASTA5Zg2lYys6hlW6JBP6SE7V6BLaEkWbVaNlvvqPl8
0dEOjUi8eZfvgUWFV5TLen81b/yx2pYOItjP8yyXe93VO9VtL9WVqfi52qv1crbZXhHriqIMkjTM
79WLJTBm4SibXem+bTekUzW1eZBRA3pHfdnZ9aGHztTXzBh4puFaGvPMkUbpgGiWa1HN1V3PxNj0
XTR88+NtIFvqomgPhgj6zFRfwkCq97cRW3BMbpNlPbokGkRHbGSZnmYx39KoO9K1wQg+Mdt3R3g4
HBA22ofmkNQ2rpju4jJ0ax+u9UrszNiEphv+yKdU14bI1zWqm4bmWkNX89lw6FmMERMNHgGtKbiF
zoj5DjpMY+g4+p1cqAcJ90u4CP7r477+EoB6CFnINpkGfEY16g91zSUIabqnI5+5I58gbx/QtuT+
PA+XXHDueb09ZXHuds5p4sch0nfxxxbr4K82ytmHW2ejoTUc+Jo+EH1PiaHZhJraULcs08TMcF20
D3clcT/eqq2JkzAc7+Ckdmjv4jzk4IFvj8yRP9A8HTONerqhDbwh0Zjv+y742/cZOQD0sGfrxiZU
hg2yA5VB5M3ns4N7D+3Baw6YycCfGnF1pFHbhsh1DVvzsXAHc/3hiB52bCX3e+6tzlAqhGIeMCxG
5w/ItwdNI9RhChC7v6g9aqA+IQDPsmAs0ZGneR4CBsKep7mep2smcy3EPF9HWDDQusjFWDoXVzd0
WYTatKtLHGSC8jop6XDNyyGfrWH1d3MjNnTr4b64EgsveTYl2ECg3PYAhkk1GwEg28LU8i1iewPh
pWrT1PPLZJYDB5/XG0aNNt4pzvfp2e+9fWe2LGNGtGuZwbggLJGlJLCuu+uTDUvpOpgxQsxFLnNh
7Li2Rg3D0qwRQdqImN5g6BIDorfhza6Uln7DQHv0m/acV/rFRoh59csTGwzEEhgsOtIJHmoYsyFQ
JTM113ZdDQ/8AUMmcqmkygaGHUltHGa4B4dFpR+aPbxcZql4OR58IfuV9CVzDyzDpD4Gb9imRoEA
NWtIRUebrseG+sgajB7Xsxv5h/pz095GP5/tQT+PN7242X4kS+fJTb0hxsadsIDu66iPKZhBh/7A
HI5szbAQTEAmGDTwYKZGGDrZIqMRGo0aXq3Enn9XQQunKe7FdHFaUdjxssw6Lj48uACGcp9Ww0g3
hL9dnRpDBvAM3YcJiLpYs3VEtaFnUN+EuYlYbNffDUfvqGh6uW5sQbdDfRd6+H+8Xct2HLmR3fdX
eKkNqvF+LPGUNad7pGl293jnU081jylSh6Tabn/9XGTWC5moIsfm8UakKpNABBCIuDciMqtG9sYF
hDuctoeH0T7kQuMPhp+7ev4lNby6b5yUBKPlEVIH5ogTwkVDrYE/vi71x+P4FyQ/3dBIv1SqI73a
DNJjl34cnmBnxyNmqjH4SEMJlpgMTy5q2PQMMd8U4aQuUSol2yPWjNLOb3Rn/vV09YZXzfzqy2nf
1YIuBMcfjr/U0MgQqYXKJDLtsYgINc5FR2LyNNvMPYDSa47afq7+Ou4vtjqs3VyHlTAT4z37osT9
Vy88LfzPNzBhY/DHWLtFdaLOGJcd04QaCygSfSSB5UiKtiEGxj0P+qot9Obp6nL+Nz/fXND355tG
15XsBLzNZjNBMMc3qbwzw+lURgizqFEXGmaelcJpBEhEqB02KoiAfwIL0NdgJcRVDQ+veumLfLh6
Lreg6/kpFUItD3b+ZbteYp6DnWunF6qKWjRsHShWVSYgZAlgKKkQ7bwSMUdn/CSiNQN918626oiw
3l1Yut0phfVOj4tYvwwbQiXvZUmJ4sBZrB9FdAtZAy3oEBwYDCvUvGr9Tlmy6yt5uq9VaEM7Cm3W
E7v/+HV7n24ft+vnBxDHd8M30VeH7aq1C+a18UmBAkZOhKIADzoZYhHCiwxAue66tTej99Vobplo
sOlogH9bDW5+Wz4OiE1Kjng4Ou/9r3U/UuKWsUh0jgH2XBDjcw1BLhSnlQnS29c4nv00F/ZivNiI
L2lnAySVB6Mevp79YNKm2rNT0nqfHeB4ABxRXBGXI/w39wZcAnBYmm4cPxtqIoLqiWAOIsT3f6mF
kOO3h75zcAI1iBTFY3DY+ACcCLbtRHVzmlgWlBXaKMS/qxtfEez7x+XX327XF/zbT/svd3n6fi5I
qwTrKKHEZhKE9i/+yf943t4/DefyhOBjSc5ajeOYoJNwLJNAM8IQ0JGT3qgorkfw6eB9laZ3NWrs
XyHVqrHcuok1N2+mOqhgBFswteC07o0WPokCAwn4CQcD5ma9c8TC+QtRuIzl+qE8n6KvyPkdjRIr
Nucd+HB3NChs+68/ji9vOtgUY27w1krTZCh8tKEObI4CZzsNBACJXYkAsF6nF53J+x/6Eo+33+6t
aSZFqwTXHSXkdCcOb5I6s6MiYk194US4iq0Y3Ij1NhMak/SsZGGFeY0v2Q991YoakdfL7Vzk9cYc
mMI/vq6PnkSrhaKLyraUTEzwKp+SGbaPUGQdOI4wynBeXGK2zwuOwzVCbKiZC7ER9CjE093zCYyy
ETAZHhOLXhJWAsCzNpz4VH2adXBykmn8bGP0+TDt/KKDEjZ6Suff39y0LC9Ih4MhcNwDQLwAKoAI
QMTVoersvGOSXjU8jNjfKlxoJNxKO5dw5/jEsuqblL/dAq8vaqiFh11U46rZBC2AFMDSTc12IM7i
gADcKCNN8Sxw/9o0wy8fLicWfvnwXSue6Mm86iRJjoC13OT6XbBP2GXOxaKChnpCDr/XbS8qGM8R
NiLYvijegeiDlCQFmIZz44zzLwaQVwPkgzwXbtxfnai97qm9OxjzUKe8iecx+uDIuLAuwV2RYDMc
WQ6SeO8LKSGnTFlMOfq3c2SNEOcqSMrnyQ/gi6kfO04z8jRLORAelBm9GuNsIeSA/B2VBnaG2Iho
hXMi4N2qvy6pFMoDMJ9Lr6ZowzRXWNpwvVVHdtRhUh92pDzcP39aPj5tH48bouwA8ThAqvNZEokj
hJPDahrHwPZSSREYT9tS/nOkrAE2U6G/a5UzHY2VPSLEL19/O3Ke6si8DIVHDWpR/bnAeXIJcFwz
MOmMXcuxTLJnxxHaiXVnqaXaTc78nz8cgQhc1XDGLTWDrQiNtY4SZqJh+ULiILhIMynMBsESy0pf
z+TE5ePqEo46u+0oQv/O4+VGPdnJTtYPpy5tEKGakawnQVVwZYvOSVNOFGguzjaH3zIV/UaBcM8j
syL9y3qN1xpRtejsBFhJJzux/fXTeYql7ggfYhwbdsQErgGiIG8OkBxOiIDaJPzjQqQlMWr56xMs
n65mWD75Vglle0ocfWnN4d7ebR//eqqb6SqyZ9VigaSKqojQwvVYTR0xAYBXKviemPp8ZzpgK86y
J85yO9n+Dx/9er29G9ucsJ5UjdR3/KWyBsVCMVySYmt6Aewd/lADulAataJK48i8ZkWbiS4lAM9u
aZSxnRQcPtzO2U+5OaQi5AB7rOQe0VYTMAIYROG8sslCsrLaM9AfVvhLpKfcXMSopYE+0q3mCFW6
NTv4sn2q+Wl5v6mn+VCYAN/c552413AdDlZrbKWcVBELBEGUzgNQcyXYa0nsZuRz0RTdzQmkYowN
qR3cXL9m9O73hTva5pCqxg4HFS1hTtHq5cCydGKEBg7TFnBzZYJb22EaCUBX5xKo7bRM8dPy7xGL
/bhcrL7db+5qiXHBXPW6YwGHSec4UDTiMOxRZxwXrxhxgNCc08ywSvMNPQdS309n+H54/TOw0fc/
Ltcfb07XG/HNap6IUZYdgf/5F5wDEY4I0JYoQD/AS6lCmJAOwcpHoG6pDdheATeZ5KHPhvmunYl1
pudH01o9fVnQw/RiIB25ug8ZwTICNg/4mQSdA1FJFR+i4Y7rdu6zMdq5uenMLZYddHxWQzgxxqxk
BDYB6VGI24JiAVyCD7HS8BS8E4blF3HwC9WD5pZWerHqSG+nqZN49/Btkx7WTwfJwWPHypIqyQFT
JUIdIgtcoCEhIKgo7XgGdzNF0FdxksMMFzQ4XG6kB2+aS78Sx6xweXi6++tmbOo9Wp9ecDkI7lKw
PAG8ygAsqwAJcWpJzJTT4mrvwyQ1PB+tEWYt52UEtVb84ET2Xuj+4fl298cJoNKhSFfTkNKGlIUk
tBhgN1gF4kgpJCpjs3DOmhivubfzgVvBlp3TsV7qg2Df7v9+e785Hg+1qPsKlBOkzYrgFNbEroM0
QUkSYZAlhAwqILrSnI/WiLGh8zilNlpOTG20lHhecKxGxwYEhh9D1d/qjPlxZHXt9JEO6MsrRGGE
AJojTnK8nkCfz3Ehazu/sdVJzwOHptVtNzWBX28324frKbtoItcMux20qs1LcNo8G8K0jz5VH1Dk
VZXOp+jrcn7HuRKadbI2mjE9aRX5YXn/2d8v7/54uh3cwFgZGn5CAWYT6BrovK+VIWFr1DHSEwob
SlKBuxn15gzrXKQLZPnsjlZp1lN6KXfbBo2c3AbAcQUi9aRya4RIQEu1DEZEDBFskkeSU8Sh0VmC
8Vytps9Ph+Zsjo602K4nlvQ/35aPz/8cu4vYiEZlTagMtZiYvdFMEy1q+0YAbA61O08aHYpOoigb
rm7BafD+Yp6uN6KLneiIvpsC0FhbWX/a1ha27eO+l+1UTjKs5iOpssAvyhCQ2ISVtQjLDv9QyUzR
QWiWwquiSWeuC4Glc+dEu3mM0dYtJ6fj/fbhYLbHE84UW0g3mkyy1iiG4GgEFKt+3bEE+FG0RwAt
Tgf3GsXOprmQcDzdcK6Gcau5p6ofHhDat/ujqXM3FMUCy04aEo1RYyYBps1gW1llmJYtNF/w/x3z
NqsOSjIbcSx13a6/1Zznqc6ksHZ1+apdW+cCA00RtvagJXgVG/FPQVRkSSWuopm2JTWjNZJslOtI
spYXc2LV3v/3B//fZxkxCkJdnZ4IQkWFQGRKrOkWUflfZEQKXrxkKcX0MnarY1+GbfVqK/9a9eRX
h5WsqcOxzfL2/vMvz7d3J+AzmqJPNPloPVgBAqegxhDnwFydzxFuEfTBTzqsLgx5Lpalq3mawtKN
nXQqNS377wSXdnCqbJ+iYDEKW0ogORiAMkkT8bF2HxplqWfKR+qvedbz4VvxNq4nnjuI97ftH18+
PzadaBZRNwKdE0Dc6osy3KlIYMfORrjZoEumXVnOx2qEYG7u4y1b84MQ//Upvz8VRwaSabkvphbU
g8i1qOSxbRLwMArpua1Jm1j+9X6oJhF5mr0Vei16Qq8O9va+/KXWtrebE70bzAy7KAIALaE17wqG
ReHKiyQsROpEscaYN8qBTyRopHedNsj64ZXaxZ/eGW5BbmpQGn6pJA0bn2ufbo61KMwlB7oBd3Aq
ONBVRKxg/81ixfkdrQpr2lGhloVXwwb89OHTvDyvo8s6ApNoXmpHGozHZ/hwpaUXitHAjH/L8vyZ
EK3w22VP+M3E2/62vftaw6ZY1GWXNZUtVPISnIjQMHSWeFZT9pFI6qiKqcii5ZvkjzH1hdQxrjTK
LDvZeHw4Vebp63a7/m3xuF0/fL6/bclFbXwb8+TDz1pTyco7ODdSZM2C8NpSETKiSUiaMhujVPkt
9LwZpPqpJ1TDeKa3TVag48GWtau4QamfHh+eH9YPd+Hbbrd9xMbWpKkUQ4EC8EFFR1JSFaPWAoWR
jORcosqCAj3n1+Cgdoa+Ku09rR5q19FDL+dtizdj0vBYL9as8vUaqxQ3GrCdjokjAWAHhswCkTxT
73ziOdtXptP3k1xMqO+vtypY1lHBTTM377f325G4Lu9unh8eEQ1qZWDQRYyAwEbLmcRJk9zV5mCh
iYu5kJqGA9u3Kr4Wm86muoRRZzc2qq066Xm71uwQJ3//8fbpiFaVFkPNFRSH8WISKV5gO0rNxQdQ
UZsQcQJnOcYXCOghv7598Sz9vl1jgP5trXyNXptOsy4+PFbznr7e3m++ffl6jKTODBtEHTC4sYXQ
Ai8oigQrYhouwqQC3ql4jLZFbO1I50I4tZovrjN6in+Xv583MI4Gw3A8F7CZav2ShZQoAK9StcY3
lD5qpdGw+liUwjl/gWz6X19qXzy/o1EBpGyugl1uZz39j9uhT+nDR8R0OvaZS+PqkiqTHI8lk2xY
TVfgN4/zCrAiE1bDaePKi/FxP/jleL6/oRF+uZm7ULfi08rq8tvm9mFQwdffqv/ZK1B/VkjiTZIF
pk41D5UqM4I4EkkEg9YyUYrY+aIGw9iX5R8uN9KvRE96OXWcsygyZiz4gi/MUJHkI0oJHtI7SsDp
BGI8i8SaUtMWLOM4l0Jf1/Ldne6V8W2aznAr01Fxp/SQGWqty/8SoRRDaBgd6vjb8BQLaKCLnuiY
QFmpAl6MnBPKrfVcmTie2Fd16mCSKzv0S2yEH5IVM+F30w6odPv0N/+4un1+PB7wcV/G1k5QZA6m
oURtZOOAJd5QRkrKSQWlBH2hcj8ZvS/95KZzLZZg/DMtlrsVn9e8x+cBF254goTKhRwUEJKxAgeZ
ksXhxmEgNmpLonaBc6qyZOmlXOSFxwLj/loj7m4jOuJuOv2n4wNGYw1WD5aStOMB1k5q2xMckavN
x7wQHoI3YOklGfnKhsHLTxftL06Enpv5iu47f1sot10/bzdDBeaIIM6efZNCBx4EeGltoEOEI4HW
ZlNamKj9dJTy1yK62USXgd3s1nPlVoryuXL4cIrvTiF/DOn1eSRW/27/3/q/oVBuGVcJAK+wymW5
hp9C2CslpoCZYjL6P4EtxmuNpqYTzuuHnQdwJtl1hBRb44kdckIJERH7xySvDWsFJKQkS7KPCeAQ
Ed3Kt8ned25s9HEdZL5ymh/Ybn2E85g+OjwGWhgVgZdAkrCIIzYG4hz3JDMdUgyUetovVp1Ga4Xo
AIzVmroOwEj1K9BrSbueaMmG2pnnzivpGNGsNgEbxGfLAd+szJnGWm+M8sXQXAe+8uwnrjYib3TH
4jcbt9uu9h024KOPf3x9fjiunhjagOsZDipSBU9DIDatD1162HeAwPCUsH0vIrvwWMFk1FakzZz7
r7Zs1+l1fTrYzJjIKbd32x9un+DaOVz6QB4HjM8S98mYQExFw4hMOJHcAX4m6gX3OKQsvl3PaCvL
5cc6Tvc06u/sPBSvdk4dyq7x/Yf6fcG7ZZXlsCfMLGr2XRohhcyMwNXsc7SeSkMSghfl0mf9wuMI
/x+HM6QIX9NrOhO41dfpjr5Dw+ygL+D8CDeP+eh9zhewNYUiiHQUQNbgGDtua7mZZaGzri9J+DeZ
RJOqauU4V2FN7byNZU1XxwTtp/vPk/ws946ZCjBkPTTCJwQ+JhmpHYLZeZaMUG+Unz1O3ojMxDzB
uWbi+ABoul1+vn94er5d/7h9eqov/Zg8e0GHx5y5FEEHScCTYW9KYQ9ifRBceXh/jjjuJu0w18dt
RdzMQ9Sa8yk88rmytKEWSMc6hXTcSE6KrY/JWR2Il4qC30duGQhn8fLtDrvPF+JVbnThoqeLkpMy
x5fhtWvHdjFz6PFQRloQ46oTuI6QEUAiMJi+0pwJxo02V1vYzsdt5eqkFtZ8dWzA+vlDKRPTFeCP
ziVfX9cCmA9GQmzRWF9hZEH4jILKNzLd0+yt0CvWE5rNkvPrh+XQ6TbkEYf3PsAjWuMR8LmoGRFV
ya+DgTgB7biIyrAXbANjXgqvuNTKudUdObdm2rm4Xd+CUx6LSMMiA9x7kA+Sai1bFGD8YGMmAAg8
SBNF1uFqz+L5mI1QptNOszazdprmEHy8uVbk4CYyHkBAjK0pHZsSGRqkUlQBdgnYm/TbHbiTLBee
+rzp4cO1kx1/5+oBXJ3vxeb+6WlzaiVWtco4tA5RZp1zFuCh9v0xHQnAjwL7svVsasNEurYfZ+O2
YvXOn1PTvMjPMTZPi6mcAwevcLU1QNQX7zgTMuE8BpsZC4Ber+FOGLa/iLjQitmp0q7dhk3c1/Lp
rEQrDihRslKFKoSFmtQoDPbhwRm8Z8qYnJxtHqaerd1x1FakzRy4rpf/R9yV9UZuJOl3/Yp93Bdq
8z4e87SN7QYaFmzM24AqsboLVqs1Orxu//qNSFaxmGRWqYwRPIDhbpN0MoKVGXd8QYeGlViQLMd6
MPiprimGLMCKkNfclK5HrkIu5ZM6YjxedZ4p3kkVo0pAsjfxze37Yf+K05b34YmKib7RMLjp+VSA
+sOHRXZUkyjBreIdEQ4VAXjNJlOQYioHJq2RzNh3yo5+aHz0nrc+Op/U2M/93a5/2AwLlZGTpIZE
huAsJeURgGpLupBBOPiSu+fvpDJqChbEyxbxS3Fc+RVTRH00OT2oDJdDceDB3QV/0XjrsJ7LcKUy
+PTxPBzKcukFgQ0joe+Xjs/Hj+GmJD2xnlaOoX5wG7NPQJmUGVv8CAVHHLUb8TTrkEFpqEskAq59
onMX7tTUbhoyYStIw9nNFaZBCbrBZkWyaaQZA1g2p4DxA9YZbljHIshTLTMolLfTzW9Z8fUzFQ9Y
w7/k4Y6pZZFWpaDGvOm+lI5yVXplxr+Ugi0PG8SWCK7C0DQIO5oF+MXRUOdUVG+0hP4lZXik5Vxf
0DJUDRwODbbNMoYX8lkMBxDpVmLbrQTnEjNnsQOnBnzPZIJULiX7RibhAgyHOa/5gucXD825Hvjt
Og0/8C1dbNgCjXXz/evtt3ssyStgM7QgzTDuBAuSd96Cq8YN8GpTYp0IYFNia5j0F6Ud5m84EeSe
PVHzsGUtHvqFDHsYO72HCVXgoJWNRJeCY6GEUsTKGHSnJLeYymJgTqQEPgVoFJlVJFUbxbpuvPmO
BbXrLoFBsG1DRJQqY5RqpuyvMSAGB4YJR30HZg1aweDKeRUTqBFhhRRMCft23KasfFoylNsV1aKR
qxqEUIsS38f7/mX77WnCktTikOFn1lkiU+6U1iCMA+edQbNRBe6MCcKD4XPuy9Yr17Q1SkkGuaqL
GbOAL/uy7hK2mJWRF/Od7hG+NElW+gC/Pdi03CqQwCqEjjiKcA+O8DcMivniJ1zh2RNXNd1Di5kl
Ms7j0+5hFka7/oT/XYTRWFlRqn6SAcVHQgc2HCJlIlCZMa4LNEsCosmG6N6jGuZTTUudXYBbNX+N
pBq4hJPB8RWMrecJewhFahKWWo+4ZRYxDVzG6lmuCupjsCbxTBa9YfM1rur3NM5e6f+8rTtx5+XH
rCBrSVJyrFp5QQMYaRihEgF0GNbhpRx1cDzSYOO7F+YfqTnVldty7gZlZYPXnhw+9G9/zIL/q9pR
z62lzqIhneEEYLoGE+ICjizoM5MCbRt1x1VrYhptM4OWy+jEbb/57fVxXuGFLRFi3xpRuvI4EclG
UDJAXse1BfdfSQuGnZGBSy8MuSgZ7Bdvmn/Q8d5VTSpr0d8fbPy93J/qaMzk6KUMzpxmCQwCLEkj
gXRgC+lOa0syIx6Edqx3b7VWRcUtWadS8OIRuOulv/8nDsp4fumPpS+ghK/BYx9hB2JKjlIGBDjE
hETr0gkP/0pgfgYPFy/T1z98+iXs+4JnX/EUEQs21sgiw4YtMTA+9K8Pmy/ngiwxW6dsAMdPOWwE
UMgLAdeDpEhZcNSEd4S9qOk51SIzf6biemMaP97GTuGC2z+xt/zYWWlKc0wCjS5NF0hOGEUSnUNf
nGpsaQvBc7Ho6qxWqd9vG1t40+t1chO7VPvdAxYbrgr1Mra+agJeawA3m3vwXy327gedENfJC0Ev
LdSbXnMyuTk9UTPSqGiDi1MN7/jua3+MEjB1AEohsMmFAT9VUVF0CUG4PQpGicqC6chCXMTm69Uq
Qu4aqmxLxTJqeNLR0yBgI3ekQ38UjiJ3YGZk3mFAhivpVHqjZfy8kxf+p+3gbfWw1gxwcRlfKwVX
mPt6ft7d7u4LguEYbtO29OsnRb2QHbUKDDpEcXDwaQtOE2feWuPZ28BY1fpn4LGq5xbcrHU69iMs
uNk9/FbpFVJ+CVaavWjWKmQwKXjWiNWL/TmB6y5IkCbginvOzXsYSj89nAChghtXNfm0wRNmIKrA
7NdjqpNgSpeYRIswV1iBimX2nZOmwDhrDsox6XTWe2kY1/DWJil88Xnvv33ePTxPjWhTVNZ6lmW2
vkuxgMXw3HltTReZV0p7OG6XqZuy/psfeE7FiYrS2RM1n5sWn8PtrOu+v91NH3wPzGIZS9nDzgGH
AQQ0RvKwh71LhroguNAskFXb/bRORUAv16Gjba+XH/obuPLPh/6h0T4q0Yd9QxJXyYOHAgeSC7CP
qNUYPMpAUNCeaayx8e+xlas2ptNQk9MjNat6bQBsb9mmVRLyOlT7KQeaHAJKau7Ap8F8n1NcdFjN
AJYUmFde/xV08POI4BXVt3wdl95utupwKP0Hd3MEr1KsbBAvAqOGqU4WnJigIux/MLwCyEqjEpwC
p/6mSuojfVc1Byvv2RJyLDX44D658L8rxgRj3OBMA/CJHHoIoEkzGJNgnzsSmNGM8r+JsTmFVzUX
/Zo1StTiSO17TJ6/P7x8GaruZ+wwEdd0hFYWY7G2ptERgu0/yQG7TMGRN1R00uJUDElZVu/fnD1W
2t6sKVyX404PVZ8CTI7Gp2BTacPm2+P3LRjzR6NJFwRxsERASneZ408r4F/eK9OJoGSOBCf1sBO1
TPPlFpQMDUr4BF/05xHcBIta9kVVPHmP5XTCIJQ5bK/OZoI2v0lEREG0C7Wc/bMBbmJJw/XAi2rZ
dbQH+/2y+6//tnu8YUIwpkKT9kky31mNzWtgwoHnFFxHU2IuMqGieZeYygFu+MefzsMR/ziHF7S0
VIkt+KN3t5PTf/OI6GhNSaWyBJeaYNctZiQN2MfgsYjOEy6DAIfK+/g3HegllTWLa4MELt5N++eA
TEQbqEfOoIYAocWwm4XTUkwo4W+eGKG5jkYtnPHFahUlw7oFFS4OU+Kvfz0WCFKDu8daC0YzfGNB
M1jKzHGE5wSHNQUirFcy5kW78HGN+asZMavMvWVUT9bKH1/v2XEgBbMjxFb0LipUQTEjyhJLBJQn
o12WUsUMLrMrlR5zdNDZOhUBdG2hgi1k+SEe/Hu8+bTsKpLgNyrwzeH1BM1T8Gs9RazulImDI02Y
/7tUxpG8q5qBtXhgXN016kCKV9LGH9EkuCjQBssGi/DAPXKCkQ48ogTahwXGyWX9MG90w1S083Uv
O16c9PgPPy2LlmLCyinciDKjLw+S1UbJu8yU9Zo5p96Anb48Az29fEHyWj8zwe2yAWbonzZfSncC
vRZ7pJQRdS1TaZ3B2QAI8cNVpuDsmNQlhM83wcJ54u9YxHog5JRM3t++qvlpMamX/Rc/D1+/vQy/
7ob/O0a8Dp1iRQMytDKE7Qx2WmGoufPC547C2RWEWyb5ReUt6/ec+vmWz9Vc9Wurkck7sUhTjOO2
/nhBKKSRG2H3dpSLPhkuZRdFRlAMqkAYBdFFJWhUVIZ0QWE3rn36kODdq5rAxhlRKwzXH4fd17v+
vsY1lpEryQ3tjJcJ66XhpzBwtHOAox7BIfTxom7b/eKn2qTLzYpoZdZqhhmybLv/5ad5oGmUS4KP
YMfOeS8ZEAvWC4glhGP2RNIuKSV9BK3YRERa0z5/R5uB+RMVF72+W3PR9+bgPeHR2f0+HJUW52j8
FcskcA0KAvFSsP/eKUwAgTcleQFg91ovxxgtFqsI2ZjbNSEFwWsPRfxzvnndvQwVxB3RBjy5aDrl
MMRF4FN65l0Hno4j3nnjAq9JqJepKLjTayONDWayxZ//dQ//I5+0N1Ul9REDqEwLdguYaWADa6wQ
kTp0SlmrmcXmksVnqBa6qt82tEjYLlLmtzi8eSr4UaVtgAkRcVZBVg5blLzvPGz+zigjaYBfw6Sz
edz5kjVJPV+TtOXk7m6NzYrwGvOogM86RR995ySLWPYOP09MoktY98wpieNoksvQWAt2x2k4Vrx9
VdPYMIW2eip0/+HDL4uCtQD0SBxrwxMvFT7YeoFnkoFVRZW3Nvj3Klj7pfGptw3DFUx9uUrAPHx+
BQ3/8dvdcL+Y0iZNoMaJ8p0xne9TB7YE6bQFM85GCgeWXvLFl+84jTw2f+qqInwdzi4XT/anlXQ/
/g+zS3RsTpOG4+QkzJEjiqvCmSAZR4SE4JVnSaf07/WKHO8veDAtHjaH8/jYf52Z86QM2QiRYkLc
oH8OctDjzKAArjnjCc6gzHSRFZ+tUb2b0sb3o8yemtvXg2XwcMCDmO8JUNsE/gkgoDD2CGIRAYY1
7ImsTBZBU5b+0uS+6k1vzO6rnq35Y5sWf9O3RQCFz99fnvpZieYEJEmcsDSgLS8kFseD4AMnDjw2
47AIAZTzUuiullsQc9cg5jh76W73/FgGhB18J1JSb8ViClpYayQikDvs09IR5F1yHbiNIRjQDtm2
ozH1ojU9w9rj4cwua2c22Bz6Gxi+pUu0mOLCgGdoS9Mj/qXMsgJ1wHXqKPbrYRE4SgeDsQQJTndO
4H2ft+j2i5+BLV1Y10BqQ5RxplqV+6V0bHcoe+YjcowhwpRfmjrlMxWYqM8YYhIo0SKeKsa8Ddhs
fvHurV51BqJo/thVzYFusTU5c+HXjzef7l8/7x4WE3IPGkYSjp2TXeQOh3Bw2ZlEYqdskFoqI7wi
7zQ0oU1JxY1aTzSEi1t+xOpiC9dU56gYp5g28tj1qTOCGRD4TxpUikFlRt8NqqslFNW2cS40a/k3
7tfwY8RIsRkjhSDJr8daC+FcBpmMODAY8CDZgneaXWcRzRyTQ0SEi5EL8C1nsAvwdsWB3jQ+ut5M
H/1fr/1T//CyexiOQy5R4GVBlYVPTUqTjWM4lQr2UBLac2lUtKTdVbVcb0FM63NuJsi4r/3myxQr
M1qOuSxMnIiMwhb8eo4w3IYZ2dEMelmkJOgJ2MTZahUVZj11Di72mynH9/r4PBvjyuWY46PSCJzY
y0rNAGhXcFQp70JijBlLuF4ixszXqQnYNqS/5bdHU3HsH60PM+h1UOYWHB4sYeeWKOznRDQew3PA
nvn8bv0Ns/dXlDd6cuAiInfyaVzIz8Pn3fPL0wyPefyATpMIdjjOWEPJKiKcgEBtl4W3OCM7WUX/
gwNDarJrrvsG1/3KUP44vPR3Y+862UP5gkd2zUdobEF0wP4ocJzgPFGQxAQ7VFiMnghGmHjHzssD
JacqKca7FY+9tQ0eV+Zzs+D0UPBfyv1Bno1YXi4ZB8oU0b8tNmLFzmPMHXYpWNGZZq3fv0hyIudM
Heqi5B/O3XraA17cLjq4Hl++PA39EZORGywnKmiqMSKYdOhoBF3FHbb5h1BGeNKQUoJTc7aLq1q5
Im1LGkbrVi5T5AubhpZaSbRpSq2kJuAYK4mjkiz2mIFFI4NDiyaDhwCCLFyEJnKBNXPSkhHKrkWe
0GRZJLWAiN3lXQMi1oIdYxnoAs9RIWRXvJ8Ibr7hgSvqQ8iX6lN8xRmkWLhbsbHha4NM3Am5sAfu
huffXr49Ps/Kh2Gr7EvLSanf506BBIfzEDCJzEkEdqSxHRFKJZkE88pe1jBRXnU4IfjAqb6J1YNX
NReqxdqyHLNohtA/vrzimR+zorZERl1IIRMPjl60DE0G1vksdJcM/EJwOiTX71M+NaPgzEzq/RM1
j41KADGwZeA37jYFSe/pe1UAjjFguf/1CPxNCtYFj+Evi9OpKQ6dlVhPm6iW9h3F+ZqeU/hPy+cq
7ofWGdxyvnKS7r893Xx/2GDg2+4B0safGMeL6MQI+JpYIQdGR2djGRXALdwyMRv97jJ9oufUOd3f
vqrZEi1ezYpXnBH/qX8Y7sffuAyytapY7UknUGLgCGLJjkaDHbF3PTgkQrvoWLLvsZ3nJJwbZD8+
sWDStpjsD8H0p+Hrt9+HeT2HKEE7yVLmFh30iCWbPKErYhExQboASsGKtkG9XG9BzG2DmH7ZB326
RN5LFh1CfloWAw7O1CO6sTfWRoVznwK9oOmqRdpda+MPUx3lzeZpGB5+BhV8HHMnmLoWpQdC5aCx
1UBIjcPJLOmskDhVAiRclNTIvCgWWC9XUzOsPTLJCGuUvRVBVjTgmILCqZViVIJaM+od4siB+wPW
NDhohoPcDTLqIHHSlPNvSqAzMDXT7auKTLY+VkqYvuEPH5CO8ViV1oNysPZQyvDVCGjrjnAHyo/H
Mk0XTKeIKBNgGF6Srz0PpTx/4qqitmHoKtH3i31aBQIZmfR2wkhpILBLk6L7ysPMM/iCwkqVM2bN
z+3SExFBpVWDLLtdjc/L04RcjQUtxajY/63gznoLUjl1EWdIcoqdAhRkGHMyJ8KMi+qNXZHPjsmd
ble03zZyaeq2n2CZ7v/82l/LY1QVI1PwCaUFazk7LLzBUTMO8TZJBGY4d4GEVJ+q+SL123vVePvt
NAfhj/7pWAUEihujG5wRnZXqGA494BHj5xHergnYKUaCMx8WDRWzReqXr2dAWLUdljr1911pA83w
24/OEr8eA4/lz3FkFfw8yXWCIWwF0aZzzFM4zgxsQRDU0l4Udjy84YTa2d+ds6DtugwXLt6q1Yzs
F8yFS1VUJP5R7CAQgJoijjj2gYDZg9AViFRIIg/GJGX5G9X/L6eS4OVWTem6S9nqfhXlRd/2bngp
bc7Pm/K5R298DComo0CmE7DYCOJEGIVj1ktTm0oKPDkXLsvgI15cPLzm9DdfPVax1MqH694uwY+Q
i5f7KQULSlOQUkwVLIkucdMJYsDoRggkB8IVDrxyxiutFTNvwS5MC9eUrRsH8aJZDXS8eS34ZWWe
DxhQxcsZ/1YQvRMCGSiE8LY4Cd4DfQo+tmFMJhCW7I3yjmn9UzMc97dr2vvGlu7vWir2YIYWHLYH
3OHYBFlsffwTlVWilGbiuqjR3dTwsR1mO0O2hvsoUjD+4ozA4m1vzy04PFnztzUN/rbLdI17fh5e
yiDjmR8jxkYBMWJjlDnwRnRKAYNg3GChJ5g5SjML5m+UKl6WMV+96UTec/Xcgq91GkffYksgf2Oe
2XVyn3C68T8Kh6O1QcfisEgTT0QSEPYGZyKCxjbJmC46AVxGK3K+KPx+eEObs8Pdq5r0TYMfvsRM
/censP8cU7EX/jaJUbAwVZczVpiD1Q7+NJwkmyPPXHlBLhvcdFy9Tfnxfk17w7nQt4otakN2D9sp
Yi+0RmO+BJ2cs4yp2CkREVVdgWJQWDgTHA5U1jmLs3Awx2VrotYoonDRLKOUP23mmKzKlC2vzL7q
IqXoE3xWiaD2HodgMKwF5h57tyN4Pxdt+fk7TsimTROQFQlubQuzxCv/2D98fgKHa55cZ9Eozx1+
V6xM8B4ObABDhoYcCSiDZMRFJVyHtU+o3v3dmmq7rlfSG7oMnnwanhCgAYGG5qPtDgwQHYOJHEfM
4gxrF+E08ogztQOcTO8MOKAXYRv/f2/Hsty2DbzrK3DpTDxTagiQAEHP5MCnR7FkxbGctL1oJJK2
1UiUR6SapF/fXZCi+ZTTtBMebArkYndB7OK1jy6agT3f7osNtmL60GUrFu1gWehwFW1VVO/SGrBI
0gfzSFei0yAmKIYPEvq4GwL8BDAwmNK0dSt49VTGmw77TnnTJrlRjwTEMe3xD3vcFmdHRdurGxzO
mG1bLvrKY/Idw7Go5uIADUMaxwA9juWxHz5GKp41Ce4GI4PCh/akbXbc5pt8f4yeOrnlcNZeut8U
NygHHJQiBrXA/HU4KDPNcUOOsWsprFFhneN8nxwMo20IRPu1Jos9vlNWYrS/ya2vzA0KPtQyJAww
qTGMTFJF3KW4WoOZRQgKKYBZky6C//9E7Hbg+Pi2cW5cOAd3eOqkc7lODuvksM+Qs8oAyDUtE42S
1faZIQP4Ng4XWgCjGVo0hCw4vxF8qrSf0NPTJrlWj1gkHbfJIvjLMd3kWRH65T4t7MmbcV+ky5nN
tJCpYP0OhtZhUpMeLEwt5ls6Z6/HfcGazwR9wcctDsw+DqqVwFbFFKgi6ggVabpIqmYGvtC5xilG
UhcmheY2fS3wQoO6Uqce70+qVq+xSUqP+5Bk+lrwgpT9+s/oJT+WUAYDPuc+l7ql0dBFu2hY0NsU
iDJN33LCQIBeb2UUrNcyamKKetBTq5bZfrdPvUbkbaHrVhV720Z9wHB7xoTx0bChWVzMag4LPklh
eYSByIZS3LdqbhJmWT2EycrE03vapEmWLPafk3Tz98teIsWlsmW70hPoJKkjZR6s8G3MyGkKrlvU
hhbyW3sO/dU1KepGk8DCKkXgU2FIrq2y9MURiqvVo9qGsSX1A1PHbRjs6gItZgPMl+BJh1LuC89v
ZWzu1tgiyO4jaN0aTb8+R+NSY8FcY/WY7JK04eDr2wL6DcwfAx8zQWHwLZf7thaACMIgq1Pqnnev
7NQ+5KzReq3FTV9PXFXN2wkiZqFAhr6NW9kCk455eEoi0OfH0FClU5BGj5utva3hQGGIrqdFDZoM
npxO5sowDxYSZfg9y0bBUCYYXLeVKZiNWeBAO1iatD0L3VcdEBCQoVeCNai6h1biLaM8Kbqh9LCw
si7fwixzU8txqKxsPM8M8TAUWomWCXc9dFwPDIdTmONKxlr7grVamuh77OuhkHXciiJvHyefDvCz
N9YJDSW6eQBJNm5Wu0aIeTlCzYf1DLNMAcPF952fNxAN+nPW3mmxI3rYkZXV0hSUxergbB8TIKDj
1hnCVAOGiVALdQHTbk/HICOmo5meY7ku5k9gP8uts4fQJqPdiPFQuO5EYX46pp836WNJK2rZInit
8lj2rZBJ7mm6jl46wnVBBB1D42hKRg1uGO73WXE2kQxs1zRfajDTk0vExpjSD1Fzf7g86SlsB2Vx
2MpD16QMvdgMzCBhGJoDg4jmGjbMoTxpwHD7MxIWFM9Go+BruUM228ebh5Oxyd1xtwO8l8C1t9pu
M7JbxQlZfyP7/AnE6fmwx4gtsAzPV4fHREWryJ9gSVg+uFStla+yz0tYpS2fN/EloUWZsolZRvA3
Ty6JXi/MknyZ5VV5E/Fr1ev/rXr4UeMKWkDhQ1tD6Nd9+AyMuP/vcI4+zgjao9XbF88T5+n2G8Hl
Bz7ZP5DKau+SLPb5avsWVhNjY0YOSbaJYTB7q1+/0X+5INkX1Cfxcn/Ml0DWMVUx7wFZXEJgzoJf
LkafDpt8td4mUAEir6qlY3ZFvsBDGKZOdZ7BcSqq48EqSixE8X3++jj5sLh3pnD3IbiazG/IqPy/
+P19MAx2N/lDPfXm9zcL8ibdp1q0X22TLEriCzJ6+3INVFA9Pd2MnCjf/IVRjxaHVYTdt+diuimv
qx9k5F0RjGGHb2c5BjbugaHSEi2YjVICZ64emExlSylAs36gGgwHGDQTTuF91YkGMb3AmAXM/aSk
D8//+0H0CsYgI7/0NgAth+bAR4WvRaEJmm5W46fmunjmYnq9Dd7dkXeTBXksEmBCU0QwgLYoY3U8
5hDMmyICNfYUQqQtGrSdrtM7BER0FcfwMyPAKG7d1rr7xehapc0mDpaQeRoNfFdZb7KZM53OvbNy
QdHk8EQWMyuYx+PqEJPnof5jsAqPRUbvC/VF4LM+ZwmZpA/7V7v03e10kycFhgg38HupY02YheNd
k6t754M/yBAXY3rixwDa7nIQnFeUA+Oo5EoYSUBbLlUrOIszqoGYel0MPiVrnCbP1CcbFLcxq9O2
XPrOwnmFNqPihzGJMJOZcxWcB+LNdlsup5Ob68CHLjrYD5g9FifaqI4wi+C3xfm+I+XYOtFmKJj7
m4k3989Sxzmr07ZTWn5QCRR9VLx8HwptXeqoXbLDUNlDCqcGw35MVS/mCzVknG+FsXVV3AkuSphf
yQ40VNYQ7kKolYwKu5I5BTP6B1BLAwQUAAIACAAUiy5K/FivJus/AAC1DQEAMAAcAGh0dHAvdGVz
dHMvYXBwY2FjaGUvZW1wdHktbWFuaWZlc3QtY3Jhc2gtbG9nLnR4dFVUCQADWM96WCnMelh1eAsA
AQT1AQAABBQAAADsXVtzm0iUfl79Ch62puQkyN003U1T2VRxTbLjOK5IyczW1JQKQctmIwkNoCR+
2d++p0GSASHHnuQlZfnBVmg45zuX/s5pIK2rPItlUdha+8ffLNcf5CqR+SSXUvvLFAKxvwdXUXnT
PRV+zj9li81SFuef3l98fBecPztvXz94m8hVmc5TmdvHtQw+ybxIs1VXARp4WSK1ye1atof+tJjO
TG14GZXpF3kG6HJQo111TLq6LW+yFdhgmYz/Pfggi3W2KtLZoiXuiMUfC5lrb/0uJorwYOBHpTyf
pMsOLANhriOsY1PD3MbIxnxEhNB0ZCE0eD/W+ux8F8UaDP2pYTTCeMS0IaavsYGNMwC8zvLy4CqM
B84qW90us02hffzYwOj6DvZc5OiIE6SbBOCEVoB0P2BO6CGTOtQZDAYKueZ8jT5LbZyuYqm5WVba
GuUIIa2QcbZKisFgfFuUcqm9XZXyOk/LW+XeUsZlBUWuInBjMhh4eVTcyESb3OQySvZIEPg1LdZR
Gd9o/2zkBjwVZ8tRtF4v5GgZpSu9rC4YDIJvsVwroe04B396U9fxp47nBeOxNhy/fT0OXn86a5yv
kmMf7N+DD5fTt5efnIu3cJHvf1BXRaWGvqHWD0ENCZdgUEuj9/7D1TiYXr6fvA3/ZzD49E77IK/h
zEK7lFEOwgiyB7r+ShuoK6bTSfDn5GBSbDVhZGJK4YPeOBCpA9pfmkYM9PvfWq5/O8+/ftPG7/7L
e/9Hz3waDBxwWRpHFd7xWsYwmWIIyjzLl9VBe+B9cMZv3l6+1ibBeGJrN2W5Pi9lURbn4O44im/k
uVyuy1t9Ga3SOQyMbsrlYjB4vchm0UKb5JFKgc18Dgk/zOUXSDepxTd5tsoW2TXoXuyS4sweYMuE
yWSakGEjA9zJqeaFl7L8muWfDzzxH7X3+Xw+F4xHs2RGtIl3BZFbrcCZcFzEZAaO4Ugbjy+0NxEo
uVF56b+/DNq6CLEIf7iuiFHRpwsxE6lUhDws5UibQ8pi84UmcyAo1NUo6IOts4g1J+SoRvAqEBQe
9SsyqWE9wo2xNT/qxqKM8jJdXVf+XMnrrEyrNOlqZAT/uDMrjR1nWkecaXJKftyZlcZ7nWkaxBAP
N00IY3a/M4HlugoI+3EFVVr0KSDIwqb5o8FJEJpbB8FBvcEBjYZh/mhwthrvCw5Bgpj4R323VdTn
O4axBXF7qAKWUCY1DwpRNWUSOY82ixKcln1OJSjI8uhaal/T8kZb173F+WyzShZSS/d9zQ/qR0wL
lVKlP4WaFr6ZTK68CsB4q7+AMYhhZw4/WhWwWUvV5fg+VYO6oEMh31Z4235gRYfS3xj5Q868LJd9
yKqSyHAiInDC9jzbbtQ7T9WuN1lR2nYhy+7A8I9JaNsf5PyqzF8evfzVb7+dac81aKv6BI/i9dom
Fjsb4MeihmaPHEf9Os82a9tO0iIqiiwGDpZ+FkNpX5UXWQS95nB/aft4hdaAqjrclOkC2i6bM3o2
MB4LjydEfs+p/9d3eKgAmKyjnzxOv8mZQIl2xEbQ3HFGpRNouz9INzYFCGYXwu9peSGvo/i2D4Il
OYqIqSC0dUG/Dfr7DlcoMLRnw/YQ6LegG6eP1M9iS/X+fylVURmNs00OfVYio8Uii/8GVRbY2xoc
LZe2SSAZ2SNViWhOWa3qzeTdxadUfr3K0y+QdFq8gMZVacMUVep2JyhlGAkwjD9SW4QodGItbU2z
OD7QY1gWPhtYIGmRzrLZ/8YjZ5Tcwud7KIvLiEcxLPKi/VpnFUFrvIZu9QwyegOUJcG4Ql5l2eIK
2Mu219l6+CVLk2dVPnE2EC3TVC6GGRB43U13VVrxDBszbmhTL+yKz9YgkUI1Q02BXWFdgVJiE0ID
vrocdyRq289VaEw2wPhgJdrvnO1CAhgdAppvVhNo6IdFCfw8nWLbnkVFGk+LMgcmfxnfRPkL7W5Q
/Xta5lFaFtXYq+ZgFcAIQNZD2iswdFWUNSFZ0C4O2/iqwGIsgDuNR2JnAgstaV0xTFflC01prtU+
q2JoCGL06cWwfAK95JF6LRTjzhXvoHL168asooJD3SaxQLdZJTNkcdKbyu1EmAlmUKimVc+iZO/r
K7arggkCimq9Pf0s85VctGU2RVkowVRCkk5V1f+nOj+X5SZfVexVFbI7aeu6KLfENWcZmXFBuaXt
Tpx+/af+oIRB1KvC8yhxXHV4lZ0tWWRvsXFvJ6F8uh1U61WY1vm/cBA0ctrnqhOd/pMVLcfspPdE
rWUJJhQzqk1350+X1/k0XX3JYHUKiYnZzjUPF2gmcdIRuHcQNfYOIk8uJcwnZzH9NxZjFIHFhVx+
BQafFun1Klr02Rvfn4oWw4IlaA71dJUVCylVbcNC7MyMnz8f4X5Sa0qhFiLIQI0KUt6kxTajoWNX
gqfzLB8264+6qQRt8SavqubLRQZrEfWrWYiqsZd48UI1Y9ufRbsecdrpSP87+hKN4zxdl3eNaYv8
5zNDypk2W1ZlzrbfyAj68yKOgCSuZQPjZpUCKU3hpM8v92ePS8AUv9uU8tur39oV9fEWKVuqAkOh
y59Ol0rqFOq2tLHg3T73IYYlsHjvGAauije5uis+3plYLYOsrkaCu53tAzSaFOE7jU5xu4onUdHw
lwLxQlOtmDbsIHt2Njx7pXJFpcmHzeoig6ZNYRMc2v+dKOi5sUG7nfBDoJmw7vgZ0IJVmd9eZdAa
DH9E3LaN6TTZDzGEzZJK7rNGIk2302u6zrNvty8bU28DYl/WMEDvjyF+8UMOfAbpfdeFC6INl3KZ
5be2wSjfrwIeQc1CJHfUPMuS24pKcdXcP1ISju4k7XsxZlVt/SMJnmKtK+iO3pnd7Gkuxx8/XKhb
WPXTk3pV+Wj+j6M5rE2WkeocimvVxq/7yP8hgsiM7AWp3oN27i98f6FETQykM4WV0nYKj2X+JY2h
nY5vrrLKHQY2OiT9ALGEyrgpFv5UnqWsw4sPkGVIou6q30naPz5RM5J1aK/vRlr7FhpHEYMy/lcn
nMM6nmfaNJdFtY5XB5RKWy3uwFEdFvv+qtGgkinvXo7rfJrWOTad1r7AFZv8nElk/bxJJLSfO4n4
k+sKrSdnsXhyFmP09Ex+ejc5sPH0TH569y3w07txgenTM5k9PZOfXu+Fn17zhZ9e92U8ve7LeIKP
mJ5e92U8ve7LeHrdlwHd1/6zuslYvQOlXi1QLwPHk7s3sB7lFJTMGDhlrW723kzjL+r50r/0SMSN
hkfUW8PTrTTOeOc24/fvgkdmZPDayNo2DwSm1WvPdpkuZfIHyK5fBKsezvz2QkuyzWwhq+crWGjD
+rJ0dX1VQyruXvl67BMkKyHIqMFcRflnkHmRlba9hs97WNFicft2uV5UN8C3bxO8qK8Zx9laJhfR
cpZEL2fqFZDh2e6ZVt8p9R327inq3f0/0vLGv11FyzT21HMq9eJ882UNhpE2vINYWcyQ+ehHSyKZ
J5xpFdZK+d5MVz07slVgP67KdPGyGr0AKK+G+4+PQFy9m9QAfGNb/+KxFJMSJ62HJfPNqv7/CtvP
L/umi21XM+4OuMzv7FGG7h882vZ/TlH/KzM/QfCr3UMV9QwK8iBXgodn9Vtp6l2xjvgqrAYij39I
FhFrl8gHz7r2D24wMNtw58BoYWNuHrwr9hBVs3heq/pazifHtdGn+JjI4CcKP1H4icJPFH6i8F+V
wq0ThZ8o/EThJwo/UfivSuHiROEnCj9R+InCTxT+i1I4QScKP1H4icJPFH6i8F+VwvGJwk8UfqLw
E4WfKPxXpXDjROEnCj9R+InCTxT+q1I4OVH4icJPFH6i8BOF/6oUbrY2n/DCscqScrSudwT8F6/M
I17vO7SQcYPBH7MXg8Amjap9HWow7+qdvSoCNx7/nvzRsJCfFxbzJ+9mgLR4u1V6tZ/snxbb7pmu
qc2FpDZkpj5LyzN7oGl59M0+2LkcQeDy2bGB+NhA0hzAGCVzI0ZIKUnSI5cU+wFlG51FkTBr7euD
AZJUV/QMxEqJlls9StSEz0UTF5JsphgEjmPUB1gN4KYokydSzgyhLMHGEUswaSvhFuG8GjCPKaEH
V7B55a503RrZbVyr5fNFRztGBlAhxLsHFlGyBhfbfdW9q4/1/vPYGgR5nuXVpvbbLen3l5qDidrs
5XKznO2+RwGbg8HATVdRfqu9XcJcKuzBbvv5b/ud5zVdax2MTIiO9ryzZ+IQnWkvKXM9zhxLpx4P
dUJcQ7cci+iO6XgcYx44yH/1/e97aKozCDvEAAfnc649h2m03R1WbWA5vkmX27lVoUEkpKHFPd2i
gaUTJzR1N4RPVAROiH3fNWjYh+aY1A6upAfXzOjDtVmrr2BoQjNZEAaEmLqPAlMnJme6Y/mOHlDf
9yxKDY7cB0BrCm6hI6Z1gI5C2zSfk3uq5BBasedwEfwZ4ZH5HIB6CFlIcKobFiE6CXxTdwyEdNMz
UUCdMDCQ1we0LXk0z6OlVP9d6nz7PRTFudM5p4mfMpguB/jFHHXw19vM9uE2aehbvhvopqtiTwym
C4Nw3Tcti3NMmeOgPty1xH689VgTJ1O7Z3dxcobJIc5jDnYDEfIwcHUPpptOPJPprucbOg2CwAF/
BwE1jgA97tntYBOqlcTxAVRrPsPz+ezozr09eLlLOQV/6oZjIp0IAZnrMKEHwH8GpU7gh+S4Y2u5
97m3PmNQI1R1gEVGZNwh3x8E4jShBKi9U7UhkMTIMACeZcFcIqGnex4CBsKepzueZ+qcOhaiXmAi
rBhoU+RqLp2rqxu6LIMI0tWlDlJFeZ1mxd/I0pezDawLrq/VduhDPFJXYuUlTxADMwTKhQcwONEF
AkDCwsQKLEN4rvJS/e0o5xfpLAcOPt9utxzuvFOc9+np917fmS3LKIsPLWNUKsJSPUoKHf+XkbFj
KdMEM0JEHeRQB+aOI3TCmKVboYH00OCe6zsGg+xteLMrpaWfMdSjn4u5rPWrLxnIZaHs2WEwLIXB
IqFpYF/HmPpAlZTrjnAcHbuBSxFHDqmosoHhQFIbB496cFik8kMzwstltoKFzQ34ooqrMaqY27UY
JwEGbwiuEyBA3fKJCjR3POqboeWGD4vsTv6xeO7G2+jnsx7082QXxd3mndlqnl5vt5PcuROWViMT
jTABM4gfuNwPhc4sBAWIg0GuB5UaYQiyZYQhCsOGV2ux5/cqaOHkCB/itOKo4+Wq63j7/s4FMJVH
pJ5GJlP+dkzCfArwmBlAASIO1qGPJLrvMRJwqE2GRQ/93XD0gYqml7eDLejAK4fQI9PqUIC7gNmW
ZXV+mCMGF1R/52r+m4gbir5hpviQtIYHqF0sdEGI8DiCqkHx/ajf7+UfQX53Qgt91OzZ7g4mFXqI
0rtql2G8n2JcJYPjITd0LZ0HwORElU0HQ83nIREmCz2TUrM9xVpS2vo569Efd72ntuiXn5zwLu50
hEbEgAvrD6o0YqjUhAa6h5kDToRSI4QndM93UGAFhgON0kOm2lZXvx+3g20bYnFow4zwTvI2vmZg
u3FhMXImY0hhzuFi8N1IkajgXAQCMx1xC1oRz/F0FweeHjLL9VxsOIbL7s2FPj29tjSvmYyP2DsZ
t2ydmT0FL0mSTgdTyHhTfX/XkFezk3JC+EhVXbAwMAJKYTZCkwiltgqUS1z45WIX7OXgCXKvheOt
9H7Iu9EmboLiw1lKCI12eb6UcQR6dnnOBBtRBTVkkOvQxVK1EiBm6MIKxQ91JhxKvMAT3OlUtJag
QVvbrAdCPD/iuvndzY0hq51IscEAlO84Zuj7CCacBf5DUN3cgEG3wFxXwAoGh4g/yH9390/u9+Td
eW2DEtRjUBJ38v79Wq78NJdxmcHCcVh95ZwibKGynWCHccensAT0DJ1QBM0D87luQQkPTRe6XHF/
trek95vROqVjQdJjAfxuWzC+ifKqYzNNA+phTd7bjyoevm9YGHs6CzwX8jmEGh+oEiTcUDDKXdOx
HkI8WzVHYlEPtuCbqCcAJjJ3SV19D9supbnKZ0FNy3ECAe24C+0INaguAg/423A4rCWgHTZ5bx1v
iOpAoH0Q+A6C9/pPdYt8/90bQwEkoIpISA3PFRB4F/pEWG0LomiO6RZ2qUUYp1D/7g286mBf59H6
Jo2P8NuH7daoxfkhkLYRuMcISpJOEdru1Rp8K+WqqOblXQfvhb6wLAbT0QebiMCB7qIAyhB0R8J0
OPXI/RW8K7zfpO5ZLTNo1EMwkRSdbH4nkzSaZNliln3bm8AJHmE6MpCKDSOOT0JIEBf+AsHAys1y
hNAtIH9CQsP0wvsnZVNFvyHNM1pGzPDhuoOoZecuoSDsn955i1Su9rdIMBYVW1OGfI6AozkSsJpD
0GcLBh0AIBahBw2sw/zvksnri37E9enpNpsOULSNMFiPEWY3ErvNfxt5FBJP3fqCGSFUb4WBRizH
CnTk+aaDw0B9IeFDuGQr+t4sakGOI3kIOU74bqXwbR3vmeT/ebuW7biR5LrXV3g5G3Dy/VjmU5aP
2i23ptvezakHSs3TFKlDUj1uf71vAFVFJIAiOTM8sxHJApQZgYyMuDciEmX0lWZXxLa0ylwKkk+r
AttHKHIeHEdabYWoPnO3zgvOwzVC7JldCrGX7CzEw83jExjlI2CyImWegup4jQDPxoouZPJpzsPJ
0Tew+NDG6Okw7fxyBSXszZzOv6cvB52yvKg8NobEdo8A8RKoACIAEZNDNcUHzxV71vAw4vpS4UIj
YT/N1J0+PHgxs6wd7PP7NfD6FYVaeNgrMi7KJhgJpACWbinbgTiLDQJwo62yNfAowmvTDD9/uJxY
+PnDu1Y8uSbzdiVJcgas9XOhb1J5wCoLIa8INNAOOf1Oy151tEEgbCSwfVmDB9EHKckaMA37xlsf
XgwgrwbIJ3ku3Hi8OlN7t6b24WTMQwXrc5rG6JMjE9L5DHfVRVfgyEpUXQihdjWWXBhPuaTwdo6s
EWKqgmJimfxQbOHHztOMPM0xAYQHZUavxgW/kmpA/p4pCztDbES0wj6R8G7kr2uulYkIzOfzqyna
MM0zLG243qqjVtThypxWpN7dPn7a3D/09+cF0W6AeAIg1YeiOoUthJ3DKY1jYXu55gSMZ1yt/zpS
1gCbudDvWuXsisbanRHi12+/njkPObKgYhXJgFqQP5fYTz4DjhsOJl2waiXVWfbsPEI7sVl51Eof
Znv+3z+cgQhc1bDHHbODrUiDZ50UzMTA8qXCRvCJla5yFyXPvGjzfCYnbe63l3DU5LazCOt3ni83
6qmV7CR9OHdpgwhkRop2giZw5aop2TDRadBc7G0Bv2UJ/SaJcC8SdzL/w3qN1xpRjVxZCbCSlexE
/8unaYqFVkQMMY4PK2KjMABRkLdESA4n1IHaZPzjY2I1c+bE6xMsn57NsHwKrRLarSlx9qWUw72+
6e//+lQ3MyRy4GSxQFJVEyJ0cD3OMN/ZCMCrNHxPyut8Zz5gK85mTZxNP1v+Dz+G3a6/GRtg8DyZ
Hqnv+AuxBs1jtULRN6bDrYC9wx8aQBfGktFMG2yZ1zzRZqJLCcDJLY0ybiUFhw/7Jfupn0+pCDXA
HqdEQLQ1HRgBDKIKQWyydkU7EzjoD6/iJdJTP1/EqLWBPspvlwhV+R0/+bJjqvlhc7un3XwqTIBv
HvNOIhi4Dg+rtY4oJ9OdA4LotCkDUPM1uueS2M3IU9E0OywJpOacD6kd3Exf0nHz+5U/2+aQqsYK
R51cx71m5OXAskzmHYsCpi3h5uoMt7bDNBKAri4l0P28TPHT5m8JD/t+c3X8TmGsJ/fkdccCDlfe
C6BoxGHYoynYLkHzzgNCC8EKx1NaLugUSP15PgOu3j4SNvrzD5vdj5+frjfi2+0yEaMdPwP/6deD
ARGOCNDVJEE/wEuZRphQHsEqJKBuZSzYXgU3meWhJ8O8a2fiK9OLs2ltH75esdP0ciAdhdyHSmAZ
EYsH/NxFU2Kns64hJiu8MO3ckzHauYVdmVtuVtDxpIbwxBiLVgnYBKRHI25LhgfgM3yIU1bkGLy0
vLyIg1+oHjS3tNLL7Yr0bp46STd33/f5bvdwkhw8dqws6Zo9MFXumEdkgQu0XYwIKtp4UcDdbJXs
VZzkNMMFDU6XG+nBm5bSb+U5K1zvHm7+uh/bPc/WZ66EGgT3OTqRAV5VBJbVgITYtV0qTLDqqfdh
lhpejtYIs1PLMoLeaXFyIkcvdHv3eH344wmgsqFIR2lI5WIuUnWsWmA3WAXiSK1d0tYV6b2zKT3n
3qYDt4JtVnbHbmNOgn2//dv17f68PfQVrStQTlSu6A67kBK7HtJErboEg6wxFlABuSrNdLRGjD1b
xim9N2pmaqOlpGnBkYyODwgMP4aqvzMF82PLGur0UR7oK2hEYYQAVhJ2cno+gb6c40LWdnljq5NZ
Bg7D+nlDyC/X+/7u+ZRdskkYjtWORlPzEpy2KLbjJqSQyQdU9axK0ynWdZneMVXC8JWsjeHczFpF
Pm5uv4Tbzc0fD9eDGxgrQ8NPKMBdBl0DnQ9UGZKOoo5VoWOwoaw0uJvVb86wpiJdIMuTO1ql+ZrS
G3XoD2tfi/knAscERGinCmelzEBLVAbrZIoJbFKkruSETWOKAuN5tpq+3B1G8CU6MrLfzSzpv75v
7h//b+wu4iMaVZRQGWoxqQRruOmMpPaNCNgcqTtPWROrybJqF59dgqfB1x/m0/VGdHmQK6If5gA0
USvrTz21sPX3x162p3KS5ZSPZNoBv2jbgcRmPFmHsOzxD1PcVhOl4Tm+KpqszHUhsKzcOdNuGWOM
85vZ7njf353M9rzDueZXyo8mk52zmiM4WgnFyK97ngE/qgkIoNWb6F+j2GSaCwnHpxumali/XXoq
+vCE0L7fnk1d+KEoFnnxynbJWj1mEmDaHLZVdIFpucrKBf+/Yt52u4KS7F6eS13Xu++U83yqM2k8
O3p8ZNfO+8hBU6SjHrQMr+IS/qmIijzrLHSy87akZrRGkr32K5Ls1MWcGNn7f38M/znJiDEQanJ6
MkqdNAKRrYnSLZL4X+KdkqIGxXNO+WXsRmNfhm10tZV/p9fk16cnSanDsc3y+vbLz4/XN0/AZzTF
kFkOyQWwAgROyaztvAdz9aEkuEXQhzDrsLow5FQsx7bLNIVjezfrVGqODvxJCuUGp8qPKQqeknS1
xq5EC1CmWO5Cou5Dqx0LXIfEwnOedTp8K97er4nnT+L91v/x9ct904nmEHUT0HkHiEu+qMCdygx2
7F2Cm42mFrYqy3SsRgjulz7e8Z04CfEfn8r7p+LIQDKdCNVSQT3KQkWlgGVTgIdJqiAcJW1S/cf7
oZpE5NPsrdA7uSb09mRv7+v/UG273z/Ru8HMsIoyAtB2jPKuYFgMrryqjsfEvKzOWvtGOfCZBI30
fqUNkj58pnbxb3+ywoHcUFAafiGShoUv1KdbEhWFhRJAN+AOXkcPuoqIFd0/WayY3tGqsGMrKlBZ
eDsswE8fPi3L8yb5YhIwiRGVOtJgPKHAh2ujgtScRW7DW5bnJ0K0wvebNeH3M2/7a3/zjcKmvKLH
riiVLXUOCpyoY3HoLAmcUvapU8wznXJV1ag3yR9j6gupY1xplNmsZOPx4VyZh299v/v16r7f3X25
vW7JBTW+jXny4SfVVIoOHs6tq4qyIIJaKmJBNInZMO5SUrq8hZ6fB6l+WhOqYTzz22ZPYMWDbair
uEGpn+7vHu92dzfx++HQ32NhKWmq5FCgAHzQyXc5a8KoVKCwinel1KSLZEDP5TU4qJ1hXZX2nlYP
fVjRw2yWbYufx6ThuV5sOPF1ilVaWAPYzsbEkQSwA0PmsVOisOBDFqW4V6bTj5NcTKgfr7cqOL6i
gp9nbt73t/1IXDc3nx/v7hENqDIw6CJHQOCSE1xhpynhqTlYms6nUjtKw4HtO51ei00XU13CqIsb
G9W2K+l5tzP8FCd//+H64YxWtZFDzRUUh4tqc1eDxHJUysVHUFGXEXGi4CWlFwjoKb/ev7iXfu93
GGD9tla+Rq/9SrMuPjxX8x6+Xd/uv3/9do6k3g4LxDwwuHW1YxVeUFYFVsQNXITNFbxTi5Rci9ja
kaZCeL1dPlxvzRz/bn6fNjCOBsOxPa9gM2T9isecGQCv1lTjG0ofVGm0nBnlNPb5C2Qz/PJS++L0
jkYFkLKlCm7TL3r67/uhT+nDj4jpbOwzV9bTI9U2e5Fq6YrllK7AbwH7FWBFZTwNb6yvL8bH4+CX
4/nxhkb4zX7pQj0dJGv37eb7/vpuUCHQb+R/jgrQT4IkwWZVYerMiEhUmXeII6lLYNBGZcYQO1/U
YBj7svzD5Ub6rVyTXs0d5yKKjBkLcSWu7FCRFCNKiQHSe9aB00nEeJ46ZyulLXjBdq6Vva7le3W6
V8a3eTrDb+2KigdthsxQa13h5wSlOELD6FDH34ZTLKCBPoXOpAzKyjTwYhKiY8K5ILRN4459VacO
JnlmhX5OjfBDsmIh/GHeAZWvH34L99vrx/vzBh/XZWztBEUWYBpaUiObACwJlvGu5pJ11FqyFyr3
s9HXpZ/dNNViA8a/0GJz2IplzXs8D3jlhxMkTF2pQQGpOK9wkDk7bG5shs4l47pkfBSC6aJ4fikX
eeFYYDpea8Q97OWKuPuV/tPxgNFYgzWDpWTjRYS1d9T2BEfkqflY1E7EGCxYes1WvbJh8PLpouPF
mdBLM9+yY+dvC+X63WO/HyowZwQxOfumpIkiSvBSaqBDhOsio2ZTVrmkfjrGxGsR3WKiy8BucetU
ua1mYqkcPpzju6eQP4Z0Oo/E6f8d/6S/hkK540JnALzKicsKAz+FsFdryhEzpWzNvwJbjNcaTe1K
OKcPVw7gzLLrCCmO4okbckIZERHrx5WghrUKElKz60pIGeAQEd2pt8ner9zY6ONXkPnWG3Fiu3SE
85w+Oh0DrZzJKGrssnSIIy7FznsRusJNzCkyFth6sepptFaIFYCx3TG/AjDy5nEzlLRpRys+1M6C
8EErzzvDqQnYIj47AfjmVCksUb0xqRdDMw38zNlPXG1E3psVi9/v/aHfHjtswEfv//j2eHd+enJo
A6Y9HHViGp6mg9iMDl0G2HeEwPCUsP0gE79wrGA2aivSfsn9tz0/rPS6PpxsZkzk1Oub/uP1A1y7
gEsfyOOA8XkWIVsbO0toGJEJO1J4wM/MghQBm5Snt+sZbWW5fKzj6Z5G/YNbhuLtgc4Wy+PRig+3
j/39YUOynNaE2yvKvisrlVSFd3A1xxxtYMp2GcGLCRWKeeE4wt/jcIYU4Wt6TRcCt/p6s6Lv0DA7
6As4P8LNcz76mPMFbM2xyk55BiBrsY29cFRu5kWaYuglCf8kk2hSVa0cUxV2zC3bWHZse07Qfrr9
MsvPiuC5JYChaNPIkBH4uOIddQgWH3i2Ur9RfvY8eSMyl8sEJz48HwDN15svt3cPj9e7H/qHB3rp
x+zsBRuOOQslo4mqA0+GvWmNNUh0EFwHeH+BOO5n7TDPj9uKuF+GqJ0Qc3gUCrG0oRbIxjqF8sIq
0VVHx+SciV1QmoHfJ+E4CGcN6u02eygX4lVpdBFyTRetZmWOr8MLuc7tYvbU46GtciDGpBO4jlQJ
QCJymL42gksurLHPtrBNx23lWkkt7MT23ID1lw+1zkxXgj96nwO9rgUwH4ykc9Xg+UqrKsJnkky9
kek+zd4KveVrQvNFcn53txk63YY84vDeB3hEZwMCvpCUEdFEfj0MxEtoJ2TSlr9gGxjzUnjFpVbO
3qzI2dt552K/uwanPBeRhocMcB9APrpMtWxZgfGjS6UDQBBR2SSLic/2LE7HbISyK+00O7top2k2
wY+fnytyCJu4iCAg1lFKx+XcDQ1SOekIuwTszebtNtyTLBdOfX5ew4c7r1b8nacNuJ2uxf724WH/
1Eqsqco4tA4x7rz3DuCB+v64SR3Ajwb7crQ3jeUyP7cek3Fbsdb2n9fzvMhfUmpOi+lSogCv8NQa
IOnFO97G0gmRoiucR0Cv13AnDLv+EHGhFXOlSrvzez5zX5uHSYlWnlCi4pWEqh2PlNSoHPYRwBlC
4Nrakr1rDlMvnt151Fak/RK47ja8X0GJwzsOx34wLNUVp5QFUIS+km449ShNqkP7pM2UjzddFEZ2
2uRsCkSOLr9ovh+PU1xG3qc7GiU2KwcGdxt5bkB9/3FWHbUsa9Aq2TEVKBCANbvK4cVMTUJ7p4Xz
b1Qd/bjy0Ddy7aHLcxj7abO/3tzu+lnIqEVzx7Kgl7MMJY8EqT3rUoVziEPtXr5RyGglmAmv14Sf
u+OGV5wz6iPkjAgZoaaBwIPugi+66AP1czlpTAWnz8+/DmU+9EzAFZCw2cyJzw8/pM9D0ZP6afWY
6gdtrLFAMq0rHfFjHEScohuLvNpUETTMazwCjX3h5C6utNLuVnzCQbEVslubdxoMSTcYK4nNM6+U
wPK1JMofiM5JJzqR4U+trggoL5ebX0Lx7T2NDtTDP9dhL8y8SasJUGPd9NhKx6UZzsqMvwwNWxEG
4ocMrqHUNJwdrwq8ODsegsnmhSOhf1cwfJLluXNB81Q1NOxX1HbzHF6qz77DAS7dazp2q0EuqXKW
O5AacM/ikjahFP9CJeEV73CY6lpfcf/spqnWvdwuy/C9PPCZwQ6vxvr8x9ft3Q215A0vm+HDm2aE
DEokLbvoQdWkg66+FNGpBExJR8N0fFXZYTrDhST35I5Wh4NY02Ez82G340nv/vxWgVNUdpoohaRG
CWOY1znZzmjpqZQlACdKAadARNHVZNYco1j2ja/OMZN2eUqgV+Kw4iKGLmPyam6wrzEhhg0jVOCx
A6whFAwqF00uCCPKK62EUf7lvM0w8mXPMFxupFYrtapeKTNr8f12s3k83N2f3yVp1anCL3zwTJfa
GWvhjJOUnSPYaJIMziUVAXyee7LtyK1sK60kvV70xYxVwMdjW/eQtpi0kQ/wnR/f8GVZ8TomrD0w
rfQGHtik1LHA6XUPgckXAMV08AtUeHLHu1bufk2Z+Ztxvt1f307SaFef6O/BGY2dFUPXT3EIfCx1
wHD0pkx6UZlzoUu8agbX5FMOb9EN86mVpa0u4FKr30pRDZTwDDi+Amw9nN89RC61KM99pPeWeXqn
QajUPSvN8NbH5F2Rlc3Ohk3HeNfOs7L3hvOf2/Yk7rT9WAxv1tJsqLFaExVPAGmUoVIJMYz68ErN
NgWZefL5zRvzn6S5dCp3jdz1xusVXTfs9KB/+99J8n/ROxql9zx4AtIVO4DKNVQQV9iyiGeuJL4O
6p5GbYVZOTbTWz3PTmw3u9++f5t2eNGRCHU8GjGcypNMFZ8RZCBeJ60H/TfaA9g5naSOyrFXFYPj
bKbpAx2vvWtFFWvyb04Y/+j3z3007kz0/p+4a2ty28jO7/Mr8pgXKH2/PPbVdq1c0Vqxs28pkAQl
xiOOdi6O7V+/5zRIkA00OdxkSqlyWRQAdZ/TQPe5fydlMOY0S6AQYEoaCaQDXUh3WluSGfFwaMf6
663GqqhYkWUoBS+egLue+/v/whYKT8/9KfUFhPA7sNhH2IGYkqOUAQEOMSFRu3TCw/8SqJ/Bw8Xb
5PV3H34Oh7rgs1W8RMSMjSWyyLBmcwyM9/3Lfv35mpMlZuuUDWD4KYeFAAp5IWB6kBQpC46a8Iaw
FzU9l0pkzp+puF6bxstb28ldsPoTa8tPlZWmFMckkOjSdIHkhF4k0Tm0xanGkrYQPBezqs5qlHp+
2/iE171eBjexSrXf7THZcJGol7H0VROwWgOY2dyD/Wqxdj/ohLhOXgh6a6LeNM3F4Ob0RM1II6MN
Lk45vOPc7/zJS8DUESiFwEcuDNipiooiSwjC7VFQSlQWTEcW4sw3X49WEbJpiLItFXOv4UVDT8MB
G7kjHdqjsBW5AzUj8w4dMlxJp9IrJePXjbzwb20Db6uHpWSAi3P/Wkm4wtjX09NutbsvCIaju03b
Uq+fFPVCdtQqUOgQxcHB0hacJs68tcaz14GxqvGvwGNVz824Wcp0rEeYcbPb/1rJFVLeBCvFXjRr
FTKoFDxrxOrF+pzAdRcknCZginvOzVsoSj/sL4BQwY27mnza4AkjEJVj9ssp1EkwpEtMouUwV5iB
imn2nZOmwDhrDsIx6XTVemko1zBrkxQ+W977h0+7/dNUiDZ5Za1nWWbruxQLWAzPndfWdJF5pbSH
7XabuCnjv7rA51RcyCg9e6Lmc93ic1idVd33q9204AdgFstYyh6+HDAY4IBGTx7WsHfJUBcEF5oF
sii7n8apCOjl0nW07fV8oR/AlH861g+N+lHxPhwKkrhKHiwU2JBcgH5ErUbnUQaCgvZMY46Nf4tP
uSpjugw1OT1Ss6qXCsB2xdatlJCXofqecqDJIaCk5g5sGoz3OcVFh9kMoEmBeuX1P4MOfh0RvKJ6
xZd+6e16q46b0r93H0/gVYqVD8SLwKhhqpMFJyaoCN8/KF4BzkqjEuwCp75RJvWJvruag4X1bAk5
pRq8dx9c+MuCMcEYN9jTAGwihxYCSNIMyiTo544EZjSj/Bsxdk7hXc1Fv2SNEjXbUocak6c/9s+f
h6r6GStMxDs6QiuLMVlb0+gIwfKf5IBdpmDLGyo6abErhqQsq7cvzh4zbT8uKVym404PVUsBKkdj
KdiU2rB++PrHFpT5k9KkC4I4aCJwSneZ46sV8D/vlelEUDJH+PeGswu5TOfDzSgZGpTwCb7ozxO4
CSa1HJKqePIe0+mEQShz+Lw6mwnq/CYREQXRLtTn7J8NcBNLGqYHXlTzqqMD2O/n3b/8qz3gDROC
PhWatE+S+c5qLF4DFQ4sp+A6mhJzkQkVzZv4VI5ww9//cB2O+PtzeEFLS5bYjD+6WU1G/8eviI7W
PKlUlmBSE6y6xYikAf0YLBbRecJlEGBQeR+/0YaeU1mzuFRI4OJm+n6OyES0gXrkDEoIOLQYVrNw
WpIJJfzyxAjNdTRqZozPRqsoGZYlqHBxmAJ//cspQZAa/HqstaA0wxoLmkFTZo4jPCcYrCkQYb2S
Mc/KhU9jnE/NiFlE7i2jetJWfv9yz04NKZgdIbaid1GhCIoZUZZYIiA8Ge2ylCpmMJldyfQ4Rwc9
G6cigC41VNCFLD/6g3+LHz/Mq4ok2I0KbHOYnqB6Cnatp4jVnTJxsKUJ899KZJzIu6sZWB4PjKtN
Iw+kWCVt/BFNgosCdbBsMAkPzCMnGOnAIkogfVhgnNxWD/NKNUxFO1/WsuPFSY5/98M8aSkmzJzC
D1FmtOXhZLVR8i4zZb1mzqlXYKdvj0BPk89IXspnJridF8AM/eP6c6lOoO/EASllRF3LVFpnsDcA
QvxwlSkYOyZ1CeHzTbCwn/gbJrEeCbl0Jh9u39X8tJjU8/qLn4YvD8/DL7vhf04er2OlWJGADLUM
YTuDlVboau688LmjsHcF4ZZJflN6y3KeS69v/lzNVb/UGpnciFmYYmy39fszQiGN3Ah70KNc9Mlw
KbsoMoJiUAWHURBdVIJGRWVINyR249iXNwnevasJbOwRtcBw/X7Yfdn09zWusYxcSW5oZ7xMmC8N
r8LA1s4BtnoEg9DHm6ptD4NfKpMuNyuilVmKGWbIvOz+5x/OHU3juST4CHbsnPeSAbGgvcCxhHDM
nkjaJaWkjyAVm4hIS9rP52gzcP5ExUWvN0su+t4crSfcOrvfhpPQ4hyVv6KZBK5BQCBeCtbfO4UB
ILCmJC8A7F7reRuj2WAVIWuzWhJSELwOUMQ/5Y8vu+ehgrgj2oAlF02nHLq4CCylZ951YOk44p03
LvCahHqYioKNXippbDCTLv7093v4h3yS3lSV0EcMIDIt6C2gpoEOrDFDROrQKWWtZhaLS2bLUA10
V882tEjYzkLmK2zrOyX8qFI2wISI2KsgK4clSt53Hj7+zigjaYC3YdLVOO75kDVJPV+StOVks1li
syK8xrlXwGedoo++c5JFTHuH1xOT6BLmPXNK4tia5DY01oLdcRmOFW/f1TQ2VKGtnhLdv3v/8yxh
LQA9Etva8MRLhg+WXuCeZKBVUeWtDf6tEtZ+biz1tqG4gqovFwGY/acXkPA/PmyG+1mXNmkCNU6U
dcZwvk8d6BKk0xbUOBspbFh6y4rP57iMPHb+1F1F+NKdXS5erE8r4X78B2eX6FicJg3HzkkYI0cU
V4U9QTK2CAnBK8+STun/Vityuj/jwbR4WB/349f+y5k6T0qTjRApBsQN2udwDnrsGRTANGc8wR6U
mc6i4mdjVHNT2lg/yuylvn09aAb7Ix7E+TcBYpvAfwEOKPQ9wrGIAMMavomsTBZBU5b+qc591Uyv
9O6rnq35Y+sWf9PaIoDCpz+eH/uzFM0JSJI4YWlAXV5ITI6Hgw+MOLDYjMMkBBDO80N3MdyMmE2D
mFPvpc3u6WtpEHa0nUgJvRWNKWhhrZGIQO6wTktHOO+S68BsDMGAdMi27Y2pB63pGZYWD2d2njuz
xuLQX0HxLVWiRRUXBixDW4oe8UfpZQXigOvUUazXwyRwPB0M+hIkGN05gfV9XaM7DH4FtnSmXQOp
jaOMM9XK3C+pY7tj2jMfkWMMEaa8aeqUz1RgoD6ji0ngiRZxVzHmbcBi85u/3mqqKxBF54/d1Rzo
FluTMRd++fHjh/uXT7v9rEPuUcJIwrFysovcYRMOLjuTSOyUDVJLZYRX5I2aJrQpqbhRy46GcHHL
T1hdbGaa6hwV4xTDRh6rPnVGMAMCf6VBpRhUZvTNoLpah6LaNvaFZi37xv0Svo/oKTajpxBO8ndj
roVwLsOZjDgw6PAg2YJ1ml1nEc0cg0NEhJuRC3CWK9gFeLviQK8bi67X06L//aV/7PfPu/1wanKJ
B14WVFlYalKKbBzDrlTwDSWhPZdGRUvaVVXz8WbEtJZzPUHGfenXnydfmdFyjGVh4ERkPGzBrucI
w22YkR3NIJdFSoJegE08G62iwiy7zsHFfj3F+F6+Pp21ceVyjPFRaQR27GUlZwCkKxiqlHchMcaM
JVzPEWPOx6kJ2DZOf8tXJ1VxrB+tNzPIdRDmFgweTGHnliis50Q0HsNzwJr5/Gb1DWfzV5Q3anLg
IiJ38qldyE/Dp93T8+MZHvO4gE6TCHo49ljDk1VE2AGB2i4Lb7FHdrKK/j82DKnJrrnuG1z3C0X5
x+G534y16+QA5QsW2Ts+QmMLogPWR4HhBPuJwklMsEKFxeiJYISJN6y8PFJyKZNivFvx2Fvb4HGh
PjcTTo8J/yXdH86zEcvLJeNAmCL6t8VCrNh59LnDVwpadKZZ67dPkpzIuZKHOkv5h3237PaAF7ez
Cq6vz58fh/6EycgNphMVNNUYEUw6dDSCrOIOy/xDKC08aUgpwa65WsVVjVyRtiUNpXUr5yHymU5D
S64k6jQlV1ITMIyVxFZJFmvMQKORwaFGk8FCgIMs3IQmcoM2c1GTEcoujzyhyTxJagYRu8u7BkSs
BT3GMpAFnqNAyK5YPxHMfMMDV9SHkG+VpzjFFaRYuFuxseZLhUxshJzpA5vh6dfnh69PZ+nD8Kkc
UstJyd/nTsEJDvshYBCZkwjsSGM7IpRKMgnmlb2tYKJMddwh+MCluonFg3c1F6rF2jwds0iG0H99
fsE9P0ZFbfGMupBCJh4MvWgZqgys81noLhl4Q7A7JNdvkz51RsGVntSHJ2oeG5kAYmBzx2/crQuS
3uMfVQI4+oDl4e0R+CUF64JH95fF7tQUm85KzKdNVEv7hsf5kp5L+E/z5yruh9Ye3HK+MJLuHx4/
/rFfo+PbHgDSxleM7UV0YgRsTcyQA6Wjs7G0CuAWbpmYjX7zM32i59I+Pdy+q9kSLV7NglfsEf+h
3w/34zsujWytKlp70gmEGBiCmLKjUWFH7F0PBonQLjqW7Ft8zuckXGtkPz4xY9K2mOyPzvTH4cvD
b8N5PocoTjvJUuYWDfSIKZs8oSliETFBugBCwYq2Qj0fb0bMqkFMP6+Dvpwi7yWLDiE/LYsBG2fq
Ed3YG2ujwr5Pgd5QdNUibdP68Icpj/Lj+nEY9j+BCD61uRNMvROlBkLloLHUQEiNzcks6ayQ2FUC
TrgoqZF5liywHK6mZlhaZJIR1kh7KwdZkYBjCAq7VopRCGrNqHeIIwfmD2jTYKAZDudukFEHiZ2m
nH/1BLoCUzPdvqvIZMttpYTpG/bwEekYt1UpPSgb6wClDKtGQFp3hDsQfjyWbrqgOkVEmQDF8JZ4
7XUo5fMn7ipqG4quEn0/+04rRyAjk9xO6CkNBL7SpOgh8zDzDLagsFLljFHza1/pBY+g0qpBlt0u
2uflqUOuxoSWolQcfhXcWW/hVE5dxB6SnGKlAIUzjDmZE2HGRfXKV5Gvtsmdble0rxqxNLXqJ1im
+z+/9O/kyauKnilYQmlBW84OE2+w1YxDvE0SgRnOXSAh1bvqfJB69l41Zl9NfRB+7x9PWUAguNG7
wRnRWamOYdMDHtF/HmF2TUBPMRKM+TArqDgbpJ582QPCqu0wl6m/7UoZaIZ3PxpL/N3oeCx/ji2r
4PUk1wmGsBVEm84xT2E7M9AF4aCW9ia343GGC2LncPecBW2XabhwcaUWPbKfMRYuVRGR+EfRg+AA
1BRxxLEOBNQehK5ApEISeTAmKctfyf5/vhQEL7dqSpdVylb3Cy8v2rab4bmUOT+ty3KP1vjoVExG
wZlOQGMjiBNhFLZZL0VtKimw5Fy4LYKPeHHxOM3lNV88VrHUiofr3s7Bj5CL5/spBAtCU5CSTBUs
iS5x0wliQOlGCCQHhytseOWMV1orZl6DXZgGrilbFg7iRbNo6PjxpeCXlX4+oEAVK2f8VRC9EwIZ
KITwttgJ3gN9ChbbMCYTHJbslfSOafxLPRwPt2va+8Yn3W9aIvaohhYctj1+4VgEWXR9/BOFVaKU
ZuK6qNHc1LDYDqOdIVvDfRQpGH9zRGA22+t9C45P1vxtTYO/7Txc456ehufSyPjMjhFjoYAYsTFK
H3gjOqWAQVBuMNET1BylmQX1N0oVb4uYL2a6EPdcPDfjaxnG0SssCeSv9DN7l9wH7G78t8LhqG3Q
MTks0sQTkQQOe4M9EUFim2RMF50ALqMVOd/kfj/O0ObsePeuJn3d4IfPMVP/9iEclmNK9sJ3kxgF
DVN1OWOGOWjtYE/DTrI58syVF+S2xk2n0duUn+7XtDeMC71SbJYbsttvJ4+90BqV+eJ0cs4ypmKn
RERUdQWCQWHiTHDYUFnnLK7CwZyGrYlaoojCRTP3Uv6wPsdkVaZ88socsi5Sij7BskoEtffYBINh
LjD3WLsdwfq56ZM/n+PC2bRuArIiwa3Pwszxyn/s958eweA6D66zaJTnDtcVMxO8hw0bQJGhIUcC
wiAZcVMK13HsC6L3cLem2i7zlfSazp0nH4ZHBGhAoKHz1nZHBoiOwUSOLWaxh7WLsBt5xJ7aAXam
dwYM0JuwjZfTXPD5Lh+s2NrQ7ZKtjZqDZWHB1fq+oHofsgHHJn2gR3qDRYPYoBheSI7oDQF+EggG
YYQlOr0alQnvL9dOhfc1uevGDthsaKM+7NP9GDsa1778QHHGrNUea+Wx+Q53mnYeBTSINIkAPU4H
9r8OI433aoKXYGRwcTtX2n58uX/ePT+8rD8vesuh1n4ovxl/4D6QcCgiqAX2r0OhzDrns0TsWgo2
Ktg57rZ9cHnaakPMH6tZbNRO6YHP38lfY0k3GPkoZkhO2NQYJJMpiLsUrTXQLDIcSAm0JqLS20fE
/nohfPzXKm48FgcveFq0c/nL8LgaHh+ekLMpAcgLLTApubjPuEnwbpxUXQJphhkNmaXrjuDjoG1C
j3drcnVjWwyLsskR/OVlv3t+GqFfft6P+eQ17ovxklnWZVbA+h1C6zDTmQCGqWZRE8lex33Bka+A
vuDtGQeixcFkCdwXTIEJUUcVpOmxqZpIURHZSYpI6kpQWG4RuxQyp94QGmS7qdr5iDUpjfIhw8hK
yZGUh9V/r0/9sVRJGIhSRmmI7mj2mBcNBr2lQJQQUbucFJzrs46C56Pc1TOtG9NTfdbZ/svDPlTI
24oQPWFvWzwPGLpnBMhHbmFZPHY1B4PPUDCPEIjsUov72cg1YVo3CDNTimf4vNsPT8N/PPw67Hd/
nnyJFE1lbb0JCoskCVIWwMK32JFTKEk0tbBCceZzaA9XU7REk8CLU4vAz2Miedc/7U+FULJYj8UN
Yw2NSRB0w+CnrjBjNmG/hGAcpTKqEGcdm5cjzgiyLYJWM2n6+9f1u8OJBbpG/2n4MuyrAt9oFXw3
oD+miJ2gEHzLy2i7BFsQhCyh1F8vr1yMfqlYY/bYjJvWl9hPy7sAEdO4IXO06MpW2HQsYJREYc0P
7/BIp7AbgxQz39ZloDCcrrGinA4XI6c//HtJzAND4gC/py1ujJKCIYktqWAWu8DB6aA7Y4PG8lUH
GwT20CtgDWXsS5b4LCnPqCWUHl6cssvvQcvcnfU4LFk2IYiMwVBYJXpouBuwcD1xJynouIaxmV/w
bJR6+kZ+PVxki7KidXjYDP/5CH9tYp3QbLDMA0iy6Kz2PGNfjtxFsGeYFgrExW3x82qii/WcZ8/M
2FENdsyUtfQeDov+0d1/GoCARVlnBlUDxETuMlGgdgeCICPCdSI47T32T2DfqqyzQWjN6BIxHi6u
FijMn1/2v+72nw604ik7gteWiuWoMzMydIRglY7yHrag453EVDLKJef+tizOepIL7pr6oYqZRi8R
i5jS23XtHz5EesbcQTMGW2X2gjKsYuPYQYLzzoEQ6Ty3oEMFw0HcfouGBeO9u7t/lHYtvW0CQfjO
r5hLpVhqEQ8bE0s5INuyiI1JY5y0vSACJEE1YJl10/z7ziwPryPAarsHG3b5dh7MzHphvDv/XT0h
c/Ioea6TTTbHNEW6E5R6Gux2BaRBFMPTO+TsFd1pf8hpxRachrPg8BLz1SrYK04Jq4YJ1xYLip8+
ztL8fRJNQC3reE6MH+IniyegiJVFzPyCNfXnhC91r/xf93giSIUa4PQo1xDtuo2eTkHi72hKDw5Q
PpqoX3qf6Ga7d6DpB7Xkz9Bk7U3Ay1mwu8HZhKw7cIiLJMLB7EZZXimfBlC8UTyJ/PzIfGTrmPE1
75FYVCFoz4JPA+nxkLDgaRdjB0S86VaVtQW8YSMOU3WfPTTqKpEOdVFRAS53f3mw772ttcKj+/nC
dtcgVd/e97t5N2xj/+CtU3e79uAqy7MvYR7s4iKMowFIN6fS0UHTWh9IVsiSX7TqkXcIQjLflqIp
Q3PZnIA0XQCtYUdXF4wWNm7BqObY+IBJeBDoKS2Ygu+WUkKLdpCAGSGG0oQzvJ4bUSelE2ZYYrZ2
xR+9/2+HKA1GB2lW/dsAoxylAx85vQ8cDjHSOYI8wl8Xe4qmiDq43cCt7cFLuQEmqiLEAfQDZ5pI
Z9iFuSpXoCZLATCvjTPe6lJfA+iiQRThaQEoKD26Fcx9IC35ttlgUQ24WdhxX01RZY61WrnTXr9Q
KRegZks7YV6OwSGCfZf96FpDZwzSXRm+AG/rvojBzp7ziya9+bpKWFxSCOkBfit32jnGs6ZLWGyt
+1mnQCNDVmt5dDTPDUPHuRActCEFuQpjAEZLn2vB8npCAwwV0Q0e4yf6mezwW9bpbrLW0EG9+f7M
8qwLvOmNPJpmEsZ2rMW8HzQ615vvr+z1cj5DE+20A+1aNmreVIUw3vyb1287pimPa950jtmu7ak7
6+VuNNJE3lIe5TuDQGmjxun+qKjrKkalcUpLZXcFHAGj/Vuo9lyPDxn9WpDHi/LIGKkV5jOkGKGK
M+cunZr7qHHd+BzHSH8AUEsDBBQAAgAIABSLLkqO/PdfmEEAAJsVAQAqABwAaHR0cC90ZXN0cy9h
cHBjYWNoZS9mYWxsYmFjay1jcmFzaC1sb2cudHh0VVQJAANYz3pYWsx6WHV4CwABBPUBAAAEFAAA
AOxdXW/bOLO+Pv4VujhYOG3l8EMkJaOngCxL3bybpkHsdnuwWBiyRCdCbcsry2lzc377GVL+kGQ5
G7e5KeJcpK4pzjwzHD4zpBjpOksjuVx2jepPfzVb3Mh5LLNhJqXxl+U4yPm7dR3md/VL4ef8czpd
zeTy/PPHy08f/PNX59X+rYtYzvNkksise1hL67PMlkk6rytALS+NpTF8WMhq0xebm9wy2ldhntzL
M0CXgRrjumbS9UN+l87BBtvi4u/WjVwu0vkyGU8r4g5Y/GkpM+OiX8fEEG61+mEuz4fJrAaLICxM
hE1sGVh0Me4i1nEcbJjIRqj1cWA02fkhjAxo+mJg1MG4w402Zu8xweQMAC/SLN/rhXHLnafzh1m6
WhqfPpUw9vou9nrINZGgyLQowAlsH5l9n7uBhyzmMrfVainkhvst/CqNQTKPpNFL07xrMIEQMpYy
SufxstUaPCxzOTMu5rm8zZL8Qbk3l1Guoch5CG6MWy0vC5d3MjaGd5kM4y0SBH5Nloswj+6Mf1Zy
BZ6K0lknXCymsjMLk7mZ6w6tlv89kgsltDrO/hdv1HP7I9fz/MHAaA8u3g/895/PSter4NgO9h/+
zdXo4uqze3kBnfr9G9UrzA30HVV+KCpJuAKDKhq9jzfXA3909XF4Efxvq/X5g3Ejb+HKpXElwwyE
UdRtmeY7o6V6jEZD/8twb1KsNWFkcWsCH8zSF476wvjLMChBf/xtZOb38+zbd2Pw4X+8j382zKdW
ywWXJVGo8Q4WMoLJFMGgTNJspr/strwbd/D7xdV7Y+gPhl3jLs8X57lc5stzcHcURnfyfBJOp+Mw
+tq5y2fTVuv9NB2HU2OYhWrwV5MJhHo7k/cQaNKI7rJ0nk7TW9A63YTDWbdl2R1EqCBM2egFVzL/
lmZf96z/r8LjYjKZONzmYRzbxtXg082ll87nRfgYk2Se6Kj5luR3hsyyNDNMCBCY7CaGvloXZ4LT
I3SJcByPqTH0rg2lCgZLTGIkYkFt4iBjMLg0fg/BlDsV9/2PV77WIjgXx2kJOXP2tIwtiQiMLAQ5
RHguO8YEJgNBb5R1XWCyQpeg4hjvUXtC6UFdMF5AerhTUSEoRkeZ4zhkfFDFMg+zHKY5iMYIE4sf
Nx6RPTk4Hlp0Mr/VAzOXt2me6Hhe66LE+flR2eiqjgqm5VEBXRZDPz8qG10No4IREZQ+hzkWFuGe
OVbVHGJz/BzmFLoazbEhlfx8kFUiYRNkNrac5xBdoC+LFhZy+DMMAuHA63uDUJnpWKlnzzAIa11N
gyAYIeQZPLVWUfKUJRgSRw0CjxmXhgcJXc/oWE7C1TQHF6VfEwmi0yy8lQXZL4oa7Xy8msdTaSTb
+vCHNSNuBEqd0pxAVRD8Phxee1r1YK15CW0wVgW5/IgS6rCKkqvBY0paRTEERdC6Oup2n1gNKR7a
tfwpx16aySZkupzgPB6HYP76um63VCt4Ku//ni7zbncp83pD+89h0O3eyMl1nr092P3db7+dGa8N
KEmbBHeixaJLbX7WwseitoDfD6N+n6WrRbcbJ8twuUwjSAuyn0ZQFs3zyzSEOr297Vr9XqMlMPHa
qzyZQsnaFZydtcix8JyYyn9z6v81fd1WACBJVvXT4/Q7wnZQbBywETTXnKF1QrZsHqS7LgMIVh3C
H0l+KW/D6KEJggNVXkgtBaGqC9YqoL/pa40CSjejXW0C/TasZNhxLggjEZFo54IgC2dyY38sc7Au
yNJZsezTqokNy8HSZTo4CbNANz9WN8bh5FHd3l0yjUF1oZmxBs0WhXkhjtXMnFgc0AyT+GmT4JUC
RZ19TFggiAT7WExcOM4BTHkWwnJaxdsw9dLZLMkhg+xw6SCMr4EbNSYCib1dUI6KCnTWco72T3Rw
ZCKtH5ao94laLIdT1aAHiOJGZzgQGqpUPmpmhpbDD8/MzbJG/R+SQTtOV7BI1jPDJnszQ8OwbECB
j0QhQ/kIP8zCh7E21Z8t8gftAofUORGTY3XGzDmsU1cPa7M/QD67kct0lUVSa2eMHjCeKiT0yCCg
akV5KAigmJiv9P/dSS6zq/A+udWMeJ0CNz7sgnOD8EZCQl6qWmW+zH97UxIMC+xBDrnn1RtjnKbT
UpM7nabfdqKH6cX8PpwmMSxy9WBTRlrYOsYsVQlTK9ypKOB6dzL6qg1TH443poa7RhQHjF3mUK+M
RhjieTXX6/W392kSGz/hu7N3OgoFpIeKYToMHBUE7Ngg4PJQEEzh3z+h1HwiXb5pEKN2og6Y89Qg
IILYRnvjwXAKjKOSEeZHGkrGMnrE0PZ+U3VUdEBiYC1FvaoaUIQjjqsGbIJRaJh/wZVaizHdqen+
rSiWEx0eurUzm0H+Y6outPd2V5vr7PXmGMecRka2mg9BcHsXh+NwmUSjZZ4Bu7yN7sKsHKTq/yPI
REm+1G3vyo0hDBJURGlWNBnvSl4hNhBvu4pPY8eYAnbnSOzIgS5xpUc7medvDKW5UPuqyIMOJU16
MSWQEwk6Ui9BEa71UAzcrBtzXaLt67YoxAWBRDRNxvHDNO7Ar2T82LrIHjucMFjlaO5XsrfrHtzV
CxkQsNR7yCOY6nM5rcosi7JRjJkkxmikVmP/6Oszma+yua4q9QJjJ21RLJYq4soLNjoWDhO2sblw
9O2f4oMSRmyqFwRHiRPUwoWdFVl0azF5dIWnfLpuNGfhHAqi7AccBItq46veCRj9ky4rjtlIbxi1
iiWQmTBnxmhz/Wh2m42S+X36VarAxHzjmqcLtOIorgncOgjS4MZB9MWFhPXiLGY/YrHKLKPRUs6+
AYOPlskt5Mome6PHQ9HmkONiNDHm4TxdTqVcKCGOszEzev26g5tJrSyF2YgigkoZJL9LluuIhjJX
CR5N0qxdzj/qdgksDVeZLgTeTtP5raF+lRORbnuLoRrD21tR02o+Eqy2U/Cf8D4cRFmyyHdFQpn8
mTUOpRwb45lOc93u7zJcAMgoBJK4lSWMq3kCpDSCi76+3V6tKpok+rDK5fd3v1Uz6vEWKVt0glGr
4dFopqSOIG/LLnZEff/hKYbFxKobBq6KVpla8g82JurtKbuukeL6jsMTNEYM4Z1Gd/kwj4bhsuQv
BeKNUZTCNWSvztpn71SsqDC5Wc0v03RRLLyE0d6KguoLE1bfkHgKNAvFzwLNn+fZw3UKpUH7Z8St
y5ja/sZTDOHjWMt9VQqk0Xp6jRZZ+v3hbWnqrUDseu0Ben8O8ZufcuArCO+2Bq5HFdazMzlLs4cu
4UwUmyrHUbPjxDtqHqfxg6ZSrLdEjpSEw52kbS3Gbb25cSTBM2zUBe3onXfLNU3tlm6xJjma/6Nw
IogxC1XlsLxVZfyiifyfIoiO6VaQ3nSo7fuqoAzS1TwubqXvyYjGzMJAOqORF6yn8EBm90kE5XR0
d51qdxBMaiT9BLGUwRKuJBb+KXYJeI0XnyCLSGobZUnbIwFqRvIa7TXd4Kje2hAo5JDG/6oNZ7sY
zzNjlK3X+uoLpVKv98BRNRarw65Dl5IwyZV3rwZFPI2KGBuNCl9gzSbPM4ns55tEjvG8k0i8uKrQ
fnEWOy/OYoxenskvb5MDk5dn8svbt8Avb+MCs5dnMn95Jr+82gu/vOILv7zqi7y86ou8wFtML6/6
Ii+v+iJWt2vow5nuKk/VX3hEw93R0KMcgeIxB0cs1G7n3Si6VzdYftALoTrMsPWC+oOQ0Vqa4KK2
z/bv28BhFBJRGFnY5oFAfYys282TmYz/BNnFCVV9d+K3N0bpJJU6zVV0S+a31wWk5e4s6rG3UBxG
ESnAXIfZV5B5mebd7gI+b2GF0+nDxWwx1TvA69vpb4o+gyhdyPgynI3j8K066mK0z97tDsTsXVJs
MdcvUX+QpY+sPMzDWRJ56kaNOoNSPq3AsTo9s4WoLebIOvbeiiWliAXXx3IK5Vsze+rmSVcN7Kd5
nkzf6tZLgPKuvf14BGLMqoDvuvYP3JcRXOK4crdgc6Zm8/lt03RZH0nbAZfZzh5l6PbOW7f73yPU
fGbkGQS/29xVUDdhIA4yJbh9VhyXtdWh3ar44vQoosffJQrH9iaQ9272bO9cYNF0KEkcrWocTQpV
3/LJ8LA29hLvkxB2ovAThZ8o/EThJwr/VSmcnyj8ROEnCj9R+InCf1UKFycKP1H4icJPFH6i8F+V
wu0ThZ8o/EThJwo/UfivSuHOicJPFH6i8BOFnyj8F6Vwik4UfqLwE4WfKPxE4b8qheMThZ8o/ETh
Jwo/UfivSuGk8vQFLxioKMk7iyy5D3P5A8fkkSgevDOVUYnBj3kYgYMtFuoHGxRgPhSPttIETo4/
G39wWOjzDYv1zH/OT1/eXyhQq1t6wHW0fv2Hfrb3F5uv3wNi6MclGm1umeMkP+u2DCMLv3f33saB
wHnZ+FBDdKghLjdg+JHqg1ISJwe6LLcNylI2ZmEkJ1r7Yr8h0j0aGsZKiZHZDUoU32VOGReS4QSC
TsnCqAmwasBlUSKajKmcjJUlmBywBNOqkrFNSawbrENK2H4Ppt2VLCotmweKG9lkWtOOEUHqmbFZ
AyyqZLUu128M8a4/Fe9Uwbzl61d7qBe1rF+zsu1qtYbqYS9Xq9l4824gbLVarV4yD7MH42IGVLLs
tjavVPm+fZuKYRqVLx0Jo2O8rj0zsY3OjLeM9zzBXdtknghMSnvEtF2bmq7legJj4buo/+7f32FU
Vico38cAX04mwngNk2r9OE71AMvBXTJbzzSNBtGABbbwTJv5tkndwDJ7AXxiju8GuN/vERY0oTkk
tYrLQg24xqwJ12qhXitUhmZxP/Aptcw+8i2TQn1kunbfNX3W73s2Y0Sg3hOglQVX0NlsHx1jDE8m
9JEioQ2V6GvoBP90cMd6DUA9hGzkCGYCt1GT+n3LdAlCpuVZyGdu4BPkNQGtSu5M1HNKFf+er9+t
tDx3a9eU8bOxoPv45cSq4S+epNqE22JB3+73fNPqqbGnhJsOocLsW7YtBGbcdVET7kJiM96irYyT
c9vZwynGmO3jPOTgnu8EIvB7pmdhZlLP4mbP6xOT+b7vgr99n5EDQA97dt1YhuqQSO5BdawxnUzG
Bx9O24BX9Jhg4E+TuBYyqeNA5LrcMX0MhMWY6/cDetixhdzH3Ftc0SoQqjzAWSRLwbz5MsYitCAF
qGenGm0giQ4hAM+2YS7RwDM9DwEDYc8zXc+zTMFcGzHPtxBWDLRaZmounaveJV02oQ6t61JfMkV5
tVqtv5J5X45XsCy6vVWvqWjjjuqJlZc8hxLMESh3PIAhqAmBEpiOjant28TxespLxRu/zi+TcQYc
fH5d1JbBxjvL8yY9zd5rurJiGePRvmUcJhUQlqpYEljw3HfIhqUsC8wIEHORy1yYO65jUgh30w4I
MgMivF7fJRyit+TNupSKfs5Rg37hTGShX73eJZNLZc8GA7EVBpsGFsF9E2PWB6pkwnQd1zVxz+8x
JJBLNVWWMOxJquIQYQMOm2o/lEd4NkvnsK67A1/ocSUdzdw9mwvqY/CGI0wKBGjafaoGWrge61uB
3QueNrIb+YfGc9NeRT8ZN6CfxJtR3Dy8M51Pktv14yQ37oSVZcdCHUzBDNr3e6IfOCaUS5CABBjU
8yBTIwyDbJMgQEFQ8moh9vxRBRWcAuF9nHYU1rysq46LjzsXwFTu0GIaWVz527Uo7zOAxy0fEhB1
selYiJp9j1NfQG4iNtv3d8nReyrKXl43VqA7obUPPbTsGgX0pjDb0rSID6vDoYP+d6Lmv4UEUfQN
M6UPQUs8QN3DjulQ6ngC2QIx/Djqj1v5B5DvLqigDxlrQM9ijR5G6YN+yjDeTjGhgsH1UC/o2abw
gcmpSpsuhpwvAupYPPAsxqzqFKtIqeoXvEF/VPeeenWK/OwGu3FnHdShBDoWH1RqxJCpKfNND3MX
nAipxnE8x/T6LvJtn7hQKD1lqq11Nftx3Vi1IXL2bRhTUQve0utf1g8uXHbc4QBCWAjoDL7rKBJ1
hHB8B3MTCRtKEc/1zB72PTPgds/rYeKSHn80Fpr0NNpS7jMcHLB3OKjYOrYaEl4cx7UKZimjlX4n
ZVvo2ckEpaKjsi5Y6BOfMZiNUCRCqtUD1aM9+NXDPbBXgCfooxYO1tKbIW9ay7gpivZnKaUs3MT5
TEYh6NnEOXd4hymoAYdYhyqWqZUAtYIerFD6gckdl1HP9xzh1jJaRVCrqm3cACGaHHDdZLe30+aF
ExkmHED1XdcK+n0EE84G/yHIbj2fQ7XAez0HVjA4QOJJ/tttHz3uyd11VYNi1GBQHNXi/uNCzvtJ
JqM8hYVjW79GVRG2o6KdYpcLt89gCegRkzIExQPvC9OGFB5YPahyncejvSK92YzKJTUL4gYL4HfV
gsFdmOmKzbII5MOCvNcf1Xj0++pdBZ7Jfa8H8RxAjvdVCnJ6gcOZ6Fmu/RTiWas5MBZFYwW+hRoG
wELWJqj1u0U3IS1UPDvMsl3Xd6Ac70E5wggzHd8D/iaugLUElMOWaMzjJVE1CKwJgthA8N5/UXcI
Ou4GhgMkoJJIwIjXc2Dge1Anwmrbof/P27VsN24k2b2/YpbeJJ3vxzKfNTWnalxj2Z7Z9eEDLPO0
Sqojqdx2f/3cBEgKCYCUulunNyWagDMjkJER90ZEgtXNaWJZUFZooxD/ri58RbDvHtZffztsL/i3
08+gPP4wF6RVgi0oocRuEoSO72rNfzx1d4/9vnxG8LEkZ63GdkzQSTiWSaAZYQjoyElvVBTXI/h0
8GWVpnc1aqj1goNZd25izR+73WH98/397eb+j7MKRrAVUytO69po4ZMoMJCAv3AwYG7WO0csnL8Q
hctYrm/K8RTLiozvaJTYsDnvwJf7s0Fh2X/9GG8P3d05RcKY67210jQZCh9tqAObo8DZTgMBQGJX
IgCs1+lFZ/Luw7LEw+2HozXNpGiV4HpBCTldidPLf0d2VESsqS/sCFexFYMbsd5mQmOSnpUsrDCv
8SXHoa9aUSPydt3NRd7uzIkp/PF1e/YkWq0UXVW2pWRiglf5lMywfYQi68BxhFGG8+ISs8u84Dxc
I8SOmrkQO0HPQjzePj2DUTYAJsNjYtFLwkoAeNaGE5+qT7MOTk4yjb9tjB4P084vFlDCTk/p/Lv6
g9djlhekw8YQ2O4BIF4AFUAEIOLqUHV23jFJrxoeRlxeKlxoJOyknUu4d3xiWVvY57cD8Pqqhlp4
2FU1rppN0AJIASzd1GwH4iw2CMCNMtIUzwL3r00z/PL+cmLhl/ffteKJJZk3C0mSM2AtN7n+ksoj
Vplzsaqgoe6Q0+e67EUF4znCRgTbF8U7EH2QkqQA07BvnHH+xQDyaoB8kufCjcerE7W3S2rvT8bc
F/Bu4jhGnxwZF9YluCsSbIYjy0ES730hJeSUKYspR/92jqwRYqyCpHye/AC+mPqx8zQDT7OU119u
YkevxjhbCdkjf0elgZ0hNiJaYZ8IeLfqr0sqhfIAzOfSqylaP80VltZfb9WRC+owqU8rUu7vnj6t
Hx67h/OCKNtDPA6Q6nyWRGILYeewmsYxsL1UUgTG07aUfx8pa4DNVOjvWuXMgsbKnhHil6+/nTlP
dWRehsKjBrWo/lxgP7kEOK4ZmHTGquVYJtmz8wjtxHrhUUu1n+z5/3x/BiJwVf0et9T0tiI0nnWU
MBMNyxcSG8FFmklhNgiWWFb6eiYnrh82l3DU6LazCMt3ni836smF7GT9curSehGqGcm6E1QFV7bo
nDTlRIHmYm9z+C1T0W8UCPc8MivSP63XcK0RVYuFlQArWchOdL9+GqdY6orwPsaxfkVM4BogCvLm
AMnhhAioTcI/LkRaEqOWvz7B8ulqhuWTb5VQdkmJsy+tOdzDbffwl+e6ma4ie1YtFkiqqIoILVyP
1dQREwB4pYLviWmZ70wHbMVZL4mz7ibL//5Hv912t0P/D54nVQP1HT5U1qBYKIZLUmxNL4C9wx9q
QBdKo1ZUaWyZ1zzRZqJLCcDRLY0ydiEFhy+7OfspN6dUhOxhj5XcI9pqAkYAgyicVzZZSFZWewb6
wwp/ifSUm4sYtTTQR7rNHKFKt2UnX3ZMNT+u73Z1N58KE+Cbx7wT9xquw8Fqja2UkypigSCI0rkH
aq4Eey2J3Yw8Fk3R/ZxAKsaG+ilurj/Scfv7yp1ts09VY4WDipYwp2j1cmBZOjFCA4dpC7i5MsGt
7TCNBKCrcwlUNy1T/LT+W8TDflivjr/vjvVkrnrdoYDDpHMcKBpxGPaoM7aLV4w4QGjOaWZ4SvMF
HQOpH6Yz4OrdU8VGP3xcb3+8eb7eiG8280SMsuwM/Mc/DwZEOCBAW6IA/QAvpQphQjoEKx+BuqU2
YHsF3GSShx4N8107E1uYnp9Na/P4ZUVP04uedOTqPmQEywhYPOBnEnQORCVVfIiGO67buUdjtHNz
szC3WC+g41EN4ZkxZiUjsAlIj0LcFhQPwCX4ECsNT8E7YVh+EQe/UD1obmmlF5sF6e00dRJv77/t
0v328SQ5eOxQWVIlOWCqRKhDZIELNCQEBBWlHc/gbqYI+ipOcprhggany4304E1z6TfinBUu94+3
f9kN3a5n69MrLnvBXQqWJ4BXGYBlFSAhdi2JmXJaXO19mKSG56M1wmzlvIygtoqfnMjRC93dPx32
fz4DVNoX6WoaUtqQspCEFgPsBqtAHCmFRGVsFs5ZE+M19zYeuBVsvbA7tmt9Euzb3d8Od7vz9lCr
uq5AOUHarAh2YU3sOkgTlCQRBllCyKACYlGa8WiNGDs6j1Nqp+XE1AZLieOCYzU61iMw/Omr/lZn
zI8tq2unj3RAX14hCiME0Byxk+P1BPp8jgtZ2/mNrU56Hjg0rW67qQn8eth199dTdtFErhlWO2hV
m5fgtHk2hGkffao+oMirKo2nWNZlfMdYCc0WsjaaMT1pFfmwvvvs79a3fz4eejcwVIb6v1CA2QS6
Bjrva2VI2Bp1jPSEwoaSVOBuRr05wxqLdIEsj+5olWZLSq/lvtsv/Szm9xUcVyBSdyq3RogEtFTL
YETEEMEmeSQ5RWwanSUYz9Vq+nx3aM7m6EiLbjuxpP/5tn54+vvQXcQGNCprQqWvxcTsjWaaaFHb
NwJgc6jdedLoUHQSRdlwdQmeB19+mM/XG9HFXiyIvp8C0FhbWX/qagtb93DsZXsuJxlW85FUWeAX
ZQhIbMKTtQjLDv9QyUzRQWiWwquiycJcFwLLwp0T7eYxRlu3nuyOd939yWzPO5wptpJuMJlkrVEM
wdEIKFb9umMJ8KNojwBanA7uNYqNprmQcHy+YayGcZu5p6pfnhDat7uzqXPXF8UCy04aEo1RQyYB
ps1gW1llmJYtNF/w/wvmbTYLKMnsxLnUddh+qznP5zqTwrOrj6/atXUuMNAUYWsPWoJXsRH/FERF
llTiKpppW1IzWiPJTrkFSbbyYk6s2vv/fvD/PcqIURDq6vREECoqBCJTYk23iMr/IiNS8OIlSymm
l7FbHfsybKtXW/m3akl+dXqSNXU4tFke7j7/8nS4fQY+gyn6RJOP1oMVIHAKagxxDszV+RzhFkEf
/KTD6sKQY7Es3czTFJbu7KRTqWnf/15waXunyo4pChajsKUEkoMBKJM0ER9r96FRlnqmfKT+mmcd
D9+Kt3NL4rmTeH/t/vzy+aHpRLOIuhHonADiVl+U4U5FAjt2NsLNBl0yXZRlPFYjBHNzH2/Zlp+E
+K9P+d1zcaQnmZb7YmpBPYhci0oeyyYBD6OQntuatInln++HahKRz7O3Qm/FktCbk729K/9Xa9vd
7pne9WaGVRQBgJbQmncFw6Jw5UUSFiJ1olhjzBvlwCcSNNK7hTbI+uWV2sV/fG+4BbmpQan/UEka
Fj7XPt0ca1GYSw50A+7gVHCgq4hYwf6LxYrxHa0KW7qgQi0Lb/oF+On9p3l5XkeXdQQm0bzUjjQY
j8/w4UpLLxSjgRn/luX5kRCt8N16SfjdxNv+1t1+rWFTrOpjlzWVLVTyEpyI0NB3lnhWU/aRSOqo
iqnIouWb5I8x9YXUMa40yqwXsvH4cqrM49eu2/62eui295/vDi25qI1vQ568/1trKll5B+dGiqxZ
EF5bKkJGNAlJU2ZjlCq/hZ43vVQ/LQnVMJ7pbZMnsODB1rWruEGpnx7un+6397fh237fPWBha9JU
ir5AAfigoiMpqYpRa4HCSEZyLlFlQYGe82twUDvDsirtPa0ear+gh17P2xZvhqThuV6sWeXrNVYp
bjRgOx0SRwLADgyZBSJ5pt75xHO2r0ynHye5mFA/Xm9VsGxBBTfN3Lzr7rqBuK5vb57uHxANamWg
10UMgMBGy5nETpPc1eZgoYmLuZCahgPbtyq+FpvOprqEUWc3NqptFtLzdqvZKU7+/vHweEarSou+
5gqKw3gxiRQvsByl5uIDqKhNiDiBsxzjCwT0lF/vXtxLv3dbDLB8Wytfo9duoVkXX56reY9fD3e7
b1++niOpM/0CUQcMbmwhtMALiiLBipiGizCpgHcqHqNtEVs70lgIpzbzh+uMnuLf9e/jBsbBYOpx
sBVsplq/ZCElCsCrVK3x9aWPWmk0jGppFfb5C2TT//pS++L4jkYFkLK5CnbdzXr6H7q+T+n9j4jp
dOgzl8bVR6pMcjyWTLJhNV2BTx77FWBFJjwNp40rL8bH4+CX4/nxhkb49W7uQt2GTyur62+7w32v
gq+fqv85KlD/VkjiTZIFpk41D5UqM4I4EkkEg9YyUYrY+aIG/diX5e8vN9JvxJL0cuo4Z1FkyFjw
FV+ZviLJB5QSPKR3lIDTCcR4Fok1paYtWMZ2LoW+ruV7cbpXxrdpOsNtzIKKe6X7zFBrXf6XCKUY
QsPgUIdP/SkW0EAXPdExgbJSBbwYOSeUW+u5MnHYsa/q1MEkV1bol9gI3ycrZsLvpx1Q6fD4V/+w
OTw9nDf4sC5DaycoMgfTUKI2snHAEm8oIyXlpIJSgr5QuZ+Mviz95KaxFmth52xtvd/wec17OA+4
cv0JEipXsldASMYKHGRKFpsbm4HYqC2J2gXOqcqSpZdykReOBcbjtUbc/U4siLtb6D8dDhgNNVjd
W0rSjgdYO6ltT3BErjYf80J4CN6ApZdk5CsbBi+fLjpenAg9N/MNPXb+tlCu2z51u74Cc0YQo7Nv
UujAgwAvrQ10iHAk0NpsSgsTtZ+OUv5aRDeb6DKwm906Vm6jKJ8rhy+n+O455A8hvZ5HYvX/O/5n
/a++UG4ZVwkAr7DKZbmGn0LYKyWmgJliMvrfgS2Ga42mZiGc1y8XDuBMsusIKbbGE9vnhBIiItaP
SV4b1gpISEmWZB8TwCEiupVvk71fuLHRxy0g843T/MR26xHOc/rodAy0MCoCL4EkYRFHbAzEOe5J
ZjqkGCj1dLlY9TxaK8QCwNhsqVsAGGn9tO5L2nVHS9bXzjx3XknHiGa1CdggPlsO+GZlzjTWemOU
L4bmOvCVs5+42oi80wsWv9u5fbc5dtiAjz78+fXp/vz0RN8GXPdwUJEqeBoCsWk9dOlh3wECw1PC
9r2I7MKxgsmorUi7OfffdGy/0Ov6eLKZIZFTDrfdh8MjXDuHS+/JY4/xWeI+GROIqWgYkQk7kjvA
z0S94B6blMW36xltZbl8rOP5nkb9vZ2H4s3eqVPZNb57f/fUPezXVZbTmjCzqtl3aYQUMjMCV3PM
0XoqDUkIXpRLn/ULxxH+EYfTpwhf02s6E7jV1+kFffuG2V5fwPkBbp7z0cecL2BrCkUQ6SiArME2
dtzWcjPLQmddX5LwLzKJJlXVyjFWYUvtvI1lSzfnBO2nu8+T/Cz3jpkKMGTdNMInBD4mGakdgtl5
loxQb5SfPU/eiMzEPMGJL88HQNNh/fnu/vHpsP3YPT7Wl35Mzl7Q/pgzlyLoIAl4MuxNKaxBrAfB
lYf354jjbtIOc33cVsTdPERtOZ/CI58rS+trgXSoU0jHjeSk2HpMzupAvFQU/D5yy0A4i5dvt9l9
vhCvcqMLF0u6KDkpc3zp30d2bhczpx4PZaQFMa46gesIGQEkAoPpK82ZYNxoc7WFbTxuK9dCamHL
N+cGrJ/flzIxXQH+6Fzy9XUtgPlgJMQWjecrjCwIn1FQ+Uam+zx7K/SGLQnNZsn57f2673Tr84j9
ex/gEa3xCPhc1IyIquTXwUCcgHZcRGXYC7aBMS+FV1xq5ez0gpydmXYudtsDOOW5iNQ/ZIB7D/JB
Uq1liwKMH2zMBACBB2miyDpc7Vkcj9kIZRbaabZm1k7TbIIfb64VObiJjAcQEGNrSsemRPoGqRRV
gF0C9ib9dhvuWZYLpz5vlvDh1skFf+fqBtyM12J39/i4e24lVrXK2LcOUWadcxbgofb9MR0JwI8C
+7J1b2rDRLq2HqNxW7GW9p9T07zIzzE2p8VUzoGDV7jaGiDqi3ecCZlwHoPNjAVAr9dwJwy7/BBx
oRVzoUq7dTs2cV/rx1GJVpxQomSlClUICzWpURjsw4MzeM+UMTk52xymnj2786itSLs5cN2uWbeA
EvtXPA79YFiqFaspC6AItRK2P/UodCx9+6RJNR+vSeBaEKVT0hkiB5teNN8PxykuI+/THY0S64UD
g9u1ODegvvswqY4amhRolSBU+hoIwJptYfBiukSunFXcujeqjn5YeOhrsfTQxTmM/bTeHdZ3224S
MkpWzNLE68tZ+pJHhNSOkljgHEJfuxdvFDJaCSbCqyXhp+644RXnjPoAOQNChi+xJ/Cgu+CLNjhf
+7ms0LqA06frr0OZDj0RcAEkrNdT4vPxY7zpi561n1YNqX7QxhIyJFOq1CN+lIGI1+hGAysmFgQN
/RqPUMe+cHIXV1pptws+YS/pAtktzTsN+qQbjLWKzRIrNYHlSo41f8CJFZYTnuBPjSoIKC+Xm19C
8e09jQ57OzeJHdfTJq0mQA1102MrHRO6PyszfOgbtgIMxPUZXF1T03B2rEjw4mSZ9zrpF46E/kPB
8FmWa+eCpqlqaNgtqG2nObxYrr7DAS7dqXrsVoFc1spZIiA14J7ZRqV9zu6FSsIr3uEw1rW84v7J
TWOtO7GZl+E7sWcTg+1fjXXz55fN/W1tyetfNsP6N81w4SWPSpDgQNWEha4uZ05kBKasR8NUeFXZ
YTzDhST36I5Whz1f0mE98WF3w0nv7vxWgVNUtqpSClEbJbSmTqVoiFbC1VIWB5zIGZwCEUUVnWhz
jGLeN744x0Ta+SmBTvL9govou4yrV7O9fQ0JMWwYLj0LBLCmomBQuaBTRhiRTirJtXQv5236kS97
hv5yI7VcqFV1UupJi+/X2/XT/v7h/C5JI08Vfu68oyoXoo2BM45CEFtho47CWxtlAPC59mTbkVvZ
FlpJOjXrixmqgE//T9yVNTluJOf3/hV+9AvadR+PdUqKHUWMNJZi3xwgG5yhp4/ZPmRJv34zCySI
AordXLtDjlBoOACmKrOAyqsyvzykdZewxSyNvJjv9IDwpUmy0gd492DTcqtAAqsQOuIowj04wt8w
KOaDn3GFZ09c1XQPLWaWyDjfHvf3szDa9Uf8exFGY2ZFyfpJBhQfCR3YcIiUiUBlxrgu0CwJiCYb
onuPbJiPNS316QLcqvlrHKqBSzgZHHdgbD1N2EMoUpOw1HrELbOIaeAyZs9yVVAfgzWJZ7KoDZuP
cVXP09h7pf5zU1fiztOPWUHWkqScsWrlBQ1gpGGESgTQYZiHl3LUwfFIg43vnph/ouZcVW7LuRuU
lQ1ee3Jc6K+/z4L/q9xRz62lzqIhnWEH4HENHogL2LKgz0wKtG3UnUatiWmUzQxaLqMTm3779eXb
PMMLSyLEoTSiVOVxIpKNoGSAvI5rC+6/khYMOyMDl14YctFhsF/MNF/Q8d5VTSpr0d8fbfyD3J/y
aMzk6KUMzpxmCQwCTEkjgXRgC+lOa0syIx6Edqy/3mqsiooNWR+l4MUTcNdzf/tf2EHi6bk/pb6A
Er4Gj32EHYgpOUoZEOAQExKtSyc8/C+B+Rk8XLxMX3/38ZdwqAuereI5IhZsrJFFhi1bYmB86F/u
t19eC7LEbJ2yARw/5bAQQCEvBFwPkiJlwVET3hH2oqbnXInM/JmK661pvLytncIFmz+xtvxUWWlK
cUwCjS5NF0hOGEUSnUNfnGosaQvBc7Go6qxGqee3jU942+v14SZWqfb7e0w2XCXqZSx91QS81gBu
Nvfgv1qs3Q86Ia6TF4Jemqg3TXP2cHN6omakkdEGF6cc3nHua3+KEjB1BEoh8JELA36qoqLoEoJw
exSMEpUF05GFuIjN16NVhNw0VNmOimXU8Kyjp0HARu5Ih/4obEXuwMzIvMOADFfSqfRGyfjrTl74
j7aDt9PDWjPAxWV8rSRc4dnX09N+s78tCIZjuE3bUq+fFPVCdtQqMOgQxcHB0hacJs68tcazt4Gx
qvFfgceqnltws9bpWI+w4GZ//7XSK6S8CVaKvWjWKmQwKXjWiNWL9TmB6y5IkCbginvOzXsYSj/c
nwGhghtXNfm0wROeQFSB2bvTUSfBI11iEi3CXGEGKqbZd06aAuOsOSjHpNOr3kvDuIZZm6TwxfLe
Pnze3z9NhWhTVNZ6lmW2vkuxgMXw3HltTReZV0p72G6XqZsy/psLPKfiTEbp7Imaz22Lz2Ezq7rv
N/tpwQ/ALJaxlD18OeAwgIDGSB7WsHfJUBcEF5oFsiq7n8apCOjlOnS06/VyoR/AlX861g+N9lGJ
PhwKkrhKHjwU2JBcgH1ErcbgUQaCgvZMY46Nf49PuSpjOg81OT1Ss6rXBsBuw7atlJCXofqecqDJ
IaCk5g58Gjzvc4qLDrMZwJIC88rrfwUd/HVE8IrqDV/HpXfbnTpuSv/BfTqBVylWPhAvAqOGqU4W
nJigInz/YHgFkJVGJdgFTv1FmdQn+q5qDlbesyXklGrwwX104W8rxgRj3GBPA/CJHHoIoEkzGJNg
nzsSmNGM8r+IsTmFVzUX/Zo1StRiSx1qTJ7+uH/+MlTVz1hhIq7pCK0sxmRtTaMjBMt/kgN2mYIt
b6jopMWuGJKyrN6/OHvMtP20pnCdjjs9VC0FmByNpWBTasP24dsfOzDmT0aTLgjiYImAlO4yx1cr
4H/eK9OJoGSOBLv2sDO5TPPhFpQMDUr4BF/05wncBJNaDklVPHmP6XTCIJQ5fF6dzQRtfpOIiIJo
F2o5+2cD3MSShuuBF9Wy6ugA9vtl/2//bg94w4RgTIUm7ZNkvrMai9fAhAPPKbiOpsRcZEJF8y4x
lSPc8Pc/vA5H/P0cXtDSkiW24I/ebCan/9M3REdrSiqVJbjUBKtu8UTSgH0MHovoPOEyCHCovI9/
0YZeUlmzuDZI4OLN9P0ckYloA/XIGdQQILQYVrNwWpIJJfzyxAjNdTRq4YwvRqsoGdYlqHBxmA7+
+pdTgiA1+PVYa8FohjUWNIOlzBxHeE5wWFMgwnolY16UC5/GmE/NiFmd3FtG9WSt/H53y04NKZgd
Ibaid1GhCooZUZZYIqA8Ge2ylCpmcJldyfSYo4POxqkIoGsLFWwhy4/x4N/ip4/LqiIJfqMC3xym
J2iegl/rKWJ1p0wcbGnC/F+lMk7kXdUMrMUD4+qmkQdSvJI2/ogmwUWBNlg2mIQH7pETjHTgESXQ
PiwwTi6rh3mjGqaina9r2fHipMe/+2GZtBQTZk7hhygz+vIgWW2UvMtMWa+Zc+oN2OnLT6CnyRck
r/UzE9wuC2CG/nH7pVQn0GtxQEoZUdcyldYZ7A2AED9cZQrOjkldQvh8EyzsJ/6OSaxHQs7J5MPt
q5qfFpN6WX/x83D38Dz8uh/+5xTxOlaKFQ3I0MoQtjNYaYWh5s4LnzsKe1cQbpnkF6W3rOc59/qW
z9Vc9WurkcmbZZepsd3W788IhTRyI+zBjnLRJ8Ol7KLICIpBFQijILqoBI2KypAuSOzGsc9vErx7
VRPY2CNqheH6/bC/u+lva1xjGbmS3NDOeJkwXxpehYGtnQNs9QgOoY8XVdseBj9XJl1uVkQrs1Yz
zJBl2f0vP8wDTaNcEnwEO3bOe8mAWLBeQCwhHLMnknZJKekjaMUmItKa9vkcbQbmT1Rc9PpmzUXf
m6P3hFtn/9twUlqco/FXLJPANSgIxEvB+nun8AAIvCnJCwC713rZxmgxWEXI1mzWhBQErwMU8c/5
08v+eagg7og24MlF0ymHIS4CS+mZdx14Oo54540LvCahHqai4EavjTQ2mMkWf/rHLfxDPmlvqsrR
RwygMi3YLWCmgQ2sMUNE6tApZa1mFotLFstQDXRVzza0SNgtjsw32NV4SvhRpWyACRGxV0FWDkuU
vO88fPydUUbSAG/DpFfPcedD1iT1fE3SjpObmzU2K8JrzKMCPusUffSdkyxi2ju8nphElzDvmVMS
x9Ykl6GxFuyO83CsePuqprFhCu30lOj+3YdfFglrAeiR2NaGJ14yfLD0AvckA6uKKm9t8O+VsPZL
Y6l3DcMVTH25OoC5//wCGv7Hh5vhdtGlTZpAjRNlnfE436cObAnSaQtmnI0UNiy9ZMWXc5xHHps/
dVURvg5nl4tn69PKcT/+g9klOhanScOxcxKekSOKq8KeIBlbhITglWdJp/R/qxU53V/wYFo8bI/7
8Vt/NzPnSWmyESLFA3GD/jnIQY89gwK45own2IMy08Wp+GyMam5Kduu5KV1jCd59e364O8J7VUE5
AwsFE3YpILKwVRxcRwG7MXuWuRBJtkqJGqXH4xRzi2R990jA7KHFnZo72vg6KLPnuhL2YPfcH9Eu
5kyCUULgvwDiFyOrIPQRPlnDF5+VySJoytK/1JewmumNzoTVszV/bNvib/pyEB7i8x/Pj/0sAXWC
ySROWBrQUxESU/9BrIOLCv6ocZhiAabHUqWshlsQc9Mg5tRZ6mb/9K20Pzt6hqQcLBZ7MGhhrZGI
r+6wCk1HkObJdeAUh2BA92XbjjXVg9b0DGt/jjO7zAzaYunrVzDrSw1scTSEAb/XlpJO/FE6dYGy
4zp1FKsRMcUdZZ/BSIkkYMMmE9/w6g6DvwLKuvAdgNSGoOZMteoSSmLc/pjUzUdcHEOEKW+aOuUz
FZiGkDGAJlBeR5QZjHkbsJT+4q+3muoVAKb5Y1c1B7rF1uSqhl9//PTx9uXz/n7R//eoPyXhWBfa
Re6wxQiXnUkkdsoGqaUywivyTi0h2pRU3Kh1v0a4uOMnJDK2cLx1jopxiodiHmtadUaoBgJ/pUGl
GFRm9N2AyFoiX+0a+0Kzlvfmfg3fR4yDmzEOCnrqeswkEQ7kO8WudRrDOSRb8L2z6yxitePRFxHh
YlwGnOUVZAa8XXGgt41F19tp0f/x0j/298/7++HUwhMFXhZUWVhqUkqIHMOeW/ANJaE9l0ZFS9o1
Y8vxFsS0lnM7AeLd9dsvUyTQaDme1OGxkMgobEFzcgQZN8zIjmZQpiIlQc+AQs5Gq6gw6556cLHf
TieYL9+eZk1quRxPMKk0AvsRs5IRAbYDuOGUdyExxowlXC/xcObj1ATsGtLf8s3JEB6rY+vNDFYL
mCoW3DlM0OeWKKxWRawhw3NARID8btUbs/kryhsVR3ARcUn51Azl5+Hz/un5cYY2PS6g0ySCl4Ed
5FCyigg7IFDbZeEtdgBPVtH/x3YoNdk1132D637lBvw4PPc3Y2U+OQAVg795zUfgb0F0wOovcAth
P1GQxATrb1iMnghGmHjHutIjJefyRMa7FY+9tQ0eV85BM532WM5QihlAno1IZS4ZB8oUsc0tlpnF
zuOJAnyl4CNkmrV+/xTQiZxXsmwXBQ2w79a9LPDiblGf9u35y+PQnxAnucFkqYIVGyNCZYeORtBV
3CGIQQilQSkNKSXYNa/WqFUjV6TtSMNo3cllAsDCpqElExRtmpIJqgm4/UpiIyiLFXRg0cjg0KLJ
4P+AIAvsQqfjLWvmrCUjlF2LPKHJ0ndaAODu874BgGvBjrEMdIHnqBCyK75d7JIzPHBFfQj5Un2K
U7yCgwt3Kza2fG2QiRshF/bAzfD09fnh29MsORo+lUPiPCnVCdwpkOCwHwIekXMSgR1pbEeEUkkm
wbyyl5WDlKmOOwQfOFcVsnrwquZCtVhbJpsWzRD6b88vuOfHM19b4r4upJCJB0cvWoYmA+t8FrpL
Bt4Q7A7J9fskh80oeKXj9uGJmsdGnoMY2DKsHffbghP4+EeV3o4Rbnl4ewR+ScG64DG4Z7H3NsWW
uhKzhRPV0r6jOF/Tcw7davlcxf3Q2oM7zldO0u3D46c/7rcY1rcH+LfxFWPzFJ0YAV8T8//A6Ohs
LI0QuIVbJmaj312mT/Sc26eH21c1W6LFq1nxeofxgv5+uB3fcWnTa1Wx2pNOoMTAEcSEJI0GOyIL
e3BIhHbRsWTf43Oek3COw9MTCyZti8n+eFTwONw9/DbMs1VECUlKljK36KBHTEjlCV0Ri3gQ0gVQ
Cla0DerleAtiNg1i+mWV9/kCAC9ZdAhoalkM2BZUj9jN3lgbFXa1CvSCkrIWaTetD3+YskQ/bR+H
4f5nUMGnJn6CqWtRKjxUDhoLKYTU2HrNks4KiT0zQMJFSY3Mi1SI9XA1NcPaI5OMsEZSXxFkRQOO
B2zYk1OMSlBrRr1DlDxwf8CaBgfNcJC7QUYdJPbRcv5NCfQKCM90+6oik623lRKmb/jDRxxn3Fal
sKJsrANQNKwaAW3dEe5A+fFYegWD6RQRQwMMw0tOo18Hip4/cVVR2zB0lej7xXdaBQIZmfR2wkhp
IPCVJkUPeZWZZ/AFhZUqZ8wJeO0rPRMRVFo1yLK7VXPAPPX/1ZiuU4yKw6+CqustSOXUReyQySnW
QVCQYczJnAgzLqo3vor8ahPg6XZF+6ZxUqg2/QQ6dfvnXX8tT1FVjEzBEkoL1nJ2mFaEjXQcoomS
CMxw7gIJqd5V80Hq2XvVmH0zdXn4vX885TiB4sboBmdEZ6U6hi0deMTTgQizawJ2ipHgzIdFuchs
kHrydYcLq3bDUqf+ti9Frhne/egs8esx8Fj+HBtywetJrhMMQTmINp1jnsJ2ZmALgqCW9qKw43GG
M2rncHfOgrbrJGO4uFGrDuDPeNIvVVGR+Eexg0AAaooo6VjlAmYPAnMgDiOJPBiTlOVv1DY8nzvi
L7dqStc12Fb3qygv+rY3w3Mp4n7aluUevfExqJiMAplOwGIjiIJhFDaRLyV7Kinw5Fy4LD8B0fDi
cZrza756rGKpddqve7uEdkIunm+nA2ZQmoKUVLFgSXSJm04QA0Y3Ajw5EK6w4ZUzXmmtmHkLVGIa
uKZsXRaJF82qXeWnl4LOVroVgQFVvJzxV8ErTwjToBCg3GKfew/0KVhsw5hMICzZG8kr0/jnOlQe
bte0941Pur9pqdijGVpQ5u7xC8cSz2Lr45+orBKlNBPXRY3upobFdniWG7I13EeRgvEXnwgsZnu7
K8PxyZq/nWnwt1se17inp+G5tGme+TFiLIMQI/JH6XJvRKcUMAjGDaaxgpmjNLNg/kap4mX5AKuZ
zpzqrp5b8LU+xtEbLHjkb3Rru07uI/Zu/nvhcLQ26Jj6FmniiUgCwt5gx0fQ2CYZ00UngMtoRc4X
hd+PM7Q5O969qknfNvjhS0TYv38Mh+WYUtnw3SRGwcJUXc6YPw9WO/jTsJNsjjxz5QW5rC3VafQ2
5af7Ne0N50JvFFtkvuzvd1PEXmiNxnwJOjlnGVOxUyIiZrwCxaAwLSg4bBetcxavgt2chq2JWmOk
wkWzjFL+sJ0jzipTPnllDjklKUWfYFklQvZ7bPHBMNOZe6xMj+D9XPTJz+c4I5u2TbhZJLj1WZgl
GvuP/f3nR3C45ofrLBrlucN1xbwL72HDBjBkaMiRgDJIRlyUoHYc+4zqPdytqbbrbCy9pcvgycfh
EeEnEEZp3rjvyADRMZjIsYEuduh2EVMgInYMD7AzvTPggF6E3Lye5kzMd/1gxdYNXWd16Bu1hALD
crLtbcEsP+Q6ji0IwY70Bksisf0yvJAcMRoC/CRQDMIIS3R681QmfDhfGRY+1ORuGzvg5oY2qt8+
345nR+Palx+ozpi12iMSALYW4k7TzqOCBpUmEX7I6cD+18dI472a4DXUGlzcLY22H19un/fPDy/b
L6vOeWi1H4qLxh+4DyQIRYTswO58qJRZ53yWiMxLwUcFP8ddtg/OT1ttiOVjNYuNyjA98OU7+SmW
dIORj+KG5IQtm0EzmYInTNFbA8sig0BKYDURld7/ROynM8fHP1XnxmPp84qnVbOavw2Pm+Hx4Qk5
mxKAvNACU65L+IybBO/GSdUl0GaY0ZBZej0QfBy0Tejxbk2ubmyLYVUUOkLbvNzvn59GYJtf7sds
+RrVxnjJLOsyK60IHAIHMdOZAI6pZlETyd5GtcGRX4G0wdsLDkSLg8kTuC2ICRNekCo42mPLOJGi
IrKTFHHilaCw3CJ2KWROvSE0yHbLuPmINSmN4ijDyEbJkZSHzX9vT92/VEkYiFJGaYjuaPaY9Q0O
vaVAlBBRu5wUyPVFv8T5KFf1TNvG9FRP5/MlHhoqXHFFiJ6QxS3KA4bhGQH6kVtYFo8928HhMxTc
I4RZO1ONtxy5JkzrBmFmSmANX/b3w9Pwnw9fh/v9n6dYIkVXWVtvgsISUIKUBfDwLfYbFUoSTS2s
UFzEHNrD1RStsTLw4tQA8cuYJt/1T/enMi9ZvMcShrGGxiQIhmHwU1eYD5ywG0QwjlIZVYiLftTr
ERcE2RZBm4U2/f3b9vogscDW6D8P/+zt6HobRWLv/Ip5WamVjgiG70h94CNEbJNmtyXt3r0gCjSN
NoEqkN3bf3/28FFIgPTupOWhDQMee4zt+bI9+yTthC87hgpyA+PHmYPnXGFqMUtxDH4GKgidrCCK
1njw6FntQ6EoJ6+dtKZPEsOGvWcp0jRUSNcxcClbxSPVbNwlUTGiSeLRpIugjbYin6xtDadBQ3Q9
HJXEZHDn1FsxxzyYSFTJBTUDFYO5YCiCwVzBDDzjDqyDxuuGrWFwrgkKAjp0IRUFq3toJn7ilKer
54kCsbDxnd/BKHPbOsGRednYtuziZihwSayOE7YxLH8mmYoIY1yd0pN1wVYtXfQ90QNQSM+CpiI7
i5OnA9z2ZnIRXR2DWIAkAxerLcnFU0dc3oH5DNVkFbqLj+2fdxANRqu23jlpjtrTHL3xWlqAsQgP
5m6TAAFnQasuDDWgm3B5V1Bh2G0LmEJFNnnZNjXLwtMh6O8KWu0htNvQ83z4UPh8lmP69Zh+36ab
ila0smVqXhaP7Wgu1RWbFwSMQVItC1TQlHgFXclESZEk62NenF0kA8s13Zc6jek5KcXAjNkvUXd9
uNrpKX0H9XKzVXEtWaQYoyfh+RiSxJvQifCWZMAYytYl6G5/x3EM5TOOm/1drZAts3j7UjubPBz3
e8A7hVbb4W6Xk30YJ+T5F8mKV1Cnt0OG+WhgGl6Eh03CcnEUrzAlrB5MGbeKMP8ewCwteNvGUyKW
ZcwnJojgb5FMidAuzJMiyIumvIv4UvXC/6seblqtAg4wfOhrCHLdhw+GvLLx73Byj0uC/mht/uJ+
4ird/SI4/cAn2QtpvPamxM+KcHcDs4mJtCSHJN/G0JndCLdXwqdrkv9EexIH2bEIgKxjyjL6A7K4
gsATGT5dc0+HbRE+7xKoAJE31YoTOic/4SF0U3WdIzjqojYerKLCQli7x69H795fmwv4dT+be6s7
wlX//T+/zIbBHry/2FN7tb7zyVWapXyUhbskj5L4mnA379dABc3T+gdnRsX2B+Z08g9hhOLbc1FB
1m+bG8LZc4IZ+vDtvMC0zT0woq6pJzBbZgRGrh6YnJ0FU4Lm/UAtGBVg0E04hfeZEA1ieoeRS5i1
V9GH+//9IEIDIxHOqaINwMqhO/CR4TuhUAZLt2y1pxWYOXJRoc2Dzw/ks+eTTXm8J7Aigg70hDLa
xiMPwVyV+bVRUgjRDbVDW33V7xBQ0TCO4TYn0FBcum2J+zV3yw4FJyaWkFUaDXxXvc2ypblYrOxR
vRBFYyLXZFG5gdkcw0NM3obkR6INHg1gkj1mZPbDDaGK+AERADZ/KU0eAVF4yxPipS/ZRTV4+LrY
FklJVYSL/r1oaBfGN+1bMl+b984gExR1ItY8kBSAKUDZLhgUKqNhrGBADR6XAeOc6Y+YEyILbdV5
Sp5xaL1kn3lQRSe0waMTLggc0zcv0CY17aHUQBhvac5n40BKl29BsPDubmcOiPXgB6XGRK1pEwWE
8Wff/HF50/WJVtMmiQizvvPslTNKnaLQNm171jMMGo5SrrWJ0dAGvK7s2r4U1SEJff+mIv1v5t1f
+aybGefCRJtXUqAYFcwfZA9WLe8YhNIQML2GSVdtPhgM9w9QSwMEFAACAAgAFIsuSi3dNJU9QAAA
Sw4BADUAHABodHRwL3Rlc3RzL2FwcGNhY2hlL2ZvcmVpZ24taWZyYW1lLW1haW4tY3Jhc2gtbG9n
LnR4dFVUCQADWM96WJHMelh1eAsAAQT1AQAABBQAAADsXd9v2ziQfj7/FXo4LJy2ckiRFEWhV0A/
u71N06B2u3tYLAxZohNdbcsryW3zcn/7DSXbkWQ5m2z6UsR5qF1RnPlmOPw4Q8v0VZ7Fsihsrf3n
b5brj3KVyHySS6n9SYXA5K/BVVTedG+Fv/PP2WKzlMX55w8Xn94H5y/O2/0H7xK5KtN5KnP7uJbB
Z5kXabbqKkADL0ukNrldy3bTH5apm1QbXkZl+lWeAboc1GhXHZOubsubbAU2WNTkfw0+ymKdrYp0
tmiJO2Lxp0Lm2ju/i4khPBj4USnPJ+myA8tAmOsI65hqmNsY24yOTGFqOrIQGnwYa312vo9iDZr+
0DAaYTwytSFmb7GBjTMAvM7y8qAXxgNnla1ul9mm0D59amB0fQd7LnJ0xAnSKQE4oRUg3Q9MJ/QQ
ZQ5zBoOBQq4536IvUhunq1hqbpaVtsY4QkgrZJytkmIwGN8WpVxq71alvM7T8la5t5RxWUGRqwjc
mAwGXh4VNzLRJje5jJI9EgR+TYt1VMY32t8buQFPxdlyFK3XCzlaRulKL6sOg0HwPZZrJbQ9zsEf
3tR1/KnjecF4rA3H796Og7efzxr3q+DYD/ZvwcfL6bvLz87FO+jk+x9Vr6jU0HfU+iOoIeESDGpp
9D58vBoH08sPk3fh/wwGn99rH+U13FlolzLKQRhB9kDX32gD1WM6nQR/TA4mxVYTRoY1j+GNfndB
UHVB+1PTiIF++0vL9e/n+bfv2vj9f3kffu+ZT4OBAy5L46jCO17LGCZTDIMyz/JlddEeeB+d8a/v
Lt9qk2A8sbWbslyfl7Ioi3NwdxzFN/Ic7pbp9UpP53m0lLoagNFNuVwMBm8X2SxaaJM8UnGwmc8h
6oe5/AoxJ7X4Js9W2SK7BgCLXWSc2QNsUZhRlEKYjRC2OMxFL7yU5bcs/3Lgjv+oh4DP53Nh8igy
mdAm3hUM32oFHoXrs4gILClGKkYgQEo50uYQSwZ5pckcmAN1NVoP12gRa07IUY1gKTAHHvUrEtww
H26aEMbsqKKijPISZkxLgWFwTJ7quzli2Oz6Dot+34FGSzzVd1uN9/rOIByxp/puq6jPd5gZ8PJw
BbNk1mNJjIyEIm08vtB+jSC4bxQp+h8ug7Yui1P8iECYxdb8qK7KmHR1XSldyeusTKuJ3NXIjCdH
xlZjJzJob2SARm7gp0bGVuN9kYEFQsL6Aabh+MC0fsIAjbCe/gDTlMb7TaMWEk8N+macdINeMITo
D1CgLOlTYJiIcvFkNkcslgeDg3oHBzQykz+ZzWuN9w2OYWIunsxIW0V9vgMzCH14YJsJM6XmQRZU
sUEi59FmUYLTsi+pBAVZHl1L7Vta3mjrOrE9n21WyUJq6T6pfqJ+ZGqhUqr0p5BQhb9OJldeBWC8
1V9AG4xhh54erYqA55uqLsf3qRrU2SRkkdv00rYfmE5C3tlo+V3OPMh8+pBV+RgVVhSBE7b32XYj
2fJU4vRrVpS2Xciy2zD8fRLa9kc5vyrz10e7v/nllzPtpQY5fZ/gUbxe28Qyzwb4sagJgrThqNq3
ebZZ23aSFlFRZDEsL9LPYsgrV+VFFkGhM9x3bV+v0BqcacNNmS4g57e5yc4GxmPhWQmR/+TU/+u7
PFQAqNnRTx6nPza4QIl2xEbQ3HFGpdMQRwbpxmYAgXYh/JaWF/I6im/7IHDToBGhCkJbFxR7oL/v
coUCQ20wbDeBfgtKQfZY/cgSQtP/VKqiMhpnmxzy+0RGi0UW/wWqIAkcthpHy6VNCQSj+UhVVM6Z
Wav6dfL+4nMqv13l6VcIOi1eQNWktGGGKnW7G5QyjAQYxh+pjVFGeFtb0yyOD/QYloXPBhZIWqSz
bPa/8cgZJbfw/h7K4jLiUUy1YbQvtFdQOAEDxfIMInoDlCXBuEJeZdniCtjLttfZevg1S5MXVTxx
cyBapqlYDDMg8LqU66q04hk2ZtzQpl7YFZ+tQSKD1Qw1BXaFdQVKiWk0Z+Cry3FHorZ9Xw0NNQcY
H2yD9DtnW8UiacKA5pvVBMrMYVECP0+n2LZnUZHG06LMgclfxzdR/kq7a1T/n5Z5lJZF1fam2VgN
YAQg6ybtDRi6KsqakCwCo9rGVw0sxgK403gk9kRgoSWtHsN0Vb7SlOZa7YtqDA1BjD69GGp30Ese
qXeOYtzp8R5Wrn7dUPWgXt2UWKCbVsEMUZz0hnI7EGbCNBisplXOomTv11dsVwsmCCiqzZ7pF5mv
5KItsynKQglmEoJ0qlb9v6v7c1lu8lXFXtVCdidtXS/KLXHNWUZmkJBxS9vdOP32d/1GCYNRrxae
R4mDrATXdrZkkb3Fxr2ZhPLptlFfRiuY1vm/cBAkctqXKhOd/p0VLcfspPeMWssSTKDuZdp0d/90
eZ1P09XXDKpTCExs7lzzcIE0iZOOwL2DmLF3EHl2IUGfncXs2VlsPjuL+b+xGKMILC7k8hus0tMi
vV5Fiz574/vpxjKxMBM0h5xplRULKVX+goXYmRm/fDnC/QtXUwqzEEEGamQJ5U1abFkLqjIleDrP
8mEzx1Ab1lD6bPIqM3q9yKDeVP80k42q7TVevFIJ9/Zv0c45OOtUHf8dfY3GcZ6uy7vio7nAE8i5
pZxps2WVytj2rzKCGqyII1gIrmUD42aVwsIzhZu+vN7fPS4BU/x+U8rvb35pZ02Pt0jZUiURDCq5
6XSppE4hN5M2FrxbyzzEsMSgXcPAVfEmVx+7jXcmVqWu1dVIcLd6eYBGyhC+0+gUt6t4EhUNfykQ
rzSVbmvDDrIXZ8OzNypWVJh83KwuMkjMFTbBocTbiYK6ChusW+08BBqF2vJHQAtWZX57lUH6N3yK
uG2q2imkHmKIOUsquS8agTTdTq/pOs++375uTL0NiH1dwwC9T0P86kkOfAHhfVdpCaINl3KZ5be2
YTK+r/QeQc1CJHfUPMuS24pKcVXAPVISju4k7fNt06pKt0cSPMNaV9AdvVt2M2+9HH/6eKG2KeuP
Z+udg0fzfxzNof5cRio7LK5VqbbuI/+HCCIzshek8kvW2UP652KYUQykM4VqeDuFxzL/msZQMsU3
V1nlDgMbHZJ+gFjCZNwUCy+VZ5nZ4cUHyDIkUXugd5L2n8+qGWl2aK9vs7S9TcpRZMIy/mdnOIf1
eJ5p01wW1V6NuqBU2qqAB0d1WOyfdwYMJk3l3ctxHU/TOsam09oXuGKTHzOJrB83iYT2YyeReHZZ
IUbPz+Tnt8mBjedn8vPbt8DPb+MCP7+dC/z8ti4wf34mW8/P5OeXfRnPL/synuFHTM8v+zKIbWvV
EzHqg2b1XHI8uXse51GOQMnMBEes1bbQzTT+qnai/6UXIm40vKCeXZ5upXGTdzYk/nm/jNHI4LWR
tW1QoCdp9QS2XaZLmfwOsuvHgqpt3F9eaUm2mS1ktROLhTasu6Wr66saUnH3ANBj95pJQpBRg7mK
8i8g8yIrbXsN7/ewosXi9t1yvai2yrafLb+q+4zjbC2Ti2g5S6LXM/VAwPBst/vdd0u9F9e9RX2N
4Pe0vPFvV9EyjT21o62e4W9+dG9ipA3vIFYWm4g+ehMaW/OEm1qFtVK+N9NVu8y2GthPqzJdvK5a
LwDKm+H+7SMQV0+qNADf2Na/2MDGUuKkta0636zqr05s37/umy62Xc2yO+Ayv7NHGbr/iMK2/3OK
+h+g+AGC3+y2X9VuNcRBrgQPz+pnlNSTQx3x1bAaiDx+O50RaxfIB7vi+y1eDGw23DkwWtiY04Mn
hx6iahbPa1XfyvnkuDb2HDeUDXqi8BOFnyj8ROEnCv9ZKZydKPxE4ScKP1H4icJ/Vgo3TxR+ovAT
hZ8o/EThPyuF8xOFnyj8ROEnCj9R+M9K4daJwk8UfqLwE4WfKPxnpXBxovAThZ8o/EThJwr/SSmc
oBOFnyj8ROEnCj9R+M9K4bj1NXUvHKsoKUfr+ny4f/GYPOL1CSULGTcY/DHf2haYsqj6BngN5n19
zlNF4Mbjn40/Oizkxw0L/cHfeyaG3ThiM96e4F6dNPqHZW6PctfUkSRSG5pUn6XlmT3QtDz6bh8c
qI5gEPPZsYb4WEPSbMBoziRWh+SrlvRIl2LfoOxkarWitfb1QQNJqh49DbFSouVWjxI1+XPRwhVL
PlNn5Wo5Rn2AVQNuiuKx+ha/IMoSbByxBJO2krlFpFk10GNK2EGPRFbuStetlt2Rplo+X3S0Y2QA
LcJ498AiStbgYnvSu3f1qT4W3xwEeZ7l1VH724Py9z3pYKJOiLjcLGe7X3fAdDAYuOkqym+1d0uY
VoU92B2K/31/Hr6ma82Lgs5gcLSXncP0huhMe81M1+OmY+nM46FOiGvolmMR3aGOxzHmgYP8N//8
KxQtdcm8B0MCELj2EmbU9thQdbLh+CZdbqdZhQaRkIUW93SLBZZOnJDqbgjvmAicEPu+a7CwD80x
qW1c0jrEFbGkD9dmrX4YogmNmkEYEEJ1HwVUJ5SbumP5jh4w3/csxgyO3AdAawpuoYvmh+gIn4v5
nNyzYA4hK3sJneBlhEf0JQD1ELKQ4Ew3LEJ0EvhUdwyEdOpRFDAnDAzk9QFtSx5Vv2Ogvi11vv11
jOLc6dzTxE8kPhx1iiPUwV+fP9qHm7LQt3w30Kmrxp4Ypi4MwnWfWhbnmJmOg/pw1xL78dZtTZxU
kEM/sySmhziPOdgNRMjDwNU9iplOPGrqrucbOguCwAF/BwEzjgA97tltYxMqZxY6gMq5yebz2dEj
XXvwcpdBFkUM3XAo0okQELmOKfQAQ9gx5gR+SI47tpZ7n3vrOwY1QrUMmJQb5h3y/UWWRBRWAHWo
pjYkJhoZBsCzLJhLJPR0z0PAQNjzdMfzqM6ZYyHmBRRhxUCbIldz6Vz1buiyDCJIV5e6yBTldfIW
fyNLX842UCJcX6tzsod4pHpi5SVPEAObCJQLD2BwogsEgISFiRVYhvBc5aX6N1vOL9JZDhx8vj2H
N9x5pzjv09Pvvb47W5YxMz60zGRSEZZKV1JI/r+OjB1LUQpmhIg5yGEOzB1H6MQ0Ld0KDaSHBvdc
3zFMiN6GN7tSWvpNE/Xo52Iua/3q9PlcFsqeHQbDUhgsElID+zrGzAeqZFx3hOPo2A1chjhySEWV
DQwHkto4eNSDwyKVH5ojvFxmK6hxbsAX1bgao4q5XcvkJMDgDcF1AgSoWz5RA80dj/k0tNzwYSO7
k39sPHftbfTzWQ/6ebIbxd2Jf9lqnl5vz6DbuROqrBFFI0zADOIHLvdDoZsWggWIg0GuBys1wjDI
lhGGKAwbXq3Fnt+roIWTI3yI04qjjperrOPdhzsXwFQekXoaUVP526HE9BnAM2kACxBxsC4oIrrv
mSTgsDYZFjv0d8PRByqaXt42tqCLiB5Cj6jVoQB3AbMty+r4oCMTOlSvczX/KeKGom+YKT4EreEB
ahcLXRAiPI4sjhi+H/WHvfwjyO9uaKGPGOtBr/KSeRUg76vjZ/F+inEVDI6H3NC1dB4AkxO1bDoY
1nweEkHN0KOM0fYUa0lp6+dmj/646z11drv87IR3485GaEQM6Fi/UUsjhpWasED3sOmAE2GpEcIT
uuc7KLACw4FE6SFTbaur34/bxrYNsTi0YQb5Uzt4G+fPb087K0bOZAwhzDl0Bt+NFIkKzkUgsKkj
bkEq4jme7uLA00PTcj0XG47hmvfGQp+eXluafSbjI/ZOxi1bZ7RnwUuSpJPBFDLeVL8qNuTV7GSc
ED5Sqy5YGBgBYzAbIUmEpbYaKJe48I+LXbCXgyfIvRaOt9L7Ie9am7gJig9nKSEs2sX5UsYR6NnF
uSnMEVNQQxNiHbJYpioBQkMXKhQ/1E3hMOIFnuBOZ0VrCRq0tc16IMTzI66b3+1zDM3aiQwbJoDy
HYeGvo9gwlngPwSrmxuYkC2YriuggsEh4g/y391Wyv2evLuvbVCCegxK4k7cf1jLlZ/mMi4zKByH
1Q/hKcIWKtoJdkzu+AxKQM/QCUOQPJg+1y1YwkPqQpYr7o/2lvR+M1q3dCxIeiyYzzsWjG+ivMrY
KDVgPazJe/tWjYfvGxbGnm4GngvxHMIaH6glSLihMBl3qWM9hHi2ao6MRd3Ygk9RzwBQRHdBXf06
3C6kuYpnwajlOIGAdNyFdIQZTBeBB/xtOBxqCUiHKe9dxxuiOhBYHwS+g+C9/UPtlu9/lGEogATU
IhIyw3MFDLwLeSJU24IomjN1C7vMIiZnsP7dO/Aqg32bR+ubND7Cbx+35ykW54dA2kbgHiMYSTqL
0PaAx+B7KVdFNS/vMngv9IX63TpYDsEmInCguyiAZQiyI0Edzjxy/wreFd5vUveulhks6iGYSIpO
NL+XSRpNsmwxy77vTeAEjzAbGUiNjUkcn4QQIC68AsFA5WY5QugWkD8hoUG98P5J2VTRb0jzjpYR
aj/uwIgZnu8DCob983tvkcrVfosEY1GxNTORzxFwNEcCqjkEebb4f96uZTtuI8nu/RWz9AbsfD+W
+dRojjzWWG3P7PrUAyXzmCJ1SMrd7q+fG0BVEQmgSHY3T29EsgBlRiAjI+6NiEQZIABI7GsCgA0m
v+hM3n1Yl3i8/fpoTQspWiWWFBQfqvlKnN4YOrGjKhOlvrAjPGErDjfigisdS1kFXot00r7GlxyH
ftaKGpF3m34p8m5vT0zhb193Z09i9JVmV8S2tMpcCpJPqwLbRyhyHhxHWm2FqD5zt84LzsM1QuyZ
XQqxl+wsxMPN4xMY5SNgsiJlnoLqeI0Az8aKLmTyac7DySlu8LON0dNh2vnlCkrYmzmdf0dfWTpl
eVF5bAyJ7R4B4iVQAUQAIiaHaooPniv2rOFhxPWlwoVGwl65pYQHL2aWtYN9frsGXr+iUAsPe0XG
RdkEI4EUwNItZTsQZ7FBAG60VbYGHkV4bZrh5/eXEws/v/+uFU+uybxdSZKcAWv9VOgrNh6wykLI
KwINtENOv9OyVx1tEAgbCWxf1uBB9EFKsgZMw77x1ocXA8irAfJJngs3Hq/O1N6tqX04GfNQzPqU
pjH65MiEdD7DXXXRFTiyElUXQqhdjSUXxlMuKbydI2uEmKqgmFgmP4Av5n7sPM3I0xwTQHhQZvRq
XPArqQbk75mysDPERkQr7BMJ70b+uuZamYjAfD6/mqIN0zzD0obrrTpqRR2uzGlF6t3t48fN/UN/
f14Q7QaIJwBSfSiqU9hC2Dmc0jgWtpdrTsB4xtX67yNlDbCZC/1dq5xd0Vi7M0L88vXXM+chRxZU
rCIZUAvy5xL7yWfAccPBpAtWraQ6y56dR2gnNiuPWunDbM//5/szEIGrGva4Y3awFWnwrJOCmRhY
vlTYCD6x0lXuouSZF22ez+Skzf32Eo6a3HYWYf3O8+VGPbWSnaQP5y5tEIHMSNFO0ASuXDUlGyY6
DZqLvS3gtyyh3yQR7kXiTuZ/Wq/xWiOqkSsrAVaykp3of/k4TbHQioghxvFhRWwUBiAK8pYIyeGE
OlCbjH98TKxmzpx4fYLl47MZlo+hVUK7NSXOvpRyuNc3/f1fnupmhkQOnCwWSKpqQoQOrscZ5jsb
AXiVhu9JeZ3vzAdsxdmsibPpZ8v//sew2/U3Yy8MnifTI/UdfyHWoHmsVij6Hne4FbB3+EMD6MJY
Mpppgy3zmifaTHQpATi5pVHGraTg8GG/ZD/10ykVoQbY45QIiLamAyOAQVQhiE3WrmhnAgf94VW8
RHrqp4sYtTbQR/ntEqEqv+MnX3ZMNT9sbve0m0+FCfDNY95JBAPX4WG11hHlZLpzQBCdNmUAar5G
91wSuxl5KppmhyWB1JzzIbWDm+nN/je/X/mzbQ6paqxw1Ml19LW/5OXAskzmHYsCpi3h5uoMt7bD
NBKAri4l0P28TPHT5q8JD/t+c3X8slmsJ/fkdccCDlfeC6BoxGHYoynYLkHzzgNCC8EKx1NaLugU
SP1pPgOu3j4SNvrTD5vdj5+erjfi2+0yEaMdPwP/6XcKARGOCNDVJEE/wEuZRphQHsEqJKBuZSzY
XgU3meWhJ8N8187EV6YXZ9PaPny5Yqfp5UA6CrkPlcAyIhYP+LmLpsROZ11DTFZ4Ydq5J2O0cwu7
MrfcrKDjSQ3hiTEWrRKwCUiPRtyWDA/AZ/gQp6zIMXhpeXkRB79QPWhuaaWX2xXp3Tx1km7uvu3z
3e7hJDl47FhZ0jV7YKrcMY/IAhdouxgRVLTxooC72SrZqzjJaYYLGpwuN9KDNy2l38pzVrjePdz8
ZT92fp6tz1wJNQjuc3QiA7yqCCyrAQmxa7tUmGDVU+/DLDW8HK0RZqeWZQS90+LkRI5e6Pbu8frw
xxNAZUORjtKQysVcpOpYtcBusArEkVq7pK0r0ntnU3rOvU0HbgXbrOyO3cacBPt2+9fr2/15e+gr
WlegnKhc0R12ISV2PaSJWnUJBlljLKACclWa6WiNGHu2jFN6b9TM1EZLSdOCIxkdHxAYfgxVf2cK
5seWNdTpozzQV9CIwggBrCTs5PR8An05x4Ws7fLGViezDByGkdtuagK/XO/7u+dTdskmYThWOxpN
zUtw2qLYjpuQQiYfUNWzKk2nWNdlesdUCcNXsjaGczNrFfmwuf0cbjc3fzxcD25grAwNP6EAdxl0
DXQ+UGVIOoo6VoWOwYay0uBuVr85w5qKdIEsT+5oleZrSm/UoT+sfZfe9wSOCYjQThXOSpmBlqgM
1skUE9ikSF3JCZvGFAXG82w1fbk7jOBLdGRkv5tZ0v9829w//n3sLuIjGlWUUBlqMakEa7jpjKT2
jQjYHKk7T1kTq8myahefXYKnwdcf5tP1RnR5kCuiH+YAdPiy+J96amHr74+9bE/lJMspH8m0A37R
tgOJzXiyDmHZ4x+muK0mSsNzfFU0WZnrQmBZuXOm3TLGGOc3s93xrr87me15h3PNr5QfTSY7ZzVH
cLQSipFf9zwDflQTEECrN9G/RrHJNBcSjk83TNWwfrv0VPThCaF9uz2buvBDUSzy4pXtkrV6zCTA
tDlsq+gC03KVlQv+f8W87XYFJdm9PJe6rnffKOf5VGfSeHb0+MiunfeRg6ZIRz1oGV7FJfxTERV5
1lnoZOdtSc1ojSR77VckoR6+Czkxsvf//RD+e5IRYyDU5PRklDppBCJbE6VbJPG/xDslRQ2K55zy
y9iNxr4M2+hqK/9Or8mvT0+SUodjm+X17eefH69vnoDPaIohsxySC2AFCJySWdt5D+bqQ0lwi6AP
YdZhdWHIqViObZdpCsf2btap1Jwi+F4K5Qanyo8pCp6SdLXGrkQLUKZY7kKi7kPqZwxch8TCc551
Onwr3t6viedP4v3W//Hl833TieYQdRPQeQeIS76owJ3KDHbsXYKbjaYWtirLdKxGCO6XPt7xnTgJ
8V8fy7un4shAMp0I1VJBPcpCRaWAZVOAh0mqIBwlbVL95/uhmkTk0+yt0Du5JvT2ZG/v6v9Rbbvf
P9G7wcywijIC0HaM8q5gWAyuvKqOx8S8rM5a+0Y58JkEjfR+pQ2SPnymdvEf31vhQG4oKA2/EEnD
whfq0y2JisJCCaAbcAevowddRcSK7l8sVkzvaFXYsRUVqCy8HRbgp/cfl+V5k3wxCZjEiEodaTCe
UODDtVFBas4it+Ety/MTIVrh+82a8PuZt/21v/lKYVNe0WNXlMqWOgcFTtSxOHSWBE4p+9Qp5plO
uapq1JvkjzH1hdQxrjTKbFay8fhwrszD177f/Xp13+/uPt9et+SCGt/GPPnwk2oqRQcP59ZVRVkQ
QS0VsSCaxGwYdykpXd5Cz0+DVD+tCdUwnvltsyew4sE21FXcoNSP93ePd7u7m/jtcOjvsbCUNFVy
KFAAPujku5w1YVQqUFjFu1Jq0kUyoOfyGhzUzrCuSntPq4c+rOhhNsu2xU9j0vBcLzac+DrFKi2s
AWxnY+JIAtiBIfPYKVFY8CGLUtwr0+nHSS4m1I/XWxUcX1HBzzM37/rbfiSum5tPj3f3iAZUGRh0
kSMgcMkJrrDTlPDUHCxN51OpHaXhwPadTq/FpoupLmHUxY2NatuV9LzbGX6Kk7//cP1wRqvayKHm
CorDRbW5q0FiOSrl4iOoqMuIOFHwktILBPSUX+9f3Eu/9zsMsH5bK1+j136lWRcfnqt5D1+vb/ff
vnw9R1JvhwViHhjcutqxCi8oqwIr4gYuwuYK3qlFSq5FbO1IUyG83i4frrdmjn83v08bGEeD4die
V7AZsn7FY84MgFdrqvENpQ+qNFrOjHIa+/wFshl+eal9cXpHowJI2VIFt+kXPf33/dCn9P5HxHQ2
9pkr6+mRapu9SLV0xXJKV+C3gP0KsKIynoY31tcX4+Nx8Mvx/HhDI/xmv3ShfivmldXNt/313aBC
oN/I/xwVoJ8ESYLNqsLUmRGRqDLvEEdSl8CgjcqMIXa+qMEw9mX5h8uN9Fu5Jr2aO85FFBkzFuJK
XNmhIilGlBIDpPesA6eTiPE8dc5WSlvwgu1cK3tdy/fqdK+Mb/N0ht/aFRUP2gyZoda6ws8JSnGE
htGhjr8Np1hAA30KnUkZlJVp4MUkRMeEc0Fom8Yd+6pOHUzyzAr9nBrhh2TFQvjDvAMqXz/8Fu63
14/35w0+rsvY2gmKLMA0tKRGNgFYEizjXc0l66i1ZC9U7mejr0s/u2mqxQaMf6HF5rAVy5r3eB7w
yg8nSJi6UoMCUnFe4SBzdtjc2AydS8Z1yfgoBNNF8fxSLvLCscB0vNaIe9jLFXH3K/2n4wGjsQZr
BkvJxosIa++o7QmOyFPzsaidiDFYsPSarXplw+Dl00XHizOhl2a+ZcfO3xbK9bvHfj9UYM4IYnL2
TUkTRZTgpdRAhwjXRUbNpqxySf10jInXIrrFRJeB3eLWqXJbzcRSOXw4x3dPIX8M6XQeidP/O/5J
fw2FcseFzgB4lROXFQZ+CmGv1pQjZkrZmn8HthivNZralXBOH64cwJll1xFSHMUTN+SEMiIi1o8r
QQ1rFSSkZteVkDLAISK6U2+TvV+5sdHHryDzrTfixHbpCOc5fXQ6Blo5k1HU2GXpEEdcip33InSF
m5hTZCyw9WLV02itECsAY7tjfgVg5M3jZihp045WfKidBeGDVp53hlMTsEV8dgLwzalSWKJ6Y1Iv
hmYa+Jmzn7jaiLw3Kxa/3/tDvz122ICP3v/x9fHu/PTk0AZMezjqxDQ8TQexGR26DLDvCIHhKWH7
QSZ+4VjBbNRWpP2S+297fljpdX042cyYyKnXN/2H6we4dgGXPpDHAePzLEK2NnaW0DAiE3ak8ICf
mQUpAjYpT2/XM9rKcvlYx9M9jfoHtwzF2wOdLZbHoxXvbx/7+8OGZDmtCbdXlH1XViqpCu/gao45
2sCU7TKCFxMqFPPCcYR/xOEMKcLX9JouBG719WZF36FhdtAXcH6Em+d89DHnC9iaY5Wd8gxA1mIb
e+Go3MyLNMXQSxL+RSbRpKpaOaYq7JhbtrHs2PacoP14+3mWnxXBc0sAQ9GmkSEj8HHFO+oQLD7w
bKV+o/zsefJGZC6XCU58eD4Amq83n2/vHh6vdz/0Dw/00o/Z2Qs2HHMWSkYTVQeeDHvTGmuQ6CC4
DvD+AnHcz9phnh+3FXG/DFE7IebwKBRiaUMtkI11CuWFVaKrjo7JORO7oDQDv0/CcRDOGtTbbfZQ
LsSr0ugi5JouWs3KHF+Gd3Od28XsqcdDW+VAjEkncB2pEoBE5DB9bQSXXFhjn21hm47byrWSWtiJ
7bkB68/va52ZrgR/9D4Hel0LYD4YSeeqwfOVVlWEzySZeiPTfZq9FXrL14Tmi+T87m4zdLoNecTh
vQ/wiM4GBHwhKSOiifx6GIiX0E7IpC1/wTYw5qXwikutnL1ZkbO3887FfncNTnkuIg0PGeA+gHx0
mWrZsgLjR5dKB4AgorJJFhOf7VmcjtkIZVfaaXZ20U7TbIIfPz1X5BA2cRFBQKyjlI7LuRsapHLS
EXYJ2JvN2224J1kunPr8tIYPd16t+DtPG3A7XYv97cPD/qmVWFOVcWgdYtx57x3AA/X9cZM6gB8N
9uVobxrLZX5uPSbjtmKt7T+v53mRP6fUnBbTpUQBXuGpNUDSi3e8jaUTIkVXOI+AXq/hThh2/SHi
QivmSpV25/d85r42D5MSrTyhRMUrCVU7HimpUTnsI4AzhMC1tSV71xymXjy786itSPslcN1teL+C
EofXHY79YFiqK04pC6AIfSXdcOpRmlSH9kmbKR9vuiiM7LTJ2RSIHF1+0Xw/HKe4jLxPdzRKbFYO
DO428tyA+u7DrDpqWdagVbJjKlAgAGt2lcOLmZqE9k4L59+oOvph5aFv5NpDl+cw9tNmf7253fWz
kFGL5o5lQS9nGUoeCVJ71qUK5xCH2r18o5DRSjATXq8JP3fHDa84Z9RHyBkRMkJNA4EH3QVfdNEH
6udy0pgKTp+ffx3KfOiZgCsgYbOZE58ffkifhqIn9dPqMdUP2lhjgWRaVzrixziIOEU3Fnm1qSJo
mNd4BBr7wsldXGml3a34hINiK2S3Nu80GJJuMFYSm2deKYHla0mUPxCdk050IsOfWl0RUF4uN7+E
4tt7Gh2oh3+uw16YeZNWE6DGuumxlY5LM5yVGX8ZGrYiDMQPGVxDqWk4O14VeHF2PASTzQtHQv+h
YPgky3PnguapamjYr6jt5jm8VJ99hwNcutd07FaDXFLlLHcgNeCexSVtQin+hUrCK97hMNW1vuL+
2U1TrXu5XZbhe3ngM4MdXo316Y8v27sbaskbXjbDhzfNCBmUSFp20YOqSQddfSmiUwmYko6G6fiq
ssN0hgtJ7skdrQ4HsabDZubDbseT3v35rQKnqOw0UQpJjRLGMK9zsp3R0lMpSwBOlAJOgYiiq8ms
OUax7BtfnWMm7fKUQK/EYcVFDF3G5NXcYF9jQgwbRqjAYwdYQygYVC6aXBBGlFdaCaP8y3mbYeTL
nmG43EitVmpVvVJm1uL79WbzeLi7P79L0qpThV/44JkutTPWwhknKTtHsNEkGZxLKgL4PPdk25Fb
2VZaSXq96IsZq4CPx7buIW0xaSMf4Ds/vuHLsuJ1TFh7YFrpDTywSaljgdPrHgKTLwCK6eAXqPDk
ju9aufs1ZeZvxvl6f307SaNdfaS/B2c0dlYMXT/FIfCx1AHD0Zsy6UVlzoUu8aoZXJNPObxFN8zH
Vpa2uoBLrX4rRTVQwjPg+AKw9XB+9xC51KI895HeW+bpnQahUvesNMNbH5N3RVY2Oxs2HeO7dp6V
vTec/9y2J3Gn7cdieLOWZkON1ZqoeAJIowyVSohh1IdXarYpyMyTz2/emP8kzaVTuWvkrjder+i6
YacH/dvfJsn/Re9olN7z4AlIV+wAKtdQQVxhyyKeuZL+n7gra5LbSM7v8yv86BfQdR+PdUqKpcJc
0ZL3zYHpQZNtDnu4c8iSfv1mFrrRKKC6p9eekCMUYhMAqzILqLwq80vaNupOo9bENMpmBi2X0Ynb
fvPl5ds8wwtLIsShNKJU5XEiko2gZIC8jmsL7r+SFgw7IwOXXhhy1WGwX8w0X9Dx3k1NKmvR3x9t
/IPcn/JozOTopQzOnGYJDAJMSSOBdGAL6U5rSzIjHoR2rL/eaqyKiluyPkrBiyfgruf+/r+wm8LT
c39KfQEl/A489hF2IKbkKGVAgENMSLQunfDwvwTmZ/Bw8Tp9/d2Hn8OhLni2iueIWLCxRhYZNmyJ
gfG+f9lvPl8KssRsnbIBHD/lsBBAIS8EXA+SImXBURPeEPaipudcicz8mYrrjWm8vI2dwgW3f2Bt
+amy0pTimAQaXZoukJwwiiQ6h7441VjSFoLnYlHVWY1Sz28bn/Cm1+vDTaxS7Xd7TDZcJeplLH3V
BLzWAG429+C/WqzdDzohrpMXgl6bqDdNc/Zwc3qiZqSR0QYXpxzece53/hQlYOoIlELgIxcG/FRF
RdElBOH2KBglKgumIwtxEZuvR6sIuWuosi0Vy6jhWUdPg4CN3JEO/VHYityBmZF5hwEZrqRT6ZWS
8ctOXvi3toO31cNaM8DFZXytJFzh2dfT0+52d18QDMdwm7alXj8p6oXsqFVg0CGKg4OlLThNnHlr
jWevA2NV41+Ax6qeW3Cz1ulYj7DgZrf/UukVUt4EK8VeNGsVMpgUPGvE6sX6nMB1FyRIE3DFPefm
LQylH/ZnQKjgxk1NPm3whCcQVWD26+mok+CRLjGJFmGuMAMV0+w7J02BcdYclGPS6aL30jCuYdYm
KXyxvPcPn3b7p6kQbYrKWs+yzNZ3KRawGJ47r63pIvNKaQ/b7Tp1U8Z/dYHnVJzJKJ09UfO5afE5
3M6q7vvb3bTgB2AWy1jKHr4ccBhAQGMkD2vYu2SoC4ILzQJZld1P41QE9HIdOtr2ernQD+DKPx3r
h0b7qEQfDgVJXCUPHgpsSC7APqJWY/AoA0FBe6Yxx8a/xadclTGdh5qcHqlZ1WsDYHvLNq2UkJeh
+p5yoMkhoKTmDnwaPO9ziosOsxnAkgLzyut/Bh38MiJ4RfUtX8elt5utOm5K/959PIFXKVY+EC8C
o4apThacmKAifP9geAWQlUYl2AVO/UmZ1Cf6bmoOVt6zJeSUavDefXDhLyvGBGPcYE8D8Ikcegig
STMYk2CfOxKY0YzyP4mxOYU3NRf9mjVK1GJLHWpMnn7fP38equpnrDAR7+gIrSzGZG1NoyMEy3+S
A3aZgi1vqOikxa4YkrKs3r44e8y0/bimcJ2OOz1ULQWYHI2lYFNqw+bh2+9bMOZPRpMuCOJgiYCU
7jLHVyvgf94r04mgZI7w7w1nZ3KZ5sMtKBkalPAJvuiPE7gJJrUckqp48h7T6YRBKHP4vDqbCdr8
JhERBdEu1HL2jwa4iSUN1wMvqmXV0QHs9/PuX/7VHvCGCcGYCk3aJ8l8ZzUWr4EJB55TcB1NibnI
hIrmTWIqR7jh73+4DEf8/Rxe0NKSJbbgj97dTk7/x2+IjtaUVCpLcKkJVt3iiaQB+xg8FtF5wmUQ
4FB5H/+kDb2ksmZxbZDAxbvp+zkiE9EG6pEzqCFAaDGsZuG0JBNK+OWJEZrraNTCGV+MVlEyrEtQ
4eIwHfz1L6cEQWrw67HWgtEMayxoBkuZOY7wnOCwpkCE9UrGvCgXPo0xn5oRszq5t4zqyVr57es9
OzWkYHaE2IreRYUqKGZEWWKJgPJktMtSqpjBZXYl02OODjobpyKAri1UsIUsP8aDf40fPyyriiT4
jQp8c5ieoHkKfq2niNWdMnGwpQnzf5bKOJF3UzOwFg+Mq7tGHkjxStr4I5oEFwXaYNlgEh64R04w
0oFHlED7sMA4ua4e5pVqmIp2vq5lx4uTHv/uh2XSUkyYOYUfoszoy4NktVHyLjNlvWbOqVdgp68/
gZ4mX5C81s9McLssgBn6x83nUp1A34kDUsqIupaptM5gbwCE+OEqU3B2TOoSwuebYGE/8TdMYj0S
ck4mH27f1Py0mNTL+oufhq8Pz8Mvu+F/ThGvY6VY0YAMrQxhO4OVVhhq7rzwuaOwdwXhlkl+VXrL
ep5zr2/5XM1Vv7Yambxbdm8a22399oxQSCM3wh7sKBd9MlzKLoqMoBhUgTAKootK0KioDOmKxG4c
+/wmwbs3NYGNPaJWGK7fD7uvd/19jWssI1eSG9oZLxPmS8OrMLC1c4CtHsEh9PGqatvD4OfKpMvN
imhl1mqGGbIsu//5h3mgaZRLgo9gx855LxkQC9YLiCWEY/ZE0i4pJX0ErdhERFrTPp+jzcD8iYqL
Xt+tueh7c/SecOvsfh1OSotzNP6KZRK4BgWBeClYf+8UHgCBNyV5AWD3Wi/bGC0GqwjZmNs1IQXB
6wBF/FP++LJ7HiqIO6INeHLRdMphiIvAUnrmXQeejiPeeeMCr0moh6kouNNrI40NZrLFn/5+D/+Q
T9qbqnL0EQOoTAt2C5hpYANrzBCROnRKWauZxeKSxTJUA93Usw0tEraLI/Nb7PA7JfyoUjbAhIjY
qyArhyVK3ncePv7OKCNpgLdh0sVz3PmQNUk9X5O05eTubo3NivAa86iAzzpFH33nJIuY9g6vJybR
Jcx75pTEsTXJdWisBbvjPBwr3r6paWyYQls9Jbp/9/7nRcJaAHoktrXhiZcMHyy9wD3JwKqiylsb
/FslrP3cWOptw3AFU1+uDmD2n15Aw//4cDfcL7q0SROocaKsMx7n+9SBLUE6bcGMs5HChqXXrPhy
jvPIY/OnbirC1+HscvFsfVo57sd/MLtEx+I0aTh2TsIzckRxVdgTJGOLkBC88izplP5vtSKn+wse
TIuHzXE/fuu/zsx5UppshEjxQNygfw5y0GPPoACuOeMJ9qDMdHEqPhujmpvSxvpRZs/17evBMtgf
8SDm3wSobQL/BRBQGHsEsYgAwxq+iaxMFkFTlv6pzn3VTK/07querfljmxZ/09oigMKn358f+1mK
5gQkSZywNKAtLyQmx4PgAycOPDbjMAkBlPNS6K6GWxBz1yDm1Hvpbvf0rTQIO/pOpBy9FYspaGGt
kYhA7rBOS0eQd8l14DaGYEA7ZNuOxtSD1vQMa4+HlyaxdcYwFod+AcO3VIkWU1wY8AxtKXrEH6WX
FagDrlNHsV4Pk8BROhiMJUhwunMC7/uyRXcY/AJs6cK6BlIboowz1crcL6lju2PaMx+RYwwRprxp
6pTPVOBBfcYQk0CJFnFXMeZtwGLzq7/eaqoLEEXzx25qDnSLrcmZC7/8+PHD/cun3X7RIfeoYSTh
WDnZRe6wCQeXnUkkdsoGqaUywivyRk0T2pRU3Kh1R0O4uOUnrC62cE11jopxisdGHqs+dUYwAwJ/
pUGlGFRm9M2gulpCUW0b+0Kzln/jfgnfR4wUmzFSCJL83ZhrIZzLIJMRBwYDHiRb8E6z6yyimePh
EBHhauQCnOUCdgHerjjQm8ai68206H9/6R/7/fNuP5yaXKLAy4IqC0tNSpGNY9iVCr6hJLTn0qho
SbuqajnegpjWcm4myLiv/ebzFCszWo5nWXhwIjIKW/DrOcJwG2ZkRzPoZZGSoGdgE2ejVVSYddc5
uNhvpjO+l29PszauXI5nfFQagR17WckZAO0KjirlXUiMMWMJ10vEmPk4NQHbhvS3/PZkKo71o/Vm
Br0OytyCw4Mp7NwShfWciMZjeA5YM5/frL5hNn9FeaMmBy4icief2oX8NHzaPT0/zvCYxwV0mkSw
w7HHGkpWEWEHBGq7LLzFHtnJKvr/2DCkJrvmum9w3a8M5R+H5/5urF0nByhf8Mje8REaWxAdsD4K
HCfYTxQkMcEKFRajJ4IRJt6w8vJIyblMivFuxWNvbYPHlfncTDg9JvyXdH+QZyOWl0vGgTJF9G+L
hVix8xhzh68UrOhMs9ZvnyQ5kXMhD3WR8g/7bt3tAS9uFxVc354/Pw79CZORG0wnKmiqMSKYdOho
BF3FHZb5h1BaeNKQUoJdc7GKqxq5Im1LGkbrVi6PyBc2DS25kmjTlFxJTcAxVhJbJVmsMQOLRgaH
Fk0GDwEEWbgKTeQKa+asJSOUXYs8ockySWoBEbvLuwZErAU7xjLQBZ6jQsiueD8R3HzDA1fUh5Cv
1ac4xQWkWLhbsbHha4NM3Am5sAfuhqcvzw/fnmbpw/CpHFLLScnf506BBIf9EPAQmZMI7EhjOyKU
SjIJ5pW9rmCiTHXcIfjAubqJ1YM3NReqxdoyHbNohtB/e37BPT+eitoSGXUhhUw8OHrRMjQZWOez
0F0y8IZgd0iu3yZ9akbBhZ7UhydqHhuZAGJgy8Bv3G0Kkt7j71UCOMaA5eHtEfglBeuCx/CXxe7U
FJvOSsynTVRL+4bifE3POfyn5XMV90NrD245XzlJ9w+PH3/fbzDwbQ8AaeMrxvYiOjECviZmyIHR
0dlYWgVwC7dMzEa/uUyf6Dm3Tw+3b2q2RItXs+IVe8R/6PfD/fiOSyNbq4rVnnQCJQaOIKbsaDTY
EXvXg0MitIuOJfsWn/OchEuN7McnFkzaFpP9MZj+OHx9+HWY53OIErSTLGVu0UGPmLLJE7oiFhET
pAugFKxoG9TL8RbE3DaI6Zd10OdT5L1k0SHkp2UxYONMPaIbe2NtVNj3KdAriq5apN21PvxhyqP8
uHkchv1PoIJPbe4EU+9EqYFQOWgsNRBSY3MySzorJHaVAAkXJTUyL5IF1sPV1Axrj0wywhppb0WQ
FQ04HkFh10oxKkGtGfUOceTA/QFrGhw0w0HuBhl1kNhpyvlXJdAFmJrp9k1FJltvKyVM3/CHj0jH
uK1K6UHZWAcoZVg1Atq6I9yB8uOxdNMF0ykiygQYhtec116GUp4/cVNR2zB0lej7xXdaBQIZmfR2
wkhpIPCVJkUPmYeZZ/AFhZUqZzw1v/SVnokIKq0aZNntqn1enjrkakxoKUbF4VfBnfUWpHLqIvaQ
5BQrBSjIMOZkToQZF9UrX0W+2CZ3ul3Rfts4S1O3/QTLdP/H1/6dPEVVMTIFSygtWMvZYeINtppx
iLdJIjDDuQskpHpXzQepZ+9VY/bbqQ/Cb/3jKQsIFDdGNzgjOivVMWx6wCPGzyPMrgnYKUaCMx8W
BRWzQerJ1z0grNoOS536666UgWZ496OzxN+Ngcfy59iyCl5Pcp1gCFtBtOkc8xS2MwNbEAS1tFeF
HY8znFE7h7tzFrRdp+HCxVu16pH9jGfhUhUViX8UOwgEoKaII451IGD2IHQFIhWSyIMxSVn+Svb/
87lD8HKrpnRdpWx1v4ryom97NzyXMuenTVnu0Rsfg4rJKJDpBCw2gjgRRmGb9VLUppICT86F607w
ES8uHqc5v+arxyqWWufhurdL8CPk4vl+OoIFpSlISaYKlkSXuOkEMWB0IwSSA+EKG14545XWipnX
YBemgWvK1oWDeNGsGjp+fCn4ZaWfDxhQxcsZfxVE74RABgohvC12gvdAn4LFNozJBMKSvZLeMY1/
rofj4XZNe9/4pPu7loo9mqEFh22PXzgWQRZbH/9EZZUopZm4Lmp0NzUstsPTzpCt4T6KFIy/+kRg
MdvrfQuOT9b8bU2Dv+3yuMY9PQ3PpZHxzI8RY6GAGLExSh94IzqlgEEwbjDRE8wcpZkF8zdKFa87
MV/NdObcc/Xcgq/1MY6+xZJA/ko/s3fJfcDuxn8rHI7WBh2TwyJNPBFJQNgb7IkIGtskY7roBHAZ
rcj5qvD7cYY2Z8e7NzXpmwY/fImZ+rcP4bAcU7IXvpvEKFiYqssZM8zBagd/GnaSzZFnrrwg1zVu
Oo3epvx0v6a94VzoW8UWuSG7/XaK2Aut0ZgvQSfnLGMqdkpERFVXoBgUJs4Ehw2Vdc7iIhzMadia
qDWKKFw0yyjlD5s5Jqsy5ZNX5pB1kVL0CZZVIqi9xyYYDHOBucfa7Qjez1Wf/HyOM7Jp0wRkRYJb
n4VZ4pX/2O8/PYLDNT9cZ9Eozx2uK2YmeA8bNoAhQ0OOBJRBMuKqFK7j2GdU7+FuTbVd5yvpDV0G
Tz4MjwjQgEBD89Z2RwaIjsFEji1msYe1i7AbecSe2gF2pncGHNCrsI3X05yJ+a4frNi6o9s1W3dq
CZaFBVeb+4LqfcgGHJv0gR3pDRYNYoNieCE5YjQE+EmgGIQRluj06qlMeH++diq8r8ndNHbA3R1t
1Id9uh/Pjsa1Lz9QnTFrtcdaeWy+w52mnUcFDSpNIkCP04H9r4+Rxns1wWswMri4XRptP77cP++e
H142n1e95dBqP5TfjD9wH0gQighqgf3rUCmzzvksEbuWgo8Kfo67bh+cn7baEMvHahYbtVN64Mt3
8tdY0g1GPoobkhM2NQbNZAriLkVvDSyLDAIpgdVEVHr7E7G/njk+/mt1bjwWB694WrVz+cvweDs8
PjwhZ1MCkBdaYFJyCZ9xk+DdOKm6BNoMMxoyS5cDwcdB24Qe79bk6sa2GFZlkyP4y8t+9/w0Qr/8
vB/zyWvcF+Mls6zLrID1O4TWYaYzARxTzaImkr2O+4IjXwB9wdsLDkSLg8kTuC+YAhOijipI02NT
NZGiIrKTFJHUlaCw3CJ2KWROvSE0yHZTtfmINSmN8iHDyK2SIykPt/+9OfXHUiVhIEoZpSG6o9lj
XjQ49JYCUUJE7XJSINcXHQXno9zUM20a01M962z/9WEfKuRtRYiesLctygOG4RkB+pFbWBaPXc3B
4TMU3CMEIjvX4n4xck2Y1g3CzJTiGT7v9sPT8B8PX4b97o9TLJGiq6ytN0FhkSRBygJ4+BY7cgol
iaYWViguYg7t4WqK1mgSeHFqEfh5TCTv+qf9qRBKFu+xhGGsoTEJgmEY/NQVZswm7JcQjKNURhXi
omPzesQFQbZF0O1Cm/72bfPuILHA1ug/DV+HfVXgG62C7wbsxxSxExSCb3kZbZdgC4KSJZT6y+WV
q9HPFWssHltw0/oS+2l5VyBiGjdkjhZD2QqbjgU8JVFY88M7FOkUdmOQYhHbOg8UhtM1VpTT4ezJ
6Q//XhLzwJE4wO9pixujpGBIYksqmMUucCAddGds0Fi+6mCDwB56BayhjH3OE18k5Rm1htLDi1N2
+T1YmbtZj8OSZROCyHgYCqtEDw13AxauJ+4kBRvXMLaIC85Gqadv5NfDRbYqK9qEh7vhPx/hr02s
E5oNlnkASRaD1Z5n7MuRuwj+DNNCgbq47vy8muhsPefsmQU7qsGOmbKW3oOw6B/d/acBCFiVdWYw
NUBN5C4TBWZ3IAgyIlwngtPeY/8E9meVdTYIrRldI8bDxdsVCvPnl/2X3f7TgVaUsiN4balYjjoz
I0NHyD96u7rfNmEg/s5fcS+TGmlBYAdCIvWBfCyiCUnXkHbbC6JA2mhJiAJZ1/9+d+ajUAWyD2l+
SMDm5zsfd2dsDpu+0tEHAzRBk7c1CiVTucb54PeiOKtEaqZrqhdVGnNmL5EerSm99qvzw9mbnjR2
0EhftmqfBh2V0VdsnHaQ4LxtYifSHvAePkMNDY7d7f/YsCAtk6Txz2yGzI6CzToPNlmedjuk28dW
D73tNoadF4Tw+ApR8ozmdDhGtGILDsMT7/gUitUqkmccEmYFfSGtxIu/uzhKcw+boA9qmidiYlwf
f5OwD0o5Mw4TN06K/CrhS9Ur/1Y9npRahRIQ9CjWEPX6HD185NX4n9GU7m2geLSyfOl94mK/fQUa
flBJtIYiaq8PTpR422scTcjchmMYbwLszK6V6ZXyoQXxC/mTwI1OiYtsnfZizXskFmQI2rPgQ0t6
OG4S73EbYgVEvKhWldkEXrAQu6m8zgYaeVaZDlWRUQHR7uZ0b905K3OGR3fjibWYg5T9O19vx/Ww
pfVNlA4Xq7kDV/to3/YjbxvGfhi0QLp+SzUVFKX5gWT6yeYHrXrkHD2f1PdMYkrHmBYnIA0nQGvY
0dVxQgsbn8GoRld/h9kIJ9CQzmBisVtKCo3Pg0oYHTEUJrzH64US1VJ6w3RSzMrK+KP3/+chSoHh
II2yrw3Qy1E48EnQe8dhBz2dXWpP6dPFhsSUsgxulnBjOfCUboCJovCxA33HGSvT0eowV+kK1KQp
AEZPr/CWp/waQBP1ggBPY8CG0tRtSd1b0lRsmw0m5cBi79fcV6MsMtuczRbDRrtQVSZ3craYVmCe
Tt4xgEOd/nBW0OmCdJu6L8DbeohDsPbr6KJKLz/PNkmYUvBpAv8sd6yKcczhFCYr825U2yBNl9W8
PRxlsEzQcC44B8bJyWUYVM972xVSMJ0G1wAdpWwGD+EjPSbb4pbVmpvM7AINkuuOTMe8yFveHsYM
wli2ORk3g7Sq3Fx3Zs2n4xGqaK0esJ6s57ypgjdn/MVp1h3DkLs5b1xgVnNruBg1cqdprMzbTnj5
WieQ6qj+dn9U1NHMR+3CHS2VXedwShj2d67aWTiiy2iWgtydZFqgaRnmI+zQQ8UV406NWtio3its
TmCkX1BLAwQUAAIACAAUiy5KcNlyjItBAAB4EwEALgAcAGh0dHAvdGVzdHMvYXBwY2FjaGUvaGlz
dG9yeS10ZXN0LWNyYXNoLWxvZy50eHRVVAkAA1jPeljBzHpYdXgLAAEE9QEAAAQUAAAA7F1Nc6NI
kz4vv4LDxoQ83cj1QVFA9HYEQtDtHX+FJffM7hsTBIKSzduS0AByty/72zcLJBkQ8lg9vnRYPtgy
BZlPZmU9mVWg4jpLI5Hnttr8Ga7myxuxiEU2zoRQ/6VbFjb+VK7D4r59Kvycfklnq7nIT79cnd9e
eKe/njavV85isSiSaSIye78W5YvI8iRdtBUgxU1joY4fl6LZ9IdpaIau9i7DInkQJ4AuAzXqdcuk
68fiPl2ADaZu8D+VG5Ev00WeTGYNcXssvs1Fpp4N25gYwooyDAtxOk7mLVgEYa4hrGFdxdzGxNat
PmdY1ZCJkHI1UrvsvAgjFZr+UDHqY9w31B5mnzDB5AQAL9Os2LkKY8VZpIvHebrK1dvbGsbB0MHu
ADka4hRpOgU4vukhbegZju8inTnMURRFIledb+FXoY6SRSTUQZoWtso4QkjNRZQu4lxRRo95Iebq
2aIQd1lSPEr3FiIqSihiEYIbY0VxszC/F7E6vs9EGG+RIPBrki/DIrpX/1qJFXgqSuf9cLmcif48
TBZaUV6gKN73SCyl0GY/e3+4wcAZBo7reqOR2hudfRp5n76c1M6XwbHt7N+8m8vg7PKLc34GFw2H
N/KqsFDRd9T4oagm4RIMamh0r26uR15weTU+8/9HUb5cqDfiDs7M1UsRZiCMIlvRtI+qIq8IgrH3
x3hnUKw1YWROdAwftNoBSx5Q/6WqlKDf/lQz7ftp9u27Orr4L/fq947xpCgOuCyJwhLvaCkiGEwR
dMo0zeblQVtxb5zR57PLT+rYG41t9b4olqeFyIv8FNwdhdG9OL1P8iLNHjV5uH9fzGeK8mmWTsKZ
Os5CGQCr6RTCvZeJBwg2oUb3WbpIZ+kdaJ5tQuLEVnSzjxEllEo7Xf9SFN/S7OuOB/6j8jqfTqeW
wcNJPKHq2L2GHlsswIl8GsWTSDDMpkgdjc7VzyGIv5fxOLy69EotlHOMD9MSmdO9WvIizIpkcVeq
W4i7tEhK7611mfQwXaHBrL26INAhygvRV6cwILD+XhUZ0B9a67IMdIAuk5pTut970F9AfLhfV6Ej
ZLDXMAdhqu+YQ983deHXMafS1WmObhjGQeZYFpk8HwnAXJVo07BeQ3SFviaaYKQj8xU6YUKQxXY6
AdU7QeoyX6MT1ro6OoFgbDDzFTy1VlHzFMOU6Qd1ghEzQ6gupI9yRMdiGq5mBbgo/ZoIVRJdeCfU
b0lxry6riuB0slrEM6Em22rkhzUjQ/WlOqk5gRzkfx6Pr91S9WitOYc26KuKXH5ECbVYQ8nl6Dkl
SpV6IeWuc7FtvzD3yph5avldTNw0E13IyuQFBBuGYP76PNuuZSZXZpnPaV7Ydi6KdkPv97Fv2zdi
el1kH/Ze/vGXX07UdyoUQF2C+9FyaVPTOFHwoagpjM79qD9l6Wpp23GSh3meRpAWxDCNIAkvivM0
hKqwt720ebxESzhTe6simUGBZHODnSjkUHhmTMXfOfX/ug73JADdaOmnh+kXBrdQrO6xETS3nFHq
JNaeTrq3GUDQ2xB+S4pzcRdGj10QYtPQQ6pLCE1dUBmD/q7DJQqopNReswn0m1A3s0P1I9OyVO1f
UlVYhKN0lUFNFItwNkujP0GVCfY2Gvvzua1TCEbjQFWmmDKjUvV5fHH+JRHfrrPkAYJOjWZQYkpt
GAiyVztBKsPIAsP4gdosnVHe1FY3i+MdPcQ08YkimX6WTNLJv6O+048f4fMzlMVFyMMIpmPhdlay
CKGIXUJleQIRvQLKEmBcLq7TdHYN7GXby3TZe0iT+NcynrihWA3TuriyyZKWQSMCpl2Obm/OZYqp
ZiZytpItoGYNJP8/HXcW8RAw3IGj7XQxe3QiOXO0pReIjhWMDtVOJtO/017p6MYgFeumIkvcg/SG
01CoQUvtMIlvRCRAmYxQJ8vCx17g+o1zfn0P0xXXLxtB5SIv4IjsgfU/sh9MomByKKDJhIHk4H8v
CW8odGcJjMvAnQGtJhGxgnhtexDvwvUeggkE5dcgWTykMA2AQaAzBWj7EDAWhcI3fgEYbJb9s+kM
J39cRN71b9EtphWKZZrInvQfrrHRduT1b5S2DlXS3VUmVyGCLxfhd69hTkAqulKwXo6reJ2dO0ZW
3SCKyVRHEzXYnB9ElRmRHMGrQvaYgtlhImmMqFUT2XK7znUFG4cOBswj9Wa1mKXpciDlgWsK8R3y
1sYBpZZeLdyq2CujjoBG3tAIdOGnULFVk962RjOaYCOKdXUdzTIRPfqrRdkVsoAAp5iHWoAgj3da
sBSZnGpXGYdyBVsHimZT8OeFLObggu8iqxJIUzCBkUcOpSAWU7NLcLCRvPUwB+n4MA9znQtcMsbN
7eX51dV1cDYKXOf8/OzyU3B1Ow7GV4ETjK5ub1wPBdfejX91cxH4t5fu+OzqMgikt7hCyGFaGZ3i
qNK6WpxDXwzTyqocgUDGDIXQQyXqdFqXCH9AlEUAnH6gKCLA4XVB2+UY6EELsLGdxcTurLleCwJs
hq5mq8VYQDGXF1C4BwG27UkIHBXkRQYl/ofoPszeq0+N8v+gyMKkyMu2j/XGMrOHkG6rJvVjNdqq
SpXCuO818ZUZHxk6VK3GgdiJBSMhblzRA9J8r0rN60FeDW+Lki69mBIEevmBenUU4dYVFzCl6daN
jbJG3NWtUxN0mxV1Ps7izhqnGQATyPkMplnl1FXK3k68sF3OpEBAXi6ZBl+hCBCzpsy6KBPFmAkC
YSlH+F/l+ZkoVtmizBPlDOdJ2rKarTXENTh9AlzATXVzYvDtr+qDFEZMWs5IDhLHqY4rOxuy6NZi
8uwUs5aOtHm4gHov+wEHwaxe/VouRQR/pXnDMS9PdgwbrJbs5nfZU6oj2Ni45uUC9TiKWwK3DmJk
6yD65kJCf3MWsx+xGGbcYHEu5t+AwYM8uZOzhQ57o+dD0TSwZcRoChOtRZrPhFhKIZa1MTN6966P
u0mtLoWZiCKCahmkuE/ydUTbdik4gFqiV88/8s6AbcerrMyUH2bp4k6Vv+qJqGz7gGfvZdm7/pk1
8xFnraWK/w4fwlGUJcviacWiTv6WFSIhJupkXqY52/4swiWAjEIgiTtRw7haJEBKgazjPmzPHhWA
KbpYQVn38ZdmRj3cImlLmWAYU3tBMJdSA8jbwsYWby+AvMSwGKqRlmHgqqiaUow2JpbrY2ZbI8Xt
JY8XaCQM4SeN5RRoHOY1f0kQ6xlir4Xs15PeyUcZKzJM1uVQic3iam8rqn9vY8LaSyQvgaaj+FWg
eYsie7yWc7nePxG3LmNaqy8vMcSYxNU8pxZIwXp4Bcss/f74oTb0ViD2QwUD9P4zxO//kQN/hfB+
mj5YVO3NxTzNHm1iML5dHjqAmi0rfqLmSRo/llSKy1WfAyXh8EnSthaTcz50MMEzrLYFPdG7Yddr
mtaKS7XceDD/R+GUE3Ueysohv5Nl/LKL/F8iiE7oVlA5N2otPL9gPqNjIJ3a1GgksockgnI6ur9O
S3cQTFok/ZIZFxPR7owLajGjxYuvMOViB64achQakMbb63a9qj9P1CATeTnhlAekymqhDtzQZLE2
7DZ0IQgThvTu5aiKp6CKsWpmDJFXssnrDCLz9QaRpb7uIOJvrio035zF1puzGKO3Z/LbW+TA5O2Z
/PbWLfDbW7jA7O2ZbLw9k99e7YXfXvGF3171Rd5e9UXe4C2mt1d9kbdXfZG3V30RqL62n+UiY/lw
rHxITn6fIxo/PZp7kFNQPDHAKUu52HsfRA/y/tIPeiTkpOYR+dWPYC2NG7y1zPj3q+AWCQmvjKxs
c0FgUn5zxS6SuYh/B9nVE8LlzZlf3qtxuprMRHl/BVtqr7osWdxdV5Dyp2eBD72DxCcUkQrMdZh9
BZnnqXzIBz5vYYWz2ePZfDlrPq5UXjOK0qWIz8P5JA4/TNJ0pvZONve0uk6pVtjbp8ivX/0unz97
XITzJHLlfSr53af6wxoGRmrvCWJpsYH0g28t0SiOuaGWWEvlWzMH8t6RLTv2dlEksw9l6zlA+djb
fjwAcfnQag3wvW3+wG0pFgkcN26WTNcPdm0+f+gaLrZdjrgn4CJ7skcaur3xaNv/GaDuR2ZeQfDH
zU0VeQ8K4iCTgnsn1cNj8iHilviyWwmih98ks7C5CeSde13bGzcYmK23cWA4szHXdx4ifomqSTSt
VH0rpuP92thbvE1E+JHCjxR+pPAjhR8p/GelcPNI4UcKP1L4kcKPFP6zUrh1pPAjhR8p/EjhRwr/
SSmcoiOFHyn8SOFHCj9S+M9K4fhI4UcKP1L4kcKPFP6zUjg5UviRwo8UfqTwI4X/rBROjxR+pPAj
hR8p/EjhPyuF643NJ1x/JKOk6C+rrWJ/4JF5xKt9h2YiqjH4IXsxWFhnYbmvQwXmotrZqyRwcvhz
8nu7hb5et+ivvJsBUqP12y7KzcX/MI31ay9UubmQUHuGrk2S4sRWVDULv9s7L59A0HHZZF9DtK8h
rjdgzPiUyheKyJZkzyX5tkHaxjiaRLjSvtxpgDwvr+hoiKQSNTM7lMgBn1kNXBRF0VRuRJ9h1AVY
NuC6KGGZ02lMubQEkz2WYNpUgk3KSNmg71PCdq7Qw9JdybLest3RXM2ms5Z2jAiSm1dmHbColKWc
r1+O4V7fVq8QIUTxsizNyveSrN8qsr1UV8Zys5fL1XyyeRUO1hVFGSSLMHtUz+YwlnJb2bxB5Pv2
5SGqpjYOWgh6R33X2jOxh07UD8wYuNxwTI253NcoHRDNdEyqObrjcoy556Dhx79/ZU9dXUT0XQxw
cDrl6jsYRuttw+UGlqP7ZL4eWyUaRH3mm9zVTOaZGnV8XRv48IlZnuPj4XBAmN+FZp/UFi6rA5cl
unCtlvItOnVouuH5HqW6NkSerlGdG5pjDh3NY8OhazJGOBq8AFpdcANdTI0ddFZIYVzRZ7JkD0qx
d3AR/Onjvv4OgLoImcjiTCMmpRr1hrrmEIQ03dWRxxzfI8jtAtqU3J9m4VzIr0udrl8llJ86rXPq
+EPE4h38IY1FC3+1/3gXbp35Q3M48DR9IPueEkOzCOXaUDdNzjEzHAd14a4kduOt2ho4J9zcwRnB
WNvFuc/BA8/yue8NNFfHTKOubmgDd0g05nmeA/72PEb2AN3v2XVjHWrMI7QDNbZCNp1O9m7p3oGX
Dxhn4E+NODrSqGVB5DqGpXkYCIsxxxv6dL9jK7nPubc6Q6kQyjxgmLSEvka+PTihoQ4pQO6dqvYg
3PuEADzThLFEfVdzXQQMhF1Xc1xX1zhzTMRcT0dYMtAqz+RYOpVX13SZhMotvJu65EEmKa9VrAxX
ohiKyQrmBXd38j0ZPdyXV2LpJdeiBBsIlFsuwOBUA7rwNcvE1PRMYrkD6aXqBVen58kkAw4+Xe/D
72+8k5926en2XteZDcuYEe1aZrCSsGSNkkDF/9AnG5bSdTDDR8xBDnNg7DiWRg3D1EyfIM0n3B0M
HWJA9Na82ZbS0G8YqEM/t6ai0i/fL5OJXNqzwUBMicGkvk7wUIMEOwSqZFxzLMfR8MAbMMSRQ0uq
rGHYkdTEwcMOHCYt/VDv4fk8XcDE5h58UfYr6ZfMPTANTj0M3rC4RoEANXNIZUdzx2VD3TcH/st6
diN/X39u2pvop5MO9NN404ubzTvTxTS5W28nuXEnTK36OupjCmbQoTfgQ9/SDBNBAuJg0MCFTI0w
dLJJfB/5fs2rldjTZxU0cHKEd3GaUdjycll1nF09uQCGcp9Ww0g3pL8dnRpDBvAM3YMERB2sWTqi
2tA1qAfsaxGT7fq75ugdFXUvrxsb0K1Q34Ue6maLAgYzGG1pWsWH3jfggvLvVI5/HXEi6RtGyhCC
lriAeoAtzaLUcjkyOWL4edRXW/l7kD+d0EAfMtaBnsUleuili3KXYbwdYlwGg+OigT8wNe4Bk1OZ
Nh0MOZ/71NIN39UZ05tDrCGlqZ8bHfqjtvfklvnii+M/9Tvroz4lcGH1QaZGDJmaMk9zseGAEyHV
WJZrae7QQZ7pEQcKpZcMtbWubj+uG5s2RNauDRNZPfG2Dev3z6w3Lsz7zngEIcw5XAy+60sStTi3
PAsbGuImlCKu42oD7Lmab5gDd4CJQwbGs7HQpafTlvo149Eee8ejhq0TvSPhxXHcqmByEa3KVzD2
eDk6GaeU92XWBQs94jEGoxGKREi1ZUcN6AB+DfAA7OXgCfqshaO19G7Im9Y6bpjp7Y5SSlm4ifO5
iELQs4lzwzL6TEL1DYh1qGKZnAlQ3R/ADGXoa4blMOp6rsWdVkZrCFKa2iYdEKLpHtdNnxY3ekbl
RIaJAaCGjqP7wyGCAWeC/xBkt4FnQLVgDAYWzGCwj/iL/Pe0fvK8J5/OaxoUow6D4qgV91dLsRgm
mYjkCx2h6pFvDZWEbclop9gxuDNkMAV0iUYZguLBGHLNhBTu6wOocq3no70hvduMxiktC+IOC+B3
04LR/f/zdi3bjRtJdu+vmKU3Sef7scxnTc2pGteUbE/v+vABlnValupIKrc9Xz83AZJCAiDF7tbp
TYkm4MwIZGTEvRGR4PqxR2xScsTDwXkfPtb1SIlbxiLROQbYc0GMzzUEuVCcViZIb69xPIdpzqzF
cLERX9KFBZCVTgxG3f+U5tGkTbVnp6T1PjvA8QA4orgiLkf4b+4NuATgsDSLcXw01EQEtSSCOYoQ
3/2lpshPP8r0vYMTqEGkKB6Dw8IH4ESwbSeqm9PEsqCs0EYh/l1c+Ipg3z2uv/56uz3j3z4fXo36
9MNckFYJtqCEErtJEDq8qzX/8dzdP/X78gXBx5KctRrbMUEn4VgmgWaEIaAjJ71RUVyO4NPBl1Wa
3tWoodYLDmbduYk1f+x2t+ufHh7uNg9/nFQwgq2YWnFa10YLn0SBgQT8hYMBc7PeOWLh/IUoXMZy
eVOOp1hWZHxHo8SGzXkHvtyfDArL/svH4QeMjjbFmOu9tdI0GQofbagDm6PA2U4DAUBiVyIArNfp
VWfy7sOyxMPttwdrmknRKsH1ghJyuhLHl/+O7KiIWFNf2BGuYisGN2K9zYTGJD0rWYDeXuNLDkNf
tKJG5O26m4u83ZkjU/jj6/bkSbRaKbqqbEvJxASv8imZYfsIRdaB4wijDOfFJWaXecFpuEaIHTVz
IXaCnoR4unt+AaNsAEyGx8Sil4SVAPCsDSc+VZ9mHZycZBp/2xg9HqadXyyghJ2e0vl39fedxywv
SIeNIbDdA0C8ACqACEDE1aHq7Lxjkl40PIy4vFS40EjYSTuXcO/4xLK2sM9vt8Drqxpq4WFX1bhq
NkELIAWwdFOzHYiz2CAAN8pIUzwL3F+bZvj5/fnEws/vv2vFE0sybxaSJCfAWm5y/SWVJ6wy52JV
QUPdIcfPddmLCsZzhI0Iti+KdyD6ICVJAaZh3zjj/KsB5GqAfJTnzI2HqxO1t0tq74/G3FewbuI4
Rh8dGRfWJbgrEmyGI8tBEu99ISXklCmLKUf/do6sEWKsgqR8nvwAvpj6sdM0A0+zlAPhQZnBqzHO
VkL2yN9RaWBniI2IVtgnAt6t+uuSSqE8APO5dDVF66e5wNL66606ckEdJvVxRcrD/fOn9eNT93ha
EGV7iMcBUp3PkkhsIewcVtM4BraXSorAeNqW8u8jZQ2wmQr9XaucWdBY2RNC/O3rryfOUx2Zl6Hw
qEEtqj8X2E8uAY5rBiadsWo5lkn27DRCO7FeeNRS7Sd7/j/fn4AIXFW/xy01va0IjWcdJcxEw/KF
xEZwkWZSmA2CJZaVvpzJievHzTkcNbrtJMLynafLjXpyITtZv5y6tF6Eakay7gRVwZUtOidNOVGg
udjbHH7LVPQbBcI9j8yK9E/rNVxrRNViYSXAShayE90vn8YplroivI9xrF8RE7gGiIK8OUByOCEC
apPwjwuRlsSo5dcnWD5dzLB88q0Syi4pcfKlNYd7e9c9/vWlbqaryJ5ViwWSKqoiQgvXYzV1xAQA
Xqnge2Ja5jvTAVtx1kvirLvJ8r//0W+33d3QAIPnSdVAfYcPlTUoForhkhRb0wtg7/CHGtCF0qgV
VRpb5pon2kx0LgE4uqVRxi6k4PBlN2c/5eaYipA97LGS+/qbgASMAAZROK9sspCsrPYM9IcV/hrp
KTdnMWppoI90mzlClW7Ljr7skGp+Wt/v6m4+FibANw95J+41XIeD1RpbKSdVxAJBEKVzD9RcCfZS
ErsZeSyaovs5gVSMsT61g5vrj3Tc/b5yJ9vsU9VY4aCiJcwpWr0cWJZOjNDAYdoCbq5McGs7TCMB
6OpcAtVNyxSf13+PeNiP69XhB+axnsxVrzsUcJh0jgNFIw7DHnXGdvGKEQcIzTnNDE9pvqBjIPXD
dIYf+h8mBTb64eN6++PNy/VGfLOZJ2KUZSfgP/55MCDCAQHaEgXoB3gpVQgT0iFY+QjULbUB2yvg
JpM89GiY79qZ2ML0/GRam6ffVvQ4vehJR67uQ0awjIDFA34mQedAVFLFh2i447qdezRGOzc3C3OL
9QI6HtUQXhhjVjICm4D0KMRtQfEAXIIPsdLwFLwThuVXcfAr1YPmllZ6sVmQ3k5TJ/Hu4dsuPWyf
jpKDxw6VJVWSA6ZKhDpEFrhAQ0JAUFHa8QzuZoqgV3GS4wxnNDhebqQHb5pLvxGnrHB5eLr7625o
9zxZn15x2QvuUrA8AbzKACyrAAmxa0nMlNPiau/DJDU8H60RZivnZQS1VfzoRA5e6P7h+Xb/5wtA
pX2RrqYhpQ0pC0loMcBusArEkVJIVMZm4Zw1MV5yb+OBW8HWC7tju9ZHwb7d//32fnfaHmpV1xUo
J0ibFcEurIldB2mCkiTCIEsIGVRALEozHq0RY0fncUrttJyY2mApcVxwrEbHegSGP33V3+qM+bFl
de30kQ7oyytEYYQAmiN2crycQJ/PcSZrO7+x1UnPA4em1W03NYFfbnfdw+WUXTSRa4bVDlrV5iU4
bZ4NYdpHn6oPKPKiSuMplnUZ3zFWQrOFrI1mTE9aRT6s77/4+/Xdn0+3vRsYKkP9XyjAbAJdA533
tTIkbI06RnpCYUNJKnA3o96cYY1FOkOWR3e0SrMlpddy3+2Xfhbz+wqOKxCpO5VbI0QCWqplMCJi
iGCTPJKcIjaNzhKM52I1fb47NGdzdKRFt51Y0v98Wz8+/9/QXcQGNCprQqWvxcTsjWaaaFHbNwJg
c6jdedLoUHQSRdlwcQleBl9+mC/XG9HFXiyIvp8C0FhbWT93tYWtezz0sr2Ukwyr+UiqLPCLMgQk
NuHJWoRlh3+oZKboIDRL4aposjDXmcCycOdEu3mM0datJ7vjXfdwNNvTDmeKraQbTCZZaxRDcDQC
ilW/7lgC/CjaI4AWp4O7RrHRNGcSji83jNUwbjP3VPXLI0L7dn8yde76olhg2UlDojFqyCTAtBls
K6sM07KF5jP+f8G8zWYBJZmdOJW6brffas7zpc6k8Ozq46t2bZ0LDDRF2NqDluBVbMQ/BVGRJZW4
imbaltSM1kiyU25Bkq08mxOr9v6/H/x/jzJiFIS6Oj0RhIoKgciUWNMtovK/yIgUvHjJUorpdexW
xz4P2+rVVv6tWpJfHZ9kTR0ObZa3919+fr69ewE+gyn6RJOP1oMVIHAKagxxDszV+RzhFkEf/KTD
6syQY7Es3czTFJbu7KRTqTk68L3g0vZOlR1SFCxGYUsJJAcDUCZpIj7W7kOjLPVM+Uj9Jc86Hr4V
b+eWxHNH8f7W/fnbl8emE80i6kagcwKIW31RhjsVCezY2Qg3G3TJdFGW8ViNEMzNfbxlW34U4r8+
5XcvxZGeZFrui6kF9SByLSp5LJsEPIxCem5r0iaWf74fqklEvszeCr0VS0Jvjvb2rvyl1ra73Qu9
680MqygCAC2hNe8KhkXhyoskLETqRLHGmDfKgU8kaKR3C22Q9csLtYv/+N5wC3JTg1L/oZI0LHyu
fbo51qIwlxzoBtzBqeBAVxGxgv0XixXjO1oVtnRBhVoW3vQL8Pn9p3l5XkeXdQQm0bzUjjQYj8/w
4UpLLxSjgRn/luX5kRCt8N16SfjdxNv+2t19rWFTrOpjlzWVLVTyEpyI0NB3lnhWU/aRSOqoiqnI
ouWb5I8x9ZnUMa40yqwXsvH4cqrM09eu2/66euy2D1/ub1tyURvfhjx5/7fWVLLyDs6NFFmzILy2
VISMaBKSpszGKFV+Cz1veqk+LwnVMJ7pbZMnsODB1mraqP/p8eH5YftwF77t990jFrYmTaXoCxSA
Dyo6kpKqGLUWKIxkJOcSVRYU6Dlfg4PaGZZVae9p9VD7BT30et62eDMkDU/1Ys0qX6+xSnGjAdvp
kDgSAHZgyCwQyTP1ziees70ynX6Y5GxC/XC9VcGyBRXcNHPzrrvvBuK6vrt5fnhENKiVgV4XMQAC
Gy1nEjtNclebg4UmLuZCahoObN+qeC02nU11DqPObmxU2yyk5+1Ws2Oc/P3j7dMJrSot+porKA7j
xSRSvMBylJqLD6CiNiHiBM5yjK8Q0GN+vXt1L/3ebTHA8m2tfI1eu4VmXXx5quY9fb2933377esp
kjrTLxB1wODGFkILvKAoEqyIabgIkwp4p+Ix2haxtSONhXBqM3+4zugp/l3/Pm5gHAyGYXuuYDPV
+iULKVEAXqVqja8vfdRKo2FUS6uwz18hm/6X19oXx3c0KoCUzVWw627W0//Y9X1K739ETKdDn7k0
rj5SZZLjsWSSDavpCnzy2K8AKzLhaThtXHk1Ph4GPx/PDzc0wq93cxfqNnxaWV1/290+9Cr4+qn6
n4MC9W+FJN4kWWDqVPNQqTIjiCORRDBoLROliJ2vatCPfV7+/nIj/UYsSS+njnMWRYaMBV/xlekr
knxAKcFDekcJOJ1AjGeRWFNq2oJlbOdS6HUt34vTXRnfpukMtzELKu6V7jNDrXX5nyOUYggNg0Md
PvWnWEADXfRExwTKShXwYuScUG6t58rEYcde1amDSS6s0M+xEb5PVsyE3087oNLt09/84+b2+fG0
wYd1GVo7QZE5mIYStZGNA5Z4QxkpKScVlBL0lcr9ZPRl6Sc3jbVYg/HPtFjvN3xe8x7OA65cf4KE
ypXsFRCSsQIHmZLF5sZmIDZqS6J2gXOqsmTptVzkmWOB8XCtEXe/Ewvi7hb6T4cDRkMNVveWkrTj
AdZOatsTHJGrzce8EB6CN2DpJRl5ZcPg+dNFh4sToedmvqGHzt8WynXb527XV2BOCGJ09k0KHXgQ
4KW1gQ4RjgRam01pYaL201HKr0V0s4nOA7vZrWPlNoryuXL4corvXkL+ENLreSRW/7/Df9b/6gvl
lnGVAPAKq1yWa/gphL1SYgqYKSaj/x3YYrjWaGoWwnn9cuEAziS7jpBiazyxfU4oISJi/ZjktWGt
gISUZEn2MQEcIqJb+TbZ+4UbG33cAjLfOM2PbLce4Tylj47HQAujIvASSBIWccTGQJzjnmSmQ4qB
Uk+Xi1Uvo7VCLACMzZa6BYCR1s/rvqRdd7Rkfe3Mc+eVdIxoVpuADeKz5YBvVuZMY603RvlqaK4D
Xzj7iauNyDu9YPG7ndt3m0OHDfjo459fnx9OT0/0bcB1DwcVqYKnIRCb1kOXHvYdIDA8JWzfi8jO
HCuYjNqKtJtz/03H9gu9rk9HmxkSOeX2rvtw+wTXzuHSe/LYY3yWuE/GBGIqGkZkwo7kDvAzUS+4
xyZl8e16RltZzh/reLmnUX9v56F4s69ni8XhaMX7++fucb+ushzXhJlVzb5LI6SQmRG4mkOO1lNp
SELwolz6rF85jvCPOJw+RXhNr+lM4FZfpxf07Rtme30B5we4ecpHH3K+gK0pFEGkowCyBtvYcVvL
zSwLnXV9ScK/yCSaVFUrx1iFLbXzNpYt3ZwStJ/uv0zys9w7ZirAkHXTCJ8Q+JhkpHYIZudZMkK9
UX72NHkjMhPzBCe+PB0ATbfrL/cPT8+324/d01N96cfk7AXtjzlzKYIOkoAnw96UwhrEehBceXh/
jjjuJu0wl8dtRdzNQ9SW8yk88rmytL4WSIc6hXTcSE6KrcfkrA7ES0XB7yO3DISzePl2m93nM/Eq
N7pwsaSLkpMyx2/9C7lO7WLm2OOhjLQgxlUncB0hI4BEYDB9pTkTjBttLrawjcdt5VpILWz55tSA
9dP7UiamK8AfnUu+vq4FMB+MhNii8XyFkQXhMwoq38h0X2Zvhd6wJaHZLDm/fVj3nW59HrF/7wM8
ojUeAZ+LmhFRlfw6GIgT0I6LqAx7xTYw5rnwikutnJ1ekLMz087FbnsLTnkqIvUPGeDeg3yQVGvZ
ogDjBxszAUDgQZoosg4XexbHYzZCmYV2mq2ZtdM0m+DHm0tFDm4i4wEExNia0rEpkb5BKkUVYJeA
vUm/3YZ7keXMqc+bJXy4dXLB37m6ATfjtdjdPz3tXlqJVa0y9q1DlFnnnAV4qH1/TEcC8KPAvmzd
m9owkS6tx2jcVqyl/efUNC/yU4zNaTGVc+DgFa62Boj64h1nQiacx2AzYwHQ6xruhGGXHyIutGIu
VGm3bscm7mv9NCrRiiNKlKxUoQphoSY1CoN9eHAG75kyJidnm8PUs2d3GrUVaTcHrts16xZQYv+O
w6EfDEu1YjVlARShVsL2px6FjqVvnzSp5uM1CVwLonRKOkPkYNOr5vvhMMV55H28o1FivXBgcLsW
pwbUdx8m1VFDkwKtEoRKXwMBWLMtDF5Ml8iVs4pb90bV0Q8LD30tlh66OIWxz+vd7fp+201CRsmK
WZp4fTlLX/KIkNpREgucQ+hr9+KNQkYrwUR4tST81B03vOKUUR8gZ0DI8CX2BB50F3zRBudrP5cV
Whdw+nT5dSjToScCLoCE9XpKfD5+jDd90bP206oh1Q/aWEKGZEqVesSPMhDxGt1oYMXEgqChr/EI
dewzJ3dxpZV2u+AT9pIukN3SvNOgT7rBWKvYLLFSE1iu5FjzB5xYYTnhCf7UqIKA8nq5+TUU397T
6FB7+Kc67LieNmk1AWqomx5a6ZjQ/VmZ4UPfsBVgIK7P4OqamoazY0WCFyfLvNdJv3Ik9B8Khi+y
XDoXNE1VQ8NuQW07zeHFcvEdDnDpTtVjtwrkslbOEgGpAffMNirtc3avVBKueIfDWNdyxf2Tm8Za
d2IzL8N3Ys8mBtu/Guvmz982D3e1Ja9/2Qzr3zTDhZc8KkGCA1UTFrq6nDmREZiyHg1T4aqyw3iG
M0nu0R2tDnu+pMN64sPuh5Pe3emtAseobFWlFKI2SmhNnUrREK2Eq6UsDjiRMzgFIooqOtHmGMW8
b/z/ibuyJreNJP3ev2If9wXauo/HOm3HyBGytXbM2wbIBiWuWt2aPry2f/1kFkgQBRTZnN0Ob4TD
ogCoKrOAyqsyv2zOsaB2XSUwCLZriIiSZYxSzZTvawyIwYZhwlHfgVmDVjC4cl7FBGpEWCEFU8K+
HrcpI5+XDOV2RbVonFUNQqhFiu+3u/559/A4YUlqcTzhZ9ZZIlPulNYgjAPnnUGzUQXujAnCg+Fz
aWXrkWvaGqkkg1zlxYyngM+HtO4StpilkRfznR4QvjRJVvoA7x5sWm4VSGAVQkccRbgHR/grBsV8
8DOu8OyJm5ruocXMEhnn2+P+fhZGe/cB/16E0ZhZUbJ+kgHFR0IHNhwiZSJQmTGuCzRLAqLJhuje
IhvmQ01LfboAt2r+Godq4BJOBsdXMLaeJuwhFKlJWGo94pZZxDRwGbNnuSqoj8GaxDNZ1IbNx7ip
52nsvVL/uakrcefpx6wga0lSzli18oIGMNIwQiUC6DDMw0s56uB4pMHGN0/MP1Fzriq35dwNysoG
rz05LvSX32fB/1XuqOfWUmfRkM6wA/C4Bg/EBWxZ0GcmBdo26k6j1sQ0ymYGLZfRiU2//fLybZ7h
hSUR4lAaUaryOBHJRlAyQF7HtQX3X0kLhp2RgUsvDLnqMNgvZpov6HjvpiaVtejvjzb+Qe5PeTRm
cvRSBmdOswQGAaakkUA6sIV0p7UlmREPQjvWX281VkXFhqyPUvDiCbjrub/7L2yh8PTcn1JfQAm/
A499hB2IKTlKGRDgEBMSrUsnPPwvgfkZPFy8Tl9/9+GXcKgLnq3iOSIWbKyRRYYtW2JgvO9f7ref
LwVZYrZO2QCOn3JYCKCQFwKuB0mRsuCoCW8Ie1HTc65EZv5MxfXWNF7e1k7hgs2fWFt+qqw0pTgm
gUaXpgskJ4wiic6hL041lrSF4LlYVHVWo9Tz28YnvO31+nATq1T7/T0mG64S9TKWvmoCXmsAN5t7
8F8t1u4HnRDXyQtBr03Um6Y5e7g5PVEz0shog4tTDu849zt/ihIwdQRKIfCRCwN+qqKi6BKCcHsU
jBKVBdORhbiIzdejVYTcNlTZjopl1PCso6dBwEbuSIf+KGxF7sDMyLzDgAxX0qn0Ssn4ZScv/Efb
wdvpYa0Z4OIyvlYSrvDs6+lpv9nfFQTDMdymbanXT4p6ITtqFRh0iOLgYGkLThNn3lrj2evAWNX4
F+CxqucW3Kx1OtYjLLjZ33+p9Aopb4KVYi+atQoZTAqeNWL1Yn1O4LoLEqQJuOKec/MWhtIP92dA
qODGTU0+bfCEJxBVYPbr6aiT4JEuMYkWYa4wAxXT7DsnTYFx1hyUY9LpovfSMK5h1iYpfLG8dw+f
9vdPUyHaFJW1nmWZre9SLGAxPHdeW9NF5pXSHrbbdeqmjP/qAs+pOJNROnui5nPb4nPYzKru+81+
WvADMItlLGUPXw44DCCgMZKHNexdMtQFwYVmgazK7qdxKgJ6uQ4d7Xq9XOgHcOWfjvVDo31Uog+H
giSukgcPBTYkF2AfUasxeJSBoKA905hj49/iU67KmM5DTU6P1KzqtQGw27BtKyXkZai+pxxocggo
qbkDnwbP+5ziosNsBrCkwLzy+l9BB7+MCF5RveHruPRuu1PHTenfu48n8CrFygfiRWDUMNXJghMT
VITvHwyvALLSqAS7wKm/KJP6RN9NzcHKe7aEnFIN3rsPLvxtxZhgjBvsaQA+kUMPATRpBmMS7HNH
AjOaUf4XMTan8Kbmol+zRolabKlDjcnTH/fPn4eq+hkrTMQ7OkIrizFZW9PoCMHyn+SAXaZgyxsq
OmmxK4akLKu3L84eM20/rilcp+NOD1VLASZHYynYlNqwffj2xw6M+ZPRpAuCOFgiIKW7zPHVCvif
98p0IiiZI/x7w9mZXKb5cAtKhgYlfIIv+vMEboJJLYekKp68x3Q6YRDKHD6vzmaCNr9JRERBtAu1
nP2zAW5iScP1wItqWXV0APv9vP+3f7cHvGFCMKZCk/ZJMt9ZjcVrYMKB5xRcR1NiLjKhonmTmMoR
bvj7Hy7DEX8/hxe0tGSJLfijt5vJ6f/4DdHRmpJKZQkuNcGqWzyRNGAfg8ciOk+4DAIcKu/jX7Sh
l1TWLK4NErh4O30/R2Qi2kA9cgY1BAgthtUsnJZkQgm/PDFCcx2NWjjji9EqSoZ1CSpcHKaDv/7l
lCBIDX491lowmmGNBc1gKTPHEZ4THNYUiLBeyZgX5cKnMeZTM2JWJ/eWUT1ZK79/vWOnhhTMjhBb
0buoUAXFjChLLBFQnox2WUoVM7jMrmR6zNFBZ+NUBNC1hQq2kOXHePBv8eOHZVWRBL9RgW8O0xM0
T8Gv9RSxulMmDrY0Yf6vUhkn8m5qBtbigXF128gDKV5JG39Ek+CiQBssG0zCA/fICUY68IgSaB8W
GCfX1cO8Ug1T0c7Xtex4cdLj3/2wTFqKCTOn8EOUGX15kKw2St5lpqzXzDn1Cuz09SfQ0+QLktf6
mQlulwUwQ/+4/VyqE+g7cUBKGVHXMpXWGewNgBA/XGUKzo5JXUL4fBMs7Cf+hkmsR0LOyeTD7Zua
nxaTell/8fPw9eF5+HU//M8p4nWsFCsakKGVIWxnsNIKQ82dFz53FPauINwyya9Kb1nPc+71LZ+r
uerXViOTt8vuTWO7rd+fEQpp5EbYgx3lok+GS9lFkREUgyoQRkF0UQkaFZUhXZHYjWOf3yR496Ym
sLFH1ArD9fth//W2v6txjWXkSnJDO+NlwnxpeBUGtnYOsNUjOIQ+XlVtexj8XJl0uVkRrcxazTBD
lmX3v/wwDzSNcknwEezYOe8lA2LBegGxhHDMnkjaJaWkj6AVm4hIa9rnc7QZmD9RcdHr2zUXfW+O
3hNunf1vw0lpcY7GX7FMAtegIBAvBevvncIDIPCmJC8A7F7rZRujxWAVIVuzWRNSELwOUMQ/548v
++ehgrgj2oAnF02nHIa4CCylZ9514Ok44p03LvCahHqYioJbvTbS2GAmW/zpH3fwD/mkvakqRx8x
gMq0YLeAmQY2sMYMEalDp5S1mlksLlksQzXQTT3b0CJhtzgy32Bb3ynhR5WyASZExF4FWTksUfK+
8/Dxd0YZSQO8DZMunuPOh6xJ6vmapB0nt7drbFaE15hHBXzWKfroOydZxLR3eD0xiS5h3jOnJI6t
Sa5DYy3YHefhWPH2TU1jwxTa6SnR/bv3vywS1gLQI7GtDU+8ZPhg6QXuSQZWFVXe2uDfKmHtl8ZS
7xqGK5j6cnUAc//pBTT8jw+3w92iS5s0gRonyjrjcb5PHdgSpNMWzDgbKWxYes2KL+c4jzw2f+qm
Inwdzi4Xz9anleN+/AezS3QsTpOGY+ckPCNHFFeFPUEytggJwSvPkk7p/1Yrcrq/4MG0eNge9+O3
/uvMnCelyUaIFA/EDfrnIAc99gwK4JoznmAPykwXp+KzMaq5KW2sH2X2XN++HiyD+yMexPybALVN
4L8AAgpjjyAWEWBYwzeRlckiaMrSv9S5r5rpld591bM1f2zb4m9aWwRQ+PTH82M/S9GcgCSJE5YG
tOWFxOR4EHzgxIHHZhwmIYByXgrd1XALYm4bxJx6L93un76VBmFH34mUo7diMQUtrDUSEcgd1mnp
CPIuuQ7cxhAMaIds29GYetCanmHt8XBml7kzWywO/QKGb6kSLaa4MOAZ2lL0iD9KLytQB1ynjmK9
HiaBo3QwGEuQ4HTnBN73ZYvuMPgF2NKFdQ2kNkQZZ6qVuV9Sx/bHtGc+IscYIkx509Qpn6nAg/qM
ISaBEi3irmLM24DF5ld/vdVUFyCK5o/d1BzoFluTMxd+/fHjh7uXT/v7RYfco4aRhGPlZBe5wyYc
XHYmkdgpG6SWygivyBs1TWhTUnGj1h0N4eKOn7C62MI11TkqxikeG3ms+tQZwQwI/JUGlWJQmdE3
g+pqCUW1a+wLzVr+jfs1fB8xUmzGSCFI8ndjroVwLoNMRhwYDHiQbME7za6ziGaOh0NEhKuRC3CW
C9gFeLviQG8bi66306L/46V/7O+f9/fDqcklCrwsqLKw1KQU2TiGXangG0pCey6Nipa0q6qW4y2I
aS3ndoKM+9pvP0+xMqPleJaFBycio7AFv54jDLdhRnY0g14WKQl6BjZxNlpFhVl3nYOL/XY643v5
9jRr48rleMZHpRHYsZeVnAHQruCoUt6FxBgzlnC9RIyZj1MTsGtIf8s3J1NxrB+tNzPodVDmFhwe
TGHnliis50Q0HsNzwJr5/Gb1DbP5K8obNTlwEZE7+dQu5Ofh0/7p+XGGxzwuoNMkgh2OPdZQsooI
OyBQ22XhLfbITlbR/8eGITXZNdd9g+t+ZSj/ODz3t2PtOjlA+YJH9o6P0NiC6ID1UeA4wX6iIIkJ
VqiwGD0RjDDxhpWXR0rOZVKMdysee2sbPK7M52bC6THhv6T7gzwbsbxcMg6UKaJ/WyzEip3HmDt8
pWBFZ5q1fvskyYmcC3moi5R/2Hfrbg94cbeo4Pr2/Plx6E+YjNxgOlFBU40RwaRDRyPoKu6wzD+E
0sKThpQS7JqLVVzVyBVpO9IwWndyeUS+sGloyZVEm6bkSmoCjrGS2CrJYo0ZWDQyOLRoMngIIMjC
VWgiV1gzZy0Zoexa5AlNlklSC4jYfd43IGIt2DGWgS7wHBVCdsX7ieDmGx64oj6EfK0+xSkuIMXC
3YqNLV8bZOJWyIU9cDs8fXl++PY0Sx+GT+WQWk5K/j53CiQ47IeAh8icRGBHGtsRoVSSSTCv7HUF
E2Wq4w7BB87VTawevKm5UC3WlumYRTOE/tvzC+758VTUlsioCylk4sHRi5ahycA6n4XukoE3BLtD
cv026VMzCi70pD48UfPYyAQQA1sGfuN+W5D0Hv+oEsAxBiwPb4/ALylYFzyGvyx2p6bYdFZiPm2i
Wto3FOdres7hPy2fq7gfWntwx/nKSbp7ePz4x/0WA9/2AJA2vmJsL6ITI+BrYoYcGB2djaVVALdw
y8Rs9JvL9Imec/v0cPumZku0eDUrXrFH/If+frgb33FpZGtVsdqTTqDEwBHElB2NBjti73pwSIR2
0bFk3+JznpNwqZH9+MSCSdtisj8G0x+Hrw+/DfN8DlGCdpKlzC066BFTNnlCV8QiYoJ0AZSCFW2D
ejnegphNg5h+WQd9PkXeSxYdQn5aFgM2ztQjurE31kaFfZ8CvaLoqkXabevDH6Y8yo/bx2G4/xlU
8KnNnWDqnSg1ECoHjaUGQmpsTmZJZ4XErhIg4aKkRuZFssB6uJqaYe2RSUZYI+2tCLKiAccjKOxa
KUYlqDWj3iGOHLg/YE2Dg2Y4yN0gow4SO005/6oEugBTM92+qchk622lhOkb/vAR6Ri3VSk9KBvr
AKUMq0ZAW3eEO1B+PJZuumA6RUSZAMPwmvPay1DK8yduKmobhq4Sfb/4TqtAICOT3k4YKQ0EvtKk
6CHzMPMMvqCwUuWMp+aXvtIzEUGlVYMsu1u1z8tTh1yNCS3FqDj8Kriz3oJUTl3EHpKcYqUABRnG
nMyJMOOieuWryBfb5E63K9o3jbM0teknWKa7P7/27+QpqoqRKVhCacFazg4Tb7DVjEO8TRKBGc5d
ICHVu2o+SD17rxqzb6Y+CL/3j6csIFDcGN3gjOisVMew6QGPGD+PMLsmYKcYCc58WBRUzAapJ1/3
gLBqNyx16m/7Ugaa4d2PzhJ/NwYey59jyyp4Pcl1giFsBdGmc8xT2M4MbEEQ1NJeFXY8znBG7Rzu
zlnQdp2GCxc3atUj+xnPwqUqKhL/KHYQCEBNEUcc60DA7EHoCkQqJJEHY5Ky/JXs/+dzh+DlVk3p
ukrZ6n4V5UXf9nZ4LmXOT9uy3KM3PgYVk1Eg0wlYbARxIozCNuulqE0lBZ6cC9ed4CNeXDxOc37N
V49VLLXOw3Vvl+BHyMXz3XQEC0pTkJJMFSyJLnHTCWLA6EYIJAfCFTa8csYrrRUzr8EuTAPXlK0L
B/GiWTV0/PhS8MtKPx8woIqXM/4qiN4JgQwUQnhb7ATvgT4Fi20YkwmEJXslvWMa/1wPx8Ptmva+
8Un3ty0VezRDCw7bPX7hWARZbH38E5VVopRm4rqo0d3UsNgOTztDtob7KFIw/uoTgcVsr/ctOD5Z
87czDf52y+Ma9/Q0PJdGxjM/RoyFAmLExih94I3olAIGwbjBRE8wc5RmFszfKFW87sR8NdOZc8/V
cwu+1sc4eoMlgfyVfmbvkvuA3Y3/XjgcrQ06JodFmngikoCwN9gTETS2ScZ00QngMlqR81Xh9+MM
bc6Od29q0rcNfvgSM/XvH8JhOaZkL3w3iVGwMFWXM2aYg9UO/jTsJJsjz1x5Qa5r3HQavU356X5N
e8O50BvFFrkh+/vdFLEXWqMxX4JOzlnGVOyUiIiqrkAxKEycCQ4bKuucxUU4mNOwNVFrFFG4aJZR
yh+2c0xWZconr8wh6yKl6BMsq0RQe49NMBjmAnOPtdsRvJ+rPvn5HGdk07YJyIoEtz4Ls8Qr/7G/
//QIDtf8cJ1Fozx3uK6YmeA9bNgAhgwNORJQBsmIq1K4jmOfUb2HuzXVdp2vpLd0GTz5MDwiQAMC
Dc1b2x0ZIDoGEzm2mMUe1i7CbuQRe2oH2JneGXBAr8I2Xk9zJua7frBi65bu1mzdqiVYFhZcbe8K
qvchG3Bs0gd2pDdYNIgNiuGF5IjREOAngWIQRlii06unMuH9+dqp8L4md9vYAbe3tFEf9uluPDsa
1778QHXGrNUea+Wx+Q53mnYeFTSoNIkAPU4H9r8+Rhrv1QSvwcjg4m5ptP34cve8f3542X5e9ZZD
q/1QfjP+wH0gQSgiqAX2r0OlzDrns0TsWgo+Kvg57rp9cH7aakMsH6tZbNRO6YEv38lPsaQbjHwU
NyQnbGoMmskUxF2K3hpYFhkEUgKriaj09idiP505Pv6pOjcei4NXPK3aufxteNwMjw9PyNmUAOSF
FpiUXMJn3CR4N06qLoE2w4yGzNLlQPBx0Dahx7s1ubqxLYZV2eQI/vJyv39+GqFffrkf88lr3Bfj
JbOsy6yA9TuE1mGmMwEcU82iJpK9jvuCI18AfcHbCw5Ei4PJE7grmAIToo4qSNNjUzWRoiKykxSR
1JWgsNwidilkTr0hNMh2U7X5iDUpjfIhw8hGyZGUh81/b0/9sVRJGIhSRmmI7mj2mBcNDr2lQJQQ
UbucFMj1RUfB+Sg39UzbxvRUzzrbf324DxXytiJET9jbFuUBw/CMAP3ILSyLx67m4PAZCu4RApGd
a3G/GLkmTOsGYWZK8Qyf9/fD0/CfD1+G+/2fp1giRVdZW2+CwiJJgpQF8PAtduQUShJNLaxQXMQc
/tnb0fUoigTf+RX9sslMchiab0zmAQGNq457I+7c3QtBYByzikbwdvffX1XzISDg7l6yPMxIQ3VV
N1XVX/XRXl2dottoElhYpgh8zwzJeT+Jr45QCls9sm0YQ6e2Iwu4DYOsrqLFrIP5EizdpFSxVctu
ZGy+rbFBkNFG0KYxmn47BYNcY8Fcw99GhyiuOfjahgp8A/NHx8ZMUBh8a6TYBu+ACMIgK1A66nev
vKm9y1mj8VqjNW2c6JfdexNETEOBHNsGbmWrmHTMwlMSFX1+JB5VOgVptBS5sbfVHSgM0bX0qESj
zpPT6ZIZ5sFCIg+/pxkoGMwEQxEMZgpmYBY40A4arxuWhu6rJggIyNCdYA2s7q6VeMMoT1dvQ+lh
YWldvodZ5q6S45BZ2ViWPMbDUOglmifctdBx3ZFMhcIcVxfFxr5gpZY6+hb7eigUb9yKAusYRq9n
uG2NdULHOrp5AEkGblaPpDHm5RjzNqxnRE1WYbj4sfPzGqJOf87KO43mqC3N0UurpTkoC/9s7rcR
EHDj1jmGqQYME2N+LKgw7bYEDDIim7xsmdpohPkTxN/l1tlCaL2htxHjoXBzE4X5/RJ/2cXbnFbU
slnwWuaxbGtjUVcsXhDQS0cdjUAETYlX0JSMSookjX7MirOOpGO7pv5SrTEtuUQMjCn9FtT3h/OT
nsx2UM8OW5XxSKYierFJmEFCkngTBhF+JBkwh7J0CYbb35GwIHvGcc63fIdscQx3b4WxyepyOADe
IbTa8vf7hBz8MCKb7+SYvoM4nc5HjNgCy/DUP28jFq0ifYclYf5gyHor9ZMvHqzSvNMuHBKalTGb
GC+Av2k0JEK1MIlSL0nL8jrie9UL/696uKm0CnqA4UNbQ+DrNnww5VXUn8PJfV4QtEer9i+eJy7j
/XeCyw98cnwjpdXekLjH1N8/wWpiIC3IOUp2IQxmT8LsQfjwSJKvqE9C73hJPSDrErOY94AszCEw
Z8GHR+71vEv9zT6CChB5WS0diBPyFR7CMFXU2YOjKKriwSpyLIS1u//6PH1x1+Ycfr04k+nymXD5
f/fvT0432Gr6D3tqLdfPLnmIjzEfHP19lARR+Ei4p+vVUUH5tPjBmUG6+xejHrlnP0D2bblEQdZn
5Q3hrAnBGHb4dpJiYOMWGKpragNmx5RAz9UCk7BsKRlo0g5UgVEABs2EY3ifMVEnpiuMnMGspzl9
eP7fDiKUMBLh7NzbALQcmgNfGL4GhTJoukWlPRXXxZ5LFKp98HFFPk5dss0SYEJXBDCANigTq3jk
LpiHLAI1cgohuqHWaCuu4h0CIuqHIdwmBBqKW7cVdn/kZixtNjGxhCzjoOO76tUuW5jz+dLqlQsq
agO5IEu8wmwv/jkkpy7+kcQSj0a4T5n6IvBZT0lEpvHb8S5Lr/6c79IowxDgBn47dXUY17RmZLI2
X+zOBinqgBbtkYA9VykIzh3lIMqo5HIYlYC29FgvmG6PaiCyUBWD12iD0+QF+2Sd4jYQSzw64TzP
Nl3zDm1S2R5RZDDThTlx+oGUer953nz6PHNsYNFuPjAGakEbFRDGdf5y+3lH1wdaQZvEYNbPU2tp
91KnKGKVtgPT8p1KgOGh6vX7UOjrXEcdogOGyu5SOBUY+muq2l26bMjo74WBNsl+qQrNYf4gB9BQ
SU24M6FmMoqRoRcVGO4/UEsDBBQAAgAIABSLLkoNPiY6tD8AAGIPAQAxABwAaHR0cC90ZXN0cy9h
cHBjYWNoZS9pZGVudGlmaWVyLXRlc3QtY3Jhc2gtbG9nLnR4dFVUCQADWM96WPjMelh1eAsAAQT1
AQAABBQAAADsXV1v2zizvj7+Fbo4WDht5fBDJEWjp4A+276bpkGddnuwWBiyRCdCbcsryW1zc377
GUq2Y8lyNt72pohzkTgmNfPMcPjMkJapqzyLVVEMjeaPv5ovP6hFovLrXCnjT0tKgv7qXUXlbbsr
/Jx/ymaruSrOP72/+PguOH923ry+9zZRizKdpiofHtbS+6TyIs0WbQWo52WJMq7vlqrZ9NnmJreM
/mVUpl/VGaDLQY1x1TLp6q68zRZgg21x8VfvgyqW2aJIJ7OGuAMWfyxUbrz125gYwr2eH5Xq/Dqd
t2ARhIWJsIktA4shpkNqDwjnholshHrvR0aXne+i2ICmzwZGA4wH3Ohj9hoTTM4A8DLLy72rMO45
i2xxN89WhfHx4w5G13ew5yLHRIIi06IAJ7QDZPoBd0IPWcxhTq/X08gN51v0RRmjdBErw82ycmgw
QImMQsXZIil6vdFdUaq58XZRqps8Le+0e0sVlxUUtYjAjUmv5+VRcasS4/o2V1GyRYLAr2mxjMr4
1vh7pVbgqTibD6LlcqYG8yhdmGV1Qa8XfI/VUgttjnPw2Ru7jj92PC8YjYz+6O3rUfD609lOfx0c
28H+PfhwOX57+cm5eAsX+f4HfVVUGug7avxQtCPhEgxqaPTef7gaBePL99dvw//t9T69Mz6oG+hZ
GJcqykEYRcOeab4yevqK8fg6+Hy9NynWmjD4O7LghbnzxlS/YfxpGJSg3/8ycvP7ef7tuzF69z/e
+z865lOv54DL0jiq8I6WKobJFMOgTLN8Xr057HkfnNGbt5evjetgdD00bstyeV6qoizOwd1xFN+q
83Q7DU3dMrgt57Ne7/Usm0Qz4zqPdAysplOI+H6uvkK8KSO+zbNFNstuQPlsExVnwx62LZhNlgUh
NsCMWxY2vPBSld+y/MueK/6rdr+YTqeSiyjiTBrX3hUM3WIB3hTTJFKTBGE7QTo+IDhKNTCmEEcE
vTBUDqyB2hoZsR+r0ab2lNKDGsFSYA086FZkC4s93jQgjclBRUUZ5SXMloYCSTE/wneTZNJhiUTC
5sgYjS6MNxEM0K2e1P77y6ChixBhcXqErtieHtRVGZMubiqlC3WTlWkViG2NnFk/Ghlrjc3IwFZn
ZIBGIciPRsZa40ORQYiUP8U0vG8a7TaNIozRTzAN/5Np1LIB7A8G/W6ctIIeFEhIiD+uAB9QAJ5C
/EcHR1oMx2JvcLoZSY8NYT84OBuNDw0ORYSSH/XdRlGX7zi47gjf8YRxZXiQxSs2SNQ0Ws1KcFr2
JVWgIMujG2V8S8tbY1kXZueT1SKZKeM+G/2gfsSNUCvV+lMoCMI319dXXgVgtNZfQBuMYYuejlZF
JWuouhw9pKpXV0NQBa3Lo+HwkeUQ1E07LX+oiZflqgtZVU9wTlkETlj3Gw53igVPJ/43WVEOh4Uq
2w39P67D4fCDml6V+cuDl7/67bcz47kBNWmX4EG8XEKJy896+EjURCFMD6N+nWer5XCYpEVUFFkM
6UX5WQx10aK8yCIo1PvbS5vvV2iJYEZ/VaYzqFmHkIXOeuRYp9KEqn9y6v91vd3XACze0k+P028n
RKLEOGAjaG45o9JJ5IFBuh0ygGC1IfyelhfqJorvuiBIEkcRtTSEpi5YrID+rrcrFBhq236zCfTb
sJRhx7kgIjgm8b0Lwjyaq439iSrBujDP5vW6r1JNbFgP7nSrgpMwC3Tz42ynlpK2Msw/oeenVH3T
wXaVp18hCs+McTzLCvVXpRCGed1lMJ8PYcVGz3pif0HZzSzr9cCEs5gZ+WpxDWV5vyiBKcZjPBxO
oiKNx0WZA6e8jG+j/IVx36j/H5d5lJZF1fZqtzGazTKIgSyvm4xXYPuiKOupwSWBAWrgq7EjwG4f
i51JLI2kcUU/XZQvDK25VvvsWaVX0k69GFZBZz15rF6BYty64h1waLduqBRQp26L2sBcQLizdJLc
zZIB/EonD2UCeyI5YcDrVfbUsrdMj4cVdYOAolo2j7+ofKFmTZm7omyUYKYIrCF1/vm76p+rcpUv
qnlUUeq9tGWdHhridlMUnQjJhG1sOo6//V2/0MKITSsKPEqcoLCwq+xsyKJbi8mDOU37dN1ozqMF
pMf8XzgISgrjS1UTjf/OioZjNtI7Rq1hCaYMc2aMN/3H85t8nC6+ZrBOgsDEfOOaxwu0kjhpCdw6
iJGtg+iTCwnryVnMnpzF/N9YjFEEFhdq/g1y1rhIbxbRrMve+OHJZ3MseYKmxiJaZMVMqaUWIuXG
zPj58wHupvFdKcxGsJZCOzmzvE2L9RyGalkLHk+zvL+bcfVmGJQeq7wqr17OMlgH6F+7qbdqe4ln
L3QhtP6ZNTOwYK1q8D/R12gU5+myvK+IdtMds5Ct1MSYzKvEPhy+URHUxkUcAS3eqB2Mq0UKNDyG
Tl9ebnuPSsAUv1uV6vur35o1xPEWaVuqlMqgwh6P51rqGCoVNcRStGvMxxiWEKttGLgqXuW6rBtt
TKyWIHZbI8XtqvIRGiOG8L1Gp7hbxNdRseMvDeKF8TVLE6PfQvbsrH/2SseKDpMPq8VFli0rbFJA
6b0RBfUuJqxddD4GmgU1/8+AFizK/O4qg2Ko/yPi1oVbVdEeZwifJJXcZzuBNF5Pr/Eyz77fvdyZ
eisQ+7KGAXp/DPGLH3LgMwjvfgW8GlVq9OdqnuV3Q8KZqMvj46hZyuSemidZcldRKa4K3iMl4ehe
0rb65Pamfj2G4Bk22oLu6V0Md6u4y9HHDxd6+6j+2KdeWR3N/3E0FcSYR7pWKm70wmXZRf6PEUQn
dCtIV1ustbbXQRlmq0VSf16yJyOeMAsD6YzHXriewiOVf01jWEDEt1dZ5Q5YybVI+hFiKVPxrlj4
U3mW8RYvPkIWUVR/xHEvafu5j56RvEV7XZtYze0rAXMS0vifreHs1+MJi9pcFdkqj6uls1Y51Atc
cFSLxdqw29CVIkxx7d3LUR1P4zrGxuPaF7hik58zieyfN4mk8XMnkf3kqkL55CzG6OmZ/PQ2OTB5
eiY/vX0L/PQ2LvDT27nA/OmZLJ6eyU+v+MJPr/oiT6/6Ik/wIyb9GVN1o4KzKjN9u2N8fX+bxFGO
QMmEgyOWelfodhx/1RvR/9ILkSA7XtC3RY7X0gQXrf2If9wuo9MoIqI2srYN1udJWt3YOSzTuUr+
ANn13RrVLu5vL4wkW01mqtqIxdLo15eli5urGlJxf1/GkVvNVFGKSA3mKsq/gMyLrBwOl/B6Cyua
ze7ezpezaqds/UHri/qaUZwtVXIRzSdJ9HKSZTOjf7bZ/O7qUm/Ftbvou5P/SMtb/24RzdPY0xva
+tbgxufYGBn9e4iVxRxZx+5BW4qyRHCjwlop35rp6k3moR7Yj4synb2sWi8Ayqv+9uURiDFrAr4d
2sfvX9PYUjhp7KpOV4v6juz165dd02U4rGbZPXCV39ujDd1+QjEc/vcYdd9N8BMEv9rsvurNaoiD
XAvun9W3jtj6Bpam+PoeDn1rAj92Vkl7E8h7m+LbHV4MbNbfODCaDbHQd4uIo1VN4mmt6ls5vT6s
jT3F/WRCTxR+ovAThZ8o/EThvyqFWycKP1H4icJPFH6i8F+VwtmJwk8UfqLwE4WfKPxXpXB+ovAT
hZ8o/EThJwr/VSlcnCj8ROEnCj9R+InCf1UKt08UfqLwE4WfKPxE4b8qhcsThZ8o/EThJwo/Ufgv
SuEUNb6l7oUjHSXlYFmf0vUvbpNHoj6gZKbiHQY/5kvbElssqr4AXoN5Vx96VBE4Of7e+IPDQn/e
sFg/+WvP9Ol9Q4E+ve+H0qf3/VD69L4fSp/e90MpH+4c3Bqvz7Wvzq/9bPP1AfeGPlBJGX1umZO0
PBv2DCOPvg/3jplH4Lx8cqghPtSQ7DZg+EkSeKGVJOmBS4ptg7ZUHygZyVr7cq9Bn0UOV3Q0xFqJ
kdsdSnTtkstdXEhFPI5jLQujLsC6Ae+KmjCFoBBi2hJMDliCaVPJxKYJtXWDdUgJ27sinthaSbps
tGwOyjXy6aylHSMCVR2Mdwcsqr3Su1ifge9dfawfFoBJL8jzLK+eQLB+fsD2Uqt3rQ+4uVzNJ5uH
XmCr1+u56SLK74y3cygLimFv86yA79vHBBim0XhzSmF0jOetkzH76Mx4ybjrCe7YJvNEaFLqEtN2
bGo6luMJjEXgIP/VPz+cY1cdt+U+BnhzOhXGc5hU66NY9TGlo9t0vp5pFRpEQxbawjNtFtgmdULL
dEN4xWTghNj3XcLCLjSHpLZwJfu4BCJduFZL/byMXWgWD8KAUsv0UWCZ1BLcdGzfMQPm+57NGBHI
fQS0XcENdEKqPXTMAqdN6QMFfx9Wlc/hIvgzwAPrOQD1ELKRFMwEbqMmDXzLdAhCpuVZKGBOGBDk
dQFtSh5M9QG4mn/P1w8NKc6dVp9d/CyKxT5+Zdkt/PWZuV24LRb6tu8GpuXqsaeEm5JQYfqWbQuB
GXcc1IW7ltiNt27bxcmZons4RcSn+zgPOdgNZCjCwDU9CzOTehY3Xc8nJguCwAF/BwEjB4Ae9uy6
cReqJITvQZUWmkynk4PHEHfgFS4TDPxpEsdCJpUSItfh0gwwEBZjTuCH9LBja7kPubfu0asR6jzA
KZqQe+TbN5WMLEgB+oRco085GhAC8Gwb5hINPdPzEDAQ9jzT8TzLFMyxEfMCC2HNQKsi13PpXF+9
o8smVNK2Lv0m05TXWnf5K1X6arK6AR6+0cev9/FAX4m1lzxJCeYIlEsPYAhqAo2FprQxtQObSM/V
XqofZXN+kU5y4ODz9WnO4cY7xXmXnm7vdfVsWMZ4vG8ZBLAmLF2xpHG2+DogG5ayLDAjRMxBDnNg
7jjSpJzbph0SZIZEeK7vEA7Ru+PNtpSGfs5Rh34hp6rWrx9qkKtC27PBQGyNwaahRbBvYsx8oEom
TEc6jondwGVIIIdWVLmDYU9SE4eIOnDYtPLD7gjP59nCWUGV1beqcSWDirldmwsaYPCGFCYFAjRt
n+qBFo7HfCu03fBxI7uRf2g8N+1N9NNJB/ppshnFzYGl2WKa3qyP0Ny400ZkYKEBpmAG9QNX+KE0
uY0gAQkwyPUgUyMMg2yTMERhuOPVWuz5gwoaOAXC+zjtOGp5uao63r6/dwFM5QGtp5HFtb8di3Kf
ATxuBZCAqINNYC1q+h6ngYDcRGy27+8dR++p2PXyurEBXe5WPZs3I517GhTgzmC2ZVkdH9aAwwXV
36me/xYSRNM3zBQfgpZ4gNrF0pSUSk8gWyCGH0b9fiv/APL7Dg30EWMd6FlSoYdReledJY23U0zo
YHA85IaubYoAmJzqtOlgyPkipNLioWcxZjWnWENKU7/gHfrjtvf0IwHUJye8H3c2QANK4ML6hU6N
GDI1ZYHpYe6AEyHVSOlJ0/MdFNgBcaBQesxUW+vq9uO6sWlDLPdtmFDRCt6dxxqsD2ssBs71CEJY
CLgYfDfQJCqFkIHE3ETChlLEczzTxYFnhtx2PRcTh7j8wVjo0tNpy+4116MD9l6PGrZOrI6ElyRJ
q4IpVLyqHrbWF9XsZIJSMdBZFywMSMAYzEYoEiHVVgPlUhd+udgFewV4gj5o4WgtvRvypnUXN0Xx
/iylsJjaxPlcxRHo2cQ5l3zANNSQQ6xDFcv0SoBaoQsrFD80uXQY9QJPCqeV0RqCek1tkw4I8fSA
66b3+7R9XjuRYcIBlO84Vuj7CCacDf5DkN3cgEO1wF1XwgoGh0g8yn/3W8EPe/K+X9OgBHUYlMSt
uH+/VAs/zVVcZrBw7FfPB9SELXW0U+xw4fgMloAeMSlDUDxwX5g2pPDQcqHKlQ9He0N6txmNLi0L
kg4L4HfTgtFtlFcVm2URyIc1ea9f6vHwfWJj7Jk88FyI5xByfKBTkHRDyZlwLcd+DPGs1RwYi7qx
Ad9CHQNgIWsT1NVD8zYhLXQ8S2bZjhNIKMddKEcYYaYMPOBv4ghYS0A5bInOPL4jqgWBdUEQGwje
68/6076Bs4EhgQR0EgkZ8VwJA+9CnQirbUk1zXHTxi6zKRcM8t+DA68r2Nd5tLxN4wP89mF9HGxx
vg+kaQTuMILRpJWE1ufTBt9LtSiqeXlfwXuhL22bw3T0wSYqcWC6KIA0BNWRtBzBPPpwBm8L7zap
3athBos6CCZSshXN71SSRtdZNptk37cmCIoHmA0I0mPDqePTEALEhb9AMLBysx0pTRvIn9KQWF74
8KTcVdFtyG6PhhETvL/ugDen24CCYf/0zpularHdIsFYVmzNOPIFAo4WSMJqDkGdLTlUAIBYhh4U
sA73/5FMXl90I667p+to2kPRNILwDiOs9khsDjzeiaOQenrrC2aE1LUVBhqxHTswkedbDg4DalPx
GC5Zi34wihqQ40jtQ44TsVkpfF/GWybhbMDQQK+2mOVjSjQ+ZgUQ+5CKbAlrHCqYICSUPra71wVb
cQ0QCRL/z9u1bEduJNe9vsJLbZKT78cyn3L7SFZbPRp7N6delHjEJvuQbI3lr/cNoKqIBFAkZ4Zn
Nk2ygM6MQEZG3BsRiVoKsVf8LMTj7dMzGBUjYHIyF5GjZqIlgGfrJIuFfJoPcHJaWPzsY/R0mH5+
tYIS9nZO57+jb3KdsrykAzaGwnZPAPEKqAAiABGTQ7U1xCA0f9HwMOL6UuFCJ+FB+6WE10HOLGsH
+/x6A7x+RaEWHvaKjIuyCVYBKYClO8p2IM5igwDcGKddiyLJ+NY0w88fLicWfv7wTS+eWpN5u5Ik
OQPW9qnS9+U8YpWlVFcEGmiHnH6nZW8muSgRNjLYvmoxgOiDlBQDmIZ9E1yIrwaQNwPkkzwXbjxe
nam9W1P7+mTMQzH+U57G6JMjk8qHAnfFkq9wZDVpFmNsrKVaKhe51Bzfz5F1QkxV0Fwukx/AF3M/
dp5m5GmeSyA8KDN6NSHFldID8g9cO9gZYiOiFfaJgncjf91Ka1wmYL5Q3kzRhmleYGnD9V4dvaKO
0Pa0Iu3+7unj5uHx8HBeEOMHiCcBUkOsmmlsIewcQWkcB9srrWRgPOtb+9eRsg7YzIX+plfOrWhs
/Bkhfv7y65nzkCOLOjWZLagF+XOF/RQK4LgVYNIVq1Zzm2XPziP0E9uVR63N9WzP//uHMxCBqxr2
uOdusBVl8ayzhplYWL7S2Agh88qa8EmJIqqxL2dy8uZhewlHTW47i7B+5/lyp55eyU7Sh3OXNohA
ZqRpJxgCV77ZWiyXzIDmYm9L+C1H6DcrhHuZhVflH9ZrvNaJatXKSoCVrGQnDn/5OE2x0IrIIcaJ
YUVckhYgCvLWBMnhhBioTcE/IWXeiuBevj3B8vHFDMvH2Cth/JoSZ19KOdyb28PDX5/rZpZEjoIs
FkiqGUKEHq7HWx6YSwC82sD35LLOd+YD9uJs1sTZHGbL/+HHuNsdbsdePjxPbkbqO/5CrMGI1JzU
9PX2cCtg7/CHFtCF82wNp68lf1PKqpvoUgJwckunjF9JweHDw5L9tE+nVIQeYI/XMiLaWgZGAINo
UhKbbKwab6MA/RFNvkZ62qeLGLV10EeH7RKh6rATJ192TDU/bu72tJtPhQnwzWPeSUYL1xFgtc4T
5eSGeSAIZmwdgFpoyb+UxO5Gnopm+PWSQBohxJDawc30xSS3v1+Fs20OqWqscDLZMxEMJy8HlmWL
YDxJmLaCm2sz3NoP00kAurqUwBzmZYqfNn/LeNgPm6vjdxhjPUUgrzsWcIQOQQJFIw7DHm3FdolG
sAAILSWvAk9puaBTIPWn+Qy4evdE2OhPP2x2P356vt6J77bLRIzx4gz8p1+JBkQ4IkDfsgL9AC/l
BmFCBwSrmIG6tXVgew3cZJaHngzzTT+TWJlenk1r+/j5ip+mVwPpqOQ+dAbLSFg84GeWbE3MFNNi
yk4Gafu5J2P0c0u3MrfarKDjSQ3hmTFWozOwCUiPQdxWHA8gFPgQr50sKQblRH0VB79SPehu6aVX
2xXp/Tx1km/vv+7L/e7xJDl47FhZMq0EYKrCeEBkgQt0LCUEFWODrOBurin+Jk5ymuGCBqfLnfTg
TUvpt+qcFW73j7d/3Y+d62frs1dSD4KHkrwsAK86AcsaQELsWpYrl7wF6n2YpYaXo3XC7PSyjGB2
Rp6cyNEL3d0/3Vz/8QxQ+VCkozSk9qlUpRlvDtgNVoE40hrLxvmqQvAu55fc23TgXrDNyu7YUdvC
KNjXu7/d3O3P28Nc0boC5STtq2HYhZTYDZAmGc0yDLKlVEEF1Ko009E6MfZ8GafM3uqZqY2WkqcF
RzI6MSAw/Biq/t5WzI8ta6nTRwegr2gQhRECeM3YyfnlBPpyjgtZ2+WNvU52GTgsJ7fd1QT+crM/
3L+csssuSyuw2skaal6C05bVMWFjjoV8QNMvqjSdYl2X6R1TJaxYydpYIeysVeT7zd0v8W5z+8fj
zeAGxsrQ8BMKCF9A10DnI1WGlKeo43RkHDZUtAF3c+bdGdZUpAtkeXJHr7RYU3qjrw/Xa18F+i2B
YwIitFOld0oVoCUqgzGVUwablJnVkrFpbNVgPC9W05e7w0qxREdWHXYzS/qvr5uHp/8bu4vEiEY1
JVSGWkyu0VlhmVXUvpEAmxN152lnU7NFNePTi0vwPPj6w3y+3omurtWK6NdzAJqplfWnA7WwHR6O
vWzP5SQnKB/JjQd+MY6BxBY8WY+wHPAP18I1m5QVJb0pmqzMdSGwrNw5024ZY6wPm9nu+O5wfzLb
8w4XRlzpMJpM8d4ZgeDoFBQjvx5EAfxoNiKAtmBTeItik2kuJByfb5iq4cJ26anowxNC+3p3NnUZ
hqJYEjVox7JzZswkwLQFbKuaCtPyjdcL/n/FvN12BSW5vTqXum52Xynn+VxnMnh29PjIrn0ISYCm
KE89aAVexWf80xAVRTFFmuzmbUndaJ0kexNWJNnpizkxsvf//j7+5yQjxkGoyemppEw2CESuZUq3
KOJ/WTCtZItalJLL69iNxr4M2+hqL//OrMlvTk+SUodjm+XN3S8/P93cPgOf0RRj4SVmH8EKEDgV
d46FAOYaYs1wi6APcdZhdWHIqVieb5dpCs/3ftap1LXvf6uk9oNTFccUhchZ+dYSq8kBlGleWMzU
feiM51GYmHl8ybNOh+/F24c18cJJvN8Of3z+5aHrRPOIuhnonAHiki+qcKeqgB0Hn+Fmk22Vr8oy
HasTQoSlj/diJ09C/MfH+t1zcWQgmV7G5qignlSlolLEsmnAw6x0lJ6SNrn94/1QXSLyefZe6J1a
E3p7srfv2v9Qbfuwf6Z3g5lhFVUCoGWc8q5gWByuvGkmUuZBNe+ce6cc+EyCTvqw0gZJH75Qu/i3
b530IDcUlIZfiKRh4Sv16dZMRWGpJdANuEMwKYCuImIl/08WK6Z39Crs+IoKVBbeDgvw04ePy/K8
zaHaDExiZaOONBhPrPDhxuqojOBJuPie5fmJEL3wh82a8PuZt/31cPuFwqa6oseuKZWtTIkanIjx
NHSWREEp+8w0D9zk0nSz+l3yx5j6QuoYVzplNivZeHw4V+bxy+Gw+/Xq4bC7/+XupicX1Pg25smH
n1RTqSYGODfWNGVBJLVUpIpokorlwuesTX0PPT8NUv20JlTHeOa3zZ7AigfbUFdxh1I/Ptw/3e/u
b9PX6+vDAxaWkqZaDQUKwAeTAyvFEEalAoXTgtXasqmKAz3Xt+CgfoZ1Vfp7ej3M9YoedrNsW/w0
Jg3P9WIriK9TrDLSWcB2PiaOFIAdGLJITMvKY4hF1urfmE4/TnIxoX683qvgxYoKYZ65+e5wdxiJ
6+b209P9A6IBVQYGXdQICHz2UmjsNC0DNQcry0KujVEaDmzfm/xWbLqY6hJGXdzYqbZdSc/7nRWn
OPn7DzePZ7RqrBpqrqA4QjZXWIsKy9EoF59ARX1BxElS1JxfIaCn/Prh1b30+2GHAdZv6+Xr9Nqv
NOviw3M17/HLzd3+6+cv50ga3LBAPACDO98Yb/CCqmmwImHhIlxp4J1G5ux7xNaPNBUimO3y4QZn
5/h38/u0gXE0GDoHdQWbIevXIpXCAXiNoRrfUPqgSqMT3GpvsM9fIZvxL6+1L07v6FQAKVuq4DeH
RU//w2HoU/rwI2I6H/vMtQv0SI0rQeZWWXWC0hX4LWK/AqzogqcRrAvt1fh4HPxyPD/e0Am/2S9d
aNjKeWV183V/cz+oEOk38j9HBegnQZLoim4wdW5lIqosGOJIZhkM2urCOWLnqxoMY1+Wf7jcSb9V
a9LrueNcRJExYyGv5JUbKpJyRCkpQvrAGTidQowXmXnXKG0hKrZza/xtLd+r070xvs3TGWHrVlS8
NnbIDPXWFX/OUEogNIwOdfxtOMUCGhhyZDYXUFZugBezlIxL76M0Lo879k2dOpjkhRX6OXfCD8mK
hfDX8w6ocvP4W3zY3jw9nDf4uC5jaycosgTTMIoa2SRgSXRcsFZqMckYxV+p3M9GX5d+dtNUi43y
S7a2ud7KZc17PA94FYYTJFxf6UEBpYVocJCleGxubAbms/Us25Ck5KZqUV7LRV44FpiP1zpxr/dq
Rdz9Sv/peMBorMHawVKKDTLB2hm1PcERBWo+lo3JlKIDS2/F6Tc2DF4+XXS8OBN6aeZbfuz87aHc
Yfd02A8VmDOCmJx908ommRR4KTXQIcKxxKnZlDehqJ+Oc/lWRLeY6DKwW9w6VW5ruFwqZ+i4bo/v
nkP+GNLpPJKg/3f8k/4aCuVeSFMA8JogList/BTCXmu5JMyUi7P/CmwxXus0dSvhnD5cOYAzy64j
pHiKJ37ICRVERKyf0JIa1hpISCue1ZgLwCEiutfvk71fubHTJ6wg822w8sR26QjnOX10OgbaBFdJ
tsSK8ogjPicWgoysCptKTpxHvl6seh6tF2IFYGx3PKwAjLJ52gwlbdrRWgy1syhDNDoIZgU1ATvE
Zy8B37yulWeqN2b9amimgV84+4mrnch7u2Lx+324PmyPHTbgow9/fHm6Pz89NbQB0x5OJnMDT8Mg
NqdDlxH2nSAwPCVsP6osLhwrmI3ai7Rfcv/tQVyv9Lo+nmxmTOS0m9vD9zePcO0SLn0gjwPGF0XG
4lxijtAwIhN2pAyAn4VHJSM2qcjv1zPay3L5WMfzPZ36134ZirfXdLZYHY9WfLh7Ojxcb0iW05oI
d0XZd+2UVroKBldzzNFGrh0rCF5c6ljtK8cR/h6HM6QI39JruhC41zfYFX2HhtlBX8D5EW6e89HH
nC9ga0lNMR04gKzDNg7SU7lZVGWrpZck/JNMoktV9XJMVdhxv2xj2fHtOUH78e6XWX5WxiAcAQxN
m0bFgsAntGDUIVhDFMUp80752fPknchCLROc+PB8ALTcbH65u398utn9cHh8pJd+zM5e8OGYs9Qq
2aQZeDLszRisQaaD4CbC+0vE8TBrh3l53F7E/TJE7aScw6NYiaUNtUA+1il0kE5L1jwdk/M2sagN
B7/P0gsQzhb1+232WC/Eq9rpItWaLkbPyhyfh3cLntvF3KnHwzjtQYxJJ3AdpTOARBIwfWOlUEI6
615sYZuO28u1klrYye25AevPH1qbma4CfwyhRHpdC2A+GAnzzeL5KqcbwmdWXL+T6T7P3gu9FWtC
i0Vyfne/GTrdhjzi8N4HeETvIgK+VJQRMUR+AwwkKGgnVTZOvGIbGPNSeMWlXs6DXZHz4Oadi4fd
DTjluYg0PGSA+wjywQrVslUDxk8+VwaAIJN2WVWbXuxZnI7ZCeVW2ml2btFO022CHz+9VOSQLguZ
QECcp5SOL4UNDVIlmwS7BOwt9v023LMsF059flrDh7ugV/xdoA24na7F/u7xcf/cSmyoyji0DnHh
Qwge4IH6/oTNDODHgH152pvWCVVeWo/JuL1Ya/svmHle5M85d6fFTK1JglcEag1Q9OKd4FJlUubk
qxAJ0Ost3AnDrj9EXOjFXKnS7sJezNzX5nFSolUnlKhFI6EaE4mSGk3APiI4Q4zCOFdL8N1h6sWz
O4/ai7RfAtfdRhxWUOLwutaxHwxLdSUoZQEUYa6UH049Kpvb0D7pCuXjLUvSKmZsKbZC5OTLq+b7
/XGKy8j7dEenxGblwOBuo84NqN99P6uOOl4MaJViXEcKBGDNvgl4MduyNMEb6cM7VUe/X3noG7X2
0NU5jP202d9s7naHWcho1QjPi6SXswwljwypA2e5wTmkoXav3ilk9BLMhDdrws/dcccrzhn1EXIm
hIzY8kDgQXfBF30Kkfq5vLK2gdOXl1+HMh96JuAKSNhs5sTnhx/yp6HoSf20Zkz1gza2VCGZMY2O
+HEBIk7RjSfRXG4IGvYtHoHGvnByF1d6aXcrPuFa8xWy27p3GgxJNxgriS2KaJTACq1myh9I5pWX
TBb4U2caAsrr5ebXUHx/T6cD9fDPddhLO2/S6gLUWDc9ttIJZYezMuMvQ8NWgoGEIYNrKTUNZyea
Bi8uXsRoi33lSOjfFQyfZXnpXNA8VQ0NDytq+3kOL7cX3+EAlx4MHbs1IJdUOSsMpAbcs/psbKw1
vFJJeMM7HKa6tjfcP7tpqvVBbZdl+IO6FjODHV6N9emPz9v7W2rJG142I4Y3zUgVtcxGsRRA1ZSH
rqFWyXQGpqSjYSa9qewwneFCkntyR6/DtVzTYTPzYXfjSe/D+a0Cp6jsDVEKRY0S1vJgSnbMGhWo
lCUBJ2oFp0BEMc0W3h2jWPaNr84xk3Z5SuCg5fWKixi6jMmr+cG+xoQYNozUUSQGWEMoGFQu2VIR
RnTQRkurw+t5m2Hky55huNxJrVdqVQet7azF98vt5un6/uH8LkmnTxV+GWLgpjZmnYMzzkoxT7DR
ZhW9zzoB+Lz0ZPuRe9lWWkkOZtEXM1YBn45t3UPaYtJGPsB3cXzDl+M1mJSx9sC0Klh4YJsz41HQ
6x4iV68AiungF6jw5I5verkPa8rM34zz5eHmbpJGu/pIfw/OaOysGLp+qkfg45kBw9GbMulFZd5H
lkUzHK4p5BLfoxvmYy9LX13ApV6/laIaKOEZcHwG2Ho8v3uIXGrVQYRE7y0L9E6D2Kh7VtnhrY85
+Koan50Nm47xTT/Pyt4bzn9u+5O40/ZjObxZy/Chxups0iIDpFGGSmfEMOrDq624HFUROZR3b8x/
lubSqdw1cnewwazouuGnB/3b/06S/4ve0aRCEDEQkG7YAVSuoYK4xpZFPPM1i3VQ9zxqL8zKsZmD
M/PsxHaz++3rl2mHFx2J0MejEcOpPMV1DQVBBuIx5QLovzUBwM6brEzSnr+pGJxmM00f6Hjtm15U
uSb/5oTxj37/3Efjz0SvNpA5JysAAbWk8cwZsJBjzgXeJE9w2qW33m6sTootX5ZS6MPnF3c9bW7/
St8G8/j/xF1bk9vGcn7fX+HHvGAz90ve5mqrjlSRrdg5ryAJSox3uTp7cSz/+nQPSBADgFyeZEup
clkUAM10DzDT96+f21PqCwjhW7DYe9iBmJKjlAEBDjEhUbt0wsP/EqifwcPF6+T1jx9/DYe64NEq
niNiwsYcWaRbsykGxvv2Zb/+csnJErN1ygYw/JTDQgCFvBAwPUiKlAVHTXhD2IuannMlMuNnKq7X
ZuHlre3gLlj9hbXlp8pKU4pjEkh0aZpAckIvkmgc2uJUY0lbCJ6LSVVnNUo9v134hNetngc3sUq1
3e0x2XCWqJex9FUTsFoDmNncg/1qsXY/6IS4Tl4Iem2i3jDN2eDm8ETNyEJGG1wccnj7uW/9yUvA
1BEohcBHLgzYqYqKIksIwu1RUEpUFkxHFuLEN1+PVhGyWRBlWyqmXsOzhp6GAzZyRxq0R2Ercgdq
RuYNOmS4kk6lV0rGLxt54V+XDbyt7uaSAS5O/Wsl4QpjX09Pu9XuriAY9u42bUu9flLUC9lQq0Ch
QxQHB0tbcJo489Yaz14HxqrGvwCPVT034WYu07EeYcLNbv97JVdIeROsFHvRrFXIoFLwrBGrF+tz
AtdNkHCagCnuOTdvoSi9258BoYIbNzX5dIEnjEBUjtn7U6iTYEiXmETLYa4wAxXT7BsnTYFx1hyE
Y9LpovWyoFzDrIuk8Mny3j183u2fhkK0wStrPcsyW9+kWMBieG68tqaJzCulPWy368RNGf/VBR5T
cSajdPREzed6ic9uNaq6b1e7YcEPwCyWsZQ9fDlgMMABjZ48rGFvkqEuCC40C2RWdj+MUxHQyrnr
aNvq6UI/gCn/dKwf6vWj4n04FCRxlTxYKLAhuQD9iFqNzqMMBAXtmcYcG/8Wn3JVxnQeanJ4pGZV
zxWA7Yqtl1JCXrrqe8qBJoeAkpo7sGkw3ucUFw1mM4AmBeqV1/8MOvhlRPCK6hWf+6W36606bkr/
3n06gVcpVj4QLwKjhqlGFpyYoCJ8/6B4BTgrjUqwC5z6TpnUJ/puag5m1rMl5JRq8N59dOFvM8YE
Y9xgTwOwiRxaCCBJMyiToJ87EpjRjPLvxNiYwpuai3bOGiVqsqUONSZP3/bPX7qq+hkrTMQt7aGV
RZ+srWl0hGD5T3LALlOw5Q0VjbTYFUNSltXbF2f3mbaf5hTO03GHh6qlAJVjYSnYkNqwfvj6bQvK
/Elp0gVBHDQROKWbzPHVCvif98o0IiiZI8GuPexMLtN4uAkl3QIlfIAv+usEboJJLYekKp68x3Q6
YRDKHD6vxmaCOr9JRERBtAv1OfvXAriJJQumB15U06qjA9jvl90P/2IPeMOEoE+FJu2TZL6xGovX
QIUDyym4hqbEXGRCRfMmPpUj3PBP7y7DEf80hhe0tGSJTfijm9Vg9H/6iuhoiyeVyhJMaoJVtxiR
NKAfg8UiGk+4DAIMKu/jd9rQUyprFucKCVzcDN/PEZmILqAeOYMSAg4thtUsnJZkQgm/PDFCcx2N
mhjjk9EqSrp5CSpc7IbAX/tyShCkBr8eay0ozbDGgmbQlJnjCM8JBmsKRFivZMyTcuHTGOOpGTGz
yL1lVA/ayp/3d+zUkILZHmIrehcViqCYEWWJJQLCk9EmS6liBpPZlUyPMTroaJyKADrXUEEXsvzo
D/4jfvo4rSqSYDcqsM1heoLqKdi1niJWd8rEwZYmzH8vkXEi76ZmYH48MK42C3kgxSpZxh/RJLgo
UAfLBpPwwDxygpEGLKIE0ocFxsl19TCvVMNUtPN5LTteHOT4j++mSUsxYeYUfogyoy0PJ6uNkjeZ
Kes1c069Ajt9fQR6mHxC8lw+M8HttACmax/XX0p1Ar0VB6SUHnUtU2mdwd4ACPHDVaZg7JjUJITP
N8HCfuJvmMR6JOTcmXy4fVPzs8SkntZf/NLdPzx3v+26/z55vI6VYkUCMtQyhG0MVlqhq7nxwueG
wt4VhFsm+VXpLfN5zr2+6XM1V+1ca2RyIyZhir7d1p/PCIXUcyPsQY9y0SfDpWyiyAiKQRUcRkE0
UQkaFZUhXZHYjWOf3yR496YmcGGPqBmG60/d7n7T3tW4xjJyJbmhjfEyYb40vAoDWzsH2OoRDEIf
r6q2PQx+rky63KyIVmYuZpgh07L7X9+NHU39uSR4D3bsnPeSAbGgvcCxhHDMnkjaJKWkjyAVFxGR
5rSP51hmYPxExUWrN3Mu2tYcrSfcOrs/upPQ4hyVv6KZBK5BQCBeCtbfO4UBILCmJC8A7F7raRuj
yWAVIWuzmhNSELwOUMS/5E8vu+eugrgj2oAlF02jHLq4CCylZ941YOk44p03LvCahHqYioKNnitp
rDODLv70jzv4h3yQ3lSV0EcMIDIt6C2gpoEOrDFDROrQKGWtZhaLSybLUA10U8/WLZGwnYTMV9ih
fEj4UaVsgAkRsVdBVg5LlLxvPHz8jVFG0gBvw6SLcdzxkDVJLZ+TtOVks5ljsyK8xtgr4LNO0Uff
OMkipr3D64lJNAnznjklsW9Nch0aa8HuOA/HirdvahoXVKGtHhLdf3z/6yRhLQA9Etva8MRLhg+W
XuCeZKBVUeWtDf6tEtZ+XVjq7YLiyomQswDM/vMLSPgPD5vubtKlTZpAjRNlnTGc71MDugRptAU1
zkYKG5Zes+LTOc4jj42fuqkIn7uzy8Wz9Wkl3I//YHSJ9sVp0nDsnIQxckRxVdgTJGOLkBC88izp
lP5vtSKn+xMezBIP6+N+/Nrej9R5UppshEgxIG7QPodz0GPPoACmOeMJ9qDMdBIVH41RzU3pwvpR
Zs/17WtBM9gf8SDG3wSIbQL/BTig0PcIxyICDGv4JrIyWQRNWfqnOvdVM73Su696tuaPrZf4G9YW
ARQ+f3t+bEcpmgOQJHHC0oC6vJCYHA8HHxhxYLEZh0kIIJynh+5suAkxmwViTr2XNrunr6VB2NF2
IiX0VjSmoIW1RiICucM6LR3hvEuuAbMxBAPSIdtlb0w9aE1PN7d4OLPT3Jk1Fof+DopvqRItqrgw
YBnaUvSIP0ovKxAHXKeGYr0eJoHj6WDQlyDB6M4JrO/LGt1h8AuwpRPtGkhdOMo4U0uZ+yV1bHdM
e+Y9cowhwpQ3TZ3ymQoM1Gd0MQk80SLuKsa8DVhsfvXXW011AaJo/NhNzYFeYmsw5sJvHz59vHv5
vNtPOuQeJYwkHCsnm8gdNuHgsjGJxEbZILVURnhF3qhpwjIlFTdq3tEQLm75CauLTUxTnaNinGLY
yGPVp84IZkDgrzSoFIPKjL4ZVNfSoai2C/tCsyX7xv0WforoKTa9pxBO8ts+10I4l+FMRhwYdHiQ
bME6za6xiGaOwSEiwtXIBTjLBewCvF1xoNcLi67Xw6L/46V9bPfPu313anKJB14WVFlYalKKbBzD
rlTwDSWhPZdGRUuWq6qm402IWVrO9QAZd9+uvwy+MqNlH8vCwInIeNiCXc8RhtswIxuaQS6LlAQ9
A5s4Gq2iwsy7zsHFdj3E+F6+Po3auHLZx/ioNAI79rKSMwDSFQxVypuQGGPGEq6niDHjcWoCtgun
v+Wrk6rY14/WmxnkOghzCwYPprBzSxTWcyIaj+E5YM18frP6htH8FeULNTlwEZE7+dAu5Jfu8+7p
+XGEx9wvoNMkgh6OPdbwZBURdkCgtsnCW+yRnayi/48NQ2qya67bBa7bmaL8oXtuN33tOjlA+YJF
dst7aGxBdMD6KDCcYD9ROIkJVqiwGD0RjDDxhpWXR0rOZVL0dyseW2sXeJypz4sJp8eE/5LuD+dZ
j+XlknEgTBH922IhVmw8+tzhKwUtOtOs9dsnSQ7kXMhDnaT8w76bd3vAi9tJBdfX5y+PXXvCZOQG
04kKmmqMCCYdGhpBVnGHZf4hlBaeNKSUYNdcrOKqRq5I25IFpXUrpyHyiU5DS64k6jQlV1ITMIyV
xFZJFmvMQKORwaFGk8FCgIMsXIUmcoU2c1aTEcrOjzyhyTRJagIRu8u7BYhYC3qMZSALPEeBkF2x
fiKY+YYHrqgPIV8rT3GKC0ixcLdiY83nCpnYCDnRBzbd0+/PD1+fRunD8KkcUstJyd/nTsEJDvsh
YBCZkwjsSGMbIpRKMgnmlb2uYKJMddwh+MC5uonZgzc1F2qJtWk6ZpEMof36/IJ7vo+K2uIZdSGF
TDwYetEyVBlY47PQTTLwhmB3SK7fJn1qRMGFntSHJ2oeFzIBRMemjt+4WxckvcdvVQI4+oDl4e0R
+CUFa4JH95fF7tQUm85KzKdNVEv7hsf5nJ5z+E/T5yruu6U9uOV8ZiTdPTx++rZfo+PbHgDS+leM
7UV0YgRsTcyQA6WjsbG0CuAWbpmYjX7zM32g59w+Pdy+qdkSS7yaGa/YI/5ju+/u+ndcGtlaVbT2
pBMIMTAEMWVHo8KO2LseDBKhXXQs2bf4nMckXGpk3z8xYdIuMdkenemP3f3DH904n0MUp51kKXOL
BnrElE2e0BSxiJggXQChYMWyQj0db0LMaoGYdloHfT5F3ksWHUJ+WhYDNs7UPbqxN9ZGhX2fAr2i
6GqJtM3Sh98NeZSf1o9dt/8FRPCpzZ1g6laUGgiVg8ZSAyE1NiezpLFCYlcJOOGipEbmSbLAfLia
mm5ukUlG2ELaWznIigTsQ1DYtVL0QlBrRr1DHDkwf0CbBgPNcDh3g4w6SOw05fyrJ9AFmJrh9k1F
JptvKyVMu2APH5GOcVuV0oOysQ5QyrBqBKR1Q7gD4cdj6aYLqlNElAlQDK+J116GUh4/cVNRu6Do
KtG2k++0cgQyMsjthJ7SQOArTYoeMg8zz2ALCitVzhg1v/SVnvEIKq0WyLLbWfu8PHTI1ZjQUpSK
w6+CO+stnMqpidhDklOsFKBwhjEncyLMuKhe+SryxTa5w+2K9tVCLE2t2gGW6e6v+/ZWnryq6JmC
JZQWtOXsMPEGW804xNskEZjh3AUSUr2rxoPUs7dqYfbV0Afhz/bxlAUEghu9G5wRnZVqGDY94BH9
5xFm1wT0FCPBmA+TgorRIPXk8x4QVm27qUz9Y1fKQDO8+95Y4re947H82besgteTXCMYwlYQbRrH
PIXtzEAXhINa2qvcjscZzoidw90xC9rO03Dh4krNemQ/YyxcqiIi8Y+iB8EBqCniiGMdCKg9CF2B
SIUk8mBMUpa/kv3/fC4IXm7VlM6rlK1uZ15etG033XMpc35al+XurfHeqZiMgjOdgMZGECfCKGyz
XoraVFJgyblwXQQf8eLicZrzaz57rGJpKR6uWzsFP0Iunu+GECwITUFKMlWwJLrETSOIAaUbIZAc
HK6w4ZUzXmmtmHkNdmEYuKZsXjiIF82soeOnl4JfVvr5gAJVrJz+V0H0TghkoBDC22IneA/0KVhs
w5hMcFiyV9I7hvHP9XA83K5pbxc+6XazJGKPamjBYdvjF45FkEXXxz9RWCVKaSauiRrNTQ2L7TDa
GbI13EeRgvFXRwQms73et+D4ZM3f1izwt52Ga9zTU/dcGhmP7BjRFwqIHhuj9IE3olEKGATlBhM9
Qc1RmllQf6NU8bqI+WymM3HP2XMTvuZhHL3CkkD+Sj+z2+Q+YnfjvxcOe22D9slhkSaeiCRw2Bvs
iQgS2yRjmugEcBmtyPkq9/txhmXOjndvatLXC/zwKWbq3z+Gw3IMyV74bhKjoGGqJmfMMAetHexp
2Ek2R5658oJc17jpNPoy5af7Ne0LxoVeKTbJDdntt4PHXmiNynxxOjlnGVOxUSIiqroCwaAwcSY4
bKiscxYX4WBOw9ZEzVFE4aKZeinfrceYrMqUT16ZQ9ZFStEnWFaJoPYem2AwzAXmHmu3I1g/V33y
4znOnE3rRUBWJHjpszBTvPIP7f7zIxhc4+A6i0Z57nBdMTPBe9iwARQZGnIkIAySEVelcB3HPiN6
D3drqu08X0mv6dR58rF7RIAGBBoat7Y7MkB0DCZybDGLPaxdhN3II/bUDrAzvTNggF6FbTyf5ozP
d/5gxdaGbudsbdQULAsLrtZ3BdX7kA3YN+kDPdIbLBrEBsXwQnJEbwjwk0AwCCMs0enVqEx4f752
KryvyV0v7IDNhi7Uh32+62NH/dqXHyjOmLXaY608Nt/hTtPGo4AGkSYRoMfpwP7XYaT+Xk3wHIwM
Lm6nStuHl7vn3fPDy/rLrLccau2H8pv+B+4DCYciglpg/zoUyqxxPkvErqVgo4Kd467bB+enrTbE
9LGaxYXaKd3x6Tv5OZZ0g56PYobkhE2NQTKZgrhL0VoDzSLDgZRAayIqvX1E7Ocz4eOfq7hxXxw8
42nWzuVv3eOqe3x4Qs6GBCAvtMCk5OI+4ybBu3FSNQmkGWY0ZJYuO4KPgy4Terxbk6sXtkU3K5vs
wV9e9rvnpx765dd9n09e474YL5llTWYFrN8htA4zjQlgmGoWNZHsddwXHPkC6AvennAgljgYLIG7
gikwIOqogjTdN1UTKSoiG0kRSV0JCsstYpNC5tQbQoNcbqo2HrEmZaF8yDCyUrIn5WH1X+tTfyxV
EgailFEaohuaPeZFg0FvKRAlRNQuJwXn+qSj4HiUm3qm9cL0VI86298/7EOFvK0I0QP2tsXzgKF7
RoB85BaWxWNXczD4DAXzCIHIzrW4n4xcE6b1AmFmSPEMX3b77qn7j4ffu/3ur5MvkaKprK03QWGR
JEHKAlj4FjtyCiWJphZWKE58DsvD1RTN0STw4tAi8EufSN60T/tTIZQs1mNxw1hDYxIE3TD4qSvM
mE3YLyEYR6mMKsRJx+b5iBOC7BJBq4k0/fPr+vZwYoGu0X7u7rt9VeAbrYLvBvTHFLETFIJveRlt
k2ALgpAllPrL5ZWz0c8Va0wem3Cz9CW2w/LOQMQ0bsgcLbqyFTYdCxglUVjzwxs80insxiDFxLd1
HigMp1tYUU67s5HTd/9eEvPAkDjA72mLG6OkYEhiSyqYxS5wcDroxtigsXzVwQaBPfQKWEMZ+5wl
PknKM2oOpYcXh+zyO9Ayd6MehyXLJgSRMRgKq0QPDXcDFq4n7iQFHdcwNvELjkapp1/Ir4eLbFZW
tA4Pm+4/H+Gvi1gnNBss8wCSLDqrPc/YlyM3EewZpoUCcXFd/Lya6Gw95+iZCTtqgR0zZC29h8Oi
fXR3nzsgYFbWmUHVADGRm0wUqN2BIMiIcI0ITnuP/RPY9yrrXCC0ZnSOGA8XVzMU5i8v+993+88H
WvGU7cFrS8Vy1JkZGRpCsEpHeQ9b0PFGYioZ5ZJzf10WZz3JGXdN/VDFzEIvEYuY0tt17R8+RHr6
3EHTB1tl9oIyrGLj2EGC88aBEGk8t6BDBcNB3H6PhgX9vZub9OfBQ/bhYbPbHpNNPr3c38O8/wZc
h/bu7umH+3bT/bD69sPD8xfYTl8fHxCx5X9Ku7ofNYEg/s5fMS+XaNISPgTR5B6IGsMpctX1ru0L
4YC7mipeZO2l/31nlg9XI5i2+6Cwy29/s8PMLAvLgsNwHh3eUrFaBf+BQ8KyYCi0xaP8Z4ijtPB9
kwxBL/LEnJgwxl+eDkGTM/OUhzmv88+Jb1Wv/V/1uCO1CjUg+GiuIdr1NT685LUGf8epPPlA89Fk
/dLzxCDb/gYaflDJ/hXqWXtDYHsebe9xNKGaPhzSfJNgZ3avzTraXRfyD4onSbg/8hDFOmZizXsk
S0oEfbPgrqs8HzY8etmmWAGR19XqqjGFDyzEbqqqs4WjypJ5qIqSBUS729OTt2Rrd45by8nUCxag
lP/s2+OkGbbyvovSUbBeMOhk++xzvI+2aR6nSReU+1NqqKAurTYUN+abX7TqETtEMZnvlWRoPWdW
74AymgKtYUdH55wWNr6CsXBIUWN6ArMRQaAl6U7fvuDJxddSCmh+FYTD4RrjIIamCWd4vDCiRib7
TDbErL1SPnr+fx1y4jFBGZdvG2CUo+nAR8F3IWEPI50vtUd6dbElGZqsg4cVPHgM3ooPYKIqYuxA
LyQzZJ5eE6ZTrEBNloKaGthnslWpOgbQRaMkwd0csKF061Yy964yE5/NBpdyIMjihvPqyCrz3fk8
GLX6hW6Y5OClVE6NeTtGhwTem+zHNGqePiiPRfgCPK3veQpe9rq/adKrL/MNTwuGmG7gX5fuHMPc
0Qyma3c5bmyQZat61R4TZVtxdJwbwcGwTjowUQdPfii04LKW0ACSG9igPKcvdJnsi1PW6G6qIfOE
4dhl7g3ZzLo9hiEwnu9OJ+0g61xvYTj3FrPJGE202Q4Gql3JpmuEYZOvrN12HEftV7KZArNeeKNg
3CqdZRmybDsR5RuDgODR7dP50S1Qyhi1S3e0VHZTwJEw+r+FahYw0WW0a0HtT0srsO0S8wl2GKHy
M+cunFr4qHMKBQKj/AFQSwMEFAACAAgAFIsuSgWrm+TgQAAAVx0BADQAHABodHRwL3Rlc3RzL2Fw
cGNhY2hlL2ludGVycnVwdGVkLXVwZGF0ZS1jcmFzaC1sb2cudHh0VVQJAANYz3pYKc16WHV4CwAB
BPUBAAAEFAAAAOxdbXPbuHN/XX0KvujcX05CGSAIgOS4meFjkp7juJHy0Lm50VAkZPMfSdSRVBK/
6WfvgpRkkqIcK+d2mkq+mVgnELu/XSx+uwBp4jpLI5HnltL88Vbz5XuxiEU2yoRQ/tBNU9P+7F2H
xW37Uvg5/5jOVnORn398d/nhrX/+7LzZv/cmFosimSYis/Zr6X0UWZ6ki7YC1HPTWCiju6VoNn02
mMp0pX8VFslXcQboMlCjXLdMur4rbtMF2GDojP/Zey/yZbrIk8msIW6PxR9ykSlvvDYminCv54WF
OB8l8xYsDWGuIqxiXcHcwrpFyEAzDUVFBkK9d0Oly863YaRA02cFowHGA6b0MX2FNaydAeBlmhU7
vTDu2Yt0cTdPV7ny4UMNo+PZ2HWQrSJOkKoTgBMYPlI9n9mBi3RqU7vX60nkiv0t/CKUYbKIhOKk
aWEpFFAiJRdRuojzXm94lxdirrxZFOImS4o76d5CREUJRSxCcGPc67lZmN+KWBndZiKMt0gQ+DXJ
l2ER3Sp/rcQKPBWl80G4XM7EYB4mC7UoO/R6/vdILKXQ5jj7n92xY3tj23X94VDpD9+8GvqvPp7V
rpfBsR3s3/33V+M3Vx/tyzfQyfPey15hoaDvqPFDUE3CFRjU0Oi+e3899MdX70Zvgv/s9T6+Vd6L
G7gyV65EmIEwgqyeqr5UerLHeDzyP492JsVaE0Y0jKVL1fsvJlrp4z8UhWjo9z+VTP1+nn37rgzf
/pv77lPHfOr1bHBZEoUl3uFSRDCZIhiUaZrNyy+tnvveHr5+c/VKGfnDkaXcFsXyvBB5kZ+Du6Mw
uhXnCQxilq2WhYjV1TKG8B3cFvNZr/dqlk7CmTLKQhkGq+kUgr6fia8QckKJbrN0kc7SG9A/2wTG
mdXTjQGmJtE0aa0bXIniW5p92fHDv1S+59Pp1GQ8nMQToozcaxi3xQJcyachp8aUsTBCynB4qbwO
QfytjErv3ZVfajE1qqPDtETGdK+WvAizIlnclOoW4iYtktKHa12M4oN0hYyae3VBuEOsg6OVKUwL
rL9QYAQs4LRKF+fkAF0GMaZkv/dgvID+8KChglCgnicxh5k75pCmOYQT/jTmSF0d5gC1mpweZA7Q
+OThSAD+Wos22dOIlujroplhHDTO+wZBaHQa7gwCqg8C6IL+TzAIa11dg8AR1p7CU2sVNU9Rzhg/
aKazmDKhuJBEyhkdi2m4mhXgovRLIkB0moU3QvmWFLfKsqoLzierRTwTSrKtSX5aM2JKINVJzQlk
ouD1aHTtlqqHa805tMFYVeTyM0qISRtKroYPKelVCRgS7zojW9YjM7CEdd/ySUzcNBNdyMoUxidU
hGD++jrLquUnV+aa12leWFYuinZD/9MosKz3YnpdZBd7u7/87bcz5bkCZVCX4EG0XFrEYGc9fChq
iF2yH/WrLF0tLStO8jDP0wjSgvDSCFLxorhMQ6gN+9uuze9LtBpQU39VJDMokyzO6FlPOxReFBPx
I6f+V9fXfQlAZy395DD98XRioljZYyNobjmj1KmZewbp1qIAQW9D+D0pLsVNGN11QQj5lIVElxCa
uqA+Bv1dX5coMJRT/WYT6DegeqaH6tcM01TUP6SqsAiH6SqDmigW4WyWRn+CKgPsbTQO5nNLJxCM
7DBVhoamlFWqXo/eXn5MxLfrLPkKQadEMyg0pTZMUaluc4FUhpEJhvFDtTEK2bmhrW4Wxzt6NMPA
Zz1ZPcySSTr5ZzSwB/EdfH6AsrgIeRjBoizcrk0WIZSyS6gszyCiV0BZAozLxXWazq6BvSxrmS77
X9MkflbGE2c9s2GajMUgBdKuqt+2SiOaYG3CNWXsBm3x6RIkUtTDqC6wLawtUAish1MKvroatiQq
68/l0Oish/HOyrHbOeuVgIDEjpRstRhBZd7PC+Dn8Rhb1iTMk2icFxkw+UV0G2YvlPtG+f/jIguT
Ii/bXtYbywEMAWTVpLwEQxd5URGSQWBUm/jKgcXYBO7UDsRumthU4kaPPiwpXihSc6X2WTmGGqwK
uvRiWO6AXnKg3gmKcKvHW8hc3boxK6lgV7dODNCtl8EMURx3hnIzECYm02D1VlUoUvY2v2KrTJgg
IC/Xx+MvIluIWVNmXZSBYkwFBOlYZv2/yuszUayyRcleZSK7l7asknJDXH2WkQk3KTeUzYXjb39V
H6QwGPUy8RwkjhMdV3Y2ZJGtxdqDlYT06bpRnYcLmNbZTzgIijflS1lxjv9K84ZjNtI7Rq1hCSYU
M6qMN9eP5zfZOFl8TWE9CYGJ2cY1jxeox1HcErh1ENW2DiJHFxL60VlMj85i9jMWQ7kBFudi/g1y
1jhPbhbhrMve6OHJZzBsshhNoYJYpPlMCJnNYZW+MTN6/nyAu2m8LoUaiCAN1XJmcZvk6zkMaxQp
eDxNs34948otL1gIrLKyTriYpbD6kv/UU2/ZdoFnL2T5uf6ZNTMwp60a/N/Dr+EwypJlcV+K19Md
M0koxESZzMvEblmvRQgrkjwKgRZvRA3japEADY/hoi8X26uHBWCK3q4K8f3lb80a4nCLpC1lSqWw
rhmP51LqGCoVYWGTtyv7xxgWa3rbMHBVtMrkvv1wY2K58DPaGglu1/KP0BhRhO812vndIhqFec1f
EsQLRRafSr+F7NlZ/+yljBUZJu9Xi8sUylSJzeSw4NmIglUG1mi79n8MNB1WWk8BzV8U2d11CsVQ
/++IWxdurWXFYwxhk7iU+6wWSOP19Bovs/T73UVt6q1A7EUFA/T+PcQv/pYDn0F43687TKL052Ke
ZncWrJT4dt1zADWbZnxPzZM0viupFJfLmQMl4fBe0rb6ZEa5kDmQ4ClW2oLu6Z1b9Sruavjh/aXc
oqvu71Tr6IP5PwqnsBqbh7JWym/kwmXZRf6PEUQmZCtIVlu0taPy46Uh1TGQzhjWhuspPBTZ1ySC
BUR0e52W7tCw1iLpR4glVER1sfCr9CxlLV58hCxNEEOpS9re4JEzkrVor2vrsLlpyFHIII3/0RrO
fjWeZ8o4E3m5cyG/kCotuZwFR7VY7MfrZI0KJr17NaziaVzF2Hhc+QKXbPI0k8h4uklkKk87iYyj
qwrNo7MYo+Mz+fg2ObB2fCYf374FPr6NC3x8OxeYHZ/J/PhMPr7iCx9f9aUdX/WlHeEtpuOrvrTj
q7403bKU8iEgeW9dPr0aje4fQTrIESieMHDEUu793Y6jr/J2w096IeRazQvyEdfxWhpnvLXr9ONN
US0KNV4ZWdnmgsCkfE7XKpK5iD+B7OpJqHKv/rcXSpyuJjNRbrdjU+lX3ZLFzXUFKb9/5unQGwqY
EqRVYK7D7AvIvEwLy1rC5y2scDa7ezNfzsr90PXt9BdVn2GULkV8Gc4ncXgxkc9A9M82tzi6Lqk2
XNuXyIfNPyXFrXe3COdJ5MrbFvJJ7/rTCgwjpX8PsbSYIf3gOw2E8ZgzpcRaKt+a6chbCZYc2A+L
IpldlK2XAOVlf/vxAMTlwzk1wLeWcfhdCmPKBI4be+fT1aJ6wH79+aJrulhWOcvugYvs3h5p6PY+
lGX96xh1PzPyBIJfbvbY5S0JiINMCu6fVY9lyYelWuLLYdUQOfyeiTYxNoG8c+tju4+Pgc36GweG
MwtzfedhqceomkTTStW3Yjrar40e410DjZ4o/EThJwo/UfiJwn9VCmcnCj9R+InCTxR+ovBflcL5
icJPFH6i8BOFnyj8V6Vw40ThJwo/UfiJwk8U/qtSuHmi8BOFnyj8ROEnCv9FKZygE4WfKPxE4ScK
P1H4r0rh+EThJwo/UfiJwk8U/qtSuNZ4F4EbDGWUFINl9Uq8n3hMHvHqNTQzEdUY/JA/zTexTsPy
z/wrMG+rV1uVBK4d/mz83mEhTzcs+hP/cTs5vr9QIMf396GkfKJ3/d5PBTg5nK1fLvv/qoAyxfRn
CyhG9tZPu29aPb766ccvVo1DXfu/Uj89Am1M9Kmy87atZbEuW4J1MbD1bL0UWr+FehwL+ZruPR0U
+V8VbCLPYab9h3yp4t6LKw8Faba+OkhmhcggZsEb0ivpqrj4eWl9KLv+MStj5R/9PZ3WLl6PSl2N
nDfvRQ4mb8bpfxrEbxtFn2CSSPOrNQ5W+nXN8uVclBz8Yl4eR+Gk9hrkNRNuCtmdMrGqEOvvj9L1
n6kOf7oQNf63ClHzySqeg6vHBwpR/MQVDzvlwlMuPOXCUy485cJTLjzyXHh8b5RBSrQ+zKw8Neaz
wdanminy5bpC6TNdnSTFmdVTlCz8bu2cLYbAYdlkX0O0ryGuN2Cs8SmR58XJlmRPl3zbIK2jIYbZ
Vmlf7jSQuOzR0RBJJUpmdCiR8zYz67jQVFAeGlIWRl2AZQOuizJIPEGRNpWWYG2PJZg0lUwNYshz
qzKs71NCd3tgQypJlo2WzVE1SjadtbRjpAHNwHh3wCLSK73L9aln7vWH6oQ4Tev5WZZm5bFz60Pj
tl313ki+7PRqNZ9sTjrEeq/Xc5JFmN0pb+bAnLnV2xwQ9317NpyiKvUvJ5ocHeV565SEPjpTLihz
XM5sQ6UuD1RCHE01bIOotm67HGPu28h7+eMTGRvqJmEHhkk4nXLlOUykNfnLIyuGt8l8PbtKNIgE
NDC4qxrUN1RiB7rqBPCJmr4dYM9zNBp0odkntYkrIru4ImJ04Vot5SGJdWg68wOfEF31kK+rROdM
tQ3PVn3qea5BqcaR8whodcENdFGMdtAxM8bTKXkgA/WhXnwOneDXAA/05wDUhTmCTE5V4DOiEt/T
VVtDSNVdHfnUDnwNuV1Am5IH0yycC8m55+uTIvNzu3VNHT+D6b+DnxPOWvirCqELt04Dz/AcX9Ud
OfZEY6qpEa56umFwjimzbdSFu5LYjbdqq+PkQB47OI2paezi3OdgxzcDHviO6uqYqsTVmeq4nqZS
3/dt8LfvU20P0P2eXTfWoYacajtQQ5PAZJ7sLbo68HKHcgr+VDVbRyoxTYhcm5mqj4GwKLV9LyD7
HVvJfci91RW9CqFkGiaAWO+Rb78E4tQhBcjTUpQ+YWigaQDPMGAukcBVXRcBA2HXVW3X1VVObQNR
19cRlgy0yjM5l85l75ouQyMmaeuSX1JJea27M95KFJ6YrGDxcnMjD0Dr44HsiaWXXJNomCFQbroA
gxPVRADINDAxfEMzXUd6qTq/9PwymWTAwefrA5aCjXfy8y493d7rurJhGWXRrmWMCklYskpJoGL/
OtA2LAWVsXIRIGojm9owd2xTJYwZqhFoSA007jqerTGI3po321Ia+hlDHfq5ORWVfnlwYAZrArBn
g0EzJAaDBLqGPRVj6gFVUq7apm2r2PEdijiySUmVNQw7kpo4eNiBwyClH+ojPJ+nC3sFVVZfL8dV
G5TM7RiMEx+DN0yuEiBA1fCIHGhuu9TTA8MJHjeyG/n7xnPT3kQ/nXSgn8abUdwcXpEupsnN+jiF
jTth2TLQ0QATMIN4vsO9wFSZgSABcTDIcSFTIwyDbGhBgIKg5tVK7PmDCho4OcK7OI0obHm5rDre
vLt3AUzlAammkc6kv22dMI8CPKb7kICIjVVTR0T1XEZ8DrlJM+iuv2uO3lFR9/K6sQHdDPVd6KFu
tCjAmcFsS9MqPvQBgw7l76mc/zrimqRvmCkeBK3mAmoHm6pJiOlyZHBE8cOo323l70F+f0EDfUhp
B3oal+hhlN6W5wrh7RTjMhhsFzmBY6jcByYnMm3aGHI+D4ips8DVKdWbU6whpamfsw79Udt78lA+
8dEO7sedDtCAaNCx+iBTI4ZMTaivupjZ4ERINabpmqrr2cg3fM2GQukxU22tq9uP68amDZG5a8NE
pkretmF9sOD6xf35wB4NIYQ5h87gu4EkUZNz0zcxUxE3oBRxbVd1sO+qATMc18GarTnswVjo0tNp
S73PaLjH3tGwYetE70h4cRy3KphcRKvyhO0+L2cn5YTwgcy6YKGv+ZTCbIQiEVJtOVAOceAfBztg
LwdPkActHK6ld0PetNZxExTtzlJCaLiJ87mIQtCziXNmsgGVUAMGsQ5VLJUrAaIHDqxQvEBlpk2J
67smt1sZrSGo19Q26YAQTfe4bnr/NEefVU6ksMQFUJ5t64HnIZhwBvgPQXZzfAbVAnMcE1YwOED8
Uf67f2DkYU/eX9c0KEYdBsVRK+7fLcXCSzIRFSksHPvlofCSsE0Z7QTbjNsehSWgq6mEIigemMdV
A1J4oDtQ5ZoPR3tDercZjUtaFsQdFsC/TQuGt2FWVmy6rkE+rMh7/VGOh+dpBsauynzXgXgOIMf7
MgWZTmAyyh3dNh5DPGs1e8aiamzA11HHAOhI3wR1eVL6JqS5jGeT6oZt+yaU4w6UI1Sjqum7wN+a
zWEtAeWwzjvzeE1UCwLtgsA3ENxXn+U+/va0zb4JJCCTSEA11zFh4B2oE2G1bRJJc0w1sEMNwjiF
/PfgwMsK9lUWLm+TaA+/vV8fDZKf7wJpGoE7jKAkbiWh9Vkl/vdCLPJyXt5X8G7gmYbBYDp6YBMx
sa86yIc0BNWRqducuuThDN4W3m1S+6qGGTTsIJhQmK1ofiviJByl6WySft+awP+bt2vZbhw5svv+
ill6k3S+H8t81tSc6umalrtndj58gGUeq6Q6kqo9PV8/NwGSQgIgKds63pQoApUZgYyMuDciEhJs
xdSK07o2WvgkCgwk4CccDJib9c4RC+cvROEyluubcjzFsiLjOxolNmzOO/Dl/mxQWPZff4z3h+7h
nCJhzPXeWmmaDIWPNtSBzVHgbKeBACCxKxEA1ut005l8+LQs8XD74WhNMylaJbheUEJOV+L0x29G
dlRErKkv7AhXsRWDG7HeZkJjkp6VLKwwb/Elx6GvWlEj8nbdzUXe7syJKfzvt+3Zk2i1UnRV2ZaS
iQle5VMyw/YRiqwDxxFGGc6LS8wu84LzcI0QO2rmQuwEPQvxfP/yCkbZAJgMj4lFLwkrAeBZG058
qj7NOjg5yTR+tjF6PEw7v1hACTs9pfMf7u5alhekw8YQ2O4BIF4AFUAEIOLqUHV23jFJrxoeRlxe
KlxoJOyknUu4d3xiWVvY5/cD8Pqqhlp42FU1rppN0AJIASzd1GwH4iw2CMCNMtIUzwL3b00z/PLx
cmLhl48/tOKJJZk3C0mSM2Atd7n+7dRnrDLnYlVBQ90hp8912YsKxnOEjQi2L4p3IPogJUkBpmHf
OOP8zQDyZoB8kufCjcerE7W3S2rvT8bct+zexXGMPjkyLqxLcFck2AxHloMk3vtCSsgpUxZTjv79
HFkjxFgFSfk8+QF8MfVj52kGnmYprxVbdvRqjLOVkD3yd1Qa2BliI6IV9omAd6v+uqRSKA/AfC69
maL101xhaf31Vh25oA6T+rQi5fHh5fP66bl7Oi+Isj3E4wCpzmdJJLYQdg6raRwD20slRWA8bUv5
15GyBthMhf6hVc4saKzsGSF+/faXM+epjszLUHjUoBbVnwvsJ5cAxzUDk85YtRzLJHt2HqGdWC88
aqn2kz3/7x/PQASuqt/jlpreVoTGs44SZqJh+UJiI7hIMynMBsESy0pfz+TE9dPmEo4a3XYWYfnO
8+VGPbmQnaxfTl1aL0I1I1l3gqrgyhadk6acKNBc7G0Ov2Uq+o0C4Z5HZkX6h/UarjWiarGwEmAl
C9mJ7tfP4xRLXRHexzjWr4gJXANEQd4cIDmcEAG1SfjHhUhLYtTytydYPl/NsHz2rRLKLilx9qU1
h3u4757+/Fo301Vkz6rFAkkVVRGhheuxmjpiAgCvVPA9MS3znemArTjrJXHW3WT5P/7kt9vufjjx
g+dJ1UB9hw+VNSgWiuGSFFvTC2Dv8Ica0IXSqBVVGlvmLU+0mehSAnB0S6OMXUjB4ctuzn7K3SkV
IXvYYyX3iLaagBHAIArnlU0WkpXVnoH+sMJvkZ5ydxGjlgb6SLeZI1Tptuzky46p5uf1w67u5lNh
AnzzmHfiXsN1OFitsZVyUkUsEARROvdAzZVgryWxm5HHoim6nxNIxdhQP8XN9Y9U3v+2cmfb7FPV
WOGgoiXMKVq9HFiWTozQwGHaAm6uTHBrO0wjAejqXALVTcsUP6//FvGwn9arzfeH3X0tMa6Yq153
KOAw6RwHikYchj3qjO3iFSMOEJpzmhme0nxBx0Dqj9MZcPXhpWKjP/643v5093q9Ed9s5okYZdkZ
+I//PDYQ4YAAbYkC9AO8lCqECekQrHwE6pbagO0VcJNJHno0zA/tTGxhen42rc3z1xU9TS960pGr
+5ARLCNg8YCfSdA5EJVU8SEa7rhu5x6N0c49L1fiS7FeQMejGsIrY8xKRmATkB6FuC0oHoBL8CFW
Gp6Cd8KwfBMH36geNLe00ovNgvR2mjqJ94/fd+lx+3ySHDx2qCypkhwwVSLUIbLABRoSAoKK0o5n
cDdTBH0TJznNcEGD0+VGevCmufQbcc4Kl8fn+z/vhp7Us/XpFZe94C4FyxPAqwzAsgqQELuWxEw5
La72PkxSw/PRGmG2cl5GUFvFT07k6IUeHl8O+99fASrti3Q1DSltSFlIQosBdoNVII6UQqIyNgvn
rInxmnsbD9wKtl7YHdu1Pgn2/eFvh4fdeXuoVV1XoJwgbVYEu7Amdh2kCUqSCIMsIWRQAbEozXi0
RowdnccptdNyYmqDpcRxwbEaHesRGH70VX+rM+bHltW100c6oC+vEIURAmiO2MnxegJ9PseFrO38
xlYnPQ8cmla33dQEfj3susfrKbtoItcMqx20qs1LcNo8G8K0jz5VH1DkVZXGUyzrMr5jrIRmC1kb
zZietIp8Wj988Q/r+9+fD70bGCpD/U8owGwCXQOd97UyJGyNOkZ6QmFDSSpwN6PenWGNRbpAlkd3
tEqzJaXXct81aOTVbQAcVyBSdyq3RogEtFTLYETEEMEmeSQ5RWwanSUYz9Vq+nx3aM7m6EiLbjux
pP/6vn56+b+hu4gNaFTWhEpfi4nZG8000aK2bwTA5lC786TRoegkirLh6hK8Dr78MF+vN6KLvVgQ
fT8FoLG2sv7c1Ra27unYy/ZaTjKs5iOpssAvyhCQ2IQnaxGWHf6hkpmig9AshTdFk4W5LgSWhTsn
2s1jjLZuPdkdH7rHk9medzhTbCXdYDLJWqMYgqMRUKz6dccS4EfRHgG0OB3cWxQbTXMh4fh6w1gN
4zZzT1W/PCG07w9nU+euL4oFlp00JBqjhkwCTJvBtrLKMC1baL7g/xfM22wWUJKpZzmOkfqw/V5z
nq91JoVnVx9ftWvrXGCgKcLWHrQEr2Ij/imIiiypxFU007akZrRGkp1yC5Js5cWcWLX3//7k/3OU
EaMg1NXpiSBUVAhEpsSabhGV/0VGpODFS5ZSTLexWx37MmyrV1v5t2pJfnV6kjV1OLRZHh6+/PJy
uH8FPoMp+kSTj9aDFSBwCmoMcQ7M1fkc4RZBH/ykw+rCkGOxLN3M0xSW7uykU6lp2f+D4NL2TpUd
UxQsRmFLCSQHA1AmaSI+1u5Doyz1TPlI/TXPOh6+FW/nlsRzJ/H+2v3+9ctT04lmEXUj0DkBxK2+
KMOdigR27GyEmw26ZLooy3isRgjm5j7esi0/CfEfn/OH1+JITzIt98XUgnoQuRaVPJZNAh5GIT23
NWkTyz/eD9UkIl9nb4XeiiWhNyd7+1D+p9a2u90rvevNDKsoAgAtoTXvCoZF4cqLJCxE6kSxxph3
yoFPJGikdwttkPXLK7WLf/uD4Rbkpgal/kMlaVj4XPt0c6xFYS450A24g1PBga4iYgX7TxYrxne0
Kmzpggq1LLzpF+Dnj5/n5XkdXdYRmETzUjvSYDw+w4crLb1QjAZm/HuW50dCtMJ36yXhdxNv+5fu
/lsNm2JVH7usqWyhkpfgRISGvrPEs5qyj0RSR1VMRRYt3yV/jKkvpI5xpVFmvZCNx5dTZZ6/dd32
L6unbvv45eHQkova+DbkyfuftaaSlXdwbqTImgXhtaUiZESTkDRlNkap8nvoeddL9fOSUA3jmd42
eQILHmxdu4oblPr56fHlcft4H77v990TFrYmTaXoCxSADyo6kpKqGLUWKIxkJOcSVRYU6Dm/BQe1
Myyr0t7T6qH2C3ro9bxt8W5IGp7rxZpVvl5jleJGA7bTIXEkAOzAkFkgkmfqnU88Z/vGdPpxkosJ
9eP1VgXLFlRw08zNh+6hG4jr+eh4rQz0uogBENhoOZPYaZK72hwsNHExF1LTcGD7VsW3YtPZVJcw
6uzGRrXNQnrebjU7xcnffjw8n9Gq0qKvuYLiMF5MIsULLEepufgAKmoTIk7gLMd4g4Ce8uvdzb30
W7fFAMu3tfI1eu0WmnXx5bma9/zt8LD7/vXbOZI60y8QdcDgxhZCC7ygKBKsiGm4CJMKeKfiMdoW
sbUjjYVwajN/uM7oKf5d/zZuYBwMhmF7rmAz1folCylRAF6lao2vL33USqNhVEursM9vkE3/6632
xfEdjQogZXMV7Lqb9fQ/dX2f0sefENPp0GcujauPVJnkeCyZZMNqugKfPPYrwIpMeBpOG1duxsfj
4Jfj+fGGRvj1bu5C3YZPK6vr77vDY6+Cr5+q/zkqUH9WSOJNkgWmTjUPlSozgjgSSQSD1jJRith5
U4N+7Mvy95cb6TdiSXo5dZyzKDJkLPiKr0xfkeQDSgke0jtKwOkEYjyLxJpS0xYsYzuXQt/W8r04
3Rvj2zSd4TZmQcW90n1mqLUu/0uEUgyhYXCow6f+FAtooIue6JhAWakCXoycE8qt9VyZOOzYN3Xq
YJIrK/RLbITvkxUz4ffTDqh0eP6rf9ocXp7OG3xYl6G1ExSZg2koURvZOGCJN5SRknJSQSlBb1Tu
J6MvSz+5aazFGox/psV6v+HzmvdwHnDl+hMkVK5kr4CQjBU4yJQsNjc2A7FRWxK1C5xTlSVLt3KR
F44FxuO1Rtz9TiyIu1voPx0OGA01WN1bStKOB1g7qW1PcESuNh/zQngI3oCll2TkGxsGL58uOl6c
CD038w09dv62UK7bvnS7vgJzRhCjs29S6MCDAC+tDXSIcCTQ2mxKCxO1n45S/lZEN5voMrCb3TpW
bqMonyuHL6f47jXkDyG9nkdi9f8df62/9YVyy7hKAHiFVS7LNfwUwl4pMQXMFJPR/wpsMVxrNDUL
4bx+uXAAZ5JdR0ixNZ7YPieUEBGxfkzy2rBWQEJKsiT7mAAOEdGtfJ/s/cKNjT5uAZlvnOYntluP
cJ7TR6djoIVREXgJJAmLOGJjIM5xTzLTIcVAqafLxarX0VohFgDGZkvdAsBI65d1X9KuO1qyvnbm
ufNKOkY0q03ABvHZcsA3K3OmsdYbo7wZmuvAV85+4moj8k4vWPxu5/bd5thhAz769Pu3l8fz0xN9
G3Ddw0FFquBpCMSm9dClh30HCAxPCdv3IrILxwomo7Yi7ebcf9Ox/UKv6/PJZoZETjncd58Oz3Dt
HC69J489xmeJ+2RMIKaiYUQm7EjuAD8T9YJ7bFIW369ntJXl8rGO13sa9fd2Hoo3+3q2WByPVnx8
eOme9usqy2lNmFnV7Ls0QgqZGYGrOeZoPZWGJAQvyqXP+sZxhL/H4fQpwrf0ms4EbvV1ekHfvmG2
1xdwfoCb53z0MecL2JpCEUQ6CiBrsI0dt7XczLLQWdeXJPyTTKJJVbVyjFXYUjtvY9nSzTlB+/nh
yyQ/y71jpgIMWTeN8AmBj0lGaodgdp4lI9Q75WfPkzciMzFPcOLL8wHQdFh/eXh8fjlsj29gep6c
vaD9MWcuRdBBEvBk2JtSWINYD4IrD+/PEcfdpB3m+ritiLt5iNpyPoVHPleW1tcC6VCnkI4byUmx
9Zic1YF4qSj4feSWgXAWL99vs/t8IV7lRhculnRRclLm+Nq/gfzcLmZOPR7KSAtiXHUC1xEyAkgE
BtNXmjPBuNHmagvbeNxWroXUwpZvzg1Yf/pYysR0Bfijc8nX17UA5oOREFs0nq8wsiB8RkHlO5nu
6+yt0Bu2JDSbJee3j+u+063PI/bvfYBHtMYj4HNRMyKqkl8HA3EC2nERlWE3bANjXgqvuNTK2ekF
OTsz7VzstgdwynMRqX/IAPce5IOkWssWBRg/2JgJAAIP0kSRdbjaszgesxHKLLTTbM2snabZBD/d
XStycBMZDyAgxtaUjk2J9A1SKaoAuwTsTfr9NtyrLBdOfd4t4cOtkwv+ztUNuBmvxe7h+Xn32kqs
apWxbx2izDrnLMBD7ftjOhKAHwX2Zeve1IaJdG09RuO2Yi3tP6emeZE/xdicFlM5Bw5e4WprgKgv
3nEmZMJ5DDYzFgC93sKdMOzyQ8SFVsyFKu22f1FQ477Wz6MSrTihRMlKFaoQFmpSozDYhwdn8J4p
Y3JytjlMPXt251FbkXZz4Lpds24BJfZ/1GHoB8NSrVhNWQBFqJWw/alHoWPp2ydNqvl4TQLXgiid
ks4QOdh003w/Hae4jLxPdzRKrBcODG7X4tyA+uHTpDpqaFKgVYJQ6WsgAGu2hcGL6RK5clZx696p
Ovpp4aGvxdJDF+cw9vN6d1g/bLtJyChZMUsTry9n6UseEVI7SmKBcwh97V68U8hoJZgIr5aEn7rj
hlecM+oD5AwIGb7EnsCD7oIv2uB87eeyQusCTp+uvw5lOvREwAWQsF5Pic+PP8a7vuhZ+2nVkOoH
bSwhQzKlSj3iRxmIeI1uNLBiYkHQ0G/xCHXsCyd3caWVdrvgE/aSLpDd0rzToE+6wVir2CyxUhNY
ruRY8wecWGE54Qn+1KiCgHK73HwLxbf3NDrUHv6pDjuup01aTYAa6qbHVjomdH9WZvjQN2wFGIjr
M7i6pqbh7FiR4MXJMu910jeOhP5dwfBVlmvngqapamjYLahtpzm8WK6+wwEu3al67FaBXNbKWSIg
NeCe2Ualfc7uRiXhDe9wGOta3nD/5Kax1p3YzMvwndizicH2r8a6+/3r5vG+tuT1L5th/ZtmuPCS
RyVIcKBqwkJXlzMnMgJT1qNhKryp7DCe4UKSe3RHq8OeL+mwnviwh+Gkd3d+q8ApKltVKYWojRJa
U6dSNEQr4WopiwNO5AxOgYiiik60OUYx7xtfnGMi7fyUQCf5fsFF9F3G1avZ3r6GhBg2DJeeBQJY
U1EwqFzQKSOMSCeV5Fq623mbfuTLnqG/3EgtF2pVnZR60uL77X79sn98Or9L0shThZ8776jKhWhj
4IyjEMRW2Kij8NZGGQB8rj3ZduRWtoVWkk7N+mKGKuDLsa27T1uM2sh7+M6Ob/gyNDsVItYemFY4
DQ+sYyTUs/q6B0/FDUAxHvwCFR7d8UMrd7ekzPTNON+eDg+jNNrqc/29d0ZDZ0Xf9ZMtAh+NBBiu
vimzvqjMWk8iK4rCNbmY/Ht0w3xuZWmrC7jU6rdQVAMlPAOOrwBbz+d3D1WXmqVjLtT3lrn6TgNf
aves0P1bH6OzWfw/cVfWJLeRnN/nV/jRL6DrPh7rlBgrhbmiJe+bA9ONJtsc9nDnkCX9+s0sdKNR
QPVMrz0hRyjEJgBWZRZQlfeXmSxqw+Zj3NTzNPZeqf+8rStx5+nHrCBrSVJirFp5QQMoaeihEgFk
GObhpRx1cDzSYOObJ+afqblUldsy7gZlZYPXnpwW+stvM+f/KnfUc2ups6hIZ9gBGK7BgLiALQvy
zKRA20rdedSamEbZzKDl0jtx22++PH+bZ3hhSYQ4lkaUqjxORLIRhAyQ13FtwfxX0oJiZ2Tg0gtD
rgoG+8VM8wUd793UpLIW/f1Jxz+e+1MejZkMvZTBmNMsgUKAKWkkkA50Id1pbUlmxMOhHeuvtxqr
ouKWrEMpePEM3PXU3/0Xtnl4fOrPqS8ghN+BxT7CDsSUHOItd9ohJiRql054+F8C9TN4uHidvP7u
w8/hWBc8W8VLRCzYWCOLDBu2xMD4oX8+bD6/5GSJ2TplAxh+ymEhgEJeCJgeJEXKgqMmvCHsRU3P
pRKZ+TMV1xvTeHkbO7kLbv/A2vJzZaUpxTEJJLo0XSA5oRdJdA5tcaqxpC0Ez8WiqrMapZ7fNj7h
Ta/XwU2sUu33B0w2XCXqZSx91QSs1gBmNvdgv1qs3Q86Ia6TF4Jem6g3TXMxuDk9UTPSyGiDi1MO
7zj3O3/2EjB1Akoh8JELA3aqoqLIEoJwexSUEpUF05GFuPDN16NVhGwbomxHxdJreNHQ03DARu5I
h/YobEXuQM3IvEOHDFfSqfRKyfjLRl74t7aBt9PDWjLAxaV/rSRcYezr8XF/u78rCIaju03bUq+f
FPVCdtQqUOgQxcHB0hacJs68tcaz14GxqvFfgMeqnltws5bpWI+w4GZ/+FLJFVLeBCvFXjRrFTKo
FDxrxOrF+pzAdRcknCZginvOzVsoSu8PF0Co4MZNTT5t8IQRiMox+/Uc6iQY0iUm0XKYK8xAxTT7
zklTYJw1B+GYdHrRemko1zBrkxS+WN67+0/7w+NUiDZ5Za1nWWbruxQLWAzPndfWdJF5pbSH7Xad
uCnjv7rAcyouZJTOnqj53LT4HG5nVff97X5a8CMwi2UsZQ9fDhgMcECjJw9r2LtkqAuCC80CWZXd
T+NUBPRy7Tra9Xq50Pdgyj+e6odG/ah4H44FSVwlDxYKbEguQD+iVqPzKANBQXumMcfGv8WnXJUx
XYaanB6pWdVrBWB3yzatlJDnofqecqDJIaCk5g5sGoz3OcVFh9kMoEmBeuX1P4MO/jIieEX1LV/7
pXebnTptSv+D+3gGr1KsfCBeBEYNU50sODFBRfj+QfEKcFYalWAXOPUnZVKf6bupOVhZz5aQc6rB
D+6DC39ZMSYY4wZ7GoBN5NBCAEmaQZkE/dyRwIxmlP9JjM0pvKm56NeslRYJu0aNyePvh6fPQ1X9
jBUm4h0doZXFmKytaXSEYPlPcsAuU7DlDRWdtNgVQ1KW1dsXZ4+Zth/XFK7TcaeHqqUAlaOxFGxK
bdjcf/t9B8r8WWnSBUEcNBE4pbvM8dUK+J/3ynQiKJkjwU497EIu03y4BSVDgxI+wRf9cQY3waSW
Y1IVT95jOp0wCGUOn1dnM0Gd3yQioiDahfqc/aMBbmJJw/TAi2pZdXQE+/28/5d/tUe8YULQp0KT
9kky31mNxWugwoHlFFxHU2IuMqGieROfyglu+Pv3L8MRfz+HF7S0ZIkt+KPb28no//gN0dGaJ5XK
EkxqglW3GJE0oB+DxSI6T7gMAgwq7+OftKGXVNYsrhUSuLidvp8TMhFtoB45gxICDi2G1SyclmRC
Cb88MUJzHY1aGOOL0SpKhnUJKlwcpsBf/3xOEKQGvx5rLSjNsMaCZtCUmeMIzwkGawpEWK9kzIty
4fMY86kZMavIvWVUT9rKb1/v2LkhBbMjxFb0LioUQTEjyhJLBIQno12WUsUMJrMrmR5zdNDZOBUB
dK2hgi5k+ckf/Gv8+GFZVSTBblRgm8P0BNVTsGs9RazulImDLU2Y/7NExpm8m5qB9fHAuNo28kCK
VdLGH9EkuChQB8sGk/DAPHKCkQ4sogTShwXGyXX1MK9Uw1S083UtO16c5Ph375dJSzFh5hR+iDKj
LQ8nq42Sd5kp6zVzTr0CO319BHqafEHyWj4zwe2yAGboHzafS3UCfSeOSCkj6lqm0jqDvQEQ4oer
TMHYMalLCJ9vgoX9xN8wifVEyKUz+Xj7puanxaRe1l/8NHy9fxp+2Q//c/Z4nSrFigRkqGUI2xms
tEJXc+eFzx2FvSsIt0zyq9Jb1vNcen3L52qu+rXWyORWLMIUY7ut354QCmnkRtijHuWiT4ZL2UWR
ERSDKjiMguiiEjQqKkO6IrEbx768SfDuTU1gY4+oFYbr98P+67a/q3GNZeRKckM742XCfGl4FQa2
dg6w1SMYhD5eVW17HPxSmXS5WRGtzFrMMEOWZfc/v587msZzSfAR7Ng57yUDYkF7gWMJ4Zg9kbRL
SkkfQSo2EZHWtM/naDMwf6LiotfbNRd9b07WE26d/a/DWWhxjspf0UwC1yAgEC8F6++dwgAQWFOS
FwB2r/WyjdFisIqQjbldE1IQvI5QxD/lj8/7p6GCuCPagCUXTaccurgILKVn3nVg6TjinTcu8JqE
epiKgq1eK2lsMJMu/vj3O/iHfJLeVJXQRwwgMi3oLaCmgQ6sMUNE6tApZa1mFotLFstQDXRTzza0
SNgtQua32Ht4SvhRpWyACRGxV0FWDkuUvO88fPydUUbSAG/DpBfjuPMha5J6viZpx8l2u8ZmRXiN
uVfAZ52ij75zkkVMe4fXE5PoEuY9c0ri2JrkOjTWgt1xGY4Vb9/UNDZUoZ2eEt2/++HnRcJaAHok
trXhiZcMHyy9wD3JQKuiylsb/FslrP3cWOpdQ3EFVV+uAjCHT88g4X+83w53iy5t0gRqnCjrjOF8
nzrQJUinLahxNlLYsPSaFV/OcRl5bP7UTUX42p1dLl6sTyvhfvwHs0t0LE6ThmPnJIyRI4qrwp4g
GVuEhOCVZ0mn9H+rFTnfX/BgWjxsTvvxW/91ps6T0mQjRIoBcYP2OZyDHnsGBTDNGU+wB2Wmi6j4
bIxqbkob60eZvdS3rwfN4HDCg5h/EyC2CfwX4IBC3yMciwgwrOGbyMpkETRl6Z/q3FfN9ErvvurZ
mj+2afE3rS0CKHz6/emhn6VoTkCSxAlLA+ryQmJyPBx8YMSBxWYcJiGAcF4euqvhFsRsG8Scey9t
94/fSoOwk+1ESuitaExBC2uNRARyh3VaOsJ5l1wHZmMIBqRDtm1vTD1oTc+wtng4s8vcmQ0Wh34B
xbdUiRZVXBiwDG0pesQfpZcViAOuU0exXg+TwPF0MOhLkGB05wTW98sa3XHwF2BLF9o1kNo4yjhT
rcz9kjq2P6U98xE5xhBhypumTvlMBQbqM7qYBJ5oEXcVY94GLDa/+uutpnoBomj+2E3NgW6xNRlz
4ZcfP364e/60Pyw65J4kjCQcKye7yB024eCyM4nETtkgtVRGeEXeqGlCm5KKG7XuaAgXd/yM1cUW
pqnOUTFOMWzksepTZwQzIPBXGlSKQWVG3wyqq3Uoql1jX2jWsm/cL+H7iJ5iM3oK4SR/N+ZaCOcy
nMmIA4MOD5ItWKfZdRbRzDE4RES4GrkAZ3kBuwBvVxzoTWPR9WZa9L8/9w/94Wl/GM5NLvHAy4Iq
C0tNSpGNY9iVCr6hJLTn0qhoSbuqajnegpjWcm4myLiv/ebz5CszWo6xLAyciIyHLdj1HGG4DTOy
oxnkskhJ0AuwibPRKirMuuscXOw3U4zv+dvjrI0rl2OMj0ojsGMvKzkDIF3BUKW8C4kxZizheokY
Mx+nJmDXOP0tvz2rimP9aL2ZQa6DMLdg8GAKO7dEYT0novEYngPWzOc3q2+YzV9R3qjJgYuI3Mmn
diE/DZ/2j08PMzzmcQGdJhH0cOyxhieriLADArVdFt5ij+xkFf1/bBhSk11z3Te47leK8o/DU78d
a9fJEcoXLLJ3fITGFkQHrI8Cwwn2E4WTmGCFCovRE8EIE29YeXmi5FImxXi34rG3tsHjSn1uJpye
Ev5Luj+cZyOWl0vGgTBF9G+LhVix8+hzh68UtOhMs9ZvnyQ5kfNCHuoi5R/23brbA17cLSq4vj19
fhj6MyYjN5hOVNBUY0Qw6dDRCLKKOyzzD6G08KQhpQS75sUqrmrkirQdaSitO7kMkS90GlpyJVGn
KbmSmoBhrCS2SrJYYwYajQwONZoMFgIcZOEqNJErtJmLmoxQdn3kCU2WSVILiNh93jcgYi3oMZaB
LPAcBUJ2xfqJYOYbHriiPoR8rTzFKV5AioW7FRsbvlbIxFbIhT6wHR6/PN1/e5ylD8OnckwtJyV/
nzsFJzjsh4BBZE4isCON7YhQKskkmFf2uoKJMtVph+ADl+omVg/e1FyoFmvLdMwiGUL/7ekZ9/wY
FbXFM+pCCpl4MPSiZagysM5nobtk4A3B7pBcv0361IyCF3pSH5+oeWxkAoiBLR2/cb8pSHoPv1cJ
4OgDlse3R+CXFKwLHt1fFrtTU2w6KzGfNlEt7Rse52t6LuE/LZ+ruB9ae3DH+cpIurt/+Pj7YYOO
b3sESBtfMbYX0YkRsDUxQw6Ujs7G0iqAW7hlYjb6zc/0iZ5L+/R4+6ZmS7R4NStesUf8h/4w3I3v
uDSytapo7UknEGJgCGLKjkaFHbF3PRgkQrvoWLJv8TnPSXipkf34xIJJ22KyPznTH4av978O83wO
UZx2kqXMLRroEVM2eUJTxCJignQBhIIVbYV6Od6CmNsGMf2yDvpyiryXLDqE/LQsBmycqUd0Y2+s
jQr7PgV6RdFVi7Rt68MfpjzKj5uHYTj8BCL43OZOMPVOlBoIlYPGUgMhNTYns6SzQmJXCTjhoqRG
5kWywHq4mpphbZFJRlgj7a0cZEUCjiEo7FopRiGoNaPeIY4cmD+gTYOBZjicu0FGHSR2mnL+1RPo
BZia6fZNRSZbbyslTN+wh09Ix7itSulB2VhHKGVYNQLSuiPcgfDjsXTTBdUpIsoEKIbXxGtfhlKe
P3FTUdtQdJXo+8V3WjkCGZnkdkJPaSDwlSZFj5mHmWewBYWVKmeMmr/0lV7wCCqtGmTZ3ap9Xp46
5GpMaClKxfFXwZ31Fk7l1EXsIckpVgpQOMOYkzkRZlxUr3wV+cU2udPtivbbRixN3fYTLNPdH1/7
d/LsVUXPFCyhtKAtZ4eJN9hqxiHeJonADOcukJDqXTUfpJ69V43Zb6c+CL/1D+csIBDc6N3gjOis
VMew6QGP6D+PMLsmoKcYCcZ8WBRUzAapJ1/3gLBqNyxl6q/7Ugaa4d2PxhJ/Nzoey59jyyp4Pcl1
giFsBdGmc8xT2M4MdEE4qKW9yu14muGC2DnenbOg7ToNFy7eqlWP7CeMhUtVRCT+UfQgOAA1RRxx
rAMBtQehKxCpkEQejEnK8ley/58uBcHLrZrSdZWy1f3Ky4u27XZ4KmXOj5uy3KM1PjoVk1FwphPQ
2AjiRBiFbdZLUZtKCiw5F66L4CNeXDxNc3nNV49VLLXi4bq3S/Aj5OLpbgrBgtAUpCRTBUuiS9x0
ghhQuhECycHhChteOeOV1oqZ12AXpoFrytaFg3jRrBo6fnwu+GWlnw8oUMXKGX8VRO+EQAYKIbwt
doL3QJ+CxTaMyQSHJXslvWMa/1IPx+Ptmva+8Un325aIPamhBYftgF84FkEWXR//RGGVKKWZuC5q
NDc1LLbDaGfI1nAfRQrGXx0RWMz2et+C05M1fzvT4G+3DNe4x8fhqTQyntkxYiwUECM2RukDb0Sn
FDAIyg0meoKaozSzoP5GqeJ1EfPVTBfinqvnFnytwzj6FksC+Sv9zN4l9wG7G/+tcDhqG3RMDos0
8UQkgcPeYE9EkNgmGdNFJ4DLaEXOV7nfTzO0OTvdvalJ3zT44UvM1L99CMflmJK98N0kRkHDVF3O
mGEOWjvY07CTbI48c+UFua5x03n0NuXn+zXtDeNC3yq2yA3ZH3aTx15ojcp8cTo5ZxlTsVMiIqq6
AsGgMHEmOGyorHMWL8LBnIetiVqjiMJFs/RSvt/MMVmVKZ+8Msesi5SiT7CsEkHtPTbBYJgLzD3W
bkewfq765OdzXDibNk1AViS49VmYJV75j/3h0wMYXPPgOotGee5wXTEzwXvYsAEUGRpyJCAMkhFX
pXCdxr4geo93a6rtOl9Jb+jSefJheECABgQamre2OzFAdAwmcmwxiz2sXYTdyCP21A6wM70zYIBe
hW28nuaCz3f9YMXWlu7WbG3VEiwLC642dwXV+5gNODbpAz3SGywaxAbF8EJyRG8I8JNAMAgjLNHp
1ahM+OFy7VT4oSZ309gB2y1t1Id9uhtjR+Palx8ozpi12mOtPDbf4U7TzqOABpEmEaDH6cD+12Gk
8V5N8BqMDC7ulkrbj893T/un++fN51VvOdTaj+U34w/cBxIORQS1wP51KJRZ53yWiF1LwUYFO8dd
tw8uT1ttiOVjNYuN2ik98OU7+Wss6QYjH8UMyQmbGoNkMgVxl6K1BppFhgMpgdZEVHr7iNhfL4SP
/1rFjcfi4BVPq3YufxkeboeH+0fkbEoA8kILTEou7jNuErwbJ1WXQJphRkNm6WVH8GnQNqGnuzW5
urEthlXZ5Aj+8nzYPz2O0C8/H8Z88hr3xXjJLOsyK2D9DqF1mOlMAMNUs6iJZK/jvuDIL4C+4O0F
B6LFwWQJ3BVMgQlRRxWk6bGpmkhREdlJikjqSlBYbhG7FDKn3hAaZLup2nzEmpRG+ZBh5FbJkZT7
2//enPtjqZIwEKWM0hDd0ewxLxoMekuBKCGidjkpONcXHQXno9zUM20a01M962z/9f4QKuRtRYie
sLctngcM3TMC5CO3sCweu5qDwWcomEcIRHapxf1i5JowrRuEmSnFM3zeH4bH4T/uvwyH/R9nXyJF
U1lbb4LCIkmClAWw8C125BRKEk0trFBc+Bzaw9UUrdEk8OLUIvDzmEje9Y+HcyGULNZjccNYQ2MS
BN0w+KkrzJhN2C8hGEepjCrERcfm9YgLgmyLoNuFNP3t2+bd8cQCXaP/NHwdDlWBb7QKvhvQH1PE
TlAIvuVltF2CLQhCllDqXy6vXI1+qVhj8diCm9aX2E/LuwIR07ghc7ToylbYdCxglERhzQ/v8Ein
sBuDFAvf1mWgMJyusaKcDhcjp+//vSTmgSFxhN/TFjdGScGQxJZUMItd4OB00J2xQWP5qoMNAnvo
FbCGMvYlS3yRlGfUGkoPL07Z5XegZe5nPQ5Llk0IImMwFFaJHhvuBixcT9xJCjquYWzhF5yNUk/f
yK+Hi2xVVrQJ99vhPx/gr02sE5oNlnkASRad1Z5n7MuRuwj2DNP/6O1aetsEgvCdXzGXSLFUW5iX
saUcMH6I+pXGOGl7QRiwY8WGyOCm+fedWR4BB3DaStlDYnb325lZZmcXmJ2VFJwuPvb9vECocj9n
rs6ZOEqJOGrmtTRFY2Eftf3WQwbebesc4VIDp4lRc8QruOzWeQoyImlNSdc6/T6dnyB81rbOEkaL
gr6PGI+Z63dRmB9P/tPO3ya8kpWNg9eyHcuDzkhQZb3J87RLR+n3cQhqYlMmV7K2KIti/2NenEUi
Fa9ripUKwpScJdKlmNIbp/h+OPnSE/sOqvHHVnnUl9oC7WIT6QQJUWxqOIk0+2IX11C6KuJ0+xkH
FsRlHDf8nbwhmwXubpM6myxPhwPS7aHUur3fh3CwXQ/WrxBEjzicno8BRWzBx/DIPm49Fq0iesRH
wqSgx3orssMnC5/SrOed24N2nMd8YiwH/0ZeD/h8ZuhFVhhl+UXCl5rn/695vMhJhT3A6JGvIep1
GT1c8irC39Hk7mdA/mj5/qXviQt//wr0+EElwQYyr70emEFk72/waaIlzuDohTsXJ7MbfnLNXzUg
fCF74lrBKbKQrZPPYt4jMTdB0JkFVw3u4biL7PXewwaIeNZsuyWM4QULcZpK26yhkWbl6VATCRVg
ctene+POXGlT/HU3HBuLOXDJf/PH7bAatjR+slJ9sZqbcO0HftMJ7L0XOp7bAO7mLVU0kJWmPzjN
iXa/KOqRebQdUt+SJPCSOskugNPHQDHsqHYYUWDjEkxb7ShnmB0zAjWpBBOy01JiaFgOymE6iCE3
YR/rMyWqpPSGkWLMykj4o+//5RA+w4jADZLdBmjlyB34xOidcSihpZvl5MltXaxJAp/vg69L+GqY
sI0PwMSucHACPeNMyNORqjDXcQRq0hQAtasUeEtTWgdwiNqui5choKD06jan7g1uwo7NBo1yYOE7
FfdVzXfZTJtOF3rtuGiTW0LKliBlmO3JPrrwXKU/opBXgdvYfAHe1ufQA8PfBBdVevltuou8mIJD
L/BL74xcUM+lqekTGK+0u0GlQLLSaqfyiF3ERDhwLhiHfB9IPKC1tFgvaGaNacCaGW8KcA/empbJ
M3bLKhWtJWR08P5Y1kAztQu8iZk8gqASxphp42E9SBYKfW1ZU2M+GQ5QRav1oNtSUt7aPGHM4Xez
XndUtdVJeRMZZjU39MWgljtZFvK8HZiVrzQCjA6duJTxJgOX2KiDd6BQ2VUGhyauVLh/M9XmwmRT
Rn0vtDrjRAuUboL5Age0UGFhcMeDmo3R7pseMAz3B1BLAwQUAAIACAAUiy5KteRIxnNCAAATFgEA
LwAcAGh0dHAvdGVzdHMvYXBwY2FjaGUvbG9jYWwtY29udGVudC1jcmFzaC1sb2cudHh0VVQJAANY
z3pYWc16WHV4CwABBPUBAAAEFAAAAOxdXXObSpO+Xn4FF1spOQnyfDAMUNlUIQTneOPYLkvJObtv
vaVCMNhUJKEDKIlv9rdvzyDJAiEf6yQ3KcsXtsxA99M9PU/3zCC4KfJYlKWrN3+Gq/nyViwSUYwL
IfR/mY5D+L+1m6i6b58KP+ef89lqLsrzz9eXnz4G56/Pm9drF4lYVFmaicI9rEX7LIoyyxdtBUjz
80To44elaDb9aVuGZeq9q6jKvoozQFeAGv2mZdLNQ3WfL8AG27TAhltRLvNFmU1nDXEHLP5UikK/
GLYxMYQ1bRhV4nyczVuwCMLcQNjApo65i5lLcJ/bTDeQjZB2PdK77PwYxTo0/alj1Me4b+k9zH7D
BJMzALzMi2rvKow1b5EvHub5qtQ/fdrBOBh62B8gz0CcIsOkACe0A2QMA8sLfWQyj3mapknkuvct
+iL0UbaIhT7I88rVGaBEeinifJGUmjZ6KCsx1y8WlbgrsupBurcScaWgiEUEbkw0zS+i8l4k+vi+
EFGyRYLAr1m5jKr4Xv9rJVbgqTif96Plcib68yhbGJW6QNOC77FYSqHNfg7+9CcDbzjxfD8YjfTe
6OK3UfDb57Od82VwbDv7Q3B7Nbm4+uxdXsBFw+GtvCqqdPQdNX4o2pFwBQY1NPrXtzejYHJ1Pb4I
/0fTPn/Ub8UdnFnqVyIqQBhFrmYY73VNXjGZjIM/x3uDYq0JI2amDD4YjweYKQ/o/9J1StCHf+uF
8f28+PZdH338L//6j47xpGkeuCyLI4V3tBQxDKYYOiXNi7k66Gr+rTf6/eLqN30cjMaufl9Vy/NK
lFV5Du6Oo/henM/yOJoZ0LEVjJP+fTWfadpvs3wazfRxEckIWKUpxHuvEF8h2oQe3xf5Ip/ld6B6
tomJM1fDtgljyTQhwPrw2ca27odXovqWF1/2HPEftfN5mqaOxaNpMqX62L+BjlsswJc8takz5QiZ
4JLR6FL/PQIl9zIsh9dXQUMXwY5FzCN0xXZ6UFdZRUWVLe6U0oW4y6tMubKtkWP8fI2RxZyDGiH2
IfAr0ddTGCPYfKuLAhgRtTXaiD5Xo03tlB72J/QjMCLudyqSmpwfNM0xbWY7e6bRbtNA5Q+bttH4
tGkcW0eYBlw/fTpOgOTaChzygwo2lnQqcEyHkB+NO4YFT/c6B3V3Dmh0zB+Nu7XGJzvHsTCkwx/s
nLWiLt9ZiDrk+YxkJcwSug95SLFBItJoNavAafmXTICCvIjuhP4tq+71ZV1anE9Xi2Qm9Gxb1vyg
fmTpoVQq9WeQ0sLfx+MbXwEYrfWX0AZ92KKno1VRhzVUXY2eUqXV+Rzy+DrBu+4zEzpk/p2WP8TU
zwvRhUxlRM64E4ET1ue57k6682Xq+j0vK9ctRdVu6P0xDl33VqQ3VfHu4OXvX70609/oUFV1Ce7H
y6VLbetMw8eihlqPHkb9W5Gvlq6bZGVUlnkM6UUM8xgy+6K6zCMoNXvbS5vHFVrCmd5bVdkMqi6X
W+xMI8fC4wkVf+fU/+s63JMATKulnx6n3wYORol+wEbQ3HKG0kmcA5107zKAYLYhfMiqS3EXxQ9d
ECKC0oiaEkJTF5TboL/rsEKBgfZ7zSbQb0Mxzo7tAkZ5qqsgDVcLVTa/+5pnif7Y9aO4yJZV8F3E
K2WxLM++V6/O3ruuH81mssL+owB94okAX0faEhx1mUHBvoBpTFR+qUeHV+XzLB5VhRzzUMKV1au3
MPar9a+DMei6/zlBgOL/WjCUiyyq9zYWgW84PtOsI8MDkdSJOn3zpO0bmLW5tZlP+9J15VmvaovI
IYtMoveASGSg2Wcabxjz39HXqJb9aNOuMRYlVoJwbUyyZsiNUWVY5POPQI41myplhMDgfjymKAib
9Eyzj9XLWbQOsAomdEWYFSLpTSZ+eLtaXOb5Uk7zitdvdenZ11I1xbuaIeT787mLMeh2GrqlxjCH
TFfPOtrpxI6nLI5SU1e6Pl1dXl/fTC5GE9+7vIRpyOT603gyvp54k/HFx+BWHR54/odJ+OnKH19c
X00m0g1QGqBjlXKb6jsGDnNlohq2nGlQrR8pjyRRh7xSwnNsDZMj5VGe4F158Edis02sQbI4ThYR
VGb3R0nbuZ8EZ2nY3Fu56C4A1hNPxE3L1IvVYgwzw15ZQUKfTLDrTqMyiyelooh38X1UvNUfG+X/
k6qIsqpUbe93G2EgwawSKoe6SX+/ZhgV5JQCmzfxyWAjyDIh2bIjsVsOdvSkcUVPMZjUXKt9rSKc
OJR06cUw3Qa91pF6bRTj1hVy/HTrxpbKHfu6TQqsgoFWZtk0eZglffiVTZ8q2OwpzHYZlF+qyJWy
twUZdlWFBQJKtT4z+SKKhZg1Ze6KslGCmSAQl7JM/EudX4hqVajYRKryeZS2rKu4hrjdSpJOucO4
rW9OnHz7q/4ghRGbqkrlKHGcmri2syGLbi0mT5ae0qfrRmMeLaCKLf6Bg6Dy17+oqcvkr7xsOGYj
vaPXGpZgyrDF9Mnm/Mn8rphki6/5FyEDE1sb1zxfoJnESUvg1kGMbB1EX1xImC/OYvbiLLb+icVQ
+IPFpZh/g5w1KbO7RTTrsjd+evDZFnagqkv1RbTIy5kQSynEcTZmxm/e9HE3je9KYTaiiKCdnFnd
Z+V6DMOkVgqepHnR2824ct0VKslVoWqDd7McSnf5azf1qrZ3ePZWzlfWP7NmBoZ6iB5ZUDIqxFSf
zlVid93fRQQTizKOgBbvxA7G1SIDGp7ASV/ebc8eVYAp/riCqvv9q2YNcbxF0haVUhnUypPJXEqd
QKUiXOzw9lTwOYYlxGwbBq6KV4XcNxptTFSzG7utkeL25O8ZGqF4wI8avfJhEcuZyLsGiLo013st
ZK/P1DSoDpN1AaiwORxmyBtRMFvBhLXnXs+BZsLU/GdACxZV8XCTQzHU+xFx68Lt6HkXY9Y0qSc3
O4E0WQ+vybLIvz+82xl6KxC7nmWC3h9D/PaHHPgawru3nZU5MJ+ei3lePLjEYryeCB5HzY6TPFLz
NE8eFJViNa07UhKOHiVtq0/LVpO1IwmeYb0t6JHeubtbxV2NPt1eylXeen+xXoc4mv9hUhoJHdg/
Wt5D0ExUEoDpy/IfFnRRPCU79VdLcDnLv6n5vNlanutak22uxkIujSL999F4dJPPsvhBstHyQf4v
N/bkooFckRVqMr+7egPxov6qbERaBP8ctaaZNtRm5YdF/m0hD6nFv9VC5kyRqMnN67eKph91Euy0
uPdvddp0aqbxkzqlkdD7+xZC1LGjtRFnqkuXxdVIAL9n1cNGb9lx9GIRpCnEXJgXAGEPyhud0hbB
PsPLaUoSXS6uyw3zPM5nrjuDgIbwlpu25TgHfHHWQlKvPhLaosHnqIt42lInyU99lJv3RRrFoh6C
clz1wEa1cpiApetbIsSOxSZtrUQ9AwKMdQR11+R/r7DTMZAJB0DZ16gSk5FUvJqJ6yK7y1RzcPMB
EzX+bwWUFWV184GgLoyTqaw41lOqCZG5GrcXrp4BlaS4hvqhGyuT+z3B96yUGyUblyqSDz5hWmNY
yqQnivDrDcYgY3NW0IAoBwzb8OazSYekJprukE48y+SsNJZZZCWHha3WuY7isQRRZ0dkC6TJzfZS
19+70cI81qE2mUFtMpDytguumw5SWlSWWwfXzkIkUOaxC2LYihO5R+kVRfQgF8EfNousqmhT62HH
WYA467ZgCUMGBmo9IilXy1XH0WyKLf2j3GqDC76LYpSvilg0BRObqPWo4wQn1O4SPNlI3nqYE7Xi
dIyHuckF/ts13dH1p1s/QJOb4Da8vv3YXNTF4Cz72EXTFMfNRdjaqhLJVQ5madg5VqJJ0/1lWIdw
jaCfvApL8HE9yFFkwTz3X616p1dzz5k+KUSprJcHpEr333KEYqKRxghtw25DF4IwYckV+qtRXXBN
6gxQdxOUZhqhP6vKhLnVz6oyCfu5Vab94pZNnBdnMUYvz+SXtwuAycsz+eUt7OOXt7KPX97SPrZe
nsn85Zn88oov/PKqL/Lyqi/yAu/BeHnVF6GuW99d562qXH7XJh4/3uF8lCNQMrXAEUu5iHg/ib/K
7YN/6IWIkx0vyG/lTNbSuMVb+xB/v4Vmsojw2sjaNh8EZupbReqewuQPkF3fSqp2dl+91ZN8NZ0J
tTSGHb1XXyZXSmtI5eMt1cduPxNBEanB3ETFF5B5mcvVOPi8hRXNZg8X8+Wsua6orhnF+VIkl9F8
mkTvpnk+kzeTbm963T9lc79p8xR5A+AfWXU/fFhE8yz25cKg/F7a7r1tFkZ67xGisthC5rH70iyB
0OCWrrAq5VszB3Lj2ZUd+2lRZbN3qvUSoLzvbT8egRizJuB71/4He9ooFThp7LSm6xXYzed3XcNF
brzAKHsELu/o3XyWhm7vWlB3HXffYfgTBL/f7MjKDWyIg0IK7p3Vq7y2vPe8KV51K0H0+B1207Q3
gby3Ub5doMXAZr2NA6OZi7lJjr/32DSn8foe4G9VOj6sjb3EPWZinij8ROEnCj9R+InCf1UKZycK
P1H4icJPFH6i8F+Vwq0ThZ8o/EThJwo/UfivSuH8ROEnCj9R+InCTxT+q1K4faLwE4WfKPxE4ScK
/1Up3DlR+InCTxR+ovAThf+iFE7RicJPFH6i8BOFnyj8V6Vw3HhyjR+OZJRU/fUTLv7BbfKI1w8t
m4l4h8GP+Z66g4F01VfeazAf6wchKgInx98bf7Bb6M/rFlP/yd3y8r6hQKm785z2eP0iFvW4+j9t
a/1GFl0+mE3oPcs0pll15mq6XkTf3b33oiBwXjE91BAfakh2GzAmOKXyXTeyJTtwSbltkJayiEP8
O0r7cr/BUld0NDCpRC/sDiWS7wpnFxdKo9ixYikLoy7AsgHviSLIkpZgcsASTJtKpjYliWowDylh
+1coS4CPGy2b5+LrRTpraceASz4MouiARaUs7XL92hb/5lP9dhtsaUFR5IV6Zc76hTfbS01tLB+R
dbWaTzdvacKmpmmDbBEVD/rFHKikdLXNy22+b99roxv67kH5cKk01d+0nrDbQ2f6O2YNfG55tsF8
HhqUDohhezY1PNPzOcY88NDw/d+/TaqhLrE6MCRWmnL9DQyq9ZPB5eOOR/fZfD3SFBpEQxba3Dds
FtgG9ULTGITwiTmBF+LhcEBY2IXmkNQWrnQflwUu68C1WsoXPO1CM60gDCg1jSEKTIOa3DI8e+gZ
ARsOfZsxwtHgGdB2BTfQWcLZQ2dREaUpfaJI6EEl+gYugj993DffAFAfIRs5nBnAbdSgwdA0PIKQ
YfomCpgXBgT5XUCbkvtpEc2F5N/z9VuuynOvdc4ufitSD7xs4U8c3MJfvx6gC7fJwqE9HASGOZB9
T4llOIRyY2jaNueYWZ6HunDXErvx1m27OLnsqDZO25nSfZyHHDwInJCHwcDwTcwM6puWMfCHxGBB
EHjg7yBg5ADQw55dN+5CjbA13YMaUYbSdHrwjQsdePlAvvKAEoN4JjKo40DkepZjBBgIizEvGIb0
sGNruU+5tz5DqxHKPGCZKUzutsjXBxnCUWRCCpBP2tZ71EJ9QgCebcNYoqFv+D4CBsK+b3i+bxqc
eTZifmAiLBloVRZyLJ3Lq3d02YQ6e7rkQSYpr1WrDVeiGorpCqZFd3fy2X093JdXYukl36EEWwiU
Oz7A4NSAARkajo2pHdjE8QfSS/W7184vs2kBHHx+U9eW4cY75XmXnm7vdZ3ZsIxBYtyzzGJCEpas
WDKY8Hztkw1LmSaYESLmIY95MHY8x6CWZRt2SJAREu4Phh6xIHp3vNmW0tBvWahDP3dSUeuX7zAq
RCnt2WAgtsRg09AkeGhgzIZAlYwbnuN5Bh4EA4Y48qiiyh0Me5KaOHjUgcOmyg+7PTyf5wuY192D
L1S/kr5i7oFtcRpg8IbDDQoEaNhDKjuaez4bmqE9CJ/Xsxv5h/pz095En0470KfJphc3Dz7OF2l2
t34U78adMLPsm6iPKZhBh8GAD0PHsGwECYiDQQMfMjXC0Mk2CUMUhjtercWeP6mggZMjvI/TjqOW
l1XVcXH96AIYyn1aDyPTkv72TGoNGcCzzAASEPWw4ZiIGkPfogGH3ERstu/vHUfvqdj18rqxAd2J
zH3okWm3KGAwg9GW53V8mH0LLlB/Uzn+TcSJpG8YKUMIWuID6gF2DIdSx+fI5ojhp1Ffb+UfQP54
QgN9xFgHeqhWJHropY/qWYJ4O8S4DAbPR4NwYBs8ACanMm16GHI+D6ljWqFvQtHXHGINKU393OrQ
H7e9Jx/tJz574WO/sz7qUwIX1h9kasSQqSkLDB9bHjgRUo3j+I7hDz0U2AHxoFB6zlBb6+r247qx
aUPs7NswpbwVvDvv6BmJ4msWi7LvjUcQwpzDxeC7viRRh3MncLBlIG5DKeJ7vjHAgW+Elj3wB5h4
ZGA9GQtdejpt2b1mPDpg73jUsHVqdiS8JElaFUy5foqp3uNqdDJOKe/LrAsWBiRgDEYjFImQalVH
DegAfg3wAOzl4An6pIWbZ6R2Q9607uKmKN4fpZSyaBPncxFHoGcT55Zj9ZmEGloQ61DFMjkToGY4
gBnK8P95u5LlSG4ke9dXzFEXpLAvR6w1NVY1qlFJmr615SqlNUWWkSy1NF8/DxG5IQKZZHfT+lJM
ZYQA94DD/T13R2Qh2nklYo7O+ElEawb6pp1t1RFhvbvy6Hbn3M63enyIinENoZL3sqREseEsnh9F
dAtZAy3oEBwYDCvUvOr5ndNHt5/k+b5WoQ3tKLRZT+z++y/b+7R/3K6fH0Acvx1+0LY6bFetXTCv
jU8KFDByAnwJ8KCTIRYhvMgAlOtuW3szel+N5paJBpuOBvi31eDzr8vhbctAORzxcHTeh491PVLi
lrFIdI4B9lwQ43MNQS4Up5UJ0tvXOJ7DNFfWYrzYiC9pZwEklUejHn7l9WjSptqzU9J6nx3geAAc
UVwRlyP8N/cGXAJwWJpuHL8YaiKC6olgjiLEd3+pFYKFP4rh4ARqECmKx+Cw8AE4EWzbiermNLEs
KCu0UYh/Nxe+Ith3j8svv+7XV/zbD4e3Zj59NxekVYJ1lFBiMwlCh9d45j+et/dPw748I/hYkrNW
Yzsm6CQcyyTQjDAEdOSkNyqK2xF8OnhfpeldjRpq2XEwy62bWPPH7Wa//PHh4W718MdJBSPYgqkF
p3VttPBJFBhIwF84GDA3650jFs5fiMJlLLc35eUUfUUu72iUWLE578CXu5NBYdl//hiH9x8fbYox
N3hrpWkyFD7aUAc2R4GznQYCgMSuRABYr9OLzuTdh77E4+37gzXNpGiV4LqjhJyuxPG9sBd2VESs
qS/sCFexFYMbsd5mQmOSnpUsrDCv8SWHoW9aUSPyermdi7zemCNT+OPL+uRJtFoouqhsS8nEBK/y
KZlh+whF1oHjiPpbmLy4xGyfF5yGa4TYUDMXYiPoSYinu+czGGUjYDI8Jha9JKwEgGdtOPGp+jTr
4OQk0/jbxujLYdr5RQclbPSUzr+rPz1+yfKCdNgYAts9AMQLoAKIAERcHarOzjsm6U3Dw4j9pcKF
RsKttHMJd45PLGsN+/y6B15f1FALD7uoxlWzCVoAKYClm5rtQJzFBgG4UUaa4lng/rVphp/eX08s
/PT+m1Y80ZN51UmSnABr+Zzr7249YZU5F4sKGuoOOX6uy15UMJ4jbESwfVG8A9EHKUkKMA37xhnn
XwwgrwbIR3mu3Hi4OlF73VN7dzTmoYD3OV7G6KMj48K6BHdFgs1wZDlI4r0vpIScMmUx5ejfzpE1
QlyqICmfJz+AL6Z+7DTNyNMs5UB4UGb0aoyzhZAD8ndUGtgZYiOiFfaJgHer/rqkUigPwHwuvZqi
DdPcYGnD9VYd2VGHSX1ckfJw//xp+fi0fTwtiLIDxOMAqc5nSSS2EHYOq2kcA9tLJUVgPG1L+feR
sgbYTIX+plXOdDRW9oQQf/vy64nzVEfmZSg8alCL6s8F9pNLgOOagUlnrFqOZZI9O43QTqw7j1qq
3WTP/+f7ExCBqxr2uKVmsBWh8ayjhJloWL6Q2Agu0kwKs0GwxLLStzM5cfm4uoajLm47idC/83S5
UU92spP1y6lLG0SoZiTrTlAVXNmic9KUEwWai73N4bdMRb9RINzzyKxI/7Re47VGVC06KwFW0slO
bH/+dJliqSvChxjHhhUxgWuAKMibAySHEyKgNgn/uBBpSYxa/voEy6ebGZZPvlVC2Z4SJ19ac7j7
u+3jX891M11F9qxaLJBUURURWrgeq6kjJgDwSgXfE1Of70wHbMVZ9sRZbifL//57v15v78b+HzxP
qkbqO36orEGxUAyXpNiaXgB7hz/UgC6URq2o0tgyr3mizUTXEoAXtzTK2E4KDl9u5+ynfD6mIuQA
e6zkHtFWEzACGEThvLLJQrKy2jPQH1b4S6SnfL6KUUsDfaRbzRGqdGt29GWHVPPT8n5Td/OxMAG+
ecg7ca/hOhys1thKOakiFgiCKJ0HoOZKsLeS2M3Il6IpupsTSMXYWH/EzfX3G+5+X7iTbQ6paqxw
UNES5hStXg4sSydGaOAwbQE3Vya4tR2mkQB0dS6B2k7LFD8s/x7xsB+Xi9XX+81dLTEumKtedyzg
MOkcB4pGHIY96ozt4hUjDhCac5oZntJ8QS+B1HfTGb4bfkAF2Oi7j8v195/P1xvxzWqeiFGWnYD/
5U8rAhGOCNCWKEA/wEupQpiQDsHKR6BuqQ3YXgE3meShL4b5pp2JdabnJ9NaPf22oMfpxUA6cnUf
MoJlBCwe8DMJOgeikio+RMMd1+3cF2O0c3PTmVssO+j4ooZwZoxZyQhsAtKjELcFxQNwCT7ESsNT
8E4Yll/EwS9UD5pbWunFqiO9naZO4t3D1016WD8dJQePHStLqiQHTJUIdYgscIGGhICgorTjGdzN
FEFfxUmOM1zR4Hi5kR68aS79SpyywuXh6e6vm7Hb9WR9esHlILhLwfIE8CoDsKwCJMSuJTFTTour
vQ+T1PB8tEaYtZyXEdRa8aMTOXih+4fn/e7PM0ClQ5GupiGlDSkLSWgxwG6wCsSRUkhUxmbhnDUx
3nJvlwO3gi07u2O91EfBvt7/fX+/OW0PtajrCpQTpM2KYBfWxK6DNEFJEmGQJYQMKiC60lyO1oix
ofM4pTZaTkxttJR4WXCsRscGBIY/Q9Xf6oz5sWV17fSRDujLK0RhhACaI3ZyvJ1An89xJWs7v7HV
Sc8Dh6bbaUPIz/vN9uF2yi6ayDXDagetavMSnDbPhjDto0/VBxR5U6XLKfq6XN5xqYRmnayNZkxP
WkU+LO9/8ffLuz+f9oMbGCtDw18owGwCXQOd97UyJGyNOkZ6QmFDSSpwN6PenGFdinSFLF/c0SrN
ekov5W676/2k8LcVHFcgUncqt0aIBLRUy2BExBDBJnkkOUVsGp0lGM/Navp8d2jO5uhIi+16Ykn/
83X5+Px/Y3cRG9GorAmVoRYTszeaaaJFbd8IgM2hdudJo0PRSRRlw80lOA/ef5jn643oYic6ou+m
ADTWVtYftrWFbft46GU7l5MMq/lIqizwizIEJDbhyVqEZYd/qGSm6CA0S+FV0aQz15XA0rlzot08
xmjrlpPd8W77cDTb0w5nii2kG00mWWsUQ3A0AopVv+5YAvwo2iOAFqeDe41iF9NcSTieb7hUw7jV
3FPVL48I7ev9ydS5G4pigWUnDYnGqDGTANNmsK2sMkzLFpqv+P+OeZtVByWZjTiVuvbrrzXnea4z
KTy7+viqXVvnAgNNEbb2oCV4FRvxT0FUZEklrqKZtiU1ozWSbJTrSLKWV3Ni1d7/94P/74uMGAWh
rk5PBKGiQiAyJdZ0i6j8LzIiBS9espRiehm71bGvw7Z6tZV/rXryq+OTrKnDsc1yf//LT8/7uzPw
GU3RJ5p8tB6sAIFTUGOIc2CuzucItwj64CcdVleGvBTL0tU8TWHpxk46lZr2/W8Fl3ZwquyQomAx
CltKIDkYgDJJE/Gxdh8aZalnykfqb3nWy+Fb8TauJ547ive37Z+//fLYdKJZRN0IdE4AcasvynCn
IoEdOxvhZoMumXZluRyrEYK5uY+3bM2PQvzXp/zuXBwZSKblvphaUA8i16KSx7JJwMMopOe2Jm1i
+ef7oZpE5Hn2Vui16Am9Otrbu/KXWtvebs70bjAzrKIIALSE1rwrGBaFKy+SsBCpE8UaY94oBz6R
oJHeddog65c3ahf/8a3hFuSmBqXhQyVpWPhc+3RzrEVhLjnQDbiDU8GBriJiBfsvFisu72hVWNOO
CrUsvBoW4If3n+bleR1d1hGYRPNSO9JgPD7DhystvVCMBmb8W5bnL4Rohd8ue8JvJt721+3dlxo2
xaI+dllT2UIlL8GJCA1DZ4lnNWUfiaSOqpiKLFq+Sf4YU19JHeNKo8yyk43Hl1Nlnr5st+tfF4/b
9cMv9/uWXNTGtzFPPvytNZWsvINzI0XWLAivLRUhI5qEpCmzMUqV30LPz4NUP/SEahjP9LbJE+h4
sGXtKm5Q6vGnk8PX3W77iIWtSVMphgIF4IOKjqSkKkatBQojGcm5RJUFBXrOr8FB7Qx9Vdp7Wj3U
rqOHXs7bFj+PScNTvVizytdrrFLcaMB2OiaOBIAdGDILRPJMvfOJ52xfmU4/THI1oX643qpgWUcF
N83cvNveb0fiuryrPz+PaFArA4MuYgQENlrOJHaa5K42BwtNXMyF1DQc2L5V8bXYdDbVNYw6u7FR
bdVJz9u1Zsc4+fvH/dMJrSothporKA7jxSRSvMBylJqLD6CiNiHiBM5yjC8Q0GN+ffviXvp9u8YA
/dta+Rq9Np1mXXx5quY9fdnfb77+9uUUSZ0ZFog6YHBjC6EFXlAUCVbENFyESQW8U/EYbYvY2pEu
hXBqNX+4zugp/l3+ftnAOBoMw/ZcwGaq9UsWUqIAvErVGt9Q+qiVRsOollZhn79ANv3PL7UvXt7R
qABSNlfBLreznv7H7dCn9P57xHQ69plL4+ojVSY5Hksm2bCarsAnj/0KsCITnkb9We7yYnw8DH49
nh9uaIRfbuYu1K34tLK6/LrZPwwq+Pqp+p+DAvVvhSTeJFlg6lTzUKkyI4gjkUQwaC0TpYidL2ow
jH1d/uFyI/1K9KSXU8c5iyJjxoIv+MIMFUk+opTgIb2jBJxOIMazSKwpNW3BMrZzKfR1Ld/d6V4Z
36bpDLcyHRV3Sg+Zoda6/E8RSjGEhtGhjp+GUyyggS56omMCZaUKeDFyTii31nNl4rhjX9Wpg0lu
rNBPsRF+SFbMhN9NO6DS/ulv/nG1f348bfBxXcbWTlBkDqahRG1k44Al3lBGSspJBaUEfaFyPxm9
L/3kpkstlmD8My2WuxWf17zH84ALN5wgoXIhBwWEZKzAQaZksbmxGYiN2pKoXeCcqixZeikXeeVY
YDxca8TdbURH3E2n/3Q8YDTWYPVgKUk7HmDtpLY9wRG52nzMC+EheAOWXpKRr2wYvH666HBxIvTc
zFf00PnbQrnt+nm7GSowJwRxcfZNCh14EOCltYEOEY4EWptNaWGi9tNRyl+L6GYTXQd2s1svlVsp
yufK4cspvjuH/DGk1/NIrP5/h/+s/zUUyi3jKgHgFVa5LNfwUwh7pcQUMFNMRv87sMV4rdHUdMJ5
/bJzAGeSXUdIsTWe2CEnlBARsX5M8tqwVkBCSrIk+5gADhHRrXyb7H3nxkYf10HmK6f5ke3WI5yn
9NHxGGhhVAReAknCIo7YGIhz3JPMdEgxUOppv1h1Hq0VogMwVmvqOgAjLZ+XQ0m77mjJhtqZ584r
6RjRrDYBG8RnywHfrMyZxlpvjPLF0FwHvnH2E1cbkTe6Y/GbjdttV4cOG/DRxz+/PD+cnp4Y2oDr
Hg4qUgVPQyA2rYcuPew7QGB4Sti+F5FdOVYwGbUVaTPn/qst23V6XZ+ONjMmcsr+bvth/wTXzuHS
B/I4YHyWuE/GBGIqGkZkwo7kDvAzUS+4xyZl8e16RltZrh/rON/TqL+z81C82tWzxeJwtOL9/fP2
cbesshzXhJlFzb5LI6SQmRG4mkOO1lNpSELwolz6rF84jvCPOJwhRfiaXtOZwK2+Tnf0HRpmB30B
50e4ecpHH3K+gK0pFEGkowCyBtvYcVvLzSwLnXV9ScK/yCSaVFUrx6UKa2rnbSxrujolaD/d/zLJ
z3LvmKkAQ9ZNI3xC4GOSkdohmJ1nyQj1RvnZ0+SNyEzME5z48nQANO2Xv9w/PD3v1x+3T0/1pR+T
sxd0OObMpQg6SAKeDHtTCmsQ60Fw5eH9OeK4m7TD3B63FXEzD1FrzqfwyOfK0oZaIB3rFNJxIzkp
th6TszoQLxUFv4/cMhDO4uXbbXafr8Sr3OjCRU+X8T0gF2WO34b3kZ3axcyxx0MZaUGMq07gOkJG
AInAYPpKcyYYN9rcbGG7HLeVq5NaWPPVqQHrx/elTExXgD86l3x9XQtgPhgJsUXj+QojC8JnFFS+
kemeZ2+FXrGe0GyWnF8/LIdOtyGPOLz3AR7RGo+Az0XNiKhKfh0MxAlox0VUhr1gGxjzWnjFpVbO
re7IuTXTzsXteg9OeSoiDQ8Z4N6DfJBUa9miAOMHGzMBQOBBmiiyDjd7Fi/HbIQynXaatZm10zSb
4PvPt4oc3ETGAwiIsTWlY1MiQ4NUiirALgF7k367DXeW5cqpz889fLh2suPvXN2Aq8u12Nw/PW3O
rcSqVhmH1iHKrHPOAjzUvj+mIwH4UWBftu5NbZhIt9bjYtxWrN7+c2qaF/kxxua0mMo5cPAKV1sD
RH3xjjMhE85jsJmxAOj1Gu6EYfsPERdaMTtV2rXbsIn7Wj5dlGjFESVKVqpQhbBQkxqFwT48OIP3
TBmTk7PNYerZszuN2oq0mQPX9ZJtOyhxeMXj2A+GpVqwmrIAilALYYdTj0LHMrRPmlTz8ZoErgVR
OiWdIXKw6UXz/XCY4jryPt7RKLHsHBhcL8WpAfXdh0l11NCkQKsEodLXQADWbAuDF9MlcuWs4ta9
UXX0Q+ehL0XvoYtTGPthudkv79fbScgoWTFLE68vZxlKHhFSO0pigXMIQ+1evFHIaCWYCK96wk/d
ccMrThn1EXIGhAxf4kDgQXfBF21wvvZzWaF1AadPt1+HMh16ImAHJCyXU+Lz8WP8PBQ9az+tGlP9
oI0lZEimVKlH/CgDEa/RjQZWTCwIGvo1HqGOfeXkLq600q47PmEnaYfsluadBkPSDcZaxWaJlZrA
ciXHmj/gxArLCU/wp0YVBJSXy80vofj2nkaH2sM/1WHD9bRJqwlQY9300ErHhB7OyowfhoatAANx
QwZX19Q0nB0rErw4Wea9TvqFI6H/UDA8y3LrXNA0VQ0Ntx217TSHF8vNdzjApTtVj90qkMtaOft/
4q6sR24jSb/3r9jHfaEm7+MxT9sYGZAt2Ji3AauaJRXc6tb04bH86zciWcViklnVNbsNL2BYJZLK
jEgyM+4vYgdGDdieyQSpXEr2lUjCFRgOc17zFc8vHppzPfDNOgw/8B1dfLAFGuvjty+bhztMyStg
M7QgzTDuBAuSd96CqcYN8GpTYp0IoFNiaZj0V4Ud5jOccXLPnqh52LEWD/3iDLsfK72HCVXgKJWN
RJOCY6KEUsTKGHSnJLcYymKgTqQENgVIFJlVJFUZxTpvvDnHgtp1lcAg2K5xRJQsYzzVTPm+RocY
bBgmHPUdqDWoBYMp51VMIEaEFVIwJezrfpsy8vmTodyuqBaNWNUghFqk+H696593D48TlqQWxwg/
s84SmXKntIbDOHDeGVQbVeDOmCA8KD6XVrYeuaatkUoyyFVezBgFfD6kdRe3xSyNvKjv9IDwpUmy
0gd496DTcqvgBFYhdMRRhHtwhL+iUMwHP2MKz564qekeWswskXG+Pu7vZ260dx/w7+UwGjMrStZP
MiD4SOhAh0OkTAQqM8Z1gWZJ4GiyIbq3yIb5UNNSRxfgVs1fI6gGJuGkcHwBZetpwh7CIzUJS61H
3DKLmAYuY/YsVwX1MViTeCaL2rD5GDf1PI29V+o/N3Ul7jz9mBVkLUlKjFUrL2gAJQ09VCKADMM8
vJSjDo5HGmx888T8EzXnqnJbxt2grGzw2pPjQv/2x8z5v8od9dxa6iwq0hl2AIZrMCAuYMuCPDMp
0LZSdxq1JqZRNjNoufRObPrtby9f5xleWBIhDqURpSqPE5FsBCED5HVcWzD/lbSg2BkZuPTCkKuC
wX4x03xBx3s3NamsRX9/1PEP5/6UR2MmQy9lMOY0S6AQYEoaCaQDXUh3WluSGfFwaMf6663GqqjY
kHUoBS+egLue+7t/YgeJp+f+lPoCQvgdWOwj7EBMyVHKgACHmJCoXTrh4X8J1M/g4eJ18vq7D7+E
Q13wbBXPEbFgY40sMmzZEgPjff9yv/18yckSs3XKBjD8lMNCAIW8EDA9SIqUBUdNeEPYi5qecyUy
82cqrrem8fK2dnIXbP7E2vJTZaUpxTEJJLo0XSA5oRdJdA5tcaqxpC0Ez8WiqrMapZ7fNj7hba/X
wU2sUu3395hsuErUy1j6qglYrQHMbO7BfrVYux90QlwnLwS9NlFvmuZscHN6omakkdEGF6cc3nHu
d/7kJWDqCJRC4CMXBuxURUWRJQTh9igoJSoLpiMLceGbr0erCLltiLIdFUuv4VlDT8MBG7kjHdqj
sBW5AzUj8w4dMlxJp9IrJeOXjbzwt7aBt9PDWjLAxaV/rSRcYezr6Wm/2d8VBMPR3aZtqddPinoh
O2oVKHSI4uBgaQtOE2feWuPZ68BY1fgX4LGq5xbcrGU61iMsuNnf/1bJFVLeBCvFXjRrFTKoFDxr
xOrF+pzAdRcknCZginvOzVsoSj/cnwGhghs3Nfm0wdOGLByzX06hToIhXWISLYe5wgxUTLPvnDQF
xllzEI5Jp4vWS0O5hlmbpPDF8t49fNrfP02FaJNX1nqWZba+S7GAxfDceW1NF5lXSnvYbteJmzL+
qws8p+JMRunsiZrPbYvPYTOruu83+2nBD8AslrGUPXw5YDDAAY2ePKxh75KhLgguNAtkVXY/jVMR
0Mu162jX6+VCP4Ap/3SsHxr1o+J9OBQkcZU8WCiwIbkA/Yhajc6jDAQF7ZnGHBv/Fp9yVcZ0Hmpy
eqRmVa8VgN2GbVspIS9D9T3lQJNDQEnNHdg0GO9ziosOsxlAkwL1yuv/BB38MiJ4RfWGr/3Su+1O
HTelf+8+nsCrFCsfiBeBUcNUJwtOTFARvn9QvAKclUYl2AVO/UWZ1Cf6bmoOVtazJeSUavDefXDh
7yvGBGPcYE8DsIkcWgggSTMok6CfOxKY0Yzyv4ixOYU3NRf9mjVK1GJLHWpMnr7dP38equpnrDAR
7+gIrSzGZG1NoyMEy3+SA3aZgi1vqOikxa4YkrKs3r44e8y0/bimcJ2OOz1ULQWoHI2lYFNqw/bh
67cdKPMnpUkXBHHQROCU7jLHVyvgf94r04mgZI4Eu/awM7lM8+EWlAwNSvgEX/TnCdwEk1oOSVU8
eY/pdMIglDl8Xp3NBHV+k4iIgmgX6nP2zwa4iSUN0wMvqmXV0QHs9/P+v/7bHvCGCUGfCk3aJ8l8
ZzUWr4EKB5ZTcB1NibnIhIrmTXwqR7jh73+4DEf8/Rxe0NKSJbbgj95uJqP/41dER2ueVCpLMKkJ
Vt1iRNKAfgwWi+g84TIIMKi8j3/Rhl5SWbO4Vkjg4u30/RyRiWgD9cgZlBBwaDGsZuG0JBNK+OWJ
EZrraNTCGF+MVlEyrEtQ4eIwBf76l1OCIDX49VhrQWmGNRY0g6bMHEd4TjBYUyDCeiVjXpQLn8aY
T82IWUXuLaN60lb++HLHTg0pmB0htqJ3UaEIihlRllgiIDwZ7bKUKmYwmV3J9Jijg87GqQigaw0V
dCHLj/7g3+PHD8uqIgl2owLbHKYnqJ6CXespYnWnTBxsacL8XyUyTuTd1AysjwfG1W0jD6RYJW38
EU2CiwJ1sGwwCQ/MIycY6cAiSiB9WGCcXFcP80o1TEU7X9ey48VJjn/3wzJpKSbMnMIPUWa05eFk
tVHyLjNlvWbOqVdgp6+PQE+TL0hey2cmuF0WwAz94/ZzqU6g78QBKWVEXctUWmewNwBC/HCVKRg7
JnUJ4fNNsLCf+BsmsR4JOXcmH27f1Py0mNTL+oufhy8Pz8Ov++HfJ4/XsVKsSECGWoawncFKK3Q1
d1743FHYu4JwyyS/Kr1lPc+517d8ruaqX2uNTN6KRZhibLf1xzNCIY3cCHvQo1z0yXApuygygmJQ
BYdREF1UgkZFZUhXJHbj2Oc3Cd69qQls7BG1wnD9fth/ue3valxjGbmS3NDOeJkwXxpehYGtnQNs
9QgGoY9XVdseBj9XJl1uVkQrsxYzzJBl2f0vP8wdTeO5JPgIduyc95IBsaC9wLGEcMyeSNolpaSP
IBWbiEhr2udztBmYP1Fx0evbNRd9b47WE26d/e/DSWhxjspf0UwC1yAgEC8F6++dwgAQWFOSFwB2
r/WyjdFisIqQrdmsCSkIXgco4p/zx5f981BB3BFtwJKLplMOXVwEltIz7zqwdBzxzhsXeE1CPUxF
wa1eK2lsMJMu/vSvO/iHfJLeVJXQRwwgMi3oLaCmgQ6sMUNE6tApZa1mFotLFstQDXRTzza0SNgt
QuYb7Go8JfyoUjbAhIjYqyArhyVK3ncePv7OKCNpgLdh0sU47nzImqSer0nacXJ7u8ZmRXiNuVfA
Z52ij75zkkVMe4fXE5PoEuY9c0ri2JrkOjTWgt1xHo4Vb9/UNDZUoZ2eEt2/e//LImEtAD0S29rw
xEuGD5Ze4J5koFVR5a0N/q0S1n5pLPWuobiCqi9XAZj7Ty8g4X98uB3uFl3apAnUOFHWGcP5PnWg
S5BOW1DjbKSwYek1K76c4zzy2Pypm4rwtTu7XDxbn1bC/fgPZpfoWJwmDcfOSRgjRxRXhT1BMrYI
CcErz5JO6f9WK3K6v+DBtHjYHvfj1/7LTJ0npclGiBQD4gbtczgHPfYMCmCaM55gD8pMF1Hx2RjV
3JQ21o8ye65vXw+awf0RD2L+TYDYJvBfgAMKfY9wLCLAsIZvIiuTRdCUpf+oc1810yu9+6pna/7Y
tsXftLYIoPDp2/NjP0vRnIAkiROWBtTlhcTkeDj4wIgDi804TEIA4bw8dFfDLYi5bRBz6r10u3/6
WhqEHW0nUkJvRWMKWlhrJCKQO6zT0hHOu+Q6MBtDMCAdsm17Y+pBa3qGtcXDmV3mzmyxOPQ3UHxL
lWhRxYUBy9CWokf8UXpZgTjgOnUU6/UwCRxPB4O+BAlGd05gfV/W6A6DX4AtXWjXQGrjKONMtTL3
S+rY/pj2zEfkGEOEKW+aOuUzFRioz+hiEniiRdxVjHkbsNj86q+3muoCRNH8sZuaA91iazLmwq8/
fvxw9/Jpf7/okHuUMJJwrJzsInfYhIPLziQSO2WD1FIZ4RV5o6YJbUoqbtS6oyFc3PETVhdbmKY6
R8U4xbCRx6pPnRHMgMBfaVApBpUZfTOortahqHaNfaFZy75xv4bvI3qKzegphJP83ZhrIZzLcCYj
Dgw6PEi2YJ1m11lEM8fgEBHhauQCnOUCdgHerjjQ28ai6+206P966R/7++f9/XBqcokHXhZUWVhq
UopsHMOuVPANJaE9l0ZFS9pVVcvxFsS0lnM7QcZ96befJ1+Z0XKMZWHgRGQ8bMGu5wjDbZiRHc0g
l0VKgp6BTZyNVlFh1l3n4GK/nWJ8L1+fZm1cuRxjfFQagR17WckZAOkKhirlXUiMMWMJ10vEmPk4
NQG7xulv+eakKo71o/VmBrkOwtyCwYMp7NwShfWciMZjeA5YM5/frL5hNn9FeaMmBy7a/liAi503
fh4+7Z+eH2d4zOMCOk0i6OHYYw1PVhFhBwRquyy8xR7ZySr6/9gwpCa75rpvcN2vFOUfh+f+dqxd
JwcoX7DI3vERGlsQHbA+Cgwn2E8UTmKCFSosRk8EI0y8YeXlkZJzmRTj3YrH3toGjyv1uZlwekz4
L+n+cJ6NWF4uGQfCFNG/LRZixc6jzx2+UtCiM81av32S5ETOhTzURco/7Lt1twe8uFtUcH19/vw4
9CdMRm4wnaigqcaIYNKhoxFkFXdY5h9CaeFJQ0oJds3FKq5q5Iq0HWkorTu5DJEvdBpaciVRpym5
kpqAYawktkqyWGMGGo0MDjWaDBYCHGThKjSRK7SZs5qMUHZ95AlNlklSC4jYfd43IGIt6DGWgSzw
HAVCdsX6iWDmGx64oj6EfK08xSkuIMXC3YqNLV8rZOJWyIU+cDs8/fb88PVplj4Mn8ohtZyU/H3u
FJzgsB8CBpE5icCONLYjQqkkk2Be2esKJspUxx2CD5yrm1g9eFNzoVqsLdMxi2QI/dfnF9zzY1TU
Fs+oCylk4sHQi5ahysA6n4XukoE3BLtDcv026VMzCi70pD48UfPYyAQQA1s6fuN+W5D0Hr9VCeDo
A5aHt0fglxSsCx7dXxa7U1NsOisxnzZRLe0bHudres7hPy2fq7gfWntwx/nKSLp7ePz47X6Ljm97
AEgbXzG2F9GJEbA1MUMOlI7OxtIqgFu4ZWI2+s3P9Imec/v0cPumZku0eDUrXrFH/If+frgb33Fp
ZGtV0dqTTiDEwBDElB2NCjti73owSIR20bFk3+JznpNwqZH9+MSCSdtisj860x+HLw+/D/N8DlGc
dpKlzC0a6BFTNnlCU8QiYoJ0AYSCFW2FejnegphNg5h+WQd9PkXeSxYdQn5aFgM2ztQjurE31kaF
fZ8CvaLoqkXabevDH6Y8yo/bx2G4/xlE8KnNnWDqnSg1ECoHjaUGQmpsTmZJZ4XErhJwwkVJjcyL
ZIH1cDU1w9oik4ywRtpbOciKBBxDUNi1UoxCUGtGvUMcOTB/QJsGA81wOHeDjDpI7DTl/Ksn0AWY
mun2TUUmW28rJUzfsIePSMe4rUrpQdlYByhlWDUC0roj3IHw47F00wXVKSLKBCiG18RrL0Mpz5+4
qahtKLpK9P3iO60cgYxMcjuhpzQQ+EqToofMw8wz2ILCSpUzRs0vfaVnPIJKqwZZdrdqn5enDrka
E1qKUnH4VXBnvYVTOXURe0hyipUCFM4w5mROhBkX1StfRb7YJne6XdG+acTS1KafYJnu/vzSv5Mn
ryp6pmAJpQVtOTtMvMFWMw7xNkkEZjh3gYRU76r5IPXsvWrMvpn6IPzRP56ygEBwo3eDM6KzUh3D
pgc8ov88wuyagJ5iJBjzYVFQMRuknnzdA8Kq3bCUqb/vSxlohnc/Gkv83eh4LH+OLavg9STXCYaw
FUSbzjFPYTsz0AXhoJb2KrfjcYYzYudwd86Ctus0XLi4Uase2c8YC5eqiEj8o+hBcABqijjiWAcC
ag9CVyBSIYk8GJOU5a9k/z+fC4KXWzWl6yplq/uVlxdt29vhuZQ5P23Lco/W+OhUTEbBmU5AYyOI
E2EUtlkvRW0qKbDkXLgugo94cfE4zfk1Xz1WsdSKh+veLsGPkIvnuykEC0JTkJJMFSyJLnHTCWJA
6UYIJAeHK2x45YxXWitmXoNdmAauKVsXDuJFs2ro+PGl4JeVfj6gQBUrZ/xVEL0TAhkohPC22Ane
A30KFtswJhMcluyV9I5p/HM9HA+3a9r7xifd37ZE7FENLThs9/iFYxFk0fXxTxRWiVKaieuiRnNT
w2I7jHaGbA33UaRg/NURgcVsr/ctOD5Z87czDf52y3CNe3oanksj45kdI8ZCATFiY5Q+8EZ0SgGD
oNxgoieoOUozC+pvlCpeFzFfzXQm7rl6bsHXOoyjN1gSyF/pZ/YuuQ/Y3fgfhcNR26BjclikiSci
CRz2BnsigsQ2yZguOgFcRityvsr9fpyhzdnx7k1N+rbBD19ipv7jQzgsx5Tshe8mMQoapupyxgxz
0NrBnoadZHPkmSsvyHWNm06jtyk/3a9pbxgXeqPYIjdkf7+bPPZCa1Tmi9PJOcuYip0SEVHVFQgG
hYkzwWFDZZ2zuAgHcxq2JmqNIgoXzdJL+cN2jsmqTPnklTlkXaQUfYJllQhq77EJBsNcYO6xdjuC
9XPVJz+f48zZtG0CsiLBrc/CLPHKf+zvPz2CwTUPrrNolOcO1xUzE7yHDRtAkaEhRwLCIBlxVQrX
cewzovdwt6barvOV9JYunScfhkcEaECgoXlruyMDRMdgIscWs9jD2kXYjTxiT+0AO9M7AwboVdjG
62nO+HzXD1Zs3dLdmq1btQTLwoKr7V1B9T5kA45N+kCP9AaLBrFBMbyQHNEbAvwkEAzCCEt0ejUq
E96fr50K72tyt40dcHtLG/Vhn+7G2NG49uUHijNmrfZYK4/Nd7jTtPMooEGkSQTocTqw/3UYabxX
E7wGI4OLu6XS9uPL3fP++eFl+3nVWw619kP5zfgD94GEQxFBLbB/HQpl1jmfJWLXUrBRwc5x1+2D
89NWG2L5WM1io3ZKD3z5Tn6KJd1g5KOYITlhU2OQTKYg7lK01kCzyHAgJdCaiEpvHxH76Uz4+Kcq
bjwWB694WrVz+fvwuBkeH56QsykByAstMCm5uM+4SfBunFRdAmmGGQ2ZpcuO4OOgbUKPd2tydWNb
DKuyyRH85eV+//w0Qr/8cj/mk9e4L8ZLZlmXWQHrdwitw0xnAhimmkVNJHsd9wVHvgD6grcXHIgW
B5MlcFcwBSZEHVWQpsemaiJFRWQnKSKpK0FhuUXsUsicekNokO2mavMRa1Ia5UOGkY2SIykP/9Pb
0fU2agTf+RX7clIiFYvlm0h5gAUsX+z4mpBL2xeEgTju2RAZ3Lvrr+/MgjFgcK6tdDwkZmF2ZpeZ
2a/5WP0Zn/Jj6dxgwNU0VzMlQ6S+g3bRsKC3KBClqq5h+54Oer2XUbBdi9DFFA+gp0Yrs/0uz1gn
8rYuSUYTe9tCfSDj9owK46NiQbc4mNUcFnwmheURBiIbS3Hfq7lLmGEMEGY2Jp7sdZOlRRrkX9Js
8/dpL5HiUtmwHJPp6CQpIWUMVvgWZuRUdU0yqAU95Pb2HIar61J0Hk0CC5sUga+VIbkYFdnJEUrj
q0e+DWOZ1PVUCbdhkNV1tJj1MF8CM21KNVdnbi9j83mNPYKsIYJWvdH021s8qTUWzDWidbpLs46D
r2vpwDcwf/RczASFwbcczbVED0QQBlmJUueye+VZ7WPOGr3Xeq0Z4sSo6d6zIGIGCqTvWriVrWPS
MYanJDr6/CgiqnQK0sg0tbe3NR4oDNEN9KhC09GT09mSG+bBQqIOv2dYKBjcBEOTLG4KZmEWONAO
hmhazED3VRsEBGTonWANvO6xlXjPKM/Uz0PpYWFjXb6FWeamleOQW9kwpvp4GAq9ROuEuwwd1z3F
1ijMcU1Z7u0Ltmrpoh+wr4dC+cytKGZ5kj7v4XYw1gn1TXTzAJIs3Kx2FB/zcviiC+sZ2VB1GC5+
7Py8g2jUn7P1Tq85+kBzzMZqaQ7KItrb23UKBJy5dfow1YBhwhd9SYdpN5MwyIhqiyqzDcfB/Any
z3LrHCC029DziPFQuDqLwvx6yL5ssnVNK2rZKngt91h2DV82NSZKEnrp6I4DImgrooamZFTRFMX5
MSvOLpKR7ZruS53GDOQSsTCm9Evc3R+uT3oq20GzOmzVfEelMnqxKZhBQlFEGwYR0VEsmEMxU4Hh
9mckLKieCYL3rd4hW+TJ5uVobPJ42O0A7w20mkXbbUF2UZKS1XeSl68gTm/7HCO2wDK8jPbrlEer
KF9hSVg/uOG9VUbFlxBWaeHbJrkhtCrjNjFhDH/L9IZI7cIiLcOibMq7iN+rXvp/1cNNq1XQAxwf
2hoCXw/hU2CI1v4dTuHzgqA9Wrt/8TxxmW2/E1x+4JP8hTRWezckyMtoewuriYmyIPu02CQwmN1K
d1fSh2tSfEV9koT5oQyBrEPGY94DsqSGwJwFH66F5/2mjFbbFCpA5E21dCJPyVd4CMPUsc4LOI5F
bTxYRY2F8HZfvj7PHoInew6/HrzpbHlPhPp/8PsnbxzscfYHf8qWT/cBucryTIzzaJsWcZpcE+H2
dI1U0Dw9/hDsuNz8hVGPgn0UI/sOXLKkmnfNDRHYlGAMO3y7KDGw8QAMNQ29B7PhSuDCNQBT8Gwp
FWgxDNSC0QEGzYQzeJ8z0SimE4xawTzNavrw/H8YRGpgFCK4tbcBaDk0Bz5wfD0KVdB0i1Z7Wq6L
Fy5ZavfBx0fycRaQdZUAE7oihgG0R5ncxqOOwVxVEaiRUwgxLb1D2/E6vkNARKMkgduCQENx67bF
7tfCHU+bTWwsIcssHvmuZrvLFvZ8vmQX5YKiyeGRLFltYNaHaJ+QtzH+UeQGj0GET5X6IvBZ34qU
zLKX/F2Wfvx1vinTCkOMG/iD1MldmMBmd2T6ZD+4ow3S9Ak9tkeB9jyWIDjvKAdZmZgNjEZAW4a8
F+zggmog6oltAOY5XeE0ecE/2ai4TeRFA02EMHTtwH6XtmN7ZNlEmNnCnnqXgbRuv4XhfHZ/57nA
oqN8IFsT/Ugb5bQF3m/BZd4xzYlxpE3hME/3M7Z0L1KnaXKbth3X8qNKoOJRHQeh+gb6utZRu3SH
obLHFE4Lhv43VR0sAz5kXO6FiTGtlaGm1DC/kB1oqKIj3JVQcxnVjYm1aMEI/wBQSwMEFAACAAgA
FIsuSvmA61sOQwAAzhYBADQAHABodHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVzb3VyY2UtaGFz
aC1jcmFzaC1sb2cudHh0VVQJAANYz3pYis16WHV4CwABBPUBAAAEFAAAAOxdXXObSLO+PvyKuTiV
kpMgzwfDhyonVQhB1ieO7bKc7L7v1pYKwWBzIgktoCS+eX/76RkkGSSUmKxvUpYvbJlhup/umX6m
50NwlWeRKIoBav6MVvPltVjEIr/JhUB/Go7D8F/aVVje7d4KP6efstlqLorTT5fnHz/4py9Pm/W1
s1gsyjRJRT44rEX7JPIizRa7CrDmZbFAN/dL0Sz6wzZ100C9i7BMv4gTQJeDGnS1Y9LVfXmXLcAG
2zCtv7RrUSyzRZFOZw1xByz+WIgcnY12MXFMNG0UluL0Jp3vwKKYWDomOjEQsQbEHBDcp4QgHdsY
a5dj1GbnhzBCUPQHgpsJ6ZuoR/g7Qgk9AcDLLC/3ahGiuYtscT/PVgX6+LGGcThyiTfEro4thnWD
AZzA9rE+8k038LDBXe5qmiaRI/dr+FmgcbqIBBpmWTlAHFBiVIgoW8SFpo3vi1LM0dmiFLd5Wt5L
95YiKhUUsQjBjbGmeXlY3IkY3dzlIoy3SDD4NS2WYRndob9XYgWeirJ5P1wuZ6I/D9OFXqoKmuZ/
i8RSCm22s/+HNxm6o4nref54jHrjs3dj/92nk9r9snNsG/u9f30xObv45J6fQaXR6FrWCkuEv+HG
D8M1CRdgUEOjd3l9NfYnF5c3Z8G/NO3TB3QtbuHOAl2IMAdhDA80XX+LNFljMrnx/7jZC4q1JoK5
oPKDXrtgyQ/oT4QYxe//Qrn+7TT/+g2NP/yPd/l7SzxpmgsuS6NQ4R0vRQTBFEGjJFk+VxcHmnft
jn87u3iHbvzxzQDdleXytBRFWZyCu6MwuhOnyuO5KLJVHgn9Dpqsf1fOZ5r2bpZNwxm6yUPZDVZJ
Ap2+l4sv0OUEiu7ybJHNslvQP9t0jJOBZlh9h1CDMGmtF1yI8muWf97zw39VvreSJHFM2wzj2EYX
44/X5162WFQdCSXpIlX952ta3iGR51mOdOgqEPY6gbpKF7Mc0+qgywqn8ZShG+8KSVXQbFZiR9D9
sUEjjMbjc/RbCKbcyQgYXV74SovBbcfppCU0ubOvhYWREWPZ3aGvl6KPEggLSl9L6wbAaZUuh3ex
yGZ2wthBXdBeQH+k31BhcsPuZI7j0OlBFUUZ5iUEvBRtUYvxJ/AUx8za8xRhDU9Z1LbMJ/DUWleb
pyxmdDRnGtnJwe6lPJUublU/W4jbrExVoK51cYM9ieuUrh3X2U3XMdN0nsR1Sleb62xMHfIEnazu
unUns6HrOU8iWjX8VrTdx9zClvXPG4EKgmO62wjOQxsoVYSzf94GG1V7bSBV2JSwf+6ojYqao5jh
GKRTZJgxNwXyYGRXERCLJFzNSvBQ9jkVIDrLw1tRcf2yStZOp6tFPBMo3SaKP60ZmyiQ6qTmFNKD
4LebmytPqR6vNRdQBk0lg/HnlDCHN5RcjL+nRKuyIsiG1mnSYPDItAjyp1rJ72LqZbloQ6byCkuE
Zgjmr+8bDGpJgycTgN+yohwMClHuFvR+vwkGg2uRXJX5m4PV3754cYJeIchN2wT3o+VywGzzRCMd
UTsJhq57UO27PFstB4M4LcKiyCKgUTHKIsiPFuV5FkLC3ttWbV5XaKnFUW9VpjPIXQeWyU802tWp
RszEj5z6n7bLPQnAMHf0s076bQIEiGN0wEbQvOMMpZM6BxrpbsABgrEL4X1anovbMLpvgxBODRIy
Q0Jo6oJJC+hvu6xQQOaGes0i0G/DlIZ3bQLKrASpThqsFipnfPMlS2P00PTjKE+Xpf9NRCtlcQYT
lm/li5O3g4EXzmZynvJ7DvrEdzr4uqctwVHnKUx7FjAZDIvPVXS4ZTZPo3GZy5iHHLgoX7yG2C/X
vw72wcHgvycYUPxnB4ZykclQb2MR+MYiJ5rZsXtQ4KSw1TfftX0DszK3MvP7vhwM5F0vKovoIYsM
inpAJLKj2Sea1TDmf8MvYSX7waa6MWbEeYxJZUy8ZsiNUUWQZ/MPQI4VmypllEJwP1xTFATxcqLZ
XfWaPFx3sBKmxXmQ5iLuTSZecL1anGfZUk6W85evkfTsS6makbpm6PL9+XxACOh2GrqlxiCD0a2a
u+0OJ3Y05VGYGEjp+nhxfnl5NTkbTzz3/Bwmc5PLjzeTm8uJO7k5++Bfq8tD13s/CT5eeDdnlxeT
iXQD1gjuqtSyGaoZOMqUiSpsLa4R0lUejcMWeYWE59gaoR3lQbpG6vLgj8RmG0STeU4nWVQwG9Ul
bWfQEpypEWNv/ac9AVhP3xk1TAPlq8UNzK97RQkD+mRCBoNpWKTRpFAU8Sa6C/PX6KFQ/j8p8zAt
C1X2tl4IgZQBEWV5VYTerhlGdXIGGXCviU92NopNAwZb3hE7cYiD4kaNnmIwqblS+1L1cOow2qaX
MIpBr9lRL8MR2akh46ddNzHV2LGv22DAKgRoZZZO4/tZ3Idf6fR7CZs9dUzKIf1SKa2UvU3IyEBl
WCCgUKtck88iX4hZU2ZdlI1jwgWFfinTxL/V/bkoV7nqm1hlPg/SllUW1xBXzyTZ1IL5v402N06+
/l19kMKozVSm0kkczGFJZWdDFttaTL+bekqfrgv1ebiALDb/CQdBto8+qynK5O+saDhmI72l1RqW
EMaJydFkc/9kfptP0sWX7LOQHZOYG9c8XqARR/GOwK2DON06iD27LmE8O4v5s7PY/BmLIfEHiwsx
/wpj1qRIbxfhrM3e6PvBZ5vEMWOcoEW4yIqZEEspxHE2ZkavXvVJO43XpXAbM6wWJjZjZnmXFusY
hkmtFDxJsrxXH3HlwjVkkqtc5QZvZhmk7vJXfehVZW/I7LWcr6x/Zs0RGPIh1jGhtKkQUzSdq4F9
MPhNhDCxKKIQaPFW1DCuFinQ8ARu+vxme/e4BEzRhxVk3W9fNHOI7hZJW9SQyiFXnkzmUuoEMhUx
II61OxV8jGExNXYNA1dFq1zuvo03JqrZjb2rkZHdyd8jNBoc5gRbjW5xv4jkTORNA0SVmqPeDrKX
J2oaVHWTdQKosDkWzJA3omC2QijfnXs9BpoBU/OngOYvyvz+KoNkqPdPxK0Tt87zLtswp3E1ual1
pMk6vCbLPPt2/6YWeisQu55lgt5/hvj1P3LgS+jeve2szIH59FzMs/x+QE1uVRPBbtTsOPEDNU+z
+F5RKVHTuo6SSPggaZt9mraarHUkeE7QrqAHercG9SxuZ3OtWofozP8wKbUomocyVypu5cRl2Ub+
jxHEpmwrSGZbfGeEe4QMbjKOYCgKl3fQgycxzLvyTLaMbStq7pQK2glntVSwJhYuZYVMMQ2siLGT
WBAc1sQ+CGNccV5HYQZF+p+X4weB2fT/oEXR5Fsuko30vyRWe4e32taxmyvYkH9MKfptfDO+ymZp
dC8ZfHkv/5dbynKhRa5iC7UAUl/xghhTf9WaA95hmceoNYykoTYt3i+yrwt5SS2YrhYyzxCxmhC+
fK2GtppO4uys7PxQp82mRhJ9V6c0EiJmz0IZqU5nbdSZIumyqBwLGBPT8n6jt2i5erbwkwRaNchy
gLAHBfoO213a+bGXk4TGSG5IyKMaWZTNBoMZkABQgjwuUNxkgC9Kd5BUK7aU7a78PEJdaCU76uSA
oT7KYyN5Ekaioi3JRT2wUa22xmDp+jCOqFlssN3Foh9DAH7EkKtO/n1BnBbyoxYASr+EpZiMpeLV
TFzm6W2qiv2r94QqzrwWkIoV5dV7itswTqYyS1tPQydU5jd7a1GPgEoTUkF9346Vy30x/1tayM2l
jUvVwOh/JKzCsJSJgsiDL1eEgIzNXX4DogwYrta2ujAPTQw8rdFYNEvlTD6SI+9KhoWtlpw6kVmM
mVMTuQPSsAy1mtTJjSaxIgT53AzyuaGUt12k3jSQ0qIyg3Xnqi3eUkOtIXVZRCRmFBvIC9w8D+/l
xsH9ZmFaJboasbtagC3ebsESQgYCtYpIZmnE6UqzCfjzg9yehArfRD5WB36agqlNNdqVWXjM7DbB
k43krYctkN5xCdkyLEF+uA4+vvx47fl4cuVfB5fXH5oL4cTSaOeF5oREzYXryqoCq1zF1GjX5WZm
sGR/6dqhAM544pVryru1oIVDM0av/tzJEXsV95ygyeZ0mLwgVQ5UhkGgNRsRugt7F7oQlAtT7mpc
jKskdVKNAFUzQTqrUeupMnNqP1lmTp2nzcztZ7fU5Dw7iwl+fiY/v50TQp+fyc9vM4Q8v90Q8vy2
Q4j5/Ey2np/Jzy/5Is8v+6LPL/uiz/Dcijy4Uh3DXJWZ/MpTdPNwRLqTI3A8NcERS7midjeJvsjd
7Z/0QmjRmhfk96Ima2mWae2cM/7xHpxlhDAnVkZWtsH8PE7Vl7vUocT4d5BdnUVVW8MvXqM4W01n
Qq0TEQf1qmpy2bCCVDycye66f81jhmkF5irMP4PM80wuTcHnLaxwNrs/my9nzUU2VWccZUsRn4fz
aRy+mWbZTJ5G3Z6a3b9lc2C1eYs8Qfh7Wt6N7hfhPI08uUomvx5YPxxnEox6DxCVxSY2Om9sm2ES
WyZSWJXyrZlDuXM9kA37cVGmszeq9BygvO1tP3ZATHgT8N3A/olNcSYEiRtbtcl6OXLz+U1buMhd
CIiyB+DySPDmszR0e+xBHVtuP6L4BILfbrZ05Q449INcCu6dVEuetjy83hSvmpVi1n2L3mL2piPv
7bRvVysJsFlv48BwNiCWQbsfXrbYNFofIv5aJjeHtfHnuElN2ZHCjxR+pPAjhR8p/FelcONI4UcK
P1L4kcKPFP6rUjg/UviRwo8UfqTwI4X/qhRuHin8SOFHCj9S+JHCf1UKt44UfqTwI4UfKfxI4b8q
hdtHCj9S+JHCjxR+pPBflcKdI4UfKfxI4UcKP1L4L0rhDDcefeMFY9lLyv76cQ8/cUweW9VTz2by
WStbBu/ypW2HGLx6FGoF5kP1JEVF4LT72fiDzcKerlkM9LTNglG0fiGMesj7H7a5fjMMko82E6hn
Gvo0LU8GGkJ5+G2w934WDA2XTw8VRIcK4noBIdRJaISxVBKnB6oU2wJpG3fiOAodpX25X2CqGi0F
XCpBud2iRAZ87jRwYSqEEUlZBLcBlgWkIYpybCeES0sIPWAJYU0lzGY0VgXGISV8v4ayBAipXrJ9
sjzKk9mOdjAGy0cu5C2wmJSlna/fHONdfazesmNqvnrDi3xzz/q9O9uahnYjnzR1sZpPNy+LIoam
acN0Eeb36GwOoVQMtM07dr5tX6+DdNS4aELbJOjVziNqe/gEveHm0LNM19a5ZwU6Y0Oq267NdNdw
PYsQy3fx6O2PX2pVV5fgFgxwMUks9AqiaP1obfm84PFdOl+HlkKDWcAD2/J0m/u2ztzA0IcBfOKO
7wZkNBpSHrShOSR1B5fTgssSbbhWS/meqTo0w/QDnzFDH2Hf0Jlhmbprj1zd56ORZ3NOLTx8BLS6
4Do6ExN7D50ZEydJ2HcGyR5kYq+gEvzpk77xCoB6GNvYsbhObcZ05o8M3YVeoRuegX3uBj7FXhvQ
puR+kodzIb8hdbp+2VZx6u7cU8dvMTbdw2+ZMF438VfP12/DbfBgZI+Gvm4MZdszauoOZZY+Mmzb
sgg3XRe34a4ktuOtyho4BTf2cDpU4H2chxw89J3ACvyh7hmE68wzTH3ojajOfd93wd++z+kBoIc9
uy6sQw1DJ96DGkY2TZLpwVcWtOC1htzi4E+dugbWmeNAz3VNR/cl+XLu+qOAHXZsJfd77q3u0CqE
chgweUxroba9aOLQgBFAPqoa9ZiJ+5QCPNuGWGKBp3seBgYinqe7nmfoFndtzD3fwEQy0KrIZSyd
yto1XTZlDtvVJS9ySXk7ucpoJcqRmK5gWnB7Kx/k1iN9WZNIL3kOo8TEoNzxAIbFdLAh0B2bMNu3
qeMNpZeqV8CdnqfTHDj49KrKrYKNd4rTNj3t3mu7s2EZN6N9y0yuCEumKCkk/F/6dMNShgFmBJi7
2OUuxI7r6Mw0bd0OKNYDannDkUtN6L01b+5Kaeg3Tdyi33ISUemXb/nJRSHt2WCgtsRgs8CgZKQT
wkdAldzSXcd1dTL0hxxb2GWKKmsY9iQ1cVhhCw6bKT/UW3g+zxYwr7kDX6h2pX3F3EPbtJhPwBuO
pTMgQN0eMdnQluvxkRHYw+BxLbuRf6g9N+VN9Mm0BX0Sb1px8+TgbJGkt+tn2W7cCTOrvoH7hIEZ
bOQPrVHg6KaNYQCywKChByM1JtDINg0CHAQ1r1ZiT7+roIHTwmQfpx2FO15WWcfZ5YMLIJT7rAoj
w5T+dg1mjjjAMw0fBiDmEt0xMNNHnsl8C8YmavN9f9ccvaei7uV1YQO6Exr70EPD3qGA4QyiLcuq
/mH0Taig/iYy/g1sUUnfECkj6LTUA9RD4ugOY45nYdvCnHwf9eVW/gHkDzc00Iect6DnsUIPrfRB
PViObEPMkp3B9fAwGNq65QOTMzlsugTGfCtgjmEGnsG50QyxhpSmfsts0R/tek8+5018coOHdud9
3GcUKlYf5NBIYKRm3Nc9YrrgRBhqHMdzdG/kYt/2qQuJ0mNCba2r3Y/rwqYNkbNvw5RZO5239pKb
sci/pP/P27Vsx3Ej2b2/opfaoIz3Y4mnRnPksUa0Pb3rU4+kXacpUoek3PZ8/VxkPZGJKnK6eXpD
UpUpIAIIRNwbEZm1Hp4W/qcbmLAx+M9Yu0V1os4Ylx3ThBoLKBJ9JIHlSIq2IQbGPQ/6qi305unq
cv5/frq5oO9PN42uK9kJeJvNZoJgnvavtPzLOzOeTgWIZhY16kLDzLNSOI0AiQi140YFEfAjsAB9
DVZCXNXw8MLMvsiHq+dyC7qen1Ih1PJg51+G9RLzHOxcO71QVdSiYetAsaoyASFLAENJhWjnlYg5
OuMnEa0Z6Lt2tlVHBGDU/tLdnnIb7/RuERXjGkIl72VJieLAWawfRXQLWQMt6BAcGAwr1Lxq/U7p
k+srebqvVWhDOwpt1hO7//HrcJ+2j8P6+QHE8d34vbrVYbtq7YJ5bXxSoICRE6EowINOhliE8CID
UK67bu3N6H01mlsmGmw6GlTC2mhw89tyfPUuUA5HPNw57/2fdT9S4paxSHSOAfZcEONzDUEuFKeV
CdLb1zie/TQX9mJ3sRFf0s4GSCoPRj1+2ezBpE21Z6ek9T47wPEAOKK4Ii5H+G/uDbgE4LA03Th+
NtREBNUTwRxEiO//WjPkC38Qw8EJ1CBSFI/BYeMDcCLYthPVzWliWVBWaKMQ/65ufEWw7x+XX3/b
ri/4t8/7Vyg+fT8XpFWCdZRQYjMJQvt3OuY/nof7p/FcnhB8LMlZq3EcE3QSjmUSaEYYAjpy0hsV
xfUIPh28r9L0rkYNtew4mOXgJtb8w7DZLn96eLhbPfxxVMEItmBqwWndGy18EgUGEvAbDgbMzXrn
iIXzF6JwGcv1Q3k+RV+R8zsaJVZszjvw4e3RoLDtv/wQx5fhHmyKMTd6a6VpMhQ+2lAHNkeBs50G
AoDErkQAWK/Ti87k/ce+xLvbt3trmknRKsF1Rwk53YnDS0LP7KiIWFNfOBGuYisGN2K9zYTGJD0r
WVhhXuNL9kNftaJG5PVymIu83pgDU/jj6/roSbRaKLqobEvJxASv8imZYfsIRdaB4wijDOfFJWb7
vOA4XCPEhpq5EBtBj0I83T2fwCjbASbDY2LRS8JKAHjWhhOfqk+zDk5OMo3fbYw+H6adX3RQwkZP
6fz7+g3o5ywvSIeDIXDcA0C8ACqACEDE1aHq7Lxjkl41PIzY3ypcaCQcpJ1LeOv4xLLWsM9vW+D1
RQ218LCLalw1m6AFkAJYuqnZDsRZHBCAG2WkKZ4F7l+bZvj5w+XEws8fvmvFEz2ZV50kyRGwlptc
v7jqCbvMuVhU0FBPyOHvuu1FBeM5wkYE2xfFOxB9kJKkANNwbpxx/sUA8mqAfJDnwo37qxO11z21
bw/GPBawbuJ5jD44Mi6sS3BXJNgMR5aDJN77QkrIKVMWU47+7RxZI8S5CpLyefID+GLqx47T7Hia
pRwID8rsvBrjbCHkiPwdlQZ2htiIaIVzIuDdqr8uqRTKAzCfS6+maOM0V1jaeL1VR3bUYVIfdqQ8
3D9/Wj4+DY/HDVF2hHgcINX5LInEEcLJYTWNY2B7qaQIjKdtKf8+UtYAm6nQ37XKmY7Gyh4R4pev
vx05T3VkXobCowa1qP5c4Dy5BDiuGZh0xq7lWCbZs+MI7cS6s9RS3U7O/H98OAIRuKrxjFtqRlsR
GmsdJcxEw/KFxEFwkWZSmA2CJZaVvp7JicvH1SUcdXbbUYT+ncfLjXqyk52sH05d2ihCNSNZT4Kq
4MoWnZOmnCjQXJxtDr9lKvqNAuGeR2ZF+qf12l1rRNWisxNgJZ3sxPDLp/MUS90RPsY4Nu6ICVwD
REHeHCA5nBABtUn44UKkJTFq+esTLJ+uZlg++VYJZXtKHH1pzeFu74bHv53qZrqK7Fm1WCCpoioi
tHA9VlNHTADglQq+J6Y+35kO2Iqz7ImzHCbb/+FHv14Pd7v+F6wnVTvqu/ujsgbFQjFckmJregHs
Hf5QA7pQGrWiSuPIvGZFm4kuJQDPbmmUsZ0UHD4c5uyn3BxSEXKEPVZyj2irCRgBDKJwXtlkIVlZ
7RnoDyv8JdJTbi5i1NJAH+lWc4Qq3ZodfNk+1fy0vN/U03woTIBv7vNO3Gu4DgerNbZSTqqIBYIg
SucRqLkS7LUkdjPyuWiK3s4JpGKMjakd3Fxf5n/3+8IdbXNMVWOHg4qWMKdo9XJgWToxQgOHaQu4
uTLBre0wjQSgq3MJ1DAtU3xe/iNisR+Xi9W3+81dLTEumKted1fAYdI5DhSNOAx71BnHxStGHCA0
5zQzrNJ8Q8+B1PfTGb4fv00D2Oj7H5brH29O1xvxzWqeiFGWHYH/+XcTAhHuEKAtUYB+gJdShTAh
HYKVj0DdUhuwvQJuMslDnw3zXTsT60zPj6a1evqyoIfpxUg6cnUfMoJlBGwe8DMJOgeikio+RMMd
1+3cZ2O0c3PTmVssO+j4rIZwYoxZyQhsAtKjELcFxQK4BB9ipeEpeCcMyy/i4BeqB80trfRi1ZHe
TlMn8e7h2yY9rJ8OkoPH7ipLqiQHTJUIdYgscIGGhICgorTjGdzNFEFfxUkOM1zQ4HC5kR68aS79
ShyzwuXh6e5vm12359H69ILLUXCXguUJ4FUGYFkFSIhTS2KmnBZXex8mqeH5aI0wazkvI6i14gcn
svdC9w/P29s/TwCVjkW6moaUNqQsJKHFALvBKhBHSiFRGZuFc9bEeM29nQ/cCrbsnI71Uh8E+3b/
j+395ng81KLuK1BOkDYrglNYE7sO0gQlSYRBlhAyqIDoSnM+WiPGhs7jlNpoOTG1naXE84JjNTo2
IjD8Gqv+VmfMjyOra6ePdEBfXiEKIwTQHHGS4/UE+nyOC1nb+Y2tTnoeODStbrupCfyy3QwP11N2
0USuGXY7aFWbl+C0eTaEaR99qj6gyKsqnU/R1+X8jnMlNOtkbTRjetIq8nF5/6u/X979+bQd3cCu
MjT+hgLMJtA10HlfK0PC1qhjpCcUNpSkAncz6s0Z1rlIF8jy2R2t0qyn9FLeDre97+R9V8FxBSL1
pHJrhEhAS7UMRkQMEWySR5JTxKHRWYLxXK2mz0+H5myOjrQYpi1Q//1t+fj8v7vuIrZDo7ImVMZa
TMzeaKaJFrV9IwA2h9qdJ40ORSdRlA1Xt+A0eH8xT9cb0cWt6Ih+OwWgsXayfh5qC9vwuO9lO5WT
DKv5SKos8IsyBCQ2YWUtwrLDDyqZKToIzVJ4VTTpzHUhsHTunGg3jzHauuXkdLwfHg5mezzhTLGF
dDuTSdYaxRAcjYBi1a87lgA/ivYIoMXp4F6j2Nk0FxKOpxvO1TBuNfdU9cMDQvt2fzR17saiWGDZ
SUOiMWqXSYBpM9hWVhmmZQvNF/x/x7zNqoOSzEYcS13b9bea8zzVmRTWri5ftWvrXGCgKcLWHrQE
r2IjfhRERZZU4iqaaVtSM1ojyUa5jiRreTEnVu39fz76/zrLiFEQ6ur0RBAqKgQiU2JNt4jK/yIj
UvDiJUspppexWx37MmyrV1v516onvzqsZE0d7tost/e//vy8vTsBn50p+kSTj9aDFSBwCmoMcQ7M
1fkc4RZBH/ykw+rCkOdiWbqapyks3dhJp1Lz5MA7waUdnSrbpyhYjMKWEkgOBqBM0kR8rN2HRlnq
mfKR+mue9Xz4VryN64nnDuL9ffjzy6+PTSeaRdSNQOcEELf6ogx3KhLYsbMRbjbokmlXlvOxGiGY
m/t4y9b8IMR/fsrvT8WRkWRa7oupBfUgci0qeWybBDyMQnpua9Imln++H6pJRJ5mb4Vei57Qq4O9
vS9/rbXtYXOid6OZYRdFAKAltOZdwbAoXHmRhIVInSjWGPNGOfCJBI30rtMGWT+8Urv4yzvDLchN
DUrjH5WkYeNz7dPNsRaFueRAN+AOTgUHuoqIFey/WKw4v6NVYU07KtSy8GrcgM8fPs3L8zq6rCMw
iealdqTBeHyGD1daeqEYDcz4tyzPnwnRCj8se8JvJt72t+Huaw2bYlGXXdZUtlDJS3AiQsPYWeJZ
TdlHIqmjKqYii5Zvkj/G1BdSx7jSKLPsZOPx4VSZp6/DsP5t8TisH36937bkoja+7fLk4+9aU8nK
Ozg3UmTNgvDaUhEyoklIta8/RqnyW+h5M0r1uSdUw3imt01WoOPBlrWruEGph+/RDd9ub4dHbGxN
mkoxFigAH1R0JCVVMWotUBjJSM4lqiwo0HN+DQ5qZ+ir0t7T6qFuO3ro5bxt8WaXNDzWizWrfL3G
KsWNBmynu8SRALADQ2aBSJ6pdz7xnO0r0+n7SS4m1PfXWxUs66jgppmb98P9sCOuy7v6XeSIBrUy
MOoidoDARsuZxEmT3NXmYKGJi7mQmoYD27cqvhabzqa6hFFnNzaqrTrpebvW7BAnf/9h+3REq0qL
seYKisN4MYkUL7AdpebiA6ioTYg4gbMc4wsE9JBfH148S78PawzQv62Vr9Fr02nWxYfHat7T1+39
5tuXr8dI6sy4QdQBgxtbCC3wgqJIsCKm4SJMKuCdisdoW8TWjnQuhFOr+eI6o6f4d/n7eQPjzmAY
jucCNlOtX7KQEgXgVarW+MbSR600Gka1tArn/AWy6X95qX3x/I5GBZCyuQp2Ocx6+h+HsU/pw4+I
6XTXZy6Nq0uqTHI8lkyyYTVdgb88zivAikxYjfodzeXF+Lgf/HI839/QCL/czF2oW/FpZXX5bbN9
GFXw9a/qf/YK1N8VkniTZIGpU81DpcqMII5EEsGgtUyUIna+qME49mX5x8uN9CvRk15OHecsiuwy
FnzBF2asSPIdSgke0jtKwOkEYjyLxJpS0xYs4ziXQl/X8t2d7pXxbZrOcCvTUfFW6TEz1FqX/zlC
KYbQsHOou7/Gp1hAA130RMcEykoV8GLknFBurefKxN2JfVWnDia5skM/x0b4MVkxE/522gGVtk9/
94+r7fPj8YDv9mXX2gmKzME0lKiNbBywxBvKSEk5qaCUoC9U7iej96Wf3HSuxRKMf6bF8nbF5zXv
3fOACzc+QULlQo4KCMlYgYNMyeJw4zAQG7UlUbvAOVVZsvRSLvLCY4Fxf60R93YjOuJuOv2nuweM
djVYPVpK0o4HWDupbU9wRK42H/NCeAjegKWXZOQrGwYvP120vzgRem7mK7rv/G2h3LB+HjZjBeaI
IM6efZNCBx4EeGltoEOEI4HWZlNamKj9dJTy1yK62USXgd3s1nPlVoryuXL4cIrvTiF/F9Lr80is
/r/9P+u/xkK5ZVwlALzCKpflGn4KYa+UmAJmisnofwe22F1rNDWdcF4/7DyAM8muI6TYGk/smBNK
iIjYPyZ5bVgrICElWZJ9TACHiOhWvk32vnNjo4/rIPOV0/zAdusjnMf00eEx0MKoCLwEkoRFHLEx
EOe4J5npkGKg1NN+seo0WitEB2Cs1tR1AEZaPi/HknY90ZKNtTPPnVfSMaJZbQI2iM+WA75ZmTON
td4Y5YuhuQ585dlPXG1E3uiOxW827nZY7TtswEcf//z6/HBcPTG2AdczHFSkCp6GQGxaH7r0sO8A
geEpYfteRHbhsYLJqK1Imzn3Xw3sttPr+nSwmV0ip2zvho/bJ7h2Dpc+kscR47PEfTImEFPRMCIT
TiR3gJ+JesE9DimLb9cz2spy+bGO0z2N+rd2HopXt/XZYrF/tOLD/fPweLusshz2hJlFzb5LI6SQ
mRG4mn2O1lNpSELwolz6rF94HOH/43DGFOFrek1nArf6Ot3Rd2yYHfUFnN/BzWM+ep/zBWxNoQgi
HQWQNTjGjttabmZZ6KzrSxL+RSbRpKpaOc5VWFM7b2NZ09UxQfvp/tdJfpZ7x0wFGLIeGuETAh+T
jNQOwew8S0aoN8rPHidvRGZinuDEh8cHQNN2+ev9w9Pzdv3D8PRUX/oxefaCjo85cymCDpKAJ8Pe
lMIexPoguPLw/hxx3E3aYa6P24q4mYeoNedTeORzZWljLZDu6hTScSM5KbY+Jmd1IF4qCn4fuWUg
nMXLtzvsPl+IV7nRhYueLkpOyhxfxvdxHdvFzKHHQxlpQYyrTuA6QkYAicBg+kpzJhg32lxtYTsf
t5Wrk1pY89WxAeunD6VMTFeAPzqXfH1dC2A+GAmxRWN9hZEF4TMKKt/IdE+zt0KvWE9oNkvOrx+W
Y6fbmEcc3/sAj2iNR8DnomZEVCW/DgbiBLTjIirDXrANjHkpvOJSK+egO3IOZtq5OKy34JTHItK4
yAD3HuSDpFrLFgUYP9iYCQACD9JEkXW42rN4PmYjlOm006zNrJ2mOQQ/3lwrcnATGQ8gIMbWlI5N
iYwNUimqALsE7E367Q7cSZYLT33e9PDh2smOv3P1AK7O92Jz//S0ObUSq1plHFuHKLPOOQvwUPv+
mI4E4EeBfdl6NrVhIl3bj7NxW7F658+paV7kpxibp8VUzoGDV7jaGiDqi3ecCZlwHoPNjAVAr9dw
JwzbX0RcaMXsVGnXbsMm7mv5dFaiFQeUKFmpQhXCQk1qFAb78OAM3jNlTE7ONg9Tz9buOGor0mYO
XNdLNnRQ4viKw10/GLZqwWrKAihCLYQdn3oUOpaxfdKkmo/XJHAtiNIp6QyRg00vmu/H/RSXkffh
jkaJZeeBwfVSHBtQ33+cVEcNTQq0ShAqfQ0EYM22MHgxXSJXzipu3RtVRz92Fn0peosujmHs83Kz
Xd6vh0nIKFkxSxOvL2cZSx4RUjtKYoFzCGPtXrxRyGglmAivesJP3XHDK44Z9R3kDAgZvsSRwIPu
gi/a4Hzt57JC6/J/xF1bj9vGkn6fX7GP+0Jv3y+PfU2CtQGfDBKctwVHomwh47HPXLJxfv1WNSWK
TbY0yu4gCwSxTNLNKpJd9/oKfPp4GQ5lufSCwIaR0PdLx+fDh3Bbkp5YTyvHUD+4jdknoEzKjC1+
hIIjjtqNeJp1yKA01DUSAdc+07kLZ2pqNw2ZsBOk4ezmCtOgBN3gY0WyaaQZA1g2p4DxA9YZbljH
IshTLTMolNfTza9Z8fU1FQ9Yw7/kYcvUskirUlBj3vRQSke5Kr0y449SsOXhA7ElgqswNA3CjmYB
fnE01DkV1SstoX9JGZ5oudQXtAxVA4dDg22zjOGFfBHDAUS6ldh2K8G5xMxZ7MCpAd8zmSCVS8m+
kkm4AsNhzmu+4vrFRXOuB363TsMPfEcXH2yBxrr9/uXu6z2W5BWwGVqQZhh3ggXJO2/BVeMGeLUp
sU4EsCmxNUz6q9IO8zucCXLPrqh52LEWD/1Chj2Mnd7DhCpw1MpGokvBsVBCKWJlDLpTkltMZTEw
J1ICnwI0iswqkqqNYl033rzHgtp1l8Ag2K4hIkqVMUo1U76vMSAGG4YJR30HZg1aweDKeRUTqBFh
hRRMCft63KasfF4ylNMV1aKRqxqEUIsS32/3/fPu6+OEJanFMcPPrLNEptwprUEYB847g2ajCtwZ
E4QHw+fSk61XrmlrlJIMclUXM2YBnw9l3SVsMSsjL+Y7PSB8aZKs9AHePdi03CqQwCqEjjiKcA+O
8FcMivniZ1zh2RU3Nd1Di5klMs63x/3DLIz27iP+vQijsbKiVP0kA4qPhA5sOETKRKAyY1wXaJYE
RJMN0b1FNczHmpY6uwCnav4aSTVwCSeD4wsYW08T9hCK1CQstR5xyyxiGriM1bNcFdTHYE3imSx6
w+Zr3NT3aey90v95V3fizsuPWUHWkqTkWLXyggYw0jBCJQLoMKzDSznq4HikwcY3L8w/UXOuK7fl
3A3KygavPTk+6N/+mAX/V7WjnltLnUVDOsMOwHQNJsQFbFnQZyYF2jbqTqvWxDTaZgYtl9GJu37z
28u3eYUXtkSIQ2tE6crjRCQbQckAeR3XFtx/JS0YdkYGLr0w5KpksF/caf5Ax3M3NamsRX9/tPEP
cn+qozGTo5cyOHOaJTAIsCSNBNKBLaQ7rS3JjHgQ2rH+equ1KiruyDqVggdPwF3P/f1/4QSFp+f+
VPoCSvgdeOwj7EBMyVHKgACHmJBoXTrh4X8JzM/g4eB1+vqHj7+EQ1/w7CmeI2LBxhpZZNiwJQbG
+/7lYfP5UpAlZuuUDeD4KYeNAAp5IeB6kBQpC46a8IawFzU951pk5tdUXG9M4+Vt7BQuuPsTe8tP
nZWmNMck0OjSdIHkhFEk0Tn0xanGlrYQPBeLrs5qlfr+tvEJb3q9Tm5il2q/f8Biw1WhXsbWV03A
aw3gZnMP/qvF3v2gE+I6eSHotYV6023OJjenK2pGGhVtcHCq4R3v/c6fogRMHYFSCHzkwoCfqqgo
uoQg3B4Fo0RlwXRkIS5i8/VqFSHbhirbUbGMGp519DQI2Mgd6dAfha3IHZgZmXcYkOFKOpVeaRm/
7OSF/2g7eDs9rDUDHFzG10rBFea+np72d/v7gmA4htu0Lf36SVEvZEetAoMOURwcPNqC08SZt9Z4
9jowVrX+BXis6roFN2udjv0IC272D79VeoWUN8FKsxfNWoUMJgXPGrF6sT8ncN0FCdIEXHHPuXkL
Q+mnhzMgVHDipiafNnjCDEQVmP1ySnUSTOkSk2gR5gorULHMvnPSFBhnzUE5Jp0uei8N4xru2iSF
Lx7v/ddP+4enqRFtispaz7LM1ncpFrAYnjuvreki80ppD9vtOnVT1n/1Ac+pOFNROrui5nPT4nO4
m3Xd93f76YEfgFksYyl7+HLAYQABjZE87GHvkqEuCC40C2TVdj+tUxHQy3XoaNfr5YP+Cq7807F/
aLSPSvTh0JDEVfLgocCG5ALsI2o1Bo8yEBS0ZxprbPxbfMpVG9N5qMnpkppVvTYAdnds0yoJeRmq
7ykHmhwCSmruwKfBfJ9TXHRYzQCWFJhXXv8VdPDLiOAV1Xd8HZfebXbquCn9e3d7Aq9SrHwgXgRG
DVOdLDgxQUX4/sHwCiArjUqwC5z6myqpT/Td1BysvGdLyKnU4L376MJ/rhgTjHGDMw3AJ3LoIYAm
zWBMgn3uSGBGM8r/JsbmFN7UXPRr1ihRiy116DF5+v7w/Hmoup+xw0S8oyO0shiLtTWNjhBs/0kO
2GUKtryhopMWp2JIyrJ6++bssdL2dk3huhx3uqh6FGByNB4Fm0obNl+/fd+BMX8ymnRBEAdLBKR0
lzm+WgH/816ZTgQlc4R/bzg7U8s0X25BydCghE/wRX+ewE2wqOVQVMWT91hOJwxCmcPn1dlM0OY3
iYgoiHahlrN/NsBNLGm4HnhQLbuODmC/n/f/9u/2gDdMCMZUaNI+SeY7q7F5DUw48JyC62hKzEUm
VDRvElM5wg3/+NNlOOIf5/CClpYqsQV/dHs3Of233xAdrSmpVJbgUhPsusWMpAH7GDwW0XnCZRDg
UHkf/6YNvaSyZnFtkMDB7fT9HJGJaAP1yBnUECC0GHazcFqKCSX88sQIzXU0auGML1arKBnWLahw
cJgSf/3LqUCQGvx6rLVgNMMzFjSDpcwcR3hOcFhTIMJ6JWNetAuf1pjfmhGzytxbRvVkrfzx5Z6d
BlIwO0JsRe+iQhUUM6IssURAeTLaZSlVzOAyu1LpMUcHna1TEUDXFirYQpYf48G/x9uPy64iCX6j
At8cbk/QPAW/1lPE6k6ZONjShPm/S2WcyLupGViLB8bVtlEHUrySNv6IJsFFgTZYNliEB+6RE4x0
4BEl0D4sME6u64d5pRumop2ve9nx4KTHf/hpWbQUE1ZO4YcoM/ryIFltlLzLTFmvmXPqFdjp6zPQ
080XJK/1MxPcLhtghv5x87l0J9B34oCUMqKuZSqtMzgbACF+uMoUnB2TuoTw+SZY2E/8DYtYj4Sc
k8mH0zc1Py0m9bL/4ufhy9fn4df98N+niNexU6xoQIZWhrCdwU4rDDV3XvjcUdi7gnDLJL+qvGV9
n3Ovb3ldzVW/thqZ3IpFmmIct/XHM0IhjdwIe7CjXPTJcCm7KDKCYlAFwiiILipBo6IypCsKu3Ht
85sEz97UBDb2iFphuP447L9s+/sa11hGriQ3tDNeJqyXhldhYGvnAFs9gkPo41XdtofFz7VJl5MV
0cqs1QwzZNl2/8tP80DTKJcEH8GOnfNeMiAWrBcQSwjH7ImkXVJK+ghasYmItKZ9fo82A/MrKi56
vV1z0ffm6D3h1tn/PpyUFudo/BXLJHANCgLxUrD/3ilMAIE3JXkBYPdaL8cYLRarCNmYuzUhBcHr
AEX8c7592T8PFcQd0QY8uWg65TDEReBReuZdB56OI9554wKvSaiXqSjY6rWRxgYz2eJP/7qHf8gn
7U1VSX3EACrTgt0CZhrYwBorRKQOnVLWamaxuWTxGKqFbuq7DS0SdouU+R1O9Z0KflRpG2BCRJxV
kJXDFiXvOw8ff2eUkTTA2zDpYh53vmRNUs/XJO042W7X2KwIrzGPCvisU/TRd06yiGXv8HpiEl3C
umdOSRxHk1yHxlqwO87DseLpm5rGhim001Oh+w/vf1kUrAWgR+JYG554qfDB1gvckwysKqq8tcG/
VcHaL41HvWsYrmDqy1UC5uHTC2j4D1+3w/1iSps0gRonynPGdL5PHdgSpNMWzDgbKWxYes0TX97j
PPLY/KqbivB1OLscPNufVtL9+A9mh+jYnCYNx8lJmCNHFFeFM0EyjggJwSvPkk7p/9Yrcjq/4MG0
eNgc9+O3/svMnCdlyEaIFBPiBv1zkIMeZwYFcM0ZT7AHZaaLrPhsjerelDaeHw5kPTO3rwfL4OGI
BzH/JkBtE/gvgIDC2COIRQQY1vBNZGWyCJqy9Jcm91V3emV2X3VtzR/btPibni0CKHz6/vzYz0o0
JyBJ4oSlAW15IbE4HgQfOHHgsRmHRQignJdCd7Xcgphtg5jT7KXt/ulbGRB29J1ISb0ViyloYa2R
iEDusE9LR5B3yXXgNoZgQDtk247G1IvW9Axrj4czu6yd2WBz6G9g+JYu0WKKCwOeoS1Nj/ijzLIC
dcB16ij262EROEoHg7EECU53TuB9X7boDotfgC1dWNdAakOUcaZalfuldGx/LHvmI3KMIcKUN02d
8pkKTNRnDDEJlGgRdxVj3gZsNr/6661udQGiaH7ZTc2BbrE1OXPh1w+3H+9fPu0fFhNyjxpGEo6d
k13kDodwcNmZRGKnbJBaKiO8Im80NKFNScWNWk80hIM7fsLqYgvXVOeoGKeYNvLY9akzghkQ+CsN
KsWgMqNvBtXVEopq19gXmrX8G/dr+DFipNiMkUKQ5O/GWgvhXAaZjDgwGPAg2YJ3ml1nEc0ck0NE
hKuRC/AuF7AL8HTFgd40HrreTA/9Xy/9Y//wvH8YTkMuUeBlQZWFR01Kk41jOJUKvqEktOfSqGhJ
u6tqud6CmNbj3EyQcV/6zecpVma0HHNZmDgRGYUt+PUcYbgNM7KjGfSySEnQM7CJs9UqKsx66hwc
7DdTju/l29NsjCuXY46PSiNwYi8rNQOgXcFRpbwLiTFmLOF6iRgzX6cmYNeQ/pbfnUzFsX+03syg
10GZW3B4sISdW6KwnxPReAzPAXvm85v1N8zuX1He6MmBg4jcyadxIT8Pn/ZPz48zPObxATpNItjh
OGMNJauIsAMCtV0W3uKM7GQV/X8cGFKTXXPdN7juV4byh+G534696+QA5Qse2Ts+QmMLogP2R4Hj
BPuJgiQm2KHCYvREMMLEG3ZeHik5V0kxnq147K1t8Lgyn5sFp8eC/1LuD/JsxPJyyThQpoj+bbER
K3YeY+7wlYIVnWnW+u2LJCdyLtShLkr+Yd+tpz3gwd2ig+vb8+fHoT9hMnKD5UQFTTVGBJMOHY2g
q7jDNv8QyghPGlJKsGsudnFVK1ek7UjDaN3JZYp8YdPQUiuJNk2pldQEHGMlcVSSxR4zsGhkcGjR
ZPAQQJCFq9BErrBmzloyQtm1yBOaLIukFhCx+7xvQMRasGMsA13gOSqE7Ir3E8HNNzxwRX0I+Vp9
ire4gBQLZys2NnxtkImtkAt7YDs8/fb89dvTrHwYPpVDaTkp9fvcKZDgsB8CJpE5icCONLYjQqkk
k2Be2esaJsqtjjsELzjXN7G68KbmQrVYW5ZjFs0Q+m/PL7jnx6yoLZFRF1LIxIOjFy1Dk4F1Pgvd
JQNvCHaH5PptyqdmFFyYSX24ouaxUQkgBrYM/Mb9piDpPX6vCsAxBiwPb4/ALylYFzyGvyxOp6Y4
dFZiPW2iWto3FOdres7hPy2vq7gfWntwx/nKSbr/+nj7/WGDgW97AEgbXzGOF9GJEfA1sUIOjI7O
xjIqgFs4ZWI2+s1l+kTPuX16OH1TsyVavJoVrzgj/mP/MNyP77gMsrWqWO1JJ1Bi4AhiyY5Ggx2x
dz04JEK76Fiyb/E5z0m4NMh+vGLBpG0x2R+D6Y/Dl6+/D/N6DlGCdpKlzC066BFLNnlCV8QiYoJ0
AZSCFW2Dernegpi7BjH9sg/6fIm8lyw6hPy0LAYcnKlHdGNvrI0K5z4FekXTVYu0bevDH6Y6ytvN
4zA8/Awq+DTmTjD1TpQeCJWDxlYDITUOJ7Oks0LiVAmQcFFSI/OiWGC9XE3NsPbIJCOsUfZWBFnR
gGMKCqdWilEJas2od4gjB+4PWNPgoBkOcjfIqIPESVPOvyqBLsDUTKdvKjLZelspYfqGP3xEOsZt
VVoPysY6QCnDUyOgrTvCHSg/Hss0XTCdIqJMgGF4Tb72MpTy/IqbitqGoatE3y++0yoQyMiktxNG
SgOBrzQpeqg8zDyDLyisVDlj1vzSV3omIqi0apBld6vxeXmakKuxoKUYFYdfBXfWW5DKqYs4Q5JT
7BSgIMOYkzkRZlxUr3wV+eKY3Ol0RftdI5em7voJlun+zy/9O3mKqmJkCh6htGAtZ4eFNzhqxiHe
JonADOcukJDqXTVfpL57rxp3v5vmIPzRP56qgEBxY3SDM6KzUh3DoQc8Yvw8wt01ATvFSHDmw6Kh
YrZIffP1DAirdsNSp/6+L22gGd796Czxd2Pgsfw5jqyC15NcJxjCVhBtOsc8he3MwBYEQS3tVWHH
4x3OqJ3D2TkL2q7LcOHgnVrNyH7GXLhURUXiH8UOAgGoKeKIYx8ImD0IXYFIhSTyYExSlr9S/f98
LgleTtWUrruUre5XUV70bbfDc2lzftqUxz1642NQMRkFMp2AxUYQJ8IoHLNemtpUUuDJuXBdBh/x
4uLxNuef+eqyiqVWPlz3dgl+hFw8308pWFCagpRiqmBJdImbThADRjdCIDkQrrDhlTNeaa2YeQ12
YVq4pmzdOIgHzWqg4+1LwS8r83zAgCpezvirIHonBDJQCOFtcRK8B/oUPGzDmEwgLNkr5R3T+udm
OB5O17T3jU+637ZU7NEMLThsD/iFYxNksfXxT1RWiVKaieuiRndTw8N2mO0M2Rruo0jB+KszAou7
vT634Hhlzd/ONPjbLdM17ulpeC6DjGd+jBgbBcSIjVHmwBvRKQUMgnGDhZ5g5ijNLJi/Uap4XcZ8
daczec/VdQu+1mkcfYctgfyVeWbvkvuI043/WTgcrQ06FodFmngikoCwNzgTETS2ScZ00QngMlqR
81Xh9+Md2pwdz97UpG8a/PAlZuo/P4bD45iKvfDdJEbBwlRdzlhhDlY7+NOwk2yOPHPlBblucNNp
9Tblp/M17Q3nQt8ptqgN2T/spoi90BqN+RJ0cs4ypmKnRERUdQWKQWHhTHA4UFnnLC7CwZyWrYla
o4jCQbOMUv60mWOyKlM+eWUOVRcpRZ/gsUoEtfc4BINhLTD32Lsdwfu56pOf3+OMbNo0AVmR4NZn
YZZ45R/6h0+P4HDNk+ssGuW5w+eKlQnew4YNYMjQkCMBZZCMuKqE67j2GdV7OFtTbdf1SnpDl8GT
j8MjAjQg0NB8tN2RAaJjMJHjiFmcYe0i7EYecaZ2gJ3pnQEH9Cps4/VtzsR81xdWbG3pbs3WVi3B
srDhanNfUL0P1YDjkD6wI73BpkEcUAwvJEeMhgA/CRSDMMISnV7NyoT353unwvua3E1jB2y3tNEf
9ul+zB2Nz778QHXGrNUee+Vx+A53mnYeFTSoNIkAPU4H9r9OI43naoLXYGRwcLc02j683D/vn7++
bD6vZsuh1X5ovxl/4D6QIBQR1ALn16FSZp3zWSJ2LQUfFfwcd90+OH/bakMsL6tZbPRO6YEv38k/
Yik3GPkobkhOONQYNJMpiLsUvTWwLDIIpARWE1Hp7TNi/ziTPv6f3q6vuU0ciL/zKfRyM83M4UEC
CZGZPvA34yaO24a0d/fiwTZJfLUhY/C1vU9/uwITwOD07mbKQxsEq13JqxWSdn/7oXNuXAUHn7Tp
JJ3Ldbpfpvu8wJY1DkCeZVvolKy2z0wZwm/jcqGHMJuhR0PEwvMbwcdKhwU9Pu2Kaw8Mi/QkbLIC
fzlkm7KooF/us8qfvIv7Ij3OHKZHTIH1uwitw6QufViY2iywDc5ex33Bms+AvuDjXgusoRY0K4Gt
whRoEHWEQpqukqpZYSAMrnOKSOrCotDdVqCHfmRSTxrU58NJ1do1dkUZCB+SzFgKXomSL/9cveTH
EsphIOA84NKwdRp56BcNC3qHglCWFdhuFAqw672Mgu1atC6n1QB7arcy2+/yzO8gbwvDsBvsbQft
AcPtGQvmR9OBbvEwqzks+CSF5RECkY2luO/V3BXMtgcEk42Lp/+0ydIijfMvabb5+2UvkeJS2XY8
6QsMkjRQMh9W+A5m5LQEN2zqQA8FvT2H4eq6Ep2iSWBhkyLwqXIk15MiewmE4mr1qLZhHEmD0DJw
GwZVXaDHbIj5EnzpUsoD4Qe9jM2nNfYEcoYEWvZm02/Pq0ltseBbI3lMd2nWCfANHAF6A9+PYYCZ
oBB8y+OBo4cwBGGSNSj1zodXntQ+FqzRe63XmiFNTJruPQERs3FARoGDW9kCk475eEoiMObH1NGk
UxiNPrd6e1vjQGHIbqBHTZqOnpxO58oxDxYSNfye7eDAUC4Y3HCUK5iDWeDAOti6dHwbw1ddGCAw
hl4Ba1B1j63Ee055UpxC6WFh412+ha/MTSvHofKy8X0rwsNQ6CVaJ9z1MXA9NF1O4RtXMtbbF2zV
0mU/4F8PhewkrGjl5+v08x5uB7FOaCQxzANEcnCz2jMjzMsR6QGsZ5htCZgufuz8vMNoNJ6z9U6v
OWKgObLxWroBY5Hs3e1jCgKchHVG8KkB00SkR4aAz27fQJARy9Ut37U9D/MnsJ8V1jkgaLehp4jx
ULg8QWF+OmRfNtljLSta2Qq8VkUsB3bEJPd1w8AoHeF5MARdU+foSkZNbprej3lxdpmMbNd0X+o0
ZiCXiIOY0g+r7v5wfdJT+Q7K6rCVR55FGUaxmZhBwjR1FyYR3TMd+IbypQnT7c9IWFA907TwW71D
NsvXm4ejs8ndYbcDvpfQaj/ZbguyS9YpWX4nefkEw+l5nyNiCyzDy2T/mCq0ivIJloT1g0vVW2VS
fFnAKm3xvFlfElqVKZ+YxQr+LdNLYrQLi7RcFGVT3mX8WvXG/6seblqtgh5Q/NDXEPR6iJ8JU7Tz
73hqn2YE/dHa/YvnifNs+53g8gOf5A+k8dq7JHFeJtu3sJqYmDOyT4vNGiazt8b1G+OXC1J8RXuy
XuSHcgFiHTKFeQ/M1jUF5iz45UL7vN+UyXKbQgXIvKmWTtgV+QoPYZo61nmGx7GozQerqLkQ1e7z
16fpx/jevYG/PoZX0/kt0er/49/fh+Nkd9M/1FN/fn8bkzdZnumrPNmmxSpdXxDt7cs1UkHz9PiH
5q7KzV+IehTvkxWq78DFDEteNzdE868IYtjh20WJwMYDNFTaokezUUbgzDVAU6hsKRVpMUzUouFA
g27CGbyvlGiU0wuNVdHcT2v58Px/mMRoaEyiBXW0AVg5dAc+KH49CS2wdLNWe1qhi2cuZrT74N0d
eTeNyWOVABO6YgUTaE8y1uZjjdG8qRCoUVMIkY7oyHa8ju8QGKLJeg23BYGG4tZtS90vtGuVNpu4
WELm2Wrkd5XtLpu5Nzdz/+y4oOhyeBSLsYbm8ZDs1+R5TH9M1vCxgSbdIWZxnDwSxukPqADweV+Z
PAKq8FykZJo95K8Og7sPN5syraRa4ab/IBvWpYld/5pc3bsfg9FO4GJCZ03LgKaEwfaKQWFsIhsa
6OtPs4XqOTc+Y06I9aJqgmif0yV+Ws/Uzzw6RCds1lATbbEI3Nh9RTazaQ9jEmmmM/cqPE/Eu/22
WNxMb6/DANR69AdlzkQcZaNKtjj8LT6vb1JO7KNspqK5v5368+CsdJyztmw7NTOMGo5KrwVOXPUN
DNHaru0qVR3T0BYN/W/mPZ7Hapo53wsT+6rWAsuuaX4lO7BqRccgVIZAjWshJs6sRaP9A1BLAwQU
AAIACAAUiy5KBJGZ3atCAABBGQEAPAAcAGh0dHAvdGVzdHMvYXBwY2FjaGUvbWFuaWZlc3QtY29u
dGFpbmluZy1pdHNlbGYtY3Jhc2gtbG9nLnR4dFVUCQADWM96WMHNelh1eAsAAQT1AQAABBQAAADs
XV1zm0qTvl5+BRdbKTkJ8nwwDFDZVCGEEr9xbJelJGf3rVMqBINNRRI6gJL45v3t2zNIskDIseLc
pCxf2DID3U/39DzTPYzgKs8iURSuXv/pL2eLazGPRT7KhdD/bToOtf7WrsLytnkq/Jx+zqbLmShO
P1+ef/oYnL48rV+vncViXqZJKnJ3vxbts8iLNJs3FSDNz2Khj+4Wot70l20Zlql3LsIy/SZOAF0O
avSrhklXd+VtNgcbbNPif2vXolhk8yKdTGvi9lj8qRC5ftZvYmIIa1o/LMXpKJ01YBGEuYGwgU0d
cxdbLrO7lu3oBrIR0i6HepudH8NIh6a/dIy6GHctvYPZO0wwOQHAiywvd67CWPPm2fxuli0L/dOn
LYy9vof9HvIMxCkyTApwBnaAjH5geQMfmcxjnqZpErnufQ+/Cn2YziOh97KsdHUGKJFeiCibx4Wm
De+KUsz0s3kpbvK0vJPuLUVUKihiHoIbY03z87C4FbE+us1FGG+QIPBrWizCMrrV/1mKJXgqymbd
cLGYiu4sTOdGqS7QtOBHJBZSaL2fg7/8cc/rjz3fD4ZDvTM8ezcM3n0+2TpfBsemsz8E1xfjs4vP
3vkZXNTvX8urwlJHP1Dth6ItCRdgUE2jf3l9NQzGF5ejs8H/atrnj/q1uIEzC/1ChDkIo8jVDOOt
rskrxuNR8NdoZ1CsNGFEOGfwwdg6EMkD+r91nRL04W89N36c5t9/6MOP/+NffmkZT5rmgcvSKFR4
hwsRwWCKoFOSLJ+pg67mX3vD92cX7/RRMBy5+m1ZLk5LUZTFKbg7CqNbcToL52kChwzo2xK8n85v
jLQsxDTp3pazqaa9m2aTcKqP8lCGwzJJIPg7ufgGoSf06DbP5tk0uwEc03WAnLgatk0YWKYJ0dbF
1ETE0v3BhSi/Z/nXHa/8V9UTPEkSx+LhJJ5QfeRfQS/O5+BYnkSR4DYitkD6cHiuvw9Bya2M0f7l
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
dHMvbWlzYy94c2x0LWJhZC1pbXBvcnQtc3RkZXJyLnR4dFVUCQADe8p6WHvKelh1eAsAAQT1AQAA
BBQAAACNjkEOwyAMBO95hT9AIO2hFb8hxFUsGYyMkfr8EuUD1V5WO4fZLKURJyOpgKqiET7ECKdZ
i95vj9caZrb4DiH4Qj17xS5DM3b/7WxuT4ej0kTNDaV1bsBUEZ6AjAWrwU2XSeJdIcKoaZ8aE2BJ
x3+6Kn3k87qXLDEvP1BLAwQKAAAAAADriC5KAAAAAAAAAAAAAAAAFAAcAGh0dHAvdGVzdHMvc2Vj
dXJpdHkvVVQJAANJy3pYW896WHV4CwABBPUBAAAEFAAAAFBLAwQUAAIACACRiC5K9orHDedBAAAf
GQEARQAcAGh0dHAvdGVzdHMvc2VjdXJpdHkvYXBwY2FjaGUtc3dpdGNoaW5nLXByaXZhdGUtYnJv
d3NpbmctY3Jhc2gtbG9nLnR4dFVUCQADosp6WKLKelh1eAsAAQT1AQAABBQAAADsXd1zm0iQfz79
FTxcbclJkOeDGUCVSxVCkPWt47gsJbtXW1sqBCObigRaQE58D/e3X8+gD0DIa23ykpL8YGMNdP+6
p+fXPTMIbrM0FHne1+o/w9VieSeSSGTjTAjtT8MyOP+rcxsUD81T4efyczpfLUR++fnj9acP3uWr
y/r1natIJEU8i0XWP6yl81lkeZwmTQWo46aR0MZPS1Fv+sPiOje07k1QxI/iAtBloEa7bZh0+1Q8
pElpA/urcyfyZZrk8XReE3fA4k+5yLSrYRMTQ7jTGQaFuBzHiwYsgrCpI6xjQ8NmH9E+MnuUYk1H
FkKdjyOtzc4PQahB0x8aRj2Me1zrYvYeE0wuAPAyzYq9qzDuOEmaPC3SVa59+lTBOBg62B0gR0cm
RbpBAY5veUgfetzxXWQwhzmdTkci15yvwRehjeIkFNogTYu+xkyEkJaLME2ivNMZPeWFWGhXSSHu
s7h4ku4tRFgoKCIJwI1Rp+NmQf4gIm38kIkg2iJB4Nc4XwZF+KD9vRIr8FSYLnrBcjkXvUUQJ3qh
Luh0vG+hWEqh9X72/nAnA2c4cVzXG4207ujq/ch7//micr4Mjm1n/+bd3Uyubj4711dw0XB4J68K
Cg19Q7UfiioSbsCgmkb3493tyJvcfBxf+f/T6Xz+oN2Jezgz125EkIEwivodXX+ndeQVk8nY+2O8
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
aWN5L1VUCQADYcp6WFvPelh1eAsAAQT1AQAABBQAAABQSwMEFAACAAgAb4guSmOqrGyCAAAAqAAA
AEAAHABodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS94c2wtYWxsb3dl
ZC1zdGRlcnIudHh0VVQJAANhynpYYcp6WHV4CwABBPUBAAAEFAAAAC2NQQrDMAwE73mFXhA7vaT4
FYW+ILgbYlAsIyml/n1NKXtahtnNcrbCmxepBFXRRHth0OHeUgjLbZ3jyJLuMcZgyJcW7yFLdVR/
/vtDuOQeFCaXZlgw74z5Y0xcKmglMM4h0A/YAfg0aHpDbVwnksqdljnSjs2vMUSbguxqTdTxmr5Q
SwMEFAACAAgAb4guSmOqrGyCAAAAqAAAAFIAHABodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRT
ZWN1cml0eVBvbGljeS94c2wtdW5hZmZlY3RlZC1ieS1zdHlsZS1zcmMtMi1zdGRlcnIudHh0VVQJ
AANhynpYYcp6WHV4CwABBPUBAAAEFAAAAC2NQQrDMAwE73mFXhA7vaT4FYW+ILgbYlAsIyml/n1N
KXtahtnNcrbCmxepBFXRRHth0OHeUgjLbZ3jyJLuMcZgyJcW7yFLdVR//vtDuOQeFCaXZlgw74z5
Y0xcKmglMM4h0A/YAfg0aHpDbVwnksqdljnSjs2vMUSbguxqTdTxmr5QSwMEFAACAAgAw4guSpY0
UYLVSwAAxVoBAD8AHABodHRwL3Rlc3RzL3NlY3VyaXR5L2Nyb3NzLW9yaWdpbi1hcHBjYWNoZS1h
bGxvd2VkLWNyYXNoLWxvZy50eHRVVAkAA/7Kelj+ynpYdXgLAAEE9QEAAAQUAAAA7F1Zb9vIln4e
/Yp6GDTkJJRrZZFCJgC1Jb7XTjyWk+5BoyFQZMkmIpFqknLi+zC/fU6RWiiKcqzIGNxANAJHVpHn
fGepr04toq7jyFNJ0kbbP73FbH6jQl/Ft7FS6E9uS8b+aly76X35Uvg5/xJNFzOVnH/5dPn5qn/+
6nz7/saFr8I0mAQqbu/X0vii4iSIwrIC3OhGvkK3j3O13fSHZRomR82Pbho8qDNAF4MadF0y6fox
vY9CsMHipvircaOSeRQmwXi6JW6PxZ8TFaOLXhmTwKTR6LmpOr8NZiVYFBNpYGIQjohsY97muGUK
iQxsYdz4NERVdl65HoKmPxDBLUJaJmoS8Z5QQs8A8DyK0527CGk4YRQ+zqJFgj5/LmDs9BzS7WDH
wJJhgzOAM7D62Oj1TWfQxVw4wmk0Gho5cr65XxUaBqGnUCeK0jYSEmOMEuVFoZ80GsPHJFUzdBGm
6i4O0kft3lR5aQZFhS640W80urGb3Csf3d7HyvXXSDD4NUjmburdo78XagGe8qJZy53Pp6o1c4PQ
SLMbGo3+d0/NtdDtOPf/6I46Tm/kdLv94RA1hxfvh/33X84K1+vkWAf7n/2bj6OLj1+cywu4qde7
0Xe5KcLf8dYPwwUJH8GgLY3dTzfXw/7o46fbi8H/NBpfrtCNuoMrE/RRuTEIY7jdMIx3qKHvGI1u
+3/c7nSKpSaCOfNNeGFs3uBUv4H+RIhR/M+/UGx8P4+/fUfDq//qfvq9oj81Gg64LPDcDO9wrjzo
TB4EZRLFs+zNdqN74ww/XHx8j277w9s2uk/T+XmqkjQ5h1gudOjOvThKEiOKgzvwPATBc717ZbjT
afRN+a37dDZtNN5Po7E7RbexqzNiMZlA/jdj9QDZp5B3H0dhNI3uAMp0lSNn7QaxODcl59jELQsz
MBF1Bx9V+i2Kv+445j/yYMjJZGKb0h37Y4Zuu9cQyDAE38qJZU8YMX3pYTQcXqIPLii512na+/Sx
v62LEknMA3R51mSvriR14zQI7zKlobqL0iBzbVmjZR+g0TWFvVcj9AXoCKlqoQn0GUHeIBUDQ+Ky
Rttiz9VoMWvC9vsT4ggMSVrVihim9vNNs206ftqZwAwbBbSFscnJ0b6jFFui7DuCK3yXa5TyWN8t
Ne73nVYkmUmP9d1SUZXvmCWkbR/pO+Jz6rGy77hd6TvQaD8/Hfb4bqXxKd8xSxJmHem7laJq39lU
0GN9NyEudnd8Z+3xnX1Apu/z3VLjk76zMbGOzbuVoirfmVz3oWP7rCB0vNNnuaj0HWgkNj62zy41
7vcda0FnwwIfTeVMMfNZpmUaiWkdTeW5xidNI1ywY9nChQsUf65phMujR6mVxidN45xw62gipB5W
O6axN3s0MkaO1yjcnSGf030a+dGZSXwmxG6nw3s1WtbRZJ979QfhM6k4XlHmzB8okvj44Sv34dOK
hDDx0cNX7rpdCs4VSHG0gtySfQqe33f3W5DFpEqBaVP46+jCD3MPl/OZycp8Nm0GjHR04ZdrfCr6
ps0pNo8u/HJFK9818mk0TJ+X8+p2+5nzaJhwF1p+V+NuFKsqPNlE1ORCuYB+eV27XZhldvXc8EOU
pO12otJyQ/P320G7faMm12n8du/t73777Qy9RiZqVgluefN5m1nmWYMcilpiwvajfh9Hi3m77QeJ
mySRB7M41Ys8mFCH6WXk+ipurm/dfj9DS6GvNRdpMIUZc1ua4qxBD4Xn+Uz9yKn/W/V2UwPgZkk/
O0y/ORnb2Ed7bATNJWdkOqHSrw7SfVsABF6G8M8gvVR3rvdYBcHGE9dlXEPY1nXleqC/6u0MBYE+
0NxuAv0WPWuIw1xgcdej3sYFg9idqZX9vkrBukEczfIFw0w1EBRqFi7LkpMKDrrNQ3Vz4k6e1N29
D6Y+qM41C1GhmTPoF/JQzZbtyz2aoRM/rxO80qCgeNzBRCSGTLAOxWTreWs1pjR2wyTQ+XYbdaPZ
LEiB/Ta4siT0r907lWGiHEDllKOzAp817IP94+2NjJfpv46jh0Avs7pT3ZAFiJFKZ9iQGgQf2DN9
bpv7e+YkCANN9/rvILxr+tFiPFVZz4BJXrlnZDC4BSjIQSiAPF31BD/M3MdxZmp/Nk8fMxfA/LnE
SYQeqtMX9n6d2ci3NPsKxrMblUSL2FOZdiHYHuOZRsIOTALT9629SRCmQbjI/nYmqYo/ug/BXcaI
1xFw4+MmOVcIbxQMyEkKEMIk/e1NQXAUz4YpjD2v3qBxFE0LTY5ecd2Ivo0uwgd3Gvifby6zYDNB
G1C9HGCWJFgw7m5U5HC798r7mhmmXxxuTAl3iSj2GJukUK+MRgTyeRFmGwVvH6LAR0f47uxdloUS
hoctw7I0sHUSiEOTwFT7kmAK//8epPfPpMs3FWL0HsYec56bBFRSCzVXHnSnwDh6MCLmgYaKsfKe
MLS527QdlSwhCbCWpl5dDWjCkQdVAwS78A8Zf8KVmRY03ahp/6Up1qRZemStrdkMxj+h60JrZ1+u
urpe7rMoy2QeihfhLQhubvJw7CaBN0rSGNjlrXfvxsUk1X+PYCQK0iRre1ds1HsjUBFFcd6E3hW8
Qi0g3uY2vgw7IQyw2wdilzbc4m/d0QzC9A3SmnO1r/JxEOY2VXoJTCOgWMUH6rWxR0p3aAau1k3M
rETb1c0Z5AWFgWgajP3Hqd+CX8H4qdmQNbZNmDL6+axHy17Pe0g7m8iAgCTbfRxBVw/VdFtmUZSF
fSIURaORnoP9nV0fq3QRh1lVmU0wNtLm+WRpS1xxmsbG0hbSQqsLR9/+zl9oYdRi2YTgIHGScZLb
uSWLrS2mT87wtE+XjcbMDaEgin/CQWrioq/ZXHb0d5RsOWYlvSJqW5bAyERMgUar60ezu3gUhA/R
V6UTk5gr1zxfIPc9vyRw7SAYBlcOYieXEvzkLBY/Y7EeWUajRM2+AYOPkuAOxsoqe72nU9EyYYzz
8QSFbhglU6XmWohtr8z0Xr9ukWpSK0oRFmaY4sIIkt4HyTKjoczVgkeTKG4Wxx+9pw5Tw0WcFQJv
p1F4h/Sv4kCUtb0lUI2R9SGG6fZ4JEVppeAf7oM79OJgnm6KhCL5C8qUUmM0nmXDXLv9QblzAOm5
QBJ3qoBxEQZASiO46Ovb9dW6ogm8q0Wqvr/7bXtEPdwibUs2wOjZ8Gg001JHMG6rNrFlef3hOYb5
lJcNA1d5i1hP+YcrE7PlKauskZHyisOPNXIsMNlodJLH0Lt1k4K/NIg3KC+FS8henTXP3ulc0Wly
swgvo2ieT7wkaq5FQfVFqCgvSDwHGsf+i0Drh2n8eB1BadA8RtyyjCmtbzzHEHPsZ3JfFRJptOxe
o3kcfX98W+h6CxC7nHuA3uMQvznKga8gvZsZ8CyqMJ+dqVkUP7apKWS+qHIYNdu2v6HmceQ/ZlRK
siWRAyURdyNpXYuZVra4cSDBC4LKgjb0braLNc3HIUx09CJ4fpYsn5MczP+eO5EUzVxdOSR3uoyf
V5H/cwSxMVsLyhYdSuu+OikH0SL080NYOzK8seAESGc06g6WXXio4ofAg3Lau7+OMndQQksk/Qyx
TMAUriAW/stXCcwSLz5DFlXZUYuNpPVhMt0jzRLtVW1rbG9oSOyaMIz/WQpnM4/nGRrFy7m+fkOr
zOZ74KgSi5Vhl6ErRYUytXc/DvN8GuU5NhrlviAZm7xMJ7JerhPZ6GU7kTy5qtA6OYvtk7OY4NMz
+fQWOQg9PZNPb92CnN7CBRGnZ7J5eiafXu1FTq/4IqdXfdHTq77oCW4xnV71RU+v+qKnV33R06u+
6OlVX/T0qi9qba2YdwfDyPuq0tY8Dh7cVP2EO7DMN0unyks3TjhkAdkmXLjZYnQO5io/jqC3H016
uA/2LsGyl1uC5S+8BEttCEt2/t1ZpJH++LV3uzl9f1BAsD82wZlzvaF0P/Ie9B72Tyanq8+Lre3X
H8weLaVJU5a2Mp6xf4pdKnMjc9u6IDA7qdtup8FM+b+D7PxDANkG8G9vUOGwqj4wm98WhHfXOaRk
c9z/0F1qYjNMczDXbvwVZF5Gabs9h9drWO50+ngxm0+zTbbliaU3+T1DL5or/9KdjX33rT5NiJpn
7zZnDncuyXfxypfopyVkpwIfQ3cWeF29F66P+RUPhJlEH1BcQ8wsNjE/dPuae+bYl2Z28jFXvjaz
o/en2zqwn8M0mL7NWi8Byrvm+uUBiInYBnzftg7f+iYTVxF/a0N2dWxx9fptVXdZnvrdAFfxxh5t
6PpwQ7v9nyNcfSzvBQS/W23c6n1uyINYC26e5Z9IsPTnIrbF5wf0MTt8I55OrFUi7+ynrzeHiaw6
9ykPVjX2Jrmqb+nkdr82cYpb0QzXFF5TeE3hNYXXFP6rUjipKbym8JrCawqvKfxXpXBaU3hN4TWF
1xReU/ivSuGspvCawmsKrym8pvBflcJ5TeE1hdcUXlN4TeG/KoWLmsJrCq8pvKbwmsJ/VQo3awqv
Kbym8JrCawr/VSlcagpfPk4TgSej6RS6QP1Mm3+zZ9r8+DMO3CYElaDZ8sAHgUtm2sIsPGd5nREr
QglCoF93GvxLFR/5RfXTjkvXgrf1UzYF+5k++9P0YP1/0YP9YvRwcJ9+gh7IC9PDT3yWGqjAM1Gi
Zu78Hpw+yqqk7EGHO6zw/Cduup4pC0/c3EjPn6A4jb5pwdz+mWd5knFBsv7YlSo8zpNw62c+17Mn
1PzlRgLxwp8QYnYd6hMJNcd1qE8l1GTr45geONdd+EHUcv67Ow1UmNaV3r9XpZdHJ4UJ7zj63nL0
X7f5H1tPFuRCqjFF71Wo4sBbyl7VaFn9UihdbF4qA5+vRH8pUNe53pa8fiMTb+HTeIohpzVrngpr
sjrUpxJqXof6VEItdmohiFvgtly96xBEv8yuhS46rjTyPTGnVJExE0hvTXwK10vmWawraqEfibIZ
R4PgbrjKSC32Rk2h4nlQ2cpIuSjKBC4LiirPMeFzhmX2TZLZn+4YmvKoS0Iq1r5+AJFaVKFJsF54
CrStJjGzsudl8lq+XF5bL53X9TZcvQ1Xb8PV23D1Ntyvug3HZU3hNYXXFF5TeE3hvyiFY+Tl33uP
vkEHQX9YJlq2ZN+iipomN8ZBetZuIBS739to7dv1DzSM9zV4+xr8YgMheOKZFsZaiR/suSVZN2jb
xNiiQk0y7fPdBi+7o6JhrJWg2KpQojMrtrdwSZfCHVoWwVWAdQMpihLKsl3ft7UlhO6xhLCiLKxs
33SVpRv4PiVi9w7IBmgJ5lstJhfKxdAd48m0pJ1givVXSccVsJj2SuMyugs8d4q615/bWS5R0ujH
cRSjbuSr/K3Nrbxxq9eNPi5mYxXnjTBRbzQ6QejGj+hi5t6pROfN8jb9Fai+qT1goOKbnAqIDnpd
+irVJj5Db4XZ6UrTsQzRlQODsQ41LMdihsOdLsy5Zd/BvXfo/Es0XcxUcv7l0+Xnq/75q/NtWVsY
+NirwAAcMZHoNXSj5SES/b22w/tgtuxbGRrMBmJgya5hib5lMGfAjc4AXgm77wxIr9ehYlCFZp/U
bVwe38UlmF2FazGfR3FahMbN/qDPGDd6uM8NxqVpOFbPMfqi1+taQlCJO8+AVhS8hU74u+gE9SFy
7Ak6bsKY/xpugv9apMVfA9Auxha2pTCoxZjB+j1uOBRjg3c57gtn0Ke4WwV0W3Jror++WK8Jnn9R
sf4W+eTcKV1TxC+syW7mCU/KEv78C5arcHMx6Fm9Tt/gHR17Rk3DpkwaPW5ZUhJhOg6uwp1LrMab
txVxmhzvZqe0bGsX5z4Hd/r2QA76HaPLiTBYl5tGp9ujhuj3+w74u98XdA/Q/Z5dNhah2ljsuhRc
Mp5Mxnu/s7oCr+wIKcCfBnU4NphtQ+Y6pm30gf+oEE6/N2D7HZvLfcq9+RUF5MR0cyIuIifmGFPd
1QrInave1e1lJ47Cf6leHDyoGDUBNG1BqWAgeNWigN+ybCb7pmNYpAP4sbQNu9OTBqF9SO5B13Y6
DuAfZiP2+WUwjoEdz/vfUxUuge6oaY0XoT9V51DswlVpcn7lep+GFRduWTU22a5VHpG7Vt24vorC
P3SPfn+53zJCqMVtBpbByAGcwnQmOWAelR3OLbid2z+yrELVfusqLt6ycELojoWSKV8PH8i5vSjc
P+wCnhVBLk3T7GMPBg7vgyE0G09MBmED9rEtQRzZ65i9Pn9Bk/ZBKlolpUl2rZKSl+L2TY29XPwk
mKagc53zqClaBO6H32CizYljmrYwLDnQ/ckBour2B0YHuIUzq9N3enTXxOv8QdeDlcwk7/KZPgeK
78ckSAq9bLdxyyRPil2TPGlngSpv6Dv69Yee88G5vJ4u7i5C1KQS6IHC/fkLsGog+pBxdtcwHdoz
WI92DafDBsbAxFYXhjx70BNPB26ppfVVfU83gco1bprXIPaFtHxdye7Jrt0TaZVCmdvtQU3lJa1u
NJtHoVYB7NjSN8NvzeMDi1hml2qLKaRqD7K0B79onwx6VPSIFL1dizfSzrMDEt1cibd6e8eezUVF
S6DH+zuWWET4JXLPLVmEQbptCGkRljEJYWCKaQ+6ggyA0yWwI7OB5x2HSsMa2NKxIaw9QZ40RY89
ztJpewxZX9LI4eqK3xzzidyYsXpTUOVyCAh0RZjr/h9vV7IcR45k7/qKOZZZG7KwL0esGo1VdWnE
Uk3f2nKVaCWRsiRZPdVfPw8RuQQiIpNpPbK+kFRGEHAH4O7vuTsooemC944cqEmUSGKk8A0s4ojF
KIlR3lIVs6SsLvjL076iph/rbw/mslw4MZ6rfqhGh74Kml62z2m7evkExP3p/uFTXbD6m9V+TXSC
M40lijjuAg6OOAqBnGXCZstdDOIW+52bZz5Ozr3ZaKb0eqqZBvuqxxprcQ/H9MeCH92tlNVgqfLU
K49ogZAhtLbYboSRwk0MyXMNnDJYzfEozfxa05n54U62/fz1UOy3T1WfowzcVhmsKJKzRBhTcBpS
GeKd94SFHBQ11IsOFA9kmIzUymGWM3JYMTJvHNyvjw/+BXz6B9ntK+8sWgarjcgMq+EMEYC6xCZR
N9r4qIAVbCi37exx/Ev7eXzeSr9bzUi/2xx38fi/tz8+7O4/Hf4/8eNywh8sJO2tWaQcTII1g5uC
ahgoFCI4GWXYZMtLoaUMVrUf9serEzRyGsqmctr1crTKHb9898swDIqF6M1I6rreHoglKYinZQbV
EJ4RuB5BUtQiG7AQbmdixmChJ1MMV/nwsBHdLeVU9KW0IxcQvsDaHh/78yEXGr/Qfd9V+5fU8ArU
YSkJh5ZHSB0YUJcQLhpqDZ1zlkOpfzmNf0Hy8wuN9EulZqRXPbzCLv3cNW6wk4mZehh8pKEESwCB
YeaVIHlEJmIK3LwuUSolWxNrRmnnN3pm/vV49boQ/JsvQ/hDF4J3CKj+UIMnEBQTKpPIgMwFB6lw
LjoSk6fZZu5BiW8xtcNc8+t4eNjqsHZTHVZiAsLx9X7dWcCh9/Np4X+9wxE2Br+MtVtUJ+oQL7Nj
moADgnRGH0lgOQL12BAD454HffUszM0zq8vwd369u6Dvr3eNris5E/A2m82Iqz5t1y/7+2eQP9NZ
pzJCmEWNutAw86wUrJFwi1DbbVQQAV8CC9DXYCXEVQ3vDqPPi3x8OpRb0PXUSoVQy+M5/7pdLzHP
8ZxrpxeVO+SicdaTJKrmfIQsgVifCtHOKxFzrFimPerNQG/a2VYzIqx3F5Zud+7VPWBEpRjXECp5
L0uFhaZYrB9FdAtZAy3oEFyxhhVqblq/czvw9ZU8v9cqtKEzCm3Wo3P/y7ftQ7rfb9fPj3scCIaQ
UpkLc/W0CxAX45MiKgL2CkUBHjSYtEUILzJEydz1096MPq9G88pIg82MBvjaanD3ebnvEJusnFL0
zvvwY92PlLhlDDwlx4DzXBDjcw1BLhSnFYizt7c4nsM0F/aif9iIL+nMBoDxHQ/1ern+vD0eaVPP
s1PSep8d4T4AjiiuiMsR/pt7EyVCuZRmNo4PhhqJoOZEMEcR4tu/1arbwh/FcHACpiN3PAaQAJi+
1kR4J6qb0zWjoqzQRiH+Xd34imDf7pffPt+vL/i3D9unx5c93N+PU0FaJdiMEkpsRkHor9vnOsWJ
YA4RfCzJWathjgk6CccyCTQjDAEdOemNiuJ6BB8PPq/S+K1GjUNzWqvGcutGp7npeTuqYAR4m1pw
WvdGC59EwQEJ+A4HA+5mvXPEwvkLUbiM5bpRDqeYV2T4RqPEik15Bz7cnQ4Utv23n/sbIadcD3Od
t1aaJkPhow11YHMUONtpIABIDDYKAOt1etWZvP1pXuL+9fvDaZpI0SrB9YwScrwTh90cnqMiYi1y
wCJcxVYMbsR6mwmNSXpWsrDC3OJLDkNfPUWNyOvldiryemOOTOF/v61PnkSrhaKLyraUTEzwKp+S
GWcfocg6cBxhlOG8uMTsPC84DdcIsaFmKsRG0JMQT1+ez2CU9YDJ8JhY9JKwEgCeteHEp+rTrIOT
k0zjexujh8O084sZlLDRYzr/9u6uZXlBOhiGgLkHgHgBVAARgIirQ9XZecckvXrwMOL8VuFBI+FW
2qmEOzdOY9eO4Zd74PUuSQgP26UJazZBCyAFsHRTsx2IszAQgBtlpCmeBe5vTTN8fHc5sfDx3ZtW
PDEn82omSXICrOUu/3FIK3EuFhU0VAs5/ly3vahgPEfYiGD7ongHog9SkhRgGuzGGedfDSA3A+Sj
PBdePDwdqb2eU3t3PMzdhay7OIzRR0fGhXUJ7ooEm+HIcpDEe19ICTllymLK0X8/R9YI0aqwnAEY
u6Uc7VytIT98fNdXp8SisjLRIX2luMxAcUTCrmEXBXoUqkmuxR9uarmE3nLgDhNcLKpNX71c1hq8
MNRVUj5N9ABLjX32acyek1rKgWaxcb0HZ5wtRF9JcVQa2BRwACIzdBfw5DU2lVQK5QH41qWb6Wg3
zRVG2j1v1ZEz6jCpj6evPD48v1/un7b70+FTtoOzHIDc+SyJhLuAl2A1ZWVgZ6mkCDyrbSn/PgLa
gLix0G9a5cyMxsqe0PDXb59P/K46bS9D4VGDRtXYJeA7XAL10MxFl7FrOZZRpvA0QjuxnllqqXYj
K/nPdyfQBbfc+TNLTXdWhMZaR4ljomHlQsLoXaSZFGaDYIllpa9nreJyv7qEGQevnUSYf/P0uFFP
zmRi64dj992JUI+RrJagKpC0ReekKScKlB5+jMNHm4r0owC04ZFZkf5lvfpnjahazOwEGNhMJmb7
2/thOqnuSFd8qt+7CjXXAIyQNwdIDodLQOMSvrgQaUmMWn57Mun91WzSe98qoeycEqe4UfPV91+2
+7+fu0F0FdmzemKBGouq6NfC9VhNHTEB4F4q+J6Y5rndeMBWnOWcOMvtaPvf/eLX6+2Xvn8Q60lV
T/P7HypDUiwUwyUptqZSAmS0VAOmURq1okrDZG5Z0WaiS8nOwSsjZXYzynT0YqhMLu+6MFHPRYfy
qo1asETmADBSLSPH6hEj8G40MgRhNDz8TeDpOPa86MenjdR2JkmKD7dTflrujski2QFTK7kHHtIE
nA3HuHBe+X5BALbaMxBUVvhrtLTcXWQRpQGn0q2mHEK6NTt64EMx4Gn5sKk+6Fg60vSYGeRew+E5
2JqxNSlAa0Xbw33o3EFpV4K9VmZoRh6KpuhuSvEVY6xLvuHlPcLMlz8W7mRRXTEB5zKoaAlzilbf
DB6sEyM0cBikgHMuI2bRDtNIINQUBSu1HReSPiz/EbHY++WhGF33k7kaK/oSG5POcfAcoAdYkc4w
cq8YcSA5nNPMsEpzZdUz1P1xPMO4qnp63oiv2TS5oDQXc4n6uw/vuwT9gdMCjHgVOSVaKlBDHQLx
sRjCXfA6wilEaW/2pRj7ii/F00Zqs5om+JRlJ0K5/stfBnyS98zClihAax38k0JIlrB55yPYnNQm
BqCFxEb1jcEwb9qZ2Mz0/GQQq6evC3qcXnRkNldXLSPYa+0sAi8jQedAVFLFh2i447qdezBGOzc3
M3OL5QzrGtSmzpmIrGQEDgSZVsBIgmIBXIK/ttLwFLwThuVX+dUrVanmlVZ6MXPcrB2n5OKXx5dN
elw/HSUXVvQVS1WSA35NhDpEcYQbQ0JAAFfa8VxvbxZxE/U4zXBBg+PjRnrw8an0K3GqNpTHpy9/
3/Q3E06nTy+47AR3KVieQBRkAG+AycB5MBIz5bS42j05KjlMR2uEWctpeUqtFT+6voPvfHh8vt/9
eSYDtCv+1vS2tCFlIQktBjgZpwIxuxQSlbFZOGdNjNec8nDgVrDljHWsl/oo2MvDP+4fNifzUIu6
r0CUQdqsCKywFgwcpAlKkogDWULIoF1iVprhaI0YGzqNrmqjxyS3PylxWMjuel5k3/Miu24SqzPm
h8nq2issXYUICogHgYvmCEuO1wsz0zkuVAOmL7Y66Wm407QGm6bW9Nv9Zvt4PRUcTeSaYbeDVrX9
GaGGZ0OY9tGn6gOKvKrScIp5XYZvDJXQbCYbqGtLYNuP9NPy4dOxI60q0Vccu++1odEmUGMuiK8V
R2FrrDTSE4ozlKQCTzbqu7PZoUgXshCDN1ql2ZzSS7nbNhjq7DZARCp8qpbKrREiAePV8iogaohg
7jySnCKMRmcJdnm1S2NqHZqzKabTYrsenaT/flnun//ZZ4BYj/xlTdR1Nb6YvdFMEy1qW1AARQm1
v18aHYpOoigbrm7BefD5xTw/b0QXOzEj+m4Mm2O9DPNhW5vgt/tDN/y5TGlYzXNTZYG6lCGFx4SV
tQjLDl+oZKboIDRL4aZoMjPXhcAy8+ZIu2mM0dYtR9bxdvt4PLYnC2eKLaTrj0yy1iiG4GgEFKt+
3bEE+FG0RwAtTgd3i2KDaS4kss8vDNUwbjX1VPXDI0J7eTgdde66Ymtg2UkD3mVUn7XB0WY4W1ll
HC1baL7g/2eOt1nNwFqz4voYqd++/3hY/J+3+/XL/hwg+cHknKrNbYRnC3ESy3AvIAtGmcK9daLE
m1jheZ4bkrYXhGoVm4F/ZiNOteH79UstEpwLswqHop6Ljuo6FxhYo7C1PT/BXdqILwXhniWVuIpm
3MfXjNZIslFuRpK1vJhYrYb8Pz/5vw7SqpQhHlXJglBRIcKaEmvOTtQkQmRECl68ZCnF9DoorWNf
xqP1aSv/Ws3Jr44rWXPt/Q2U+4dPH5/vv5wRXW9jPtHko/Wktr3W2wKGOOdgaD5H+HuwOT9qSbww
5FAsS1fTXJelGztq7WvuYf8guLRdtGCHPBeLUdhSAsnBAG1KmsDN6sUMoyz1TPlI/bWQMRy+FW/j
5sRzR/F+3/759dO+ad20gBMRtIMAu1cnmxEnRCokOxsRP4IuXbVgKstwrEYI5qbBy7I1PwrxX+/z
23M1seP8lvtiagdKELlWYT22TQL3RiE9tzXzF8u/3kDYZLPPs7dCr8Wc0KuTSyp/q80g283IFWEX
RQBSJ7Qm70EdKWJUkYSFSOGHrDHmOxWNRhI00ruZvuH64ZVi33/8YLjtm8f7Hyr7xMbneoUpx9pF
wSWHXwUpcio48HCE4mD/n9W94RutCms6o0Lto1h1G/Dh3ftpP4uOLusIsKV5qS2cODw+IzgpLb1Q
jAZm/PfsZxkI0Qq/Xc4Jvxl528/bL98qHhCLuuyy1kOESl6C7BEaulYsz2rdJxJZr33FVGTR8rsU
ITD1hfoDnjTKLGdKOvhwrMzTt+12/Xmx364fPz3ct6ypuyhzvCrTX5bJyjs4N1JkTe/w2oMUMqJJ
SJoyG6NU+XvoeddJ9WFOqIbKjV8brcCMB1vWNvwGfr/fPz4/rh+/hJfdrrvYVZPWUnRVLuAiFR1J
SVXwXatcRjKSc4kqCwpakG8BKO0M86q077R6qN2MHno5TR/e9TncU4OFZjUR0VWTudHgI7TPiAkg
VlB/FojkmXrnE8/51jziYZKLmcTD81YFy2ZUcOOUVPeHTpf9ny+4e37cIxqcygiiBwQ2Ws4kLE1y
V7vpxeG6Vs0vOmGsireC7slUl8D35MVWtc2MaqulGXGJdP/0e3/Fe1A564jSQnaEz3TwMTjFVaWh
ugBOCBdhYN4F4lJhTpXMnL5pn87TzWt1fv6mlXtasLJrzY5B/4+f759OnEJp0XVcgIgyXkwixQuc
rVKrUyEbeECEz8BZjvGVNMGx4rR91TH8sV3XW4Gzr7XyNXptZvJ4dqPGeapTp+shti3Ge3XqvdXF
cpMoAEOhcPiBAm+BsxCuuNUq5+jNdagzmerCNrVvtUrN3D/Ah6ei/dO3+4fNy9dvJ6zjTGdC1IH+
GVsgO+KUKBKEnGk4cZNK4lHxGG2LqduRhkI4tZqeGGf0mKEs/xj2ZPcmzeBAF66/ryhZSImCkihV
S/ldhbM2FJh6x9sqeOJX8hz+t9c6sodvNCqYmUPvrOaTw/G0rqFmv+n6md2i76tyFCdDdvlVJalV
9W8uhJo0E0rTehVYkOjgXjkHFGD+lUMxmOKi4Z5fedNKLGbUWG4nt60Of2jx3S8Aj7S/ASSNqydD
meR4LJlkw2rCDz95BAagYpmwqU4bV14FYofBLwPHwwuN8MvNNFa7Fd/N3oA93V2sge6gQP1esa83
SRa4Iap5qMkmRgBYIonWcS0TpUm+jn37q5MX5R9fm4SgYk56OY7QE7jS5/z4gi9M1z/BezgcPKR3
lCTAXxwjFuvd5Jr4YxmuthR622Wc2eluBFLjhKBbmRkVd0p3udX2dPmPEUoxYJA+cvc/dfcLaWQu
eqJjqlf/FYhJRKyj3FrPlYm947mphxKTXNmhj7ERvkv3TYTfqamF/+73q/vn/clP9fvSN90rRzko
rRK1xZgD/3pDGSkpJxWUEvSVPqPR6Jfj8uCloRbgJtNiy5Ju16eC7P7Pb8+PWGu3sKcY7Y4J7qQt
rddFSGIZi8/qFS+DL4qF7EAMXbR5VJmdjNeII+w0pi53Kz5tGOr/RMjCdVcNqVzIbj2FZKwg7KRk
4Wtgm8RGbUnULnBOVZYsvVZcuNDUGA/PGnF3GzEj7mbmokJ/E3V4tzxpxwOMj9T+WPhFV2+p8EJ4
CN5E60sy8sbO8svXUA8PR0JPrW5FD1dEWgoDnLDddCXVE3IeXJKWQgceBHGydloDNxBAllqlL0zU
xmtK+a1MZjLRZUIzeXWo3EpRPlVO0XHcHaDDHv3VPllWf+/wz/qvrlXCMmBnEJvCag6Ha7hNgIlS
YgqYKSaj/x0wtH/WaGpmQFL9cKYBZFQuQ4SzNbzZLheaEKCxf0zy2tlcwA1KsiT7mECKgJOs/D7l
uJkXG33cDCNduYqY+ixPvet/Spse/15AYRTYqASShEVYsxGsxnFPMtMhxUCpp/PV5/NorRAzeGe1
pm4G76Tl87LrUakWLVkH1jx3XknHiGb/x9uVNcdtK+t3/RfoYF8esTqua9d1WUneqRmOo4oWH0nO
Tc6vv93kDIcgMaNJHVWqXLZMUkA3CfSG7q+xWsSAuWA5GMVW5kwjJhBE+aalgAOfAQmAuxXJW91Y
8dut2/W3+/REMPdHqXt4e2KoF8E9HFSkCiQNAbIRXkZ5WN8BCAZJCWvfi8hO1J8tRq1J2q5jXrc9
2zWKIl4Oa2YMYJa7+/7T3QuIdi4HHxb+QXeQJe6TMYEY9DFAUcKO5A4PeKgX4CMxzuL7FRfUtJyu
/zs+U7G/a6QHwsVdO0Pz84B3+PFx9zQXrsrBgnYywkYsGJKI8InguxHNEyyxlGOzDvNkduZxkrMZ
msfHaoYsbTDk1CExJH74+PjaP+86fLmHRcbMNZ4PSiOkkJkRkJ37wxZPpSEJtDHl0mf9RiHe35Gg
Q/ThkiqLFcE1v671AXfu4ASD1zea89PB0v7wBtyCFIog0lFwFAzIJcctJsSwLHTWCAT3XzqcVcy5
pmPOwobadaLdht5OJy1fwBesD1q4d8ygxSRRCgifQJMzyQjmi2fnWTJCvdNByzR5RTIT65MKuDhB
H6S77tvj08vr3eZz//KCYaZF1SEdAD64FEEHSTjLsN6Ugm8QEQJFeVBnHAwTt0jYOz9uTeJ2rXM3
nC/tPZ/RCx6yFeh44CgdN5KTYrFA3OpAvFSUFB+5ZWHAw3o/6eXzCQWcr2qy+wYvYmkG3m3Q1Lou
d4/bz3+lHkmYy6ngopGsYGzRRyLAdMVoMCVYY0ejzjbJi8LZ8/FPcDh7omZEtD6KkouD14cBpnfK
JzaHdDplpM024McBp1jICCZeYLCHleZMMG60OZvjPB+3pqsRStvw2ynX9eePpSz2oDCwUlzyiK0J
/iC4rsQWDQtFGFnAsImCynfag8fZa6JvWYtotjou3Dx1Qyr0cLIxQDeBaLfGgynGBUYAFUZJHKx0
J4A7LqIy7I1FDmOeMnzg1oJO3qCzV63a6sFVZHqo73EjqhcVvGSiNcYFTdHEa85JiCbnLLL3l2EA
HQY/U1G9cBiBQt0i2ywz8vsNdsudTuOHtQHeogdvliTMdhIFnMZgY4adpniQJoqsw9lc/PmYFVGm
EQPYmFXCZSWE/vfm3GkxN5HxAB6tsfiGbUpkSKFNUQXYTuBHJf1+Au9Iywm8iZuWw7FxsqFvHMqN
2/m32D6+vGyPhT0KYx9Dcill1jlnwRrFzHCmIwFrWoE7b1GkaMNEOvc9ZuPWZLXEhlPLuN/PMVZ1
6irnwMFRdZg8JhDc1ZmQCecx2MxYAFv+kjUNw7ZfItyoyWyku2zcli2kbvcyy3URB7cDNAYSVQgL
GLQrDNaHByfUe6aMycnZCsZl9e6mUWuStg2Z0LG+4XYMgO1jxjB8qmuGITmw4tS1sAPegtCxDAn2
JuHBJmJVakGUTklnIDnY9Oby/bSf4rQrd3iiYqJrQBVsOjGVKHz4tEgzMTQp8NMFoRI1sKQUdAYD
4atL5MpZxa17pzSTT42X3onWSxeT9v3agRh83PQLTVeyYpYmjrBww9lxRCRCSmIB4RCGJCjxTpqu
pmBBvGoRvxTHlaM6HXyNJn8ATedLHCJCRCDgjA3OY8avFVqXwGk6D8S2HHpBYMO26bqlJ/35c7wZ
skew4kKNJ3JKuhIyUKZUQXABykgYlDINrJhYQGlc5EHi2Cc0HNypqd00ZMJO0kb0pFRoSkMUFxYr
ks0SKxgRdSVHDEhxYoXlhCeQp0YVUChv5+285UXVz1Q8YG3akoct18s03kpBjQko+2RrJvRQuTr+
MKT0Bo8QxHhCofHoBYQdA6femmSZ9zrpN8Ao/pYyPNJyrkp3eRQDHN622J7OAZ62u+20h/lQ+GFl
DIiRmfRQlu4wD6Qo4rlGf7FQVxaO1myMxdx9Y2679ERiOYtcBerEKQQbUQrPIopLBBxaRlS2UWmf
s3vjlO4C5Kr5ey4XPL94aM51z/l6a/fidhKcHz59eX76BqM+dLd394iuVsv96LPLPChisoD9LVCC
omUoi5QugiMnnXwvud+k5Kom3DS42bHF1h/gTW/+erh9usf09wEwkA1ogVx4yaMSJDgJ7oOFL+dy
5kRGcCqw5F2Fiw4o5zOcOA6bPVHzsOMtHrqFNngc0Xr6CRnqYN9YhT6lwNw9ralTKRqilXB46M3B
MMsZnErQzaroRKuSxXWNVnOOBbXrHdtLvmsI26GiB/WDHXbLGKsG0cOlZ4GAgYj+hA4EobdBIcPC
UZJrWEVviqVh5NMydrhdUS2FblC9gvb6+nMcay2GtAgDdiO6F/APRlM8xeJui5D6mFAARoQXlhFp
wW+jUtKYL3Lf5nOcMCNmTyy46BtcSL0oCvp+373unp6n/hVGHlLnuPOOqlyINgZ4iEIQi26EjsJb
G2UAQ/jc+qhHrmlr5Gj2apVwerqR9xI5WhianQoRVjD4OMJp0Mg6RkI9Q+AxT8UbBuZ88BOhqdkT
VzXdfYuZJUbj9+e7x5kbfv0F/z8oiDFlcUinzRYMIRoJ2PTYnQMhc631JLKiKKgLF5N/jzTTLzUt
9fEl3Kr5ayQR9PoI1/cAQvhlQsFENZelYy4ggq5DdC1fsN5G6KHTRHQ2i0IXNfDzMa7qeRoSZEDn
uK1xUuYFS3zAeB02ogbHKEgWwWjHiLGMYNNggnsuyUQvEosuvXsp35GaU5gpLWe/1041eO3o4UX/
/ufsdHFVlBGEc8w7dKwK7AA8D8YEIAlbFmwMmyNrG/nHUWtiGoW2vVHLINttt/n9x/d56jQWUcp9
MeWAPiCozC6BqgTyiDAuE6eVA0PfqihUkJZelPwSFjPNX+h476omlbfo7w6my157TfkidnL8cwHn
3vAMRhrmetNICdjGhhjjaOE0gOpJ9eqtxqqouKXrs1q8eISQfe3uhw7bL6/dMWMR9M81vZYjKFTK
2TPGgQCP6OTobXgZ4K8M7kgMcPEyq+PDl1/iHrVl9hZPEbFgY41x12/4Eo3tU/fjcfPbuaBbKs5r
FwWh2mPpoEZeKLiiNCfGo2c2viMAW03PqaLa+TMV1xvb+HgbN4WPbv+DyD9HLAY71PZlsEuUJZGW
jIpfEo+xGWawCD7GIOQCB6IapZ7fNZbwpjPr7AlE4+juHjGLf5UBXxDiw1BOWEQ8tQCmiENkpWgy
IowGKdmlGfDTNCezJ6YnakYaiaZwcSqOGee+DkfvgesDZB+FRS5tTEQzOegSisDPDIwSXSQ3ice0
cOHq0SpCtg1VtmNyGUU+6fgbELBJeEowPgFbEXve6CIIBuiEVl7nN6Bxzjv98V9th39n+rVmgIvL
eOsQzsez6JeXu9ELOoRfjRvQlLJmQSrCnAaDDjG2PLzaATFU8OCcDfxtiNZq/DPHCtVzC27WOh0L
/Zaneo+/V3qFDl+CD+XhrBgdC5gUomCnEI0VvRFczKhAmhQhgxD2PQylj48n4FDhxlVNPmvwhAdp
VaD+4Zh6QDFnhNrMBmGusbQD69eIV3ZoKGIEKMds8lkfrGFcw6xNUpaoO/cIGfUyla5PUXoXeFHF
BZLTEDMRhQSDEFY8aG3An9GXqZv704BVy6dezlUxz5+o+dy0+OxvZzg93e3d9ML3sHmO81wCrBxw
GEBAY2QXUW9ItsxHKaThka6AeqZxKgI6tQ4l7jqzfNFP38E/PhTmjvbREBHaV/oKnQN4KBgekR5j
VAaDiQUIiga7T8UUwnss5ao++DTo+fRIzapZGwC7W75p5Zz96Kv1VCLLHqHNjfDg0+CxtddCEkyX
AksKzKtg/k6fmvO9aa5qArcNqsUy/Xka8GWfNNc/jDgto4OJdkuMSqTIOPbyY9gsr8BPLBDnjaFJ
aiH45c12hvFbbITZ/ZqRRkRit9npg3QJn/zNEQ9W82GlBxk5s1wTNcARRp1gI4MFGUHoW51hO3v9
D5UnHem7qjlYhQEcpcccpk/+i4//s2JMci4sNoQE586jqwMmQQGrGBwNTyO3hjPxDzE2p/Cq5qJb
s8aoXiy9fRXqy1+Pr7/1FfAL1qDum5uNPwzmR/KUYoFw9sAu1yC7LJNEOWwpqhgv+v1xacYSiZs1
hes6iumh6lWA7dR4FXzKmdo8ff9rB17J0fozQ1MeMKlA3ZAi8NNK+CsEbYmMWpUEv28FP5H1OR9u
QUnfoERMKJn/OeK6YbbcPv1U5BAw8Vha7A4Ey4u4oUYRdDeVSVLjY60w/tPAdXO04UPhRb2sS973
z/jtbii1GgMZFINDLJuQFQehY7C8HWxRcAGjJyxn7hOXOtl3CQ4dOnj89PF8h4+f5ojdjm3XuM9w
8XaKXtx8RxDepqTSRTnmKeJy4FG7BUMfXC9JAhUqSvAMQ0j/0IZeUlmzuLas4OJ2Wj8HKEnWgKn0
FlUdCC2OJaKCDWnXymAJpZVGmGT1IqqwGK2ipF+DVMDFfjqY6X4cU6mZxdXjnAPrH96xZAVMfu4F
It6D550jlS5olcoCUOQ4Rj312hcBl3jLWqCOH6r2Sw6L6VGgjT/gkpY0JaYocaBg0ZY3Yz5WSDb7
oIKOTlyM8vjhbP+lD1UDJvCszaqKBy7aCTHjpXu558dedXzIymIsgscJbjRFiDZBEZucOdiCxkZv
WZK25OVHnA1TE2A3awKYmczXPx+q+d2IiJuCTxpVeSoIL8ozxbwwRopSOpXEuB8y2OaNCx5OEMDW
LgsYx04cDgj+SDdfliXPylCuFc0wPUV/RVksoQVjKBfqQTRSHv4p1Xsk76pmYC1mudDbRqLY4Ka2
IewMfOAk0SgvFrOkwV/2kmP/15BBi/PIBb2sIPSNctCKdrFGDcKLkz304eMyGTNlzAjFDa2wiWsA
DeWSEqRw7YLh3us3OuJcnqIyTb4geW3ncCmWHVxv+u5589uY5Hgt92B7I9xwYcp5i23LECVS6MLA
+7WZZOzsZaMDuSTesWziQMgp3ba/fVXz02LSLCv+voLd/tr/etf/3zEEeqj4HiwJjtaadMRiqTGe
PZAgQyEM9q6kwnElLpJ263lOfb7lczVX3dr65morF+dWY8/3P18RTXPkRrq9PepTyFYoRZIsiKvG
MEk1SpK0ZEkzFfMFpUQ49ulNgnevagIbe0SvWi781N89bLv7uuWKSkIrPIa1QWWs0IFPYWFrlwhb
PQlqQrooEXw/+ClAmuFmRbS2a3XNLV0CHP3ycR55HOWSFGMfFu9DUByIBSsQxBJ2iglUMZK1ViGB
ddEE1VzTPp+jzcD8iYqLzmzXXHSdPXihuHXu/uiPSksINKIHCy8KAwoCIfcQ6chrPBEEr1SJoTdU
AC96aX3Ug1WEbOztmpABBHbfJeVruflx99pXKMnUWPCIkyXaY8yTwqsMPHhQ5dzT4IP1UdQk1MNU
FGzN2tjlvZ18mpd/38Mvikl7Mz2chaUIKtOB/QfmLvgSBsMIykSitXOGOyxnXLyGaqCrera+RcJu
kQlye/+0+X3KCNRDoRqXMmEbtaI9FsUGMLhg8ROrrWIRvobNZw/250PWJHViTdJO0O123UoBgcyq
Io1icgopEK+wcbcp8HlSliRjYYpgNI1dEy8zBQeUtNO2IN6+qmlsmEI7w495Tr8sM5uAHoUdN0UW
QwogFvvhnuRgVTEdnIvhvTKbfmm86p1pvWo3ZlB8+PS1f9z2z/1zuX/qXieimbIOe3GCd4XGoxSw
/CS8bZ2YtqGUFN4InJwj+mgsLKY/QMYvLtfsNPwZ8ADV6oDx8dsPMFg+P237+0U/bGUjs14OywbT
VUImYBpRYhxYpS4xkD/sor5BizlOY/HOn7qqCO+6Bjf9MtHsU/JfqnYi8pqP2U9jQanzWYhQOCkB
8+XxS9nCMlHFioilekGfN+5wghPkw52a5IZXhxdP1qQPGTj4C7NLbCxIV1ZgW11MW8EGEhobRhbs
Hxlj0IFnk/N/V055vL/gQbd4WJ6X/vz84+U1/9Hd/xhUnP/WYx7OHm1rOJThwoGNk0nJaKc5TCvC
BIDMFQteMQ5f4aI6hcZEJwoXGk8uWLMt1jYHYf+9e5j7qkNzyZgYpt9YDKKBkg3YKzcSCa5LBgGv
Clvk4MzGqOZmdLeem7E11vnD99enhwP8cHUEYGENwIQkR+wy47QACSRB1JfAi5Ayq1ZldAPYZZxi
bu6u7x4ImD20uFNzxxoLn3HX8BfxfGEMzh9A6+ZMgsVL4Q+sFYbnOGBRYCsdA/KnaFtkxM5lf+ec
o57p/KlH/WzNH9+0+JtWDqK8ffvr9bmblT9MMP7US8ciusFSYb0c2AzOYeWA9ZjQBXbt0l5ZDbcg
Ztsg5thReXv38n1o+30IO9AhjWFwNqKRzlmFvbYw9oJVL15lT7RKMVowrIprB4TrQWt6+nWwQHC3
zEMcykt/B59xgPQYvFhp+TV3A0IF/jB0qAZLSphMGIIrYIEVaiKL4UxFwUHKNr0RMtgPfqZpxMIx
BVIbalNw3aqKG5KJ7w4lRWKEt7RU2tE08DoUJjHpqWCUW6L2TCgzOA8uIlDRxau3muoMjur8saua
A9Nia4qDxF8/33y5//Ht7vGAf70wzhQVCHNBkvAowIUiNlOwc1xURmkrg6bv1AqxTUnNTccb3Gz6
U6eQ+64Rfvtw93j38vpcuYNsbFCAfYS0HzBeUMMyhVIHkW5jKFkFb7i5TKCuZzrXPKJ+suJS07UJ
LfROHGGT+SJ2ZUrSXDBMNAgIRGIKwn1R+C8D6yZFXTh7N9TklmLTu8buN7wVAPG/xp8SHsnZ8UgG
tPH1mJ0nPWgxhj3pDUZEaXHYqMgTh93JMJ2AyngxthfOcgbdC29XHJhN46WbzfTS//2je+4eX+8e
J9lu8c3TIpl2BcPYmFbvOXbUhp2SpQlCWZ0cbZeTL8dbENN6nZsJvfuh2/w2HUpYo8bsBzyhlgVV
CtgHAhtUWW4VYQVMBpmzZCeg+WejVVRYtY4NCNsdwcJ+fH85mkpSqDErBFwj6SUlfMgyAwuJeM0E
iZlzbh0VZgkNOR+nJqBr6Di7pW384U8dttG66R/wtW4+wz1wJuoeg2M/3vGH4QQADApULKokeGMi
RRJg72Fbg+yNNFq+4Xk2pzzl5TQerbndNbh14vboOY94J7WABksUzE8niMKSP+GoRvwRRE61okQE
rSrvVg86m7+ivFHDDBexF4aYmp1+7b+htJt1OBqXizc0JekMht0FYrjBfo/MkSKDo9TS7P6/uCtr
btxGwu/6FXxJVVK1dIG4MVV5AAFyyhl7ZhJ7kuy+uCiJ9mgjyy5JzvXrtxukKJ6yNjuV1cOMzAPo
hoA+gO6vZfJ/LHfaJbvLdTHCdTFwtK/LfbGswKNIXRzHKHrBqmJTnCiH+eSUo/QA5YPOCaxb71PC
KaH8CyKFHCiZijSs7nZ4LIwZ4XHgy44mZBwSJEN6JEjvCkTaZtqCgYT1tAwmrntYch6LWxlwafMk
V+rLJxE05JzI0+ilSCKXIy7wXIl2/egDet3Bxk5UE/kuKaw/LKEgME07AamiPXeI+QdcamE06x1v
DtqbdTsepea+l3//vP+8LYtjaQKmMfg3FBXxHotFuTjxYCcwi6hfzskQAeyyLIM1fDIHv9Nyh7R7
MuIW3Yt+QFvPaq4wq9FqDpkNiqS5kgJLbBtECACbWTiLNnMOHjYoEUfPdGtfs5cnbWUuzVAAc0X4
pHUZ6pWs8tVIpRQDlrKhoIdThso4t2H3wMeZ1cyBlZk6l59ry2AXJwqmwN0OG/ORY1u42ES4vbRq
pASMeu4MmLo6jYVE8O0MPEHLKIvB1UY/BjxX2QvLeRmriWL4gg2dDb7komcFLsvdL/un510rzQgm
aZ2CRkKQILMSNBnIBYcxWoyAek6FNjHhUmYi43R0v24sPTR0dZAU+MBUlujgwVmXCznGWj9tI2hI
VzzvX1D2VUFHJvgZ1mUuJ6mKER8ZDUUapzlXcaZhbsC6FEx9mTDrFgUT8datJ7o8jgTa8ZL2zwP9
ahGg7BtE8SpRLGz51b8egW+C09ileCoC+hxPaWA1C8y7yRIlzBdUa0N6pnBx+891uC/HVv89Y4MN
gPXT9uaPzQLPQ00NHF39xFi4VGVYaFVgJD0YX7HxoQghM3BL+1yrL67bGnqmJER9e9Zli4/xqge8
PuJeWLEp19VvfIGoSkYGXy1TGSjzWAiMiFXopmHxmxTcUK6stzQzX2I6t0mY4vD4RI9JM8ZkcZCD
2/Lx6deyHS7Jw+GHoFnODG4+Yb6xZBk6oAYBwkCVgzoyfNyN6rfXI2Y+QkzRx8+ZTqVLBfUWa24Y
Cm4K84i8htmXqTbGS6ze7ZIzUszHSFuOTfyyybe4WWzLcvMDKP+yKRjFqbzgIexM5k5hSiIXCkvM
GxIbLrBeJUg4L8DSyXuxeMPmutSUQz9cUEJHwuODIAu6t4pMYFLiTkLYEFEUzxdEjFW28bwHDGsG
ctcJr5zAyts2fVUCnYCXbG7POmQOq9nBRdqEgS3Wy8XzS7l5aO0iUPAJUGZKMIq1Rj/OYoo4SXhs
lCaxZ1In3hFL9OunoO4cP25IRZcJOpQNkutiZCvnUC8JZUPIswzSoS7IBD89AWMnJsxq9K3BAMYq
JOBkC5WAlX9OLNLpgkztJ2ZdaucjLJimquBi10I3aRntgubEp9LGCdY1ZEJkMehmHyuw5blnmFPZ
i2totdSlYMRvkrwoesu9c1ZASWP+ZHiY4ggs9kwmdaJHzvLYQsNC5jnGpJ1a7BOHBkDByMBIUZmG
b6+yMCeOFc2UTzOWgypLEF6deQl2IYocj+nzGeg2Kr7IGXfV7/Fwu/q7Q7mSIwNq7skANOZ9Jeei
rxUGDAersv4WKv+kBtRyFnuSw1RMMKU0ASVGrcgzQrX18hWxcGh/CgCmvt2hfT42HedFg6e7/vOx
uBDHI6OQJEPAfwBHLbcY2IwhshYLURAPzDBmHXE997HdSLf3Qo70Pm8qUf5ebI9R1mC54aYmo0Tl
UsYUy04yj0efHnpXBAxV8F0Jc73M21Yj3c6H5UVhGZZ9o+rXVUA9yWHWVrsG7KI6VQn/V9XQ4ecB
x4RTPL8nSseWpgnIcwrOAGhqYc7DHa17mLA76rttFpQZ5mvBxbkcQE/uMUZOyGAj4X/BEAYNqBKs
5IYJw2D3IuYdYuYTECdaZ9KwV9JE91PBceFWl9IhKI9RxeAICzd5luU+YBTtFmG4q22p6iwh0xKU
OgGTneDOhZYsTpOAfiAz6X1i3XmRfYhc7g/dTI/54LFZl/pihCXV1CdavGzXoPMPxQDDgQ7NSJLx
NKbg18YBVNtgFWYtXK6FFzkXpr//fGyk2/tIlJ4qTB9qFsdwv24Cw8Bm4yREnThDvM2YjjnR4PMh
4CyoEAHiRlqdSqUk1a+hxTUNdykb4lvgRT3AHL95CbDXoVA12O/Bya6+BX2XIf6axBJuMFQeQ8YQ
2JJrSkUGSoa+EnTatD8FM17f7tJejCyoYjlm4R28oADfvcH1hVgdwdXE/9HMyJIkyYmNvcJ9FgWD
bTFoyeVGs9TzzOn07MPWXm+v1608PNnl716P8HffPwm3u125d8Xic6sQZ8KrfFZemSM55SbXPJYS
GATbGtN4wMqWihrwvryQ/rw4vkFPE7FAg+d6fA1PyNUckStYd58PyXFPm/vVw0t9DprZj5rQ5OfA
YWUnJlXIuk8ylhFBQNVgAWcOlo7OtI695cClNzzPzzrzO/Qwztnh7qxL+mKEH9avHfLzR1cPRxOC
jr9NRhNwcGSc55g/CE5jnOawkkzuWc5kysl5FcmPrY9TfrzfpX3Et1Xzut7YUYCssALAwWVTwc4N
u63WGkqljyX3WLNNglqSGM7rbGp5qvKcn0SxPDbbJWpYTQMu6v5hweWiXZtE6jDlpa5jQbMMjE4Y
VoFbkSkWQaWY6cVShBjy4HyfNeXbfUzIpsVoYRIkeGxa6H45h+ti87AFf78dt0S9limzOK4YS5Cm
sGAdmFGJyz0BZZBpflZg+aHtCcVf3+1SbYZR1GqR9PfuPpZbxBFDfFQLcuuP3WrXZoAo77RnNBbS
5lgUAKPLYGIY72BlplY7etau9Ug3E0cvwwc7bC2TYcCcWso+xi/iAizWlTNd5SioIF3Aik01YltY
QhCuHny51IGKMBkoBq65ISr7y051da9L7mJkBSwHCX1I7sO68rOqsQ9fUJ1RY1SKkE5YfJlZlYC3
BWIFVJpAXFGrHP3LLld1r0vwEEMZLt73Tcbrl/V+tX96WXy+6eNLoM9QJ1dXX3AdCBCKiL3GZIIB
6DChbBqwQk1COQEvy563Dqa77SyI/mNdFkcy41XJ+r/J9z5EclV8BCcozwQ4vqCZdKg8k6CvCJZF
DgIpA6uJyOzLH0x/PxGz8n0nWKXCsBnwNCjn+67czsvt0w45a2IrU644pkqF3VumM/htrJBxBtoM
g8Vymp0+hzg0Ok7o4W6X3JEIe7w4WpnxZbPa7yqEwk+bKsutC0+oU0ENjXMaauhZxLGkOtYO3GJF
vSKCvg5PiC2fwCbE2z0O+BgHjSewDtBXDfCjDBWXEMRKM555SUQsEqwoJnkCw819nLmcJakmiRNk
VNW2W+ySMpIcrimZS1FD987/vTjWR5chSskLcHw0UXGSp5itZTHIDYji3CubZxLkuuqB97ZamXV7
Wox0n6gmKChsx7tOBSpJiGpqUBmUBxS3tTjoR2ZgWFIFNhS4mzoB9wjxkyfQCPotdwlTaoQw3SSe
uM+rTbkrb59+KTerP49b2Qk66sqk2kmEwCBImVOgI6jzMZeCqMTACPnejsd4c12KhqBneFEfKPpc
pbfFxW5zTHMXwXsMm0BGJz7jBDeBcKpLzOPJsG6g0zZJhJfO9zzZYYs9gswYQfOeNv39eXFRSyyw
NYqH8jGE9R/NBG8kzBuwHzOPlcAR6TYV3sQZLEFQsiRJ0tMbg4PWp1JIe4/1uBmbiUUzvAPEXoUL
MvcGT1IkFp13eEgnMROZxSjSE1iNTvDezto0Ki92NzKiLJkOSL38EGKewZGoUcOVwYURIqEEMSHK
1ngEsEpSFWvjFIKTWFggsIZewRQLbU954r14Zy2HKNx4scl5W4OVuVq2YORwQjrHczyLh1HCbWmJ
dgriK2XMigRsXE1pb1ey1Uq3+5GsP7hIB8nOC/e0LH/awp+jkHxJrjH5FEgyeMyQhjws+MeDP0MV
l6Auzgsc6XQ0idbReqbHjhxhRzehklcgLIqtXT+UQMAAtCMHUwPURB7nRILZ7Qhi4XEbc2dVmmId
Qfp3gXaMENpldFhoDC7OB8VjPr9sflltHmpaUcpWNTcCHo1XOdXCxYRg7rBMU1iClsUC41cTJjD8
8qw9m24nE9s13Yc6zIzU1DRYCud+0d2drg8aq4BlXZ31izzlCcXcehby/1hsFcJtMAM2lNMM1O3f
UeeuujebZb/XO2TXT8vV/SHK6ubl8RH6fQNcu2K93kWPxbKM5n9ET/vPsJyet08ILAhu+L7YPpQB
VG3/GVzC+sabMFr7YvfLHXhpd8+r5Zsoqa6FYLC7Bfy7L99EpH1xV+7vdvvmerfj15on/1vz8EeL
KxiB0B8GOMO8HusPTF4q/7s+Zz9eRxgW2h5fPM7+sFn/EQX4cLjzdB81h65votunfbH+ljFzwa+j
bblbLUGZfUvefU2++iba/YbyZHn39LK/A7JeNqHCGHS2rN/AUndffTP7abvaF/N1CQ1g502zIAvf
Rr/BTVBThzZP9HG41O4Hm6h7iQLfpz8/Xv5w+8lewbcfsreXH95Hs/r/239+zKZfu7n8V7jrPnx6
fxt9vXnaxIunYl3uFuXym2j27fEz0UBz9/BlZhf71a8Iznm7LRY4fUc+lHD9rvkjmrm3EUIt49O7
PdZjGXkn0Ur23lkFIXDiM/LOLlQNrV7djb/UekfAO5ibsIHnwySa+siGnySp3vl0WdOH4Sej/UjS
9MOima8TuUDKYQ5ClSvZo5CDpLtu8dMCVDjxobzdz3c30XeXt9ED5rLhTIP+lj36EtruR0y983VV
OAdnShRpIzu0HT6HZyJYosVyCX/uImAUt25b0/2bGXipm3IdWbwSfdgsJn5X3Wbl2l5dfXAn1wXD
GIgDWYo27zy8FNtl9Dw1fxht+lHwTijKGt0WDzCWZmquic5Ua78jkskJ2nmn2g2K3l7dXJ34NVv9
8Gj2sRKtEUy5510ZhSq2ry23m++vVvuy4n6BhwujpNHuO7fWvYvefrI/+EnShLygh7GGcZrd7GFR
vyK4WIICuH6fRCDJ78IvZG+zU+v6SBv081M5RxP+OkynqX70sR8Dc+fuzttbe5o2yi9U/Q4FYwne
wZ8m/XR5dXv5/mbq59Gdcbu7u7y2b7PTHQnae+fq8v27zMOSmxwBGLdmXica37nNfr49zQ45jgGV
Et/59P7SffAnqROCtml7DFprUqhVElBdmIY2GLda5j5WS2JqJRx/n4T9NdVz++HWXr2mKcHPe1vL
Em3qd/4RPYLE3XWEVSWkaoIukvY7s/8AUEsDBBQAAgAIAOKILkorM0DmDUEAAC0SAQA3ABwAaHR0
cC90ZXN0cy9zZWN1cml0eS9jcm9zcy1vcmlnaW4tYXBwY2FjaGUtY3Jhc2gtbG9nLnR4dFVUCQAD
OMt6WDjLelh1eAsAAQT1AQAABBQAAADsXV1zm0izvj76FVycSslJkOeDmQGVT6oAQdbvJo7LUrI5
tbWlQjCyqUhCC8iJb85vPz2gD0DIa61zk7J8YcsM0/10T8/TPQOC6zQJZZb1tfrPYDVf3shFJNNR
KqX2p2GZGP/VuQ7yu+ap8HP+JZmt5jI7//Lpw+eP3vnr83r/zmUkF3k8jWXaP6yl80WmWZwsmgpQ
x00iqY0elrLe9NXkOje07lWQx/fyDNCloEa7bph0/ZDfJQuwwTQ4+6tzI7Nlssjiyawm7oDFnzOZ
apeDJiaGcKczCHJ5PornDVgEYaEjrGNDw6KPeB+JHhOWpiMToc6nodZm58cg1KDpq4ZRD+Me17qY
vccEkzMAvEzSfK8Xxh17kSwe5skq0z5/rmB0BjZ2HWTrSFCkGxTg+KaH9IHHbd9FBrOZ3el0FHLN
/h58k9owXoRSc5Ik72tMIIS0TIbJIso6neFDlsu5drnI5W0a5w/KvbkM8wKKXATgxqjTcdMgu5OR
NrpLZRBtkSDwa5wtgzy80/5eyRV4KkzmvWC5nMnePIgXel506HS8H6FcKqH1cfa+umPHHoxt1/WG
Q607vHw/9N5/Oaucr4JjO9i/ezdX48urL/aHS+g0GNyoXkGuoR+o9kNRRcIVGFTT6H66uR5646tP
o0v/fzudLx+1G3kLZ2balQxSEEZRv6Pr77SO6jEej7yvo71JsdaEEbOsED7olQNSHdD+1DRK0O9/
aan+4zz9/kMbfvwf99MfLfOp07HBZXEYFHiHSxnCZAphUKZJOi8O9jvujT387fLqvTbyhqO+dpfn
y/NcZnl2DmO5UkN3HqZJlulJGt+C52EQwiC8k727fD7rdN7Pkkkw00ZpoCJhNZ1C3HdTeQ9RJ7Xw
Lk0WySy5BQizTWyc9TvYNAwuDGoJ2hOIEk4017+S+fck/bbnkP8qB0FMp1OLiyDgzNJG7jUM4GIB
PhXTaGoZQcQnFlJRAiGSy542hWgi6K0mU+AO1NRIiXiqRpOaU0oPagRLgTtwr12RgdgRplkWmRxU
lOVBmsOcqSsQyOLP9B2RKMTTpu+wccB3gpjP9d1G46O+w9hk4vmmRTTaM42+PaARBD3ftELj46ZR
gc1nhsVGUWtYgAJqPF9BKNhhBYL/BAUqCtoUQA5lxnMD2wiROQ33Rr+dFEAj5+y5pLDW+Njomxj4
TjyXFNaK9n1n9Ai3kEWfrIBHjEvNhXSax4tbLZLTYDXLwWnJt1iCgiQNbqX2Pc7vtGVZIZ1PVoto
JrV4W53t6+fH6Edc85VSpT+GzOz/NhpduwWA4Vp/Bm0whsmiqQpjcoQqarGaqqvhY6o6ZVkC5ci6
Tun3n1iXQAFTaflDTtwklW3IisQuAjwJwAnr8/r9StZ2Va79Lcnyfj+TebOh+8fI7/dv5PQ6Ty8O
dn/36tWZ9kaD4rBNcC9cLvvU5GcdfCxqA2F6GPX7NFkt+/0ozoIsS8IYyt5BEkKBssg/JAFUzN1t
1/rxAi0RTOuu8ngGFUhfcHbWIcfCsyIq/8mp/9d2uKsAAP/U9dPj9IcT00KRdsBG0NxwRqGTWAcG
6a7PAILRhPB7nH+Qt0H40AYh4BMcQCKA8+q6YNUA+tsOFygwFJndehPoN2FNwY5zgQQvkHDnAj8N
5nJjfyRzsM5Pk3m5ACtUExMWZpXTiuAkzADd/FjdGAfTR3W7d/EsAtWlZsZaNBsU5oU4VjOzInFA
M0zip02C1woUtfYxYYEgEsxjMXFhWQcw5WkAC1sVb6PETebzOIecssNVBGF0DdxYYCIGgCopR0UF
OutYR/snPDgyYaEfFov3sVq2BjPVUAwQxa3OsCA0MDpyZgaGxQ/PzGm8iBXdq/8hGXSjZAXL1WJm
mGRvZhQwDBNQ4CNRyEA+wg/z4GFSmOrNl/lD4QKLNDkRst+ROiNmHdZZ1BNrsz9CPruRWbJKQ1lo
Z4weMJ4qJPTIIKBRZB4MAigsFqvif3uay/QquI9vC0a8ToAbH3bBuUF4IyEhZ6puWWT5q7cVwbDU
HeaQe16/1SZJMqs02bNZ8n0nepRcLu6DWRx9vvlQDDZlpIONY8wyeUioEexUlHDdOxl+KwxTH443
poG7QRQHjM1yqFfGYwzxvFoUGy8X90kcac/w3dm7IgoFpIeaYUUYWCoI2LFBwOWhIJjB3z+g7Hwi
Xb5tEaP2hA6Y89QgILDe1bobDwYzYByVjDA/0lAykeEjhnb3m+qjUgQkLFAL6lXVgCIccVw1EGL4
rel/wpmFFm22U9P/S1EsJ0V4FK29+RzyH1N1obm3z9leZ6+3qQLJaailq8UIBHd3cTgJsjgcZ3kK
7HIR3gVpNUjV/2PIRHGeFW3vqo0BDBJURElaNmnvKl4hsHQDXqrhK7BjTAG7dST2yIIuUa1HN17k
bzWluVT7usyDFiVtemF9BzmRoCP1TmE13OihGLhdN+ZFibav26AQFwQS0SyeRA+zqAe/4slj6yJz
YnHCYJVTcL+SvV334H6xkAEBWbGbO4apvpCzusyqKBNFmEmijcdqNfZ3cX4q81W6KKrKYoGxk7Ys
F0s1cdUFG50IiwlT25w4/v53+UEJIyYtFgRHiRPUwKWdNVl0azF5dIWnfLpu1OfBAgqi9F84CBbY
2rdih2D8d5LVHLOR3jJqNUsgM2HOtPHm/PH8Nh3Hi/vkm1SBifnGNU8XaERh1BC4dRCkwY2D6IsL
CePFWcxenMX831iscul4nMn5d8hZ4yy+heqgzd7w8clncsjqEZpqi2CRZDMpl0qIZW3MDN+86eF2
Gq9KYSaiiKBKzszv4mw9h6GwV4LH0yTtVjOuujoDi+FVWpQ+F7NkcaupX9XUW7RdYKg/8fYy2Kye
gQVr7I38J7gPhmEaL/NdWVRNd1xMLSkn2mReJPZ+/zcZLAFkGAAt3soKxtUiBhoew0nfLrZnqxou
Dj+ucvnj3at6DXG8RcqWIqWq9f94PFdSx1CpyD62RHPH5SmGRcRoGgauClep2uQYbkwsNuTMpkaK
m3ssT9A4YQjvNNrZwyIcBVnFXwrEW60s/hvIXp91z96pWFFhcrNafEiSZbnUFFp3KwrqTUxYcwvm
KdAMFP0UaN4iTx+uEyiGus8Rty7cGjs6TzGET6JC7utKII3X02u8TJMfDxeVqbcCsevVFuh9HuK3
z3LgawjvbgG8GFVYwc/lPEkf+oQzUW4jHUfNlhXtqHmSRA8FleJiE+hISTjYSdpWn9wstnOOJHiG
taagHb2LfrWKuxrC0k5dTCnvRihXYUfzfxhMBdHmgaqVslu1cFm2kf9TBNEJ3QoqtlkaO90qKP1k
tYjKy/h7MsIJMzCQznjs+uspPJTpfRzCAiK8u04KdxBMGiT9BLGUwaK1Ihb+lPsivMGLT5BFJFXX
PHeStrcjqBnJG7TXdkmnfjFHwIIW0vifjeHsluN5po3T9e6GOqBUFitccFSDxZqwm9ClJExy5d2r
YRlP4zLGxuPSF7hgk58zicyfN4ks7edOIvPFVYXWi7MYo5dn8svb5MDk5Zn88vYt8MvbuMAvb+cC
85dnsnh5Jr+84gu/vOqLvLzqi7zAS0wvr/oiUH1tPxv9vlbctWiv8kR9CSEc7e6ZPMopKJpwcMpS
bYrdjcN7tQ//Lz0SqKv8W4+orymM19IEF43tmH/eLZSTgIjSyNI2FwQW91f1+3k8l9EfILu8dbPY
xH71VqvcYqRucyq7xYvb6xJStrtJ89id9sigiJRgroP0G8j8kOT9/hI+b2EFs9nD5Xw5KzYK19eZ
35Z9hmGylNGHYD6Jggt1D4jWPXu3u1Nk75RyJ7J5ivrOUHEvx8MimMehq/bz1c0Z1cv4HKvbSrYQ
C4s5Mo7egieER4IX96uUyrdmOmqPva8G9vMij2cXResHgPKuu/14BGLM6oDv+ua/2L6fMImj2qby
5maTzeeLtumyvldrB1ymO3uUodsLNP3+f49R+80UP0Hwu83ms9qrhzhIleDuWXkfqanuZq2LL2+r
RPT4iwkyMDeBvHdNYLvBjUXb3TriaFWTcFqq+p5PR4e1sZe4nU7YicJPFH6i8BOFnyj8V6VwfqLw
E4WfKPxE4ScK/1UpXJwo/EThJwo/UfiJwn9VCjdPFH6i8BOFnyj8ROG/KoVbJwo/UfiJwk8UfqLw
X5TCKTpR+InCTxR+ovAThf+qFI5PFH6i8BOFnyj8ROG/KoWT2pf0XX+ooiTvLdP4Psjlv7hlHony
+SwzGVYY/JjvrFvYYEHx/fcSzMfymU8FgZPj75M/OCz05w2L8ZO/9Y20cP2KhuIJ0F9Nvn5Xg1Y8
SE/rckOfxPlZv6NpafCjv/fGBAQDl04ONYSHGqJqA8aESRoipJRE8YEu2bZB2cYCwqZyWmhf7jeE
RY+WholSoqVmixI14VOrigtNpSlEoR2jNsCqAVdFiYlhRJbJlCWYHLAE07qSqUlBi2owDilhez34
tHBXvKy1bB41raXTWUM7RgSpp4mmLbCoktX5sH6Rg3v9uXzvBWYdL02TtHiZxvpVGNuuRmekHopx
tZpPNu9vwUan03HiRZA+aJdzmEtZv7N57cWP7RsvNF2rHZQTGB3tTeNpel10pl0w7riC26bOXOHr
lDpEN22T6rZhuwJj4dlo8O6f3zNTVReI6T6GQAWI0N7ANFo/qFE92nB4F8/Xc6tAg6jPfFO4usk8
U6e2b+iOD5+Y5dk+Hgwcwvw2NIek1nGZtAXX1GzDtVqqV79UoRnc8z1KDX2APEOnhuC6bQ5s3WOD
gWsyRgRyngCtKriGbmLue42bFkQifSRLdqEUewOd4E8P94w3ANRFyESWYDoxKdWpNzB0myCkG66B
PGb7HkFuG9C65N5UPcFSfV3qfP3+m+zcbpxTxc/lBO/hF4SSBv7yGZttuA3mD8yB4+mGo8aeEq5b
hAp9YJhAEZhx20ZtuEuJ7XjLtipOYYXWHk5TMraP85CDHc/yhe85umtgplPX4LrjDojOPM+zwd+e
x8gBoIc9u26sQg04LKaaUGEegUsnBx9b2oJXOEww8KdObAPp1LIgcm1u6R4GwmLM9gY+PezYUu5j
7i3P6JQI1TTnAk+DHfLNQUJxYEAKUE/V1LqUox4hAM80YS5R39VdFwEDYdfVbdc1dMFsEzHXMxBW
DLTKUjWXzlXvii6TUIs2damDTFFeo1gZrGQ+kJMVrAtub9ULDLq4p3pi5SXXogRzBMotF2AIqkOg
+LplYmp6JrFcR3mpfCvT+Yd4kgIHn1+XxZW/8U523qan3XttZ9YsYzzct4wzqQhL1SgxVPz3PbJh
KcMAM3zEbGQzG+aObemUc1M3fYJ0nwjXGdiEQ/RWvNmUUtPPOWrRL6ypLPWr14KkMlP2bDAQU2Ew
qW8QPNAxZgOgSiZ027JtHTuew5BANi2osoJhT1IdhwhacJi08EN1hOfzZAELmzvwRTGupFcwt2Ny
QT0M3rCEToEAdXNA1UAL22UDwzcd/2kju5F/aDw37XX000kL+mm0GcXNQw6TxTS+XT92b+NOWFr1
DNTDFMygA88RA9/SuYkgAQkwyHEhUyMMg2wS30e+X/FqKfb8UQU1nALhfZxmGDS8XFQdl592LoCp
3KPlNDK48rdtUD5gAI8bHiQgamPdMhDVBy6nnoDcREy27++Ko/dUVL28bqxBtwJjH3pgmA0KcGYw
25KkjA+jx6FD8Xeq5r8B2UrRN8yUAQQtcQG1gy3dotRyBTIFYvhx1J+28g8g351QQx8w1oKeRQV6
GKWPxfNn8XaKCRUMtosc3zF14QGTU5U2bQw5X/jUMrjvGowZ9SlWk1LXL3iL/rDpPfVSDfnF9nfj
znqoRwl0LD+o1IghU1Pm6S7mNjgRUo1luZbuDmzkmR6xoVB6ylRb62r347qxbkM1q28OTqhoBG/l
xSDrB7xlPXs0hBAWAjqD73qKRC0hLM/CXEfChFLEtV3dwZ6r+9x0XAcTmzj80Vho09NqS7XPaHjA
3tGwZuvEaEl4URQ1KpjNy+e0rihmJxOUip7KumChRzzGYDZCkQipthgohzrwy8EO2CvAE/RRC4dr
6e2QN61V3BSF+7OUUqjA13E+l2EAejZxzi3eYwqqzyHWoYplaiVADd+BFcrA17llM+p6riXsRkar
CerUtU1aIITTA66b7jY3urx0IsOEA6iBbRv+YIBgwpngPwTZzfE4VAvccSxYwWAfiSf5b7d/8rgn
d+fVDYpQi0FR2Ij7T0u5GMSpDPMEFo7d4lWXirAtFe0U21zYAwZLQJfolCEoHvhA6CakcN9woMq1
Ho/2mvR2M2qnNCyIWiyYThsWDO+CtKjYDINAPizJe/1RjcdgoJ5i7+rccx2IZx9yvKdSkOX4FmfC
MWzzKcSzVnNgLMrGGnwDtQyAgYxNUJdvelyHtFDxbDHDtG3PgnLcgXKEEaZbngv8TWwBawkohw3R
mscrohoQWBsEsYHgvv+qtsh79gaGBSSgkojPiOtYMPAO1Imw2raoojmum9hhJuWCQf57dOBVBfs+
DZZ3cXiA3zYvyMjO94HUjcAtRjAaNZLQ+pmW3o9cLrJiXu4qeNcfWOb/83Yt220cSXbvr5ilN4nO
92OZT43mSGONZXtm1wePgozTNKlDUu52f/3crALAyqoCwO7m6Y1IokqZEZWREfdGRBasxnZM0Ek4
lkmgGWEI6MhJb1QU1yP4dPBllaZ3NWqo9YKDWXduYs0fu91h/dPDw93m4W9nFYxgK6ZWnNa10cIn
UWAgAT/hYMDcrHeOWDh/IQqXsVzflOMplhUZ39EosWFz3oEP92eDwrL/8jHeHbr7c4qEMdd7a6Vp
MhQ+2lAHNkeBs50GAoDErkQAWK/TTWfy7sOyxMPth6M1zaRoleB6QQk5XYnTS1JHdlRErKkv7AhX
sRWDG7HeZkJjkp6VLKwwr/Elx6GvWlEj8nbdzUXe7syJKfzt6/bsSbRaKbqqbEvJxASv8imZYfsI
RdaB4wijDOfFJWaXecF5uEaIHTVzIXaCnoV4unt+AaNsAEyGx8Sil4SVAPAMrk98qj7NOjg5yTR+
tjF6PEw7v1hACTs9pfPv6pcSj1lekA4bQ2C7B4B4AVQAEYCIq0PV2XnHJL1qeBhxealwoZGwk3Yu
4d7xiWVtYZ/fDsDrqxpq4WFX1bhqNkELIAWwdFOzHYiz2CAAN8pIUzwL3L82zfDz+8uJhZ/ff9eK
J5Zk3iwkSc6AtXzO9Ts2nrDKnItVBQ11h5x+r8teVDCeI2xEsH1RvAPRBylJCjAN+8YZ528GkFcD
5JM8F248Xp2ovV1Se38y5r6C9TmOY/TJkXFhXYK7IsFmOLIcJPHeF1JCTpmymHL0b+fIGiHGKkjK
58kP4IupHztPM/A0S3n9Th929GqMs5WQPfJ3VBrYGWIjohX2iYB3q/66pFIoD8B8Lr2aovXTXGFp
/fVWHbmgDpP6tCLl4f750/rxqXs8L4iyPcTjAKnOZ0kkthB2DqtpHAPbSyVFYDxtS/n3kbIG2EyF
/q5VzixorOwZIf729dcz56mOzMtQeNSgFtWfC+wnlwDHNQOTzli1HMske3YeoZ1YLzxqqfaTPf+f
789ABK6q3+OWmt5WhMazjhJmomH5QmIjuEgzKcwGwRLLSl/P5MT14+YSjhrddhZh+c7z5UY9uZCd
rB9OXVovQjUjWXeCquDKFp2Tppwo0FzsbQ6/ZSr6jQLhnkdmRfqn9RquNaJqsbASYCUL2Ynul0/j
FEtdEd7HONaviAlcA0RB3hwgOZwQAbVJ+MeFSEti1PLXJ1g+Xc2wfPKtEsouKXH2pTWHe7jrHv/8
UjfTVWTPqsUCSRVVEaGF67GaOmICAK9U8D0xLfOd6YCtOOslcdbdZPnf/+C32+5uaIDB86RqoL7D
L5U1KBaK4ZIUW9MLYO/whxrQhdKoFVUaW+Y1T7SZ6FICcHRLo4xdSMHhw27OfsrnUypC9rDHSu4R
bTUBI4BBFM4rmywkK6s9A/1hhd8iPeXzRYxaGugj3WaOUKXbspMvO6aan9b3u7qbT4UJ8M1j3ol7
DdfhYLXGVspJFbFAEETp3AM1V4K9lsRuRh6Lpuh+TiAVY6xP7eDm+mUGd7+v3Nk2+1Q1VjioaAlz
ilYvB5alEyM0cJi2gJsrE9zaDtNIALo6l0B10zLFj+u/Rjzsx/Xq+C3gWE/mqtcdCjhMOseBohGH
YY86Y7t4xYgDhOacZoanNF/QMZD603QGXL1/rtjoTx/X2x8+v1xvxDebeSJGWXYG/uOvUQIiHBCg
LVGAfoCXUoUwIR2ClY9A3VIbsL0CbjLJQ4+G+a6diS1Mz8+mtXn6bUVP04uedOTqPmQEywhYPOBn
EnQORCVVfIiGO67buUdjtHNzszC3WC+g41EN4YUxZiUjsAlIj0LcFhQPwCX4ECsNT8E7YVi+iYNv
VA+aW1rpxWZBejtNncS7h2+79LB9OkkOHjtUllRJDpgqEeoQWeACDQkBQUVpxzO4mymCvoqTnGa4
oMHpciM9eNNc+o04Z4XLw9Pdn3dDu+fZ+vSKy15wl4LlCeBVBmBZBUiIXUtippwWV3sfJqnh+WiN
MFs5LyOoreInJ3L0QvcPz4f9Hy8AlfZFupqGlDakLCShxQC7wSoQR0ohURmbhXPWxHjNvY0HbgVb
L+yO7VqfBPt2/9fD/e68PdSqritQTpA2K4JdWBO7DtIEJUmEQZYQMqiAWJRmPFojxo7O45TaaTkx
tcFS4rjgWI2O9QgMP/qqv9UZ82PL6trpIx3Ql1eIwggBNEfs5Hg9gT6f40LWdn5jq5OeBw5Nq9tu
agK/HHbdw/WUXTSRa4bVDlrV5iU4bZ4NYdpHn6oPKPKqSuMplnUZ3zFWQrOFrI1mTE9aRT6s77/4
+/XdH0+H3g0MlaH+JxRgNoGugc77WhkStkYdIz2hsKEkFbibUW/OsMYiXSDLoztapdmS0mu57/ZL
Xx/4fQXHFYjUncqtESIBLdUyGBExRLBJHklOEZtGZwnGc7WaPt8dmrM5OtKi204s6X++rR+f/z50
F7EBjcqaUOlrMTF7o5kmWtT2jQDYHGp3njQ6FJ1EUTZcXYKXwZcf5sv1RnSxFwui76cANNZW1h+7
2sLWPR572V7KSYbVfCRVFvhFGQISm/BkLcKywz9UMlN0EJql8KposjDXhcCycOdEu3mM0datJ7vj
XfdwMtvzDmeKraQbTCZZaxRDcDQCilW/7lgC/CjaI4AWp4N7jWKjaS4kHF9uGKth3GbuqeqHJ4T2
7f5s6tz1RbHAspOGRGPUkEmAaTPYVlYZpmULzRf8/4J5m80CSjI7cS51Hbbfas7zpc6k8Ozq46t2
bZ0LDDRF2NqDluBVbMQ/BVGRJZW4imbaltSM1kiyU25Bkq28mBOr9v6/H/x/jzJiFIS6Oj0RhIoK
gciUWNMtovK/yIgUvHjJUorpNnarY1+GbfVqK/9WLcmvTk+ypg6HNsvD/Zefnw93L8BnMEWfaPLR
erACBE5BjSHOgbk6nyPcIuiDn3RYXRhyLJalm3mawtKdnXQqNUcHvhdc2t6psmOKgsUobCmB5GAA
yiRNxMfafWiUpZ4pH6m/5lnHw7fi7dySeO4k3l+6P3778th0ollE3Qh0TgBxqy/KcKcigR07G+Fm
gy6ZLsoyHqsRgrm5j7dsy09C/Nen/O6lONKTTMt9MbWgHkSuRSWPZZOAh1FIz21N2sTyz/dDNYnI
l9lbobdiSejNyd7elf+rte1u90LvejPDKooAQEtozbuCYVG48iIJC5E6Uawx5o1y4BMJGundQhtk
/fBK7eI/vjfcgtzUoNT/UkkaFj7XPt0ca1GYSw50A+7gVHCgq4hYwf6LxYrxHa0KW7qgQi0Lb/oF
+PH9p3l5XkeXdQQm0bzUjjQYj8/w4UpLLxSjgRn/luX5kRCt8N16SfjdxNv+2t19rWFTrOpjlzWV
LVTyEpyI0NB3lnhWU/aRSOqoiqnIouWb5I8x9YXUMa40yqwXsvH4cKrM09eu2/66euy2D1/uDy25
qI1vQ568/1lrKll5B+dGiqxZEF5bKkJGNAlJU2ZjlCq/hZ6fe6l+XBKqYTzT2yZPYMGDrWtXcYNS
Pz0+PD9sH+7Ct/2+e8TC1qSpFH2BAvBBRUdSUhWj1gKFkYzkXKLKggI959fgoHaGZVXae1o91H5B
D72ety1+HpKG53qxZpWv11iluNGA7XRIHAkAOzBkFojkmXrnE8/ZvjKdfpzkYkL9eL1VwbIFFdw0
c/Ouu+8G4rq++/z88IhoUCsDvS5iAAQ2Ws4kdprkrjYHC01czIXUNBzYvlXxtdh0NtUljDq7sVFt
s5Cet1vNTnHy94+HpzNaVVr0NVdQHMaLSaR4geUoNRcfQEVtQsQJnOUYbxDQU369u7mXfu+2GGD5
tla+Rq/dQrMuPjxX856+Hu533377eo6kzvQLRB0wuLGF0AIvKIoEK2IaLsKkAt6peIy2RWztSGMh
nNrMH64zeop/17+PGxgHg2HYnivYTLV+yUJKFIBXqVrj60sftdJoGNXSKuzzG2TT/3KrfXF8R6MC
SNlcBbvuZj39j13fp/T+B8R0OvSZS+PqI1UmOR5LJtmwmq7Abx77FWBFJjwNp40rN+PjcfDL8fx4
QyP8ejd3oW7Dp5XV9bfd4aFXwdffqv85KlB/VkjiTZIFpk41D5UqM4I4EkkEg9YyUYrYeVODfuzL
8veXG+k3Ykl6OXWcsygyZCz4iq9MX5HkA0oJHtI7SsDpBGI8i8SaUtMWLGM7l0Jf1/K9ON0r49s0
neE2ZkHFvdJ9Zqi1Lv9zhFIMoWFwqMNv/SkW0EAXPdExgbJSBbwYOSeUW+u5MnHYsa/q1MEkV1bo
59gI3ycrZsLvpx1Q6fD0F/+4OTw/njf4sC5DaycoMgfTUKI2snHAEm8oIyXlpIJSgt6o3E9GX5Z+
ctNYizUY/0yL9X7D5zXv4TzgyvUnSKhcyV4BIRkrcJApWWxubAZio7Ykahc4pypLlm7lIi8cC4zH
a424+51YEHe30H86HDAaarC6t5SkHQ+wdlLbnuCIXG0+5oXwELwBSy/JyFc2DF4+XXS8OBF6buYb
euz8baFct33udn0F5owgRmffpNCBBwFeWhvoEOFIoLXZlBYmaj8dpfy1iG420WVgN7t1rNxGUT5X
Dh9O8d1LyB9Cej2PxOr/O/5Z/+oL5ZZxlQDwCqtclmv4KYS9UmIKmCkmo/8d2GK41mhqFsJ5/XDh
AM4ku46QYms8sX1OKCEiYv2Y5LVhrYCElGRJ9jEBHCKiW/k22fuFGxt93AIy3zjNT2y3HuE8p49O
x0ALoyLwEkgSFnHExkCc455kpkOKgVJPl4tVL6O1QiwAjM2WugWAkdbP676kXXe0ZH3tzHPnlXSM
aFabgA3is+WAb1bmTGOtN0Z5MzTXga+c/cTVRuSdXrD43c7tu82xwwZ89PGPr88P56cn+jbguoeD
ilTB0xCITeuhSw/7DhAYnhK270VkF44VTEZtRdrNuf+mY/uFXtenk80MiZxyuOs+HJ7g2jlcek8e
e4zPEvfJmEBMRcOITNiR3AF+JuoF99ikLL5dz2gry+VjHS/3NOrv7TwUb/ZOncqu8d37++fucb+u
spzWhJlVzb5LI6SQmRG4mmOO1lNpSELwolz6rG8cR/hHHE6fInxNr+lM4FZfpxf07Rtme30B5we4
ec5HH3O+gK0pFEGkowCyBtvYcVvLzSwLnXV9ScK/yCSaVFUrx1iFLbXzNpYt3ZwTtJ/uv0zys9w7
ZirAkHXTCJ8Q+JhkpHYIZudZMkK9UX72PHkjMhPzBCc+PB8ATYf1l/uHp+fD9mP39FRf+jE5e0H7
Y85ciqCDJODJsDelsAaxHgRXHt6fI467STvM9XFbEXfzELXlfAqPfK4sra8F0qFOIR03kpNi6zE5
qwPxUlHw+8gtA+EsXr7dZvf5QrzKjS5cLOmi5KTM8Vv/Qq5zu5g59XgoIy2IcdUJXEfICCARGExf
ac4E40abqy1s43FbuRZSC1u+OTdg/fS+lInpCvBH55Kvr2sBzAcjIbZoPF9hZEH4jILKNzLdl9lb
oTdsSWg2S85vH9Z9p1ufR+zf+wCPaI1HwOeiZkRUJb8OBuIEtOMiKsNu2AbGvBRecamVs9MLcnZm
2rnYbQ/glOciUv+QAe49yAdJtZYtCjB+sDETAAQepIki63C1Z3E8ZiOUWWin2ZpZO02zCX74fK3I
wU1kPICAGFtTOjYl0jdIpagC7BKwN+m323Avslw49fl5CR9unVzwd65uwM14LXb3T0+7l1ZiVauM
fesQZdY5ZwEeat8f05EA/CiwL1v3pjZMpGvrMRq3FWtp/zk1zYv8FGNzWkzlHDh4hautAaK+eMeZ
kAnnMdjMWAD0eg13wrDLDxEXWjEXqrRbt2MT97V+GpVoxQklSlaqUIWwUJMahcE+PDiD90wZk5Oz
zWHq2bM7j9qKtJsD1+2adQsosX/H4dAPhqVasZqyAIpQK2H7U49Cx9K3T5pU8/GaBK4FUTolnSFy
sOmm+X44TnEZeZ/uaJRYLxwY3K7FuQH13YdJddTQpECrBKHS10AA1mwLgxfTJXLlrOLWvVF19MPC
Q1+LpYcuzmHsx/XusL7fdpOQUbJiliZeX87SlzwipHaUxALnEPravXijkNFKMBFeLQk/dccNrzhn
1AfIGRAyfIk9gQfdBV+0wfnaz2WF1gWcPl1/Hcp06ImACyBhvZ4Sn48f4+e+6Fn7adWQ6gdtLCFD
MqVKPeJHGYh4jW40sGJiQdDQr/EIdewLJ3dxpZV2u+AT9pIukN3SvNOgT7rBWKvYLLFSE1iu5Fjz
B5xYYTnhCf7UqIKAcrvcfAvFt/c0OtQe/qkOO66nTVpNgBrqpsdWOiZ0f1Zm+KVv2AowENdncHVN
TcPZsSLBi5Nl3uukbxwJ/YeC4Yss184FTVPV0LBbUNtOc3ixXH2HA1y6U/XYrQK5rJWzREBqwD2z
jUr7nN2NSsIr3uEw1rW84v7JTWOtO7GZl+E7sWcTg+1fjfX5j982D3e1Ja9/2Qzr3zTDhZc8KkGC
A1UTFrq6nDmREZiyHg1T4VVlh/EMF5LcoztaHfZ8SYf1xIfdDye9u/NbBU5R2apKKURtlNCaOpWi
IVoJV0tZHHAiZ3AKRBRVdKLNMYp53/jiHBNp56cEOsn3Cy6i7zKuXs329jUkxLBhuPQsEMCaioJB
5YJOGWFEOqkk19Ldztv0I1/2DP3lRmq5UKvqpNSTFt+vd+vn/cPj+V2SRp4q/Nx5R1UuRBsDZxyF
ILbCRh2FtzbKAOBz7cm2I7eyLbSSdGrWFzNUAZ+Pbd192mLURt7Dd3Z8w5eh2akQsfbAtMJpeGAd
I6Ge1dc9eCpuAIrx4Beo8OiO71q5uyVlpm/G+fp4uB+l0Vaf6t+9Mxo6K/qun/8n7tqa3DaW8/v+
ijzmBcrcL49ztVXHrshW7DpvKSwXlBituDp7cWz/+nQPSBADDLk8yZZT5ZJoAJrpHmCm718nA4KP
hA50OETKRKAyY1wXaJYEjiYbonuLbJgPNS11dAFu1fw1gmpgEk4Kx1dQtp4m7CE8UpOw1HrELbOI
aeAyZs9yVVAfgzWJZ7KoDZuPcVPP09h7pf7ztq7Enacfs4KsJUmJsWrlBQ2gpKGHSgSQYZiHl3LU
wfFIg41vnph/ouZcVW7LuBuUlQ1ee3Jc6C+/z5z/q9xRz62lzqIinWEHYLgGA+ICtizIM5MCbSt1
p1FrYhplM4OWS+/Ebb/58vJtnuGFJRHiUBpRqvI4EclGEDJAXse1BfNfSQuKnZGBSy8MuSoY7Bcz
zRd0vHdTk8pa9PdHHf9w7k95NGYy9FIGY06zBAoBpqSRQDrQhXSntSWZEQ+Hdqy/3mqsiopbsg6l
4MUTcNdzf/+f2ELh6bk/pb6AEH4HFvsIOxBTcpQyIMAhJiRql054+COB+hk8XLxOXn/34ZdwqAue
reI5IhZsrJFFhg1bYmD80L/sN58vOVlitk7ZAIafclgIoJAXAqYHSZGy4KgJbwh7UdNzrkRm/kzF
9cY0Xt7GTu6C2z+xtvxUWWlKcUwCiS5NF0hO6EUSnUNbnGosaQvBc7Go6qxGqee3jU940+t1cBOr
VPvdHpMNV4l6GUtfNQGrNYCZzT3YrxZr94NOiOvkhaDXJupN05wNbk5P1Iw0Mtrg4pTDO879zp+8
BEwdgVIIfOTCgJ2qqCiyhCDcHgWlRGXBdGQhLnzz9WgVIXcNUbalYuk1PGvoaThgI3ekQ3sUtiJ3
oGZk3qFDhivpVHqlZPyykRf+rW3gbfWwlgxwcelfKwlXGPt6etrd7u4LguHobtO21OsnRb2QHbUK
FDpEcXCwtAWniTNvrfHsdWCsavwL8FjVcwtu1jId6xEW3Oz2Xyq5QsqbYKXYi2atQgaVgmeNWL1Y
nxO47oKE0wRMcc+5eQtF6f3+DAgV3LipyacNnjACUTlmv55CnQRDusQkWg5zhRmomGbfOWkKjLPm
IByTThetl4ZyDbM2SeGL5b1/+LTbP02FaJNX1nqWZba+S7GAxfDceW1NF5lXSnvYbteJmzL+qws8
p+JMRunsiZrPTYtPBOyfqu7729204AdgFstYyh6+HDAY4IBGTx7WsHfJUBcEF5oFsiq7n8apCOjl
2nW07fVyoR/AlH861g+N+lHxPhwKkrhKHiwU2JBcgH5ErUbnUQaCgvZMY46Nf4tPuSpjOg81OT1S
s6rXCsD2lm1aKSEvQ/U95UCTQ0BJzR3YNBjvc4qLDrMZQJMC9crrfwYd/DIieEX1LV/7pbebrTpu
Sv+D+3gCr1KsfCBeBEYNU50sODFBRfj+QfEKcFYalWAXOPUXZVKf6LupOVhZz5aQU6rBD+6DC39b
MSYY4wZ7GoBN5NBCAEmaQZkE/dyRwIxmlP9FjM0pvKm56NesUaIWW+pQY/L0x/7581BVP2OFiXhH
R2hlMSZraxodIVj+kxywyxRseUNFJy12xZCUZfX2xdljpu3HNYXrdNzpoWopQOVoLAWbUhs2D9/+
2IIyf1KadEEQB00ETukuc3y1Av7wXplOBCVzhH9vODuTyzQfbkHJ0KCET/BFf57ATTCp5ZBUxZP3
mE4nDEKZw+fV2UxQ5zeJiCiIdqE+Z/9sgJtY0jA98KJaVh0dwH4/7/7lX+0Bb5gQ9KnQpH2SzHdW
Y/EaqHBgOQXX0ZSYi0yoaN7Ep3KEG/7+/WU44u/n8IKWliyxBX/07nYy+j9+Q3S05kmlsgSTmmDV
LUYkDejHYLGIzhMugwCDyvv4F23oJZU1i2uFBC7eTd/PEZmINlCPnEEJAYcWw2oWTksyoYRfnhih
uY5GLYzxxWgVJcO6BBUuDlPgr385JQhSg1+PtRaUZlhjQTNoysxxhOcEgzUFIqxXMuZFufBpjPnU
jJhV5N4yqidt5fev9+zUkILZEWIrehcViqCYEWWJJQLCk9EuS6liBpPZlUyPOTrobJyKALrWUEEX
svzoD/4tfvywrCqSYDcqsM1heoLqKdi1niJWd8rEwZYmzP9VIuNE3k3NwPp4YFzdNfJAilXSxh/R
JLgoUAfLBpPwwDxygpEOLKKEDRgD4+S6ephXqmEq2vm6lh0vTnL8u/fLpKWYMHMKP0SZ0ZaHk9VG
ybvMlPWaOadegZ2+PgI9Tb4geS2fmeB2WQAz9I+bz6U6gb4TB6SUEXUtU2mdwd4ACPHDVaZg7JjU
JYTPN8HCfuJvmMR6JOTcmXy4fVPz02JSL+svfh6+PjwPv+6G/z55vI6VYkUCMtQyhO0MVlqhq7nz
wueOwt4VhFsm+VXpLet5zr2+5XM1V/1aa2TyTizCFGO7rd+fEQpp5EbYgx7lok+GS9lFkREUgyo4
jILoohI0KipDuiKxG8c+v0nw7k1NYGOPqBWG6/fD7utdf1/jGsvIleSGdsbLhPnS8CoMbO0cYKtH
MAh9vKra9jD4uTLpcrMiWpm1mGGGLMvuf3k/dzSN55LgI9ixc95LBsSC9gLHEsIxeyJpl5SSPoJU
bCIirWmfz9FmYP5ExUWv79Zc9L05Wk+4dXa/DSehxTkqf0UzCVyDgEC8FKy/dwoDQGBNSV4A2L3W
yzZGi8EqQjbmdk1IQfA6QBH/nD++7J6HCuKOaAOWXDSdcujiIrCUnnnXgaXjiHfeuMBrEuphKgru
9FpJY4OZdPGnf9zDP+ST9KaqhD5iAJFpQW8BNQ10YI0ZIlKHTilrNbNYXLJYhmqgm3q2oUXCdhEy
v8W2vlPCjyplA0yIiL0KsnJYouR95+Hj74wykgZ4GyZdjOPOh6xJ6vmapC0nd3drbFaE15h7BXzW
KfroOydZxLR3eD0xiS5h3jOnJI6tSa5DYy3YHefhWPH2TU1jQxXa6inR/bsfflkkrAWgR2JbG554
yfDB0gvckwy0Kqq8tcG/VcLaL42l3jYUV1D15SoAs//0AhL+x4e74X7RpU2aQI0TZZ0xnO9TB7oE
6bQFNc5GChuWXrPiyznOI4/Nn7qpCF+7s8vFs/VpJdyP/2B2iY7FadJw7JyEMXJEcVXYEyRji5AQ
vPIs6ZT+b7Uip/sLHkyLh81xP37rv87UeVKabIRIMSBu0D6Hc9Bjz6AApjnjCfagzHQRFZ+NUc1N
aWP9KLPn+vb1oBnsj3gQ828CxDaB/wIcUOh7hGMRAYY1fBNZmSyCpiz9U537qple6d1XPVvzxzYt
/qa1RQCFT388P/azFM0JSJI4YWlAXV5ITI6Hgw+MOLDYjMMkBBDOy0N3NdyCmLsGMafeS3e7p2+l
QdjRdiIl9FY0pqCFtUYiArnDOi0d4bxLrgOzMQQD0iHbtjemHrSmZ1hbPJzZZe7MBotDv4DiW6pE
iyouDFiGthQ94o/SywrEAdepo1ivh0ngeDoY9CVIMLpzAuv7skZ3GPwCbOlCuwZSG0cZZ6qVuV9S
x3bHtGc+IscYIkx509Qpn6nAQH1GF5PAEy3irmLM24DF5ld/vdVUFyCK5o/d1BzoFluTMRd+/fHj
h/uXT7v9okPuUcJIwrFysovcYRMOLjuTSOyUDVJLZYRX5I2aJrQpqbhR646GcHHLT1hdbGGa6hwV
4xTDRh6rPnVGMAMC/0uDSjGozOibQXW1DkW1bewLzVr2jfs1fB/RU2xGTyGc5O/GXAvhXIYzGXFg
0OFBsgXrNLvOIpo5BoeICFcjF+AsF7AL8HbFgd40Fl1vpkX/x0v/2O+fd/vh1OQSD7wsqLKw1KQU
2TiGXangG0pCey6Nipa0q6qW4y2IaS3nZoKM+9pvPk++MqPlGMvCwInIeNiCXc8RhtswIzuaQS6L
lAQ9A5s4G62iwqy7zsHFfjPF+F6+Pc3auHI5xvioNAI79rKSMwDSFQxVyruQGGPGEq6XiDHzcWoC
to3T3/Lbk6o41o/WmxnkOghzCwYPprBzSxTWcyIaj+E5YM18frP6htn8FeWNmhy4iMidfGoX8vPw
aff0/DjDYx4X0GkSQQ/HHmt4sooIOyBQ22XhLfbITlbR/8eGITXZNdd9g+t+pSj/ODz3d2PtOjlA
+YJF9o6P0NiC6ID1UWA4wX6icBITrFBhMXoiGGHiDSsvj5Scy6QY71Y89tY2eFypz82E02PCf0n3
h/NsxPJyyTgQpoj+bbEQK3Yefe7wlYIWnWnW+u2TJCdyLuShLlL+Yd+tuz3gxe2iguvb8+fHoT9h
MnKD6UQFTTVGBJMOHY0gq7jDMv8QSgtPGlJKsGsuVnFVI1ekbUlDad3KZYh8odPQkiuJOk3JldQE
DGMlsVWSxRoz0GhkcKjRZLAQ4CALV6GJXKHNnNVkhLLrI09oskySWkDE7vKuARFrQY+xDGSB5ygQ
sivWTwQz3/DAFfUh5GvlKU5xASkW7lZsbPhaIRN3Ytmt/m54+vL88O1plj4Mn8ohtZyU/H3uFJzg
sB8CBpE5icCONLYjQqkkk2Be2esKJspUxx2CD5yrm1g9eFNzoVqsLdMxi2QI/bfnF9zzY1TUFs+o
Cylk4sHQi5ahysA6n4XukoE3BLtDcv026VMzCi70pD48UfPYyAQQA1s6fuNuU5D0Hv+oEsDRBywP
b4/ALylYFzy6vyx2p6bYdFZiPm2iWto3PM7X9JzDf1o+V3E/tPbglvOVkXT/8Pjxj/0GHd/2AJA2
vmJsL6ITI2BrYoYcKB2djaVVALdwy8Rs9Juf6RM95/bp4fZNzZZo8WpWvGKP+A/9frgf33FpZGtV
0dqTTiDEwBDElB2NCjti73owSIR20bFk3+JznpNwqZH9+MSCSdtisj860x+Hrw+/DfN8DlGcdpKl
zC0a6BFTNnlCU8QiYoJ0AYSCFW2FejnegpjbBjH9sg76fIq8lyw6hPy0LAZsnKlHdGNvrI0K+z4F
ekXRVYu0u9aHP0x5lB83j8Ow/xlE8KnNnWDqnSg1ECoHjaUGQmpsTmZJZ4XErhJwwkVJjcyLZIH1
cDU1w9oik4ywRtpbOciKBBxDUNi1UoxCUGtGvUMcOTB/QJsGA81wOHeDjDpI7DTl/Ksn0AWYmun2
TUUmW28rJUzfsIePSMe4rUrpQdlYByhlWDUC0roj3IHw47F00wXVKSLKBCiG18RrL0Mpz5+4qaht
KLpK9P3iO60cgYxMcjuhpzQQ+EqToofMw8wz2ILCSpUzRs0vfaVnPIJKqwZZdrtqn5enDrkaE1qK
UnH4VXBnvYVTOXURe0hyipUCFM4w5mROhBkX1StfRb7YJne6XdF+24ilqdt+gmW6//Nr/06evKro
mYIllBa05eww8QZbzTjE2yQRmOHcBRJSvavmg9Sz96ox++3UB+H3/vGUBQSCG70bnBGdleoYNj3g
Ef3nEWbXBPQUI8GYD4uCitkg9eTrHhBWbYelTP1tV8pAM7z70Vji70bHY/l7bFkFrye5TjCErSDa
dI55CtuZgS4IB7W0V7kdjzOcETuHu3MWtF2n4cLFW7Xqkf2MsXCpiojEv4oeBAegpogjjnUgoPYg
dAUiFZLIgzFJWf5K9v/zuSB4uVVTuq5StrpfeXnRtr0bnkuZ89OmLPdojY9OxWQUnOkENDaCOBFG
YZv1UtSmkgJLzoXrIviIFxeP05xf89VjFUuteLju7RL8CLl4vp9CsCA0BSnJVMGS6BI3nSAGlG6E
QHJwuMKGV854pbVi5jXYhWngmrJ14SBeNKuGjh9fCn5Z6ecDClSxcsZfBdE7IZCBQghvi53gPdCn
YLENYzLBYcleSe+Yxj/Xw/Fwu6a9b3zS/V1LxB7V0ILDtscvHIsgi66Pf6OwSpTSTFwXNZqbGhbb
YbQzZGu4jyIF46+OCCxme71vwfHJmr+tafC3XYZr3NPT8FwaGc/sGDEWCogRG6P0gTeiUwoYBOUG
Ez1BzVGaWVB/o1Txuoj5aqYzcc/Vcwu+1mEcfYslgfyVfmbvkvuA3Y3/XjgctQ06JodFmngiksBh
b7AnIkhsk4zpohPAZbQi56vc78cZ2pwd797UpG8a/PAlZurfP4TDckzJXvhuEqOgYaouZ8wwB60d
7GnYSTZHnrnyglzXuOk0epvy0/2a9oZxoW8VW+SG7PbbyWMvtEZlvjidnLOMqdgpERFVXYFgUJg4
Exw2VNY5i4twMKdha6LWKKJw0Sy9lO83c0xWZconr8wh6yKl6BMsq0RQe49NMBjmAnOPtdsRrJ+r
Pvn5HGfOpk0TkBUJbn0WZolX/mO///QIBtc8uM6iUZ47XFfMTPAeNmwARYaGHAkIg2TEVSlcx7HP
iN7D3Zpqu85X0hu6dJ58GB4RoAGBhuat7Y4MEB2DiRxbzGIPaxdhN/KIPbUD7EzvDBigV2Ebr6c5
4/NdP1ixdUe3a7bu1BIsCwuuNvcF1fuQDTg26QM90hssGsQGxfBCckRvCPCTQDAIIyzR6dWoTPjh
fO1U+KEmd9PYAXd3tFEf9ul+jB2Na19+oDhj1mqPtfLYfIc7TTuPAhpEmkSAHqcD+1+HkcZ7NcFr
MDK4uF0qbT++3D/vnh9eNp9XveVQaz+U34w/cB9IOBQR1AL716FQZp3zWSJ2LQUbFewcd90+OD9t
tSGWj9UsNmqn9MCX7+SnWNINRj6KGZITNjUGyWQK4i5Faw00iwwHUgKtiaj09hGxn86Ej3+q4sZj
cfCKp1U7l78Nj7fD48MTcjYlAHmhBSYlF/cZNwnejZOqSyDNMKMhs3TZEXwctE3o8W5Nrm5si2FV
NjmCv7zsd89PI/TLL/sxn7zGfTFeMsu6zApYv0NoHWY6E8Aw1SxqItnruC848gXQF7y94EC0OJgs
gfuCKTAh6qiCND02VRMpKiI7SRFJXQkKyy1il0Lm1BtCg2w3VZuPWJPSKB8yjNwqOZLycPtfm1N/
LFUSBqKUURqiO5o95kWDQW8pECVE1C4nBef6oqPgfJSbeqZNY3qqZ53tvz7sQ4W8rQjRE/a2xfOA
oXtGgHzkFpbFY1dzMPgMBfMIgcjOtbhfjFwTpnWDMDOleIbPu/3wNPzHw5dhv/vz5EukaCpr601Q
WCRJkLIAFr7FjpxCSaKphRWKC59De7iaojWaBF6cWgR+HhPJu/5pfyqEksV6LG4Ya2hMgqAbBj91
hRmzCfslBOMolVGFuOjYvB5xQZBtEXS7kKa/f9u8O5xYoGv0n4avw74q8I1WwXcD+mOK2AkKwbe8
jLZLsAVByBJK/eXyytXo54o1Fo8tuGl9if20vCsQMY0bMkeLrmyFTccCRkkU1vzwDo90CrsxSLHw
bZ0HCsPpGivK6XA2cvr+30tiHhgSB/g9bXFjlBQMSWxJBbPYBQ5OB90ZGzSWrzrYILCHXgFrKGOf
s8QXSXlGraH08OL/9HZtvY3qQPidXzEvK7XSSQQ2EBKpD4SEKJuk2dOQ9ux5QRRoGm0CVSB7+fc7
Yy6FFOies9L6oQ2GzzO2x+PbeFxalx9wlLmv3HEorGwsS7VpMxRLSckv3LXo4PqUm5qCY1yDsYt1
wUoqdfIN9vUYyd4cK/KtOAgfTvjY6OtEsQ065oEsDWmxesxtupfD7k1wPsMGqo7dxa/tn9cItZ7n
rHxzkR29ITtGabW0RGXhnczDLkQG3hzrtHGogd2E3bNlHYfdlkxORlSzp1rmYDym+xPYnzrW2cBo
PaNvPcZj5OMbL8zP5+jLPtrlvJKWzZzXihPLk4HNDM3qyTKd0tHHY2yCJu9pZEqmcI3z8a9ZcdaJ
tCzX1D+qZabhLpEh+ZR+8uvrw/lOT2Y7aGSbrZo9VhVGp9g43SDBec/ETqQ35kMcQ1kGx+72T1xY
kL2TpOn3fIVsFQf7p8LYZHM+HpHuCHNteYdDAkcvCOHxB8TpMzanl1NMHltwGp56p10ovFWkzzgl
zF+MRGmlXvLFxVma+7IPRqBkccImxvXxbxqOQK5GJmHqJmkZXyf8XvLy7yWPD5VcYQkIemRriHLd
RA+HvPw/0pTuV0D2aNXypf3EdXT4ATT9oDfxE5RWeyNw4tQ73OBsos9XcAqTfYCd2Y28uJI/XEPy
jfRJ4Mbn1EW2zpHweY/EghxBdxZ8uJYeTvvUezyEmAARL5NV+nwG3/AldlNFmh00iqgqHUoipwIi
393hfn7nbM0l/rqbzubrW5Dy/87nT9N22Gb+r3hrrbe3DlxFcdTzY+8QJn4YXIN08xpaEijfFj8k
00/3X8nrkXPyfBLfhsBk1ViUDyBZMyAfdvR1kpJj4waMYgz0C8xeKIGO0IBJxG0pGTRpBlUwGmLI
TDjC74UQtVJ6xagZZjvP+aP9/2aIXGI4SJP8tAFqOTIHPgt6FxyqqOlWlfxUji52BCZXy+DjBj7O
HdhlF2BiUfjYgV5wxqp01DbMVeaBmiQFwBjqNd6KUHwD2ES9IMDHBDCjtHRbEfdraSGuzQaTYmAd
+S31alSLbGUul2urs10wbK5qwRYblJjd2TsF8NImP5yVdBDzKVNfgNX6koQwj57id0V68/dyn4YZ
BZ8W8BtFgNUxjmktYLY17yatGdL0vlLkh2MZbFJsOO8oB8ZJyeUYrM77lStKwXQ6VAOor2Kjg/QQ
PtIweSWqrLW59VlJB8vNdSemY77LW5EfxgzCzFfmbNoN0url5rrL+e1iOkERbW2fbNjXC94UmTDO
9B8HurWH0R8UvHGB2d7OrfWkkztNY1XejkLLtyqBTMS01/pRsH5yHXUMj+Qqu03hVDDK/1PVztoR
XUZ3KfSNWS4Fmpxj/oIjaqik1rizRk1hyNWSN4GRfgJQSwMEFAACAAgA64guSmBLZhCRAAAA+wEA
AEUAHABodHRwL3Rlc3RzL3NlY3VyaXR5L3hzcy1ERU5JRUQteHNsLWRvY3VtZW50LXNlY3VyaXR5
T3JpZ2luLXN0ZGVyci50eHRVVAkAA0nLelhJy3pYdXgLAAEE9QEAAAQUAAAA7Y4xDoMwDEV3TuEL
hASWVplh6NKeAQVTIpkksp0Kbl869AYdq7++r/dC3kqkSWNOgMyZPSyREFbV4q3t+kvrznX+6pyz
gqFy1MPuImYY77dxMLuQmXOoGyY1X+DB8RlTu28EFBNCD0j4IUD0IJQVUZvz6V/Icro95EQHdK2D
BSetjAITI0gtJbPi3IR/6I9D31BLAwQKAAAAAACPiC5KAAAAAAAAAAAAAAAADwAcAGh0dHAvdGVz
dHMvc3NsL1VUCQADnsp6WFvPelh1eAsAAQT1AQAABBQAAABQSwMEFAACAAgAj4guSpPhyxHkTAAA
LVgBADEAHABodHRwL3Rlc3RzL3NzbC91cGdyYWRlLW9yaWdpbi11c2FnZS1jcmFzaC1sb2cudHh0
VVQJAAOeynpYnsp6WHV4CwABBPUBAAAEFAAAAOxdW3PbOpJ+Xv0KPExl5CSUcSEIUJVNlaxL4jm+
reUkZyuVUlEkaLMiiTok5cT7sL99G6AulEQ5lq3ZmoykVGxaILu/vqC7AQLkVRL7Kk3raPnTmgzH
12oUqOQmUQp9taXt4m+VKy+7Wz0VPsef48FkqNLjz5dnn87bx6+Pl6+vnAZqlEVhpJL6Zi6VzypJ
o3i0ygBXmnGg0M3DWC03/Skdy7FR9cLLont1BOgSYIOuVkS6esju4pGRQbrfKtcqHcejNOoPlsht
kPhTqhJ02lrFxDGpVFpepo5vouEKLIqJsDCxiI2IqGNWJ7TGGUYWlhhXLruoTM5zz0fQ9CciuEZI
zUFVwj8QSugRAB7HSbZ2FSGVxigePQzjSYo+fSpgPGk1SPMENywsGLZsBnA6so2tVttpdJrY5g3e
qFQqGjlq/PC+K9SNRr5CJ3Gc1REXGGOUKj8eBWml0n1IMzVEp6NM3SZR9qDVmyk/M1DUyAM1BpVK
M/HSOxWgm7tEecEcCQa9RunYy/w79NdETUBTfjyseePxQNWGXjSyMnNBpdL+6auxJrps5/afzd5J
o9VrNJvtbhdVu6cfuu0Pn48K52vnmBv7j/b1Re/04nPj7BQuarWu9VVehvBPvPRhuEDhAgRa4ti8
vL7qtnsXlzennf+uVD6fo2t1C2em6EJ5CRBjuF6xrPeooq/o9W7af96sdYopJ4KJIzgcWIUvfP0F
+ooQo/iPbyixfh4nP36i7vl/Ni+/lPSnSqUBKot8z+DtjpUPnckHo4RxMjRf1ivN60b34+nFB3TT
7t7U0V2WjY8zlWbpcZoOjifj28QLlBUn0S2ofZJ6t6p2lw0HlcqHQdz3Bugm8bQPTMIQPL6aqHvw
N4X8uyQexYP4FpgPZl5xVK8IXiOuwI6rRW12LlT2I06+rynhP3LFizAMXUd4/aDP0E3zCow2GoEe
RegHUkiXO9A/ut0z9NED8nfaJVuXF+2KcGqYUoK35OLLcCOXNPOSLBrdGnYjdRtnkVHglBe15Va8
PIe7G3mBr4OjZ6qGQugTzH6LVAIREE95MWFvwUsyGbLN2gN7QewjtSUWDC7aShzXpf3HVQe9HUgL
zID2yzXlERkSf01TrKgp4GW75OWamvEq0ZSAoIjtl2tqxqKgKckpd8XLNWVzTyixpilc1BTwclz3
5Zqa8SrRlOQ2o/TlmpqxKGjKBZ/KjaCDnfrHVfvDo6SpCkNCfPR1RlL2FbR9Qy2IUoHu4jNdBehH
BDXAJNOCxEk65SbZdtwCHJZwuzRJBDIQofIn/EdfO9PP29nBN50MKMcOfiZnP/TUZjnrqIlNhoP6
Av6bQ4IZtxtwSMwH40IKREw6xDFQILTmDvN0KJiXQGlCFtd6TqHwmgZTF7jmnvJ02h4hc9pSCmFo
X6uB8lJtz2XqgjrPRz6nXobcltxxnu+IfelqUzzVEW1XuPj5jjjntr0jbs95yRHX5HyBI3JHOC9w
xDmUMnMCbfcFjjinXe6IXDBH/LOQC1u8ADnH0n6kC3EI5vL5yOfU15DLmuNgYds7qA09z/fd8toQ
uEhCXLmD2nDKZXNtaHgx191BbTjltZzHqbvI44aXLcQOasMpr7U8rllQvos8vqQ6ncdlDfo0cdnL
bW9TyTy1yfZS0q09rMz2My6P2V5KRhjeQQ035bVie1G0PfCy7R3YfsarxPYSui7fRQ1XVJ22vVuj
zOV4B9UuFX3bw2ua4gtNGV6OzXbCi4dyjZe9ykvIl1tlJteaVYCFjR3i7oSFEaeUBeF8B8OcGYui
4W3i2M5OSBsFFUkLyqWzEzszTtbsTJbsDEWlTXZiBMOrzAiC2ZztRFOGxUxTbj4js9WoXDpeEEh0
0f10faZp5/N6KIxGkZnO09VqXqoiC/QWKGTpEq5Syef5EEbTib96/YkTfTqKLlq+qH4zTlQZQDNT
xpyQe9hB0/Pq9cI0WNPz79THOM3q9VRlqw3VLzedev1ahVdZ8m7j5e9fvTpCb5CDqmWEa/54XIcS
9ahCtkStFCZsM+oPSTwZ1+tBlHppGvuQaFQr9idD8JWz2AtUUp1fuvy9QUsFR9VJFg2i7KEuHH5U
odsqlQVM/Uqp/1v2dVUDgH6+zJ9txx/c2cUB2iAjcF5RhuFJ3Q1GuqtzgGCvQvgjys7Urec/lEFw
mAw8GIPDecu8zj0f+Jd9bVDo4Ut1uQn4S3pU4dupwFPEp/5CBZ3EG6qZ/IHKQLpOEg/zOxqGNZU2
qhZOM85JuQ28nS15B33ihY/ybt5FgwBY55w5L+FsM+gXYlvOoRuIDZyhEz+tE7zWoJi7jokIDJ4g
t7UEFlDXl2PKEm+URtrfbuJmPBxGGUTaBS7jhMGVd6sMJmoDqDzkaK/ARxV3a/34Gy3jG/5XSXwf
6VGWN9ANxkCMlCrDBdeA/LBdz7Rt19ncM2eJQf8NtXI1iCf9gTI9Q9K1nmFg2BJQkC1RSE89Eh+G
3kPfiNoejrMHowKXrsZEQrflGXB3M0+TZadin0M+u1ZpPEl8ZbhzyOflwjONhG3pBIHOyZucYASD
lIn5uxFmKrnw7qNbExGvYoiNDwvnnCG8VpCQ0wwgjNLs1dsC4TgZdjPIPa/fon4cDwpNjcEg/rEg
fROfju69QRRAmWCMzTitEHsbsWzm+sz2FixyuM075X83gumD7YVZwb0SKDYIm2ZQr/R6BPx5MjIV
z7v7OArQC3R39N54oYD0sCSYcQNXOwHf1gkctckJBvD7C1RmTwyXb0vI6JusG8R5qhNAqSxRdaZB
bwARRycj4mwpqN9X/iOCVteblq1iHJJA1NKhV1cDOuCI7aoBNyDYQ9ZXONNwQYMFm/o3HWIdatzD
tNaGQ8h/XNeFcm3hQHm5Pb3vK4XDfJRMRjdAuLrww76XRn4vzRKILu/8Oy8pOqn+uweZKMpS0/a+
2OiBkaAiipO8Cb0vaIVKCLzVZXwGOyEMsLtbYndcuCRYuqIajbK3SHPO2b7O86DLaBlfwijkRIq3
5CuxT1au0BG4nDdxTIm2zttm4BcUEtEg6gcPg6AGP6L+Y8Mj2XcdymGUY2K/pj0f95C6GcgAgdQs
j+hBVx+pwTLNIimJA8IVRb2eHpT9Zc5PVDZJRqaqNAOMBbVxPlhaIlcct7G+cLmQaHZi78df+YEm
RiUzA4KtyMGYlORyLtFic4npoyM8rdNpozX0RlAQJc9QkAo99N2MmHt/xemSYmbUS6y2JAlkJuJw
1Jud3xveJr1odB9/V9oxiTNTzdMJ2oEfrBCcKwjS4ExBbO9cwt47ifneSew8R2KdS3u9VA1/QM7q
pdEtVAdl8vqPdz7pQFYPcIhG3ihOB0qNNRHXnYnpv3lTI+VhvEiFS8wwxYWcmd1F6bQPQ2GvCffC
OKkWM65e9ASD4UliSp93g3h0i/SPYuo1be8I1J9kvq5ssJyBBV+ZG/mHd+91/SQaZ4uyqJjuqB3Q
sO+i/tAk9nr9o/LGANL3ICzeqgLGySiCMNyDk76/m5+ta7jIP59k6uf7V8s1xPYSaVnM8NKBKqLX
G2qqPahUVJ24YnXG5SmCBdReFQxU5U8SPcnRnYloJuTkKkdGVudYnsDR5pgsODbSh5F/46UFfWkQ
b1Fe/K8ge31UPXqvfUW7yfVkdBbH43yoKVB1TgrqTUL56hTMU6DZONgJtPYoSx6uYiiGqi8hNy3c
VmZ0niKI0w8M3dcFR+pNu1dvnMQ/H94Vut4EyE5HW8D3ZYjfvkiBr8G9qwa4sSqM4IdqGCcPdepw
kU8jbReaXTdYhOZ+HDyYUErMJNCWlIi3oDSvPh1ppnO2DPCcoFVCi/Au6sUqbuU2QD4K2zr++14o
KBp6ulZKb/XAZVwW/J9CiPXZnJCZZlmZ6dZO2YknoyBfF7tGw+9zm0DQ6fWanWkX7qrkPvJhAOHf
XcVGHZTQlSD9BLKMw6C1QBZ+5fMizkpcfAItqphERUrz9b26RzorYa/szs7y7SKBPQfS+NcVc1Zz
ex6hXjKd3dBfaJZmhAuKWoliq7BXoStFuXK0di+6uT/1ch/r9XJdEBNNdtOJ5O46kYt224nk3lWF
7t5JTPD+ibx/kxyE7p/I+zdvQfZv4oLs38wFcfZPZLF/Iu9f8UX2r/qi+1d90T28xbR/1Rfdv+qL
7l/1Rfev+qL7V33R5cnUZqcb+99VVhsn0b2XqWeoA4v8PtpA+dlCCdvMLbrE5p6Zp8zBnOf35vWd
KYdur4ONs3Nsd7Nz9o5n5+j+VYjUXfJEH9xkqILIq6V6uepkoIIwGqgo3l4vOOg7oJexvtty1/Pv
9Q3eZyrF08vH5krRj5XoTakJR5TM859rCTbtTKSK9BlHX4DA5agJtMyaXY3MLpnb/xUpl9moE912
1dAb38H5muy1GpinzGiapZP8jxMNJO0rQ3Rmgg6Y4PTyZm4+zlYn+n+NlEqqUBjd5lT0oih975Q4
ZiJ/Nz1b7K5nyx33bP0QlvkxAZefrRRE5m6gVnA3g9bhb+Pnv77d6tuuCpHZ25JLPnf2ej2LoJdr
X833vphVAK/eosUabYehan5VNLq9yhGl+SaX9V0cv8biBQzTHMuVl3wHmmdxVq+P4XiOyhsMHk6H
44G50Tpdp/c2v6brx2MVnHnDfuC902toUfXo/WKl7dop+Z3c1VP0Q4zMWtiHkTeM/KZeD6EXtxaX
QTpEL8udQzQSO9gu2TTy+FpVQZgIHbPeN2c+F/NEr1Goa7t+GmXR4J1pPQMo76vzwy0QE74M+K4u
ydZbTASxQxyitRUjY70hSgPpLC9+PlpaVxqo0JsMsl6g9Fa5DRcg/S93NpXqJwr9l14YuPHkXEOd
OJmeDT00U4kya5m1VuJJ9u751KpH9frfB8ZX/l7dcNFUxVOrFNnkMT4FkWd2+meDeDVj9AU6iRY/
X8hMULXIWS8w4WzrPT5gfOIESysyZiu1Z8eLXXE+ALgc6XiZR4cNwF+9AuH+1sP1OvTKRK85rh5V
j3JxClIflS9P/mdxez9b46GXxCydurKoQ2/F2HZ1i8/kLMStrbaZLx0homwdvNyaVd+fRvYfWXiz
mRtfWaji7izXb7265JGFKmTHuZ4W8zuEU2/QBTtDLzkk90Nyf1py/8UeEAiZ9F8ouf8Krc3sQ3L/
d03uvzI+8/qF/ZHTSDh99uZ6psqTVDEX2vYhF/6+uZAdcuEhFx5y4SEXHnLhIRfueS58xt1k3wt9
B6Wz2f2eSSdmq9raXoWn7xL1fEcUdokuqOd74AbxD3M3wn3O/lPSL1DW96RUYQsqseVzbr9tMLW9
u+l+vuvpfq7LHt0PGpMs1k89928Wz5T6d6l6PCqeW/UQ/RiYDWWPfojVvpc9v5KYqDAMxL9K2fNr
+0ilyK+meEu6y/RZNgvgKlnIowWdJ24z/7phNvflhB+buCVSP+1rmXz+2CnMtt9s+YJsLf6/svVe
bDdkziGEH0L4IYQfQvghhP+uIVwcQvghhB9C+CGEH0L47xrC5SGEH0L4IYQfQvghhP+uIdw9hPBD
CD+E8EMIP4Tw3zSE2/gQwg8h/BDCDyH8EMJ/1xBODiH8EMIPIfwQwg8h/HcN4fQQwg8h/BDCDyH8
EMJ/0xCOkZ+/gzh/W/Gf0kHTFvNGO1R1bKsfZUf1CkKJ97OO5rqdf6Chv6nB39QQFBsIVsQPJcaa
SRBtuCSdN2jZuOLSUaHhPl5v8M0VJQ19zQQlsoSJ9qzELeIiNODClZoWwWWAdQMpkuJE4jAkgZaE
0A2SELbCxMFCmAZ7ExO+doUTGnVF46VLZu98Rkk4WOEOnQHr13omJbCYplU5i28j3xug5tWnuvEl
Ylfa5v3VzThQ+VeLS+3Kjd7xcTEZ9lUyP79SOYlGXvKAToferUq130wv06+jE1xrwEJLX/o2WAe9
WXmtXRUfoXfcOWkKpyEt3hQdi7ETasmGZFbDbjQFIaLdwK336PhzPJgMVXr8+fLs03n7+PXxMq0l
DIKXYIAvw1CgN9CNppuh9DsGu3fRcNq3DBrMOrwjRdOSvC0t1ujY1kkHjrjbbnRIq3VCeacMzSaq
K7iCElwBLcM1GY/jJCtCs512p82YbbVw27aYLRyrIVsNq81brabknAp88gRoRcJL6KQj19BR7rhh
yB4Jx1XI+W/gIvhVIzX7DQBtYiyxK7hFJWMWa7dsq0Extuymjdu80WlT3CwDuky5FupXSerdPMef
VaLf6JseN1bOKeKnfemt4w9xfwV/vmOuDLfNOy3ZOmlb9om2PaOO5VImrJYtpRCEO40GLsOdUyzH
m7cVcTLHY2s47T44QVj6HtwSoCdttyM67ROraRNusabtWCfNFrV4u91ugL7bbU43AN2s2WljEapD
lbsG1bF9KNn6GzchluAVJ1xw0KdFGza2mOuC5zYc12oT7WG80W512GbF5nQfU29+RhF5ECi8hhy+
NGGogNybBFFc069NVx9bjY+Ns6vB5PZ0hKpUAHoK1+cHIESHt21pu03LadCWxVq0aTVOWMfqOFg2
oUe6nRYHIbombR+fRf0EQuRx+2emRlO0Uy617+pndgxVLrRk6XHOcdE8B1HrT0bBQC3OPPf8y+76
eQW5CZbBmtwEu3mIKcjdOG+d35ydJPHof1Qrie5VgqpgLFqDEslCcFTTIkvpMtF2GpYkJ2A3LFzL
PWkJi9A2dOpO022cNB4XeY3NJqHWTlySKgjYulRBSI01IY5dtTrXp1e1xixcug6uCS2ATW1XtFuW
IxixGG+cWG6b/h9xV7Ycx41l3/UVfnRER5axL49YNZqwxxpT8vito1aZYYpUFEV3e75+DjJrSWSi
ihU9ipkXksFMAvcCdznnXoAFO8wqeB49VTHNFchHS3v+oXjEW6TA3+/Xz20LPH4S8vMPMznGKtAl
mW8MXa7EfGN+WW62T4+/Cbz+9sfLmwOIAHPk2BwkfaQDXoKAww4x7QUsFdnbvrY5jakub1Dj5VrD
9Xqu4W6p+01yH96N/v4uQJ7jZh1UK4nD5uxEgiKshwKKw/KQOKyR1OnosVviG6p0SaSxVlzz3Uwr
ruXUof6xXa2H4Xf9XfazsXz3vVxQ/D2+QkUrqFPKys7oXEKhQ44JKXdeCSK48clFNlfx/fAvckeG
2Ufrfj4H3vTX8/3YPOcP3wyil71Q2yo2Hn+5pXopoFL56N/vvudwIDaEAOAMnkMXAsGW0ICoF4Lo
tHSGyJAEoQWdvTzvi/3/UP56NJdh3PLpXOWXchKHi5/Fl+3XuF29gJx/+gSOXiyj/GVZNh0sZ1QR
TI4IzKnmHTJThmVQbpJhFu58y7K15mn7devNSjOp1nPNlNz2hoG1uIc9/LlgRysXouQQIh1x0sFJ
4alcKdOZDO/NTAcfHVPI7KPVnI5Sza8Uacyv7W47zI/F/bLfPhd9jjIwU2QwPAtGY0epRB4TUnfO
OtdRn7wkmjjew8iRDLORajn0siGH4RMHCU+fPz89uhcw0O9Fv69s0aNabxCcE6KzsrrjAIedibxs
tHZBIssYn2/b2eP4l/bz+LyWfrdqSL/bHHfx+EmsT4+7+0+HzwY9LicC70KQBeVQg8fkdcy2A4gG
ONdQyAewGHAfZQzLmeQ8WtVh2B+uTlDJqQmdy2nWy8kq94zs3c/j6MMXfHAjocp6OySKKCGeEgng
nDvaWUF4F4PiSQO3MyOvpsTZFONVPjysRLdLMRd9KcwkBPgHeNvT02AfYqHwB/33XfF/QTQr0Bae
EmG0LEBqT5HsOLdBE6PByq9L/fNp/AuSn1+opF+OueT5l5sj9Pip/ycF9ORiBXZwF4jP3nQAT3Dz
QikcyF+nM7dC5SCkFLWLVaPU82vVmH89Xb0eFf7q8jjrkAVnfeIpPxTaQMFiuExdoMB0nAGGWxts
F6IjySTmQCJvcbXDXO11PDysdVjbuQ4rrqfYB1/v170HHD6F8nnhPtzBhLXGH2PtFiWIWq1tslR1
RBvQtOBC52kKAOLGB0+ZY15dtYXWPE1dxn/z4e6Cvh/uKl1XopHwNpvNhN09b9cv+/uvoEu6906p
OdeLknWhYWJJSngjCDRSbb9Rnnt88dRDX42V4Fc1vDuM3hb5+HQsNyfruZdyLpdHO/+8XS8xz9HO
lVWLAtkSkDTxYPiyVEm4yL4zLuZOWSd5SMFqN8lo1UBv6tlWDRHWuwtLtzv/Z//v1bCIkjIFoaJz
IsdI4HAG60eQ3XxSQAvKe5uNppnom9bv/OEB11fy/F6t0IY0FNqsJ3b/85ftY7zfb9dfn/YwCIqU
UgAjtcXaOfCidlF2MgQGCkMAHhQ4mEEKz8IHQe11a69Gb6tRvTLRYNPQAF9rDe5+X+57xCYKlOdD
8D78WPYjRmYoBXVOwcOeM3J8KinI+myVBF9x5pbAc5jmwl4MDyvxBWlsAID20ajXy/Xv26NJ62LP
VgrjXLIdcx5wRDIJxhgQv5nTQSCVC6GbeXw01EQE2RJBH0UIb38rfao5d82SBW+x8R44sePO8hLm
VOHi0nClJfLft+SuE0FqJWhDCck3kyR0+ODdEyEbI/iQozVGwR0jdOKWps6ThDQEdGSF0zLw6xl8
OnhbpelblRpy2Qgwy62dWHP/oQIfnp4eVk//PKmgOQVJXTBS9kZxF3mGgXh8R4ARBFHP2s4g+HOe
mQj5ulOOp2grMn6jUmJF57wDv9ydDArb/utP4eEe9O9Esanto7VUJGqCGK2JBZsjwNlWAQFAYpsD
AKxT8dVg8vbHtsTD6/cHa5pJUSvBVEMJMd2J4yc5j+wo81DaAvAIW7AVRRgxzqSOhCgczYkbrm+J
JYehr1pRJfJ6uZ2LvN7oI1P455f1KZIouZBkUdiWFJFyVuSTIsH2kYqMBcfhWmrGso3UtHnBabhK
iA0I2kyIDScnIZ4fvp7BKB0Ak2Yh0uBER7MHeFaadS6WmGYsgpygCt/rHD0epp6fN1DCRk3p/Nu7
u5rleWHhGBzu7gHiOVABRAAiLgFVJessFeSq4WHE9lbhQSXhVpi5hDs7rdeUz3x5uQde72sziLB9
daZUExQHUgBL16XagTwLBwG4kVro7Khn7tYyw8d3lwsLH9+9qcXjLZlXjSLJCbDmu/RnKWZhlxnj
iwIaioccfy7bnqXXjiFtBLB9np0F0QcpiRIwDX5jtXWvJpCbAfJRngsvHp5O1F631N4djbn/+Ka7
MM7Rx0DGuLER4arzJiGQJS8651zusk8xERpiCu7bBbJKiFqFZQNg7JbTNkPpuj5+fDf0c/iisDLe
I30pmUhAcZ2AX8MvMvTIRHWptEuYLoV2covBHSa42Iaav3q5ETR6YayrIGxe6AGWmsbs05gDJzWE
lf9kSQ8RnDK64EMB2xKh4VPAAcjM0J0jkpfclGPOhHngWxtvpqP9NFcYaf+8Vkc01KFCHa0vPz1+
fb/cP2/3J+OTpoezDIDcuiQ6gXCBKEFLyUrDz2KOAXhWmZz/7whoBeKmQr+pldMNjaU5oeHPX34/
8bsStJ3wmQUFGlVyF0fssBHUQ1EbbMKupZAnlcLTCPXEqrHUQu4mXvJv706gC2G5j2eG6N5WuMJa
BwEzUfByLuD0NpDUZWo8p5Emqa5XrcJyv7qEGUevnURov3l6XKknGpXY8stp+O5FKGYkiifIvkGV
VYqKsE6C0iOOMcRoXZB+4IA2LFDD47+s1/CsElXxxk6AgTUqMdtf34/LSWVH+n5o+d73dJkCYIS8
yUNyBNwONC7ii/WB5EiJYbcXk95frSa9d7US0rSUOOWNUq++f9ju/34+P6GKyI4WiwVqzLKgX4PQ
YxSxnfYA90Ii9oTY5nbTAWtxli1xltvJ9r/72a3X24fhxB3Wk8iB5g8/FIYkqc+aiS6bUkrxkNEQ
BZhGSFCSSAWXuWVFq4kuFTtHr0yU2TWU6enFWJmU3/VpothFj/KKjxqwRGoBMGLp3oUSEQPwbtDC
e64VIvxN4Ok4dlv049NKatMokuKX2zk/zXfHYpHogakRzAEPqQ6cDWacGSt8PyMBG+UoCCrN7DVa
mu8usohcgVNhV3MOIeyaHiPwoRnwvHzclBh0bB0pcqwMMqcQ8Cx8TZtSFCClkegQPlTqobTN3lxr
M1Qjj0WTZDen+LI0cEvxDS/vkWYe/lzYk0f1zQTYpZfBdNRKUmIzeLCKtCOewSE5gnOeMIt6mEoC
LucoWMrttJH0y/IfAYu9Xx7aumU/qS25YmixUWEtA88BeoAXqQQnd5J2FiSHMZIoVmm+oWOo+8N0
hmnj+PS8El/ReXFBKsZbhfq7X973BfoDpwUYcTIw0ikhQQ2V950LWXfMeqcCgkIQ5uZYirGvxFI8
raTWq3mBTxp6IpTrv/1txCfZwCxMDhy01iI+SaRkAZ+3LoDNCaWDB1qIdNLfGA3zpp6JNqZnJ4dY
PX9ekOP0vCezqYRqEcBey5kU8LLOq+Q7GWV2PmhmmarnHo1Rz810Y26+bLCuUW/qXIlIUgTgQJBp
CYzECRbARsRrIzSL3lmu6euHS17pSlWv1NLzhrkZMy3JhYenl018Wj8fJeeGDx1LmaMFfo0dscji
SDe68x4JXCrLElVGZ34T9TjNcEGD4+NKevDxufQrfuo25Kfnh79vhrP8J+tTCyZ6wW30hkUQBeHB
G+AyCB60C4kwkm05bzhpOcxHq4RZi3l7Sq7LEQ8+jsqPT1/vd3+dyQDpm7+lvC2Mj4mLjmQNnAyr
QM7OuQtSm8StNTqEa0F5PHAt2LLhHeulOgr28viP+8fNyT3kouwrEKUXJskOXlgaBhbSeCm6AIPM
3ifQLt6UZjxaJcaGzLOr3KgpyR0sJYwb2cXoaI928a0/TWJUwvxwWVVO1wpbIIIE4kHiIinAk8P1
xsx8jgvdgPmLtU5qnu4UKcmm6jX9er/ZPl0vBQcdmKLYba9kOTCMVMOS7qhywcUSA7K4qtJ4irYu
4zfGSijaqAYqStXkeOaPy8dPx4NARYmh49h/L+fITAQ1ZrxzpePITcmVWriOwIaikODJWn5zNjsW
6UIVYvRGrTRtKb0Uu22Foc5hA0SkwKfiqcxoziMwXmmvAqL6AObOQpdigNOoJMAur57SmHuHYnSO
6RTfrieW9J8vy/3X/x4qQHRA/qIU6voeX0hOK6o6xcuxIA+K4suJeKGVzyryLI2/ugXnwduLeX5e
ic53vCH6bgqbQ7k+8su2HBvf7g/nx89tSk1LnZtIA9QldZdZiFhZg7Rs8YUIqrPyXNHob8omjbku
JJbGmxPt5jlGGbuceMfb7dPRbE8eTiVdCDuYTDRGS4rkqDkUK3Hd0gj4kZVDAs1WeXuLYqNpLhSy
zy+M1dB2NY9U5ZdHhPbyeDJ1Zvtmq6fJCg3epeVQtYFpU9hWkgmmZTJJF+J/w7z1qgFr9YqpY6Z+
+/7jYfF/2u7XL/tzgmQHl7OyHG7rWDIQJ9KE8AKyoKXOzBnLc7iJFZ7nuaFoe0GoWrEG/NMbfuoN
369fSpPg3JiVMIpiFz3VtdZTsEZuyoH2iHBpAr5kpHsaZWQy6Ok5vmq0SpKNtA1J1uJiYbU48n/9
6P5jVFYlFPmoSOa5DBIZVudQana8FBEC7QRn2QkaY7jhxHMZ+zIeLU9r+deyJb88rmSptQ93Nu4f
P338ev9wRnSDj7lIogvGgaQBEXCidWethaO5FBDvwebc5EjihSHHYhmymte6DNmYydG+6uby95wJ
02cLeqhz0RC4ydl3yWugTUEiuFm5yqClIY5KF4i7ljLGw9fibWxLPHsU74/tX58/7aujmwZwIoB2
dMDuJcgm5Akec5esCcgfXuW+WzCXZTxWJQS18+Rl6Jodhfj39+ntuZvYc37DXNblBIrnqXRhHbZN
APcGLhwzpfIX8r9+gLCqZp9nr4Ve85bQq1NIyr+VwyDbzSQUYRe5B1LvSCnegzoS5KgsOuoDQRwy
Wutv1DSaSFBJbxvnhssvrzT7vvteMwPWVrJt/0Nhn9j4VC79pFBOUTDBEFdBiqz0Fjwcqdib/2V3
b/xGrcKaNFQo5yhW/QY072KoYJMKAFuK5XKEE8bjEpKTVMJxSYmn2n3L8yzTixhnOZct4TeTaPv7
9uFLwQN8UZZdlH4Il9EJkL2O+P4olqOl7xM6QSyRIWaRlfgmTQhMfaH/gCeVMstGSwe/nCrz/GW7
Xf++2G/XT58e72vW1N9PON5QGO4oJOksgluXRSnvsHIGySdkEx8VoSYEIdO30POul+qXllAVlZu+
NlmBRgRblmP4Ffx+v3/6+rR+evAvu11/n6YUrQXvu1zARTLYLkZZwHfpcmlBu5RykIkT0IJ0C0Cp
Z2irUr9T6yF3DT3Ucl4+vBtquKcDFoqWQkTfTWZagY+QoSLGgVhB/anvBEvEWRdZSrfWEQ+TXKwk
Hp7XKhjaUMFOS1Jvt4/bgZGfPpf11EbgAyAwwTAq4GmC2XKanh9uyZT6ouXayHAr6J5NdQl8z16s
VWvlyeXmVCb9sH/ZltNzd+vlw7xhLJQFvyu3tJCiO56IAihzGtHD2HJ71wZD/58axi3Ba803jU1d
lVtdFYuK989/DNfBRz3DniIuRE91dQ+cvZVMFgKuMoAUtwGhxVnf2ZiplTlRq26y0PN0bR3Pz9/U
cs9bdWat6HEb//zp/vnEpqTi/VkTUHDKso5ddhxelUtfzqeyewAOntEUwisFkmOvbfvqpv25XZdr
aM3XavkqvTaNCqbZyGmF7nTG92BEi+lenU4dq2yYjgRQKROkOk+ANMHWOiaZUTKl4PR1kDeb6sI2
1W/VSjVuXuCXp+MKz1/uHzcvn7+cvM3qPngQC+KrTYbsyNA8C9F5qpC+dMyRBclCMDWbqEcaC2Hl
am4xVqspN1v+OT6NPgQzitSxsMPlYUF9jARkTMpyiKHv7ZajFLrcpzYSOeiVCo/79bWz6OM3KhV0
w+itUWxmHM/rkmT3m/4kt10MJ8osgWWIvrIsBTGy/H8GX8qFXCpS7p7yLlgkFsYAgqh7xShGU1x0
3PMrb2qJeUON5XZ2z2y/7c/OvvsZsJkMd5+EtsUypI6WhZy6pGkpdeInh5QIPiAiNtUqbfOrEPQw
+GXIfHihEn65mecP29/5b1xHL4O48lNJ8QcFyveC+p2OIiMMEcV8KbPRDlAtdMFYpkQkJIrXUX8/
9mX5+8eV9Cvekl5MsckMqA3VTrZgC92fHGEDEfAO0lvSRQB/mBEN5TJsKXnShFCbM7ntGlJzuhsh
5LQUale6oeJOqr6qXFuX+xigFAX6GjDL8FN/s5IEaoPrVIjlurwEJQvIdYQZ45jUYQg8N50exSRX
duhjqITvC50z4Xdy7uF/uP3q/uv+FKeGfRmuG0hLGMi85OVwNQPyd5rQLscUpZeSk1dOWE1Gv5yX
Ry+NtQArm7eZlmS7PrWi9399+fqEtbYLc8rR9ljaj8qQclGmizRh8Wm53KbxRVKfLCgxMFaa9KRn
41XicDPPqcvdis2PSg3/TmRh+0uWRCxEv55cUJqRdmI0iDXwzc6E/+Ht2prjtpX0u/4LvLhfHnFN
XGvXuuKTvG5Rc3FU0cXHkrNJfv12gzMcgsSMJnVUqUo5EkkB3STQN3R/rS2J2gXOqcqSpddsvjPp
nPFwryF3vxUdcredEo2xBndMgtF14SbteIDNRzAzGOSiw/ocXggPwZtofUlGXplTf74A93BzQfR6
193SQ3FM67yBnbDb1sPkyWeYlYdLoQMPgjiJOeZgNxAwWTA/oTCBKeeU8mt9uNVE51251aNz5m4V
5Wvm4OLSoztZh6P1hxnCDP/u8Cv+VpNELAPbGVy6wjB6xcGJMGBMlBJTgJliMvqfMEPHew2npmMk
4cVO6svCiwENZ1G92RoFTqCg4fsxydFLKuAblGRJ9jGBOwh2kpVv4yV1Hmz4cR1f/NahxTTGtxDl
YAoYH5ESCqNgG5VAkrCg1mwEr8ZxTzLTIcVAqaf9c/fTaC0RHXvndkNdx95Jw8tQs3NwR0tWjTXP
nVfSMaIZ1skYMBcsB6PYypxpxNSJKF+1FHDgC/AIcLcheas7K367dfvd7SExE8z9Ueoe356olTK4
h4OKVIGkIUA24pkoD+s7AMEgKWHtexHZmcq7xagtSdt1tO92x/adcpDn45oZQ7fl7n734e4ZRDuX
1YeF/6E7yBL3yZhADPoYoChhR3KHR1vUC/CRGGfx7coqWlrOVz6enmnY33cSI+Hivp+b+rFiI75/
3D/NhatysKCdjLARCwZjInwi+G5E8wRLLOXYrUA9m5d6muRiburpsZYhSzsMIZ6IOJRTvn982X3b
D/hyj4uMmXd4MiqNkEJmRkB2Ho6ZPJWGJNDGlEuf9SsliH9HgtbowzX1JSuCW35d7wPWIpnKL3h9
ozk/Hakdjq3ALUihCCIdBUfBgFxy3GIqEMtCZ41hp//Q4WziSC0dcxY2IyZVy8KG3k5nTJ/AF2yP
mLh3zKDFJFEKCJ9AkzPJCGbKZ+dZMkK90RHTNHlDMhPrMxq4OIE+pLvhy+PT88vd5uPu+RnDTIt6
S1qhTbgUQQdJOMuw3pSCbxAR/EV5UGccDBO3SFW8PG5L4natczecL+09n9ELrnkadDxqlY4byUmx
WBpvdSBeKkqKj9yyUAGY3k56+XxGAeebluxdhxexNAPvNmhqvSt3j9uPf6YdkjCXU8FFI1nB2KKP
RIDpinFwSrC6kEadbZJXBfLn45/hcPZEy4jofRQlF0fODxXSd8qkNsdEQmWkzTbgxwGnWMgIJl5g
sIeV5kwwbrS5mN09H7elqxNK2/DbU/j6fSmLPSgMrBSXPOJwgj8IriuxRcNCEUYWMGyioPKN9uBp
9pboW9Yjmq0OSjdPQ00Cr2c6FbQKRLs1HkwxjrBvRWGUxMFKdwK44yIqw15Z5DDmOcMHbi3o5B06
d6pXVV5dRaZrZZOrsWVLBS+ZaI1xQVM08ZpzEqLJOYvs/XXoR8fBL9SSLxxGoFD3yDbLWoTd5u7x
bpJsY5IJeIsevFmSMM9LFHAag40ZdpriQZoosg4XqxDmYzZEmU4MYGNWqaaNEPqfz5fOybmJjAfw
aI3FN2xTIjV5OEUVYDuBH5X02wm8Ey1nkDY+9xyOjZMdfeNQbtzOv8X28fl5eyppUhj7qGm1lFnn
nAVrFHPimY4ErGkF7rxFkaINE+nS95iN25LVExtOLeN+/4qxqdBXOQcOjqrDtDmBQLDOhEw4j8Fm
xgLY8tesaRi2/xLhRktmJ9Fn47ZsIXWH51mWjzi6HaAxkKhCWMCgXWGwPjw4od4zZUxOzjYANqt3
N43akrTtyISB7TpuRwV3H3Ol4VO9YxiSAytOvRO2Ik0IHUstLTAJj3QRHFELonRKOgPJwaZXl++H
wxTnXbnjEw0TQwekYTOIqTjjhw+LBBtDkwI/XRAqUQNLSkFnMBC+ukSunFXcujdKsPnQeemD6L10
MWnfnwYQg4+b3ULTlYyI3okjIF49NY9AtaMkFhAOoaZ/iTfSdC0FC+JVj/ilOG4c1engazT5A2g6
X2KNCBGBUDs2OI+5zlZoXQKn6TIE3XLoBYEd22YYlp70x4/xc82bwVoTNZ7IKelKyECZUgVhFSgj
oSplGlgxsYDSuMqDxLHPaDi401K76ciEvaSd6ElpcKRqFBcWK5LNEisYEXUlRwxIcWKF5YQnkKdG
FVAor2csveZFtc80PGBV3pKHLdfLBOZGQY2pN4c0cyZ0rdkdf6jJzMEjbC+eUGg8egFhx8CptyZZ
5r1O+hUYjr+lDE+0XKpPXh7FAIe3Pbanc4Cn7X477WFeS16sjAHRQZOuBfkOM2CKIp5r9BcLdWXh
aM3GWMy968xtl55ILBcxu0CdOIUwK0rhWURxiYBDy4jKNirtc3avnNJdgdk1f8/liucXD8253nG+
3to7cTsJzh8+fPr29AVGfRhu7+4RV66V+9Fnl3lQxGQB+1ugBEXLUBYpXQRHTjr5VnK/S8lNS7jp
cLNni61fgV0///lw+3SPif8VKpFVnEQuvORRCRKcBPfBwpdzOXMiIzgVWOyvwlUHlPMZzhyHzZ5o
edjzHg/DQhs8jjhFuwkT62jfWIU+pcDkI62pUykaopVweOjNwTDLGZxK0M2q6ESbYs11dVp3jgW1
6x27k3zfEba1lgn1g627ZYxVg+jh0rNAwEBEf0IHgljPoJBh4SjJNayiV8VSHfm8jK23G6pl51R7
J6VeFBJ9vR9e9k/fpi4RRh7T7bjzjqpciDYGln0Uglg0wHUU3tooA5iQl95sO3JLWyevc6dWSapj
vsDLoXisBuBmxWrVEWIHfFpDs1MhwrcH70A4DbpMx0ioZwhW5ql4xTSbD34mqDN74qale9djZonr
+PXb3ePMgX33CX+vonVMc6wpuNmCCUEjAWsYe2AgzK61nkRWFAVB62Lyb5Ga+qmlpT34g1stf53j
d3CuJ9PtAcTX84SciQoiS8dcQNRdh4hcvmCNjtC1n0N0NotCF3Xz8zFu2nk6e68iety22CrzIide
cWEVrdkYRgfJIpi7GGuVEawBTIrPJZnoRWLRpTfPTTxRcw5npecm77RTHV4HenzRv/0xO5dbFXIE
4RzzDl2SAjsAT1IxdUbClgXtbHNkffP4NGpLTKc4d2fUMjx1O2x++/51nm6NhZfyUIBZEQsEldkl
UDJAHhHGZeK0cmAiWxWFCtLSq9JGwmKm+Qsd7920pPIe/cNR6R/k/pRpYSeXORdwiw3PYN5gfjiN
lIBVaYgxjhZOAwjt1K7eZqyGilu6PuXEiyfY2Zfh/n+xC9/zy3DK9QMl/I6+kyOQVMrZM8aBAI+I
5minexngnwyGfAxw8Tp9/cOnn+MB6WX2Fs8RsWBjjYu32/AlgtuH4fvj5tdL4apUnNcuggutPZYb
auSFghNHc2I8embjG4K2tfScK8SdP9NwvbGdj7dxU+Dl9i9ECzrhN9haD5hBoytLIi0Z43GSeIxq
MIOF8zEGIRfYEc0o7fyus4Q3g1nnHSCCx3D3iJn/q6z5grAghoL/HxGDLSQwkBCNKZqMqKRBSnZt
1vw0zdm8g+mJlpFOiiZcnApqxrnfhZPdzfUR5o/CIpcWPH7NZNUlFMGiGRglukhuEo9p4fy0ozWE
bDuqbM/kMv561mU2IGCT8JSgZw9bEduT6CIIhraEVl7nV+B0LrvL8b/6rvLe7NaaAS4uI5U1EI6n
uM/Pd6P/cAxcGlcRmLJmQSrCnAaDDnG5PLzaijIqeHDOBv46rGsz/oWAfPPcgpu1TsfiwOV52ONv
jV6h9UvwWlLOitGxgEkhisFOE1gFHME5iwqkSREyCGHfwlB6/3gGQhVu3LTksw5PeATVhLgfTof2
FLMtqM2sCnON5SBY80a8srUJiRGgHLPJF72XjnENs3ZJWSL13CPM1PNU7j7Ft13gRRUXSE412iAK
CQZhr3jQ2gTYbtepm/vzIFfLp54vVT7Pn2j53PT43N3OsH3Ai55e+AFqz3GeS4CVAw4DCGiMiSJS
DsmW+SiFNDzSFbjPNE5DwKDWQbj9YJYv+gm8/+djMe9oH9VYyqE6WOgcwEPBwIL0GN0xGIYrQFA0
2CgophDeYik3NcXngdKnR1pWzdoA2N/yTS9b6/uuWU8lsuwRDt0IDz4NHvh6LSTBRCOwpMC8Cubv
9La53M/mpiVw26FaLBOHpwGfD+lmu4cR22V0MNFuiVGJFBnHjnkMW9IV+Ak8eueNoUlqIfj1DXrq
+D02wux+y4hYH1XsN3t9lC7hg/98wpDVvK70ICNnlmuiKoRh1Ak2MliQEYS+1Rm2s9f/UGHPib6b
loNVGMBResr++eA/+fjfK8Yk58Ji20Vw7jy6OmASFLCKwdHwNHJrOBP/EGNzCm9aLoY1a4zqxdI7
VK4+//n48uuuAYvButVDj77xh2p+JE8pFhVnD+xyDbLLMkmUw8adivGi3x7LZiwu+LymcF2BMD3U
vAqwnTqvgk/ZRpunr3/uwSs5WX+mNvIBkwrUDSkCP62Ef0LQlsioVUnw91bwM/mS8+EWlOw6lIgJ
WfOvExYc5pkdEjdFDgFTdqXFjkKwvIir1X2gu6lMkhofW4XxVwcLztGOD4UX9bKW+dBz49e7WqQ0
BjIoBodYNiErDkLHYEk82KLgAkZPWM7cJy51sm8SHDp2/fjx/eWuID/OUb4d266xouHi7RS9+PwV
gXu7kkoX5ZiniOWBh9QWDH1wvSQJVKgowTMMIf1DG3pJZcvi2rKCi9tp/RzhJ1kH2tJbVHUgtDgW
VwpWE5aVweJDK40wyepFVGExWkPJbl2wCxd305HG8P2UhMwsrh7nHFj/8I4lK2Dycy8QJR887xyp
dEGrVBYgJKcx5lNzalaFI3DRTvAUz8PzPT81huM1EYixCK4a+J8U8dAERSBw5mDtGnD4LUvSlrzk
fjZMS4DdrAlgZrL7/nho5ncj/GwKPmnUgakglifPFFORGClK6VQS474mTc27BDycIYCtbX2wKp04
RtZ/T58/LatsFXjgWtEM01M09JXFqk2wInKhHmQK5eGf0lkn8m5aBtbyiQu97eQmVf+ujxdn4AMn
idZssZiYC46mlxx7XIaMHXcjF/S6GsRXKhAb2sUaogcvTobED++X+X8pYxIi7gSFjSoDiHaXlCCF
axcM916/0n7m+qyIafIFyWsDgUvhlkWHu+Hb5tcxr+6dPCDbjdi+hSnnLfYIQ0hGoQsDt9FmkrGN
lo0ONrR4w0z9IyHnlMLh9k3LT49Jsywy+wkM3pfdL3e7/zvFDo9FxlUFczRzpCMWq1sxaE+CDIUw
2LuSCseVuMr6Xs9z7vMtn2u5GtZmK1dbuTjwGVuS//GC0JUjN9IdDDmfQrZCKZJkQRAzhnmRUZKk
JUuaqZivqF7Bsc9vErx70xLY2SN61d/gx93dw3a4b/ubqCS0EpYRG1TGohD4FBa2domw1RO41iFd
lXt8GPwc+ku92RCt7VrPcUuXaEI/v5+H7Ea5JMXY9MT7EBQHYsF8ArGEbVkCVYxkrVVIoJa7CJZr
2udz9BmYP9FwMZjtmothsEf3DbfO3e+7k9ISAq3PahpFYUBBIL4dwgp5jUdp4M4pURsxBXA/l2q7
HawhZGNv14RUxNVDS5Kfyufvdy+7BpKYGguuZLJEewwWUniVgQcPqpx7GnywPoqWhHaYhoKtWVuJ
fGcnZ+D53/fwh2LS3kzXQ6QUQWU6MJzATgQj3KD/rUwkWjtnuMMKusVraAa6aWfb9UjYL5IPbu+f
Nr9NSWi61kZxKRP2LCvaYx1mCCTA4idWW8UifA2bL56Iz4dsSRrEmqS9oNvtum8BooY1dQHF5BRS
IF5h43ZT4POkLEnGWgjBaBpbFF6Hrl0hyc7Da+Ptm5bGjim0N/yUWvPzMpkG6FHY3lJkUbPOsL4M
9yQHq4rp4FwMb5VM83PnVe9N71W7MfXghw8/7R63u2+7b+X+aXiZiGbKOmx8CW6Jqs3IYflJeNs6
MW1DKSm8EnG4RPTJWFhMf8RnX1xu2ek4AuA6qdXJ3OOX72CwfHza7u4XzaeVjcx6WZcN5nmETMA0
osQ4sEpdYiB/2FVNehZznAe+nT910xA+DB1udsvcpg/Jf2p6d8h3fEy4GWsYnc9ChMJJCZiijV/K
FpaJKlZErA4L+rJxhxOcIR/utCSvj2bqxbNl0DV1Bf9gdomNNdDKCuxhi/ke2K1BY3fGgs0aYww6
8Gxy/s8q+E73FzzoHg/Lg8Z/ffv+/JJ/H+6/VxXnv+wwgeUAbVVPM7hwYONkUjLaaQ7zcfDkPHPF
gleMw1e4KjW+M9GZXPnOkwvWbI+1zVHYfx0e5r5q7eQYE8O8FYvRJ1CyARvTRiLBdckg4FVhi+SV
2RjN3Izu13MztgYWf/j68vRwxPptYucW1gBMSHLEli5OC5BAEkR9CbwIKbPqFeN2sETGKebm7vru
kYDZQ4s7LXess/AZdx1/sTaar1HtI0LcnEmweCn8B2uF4QEIWBTYt8aA/CnaFhmxTdjfOSBoZ7p8
XNA+2/LHNz3+ppWDkGpf/nz5Nswy7ifMfOqlYxHdYKmwRAtsBucwWd16zIQCu3Zpr6yGWxCz7RBz
al+8vXv+WntsH8MOtJ7/V2cjGumcVdjYCmMvWGjhVfZEqxSjBcOquH4ktR20pWe3DhYI7pYJfLWi
8TfwGSuKRPVipeXvuKugCPhDbQcNlpQwmTCs58eaHtREFuOAioKDlG16JWRwGPxCh4aFYwqkdtSm
4LpXiFXzV++OVSxixJK0VNrRNPA6FCYxW6hgeFii9kwoMzgPLiI2ztWrt5nqAmjp/LGblgPTY2uK
g8RfPn7+dP/9y93jEWx6YZwpKhBZgSThUYALRWymYOe4qIzSVgZN36jvYJ+SlpuBd7jZ7M4d3x1a
NPjtw93j3fPLt8YdZGM3AGzao32FFUENyxRKHYSVjaFkFbzh5jqBup7pUqeG9smGS03XJrTQe3HC
KOaL2JUpSXPB8IQ+IPaFKYgwReFXBtZNirpw9mYQxT3Fpved3W94LwDif4k/JjzLsuNZBmjjd2Na
m/SgxRg2gDcYEaXFYVcgTxy2AsNzeCrj1XBSOMsFQCm83XBgNp2XbjbTS//39+Hb8Phy9zjJdotv
nhbJtCsYxsZMbs+xfTXslCxNEMrq5Gi/gnk53oKY3uvcTFDZD8Pm1ymab40a0wbwaFcWVClgHwjs
BmW5VYQVMBlkzpKdwcGfjdZQYdft6eHicMKn+v71/4u7mubGbaR916/gZauSqqULxDemKgcQIKe8
Y48nY0+Sdy8uSqI92sjylCVnk/31bzcoUfwAZW/WtauDLZEE0A0CjW6g++ntUVXiTDTuFGAacctJ
SoN7FmhIqZUZS11BKdWGMDVEI+zW0yegiqxxekniYL8XFeasuq4fsFsXl3APjIl+Qr8m+W3zJZwA
gEKBC4soPfQY8y7NYe5hDoHCKq4kf8HyjDY5ZeVEHu1zexfh1rD50XJuIDb6Aho0UVA/DUsFRpkx
QyRCXgSoVVY6xEkq3ywEsdN+j/JI2CxcxMQTrM0s+rm+R2nXSSfUDBeriPfcYOp5XC25h/nuMpOW
PDeEaFIYmf0Pc4v2ye5zXUW4rkaG9mW9q5YNXhHZZ6Ixip6xJrMTJ8phCDPlKD1g8UHjBOat9znh
lFD+huAUB0qmXPSauz0eK2MiPI5s2WgkwyEmL0TkgfRuEJttoS0oSJi8ymCstIcp5zGTlAGTtsxK
pd7e+74l50SAwyAqD7mMmMBzJbrJmg+AaQcdO1Oty7ikMP8wX4HAyOAMpIr23CHMHHCphdFscLw5
qm/WbzhKzd0g5Pvb7utTXR3zADCNXrMhg4f3mJnJpZkHPYFZBJpyTgbXWVcUBczhk2HfvZp7pN2R
iFl0J4aeYAOtuYFJRq05hAQokpdKCsxnbTAoHXRm4SzqzCVY2LCIOPpKs/YlfXlSV+bSjAUwV4RP
apchOciqXEXSkhjQlA2FdThnuBiXNuwe+LSwmjnQMnPnytfqMtjEiewkcLfHxjxybAsXW9ew505C
kgAIz50BVVfnqZCI91yAJWgZZSmY2mjHgOUqB/4sz7EEJIYv2NjY4EsuBlrgst7+unv8tu3E58Ag
3cdukeBdx6yElQzkgkPnJkZgec6FNinhUhai4DS6XxeLSAxNHSQFPjAVmDh6cNbnQsZYG8Y7hBXS
Vd92zyj7Gm8dE+wM6wpXklylCMmLiiJN85KrtNAwNmBeCqbexj+5Q8GEo3LniT6PEQ81XtPheaBf
LQJufAti3URYhS2//dsj8E1wmrocT0VgPcdTGpjNAgNWikwJ84bL2pieKSjW4XM97uvY7L9jbLQB
sH58uv5js8DzULPHKm5eMWYJVQVmNRXogg7KV2p8yPjHDNzSvtTqzde2lp4pCbG/PeuzxWO86hGv
D7gXVm3qdfOOzxDIxwSEf1uoAhbzVAh0JVVopmGmmRzMUK6st7QwbzGcuyRMcXh8YsCkiTFZHeTg
U/3w+Fvd9TPk4fBD0KJkBjefPMZEsAINUIOYVLCUw3JkeNyMGtY3IGYeIaYaQrZMx6DlgnqLCS4M
BTOFeQT7wrDFXBvjJabKdtkroppjpC1jA79uAxWuF091vfkMi/8x0QOn8oyHIENZOoWxfFwozOdu
SGq4wOSQIOG8AE2nHDixjavrU1OP7XBBCY34lQdBFtbexjOBSYk7CWFDRFE8XxApprTG8x5QrBnI
XSe8cgLTXNv8RQl0AtGwvT3rkTlOHQcXaesGtlgvF9+e6819ZxeBgk2AMlOCUqw12nEWY6tJxlOj
NEk9kzrzjliiXz4Fda+x48ZU9JmgY9kgua4iWzmH5EQoG0KAYpAO++xH8OoJKDspYVajbQ0KMCa+
ACNbqAy0/Nf4Ip3OftR9Ytandh5hwbQp/BbbDqBGR2kXtCQ+lzbNMIkgE6JIYW32qQJdnnuGwYgD
v4ZOTX0KInaT5FU1mO69swJKWvWnwMMUR2CyFzLbR0iUrEwtVCxkWaJP2qnJPnFoABREOkaKRjV8
f1GEMXFMH6Z8XrASlrIMEb2Zl6AXosjxGHdewNpGxZuccTftHg+3m989ypWMdKi5IyOcko+NnEu+
U+hpG7TK/beQZic3sCwXqSclDMUMYzEzWMSoFWVBqLZeviAWDvVPYY7sb/don8eG47xqIVzX/3qo
zsTxyChElxCwH8BQKy16BKOLrMXcB8QDM4xZR9zAfOxW0m+9kpHW523ax9+rp6N7MmhuuKnJKFGl
lCnFHI/M49Gnh9YVAUUVbFfC3CBktVNJv/FxLk+YhvVQqfptFYA2Shi1za4BO2tOVcL/JvU4vB4w
TDjF83uidGppnoE8p2AMwEotzOugLvctTOgd+7tdFpQZBzrBxbkcoR3u0EdOyKAj4b+gCMMKqDJM
m4aRtqD3IswawrQTECdaF9KwF+Ird1POceFWn9IxDoxR1egICzd5lvUuwOJsF6G7m22p5iyh0BIW
dQIqO8GdCy1ZmmcBNkAW0vvMutd59iFYtj80M93no8dmfeqrCEuqTYmzeH5aw5p/yLwXDnRoQbKC
5ykFuzYNOM4GUx5r4UotvCi5MMP952Ml/dYjXnqqMkN0U+zD3bp1DAOdjZPgdeIM8bZgOuVEg82H
GKewhAgQN9LqXColqX4JoKytuE/ZGBgCL+oRzPX1c0BaDlmhQX8PRnbzLax3BUJ+ScyXBl3l0WUM
sRS5plQUsMjQF5xO2/qnkK33t/u0V5EJVS1jGt7BCgqI0RucXwhyEUxN/I9qRpFlWUls6hXusyjo
bItOS640muWeF07nrz5sHbT2cpLIw5N9/u50hL+74Um43W7rnasWXztZLzPeBILyRh0pKTel5qmU
wCDo1hj/Alq2VNSA9eWF9K/z4xu1NOELNHpuwNf4hFzNEfKB9ff5xhnrC/tJE5r9Ejhs9MSscVn3
WcEKIggsNZgtmYOmowutU285cOkNL8tXnfkdWohzdrg765O+iPDDhukqfvnk9t3RuqDjuyloBgaO
TMsSA+/AaEzzEmaSKT0rmcw5eV3672PtccqP9/u0R2xbNd+nuDoKkBWCzh9MNhX03LDbaq2hVPpU
co9pwiQsSxLdeZ3NLc9VWfKTwInHavtEjRM4wEU9PCw4X3TTYUgdhrzUe1/QogClE7pV4FZkjhlH
KYZIsRyxeTwY368a8t02JmTTIpoLAwmODQs9zCBwWW3un8De7/otUa9lziz2K/oS5DlMWAdqVOZK
T2AxKDR/lWP5oe6JhX9/t0+1GXtRq0U23Lv7VD8hABdCclqQW39sV9suA0R5pz2jqZC2RBx69C6D
gWG8g5mZW+3oq3atI81MHL2MH+yxtczGDnNqKYewshhQv1g3xnQTo6CCdAEtNtcICmEJQYR0sOVy
B0uEKWBh4Jobooo/bVQ39/rkLiIzYLnMIvH/9+vGzmr6PnzB5Ywao3LEQsJMx8yqDKwtECuwpAmE
srTK0T9tcjX3+gSPYXvh4t1QZbx8Xu9Wu8fnxddRSnq0GfZRyc0XnAcChCKCljGZoQM6DCibB3hK
k1FOwMqyr5sH0832JsTwsT6LkZByVbPhO/nRB0+uho9gBJWFAMMXViYdkp1kaCuCZlGCQCpAayKy
ePuD6R8nfFZ+7DmrNOAvI55GuXM/1E/z+ulxi5y1vpU5VxxDpcLuLdMFvBsrZFrAaobOYiUtTp9D
HCqNE3q42yc34mGPF6PJAJ83q922gfb7smmi3Pq4fjoX1NC0pCFtm0XoRKpT7cAsVtQrIujLuH5Y
8wlQP7w94IDHOGgtgXXAjGoRE2VI8tNksOeFl0SkIsMkVpJn0N3cp4UrWZZrkjkRz2DfrbFPSiSq
WlMyl2KPFjv/x+KYjFwGLyUvwPDRRKVZmWO0lkUnNyCKc69sWUiQ62qAF9upZdZvaRFpPlOtU1DY
jne9pEeSENWmPTIoDyhua3FYH5mBbskV6FBgbuoMzCOE7J0I4x/W3CdMqQhhug08cV9Xm3pb3zz+
Wm9W/+rkLEZDXZlcO4nYEQQpcwrWCOp8yqUgKjPQQ36w4xGvrk/RGC0ML+oDRV+b8La02m6O8eEi
WI9hE8jozBec4CYQDnWJcTwFpqpz2maZ8NL5gSU7rnFAkIkRNB+spr9/W5ztJRboGtV9/RDc+o9q
gjcSxg3oj4XHtNsIrpoLb9ICpiAssiTL8tMbg6Pap0JIB48NuImNxKrt3hFIrMIJWXqDJykSM7w7
PKSTGInMUhTpGcxGJ/hgZ20aCBabi/Qoy6YdUs+vgs8zGBJ7oGplcGIETyhBTPCyNR6Rn7Jcpdo4
hageFiYIzKEXwLhC3VOW+MDfWcsx8DNebGPe1qBlrpYd/DUckM7xEs/ioZdwW1qinoLARAWzIgMd
V1M62JXs1NJvPhL1BxfpKNh54R6X9c9P8DOKZZeVGoNPgSSDxwx5iMOCPx7sGaq4hOXidY4jvYYm
YS46zwzYkRF2dOsqeQHConqy6/saCBihXZSgasAyUaYlwXTpjiCIHLcpd1blOaauo/8ttIsIoX1G
x7mt4OJ8lK/k6/Pm19Xmfk8rStkmzUMAcvGqpFq4lBCMHZZ5DlPQslSg/2rGBLpfvmrPpt/IxHZN
/6EeM5E0jgazr9wt+rvT+4PGxmFZN2f9osx5RjG2noX4P5ZaWETSnBnQoZxmsNz+N1KrNfdms+L3
/Q7Z5eNydXfwsrp+fniAdt8B165ar7fJQ7Wsk/kfyePuK0ynb0+PiMgHZviuerqvAxrZ7iuYhPsb
70Jv7artr7dgpd1+Wy3fJVlzLTiD3S7g765+l5DuxW29u93u2uv9hl+qnvxn1cOPDlfQA6E9dHCG
cR1rj4E9Qv+9Nmc/XSboFtrtXzzOvtqs/0jQ/MA7j3dJe+j6Lrl53FXrHxhjZ+oyeaq3qyUsZj+Q
D9+Rv3yfbP+J8mR5+/i8uwWynjchqRU0ttyXwOxqf/l+9vPTalfN1zVUgI231WZn4n3yT7gJy9Sh
zhNtHC5128Eq9q0kge/Tn5/OP998sRfw7XPx/vzqYzLb/7/5v0/FdLHr87+Hu+7qy8eb5LvN4yZd
PFbreruol98nsx+On4kK2ruHL7PYLBoVy6j+cPhOscxu9RsiYd48VQsc8pEPJbxXxr1PENcYn97u
MG1IpEymlRyUWQXBceKTaU3aMiyU2Ybklk3RbbxQpx0JZTCeYQPPh4E39TH0UCbjTZkv53v6gndy
5CM6fSAHZdDNJUrbsZ0E2vH7gDGQphjr0MRkDrjiIFEvO/3WAW448aG822+NhD6/OllCZ22/ZSSZ
/e06+dv5TXKPcXY4C4DG5YAnKmSHNjFV5rsmjwyO4iRRss/P4XN4JgHxUS2X8HObQOfgtnJnKn4/
Awt6U68Ti1eSq81iYvzoLvuX9uLiyp2csyzjZ/JAFpdtmfvn6mmZfJsap+z4OhWUCTlKk5vqHvqf
Tg5q2p0G3TIimyzTmzrNTlXy/uL64sT7FLI71D41Yj+BYfptC2MBk7q+NK2vf7xY7eqG+wUefES7
QPeG2vWNdR+S91/sZz9JGgwb2vY1ltmB8HhBqFJ9xrvv56fL2/CG7E1xUn60tJlk9nM9R/PiMgyn
iSJatu1kSiez21tvb+wLtPG2DJUMy+Cryb+cX9ycf7yeej2619e3t+eX9n1xuiFBB2Uuzj9+KDxM
uckeYGAtX7ajCMvcFL/cnGaHsHYugMqJZb58PHdX/iR1QvTG9UNYUScFYXgqU8dxwKDf9rL9oZkS
UzPhOA5QVP+ZZfHm6sZevLSK07Ps/X7kSLMv89fkAaT0tiesGiG1J+iMd8vM/h9QSwMEFAACAAgA
MoguSlsEWA6iBQAATRAAAAoAHABodHRwZC5jb25mVVQJAAPwyXpYL896WHV4CwABBPUBAAAEFAAA
AK1XbW/bNhD+rl9BuDCwFZOcuHHnFUEA13GWLEmdWU4DLEkNWqIk1hKpkVRie+t++46U5RfJUQNs
DhCJx+e5Ox2Px6NLxBMRI84VarQyKRqWdZ0pMkcBjcmHlkrS1h2ZXlJl3VD/DGQA2whbkVKp76TU
b1iuxwX5yLF4ESY1YqoRYGVME8Izhd4dHFiXhKS9mD4RNGTWNZ6vxyPyZ0akkuhwG1VQDzvgLGVu
igVxzXcAUPN3JB3LVVioHcBK7x0XMyPrHGhpnzNGPEU5kzdE9CMa+9ow/CzrimP/mvsZfBnOFKfM
J/NJkgtiOiVz4rVwir2ItFsgnqxBjuTb5IzRuV9HNIASCXsekXLi8STFqtbqNrCsJFMRm+gl+I7f
K9Qe+vJV9OXL9IhL9X26RpXolHlx5teaXkFKxJiH4A4LaFjH3aBK9IhgHzKkjruClIhSxnUkmC4R
EkjqOoaeL8dU0lrP9HyJ4oW0jgHTJQIjIVcU601RR9yCaQVvtpcuwSFJcFq7ditMJe/NZqzPeAMp
E2OK62kaUCIJ8iyoql2EFaRETKO0U7BWvzIZxhqliVZeiT7hhKDD9s/OAfwdWtbxKRVQfLhYoNaJ
pXUMU/Np6EKXESLRGY9j/uwukivKZhJdZ7Ginyl5lmgApvq/XgDSbAFp6D2NHoIlQX2iR7lSAckK
8YG5n3zCFhsoCgRP9Ix13Fr7cmJZPVNTdE03LjuRyqsMuKyFEv2DGl8enB/uz6PH+7F6/Pv+1H+8
d+XjRP/7sXHyst1TeNmY1RIXUkgGC+PuccvoBxduJeljxhn1cGycgGPiHIoEg/crzmdZKtEwCHSV
Dq/IE4nRMxbMsgZCcAGy3cOIaKne8o6aq4YhnXGRYDgBmxFqxqiZoaZCD42meGig5olEzake/TUi
ARFEfKMg1mNwS9i9kDClRQ0EZXdKGfFfp7F5ahgJZzv4jRVkn6DmbQPy0gh2UcY2zm03kHkpMsul
IcMqEyZM1vFFUFSYdd57JxDcQn5SxphK4+XL1vP9K8zCDAwgHyPHn1XELEYOiytiwpBDWFWsQEwq
4kAgJxBVk5BvfhUNC+yQqslIZ+ca3Y+wkGDuwh3a3W7nF7uLHCp5/lrhUvALmpyy+Ct881e8T2X7
oN22f7uBaSortBl8zky8SLscGVfsWfWLGYSNVcPGOIh5RZxCIFL+4he3czNpNVQpfG6q9ojtqdAz
8KhMxmqJnDiryD2IkYeriyRhkaqhkU/IkU9VJYD2QL9XZYgMOaJqdhnZ4zvkwEM9lyPwkYadohQj
pxg5U3gpQ+8uPp0O71z7sN05BPOpeSmD+jfd9+/X+rwURi8GXZsyYd/4XGAuhxdde1SomXHatStJ
ctt3Yd0KTObJ9j7E0TbiqIIYn0G2rxEq6FoGsrvPt8/s1XbXvyLAN4JyOOwWeifD1odtDpphn/pm
/8F+gb0BeQ6ZCVkI+ZTnDiyWzhPICVh/WOvV2uyUm5W340UKJ3WaxlDWtROtuQ2NOnJUuFxjBszj
PmUhmtu6qRVw7iDnjz2z4ZKmyAmXu/RzzPwYzh3oa2zpCarTHt4hw+NdN+DGo28pCewnqR9lBdJU
VjvV8fULTBXEfBtLm0rTmtXVWNMMbGrsnlCYK5MNOHA2Sl8HnGL1GqAteSY8YhTLfZnhU7GdEetu
wHQiKL/WmGDlr4V/lUWGiUkQ49B04ebYlYiz3SkZcaEmPCVsomAI0zVhK/qvlXOjfDhgIRy7+rTb
EsJlzkdwmg5+vx2448n1YHw+PP2GvoxHvf5gGzjSyp23yEb3Z48l45+pUBmOda+B3n7oHh29yw3v
beHMhHu18ea4tcUHdW+sN6gHS0JsmRKPBtQzt2y5kIokKBVc5bdPB5Cr3qohpPD+jxZqq73UDZvz
9sF5cHT/5AdwCf4vFrZ6xX8BUEsDBAoAAAAAAHyILkoAAAAAAAAAAAAAAAAJABwAaW1wb3J0ZWQv
VVQJAAN8ynpYW896WHV4CwABBPUBAAAEFAAAAFBLAwQKAAAAAAB8iC5KAAAAAAAAAAAAAAAADwAc
AGltcG9ydGVkL2JsaW5rL1VUCQADfMp6WFvPelh1eAsAAQT1AQAABBQAAABQSwMECgAAAAAAfIgu
SgAAAAAAAAAAAAAAABoAHABpbXBvcnRlZC9ibGluay9hbmltYXRpb25zL1VUCQADfMp6WFvPelh1
eAsAAQT1AQAABBQAAABQSwMEFAACAAgAfIguSo4WwslNAAAATwAAAEEAHABpbXBvcnRlZC9ibGlu
ay9hbmltYXRpb25zL2Jhc2UtcmVuZGVyLXN0eWxlLWJvZHktY3Jhc2gtYWN0dWFsLnR4dFVUCQAD
fMp6WHzKelh1eAsAAQT1AQAABBQAAABzc/T0sVIIycxNTVHILy1RKE/MLMnMS1dIyy9SyMsvyUyr
dMnPS1UoyVdISlVITszJSU3hCkgsLlbITAPKKyQXJRZnKADVAoVSi0q4AFBLAwQUAAIACAB8iC5K
/PlStcMAAABvAQAAPwAcAGltcG9ydGVkL2JsaW5rL2FuaW1hdGlvbnMvYmFzZS1yZW5kZXItc3R5
bGUtYm9keS1jcmFzaC1kaWZmLnR4dFVUCQADfMp6WHzKelh1eAsAAQT1AQAABBQAAADFjj1OBDEM
hfs5hfvBREtJNaAFCUGBALG1M/EsFp5kFTti5/ZEK+5A9aSn7/0gIoTPom1lC3tyCg+H93Dg+Cz+
J/dNNIU3VibjoLSV5uhsjpWtqVuQ9VSqcwpRJX8HyrKSS8kWYo90LCeuaL4pYyxpw7mSfSGfTzz3
2LWffRjH8d+O0OyN9HJjmgB3MO6ubmCahvHx7unlFj5k5QR9DX5IXPIRllIhF5dl25fM4AUiw0yq
nAZ4JTOQpQNw6YcOd4urD79QSwMECgACAAAAfIguSqKG1JsbAAAAGwAAAEMAHABpbXBvcnRlZC9i
bGluay9hbmltYXRpb25zL2Jhc2UtcmVuZGVyLXN0eWxlLWJvZHktY3Jhc2gtZXhwZWN0ZWQudHh0
VVQJAAN8ynpYfMp6WHV4CwABBPUBAAAEFAAAAFBhc3MgaWYgbm8gY3Jhc2ggb3IgYXNzZXJ0ClBL
AwQUAAIACAB8iC5KqrK+sYAHAABTFwAARwAcAGltcG9ydGVkL2JsaW5rL2FuaW1hdGlvbnMvYmFz
ZS1yZW5kZXItc3R5bGUtYm9keS1jcmFzaC1wcmV0dHktZGlmZi5odG1sVVQJAAN8ynpYfMp6WHV4
CwABBPUBAAAEFAAAAKVYbW/bNhD+nl8hJNgCFJFkJ3EX26mHNS/YsG4olmL9OFAiZbGhRI2kYrvb
/vuOb7IkS0mGtWgtkUfyXp6756jrXBVsdXSdE4ThpyAKBWmOhCTq3WmtsvDqFIal2jGyOlowWj6e
BYsnKqkiOPjrKIA/imxViEnKBVKUl4ug5CVZmqmEC0xEmHCleLEIptU2wPBM8PLonyO7ndsk5YyL
RXAyuZibueieMnJLs8zNJyh9XAtelzj0otmV/ts+yJ4gOaM4OMEY27mMlyrMUEHZbhEUvOSyQqlT
sEBiTUHlKSmCiR2qOBhn7BCEgUVPxCiUT3uaXlxcDOwvUSlDSQTNWpOSfiXmjPahISOZWgSTaObH
MZUVQ7AJLcEzTsMNxSqHxZPJN04/hDEt181Kq5sLjX7qRsepS8sclFKNeM6fiOhZNJvNlmPOJsS6
IdIx+QBnSbc4YxyBGYKuc9WNnJa6AfMR2OKP4uB6qsDESc9khRJGwpQw1rEyNPt2vLTJwbrQxFBD
bSNQtdfsgaQ6dqOgMYu7kOnDxWHW+x0ANam29oS7bQXhhf3BNHIWRPqnb+GoepJikuz0/4FR9T3j
6eNHJFQEpi4yKqQK05wyPOpYfdwDrD97bjNBCgjt2QvnuTO8+y3gwkSLdGA386gDtCiaIhYiRteQ
G4oPmCWIRvqPqMSMeHe4fbQL9XtObED3eE5rIXVotNr9DEQJRKf2EYMzG+DY5DHqPadFB+eHcFgL
slv2gBnNXoqXdXEQKf6im6NM8KLnbFcf9Rna67/WRUIEoIm00WVHveKHZdShdj7vFECfLkNl0Gfy
5eXlYLlpR7+pMXqjmU0BmwZNwXc4cPAcgohVtwOnC1ewWoYbEwcLjiWJUbc8U6QqobNTq+kc6KuJ
Q403pJOrsCi02WqmwJ/mFewQBD2GesAqRAu0Jp3ILILzxuEJQ9qLWjCF0gA6gCruKejbvY/K1eV8
tPZmJNsXAA0r2LGhx1Y2DyzFGe4uhWDLcfE5mS+f4/RmJ1dl2nq4rBina4wPNggwYeMryPxFbeI3
wUNdVVwoYFrhkAxOLQpSKhm8ieE8VKucW39bNtbNDKBeAU5THymzwMiM8H8jo5VBAAkj7MvZWw9s
XW4QYzdeg0Hpc8tlBdqGPXovoC9wQ+eThnf6R4Pfnz2nyewmpTvHDOkZ8YpY2gw3JHmkKlRCp531
hFU8iM7lsmXGpTP6RCqkavm+ToDDGz6MdPYMqqOXKM5ZgkR33h+dMWIydD9R8K/NaFOcLmweuz5K
P/puQT+Pt4RjlePZVm4Pi4xuid3H1eNJ16QImR7Eptkhi28o1ALRg1qz59eQlphsoUg9Y9qeCFsq
DNnlilGH3q5cFSu1mi5hB6kJzkv49kVF3+4VnVoQexKyb0ZZ99wwmHttFG46s87RNBOosBr28qTb
RrRy5Gak0h76Zge9Jt84ricMGkfomV9BTG/n93t4OU4emTSO6M41bSQ+bI+7zbHbw7rvEMOjLQH2
ddYe84MvCv6qM2nPfvIc2buTvP3OF7RDNZ9JktZtRxbI9vLtmltyAcPLkSrj7NctmBw63Nrh83oy
JMJQQtgCZZBhZwfL7bjZxBByCaYeB38Hx8ujhohb9N1fzRB06DwL1a4ig1sdj2rkBHtX3JwwUyCb
ZhTpZnSEo04KIqVvPEb9PBSWVnY8mEL9GioEioGG6InyWt40I9DMfiXlTYssh3jetxx9immTi67l
gFqDBF/b3btDoisiF54DX6WNgwb0OETpnOjQhWv7Rpq+Ns8mNWRV2a47nt8xfVpkPHU+5LXS9aKd
fgmrDZO4KcBLBroAg029IW2yNLtAD/MpJ/ak2DHtGvTXNigeKJhLrLSDmgyeKNI1Wf3iMAHKJoJv
IODQCeQI1rqmiKpIN0GNHZcz18U3rYh799VBN7L636RLov6TTr/HLyiGW5Y1TAdI+sv3AKNAH8Yl
egLfgwdIj1faN70Dqgun0YVtmfYfPzz7D8Tg5Pb2tpXSJ1f3t/ez+8H6BM3lMIrv7u6GtF6QooIK
1Qm+a9N6khE8gqadzL+bX02uXN1KGUHiD9Me+KuAHjHXplyLXMfuq9u1TAWtIKYifXecK1XJRRyj
L2gbrTlfw6KKSg1dMxYzmsj4y581Ebt4Gl1G5+4lgtYy+iKPV7Cv2W8VdHdOOSahjiHZgNz3EGkd
zHeXV60loJT7UJhwvIMfyAfQG0n57tTfBPT3wny6in+HeELNim+RQvHd54f4M0l+psr9vK8pw/Fv
wLtIkhiQAu4MFYEKC9f3mikZ00IjmOA40Z+2YlTCvcv0VXECS0Cs1ARofBRqbcJUIJmH0NXUiEVq
q0DXaVfF1hei08MZc3MfG9c3+gDA15vXd5mg+xnICUGBKb2U+Qiw7yxOV9+WiayW4FYQWnVEIeHb
gtNBGSDt09X9Dz99WASfaAFtCzgv2CBIJQCcvgeVXNFsdwuppytIApUDwE6w2wyiCCb4n7Y5LVCe
rty0k/3PzpI53Ede9teLvpq+wk3n4276CM/QSIJLAgOQANwDQ1DH/o83ej8mGwBv5lv6v1BLAwQK
AAAAAAB7iC5KAAAAAAAAAAAAAAAADQAcAGltcG9ydGVkL3czYy9VVAkAA3rKelhbz3pYdXgLAAEE
9QEAAAQUAAAAUEsDBAoAAAAAAHeILkoAAAAAAAAAAAAAAAAaABwAaW1wb3J0ZWQvdzNjL1dlYkNy
eXB0b0FQSS9VVAkAA3HKelhbz3pYdXgLAAEE9QEAAAQUAAAAUEsDBAoAAAAAAHiILkoAAAAAAAAA
AAAAAAAmABwAaW1wb3J0ZWQvdzNjL1dlYkNyeXB0b0FQSS9nZW5lcmF0ZUtleS9VVAkAA3TKelhb
z3pYdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIAHeILkqPNBpwRAAAAKAJAABHABwAaW1wb3J0ZWQv
dzNjL1dlYkNyeXB0b0FQSS9nZW5lcmF0ZUtleS90ZXN0X2ZhaWx1cmVzX1JTQS1PQUVQLXN0ZGVy
ci50eHRVVAkAA3HKelhxynpYdXgLAAEE9QEAAAQUAAAAc84vzUlRyMsvUUhPzUstSixJVUhUyE6t
VChIzCzSUSguSSwpLVbQNTE2MOFyHlU7qnZU7ajaUbWjakfVjqodVUtztQBQSwMEFAACAAgAeIgu
SlQCybI2AAAAwAIAAFAAHABpbXBvcnRlZC93M2MvV2ViQ3J5cHRvQVBJL2dlbmVyYXRlS2V5L3Rl
c3RfZmFpbHVyZXNfUlNBU1NBLVBLQ1MxLXYxXzUtc3RkZXJyLnR4dFVUCQADdMp6WHTKelh1eAsA
AQT1AQAABBQAAABzzi/NSVHIyy9RSE/NSy1KLElVSFTITq1UKEjMLNJRKC5JLCktVtA1MTYw4XIe
VTuqdpCpBQBQSwMECgAAAAAAe4guSgAAAAAAAAAAAAAAACAAHABpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL1VUCQADesp6WFvPelh1eAsAAQT1AQAABBQAAABQSwMECgAAAAAAe4guSgAA
AAAAAAAAAAAAACYAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL1VUCQAD
esp6WFvPelh1eAsAAQT1AQAABBQAAABQSwMECgAAAAAAe4guSgAAAAAAAAAAAAAAACoAHABpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9VVAkAA3rKelhbz3pYdXgLAAEE
9QEAAAQUAAAAUEsDBAoAAAAAAICILkoAAAAAAAAAAAAAAAAvABwAaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9VVAkAA4DKelhbz3pYdXgLAAEE9QEAAAQUAAAA
UEsDBBQAAgAIAHuILkruPGTECgIAAL0MAABFABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLW9yaWdpbi1zdGRlcnIudHh0VVQJAAN6ynpYesp6WHV4
CwABBPUBAAAEFAAAAO2W34vTQBDH3/0r8nJ9m2Z/ZjeFIqH2TkFtofp8zM7utsVcU5qI3n/vpoen
lYPrWUSlR0IekjCf5MOXmZnM3i9mb6fZu+liUV1NR9lst16uN9mq67ajPK8bwnrVtN3IWsaydZtt
mi7Dum6+BJ+526wiCm0Lk2bT7Zoaqv4J3NUYvpj8WvwydLTKqvmbjHDTV6ob9N9ZXJghSwffs/LY
v5vjdp3vQtt83iVOvt2FWK+Xq264vX3ZNZ/CZiysk6UlB5qEBiV0BCtjAZ5IFFbxkhkc3ODXa1yG
MRs0+08b98gLWV2Iy3Teg9OdHj3Y/9/1TehWjW/HV9MPwz+r5e85P2DxY51bESO3RkE0ybSS2oIN
MQK3QnpUUQdVPuL8HnznnJ+R84OcH+2cnMRASgF6JkCxEsFFz4AhE1IiT86fmPOzcd4eSC+VksdK
D7JkVgkDCn1IF2cBudPgo/XSWsGNlg9Lbx+03rPPyfoP2FOsF4V3zlGKOnJMUdcGLJEH4XlIzZ6p
wpSPWf+5v5yT9d+eo1porTmLIGVq7ErpfdQZSIaCTNDEnTxtjs5ni2fph9Jj6U3RD1IjKC0vmvHU
1ImAlUYUnNAL5KdJfz2tXg3/vzAWwnue5lxAnxYM6zWgcQQ6CCm4j4j+xKVu/vE5i4fOUVriIs26
oJJuRUpDyUIJzrBoXAhU6PiPLdLfAFBLAwQUAAIACAB9iC5KyOjVT5oBAADeBQAASAAcAGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1wcmVmbGlnaHQt
c3RkZXJyLnR4dFVUCQADfsp6WH7Kelh1eAsAAQT1AQAABBQAAADN1EtrGzEQAOB7f4VOvY139FzJ
EIpxt00hL2qXHstImo1Nt17Xq9D433c3ufRgSA4lGF2ENELzMSMtb29Wt1eNuG5Wq8XnZi4+cUkb
sbj7IhLtdn0RXU9ZbErZz6tKqnqG45Bz7xGrdoqtaL+tDjz0D4fEQ7U/cNtt7zdltj9+KP1P3l2E
GH1wLgMGYjAoFcTaelDZoDWBarT5/S96/EH3fIEzcc1l02fxsblq1o3YDmJKg7qu/8NZxKNYpPGi
AZb9rhz6DhbTDjwfGmbvlm8gqqOShmSCqFsE460EL9HAiCRybDlqdUJ09219lhwmiSkkD3WuPRjp
E3iVa0jZOuN922YdTnEW6+XlWYJ8ZJe9cxCsDWDs2HsxYYBaRm20bnPMpzrupvl+lpycpNRsayA5
cfT4drxtFeREqJWhjIr+5Xzl3w88FLFhynwQ7Za7LB6hjGvwvCZf67x8Cn+rPkw5KucN6KjHj0KO
BSRFNM6sCrXzrWLzonPKn3cF1sc9n6XSYQgJEwIqM1YTnQVKWgGmhCq4nJL5X5/HX1BLAwQUAAIA
CACAiC5KQ8I2b80CAAC/EwAAUQAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0
Y2gvYXBpL2NvcnMvY29ycy1yZWRpcmVjdC1wcmVmbGlnaHQtc3RkZXJyLnR4dFVUCQADgMp6WIDK
elh1eAsAAQT1AQAABBQAAADtl9tqG0kQhu/zFHMT3ZVUfe42iEUYexPIYVk/QKiuro7EajVezRgn
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
HlpDIK182b+fkJ6IcaWbFwK8xoXoCltPHU2XecRu/BjufYkrQ91kFbJ5HdZ2NC7zK6wkLL89Hh8l
wHUvj+dwvf42ITzGpPPvd9c4FSAP8et+RMcgZsmwSXVsERNTYWMch3MskO5pZALmbY1gim8qgpHR
SSen5Lafl8Pux9ttB7ZVgqyjbLzvDvvDGwFV183Fmxp6Wzv++BiP+IwDEWBreSJoI/UmQDiKfAWQ
B+MUzeF2+rZ/TOt395H/USgqnjRb0hOn0vvxoY17+K/Pa6z7Sk1y8JOoGUJs+OKyfv23e5yNmNo1
RyRH8khTusu+8P24GVrMqvFZ+3i8nW6p7/NjApDmSv7A+EHal6kIirk+snSKS1t5rRcft3e67P5G
oNrWC4/EmGnx+fr5tMBR6cd5fD/F+QBIFCFBrHtTQubWRkVz/H58ul8Pv5XqupEv3h+3z0Pa4vMx
xgbi8Ae0cWnqTFU4ukluziHZZyWGVx/n28+nU/7FeEX3t/1v48P8Le//fHzdH36Oxzjs5s3EZsQf
417iOIFREUIEchruOFUsiMbyiBOO5kSGDAMHESqI+NimZgNxfvnT+fo0EtL78X6P7TOuozGEGAU+
Va7rCgkkeUVIjzdsZnheCfZQldk5FeNyuMY2kUnkEQepnwf9PyrKX/anc5wYeImTH+6H0ylOZ3h8
3neovpxRDE5VvVuP6zUNkhrfyU90bG86W3lkrm1Nfhxtg9vu+C02gLyNN/QzbSZ1ORnZ2emeZnGM
esFE5bdvo0WR6SLNlTZIzlHacrHCXW7/l39OqmZq7358iTNoRimN36aeIuyiaSg1coLxtMR0wLS2
ZDw60TTroq4iU2l52e1rGNXT4+WOdk7Ol1RPHFlk0au+X2+/jc+nrDgc49TQSNNYPom0umaUJCVZ
VRLe3277n0+fLy/jXZyO3wkYQwtjmg2Xvw/AECBA0149G5f58kbeVJ8kfg8ZTs2wgX1NpreNL4Tt
53OlvGol5v3zaVTzHteR9d6J72uQ2BR/2Z4j3w+xHHT1l4tbzdP6jsQRdK/x8eUKt058GqRk1Rr2
vPPEjfK45f0dETwZSMViZE6l9WfZf35JxP7r4X0ueHVdYiQ+D9LDdBSn8PP1MR7e9ufIW2Nn2svz
9f0y0haxrUpSMf2t1LiOaK1EGadTRqUPcajnvYGJLMLkn3JK+4hIHjnD5yXxmjRYcpQBCXAeR0Fw
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
LW1hbGZvcm1lZC1wYXJhbWV0ZXJzLXN0ZGVyci50eHRVVAUAAwLKelh1eAsAAQT1AQAABBQAAABQ
SwECHgMKAAAAAAA5iC5KAAAAAAAAAAAAAAAADwAYAAAAAAAAABAA7UGKwgEAY3J5cHRvL3dvcmtl
cnMvVVQFAAP+yXpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAOYguSgAAAAAAAAAAAAAAABYA
GAAAAAAAAAAQAO1B08IBAGNyeXB0by93b3JrZXJzL3N1YnRsZS9VVAUAA/7Jelh1eAsAAQT1AQAA
BBQAAABQSwECHgMKAAIAAAA5iC5KJeDTCCwAAAAsAAAAMQAYAAAAAAABAAAApIEjwwEAY3J5cHRv
L3dvcmtlcnMvc3VidGxlL3JzYS1nZW5lcmF0ZS1rZXktc3RkZXJyLnR4dFVUBQAD/sl6WHV4CwAB
BPUBAAAEFAAAAFBLAQIeAwoAAAAAADyILkoAAAAAAAAAAAAAAAANABgAAAAAAAAAEADtQbrDAQBk
aXNwbGF5bGlzdHMvVVQFAAMEynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAPIguSqNX/ehQ
AAAAjgAAADIAGAAAAAAAAQAAAKSBAcQBAGRpc3BsYXlsaXN0cy9leHRlbnQtaW5jbHVkZXMtdHJh
bnNmb3Jtcy1zdGRlcnIudHh0VVQFAAMEynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAPIgu
SvKWldVHAAAASQAAACkAGAAAAAAAAQAAAKSBvcQBAGRpc3BsYXlsaXN0cy9sYXllci1kaXNwYXkt
bGlzdC1zdGRlcnIudHh0VVQFAAMEynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAcoguSgAA
AAAAAAAAAAAAAAgAGAAAAAAAAAAQAO1BZ8UBAGVkaXRpbmcvVVQFAANoynpYdXgLAAEE9QEAAAQU
AAAAUEsBAh4DCgAAAAAAcoguSgAAAAAAAAAAAAAAABEAGAAAAAAAAAAQAO1BqcUBAGVkaXRpbmcv
ZGVsZXRpbmcvVVQFAANoynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAcoguSqjZZ5i7AQAA
BhMAACgAGAAAAAAAAQAAAKSB9MUBAGVkaXRpbmcvZGVsZXRpbmcvZGVsZXRlLWVtb2ppLXN0ZGVy
ci50eHRVVAUAA2jKelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAAiy5KEMl4+CELAACkOwAA
DQAYAAAAAAABAAAApIERyAEAZXJyb3JfbG9nLnR4dFVUBQADL896WHV4CwABBPUBAAAEFAAAAFBL
AQIeAwoAAAAAAFyILkoAAAAAAAAAAAAAAAAFABgAAAAAAAAAEADtQXnTAQBmYXN0L1VUBQADP8p6
WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAEyILkoAAAAAAAAAAAAAAAAMABgAAAAAAAAAEADt
QbjTAQBmYXN0L2NhbnZhcy9VVAUAAx/Kelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABMiC5K
2IpiNnwAAAACAQAAJgAYAAAAAAABAAAApIH+0wEAZmFzdC9jYW52YXMvY2FudmFzLWxpbmVEYXNo
LXN0ZGVyci50eHRVVAUAAx/Kelh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAABUiC5KAAAAAAAA
AAAAAAAADAAYAAAAAAAAABAA7UHa1AEAZmFzdC9pbWFnZXMvVVQFAAMwynpYdXgLAAEE9QEAAAQU
AAAAUEsBAh4DFAACAAgAVIguSiGPvTgyAAAAMwAAACwAGAAAAAAAAQAAAKSBINUBAGZhc3QvaW1h
Z2VzL3BkZi1hcy1pbWFnZS1jcm9wLWJveC1zdGRlcnIudHh0VVQFAAMwynpYdXgLAAEE9QEAAAQU
AAAAUEsBAh4DCgAAAAAAXIguSgAAAAAAAAAAAAAAAAoAGAAAAAAAAAAQAO1BuNUBAGZhc3QvdGV4
dC9VVAUAAz/Kelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABciC5KcQ5K9XwBAACICQAAIwAY
AAAAAAABAAAApIH81QEAZmFzdC90ZXh0L2Vtb2ppLWdlbmRlci0yLXN0ZGVyci50eHRVVAUAAz/K
elh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAABbiC5KAAAAAAAAAAAAAAAACQAYAAAAAAAAABAA
7UHV1wEAZmFzdC94c2wvVVQFAAM9ynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAWoguSk77
IPiIAAAA5wAAACUAGAAAAAAAAQAAAKSBGNgBAGZhc3QveHNsL3RyYW5zZm9ybS14aHItZG9jLXN0
ZGVyci50eHRVVAUAAzzKelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABaiC5K/aIuZI8AAADu
AAAAJwAYAAAAAAABAAAApIH/2AEAZmFzdC94c2wveHNsdC1iYWQtaW1wb3J0LXVyaS1zdGRlcnIu
dHh0VVQFAAM8ynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAWoguSs+PZg5QAAAAoAAAACQA
GAAAAAAAAQAAAKSB79kBAGZhc3QveHNsL3hzbHQtY29udGVudFR5cGUtc3RkZXJyLnR4dFVUBQAD
PMp6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAFuILkqBSnetSwAAAKwAAAA0ABgAAAAAAAEA
AACkgZ3aAQBmYXN0L3hzbC94c2x0LXRyYW5zZm9ybS10by1mcmFnbWVudC1jcmFzaC1zdGRlcnIu
dHh0VVQFAAM9ynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAFYsuSuaxGhH1AgAALAwAABEA
GAAAAAAAAQAAAKSBVtsBAGZ1bGxfcmVzdWx0cy5qc29uVVQFAANZz3pYdXgLAAEE9QEAAAQUAAAA
UEsBAh4DCgAAAAAAXIguSgAAAAAAAAAAAAAAAAUAGAAAAAAAAAAQAO1Blt4BAGh0dHAvVVQFAANA
ynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAj4guSgAAAAAAAAAAAAAAAAsAGAAAAAAAAAAQ
AO1B1d4BAGh0dHAvdGVzdHMvVVQFAAOeynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAAIsu
SgAAAAAAAAAAAAAAABQAGAAAAAAAAAAQAO1BGt8BAGh0dHAvdGVzdHMvYXBwY2FjaGUvVVQFAAMv
z3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAXIguSsJNyB10AAAAmwAAAEMAGAAAAAAAAQAA
AKSBaN8BAGh0dHAvdGVzdHMvYXBwY2FjaGUvNDA0LXJlc291cmNlLXdpdGgtc2xvdy1tYWluLXJl
c291cmNlLWFjdHVhbC50eHRVVAUAA0DKelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABciC5K
je2I7EEBAABOAgAAQQAYAAAAAAABAAAApIFZ4AEAaHR0cC90ZXN0cy9hcHBjYWNoZS80MDQtcmVz
b3VyY2Utd2l0aC1zbG93LW1haW4tcmVzb3VyY2UtZGlmZi50eHRVVAUAA0DKelh1eAsAAQT1AQAA
BBQAAABQSwECHgMUAAIACABciC5KKNMVdtgAAAAnAQAARQAYAAAAAAABAAAApIEV4gEAaHR0cC90
ZXN0cy9hcHBjYWNoZS80MDQtcmVzb3VyY2Utd2l0aC1zbG93LW1haW4tcmVzb3VyY2UtZXhwZWN0
ZWQudHh0VVQFAANAynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAXIguSvpwepUKCAAAvxgA
AEkAGAAAAAAAAQAAAKSBbOMBAGh0dHAvdGVzdHMvYXBwY2FjaGUvNDA0LXJlc291cmNlLXdpdGgt
c2xvdy1tYWluLXJlc291cmNlLXByZXR0eS1kaWZmLmh0bWxVVAUAA0DKelh1eAsAAQT1AQAABBQA
AABQSwECHgMUAAIACACOiC5KWWOck4ZIAABcPQEANQAYAAAAAAABAAAApIH56wEAaHR0cC90ZXN0
cy9hcHBjYWNoZS9hY2Nlc3MtdmlhLXJlZGlyZWN0LWNyYXNoLWxvZy50eHRVVAUAA5vKelh1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACAC6iC5KxINTa9BAAAAtFAEAJgAYAAAAAAABAAAApIHuNAIA
aHR0cC90ZXN0cy9hcHBjYWNoZS9hdXRoLWNyYXNoLWxvZy50eHRVVAUAA+/Kelh1eAsAAQT1AQAA
BBQAAABQSwECHgMUAAIACADbiC5KJlNUK95AAACrEgEARgAYAAAAAAABAAAApIEedgIAaHR0cC90
ZXN0cy9hcHBjYWNoZS9jcmFzaC13aGVuLW5hdmlnYXRpbmctYXdheS10aGVuLWJhY2stY3Jhc2gt
bG9nLnR4dFVUBQADLst6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIABSLLkrmbovD00EAAOAW
AQAuABgAAAAAAAEAAACkgXy3AgBodHRwL3Rlc3RzL2FwcGNhY2hlL2N5cmlsbGljLXVyaS1jcmFz
aC1sb2cudHh0VVQFAANYz3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAFIsuSnZTAHTcRQAA
qiYBAEYAGAAAAAAAAQAAAKSBt/kCAGh0dHAvdGVzdHMvYXBwY2FjaGUvZGlmZmVyZW50LWh0dHBz
LW9yaWdpbi1yZXNvdXJjZS1tYWluLWNyYXNoLWxvZy50eHRVVAUAA1jPelh1eAsAAQT1AQAABBQA
AABQSwECHgMUAAIACAAUiy5KVcuOQdk/AAC4DAEAMgAYAAAAAAABAAAApIETQAMAaHR0cC90ZXN0
cy9hcHBjYWNoZS9kaWZmZXJlbnQtc2NoZW1lLWNyYXNoLWxvZy50eHRVVAUAA1jPelh1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACAAUiy5Kklwn1M5DAADMHQEAPwAYAAAAAAABAAAApIFYgAMAaHR0
cC90ZXN0cy9hcHBjYWNoZS9kb2N1bWVudC13cml0ZS1odG1sLWVsZW1lbnQtMi1jcmFzaC1sb2cu
dHh0VVQFAANYz3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAFIsuSvxYrybrPwAAtQ0BADAA
GAAAAAAAAQAAAKSBn8QDAGh0dHAvdGVzdHMvYXBwY2FjaGUvZW1wdHktbWFuaWZlc3QtY3Jhc2gt
bG9nLnR4dFVUBQADWM96WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIABSLLkqO/PdfmEEAAJsV
AQAqABgAAAAAAAEAAACkgfQEBABodHRwL3Rlc3RzL2FwcGNhY2hlL2ZhbGxiYWNrLWNyYXNoLWxv
Zy50eHRVVAUAA1jPelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAUiy5KLd00lT1AAABLDgEA
NQAYAAAAAAABAAAApIHwRgQAaHR0cC90ZXN0cy9hcHBjYWNoZS9mb3JlaWduLWlmcmFtZS1tYWlu
LWNyYXNoLWxvZy50eHRVVAUAA1jPelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAUiy5KcNly
jItBAAB4EwEALgAYAAAAAAABAAAApIGchwQAaHR0cC90ZXN0cy9hcHBjYWNoZS9oaXN0b3J5LXRl
c3QtY3Jhc2gtbG9nLnR4dFVUBQADWM96WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIABSLLkoN
PiY6tD8AAGIPAQAxABgAAAAAAAEAAACkgY/JBABodHRwL3Rlc3RzL2FwcGNhY2hlL2lkZW50aWZp
ZXItdGVzdC1jcmFzaC1sb2cudHh0VVQFAANYz3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA
FIsuSgWrm+TgQAAAVx0BADQAGAAAAAAAAQAAAKSBrgkFAGh0dHAvdGVzdHMvYXBwY2FjaGUvaW50
ZXJydXB0ZWQtdXBkYXRlLWNyYXNoLWxvZy50eHRVVAUAA1jPelh1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACAAUiy5KteRIxnNCAAATFgEALwAYAAAAAAABAAAApIH8SgUAaHR0cC90ZXN0cy9hcHBj
YWNoZS9sb2NhbC1jb250ZW50LWNyYXNoLWxvZy50eHRVVAUAA1jPelh1eAsAAQT1AQAABBQAAABQ
SwECHgMUAAIACAAUiy5K+YDrWw5DAADOFgEANAAYAAAAAAABAAAApIHYjQUAaHR0cC90ZXN0cy9h
cHBjYWNoZS9tYWluLXJlc291cmNlLWhhc2gtY3Jhc2gtbG9nLnR4dFVUBQADWM96WHV4CwABBPUB
AAAEFAAAAFBLAQIeAxQAAgAIABSLLkoEkZndq0IAAEEZAQA8ABgAAAAAAAEAAACkgVTRBQBodHRw
L3Rlc3RzL2FwcGNhY2hlL21hbmlmZXN0LWNvbnRhaW5pbmctaXRzZWxmLWNyYXNoLWxvZy50eHRV
VAUAA1jPelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAUiy5KeVT11x1AAADjDwEAOgAYAAAA
AAABAAAApIF1FAYAaHR0cC90ZXN0cy9hcHBjYWNoZS9tYW5pZmVzdC13aXRoLWVtcHR5LWZpbGUt
Y3Jhc2gtbG9nLnR4dFVUBQADWM96WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIABSLLkrs+kVB
GUAAAOUOAQAwABgAAAAAAAEAAACkgQZVBgBodHRwL3Rlc3RzL2FwcGNhY2hlL211bHRpLWZhbGxi
YWNrLWNyYXNoLWxvZy50eHRVVAUAA1jPelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAUiy5K
jZXhuMZBAABn8QAAMAAYAAAAAAABAAAApIGJlQYAaHR0cC90ZXN0cy9hcHBjYWNoZS9vZmZsaW5l
LWFjY2Vzcy1jcmFzaC1sb2cudHh0VVQFAANYz3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA
FIsuSguTrVkXQAAA8w0BADIAGAAAAAAAAQAAAKSBudcGAGh0dHAvdGVzdHMvYXBwY2FjaGUvb25s
aW5lLXdoaXRlbGlzdC1jcmFzaC1sb2cudHh0VVQFAANYz3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4D
FAACAAgAFIsuSuOs2O4SQQAA0RQBAC8AGAAAAAAAAQAAAKSBPBgHAGh0dHAvdGVzdHMvYXBwY2Fj
aGUvb3JpZ2luLWRlbGV0ZS1jcmFzaC1sb2cudHh0VVQFAANYz3pYdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DFAACAAgAFIsuSrh2NmGRRQAAMyQBAEEAGAAAAAAAAQAAAKSBt1kHAGh0dHAvdGVzdHMvYXBw
Y2FjaGUvb3JpZ2luLXF1b3RhLWNvbnRpbnVlZC1kb3dubG9hZC1jcmFzaC1sb2cudHh0VVQFAANY
z3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAFIsuSlQng0svQwAAuhgBAFQAGAAAAAAAAQAA
AKSBw58HAGh0dHAvdGVzdHMvYXBwY2FjaGUvb3JpZ2luLXF1b3RhLWNvbnRpbnVlZC1kb3dubG9h
ZC1tdWx0aXBsZS1tYW5pZmVzdHMtY3Jhc2gtbG9nLnR4dFVUBQADWM96WHV4CwABBPUBAAAEFAAA
AFBLAQIeAwoAAAAAAHyILkoAAAAAAAAAAAAAAAAQABgAAAAAAAAAEADtQYDjBwBodHRwL3Rlc3Rz
L21pc2MvVVQFAAN7ynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAfIguShU1NZJ6AAAAvAAA
ACoAGAAAAAAAAQAAAKSByuMHAGh0dHAvdGVzdHMvbWlzYy94c2x0LWJhZC1pbXBvcnQtc3RkZXJy
LnR4dFVUBQADe8p6WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAOuILkoAAAAAAAAAAAAAAAAU
ABgAAAAAAAAAEADtQajkBwBodHRwL3Rlc3RzL3NlY3VyaXR5L1VUBQADSct6WHV4CwABBPUBAAAE
FAAAAFBLAQIeAxQAAgAIAJGILkr2iscN50EAAB8ZAQBFABgAAAAAAAEAAACkgfbkBwBodHRwL3Rl
c3RzL3NlY3VyaXR5L2FwcGNhY2hlLXN3aXRjaGluZy1wcml2YXRlLWJyb3dzaW5nLWNyYXNoLWxv
Zy50eHRVVAUAA6LKelh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAABviC5KAAAAAAAAAAAAAAAA
KgAYAAAAAAAAABAA7UFcJwgAaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xp
Y3kvVVQFAANhynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAb4guSmOqrGyCAAAAqAAAAEAA
GAAAAAAAAQAAAKSBwCcIAGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5
L3hzbC1hbGxvd2VkLXN0ZGVyci50eHRVVAUAA2HKelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIA
CABviC5KY6qsbIIAAACoAAAAUgAYAAAAAAABAAAApIG8KAgAaHR0cC90ZXN0cy9zZWN1cml0eS9j
b250ZW50U2VjdXJpdHlQb2xpY3kveHNsLXVuYWZmZWN0ZWQtYnktc3R5bGUtc3JjLTItc3RkZXJy
LnR4dFVUBQADYcp6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAMOILkqWNFGC1UsAAMVaAQA/
ABgAAAAAAAEAAACkgcopCABodHRwL3Rlc3RzL3NlY3VyaXR5L2Nyb3NzLW9yaWdpbi1hcHBjYWNo
ZS1hbGxvd2VkLWNyYXNoLWxvZy50eHRVVAUAA/7Kelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIA
CADiiC5KKzNA5g1BAAAtEgEANwAYAAAAAAABAAAApIEYdggAaHR0cC90ZXN0cy9zZWN1cml0eS9j
cm9zcy1vcmlnaW4tYXBwY2FjaGUtY3Jhc2gtbG9nLnR4dFVUBQADOMt6WHV4CwABBPUBAAAEFAAA
AFBLAQIeAxQAAgAIAOuILkpgS2YQkQAAAPsBAABFABgAAAAAAAEAAACkgZa3CABodHRwL3Rlc3Rz
L3NlY3VyaXR5L3hzcy1ERU5JRUQteHNsLWRvY3VtZW50LXNlY3VyaXR5T3JpZ2luLXN0ZGVyci50
eHRVVAUAA0nLelh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAACPiC5KAAAAAAAAAAAAAAAADwAY
AAAAAAAAABAA7UGmuAgAaHR0cC90ZXN0cy9zc2wvVVQFAAOeynpYdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DFAACAAgAj4guSpPhyxHkTAAALVgBADEAGAAAAAAAAQAAAKSB77gIAGh0dHAvdGVzdHMvc3Ns
L3VwZ3JhZGUtb3JpZ2luLXVzYWdlLWNyYXNoLWxvZy50eHRVVAUAA57Kelh1eAsAAQT1AQAABBQA
AABQSwECHgMUAAIACAAyiC5KWwRYDqIFAABNEAAACgAYAAAAAAABAAAApIE+BgkAaHR0cGQuY29u
ZlVUBQAD8Ml6WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAHyILkoAAAAAAAAAAAAAAAAJABgA
AAAAAAAAEADtQSQMCQBpbXBvcnRlZC9VVAUAA3zKelh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAA
AAB8iC5KAAAAAAAAAAAAAAAADwAYAAAAAAAAABAA7UFnDAkAaW1wb3J0ZWQvYmxpbmsvVVQFAAN8
ynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAfIguSgAAAAAAAAAAAAAAABoAGAAAAAAAAAAQ
AO1BsAwJAGltcG9ydGVkL2JsaW5rL2FuaW1hdGlvbnMvVVQFAAN8ynpYdXgLAAEE9QEAAAQUAAAA
UEsBAh4DFAACAAgAfIguSo4WwslNAAAATwAAAEEAGAAAAAAAAQAAAKSBBA0JAGltcG9ydGVkL2Js
aW5rL2FuaW1hdGlvbnMvYmFzZS1yZW5kZXItc3R5bGUtYm9keS1jcmFzaC1hY3R1YWwudHh0VVQF
AAN8ynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAfIguSvz5UrXDAAAAbwEAAD8AGAAAAAAA
AQAAAKSBzA0JAGltcG9ydGVkL2JsaW5rL2FuaW1hdGlvbnMvYmFzZS1yZW5kZXItc3R5bGUtYm9k
eS1jcmFzaC1kaWZmLnR4dFVUBQADfMp6WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAgAAAHyILkqi
htSbGwAAABsAAABDABgAAAAAAAEAAACkgQgPCQBpbXBvcnRlZC9ibGluay9hbmltYXRpb25zL2Jh
c2UtcmVuZGVyLXN0eWxlLWJvZHktY3Jhc2gtZXhwZWN0ZWQudHh0VVQFAAN8ynpYdXgLAAEE9QEA
AAQUAAAAUEsBAh4DFAACAAgAfIguSqqyvrGABwAAUxcAAEcAGAAAAAAAAQAAAKSBoA8JAGltcG9y
dGVkL2JsaW5rL2FuaW1hdGlvbnMvYmFzZS1yZW5kZXItc3R5bGUtYm9keS1jcmFzaC1wcmV0dHkt
ZGlmZi5odG1sVVQFAAN8ynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAe4guSgAAAAAAAAAA
AAAAAA0AGAAAAAAAAAAQAO1BoRcJAGltcG9ydGVkL3czYy9VVAUAA3rKelh1eAsAAQT1AQAABBQA
AABQSwECHgMKAAAAAAB3iC5KAAAAAAAAAAAAAAAAGgAYAAAAAAAAABAA7UHoFwkAaW1wb3J0ZWQv
dzNjL1dlYkNyeXB0b0FQSS9VVAUAA3HKelh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAAB4iC5K
AAAAAAAAAAAAAAAAJgAYAAAAAAAAABAA7UE8GAkAaW1wb3J0ZWQvdzNjL1dlYkNyeXB0b0FQSS9n
ZW5lcmF0ZUtleS9VVAUAA3TKelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAB3iC5KjzQacEQA
AACgCQAARwAYAAAAAAABAAAApIGcGAkAaW1wb3J0ZWQvdzNjL1dlYkNyeXB0b0FQSS9nZW5lcmF0
ZUtleS90ZXN0X2ZhaWx1cmVzX1JTQS1PQUVQLXN0ZGVyci50eHRVVAUAA3HKelh1eAsAAQT1AQAA
BBQAAABQSwECHgMUAAIACAB4iC5KVALJsjYAAADAAgAAUAAYAAAAAAABAAAApIFhGQkAaW1wb3J0
ZWQvdzNjL1dlYkNyeXB0b0FQSS9nZW5lcmF0ZUtleS90ZXN0X2ZhaWx1cmVzX1JTQVNTQS1QS0NT
MS12MV81LXN0ZGVyci50eHRVVAUAA3TKelh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAAB7iC5K
AAAAAAAAAAAAAAAAIAAYAAAAAAAAABAA7UEhGgkAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9VVAUAA3rKelh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAAB7iC5KAAAAAAAAAAAAAAAA
JgAYAAAAAAAAABAA7UF7GgkAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9V
VAUAA3rKelh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAAB7iC5KAAAAAAAAAAAAAAAAKgAYAAAA
AAAAABAA7UHbGgkAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvVVQF
AAN6ynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAgIguSgAAAAAAAAAAAAAAAC8AGAAAAAAA
AAAQAO1BPxsJAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMv
VVQFAAOAynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAe4guSu48ZMQKAgAAvQwAAEUAGAAA
AAAAAQAAAKSBqBsJAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2Nv
cnMvY29ycy1vcmlnaW4tc3RkZXJyLnR4dFVUBQADesp6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQA
AgAIAH2ILkrI6NVPmgEAAN4FAABIABgAAAAAAAEAAACkgTEeCQBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtcHJlZmxpZ2h0LXN0ZGVyci50eHRVVAUA
A37Kelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACAiC5KQ8I2b80CAAC/EwAAUQAYAAAAAAAB
AAAApIFNIAkAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9j
b3JzLXJlZGlyZWN0LXByZWZsaWdodC1zdGRlcnIudHh0VVQFAAOAynpYdXgLAAEE9QEAAAQUAAAA
UEsBAh4DCgAAAAAAtIguSgAAAAAAAAAAAAAAAAYAGAAAAAAAAAAQAO1BpSMJAG1lZGlhL1VUBQAD
48p6WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAALSILkoAAAAAAAAAAAAAAAAMABgAAAAAAAAA
EADtQeUjCQBtZWRpYS90cmFjay9VVAUAA+PKelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAC0
iC5KjekYVEsBAABUAgAAKgAYAAAAAAABAAAApIErJAkAbWVkaWEvdHJhY2svdHJhY2staW4tYmFu
ZC1zdHlsZS1hY3R1YWwudHh0VVQFAAPjynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAtIgu
SuPleoBwAQAAvQIAACgAGAAAAAAAAQAAAKSB2iUJAG1lZGlhL3RyYWNrL3RyYWNrLWluLWJhbmQt
c3R5bGUtZGlmZi50eHRVVAUAA+PKelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAC0iC5KDPrk
6jYBAAAzAgAALAAYAAAAAAABAAAApIGsJwkAbWVkaWEvdHJhY2svdHJhY2staW4tYmFuZC1zdHls
ZS1leHBlY3RlZC50eHRVVAUAA+PKelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAC0iC5KFPni
v5YIAADQIAAAMAAYAAAAAAABAAAApIFIKQkAbWVkaWEvdHJhY2svdHJhY2staW4tYmFuZC1zdHls
ZS1wcmV0dHktZGlmZi5odG1sVVQFAAPjynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAb4gu
Ssy1I8ZNAgAAkBAAABoAGAAAAAAAAQAAAKSBSDIJAHB5d2Vic29ja2V0LndzLmxvZy1lcnIudHh0
VVQFAANiynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAb4guSro+MIsIAQAAjwIAABoAGAAA
AAAAAQAAAKSB6TQJAHB5d2Vic29ja2V0LndzLmxvZy1vdXQudHh0VVQFAANiynpYdXgLAAEE9QEA
AAQUAAAAUEsBAh4DCgAAAAAANIguSgAAAAAAAAAAAAAAABsAGAAAAAAAAAAAAKSBRTYJAHB5d2Vi
c29ja2V0Lndzcy5sb2ctZXJyLnR4dFVUBQAD88l6WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAA
ADSILkoAAAAAAAAAAAAAAAAbABgAAAAAAAAAAACkgZo2CQBweXdlYnNvY2tldC53c3MubG9nLW91
dC50eHRVVAUAA/PJelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAViy5KRSYdOdEnAADLqgAA
DAAYAAAAAAABAAAApIHvNgkAcmVzdWx0cy5odG1sVVQFAANZz3pYdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DFAACAAgAFYsuSqqjE/MOhQgA2ZMvAAoAGAAAAAAAAQAAAKSBBl8JAHN0YXRzLmpzb25VVAUA
A1nPelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACAiS5Kb8W1hH5bAgC5lz0AGQAYAAAAAAAB
AAAApIFY5BEAd3B0d2tfcHJvY2Vzc19sb2cub3V0LnR4dFVUBQADYMx6WHV4CwABBPUBAAAEFAAA
AFBLBQYAAAAAdAB0ACgxAAApQBQAAAA=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>298870</attachid>
            <date>2017-01-14 18:22:51 -0800</date>
            <delta_ts>2017-01-14 21:48:05 -0800</delta_ts>
            <desc>Archive of layout-test-results from ews117 for mac-elcapitan</desc>
            <filename>layout-test-results.zip</filename>
            <type>application/zip</type>
            <size>2158846</size>
            <attacher name="Build Bot">buildbot</attacher>
            
              <data encoding="base64">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
FAACAAgARYcuSjA7uLFLAAAAaAAAADwAHABjcnlwdG8vc3VidGxlL3JzYS1pbXBvcnQta2V5LW1h
bGZvcm1lZC1wYXJhbWV0ZXJzLXN0ZGVyci50eHRVVAkAAyHJelghyXpYdXgLAAEE9QEAAAQUAAAA
bcuxDYAwDETRniluHxpWsGRLsYA4ci5EbA8NHfV/f0u/hIbd7o7pLDEIUXV6VDmgQoGkoQbRR2uR
NF3Wj+OMN7JIBWegpZ/Wf4YHUEsDBAoAAAAAAEOHLkoAAAAAAAAAAAAAAAAPABwAY3J5cHRvL3dv
cmtlcnMvVVQJAAMdyXpYhc96WHV4CwABBPUBAAAEFAAAAFBLAwQKAAAAAABDhy5KAAAAAAAAAAAA
AAAAFgAcAGNyeXB0by93b3JrZXJzL3N1YnRsZS9VVAkAAx3JeliFz3pYdXgLAAEE9QEAAAQUAAAA
UEsDBAoAAgAAAEOHLkol4NMILAAAACwAAAAxABwAY3J5cHRvL3dvcmtlcnMvc3VidGxlL3JzYS1n
ZW5lcmF0ZS1rZXktc3RkZXJyLnR4dFVUCQADHcl6WB3Jelh1eAsAAQT1AQAABBQAAABDb3VsZCBu
b3QgZ2VuZXJhdGUgYSBrZXkgcGFpciwgc3RhdHVzIC00MzA0ClBLAwQKAAAAAABIhy5KAAAAAAAA
AAAAAAAADQAcAGRpc3BsYXlsaXN0cy9VVAkAAyjJeliFz3pYdXgLAAEE9QEAAAQUAAAAUEsDBBQA
AgAIAEiHLkqjV/3oUAAAAI4AAAAyABwAZGlzcGxheWxpc3RzL2V4dGVudC1pbmNsdWRlcy10cmFu
c2Zvcm1zLXN0ZGVyci50eHRVVAkAAyjJelgoyXpYdXgLAAEE9QEAAAQUAAAAcy9KLMjITC52zs8r
Sa0osbJKTy1xDvHV0FTILFbIyy9RqEwtUUjOzy1ILMlMyklVKM8syVAoSk3OL0rJzEsHyoC1Fetx
uaMbVIxmEDGGAABQSwMEFAACAAgASIcuSvKWldVHAAAASQAAACkAHABkaXNwbGF5bGlzdHMvbGF5
ZXItZGlzcGF5LWxpc3Qtc3RkZXJyLnR4dFVUCQADKMl6WCjJelh1eAsAAQT1AQAABBQAAABzL0os
yMhMLnbOzytJrSixskpPLXEO8dXQVMgsVsjLL1GoTC1RSM7PLUgsyUzKSVUozyzJUChKTc4vSsnM
SwfKgLUV63EBAFBLAwQKAAAAAAAOiC5KAAAAAAAAAAAAAAAACAAcAGVkaXRpbmcvVVQJAAOryXpY
hc96WHV4CwABBPUBAAAEFAAAAFBLAwQKAAAAAAAOiC5KAAAAAAAAAAAAAAAAEQAcAGVkaXRpbmcv
ZGVsZXRpbmcvVVQJAAOryXpYhc96WHV4CwABBPUBAAAEFAAAAFBLAwQUAAIACAAOiC5K2a0lPr4B
AAAGEwAAKAAcAGVkaXRpbmcvZGVsZXRpbmcvZGVsZXRlLWVtb2ppLXN0ZGVyci50eHRVVAkAA6vJ
eliryXpYdXgLAAEE9QEAAAQUAAAA7ZZPatwwFMbX9SmEl8NMeJJlyR6agWRC6CqLjLsKWUiyNDXE
f7BlmDQYSi/QdW/S8+QCvULlNAmhDBSKoV7IOz1J3/ukHx8yAcxXgFeYIszWcbKm/ISlDF30ZXOt
q1y3Wav1DY0TlrhpziG6Rdu61Zk+2DVaLBboY1WKptE5Ch+/f/n541uI3m+zy7py03DgRkqTxsSA
gM1DJUqNTtEu29XV3harbLu61vv+TrRL1BWfxznMTuDpW6JS2LY4uBoc3CjXnWqLxtatqzx3uHit
vfaSBiSJXS9h3W7ZW909rb88F12hPoju09uVkQB0M46N4TLHmFK43TzY+2a0UvZWyDuN8kLZJVJ1
X9nR4DLQlZMedTfBO4LWo/rOVao9epGSIuXmmLRyrt320VN4tRvPcOXu5OzFazj8NvuHnMqBJn+T
O3Kr4RAMwWYYAnIEM8fkXzF/PYpZO1MR9ZhnhpnClGlWgHEklMc8N8wxnzbNUpLEeMxzw8zptG+z
5lHEmMc8M8xJOvHbzIhi0mOeF+YE+LRplopAnnvMM8NMomnTnHJClfGYZ4aZkonTrGMV+zTPDfPk
f9qCsQQ85v+H+RdQSwMECgAAAAAAbIcuSgAAAAAAAAAAAAAAABMAHABlZGl0aW5nL3Bhc3RlYm9h
cmQvVVQJAANryXpYhc96WHV4CwABBPUBAAAEFAAAAFBLAwQUAAIACABbhy5KHwO7RukAAACCAQAA
MAAcAGVkaXRpbmcvcGFzdGVib2FyZC9jb3B5LXJlc29sdmVzLXVybHMtc3RkZXJyLnR4dFVUCQAD
Tsl6WE7Jelh1eAsAAQT1AQAABBQAAAB1j0FLw0AQhe/9FXOSRKQDgiBLCRRtLhaVpDTnye4kLqSZ
sDsR+u9NbEQRepz3vvdmZlcUb4WBnHzHDlSAgv3wnwxxrANHGYNlaCRAMwEGEY/SjSeO+ExKuKtK
rLh+8Yp7OsuoB44akZ1X37c4UFSuhYLDn66IVPN66NvV1abyG5ynJwmMnZDjgMtdaBvcc0v2PPnb
i7a2w5A83D+mYCAqqbdQcPOuYbN0GPM/ksFVyxgbmJQTK31UqA65MaWG6R+4ufuN5YFOPCsX7MhW
5c/CV3EMt9kMRHXGNGNv1Uu/qUU6SJZ0mqWrL1BLAwQUAAIACABrhy5KNrJZL9oAAABQAQAALAAc
AGVkaXRpbmcvcGFzdGVib2FyZC9wYXN0ZS1ub3BsdWdpbi1zdGRlcnIudHh0VVQJAANqyXpYasl6
WHV4CwABBPUBAAAEFAAAAHWNT0vDQBDF7/0Uc5JEpBsEoQwlINpcFJVEmvNmMmkWtpmwO6n47W1s
QBE8vj+/93Zl+VoiFNZ5bkEFbKDenRji1ASOMgVi6CRArzqiMV7I+l6i4ibLMsMn59fxo1uZvfjp
yNE8WrVmV1em5ubJqam+J2b1IIHPvG05mOXFUGee+WDp85zfX7w1jWNyd7tJASGqVUdQcvemYbts
IP5Fcvg3QqTAVjkhGaJC/V4gVhrccICrmx+sCPbIs3Op7ZlUfh2+SMtwnc+FqC1iNw2kToZtI+Ih
Weg0T1dfUEsDBBQAAgAIAGuHLko2slkv2gAAAFABAAAyABwAZWRpdGluZy9wYXN0ZWJvYXJkL3Bh
c3RlLW5vcGx1Z2luLXhodG1sLXN0ZGVyci50eHRVVAkAA2nJelhpyXpYdXgLAAEE9QEAAAQUAAAA
dY1PS8NAEMXv/RRzkkSkGwShDCUg2lwUlUSa82YyaRa2mbA7qfjtbWxAETy+P7/3dmX5WiIU1nlu
QQVsoN6dGOLUBI4yBWLoJECvOqIxXsj6XqLiJssywyfn1/GjW5m9+OnI0TxatWZXV6bm5smpqb4n
ZvUggc+8bTmY5cVQZ575YOnznN9fvDWNY3J3u0kBIapVR1By96Zhu2wg/kVy+DdCpMBWOSEZokL9
XiBWGtxwgKubH6wI9sizc6ntmVR+Hb5Iy3Cdz4WoLWI3DaROhm0j4iFZ6DRPV19QSwMEFAACAAgA
bIcuShbnwXvjAAAAdwEAACwAHABlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtbm9zY3JpcHQtc3Rk
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
AAgAeIcuStEfbcF8AAAAAgEAACYAHABmYXN0L2NhbnZhcy9jYW52YXMtbGluZURhc2gtc3RkZXJy
LnR4dFVUCQADhMl6WITJelh1eAsAAQT1AQAABBQAAADFzjEKwkAURdHeVbwNKAQmIQ5ikwQhWKmd
WHyZBwYyf+RnIurqzS4s76luL4rCoah8ufWuBto5Pk/UQLsYeXVl7aobdp1Zsr1Hc2iSZr7zmfk4
KFuZHh6DvmQcAsJSEDP5eEjGSJkykhIcGakZcV7gTmjS9ZeWNqv+3wM/UEsDBAoAAAAAAFKILkoA
AAAAAAAAAAAAAAAJABwAZmFzdC9jc3MvVVQJAAMsynpYhc96WHV4CwABBPUBAAAEFAAAAFBLAwQU
AAIACABSiC5KS6aCqrEAAADOAQAANgAcAGZhc3QvY3NzL3BlcnNwZWN0aXZlLW9yaWdpbi1pbml0
aWFsLWluaGVyaXQtc3RkZXJyLnR4dFVUCQADLMp6WCzKelh1eAsAAQT1AQAABBQAAADNjzELwjAU
hHd/xdu0g4ZupWvbQRyUBu1ck2cJpHkheRXz760oiruD4x13H3dN2+7bEjo87wyDJozgiCEhgxm9
xREdw4Bc0egnRi05WYQLBVh6DNGjYnPFNQUzGLe+LTcLcSI7jRhF3XMvmk6KJ1xImoLCh6oooFAx
ikrKL3CNyvahZ0Nuo7xf5UWRZ1DClYyGV7EsLQ1H916H+hBo3sJpW6/emZn8sbNF89Ob6V9v3gFQ
SwMECgAAAAAAcocuSgAAAAAAAAAAAAAAAAkAHABmYXN0L2RvbS9VVAkAA3fJeliFz3pYdXgLAAEE
9QEAAAQUAAAAUEsDBAoAAAAAAHKHLkoAAAAAAAAAAAAAAAAaABwAZmFzdC9kb20vTXV0YXRpb25P
YnNlcnZlci9VVAkAA3fJeliFz3pYdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIAHKHLko3Z4TgpwAA
ANIAAAA/ABwAZmFzdC9kb20vTXV0YXRpb25PYnNlcnZlci9kYXRhYmFzZS1jYWxsYmFjay1kZWxp
dmVyeS1zdGRlcnIudHh0VVQJAAN3yXpYd8l6WHV4CwABBPUBAAAEFAAAADXMSwvCMBAE4Lu/Yo/t
QSOolyCCaE8ihYrtOUm3EEh3wzbx8e99oLcZ+GaqpqkbDVcyNiAkhpSFgAk8OcERKZkAJiee34zL
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
yfkdUEsDBAoAAAAAACCILkoAAAAAAAAAAAAAAAAJABwAZmFzdC94c2wvVVQJAAPMyXpYhc96WHV4
CwABBPUBAAAEFAAAAFBLAwQUAAIACAAdiC5KTvsg+IgAAADnAAAAJQAcAGZhc3QveHNsL3RyYW5z
Zm9ybS14aHItZG9jLXN0ZGVyci50eHRVVAkAA8nJeljJyXpYdXgLAAEE9QEAAAQUAAAApY6xDsIw
DET3foV/oHhgywwTbCA6u60rIjlx5ThS+XsC5Q9YTiffye8mTWsU8qgZ2EwtwBKFvxIQ8aFSExc8
kROehxsOPF6i45VeWv3OxQsuVBy3ImhctNrU6tvT+lmnQ7uCxMxwBBZOnB1iWtW8a0nYLQSomcYG
dQVRmn/w/9D9/pznz4buDVBLAwQUAAIACAAdiC5K/aIuZI8AAADuAAAAJwAcAGZhc3QveHNsL3hz
bHQtYmFkLWltcG9ydC11cmktc3RkZXJyLnR4dFVUCQADycl6WMnJelh1eAsAAQT1AQAABBQAAACd
jjEOwjAMRfeewhcoHtgywwQbiM5u64pITlw5jlRuT6CcgOXL/3/bepOmNQp51AxsphZgicJfCYj4
UKmJC57ICc/DDQceL9HxSi+tfufiBRcqjlsRNC5abWrrzXk/0tzHtKp5Xy0eWgYSM8MRWDhxdtjb
rjVhHyFAzTQ2AFcQpfkH8idG1lKn5+dFuxPp3lBLAwQUAAIACAAdiC5Kz49mDlAAAACgAAAAJAAc
AGZhc3QveHNsL3hzbHQtY29udGVudFR5cGUtc3RkZXJyLnR4dFVUCQADycl6WMnJelh1eAsAAQT1
AQAABBQAAACtzLENwCAMBdGeKf4GUdpsg8AISzZGlokyfsgOaa67V0wnSw62AXI3v9BYCBAehBMk
pDQCtmKuSDzuLFyxuwjNHErRre7LLJW/sKeHyvGRL1BLAwQUAAIACAAgiC5KgUp3rUsAAACsAAAA
NAAcAGZhc3QveHNsL3hzbHQtdHJhbnNmb3JtLXRvLWZyYWdtZW50LWNyYXNoLXN0ZGVyci50eHRV
VAkAA8zJeljMyXpYdXgLAAEE9QEAAAQUAAAAtcyxDYAwDETRPlPcCrRs48AFWXJsZCzmR6JgA+qv
97eYp5qUhoOZkSuGGgFTJxbQOOmFW1KlG1ty51DXV8TAYdHFvo7iVW375foAUEsDBBQAAgAIACyL
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
BIQ5JHBaddgfE9XT62lYMo4/hQk5384Eord1/hk9goRadyZ3Pam3BE1Yu87Z/wFQSwMECgACAAAA
T4kuSjpMeG4tAAAALQAAADIAHABodHRwL3Rlc3RzL2FwcGNhY2hlL2RpZmZlcmVudC1zY2hlbWUt
Y3Jhc2gtbG9nLnR4dFVUCQADBsx6WAbMelh1eAsAAQT1AQAABBQAAABObyBjcmFzaCBsb2cgZm91
bmQgZm9yIER1bXBSZW5kZXJUcmVlOjQ3MjYwLgpQSwMEFAACAAgALIsuShHgp77OQgAAyD8BAD8A
HABodHRwL3Rlc3RzL2FwcGNhY2hlL2RvY3VtZW50LXdyaXRlLWh0bWwtZWxlbWVudC0yLWNyYXNo
LWxvZy50eHRVVAkAA4PPelg+zHpYdXgLAAEE9QEAAAQUAAAA7F1rc5tIl/68/Ao+bM0rJ0Gmu+nm
Ul5XSQiS7NiOy3KS2ZqaUnFpbDaS0ACK4y/72/c06AZCjkm8s5USSpUj03DOcy7d5+luMNdpEvAs
s+TqZ7ScLW74POTpbcq5/KemY2b8JV17+X39VPicfkqmyxnPTj99uPh46Zy+Oq1eL70P+TyPo5in
1mEt0ieeZnEyrytQJTsJuXz7uODVpj8MpjBN7l15efyVnwC6FNTI1zWTrh/z+2QONlCD6X9JNzxb
JPMs9qcVcQcs/pjxVH4/qmOiKpKkkZfz09t4VoOFVaQrKlKQJiPdQqpFUJ8wIiuqoarSh7HcZOel
F8jQ9IeM1D5CfSb3EH2LMMInAHiRpPneVQhJg3kyf5wly0z++HEH4xDrI2o4jmKbyFWcIRkomjvQ
FXOEVUpUphJ9KEmSQC4PHrwvXB7H84DLwyTJLZkCSlXOeJDMw0ySxo9Zzmfy+3nO79I4fxTuzXmQ
F1D43AM3hpJkp152z0P59j7lXrhBooJf42zh5cG9/PeSL8FTQTLre4vFlPdnXjxX8uICSXK+BXwh
hFbj7PxhT4aD0WRg2854LPfG79+OnbefTnbOF8mxCfbvzs3V5P3Vp8HFe7hoNLoRV3m5rH5TKx+i
7ki4AoMqGu0PN9djZ3L14fa9+1+S9OlSvuF3cGYmX3EvBWFEtSRFOZclccVkcuv8cbvXKVaakKp6
CMMXZedAWPj4T1nWTfz7X3KqfDtNH77J48v/sD98buhPkjQAl8WBV+AdL3gAnSmAoERJOisOWpJ9
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
RjCLMbZOM8zg1APDbMtswSR5XrMDVw9MmudYKkDTfqAajAAYDFFaQ/tciAYx7WH0AuZ2UtKHwSL9
ILQO45WrsqDqMKH5S46vRSHYonRa46fmCB64OK2PwR835I/JjDwU1eVgKKLNokUf43U8xhDMxyLV
FkoKITBpG7Ttrl0bAlM0XCzga0qAUYwdrIn7yeg8P6FIFP5CrtbRwHO160M2VRcXV+7BeYEnlYwd
WdysYB5ewu2CPA/Jj84rPBYZfS7UF4HHCu8dMlkvN0dF+ubPiySLCwwR5kDqpY43YWbKPSdnt+ra
G2RImGO240cHfm4ymDhHlAM3xnYFA/zcTef5KKjZAdVAjL3YAJ4v8T1uRk/zRzY43Wq0AZ753FMz
dYQ28ANKGM5thJlM1Zl/GEg0x20+v5hcnvseiOggGlNWeAijCDPz/5odJg3Gmu9o03OY28uJe+Ud
pE4IXqdtlWv5QSVQyKg1lhVtMNaljlrFK0ybMKRwavzw/6eqZ1ez/JVxeAaN5VkpBcIqYX4jK9BQ
aWNyF5N6B8PqMKN/AVBLAwQKAAAAAAAjiC5KAAAAAAAAAAAAAAAALwAcAGh0dHAvdGVzdHMvY29u
dGVudGRpc3Bvc2l0aW9uYXR0YWNobWVudHNhbmRib3gvVVQJAAPRyXpYhc96WHV4CwABBPUBAAAE
FAAAAFBLAwQUAAIACAAjiC5K3Jhv7zYAAAA6AAAAUQAcAGh0dHAvdGVzdHMvY29udGVudGRpc3Bv
c2l0aW9uYXR0YWNobWVudHNhbmRib3gvcmVmZXJlci1oZWFkZXItc3RyaXBwZWQtc3RkZXJyLnR4
dFVUCQAD0cl6WNHJelh1eAsAAQT1AQAABBQAAAArzUtJTcvMS02xUvAKVnANCvIPUgipLEh1LSrK
L7JSKIVJK2QWK+Tllygk5inkJ2WlJpdwAQBQSwMEFAACAAgAIoguStyYb+82AAAAOgAAAGoAHABo
dHRwL3Rlc3RzL2NvbnRlbnRkaXNwb3NpdGlvbmF0dGFjaG1lbnRzYW5kYm94L3JlZmVyZXItaGVh
ZGVyLXN0cmlwcGVkLXdpdGgtbWV0YS1yZWZlcmVyLWFsd2F5cy1zdGRlcnIudHh0VVQJAAPPyXpY
z8l6WHV4CwABBPUBAAAEFAAAACvNS0lNy8xLTbFS8ApWcA0K8g9SCKksSHUtKsovslIohUkrZBYr
5OWXKCTmKeQnZaUml3ABAFBLAwQUAAIACAAiiC5K3Jhv7zYAAAA6AAAAawAcAGh0dHAvdGVzdHMv
Y29udGVudGRpc3Bvc2l0aW9uYXR0YWNobWVudHNhbmRib3gvcmVmZXJlci1oZWFkZXItc3RyaXBw
ZWQtd2l0aC1tZXRhLXJlZmVyZXItZGVmYXVsdC1zdGRlcnIudHh0VVQJAAPPyXpYz8l6WHV4CwAB
BPUBAAAEFAAAACvNS0lNy8xLTbFS8ApWcA0K8g9SCKksSHUtKsovslIohUkrZBYr5OWXKCTmKeQn
ZaUml3ABAFBLAwQUAAIACAAiiC5K3Jhv7zYAAAA6AAAAaQAcAGh0dHAvdGVzdHMvY29udGVudGRp
c3Bvc2l0aW9uYXR0YWNobWVudHNhbmRib3gvcmVmZXJlci1oZWFkZXItc3RyaXBwZWQtd2l0aC1t
ZXRhLXJlZmVyZXItbmV2ZXItc3RkZXJyLnR4dFVUCQAD0Ml6WNDJelh1eAsAAQT1AQAABBQAAAAr
zUtJTcvMS02xUvAKVnANCvIPUgipLEh1LSrKL7JSKIVJK2QWK+Tllygk5inkJ2WlJpdwAQBQSwME
FAACAAgAIoguStyYb+82AAAAOgAAAG8AHABodHRwL3Rlc3RzL2NvbnRlbnRkaXNwb3NpdGlvbmF0
dGFjaG1lbnRzYW5kYm94L3JlZmVyZXItaGVhZGVyLXN0cmlwcGVkLXdpdGgtbWV0YS1yZWZlcmVy
LW5vLXJlZmVycmVyLXN0ZGVyci50eHRVVAkAA9DJeljQyXpYdXgLAAEE9QEAAAQUAAAAK81LSU3L
zEtNsVLwClZwDQryD1IIqSxIdS0qyi+yUiiFSStkFivk5ZcoJOYp5CdlpSaXcAEAUEsDBBQAAgAI
ACKILkrcmG/vNgAAADoAAAB+ABwAaHR0cC90ZXN0cy9jb250ZW50ZGlzcG9zaXRpb25hdHRhY2ht
ZW50c2FuZGJveC9yZWZlcmVyLWhlYWRlci1zdHJpcHBlZC13aXRoLW1ldGEtcmVmZXJlci1uby1y
ZWZlcnJlci13aGVuLWRvd25ncmFkZS1zdGRlcnIudHh0VVQJAAPQyXpY0Ml6WHV4CwABBPUBAAAE
FAAAACvNS0lNy8xLTbFS8ApWcA0K8g9SCKksSHUtKsovslIohUkrZBYr5OWXKCTmKeQnZaUml3AB
AFBLAwQUAAIACAAiiC5K3Jhv7zYAAAA6AAAAagAcAGh0dHAvdGVzdHMvY29udGVudGRpc3Bvc2l0
aW9uYXR0YWNobWVudHNhbmRib3gvcmVmZXJlci1oZWFkZXItc3RyaXBwZWQtd2l0aC1tZXRhLXJl
ZmVyZXItb3JpZ2luLXN0ZGVyci50eHRVVAkAA9DJeljQyXpYdXgLAAEE9QEAAAQUAAAAK81LSU3L
zEtNsVLwClZwDQryD1IIqSxIdS0qyi+yUiiFSStkFivk5ZcoJOYp5CdlpSaXcAEAUEsDBBQAAgAI
ACOILkrcmG/vNgAAADoAAABuABwAaHR0cC90ZXN0cy9jb250ZW50ZGlzcG9zaXRpb25hdHRhY2ht
ZW50c2FuZGJveC9yZWZlcmVyLWhlYWRlci1zdHJpcHBlZC13aXRoLW1ldGEtcmVmZXJlci11bnNh
ZmUtdXJsLXN0ZGVyci50eHRVVAkAA9HJeljRyXpYdXgLAAEE9QEAAAQUAAAAK81LSU3LzEtNsVLw
ClZwDQryD1IIqSxIdS0qyi+yUiiFSStkFivk5ZcoJOYp5CdlpSaXcAEAUEsDBAoAAAAAAFOILkoA
AAAAAAAAAAAAAAAQABwAaHR0cC90ZXN0cy9taXNjL1VUCQADLsp6WIXPelh1eAsAAQT1AQAABBQA
AABQSwMEFAACAAgAMYguSj8uvg/mAAAAYgEAAC0AHABodHRwL3Rlc3RzL21pc2MvY29weS1yZXNv
bHZlcy11cmxzLXN0ZGVyci50eHRVVAkAA+7JeljuyXpYdXgLAAEE9QEAAAQUAAAAdY1BS8NAEIXv
/RVzkkSkkxbEspSAaHNRVBJpzpvJJF1JMmF3IvjvTW1FEWRO773vzdvl+XNuILOu4xpUwHo6uHeG
MFWeg0yeGBrxcFAdDeJqfbNM5luZTZIk2LtA+M0FJOlHG8LybWwXuJdu6mfz3qrFXVlgydWDUyy+
4KO6E8/Yia3Z43kXqcFHbi19zPntyVvSOEbX600MBoJadQQ5Ny/qt+cfxvytpPBvZAx5tsoRyRAU
ytfMmEK9G1q4uPqpZd72fHRO2J5J5dfgk9QMl+kRCFob00wDqZNhW4l0EJ3bcRovPgFQSwMEFAAC
AAgAU4guShU1NZJ6AAAAvAAAACoAHABodHRwL3Rlc3RzL21pc2MveHNsdC1iYWQtaW1wb3J0LXN0
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
EDu9pPgVhb4guBtiUCwjKaX+fU0pe1qG2c1ytsKbF6kEVdFEe2HQ4d5SCMttnePIku4xxmDIlxbv
IUt1VH/++0O45B4UJpdmWDDvjPljTFwqaCUwziHQD9gB+DRoekNtXCeSyp2WOdKOza8xRJuC7GpN
1PGavlBLAwQUAAIACABHiC5KY6qsbIIAAACoAAAAUgAcAGh0dHAvdGVzdHMvc2VjdXJpdHkvY29u
dGVudFNlY3VyaXR5UG9saWN5L3hzbC11bmFmZmVjdGVkLWJ5LXN0eWxlLXNyYy0yLXN0ZGVyci50
eHRVVAkAAxbKelgWynpYdXgLAAEE9QEAAAQUAAAALY1BCsMwDATveYVeEDu9pPgVhb4guBtiUCwj
KaX+fU0pe1qG2c1ytsKbF6kEVdFEe2HQ4d5SCMttnePIku4xxmDIlxbvIUt1VH/++0O45B4UJpdm
WDDvjPljTFwqaCUwziHQD9gB+DRoekNtXCeSyp2WOdKOza8xRJuC7GpN1PGavlBLAwQUAAIACACY
iC5KrWJ7w6RPAAAalwEAPwAcAGh0dHAvdGVzdHMvc2VjdXJpdHkvY3Jvc3Mtb3JpZ2luLWFwcGNh
Y2hlLWFsbG93ZWQtY3Jhc2gtbG9nLnR4dFVUCQADr8p6WK/Kelh1eAsAAQT1AQAABBQAAADsXVtz
27iSfl79Cj5sZeUkkokLAVKV4ypZljLecRyv5WRma2pKBZKQzYpEakgqiffh/PZtgLqRohwx8pmT
lJgHRxbJ7q8bjcbXuNA3ceTJJOkY+X8X8+nsVoa+jO9iKY0/KDct88/GjUgfirfCv9OP0WQ+lcnp
x/dXH971T1+e5p9vXPoyTINxIOPObi2NjzJOgigsKjAbvciXxt3jTOYv/W6zFqNG81qkwWd5Auhi
UGPcFEy6eUwfohBssGyG/mzcymQWhUngTnLidlj8IZGxcXlRxGSZqNG4EKk8vQumBVjYRLxlohai
BuIdk3Sw3XaYY7RM2zQb74dGmZ3vhGfApd8NZLYRajOjiay3CCN8AoBnUZxuPYVQoxtG4eM0mifG
hw8bGM8xv7Dsfr/Vc9Cg1T8n3RYddHnLucCmRUxmEn7eaDQUcqP7RXySxjAIPWmcR1HaMSxumqaR
SC8K/aTRGD4mqZwal2Eq7+MgfVTuTaWXaigyFOBGv9HoxSJ5kL5x9xBL4a+QmODXIJmJ1Hsw/prL
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
AwQUAAIACADkiC5KN2eE4KcAAADSAAAAPwAcAGh0dHAvdGVzdHMvc2VjdXJpdHkvc3RvcmFnZS1i
bG9ja2luZy1sb29zZW5lZC13ZWJzcWwtc3RkZXJyLnR4dFVUCQADO8t6WDvLelh1eAsAAQT1AQAA
BBQAAAA1zEsLwjAQBOC7v2KP7UEjqJcggmhPIoWK7TlJtxBId8M28fHvfaC3GfhmqqapGw1XMjYg
JIaUhYAJPDnBESmZACYnnt+My3mEYgnECQwBirCUM9VyyCNO6miSUVV3UR3ak0/qwlkcftqBBdWZ
+xze7I62f0trJvxOPmHhYixWm3UJGqqHw5g8Uy3bG/t+B78Hrf9c64gysIx1RNpT36L44VlY5lDO
XlBLAwQUAAIACADkiC5KN2eE4KcAAADSAAAAQwAcAGh0dHAvdGVzdHMvc2VjdXJpdHkvc3RvcmFn
ZS1ibG9ja2luZy1zdHJlbmd0aGVuZWQtd2Vic3FsLXN0ZGVyci50eHRVVAkAAzzLelg8y3pYdXgL
AAEE9QEAAAQUAAAANcxLC8IwEATgu79ij+1BI6iXIIJoTyKFiu05SbcQSHfDNvHx732gtxn4Zqqm
qRsNVzI2ICSGlIWACTw5wREpmQAmJ57fjMt5hGIJxAkMAYqwlDPVcsgjTupoklFVd1Ed2pNP6sJZ
HH7agQXVmfsc3uyOtn9Layb8Tj5h4WIsVpt1CRqqh8OYPFMt2xv7fge/B63/XOuIMrCMdUTaU9+i
+OFZWOZQzl5QSwMEFAACAAgA7IguSmBLZhCRAAAA+wEAAEUAHABodHRwL3Rlc3RzL3NlY3VyaXR5
L3hzcy1ERU5JRUQteHNsLWRvY3VtZW50LXNlY3VyaXR5T3JpZ2luLXN0ZGVyci50eHRVVAkAA0vL
elhLy3pYdXgLAAEE9QEAAAQUAAAA7Y4xDoMwDEV3TuELhASWVplh6NKeAQVTIpkksp0Kbl869AYd
q7++r/dC3kqkSWNOgMyZPSyREFbV4q3t+kvrznX+6pyzgqFy1MPuImYY77dxMLuQmXOoGyY1X+DB
8RlTu28EFBNCD0j4IUD0IJQVUZvz6V/Icro95EQHdK2DBSetjAITI0gtJbPi3IR/6I9D31BLAwQK
AAAAAABziC5KAAAAAAAAAAAAAAAADwAcAGh0dHAvdGVzdHMvc3NsL1VUCQADasp6WIXPelh1eAsA
AQT1AQAABBQAAABQSwMECgACAAAAc4guSswmOH8tAAAALQAAADEAHABodHRwL3Rlc3RzL3NzbC91
cGdyYWRlLW9yaWdpbi11c2FnZS1jcmFzaC1sb2cudHh0VVQJAANqynpYasp6WHV4CwABBPUBAAAE
FAAAAE5vIGNyYXNoIGxvZyBmb3VuZCBmb3IgRHVtcFJlbmRlclRyZWU6NDU4NTYuClBLAwQKAAAA
AAA0iC5KAAAAAAAAAAAAAAAAEwAcAGh0dHAvdGVzdHMvc3RvcmFnZS9VVAkAA/PJeliFz3pYdXgL
AAEE9QEAAAQUAAAAUEsDBBQAAgAIADSILko3Z4TgpwAAANIAAABFABwAaHR0cC90ZXN0cy9zdG9y
YWdlL2NhbGxiYWNrcy1hcmUtY2FsbGVkLWluLWNvcnJlY3QtY29udGV4dC1zdGRlcnIudHh0VVQJ
AAPzyXpY88l6WHV4CwABBPUBAAAEFAAAADXMSwvCMBAE4Lu/Yo/tQSOolyCCaE8ihYrtOUm3EEh3
wzbx8e99oLcZ+GaqpqkbDVcyNiAkhpSFgAk8OcERKZkAJiee34zLeYRiCcQJDAGKsJQz1XLII07q
aJJRVXdRHdqTT+rCWRx+2oEF1Zn7HN7sjrZ/S2sm/E4+YeFiLFabdQkaqofDmDxTLdsb+34Hvwet
/1zriDKwjHVE2lPfovjhWVjmUM5eUEsDBAoAAAAAAGiILkoAAAAAAAAAAAAAAAAaABwAaHR0cC90
ZXN0cy94bWxodHRwcmVxdWVzdC9VVAkAA1TKeliFz3pYdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAI
AGiILkp+f+0XsQAAAAEBAABBABwAaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9wb3N0LWJsb2It
Y29udGVudC10eXBlLWFzeW5jLXN0ZGVyci50eHRVVAkAA1TKelhUynpYdXgLAAEE9QEAAAQUAAAA
ZY2xCsJAEET7fMVWoqAeNoIHViaCWCiJmEIsLskqh7nbY7NR/HsNBFQsZ3gzL0nTXaph4++mthWs
yAt6mRyeAcdg+zYYNg4FGd65xWmkjlS3DhsVGzEqyTOVY7G1ojJqucQurYhRhdrIhdgpj/Igvqm9
4Qar3tJJpmUIw9liPgINBVEN/VTr0KFf5LAk3wjkh7XWmbD1VxiMIcUS7R25I2AwgtNPsfzcxa1z
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
AGOILkoAAAAAAAAAAAAAAAAJABwAaW1wb3J0ZWQvVVQJAANJynpYhc96WHV4CwABBPUBAAAEFAAA
AFBLAwQKAAAAAABjiC5KAAAAAAAAAAAAAAAADQAcAGltcG9ydGVkL3czYy9VVAkAA0rKeliFz3pY
dXgLAAEE9QEAAAQUAAAAUEsDBAoAAAAAAGOILkoAAAAAAAAAAAAAAAAaABwAaW1wb3J0ZWQvdzNj
L1dlYkNyeXB0b0FQSS9VVAkAA0nKeliFz3pYdXgLAAEE9QEAAAQUAAAAUEsDBAoAAAAAAGWILkoA
AAAAAAAAAAAAAAAmABwAaW1wb3J0ZWQvdzNjL1dlYkNyeXB0b0FQSS9nZW5lcmF0ZUtleS9VVAkA
A07KeliFz3pYdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIAGOILkqPNBpwRAAAAKAJAABHABwAaW1w
b3J0ZWQvdzNjL1dlYkNyeXB0b0FQSS9nZW5lcmF0ZUtleS90ZXN0X2ZhaWx1cmVzX1JTQS1PQUVQ
LXN0ZGVyci50eHRVVAkAA0nKelhJynpYdXgLAAEE9QEAAAQUAAAAc84vzUlRyMsvUUhPzUstSixJ
VUhUyE6tVChIzCzSUSguSSwpLVbQNTE2MOFyHlU7qnZU7ajaUbWjakfVjqodVUtztQBQSwMEFAAC
AAgAZYguSlQCybI2AAAAwAIAAFAAHABpbXBvcnRlZC93M2MvV2ViQ3J5cHRvQVBJL2dlbmVyYXRl
S2V5L3Rlc3RfZmFpbHVyZXNfUlNBU1NBLVBLQ1MxLXYxXzUtc3RkZXJyLnR4dFVUCQADTsp6WE7K
elh1eAsAAQT1AQAABBQAAABzzi/NSVHIyy9RSE/NSy1KLElVSFTITq1UKEjMLNJRKC5JLCktVtA1
MTYw4XIeVTuqdpCpBQBQSwMECgAAAAAAaYguSgAAAAAAAAAAAAAAACAAHABpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL1VUCQADVcp6WIXPelh1eAsAAQT1AQAABBQAAABQSwMECgAAAAAA
h4guSgAAAAAAAAAAAAAAACoAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0luZGV4
ZWREQi9VVAkAA47KeliFz3pYdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIAGOILkpGaBvbmQAAAMUA
AABIABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9JbmRleGVkREIvaWRiY3Vyc29y
X2l0ZXJhdGluZy1zdGRlcnIudHh0VVQJAANKynpYSsp6WHV4CwABBPUBAAAEFAAAAF2OsQrCMBRF
937FG9vFIIpCNm07iIrYgB0lTd4QSPtC+lL8fGvp5HjhnMOtm+bRSDgxYx8YmEDbSQ8GQYOhPnhk
tGBSHClm4kU+9TiKSrMWdatEi93VsVCUosHfKimiuJNNfsbcYPGD1nZixDhhFOp5c4yX6lwuwY0J
Id9tjwVI6Ig8rAEpZ0QtipR/jpTrwTy5gQ/7NxfZF1BLAwQUAAIACABtiC5KHdGPJqMAAABPAgAA
RgAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvSW5kZXhlZERCL2lkYmZhY3Rvcnlf
b3BlbjExLXN0ZGVyci50eHRVVAkAA13KelhdynpYdXgLAAEE9QEAAAQUAAAA7Y+xCsIwFEX3fsUb
28UgikI2bTuIitiCHSVN3hBI+0L6Uvx8a+nkFzg4Xjjncm9ZVbdKwoEZO8/ABMqMqtcICjR13iGj
AR3DQCERD3Kxw0EUipUom1o02J4ti5pi0PhJOQUUVzLRTZjtDb7QmFYMGEYMor5fLOOpOOZz4Up7
n27W+wwktEQOlgIpJ6SeFSm/HCmXgWm0Pe+2T86S8n/iR068AVBLAwQUAAIACABviC5KRmgb25kA
AADFAAAAQwAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvSW5kZXhlZERCL2lkYmlu
ZGV4X2NvdW50LXN0ZGVyci50eHRVVAkAA2HKelhhynpYdXgLAAEE9QEAAAQUAAAAXY6xCsIwFEX3
fsUb28UgikI2bTuIitiAHSVN3hBI+0L6Uvx8a+nkeOGcw62b5tFIODFjHxiYQNtJDwZBg6E+eGS0
YFIcKWbiRT71OIpKsxZ1q0SL3dWxUJSiwd8qKaK4k01+xtxg8YPWdmLEOGEU6nlzjJfqXC7BjQkh
322PBUjoiDysASlnRC2KlH+OlOvBPLmBD/s3F9kXUEsDBBQAAgAIAG6ILkpGaBvbmQAAAMUAAABE
ABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9JbmRleGVkREIvaWRiaW5kZXhfY291
bnQyLXN0ZGVyci50eHRVVAkAA2DKelhgynpYdXgLAAEE9QEAAAQUAAAAXY6xCsIwFEX3fsUb28Ug
ikI2bTuIitiAHSVN3hBI+0L6Uvx8a+nkeOGcw62b5tFIODFjHxiYQNtJDwZBg6E+eGS0YFIcKWbi
RT71OIpKsxZ1q0SL3dWxUJSiwd8qKaK4k01+xtxg8YPWdmLEOGEU6nlzjJfqXC7BjQkh322PBUjo
iDysASlnRC2KlH+OlOvBPLmBD/s3F9kXUEsDBBQAAgAIAG6ILkpGaBvbmQAAAMUAAABEABwAaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9JbmRleGVkREIvaWRiaW5kZXhfY291bnQzLXN0
ZGVyci50eHRVVAkAA2DKelhgynpYdXgLAAEE9QEAAAQUAAAAXY6xCsIwFEX3fsUb28UgikI2bTuI
itiAHSVN3hBI+0L6Uvx8a+nkeOGcw62b5tFIODFjHxiYQNtJDwZBg6E+eGS0YFIcKWbiRT71OIpK
sxZ1q0SL3dWxUJSiwd8qKaK4k01+xtxg8YPWdmLEOGEU6nlzjJfqXC7BjQkh322PBUjoiDysASln
RC2KlH+OlOvBPLmBD/s3F9kXUEsDBBQAAgAIAHaILkpGaBvbmQAAAMUAAABJABwAaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9JbmRleGVkREIvaWRib2JqZWN0c3RvcmVfY291bnQtc3Rk
ZXJyLnR4dFVUCQADcMp6WHDKelh1eAsAAQT1AQAABBQAAABdjrEKwjAURfd+xRvbxSCKQjZtO4iK
2IAdJU3eEEj7QvpS/Hxr6eR44ZzDrZvm0Ug4MWMfGJhA20kPBkGDoT54ZLRgUhwpZuJFPvU4ikqz
FnWrRIvd1bFQlKLB3yoporiTTX7G3GDxg9Z2YsQ4YRTqeXOMl+pcLsGNCSHfbY8FSOiIPKwBKWdE
LYqUf46U68E8uYEP+zcX2RdQSwMEFAACAAgAdoguSkZoG9uZAAAAxQAAAEoAHABpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0luZGV4ZWREQi9pZGJvYmplY3RzdG9yZV9jb3VudDItc3Rk
ZXJyLnR4dFVUCQADb8p6WG/Kelh1eAsAAQT1AQAABBQAAABdjrEKwjAURfd+xRvbxSCKQjZtO4iK
2IAdJU3eEEj7QvpS/Hxr6eR44ZzDrZvm0Ug4MWMfGJhA20kPBkGDoT54ZLRgUhwpZuJFPvU4ikqz
FnWrRIvd1bFQlKLB3yoporiTTX7G3GDxg9Z2YsQ4YRTqeXOMl+pcLsGNCSHfbY8FSOiIPKwBKWdE
LYqUf46U68E8uYEP+zcX2RdQSwMEFAACAAgAdoguSjA9hTefAAAAigEAAEoAHABpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0luZGV4ZWREQi9pZGJvYmplY3RzdG9yZV9jb3VudDMtc3Rk
ZXJyLnR4dFVUCQADb8p6WG/Kelh1eAsAAQT1AQAABBQAAADdj7EKwjAURfd+xRvbxSCKQja1HURF
bMCOkiZvCKR9IX0pfr61dPITHC+ce7i3qut7LeHAjF1gYAJtR90bBA2GuuCR0YJJcaCYiSf51OEg
Ss1aVI0SDbYXx0JRiga/6UQRxY1s8hPmeotvtLYVA8YRo1CPq2M8l8fTLFyZEPLNel+AhJbIwyKQ
ckLUXJHypyPlMjBPrufd9sVFVv3DiQ9QSwMEFAACAAgAeIguSkZoG9uZAAAAxQAAAEsAHABpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0luZGV4ZWREQi9pZGJvYmplY3RzdG9yZV9kZWxl
dGU1LXN0ZGVyci50eHRVVAkAA3TKelh0ynpYdXgLAAEE9QEAAAQUAAAAXY6xCsIwFEX3fsUb28Ug
ikI2bTuIitiAHSVN3hBI+0L6Uvx8a+nkeOGcw62b5tFIODFjHxiYQNtJDwZBg6E+eGS0YFIcKWbi
RT71OIpKsxZ1q0SL3dWxUJSiwd8qKaK4k01+xtxg8YPWdmLEOGEU6nlzjJfqXC7BjQkh322PBUjo
iDysASlnRC2KlH+OlOvBPLmBD/s3F9kXUEsDBBQAAgAIAHyILkpGaBvbmQAAAMUAAABOABwAaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9JbmRleGVkREIvaWRidHJhbnNhY3Rpb24tb25j
b21wbGV0ZS1zdGRlcnIudHh0VVQJAAN8ynpYfMp6WHV4CwABBPUBAAAEFAAAAF2OsQrCMBRF937F
G9vFIIpCNm07iIrYgB0lTd4QSPtC+lL8fGvp5HjhnMOtm+bRSDgxYx8YmEDbSQ8GQYOhPnhktGBS
HClm4kU+9TiKSrMWdatEi93VsVCUosHfKimiuJNNfsbcYPGD1nZixDhhFOp5c4yX6lwuwY0JId9t
jwVI6Ig8rAEpZ0QtipR/jpTrwTy5gQ/7NxfZF1BLAwQUAAIACACGiC5KMD2FN58AAACKAQAAWAAc
AGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvSW5kZXhlZERCL3RyYW5zYWN0aW9uLWNy
ZWF0ZV9pbl92ZXJzaW9uY2hhbmdlLXN0ZGVyci50eHRVVAkAA4vKeliLynpYdXgLAAEE9QEAAAQU
AAAA3Y+xCsIwFEX3fsUb28UgikI2tR1ERWzAjpImbwikfSF9KX6+tXTyExwvnHu4t6rrey3hwIxd
YGACbUfdGwQNhrrgkdGCSXGgmIkn+dThIErNWlSNEg22F8dCUYoGv+lEEcWNbPIT5nqLb7S2FQPG
EaNQj6tjPJfH0yxcmRDyzXpfgISWyMMikHJC1FyR8qcj5TIwT67n3fbFRVb9w4kPUEsDBBQAAgAI
AIeILkpGaBvbmQAAAMUAAABGABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9JbmRl
eGVkREIvd3JpdGVyLXN0YXJ2YXRpb24tc3RkZXJyLnR4dFVUCQADjsp6WI7Kelh1eAsAAQT1AQAA
BBQAAABdjrEKwjAURfd+xRvbxSCKQjZtO4iK2IAdJU3eEEj7QvpS/Hxr6eR44ZzDrZvm0Ug4MWMf
GJhA20kPBkGDoT54ZLRgUhwpZuJFPvU4ikqzFnWrRIvd1bFQlKLB3yoporiTTX7G3GDxg9Z2YsQ4
YRTqeXOMl+pcLsGNCSHfbY8FSOiIPKwBKWdELYqUf46U68E8uYEP+zcX2RdQSwMECgAAAAAAaYgu
SgAAAAAAAAAAAAAAACYAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL1VU
CQADVcp6WIXPelh1eAsAAQT1AQAABBQAAABQSwMECgAAAAAAaYguSgAAAAAAAAAAAAAAACoAHABp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9VVAkAA1XKeliFz3pYdXgL
AAEE9QEAAAQUAAAAUEsDBAoAAAAAAG6ILkoAAAAAAAAAAAAAAAAvABwAaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9VVAkAA2DKeliFz3pYdXgLAAEE9QEAAAQU
AAAAUEsDBBQAAgAIAGmILkrXVpWBBwIAAL0MAABFABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLW9yaWdpbi1zdGRlcnIudHh0VVQJAANVynpYVcp6
WHV4CwABBPUBAAAEFAAAAO3W32/TMBAH8Hf+irysb9f4Z2xXqlBUuoEEdFLhebJ957Yia6omCPbf
k3TaoBNoHRUC1Cl5SqL7Oh+dzp7M3s9nb6fZu+l8Xl5MR9lsu1qs1tmybTejPK/q6Ktl3bQjaxnL
Vk22rtvMV1X9hTALN1kZIzUNTOp1u60rKPs3cFtj+GLysPg5tXGZlZdvsujXfaWq9niXxYUZsu7i
u6w89d/mfrPKt9TUn7ddTr7ZUqpWi2U73Ny8bOtPtB47EzBKjpAKKUGR4ODRODDaiyC4NYRycO2/
XvkFjdmg3i1t3EeeyfJMnHf3fXD3pI8e7P7v6praZY3N+GL6YfhnWf6e+V4WP9ScqehcNAScfAQl
QwKreWeeSErruJOMP2J+H3xrzk/IfK/PDzZXmhwzVgFPzoPiTIBLXkBSkTGWdEgJn9bnJ2Pe7KE7
peSh6GSNtUEjcCk0KKY0hMA0MGY1i9ILjb9Ab36q3mefkvr3sKeoJ0tRMYMQZFJdq8sELjgElLwo
mBKkVXxM/cf5ckrqv72PCkcM+1ZHVyRQqBl4liwkp31hXAwupuP20cvZ/Bl9H91zG72NHLSgbqiL
FMAxz6EQDr20hUTPjkN/PS1fDf87FwpIJKwA5NTNXVEocCpwCIZ7GWWyTpkjm/Hjcy8+mLqFdK7o
zItgEZRNBkIUEdAiMi770zT9Ywfpb1BLAwQUAAIACABpiC5K03UWuxkBAAC2AgAAUQAcAGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1wcmVmbGlnaHQt
cmVkaXJlY3Qtc3RkZXJyLnR4dFVUCQADVsp6WFbKelh1eAsAAQT1AQAABBQAAADVkNtqwzAMhu/3
FL5p7pw456wQRijpGGxrIQ9Q5FMTlsUhdlj39lMGTe92WRgW0o+wpI9/d3hvDq81eaubpnqut2Sv
nGhJdXwhAobBONIbkKR1btwGQRjlPsMXbouCsUAvfwMYu2BS1syTUBaV7CYlnD9+PznzoYZSxzLV
Msmp1kLSBBinj1IDLbgGzqNQZKH0PuFygrMqmXddcLIO3GzLmIVebwS4zgzlwrGJq020x1hpsLPw
YOuXCCsyYRZmslh8H9NKiHqclO67c7tA3u6tXQ/63nydWgVSTba8UG1wkN6myPEqCa4dzWAV6SxZ
3LKzwBtWz/3D7g7WCkjDgkuaQ5HQRCUCrc0YVcCLVHKmWZb9aW30P639AVBLAwQUAAIACABriC5K
lbEIyIgCAADODwAATwAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBp
L2NvcnMvY29ycy1wcmVmbGlnaHQtc3RhdHVzLXN0ZGVyci50eHRVVAkAA1nKelhZynpYdXgLAAEE
9QEAAAQUAAAAzZfLahwxEEX3+YpeeVcePUqPMgzBGCcEktjgDzDVUsljMpkZptvE+fuUF/E6IAii
oRFCCB3q1tXVzd33h7uvt9O324eH68+3V9MnWctuur7/MhU+HI7rtD9ynXbrerrabKxLl0Y/e5Wz
MZv2tnbDp+fNWZbjy7nIsjmdpe2fn3br5en3x/X4Qw5bDByoUAJXXQSUMEMWI1DFlcg6ySVf/OTX
R36Srbng/f7463EnXOW8bF+hHXVjeN/34n30uKy8vixbb8zldP93dtKznI6HRabnZXoDWF6KHmxp
L/sPN/+B1sfsJHMFX20GJB8gKyLEhmV2qbaAsY/WjkRrMrkkDWJmra3JBUisljqEakqosw2tj9YN
RBvQoJ9thFQEASsZmEONECMHYUlUnfTR+oFok8zsoiOIxbL2LTYg8vpzOBtVsrOZ+mhxIFqRKj4U
BksyAxayQEoJyWUU730QLH20YSDaLCI5RgdRexQwBe1bp6YVWxBnnAlCnS4VR3KpqlRNHKhoHSD6
BNkHHbEvnsgYV00fbRrKkzElLFYZOQB6rDCXFsG5qhtmR5xdH20eiLa0VG3RC3bOTj051AzcGkMl
vX6sy9HXLlocKl0Ya7mSbWrHc1X9olGXsh4ySXHJFaMu1kc7UrooyaKIJcgGRdNF0ip7tuA9l5hi
4kSmj3akG2hukpAygYqWtG9DAIqpqZI95mStpspO2pHShaU461MgAkvT2toUgWoKYOxb0Z02cuqk
HSk5Ru+1vJqg1JESYMtNk2OrUPQJpGIOhk0n7UjpQlN/sTVobZ1Y9WRWTzYlguQkgRtHil1ZKgzl
UiSYLScNT9WoMaPKWf2qQQnUfLBtThz7aP9VyX8AUEsDBBQAAgAIAGuILkqfyY0hmQEAAN4FAABI
ABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLXBy
ZWZsaWdodC1zdGRlcnIudHh0VVQJAANaynpYWsp6WHV4CwABBPUBAAAEFAAAAM3US2sbMRAA4Ht/
hU69jVev1UqGUBZ32xTyonbpsYykUdZ063W9Co3/fbXJpQdDcijB6DYaofkYaVa3N+vbq45dd+t1
+7lbsk+UQ8/auy8s4G43ZjaMGFmf835ZVUI2C16WWFrLeZXm3Ar32+pA0/hwCDRV+wOlYXvf58X+
+CGPP2l3IYxTTfIJlIg1aG4COBsFCBdEMMRdUvj+Fz7+wHu64At2TbkfI/vYXXWbjm0nNpeBwzD+
ocj8kbWhXDTBatzlwzhAO+/A86Fp8W71BiIptTNKIWivE2irHDijA0SSSFLFSBRPiO6+bc6Sw0tf
yNcNKJSFw7EBb0wEZS1pxb2OPJzitJvV5VmC6oDW8JoKIxRQKs/OG3TgnQzcJoEo5QnQTff9LDmC
Cx/R1iBrSaDRGUBvEVwIEoVVda3pX85X+v1AU2Y9YaQDS1saInuEXGLwHBOvdV4+pb+R01key6ho
gHPpy7dKAgpvFnNNIZgUrX3ROddPuwyb457OUim9IdUoCUabMkF0kGB9k6Ax1iqbdBKk/tPw+AtQ
SwMEFAACAAgAboguSmdLbVfIAgAAvxMAAFEAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtcmVkaXJlY3QtcHJlZmxpZ2h0LXN0ZGVyci50eHRVVAkA
A2DKelhgynpYdXgLAAEE9QEAAAQUAAAA7ZfbihNBEEDf/Yp5MW+V9P2yECQsuyp4w/0A6a6qNsGY
WTOzrP69FUVX2BAE86BumGFm6LlQnKlT1X3++tXV6xcX3cuLq6vF04uz7pJHXHaLN887LJtNP3br
vlC3HMfrs9lMmzhVsumzlJSatd2zs3K9mm156G+2yMPsesttvXq/HKfXX558LJ/flfc8V5Ox/8Cb
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
hm8BAAC5AgAAKAAcAG1lZGlhL3RyYWNrL3RyYWNrLWluLWJhbmQtc3R5bGUtZGlmZi50eHRVVAkA
A2PLelhky3pYdXgLAAEE9QEAAAQUAAAAtZLfS8MwEMff+1fcm61d2q06JsJgumYgyhRXf7ym7VGD
aTOSi87/3nSbivrgkxDuOPjc95vLhTEG6b1WrkWb5oJEyh9W6QOWl5L26dxJVac5lq5JlXjTjhih
JWbQOkU2bbGWIiUjquddZLJjpehqZulNIcPNGivCOqENBXEc/7efqMgJtXWbzYCNssEJxD6OMpjN
Ari9W4YvskadrL16GEUB8Hu+LEKL+Iy1LwN2eAiFt4TKGYNdnxEqrbSxAeOPN3xe8BzCBmmu27Xz
s61659BjubS9LFfY+sYo2XbBdAoHpinDbDwewEeIDiK4vvxLcKlrjJLSj9kY7bp6/k1wOID+7KXi
AjcE2zfZXln4QrYIw+TIQqcJXqSVpcIEig/GgjB4GsQ9PjwFS8Lsm6a+LfPi1GtOoXjVO2r0gxol
wy9qoZ3ZYdkvbDL5xFZys6OOflBZcnz8SXHZPPkfE8SLs4srv6VlDtcLKPiq8Dt6B1BLAwQUAAIA
CAD4iC5KDPrk6jYBAAAzAgAALAAcAG1lZGlhL3RyYWNrL3RyYWNrLWluLWJhbmQtc3R5bGUtZXhw
ZWN0ZWQudHh0VVQJAANjy3pYY8t6WHV4CwABBPUBAAAEFAAAAH1RQWrDMBC86xV7sxVSkxRyzMlx
LwWnNG4plB5ka5FEFMlY67b5fSUHQxpKQUgwOzuanWUNBgLSgiDQ2SKQB2EtdCMGMAFE31uDEjo/
DNiRPReseq3qJu+E6604kx78qDRnbLGAUmN3BOMMGWHje9cKJ4EGEdFAgjCw55c6Ny7hTYLXsIVP
I9EXhN80QeF99cFZ9fZUlU21g/y2XFh0ijRst5CtMw77xyvytXRhhVOjUDhR0f3LPZroNPE60ZPx
LlzYt3aLk5dRD7Kg/ZdxKuNzHDp+hnxquDhO6eR8rgfEI8pLTFPk3RgDdenFGK71Q7iyppBKf+pH
QnlIW8kja2dCkqwsnmIfL6amyfKg2vx+s1nCfPHbUf/Sq+MkvGjjVCqu0Mnyl95qCenMSvUO9g/Q
VIeGsR9QSwMEFAACAAgA+IguSssm5ouVCAAAziAAADAAHABtZWRpYS90cmFjay90cmFjay1pbi1i
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
vAFQSwMEFAACAAgAIYkuSh3RjyajAAAATwIAADEAHABzdG9yYWdlL2luZGV4ZWRkYi9pbmRleC1i
YXNpY3Mtd29ya2Vycy1zdGRlcnIudHh0VVQJAAOuy3pYrst6WHV4CwABBPUBAAAEFAAAAO2PsQrC
MBRF937FG9vFIIpCNm07iIrYgh0lTd4QSPtC+lL8fGvp5Bc4OF4453JvWVW3SsKBGTvPwATKjKrX
CAo0dd4howEdw0AhEQ9yscNBFIqVKJtaNNieLYuaYtD4STkFFFcy0U2Y7Q2+0JhWDBhGDKK+Xyzj
qTjmc+FKe59u1vsMJLREDpYCKSeknhUpvxwpl4FptD3vtk/OkvJ/4kdOvAFQSwMEFAACAAgAIoku
Sm1Nsp2vAAAAAQoAACgAHABzdG9yYWdlL2luZGV4ZWRkYi9pbmRleC1jb3VudC1zdGRlcnIudHh0
VVQJAAOwy3pYsMt6WHV4CwABBPUBAAAEFAAAAO3PwQqCQBAG4LtPMUe9tERRsLdKD1ERKeQx1t05
COrIOis9fiaeOvUAcxz4/5/5sjy/5xoOzNj2DExg3Gg6i2DAUts3yOjABj+Qj9STmtDioFLDRmVl
oUqsLjWrgoK3+L1O5FHdyIVmitWdwzc6V6kB/YheFY9rzXhOj6d5cGX7Pt6s9wloqIgaWAa0niLF
XNH6p6P18mAc6o532xcnUSYIQQhCEIIQhCAEIYi/ER9QSwMEFAACAAgAJokuStbDpg6kAAAAFAMA
AC0AHABzdG9yYWdlL2luZGV4ZWRkYi9pbmRleC1tdWx0aWVudHJ5LXN0ZGVyci50eHRVVAkAA7jL
eli4y3pYdXgLAAEE9QEAAAQUAAAA7Y+xCsIwFEX3fsUb28UgikI2bTuIitiCHSVN3hBI+0L6Uvx8
a+nk7Oh44d7DPWVV3SoJB2bsPAMTKDOqXiMo0NR5h4wGdAwDhUQ8yMUOB1EoVqJsatFge7YsaopB
4yflFFBcyUQ31Wxv8IXGtGLAMGIQ9f1iGU/FMZ+BK+19ulnvM5DQEjlYAFJOlXqeSPm1kXI5mEbb
82775Cwp/xJ/id9JvAFQSwMEFAACAAgAJ4kuSkZoG9uZAAAAxQAAAC0AHABzdG9yYWdlL2luZGV4
ZWRkYi9pbmRleC1wb3B1bGF0aW9uLXN0ZGVyci50eHRVVAkAA7nLeli5y3pYdXgLAAEE9QEAAAQU
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
gAzIgAzIgAzIgAzIgAzIgAzIgAzIgAzIgAzIgAxvYfjMYh+N7yeLIeIgDuIgDuIgDuIgDuIgDuIg
DuIgDuIgDuIgDuIgDuIgDuIgDuIgDuIgDuIgDuIgDuIgDuIgDuIgDuIgDuIgDuI0SMQJiw6XWVQ+
BDQBTkl4s2Q8qa67C8L8de3GjNY7jur33R1dxpF5Ud5/oZvp/XDVoNausxNC+dVzpdCWvCwhu+Rt
RnMHjjRc22m9yKTl4ro3gv0DUEsDBBQAAgAIADWJLkqoKInV9AQAALGUAAArABwAc3RvcmFnZS9p
bmRleGVkZGIva2V5cGF0aC1iYXNpY3Mtc3RkZXJyLnR4dFVUCQAD1ct6WNXLelh1eAsAAQT1AQAA
BBQAAADtnEtv4zYUhfdZ+SdoNzbQASRZkmXvEnkCGGjrtMl0T0u0rUYmXUpJJpv+9lLvtzyeOJgA
PQGysHx5eb5DkVIWOavlzT0Vz1QsFvxI2fLmT/rPEw0jhzCXBgH1rr4yX15ZLW+WJCIbEtK+SuWz
Mrpalf28rN7hjFE38jlzAh4mdZqhzqbGzNYs3ZybenuOcsxi4TbG3wp+cAKfsiiesdlNNa7GB+Kz
idIh/ESrcbWTbtiTgVZkw0X0IAgLSdKwSd/j5tjbdLY7UrHl4nDd1fW8FfiNHrh4ldU3xH302e4+
4qJPb1pbLaxUZGPGkxirdl1O7skBaymaxFce/AMVt76QCsbqt9l2uzUpIbZhqe2xSc81S226Zl4q
PiMJ4/Jy7R947mZTfXfbFbsTfCdoGBbSwlal53uOoCSi683fcpqEOtfTKuZ5H4cfjgGNqLdm6Q3T
1XdJ45LL930vvWnfFfPoNzgAB+AAHIADcAAOwAE4AAfgAByAA3AADsABOAAH4AAcgANwAA7AATgA
B/6nDkAv9EIv9EIv9EIv9EIv9EIv9EIv9EIv9EIv9EIv9EIv9EIv9EIv9EIv9EIv9EIv9EIv9EIv
9ELvGX3douJU6MQ0DZ3oTY5opWm0cyTOjf3oL5d23J2X7OGzZ/5IC8pr5lUGJcxvDOToF8sHJk2a
DYzdE+YFNP9cxm9IzIc9FVQh8lczbVufTlXbVjLFMcmtnIaLV2lWcuPkPfJAla44kO7KgW87FLcu
jSdVs+ZTW50Mrm2GnEx2GWdmlmUUzpzX6o4fj3K1CVOKVfxFYfxFiYbmOKXaeRJC7sZipoEBWYBN
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
mQPe0Kr9WmPOHm0UgZ2C7BeQfQXpfpMR78V+B6+N53NvZLdSr1UcZWG0B3f7CA/NBlmMtaI3GWZI
AcAJpy7Gr0mWTYYoNdg3xKiu0/ITRoNOnFVnNWJOtgxZRGQOLAiM0hEfDcsynfFo6hireA+9LeuX
ErAGMAB6gb1KKp0da3e1DnomDLvOuJ1xY09DV0NXQ1dDV0NXQ1dDV0NXQ1dDV0NXQ1dDV0NXQ/dN
oNvr68i9QbjrW0wne09EfeovH+UrTudPD7nuk/p3mI3rabCukLpC6gqpoauhq6Groauhq6Groauh
q6Groauhq6Groauhq6H7ji97Hv25Jf3bA/pjTfpjTfpjTZKPNdXuplm8Y34eibzB/UY+/WsxjY85
5zIOsTGy0e+w1GFK/VgLJMI/rMIMBOGPvtRFb/3XJcivz4rM1FjHnTjq6+Df32lpjv8AUEsDBBQA
AgAIADaJLkqv068eNggAAFh3AAA5ABwAc3RvcmFnZS9pbmRleGVkZGIva2V5cGF0aC1pbnRyaW5z
aWMtcHJvcGVydGllcy1zdGRlcnIudHh0VVQJAAPYy3pY2Mt6WHV4CwABBPUBAAAEFAAAAO1dX2+j
OBCX7rFP+QjWvmwitRJJCKF5a9PtXXSnS6/t3jsBp+VKIAek3b7cZ78BBzBgG2hgm6peqVrFjGfG
8+c3g03C4uryDvvP2J/NvC12ry5v8b87HIRzwzWx42Dr5Ltrw8ji6vLKCI2VEWAeJTpDvZNFxs/a
088918VmaHvuDXYt232YO16AgXqoKtOxOtWH2mhyPhmVJWUzZzOTyeXa9zZzx8ZuGEkv8lRUsT4x
C+vtmpD5lTr0N4btDhDDkBWs+jSnkaoPWM6w3WfvCS+32DciRheude8bbmDEbO/tDfb7A9oMrbiZ
vyRPoMi17YMk/txHw7UcnHxOlxSAyPtH7GNkwN9wouuj8VjRdbQlkRCt7hrEeP4reBk7OEx5JDGZ
+e/eS+OBSSm4ytC4NNQfoL7yY7peryfYMM7HujIQmmu/5FhYO5aZapqaWqYZqxtvuwUHGy5KvXiK
XO8FhSIZVVrPd74PEZ1KEkwAkrXnb/YziFXSeSTwrBVzJnHXpWE+gUp3EAr45O6vP+wwoqJHZ7MH
HC79bwFMdOzgMeGwcNceCEgwAiRxppcFoXgIPqG17WD0tfcVgbKWHTwJVmrZ1lVZZSr+zAgQShNZ
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
jML4LqQDTVrBXkpWpuFWrB92LYkiP53GC2LPvTSLOvWUcxRQ1+T2F1BLAwQUAAIACAAJiS5KovzV
hIwBAABCBAAAQAAcAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9kZWxldGVkYXRhYmFzZS1yZXF1
ZXN0LWV2ZW50LXN0ZGVyci50eHRVVAkAA4HLeliBy3pYdXgLAAEE9QEAAAQUAAAAlVTLbsIwELxz
4hN8A6QihfJI6mMIlZAq0Rb6AcbeEItgp7bp49Jv7wZIRJUH6iEHr2d2Zr27WUbhGswHGEp1BioK
X+H9CNbNmeKQpiA6yyh8ZNxp802pgBQcRMyxLbNAhqSbX8+1UsCd1Gqji2T1yJbbNyVRGDFFlNJK
qD8gfe/Lj+N4OmPBaBx4A2T2D0yqAalJkDAlUohOYrdhl/MqA8PyYiz62iRggDD8RpPpOJjOvIcZ
wXcSUu06/0v1rLMMBGGK6CJ8R5T+JK5N45br+dEYUK5UaiEgJNbmcGGcX6XknXrQF9ta5rldIeN7
tLTGUYDO+uVJuhx1HaV0B25lFhaJqbRJkWGpYo0Couh3t4leFSKnEJ5ILFMgvW6PoFkh7b6lUiFF
VLV8NX881RYqxLqG/twawtHoNIRNa1A4KTUQuLpeNErNZeP0IcuRogai1d8s6yPnYC1aGRJ+7idB
PZs3UlqcI88fT2YT/36COxLkCctU+HQZczxZfOQk7Pp1Nd7Y9wZNtTT8H34BUEsDBBQAAgAIAAmJ
LkpgNvQyVgAAAJkAAABCABwAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL2RlbGV0ZWRhdGFiYXNl
LXJlcXVlc3QtcHJpdmF0ZS1zdGRlcnIudHh0VVQJAAOBy3pYgct6WHV4CwABBPUBAAAEFAAAAPN0
cQpOLSpLLbKyyi9IzXNxCkotLE0tLnFOzEtOzclJTeHydHFyS0wuyS+qtLJKSc1JLUl1SSxJTEos
TlXQVRAASTvn5+WlJpdk5ueF5MMMI14lDmsBUEsDBBQAAgAIAAmJLkoSte9UDwEAACEDAAA6ABwA
c3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL2RlbGV0ZWRhdGFiYXNlLXJlcXVlc3Qtc3RkZXJyLnR4
dFVUCQADgct6WIHLelh1eAsAAQT1AQAABBQAAACVUktPhDAQvnPyJ/QIiSZsVhA5QmPCSeOuP2C2
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
gVDl0HUJDQr1h4KfBcrMzYefUNlbALPrIBBYd3m24J53w5jbNCMB/iHJDO6pwJnPUHWc3NMOdYbq
1ZKcXWyLJDgkUCmglq21iNSc5JhQhxTS0JZF7iGi0SBTKw00omgh8RuyTHEUFmlrQHrfcwSGGniW
VYUXsICg+e0e+GZTpBsmq0fdNg1nrDy2Axgv6ow40iNo4HtRtASDh+o+BzpdWWRrmoXbfRaUi0qi
gs/MEnGBo0VzmpP8NUenpbJHnqYKqUWokwVwgNGuTAtsEUSr86ggU4xmnJGC9IbaWhxphfJs+421
fag5mv3bv0BxljIoyfKfqzr7ynDabEitDfsxZS+VHvGLUpluOCK25fFoU8M5ZY0pAC+t7XBMoxEW
c2Vtg9YGuBZnCF13cenKrW06iDKQ/HxwiXjc5ruFMbIvUE5UWe4VkzYMqElM82YDyhDYRF8m6FP/
U8/NH8Fougwz9ENR/IxptkX29gcmSbSFk3WxcrA2Z2WeeWLvU7NR2I23MC2WgqMbF9UFtMIwWQKs
0syjySlWlH22JSDXf8QB5FjmlN+BHgZRzoCxbVtDFr7fWgspAg9c/SMd4Ohs/K8sCA74xbbTDrr5
+eMo3DiPePc1KHz8DFW03ZrpiT+jvJ6koqvb6WshmVW4E/LudemRo1jbk2cgm75OOeR8eKP7yVwY
Q99iJucO300TceWcLltWQwJPqQAbnko9IEw5UuVwsx8Q6qYRZ2w7rfBv2nqzr8S/adnJygucMyHX
VJ4Sb5Gdp5/XXnds6GTe/xhfP8bXX3d8/R9Ni2ed895RL4e9rMO0fOXwHEaRm62rL3ZO19sI0FUr
SjAtPGzIl3yrqi+3qntWfU2yR2wpUx12q4mPM5erGanYNt44qnBkWsoXsYauG2e4JXVlaSAUlSST
pVb3a2jgsLGMaUPOr0L2Tnxfk+/vnrHiFe6MI7l0ZZvZHaOuVymmpUvd3CkZ3PeVn86I3wlWrovj
TSlLTIN9jlmuPOHrUSDKv/SUpoTyK9Sy6LX3ssTZ+mwHNhU9huO015N/0ik4erfHY/30H1BLAwQU
AAIACAAKiS5KtCBmRtcFAAAnMQAAOQAcAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9kZWxldGVp
bmRleC00LXByaXZhdGUtc3RkZXJyLnR4dFVUCQADg8t6WIPLelh1eAsAAQT1AQAABBQAAADtW0tv
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
rqfbShqYBn/zpG7NnuyyBiWNN2iAO3vbpSTaeD+X2YwwIxKEMqEjuq36DljaP1BLAwQUAAIACAAN
iS5KQ+arVQcTAACX9QIATAAcAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9pZGJjdXJzb3ItY29u
dGludWUtcHJpbWFyeS1rZXktMS1wcml2YXRlLXN0ZGVyci50eHRVVAkAA4rLeliKy3pYdXgLAAEE
9QEAAAQUAAAA7Z3bc9u4FYff9yl/gh7tmc2MbrZlv23sdevpdOVJsn2nJTpRI4suJSebl/7tS4q6
kOINAAFev8502kgASB6cA4Dy73zn4e7DJ9v9brs3N86rvbr78NH+35u93txaq5m9XNrzXx5EWtxb
s43j/ry5mdtLe2PfWRvryVrbvfe9d/7Xt85qZc82C2f12dkPltwy49s/Vwvvwl6b/ac3N7GPzs57
Z/2/rp6fny8urclgNOmfez3PXqzF6ryXMMBXazVf2nfbi+U32/17+mq7lv8wa+++Pn+1Xbtnef8d
jC9Gk4vL/vVlz7PTfLH68ovcUI/O66s971mrnrP/+NfeyvnR22RdI++ub99c115tDlfK6OA1eXbc
l12PwCqHfts5OJs/JfYMpuuDNfvm3dInzxWyrDlfzO/i7UOTP1s6azvWMcma/8/zgMFg6wFpPri/
k8M1vIbTsJff3Lg7d3deXv2W84Qmzio6yqe32cxer71bed+bBcbseddb+1ZcrL1J7F+Nxpfjq+HY
c9CJP+BhqPli/WptZl9//+538kwefpr+6Kp/Hgk3PyLTHm4braEA6p2982wzvhwN+sPx9Xh8Hgvt
DEPnRtr11s4JPcMjH29TU7ANBkPjwRa+hrFg8z3qGGphyw7n3pynxZ1v3HAUbXv2vf8Mhl73id8z
KwynJ931zMq4P55UaLG+Nct87vXGcjf/CcLx1ruJL/Zn11qtrcAvYx2OPustTK5tbey0vtsgex8O
7/6k30+duyf7y2IV6v4QnYp/2y9eiHs9wp/GeyW5/WL13fl2nKPfVvNQh8+LF9s9O89YEqfhtUBs
QTxeO/QPzxa3vsG8m+/N95+96/1YbL4elsPwWnhxMezNDrfUO65U/uxOhv2+NRr1rYtR3/u/o/Nf
xCc12ABCH2xv82TmEtf1P1+/uNbc/sO25/ZcZD2/Go+9ZcT+kfB5hks6GVN1v3A9G2sJzMHFsH8I
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
MltpJjoVcAwBWRxCslooP8j7XjECBAgQkMGBOuNlWXNY+oxdU/otyXz9bnyV4zTEaYhLTKd3AgQI
ECBAgAABAgQIECBAgAABAgQI2FNAuk9vivJwJr1nL7YwAYcQYKgs8eLFixcvXrx48RmMOGqCWOnS
pUuXLl26dOnSpUuXLl269IKme5XMK3pcuXLlWiRXv4q7XGvZcu93m1h1ZTvXlC5dunSnLE4F8+Pq
zs3CzckxTrp06dKlS5cuXbp06dKlS5cuXbp06dKlzx5rZPgOqSaaaFLMJhPHg2bnvjt8UhcsncWw
MmMWw0RycoSiL2F8TOkP3r7tRLc/m82w35+q7Dx/XH28AFG93QqjgXfvDzfes2x9BLhy5Voc17V+
EqwEGzdXrly5cuXKlSvXYrnm47bOfu5E2YHsQFy5cuXKlStXrly5cuXKlStXrlxzM7hbOn3eth45
Q88+8eLFixcvXrx48XmdudFbUZpoookmwcSrikGr320MmncfHsJoUPqtdDLx9mMlmPH2YzeMglb0
Y+mbk7VZtTNem5y1uN15L24KECBAgAABAgQIECBAgIDjCsiiM8GyhUqxs8Gm32+D3giZryvdSHTP
4cqVK1euXLly5cqVK1euXLly5co1vYmOF9+vBG+D5sqVK1euXLly5cqVK1euXLly5bpz1+16V3K3
PXPlypUrV65cuXLlypUrV65cuXLluuab0V60FyBAgAABAgQIECBAgAABAgQIWDOg2bnvDm/EBEuH
h6/MGB4+MUp9cgnGo9V3otufzWbY709Vdp4/rj5egKjeboXRwNQo4sWLFy9evHjx4sWLFy9e/N7i
0+rUwnjhvKdTN2xWS1mwZMlbP9KlS5cuXbp06dKlS5cuXbp06dKlS5cuXbp06dKlS5cuXfqe0g2C
YXARrly5cuXKlStXrly5cuXKdUVXd1ikS5cuXbp06dKlS5cuXbr0w0ufNQhiYrRCTTTRRBNNjriJ
e+2eYRy7q/GYxIsXLz7f4+wdxA9dOqdtq/5cOu09lCbj+SSCVr/bGDTvPjyE0SDe6E4mpqioBDOm
qOiGURBvsUunt6jNqn09t0UWZ2BmLREgIKUAl4nBXg5S3N324MqVK9eC/a45obBB7+Q2R3eDGxjb
nS7vZY9xqriDNbuXOxUprrntNpJ11uz+L1rTO6rs+YuktnW7jSZAgAD3Il06uHTgypUr13VuIeTn
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
6GxjbT91eqEdiN3onj0MNUlBrb77+EI7Zs3ebyuB5KOSNvY3yZ5/IPBq4IkG0SAaRINo/Cej8bHg
DVaiQTSyZVPm5eRNrR2IUIbrkwjWy1A50v5FfCt/Ij5m3Lb9Wnhu6Lhrcbl2k2P5ndBLepUfpBNG
HRBHOBub8Vz3bneuG8UfVD9oZG3Ln2Ge2VU/780yxiUPcE6RkfpYtjEwthPxk9E7P++NxqPoVzVo
PHVe+eJWSAGUzFMzoes83c32jbveF16zStkdzO2sVHugC7qgC7qgC7qgC7qgC7qgC7qgC7qgC7qg
C7qgC7qgC7qgC7qgC7qgC7qgC7qgC7qgC7qgC7qgC7qgC7qg2y663/tf9Dn011F7zU9F6v3KRf1j
qfWHTDXPjR4frsPPkGqdd+RQALmQXEgupIwFXdAFXdAFXdAFXdAFXdAFXdAFXdAFXdAFXdAFXdAF
XdAFXdAFXdAFXdAFXdAFXdAFXdAFXdAFXdAFXdDlUACHAjgUwKEAciG5kFwIuqALuqALuqALuqAL
uqALumwesXnE5hGbR+RCciG5EHRBF3RBF3RBF3RBF3RBF3TZPGLziM0jNo/IheRCciHogi7ogi7o
gi7ogi7ogi7ogi7ogi7ogi7ogi7ogi7ogi7ogi7ogi7ogi7ogi7ogi7ogi7ogi7ogi7ogi7ociiA
QwEcCiAXkgvJheRC0AVd0AVd0AVd0AVd0AVd0AVd0AVd0AVd0AVd0AVd0AVd0AVd0AVd0AVd0AVd
0AVd0AVd0AVd0AVd0AVd0OVQAIcCOBRALiQXkgvJhaALuqALuqALuqALuqALuqDL5hGbR2wekQvJ
heRCciHogi7ogi7ogi7ogi7ogi7o7oNua9TJ0D04cQ92s/rkLJfT+LpimoyzbHsoHcDUchdiuRR2
c+tdB4LQW8mh94bmaDA8G476g/5gPMzaLJZeIJ4bDc5KNbRpuPvsKonaNPKTdf1gfbsR8fXZRgrP
7tMfj3OB3PT55N2/UEsDBBQAAgAIAB2JLkptu1Ba1wsAAF22AQAyABwAc3RvcmFnZS9pbmRleGVk
ZGIvbW9kZXJuL2luZGV4LWN1cnNvci0xLXN0ZGVyci50eHRVVAkAA6nLelipy3pYdXgLAAEE9QEA
AAQUAAAA7Z1bU9tIFoCr9pEnfoJqXsauIosv8oW8JSakqOysWcgkj1vCakAbI3llGYaX/e3bkmy5
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
+T1eW0u7NPcT2viAGug7Rl+hadTBH46uBSUK+ux36VNcpWX3AvZg31X2M7WNLVX2C/WdLblbAPRp
RJCApBmSGbV5yyFZmNp9ZdwUWDJOm13uvQlIA9KANCANSAPSgDQgDUgD0oA0IA1IA9KANCANSOOc
pDFjXJS8XGks2Lc+W5owpF2538xkWjt57uQLzZVlObuU5XxQSB6J/JNI7H8eiSwbfQpNO8+l1LNu
VTcaG3yNwFxKUeX0mvo5MZHYH9gFif2R2B9ZR5F1FBJBHlbEZojNEJt15tE1PGeQgHgzq51mwxfE
ZojNEJshNkNshkgEEkFshtgMsRlis3PbN9MEwub7rR4xWW4QnppDbIbYDLEZYjPgbkQikAhiM8Rm
iM0Qm2nWpICZ1SInEbQWH0rkQm4jhystR4EnvyXQyTAHsRliM8RmiM2AuyERSOSiYjOTonv2khYc
DPCbt9lMk+8UadpP3oOpeQemjr9yNxt3rU5daNcuCrZp4ly6ZdnXwbh/Nxrfju+Go+FoMi7SrDbB
zj0mGt1yTXJW8PDbMhXnNOZTZP3s/Hh0k+/zTEeO6hlOJu/+D1BLAwQUAAIACAAhiS5KDlxr1HMZ
AABaMwMAMgAcAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9pbmRleC1jdXJzb3ItMy1zdGRlcnIu
dHh0VVQJAAOuy3pYrst6WHV4CwABBPUBAAAEFAAAAO1dS3PbuLKumqVX/gmobI5U5YyelmjtMrLj
cuXkSteeSZZTkojYOpFJHYpKJpv72y+oB01JBAmQAF/6pmpqxhTQbDT69TVA4OH2jyfq/KDOYGAv
qXX7xyP975qu3OHEmtHFgpoXf1lz9uTh9o/biTuZTlaU15K8J5cXD4rp1V4nc6tOQjrNbMuiM3du
W8OFvaLmR8d+HS7m1HK9jqTW6jb7nW6v2293O9fNbj2C1GRqO+6fzsRaTTYEj0di7loO/VeOqWXO
refNm1nrwLu6HaN7UTOnoS9aUueb7bx+CHvfSfO3twUHG3zz0ZCP+Oj0vDEEXuOReV0uqEvNEeNk
4j37c/5KnY9zh4m71vyn/+3bt+vexGh2O836xWf6aju/GI0/JrPv7J1Pru1ESOvgTcstm7Hv6fnv
Cb7kgNTmfbV62GBe5+7I2s6S9/ObxP6093O3bRXoyBuWwx7/oKPpfxiFzaOPtvOFOitPwV4m1jPd
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
TpOPb4Pt1GvfNTCNw+6wioNCAnhJ36swqkL9b1su6HqaC3U1d21JrgMJx8VBZjCQq4kmXCwTSl9B
EoqylIdnz4MoQlM+Ei+LNHnJBnrCo+IogGXUSQTmojBmSxZ7808veb8vtF6zT7X36QpnUHPOuRIc
nsWNaTjeYj9OVCxqOf+jxyjzGveNpUvGdXf+LVO+BBZD01OD8qRPHUrfMp7X1KxxMVl3q1gb3YUL
NNZNdpQ0jk3lJq88nuf1qlisbNsgm7sTsiklifsdg1JmmpTZJsWfptbZ3etZhS7djJSv1yNSpfB+
X84k8+ELgA/+LgW3b1mY5/CqWD+924h92sIb2/Vbbga3eb1wseBxOf6vPAjcdL057t4ata2aTaq9
g9VjkSVaXfp523soDS6VPyt4UDmq6VnAtseSRKjrBhOYcVEgHoldJu1trkYV6xqstKtGgddMvJ9H
Ll3r53StAzF2aLNrDPj9AaBTonqXbCRdjwXBBIVprUcASovKzjRwfLyMAL/MCFDvcVdV+Ev25kSd
bQDXND4FzVjeTELZ0iOn2NDGYh3cy7PY4w1R1ZAWWBToSyKxutu/mcYgS+jOIpoi8heer/Z0X032
7HbuWnpO/Rse1p7CLHsmR0KnM5WfwsjcOEGdz1R06dE7J8f7tbmf3TCKA2a4LOHMNJKD+3LuVt4z
QKLsnQClJY3vK5RFL9iPCaTro1Xh3dJjOM7uerLD/99ig7WnF9UXT7aRu/LI1f5ijqH0P1BLAwQU
AAIACAAmiS5Kx4mwvIIEAAAgMQAAQQAcAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9vcGVuZGF0
YWJhc2UtdmVyc2lvbnMtcHJpdmF0ZS1zdGRlcnIudHh0VVQJAAO4y3pYuMt6WHV4CwABBPUBAAAE
FAAAAO1azW+jOBS/59Q/gSORdiRjDKG5tWSqzWE31bYzdwecBg0YxtB257J/+xoSiAFjSJpO2xkq
VSrkffl9/Z5fulxc3xH2RNh87gf+TUCDdPsnpn4Y0IevhKVBTN0tpg/knmGaYi/jL7RP2sXkCw2+
P5Ll4nqBM7zGKXFjSknxeZ+onJ//GgjMTGSjGUQIzuBEj3BAp1pLcJ+4iYQjoE/xN7JKCMO5RVfU
F+y/DyLC9OlkKZy9dYhbQn2uyQ3jlDSMNR2kPr4nlXLD4sgNA0IziQNM01bbU4jwT7dkx99rQ3cQ
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
EyZMmDBhwoQJEyZMmDBhwoQJEyauYXi6spuU3aTsJmU36QHtJk17IimuFVqvvm/8RyOp6CLL9eyX
2cbSKLvTu1EVaLQuO835MMOR7YrFQGo7U+FE7bubFEnf58yjn/VfAxHcv5lakoV0tE53+XQCUP6T
lyRg+g//B1BLAwQUAAIACABDiS5KYAkBycoQAADlQQcANwAcAHN0b3JhZ2UvaW5kZXhlZGRiL29i
amVjdHN0b3JlLWN1cnNvci1wcml2YXRlLXN0ZGVyci50eHRVVAkAA+7Leljuy3pYdXgLAAEE9QEA
AAQUAAAA7dxNb9vYGQbQfVb5CVraQAfQl2XZu4k8KYSiIyPJdE9LN4kamXQpOZ5s+ttLfVMWSdmx
MwnSU6CL2JRESTx8nvteY/oXr96G9HNIz8+TmxBfvHoT/nMbprNeFA/DZBJGL/6Ix9lP+hevLqJZ
dBVNQ9mRtV9qL1/0t883Wh3fS+I4DGfjJL4M8Wgcf+hNkmnIjm6066et9mm30WmenJ00919p+8jz
82Hhs7xOk+veZBzi2fzV7z9nvV19PounGH39mSwff/Acjq6jcXxcK/ggDzzVUf6Zmu3ucdGXMY4/
J5/C4Cak0fyJfo1H79IonkaLp303vg7p0XH+Y3iWr7n8LSUVJ/J6nGavlDuX4fxd7z1J0bn8d+9n
R8e1o/qfp+/fvz8JUdRtNOvHy+vvdfaKSfol+8LDJMzC+vj15bn9Kt8lm0uj8MiK3xac4YETPGt1
FydY/sl9jOLRJFwsXuzwYat/b773aXZe7z6GNNSi7P+Nk2632TrtdNq1myWXF497qsvk5ib7rqO4
tvlC/1aLk7varOo1Dp117zZNs4t780oVD8gOeZ+k16tHLD+VzeOW1+DoqvCRy6/rVTT8lJ3S2+xS
qPo0R+PRxf7x3+QSPWs01pdo4TW4PpPNa2QHDvIEz8/TlcXk+mZ+5KjgkCTefZa3t8NhmE6zU/ml
Nlx+mLXs9abzT3E83blXZd/l/Ak3TzUaT2+i2fDjb583N6QcuNZp/XiH2/x2UfbmFreSHKDa0cvs
s2m3zzqdbrvV6uzfoSo+6IPSzhafc9kdbe+W/lzYuvVvjy33Gt8M2/yK2lLLf7LNUfadl7mbf7h5
RYtH1rP/NU7qVyfd+SOrGA7uPfx5vpWTTqPzHT+xbjSsfN/TWZTO/rXk2MtO4kPIZeaBGpKGaBbK
HrtfRZqtTrf0u7sKH8Zx7uH93a/ia2vHP8N1dmvIHpd/tv1Xe1KdeJbLpFXvdjeXSfkNepC/Mz3s
9rw9ndw/sjPozb++7NVq61qafV9349nHzc05f2fOyk1t2xVr2/vm/FoL3Xq9czoviFl3bTeXd+UH
XmLLOMr9YHGa966jwpT54+ZDGo3C7yGMwuhB6dJoZje1cFfw869InVyHXjgYXP07+3CW951fsnSp
vTzee2d7Ry7e2Pafmerb2SD9dTTae+jqm70s+/3q0tlcY9vrc+fs2536A05rEC8vubILsfB97D7l
+go8eEKt+k707j/1nqsDH2nFYmf/2JK70frmuveAkvtJ0SUQjeZfSG3wdu2qf1FrNFuN9kmr2W6d
nnZazdXT5Z9r581lT/F7uMs97eaOVvWQ3/4cT+ew989751K7S8ez/GPfzplW3s6y+89l2QfzyG+p
djSMJpOr7F0cV4dM9pq9oqut5P7Ye/4rc+fRRS+R17Jz8CY6NvfjQbxcXD8r3/U945Da/L1l72fV
39/msIo+sjmk2tTmDlZC6VP4sriAp/34AfCWS60381ApusYf9uswTNLS88lA7Ryw8wTbXz5EzeXj
Puy8kfIrvjQRnnyhXxZcV7n8Xa3rHnnVPzRlR8tz+v7hSNcPoOtp1zabbLLJJptssskmm2yyySab
bLLJJptssvl8Nud/h9G7TadJWqZzUH7EU3xuX/iQ0N1TLPhp9VefO7DyLwc2B1VLzX0cJTaS+0fk
PvDlz8/PS35Re1nk6XM0uQ2vk/Qf4ctfIGrw+A/2YaoqLqQnuxoUX02rT3saZn8PszdhejuZ5f72
ILupLv9e4a8WuD6vYRLPxnH23d7Gy7+fOJoly7Paf5Pj2fwEwjeQuPPMhzDunUbxL6qvnN1jyy/K
e8dVw+zvHFxic1xwUAHP1WG19ddxSOWhdE/D+5BdFQff8FZh/2s/znsWn8asRHK/8lp8MuZ+6QXJ
M88/nudvn8nPdTfgmWeeeeaZZ5555plnnnnmmedHeQb2/xqsLSRbSLaQRKbIVIElKs8888wzzzzz
zDPPPPPMM88888wzzzzzzLMtYWBtCdsS/g5bwvZ8f4I9X8T81QWBWqlWqpVqpSJTZIpMkSkyDWYl
Ks8888wzzzzzzDPPPPPMM88888wzz7aQgLWFZAvJFpItJJGpAktUnnnmmWeeeeaZZ5555plnnnnm
mWeeeeaZZ55tCQNrS9h/68KeL2KI+asLf3WhlWqlWqnIFJkiU2SKTINZiWowyzPPPPPMM88888wz
zzzzbOQMrJGzkbORs5GzyFSBVWCJyjPPPPPMM88888wzzzzzzDPPPPNsCwlYW0i2kGwh2UISmSJT
BZaoPPPMM88888wzzzzzzDPPPPPMM8+2kIC1hWQLyRaSLSSRKTJVYInKM88888wzzzzzzDPPPPPM
M88888wzzzzzbEsYWFvCtoRtCdsSFpkqsAosUXnmmWeeeeaZZ5555plnnnk2cgbWyNnI2chZZIpM
FVii8swzzzzzzDPPPPPMM88888wzzzzzbAsJWFtItpBsIYlMkakCS1SeeeaZZ5555plnnnnmmWee
eeaZZ55tIQFrC8kWki0kkSkyVWCJyjPPPPPMM88888wzzzzzzDPPPPPMM88888yzLWFgbQnbErYl
LDJFpgosUXnmmWeeeeaZZ5555plnnnk2cgbWyNnI2cjZyFlkqsASlWeeeeaZZ5555plnnnnmmWee
eeaZZ1tIwNpCsoVkC8kWksgUmSJTZIpMkSkyRaapkUQ1NeJZBQZWBVaBVWAVWGSqwBJVBeaZZ555
5plnnnnmmWeeeTZyBtbI2cjZyNnIWWSqwBJVBeaZZ5555plnnnnmmWeeeeaZZ555toUErC0kW0i2
kGwhiUyRKTJFpsgUmSJTZP6IkfnES/9nmTlJVJ5VYBUYWBVYBVaBVWCRaeNUovLMM88888wzzzzz
bEQFrBGVEZURlRGVyFSBJaoKzDPPPPPMM88888wzzzzzzLORs5GzkbORs5GzyBSZKrBE5Zlnnnnm
mWeeeeaZZ5555tnIGVgjZyNnI2cjZ5GpAktUnnnmmWeeeeaZZ5555plnnnnmmWeebSEBawvJFpIt
JFtIIlMFlqg888wzzzzzzDPPPBtRAWtEZURlRGVEJTJVYBVYovLMM88888wzzzzzzDPPPPNs5Ays
kbORs5GzyBSZKrBE5ZlnnnnmmWeeeeaZZ5555tnIGVgjZyNnI2cjZ5GpAktUnnnmmWeeeeaZZ555
5plnnnnmmWeebSEBawvJFpItJFtIIlMFlqgqMM8888wzzzzzzLMRFbBGVEZURlRGVCJTZKrAEpVn
nnnmmWeeeeaZZ5555plnI2dgjZyNnI2cjZxFpgosUXnmWQUGVgVWgVVgkSkyVWCJyjPPPPPMsyUt
sJa0lrSWtJa0IlMFVoElKs8888wzzzzzzDPPRlTAGlEZURlRGVGJTBVYovLMM88888wzzzzzzDPP
PPNs5AyskbORs5GzkbPIVIElqgrMswoMrAqsAqvAKrDIVIElqgrMM88888yzJS2wlrSWtJa0lrQi
UwWWqDzzzDPPPFvSAmtJa0lrSWtJKzJFpgosUXnmmWeeeeaZZ555NqIC1ojKiMqIyohKZKrAElUF
5plnnnnmmWeeeTaiAtaIyojKiMqISmSKTBVYovLMM88888wzzzzzzDPPPPNs5AyskbORs5GzkbPI
VIElKs8888wzz5a0wFrSWtJa0lrSikyRqQJLVJ555plnnnnmmWeejaiANaIyojKiMqISmSqwRFWB
eeaZZ5555plnno2ogDWiMqIyojKiEpkiUwWWqDzzzDPPPPPMM88888wzzzwbOQNr5GzkbOQsMkWm
CixReeaZZ555tqQF1pLWktaS1pJWZIpMFVii8swzzzzzzDPPPPNsRAWsEZURlRGVEZXIVIElKs88
88wzzzxb0gJrSWtJa0krMkWmCixReeaZZ5555plnnnk2ogLWiMqIyojKiEpkqsASVQXmmWeeeebZ
khZYS1pLWktaS1qRqQJLVJ555plnnnnmmWeejaiANaIyojKiMqISmSqwCixReeaZZ555tqQF1pLW
ktaS1pJWZKrAElUF5plnnnnmmWeeeTaiAtaIyojKiMqISmSKTBVYovKsAgOrAqvAKrAKLDJFpgos
UXnmmWeeebakBdaS1pLWktaSVmSqwBJVBeaZZ5555tmSFlhLWktaS1pLWpGpAktUnnnmmWeeeeaZ
Z56NqIA1ojKiMqIyohKZKrAKLFF5VoGBVYFVYBVYBRaZKrAKLFF55plnnnm2pAXWktaS1pLWklZk
qsASVQXmmWeeeebZkhZYS1pLWktakSkyVWCJyjPPPPPMM88888yzERWwRlRGVEZURlQiUwWWqCow
zyowsCqwCqwCq8AiUwWWqCowzzzzzDPPlrTAWtJa0lrSWtKKTBVYovLMM88888wzzzzzbEQFrBGV
EZURlRGVyFSBVWCJyjPPPPPMM88888wzzzzzzLORM7BGzkbORs4iU2SqwBKVZ56BVYFVYBVYBRaZ
IlMFlqg888wzzzxb0gJrSWtJa0lrSSsyVWCJqgLzzDPPPPPMM88882xEBawRlRGVEZURlchUgSUq
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
+0Egedxon/v+j+c+WXWhBm7G7tt746PtEe2He+NTvcC9uev/gVSYSCTohdDD7ILd1TLBUanXMt69
Mud9lBc3FhKF3sQtmxIIznuiVcGiADwwFCEnQAoSAO03w88njBKl1kNFr2OFE1mz4jNOslyqsO0b
nwDLv1CNgwqlbUwm7gnPqXRe0Q7Bc+7AFjovJrCyxZXhpb6bNz6+mOBBfFKgEhzWsTR1bFWgO+bs
p6v8G+x9W2FKjjF1Rrhanb6LXpHFryoJN2nDvxdx7yuIq7MJXl2FAAc56Wndl6tXyqyS+H1HHykq
SpMUhqs6DncK8s4x8WGVJ5+qvLlisxS/qFbgHk4udAZG7YX7fCl/JC1dmytv80PTcGo5wOem5613
hy1VAKe9xH4W6bco0mL6Nd4GCbCTRNtFsgW84yAkuL3stpfd9rL72pfd95Le3u7Vu/Kyy9g6N1Gv
65Zh1R/HZWfqG4396vpunqzp2O/pB8reyr83aCeWG835tdN6p5jWewvDY5ZlGi8dHmty+/zRU1I7
ynaeUbZjerzZy6hqFEYIcbLps5OV6hybVVV79clfPArGo65opnDwinqah1WX/hNug/KRvKxJyfXc
poPRajxfyRYS8XUQzm/8YPf0Hte6J0yOlV6T68JEZAXKf+Bw1rGxicqKX29s7NgJy3ZGsp2RfA8z
kkc0qdo2U9tmamcq2pmKdqainaloZyramYp2pqKdqWhnKtqZinam4vVnKn7wYQm2Wx1uys+YJn2G
q3pTNXcvfPVfR02nb3Ns76iflqdzv/PmJ5E+0/L/57gzQ0tl2vDDf1BLAwQUAAIACABGiS5K9dqU
dWwIAAC9CQEAMAAcAHN0b3JhZ2UvaW5kZXhlZGRiL29kZC1zdHJpbmdzLXByaXZhdGUtc3RkZXJy
LnR4dFVUCQAD9Mt6WPTLelh1eAsAAQT1AQAABBQAAADtnU1zokgYx+855SNw1KqdKhRU4m2ik11r
d4dsktk7Sidhg+ACSSaX/ezbgGIj3Q0oJmr+UzUHpfvpt+etf92GyfjylgQvJBgObSuyplZIRr7n
kVnk+N418WzHexi5fkiUL0pHVweaPjA6/W7votc9++E5/z6TyfhyXKg5HM64Uq4Cfz5yHeJFVN75
pkxVP5us++MviDe+vCG0jTAaWd6MuC6xi62KSsYtHIO8u8DyQiubtvnCJRGxzQUJrPi7O2dOgisn
oBVa6s/B/f19j1iWoWtqu1B7kU51ad0+py5tee5EppcOL368Xs47fzXotBRTkZ2R4sPCZHCaPGvN
LcdrK5yJKwhM5qxlT7ml6ajv/WA+4la6/esPJ4rLX1qzJzpHt5EfCFvICtfrru3Y17I+VJkNpTWz
XHdKO9mWGxhtjNtK3qi0vqHyVNLxXvwnkinKV89mxCRq02pLRupLKib6Jqn7aHm2S1afsy6EtON3
jyQgikX/d3qG0dU01TCUpVLHinZFm/GDNzp4EhvJSsbKkngKyy8JQe8oiFuSo70Fl5QVOts0s6Lm
nwvKmMHXqR/Iis6ttylJotNk6fw24lL3oi8cRsEwE0F2YSj31ChMb7T07qzT5MxZqe0kVZoxsUG/
r2cmVk/Utb9Y0MhieUrmDn5RPP9ViWRtlPV69BwEND/IWpJUWDn8tEY6K1m9zXDNm2dBIEmLsoEC
S9LYktSYdFgJlgRLgiXBkmBJmlwSQdK2PeJI65fCDdlGVyqqlUtHdaO9hy0dzZjH0mmbxT0rVITE
g5XIEfVf4btWm0VDF52O2uaRClTlVd0FkOxl/YxON+mYeNc9zsWjuKDJ0snhMFhiyhWI5BTxvbyU
2+fZjIQh7coXZZZ6a4W2F8Zu2glzbpAGC3QOnUPnNjqXibKdcGFFs8dvL1nwZ8xbG6Tk/hMVzzBk
fIoiWsfkhIXJsZXWOfWLun7R7xu6pvXbhYMbiZMtc/7ahShusJLX3WwqkzfU/WfyTBt7y+Rj41nn
8ezMdm265qKkPp5cNgNKaqr0X6enTnuGWpLcmhvVm1mVXr/T/8AZM6yZdNxhZAXR36nnGdFOPBDp
6VxudxMQKyKiusUdTnzUJFy7KXlwPKb6JL8Uf5I5NfHC4dxmrdM5yBLEIpP1TNUi0bo7zAfag1G8
fLQ1ZbXbpev16kSPWRxigxDNGpX1FlRZ+81Y14ihqv1BvO+kW2K9m3rliirGOeHOf15R+kJA/bF4
CCybfCfEJnalQNrpUqdGXjnfbxF1mK15Ygfm9B86Oanf+UKji3LOOUHfLJkMbP2RWvVzfB5lF4+H
lit7LXq+08H+ZrdKz/h549jtloJYdMmZeKG8hKEUy5ZcFChUEPghngpYdrwginm7sqvJWOl0tY7e
07q6Nhj0te5SHCsrNzgq4jt5ZcRST1Ve5dtPJ4wNu9jvnKq9Bk7E1r2NzVTqzpjbC7uuUq1LDDxt
Ex0ZN6+ZhQNnmbXkCmehI/PHppcyu0bNd+UzyqyW9S2F7+TrlxWT5CNZEblNZR5MYEpP5C1R4HDi
VTC8lOPexEGFp+PVHpOZHwj7Qw0qVyAnYP2witVc15ts1kbEGi+MCDsr+jVHr5j4u9zC1tT6qlHW
LkTZwh3DTqerG9XvXbC3DGvd76DtqGqzG82G7+Tlh/PquK7g+stB3+TEhvv0Nty4vbrF7dWPhhTb
3J79KLIhSsi5nSzJndNKre1xSYUs+8rxnPCRdwv8o9DKtsikKpLBbeiPgUhAWp8eaeFetfRe9Se+
5XP0vDPXaY4xxcv+LQj84Ot9RIKcqS51gX5OTOz88DzlSZHdmnom8Flp3vRbPKd0MoQZ2PGQZNYR
VR0ek8SeNILexQSAr4Gvga+Br4Gvga+Br4Gvga8PG1/vAzbXZ961MHJtPa7KnevwY9wMBL4Gvga+
Br4Gvga+Br4Gvga+Br4Gvga+Br4Gvga+Br4Gvga+Br4Gvga+fid83eiV7l0pOPA18DXwNfA18DXw
NfA18DXw9Qnj661pNP4ACPA18DXwNfA18DXwNfA18DXwNfA18DXwNfA18DXwNfA18DXwNfA18DXw
NfA18DXwNfA18DXwNfA18DXwNfA18DXwNfA1Xiu2zcuUga+Br4Gvga+Br4Gvga+Br4Gvga+Br4Gv
ga+Br4Gvga9PA18DQjcBoQ8BtOk6TZkOFLS9e1p2fDAfTOzTM7H3PszZ5nhmLy/0rHOoUX/bns+h
JMQnjoXU4Yd+IGI+5rrE5zk7aNI7rqe4zENKFqOecz8Wxwr0vbnuckPxq9giW0ju7sycvm0B4gWe
UTaeQ0H1Bf+bdng4FDzIXHvOfb5Y7jO58oPfyVtjvuZ0WXqV+GHWt4VqaCOv7O+NwZuFKSY/pCw1
OCTRryS6IeGzGzEJ2hN5S/3ezthlO7S+Y0ytyXpOB68AZwBnNIcz9o4lmgqDwBnAGcAZwBnAGcAZ
wBkVcMbxwIZybND87nybXfZyd8TdZydur/wHAo3tat97w1ppF73dRrDMG0pEcbiQoavyJZCIOwiH
etQ04OBcMzABMAEwAW49ABMAEwATABMAEwATABMAEwATABMAEwATABMAEwAT4DYBMAEwATABMAEw
ATABMAEwATABMAEwATABMAEwATABMAEwATABMAEwATABMAEwATABMAEwATABMAEwATABMMEhYYLd
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
M+vcWOfGOjfWuZEw51D4WubN6sFndjWyq5FdjcTvfAus4G+BkY0n20O2p5BsD9+Aqn6QWJ1sT+kr
Ocj2MJtgNsFsgm+RtW3XDGSADMwmIAP76TiLlbNYIUNbYoYmHp8BGSADZGA2ARkgA7OJBp7f3pal
SPV4dCvxhgoykGcgZiBmgAzEDJABMpBnIM/AW0smK5ABMkAGyAAZIANkYA0kO6qquKOqPK4cvI2A
HVXEDEXtqKrfM82OqtKORanrUfG1eTI5JYNTMtjXdtJDbonc6hK58e1vzqwu5GiLSp25x7e/iRyZ
07Xg+wIcddmGmUDNv+BzvLilIl/eqdHp6UQKfJayat9OqvgyRN7sne7Lcg1NzRN7t2LPN/u3+EYf
w1htduCxH6I+6ejGfku30Jdr7JkqYpyWN2GO57Zj2XlG6rEt5F/MJ0XziypvhvusyFtVZC32+43y
4fxDPpIsmqAYjjIx/K5RptabsH1tPp5/VFRTV+az2eaXjbCLop6kr6qpiYuOlHRszaVTBUT83L0a
ftr+QXkU0gFlr9l+Vzh7tKJyI/VJ1jlW+13X4at/M3RZ4DlK7zRrfWG2bgs/oPTKuldQAzVQAzVQ
AzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQ
AzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQ
AzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQ
AzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzVQAzXKV0OWM8dz27Hs
oB6LX25uHOH+Q7g/hTOfejejzW3bu63f4l05P4Vuq3Zpluka5lz8mJt+NcqFay1aFb1Jw/UaIBZF
CxU/ZDkkn2Wawr/ol7X4NaYZ8X/4yzSkIvLP31RXnaiOSLmXixfVMDtKpEjkOn0Se5W850fLfrlN
FSifhz38+U9Zt7TxVdV+S10fXMuOtGd90ao7Vf1VNTVx0ZEdP7bm0gF6l/3e4Kp/ed0ddnu9y0/b
PyiPQjqLbIEtNMvWnV33eG8Lv8RO5TxAxMmScGOzsN0cvadcaOp0OpHWOlFBVmYXiiyuV6e2UPV3
5Vl1QmoMR6MD1UjwWCnFPhoUfjOHeWRuKbYJeRv7lJ9Oi0xszn3XMSSvSHenDCD57vJ095NnlKvL
PWUZig979owqwod4IdvAaJQRVBAvlBQvZI0ACp9+3CY+EsxAmIEwA4EoEAWiQJTCpgIHcKcoNOyJ
KIgCUSAKMQoxCkSBKBCl1LQfMQpEgSjEKMQoEAWikEcpII8CUSAKRCFGIUaBKBAFokAUiAJRIApE
gSgQBaJAFIgCUSAKRIEoEAWiQBSIAlEgCkSBKBAFokAUiAJRIApEgSgQBaJAFIgCUSAKRIEoEAWi
QBSIAlEgCkSBKBAFokAUiAJR2HvM+SgQBaIQoxCjQBSIAlEgCkSBKBAFokAUiAJRIApEgSgQBaJA
FIgCUSAKRIEoEAWiQBSIAlEgCkSBKBAFokAUiAJRIEptiJKJCQVhB6JAFIhCjMIqfFbhQxSIAlGI
USAKRIEoEAWiQBSIAlEgCkSBKBAFokAUiAJRIApEgSgQBaJAFIjCehTWo0AUiAJRiFEgCkSBKBAF
okAUiAJRIApEgSgQBaJAFIgCUSAKRIEoEAWiQBSIAlEgCkSBKBAFokCUIxGF0wwgCkSBKMQoEAWi
QBSIAlEgCkSBKBAFokAUToXkVEiIAlEgCjEKRIEoEAWiQBSIAlEgCkSBKO0gymF+U/zpKuRRyKNA
FGKU9mVmC+dDfkRBFIhCjHIaouR+WMtgELMeiEKMQozCrAeiQBSIQmaWGAWiQBSIAlEgCkSBKBAF
okAUiAJRIApEgSgQBaJAFIgCUSAKRIEoEIUz3CAKRIEoxCjEKBAFokAUiAJRIAr7etjXA1EgCkQh
RoEoEAWiQBSIAlEgCkSBKBAFokAUiAJRIApE4TQDMrMQBaIQoxCjQBSIAlEgCkSBKBAFokAUiAJR
IApEgSgQBaKQmYUoEIV3PbzrgSgQBaIw62HWA1EgCjEKMQpEgSjEKMQoEAWiQBSIAlEgCkSBKBAF
okAU8ijkUSAKRCFGIUaBKBCldKJkYkJB2CFGIUaBKMQoxCjEKBAFokAUiAJRIApEYdbDrAeiQBRi
FGIUiAJRiFGIUSAKRIEoxCjEKBAFokAUiAJRIApEgSgQBaJAFIgCUSAKRCEzS2YWokAUiAJRakKU
u8m/pUrL/teFZ24FlUjF9sL0N/+qn34PVQ9KeqB1u5ikb91JCXQLVZHuzaFLU569rUYXwNF0dnzL
1i4jy5xm2XjVfBLSJW3/v+efFMv3QsXxLgqjbjA4G0tcSMd68h4W7zl/M9xnRdpXZAvs9xvlw/mH
syUCDEeZGL7vKFPrTdi++308/6iopq7MZ7PNL/kgfDUadbuftn+I0KrkVgy73f7WUCB/iLQCm9jE
Jjaxic28No+6vZjewCY2sYlNbGITm9jEJjaxiU1sYhOb2MQmNrGJTWxiE5vYxCY2sYlNbGITm9jE
JjaxiU1sYhOb2MQmNrGJTWxiE5vYxCY2sYlNbGITm9jE5mlsxh6C4V8kjftHpCSegXH1uT8YpFv6
y5w7Qv86tSY/jOnSLpVTOZVTOZVTOZVTOZVTOZVTOZVTOZVTOZVTOZVTOZVTOZVTOZVTOZVTOZVT
OZVTOZVTOZVTOZVTOZVTOZVTOZVTOZVTOZVTOZVTOZVTOZVTOZVTOZVTOZVTOZVTOZVTOZVTOZVT
OZVTOZVTOZVTOZVTOZVTOZVTOZVTOZVTOZVTOZVTOZVTOZVTOZVTOZVT+VErv9AnHeUv0/jP3Cv3
TXXVierIMjNhP1r2y60rbNUViw9DJNk34i/K9jWJXm/raxLyh8jXJC5eVMOMbadu6PeLpn4L6HU2
toXqyhYqmt8I5c1wnxXZMkWWt99vlA/nH84i1n7ZqumommtY5pb8F5o6nU7kTXfOvBuzTFP4l/2y
HoT9Kmy/HeEGLOo1HGVimLrXkqn1Jmy/Gz+ef1RUU1fms9nmlz1KyKaEmqxZLzOvCfrdzOsQr33G
i7B/GLaU8qL79/Xj4+OVUNXRoN/tREpv3cGdubi1XR5ybwu/t5a9Ly/5KeSljntzY5kPc00TTqKL
z8JlI56z+vvCdRb6qFPZtfq78qw6IbcZjkYRt9m+RWuly3itlDmeGsJ0M3lY+GFId5/QM7HlP2uB
dMOZqbLJ319lE+Qtnod6qa/H9NJM+L6xs4eH3TRXDd9J4X4UMr92pEDHOsL9h3B/Cmc+9e5bPqS2
p4DPuAQXytGX+SXe9La7qSNSZfjfnrHIJbJOdTI1nOfQXcd0wvrCX+EKY1siq/qi61J875+vQgn+
KdqGxRDhP2Le3+42/5TuM3fvbGkrUsheCHYf+DsFKUhBClKQghSkIAUpSEEKUpCCFKQgBSlIQQpS
kIIUpCAFKUhBClKQghSkIAUpSEEKUpCCFKQgBSlIQQp6Ba2ZMBNWny+L3iVfkXMN/Pba9hfDDa+0
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
yhlmS57WlvRsFx8P7ROtZ50GkY1n58ZJdm6cek09bCqETUQttZhwtDtVTB74RNmeEmOP/Imjw7M9
vKcDvqyAZQVsY1fAtvGojFNmexq8Kqehq604f5nguAlJVvaWlrW3tHWZTwKR+gciHMlZ0bNZjhH1
nSpLXPc3Uw08soyIlYi19R9XaNbZWeTgq5iDJ8Dlm3Bt2ExV17co1Trt8mRrWEqibbVmJ+1eXwfC
QXjTPi3UrAwLEfyhETwZ8FNNEOo3K69ttqU2K6uOOlqcJLPdljeUjTwqo37H31T0HAxeaFZy/UZt
zpFj/QY71/jmEGcO1O7MAXYWV2dsbM2JLBzrcJxwtNaRIxqgARocUwM5Vpvjue1Y9tnYFnIkMp8U
zf+38ma4z4pshSKL2u83yofzD2eLSxXDUSaGH3AoU+tN2H5LPp5/VFRTV+az2eaXzW0sino38Kqa
mrjoyBsYW3MZKgWa/Ll7Nfy0/YPyKGRYJYMI279xZ49WVO+NHuYrbT7wXKRXYK0vPMnxIY25JCD4
cd+mVP0EEtRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRA
DdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRA
DdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRA
DdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRA
DdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRADdRouhqy
nDme245lB/VY/HJz4wj3H8L9KZz51LsZbW7b3m39Fu/K+Sl0W7VLs0zXMOfix9z0q1EuXGvRquhN
Gq7XALEoWqj4Icsh+SzTFP5Fv6zFrzHNiP/DX6YhFZF//qa66kR1RMq9XLyohtlRIkUi1+mT2Kvk
PT9a9sttqkD5POzhz3/KuqWNr6r2W+r64Fp2pD3ri1bdqeqvqqmJi47s+LE1lw7Qu+z3Blf9y+vu
sNvrXX7a/kF5FNJZZAtsoVm27uy6x3tb+CV2KucBIk6WhBubhe3m6D3lQlOn04m01okKsjK7UGRx
vTq1haq/K8+qE1JjOBpF1EjwQXlzt3k8Y0u1bBqUcTMHeGS+W4wh5G3sU55Ni6woLUOzGDbXsrtT
BpC63E+eUa6Me8o4cpbelUb94UO8kG1gNMoIKogXThwvFD79uE18JJiBMANhBgJRIApEgSgQBaJA
FIhyVKJk48MB3CkKDXsiCqJAFIhCjEKMAlEgCkSBKBAFokAUiAJRIApEIY9CHgWiQBRiFGIUiAJR
iFGIUSAKRIEop4xRIApEgSjEKMQoEAWiQBSIAlEgCkSBKBAFokAUiAJRIApEKcZvij8LgbfHvD2G
KMQo7YtRCn/Q84OMGAWiQBRiFGIUiAJRiFHIo0AUiAJRmPVAFIgCUSAKRIEoEIU8CnkUiAJRIAox
CkSBKBAFokAUiNKS7/W0lgkHLhaEKBAFokAUiAJRIEr9iHLMT82yHgWiQBTyKKxwgygQBaLw9pi3
xxCFWQ+zHmIUiAJROM0AokAUiMKsh1kPsx6I0uZZT0HYYYUbb48hCjEKa2YhCkSBKBCFWQ9EgSgQ
BaJAFIgCUSAKRIEoEAWiQBSIAlEgCt89JjMLUSAKMQoxCkSBKBAFokAUiAJRmPVAFIgCUYhRiFEg
CkSBKBAFokAUiAJRIApEgSgQBaJAFIgCUSAKRIEoEIV3PRCFM9w4w40YBaJAFGIUToUkRoEoEAWi
QBSIAlHIozDrgSgQBaJAFIgCUcjM8q6HWQ9EIUYhRiFGgSgQBaJAFIgCUSAKRIEoEAWiQBSIAlEg
CkSBKBAFovCuB6JAFIhCjAJRIApEgSgQBaJAFIgCUdjXA1EgCkQhRiFGgSgQBaJAFIgCUSAKRIEo
EAWiQBSIAlEgCkSBKBClPUTJxISCsANRIApEIUYhRoEoEAWiQBROXIIoEAWiEKMQo0AUiAJRIApE
gSgQBaJAFIgCUSAKRIEoEAWiQBSIAlEgCkSBKBAFokAUiAJRIApEgSgQBaJAFIgCUSAKRIEoEAWi
QBSIAlEgCkRhXw/7eiAKRIEoEAWi8AUwvgC211n4hfMhP8ggCkQhRiGPQh4FokAUiMKsB6JAFIhC
jEKMAlEgCkSBKBAFokAUZj0QBaJAFGIUiAJRIApEgSgQBaIw62HWA1EgCkQhRoEoEAWiEKMQo0AU
iAJRIApEgSgNIko2PhzAHYgCUSAKMQp5lNYR5W7yb6nSsje1qVCjotgLi2Pvj4HLq8cjbauFu5Ck
xdxRCYCLVJP+lEQuT35Y426gAKymo2ScvX1GFoRs34R0Vcv/l+L4/ww+64NutxX7vscSdfKBevL4
4LHvzXCfFVmRIpttv98oH84/nC2xaDjKxPCfGWVqvQnbf+w+nn9UVFNX5rPZ5pc9SjRm//n4sGcw
OFhFSm5g4NeY4/k42v74WHafZIAcpzD62GNfcQNP68KGIqV7MfwWbB6LN2M6Hfu/By5d3GeorBwf
Zl4LU/+wMbv8tTfoXvcH16PesNf/fHV5tjWiWo7Yvqg7SHxeIgi4X2gx9uyETb+o7xPh/3677OCt
ekZXw6R6ZN+Z6z4ae6PLdCr0/FfHq/T/UEsDBBQAAgAIAE+JLkqJYkOXkwcAAAdlAAAyABwAc3Rv
cmFnZS9pbmRleGVkZGIvcHJlZmV0Y2gtcmFjZS1wcml2YXRlLXN0ZGVyci50eHRVVAkAAwXMelgF
zHpYdXgLAAEE9QEAAAQUAAAA7V1Pd6JIEL/nlI/AUd/beQ9EkXhLdLLr293BTTJ7R2kTdhBcwGRy
mc++3SDY0H8RTJxNz3tzEKqqq6vqV13dXZr57OYexM8gnkw8N3WXbgKmURiCVepH4QKEnh8+ToMo
AdonzRjqY3M4tg1rMLoaDS6+hv6/OzCf3cwIzslkRZVyG0ebaeCDMIXyLusy9eHF/KBPtAXh7OYO
wDGSdOqGKxAEwCNHZVGiEU4h7yF2w8Qtp7nZBiAFnrMFsYuePfgbEN/6MWTo6d/H6/V6BFzXHpp6
n+De5qYR8loUXjjyxk+dMJ8een0w/0NUTDqnwhhxi5AvCWNQhrzobVw/7GsUwxECM5v1vCWVGs56
HcWbKZXp/q8//BTR37irb9BG92kUM0coiZup6/negqeDjDW03soNgiVUss8HBByMOkoVBKZl67SQ
9MPn6BsoA+U69DAxWdj0+pyZRhzGLN44vE9u6AWg+FyqkEDFH55ADDQX/jdGtj0wTd22tX1QsyKS
ZgciuEuii7rDSBteMmic+HoZxTzSjfu6BFlemu9hVMtIgyuLOQ3CxZkgj5jKGprXCaf7PIHDjyXi
+FSb8wuTLA/AXFG9inGGdv9dQhXPYEhLQghNqx/Es16/kmSNgd7PA+QWjhjFr9BBALmsoC/yPzUa
qJSctxQNBQpemXamoBCo2WDd4HlsWcMSz81ELaLtFoayG2qlQ3/RwuhFS3ljiLSe7uIYBmM5Eoeh
WF1yjtwqJR93Xcrdha87/DVkRtKfJESvDKMIUUZinVUCDRE6eCkzmcT7mqaoWigkUViVcr9brUCS
QFU+aavcmBocL0FW9JNKboG+RAJLUZ6fbN109fT5uUwgGODMcV7VlHBDZRdrcllJhgFI611C2wyH
V5YFSyvT6hOVHsfQQqRdZXZmVYZECu4KbLZ+erBhY5wMbCiiDlDDLTvwoM9ZuEPGxVGUcerwnzHS
lyNb7/Nh6NTYu/HKyDKsd7SY7a64805SN07/zuE4hUo8Am45XykbYuCmgMVLlg6oNmX6bgke/RBj
n1ddcWyZ8CfYwNRA7ALqo/00la+DZya59HxQB/sANZgi98HRtKKMhP568dOnMjnjmRkWN9qhttMO
eRPFGrB13Rqjgg7WmsNBnpUlQ4yyJa5+LmohYpX5un2MXQ98AcADntTqYgxgUgMvlOdHrDpYzZvh
wFn+A42T551PcHXRLilb7jplNrHDR4jqHdp2eOQuYO/ZBfb+IzB2d9pRN73w4IPmq3ZHN2zRgoMC
gp6zASNpBacnBAMjZ9LC3PWQQzTnvsgd85lmDExjODIHQ3M8tszBXhwuqzI5KOILeMHEllmbx/L5
u5+g5EXqXQm1l9hPcd57lIq4KRs70mnrpUYnO7RoY51+dB+ZxNkJDy0V4nJ5LNccJ8w3/J3Ct8gZ
ItQyc8sHFUA848dwScapO3nSBblm0VALRibK99d3qJKQUZSSF3AJ7NdgFcX0eTIUg4lpz9RogpWx
DzKO9EF3Hpb1ZgML4YY/3kadBUBuaKE3ZZaLhZRP5eaMrxyyTjhCxw68g2vaEmdCL7BXRDnbS/DL
GlvCfu3WZIEtKUv2or46SOQ1bDe1P6UTe0FkYtnq4MPEdRcTaJNA2mJCjkR29+x1f4vdrtRdUKoq
Ci6aRHYThzf3p/JHQ38oayhrnKc1iP6EFz8IGA0KqmvoLbqGWGdfHGLmMVXO1OvLHEzd+qGfPMme
TP0vmo3Otb2H13xzdtdENatgCYxyZ4Ims8+R1+sUxJU7mek+Wov7lqOvQ1KO3+hXOxUSOKa7DCAY
RDmmJKwFClUTOBRcN9AVN/z4DLSU6/WIc0ODLpmnuziJYtb9hVOhYMR4DvjfkOehK5kXsFjapM6X
C2IaB6Wja2xRQQxC+GQHhGlGHu6Np08fsJanOKIok7WHOj/HcsS1mXt3J+ENeM8rXbElZqB0Kwti
R/f/giLgWjiwbAPBO15ZnZcvD2XK9cm8yi91oAbF0HPZhp7z6vLIfC6ofzIaorSpc1IWtzbJ57D4
iVbn6jJJecr3IUbIdVpJxMc5tiQzAB3VKTBQ5s8nE8aLcidQwfGzG+zAbRT/Dl6l0OI0N43cqZDD
Llhab8gdejzs7ZWA9FeQ3oFkF6RYe8438ForMd9o617otYpCmIihd3ZhDpJeGuVakZOEyRgqABgG
bIOlimQRnAg16C/4kVOlZQdljY4PrXmFmIEun0JEAdieTCvcIcSV4A4hBmsAo6KT6JfB8PxYZ8gh
ec6NxdZgnjMDUuFZ4VnhWeH5Z8Czaqd9i3badslOdeZ12Np3+hXjiE6/JplT1DN27GJzXGcYvh6p
9rou2uuOaqDsoIuuCx8QFceHaHlt550Om+jUPNQ8mM2FZ1rvn7j9S4l/P/ENtnLddFW+GYnaeaqT
JHWS9JM3FXd1XPWGHZHvczKmumqVNZQ1lDVUXaPqGlXXqBsyhWeFZ4VnhWeFZ4Vn0aWiAuxHBqz6
9qf69qf69qf6qfkz+C6q8NuflbdJGm15P0DO+OMWjamZg+K/B5o9PUSSYaKfqK+CmviTIZAo//Me
cj+mj//RkEY/2m+Y9qj5j/b/B1BLAwQUAAIACABPiS5Krbn3EPAHAACaawAAKgAcAHN0b3JhZ2Uv
aW5kZXhlZGRiL3ByZWZldGNoLXJhY2Utc3RkZXJyLnR4dFVUCQADBsx6WAbMelh1eAsAAQT1AQAA
BBQAAADtXd1zokgQf8+Tf8LUvqxW7VahIKJvidncWXV1ekn23hHGhAuCB5hcXvZvvx6Q75kBFD+y
O1uV2nLo6Wn649dDT4uz25sH7L1ibzJxN9i5vbnH/26xH0x1x8C2jc2r744FI7Pbm1s90Je6j1mU
6CvqXM2Ox8/c0U9dx8FGYLnOAjum5TxNbdfHQN1XpJGsjLS+OhiOh4PySunMycSgcrnz3PXUtrAT
kNWLPCWFL0/Iwtxfkmh+pQzdtW45PURRZAWrbpbTQNF6NGNYzqv7gucb7OmE0bVjPnq64+sh20dr
jb1ujyOCy5l4Z3ngAOy5z7pj2jj+nIjgg/CPz9jDSIe//lDTBrIsaRraRJYjRrmDZVzvHayCbRwk
PGIfSvX96Cb2o1JyrlIkLg11e6gr/TdarVZDrOtjWZN6MLPylsPF2tHMSFWVRDPNWC3czQb8V3dQ
YsUvyHHfUMBbo0rq6dbzwAOTlTgTgGTleuvdjEgrybzQBl1zSZ0ZmetGN15ApAdwBXz18NcfVkCo
sqOTyRMO5t43Hybalv8cc5g5KxcWiGMaVmJMLy+EwiH4hFaWjdHnzmcEwpqW/8K5U9Myb8siZ/zP
IAFcmkgz6I8qJ+z3QydkhUEsSbIGEM6ziDyZeDtodtcbQmlSSFwnz+VhaxjY90GUr8iI7IlgPZ8Y
0vJzmAbuRBgmrEB1Gz0wnr+9JsCV3o0mj6ReLuJJ9mDdXJhZMjGMuh3QjaKMVVVTZFntlRIWR9GV
wT4O9cxKcCXobyveNen48Z5Z42jxTjwqjfasZgcm2JwV+kS5uXgkMyX41x+N9SEA8KFIwI3ieWH1
dow6VPvqGRWu6YbES/KgMy/4O4rmKQjxhDOpvmK342E9wKy55R3PQFa1/bcpDJdZ4ifLydDPnDqZ
oziLu7mIPKMhpqYSZj7AMlOiNJJhUq9Eb1bwnCBqFk77AwmlG0GUgh2xMNYkSR2R3R9sTJVBBKU1
DRvdbWYgFJOikFJq+L558nQT/4mxic1aKaE/ACTCb5Txy9t7Nkxcme16GAvz5T9gqgi6vkKCQp1e
Sc8lylDN6UeI7C2A2bVplqbu/GyRuf4rTMxd3xkrsWrqETkLKapUQ/VzJwpyVuhTbZVnGcd8pUCy
lNuhlFmXPLnCbTjPjmVaBnrGSaQ0gYGbNDfXTWIQNH+IkWx2i/oDua8M5cFIUqXBUOXn3QVLiIYa
QV1Dt+0lCNzjJy5Yc0qzLAP9p+17QW42bYmsZ+aIE2BMss3cieoCrYZKHJ9VEcKM41+UQWmM78MJ
GWefl5DwY3jBk4L7BHxPNgcQyF74f+cLckM/RH4YVGkoDzVF0ereEH9FbLgeqa694HfegiMVFqyh
mgMUz5ATQK2ukJo8HBxZyLNzr+t7dXB+cTanzCaI9vyTnTgWLTtZ62lnUUS4unZu0XStGiLzoLKr
Wh1L95w8/KGV2EYEN9Vt8+htJOUe7Oun2rpPjKbUu9io2XvX2F5sVSFoDZJj+8Rx2bejg+NnCDrI
NntKaRIzrT7/C20IbQht1NPG2gryJc43y7an4Ti/kHyYJg+XurKoV7yHXFmudLGiCBUpitfHUdQY
7+w7rsdRJ7FqcnziZuJmynFUtnW00agOR1slf2wkq5q097ERp6pHc4NSXY4SB1SpOwwagISl61VE
zMoiBb8YAC7vVKSglQwSUY6IyM3swO56FWAvdwQVKSU8NuocdN4ScOxGP8nKkeD4qLgKLBLCgqNQ
JYGlIAGQY3j4+IpRwLW6yzkCIgfh063nux7rgGSeo2D4+J3lgOi/E8uDKZmnvBn8o94vN4hpMyjd
biOVGsTYgZEtroSZ+uHe+PbpCxZwisOKcrOaIvExlsPukHtvr/zfYO5lwRWbYxiUeoDZzQJt9ybs
svl15cJNuhQ+irrTncT10RTP342ABPHSs7qNPWfKsAz8fiA9HBVblJCmtPsozqTkn0PwIc1PVQk0
n8koo3wbZgi5RkuI+KGYyZpJI44Rfo6OriEQEUz13ifoU+fTVURKOleWVqgsZLtv2AuLWqQ5FAyO
tptNOpJGcjSV1MJeSRd8uOWZulvY3GSqX2NpqH4pDqAVho0QWMELa2j+HlLUicp5cxPUq1fN2XuX
gx+y53S/2+nax8FvOLjH/tYOMo1JYQnyHI/jsVyG64CnbfHd1omCsRu4kVTlmwTvAQEwQ4GHxGyO
c1XYlsSgX+B7Tp6W7ZQFOn4Iz3LEjMxp0YnqBKUq9UnHWmGgFJRVRwQeDmfwxdwwqGI54+uRoFEM
6jYAl/mOnnU/J6QKGUUIKYS8dCEPywl1MttsX4iql99mXIQ+OMXNmDAtspzIciLLCUQRiFIHUURL
/Sla6g+DW9Ex3GLL8fFz1iE9pk3SXY2G1LNlxMvt8W6lMbtRE9r+dtqvT61uW/tx+g/bsF9+J9Tg
lgp7qKa2bu0Jsz0XvshmyLa+DSB0IHQgdNDClxZO9nT2sbuHBfu9WqtLD97ttGCfjETUCUTl8Set
PB7neH6Po3Rx8COE/KkK3if57sIpq+on/JLEeQr44os2QhtCG0IbYkMvNvSilUC0EohWAoEoAlEE
oghEEYgiEEUgikCUD40o4q0d4q0d4q0d4q0dJ31rR+6qH7gb3ivwGb//xGOTfRF9OJr6Rl8eR30h
mXgr/e4TEEW/0UR1BO7vR+VZr/X3JQ7HZzuIKayjDdX660Q/xtRQT/8DUEsDBBQAAgAIAE+JLkpF
mdCgSAYAAKpDAABGABwAc3RvcmFnZS9pbmRleGVkZGIvcHJpbWFyeS1rZXktdW5pcXVlLXRvLW9i
amVjdHN0b3JlLXByaXZhdGUtc3RkZXJyLnR4dFVUCQADBsx6WAbMelh1eAsAAQT1AQAABBQAAADt
XM9zokgUvnvKn8BRqzZVKIjEmzGTrLW1ozXJ7L2Fp2GDjdugmVz2b58GFBrpbkBJYhKmag423a/f
j/6+9/phnNxc3wPZAhkOvTXgm+sf8N8G/GCMsAWuC3brJ3boyOTm+gYFaI58EM1ULpWL1iSVZ+/m
jz2MwQocD88A2w5ejl3PBzq7q6sDTR+YXaPXv+r38julK4dDiyvllnirsesADsLdD2WqulyfSIR9
vCbx+kId2ivk4I7CcWSBqDYrqaebHV4wHLz1nmC6BoJCQSNsPxCEfRSJfXBWQNod1g21hFlskidR
5NYhdCdGFyu0OieEp8v/ubF2R2mrvwaLxaIPCJndntqJz98t3dEjL7H+4UAavAcv44WdpNjXF1Se
rl8ZhqlrmpF3mUS5At2utKtIN5GLc2dM4t5HhG0X9p+TqPvUhodHIKAg+r/bN82eNjBMVVnHYGlV
EzXz1msaaYSVJJx/KNh7VgLZHkVajzeE0KOd7CRZQKcsPLJKV+BkVcazPVvttNr2XHQU8TWynqhu
9/REQLRSpf+6fXXeN8OVQgVsx54eLK8nKn2ja7yjx0xkSe32A0SCf4D4ISdRJZbAgLiAFwmgAERr
89zY0wxTGLs5LB3MLJ9kQ3EsD/4NK0oNdB0rLb+biDV2pyLhAjptypLkcEh2bOmt1i4EMdulOjIf
qC/GocOoEso+M1EPPTvBo7KNfZhJJJTflDRdKClThdEFU1WNQZgjaPrSKRO2ygc1Jk1mIFLzIHIc
Sz38c70kyIbvADbYlPIuFSs+fYkBjp+xQev2KI3AM2f8pIxSCzA11TQTYE4YQ23HX6PAevy2TfIy
gydtcOjtGAfT+b80VDHvXNLsolx0cn7OzaxVUGbGzrDEA6n3MtbohlpC+hTHgBDBpFgda4+PQoU0
NZOK86JzUS/wjKQay88VsNOebHMLBPzCiySyw4Ao0/s96ic3SrendfW+1tO1wcDQejtxrKyMcVTE
d3hmxCYMJ1vy7Zfjh7ST15sZGQ6fiROwa+9DEpGCjbLjTOSYilFS2hZy3Tm1oiNPOnTPMe+0Cdh7
XP/JzKzmbcGiJTM5IbYkW0xxXP2fIXwbADYAbAB4HAC91coJsrn92XHdcTQuL8VO37cQ7YdaZNCe
e1hwjmJTZR2PQ5ujdkIBzLmLRFCXTBaiMl6UoFeKw1sHO/4jBWKVuaVAy9W8jMMroZW3S/ZmRi9m
6imtJhH2eScth14OWLhaXwjmTMlo7pECWC2ckBb2sD+/y8eBV5gLCOcmFhpzv7Es8P3RIgCSuemN
dyd7f4s7+loTSOLGvzBmptA90dylYCjio2TiwUHhakK3Gtl22KqiH7egBNKoe9m0k0HuehOeHNvO
Ldrd6GfM88YpHKcIQB8z4J8hFOjZFnaWmJzDtVXKarwVnF78wOCyGmA6soFC3q3eav88lpQOJH/D
gxQkEcUx1tRVefqUiDvF9trqsLdae15ZTCwxoiWUqZNqau8W1JGjwo3L9off8ZLXxLLmWJYpzUev
ZuZxJ0l+KaB67xXm+qS2NsPrueVYA8+ukheURZGXC65C0ZzcLedwZVzSvdE29eW1XeVYVPgKK9C3
3jw3Jj+hyTTJG9s6pMtJclZBCwFdPsFLRED+BJfos9oQ3qd/RKUXh2vKPQbLI0J9KCFmJmQEpA9P
d0zKcrPjXFQuhGzr5vWdKmaKIiNL+r32bu6Mg1XmHfSu71GltVsp5NWDWKHHYtd8WajYaC46CfXG
8p062ed+Gptme7kG+geB1Zfq839wdvgod4XzfW/SkFdp8voy7wyWEIheF9xBkJaJjUMOHCJ/59e8
HTkzS75upm/eZzTvM4q+5pWrBip0ns//WyFNB/xTo0aejN8LU7le/mmQKt32b2BQ/1e6Tkmhy33R
WFTvLtnq8o1eEOX3lgcwnSd2OjNHjuy0nBZgdCmst6sEhIO7LXI3cOuRv+ClpnidiSPLgL+C2wtc
V9JEtjiupuARG4ixc1cCX+Ib3sm96DveuUp6pH741N+4AVUnIBsr2FC5Y9fDUEvP+hOZUrGt/EFe
7pzFvn7grfc9G+Ff4ed/i0AmpsYH7B/IRqPphbmrhT8Dke1H5n61gk6Kf2GCi33pr19kRa/Qyxyi
8cnu/B/sY/aN1m9QSwMEFAACAAgAT4kuStxi0WuFBgAAMlAAAD4AHABzdG9yYWdlL2luZGV4ZWRk
Yi9wcmltYXJ5LWtleS11bmlxdWUtdG8tb2JqZWN0c3RvcmUtc3RkZXJyLnR4dFVUCQADBsx6WAbM
elh1eAsAAQT1AQAABBQAAADtXFlz4jgQfs8TP0GPUDVT5QOMyVtCjqVqd2CTzL4LJIg3RmZtk0z+
/bTxgQ9JNoxnhzCaqtQUptXqS91ftxJPbq4fqf9K/ctLb0PZzfUD/W9Lg3CM2YK6LiUXX5kDTyY3
1zc4xHMcUBEl+ow6F5M9P5LQjz3G6CJ0PDajjDhsNXa9gAK13teGZn9o65YxGA2M6k77lZeXCy6X
O99bj12HsjDavcxT60fyPPmYBThjs964NKRkuqE+jp49OWvq3zk+KNDVvg2Xy+WAYmz3Ta3X8upN
LHjtWou/89oJpyw2bvT13jhPXmrymCq38FRkEH9ZcTpny4vuGjushzihWGFYjsLqjl0y57ICkyw9
fz3mcmwk5l907fnvQHSNFy9g5cfQ84UyHqpTzDzPmSNCt5fQTef/gmMSAd58J8xT3znMCZ7hbB9l
ipa0JA6Z1W9Tr28Tz6DuArvuHHgdZh9pRgIFuJIXspA+GpgWL4c67NV7odk5vGIkx2Z3KkG34613
qFV+taaCZMLbuZKXMqKLsomqUncENFP/au75MtI1fp/TXdGZJBmwVG6MkVURbQmZdcrGSdk4Iy25
alRCZ8eI1FlFHOWeJGh2RUuy9hkz4tL0cxZ+Aejz9Ex9ijD86APbNkxTs22UVEY5gokVOh67xOtr
UYusNkhZdQuu6tu9n5B6fpFT7mAbSNwx+hSF4A6ZJtxjg3R6qNvvjywLMJlp9fLuzRPz7FR51O3l
QdLIHGk9Xqotct6L2Y5dhpatZXY5jNXM22wgejFDmQ8/Iea9oVC2R53U463vQ/xlO0kWpLgiW8Gy
VQXLGgTgpwicRMbNw4LdSg3+6cMRHtiw8vHvP6GgVxDKikICvA2AjwvlPWU4YUsPbJOe9TrMMi3t
3o5TB5Zu/UKD23ihyY482MwP/6F+EOUdEGJFpRC+kPt8ikMqWlvNf4Zp2ULXz+nKYbnlk6Irjs11
gngp75a2FoISPs2nEyCb5rvky0s/aZfTFrJYd3MfYJtxZDQQJBeV6M0Jn9FrbMdCwdANDe3LAton
u8jD1NY0axjVAihTfSPu6ho6Nta2ULmLn1ODlDT12NfNyseEfqGUUAJZ8zNaxBGYKeAEBR1M3YBM
RN84z0+vEmWKEifY4HDxfPua1d/cmTKHZWvHZyHXesCabgd1OK12mbJVRu1NBMrca4cDteIcPGIR
s67pgSr0EtRVpa3pnCsLBDmG50lMIoeg6WN66ic3SDdMvT8wjaFmacbAatYZ/qhFDmoQeZ4VNTvt
R0GlVZJFZoE4SyJZZobWZIeoT/CoqGBXwf4Rgp0zqHhzXFcwqfgNJ9RHTV5Fx0pOfJi4pzdYjDoC
7ewGix9qIFaySg71cuB/pMzjdrGgQXC1DKlfaC/Gydg+bR2OxtKhxG/8LqVAQtMxQF2yyAhLgcKV
BLa6IiQascDHV4pCqde9Yk0oXElstlHkkOrsNGkjZ7nvlVE4RhEc+vhq54/oKEBsC0cauYLA1VWa
1XgrOIPeocXNapTBky2tzbvN89/5adLYkfwNSyVIwoqjrN3X5OVTwu5HdG8NJP1fa0+riok57tIS
LlwAtzRXrAF5V7UbHzKYPC1zc1iF+IV+od/Chy1jkFVKxzTREAW7Xsxj7jsKtpsNQKcA6fma8QmB
SOgNdnah7SHv6BlDUdEbQdqrn+ZqOSwGCdKtJ01vD34Pr4kr9WM0mq5B5zuaCvAur2y5yUxRSB1I
yqOVyjN5vGRkkpudjESeZDJMJMglL/T99psThMGEFQcz8AXqfEIxHkscvB/MDGxraIh4Ehq1MQ9J
AfV3/8tY9ft2DSu68HxSL9TQEnPChDRlY5sDo1E+mR3mznxfLA78mQjl/vCcaMaJ3NytTdK0HTg0
atrBkZ/yG5HHzZg+5O9xqgmVmlCpCdXZYHv5WO3jIn+Fw1sZuSpUrFCxQsUKFStUrFCxwK9nftuz
oqHooueehnHWUgbhGETdXJ2YJr9VL6vums7/rum8RhaqLz3p+yH5Lx99tD55lVbqOpCx4pX0/UN5
QO3pxEGQo5Hnjj24EP9hVaGJrO1tR6ZhNzqQ94fq26yZLMCldrvJe55/s24wiL4Ntm4I4oT+dhFu
ge/Y9RhVXafqOtVdjLqLUXcx6i5G3cWouxiFMRXGVBjzeIyZ/xt3b1N8U5EZvbGlCLsqr6QDovj1
cc3edJN/Kd1Bb9TRTXtQfW9QInOn5S+Er0ypvvZPyOY7UEsDBBQAAgAIAE+JLkoqZSeGVwUAANkj
AAA0ABwAc3RvcmFnZS9pbmRleGVkZGIvcXVldWVkLWNvbW1hbmRzLXByaXZhdGUtc3RkZXJyLnR4
dFVUCQADBsx6WAbMelh1eAsAAQT1AQAABBQAAADtWktzozgQvueUn8DRrtpU8TLGvk3sSZVrd8fe
cWbvMnQSNlh4BYmTy/72kcBggR6AY2/2sKnKwai71er+vlZLsJjfroG8AplOQ5ShDUphlmAMQRYl
eAU4jPDjLE5SMG4MyzXHjjv2Lc8eTUb21Q8c/f0Ci/ntXNCcTgOplTuSbGdxBDij9q6bNk33anH0
J9kBnt9+BzpHms0QDiCOIRRnVUmyGZi9e4Jwiiq3trsYMgiXOyCIPbuPtkDuIkIVBubb+OHhYQQI
+a5jDgXtXbGUVl1Poktn3kbZEhfLY8PHcN0n5aILKU6Rj4g4KARDMuXVYIsiPDQkgRMM5jEbhBup
NF31Q0K2M6nS+o/foozJ36LgmcZonSVEOUMl3M/dMApXOh+6RMMYBCiON9TJoR7AdDLpLHXQOp5v
yiAZ4dfkGSqgfMEhZyaHzWCowoBsZgFOldBVM0Si19cKmSX5skmITnSL3jeQM3dxAG6Ds/bEUy5D
CGpuKBSW8kAJtMSzAzM1+U804cxZqNF9QjiMofxdJSal67l/AgIGov/WyPdtxzF93zhQnaefakGn
l8ZCv7Uo6gisNTWopcr1hydD9SNJ4SsY81IwIvPqH+HZYFgrspZtDgu43tEZE/JOEwQMQKV8Wf+l
2JRKakYlHrY4OHH83MFWSEIL6nsgd+x5boXcfqZWyW5HoYywUSX0FwMneyPTzdHm9eyFEArGaiaN
Qrm7FBpFVCo97b5UpIvfd/R7yFyUvwhEJ5ZVQlRR5uc1oDHBJd/KTKfk0NOUXYtEJMF1K+uXIIA0
pa7cGEERTIPOl7IoRmmtttBcMoOVqTBKdygLnr6+VgWEI5wzLrqaim6s7VItLm/JOAIZg2saG9ed
eB5trRxvKHR6mkC3Mm2Sx1nVGQol+Fxk883Lk42b42JkY4g6Uo2PrB3SnKt4x4LLsyjXNOmfNTI3
I98c6mm4bKifJysjz/I+MWI+CrTrTjNEsj8LOs6oE4+gbedrbQMBlIFKV2wdWG+qzN0GHiPMqS/q
qTi1TfgdtrQ0CKeA5mz/vR5PUaCXfGXqVp6P7nA/qAczlj46m1G2kTRf+yh7qoozX5lpc2Mcezvj
WDcZ1sA3TW/MGjraa7p2UZU7QkxyJK7/LnshYZf5sXskKIRvACGEnXYXy6ZFDfaS5yfsOlzPm/Ng
ufmLBqeoOzd0dzGuJUfupmS+sOPPUmKBQ3iTXRYcRwXN3Qs7PoXiaeaAiRU3/u8rnu/WohnC1gsM
Wcw/dgWjNt1y4BfkNQcpUbblFkRQUNQ+GVxRyBJiLNdlDVjMDct2LHfk2K4zHnuOfTDH26otjpr4
BnvObFV9dSpf36KUFSHR7xrU9iTKeN01Kyna0stdzXw0S71uaGRoU92pnB+Zwo2Mji014Wqbq/aO
JS4O7hegb17BuhG3Knayx10SWUi2Ee0g1YVihaiWXLyIqrx341Mu2otJbettEqNnJPuTocqglgaV
1CUIIODtM6BfbpdtuFduq59iQHimR0olpjm46Ky3MHDV0wsFS5/hPadLusDdduM2g8WNz3fW28po
zw/LVq1WgSAh54y5wn9aPw5TSVxpDuZsojZJ8hqxPhvFNC35w1/hvXMGz5WaYz1bnS9J3QLO18K2
FLYGXl0gVxqY1PTPWzpXkmrBHb8O13qdMNGj4n4QPnwST8CMEhDnYagImFOZ2OO8ym7MTklSz72u
Dby9stE/nB08+CyG9Os3+qT1zJ8D/B+N5qv/Gk73URwr3mUr3ziIn4s0rsaSXe2S1HLY29r6AUX4
2oUKFV+mdHvLzX/v0uttuuX4I08IzcHnvuv+CVBLAwQUAAIACABQiS5K2cxhz/UFAADeJQAALAAc
AHN0b3JhZ2UvaW5kZXhlZGRiL3F1ZXVlZC1jb21tYW5kcy1zdGRlcnIudHh0VVQJAAMHzHpYB8x6
WHV4CwABBPUBAAAEFAAAAO1azW+jRhSXeszJf8JoL2tLiYQxxji3BCeStW3tJtntGcM4ocGDO2A7
ufRv72MwMHiGARJ7E1VdabXy8L547/e+ZplOru8x3WJ6eRmuMZlc3+G/NziKbYe4OAiwd/ad+HAy
nVxPnNhZOBGuokQXqHM2LeR5e3o7JAS7sR+SOSaeTx7tIIwwUPcNbTQwRlbf1IfjoS5qKjgvL12p
lFsaruzAxyROtB/K1AzenqO8X3fl+KSHJEyFgcwy78C0Lm+ZNtJ7ClHOIqTxA3VI5DCBqWZvISVe
Y7oM6epKxvMbXoX0FcivHfcZfHYfh7RKPlBxR8n7rNYBjrE3Aw1OcvbgrzC99Sm4oqu9jJbL5RA7
jmUMtN5eE6+mJIxp7PYEJes0lrUqzFyF8DIUjrd4tvgLnM+ObkP6A9MoCcSTQx4x84zs9VZ+PCMp
OpLHBdoewgwzKRXHuLeCUwdAx4mf7rAbUi+zknj4JbPthsTUx9Gffvz0wwk2+Bt+lYlxPG8vgwNt
ewMEiEheWwnjA4U8kN71Vj/Dc5KHO+rHvA9ufeJHT5D41T7wfG+uyCoJh0+24TPOYXxFPI6Jgbqr
SvhQwciyQcELGPcCnP3OTYjA1IcnTDFy4G9/aFn6YKBZFtqnXAKyW1AD7srikMnIyoEsIeSUiqcS
i4Wjbo/P9vHA0nrKUrt/ZabsOJ4ZmaaRe6adqHm4XkO5cgjKo3iOSLhDsUpHndX2hlJoHbkmBcO+
Aew5Uq/kfMrWkYaLL6dn93/8CukiFNlHHM/oTQSMASRPJmFKliEoyBo9aKpgFxUhdgS/0NIPMPra
+YrAWM+PntV5ORFN5qtl0nkFRllA/6kDYb/PQFiVBpkluQ4gnPFjQ1LC0vkh66MSkpCUpdxvXBdH
EZhygdw0nmib9jLkR6XhBuCUCMxFgevWTuw+3WzziYNroIOR1itlfDLiVL0cG3+4HEbdDvjGMMam
Cc1+YPaEqUrh6NpkHzM/V01hwiR4rHy3tNPnO6fjZPmeIKrIdt6zugcxr0r9xLmlfEw4NfjTH42d
IRTg91YCZRbPDrQfJ6hDs29+oMMtx9VUTR58RuPSZMqPderlh2InxlW84uqjD0yrMvQL/OgTjn1a
DsVbp5sKvBxqUw4XKTJa1tTCTu4HqLETpyUdpkAl2sEkmVdUvpz2dQ0VGxwqil0SYWxpmjnSh7oB
e6qhp6W0YWAlm1X5d+YQoTV8Xz9Sx8O/Y+xhr1FL6OtQifBOcv75Zs+WjYtbUFgucCM+8HQ7qCMu
lwIlczO/G6QUbOWQbcDFU4FzvYEyeOV5AtMeoXPu+c9nfPOOXevC2oVZ5vN33Cvww50gumbVFegV
W69Iq75usQWGivongyvsq0ldmt1nFWk6QX190DeGA32kmZo+NBttp/Z7PYK6rhMECzC4p25AoNOW
RbaiitvHR0GJW6aCR2aJOC9wedeYkfRi7gSpwqpFsyTJC4vsuEkgU8o6UO+pmsA5JVUCOa2VF4gH
UQHd4Xg0Ms9RSnRwfJb3Y2hjUUhT5IMyBDbBSoK+dL6c2ekjaGALn4UCBeEOU/SMX9mOCP0GbWD+
zk8Ka1PW5DJom9zYsoZphxvoKZwhACfokQcHaImh/0CMKbtEit5gRfNsbRne9hmaw0qZmznVKbJS
SIKPyMesX9YlY2Vf/RABwpkaKTmZYns5hnR19Zi3sKKiukAi3bz4URxNSblXJhnWOUchO0TRYcGx
YC5X3zrdJQM5CKLsX5Uow7BqRLH6UG/UyKyWlN9VN3i3wVA/MSYqjNwQqIfuM/YgsiyZv4GlMGbz
72hoVi+x/pfGQvL3Bq7OETBVlNb5KdHVzNt8of6UeKzuCHXeewNkj9tV5pJCyi3K+1vTjwRzix53
Etz/dzDa9F7Aq76ibIvXT4SblgNPXUKfGEMNLPioWtBu6GwDuqPujP97Q/w2oYTTnR8EtvBJgpg4
kNnr7CaVv5llp8VlaH8wThsUtyULXyMBUfrlkBTcyq+ayqJXzusCs/PpPj4HeqyhqfxPOPFrpXbU
/wJQSwMEFAACAAgAUIkuSlUBH2SpBQAA+CIAAC0AHABzdG9yYWdlL2luZGV4ZWRkYi9yZWFkb25s
eS1wcml2YXRlLXN0ZGVyci50eHRVVAkAAwfMelgHzHpYdXgLAAEE9QEAAAQUAAAA1VrLc/I2EL/n
lD/BR5hpZvwAY7gl5kvLtP1MQ77ehS0SN0amsgnJpX97JcsPGT1sApm0mckBeV/a3d/uSvZifreC
+BXi2SwCOViDDPopQjDM4xQtIYpi9OQnaQaNG8MamRNnNPEs1x5Px/bVDxT/vYeL+d1c4JzNQqmU
e5xu/SSGKCfyro9lmqOrRWNPuoNofvcAiY4s9wEKYZLASNSqoqQaLi5vsAUxGhoSpmbDxU6jo60O
+J2aE3uoEQXWKc4fMUAZKAQyzdFaSryDeJPi7a2MhxByS9TG7S6BOYwCwgXo2mO8hfg+xmR7A/Nt
stlsxhAAb+SYQ4F7xwLZyesS3tUfv8U5NfQOhC+EaZWnWLUziZXbOA8QCxx93CTWY1qFk1FxjHys
xYeC5yQqtdE9EtiRDVEcLTWBkXDE6DV9gbVzb1HEMRWuHuhyJtUwFjFquYdmqCBEZtU/wtpg2Iq2
ZZtDFsN7ojHF72TvkOZYRV+FWBZDOaXmqcTCDgOnjlcYqPbcM0BRAueFsm6y8ncdp4zY9fgMMTQA
+bfGnmc7E9cdGSVark4TtUx3O4IngIw6oD8ZKD0YuU5Hl9X+HmNSiGpNGoaynJQczCs1n7YQsXDx
eNfjYy7Sf0qKTi2rSlFpDlaW1DoIYcB3gNkMl62gKp8SkhS1paz2YQizjJhyY4TMmQbRl1Evxlmr
75FYUoG1qCjOdiAPn7+91s2DA5wzYaW5hhvtVqrNFZ2MA5AxuCa+GY2mrktqvOMOhQapcXQn0qaF
n1UNVRgSLgU2z/x8sHE6Pg1sNKMaqPGetSMScxXuqHN5FBWcJvmzxuZ67JlDPQyDI/bLRGXsWu4X
eswDoXbfWQ5w/ieDo0+MeILaWaE12GIIcqjiFcda23G9j/d7RczX8ClGHP2iHcLf4ZaUBmH6OuY6
a5y4SJo4pufVaaIu0AFfmfqV58Yc7gexwKfhI9qM6rhD4nWI8+e6OPOVmQw3RjPXG03dpLkGPdN0
J/bYHpHT0MhmVblnikmm3vbvahYSusyP3RMGEfwOYQSjXt3FsklRgwfJ+ge6DjcRFzgI1n8R57C6
c0O6i3EtnhsEymJjzU+C6n0e4NsoEljLyC5Vz085knSa1XnikO3jvPOVWnTHeUWg1xxdRFr9UdIX
GBT1RJYCIKIBMYJVhavF3LBsxxqNHXvkTCauY5fieFmtzRER3+GBE0sKYTfLt7c4o8AW7W6l2gGT
cynHu6Iw1Zaz5ijnnxslYxCCJFmTXQz1TYbo9GXZpqiP/uUzs8UtU8GjpUVct466HgeIXYRcFL5V
zehCLV9bhDV9/GoyzTxSk+gxVVcwBZRe4HuRwNkC9QAeO2o90KYiy/F+j2GYYqU9BFAtgpaA5mEf
1CxPczaPEXXGKzvC2Ym+lOQV13/Lc92JWd+3y0bMppa36XxP5t0sxar2GKgpzkFYo7gLY20TJav6
0HOE2om0JtJjjXOHIrvTYwrO4Wx9NlM8IGOZBBGvINnD+xT/Ct/PzMg+iApOd2w/VGkS6WxcBfJs
Kr2dwfxnmD/AbJ/k3ExLyiKbg78UgayPL1AE32TX1c3TT5hPC7n9JtPaBNlyn0mFUXZNkiVVnxmS
kWqnR55E5fR+A2NBetKoKI/Z5fHqfyQOp8+K9Xa0U+IlNq2cD4Vs/YrJsHyZ0wrGIU4SX3iHc/0J
ev8X7606wCtlUsFYQ6wEIWOqwao9od3HKM6e+x7RpNb0ceJJeJNpaV/7Oa5nfvjaT4NhWfYIWJQA
QGr1tYKGDMDHby1FqGxiegisoPzfu0s88grX9SUXa3Qz5WBxu8khbl3c+WW2VpdyJ96ZKULJ8voX
ukFisfIyWvdmR/ya4XjfWZ7uKrP5u8litUlXy6EfdLQrh/DVByFiX2hIN6T9eqQtegve17BYX5TF
8kiPN3b762GfW5zop38BUEsDBBQAAgAIAFCJLkoFWRq0SgMAAKYPAAA4ABwAc3RvcmFnZS9pbmRl
eGVkZGIvcmVhZG9ubHktcHJvcGVydGllcy1wcml2YXRlLXN0ZGVyci50eHRVVAkAAwfMelgHzHpY
dXgLAAEE9QEAAAQUAAAAzVdLc9owEL7nlJ+gI55pZvzCCG4BypRDS6chvQt7ATVGcmUHmkt/e9c2
GBm/kkwyDTMcbO/z291Pq/l0fAdqD2o0Cngw44LH2y9MBCEXm5+gYi7FZMvEBpaKiZj5Cb4gN+T6
6l7w348wn46nLGErFsNECgHZ9y5TqT7+LdccOO6AWp7dp6551dsxLgxSMdxl7qpGg4u9fIBFBIql
Ed2KQIt/yXegesbV/Jy7jEBMxz8A7cTJhAkfwhCCOsv1khkkmr2gAsp3EAFGPgllDBfJD/t2O5x+
rZWZkrtJyEEkNYAOTbc9nsxE8PpIcv3OGJqL2mGqp1uyXWp8pDJrXkajKK9JEUXmd8YVivfMP4P1
et0HxqjrmUYLHLIlicxYi+42HQs4PReBxBjucgsKCMO/1afUdhyTUnKMOM1khm6kesIOgRCSwsYp
0XPtl7LopVrJlq81EVde9QwdrKFDTQM1O1POnL0NMgPPcwtkXmbqu4wirDYTpKjiJyLkgSRtPrqi
njwqhdNQeGpRQJG1VLujRo5KoZfVoBes6qk1kx0z/wFDusNWgHYenlblteL76SRXFOvQ/NvVAZaV
dUBTD54iKXyg4EKf2dFIHYdX7qJUMqgRkaJs5e7R9yGOMZQb4udgkn1+1hAel8gNa5kaLEwFPI5Y
4m8/7wsG04bfGZhGadxSfmlKLuMebYBI7xqxcd2h51HXcbwqpbUA3TlpwwznJgqsnAFvNWzUfP9h
03y827ClHXUeNR1ZO0gJv2HuUnD1Kco0TfxZfXPVp61HBTb/4kL9barS9yzvPyJGmd+ad5wwlTQt
pR17iwKWQNtCW95dbMejjbVbwYYLTX1eLsVr95SvsENqQD3dWtXbx9shGgh6oTPT8+j5HI72gBFM
0vKhN3LaY7FeB55sC3LWmdmyTXJeLsmZN9NeA2qa3iDdKHHZde2clZ/ZYjW7X/n5tAtVTpn7aKNY
AN8AAgiedbpYNpIaHGrev+LU0ZbubA4Wq18ITs47N3i6kGujkllFsvW0qu7UF7DKqDRglpNeNS59
HsWqMHORgBIsvF1JlZRNH3iYv64USsu6culC//kF6Sy0Y08ryK4ic5HndqFB+15jtzdcr1ozfAGY
/wBQSwMEFAACAAgAUIkuSgA4RnTLAwAA3BEAADAAHABzdG9yYWdlL2luZGV4ZWRkYi9yZWFkb25s
eS1wcm9wZXJ0aWVzLXN0ZGVyci50eHRVVAkAAwfMelgHzHpYdXgLAAEE9QEAAAQUAAAAzVhLb9tG
EL7rpJ+wt1BAA/AhUZRusRQDAtrKrZ3eV+RI2praVZe03Vz62zPL55JLUlGjIDHgA9cz88374c36
7hHkK8jlUpyBr+/+hH9eIElXlIcQxxCNPnGGL5v13ZqmdEcT6KMk78l4ZJ0o4xPSwRQKziFMmeCr
WCQQ3UtxWsUMeKoYieVM7bk3nQeO787suTsZEEV3QqZPkvKEZgIz5E1tSVRQrlqQSKejLGbuyIp2
nRBnkHshTx+6kAzyGueimS0N7OnoNzgJ+Rml3dHwmfHDYypkn405rU6oURQ81uRGQXCnwUT36k3y
A+kaKiNlhLZs0d9UvTyxE8h7JpHcsv+d7/f7GVAaTH17YvBm5m55rt8HHuVIBWyiyOvAPInSjLZj
u8Vu+IMUBwlJUqmWGJQRi1YSaArb3d8IkwWk1McgFqWclTidY0gh2vLc9QZpWFFccotnN0Jk2GYE
x7T02jrrJ0d3PFxTNssl46/iGSorMYYaU2azNfmmlOlXVgyAZsIGeI+URzGU33WCoJlPR5BAKP46
syBwPc8OAlJorCy5RxgsYXQWqAiXMsra6ErYbsqBv3ZobDxZE91ZCy+wJ4OxLUzOwG7jmbnvTyvP
XCfqQZzPGG3KSRXFXwgXbyQdwrik9epFSqzGCmmAoZgOBUfulYovr5KeuZKHS+/go8c/fmUpGAPg
AOlWfkyQMWbJsZSw4XuBAOWEQ6QedhOIZE/4RfYsBvJu/I6gshFLnodrem2qrOVfqOaIwdgV0P8u
JaHjZEnYVwalJhUGEm71SbNcymLklP2zg0TwppTHlzDELo+qvCdhHk+CeIkKJEsa0xrTSQmsRKHr
zjQNjx9fq/mp9R9vnvfmquLVVOwzLpuYWg0Ta4y+mU4Xvo9N3vPNQTzg6IvFvsj83De4jaXmVvUe
2N+/3jWM71bvKqPqatc960Zq5vSUvnJuox4Vp40/znxBZ9iAv7UTDFbxtoV+m6DOfMf/gQ4PaDg4
5NFnMv0rr+YVKnGAweWoscdni10fr7nLu54f9IZ+BwfGNfZNMxT/dzPqyZc22uBykWfGlT211lP7
QJhsG1YTps5K8sbSY9VR9XbquDap7xFSNzsVYQhs25+rIwTPtKmbt9KvDGzHmdH8Lh1ijIZP54Ok
EfwOEEH0VSPBcbETwVvH+8+3e145uLSrsX3kII81JmNzNzcoBweeeUxeTa2nhDg3StLx1IHf1rAg
M1OE8RQkp3F2uzRFv7E4Nk6acctHag9q4+N53yA60c87yC7vTXEmtjiCmd9bqT3/1Oi38AtQSwME
FAACAAgAUIkuSgrO0p83BgAAXCUAACUAHABzdG9yYWdlL2luZGV4ZWRkYi9yZWFkb25seS1zdGRl
cnIudHh0VVQJAAMHzHpYB8x6WHV4CwABBPUBAAAEFAAAAM1a3W+jOBB/71P+BGtfNpG6EgFCSN9a
0t5FOl1y2+69E3BargRyhrTdl/3bb2y+DDYGmvR2V6pWOPPlmfnNjA2r5c09Ji+YXF3FBxwtb77i
f484SR038nAYYv/iWxTAymp5s3RTd+smuI0SfUGji/HeDaIJkjB5cRRhLw3iyAnjBPt3JN47YYCj
lDKi8dTU5oY5t6eWPtPm+kQhyt3GJH0gbpS4TGCm2d9KiQ+Y7GKyv5bxrDp3f//XH0FKBd643nMQ
Pd6nMWmzYJinON1+Tu80XAR0vFcWM13UUfF0urghTTPPFC3dtFXR8gN/o4iBhCOIXuJnvIbIuZTs
OvI5podgj8l4Qv3HrdI4Rz4EqORidHcBATeOtbf5brebYde1TUsTeVk411EWD1CXRSoPW0LJKzc/
xEXYmkkgF7uKNiR+JDhJStMSgRJ85BDspni9/QfUsCwr7BGI40KOE+8PIU6xv46y2AikXknR5RZD
U8UwVsSCCePT2aMZIwiRBfqHsDae1Mya6tqkjpVOpw/Mgzvgi8l3CAGmjirsKCAqi7ucUvGrZOcd
G18YNtt4e0Se3MgP8ZIp6ybLn6sMBLsenjDByIW/6cy2dWNuWSbKvXcxTNQmPhzAv26EykS5RFH8
ilKVji6rnSMhkNSlJgVDXuRzjswrJZ+yPWTh4qt7W81/xOma3CbAGAbJUyFhFe1iUFCUcNDUwi4q
QmwJntAuCDH6PPqMwFg/SJ7V1XQpmvwh6FtMpwX6pDAoLCl1AOGab3hXVyTvfEUZkpDEUV3K/dHz
oFiCKV+Ql8UTgb6EBjJIai0M0okKLEWB6w5u6j3dvpR9ikO8MW8gnjbnts2xxs1hGI1H4BvTXFgW
1ErDmgizg8LRnWBfMD+3zQ9Cpz8X3m3t4/HO6fgwvNOMqtDOe1b3aVtrgT51bg2PlFODf9P5wp1B
AT61EihRvG5oP09QZ9bU+okOt11POUeAz0j6d4ZmB4x4xHwrVw+3bD5q4xUHXN2w7NbQb/FjEHHs
q3oo3juTtuRLU5tyuMgyY2BNrezkHkANGypph6myEr0G6VNZUflyCsMWquZ+VBU7GmFsa5o1p8M+
nENMPSulPQOb7bY2pdWfC4cIreHb4ZG4Pv4TYx/7vVrCVIdKhF8l6yeNt2cBp6HZdgnO4Y2LO501
zwrAMx6hkXiyESiZm6tHQPYRitm17wuseZ5t2n4/5cDlqQ47MlhI93HCUYcfmATRQpQ7XKo4Rou0
6msK4RTYVlNkKeD6NCBofV+gfLVEU92YmjNDn2uWps+sXud051SPoLHnhuEWDJ6oi7rs3KuojM75
s+B/OYafApUCn10I4XEsrKnjV5Ip+n9Jos7fslq0pO0z/n77FiRpsorquQs/oNElitkiSthqlbsz
G3qP+mT1lTYdEETY/ypRpml3iMJeTPxuo+ZWuyTAYl8xtjHTe+FyMyycPArbMdVa30+G0kaSuVxv
zw96A3HVt2f6mU21VkcHfphgk5i0Nbt1O8UpGK4Ud6G4bqJkVR16jlA57ZREajRz7ignSY89Z/0F
ch8BKxym0afRp4uMlI5e24A5C4XxKyYs/+ntBkxK6Agnx3KlAk/GSmHzQu9e2ajnxEeILAeUhTaz
LpsLaIchCyAKhMEteYcVH3VrWiF3PTyA/dCrSNiT8buWZ20eqQSnv+H0K06OYcrN5azW/XSkZxPJ
KvLxm+Twwf36AVMtk9tvni1NkC33mbkyyq75M6fqM3lmpMqZM/PqF8T3bx6T8zmANCNqLP8SRQTS
Xb9sLpyhiAwsZZZlXjYXBCs+vjA570m44eN9mejKwV6OyDON9AIsf8YwD3vZB2n9MP8ahKHD1tVX
Jqfr7SxKTStqpUn4sSNfsq2qXjE399zjNb4jZWqrV2riYeZymJGK7eONQcCRaalfcRqWrZ3y/rwN
jLI0EEAlyWSp1aMWGjgaND8HEHN+F9ADeIHJX+8Gr+EVbk6RXGfSzeSj0PUuxaR2XZo5hTWL0Tvu
BltCeRdEQfL0O90gWNx68a56CSZ+EzOYuuYlOP4eik3y98dstUruqUE/d6kXDPpms0mkma3bF3C1
yQLHvmipi96737eYra/yGtnQY8+s/nqyT2Yu/gNQSwMEFAACAAgAUIkuSnV0yZDDBgAApy8AADsA
HABzdG9yYWdlL2luZGV4ZWRkYi9yZXF1ZXN0LWNvbnRpbnVlLWFib3J0LXByaXZhdGUtc3RkZXJy
LnR4dFVUCQADCMx6WAjMelh1eAsAAQT1AQAABBQAAADlWktv4zYQvueUn6CjDTSAZMmy4ptjb1qj
6NpIsr3TEpOokUmXkpPNpb+91NOk+JJtJbtFA+RgamY4nMc3w5GWi5t7SF4hmU6jOLqNUZw+/wZQ
lMTo6U9I0hij+TNAT/CBAJSCMKML1pV1efENxX/v4XJxswAZ2IAUzjFCsHhuEpXz03/HsyeuNwkc
fzQOPPtisAUxGlqCYJO4CwlHjF7xC1ztIAG5RjMUMfo/xFtIBsOL5eHseAfR4uYOUjlpNgcohEkC
I5lkOWVhkg+UFwlGXkMUUUvME5zCljGvxyO9e0KplFuCt/MkhiiTOOja9vT6FCKi0zUp+Y06qIPE
IGrAShp5wfCcsGFWp9NdacOGq6C7jQm1xsD+Pnl8fBxDAALPt4ca9bFm00IYa/4wP6EgRHaif4S1
wZBTyxnZwzLWbumOmLxT58IEZrCmr0Px4LYH3ISBlFLzVKKhQcFrNygUVFvuOQcFuCg2M5NVvxtv
pVSvh2dIoAXovzMOgpE78X3Pqtx6cZyoNd7tqOMBshqH/mIh/GZluj1MWs/3hNBAbnbSMFCSR0y2
FUdplYav8MEg2shRtqC9AeELVemehgLUQ/JCpP+QEL12nDpEpTFYa9LsQQlXLKpOp6SCV7zd5ZSR
hAQjXsr9PgxhmlJVrqywNKb1WpYdK045XKK+zAU2oqI43YEsfP7y2oAPk3DuxB5y6ZZXANXhiurA
JJA1uKS28bxr3w881/XFIqYxtDHTrgs7q4qUAN99JVtgf3yyMXt8WLLlEXVINdayoyjHfkXe5cZl
s6jgtOmfM7Y340BbNWjwr1rs/Xhl7Dv+D7RYAELtudMMkEzVnxpaDgJBBnW9Ld92jFw/UPpuA59i
xLAveVec2mL8AbcUGigfK03c7ax2opcwce0gaMJEDdArFpm6wfNBHeYH1WCeu4/uZtUtKPXXW5w9
N+DMIjNtbqxDX2gdcDOPNRjYtj/Jm0Hap3qjEpU7hlhZjrg2kP9d90JClfm2eyIggl8hjGDUqbo4
Iwpq8E2yfkLVYfrlIg9Wm7+ocUrcuaLVxboUG1yB8qwW2Ch9hcrIUcWTWZ2wDiSjQq7NVVBRtJAe
Bsto7icirQJUaowUGBSwIPMkiHKHWKv7Oj2WC8sZuY43dkeeO5n47qgSx8riDkdFfIVvjNgGmHQs
X77HaZ6fot7MynT6RuKM5b3Ps02LShRG1irDHOklaxCCJNnQUwyNc4y5LNoUMDfvPzI5btkWbLZw
xE0FaGB1hcr7cL/pi7fbOOOh5S1OknmxrofM8/c1YkVbCy7bhYeGOCqPqhtBtM+su2/VaS5lUqW6
hliZlSVTk73aPCznbF0TUapNFyMelYGyXfgejbZo9jnzHFU+y6JHyEhJAki1vlTQrMhsg4khVR7j
PNXrVP75Gr+WVZhWRNIF5Yep7tezxwwSrsuaV9Fad1AnNziZxm/yZo0joXuCTUKTwYQxDWErUKSa
0K1mUZRfWunPV2hlWq9jvpRwmbvb55ETRQJT1U2vmef9MOYXVXpxSzFRsa44CkVWdXvJwAK11MJa
2JBxSCbKE18KGxDRlb35lcfx7xn+j+9Yeiv5nzVo7x8g1RILGABcCe5phmBoO2bGjbsOIX7gneDn
8uWhMZp9mFf1zRXVoN562XUo+HNNigqfGzqugkZoptqcPd836qpp6gaU1fVsAYfyaxLBF2pBsD6G
GjLNEJdRUZBuwJ31kVooUOgFvheoki5RhwlJ+WrrrqhkHY4lwSZWgvoxDDGJ2q9kKk/oz8sQKs5A
cbSSr81lXgqnJCOho4+6YN36NE91cz97T+zg2/Mdp4Al0yEPptXavfdx0LoNKgbP8g06M5aurmOq
8+kCq1yfThUPZNca9WhKYr5XkOzhLSa/w/fjAvL4EOsifnV8SrNbHHGjjeyz+2dTOOtf2Sgue/1H
rTwWj5tofqJV+7XGSl7Xq6xKYfYrzO5guk8y5mURRdXWeOST7FbrFWJEW3qamHtUtluDDJdaiYek
bT1VACrCCeTTL5EHUSYEkln9lB8vdxiZnePUQqfaHbQxLj/Mq0yVqtIGtJSSi12iNcFPhHrq0DDL
4mLJWk2RKl8IwceO/pXa6uGsdJPmJtv2SIfZ90zGoyqxalr13TPnkQ++ucKvLdp9MytH7p8IYp0u
sTKDd4iRY2b7sj1ao30n8E6fgfxHbr0zE3DUNMKtV46D571lmEkBWRjqK79XE797bstKM7zTfVd6
ghj2w41i9RBDjpt/h8y/qRM+m6ZE5SfOUhdpP7/mRW/B+wYW68sKs1v7BGO/+z7lt8wX/wJQSwME
FAACAAgAUIkuSnp154ngBgAAYS4AADMAHABzdG9yYWdlL2luZGV4ZWRkYi9yZXF1ZXN0LWNvbnRp
bnVlLWFib3J0LXN0ZGVyci50eHRVVAkAAwjMelgIzHpYdXgLAAEE9QEAAAQUAAAA3Vpbb9s2FH7v
k38C0ZfaQAvIsiwrfnOcZDMwzF6T7l2W6ESLTHqUnDQv++071JWSSEqKnaVrgaAwdW48l+8cUlpd
Xd5i9oTZfE4PmFxdfsV/H3EUL13i4TDE/odvJICV1dXllRu7WzfCKkr0BQ0+rN5Onp/RLykh2IsD
SjaY+AG5X4Y0wkA9tozZxJo5Y9ucXkzNpqaScz73pFJuGN0vwwCTmGuvyzQsvT2JCP/1lqT8rTYM
925ARkjiyBZRQ1GSaTkjWTAC8kQf8fqAmcsFLYh/x1wSuYnYu2CP2XCkMYFqGG8CBgmg5n1wiR/i
/HdhQgTG3z1ghpELf+Op45iTieE46JBGjgflBtRQ9gJRwSGOCxl5DpX+vqNF/KSUmqcSixtLwxEa
Gt9nu91uil33YuIYI+Bs3XKi7Dyemdm2VXimn6gNPRwgf12Ciih+RoQ+o1ino83q5ZExyMBCk4YB
SHaU7TOO1CsFXxKDob+VcqbhunS9RzDpFlIBf7j947cg5lTi6nx+j+M1u46AMQyih1zCiuwoKMhr
GjQp2JuKULIEv9AuCDH6NPiEwFg/iB41O/UD/6ppspB/Hi/gBqMsoP+0JeF4nCShqgxySwodQLgW
EXk+Zxk00/2BU/oSEkqqUm6PnoejCEz5grw0ngj0RTyQQVTBNEgnLrAQBa47uLH3cP1UAFe5G2cy
M0aViufdQ7W5pLMINYyGA/CNZV3YtmNNJvao0bA0jm4t9ovEz6oG14D+c9W7Y7x9vQs63qzeeUaV
1S561vQh5qrS586t1CPnNODfeHbhTgGAT0UCbRWva9rPE9SpPbbf0eGO6xm6Jg8+Y/GfaTUvwYh7
LLT6lmmHYTfGKt7mxGNObOf1Y4oiZbb4PiAC/Yp06Rx1Lu1wkWZGT0wtLRR+gJoldxrvMGVWoucg
figQVYTTsWmgchBEJdjxCGPHMOwZn/5gMLXMFEo7BjbdrbCQmClxSKM1fDvcM9fHv2PsY79TSxib
gET4WbL+482ePRuXMK4ntbDe/gWhSqHrCzQoNBg1/NygbFBk9hSGl5uuGGHZRgfpa5LmsSq7283x
8rRuNWhiVJpwU3QjWC2e0RyPmrQKgMhxssGggAZZJF2fBwStb/NiXV2hsTkZW9OJOTNsw5za+tay
URnR0yNo6LlhuAWDR3psBp1LWWQVALc8fxZUuGUqxMysEBe1XwDqmqRH3/OWCt3vg7haxs9BGC6T
dT1Ynq63tS7rVlQqq/GwJY/SrepuG+p71p3Q8pKSMqnKSk/cz1yhoqRiu3ijVynJtFSHG5htjFcP
N5rClKVBo7QkmSy1eqCgWbPFlrKWnN8FvGbzmvzxenfNK0L/lgwyfDPZuXaxizGrDEqpU5LhZnDS
VBBr4iaftyokOD/QtIFFQVhLFKkloGrh+/ywCD+fMIq1UafVniDgN+DAkWeO7zeYsoF4Izw/DyM/
IMKJJ6JMxbquUCiq6iYg4Kxfea5B8ihPPwLiSj2shQ0Zh+QWeGZLYQMTWDniVmDrDjC9ty9XWENG
jSjJZh3L0KO6Rtwpez9b7+7D+2MBpFpiAgMwmqkP0ec+s2fzw6JVcZ/T+//F3eXssngzx+vnH7Ag
V73qeuH1Tj1dgd+3/G6jZShKaBrzTp3zzLN93tjaGrayAZ4soOyQbSKqvbQhWJ9DBZnmglIw8dXS
9Qiy6WGFAkse8cv19yCKoxWpnvnhARp8Run8g6JktTzzTx17ZtbfOGTe1O9NINSWW06kfXn1NWu0
LPlfZ65lOS2isEeZ377xma2W5Pp+VzHOZGqeIbwlmm7eMtDd0lU8UqrBq83QnyKyZ78+2kiAUbiW
zs5ybRm1Vp8fNLdOxZ29l7CmV4DgKARa2MscfRx87Jei/dMpNZrfoW+DpD2hkD5jlsSCv6aGFouO
h0O50ufc6osv1lJNPOJP/POd5BS8pEfgE2J8YUztz/UFtMOgA+LJkkyJXmf0Kb24reLeKyt75FqX
PFr37zU1aOqTGW8TE00lnhyVtXwGyhI7wvEvOP6Ko2MYC6+vElQ7PX79nZvb5VECIHPEN0eSjqbD
mKZWNTcJpQoGYIUDXX6Z1+QhwETccJE/rV57d7gBPGUyTmzKwwGHiPTbwMxVkSpR3JpRcrErsmH0
nkGkysOFLC9WotcUJXvNGO37SkJprb460zBpDub1iHS4k1/IeFQ9XUb7H4JDpzOyzMYObu1zuy/T
UbvcHzvWz/OBpQKRF221ltM0DtVy6DjtPcNCimGNa33xewd6qERtPLlIB1HhNVfj82IgSj8FljpF
+5lyVfTefdniZH2VAUtNjzO1u+tJv/nVfgrX/By77qzMIwPtgx7y/wVQSwMEFAACAAgAUIkuSpe6
Mj5cBgAAl0QAAD4AHABzdG9yYWdlL2luZGV4ZWRkYi9yZXF1ZXN0LWV2ZW50LXByb3BhZ2F0aW9u
LXByaXZhdGUtc3RkZXJyLnR4dFVUCQADCMx6WAjMelh1eAsAAQT1AQAABBQAAADtXEtz4jgQvueU
n+AjVG2qbGyMw41AUsthB2qS2bvAIvHGyKzsJJPL/vZtP5Gth80jO5lZpSoH7O5Wq9+fMJ7Pbu4x
fcV0PPZRglYoxtOIELxOgogsMfED8jgNoxgbV4blmCPbGXmWOxheDwcX30jw9wuez25mHOd4vBZK
uaPRdhoGmCQg77Ip03Qu5ip9MhH+8Zrk/K069LYoIH2DE9oqqsdKGjhe/0IgIyCv0TNe7DBFqaAJ
8R8oIjHKxD4EW0x7fdYM0Q6T2c1XDHLiZIrIGoch9kWSxZSpZmeXJzdRpNjYXUBhJUaXdWpFTohI
l3+4a72+0TO/jzabzRAj5FkDs59v9A5WjOg7BBAOcYJL+tIO+9B4iKpQE1Iq7go0bFHw2vYyBeWW
e0LED/EsW6ydrPhcxVEMej08YYoNBP/W0PMG9sh1HWOXp9/FYaKW0W4HvkbEqBz6m0GiNyNRrdGm
9fSFUkiWaiUFA5BsIrotOHKrVHx5DPorIWfurhu0fgaV7iEUVNb0A3/G039IiF5bVhmiwhgsNanW
AMIFm4LjMS1yMdruUkpfQBKRupT7l/UaxzGocmWsc2MasF6cWjGIa7UPfJkKrET5QbxDyfrp9rUq
cEzC2SOzX0u3tFzINpeVEiaBjN4l2MZxrl3Xc2zb5SuewtCtmXad2VlW0bgWca5k88yPTzZmjQ9L
tjSi9qnGWnbgg89leZcal82ijNOEP2toroZeyqlKw0WD/TxeGbqW+wMt5qG1ct9xgmjyZ56OU1Di
ETM9s2WsoRglWMbLjzYD2/Wkvlvhx4Aw7PO6K/7AW0hx4GCv8lxHjzunjBNnCRPb9LwqTOQFesFW
pm7lea8O8wE0mKbug9WMcswFf70FyVNVnNnKDMONsZ89jX3dTGMNe6bpjtKBE2ZhZ5BX5Y4hlrcj
5kKmZiOOhF3m2+6RIh9/wdjHfqfuYg2gqOE3wfUjug4zk2d5sFj9BcbJ684VdBfjss/tjKPMNrb/
CFn9kizoxPc51sKzS9n9InSqGNvHZ017xzU7qLUgecjJAlG4j7rIMgJbFbLNWuvlRXN51WJSBXji
aSXVqCyuHIOkDolCAPmpQ4zFfZlX85lhDWzLGdoDxx6NXHtQiGNl1TYHIr7gN0YsVKp2ltvvQZwm
Nq93LdTeaJCwvPdpmirLGdSfpcwwB3rJ6K1RGK5gF311k4E1p6Jok9TH6fkjs8YtWoLNlhpx1Tqq
erwgOVg/a/qWNaMta9nawl1T+68iU8wjFYk6p6oKJkmlZ/yeBXA8Jx0SL4daX9OmIorxbrfxOqJS
fSChagQ1AfubXbJmeZix2RyRR7y0I5wc6EtBXDH9t8B1B0Z91y7riwL9lB4XbbdBUm/cb0EYTrPr
6oHkNEuernVrO27uodZQuZstpTo3lOoIsmkx1VlI2UmFTLJuqiCWNr6cqWqQylZ3F5Agfura64Ta
dDHiQU1OtEodPwF8Mk85z5W1TFH0cE1PkD5CrS8lNFBJVhFtSbRNkHbTsm58PlDWsApTwAQIJd1M
USMnmwTTGgKaFtFaopujwUei8JsYSNVIYE20CiEZ2mpMRdgIFKEmsBT0jfRACT6+YiNRej06Ex6S
xHee7L+nXgc3So86mJIp3KsygUUcgu92Rq4wgTGBKy+4tcQc/tVN5+2LF2zUKIUowWY9x1TXV4W4
U/Z+vrn6AN7PVarkErOERLVm2DhpO/oETT0ATFoX7nrE9wMB8Ofy5X5EmXyYV9VjDmhQLj3venT+
uc5TM5+3zD4ZDTfWNDkFjU2D+hZQ//8DzbeURvQ/hMwoHbpnMFtEdygIsV/I4ugCAhMqQWE2pPMo
ucPsfkqwZ1qWFoO6kD/qUegay/yIGkqJxc7JkkaPFKbwfb1gk4WToo6zjFzVYJuW6gCOJyIe2XGU
nFbeElOeD0DGQr07mO8QXCxaowGLLc/55b/3m7TFeknD9Slx6p6G0KuV1IBYo1QBSv11QKYGSxos
abCkwZIGSxosabCkwZIGSxosabCkwZIGSxosabCkwZIGSxos6cdF9eOi+nFR/bioflz053pc9Gfp
sp/34dVWwCf9lTL/aoSmrDiJdkLsx944TD77c71Mxj6SLDt9w0U9qbkXcgBR/vIMoaOUL/aoi96i
9xXOrs+LOtZYxxu63dfJ35JxhAH/BVBLAwQUAAIACABRiS5KwUpkhmUGAACjQwAANgAcAHN0b3Jh
Z2UvaW5kZXhlZGRiL3JlcXVlc3QtZXZlbnQtcHJvcGFnYXRpb24tc3RkZXJyLnR4dFVUCQADCcx6
WAnMelh1eAsAAQT1AQAABBQAAADtXElv4kgUvufET6hbg9SRvGEcbgQSDdJoYJr03AtcJJ6YMlN2
ks5lfvs823itxSaQ6XS3I7Uil99Wb63P7Xg+u14R9kzYeBzsCZ1dfyH/PJEwmmK6Ib5P3Iuv1IOV
+ex6hiO8xiGRUaJL1LuYv58890A/DSglm8gL6JJQ16P3Uz8ICVDrljYyrZGj28bwamjwmgrO8Xgj
lHLLgt3U9wiNYu11mZqlticR4b7dkpS/0Yb+Dnt0gASObBDVL0syLGcgCoZHn4NHstgThmNBE+re
MUxDnIi983aE9QcKEwIF463HIAHkvA+Yuj7JrnMTQjD+7oEwgjD804eOY5im5jhon0YuDsotqAnY
K0SF+CTKZWQ5VPj7LsjjJ6RU3BVYzC31B6ivfRttt9shwfjKdLQBcDZuOVF2Hs+MbNvKPXOcqGWw
30P+YoryKH5GNHhBkUpHk9XTJ8YgA3NNCgYg2QZsd+BIvZLzJTHou2shZxqua7x5BJNWkArkYvXn
714UU5VXx+N7Ei3YTQiMvhc+ZBLmdBuAgqymQZOEnVeEkiW4QlvPJ+hT7xMCY10vfFTs1PXcGW9y
Kf82cQFzjKKA/tuUhLqeJKGsDDJLch1AuCh35PGYHVpzsNvHlK6AJKBVKaunzYaEIZhyiTZpPBHo
C+NAemGlp0E6xQJzUeC6PY42DzfPeeMqduOYI21Qqfh4esg2l0yWUg2jfg98Y1lXtu1YpmkPuIGl
cHRjsV8lfpYNOK71n6veHe39672k493qPc6ootrLnjVciLms9GPnVuox5tTgRx9d4SE04FM7gbKK
FzXt5wnq0Nbt7+hwB2801ZAHn7Hor7Sap2DEPSmN+obTDiM4IjJe/sRjmLYjDf2a3Hu0xD6vhuKt
pxtJvtS1KQ8XaWYc2VMLO0sXoGYaOy2eMEVWohcvesg7armd6oaGioMgKppdHGHiaJo9ik9/cDC1
jLSVtgxsutvSQmKmwCHcaPi6v2fYJX8Q4hK31UjQDehE5EWw/vHOnkcOrtJxPamFxfpvCFXaui5h
QKHegPMzR5m4ubiEyn6CZjZxXY71kGdL2f3DRvIdF96qWG/ZWguzFjQtAFlZCPdRFZnVQ6NBplaZ
3rxoLsoNLlXgKp5W0pGyBssxSHqKKAWwGwcELVZZlc9nSDdM3RqaxkizNWNoq2fSUmbEkR5B/Q32
/TUYPFA3ddA5FUVW0hmn58+CCrdIRTkzK8R508g78YKmmPmspZLVZ1OFlOuYW1PHLydTzP+cRJ2/
ebeQpO0jeb355oVROKfV3IUbqPcZBckiCpPVIneHDsweNbL6Eg8dEMSS3ypRluU0iCKbgLnNRo1s
uSSoxbZiHHNotKrL5XHhLFehvKak/f3kUloKMrc02w9A78i6ajszXVEpnTKxgt3Oi6pj+MXz/Wmy
rj7snObJ061uHK71PVTGI3ezYRikjlI9a6x7TPV8JpuLQibZbFQTH2duaSwKxbbxxlHzUKSlCm0A
2WhvxiiK6SpKA24+CupAaHVPQgMtYR2whorZevHgzRrAxzu517xS6kQCGBNv5tDsJtuIsApMSp2S
QJveSZggUsRNjLYqJCR7nNHULHLCWqIILQFVMADiR0Vw+UxQpIx6cCaYIsnvW4+C2b/FUYcwSp9C
lHqfcK/KAhZxCP43ZmQLC5hQWHkijS2mfakfvX2xwlqPUogSbNaxNHV/VYg7Ze/nO4IfwfuxWpVc
YlKQgHTO/xCsYZJPGhUf8xTtR3F3cYqYvJvj1ScRsCBTPW/74Pk7TVdJ/17FzxgbjicJDXfyqHMK
Zk8H0c8C0X89GHvDWMD+RxCL49PzDA4JwS32fOIeZHF0HoWjJsV+ctrmcWuLQ/gpJZFYmXkMukf6
cs7B1lAWR1wzSix2TpcsuGdwnC66SrmkOCnqPEvIVZOy7qkWcHUi4pE9KRLKbzNJRIwt9noMGhXp
qIFR3bF+nteBJN1l0pSYGQ03esR1dhouzjWpYWiHDQXY8OeBdh1E6SBKB1E6iNJBlA6idBClgygd
ROkgSgdROojSQZQOonQQpYMoHUTpXnTsXnTsXnTsXnTsXnT8FV90/FEG8sd97bIRvlXuQrvfC7FZ
+Yb0b2357z3U/r4skVHkhm7G30eo1hv3OQcgSj+9IHS98rMQVdE7/Lomyfr80GJqepyh3V5P+o2F
d3fgf1BLAwQUAAIACABRiS5K/fQ8/0oGAADnLAAAOQAcAHN0b3JhZ2UvaW5kZXhlZGRiL3JlcXVl
c3QtcmVzdWx0LWNhY2hlLXByaXZhdGUtc3RkZXJyLnR4dFVUCQADCcx6WAnMelh1eAsAAQT1AQAA
BBQAAADtWk1z2zYQvefkn8CjNNPMUCJF0brZUtxqOi09sdM7RK5sNhSogpQdX/rbu/wGSACkLLl1
pslMDiJ3F4vd93YXMNer6ztgT8AWi3gPdHX9Gf46QJIuCfUhiiD48IWG+GS9ul6RlGxIAipJ46Nx
8WHd2AtK+WVMKfhpGNNboEFIH5ZRnABKT2xzbtlzd+JMZ5ezaXelRnOx8KVWbli8W0Yh0DRbvW3T
tPX+5CaC13tS6Pf6MNqRkI4NSSB7TI14S1PbHcuSEdKn+Ct4e2AkM3RFg3tGaEJys/fhDthozIfh
LGlWbynWOHITMlyJ88XPdt0xIvPl786z0dgYmd/m2+12BoS4k6k5LvB3gyvG7AUTDhGkUMlX8GxS
eR/X0JBKat5KPOxx8NJycwfVkXskNIhglS/WL1b+rvOeoF/3j8DAIPh/MnPdqTV3HNvYF3T5cJyp
23i/x1wTatQJ/cmg8bOR6tbo83p5YAzBXa+kUUCRbcx2pUYRlVqvwGCwkWoW6bom/ld06Q6hoItm
EAarrvybQPRyMqkgKsVg5Um9Bgp6PAUXC1ZyMd7tM8lAIhJT0crdwfchSdCVj4ZfBNPA9ZIsimEi
1CrMZWawNhWEyZ6k/uOnp7ogcYSz5uZYoFtWLlSby0sJRyBjdIGxse1Lx3Fty3K6FUoT6F6mXeZx
VlW0Tkk/F9lc8+3Jxq3xZmTLENVQjY/sNMCcq3iXBZdnUa5p4r/JzNzM3ExTR0OvpX6erMycifMf
RswlvnbfSUpY+kdBxyU68QBcz+wZQxiQFFS63VFkajmuMncbeAgpp74WU/Eb7JDiqME/7Wq9ejw5
ZZw4C0ws03VrmKgLtMdXpmHluXGH+4EeLLP04WpGNZZivp7D9LEuznxlxuHGaGZFo6mbGdbANU1n
ng2IOLva06IqD4RY0Y64B7mbLRxJu8yX/QMjAfwOEEAwqLtMpljU4Fny/BVdh5uhcx54mz8xOEXd
+YjdxbgYd3bWkcw31vxEVh9Sj10FQUe1zOyt6n0JnRpjDT4F723HHOCWRwvIqYAo3YdoskJgr0OW
KbTerukOr3pCqjnsdGUV1agqrh0FRR2SQYAEWUIM767i1XplTKbWxJ5ZU9uazx1rWprjbQmbQxO/
wzNnFitVv8qnb2GSEbvrtwC1ZxamvO5dRlNtOcP6c6sKzJFZMkY+iaIN7mKsbzK45lKGNkV9XJ4f
mYK2bAmeLYJw3TrqeuzR4nB9VvpWNaOPtXxt6TzT568W08wjtYieU3UFU1CpODx9ztqEDLXDXoMf
M+UKSBFBQDDQvBzCg9vjwsejXo1hZY0/Gbq3EqRwHbU8qR2J46F9M5BB95SuFe92YSq24ucwipb5
c/2IcVokT/e6t8G29yC0yM7LnuJbBEp3CdiOmO52o+qNUiVVf9QIK1tZoVS3PG3zuglpmDwO7V5S
b4YE8ai2JVtFPBHhgcg85UZV1QRl6Om0MQl9pF5fKGSwkmxi1kO0bZj1x6puvL9jVisqXAGTnDmy
zZQ18mqbAhPONMsSrdV55dXHiVSTN/nRSBDBNckmQjL01ZhasAUUqSe4FPaN7IoIfz6BkWqzHmtO
ONklzfLAkpipzjieIKHAeEH4X7LMYyqVFxhc2ZTuV0timYbkLyxzR0pioPjkAL1l5vg/oAzevnzB
Vp3SmJJs1rVNfY3VmDtl7+eblo/QfV/lSm0xJyURGmLr/uzV92L6IeCqd+GhF3ffS6ibKeLqzYKu
n0TQg2rp9dD76vd1iZnfNPSMJ7lMZ/Joa0p6zym1oelNfc1T7GKSp/occoLapNVCehpyHVPBt7gt
wfXk4vlioXhRD+pCG38i0QFuYvYrvAxii3d8aIadlj31PHHyedmT46GMVwLpz5B+huQQpdzt81d4
aU2A/9LJuvLLj2kaUszOgRYkGaVx4VV3k3iKQgdAEcBTuCRY7qNTxw35Cz1yRFk1KFtyemqtBWEF
u0KJkIRgpZhRpaP3qozBFjDtZ4H3EJKuXxvtYVRda8F2MlvXSsS9U8L+uAr7cRV25FXY/+d663sZ
Zt/vZVvv9ZbyO6nux5ltW0ka73XfM6rN8N8F5DYawEys7NNXkY+dL3VRqPiqVpoP7Re/oukdedlA
/nxdlqDWOu7MGb5O8fmsOk7/AFBLAwQUAAIACABRiS5KbQ4CMaQGAAAVLgAAMQAcAHN0b3JhZ2Uv
aW5kZXhlZGRiL3JlcXVlc3QtcmVzdWx0LWNhY2hlLXN0ZGVyci50eHRVVAkAAwnMelgJzHpYdXgL
AAEE9QEAAAQUAAAA7VpLb+M2EL7n5J9A7GVtYANIsiwrviXOpjVQ1Okm27ssjRM1suhSctJc+ts7
pKw3Sclx0mSBXSBYiJoXZ+abIcdaXF7cAHsENpvRLcSXF9/g7x0k6dyLfYgiCE6+xyGuLC4vLr3U
W3kJqCjJKRmcLN5OXrCnn9M4Bj8NaXwNcRDGd/OIJoDUpm1Mx/bUNR1rcjax2ppKztnMl0q5YnQz
j0KIU669KdOw9fYIEcHLLcn4O20YbrwwHhGJIztEDauSLNsdyYIRxo/0AZZbYB4XdB4Ht8yLE0+I
vQ03wIYjjQlUw3gVMkwANe+9FwcR5M+FCQkaf3sPDIiHf+bEda3x2HBdss0ix4NyhWooe8aoQARp
ISPPodLft7SIn5RS81ZicWtpOCJD45/per2egOedjV1jhJydWxbKXsczU8exC88cJuqabreYv15M
iih+ITF9IqlOR5fV8x1jmIGFJg0Dkqwp2+w5Mq8UfCIGw2Al5czCdeH5D2jSDaYCnNz88VuYcqrq
6mx2B+mSfU2QMQqT+1zCIl5TVJBjGjUp2NuKiFjCJ7IOIyCfB58JGhuEyYNmp0EYXLZNruSfzwHc
YpQF9N+uJDRNkYQqGOSWFDqQcFmtyLMZ25dmutlyykBCQuO6lJud70OSoCmnxM/iSVBfwgMZJrWa
hunEBRai0HVbL/Xvvz4WhavcjTueGqMa4nn3UG1OdJYKhslwgL6x7TPHce3x2Bm1GpbG0Z1gPxN+
VjW4Vul/Lby7xtvjvaLjzfDOM6pEe9WzVoAxV0GfO7eGR85p4D9zeuZNsAAfWwm0KF42tL9OUCeO
6byjw13PN3RNHn3G0j8zNM/RiDuotPqO0w4DLwUVb/vEY40dVxn6FdyFcYV9UQ/FS083inxpatMe
LrLMOLCmlnZWHlDNnDuNd5gyK8lTmN4XFbVaTk3LIOVBkJTFjkcYXMNwpvz0hwdT28pKac/AZrut
LAgzJQ5ptYbv2zvmBfA7QABBr5ZgWliJ4Emy/vHOngc2rspxXWBhufoLQ5WVrlNsUGQwavm5RSnc
XD4isndYzM6DoMW6z7Nr1fv9Roodl96qWW87Rg+zlnEGABUspPuoi8zx0GnQ2Kh177boVpQ7XKq5
V7VpFRUpL7AtBkVNkaWAF/CAkOVNjvLFJTGtsWlPxtbUcAxr4uh70rXKiAM9Qoa+F0UrNHikL+qo
cy6LrKIyzl8/C2rcMhXVzKwRF0WjqMTLOLszvypUcnx2IaSK49aaPn4Fmab/FyT6/C2qhfYW9I03
CExYJv4ffCFU+JskInnKlJ24tu12iAKfMj46eYBnnaSpo5aEuOkrxh1PrF4Yuj7M9VXEqPNfWYuP
TvtrSZZV+vD+UnYgBvr2t0CW9sd0F7rZhGm9ZT6FUTQX6/qDyXGePN7qzkbY3EOtlbVedhTuzFG6
uWDTY7pZSt7DpEyqPqYnPszcSguTiu3jjYN6l0xL/RqCtxDjxfcJTSeUpUGrl0lwILV6oKDBkrCi
rAMx65A3ybwAfLxTdsMrlUokuXLwzeyL3fk6BVa70mROEdeQwVHn91QTN/nNqEYC+eihq1gUhI1E
kVqCqrAB8LEOPj4CSbVRp5orBR+szHcsoUx1qVjWKBQ5fhXGaPqvPPIYSuXUoFL/pPvVgljGIfn1
ZOpIQQwxruygs8z0h/vB25crbNQpjSjJZl3b0NdYjbhj9v56R+YDeD9WuVJLFKDEm4l6aNXRlc87
BfwfU68fxd3lSeLt/KY/jaAFuepF30HxO3VYRf2+4TPBjiOKoGmdPpqckv5zTH0o+1NXA613Msmq
PoYVQm3QCiI9hCtdsxjs+uI5G/cgEAmysucZ+TT4dJKR8knoKhTOIhF9AiauuPzHRgw42W235UqJ
5IyV34wf+VcV4sgzpzs83FTuwmfGxPnSXCBrwIMQRoGJG3XyAiv6oHJ5eAj6XbGX6rPL0ZfspTzv
9r5OIP0F0m+Q7KK0MugWA4n3uI7ndvk0xkzbwdUuzsA4TGlmVXuTmD1oACgceAxma5K7YNsyQ/5C
nzl1WnVSNuj0EF7UiBWdM5QT9QGlY5j8F5DGQguUXVM8BoJDb+ZWQZXbmb/PDM0w6EVYuIJncu8l
NSMd7ChNI4/DX58qsnhpOvSrJQstGo4uJwslJD5oRfk54Ps54Ps54PvQn0P+cOPGzgFf9RsFuq3F
zhzzb2zreGh9EoxE2ee7UtdoPy2ui954zysQ64t9CWjocSdOfz3Zd7raz9fan1A3nbX3yED74gD5
/wFQSwMEFAACAAgAUYkuSqQUPuXHBAAAxiEAADgAHABzdG9yYWdlL2luZGV4ZWRkYi9zZXRfdmVy
c2lvbl9ibG9ja2VkLXByaXZhdGUtc3RkZXJyLnR4dFVUCQADCcx6WAnMelh1eAsAAQT1AQAABBQA
AADtWUtz4jgQvnOan+AjVM1U+Y3hFsymhsMuqU1m78IWQRUjMbKTbC7721e2bCPbkuwQmHCYVOUQ
p1/61P11S1otF/eQvkA6n8cgAxuQwpBgDKMMEXwHcYzwY5iQFBrfDMs1p447DSzf9maePfqB0c9n
uFoulh3N+TySWrmlZB8mCOKM2fvStmm6o5UunsJEfHokXL83hvEeIDwxOkZ7TY1FS7YbTEYSGwi/
kCe4PkAKckM3OH6gAKegMPuA9pCOJyIM5ADxcvE3ZHbSLAQ4gkkCY5lluWQe2dntqSEimoXdIso8
CbFEOYodI7JY/ut8G0+MsfnvdLvdehCAwLLNCV/oLfNI6BtLIJjADFbyFQ7H1HggdapJJTX/lUTY
E+DMCYoA1cjtAI4TuCyc9YuVf9d5lLK4HnaQQgOwX8sLAtuZ+r5rHHj5jd5n6o4cDmyvATbqDf1q
YPJqZDoffVGHz5SyYqk9aRSYyJbQfanBUan1eA7GG6km364FiJ5YSPcsFXRoxiheduUvkqIzy6pS
VJqDVSS1Dya4FktwPqdlLZL9IZeMJSIEN63cP0cRTFMWyjcj4mAazF+ao4jSBvexvcwN1qZilB5A
Fu3+eKkJTig4Z2pOGuWW04VqcQWVCAVkjL8wbFx35vuB6zh+l/E0QPdW2qzAWcVonRZxrmILzMsX
m+DjYsWWZ9Sx1ERk7ZjtuarucnDFKio0TfZjeebGC3JNXRmuW+rn2RXPt/xPRCwAkXbdaQZo9g8v
x5AF8QiFntkz1lAIMqjS7Y42tuMHyr3bwEeEBfVVcyv+hHtW4kxD/NrVOnnc+cg4cZY0ccwgqNNE
TdBrkZmG0fMxHOEPFkGYbx/zZlRjLtuvV5TtanIWmZkNN8Zx9jSOvJnnGgxM05/mAyebhV2bs/LA
FOPtSPhQhNnKI2mX+XF4pCCGf0EYw3hQd7FsRmrwVfL9hK7TCLncuHqHj9nR0HV9iW5E9nuUNSF7
RUkSFt/1UEXVRvd6di4S9Rrz3FRlbNReQ2Ow6fyzU0IyoHSHozZiuimtIlCpkoJvIo2wKCmJe9zT
fe504QwBxhhHIEk2LIqJnreZM6mXJlszsjY/cnpUEFgoy4jGamqhURsiRUVIZNb0ZkNoT/FsWaav
ccWV19cCWqgIpCThw3wx5aR9s80gbfBtWGZgxaWfNmArkuIWYZTuvudQsbUrp5F3TOi/bM4WT+lD
FyIv6VaJakxJbo0C19TTi8bcR6r85H5yXdV2odNSw8cnzP4m1CKNSYa2b8e8S9fbdp4JOWZa/HQu
q+GcfRqqNU0dvcllJGObmNee6X41yqmWQa4UOXU2bRKgeH1qubbbvOBzN6aexFQY9Av1k4ECuw4P
eP5IRQDDPNdpwXelunxt3TuveSlKYxLjmfLZWgHZfX4yaDG8/ESzSEj0xM8z72xewnjYeUWwLMtT
x6d9jWia3oO3DSy+r8qJuO2HvywM88Mh1r9E/H4ZucDLyDkz3/KDkxvrNd5iXKA9Wc6VXE1Zs5l9
+mHnxCut808xQy/Jfl8v/errpas7W57cRNOMHJq148x4D9U2WqdsIMNbppOPMrqzZvcFub3TZazd
FECYnZAxSIpLgu7Nm/zu4Mow0I0N78PsHAj/D1BLAwQUAAIACABRiS5KO7iR204FAACTJAAAMAAc
AHN0b3JhZ2UvaW5kZXhlZGRiL3NldF92ZXJzaW9uX2Jsb2NrZWQtc3RkZXJyLnR4dFVUCQADCcx6
WAnMelh1eAsAAQT1AQAABBQAAADtWktv2zgQvvuUn6BbbaAF9LIs+5Y4DWpgd51dp3unJdoRIpNe
Skk2l/3tHepJSSRtOfEmKFqgB8nz4jy+maGyuL5aYfaE2WxG95hcX/2F/3nESTpHJMBxjMPBdxLB
m8X11TVK0RolWEVpfDEuBotaXljQzykhOEgjSuYxTTI6yzUnjjvxLc8eT8d2V0fNM5sFLf4bRnfz
OMIk5Rrb0kx3MNyhiIwMieEHRA1FSbbrjzSi0Jqy9I4hkqBMYPv0Cm8Ow7VU3B6zDWW7S5nUfhH4
He8oewHqKxQ8RGS7Sik73d5TdIuKBY2FDcMRV9t4DwJDYFiCExB/cxftMLuJGEgdmv9ONpvNGCPk
u57Z5c1kLkl+jEsS5gYV1iWcvM6lO1qetu0NudgFuWV0y3CSVKYlHcqA7vYxTnF40HwnN19pQ8fX
XYv6JqSaPIzC2345F5En+oCrU4KvBabszENdwVANY+YsDe89ImGMy+c6GGDq3T1m2EDw3xr7vu04
pu8bRUJxb9+AGshJODDmUSpllOkvSw45peZXicWdV8ORmAxTxzdH2vgUR86UvY1nJp7nVp7pJ+qW
7veQzYgYVRQ/G4Q+G6lOxyGr54+MAfRWmjQMBTwWHLlXKr480xXAmodLhKTB6s/fohR3EHKL0yX7
mgBjHCX3pYQF2VBQUDYz0KRg7yoyslfwZGyiGBufLj4ZYGwYJQ/6urzumizkX8A7V4dRFtD/DiWh
ZWVJqCqD0pJKBxAuRfCfzVjRBUoMlJBQ0pSyegwCQFQw5YsR5PE0QF/CAxkljWYO6cQFVqLAdXuU
Bvdfn6qOLeCrM8nxtap43qhUh8uamFDDxvACfOO6U88DoHa8Uac3ahx9sNinmZ9VvbQz87xVvfvm
+etd0HG2eucZVVe76Fk7hJirSp87t1GPnNOEf9ZkisYAwK9FAm0VL1va3yaoY8/y3tHhPgpMXZMH
n7H077ya52DEFmsHnMaYzzBKsYq3O+rbjucrQ7/G24gI7AtyTAdoc71qElKj6lKEk+MwtdYtPIB5
c+403mHqrDSeo/S+QlQRTi3bNOoNyKjBjkcY+6bpTfjaAxuZa+dQemRg8x7SmFabz+UM1WkN3/db
hkL8B8YhDo9qCZYNSISfJe8/3uzZs3G92U4EK8kuSpsBfI7ieJ691weu9zrzxlaXq5yqfoL2GRqz
UedH/U5VOEp3YdD2mG7WLEFUyqTAnEBP3M/ceqmT23CMN4xhgOJ4DUaO9IANyqRamjANKG2eAUPn
sjRonKYiGrRdpCgDCc2SdZbjbsVsIL2XpITrj4dCLa8ISCSBZH6YYkK/3KSYNSA/d0oG0xfvOpgr
kuImIjCvfeOugrMrx5Aek/3/Np+LFwzHHkRe0q0S1YiSXJ/6rqmHF42411T5yU3kY1Xbmbasho53
GPpNrPU0oWm0eanzLllu2nkm5BhsX56qhjn6NFgrmKq1yWkkk6OY12PT/WwUgzW4XEly6njcBEDx
O4Ll2u6ombdrUw9iKh8cJjoMBgrfdXBg7A1UAHCc5iot8qiUnwtaH2CWeSlKbRLtmcB4r3bZii8n
LYSXL1VXMQ0e8pWqZ/MSZkJuecM+y7LGavs6objNKznzQFP0Dr2scfZ+UYzBbT2me7ye3MX6T3Ki
Lad/mBOlHPw895N9Ijxz5luef3Jj/Ygfcc7Qnizng9xJWdOpbZ56J3VqsPrcZZ1lv/h1y/XrlqtH
I1Uufd0/Pmi7O0npvnRy44eIwKpKUJxt6917L/kS38+QftRiSmU2CyDhTPNhQTtROEWnPH42cPjM
dsJs8I6myoP7A1BLAwQUAAIACABRiS5KWzoI8rkEAAAmKgAATgAcAHN0b3JhZ2UvaW5kZXhlZGRi
L3NldHZlcnNpb24tYmxvY2tlZC1ieS12ZXJzaW9uY2hhbmdlLWNsb3NlLXByaXZhdGUtc3RkZXJy
LnR4dFVUCQADCsx6WArMelh1eAsAAQT1AQAABBQAAADtWktv2zgQvueUn6CjBbQA9bScWyI3qIHt
OrtJe6cl2hYqU15KSbaX/e1LPU2JD1uO3LiFA+Rgel4cznz8hslseveIyAsiNzfJFuHp3d/on2eU
Zj7EAYpjFF59xRFdmU3vpjCDC5gimaT2Ubu+mp25vdEGRljXBEpBgjEKsijBfpykKLwnycaPI4Sz
XFEbGTYYW/bYM1zTAWNTV5iCi4RkTwTiFBYGuzsJK0m/45LKsV4mjsnvbqezN+SONWAPtHvT9uju
w4XQ0BaRZUI2t6IUPP71R5Tl4ncw+B7h1WOWEEW6mKXcLg6pypzah/nKU7RB5D4iNGsj8O94uVw6
CELPdoHO6RYO5rhM/y0Oy5Ko6iPNxXdZfUrqU+qGJTY7ww8kWRGUpk1oKScZJJttjDIU7g3fKsOX
xsBlnI+ob2HKxcMofFAcp0Ajwi/Jd9TskuaaUSr2PFI1TqJQLJLF5ibIC5UzIorqP25tpLfSbphA
L2vunnpMyA+6d5QfWC1fl6SoTsSSim8FEe4JcGJ5RYDyzK0hDmM0LZztF6s+7yqWxvW0RgRpkP4a
jueZ1th1ba3quqt+ph6S7ZYWNsRac6AfNJy8apnKx76o/WdCKB41nhQKFQhVGmVWGr2y6CXwVR4X
i0/q/pjy8icp0Ylh1CUqrME6ksYHFZyz1+DNDanuwxqLBCIJblt5fA4Cimw0lI9aUCZTo/7SPItR
2rpe6FnmBhtTYZRuYRasP700dwjTcNa4xLmm3fIrW7a54jpnGkgbXdPc2PbEdSlgWq7OsQRFovd2
2qTIs4xVcLfwUM3mgdM3G+PjZM2WV9Su1djMmiGQ04Y8uWwXFZqA/hgOWDge0NVtOO+oD3Mqjmu4
75gxDwbKfacZJNm3sh19GsQKKZlCizkSBDMk0+XZo2m5nvTsFmgVYUZ91j6KL2hDW5xjfV2td6ET
g5SJBTyvKRM5QM9ZZDoMnnfhMB9oBH5+fNSbVk8S9Lxeo2zdgDOLzJTcaDt6r+1wM6815AHgjnNO
T8cN2yxR+cASE7D09ueaC3G3zNftisAQ/YlQiMKDbhfDpKCGXgXrR9w6gw0WlNdvoqydstcojv1i
XZ2q3jPBwFHX85CsYoPuHlrEhvtSPZhUiVLNn92MqVhaDaBCJQneBAphVlIQ90g/aEgSh3NIYrRR
AON4QaPQ1bhNnQm9tNGagjU4Gk7lAOaLKqK1m0boqpsiSUcIZOaEGzb55lnSSp/jGivP7wroZIUB
JQEe5pupmPbtMkOkhbd+VYE1lr4bwR7OEtP1+XzUql3DMBxTWoNcRzyUKS/erNqmN/DHAhXrswro
un6Afbif8lFM0Rv3EY7S9ee8Ymg8UlLWY1D5aePGmcekPvTjn0xZK3sfTn+zx9s33A29a/7Nr7nn
Be4nGs5bPt5h1AToTEZNY+LZ4NhR89i6PnREvQx3P3u4Oztmdxk1L6PmZdS8jJqXUbMLdYNNRv2o
5b4iVpgSEO2CfKgaUGHuLX1wYcdnz46HR7kjSCPHtpo/0Q5HKT27D6X81Rma9BmL/1ezE0uzzDzZ
tqcia1I+iynfzqxJnzet49/OLM9xj3k7a4Fctcfr/nmSmvntEzjYBnuG+j9QSwMEFAACAAgAUYku
SjVsOFOEBAAAySoAAEYAHABzdG9yYWdlL2luZGV4ZWRkYi9zZXR2ZXJzaW9uLWJsb2NrZWQtYnkt
dmVyc2lvbmNoYW5nZS1jbG9zZS1zdGRlcnIudHh0VVQJAAMKzHpYCsx6WHV4CwABBPUBAAAEFAAA
AO1aS3PiOBC+55SfoNtA1U6VXxjDLYFJLVVbS3aT2buwG1DFyKzsJDuX/e3bssHY2JKBkA0z41Tl
gFA/1I9PXyuZjG8fQLyAGA6jNfDx7Z/w9zPEyYhyH8IQgquvnOHKZHw7pgmd0RhUO8lncn01+X70
BZv9o4hz8BMW8XvgAeOLURjFgLtNx+jbTt8zXas36FlVSzvJ4dCv1XInotUoZMATaX1fp+Ho/UlV
BKd7ksk3+tBZUca7pCaQDao6RU2W43XrksH4S/QE0zUIKhXd8OBRUB7TVO0jW4HodNs0/xxpVrsQ
aQTvmMACUMsuKQ9C2H7OXYjR+cclCCAUf82e51m2bXgeWWeZk0m5QzOR+IZZgRCSXMe2hnbxfozy
/NXu1Hxb43FlqdMlHeOf/nw+7wGlA9szuijZeOTU2Hki03ddJ4/Mcaruo/Ua65dykmfxF8KjV5Lo
bDR5PXoWAiswt6QRwC3zSKw2EllUcrk0B51gViuZpeuW+k/o0gOWAlw9/PEbS+Su4upwuIBkKr7E
KBiyeLnVMOHzCA1sexotKcSrhki6hJ/InIVAPl1/IuhswOInzUkDFoyrLhfqz5cNXBGsS+i/TUVo
mmkRqtpg60luAzdOi4g8HIoNNEertdwZ1GyJeFnLw7PvQxyjK5+Jn+WToL1YJpLFJUzDcpIKc1UY
ujVN/OWXlxy4dqfx7L7RLXW8vD1Uh0tvlkIPk841xsZxBq7rObbtVi8sTaAbm32Qxll1wVWg/1z9
7hnv3+8FG+/W77Kidt1ejKwVYM5VrS+DW+pHKWngj9kf0B4C8FuRQNvF0z3r50lqzzXdDwy4R31D
d8ljzETyV9bNI3RiAYWrvoHtCKAJqGSrjMeyXU+Z+hksGC+IT8qpOJXdKOpl35qWXGSVcSSm7vws
fEAzIxk0ecPsqpK8smSZI2oRTk3LIDsiSHZgJzMMnmG4fcn+kJg6VgalByY2O21hIXWzJiCVq+Hr
eiFoAL8DBBAcdCWYFiIRvNasXx73PPLiKgVwoya3t/O1JOu4NbJ+tFqxpJzAVxaGo3Rdnzh/W3aN
lu138XrKs05R9Y+/f4YSN6p8WUloXaB0c9N+xHRccwuitUIK7PD1m49zF8HlXufDIdEgHZ+G4Qyd
7OoBG43VWinDNKK08ZZHAwWGjurKoHSafNPVfogUbVCzZypuZpFo6Jg5lveUb+H68lBoLyoFJKqB
ZHmYDUO/mScgSpCfBSWF6esPJebn01Ro9cpjkWmaPUtZg9pHp7LqFf02g3R9skG3fTvZA9JhdrIX
HE1v3DGOtPVXWTHoj5KNHTHg/G9jyoX71L40XuSD8sE1vwWukznLZYH7Ow31JRsfMGMacCEzpjnw
nNPJy4mzaTtjtjNmO2O2M2Y7Y7YzZjtjHotvZxuJjuOUTUWsUVXDsCXr0DagRt1b+qClxRdPi8+P
cicwxQrFyv+mez4e6TnH8MgfipbFSbTW0XvF/0/tcelUR2GWsQfZY5b2xcseHPMSdfqLl+313FNe
vH74A35Qvs9zMLWj56jv/wBQSwMEFAACAAgAUYkuSpfTOnSmBAAAxScAADsAHABzdG9yYWdlL2lu
ZGV4ZWRkYi9zZXR2ZXJzaW9uLW5vdC1ibG9ja2VkLXByaXZhdGUtc3RkZXJyLnR4dFVUCQADCsx6
WArMelh1eAsAAQT1AQAABBQAAADtWjtz4zYQ7l3dT2ApzdzN8C1KnU3FExWJPLEvPUSuLM6RIAPS
dtzktwd8gyQAynrYKuQZF4L2hX182F17tbx7BPIKZLGIE8DLu7/gnxdIMxdhD8IQ/JufOKAnq+Xd
EmVog1IQUSo/lG83q1aeX9G7McbgZUGMHwD7AX52wzgFSq2Z6swwZ45m69bc0oeaWs7FwuNKuSdx
5IYB4CzX3pepmnJ7ChH+4ZaU/KM2TCIU4KnCceSIqAkrSTedKS8YAX6Nf8E6AYJyQbfYfyIIp6gQ
+xREQCbTa1guPiynrr6LlCd2eSxx1H1AqCbGFi+PykAIz5b/BmeTqTJR/51tt1sLEHI0XZ2WF72n
GmPyThMSQsigpq/90KbaU9ykLpdS8i3HwhED54ZTGCj23A5hP4RloWycrPrc5GVK7XraAQEF0V/N
chzdmNm2qSRlOd98TNRDnCQ01ggrTUC/Kzh+UzKZjjGr3RdCaPE1miQMlGQbk6jiKL3S8JU56G+4
nGW47pD3i5r0SFNB5k0/8JdD+rOk6FzT6hTl5mBtSaODEq7ZElwsSFWLcZTklD6HJMZdKY8vngdp
Sk35oXilMxWqL829GKQdLKWxzAU2ovwgTVDm7X57bQCTKThjpk475ZbDhehyBZQwBaRMvlHfmObc
th3TMOwhgkocPVpp88LPIkQbPDmnKjZHPX+xMTrOVmx5RrWlxnpW92nMRXWXO5etooJTpT+apW4s
J+eUleG6x36aqFi2Zn+hxxzkSe+dZohkf5fl6FIjnoF5M0faJAIoAxHvsFXSDds5uL8RxXwDzwFm
6FfdEP4BEYUGysGeDrmOaidOkiaG6jhNmogBes0i037w3JrDfKAWuHn4qDalbptpvN6CbNeAM4vM
tLlR2l5WaXEzzzVwVNWe5Q0s7a1NvUTlPVOsfI6Yg8LMXh5xX5mfyTNBPvwJ4IO/1+ui6RTU4I1z
fsCr0zG5ClwT4TY7OrymzeH14igKsq7L3oIwdItzuau8OtCjmo2zWL3GZW6KMtbr36HT2Ay+HJQQ
z1GyYavvMVmXVgMol0mAG56EmKXk2D0ZeX0eZObs4xhl4qEw3FArpnLcpsq4WrpoTcFaPWYaFQCY
y8uIzm0aopu+iwQVwaFZk9tNTEaKZ0szfY1rrLy8J6DnFQaUOHiYX6bqtG+3GZAO3rpVBtZY+mUN
tiAp7gMcpLvfc1fRuwu7kQ906J/WZ7NT+r4X4Zd0r0QlojhbKMdU5fAiEXdMlR/8nlxWtZ1pWuro
+ILeXwWpp3GcBdv3Nu/S9bafZ0yOqVo5nfNqOEefDmsDU602Pg2nbWPz2lLN70rV1VKXC0kO7U27
AMiuYzVTN7sLPnPT5/YGe25Ns3RViHTSfXlXdITeN1Ccr6oeq6fHnOn76ymXz1IEFgXwuuz/1GV/
VZNlSdSb757cdYmD3GLqDG1HzNun+POQMK3OCf5ngFHNuJAVijaf6+pnr1BO/9ruu5S5rkE+ew1y
cTPQdSlzXcpclzLXpcx1KdOHuqNXKcIlzvBfMz5M3fFSmsVJfUn2OSxOmebGyHv1sfnKqMaAc89X
hmPZp5qvvtJPH7zx/1BLAwQUAAIACABRiS5KD1jYk80EAAC/JwAAMwAcAHN0b3JhZ2UvaW5kZXhl
ZGRiL3NldHZlcnNpb24tbm90LWJsb2NrZWQtc3RkZXJyLnR4dFVUCQADCsx6WArMelh1eAsAAQT1
AQAABBQAAADtWktv6jgU3rPqT/DugnSvlBchsGvprQZpNOlMe2dvEgesBodx0na6md8+dkKCk9gO
cElbzYDEIua8fB6fj09Y3N48IPqC6GwW4vAOE5yuf4EkjDFZ/YloihMyX0OyQo8UkhQGGVsA38DV
4AfBfz2jxe3NLczgEqZonhCC8t+7RHF+9jUdY2I7E890rbHnGIPhBmIyAi3BXeIGEg5MXpIn5G8R
hdyiaxIK9j/iDaLD0WCx33uyReT25g/E5KTZHJIAxTEKZZLllLlLepQXtpx8j0jIPDGPkxQ1nDkd
W/rwBFIpdzTZzGOMSCYJ0NRw9PbkIsLTLSn4O21QJ0mHqKEoyXK80WdKG0HLbLYtYlJZkeu9w5SR
D42/J1EUjRGEnuMaI407Es0mcmEa3jUvM1Q+V4akzNzHNaIIQPY1x55n2bbheWBnMd/JHVOT0DeW
IShGWSWj3Og+9o9JlUtSSs2vEotbS8OR6Kyp7Rkjxtm55VzZeTwzcV2n8sxxou6T7ZZFGxJQRfEr
IMkryHQ6uqyeP1PKqqHSpGFgJFFCNzuOwisVXx6DYbiUQ3VOewODJ2bSA0sFNHj4/VeccSpxdTZb
ocyn31PGGDNkLyUsSJQwBSW+ME0K9rYikC+xJxDhGIEvV18AMzbE6ZP+aLltmyzkX8DBpMUoC+g/
XUlomnkSqsqgtKTSwQh9ETZmM7rDj2Sz5ZShhCQhdSkPz0GA0pSZ8g0ERTzBS3F8ApzW8JWlExdY
iWKu28IsWH9/qUBUwB97YoxqFc8hTrW5HP6EGgbDK+Ybx5m6rufYtttGVY2jO4t9mvtZhcKtY+hc
9e4Z/de7oKO3eucZta920bNWyM8cRelz59bqkXMa7GNOpnDMAPhnkUBbxX5D+3mCOnZN9wMd7sFA
e8gzn9FM1aZ3dF4UwQzpWvx692XZrqcM/RKtMBHYF+SQE6DJpTrcD+3KFKjqi3ByGKbudQsPzLw5
dxo/YfZZCV5xtq4QVYRT0zLAvikFe7DjEUaeYbgT3omyJtmxCig9MLCSnrH+XPZQraPhx3ZFYYh+
QyhE4UFHgmkxJEKvkvXP13seeXCd3HQ3eYNks8FZPYCvOI7n+bo+cEGZdp2a7V6s9klRKar6CZp7
qPVGrR9bAZU5SneHa3pM12uWICplUmBOoCc+zlwGLvc6Gw7xBhgGMI6XzMhR50xFqqUO0wyljR4w
dC5Lg9puKqJB00WKMpDQ+PR6mdCOiolYevukhOvPh0INrwhIJIFkvpldh34dZYjWIL9wSg7TVx/a
mCuS4rBp4TGd/bv154v/99jzPzJv6umWVdPxAU2/gbSeJkmGo7d93qV+1MwzIcfY7ctV1TBHnxpr
BVN7bXIaSeco5vXYcL6CXWPNXK4kObU9rgOgONo1HcsZ1fN22eQOWjNz0xxbhhLptLP3uugNfFui
fH2xa6waepyJdbieYpCtRWBVAC8vDt71xcGuJouSKKf8Dbl+gYPSYqrdG9lF+1RsP8M7DXVa9Qn+
PcCoaX+S2Yk5nVqnN+XvMHPppQ++TGMu05jLNOYyjblMYy7TmMs05udnKMrpTfv/J819p1my1f0D
Qy3mTErFozRfFZojm/f6Xfcze3eNOPymZXtj96yq+74algYfdTX8F1BLAwQUAAIACABSiS5KKjBn
x14QAADuygQANQAcAHN0b3JhZ2UvaW5kZXhlZGRiL3N0cnVjdHVyZWQtY2xvbmUtcHJpdmF0ZS1z
dGRlcnIudHh0VVQJAAMMzHpYDMx6WHV4CwABBPUBAAAEFAAAAO3dTXPaSAIA0HtO+Qkc7aqdKmxj
jHNL8GTWtbVr1yQze8ag2Oxg8AJOZi7721eAwQIkIYHAOHmpysGo1RL9rUd36/Liw6eg/zXov3vX
arc+trvtwd3fG91Wp929/T3oD9q9bv2u0b0NPvcb3UGjOQw/KP1Uevvmt277v4/B5cWHi8awcdMY
BPVetxuMj6+KanR++P+oUj47qZzVjqrHp7VK+c3BfaPdPSwtRbwqujcxZ7S7X3t/BFcPQb8xuqP3
3Vbk/j+374P+weGby+fv3nsIuhcffg3CeAbDeqPbDDqdoBUXc3zIcZK8ovhaS5l2HXRbYcrWO71B
sJA556fH6dndjI3lY793X++0g+4wJsPPy5X0+xlH0Vr/Tibnr7yH5EK3IqqDaEzHldrhJsUw8um7
dw+TNJydNQ73sd0PU+Og/OfZly9fToNGo1aplg9Tbr+XctFxZNHkb46+4VIkcd/of0ufHRzO3dbR
cflwUtY+hlfs9f8KMzfoBMNgGn5aFJ+z7XNvVgxiQ6YcjbnDFTd4flIb32Byyt2NGpngYnyx1cGe
/p7l1iC8r893QT8oNcL/R6e12vHJWbVaKT1l65t8UV33Hh7CjG90S7MM/Vup2/tWGqZdY9Vd1x/7
/bAgz66UckIY5Euvf/90xiRVZueN8+CgdRPfao/Dfmg0/whv6VNYFIL0Jv5iOfxWiuj50dG0iMaW
wemdzK4RBryKtqrv3vWfmtfe/cMoZCsmSK87H8unx2YzGAzCW/mp1JwkZunrpBsrtQdz7VKYl6MI
Z1G12oOHxrB59/PXWeMTqXAnZ+XDueo26gGSvty4d4hUoNLB2zBtKpXzarVWOTmpLneKKQm9sqad
j9M5qZNaar6Lqmy18vYrW+QaW6tsoxL1XNWiKXvcGrX9CfVulLjRWjQ+sxz+Ozot35zWUnuNsPBf
LZxeTK6cVo+qL5hitUYz9XsPho3+MGm8u2LI0Q8awyBtrDw/7Dg+qdYS8+4muG13I6dfzmfFP4P7
sIqHZ0Q/XT5r7aHIJsOJQorJSblWmxWT5Ab6KtoyZWuen28n8kd4B/VR9oVXK02HoGF+fWsP72aN
c7RlDgc3pedxYem53RyVtaBWLlfPRoPBcJxaOZ60yhmL2KQ7mhsGzv89HQst9TK/Pdz2G63gX0HQ
ClqZepej47BRC77FfL5GrxMZL4/rwdXNf8LEmbQ7P4W9S+nt8gB3KeT4iz3/OQ1x2W0Ff8akTOTo
RoPnlfd11Z2UuaSSGPtF5qOcFsGVN3RSnut7l6Neqlgr0jTlyWY5bEJzNG1dl05IaIjiykCjNcqQ
0tWnacW6vCgdHZ8cVU5PjisnZ2fVk+On6KJxzX25MIp/Bd8i0YZN1epTfv6zPRjV7OX7nitr3/rt
YfTcT6N6mtqehQ3QdVLC5Myl0kGz0enchN/icKWo1ONKW0IDWS++ZM6dHXeJaG2ZCzzrO2YN8lV3
8iS9heo7bhayVdxZCxL3cZaMnIRcVdGeQmWpYpOgqZUrGiSpzcxWn8ZBc9WkVd93sWLkTMn8lWGW
g6nVIL6nKKgCLJW3Fyn6vfv79nC+P/7W7nTq48/TxxmbX3dlbVu8i7k6t3RwRXmZfNU0t1v8zmlI
Ma1+sSclVcSUwInVaHLSrLqldkET7M7aB8XeTZZEzFXf4q4y/2ATPteUN0HQpDocV3qW6mJMBYi9
67cJYa767296/RVV5Ut71MtNq/L+PS0tpEpk/B7z6DD6Mk8o9f7LMOjPPZrUn0rr9LFj7aeCYUq+
xT/hzAUJr9m46YSVYVUbMwu4UFBi7yS81PtWayQ94Z9fg9IwNdd7KQ8qD4+jktNqLZ309Ah6HTme
UL6z/eYWbTJjv2tqBY47I+YHkbNqbAUOuuEnj6t/Acz/s9uP+JNjYZ3vrn4nKr6pSo5xXCEbc53h
AoGtTVvpA4D3Ky+c1d5e8MF0v/LyeYjyfmu5mj7MCe9geunLrKa9X9A5zvMVY59xmKVhzeKZBY/8
px3fqn452kEufZaee7NgKfo/C5Jeu2fdcEIlnvxU+eu4aY+pidkOB81eP/EKYbWfCzAXwfPBLLXp
Ol/yRUf5yQXtOmkgs/Fj8nVMSYn49dMQNOeTc9bxaGtyT3OpfRsMk4ZrvwTDp4wosq7cTmNdVVlu
o5df/jA9v5/DJReiSJj0CvOcEAnl+XYhwFwKf210HoOPvf4/gr82LE9Z6sMveRMoW41ILgsbV4lf
4grErEgPRkcHj51heDvD/mNz+BjGW+/0usFLVB2PcjGPci8Fd9/PE2CRKbhBZXwJ/Ny7sSeKRbF7
OwnkVVpBHs3O6gqbqfd6KlGclb9a30hn9depHzvyhv3OSPqxPf0Y/SY+Gjjf974GP3eH/XYw+Hd7
ePf76Llw9FAISSAJJIEkkASSQBJIAkkgCSSBJFtEkiIBJI5WMtHGLuYemnZR2IxJkzKwBJbAElgC
S2AJLIElsASWwBJYwjqPNfhiDXxIxYwNyGH3SyKxBJbAElgCS2AJLIElsASWwBJYAktgiR+AJfJo
QREzK1LhIBNuFKkGxfiHJSUIxYYakASSQBJIAkkgCSSBJJAEkkASSGLuhrkb5m6Yu4ElsASWwBJY
AktgCSyBJbAElsASWMJOF3a6wBJYAktgCSyBJbAElsASWAJLYAksgSXMljBbAktgCSyBJbAElsAS
WAJLYAksgSWwBJbAEl6eup2Xp+ZTDiyBJbAElsASWAJLYAksgSWwBJbAElgCS+zDBpxYAktgCSyB
JbAElsASWAJLYAksgSWwBJb4HlliZ2SwblKvhwX5BCAzsGzmHhZxYAksgSWwBJbAElgCS2AJLIEl
sASWwBKva28JLIElsASWwBJYAktgCSyBJbAElsASWAJLYAlv4vAmDiyBJbAElsASWAJLYAksgSWw
BJbAEljCbIlMoJATPdba8sFsCSyBJbAElsASWAJLYAksgSWwBJbAEljiNewtsfXFGLvYvBNLbMIS
O3rUf2X6gSWwBJbAElgCS2AJLIElsASWwBJmS+zzbIn88x7WmFmRuvRjgwUaWMJsCbMlsASWwBJY
AktgCSyBJbAElsASWMIiDos4sASWwBJYAktgCSyBJbAElsASWAJLYAks4U0cWAJLYAksgSWwBJbA
ElgCS2AJLIElsASW8CYOb+LAElgCS2AJLIElsASWwBJYAktgCSyBJcyWsLcElsASWAJLYAksgSWw
BJbAElgCS2AJLIElsASWwBJYAktgCSyBJbAElsASWAJLYAksgSX2nyXyaEERCz5S4SATbmRcjlHM
Qo9Ya9hgb00sgSWwBJbAElgCS2AJLIElsASWwBJYAkv8YHtLmC2BJbAElsASWAJLYAksgSWwBJbA
ElgCS2yTJXa2GGMX0zIs4sASWAJLYAksgSWwBJbAElgCS2AJLIElzJbYu9kSFnFgCSyBJbAElsAS
WAJLYAksgSWwBJbAEljCC0LNlsASWAJLYAksgSWwBJbAElgCS2AJLIElsEQxLGG2BJbAElgCS2AJ
LIElsASWwBJYAktgCSyBJcyWwBJYAktgCSyBJbAElsASWAJLYAksgSWwBJbAElgCS2AJLIElsASW
wBJYAktgCSyBJbDENlkijyoUQRip3JAJLGx5iSWwBJbAElgCS2AJLIElsASWwBJYAkuYLZHvxaIv
+YJQsyWwBJbAElgCS2AJLIElsASWwBJYAktgCSyxVZbYYBJDPsHAElgCS2AJLIElsASWwBJYAktg
CSyBJbCEvSXsLYElsASWwBJYAktgCSyBJbAElsASWAJLmC1R8GwJLIElsASWwBJYAktgCSyBJbAE
lsASWAJLYIm9my1hy0ssgSWwBJbAElgCS2AJLIElsASWwBJYAkvkni2xNhbkRA97S2AJLIElsASW
wBJYAktgCSyBJbAElsASWMKbOLAElsASWAJLYAksgSWwBJbAElgCS2AJLGHLSyyBJbAElsASWAJL
YAksgSWwBJbAElgCS1jEYREHlsASWAJLYAksgSWwBJbAElgCS2AJLIElbHm5CCBmS2AJLIElsASW
wBJYAktgCSyBJbAElsAS9pbYwt4SG5OD2RJYAktgCSyBJbAElsASWAJLYAksgSWwhNkS9pbAElgC
S2AJLIElsASWwBJYAktgCSyBJbCE2RJYAktgCSyBJbAElsASWAJLYAksgSWwBJbAElgCS2AJLIEl
sASWwBJYAktgCSyBJbAElrCI41VveZnDGjZ45QeWwBJYAktgCSyBJbAElsASWAJLYAksgSXsLWFv
CSyBJbAElsASWAJLYAksgSWwBJbAEljix1nEsTYo5ESPtSYx5JuOgSWwBJbAElgCS2AJLIElsASW
wBJYAktgie93bwmzJbAElsASWAJLYAksgSWwBJbAElgCS2AJLGERB5bAElgCS2AJLIElsASWwBJY
AktgCSyBJb4PlljFDZnAosg1FsW88iOzNezfU3sOjEEohWQGJIEkkASSQBJIAkkgCSSBJJAEkkCS
7SPJzpaGrJvU63lEvhkVBWiNnS7M3cASWAJLYAksgSWwBJbAElgCS2AJLGEDThtwYgksgSWwBJbA
ElgCS2AJLIElsASWwBJY4gU24CxmpcfigpUNdrHAElgCS2AJLIElsASWwBJYAktgCSyBJbCEDTh3
qwZbX3jymh7wEYqdLiAJJIEkkASSQBJIAkkgCSSBJJAEkryWuRuWlJi7Ye4GlsASWAJLYAksgSWw
BJbAElgCS5i74eWpWAJLYAksgSWwBJbAElgCS2AJLIElsASWsNOFnS6wBJbAElgCS2AJLIElsASW
wBJYAktgCSzhvSBYAktgCSyBJbAElsASWAJLYAksgSWwxHfLEhvzwrpJuD8sYbYElsASWAJLYAks
gSWwBJbAElgCS2AJLGG2RIEskQ8UChAMLIElsASWwBJYAktgCSyBJbAElsASWAJL2PLSlpdYAktg
CSyBJbAElsASWAJLYAksgSWwBJbAElgCS2AJLIElsASWwBJYAktgCSyBJbAElnjde0t4EweWwBJY
AktgCSyBJbAElsASWAJLYAksYbaEN3F4EweWwBJYAktgCSyBJbAElsASWAJLYAks8WOxhNkSWAJL
YAksgSWwBJbAElgCS2AJLIElsASWsLeEvSWwBJbAElgCS2AJLIElsASWwBJYAktgCbMldjVbouAp
EBusFsESWAJLYAksgSWwBJbAElgCS2AJLIElsMR3yRL2lsASWAJLYAksgSWwBJbAElgCS2AJLIEl
sIQtL7EElsASWAJLYAksgSWwBJbAElgCS2AJLGERhy0vsQSWwBJYAktgCSyBJbAElsASWAJLYAlb
Xha05WX2zSuL2RbT3hJYAktgCSyBJbAElsASO2KJXRxAG2gDbaANtIE2zLgw4wJtbJs2cg6UXryT
163qVpcGvZnb+v1fk7eXjdrc0cGw9xD7MJvpQFxWhd+5O3sGrze6zaDTiZH6zS7sgAM7PaCkO7Dm
gecm/enT577y6OT89Hg+TLPTGwSLgcqVxI5xqZu+nvQD9VE881HfN/66CcafXz6N1BauUzutZr/O
OCKl3YHIgf8DUEsDBBQAAgAIAFSJLkpZthVf5Q8AAHDXBAAtABwAc3RvcmFnZS9pbmRleGVkZGIv
c3RydWN0dXJlZC1jbG9uZS1zdGRlcnIudHh0VVQJAAMPzHpYD8x6WHV4CwABBPUBAAAEFAAAAO3d
TU8bSRoA4HtO/ITWXAakRDLGGMMtcSazSKuBnWT2btwN8ca0Wdskk8v+9i3b+Lu7bQcTSHhWGq1o
V1dVV9VbVf2kDKdv37xPup+T7slJ5yZJ3775M/nvbdLr1xtpM2m3k/jFX2krXDl9++Zto9+4aPSS
vJTRq2jnxenD5Rffpa930jRp9lud9DxJ41Z6VW93eklIvV8pHR1Ujmr71fLh8WF5uaTpnScnzcxc
3nU71/V2K0n7g9IX8yxViuszzCL+9pqM7l9Zh93rRivdizIackVWu7M5lSu1vazOaKWfO5+Ss5uk
2xhk9DqNP3Qbaa8xzPZD6zrp7u4VVKFTcOO7VjcMgPx7PzbSuJ2Mf55UoRcq/+Fj0k2iRvhv/7BW
Kx8clGq16GbUc4NOeReK6XS/hl5J2kl/ksd4DE3b+0Nn0n+ZKQs+zajx0qXdvWi39PfR5eXlYdJo
HB/USnvhzpWPPCxsOy1zVK1WJi2zWVbnnZubMH4baTTpxZdR2vkS9YvKWFXr+m23G0bgpKSCG0KS
y073+u6OUatM7hv2wW58kXnnqLveNJqfQpXeh6GQvHj/r3+2+oNUs1dPTq6S/ln3t164sd3qfRzn
cJpedkIB45gOJeXcvlxQNLwUfoouW+0k+nXn1yhUNm71PhU8adyK3y5XeWb8NQcBvHRjVof+b9Ug
3N8fDsK8MBjXZFJGSHg2OyOfnHTvpubO9c0gZZyRpJPO5/L+ttlMer1QlVdRc9SfUSivN+jIVm9u
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
jt1VErPW2by6Y6p6lq+ZaN+Mkg77ea65hyX480mT+ruMc4gwUpjkYZI/3iR/2tK9vWeJz1RmyGEg
h4EcBnKY1v1qBCYU+EHNGaakR1iOaCLLLV/P2DedLfxK6ZPeftY6D+zvQG0ItWGrakOoWaBmgZoF
ahaoWaBmgZoFjsK0eY9473oH6o7mb9S4jHMRkJpDal4etcc1hSnL0hpMq1uZ0jUG0mX6I+oynGaE
Z3NDe50krqobn2zHc6t+sbdWMRNFI0blQwVmeyJxKwPjgrI35Lzie8//C/+8yMryoa4x6QHum4id
LzjbUhXmLpyokSoffKXkAytIUx9g2NyrVvOayaqXrFlytzU1yWGqhDstP/dOS1hlg6Wkxu6TrHxl
kM281zcIvTXzBqTWvOB+LK34hcadr/rEPLau3FOjD1fmI0XhO5uEKPkmJtNvhd/rzLNeoZ9zHD+f
boLjTj9GX6/eT/Lxy9Np9hdQSwMEFAACAAgAVYkuSkVaWRxjBwAAvIIAAD4AHABzdG9yYWdlL2lu
ZGV4ZWRkYi90cmFuc2FjdGlvbi1hbmQtb2JqZWN0c3RvcmUtY2FsbHMtc3RkZXJyLnR4dFVUCQAD
Ecx6WBHMelh1eAsAAQT1AQAABBQAAADtXUtzozgQvufkn6Cay9hVSRUPG2PfEmcy66qtdXaS2Ts2
ssMGgxdwMrnsb98GDAiQBIydSjLbUzUHi1Z3q1/6JBE0v766o8ETDaZTf0e966tv9J89DaOZ5a2o
61L77LvnQMv8+uraiqylFVIRJbkgvbN5wc8+0M98z6OryPG9W+rZjreZuX5IgVodKmN9ODZVQxtN
RlpdUtFzOl1xudwE/nbmOtSLYulVnspQrk/Cwv55TdL+jTr0t5bjDQjHkA2s+iwnbWgOeM5wvCf/
kS52NLBiRpeefR9YXmglbO+dLQ36A9YMJ3GzeEi+RJEbJwBJ4r4Plme7NPudDykEkfcPNKDEgv/q
yDQ1XVdMk+zSSIhHdwNi/OAFvExdGuU8spgs/Hfv5/HApZQ85Whca+oPSF/5MV6v1yNqWRPdVAZS
cx2GnAg7jWXGhjHMLdON1a2/24GDLY/kXjwnnv9MIpmMJq1n+yCAiM4lSToAydoPtoceqVXyfmng
2Utuz9RdV9bqEVS6g1CgZ3d//u5EMRXbOp1uaLQIvoTQ0XXCh4zD3Fv7ICCrESBJ0L0uiCRN8Ius
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
sue557nnuee557nnuee557nn+SfluQf2fw3smb+yaL/TtYvi2OO+dBgo3y7mv2t5szT70lyyab0+
aVj5l0bt95m4z5GoUPnpkLCGlJ81tYdeo9cVFNfnVSkc2HHHDhfIyufBxb9QSwMEFAACAAgAWoku
StHnlb1RBgAA/jwAAC0AHABzdG9yYWdlL2luZGV4ZWRkYi92YWx1ZXMtb2RkLXR5cGVzLXN0ZGVy
ci50eHRVVAkAAxzMelgczHpYdXgLAAEE9QEAAAQUAAAA7VvPb6M4FL73lD/Bmssk0owEhBAyt5ZO
V9HuTrptZ+8OOC1bYrOGtNPL/O37bAIxATtJk6ojLSNVI8z75ef3fc8GMr28uCX8ifAvX1hK6OXF
Dfl3RbI8wDQkSUKis+80hpHp5cUlzvEcZ0QniT6j3tn0xPb6SxzTAWpRChmlJMxjRoOEZSS64mwZ
JDGhuVBEfdu1xkN37NueM7LGzsBgCs8Zz+84phmWBrdnEq0lg8rlNaFRTO+lZ5BWfU1GTnOOG001
cNXKVvhbNi33rB/NW4NPCV8wvjxvm8OfZMn4C4hf4PARPN3mjOvmW8iqgorEWqc/0JnkMPxEZvN/
YGZy6IrxvwnPxPI8YHpPZHwiqTWrIVumCclJNINpYDF2Fy8Jv4o5rH/f+jFeLBYjgrHvDq1BQzst
8rdT12vRBc/LOJ/RYo3X01Lih1UnIrIbEjIeCfXNGt6xsjIKK4rhNkM4itZWdnkxKisFuZfbmuVG
4bQkwwi2LYdKybzFXFtuPvM4V6O+immcPQCh6KOO4ujagI4WjZg+sUdSFdQ5jRQlWV59E5Ewg6Ks
S4MuoCRKSHldhZBBqHcPhBOE4c8e+b4zHFq+j9bFL8riCtxAusoElzZKGmsr3HZJw92WiBtD/YGK
u8nQtwZGCl9PWTo7TWbGnudWmTnM1DVLUyAOTFG1ip8QZc8oN/nYFXWw4hw4vfJkUFgT+VqjyEql
VzRDTQsolksl5LPbv/4AuDRo+p7kM/41A8UEwFNamNIFAwdlmwNPGvWmIySH4Aot4oSgj72PCIKN
4uzRjMvLZsgqv4mO2FBsW9Cfu4rQtmUR6mBQRlL5AMGZuh0Rra3Yl5StqkWE0bqV21UYkiyDUD6j
sFhP9FR0QxRntdYO5SQMVqYgdSnOw4evT9VORmllw3HRyirEi62TbnJyW6VgGPV7kBvXnXge9NOh
N2js1gyJ3gn2icyzbnfX2AedCu++9fZ4V3y8Gd5FRW3QrmbWiWDNddAXya3hUWha8M8eT/AICPhY
JjCieLbl/TSLOvJs7x0T7uPQMjV5yBnPa3tbdSNm3vpzgnOi021u/J2h52uXfk7uY6qoT+tL8drd
jaZetr0ZNxdFZRzIqZs4lQtwE4ikiQ6zqUr0HOcPFaOqdGo7FtocsNCG7MQKE9+yvLEzclw4pblO
QaV7Lmwx29quuX5dJqTRGr6n9xxH5BshEYn2agm2A0xEnlvGf72954GNSzlSSCwoW3zQ6fdQr+Wo
ti0p06yeDdIVkNl5FDVU13V2rbt/1AlyO6zqMKk7LLbN47jjsN70jgNfQ95w9mvKmh9FBA0FDae0
lQCcAQXWZ7clyqeXyHaGtjsaOmPLs5yRt9eJLzg2I6gf4iSZQ8ADM6mDz6BtZTXMGJy+CmrabS7U
yqwJV6RRMfGMFk+hTgqVEp+7EKLiuDFmXr9KzND/KxFz/VZsod06UZED8jt5+bZazmE6GsFH8vL1
R5zl2ZTWixxuoN4nxOQgyuTopshHPjQp8xHsRnQnMMTl/yZTruvvMCWfuOwOauzpLVUPbvaY23Dk
7AXg68PWXYWrHnzaRnA05q5bSlzZBKxPhAcCcN/mGhUxvX9P7IDeAV0F+nEw62iio4mOJjqa6Gii
o4mOJjqa6GjiV6cJ8ToiWPGMcR1RzPQSx1DFxvEusqiH2DJqXnpF0PgsthIyk4aSjuo5dyivi6df
gBwEqvzlC/rQ+3BWiIoHw/NYJgsl7JlwiR7x7hXTCK3SdDOygV6hKkD3JL6wkg+iA7aClVVgNrFG
3qftAbQgUAWwClyCNXtFFG+P3NnhC7gfeg0FezR+Z+1Vu16pjOS/kfyGZKskV94aSKZ8D6SXcYWM
Qp2uyNWKFm8++jkrompOEmpP9Lw3QHzN8i7QN8Jov2GunLqsvii35MwEMK0Jaxpl3C60D6Q9yxav
k7YGGpDetbfhRGqYw0w1UmWc5f0i0AKDOAHai17QA85qQXq+3wX5/w7y7ZvG9LXo3691TI3kd3T3
mGoZsGsgXQPpGkjHKB2jdIzSMUrHKB2jdIzSMUrHKB2jvAOjnPgni/WvaJ/jJAkaP85rfquc5Sw1
fbKt+bHuwdLq19TS4+YDZns4Kd7hKJ+WNn4/C0KWqy0u4+9w66aX+GVO5Ph0XSNbfvyRd/YfUEsD
BBQAAgAIAFqJLko8yl335AUAAKEvAAA5ABwAc3RvcmFnZS9pbmRleGVkZGIvdmVyc2lvbi1jaGFu
Z2UtYWJvcnQtcHJpdmF0ZS1zdGRlcnIudHh0VVQJAAMczHpYHMx6WHV4CwABBPUBAAAEFAAAAO1a
S3PiRhC+++SfoCNUZav0QghutrArVCWLE7y5D9IAyooRGQnbe8lv39GTkeYhCYTtVNiqPSB39/R0
99cvaT67X0L8AvF0Gu4hmt3/Cf85wCh2AHJhEEDv5hvyyZP57H4GYrACERRRKl+U25vBDvhoqHCY
3BAh6MZ+iJwgjKD3iMOdE/gQxQmjMtBMdWyYY1uz9JE61ocSUWAV4vgZAxSBVGB68rznm1DyvJze
Ka/wBJHno016E0JN6z4Z6TcDb8VVfA/xOsS7O57+DPnxNNp49Mk1E9b0UM2b5R+/+XEi8x643wnX
Mg6xxH7Uo+TI3T6AMfQWRGuQPHv2dxA/+pgYaKC+jdfr9QgCYJuGOmS495majbwWh5ecvPPjBcrM
n/z5aIrnsHBKRkUx0h5j/8iYl3OkNHprAhui3fO9py7Onk599BJ+h6XB7pBHMaXmG8gwEUoYU7tX
zJNEDyOEp9W/zLPBsOJBTVeHWfQ8khND/IPcHSZxU9AXwcXzIZ9S8leOhg0KTgw7VVBsuS1AXgBn
6WHNZPnv0k8R0et5CzFUAPmvjWxbN8aWZSo5Am66iXoK93uCEYCU0qG/KCh8VWLZGU1aOweMSZYo
T5Iw5Ckq58isUvJlQS9Ibpm76Ewjx8eMpb9IiE40rQhRbgwWmpRnEMIFXRemU5wXiCIlckhCVJWy
PLgujCKiyhfFzYypkPOixIp+VMnUxJeJwFKU50d7ELvbh5eyOFKAM8ZZyizhltQw0eXS+kYBSBnc
EtuY5sSySN42rCFTNiWGbkTaJLWzqMwyZa0vsNnq5cFGnXExsCURdYQabVndIz4X4S4xLo2ilFMl
/7SRuhrZ6lAOw0WNvR+vjCzN+kCL2cCV3juKAY7/yuDoECU2UNorVFoxDEEMRbxsI6Ybln16vRf4
fAU3PqLo51UX/g53JDUwfV+d66x2opcwMVTbLsNEnKAXdGZql56P6lA/iAZO4j5ymlI09cRfr368
LZMznZlJc6McW2/lmDeTWIO2qlpjfaSbpOc39SwrtwwxTr9d/V30QkyV+bbfYODBrxB60GtVXTSd
JDX4ynl+QtWhOuIUB4vV38Q4Wd75QqqLcsvp5+uU/U4LdemNg0OjOp1HH7HohrGDoZdMICytfMp0
GAZBWuB5EniJQ5TFsoDHfKZouqGZI0M3jfHYMvRcHC2rcjki4it8pcSSfNbM8vDmRwk+Wb2pJ9Pp
KyaDLcW7TNAmzUrHicw510vKwAVBsCK3GMprBTnT4UWbIM05/UdmhZt3BI2WCnFZAcq0ukDZsuEC
w341tbz6QeAwA/ft/3XJ0ABzLpMI6hJiISozphK9Uhw++siPtm2ByNWmjRE7IZB3SrVHIy2aenKP
JsEzL3oYRHIAwNX6VkCzwMyKiYXK2k+gXkD58zV+NatQrQinC0ouk8/Xd+sY4kqX5eTRWnRQpzc4
zHJXG090Vehv6ZK4KnoHfqxg+nyeJ6DaOfZYb39Otk/vdycgiOgM3r8mfiY3Ew5Q5+zOL7EHl+qT
me90TbivM1gd+nkzopv28JxM1XbXc93Y9LGx+Qz7B9M09EvvEXoIyNbJpU3Hcv4ccU6red2qXLcq
pzYd2UsU2QjIpehtLVMqfkAuOGy28cObC/dZakjvkMKTMy6m75RnB/gcPgI/gF4uiKHzEWnYEAjS
npUd+1q0sudMfamWxdBHQJi98s91jURYqb8v54udoyccbjBpSo/g5DX8s7oD+xjBexzthbeWD2Yp
edePNk75UEJQlICYVlwnEp6Og+1lKkPX7wXYa3QZiXln1CZizTY/5CuF9yyAd024LmiYyZufploP
eKROTE4a8DqM/x2U0Q1dsDAob8+ZwB8wDjF3/k5yCvl9nMGvw9eweclxiUVF95XDZ1khfLoccp2c
33FyfveB8jrvtfvIqfysqb9p0DY7ToMdE2XFr1Ec7guH01Nl+pRKh0ZSg5qyrJHvFttnWcMeWdKk
yn61LLtBNzH/mft+0LUuvdWXGUPY9P0EUEsDBBQAAgAIAFqJLkpDYyjzsAUAAL8vAAAxABwAc3Rv
cmFnZS9pbmRleGVkZGIvdmVyc2lvbi1jaGFuZ2UtYWJvcnQtc3RkZXJyLnR4dFVUCQADHMx6WBzM
elh1eAsAAQT1AQAABBQAAADtWktv4kYcv+fER5jbgtRIfmEMtwQSFakqaZPtfbAHcGPGdGw2u5d+
9p2x8XMexmAalCZSDpj/a/7v3+D57P4ZkW+ITCbhDuHZ/Z/onz2K4inELgoC5N18xT59Mp/dz2AM
lzBCMkpwC3o38/+vPO9APw0xRm7sh/gJYc/H62kQRohS65Y2Mq2Ro9vGcDw0eE0F52TiCqU8knA7
DXyEY6a9LlOz1PYkIrzTLUn5G23ob6GPB0DgyAZR/bIkw3IGomD4+Fv4ihY7RCATdIe9FwJxBBOx
L/4Wkf5AYUKoYHz0CU0AOe8GYi9A2efchIga/7JBBAFI//Wh4ximqTkO2KWRY0F5pGpC8oNGBQUo
zmVkOVT4+yXM4yekVHwrsJh71B+AvvZ9tFqthgjCseloA8rZeOREWTeeGdm2lXumnaincLej+Qsx
yKP4C8DhG4hVOpqsnu4JoRmYa1IwUJJVSLYHjtQrOV8Sg763FHKm4bqH7is16ZmmArp5/uM3P2ZU
5aeTyRrFC/IQUcbAjzaZhDlehVRBVtNUk4SdVwSSR/QTWPkBAl96XwA11vOjV8VJPd+b8SaX8s9l
BcwxigL6b1MS6nqShLIyyCzJdVDCRbkjTybk0JrD7Y5RegKSEFelPO9dF0URNeUWuGk8AdUXsUD6
UaWn0XRiAnNR1HU7GLubh2954ypO45gjbVCpeDY9ZIdLJkuphkG/R31jWWPbdizTtAfcwFI4urHY
x4mfZQOOa/1d1bujXb7eSzouVu8so4pqL3vW8GjMZaXPnFupR8ap0T99NIZD2oDP7QTKKl7UtHcT
1KGt2+/ocAe6mmrIU5+R+K+0mqfUiDUqjfqGbYcgGCMZL7/xGKbtnL6mSFJmidY+LtHP8TGTo86l
XC7SzGjZUwsLSx+omilzGpswRVaCNz/e5B213E51QwPFIgiKZscijBxNs0ds+6OLqWWkrfTIwKan
LT1IzBQ4hBsNX3drAj30O0Ie8o4aCbpBOxF6Ezy/vt2z5eAqretJLSyWf9NQpa3rlg4o0BtwfuYo
OYqDPbnhxaErRli2doT0BU7zWJbdzea4WVo3GmRqlSHMi+aC1eAZBTziaSUNIuuTHIOkNYgiCT0W
ELB4zop1PgO6YerW0DRGmq0ZQ1s9Wp5kRrT0COi7MAiW1OCBujdTnVNRZCUNbtp9FlS4RSrKmVkh
zms/b6gLnELfbksl3G79uFrGb34QTJPn6mZ5vt7GuqxbUaks7suGPEqPqrptqJ9ZhdCykhIyycpK
TdzO3FJFCcUe441WpSTSUl1u6G6jnbzcKApTlAZcaQkyWWh1T0KzIHfLkDTk/MpnNZvV5PXN7ppX
SvNbsMiwwxxw7d0qRqSyKKVOSZab3nlbAXedSYGMoUnjrbwWrYrewh9LlDyfHzpJTY8zMo7Xk94x
dovFJRn96GMK0X5lcaYnkyKPz9viq7wtbnHH8nlT0sVNyTUAd8syjVMB+KmJ1hK4t24wGePJa93V
zb/Pu4v/9O7inL0g/eVBBbeEFJ1dN+SG77EL9+tN/PDdRbu0epMzJNUjgGaQrYmzPXoJH6EfIO8g
iKPzMd2pMAyStZKHWEdsm+cgrMTKDGDRIkx/hz7YGslqBdaMEoud4ycSrgndG4viFO3ks3oAu4C7
HcJo6anV2CkhV/SvurhjcOSdiEfS/4XyL9PGC5ApNPAIP7WBmCIdNYSpO9bH+ZVfMq3umoowo+GQ
rLinHA2YaFMfnwSYWsDpFsYYpiEB4PnpBYj2gZCQCPEsawD0c4FpP8HMoPnS4BLAvz2EvxZIfk4P
ucjrEA7dMQeCN9U+f/i/Vjh7MlJ7tzcGLrZbfOC3DT76knICpOawaP5SVXeA27FaAu6W4006dvg3
g2toPtxVJ5vJ1ommgWkerl0vfVNuOkP7vMXvzAO2N/UdVVea4UF7T/lFu7S5GPVPUEsDBBQAAgAI
AFuJLkodb76w/QIAALEaAAA/ABwAc3RvcmFnZS9pbmRleGVkZGIvdmVyc2lvbi1jaGFuZ2UtZXZl
bnQtYmFzaWMtcHJpdmF0ZS1zdGRlcnIudHh0VVQJAAMdzHpYHcx6WHV4CwABBPUBAAAEFAAAAO1Y
TXPaMBC955SfoCOeaWb8jeAWoJnh0CbTkt6FtYAmtuTKDjSX/vbKiPgD20BomqYdM8PBsvZp9d7K
2t3pZPQV5BrkcChi4JPRF/j+CEk6JjyAMAR6cc+ZGplORhOSkjlJoG0mukKXF9MCj+7mjwXnEKRM
8DvglPHlOBQJqNmWa/Ydt48t3/YGnl1fqbAcDoNGlBsponHIgKfZ6vuYpnvYny0EPd8TbX/Uh15E
GDdQA5FHoHplJNvFRpMYjK/FA9zGIEkGdM3pTBKekC3sjEUge0aZhteW+V3itVMuDhB1w6RaqeRL
kKlSA2ny5WdtrGegnvmjv1gsPCAEW7Zp6I3eqBWFfNL+ZwNFcM1EhYUdko6FS4XnugPfx67j+MY/
g9Rk3cTgEQIHzmBLYFsc1A7qgRhYEU5DeH7Oj06iNjVbgQRE1N/yMLadvo9NFOsvzsXLoO5EHKtw
JBzlMfcBcbFB6aE1jnk9fpRSfR/ylQ4YqCkLIaPCgudWFWZtahqtSvXovO0c8REJHpTPX5XgsEU0
1c/yzLmHTaPTuNO40/jNNT5fy3YHKKO3e+avo4rnW/5fZAyT4OC+k5TI9BvIJEvQlBNLKGUMR5JE
CSSFNtt6omg7Pm7Vbg5Lxkvm06oU5yaFnyBSN7WyK6PVV+sCowuMLjDeZ2Ccq/CZAXVqYLQUELuo
yPMONe22XMMNh3JXzIkoDiHVxVjhXelBcTHOCFNOoOfCXjG0YekKrTWHlTpclV+oqLZRUbRk6gI2
Tb+fldiq+ndtnSmdKKqu6UoDWzf3lGvYqeD38VISCp8BKFCVJF2hQEdfvgGWVPbgWLZKPGDTMN4x
3jH+3zP+O02dV7l8HBPjEy6fzptpKQgoS2KSBquP67ytWbpPnb6OxD87vbWbVe8z7p0KEVduXcvJ
2sP7h2E3rX5KGE9BchJez4VMq9AbFurh2jkrtYdrjXK1vm5qF5Mi8jSHbft4yvXe9iyw57d+rFpa
4h1n53F22g7LL17G8psw2C7ge2D5F1BLAwQUAAIACABbiS5K77p3nvIDAAAmKAAANwAcAHN0b3Jh
Z2UvaW5kZXhlZGRiL3ZlcnNpb24tY2hhbmdlLWV2ZW50LWJhc2ljLXN0ZGVyci50eHRVVAkAAx3M
elgdzHpYdXgLAAEE9QEAAAQUAAAA7VpLb9pAEL5zyk/wEUutZPzCcAuQSEhtoQ3pfbEHWMXs0rUD
zb/v+oHfNoY4TSIcCSlez8zO45ud2V1PJ6MHYHtgwyHdAZmMfsGfZ3DcMSIm2DZYnUeC+ch0Mpog
Fy2RA2WUwlfhptPdIkxEoYDJpISA6WJKxjZ1wLpndDu2MRDXYxS6PVXqK2rf6OmyJvVlsUIUWlLm
LhgiDvIF+jNPY0uskHKcmZLTJWcZaHLeupjnpMoZaZLa6VrLQoV3wFaUbW+L9G7GY7JqiJ3vsKXs
hcsYIfMJk/WDS1mZu870biA6KTdBEfJ0xWQQmoHTBQ69DAjn+K5Z0NR0bYM4mbZJf51J/2qoWdia
V5hVwIHJnj7BjDsDeWS3xEowLfAW2FVMyDlSrubJZPEYRFw+3T1mHK9d6W9/tVppgJCh6lKe1w/T
jATA59MFyRhmpuORx3he0GN+ZAFRLHZK5oyuGThOpJqTozTpdmeDC9ZJ9RWpNf06TS/PMFqRKb6w
Ct4NIpYNx+dYWZ6biw0wEBD/9TTDkBVFMgwhdHirTYU2iRpahJZL393zf3mxCRqHMnj6TUWocVDf
bkShq6oDXecwUnTx00gq4i6qFrmhrphMnoEykMTiOpOUHOvdDCD6uiFFgDhP1JzudnwBQESIwPtF
IPQguFVznNJ6/MwY73mimSoYwj4r5iARV8qzsiWJpZEqa+I8omS/5EuU+F+vP0CawSX+jxg//PyG
Xcj1eGtwZ+zO4eQ2djZHvilZUR6XYz9c2W22EKkPkTaZP1qkLk/ayv5/lmFvJiqa3tMv99ibrQA1
HW4gs9JtXAXm/gbmeBtXbsM6ubM8seFmgFwo481vumVFN16zDyuq+WHUo1znZLPkecdwyMKDj2MT
3EnNnXjgyo49i3iQEhEQDtjdCPvAyNQRQk+WhHjTL8R9hud+MCRJ73s7fW2gqXKwOtX0enA8kmrh
08/HE5SMpZQ87tYMWfADwAKLL2lfBTOAR2QAdlI2KD2ZLxNwKBj/eM1uZKiFnR1yzc3dPjpdSQBe
6Te8geP7py120wE8YNse++PVgXu/bWeg9XHfWZY/ZtaGZBXNv8wFtMhRVWdkWY9VnRU3XQ0+QjP2
umLSVoO2GrTVoK0G11gNlrDGJEE8rdvqn1EKsnOcuPJp1/1L1/0TV2/jQmSUBM2sJi7CZFt2Gio7
Fybrm1erZvL7E1S2d06kC+N/TngykKW71HLSU7zvAtJlxbt+zxJJamny5ta0eRAK/xo/LXqLXpbg
j0/DSpqZx9D0ugqn3BmS5XMOExcYQbZ/p51vOnJX3Te1fXG+VfW8F3z98CnDVhqS0tum/Ac4b0xd
DzXRi39QSwMEFAACAAgAW4kuSnH/R73VBQAABDMAADkAHABzdG9yYWdlL2luZGV4ZWRkYi92ZXJz
aW9uLWNoYW5nZS1ldmVudC1wcml2YXRlLXN0ZGVyci50eHRVVAkAAx3MelgdzHpYdXgLAAEE9QEA
AAQUAAAA7VpLb+JIEL7nxE/wEaSJ5BfGcEtgokXaHWeXzN4buwnegTbbdsLksr99u21j2u6HjTEb
tGKkSAN0VVdX11ePz57PHhcQv0M8mQQgAUsQw2mEEPSTMELPEAUhep1uohhq95ph6yPLHrmGYw7H
Q/PuOwr/foPz2eOMk5xMfKGWJxxtp5sQooTo61V16vbdXGVPqiJob0kmX2tDfwtCNNA4pbWq+qwm
03YHClVgGeHkBQMUg1QhVaA+/SfcRj9YCo3fQbyK8Pah5gzRDqLZ4x+QiMfJFCAfbjYwuFv8/muY
UIWPwP9BbFkkEZZ5RLC5WGu6upub00fmoMExTjOta30dHlWuKgiD5+yqp9F2G9bfDrOAGkJltL4P
NpslueqBOkbJZsJdynFpOa4uclWI3qMf0CORCajgAwoYNS/hFuL+7aTlkz40BFyjDYnE8YgvUZHG
BEela0vuKxbdVS3l3dSTrPEwd5zK0i34WMIUEnOUmVfJeObYkR5DUou4o6xCDD1ETNptYAJvXpF5
pfTzLqtJRYSlMfVEZAKtr/8crVarIQTAtR19wMmmVcPLTSehmWXJPGXGMsurtUasdo6ecfSKYRwX
psXcSj8/VVBrvqWrcBkp8JUqY0uIT/3MKRGB9x/uu/6gZJZh6gNlPbkZJjasXat6tpQodJ/IfyP8
QVRCGooHuw+NhxC7wpWKXwWeqnHU2HJrbnANULCBs3Sz+mX55yMWiV0va4ihBsifMXRd0xo5jq3l
+eTuNFXP0W5HnA+QVgTWFw1Fey1R7VFn9fQNY9J6FTspBPKuOpfIvFLIZU2fpB/Prottp9UNwIxf
fxGojA3jABVJGZyVAo0u9NiedzLBefN7yLKCJREqa1m8+T7J2cSUe83PnKmR/WLqxTAuYYvcJVVY
qArCeAcSf/31vWiXGeBbo6wAFXCj/bnscGnvzgBI6/eIb2x77DikFFgOP2IoHF2LtHHqZ9kIwSWa
rsDm6pcHG7PHxcBGI+oINdazZkCrtgR31LksilJJnfwzhvpy6Oo1fbhXEe/mVoaO4Xyix1zgK88d
JwAnf2ZwnBIjXtlRqobFwBAkUCbLT1B0hJLe3RK+hogRn5evou0c9BvcktTAkRvV3c5qazoJE0t3
3SJM5AnaYzNTs/R8NIf5QCyY0usju2mHxofc1z5M1kVyZjMzabK0I5OhHfMmjTXo6rozohwb6Y5s
M8vKDUMsK0elFr78+dALcVXm++4VgwB+gzCAQaPqYpgkqcG94PsWVYdheFIceMu/iHOyvHNPqovW
46cjbmWnsxen/TCHyeKp3pzTpim2aeFU11A23HoFo8avVROjU05AkhZENwkCeiGatzjAYz7TDNMy
7KFl2tZo5Fhmro7VVZ5eg+Ab3DNqi8SkEvn6M4wpPnm7mW8mkz0OE1Z2QdGmzEoMuXbuLZ3EsYmi
TUbHdB+ZHJmjQktpcVEBirTqoYzB7Ra+AnZpH242Enqp431rc4WIIJP/2ISgVZLmIta3DuZCIRnU
FYulqMyECvQqcfgUojBeNwXi/4LlvlZ6VUV+Xl3jV/EK04oIuiB6mHy+flglEJe6rGkerYcO6tPG
aklQZAj5hbqKnF06g5wwl/9n0zXLzTU9iBjSFYgqVAkeCru2rk4vCnXnoLx17bkutF2IIynt8QkT
vw6VnkZREq4+jnEXe6tqnDExphsj6QMnmn1KokWaOu4mXiMY1ti4Hur2Fy2fZYnLpUvaTqTlBMg+
gjds0y4/XrCX3LzHvfJhuKbrNn8sx770cdLjP7IPQXyLx3/SDCy7wNtbSJd7C0mOyQwShxdMKnq9
LA8KwVSiahy3dW4/oybUh9Ulk/8F0qhhXQlxaozHpt6WOG1KgHb/ZkvbqtyOGWlImZ5AoNzY1c7Y
1asbsk4cha6C4zmP8boxRDeG6MYQ3RiiLhmis3kdKaPEv45dqXnRrtwiWflrWcopzcqHiUtPaZY7
PP8lzfyMvU/00+kn7uIE/wJQSwMEFAACAAgAW4kuSocBP0NOBQAA9SoAADEAHABzdG9yYWdlL2lu
ZGV4ZWRkYi92ZXJzaW9uLWNoYW5nZS1ldmVudC1zdGRlcnIudHh0VVQJAAMdzHpYHcx6WHV4CwAB
BPUBAAAEFAAAAO1aS3PiOBC+c+In6DZQNamSHxjDLYFJLVVb6+wms3dhi+CNkVnbSTaX/e0j2dhI
WJIxjwm1S6o4IFrdrX586m5lNr17xMkbTsbjIAzuQxKmy18QCaKQPP+JkzSMyWSJyDN+ShBJkZ/R
BXADup3vJPz7Fc+md1OUoTlK8SQmBOe/N7Fi++nHsOHQsoeu4ZgD14ad3gqFpA9qjJvYdSQ7QvIW
v2BvjRPENLolAaf/U7jCSa/fmW3PHq8xmd79gSmfNJsg4uMowoGMs5wyNwnHL6gZ5QGTgGo+ieIU
7xx+NDD15vSlXO6TeDWJQkwyiUFH0Nbrk7MIDtek2N+og9qpDax6PCfTdvuX6OZT8eO0Ho/XhY+r
U+XnuA8TSt6D/wwXi8UAI+TaDuxrzBtrjJIz0+xdsjTD5fdKkZSq+7TECQaIfoyB65qWBV0XbDRm
J7mnYuLkg0YcjnBW8SgPuo2lp7iKTSml5leJxrWlXp831shyYZ/ubDxyLuw0lhk6jl1Zph2rh3i9
pt5GBFRe/ApI/A4ynYwmrSevSUKzq5Kk2UBJFnGy2uworFLty33QC+ZyqM5p75D/QlV6pKGAO4+/
/xpmjIpfHY+fceYl31K6MaLIXnKYkUVMBZR4RSUpttcFgXyJfgOLMMLgS/cLoMoGYfqiv1qmdZW5
+PMZONU2yhz6b1MQGkYehKo0KDWpZFBCj4eN8TjZ4Ee8WjPKQEISE5HL46vv4zSlqtwAv/AneCuu
TxCmAl7TcGIMK1bUdGuU+ctvbxUoc/hjDWFfyHgGcarD5fDH5TDodaltbHvkOK5tWU4dpTWGbkz2
UW5nFQrXrrVT5bsLz5/vnIyz5TuLqG2285Y1A3bnKFKfGVfIR7YT0j9jOEIDCsDHIoE2i70d6adx
6sAxnE80uIt87SVPbZZkqjK9oZJLMMqwrsQXqznTclyl6+f4OSTc9pnoikMrN0W87ErTFhdFZLTE
1K2e3BcqZsKMxm6YbVSC9zBbVojKw6lhQrAtcsEW7JiHsQuhM2SVLS26bbOA0j0dK6kZxe+lQWpX
w/f1c4IC/BvGAQ72uhIMkyIRfpesX17t2fLi4lqRPBe8+V/UVQV03dALCnT7NTvXKI+q3hu5e6SI
Y1V0N6vjl2HdqJAFhUu4zrrmrAbLaFq/Oq0CWEqcrG1QQIPMkyhgDgHeY5mssykwTMuwB5Y5hA40
B47+anlQKdHSIqDnoyiaU4X7jeOTicyzCoCbnD4KhN0yEXxkCsRV7leA6pGirT9tqsSrVZiJafwe
RtEkX9eD5fFyG/NyVwshs2o/NsRRcVTdJGX3zLoOrUwp6SZVWumJ26nLZZSU7T7WaJVKMilicUNr
G3jMfEmVmLIwqKWWJJKlWncVNF5yO4+ThphfhCxny5y8vLt7xyrc/S0pZNhhNn3t7SLDiVAoFUbJ
i5vup7aziqDYb8beph/+aV3t7P/9WPAfmdKeaTYhyPiEVhliraVJnIWLj23cpd5iN864GINGMQuT
5TBDH2FrBVNbaXIaSb/Fx/UA2l/Bph2lJleSHNpUigDIP7AYtmn3xbid15qk2suV4Zquq0Q67QuY
yHqFPuY4X59tCqtdOTTj95ZTPCdpEVjlwOvz3U99vtvkZJES5dvYDl+vwEFpMgnTFsc9GNtP8LKo
Dqtzgv8ZYNSwLmTiaIxGJjx04thmcnio989SB19nmNcZZotu5SLmKcdNl67TmOs05jqNuU5jpPh2
9AxFOEmaxetSEf6eyle5ysNihXRT82NtavT92xjLHTjaiVL9P8l0J2jHph31yaxz7tZQZ1Nla/gD
UEsDBBQAAgAIAFuJLkr+TWyBeQUAACtBAAA9ABwAc3RvcmFnZS9pbmRleGVkZGIvdmVyc2lvbi1j
aGFuZ2UtZXhjbHVzaXZlLXByaXZhdGUtc3RkZXJyLnR4dFVUCQADHcx6WB3Melh1eAsAAQT1AQAA
BBQAAADtW0tz4kgMvnPKT/ARqjZVfmEMt8RMajnsQA2ZvTd2E7wDbbbthJnL/vZtP+lOP4x5VGZ2
O1U5YEtqtaRPEpQ0mz4uIX6DeDKJ4ugpRnG6+R2gaBujlz8hTuMEBRuAXuAzBigFYUYeGPfGXe8r
iv9+hbPp4xRkYAVSGCQIweJ9m6icn/xbrjly3JFvefbQd81efwdiNDA4wW3iegKOGL0l3+B8DzHI
NXpAEaX/c7yDuD/ozY53T/YQTR+/QCInzQKAQrjdwkgkWUxZmOQXkhdxTltAFBHLBtskhe+cMx7a
aneHQilPONkF2xiiTODwsemq9SlEROdrUvK36iAPuhZRfVqS7fqDS8KQejqZ7EsbNlwF3VOMiTX6
5vfRer0eQgB81zMHCvUTxaGFMNr8YX5DTojoRv9wz/oDRi3LNgdlrD2RExP8gzgXbmEGa/o6FI9u
e06aMBBSKt4KNGxRcOz4hYJyy23yJAOnxWHtZNXnxlsp0et5AzE0APm3hr5vOyPPc43Krb1uohbJ
fk8cD5DROPQ3AyUHI1Od0aZ18IoxCeTmJAUDIVkneFdxlFZp+Aof9KOVOGsXtI8g/EZUWpJQgOoU
P+XpbxKiY8uqQ1QYg7UmzRmEcE5n1ckEV+k12e1zykhAkiBWyvI1DGGaElXujbA0pvFWljEjTpm8
RHyZC2xERXG6B1m4+fTWJB8KcM7IHDBwyyuA7HJFdaAAZPTviG1cd+x5vus43pUliYjPwuy48Jis
3HGF4Fqw9c3bw5Y642awzWPzCFrasnZkdvKUzN6SHJCT04guzjbJnzU0V0NfWcEIEOfv2K/j16Fn
eR9ocx+EynunGcCZrPduaX8wBBlU9e1sC2Q7ni/13Qq+xIhin7GuOLfd+QPuSHIhfLQ0/rSLWpur
hIlj+n4TJvJiMacRc1qpOKpDfSAaBLn7yGlG3Q4Tfx3ibNMUCrpKkEbLOPaoxjHz5rEGfdP0Rnlj
Snpm1y4xfmKIlaWRaUnZz3VfxlW8r/sXDCL4GcIIRidVOssmaREeBM/PqIBU717gYL76ixinzDv3
pD4Zd3yzzVGygjIqIPMbH+kI3F+zOX6IIk5m5fKF7H2XBr9V3zkqY1EWocILsiLr0GxVyGFrBS+a
A1yLrRXfvnhaSZqqsy7HIEk0otgAUe4QY76sATebGpbtWO7QsV1nNPIcuxJHy2IuR0R8hgdKbJPq
VCyfvsdpjnhebybUDjjOaN5ljl9lniOJaSEzTEcvGf0QbLcrcotB668+gSjaJIkzuH5kMtyiI2i0
MMRNTWkS9RyV3/avCt86Z7Shls4t3DO1/xoyRaPSkKgx1WQwCZTKb3hfih/hBFF72msYJlh6AoEI
Q8AIOL48BQeLbuajo14ew9Icf3HoLgSRQpXa6utkxzg+taBWXwo+vtxpvNwEL5dFq0abRptGm0ab
RptGm0abRptGm0abRptGm0abRptGm0abRptGm0abRptGm0abRptGm0abRptGm0bbT4a2681kJbtd
nLGDY4d4uw2K5+rJusssebnWreNj7+/ADIBxL1tGi0pDqXZu3ltMtWBQT34JmWTTXwpi6aBWydQM
dClHs8pFtVNns4TanGLETkNZolPYQWDH882zJ3p/lUndQBTL3MiYAMxCG95JaEheWyW4BfbrOJ9F
q7OYQA8qgQlGbXP2Kkc+rDOImVHeoIrWeky34xStxHinrYYy61r/w33SD1nkuz6GbrTswpzxAYsX
JjQvWtO83gYANzrfrIddbz/Ad7vsB/x0Sfzs4f80S/ZMOrCcfG+YbTS4NWdCVK4kC52sXJdmRe/A
jxUsns+q3urdOf7QO/2ccvdYuYTHr4V3pmbSVmW/u+5i/ts++BdQSwMEFAACAAgAW4kuSu1WATeI
BQAA0kMAADUAHABzdG9yYWdlL2luZGV4ZWRkYi92ZXJzaW9uLWNoYW5nZS1leGNsdXNpdmUtc3Rk
ZXJyLnR4dFVUCQADHsx6WB7Melh1eAsAAQT1AQAABBQAAADtXN1v4jgQf+8Tf4LfFqStlG8Cby1s
dUing9t2790kpuQaHC5J2+vL/e1nJyQ4+CME6LW38krVijAzHs/M72enmulsenuP0heUjschzOES
ZmiSYIyCPErwAuEwwo+TOMkQuAamYwxtZ+ibnuWOXOvqB47+ekaz6e2U0xyPA6GVuzTZTOII4ZzY
6x3aNJyrmcqfwkR4uielfqsP/Q2M8ABwRltN9VlLluMPrgQ2IvySPKH5FqWQGrrB4UMKcQYLsw/R
BqX9ARuGZIvw9PY7InayfAJxgOIYhSLLYknq2f/Jni7Dz1OGchcSheJdlJICkOuuIQ5jVH2uXciI
8w9rlCIAyY/p+r5l24bvg22ZOZqUO7JMkr6RrKAY5bWNqob28X5I6vwJJRXfCjzmHvUHoG/8PVyt
Vi6CcGT7xoBotm65WOwykRl6nlNHppupRbLdkvqFGNRZ/Apw8gpy1RptXk+e05RUYL2SQoGIrJJ0
s9Moo1LrFTnoh0uhZpmuWxg8EZfuSSmgq/vff41yKsU+HY8fUT5Pv2VEMY6ydWVhhlcJWaDCNFlJ
os4vBIpH5BNYRTECX3pfAHE2jLInxU7DKJzyLjP1F1AAc4qihP7TVoSmWRShDAaVJ/UaRHDOMvJ4
nO6oOdlsqWQoEElw08r9cxCgLCOuXIOgzCcg62U0kVHW4DRSTtRgbYqEbgvzYP3tpSau/W58e2gM
Goinp4dsc8XJwmAY9HskNo4z8jzfsW3vwpZEwifRxqjImOyo5A6RSzGHb7w/czBrvBtz0Nrc8wYb
WSs05JmSkQsVaiCeWjTIP3M4gi6h+A6ZOpOVlIwyP/DzMmXheqb3gSnzYWCoLhwkZmn+R8ksE+LE
I2KuHS03rxTBHMl0+duXZXv+6VcmSXEt0WOEGfkZPuYUO9RSXnTKyujI73sPmQ9kmQkNGj3t9lUJ
XqN8XbM7S+2mZYD9pRTs6ZJmGPmG4Q3pTZRckh2rBOaRiS13yzwo3BQEhDumfmwfUxii3xAKUXjU
8WRahMvQq+D557sHdzxEmVeHAgvz5Z8kVSXJXZMjDvQGXJw5yaahnEEfjf9ejkD+mbDcTRhyNncF
uJB9v9thHYp9GBvbcjzjCH/nuESGDC/CDTZNVkBpdchuHje8aS79LbFWvPzxshLKqZiXU5CQjag2
YEgTAub3FfxnU2Batum4tjU0PMNyPfVhtZA50TEioB/AOF4ShwdqtidrTkSZlVDm5PJV0NAWLcFW
ZkO4ZpOaoue4fLG/KFQqfLYhhMUx90ydv1pMcTGoRdT1W7OF8lXtOz05SMGmxf+9ryAp4g2yonj2
Jev6juO3mEJBktLf7zyhN5WloSe3RHBzrBnfdq2jMLToFnoWMfL6l3Lx2WW/EFQZc0Dv3hw7YuDY
g293///4Y0lj7dNh7bxK10jVSNVI1UjVSNVI1UjVSNVI1UjVSNVI1UjVSNVI1UjVSNVI1UjVSNVI
1UjVSNVI1UjVSNVI1UjVSNVI/Q+Rerm+umSzifJm899rFMeT4rm6V/O8SJ7vdWsL4OEeGk183Jct
LWtloFRjW4cRU426VN17QiVZB59auJu7TPOe0Owx0ejUtSdapdmZbXu+cc5MpawHUFQGXBefAAdC
r3sSGUIJyyRtQcwqou2BFQF8vsbjg6gwTCTowqab2ZHdzSpHaaPLuwxK0ZndO6GlWZLKuwhH2foX
ukHisXRegJ0APFZJXPQHRawwJRjz9B1DDUCFuXNwcDLNfq56fKfhpcYaHzAJYyBj8A4sd8JwCDdV
UY/7XW50xHe6jI78PJMY5C69bdCBaY/KyzRzY+BG3olQOZ4uTLJydL5pegPflqh4Pttdkg7W8V3v
+HXKOXTlUCX/JwIOiWgXkV53M92kf+4c/AtQSwMEFAACAAgAXIkuSrx94BLCAwAAHhUAAEkAHABz
dG9yYWdlL2luZGV4ZWRkYi92ZXJzaW9uY2hhbmdlcmVxdWVzdC1hY3RpdmVkb21vYmplY3QtcHJp
dmF0ZS1zdGRlcnIudHh0VVQJAAMfzHpYH8x6WHV4CwABBPUBAAAEFAAAAO1YTW+bQBC9+5SfwBFL
rYQBY+JbghvVh9ZRk/a+hnG8KuzShSTtpb+9Axi8wLK4+VBbqZFyMJ6PtzNv3o5Zry5vQDyAWC4j
kpMtySDgjEGYU86ugUWU3QUxz8B4a8xca+G4C3/m2fPzuT35zOi3e1ivLlc9z+UyVEa5EjwJYgos
x3hn3ZiWO1nr8JQhoqcjqfxHMZgJoWxq9IKOhjLlSLbrTyeKGJQ98K+wSUGQItAFi24FYRkpw97S
BIQ5lcvAU2Cry0+AcbI8ICyEOIZIFVltWSD7l+L9p+HfQ8NhCFzjeEUFEkAqYVig7AVRofrZe2ZO
DdP6vtjtdnMgxJ/Z1rTiyxVm5OIHNghiyKG2r+l0LP0tb1qptNR8q0A4AvDc8UuAw5XbExbFsCqT
jZsdPjd9yhDX7R4EGAT/Z3Pft52F57lGWtF78nuhrnmaIpUJM5qGvjEYfzRyXY4x1MG9EEjGJpPG
AU12XCQHj6oqjV/ZAzPaKj2rdl2S8CtCukEq6KoZ0WjVt38dilpQU1TJwRpJkwMNN7IyLpfiIJE8
SQvLSGHCWTvKzX0YQpYhlLdGWBXTwHxZUUWatbQFe1kEbEJFNEtJHu7fPTQCIp3GWVjT1rgVKj50
uFLhpQEyzDOsjeuee57vOo7Xv9g0hR6dtPOyzkMXTU+CX2rYfOv1h03K8WrDVjDqOGpyZe0Iez40
d0Vx5SkqPS38m82t7dy3pvox3HTcX6Yrc2/m/cGK+STUnjvLici/VOMYIIg7kO7MkbVBAMlhyLe/
OtiO5w/2bgt3lEnu63YrnromfIAEpQH95Gj9bM9aJ16EJo7l+w1NhgV6IyvTafJ8hCN9QARB0T7M
ZtRrJPbrkeb7RpxlZcblxjjudsZRNwuugW9Z3qJY6HDXdO1KlU+kWHUdSQ9KmB0eKW+Zz+mdIBF8
BIggOul2mdkoavCoeP6EW6cF+dC4psNHdrR8XU/hG/IkoXm7ZI80joPyub5UYd3o0czOq6DesIqb
Q4wNu2doLTa9L3sjpCqU7sdHt2K6La0WUKXTgG6EGmPZUoHbHLl9rnVwTimMYYYkjreIYqrXbUym
zNJWaxRr6zkvCQYELFAxonWaxmjSLdHARChsNuJiy8XI8OyQ6RtWa+XfdwV0qiKJkkIPi8McNu2L
XQ6ipbfBgYG1lv6m1A208ooymu3fFwdExIM7hG4h77+c6Z47y3mq++E8HEa+gMoYR3LPnOKdSFs7
eq9w0Kh63aI8vvZVUDt0Qn5soXy+PshlJ48/907PU71XmfwCUEsDBBQAAgAIAFyJLkompbM7/QMA
AB8VAABBABwAc3RvcmFnZS9pbmRleGVkZGIvdmVyc2lvbmNoYW5nZXJlcXVlc3QtYWN0aXZlZG9t
b2JqZWN0LXN0ZGVyci50eHRVVAkAAyDMelggzHpYdXgLAAEE9QEAAAQUAAAAzVhLb+JIEL5zyk/o
24C0I/mFMdwSM9EijYbMJLP3xi6gFdPtbTvJzmV/+1bb2PjZhjy0EykHmnr1V1VfFb1a3tyDfAa5
WIQsvGWcJfs/KQ8jxnd/gUyY4P6e8h08SMoTGqR4QD6Tq9FPzv5+gtXyZklTuqEJ+IJzyL4fMqX0
8d90jJntzDzTtaaeY4zGB8r4hLQMD5kbdWgw/iweYR2DpCqiax5W4n9gB5DjyWh1uruIgS9vfgDa
SVKf8gCiCMIuy92SGSQfaC9sgXwHPEQk/Egk0ABzPrX06Qk6rdxKcfAjBjztSNDccPTxZCbC10eS
6w/G0F8kA6bGVUuW403eUjaV08UizjEstTK5WyYRjbHxz2y73U6BUs9xjYkmfKFxmhnT6O5VW0Dx
uQwkwYs/7EECofhvTj3Psm3D88gxYnWTW3Qj5C/MKESQljaK+jvl6kGUue+U1HzbEXHraDypgjW3
PWOCmoNXzpy9DzIz13VKZC4zdSfiGLNNOSmz+Afh4oWkOh9DUftPUmL1lp40CiiyFfJw1MhRKfWy
HIzDTTe1ZrI3NHjEkO6xFGB0//0rS5VU9XSx2EG6ll8SVIyQiQsLK74V6KDgA/TUo952RLIj/ES2
LALy6eoTwWBDljzqR8GyHXKl/gLV/C3FroT+O1SEppkVYV8bFJGUPlBwXWXzxUIeaV0cYiUZdogI
Xrdy/xQEkCQYymcS5Pkkz/m4Iyyp8SGWkzJYmkLoYpoG+y/PJelV+MeeGZNax6vJ03e5bCpVepiM
rxAbx5m7rufYttsenhqgB5t9nuHcNxxbY+O9+t0zPr7fKz4+rN9VRZ26vYqsFaqZ09P6CtxaPypN
A//M2ZxOkYDfygTaLl43vL9PUqeu6f6PgHs00A55xEymfWv1wKYkgaagW8nr25Jlu15v6jewY7yi
vqqn4rWbUU+9NL1pl4u8Mi7k1FOclQ/oxlegqQlzqkrywtJ9yahVOjUtg5yWSHIiO5Vh8AzDnanN
EZdax8qp9MzE5ret7Yz1zwUgrdHwM95JGsI3gBDCs0aCaSETwUvH+e+3e144uF69dDd1A3E4sLSe
wBcWRX52rk9cUJTdoGf7Q6Je87xT+vonaN6hthu1vmwltAso3W+uJmK6XbMg0U6lHu4I9MKXhYvk
cqeL4Rw0yDigUbTBICeDbyCdXuo0jSxtvOWXaA+H+l1lULtNKTRqQtTTBh0ya3m9EXKgY7ZY3mte
0PXvx0INVCpM1EHJ6jLHDf16m4KsUX4OSkbTV6/gt55Unvcm17pJkopYN2h7XqgaUy2zcSpX01Yv
OnUKaD1AoVD+WNR5Ie1DVt30gf7aQHa+OrJew483dc/3k78KXQjHf1BLAwQKAAAAAAAFiS5KAAAA
AAAAAAAAAAAADwAcAHN0b3JhZ2Uvd2Vic3FsL1VUCQADest6WIXPelh1eAsAAQT1AQAABBQAAABQ
SwMEFAACAAgAAIkuSjdnhOCnAAAA0gAAAC0AHABzdG9yYWdlL3dlYnNxbC9hbHRlci10by1pbmZv
LXRhYmxlLXN0ZGVyci50eHRVVAkAA2/Lelhvy3pYdXgLAAEE9QEAAAQUAAAANcxLC8IwEATgu79i
j+1BI6iXIIJoTyKFiu05SbcQSHfDNvHx732gtxn4ZqqmqRsNVzI2ICSGlIWACTw5wREpmQAmJ57f
jMt5hGIJxAkMAYqwlDPVcsgjTupoklFVd1Ed2pNP6sJZHH7agQXVmfsc3uyOtn9Layb8Tj5h4WIs
Vpt1CRqqh8OYPFMt2xv7fge/B63/XOuIMrCMdUTaU9+i+OFZWOZQzl5QSwMEFAACAAgAAIkuSjdn
hOCnAAAA0gAAADUAHABzdG9yYWdlL3dlYnNxbC9jaGFuZ2UtdmVyc2lvbi1oYW5kbGUtcmV1c2Ut
c3RkZXJyLnR4dFVUCQADb8t6WG/Lelh1eAsAAQT1AQAABBQAAAA1zEsLwjAQBOC7v2KP7UEjqJcg
gmhPIoWK7TlJtxBId8M28fHvfaC3GfhmqqapGw1XMjYgJIaUhYAJPDnBESmZACYnnt+My3mEYgnE
CQwBirCUM9VyyCNO6miSUVV3UR3ak0/qwlkcftqBBdWZ+xze7I62f0trJvxOPmHhYixWm3UJGqqH
w5g8Uy3bG/t+B78Hrf9c64gysIx1RNpT36L44VlY5lDOXlBLAwQUAAIACAAAiS5KN2eE4KcAAADS
AAAARgAcAHN0b3JhZ2Uvd2Vic3FsL2NoYW5nZS12ZXJzaW9uLW5vLWNyYXNoLW9uLXByZWZsaWdo
dC1mYWlsdXJlLXN0ZGVyci50eHRVVAkAA2/Lelhvy3pYdXgLAAEE9QEAAAQUAAAANcxLC8IwEATg
u79ij+1BI6iXIIJoTyKFiu05SbcQSHfDNvHx732gtxn4ZqqmqRsNVzI2ICSGlIWACTw5wREpmQAm
J57fjMt5hGIJxAkMAYqwlDPVcsgjTupoklFVd1Ed2pNP6sJZHH7agQXVmfsc3uyOtn9Layb8Tj5h
4WIsVpt1CRqqh8OYPFMt2xv7fge/B63/XOuIMrCMdUTaU9+i+OFZWOZQzl5QSwMEFAACAAgAAIku
SuwJfa0XAQAALwQAACgAHABzdG9yYWdlL3dlYnNxbC9jaGFuZ2UtdmVyc2lvbi1zdGRlcnIudHh0
VVQJAANvy3pYb8t6WHV4CwABBPUBAAAEFAAAAO3RwUoDMRAG4HufYk6yhWq06iWIUHS9WCm22j1K
NplKNDuzZidV397d1lIKHsSTgreE/JP8H8mn08lUwz2ZMiAIg6RIwASebMQKSUwAk4T3l8amVEF2
CMQChgBj5NjvqTmHVGGjLo0YlRczVWB57UXNOEWL3e6CI6obdim0sVcsXZssTYOrkW5xYOs6Oz49
6YOG/M1iLZ5pEs+W7N05fN6g9SaudY1xwbGa1EgjcnOMfvGelcyh38v/RX9FNLsde0HYPAUL4wO6
TtigwFPbjUx4qNit1MVoPFiD9HbENxDYPqP7trEORrpeqnkJat1gh3g0HHbEruhWtZvTmltUZpka
geLuqj2X6OkR9gbw0y87/cL0+z7uA1BLAwQUAAIACAAAiS5KN2eE4KcAAADSAAAAMgAcAHN0b3Jh
Z2Uvd2Vic3FsL2Nsb3NlLWR1cmluZy1zdHJlc3MtdGVzdC1zdGRlcnIudHh0VVQJAANwy3pYcMt6
WHV4CwABBPUBAAAEFAAAADXMSwvCMBAE4Lu/Yo/tQSOolyCCaE8ihYrtOUm3EEh3wzbx8e99oLcZ
+GaqpqkbDVcyNiAkhpSFgAk8OcERKZkAJiee34zLeYRiCcQJDAGKsJQz1XLII07qaJJRVXdRHdqT
T+rCWRx+2oEF1Zn7HN7sjrZ/S2sm/E4+YeFiLFabdQkaqofDmDxTLdsb+34Hvwet/1zriDKwjHVE
2lPfovjhWVjmUM5eUEsDBBQAAgAIAACJLkqXJNZmrQAAAKQBAAA0ABwAc3RvcmFnZS93ZWJzcWwv
ZGF0YWJhc2UtbG9jay1hZnRlci1yZWxvYWQtc3RkZXJyLnR4dFVUCQADcMt6WHDLelh1eAsAAQT1
AQAABBQAAADdj80KwjAQhO8+xR7bg0ZQL0EE0Z5EChXrOUm3EEh3w5r48/Za0ZfwNgPfNzBV09SN
hjMZGxASQ8pCwASenOCAlEwAkxNPb8blPEAxB+IEhgBFWMqJajnkAa9qb5JR1eWkLmgPPqkTZ3E4
th0LqiN3ObyxO9ruTVpzxY8yhpmLsVisliVoqB4OY/JMtaxv7LsNfBe0/uFaR5SeZagj0pa6FsX3
z8Iyh3JS/d2jF1BLAwQUAAIACAAAiS5KN2eE4KcAAADSAAAAKQAcAHN0b3JhZ2Uvd2Vic3FsL2Vt
cHR5LXN0YXRlbWVudC1zdGRlcnIudHh0VVQJAANwy3pYcMt6WHV4CwABBPUBAAAEFAAAADXMSwvC
MBAE4Lu/Yo/tQSOolyCCaE8ihYrtOUm3EEh3wzbx8e99oLcZ+GaqpqkbDVcyNiAkhpSFgAk8OcER
KZkAJiee34zLeYRiCcQJDAGKsJQz1XLII07qaJJRVXdRHdqTT+rCWRx+2oEF1Zn7HN7sjrZ/S2sm
/E4+YeFiLFabdQkaqofDmDxTLdsb+34Hvwet/1zriDKwjHVE2lPfovjhWVjmUM5eUEsDBBQAAgAI
AAGJLko3Z4TgpwAAANIAAAAqABwAc3RvcmFnZS93ZWJzcWwvZXhlY3V0ZS1zcWwtYXJncy1zdGRl
cnIudHh0VVQJAANxy3pYcct6WHV4CwABBPUBAAAEFAAAADXMSwvCMBAE4Lu/Yo/tQSOolyCCaE8i
hYrtOUm3EEh3wzbx8e99oLcZ+GaqpqkbDVcyNiAkhpSFgAk8OcERKZkAJiee34zLeYRiCcQJDAGK
sJQz1XLII07qaJJRVXdRHdqTT+rCWRx+2oEF1Zn7HN7sjrZ/S2sm/E4+YeFiLFabdQkaqofDmDxT
Ldsb+34Hvwet/1zriDKwjHVE2lPfovjhWVjmUM5eUEsDBBQAAgAIAAGJLko3Z4TgpwAAANIAAAAy
ABwAc3RvcmFnZS93ZWJzcWwvZXhlY3V0ZS1zcWwtcm93c0FmZmVjdGVkLXN0ZGVyci50eHRVVAkA
A3HLelhxy3pYdXgLAAEE9QEAAAQUAAAANcxLC8IwEATgu79ij+1BI6iXIIJoTyKFiu05SbcQSHfD
NvHx732gtxn4ZqqmqRsNVzI2ICSGlIWACTw5wREpmQAmJ57fjMt5hGIJxAkMAYqwlDPVcsgjTupo
klFVd1Ed2pNP6sJZHH7agQXVmfsc3uyOtn9Layb8Tj5h4WIsVpt1CRqqh8OYPFMt2xv7fge/B63/
XOuIMrCMdUTaU9+i+OFZWOZQzl5QSwMEFAACAAgAAYkuSjdnhOCnAAAA0gAAAD8AHABzdG9yYWdl
L3dlYnNxbC9leGVjdXRlc3FsLWFjY2VwdHMtb25seS1vbmUtc3RhdGVtZW50LXN0ZGVyci50eHRV
VAkAA3HLelhxy3pYdXgLAAEE9QEAAAQUAAAANcxLC8IwEATgu79ij+1BI6iXIIJoTyKFiu05SbcQ
SHfDNvHx732gtxn4ZqqmqRsNVzI2ICSGlIWACTw5wREpmQAmJ57fjMt5hGIJxAkMAYqwlDPVcsgj
TupoklFVd1Ed2pNP6sJZHH7agQXVmfsc3uyOtn9Layb8Tj5h4WIsVpt1CRqqh8OYPFMt2xv7fge/
B63/XOuIMrCMdUTaU9+i+OFZWOZQzl5QSwMEFAACAAgAAokuSjdnhOCnAAAA0gAAAC4AHABzdG9y
YWdlL3dlYnNxbC9oYXNoLWNoYW5nZS13aXRoLXhoci1zdGRlcnIudHh0VVQJAANzy3pYc8t6WHV4
CwABBPUBAAAEFAAAADXMSwvCMBAE4Lu/Yo/tQSOolyCCaE8ihYrtOUm3EEh3wzbx8e99oLcZ+Gaq
pqkbDVcyNiAkhpSFgAk8OcERKZkAJiee34zLeYRiCcQJDAGKsJQz1XLII07qaJJRVXdRHdqTT+rC
WRx+2oEF1Zn7HN7sjrZ/S2sm/E4+YeFiLFabdQkaqofDmDxTLdsb+34Hvwet/1zriDKwjHVE2lPf
ovjhWVjmUM5eUEsDBBQAAgAIAAKJLkqXJNZmrQAAAKQBAAA/ABwAc3RvcmFnZS93ZWJzcWwvbXVs
dGlwbGUtZGF0YWJhc2VzLWdhcmJhZ2UtY29sbGVjdGlvbi1zdGRlcnIudHh0VVQJAANzy3pYc8t6
WHV4CwABBPUBAAAEFAAAAN2PzQrCMBCE7z7FHtuDRlAvQQTRnkQKFes5SbcQSHfDmvjz9lrRl/A2
A983MFXT1I2GMxkbEBJDykLABJ6c4ICUTACTE09vxuU8QDEH4gSGAEVYyolqOeQBr2pvklHV5aQu
aA8+qRNncTi2HQuqI3c5vLE72u5NWnPFjzKGmYuxWKyWJWioHg5j8ky1rG/suw18F7T+4VpHlJ5l
qCPSlroWxffPwjKHclL93aMXUEsDBBQAAgAIAAKJLkp+e1B+sAAAAHYCAABEABwAc3RvcmFnZS93
ZWJzcWwvbXVsdGlwbGUtdHJhbnNhY3Rpb25zLW9uLWRpZmZlcmVudC1oYW5kbGVzLXN0ZGVyci50
eHRVVAkAA3PLelhzy3pYdXgLAAEE9QEAAAQUAAAA7Y/NCsIwEITvPsUe24NGUC9BBNGeRAot6jlJ
Vwiku2FNqr69P+g7ePA2A98MfFXT1I2GAxkbEBJDykLABJ6cYI+UTACTE48H43LuoZgCcQJDgCIs
5UgdOeQeL2prklHVqVUntDufVMtZHL7ahgXVnrscntgVbfckrbnge/IKExdjMVvMS9BQ3RzG5Jlq
WQ7suxV8HrT+4lpHlDNLX0ekNXVHFH++F5Y5lKPqb/TzRg9QSwMEFAACAAgAAokuSjdnhOCnAAAA
0gAAAC8AHABzdG9yYWdlL3dlYnNxbC9tdWx0aXBsZS10cmFuc2FjdGlvbnMtc3RkZXJyLnR4dFVU
CQADdMt6WHTLelh1eAsAAQT1AQAABBQAAAA1zEsLwjAQBOC7v2KP7UEjqJcggmhPIoWK7TlJtxBI
d8M28fHvfaC3GfhmqqapGw1XMjYgJIaUhYAJPDnBESmZACYnnt+My3mEYgnECQwBirCUM9VyyCNO
6miSUVV3UR3ak0/qwlkcftqBBdWZ+xze7I62f0trJvxOPmHhYixWm3UJGqqHw5g8Uy3bG/t+B78H
rf9c64gysIx1RNpT36L44VlY5lDOXlBLAwQUAAIACAACiS5KN2eE4KcAAADSAAAAKAAcAHN0b3Jh
Z2Uvd2Vic3FsL251bGwtY2FsbGJhY2tzLXN0ZGVyci50eHRVVAkAA3TLelh0y3pYdXgLAAEE9QEA
AAQUAAAANcxLC8IwEATgu79ij+1BI6iXIIJoTyKFiu05SbcQSHfDNvHx732gtxn4ZqqmqRsNVzI2
ICSGlIWACTw5wREpmQAmJ57fjMt5hGIJxAkMAYqwlDPVcsgjTupoklFVd1Ed2pNP6sJZHH7agQXV
mfsc3uyOtn9Layb8Tj5h4WIsVpt1CRqqh8OYPFMt2xv7fge/B63/XOuIMrCMdUTaU9+i+OFZWOZQ
zl5QSwMEFAACAAgAAokuSpck1matAAAApAEAAEgAHABzdG9yYWdlL3dlYnNxbC9vcGVuLWRhdGFi
YXNlLWNyZWF0aW9uLWNhbGxiYWNrLWlzb2xhdGVkLXdvcmxkLXN0ZGVyci50eHRVVAkAA3TLelh0
y3pYdXgLAAEE9QEAAAQUAAAA3Y/NCsIwEITvPsUe24NGUC9BBNGeRAoV6zlJtxBId8Oa+PP2WtGX
8DYD3zcwVdPUjYYzGRsQEkPKQsAEnpzggJRMAJMTT2/G5TxAMQfiBIYARVjKiWo55AGvam+SUdXl
pC5oDz6pE2dxOLYdC6ojdzm8sTva7k1ac8WPMoaZi7FYrJYlaKgeDmPyTLWsb+y7DXwXtP7hWkeU
nmWoI9KWuhbF98/CModyUv3doxdQSwMEFAACAAgAAokuSh0wZz2yAAAASAMAADkAHABzdG9yYWdl
L3dlYnNxbC9vcGVuLWRhdGFiYXNlLWNyZWF0aW9uLWNhbGxiYWNrLXN0ZGVyci50eHRVVAkAA3TL
elh0y3pYdXgLAAEE9QEAAAQUAAAA7Y/BCsIwEETvfsUe24NGUC9BBNGeRAoV9ZykKwTS3bAmVf/e
KvoLnrzNwJuBVzVN3Wg4krEBITGkLARM4MkJdkjJBDA58bg3LucOiikQJzAEKMJSjtSJQ+7wqrYm
GVWdD+qMdueTOnAWh6+2YUG15zaHAbuhbQfSmiu+J68wcTEWs8W8BA3V3WFMnqmWZc++XcHnQesv
rnVEubB0dURaU3tC8ZdHYZlDOar+Rn+jnxs9AVBLAwQUAAIACAADiS5KN2eE4KcAAADSAAAANQAc
AHN0b3JhZ2Uvd2Vic3FsL29wZW4tZGF0YWJhc2UtZW1wdHktdmVyc2lvbi1zdGRlcnIudHh0VVQJ
AAN1y3pYdct6WHV4CwABBPUBAAAEFAAAADXMSwvCMBAE4Lu/Yo/tQSOolyCCaE8ihYrtOUm3EEh3
wzbx8e99oLcZ+GaqpqkbDVcyNiAkhpSFgAk8OcERKZkAJiee34zLeYRiCcQJDAGKsJQz1XLII07q
aJJRVXdRHdqTT+rCWRx+2oEF1Zn7HN7sjrZ/S2sm/E4+YeFiLFabdQkaqofDmDxTLdsb+34Hvwet
/1zriDKwjHVE2lPfovjhWVjmUM5eUEsDBBQAAgAIAAOJLko3Z4TgpwAAANIAAAA0ABwAc3RvcmFn
ZS93ZWJzcWwvb3Blbi1kYXRhYmFzZS1leHBhbmQtcXVvdGEtc3RkZXJyLnR4dFVUCQADdct6WHXL
elh1eAsAAQT1AQAABBQAAAA1zEsLwjAQBOC7v2KP7UEjqJcggmhPIoWK7TlJtxBId8M28fHvfaC3
GfhmqqapGw1XMjYgJIaUhYAJPDnBESmZACYnnt+My3mEYgnECQwBirCUM9VyyCNO6miSUVV3UR3a
k0/qwlkcftqBBdWZ+xze7I62f0trJvxOPmHhYixWm3UJGqqHw5g8Uy3bG/t+B78Hrf9c64gysIx1
RNpT36L44VlY5lDOXlBLAwQUAAIACAADiS5KZdR0OwsBAAC4AgAAOQAcAHN0b3JhZ2Uvd2Vic3Fs
L29wZW4tZGF0YWJhc2Utc2V0LWVtcHR5LXZlcnNpb24tc3RkZXJyLnR4dFVUCQADdct6WHXLelh1
eAsAAQT1AQAABBQAAADdkc1LxDAQxe/7V8xJWlC7foEEEcTtSaTQ6u5xSdOpBNOZMk2q+9/b1I/D
Lnjy5C1h3nu8+U1elkWp4Jl07RA8g6AXiyOCs4MHbqHRXtd6QCDd4QAtC7DYF0vQWofb7XKRrdmF
aZatJmmWb6psg/WD9VnFQQzG3z0LZo/cBDfJ3rD+Dp0t8fEk2ryinJq+T67Pz1JQUDM7+PIqtSdU
qkGHHou5SmKYprY/4gpNEOt3n9NohaPjX7JWMcsyTQ0xXeT7THwQAiawZAQ7JK8d6OD5ZNQmhA6S
JRB70AQowpL+CZEZxcXVZUSRvxvsY8FCbka2ze3hLkr1KNNxuqJHuqNmjWLbXRIh/seNPgBQSwME
FAACAAgAA4kuSpck1matAAAApAEAAEUAHABzdG9yYWdlL3dlYnNxbC9vcGVuLWRhdGFiYXNlLXdo
aWxlLXRyYW5zYWN0aW9uLWluLXByb2dyZXNzLXN0ZGVyci50eHRVVAkAA3XLelh1y3pYdXgLAAEE
9QEAAAQUAAAA3Y/NCsIwEITvPsUe24NGUC9BBNGeRAoV6zlJtxBId8Oa+PP2WtGX8DYD3zcwVdPU
jYYzGRsQEkPKQsAEnpzggJRMAJMTT2/G5TxAMQfiBIYARVjKiWo55AGvam+SUdXlpC5oDz6pE2dx
OLYdC6ojdzm8sTva7k1ac8WPMoaZi7FYrJYlaKgeDmPyTLWsb+y7DXwXtP7hWkeUnmWoI9KWuhbF
98/CModyUv3doxdQSwMEFAACAAgAA4kuSjdnhOCnAAAA0gAAADkAHABzdG9yYWdlL3dlYnNxbC9w
cml2YXRlLWJyb3dzaW5nLW5vcmVhZC1ub3dyaXRlLXN0ZGVyci50eHRVVAkAA3XLelh1y3pYdXgL
AAEE9QEAAAQUAAAANcxLC8IwEATgu79ij+1BI6iXIIJoTyKFiu05SbcQSHfDNvHx732gtxn4Zqqm
qRsNVzI2ICSGlIWACTw5wREpmQAmJ57fjMt5hGIJxAkMAYqwlDPVcsgjTupoklFVd1Ed2pNP6sJZ
HH7agQXVmfsc3uyOtn9Layb8Tj5h4WIsVpt1CRqqh8OYPFMt2xv7fge/B63/XOuIMrCMdUTaU9+i
+OFZWOZQzl5QSwMEFAACAAgAA4kuSn57UH6wAAAAdgIAAEcAHABzdG9yYWdlL3dlYnNxbC9yZWFk
LWFuZC13cml0ZS10cmFuc2FjdGlvbnMtZG9udC1ydW4tdG9nZXRoZXItc3RkZXJyLnR4dFVUCQAD
dst6WHbLelh1eAsAAQT1AQAABBQAAADtj80KwjAQhO8+xR7bg0ZQL0EE0Z5ECi3qOUlXCKS7YU2q
vr0/6Dt48DYD3wx8VdPUjYYDGRsQEkPKQsAEnpxgj5RMAJMTjwfjcu6hmAJxAkOAIizlSB055B4v
amuSUdWpVSe0O59Uy1kcvtqGBdWeuxye2BVt9yStueB78goTF2MxW8xL0FDdHMbkmWpZDuy7FXwe
tP7iWkeUM0tfR6Q1dUcUf74XljmUo+pv9PNGD1BLAwQUAAIACAADiS5KlyTWZq0AAACkAQAAQAAc
AHN0b3JhZ2Uvd2Vic3FsL3JlYWQtdHJhbnNhY3Rpb25zLXJ1bm5pbmctY29uY3VycmVudGx5LXN0
ZGVyci50eHRVVAkAA3bLelh2y3pYdXgLAAEE9QEAAAQUAAAA3Y/NCsIwEITvPsUe24NGUC9BBNGe
RAoV6zlJtxBId8Oa+PP2WtGX8DYD3zcwVdPUjYYzGRsQEkPKQsAEnpzggJRMAJMTT2/G5TxAMQfi
BIYARVjKiWo55AGvam+SUdXlpC5oDz6pE2dxOLYdC6ojdzm8sTva7k1ac8WPMoaZi7FYrJYlaKge
DmPyTLWsb+y7DXwXtP7hWkeUnmWoI9KWuhbF98/CModyUv3doxdQSwMEFAACAAgAA4kuSjdnhOCn
AAAA0gAAACgAHABzdG9yYWdlL3dlYnNxbC9zcWwtZGF0YS10eXBlcy1zdGRlcnIudHh0VVQJAAN2
y3pYdst6WHV4CwABBPUBAAAEFAAAADXMSwvCMBAE4Lu/Yo/tQSOolyCCaE8ihYrtOUm3EEh3wzbx
8e99oLcZ+GaqpqkbDVcyNiAkhpSFgAk8OcERKZkAJiee34zLeYRiCcQJDAGKsJQz1XLII07qaJJR
VXdRHdqTT+rCWRx+2oEF1Zn7HN7sjrZ/S2sm/E4+YeFiLFabdQkaqofDmDxTLdsb+34Hvwet/1zr
iDKwjHVE2lPfovjhWVjmUM5eUEsDBBQAAgAIAAOJLkqXJNZmrQAAAKQBAABBABwAc3RvcmFnZS93
ZWJzcWwvc3RhdGVtZW50LWVycm9yLWNhbGxiYWNrLWlzb2xhdGVkLXdvcmxkLXN0ZGVyci50eHRV
VAkAA3bLelh2y3pYdXgLAAEE9QEAAAQUAAAA3Y/NCsIwEITvPsUe24NGUC9BBNGeRAoV6zlJtxBI
d8Oa+PP2WtGX8DYD3zcwVdPUjYYzGRsQEkPKQsAEnpzggJRMAJMTT2/G5TxAMQfiBIYARVjKiWo5
5AGvam+SUdXlpC5oDz6pE2dxOLYdC6ojdzm8sTva7k1ac8WPMoaZi7FYrJYlaKgeDmPyTLWsb+y7
DXwXtP7hWkeUnmWoI9KWuhbF98/CModyUv3doxdQSwMEFAACAAgABIkuSjdnhOCnAAAA0gAAADIA
HABzdG9yYWdlL3dlYnNxbC9zdGF0ZW1lbnQtZXJyb3ItY2FsbGJhY2stc3RkZXJyLnR4dFVUCQAD
d8t6WHfLelh1eAsAAQT1AQAABBQAAAA1zEsLwjAQBOC7v2KP7UEjqJcggmhPIoWK7TlJtxBId8M2
8fHvfaC3GfhmqqapGw1XMjYgJIaUhYAJPDnBESmZACYnnt+My3mEYgnECQwBirCUM9VyyCNO6miS
UVV3UR3ak0/qwlkcftqBBdWZ+xze7I62f0trJvxOPmHhYixWm3UJGqqHw5g8Uy3bG/t+B78Hrf9c
64gysIx1RNpT36L44VlY5lDOXlBLAwQUAAIACAAEiS5KlyTWZq0AAACkAQAAQwAcAHN0b3JhZ2Uv
d2Vic3FsL3N0YXRlbWVudC1zdWNjZXNzLWNhbGxiYWNrLWlzb2xhdGVkLXdvcmxkLXN0ZGVyci50
eHRVVAkAA3fLelh3y3pYdXgLAAEE9QEAAAQUAAAA3Y/NCsIwEITvPsUe24NGUC9BBNGeRAoV6zlJ
txBId8Oa+PP2WtGX8DYD3zcwVdPUjYYzGRsQEkPKQsAEnpzggJRMAJMTT2/G5TxAMQfiBIYARVjK
iWo55AGvam+SUdXlpC5oDz6pE2dxOLYdC6ojdzm8sTva7k1ac8WPMoaZi7FYrJYlaKgeDmPyTLWs
b+y7DXwXtP7hWkeUnmWoI9KWuhbF98/CModyUv3doxdQSwMEFAACAAgABIkuSjdnhOCnAAAA0gAA
ACoAHABzdG9yYWdlL3dlYnNxbC9zdWNjZXNzLWNhbGxiYWNrLXN0ZGVyci50eHRVVAkAA3jLelh4
y3pYdXgLAAEE9QEAAAQUAAAANcxLC8IwEATgu79ij+1BI6iXIIJoTyKFiu05SbcQSHfDNvHx732g
txn4ZqqmqRsNVzI2ICSGlIWACTw5wREpmQAmJ57fjMt5hGIJxAkMAYqwlDPVcsgjTupoklFVd1Ed
2pNP6sJZHH7agQXVmfsc3uyOtn9Layb8Tj5h4WIsVpt1CRqqh8OYPFMt2xv7fge/B63/XOuIMrCM
dUTaU9+i+OFZWOZQzl5QSwMEFAACAAgABIkuSjdnhOCnAAAA0gAAAEMAHABzdG9yYWdlL3dlYnNx
bC9zdWNjZXNzLWNhbGxiYWNrLXdoZW4tcGFnZS1kZWZlcnMtbG9hZGluZy1zdGRlcnIudHh0VVQJ
AAN3y3pYd8t6WHV4CwABBPUBAAAEFAAAADXMSwvCMBAE4Lu/Yo/tQSOolyCCaE8ihYrtOUm3EEh3
wzbx8e99oLcZ+GaqpqkbDVcyNiAkhpSFgAk8OcERKZkAJiee34zLeYRiCcQJDAGKsJQz1XLII07q
aJJRVXdRHdqTT+rCWRx+2oEF1Zn7HN7sjrZ/S2sm/E4+YeFiLFabdQkaqofDmDxTLdsb+34Hvwet
/1zriDKwjHVE2lPfovjhWVjmUM5eUEsDBBQAAgAIAASJLko3Z4TgpwAAANIAAAApABwAc3RvcmFn
ZS93ZWJzcWwvdGVzdC1hdXRob3JpemVyLXN0ZGVyci50eHRVVAkAA3jLelh4y3pYdXgLAAEE9QEA
AAQUAAAANcxLC8IwEATgu79ij+1BI6iXIIJoTyKFiu05SbcQSHfDNvHx732gtxn4ZqqmqRsNVzI2
ICSGlIWACTw5wREpmQAmJ57fjMt5hGIJxAkMAYqwlDPVcsgjTupoklFVd1Ed2pNP6sJZHH7agQXV
mfsc3uyOtn9Layb8Tj5h4WIsVpt1CRqqh8OYPFMt2xv7fge/B63/XOuIMrCMdUTaU9+i+OFZWOZQ
zl5QSwMEFAACAAgABIkuSjdnhOCnAAAA0gAAAD4AHABzdG9yYWdlL3dlYnNxbC90cmFuc2FjdGlv
bi1jYWxsYmFjay1leGNlcHRpb24tY3Jhc2gtc3RkZXJyLnR4dFVUCQADeMt6WHjLelh1eAsAAQT1
AQAABBQAAAA1zEsLwjAQBOC7v2KP7UEjqJcggmhPIoWK7TlJtxBId8M28fHvfaC3GfhmqqapGw1X
MjYgJIaUhYAJPDnBESmZACYnnt+My3mEYgnECQwBirCUM9VyyCNO6miSUVV3UR3ak0/qwlkcftqB
BdWZ+xze7I62f0trJvxOPmHhYixWm3UJGqqHw5g8Uy3bG/t+B78Hrf9c64gysIx1RNpT36L44VlY
5lDOXlBLAwQUAAIACAAFiS5KlyTWZq0AAACkAQAAPQAcAHN0b3JhZ2Uvd2Vic3FsL3RyYW5zYWN0
aW9uLWNhbGxiYWNrLWlzb2xhdGVkLXdvcmxkLXN0ZGVyci50eHRVVAkAA3nLelh5y3pYdXgLAAEE
9QEAAAQUAAAA3Y/NCsIwEITvPsUe24NGUC9BBNGeRAoV6zlJtxBId8Oa+PP2WtGX8DYD3zcwVdPU
jYYzGRsQEkPKQsAEnpzggJRMAJMTT2/G5TxAMQfiBIYARVjKiWo55AGvam+SUdXlpC5oDz6pE2dx
OLYdC6ojdzm8sTva7k1ac8WPMoaZi7FYrJYlaKgeDmPyTLWsb+y7DXwXtP7hWkeUnmWoI9KWuhbF
98/CModyUv3doxdQSwMEFAACAAgABYkuSpck1matAAAApAEAAEMAHABzdG9yYWdlL3dlYnNxbC90
cmFuc2FjdGlvbi1lcnJvci1jYWxsYmFjay1pc29sYXRlZC13b3JsZC1zdGRlcnIudHh0VVQJAAN5
y3pYect6WHV4CwABBPUBAAAEFAAAAN2PzQrCMBCE7z7FHtuDRlAvQQTRnkQKFes5SbcQSHfDmvjz
9lrRl/A2A983MFXT1I2GMxkbEBJDykLABJ6c4ICUTACTE09vxuU8QDEH4gSGAEVYyolqOeQBr2pv
klHV5aQuaA8+qRNncTi2HQuqI3c5vLE72u5NWnPFjzKGmYuxWKyWJWioHg5j8ky1rG/suw18F7T+
4VpHlJ5lqCPSlroWxffPwjKHclL93aMXUEsDBBQAAgAIAAWJLko3Z4TgpwAAANIAAAA0ABwAc3Rv
cmFnZS93ZWJzcWwvdHJhbnNhY3Rpb24tZXJyb3ItY2FsbGJhY2stc3RkZXJyLnR4dFVUCQADest6
WHrLelh1eAsAAQT1AQAABBQAAAA1zEsLwjAQBOC7v2KP7UEjqJcggmhPIoWK7TlJtxBId8M28fHv
faC3GfhmqqapGw1XMjYgJIaUhYAJPDnBESmZACYnnt+My3mEYgnECQwBirCUM9VyyCNO6miSUVV3
UR3ak0/qwlkcftqBBdWZ+xze7I62f0trJvxOPmHhYixWm3UJGqqHw5g8Uy3bG/t+B78Hrf9c64gy
sIx1RNpT36L44VlY5lDOXlBLAwQUAAIACAAFiS5KN2eE4KcAAADSAAAALwAcAHN0b3JhZ2Uvd2Vi
c3FsL3RyYW5zYWN0aW9uLXByb3RvdHlwZS1zdGRlcnIudHh0VVQJAAN6y3pYest6WHV4CwABBPUB
AAAEFAAAADXMSwvCMBAE4Lu/Yo/tQSOolyCCaE8ihYrtOUm3EEh3wzbx8e99oLcZ+GaqpqkbDVcy
NiAkhpSFgAk8OcERKZkAJiee34zLeYRiCcQJDAGKsJQz1XLII07qaJJRVXdRHdqTT+rCWRx+2oEF
1Zn7HN7sjrZ/S2sm/E4+YeFiLFabdQkaqofDmDxTLdsb+34Hvwet/1zriDKwjHVE2lPfovjhWVjm
UM5eUEsDBBQAAgAIAAWJLkqXJNZmrQAAAKQBAABFABwAc3RvcmFnZS93ZWJzcWwvdHJhbnNhY3Rp
b24tc3VjY2Vzcy1jYWxsYmFjay1pc29sYXRlZC13b3JsZC1zdGRlcnIudHh0VVQJAAN6y3pYest6
WHV4CwABBPUBAAAEFAAAAN2PzQrCMBCE7z7FHtuDRlAvQQTRnkQKFes5SbcQSHfDmvjz9lrRl/A2
A983MFXT1I2GMxkbEBJDykLABJ6c4ICUTACTE09vxuU8QDEH4gSGAEVYyolqOeQBr2pvklHV5aQu
aA8+qRNncTi2HQuqI3c5vLE72u5NWnPFjzKGmYuxWKyWJWioHg5j8ky1rG/suw18F7T+4VpHlJ5l
qCPSlroWxffPwjKHclL93aMXUEsDBBQAAgAIAHOJLkpIZYWczlgCAFP2PgAZABwAd3B0d2tfcHJv
Y2Vzc19sb2cub3V0LnR4dFVUCQADScx6WAjJelh1eAsAAQT1AQAABBQAAADsvWlz3EaWKPrdv4If
nj3dM04JS2JjPL0OW5LHvuMtLPXtjnjzLiMBJEiYtTWAkqgb98e/RBWXYrGqkAnkcoBKu1umKLHy
ZJ59f/f++7//5+VnmqLVjDTFspqjhtZNffmfy3JxfdEsL9Y1vVgtq+YidMMw+eqd0A9Ezlc//frD
bwf/Pl3QijTtDy3o54u3312Ui4vX/3M5W89p/fodacjr9//48PofNP2vsrn/z/frcpa/fkfT9fXr
GfmyXDebD0MVrdezpn599XnVXGW0auoTcD6dSy48B8cXadlc/PHhu4tVVX4iDb24pV++enX0n//4
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
ABgAAAAAAAAAEADtQeARAgBjcnlwdG8vc3VidGxlL1VUBQADIcl6WHV4CwABBPUBAAAEFAAAAFBL
AQIeAwoAAgAAAESHLkol4NMILAAAACwAAAA+ABgAAAAAAAEAAACkgSgSAgBjcnlwdG8vc3VidGxl
L3JzYS1nZW5lcmF0ZS1rZXktbWFsZm9ybWVkLXBhcmFtZXRlcnMtc3RkZXJyLnR4dFVUBQADIMl6
WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAEWHLkowO7ixSwAAAGgAAAA8ABgAAAAAAAEAAACk
gcwSAgBjcnlwdG8vc3VidGxlL3JzYS1pbXBvcnQta2V5LW1hbGZvcm1lZC1wYXJhbWV0ZXJzLXN0
ZGVyci50eHRVVAUAAyHJelh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAABDhy5KAAAAAAAAAAAA
AAAADwAYAAAAAAAAABAA7UGNEwIAY3J5cHRvL3dvcmtlcnMvVVQFAAMdyXpYdXgLAAEE9QEAAAQU
AAAAUEsBAh4DCgAAAAAAQ4cuSgAAAAAAAAAAAAAAABYAGAAAAAAAAAAQAO1B1hMCAGNyeXB0by93
b3JrZXJzL3N1YnRsZS9VVAUAAx3Jelh1eAsAAQT1AQAABBQAAABQSwECHgMKAAIAAABDhy5KJeDT
CCwAAAAsAAAAMQAYAAAAAAABAAAApIEmFAIAY3J5cHRvL3dvcmtlcnMvc3VidGxlL3JzYS1nZW5l
cmF0ZS1rZXktc3RkZXJyLnR4dFVUBQADHcl6WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAEiH
LkoAAAAAAAAAAAAAAAANABgAAAAAAAAAEADtQb0UAgBkaXNwbGF5bGlzdHMvVVQFAAMoyXpYdXgL
AAEE9QEAAAQUAAAAUEsBAh4DFAACAAgASIcuSqNX/ehQAAAAjgAAADIAGAAAAAAAAQAAAKSBBBUC
AGRpc3BsYXlsaXN0cy9leHRlbnQtaW5jbHVkZXMtdHJhbnNmb3Jtcy1zdGRlcnIudHh0VVQFAAMo
yXpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgASIcuSvKWldVHAAAASQAAACkAGAAAAAAAAQAA
AKSBwBUCAGRpc3BsYXlsaXN0cy9sYXllci1kaXNwYXktbGlzdC1zdGRlcnIudHh0VVQFAAMoyXpY
dXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAADoguSgAAAAAAAAAAAAAAAAgAGAAAAAAAAAAQAO1B
ahYCAGVkaXRpbmcvVVQFAAOryXpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAADoguSgAAAAAA
AAAAAAAAABEAGAAAAAAAAAAQAO1BrBYCAGVkaXRpbmcvZGVsZXRpbmcvVVQFAAOryXpYdXgLAAEE
9QEAAAQUAAAAUEsBAh4DFAACAAgADoguStmtJT6+AQAABhMAACgAGAAAAAAAAQAAAKSB9xYCAGVk
aXRpbmcvZGVsZXRpbmcvZGVsZXRlLWVtb2ppLXN0ZGVyci50eHRVVAUAA6vJelh1eAsAAQT1AQAA
BBQAAABQSwECHgMKAAAAAABshy5KAAAAAAAAAAAAAAAAEwAYAAAAAAAAABAA7UEXGQIAZWRpdGlu
Zy9wYXN0ZWJvYXJkL1VUBQADa8l6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAFuHLkofA7tG
6QAAAIIBAAAwABgAAAAAAAEAAACkgWQZAgBlZGl0aW5nL3Bhc3RlYm9hcmQvY29weS1yZXNvbHZl
cy11cmxzLXN0ZGVyci50eHRVVAUAA07Jelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABrhy5K
NrJZL9oAAABQAQAALAAYAAAAAAABAAAApIG3GgIAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLW5v
cGx1Z2luLXN0ZGVyci50eHRVVAUAA2rJelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABrhy5K
NrJZL9oAAABQAQAAMgAYAAAAAAABAAAApIH3GwIAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLW5v
cGx1Z2luLXhodG1sLXN0ZGVyci50eHRVVAUAA2nJelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIA
CABshy5KFufBe+MAAAB3AQAALAAYAAAAAAABAAAApIE9HQIAZWRpdGluZy9wYXN0ZWJvYXJkL3Bh
c3RlLW5vc2NyaXB0LXN0ZGVyci50eHRVVAUAA2vJelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIA
CABrhy5KK4R0VuIAAAB7AQAAMgAYAAAAAAABAAAApIGGHgIAZWRpdGluZy9wYXN0ZWJvYXJkL3Bh
c3RlLW5vc2NyaXB0LXhodG1sLXN0ZGVyci50eHRVVAUAA2rJelh1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACAAViy5Km0ercRkLAAALOwAADQAYAAAAAAABAAAApIHUHwIAZXJyb3JfbG9nLnR4dFVU
BQADWc96WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAFKILkoAAAAAAAAAAAAAAAAFABgAAAAA
AAAAEADtQTQrAgBmYXN0L1VUBQADLMp6WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAHiHLkoA
AAAAAAAAAAAAAAAMABgAAAAAAAAAEADtQXMrAgBmYXN0L2NhbnZhcy9VVAUAA4TJelh1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACAB4hy5K0R9twXwAAAACAQAAJgAYAAAAAAABAAAApIG5KwIAZmFz
dC9jYW52YXMvY2FudmFzLWxpbmVEYXNoLXN0ZGVyci50eHRVVAUAA4TJelh1eAsAAQT1AQAABBQA
AABQSwECHgMKAAAAAABSiC5KAAAAAAAAAAAAAAAACQAYAAAAAAAAABAA7UGVLAIAZmFzdC9jc3Mv
VVQFAAMsynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAUoguSkumgqqxAAAAzgEAADYAGAAA
AAAAAQAAAKSB2CwCAGZhc3QvY3NzL3BlcnNwZWN0aXZlLW9yaWdpbi1pbml0aWFsLWluaGVyaXQt
c3RkZXJyLnR4dFVUBQADLMp6WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAHKHLkoAAAAAAAAA
AAAAAAAJABgAAAAAAAAAEADtQfktAgBmYXN0L2RvbS9VVAUAA3fJelh1eAsAAQT1AQAABBQAAABQ
SwECHgMKAAAAAAByhy5KAAAAAAAAAAAAAAAAGgAYAAAAAAAAABAA7UE8LgIAZmFzdC9kb20vTXV0
YXRpb25PYnNlcnZlci9VVAUAA3fJelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAByhy5KN2eE
4KcAAADSAAAAPwAYAAAAAAABAAAApIGQLgIAZmFzdC9kb20vTXV0YXRpb25PYnNlcnZlci9kYXRh
YmFzZS1jYWxsYmFjay1kZWxpdmVyeS1zdGRlcnIudHh0VVQFAAN3yXpYdXgLAAEE9QEAAAQUAAAA
UEsBAh4DCgAAAAAAd4cuSgAAAAAAAAAAAAAAAAsAGAAAAAAAAAAQAO1BsC8CAGZhc3QvZm9ybXMv
VVQFAAOCyXpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAd4cuSi5f2O97AQAA+DkAADMAGAAA
AAAAAQAAAKSB9S8CAGZhc3QvZm9ybXMvVmFsaWRpdHlTdGF0ZS1wYXR0ZXJuTWlzbWF0Y2gtc3Rk
ZXJyLnR4dFVUBQADgsl6WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAG2ILkoAAAAAAAAAAAAA
AAAMABgAAAAAAAAAEADtQd0xAgBmYXN0L2ZyYW1lcy9VVAUAA17Kelh1eAsAAQT1AQAABBQAAABQ
SwECHgMUAAIACABHiC5KFL9HmSZIAABADgEAOwAYAAAAAAABAAAApIEjMgIAZmFzdC9mcmFtZXMv
aWZyYW1lLW9ubG9hZC1hbmQtZG9tbm9kZWluc2VydGVkLWNyYXNoLWxvZy50eHRVVAUAAxXKelh1
eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABHiC5KIvJdZzYEAAAcDQAAOAAYAAAAAAABAAAApIG+
egIAZmFzdC9mcmFtZXMvaWZyYW1lLW9ubG9hZC1hbmQtZG9tbm9kZWluc2VydGVkLXN0ZGVyci50
eHRVVAUAAxXKelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABtiC5KN2eE4KcAAADSAAAALwAY
AAAAAAABAAAApIFmfwIAZmFzdC9mcmFtZXMvc2FuZGJveGVkLWlmcmFtZS1zdG9yYWdlLXN0ZGVy
ci50eHRVVAUAA17Kelh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAAABiC5KAAAAAAAAAAAAAAAA
DQAYAAAAAAAAABAA7UF2gAIAZmFzdC9oaXN0b3J5L1VUBQADkcl6WHV4CwABBPUBAAAEFAAAAFBL
AQIeAxQAAgAIAAGILko3Z4TgpwAAANIAAABAABgAAAAAAAEAAACkgb2AAgBmYXN0L2hpc3Rvcnkv
cGFnZS1jYWNoZS13ZWJkYXRhYmFzZS1uby10cmFuc2FjdGlvbi1kYi1zdGRlcnIudHh0VVQFAAOR
yXpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAACIguSgAAAAAAAAAAAAAAAAwAGAAAAAAAAAAQ
AO1B3oECAGZhc3QvaW1hZ2VzL1VUBQADoMl6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAAiI
Lkohj704MgAAADMAAAAsABgAAAAAAAEAAACkgSSCAgBmYXN0L2ltYWdlcy9wZGYtYXMtaW1hZ2Ut
Y3JvcC1ib3gtc3RkZXJyLnR4dFVUBQADoMl6WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAB2I
LkoAAAAAAAAAAAAAAAAKABgAAAAAAAAAEADtQbyCAgBmYXN0L3RleHQvVVQFAAPKyXpYdXgLAAEE
9QEAAAQUAAAAUEsBAh4DFAACAAgAHYguSi/O7wp2AQAAiAkAACMAGAAAAAAAAQAAAKSBAIMCAGZh
c3QvdGV4dC9lbW9qaS1nZW5kZXItMi1zdGRlcnIudHh0VVQFAAPKyXpYdXgLAAEE9QEAAAQUAAAA
UEsBAh4DCgAAAAAAIIguSgAAAAAAAAAAAAAAAAkAGAAAAAAAAAAQAO1B04QCAGZhc3QveHNsL1VU
BQADzMl6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAB2ILkpO+yD4iAAAAOcAAAAlABgAAAAA
AAEAAACkgRaFAgBmYXN0L3hzbC90cmFuc2Zvcm0teGhyLWRvYy1zdGRlcnIudHh0VVQFAAPJyXpY
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAHYguSv2iLmSPAAAA7gAAACcAGAAAAAAAAQAAAKSB
/YUCAGZhc3QveHNsL3hzbHQtYmFkLWltcG9ydC11cmktc3RkZXJyLnR4dFVUBQADycl6WHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAB2ILkrPj2YOUAAAAKAAAAAkABgAAAAAAAEAAACkge2GAgBm
YXN0L3hzbC94c2x0LWNvbnRlbnRUeXBlLXN0ZGVyci50eHRVVAUAA8nJelh1eAsAAQT1AQAABBQA
AABQSwECHgMUAAIACAAgiC5KgUp3rUsAAACsAAAANAAYAAAAAAABAAAApIGbhwIAZmFzdC94c2wv
eHNsdC10cmFuc2Zvcm0tdG8tZnJhZ21lbnQtY3Jhc2gtc3RkZXJyLnR4dFVUBQADzMl6WHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIACyLLkry5XfU7QIAAC4MAAARABgAAAAAAAEAAACkgVSIAgBm
dWxsX3Jlc3VsdHMuanNvblVUBQADhM96WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAACKILkoA
AAAAAAAAAAAAAAAFABgAAAAAAAAAEADtQYyLAgBodHRwL1VUBQADz8l6WHV4CwABBPUBAAAEFAAA
AFBLAQIeAwoAAAAAAHOILkoAAAAAAAAAAAAAAAALABgAAAAAAAAAEADtQcuLAgBodHRwL3Rlc3Rz
L1VUBQADasp6WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAABWLLkoAAAAAAAAAAAAAAAAUABgA
AAAAAAAAEADtQRCMAgBodHRwL3Rlc3RzL2FwcGNhY2hlL1VUBQADWc96WHV4CwABBPUBAAAEFAAA
AFBLAQIeAxQAAgAIAFKILkqoqx+fJEgAAMkKAQA1ABgAAAAAAAEAAACkgV6MAgBodHRwL3Rlc3Rz
L2FwcGNhY2hlL2FjY2Vzcy12aWEtcmVkaXJlY3QtY3Jhc2gtbG9nLnR4dFVUBQADK8p6WHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAH2ILkowhDbpI0QAAOJMAQAmABgAAAAAAAEAAACkgfHUAgBo
dHRwL3Rlc3RzL2FwcGNhY2hlL2F1dGgtY3Jhc2gtbG9nLnR4dFVUBQADfcp6WHV4CwABBPUBAAAE
FAAAAFBLAQIeAxQAAgAIAKqILkps9h4Y4kMAAFRFAQBGABgAAAAAAAEAAACkgXQZAwBodHRwL3Rl
c3RzL2FwcGNhY2hlL2NyYXNoLXdoZW4tbmF2aWdhdGluZy1hd2F5LXRoZW4tYmFjay1jcmFzaC1s
b2cudHh0VVQFAAPPynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgALIsuSv80+BGfRAAAVEcB
AC4AGAAAAAAAAQAAAKSB1l0DAGh0dHAvdGVzdHMvYXBwY2FjaGUvY3lyaWxsaWMtdXJpLWNyYXNo
LWxvZy50eHRVVAUAA4PPelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAsiy5KVORUNXJJAAA6
XwEARgAYAAAAAAABAAAApIHdogMAaHR0cC90ZXN0cy9hcHBjYWNoZS9kaWZmZXJlbnQtaHR0cHMt
b3JpZ2luLXJlc291cmNlLW1haW4tY3Jhc2gtbG9nLnR4dFVUBQADg896WHV4CwABBPUBAAAEFAAA
AFBLAQIeAwoAAgAAAE+JLko6THhuLQAAAC0AAAAyABgAAAAAAAEAAACkgc/sAwBodHRwL3Rlc3Rz
L2FwcGNhY2hlL2RpZmZlcmVudC1zY2hlbWUtY3Jhc2gtbG9nLnR4dFVUBQADBsx6WHV4CwABBPUB
AAAEFAAAAFBLAQIeAxQAAgAIACyLLkoR4Ke+zkIAAMg/AQA/ABgAAAAAAAEAAACkgWjtAwBodHRw
L3Rlc3RzL2FwcGNhY2hlL2RvY3VtZW50LXdyaXRlLWh0bWwtZWxlbWVudC0yLWNyYXNoLWxvZy50
eHRVVAUAA4PPelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAsiy5KSBmHPsRCAAAaPgEAMAAY
AAAAAAABAAAApIGvMAQAaHR0cC90ZXN0cy9hcHBjYWNoZS9lbXB0eS1tYW5pZmVzdC1jcmFzaC1s
b2cudHh0VVQFAAODz3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgALIsuSmrdaHEWRQAAK04B
ACoAGAAAAAAAAQAAAKSB3XMEAGh0dHAvdGVzdHMvYXBwY2FjaGUvZmFsbGJhY2stY3Jhc2gtbG9n
LnR4dFVUBQADg896WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACyLLkrxfMjvIEMAAJdAAQA1
ABgAAAAAAAEAAACkgVe5BABodHRwL3Rlc3RzL2FwcGNhY2hlL2ZvcmVpZ24taWZyYW1lLW1haW4t
Y3Jhc2gtbG9nLnR4dFVUBQADg896WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACyLLkoIHjFz
UUQAAPdCAQAuABgAAAAAAAEAAACkgeb8BABodHRwL3Rlc3RzL2FwcGNhY2hlL2hpc3RvcnktdGVz
dC1jcmFzaC1sb2cudHh0VVQFAAODz3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgALIsuSpdu
u6mHQgAAvUABADEAGAAAAAAAAQAAAKSBn0EFAGh0dHAvdGVzdHMvYXBwY2FjaGUvaWRlbnRpZmll
ci10ZXN0LWNyYXNoLWxvZy50eHRVVAUAA4PPelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAs
iy5KXgzYCGhEAAD8WAEANAAYAAAAAAABAAAApIGRhAUAaHR0cC90ZXN0cy9hcHBjYWNoZS9pbnRl
cnJ1cHRlZC11cGRhdGUtY3Jhc2gtbG9nLnR4dFVUBQADg896WHV4CwABBPUBAAAEFAAAAFBLAQIe
AxQAAgAIACyLLkpGpGO0G0YAABVOAQAvABgAAAAAAAEAAACkgWfJBQBodHRwL3Rlc3RzL2FwcGNh
Y2hlL2xvY2FsLWNvbnRlbnQtY3Jhc2gtbG9nLnR4dFVUBQADg896WHV4CwABBPUBAAAEFAAAAFBL
AQIeAxQAAgAIACyLLkrQgGateUYAAEJUAQA0ABgAAAAAAAEAAACkgesPBgBodHRwL3Rlc3RzL2Fw
cGNhY2hlL21haW4tcmVzb3VyY2UtaGFzaC1jcmFzaC1sb2cudHh0VVQFAAODz3pYdXgLAAEE9QEA
AAQUAAAAUEsBAh4DFAACAAgALIsuSrhAs+X/RQAAiFIBADwAGAAAAAAAAQAAAKSB0lYGAGh0dHAv
dGVzdHMvYXBwY2FjaGUvbWFuaWZlc3QtY29udGFpbmluZy1pdHNlbGYtY3Jhc2gtbG9nLnR4dFVU
BQADg896WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACyLLkqp/6EE/EIAAFdAAQA6ABgAAAAA
AAEAAACkgUedBgBodHRwL3Rlc3RzL2FwcGNhY2hlL21hbmlmZXN0LXdpdGgtZW1wdHktZmlsZS1j
cmFzaC1sb2cudHh0VVQFAAODz3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgALIsuSt8I91Pi
QgAAVz8BADAAGAAAAAAAAQAAAKSBt+AGAGh0dHAvdGVzdHMvYXBwY2FjaGUvbXVsdGktZmFsbGJh
Y2stY3Jhc2gtbG9nLnR4dFVUBQADg896WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACyLLkpa
usFPKEQAAMMBAQAwABgAAAAAAAEAAACkgQMkBwBodHRwL3Rlc3RzL2FwcGNhY2hlL29mZmxpbmUt
YWNjZXNzLWNyYXNoLWxvZy50eHRVVAUAA4PPelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAs
iy5KL2uToPFCAABYQAEAMgAYAAAAAAABAAAApIGVaAcAaHR0cC90ZXN0cy9hcHBjYWNoZS9vbmxp
bmUtd2hpdGVsaXN0LWNyYXNoLWxvZy50eHRVVAUAA4PPelh1eAsAAQT1AQAABBQAAABQSwECHgMU
AAIACAAsiy5KWfmwSYNEAACHTQEALwAYAAAAAAABAAAApIHyqwcAaHR0cC90ZXN0cy9hcHBjYWNo
ZS9vcmlnaW4tZGVsZXRlLWNyYXNoLWxvZy50eHRVVAUAA4PPelh1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACAAsiy5KMHWwO5dEAACaSwEAQQAYAAAAAAABAAAApIHe8AcAaHR0cC90ZXN0cy9hcHBj
YWNoZS9vcmlnaW4tcXVvdGEtY29udGludWVkLWRvd25sb2FkLWNyYXNoLWxvZy50eHRVVAUAA4PP
elh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAsiy5K796fQ65EAADbTQEAVAAYAAAAAAABAAAA
pIHwNQgAaHR0cC90ZXN0cy9hcHBjYWNoZS9vcmlnaW4tcXVvdGEtY29udGludWVkLWRvd25sb2Fk
LW11bHRpcGxlLW1hbmlmZXN0cy1jcmFzaC1sb2cudHh0VVQFAAODz3pYdXgLAAEE9QEAAAQUAAAA
UEsBAh4DCgAAAAAAI4guSgAAAAAAAAAAAAAAAC8AGAAAAAAAAAAQAO1BLHsIAGh0dHAvdGVzdHMv
Y29udGVudGRpc3Bvc2l0aW9uYXR0YWNobWVudHNhbmRib3gvVVQFAAPRyXpYdXgLAAEE9QEAAAQU
AAAAUEsBAh4DFAACAAgAI4guStyYb+82AAAAOgAAAFEAGAAAAAAAAQAAAKSBlXsIAGh0dHAvdGVz
dHMvY29udGVudGRpc3Bvc2l0aW9uYXR0YWNobWVudHNhbmRib3gvcmVmZXJlci1oZWFkZXItc3Ry
aXBwZWQtc3RkZXJyLnR4dFVUBQAD0cl6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACKILkrc
mG/vNgAAADoAAABqABgAAAAAAAEAAACkgVZ8CABodHRwL3Rlc3RzL2NvbnRlbnRkaXNwb3NpdGlv
bmF0dGFjaG1lbnRzYW5kYm94L3JlZmVyZXItaGVhZGVyLXN0cmlwcGVkLXdpdGgtbWV0YS1yZWZl
cmVyLWFsd2F5cy1zdGRlcnIudHh0VVQFAAPPyXpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA
IoguStyYb+82AAAAOgAAAGsAGAAAAAAAAQAAAKSBMH0IAGh0dHAvdGVzdHMvY29udGVudGRpc3Bv
c2l0aW9uYXR0YWNobWVudHNhbmRib3gvcmVmZXJlci1oZWFkZXItc3RyaXBwZWQtd2l0aC1tZXRh
LXJlZmVyZXItZGVmYXVsdC1zdGRlcnIudHh0VVQFAAPPyXpYdXgLAAEE9QEAAAQUAAAAUEsBAh4D
FAACAAgAIoguStyYb+82AAAAOgAAAGkAGAAAAAAAAQAAAKSBC34IAGh0dHAvdGVzdHMvY29udGVu
dGRpc3Bvc2l0aW9uYXR0YWNobWVudHNhbmRib3gvcmVmZXJlci1oZWFkZXItc3RyaXBwZWQtd2l0
aC1tZXRhLXJlZmVyZXItbmV2ZXItc3RkZXJyLnR4dFVUBQAD0Ml6WHV4CwABBPUBAAAEFAAAAFBL
AQIeAxQAAgAIACKILkrcmG/vNgAAADoAAABvABgAAAAAAAEAAACkgeR+CABodHRwL3Rlc3RzL2Nv
bnRlbnRkaXNwb3NpdGlvbmF0dGFjaG1lbnRzYW5kYm94L3JlZmVyZXItaGVhZGVyLXN0cmlwcGVk
LXdpdGgtbWV0YS1yZWZlcmVyLW5vLXJlZmVycmVyLXN0ZGVyci50eHRVVAUAA9DJelh1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACAAiiC5K3Jhv7zYAAAA6AAAAfgAYAAAAAAABAAAApIHDfwgAaHR0
cC90ZXN0cy9jb250ZW50ZGlzcG9zaXRpb25hdHRhY2htZW50c2FuZGJveC9yZWZlcmVyLWhlYWRl
ci1zdHJpcHBlZC13aXRoLW1ldGEtcmVmZXJlci1uby1yZWZlcnJlci13aGVuLWRvd25ncmFkZS1z
dGRlcnIudHh0VVQFAAPQyXpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAIoguStyYb+82AAAA
OgAAAGoAGAAAAAAAAQAAAKSBsYAIAGh0dHAvdGVzdHMvY29udGVudGRpc3Bvc2l0aW9uYXR0YWNo
bWVudHNhbmRib3gvcmVmZXJlci1oZWFkZXItc3RyaXBwZWQtd2l0aC1tZXRhLXJlZmVyZXItb3Jp
Z2luLXN0ZGVyci50eHRVVAUAA9DJelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAjiC5K3Jhv
7zYAAAA6AAAAbgAYAAAAAAABAAAApIGLgQgAaHR0cC90ZXN0cy9jb250ZW50ZGlzcG9zaXRpb25h
dHRhY2htZW50c2FuZGJveC9yZWZlcmVyLWhlYWRlci1zdHJpcHBlZC13aXRoLW1ldGEtcmVmZXJl
ci11bnNhZmUtdXJsLXN0ZGVyci50eHRVVAUAA9HJelh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAA
AABTiC5KAAAAAAAAAAAAAAAAEAAYAAAAAAAAABAA7UFpgggAaHR0cC90ZXN0cy9taXNjL1VUBQAD
Lsp6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIADGILko/Lr4P5gAAAGIBAAAtABgAAAAAAAEA
AACkgbOCCABodHRwL3Rlc3RzL21pc2MvY29weS1yZXNvbHZlcy11cmxzLXN0ZGVyci50eHRVVAUA
A+7Jelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABTiC5KFTU1knoAAAC8AAAAKgAYAAAAAAAB
AAAApIEAhAgAaHR0cC90ZXN0cy9taXNjL3hzbHQtYmFkLWltcG9ydC1zdGRlcnIudHh0VVQFAAMu
ynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA7IguSgAAAAAAAAAAAAAAABQAGAAAAAAAAAAQ
AO1B3oQIAGh0dHAvdGVzdHMvc2VjdXJpdHkvVVQFAANLy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4D
FAACAAgAZYguSuXm14ObTwAAEHkBAEUAGAAAAAAAAQAAAKSBLIUIAGh0dHAvdGVzdHMvc2VjdXJp
dHkvYXBwY2FjaGUtc3dpdGNoaW5nLXByaXZhdGUtYnJvd3NpbmctY3Jhc2gtbG9nLnR4dFVUBQAD
Tsp6WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAEeILkoAAAAAAAAAAAAAAAAqABgAAAAAAAAA
EADtQUbVCABodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9VVAUAAxbK
elh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABHiC5KY6qsbIIAAACoAAAAQAAYAAAAAAABAAAA
pIGq1QgAaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kveHNsLWFsbG93
ZWQtc3RkZXJyLnR4dFVUBQADFcp6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAEeILkpjqqxs
ggAAAKgAAABSABgAAAAAAAEAAACkgabWCABodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1
cml0eVBvbGljeS94c2wtdW5hZmZlY3RlZC1ieS1zdHlsZS1zcmMtMi1zdGRlcnIudHh0VVQFAAMW
ynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAmIguSq1ie8OkTwAAGpcBAD8AGAAAAAAAAQAA
AKSBtNcIAGh0dHAvdGVzdHMvc2VjdXJpdHkvY3Jvc3Mtb3JpZ2luLWFwcGNhY2hlLWFsbG93ZWQt
Y3Jhc2gtbG9nLnR4dFVUBQADr8p6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACyLLkoRbNvB
6EQAAEFQAQA3ABgAAAAAAAEAAACkgdEnCQBodHRwL3Rlc3RzL3NlY3VyaXR5L2Nyb3NzLW9yaWdp
bi1hcHBjYWNoZS1jcmFzaC1sb2cudHh0VVQFAAODz3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAAC
AAgA0YguSpck1matAAAApAEAADoAGAAAAAAAAQAAAKSBKm0JAGh0dHAvdGVzdHMvc2VjdXJpdHkv
Y3Jvc3Mtb3JpZ2luLXdlYnNxbC1hbGxvd2VkLXN0ZGVyci50eHRVVAUAAxnLelh1eAsAAQT1AQAA
BBQAAABQSwECHgMUAAIACADRiC5KN2eE4KcAAADSAAAAMgAYAAAAAAABAAAApIFLbgkAaHR0cC90
ZXN0cy9zZWN1cml0eS9jcm9zcy1vcmlnaW4td2Vic3FsLXN0ZGVyci50eHRVVAUAAxnLelh1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACADkiC5KN2eE4KcAAADSAAAAPwAYAAAAAAABAAAApIFebwkA
aHR0cC90ZXN0cy9zZWN1cml0eS9zdG9yYWdlLWJsb2NraW5nLWxvb3NlbmVkLXdlYnNxbC1zdGRl
cnIudHh0VVQFAAM7y3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA5IguSjdnhOCnAAAA0gAA
AEMAGAAAAAAAAQAAAKSBfnAJAGh0dHAvdGVzdHMvc2VjdXJpdHkvc3RvcmFnZS1ibG9ja2luZy1z
dHJlbmd0aGVuZWQtd2Vic3FsLXN0ZGVyci50eHRVVAUAAzzLelh1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACADsiC5KYEtmEJEAAAD7AQAARQAYAAAAAAABAAAApIGicQkAaHR0cC90ZXN0cy9zZWN1
cml0eS94c3MtREVOSUVELXhzbC1kb2N1bWVudC1zZWN1cml0eU9yaWdpbi1zdGRlcnIudHh0VVQF
AANLy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAc4guSgAAAAAAAAAAAAAAAA8AGAAAAAAA
AAAQAO1BsnIJAGh0dHAvdGVzdHMvc3NsL1VUBQADasp6WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoA
AgAAAHOILkrMJjh/LQAAAC0AAAAxABgAAAAAAAEAAACkgftyCQBodHRwL3Rlc3RzL3NzbC91cGdy
YWRlLW9yaWdpbi11c2FnZS1jcmFzaC1sb2cudHh0VVQFAANqynpYdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DCgAAAAAANIguSgAAAAAAAAAAAAAAABMAGAAAAAAAAAAQAO1Bk3MJAGh0dHAvdGVzdHMvc3Rv
cmFnZS9VVAUAA/PJelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA0iC5KN2eE4KcAAADSAAAA
RQAYAAAAAAABAAAApIHgcwkAaHR0cC90ZXN0cy9zdG9yYWdlL2NhbGxiYWNrcy1hcmUtY2FsbGVk
LWluLWNvcnJlY3QtY29udGV4dC1zdGRlcnIudHh0VVQFAAPzyXpYdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DCgAAAAAAaIguSgAAAAAAAAAAAAAAABoAGAAAAAAAAAAQAO1BBnUJAGh0dHAvdGVzdHMveG1s
aHR0cHJlcXVlc3QvVVQFAANUynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAaIguSn5/7Rex
AAAAAQEAAEEAGAAAAAAAAQAAAKSBWnUJAGh0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcG9zdC1i
bG9iLWNvbnRlbnQtdHlwZS1hc3luYy1zdGRlcnIudHh0VVQFAANUynpYdXgLAAEE9QEAAAQUAAAA
UEsBAh4DFAACAAgAaIguSn5/7RexAAAAAQEAAEAAGAAAAAAAAQAAAKSBhnYJAGh0dHAvdGVzdHMv
eG1saHR0cHJlcXVlc3QvcG9zdC1ibG9iLWNvbnRlbnQtdHlwZS1zeW5jLXN0ZGVyci50eHRVVAUA
A1TKelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA1hy5KWwRYDqIFAABNEAAACgAYAAAAAAAB
AAAApIGxdwkAaHR0cGQuY29uZlVUBQADBcl6WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAGOI
LkoAAAAAAAAAAAAAAAAJABgAAAAAAAAAEADtQZd9CQBpbXBvcnRlZC9VVAUAA0nKelh1eAsAAQT1
AQAABBQAAABQSwECHgMKAAAAAABjiC5KAAAAAAAAAAAAAAAADQAYAAAAAAAAABAA7UHafQkAaW1w
b3J0ZWQvdzNjL1VUBQADSsp6WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAGOILkoAAAAAAAAA
AAAAAAAaABgAAAAAAAAAEADtQSF+CQBpbXBvcnRlZC93M2MvV2ViQ3J5cHRvQVBJL1VUBQADScp6
WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAGWILkoAAAAAAAAAAAAAAAAmABgAAAAAAAAAEADt
QXV+CQBpbXBvcnRlZC93M2MvV2ViQ3J5cHRvQVBJL2dlbmVyYXRlS2V5L1VUBQADTsp6WHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAGOILkqPNBpwRAAAAKAJAABHABgAAAAAAAEAAACkgdV+CQBp
bXBvcnRlZC93M2MvV2ViQ3J5cHRvQVBJL2dlbmVyYXRlS2V5L3Rlc3RfZmFpbHVyZXNfUlNBLU9B
RVAtc3RkZXJyLnR4dFVUBQADScp6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAGWILkpUAsmy
NgAAAMACAABQABgAAAAAAAEAAACkgZp/CQBpbXBvcnRlZC93M2MvV2ViQ3J5cHRvQVBJL2dlbmVy
YXRlS2V5L3Rlc3RfZmFpbHVyZXNfUlNBU1NBLVBLQ1MxLXYxXzUtc3RkZXJyLnR4dFVUBQADTsp6
WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAGmILkoAAAAAAAAAAAAAAAAgABgAAAAAAAAAEADt
QVqACQBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1VUBQADVcp6WHV4CwABBPUBAAAE
FAAAAFBLAQIeAwoAAAAAAIeILkoAAAAAAAAAAAAAAAAqABgAAAAAAAAAEADtQbSACQBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0luZGV4ZWREQi9VVAUAA47Kelh1eAsAAQT1AQAABBQA
AABQSwECHgMUAAIACABjiC5KRmgb25kAAADFAAAASAAYAAAAAAABAAAApIEYgQkAaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9JbmRleGVkREIvaWRiY3Vyc29yX2l0ZXJhdGluZy1zdGRl
cnIudHh0VVQFAANKynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAbYguSh3RjyajAAAATwIA
AEYAGAAAAAAAAQAAAKSBM4IJAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvSW5kZXhl
ZERCL2lkYmZhY3Rvcnlfb3BlbjExLXN0ZGVyci50eHRVVAUAA13Kelh1eAsAAQT1AQAABBQAAABQ
SwECHgMUAAIACABviC5KRmgb25kAAADFAAAAQwAYAAAAAAABAAAApIFWgwkAaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9JbmRleGVkREIvaWRiaW5kZXhfY291bnQtc3RkZXJyLnR4dFVU
BQADYcp6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAG6ILkpGaBvbmQAAAMUAAABEABgAAAAA
AAEAAACkgWyECQBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0luZGV4ZWREQi9pZGJp
bmRleF9jb3VudDItc3RkZXJyLnR4dFVUBQADYMp6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAI
AG6ILkpGaBvbmQAAAMUAAABEABgAAAAAAAEAAACkgYOFCQBpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL0luZGV4ZWREQi9pZGJpbmRleF9jb3VudDMtc3RkZXJyLnR4dFVUBQADYMp6WHV4
CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAHaILkpGaBvbmQAAAMUAAABJABgAAAAAAAEAAACkgZqG
CQBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0luZGV4ZWREQi9pZGJvYmplY3RzdG9y
ZV9jb3VudC1zdGRlcnIudHh0VVQFAANwynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAdogu
SkZoG9uZAAAAxQAAAEoAGAAAAAAAAQAAAKSBtocJAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvSW5kZXhlZERCL2lkYm9iamVjdHN0b3JlX2NvdW50Mi1zdGRlcnIudHh0VVQFAANvynpY
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAdoguSjA9hTefAAAAigEAAEoAGAAAAAAAAQAAAKSB
04gJAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvSW5kZXhlZERCL2lkYm9iamVjdHN0
b3JlX2NvdW50My1zdGRlcnIudHh0VVQFAANvynpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA
eIguSkZoG9uZAAAAxQAAAEsAGAAAAAAAAQAAAKSB9okJAGltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvSW5kZXhlZERCL2lkYm9iamVjdHN0b3JlX2RlbGV0ZTUtc3RkZXJyLnR4dFVUBQAD
dMp6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAHyILkpGaBvbmQAAAMUAAABOABgAAAAAAAEA
AACkgRSLCQBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0luZGV4ZWREQi9pZGJ0cmFu
c2FjdGlvbi1vbmNvbXBsZXRlLXN0ZGVyci50eHRVVAUAA3zKelh1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACACGiC5KMD2FN58AAACKAQAAWAAYAAAAAAABAAAApIE1jAkAaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9JbmRleGVkREIvdHJhbnNhY3Rpb24tY3JlYXRlX2luX3ZlcnNpb25j
aGFuZ2Utc3RkZXJyLnR4dFVUBQADi8p6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAIeILkpG
aBvbmQAAAMUAAABGABgAAAAAAAEAAACkgWaNCQBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL0luZGV4ZWREQi93cml0ZXItc3RhcnZhdGlvbi1zdGRlcnIudHh0VVQFAAOOynpYdXgLAAEE
9QEAAAQUAAAAUEsBAh4DCgAAAAAAaYguSgAAAAAAAAAAAAAAACYAGAAAAAAAAAAQAO1Bf44JAGlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvVVQFAANVynpYdXgLAAEE9QEAAAQU
AAAAUEsBAh4DCgAAAAAAaYguSgAAAAAAAAAAAAAAACoAGAAAAAAAAAAQAO1B344JAGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL1VUBQADVcp6WHV4CwABBPUBAAAEFAAA
AFBLAQIeAwoAAAAAAG6ILkoAAAAAAAAAAAAAAAAvABgAAAAAAAAAEADtQUOPCQBpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL1VUBQADYMp6WHV4CwABBPUBAAAE
FAAAAFBLAQIeAxQAAgAIAGmILkrXVpWBBwIAAL0MAABFABgAAAAAAAEAAACkgayPCQBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtb3JpZ2luLXN0ZGVy
ci50eHRVVAUAA1XKelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABpiC5K03UWuxkBAAC2AgAA
UQAYAAAAAAABAAAApIEykgkAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9h
cGkvY29ycy9jb3JzLXByZWZsaWdodC1yZWRpcmVjdC1zdGRlcnIudHh0VVQFAANWynpYdXgLAAEE
9QEAAAQUAAAAUEsBAh4DFAACAAgAa4guSpWxCMiIAgAAzg8AAE8AGAAAAAAAAQAAAKSB1pMJAGlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1wcmVmbGln
aHQtc3RhdHVzLXN0ZGVyci50eHRVVAUAA1nKelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABr
iC5Kn8mNIZkBAADeBQAASAAYAAAAAAABAAAApIHnlgkAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLXByZWZsaWdodC1zdGRlcnIudHh0VVQFAANaynpY
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAboguSmdLbVfIAgAAvxMAAFEAGAAAAAAAAQAAAKSB
ApkJAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1y
ZWRpcmVjdC1wcmVmbGlnaHQtc3RkZXJyLnR4dFVUBQADYMp6WHV4CwABBPUBAAAEFAAAAFBLAQIe
AwoAAAAAALGILkoAAAAAAAAAAAAAAAADABgAAAAAAAAAEADtQVWcCQBqcy9VVAUAA93Kelh1eAsA
AQT1AQAABBQAAABQSwECHgMKAAAAAADmiC5KAAAAAAAAAAAAAAAABwAYAAAAAAAAABAA7UGSnAkA
anMvZG9tL1VUBQADQMt6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIALGILko3Z4TgpwAAANIA
AAA1ABgAAAAAAAEAAACkgdOcCQBqcy9kb20vY2FsbGJhY2stZnVuY3Rpb24td2l0aC1oYW5kbGUt
ZXZlbnQtc3RkZXJyLnR4dFVUBQAD3cp6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAOaILko3
Z4TgpwAAANIAAAAwABgAAAAAAAEAAACkgemdCQBqcy9kb20vZXhjZXB0aW9ucy10aHJvd24taW4t
Y2FsbGJhY2tzLXN0ZGVyci50eHRVVAUAA0DLelh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAAD4
iC5KAAAAAAAAAAAAAAAABgAYAAAAAAAAABAA7UH6ngkAbWVkaWEvVVQFAANjy3pYdXgLAAEE9QEA
AAQUAAAAUEsBAh4DCgAAAAAA+IguSgAAAAAAAAAAAAAAAAwAGAAAAAAAAAAQAO1BOp8JAG1lZGlh
L3RyYWNrL1VUBQADZMt6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAPiILkqN6RhUSwEAAFQC
AAAqABgAAAAAAAEAAACkgYCfCQBtZWRpYS90cmFjay90cmFjay1pbi1iYW5kLXN0eWxlLWFjdHVh
bC50eHRVVAUAA2PLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAD4iC5KE8zBhm8BAAC5AgAA
KAAYAAAAAAABAAAApIEvoQkAbWVkaWEvdHJhY2svdHJhY2staW4tYmFuZC1zdHlsZS1kaWZmLnR4
dFVUBQADY8t6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAPiILkoM+uTqNgEAADMCAAAsABgA
AAAAAAEAAACkgQCjCQBtZWRpYS90cmFjay90cmFjay1pbi1iYW5kLXN0eWxlLWV4cGVjdGVkLnR4
dFVUBQADY8t6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAPiILkrLJuaLlQgAAM4gAAAwABgA
AAAAAAEAAACkgZykCQBtZWRpYS90cmFjay90cmFjay1pbi1iYW5kLXN0eWxlLXByZXR0eS1kaWZm
Lmh0bWxVVAUAA2TLelh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAADSiC5KAAAAAAAAAAAAAAAA
CAAYAAAAAAAAABAA7UGbrQkAcGx1Z2lucy9VVAUAAxzLelh1eAsAAQT1AQAABBQAAABQSwECHgMU
AAIACADSiC5KlQ4cP60AAADxAAAALwAYAAAAAAABAAAApIHdrQkAcGx1Z2lucy9tb3VzZS1jbGlj
ay1pZnJhbWUtdG8tcGx1Z2luLXN0ZGVyci50eHRVVAUAAxzLelh1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACABEiC5KEhyEFmoCAACiFQAAGgAYAAAAAAABAAAApIHzrgkAcHl3ZWJzb2NrZXQud3Mu
bG9nLWVyci50eHRVVAUAAw/Kelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABEiC5KNqeWrAYB
AACPAgAAGgAYAAAAAAABAAAApIGxsQkAcHl3ZWJzb2NrZXQud3MubG9nLW91dC50eHRVVAUAAw/K
elh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAAA2hy5KAAAAAAAAAAAAAAAAGwAYAAAAAAAAAAAA
pIELswkAcHl3ZWJzb2NrZXQud3NzLmxvZy1lcnIudHh0VVQFAAMHyXpYdXgLAAEE9QEAAAQUAAAA
UEsBAh4DCgAAAAAANocuSgAAAAAAAAAAAAAAABsAGAAAAAAAAAAAAKSBYLMJAHB5d2Vic29ja2V0
Lndzcy5sb2ctb3V0LnR4dFVUBQADB8l6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACyLLkpF
Jh050ScAAMuqAAAMABgAAAAAAAEAAACkgbWzCQByZXN1bHRzLmh0bWxVVAUAA4TPelh1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACAAsiy5Ks3eVOn4WCQDhVDAACgAYAAAAAAABAAAApIHM2wkAc3Rh
dHMuanNvblVUBQADhM96WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAACJLkoAAAAAAAAAAAAA
AAAIABgAAAAAAAAAEADtQY7yEgBzdG9yYWdlL1VUBQADcMt6WHV4CwABBPUBAAAEFAAAAFBLAQIe
AwoAAAAAAFyJLkoAAAAAAAAAAAAAAAASABgAAAAAAAAAEADtQdDyEgBzdG9yYWdlL2luZGV4ZWRk
Yi9VVAUAAyDMelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAiiS5KHdGPJqMAAABPAgAAKQAY
AAAAAAABAAAApIEc8xIAc3RvcmFnZS9pbmRleGVkZGIvaW5kZXgtYmFzaWNzLXN0ZGVyci50eHRV
VAUAA6/Lelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAhiS5KHdGPJqMAAABPAgAAMQAYAAAA
AAABAAAApIEi9BIAc3RvcmFnZS9pbmRleGVkZGIvaW5kZXgtYmFzaWNzLXdvcmtlcnMtc3RkZXJy
LnR4dFVUBQADrst6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACKJLkptTbKdrwAAAAEKAAAo
ABgAAAAAAAEAAACkgTD1EgBzdG9yYWdlL2luZGV4ZWRkYi9pbmRleC1jb3VudC1zdGRlcnIudHh0
VVQFAAOwy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAJokuStbDpg6kAAAAFAMAAC0AGAAA
AAAAAQAAAKSBQfYSAHN0b3JhZ2UvaW5kZXhlZGRiL2luZGV4LW11bHRpZW50cnktc3RkZXJyLnR4
dFVUBQADuMt6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACeJLkpGaBvbmQAAAMUAAAAtABgA
AAAAAAEAAACkgUz3EgBzdG9yYWdlL2luZGV4ZWRkYi9pbmRleC1wb3B1bGF0aW9uLXN0ZGVyci50
eHRVVAUAA7nLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAriS5K2AtJUekFAAAxMgAARQAY
AAAAAAAAAAAApIFM+BIAc3RvcmFnZS9pbmRleGVkZGIvaW50dmVyc2lvbi1vcGVuLWluLXVwZ3Jh
ZGVuZWVkZWQtcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAPBy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4D
FAACAAgAK4kuSgfdPqj7BQAA3jUAAD0AGAAAAAAAAAAAAKSBtP4SAHN0b3JhZ2UvaW5kZXhlZGRi
L2ludHZlcnNpb24tb3Blbi1pbi11cGdyYWRlbmVlZGVkLXN0ZGVyci50eHRVVAUAA8HLelh1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACAAriS5KRwo1U3UEAAC1GAAAQQAYAAAAAAAAAAAApIEmBRMA
c3RvcmFnZS9pbmRleGVkZGIvaW50dmVyc2lvbi1vcGVuLXdpdGgtdmVyc2lvbi1wcml2YXRlLXN0
ZGVyci50eHRVVAUAA8HLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAriS5KAPZDim4EAABV
GAAAOQAYAAAAAAAAAAAApIEWChMAc3RvcmFnZS9pbmRleGVkZGIvaW50dmVyc2lvbi1vcGVuLXdp
dGgtdmVyc2lvbi1zdGRlcnIudHh0VVQFAAPCy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA
K4kuSnHitG0ZBQAAzTsAAFEAGAAAAAAAAAAAAKSB9w4TAHN0b3JhZ2UvaW5kZXhlZGRiL2ludHZl
cnNpb24tcGVuZGluZy12ZXJzaW9uLWNoYW5nZXMtYXNjZW5kaW5nLXByaXZhdGUtc3RkZXJyLnR4
dFVUBQADwst6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACyJLkqIz53CPQUAAA89AABJABgA
AAAAAAAAAACkgZsUEwBzdG9yYWdlL2luZGV4ZWRkYi9pbnR2ZXJzaW9uLXBlbmRpbmctdmVyc2lv
bi1jaGFuZ2VzLWFzY2VuZGluZy1zdGRlcnIudHh0VVQFAAPDy3pYdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DFAACAAgALIkuSszZcCT4BAAA1i4AAFIAGAAAAAAAAAAAAKSBWxoTAHN0b3JhZ2UvaW5kZXhl
ZGRiL2ludHZlcnNpb24tcGVuZGluZy12ZXJzaW9uLWNoYW5nZXMtZGVzY2VuZGluZy1wcml2YXRl
LXN0ZGVyci50eHRVVAUAA8PLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAsiS5KfAhxABQF
AAAtLAAASgAYAAAAAAAAAAAApIHfHxMAc3RvcmFnZS9pbmRleGVkZGIvaW50dmVyc2lvbi1wZW5k
aW5nLXZlcnNpb24tY2hhbmdlcy1kZXNjZW5kaW5nLXN0ZGVyci50eHRVVAUAA8PLelh1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACAAsiS5Ke4YezuEEAAABKwAATAAYAAAAAAAAAAAApIF3JRMAc3Rv
cmFnZS9pbmRleGVkZGIvaW50dmVyc2lvbi1wZW5kaW5nLXZlcnNpb24tY2hhbmdlcy1zYW1lLXBy
aXZhdGUtc3RkZXJyLnR4dFVUBQADw8t6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACyJLkqg
GWhlJgUAACkwAABEABgAAAAAAAAAAACkgd4qEwBzdG9yYWdlL2luZGV4ZWRkYi9pbnR2ZXJzaW9u
LXBlbmRpbmctdmVyc2lvbi1jaGFuZ2VzLXNhbWUtc3RkZXJyLnR4dFVUBQADxMt6WHV4CwABBPUB
AAAEFAAAAFBLAQIeAxQAAgAIACyJLkpF/qS9QQQAAB4dAAA7ABgAAAAAAAAAAACkgYIwEwBzdG9y
YWdlL2luZGV4ZWRkYi9pbnR2ZXJzaW9uLXBlcnNpc3RlbmNlLXByaXZhdGUtc3RkZXJyLnR4dFVU
BQADxMt6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACyJLkpqk2seFgQAAFQaAAAzABgAAAAA
AAAAAACkgTg1EwBzdG9yYWdlL2luZGV4ZWRkYi9pbnR2ZXJzaW9uLXBlcnNpc3RlbmNlLXN0ZGVy
ci50eHRVVAUAA8TLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAtiS5K5TKumXkFAAD7LAAA
PwAYAAAAAAAAAAAApIG7ORMAc3RvcmFnZS9pbmRleGVkZGIvaW50dmVyc2lvbi1yZXZlcnQtb24t
YWJvcnQtcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAPFy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAAC
AAgALYkuSnrScp+FBQAAkS4AADcAGAAAAAAAAAAAAKSBrT8TAHN0b3JhZ2UvaW5kZXhlZGRiL2lu
dHZlcnNpb24tcmV2ZXJ0LW9uLWFib3J0LXN0ZGVyci50eHRVVAUAA8XLelh1eAsAAQT1AQAABBQA
AABQSwECHgMUAAIACAAtiS5KvIR9UAwEAADoGQAARQAYAAAAAAAAAAAApIGjRRMAc3RvcmFnZS9p
bmRleGVkZGIvaW50dmVyc2lvbi10d28tb3BlbnMtbm8tdmVyc2lvbnMtcHJpdmF0ZS1zdGRlcnIu
dHh0VVQFAAPFy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgALYkuSqq/qHkyBAAA3xsAAD0A
GAAAAAAAAAAAAKSBLkoTAHN0b3JhZ2UvaW5kZXhlZGRiL2ludHZlcnNpb24tdHdvLW9wZW5zLW5v
LXZlcnNpb25zLXN0ZGVyci50eHRVVAUAA8bLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAt
iS5K0quGU0wFAAA5RwAAOAAYAAAAAAAAAAAApIHXThMAc3RvcmFnZS9pbmRleGVkZGIvaW50dmVy
c2lvbi11cGdyYWRlcy1wcml2YXRlLXN0ZGVyci50eHRVVAUAA8bLelh1eAsAAQT1AQAABBQAAABQ
SwECHgMUAAIACAAuiS5KZ0BWxngFAAA6SQAAMAAYAAAAAAAAAAAApIGVVBMAc3RvcmFnZS9pbmRl
eGVkZGIvaW50dmVyc2lvbi11cGdyYWRlcy1zdGRlcnIudHh0VVQFAAPHy3pYdXgLAAEE9QEAAAQU
AAAAUEsBAh4DFAACAAgALokuStfT9Zk4AwAAgBEAADEAGAAAAAAAAAAAAKSBd1oTAHN0b3JhZ2Uv
aW5kZXhlZGRiL2ludmFsaWQta2V5cy1wcml2YXRlLXN0ZGVyci50eHRVVAUAA8fLelh1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACAAuiS5KaD08dNkDAAAIEwAAKQAYAAAAAAAAAAAApIEaXhMAc3Rv
cmFnZS9pbmRleGVkZGIvaW52YWxpZC1rZXlzLXN0ZGVyci50eHRVVAUAA8jLelh1eAsAAQT1AQAA
BBQAAABQSwECHgMUAAIACAAviS5KDR7DJuUOAACyxgEAMgAYAAAAAAAAAAAApIFWYhMAc3RvcmFn
ZS9pbmRleGVkZGIva2V5LWdlbmVyYXRvci1wcml2YXRlLXN0ZGVyci50eHRVVAUAA8nLelh1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACAAwiS5KeijySRYPAACG0AEAKgAYAAAAAAAAAAAApIGncRMA
c3RvcmFnZS9pbmRleGVkZGIva2V5LWdlbmVyYXRvci1zdGRlcnIudHh0VVQFAAPLy3pYdXgLAAEE
9QEAAAQUAAAAUEsBAh4DFAACAAgAMIkuSrQOrQ1UBQAArD4AAEAAGAAAAAAAAAAAAKSBIYETAHN0
b3JhZ2UvaW5kZXhlZGRiL2tleS1zb3J0LW9yZGVyLWFjcm9zcy10eXBlcy1wcml2YXRlLXN0ZGVy
ci50eHRVVAUAA8vLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAwiS5KTYFi5VwGAACMRQAA
OAAYAAAAAAAAAAAApIHvhhMAc3RvcmFnZS9pbmRleGVkZGIva2V5LXNvcnQtb3JkZXItYWNyb3Nz
LXR5cGVzLXN0ZGVyci50eHRVVAUAA8zLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAwiS5K
z/aDW3cFAACoNAAAOAAYAAAAAAAAAAAApIG9jRMAc3RvcmFnZS9pbmRleGVkZGIva2V5LXNvcnQt
b3JkZXItZGF0ZS1wcml2YXRlLXN0ZGVyci50eHRVVAUAA8zLelh1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACAAxiS5Kn/fOP0AGAABaPAAAMAAYAAAAAAAAAAAApIGmkxMAc3RvcmFnZS9pbmRleGVk
ZGIva2V5LXNvcnQtb3JkZXItZGF0ZS1zdGRlcnIudHh0VVQFAAPNy3pYdXgLAAEE9QEAAAQUAAAA
UEsBAh4DFAACAAgAMYkuSiXF6V11CAAA5doAADMAGAAAAAAAAAAAAKSBUJoTAHN0b3JhZ2UvaW5k
ZXhlZGRiL2tleS10eXBlLWFycmF5LXByaXZhdGUtc3RkZXJyLnR4dFVUBQADzst6WHV4CwABBPUB
AAAEFAAAAFBLAQIeAxQAAgAIADGJLkogmFfQAAYAABxBAAA0ABgAAAAAAAAAAACkgTKjEwBzdG9y
YWdlL2luZGV4ZWRkYi9rZXktdHlwZS1iaW5hcnktcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAPOy3pY
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAMokuSvbJJawGBgAADEIAACwAGAAAAAAAAAAAAKSB
oKkTAHN0b3JhZ2UvaW5kZXhlZGRiL2tleS10eXBlLWJpbmFyeS1zdGRlcnIudHh0VVQFAAPPy3pY
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAMokuSstM+T5iBAAAGBoAADYAGAAAAAAAAAAAAKSB
DLATAHN0b3JhZ2UvaW5kZXhlZGRiL2tleS10eXBlLWluZmluaXR5LXByaXZhdGUtc3RkZXJyLnR4
dFVUBQADz8t6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIADKJLkoQ86735AQAAMMcAAAuABgA
AAAAAAAAAACkgd60EwBzdG9yYWdlL2luZGV4ZWRkYi9rZXktdHlwZS1pbmZpbml0eS1zdGRlcnIu
dHh0VVQFAAPQy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAMokuSn2L5J9hBwAAJj0AADMA
GAAAAAAAAAAAAKSBKroTAHN0b3JhZ2UvaW5kZXhlZGRiL2tleXBhdGgtYXJyYXlzLXByaXZhdGUt
c3RkZXJyLnR4dFVUBQAD0Mt6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIADOJLkpC3JNnpgcA
AGFAAAArABgAAAAAAAAAAACkgfjBEwBzdG9yYWdlL2luZGV4ZWRkYi9rZXlwYXRoLWFycmF5cy1z
dGRlcnIudHh0VVQFAAPRy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgANIkuSsyoKyO9AwAA
O1AAADMAGAAAAAAAAAAAAKSBA8oTAHN0b3JhZ2UvaW5kZXhlZGRiL2tleXBhdGgtYmFzaWNzLXBy
aXZhdGUtc3RkZXJyLnR4dFVUBQAD08t6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIADWJLkqo
KInV9AQAALGUAAArABgAAAAAAAAAAACkgS3OEwBzdG9yYWdlL2luZGV4ZWRkYi9rZXlwYXRoLWJh
c2ljcy1zdGRlcnIudHh0VVQFAAPVy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgANYkuSowC
B+/fBgAAzH4AADIAGAAAAAAAAAAAAKSBhtMTAHN0b3JhZ2UvaW5kZXhlZGRiL2tleXBhdGgtZWRn
ZXMtcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAPWy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA
NYkuSsYLUILxBQAAGDsAACoAGAAAAAAAAAAAAKSB0doTAHN0b3JhZ2UvaW5kZXhlZGRiL2tleXBh
dGgtZWRnZXMtc3RkZXJyLnR4dFVUBQAD1st6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIADWJ
LkqHJyFeTwUAAAtDAAA2ABgAAAAAAAAAAACkgSbhEwBzdG9yYWdlL2luZGV4ZWRkYi9rZXlwYXRo
LWZldGNoLWtleS1wcml2YXRlLXN0ZGVyci50eHRVVAUAA9bLelh1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACAA2iS5KQsVxFE8GAADPSQAALgAYAAAAAAAAAAAApIHl5hMAc3RvcmFnZS9pbmRleGVk
ZGIva2V5cGF0aC1mZXRjaC1rZXktc3RkZXJyLnR4dFVUBQAD18t6WHV4CwABBPUBAAAEFAAAAFBL
AQIeAxQAAgAIADaJLkpCavQK2QcAACloAABBABgAAAAAAAAAAACkgZztEwBzdG9yYWdlL2luZGV4
ZWRkYi9rZXlwYXRoLWludHJpbnNpYy1wcm9wZXJ0aWVzLXByaXZhdGUtc3RkZXJyLnR4dFVUBQAD
18t6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIADaJLkqv068eNggAAFh3AAA5ABgAAAAAAAAA
AACkgfD1EwBzdG9yYWdlL2luZGV4ZWRkYi9rZXlwYXRoLWludHJpbnNpYy1wcm9wZXJ0aWVzLXN0
ZGVyci50eHRVVAUAA9jLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA3iS5KToQJDukAAADQ
AgAALQAYAAAAAAAAAAAApIGZ/hMAc3RvcmFnZS9pbmRleGVkZGIva2V5cmFuZ2UtcHJpdmF0ZS1z
dGRlcnIudHh0VVQFAAPZy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAOIkuSj+QCGPYCAAA
DowAADoAGAAAAAAAAAAAAKSB6f8TAHN0b3JhZ2UvaW5kZXhlZGRiL2xhenktaW5kZXgtcG9wdWxh
dGlvbi1wcml2YXRlLXN0ZGVyci50eHRVVAUAA9vLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIA
CAA4iS5KD14q+ocJAADmjgAAMgAYAAAAAAAAAAAApIE1CRQAc3RvcmFnZS9pbmRleGVkZGIvbGF6
eS1pbmRleC1wb3B1bGF0aW9uLXN0ZGVyci50eHRVVAUAA9vLelh1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACAA4iS5KDL4ADt4HAABnZAAANQAYAAAAAAAAAAAApIEoExQAc3RvcmFnZS9pbmRleGVk
ZGIvbGF6eS1pbmRleC10eXBlcy1wcml2YXRlLXN0ZGVyci50eHRVVAUAA9zLelh1eAsAAQT1AQAA
BBQAAABQSwECHgMUAAIACAA4iS5K6F9T8soIAABJewAALQAYAAAAAAAAAAAApIF1GxQAc3RvcmFn
ZS9pbmRleGVkZGIvbGF6eS1pbmRleC10eXBlcy1zdGRlcnIudHh0VVQFAAPcy3pYdXgLAAEE9QEA
AAQUAAAAUEsBAh4DFAACAAgAOIkuSk6ECQ7pAAAA0AIAADUAGAAAAAAAAAAAAKSBpiQUAHN0b3Jh
Z2UvaW5kZXhlZGRiL2xlZ2FjeS1jb25zdGFudHMtcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAPcy3pY
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAOYkuSgM2KGe8BQAAY5UAADIAGAAAAAAAAAAAAKSB
/iUUAHN0b3JhZ2UvaW5kZXhlZGRiL2xpc3Qtb3JkZXJpbmctcHJpdmF0ZS1zdGRlcnIudHh0VVQF
AAPdy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAOYkuSooQpk+GBgAAVZYAACoAGAAAAAAA
AAAAAKSBJiwUAHN0b3JhZ2UvaW5kZXhlZGRiL2xpc3Qtb3JkZXJpbmctc3RkZXJyLnR4dFVUBQAD
3st6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIADmJLkpSf/ySUAYAAAJYAAAtABgAAAAAAAAA
AACkgRAzFABzdG9yYWdlL2luZGV4ZWRkYi9tZXRhZGF0YS1wcml2YXRlLXN0ZGVyci50eHRVVAUA
A97Lelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA5iS5KAk9y+TQFAAArIQAAMgAYAAAAAAAA
AAAApIHHORQAc3RvcmFnZS9pbmRleGVkZGIvbWV0YWRhdGEtcmFjZS1wcml2YXRlLXN0ZGVyci50
eHRVVAUAA97Lelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA5iS5K/LfYtxMGAADTJQAAKgAY
AAAAAAAAAAAApIFnPxQAc3RvcmFnZS9pbmRleGVkZGIvbWV0YWRhdGEtcmFjZS1zdGRlcnIudHh0
VVQFAAPey3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAOokuSh1BC5cTBwAAKFsAACUAGAAA
AAAAAAAAAKSB3kUUAHN0b3JhZ2UvaW5kZXhlZGRiL21ldGFkYXRhLXN0ZGVyci50eHRVVAUAA9/L
elh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAAAqiS5KAAAAAAAAAAAAAAAAGQAYAAAAAAAAABAA
7UFQTRQAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL1VUBQADv8t6WHV4CwABBPUBAAAEFAAAAFBL
AQIeAxQAAgAIAACJLkp8kJSsAgcAAEB0AAA3ABgAAAAAAAAAAACkgaNNFABzdG9yYWdlL2luZGV4
ZWRkYi9tb2Rlcm4vYXV0b2luY3JlbWVudC1hYm9ydC1zdGRlcnIudHh0VVQFAANwy3pYdXgLAAEE
9QEAAAQUAAAAUEsBAh4DFAACAAgAAIkuSkuP0cQ9BQAAUCAAADUAGAAAAAAAAAAAAKSBFlUUAHN0
b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9iYXNpYy1hZGQtcHJpdmF0ZS1zdGRlcnIudHh0VVQFAANw
y3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAAIkuShAhOddIBQAAcSAAAC0AGAAAAAAAAAAA
AKSBwloUAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9iYXNpYy1hZGQtc3RkZXJyLnR4dFVUBQAD
cMt6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAACJLkrpsPq+EgUAAGYdAAA1ABgAAAAAAAAA
AACkgXFgFABzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vYmFzaWMtcHV0LXByaXZhdGUtc3RkZXJy
LnR4dFVUBQADcMt6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAAGJLkpdLBupGwUAAP0cAAAt
ABgAAAAAAAAAAACkgfJlFABzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vYmFzaWMtcHV0LXN0ZGVy
ci50eHRVVAUAA3HLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAABiS5Kxmw/nDYGAAAkMgAA
OQAYAAAAAAAAAAAApIF0axQAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL2JpbmFyeS1rZXlzLTEt
cHJpdmF0ZS1zdGRlcnIudHh0VVQFAANxy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAAYku
SoSrwQ/GBgAABzcAADEAGAAAAAAAAAAAAKSBHXIUAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9i
aW5hcnkta2V5cy0xLXN0ZGVyci50eHRVVAUAA3HLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIA
CAABiS5KAkv5JlwHAADISQAALwAYAAAAAAAAAAAApIFOeRQAc3RvcmFnZS9pbmRleGVkZGIvbW9k
ZXJuL2Jsb2ItY3Vyc29yLXN0ZGVyci50eHRVVAUAA3LLelh1eAsAAQT1AQAABBQAAABQSwECHgMU
AAIACAACiS5Kb6u79GEKAADsugAALwAYAAAAAAAAAAAApIETgRQAc3RvcmFnZS9pbmRleGVkZGIv
bW9kZXJuL2Jsb2Itc2ltcGxlLXN0ZGVyci50eHRVVAUAA3TLelh1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACAACiS5KyEnnifkKAADnuQAANwAYAAAAAAAAAAAApIHdixQAc3RvcmFnZS9pbmRleGVk
ZGIvbW9kZXJuL2Jsb2Itc2ltcGxlLXdvcmtlcnMtc3RkZXJyLnR4dFVUBQADc8t6WHV4CwABBPUB
AAAEFAAAAFBLAQIeAxQAAgAIAAOJLkp/3eYTVAYAAII3AAAyABgAAAAAAAAAAACkgUeXFABzdG9y
YWdlL2luZGV4ZWRkYi9tb2Rlcm4vYmxvYi1zdmctaW1hZ2Utc3RkZXJyLnR4dFVUBQADdct6WHV4
CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAAOJLkpWqENymQYAAOM1AABEABgAAAAAAAAAAACkgQee
FABzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vYmxvY2tlZC1vcGVuLWRiLXJlcXVlc3RzLXByaXZh
dGUtc3RkZXJyLnR4dFVUBQADdct6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAAOJLko4dVYi
AQcAAL02AAA8ABgAAAAAAAAAAACkgR6lFABzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vYmxvY2tl
ZC1vcGVuLWRiLXJlcXVlc3RzLXN0ZGVyci50eHRVVAUAA3XLelh1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACAADiS5KM6v1o2sGAADfMgAAQQAYAAAAAAAAAAAApIGVrBQAc3RvcmFnZS9pbmRleGVk
ZGIvbW9kZXJuL2NyZWF0ZS1pbmRleC1mYWlsdXJlcy1wcml2YXRlLXN0ZGVyci50eHRVVAUAA3bL
elh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAADiS5KJkuGOH4GAABAMAAAOQAYAAAAAAAAAAAA
pIF7sxQAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL2NyZWF0ZS1pbmRleC1mYWlsdXJlcy1zdGRl
cnIudHh0VVQFAAN2y3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAA4kuSs6rGxJUBgAAGUkA
AEMAGAAAAAAAAAAAAKSBbLoUAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9jcmVhdGVvYmplY3Rz
dG9yZS1iYXNpYy1wcml2YXRlLXN0ZGVyci50eHRVVAUAA3bLelh1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACAAEiS5Khk4uLKEGAACcSgAAOwAYAAAAAAAAAAAApIE9wRQAc3RvcmFnZS9pbmRleGVk
ZGIvbW9kZXJuL2NyZWF0ZW9iamVjdHN0b3JlLWJhc2ljLXN0ZGVyci50eHRVVAUAA3fLelh1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACAAEiS5Kpf4MUM0EAAC6HAAARgAYAAAAAAAAAAAApIFTyBQA
c3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL2NyZWF0ZW9iamVjdHN0b3JlLWZhaWx1cmVzLXByaXZh
dGUtc3RkZXJyLnR4dFVUBQADd8t6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAASJLkoBx1DV
fwQAAM0ZAAA+ABgAAAAAAAAAAACkgaDNFABzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vY3JlYXRl
b2JqZWN0c3RvcmUtZmFpbHVyZXMtc3RkZXJyLnR4dFVUBQADd8t6WHV4CwABBPUBAAAEFAAAAFBL
AQIeAxQAAgAIAASJLkomeLNkwwYAAOpvAAA0ABgAAAAAAAAAAACkgZfSFABzdG9yYWdlL2luZGV4
ZWRkYi9tb2Rlcm4vY3Vyc29yLTEtcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAN4y3pYdXgLAAEE9QEA
AAQUAAAAUEsBAh4DFAACAAgABIkuStAxENpVBwAAcHsAACwAGAAAAAAAAAAAAKSByNkUAHN0b3Jh
Z2UvaW5kZXhlZGRiL21vZGVybi9jdXJzb3ItMS1zdGRlcnIudHh0VVQFAAN4y3pYdXgLAAEE9QEA
AAQUAAAAUEsBAh4DFAACAAgABYkuSqWCpYxpBwAATZQAADQAGAAAAAAAAAAAAKSBg+EUAHN0b3Jh
Z2UvaW5kZXhlZGRiL21vZGVybi9jdXJzb3ItMi1wcml2YXRlLXN0ZGVyci50eHRVVAUAA3nLelh1
eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAFiS5K3ef4ltYHAABLqgAALAAYAAAAAAAAAAAApIFa
6RQAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL2N1cnNvci0yLXN0ZGVyci50eHRVVAUAA3rLelh1
eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAFiS5KJbeyA+IGAAA9ZgAANAAYAAAAAAAAAAAApIGW
8RQAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL2N1cnNvci0zLXByaXZhdGUtc3RkZXJyLnR4dFVU
BQADest6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAAWJLkoNjFC3pQcAABF5AAAsABgAAAAA
AAAAAACkgeb4FABzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vY3Vyc29yLTMtc3RkZXJyLnR4dFVU
BQADest6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAAaJLkrEfSQodwYAAGNfAAA0ABgAAAAA
AAAAAACkgfEAFQBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vY3Vyc29yLTQtcHJpdmF0ZS1zdGRl
cnIudHh0VVQFAAN7y3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgABokuSqE/8EkaBwAA7HAA
ACwAGAAAAAAAAAAAAKSB1gcVAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9jdXJzb3ItNC1zdGRl
cnIudHh0VVQFAAN7y3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgABokuSmHlpWtLBgAARTQA
ADQAGAAAAAAAAAAAAKSBVg8VAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9jdXJzb3ItNS1wcml2
YXRlLXN0ZGVyci50eHRVVAUAA3vLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAGiS5KmLDW
ug0HAACrOQAALAAYAAAAAAAAAAAApIEPFhUAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL2N1cnNv
ci01LXN0ZGVyci50eHRVVAUAA3zLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAGiS5K1zp2
XVcGAADnNAAANAAYAAAAAAAAAAAApIGCHRUAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL2N1cnNv
ci02LXByaXZhdGUtc3RkZXJyLnR4dFVUBQADfMt6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAI
AAeJLkpgG59/BgcAAHs5AAAsABgAAAAAAAAAAACkgUckFQBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rl
cm4vY3Vyc29yLTYtc3RkZXJyLnR4dFVUBQADfct6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAI
AAeJLkpoziriJQYAACYuAAA0ABgAAAAAAAAAAACkgbMrFQBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rl
cm4vY3Vyc29yLTctcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAN9y3pYdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DFAACAAgAB4kuSoyiZXiFBgAAgTAAACwAGAAAAAAAAAAAAKSBRjIVAHN0b3JhZ2UvaW5kZXhl
ZGRiL21vZGVybi9jdXJzb3ItNy1zdGRlcnIudHh0VVQFAAN9y3pYdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DFAACAAgAB4kuSo8WbMUXBgAAZC4AADQAGAAAAAAAAAAAAKSBMTkVAHN0b3JhZ2UvaW5kZXhl
ZGRiL21vZGVybi9jdXJzb3ItOC1wcml2YXRlLXN0ZGVyci50eHRVVAUAA33Lelh1eAsAAQT1AQAA
BBQAAABQSwECHgMUAAIACAAHiS5Kk+IyHaIGAAALMQAALAAYAAAAAAAAAAAApIG2PxUAc3RvcmFn
ZS9pbmRleGVkZGIvbW9kZXJuL2N1cnNvci04LXN0ZGVyci50eHRVVAUAA37Lelh1eAsAAQT1AQAA
BBQAAABQSwECHgMUAAIACAAHiS5KsJ1EwpYGAAAOSAAANgAYAAAAAAAAAAAApIG+RhUAc3RvcmFn
ZS9pbmRleGVkZGIvbW9kZXJuL2RhdGUtYmFzaWMtcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAN+y3pY
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAB4kuSn8h7diXBgAArUkAAC4AGAAAAAAAAAAAAKSB
xE0VAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9kYXRlLWJhc2ljLXN0ZGVyci50eHRVVAUAA37L
elh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAIiS5K5ujgyq0FAADHMAAAPAAYAAAAAAAAAAAA
pIHDVBUAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL2RlbGV0ZWRhdGFiYXNlLTEtcHJpdmF0ZS1z
dGRlcnIudHh0VVQFAAN/y3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgACIkuSu7PmV7NBQAA
bTEAADQAGAAAAAAAAAAAAKSB5loVAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9kZWxldGVkYXRh
YmFzZS0xLXN0ZGVyci50eHRVVAUAA3/Lelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAIiS5K
3W1c/FAGAACfNAAAPAAYAAAAAAAAAAAApIEhYRUAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL2Rl
bGV0ZWRhdGFiYXNlLTItcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAN/y3pYdXgLAAEE9QEAAAQUAAAA
UEsBAh4DFAACAAgACIkuSkF6GsBrBgAAVDUAADQAGAAAAAAAAAAAAKSB52cVAHN0b3JhZ2UvaW5k
ZXhlZGRiL21vZGVybi9kZWxldGVkYXRhYmFzZS0yLXN0ZGVyci50eHRVVAUAA4DLelh1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACAAIiS5KHOypKeAAAADOAgAATgAYAAAAAAAAAAAApIHAbhUAc3Rv
cmFnZS9pbmRleGVkZGIvbW9kZXJuL2RlbGV0ZWRhdGFiYXNlLW51bGwtbmFtZS1leGNlcHRpb24t
cHJpdmF0ZS1zdGRlcnIudHh0VVQFAAOAy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgACIku
SttikFNOAQAAnQMAAEgAGAAAAAAAAAAAAKSBKHAVAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9k
ZWxldGVkYXRhYmFzZS1yZXF1ZXN0LWV2ZW50LXByaXZhdGUtc3RkZXJyLnR4dFVUBQADgMt6WHV4
CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAAmJLkqi/NWEjAEAAEIEAABAABgAAAAAAAAAAACkgfhx
FQBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vZGVsZXRlZGF0YWJhc2UtcmVxdWVzdC1ldmVudC1z
dGRlcnIudHh0VVQFAAOBy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgACYkuSmA29DJWAAAA
mQAAAEIAGAAAAAAAAAAAAKSB/nMVAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9kZWxldGVkYXRh
YmFzZS1yZXF1ZXN0LXByaXZhdGUtc3RkZXJyLnR4dFVUBQADgct6WHV4CwABBPUBAAAEFAAAAFBL
AQIeAxQAAgAIAAmJLkoSte9UDwEAACEDAAA6ABgAAAAAAAAAAACkgdB0FQBzdG9yYWdlL2luZGV4
ZWRkYi9tb2Rlcm4vZGVsZXRlZGF0YWJhc2UtcmVxdWVzdC1zdGRlcnIudHh0VVQFAAOBy3pYdXgL
AAEE9QEAAAQUAAAAUEsBAh4DFAACAAgACYkuSif+SOWaBwAAxD0AADkAGAAAAAAAAAAAAKSBU3YV
AHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9kZWxldGVpbmRleC0xLXByaXZhdGUtc3RkZXJyLnR4
dFVUBQADgct6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAAmJLkpYLWMFqAgAADNEAAAxABgA
AAAAAAAAAACkgWB+FQBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vZGVsZXRlaW5kZXgtMS1zdGRl
cnIudHh0VVQFAAOBy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgACYkuSrM0eKZACAAAtloA
ADkAGAAAAAAAAAAAAKSBc4cVAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9kZWxldGVpbmRleC0y
LXByaXZhdGUtc3RkZXJyLnR4dFVUBQADgst6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAAmJ
Lkq/auh4jwkAABtnAAAxABgAAAAAAAAAAACkgSaQFQBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4v
ZGVsZXRlaW5kZXgtMi1zdGRlcnIudHh0VVQFAAOCy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAAC
AAgACYkuShV/Bd6pBQAAGScAADkAGAAAAAAAAAAAAKSBIJoVAHN0b3JhZ2UvaW5kZXhlZGRiL21v
ZGVybi9kZWxldGVpbmRleC0zLXByaXZhdGUtc3RkZXJyLnR4dFVUBQADgst6WHV4CwABBPUBAAAE
FAAAAFBLAQIeAxQAAgAIAAqJLkr0STHOIgYAAFkrAAAxABgAAAAAAAAAAACkgTygFQBzdG9yYWdl
L2luZGV4ZWRkYi9tb2Rlcm4vZGVsZXRlaW5kZXgtMy1zdGRlcnIudHh0VVQFAAODy3pYdXgLAAEE
9QEAAAQUAAAAUEsBAh4DFAACAAgACokuSrQgZkbXBQAAJzEAADkAGAAAAAAAAAAAAKSByaYVAHN0
b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9kZWxldGVpbmRleC00LXByaXZhdGUtc3RkZXJyLnR4dFVU
BQADg8t6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAAqJLkoNJU130QcAAOd0AAA/ABgAAAAA
AAAAAACkgROtFQBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vZGVsZXRlb2JqZWN0c3RvcmUtMS1w
cml2YXRlLXN0ZGVyci50eHRVVAUAA4PLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAKiS5K
uO+kueEHAADweQAANwAYAAAAAAAAAAAApIFdtRUAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL2Rl
bGV0ZW9iamVjdHN0b3JlLTEtc3RkZXJyLnR4dFVUBQADhMt6WHV4CwABBPUBAAAEFAAAAFBLAQIe
AxQAAgAIAAqJLkrzA0ip5QMAAH4VAAA4ABgAAAAAAAAAAACkga+9FQBzdG9yYWdlL2luZGV4ZWRk
Yi9tb2Rlcm4vZG91YmxlLWFib3J0LXByaXZhdGUtc3RkZXJyLnR4dFVUBQADhMt6WHV4CwABBPUB
AAAEFAAAAFBLAQIeAxQAAgAIAAqJLkqtohs9/gMAAM0TAAAwABgAAAAAAAAAAACkgQbCFQBzdG9y
YWdlL2luZGV4ZWRkYi9tb2Rlcm4vZG91YmxlLWFib3J0LXN0ZGVyci50eHRVVAUAA4TLelh1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACAALiS5K/1Tl62kDAACUEwAANwAYAAAAAAAAAAAApIFuxhUA
c3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL2RvdWJsZS1vcGVuLXByaXZhdGUtc3RkZXJyLnR4dFVU
BQADhct6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAAuJLkp3XTK0tAMAAG8XAAAvABgAAAAA
AAAAAACkgUjKFQBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vZG91YmxlLW9wZW4tc3RkZXJyLnR4
dFVUBQADhct6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAAuJLkqA//H3uAQAAEwmAAA+ABgA
AAAAAAAAAACkgWXOFQBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vZ2MtY2xvc2VzLWRhdGFiYXNl
LXByaXZhdGUtc3RkZXJyLnR4dFVUBQADhct6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAAuJ
LkrczpcI4wQAAJYmAAA2ABgAAAAAAAAAAACkgZXTFQBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4v
Z2MtY2xvc2VzLWRhdGFiYXNlLXN0ZGVyci50eHRVVAUAA4bLelh1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACAALiS5Kmz7tNngGAAC+OgAAPgAYAAAAAAAAAAAApIHo2BUAc3RvcmFnZS9pbmRleGVk
ZGIvbW9kZXJuL2dldC1pbmRleC1mYWlsdXJlcy1wcml2YXRlLXN0ZGVyci50eHRVVAUAA4bLelh1
eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAALiS5KuzMcSs4GAADzOQAANgAYAAAAAAAAAAAApIHY
3xUAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL2dldC1pbmRleC1mYWlsdXJlcy1zdGRlcnIudHh0
VVQFAAOGy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgADIkuSohqn+ZYDAAA9jwCADgAGAAA
AAAAAAAAAKSBFucVAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9nZXQta2V5cmFuZ2UtcHJpdmF0
ZS1zdGRlcnIudHh0VVQFAAOHy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgADIkuSid/yucM
DQAAiloCADAAGAAAAAAAAAAAAKSB4PMVAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9nZXQta2V5
cmFuZ2Utc3RkZXJyLnR4dFVUBQADiMt6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAA2JLkqC
68uk2AUAAJckAAA2ABgAAAAAAAAAAACkgVYBFgBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vaGFu
ZGxlLXVzZXItZGVsZXRlLXN0ZGVyci50eHRVVAUAA4nLelh1eAsAAQT1AQAABBQAAABQSwECHgMU
AAIACAANiS5KQ+arVQcTAACX9QIATAAYAAAAAAAAAAAApIGeBxYAc3RvcmFnZS9pbmRleGVkZGIv
bW9kZXJuL2lkYmN1cnNvci1jb250aW51ZS1wcmltYXJ5LWtleS0xLXByaXZhdGUtc3RkZXJyLnR4
dFVUBQADist6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAA+JLkpIYLlUDRIAAAZfAwBEABgA
AAAAAAAAAACkgSsbFgBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vaWRiY3Vyc29yLWNvbnRpbnVl
LXByaW1hcnkta2V5LTEtc3RkZXJyLnR4dFVUBQADjct6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQA
AgAIAA+JLkpZaWE3hgYAAMRDAABSABgAAAAAAAAAAACkgbYtFgBzdG9yYWdlL2luZGV4ZWRkYi9t
b2Rlcm4vaWRiZGF0YWJhc2UtZGVsZXRlb2JqZWN0c3RvcmUtZmFpbHVyZXMtcHJpdmF0ZS1zdGRl
cnIudHh0VVQFAAONy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAD4kuSmP9woVkBgAAnDoA
AEoAGAAAAAAAAAAAAKSByDQWAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9pZGJkYXRhYmFzZS1k
ZWxldGVvYmplY3RzdG9yZS1mYWlsdXJlcy1zdGRlcnIudHh0VVQFAAOOy3pYdXgLAAEE9QEAAAQU
AAAAUEsBAh4DFAACAAgAD4kuSig+MhbNBAAAURsAAEwAGAAAAAAAAAAAAKSBsDsWAHN0b3JhZ2Uv
aW5kZXhlZGRiL21vZGVybi9pZGJkYXRhYmFzZS10cmFuc2FjdGlvbi1mYWlsdXJlcy1wcml2YXRl
LXN0ZGVyci50eHRVVAUAA47Lelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAPiS5Kojxp+NwE
AAAtGwAARAAYAAAAAAAAAAAApIEDQRYAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL2lkYmRhdGFi
YXNlLXRyYW5zYWN0aW9uLWZhaWx1cmVzLXN0ZGVyci50eHRVVAUAA47Lelh1eAsAAQT1AQAABBQA
AABQSwECHgMUAAIACAAQiS5K2B3/WiAHAADIWwAAPQAYAAAAAAAAAAAApIFdRhYAc3RvcmFnZS9p
bmRleGVkZGIvbW9kZXJuL2lkYmluZGV4LWdldGFsbC0xLXByaXZhdGUtc3RkZXJyLnR4dFVUBQAD
j8t6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIABCJLkqbUpx4DQgAAKd1AAA1ABgAAAAAAAAA
AACkgfRNFgBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vaWRiaW5kZXgtZ2V0YWxsLTEtc3RkZXJy
LnR4dFVUBQADj8t6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIABCJLkqZmAUtWAcAANhdAABB
ABgAAAAAAAAAAACkgXBWFgBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vaWRiaW5kZXgtZ2V0YWxs
a2V5cy0xLXByaXZhdGUtc3RkZXJyLnR4dFVUBQADkMt6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQA
AgAIABCJLko1oqO6HwgAAH12AAA5ABgAAAAAAAAAAACkgUNeFgBzdG9yYWdlL2luZGV4ZWRkYi9t
b2Rlcm4vaWRiaW5kZXgtZ2V0YWxsa2V5cy0xLXN0ZGVyci50eHRVVAUAA5DLelh1eAsAAQT1AQAA
BBQAAABQSwECHgMUAAIACAAQiS5KOVQAW8MFAACUPQAARQAYAAAAAAAAAAAApIHVZhYAc3RvcmFn
ZS9pbmRleGVkZGIvbW9kZXJuL2lkYmluZGV4LXByb3BlcnRpZXMtYmFzaWMtcHJpdmF0ZS1zdGRl
cnIudHh0VVQFAAOQy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAEYkuSsApr2jsBQAATz0A
AD0AGAAAAAAAAAAAAKSBF20WAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9pZGJpbmRleC1wcm9w
ZXJ0aWVzLWJhc2ljLXN0ZGVyci50eHRVVAUAA5HLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIA
CAASiS5KRnp3utkZAADzpQYAQQAYAAAAAAAAAAAApIF6cxYAc3RvcmFnZS9pbmRleGVkZGIvbW9k
ZXJuL2lkYmtleS1hcnJheS1lcXVhbGl0eS1wcml2YXRlLXN0ZGVyci50eHRVVAUAA5PLelh1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACAATiS5Klrxy8XkWAAA73wcAOQAYAAAAAAAAAAAApIHOjRYA
c3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL2lkYmtleS1hcnJheS1lcXVhbGl0eS1zdGRlcnIudHh0
VVQFAAOWy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAE4kuSnxQ/GTcBwAA8IAAAEIAGAAA
AAAAAAAAAKSBuqQWAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9pZGJvYmplY3RzdG9yZS1jbGVh
ci0xLXByaXZhdGUtc3RkZXJyLnR4dFVUBQADlst6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAI
ABOJLkqCleZj2QcAAHiDAAA6ABgAAAAAAAAAAACkgRKtFgBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rl
cm4vaWRib2JqZWN0c3RvcmUtY2xlYXItMS1zdGRlcnIudHh0VVQFAAOWy3pYdXgLAAEE9QEAAAQU
AAAAUEsBAh4DFAACAAgAFIkuSptirRHLCAAAI64AAEIAGAAAAAAAAAAAAKSBX7UWAHN0b3JhZ2Uv
aW5kZXhlZGRiL21vZGVybi9pZGJvYmplY3RzdG9yZS1jbGVhci0yLXByaXZhdGUtc3RkZXJyLnR4
dFVUBQADl8t6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIABSJLkpZMFGEyggAAIOxAAA6ABgA
AAAAAAAAAACkgaa+FgBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vaWRib2JqZWN0c3RvcmUtY2xl
YXItMi1zdGRlcnIudHh0VVQFAAOXy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAFIkuSteO
C5tfBwAAoMgAAEIAGAAAAAAAAAAAAKSB5McWAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9pZGJv
YmplY3RzdG9yZS1jb3VudC0xLXByaXZhdGUtc3RkZXJyLnR4dFVUBQADmMt6WHV4CwABBPUBAAAE
FAAAAFBLAQIeAxQAAgAIABWJLkqXg7tT/woAAEFSAQA6ABgAAAAAAAAAAACkgb/PFgBzdG9yYWdl
L2luZGV4ZWRkYi9tb2Rlcm4vaWRib2JqZWN0c3RvcmUtY291bnQtMS1zdGRlcnIudHh0VVQFAAOZ
y3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAFYkuSk0SsKsqBgAAzzIAAEkAGAAAAAAAAAAA
AKSBMtsWAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9pZGJvYmplY3RzdG9yZS1jb3VudC1mYWls
dXJlcy1wcml2YXRlLXN0ZGVyci50eHRVVAUAA5nLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIA
CAAViS5K7YWKYkcGAABxMwAAQQAYAAAAAAAAAAAApIHf4RYAc3RvcmFnZS9pbmRleGVkZGIvbW9k
ZXJuL2lkYm9iamVjdHN0b3JlLWNvdW50LWZhaWx1cmVzLXN0ZGVyci50eHRVVAUAA5nLelh1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACAAViS5Kx3sayaUMAADf3AEAQwAYAAAAAAAAAAAApIGh6BYA
c3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL2lkYm9iamVjdHN0b3JlLWRlbGV0ZS0xLXByaXZhdGUt
c3RkZXJyLnR4dFVUBQADmst6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIABaJLkq1f39cehIA
AKCDAwA7ABgAAAAAAAAAAACkgcP1FgBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vaWRib2JqZWN0
c3RvcmUtZGVsZXRlLTEtc3RkZXJyLnR4dFVUBQADm8t6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQA
AgAIABaJLkrR3XiozQYAAPg5AABDABgAAAAAAAAAAACkgbIIFwBzdG9yYWdlL2luZGV4ZWRkYi9t
b2Rlcm4vaWRib2JqZWN0c3RvcmUtZGVsZXRlLTItcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAOby3pY
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAFokuSqO+zYbeBgAAsDkAADsAGAAAAAAAAAAAAKSB
/A8XAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9pZGJvYmplY3RzdG9yZS1kZWxldGUtMi1zdGRl
cnIudHh0VVQFAAOcy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAFokuSgNDT/R2BgAAeT0A
AEoAGAAAAAAAAAAAAKSBTxcXAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9pZGJvYmplY3RzdG9y
ZS1kZWxldGUtZmFpbHVyZXMtcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAOcy3pYdXgLAAEE9QEAAAQU
AAAAUEsBAh4DFAACAAgAFokuSlDGWInBBgAAyT0AAEIAGAAAAAAAAAAAAKSBSR4XAHN0b3JhZ2Uv
aW5kZXhlZGRiL21vZGVybi9pZGJvYmplY3RzdG9yZS1kZWxldGUtZmFpbHVyZXMtc3RkZXJyLnR4
dFVUBQADnMt6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIABaJLkoT4B3aMAYAAG8zAABHABgA
AAAAAAAAAACkgYYlFwBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vaWRib2JqZWN0c3RvcmUtZ2V0
LWZhaWx1cmVzLXByaXZhdGUtc3RkZXJyLnR4dFVUBQADnMt6WHV4CwABBPUBAAAEFAAAAFBLAQIe
AxQAAgAIABeJLkplC0i+UQYAAG8zAAA/ABgAAAAAAAAAAACkgTcsFwBzdG9yYWdlL2luZGV4ZWRk
Yi9tb2Rlcm4vaWRib2JqZWN0c3RvcmUtZ2V0LWZhaWx1cmVzLXN0ZGVyci50eHRVVAUAA53Lelh1
eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAXiS5K9AjifoQGAAAsSAAAQwAYAAAAAAAAAAAApIEB
MxcAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL2lkYm9iamVjdHN0b3JlLWdldGFsbC0xLXByaXZh
dGUtc3RkZXJyLnR4dFVUBQADnct6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIABeJLkrQw+5e
ogYAADxPAAA7ABgAAAAAAAAAAACkgQI6FwBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vaWRib2Jq
ZWN0c3RvcmUtZ2V0YWxsLTEtc3RkZXJyLnR4dFVUBQADnct6WHV4CwABBPUBAAAEFAAAAFBLAQIe
AxQAAgAIABeJLkrCkXSBnQYAABtNAABHABgAAAAAAAAAAACkgRlBFwBzdG9yYWdlL2luZGV4ZWRk
Yi9tb2Rlcm4vaWRib2JqZWN0c3RvcmUtZ2V0YWxsa2V5cy0xLXByaXZhdGUtc3RkZXJyLnR4dFVU
BQADnst6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIABeJLkp6wDvnrAYAAFxPAAA/ABgAAAAA
AAAAAACkgTdIFwBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vaWRib2JqZWN0c3RvcmUtZ2V0YWxs
a2V5cy0xLXN0ZGVyci50eHRVVAUAA57Lelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAXiS5K
8trImHAGAAClRAAAQwAYAAAAAAAAAAAApIFcTxcAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL2lk
Ym9iamVjdHN0b3JlLWdldGtleS0xLXByaXZhdGUtc3RkZXJyLnR4dFVUBQADnst6WHV4CwABBPUB
AAAEFAAAAFBLAQIeAxQAAgAIABiJLkr4SYMcnQYAACRIAAA7ABgAAAAAAAAAAACkgUlWFwBzdG9y
YWdlL2luZGV4ZWRkYi9tb2Rlcm4vaWRib2JqZWN0c3RvcmUtZ2V0a2V5LTEtc3RkZXJyLnR4dFVU
BQADn8t6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIABiJLkoE4Du6pQYAAMFBAABRABgAAAAA
AAAAAACkgVtdFwBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vaWRib2JqZWN0c3RvcmUtcHV0LWFu
ZC1jbGVhci1mYWlsdXJlcy1wcml2YXRlLXN0ZGVyci50eHRVVAUAA5/Lelh1eAsAAQT1AQAABBQA
AABQSwECHgMUAAIACAAYiS5KNDvOj7wGAABCPQAASQAYAAAAAAAAAAAApIGLZBcAc3RvcmFnZS9p
bmRleGVkZGIvbW9kZXJuL2lkYm9iamVjdHN0b3JlLXB1dC1hbmQtY2xlYXItZmFpbHVyZXMtc3Rk
ZXJyLnR4dFVUBQADn8t6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIABiJLkq3ChLOswMAAH0S
AABPABgAAAAAAAAAAACkgcprFwBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vaWRidHJhbnNhY3Rp
b24tb2JqZWN0c3RvcmUtZmFpbHVyZXMtcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAOgy3pYdXgLAAEE
9QEAAAQUAAAAUEsBAh4DFAACAAgAGIkuSny5Ksg1BAAA9BQAAEcAGAAAAAAAAAAAAKSBBnAXAHN0
b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9pZGJ0cmFuc2FjdGlvbi1vYmplY3RzdG9yZS1mYWlsdXJl
cy1zdGRlcnIudHh0VVQFAAOgy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAGIkuSsT8slVB
BQAA8ikAAEkAGAAAAAAAAAAAAKSBvHQXAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9pZGJ0cmFu
c2FjdGlvbi1vYmplY3RzdG9yZXMtMS1wcml2YXRlLXN0ZGVyci50eHRVVAUAA6DLelh1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACAAYiS5KgBV9lxQFAADMJwAAQQAYAAAAAAAAAAAApIGAehcAc3Rv
cmFnZS9pbmRleGVkZGIvbW9kZXJuL2lkYnRyYW5zYWN0aW9uLW9iamVjdHN0b3Jlcy0xLXN0ZGVy
ci50eHRVVAUAA6DLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAZiS5KNOLgXSIBAACZBAAA
RQAYAAAAAAAAAAAApIEPgBcAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL2lkYnZlcnNpb25jaGFu
Z2VldmVudC1jb25zdHJ1Y3Rvci1zdGRlcnIudHh0VVQFAAOhy3pYdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DFAACAAgAGYkuSkHsYm2yCwAAlYkBADMAGAAAAAAAAAAAAKSBsIEXAHN0b3JhZ2UvaW5kZXhl
ZGRiL21vZGVybi9pbmRleC0xLXByaXZhdGUtc3RkZXJyLnR4dFVUBQADoct6WHV4CwABBPUBAAAE
FAAAAFBLAQIeAxQAAgAIABqJLkpEJgDkkwwAAMSmAQArABgAAAAAAAAAAACkgc+NFwBzdG9yYWdl
L2luZGV4ZWRkYi9tb2Rlcm4vaW5kZXgtMS1zdGRlcnIudHh0VVQFAAOjy3pYdXgLAAEE9QEAAAQU
AAAAUEsBAh4DFAACAAgAGokuSoXhYAsxEAAA5KMBADMAGAAAAAAAAAAAAKSBx5oXAHN0b3JhZ2Uv
aW5kZXhlZGRiL21vZGVybi9pbmRleC0yLXByaXZhdGUtc3RkZXJyLnR4dFVUBQADo8t6WHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIABqJLkqbVoz3GBEAAPizAQArABgAAAAAAAAAAACkgWWrFwBz
dG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vaW5kZXgtMi1zdGRlcnIudHh0VVQFAAOky3pYdXgLAAEE
9QEAAAQUAAAAUEsBAh4DFAACAAgAG4kuSmOeutUMBwAA0FUAADMAGAAAAAAAAAAAAKSB4rwXAHN0
b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9pbmRleC0zLXByaXZhdGUtc3RkZXJyLnR4dFVUBQADpct6
WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIABuJLkpvyrq07gcAALRjAAArABgAAAAAAAAAAACk
gVvEFwBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vaW5kZXgtMy1zdGRlcnIudHh0VVQFAAOly3pY
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAG4kuSklPQXeyBwAAgpwAADMAGAAAAAAAAAAAAKSB
rswXAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9pbmRleC00LXByaXZhdGUtc3RkZXJyLnR4dFVU
BQADpct6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIABuJLkqaUXqYKAoAAPLLAAArABgAAAAA
AAAAAACkgc3UFwBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vaW5kZXgtNC1zdGRlcnIudHh0VVQF
AAOmy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAG4kuSsfzSGgRBgAAjyYAADMAGAAAAAAA
AAAAAKSBWt8XAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9pbmRleC01LXByaXZhdGUtc3RkZXJy
LnR4dFVUBQADpst6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIABuJLkpFftBqPgYAAAIlAAAr
ABgAAAAAAAAAAACkgdjlFwBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vaW5kZXgtNS1zdGRlcnIu
dHh0VVQFAAOmy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAHIkuSpIO6zcSCQAAGlEBADoA
GAAAAAAAAAAAAKSBe+wXAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9pbmRleC1jdXJzb3ItMS1w
cml2YXRlLXN0ZGVyci50eHRVVAUAA6fLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAdiS5K
bbtQWtcLAABdtgEAMgAYAAAAAAAAAAAApIEB9hcAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL2lu
ZGV4LWN1cnNvci0xLXN0ZGVyci50eHRVVAUAA6nLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIA
CAAdiS5K3diGYScJAABzcwEAOgAYAAAAAAAAAAAApIFEAhgAc3RvcmFnZS9pbmRleGVkZGIvbW9k
ZXJuL2luZGV4LWN1cnNvci0yLXByaXZhdGUtc3RkZXJyLnR4dFVUBQADqst6WHV4CwABBPUBAAAE
FAAAAFBLAQIeAxQAAgAIACCJLkr3VK0KGwsAAEHTAQAyABgAAAAAAAAAAACkgd8LGABzdG9yYWdl
L2luZGV4ZWRkYi9tb2Rlcm4vaW5kZXgtY3Vyc29yLTItc3RkZXJyLnR4dFVUBQADq8t6WHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIACGJLkofQQXHWhIAACpuAgA6ABgAAAAAAAAAAACkgWYXGABz
dG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vaW5kZXgtY3Vyc29yLTMtcHJpdmF0ZS1zdGRlcnIudHh0
VVQFAAOty3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAIYkuSg5ca9RzGQAAWjMDADIAGAAA
AAAAAAAAAKSBNCoYAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9pbmRleC1jdXJzb3ItMy1zdGRl
cnIudHh0VVQFAAOuy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAIYkuSsSFtAUxBgAA6CgA
AEEAGAAAAAAAAAAAAKSBE0QYAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9pbmRleC1nZXQtY291
bnQtYmFzaWMtcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAOuy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4D
FAACAAgAIokuSgMsYijiBgAA4ykAADkAGAAAAAAAAAAAAKSBv0oYAHN0b3JhZ2UvaW5kZXhlZGRi
L21vZGVybi9pbmRleC1nZXQtY291bnQtYmFzaWMtc3RkZXJyLnR4dFVUBQADr8t6WHV4CwABBPUB
AAAEFAAAAFBLAQIeAxQAAgAIACKJLkp4MroIuAYAAMk4AABEABgAAAAAAAAAAACkgRRSGABzdG9y
YWdlL2luZGV4ZWRkYi9tb2Rlcm4vaW5kZXgtZ2V0LWNvdW50LWZhaWx1cmVzLXByaXZhdGUtc3Rk
ZXJyLnR4dFVUBQADr8t6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACKJLkotPOZMqQcAAC08
AAA8ABgAAAAAAAAAAACkgUpZGABzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vaW5kZXgtZ2V0LWNv
dW50LWZhaWx1cmVzLXN0ZGVyci50eHRVVAUAA6/Lelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIA
CAAiiS5KTMNQ6i8HAACDSQAAOgAYAAAAAAAAAAAApIFpYRgAc3RvcmFnZS9pbmRleGVkZGIvbW9k
ZXJuL2luZGV4LXJlbmFtZS0xLXByaXZhdGUtc3RkZXJyLnR4dFVUBQADr8t6WHV4CwABBPUBAAAE
FAAAAFBLAQIeAxQAAgAIACKJLkqTu962pQcAAEhNAAAyABgAAAAAAAAAAACkgQxpGABzdG9yYWdl
L2luZGV4ZWRkYi9tb2Rlcm4vaW5kZXgtcmVuYW1lLTEtc3RkZXJyLnR4dFVUBQADsMt6WHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIACKJLkrP7NRfNgUAAFIpAAA5ABgAAAAAAAAAAACkgR1xGABz
dG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4va2V5cGF0aC1iYXNpYy1wcml2YXRlLXN0ZGVyci50eHRV
VAUAA7DLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAiiS5K3oqdgB0FAAAvJwAAMQAYAAAA
AAAAAAAApIHGdhgAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL2tleXBhdGgtYmFzaWMtc3RkZXJy
LnR4dFVUBQADsMt6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACOJLkrAuu9JLgUAAHojAAAq
ABgAAAAAAAAAAACkgU58GABzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vbGVhay0xLXN0ZGVyci50
eHRVVAUAA7HLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAjiS5KkFGvxrUIAACfDQIAVQAY
AAAAAAAAAAAApIHggRgAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL21lbW9yeS1pbmRleC1ub3Qt
ZGVsZXRlZC13aXRoLW9iamVjdHN0b3JlLXByaXZhdGUtc3RkZXJyLnR4dFVUBQADsst6WHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIACSJLkqlmAiRgAkAALMaAgBNABgAAAAAAAAAAACkgSSLGABz
dG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vbWVtb3J5LWluZGV4LW5vdC1kZWxldGVkLXdpdGgtb2Jq
ZWN0c3RvcmUtc3RkZXJyLnR4dFVUBQADs8t6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACSJ
LkotC2saBwgAAKRwAABXABgAAAAAAAAAAACkgSuVGABzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4v
bXVsdGlwbGUtb2JqZWN0c3RvcmUtaW5kZXgtY3Vyc29yLWNvbGxpc2lvbi1wcml2YXRlLXN0ZGVy
ci50eHRVVAUAA7PLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAkiS5KqGWeS90IAAC+gwAA
TwAYAAAAAAAAAAAApIHDnRgAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL211bHRpcGxlLW9iamVj
dHN0b3JlLWluZGV4LWN1cnNvci1jb2xsaXNpb24tc3RkZXJyLnR4dFVUBQADs8t6WHV4CwABBPUB
AAAEFAAAAFBLAQIeAxQAAgAIACSJLkrejdQMDgYAAOYvAABCABgAAAAAAAAAAACkgSmnGABzdG9y
YWdlL2luZGV4ZWRkYi9tb2Rlcm4vbmV3LWRhdGFiYXNlLWFmdGVyLXVzZXItZGVsZXRlLXN0ZGVy
ci50eHRVVAUAA7TLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAkiS5KuBksYLwFAAA3MQAA
QgAYAAAAAAAAAAAApIGzrRgAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL29iamVjdHN0b3JlLWF0
dHJpYnV0ZXMtcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAO0y3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4D
FAACAAgAJIkuSrDm+TPLBQAAwzAAADoAGAAAAAAAAAAAAKSB67MYAHN0b3JhZ2UvaW5kZXhlZGRi
L21vZGVybi9vYmplY3RzdG9yZS1hdHRyaWJ1dGVzLXN0ZGVyci50eHRVVAUAA7TLelh1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACAAliS5K7muVbhQJAAAvoAAATwAYAAAAAAAAAAAApIEquhgAc3Rv
cmFnZS9pbmRleGVkZGIvbW9kZXJuL29iamVjdHN0b3JlLWN1cnNvci1hZHZhbmNlLWZhaWx1cmVz
LXByaXZhdGUtc3RkZXJyLnR4dFVUBQADtct6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACWJ
Lkq3i2fdLwkAAGmpAABHABgAAAAAAAAAAACkgcfDGABzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4v
b2JqZWN0c3RvcmUtY3Vyc29yLWFkdmFuY2UtZmFpbHVyZXMtc3RkZXJyLnR4dFVUBQADtct6WHV4
CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACWJLkp8MdXsQAkAAJGhAABQABgAAAAAAAAAAACkgXfN
GABzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vb2JqZWN0c3RvcmUtY3Vyc29yLWNvbnRpbnVlLWZh
aWx1cmVzLXByaXZhdGUtc3RkZXJyLnR4dFVUBQADtst6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQA
AgAIACWJLkoRtEbN2wkAANWuAABIABgAAAAAAAAAAACkgUHXGABzdG9yYWdlL2luZGV4ZWRkYi9t
b2Rlcm4vb2JqZWN0c3RvcmUtY3Vyc29yLWNvbnRpbnVlLWZhaWx1cmVzLXN0ZGVyci50eHRVVAUA
A7bLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAliS5Kn7JAeIEGAAAAPwAAQAAYAAAAAAAA
AAAApIGe4RgAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL29iamVjdHN0b3JlLXJlbmFtZS0xLXBy
aXZhdGUtc3RkZXJyLnR4dFVUBQADtst6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACaJLkp3
TBdnfwYAAGE/AAA4ABgAAAAAAAAAAACkgZnoGABzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vb2Jq
ZWN0c3RvcmUtcmVuYW1lLTEtc3RkZXJyLnR4dFVUBQADt8t6WHV4CwABBPUBAAAEFAAAAFBLAQIe
AxQAAgAIACaJLkq/ZnWztQYAAOc7AAA/ABgAAAAAAAAAAACkgYrvGABzdG9yYWdlL2luZGV4ZWRk
Yi9tb2Rlcm4vb3BlbmN1cnNvci1mYWlsdXJlcy1wcml2YXRlLXN0ZGVyci50eHRVVAUAA7fLelh1
eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAmiS5KlfmoTDYHAAAAPQAANwAYAAAAAAAAAAAApIG4
9hgAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL29wZW5jdXJzb3ItZmFpbHVyZXMtc3RkZXJyLnR4
dFVUBQADt8t6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACaJLkpN80kdqQIAAIsKAABGABgA
AAAAAAAAAACkgV/+GABzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vb3BlbmRhdGFiYXNlLXJlcXVl
c3QtZXZlbnQtcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAO3y3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4D
FAACAAgAJokuSm6KQ6MNAwAATQwAAD4AGAAAAAAAAAAAAKSBiAEZAHN0b3JhZ2UvaW5kZXhlZGRi
L21vZGVybi9vcGVuZGF0YWJhc2UtcmVxdWVzdC1ldmVudC1zdGRlcnIudHh0VVQFAAO4y3pYdXgL
AAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAJokuSkNgF+B3AQAAGwUAAEAAGAAAAAAAAAAAAKSBDQUZ
AHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9vcGVuZGF0YWJhc2UtcmVxdWVzdC1wcml2YXRlLXN0
ZGVyci50eHRVVAUAA7jLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAmiS5KrsuHjDUBAABp
BgAAOAAYAAAAAAAAAAAApIH+BhkAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL29wZW5kYXRhYmFz
ZS1yZXF1ZXN0LXN0ZGVyci50eHRVVAUAA7jLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAm
iS5KLoChBCMEAADdJAAAVAAYAAAAAAAAAAAApIGlCBkAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJu
L29wZW5kYXRhYmFzZS1zdWNjZXNzLWFmdGVyLXZlcnNpb25jaGFuZ2UtcHJpdmF0ZS1zdGRlcnIu
dHh0VVQFAAO4y3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAJokuSghtJ/xpBAAAXCYAAEwA
GAAAAAAAAAAAAKSBVg0ZAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9vcGVuZGF0YWJhc2Utc3Vj
Y2Vzcy1hZnRlci12ZXJzaW9uY2hhbmdlLXN0ZGVyci50eHRVVAUAA7jLelh1eAsAAQT1AQAABBQA
AABQSwECHgMUAAIACAAmiS5Kx4mwvIIEAAAgMQAAQQAYAAAAAAAAAAAApIFFEhkAc3RvcmFnZS9p
bmRleGVkZGIvbW9kZXJuL29wZW5kYXRhYmFzZS12ZXJzaW9ucy1wcml2YXRlLXN0ZGVyci50eHRV
VAUAA7jLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAniS5KWiqENJAEAAC5LAAAOQAYAAAA
AAAAAAAApIFCFxkAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL29wZW5kYXRhYmFzZS12ZXJzaW9u
cy1zdGRlcnIudHh0VVQFAAO5y3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAJ4kuSvgRrj78
BAAArB4AAD4AGAAAAAAAAAAAAKSBRRwZAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9yZXF1ZXN0
LXJlYWR5c3RhdGUtcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAO5y3pYdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DFAACAAgAJ4kuSogiNUmGBQAA9iEAADYAGAAAAAAAAAAAAKSBuSEZAHN0b3JhZ2UvaW5kZXhl
ZGRiL21vZGVybi9yZXF1ZXN0LXJlYWR5c3RhdGUtc3RkZXJyLnR4dFVUBQADuct6WHV4CwABBPUB
AAAEFAAAAFBLAQIeAxQAAgAIACeJLkp5VWbaeQYAACU7AABDABgAAAAAAAAAAACkga8nGQBzdG9y
YWdlL2luZGV4ZWRkYi9tb2Rlcm4vdHJhbnNhY3Rpb24tc2NoZWR1bGVyLTEtcHJpdmF0ZS1zdGRl
cnIudHh0VVQFAAO5y3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAJ4kuSp5vCrtHBwAAL00A
AEMAGAAAAAAAAAAAAKSBpS4ZAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi90cmFuc2FjdGlvbi1z
Y2hlZHVsZXItMi1wcml2YXRlLXN0ZGVyci50eHRVVAUAA7rLelh1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACAAniS5KMAXiSQoHAAAOSwAAQwAYAAAAAAAAAAAApIFpNhkAc3RvcmFnZS9pbmRleGVk
ZGIvbW9kZXJuL3RyYW5zYWN0aW9uLXNjaGVkdWxlci0zLXByaXZhdGUtc3RkZXJyLnR4dFVUBQAD
ust6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACeJLkqlYYmftwYAAMhAAAA7ABgAAAAAAAAA
AACkgfA9GQBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vdHJhbnNhY3Rpb24tc2NoZWR1bGVyLTMt
c3RkZXJyLnR4dFVUBQADust6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACiJLkqqLMM8pAYA
AM91AABDABgAAAAAAAAAAACkgRxFGQBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vdHJhbnNhY3Rp
b24tc2NoZWR1bGVyLTQtcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAO7y3pYdXgLAAEE9QEAAAQUAAAA
UEsBAh4DFAACAAgAKIkuSjZfNScMBwAAPn4AADsAGAAAAAAAAAAAAKSBPUwZAHN0b3JhZ2UvaW5k
ZXhlZGRiL21vZGVybi90cmFuc2FjdGlvbi1zY2hlZHVsZXItNC1zdGRlcnIudHh0VVQFAAO7y3pY
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAKIkuSp48adgeBwAAllQAAEMAGAAAAAAAAAAAAKSB
vlMZAHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi90cmFuc2FjdGlvbi1zY2hlZHVsZXItNS1wcml2
YXRlLXN0ZGVyci50eHRVVAUAA7vLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAoiS5KjWK3
tJ4GAABhSQAAQwAYAAAAAAAAAAAApIFZWxkAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL3RyYW5z
YWN0aW9uLXNjaGVkdWxlci02LXByaXZhdGUtc3RkZXJyLnR4dFVUBQADu8t6WHV4CwABBPUBAAAE
FAAAAFBLAQIeAxQAAgAIACiJLkqugrggRwUAAIQyAABLABgAAAAAAAAAAACkgXRiGQBzdG9yYWdl
L2luZGV4ZWRkYi9tb2Rlcm4vdHJhbnNhY3Rpb25zLXN0b3Atb24tbmF2aWdhdGlvbi1wcml2YXRl
LXN0ZGVyci50eHRVVAUAA7zLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAApiS5KhJsJqtAL
AADOYAEAQwAYAAAAAAAAAAAApIFAaBkAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL3RyYW5zYWN0
aW9ucy1zdG9wLW9uLW5hdmlnYXRpb24tc3RkZXJyLnR4dFVUBQADvct6WHV4CwABBPUBAAAEFAAA
AFBLAQIeAxQAAgAIACmJLkr+R9z69gQAADA1AABLABgAAAAAAAAAAACkgY10GQBzdG9yYWdlL2lu
ZGV4ZWRkYi9tb2Rlcm4vdmVyc2lvbmNoYW5nZS1hYm9ydC10aGVuLXJlb3Blbi1wcml2YXRlLXN0
ZGVyci50eHRVVAUAA73Lelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAApiS5KNQnjDX0FAABx
PgAAQwAYAAAAAAAAAAAApIEIehkAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL3ZlcnNpb25jaGFu
Z2UtYWJvcnQtdGhlbi1yZW9wZW4tc3RkZXJyLnR4dFVUBQADvct6WHV4CwABBPUBAAAEFAAAAFBL
AQIeAxQAAgAIACmJLkp/PY3zLAUAAEUrAAA/ABgAAAAAAAAAAACkgQKAGQBzdG9yYWdlL2luZGV4
ZWRkYi9tb2Rlcm4vdmVyc2lvbmNoYW5nZS1ldmVudC1wcml2YXRlLXN0ZGVyci50eHRVVAUAA73L
elh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAApiS5K7FPA8FIFAADIKwAANwAYAAAAAAAAAAAA
pIGnhRkAc3RvcmFnZS9pbmRleGVkZGIvbW9kZXJuL3ZlcnNpb25jaGFuZ2UtZXZlbnQtc3RkZXJy
LnR4dFVUBQADvst6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACqJLkrspeo1XQEAAAoFAAA0
ABgAAAAAAAAAAACkgWqLGQBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vd29ya2Vycy1kaXNhYmxl
ZC1zdGRlcnIudHh0VVQFAAO/y3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAOokuShZP5+R2
BwAAvHMAADQAGAAAAAAAAAAAAKSBNY0ZAHN0b3JhZ2UvaW5kZXhlZGRiL211dGF0aW5nLWN1cnNv
ci1wcml2YXRlLXN0ZGVyci50eHRVVAUAA+DLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA6
iS5K/MVMpQQIAABdggAALAAYAAAAAAAAAAAApIEZlRkAc3RvcmFnZS9pbmRleGVkZGIvbXV0YXRp
bmctY3Vyc29yLXN0ZGVyci50eHRVVAUAA+DLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA6
iS5KjSkxaWMEAABfFwAARAAYAAAAAAAAAAAApIGDnRkAc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0
LWxvb2t1cHMtaW4tdmVyc2lvbmNoYW5nZS1wcml2YXRlLXN0ZGVyci50eHRVVAUAA+DLelh1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACAA7iS5K9J8CJncEAACHGAAAPAAYAAAAAAAAAAAApIFkohkA
c3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0LWxvb2t1cHMtaW4tdmVyc2lvbmNoYW5nZS1zdGRlcnIu
dHh0VVQFAAPhy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAO4kuShL0ltRRAwAAmA8AAEMA
GAAAAAAAAAAAAKSBUacZAHN0b3JhZ2UvaW5kZXhlZGRiL29iamVjdFN0b3JlLXJlcXVpcmVkLWFy
Z3VtZW50cy1wcml2YXRlLXN0ZGVyci50eHRVVAUAA+HLelh1eAsAAQT1AQAABBQAAABQSwECHgMU
AAIACAA7iS5KJoNPr8gDAADcEQAAOwAYAAAAAAAAAAAApIEfqxkAc3RvcmFnZS9pbmRleGVkZGIv
b2JqZWN0U3RvcmUtcmVxdWlyZWQtYXJndW1lbnRzLXN0ZGVyci50eHRVVAUAA+HLelh1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACAA7iS5K7amUXzEIAAACegAAPgAYAAAAAAAAAAAApIFcrxkAc3Rv
cmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUtYXV0b2luY3JlbWVudC1wcml2YXRlLXN0ZGVyci50
eHRVVAUAA+LLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA8iS5KhuO045IIAADRewAANgAY
AAAAAAAAAAAApIEFuBkAc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUtYXV0b2luY3JlbWVu
dC1zdGRlcnIudHh0VVQFAAPjy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAPIkuShqpulTa
CQAA4ZUAADcAGAAAAAAAAAAAAKSBB8EZAHN0b3JhZ2UvaW5kZXhlZGRiL29iamVjdHN0b3JlLWJh
c2ljcy1wcml2YXRlLXN0ZGVyci50eHRVVAUAA+PLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIA
CAA9iS5Kh1b+0J4KAADGmgAALwAYAAAAAAAAAAAApIFSyxkAc3RvcmFnZS9pbmRleGVkZGIvb2Jq
ZWN0c3RvcmUtYmFzaWNzLXN0ZGVyci50eHRVVAUAA+bLelh1eAsAAQT1AQAABBQAAABQSwECHgMU
AAIACAA9iS5KJ1H/u0ILAABfnAAANwAYAAAAAAAAAAAApIFZ1hkAc3RvcmFnZS9pbmRleGVkZGIv
b2JqZWN0c3RvcmUtYmFzaWNzLXdvcmtlcnMtc3RkZXJyLnR4dFVUBQAD5ct6WHV4CwABBPUBAAAE
FAAAAFBLAQIeAxQAAgAIAD2JLkpjOq2QVAcAAGI9AAA2ABgAAAAAAAAAAACkgQziGQBzdG9yYWdl
L2luZGV4ZWRkYi9vYmplY3RzdG9yZS1jbGVhci1wcml2YXRlLXN0ZGVyci50eHRVVAUAA+bLelh1
eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA9iS5KZ46OXaYHAACPQAAALgAYAAAAAAAAAAAApIHQ
6RkAc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUtY2xlYXItc3RkZXJyLnR4dFVUBQAD5st6
WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAECJLkpSOYzyOAsAAJizAQA2ABgAAAAAAAAAAACk
gd7xGQBzdG9yYWdlL2luZGV4ZWRkYi9vYmplY3RzdG9yZS1jb3VudC1wcml2YXRlLXN0ZGVyci50
eHRVVAUAA+fLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABBiS5K06z4qYsPAADMEQMALgAY
AAAAAAAAAAAApIGG/RkAc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUtY291bnQtc3RkZXJy
LnR4dFVUBQAD6ct6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAEOJLkpgCQHJyhAAAOVBBwA3
ABgAAAAAAAAAAACkgXkNGgBzdG9yYWdlL2luZGV4ZWRkYi9vYmplY3RzdG9yZS1jdXJzb3ItcHJp
dmF0ZS1zdGRlcnIudHh0VVQFAAPuy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgARokuSrPI
hwy7FQAAiPUIAC8AGAAAAAAAAAAAAKSBtB4aAHN0b3JhZ2UvaW5kZXhlZGRiL29iamVjdHN0b3Jl
LWN1cnNvci1zdGRlcnIudHh0VVQFAAPzy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgARoku
Svz1BxM/BwAA2UwAAEIAGAAAAAAAAAAAAKSB2DQaAHN0b3JhZ2UvaW5kZXhlZGRiL29iamVjdHN0
b3JlLXJlbW92ZW9iamVjdHN0b3JlLXByaXZhdGUtc3RkZXJyLnR4dFVUBQAD9Mt6WHV4CwABBPUB
AAAEFAAAAFBLAQIeAxQAAgAIAEaJLkplNIq3ywcAAKNPAAA6ABgAAAAAAAAAAACkgZM8GgBzdG9y
YWdlL2luZGV4ZWRkYi9vYmplY3RzdG9yZS1yZW1vdmVvYmplY3RzdG9yZS1zdGRlcnIudHh0VVQF
AAP0y3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgARokuSvXalHVsCAAAvQkBADAAGAAAAAAA
AAAAAKSB0kQaAHN0b3JhZ2UvaW5kZXhlZGRiL29kZC1zdHJpbmdzLXByaXZhdGUtc3RkZXJyLnR4
dFVUBQAD9Mt6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAEeJLkr/vN/+PwQAAN4zAAA2ABgA
AAAAAAAAAACkgahNGgBzdG9yYWdlL2luZGV4ZWRkYi9vcGVuLWJhZC12ZXJzaW9ucy1wcml2YXRl
LXN0ZGVyci50eHRVVAUAA/bLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABIiS5Kws0XKPID
AACFIgAALgAYAAAAAAAAAAAApIFXUhoAc3RvcmFnZS9pbmRleGVkZGIvb3Blbi1iYWQtdmVyc2lv
bnMtc3RkZXJyLnR4dFVUBQAD98t6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAEiJLkpHzdci
0wQAAIEjAAAwABgAAAAAAAAAAACkgbFWGgBzdG9yYWdlL2luZGV4ZWRkYi9vcGVuLWN1cnNvci1w
cml2YXRlLXN0ZGVyci50eHRVVAUAA/fLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABIiS5K
aoOCdaQFAAB+KAAAKAAYAAAAAAAAAAAApIHuWxoAc3RvcmFnZS9pbmRleGVkZGIvb3Blbi1jdXJz
b3Itc3RkZXJyLnR4dFVUBQAD98t6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAEiJLkpEdTDA
SAYAAFQ9AAA8ABgAAAAAAAAAAACkgfRhGgBzdG9yYWdlL2luZGV4ZWRkYi9vcGVuLWR1cmluZy10
cmFuc2FjdGlvbi1wcml2YXRlLXN0ZGVyci50eHRVVAUAA/jLelh1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACABIiS5KfMxGG0wGAAAFQQAANAAYAAAAAAAAAAAApIGyaBoAc3RvcmFnZS9pbmRleGVk
ZGIvb3Blbi1kdXJpbmctdHJhbnNhY3Rpb24tc3RkZXJyLnR4dFVUBQAD+Mt6WHV4CwABBPUBAAAE
FAAAAFBLAQIeAxQAAgAIAEiJLkpk1vsz9wQAAOo4AAAyABgAAAAAAAAAAACkgWxvGgBzdG9yYWdl
L2luZGV4ZWRkYi9vcGVuLW9yZGVyaW5nLXByaXZhdGUtc3RkZXJyLnR4dFVUBQAD+Mt6WHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAEmJLkq0QRb8IwUAAB06AAAqABgAAAAAAAAAAACkgc90GgBz
dG9yYWdlL2luZGV4ZWRkYi9vcGVuLW9yZGVyaW5nLXN0ZGVyci50eHRVVAUAA/nLelh1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACABJiS5KUETbNeMDAAAcIgAALwAYAAAAAAAAAAAApIFWehoAc3Rv
cmFnZS9pbmRleGVkZGIvb3Blbi10d2ljZS13b3JrZXJzLXN0ZGVyci50eHRVVAUAA/nLelh1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACABJiS5KslggvkAJAAAFnAAAMwAYAAAAAAAAAAAApIGifhoA
c3RvcmFnZS9pbmRleGVkZGIvb3BlbmN1cnNvci1rZXktcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAP5
y3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgASYkuSvf1M6+7CQAAqL4AACsAGAAAAAAAAAAA
AKSBT4gaAHN0b3JhZ2UvaW5kZXhlZGRiL29wZW5jdXJzb3Ita2V5LXN0ZGVyci50eHRVVAUAA/rL
elh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABJiS5KCDCFxL0KAACJHgEANwAYAAAAAAAAAAAA
pIFvkhoAc3RvcmFnZS9pbmRleGVkZGIvb3B0aW9uYWwtYXJndW1lbnRzLXByaXZhdGUtc3RkZXJy
LnR4dFVUBQAD+st6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAEqJLkqjPbOTXwwAAGRpAQAv
ABgAAAAAAAAAAACkgZ2dGgBzdG9yYWdlL2luZGV4ZWRkYi9vcHRpb25hbC1hcmd1bWVudHMtc3Rk
ZXJyLnR4dFVUBQAD+8t6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAEqJLkq0kGir2QYAAKI+
AAA1ABgAAAAAAAAAAACkgWWqGgBzdG9yYWdlL2luZGV4ZWRkYi9wZW5kaW5nLWFjdGl2aXR5LXBy
aXZhdGUtc3RkZXJyLnR4dFVUBQAD/Mt6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAEyJLkrU
YsixcAcAAN5BAAAtABgAAAAAAAAAAACkga2xGgBzdG9yYWdlL2luZGV4ZWRkYi9wZW5kaW5nLWFj
dGl2aXR5LXN0ZGVyci50eHRVVAUAA//Lelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABLiS5K
cpUOnN8HAADuRAAANQAYAAAAAAAAAAAApIGEuRoAc3RvcmFnZS9pbmRleGVkZGIvcGVuZGluZy1h
Y3Rpdml0eS13b3JrZXJzLXN0ZGVyci50eHRVVAUAA/3Lelh1eAsAAQT1AQAABBQAAABQSwECHgMU
AAIACABMiS5Kx6fIIwAFAADQJQAAQwAYAAAAAAAAAAAApIHSwRoAc3RvcmFnZS9pbmRleGVkZGIv
cGVuZGluZy12ZXJzaW9uLWNoYW5nZS1vbi1leGl0LXByaXZhdGUtc3RkZXJyLnR4dFVUBQAD/8t6
WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAEyJLkrKZith4AQAACQfAAA7ABgAAAAAAAAAAACk
gU/HGgBzdG9yYWdlL2luZGV4ZWRkYi9wZW5kaW5nLXZlcnNpb24tY2hhbmdlLW9uLWV4aXQtc3Rk
ZXJyLnR4dFVUBQAD/8t6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAEyJLkrwEo1PhAQAAL8f
AABBABgAAAAAAAAAAACkgaTMGgBzdG9yYWdlL2luZGV4ZWRkYi9wZW5kaW5nLXZlcnNpb24tY2hh
bmdlLXN0dWNrLXByaXZhdGUtc3RkZXJyLnR4dFVUBQAD/8t6WHV4CwABBPUBAAAEFAAAAFBLAQIe
AxQAAgAIAEyJLkrr0fXbvgQAAAokAAA5ABgAAAAAAAAAAACkgaPRGgBzdG9yYWdlL2luZGV4ZWRk
Yi9wZW5kaW5nLXZlcnNpb24tY2hhbmdlLXN0dWNrLXN0ZGVyci50eHRVVAUAAwDMelh1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACABMiS5KD6sZwLMEAABJIgAAVgAYAAAAAAAAAAAApIHU1hoAc3Rv
cmFnZS9pbmRleGVkZGIvcGVuZGluZy12ZXJzaW9uLWNoYW5nZS1zdHVjay13b3Jrcy13aXRoLXRl
cm1pbmF0ZS1wcml2YXRlLXN0ZGVyci50eHRVVAUAAwDMelh1eAsAAQT1AQAABBQAAABQSwECHgMU
AAIACABMiS5KVx9cQO4EAAC6JAAATgAYAAAAAAAAAAAApIEX3BoAc3RvcmFnZS9pbmRleGVkZGIv
cGVuZGluZy12ZXJzaW9uLWNoYW5nZS1zdHVjay13b3Jrcy13aXRoLXRlcm1pbmF0ZS1zdGRlcnIu
dHh0VVQFAAMAzHpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgATYkuShGpdudcBgAAn2cAADAA
GAAAAAAAAAAAAKSBjeEaAHN0b3JhZ2UvaW5kZXhlZGRiL3BlcnNpc3RlbmNlLXByaXZhdGUtc3Rk
ZXJyLnR4dFVUBQADAcx6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAE2JLkp1EecRbwYAAFVn
AAAoABgAAAAAAAAAAACkgVPoGgBzdG9yYWdlL2luZGV4ZWRkYi9wZXJzaXN0ZW5jZS1zdGRlcnIu
dHh0VVQFAAMBzHpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgATYkuSpY22aPNCAAAsHYAADsA
GAAAAAAAAAAAAKSBJO8aAHN0b3JhZ2UvaW5kZXhlZGRiL3ByZWZldGNoLWJ1Z2ZpeC0xMDgwNzEt
cHJpdmF0ZS1zdGRlcnIudHh0VVQFAAMBzHpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgATYku
SiKIJNF3CQAA4YIAADMAGAAAAAAAAAAAAKSBZvgaAHN0b3JhZ2UvaW5kZXhlZGRiL3ByZWZldGNo
LWJ1Z2ZpeC0xMDgwNzEtc3RkZXJyLnR4dFVUBQADAsx6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQA
AgAIAE6JLkrmyZVxwx4AAPBDCAA6ABgAAAAAAAAAAACkgUoCGwBzdG9yYWdlL2luZGV4ZWRkYi9w
cmVmZXRjaC1pbnZhbGlkYXRpb24tcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAMDzHpYdXgLAAEE9QEA
AAQUAAAAUEsBAh4DFAACAAgAT4kuSg/cqtWPJQAANqAJADIAGAAAAAAAAAAAAKSBgSEbAHN0b3Jh
Z2UvaW5kZXhlZGRiL3ByZWZldGNoLWludmFsaWRhdGlvbi1zdGRlcnIudHh0VVQFAAMFzHpYdXgL
AAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAT4kuSoliQ5eTBwAAB2UAADIAGAAAAAAAAAAAAKSBfEcb
AHN0b3JhZ2UvaW5kZXhlZGRiL3ByZWZldGNoLXJhY2UtcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAMF
zHpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAT4kuSq259xDwBwAAmmsAACoAGAAAAAAAAAAA
AKSBe08bAHN0b3JhZ2UvaW5kZXhlZGRiL3ByZWZldGNoLXJhY2Utc3RkZXJyLnR4dFVUBQADBsx6
WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAE+JLkpFmdCgSAYAAKpDAABGABgAAAAAAAAAAACk
gc9XGwBzdG9yYWdlL2luZGV4ZWRkYi9wcmltYXJ5LWtleS11bmlxdWUtdG8tb2JqZWN0c3RvcmUt
cHJpdmF0ZS1zdGRlcnIudHh0VVQFAAMGzHpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAT4ku
Stxi0WuFBgAAMlAAAD4AGAAAAAAAAAAAAKSBl14bAHN0b3JhZ2UvaW5kZXhlZGRiL3ByaW1hcnkt
a2V5LXVuaXF1ZS10by1vYmplY3RzdG9yZS1zdGRlcnIudHh0VVQFAAMGzHpYdXgLAAEE9QEAAAQU
AAAAUEsBAh4DFAACAAgAT4kuSiplJ4ZXBQAA2SMAADQAGAAAAAAAAAAAAKSBlGUbAHN0b3JhZ2Uv
aW5kZXhlZGRiL3F1ZXVlZC1jb21tYW5kcy1wcml2YXRlLXN0ZGVyci50eHRVVAUAAwbMelh1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACABQiS5K2cxhz/UFAADeJQAALAAYAAAAAAAAAAAApIFZaxsA
c3RvcmFnZS9pbmRleGVkZGIvcXVldWVkLWNvbW1hbmRzLXN0ZGVyci50eHRVVAUAAwfMelh1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACABQiS5KVQEfZKkFAAD4IgAALQAYAAAAAAAAAAAApIG0cRsA
c3RvcmFnZS9pbmRleGVkZGIvcmVhZG9ubHktcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAMHzHpYdXgL
AAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAUIkuSgVZGrRKAwAApg8AADgAGAAAAAAAAAAAAKSBxHcb
AHN0b3JhZ2UvaW5kZXhlZGRiL3JlYWRvbmx5LXByb3BlcnRpZXMtcHJpdmF0ZS1zdGRlcnIudHh0
VVQFAAMHzHpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAUIkuSgA4RnTLAwAA3BEAADAAGAAA
AAAAAAAAAKSBgHsbAHN0b3JhZ2UvaW5kZXhlZGRiL3JlYWRvbmx5LXByb3BlcnRpZXMtc3RkZXJy
LnR4dFVUBQADB8x6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAFCJLkoKztKfNwYAAFwlAAAl
ABgAAAAAAAAAAACkgbV/GwBzdG9yYWdlL2luZGV4ZWRkYi9yZWFkb25seS1zdGRlcnIudHh0VVQF
AAMHzHpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAUIkuSnV0yZDDBgAApy8AADsAGAAAAAAA
AAAAAKSBS4YbAHN0b3JhZ2UvaW5kZXhlZGRiL3JlcXVlc3QtY29udGludWUtYWJvcnQtcHJpdmF0
ZS1zdGRlcnIudHh0VVQFAAMIzHpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAUIkuSnp154ng
BgAAYS4AADMAGAAAAAAAAAAAAKSBg40bAHN0b3JhZ2UvaW5kZXhlZGRiL3JlcXVlc3QtY29udGlu
dWUtYWJvcnQtc3RkZXJyLnR4dFVUBQADCMx6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAFCJ
LkqXujI+XAYAAJdEAAA+ABgAAAAAAAAAAACkgdCUGwBzdG9yYWdlL2luZGV4ZWRkYi9yZXF1ZXN0
LWV2ZW50LXByb3BhZ2F0aW9uLXByaXZhdGUtc3RkZXJyLnR4dFVUBQADCMx6WHV4CwABBPUBAAAE
FAAAAFBLAQIeAxQAAgAIAFGJLkrBSmSGZQYAAKNDAAA2ABgAAAAAAAAAAACkgaSbGwBzdG9yYWdl
L2luZGV4ZWRkYi9yZXF1ZXN0LWV2ZW50LXByb3BhZ2F0aW9uLXN0ZGVyci50eHRVVAUAAwnMelh1
eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABRiS5K/fQ8/0oGAADnLAAAOQAYAAAAAAAAAAAApIF5
ohsAc3RvcmFnZS9pbmRleGVkZGIvcmVxdWVzdC1yZXN1bHQtY2FjaGUtcHJpdmF0ZS1zdGRlcnIu
dHh0VVQFAAMJzHpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAUYkuSm0OAjGkBgAAFS4AADEA
GAAAAAAAAAAAAKSBNqkbAHN0b3JhZ2UvaW5kZXhlZGRiL3JlcXVlc3QtcmVzdWx0LWNhY2hlLXN0
ZGVyci50eHRVVAUAAwnMelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABRiS5KpBQ+5ccEAADG
IQAAOAAYAAAAAAAAAAAApIFFsBsAc3RvcmFnZS9pbmRleGVkZGIvc2V0X3ZlcnNpb25fYmxvY2tl
ZC1wcml2YXRlLXN0ZGVyci50eHRVVAUAAwnMelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABR
iS5KO7iR204FAACTJAAAMAAYAAAAAAAAAAAApIF+tRsAc3RvcmFnZS9pbmRleGVkZGIvc2V0X3Zl
cnNpb25fYmxvY2tlZC1zdGRlcnIudHh0VVQFAAMJzHpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAAC
AAgAUYkuSls6CPK5BAAAJioAAE4AGAAAAAAAAAAAAKSBNrsbAHN0b3JhZ2UvaW5kZXhlZGRiL3Nl
dHZlcnNpb24tYmxvY2tlZC1ieS12ZXJzaW9uY2hhbmdlLWNsb3NlLXByaXZhdGUtc3RkZXJyLnR4
dFVUBQADCsx6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAFGJLko1bDhThAQAAMkqAABGABgA
AAAAAAAAAACkgXfAGwBzdG9yYWdlL2luZGV4ZWRkYi9zZXR2ZXJzaW9uLWJsb2NrZWQtYnktdmVy
c2lvbmNoYW5nZS1jbG9zZS1zdGRlcnIudHh0VVQFAAMKzHpYdXgLAAEE9QEAAAQUAAAAUEsBAh4D
FAACAAgAUYkuSpfTOnSmBAAAxScAADsAGAAAAAAAAAAAAKSBe8UbAHN0b3JhZ2UvaW5kZXhlZGRi
L3NldHZlcnNpb24tbm90LWJsb2NrZWQtcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAMKzHpYdXgLAAEE
9QEAAAQUAAAAUEsBAh4DFAACAAgAUYkuSg9Y2JPNBAAAvycAADMAGAAAAAAAAAAAAKSBlsobAHN0
b3JhZ2UvaW5kZXhlZGRiL3NldHZlcnNpb24tbm90LWJsb2NrZWQtc3RkZXJyLnR4dFVUBQADCsx6
WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAFKJLkoqMGfHXhAAAO7KBAA1ABgAAAAAAAAAAACk
gdDPGwBzdG9yYWdlL2luZGV4ZWRkYi9zdHJ1Y3R1cmVkLWNsb25lLXByaXZhdGUtc3RkZXJyLnR4
dFVUBQADDMx6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAFSJLkpZthVf5Q8AAHDXBAAtABgA
AAAAAAAAAACkgZ3gGwBzdG9yYWdlL2luZGV4ZWRkYi9zdHJ1Y3R1cmVkLWNsb25lLXN0ZGVyci50
eHRVVAUAAw/Melh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABUiS5KsizRCxoGAABAKAAALgAY
AAAAAAAAAAAApIHp8BsAc3RvcmFnZS9pbmRleGVkZGIvdHJhbnNhY3Rpb24tYWJvcnQtc3RkZXJy
LnR4dFVUBQADD8x6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAFSJLkrSr5ojhAwAAHzzAAA8
ABgAAAAAAAAAAACkgWv3GwBzdG9yYWdlL2luZGV4ZWRkYi90cmFuc2FjdGlvbi1hY3RpdmUtZmxh
Zy1wcml2YXRlLXN0ZGVyci50eHRVVAUAAw/Melh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABU
iS5Kd2wIlQ8PAADmHAEANAAYAAAAAAAAAAAApIFlBBwAc3RvcmFnZS9pbmRleGVkZGIvdHJhbnNh
Y3Rpb24tYWN0aXZlLWZsYWctc3RkZXJyLnR4dFVUBQADEMx6WHV4CwABBPUBAAAEFAAAAFBLAQIe
AxQAAgAIAFSJLkoZG4679gUAAC8+AAA8ABgAAAAAAAAAAACkgeITHABzdG9yYWdlL2luZGV4ZWRk
Yi90cmFuc2FjdGlvbi1hZnRlci1jbG9zZS1wcml2YXRlLXN0ZGVyci50eHRVVAUAAxDMelh1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACABViS5KgplRtwEGAAD7PQAANAAYAAAAAAAAAAAApIFOGhwA
c3RvcmFnZS9pbmRleGVkZGIvdHJhbnNhY3Rpb24tYWZ0ZXItY2xvc2Utc3RkZXJyLnR4dFVUBQAD
Ecx6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAFWJLkq0tYRmGgcAAFV1AABGABgAAAAAAAAA
AACkgb0gHABzdG9yYWdlL2luZGV4ZWRkYi90cmFuc2FjdGlvbi1hbmQtb2JqZWN0c3RvcmUtY2Fs
bHMtcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAMRzHpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA
VYkuSkVaWRxjBwAAvIIAAD4AGAAAAAAAAAAAAKSBVygcAHN0b3JhZ2UvaW5kZXhlZGRiL3RyYW5z
YWN0aW9uLWFuZC1vYmplY3RzdG9yZS1jYWxscy1zdGRlcnIudHh0VVQFAAMRzHpYdXgLAAEE9QEA
AAQUAAAAUEsBAh4DFAACAAgAVYkuSvjI9qGfCAAALawAADcAGAAAAAAAAAAAAKSBMjAcAHN0b3Jh
Z2UvaW5kZXhlZGRiL3RyYW5zYWN0aW9uLWJhc2ljcy1wcml2YXRlLXN0ZGVyci50eHRVVAUAAxLM
elh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABViS5KMtO5KzsJAABEswAALwAYAAAAAAAAAAAA
pIFCORwAc3RvcmFnZS9pbmRleGVkZGIvdHJhbnNhY3Rpb24tYmFzaWNzLXN0ZGVyci50eHRVVAUA
AxLMelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABWiS5K0O7yVTgFAACPKgAAVwAYAAAAAAAA
AAAApIHmQhwAc3RvcmFnZS9pbmRleGVkZGIvdHJhbnNhY3Rpb24tY29tcGxldGUtd2l0aC1qcy1y
ZWN1cnNpb24tY3Jvc3MtZnJhbWUtcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAMTzHpYdXgLAAEE9QEA
AAQUAAAAUEsBAh4DFAACAAgAVokuSneTDKHKBQAArikAAE8AGAAAAAAAAAAAAKSBr0gcAHN0b3Jh
Z2UvaW5kZXhlZGRiL3RyYW5zYWN0aW9uLWNvbXBsZXRlLXdpdGgtanMtcmVjdXJzaW9uLWNyb3Nz
LWZyYW1lLXN0ZGVyci50eHRVVAUAAxPMelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABWiS5K
53ildYwFAADtKQAASwAYAAAAAAAAAAAApIECTxwAc3RvcmFnZS9pbmRleGVkZGIvdHJhbnNhY3Rp
b24tY29tcGxldGUtd2l0aC1qcy1yZWN1cnNpb24tcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAMTzHpY
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAVokuStq9qRLHBQAAIyoAAEMAGAAAAAAAAAAAAKSB
E1UcAHN0b3JhZ2UvaW5kZXhlZGRiL3RyYW5zYWN0aW9uLWNvbXBsZXRlLXdpdGgtanMtcmVjdXJz
aW9uLXN0ZGVyci50eHRVVAUAAxPMelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABWiS5KCWga
g9wGAABKVwAAQQAYAAAAAAAAAAAApIFXWxwAc3RvcmFnZS9pbmRleGVkZGIvdHJhbnNhY3Rpb24t
Y29tcGxldGUtd29ya2Vycy1wcml2YXRlLXN0ZGVyci50eHRVVAUAAxTMelh1eAsAAQT1AQAABBQA
AABQSwECHgMUAAIACABWiS5KWUTX2mIGAACAVAAAOQAYAAAAAAAAAAAApIGuYhwAc3RvcmFnZS9p
bmRleGVkZGIvdHJhbnNhY3Rpb24tY29tcGxldGUtd29ya2Vycy1zdGRlcnIudHh0VVQFAAMUzHpY
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAVokuSnS/BVZ/BgAAqFIAAE4AGAAAAAAAAAAAAKSB
g2kcAHN0b3JhZ2UvaW5kZXhlZGRiL3RyYW5zYWN0aW9uLWNvb3JkaW5hdGlvbi1hY3Jvc3MtZGF0
YWJhc2VzLXByaXZhdGUtc3RkZXJyLnR4dFVUBQADFMx6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQA
AgAIAFeJLkoUO24/mQYAAMRUAABGABgAAAAAAAAAAACkgYpwHABzdG9yYWdlL2luZGV4ZWRkYi90
cmFuc2FjdGlvbi1jb29yZGluYXRpb24tYWNyb3NzLWRhdGFiYXNlcy1zdGRlcnIudHh0VVQFAAMV
zHpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAV4kuSpMr/zphBgAA3zoAAE0AGAAAAAAAAAAA
AKSBo3ccAHN0b3JhZ2UvaW5kZXhlZGRiL3RyYW5zYWN0aW9uLWNvb3JkaW5hdGlvbi13aXRoaW4t
ZGF0YWJhc2UtcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAMVzHpYdXgLAAEE9QEAAAQUAAAAUEsBAh4D
FAACAAgAV4kuSq5vI0UTAQAAtQMAAD8AGAAAAAAAAAAAAKSBi34cAHN0b3JhZ2UvaW5kZXhlZGRi
L3RyYW5zYWN0aW9uLWNyYXNoLWluLXRhc2tzLXByaXZhdGUtc3RkZXJyLnR4dFVUBQADFcx6WHV4
CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAFeJLkplXSbZLwEAADYEAAA3ABgAAAAAAAAAAACkgReA
HABzdG9yYWdlL2luZGV4ZWRkYi90cmFuc2FjdGlvbi1jcmFzaC1pbi10YXNrcy1zdGRlcnIudHh0
VVQFAAMVzHpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAV4kuShjsEouGBAAA6BgAAD8AGAAA
AAAAAAAAAKSBt4EcAHN0b3JhZ2UvaW5kZXhlZGRiL3RyYW5zYWN0aW9uLWNyYXNoLW9uLWFib3J0
LXByaXZhdGUtc3RkZXJyLnR4dFVUBQADFsx6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAFeJ
LkopsJz6rQQAAMAZAAA3ABgAAAAAAAAAAACkgbaGHABzdG9yYWdlL2luZGV4ZWRkYi90cmFuc2Fj
dGlvbi1jcmFzaC1vbi1hYm9ydC1zdGRlcnIudHh0VVQFAAMWzHpYdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DFAACAAgAWIkuSo02kC6qBwAAGGUAADYAGAAAAAAAAAAAAKSB1IscAHN0b3JhZ2UvaW5kZXhl
ZGRiL3RyYW5zYWN0aW9uLWVycm9yLXByaXZhdGUtc3RkZXJyLnR4dFVUBQADF8x6WHV4CwABBPUB
AAAEFAAAAFBLAQIeAxQAAgAIAFiJLkrHkx57QggAAE9kAAAuABgAAAAAAAAAAACkge6THABzdG9y
YWdlL2luZGV4ZWRkYi90cmFuc2FjdGlvbi1lcnJvci1zdGRlcnIudHh0VVQFAAMXzHpYdXgLAAEE
9QEAAAQUAAAAUEsBAh4DFAACAAgAWIkuSteKovI2BgAAhjcAAEIAGAAAAAAAAAAAAKSBmJwcAHN0
b3JhZ2UvaW5kZXhlZGRiL3RyYW5zYWN0aW9uLWV2ZW50LXByb3BhZ2F0aW9uLXByaXZhdGUtc3Rk
ZXJyLnR4dFVUBQADF8x6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAFiJLkqQRktBRAYAAOc2
AAA6ABgAAAAAAAAAAACkgUqjHABzdG9yYWdlL2luZGV4ZWRkYi90cmFuc2FjdGlvbi1ldmVudC1w
cm9wYWdhdGlvbi1zdGRlcnIudHh0VVQFAAMXzHpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA
WIkuSkOgEgSfBQAATTIAADkAGAAAAAAAAAAAAKSBAqocAHN0b3JhZ2UvaW5kZXhlZGRiL3RyYW5z
YWN0aW9uLW9yZGVyaW5nLXByaXZhdGUtc3RkZXJyLnR4dFVUBQADGMx6WHV4CwABBPUBAAAEFAAA
AFBLAQIeAxQAAgAIAFiJLkrLEU5f1wUAABMyAAAxABgAAAAAAAAAAACkgRSwHABzdG9yYWdlL2lu
ZGV4ZWRkYi90cmFuc2FjdGlvbi1vcmRlcmluZy1zdGRlcnIudHh0VVQFAAMYzHpYdXgLAAEE9QEA
AAQUAAAAUEsBAh4DFAACAAgAWIkuSh7p50NQBgAADzgAADwAGAAAAAAAAAAAAKSBVrYcAHN0b3Jh
Z2UvaW5kZXhlZGRiL3RyYW5zYWN0aW9uLW92ZXJsYXBwaW5nLXByaXZhdGUtc3RkZXJyLnR4dFVU
BQADGMx6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAFiJLkpYgY2yqgYAAOZUAAA0ABgAAAAA
AAAAAACkgRy9HABzdG9yYWdlL2luZGV4ZWRkYi90cmFuc2FjdGlvbi1vdmVybGFwcGluZy1zdGRl
cnIudHh0VVQFAAMYzHpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAWIkuSmGiOWJHBgAAvjUA
ADoAGAAAAAAAAAAAAKSBNMQcAHN0b3JhZ2UvaW5kZXhlZGRiL3RyYW5zYWN0aW9uLXJlYWQtb25s
eS1wcml2YXRlLXN0ZGVyci50eHRVVAUAAxjMelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABZ
iS5KocYY4NcGAACUPgAAMgAYAAAAAAAAAAAApIHvyhwAc3RvcmFnZS9pbmRleGVkZGIvdHJhbnNh
Y3Rpb24tcmVhZC1vbmx5LXN0ZGVyci50eHRVVAUAAxnMelh1eAsAAQT1AQAABBQAAABQSwECHgMU
AAIACABZiS5KgpLlH00GAACVSgAARAAYAAAAAAAAAAAApIEy0hwAc3RvcmFnZS9pbmRleGVkZGIv
dHJhbnNhY3Rpb24tcmVhZHdyaXRlLWV4Y2x1c2l2ZS1wcml2YXRlLXN0ZGVyci50eHRVVAUAAxnM
elh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABZiS5K4hEShWMGAACCSQAAPAAYAAAAAAAAAAAA
pIH92BwAc3RvcmFnZS9pbmRleGVkZGIvdHJhbnNhY3Rpb24tcmVhZHdyaXRlLWV4Y2x1c2l2ZS1z
dGRlcnIudHh0VVQFAAMZzHpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAWYkuSmY4cfWyBgAA
njQAADkAGAAAAAAAAAAAAKSB1t8cAHN0b3JhZ2UvaW5kZXhlZGRiL3RyYW5zYWN0aW9uLXJvbGxi
YWNrLXByaXZhdGUtc3RkZXJyLnR4dFVUBQADGcx6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAI
AFmJLkr+URgOKQcAAOE2AAAxABgAAAAAAAAAAACkgfvmHABzdG9yYWdlL2luZGV4ZWRkYi90cmFu
c2FjdGlvbi1yb2xsYmFjay1zdGRlcnIudHh0VVQFAAMazHpYdXgLAAEE9QEAAAQUAAAAUEsBAh4D
FAACAAgAWYkuSrQP4ag7BgAAiEwAAEEAGAAAAAAAAAAAAKSBj+4cAHN0b3JhZ2UvaW5kZXhlZGRi
L3RyYW5zYWN0aW9uLXNjb3BlLXNlcXVlbmNpbmctcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAMazHpY
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAWYkuSluYUF4cBgAA0EQAADkAGAAAAAAAAAAAAKSB
RfUcAHN0b3JhZ2UvaW5kZXhlZGRiL3RyYW5zYWN0aW9uLXNjb3BlLXNlcXVlbmNpbmctc3RkZXJy
LnR4dFVUBQADGsx6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAFmJLko0yEocDQMAABcOAABE
ABgAAAAAAAAAAACkgdT7HABzdG9yYWdlL2luZGV4ZWRkYi90cmFuc2FjdGlvbi1zdG9yZU5hbWVz
LXJlcXVpcmVkLXByaXZhdGUtc3RkZXJyLnR4dFVUBQADGsx6WHV4CwABBPUBAAAEFAAAAFBLAQIe
AxQAAgAIAFmJLkqgzGyinAMAAP8QAAA8ABgAAAAAAAAAAACkgV//HABzdG9yYWdlL2luZGV4ZWRk
Yi90cmFuc2FjdGlvbi1zdG9yZU5hbWVzLXJlcXVpcmVkLXN0ZGVyci50eHRVVAUAAxrMelh1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACABaiS5KdREDl8gEAADqIQAAPgAYAAAAAAAAAAAApIFxAx0A
c3RvcmFnZS9pbmRleGVkZGIvdW5ibG9ja2VkLXZlcnNpb24tY2hhbmdlcy1wcml2YXRlLXN0ZGVy
ci50eHRVVAUAAxvMelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABaiS5Krv90kOcEAACwIgAA
NgAYAAAAAAAAAAAApIGxCB0Ac3RvcmFnZS9pbmRleGVkZGIvdW5ibG9ja2VkLXZlcnNpb24tY2hh
bmdlcy1zdGRlcnIudHh0VVQFAAMbzHpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAWokuSvBb
oBcjAQAAWAQAAC0AGAAAAAAAAAAAAKSBCA4dAHN0b3JhZ2UvaW5kZXhlZGRiL3VucHJlZml4LXBy
aXZhdGUtc3RkZXJyLnR4dFVUBQADG8x6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAFqJLkqd
fNcDowQAAKYZAAA0ABgAAAAAAAAAAACkgZIPHQBzdG9yYWdlL2luZGV4ZWRkYi92YWx1ZS11bmRl
ZmluZWQtcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAMbzHpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAAC
AAgAWokuSixKUiy9BQAAuh8AACwAGAAAAAAAAAAAAKSBoxQdAHN0b3JhZ2UvaW5kZXhlZGRiL3Zh
bHVlLXVuZGVmaW5lZC1zdGRlcnIudHh0VVQFAAMczHpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAAC
AAgAWokuSvuVRsWABQAATDUAADUAGAAAAAAAAAAAAKSBxhodAHN0b3JhZ2UvaW5kZXhlZGRiL3Zh
bHVlcy1vZGQtdHlwZXMtcHJpdmF0ZS1zdGRlcnIudHh0VVQFAAMczHpYdXgLAAEE9QEAAAQUAAAA
UEsBAh4DFAACAAgAWokuStHnlb1RBgAA/jwAAC0AGAAAAAAAAAAAAKSBtSAdAHN0b3JhZ2UvaW5k
ZXhlZGRiL3ZhbHVlcy1vZGQtdHlwZXMtc3RkZXJyLnR4dFVUBQADHMx6WHV4CwABBPUBAAAEFAAA
AFBLAQIeAxQAAgAIAFqJLko8yl335AUAAKEvAAA5ABgAAAAAAAAAAACkgW0nHQBzdG9yYWdlL2lu
ZGV4ZWRkYi92ZXJzaW9uLWNoYW5nZS1hYm9ydC1wcml2YXRlLXN0ZGVyci50eHRVVAUAAxzMelh1
eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABaiS5KQ2Mo87AFAAC/LwAAMQAYAAAAAAAAAAAApIHE
LR0Ac3RvcmFnZS9pbmRleGVkZGIvdmVyc2lvbi1jaGFuZ2UtYWJvcnQtc3RkZXJyLnR4dFVUBQAD
HMx6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAFuJLkodb76w/QIAALEaAAA/ABgAAAAAAAAA
AACkgd8zHQBzdG9yYWdlL2luZGV4ZWRkYi92ZXJzaW9uLWNoYW5nZS1ldmVudC1iYXNpYy1wcml2
YXRlLXN0ZGVyci50eHRVVAUAAx3Melh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABbiS5K77p3
nvIDAAAmKAAANwAYAAAAAAAAAAAApIFVNx0Ac3RvcmFnZS9pbmRleGVkZGIvdmVyc2lvbi1jaGFu
Z2UtZXZlbnQtYmFzaWMtc3RkZXJyLnR4dFVUBQADHcx6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQA
AgAIAFuJLkpx/0e91QUAAAQzAAA5ABgAAAAAAAAAAACkgbg7HQBzdG9yYWdlL2luZGV4ZWRkYi92
ZXJzaW9uLWNoYW5nZS1ldmVudC1wcml2YXRlLXN0ZGVyci50eHRVVAUAAx3Melh1eAsAAQT1AQAA
BBQAAABQSwECHgMUAAIACABbiS5KhwE/Q04FAAD1KgAAMQAYAAAAAAAAAAAApIEAQh0Ac3RvcmFn
ZS9pbmRleGVkZGIvdmVyc2lvbi1jaGFuZ2UtZXZlbnQtc3RkZXJyLnR4dFVUBQADHcx6WHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAFuJLkr+TWyBeQUAACtBAAA9ABgAAAAAAAAAAACkgblHHQBz
dG9yYWdlL2luZGV4ZWRkYi92ZXJzaW9uLWNoYW5nZS1leGNsdXNpdmUtcHJpdmF0ZS1zdGRlcnIu
dHh0VVQFAAMdzHpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAW4kuSu1WATeIBQAA0kMAADUA
GAAAAAAAAAAAAKSBqU0dAHN0b3JhZ2UvaW5kZXhlZGRiL3ZlcnNpb24tY2hhbmdlLWV4Y2x1c2l2
ZS1zdGRlcnIudHh0VVQFAAMezHpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAXIkuSrx94BLC
AwAAHhUAAEkAGAAAAAAAAAAAAKSBoFMdAHN0b3JhZ2UvaW5kZXhlZGRiL3ZlcnNpb25jaGFuZ2Vy
ZXF1ZXN0LWFjdGl2ZWRvbW9iamVjdC1wcml2YXRlLXN0ZGVyci50eHRVVAUAAx/Melh1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACABciS5KJqWzO/0DAAAfFQAAQQAYAAAAAAAAAAAApIHlVx0Ac3Rv
cmFnZS9pbmRleGVkZGIvdmVyc2lvbmNoYW5nZXJlcXVlc3QtYWN0aXZlZG9tb2JqZWN0LXN0ZGVy
ci50eHRVVAUAAyDMelh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAAAFiS5KAAAAAAAAAAAAAAAA
DwAYAAAAAAAAABAA7UFdXB0Ac3RvcmFnZS93ZWJzcWwvVVQFAAN6y3pYdXgLAAEE9QEAAAQUAAAA
UEsBAh4DFAACAAgAAIkuSjdnhOCnAAAA0gAAAC0AGAAAAAAAAQAAAKSBplwdAHN0b3JhZ2Uvd2Vi
c3FsL2FsdGVyLXRvLWluZm8tdGFibGUtc3RkZXJyLnR4dFVUBQADb8t6WHV4CwABBPUBAAAEFAAA
AFBLAQIeAxQAAgAIAACJLko3Z4TgpwAAANIAAAA1ABgAAAAAAAEAAACkgbRdHQBzdG9yYWdlL3dl
YnNxbC9jaGFuZ2UtdmVyc2lvbi1oYW5kbGUtcmV1c2Utc3RkZXJyLnR4dFVUBQADb8t6WHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAACJLko3Z4TgpwAAANIAAABGABgAAAAAAAEAAACkgcpeHQBz
dG9yYWdlL3dlYnNxbC9jaGFuZ2UtdmVyc2lvbi1uby1jcmFzaC1vbi1wcmVmbGlnaHQtZmFpbHVy
ZS1zdGRlcnIudHh0VVQFAANvy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAAIkuSuwJfa0X
AQAALwQAACgAGAAAAAAAAQAAAKSB8V8dAHN0b3JhZ2Uvd2Vic3FsL2NoYW5nZS12ZXJzaW9uLXN0
ZGVyci50eHRVVAUAA2/Lelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAAiS5KN2eE4KcAAADS
AAAAMgAYAAAAAAABAAAApIFqYR0Ac3RvcmFnZS93ZWJzcWwvY2xvc2UtZHVyaW5nLXN0cmVzcy10
ZXN0LXN0ZGVyci50eHRVVAUAA3DLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAAiS5KlyTW
Zq0AAACkAQAANAAYAAAAAAABAAAApIF9Yh0Ac3RvcmFnZS93ZWJzcWwvZGF0YWJhc2UtbG9jay1h
ZnRlci1yZWxvYWQtc3RkZXJyLnR4dFVUBQADcMt6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAI
AACJLko3Z4TgpwAAANIAAAApABgAAAAAAAEAAACkgZhjHQBzdG9yYWdlL3dlYnNxbC9lbXB0eS1z
dGF0ZW1lbnQtc3RkZXJyLnR4dFVUBQADcMt6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAAGJ
Lko3Z4TgpwAAANIAAAAqABgAAAAAAAEAAACkgaJkHQBzdG9yYWdlL3dlYnNxbC9leGVjdXRlLXNx
bC1hcmdzLXN0ZGVyci50eHRVVAUAA3HLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAABiS5K
N2eE4KcAAADSAAAAMgAYAAAAAAABAAAApIGtZR0Ac3RvcmFnZS93ZWJzcWwvZXhlY3V0ZS1zcWwt
cm93c0FmZmVjdGVkLXN0ZGVyci50eHRVVAUAA3HLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIA
CAABiS5KN2eE4KcAAADSAAAAPwAYAAAAAAABAAAApIHAZh0Ac3RvcmFnZS93ZWJzcWwvZXhlY3V0
ZXNxbC1hY2NlcHRzLW9ubHktb25lLXN0YXRlbWVudC1zdGRlcnIudHh0VVQFAANxy3pYdXgLAAEE
9QEAAAQUAAAAUEsBAh4DFAACAAgAAokuSjdnhOCnAAAA0gAAAC4AGAAAAAAAAQAAAKSB4GcdAHN0
b3JhZ2Uvd2Vic3FsL2hhc2gtY2hhbmdlLXdpdGgteGhyLXN0ZGVyci50eHRVVAUAA3PLelh1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACAACiS5KlyTWZq0AAACkAQAAPwAYAAAAAAABAAAApIHvaB0A
c3RvcmFnZS93ZWJzcWwvbXVsdGlwbGUtZGF0YWJhc2VzLWdhcmJhZ2UtY29sbGVjdGlvbi1zdGRl
cnIudHh0VVQFAANzy3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAAokuSn57UH6wAAAAdgIA
AEQAGAAAAAAAAQAAAKSBFWodAHN0b3JhZ2Uvd2Vic3FsL211bHRpcGxlLXRyYW5zYWN0aW9ucy1v
bi1kaWZmZXJlbnQtaGFuZGxlcy1zdGRlcnIudHh0VVQFAANzy3pYdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DFAACAAgAAokuSjdnhOCnAAAA0gAAAC8AGAAAAAAAAQAAAKSBQ2sdAHN0b3JhZ2Uvd2Vic3Fs
L211bHRpcGxlLXRyYW5zYWN0aW9ucy1zdGRlcnIudHh0VVQFAAN0y3pYdXgLAAEE9QEAAAQUAAAA
UEsBAh4DFAACAAgAAokuSjdnhOCnAAAA0gAAACgAGAAAAAAAAQAAAKSBU2wdAHN0b3JhZ2Uvd2Vi
c3FsL251bGwtY2FsbGJhY2tzLXN0ZGVyci50eHRVVAUAA3TLelh1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACAACiS5KlyTWZq0AAACkAQAASAAYAAAAAAABAAAApIFcbR0Ac3RvcmFnZS93ZWJzcWwv
b3Blbi1kYXRhYmFzZS1jcmVhdGlvbi1jYWxsYmFjay1pc29sYXRlZC13b3JsZC1zdGRlcnIudHh0
VVQFAAN0y3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAAokuSh0wZz2yAAAASAMAADkAGAAA
AAAAAQAAAKSBi24dAHN0b3JhZ2Uvd2Vic3FsL29wZW4tZGF0YWJhc2UtY3JlYXRpb24tY2FsbGJh
Y2stc3RkZXJyLnR4dFVUBQADdMt6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAAOJLko3Z4Tg
pwAAANIAAAA1ABgAAAAAAAEAAACkgbBvHQBzdG9yYWdlL3dlYnNxbC9vcGVuLWRhdGFiYXNlLWVt
cHR5LXZlcnNpb24tc3RkZXJyLnR4dFVUBQADdct6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAI
AAOJLko3Z4TgpwAAANIAAAA0ABgAAAAAAAEAAACkgcZwHQBzdG9yYWdlL3dlYnNxbC9vcGVuLWRh
dGFiYXNlLWV4cGFuZC1xdW90YS1zdGRlcnIudHh0VVQFAAN1y3pYdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DFAACAAgAA4kuSmXUdDsLAQAAuAIAADkAGAAAAAAAAQAAAKSB23EdAHN0b3JhZ2Uvd2Vic3Fs
L29wZW4tZGF0YWJhc2Utc2V0LWVtcHR5LXZlcnNpb24tc3RkZXJyLnR4dFVUBQADdct6WHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAAOJLkqXJNZmrQAAAKQBAABFABgAAAAAAAEAAACkgVlzHQBz
dG9yYWdlL3dlYnNxbC9vcGVuLWRhdGFiYXNlLXdoaWxlLXRyYW5zYWN0aW9uLWluLXByb2dyZXNz
LXN0ZGVyci50eHRVVAUAA3XLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAADiS5KN2eE4KcA
AADSAAAAOQAYAAAAAAABAAAApIGFdB0Ac3RvcmFnZS93ZWJzcWwvcHJpdmF0ZS1icm93c2luZy1u
b3JlYWQtbm93cml0ZS1zdGRlcnIudHh0VVQFAAN1y3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAAC
AAgAA4kuSn57UH6wAAAAdgIAAEcAGAAAAAAAAQAAAKSBn3UdAHN0b3JhZ2Uvd2Vic3FsL3JlYWQt
YW5kLXdyaXRlLXRyYW5zYWN0aW9ucy1kb250LXJ1bi10b2dldGhlci1zdGRlcnIudHh0VVQFAAN2
y3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAA4kuSpck1matAAAApAEAAEAAGAAAAAAAAQAA
AKSB0HYdAHN0b3JhZ2Uvd2Vic3FsL3JlYWQtdHJhbnNhY3Rpb25zLXJ1bm5pbmctY29uY3VycmVu
dGx5LXN0ZGVyci50eHRVVAUAA3bLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAADiS5KN2eE
4KcAAADSAAAAKAAYAAAAAAABAAAApIH3dx0Ac3RvcmFnZS93ZWJzcWwvc3FsLWRhdGEtdHlwZXMt
c3RkZXJyLnR4dFVUBQADdst6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAAOJLkqXJNZmrQAA
AKQBAABBABgAAAAAAAEAAACkgQB5HQBzdG9yYWdlL3dlYnNxbC9zdGF0ZW1lbnQtZXJyb3ItY2Fs
bGJhY2staXNvbGF0ZWQtd29ybGQtc3RkZXJyLnR4dFVUBQADdst6WHV4CwABBPUBAAAEFAAAAFBL
AQIeAxQAAgAIAASJLko3Z4TgpwAAANIAAAAyABgAAAAAAAEAAACkgSh6HQBzdG9yYWdlL3dlYnNx
bC9zdGF0ZW1lbnQtZXJyb3ItY2FsbGJhY2stc3RkZXJyLnR4dFVUBQADd8t6WHV4CwABBPUBAAAE
FAAAAFBLAQIeAxQAAgAIAASJLkqXJNZmrQAAAKQBAABDABgAAAAAAAEAAACkgTt7HQBzdG9yYWdl
L3dlYnNxbC9zdGF0ZW1lbnQtc3VjY2Vzcy1jYWxsYmFjay1pc29sYXRlZC13b3JsZC1zdGRlcnIu
dHh0VVQFAAN3y3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgABIkuSjdnhOCnAAAA0gAAACoA
GAAAAAAAAQAAAKSBZXwdAHN0b3JhZ2Uvd2Vic3FsL3N1Y2Nlc3MtY2FsbGJhY2stc3RkZXJyLnR4
dFVUBQADeMt6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAASJLko3Z4TgpwAAANIAAABDABgA
AAAAAAEAAACkgXB9HQBzdG9yYWdlL3dlYnNxbC9zdWNjZXNzLWNhbGxiYWNrLXdoZW4tcGFnZS1k
ZWZlcnMtbG9hZGluZy1zdGRlcnIudHh0VVQFAAN3y3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAAC
AAgABIkuSjdnhOCnAAAA0gAAACkAGAAAAAAAAQAAAKSBlH4dAHN0b3JhZ2Uvd2Vic3FsL3Rlc3Qt
YXV0aG9yaXplci1zdGRlcnIudHh0VVQFAAN4y3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA
BIkuSjdnhOCnAAAA0gAAAD4AGAAAAAAAAQAAAKSBnn8dAHN0b3JhZ2Uvd2Vic3FsL3RyYW5zYWN0
aW9uLWNhbGxiYWNrLWV4Y2VwdGlvbi1jcmFzaC1zdGRlcnIudHh0VVQFAAN4y3pYdXgLAAEE9QEA
AAQUAAAAUEsBAh4DFAACAAgABYkuSpck1matAAAApAEAAD0AGAAAAAAAAQAAAKSBvYAdAHN0b3Jh
Z2Uvd2Vic3FsL3RyYW5zYWN0aW9uLWNhbGxiYWNrLWlzb2xhdGVkLXdvcmxkLXN0ZGVyci50eHRV
VAUAA3nLelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAFiS5KlyTWZq0AAACkAQAAQwAYAAAA
AAABAAAApIHhgR0Ac3RvcmFnZS93ZWJzcWwvdHJhbnNhY3Rpb24tZXJyb3ItY2FsbGJhY2staXNv
bGF0ZWQtd29ybGQtc3RkZXJyLnR4dFVUBQADect6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAI
AAWJLko3Z4TgpwAAANIAAAA0ABgAAAAAAAEAAACkgQuDHQBzdG9yYWdlL3dlYnNxbC90cmFuc2Fj
dGlvbi1lcnJvci1jYWxsYmFjay1zdGRlcnIudHh0VVQFAAN6y3pYdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DFAACAAgABYkuSjdnhOCnAAAA0gAAAC8AGAAAAAAAAQAAAKSBIIQdAHN0b3JhZ2Uvd2Vic3Fs
L3RyYW5zYWN0aW9uLXByb3RvdHlwZS1zdGRlcnIudHh0VVQFAAN6y3pYdXgLAAEE9QEAAAQUAAAA
UEsBAh4DFAACAAgABYkuSpck1matAAAApAEAAEUAGAAAAAAAAQAAAKSBMIUdAHN0b3JhZ2Uvd2Vi
c3FsL3RyYW5zYWN0aW9uLXN1Y2Nlc3MtY2FsbGJhY2staXNvbGF0ZWQtd29ybGQtc3RkZXJyLnR4
dFVUBQADest6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAHOJLkpIZYWczlgCAFP2PgAZABgA
AAAAAAEAAACkgVyGHQB3cHR3a19wcm9jZXNzX2xvZy5vdXQudHh0VVQFAANJzHpYdXgLAAEE9QEA
AAQUAAAAUEsFBgAAAAA4AjgCaxEBAH3fHwAAAA==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>298871</attachid>
            <date>2017-01-14 18:31:31 -0800</date>
            <delta_ts>2017-01-14 21:48:09 -0800</delta_ts>
            <desc>Archive of layout-test-results from ews105 for mac-elcapitan-wk2</desc>
            <filename>layout-test-results.zip</filename>
            <type>application/zip</type>
            <size>1901763</size>
            <attacher name="Build Bot">buildbot</attacher>
            
              <data encoding="base64">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
3eo88qBWzEtg3xY//Cqrh6fX1+AyN9fP/mk5Vsq3ZJ3Pc96fu2YcpspyUBdxvI4zdKQUaKAfmjxI
vM5iZj2crHMi9cqnTugPl1oUHYxisL5K2Xht3UTpPYTd3dPrsXuRX72xNSrcfDEsWuaVb/bd9DVa
bRQpYI/L164TbsvVOX5ePLPKq8u99PB2dar5xGIb4Y1vYp2vu7ZsiOhl9dhvbQ494W+kvt0zxvJq
ZnqHRSWdNvO8s+V5ud9d7epSVPlOm3LXrn3bjsbO4eY6Bw/LAjPX6k8D35nbnh32O5jSni0tEm8b
Lh1n5md+cFpmqohWmq24P9aOMVFC1R8oL06fDvdngd8KPfth+7vNP/zd0THr/tyPA+eVLvDtup4l
8nP2tHJOrfVqeoiVYfW0mu65Mr1tt0HPG69rt157z1M2cWy8YjvwAydovBuGYRDYRc91Tz07XHRb
To1Ld+reVrEvQpubx8X6qV8OFnJ56B7lx9ARRj7XHh6rx1x7GPdau2g4zXS9uxpO2G3u17N9kWiK
qSs5cx6XLxf/2pmcl72iel6UDv77mFjz3fKYXN/YbbkPCq0Vl5mnp+feg3Ku8+y63UqFu+/Iw2lY
m2psh7d8sjYL4+DOnvqX8SQ5GTZXbl74yEdXc4Ot3q3DaybCl9IfG7a32y6La7Vejkdjba4P/NGE
F640UQ+u33c363VHDgXvraZHbSY9Pr2MnOeWnV0OPxSJaYvLNDfzGx+ou31fPu9L73UyePXscV0c
nc5cG0wfLuledfpd9bgu8lu63G3Xl0vLYKuDqm/6i6fe2qlW+fWSTzrPk3i6Geq9zS68iUtXDlfR
62TztjrE/bfZUv2bofyR9ys//RdQSwMEFAACAAgAVYsuSsvcQAbxCQAAOxIAABUAHABfd3B0X2Nl
cnRzLzA2MENFNy5wZW1VVAkAA9HPeljRz3pYdXgLAAEE9QEAAAQUAAAAnVbZkuLGEn3nK3i0oz1G
+5IRftDG2tCAoFneSqqSEA1ikUDA1zsT2zOMm/aNuAqCAFVlVi4nzylPHMssyWJWCqjV8fFZyf76
Rc+7OBbZLoe6Wv9Fuii/fl8IxTFjm/rgtI3EEZdtQ5dt2mNIsTAf9mVpzsrTUdSdTbo7ZuVqC/Vi
xRTdmOGfcegEeXy87ks85btRpyhO5NUb/FGJ6Nt+w8pkd9x+K0VRFj9iY5uMZ+X1+wt6Bruy7grc
LaDeZXld1uuSDIoBmlxXJNmst/qTTwZOUopjHepNEdVl7T8MwlO0FnF5j2yzi9lmtSvKf6/Wh6do
k8X1nrjWO3myg5/Oe1h8qMixYE/qQA9W6MEG6r8okmbVo6z89adt9PR3/LQ5FQ9b4NMeeiQJYhVU
CYQJqg6GBZYBdgSaCZIBckRLOockAVt/7gHfGxJwE3gMtgo6AzOhH7YJZgwRp49lg8rAUJ970CRg
MtgyGAlYKpgGJDFINiQmuSJDfCODagP7wgOGxy2QEmAaqAYwGywTFB24AIWBrQHnoDF6n2jPPUQG
SBFYAgwFjAhsDNsAU6JqaBZoKsgcJH6vjPVFHRJIMAYFLEY7sZIUBlZAo6MNGVgMiUqFisVzD1YC
sU2lQz+JBEpCkaAJRoVvsE2GTra6SX153k2FeqFj2DoFz20wBWg2VUbYoCX37mBtGej2F5XEHBkZ
4g8EgInVM4BjWxVgWMyYkKCoECvk5KkH06Q+qhHoWDoOMqMaYu6yAgompVApJI26HH+BKOy4GoOI
KRHTpm2Mg4nI5BBrIKvU6yiiBsnyF3UwCXJcAk0jPwqnXsgxsIhgiTOt39utaGB8UQdZpwixBcwE
xKdsgGGCwDIKMHXKApHALCpI9EUWQgOEBNMpcjRBPGNIxh3SpkKn6xgAtlKD5AsPaIspIJxikxKP
sZg4pxhVRC3AiaBxSwhR2JSnHrh8HyWViq8mFCoOIzZOtmhS8INgRqjYCkXy1ANWAJul3rFkcIoW
8SzpBGmsZIxduI+qUCCSvsADjpX9aSW47He5yJE+DV1XTVILWZIk+QeTzXXJPqt1cSlFTrpT/Oz+
72WXFciGHi6XR5blZQH1T2d5DjSd1zB4Zv8PT98JmmNAKIAkN5+cYM6+S3DEuXIt0JvgmBAEBEHf
Bx8raBN5yU3wHXBx1QZPB9WDZvPZuc6pXBHhX//3yR/imiGFamDdiUjxQHdAwZMDQq8ZED59DxQH
bOQfE1wVmibttHDQLPCD2rMA6NhpwVLx5EQ/S7MSFf27YP+G0pjXx2J/4hkjWfrtbo8yle1X4rjF
6J+dEVDvuOD/edjkNazPUGzxFnFG5aXCUDFi9kn+/tUyZ4NKjfFlZ1EfsO3TRAYhfNfm3+5/q6r6
/V+vLvm3b7m1Nnihq5uq+jgeVmfFYs+2bc7im7Fh/PfPXpUn7+Tff74Z/F83IBUpJyLuRNJKFBpl
cSd1HF8dmVgickUZV1WQkGUFkdwju/O7GqsyKYkRE/HESPCM1IC0CGXBID+RAEsh2US+tx5EEiVF
3B2inCLxIPrxPoQygkyAm3UZBCdtIegLihA/Jn8wR8UwSNtxGx6HAs4MQGpM7mLLGLELgpQuESrR
JF0WlB/m1l1yifVx5HSSHRQH7R42KgxSKSZCbKpQjshJWATzgclwPmgsI5AxTZ1qiOqh30nR0Ii9
2F3lMEKuQByTtJoPNCabRHvCorFHJUlQixLKDiNHfUgEyTtqHV2OBMQG6TN7MMc2YYlQyjBrbCJW
AEuHAeM3JotVjVCHNQoYqRRLhBnJD+Yo3SjFeAXAjuO1BcUKs0AWxz0ogFpM+aKy4cSjxGEA1j3O
H+aoexZJEOkVaqZM+aIHltyFiIOqUaNRyjBljAGT1R+uFSgaKHdYMVI8mTqFCGH3PXgVsmPgBklB
dPeMq1g946HveIQu6MoQy3SJwJhR5fA3gg0PQtkk2CiEZ7qSCPo8mv+FeTwOr294I8NIEDaRQjhB
8FBJdcIJdgHhjSImJ3Tn+mEeExeSuDEKHu+2SN/EoAZhBpUKrwCINOyXahKDU1nih5HBcbBJ9CSp
9o0eN2h1BnUvGE86zY7nTIL721q/0/Hzm+c5O5E6Vcd10o7vpre870gtLzy0wk6k+qPA9aqp03el
S+vmLN108O46/X6Q801tkclV1GpKy619jUJZWs4HUnxzRLOSLoObc+lPplV/0lEGfpP9/e7an4y+
v6v13dElWDujf7x6s8t5oTQL1rJv3MfIwk7ljxbd3m7ZWZ3jgYPRuCPHT9Ng6OB6zRntPPxDtpV+
e9+t9mXbXRXVPHl538z8udodsER/myevip1N9utRrzWOtIHScHI1ue23NWuyXTfsdLj32X51nYve
fsLDQy6V6eltsT3xMvdaYdDn/rLs5I3Uy1J5d1hcpXDbKiw7eautre3kZeicWePt7aU/2Nw2ceRs
3dFq7i+Tj4+hMbVZ4uyXjeVx2RgtjU05CI/ZrdGxOj2uWGbt/UNiq0MVdrzuym1Hzbf1rZi28+Zx
ng0u7nBxMhdjV8tH47eqPIyvx03VnHnX8b45X5z3kjOrLV8aJx72ooN3lfXuy0a0p91sxhtxWkbd
y0Tec693sSaD4G1x7DRak7mdNKSk8oP1i3we7Ra1fW/cWS07+Ws1qpSZNC2d997GOlme6FVC+/Cc
KnAc9uZavueaE6dL3WqP+4GzdggXrZojT7mfjmbYm6aCGnRqvuTmqs2lbOu37UPjEE+txs1J7oZh
P2j5zix1wyAL+sUs00SNzXVH9Q4L1xyqIy3oqGvn9b55ZFFvPVdgDNXCfx9LG9epKi9ddHrVAs+b
tmmllqT3xbHbjiu+6HSjlr1ezC67SB1IaSqrXI1PP73LmlqUSWW0Xh0G2/GtNpgMCq7yY5w3d3zd
0RahXkTKYBW1EHdq6DXz1ek1lAu+nZaD7WW19H5er/k5mt86P5+S6nTy5XX7CGtn4KYfh9VH1rIr
yXVGRdNx3gjKgTPMi/T93AnNj+3H1PIKx+/324dyqer9i6VUr9dyP5StTWtqGt5KZwHeNpbdsKy6
m920tpLbpbHoi/fN0vaHbGxysd6fJub6sAu87vuaR4q3Xp6DVnPuvX0k3Te1weK0NwnXA5WF29da
azpNA7ltLfun0j1H4a3Jq6ad78R0ot9U5a2ZGP2o8SIu21lq7mJrdzPLbrnbLl5OxntbzGsfk2KU
7PfH4Dz6aE2skRJceq+jpMh3Kz3xsoSHw/H1sj1nM0laed2KX3jkvFipmbcO5wOPau3lbVa+DseH
4lJm78apmu9GdtxsNa+3Ujt3WZLr5TA/5b3t63l/7L3r/nWTruZJ6FqDYXfVqWV5O3cXYSsxHfc8
m6rBeFtI5kflOH/88RcXBgP/MxP+CVBLAwQUAAIACABViy5KOoTxLxMJAAA6EQAAFQAcAF93cHRf
Y2VydHMvY2FjZXJ0LnBlbVVUCQAD0c96WNHPelh1eAsAAQT1AQAABBQAAACtV9tu6sgSfecreJxR
NKJ9t0s6D75xSwyYS7i82e02OAGbbUwMfP2p8mSSbG2yRzo6ForA3V1dtapqrYoryipLMx5VAlpt
fLyoiv7+Rs+zKE9ZkUNbaf/BLvKfHwszUWbRvj06H2JR4rKla5JJe3TGhf5lX7bNo+pcira93xZl
Vu0O0D7tIlnTl/hjOrP9nJfXY4W3fBwanE5nsuqO/lOL+K/jPqrSojz8VYlTdfr0LdpnSVZdP17Q
MyqqtiNwt4D2MMrbktZmEsg6qFJbZpLR7gXzXw7YaSXKNrS7Im5L6m8OzM7xi+DVv3n2vq09Ocf7
jLcfxbU9yNMCfrr4y+IXaMpTdAcQehCqL2eg/YfMVLMdZ9WfP22jJyiS8/58+rIFftlDD2MgJIgF
GBzUFHT8a4EpgyEDj0CSQFXBjIFpoBr3LegpCBlMDVIVEkE7FQM0GRQZZA6pBMIEPYZYgTS+bwHv
MiLQNRAxJCpIOlgppBqY/P1nkkKMdhKQvvEhSsBQIFaBCcqbboEag5pAbIKEQaXAY0gFCAEWu2+B
K6CbYHG6GjHh6HMEkQk8AYbOoBEdpAgUBqZ134JlgZbSfvQkQocZpBwiAxgHNG6koEh0nDVB3Y/C
JLd1RJ6BFYOskrecg6YQjIgw5gJx0DHS73AQkCL4GEgCigUJBymhS2MOOgZivK8isLL5TTYRNIw0
BrPZhqlHbEUTjtRAIXEKJGGEyV0LGrZOCoagjCcxeYLxIpiUArQgAUOg8D1mOfoGSayWCJhJkcoJ
AYKxmCkBi3VCwApQGQWiflNRlgyWBAb6GdFOLpriRJsy+aPKlOsUjRsgfZdNFTQDhEq1ZOhgGBQF
FUMEGtqUmo9MP5NvchFbEGugNXaoGhXgMuBLAzslotowJdqgKATLXQuJBJYBpgJKTD1lNWnFUxgR
Aos1gACaCbWq+V1vYi+gEUGNTIEbVNu6IEAS9ESlwsCWwdaTv/NBB65TBVJLmpR9tIZRoFnsERYT
yJFM1pBG7loQGrbtLyv+5VjkIkce1TVNMUg2JMaY9MlkK41Zb0pbXCqRkwCdfjb/vuxEJ2RDF5er
Msry6gTtX+5ybZhPF/694//QdMPPCfqDQkiy84sNU6WOwCTKLmg2yD5IflMbPqXDc0G2KUHYYo4C
XYN2Yqawhr2799rnakd8f/33m1/FNcO0/5/ub/Q9K0fRQUDn9xL2z3NqdB6YDswFX2/di4eiWJyi
rbgH/+d80cwC9877lOVEJL81NH+atZeozzh4vKFYE4aEGxr+Ryj/p1EDazpFXsAyNUmxkGKwsrHi
kbOE3qgRwt/wCMpP3DCaIj6LEZlORhaQiesFfhB4ncgauwKpkAhU0E8NO0chGkISUb60CrKz2nAK
0iseJ52ISEeNhitlq6EqCSSFWJWn773X+qIZxDLYwCjSaqPZyTtbYUOiWWQQJIg4BRWFB2Np9nze
bhEdoEwiywiLFBqdx79GTDyLrY6ARIxWtb/Z0/iJrVALVY0kTeHNGIEQNWyLTJ2YhKopCENkfBlV
zQCuEj4fx5OERIJOcdJ4hAJ1BUMmvZQpahQJJEqEHUPDeQKvE1+0U0ah5VTpmBTkNQUFg5GfqFso
WnqjlMiPyJ4YNXKuzGjzx3Ecd4g6WcPCKRnHuQf9NzDwBmSUnJSGQMoLVr+W0ATwmfdmyMBBB1NM
kwqjLLBm6EHajWLKIDIs0h8ij5WABMq/iA3KD16E+MgSuYebsU4wXkQDY0Q80R+mUFyiUetIpVHm
EzqFtiErYPlxVBRkApNQQjrGL5FGFYvyhsWGg1QkERmgk5/OSyTqmDvMDmYk0kkbNEbjBbEIjlwa
RY2ajQKJVYdJ174mLqazVjO34QY8gmfxLnQV36MY4BSIcovjCwKI45cmCJOP41gJcQKyhoXX+ose
x+8NRm3Xn84H3YFrz/3mbSsYDLzFzXXtl/PWrgeOvR14zvZ2CGzWc2c/erNBrHih77j1wg4cdund
7I2zHT07dhD4ebJvrTOpjntdtjlY13gmsc1qxPjNFt2aXUY3+xLMF3UwH8gjrxu9v7sG8/DjXeue
1ftG0cvZoPbC9fCx2Ax2b3xko2ctJ7S97daf2B5uCAsXvzv2uPeQ+tZpth5er7uun9XP/fjhsWuN
1O5IGlyfJv0iMiYGz4/7lm6Fy7yzDCQnTk+CrcrVmHnZ5jhjstqXO0+dsx7Wcsbz2htEP15GXsc6
9F7c4eG5M+L6Q93qPPKgVsxLYN8WP/wqq4en19fgMjfXz/5pOVbKt2Sdz3Pen7tmHKbKclAXcbyO
M3SkFGigH5o8SLzOYmY9nKxzIvXKp07oD5daFB2MYrC+Stl4bd1E6T2E3d3T67F7kV+9sTUq3Hwx
LFrmlW/23fQ1Wm0UKWCPy9euE27L1Tl+XjyzyqvLvfTwdnWq+cRiG+GNb2Kdr7u2bIjoZfXYb20O
PeFvpL7dM8byamZ6h0UlnTbzvLPlebnfXe3qUlT5Tpty1659247GzuHmOgcPywIz1+pPA9+Z254d
9juY0p4tLRJvGy4dZ+ZnfnBaZqqIVpqtuD/WjjFRQtUfKC9Onw73Z4HfCj37Yfu7zT/83dEx6/7c
jwPnlS7w7bqeJfJz9rRyTq31anqIlWH1tJruuTK9bbdBzxuva7dee89TNnFsvGI78AMnaLwbhmEQ
2EXPdU89O1x0W06NS3fq3laxL0Kbm8fF+qlfDhZyeege5cfQEUY+1x4eq8dcexj3WrtoOM10vbsa
Ttht7tezfZFoiqkrOXMely8X/9qZnJe9onpelA7++5hY893ymFzf2G25DwqtFZeZp6fn3oNyrvPs
ut1KhbvvyMNpWJtqbIe3fLI2C+Pgzp76l/EkORk2V25e+MhHV3ODrd6tw2smwpfSHxu2t9sui2u1
Xo5HY22uD/zRhBeuNFEPrt93N+t1Rw4F762mR20mPT69jJznlp1dDj8UiWmLyzQ38xsfqLt9Xz7v
S+91Mnj17HFdHJ3OXBtMHy7pXnX6XfW4LvJbutxt15dLy2Crg6pv+oun3tqpVvn1kk86z5N4uhnq
vc0uvIlLVw5X0etk87Y6xP232VL9m6H8kfcrP/0XUEsDBBQAAgAIAFWLLkr0yjydQwUAANcGAAAU
ABwAX3dwdF9jZXJ0cy9jYWtleS5wZW1VVAkAA9HPeljRz3pYdXgLAAEE9QEAAAQUAAAAbZU3tqtW
AAB7VvF6/A45uUNckggiI+hAJJFzWr2/XXvaKaeY398/PERZNX8cl/+xHDXgPfFHE6N/xS9kzcPn
17vG/O8f8i/RFJzI8kQAAVH7Vfti+PsHiO6vCETiV3gIf2EEhhMPQGBAlHAclyBIqRh3HWSuS3BP
xBsrN5yKjJ/FVwjPAMVRu8lZIiDtfUsX9QrnmvJxS8y6eDuAWjI6lHClV22G2tGJnmbPhZSfF7rZ
XF7UD5wpCEM+yq51qYiy7lXyimY03olhrJQenjkxyNC+z2brh7ojt1hQKbb+eq/c7AZxO0ncEt41
A+MdOiSSyblcBpgHLcS9dtoeIro1I1YQTLTVaSeepcE+//VlXi3SsbLHKxbFZH60z/iZJjWHcrtj
ddhFHd+VAMgth6wyyEW8Qe+I84TFMeTP+8RYdav8rgAAjz0Drxl0uUJw5ncTFsxqR9ZcG0d8rWE0
jkIUimpO3BAdzAZ75nL2ImDtBiZeedinEk2XW0PDFNWuMohgxzeqeU/HlNDw7QSJyS3XTVn8LAGI
WlzPG9fvl0Iv+FRBSc9C/9RTnC7AebgImssDu+Kv2MUs7IPG216mg4JZhklHtfEloU6tJe9V9Zmx
BLg0BnpfiUmHdY2qjTnyCTpZok/q6fiHjrz2bENTpBjjN671c52nigyFktSMykPg2ObEk0EQyi+R
u7FJYG8ywagBmTaFQicaXoXaBHS7HouiB53mUGsXGawBESoVME+R7m8DBrrG1R8HfvYH4b/K4VSx
h9I/YSeYmEyep3bZOFKJXg0tuV1sXSKzAOiKdl8M+OHOzqh4i6yeI+FUl+T0nFtSo2INFZP9W1qB
U1LKOvB1Mpxc45EuWyj68E2hA90pZ36h+Jc6zw6W0DE7yLl/Fp3PPggYwbeIgnE7F0vejt8PsiZO
9kXHPhslJA2YCNomJ2ieI245Xor01En0hUIjuEZW76JBKuWRkpmUFUaOFP6kNvenFb6i7Enx2YW0
bRvQjUxVmfMCMnCXxbr1tr2k2sv5oD9kZxgd0Z5uJkS4Rf2+ngwlYngm7eNDdR+NtOfeCLl+u7+v
qMM+xIxitz6xe6zTs+peIEOeS2+qN8HVs4ANOhpu/7Zr0i9I+JqxbpP5ypDJ6klROjqdBg78skyk
PbwqvAYqjUaLaC8QlbifMDs1a3kcoNH3Ix/15yPZuFrsmrVBGczGBE7WAHAtaCtzeTCTXuiaUsY0
W3MWqAJStafJMIO9wmGHHnS97dLMhgXVZ9IJkr+Bng/OO6mDTyceY3Av46ZOT9e8okOYPqVBrm56
x5+eaWHOWT3POrVhuzfBxYoMQ6Htw4EiN8d88bnpJsM2ctNX5C8h2peY/tbBnKZ+tTOS5hpo2ic5
HVWDQpglSdZxBkyobZOZFC+bgTXL1GdAxKIzyg5rKFyRNfyfBuo5aYXYWQMqNmjkZKpvOY7J1Lpk
hB8LSvlptgn12J1azIjhgFX7MPDiulxQbwH7qT98/wboA5FcPhHbOO65Eddv/1I6J0VfBzQS3Bk2
6qM1H1eeGlkyjuio82V1slI+SF8r5xguaxyWCOUQo3E+rFuO2M3mUtGk5BDIx7Ezm+sjZQ6FMxu+
PW1fEt7KAmv8a2JnpcVqt3st+D04q8a06ScQzjliq2eHEMorgDRpRa0yqo9Hu+Bo/Zr5fHDBwT8J
yaMuVmi2q6z9qEL15ZCAfCSoU7q9zXFCmIDL6CBifNvKSGO+uzogpNcLwwiK117W8fXte9FXhkiv
FeD2LmSyckeu9aD3YK+JBo6WWTah//YkmuD/t/UPUEsDBBQAAgAIAFWLLkr8y8ccSQAAAGUAAAAU
ABwAX3dwdF9jZXJ0cy9pbmRleC50eHRVVAkAA9HPeljRz3pYdXgLAAEE9QEAAAQUAAAAC+M0NDcw
MjQxMDQyMzGM4uQ0MDNwdjXjLM3Lzssvz+PUd/azLU9N0i3ISSxJyy/K1S1JLS4p5grDqs0cRVtO
fnJiTkZ+cQkXAFBLAwQKAAIAAABViy5KmFx5fxUAAAAVAAAAGQAcAF93cHRfY2VydHMvaW5kZXgu
dHh0LmF0dHJVVAkAA9HPeljRz3pYdXgLAAEE9QEAAAQUAAAAdW5pcXVlX3N1YmplY3QgPSB5ZXMK
UEsDBAoAAgAAAFWLLkqYXHl/FQAAABUAAAAdABwAX3dwdF9jZXJ0cy9pbmRleC50eHQuYXR0ci5v
bGRVVAkAA9HPeljRz3pYdXgLAAEE9QEAAAQUAAAAdW5pcXVlX3N1YmplY3QgPSB5ZXMKUEsDBAoA
AgAAAFWLLkp9UQJANwAAADcAAAAYABwAX3dwdF9jZXJ0cy9pbmRleC50eHQub2xkVVQJAAPRz3pY
0c96WHV4CwABBPUBAAAEFAAAAFYJMTcwMjE0MDEyNjQxWgkJMDYwQ0U2CXVua25vd24JL0NOPXdl
Yi1wbGF0Zm9ybS10ZXN0cwpQSwMEFAACAAgAVYsuSmHBZ+8IBQAAiwYAABgAHABfd3B0X2NlcnRz
L2xvY2FsaG9zdC5rZXlVVAkAA9HPeljRz3pYdXgLAAEE9QEAAAQUAAAAbZW3sqtoAIN7nuL0zB2i
CcUW/OScTOxIxmQwmPT0e/bWq1aNRqNv9OfPr4Aoq9aP53M/jqeG3FP80cXkP+MPZKqqONUq4Did
51yRO25htKJGHtBClm9QIo8oTKxX0WEz0j1KZs9xzR4sbkqlvSZyBuJfJWIP+WlnDoJzcGctg6KV
5NJbmL68fJwnH032wPFCTVX3RK0BbV4wp+tC1Myt4elQkt03xlDOlTokw7MfhqTJA4/t8Fz5ROKl
wuph30XmJzYzfD+ywzayYFwiFNO/hsO00FHPRH5v0dNb5A9Qa3UQxXINKMc+3aqItkolRJFt6O0t
Kk0JRJrHZ0X/xlyYGJrchVDZwKML0pGGH5g6fyfDiLuRCsnSHbSUYC8eW0fJiXpU/SinibqPZm2Z
1HphCOIhnOlDDh2x/LvpZrGRuqbYgSCkueejIFjiiz408gPoxlUFzuUAN/2WzWtPr4vemmcoRfZA
oai2Zq/wP2KoduVxk2U1BzJBRxKR+W7JKKPWuXKjD3Jhw6ZMa02kKRUzupxrwBdhaxDZ4iiHC8+i
N/pqwCnkufjdqxiCa6Feb8oK6s1yEfDtK34SX6TA206DUComcZiQZlQARaMZIdLmEy+4LW1akyY0
vJZUBzPp7sJpqMzGy12M7eEgUqQ3IMLWi+bXBJkI23VbQCWV8+CiosBbK6DpBR3FG1znEd+/v/5x
hz7YDr5i0OCjalluFRJDYyTitGNTjfT+kaGN383rU1f5NKURy5hsuTlRVpFemXr35KW8wDVJ1gpk
cFR00Amb9qi/Tl6CRJxvk9+hYmzOOQr4OhE5VvS0A26AMDgdJXkjj1W5JG6njpWeIL8leNTvhIuR
ilafCx6Ua05MEIeNEdpG7sNIh9xvio0gA1Hct4Ke9VxeDC6YGH0LudoJClUak5y+q0ISvLU9VBy+
dGgecpQ/KNqTwbSY4GH6AEYI5X6byPqOJ9gH6X2OvCYo6mvaUAQpJmAbzN/Etya2UDypUXuPR0lO
z2723PndEuRUCAGgH9RoMsETHwUvwNG23UcB77uNvdn6UujTYcuHxUPGGX2Sz8QVBpvbbwSzbiOh
tHY/OPmAe6RyjWO4jBtPnNt01kLeqluI/JCnumO16e2C8F06q2xiXmnGDFxZdG0IMuNkZOemw7z7
ZeA5YHnxG/l3xS0rLuScRfEsaseFItOdQzRqyyFeZ+HiXvJ1KvC0RGdiwnNHkGvCqnXKwF3UvPOq
5ZZsLb6yZdvj6E4k/+nhTYK2gGJY8PpY2KvKcAToTLCtvj5LLyAucp8mZ2Om6Rw7dnm/PzoSq/Zu
e0Zpe6TRaEUMdfeWe+GosuSyXx3RjHlfe64Oak7rJNhmHomeC6ZG0jreUk044AFd1R42jWixOpnK
QqVwdpQXvJgnKrqEuADCuM5px9FySBk3iQmDRpe0GQ94RTn5S+3DrLWY45nPR04rTAqZsJEcM7gn
pERILkFD4TjqACeO1k/eXddhwYXuywkUs7iU7VnN4+pS9jzjE7kzBYNCypiF3CRzfnE0bKNu8WqE
QE353kA2Oo6YMry7ryWF9bNuFa7M1u8TfZCFPBLpNQJehHRtRld2FcQlGXkCuYcrZlJUl81KWT4o
n03A9JD+aMKxf7gdcL7ELCdunkYU06ZqHECnEjRGEsbhumIWIyu/zCjURhva19js/oqmazTr1Msn
SdYxxhTVuPgH+nspoiX8/9X8C1BLAwQUAAIACABViy5Ky9xABvEJAAA7EgAAGAAcAF93cHRfY2Vy
dHMvbG9jYWxob3N0LnBlbVVUCQAD0c96WNLPelh1eAsAAQT1AQAABBQAAACdVtmS4sYSfecreLSj
PUb7khF+0Mba0ICgWd5KqpIQDWKRQMDXOxPbM4yb9o24CoIAVWVWLifPKU8cyyzJYlYKqNXx8VnJ
/vpFz7s4Ftkuh7pa/0W6KL9+XwjFMWOb+uC0jcQRl21Dl23aY0ixMB/2ZWnOytNR1J1Nujtm5WoL
9WLFFN2Y4Z9x6AR5fLzuSzzlu1GnKE7k1Rv8UYno237DymR33H4rRVEWP2Jjm4xn5fX7C3oGu7Lu
CtwtoN5leV3W65IMigGaXFck2ay3+pNPBk5SimMd6k0R1WXtPwzCU7QWcXmPbLOL2Wa1K8p/r9aH
p2iTxfWeuNY7ebKDn857WHyoyLFgT+pAD1bowQbqvyiSZtWjrPz1p2309Hf8tDkVD1vg0x56JAli
FVQJhAmqDoYFlgF2BJoJkgFyREs6hyQBW3/uAd8bEnATeAy2CjoDM6EftglmDBGnj2WDysBQn3vQ
JGAy2DIYCVgqmAYkMUg2JCa5IkN8I4NqA/vCA4bHLZASYBqoBjAbLBMUHbgAhYGtAeegMXqfaM89
RAZIEVgCDAWMCGwM2wBTompoFmgqyBwkfq+M9UUdEkgwBgUsRjuxkhQGVkCjow0ZWAyJSoWKxXMP
VgKxTaVDP4kESkKRoAlGhW+wTYZOtrpJfXneTYV6oWPYOgXPbTAFaDZVRtigJffuYG0Z6PYXlcQc
GRniDwSAidUzgGNbFWBYzJiQoKgQK+TkqQfTpD6qEehYOg4yoxpi7rICCialUCkkjbocf4Eo7Lga
g4gpEdOmbYyDicjkEGsgq9TrKKIGyfIXdTAJclwCTSM/CqdeyDGwiGCJM63f261oYHxRB1mnCLEF
zATEp2yAYYLAMgowdcoCkcAsKkj0RRZCA4QE0ylyNEE8Y0jGHdKmQqfrGAC2UoPkCw9oiykgnGKT
Eo+xmDinGFVELcCJoHFLCFHYlKceuHwfJZWKryYUKg4jNk62aFLwg2BGqNgKRfLUA1YAm6XesWRw
ihbxLOkEaaxkjF24j6pQIJK+wAOOlf1pJbjsd7nIkT4NXVdNUgtZkiT5B5PNdck+q3VxKUVOulP8
7P7vZZcVyIYeLpdHluVlAfVPZ3kONJ3XMHhm/w9P3wmaY0AogCQ3n5xgzr5LcMS5ci3Qm+CYEAQE
Qd8HHytoE3nJTfAdcHHVBk8H1YNm89m5zqlcEeFf//fJH+KaIYVqYN2JSPFAd0DBkwNCrxkQPn0P
FAds5B8TXBWaJu20cNAs8IPaswDo2GnBUvHkRD9LsxIV/btg/4bSmNfHYn/iGSNZ+u1ujzKV7Vfi
uMXon50RUO+44P952OQ1rM9QbPEWcUblpcJQMWL2Sf7+1TJng0qN8WVnUR+w7dNEBiF81+bf7n+r
qvr9X68u+bdvubU2eKGrm6r6OB5WZ8Viz7ZtzuKbsWH8989elSfv5N9/vhn8XzcgFSknIu5E0koU
GmVxJ3UcXx2ZWCJyRRlXVZCQZQWR3CO787saqzIpiRET8cRI8IzUgLQIZcEgP5EASyHZRL63HkQS
JUXcHaKcIvEg+vE+hDKCTICbdRkEJ20h6AuKED8mfzBHxTBI23EbHocCzgxAakzuYssYsQuClC4R
KtEkXRaUH+bWXXKJ9XHkdJIdFAftHjYqDFIpJkJsqlCOyElYBPOByXA+aCwjkDFNnWqI6qHfSdHQ
iL3YXeUwQq5AHJO0mg80JptEe8KisUclSVCLEsoOI0d9SATJO2odXY4ExAbpM3swxzZhiVDKMGts
IlYAS4cB4zcmi1WNUIc1ChipFEuEGckP5ijdKMV4BcCO47UFxQqzQBbHPSiAWkz5orLhxKPEYQDW
Pc4f5qh7FkkQ6RVqpkz5ogeW3IWIg6pRo1HKMGWMAZPVH64VKBood1gxUjyZOoUIYfc9eBWyY+AG
SUF094yrWD3joe94hC7oyhDLdInAmFHl8DeCDQ9C2STYKIRnupII+jya/4V5PA6vb3gjw0gQNpFC
OEHwUEl1wgl2AeGNIiYndOf6YR4TF5K4MQoe77ZI38SgBmEGlQqvAIg07JdqEoNTWeKHkcFxsEn0
JKn2jR43aHUGdS8YTzrNjudMgvvbWr/T8fOb5zk7kTpVx3XSju+mt7zvSC0vPLTCTqT6o8D1qqnT
d6VL6+Ys3XTw7jr9fpDzTW2RyVXUakrLrX2NQllazgdSfHNEs5Iug5tz6U+mVX/SUQZ+k/397tqf
jL6/q/Xd0SVYO6N/vHqzy3mhNAvWsm/cx8jCTuWPFt3ebtlZneOBg9G4I8dP02Do4HrNGe08/EO2
lX573632ZdtdFdU8eXnfzPy52h2wRH+bJ6+KnU3261GvNY60gdJwcjW57bc1a7JdN+x0uPfZfnWd
i95+wsNDLpXp6W2xPfEy91ph0Of+suzkjdTLUnl3WFylcNsqLDt5q62t7eRl6JxZ4+3tpT/Y3DZx
5Gzd0WruL5OPj6ExtVni7JeN5XHZGC2NTTkIj9mt0bE6Pa5YZu39Q2KrQxV2vO7KbUfNt/WtmLbz
5nGeDS7ucHEyF2NXy0fjt6o8jK/HTdWcedfxvjlfnPeSM6stXxonHvaig3eV9e7LRrSn3WzGG3Fa
Rt3LRN5zr3exJoPgbXHsNFqTuZ00pKTyg/WLfB7tFrV9b9xZLTv5azWqlJk0LZ333sY6WZ7oVUL7
8JwqcBz25lq+55oTp0vdao/7gbN2CBetmiNPuZ+OZtibpoIadGq+5OaqzaVs67ftQ+MQT63GzUnu
hmE/aPnOLHXDIAv6xSzTRI3NdUf1DgvXHKojLeioa+f1vnlkUW89V2AM1cJ/H0sb16kqL110etUC
z5u2aaWWpPfFsduOK77odKOWvV7MLrtIHUhpKqtcjU8/vcuaWpRJZbReHQbb8a02mAwKrvJjnDd3
fN3RFqFeRMpgFbUQd2roNfPV6TWUC76dloPtZbX0fl6v+Tma3zo/n5LqdPLldfsIa2fgph+H1UfW
sivJdUZF03HeCMqBM8yL9P3cCc2P7cfU8grH7/fbh3Kp6v2LpVSv13I/lK1Na2oa3kpnAd42lt2w
rLqb3bS2ktulseiL983S9odsbHKx3p8m5vqwC7zu+5pHirdenoNWc+69fSTdN7XB4rQ3CdcDlYXb
11prOk0DuW0t+6fSPUfhrcmrpp3vxHSi31TlrZkY/ajxIi7bWWruYmt3M8tuudsuXk7Ge1vMax+T
YpTs98fgPPpoTayRElx6r6OkyHcrPfGyhIfD8fWyPWczSVp53YpfeOS8WKmZtw7nA49q7eVtVr4O
x4fiUmbvxqma70Z23Gw1r7dSO3dZkuvlMD/lve3reX/svev+dZOu5knoWoNhd9WpZXk7dxdhKzEd
9zybqsF4W0jmR+U4f/zxFxcGA/8zE/4JUEsDBAoAAgAAAFWLLkoHy7dOBwAAAAcAAAARABwAX3dw
dF9jZXJ0cy9zZXJpYWxVVAkAA9HPeljRz3pYdXgLAAEE9QEAAAQUAAAAMDYwQ0U4ClBLAwQKAAIA
AABViy5KyNcvyQcAAAAHAAAAFQAcAF93cHRfY2VydHMvc2VyaWFsLm9sZFVUCQAD0c96WNHPelh1
eAsAAQT1AQAABBQAAAAwNjBDRTcKUEsDBBQAAgAIANqQLkosuJu51IwBAL5nDwAOABwAYWNjZXNz
X2xvZy50eHRVVAkAAzzZeljNz3pYdXgLAAEE9QEAAAQUAAAA5D1pb9tIst/3VxALjD89xn0fWRhB
fGXycs7EmWSzeBjQEm1zIpEakortf/+qScmWxabUpkhK8Sbxpcjsquq6u6oaE/kMwV/s+fD3P5jt
/28Q7xOE5XP4R+Rzrj0fKYT+z/vnq5Mzbz8Ns2SaDsJsPxsl1342SKNJ/mwyejEMR8HtAUbI+/Xs
7OM+fob/6RH4yfewgD/yH3j1Uuo5IQ+XCiaTQTC4CvcZYv44iKOLMMufXeXj0dIS8AzkYcrxBmsM
kzDz4yT3w5sIVpkvt7ASQOFRoj0l9QbrLNAvGk9G4bP8Jl9CB1P4h7nDIvThIjNMouy7v/ytTxHx
szzIp5k/SIahjYxcwMKIsqYLlwul4TBKw0EeJXFmW4ViRQA/1QC/vzI/hz3x72lofrwK0jjMsmd/
ZUsraSZhGyhnbaw0f2WShtWVCGVceoS54MTWMoZh9/lPNkYsqMg8IrBqZb0l1n/IkAXXw2qcNECu
wpDZJBxMR0Ee/Qj9H8EoGgaGT8r3Beeje+6xcQ7GggPn0AZYr+ScNJwkaV7dVSokrIc5aWO9O/5J
MstSxMg8w7gFEt8vWcqjWbW6oEBCe0Rr1Cpu9bJBGWmK2zJCgyTO02R0xyovjD47AP22N01HBwus
FMTDZAyQ3YB9uprslT//GQ0P8F7xrj9nTzqYTM9H0eB/fiFoHNz4wWVozNiiHYOHA8TUTTc2lIEl
NB9Ig3+RBuPQYLEsElLCB9N9gHUHTJ74A9C3D6EpScQob2mbbVv4Avbuj9/eyc9fKHrz9bdX38g3
tmzDpCeY7GWXssxQIg1n/2vbHqM3JdlBnmFa7QzLMLpD2yWbM0/3eipOwIVL0nAP1NSftWpKIdqx
DL7/fCxeya+/fT76+oa/O7HIoMTqZyejbs1i1ZHx6+sP9PTwNToWL/XrE2ohI9N4p8lYvLCajPCi
6piO4uTj0em/yZvP5DWRh18/2kwC/+npyLHsmI5v/2C/vfn6jf6mvrx/+Yb8+pOJ9XhaOKVz/b6G
nJjojsn5Wp2cfWHvD4n+QF6fvkRVcnIlnww5ueiYnJ9+J8fvTk5PTs7k+2/yyCblTu4535kYw0JF
ilvCoI6Kh9/wByY+qY8f3528/3iGbbqSPh6GpRTCJL5cTiHgInRvtEHxjyCbffHzIIrzcOgHF3mY
+sM0uPajMVDTmmmSjLjaH755/K41aYzd5CoaRZMiKZHtZ+DKplF++8yg97rArnybNSkiNQMkiWq8
9nV4fjnaT9LoMor9wSgMYsP+F0k6DuKBlbCSUAxr6gbM6po0IFwqzy0Jun6F+pQLlqoFgZumaRhD
kBNBvDW4jJZ3yGR01QYbdL8SMPMNfPgjWMkv0mTZj8tK9thkIp2chSZCTKn4x/Pn3aMABlq1Ik7V
nZdCa8ClsbFYH3Ze5fnED6b5lV1iGfYoEQ2WB1sCjAbrA0tHZqUgzwGOMbyYga4/T272gxwUosln
QoxzOwqzqzDMMx9+xViEoQ0exgQIg+iOGvebX6Qk/OsovyqoA2BHg8Co87t0dzUoBz0gCeqGWPeQ
2clWl0LRwsOqSwZaTKGU391TbQkehrAnACTFG8jlTFAKE5rt34ajUXK9JPgFvhxUykPrZmTrcxam
MVBoS5gXwsSNrSDdsMcgTbLMn1nGghfWSRIx6e4W2OKeCpdhHKYgI0ZEJkmcFRbmxXkyvD3Ym8bR
39Pw9fCAUQI6VUhNmdo7KjHzz24n4YHx/fYnI/Ca9j4Vp3+FE/s2GRTUPtjfO1r0dw/mvmnVwxdg
L0n/mAkqOOVUME1IK5hhS/QisHZyvMVD3JYdCiYxMCNT7TwJSyfvR+xwOON2XiI20ds2Ea3T2qAl
udYt0bQuwDp69VIenfFP8tcvb7+cHr63RP0M7dC+VtPHQnVMInUmXh7hs5fq5O0fb9+rj7bECOmG
cQAKY7JGj3COGIij7pqNrXDVeh8MNBbqBiQT9vnZ9HwcZRm8YSVtwE0HXSVF18RZhmmFVyZ4R9AU
Hn349zT6sYZdIPgSpGuKLEBTRwyFQZAaEMMpCGSCtWTkBFLdEGsymoJJWC3c2NSNEaW63q45LLV7
BbZJyl02CrqRJX/UIc6RUOyjop/ffOBf3r3hlsQkITvlD5W/0qCWBBe+EUYdU/TTvz+9P/r99Cs6
O3vPyK9fLRSVjb2h3Y5VMEXiJ+CV+UF0hTs0kR0zx4fPh78fvjrB6OvxHx/f/XpqYw7ZViCDUEtP
4pL91NsqRMfbKtl7dfg7wif03dnJ52+WM0eIdXeRhBVaKU07ptUhOT5+Q9mHr68kwV8+2fQjIk9T
PyJB2nLgJBMtPUmrnlxBcG0nwK52n5CYbLhWT3Lfuca6NVVMG+iRBx0ddzl/q2euiGm2aGEbHvRA
yHU9EFIIQ6wNUHt0HT8j7SznVsbPGycVi89Dfwx8uHLvJKcewbhN7R3VRU6mZgJvwojBuTnzKdkj
ieHz4HsUX97h5wPdrPxJlFETbZjS9YfHZAO/YWDO8Ef+cJoatC6CaDRNQVWkQWY9m2SSeETy1glq
pyFTHiGqHdTuKpVMhiibDgZhOLRreCVls6C/Bsdhch2PkmBooJhLeS3fUKThmxYyrPeJQgpLWSUD
KdyKYnFEt65lTlCPiy04UlhpAfysuOB4vUGVTlZUFtEl0ah/dIiQgmFBGeHCAZ0q2ARJ0T/YADXl
iHElFG2+C8unduU+SEG6kGK7sgI2JqKz86yLMA1TH8zdEL5keRpNJmBri5PvcZgH/vwdweg6uLX3
VZrDZyW6lfg6N4ZxxxrrjfKoNWSqVvgoqjy3euku4LnP874o3gFvOSj3rVKCJsB/Qe0x8SRNLlPT
C2s1PRyDbcdbMbdId2vx4BWTX1lTA7O0wAgiqNEDrg8ttS+YEJAsQVEHknW3XzVihanwRCdWfL6y
j58ZPbysS8BkK4Y6P/UcXCV+cZY1kyT7YafihG7ItePpKI8mEEmYWlD/5iq1q1DTqCp4l+QmNeSW
sNWPWvfjh08WGQnHk/zWMlIArKUiXeLF6tiIUv0YmXzYoP1sPHnYFQVBl8cRx60+EmuiGPOwwHQT
TQw6EAjxIwrum9iXlZRxW7BmW/cihuFFABJhdyNM9K7b4RULSex9/SAADG84IeRhvWAxneRhrsJS
PciKNn/MMW0UklWLjQfZspEH5IzdpTvkjMy2v+KNSI9ztCkdZrWk58Hg+2WaTOOhrYaAGotKO2Oy
OnPKTQHYrpg1oeW29UAc/gDorFrA8KxuRSZs/Sy1PTtYmaRQs8rHJlxINd4hwSz2oyKWhmtlC5F7
w4rrF0l+9QCqWcU5wXhXRIk3O+5fwaoTgCpM43nj1UU0Gn0y8Yd9/JQGm6lZXzzLiN664kj8OdP6
11dh7JscwWUa2A9VqDBZ5V0Kx+vhr0yvMRHYNo4DMZWmPY0h6ZQ3extAYPMuGUYXUTg8+DSNTQkS
5vAJAIXPBlT4gvBzjJ8zAd++endmyakhtYUkIWFCaHg+ldIpVXtyMwFDn61EswCzDk1w+7dQ+qTB
uaZIYEIZagtNip6jejTdWmP6UNES75LSsvs80muY2Xc3JABe8j1cYUpM+MXVbqrKSpMu9rgQvZk9
rHfFcye8Wy7Jo3HdOYQ2trRZbVQTovPusvquYls299QeeTC2Q8JSwmpJ84vuq8xdmZd1xrxpaOZq
2biWmWNvpvrzkFVnOCY1xysamfM33RuKjG5bMKdxFlyE/jQd2YVTAD3Y0zn350pJ8vR9Y0CzefHW
zxbvcI05/glrOdBu5a3uNUHFRURNk1cOyrjMIq7MzWAFXj2ldGc8x97cZar6NRBWGwDPJ82UpvP2
r4moMKgzj1DZX5Qiti6YlYEz4H9ivisigORT8gm05v8FPoHWVP2MZlJI1rLyAXhD+yk2J7wNZees
aFBHEl1e6bFmLAJWDc8HSwDAZoMKj+LL/cCMHJqN81tVJMCMKcG03cIPkJ9i0ljjKGWGjp8DU/rR
ZZwACrYSOXuPC1KeXkrlnAfDlVOV+jzjU+bURjTwM6sDwIs1TFdglQEW2uSDamg9myTjNtP6MQWE
PlDaX9w+i7Uysz8andI3uiIBI0FbXWrF2EPEdvA8WVLRgkJZzU8FCYwmwWRrMk+aVHQ+gqXKYthG
pb6P4abZMm1MqXqUZM5qfbuv45kbwjq/mmuPS/zf4P25Xevxs/jsWv2cOR8sN9HasMBtOSvZJG7D
3C88r8yftXWW/2PaPOwlmtrc4dORx3kzXhx8BQotMSV9Rp9GMUS30/IysdUOqTKTfHi7/cKmqnRN
v7BAZiRu50dQjhSqzQAAdThtQVEXXILtHAJGvElD7DjKBov9sMm4sNt/TZYbMagSpl+m4TS25HtU
9EhPTT/x39PETJ0FWz2dlwuH4wg2eWQ32wqbckjUT7evapSsmiG4SMjildJ6F7xjLU5WDWt+V69n
dXMpptjjjYR0zWpWTxdT6gkqW2J6Usv0TpVEcmujk0Uf0LlOKSbaKcbpDR6JaRvcCOb0qHzRItTm
7hbEGqN9FZlhQrd+HPyILst+u6IkZ4bguoiDYmOhcBMeraB5uQZN5pYM7W13l7MG65Ir/QCmSEOd
4ZI6WznbBkhC0XZqWYXkXDKk13ry4HM98mxXVsIWVkSIHPyFLRw1aHAWNNJKA8QuyLo0vM8Q0lhs
IXDhBHEkCYHtk80RsqHD0U6pC9EInKprMgqDdJWeJEg5ZZ9qViqO2EAV++ULvonlotj/y5rrAhHw
qOyQzAtt4GkIDGO/oRvCR1Z0Uvex31WQ6ievEpMQZf1wYQlKeWqb3d2cXk0rYep4ldXGBptqxXdv
RwTaAPm/skI2IIIuBKMQliQe3c6kxe7Fs+LGod3iAkEgMpMNYMqy/fMkNZUB9zmdmmpibRB3imvl
xi6wcLpiwYJMlXij5PLSYFQN+czFVMKp+FPWHVnFYX6dpN/9LBqbnUyKMoYXJs48MHfI2ki7N0jG
Y+C4gywP0nzRN7+Dt0IQ1gjMig94PkoG3x2OTwXEgqQJO7VDGKBAhSx7kyC/Oih/jVjyPWAoCRW9
WGTMtaSb0OZR55xmCpv9nNOtNruTHTJK04FxMTGDZMS2oCx20k3AMKWyqUZfAHZ2OevaUQICm3zL
BobrbkTJ7AX7xXsY/BXVTI+WV6VcgN0BPOoS/Rx+s5kpfKCpV47SYawXg4MI2nz/59kXU45j9689
ydtIAO5OUIZF1/yFdPv8NT/05r34zZKQXnWL4TLW9bZQ3RVOfjybu73s7GtPCNEZM1Deh6IBO0M7
3xqyafq4jIHKs95sen63M2ZZ+zAsAbqNcNzV7mBNehFVgTrXZ5I+IQMgqSTd7bnoxfRzTFtRZcU1
DquHXWNz5SOnHYVy69L5hDSUT+Npr00PYEmF4+1na2hZXr9g2S3FzXxr1IvVZojQDgOXCkmbpAUw
46oXr5VKuRVarMgE3FW827MBQBq6YyDPqxSL36N2qLUguwy1ndaMNDkx7hTqEfD0SpApZ/0ki5jQ
okfzQrHYylY4ZoRkcREk3gqIj0kHNTt8asAeRGPWscXEUshN7X5R/AaxwFUwsZ+KFNM1sHw6rq0Z
GM824dPVTRyEmxx7G0mnimoo42d7d6vjNZ/rkaptF6FI9iM5VDdhNxAT+BhMTeWsH+R5Gp1Pc3MV
znQ08q9AjEY17q0CUWKojcPfhZphkNuayZbF1R9EdKwaGGYN/I1GDUtu9yTV8MUkjX4YRTAvYgB+
rxsJavqXGymiJr1RzZi92KHyliJ/GJo67trbdUQLpxIOZcSMin7yK4qpDWV25o8aDV8MmLFfrGyu
32hzpZur1N7Gy5XjpdbrAvqxqWC7vY/l5+5JzcAcZlrDmsTztWxuE1wuULPUW/uHnU28aLOdi4mg
eOiPQQju+sRejEsnwTqECsylRi1srFuLYZMSHlf0bmzYuRXyb55GUU00iwNmwWQyispLDe0ICt4x
x/xrcBWkWZgfTPMLX1ko3CQqfsSerl9f9kH5tWAg1VdUYNTYLwSZ7+8DBApeGxWc0VX1xOujgqIC
ylSbabxVdJhigiEK7ijhj0QHI7T3u/E4D85v4dkHxF+ecQAIYsb0VhE0nd0SLLhEWm+IIPcXOyMZ
LhFEeLsMSZDisIGEKNFgB6ssSRgnW5YwEC/EkFaEPVbCHBjS7Tal7tDjRAKJgciK043Qs7MjZf20
2xCB2nOI7emFovFR9nM6oza27sPpeHxraXOUHhesnYdXXGrhcdLSs22n8BQe34HTYfMeSc/+KpNq
q94UExscO2b3DRhFVXt96S03N5o0aXu0sUj1ai+QUN6k6sn29Oo2mRkXm7N39vc0SEOCnp2PK5xH
CfEk0q0tcRldLONg9kC3VHhg23TDdlkeTg5wJcjVUraGWfXUC1QDaDbe2gqWkk1DPLH6CreNyUYq
ZCMmEdLpmnTZ61Kw9Cbl5lk0XqjeNYUbsKL9RkzOPap0L7VpStJuM1lrK1R68h5ko8byJq0CFDc0
W4Yl7zwvc/lo0RB1ZW6kzBPf3GM2uZtKYc8qadqQoMtW0wZImb6230oBDhRDTyfm5xBx66cbgXBF
lHy68SNXmuMnndBAzUqKH20eQAroY8zs5mqE8n5CY95X5xjjiLZtDsyACmeT4HxTo5vfMuPT2lpX
TZ9S6le1MrBkZ/NsRPInnGeDTVS9aEnGGrpc11E8TK79ZBLGfnCeTHP/fBTE34vu9Nm9tXMNUDN1
j3tEqX7O8ZscjT6uNqpZpHodm7K/fYhQA3/+k322KsSqhPUUBjBNZU91No2SR8vRPfgd1o7McgQA
6ae4hmz5nKZjrxtR9aS9bkaeUAiodaOBFI+3HpTolksM52kYcBGHgb1eipq5P3iHD25W8EUFv+X5
z+VIeIk2sCb3q52+fP3Wj5PcJLiGSVxzf500dS+8twwT6oZjrNlIZDoY2SYBRHy5NFPVPkOVb1Jc
+ajiR4pUL54hlT05Z4L0VYLNt5wYY4IqyiXCyGFKNtl7O4ubD8oHlMubKdFLCsOMapdou7GrQsRU
dmAOfv1GuDmNOi9wFlJv12YrSQT8w5IDQi7X+jntpyz3k4qt4oYlVowprRF12E/qiBstfC2J2XYz
nAK8ZEKYZi53DGBH3HDpeKltV2txLKVG4NeijXBzkkNcJJo26nzPbuOBqVf3Fw41o3g2Xy6cjfC3
Zuy4aBZ1N3BzFVY9uUdky2GWSc9DBCm5lnwjuXfin0IfALNu+UCHC4JhkzWlogucH5ZBzrCWjRJv
7WoKMz8bxFeoLjTFMtaFfgTO2nKOHYy2lFwpzuVGNtsR68Kaay63XYWNTFpImhRRF1jbcEZ4u/l5
TbUgSHIzub0Lj3R5p0nJ32iD46r8KkqH/iRI8/lIVzOdJ7ip6fEEFwZ7RLWSFC6ufpybpmodqMSO
N9BIt8st/GkejYr7bq8mL4Da6e3FNC4uejkYhqMwD2egVEYtexzJDaunVlB5xQEvZkBswdVmazuQ
ma8+tVZdE5jQ/s4NT4+YYkQLu4j9Qo9ByJA9yFzOwHiSaYW3Szope6sjOjyhEHjSU0fKLWQeqoRT
QvTmdPLDQ36sjo8c4V4M1Sw7znhvrHp88pKTw1PpCPiiH10FnKP+wkSETo9PwBI6Ar4Y+FcBp6q/
2P0QE0qUZK7KYSEbY6E4pqRj5QCa/TRJSuVQ6TXxNCZbVk5c9kKAl/HwcB7lLjss0pN6y+bNjYFV
zdHKeZBFAz/IBlFk9cg4Az9pu4wmnO7fUGvPjhZRrTbVEHPp3pY5Wjh1LKs2dJEQHAuBXc3tYkah
qoswcZoJ2Arg7EgdsZen3NXeLqQPq4Ajt4r7lihOmBlG5g74XTbDQnHkVFjeCuDHUpwekVPsCPj/
s/dsy20ryf0KX46fAnu6514p1ZZtyXlKJZU9m9ctioIkHFMkA1C+5OvTDVAWJQyoITgEJDp7tmRZ
ktXdMz19v2y7qYETF26wE9f4hbTnx1hW2Y6kBBD3ZrATd9JffKH3GWsLbwVDQo9Tju1FgBxVgRAv
vgZDQZke/JP8MjyIke0V7/Y/h/wbb9qtMdj+vN4+/thRGiyYwEnccKUuA4KopHc6z+q+1GD1Dmq2
kw4jattM2SaJbJbWZlY1McolMYme0hY0iki4pLuu7UXx2abhN2h2klsW2TsVdaYPIjaMALPwVm99
E06tf1FWrct8eveH/PQHis2Pk/j9x59fWi3KEknUKHylGDe1zVUGqKGNuNb+leIdagZnhPG1ssYf
iDV30J8BtF8Nf2TXy+XltCTsA1gam/LFl1VWe17hd845b20Og8fjaPOyegK3aZQJj9PWkaH/ZyCv
8/Xs9gMbaP+o8qusgRpeM+Am9ND20rPhW+ZygccDbG71frE+g1ZjEVft93jEW0mEvFoT9yzyKhDH
98oizzbWaS5qq1Ch6WfanGWgFQF4ncYRTxLbJ2kEHg+ebMOLW2sdBXVznNsvPWRBcHG/18MRSfDs
cBGCYSsVDTgzLmnHq2wjUTmctz5wRaIBZXu5BaFGsfvVKi9nU1LH+7aMqYm0atQjHr5AygAijstW
gxf38hg1PyrNIxRSgtc2kU1S5qtlGWhU4131k7jRavtYrDzUPS+/he07kPUeIXGoCRlYiUv6iYwe
n5yaRb1bObhVmNgT+4ig62KeT1cFb0K6rGfLFAveVdZZb2Kkihy47w5qW7VJIHSPHO9175uz2ory
BE4t6zw7xXs+hUvMFt+L9W02K/Mr+noxnYdHFkjb7ExLZixuA9zp0UQOCnUnVGRIrkefcFs/muHj
+bn8ZC4SVNxoF9eukwTvT58/2s8fjUpRY6UdSOz/nomXGcdfj/m6XN7VXZBdY+OBjK1Jr5fcsx5N
6wswH32KWhm6ZDUY4h/xy+fzi+hysJ3VSdqCgmMLsFAgwbpjQw2EE8ghPTZUFYJ60LIezkvUXlO1
ns7nNSieq3P2ZBzCu/qbH9dnovnsy7Js6Y1mRgL9A0B1cIyvcy2ItEMfMVke2sh0BkC+vA6bttb3
s6Ee91WxoV499r3Pfs7CgVjwMJGYHlR7orBTkQseYi+OT6+dLePpH/SvD7E/W9s63r/fj9ym3157
f3xqXeSw4+ATY1XA9em1DXpVXF/ndZv4csUGVNgSJf+VLHA1EL8IMZw9A87gl4sUFU0k/KM6c9IU
Bvlz/OSdTVGmQgpc6cPHDVTz5feHnoc2y3rDmkGJQ/MYMa/DT7TucRPtQT0RiRns89x3QtoZboFe
QeFnj7Axl6c3XbFR5F3dLmEmsvl8s7J5Nl9WHfvLeC4VmsQEtmUM8CQPMMdWFjuweFAVyVLpT9JO
7SdhtZx4lK/3ZBnOxnkrsrtpFdzGLHXsDvkOn7FpDSdT93pZbpxF/lY9RjKvZvQjXc1xhvSfGSxZ
cOG+fP4I1qToVjCofY8L4Tmb8w98TnxMzzcJPJ4fb5hdLgLSirzZidF4mplH7ZU81eycds6pU82q
Ct+nDqixmwODt5owbj1V4teOv5fMiHf818AChD61mUMgZiT8ZglD7ePWS55SwlB7reVANrO0/rdL
u8tedkvy593eIGIcDuYquVd6BDZhem/FZaBPy8CCuT0uhQT9Gg5EBkT+YKIAcEAXSPdKojx3TXZu
ckFpJnHTxCP5ie52uVjwBV/d846ZbDH9VtzUG8HLaRVen+1MP97qqnfeYBA4VcVzs9Rg8Tp0X+Dc
2PMkeVNtxe+W4wY7XPWXUZ/B6XOdJP/pxXCupJefNH6KTnLvDAprJ3G4qgL9Edy5FUmy835Aux/l
Z+edP0+ScfY4nHn5Cb58OQevU4ThtfVmoDA8yr6xwGuiMLuecpdHOcs4ddwVMhPcP6B73wT/6vyq
qepoZjM30eMyr/PVbOwUu3boADqYSK1TlRl/zy+/FutsWd5EVxg3psB+gzKq7Q4Nglmf92aLXLO1
c3mVn91wz+ti/e4heHm2+cn/an7wM6exAxsws4kSXh8W9ubJmuv8blUHTmuM9kYCdFTXkX9m997P
59WszPPF1qf5PK+3Am1lMcviplgEORKUnEgD+4N+pH+1LBbMhfPl7OuTvzSmb6exi97LSLPQ96+P
PNju3GK9KTH7+pbYf3vie1ueGM3yRHjYzea+L5tvM9O+7A4sBNz+R87Y1XZ+cUdCfJeQc15M4hz7
zltd5GvuwOKmufv5dL0sa/L5os8479LG4x1H3EkEnVXrafnobf1aNTlf3rRfnAE9DpKETQvFd6vp
+vaM/xEGVrWyfIhaQnsEbInhYg6UJ+frqPL6I+BYz/2NvHYd5V0H2H95+Rd7nNckBK7y+fQnaeLi
7iarvt2EK5e4ldT1hLW1W7kB9bkoZ/PnwkYJNZHIVlIP3fHcRtrHuNhZWK+Ql9QejlBJN/uAy1Vg
mrO3dMhS+L6Q0lhTYFNz085QCiBPkHT+ULaaNfxE4Fr8BHSDru/vv57n9dSNLE5ZeKUiFxD2lRoN
SsU6iFIvvSERRse3lwqJK248LuJ7aBMZVVt3XHT3USyyr2KpbqerfINA7UGEevi5iMSocUxZwD72
3IvB2w4XmRwSpw4DFx2nNdrvY6N3OD0FQSh3agrFwwr2E6r/+R9/J4g/7ubcKbdhvC0EiKnXBc9Y
rn2fLJ/dLkMkki3+0tTeSBobxd9V2uLQ0nmOQSFOLEStvEoMWPqJNXtaH8kAx01BipA1O40NKZGE
Tuq4RMV8tCskwRaOHuFgtZ5YodLFQmLEAlqXDt7LTxRjaoCliK4U5MFg9aSfBX1pOi/+t07GhAW7
sxMdM1pkC3ya90LXijEhvud038yXl9P5bVGR8fDzw+ZPttbzOtXYzG+VAnduyFNSxA2qSU22IjEh
Yh7vc7J3FPTu2HT4UDUwDqVGx/TTdFP60gpHjROjYlownoPYyFw6yaxa/5zn1W1OFvDd/bpZ2L6q
7ZNqXd53cI8xE7nnJSY5U3qs4IyFfhRvZV46aW8LKKWJWg3Qg2cfHunldPb1oSZgWU8XzNakaW5y
RuLyZ8bfD/fBGknCEdOQGygC52LpqEqLLsq2BzK2aOQc27RYdIyH0PQ+YnYh9ZJ/62Id9liQfIeo
oRS9KL4rrq465qk5kgYmObWr++q2Is4Ne2cENGo85E6+XS+bPEb7NQJPPTBG9JADXRD+BiEYViWF
gSEY2uuj0xHV/tt6yv1a2gH1J7iwSfoSQMaE+bu4aFYuq2pjWhOmqznnpB84eRNwnN0W86Cx7+sG
px7vdX/HG+iVokr+RDcUd79SHh2idiblXpZFoTOugoe8w/I3jAmCH4pHB++WAOMOY6SnAaM1HS2b
SkXV4V1YyY6jHfU8x9jsKP24NI9Rk+8ljkrzMTtxtBz3Po83llI4D+OKu+Fn7AnlTCp92oi/jTAM
DlHFuP7kNEd8gecX8uPnzymsHm2lGVcVjrG+08nhTFRpzsFoSFIDa+VwXObOvZTyQqYobfdGDSaA
4EKYz1adp6mW9jAg4mg+fhEiTX267OOF1bmJiizvq1XBBbXN2vLVz2CCQlkTt6D1AJcpaG/W+yDg
kJBjXe1Rk9eQDJlB8UOpUPIeheNUjPQiJUTMQAnxg680AFOToJLkL0HPoNi3vFwXs+k8m86LmwVH
i/J5sXgosnlMt2fYMYq4dpEOobdriNf79x+a/19Pq/WzAN5l8TWv3l/erd5xaqNWATWqf/CXAvO+
RCt7ZcmHJ2Vs3AB+ZreHqREmWpgDXsYDqE1rFY9Byqq6euM6L8twqNEonng6mHkOnzw50RKSdBo4
1SdY2dN6unB4IZ1K0dthhPeYIspKmMy+7r5eQderhU5wTI+f/iqqIQvqKi+Ds7Ys0S37qO8HKlfL
VR0Wyq4LIrhpC13lC671eYBfhas4BT1m39tS2zrd+7KuxV+TWAkUM3LBE1rpjy1rdxcXCl6vqcRb
FbpCHJRu2PQM02/kV0Do3WaCRB69zqvq/aqV31CGY81Cpnh7v4Cvp+VNeAeVN5oHyIzqJ3kFQpEk
QlDQ6Se97ALV5LBhq8yo5EgjwZKXroTYkxpitTY9PmqGwzEjkEpJB+SgaY0JCDIiag7CUf1yACcs
OUBeJyEI7LhBKOucBUu2hgd78AMicty4DEfeuRZKEEHaJyCH7LPE8htflN8ejqxyZUfpF8StOXiV
mtaPnHZwGhCFl9xJfrge8mj0uHLbWGe8BgfCplBElpyiceW2VMobr5AE+OH3Q2bxyOFhK7yyVknp
Icn9RO0dOer7EWgNgnMqhV7VzqhxDVODzpHjYpTRCeSBwJHtOCno9RhvLbgE5Fg5rpntNRr0gmwF
o5I8H2HH5TZQQhLHk6GNCdQP6bJx78cKUuvaWqQbSnE/Rgh1bKMqIo4h5cilEUZo0JIMpgSushjZ
VUZDskgLZ61M8oadgLdq/AKIkcMWXisvnfPaiBTazo/r5GulrFGSyNEqwUtxduTbQSWFJdNX6jQv
RSsYWZAplAbJBnYuSZhMj/1+lKMLIoqsSPB+LI5sjRiLzltjnMckYUyrlTiu+g5HRITvV3/8OiIi
orcQ3T2HojN6JN3QELF/Bd/dtM5ibwp6pVC7YAleAerckU3Ilw1ING+VGaU+PGHZ1BbQVbG0CU3N
m4BDNwgcYcUQcPzI2Y6k0XTtUavTSRYaoaw6ndSNtk6JU0qtcfjAnlYyV4kTynE4BTJdR05Vl0IT
3Kvm8zy8IU9p7NcWuTEa8jsuQGsslFVJJ7O4eWgDLfNvpOCvOscNOOR+XnuIAo/Z7q2T1fdvHWmz
d3PrC2fY4lCQE+PsSWWtPBhxQlkrb7U9mZwIVyCa08mJGAHoTisnYr04nXC31X1KLnsJ1qeVwIo3
EPZpRuoF+2kxr+b5KSAGgv20Daue3aKGoZv7OJ92ddKZy3T3Xdyt5s+WzYTa5SSv9OzRnrKYlfUc
K94EWM9bul7OiLTL/HpZdoe3FBi+4oEOuL3OR1s9xgHjQATLZ720Wb12fniClRyIYPuso5D3E5kx
btgNQrB6IqdVLadNnz7wITZF0cekfVoqA4Hqh4FQa5gkY9XSR21SgpShhjDrHEzAHdaE9vLEfgDQ
J1UP4ZzCUyr3IkMPTykDbo12p5QBl2BOqlzS48ijI5LWexnSDgnSGbPl3WpaVdliudFaAdXgDPD4
QHt0aLJWyFKrdCFGXqo+Xa/L4vK+Y5oTr9lTPSC2tfruSB/pVlKwwqUMYwZDllLFbauJs6diVj8a
cdSBhygP6t+u/ueefjmJhPerRWtAPHpVL5Y8oUoSJ8xpVZKQuaFOqhbLeydOqhbL+agRARByombz
5eIR8axOq4fHj5IScrA/mNcaCwdUelRqkqYGyUYY+XLSNkWiiIolwhtpiiSutaOSkzQrZuK2uhzz
dpJWpUgV1fINb6TLwOqRxXTaxiclxuW1tGEKp6wclZy0bU90MONq0bTGu4+LWsLbCCIZums8ITkN
0psTsnGEA3lCNg6MLQrSlsp450/IYhPOy5PydqIieW/EYrN2ZJsgberCKC1OyMRx4PGEDFDrR2a2
xOFWMOp0vB0j4hI9sM9gxsca62yRf+eWqaLMN4Mawxs2JJff9EVjv2mJWgymZt81lFdZsciu79f3
dAj0mRTqDLZMPFK4QmnUDruH5180v+js7/eLfyGGAE0fCGX6yEjTHwIatOnTf/v3P99d/Dm9oVtf
z25bC2c5kah/0xNoEo4GtO2hLzYTpv9a5TcZL0IrpvPOuj16VhOpfdqHtfWspus1fYnrCcPzdHXk
HIvD3xMIP64R7q32kqwj8voSlN8baceNm3qQlixXUjK60+MLzbqCcc1T0GDRoDQy0SwyYXBke5tR
AENXIfcn6Ne/OC8IWlXUWx8eH+2/Ejhej1p39v6BeP1+/YNQwAA/ehw3AqEN2YFkI7idtmAiaonz
x7WtnOTpsor3E+ztZqU7Ba/lW5RBHt3/X541iL/Rg41rfn8r2t8pow7r7ajmy+/Z/fraZQy/PT4W
nDBAhhMaa3uc3I4itO7C6Lh1qtBVT8W//v3d6mnHk5kg2X59HPtWoRa6UKGWQ0cmdNxCwP1R931+
b7GoePbHsvxwtbxj9t2sqszor9m6zB+mhdRTS5omn8ctGME9NGgaC/oQXHgR9HKebzZ/ECoMffPt
/CpbcLP1dDbj1oPgwg9piB3BHoLCIl9/X5ZfP/C+nWxaZeQ2zIOlitabiXfHuFIg5aPURCk84i/H
g5hmq23i4Wv1022/WmOFncTNh0oGDXqYmU+KcH8UVS18Aw3/eVkS9GaSSjYrp9VtOAqEE9kntnYA
0bu37XTCWZH+eMY2GX+tY7E0KA+HiputpfMErR7DxKeJ2VWer4IFdAoiN1pD3GLeZt1K8J7rCw5L
OF6Rg6mQ6Gj2etbnxSAMiqMDBfEMKEKfnFfUPUP3Pct6mtxh1C6WiyzFC+a1av7t+S7GYlS5HPa4
OR4lFlzMYkk0nFDozFhv8bf3/4ztJevfqP9n+dL3fze7NUynLOrUMqgcvSWTCpGrZV79c7Fc/7PG
4lkDsZRyoqM2a3YKC7aV8/LD5Xx5mVWzslg9tBE/seDvVsuSpUjzE+FJSZ73l0cJEUxlMqke0F6r
yLI4NjmvQWRZiIs34mmILKmiHCt8XRaKNdBL6DQ5y9XiacqSGzKn89XtNOiwkF2rRIp38SR3yb2M
y+XXImgMgQXkgRR9ge6VsiROG4zftycnaqO4sMZ4eXCGjJPYPmq9TWIqLL1VosLyYMBOKv6bLvvs
c33Ze1FkTY+Xua23vy9q7v6rIhOiVqlX+XxaT239W7Fm4lho4Lv6qwEcpOaZRgp6WBK/etsqHjP4
/ZZEUVZ/raNrF8BBZLTj7dygJkVihqcIFMlT60mR+uQUWQ9j3JGi/7RwHjCFrNDOWt+Xp+uPHNWt
7dXGdg06/2QYozVJwLSNT4lgI3dEvyXucqj6GO+P+abV9L6qa6o2jkQ+r7/TTjwp0j4TlNjH+Akn
uGYdGQXFYw8wDR+ERqJZjo2PoMA5RuTof0CqN8WjtHELLVJTQdan4RY3JVxqdnaujwJvbeKUAoKx
ZGMmca15Oxhrtiw3e7x3bSy3niwBow+hpTUp7Dafrwjaav639iRDL3lluMekAHfvhEbtk1wVdl1V
3Bz5N8TdXjs4Gkc8H71YcwQINyBHSEghjp6MrXlSCn6/uuKR39njD4d3aCAx52En/Ys5ZSdzghzE
1UQj/NF45vn0SuYZVk5DSpGowSYvX5TtvKg+AI5Yqy61kBaNQm3w4Fp1fLlaXzvh7NE46Pk40I0e
UkNykLHJwlrhaJaaSC8TcOlfHJuf3bMdTNBmjVATvzaFhxiYtx+hPxZs3A1bRRZ1nOLjaRo9tBeQ
Jka2uYbZLadm5sVdEU7IgJRs+KQVWU+h18Gseb64Wd9uH62xXhpEcu+kaE2Wtca5gVASYZTeldPF
1fKOnGlypx25cL4l6ZS1A+Got5x7CQ5RSPDKtodfq6EuUoUxejg1BNBeSvXMb6hxhKFOTe7GUXFJ
q/MwJoq4G0UgdhSkTrVp4aiUHP7NhnB02gpnSIS0x0MbP/wbDh4jpzCct60XLP1QF222smkkXVCR
mHHGBVjPDS9TtjF6ODPLbadkYbkA540gZEIogrbSKWV84HVIPbyQCeJI9oNQhvR6+3k4NbyUCeFI
X/OeW87bx4h6eCETQhEFd8STHRYYQi/V8FImeNVcEeDhqSTcWArw+s9Raf06zhHpzQhDohna5ygG
U8xbSKLW5NQrViy+dWxxBctJrtaHUfrFf9zJKo0MGQsWhkLS7UbSGKXILzIB/rNDaT6wu3GUDpxw
3tjAG+lt0Ww6TjZ1yZHL/chwEZFzJpIcjNl9MMpL6z3okKIY7PL0bhxRWI0WVOgVOBwKSfXCU1VG
GktPNeB7yKGMZpAvIGnrvYcqIPT0cPIEX0BSOAnk9gofuO7BeBJeeDfkC3OVddt2wcE4Urx02Uga
lyyYMe39FxScRANaIgSu2g4lIl9Qb1oZTrmrwCmaoVB8QbuBc5YUsDL/x921/jaOJPd/RR9i58tw
pt+PBYzB7W42uUOQHC65T0GwoCWOzV29jpQ84wvuf09Vk5JlsSlSVLOtMXB7fsyMqh/VVb96M4/V
ZOKbwy1rBD1DqPTMdyMkvoHs5UZBYC1gg3qUoYhvIPuPEeC+4vRVrVkteSi7foXNub4Sha0UZ5iH
7YGtgl2LviYaU7SxPLqJW9WV6Gsw7gS13OPyF0JdibqmREkrGTfSIyHJlShssJgVqGvRfNoimgvR
dp6jlkRKn2OJs5N1zJdmTNNdxvQtpk/dbYptdlyJBNaV5eo6YAOgWGLRC9LUd/CmrwQ3KA7gxgpr
31C8qK5HgcVJXulC+XXABhwrCXY0k75j5NeBGxRThFPu839cmMyYL+t87PaS7KrNAY/vvvebHIig
GPUwlKTxvfd+jSoodrHzaQLDA11XM70d0DmbMKbi+7X9IBKuCeCZfUvztUtjK6O15NoTHYilsMVh
sgPXjnMsGAjNQ4sWGOXWv6QXeUm1FNZnw8SLlXLTsUgpqFKKGo99YGMZg1yfXiQjgGi1NPotjWqu
Ok5SEPgJdI9nkSyWZ5TLjkXiWAotAGw0FxlNh3PRxZNco7OMe04yWsiU866TlFJJJTwKVg7JHjmv
H458lZCcuInm0VLhODt9NBrEGwe07ZF7Q6Kgh71eqkhUmS+283SzKtyqsPD7rsqB7wxVgVG1WMAq
7+p2ck2NFk/pctrBYVQwoEk9EUcZzXXDSYdotgJnsXs8N2q4jmveeOuFVo1/2no1aRLrnFgXGECP
K06u8AheES01oAMMgBUPPzLmMZ+0eOOHu05hA58WeTltzrzGUde36RyrJfHj4N/eUe+gbbAOY8F+
1oFpgD0F1htQXy5sLHTIOjCNNQYsSF+W2hDzaRRB/tIatCHLKY/m3WEduAvYzzAlPIjmglhvMDHJ
ZTSG64J+BlQbs77EZvYdQGhhv18piTVJHGuS4mGLDmZwc3eM4FcII0Occ7SATKcpw6VVYGJrEcab
cm0nzbS4EsuIakalEMqTPSWovRK7gxHOKVHKxw5afv/sIIi5EuMJLDww74Cox0mv1Ds46Wjemi7z
i0mptSUeM1XyPuqOX/lB94o68QgmJJWMMM4k85x0L38yj2F7CU4wVYL43p34/tmB99IlPIIBySjO
ggRELwemFV75STPLYp10l1kicYqHVL76hF4uzWs/6V5eMh7DRsXUIMu0L7Su3sVJR1MmvFN6EMKE
tUMDQUEW2YXpBRYhWlDBTXYg9h2wg4wm4roCIlprjDZ42ge8k4cX7aRJZ+oCIZYITzUAN+9BbWv9
DlCefg8838vOvfpNDFBGmAsMH/gJPqSeZcYJr79zA+a8/TjZhPUqdXmPvFvl9z1km31PpAT7IdUd
oOvz9PZnIq5J01ufW1fuAZX8vFP583/+1wEjvawV2SfZrBxD1R3BYLFHHewQQ6nhbPtCzVFBYrqN
mO4d5e5BTLvXkay2m/V246dYxbXYRMnBNoNrdYa3ls3q/op5awjNUjFhQ9Ric6rfy0a3xfwzKOji
+bgEwA1GYWaiuB1+oPfpLCmz4glkTbm9b90ZRuKYHGwOHEARhyuqk5ztjrLZxhHIYc8qE/wo/xnr
Lf4J/0qezm/0j/TjR0Zu9M+AjIryf/73hpHj7btjVhTwjj1Z73E+93wGkbDNMCSMDVYYZcx4GAp+
HZ6jPGzErTxnf43JOi+fX6fHH4zaaeZeWwP6S1zEuGU+9caxperZEv3MR4j9t+9ufiE39pcbS2/M
z75DFHaEQ6zGErWepeETdaaBWSmM85lEnGmZ9KLT62QH+a7GGR7LlYgnCLGDhhkiAXYPZZbNMxxp
9YjKEra5W0I1kwb/9AG7S04Bq92n09/9czO0mnDNQ+jtcgmIsHxcZWXyVCbrPPPNIRZYCzHp16r9
fIoJjsw9QXaIWDp3tlfVK7Pf3MZ+msXLrthSvde0rZGZhzFxvvI8wLENNYr0/W3kKed6opWKwaz1
LQ5x1wzk05qiuuBO0+3mMVtu8rqhbSUB9y4i7IELK/harMBqmcKv8a+m83LgP/NOpAajg/eqCT1Q
JH89U1/JCbamEZKdw3eeCe9F5hnwzqRG/HLBJZT535Gvi8w9JNdaOXG/S9g3f2dh+CTOzTm7ufDC
D7DI0Z8l9OWfg8GHn98w9ao0uAEqY3fyjbvw3AOXoI6ZotEfw4mzYe48EvzYV6f0JV/m5fE5YXfZ
KvWg371WeOqQeg7id5Mt1gkO4nOuiP1EvkpSNmUnlo5kt7N0k95hW+s5CvfjClaDMzf1pfz9slAc
yFuxOUeJ9pk3JnyC4r3Ee9ZFUHgIMqvGIyh9BM2IBJWXoA6rd7Pp46piII+rBWA6M4yNt0Xt26I0
IYRMWUzLbN+o31MrbIaa4m2bc/tiR/q92hWdYPPp8c6Res4RcNqIN2c8FIXk4xFkvi0yPuL7sx6K
nJBwBHdooVKGa7hG0iCpw1inZwNuZi+Q3bNVslw5rOX2Ny3dILLp70D8/hl+XLehSDZE2DRRZNUp
4FUswT9sT1nAHK/RxuNms/5rmRWocb8j4OGCSIaCoXRR1iNwxvT3P1f31hSaQtCefRYvwuHnYfzx
LoDvYhEHf7+6jtYroERNlBziUwuHAV9oNzAgZYTHxQ+UkAFW1eFommL1AAso86fs9HgaKQe7XlYO
OdSc4o86GbhYSi4LzKf35Wq+hbsF2xbOrMjXGOGE57BOp57XINlEEhlA9jtfj7NIQXo8ZUX+5fko
xvlr4wi8VZY9876PWbvfKVcmprFhr/Fz9VR97baU0BM7RJ+X2XQLb/RwTlP5uPr6F5yFmBV/xJP2
7o2aIaFSDzV4ENmSSfJNEo/b02p5dmzvWAa5s0yXs5pdksfn+yKfuUlFwLCL8g4lzQ9/AAAmpNI3
+qfjlw+yXIuLMq7hO8Dvp8Rgk2t/dZKoORR7UFrQAVe5pm61a7/c3u8X6RMUAv7TJuKzbVuc/wlz
xeJyxgf3ix/dL7yMQrVml0mVM65HaTqx1MZgzLZVtTCppkZc280oO5iR9+B/nqXwRHf5T2nhZrtP
0+U0m1f2wG8tU8Akd+6ONxZjnMuLAK8b9VxHetfzz3UPSM9oVKp0v9moIdwR/brmBfRG8DORTGjm
/tB901RIHdd/wWxkjywb8p4v8sgaGdkjq2VcjyznJLJ/VJu4br1RndxeJ1tIl3NPJxsLkAtXW+L7
PFIUTi/tF4+mZC9XlU/iA3zj/uGHdZE/ATD4sNg6VFvnl8LP9Txt0sjhm0gtxNgLp6Ms3BD6Jmjn
p/oXxhLaogWUflvMc3mg4Mww9Lkyc3Td3Peq+JBUmJ7x6DoxQ/ORg1E1HUYiIT8+TsiEtSI/FhLU
HhP0oirOxyMYEeSw9iiwHpGgFzfqEY/UC+MkGY+gH1WJ8Qh6UZUd8Vl4UZUYBTfS6uGTANbG2+iV
DwEsRyPl9wcfDcBHTsX3CR+VIe+Rt67pUzx8Ls0Fju3ptnBRvNPzJRVcb7/KdHacBjAtskW23KTz
Y/cb1iNgFsLHdQNxM8IxagtWvA3wEnY8Xfl+DzbqCdZPDOXRKFYo89zrG/ZoKoYif3CcB189fDQo
1Xa39TrcU1ThNm9iB2YLDyk2aMRgsmKRLoGn9lGmqth+VSUZ3B0v5rAa7LZYzu4kwWawiktBLGWv
i+5xVdSeiY6HXUl6P51lN+TnLw+P+W/w1efqlyGKYE6cR3OOLPb4Z5cTdaYuHoFLXtnzBV6UK2iu
C5iT3VNxlczZN8wZAmO8/ut3mPfzw6dP+9X8ABTJJRus423nKqrvb4tWRgnS/PjTz/8CrAsC5Zd/
/bc//qn6tsnIxOpBhWUvyuNFZeCWmzqDCeYKHqxg0aSp/PE//v1G/lyJ1PqHW4BU8E83vy6zr/N8
mZWN3tgYvhI8noCpF1ZJmXNWSall0YJsKlaQjVsb19XCBYnsahE0siPCxvbtKBvZ82FUZGfSmN4r
r6vF2Liuln7T6gO6WpgRsV0tmkTTwbVgr7TwOVKecSbClvHjqj5uvh1nKzI6UYpdCgPW8xxd9t8S
TP3d5JnHfARWplyaiWZMmDe9gA8dYOFDkAsUYowL9PUnkRPseDlCIMyLY7Fh7KAa3M694UzYpuNN
MRsr0UfoyIk+oY8RM8ydpbPIF9nmeZ3dpWt4mpUF/gnPF3l3A4/07v9uGMNfwJcfMOH3A3zjerLg
LwT7RwPIY+Z43JQfPmZNpA8x8XHCb+0pP5zxyCk/lkUuwtQ8bsoPZzZyyo+NnPJzUblZp5jyIqaQ
grGZZER9SUaExxSNT8vZx3Sd37Af+wtJa+0/fKqYh3LXJjuvlN8nKOCrGc0PeZI4fGYQX91A2lKa
EeBH+dRoigNwVYoAblefz7ERcTi3XvZsWHxbbtJic8dvd0OZmc+3bS7zLv1tmxYZJb5iGwqSCxtX
vG1RRZ9TYGpQE8pvizn6jYvsb1sQbgdrXmznmxwLAqu2ja4QcFcG4au8wLFtLAiPo6j9y65xEfwx
RhazfbaVV7Aoa0HHyPcYMq7vnu4vXxCfG3hQ6K/18vdX7mlxRqVr0vnGT+ItT5uyITUjC1AcafX/
yWw13S6quGNrlJNqQYY50yoaL2f9lM+yVUtPHkrhXw7LODsmU/3saqaaZLShw+ohdnrJATDX+G8v
CTxRd4FF0Oo9CwJ5u59Z5lECg0qYmxCnedi7MKFX8A/q/Fe9h2Mu3aGqZiR0F+Y88YJuXY2eY/TF
Wtw6yOw+9hP8eMyRlhnAo3pQG5XLTkzyiWX6De6JMPGOX4bevQzri0DqWGV+zHA69G7LzWq9diH9
jiwqMECZjuVkHNXH5HUyylgGzKglel4HIY3sIBy1Ys7fpY3EdRByYiPXBI7pPtOx3WcRs9dP1AQq
FttBqGRsB+G52Q3fmc1k9u4J7YstsgA59D79iNBnO/eOXeFaTGSQzMd+3jA2GAa7ksLfs+fqmwS+
Sx7nZZJmJWXGG0EVjA7zOFcE4dM/OQrTKXZfup/nm+dkliHEuceOxoiavVYp4QLeDotilQ5nmXLz
PM/KxyzbJOVjWrTMl6FCKMzRvfjWyu0aW/77NoLdeqiMclyEhnhh+4Or0iPB8nI/3uE5Zuk9WPfT
sjHSgE0UC4DZTtFgTE80+94MTVA02I1DvKFjlIohIPeNT602z4W6LKjWr7t/1TmI6GFMfHxSKFr3
kgH72/2aL2fZt48LvjWNjtjwcELcziua6BAgHzfHO9RWKqAH4CfsnNCHbJkVOFZg15HTIZKfqnhk
8t94yw6MYb+/ulrsp7pabFcD5rOkpSUhajwGCzRDbeB7mRbP6w35CN82nulEETnmXpeAk07uF1ag
TZj9pttZvmpgCQ/3g1gE7ichqqRO7w6AxEQPVsJH27vP1/erdcfDpkqDqd+HfUVvim3PmlOcmUb7
jWgQ7UGJimT1Q61k1vP0uWqJWmbZ7wnODKkq0Ypssdrsqz79QJHiEBpxbaKmKWjg6fXyN4kRH59l
F4WwZ6uvS2eAYuZHdUPORekWAbZhUdWzydvKccka4hYMJWzlSogeehDx7kta3suk8y7zoFNf8iXN
5yscpbdZ7aZA+q0EnOXRS3yItgtCzAEcsMxw0mZjuJrQjPV0Y/WhUGR+Y4QrNEZMeDGx3eRzj1XC
JRbf0l5ZAcLb/vHgdXXcWzNOrY3BJRgZZrtr8WmHXD2RJHQ0BNmny7PYFdF7diVw0KIQwRULbSoW
JRl2/ecsDLFs+TDPy8dPFTBYu9CGT3Nq0GWKmPGIpun02ETTVlgwLvlQontvioM+mwL0ZJk8pvUv
fEJFMzoRREXiGE4vGv69r08tN+m80mzOlPv48VP1vy9pudl19T7QSvnUTeC6xfzFF2F/w37BX7rP
+sPmTnBCTPXTL6uiUZcgjaJVn3ErbRCpX6QPzjTNXdP3L7k//YIxLsFWspdJj50d7J+0RvrGg8Tg
6cYdO9/PNnY+3Jcocp0SlMxXD80Qpx2nZaonmEqU4ZpexQHBSTSOp5qoff/wK3wFkLU88grvjotd
xw7qAdxdF0wlCAwpr2LJlTe8H1cyRc5fc8tIk4o7k7KY9phsopWYiF7wkAXC757HIgx+AaOLhJCR
VfLn3HkZN9jX0N/P0HCsqxoUm5zuKvFxeowbQN/UXJhoSBiAq6EIpJGcVturHgwOQBFz4enJ8Rmi
s3X/dFWUe9kGd3cwWsQ3owBAAFN2wFvrVZj2mTZL04SkYZDVIdTx4TiFxIZw40U+l36TAIL5XEgI
x8FZ/bVOdc2ydAiCbWelZJMvWiJnnMPHcMvi2SFSiOs5akUoN0OX85QWz9X06jkY6ychonAGuw3g
nHp6AI3ypUyQuG+wkeITLQbrjm/1NO6Vs7DKhBPhTVsjomcwtGM7R/R8czokzvNhY5OqAv/WDnab
fXssWgeYUanthBt9+SYcBV9KKCM6hA3a8vkY3VIXHc12iVAQMNFj1jrPjmrUbCSo7e4ACkgKeKLT
tiRMyjEL09LLrydbrDfPnkYHWGAVwNVThW6rkO22BDD5gOJmb8WflS+N3ZEuuVAn/E5cpkZIScw5
MKzxYl+TQWOjvcWVUhNtSDxIxJgOube9X90znQ2nklITG4DF2x9aXjbeYUojokLL4Trl71mxSqpc
vAT26JddBt/y4ADlYgUHtkxeW1Wfyt/zdRUkrBOimr9J7rebDcjz6TyftkRbKOYo8AAmn3eNbSbh
bmKqL7lK9uz1dbwg7wL23xyZpL6wNaZrUBaK8m+lq84qmzBD9Gxccd4Gc/iuvm/P7qhQiAZZcLJp
Xri49QnKTOMkiAsDQ5siSxcY9wTKy6oVYwUV0zn8SQukYwC0+fDoxivSh572tkUkOfy6oH5dq1Co
meAXAGZjlszT+2zuPXyA5kzx4FRx7Nq2bKcrKZ/QQdHAjmecTlclHDO2VUo63zQXOKd1EOLos4wv
2/m8nOL8yB5LUVL0TBo9892fcR6SYUNoGn4R1esv3Z+ApgXJ7uEJbkEQkPC8CPJnmhYzn0wnDJT7
CNqkNlzW6dLL/pxJhcRD0X0Ao6HKPp2uHpY5QA7f7zzalAgOwNSqMReySdee6dOKuRsfk/A6X04f
PbmlROKew8ueEqdPbufeg+YGeJuHFzSgWlfbTbKEv+XZqbESdirGoop1Lr7qcqSq+TgIBizmp9w3
wZkL07d8YIAC3eXWNRlZgNFKh7iF+uvtJlFJWM8xRmey8Dz3wm6uuEakFpzg02q+hX220cVkiZ5d
is59q8X2/t5PkslRFHGNgD2iEN2jYhQMtjfxvE0g+Chi8NDQaDIS4twxqDojY51uy+zEji1q+xFe
zd6ubiUtEd2N8GAXOOL+xIZB0xk7tlHn2y4Z5Q2t8aBbiQo+irarwdwJuiAbbXgNcGA+tNJWQsAN
jyAfXYZ5m8SS0tUERbabmd9uthNLdHgeL7Kv+XJ2+tYZCf+iv6yKr2CtdLwtKiLYaM2L59aM8sRe
uQuaZInmowjuvbvxPvXsVhMGj0vrca3DJlnF0SmhxnZxNggLShmmEUV0QTTXwAEfMGZH8sh0kWfA
3KO86lN+qcYqQLTgcBUV3S3VXAmh2NCOjuaT8bx19AxqMxpmaaVMFUe7NbyNky9df4QTlCUdR6wi
XDpBFeFwODv9ULfXv5y7gG9LNT4TjMOD02Hp7665nSwVMiRcq5sP7DTJU17m97lr4NC+BGl5SPdf
tYRsnq5LQE7OcdDeA0Gh2WdoWNoHIqV918ahxsAH7wyg9t2ikRvQoV3RxGfVvk340JBgpSZZveIT
ZLlgIVHDnuzzYcDYc8JG8pAe5F2MHgPyOMi9g5sNCRozqKhXziGkfuK40WljAz9hZ3WdEBvO0ByD
Jt7x15P8RSUL6l49IL6zeE7RRpecCEz7OBvCJz4wPhTOgVITdn659mt2haHMBCeKFtYJsaVpSORb
Ua0tnVaqkiLmCi09dk7l1mu11MKG2bjIx7NbBXRDshPISN/unJgYoPMecyxbfH7pqv/bS0J0spvD
mtxn8GAzl6HjLdUzmCarxkrnwCmxeVniQmbZMm+ZbYAu9QuyUPs7qJxjynsM2EaEiTCXAAe+wMzJ
Rb5JSFJmsIqZtwgI+5CxIaXrL1QboxVAWj1kVUL85+NaeSWHFXl0bZKd3qTo2WxtCIf5E4XQ2afU
OfmN54w0oKaXA1N21YpgDuUub7I1kV0KrBbplWkuO88vW4J0cE0lZhnGZctk1xFrhk+1hHtuqaZg
hkpYhjx5pvKM13lqKe03q7TqWToTZy2M0Ss4EXZZIXSgDihC2tG51F9tbhwMC0IbC30xz79W3uti
tVj7HwRa5v1GoMozsoBf4b6jH5N5/gSCooCrmqald1UWA5dm6KJGSgDup9rlCAnA/bK05bBcBF9+
pqATPgLN13kXXsKsZ2qsHJJh4s3Fsz0zkOWl+dWiV361HCPRmdnglHtk+PLw76VPhm8/m12OnuHb
K99ExsjwpSNIrvMzfEl4Juyd4UtNeOJdGb4mvADtk+HbLzFDjp/hy5gYcyHtGb6sV7cVOUaG7xiy
pyvDl9PwCrM7w7dfEbcMnOE7hhDpkeHbL2wmQ2f49vOMyrAZvtSqsfBXS4Zvr5kIMniGb7/YtwyZ
4RtQNvfM8DViDAzWleHLKBnnmZ7O8BViDCXfK8OXkfDisG+G7whSokeGr7ZjWzNtGb7hZXF3hu8I
D7dPhm9A03RAhm/4G+7O8B0DV/TJqqU6PN1eWbVjqKHeWbVGjmuit2XVhifbI6t2FBTXI6t2BHzT
M6tWRzT7W7JqRwDs52TVhjMFL8iqHQNSD8uqpf9P3tU9N24j+X9FL+On45j4BlLlmtvNVu5lt5Kq
7F3d2xQtUTY3sqSIksezW/e/XzdAfVgEJQgEJV8ulUxs2qMm0I3+wq+7DR0sD9KBqh1ACANRtQMk
YAJRtQOo1fOo2rDSJzEYqjYMfijSo2pNWrKXo2rDEGpiIFRtYtrhqFqpEsvbeVQtUTItzQBUrWaJ
SYahalOLdTCqlqaleyGqNrEOSYuqFYlRtXIAmsGoWjYA8TBUbUL//zJUbcIsTTiqNrl1CELVJrcL
gajaxD5IGKp2aM+nC1WbLmdwClUb0ykrctYC5yxCLWxb6NsmpiebbYJUjljMhKlL2sUTTnssYlqt
yqxcrRarrHxFDLJbFc/5dhe9XZo56vR4qnt+ISELXnN0LaDy/Uq57TgMpLhKuMxm4AGON26Gc2Ez
WC+W0za9zVNgR9/PsLFIPZwUY9vQFsvlrHLw73uE9N017/Xwr0+U4gP43w/YUf/f4AsIyzYlPuD0
f1rBCRaAmWu+7ut88rlYVp/on8Nf3BjTenMxkooOJFQtTnuFjJEYj2z7As/VZFntRmosq7G9TLej
072tePGulcXcHf2jtjNdD5B/zROfuydkHocuPFCqq3GNU/7K2fLYOthR7xAOc8FScG4/yZ66Sfat
KVJMxyXNz9OiXlpp1NxWGLbC4dvKBnqJPIsBBbaJ7tfm38UYP+L8NkovMaaHoMX9LBtEFIWXFqdD
0DJ+WjwtLeKOWO4jJvNBGKb8CyOxgGzrprs/s2/l4+saLDt6Tc2bZN5+NsY2ZM37460DRtTHOC3n
vdm2Myu0UoOIIvNxTIh8CFraR4tIGU/LVUgUr0Xj7xXTNZYJFPPv2Cjca5btrbtKohoP+pJ7hx1w
JVKTaclhNmI677OBTUnic1HjFGS7oePv45nfVxY4kagHOQwM9+PPQN7LpwLOV4ZgGDzj8+K1eio6
B1QQDI/T8G4JUpk9LRzZxbyrFJOgruzjj+wmjy1X1WJVrat/di6PKwbGLckp389uPgLWOn/OjJiI
1Y9p53DIEUVYCO//MqFzl6juscNzWFI5+fpYTL4uHv8B4ZRvVA9jcFJiEt6nqXxxX7fPv9HXIsVJ
DxfFHbLstQaTYJlnx2hPgYPPYPyOz0LOOB8JpqJynB7RADrz8fO5gR+cjAgV6ur1SZrxpMu0Cbjj
ucBIywg0uZyF7KoMnS7kVZw56uqYtG3yGkhmaA8XYxvSFctliRODx8XcN09FMZu5JUHpQHnWOjVE
ne/ZGsJK4FyMZNC5P2Zi9VLaP2yWJKvn1XTqraTEorkgS+sjcLAQcNIt49bl2/pUhsZVckO8NeKG
Bg1G9hH+fbPAKvTxc7Gqy7WPT8AmEZSC9n08zg6d4I0QHvdssgDPBaesuhGrO5N7sODlDB0enDSN
eV54Us7rDusvcOKp7r/j9j2OXwF34n66WHjLbPCsiqvuiH/9eIr4cOtvr1tIkmTZuNq6tdxGCEO5
j1k8lXL1B4egi/V8pJgefgu8C8ZKYGIGWnB7oSIfktcuEX32qoGzwJ45wWv2EG7rVVg+AdM/5AY4
9Q5SjtK+xZV17gNTgfsgou/NCJckvTLxrtAvbzqWzxtwNFZjTJ3s7LT3esFiEvsfIB85zzxVpUY8
aJ5qi1o9vuc5yYoZTpQHj+213MrrER34rRGQUVFqsF/JfN7HTXXuIfqG62I228e/nz/fu38Pc5nj
ohkp69KZ++9tosCicGfTz/CTO2TH3zFyRsn7RH/CZ5bCn9YPjLovf1qsHkg7S4JeLwnLJ8uItKs/
6QoOo45wI871MTrTK4tJMwq7IQ+gu8uGnewQxdB0KZ2YJD1NUoBLnic/F0E9LECgaHLK3T0eBOEj
HWWsLqj089DVUo4MNTehq2MyxXGoGHB6Y47LcTiMltBGp97YHwEkQb68OnuHUD19ffndp7lHOijW
ViHMspcUtgzh518dw/6dvHluVhGZzoQYhCxCWjuocgQSmEGoVmCJV+DMZDvUof8dDCOBYIbL36GB
xvsJYzaVBqGWI7YcllzNO+hiA4QgLX853RI3/aDcxf8GnMrAwU3RW74twvC/ADUcG98MJXjvik/8
bwA6DEMFMRj3T6+fYsA2EAec6fUT1gqLZeUgdJvOattB8N3CH9ZnXA6cvKU65uxPy/X4eedn2bgV
HfTGeHkTnoioZpzH02p1/XRJCZxgbddczovHWfkjfA8W7m6zmj08r9fLH+5dVPu8qNc/wKfm9+AG
blbV+rCRKHj6YOCrabZYVU8um/XFPsNPK+/cU/txn9ifIFSAf3fLgCf4sXc2JClmJfgi06LC8s4t
km8XZNwX9bg6jKZZTmEPaNiEAfmB4iNuzsdHIijZqjzhbLFZP8O+NfjIbMdwevyT2iZlFvvfqLHh
bcNEn+MkIBrlnCV/rwNR2mAuA35t92PLkO03DywnRyE5gnMh9DjVUfPoZS6WYO89gGSp94Fdwh93
fHfhGdjpCf7NYlZ3tEu2Bjv5G5/inHtF0CTv3u48O0k6d+qi2ehH/jqGD/9Zl6uPtkvM7pLW6qrM
PM83KVRytp0Ow8MqjNJHWIbcIMKiRt48wgqDPg8RYVFykwiLCHPrCIuwG0dYZDDBC42wwgqRh4qw
wgKNISKs/NYRVsy2H9T0uYYCtkl2Nn7ezH8rJ1k1/u7PyTEx4jH5jObSbX/hNykRCYP3N+1CQjMi
LM9jV/Uey/QOYuRBa0mqR0bzGGJ1XTxhnnG8WtQ4oMPiUt3jsqkgm1T1soDIzj/MQAHpXPZfZxII
JTFUcz7iTJtIl+WiCzoqjrLkyRy5+EDF+WyS8cQ+GzkbMjgROhXTYd8YcoS33f71zfD+b8C2xR2i
TvztGZClBBGKiu08FOG4uKkEr4uJXehk0ySWdPv6g4HCJYjCkGmI2yI97P/fujC3sGZzlMEb7phs
6zePjZwZyag7kqO1YjtZ2GHUPp7szS6B0yiN+7qalfNx+flb8er0llXk9/jtFqjiqhke5os7MFfZ
pFgXD9+P+szjFhJzhHEc9th0bKNRIxGVBL9QZJjiI8nFR1CttJUElNQk1RFocfM2Rl8xQhwi8f+u
3BKaazeCmd5K5wflPDxMFvnN1DI7zjLfQl2KI7t08h30YMePveMMw2xUEGf0YE4DbWWjdBByVPdR
iblVieroAm44npwwo/pC9+06nHCnVlPxEYRWvXsxOKAjxekVd63bekumbi5BwtxMgoKMQVvlmKAG
s4EHvG3paU6ltCVeN1VsrKXY1NH8sBue9TZTpDEnb+L0RbFtz2vB/CiQutn5DkJkXUKcX3RTCEfL
X66c65HI6Yc+922tLVV+hXPPg3JVwx0t1b5eC0oe9dZ3lCeX1eB1e3TddlRmMptIeiajhFHXYEOe
mg0kUF9Jg9kv0gdQc1ETPJUHoRL02ZYCL8Vs1gnFlfy2cuSJZYOqV3urMU5iNhdvVPZUXPr/4IZl
W0JZTrxXLGFt1AYSXsxQ3ZTVbadIcXm7/VBGxx+vQzS9gwvWS+A+ZqE8DoXCWeGU3nb7PQ5DUPPd
obafxJiLgKtrnJLUcWVOlRgxE+Ml2WYwxWq9u5u3NG0iMXNllrPF3M97jrPxoiKyk5ed4Nh68bAK
16hMrAqNmqTcXV1mb6+pjDhpJ2uuirquns5We2n4jw1D+XTRFyewZnlRvLdj9oF18bEdXqjElJuP
rLEjJ64R/JNjkPsNY+22XmPEJEpxhvQlImSoNF5cgOC8caqjHeU///y3bPFarlbVpDzRbJjhSF+q
RVpt6lVplIBg5+xKu9xhs3B6cGBFpekb5PALc45mmPyMCkLamy7uHgy43z5zRSQNsPIhv6tensgD
faPZE4L90GbjI/pQPJZeA84JjmYPwh6aU12QEOkAr+dV30oIbCN/DT6rCCr7Vnv3xRxYt8oei7oa
+4+oGvGrrCSsxUD3SpbYFLRYr1fV42Zdbhc2Xix+q7y2TuYSaIqUNA86K2C9yroqa9/gCKlDcfjB
lCFuyMo38DowV2lV4VHrKNv8DwGnMqjOyXSWdpWzcl1mSL6FEMP2ghSC1GtICyjzCMUCwXU1bdRZ
fe/AfjO7ayWIyqqon/09S2BlQTDZwFXZq3EfPAqHCHNqrrF/Yf1Djsi401S/w1msf3QPPd1YMgS1
BzlSnfK27YcO0bJvPohQOrArqc++7cm8c1houychds5jRpI+S3knfCdXhVJAdNpFMf+iuJYiCX8W
8EdRf5+PfcM/wBqmPD/dNkT10+d7Ukhm7B0ar3AwXljzZx3fwkhTfZUNkzTRhtWbMfyvhs/2BvEK
D6q+iudLLlMHv/z8a+eaitcy+6Vt6pqOqLlKY4JwBmc2qWzFQLHyQvi17V9II1XCoSJoqwEcOM6M
UokEwWW0l/5d42jhaM6vIQiEM36NIxRj4HxS4G2tJEM7fV3sGB9g17PpavGSYQ15Rz9XiQ37Yg3S
X37+248OQ/lXe6/hiiz8WiJXoP+uEm2o3lzDBubj7/eTxeZxVmb18+KbN8zQNC6HGDv4SsWEtu9X
dvgdRP2/b6yFL1fATmxiaQfuFLMZ1jN6o18c/GBMKrfCNy4Vu6VHKKzju5fq5SmrV97Al3MdCHzu
s5Xe7cPhEjJJWG/Hl9XZ06OXTxznSve3Yc2q/C30ISgMm8cRYlrsctxlWbPAjpURDNkkjVD/nfOX
Onx1iKlxLoJKSqlT6AnYzr7s6lJUxLaxFuQqLhq7ViBFhUx3kPx3RCpOF73nyrdqPkEtD8zBiRjj
WeXXrdqgJFyDSZyRawSGYYNyo7RDx1APLEHTur/W29INZh0ZCSYSeR3dLiM4BqGV7UeEwCxh903Y
vPLw6/3QlnX1gr6k7WsEbtwcXEr/oSBcMARoJFrsOX/EXmo1MuHP9camidqa4GnR5fYwgVMPxHD7
3mx4ZjtoPfrH9BB7pmKSLd6dP2xtdfm2U8IDp6F0qpH6902xKkGm7RSp/DPEdDKXhGqaC6M1bV3v
GI79kUXy9dsff88WS5srnnRANSQO0JKDi4A/RcDiMiwdC3fsPuPqG2yo1S8tesxhrSW4b7kQmsF/
ufRyOGzo4AUL9S5O8MApgJHcrObVuirWGI3XXZNUSOBcqBALuYATu8LpV37LyMAxU9dYLQjVLh3l
1WECZzXliTjc6fAKxOMOueK351VWwxez0h5cf3MOwlkg2urkdbTrJgFvUP2zY2A1V4FzJkM2NdTp
MZTHaaXlbPNUzRHCVNpiUr2d67ydVeXtzcF5nDO+pXYInfLTzarOmeAMAndJzE08S0p1qkQ+Zpu2
3+7zTVTkbVvHiI5TGQsL4EBM3G/3bkOzuphPHhdv4Fi6hoGHv+NnNvaHNaqP7Xn3HoffuNjluVjN
EeHRjiyNifRvbUb01//6j58W2GcGdxYW3NWYFCzhiPeMj+yQQ0R64sA10Lnlyu+pYccFnmwvqzl6
Sd1HhaBaoCIdPSdD48XLy2Le5pfGTABXvW9UfYyDDa1fW03lKG2VwCY4GW5kX/AB4SYuNeXVC21B
2o66bl/zgGuOV34qNX/twvG67LR0gTIciWh2F+NqQrNl9Vb6S/t4DiFWWN1B7339cqxzIaKSMTcx
QXI1qWonWjayC5QygqrQ6A9wRcViInyec1j3Co3sZjax5TcWSHXvgTZFQXNO7nxH7Si4v8rcBpkW
lRrbnxv/iaGGBA4QPWPI1gs3jabz6Lt0POnJpuYb/LqclS+uJ9wUTid+darfF3KO0mGlkMXkmFyw
sJxMM9sZB2xIncF3HaOWgQhlfXx2PLhO1J3bnBUWHeJV1kIHDgwJ1qbvpMQ/KJ5KOZJ53kPUWUeU
RcEbV1HIg/e+hqVxb4e8+eoutR5JE3UR0E3G06RT2ra8sjeZ5wITxwsw3Bbm4uv3An8yGZNL8gpC
N1DVOfAaRVydLLC5HCP0BcOGh6SWLUMsILkGNocZnPek1NCm3F/ihqkYfh3ea4XrNIl53+YbJeYa
fBO5QDy5HoJv7in4ptPFzOUFtv0l0ENErxV/YdldupfHAYcuAZxTlhbwt1vzbrFoT7Y/OXoJVy5G
9IU3LvFClQuaSOdPIZL9vF5P22Gjxntmeup88DxZGgACCHIJKV+q7hJ3g+TYqDikqWOLskMN3dvo
Hxj01Y21/zqr5r99bX74tZjC6r9CJDXGFLcfzMnYyOiIF+jVd9WEXJm0KO4qsSxealbYK6F5hqtq
nHDPwNCc5uDTBdWGtwh2eyd+BTPSgqeQ1IAEEk27nvXbuhUoYUf0kDqoYzKdYCIfZEkgqDTE0bpA
/s709AzCLbXO25mQ7NxEHY7QyxB1eUx4N8SmsYK7eVYuJfI4Wzx2IC/sABudfGe7K4cZjdYj7sZo
/bxarNezbRZ6/FS5XqnvSyE+Q6x4t/3VB4P/NH1Sl8tZc3OB0eUx+43m2I0lpNFb90ENqgHiSSic
QN6pGIvR2Kqncm2bcbmBthsnTBOguFp8hzjc/pbXLTYyDMxx8ug0V9y/uGd/xeuNcTG3SYb1qpjX
U/jFx3L9rQSXbrIYb146oUVK4Ybn8fLtThGayAwezBZPnSaahZTyXHhwUWF06wuNvqRS8VxugUW6
UCIKe0L2WR727IfNW2zWB1/6yi0IQexTDFA6vFRJcmOGWMuXTTV5wHp11Eftlm0xnNoR/e+f0Nz/
7ObL3b9tncdm3pyVFpxX50swQvTIFO2vC3bRhRMWfxcQhE8fuR27HRl0k53XiCNAj7pcDUj+zj1/
OG43SfDSQ5hk7N6f007Gt2UdTghEK1J9hM0gxtDBT9wdOvv1uly2pigqzNUIMdjxc/hSP0aJ4Dhk
mdBBPonrlyYppe5ill7WoHgE/v15Vsx/2z1zU1zeIBCeVYUfLigwc0J6kD2IatZrYNlLe2qMg5Nj
NQvr456961eDVbnYs2c3RrVz7ik8mmxeXr63u5bFCO9wr0NzFnGcjz/LpsNyjHjIbRa3+wz79f5T
PrGf8HM+sb/AJ32iEj4LvrafRgV+nsBPFIefic/dp4rOTZNS/79Yp+EfS1ilJh/rfZiIjUcwym6m
cLk2dTOIS8A/+xVnVP6lA9ROFNdAWw7gjsyXz9viirfpol2pjXcKJiaWdr34Dpop2e+n1cxj+ojS
gcMog3Jd2w5/xdHtonVtGcLOmJEDGb8niG4n4+dqNllZPEuHKQQ/Nx/FpW1OrfjR135K5iOTi2FS
Np8/HzWwcOPjtlkbgpPAl89H7hzOWlJK6/xKq5c8kauzJ1wdVn7hL2SP+BvZlvN+nrNWj7ReZpfH
3CgMpxaFUmmykOf6FQVdcl5x3VKmXTe2FLSA/tK7Axp76MTkPzrdt5hMZmBgNSnn37PmQtX9pJpb
HdLdkkFgVRHvVa57UfsCGhXdRViDWflWjQtviocqGViBHypIJ5reyWtQyVm6fJW/k0BgJc0xkY6G
DDXQxEIWr7kWSoa1YO6dDsLz4ksF4ZkPaorYtdyDS8hm4e6ubvn0hbR1LFCMEcZLlIK7552VWGPS
lf0XFDFTOkV+fCtLrp63XsJ72IvkL64tNA6HuAMfHETvwe4OvC45ui91PWqVoCnep4tI03Sf6+vo
pG/ws/KUZsJ6m7CWBoPKvu6VfkzwBsxQ3luj+RVZ32Tc+cPmL97Vo36WL8WuEsmThdK1nevXTCj3
Y3+oCSsNDL7le7SlWxYOdOKaL8dmVlc80LP5mSNtwjysSJGrnuaLVdmo+XJdZOsCa3Gzx8Xku7/9
EKbYyZVEcf9K9eZx55N2vRvWmoiY/ObB0YeT31zPWuDtfLnc3cR3yqqtrU+odoN4tCxWRygXdz/l
L3sAoZaxQKiirrMzV9ZYko1dlW4nFpdsB9EUont9jTPurz9TKi6ASCwvXebG4HgJcpG4DMjGrrek
YJQMyQfiYlNcjQ09/KpGiTg4yI66Q/u4uKaBF1rv+kwopa+uavxDYDQCcW523jvaCsXFsp47y0NW
WFpftkmnH+4d/OV5Ua9/wGST76/btladXWDkKKWqbLHQjbzwSg+zqjrqYAcujoD/RKi5Bhxju1A/
GoMF1SVF6ob1M85EKLtOB80FDujpdTPnzYtxT1qMS8EUGUycdrH/c4nV7DXuwnRW+dWTwMsvSpNq
RVuRuDqtFTUHo34lzP5XN0DBO9dDhbUeipM6jBb80oatLsQ1nK9uYWgfQk7tHIt00I40GtjNgIRQ
QQytBqliQ4rCzO9c5ggY6uXcXqgP9rDZbo9bYDDfBxZpscmrzRL7EJxI0DBMgEl6i5NwgB5unwWc
6QLGtw9XbPYCVn8waal7NNxAeDG/J2x7jpqbCFxXbEAIorW5TnjZh/mqFn4Nr8cZY3J4OkzhVBbK
0zD2ILoB+zqbHl6Me11W7JwVn/4LXWZul8lyYNyQseflZ5dRMyBE8Z1Bo+JCc2Yhi/k1riMJH/CY
X5LAYZgUlX3epcFRvau0b/y90g3d3Q9d9r8BwqDkNQLgzo1pi6qyfRqvIwtRRiZiEEN+TYnrzIhR
4LbJe3qMrsyomm6rElEZ2Gc/ojTeuafvkS07vWCRLTq/s1CuN/erIKYEm3/cjd0Ajb9jyR3a6Xt8
6D4ZNA/OaCxmrWnh2AuR3GBJx2CdtEsKan/TXyxlnrx4+QuBMJZzpsDcC+opZVaUfDxu0T7cYhgi
fbgz1W9JQuSDOi8XmoPccNKnsH/3lS3q93lsQoApxK7bWgxjkG1T+bMWmWPpEyV9Yr+G5b823/+y
mFVjcJs3k2qxr8ezm136W5kJhW2KdPJXOOh3snlZYnMuG421wNkisE1nNPlvRQWxN8j+zDmjHng4
CeuDFyJxnYk2bYxtIzFET9uM4OT1NrqeEGEn7/F+teSBiNb3OirP3/Uwm83giEyxDSOeFIRmFtW0
3XVGGRV343uegot8sfYkvfbeI0DvbukcgTrLb7q6Qf0kYnL2oXlHe/JO/pFXx8yHlsyeq6Pqj6tV
KCGDKmWp0ESNjJJ/XN3FaQz+LLQfqL9xp8SBcXRQzklGw8ZanAcse25LsmYCr9ed0iOpe3Q2sScm
c+A5B5tblS+LjllLXMP/Bz0DBEIS8IQFTe+IA417e/EPD0/cdnFhc4MXrDGqAQEjIhGNE42NSLLS
v9enz2/eGzvJedJsypunKlePTAxs6vKGcyLmmtNL5s1G3KSFHqQjLXRSGrTdNWukuUpKg3nGL+qY
+6yIsdIEYU/6f9l79+a2kSxP9Kvw3gi5d7saJeQ70RMKh8vl2unZ6se0q3fmPwdEQiLLJMACSNna
jf3uN08mSJFEAkwmkKDcc7tdlkTKzETmeT9+Zygi08iYzaEOlDEYyBxW5syyh1T5x3Wd3sw+chJ6
1NhIcRCr/ENwvbzX1doBZ89g+gmUKNFIglzBIQTrQ7arzGoITUKUOPOhAi+oYqXsYh+T4RrxCC57
1H/k63S92DeD7RK3VvKPIQ4YzsKAmcWREik4NKPbM1EES7cZAh6Lw6SyKDV9d1U57WJxCUO8L9R0
/qjG0qum0EdRAKBaTIYX4gAKqs3wWZHpbopolW6m86iOOUINRotBoSSaTz+dSWnparGXkQ6tNTwI
KggR6V2vaiK2FsxfnFAMTeyEDqsWyiyNpkXxedEyb5P7uVTtKwK8sZ69AUkY87i/rk+RSwhUovuI
u0uAzamPZb4veK2b4j7tV2wZlA6dTb3oQiMZWBIFaMJ4L9zXHYRJox4NS0r9gBLaW3+xpfWX84lX
MsDQ6+EqVbZ5b160ZPH0iAcfD2muqLQon/cqPlLuHuhxLd/TqlI2ZA052zpiDiwMcqHf5C3mIe/t
f2fma/Rr+pTWIxnbUd5JzKlfzeJpO+tsW9bnqRdb3MP4JHu7Eofa1AsxZTrOUitr0wXfTFZJRieM
Eh+YJg+tSRiUA/l0wXeS6FnajN0Gag9gCdXFt/YxwHpmyPBazX0ITBIjt/EoFIXcAmWDbsFR03JF
6PzydfdiAworddxyYR+ZLhmaECfTCF1A2/Mye4hiyDQX+cwuowA9yanBEPnaEESxbncWEAWYcXQh
ZSnHkTsVcqOhDXJFfWt1b3a259Dz7VSCejFZ4E6ygPHmTvkP1H/ikx6jm9BeNKjNP9uEMogt9/po
MxreAhxIkNBwFX0+/N08W52MvzEfDboOix70eHD6qanp+v5ps2mMvRNQ4UL6H/1xMNw8Awd9HV/+
2a1FOp2sQrQfK4OqJyuLAuyU8CAxWznoY5ZnpR75XcxMMrS2/O5kE6uMoISjCUdO8EOtZ3wQd77P
bHiJGCun2g2ZEg3u3xKKQ+omPCH8eldHeYKHWby7iD6WfGD929Se1Md48ZkzB+jzjIjB+fxM0J/z
xBGU6fQ0m+6+Lq/U2dCGSyXUE1JCxqAK4iObh2Bpn2YLm7zav6bZTVcjPKXLO/WpbxarR3T3WMIw
GRTHX9V/INngZXxXizn4gRz+QO/sApAIqHWhMccsDiyLJA5ngWrDUxmhtenZNj8q0dN+xAgEqAjd
36HazBflDKrUddsoBLV0bGQNVQbw3Nbabcxh8JgHC3uFmXzMzmbQTn33ErZrxDe5UD65j/73yVro
yaxhSFQtu1rAEPj6N6L5YqZo9Uta5i1jPWHCsdvoiLNHXNOPGUr+rIXJb9usfH7Y5jo2c2c4t76E
RiAY+kvG4BcqkaMWb4kyn+OZrhmZKGGQ5xj+8iEOpmGsIAJ2a4rjDvGzO7KDNKE6a3XBoXjxl49/
5DnqBQ26Unu9VSxQv2PrzTOxiAenpUNJVlNUy/xJJAmd8NgnwuFDzx1FLJB5laOID59IhfOBp8tM
eel6RJsVCg/KCZJXNXFAIsHlJBHSbahib3Obx/3CUC0A5s00nnLFuLgyd2OfWOrlJE1CP6fSDT8V
hXnOBk0DSukYT+njdnhMV9183Vinq+qa+fUyXeSn+pdCuzBlTI4iRTuyY1RPg/Ng432hwrM6kcX0
UzqDPtAdJpe9spxMSCKvy1+CsTEID6MxVqFkFPLZZ0I66IgzorRxMsrZ8n5MnW43cztQEow9l9Lf
tX5aVIv7Zfap/tleMJYIXf0YzqAwmJiOgGxu1slDuljagW0kHyPiRnk8RlgFj2PUauM6/ay8dCUt
p9BINc0igC6M9r9pz2i6gij2tw4GWOWA2YAWtd58sTFBPerfuD2uEDPTgROUjBMXSAJf+Jei/Kzu
tdONkY4w+v0Fp49lCQ0WafWcT6M0h6HnMG28NqZtTyO5oh4a5FRrj1AxCyToq9OfAXhewxArA2Cl
I+ntLRgMwKFJMo5X13ShmSMK/lVu3PkRj8OOGnN3Wq3tpXVigqiIRzH56Tgs3WEL6chEMsrT0lHI
SAwf/6jhZGpcdTvZIARpB/R6DPZ4kBlpEslRXHzGx+EEF/dAWuA+O6evBzEuDCqKcr5H4RoW0sg/
mDUL3GObNUuSJP4G3YwjdWmcDHrS6nodyqkbF6ggHozVPinPPg8GTQgbQ4MQGTK2nU3nRaTLCwCI
X0lG6Au8uyHvwVD7Dmgmyn7bLp5uyI83GL+vTYndx0Xm89Q739ULmd87Mfy+u8EiL/JMfVFv3pAP
b367+9u7jx8b0yeUh4coG8WB4iRQrld5Esf53ttZqmxeKFNY7OcvrVJdtduSkUyI6wDs/iIQX8sT
KDM9xrjIl89djgAH5GY0vJicFqv7RZ69IBnrPPHC3sVFYSImGeVC8Hh0edAJ8zLf+YRYrdWo6jTw
SHUBdBS/mwYwn4s8B5MLQkl6+G9dm9QZaABA2eF93u36sUxnIHf0L0K4+LetOg/o1a4W02j3vp7S
cQiN39JPgJByzokcK+VH4piOJ6u3a/U+lLrWA1Sf7CxAPAujmxUN8OM8LfPMFohIqAC73MdM7FzJ
CF8L9gKHuIuko7FDp5NOHaEoziS+AErpKdsPo4EOEXvgH1q4R3z2vVu2KbrOAQCE/BplPHlgLycA
MlZp6sUuybRX2FbkEH1daGxbNSvvWqzS6O9mw39VG74h777rMErJD9/VT6c+4Lvvv789qrvQxZA1
xyiPxG68cjFh1Ku6eVB/7oC+Dp9gsQITR7+5mxirRH/TjxMxuq75cUR7hxRnKdrkciLwUPLhTGqc
YTJxmx1yWl/rfL0nZFa3AV7pcCMQvcGZ+bU8LcLQekECxIMOZX+1Scuo3tOX7L4Cid+NAkUAfGMM
t4P5FF0M4AcqW2SzxyxXqsZ8A2LZaER7qbt8BerQel8wWjRoKeLp+dkrQDGkLAFPfpROB/F6NIaV
XDR/E5RcYZu6GWr3KaYQ/WlRLGu8i3x2NBTaggQv+YQHcAgbQslRGkFKFgfdjdtGwE4P4LK7CoAz
wTusx8KMdExd/pM6JhJfVEV6oRzaH4OyxQ113/0OZPfv3pgRG3danL/R+aj6e9PlbHpHfzB7b8Cz
cbX1hMmAG3cSoFAJ2SPC0TZ4c/+Rf5TKX7ACRzda9czETZGQoFT1dbWEPdbRoU4OZFh9pYO08Hd1
ZidSjM/lL1H6dk0vZaLEM3klmq99n5QlgHUoxqSbrlCGLrzASR++6u41wky4ojuGCaJOCw2q2RI6
pZT7VQh67+4QmNN9n4gJPhGCX5P7utUsJM+DVIh1ULZrwE4DDxEyUnSYSkG+lSqCr/ODahSADNop
mXWzcJlxPoYJ0DBemjILTKkkgOFbrWsY3mhRKTcht1caCOFX8x7MPdfITu3uOYxP9mk78yJ+gtGY
qRGGxl2OsJCNpE36azYJa4VF6CWcOGSduaKkUeJfcciD1rf/ctrHwg4AMjBRSmOkjjs8SnmNQNc+
T8wCpI0drcCu3DnUqYldY/+1KixRiDqT3WQFsJwW+RKqazp8SKKrHehVD2KHdJxcJuAGCJOADu0f
JkEoAJ+107jGdH0hcZvXAEAPeAzK6rC/CUTggtrEs2K61R0sX9TbQOX22lgThZswmgwSKdFAqzXi
p/JADPGYwccNxFU96jjkNVyezJJAG3zwoiFsKRrCnFH/PjwjT7KyLEqAaymtZjmOKTh53D/9rNyf
T/oRIPX8ZZHPii+fCgMpb3CbP80W1RS6Dp9bNAlMVCdegsuTqEiAtFuDqBypietkxMgOohbbNgcR
sQB4K/sSNLiWCiDpYmQvTkAwtOU1uYhwka3T3QBbAQdwbdo1l7bHds5Ouv26WC5SO1sxxvzgFjrn
cFfK29ONIOdmcCOMuB9YtkftNxomgH/5/Hj7cEt1Oh/hcLwnW1Jwm9l1oqtajh6SmW3+tXJLqKSj
tMuJoQYXXDLaO0lGaXdkLAldmVQPwIBGfyX+q3mxXc4+ldv8Li/e/GZJ5V0UBd1PPnujnNg7TdQ3
OP79DflBfXlZWf1gIpLmDfijv2mA9XCY1Bk0WmpxYX7v5r28Mzq8gREMSV6J0bV0gFFbrch7sr+d
em6Qk/I/yRgWA7bXBlyO+Du2pMQJ7zcNYzpP80c4A0PD80VWpuV0/gzUbAxt6/1zMSGUXoswq+39
7qhahyYkbGS79/eNTj0JFbEBCNiFgLSAPkNAAvyjAHlvf5MYeqraLWKd5EH/RFqtVY2ladqpyWIv
APRhmG9TrKNl9pQt7WElFCSsZJHZxD4TFjqB0FVYzqAnd/McM4WWckzRWVcLnA+7J5JMCMPjmkhW
hlJkb0miy7iPOUW13YLiUTwLLgNHM5txJ8x4sDCXbbV4xNUIGQVrJKH/JZTLTSzO6ZckGSe6IkeU
g+uyWO+9mp04bIE3xLEuCx5BjVGrGuPCr31jHEzCAZRlfQvtbSKAz41jdD1wM+zT7uMF+65WcXlO
PEBEaFyX6CLd3sQxVe5TLOVIyTBBY3L5JQzHCWcZQrlrwqlaA/dWg2zwg7BNO90ltTqATSTkD5Nu
ssVh2J9QFOYUvB3j9mpCThxHB/UlDY7ZiDxSK2z1Vx6Z3G+31maITyi9ng33nFUBjTjIC8X26lsw
2ZAbGFJv4UDw4BRgefhGPFjRnpMqCCafDQFa6Y4yMhE8CQPSf2a6hfL6rNMt8ERgZcWPQRE4wL1U
WfnuEV6fp+rUf/zrn+sMKiSH79Pp58ey2Ob2QdmxVLI7GXxLFtOdWYWxTA5K9pxW3n1C/P+aIAXH
SpbJIErvXBjGJ9zSUnvHQChRLi66iV6T6LFM5Csw4dolhaBsIgQZxbp67K4NksRYVkNv5Xzvkh7k
qyhwP5jQpZdQmKEyo233TC9hyzNYk1GETDhCAZXm6EbJHy2hJWu+Hcd0fHNxu1AmYx69yJDWoc3J
GFpij51oUgKV3bdT/kbMAkr8Du+82wvnUg+kTcKn+hmNryK89+9Vi41d9ugWn+s4oczDpt/Vziq2
hPLcTxrRyl6eGyPH0Hp4P1ePXz4DaqNEKaYe/sfhaOJ6Xv3RaZtx9YrSuQcJOhgrbx8W2XKmzXn9
3VO63GYNCwZaKJlP1MHyeMpObjxfokx10fPTq9+2yiQ8wSIw44shu9b3bt7Ns9X3m82D5W4Il333
/lJ8uobrqr5/2mxOVyJIaWs+oiBqvJNuZ4siMk7h2Q5vSXST0GgWZUdHSQIIjAFChyeGTkOftufR
fBuwj6wddHdQfA/mjulKUu/gl6rEhvUDbakJuU5A2WaxHhCVtWyDKbLndFw/Xv1mVZR2Hx6qSPhr
dE4i4/m2NFxwKIv0YAFLBIAMbw054vYycA2pGOQpArhsFwMsgWVxceOgYmAspBiXIx4WS0CXVvLW
WMvW3geIL4nhN5at7hVH7HEn6tBBS2EscgR2DqYkz8IM6omgSZ89uqEvYSxejZBvAfeDSFy/CISW
lu8boZFq14jSWBAKGMZlnS/Z/efFphbgLfNIEnUQWHjYqC2AZdNilt2RWLzZgb7se3f2lkfduzPE
HO16UiUhoR3RlvndNL4qxz9km+n8vEGsu6sT0sdr1t2l7U6zgMkO1Gewg7Zc03Lz8h1A7i7TqXZ8
I1hsZ5JYAiU8TqTuaE245COHitpBf2g/IXshpxslZQbTWjmcx36G44FQ0x4uimOryE9o7Ahx3bqA
9nG/FA8Pp4SVCKVOAhjhds1uhyVS20C9ns6EH76ulg0XnjvObTn/0W+z1XrzbFkAJ72uXqc5i8en
RjUgEYDwQ3z8uWZBWE29TRQhaDcKkLi8KAZqkbId+SxJk4kIUBDgHT88h7qlyNvHprdJ7i+pMjcM
BkF0D8noll5pLvHEDSU+lC+7OLAVs1xteKp+HYCVa7z3rqFOeiA6Ed+0ycRfWd7w/EVYsiSJBEDZ
K5l+2GcWsp65fJIEMiOY6/ja9HHRSEhA6TVCnLwSdlnk8wzQa2bmbuwMDi1HokfQZ/fwFPQ/TYIb
AHUM1+raE2jsZR4PczBhu84Om4lCLdN6ZOw4Vu9Cl7SV6+ykLfz8wQBejZlCa29GoGDZ4KuzhH2a
AyCBkKsE+Y7gwbyDfG5tzKNpB7vLCSMO0DWUsDFWD03FFTxabcPaAGl9WhmskjAOEFlzJ/lf06e0
FmSuNUpIbcvPBfGS31YLFwGwN3ttZVLWw7RXsqOJlFeVyPtNd8eZBCBoyn6io/i8APOrqhaPebSH
y1Mn1AoFOaKsuvRAEuj8TuJXEwxvl6ZcAGLvN+DSaLBEq0vDOB6A8u7TKgPwvi3IlDS3+swSsvoY
jR1vbMWQU0pbDJLUmRYrU3a1Po3yEckhlhQPUPRmGd5qmd4a80SE6rnyiqJ0A9Mph5AFMEeNloNC
k32zU4uTgpWW8HJShtMSgNF/PhcBqVqfPD5kIBb54y4noWTZoxnCY7M6BNQJ8msqhq/VcvOivzxc
aIE5iOU+IjnPNuBCRdVitV2mirZfBibWpxmdnuYbJQJWaT67U5+SvURo1YNu802DS0niU5q3u8mD
IiaIXVvKDzEBgJvXZrkdXe1JWN+40BQq3K91c4t8WmagxY4vTzmFm/md5fB3H2QmWjUkPyIC4hIB
orUXBeEbwqWr+SxGKExbZmsO7usGYMiXO+VmnxINkXYykCeICA8c+Dw/ZxCMxquonL3bB6YlAKUY
gKHaneoOzgCKQQCT/LxM2ZRpXun60YdtPjXFtkqUNOpE1KFiNI4lYfeplCExZvtiV/AApn7FV68Y
7SQ3qzGGpB9nnJkCWHWMAWyrR7J0D9dTAeO4l4o6kAzWxnMQUvH4FpgJw52L0ArHkfOXVn+19GoT
AJUR14gI/75PMBhByTYKIAz8LLD2GhciiV802FtoaWMwfYDS1D2rWke6QbL4GvmU6vhoracG83CD
6Rp9d3nxgl+pXrt/jk5h+638SZmuKLrAwHEJRLnOTIVokjKwrmPxHt2aOcSOySkk5hN2WWf9pcW8
hIeu8EEUj8y59gQsc8XJbNvKLN2k//j7z7dflfX844e//OnDj0oeF6sIXjdRfiWgizIzsW3ty1Tb
+/Z4OsR06FV16Jn4toQ0v18gdHdWR/2BhyezP7R0qt6tirLLUiQw8ZzTkUOydnjjEJ3t7eRsphq1
26KUhOkb6hTy7YIdJiyN4lw05kwcHVRz3BICWYReT8C5E/aZQTMUEiFFlRJMdaAFt0MbI4nBQ7sC
ves2C2svEBQ0iisIzdPowwXVUpgoRU6vc4itE2UkKP9emfsL6pG6fGlwnwLIr6f0RWSpS6vrDYt8
+RytlNVoKzgUeMJiPA7XbQrLq3Z4cQYRGz5MBlDLoFpAab1rEZWEyCAqpZVei/tfIfzS1eNANPry
1ZnePnoBMjnyGt6/F5C4T6QgSZThkxAWlE3t4Uo+agmItxgDcB0kAsmxOp4LJHBQu9BVVBQrlTNi
YMfCMGdcC4L1nL4xZG0rgCEeM4dkhJw9Dg5FuQGSFqe045DGwsJM3w14Lweaz8rxHHv2m7mDapw5
lyYsEVcmuW9CzhQeHQSRAaUuMq/bje544lWh25xSOiuyCnJ8BhDG7uLLCWHJdWC4/EGyCZdXsAYg
Sa3r/edlkRfbM+34YPZjGftFOV3SL+K1BO7VuZjJsIeHcxrskpBNFkOV8G3SR3uJqjIXMAkuSbvC
egSLiRe6fchQQweQNg4DbNGmB6unx+ghMwmWbJmtWpIXCOu6bvk6uPyMMUMTxwlQDrS9mFqFCQ/T
KXtI2PbIKxi2va7BYhAcOr9HxkFLNx7k2JKRSbRoo0twxwcRZOZrtJlnD3Um6KBpYFZM7XgeTCmV
kHjk7354/xM8uzqEU9tQeYBBwF+cWNJd78aJRhYNwirmdiqAW/mT+qXyjPsqIH6K8bikq97slKyx
vkYUjqXb02ARmHYaXU8P4WyxfzE02KFXZtxY7BlCrxn1GS66w6AOBMfJNfI2pwR7LHZ0mbDEE4p4
4CxkPWxjR5/WiHmijEvE4/EkS4di5ogGsTJbJcumTO0WJNJQpQi9CrVwLurEwnQrnlzgL4tVBmG6
Ds2gvUMcB5Qf5sKO8V4NTJwfvEV/6W8HZBbxpcVA3kUGWdZhNyTK0uVkFAw3Q9m7Un/4hSh91I0k
2i3SJjHAYx2801HnhYQA7Ez+WrHUkQwB8NDCch0ikyWupc/IAe5aN7vtezCQ2sPUNrCcQbsCRTK+
wrKYEzxQ0HKR58UU6PBpMd0sVsZGqn/NSpPKXxUsuWYQpKrNJxMMOQezjiBuM5oKO+o5MmWmL8WD
XTNBMLRgj2KoHRZy1gnaF2narteYDtsM7/GAP+4G1YpiQCuMaTgN51Q7gxMmgsQiL3Jj2gnNDn2F
gMQCGiWz7WodpVA++tVWpRUGXPZleY1gts03i2VLzxMSMB6CXaNTvhsusW6Cl8Qvn9CNwNjLDnXv
L0d94eEP42ZV9EWZ/Y87S6/MftUY5aAbldiylPdA4A7JfnHEdDoHzaJ81gNcMw3srpWM2UvriDbO
xhGLbRsYszGuQ8Ptt9ut6ljiOA+6F72cEIrpnWIJf7USwEc4BRy6qCzbWIkQ4G8hxlC52/U6K6dp
1TIbhGjrI4CM7FWEdE5iNAHFMRThxeK64pLF8Ws1XzrbskSMJrxXcPbA8+m4tmaOBAqvvOqazrSG
dnSGntO/RqRxKq/tNXThm2i3QdCRYG4CVLQfK+KOKITOZpJ43FGnx9NBDmeb6nyBC3AgBeBzzocQ
SGWmB7LsIDasWdaY9cyy6iP4y0sIRZ/d1w3EJl+yUAaIrBUF2Ge26liOAAot3aLpopxah11AUhPh
nk2J51fGlqVpApPRBiSLw87M2WyZ1VbGIZVYNUziNznvBVb7YOFugG2gHnBWT0wvqI2GNtYh8Pj2
QEYwd94qtETccwJP+7mbkYFnTxxDESZOAgju45FvTjEmrudFJSPYu3bi0+bZABd/WVUqJonHZOvr
waLfkJ9MHeWPin1uyI+oKUa96mz3PGy0a6RUCHDstEyrua2vKCaKXLjP6N2TAt7VOnu0DpmgoRXl
vMwe7GoScEBcx/gagvC9zrcvl9mQhRqynbJXMyOGcCd4dHKGP7+ulsAaNY6APdrN+IQ4NZ6QQeWi
fRIRVcQoB9+Ld9bn/HAMijy2exhPMeBqXxZTe0AC6uudchHkGxKbHCWD37GfM0nsw/oSx+4n0kMm
WsUhFFck3aYxGUkcEoQvP4GDnPPeKHyp2VMb+hxtTKbdrg2YY/bkQlmkeR3I4LD9rYk60wqQkCS9
juIgf3V6KDaoAWWoCqc01hgcYmUQKD5yaqJv26GGSou/T27rZviOxTAnSkHFgbixrttrc1w4QMw5
zVbpxwhvkY0VfDhwvgB99ryX+tGv1bEZtnMQdfjedt6SOY4DPHu5B/1I67nB5m7UmkQTRLDPg3Y5
I4vVeplZsFcxnjBGHMVrkKEbvrEzFrNkxCuhjOIhOU5bU0W5ANwg4DX73BaOoDfCx6Dau1SK+Ne1
J2U1p7Bj127bky2qYpkqQ/E/inI5g9LWnQRZl+q5yk1LPZPkAmAfB2bn3SjMGBIdRT6zz7IFEeaS
UiCyLRKpbVTAe6026omPcn7mjzFod6mYffZvpSTcL8/r7E6burfwkv6Ed5s7ZL77qSjvaIP8KEKE
xR703sxAnqQbsWMCdDjR5oQYduljoARLqnylXk5ie0jNwq4dXItkMuknLjyttmo6z1qqgp1njg52
0Zz2sludKkMioyxaeoUA9ImzEKaKvQAdumy4ly5tp7x6L1kHuQGWJ2YDr9s2yk9XRqMxFW+MeUD7
5LLJIZjRZFQekiQY+TYtbCBgwgcUoIsc4l1P2R7BG8zBdbHerqM9XWvLz44oEnNHNGtvMdoeeYO6
RYjDhtC4mCUBVSBFg5/YRXM+OR6TQxIig2h8Q6Vlls6eIY/kQK5CyYeEjBKlMIFS+PWyWFadcE/I
Fc3Sx8zGnWY24OHRMPbYMWIgWGPmheK0VcoawBJMuZDIS6nYkd8WHdgVEuIHgwSGtBnUFReCDkbJ
wyQLTpIXB431HTtKsLIWaMjwZRfSgq8E79Sfq0LxY/HU5q6Dpf2a0jXdU7hi7DgU1pVDIbPa4Rch
yR1hB33p4chRawvoIUMafHg9ZcCyLYoKUy5oEDPWQSMnfZTSC6dDdcXRT8r7Ur9lzMpdBPkYlAB2
pASxHXEJioBJHCj0tCk2z+u20BNyrAS+XDFpg8HqN1HdiTOwc7hnt2ieLdd2rgNgPiaS0dQdQSEF
vktFKOaxI6bLYOyN3SaRu1HyfaGMzu7wKYTA3erHyKVl0Yf9x0PNGzU9IGxkMQT08pht3m025eJ+
q4z3p3S5tRdjQaPeQDkeM4UdtpIDnZ6xUijQKg9QbbLzuNXb1abcTpWR0OUoYKkOgNNxM0G/d0oC
vTO7bng2VIm1uF9aWB0IAAYoc67aVpF6tWypnwYA+X6Wi53FjZpqndUsxPBCrKbP9oAblXQccuwU
4YD5N6Tz2BE/dYYxOK8mT9r6rU5CMmFyQEp61sMHdTT8C7wSTau1zuQDmkvnrCXN84yNT2LEbTzm
0Lqg0xqFQiMxfPRmX84BqRqoIlFM/6heWimqBPHzHKWzmQuQMIdRIAHCSycGwRlr4Lh+8lD7azyY
XUwq0riLtec5fVw0C94wHdgW7rS8uRwlJuo0ArSfGvHK2PTzAKdpDo4GHDAk4MrtMqs6BYsyhkGi
XuRy9Ccsg7ymONkLyni1qKaHZWkwal239D6afhEzev3Nqnq8I2+s3SPKQkBxjPqVpXQKkUVeLWYZ
yHd7vIvp6Vfj5sqsI50o6lU/7SvfqwNb327lY9eJZb4HVSkJcF9AGy7gKdl6FzCH3szXEyLsnJtE
hXBEonOVV9Ce8+7nn//6Hx9+jIzxH73EWztALLmA5iwxjtlkPYoEGhgRD8Xcp+0AUM+hHSIgbWy/
HBgtgAfWo/V2NvNU6bSshMB/1bwpO04sU6xPBotJjFCZ37RLWBKmgOOFumdd8TMOPXnoWoFinATN
ljQrDiBfwj3ES3Ne5u4VZUE0rS5MKGBHETroSor+LEsholx3HEhimtZOkOE7/F8n4YkoTK5lNIBO
vonRH28w/undn35WX+PNfFGpL9W82C5n6htlOMIYivQpU1/usyxXXyAto7x+9a8awLREfb2OhLUK
WEieIxRGwPrnrhWJfdMyljF5ZePwLx/t5qEO8rErSV+UJONGX72GnflEahM95ZWSMRl7f/HtplOv
RP1yoWxpxbxaPP/bx1+0YP6L4ibFx6abJZ3NPjypPf9c/6Y9Ew2TuxP5TfOzQPHAZkORt6XudT0T
4lczkK7t1gKF2XenC7z5mAnBg+RwVX3UA2aP8UVqoCR+Udr7Itwmr/0I3jMXfixvzPDmi/f41RSp
qB2ik89p7DhJ2NgneLA7+yFK0regwH5Hpi7JEYm/9yrYQ3INF6mkZNxwwl6ktBq7gg6hEg+OH+yE
/1CW7g/bzcYeNUA6u9oTM2C9TJ9NZiWzS2/JXCfteOqphm+rNVUvm8dynsb/e6+dFm+jQxcEyeQV
aLIWO1wyDdd4VdYUBI0cSe8/w5EIOWABy2IFA74/1hMBuianMDQhPpLjNcX9Ynwtm5LToG5INVe3
OLXDSyj3A6bg4deVjegYrdi3SMtNZe7mUp6LD3HAJqXxaIJ0cXFZW0JlzxpbHyXURXIUQ37wCmVN
hEvxDYgoe/2kCZsNbb60F5tQKBroVdFqrxw2etgC8UI0OvOVKgZoksgxhUqnHa6Fik9BqOtVNyxV
fdmCXEOMdVVkSQiNIflt82yvduEj5f6ff/75X9Wm/27I3S26iPUcXfQKwsp90F4YnTDUr2Kwk0UV
ISqGcanBwyI5i4YfUEoJMk5nb3OIi2fSqb+AOFvSk+DYER/eJ2xxzHQtwNoTFNOEB65Mqc0bpUXu
TWmRNc0LU7dCxJTMuICONmMYhhLHIaLPPaO9rFfI/oz16yGTKZSgSSbGiG72MvwPJMO9Eu/5Y4Pw
leM4YXGf8vFW4QgN5s8ncGW6QoBCnSNOri2KWgJXiW7moYH4b2dBpsuNGfdlzY/JnhKgy+jojiWQ
OLCx4Rw1sw3NJCiJr042Ldk7pVyl42ymYSRVp4ceJ4Cu9xpiQvrruUGTsV8C/dBdes7TlbK+6lvb
/agxD+7T6edIPUz5bCd6xhyngDnx2x4wZ7osqm2ZtXSvcz9gg+GJ2S4HMdJhp4FzH7bzaYdjUfw+
YdKv4fqixaOWmZl8woOZzIo18uxLRx0pMrXByAMmO29pNN/3tFgnlkOPDRvRBD5MTrzEWA7RH1rk
LOkZ1xpoYpD2fS8EPSXK2kJkMN2+A/q9pFyJStozVNTubcFurCAyTLn/ZCSbqhNQUAPsCHnlFjz3
XhTDHTCIxGQIfq2atVtxwAy1B4VRpIwPRAfxW5wqbLSuoOocwjROdd+BJiro0OuHUpSVZVEq98gE
kVohrNFwxWuHNekPZbE6xINyHuiMsO6oQYEEWqezQqWAcvMRNVZLW5HyZkXPAJbv1WyK1vfsZwYg
94SOJi+6LpAkdBIiJNxvSA2ljA80F2HH08e5TIiBSK4b6PnAHb0t0VWAr5OvxhfU42fauxUxdCvS
AeuGFGl+v/m6OV0HmvHHZ1h7XRsI9j6b0UNj39dA5Ye40vumYyPV2oengbPXG07xEmU95ukbIfny
glW7wkSOfsi5R7dgndx7eDUdMppNhBwpF3FcIObshCHMeRAz+tiiVzs+PLIvrf6FhO30ClYcXZ5W
9kA53cPY9RmERPOwXJL9jvZ5HZ0kr9Z3O5u1nNbVh/tE+X63daJcvbTbj/rWuiP1+n5P+vvawWng
KyWKMFAyGl+fGXOj53P2ajf3JYqEXiU6cTSTpSs60dLjBdEJJEk8jCOjt1fZi5dxT1GrjB9FCdEU
bAwtWTdfigjc68qO1oR0yv+fyOenCbuer4spDyv4rd4CVDjhgcrZDshHmWablroAriNlg5kE+yFk
zlYZ5EVQX9TP9D7rtsZMFpgLHOhS9XNDyNsl+ck5HTQxctR533CWd1ql2zZEME+2X2rvvG24p45W
cgBYAk5Gind0gs4xuCSKx3GTCaFjMz1FeCSmo/Rb0UoHZZIWfcQJvU4cp3XMC2ECXwMVkY0lu7pj
ClCBjIceUUIUT0bh5hP4BJPOgOMjZdUmA/Ql6rluuyGTq0yJapDX1lQXlNHJgWzoxwJqF+zZAMC6
xP1t6DJbFZvMxBFfLBStuDvxARFSz4niQYn9xw9/+VOLr7c4RVbZw+dYLacELmEcVdlSUWpq93y0
yPG5HEjB4+c/OSBTi1yUXRUFGPMJj2MyUCc6kMsfNancrvPHf7lPq4zTPyz+1w9//fuX+H/+j8fi
nfrfXz7+Y/7hH4/w7Qf464f37/6kvrz/9xn6WwYv/Phh+eHf/9ffKV79jd7gn5j84d27X9Q37x6S
Xx//8qF8p//p8qdfPn/c/vvq/ftmeagkwWMw+pkB5vnupca60ewA4l8O0r4JsL9p9ZxP52WRF9vO
1k0mY78mZa+cBaeDu0M1EXeGVSi0E2MZQto0NetlskZJQtIT1dcqbHYY9BYkaIf4LIWAKBvHY2lv
tpBSOXRkdCmYdc23QDHUJwSA678ELN8jOocgOSkEH3VgstO8WtovvN1K2Y2o9sE8hvHC2pQIALjo
cxBHvJSt1ptnAyO+3MJTdoWAQO4RJzOPfgOI4czJ3aXeEun0aNsG+3I+2D6+ZPcVqObN7SLXv6G2
snvpjEqj0HMzPH+dCbp1V8fBsDfR53DOehXWZQm4q0l30IUGa8pjTikPOg7uNhLDMcmeJNPtbFFE
xp89H3bWKEKoxyYc7Rl7ZTzmjlk7OkqEoRtbW90YwSSoULNdor2xFU04xuPo627NbK2uIkqPcif3
yEfePWyXS50BVIe2nE3TctbZ64gJBLMGI3FT7JY9tU0eSkDUs0CP7v7USEww96DWA0/xQX2+7qdR
XDMvwHBrh3nU0ymDS9ZL29c9TG89NjxBJNAFnuK8YfsIEAIDvi7fwoBQCl39pMbCwygWl2jxC1tV
3VC5L7BN9ke/KXavt1opENlFMhmJCKxyBCoFZTyc2Kq7w2ZK75WFffIODCmk7JWTHcdoRKl2bgho
PxrHPnJmCARY2+Huhj4GfNwkuYrx7dx0jAmjoXm+K7yrW7LJq2fAJIzFfjKz3OXEUIxhCkf8qlyI
TkA8gkJpFe1B6LDf3o+pQfGUG7ZYPZqOYChRsFaFM8e2FurSgLq7O7hL9eq6UI6NJkmgubtj+fRG
7WmzrRSh4jemveROk4L5/jhYWQMsCzGYXpwtZu+XWVqahsa/3v/aOn0RJRPc7/JsNsmLHbK/Mn2R
U3WE6qYX6dI+UJhCa6zPdg5VYVF+AT9CGUSKth81BNmDureqA9EdaRBM1sc+vjQ0jWXCQvNM5cc0
wrFru5/eTAjpr5XrGqVDumovVeplBHbP9sFMuIJnXHqjj/sIaF5Ej1P1rGk1t6sNwhwHSrhKkWqd
bqbzD21hAUQT14nEoVxk+4AQj852XXIVczxOKGwfYrdzIJSX0wBGW/6rjpyrfSwXebZLXHdN5IZp
ND6KyWs4FsJCBKQl8/i7bG8TYE5Apf0IutCu+qAuHQ8X0dvDb7Z1lxCYRibxWETWNWebcuWpsMG0
QWfFqnDCbvYZzIr1YFbckMrwRTmJPPxJAwxbZ/gFEJ56qfbe7mo3grzGyJLJGEJAQ9ZZZACbUEmu
43l1YkwRASF4Mbx8WJdKQpSbhb3ViQDcCCYj0W5X+wz0pcUBsi9mfZ36iOZpPlsasASTc37YQPui
3usif9SFs/bIKvMLezmrjgMbUFeYtJdOEY1GJnmokzpvNGgcbUSDkOqmgCJGe0pMUeoI6ZrL0Bhi
Jkngm9iRxmNRPDy3ngwi4+hXLpOrSE9NG9NiuYTaifZ8N+Fgao10I8e1fVbTJ2GOZY4D7MfOq4Ad
yAfjVS1HW4I70I0YkBsOrZ/oi3L+NEheDnK70BEwey8vTI7pl5Nyld2beZZ3yU0kwFikV3Gnfz9M
opkATlpMyGD0lObPD+omTyF4sZjQAGaiqyEN00QBY3cUiQpjssYR3TEKfKL7aTFdZ8v6xh+PKehx
Wdyny+gpLRfpfQvGEOSAMB7t6bvkMZVBhKRTOV9HIpEliuFkr+DiOTG5N/PaJ0/jGNDaQoRZ7RdV
5Ho6iNWXBsg0ya5i63QjUBGWOHb990x8Sxb2HrrYRLrODHMTEoYCIT0UmbHxEWCTWbvmWsCXeM/9
2M/jtDukK1Kb+EVqOxtmcayea0KChmU9mqOpjH0KRc8+KmDNqX9EBQso57q6UpXr7IpveAlhn4nx
QMcvu6Io6wh6IRi38LrKiXgSUj2f+IyKGYxA+lRu87vnrHoD1cpaDtzg+Pc35IdGe4gyjSWYcgFL
nnhwSXcwqWyWPaTb5aYzaY0F6amPWtimI94E/eNnxniPKRITgq9TMfQCYXAuNEkpVzwUMEzaEuFg
QSLHjjybF5plD6gYGNfGtQmVwwn+/dQ9h/i+pCOxsz0EpufsjcxH1talWARoP7mQhSDS0hXcx37h
uo58vNKBloQ8UiIF8SCsatq43DMaSdK3tqadNc7kE1ByZbFxqOnVlyNYTHvWQUkShpQPOFaD6Jle
PHCMmIfw1Qg2B+RqfoZYoC1rK5WdGMeDuLw13RoiPaTM5rKJ8rRDdKwpH/hzd+WrcZC7LCI9v57y
gORb7yHTkK6W6W/KPuKIBj6cyvd0cGDmdjgdgoczWPPt6j4rHSzWXjLdcMK/KlmelfUP0Vz/pFti
2yClCIPJjOj19ChjJobfjZFQQHUd1g6HuVnsOt3BnZ3ABLJznI8gqL347nQVI551GKe5CoLSIsyl
R+G/ndRf1l2XC6ipMxqh2Y6PYqooDPVi7DNMpjEirBFp3e0wnAdhkqbnRArvWbUYvgGKIsHFFUgB
I/hPXI/X21t2AFaQiHA0+mgvbNZRcj5ccrhK89l98RWqyDowiFlPMAjH63/bEAUAvBs7DXpjTo97
wBSWYe8G+QJSEbLHimcuVptc9qvVkZahVn551OM9gLMKnT2wD2sJBQewAjxyMKGWRNnXdLWGQcjF
6raxLw4ROifEBtZbGJQZzFuITmXCETRV600KSIDEfDCqhbXP5yBo7DpPlA0tpjGMjjwTgGJn3cYD
f/EI/UvnHXJ1EXfff3+r/hhk1mYm6o0GZ9SfcmvNwbmhaDEXZMYO+5RCLgjTcBJEh5usAsS1HYEN
1YEXY/aqL73ORmJGPbjxkkAfJh4qw9oie675smVQLcYA/UOuwf0IlHQivAjhnMbIpnOAq9oosZc+
gr4wfHBXh9ai3T+Majw/8u67E5n93Q0WEOVTX27ID9/Vgl39o++q9AmiqvAzUNsN+Qku+Yb86KIw
HBSEvqc3v9399O5PPzd82AkjCeujIoAW/5xVFUDvvsBwZvmsinIAQmoPBksQUJyFUE/tbg4VwI0B
ieTlIt/CNd4NeYkNkifQbkW449Oc8NnZuNcxXQZ/nAjGMOLXYlbZDSrimPVkl1fmYDEUF2bLxVNW
PqsHmdkxwaXEGjlmmPUOKzSmT029RCCPkXAvlrOvo32HlXk5WnbM/yVEHaxTBarLBhb5U7pczHb2
wWZeFl+qKPs6zdagPO3zWqQrBj/zDFFuSkALao0QSJZAIe7/rxUv04pxgtA/i1jFBJMBtWwJfRjn
Y4l0KLY7SK6ugeGrzWK5MzE6ZDUAGkgcgPGUjaPIPVo85kWpA1a6wrT2jaxWMQNsFokGlICHZ3Io
DOFUWkRhnEykj8yfL4DOnvfld5HyQvZ5d0WTy3Sa7caRtKGywIgQIsjYl2GPrSPHnsrLzYxVMdsu
d71aSqxNO9sjEFJbcYOldCGOWitt8/ThwTTk3j8D5HAGB2S3v7EeDNKfIvQ1lNmDos95FCsiVEc0
sxcpAaRuzANYULuCXyaHpzJzrZnS/ofzYLOvSvHladfQAR2DocPFjTfF+mwFMHWcTThU8EUZ7fE/
iztFJ0j6HJ41glJBEdjuR7CODLgEaqS2uFReHCUcDc2K+CwrOrX4eksfhz6ghHFHLNnePGsfSc+l
I8Z3MK9TA/Odj+Vjx5TwMGorn9U/z9swqjAU4+I+N/e1qt5tZwt1CLc12CnEjhStRF/U+9neysB2
8gWbSnpJnoOFT8TNy+LbPKum6Vpjw5ht6F00coMIOUKJD3IvZoRAF0Fjqs2tgdjagBx2CE2MoFsJ
DX8AeRGZnJy9azdxRCJ106vbKiv/h2LHbZl9aG17R0nCR6L46AjLRMdRp3N7/RvFome6doAYi9vQ
L3bRoIipUtbdU0sgipUMH1qpq2UAMvXpcTd+q2hF3uTYdb7Vf5Uwy4FCO5d7YAEOrk10tgtNDZQp
Q6GJEY0mhppoYiSOMeN4OBXWLVP0ZAh7TiTWGAjhKHi1XW4W6+VuFlpUX09L0R9jdMIp71VCMHYU
7pTmLRPMeOyhlTWF6fmLHW6mUIqJeqX6q+VtfSXb9WOppMr3rRYoSgSbkAARtXAe35lLUQ4f5EFo
wkPpEKdxGgzhnuzXVlzWMGtqfzD6otGk2yJ1LGGvxB+yC2tAKe+l9s/0M+0biq1RM0gp0eBccKTA
IM/T0j981EZ0OnlQKV7nZWFK4Q5OVeMDlQtw3dPl3abcZm+0Dr3TfzfkAoaCZR9rvNnKBj8qQ1f5
XlUtB5rpRA7IjokYeLnmQgkVGE+oV82Oux5qg7DFdEJJH6v6xJTfJS2VW6Uxoey5QmWT8Cus2Sul
3numxLk7epmzfPoAZuKECJDZ+C9h/SMZJi/dfmGmX0sqp5X/U1mX2K0b7NsxzLQb0CtPlGcbmBIY
VQvlfaRq2ZedQ5rSJLH1cCU9SAHeeDMtVqs0n909Zi9aIpoW23zzZp1u5ne39b88Kks0n2F8mXUD
ZkM9Bx3NvrTP7UU9E+FeUSt7rIqOESoZxHaqu7LV/eu/fzeeLYUS6pGV2VHmjh7XiynY/VFdtGQP
oSMBAIh+fmNdgbRR9vPqFhgGvI3IvDpbPDxkpcZhbjOjEVdCuMdztnPg20brmEbc9kkMNxfTCXWN
UEIAVOctas5GlI6DxC5/MGx9MERCPBizPhiOgzwYtz2Y26y/yxcT1sV80r4XzZRBiq8H8/GNA38W
ESb2awh4RbY171VGdsEcl6ndWMSCTjjC/Ep2qttIntekLUGOcDpPlRL8QZlSijggc5VOlf9SDa9E
u1ZrZCoRhNqkCG6M1ZkGbK8IYj3LzzqzZWcgXGCeAEuuUt/CORHXkETr5VZ5GdVhMkLdTmRePp3e
pyWOZEOL6Srb/KKIt9gqT2ibT9uKxTmgeiRkLPq0W+imqmJo8tQTEzuzuUwHn+Mx3JSD4tl//P1n
+3CBxBFyJ6jorZGjGlBRIZ2Sjd0vYZCsRSPpYqAWOzhvMmEC82/AorH19e/kiwjGXufEv1DyRfQS
//rDq5dhslMI6ixbC7+FLg4JVqMB/S869FFF2eoeig5fwEb1uAPNVFazLnEc89NKSFr91RzVofyi
CWKCiXgopbudTjO7vSgd0Vz7L0PiEB4ntnmcxAd1w8EJpFYn0KdVzGExZndveYhT5Fa/ndIQawn7
WvhV683N2PE8nPTKVtsl/mI//6XLpGJ+JN1f+JrddQlfHNLKNk1q9mo9rPu/x7Fj2m5GD4uSXubU
aeT1ZQfHMVgbmBpW8pT7ZFUOdMRjoVx85UBtiigrS4ABaUFrFgBbGY9WGW06wKJtXqUPmUlE2Ecr
Y2BLMjwB3BdtNCfArwpg9b3IABe3X44gB+pXnK2wBAKUeDQSyaMsV6byVG3N1JbrPoe6YbBOVRb5
8rl1sFCgvR7GJnrsujkNCiopZS9J6+pU2yGuuV8rgtUk1b2/SursBNBDWazss9egpE6MSFQw7fX0
ivJMaQI9cVTdVqG/bfyKOsz6+jo6HaBdVbBgbS7dzS0YAZT6VWh+sENtcgXmcsJ7ofm1yGM9aqK7
ZwG60nsx5AG8dbHSqYNm0QGRHNKrCF1F5HfbfiDymRhGIml/ZF5mDxHstizau2T0KDqCBhVFyvyC
Pse0UkaH+l4tfb+0W3tYTNh4PWJ1xl//YG25pGTQ5ikzT6vMlO1pryimroOnPdmt2/rhwHKUBWWF
9XqpjO+0VNbOExQMzTIgTfuQUu5XHnC22Ltd6HAYcMf7pX3qRmOjelPTSq2jjtX2frWoKoirH0DF
tbqj5AqP3mtNO+2Z9NEZ91vT/dCqG6o/o73gg8DHb3c35D28coNjeO3ud1Y8Zfjwmxh1fP7+U29/
d0M+NMwqQMVR/x/uecBTi9oKoAmZEIzH8dPrZGBLOwR1Q36+QkRr8BhW484TQNjnZDzhaR82xXr2
vltthvbZfRQrDRkPLzXq61NSQyMl2vz3zjZFEQa6pnkZoMG61Zi2IXhQ9tyjSR681t4DB4U6BEn2
emPPo3ArQjEOqnF2bKMVT6uicdIyNg2jLLWBSpVtK3ZqHEQn/Uq1zzF9h1sI0PbkIhgdB0hJKuhI
ssIuRLEGhhjymXYgT70ao6zKoBNjQXuPATwYQPA+678wnS0ZLrGrzPXNkam+bsarMZTjkPgV5/F+
N47tE6OgjqNW9rv02eHoq7O1C70UXYvubafLjoZhkdAJj8nr8nLiXl4OcpsazS+RL6B5sN3DIDAc
ucd63lR2NkkbYsrFcCJgHHtK4m61zP0sERfKSOSE0yTE6mWmyOA5OueA0wsHVZguyX56ByGnhqSL
mY+0MR/U4QS/4JbVkSPWQl/Wr19x1jAQpO8lk1qvoe0c3Ep/+ZDhJSyGP/oBpFsNwHc/nY0j4Cgd
XtlN59kKGqCXSgzYYzqEJo6VYuQEEEdDCaXlpgEvlNbNybpX/kk9efxmsXpEd/grjh7LLMuhZg1e
wicvfUkXmztySpQU9F+MiM/xHAbO9WhTZUjppNE0VUfTVl5AkbyKLDifsHMa/sr9x9ZQhF8jK9aG
Bnw3UvBGBKWAvDicsWtvFof0OLpIIbpWpB24uG+hPP5fUCNPiiTUHCQD2jzO3oR3FMvqRSB9mUML
Vntsgjpi1/HLerhzxbJ2Ikkwg4jVOERCbEQChukoq2Pr6lS8bml1+GccyUUQoSNIrq7ONSqUEsXD
88GuwbLI86y1dU9I16KzIUhTd2dkM7sApTG7gvjslwmwylA+YZjjoZxBoJxoVmSVrpxcZunnztpF
RKCVwalo4nT1p8dbbebN6gqVavG/24rRY6jS8ruuw7BdXkwBa+NpoehzZa+BCeLtHDFo3jnsQkkI
x4arK8pN/U0FNJ0+Zfpn9Ve1TtWLY4nRmA/MvIfIYSewTZewx5ssh/K26AHyJPq379AbLQbMkyoG
1o2P/+2jab2A6tz387R8X8yy/xZ/ZfIP6i+i//rv//1f1D+73f+7RhoOAu+CBHfOa+qFNLOeAKyL
QO7gxz9Camthnv72a/Qlu/8MsSvwYfJso2Hh/7AsHhcP0CKVzd6o7+/+9u7jx/9HExegSb1QVva7
UyEdJ1BIw3s93xkEy32Tq61/T7gChl+NE8UPN+LH4TnOfG4DZSOZ0ITy2E/Sn4A/v9eC/2fohj2u
O1amCSAF4piTvgvpwMXH37ZpmX2v3mnELahjg+bJIp1ACQBp/ZiVTe+dogSG+7HgehIjFM4SUDZI
VpZ2fPsEHCyf2SxO4OBIg4OD8HgzU8KiARPOGYyfR/iyPEBLu/tl8v/oUPYd8srI2/fGuxh5DSVk
USQ3mPuqkjZNYvhNchLc6OnwSRhEmenrNnp+umHvA4ha/bk2UStjH6Na89K9UnNQolFBueBykdpR
kwDlgPhkVU74tbmaRowwr9w9FMV9WjaaCxOYqhZ4aSlZ8glZlhY4Cbz0nz7+1b46YhNO5AgPHtke
3A1eoeeDf8Ixxn/Qsi+7+zX9w1NWQtX7XQNtkBFlUIS+ie3mQXGxbByGGGftT7aVmRMyS18KAPQx
Gw3geHA529Jgs59moTvMWsD3JGCdsjEO5PfW4yBjLP1H69KjSEBkI0A0ggD8ZF1dCUBGR5BCUevq
wS/crB7ZZLByAjgK/fSQTM4tayM/ivPw3mJBkhG8NybHkmR7SLhzMzdg1JYIGZoaMrzUGV1iUjEq
4SGNcn2qmnQPnKa2yPgFGKFHzncNJkZCJs7b1jYHCaCO31aMDuYQaFfoxYdrj9IpOsEkQHXWGVZs
ZT8aj02ybX5+P5Jl3E+O9CRWEvvaBnWQylyW3efkCKsF+vucx0tBb21rWwBK6ERQGi4mtpmnG1O0
9CWt9v392woGJ2Sr9eZ536BlH+GAuGOjv3f4ZZ2qwzG9al1BGCYcO0kv52MjjzbPa3VwZvBxZSor
7f3AIsiJHBgx29Ua8Ag22VdLoRXDjpOW7UygMw7rdANDzzX4itLf0zIzsR8TwrXPy9KzegeORzeL
hxlSNJcwEp7gVsXTopvieOwIsOAWEo8gyjZtKcbBGKmv9BWYZrf/+fHjbbfxhSXY6lQGZ8aOqRfC
eRhETzrZ11y2QIETuDkc0oQ6HbtZ53Jaxm4iMHnoQFmWmozb1ReBpm5BR70Gu3rgEyT50MXn+Xpu
in1nu3qZ6Y4rskN2+Rf1xp5fsiZ2LErO9FbxQUexUeKZB1VOeg5oLDPTp73Ocj1hab8LO0Ig1IQk
I/sQYP/vGAFkxQ35Ye8cfP+mh4cBn3Z3/t+cym+WTCjjGI2ZsXUDCu7JeGcK9oDx/Lo+quXtGohL
U5oBfOx0n6C0hnDZN3ID08C3VRbNsgcovVBrNeM3RqYzv4c6YNm2x+sQqBjKvFDflfcL6S0ocQG+
oD0aRjxPdHeOykhVpmRqdx9I7Ir5ccoUet9pCdWTe4cm+7qoNgdL0JiqqyIT6uVA6QOD+VZlRGJk
Ve1S+Ryod1Cyel7dF0tNcLZYIRPKoUBBXawz7QIEYEBo0p/o9qcZ7SMRRwQHH8yYZ/B1Az1J6axY
b/6icU3KtJpbKz1iwDb3LaW3dvgrBVCBBLTLJU6QIhXZ9/hyw6VRfYzfTx8XlgkshHBxbVV7XJpe
/7m+/mUY+WRPjgUBaRUEPrq9qXqAii1SAOQ+5mw4FiQtLEiABQkOLW26PCYssCMUBj83+bl7YJty
ToQ6WeZxcerRbtOqWjxCx59S4FqLLzMzcLRatogenLjiKQ0gCZT283ywg2jrwSMuU23sW7syEIU+
9pFuDDNPdb5dP5ZKhuy8pG3VEszCWBDF0/j6ctQkLa4uOKlEbCSJYLc/MDSo9mWbw2vfxUqsdh2V
UGwkh5EKMKjgrGAgTNnBPpYkrAhD4UzLTgMDWTCYa0j6ioH9CuqbU0lDHMcOd2w8evgys3w05oAG
1fOjseWDCQyHCBaT0qrguAcX2q+VeZ9ul4beq40dgYoBGcTJ9eUOpBauLnUQ8+YIdfbP0X0JLT1R
Bgu0KC7GoF6VDaq4Wtvf1cf1ZUR9feolncP97e7//N8mZXsLLn1OilYV+SjKsbvrTLlOQvh9vk42
TLP15nZdqu9v9+XFb28wv8EECSaVl9CUL5DwGZlZ2xmU+sEk7K5x+QR499OiDpu2I2cgopQQJvx1
yIIb/NPVo6fSq+QVDn67eZBaIVsPmkoldDEdhqhvfkQ3kt78GN/8EOu/E/33D5rMfxI3H9jNh+Tu
5sP7mw8f1HeNpi1w9MQr2Yqgw7NdPb9hH7Iz6fT2bDoCX9DH71VUVWMN3xoY89r6qzbPy6yaZwBp
2RYhIgJNCBGXJGQOlnthsH1lzcGqFnMEUCRCNOrVId79Wa/SzXSu+cBe3qIBmCV/DdGjn16FAYIZ
C16N1XpDluomdT8Mi144RS+rWxCLlDfUdCGkxH4uxAFL7Dx6PS+xM1mIEIQSfJA3rBzYsrDFJVAO
P2XBV32LmusynyqFS9fFlnVJ+FNuDOCEVjlOByLhekZUi6k6BvKbs/Wk/qyX6SK/fg46ISxIYeZL
C+ryrd6fse9PEooE8D7iBKOAN1N3QO7Fq7Yz6uxW0zFT0g3TkU5kbwWcnorU3Q1hT+XF8LGejCX+
As0u7ArqhiUufr/wXBVbVuUigf9ejbjQsuKAwdVLeaEhSq4uQLhg8TjsoosjTzmFoAkVjOJxtqCD
xA0RJpUzip2SK+Js2VZ6nwE6ZSPdhyl2nIotPB+2joBbhYHVMoPAOArImPbUKuMT7pTwEWNwZnzM
lHa22SPFXMtxiRPZ7b2KoRjk67xssAc0Rrv57KJX9e9qUWmHKZuZe7NWAXPHlpCTrWgwttvzMDuU
sQlByZjP2tKKIbnQgzj68KfhyryIYApctm9MccC1hTZokQwqHDy2IRL1H+LBb0OJSvW1leoSTCbI
aSKuOJdVqPsgGmYrj5MJckqJuhz4/qhN3WHTPkJK6yI01rm2ULiIiWMted9dnKuHE641re2Hbzo/
tMdck/VcCZtonuazpR2hSAjmWEc9xON3YXAydQ8JHYj2Ztky22S6ENU2xFcqVqLCg6XrUZZqJWVM
q4U2KawCwViYLq28IGxP8CAoGR3o2bov2b4DBChYeDBDq0qfsuhv9sONJkhcaFqZ2Q8vZ/tiGByc
8kNRfknLmQnOWIoSpHQcweXygEoVQDV8/YQ1+FUvRiMwgsqtDLWV5vzORSjfJjyDA3vbC5qFVLRH
PJwOOF51A6eor/rsCfg3b08BngUmckKSZHjGtlcQwWgvOTypq4PWfTaW20yw0tLx4ETUtSKauE3x
dFVLe8trm+uXurQTzIFjHosrn+ZBke3tg1K4euww/BR9mS+WZh8tlRsoRtgRsC+wY/hNeIRoOIXt
RCLRPFuu7ZTCYAKjlEPpt936dR/N0Sa0wG/rg8MaQY68lsiCifl9I/RElN0gvg3WOznga58cpdLH
c3gdQksfou5GVN8dQkUe9+w3jqd1iQYuEtRCcEzGsYGwPYYAE4HE6xIL108bCkFeH9VWc0V3X8DD
eYDK6uYpORLsDfkJCALqMPJdFYZa3p+OOQZw0kQMaIudN8GQgCgcYiM55ghSAjyIUXGixlv8ZDAj
2Osjym3+OS++mPf9KPLoIwx56rhYutmUi/utupThKFV5fBRjQcYJN7jBd14u2pWHVJQbqIyOMl1R
uFDbMFF7qK+1kC+GkcvsKjGI85xMFG0nQQXuYwHesqZwc3aWyogYQAqxh8/sXpMA1FKvb6UXToNr
ndblBeUTmciA9Frky2c9gTnbpNHiMS/KNgwZ6HqTdOSt2EPf0rEZvZ1vfk2fUlOjs1zkn2Hk0GJq
f2qiJEaYbE5dI7TDO6uyfFa9IP6aM6lsRBHjCZVkRKYw0sRpv1GWPxTqM2YN+FTFSpLK175r3Ng1
YQESHq0CYJBNJwkHWLyhUnPHzGLH82GOSFfOLKkjKtb6XALluYM9nFkn0+UE+vt//P3nu/NPDNDg
ijKc4rmyhTTsQA5f52VUPedTLQqV39UOxKKM+wlxKnKQrqf+WLRVs+r2UKe+K6fHPRwq1vng0ZdF
Piu+2JOxbCKd0HZo29ASbQUpIwi6rZZL6GJ/m6tF777//tb8MUUYNRPrKuPvV2v6ZrVYZb+AvavL
M27hJf0J7zZ3yHz3U1He0YYwobEQzAlXQPZv9qNOqALttPE5e74vIFmUPamHr6LZFhCRo3VZPC1g
IEG6jF5+297OQWLHEmjZiMg/LtUHxd9jGCE/+5uinWX1Qzp7Vz7aQfAZlLDSXs/7cranT96CY8eQ
cMyvdD7e3oQvQKCv0nya3TqgEWhoIcWV1Iee7DuovTX9pll1npZ5ZgW6JTEkz9CASz8uP8Ganx4W
y5PTWClb8PZhm+upmJUbRVApoUaAjLfBbb6w9lZx2EiMR95I88aSWCrLmY14ZdvNYtncCFFKiznm
PTo2ssm+/gmcWvzjv/7y55+tQoGC+JFX5k8y3A4uYZLzx4NQAvKZdaNkyzbdWenRAsoEshUPS6ia
cRu23n3FH7f3524Z4IZ9Qo67tG+1LL5E6Txb7ZO9TTQbhKnUGV8hJbq2wI/plQjq/GUgzDlS1+9H
8gbBDDZRbcrtdAOm4CzbnEF4ZTyB4eR9Vjy6k0vWxoAsSno9LZx+dTt/vl/UyPJqYW13dIXnEj1o
d6h17+tYYDVPP3fA1nERD7xotb0He3JTTIslDL7elPAVxrBYOV3ZW14+iNv6GmveakooR8uteMFl
3S9F+TkrFaUtiyozoPLggSijprKb0ZK4Yv57PXZe5JHyARcLK53BQAgfOL+TeQM1yriStE1AdSI5
QPjHiCZOcz6kDTVe0cwLqsV9Md1GKLpfKmd2uahaAM0TXR6VDHytB6LEesFNcwgDzIaPWXY61Mg8
9fS5XCyXi6kldJhMpOBD0dEiT8tnkx+yGhckdkT/PX+fSiLOF7NZlu+HNj0ssuVsB2jUOnxYDsY0
ZfFZrQ4oHtbFNH7HZZRkgpunYzlcHttysYQw5W0jFPS0dXnTD4tHZtUNmPkFo+znvX0AXMHZu1Wx
zQGiY5OVkeEntbv7bfVsx8Ak0hEUOdQ9YDGRfIRr+PCP99G//c1+EZdbQwOfQeKIoNvzDGBMHIzK
bDsIAkVi/JpMSSdChDEb1C6KfJVVGkiw1WATELT18bMvvYqP88XD5tO//emj/SKYIzRtsIvAykuk
wWWTvS2NU0fA1Z53kE4BeWn3jvUiEugskYENHgtpNmweAShuNL4iSVAKmKLhbwXafFbZZl5YTVAO
mHw+VorvMbz9VL/06e4fv/wUyUZuTSp3eihOmS4X4Ma28gZCSlVgKcLfAoxPN2dguwQIi3pGIx3k
tHnB3rBAHPsHgqlqORGEDnX+UC5qO/2ndLnN7AEF4tgb7UZucOL32QO0kRbrzO5MQ38RvqZ5xJUy
ilF4IVzTXTMPEAuYpYAGPXWHMAbBOoU8jMytptX2rH8vQaD196v1Wp1etUBskKfagTUf05A19Q8J
FDwwEe0rTKrt/S48ZA/EEeQ4PDiYRYcmQvbxs+DTq3wBppzawMx839bopYQ0tAEH41n7wTc5V8Ks
GjqsvNSh5hYcPODXeNDVinxXM5BFefYlAnzK1vIBPdkT8YGPPS8O7FNoH4Oak2JtlSAA0y2GuvdT
GV3s63AXrfkFTrkjBK8f5bUdhmXugSTgzAywE5PV+LRK199vvm4aWWoyQT5xpPP9v9TW/0tZMjSB
15cK2lAX6EWPUzt5A5qCwP6PusM7XC+mG6igyrM2VYgTSvwS0c1j3a1qimLWj28FbtSGCG3nBFlN
WhfzMSJdRjOsUqUXsqpBpbGE8jOHNZNe8FvSqZc68aBOM7gF5oF3dqgiGnPHKFoygAh03ZZgaldO
adfk0jvH9gwgAZsrDnMZdu0LSNyChXnEDrJmlIana5Z40DVgEqinuJ3WbfpVpOgjgp8y3dQyLUqN
IqerNb+2zLdXEh+THs93OHm2KD4vgFChPavFhqFYEaqTr5X0Q7nlFnRdLMOvyyzr+lDtpesSG5qw
x7qmwNeCiL0pFCFt8w04JtN0DResdOuqeDpaWFlnjqOMT5+3NsV2BjA4zjNogbGqb4mBki5fxQab
N1+/3ZbLO0A4++PtC0D8H9U/i0/OHmqdG+M4CUpkDwYaoyHitPckodD1zj3Et1N5sEkBdNdCA74u
R0L6U4r5+uIxWYLqujqmq5ivlTwst22IG2aQDfmJKMGSUscatuQKrUB1HyewYrODCSf4ldJ++7YT
qmsDfDRub+GIYEqxE5pTi64/MBjdtH5UbDfrbcf4YsBc4ZKSMff0sCirji0lBE1k4iVVvbekaLLI
Owoblfmpro8gPOquNvNF2bEpqLNRHomTs+duh5uQtaLpQgnXlgggYrFjpirxbASdp9X8cP7TXpnV
82ognLCTAertmt/Nm1Y8ccqhYLM/0ztaQYi7DcUcVqZf73yjieA+xR0HDwR15/UIsvXy7Sxbps93
SH10E7MACUQD6h1ovbOCcDdqNbmysjkjY+vA612z8sPr6v9LzCCbu3jyiHpW1iZ91DjWx894zsd8
Y+rEzXt36M1vdzfkPbTN3+BYT+XNftsunu5uMP6YbaL3+tfUD+rd+vTgrZdFflGrm1/SOCHmN29v
yIcGJAQC0EyMBpW+2xxmZHaOLxdQhCzZSKKMKA2jIbUZ9liyLTZbLf53SzuzBMxN5GEjfV0t4bZL
ddvqUG//888//6v68e/mxw9foRqoLbMiEupY0X4NdWZhQxazifDR++fTAtIKC8pRiLUS61qIhFgL
xbbF3DA8kovD8gjZ4vJuYzNdYm1QR3YMyRkp4WnqS9bptmqx9TXMzj+pVWI1SiRieCRBiSQhjAI+
Cue9pdchIMDDIl9s4J6L9ckzmghUEsf/nAaI1f4APwy5Ab4Md8QSyVHXwzEVAe70EYqDSnXOa5iJ
ruuG5lmLwytE4iev9oUFJgBYlGdjudgnUt3jdHmfCHUdd9w/nSXwyB2nAgxJLzIZ0XpZZo/pdAif
3Ix66xOG3icMgKIf1ZfZrIpqwO5IndnKSnRQRoLHFSEoEWLUBdmFEbTravqBSApgtZj8dtThQI+N
lAAADJKRKYyTkSk6RNRHHy0ceH0JluOl6kN5nIyspEZeL04Cso0juiW5UCgPjG6J0ciWiFIKfMSE
ggXJIxEwZpPj12092EIgCMN/I19XPGKst4HvlkBsJPE3Xats+dBtjAvsiCX4DZsNLWOXYvxPbTXY
jQYKKemR7WBBaW/vCyi5qUE08hEdWSL4iM6L/ZfGlHrtwfCxLYRxgyAiSHGJ5okdlwCIPGCU27gj
4TA1dSS9aE3vJxKMomsaRACSdz2Fh5RBiESPWI0uotj1U9mjTwIqcuLedJ3eA1m1Ig9IzoFl/Z/k
AKPMSED9VJmtGUxCF7FXEsVlsbd1t9jd52Iho7LRCUcmnAyytEnCV+sir6zzT8VEiuAZO42E3jV5
U0jqOMaul5wCNLoWOcXUdXMaj3Pk3OvIh3VXGKdEXFUoMnw9oSgplBFSHOK+/z/yrrYtbaVb/xW+
UHfPLnVeM8k+l9c+9d3W2latbf3yXAECpIaEEkDpr39mTVBRJpiECS89H0oV0SQza9a619u95p9t
mDgsmKnrSrUpAY5ikIIrq293qvuo6hxW93HVRvD1rq1eiXrl6n0ykwmvYMapMHFf8bD+onaFQSCs
iCbPqXgeYbwO5U/5Ai/GBhm1oNlcmMk8T1U0P803wy5GYUPexc2OKsj5C79+fifIAWI7idHpIrX7
mQvFCLWEsFevsOQOWAu7PM2oMewCf0gzUnTw95ujZ3srWJ6ZXpikbbtnUBiEDEnWBIsHsaJqSE3b
lJ/oKnj2Usp0uG0tXjY1KXqP+43kyDXiHhBVNrTbImC0roEahATTxp1oGDSlzMurBbW0/jwFOnN2
gK4gcmRua5VvhE1YHSAc9e4gMx8ONAzHFPQmX/PYlLl1TQo8SJEcni6q0oFqSiC3yJYXhrJ2a/Hw
lN+Fh7xQ66Nn4xcw/ZoYdNGeXnI2NKaKRov40vOUQlO+04/GDyDyMqXP1EI044yqhbwkGDYH4taM
VNV2KwKxe6zkvu14oeoXgsqXOVEHnHEYsikjMyeamwfnUSFvHC0e/oSB7U+JKJQewg4MeKSrz1Zh
jJeVJJxQOD12eaW7hhIGAeJkKFd/YLbjXGsqYh55059U+/rs8QYykiIWv4DKnA1Fg9IsUhueuxvX
xGrdh5bFirYpG3tNsesnP8Q6piRcrMgu14WJJqcPTFFF0hSGlQZGEqwhQ35K1K3d9iFz8fVcO/SB
MmlqHcsQNlTQ0A1n9DEwKRBjdChRV+r/OJZLej92IL3r0LKX0fu3mIFMKxhgtuG+pVlp+Ff1HyVP
UqUHSSzkYgDDwt62+lF3r+P296Km9xe64/Yb+ULVy+vX8re2H35ttu+qkjfqt1r/ysymQT0fQZvj
/Zh5apwEygQuT2OPw4F7d9Dv6wqYgejOWRxIAgNzHD8oFPX8NeCnjGG+YH9wT/EoP9HtuvqJ4kBP
agvTitsPQ6+fNrOHOapTpjQ98fTiibbwu+0qQXG/sbMlHazh4J964IY3W/I9aQBgk+T7mfXIVor6
cKz10Nl5ClulJ1bhRKw+hssR/kO0b85yaovRP0L95i+nJgKZjQR9ChOFqwNVCAYLodL0vZei6SFR
QJkpFNmPpL5PKNb06pxlZTDNpc4fXNfHt4DvWi5BuzbRn6kzfPmaK8UUIGsJZ30c7kGnH93q3GwL
8RLcbM3lEm45CEWUZrafUPM+w/j3ubm36qN/AWXAtE3H8n/53uv/fYLw7y17Yti3v19cbL+epfzN
3Uq2cXYnJbmC/2yzk16Pa0wdN71WAMTSCcsluPi1ug+cWFGrpWfgdZxixBIZ1bMfBn44h2KbEVas
c9I42CuUf3pu+sORG/iQlQhSh6RhQzFbKVqB2/Cydj9KcOM45jSlG8rj1IcH1ejLmioJSbSm1H9A
yuI3q3RfKsTk90798CYhWYHIc/KTKqHJW5OKksnnQVNWiS2VqaN07MFe8sO9bXfW52EK25ReLTAZ
uge5ea1MIyHPVFaz9Onz5cmns4s5ZdPpTrVSZB3PbUoZ3HkjlVIUvLmr9aS/OHgjV/LNG/me+u5V
gtDubf7D+iibP+MM20Bllcusrs29wzgX21rW0idjjeTtv/n89fKNXIlc98pgUt7iSucB2GknjjDV
9ZxtPeRDrGotkFMRxGS24mFVNJkRwotl4hcig4QqwlrGkV/5Tf295em58O1AP20JE5jzVIS9ypwb
8bhmbh/SzhoXgjtkGSZS02Bjm5GLjHyBtITOwmeWym+HMApqGMZuy0uwmH5+uDBCjvBcRUyl0iUq
U5M1YpDW9HgB5TARDJOFtWLyX+I/nkWDy47X15OeIIj9osVCAv1YQvx48CjcFGHtOlP5cI5YLo0b
txdozhjIY5O0IjQjL74vAoJSG5Wk1BWvwczRZZQGZDVUSUNHYq4gCfHMAZjoHHsNfBDbwbx0jRBq
fVbYUT+c5lDWuhGgJ0qqxp2eNlbgbnWVuE7FMpDTkta35vZ68TbSH2qMLEfVa5aAl1+Q3URjVjBj
RbohdCYze90kFZVCLvNqz7lViG0i5Z6hYWRHqvpX6TevmQqiMRcTLPS8vAwrwhWxBJUA00GfH7TQ
8wcdFdSQZy5SX858RDF9TYe4dCZdPgcR3Og5TFgXZw8DcPExTgvFOfLv0ERvO4IvVSMa2yxNPNKG
3pVVqjLODDAMTYkKqcV+txekkKnDdAdrPXWYXn0tOMEjg56fdYtA02NRxqbUXN38OwmRUdk6r+sG
8nR09R2+FNyzkp64rn/iImS7puGn4MIxMoc7dbKoruwJYypfkYSWVslqJ03jIKe89PRPd+ROOrlS
SkeZdJgIKScBNDcaJL1smKxpVtvqeUUJlI9ulJ5FpScRHubXKGPs66nRpW/BFdnAChM3OylpG3j/
Ubz/yVH0mjGPg4xKpk7xwvB5YvQqDc1VuCLVXYluY4WCP/kEWWkf7VAfBuTjRYK5S/ERw6jWkH9e
Pp/vBrE+KuQY1Y5UP1iHEpUuNByAJKkByCLp9qcY8sZrPuDG9MHNNqoUYq3I5RqB9CVR3mMg4pmm
tPh6eWi/SgR1p+k3z4fhiYqAJx+HAh1IMaNBf+hV6e4rEOYL9Vd3tuKOS7hVq5LD0cEl6V+9s759
uzj7YX//sRtUye7ur3enqH15iFq/b4UXjb58OZLvds7eyb+4NcM3ZFdsLEpehtnn+yzlPWoPvdkE
mJQ3TtHSb+ig56fcEBOg8ct2Ouee9wcwiCneXH1lcWcjj9vFsdHjZlGjRp2mRZswg7GCNt/kNf/P
7IrXNOtdm7PayDEeUiVlhVSTIMo6NBfYnCw3TGlRtqm2mNpMKodd8psGNycX9f1PA/buw+Hlwef+
yecvH4Q42xPNYXfY27/yRr3Gp99tXo+b3Q8dNDhxBtbN/un73we/jnXCywlbmqqQW47Xw8jZTGyy
KNTKEATHKSUEA7GwessP3UBfkaOSI/am7gbHpPalg0cfrm6ccBx9tE+//T52zm9aB7tfzu5uxtKi
W/7vA3RUvyb74vzm9nZ4+eXzHumdgAU/9w7vPrVC/+fV6JcX9Vo/ri86d6Pe6cnRt2bv/LYNl9bb
nEIMS+nHlqV0IgL7Nv5T9+Y/aTtTW2BfTPCqvlhEpC+6heJqStd1t/6WK/b3ZKf+3t7+u0qs9iDF
7fzWGKLOuTR3/PwL6TXOT+9+x1dRnXS7J8Nv6Ivc+d2789s+D63Oh4+6nXAsadisjVmKPVq1uW4h
PtAoos33P4n9nYnLk45UJ1/9sLP/7YLu8f1W48vV3vnvW/b+o7j4dqBdCCbhKTFidB8wFsCuZZYs
YEyMujMsFaNYEqYIm23Ucr1SjVZIW5ycsQB5Mu+NoM0/MP1+s4O+7AXM+vXr+K4VhjfIHjfh3PRv
Olc+eT/at/ZPh18/U/TxJOXAcGMlyqrlSrX7S1gqXSEvjFPGsToIkmCO6RgoTY+Bbo52PCBVm1Xf
7ZajIHmFizVwh2FW6nKUHMRsqGWvssSFWCuEKbt+m+eQvnesesh0ovce2WH30/ng+nr807a6Yf0m
CI93P9WvDsLYvfl13fgRu/Vf8cX7biPNMnO7fFMzjL1+KB2xf2D+5W3Ub/7fOhofjCxUWg1CpsZ4
KLvPooA5ynoEuVbRy8POsjQ9Pb/Ouon/N3bz4azVHn396MXH3tV37B2FVouetobh4Fj02I+fp94n
d7j3TqrkNEsr5kPT1CUo2Lv+tDs9Yy86zYIGytqsxRxgc/mELO0hz9dAj4hgyZNuaDWVawyqRO7W
NCGwqs1QqEmqrpF3z9evKEyZPlRhETjBOP9NquKtRtRTfK5RMPJiRcetDYdYUkUwzM1JLJ7ht7Mr
zFlp8SnK93w5TVIriqQpqJu2HQQX3fnpXEIXDCQMsn++LrYlHUOWhZBpTdVAc9jtjrXnmlkZd/vl
TuHZHX94R366FfjtzmAH7nCy7yvzhv9nlhmVFbDHP2OFsGuPtzd5R8MISrmFXiJqMb/YLTeIV7/a
8z5z3/1+V5PG4sYfzFCiZGpfyoHI5kZ+LGZv5BFvVomVcsBthEtS53+avE0y404uQKqFOFNdKxLa
DGPALArORMNBrR41n7edMNUXb2WptFtD4TMFMZmN8qz8PNz2rzTkAy8NveUHCqr1eOQ3vagGzrTb
TqHywQyzbN2h2TWW0NeVQjk5WUBe5vrLen5nIT02J/cW5QBY3NpUgJVUZ5g5BwLbRuUnsXhSl87U
HFYoZcYASUF3w1puAMA0QTVQ1XFjrvF9fiDWj7cCnjC+Bk1Sjs039aBCRYCpg8qZtfBBzRjCfer/
pv+R2Skmk8yeIwze6uxVJurEKiAXU2X1XU8qivtlUApEz4+C5VNtbEhuUuV75Q3I+ci1bm/jcGzf
jeunUtbkL9a/uAE6GrTQ4fU3cfDp6tevtvzBceimCSESJq2FndKCZcvNdTZ8yXMf+tTaalQUQz4+
bIImGx2vcTOFKeGZIVWzo2x2t8deDcY9b0d9eFt+O0OghAUzu//z0AJhRcOr/Sftfi236wfjWkvK
RMvVT/NjMGF4Qx2ixSQu7ZwXiT6WInTYITZj4E6RhSVvXqGbtmFXSmg2Jo0swNHr1iXugYmuUHNf
cwcSDdaHEjhqG8cYVtc3eNow0mtbKIh1+CbLvlaA8ULg4PHOp2GCfqOASKrA+q2s19rB1gbdLbc3
Wjb1KAoZ8uFaUqkCKTqQX/uh2x8nRfB6bSakq5aJ+TqHSkkNcNMKZqhINH2dTCrVAjKOjMS48/eW
W06RkJVhf9xy8qVsX1YcWd3NvJQS+WLrK7tPGxOTR1JLmWfBLNzNNvJuvVElVipeRWb3uixjRtkf
sQdpvipxVqQaM/ExvnSIJhSs2qu3vYH0JP1AVQ6lM5wRIFJx8GYIo22b8WyehcR9KaV96ee87QXP
h35kd4deqQC6+pCUSdWlPLMQLb8BYN0N3sa3LcjBwqMmAp4sxY4b3LrjuEoPIKye/DFNVJ1Iq4a4
2OSTeTqO2ldHnV5jvAv/OidHd6N6t9H+QZxB/dvVsLm3i9yjQ3Ry3OzVj27bP7pf29ff+M86OQ+u
93ZxgwTD6/Hu3o/vZ8HZzy/t5pHdbhy/H10fX/28vtjt1P3doN49G10fXd2cHJ+hRld9ftT8fn7b
/A6f73TkNeDacZ3w8Pr7iXpP/l7n5PAs+EGvxvLvnMi/H50cHMbXxBm738+j+gXCHy9P2tdHgfyd
M3Tqv/t1ejtHwyBiHjq/PI6VS/NJjQcgprNWz36UVBdMCghqTXfgps04wWq+mLDKDVLoPV9cIWwR
g9b177zmXnJ2tqeY26AgE9gCAZV2XfmSujPCotkYj7ImAtL9JypgfJy9egTOiV1OqHKKY2oY+koA
QrkLbuD/Tk3UY+xkHFWcTQoeFylp51Z1uRrR0MfrMtKLpoSNPXfgHQQeaIUzkIKeC5O+72aFDhcs
056D2pUjLf94SjCc45KB1VwFpBFEToG7ByNz+z45gHDjMN8D/o8nbFcv6wFHjZPg5m1Duj7AGLIG
lJoUA20oWGAODKklHnmJaWFqx+Pw5EWHewoYg2C0uwWTF04Io6syz1rEQDKONllAK6YcmdQzQrlU
j5gaLoBZDO2nYX1APP+ADdyGD1RpXW6GZ7E3n4/Pfkrsedvc55360dW4ude++3B5O2qQM4knd9Hn
9s7OS3BfiiZnC5WzlXqeNMfJ4qzCHWvNTIBAkwaO4gs5BYnUXNtEupP7mK1r55TKU8WNRrD1FJHU
4ar8cPXRVpwzV7Bysi/BysYEEyQo1zCdC5NDaSxZqs00NBdbcFxhBsDlvHOexuliEwEgupCFKEyT
xgUxlKpNsBpcJ/hXff31/HTnpfwtdhwJVQinq7DViSjpVZANtDJGfRny9k47Fl1UMpEBZIXO8pkD
L2wPOikM2wxlm8q30qOps8IWrnAmVhPh5kLYpejV+F4aM/taaqquYTc7hanZBkfbKVMXPrQTSdPc
6DzMdUwa+aVQpEN8LAAkiKXZGG1ezwIzJ5anuh6lZY6bQeWyLFa+qaGWEenUMryoKEqZ6Hs/4e+7
4bgGdWgg/bH0TeRbXQmWtOLv0AotsubToAxYCgdet6dG/SlsBl+ourgHidwDgTyZksfd8XEijbPl
0DXADfbCXcnxYBx4cccDDkW3Wev6UghgWXSWm1UcKsooJJrOs9voRVGtR6qr4tlOTVJcBYvmR753
6/W3m8Nu7118CW4oyMrj6miCghRb0owW3YKmF3gPFJbNITxRwleg6AoaHTdsT45jW2qulnS5a0l5
Zd/rRiM916WNpaCWRP3xRD/BxJmH0LH+yIDf5pRsv7L4BQxsF6HGXSpRlkslVKJWLHyyMwnYlNbP
LmaWBNCW5ZTb2jXPTBtRn9KQk6ztabnGdi/l/gmrSAHJfP9KoA14bg5eBfJ4wWkSxJDKn1qXp8pf
fjuTms42Q7l0YzhZG92Qb4ZLtwSJrE9cKq0hgHm2DttwXYEpydw9vn66Qp4RjBxTuEiRKIExGfQ9
r+Ylbl1NteBoQBLjBTNmcQD/pDrqu2GsSgOeJ4abfuzWA73YcYhrWSv1I7veoBM19X4kw9mmH+pW
5VGWsq7P7K4QuAELrcSj+Zisi/6YlVST9URlPcZ/dOGhqSDSi5FbRnGFCbIJym3uqlvWuuu21NtX
OIhu/hY4WaOM3z8eXB5/2l+zR1AmpqS+HQOHVze7nsD8erY0HRwHGnpKYqKmaFLE/HhPyTu1JO6q
Sao6xYKYWjSQXi2jCiKQU8LzZS3XTiFLs7GoUIpWeGOz9yTxmQQsNi4QpnjhBE15Cu7ImxwLdeKf
1W4s+wDWoKrOvOeWCGSt4wU9CYZnoY9jVQgXywSGA7/rRUO9+2rZVjE/MvOuq5Kd9dl1jBmRFttZ
tH82M/i8nKx+CvLhy0UO97JQ9IbZQjHVlPKs5IahNUEbQLVsFUBdGkJcaI0AD1JirUStUGeZ+GdO
ijuPD0NtXhGZhlo+u/NeMGz74bT5i0H73X/7tjcTNmaYK/YBBxW0vrMb1HUHnW6gS85YrEIxM9cm
0I6gpis1/Vlqgb6JvddC4PwR3RVjDjMPLhWp7WyS0TXz2BjDC6d85QXBzyzO03Jgpe+3EvWyBU1w
wBaz5fZ68rGSg3nPrprwI4feIG64PW9rQr2/pe/env8gisFadRUivvVCPbHEbJyzEpqrUwVIk12V
0NFeE5WTp9jRQqRiEeMEO35Y60lTUBuCKHb9UDq+2tAr4zz3EI71VXk5Stlq8hU7JUisuuz9jcgf
1ZK67qSUXKeEbFyM4WwdlW+ODcBYSMcHc8ZN10nZqXVSRCxY2OvWJY4L27P909KJo5Qu8RhpLDhi
K1PAggmgIEALF2lID3Ywfhu1R7PMexjbSziu2hMqKpYw34Rgl1UxY6uKGWvJtRAW5Wtuf9MgP8Kr
PLiCCLHCgyuREyNWiUV7WthBLKkvl1nTpXVUbbkAOdvg/hDwgynlCxOBKz+n4fUGM27P9pT70vHU
rIoqIRwh+QouifxPVTQ99UoYo5m9EkIgyPGqEQwH8qrgLvU0ngl1gNgEi/+P6ApJvGMTUaJJ5rYo
yyJPg2YY5dqIohvfi3U1BwTGOmLTDtRTwgW99oAqf7Ysm6fti4dGosWmOEjTLm/Bd4MYfMa+1/L6
+mYPgoE7scAM22fx0El9Xi/4Vypvd7yDnw4Ym6gnzESh2peJVRq4jc69PQijgd8a70ehnq4K0WzI
ffFwL7UEhHsJFM+VqJAeaJ8n3Uz6pC9mHBj1bZw33zM5idPP7Q32JsdztnMLcjSF+P1mLD3s6T0d
hRZTICGxFDXUi607FpNrPx8mhOW5kLvL8pjT/KvI0TNdHkRS/sp/PqVnYBRGoXKWIHJhiuR2r+/B
l/cdChID6KNR0o3mopjjsigOp0zYq4tgEl7BhIkSpVdzVWJXHEyXfk2CnOVf1OKrDvNrIMXTQL8K
1j9+6p9kZk4zagyhpPhtM4Ku1NcvReOlPuLS1BRVuc0wVhlobyBN6CQzoYU/GNvysJYWk4lCGFnQ
j7r3DagakGvlH5RrOurmYLw6511CMsxY6XmXKaUtRd2763l9HyTSDZLxonEnGgbN//SH4c7Yi181
4t7O469IuX64vSp9B9EtKfWZ76BKDh86Ol4pQLyjXmdKyAHNIGtBHrx76ASpbSBZu3X7TemKDfq+
vqbPkQ4mYYt3nWoPnSbKJvW1hUq72r8jNxh6O1E4e1lRxMPSVijEo7auPMEW4K6a9uLCYTCvkIcv
6j29qMCgZCJJyLXDqA+8Ny1wSGoTViH94AtmFWMXMHdfqXVPtr1pyka+tZU40up1qyzlQ5lcm9UC
jKfSvqwigipCWSJ2WYoIqHBQqWI/+RrSslInxtA1rwGLUqlbyHRdYZq/U6hbM8cjD3vtvsRPUpjU
L3kpOCrvvCPTOEpYzupwFLf+y963MDduXOn+FdZWaSa2Q0+/G0iVKmXPeBInTuzrceLEW1u3IBKS
kCEBhiA10v76PacBPtEAQbAbJJNsZi2KktiN7vP4zhuNL+pdsd7fV7Mkgy6Zcsete59l1XU1V73B
FlhNnsTYldZ4w3ff/+lbLB0wqqGuNW+IPkvGr1dlFT0fHyPQRF9HKcjx9yjeoxHohfxUTdb02ZUO
YRrQNZd9NzoUXkFQrUV5cvu3rQcsnbBgS1RJtnDN2pzSLBxIeoUC2doQ7RGoK3+MPsaITSbYGA1W
hveyaYp3b+2QJvEQzpfPokI5oDj09KyA7uJyQQ9iOOx5rDuPrTzBQlWDkHkTFjlycBmLNAWNDdFI
wk9sCrJ1A/fR8rlULtQ+fgDVG70g9ZZmVe3m1vpaWA2wAH2e/LQ8mirGwFa19khTgGPIO+CKDmEf
Js6cVqiIcz0Qz+eZ1SUTYtkQOV86VMCxXKrLRI9/5IXA3ay0egfkWBXfMC5woopWZ8D+ARxz6PQJ
M1uEmeEExC4LdfaN0k6ZPp1tmkCex2KklEpvqg6Q6TIvWtT/bzzPhp8e43S4RE9J0YPK2v+Md+Ta
tpX7VhYSWLfPpB+s/hAvatG5xGRXojwKqYc4jefRAgBzPjs6t+yUm2QU21930WwHJL4p+Mdq6WfY
cQ44NW/oK6vNsKnLK0o55WSHYM0eN7/AmT1RgZGFSYGpmOV0NQZYvgg23zCdpGk2gocvB1HAO58h
5i9/twL6A3QNaK6vBYUu/IYBGOFdzZ/xPDLZakPMlMGQzDSyZ09TKrDKVjqKyJmW6MbefLaIdjlg
Sjm3Z1itPdND05wi5jVcpnl0HydmzqBVDBHZrc1xS1lYthwqWjo+geKr8WIiKGXCZ3nuQ4atJTtl
Mp+kbUB2UMr8z6EBu92WT10GPLddgrZdYtxT+J4c3G27FgeE5thp6NIS3k8hE4C7FAxhGbqSd8Dw
H205CAx7z7Q5OtqJ36fRczEVwvqQpoRQsuNXP54XsjSuEFgaJ4tHgNrw4wgIDV9WfgVw8W7dgS0t
DCcQtvJJ0S72CUZuTVLY6DGZNCQDMwpbacW01B3TOjtXS0wajlVyem78yHbwo17hR30ifpS0VRoO
PaM51ZrwCA4qC30+zcnKuvWzaDFQ6jgm6tEOa/sYGMzi1OON9HEXlAQKZ+CQHhSEgaXmG3vOI+nm
/LZOrNovmimrgpjcLwoCFMapOo217EKN11aoau4PDCT5NEKn32yeLbJRNmmas0OVatkakx4X3TB5
rmBLAyEki2GRYD786rvvvv/ZahAx7HLQgZPsMGz15rAcAj8czSiTtnHDJtU84N5BRWELbiXq2/qD
AWFoRnoUipbOJUr2J8722Z+ZCaLBCRto9L4eT5Y0CABCEH+sis4CZJrZoolJCWh+Fkpv3LFc3AdW
3sAGnoFvejjZ/Xaiw62SqIMzbDlrztCg/hExXyNi9KK+/e9PjwA0n+L5/6zxbldgHCqcytjK/+RC
6r/75s9/rwl2D3DYg1fuahUWMMHhgDrS/9idOhrVZQ4KnGwntHeN06hqqAxblrZ3Ze0kNbPfCk9z
tUZYsZZz7E64+jb4h3AzouGcOpe2S2uinvrbcdC5irjWLTaHfxAIM6Dm0vUJagUPOkXIkDki+FU4
O4WnXd6t6Nw+HY627MDeWdrgTNO9mh97RQL27RXeWB7O4iCS0gqHAZxJs++phcLVhe8C0RXv39pT
KOHnxYSb2+ciSzJJZ8vFKkUTCGCaLHZ/YHI5n+FFkevx+odJHOVx+Rfw5QW2D19++PbPX2Li5atN
I4tbivzx6atiP7TigpVYAay8OmHz0WM8RYk5AYv+yVpVIvhAMe6YmTa3usdWVe3FGQU60u7wQnH/
QxxntFws6oAD6bbolndk8xLnZWChUpwPt4cpLe/uJvaCVKH1gHeBDO35F0gjjYuTaMBqMmhZz3l+
LTJ87UOP0JN0aDcTuRbDA36SSnulihrPFYb0u2hUq7MQZA48dYUTTGT0KckTeG1XKAxwdOgKPeWT
5jm4JmAsmXPBN4pB0A6j+Tx6uVve39sZL0C/JRFnU55WGbmlRY0GLH4EDLj5i3VlQvwcmZEwo2z6
xq723m/+qKL64NmkFEHok9RXFZVN0o91s5kbLXcTINhjeWs6JmXYres6ZK8H0csCKX0ofYPb7COV
w5bDnelRMzZA0lhbJaiWPSe6Ung6jPJRkpQEPjTwdAjnM1x/Qgni7QNOZcu2eJ10n6m/2dd7eWwv
o8PuHFq7kvtL222wAJiNEVd4b91pF/H1eAm6rRgkaktD1icLmR7YvByQfjcae+H0gHqzL2wKt1rk
oFXbZh3HiPplvsim9gFZoqNwd8n9G3et3ZuhzQyv80OQjcTeRyArG9w9AMHaZd2FILYEwix5fjPJ
HrIvH5L7nVaDYsAZKHjFHOk3M8QpxrTCf8T1vnBs9tolQcclyTW7zzjmnV0H4MFXHkQhD7ju4YbK
BM66lOkANW54Vkc9E5qezVGvNU6ZkKFyHLUr+pxbFYJkCHJOBCBZ0TsRe4CaUYL2DFUSYl6lJ7v2
bpLdWUkKrRlxJm1il4+vkhRny4M2KLRK+VuFZjHfrartx9Ei+s0C0SP+3a/hx3thYbIbAl4V2G99
ZOUW0MIlIvTo3K115tJOt3Cw2K7s4l9Xb0d5KAeauEr8wiZZpqe26a4yfATKt1rRujDq3D1xc68T
Js8b3vSfQtLQbYPDJV+8KbNR4Nv/fChzJoXD8NdykUySBXYYqMZIQtPEXno3oox0rywPoE21ayrf
yj1cUWOr8aQWeUZAbdIwdJ/hkQN6usuey9nHxW2b7sSmzKtAuLZBcDSkLQfBOT6KELO8JfGwcO2S
KggHYUjPcvZNPY0Fth2SPj2n5Q5Nmnj5+nZntxhmLr7fNJ2xZMOqkF6NtDQv8MEeQQmZ7xEezSJ4
04slxJWjmO/egSD9bGEGPJQ0wvDTBlKsIOFdEcjH31v7FeomfFkXXC9jXBCVQmNMDQwpOQsDWX2R
VLacf+eNcSxMIkPtWLHlMU6YPRSBI14SqFZ3Y+bx7Au1JH0E9lwUw4Hy5V3dJAcaioHU2pm1mBc+
+XScfbIGwrTpKeEcuWN7jiJjv7ZgRhMMhIa9XoPtwAFnKGcJVVWAVaHIKsbDLXByJbkYN/rrG/3u
VL1QfEpFbKJ2YNwf7jgCaTBtvDZHgPy9ZjlbQ0nLoEE5RRpURzIqOATdd+i7y5PCo11pMMalmX/N
ziK4F9lsuBErbYGPli0PbT2xyPXBSdMXA30iSvgrEFs380aqKtyudq+col7l3GHlj4OXmCYXQEM2
eiHMg2WzpfbqrRzMpZWsW/jZ1hZrNMnymppjNuD6agyC9zfy7ckC3nyKTcALLaVvZzFuqPwzeLn5
Q/jmAEh5VWsy7DqGb1jwYYHj677ET3gLYuCtKRkKyLMMbthb+MLXX0L8hwX57+tqiSgOe1O8SxDv
YI82Q5a1U+ZMNkjgUzq1SWvnWDrE/IUw4XhmAMQAfqPYtstp2XEL7S6gevYB9nLjzOPRl+2L6ut2
JB9wr0nAtYrhg2EEq+PEHxV8mmfpQ5v6Buyppb0X8q+nGZmuIjUTjFRIuyWr1hmEK9vTZhljrpTw
57U40MhJMNatpu8gBxaFH3XjL5XuiwW2DqCSmVKAZ+bcFC/jeIfn5WoKKIW4L03IPhZJgdtt1IZ3
8UsGhjH9/9bG2ZwLDGVzx0H6clDfsEjhs3e2pN1SaU7wtRtHmPQubVaZi1Y3kOIti2KIg9nBRJPg
JDR8OGC9e9P1kWus4dY+ezWYUze8D1x3e8DTfOjDDPIczqL9IDUHA2840IEHGFdIDGx4mRdcnEwf
6qbD8lAAoOGdwH3XRy9gjEExflIfLJQ0fEpGi8Sa/ikDDQzdgaDq5/Ca9JZ65CyJxDFVzvDBIpqj
XXQ3idKPNW00NFbQ+JFX5VtFm7WnJJuUZUTo+bG7V3gQtJxE4i0JqY2urbcrk+2EpIPDZS2mowCj
WpOTSiosyvI+mQOlA5nXdbviLfvOnhK+wSR/ewgHW37yfmnQ3HBxUuWsEdOWoXAhlJrP7gAU3dz7
p2EK1XdEYW+K1j9vD4yyOQic1y6lLVcVqJ/SVRW/tk4o5NJrlLOGOOzeFS7ZQDHmRSG26AyieG9R
LcOo1V3gnCxOhS+bJs1WcVVrqq8GSCR9QaJ1IZBxZ8T2SbEywMiecq2cDiaMdeGBLWkD9ilikK2y
p/LAmb3rXNCtwsqDMK7pzqcNLj16g3swHo0nRPLYHOoWMPerFaS/4V+hv5u9XwP7clBgF3y7aiWd
3L8A+kxjG9QPqPSMspt3UeTfduu/ePKtt9S6AvjAQ53xypsxiR+i0cteEQyc5CxL81Xpsb36CiPL
rruGmW/iYnShfWQ1+lNEX8LQKgtN925y3mZZXXr4XKwUUAfmlfQkBZgKzyYFanvSc067JXkdx/5H
sj6VJzZdcW+rbmGoTR3mXhHMm799+PBmtxAGvgGC/+bb+6IPEpqvsWmN9JjkptNSnsP9YM5IOl6l
lP4BjNsPZUdyUnzyZ+ZP4rT4gv+FrWNPpa8+fPjm3Ze45MwWLeUDKTUPvMszc1Q1nbjQ8XAV8gTD
X1b5oYkP+722UAzLVJV7Y2DL22IGR1iDaMGAM+6LXMAAHkazMsBcj0mEwGIK6dzxbcEAh5IvKQ9P
dHw73UqntrxW90jht1w8L35bLTw9qQtAl5Ix32ml9qKdEA9UuCoZQkmE8cpypi6ol6p5JbH8kHhl
ryRtICElyaku6RoazmvH32nlVY0PR3ACH7fwV105QzyZJuPbKIU/nn8H4q9Q4NEXyfiGv9u8/QXW
KsA7G2EJymSVyURMftI3RveCxo2qGpdrhhUNjJ0L6dltPDApRBfR0WkYrJk37sWtgl72zN66KAyZ
F+fKPtmV9QiT3zpy265jhMZ5a8xCgHWf3/CvESrupx1Wfblgr0oQLK4DDOW80uMn3mtEe6HPITh7
52Yb3S7beA3YUeAJEdMwS420sSeFBAPRKrzGuop2vP/VZIf4qc6BIQHBtar8Y+1FPNgqcBwvRe8S
bOpqPQEuBu2CCqyTJm9HkpaqEaoxbbLRA8COAjOV42hCbYBl22XXs65yCUnBHMsEY1yV+BLKlTIZ
oU6KMEbBTCOtMtqYf4u7wmv1QeEIHqn8zdvXhalsSTf+FSYb/xpzjM1/PvsMaxHf4h/VqHGqBKrx
kJzp3urSzq03J6kU2i3DoyVtFO8Bjg9adsg7SebZR1ejoUocC5tSxBSpJXb7GBs0EefaJbszHllk
Eqs7DOemCocSrHq/TSKMUGzL5Fuwlwk99fuQYK+JUPtkycZgPTCl41j98XAvMAXTOvDF7sua/pMa
p4iE/ZCApQKAtZya4Z8AO3H/6afAiYClOPcqbLOneD5PxjG26bqPlpNakM3RQXcSETpEC3uysx4r
FL+4mlfwejZZPiTp69Vgg9fRDHuxFhboMwYsPiZlGmMaL/JRNIvLplazCAhk/THT7CmJX2+GH3Rp
kjBeTqcvX+af7vFz3pSts8rtVrAJM9hEU3IR/NBunrcnfmCSOFSKW9ms2wKxPik6COEMZHgZ90DV
OaWzVpchnWl4RunMLoQlA+JTSzTVR2BpTLsGcP5wgrwQuejTdlxXxK0cozVFq62HlxxnrsxArx1u
W4Lj9tg5SYHzCyEFflbRrC8EONMzAoXgiqVCi8iINSISsHNZKxdGeifK4qq9jMgfuyIs7HXRpg1o
KM6qBS9E9Ener7tmp5nHfTTJD3bzWBtqRzbyWBcs3vD3y/nkhr9rzEXa7bRh/XjzoZZOIfv2n2DY
uYefVbWGwYVwdnDGU+B98fhlA4yAtTTC91o9t/IB2fq/SHEx4u2s6lVdiHqV+qynoK5XFHmsp6NU
X50d3pBulNmek1F+OdCeMrcgs/RrA8z8YRWk+/7enhiqz64D+vICH2TCs6Ju7d7VUmJVk+loaKR+
XGLIOE6Ku3TAvd7eVQFuLsMLwRzsvNo2OMmBMcNipFE0eoy36mrgTuYmF6bIq/p2EU9r6lNFf3b1
oWvQgZ/Qk1XsN8SgWMthC539/Xk8uV/V9wyJvQ0VpsV0CUBZSxO2aKRs3GBLScBRyEI5f/BT06y5
7haSdBgQb1IZbdt2tsqi2yl0sxpqlHA/KVplP2NrCEoOuKIXkSXUtX+VtaNHmRaE7GhNCxI0CLyy
w5oRCr4oqa2QXMscqKWc7FyXmY0kwTzssVZWsXpZ5V2XlwRqicnh3FMV+gSKpvC22I+VQ7DiP+Re
rJXGfFEw1Ui3oIBTKj2Q3EQ5Zy3LD/vNMwy8SxChyZnvpnjdKEE07U+C8Lr2fZ0kiGdlv8/2B3V9
OduxS8basym1WE15rAUBAcV01cATVS1eJvFjlD82ddNgDLtHy8DzDoqRCw1V8EU7wJB6NRo22dy1
9oIWIeBm6lH91JpuvIvl2mg7wvM+JdgmN5oM61L2KYi1U51zLQjggFJRWCoh2Pl1Sr6rVITgPpWK
BhtAKe1bYNdKaeKb71u1JqeUiW6eE78a4xwWoWLnYwJ/3RYPISumuF+7ZxHNS2M/B/lod1vxkLRs
Xt2CClsMLoO7HvAuDgC7zMe2IQgRi4ZGxkVX/iCaL5L1TOtKJR8FyUt433JgiI7x0aIGlISABYIO
jswTG/jTLkG5Y4JxnNML4G5POu5zm3rjVPt85LqYBGoUQd27P4t1h5MErzmaG5vM7vOVQgIdh76d
nQ0TiqxjiYomIO+yNO5nHhFOMBWSO/LnlLi2aNCHLufSsrE3FBVStOyaerwjJz8cdg67xoPaStZi
HkODcUcpjqHo0nWhNtPA1tREKnRbhad0MDtm6oMSIpCXFMVddRHYkYY7wdf1Zsvga9ehaLYxyGC/
Ud801mC4q7KxjE+7PW8f7JOddLgzO+KAgLJ06n8d3WXLxW9Mv7GVv6j8hYo0RXeREF1y1ldjIXDW
ZfwM2itKF8PtyUGCoNMOR9iqS0+QMBCmH9birlp+1NIFtzf4A2uEUreKC+AKJhHAeSMCXzQkyigp
uqUNtmJsq+nFgm6m0KVQ3ucuyY4xKS5RhvFaGXZIcGmcL6OV9MtMVlZSbSlrbyLVNMlH2z2hjVWN
MKWadM0DRRW8omG71pDMstJ4Hj2YBgPD9dMVUxdLi2M0BzPa3mQGEXbghFmju/jLWfpQzdvAmGxA
rpg94afwzyWTcnGRTFrLona33iHGBXAnRTtVxE83pO2zL5ThsON3UElT1GAM8UCf8iwWtYqDGFso
1QCMH047LG7EQzy9AwG85doDzDhJnuJ8+DAygU34vpARaLrbTUExEF2OsQ31WXW6Clo68XgX88BE
c/fOHQ0Fe3+eELYjnROxW5uRhL3ZjCwk1D0b2HNBMRexecoI70lGepCNPBC+KLwOJ7NWw1L45To/
Cl2M/0joWCkzot1KuN0JfMNpNo+HcTrKxjVi1swfb9Xy5gjeyuNJvZilGgc1HagxPEx/9/BkyUO6
EqRbPpj16rV+F8EE2Izsisnyc9fgkFJ+TpF3kGwLKfjt+x+/+tM3Kym4PzPyhqkbxp+ZvOFfs4Ca
pqD7oEYDzwW8w8237BH/29EkjuaVGdcMw+VScp+8vviUAEDFV+bkYnuIAXMhg5NQ3VtEbTVJ/Ngy
OOz66eMsztNsYdx9FU+fwALI0NG9GdqEi3oCjApn+YBMaR9cwymsT4+3xvcDu/EdDsrI3xDKC7G0
G9AVeDVg9zMahh2IpG2A3Z5PxQDoM9qZJGaLNf3bFAxGkUN18aK2yPWAF6PHeQbMFT/DomZi+2ol
I4gJyBaXgldIEvZjq9pTXwM14K06T9Tf/X0yMYp3Oo4WkVXmEGV6qV2OfrGLSgvSvmFsS8tgM8c3
N0ySr47IoGLsACynLMSxKa2azfG93gt7Tj/g+tHH4TLFfjbj4mKSdDRZ4ngeAEnrS6oODWVCDtrN
pm/GgeVMSpB1hQxq8HQqGrZMy6+nPbhCe4ZeiA76UPapb+2RERzHplyaXKupnxvA2+awZYCz4k8F
3afuQOou0KNGhRfuZpSASbqM6syNEKcvivBaoL5TUI/TUt2edkHpQ5zSsHi0F9uQYgzv5Qp73k7Y
e5H0wUAqLUlXmTefZ3OAw7sRHcTHoMYpD7so8u7naLesw5aRWH4JgRenSE6Tzhj6eTGPRgsz1HNY
bmM4idKHJQL36CFKUkByYEokTxbVHYhgEFDXcnUa5R8L62ga5+XQ4Xj+ZLf7At125vDxjz+NJohb
QKlUH50SsAtV2Fatff/DT99+/+cPFetsK6BYOLBwE/NsUlYBwe/dT5KHx0VpV62mVuHwSsRYpm/4
+pfe4u/8VP7K4nlRTQhTRNCWO/7hLz+ddbc8AKGlmWPaypd3prJpBJsegTiFy68ZHEslSDbWxSTe
OzTrURm0sn9g9kQt0GoXFpCxybX1v01k2XUYWVDSgRy2R7/mMbZgn86MfdJElnbu4UL5kTNlxr9F
zGgQb4qFvUqZ4w8mILI3qXLk7piAe6PhBYPC1g4AD6BQI3jQ7FIvT3CcuSb78VIJe2kCaZkT1VkJ
YMGVPQuibbvhoyWOTdCoEAQNPYZPjqOErYetVhRxHGcbBl6NiA3H2bPfcLaf8nnT9ksW3XwE5pLv
o6dkhAlNeX0rIRHQa8APu7BhEY0yp/4I0pmRtuK+xWl/Cf+pZgwBBzHtewkeOFti+JSCpZXXPowO
PYuCOinAfUHucZwmYFa2wdxEqoMNFvoFDfvCy4IXdsZM3zBNAS/g/+CrvuFfr0rWxtloiYz5ZZG+
UIyhrhwA5jJiPNAr7ixupIYQJAk7i0VYZXgfjTAEsSmnzWMTbEXPAvzIavMpTQed6O8MHtuNsLwh
gUtZqSjTHvWwPRaIoQrmk++t+eCYgURYZyqbT4vxNQsAW7NJTTKrFtRMsfYmTRu5SJAjA+DW4J7t
UasQkoOtGjLl5xZNhW6UTHCMa0PLvtBQkjzlSgGh4mLrjEgckm2PLeP0QnHpwKoY/ukUTEkt/SoG
22Xv0rc0jXBMatORPkIrgefLchqLKfkejmtGBYdioLBF6sXggsNYoMhP+9We1v/MnqLLiOBO4sXT
KE3usSjaGqJd/bSSwoU9pbgnNbAhpdIUjfKXdGSP22qQIcTJQTSWCXW3+7ZTXsdL9AXVJlmBOgcx
FTrV6OXsqN99/UfjRK/LvOkUjrNzph01gGHr2TWKVIPSqM5kGaIEIsTzYypFySWCUsxKN//qQwGH
UtuLT9iJHDjVVUoJf97NQ9QhA4yNS3oSm6/awYH5Nxwn9/exqU2ur57iYQhQTPfjNJX2AioStmzi
7UCQW0U4wUZ9pzsStpJnhd1gVJhn5XQdk6SLqRbwtPlesgX8r0vFRG2vJySmuT2LjSPAPSfSsSmZ
V/gqjxe38O4e7Cl+/fbmrf6+DfppjIsQrBMOBXV40psgpDnzmgYxgRYt+1p3XLe6ZIhzdrVTErYL
BQKwirvgybo+2fAb1ccTsu0U46PhDxZRPj3U9SkVmJjSBUU2nKstf79QdWDpq9DpYkGNZKeAJrW7
hTa3CEsWz/dsaXLHsLaZd2/mMisncZjmSeWbtlxkHpj+upx0KSWxdo5hls4x7ZoQnNfHuFfz9d5p
JgcXsvvxzubZwxxxwX2SJvljjM0bJ5O7aPTRPt0DDBF+OhbZGioC9ha2+yoEapUbzRMySS9Aee6J
qLKL3dNDoQDXnegserRQnKSiKnfasppvzKdVhD1mFtAuyGh1y6vZ8EX1epoNsam4qa2s7e/BAjno
lDK2WXOjLptX3xUdnIDYGciOnqHT3SbYlPS0lRv9FNptPADkCwAy7LgNQmnx0tQxjYdtB8K1Kkt7
fqwBu1iLJI8qUdj3kFdMtdrCdKxUVJ3cXBsynWZPcTkiZTFPHh4ADxmbLK7xxbBuqQ1nmuZWapxZ
tHh0GtiS+sy+ANmuG6NLRSQ79RXZIJl8OXo02ZKjPLchGUq9W/njOH0pGLimihSb1cjAmZMlN2/U
+1c0lpYyZ3bM7ttF6VyaoQ5YpvaWzzow2QknZ4IcJ7O49GGX7j1uhXMVwrcwcIylNrNhQFL9E1Mt
C6V0a5Im99vVk+Zm9MTgvVB6OJ1m2qgO6xWgx4g+r5ATWnSlzYc4jecRpmisMhaTNE/GMQDYO3u8
FwcsccWuUbXd8Pdw5vOXG/4uN+m8brtqcOoBtNnlITo66PnjMKJLc40Npirnzhk9MzQNfcG2XPUF
b+N4D0FIdpLLVfOj5S4aBHYQDhRpo/mF270ATLAWig0CFhy/mzZIweSl7GULrOVH3fw4SjlWJSsX
BwQrZvPF7hE9RfMXJCfYcTY3rTBKuinP57fFt7e7fbQqLazQF0WP3+OO9QNWwWoC7XD8kkZTODOT
6IIeE1D7i/lLzQnplonD4tjJEkleTGgDdbaPKc2A5OuU54xHKXz43KkcDw8MgRV+/UhbYr+aZmIA
UwUtvXn/1bffvdmFTKZ7yYGYC7p4mWTH05t1+9OHYZaaquUDaQqowMQJi/bvjS1HkjslM/Tpn4XM
6u7JEumbPqwrowg1nkrzd61DflaKO1QbdtSDV7rEs2AgpD6Kuor8NOs06wPZaRTxh5QtH6cjEMtm
uCmTKTfMl7NC89XMCJJUXhJjHRLkJV+5djtJwj0INbwck8xeJ9m4wn4I3A/m+vSYLGKTCbIyTR/j
aFxTSR1gt50uMnYbxpQNxTZu+McoxQ4FeR7bu6kyHCnD20q1guuOY4X6Q6iyg1ZY0cDUMbLGk1kg
pbx01KskvVLB4deoJ606tp3Iz/kM5HvcxNBUKG48rudGDFUhWIEKb/nNV2ILLBToAEuiyp9oCzTQ
OF5SHOhLetQDFqtV4EFo4MERq3SXUHvXWlN0FVIPugrt8q8+vP32W3NPbNvlXN8dWLadLH8UuW+q
/0z6d3kcDTVCjBq/qvRxSZvNlLWJz/n83shJQ/7HbP1VvogW8a1pcWFpAKsF8QUL3T9E8V5lzg88
BWfXcQ2jDJ1Qi7gCyYDDKL9W1ebDvyGoVr55vBhk2sTjBGv0WuXqicapfNsGmq2XixndLsPLI+Kd
IzogS3Du70XKEttDFO9ZZAlAGE/wZVe9xWWE0YCSL8q+LsBS7Iu1+4KxNzcBebOq0a66Lkwjl/1g
g0I/qZbXQUsNAlFI5e4iiM0B0wXSHCdhdp0hVgmDWVqB9o6t7ElUesDYNVpUi8ckT/IIOAMVEKbi
RXk8TUbZJEudzsKg5AKFsglnrajqgFBuFwNv8K9gEI0TujYU7K1kpE8Ho8PTqgp8zbS6jitukJXt
yrpa+ZJXCa5lm/niznHbuIllfgu08KqohL9d/So2T8m2vF0l0xWenfKbgtV3UmNxowH3KINHsEFY
Ookm9TW9NOShqQg7ggSKyQLbgUuQR/MxJlqu5w7AYUyiZzPqoNbpRgXAy3ZFovUMWr25Ttdh5IXU
g5DoE8+ifP7lIpmAxDWLGs/X/TI1VHU7jpGK3xZ/WLkOYEjfGwBJ+T7Lig1UumoOdGv/1WFBVrY1
Wi4e96kU3yucMWaDy2R8e59lf8kr9u1wQGlw/hicDU688gNfldREXCkogZ+Y/0Tw/4VtTBCdoNNx
hs2FHIITxXnQllOaM/pOpFJBcCbkIJTML17HAZaX87iUUHJmQSmob7OhnUdWYPzIvRlhrStX9pQk
HSKg6AVKNCMJoV3AbXYYbgdnpr6QBudV0+JcfprXoNVeb6k5XafedKWieqCAVMklCW2X3q6bb9hN
wG6+ersvvLmper4o4c2Di0/tapq06DLJSzF6XKzRvTChXlJhdnWZvYUOH2DTst5sZ+bIdsayUq20
P4VXhoMbDGeigJWouiTjVWl9SqimcQ5Au5MaFjdtKUIg7txjaTYcLfNFNi3XdrpRFVAn7jB/mxQY
LetAd23nf9hTWxjF1kXBKRlSRxWS4Fx2ww916VrterOcyP513B8wZjy+F26lN6pQ1/mcAWWhI6qc
ZEgo5a3U+g81ttLT4flEXqMg4aG4FIl3QDLzSxB4zfJOBxfmAbQ4AE+xi6SQpyYCF5YzP2w5u6xo
uPnm/c3X8O+dzeThHvFZEVk2P71fTuz9bTTsQyuXImmlLUsKt8kkPGHmhqPWvVZG2bwAgOt31gdx
u5gv41f7pqDp41py1u3zEB7oY7Kw/1YxOfT281fL+eQW9/GbN28wmXzyCARl0pBdzTMpUHvIpXtL
ZzFPRh9f7DF+jkX6/Vk43JGFw9HCOc7H5HjujBRdylT8WTeakP+wVR1bASC9ejDqtUZAyjBwpArW
kzNgS2khDKw2U4iyR/NzsjCj7nIS/yX5hhLluTDw8CXhUPT/XFLjJcnw7Ph/C2PsF9Ng0e3r3UKa
VoMILaW3IdjRmrrJXi0wyRDwuOnWly0Xw7ts/LKXgY1wHY6YOdKuxyyqpPZbY8xDJ9l/+oBRheXF
7oz9o07QoXw/Zl0Z8OuHG176UgQhufQqUhlKf4b5bsnvEDt0zkeRnXNCjsnf3J09iNFr05h0lE2n
kdU+Vzj6lvpP1a09h2r9i3EWhv2ZqLqTiYqgYUcza5Q/zHN++BHHKOBynRv6XY7GsBnFCWceS7ja
VWnSIBSm9e8FZXgfXaR5qM3hGVLrj6/RFEJcxSU0ZdkTer1JIx6aAwmpfDP4wRJNGvBiGva5zCOL
yn01miwX8Pe3vzaG0mhjKD1vdydi7L//59U/WWkw0SIfelQZRYmzioi6ON45pjJUCIfm67O1lI9f
pIQ8qvKUB+wqbrlJQnbR+FbOMtM1h/ETJkT8/qc/fYf9CJNFYh/PK7hJifAsiw4Wc9IAizmlvLhb
PKpgkF9vVoenRl1cBU6yuoPDbpQLlWMHaijhlIKrIPqmcnPeowUauLFAA5MFKi/J5lNdGnWu3D95
PH8CPL722OO0k9k8e0py2Gg0MfOZTP5cXSVKGAwYd94baB7P4qiYD59M8HC2ykJqJs5QgrMHOHPh
Cts7lcqIGfxopc6EgJv1tC1QsMG/6obxUBdfKQlWL2j5gorVC1W8EKT8GpZfaU3zzpYj+o49eWTm
5cTeVBCH5bX3q3VtGarZv4Ju9tsLjxOPEefSEK0JZCoWuIG/W8O8gb8+7nLWekt1VQ1m7okOz3QK
Qp3CfGWb9nx5V182L4mJN52MyIpiIWtZiIKvwbkOUCpyrqXDkP9LSBgfoS3KyCmEjRH+VRlrE3kr
ANRMCEeZZ2bI2eIxWhhIV2M9s4Gi6lxC88g66mMKOUdwwR+HUTouG7AZgptMk/FtQR3fgWwtIEr0
RTIGdbR5+4tHAHnwToE0non5PxWV36oSozxrVXmHr95ZvdBs9U64eoesXpQQ55lXPlmNVi/k/ues
/4oFqz9f/RVZ/TILARshbsPe+lEVJwmtBxKwlT7XtdNWFePyOJxe9jI1/liM3dfXr+DkO6mO38Hx
2hrT/63uIqn4wdGQsrvBX+QUrY/CGjCkXLZd/ygCaLO2IvraVU1fbci4btUk6ERmsWYoUG7GfJ6R
RkMVnItEpQqPOvYG34oZrFM4fYAW908Zp+IywZTfSwYGyJobeAchzgY46rzPoo8pUXvuAxrsv1Fq
wjDcdyesdCSlbM/BIIPuTgmO64yy2cvWtysfRZMeVnD1XAjmg8Ybr98qk4PgBJV4MTK5xy5MUgjd
D4xYTg5Y/EHo/O6sLXi0vSBYD1gYuhZgOQiLu+x5M6hsOwHbnIn1OADdtWtN0JGxDm+roe2fCjTO
eT7n7iygXHCc0BnSfm7Qfmv0YLmI/Dc3BgnpYhW2MgaFoOJ6hL/TLr+Kyd65sUE+hEHL1MlTlYrd
KmUtmwo4PY86iRQI6V0ilcHlVdL/p2QyHkVzq82uULM48Fy0P52azTXSj9ExVwXknCIy3aoWVDYH
B8zx5sOHDKeh0uEyrR80HzLRshmKZ6KoYyIl/qNVnblYDytTnFRLQ9aT3LK69LGzvz4DRTZJJUC9
J5koDVotmoL0wT1ZD4NqnNZ0PfJwvVHHIIf1Tg81AokHmnhwrG2EdMXDFhSpAfp0qwvbTIIl9b/F
tMn6RigSUBwnu0f+1c7f/r4olTjlFra6YW5erttfWpfb3yVOpmcXrB02rA7MYVLlb1jwBmTx3z58
gC8HhDEPi3snV4WGfMkAStXpTpENoW11Rc6HcT6KZnV5eVwWM1fdyZ9myqfVlq+B3NU9tKflTXYY
H4Q88KP6tpOBmD28L0xHpr7OnlXPHnT/zvKsp+WLzLxBEPRHedzy9MGuFuA9Lb96+lD29vTCwnd8
V/aKnpYvn55hbVhfjy+rj6/3nAWyp+XLx2/XI9jN8spC+qSD1GvuOXS4USvnoHB29Zzq6bFXLMf5
1YbRXPtWA656o0BtocA9BtA9LW9gD46zUSe5ojZLP2RD9ERZSZ7jPAjhEtmVIxCsq2kewHKXnSSw
8uPQAi7dkHDfggDz4YZIY0GYOURNHh2sKeBK+CHk1Vm/GSdzukdWFn2ihSOJmmbbstRexILjb+ku
A+En9PvkRqhqePLQ+/mzFufP/eP4Wi/WXstvT3fBDt7Ffp6It42MosWobg+CXoOSzXe07A1/v+rC
5DTkQbrkstaIBeNDs8Y5JAj+0KkHwVT0/eXH71YtFFI8kUXyBDhvEuWP9hClFsGAS5fezHk8jad3
8RxULI5xzPNP2XwMl7JMF6bobwm/apcHlO95lu+z7Exb4TJQruJe9upKAcuQyzj2Q/OvLtFpuQU5
DjsthWDa+1G3JHEWXMhOaJcwjl3MrdLpotHC7sAPNaBqHVyfjllZco4z0OkZGP+3pqlOOrZ2q8Bh
NYL4QWON2ZbCJMVLl3owzZZ5TRwJaxGdgf5ZZvfQBwF2LiFOkpArj4UXbH/Xzubhupnof/3XmXay
sjnkxTtyXueT+P61U14XJHBJ26ssdIB59uGdEihc8utR5zeEFBqdtFDldCCpDlyh83k8ihEdR/N5
9HK3xJFR1nYEAl1CYQep8Y98iMsNN6dZvlMlFsYlNhNV/YWWzFAwi02+ZwsUv9bfNkphER4JFk6q
FhIq4A6Z1Kp5KBMD7isRNUvj4WyyzPGFXckSU4rUF23VkBbdPWXPlGUjLAWb0L0egy2Cy4ljCXY3
ye6sokuTcMCoPN2SLVM37b22dGVUc/Hk/Z1sKTUCdVG5KbVNRe02xg0JP4dfKP45BSEh65fobYH7
vcqu4tf620ZJIZQy2etRCFsYTVaOQvS4jZWK5f0ShbTlsrDKScget7E6iYD0U+0XWKGB1ANOSa93
YUkv0KTKoKrHbawjU7TXk7CEuTUT1+YObWM8EbRGZVC5ZN3jCa/0NA3PbueIi7BzOhWJ12DBoqNj
fRdFbKvXYwJXVAd/bSfP+txIMfUZTF13noSNM3ZzCw0FHBiVEAHzYw3m0b19UYG5JuScz8x4zw4O
bjNDtUNXDjYw3YXd3Aw1cuqEq73h3/6z7Hj/+qe9Vg34K/ilsAtef7Z/GVilvJcEEvnG5JEVlAMj
0p6lkgWU6yswHcfRIipiUeWraDaDhYyZDjbgNjL4Gh49VuKGvR1P3798+/s/TEb8r/n47Vfht7/7
8env/K+LX36W5LvpeDL+5q/5Lz/TyV3649v4L5OPf3w7fvnlb3+md7//f+kff1qsXi9/mU5eRvzH
d9HvJvkvb+Xyjv04+ev0fT7++S8PP3z4ev17f//bj2Q0nSTjv/04Gb3I9Je//fj93+Hzf/lmQn75
mWR/4D9OYvzsD5L9/edn+stPYA2/q3Q/5qb7qEVTiD6JY0Wgqme8YrWVQneSG3vxjod3ib2JIdUE
w7WkeviyzwcvDz+gnvTkcj4ZxukoG9fUfaLbn7P+3NC9ummiOjOQWa5d9bmR8tpVGPR7GLaE5z2o
EPm2lyKrwYSH4SBAkaTR/GX4PMQwLWYGJqmd8ANM1pAuE3Th076E5StzuDu64/sOCscTExT+91C6
ijpIxphkd+uJB3cvi3g4j9IHewNqirEpEbjWbdkMBbtdvXHCB5xdTaHuDdP0hkn8H3zVQGdHl+4K
UpTuOqhrmGcf43QI7xa6s6ZKVYakW8JXveAsFl4v+mwZGTTQofCCFWqDqpJdb04bNvn7dxFrInDQ
U8Ykc696Pg6j+4WZZ4HOD3vxXMgBRAT9hBZCK4mqAATdv6o3W4bCUf1ImURRPk9T/xOu4E67FAFb
tVUew9kVdDSaYD/RLB0u01qCEpi+2KUXzjTJR9twjBC7hzjEThsubZDZHIhlWPDNqiinbPNR7WYy
HFApGDkHm3LS4UrX0whwHNYwu/sHjrVZkdcwfh7FM5SmNVWGmJjhq+6vec5QA7WX3GomC5mf374u
J2oC0qCfvQZOfItv17AlDtiUshWY440UutJgk+wTrVrLFIwzwlinKNI5R8h+vqt43eV3kFatRlWb
FB9r2wsuKRZuHr9Gg9RrTrqkkocD3kpnKztXLuLn9bS14eJltmrOXljB8MM4zeu408yIalWc2OV5
n5LY2rOVKsFb9r5Th6ZtFY/5DqDdl3myeK6YA6Eyc9U6XOmlMJDj2nouOT/hMOrE66FKVA5r81ae
3daUZozvLJ3GeY7zaopOxXYyxxGrQQcaMNL6YRolk2GUg8G9QOBSp2AFCQaSiONXcYYquGgVYDrq
hO1aXTBsAXadTOW0iFbSgJx848UNZ0/xfJ6M45qRGgoMvK4kvNURwkLMQ2so2+gGENRSEockPY9n
kxeLTwMMuHbDVFWbGATq+XLuYgVUCWnmZijp+amK8Hgn7dplHd6VNopEBrjtuhIvnI3YCwHwVj5y
Bwsxt4oons4WL3ZDE0NrjHp+KkGZScRoHt6o+rCyKjDAamjdEIm2FjlsZwVYtMJ0XwJI9XJTXOmO
vGqG4CKrzvYldaAMzAn7ETZK9SQRQup9ITUAAyzwgYmbOuYLjm3mwn6OUWp5pVDNtfHDiXIp+Utf
2CIrRhKD2Ivt3bYCrsyYklNU9PAuvs/mceE3HY6TaJI9DKfY6waXjlJ4fiDBtWOu3h6SUg6EcMlZ
fF8kFXKCilCQkyFr+fSFV2PrCGrcKQOqhXBO7rZYBLV6l4VxbvQkiFlf0KwvHczV6QRTBGmG45oi
UU0HMpBu5UAbL4TCaVdc9wMxiOzpvqTs54FEX3ZUXxyldQ/QBiFUX+Y7uQD7YwdybWwPDMKC4XGX
LRe/uZtE6cfX1cjPB6PCv7yfZ9O3YL28zcbxr8izDH4N/+HmP5999gYTUaIpAJWvzdRG/vUhCwZA
OehbRjyofhBzndS/MllB4pjLOlEjK6fMWws2ZBc83TPMteSlOCx/bhWRPNaMaWxrxHHyVxd7tl6Z
Lh7n9ll/lBLdsmftAX8rwvThKJveJSkyT8NwW4qD7rs7XleDTbJplKRFSxR7hhVOFu/AJBvyxM+G
O0oBh1TJI8TxVsD0xNEKoAayuYUMudISy686+HEPBEHqB9DyECx4SXtdMggHAZO9LgmoVR1J+g6W
1EFwGuXfT6IFyDTkMj6Jn+LJEOhngd8W2mMCMgC/W23LqrAkTgPR1yXbwQwE2d6QlAi/gAK93BK8
tG4S3m8l/wOsq5BSnx+C7aqLGv8vae//5US7tNXsQh5HIbOexZYcKH16QA/ZaTNBq0yQADiYLR7j
eUOVKhNiIENN+n1mkCic9uKcGcewwVG0qKl5wgxDyfpVGgLnpPZ73mygjjRoHWjjdhVNR8JQK/jE
BpTcHficP60SVK1+I6zr7uKesiegDXNk2OV8Yg8PBN1QZwXpLtOPIB5m8+xhjrP3QAXD/aFyGwFr
fBenD/Y+brBwAGfr0km82stiHqU5psNVqYeKQUiCS1T0Zt4wFkmlWRo77ZypuDjdWVxkVX9K0rHd
dBIiNA1hz40OmpNv27hgDjpcKIUzJcFpfLqbSlLhWEvfVwX4nMjAmSzChgsNUzY4VS17XLSWs7M4
zQGdf2ogIw0wkxPq6iGTqRnOhKk6NWOZTCcPlx7mbUYZ1oIjiuBMBcRlPlIbIgLlKdVFxmozk+KP
TTdeJynQS1x+ilNRyEKp+2dbGTiQv1magkbFkakmR2OI9c3WQLDE6Tgu3aFJep+kyQKxfzbbe0RO
MHaiKOl3PacxocPrMcb6PVDNz2ln2+T0qyLm+Q7AyS0t9Ouq2uyb9roVVer6zyq9MhRWFzpNG2hB
Srzvmw36fb4uvg3/0n5mPglkZrKfmRM/R6i0vxxlU/iu+D23feQF6/fGT6oN2WLOaTTB1idg4Pz+
pz99Z28MBmhG9stAMmQ9M2zY73phz+fJ+nFfbahpGi8iq1dcq0rvoosUV6es18UZsO9umcfjZI5p
eg/xYlUfW0WCSjJAgv1qm1D2rG1C0S+zCN4Ls+BUyniagK1sr3P8P/au9LdtJMv/K/piB70NxnUf
AYxGTnTv9E4aSTdmsV8WtETbmpZFLUk59vz1W69IS5ZUlHgUD2caSGRJllXXu+u93+NQzM5aVpdU
pCXAXDE7TZQHnyL+syR7GDMNbgTqkzmYGCa/x6FXnwJI9P387ubCWDYXxu4Ft6sAicSQqEPf7wcv
jAFLFfV6bQu7BrGa/KygKu+n6SIKk0t8WJ3HqMLNS17XltvSW7MPNgnIerZZnFcHQj+sm8g8Xyzg
/RKwO0f/Ag/WjnnThqoK9ze/GgiwuzsaqCzd7QE4yiI1HWWpYtG0dAd+awNlWrz7zN722vsTN3F0
DsuvLdnZm3yAMNhcP6brq2MX+hSiLpr3SwjYJvPUNGB8sb8dHFEfgabEOP+Gz9IsXM7CZGYxckEb
GlZ8ggLJaS0wHv/NjeFF88fXi/nNrbszN0JKNatNcIgmm+b0tD+NZJSaUIb9yKiW6uaYYNuNt2z/
Jv+QrxCMeWE874+/XBtB8BivQTZEAHac5RjIRc45ACEvZ+ZxGZuH/wzvw6/5F5j37bg/2D+JlvkP
eATAIYJ+e/v168cPr2HI1WHAh3C4r5aa19H65XF3oNsNIbqINu/4NnPeCxo3XelRzEMoMfo8pI0m
eYLq2dMv2SPcutg3oQ+PBWwNpzkg2vZjAIZWRIA2760W6xvIY3xcRRZ/ewdK7SH4Fl39Oc9yuPBl
lKXTcBV5LbYXlI2DCjgbCVfgccyD4JFwJxnHPDDqx8wm7qJ9XbcavLOd4Ar3FAJYhul0PncmP8Cd
Gx8JZRA0jnmIkUhSLSrO4/Nvv//y+e9fu5yL1OOZCybjmQsZ0RkhPJq5cDnYGV2AXWiE4TxbPL6F
1LSf809dZsk6cpgrunWkcBMotGjuzoxiLSdwEz+AWKm5HfglTHIYx6veJCVHL2CSaEyiVI5IfNHx
7Asfj+rlekRnJMZDu1zxEc2FjThGSKrECMn3EiNkBNMRCTXxguoEyaez9/RMf5qnhla+xsk772Cv
hP4ly0auh+WY3Cs6orkw3U8QjbqDaIA1IPoKXrkLn1FetdP60jCJzcJzRBDbh8s8/VdYhtnPNOYT
wjzFy54PvYKuRdnuDMqLMKgQUPqN/M9jGe/twi75FU3RMOJjvoikVYwM+t0YGcoftHVedvStpOYI
C8P4HI3JinB2a/NeiEgYejIWYLd6YzfL67Zld+f4z5CchxkGw8iXA3GKTd2wyppNKBad7HaFrcZU
ETXU4LJJgdsRRnYntdgOQqiTNT6hB+XZmY4iZjURArPB9peyoZYtmRq72Nz7l0vRvTe9ClXIgR6K
EiT2WE25kac/peuru3kGWX/PLwYuv9q3zf7Bb0CrG/ls00sgQhuBXXD1WDRtf/qbc2hecz2PFjN8
+ffoW5GMYg2DB/gmsFDMD2jkuv0ouTxPwtk8vkni9QpfXkdGBEfnljyv4gdyGS/P02hhvv3pA/Mw
HyhMohBf/lecgOmxPD7cGXkPK7mdT2EpOVHBCiI7e0Dasyv6llsz3/K3s3VibZt4axpBztvr86f1
/hyuVtEymrkC1cycBMdSDqYVCGVkxPYuq2Lvsu8nqKa8qcn11XEsAYSgyp72Yw9xZ2I4Ysb+8wXz
lMVxsIiNX70KH8tgKTWu2sFGVrsWtW5sWpScY7dnwVSzfiB95w8+KcWdys9OkSuJoPV76W3XbSsi
oD9nala5sHnYS3Mcl4fvn9tnn2Jwje3Tt9klOr8zG/T74yq6BEVwsVqEBz28AVJZKiJ0fYpx0uh6
WTQmP8GaxqqiasxhCF5FLPPvRSxLRFF9ChiylcI+23YSOqBcC2+MMYeG5iX9zI1XV8l9lNXjoblH
E4BJF7pbt1MEsDcctzj4GgwlylI6aaUOdrJKfGSjtbLYaCxbp7EfKMmLnWWlClVZwYXI4tVmKFfy
kGC209ixWK9sYvhuy3Os01pSn0OwWeyJPBEfwx8Oq7oY9cBX/yl/fvmPvwUPt8keze9PyiKuDngS
GAsxwEkYZTvCo5AIe5Osd2EKAHy5qeo2URW3qH/DHT6hmg1w+FKMSq+XR/wPn/hU5FIwPjIeoBI8
1CHlkZKeVH8nBrioYoCL76YgkQrl1/47uJ1yAUgoLit2rJatswFWYXabBgiXd5Tk/lTCKjSGoPGP
10kSG5stSgPgVwuSmERh6t4ODd3MGOnHHpZOe1gaexjpbrehIGcnEKYQJ/FUZXepCXKTSlUaJZbd
3dQqwYccXeGxa+rnPvd/5CD/XstgiVCDUR5SvpguWQRhZjTQ1Tpz8hjX1MrcgVaq+Ji1vqyi9eV3
o/W1IL5D9W7YdfSscnYI6UZYF97Xqbt78DMFGYrTqgEtV5UpZswsCecLi0OzCNNbNwwvOVkS3OWK
5ZD6W0rdj+mm3KFMMB6HIXJF6XBHPtjQkgmP/FW4KW74Hg1tKwZT2VLpF2ga+q750HIwuSal8O6c
T43ehrae4QIkzN3KiWIlAOGxUkfVKncVuYEQ2WQn+/yPL79epuup+V1qRnN3DIAGXBj55DSLq7Zd
fskFsTQL9yNNbWW3PeZnT21obD2fXTJs1ucwkwkasZmsqpjJ6nsxkzkVfEBKwPwlSd/8MvwTdNF9
moRXhEWGUD9Wli4rX6KofXs5msyCvG/jTtPfg7aNDnOLUxu419yzTtiWlN1ETmWg4RoJS9+SODK6
5zEwE0oe3aJYqBqGbYX6ufJFO8x6ZizMLkzMCgNLKv2e8MZTzwsEU9C/7qQByBuslDpW66RPnLHW
rZd7mIqRS9dkYVuGvrm42IzwBgRV+d+H1ioJQFol8SIoxDWkXO9hoDKzVxTIRJEepm8ERLi4jdPs
jbxwTQKxXidBiGsWXIkXqLG2LWM5vQL15ZyIT12GJeEjNvJ0FSNPfy9GHtGkC94JoFy7qRAC1ZA9
ZAcJZEpxXylrp0v6kPAplw+XZAPEFRtRV1I3aQTpDssM7hqhq5OhxFtDNult+GfkzpJXFcvBq1iV
URYGhvUCWL5RtNdm6bfBPw2pFvKnrDOphpp0X3fwKfSPMP7t3DDqk7K3vdPcyJaYCLj+bqDw97sm
x9l1vF7OdgWe1QsQxuB+DKkkWi0eXz8cRivUhGH1olVPpW7lRQP0I7nIVb7xy8evn//48v7j16P9
z213Mo08RYD+KnjrqeCNEe4rZLZ5Ewwic0zrqZn0pryiJN8RScg4rMPtFcwaMDmAbqzFAYL2Rytk
jXyY35/RD2eEFPLWPPuxIPv8fXRG3/1oJK95tRXFhlus1XBG1CyeroGHX89igNo/I9r8kaNZH9XQ
48Hbvdp2a/P+0YaySnxv859MiPJYWHWkosp4YkZed6oQH/Lb4qDofxrMb5bACU7NKHDFZrVyJPBT
+RWE8SMkNQ+CwwM8k/BMEnip4RmDB+35noLpJuRp9XgRipov78PFfBYUSXTTpOSyl4Jal7prk8Xd
qMkGhUS7hRo7wojyZQYRN7NeI80W87QkVZFAhiBDxDvnGzlue7tAp4B7c97OlB2am2d9i9M9Lj0Q
q+a4Ht2CElvPgdIOicNJF1wwY0aLFycsntlrFYTBRozwjZC53pUv9Plvj5h31EbU/e/XmZmGGd+M
bmZm5gUvaf7ORelsCJsw6SkisowsJJrR58G3JO+ml3fUsC5hML+7CYrmZk7RBglLBLf2h04IGtu6
xyltsIROTmrQCTDmW+KUHoqdQi6IzMmAoZxMLzG0WtlpQHfx31+/XvxwoPWI7UUmWm9WakRxEFo3
+eE2cWdigD1C/G0LPnCT1UQg3tNSMME10/7bRJKI0p5y25fx83BlIVgh3unSnUxPGMb/5uajV41B
EWZNLa87aFZm7zmhLiCZBtPbcOmWQVhIPqG8zXXvs7hjEkVLwtEDR69Xy5uDDopmJPxXlOOlRTmq
9ZU/bmE+tYssGMd24Qpmxue5isPE6ZFywqGwesCrm6MC8Hw2T8OrRfTsIyWd8y7gXuRi9ybG0d2V
C0R9Ce5lzvx7EfFytFLCDWcSTyUDReO26O7KCB+ISTxd7xoh5FSSikHswVdpxr+iJA4W0fImuw2A
h9yheCgCq7lgZzvNVWJoaYeqHd074baWCoG9iXPILCyX6MT4hdWgek7xbBZOb8Gaze1b562GVgKM
D4+XV7nbbKS4Ky/HGG5NMhie7aMVymlgpGwA6QfulEwj8iZbRNFu18Pa29RlK3NkvCiBxUQz31Hj
ahL1tGgwamkRPhYxWuNF5cuxgdvLq8g8t12+czmbf5tRaPPZ5av8BRSWW/CkV3m3R3gNTHn56lm7
xwt3s8dXxQ15aIh98zV38f3clqvfh4u1ee2+Wz6+QbP13d3j6/Tb9Rni8FUX+UB2F4rZ2+ftJp+7
cz4nWBzXobriSBt9pUV7wgUhBkSwzDWoi2DNI6ZM+JZm7pA8bVYo/Uy8lEY7JAMUHNR6y4wDa0c6
SGJnT8xNfeZI5dv2BLzhTl/nEyFRu22bL1frwiqM19lifg9wdFOb0WZe5+HxssINzNWkUWV9JRG1
XC+OmC5GTxDRfr9n8fTXGFJ9PpXtMrblfU3wVMqPdmdQY41noTtMJyaCqL/8thfmtxHEkA/CtHe2
QX5nC7gjzutDJmsn1pxoTw/0EIBt4TCojbuCqaJoHEbMroR4sRbMGUJVbIThLJj6EzxuwVAp2+d+
R0tA/AuKl9bNdmd/aXvDLnznFjgHo1x358879SAhzRZXzv7Wsc6T2QES9X/OPr1PjATdHxh6TZJx
eDPfvwMzbu+lGuNLyLWrVN6kKvMGxGTmS3jqjGSaMWklI1GV2scWDLi2ZYwknfBK1zLKN1tyVg3s
VHm69eK4xYnWxrdyh8I4mTB6vDebqi2LtiQG0qiqdGnFSI5eVpwxgQahI6EqhYbVX67HeFwPWi2Z
ubqABTP7dHo/l7iiF+KfTCWlehj+QMS/6OsxE+uMULvMM/ohtQVNXou/mOKtT+XQxHdfu9hsTeRZ
/NcyRUvYxINNCsGhy1fb736T323upXT/8OqE+UVAOkjKWENjaO9CMwVg7oWNYTlT5DXYBhj7FkWl
IB6Uv2hOpJ+640RKaZf2w9kHdKY/nX3AZwrB83cf7SOxj/zZ+2/tI9rXWmCwMi1bGRo73nnOU27n
nNtU+2HlxL+Vs1oqj6iA3FzeRHUf701QfvxEGm4QeFQ6uwrY03Oska7VNkFCehLakIe8QeoMruKZ
M/efEm1+ynELKEOm/KVTTZcqhpATDePrS9VVYggoyR6LCg5CbLY0sPZl9Rr8i4uDCjcQAawmvbWJ
j2Cixk7cmFCPLJ+X+kFFujmmAv7HyfjaSOQm5ui+j2DHsy3il2bAG3dBFWXaAp69MCbuAmIKa8W8
U2QOl5G6UvAwN5wghfKm6EEIuHiuuJ/k5FRHls5svKP0nxtz+Rt+hBmCekjRJOzyosrBqns6kjCP
kqwoLoIrBndbBWrbOyjvtJauwuWmcnFDMHBNcxAGwD+c0XcXF44SRQ2gL7JSg7XREkcVtIgNRfjt
LKllR5RESj1TwT0pwyN19kQCEhl5qXqwLk14FjCC6vYx7ugBMoSh4Nh5QhQzG0ofXqgcSBQKEgWj
3hQ55txnZP9ZfYIDoymY8M54nrohkVhFXKY9rE3YNmMt7GxlcWOa3YaQnhKltmNi8O12voAGWfPF
Iij+ypHoiwkU/CBEoSK2PXVnSRjY4FKUlQSHsZJQ8C/axfzW6W2ahVkUrFcz23snia6jJIkSd+zH
2P81mbdFmpycYGOZiT4vxqlbr5AJw75ibDlU/rFtBvw2QT3cV1+HhnJnOYCwM6fL+NZU+MyvOA5e
vIhv5ksHenE1NJKah5xMZ/E0mBk2Nsr86nEVAkTEVqO6yFuxikDm3W4HYUj1OwnigpPfncNVOIMg
9wAzIQJ1QB7ZoxHqYZ4U4WRCQSoqlm5XLxQbzg0/VL/nh5bPGSFu4+csIhA4C1UQGNfqfLpYZ2bk
y4eHhxwPBm42im8yv34OIeqAIeASk55Pgzpw1gUdfA6adBmruFqso9fTdN9yZ2gimCL9Lp45xNIe
AGVPYom5IPd1R1KpKJV1SyUoVOCDHwPGXLa0h/KbRmPr5LjZztUy5UUG51LM5qBOw+U0Wlir6CpO
SmD0GK8INdvgdNPbKMq2KOuFBiLufDCj/HQD86wEnRvSgC4pkudPKMMbcNANWHcBDtpKXJgRzDQF
8ymtn51gFheH6C58lsZ0xqKRymwuGinDnm/gDV/s34WBPQL3YaKDNJ0jpOmkTAzWsi+P6ER3HwnR
tiY3H6NgA609ia+1verIxVY53iImSExYw3B6cwYg2ie37/4CILrzxbvrksVE4J6k9RHNzBTEhMUL
pVIpWh8fpGDNANQjidfp5irTDdmkm6n1Uyd2fxNcm99U064YYVo7mtX3ib199/6T+chrs7TDQ6PC
ZyQOzi+1AM7QxNERjgtA92DUiWRxrzO/bAFUg0oBIn2KPt8uFl8KYNCfy+mTAJIqrWRkaz/06ZRr
AExTKetFV5SqmHB3X3siJ7RS/ZEeJx+w4zSpu6FJWsn+aUshRzSONNxWrWj1JGPscoUb61NVtcJG
SiWU1Z97icNa3sSaCg3/OyGMvJKykm5T0JmyCWn0eFgWbDFI/28dJpH7xATthK+PDJzfq0EncMZb
8xWYQJvjKkMMh1L3apd4vgjG6c9BGqHgL5teOK9nJPz88e2HCs2Z/vcuym7j2bY/01ETqvg0fPi8
2AW8M1OYGcZM+Jzq7rgHZpsQajBGInqUZ0IO2mXJStf2vo5EcjLKfaF72dcBQES11JtHOzuXxrsK
0JEJFwITj1bw0YOhE4nkKA9GHqpH3ouZccQA5cJYwUj3yTYIjVpHJQBwesSiYe39ufl1cBfP5tfQ
5SKdL6dR4IyaKtusTXpi3dNRaVoNQU+37ADIKPG0pCpBZ6m8c1iWhDb7p4IRL+GqjZEedpU28Y32
6XJ5HX9e/pbExipI04+QQlsanyZSexjPloLelnqsWrOKXbirOX05XpU7PwxytriHJWVRYlv8QLph
mLmBFCVlxrcjvXG28U5QjzynSQf7eBjMJEpjRMVEatmExUozZrYZZmXlDhqb/7T1IuE+xCwueWoL
N1/O3QxHAVVEN5Bk/0zzkuft+cHL2zBZmjM8zO3WTBIyoQx5HimJVnBRfzAezTs/1ItbnoiBFzLb
hU1L6URT2t9gkisPNHITr7OS5GFRsQdWVeWSD7Z5w9pYNn3EkTqzF84HqJ/Ox84TmCeK9TD23AgF
aDGdAYhANDuchdyTAMPMAqO9RNP8W3qcSEEQfA/mZqh5KN5eMBeeXt5YyX2zo4SNzjaJyVQuTkmf
mp5DimYTIIoHK+R/coDgUOjbp7XwZlpBX8GNb+aMqsPpCF9HU3K3qbjsdgQqaAdm2+7uHdhwVNjC
baU6XpsSsuu1OePnYqKwaq+Wjy6OU8K7HgIJ1vEQom7U+bc/6i4CN7kTdQiFYPo4Xbh7HFikbtyR
xU5KMRZU11tXNyJcewSmJfXMofkxBfhQ6jDjOHKCm+KkLaD2NjBuwQriCeGds95OKc05OKhG9rB6
FPHh468ff/9Y84S4RN3sH3HvHxM1oxeNVlV365pSRe7hC0CxwN0vi/GaqQrOuPQJe4F2PQTHknW9
ClFziH/87dPnz+/efqk5DOP8Zdi7BwaG7awtSB+bRKWfHJU8UX4ZAxzeXZAD5YZlKQiC8QnRuof1
Ua24b1lTlhbMjZ3AVT2F9/Xj2y/vf64raJrk6PV4JWUvHF7fZ9nBbZRErPPt4bTmkTcZhAgP6aFP
bjvcxyTBNHT3jieSABiT8sOmZvA0Su5PVN0zuMpTpGPvV1Ldsf9BNde+2T+LN1uX9w88NKW0NEPj
01Xu+g1Ms8LQ5SdltOlE6pqmaPxLVtsbPZLPc7iMVqLCEqCc0NOi9HDgmoJC1BqhgYsteFsi2FLd
fHkfLuazMjRtJpkxHertWX1KMMpHeCNr59qKtnm77hdwFZ5Iir2RhEuBc+MDVYi7tCQ7JDombEZO
uwmVqS4Jl7P4zh7MfZSk6zS4i+7i5NHoKyP93HnbUKp32rxruUh02nJtyb2Mcm8i3O7i077uv3YQ
e2CUiO56fbiz9QlX51480afzZbvbUK67FvdUNhEeldZH3BtaoWvIiDa0dvwQId4vgVa4Lqlt7bjz
r5x+MfTQJrjjTSWaDkczAndFsKpE5MiuiVRhPCQPko4GxyUSR9Q7wEYRYtqEDUcR4eCnwby6ZC7S
r/oRmHZODMYKG1LHya40EC/ZUsI631J6tH61I3e+pipvcK+AsBqOUBQVHa+Payr6lfVC8AGFGddd
E4wkXW0odW8okZR3bV8eqZ4RWNTmQ7/StGbwqOnNH2I968EqiKZ0b8DbOVySPRefqfEM8mIo5+5R
Y6NQIsSAPMn4S7XLuOqXJLjiPZA6bx/qa0MOqGf5KZpY1yeoB/KggxwFMYdesmgYFu0qShzTYAJP
GNN9yDFCyYCHS3AbXs+xVYNZvHTXFHEyqdBhaWeERpflWKqeDXjMe1gV0QNShkTeufB+PoviihiV
AEJDu7JiWEkYibAh/foeSEojOYRu3y3Aen23Yge6WxHatw+O67jHR5dgi08nDCuv34g1UYwZViDf
Y7SpJJRbIW/05J3idvwgb2VTDsqriDYrZUPGdlHr9T5TyNuVH+kzhDSA34t++Y2rIW8kCOpburS/
Gl9G3xbzZQQ4pdsm63M35qSRoQQP6iVwj2R8sm0hAeNSdxaGL5NNfEiDTMjed/j/2XvS3saRK/+K
8kF2+qDFOlkcoDFIupNgFzuLAJ4PARb5QEmUTIxEekTJbefX73tF6mSRLF6yJhPMQLKklqrqXfXu
R9S12cbtgW12q9Wh23zBrpMj2fBQNeXWOmm8ZDnijXxfXEmPNo+xEiPKu8qFVYA9D4IYTrqp6Kov
fCSbDqetKqEyT1Dy6Yi1sf0usAnXZRxuvyebX5xttA6T3dYJNxs47Hy30VOcNuFiFS2ftiUNf/UI
q1bBFus6hMOc+XmwDfouvKWgZPqdvNZVqONl/Sqo5/dJmRWdVLDQ1+e/EQwZ66KlT/pBj56MhrNs
K8Y/C8l103E7eGUCstmEIEMFl2BEyJ7OmM8nd8J0FjyHzixZ44DLstYpeiSTf6uGcedYgK7aSXfT
rN9/+cxv7Myj/J6NYubRIYxizkTP3Hw6034/Ukq8vv1rugqe7i6G3MOL/Tyq4iROgpVdfhtrpxEp
m2uKOTZx6s1tdk46erDX23P4Rb+6bNPjYSW4b3MXk+ZLO4emNjhb7HX75a9BVNB1RkThxL/hyKKM
CuiH4vRvlNmcec3B0YgIzFqRVCO7sgcyABFw9BxX4YD0wppjNptHL2MWHnjzDDcZYtgHuJf/4Dgm
FqXEZcNgBxvBwCvzZcPRUpf8Smzy96A4VQWrEzi7AooqJefjFjXrB1REvj4Fm69wZ/7RfRXqMzww
/fDhw5jKMWWvdJH9wb1CXZQHeOSyq9A5h2FUcUOyEbNKBO1ANSW9IqTNCNGKlassye/R9slBRUVX
gOTmpDN9c2bps7MG1SbQijy2hTMbQJLZTOop7i777ULrsioXuzuwWIuMcs3HMkN3+BPutRtC34k/
7ZnTAab8dZdsCzzJRoK7VjrIcIoAJ1IOy6Yl/girktrGbIqeiXCDWV9TMKKeQvgo1cyp88BSJ3wJ
VuYAPFMjSsR78QxXNW6RG7lokJYLdIw6gttGqtmQ0SqBPZmy93AwsacGBFqpKUPImApG//PQ7eHD
pfvGRyWFePJdVT6m+EACMU7wFghTZxtMnXQVpE/ODPjMXHyrJ6HTjpB4XgUACGzAi85oUNhWq3Bp
FoC617Uayh45nD3jq/luvX4bu/6k8V16p7+a/UBBuULD2mdthHgT9JndgFZN0fq7zqI19uR91L7j
NLvcstB9ilop0nyKHntsS6z/pXnOGkF/nu/2TGWlNMZRZAv6XlA6tsfaJGnqJJtoGcVVCeJE4TAp
tz9F+hJSzyCBjIihFCQAlb1D6sIPexiGkfvgD17XH5olGu9jGOHWAf1qF573is5TjiW7jnAhbXT0
giyh6Joc6ibQ2630saurMYnxMvAwrk36kwu753mwremyQ3FaERlMOsCHMTI/2udVUx+pgqPTATkv
249mPW0TrINfQuf1aXMHyPhysksg47OQyGFHeUikAD4xklxdwYgo8/XvHf1gI9ACP/nAT4q08CM2
n6Uhh+Vas9sJHTtSXoN4qyqafBxISW6DeO/jJA7vTVTqdTazAT1h1lsvky9IIel74OXoWQAgmDUM
syMQu+gqm0gq7YSp8m0d6EgHYpuJHnhrvw/407gTeP+wF/13rm4UzA5sH+2/u9SiKLU8k9QiyirX
nQ6oh5WKwEBPc9GG7SZZZQlH2eV2kaiWq2Cky0nqJaPZ0+fREbNyclIrHdrM+455sLLkBKedW93n
tK0AsLEyKjQOn/k285+6i4LTfdZscy8TjslJKNDTcLW4v5QNl5kaBcvYH0nmvzMH9WzJVOf7tD1I
9dpZPrpmpTaL9yksmRaW+gPPoOsRsJ2IZxVWH5TnKhQln1PLKGFzaWgUggwb598Gj1/e+wYev1Qr
wRyUQvx78bA3FHliiKlyajwFG4XQwWnhqKTjju7Kxfn9Lk6DBVZPYBHFfaHNP9Gj24cTOl3iUYVZ
a3wkOPHFUMhd7GI9Svz4RxWmmWeZLtkXpgvba492D/P//Z4lZDYz0uhBBzWRWjVgbIW33At+6i8v
uRkU0wm9jfdRHKGXv2O4xpmQ7lXMvyNlnAHAQBU5MaCoMBAHvFPnfiJg2Fulcpar+SlG6TCxJguT
p84c3YVZ8wFzX25fj9DrVzRFYAZvnCz5GmRTV1cyTtBmlA1G2evdahs9r0KtFu3LlEyEjWlBPunJ
DgPlMP7F4H5zbHqz90jWh9PnJy/kEHJs8zP4oSnvSVJi+UyYiXBQ1Z6DrZnwQYWgxKKXO79YMgNX
sDl1Ihzec74H0daZhgs0sKfJLp4HmzeDz0YywfAPl6g2DG9H1jY1Wwp99W6Lu76kHOFE9yyrRiko
3CCmUhzXrkN5F4qmLkZk3VgOpHSyWmWejmABtlmWfhj+uoteMJwCG3rCSoWlTnOO5ph1tYjgnxnd
1IQIzCvogrUGEND3OpAK7Wyy6nqYWfi8zUS09v4Emk1ASE/26uM62aVh8oI5z5T+d/ASZHbQD5ns
niezHQLpYZ6sgyj+kH0rhosG//mP6y/GeaUSA4Eu64298Rbe13zBHeME8dyZJ06cYKcdJPUj5X9/
wvKwMJ5jYV0+hNc4Xxir1H01FCce9QSj3uYKQDC/osjX2NTU1l65VZbdmtsBDAzPfXFkpXVALPPb
+4Lcycbag04Km7k1bWGHCdYItx78qsRFjUepW3OsmhykivYlX8rKCH9EU+TLcELpLoyDKehh+Y/p
RPn9l76Qu9MJYewvDQob2NfJ4Wvw4hme/msBVPqW7HDUWBjC4/YpSuEpv4g+o1RP4OF4A8CLbMkP
+CGcDh+x/nS3fsabY6F/BH8q2z78MQ3h2J+z9+PDxwhEePr7nx4f//LtATf3bKgSJpjYbTHM9rfk
MOOe935O76bm00Wdbe0egpcD4SLpnw78OPksE6TDslFxRlg32WAlbJPvcWkmkHXFL+05o8CUOOD3
v5Hz2Cr6JbeAn3B+8OMABsNU47DUD0FcRUeMu803l89ahYXXyRz19jkoNps0Mqe8C+KD6TfkhbYM
43CDpgbev+VUPxwowVbADgtdTLozcOrdY+7Zl58SEONfQXhTTBD83+QF/3RdBU8u+rRcBg+Mwcu/
/fTzpaHJR9z3rrQp37PdEhtiSz8D8ubBWxdYqaFh5cCWnAYbYh4feEN/DaeNNtQmOmq/IZc13RDn
ZMgNMeenYNMMQP2bGK/pqkIPx4FxXA2ps+muug+wi4IhqEbSLm3PeH2A1qcdhhXpZjoHh3ddIE/p
zSybzIti7kjqjZhsFDHU6xwhtQii1W5jjKR7AshDsEGI4yQyXugORTGuOMiq0XpZsTJBX4XsTBs6
NIWrnbR2fng1+JL8ESN+y9VO5EH1ukUW8LGf5aAJEttNEKfacYgDFtdLwy7gQgV4t6Kuc2hr6zd9
Bl7p0Cq0OSXZ9QvGAnlGOqMY7ed0pxMQjb55IFvPHVJXNZ3YkNTyKc9WO/HpF3sKnYYBjl8oNCFC
R4MOyuy7pU5DJ1rGCXw9s+jWwXb2hCZdcNia1n+1RvxpTL0z31ox45QzBjzI2uhPGj3rIP0lG5ng
YG7oc2lX044a0eCjC45O3gs+zdN3uOhMwBmY9MziFCMKe4gVZTBoa0RizrY/iAuk9KxZjNtD+5Lw
q0gMo8AAmmQu+7fiZEtWlNL9LXMJ9vJ9F4KlAzgpzoikIqyii0z9q5FrueaGOT6Cy98AAaG6bRaz
bcxU80XkhK/P+jY0j20XYIHKQWhmFweLRXYPT9/2auhm5pASNV9yddV90BJbVJC2/sR1uA0OqQEp
6L2wHOgkq7xOwzwKi8AtZ3NwVnmn5gqhUzPuxOeoHLZcDR7wOGcWhbGhLzpLZfNFgnm4CoN4Pg23
Txtg7ofZWZsITClixAM5R9seIJnvYOfBNE1Wu21YOsFeMMsuTtU4MS1XCLIQTjFgSoZYjRaX8whY
8awb/HLFIEjf4pm5pY/njZhVFK76SOHrNtzEwSpf0QA8f6R6AJ0+SfkicqTa8Iz1XaAjxkeff8Ez
QAXswapOibVJhFlgM/K8kUUPOTEEU8P8vjbbS1S92wn3AfaTX/lPrB1re/GmbCiLbyQ+3BvJZ9oa
JT7vfoPj2meSqDjygOoGGZQxGwnOTRJ8n7Wb7qbryFwPoNCUEI0WyNB6cSDdxTsbPQAwPlVMigfz
sHuhXZK06Vhx4pwHQky3Os4pagO42mBLMYjiWQ3MM58kdnbbhcrTqp1YN7ErzqHA9GorG8G0SNYG
3gnX03CuiTt9WTqgfAVvoCOn0b9CJw6XgK/Mp6qdmYVCCoXeGa/5BobNsLXzrvW/JbNthVUSSjTf
UG+ag0JlTPIOO7AUo0ZbA3RNZuWI5u+gCVRf7b/Hy5y7VgPueQ+XeYcL20RpcAO7ig3IZ8sENY5T
bjMky/FRqwusL2YniuE4JHcoZt/HoLVwNPI78S172l2P34ubvtNfL/zLXBwcQQwS4CyxFl7nP/aI
v/U7ExCc6jZSQtyqgKilTtTShXdVGdH7Gaj0RkLS68mYfrdPqMLO/lwOJKKMWSuKWNb7Xk0o2Yia
35NsYVyNBJXkppnTyI7oJ6bsRkViiRCkyrtN+VFi00kQG1z0w78nwurP0VLoJtDmpoJoutDq+vah
5EX5Ju900+pw+wXfN4qIyT8ex4o8Pk7OBUGhyag1v4l2QHW236NZ1lEgjDF86hA5jbbOLo7wlXks
lARmqq5XFa1B7sxDwzaw75INSHeuSwUV9ZCFy0Z6wiploy/IGmGpfO2DHwaWzcnXvGk7crYBu4fK
qbQKObYEu1lISNDIxM1AuQao1B0rf3mA7T5lso6eBXetcnGaATaYz3Uf/jB1cCCm/tssFZgu1R1I
Khy3cRiReQDFS7D5NE2Wu3TMvk3G4utkzP6sQTemyh1TH15Wgg6ELBNWfvTWoJsnu2lVcgFCDyfH
vzv0KG0BPZdb9fVvDT09hLmUuZHwlHp/0LluC9BRjw/Ks3VZLRn05A0QntcGelT0D719q9hSgvMp
SDr3vW+TwjZbm6KTydMYC47KYa27/HK7EEFjYL/oLJh5mXpEpbwBUJ9u8gLQh6Yp3+Enwj+CCMWP
4On8wtYXe7qZYSeVbDYzdlfRtn853HG2JAjX/tVUPXksMk9q4Tps6L031M+22IG4x1QG62eQJrPk
+a1GqBCCUoX5/Suo4eszACTVjQd19oK5Fzs6wbx311RLNnuX/5PixyWOsPt/PD7eX3Z7A54W1LfK
w2gG4ihOI7AcMUQOL82VPcqrHUt9Bfiadnp3HEb7VQ+jRckQwdMrEmyUS4rskxzYL8vs3VM/4h8c
5+5X+sVx8GU28tQNxmya36zZDFQFb7RxUk6yJYuDAbEBlBVGZQeMGnunCypxgkElRuW1McoKGL1g
DHIO2jJ8IiazL7i2uHA9rPyxSu7vgouy3gvY2vCmUHF6exT5BacBL67FJlQrUaR/1MRhsNEDdbfm
O0XVjq27AlouNtngLtF60tlL5+B1epwU51KhzkSHAHOlGSpou5j6ZcldjASHQyo26PVxMNkQYHxZ
jKAEPBNBqLzqivAff3dZe46HguIBhrhBYhY6jKPTR/DrQo8I17vuiu2iSJ3OSLz+FYHkOYwP6b5G
m4VlrXsbkGZ9h9OyZmE90nLxYP1ElAsF9T5vIRCb56A+vJa0cRTEe2+5UU9EEqc0WznRm5GvTrCu
8ytJCraJVM0XHzIrlglbfe4iXt4j3qygRzi68Tnjg8PPnLwCOhZnwxBOpd4hKa31GFwNSZU7xQpW
wZRVX43mUDLCRsek3JuAjbnnEAgcwa1a9jWDSKWUI64eCdB4zZu4MK9xVyr33Y3YumuKc9U/H2Gz
B3OWDQEhw3s0IY2L/vhr7uyY/PwUpZ/g/+ATfvopr7IqmnoE53myQeBgHtRHBM7gHQwOzBIOY/bn
QukrqFh+jyqWbvyRb+8wPLqQS48NQOgwCODmTI5hEcAdPVZljwb0wK6Xx7iNefLBIkmyuHnRMYrT
O1vwKfziZTm95nvW108xNQzSjLeczy3nyzZcbzM7VoCWLc6429QutBDnJ/3+dVi7ZiJGHYMZKtkZ
unGZVRa/1whquhL6LLnOLPGZAmarlvhe/0l+NXl98CRYTWIfHUmE3BUAZ45H4ECzmgGUwwBOg4fN
smePZc8yf/Zo/trPX7v5M8+/F+afk/w5/x0pzr+///dU5c+L7FnkrwU7faaSuuf/jvrn+9y/33y/
BQsM8O5ZKQNd8c7NSlk2LvMGGOZ+nCEkQ8PhEVCxc8U8eyT6UelHTz/y478JuX6H6kdfv5P9LfTf
gTPeqXkIX/YC/Fgs3AW8Q0gw3kmPzuBRsCm8TxbT+0pm1YMTQW1xr4A1YR7NwvSsn2GwZq3tl+32
7rePXkEJp1dAr5PuNptkiY6b5yAqTdzCFlo3h2zT3stT3L8pBgj89o38pSbXWmFmplXOVlfgmwPz
fm1C8O/mIrzGBShGUvpWjYlboDuYbXfBypkl63VgdLXBj1Kf3wRvFfZ6wUuTjx8n7md38vHzx4lj
TK8o9gkRxK7DdAvQzoLVSqfWm+NaeEGRm4Dr+UZ7971lwXuBkSI20I2hScJxidGF79enhl0N0qf7
PKQRfb6oEnn9ck/u8iwhct8AB/DASA0isKc696w6krRHBDXHUuSIEXlLiKBViKiDO6LnDPS0DvS6
KSod6OJeBPHsrbK+T2LU5DZETnGzl7lB+qq2kOEeQdPcqm+9ag7UbGh3ONcEg7ngRpcKA9hWW4iq
E1z39Dn5+M9/AgQ+TgoXHyaIfv32p5//9H8fJ6c5VEijVdDDbqRUWAWNWkHvJVhFALxVotuWluQX
cvS+1/ik1JUIs2zLx5xPsLWy/F14mh5zPLvclwVBgUV/zGr4WQesHIpBS0ZuMexmrdzmmzgigrtc
N0K+6JaT9ZH1Qa8VLY6IvW+z1rem7rQEyEndFCkV4GykGDIm1XKOYR6uVdJXC5rIh5TVJWPo4duq
HXhPWkFswjB2ogUmXoSbDU4R3Q8LNREK90aqJjR0LZSWgelCgcOo0n1p7GDs0ordZSVE93UFRJhz
TCVjg5LDPNgGWRdjYzURSG0hbwkv5/s9TdNHQf3xI16Tk4LMPkQB8es/fN4n8k8m+vKsreXyJTa1
tGog3h0TzIwJXwdP26UBnkSuXpYlKaDE45iWrIhit4hv1ge+sxqbrMrGooIvz0a/DtrNMXOC8+x5
8w30lBdXV53TnBieN8kzIONt7++jZ2UdGm9jNr9E2/QpfBvDPy5oUZj1Sb0WCsxpemw2yAGuqSQb
Gusk8SoJzP1tBR1JK0ddd4owRj0YzgsWbQ+MTakeslM/4LTShzjZPoSvUbp9WEaLy1uZUdRTr7cW
VbI3RJa1KWOe1zM3ncwPLKMaBRYspeT9WGlMpXaH7KukMqYyMZTCm84qz7MWDwgNJ9ltV9FLmDrL
2WEgsx6PW2KRECL80bWuWrNJBDct927xDizTQ4v3XAGxnnYCSDksWGs6pcBdqrNXbwm0l1s2g7dN
kpB1owCKIzBdPqyeX9k0gHEdSW/J8/qyBOm3Tl5CMPkwCS9jcXMLcU+Xm3otVzvCt+m6TLGRbKNL
9WLeCqH6XTlODosblwQgt0ZpNZDNqVMj1eaEPeCU1zceVT+Ii3XPh7mfipR4vgrTFD43tH920CZw
KeOkP1yCMvcq3IfneHmWy86xjaQvbklWljf1qHOH1ErJHy8bfdQ6R5iPQtP1W5IcKE4zLKNKoyVw
E9Yvb9bOIgpX82wYhInWkK2kO6iUBqYuvz3Rhe43u8HNI0NMZ9c6xgkAitNDBPA44XBRtQW5bmOK
1YehTpfBkHQ4z7oWmlN+MMeLdJYpuRTJlzfGj6WUI8W8npcySixKcHgwuSW+PiM6A193UH7qNB+s
hqG8PUWl23zGjjPdbbdJbI7d4Txgm7vJb8+3VcVzqPYyK9Xb73HWDwFmJT5tfux80eMMqGCKRtt0
FcTGuRDEJRx1jtYrXVamXa5pmjGu/OpsD//KLFTe1qA+VOD2EyoQRJCu2NZnyguGDNMvPAGAl60A
X6M769EjaOKaVFl/JLnsj7zSbfhsGkvKPDCTvUHlxCZcBdvoBYtHnkKzmqGzxmTPx2XmWSags5N+
F+KmhUB4e1J1Xgh+yyx/cBJqG7y9LE9+fbpJfkG6LItlU6AOr6s4NcoySXpEAry1W5lG13AuQflg
XuulclvTOIrU11VpNySQTYx2KpY/aefoN8Os9V70GgLGt5B+D2jNRWQ5WnE6q1XJVHuplaJSi6Xh
+/sh3LyZg5TSsjq9hMJ0i4tsJp/p/sH5OKqDSlP3+9S3HSpY9ft6PrUGVBx+X0VxWJZ4w3x1SyxT
imWTOpOb7evgbRp+mgfxMtwku/ST/tKnVGdG1SotmC/MPCuLulJy6342XwNg9Pn/YADGJGM9wpTs
upDWXB5/3QWb8AE+uaQejl5U2pHnnW20ziah6gnTkdmmIUTQERMtQHeSCqAPQtxL31OuUGLxrVXR
cg9yxVwuzkd2kV0TOPMVhVllaG0SXmZTHFc5JzqhUwdGivvd9p9NqtU+0fAVALsN0WGTbOYlFzEB
s4/XdJR5L7FSKkvOq6nrxIbSA2blsPb8Dk8MfBhgXrC55oDj+A9CbwnUpl33Hc/6sSR35pCZAzb7
U8FZi4mNXHhXxJk5n80ntQXe74ozOlAMkrXFGvcHvgPOz2/OfcPmhJ5/u1hjPWOtDlk5Jxp71HLF
h8SXWe1XoGXdElcNEKG6t4niC+4OJOO2T6B7om4YpicTnuYWE7+wNE60UH37yHnC2eW3QBX20Cu0
LxZ57xKrQiWlRz5wOhANbIJohbZBXqhkvuJ0RQe/DbAbN3yaw1teY5OnZrtBT8WpBOuA7cbxlTPC
iea/Sr5rvVw3Vc10V5Prmoykcq9DDqy0ty7jPZ36NORkMj8wj8j1b5L2WLMSL/wcm8rvZzI0IsTJ
JBvhUHldAD1y0hEzSIXobjp4f6dBGs3MLc5Fu6hCG1ibm+xguxaf98h/pyc3J0zIkbgRH5sZRIUa
z8lksi/u7C7xKI7DsamaJW53nBuT1aXuRFYpEP6fvGv9bdxI8v+KvniCHZzsfj8CGMEkmWD3brAJ
dhLgvgW0RNucUKROlGxP/vrrakq2Hk2yRTUfm0Umli1brK7q6urq6qpf+dDuZAb4GZvRyy1+/2/y
X+B905yWJxwRH/yMEFo0/Y0gotyLmTRBPAymSnujPvFirmJypdBVpEKtauNiCumTxhpiPlpmcQ82
E+dt8jfvYa2EM7hlNpPueGp2oeHMlh3X9Cfm2my4qsN5csJcmY/e/G0KCExov/VLfTNIjnCAaDz4
5GXEfOuRn6ZFEZuvRL3ABs+bpcrDt2qxVk/uAJzutmJwqKEDr8RDuxdF0VsZ0v73y+iogVOgVWej
XoSiQPP59GBWVrKI3Dm4CmzfULvQ0dDeGmMR9LJIs+LbF2Mf/ngNcj0/P18/0+t89XCDtdY39rfb
MNZ2LmbJapbG5vOrW4yQeb3Z/rokY96I1mZ+7jbr+J/RIr61j/j2cRXfm189RekmLswYvv8SPUW7
+fnwVoOE7uKHJLtFhfk2zua3Zmrg2/skTW/vV3H8Z/xG8SY6aL/1rjxp/mgOmrf43XyzWH5MYzDw
33/9HKfG389Xt9tBnjQH4hOmBMfh9KF+jTNkVMILmwaFK0EwFowPpoSupT+z8xbDN7uA6/9+SrL/
scpy+40tT1vHL+sb+MR/7YDbvik/8rq4yx/sk1x4KUTjQMv8OcnmZrOwXWV2VYkQGCzMd6lNrTVm
t4jdTdmMycF+eS4+QzHfTs2SgKjq3deloTq9Sx642wU2GzodxtzXjLIC6PSOXfH7I4zRd5AiW8Tr
W/jwwRp39RsxrlRnMk5z8KTKvceVpc+5OfhQyjyF7dN/pHYQ01W8TJ1JVQRJwiaadSaK4ktSVALB
1KMi96hur6OsUDd1X6NuxWNyv/7dPKFZ56Sg4QS9XOVrs1nBRcnSjATmuQLAEDYR70BJm243ruSr
7pl1XlFoovx2zE7Vq3q4h85HCfBUJg3ekjDImeaHpXn5B7hRX/MN3E7G4AwBZIJ5WZjdP3qw7lc2
N1+z3Hz5b+Nkfd7trSXdv9mPxFn5Al8Nx+bllw+fP3/88RpILh0hHQ6nBiw8rkLMptt66p3XEZpp
cyiiYSgHnXraNPX0rzL11Kud4CVT74z/K64AzmaEU8+app79VaaeUZ9Sg70JONppABTNHMI+b3/+
xdY5HtwPZnGxmT26rkI59LvTLUMhbYI8kpIWer4feZlD9v0248HS3cMldGk41Nxz2ZLmSVbpPL7b
PEzv8vnXKSA3P6zyTTY/bTejBVzyBqB6xOCpWCk3Rx+uWAChOveGEub/YkbKWavsziMmCtMw0jqg
5FZDyrx0vkZeWW5mJV85w1FSwnbKL+ZmZSxOvngj5ajhAtgp4ROkDUJKep38qqX2ewkk8bstDSh+
L4/7v1fDelFC/JChjmker59tJkj6naV8C88+jt8QYfzutmoOO1Ya21LTaAZ2aZnsL9qXiuJ2SM9r
RzA62Uegv9TFWQuvuTNLQIoqU/f2BXiqFVzDikKUnbmF7clun+42ejjfFvw52yJAkQAJYyreELFA
OQBh4TaNVuat3TgAE+3dIlnE66/L+Nb++Q28BR+BxLWT46qAICc1ciFYUJ/Vws4TyTR+WVpcbHd8
BE+YT90+5rVqAJytfLJXjAp7hXS5Z+7IAWF3gZYRMW7B4alcS3Em4HHCtaSzoEdRPWE+1S5Ocs3K
dn19E82SOX2b1WX2cKxv8FalvhnfnUooGkZe9apYNIllERVOPAGlIe+cXkJiWaalTmdRNotTd5qk
8AEOqiByJO9DctOKchEBdxMXEzxxE2EE+DDAUwIqelaze9MrteoUPLakZjvYtJ2zEsLjIV7DKtms
77G4c/s7VFhI0kuZmj3Gsz/KCkc4BkYL2wzZHPI+kivFrj6Qq4/8Sv14pfBJgi+xPnA4RtNqRn2S
5bpk1M8J8+KTEveEYibJhBE0LKNCBWQ0rWaUcj00o/wyRi0CTcMaRcSvthKLerQbJ6cuNcU6IFNp
NVOa98gUR8GYql58YLml7JErSQNyldZwpfpUQK/TnJOrp513aI+LxvUukj/jaRY/5Oskqir+ZkpO
vHoD+vguDl/ROmbnuodSqIlgjARwcZow6gmW3GdrVK0kXnvuoRjwJtsS34taL+7i+dzQOIURAB4Z
FhfzdwH6spfj4crFgwyPOkh5aqFfRcunv4nvgM6JlmgoXfXKFHHyACfD6VOxO6e4a9vMCvS6wXRR
2GQzAKuIAHh468Sv4mUcVeicFFBE1JZYfNJBnk6w8ooX18/BKReOEKh5BubcK/jkonbvGDzhXhFV
1+PuXI9Doq0+zlyPI7jt4pm7Hmf+qOXjHlwTj1FbPXp0Pc7vBO16XOJ6HNVtmf3iepxsrXd/OJnF
bWWXOtegbKt3C6ca++AWOR+XudUYt3xc7noc1qrl45bO0ZG2zP6fU3ao7ZpdOR+n2jK7cSmK1m0V
pXA8jiLedmbXLmYFayu7J+eqIG0f9+zWu7Yb3YvTorC2Buqr43Gy9S78p9M+ybaiw67HkdajI87R
sbZLlroeJ2RbLWZhrSd3PU7ytjuPcC1Z4/K0fBxyrjHedmala3RYtbVP2mnbRVvZKacDxXhrNx1O
APv+rTMXnPIJVW2VEXLO68NpxvzbNgcX++uPkS2Ty7Iy/ckFrwgQ915dHBpI2ZysFiFKDgkmigWQ
ZVojS6GHZFDoy3WlKqBHtbI1Z0PyJ1sf7/f5S+v4G1RBZWt78pTM49xGMAHy+qIYDTH2re2W8Bzf
bSEmZ6u82HWtseWkkGaG3W1WIFCML5Z7A+3p7kIeOzE8CUa1cHuBiBM34DyjXbNPKjBVxERqHXa2
a/GoJcXhxVyXa4Ep5hNdjxV1TPVLMYW81+kb4d07y1V8mvZHKONyQjQNRAPwLE+JYHuYvHiqsnzX
S8pdfUYmXmC2BNVSybO4QQ9YWyIubTgg5wxz0olXXLKBrXrgXEEpWLPzqewnLq3Na7FOZoW7xAH7
3X/WUHDgum+W88io3vQxgbzJr9NkHS9ONZDTsuY/MPFXoDfnMKZ7AnEk7lFsMfrZWAa1Bd33wUwP
OqCHHIy8M5tOiomQun+V2bUZ06NTGO7TYu1ycVgos2n9gqbUzA69TETF5m7bGsq4fY/GEZya49g8
hezxdbRal5dN7v3f7lsilDSORrFHHXzv3TDdKdJ0IjgLOo55Pq3KyCZIToTSF28HrymHzsYkSCgK
L5grn50H15MqUrep8Sl4I9hzHwUqzgRSMlFe04MDOFLGK6VBSVX6U8ynP0DDxKyf81fXw70bKJ+A
HanM/d93o74z51hIt62cwMPRHE3l1vOSLKDG1BLcuV7S59LCLeckTadFnEHbTgtlYV7Xm1VWlF2x
8nrfnyM88ULNbWB3v3mY7W9/2kxqK9vWxE4ZtXULszQBDLDlKocT/rykDmVb7qMOgt4w4qwh1DeD
c1UeMUNIeG2hl1DRZnciWLQWp8XgmOfQOSpfOpXDmBrGWivmymzxU6jPnELJUXUQlyMB7SY8usiS
QzJbV8KZU+VUPoqggqU5C9OQoo25W/VksMItyLTiCEuJL17A1ensZdBrAo9CPhe/hFYqw/Njkpqv
UbKuAv7AyhyifIiwy5w9t6/HuF+L2RrqPr6eu6QHCl5US/GeNY8EYx+8LuIqdbEVbs4+WBhALYiH
yh9lH27zvM5cXLo1A4t0DZ3mkj+NQhgHGLCGbLj3VFiMl901UfPyMmzJSw2GRuz8Rtot7JLXGlY1
y2tmKBVGQDUFY4AzIYLRsSupXDpF1fFIUj9MKCIuXj7EK8uWKF9CxEUIQxalT26ck85LkUI9H9QS
LnM3jBYcKJlPtlzNHB0ZuyK2tbf2+9/+9en2bQrd14ESGpD5ZIo2yPKIW+N7JtcvrsjtRPrczrWh
VpzYcwaZ6eJialkOiA73Zt+M1lGaOtpiCq/oRJeTyLwyJIj2X+vuJY78apWI7pJXLlEoXqtDkpRj
yJ8IRajWcnJAdiaBxNogQSkVFPuH4qu6/QngnRCvY3wgroiXD+5DDCIyFlTYFSu+kMoait63jb0t
/CJAGFR0ABQI0HPVWfTKQ6ybrQrS0/Ig6moIzZkxoSw0w84jKOUBF4GL1UouCfV1/Gu49K3jh6Uu
QnHZVMMPCIZSh+SsbnOA0oRON4dGfq0iYeWTQEeRJ8d1WwSbeGV11tDaFPHKHBYyJ+KH2dUnXvUP
NQT2gV6j+fzw9oe4L+NAkKprqt9hF10fY9OWrhvlwmwcPpfuFxE94dWSbc5pVN/SypC7vbKCzJkC
vFIbeN8BXZT/7qNiXWIW7IMYpHGWRddflmVx46+vxY1X5Kcvy/jhnX3ah/UtZpTK8qef8tWtQCez
pe0OhRClzfn5hhHSCSO7Ks0DRuDNHR+cE13HBzanfsUtI8yjMq8DRubJLG7mg3HE6/jgymxhlg1O
qYeLgi4OY0hMLi4DbSZDcOt8w/NiPz5VIcchpmi5tDWANzOzXRgjnkSpvXZxXjGRCfPBjaqksV88
u1x/vV5EWXJvPNUTnChz8m0MoVLUBMeeZ9EdHK7jp4o2KJKZk4QKR2i5yh8Mj4UlOH3F3S/cnR+g
JWrjZuFP3BBe5lkRA5LFOl5V4EEjPWGN8QsH0SMbAeCVNgYPd0qvNqISDh+OI+Yokmfv4DOw+vGb
rbCY8ss0SjIXBiQ3mwzuZ7y1kqwceZWYMRIcN4IldCPql5rxvjjACGCwlHkNFjcoo/E781XNkrMd
barTRJtJvLEa2QM1FESsV3laHlmmxogl8dwNfakFlwFYtNNy3loX9u4rEG24vt6StbimVmsrgk1m
ajXtiK6dajddLCfN/VzOmesku08yuP5L83zp3AMxa8zYDEtQNfpaYenJRuihsPQE6Zc/QWWv9DRR
Pc9fv/RE4+VZYHqs3wXPUb/6giXvd0FwyfudQER7NjCsZwXt2YDqnukh3tFOX5ntIiAKJFFHZC1E
/PZPCnegj2iP+4zAdhz3uyypYD3vU/3uGxL1S4/rfvdhxmXPfpSPPEk4eXpti6Tn+QtIT/VMz0tf
AtJjuFd6TOOe9aVfeQrV8/xp1C9/Ul9Mr9zvbTprdaxIKQnXzQGIwX0o1OT7xEgJFWRCRAAe7W2a
9WHyp3hV6UMBUDQhl9NbxOvHfF44Ql/m7EJkACtdTwEJ1C0FgCG8fFbKWvb4JZqtp4toPavCaCDM
TIsmtZFK30XlJDpNqgv1EEfm+GcW9hnU25XTCxWIRnU5vQhpD4+CvlFqiwOToqwK+66U9O37E/QL
SC3HqPeBXBH0HnrYE+QYEVO4/wEh7RKO4KT3ocBnr+iHK/KT+Zfmsyh9NEpk3jEkXOISw8zfucNk
UoxumKUKwj+kK3TR65oguC6eK9zm3mUd6+nz8zO59tECMYSy+q4kPYDhOWelC977+O7PNEYKDaaI
5xgjJQdcLz5yHG7j8Rkd7V8RvYZFx7VbX9GfXMNEaGTDJM5hCjW2YVaMlPOxzTuhLoGy0Q2TVwx0
bAoKL04VZWOT6A9wtHG6v/3vODCK16F++vmHD5/+/vPnX2u8SImHHaOPjR/AeE5dsiL9j+O9W7H0
ACeUEx3nkk8k6n/H+Ob9Ny4tIUMcM8h7879zNP2vq/cVdijsNZjnWA5spmtUnOqBR+VzyNZqkGk8
O9LCB1G3H1oMVXA+hPE6Z5hg2PgAiwYgplpItLlnYMcuUfwSLZZpfJ3Fa+f2TQeRpPPU0L+kXKuV
kdGdBg8fb954JWC+P/vWxpok9e/FpIsHKv4TJirYXeJjHM3j1SFWNtRu27tfZ6W4guIWEeRq0VkE
UQr56FcHo3XcsEo00QqxrqVSJRQGheVcjU8o0C8ddykVi2BQoyzYpjj6yaUET+hLMDpA2kKTYKr1
Ba6WxRjlQkiAqPuhXAB5xc+2MBBLh77HBbJhGjqvE9KxbCo1BgpLqRqtaCjHtEPRNJgZxjwzqYcy
Nn71XRdJp1pzxIQoPWLhaB5sVT0/JusYHDRwogAGwJW0xok0u7UOslubNXu9flmftLICFy1g9tUB
X8kSgC6ggNOmLznTDzENcv/nIr/nqrpzAgmFRMROaMPv3WWqHBkbwFgnVN8EHhcl6HKxuZvniyjJ
3IDW0CdcyM7H4qRtsVS7ob2KF/lT5F5UEhlXj3WjcfXSxgK6jogACvcUr1bJPN71nd+arcLwPYuT
p9hCiwCkc26W5rR4TO7XX5IKbQRENH45OsMeTkn+XBZvW/2z3ePtGdSIaWWBcG7JO/vuLT6NOREO
L0SykA4EuCtg57fwSd+td2X65lQLMrmi388eo1URm6Pwj7/9+tNUvdv++e2VoleCw1eu7PfyGHtt
IgO4WnZfvEvzu904p3ZaK/0IYz/MzoBxV4TXthbsJNEUE8jwPHPtnLdFH0Uujrcrym1zwuEGgKFx
0bD0FeHD8i/0sPyf6YWFpi8FHpY+G1j+ZzovQelzbvRfDSt/ObD+NSC7dGh6ofqkB9L78epvb25e
hf2t45YKxqU062onrNqBsbY4lkNuhcycSMmAqog0oJUNS39IU2DoKySGpS/ZsPLXA/N/ZiwvPP8D
ugIAuiz5oPxjPKQvbAagsR5kL2SwF6rx7YXMeGeBToUH2+A8n20WFRXEGAPcXAineLlKskPC7p5d
FEBleyJHQdFogGqzE6E6Y+Ba2PvZnkTJoUu8F/IjbebNxnvu8k02j1bunm4I2jap88i1506ICSPY
a4emDZGkaZrbBuSV8Rikykj95aTe+vSVRF/fssbAvoUPeovgCaEnHjDgheM+6Fvu1cmZrCv68/g+
2qTr0wEwhPsRPjkV/vGNIjBP+qC/5V0i1gv9LH6ulj+hwdZZRexceVrGjlbYURps3ytMHBmy3lcY
52y4FdYmxt4OnbgWxeQN7/caNSMUW5ATjLgWWg1qIEQboJXgYNQnIquEoxaoL5Nare1tbmhDg0qf
SKwKVlohFsLNieZf7cXh7DHKHmLbo6AS9pibox/0pwhoE6wA8oen49Zptu+ODM6fc5shYHBQiL1s
2xdmlq9eU+0gddxFVWs6wao+quuv51WE3fCuuFuq02VUOI/QE+kVOvCV8mtjheLVcv/2r0/uyK3m
RtokoOJu84o29r7bGpQbMy689/6RBLbbmjy6wYUF0O9ASnxPc3zAnYuDNIqDH0G5diQO0igOzHVI
C7CfbetupcQURFD4+TRPV6Dd1jardBcwek3ztwGjuhW8TL8eNePcQV2qbgdGyI0D3w93NAO1OYhE
A5bWmTGDMkTRx1RgwXDHQ5OncyGZ7HAunLUj2Pt2bZBpkA1JmW+D+vmXX//x8z8/T84jU2Lx+aWK
BZ5sv+yONpNtQRrn+eYudbpehGhYeqQHI1jzgTbqwNvEGC+cJsZYh9Pknh8uzE6Fx7lJcSl7nwPK
uloq61WyXCSZu66OKOJZRFDDbhGvp+t4sZxCw2rLNXxjz6iHI5zWj/B3OFBtCgeOKKbhjBd02b2l
SL5rpTO1Ej4+FUlwPhoq5M4z72eQL2WnSNhIW9MAjHgXC3PYv62YSyXRuJWNUYKCrf6+dQ2zYXVN
jErXdJtLtF51DWsS3LDRHpSN2sHLIZVNKD4uwybkuJVNqeB2rS9Vo2JgVUOjUjWMJBu5x4bOvF31
MWykB20r212QIbXNr1tRj4aNqJEbNqJDG7a+VI02FMx2bdg4GZWqST1yuybPFNiPHz99/PXjWI4H
1LhMQ2obHdfxQOGRHw+wECj4Lop7UDZsm5niQXdRPra4Bx25shEefBvtS9c4ZcPq2sjiHl64K2zI
44EXSgc7cx/tT93qb+xYx+pG5PnTO/g+Oqi66fPUbUz3B8zrQrDH2ZYjn23tdVnExhi/p4KPbK75
uOdaecGXs1HGz6mgo5psKenIJxup0Au7t7nm4zLiko19rrEIvrB7ix/LcflnGKORm3FMMAu9tHub
ba8el6zPy6HRn/6E7uD015eTxhUd2/KWY5/wDty03g77GI9sfWsx8gMY46GNeV+TPTY/TQs07rmW
Z/o64wrkMaVGZsoVHrlfLkNIzEG5opQJ+t2TYNYkbCkTJp5R4Ca1cddsCGV4193y7khE9+vC5jfD
SZ4VtvIXSq53wMJOqBqGmSfsA2uH9G/+4j5NHh7fFN9KZffD7Xq1ifetziE20oVkTot+SP+8Hpeu
UjIRR0WSHzbrR7Mc/7TQytO/2/n6606CCOrZtZoDwiZcy/Fo/b5VVOEFTngQi9lW3fURrs/Y1L1j
6Te0JDrn1rLNDEAerRhu/s1Sgzq33ugPZtUYHsHOohjpV9n6F/cuhXJn0/6zNs9zo2Cd2RSBxrCJ
NwCu/DU2kAbA7q5tCpdoLDalK0GXOs2JGKlN6VbBALNlSP+A8xCueGyoRoAoGmWzOK0GvcKIS8M4
Ck7STUz44uo2EbuPV/HKTYMwT+QZ35kssVl3NJ1N+JjWiPVLknPSJuXthOQiXtzFq+ldNLfIVs/5
au4GhGV4QgLfOjlo38zyjWH9PkrSjfnTg4CljSyexiu5YAOM6hTtSR/didzn+UAjwWG18YKBkMAX
V60H4gfs18NAEJLjGAg7qlgbUF390Np6GAiXfBymhOiRrF8+qMV3XgBhWEQhVnO+jLNpnM3yeZI9
VOO7y5BzAa37Nuv7qXLs6tAullHKApN7TrJ5/lxMzWRiB1UF/h8OIc/yTm8nUCcwIKXEMHnmfe1F
/QAYQl6ZZzwAOTOBlGkvfQlBjuIJBTewJ3LGeWfEL9OMn6Upzja6/0/d1TY3biPpv6Ivzoer0gzx
TuZqaio3Sa7uLlvZ2snefaYl2GIsiQpJeez99YcGKVkSGyQkgpJna9bjsR33CxqNbqD7aWMnfltB
+I4lsTiJerbIp2nZtQcJSQIK+VDkq+km32w3uIcB7CsuApAzsbEd2brD+67y6b90kaNUIdWlrE9I
Gv/ITgChV1k5OxyNCmNP9RyAqBv06WYM6ikeMLjsKGKqN4EAmvEJze2yyjZpcbiW+6/Vk1iN3RbP
6fJT9EO2eiSfHiEbnRqSL+b/HzbrR/gy/ZTea/sPgKNGmCRUWrBu8z/uhSJETxxiqWfbIqtePx5V
M8zS2cKoKFulj7qE7Pg5xSfXstik4j6FBk66b/pxctAwMM0einSFwrElkUnSSSKD8GFU3sz/MUd5
YRfL/vMLsNTSP+V0QpTPxPTxVcB8DqlLLMBYrVEBfkPCCIzBlZ0vVBeKvvtuh9gqjie8u2N6XOKM
RbcjDgget5Oc3FDtEI/dkPgN1U7FLdfcp//Yx8da/5o97IrYjp3sDwfj1u7YT3f0V/Nnf4VuvgIP
c838coqcidYnez20jXIceIGdvAslJSwa58CwY8hM4pwXr/CMUJYmTcZsSgplojqfy9ALuEBPK0WI
3137dRYINyAfdEMqbsZf7AN86+QPW7ByVmSbqjvQMME/N8mjei+q+cFWB6/zKnt4ncKsGT3/8Gf5
wz6fONUdDGhkgnzH7JMk+a61T75r7dNokPY7th3qKDlRno7yhgpra0kl3x3LMY+vyPK/+WsyDmZu
5lPieMs3x7EPcPQpoeOJVYu0WJsooy1HwhU1EcYlBypKodAbKEto0WFSCRMdqyFkPFsukJV/qfVs
1NzScl0hEsvOCmIP4+ogUQdyEyFpUIOhjstHblIgems9U1zPirBgekblF3zCZRRSzcyxL239xO3N
2XxAWm1kQGs+ptAomfiAevgrmeNKjoRfbdFZEjGX3URBt6fARWLCb3TTuHbD8e3Zg/N/lpo5nl5O
RBTUciSuZgjOiLq9F8S2J+cqoBPEt6cP5qK/khV6oy7NScPiwLtTuHYnDerVY9xslDQiqZCEEnQb
RMocH4POqeN6AKC0D2ybhsj6GW3+KZtHrek8EymHHhH9ZEmbrLiazLSVr00EEaPLLNpkuSCjk+Vt
srK76DkIWYZIS2XI7WP++mubFU+u/IjARrrE2V0lrRBBAzE8rSCSjKNw6pg9zCZUiXeaX0hKRs8v
KIvGUTieaRCZXHbPdJVMI2ZjZxpe5YqXqBvPOUgExWx8HJJ4TkBAyki805yAq2T0nMCrpPwShePZ
AWHSbzjhLbIDKfnY2YFXcdol6lZ4VJ0Qo246Dkk8kCeJuOwWrJPky2qJ4KkoyjyfaM9ZOulKn0XQ
+GpTZKusyp7xmikTz1EVDzRHN82OYgoTvQ5MFo7IznX9lJPjMDGUgaSXBFJ/ltOqRj3aibv7yqbQ
7WtwyrhQfgNqz6AEA6rbpOyQ8KEZT71Cdb2CXuqVXleuBD1RwRJnk3n8La3gCe7L16//2C41Hoyp
iPcWOp1pn23KU6eNckYmItw9aJs0fuuS9NZXechcll+r16VGzgduTCcOtvEa+2nK0H/OZ1uXCRGh
1GXHhO/eo0LFsAODUOjYc0ND4vtlun7CS0kHHjTHS7Oe6xc9n9/X5Vsa7REVkO6JoFusMYmHvHhj
ASWtEj8gvTEZILHPcSvP0jfaG2GMn/W4MjmemMwryRqRAUqD6dmG4NPSnPVQGN5h2/Yo7nn4vVzk
IzbQoIPQiWQxH0gfKhT6iXEVQTxFx1Hytyf0dopLiML5KDRxeiYeiG+6oFREocTdLLcO/EpFDbGE
jCSnm64JkyfCq+plLOrEq8TLS72Fzh4yPW9aKe3qWjCUpucK17s0ek8G6h0IvzZkcViG2LhEOpKc
myLf6KJ6ndZgJmgkloCcXtlQGGkpYaGkrdO8qS4KY0v6Wa/fwFnwQyCOmR8U7Cn9EHdBCOsfqpeq
fQcnecjNjlKyWbeCYjM+3mKgK8Bizwvuc4g25p6va+o9RsDhjj1+30Yg1PWMQNJRlwNdAwKJZ7Ao
sDTOzbpzjzhQDT23+4+1E3Ycbtd4wmikU92TARKJJBprDapFVgBIBBw/92ZjPOHrYY9ZdWNF+D0q
j78eSbAd8U3fl38tuxMi3pvsXy5xTR+P7OBOK+ajKryHPKVxWEWjlg0+jsS3UbCIb6hfkoRTr3cg
a+JKBhMZxqIMXSIAzzAr0nLhvKCOhq63Xm2qV9RBmN9OvB5JlJd4efGkC797QWVcBVNyAGkPizrh
B3VZSdR74zo+B0LyeCALDanjy7J22wkTE+J1oxKSojL7aCwjw1+TmGdBRL+U8+bJwcp5NidK0N76
vfHNi3ilJt/DRjvDyqW4spUTJkMZ+Uu5nP7Hb79/+Z9ffkbtG8IAHzi4c9fU0EUKFBiFChsuQkq3
n7XTKWZigU/GEPMNcheRV8mJEBeIGyKbN4Z2n83nGiL716UuF1obHkukrkoM8anztEqnhjFj1EsY
AjXDI6BYwq5NBhL6o0jX5YOGpKWaWsow/AnIo1FJDBACJAqy7g2+kwvCYohgumqafNP1/D43jqF+
6e+IJxVAbJFB2sx1OV3n1VS/ZGXrNoxDAz8F3xdFg4g0R56J33AoJGkbN4a58my9zmdA5TmbVdmq
LhFxF/QQRiZcxUOc0NwkytO5Cb6n8+wBYJQNcfeQLxIl/ZUSHvHDjihejwWPTnEQmernJTteDVsz
Ggfzpb0iDdu8upylGxtYrHbOQi/nU+iqxjvp4bbFqxpTncACYrlSF3EE/5AnUPI76CyuvQY8w0Iu
+Jyl0/0G/GZ+AH8qlAAKlpAg69nLQDvciSXkpXLIEdn2zNZ9wbw1Hkaucuv0xJLAbAw6gMwig5u3
VztBDqyjGymdwYurGCIWBA3TWb7apAWg1ZXanNylXpfO4ssa+YcGST1qC3E7ZwbeJRrqKvfBUXOE
lvhFPyFQxpqElKw5spGwnsUTr9mXToLZ6rFOG/dFCOm8NDGDoeo+e1gC3poNJGtPVMBQNqHJLC/K
qQlXZk/2KyVAgQIraKoG+KODk1YTAtM3tM324RqbDThIsWv7qZ4+6nz3+I5udeb7OqM8Otr2pKb5
s015GyaaAkVUnRGZqEF735bo1DiV6UOl314jgQ+8zYpx2VubdHb2cjK5yQ8i5QcUza2BzaAsTJTf
JosDfykx0jLgiwCJs2JXX4QWoh4yJYuGSq/cpN70LuLoPSrBqxjIbQ0Qb3/5+rWGcy70KnfEasRW
B9DBtP47fU6/1s/hPSSJslXeZDDJ7Nf6kq+HHGdsYHbRkLObq48aA1gPNZzaczbXua3Ehgu+nkXk
Fjrex13FHkQbMNAeopzGxMQC3WUbcReq0ofV5ri125wKEyZo0N9ITHLJoXObh9JOMetdDwlQC15V
bkkHRXuC9o37FkTClIIkBK1FoR+ms6VOTTjmlTokUN3kdVGVDGsMoCKEfJsir3I7LMBZX8uCyNKm
aCMyZ8ZMEm4H9V1Oe5W96PluHsJhJGhLUbxCQQU32lGYxWzFopa//cAGyxQe3QPKp9cb4LmaQMNv
aY6GmF5BZJewkosg1G3yDVni5jSbYbGEOS3xIOvK59slGE9hn0VWmfELYNV4hS0X1PPAddFrlPaH
IfH7BjRaHt6c7IruTAK5w+xYfgaePqWbzTKr1+Cjnq3S+kfbXfDGpzAZ3ZjBP03E5GaQCa+OwzEZ
fJl26JBOOE8kvTmLHVqEYILwW7BY6ZeqwwAjBmWZJLkVZ26dGc5E5FdUNDJn5EPUnsZpoh0S8/fA
HEGZo0y+B+YowhxPYiXeA3MM0xyNKHsPzHFMc9JrOiWLxmZOoMwRn2RzJOYcTgSqzoVMbsXWMnvW
bvdGvNA9x+Gs60SNhDlRI35D3jqOBQEH1qBdsAshW68NTVC5fDXf03PDfpYu8WcxYcKi7vknTuqH
gbJJbpv2EDu58Y2oHdzduh+bqEGW7JQ7X2UV/vpH+sqoB4r5YD5gcvqkIufL2fOaVL/WDqF8MGSt
5qHpZa2Fb8MYcPBOwyXN1p7pEGWel3PB9/VRtlHm6/a00InJ1Yi4MWv5rNLVtKwKna6QIN4EpCS5
MYsvGNixOUsYpTfgzN5Ef2w/XCZqwmOS3OzgxW4IFTTeCHorljbLNDu1+yQ2apL0ZjHd831rUIGE
h1ifC8DROMLPfTLhjDNxs5gEQQiacOKFYtznv9f5m+PG6yGVrQm/puit9m0Yz+sz6tjJg5HyreXF
Pls0FaFo6AFgb4NOKkPuLYp8gx3Y6MJWU9YFbHMcNToOFgd4ctF+drX38DQJrgD0kcj2YbIRBXYK
GG6FC/1guFj0qLZ+9SWTYecATrncpLPWNPh6MDIU6yXhCVZGuTMfk6YJmzAf6B9GHBzcyZ/uJLlT
0n5kd5LdKXonkzsV3Sn+YwM8UeWbD7s1/3RHaXqfb6sf7Xua+ddpDSMUzXvhXzi56tRLsx7oq2hi
gm8+EmGcovSrrjqPosPYBBuoVDt0+8hJTytHHbOxLO7zJnoeOZyUsDCZl5PK7/+ELGmZVbpwpPbE
jhH2AXByUnlzhif0ehNQpczSdV8rnE+099nenO1SDlnBevmaLtbp/eveZrLyoOsDYpAix/u1ubAN
8SOzgJIG0FwpxyD9baHXnZh/EqpXk8GkG4iHev88pE/ajQEj7aSfwCR3mCMbjRfpEgFt/0NoFlag
X14qKOQ2wespmBRe/gRVFGKQXUPJxCxfnldPbmF2eBD/4V17Pewwu6iM3evq2k3xuK2xLrOepct/
/uM3lKKM/KANTil2lEhCC9CPHz9+rFabj7+lryZQ+UOXVfkRSidtCVeJNoFAR96e/SotHnXlGEoR
q0EaetBFoQtzNi6z2avxI9/SV/TEEtQTvN9j/U+pQk1oLd7nmgGkBZTHySi0l/kjEt5IziaKiICa
neuHdLvE4ZahMFkkY6u24QDRLUmiq+qW21Eq4XQLe6nssl0S++HHj2S7LObX1i+Pg+u3w4K5GBre
DLRgxskVNSxMYscH7hlMw2sTgKBNVhyyBSHG1q+lj2jXC/U1rHYjFV67+XT/DRs0m9hu/Vikc7w6
Fp7pxjdpN1PYOqjkyuswhp8+EBnH7yN+3XbBFI9pOpHXtviYBde0Oxu3WM6cj63kmgFMv9FVPUpC
ARMmuH636zJ9cCJnCE6v4UHemMDORUauGnnEUG4UUM/Z+jldZm689zgaW70NB5gNs/ja3liE9Mbu
aAOAI6/ggV3RBkmuHsuFjDbOizNETIJd5ISKM8hAfZzpNSQzK5CMswJ4hFEj0t42wmDXzli8UOi9
ddwRW0AAlyS3iy04u2psQcwe5gE1u7/2W2Z4f6CCwUcjXcX1Eoc54fKSN94QbeSn3EK38EqXJUAu
Yz3lio/jyNx06ylLahIHTWD3GkPbktXAx5Z+a8DrV5gfNtA1DKG9NxsDEPGVfYEkNOjCL81p1nmY
Cc/Oay8p+6gJJSx8xJVPrjhk7tbzkKjs46W4id+QMD3LgzJ1Un40xMupMDE0jkTDiTk8mFdwT8PD
aR7xNy1f11X6Ug8UOX5x3I3/jt4Dm9WiMObi5DLuHt3UsVbnaqV+ogRsABqUolPA5oEbHvTZAKs8
qEeZppsN4KzrrokRwpaRsUH7YF91ekD7ACPZi41YmLyEBBIcRuUSHNkS3rm9ylL8Tb1vNjv6lOzV
mu+h8w5CdVvTxK8Fw1etuKeLJCTW11QrdYxc97q1oWcNAseH9tIopLUyh7XCtVtyVWtFB6vTJLix
4uPVg9oqx5UKUMQsCUhH4HR8ZxoGWzzucDU09J7gjgnrlNGAakXnuCcJv7qnwbeECO5o0C1BkpBb
QuHXDNQOAw9HJsZ3hOKeRWa+dMxff22z4glHR+Yi8gPgGf2wj97D0cjplY5G5lXRPbLXi3lypQDL
7wZ/3BNaSHJzlyguWfbLzplIXCce8Wt3DeDlw0WTewDzeb5KM68pjoqKCSMqiKTDRkAH2rOnOjiL
Dwr1r6HO3J32O2c2Es9io9G1HyoEaOYlduX7AE3t9RLrptd0g6wX2nwBys2zdQYYFG9bwJGsxheG
Bdgoj1rHa4vciY90mQhBx5UTn3oh/GBw+wjr+c6Q7HKWTddC3ScCLRQOvMdIBvMpneCdA+PWExn3
pjPL86dMOzBRB2r28Masm/600Ol8OtfrzDV/15xRIpIhVWAHgLhaA6lvA84FsncRpmYfAbJ7ElLS
Q1DNR1192RZgzX/PoRMI70CyjRmEjiP/+ezE1Gy0OApzdMCEhD8W6Z7gL3BH/cWEDffp7Om/SvhM
z/8vqxa7H/jnOn1Os2V6v9S/5sV/vnH/N10t8jkCjgOXzVTIsdbwW1rNFp3LR3yLrQYuXy8nMRHG
RUYhNdFRvsdsywANSW2Vz7OH12mplw+OVj3iB3h8iap7iDNhDl0qQoq7e1GZz3EUJhvDjSTtG20T
wekNwUHaiYkz4qswQB1HsSR0BJUDEDrelklozIOlgt3k3YonMDExUtfiAY9oTUTi15roVH4NQXCI
r2afKOu2Y+Na4Gx29uXGUB0sh76TnoLKwbAeDDRPUJMwR2GFPRcskCQjCNwPFsiGvZD2yo2/zJrF
5YFlbYsmBr1BO0Xrg2ew093DeBCbY3914QIa9+gzCZoxfwnzdb1He3ZnwgDwu3MKjZPqZbvTq5+n
R1CTUbu8UbnIt8v59F4DLIOJsP7luFeRYLjkmnLHweXerbGnzDHrnU8aWGafeZd9MluYMhg56RqL
y5Tw7O7xoXTBXDgRM1v4N0yv6VIXlSWGlP6IiRSDJNT7685dvLC9b75gR3hvIIArHFMhCcA9+1Xi
ORlYwPjQeo6R1W1nQatMosuWtKfm7I79dEd/NX/2lWfmK7H5BeZLO1bNp/vfYj5v5prV11o7SBvz
O+/YrwANccd+/vDB/Jj9cPjflX9t00I3U/7uqLQ37OanT3ZK8xzlVbb+3cl6ivbbvARxcc5W+U6X
VBIx0CHsGwCOx7W9e8mhRniY5C42PwOTnz58+Gj+HCRGh8zVUxWx84jQhMPUy8EH4HewLo6NJ9/x
wqh3wByGTt6YjaTvmDse0/e7sH519GfHDVP9sjF/4ZEukQB8zllAwo530cT2f110nB1pEVUdpdGQ
sMCDAInfseFI9Y73nCAhravbmgmU4Ak+mF6+rcpsbjSyNgkOFN3Pp3vx8au7GjdhaGLTGkL8GcY7
fioe79PlZpHW+p7P/zctXtvJHVGTmNKb8+AH2n65/jstAB6EwJ1dQQmo8GrQ7VQIDqRXmYRT/cVs
ns+Mztc7b+CuTaCSDL1OqKlBgU9TnmEIr/PKg7ZKPOHRemnbepDyDWoAsny4CcSvrJkYSLe3mfBz
i2QC6KQjiIqXJsAcSjmmgC1A+8ScYIPuvw6rw7L1oyGUl3ptnEZvwZaSFuQ9iLgHhWItjmaLdP3o
w5C0DZXjaGOz3Dou8JUt8VZB1OAqnqupT9PydY0DgcfEs8fifMnrSjpccpguS65mAB2cwBgdHoeU
H8b1rB+rhedeYL6YnvwiBjrMj7IJ8yolvIxyh9Ih/fGqOHBTfl3qcqF1VY/m7rquFZzbcs2u6ISH
7w2eleVX4BLvwFHyHH78f70trIPMSQ3R7vNjE/zbN4d9LAhT3etv4AVdsed7JPdMjSz1I7KGsxaq
hXEllLCB6kzvNZqGUsBmE+MqszO2VpDDD9ulJwyUOwz++oEFPRUiSK28gEsvpdo2WwrA4YPsFrWf
FmXEhgChxKuJYQzKNGG3okyTsSlPZ1kxQ70U2HXPq2QIyljPCjekCb+p6ESSW4nuh5hw4b7uvimK
JfPsFnKRh+Fn06pIZ0+HpQZoebkhAqfD0HM2rQeU1eIeX9Y148mwGUvmzJgkjF+J+OdZvl1XnyKE
CUnUtZio1+ITwbgQ8tpc/PthSRrGE/cq9XFx9pzNdX40zMYe7SYKdl5VRvH59FYm/kzfruEasjAO
AinDsN1BpOelivvdIOj1DGqVnzN9LKS9I2sZvJzQCVEA6XoD0sQE+JyIC5V7QN2qdbXhLdH8ussu
++0kobERoK/KTYTXHYu47Xz1OQnF2bLVv5164YKLzk0GYFi6ONlrRVou8B5uYo44lZyjzHW+1uV2
tjjJAOxQuAgQt0eUAa16hDEUcXyOCKusnB1Vwa02KYzn2ZzGfSyWRAKyqYdI0iGSyewfl7sUxnZ5
HaUzu9lTdYDQXY3MKAwjpN1nlPRJ35p6h0N6yDQ6m9BJr7ajYdLjwkIvi4iDCbsr7kCl9JtafqGU
u4lbxyWfqNAMbu977l+CCS3VoKWtEf/m+iFb678X+UYX1Wst4O8dddhmUb3m7vaQtRXCJqhZ6rTo
SM5jyJPFUH0u0v3Yspou3k8uPCuizxFtkxeVUzA1RJEXiMficCtnXa5rqB+PrisYDSHY2o56e2gd
Xen2pRnLtk6fs0dn/T63sbYIIvkhSzbesOjO+4vYVk+XtHDLw3bJMn+cHtCtSbaqnyFEiMdTdl0G
7aFtBg9KbMRlL7f3/oxIGZSRI3BIT/NjSeI5ovVS83v7zW3z83viDGeEfggkl2n8DBtknl3mlzHi
bYJwyefVLu3Bx3xqZ2/iT5mAKkBC0XlOl1v9+4MbgkwG2N67xhz9MtP2VmW6fzR2oA4KW+w3zJfu
W77chKRvL12fgBv7Ank4wfmtMbVpR9phknRMeCYRtM4MMqKDAHY9Wxjpq/SxTowsMIhjYmfdnBtP
OAtzdG7qVybzjQqead8Gd+Pt2MJkZD6XAqp7FTZ1AJ3p/pjW9jIm3Um76hUTkpFtWQG2SxO74x1Z
3LPr+Vz5XIGtsPCSbADFS2T8f/autrmNG0n/FX7xvtwVY7wDo5Qr57WVS+q8iSt27vIpWyNyJE1C
zXA5Q1nKrz80hm8igQGGxIyora1KbFmW+XQ33hqN7qdpELVKuI4u75ZTk5UWRTvwboPUk5AUdopF
v5SL3/fcG/vzK9xJeHegGCkEKxlXRPDNANjoz08b6AbEU2wsDXlO0ocd/E0cAu0QxsHtn4ReuGbW
BxLsufAe9Lx7f/nD95fvxxogvyk27cPHt464oODQdpqeuEt6gMdpXaeT3+2JilIfDVT0pHVZ2fuW
mCL+pEetNXCr1phJIEJT/eldODwilnBvBcfJujeedpv+nI84oz2pD/lb7R4JxRDSUCdawey3H11p
eFAR3tNyLsqiqrWXmS6mH1sONYkb1qHextoiR+uwJ6Zfcz82maf1bfukV/0ZYg3uWfTwlsR7Uh+u
k5Ny5lTf8yJymvor8Hb1BRlx1NNWv8hcZAVCXwGp56p5kvINdPshJ+HM6UfzSt8TJrd2D0sYD6s3
zRvods2VdiYjrXjIzciK+v/WserU3vsW3tc99aF+rfOiKCdAr3KfT+r8zjqxQuNjAao9fR+yB+AV
NRewaKO59ybVNooEAWMPinRer4Nt9r0aPO/T9+qdegVTfOSEY/rqziMpdpPVn/73v9+vSUvdYSmB
mrKn03TM7uZ63Kp7WzUOU9ByA/eiV3n1myMxHmqc4G7bq15cJPHUymZaFdjLTGQvL1L9p3sgnr1r
whXWV0XTNxfFEQI+XwsxM5Y1YbxVUNEZHxYJ9KeIdI6uI5iLyTid5ak1HMMo1pc0T3qpirSlUs/d
5Dic7W3gwtAO/eUVId++/f7DxSuC0vk8K6bvbvPZ9C9/1X/+T/1/wxm0+R7569cbdumrcvr4lcbI
Ft99/vuHN/ovX9F3c/1vTAXJmz9flzCQWX5zW19clbPp19ovKhcXi2z651f08ts0ny0Xmf5xePHJ
gcQiQAD67vVc/2ON9fXr13v5RNywNYR4lS7TgXH2k5TM/ShooamASdZwsW5yiU0Nlb3sF3vLflVo
/VYwKjaVmRTFUXY71ZrlXM1TR7U558jrn3We7g1oUdb5td2PgNZyQexLAbreGWrjsG0LN6lKoou6
B+8IEkN/ERxJ+hweXh/n64cMfXurzH5sTyVh3piRf7AqvdC3uE168V39Ru8As7xxql+Rb9O6vHtF
/vZgiYubZ4YBRPitKovDPH9O6CDgmxV0sGBGNGFDiLCoKvsIEMgA6EcCKETQ0AfZlaaBUJ+ITTvK
u7TIr7ODrBetMYRsesU/rCkBclfSK2g2ubNPMu1h0qRfhZ0THLxbJQfCxgcpJnqDpooOBk8s8IkY
DJ4ewjPV70r7zT7qeluT/c72mb7UOGe77He2z2fa/Tq4UuiNRcY5xguIRN2m+rIGvRfMK29tIhpB
bknTbwif7JWEtfsKUKe5XY/1ndDVzEYwEcj1FQC3yG6WM8g06GY2BREMIU82G8GRnLn9pBw7S0Bo
upPqEkg7yAdqjYJTuEuTSEo/FpPbRVmUy8pw3dgfgVBXt9vDiREASgkZ8aB0za5aGjFMwF3f6Xbu
Wi6yZETxiWO+I8kqhUX/mj2souH2AoWmKCMmZvO6BLELO4eTDEwr64i4Soks7WFhKQIb2ISjQqLd
3rj67tFmP4w8xBYx7AFPsL2KD+2mzGJIGcjT1nMrbPsbrl7ZKtKY6wuWvnvrY6dI9RdFrf/6qweb
ziSimR+qnZ54mxSiB0u6JOS+s0inxWy8rCBT0oJc2fhlBEmOiOnFyBFbJZA+WLrISi57GIP1D6wK
oh5s2SLCJK1Ex7aBidDmRccMu220sQhsiRyo3N6Kap/jMqJHtFbWLcCh8vrWxRk5u5nOpTg7mRhP
epsk1oUQWjx3wtywTQlC9XpQ/ERdXfkBWEA2jMDRbgEAZG8CRhOT8HL6SQ0Q1HoYw+u19+ECX6C9
4m492jAjF9k/l1lVA9q8LKoNdXC5ajFjp1xRbMRYFNDNE8Y1NHEFv76cH1AKwNRPcDIonvJXK0TF
E/7Crrh4qJt+H3/81AYIXATjbHJbfjW5yfd9N33lpX5fJq56clhzUv9pERWP+aM/cfHosMuPq2Tg
+TLsdsbJsPNF4WG3M5YMiyfRsPOFkWH3MyYH1s/vHoX7FFez8mpc5X84KD71BeSYw32PKai8uT+M
/EkmQKF4qjSZaelikT5eLa+vHcmSVAjgYYo4Yn9ki3I8M0S4Fkd9HJJV3gFtkc1njwc3EMO9lET0
NbNiUk5d7GYJoiPKRHSt6of64AqsL3syNhCxICl9g0OxgagdSLLYQMyhEYkPZM274AjFH6RDJEG0
dyXij5IdiUcfJm4ZJihFUjgi0rK+HivD1HSbLip7tTnjI8FYvO0CUpJMIxGgjnqs6rTOHIygSn8R
064rbsSDjCgCnBARD8pqnk3ydGaMmk7qzN6DCQuE9RcxHQI36SgDqoaYdw3TFaSa5DmQbtVLGyYf
KXq6VU1Ogjmpx+6jWmAZEgo66ioMyYRGU8udmKoR1kPI42gJvWLH93n2xd2UAXMT9ELPoimWSj4P
sFI0soldj4AUk+eZRSzCVdKoCLvrlYtHDWr10enT9bos946nJtk8GWGKI635ZdEUNk3NYVEsZ9Yo
cJKQkCf6WEGwsZ6MvGOQ6DQ4FPBaEGDQhT6Q9NVt+35lJ7UBaqrBIoqUAHORijFf6vFVOl2RPRui
JHvdLvBNRrhHmqbUUIWwgFSW9alrJcwBsq+oQcz5Ii/qDabFqGYRygiBMK3l6ssGbUWy+eU2144U
JHFA5s7G2AdVAlD+1zHc4ZtLRvUHcONWBrDon8CrOyOD42JI66cSPQswYZw+BzBTPOjBQ7RPtPxu
PttjpZ5mRa63/jV9JuwiLp+IInNuy4HksKfJKdzecPIJ+I8fP3//4w+fOoZumgOBSTyAos6mYARI
7SQNVLR7fMr4YWrEEtW/lvYdGxhZFeoFfb4obxaZeQd24VMB3VdUqIE967hBryBGvI+t1/M3ZkM/
pNpVAinYzNoqN+JJ4cBninLUii87rKdOIhDtlzDMQzYU2T4H7rSFx5PbZfE7dHlchQcgnd6eA4BH
NCgMJwMX2C6+bQOHo0PfXiULUBWTdlUhjrMi5SyyGoiyWlIPYMdm4gjUnQDECkSvs+XMJLZCig6c
WG+eijZ2ivanSXl3py8Xb6Z5NSmLIpvUB9utVCHhyn7FBFKaN6+fBPHliAKZakjk4XlkwwFFx88m
Gw4JFT2X3ag8X9lC0hWea0xDbuXPJBtl57tOGVXnazeUnLFs57sWiDrf/Q2HxJeeSzZ1xvsbPt91
itD5nllIsDM+T/m5uMAu/xczzKNcDpbVCt/5OIENa4xkp8Mt58C3re/5UJe0YptblTTbrvwJ5C5J
3CsuXLfhK1NM/frBEliB9mSJGkYI06kJGnb++uvHDz9/+vVXi0ByxAlhAwm0w9rxuirTuVsuoGhn
Aolh5Louy9dX6aLFTMB/mxA6jDj6dvD6b29/aheHiJDwdyTr/ENbR1vojxaRICJPlRxMpHGYSOiY
C+qRIq1FCZKMygHH75W8DDMXEQMKRXCQUByFvPxiGkkoFiQU5lgMJxQPGz7Kg1y0SELJv4UJhVgy
oFDvw4QSig0o1LsgofQ5TAec6DxMKEmHXH3SK5R2qZlElAwnlEBhlsJswDlFaODqC4psxxJKhAwf
pwzhwYT6jyA7iaA04hgimauBtRBhxBXCA83r5m7wtN/xWgrBFR9Iiob0c18GPOIJJkPO27AVLrga
8HzlYecrJ8mA5yt/H+qJhExkFmn4VJBQCAVddGMJlYRZCoeUs8QSir4L2qAZZgMOH70ME0qFJGxE
Euq/wgYvLCYQa0YFupFySKFo2C6FWEhCcjSh3oYNH0EDWoqHDR9SdMg5RcI8NkyG2zpfB557Ysg9
6ttAd1sMOc1DD2MaYeO8vxlPFlkKYl09jh9uV5nCmaH2m6bV7VWZLqb2ElvD0nv6MbeT83R/Y+q8
9O8HqX10pNjpg1Dnd1m5rMc3RufFuL5NIbHwOl3O6s3ryuqH7ATqJAmrwCV7rDLpfG44nl9PtRyL
8tE0snV1zKWMQMeH7ii/VaaL9Xhr0/V3tAkO2x3qMeQyrDy7RZ8afm/j/GSEjILyT9wgOZSPwYKB
0dwkZa7VHDs70GIe9izlRN5a0iODtWZHasUF54PgO8jDJR8lfn5IckHaV85ybgg/y8K8AW4yMU0i
JnAVLvKrZW1/pMPaxdPTmXWS4YTaFGyKKEg8lc1vRlM7GSOcpmIo7dhIu/EstnbdxhPrTQMPOp6J
P9zcTWMoU1sp63naFlSNAoggI44vCTjaT9PW1ahPK8tCCOciKksx7llZKIgYr37SnkVAzBJmQ2od
UPLcBQ74Cg9JBxgw1QbA8HDjVnWqt3/3ZghE+oJ0wjyV2IygeCo+rTBwJMCzkJKlmCpKf4lYqIoB
dSwaT+jlQAfUUH8mj6XhOnHKJEmtNoJyMXVQwRMMDn1L9dcT2B6qVfRZHmGJLnLjCM6WppEetJNM
GzZphJi9Xh4ONXIy8A4fSZsIbX0YhRzxRMUUxVx4nspjY2QJ4UY5yfLceiVRNITbOJLleVsrBiJG
KmG4VxsI+5hDoZwcyAaibfbpdcAlR73aQLoY8ynCA9lAtrbkgDJkQXu1gbL3ZEYhJfaRbKBabMD1
TZ0h2u9+kNg7ELIB94OkbR7onVgEMJGfYgOMrAEiIK9QYhgbYNRqg2QkI+xMEEkti2Xh7IgOox7h
0DPdG1pI/DBWRAOpiKZ9AvlgadKot3emenEegYnH8J7Zio8TKFyMcKLv5d9/+PRx5cddGlfy6Z+q
23I5m47v0tre/10Lo+2f4NhSNVE4Q8P2yRQINIK8z6s5iHLpur0QoXiULTdMnh/K2isSNvyjPYg0
nRrMD3lVZ0UG63E9dvaVQmUI60lXMSa32eR36HO9Q5pnejgx7RZDVx14jzANjW3XaawMo0C81buq
5zgAf8oBxwzVaEJJP9YAXhKLOeztiKFfbrf1893l2/cHghRlffmQH3KANKpihEV0XZs3vqa7LbDW
2sMJTJ8EOObZ1zDk7r4wWhj+SAL1VTy6zovZNUz2t7PZTyvShO8aEho7aRUbxXA84cL3MT3sLG2Y
zfS/1UamsTXVc/Yqn061R9F0YNbX/IdJNjeXTev2wjg0fo4thkn5g17TJqabTcfV/Y3lARUrwaPs
bttp1jSA09PMAseUGilyhM0tzTf0jp0VhKMHjr46TG1MJI+yQ3rMah1SqU8MqlAvNrW14IK4nDjG
lzvOqjy6LwX9Sc12eJdDq8ZJWtmfTRMZ+ToQIMfhFgnmDmmO2d0KlWnDc53PMs+mQRgKYTTqYIlp
mVV6WmdwFO7vlJSNJIqv7nJW58CnBNcvOzEq+Mgy+mwDbuTVIdjwtns9QCUje1tF+a6R4ENDHP/0
2sLXxKVS4B6VNx6ANQonAt/6Oqv7GSDTKq8spJgiAuSesttxbe74q1vZLmW/Pc0GR5l3WwNc5Tcb
sijLjpIQlUBDKiZJiGct4qBiJrDkDBhkkTgZdt/0YO/G42z8IGuMC2ZakBPfHbtBXaet2cdZQRc1
1An+48+tLjYEIzYbXKO35QCBxr+dUK03l66w+uImuo3z+8sPl58vI+iLcVAk8+hRhpN6nOtpXlR5
nd9njpCLCIwnbOX45ecfvn/3408/xBhz0m3MHzT0pFwUEaAF6Wb9yW3+7n8uYyjNE9kNuZw/RlGY
dYLNi/eXv8RQV/JOuHfl/WUUdUn01XWfLRb5NNu4xLtew5pA1haZUsi8m/ctTvtNIWEQH2OxpTAB
58kirax+gwS3gSQRD/DQ8aeId9tb/PkKwbsa6qawJ6QfChtAJvsEdp7W776LscBxR3Xffo6Cy1S3
Hfzdj1H2USZozNHFhGPH0TyiPLqHsPZ9P2cPtedCzWDDwDji2m3TNYCg71hdf/7pg/19h8J7X8zN
ad1H+R+rOOemn7K9R1lgL8BOAji5pgOafsbQFOKA1+WymO6lEa06V+KY2rqwmggN165HTLRO6WpY
Qbol5Sfjh9ZCWdrECSJ6W1O//P2Dd/sQIW1mugpw0K6hKMeFK2NJfzThyRAiOLtxSNOWPOY89LbG
4NAaI6HRHU6THK51DciLJVzIzt6m9aS0yXBfNa2j9K9VtjBZK9dpPlsu7LNA+6AiYa1pq4MIAanJ
JwixnQGrtuewGSzK2fgqrfJJE9WxTgdgN8SiR2hzBwDl9ewoxk1LAIckSY/zEooR7Q1qFEoCE8dE
8NvAl6YaCDIDxtNslpq8gG/06bAw/H5v+J/Md99wtB/hg+XBwoq8utuh+7QMqNHsKonJKp4sq7q8
a+sbhAm0TUUo5iH9FNQW8RMMJb0obPp5Xc9Se3YZM9ll0c/DZVGl19l47Y9ZN2MEvxxz9T/09zZ+
Hshw8fr1rJyks1u9/i+U/ofucdmkANjdwmMOyMGEo+1nR2ibCheKSQLAIxxmhHa0nWecbScOZ0ch
rrh20XgvqPauLwSSmAOcUu3C+KqbK/1HR2IqZvo6KU5AsVUSr/AcpcNY3zYC2jfSC9iCHJpV6dXM
8SyDBdSKiVM+ftURb/xlATcYABlns8x8i9gb4iYh7+ktkLunpRO8zaBIhBgUd9fYehQqCLjIEwBX
T3srfdzJ2+gEjL3UtTbr+ePuGoc4cK61O3mVTn63cxRQba6AjLiWz9/ZFtdILlUI02BYRAFb+aaW
turaEZGyO0YQTflakPFaVz8fOUoIHkyahrndYi4IsOTF2HzbYjQoTaIYRRkZSLYxSWT2dBvtNvs7
KnSab+Ndr2GPtV4f+gFxgzh6BbyBRtQLJ0oONV6o9/2BmoRkRtjgC7ell5ZIFD/rpbvp7XLMCD2D
nJjSlyGnki9DzoS/EHuylyGneBn2JP4ntjMZ9+SFjDt6IeP+MvYlpPDLkFOIF3JuvpDznb2M+Un8
KWVnst5fhr9EUMj5Tl0RinKR5TfFuC1SgZlgI4bJCTBP4rdPAR0Bi4Rr1RIkegFtVZdCXTcN8ka6
I+/d+Kz1gwKPBFfPCc/9eZZM/+eAv9WfXC4ezXOOdT4lZET8HJUtCFsFfVgC8RH3p191x3JMW8ZH
zJ+ZHE017M9WPMQq0vv8pmmftlOeB62wHOvfPDl7dxl+QV0xbMivnZcm52Y5n6a1PY1eJBRSHk7A
2apziOiO8RLsj1LFA22iLQG3R3HAQbi1ZwGv0k+fH8wT+hrP/hgh4THCr+spwNa8AWAdk6fB1tli
sZxDAlfLBJISuOvQCUA7Y3kI6ZhBUP3BT7LqTmLIVQbFsd8coo/VITM003ZVvQMLO7A/ETLWgLJn
GFCcPNuAkmcaUNG7xoljJvWuMXaYmvcNTO3A/U8u9lwac8fkQn0DE4fGsm9geSyw/tVFwg708luy
+e21pdxryeyuGdJOG3hT6gQhttp3FMexr3I5ItR/Ww2SqFo2KZRpMYXrTH79OJ6WhT2RRWmvHHdH
7XaX72aikBcwKfyJ7wNLbeIUzjfLVUQi8T/FnqPY0s89dY5ii0S+SGsfsw+cgbX915iztDbhL3OS
vNAliV/m3BYvUmzBX6a11ctckurfp+SAc/vfPsmAYquXebgzr7+tLjAOumneum6TTLKQN5tDoFPs
cyhbQMqvf4PqXUjnc+7hz7p78gF/Jg5guWkZ2wBg96uIVOpsRrvllswVJ4ObaP2GI85+PfCEeIVM
LhB37g6r9yQoVdXowCKZ11U2u7Z3FhAhIacWvN3hcCK7wktQhCn94Fz5lF3nfttf0TDGNExNrsLV
3MG0ZZwT7ufJjAvoj1FHxaNUDouHh7YnGxgPDYsnkn/p+RnApB0ZTwyLJ4e2JxlYv4E3bDn0/iL/
tddD3KPdcbBj7fn2tG/aC+QwjYK2qsh0JTSIkLSCEPOZXJ+mQhfIxK1OIALiHBrXiPu4LkV5SEJM
EHRTGHxYrTmGbsQeBIYuuKskz5CTt+afEkS1J+utoW4D2bHgUzjXdQ+y4Kg3DyMM0m05guMgtNUf
E3QERsdL2RObeq9gknizmMPU9haLUu/e1Qa0TgvVF630S/o4/nIL7QIaldO6hmGFXPR5C6E9S/QF
UOAo2nYVxzG1qZ4S/rMKRHJlUwMbE+hq75CBgIjI6ztZPr/bnFsL0VYqsBLTlZmsDxzMMOrVEpiS
57fEKlfHmpajiHh+Adv2L8XQYAKGlGHLRAwuj0sYhVWc82NWftnE0azsVhghhLm3XTHD7sVSFrO8
2Inxz9LHbOFomkj1Bwa0v2mD22rnBHYd/pQDR1MU7DUocElW83T3jWNjb8u01+eXP1/uWAn09DIH
Jpwk65/bPzw5NK5nfQnQrIHtNw7EsT+5kBBXM5ZMIVaSMEnJ+VnJv0UNbCWK5ek7h3Z46myWu2qo
oJ+6t+qg046xBXT5UtDSzV9ydCQoHAzmh6b7uupLeaSFYAVdFg5YEeDL9gDLJRb9wz48PBwqrCLt
wkcg+yIGjFxw1yteuchv9F3gn8uyTs2DUV4ss+l4Qy+66Qi2nth2ul2MSUDbnjZBthZoZFkJFiTS
GNsJ1diI+9nyexTKVaCbwHtfFLHaHHY/fUlvqttr6Ew7LSWeTyhX7IsBeeIQI+K/7dILxgKWqn0R
Arult1ykDcJh36YHu32VQdBSG0/1iOryvplGpnGA20bNTxNwvHLEngwAinnLXE9Bda0ERDQ6Rr3b
FHspTI7XjlptyqT+338tPQHVZVNMtU0V6d+mXv5Ixi6oat1dqua9YP1de7E5EiHbTAvWjrdjQ12Z
1E5gSkfMm20dAdsxmEKMuN+LD4JvH0rvlsMvqPswgiPQmhkHIVf/0mv97C3pddMB2TlW0CqW++fk
EWCuOK0eHMaj4LXFGbH3PZWJgzakOxh35f0qGm8NaMkkCcgXbYfYmm0H7DBa1wTg/7+9q9ltI4fB
9z6FLz56M/ofGVgEbbo9L9AncF0nddeJAztp2rdfSZ44dkYkZY/GsYBc0iRI/ZEajkSRH0mdHQqm
ZgYfRVlhTqSe4v0gXW4DwLPF7GHWDv4q+jLUVUUZqJR9adgCMvRNKgkISQ/TXmS3h+X+ZBbjwfb1
BkAsSOV9Efp2lusdoH3khMJhnP9RGeEOFp4BZx1BhIJqZsA52Wf/WNAY6cSQQ1vT0NDjhaRhYBib
Tx79mn+fLTeDWIDBJz40aDIqswcJPTDf5UllAb2e/NdA/nV7L1unzECSdZsS4bY3zyfq/fq0OB09
dh/Ou3OPaKrfQUBx2gfZvVoitPOH5T2619V1CuNbJhHb14/fAhQSyvH8nwTOwkFwcc2EW3aaWZ5F
saZmgpzbIBF61stzklG/TOgqJUOVRqnbqiOR50TTyA9DiytWB4ugk0o2ZRgLodjmOXGmTgfGSDdT
IXn9zf4ZM24ZiHT14Z99647PyWiHRRd+DszDn+tWk6ran0KiO8rm7Ant/toozP3PhFNVJREgmiMH
qv3yxkbSlxMUauZsXgSVlje/WkCmDs02SU5OnsUTOrNK7TObWV5LOeBk2DOL0ZF0GMWc/w1Yw9Nq
eXezNwo17hP78SSku4MBvWgUgUS6MnKyAFHxsbCoeuv5zd3kARjbx1jIoZsOKK91e8GDFHPeviRn
9TlICbWb/N2cgMswNHY9ul9tBoiGX3uaT+z6ZJwryTuAvuhJwsPUbMXqLCIgd28yKphHSbAnq7C+
FyS9n4mxgJLov3+sRs9tezHmCxdJJdkY1I7CMVCoztK9NDQx4nhcOO7GKiZ9TikLNH57VW+lHq9E
f9Acm3Sm1EmUvoxpTeeUc2v97HmSOssx0+QYxSaLhnXBZdLwgaE3KARv+mc1Xyzm09Hjah7fEoRM
aC7pIQy5lHtg0AVIhvnUdXZA/xBv4zOIffTFZAEMvRz98PWLDS+Jj4afq6H9MvzMhnXlv//0T/jK
w1e18/uP4WvVatng/6l7Ea6zbMrPosws2pbc21U455+QcdcuVnQ5/7uriBvSZYKM9QEL+EyPP1S4
0b8fv359Tchivh08P28JJcuzhPu1UF3sL3B23T5Gj2BMk4zaNzcHj2AyO9q+uX9xCvPhlVsUM7xS
4ftPwysWMWshyX1BwfHZ5uh7XE9u4n5qJa17wUUHiNdshw0YSuiStZ+7a3oEhbkVCc5xEi7KrbD9
6RYfZOyHM9AXmw6g8ILSHcIzLCiNoeEoeGjXNXr6Mbsbva5bfPC/hGp9fYN7Oj2CIe9sBUfKEFp7
cZJynlEIuD80PXim/7VgWtIygKHvvTwimLlkXLiDwHbAATKXVOLSkuMx0kCpzCVd86wMHKluNogN
LSW6gMrzi+gHZVKi4XtoCBWsrvwWaPvDhHdAwXQWWJQhTKZ8VD2W0Lu3LfUYPc0X36eT1fd4NYNO
qHPEcHYirm1EJAfNTR5UOPgo6JufhSPJuTr+k1RFTIg+Ov4nOA1JEh3Y8V8fgfr2Hf+PeXpv34GU
CV6XKDfdOfUsxdYkh/E8V5ukSpypkZRp27xII9FKFym2LFJsI6oybVuVKfb7Kfn+SpKnZJlGUpX5
SjJbpG0T3RLqcVWNBT+uWwJAGKd7v+CoyVXv8TipoKvuc+FDHAnrC+xZFhG6VMA6DIbV1KBlk0Ts
hfrsg8omqaqW48Dgskle51EOL5skdeJjBkUznqkpTc7Dbw3x6KZvREI/KgSpPQIeXz7jQ2RK94EY
rdyRA0kUdB2HNlo/ftsS2Fq0WaEHiuVZVpw+Jj6Mx/0vIdd5ccjF8/zzrIoh1mjII07AOb/FcjpZ
PDON48FSTzGmDzSRklfcRwPb7PlgqDa9a8UkaeEypRRKACU2kkxwbxD0AcUhAiOCE4S2Q9HiivkS
G2UJ3n4mxZoSm4qfDozpBM1UIpkeqgiWPtViOuCAdHqEuVo7m7RdlNs2Gb+frNZAg06mfHNbqbPo
1gIEu3LzgTQ2CybCmTcqCwJ6INIurUKywdfXoZvcJCSAgH1PpjhMqmPn731JyH61XBKFbflFAnsO
7/8dTEK37phyj+tM5W57Jdo5/u5FMWcqL3Rb8fc8qgXQmVqHoTeMU4mN7jkVlyUZsantG21f2HQ9
y3Q5b9Y2YC2Lk1nL6l3mU8isbHkyC16ezFYXaM8FyixUgTIXeKZUBdqGYgWusylwnQs8B215MhvF
C7TnAn1Rbc8skFJLW979npql4ITWra4p69n0cTV/+HMxXS3dRbxJUmOdjI3Q5LBRHGq3bGYHtMkJ
eaIChq+MGUhWw3mhXpGpdgmp+GhCXomO2qGfTntDSRjbqPLeskEVEWKgmO1/5QT78D9QSwMEFAAC
AAgA9ZAuSt8nAh3LQQAAtA8BADoAHABjb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQuRGV2ZWxv
cG1lbnQtMTY0Ny1jcmFzaC1sb2cudHh0VVQJAANu2XpYbtl6WHV4CwABBPUBAAAEFAAAAOxda3Ob
WJP+vPwKPmxNyUmQzw0OqLyZkpCUeMe3suxktqamKARHNq8l0ABy7PfD/vbtc9AFkOSYJLU1qZE+
WJhL99N9up8+FwRXaRKILOvo1U+QzNr+fD4V7c9i/FuUyy83iXMR5+2+eBTTZD6Dbf0PbDH+p3bl
5/d1EfA5/pRMFzORHX+6PLs9Hxy/OV5Km6T+THxJ0ofjTyLNoiTOjrvHv1+5I5E+RoDn+CX9T/Pg
eLmdHZ/7weXo+JVwtdMQ/kaTSKSdb7BWW4KtW2oh9lZvwd82brO3R5qbhEK/eZ6L6om/25ZhMb11
4efRozgCp6XShVe1Fvj111/BrX9qt5lI9dN+XZmJsKb1/Vwc30SzmgaCMDcQNjDTMe8wp2M6bUQs
3UA2QtrlSN9lAHhQh0O/6xi1MW5begubHzDB5Ei7FvMkzbeuwljrxkn8PEsWmX57W8I4sBF2HYKN
XpdQg9s9agwcp2cQjhHHAK9vWpqmSeR694v/IPRRFAdC7yVJ3gE/wkfPRJDEYaZpo+csFzP9FNrh
Lo3yZ+mpXAS5giJifzwVoaa5qZ/di1C/uU+FH66RIF3vR9ncz4N7/a+FWICnNq0886PYyNUFmjZ4
CsRcCq022eB31+t1+17XdQejkd4anX4YDT58OiqdL9t53W6/Da4vvNOLT92zU7io37+WV/m5jp5Q
5UNRScIFGFTR6F5eX40G3sXlzenwfzTt07l+Le5kfugXwk9BGEUdzTDe65q8wvNuBr/fbKXdUhNG
FjMJbBjlHUz6+A95mv3bn3pqPB2nX5700fl/uZef/4YZq3XhpCjwlbtGcxFA9gYQE5MknamdHc29
7o4+nl580G8Go5uOfgxiAz+4F8d5MjcUboO17/PZVNM+TJOxP9VvUl8G3WIygRRrpaAuzYQe3KdJ
nEyTO1A3XYXhUUfDNmMWZwxxCgmCuEl0d3ghcumNLd//R9HefDKZ2BMmJuGY6jfuFcRKHEPz8YkI
nAAhewytMBqd6R99UHIvM6F/eTGo6mKWhWgDXYE92asry/00j+I7pTQWd0keKffVNXJkvV6jsExn
r0ZoYWjeXLT1CaQltt7pIgXaRXWNNnVeq9HkwYTu9ye0I/Apbu9UZFIgwe81jSDh0y3T7Hd7NGJm
fq9pS41fMY3TBq0WOmS8V5GKE+DVqgKGHfa9CsqBuK2A2vb3Ng4wm4O3GgfvbBwCp1L+vY2z1PhS
4xCIcJN/r++Winb5jiJm2vi1Ciw+doAlBk+SVKN8+gw8lytecIfgueQhEqAlSf07+Ibd4MgaR4A+
5/UZa42JGeJd+vYq04pKDhV8Wdo7nVeWclTvyrlJKnZhU7XQ5szyge2W53U6pUrjyvrxMcnyTgfw
1g+0Pt8MO51rMbnK05O9l7//5Zcj/a0O/aldgtvBfN6htnWk4Yao6QRhuh/1hzRZzDudMMr8LEsC
YHnRT4KFLKZniR+KtLW+tLpfoSXc1FuLPJpCf6vDLfNII02dykIqvubU/921uyUBMKumnzbT7wjq
oFDfYyNorjlD6STOnka675gAge0YIuh7IVimgD9EL87rdOB7C8TWPoUDuu2t6m4AYEM/3GzmgzEl
AQk2PhjKPtBKdyhyMG+YJrNi/KE0ExtUl05T0UlMBrqthrpJgP3Ji7rd+2gagupCs2nu0MwoJAZv
ajVyQr5HM2Tx67LgjQQF/LaFCXMEoWA3xYS54+zBlKd+nEUy4G4SN5nNohy4fYNLRWF4BeSoMBEG
oArOkVGBjjSnsX+CvS0TKP0wwHqMZOfen8oDqoEo3ukMB0IDKlKz1DSZY+1PzUkUR5Lv5f9QDVph
soAhnkoMm2xlhoLBbECBG6JwfPECQcz857EydTCb58/KBQ6pkyImTXWGprNfp6rrS7PPoaBdiyxZ
pIFQ2k2T7jGeSiS0YXqKMLT3BkEMpXmh/u9OcpFe+I/RnaLEqwTI8XkTnCuE1wIqcpYDhDjLf3lX
Egzjs1EOxefNO32cJNPSoe50mnzZiL5JTuNHfxqFt9dnqrGpSTSgwgZmOVQEfFJq1AKu60+nYz94
AMtgqyVhqIqM9dZkEauJBH/age6zjGWzoUIgebSl8F4ED2VPfsWLxf9dhWQZ58DDVfCQ7IwDPqth
DQoEJEapBpVa2p1GEEqqj6B6VX0YVYeiUAvttsFbINvgrR/ZbvZGcZHl0LfzPAypv2yOk8ckCvU9
DnpfdFBqrccdCt7hDVsvdEx7f+vJjeaxXwvzWl35Zh80TrWlo0yCap6S5RzbTfnCEvv4Ygrfn6P8
/pWV9d0OMXLKbY8pr+ULwom9y1CnoaHhWAQvGNraPlRtEZXAGAqcrNKy5wi1iaBGWWsRG/t+OWtl
+S/0L5W1VgclAOjBARSgmKyEgQIvtZaXFoUCm0AgBDeDwpgJLlSxeHrldjr3fhxOxbnIMpB7svzO
SiBLHnlXN+Gdvg7qqmVvjr5i0PuW0g4UlcgxypbkN98uWgUPuKX1sWya5FvoXBHSyF0sHDPgW4V1
KegaKDh6FOm5P99Q7fJYYZQc4hfz2WBXxcwilqDub8sqmpQA6RHarEUd28HV4FquPAC6cKmhAT6Z
dRshCpZFHIDFmnnOYc6Y6jWF2x7bEOUijiDKvDkMvsugylwaiom/mOZeKORMUOW09/r7ZabqrZmY
Jelzh1hyuEHMhri5zNW9uC/jtTOVPmKV9JlSX6Wi/7f/6I+CNJrnG56qEBTCjj+BPqSaeljEZ0kC
YTUXqZwI/5ykD4UWq2QVM2Vr8IZa/DEiL2iRyVaMkaCnsjzDHRazGVJdpbxIJcNkEYfF9P3W9JDD
JjYXWPc8d3h9e3F2eXnlnY48t3t2dnrxwbu8vfFuLr2uN7q8vXYHyLsaXA8vr8+94e2Fe3N6eeF5
0mauEaeZ1pBPcFBoLSzoJyNVYzOkOtyWRlFTiYxOyhLhS40cuEZxQ1GWoHIudCNovewBSecAtgo1
fTy9gZo/Tp72TMEFCAUONXWQ4y5SOeIfPKqanMxP43O5UglSqalR2lQqtyb6kjYuxFMhVo5jE2k5
o0SjrKlIEwaoXm+aBA+30IGersWey4yCwdFZlOUFatnvGEZT4HNQxrFGK9nbnc/3Za/SxYkfhBNL
9/pXo7USGUvIggazmooico31j4tRea3Ki+vgl/9kD8BgYJxcw+1Eyhjgq2Ji80/pOZNplDeEgEIb
bUFIF7EUaNnQFHYzgZZPLVuviJMDU0WcHEIQEm4ajZ/mQTt8hg39pVlgh1tjLBcQPDjfS8b/CrxZ
IYs7psZQM1H+ZDwWupS0FAIFRGP4xUX8Le42KQ+QvhIAtb61WcqUdrZnsw6m0A1gRKEDZOEeeGW/
CZNCCIfFPL301XoyG3fU7DQIyNSqtgcDjVhMqzKrokxmCgKUIifZ/1LnpyJfpKoNkJo13kibFzPg
FXFlabZFHZPb+upE78tfxYaqTDZVs7yNxHEKPld2VmTRtcXkxWl76dPlQWPmx1Al029wEFR5/UGt
vnh/JVnFMSvpO1qtHE8oEBa2TN1bne/N7lIvih+TB0WM2Fq55vUCzTAIawLXDjLJ2kH0HxcS7B9n
sfmPs9jqlNP8YqSK3s1mfa6JK1g44QRYWiZRduflqT/f5YXXCKIwxFgJUl282rrWK7plNoaRTamH
ty4Xwf1VouieYFJbrnpNx9EUwXbHEVPohDL9B/ccq+tIX+0FMERCB7ix0opqncpRy0LNAtFxwk0g
jpPwWZmJ1TJPQ0kwjF1LWtday1arMw3D2cR6XdAmmPm3pC9GgM7LxOyLH+VeFt3F/nRX2AYvVxLb
x4yGaKLHfpxkUyFU7DvOKmeDt2/beHefpCKFIwcRVBob5/dRtixInY4S7MHorjS+Lu6DgpHsIlWh
djJN4jtd/ikPsdWxEzx9B5atPlMYXJdmorhZS4evDz9pIMRYH8/8KQwCOp2PQk6eZIEP8bdrDkCO
FE7WZ8uZwyg4X+Ti6f0vZazfYtF0NVEgFyg9byalemM/Ex3s8Pqa8GsMC4E+aoaBq4JiTDZamagW
KOy6Rorri8Cv0ChMhDcau9lzHNzA6OOkAmI1fVZD9uaodfRexooMkyWfFGthXG+tRbXvO5iY9TXi
10BjKPwh0AZxnj5fJVGct75HXLHC6tSWnF9jiDUOldw3pUDylunlzdPk6fmklHoLELuc3we934f4
3Xc58A2E92Yyx6HlySl+1JxJ99K78+PoHaMfS+92ra9ye322mckr5v4PfZa/V59l121n1Tvoxsy3
oJPyR605W0V7HuleulxPkzvU/KaadAE3VFmsDruuiTk2EZb07sWoiCeviLFiUhIi71t6NnuSyP5x
SeT84D6SA0m0WhrTgS2T6TSK7w558zfLm68JNLHtYKzX5695w/u/HMvEplW6E2MdEcvfZ3SiOMoj
fxr9W5S7FUTe5FI7F7wt5+FMetS4LpPQXq1ibPUT1kUP813rxnZjVeNgUqj6kk9u9mszayXW+WHs
0LguvlBi8Y9lB4z+cTMgGEtGlPHQXeSJ/JFK8I3zHyYNxxY4Yi67d/de8ChHlN/oBV/eJbH2gvxp
i7eUxi1eI8hXBL3wCS+MLGyDQhtGxQJoHs1E+BlkF7dJq+EYjMZKd/PJpdfiMsj1qwJStrkhuumY
EXO6SvYrP32Qy0RJ3unMYXsNCzrAz6ez+VTlYzFElbeYyGtGQTIX4Zk/G4f+ibx/Rofu8eYum61T
ij51/RT5kzZ1L8xz7M+iwJUjU3lzS2k4TCxI1NYGYrFkjljTwST3LSfklrrXp1C+NrMnR4sd2bBq
/exEHT0DKO9b680GiLFZBXzfsRsPRLkMZRxWhkcr0l1tn+xKl+VtkRvgIt3YIw1dTzV0Ov/pofJI
Xg13/DxJf4Tg96thlBx1QhykUnDrqFhvt+Wd41XxxR3MiDYfFn9H1eL/X1XrHzEwxORA4QcKP1D4
gcIPFP6zUjg9UPiBwg8UfqDwA4X/rBTODhR+oPADhR8o/EDhPyuFmwcKP1D4gcIPFH6g8J+Vwq0D
hR8o/EDhBwo/UPjPSuH8QOEHCj9Q+IHCDxT+s1K4faDwA4UfKPxA4QcK/1kp3Kn83MwdjmSU5O15
Gj36ufiG2+QhadUvjaciKDF4ox99mMz01S9SCjDnxaM4FIGT5vfG720W+uOahf3g3y8hPVi+QeQL
8JZ8ScvyVSK6ehCh3rKYMY7yo46m66n/1Nl6oQeChkvH+w4E+w6E5QMY4zD0YUMqCaM9l2TrA9I2
0+G+HY6V9vn2AVtdseMAl0r01N6hRCZ86lRxOdThShZGuwDLA3ijRD6sXr3GRVmCyR5LMK0psSz5
uEo4wPYpMbeuYL5SEs3LR9aPddfTybSmHSOC5LOz0h2wqJSlnS1f/uFe3RavZSHaIE2TVL3qZfmi
lvWVTLuRv1K7WMzGq/cJYaZpWi+K/fRZP52pByRqq5eyPK3fx6IbenUnhcZ5+QFGLfWOIUNfv2RI
P7G7dn/IiWm4rIsNOnRMozvsuwZDzBnCPtu10Pu/3wtdqpYHu9wRSHe83TxbcHQfzZYZ3kJgOeua
bDCwHcO27a4B8Tk0bGYzo+f0e9D8fbPruHss35JYxWOxbTxcmJPJrkct7mgT4lLM+oQaFu0ODUqJ
bfSIOTB6PXsIXNvv9ojVtE2KYxWcEx5u4eTYIpPJeBvnmbjzg+ddaJFDKHE5MrBrU4OSvm3YTtcy
eiblpjvk0AXG+9EWcl/CXJxRRs5puJ0ANgppzcO1vsYO7C6C6xxuGsSmgH3QZ0YXRBvMZWhgdocD
gnbGQFXybvTVc8r4bWuyHSHO2EbbEbIPuNPFNrYsCNk+6xvUGhAI455j0F6Xul3Lspwh3+P0/YiX
B0tQMXThtpILdkqoO7jmRmT59SKORdo+jf8F/QkR9hbyqah6C7elECzzzqTYHhLXsLqMQN5hBCnn
2sZANiwZENrng/3xslFR1dAeq686n7x8UcVSUZSVqqWCQ9py/S3k+NI7UtZoMZevNKuwiTUYDihl
Rh8NmEEZtwxg1q4xMPt91zZNwlFvl1UvCC6jMy3H30JncieQ6MpP4znvn9+c9dIk/rfop/Jhr9L1
jLShtwzub7M2kaRvO5QPrK5h4x4yKOKO4fT63MBkACkwdJ1urwtgi1enHZ9F4xRK0fHgCTy7jJUt
NXv8v32iVqCXPQmLB2EpulY7Q0x9BlbJx+XpLWqhNilAg1Pp0DVcFwErYtc1uq7LDG52bWS6A4Zw
H0AvslQ69VheXdJlM8poXRfstMyaB0f3firfLNNi0mu0bcEVq01A0e/3iY0xRO/A7QHbDSHxBgNs
WE5v6MAwpAclc9t1V0XvfLjKuux4qWZ3Ii4PVuAzRLbhw6cG/1zk0PNomZYCLr8ANEUmtjnGwBZA
bkDLjtHtYqh8CPWpa9sDy6HboEtoldTdWNWhKlILbSM1saOQQtM8nkfZ6rFFAJS2TYDYG1qYDHnf
GHZpT/ZDgNp6Aw6Icc/tETxwXfNFiN0ggCEMjID3kFvp1EcRgIDdp1XxaVUT/F12hYoK5WBiHsXh
YjZfmYYd3saqQHJucntooKHqYjHoY2BrAO3QH/aJaxLXtUuBuyWpAoITaxsEhyhYOvcpm+brJzq1
MGszQMCJ28dulxl42JPVghOj23cHwFCQ6ZzBgMjpVhGUxVT028Tc1u+woFYPzvxFHNyveoF6ixMb
MgguKzZkIg2hk+C41ED/R9y1LbeRHNl3fokiHAXX/fJY17HW8o5mZE/smwMAAQ1jKFJLUl7LX78n
G0SjbwAZa8ZsxATJQbeqMqsrM8/JzELbCJm4hUyaR2Z4LUJmxLccLz5w8pnHCV585GN5lm8f33M1
VvB6rvV2LSZaD2jyO7sK5HGlCfQARAxFRc54EvBdVcH12qaY0KCW1kQED3lR2dPIS7LnwfWrsYgL
TmOvthOg8bjbfuvejfnOdWHaOKXcihwvZK+yGqNgitLD2yoZAO1Uwo8kErCGU0Ffdh6fnkc/4+ue
rw7lxhaby2240ZP1pu+V3f0S+7ngTlZ8pSSp0P1BjkU4JxTQcxYIeJ34IeTAcom8+iojgvNrHPbz
XMtKPF8c6UCQdKaD4Oujpf73t/XDml7wsTtaqycgwRvsMTRslQwyoiKoWVKxsqpdUsbbEvjQWxwy
GH9cGG8izGZJmP3Rd3WvujzK4cghB6N9jDUwCRfBlIEcoZLPkNFlbRGNtVuUYzDUWISgFkQIU8/x
/sfOk/+ly+zRGzqH2NEE5bHfMquxYXFcdiwqZZiVJURTagajf83DnE2y/Fhnt00Uul5SaDcxrq8I
5QNStvpI/w+leKeVtF2Art40xzMrrhB6BKBIxEqzaIYjGAbs1svOcP2wWfYNIzf4cSzL8K7u0kS/
/YJ+a3ncwF1i8FMe7hwhQhfNpfIBqkRoUcnfJfCqCC7bUi2Vi4wndVmfH7/u7n74cMZPd7ffAEUv
CTFWYW0XVNjbKeb7/mVz33/hNQFm8iCeawqeeC6pOWtIeBCsJirzJkO1JJuv8Iw+y1chvuEkZ3zh
8JaRIlItPAupevv9Qijs71TfenxanyAItIcf1AfUX2qNQkjHHEwFD6VRxE34URGlcsKH6VWe8IeP
f8v3X77eAG0N1DgnxFgNzRfU0Py4pW67ENz7IWtWhq88gX/YRLHcMCMEDMRqgQ0F5ltzUyLR+6IN
X/RGwxFHoli7nYti3Xriju6xET8DUAswgIMb6v6ASFaG4BKgdMoFPDY62GwRlpXqsJKxwU3K//Me
P1wbCeyWzNFtNse12x3pWb98tHCtBCMLpWNSzUxlBO7QvVBbFNDbbLLRdQz9JuOMZAhhIYxs1va4
Ddv94+3frw9Vu94n2JUkOzKNEmsSCL9oIHyIBTtSguWKYN8CJV/CWJL5aFfjed1cmO21nvjfA7f+
J1wuglj3CAHnVoIsIpZUvTKGgfQaphSeXrQAOQX7q1gBUpn1ixiUxl5+iMerV2MB5wDa7HbyuIQ3
229bytDEniEZscJ/tITwqiEJbZnyGjyuaMDIjB+tqiCKKTBjN17CyWhDSSx3cz5jj5jgtH43d7+d
1OviFgFbKUggAccIC4RAzcE32uRhDcox7Coem9JJKf8Wcev9UIZRhL77baSTEHxBJ+G7nOap4HN9
9/h43TtJaQjrkj5wJFji4IETKTEibGYJJsKMgqkBqwNJlkU3Mx93IlZYEEtPnc0P9Ip4fcAFnY9J
OnClwBZUUpVy1BHEzQHvAH7ZGmIQml9cX4y4vHC4MJZwsyTh3h29yw8fukpEb9Syo7bgAA3URsEt
c1DbwGFAANxg7V410HYOw36bOD+afyS5VguSa2Oma7u72x2+t3d9++n5dcHvDv5AqtBp47PHttae
aRkIXWJfhwz8oq3LQTlE/RReFSDnU515CPMbx6qZOXyxxvQIrN3fPX1cPzwiEB+fi/FdxkdaF0Os
mmmhsJsR9vFMnEKEaiUHa6xv7XI65fTKjleT7PjXM5vt+PK5xz8uCD3SOHg91zj4bc9T7r9+3wN5
nPahIz9ONNqlzJoCqFEaP1KyeI7ZmlY4fUWbXOYqo+EmkszRvd2YKXTsduX7H4ceUq3UASloyzvh
lC2GUoS6KgSZKFjQXLGSLVi150H6y5mt2RQjB3i4OBJ9s1twgltujtvm493nU4Kok1HCkzhdONPa
wNnEEpgXwFiAXBJuRmDr/Bsyjh5/P/lQZCeu50bsJFdHkbd/+MN6c3OUWnHXIdogZW0JZsprgHsU
JjEvHWfVi5i10k5mPo6Hw3FGAkg733hu56+n+fXDt90fszua65WmHYhYJ0SzlZXiwZZpKX3GDsw2
JCm5qbpLTl+0tzO1u/x87Wos2W5B3MCPdpJ/+cunj7ffPt/cTWoVz44bcFlFGSIrlFtQARzaV16Y
Ddk4eAedLH8jgrYsyVibIJa0WXdI7hRd7+6fbvbfT64OMZt32hTtU6lKM94ctNFgZ5G3BhjiPKBR
8C7nS2F7OPBIsL2YL7PvSsuTpPv1zfr4XqpjusIpsRJmJTntDwubUi05lvCbKQ745mOAlWmFAN+k
zs2+kIE/TXEuEX+642os7/WCEn4zUWKYT31/97R7oDcOvJParyif1v0mRSpoQ+PYOK4JipEeiKQC
8bXgVSq6Zp9eEyOXZjuPoqd3jvXzcyYHqrLb7w628I/y6eO03GAcl9Zw2GvjiI/FeMrJNxYqdJMe
V5P6vcoNvXhXYwX2C1qtp+Wqx6+7Hfjtw257//nuZpxaoHQo9mCXDRWdoYRqYvB4eg0AiWr1hngh
TCbB0wufszb1LfD6p06qn5eEGuU7preNV2A7d8lgLeHoFQhI/Lz7fPP49DBwCqbbptHxAj5Jicum
yB9HQDkRoHcKVPOvwYr/R/wzFnuktVV2QWvVF3gWW9beAeWtxIHDqFJEbTozMHzw7JgaQlHukvYi
11qDMeGSMxyNPBJt7+bU1e/X+8mWLLvNt8+HVNYjSUbuQ3S5eKmiltkAhgaAC4WwD4OrEjjNu0hl
Q/O6DNRwhuUVH94x1mHDF3TYih5gfvna558ISKeoU5NYPtc07ESB4YZSHLMi5FCTVzW3CcToRxhO
HPh2HuOCEFO2fdA939/tbz4/v2eEIorQXfm+I90e+6FyjVW0QBhYUkpBRcOaDy3xmpOt+XJBZj7H
uXzk7MaRTlLNMzBBWjth233blRKcnC/3VXSZR0tkS5VWWTS+K+c7pUyqrupLO/TLwvJqPY/U4A16
IcidrdIZWAyAHKJAo1wZJUi98pLJAtrvTEMkfbkkeblSFyf3XI3FndtXCHbKZKnijn+97nIxh4Jd
cHKlDkk2zV2m3IXUVD0Shor8ABuylMS15Pj47aqqR0nOdwbQ1auxOnZJxzB5Tr/ubr/SvgeXooRd
VyMxJWogPcZTBskzkdoZHHUqBm5yabpZ/Rax60+YevkmujJWxi8ps/bTktb2FESw5XwXkukXAfFS
a0nVsmao7yGRVrJoJhVsGq4cO/tVOYfhHGeY4uCOoRZrbuaFyjW3u2PE+XBzt1s/xNvPO0x+qvRY
2UXa1qrRtTTWOPCTypxK2zrCp0eXEuV6ZfmdkNSCoGNFFwDFWhhxBIqTV2rBvLykzCA9J2BCpYqU
jGrhlEfP2H0ys1pyTdpWbWO75LMWEtiYWi7Jo46xqNysP9/dP9LbqJ5flJ5vb6gTtpev6zyTWiWb
sGUE1acMSDBIHPCOiRIPCSGrq4kOItTlcUciSjnn5Wup/KRH9MP67nMELv/+eEMh/9krdb8pS4yV
EkIqFqmNQHmDsO+wRRAHTNEGJNqZNwdjQ5HO9Xuc7hgrrRaV3h7D2qftw2539/OOXgVzfBZa2pUm
ewCLyC4UwbRx1FIaOAvagIumKIG3hTetjB/HfLiJNNcL0mzEmR6O/Si6dd0cRsiudS1G3UrhgDLU
WcBjZHA8iHY2pdAAxhp3r2rkeCnEze8bK3Q9R0JrY92plrldDzyNDbajbLXZzMEwmWnVU5IvgULD
79gQjco1Bxcn9aPRQFfj2fySCFPHPQyGSz1MlbALVf9qrtRboiU2tiwwPdictsm45P/NaDu8Y6LC
wiY1m920RaZCcE4BBz+7kpcO0kHQ5mkTeJtY1IazFrP0AvugxTcECLGe6ZepY102c667tnZ6oCHd
fts93d8//UpFEn3ozKTf+66tmDtZ4WBYA9TBs8hwMgmMLygVsuOg9OYy43v/Yz/+uW6Q/oaR9HY7
b2xZO2EHuctBR548xBPfsgKspB5MYuI6gFfEbACJLfAbyEYRepa6XOrIWzttFqYPfAH5dimi9z/S
jjikqLULXVuNK0FmwPDqBDloAuQVRsYBuIKDAbrQXtwUz4Of38bPN4yFX8j8rd1mZoi/frvrTnoe
pqaisqMAY7vsf3FNepMZ+GOlIiQCoI+KGS+tFsogAtZXpaTGk5xRZHzTWJmFGho+nJrkX3Me9jQ1
UyswkoLXoMWn0wjBpcqkzAlESSTo8hrxMeyyyLgwEXPB2ty1nWQY1o+3PW+TihoxOjMTjYRqTCRE
EtVEYSmqSP3ExrlasPIXswv9qGORrt2CSHtxTPXc/uvLemVOuIeAc+bKBJHguQyWjQhwzF4wXpzl
SsXM86SxYTjIaHa/WcCFYd0XH/755RZY9zi7DCvRJZ1TLDbbwkozxLcqZ9FKASBvbGlFyOjEpKl2
MM7VeK6FJxL2U/JKlfzHo+ulHvHddbu53X24eXyiRG3XtYRfFCxFkTALl5ijxmMlDcCXDHA0hUcl
oxdS5Ldz82NZzve0n+4Zq79fL6m/6RurD1tnQ8fAH3tY0KkJOltCMaxZoBllYPpJcQcGApCZpYYB
mUu7cTjkRKR5Tnm9FmpiI/REnm57mbyiigQJlgMvsSoPdupBVr3ILAL6MRlt9Mk6Z6W/SBeGA48k
2y1wTny4uwBdVu3w6mWC5hKmLHjHQPu/qUG5meQiIHrKsGjVYmAxJM+KAdASVQQX3rAb+yjPmRuf
r47U3rt53o4+PD6Q33bfv3zu0bg89Iw5kUFOARgJEWSwowTAxmrw2VmRbKvLPWPDsSZCuCUhtkc3
9e3uf27u+pysMisCic2CIGIfMoR0ylsEOMsEqailoKUEgtD1T8/FGI42FiMs8MY9nMiYx369XT/t
7x/67JvTtDu7PGyIAbES2Nk58p1KMU8NLzar6H3WCc78Yop4NPJEts2CbOveljePX1a8X6HucEIV
QDAaBuIpb2WcZglLxkwxLabsZJAT/joYYzz3esFo9zs7MY2fCtXoBaWlFZddy3WlM2mcSd+5SKFh
rGCqzctCfXLc1rcvFvxUlm/5qQx12gC1znTa8ND35ay/Pd33cdETzQshVCt4YwjVGa4fSCiWHJmp
meuQrCktjdfzNMZ46jAnSRvh+wb2//goJ20ErhUrFWJyLXQW0dGRWtc4/ldkW0u2TYo3aiPoJx+J
LBf6rDZSTYnEn3cPm93D/SPtgyMME0k7rRPcg6GKuK8SmMZYVsHalXS8yXqZyx0HXRb+eHUkrlqo
4m8UtXSqF2oCqxo/ei7Ff3VnfPhzv0mXbSmiqsoBSWT2xCwEjLt6uPKoYUsl6Nbya/DkcYZlfY5X
R/qYhS7ljd1cT5b/b++HKfgDEtbKdoEoxpSMtA5UhI4dULNbgg2waq1JJfpSm36N9MM5ljUY3nE1
Fni3pMX+mP552H25/8du2IWkOxJlZG0qVCZ0geQWVBRONjBtrAG5bj6MOm1PTnU63liY7dyfbhC9
ZuH+9v7h0/e7LVHjcFhR+v3MNF2V8O6GejRzkiyUrmakAi750rx7c+/Wy3OODj5fHum6n58G9Vt5
PdX1T+/7Vgv5XN/2zw1B1Biussa2t3RyXiPEhcwra8InBU9e8SzepEbw/mIrRn/5aqyJXFLPzco7
oMmUFH98vNnc3HbHsg424kLXuQPvnqCiAC2Hnpy6+D0cPVCakikEn+TLnSSj8S/0k4zum2jjl7SZ
MvdTdr8rY9I/GHxEn5DpeEWntOi8S1bQic4aNTp6lHOySVZXXwrAL9QQTtdHOmw2cyy9vfbTDvKf
vq0fnv51OIoPiWnDacLNXbU91whztPRdDXT83sKwAPGZdjY1W1QzS/0wQxzQD34GD/TXR6Lv5Jwz
XUvZN0p+iB9j/vOsWqOB+T19zYEF3GcqgMOnRj2TXEeepXdS/F59L0MJr0ZaqHk+7VpdT9sM1v8Y
proPnbyCawu31zX3a5FK4aoxehUwngydKKbKvaOv6PAmxfrCk4m/vBRChncMVdiZhQoCPuwrCHQ4
vQfBxwPuTXCVZEusKPoiDZ8TC0FGVoVNJSfOI18mCqfRJkJcLwhhNhMOO/qOqHeKGr2o5oWN3u0Y
kREjGqSqySW4VF5YzEoy6Yzn4Akx83iJKwyHH4ln5ZxM7exzx+WgN2/31B2bOzZw+T4VlehgS3KK
BVng/0p0DA8Z7MGHUKzV2mRxsetvOPJYtGu9INpuimNyoy7IcvOw2z7dd1lJfvAOInSHI0QLhs5a
G1MpVRYKC8IJAHGfjY21Bu1f7LHsR3855LZX3D+5aaz1bo57dk7IE96vP0wAv5exOQujSqpauJMY
WdCusqx0lJ434P72ZoD/OPvVWD61JHRfTPq6/jJI3XWJw5aLCKmAmiRsmyYTHWXOTGepKni6aWJy
GH4wxmRuvzR36OuEndqrdMr9S3tMuHAhDcJ2YVbQF7hEsCRq0AIjt01LV2QuE9Y7Hm0kSFgvCLKx
/amX9CF+moWCBIWFlxb7McHdUCYzOVNYBpzwtkqEMfs7hYKTfCO1Nn7h2W68meQFR2nR/rsXDs4r
IQBH0GBwHjryCJfqU4hUxPfK2pYkLy+l4cZDDwXc6/Xcw+6d0jM/8Z8HV0NHGvnKdj0tz391x05S
ACqvrHC4WcBUSj+Ag8poWuXSx2IvB6p+/HM2/3x5IHvgGz7javhQ9ImF8363tlqCg7zGUOmKZ86w
xAis/8vbtTTHbSTpO3/FHvcCbb0fx3qgZEVYOw7T0sxtoxsNWr2SSC4fHtu/fjMLaDQKKJC9Owxf
bLoBV2V2V+U7v9QWvGTihRWLDPeWpLWkW/dQw4eHZZXrz+AiPfWfj/0/z+nYk8bPqoAZQwU4NQaz
WBzETuPRl6dSKkG4ZZJflENZ77MlmZbvlVwd+jVXBzIFwQ7Hx/vd07nRVRKaS9nxyAYtwIaXWGHo
MBilQd/K1oH3FkMwgcdk670s5aJX5dZdhR4mK72ujxmxKgPgYPlG1mZqaI/iqgWTFrQsB+kO59Rq
LI9LDagz7ZmGG+b9WzhXqKGuT2Rst8dOr8xZpbJfqW748GaZDX1RcXPqlHZRNjLkSjMCWg2VnGE0
JuGDqKIM/N8U95YatlRRtuZAqcku+uVDSgs1zDU49DY68AQdqGE4J41JijSJa5HAhgxg3r+RGj7v
XhKt1ieegog7EX3s7m5/OyviobGeSEccVioxdJ2wmNWA/GgS08FHx5Rv7bKbdbbKVbkVrexvlj/7
GYUhI3ZgBIuiShxECWX0HR965S0RWicQwt5wif0xtDEonVNMiTAPB8HGi1FD8jYvAIfk5yU7+7VY
pHu+DAx+Ph76u5f7ToIOTFEsP1ISzQwK33arG6pccJFrWg2nzRiYb1FnYf7GVUlvV2OiO52J59vu
nFPN0Fqegk2sm6C1HEqtvVBgEvEWTBRlTSLtRqKkqxyJPa99h0otrIcjon+cjqXWqOTy4XTOgrkG
9pmICNUEfr1T0TQqOCwJ1ymJFy2H87IlUUqvibqxS0n82zE34Kdd1w9hB+wpRAGV/406WAqwDEAt
CIZFA0SbxjEwH4NkLXwkorQX1TycdtgQyuPTq5LaVdAErsdNV2m7f/+wu/9y7HJJYIaiwFJlsHvy
yaQGBCs4uoQ7A792zB1RYP/EIMF+1zG90oEz32C76OT0xpwFzrRds8DM1ATwPv1jSFcvuubADebe
w3kg2FrLpSaDx0l9IJYno7V+I1iTBQUl9Wa3pl7S3dJm2v0zwDYPuxGaD8sBKVa7m0H6UlAZDNwg
kGQGESRb+P6xMtNYxxhpqREVJTdP8/7Hcocl+N/0vCBf9ut7yXe7PZyg4gpknfRv/27yqTFDKFsm
LyhYnuCxgEctOG+ctpjzt5qkAKLakDdzWYZ+8+prw7OCq4NY2x38ICdYh993D+cisDHtyEFGJ6Ua
hhgOPKJLGg1tgBURjLSEh0UJ2GyRcnPJa5vvF1IF3IB0faoKHZJFRoCXwQXQIDDymhhDlCdMghnl
KGkdfQWYLK9Z/5byo4LO/mZtJQhCz4Ue//Pt+NTzSStQlWVxBKsX5JluLHVApMYODalDo5QFP8SG
aNgio1ksdFXsxlmFBDFZV+HndP0M/2+RogbxCt4ySn+HkXaidOOZdw0JzBHvvHGBlwSUy5QUrJv6
rWA3XaVeLw5dHgzfVoJmbxG7dqWwoBbBLocvg2HPs0Hs4rYlAevtL8AsiZtNG6enVyV16ysrOFkn
ob5/v7v9aXfb58YvMNRUFvgZbLnVObEqJQYbwLRCxFEwrxinAmxtx1r7Fr7DnIQtBs9vXJX8VE4G
F8vCmiqc15gboLlVVughwALsGueUR4Qbi4V9sfEkYpOyDcEnmkDJvXnibSLnBZSvpUoXXNZYPzci
fNvd/nqcKcNsIYcgEokUnCTQGkPiI6A32HJQIykSw9ii/m62Srl9Zyvb91Mz+3dQi49TPTheyBYu
gPUIooCBPDBr0VTkqgHXTAZrWp7IIoY3X6PcvFe1zVUFanDxWwApBn9uk2tQo9SRu4YKhoBnSTY+
gcBoHUonqoQx4m1+68qLC37WFqYQN0v08UP/+PXp7v5x4gVTcTkwNfyBXqVTlig4sIGAKc7xt/bS
2IYIpcAiFwx+88u6NfNWJ2rxha2mzdWLVyUXqsZav7Dox2jTCg+LG4lRFo7ySCliZQy6UZJbrHgG
vSfBBBISIdaTioSKC3IH21hZFlbar6mVN2xxsM6SBK/l34/pOHNICUgUkmt6uLQMnDfPses+uRy9
jnC8DA9cgf1Zi7PXu+5xi23Zj08LNvS6bxU/FCvYxuvnhxvwF3LbFIj+fJSGv1AWsha7KxX4K9ik
BK5e4xBdSYCUkG1iir2itab1t2rzx8cF7WDRr2k3XJzq9cL7DCiA/9/juUdVv0NvVGiwLxGIUTLU
s0TrxhFwTiORLWGgzxSnf4WtWYJprAgu+RUV+2q/R1zqzO/d/r+7M7CYynijUcoIZrNGbOAWy8Uk
mFlENkJE7VKrTGALTLH5KlflTmvHRHRMbgZh8oH70f1n5cRzzxGbjjc6Bey75mDhkEAbwVlygsYY
YvuqmYNrv3DU4elVSaqq0W+WkAtje9MXuKl27LAiBKUKbbVvJVhkVmM/EFY0uDaAUmhb5iITKpo3
gfE8NVj98OHlBqwfPpT82cp16Pp+wR+GgTuE/hjb+NjYxgfOijcI9uYIASsY9BvWEBlwGEQb4OxZ
ottXvd/wAuBh+LEkd12DnT88ifsiCPzp6fjtjDg4BKxdJNEFA6YmEDdcYWstOA/woyhKwfl1C79h
Y8kFWRVj+CCmdtnu+f5xFunkAyCFpdIIJ0jDcr6Pt6ZxinKwDRljBnw9vQQBn69TEHAwpkLAGfvn
Y84CTM5mRsjCfggPP1+jW5RmEa66o1rC7eJWqBSElAtfs1hlvr8UFY0AH05xvfDleNs/9r/cfe1v
j3/OsMnwioC7boLC2hOiQJMFDeeHhdgIJYmmFuRNXBBSX66gSFZC5hI82MXB/qE/fj8gqM0cYk9G
DjYAuN3GY/cQkzgQBhw8HH4DFh0BNXtRJG1cfKtzPD8siTa6RrRdAkL0HY4N+vsD/CdOcxhpV/RU
zE2TQapBUVkMpIGF0IAVmJoI0oZpobg2l+HTFhttCpbZOwU7ag2VZKW9UbkovXRr3aeAzv2pbnX8
C2NSKOItCEwVsLmISLDKAmMNYcY4Bi7/gJR/kZkDm2yLfnhYEL+raC6Zi9b16IF0X6YosdFyyIdh
9lyAJ4s2I9ZSGfTEJShSxXC0kKAb8erZaiUVHalQ0U0xpPD+HzgF8azBT7HUJFnw2AbjuVLgDlne
eNoqHO8hDVdaemr/xVhqkQRaEFIwsVdrJSP3h351rHcP3ZeMpYZTScg4nSSfAoon2ZgByIsr+HJB
imPQj3pugr0oMnx579KJkK0TPz4umOz4OtonOzgw/X6EKXzou4c/7s+1+ZzLc91SIDJFsCclorgi
4h4Y82DfwIkxwjge6Aay+mLVgqTDulPfyr5bVc09H453757GhI7D/5olkOjoAGb3T5PWSh/AMQJD
nVvFGqNCaIijiFbmCDcvH6r54hu+7OyNOTOgnNeyUVG29J0Cztz7uUdUuf5hhJc7J3M1Rc+cgEhl
XoJARzXDQ57wBf8gguqk4MLQeBlgWWWvDQFTebPkTuwq3IllednH3e2vD3e/FcOTWDRAs8O0FMZr
vQduAtx5GlIkwZLWiIvK409rb5T+jk8XVPcVqm+WF3u/674+3xeIwWA/ihEOImceOBEtIiRYS9FK
tm0DHoptfDIycOmFIRdJeb/Yac7B8Kygn7G12YIfLs9UNsERSSzTLHUuoVeIPs5AxQrEdGAW8w7Y
LMc5bVmghsf/t10/PFuQyiqk8kkRXN8jfmq1qkslMAUcQW8JVagBY9PA9914Av6UaCP1/q+CY1lS
WbK47lrPH65Cyt3dLmeu8EYPc6DAjjfa+SYyjrEQCerBWg//4FTAt4Tpw1fUA6y5ZRvAo4JOU/GZ
lNmbm3609u++3z9gifw5zpSbD8EoS4LR2FCKYPsCBJDD8kjqWw+WLnGcLHyP1UolHft9jY7DqiF1
3iQ0zRVhubwoS/XYeh2TbcD7R4xjnDSBc/sIVcoYlhJJL+PYrDco6Nz3a+dEdZou1NBP/QM2EO5u
u36OG3MSc0THYCKHC5f7OBAzE64YQq8FQbl3JrCL4l2VbTbi4usXr0oOWI2tZbfDefLlVJ+GLkbL
QHdF1aTksJ4IzFqfqGpsihz8aS/IZSrovPprczcXtHcV2q05RcHg0N19++2dPQ+NQN8Z/DEwVExD
LXa3g7oH7Q8ym3gGrhqYvj4tIuzlMiUFO1KhYLdfx9ivd7eHbIus3BzJtFIMhwVicyjHum8HBiEG
FAncrMja1lxYkTNushlfH58XLPTd2utXeZJSwQLinR36p1zW9djlrNAQRBkKtVqjqEoEVB9xAdFX
0FA3AZhQrYqRunCZs4kZunjaZjvbs3rtqqS+xtKqk3ywGLPXhH/hTzOCh+C/kSnwk0XiviGKebSw
UCADUwGxAEUkJIrXUXDy2i84bPi4pN5UBPPNfhnMisdhGvnDH9ezVEdGtJVjmoMwHC3FEKEJW2IQ
OIYiNpLEOSkt1aD0387dWNOz8dOt3iu539e4P1QGZGFNxu54Ww0dJCz00GDX0IBzAX0EfxstnKBb
DaaYF+CQXHinpm02b9X0xpwR2HytL+DDJfbD43hlT1E1LJ4ee9mdMh5+tcZrg74vkeBNOdQcbZ6S
YJN/EWmhWHlBWl8hDSfE7Mt2xOJksSEejKaY1yDbKVyEhKDqIojGYLVQC74fYvvRYN8+/3umZqs1
sXaeNKmcJ036qYPg5w8/rcMOKthWBZzkyhJCLrWqca038NULxyUlnmr3lmGHGREF8XwNAA0fWnqy
jb4M0bdm93g7RUWFzFgduf3QGhpbQRBKBrQyV0k3vrXg7gbj0HxTIS4KUdcrFgRVJkXih8sSj9/v
u3fjrwEe1+7X/nse0n02gyKWHTsVmzaizsMEpZfRNi3njnvQI9TLVxDbFqtvBTkWry24OVS4YVMf
2f7PPBLpnGbNcIktiFRpmkCwIN9gTwNch4ZqDOqE4LlYhHmLVYr9VSWRqpWd4s1/nmPdCrNHQ5CF
t+Acs9QIg1MXmNFgbhEcNGlaIqIg2oWSgD9rwW6tKqaLButpwga67yrjqqSIFPZsG1As2I8A6sTY
luHoVc1YAufX1K3sabmSiK5ynvQqlTy2eUxzeudHKaRojVECc69Y0EzhKBFMUoHRb4VDcU9fK/Qq
Ft+s+SreKtjYVXwYveuWs6Tj8fGre9gfnx6m3k49pKFyqFNawuD7lDitiTMpwRUHgyrFNkovJSev
dHgvVt/SvsVLBRf7msbay1r9Vi6Nxl/B5N6CoYALbAsmHFiuwSMCX1IeTNrYgqMorIBLo4R9HZop
r7xtLuXHJdWycok7riqwQbnxu15OrklwUWALSDIeq6LBqxWM4EixloL5FxgnlwHFvQITV9DedTXa
V43zcPbcM4IDDgWOakDDUJZ52qYGgYzgtKNYb0EsMO+dBvkOuviigNm4+Oapx4cF0f26vRU/nAyb
9x+WXRyxTYYGxGyRCa0xkFs2St4kpqzXcObVK1H8y7s4ps0XJHc1kruqQ/B8e3x6HALIn26HMH4Z
PTZeMvi2E8v31OEpZwZ0KuguzaImkr0ePcaVXwgd4+MFB5WT0vPzWBS8Gx8XKLrjzEqpCFCVfKOJ
hZNCOBxrsHCAAWFT8DqCIn67mZUlFXMmDN+tpb0RnNUQvsrBlUOPAA6uHMClqVM+UYFVlzgFgcFf
YOpgvytj3gbMqrUXD+t4fXzl6rWrkgNeY2sFgL+cCTHUViJw3qAFBj2gvAN5Y0kD4ghYk2BmG50Q
fAEuu6IpkcvG+la3u3BaxdKjNkLsKyyu9DQCDz/DVf14d+i/ja12U6zIBGqcAAsUp6rw4PEnC6TR
6I+A3aCJo5fwtdxjGwJ5/lbJzU3lB9O0Bqk/1urTUyqPKwV/5UIerRn1DtU0JTibh4F/xkEuBAle
kMQSc+dfVRkv1EdNj69KMtfhZWNvlr5b4boPgfhTKS9XOUow/JEzL96lYHNuWuGBi42n4M0ZHQ2o
dBWVIG8XJjjT8lLSYHUA7U3lAO5It4gSg1nT9eem+Knis7WcwmEDvdNicYanvHGJp8aBTSJVSqiJ
XvKlZ+telRQcKmRRcxLLX3+fwWGsACjAu7fU2cYknJ1uIx/CS4J5gj1+baD1TqzzqgUxe7UO5cKH
y9DJt7tfj7ePU05xuqDWsySTRYyzPFkPvh6vrWki80ppD4fjshkmef1Xz8Gcio1Ey+yNkk9rK3za
yW37eQd21u35HIxWSGolNSQyTFzkOCsI1gRyNiQumc9gIPyNrJCSggXxa1PEdL2qIKI+HzMO1Ch1
MrYyxciqgnNL0FSlQYP3pUIjk9RCg5PvmbtU7X36sC12PhXldaZWr2YObOnefHz+9nR8unvuvqyy
yNgZJE7IhOOMWiaTYzgaHDPVOHCLgSedJMK5UiaIi8pdlvHd3rZI/S5fK1g8mIpKOPRTT6X7nIZA
7lTyNd5huLHRgw0iLEG/AawsywwCYdKWq1a1MsZ/EYunOFklHSULlfp4c7hZQgSOc7Ue/7h9+tIX
aSOcqjX+SMMfqORodASr5GWLGR4GPh0CEjTSRs+wPC2pt59wMNgj12sK10bL9NL8q7CsYu9btrL3
ZxnhIeObDU38/8b/5EMYzQhDmUTxnHBGt2QKlKOQGXsDR8GGqP8SQJHh2YLTQ4XT84iT9z9+Wg5I
jNpJi65Ly/MsIARQRjBCZiihylsb/FtNtv20PqaWrYczW8uJPhyW8yi/9QiNM1dRPuk2eiyxlwxF
RsrWpGhaBP/nFNwcZy9uXs+4O9u96/j4qqTRVAjXh822hw9/y1Vg7B0ZDS5tMYyWp7hJYvOASotz
fzj1KMhBmsMFc9rBkdKvYN3ltbc6BhZFXUBkX6F8dzaexkwBrWQhnIkkYHMX82i209yVh7jknhih
OdiIaoGJslitoETQtRlnBTfrYaTf+s8/uXQWTRhDzcmt0XiCL0iB62oxMA9uUmwRGMWB6SqsD4jP
RC4rDj1t9cJJgKcFE7VCQLvH8tZVn7j7HH6IKFeHZl+cR/RuwGEQziVPA1Yq4JxGAh6eC9g8SKTK
A16JCBdXhOIuL6QY8XHJQVf5GfZdt8xN9d0R4xRzkCnOPHUmqCaGHOQTYCWaAAcZrqQXOvBW+Rez
UvM1F0RVRNl+BXAyIQ7NBg3wEDRFkWaxBpy2tDEOY9QBfGiaWm64vjAUtg02VIEaAurWVoPtJH0J
svxv1y8NXmE6wBUDL1IbxPYzEU60AVkXg/RKG9A9Ub2dM3amZaN34bqWUwMOVYXt1Ui6mup3v1yD
ktUY8OBW5Ko5q7VtUSERjaWxwQWs8Q1NUsYHT5kD/+Ovm2gJD0pe16Pr8MNJdmJx0xF0+3+dJxGr
LDcpDlCE45gkBt0MyHoc8dlorznCgidwqDZqYRcLFuQc1oMJ4UMxFdCBYi7VvSZRUpAoDRFYmCFw
ZF6iFDzfFJi0RjLzZoPsa/QKXqN3NUgOXauwu3/639aupblRHAjf+RW6TFVStXaBEC9X5SDjR3ls
4tkEZ3b3QhGDva6xIWXwTOXfT7cwWDiAZx8cEgz61C2p1ejV3Sdcoyhsjwonv9yFalTh+4iRXHo6
p3jEiFm9sT3howlzDd2y/w/LI5mDjoDk5xRXZWwYbZYeEmRDwmoYmB5Rmxrns3/iRjjA1WCAQ1lv
YmMcKOHXUzXHwirJNPC7wH5pAl4j1DZGkJLUC2M0NZjZtJ0iRS266OKxwVzuwFyBG/CR0FXXgDEO
FAIGC7jQ5KBnnpsK7Ea8olqSOvcOa+De2Ui99ZAmbu0AO+gyqzrC7uA8lOIaERsy3E1kPQwfgcea
bI1rNpahrdte5VxnrGG31YnWr+UxBDyLv/seX8yrdB03fMXBVxf6PKfoLggPI3ATTcJhzGPoIr72
0LKuD1xeZSYzEtIGTxUhDL8/rH1icYpdJ9moiA1t09LhA6ubGIN4MqY9e6SrMHaxuGuM2MQe/qK9
bpl/lzOD672nkGkf2xcfluovTuLj9r22CqhVwdRVzhzNxYUThob9k5GBVnNo5cLRxp6aH7xtfMiu
zkzD3CtkzLlakzyE+31a7aWbVsmOYTHo50MMWKahZobuYuPCJDNMqsFA2zKtzvM9cr6KghvTIrC5
l0a7Tblx8nw6HKABBsC3C8kzcgijmLy+E+g48ZG8HVP0gg1DkTw8bmPhHS//e5eVLwaivHmYfQs2
6TF420UDUvjzKkIpB2v4m8cDosoPszgPsrx6Xid8K3v1v2UPP6RSQQ0IemiXtEviJno6tdk/pKm8
eATjXMv1i0EOl8n+neDKEr5JN6T6Og6In+bh/kHXtL7tkWOc7aI4yR/U+Z366Z5kP9DoLArSUx4A
W6dENCwQi84IjIf56V75etzl4es+hgyQeJUtTIim5Ae8zOOkzLODRvlIpoNZnKkQUe7u62X25K/4
Au6extPZ8pEo5//+n1/G7bDn2V/irbtcPfrkLkmT3joN93G2jqN7ojxcrpYMqrfljcLX+e47epL3
oZOi+DZcMJWy59UPorhTshPbOl0XNdUrTCbcVhXQrBGjMVZhGGBw7pVAeiEQzZdh2heMU2BWszN/
IhZyE2+GWeNNxmC0hUbepPLoRBmdfWqCyk+g258Ej1elYjBp9SQ6n5/J55lPtqgVUWoAG13R0qiM
YW2Yu8L5LLY6IbZj1uiUV5mGQHcLowgtCAgwjSfQJdG9V+bCDzfh+IQsk3VLu9py8T2+WCzdTgGA
+SR21jNXtMJsT+ExIm9t8qPTio4FmPiAbjj9cEsoo62kqNycXwr1RaBZ37KYzJJNelOkn39f7PK4
4GoNyq5ZBGgd43N3TqYr/jRqrQTD7GtVHWiAycP1txvKQbP6VMa8eIGoOe53qAbCLuJpEOVr/Ipr
Z55o5jY69oUO1K0SBCPu827eqFZhKFURM/P4dNwNMur1FgSL2eN8PAKxbm9Qp2961Q/E+OM//O5q
s2lV15QKzOpx5i5HndwZRk12DkLLtyqBUq71ijeo67NeOxSi2gKSMfTfqWp/6YtPRnct9K1pcWdq
5hnzGzmAhspqCqFQBKJfm1rf8CSM8hNQSwMEFAACAAgA9ZAuSkexk2+JRAAAdDABADoAHABjb20u
YXBwbGUuV2ViS2l0LldlYkNvbnRlbnQuRGV2ZWxvcG1lbnQtMTY1Mi1jcmFzaC1sb2cudHh0VVQJ
AANu2XpYbtl6WHV4CwABBPUBAAAEFAAAAOxdWW/byJZ+Hv6Kehg05CSUWFXc4cmF1sS3vY1lpzNo
NAguRZs3FKkmKce+D/Pb51RRC6nFMd3GoANTD5bM5eznO3WquFxmqc/y3Eb1j5/Ouu58HrPub8z7
NSr41zBNCpYU3RG7Z3E6n8Fv9DvWNfKHdOkWd9sk4NP7ksaLGct7Xy5Ob87GvXe9JbUwc2fse5p9
631hWR6lSd7r975eDqcsu49Ant5T/B/mfm/5O++duf7FtPdMcaWTAP5GYcQy+wXaSkthtzXVFfU9
6sDfLu6q74+kYRowdP04Z/UDv5q6rKuoc+4W0T07AqNl3ISXWx74xz/+AWb9Q7rJWYZORtvMNAVL
0sgtWO86mm1xIAo2ZAXLWEXYsDXF1miXaCaSFVNRpIsp2qcAWBDBrq8IK12MuzrqYO0TJpgcSVds
nmbFzlkYS/0kTR5n6SJHNzcVGcemgocWwfKgT6hsmAMqjy1rIBMDKwYG8UaaLkkSlxz1v7vfGJpG
ic/QIE0LG+wIH5QzP02CXJKmj3nBZugE/HCbRcUjt1TB/EKIwhLXi1kgScPMze9YgK7vMuYGa0kU
hEZRPncL/w79uWALsNTGyzM3SuRCnCBJ4wefzTnRusvGX4fOoD9y+sPheDpFnenJp+n405ejyvHc
z2u//Tq+OndOzr/0T0/gpNHoip/lFkh5UGofqlQonINCNY7Di6vL6dg5v7g+mfyPJH05Q1fslucH
OmduBsSoYkuy/BFJ/AzHuR5/vd5JuyUnrFiWEsIPubIBY27j3/lh5q9/oEx+6GXfH9D07L+GF7/9
DTNW6sNBke8Kc03nzIfs9SEmwjSbiY22NLzqTz+fnH9C1+PptY16QNZ3/TvWu48ClnbvilksSZ/i
1HNjdJ25PNwWYQjJ1cmAUZYz5N9laZLG6S0wilcBeGRLkD6apumKxc01nJyzgltgx97/UfrYCMPQ
DFUWBh5F18NLiI8kAZcZIVMDTVVUNVTQdHqKPrtA/o5H/+jifCy4GCbVmnFhOpyww0XRdcVXeKiD
aQvWRSGkBLY+IJYB5ClLXio2GvDSDD+k9CAvsCGgGO7WWFgQ543UCSziHWSRF25WQLJz0pZKiN7M
H74ZHvSHIB0lt8IxCbtNi0iE1ZIXVekreGXJa8sres0rlqoa1it4Zclrj1d0BVNFfQWvVE1XegVI
a4S8RvxiRTN3LIWrltI1g5rma8RvyWufpXSqNAyyA/FbsqhYytDAUFoD0rrhWRC/4wcOg1ERPwI+
FSJihxOwU/otYkA/zdxb+IbNYLYyeoGTZjWJKN0jWoD3cTrIRiqrLlTbZRm27WeWXWV72DVMM7ZP
NlG3PC8MXUVHy+Nsu1IVhhzrP6d5Ydsg7/aOzm/XE9u+YuFlkR0fPP3jL78cofcIxj77CHf9+dym
pn4k4aZSw3iIHpb6U5Yu5rYdRLmb56kPyMNGqb/ghe80dQOWddan1rcLaYmhoc6iiGIYG9mGrh1J
pKl4QUDZj4z6v/s2d7gAqr7FnzbjzyzfUgJ0QEfgvGUMwZNYB5x0Z2sggrpnOI8OimC5VqjoBJXH
2TZ87wixs03IAUPsTn0zCGDCmFlrZoOQuQZk6doGEz7OWvEuMjfJI67mdTpMZ7OoABTZxITQPbiE
lHwn4kEF05SRzmVRjiS9qSyW74YHZPEFfxiC30d8+OfGfIcwBcXAt3KsSBdsWGAMo2lAMNXSDwdE
GCURRxn+P2BQJ0gX0AQId5hkxx9CDNU8ksyGUrjEZU+E5cx99ISq49m8eBQmsMh2KlqNeQaadZin
qCBLtc8ARq9Yni4ynwnumkYPKE9BEqw0DAIjCMyDQQDtc7IQ//fDgmXn7n10KxLxMoWUfNwE50rC
KwZ1IC9AhCQvfvlQIQwj+GkBkPfuA/LSNK7s6sdx+n1D+jo9Se7dOApurk6Fs6lGJIybqOWbrmaE
FaeW4g7dOPZc/xtoBr86XAxRBzDqhItEtJpubGONQixj0pAh9LzKDsM75n+rWvIHViz/7wtJlnEO
wFMXHpJdNUA+2gz5XJeBDSvIV/H0MI4glERlErV8BH1XwEq24LeNvKVkG3m39+y6vVFc5AWMKBwH
Q+ov3XF8n0YBOmCgj2VZ3PKeYVGwjtrQe7qlmYe9x380j/2tMK+n7LsX26Bxqi0NpRFly1Iqj3Ot
KV7o7BBexPD9W1TcPW9UU7PAigyflDmgynPxghjE3Keo3lBR3WP+E4p2dnfVPSISGEOB41Waj1eg
NvFOvEnWMh27bjVrefkv+S+ZdVY7uQCXLhcFICavyEABlzrLU8tCgTUOIGYjUTyFaFD5RSyeXA5t
+85NgpidsTwHusfL77wiZMUiH7ZV+IDWQV3X7N3RDxT62BHcAaJSPjLeofzu5aRF8BCAk89V1Tje
wuAKdG9iLviogLdC1iWhK+az6J5lZ+58A7XLfaVSvJksZzxBr5qaZSxB3d+lVbqUAOgRpZlHNd3C
9eBazk2DdMGSQwP5eNZtiAixdGKBWLiZ5TRieRRtMdy12AYoF0kEUebMoeWrClXF0oCF7iIunIDx
eYbaYR/Rx2Wmos6MzdLs0SY6he6PkIZyazxXD8p9kayNKfgRvcJP4/xqFf2f7r079bNoXmxwqgZQ
akDcEMaQouFdJKdpCmE1ZxmfKv0Nuv+Si17RStW4N9SGXChk/hNceLKJfoTCSGV5xHBS9tCcXa28
cCaTdJEE5QTvzqSEpYamwTBynOHk6ub89OLi0jmZOsP+6enJ+Sfn4ubaub5w+s704uZqOFacy/HV
5OLqzJncnA+vTy7OHYfrbEhEb8Y1MELsl1xLDUbpVNTYXBEDbl0iRlOKKg2rFOFLdA4gnNmQlM6o
iaqE1hPjkHQWyFaDps8n11DzvfThwMSPryi+RTUEdIaLjK9Jje9FTU7nJ8kZX8sCqlSTqNKUqqGH
aAkb5+yhJMv72JRrrlIiUdyUpAYNqjOIU//bDQyg4zXZM55R0BydRnlRSs3HHZMoBjwHZgaWaC17
+/P5oewVvAzi+kGoI2d0OV0z4bGk6IZEaVNSfM5a/v18Wl3NcJJt4Zf/5N8AwUA5vspnR0IZwKty
Ou0PbjlNlajaUAQlMJUdEbJFwgnqJrhCa0ZQd6luoho53pgK4DR0iULCxZH3MPe7wSP8QE/NPVqG
7gHcqsiB453U+5fvzEpahgVxZzQj5YaexxCntCSiWmAv88ll3h3sxorhK2hFAJC/s1ns4np2ZzMb
UxgGUEtIB5IFB8Sr2o1pFEI4KGeEua3WU6jYFnOiQCAX654ONBoJi+s066Q0VWMEIIVP7f4pjs9Y
sciEDxQxV7mhNi/nXWvkqtRMnVqaYaLVgc73P8sfojKZVMwtNiJnUBWXetZo0bXG5MnJYm7T5U55
5iZQJbMXGAiqPPomZvidP9O8ZpgV9T1eq8aT4sOQW9eQszremd1mTpTcp98EMGJ9ZZrnE9QCP9gi
uDaQRtYGom8uJNQ3p7H25jTW7Wqan09F0bverAo1MYUahAYBlOZJlN86RebO91nhOYQotBgrQmKI
t7Wa8oxhmYlhLF0Z4a3LhX93mQq4J5hsLZI8Z+CoMX934IgpDEJV9Mojx/rqxQ9HAapCAguwseZF
sTpiicWHZoFoWcEmEL00eBRqYrGK0JAStLFrSutaq5tiKaBhOGsYbRPaBLPxkvTFCkjn5Gz23Y0K
J49uEzfeF7b+05XEdLFKAyVEiZukecyYiH3LWuWs//59F+8fk9SoGIqlEKXSGxd3Ub4sSLYtCDvQ
3VX66/J6GehkF5kIteM4TW4R/1NtscW+Yxx/QHh99VMMzXVlJsrQttLhx+1nqDHmIW/mxtAE2PZn
xidPct+F+Ns3B8A7heP10XzmMPLPFgV7+PhLVdaXaBSvJgo0DXUcZ8apOp6bMxtbxvZK5HMUCwA+
thQDU/llTzZdqSgWKMxtjhRvLz0+g6OhKXjDsZ8/Jv41dB/HNSFW02dbkr076hx95LHCw2SJJ+Va
mIE6a1LdOxsTbXsl8jmiqUrwKqKNkyJ7vEyjpOj8FXLlCqu1taL5HEV0LxB031UCyVmmlzPP0ofH
40rqLYDscn4f+P41iT/8JQO+g/DeTOZYtDo5ZRw1R9KD8G69Hrzztc7XhHdza6xyc3W6mckr5/7b
Mcvfa8yy72Kn+rVanurqMEj5fcudndKfR8jJlutpfIOY3xSTLmCGOopti73NSbVMwnRu3fNpGU9O
GWPlpCRE3ktGNgeSyHy9JLJeeYxkQRKtlsYQoGUax1Fy2+bN3yxvfkRQw6aFMdqevzYaXmXke4qr
6ZUrMdYRsbyC346SqIjcOPo3qw4rCL/IZetYsDafh9PoUeO6zHRztYqxM05YFz1s7Fs3Nhuz8vyw
ZPW9CK8Pc9O2Sqz1aujQuC4+UWLx66IDVt7cDAjGHBF5PPQXRcpvY/BfOP+h0cDTwRBzPry7c/x7
3lG+0Aouv0pibQV+C4SzpGboxhZAPiPoDZcYpZKlblBog6hcAC2iGQt+A9rlxbmiHYNurHI1H196
LU+DXL8sRco3l+E27RkDha6S/dLNvvFlorSw7Tn8XosFA+DHk9k8FvlYtqj8EhN+ztRP5yw4dWde
4B7z62cQDI83V9nsHFKOqbcP4Tc9iWthHhN3FvlD3pnyi1sq7TDRIVE7GxHLJXNFbdpMuiEhgaGL
a31K5ms1B7xbtLljxfrZsdh7CqJ87Kx/NpAYa3WB72zzBY2ohxkOau3RCnRXv4/3pcvyssiN4Czb
6MMVXU812PZ/Okq1kxftjluk2WsQ/rhqo3jXCXGQccKdo3K93eTXK9fJC7cShTZvi/9C1TL+v6rW
m2gMMWkhvIXwFsJbCG8h/GeFcNpCeAvhLYS3EN5C+M8K4WoL4S2EtxDeQngL4T8rhGsthLcQ3kJ4
C+EthP+sEK63EN5CeAvhLYS3EP6zQrjRQngL4S2EtxDeQvjPCuFmC+EthLcQ3kJ4C+E/K4Rb9kvu
ivF1lLOZO78DozsCBsV9xTs3yDz/+RSerxuV51NsqJc3LMfp9+U93i948gX2KpT5Bfys8vALrJoC
h1/H1erruVp75XuiiNJW67Zat9W6rdZttf5JqzXBtZvDh5Mpj5KiO8+ie7dgL7ipTTHK54LEzK8g
eKNbNDVVc8X9o6UwZ+WDswSAk+Z3sh10C309t6ivXVnJ23uQ2tt7UBh5e08KI1rbHbyV7qD+jDQf
jOsugijt9v+7fDJ/+/CEv9fDE0rvFOXTa7t9/t/yUbbVCNcCajGPoE8sYVnkL2mvxptiZFUZVFnq
1tjw+Uz4W32G/cs65fUGQd5U3sbDR4jRouZbQU1zBzXBb5HbzflrkhYxC8IoZlH600yxcJg64xoc
etSx57oe1RCfR7lI1v298Pke9PwRKYuqaBLdTleRyclesVi8rVZ0eftg9AdEMfGYILpywQRccHKx
eVCkRvc8h+YHRD2TMBRG64fAiGc061h/G4+cJO0s8VtBNKq0rn4rrm6fCdQuCLQLAu2CQLsg8LMu
CCjIL1+CjL5DgqCvpo6We8QL61BHV2UvKo5sCaHMfbDR2rbrD+zwDu3wD+0Iqjsw1jALfUXhTILo
wCn5egfXTdMJ81gguM93d7jijD07LM4EZeYeJjyyMqsml4VVj/mcFlb2Ccx34CopzbJ0Ff5wTTA5
oAmmNVpqoBv8tYawQz3ERNs5Q3WFuaJ5dc/6pdMoC+Mt7lghfIef7RGLclrSaXob+W6Mhpc3togl
Io2zLM3QkL/Npwyv9ZmqdM3HZueLmceycid0cJI0iBI3e0QnM/EiPQmtTuMvqFFCbgAZ1TZiBZzz
9ItuOlA73sN58NXFXfX9ETo2++ZoYhBNHqp9LNOJpcn9yWgoq4pqTWCbOdSVj6j3JY0XM5b3vlyc
3pyNe+96S+Ihf20eH7j1vrCMvxs47/V7m7fl5L0nxOk+zP3e8nfeO3P9i+mTh4/YPYvTOX9nZN0c
2NhnDh6r6P3mHXTTu2i2zPCOApqrfU0dj01LNk2zL1PLmMimaqrywBoNTEMdaX1reEDzHYp1eQjZ
lcd3aRjue0vrHp+QIcXqiFBZp/2JTCkx5QHRxvJgYE6wpo76A6I39Um5ryqnq1JzR05Xx0EYerty
nrJb13/cJ61iEUqGhiLjoUllSkambFp9XR5o1NCGE8OgCj4sbUn3KZnLI2qSm6a3I7mnmf6WhbeK
2h7Zh4piKpahycSkIPt4pMp9cJ6sDlVlrPUnY6LsjYE65f3S14+pyu95brAjP4xJrd0IOSS41ccm
1nUI2ZE6kqk+JhDGA0umgz4d9nVdtybGAaMflni5syIqBjzdMTVshFjehzXXLC+uFknCsu5J8i/m
FywYLPjbM1EHdzkRzPNOo9ickKGs91UCeYcVSLmhKY+xYlAyJnRkjA/Hy4ZFnUPXE1/bePL0SXVN
XbarKeWqGug95PjSOpzWdDGfp1lRQxN9PBlTqsojZazKVDV0GZC1L4+10WhoahoxlME+rZ4gXJXO
9LC/I53pQ2ELa+8i7J+Nzq5PB1ma/JuNMv5SUG56lXRhWAbm76pdwkHftKgx1vuyiQeKTBXDkq3B
yJAxGUMKTIZWf9AHYadidNQ7jbwMSlFv/ACWXcbKDpsD9t89sKaVr6t7tDKpiC4wweVocnVy2e2v
LG3pStfgCqhEtYzxSNYNClVL6w9ka0yITCb6cEBHA6yPxrsKTFZBn/e4wT9B3b2L/Hx/MqxerJz3
duSoqmAZxk4xxpZr/B9xV7bbyJFl3/UV9VhAI+jYl8dY7Zopw2WruzFvA5IiVYRVlEaLx9Vf3yeS
W0ZmkhKmhR7DIFnMUMS5kXHvPXdJyQ5uzK6AU//GKBaM998e7rd1m6DbnWLgFWKFYpnVkUM1IIwQ
iRKX8MIzK4mrxIxKY7FOs/3QFYbibpHl4evRPTkNaiRZ8JuxJEs19Ac7SV62m+dWEDZjojtjTEAU
GKCoWHEkG5wu4SQl3nNDbHHGOytdUuyiKPUO+f2mnRHkOKQvxkLfjDVloVdDdrQvqtbPPyX/k//8
5e7l9tP2w0duYGU5fn73AbIUlUEMXLVYHMY2wXb5IAopmtoIdXclqcvqsl9l9vvqz54UuxVPl48g
zinTcNzVTr7KdPScL3q37/jlWs4lDmL9E4UfPgqoD98ZABgoUSKJkYJhsAiJYpTEKG+pillSVg/a
y9NjPf0/1J/urWWlkGK4Fr7UanDor7/OHzfb2w8fZbVAYqbxE4ePQJFS4pYx7GuOAcyhwInlzIh2
oTjEjgH0c7yvX3Y9Vj1l3i8zrcf7iw18SfkYPv4bwP959QwW/1HpDnh9A2hBFbOGMXheEAVQHIeD
zcAiKU0iWpu1ExdNTzfrNNbuUotU0zFSxVyHFLfmj583T4c/FQWgYqY6M6IZLyaR4kWonB40IWTo
XmIhBs5yjOoiRL9cru5q2uIMUegN/WO1xATTw1p8V60I8ym5bg6G/+lhs715+fZwEA12dsY6smmM
MrYQWrpwRYKvM51xHxIsZFQ8Rts7uKOZGhCG6zEIg1Ow39w/n+6ej39F6yOTMwkEhsfEopeElVCZ
l+HEp5jh7eE1jWQa7y2C/jTN+par8fpOLgeW6vP8Zbv8eoioPnw03O5M7e5DVaQCwu2iIFR7YKIa
mCT1RNGcGI/gitG/6g4PC7x6y1s808PbMVetgDdjqZdzNpC616MBH+mqZ+HK1RvAvEvCU0IDg+3K
AjRGF0GYtBomyIOI8YvCnmaewh57169aiBNGYy2GQcfTavnyuHlGqGQ6z66MEGZWDS+wZ56VElBF
bmFtBXcIk0TAS2ABvN3AT142Htf72c/Yuv3VPm4csTFuRZUc7HfnXP7uj2vBnMzoTFRHuPtQDQsz
hglEopGBPHbwnYuOxORptpl7EN23GOz9WtNC7C82MjBqxzLUvPZeU//nZf443z5vtquDttrKp2iB
PrqCoxIR2AvPFbbbZ5KlCUJZnRztW4tdNvCHifkGYBZTYNYH27WcL78ecZhqkJ2S1vvsCIeJAF0F
DperzeDeRKnhjaWZxNGbqoXgxAQEN7Qcn37pLPnPXTr203Z934/DlBMW5y2S7As2x0RDvBCKaJ6c
VylH5vRbbuZokenbOho2EOhmSqDVQLke4Mp7CY7Zl/pvCEU7qbjuHHS2qhgaSTKpRmIgFKFmeCIr
isIZOpzWy8Zw/riYtg2NGfzSYumP6i4N5FtPyAd6tj/AXVfadeyfHJDvzptzYR1E8ZAiV3sXJAiH
B/sMOWXKIu7UZXl+eVhtf/x8xk53wze7KGcEohVhridEWOsh5/v+bXF//CPjNfisFsRSWZ0n7kso
RqsKHlFBYZlYFSFa4MVmWEYb+ZsYX3+RM7awP6QRBCH9WJBDSgNSf6ssrKudPz3PTxQE0sMOyl0E
nXL2jCGeMVAV3JRSPW7AS4aXigFfhjdZwh+//K3GPBuwrZ4Y50C0Ykg6IYakhyN117ngox3Saqbo
zFbyD51ImiqiGIOCaMlwoGQiORbBgsWRUnTSGvVnbKBovRxD0WY+MEf3OIi3INQMEcDODHUfarTI
nTMBVDrEhMDXG+hsYpqkjIg3+AIzyf/PZ3x3rQFsptTR1KT/bu9Wh9jtuH1140pyiqea2gw5EhHh
uJ0NgmSWGMIYFZXMLfUbzNNgcG7CjSzm+nAMy/3T3X/f7EqtR5ugZ7zqkSo1SY1gtCQJhg9Y0CPB
SMxw9sXVRKZrkYxnu2rXNWMwyxs5sL+7PNWfMLlwYt0tBJ3bBck+hWyFUiTJoogQuHteg+QknK+k
GYLKKF/loHXu6Zt4uHrVAhwTaLVa8cMWbpYvtRPwlD9Sis3wf91CWFUXmNREWIk4LknQyIiXkoVj
SSWosWm3cDBbH4mmZhzP6AMnOO3fZvv7SbzOb1Viy1kFxGAYoYEAVGrGRAcLbRCG4FRRX4QMQtj3
8Fuf+hgaD739vZGJMTohE7NdPuhUPL3ZPj3dHI0kV5XrVnlgSLDFzoIn1iQj05EEqAhRAqoGrg4m
mSbNzHjeASw3AUsOjc2P19cfPsodL9gl16SjQiBaEEHkWu/xCNwM+A7ol87OOybpxf3FjNMbhwst
wsUUwrU5WJcfP3dVvaNS8y60RQxQENoImGWK0NZRKBAIN6J2KwrCdgrFfh8/36zfIJdiArlUari3
tYl9vmsnuH6+f8RkHz7u7AEXrpPGRotjLS2R3FV2iXPtIviL1CY6YeD1g3uTgxwvdeYmjAe2oqkx
fdFKHRlYud8+f5k/PsERH+6Lsl3Gh2vjnc+SSCZwmuH2cU+MgIcqKTqttC3lcjoFm7YnIm8Osv1f
r9+Qlx6CbiR2Vo4ldnZ5jFPuH77XrujTOaypdV/DaBMiKQKkRki8hKBxH6NWJdH6gBOfjlWa6QZI
xuxeL9SQOnan8tMvfQspZmLHFKSmHTihk6opQpkFnIxnxEkqSIoaUbWljtvLma3REo0B3F1soC9W
E0ZwSdXh2HzZ3p4SRB1GDktiZKJESgVj45MjloFjgXJxmBmGo/MvYGzLEofF+5ANuxkrseFUHCAv
//KX+WJzQC2o6Rit4zyXADWl2cE8MhWI5YaSbJmPUkjDI239YX+eBgDX44NnVvZmWKt6eNgVwHfZ
HUnlTNYTCF/HWNGZpGQRLdettBEnMGoXOKcqS5Ze07czdfC4v3bVIltNwHX0oCfx7z9f13z7Zjuo
++0NN+iy8Nx5kmpuQTjE0DbTRLSLysA6yKDpOwVo00haaRybkmbeMbmTd93eP2/W30+mDj6bdtIk
aUPKQhJaDKSRiM48LQU0xFhQI2dNjJfcdn/iBtiajbfZSrUcJd1vNvP9s03HdIURbMbUjNN6PjR0
SpRgSMA7ERT0zXoHLZMCDr5wGYt+JQN/WuJcIv404qrFezMhhF0MhOjnUz9tn1eP21pI4NLOusJS
fa+CZIQNheLgmMKqj7RgJBmMrzgrQpI52vAWHzm12nkWPRzZymfHkRxCldV6tdOFP9L1l2G5QRnK
taLQ10LhH5OyNSdfiMuQjVtcDeLfVW44wrtqBVhPSDUflqueHlYrxLePq+X97XbTphZqOhRnsMuG
sk5RXFbeWdy9AoJU+15UjQuhMgGWntkYpcrvwdevO1S/TYFq8h3DYe0OLMcmGVGLO1iFSiR+W91u
np4fe0ZBdcfUG5oQT9bEZRHVHntQOeYgd3C1fyY7zf4f+U8Lu5FaCz0htTgWeCbbPz+C5c3YLoYR
KbFcZCSI8BFn+1DgimKXtGcx5+yUcpeMYTNzA21txqGrXc/XgyOZVouX210qq5bYu3Q863LxXHjJ
owINdSAXAm4fCpc5eJo1vpYN1dsyUP0Vpne8P6KVYUEnZFiyI8H89nDMP1UiHbwMhWP7TJHQE4EI
16VkiGYuuhysyLEMKMZxhv7Cji7HPs4xNoy2d7LH++16c/vyeExIMrlrU+iCVJyHTCV2UYNhYEtr
CsorUqwrgeYYdI6XCzLjNc7lI0cDG5m4GGdgHNd6EG0fWxgFo9X4UptZl3nUNdgSqWTile3K+UYI
FbLJ8tIJ/TaxvVKOPTXiBjnh5M5W6RQ0BkQOXqDUXFlNkFphOeEJYb9RBZ709ZLk5UqdH4y5auGO
9cs5PYxka8UdPz3vcjG7gp0zfCZ2STZJTay5Cy5r9YipWuQH2eApBSo5xdfvV1U9IDnfGVCvXrXi
6CkZ3eA+fV3dPdRzj1iqJuy6GolKXoLpERoir/1TtZ3B1K5fR1VMRRYt38N3/YSlpwfVK60wdkqY
uR2WtJYnJ4IjZzuXXN8qEU85p5A1Kar2PYQqFU+ScAGdhinHyX5TzqG/xplIsTeiL8WcqnGhck71
6uBxPm+2q/mjv7tdYfFTpUfzztOWkpXMqZBCwZ9EpLW0LT1sujch1FwvT/8mJjUBtBV0glDMmWIH
org3L6fMNbW8ZgbrfQInFCJxTmotvObRI04fjySnmIPUWWpfLtmsiQT2vHaqTuA5dhKmzfx2e//0
vFn+vHp6qj31u9+mccLXdXFyKYIOODKs1qcUgmAEceA7ynPcJLisriba81CX520gcj6Oy+dc2EF/
3ef59taDl39/2nRddTur1L3XLDF2ijEuiK9tBMIquH2DIwI/oJJUCKKNency1od0rt/jNKIVWkwK
vTy4tevl42q1/Q0k6ZR4k1zPZNUHRBHRuMSIVKa2ZztKnFSIRYPn4NvMqpLa2zGeboDmZgLNgp3p
4Vg33q3r5lCMd61r3stSWzNNqZ0F1HsCwwNvp0NwBWSsUPOmRo7XXNx4XCvQzZgJzZU2p1rmct6z
NNrpLmTLRUeKCJOokm1N8gWE0LA72nklYo61R7Pd2Gaiq3Y1OwVhaLj7znCqhylX7lKrfznm2lsi
OQ42T1A96JzUQZlg/0Vv2x8xEGHikKrFatgikwGcVoeD167kJR03AFpsPQRWB+KloqT4yC3DOSj+
HQmCz2f6ZXIry2Ic6861FgNZwt3L6vn+/vlrLZLIXWdmfV93LfrU8AwDQwqoDu5FhJEJiPicEC4a
ipBeXY74Pv1ynP9cN8hxQINeL8eNLXPDdC932evI4zt/YksUoJW1B7NG4tIhrvBRgRJr8DcEG4nJ
UepyqiNvbqSaWN7RCebbpYg+/VJPxC5FLY3r2mpMcjyChmfDqoGuhDxDySgIlzNQQOPKq4diP/n5
Y7wf0IKfyPzNzWKkiF9ftt3jubula1HZVAeju+x/MoVbFQnix1yLkHCA1guiLNeSCQUPmN+UkmoX
OSNIO6gVZqKGhi+HKvnXGPs9TUXlDI4kYDXq5tcne5wJmXAeAwIlFiDLW+Bj2mnIuDCAOaFt5kYP
Mgzzp7tj3MZFbcTo1IyVCqoQFuBJRGGJBC987SdWxuSEnb+YXTjO2kK6MROQ1uyQ6rn7x7f5TJ14
TyXOkQrlWIDlUti2GgD7aBmhyWgqhI80Dhob+pM0q9vFBC9082Px4c9vd+C6h9W5m7Eu6Rx80lEn
koqq8VamxGvOQOSVTiUx7g0bNNX25rlq15q4I249DF5rJf/pYHprj/ju19N83jw910Rt17WEt+os
WeJQCxOIqY3HgiuQL+5gaBL1gnvLOIvvZ+ZbLOd72k9jWvHX8ynxF8fG6t3RWdRn95+OtKATE+Fs
ckmRosFmhILqB0ENIhCQzMglFEhdOo39KQeQxjnl+ZyJgY7UO/J8d8RkRa1IVGDR0eSzsIhOLYJV
yyLxoH6Ee+1t0MZobi+GC/2JG2SriZgTX64uUJdZuc5/7B944VBlRrsI9Pi5NigXFYwHRQ8RGi2K
d8S7YElSIFosM2fcO3ZjH/CcGbi/2oi9NuO8Xf3ycEN+X33/dntk43zXM2ZYRHAKwlgZQUR0FEDY
SHY2Gs2CLnm6Z6w/1wCEmQKxPJipl+3/brbHnKxQs0oSi0aAiHNI4NJr3sLBWAagqi0FJQQECF3/
9BhGf7YWhpuIG9cwIm0c+3A3f17fPx6zb0bW09nlYZ138JXgzsZU2ykEsbXhRUfhrY0ywJhfTBE3
Mw+wLSawzY+6vHj6NqPHHeoeTsgMDEZCQWzNWykjScCWEZVU8SEa7vggfu3N0a49n1Da9UoPVOPX
VGv03eNSgvKu5TrX5zsp4bYzkUxCWRGpFstT7ZOjOr9/seDXND3k19SXaQHWOpJpQd2xL2f+8nx/
9Iu2hnnOuawZLQSuOsL0gwn5FD1ROVLpglaphHY/T3O0S7txkLRg9tjA/h9f+KCNwJSkuYBPzqk+
12vq4+mmUPyTRZ1T1IWzd2ojOC7eQOYTfVYLLoaBxH+uHherx/uneg4ONIwFaaQMMA+qVsRt5uA0
SpOMqF1wQwvPl2O5w6TT4A9XG7hiooq/ELWlU7xSE5hl/8VSzv6re8aH7vtNumxLYllkCkrCo62R
BYNyZwtT7iV0KTlZSnwLnzysMC3P4Wojj5roUl7oxc1g+//2qZ+C3zFhKXTniLwPQXFtEIrUxw5q
s1uADpCstQrJ25SLfAv6/hrTEvRHXLWAV1NSrA/pn8fVt/s/Vv0uJNkFUYrnIlwmTCYg1whFYWQd
kUorBNfFuqbT9mRUh/O1YJZje7qA9xq5+7v7x+vv22UNjd1uR+v7PtI0mcO6q9qjGQMnLnU1I+Fw
yaZizbtbtyOec+Hg/nIj6/pmbL+X/GYo60+fjq0WfF/ftvuGoNoYLqLEsdf1t1BIuDgXaSaF2SBg
yTPuxbvUCD5dbMU4Xr5qJeFT4plReQdhck2KPz1tFpu77rGsnY4Y13XuwLoHiMgQlkNOWrv4LQw9
WJrgwTkb+OudJM38F/pJmnEDaeyUNMPI/ZTd78qY9Qd6X9VvqupYUZ/Sqs+7RAGZ6rNGpT56FGPQ
gWeTX3PAr9QQTtcbGRaLMZde3thhB/mvL/PH53/sfq0FENcDJytv7qrtMXuoo66/96T+KgsNxQLF
J9LoUHQSRU31w/R5wHHyM3zgeL2B/k/erqW5kRtJ3/Ur9ugLevF+HPFsO9aecLjHnrmSxZJb626p
V1J7ZvzrJxNFFgtVoMTdVfhiy6wykEkC+c4vR771mQ6cz4WS3/sfffyvTbZGgs1vETJEg7lPhAMf
PhSsmaTS08it4ezPqntZUnjTcCG28bSDOKzLDHa/L0PdUyUvo1KD2KvF/ZKFlKgoBIH04ZfBjmLM
3Buw56RVwedXfhn/y2sqZPnGkoVRdTII8OGcQcDm9NkIPjW4F0ZF4CWQJBCUxsZAnOOeZKZDioFS
T/uOwnm1FRGHDhFqv/JhG4TGbwQWemHOCw56PTEsgo4oQFUOJoBIpYn4KDjhRlkKfoKP1L/kKyyX
b8jTfOtMjfpYcbmozRufa9vcqYDLzqGogI0twQjieAL5l7wh8COD92CdS1pLqSJ7sepvuXJL2kF2
SBvXdkwsWAWZ7h7H4fmhRiXpJB2Yq80RrDiFvdZKZQyVuUQcMwwMcRuV9jk7aV+tsZxXf13llive
X73Ucj1u7Z7RMH629/P7lcFvuS9Gw6UKImsQJ94TJ00mUUjPLS1g95c3M/hPu9+09Ike0XMy6cvu
8yJ0VwOHJSbmQgLXJMCxKTxgK3MkMnKRwU9Xha2a4RdrrPa2vb3dnCesbL8L59g/16eAC2VcgdpO
RDMEQ/LgJWGBFnjkukhuEo9p5fW2qzWEuF2HkL2eu17C9/7DRhUEYJhZruE8BhA3GMkMRiUSwZyw
OnNQY/pPUgVn+hq29rbz2+6tWsUFm7DojL0wCa8ACtiDGww+D7Y8gki1wXlM4luhdQmcptfCcO3S
SwJv5W4rYW+NkBs58ZdJ1GBLI32na03L8a/adhIcWOWZJApiFsxUDD+AD8q9Kply65N+WVHN61+6
88fHC9od3dONrwYfsjmwcFnu5pKTM0CvUpi6opES+IpBsRoHXjIN0slVhvuSpHV02PZQw4eHdZXr
T+AiPY+/3I3/OKdjTxq/qgJuLZPg1FjMYgkQOySgL8+U0pIKx5W4Koey3eeSZFq/13J1GLdcHegc
BFvBTX+jKKul7Hhko5FgwyusMPQYjDKgb1X24L2lGG0Uqbh+L0u76E279dChh6tOr+tTRX+rADhY
vlG1mZ7ao4TOYNKClhUg3eGcOoPlcYWAOjOBG7hhIbyFc4Ua6sOJjMvtsfMrS1aZGjeqGz68XWdD
X1TcgnltfFJExVppRkGroZKznKUiQ5RdlIH/neK+pIYd04xvOdB6tov++l0pKzUsDDj0LnnwBD2o
YTgnxBZNSRFGFrAhI5j3b6SGz7u3ROvtiWcg4k5E3w0P97+fFfHUWE+Vpx4rlTi6TljMakF+kMJN
DMlzHbJbd7MuVrlpt2Kd/e36Zz+jMFTEDoxgMVSJkyhhnL0TU6+8o9KYAkI4WKGwP4YRi9K5pFIo
D3AQXLoaNaRu8wJwSH3esrPFxXJsL9aBwV/uDuPDy30n0USuGZYfaYVmBoNvOxvCtI8+CcO64bQF
A8st+iws37hp6R16TAynM/H1fjjnVCu0VmBgExsSjVFTqXWQGkwikcFE0c4Wmi8kSobOkdiL3neo
9cp6uEP0j9OxNAaVXD2c3jsw18A+kwmhmsCv9zpZoqPHknBTinzRcjgv2xKlzZaoW7eWxL/f1Qb8
shvGKeyAPYUooOq/UQcrCZYBqAXJsWiAGks8B/MxKp7hI5mUu6rm4bTDBaF8fHrTUrsJmsD1uB06
bfcntEI8mxWKAkuVj3CImlkQrODoUuHthBtovQP7J0UF9rtJ5ZUOnNfhEJdvLFkQ3LgtC9zOTQDv
y9+ndPWqaw7cYBECnAeKrbVCGTp5nCxE6kSxxpg3gjVZUdBSb3db6hXbrW2m3T8ibPO4OyLzYTkg
w2p3O0lfBiqDgxsEkswiGmuG7x8rM63znNPMrNQ9sMNzmvc/1zussf/m5w35atzeS7Hb7eEENVeg
6qT/+MbWU2OnULYqQTKwPMFjAY9aCkG8cZjzd4aWCKLa0jdzWaZ+8+5r07OGq4Pc2h3ioGZYh3/u
Hs9FYMe0owAZXbQmHDEcREKXNFlGgBUZrXJUxFUJ2GKRdnMlepvvV1IF3IDy4VQVOiWLrAQvQ0ig
QWLktXCOKE+YBLPaM5o9ewWYrK7Z/5bqo4bO8XZrJUjKzoUe//Pp7nkUs1ZgusriBFYvyDNDHPNA
pMEODWUi0dqBH+JisnyV0WwWuml2E7xDgpytq/hT+fAV/t8mRQ3iFbxllP4eI+1UGxJ48IRG7mnw
wfooWgLaZVoKtk39TvLboVOvl6YuD17RViWr3iJ27SrpQC2CXQ5fBseeZ4s44DnTiPX2V2CWpItN
G6enNy112ysrBd0moT5/frj/cXc/1sYvMNR0FfgVuDybmlhVCoMNYFohei+YV1wwCba259m9he+w
JOESg+c3blp+OidDyHVhTRfO65gbYLVVVpopwALsWu91QIQbhJMFTy7QhE3KLsZQWAEl9+aJt5mc
F1C+1ipdCtVj/dyI8Gl3/+vdQhlWCzlGWWhi4CSB1pgSHxG9wSxAjZRELeer+rvFKu32g+tsP87N
7J9BLT7N9eB4ITNcABcQRAEDeWDWoqkoNAHXTEVnsyh0FcNbrtFuPure5roDNbj6LYAUiz+3rTWo
SZkkPGGSI+BZUSQUEBjZo3RiWlor3+a37ry44mdrYUp5q1bm2WF8+u354cvTzAum4t4dwZBplTTC
a0c1HNhIwRQX+FsHZR2hUmuwyCWH3/y6bs261YlafOFS0+bmxZuWC91jbVxZ9Mdo0wYPS1iFURaB
8khr6lSKhmglHFY8g95TYAJJheMKik6UyStyB5exshystN9Sq2756mCdJQley7/dlbuFQ0pBotBa
0yOU4+C8BYFd98XX6HWC42VFFBrsz16cvd91j1tclv34tGHDbPtW8UO5gW388PXxFvyF2jYFor8e
pekvlIU8Y3elBn8Fm5TA1SMe0ZUkSAmVC9f8Fa01r3+pNv/4uKEdLPot7VbIU71efF8BBfD/ezr3
qJp36I1KA/YlAjEqjnqWGkM8Bec0UZUpB32mBfszbM0WTGNDcMuv7NhX+z3iUld+H/b/PZyBxXTF
G01KJTCbDWIDZywXU2BmUUWkTMaXrG3kK0yx5So37U5bx0QOXF0MwtQD973/S+fEiyAQm04QUyL2
XQuwcGhkRApevGQpxSvQ8nHtF446PL1pSdU9+tew+KdOq49wU92xw4pSlCosm5AVWGTOYD8QVjT4
HEEp5Mx94lIn+yYwnqcGq2+/e7kB69vvWv5c5zoM43oeA4aBB4T+OLbx8WMbHzgrwSLYm6cUrGDQ
b1hDZMFhkDki2Dw1+VXvN74AeBi/b8nd1mDXD0/ivgkC//x89+mMODgFrH2iyUcLpiYQN11h5xw4
D/CjaMbA+fUrv+HCkiuyOsbwQc7tssPXL0+LSKeYACkcU1Z6SQmv+T6RLfGaCbANOecWfD2zBgFf
rtMQcLC2Q8AZ++eHmgWYnc2KkIX9EAF+PmIySrMEV90zo+B2CSd1iVKpla/ZrLLcX8mORoAP57he
/Hh3Pz6Nf334bby/+2OBTYZXBNx1GzXWnlANmiwaOD88JiK1ooY5kDdpRUh/uYYi1QmZK/BgVwf7
2/Hu8wFBbZYQeyoJsAHA7bYBu4e4wuFK4ODhICmw6Cio2asiacfFL3WO14ct0db0iHZrQIhxwLkX
f3uE/8TJKEfaNTsVc7NikWpQVA4DaTjkAazAQhJIG26kFsZeh0/bbHRRsCzeadjRW6gkp9ytrkXp
rVvrf47o3J/qVo9/YUwKRbwDgakjNhdRBVZZ5JxQbq3n4PJPSPlXmTmwyWXRDw8b4ncdzaVq0bo5
eiDDxzlKbI2a8mGYPZfgyaLNiLVUFj1xBYpUcxzTJdmFePVitZaKgXaoGOYYUnz/dxxduR0tUxSP
AdtggtAa3CEnSGBZ46gcZYU2KjD3lqNlVoQ0TOz1Vsmo/WHcHOvd4/CxYqnhhB96nPRTTwHDk2zt
BOQlNHy5IMUx6MeCsNFdFRm+vnfpRMilE3983DA5iG20Tw1wYMb9EabwcRwe//XlXJsvhDrXLUWq
SgJ7UiGKKyLugTEP9g2cGCutF5FdQFZfrdqQdNh26js1DrfdmT7Px4ROnUSzSCAtp+EIQ7NTIYJj
BIa6cJoTq2Mk1DNEK/NU2JcP1XLxC77s4o0lM6Cct7JRM772nSLOr/xpRFS58fEIL3dO5hqGnjkF
kcqDAoGOakbEOi0P/kElM0XDhWHpOsCyzl4XBEznzZY7uetwJ9flZT/s7n99fPi9GUTGkwWaPaal
MF4bAnAT4c6zWBKNjmYrryqPP619ofT3+HRF9dih+nZ9sfe74bevXxrEYLAf5REOomYeBJUZERKc
Y2glu0zAQ3EkFKuiUEFaepWUD6udlhxMzxr6Od+aLfjh+kxVExyRxCrNqo7uKhrRxzmoWImYDtxh
3gGb5YRgmUdmRfo/2/XTsxWpvEOqmBXBhy+In9qt6tIFTAFP0VtCFWrB2LTwfZNAwZ+SObEQ/iw4
ljWVLYvbrvX64SakPDzsauYKb/Q0BwrseGt8IInjHLWiQD04F+Afgkn4ljB9+Ip6gDUv2QbwqKHT
dnwmbff2djxa+w+fvzxiifw5zlSbD8EoK5KzRBhDsH0JAshjeSQLOYClS72gK99js1JLx37fo+Ow
aUhdNgnNc0V4LS+qUj3lYFJxBLx/xDjGSRM4A5Myra3lpdDyMo7NdoOGzv24dU70YNhKDf04PmID
4e5+GJe4MScxR02KNgm4cLWPAzEz4Yoh9FqUTARvI78q3tXZ5kJcfPviTcsB77G17nY4T5Gd69PQ
xcgcdFfSpBSP9URg1obCNHElCfCng6TXqaDz6q/NsF3RPnRod/YUBYND9/Dp93fuPDQCfWfwx8BQ
sYQ57G4HdQ/aH2Q2DRxcNTB9Q1lF2NtlWgp2tEPBbr+NsX/Y3R+qLbJxcxQ3WnMcvInNoQLrvj0Y
hBhQpHCzEs/ZXlmRc9zkYnz9+LxhYRy2Xr+uk5QaFhDv7DA+17Kup6FmhaYgylSola1mulBQfdRH
RF9BQ91GYEJnnRLz8TpnEzN06bTN5WzP5rWblvoeS5tO8slinOcW4k9zBA/BfyNT4CfLIgKhmge0
sFAgA1MRsQBlojTJ11FwprGJlx22eWTimdCOYL7dr4NZ6W4aIf/4rw+LVEdFtFXHNAflOFqKI0IT
tsQgcAxDbCSFc1IyM6D0387d2NJz4afbvNdyv+9xf+gMyMKajN3dfTd0ULDQw4BdwyLOBQwJ/G20
cKLJBkyxIMEhufJOzdtcvFXzG0tGYPOtvoAP19gPT8cre4qqYfH0sZfdaxvgVyPBWPR9qQJvyqPm
yHVKgivhRaSFZuUVaWOHNJwQs2/bEZuTxad4MJpiwYBsZ3ARCoKqyyiJxWqhDL4fYvux6N4+/3um
5lJrYu88Gdo5T4aOcwdBd6Ktji7riFOReUHIpayJz8HCVy+9UIwGZvxbhh3W42xPdIotADR86NjJ
Nvo4Rd/I7ul+jopKVbE6avuhsyxlSRFKBrSy0MWQkB24u9F6NN90TKtC1O2KDUGdSZH44brE459f
hnfHXwM8rt2v4+c68P5sBiUsO/Y6kZxQ52GCMqjkSBbCiwB6hAX1CmLbavVLQY7VaytuDh1u+NxH
tv+jjkQ6p1krXGIGkaosiRQL8i32NMB1IMxgUCfGIOQqzNus0u7POz+vZrY3DPB9Mw3QYXswXsjp
DwyWgq2VGFg0LkaFU2vM5DyEZLMPKsCRFlfX9b5/cRzg+2YeIFDcyQcb7eaw+R/nkL3GJNgUKxIZ
fHxeiLQ4PIJbA1YjxXmZNlOZJDU+tt/jH72YvdEdC8yAEThDHH0ZOlO3lEwM9swE9CO2VYBWtC5z
nCBrOC/gw9u+szAv1xIxdK6F2WTEj90q8yzi5Y2IJTlrtcQUMtZlM7gRFHNt4Ls46VFrsdfq1ZrF
L5auNW81bOw6rpjZDethzenu6Tf/uL97fpxbVM2UTasRW+Uoh+9T4dApwZUi3oBdWFJOKigl6CuN
6qvVLxkRzUsNF/ue4t2rXhlarfDGX8HWFompDg1MJC49GOAxIJBg0XCJdMrg70on4e5r6V5HmKor
X7b66uOWatWRRYPQHfSj2r/er4o3NPoksZOl2IDF3SAFJKc4GS0zsGIjF/Q6vLtX0O4a2oehR/um
/x/Onv+KGIfLKetJOx5YLgTxmOC0o3bKIBZ4CN6AmgKT4qq433Hxi6ceHzZEj9suXfxwts/ef7du
Rkm5WBYRekYVNCpBbrmkBClcu2DgzOtXkhHXN6PMm69IHnokD12/ZpoJX92Ln++nbEQbBLdBcfi2
C6/31OMp5xZMA1DBhidDFX89CI4rvxABx8crDjonZRTn6S54N35YgQEfR28qTYGqEoihDk4KFXCs
QasBA9KVGEwCe+LtRm+2VCyZsGK3lfZWCt4DKmvnb06tDjh/c8LIZl6HwiQWj+IwBw5/gcWGbbuc
BxcxOZivnjny+hTOzWs3LQeix9YGx3892mIqEUX8v0kLTHpABw/yxlEC4ghYU+AtWFMQQwIuu2al
0OumE3e3u3LoxjowYKXcd1jc6GnET/4KV/WHh8P46dgxOIe8bGTWSzCkcTiMiAF/skiJQbcK7AZD
PbuGr/Uel5Gcl2+13Nx2fjDDepMBji0H7JSRFFrDX7UeyRjOgkc1zSiOGOLgZgqQC1GBM6ewUt6H
V1XGC2Ve8+OblsxtlNy627UL2kQgpnzCqSJZ6BrsmP6oCaTgS3Q1xa7xwCUSGDil1iQLKl0nLenb
RTvOtLyU+9gcQHfbOYA7OqyC3WDWDOO5t38uXM1OMDhsoHcy1pgEJogvohAPNonSpaAmeikksFj3
pqXg0CHr6IggbuA/F6geGxyNIDDf5YgtOALeJTFFySQPFFsVc2T9hrLzqg0xe72NSMOH6wjQp4df
7+6f5tTofEFd4EUVh1BtdUAgfD3BOEsSD1qbAIfjulEsdf1Xz8GSigv5osUbLZ/Odfh0s/f50w7s
rPvzOThaISUrZmnimH+p4WIQrAXkbCxC8VAxTcQbWSEtBSvit6aIHUbdAXb9elfhrI5Sp0JEMwwQ
azi3FE1VFg14XzoSVZSRpoDtzf21au/n7y6LnZ+bKkHbK7uzB752b374+un57vnh6/BxkwzHBid5
Alg8jtrlqniOE84x4Y5zwzjxoShEpWVcUp+0vy5xfXnbJoO9fq1h8WA7KuEwzq2h/pcyxaPnyrXj
HYYbmwLYINJR9BvAynLcIp4ny0JnnVVK/09IoX/3dn29beNI/N2fgi8LtMA5EClSpAL0gaKknDdx
3aud7N69GIqlZI2N7cB2dtFvvzOUZOu/09ti9dA6koacocjhkJyZX61n1fmoi9Dh5q/Sp2amwwIe
7PBte/wtq51+IThY8ZHyHzjJ0VA76OwvIjyoYrCmw7wKY+GHAUMvu9j78UANuT0yb3PYNlpOL1Wb
wmcd9r7PWvZ+5WA7P7i2hibSFX+6+W6g4ooygeo5RqhxwTyYHLmwKUQQ0daE8h/Ji5I/a0iadkh6
Rmq5ubtv4jyGUgsfly6RayGNMA805lRkijrUC3zfBD8KoPe+3U191saY9n3XkWkqW3t3mOGnOkUF
sYzCACMFBEOVEVtrko8jxDBwKSxztP/uvTqbPqh/sw4fj+o8qg7GZdobvTGZWWc2duUUBpf0cRvN
gtEJx7c4mz7CF7k0QEUO2hwGmJYaupS8kLLPlt0X+NDwTQMmsw7Ok7PxVBx40I7DFK1Cx2CMGgvQ
bKc2uBDTqweO4tIFG9FrpHZplFbjhNO2GedzV7UxVV+yhy/VjVvcCrZndIXxBA3kwdLVx/MFWCaF
EeZ30WC6cj8wmGbKeZ+Pa1nVQE+ApzUhuvwZ/Uf00m2Fu+sH8+8Q9Woes4ywSld5OgmudRxQgw4X
CDfpwApPG4yBdIRncWodbt7t2Iq1DJyU4uO6BKuOz/C4WjWP2LLVGvcpqrmyXBZQrYw3Do3d5ONg
JSoDHRmGZMClcSMvGDxcq5bZYKpDlT228rScEidV8BJcYyRFleajKzuN6Fhp3KM2sIamceQqV75z
K6w/Z1JHxiTgrm01+CtBhzKvz+ZD+DFMGhhisIqUClMUqhB6tAJdFxoReFLB3BN6P24xdualJwRj
3nU0CBJ6HWK3kPW6pn69mMMkK3HDw/W5df7zpfQjnJAciR6+Rht0VTbj2FOBCSjTsP7454A54UFd
1jYCH9486U700VrD3L48Ayp7Vm9SxIGE7hgL3HRToOsRqXQsA+lidvMYFlQ9Lr2NAmvspG18RbjJ
T36AMDHXp3vphIKCRhk7HP1LOCL/xZTCyjc2TPhKsAs+u98x3Xfxy90uflt4eLi0Msnr8Q33KPIQ
qjxXsTbQjA7MjwhIM3Y1Q08pLseRinUYcyNcqX5EAFWVgwFc9eKNhowd1maZ6KEaD3kyA3d71Kai
cGG0P2weXwoGDuPjWCGclU1P6niRDa7yBM4L/F0L8FpFfTZC5ZW6MKLrg3ldxykV8KWzLo4EN9qH
tYIWMEm4jhFg44AQYCzgRpOPCYYuKrALsEu1V+rc+7yDe/+pMlo3u62p+eGDLpMnT3wf16EM94h4
wPE0kY8RBQO9sxTVVKEMfcO2UXKdsY7TVj9dPZbeFBhSsP4jO0eJuS4e+Fr/XQNjXjPMeoQ+FdrD
yHaweYRrYcIDKZt+o43CqowkrCPhRgLmd2vvE8XJT52qsVE8UJ50YYJ1PYRSjiM2VqHrgO0itREh
j1XwzrDjsvyhnAzNs6eE0/b3xZul+su22f75W20XkJ4w4R3NfWpw44RjfoI4FBj8h8E6GlMFMK+V
NKRVXJ2ZjrVXwrnf2JPcJC8vu9NZuidLdoTkMM4DxF2jqJlhuCjcmOTCYxQMbenJQTelarmjER5M
W3z26S5dP5UHJ/O3zQY+wDXwbeD1A9kkaUYevxEYONmevO53mMwbTJFjsn/ObJK/42/rQ/ng2sp7
TA6/L592++XrOr0meVqyHBF6uYJ/j9k1cao3D9lxeTie7tcrvlS88/eKhz8qUkEL2PowvGq9zbrq
c5ni3vfVOXqYEoTrrrYvYjXOti/fCO4s4ZPdEznNjtdksTsmL59cClbelOyzwzrNtsdPzu0H56eP
5PAnxs6ly93bcQlsvW3th4XK0oICYT1/+jj6Zb8+Jo8vGRSAlZ+KhQXRDfkTHh6zbVnmQB3lrWo9
WERRC7FyD18Pk6+Le30Hv75GN5PZZzIq/l/890vUTzaf/M8+NbP7zwvyYbvbjle75CU7rLL0Ixl9
Ol89BZyelj9GenVc/4EJ8RcwSLH7dlywlFK3pz/IyNyQtT3WGbqY5zRoDjb7Vk566KShnJ9oONDg
2msL79sO0X15nvBKGipzmvtJwZ+FdO7i7UxjeavSIGhEJ28VeVwyCovUoKDytzDs3yyPDak4LFqn
lXp+npOfJwvyjFoRew3QplmLswqN6KP5kOfQxa9OiPTq9ZRX+Q6B4ZakKQZCEGAaHekrXffj6Nam
Eyca75DZdtXzXVVV/Km+u5uZwQ5AKb9SJVsuP9E8vyX7lLz29R+XneqRJc3yTn+9iepSVy7Bql3t
e8WfZhtMWLpIngnjrFcaVu0xX3INSaDnvB4yMtk+7S6Omvl/7tbHLBd8Bfo0u9QzoZnnC21uyc29
/hr2tjP0GHpqZqQ5JqvfL+gf5l651U/zMF3ahtaLAe1D+LmZoWf+kj3i9tzUNmVfPWCBlfUI4G25
DPVCX+CNXomChjGJNJOpvomGiWAVVm3r5fJu8vk2CmHk9H5Q17mS04rmWC4X0a+L4S6twPio83b/
eWJm4SB3QtT6zsZOJL16Jh863vn7UPg+herc5F21h6hK4/x/s8FitrCz0nArXMmbQvkqv6D5F9mA
EjzUBl0+2Eoap0oz+gtQSwMEFAACAAgA9ZAuSqxbKP4PRAAAXhUBADoAHABjb20uYXBwbGUuV2Vi
S2l0LldlYkNvbnRlbnQuRGV2ZWxvcG1lbnQtMTY2MS1jcmFzaC1sb2cudHh0VVQJAANu2XpYbtl6
WHV4CwABBPUBAAAEFAAAAOxdWXPbuJN/Xn4KPExNyUlkEwDv8npK1pF440NrycnsTk2xIBK0+Q8l
akjKxz7sZ98GSEkkJTliktqa1MgP1kGyL3T/0N0AxWESezxNHVT98+LpMZvPI378mU8+hpl46caz
jM+y4x5/5FE8n8J79Ac2DPynMmTZQ50E/J18iqPFlKcnn24u7676J29OCmpBwqb8KU6+nHziSRrG
s/Skc/L7sDviyWMI8py8xv957p0U79OTK+bdjE72FFe58OF/GIQ8cb5BW6UQtq6poWpvUQv+H+Nj
7e2R0o19jsYvc1498XfLaBsaal2zLHzkR2C0RJhwWBuB3377Dcz6p3KX8gRd9OrMdBUrSo9l/GQc
TmsciIrNtorbWEPYdHTsaMaxbtmorVqqqtyM0DYFwIIIDv2OsHqM8bGBWlh/jwkmR8otn8dJtnEV
xkpnFs9epvEiRXd3JRn7loq7NsHt8w6hbdM6p+2+bZ+3iYlVE4N4Pd1QFEVIjjpP7AtHo3DmcXQe
x5kDdoQ/lHIvnvmpooxe0oxP0QWMw30SZi/CUhn3MikKn7FJxH1F6SYsfeA+Gj8knPkrSVSEemE6
Z5n3gP5a8AVYaj3KUxbO2pm8QFH6zx6fC6LVIev/3nXPOz230+32RyPUGl28H/XffzoqnS/GeTVu
H/u31+7F9afO5QVc1OvdiqtYhtRntfJH1RKFa1CowrF7czsc9d3rm/HF4L8U5dMVuuX3Ij7QNWcJ
EKOqo7TbZ0gRV7juuP/7eCPsCk5Y9U1PvGmXvyDCxn+I06yPf6Kk/XySPD2j0dW/d28+/w0jVunA
SaHHpLlGc+5B9HrgE0GcTOWXjtK97Yw+XFy/R+P+aOygEyDrMe+Bnzwl8ey+7eVU2xmM7vFDNo0U
5X0UT1iExgkTvrcIAoi0VgJck5Qj7wEui6P4HrhGS288chRsaZphappq0mNs2Yamou7gmmfCKBtD
8G/5sJtBEFiBxgPPCtC4OwSXmc1gFM2Ak4B6aoBNcPiMJVk4u0ej0SWa8fs4C6VmdY6mjvfnyA3d
3skRjA+Wz/gxCiBisPkO8QQQUa1ztAx7X4666QWU7uQItgWow8dbGdk6JuQ7VTMw1Zm2oZrxbgdH
gtXvVG3J8SuqASLur5pvk8lORtJPAPJqDGzjexlUHHGDgYHN7/U7wzQ84m0MDt46OESDD989OAXH
1waH6AbG+vcOTsFom+2oZkDU7svAMCc2oET/WeBdmEUvgD2ZxIXuACwXfwk5cIkTdg+v8DUYsoYR
VDMJ2XusjAnRfbyN305mSj7JwuRazLqOs+csq9azrG6c8G2yyWkqYBOTqQYqznOc0iTQFdD+IU4z
xwF56wdan8cDx7nlwTBLTndefvbrr0foLYJUZxvhY28+d6hlHCm4qdTwQndL/T6JF3PH8cOUpWns
AcrzXuwtxDx3GTOfJ63VpdXvpbTE1FFrkYURpEKOaehHCmkqnu5T/jWj/u+2r1tCAM2o8afN+Pu6
Zqs+2qEjcK4ZQ/Ik9o5BenB0EEHbkr2jnSL4tk5Vg6D8PMeB1w0hNr6TckBG3ap+DQJYkCLrzWzA
GTFte22DgUirlryzhM3SUKg5jrvxdBpmgChrn5C6+0MIyTfSHzQwTe7pQhb1SDGayoI9FuyQxZP8
IeN+DEW2xyJxQJqCYuBbOleGCzZtMIbZ1CEMzTZ2O0QQzkKBMuIzYFDLjxeQ88vhsMjGeEgxNOtI
sZpKwRh/xS2n7GUiVe1P59mLNIFN6qFoN+bp6/ZunnI2KdS+Ahi95Wm8SDwuues63aE8BUkgr2nk
BHbg+9ZOJ4BqebaQnztBxpNr9hjey0AcxhCSL2vnXEp4y2EeSDMQYZZmv74rEYaEfZQB5L15hyZx
HJUOdaIoflqTHscXs0cWhf7d7aUcbKoTBeMGakGxqftmUBrUXNwui6IJ876AZvCuJcSQ8wBGrWAx
k5UlixysU/BlTBoyDDAUVnWGD9z7UrbkV6yYf+5ISQo/B+CpCg/BrpkgH22IfJyDDUvIVxrpbhSC
K8mZSc7lPSizfJ6zhXFby5tLtpa3fmRz2Bv5RZpBRuG6GEK/GI7Txzj00Q4DneXTYm30TJuCdbSG
o8chU989euJNc9+vuXk1ZN98sw0ah1phKJ2oNUtpws/1pnhh8F14EcHr5zB72C+rqVhgSUb0YHao
si9eEJNY2xQ1GirKJ9x7RdHW5qHqiMgAhvpJztIiX4G5CZvNotZmmLFy1IrpP+dfMGstDwoBhkyI
AhCTlmSggEut4tJ8osC6ABCrmSgTQ4eZX/rixbDrOA9s5kf8iqcp0D0tXtOSkCWLvKur8A6tnLqq
2Zujryh01pLcAaJikRlvUH7z7aSl80AB1fpQVk3gLSRXoHsTc1marwHeSlkLQrfc4+EjT67YfA21
xbFcKVFY5g1O0KuiZu5LMO9v0sqHlADoEbWRiExlNq46V9GKBun8gkMD+UTUrYlIsQxig1i4meVU
w55QVGO4abE1UC5mIXiZO4eSryxUGUt9HrBFlLk+F/2Hymln6KyIVNSa8mmcvDjEoFD9EdJQblvE
6k65b2YrY0p+xCjx0wW/yoz+H+yRjbwknGdrnKoAFLVsFkAOKQvexewyjsGt5jwRndHPUP3nXIyS
VpouRkNryAWqWvIKFxFssh6hkKkUZ3QHeQ0t2FWmF8FkEC9mft7P3WhK2FpgmRwj1+0Obu+uL29u
hu7FyO12Li8vrt+7N3djd3zjdtzRzd1tt6+6w/7t4Ob2yh3cXXfHFzfXrit0NhViNOMKySL2cq65
Br14JOfYVJUJt6EQsylFjQZlivAiKwcQzmpIyuDUQmVCqz44BJ0NslWg6cPFGOb8Sfy8o/Hjqapn
Ux0Bne4iEUtQ/Uc5J8fzi9mVWLoCqlRXqNqUqmkEqICNa/6ckxV1bCw01yhRKG5KUocC1T2PYu/L
HSTQ0YrslYgoKI4uwzTLpRZ5xyCMAM+BmYkVWonezny+K3olL5Mwzw8M5PaGoxUT4UuqYSqUNiVF
wAHbf1yPyosX7qwufPEh/QIIBsqJRT0nlMoAXuXttD+F5XRNoVpDEQQebYiQLGaCoGHBUOjNCBqM
GhaqkBOFqQRO01AoBFwUTp7n3rH/Am/Qa71H2zQmALcacuF8N578y3OnOS3TBr8zm5FiwWTCkaBU
ENFssJf16qpuHbtND5ueipYEAPlb67UtoefxdOpgCmkAtaV0IJm/Q7yy3bhOwYX9vDssbLVqoWJH
9kSBQCqXOV0oNGY8qtKsktI1nROAFNHa/Uuen/BskcgxUGWvck1tnvddK+TK1CyD2rppoeWJ7tNf
+Rs5M1lU9hYbkTOphnM9K7ToSmPyarNY2LQ42J6yGcySyTcYCGZ59EX2/N2/4rRimCX1LaNW9ifV
4wY2dOQuz3en94kbzh7jLxIYsbE0zf4Edd/zawRXBtLJykD0H+cS2j9OY/3VIPAgF5hyP2THg/D+
w3g87DK5T6CoomrGmkcsE2lYWaCyPJAdUtsXmzs6WTwNPZiK5yzhnZk/emLzYZacsyQJefLLp87t
Red6/Mt0DsKujChw+bizFeTK/q1ZBrMmHkqexCztZtlpwKKUnzmOUDhPQjFZmnJvorrueRMUxfGX
u/nFdH6TDOLkiSW+bHwTufTQhJwW6DZG+VST3o/4TBJS7doCwteTMd0yRDBDXnfO0tD7wNKHju9/
YtGCy3TbwLUlgT1IGibx0HaCFPDGaEjPhhrWB3q9MG+AJC8lgnCs1qZPubeQ22t2zGEaxxPiEQTZ
C5iN++NkkWa3PIVySiCsDWFnNSPoeQHhJhoV5znOR/7iPcAsm7dTJAPH4Y8gMqREqzYthQK41mjf
gxXXyUSwklT7BU0xyeNaq/xKBF4tI62EN57YVGNy4VekRAHmYiuN6DdRYplarUW9bRW2tnLN7Qnk
QK7739fEvLu9XBeNeT/W7UYsBZfQsSxb70Fu9ymMIuG9BSJAUHQW2YPY1Fasjz2wKOKze94fYhuc
FMiKE1ZfuxMZpav5DBO71un+qtyGqamGv4fc2AJxs4deIXsnfZl5/eFH7w7TXIp5HEI2lgweh9jI
ZV2TGn6ktPZVTr2oWdxPV+y5X1HHJXISUGut8b0GAhcKfcTWfwovHImltkUESfqIZ5gUBW+uwqb8
j/26XSHKRAu6UZoA7lVOE8QSRUGWzXw3ATOyNB8z2bRtRFvV1EmZdj5QgkW8EImpJdujzbIalZZJ
ysnM9ZMikYeaBZtNDWCq5gbFlUl1zZY9y0Ykqa/TEskkjrOapDq1ZG+vGdkJRP6arPAuvkzqqARF
2YxrlopoUHpvTUVEkIom2o9NRQynnHpcj2Q1Ol5v12iSlWl+YBIon0R2m967WcLm2xKyfQjRCV0R
kr2X2jaHPfolFiZaufWyquO8h2Es6zCCSW33wj4dHZ17mx0dTHWjcRbx1ZZONYf4anmuqcS3oWip
jKLctmDL9KGZI9q2v3bESey/SDXzvKEhJczWlFZFsGHJjKGhO+sY1Qmtndn8lkoCqyCdm/LpEwsz
Nw3vZyza5rbe64BgMaxRXw3QjM3iNOJc+r5tL3Ne7+3bY7y9WVChYqq2StRS0zp7CNMCVBxHEnZh
Fio1vvOtqo7jLxLpaqdRPLtH4l+59y2PneLonZgci7/oDJ2VlohMvRYOX+8LM4/zCZpMxRTiOc4H
LlY1Uo89ijRjszkv5rHT1dliSS/0rhYZfz77tSzrt2gULTv4uo5arjsVVN0JzJUOts36FqF9FPMB
PmqKgam8PPEYLVWUOwesOkeK63uC9uAIcylec5RZxpilJXsJIZbrWjXJ3hy1js6Erwg3KfAk36Ri
otaK1PGDg4le3yK0j2ia6v8Q0fqzLHkZioyp9T3k8q1Pdq2G2UcRY+JLum9KjuQW4eXOk/j55bQU
egsgWyy8A9/vk/jddxnwDbj3epXFpuVVI/OoOZLuhHf7x8E7Vn8svFu1XKVSF+SL8oec5e+Vs3y1
7NImGoM68u0fteFs5eN5hKDkyTe6iC/kwqNcDQEzVFGsLvZGE8C2CDeEda9HuT+5uY/lq4Xged+S
2ewIIuvHBZH9g3MkG4JouWcFAVrGkahvD3HzN4ubrxHUsWVjjOoLy2az7b9YtT2iG6UtkiuPKO6k
c8JZmIUsCv+Hl9MKInaf1s4Fa4sFMp0eNZ6Xbd9abi/YyBNWkx42t23oshqzmnhBzuopC8a7uem1
Kdb+YejQeF58ZYrFPxYdsPqPW4zBWCCi8IfOIovF7YTeN/Y/dOpPDDDEXKR3D673KCrKb7QCE9sX
V1YQdx+6BTXTMGsAuYfTizsOciVz3WCi9cN8Z1IWTrn/GWjnd83IcgyqsdI2e7EnKr8MYn2Yi5Su
749pWjNaJl0G+5AlX8T+jThznDm8X4kFCfDLxXQeyXjMS1Sx91NcM/LiOfcv2XTis1OxKoAgPV5v
f904Jc+p66eIm4/lJtWXGROrYqIyFbtOS+UwMSBQW2sR871sqta0mOS+b/umITfh5sxXap6LatER
Ays3tpzKo5cgyllr9baBxFivCvzgWN9QiBoWx36lPFqC7vL96bZwKe5XWAvOk7U+QtFVq8FxfnHV
ciUvyx2WxcmPIHy2LKNE1Ql+kAjCraN8DdISNxJVycthJSptXhZ/x6xl/n/NWv+IwhCTA4QfIPwA
4QcIP0D4zwrh9ADhBwg/QPgBwg8Q/rNCuHaA8AOEHyD8AOEHCP9ZIVw/QPgBwg8QfoDwA4T/rBBu
HCD8AOEHCD9A+AHCf1YINw8QfoDwA4QfIPwA4T8rhFsHCD9A+AHCDxB+gPCfFcLtyu1m3cFIeEl2
PE/CR5bxb9gmr5r5ncYR90oI3uimD13TmbwjJRfmKv+NLAngpPne+J3DQn/csGg/+P4lFXnFs57E
z4qIx2kVD31C8heCUcvQ2pMwO3IUhBL27Gw8ekmFgUsmuw54uw745QMwe2EeeKoqmPjhjkvS1QGh
m040yrgvuc83DzB5xZYDtmCCEmsLExHwiV2Ry5romqUJWljdJrA4gMukDD7BEwzTvzhCdmiCaY2J
YYrfkYYD2i4m+sYVGpPmCuflI6unfKAkiGrcsUrEAS/ZIhYVtJTL4vlM3eFd/gAtVeknSZzIh3IV
j9RaXakpY3GX2vViOlk++Q1riqKch+LXkdDFVP5ysbJ8fNbz6slZqI2qX2IYnNd/WbAlnwbXRqvH
waFTq2P1BibR212tg9t0YOvtzqDXbWuqZg/gO6trqGd/v0dvVTX3tpnDE+Z4u/7R39FDuPw5spYK
mmsdXev3LbttWVanTW1z0LbASdvndu/cMrWe3rG7OzTfoFiVxzc25ZnoEDvbfhZ/y5iQLsVaj9C2
QTuDNqXEap8Tvd8+P7cGgLW9zjkxmo5JfqwsJyecb8jJNZ8GwWRTzkt+z7yXbdKqNqGka6pt3LVo
m5Ke1bbsjtE+16mpdwcmpMB4t7Q53ddkzs+oSA55xYbkgabRmoVrucYW2buqaqm2qbeJRUH2fk9r
d4B0W+tqal/vDPpE3eoDVcrbpa+eU5Y/YIZelx+0CvCmh+wS3O5gCxsGuGxP67Wp0Sfgxud2m553
aLdjGIY9MHcYfbfExcGSqNjygk1RLZ/YW7FmzNPsdjGb8eT4YvYvyCe4f74QP1eOWvhYEMEi7nSK
rQHpto2ORiDusAoh17XafayalPQJ7Zn93f6yZlHlcDyRL3U8ef2isqY2UTdQFb409SAw0VuI8cI6
gtZoMRcPn6ygidEf9CnV2j21r7WpZhrt/yPu2nbjOJLsO7/CjwQG2c775TGvHu1IsGx5Bvs2qG42
ZcIUqWVT3pG/fk5UX1g3togdwmsYbKormXkiMyPiRGRUFSxrZNWUkr0x0vG0JNWZjofoNp3pZug2
a7MhdMOn8bwr7355mx7u7/7Ylgd6CjtNvZYrsGVM/0qvJBl9H5SrNjIvEmeKu8BCKo4JWaECLYeY
IsDuX3L5/dub9QNc0feVHrJ32CuzYZ6Z/3nDiz16YhJWXm/Vk1SHL2Euuk5DKnqO7XeXyvKV3IPG
pKqWWc4cVlHkzGLOmjkTPTe5ai4KQH/ZPdCkfk9/PRjLa6VnY+FLayYz+OHX7oFeNHapadbUyuIv
jr8CRSlFeiGwe2tOsHYNilerYDakFhCGJLjM+dS937PzdtS63feHYZYV8XBxBF9zOYeP/ybw320f
wTwuje2B0wdAK26Ed0LAWsC4wSwHFqOA5+O8qOx9tUHNQQ/Q9r0uY+0vjZFaPkdqROiRYml+f3ez
Oz62CEDVygBialbI5gprUSXiITBtqTogFiknKWrO5izEuNkghEEE/IxxGzT9fbtBB8vNxvguxiJ0
S3Jd9aaQgonPN3dXXz59PoomgluJ3kE6Z5xvjLeeYmlwDGEr1qG0IrOROfvBxp31NALhpJ2DcNgF
h8n91+728fREp0uhVxoInMxF5KiZaIm8hZMsllxhoaDpTiMgCnGMYNjNaHwvzXz8oDcTf/C2+3K3
+fXIAr+7dNJDg/Bn+19IkRpIQsiKcRuBiVtg0jwyw2sRMsO/5Xh2wftHIR4G+OaSj/EsNx+3uRgL
eDWXetNNGfcgTL60q0AWV5pACyBiKCpyxpOA7aoKptc2xYRGaGlNhPOQZ4V96nkJex5cvxhDXDAa
12ozIRqnR5Veut5NG6eUW5HhBfYqqzEKqig9rK2SAdROJfxIIoFrOBX0eeNxfJbqM7bucHWIG1ts
jttwoyfzTQ983/4jnsaCOVnxlZIkQv8LGRbhnFBgz1nA4fXwQ8iB5RJ59VVGOOeXGOzDWMtCHC6O
ZBD0YuupDIJ3R039ny/dQ0dv3toetdUTkeAN+hgatkpGMKIiQrOkYmVVu6SMtyXwobXYZzC+X+hv
Ama9BOb6aLv6lxIfcTgyyAERe4w1MAkTwZQBjlDJZsjosrbwxtot4hh0NYYQ1AKEMLUcb37sLfm7
PrNH71IeckcTlMd+y6zGhslx2bGolGFWlhBNqVkE+5LFnA2yvKyzZhOBrpYE2k6U6zNc+SAoW72n
f0Mo3kslbe+gqzfN8cyKK8QeQSgSRaVZNMPhDAN263lj2D2sl23DyAy+H2MZtuovTeS7XpCvk8cN
3CcGP+ThzgFj7r25VD5AlAgpKtm7hLgqIpZtqZbKRcZKnZfnx8/bux/ePmOn++Y3YNFLIMYidHZB
hGs75XxfP63vT2+iIMJMFsRzTc4T65Kas4bAI8BqojJvMkRLsvkKy+izfBHjGw7yjC0cNhkJItXC
WuDLo/5+Ihb2Tzrf2j12TxQE0sMO6j3rL7VGIaRjDqqCRWnkcRN+VHipnPBlepEl/OH93+lx7Tdg
WwMxngMxFkPzBTE0P26p294Fn+yQNSvDV57IP3SiWG6YEQIKYrXAhkLkW3NTInlsKcMXrdGwxxEU
azdzKNZ1E3N0j434EYRaIALYm6H+F0CyMgSXQKVTLohjo4POFmFZqQ4zGRvMpPw/7/H9tRFgt6SO
br0+zt32GJ6dpo8mrpVgZKF0TKqZqQzHHXxSiLaLQBhjstF1TP0m/YwwhLDgRtadPW7Ddr+7/efV
/tTuZBPsSpIemUaJNQmGXzQYPmBBj5RgucLZt0DJlzBGMu/tYjyum4PZXOmJ/d3H1v+CyYUT65cQ
dG4lSCNiSdUrYxiCXsOUwupFC5JTsL+KFQgqs/4mB6W+lxfxePViDHBOoM12K49TeLP5Qq9aOL05
4NIYscL/NIWwqiEJbZnyGnFc0aCRGT9aVUEUU6DGbjyFk96GSCx383jGHjnB0/zd3P32JF7vt4jY
SkGABAwjNBCAmoNttMlDG5Rj2FU8NqWTUv41/NabIYaRh777bSSTEHxBJuH7nObTgc/V3W53dTKS
0hDXJXlgSDDFwYMnUmJE2MwSVIQZBVUDVweTLItmZt7vBFZYgKWnxuaHDx++u9R7XtDbmKQDVwrR
gkqqUo46InBz4DugX7aGGITmZ+cXPS5PHC6MEa6XEF67o3X54W1/EnFSatmHtogBGkIbBbPMEdoG
DgUC4UbU7lVD2M6h2K/j50fjj5BrtYBcGzOd2+3ddv/c3u72w+Ht8Zd7eyBV6KXx2WNba8+0DMQu
sa9DBn/R1uWgHLx+Ci9ykPOhnlmEecOxaGZOX6wxJwbW7u8e33cPOzji47oY32d8pHUxxKqZFgq7
GW4fa+IUPFQrOVhjfWvn0ylP79J6cZAdf3lmsx3fCrv7fgH0SOLg9Vzi4DenOOX+89drMI+nfejI
jlMY7VJmTYHUKI0fKVmsY7amFU6PaJPLscqouwmSObu3azOljv2ufPPj0EKqldozBW15D07ZYihF
qKuCk4mCBc0VK9kiqvY8SH8+szUbYmQA9xdH0NfbBSO44ea4bd7ffXxKEPUYJSyJ04UzrQ2MTSyB
eQGOBcolYWYEts5/gHG0/KfBh5CduJorsZNcHSFv/vKXbn1zRK246xltkLK2BDXlNcA8CpOYl46z
6kXMWmknMx/7w2E/IwDSzjee2/qraX59/7T7Y3ZHc73StAPh64RotrJSPKJlmkqfsQOzDUlKbqru
k9Nn9e2Zs7t8uHYxRrZdgBv4UU/yP959eH/75ePN3eSs4mC4QZdVlCGyQrkFFRBD+8oLsyEbB+ug
k+WvFKAtIxlLE8SSNF3P5J68693948311ydTB5/Ne2mK9qlUpRlvDtJoRGeRtwYa4jyoUfAu53Nu
e9jxCNjhPTojYF7PTl1Gr+c5piucEithVpLT/rDQKdWSYwmfTHHQNx8DtEwrOPgmdW72Gxn4pyGe
S8Q/tbgY471aEMKvJ0IM86lv6N0x9MaBS6n9ivJp/ScJUhE2NI6N45ogH+nBSCoYXwtepaJr9ukl
PnJptOdZ9LTlWD4/j+QQqmyvt3td+L18eD89bjCOS2s49LVx+MdiPOXkGwsVskmPq0n9WccNJ3gX
YwGuF6TqpsdVu8/bLeLbh+3m/uPdzTi1QOlQ7ME+Gyp6RQnVxOCxeg0Eic7qDcWFUJkESy98ztrU
1+DrH3pUPy+BGuU7ps3GM7CZm2RELeFoFYhI/Lz9eLN7fBgYBdNv0+h4QTxJicumyB5HUDkRIHcK
dOZfgxX/j/xnDHsktVV2QWp1OuBZLFm7BMtbiX0Mo0oRtenMEOEjzo6pwRXlPmkvcq01GBPOGcNR
zyNo124euvrr7nqyJct2/eXjPpW1I2RkPkSfi5cqapkNaGgAuVBw+1C4KsHTvIt0bGheloEajrA8
48MWYxnWfEGGQ+0UEYRPn0/5JyLSKerUJKbPNQ09UYhwQymOWRFyqMmrmtuEYpx6GA4c+Gbu44IQ
02h7L3u+v7u++Xh4zwh5FKH74/s+6PbYD5VrzKIFw8CUUgoqGtZ8aInXnGzN5w9k5mM8l4+cNRzJ
JNU8AxOktZNo+1R2pQQn48t9FX3m0VKwpUqrLBrfH+c7pUyqrupzO/TTwvRqPffUiBv0gpN79pTO
QGNA5OAFGuXKKEHqlZdMFoT9zjR40m8fSZ4/qYuTNhdjuHP9CsFOI1k6ccdfd30uZn9gF5xcqX2S
TXOXKXchNZ0eCUOH/CAbspTEteT4+vVOVY9Inq8MoKsXY3Hskoxhsk6/bm8/075HLEUJu/6MxJSo
wfQYTxlBnolUzuCoUjFwk0vTzerX8F1/xdDLjejKWBi/JEznp0damycngi3ne5dMH0TES60lVcua
obqHRFLJoplU0GmYcnpn5otOtDbfclTDFkMpOm7mB5Udt9ujx3l7c7ftHuLtxy0GfzrpsbL3tK1V
o2tprHHwJ5U5HW3rCJseXUqU65XlT2JSC0DHgi4Qik4YcSSKk1dqQb28pMwgrRM4oVJFSkZn4ZRH
z9h9MrNack3aVm1jO2ezFhLYGFou4VFHX1Ruuo939zt6G9V2t6M64P1rJp/w9ZVnUqtkE7aMoPMp
gyAYQRz4jokSiwSX1Z+JDjzU+X5HEKWcx+WdVH5SI/q2u/sYwcu/7m7I5R+sUv9JWWLMlBBSsUhl
BMobuH2HLQI/YIo2CKKdeXUyNoT0XL3HU4ux0GpR6M3RrX3YPGy3dz9v6VUwx7XQ0q406QOiiOxC
EUwbRyWlgbOgDWLRFCX4tvCmlfFyzLuboLlaQLMWz9RwXI+8W1/NYYTsS9di1K0UDipDlQU8RgbD
A29nUwoNZKxx96JCjm+5uHm7sUBXcybUGeuezjI33cDS2GD7kK02mzkiTGZa9ZTkSwihYXdsiEbl
moOLk/OjUUcX49H8EoSp4R46w6UapkrchU7/aq5UW6IlNrYsUD3onLbJuOT/Q287bDERYWGTmvV2
WiJTAZyTw8HP/shLB+kAtHnaBN4mFrXhrMUsvcA+aPEVCUKsz9TL1LEs63ms21mrJrKk2y/bx/v7
x1/pkETvKzPp87ovK+ZOVhgY1kB1sBYZRiYh4gtKhew4QnpzPuJ78+Op/+eqQU4NRujtZl7Y0jlh
B7nLQUWe3PsT37ICraQaTIrEdUBcEbMBJbbgbwg2itCz1OVSRV7ntFkYPvAF5tuniN78SDtin6LW
LvRlNa4EmUHDqxNkoImQVygZB+EKDgroQvvmpjh0/vw2PjQYg1/I/HVuPVPEX7/c9Xd67oemQ2VH
Dsb22f/imvQmM8SPlQ4h4QB9VMx4abVQBh6wviglNR7kGUHGjcbCLJyh4cupSv6S87CmqZlawZEU
rAZNPt2NEFyqTMqcECiJBFleAh/dLkPGhQnMBW1zV3aSYeh2t6e4TSoqxOjVTDQC1ZhI8CSqicJS
VJHqiY1ztWDmz2YXTr2OIV25BUiHGyKoiuOPT93KPPEeIs6ZKxNEguUymDYKgGP2gvHiLFcqZp4n
hQ3DTkaj+/UCLwzd6fDhX59uwXWPo8uwEn3SOcVisy2sNEPxVuUsWilA5I0trQgZnZgU1Q76uRiP
tbAi4XoavNJJ/u5oeqlGfHvVbm63b292j5So7auW8EHOUhQJtXCJOSo8VtKAfMkAQ1N4VDJ6IUV+
PTM/xvJ8TftTm7H4192S+OtTYfV+6/TvG9+daEEvJsLZEophzYLNKAPVT4o7RCAgmVlqKJA5txuH
XU4gzXPKXSfUREdoRR5vT5i8ohMJApYDL7Eqj+jUI1j1IrMI6sdktNEn65yV/my4MOx4hGy7EHPi
y+0Z6rJq+1cvEzWXUGXB+wj09DsVKDeTXARFTxkarVoMLIbkWTEgWqKK4MIrVmMf8TzT8HB1JPa1
m+ft6Mvjgvy2/frp44mNy33NmBMZwSkIIzGCjOgogbCxGnx2ViTb6nLN2LCvCQi3BGJzNFNf7v73
5u6Uk1VmRSSxWQSI2IcMLp3yFgHGMgEVlRS0lBAg9PXTcxjD3sYwwkLceA0jMo5jP992j9f3D6fs
m9O0O/s8bIgBvhLc2TmynUoxTwUvNqvofdYJxvxsinjU8wTbegFbd9Ll9e7Tip9mqL85oQowGA0F
8ZS3Mk6zhCljppgWU3YyyEn8OuhjPHa3oLTXWztRjZ8KndELSksrLvuS60r3pHEmfW8ihYayIlJt
Xhaqk+O2vv5hwU9luclPZSjTGqx1JtOah1NdTvfl8f7kFz2FeSGEagVvDK46w/SDCcWSIzM1cx2S
NaWl8Xw+9TEeOsyDpLXwpwL2/3ovJ2UErhUrFXxyLXQvoqNbal3j+KfItpZsmxSvVEZwGnwEWS7U
Wa2lmgYSf9s+rLcP9zvaB0caJpJ2WieYB0Mn4r5KcBpjWUXUrqTjTdbzsdyx02Xwx6sjuGrhFH+t
qKRTfeNMYFXje8+l+O/+Hh9+qDfpsy1FVFU5KInMniILAeWuHqY8auhSCbq1/BI+eRxhWZ7j1ZE8
ZqFKeW3XV5Pp//ubYQp+z4S1sr0jijElI61DKEK3HVCxW4IOsGqtSSX6Upt+CfrhGMsSDFtcjAFv
l6S4PqZ/Hraf7n/fDquQdB9EGVmbCpUJXYDcIhSFkQ1MG2sQXDcfRpW2T0Z12t8YzGZuT9fwXjN3
f3v/8OHr3YZC47CfUfo8RJquSlh3QzWaOUkWSn9mpAIu+dK8e3XrdsLzXDh4uDyS9fpqbr838moq
61/fnEot5OF82x8KgqgwXGWNbW/pznkNFxcyr6wJnxQsecVavMoZwZuzpRinyxdjSeSSeG52vIMw
mZLiu93N+ua2vy1rryMu9JU7sO4JIgqE5ZCTUxW/h6EHS1MyheCT/HYlyaj/M/Uko3YTafySNNPI
/Sm73x9j0h8MvqJvSHW8oru06H6XrCAT3WvU6NajnJNNsrr6LQf8jTOEp+sjGdbrOZfeXPlpBflP
X7qHxz/2t+IDMW04Tby5P23PNUIdLT2rgW6/t1AsUHymnU3NFtXMUj3MkAecOn+GD5yuj6Bv5Txm
upLyVCj5Nr6P+W+z0xoNzu/pMQcWdJ+pgBg+NaqZ5DryLL2T4s+qexkivBhJoeb5tCt1NS0z6H4f
prr3lbyCawuz1xf3a5FK4aoxehUwVobuKKaTewc+p71J/+btSprktpH1vX/FHOdCPezLEausCHvC
YY09c61isa16lro1vXhs//qXCbJYBInqrnnT4YtUIikgkwRyzw8uvfJl3E+vqZDlE0sWBtnIIMDF
OYOAzemzEXxqcM+UcM+y7yJHIA0TfGctc12iysfgCXGk7SicR1sRcWgQIfcrH7bCiPorx0IvzHnB
Qi8rhgbQERmoSl57EKkkdi5w1jEtDQE/wQXiXvIVlsNX5Cm2daYGNVVcLmrzhqfSNncq4DJzKMpj
Y4vXvLMsgvyLTnfwkcF7MNZGpYSQgb5Y9bccuSbtIBqkDWs7JmSsgozHh6F/ui9RSTJKB2pLcwTN
VmKvtZQJQ2U2dpZqCoa4CVK5lKwwr9ZYzqO/rnLzFc+vHqq5HrZ2z6ApO9v76f3K4DfMZa1gU3me
FIgT5zordOoCF44ZksHuz29m8J9mv6np4y2i52TS192XReiuBA5ziNT6CK6Jh2WTmcdW5tCJwHgC
P11mumqGX4yxmtu05rZznrCw/c6fY/9MnQIuhDIJajt2iiKAiwMvCQu0wCNXWTAdWYgrr7cerSLE
7hqE7NXc9eK/dR83qsADw9QwBevRg7jBSKbXMnYBzAmjEgM1pv4kVXCmr2Jrbxrfdm/kKi5YhUVn
7IVReHlQwA7cYPB5sOURRKrx1mES33ClsmckvhaGq4deEngrdlsJe6u52MiJv42iBlsayTtValqm
X6XtxFuwylMXCYhZMFMx/AA+KHMyJ8KMi+plRTWPf2nPT7cXtFuyJxtfDS7SObBwWe6mnKLVQK+U
mLoigXTwikGxagteMvHCilWG+5KktaTf9lDDxcO6yvUHcJGehp+Ow7/P6diTxi+qgBlDBTg1BrNY
HMRO59GXp1IqQbhlkl+VQ9nOc0kyrZ+ruToMW64OZA6CHY6PX3dP50ZXSWgpZcclG7QAG15ihaHD
YJQGfSuTA+8thmACj9m2e1nqQW/qqfsGPUw2el0fC2JVAcDB8o2izdTYHsVVApMWtCwH6Q7r1Gos
j8sdqDPtmYYd5v1bOFeooT6eyLjcHjs/smSVymGjuuHi7Tob+qLi5tQp7aLsZCiVZgS0Gio5w2jM
wgfRRBn4zxT3JTVsqaJsy4FSs1309w85r9Qw1+DQ2+jAE3SghmGddCYr0mWuRQYbMoB5/0Zq+Dx7
TbTarngKIu5E9LG/v/v1rIjHxnoiHXFYqcTQdcJiVgPyo8tMBx8dUz7ZdTfrYpSbeiramN+sP/sZ
haEgdmAEi6JKHEUJZfQdH3vlLRFaZxDC3nCJ/TG0Myidc8yZMA8LwcarUUPKNC8Ah5T7NTv7rVik
e74ODP50PAz3L/edBB2Yolh+pCSaGRTedtIdVS64yDVthtMWDCynaLOwfOKmprdvMdGf1sTzXX/O
qRZoLU/BJtZd0FqOpdZeKDCJeAITRVmTSbqQKOkbS2LPW+9QqZX1cET0j9Oy1BqVXFmczlkw18A+
ExGhmsCvdyqaTgWHJeE6Z/Gi5XAetiZK6S1Rt3YtiX89lgb8vOuHMeyAPYUooMrfqIOlAMsA1IJg
WDRAtOkcA/MxSJbgkojSXlXzcJrhglCe7t7U1G6CJrA9bvtG2/37h93XT8e+lAQWKAosVQa7p6xM
akCwgqNLuDPwtWPpiAL7JwYJ9ruO+ZUOnOUEl4tOTk8sWeBM2y0LzMxNAO/zP8d09aprDtxg7j2s
B4KttVxqMnqc1AdieTZa6zeCNVlRUFNvdlvqJd2tbabdvwNM87CboPmwHJBitbsZpS8FlcHADQJJ
ZhBBMsH7x8pMYx1jJFEjGkpumeb9n/UMa/C/+X5Fvhy2+5LvdntYQdUWKDrpL381ZdWYMZQtsxcU
LE/wWMCjFpx3TlvM+VtNcgBRbcibuSxjv3nzsfFexdVBbO0OfpAzrMNvu4dzEdiUduQgo7NSHUMM
Bx7RJY2GdsCKCEZawsOqBGwxSD255K3J9yupAm5A/niqCh2TRUaAl8EF0CAw8poZQ5QnTIIZ5ShJ
jr4CTFbGbL+lcquic7jdWgmC0HOhx78+H58GPmsFqoosjmD1gjzTnaUOiNTYoSF16JSy4IfYEA1b
ZTSrgW6q2ThrkCBm6yr8kD8+w/+tUtQgXsFbRunvMNJOlO48864jgTninTcu8JqAepiagm1TvxXs
tm/U68Wxy4Ph00rQ4i1i164UFtQi2OXwMhj2PBvELk6JBKy3vwKzJF5s2jjdvamp225Zwck2CfXl
y/3d97u7oTR+gaGmisAvYMtJl8SqlBhsANMKEUfBvGKcCrC1HUv2LXyHJQmXGDw/cVPz01gZXKwL
a5pwXlNugJZWWaHHAAuwa5xTHhFuLBb2xc6TiE3KNgSfaQYl9+aJt5mcF1C+1ipdcNli/dyI8Hl3
9/NxoQyLhRyCyCRScJJAa4yJj4DeYOKgRnIkhrFV/d1ilHr63jamH+Zm9i+gFh/nenDckAk2gPUI
ooCBPDBr0VTkqgPXTAZrEs9kFcNbjlFPPqjW5KoBNbj6FkCKwc9tSg1qlDpy11HBEPAsy85nEBjJ
oXSiShgj3uZbNx5c8bO1MIW4lSvz7DA8/vJ0//Vx5gVTcSUwNf5Ar9IpSxQs2EDAFOf4rb00tiNC
KbDIBYNvfl23ZpnqRC0+cKlpc/PgTc2FarE2rCz6Kdq0wcPiRmKUhaM8UopYGYPulOQWK55B70kw
gYREiPWsIqHiitzBZawsCyPtt9TKW7ZaWGdJgtvyH8d8XDikBCQKKTU9XFoGzpvn2HWfXYleR1he
hgeuwP5sxdnbXfc4xWXZj3crNvS2bxUvig1s48fnh1vwF0rbFIj+spTGXygLWcLuSgX+CjYpgavX
OURXEiAlZMpMsVe01jz+pdr86XZFO1j0W9oNF6d6vfC+AArg/3s896jqd+iNCg32JQIxSoZ6lmjd
OQLOaSQyEQb6THH6Z9iaNZjGhuCaX9Gwr/Z7xKUu/N7v/7c/A4upgjcapYxgNmvEBk5YLibBzCKy
EyJql5Myga0wxZaj3NQzbR0T0TN5MQhTFty37m+NFc89R2w63ukcsO+ag4VDAu0EZ9kJGmOI6VUz
B8d+YanD3ZuaVNWi36whF6b2pk+wU+3UYUUIShWatE8SLDKrsR8IKxpcCqAUUmIuMqGieRMYz1OD
1TcfXm7A+uZDzZ9tbId+GFb8YRi4R+iPqY2PTW184Kx4g2BvjhCwgkG/YQ2RAYdBpABrzxKdXvV+
wwuAh+HbmtxtDXa5eBL3VRD4x6fj5zPi4BiwdpFEFwyYmkDcuIWtteA8wEdRlILz61Z+w4UhV2Q1
jOGDmNtl++evj4tIJx8BKSyVRjhBOlbyfTyZzinKwTZkjBnw9fQaBHw5TkXAwZgGAWfsn+9KFmB2
NgtCFvZDePh8nU4ozSJsdUe1hN3FrVA5CClXvmY1ynJ+KRoaAS7Ocb3w6Xg3PA5/v/9luDv+scAm
wy0C7roJCmtPiAJNFjSsHxZiJ5QkmlqQN3FFSHu4iiLZCJlL8GBXC/ub4fjlgKA2S4g9GTnYAOB2
G4/dQ0zigTDg4OHhN2DREVCzV0XSpsEvdY6XmzXRRreIXp+sAXsZjw36xwP8E09zmGhX9FTMTbNB
qkFRWQykgYXQgRWYuwjShmmhuDbX4dNWE10ULItnKnbUFirJSnurSlF67da6HwM696e61ekXxqRQ
xFsQmCpgcxGRYJUFxjrCjHEMXP4RKf8qMwcmuSz64WZF/K6huWQpWteTB9J/mqPERssxH4bZcwGe
LNqMWEtl0BOXoEgVw6OFBL0Qr16MVlPRkwYV/RxDCu//iacgnjX4KZaaJQse22A8VwrcIcs7T5PC
4z2k4UpLT+1/GUutkkArQiom9mqrZOT+MGyW9e6h/1Sw1PBUEjKdTlJWAcWVbMwI5MUVvFyQ4hj0
o56bYK+KDF/fu3Qi5NKKn25XTPZ8G+2TPSyYYT/BFD4M/cPvX8+1+ZzLc91SIDJHsCclorgi4h4Y
82DfwIoxwjge6AVk9dWoFUmHbae+lUO/qZp7Phzv3z1NCR2H/1okkOjkABb3T5NkpQ/gGIGhzq1i
nVEhdMRRRCtzhJuXF9Vy8Au+7OKJJTOgnLeyUVG29p0Cnrn3w4CocsPDBC93TuZqip45AZHKvASB
jmqGh3LCF/xBBNVZwYah8TrAssZcFwRM48maO7FrcCfW5WXf7e5+frj/tTo8iUUDNDtMS2G81nvg
JsCepyFHEixJRlxVHn8a+0Lp73R3RfXQoPp2vbH3u/6X568VYjDYj2KCgyiZB05EQoQEaylayTZ1
4KHYzmcjA5deGHKVlPermZYcjPcq+hnbmi14cb2migmOSGKFZqlLCb1C9HEGKlYgpgOzmHfAZjnO
aWKBGh7/33b9eG9FKmuQymdF8PEr4qc2q7pUBlPAEfSWUIUaMDYNvO/OE/CnRIrU+z8LjmVNZc3i
tmu9XNyElPv7Xclc4Y4ez4ECO95o57vIOMZCJKgHaz38wamAt4Tpw1fUA4x5yTaAWxWdpuEzKbM3
t8Nk7d9/+fqAJfLnOFNpPgSjLAtGY0cpgu0LEEAOyyOpTx4sXeI4Wfkem5FqOvb7Fh2HTUPqsklo
PleElfKiItVj8jpm24H3jxjHeNIEnttHqFLGsJxJfhnHZjtBRed+2Donqtd0pYa+Hx6wgXB31w9L
3JiTmCM6BhM5bLjSx4GYmbDFEHotCMq9M4FdFe9qTHMhLr598KbmgLXYWnc7nE++nOvT0MVIDHRX
VF3ODuuJwKz1marO5sjBn/aCXKeCzqO/du7miva+Qbs1pygYLLr7z7++s+dDI9B3Bn8MDBXTUYvd
7aDuQfuDzCaegasGpq/Pqwh7PUxNwY40KNjttzH2j7u7Q7FFNm6OZFophocFYnMox7pvBwYhBhQJ
7KzIUjJXVuRMk1yMr0/3KxaGfuv1q3KSUsUC4p0dhqdS1vXYl6zQGEQZC7WSUVRlAqqPuIDoK2io
mwBMqKRipC5c52xihi6eprmc7dk8dlNT32Jp00k+WozFa8Jf+Gkm8BD8G5kCP1lk7juimEcLCwUy
MBUQC1BEQqJ4HQWnjP2Cw4a3a+pNQzDf7tfBrHgcTyN/+P3jItVREG3llOYgDI+WYojQhC0xCBxD
ERtJ4jkpiWpQ+m/nbmzpufDpNs/V3O9b3B8aB2RhTcbueNcMHWQs9NBg19CA5wL6CP42WjhBJw2m
mBfgkFy5p+ZpLu6q+YklIzD5Vl/AxTX2w+O0ZU9RNSyennrZnTIevlrntUHfl0jwphxqjlROSbDZ
v4i0UI28Im1okIYnxOzrdsRqZbExHoymmNcg2ylshIyg6iKIzmC1UALfD7H9aLBvn/89U3OpNbG1
njRprCdNhrmD4IcP32/DDirYpAKe5MoyQi4l1bnkDbx64bikxFPt3jLssCCiIp5vAaDhoqUn2+jT
GH3rdo93c1RUyILVUdoPraExCYJQMqCVucq688mCuxuMQ/NNhbgqRN2OWBHUOCkSL65LPH772r+b
vgZ4XLufhy/lkO6zGRSx7Nip2KWIOg8TlF5G2yXOHfegR6iXryC2rUa/FORYPbbi5tDghs19ZPs/
ypFI5zRrgUtMIFKl6QLBgnyDPQ2wHTqqMagTgudiFeatRqnmV41EqlZ2jjf/cY51K8wejUEWnsA5
ZrkTBk9dYEaDuUXwoEmTiIiCaBdqAv5oBbu1apguGqynGRvoa984rkqKSGHO1IFiwX4EUCfGJoZH
r2rGMji/pm1lz8PVRPSN9aQ3qeSpzWM+p3e5lEKO1hglMPeKBc0UlhLBJBUY/VY4FPf0tUKvavCL
NV/VUxUbu4YPo3c9WbERj4+/uIf98elh7u3UYxqqhDqlJQzep8TTmjiTElxxMKhyTFF6KTl5pcN7
Nfol7Vs9VHGxb2ms7UnMKNtKaTR+BVN6C8YCLrAtmHBguQaPCHxZeTBpYwJHUVgBm0YJ+zo0Uxn5
srlUbtdUy8Ym7rlqwAaVxu92ObkmwUWBLSDZeKyKBq9WMIJHiiUK5l9gnFwHFPcKTFxFe9+3aN80
zsPac88IDjgWOKoRDUNZ5mnKHQIZwWpHsZ5ALDDvnQb5Drr4qoDZNPjFVY83K6KHbXsrXpwNm/cf
1l0cMWVDA2K2yIzWGMgtGyXvMlPWa1jz6pUo/vVdHPPkK5L7Fsl90yF4vjs+PY4B5B/vxjB+HT02
XjJ425mVfepwlTMDOhV0l2ZRE8lejx7jyC+EjvH2ioPGShn4+VgU3BvfrVB0pzMrpSJAVfadJhZW
CuGwrMHCAQaEzcHrCIr47c6srKlYMmH4bivtjeCshfBVH1w59gjgwZUjuDR1ymcqsOoST0Fg8AtM
Hex3ZczbgFm1dPVhHa8fX7l57KbmgLfY2gDgr8+EGGsrEThv1AKjHlDegbyxpANxBKxJMLONzgi+
AJtd0ZzJdcf6Nqe78rSKtUdthNg3WNzoaQQefoat+t39Yfg8tdrNsSITqHECLFA8VYUHj58skE6j
PwJ2gyaOXsPXeo7LEMjLp2pubhsfTNMWpP5Uq09PqTyuFPwqhTxaM+odqmlK8GweBv4ZB7kQJHhB
EkvMnX9VZbxQHzXfvqnJ3IaXjb1d+26V6z4G4k+lvFyVKMH4o2RevMvBlty0wgUXO0/BmzM6GlDp
KipB3i5McKblpaTBZgHa28YC3JF+FSUGs6Yfzk3xc8VnspzCYgO9k7A4w1Peucxz58AmkSpn1EQv
+dKLcW9qCg4Nsqg5ieVfflvAYWwAKMC7t9TZzmQ8O91GPoaXBPMEe/xSoO1OrPOoFTF7tQ3lwsV1
6OTz/c/Hu8c5pzhvUOtZltkixlk5WQ9ej9fWdJF5pbSHxXHdGSZl/FfXwZKKC4mWxRM1n9Y2+LSz
2/bDDuysu/M6mKyQnCQ1JDJMXJQ4KwjWDHI2ZC6ZL2Ag/I2skJqCFfFbU8T0g2ogoj4fCw7UJHUK
tjLFyKqCdUvQVKVBg/elQiez1EKDk++Zu1bt/fjhstj5sSqvM616NXNga/fmu+fPT8en++f+0yaL
jJ1B4oRMOJ1Ry2R2DI8Gx0w1HrjFwJPOEuFcKRPEReWuy/henrZK/a4fq1g8mIZKOAxzT6X7KY+B
3Lnka9rDsGOjBxtEWIJ+A1hZlhkEwqSJq6SSjPG/xOKpVlZNR81Coz7eHG7XEIHTuVqPv989fRqq
tBGeqjV9pPEHKjkaHcEqeZkww8PAp0NAgk7a6BmWp2X19iccjPbIxy2FW6Nlfmj5Kixr2PuWbez9
RUZ4zPgWQxP/3/RPPobRjDCUSRTPGc/olkyBchSyYG/gUbAh6j8FUGS8t+L0/3q7uudGbSD+7r9C
Lzdzmak96AMkMnMPQkDqSxxfL06u7YuHGJJ6zh8Z27mb/PfdFTYGDCRtM+UhwcBKK2m1+trdX9pQ
0iPEycXVbR0gMZTa9XHpEnGLBYQBlDEYIVPUoV7g+yZ4L2Tb21Mx9dkpOLPvc0emaR2PcpFhaJzy
EBXEMgoDNLF3GaqM2M4mRT/C4P+cwjJH+292Xrdxd9p91/F1r8qjamBcpq1uD8OxtQJjA2c/4ZI+
bqNZFDfX8S1ApY+4P5wGqMhBm0MH01KDSMlXYt3ZtNs8BmpGXcBk1sB5cpw87U8KaMMphFahY9C5
iwU4bafWKw/jkgeOEpLDHNGrxUSppVbhRNDTaZwvuDoFI11kd190fFRNuIdqD7f2kyeoIA+Wrj5u
zMMyKYwwMIqGqavwA4PxmZy3GYcesuqQBHhbKUSTIaB/j+atJ37i+s78GqJezZ19EY9okMdhEFrH
ATVoqYA4jQ6s8LRB50HH9SzAqyPMmy1CMZeOI0Z8XS3BrKEZ7mez+tlUNpvjPkU5yBRnAdXKeP3Q
2E0+AbNEZUCQoUsGQhoeeUHnqVQ5zRpTDars/iTASRFxqAQ0wI2RFFWajzbgNKJ9pXGP2sAamsYR
V1y+cSusPdhQQ6gh4O501uDPXNoVsnx80wW8wqSBLgarSKkwtp8KQaIV6LrQuIEnFYw9ofd+i7Ej
Ly2+CzdNZ2pQQq+h2CeQdE1Dv57cwCArccOD+8JazflS+hEOSI5E01ijDdr4mn7sqcAElGlYf/x/
iJbwolrWU+g6fFjoTjRumsPYPj0iEXtWb1IEUARxjF3cdFOg6xHisy8DyTEseAwLqhZb2FqCFXbS
U2BCeCgKAzoYmKvDvXRCl4JG6TsCDTMEQubFlMLKNzbM9ZXL1LsB2TfxK3gTvydAcri0MsnT7hn3
KHLfozzIrzZQjQ6Mj4jk0ueaoYmRkP1IxTqMhXG5VO/heVTmoAOQfP9FrYwNs81DhISyI2ExDVxv
UJu6e9s/e2MD4FKY4DDRjxXiQNm4no4XWa8kz8VxQbxpAV7JqG2OUPqkWhi3qcG8puOUEmrRURdH
rjDah7WCdmGQ4I5xYY4DhYDJAm40+RiZ51UF9gpeUeWTKve+aODefyj11uV6ZSoG7KDLZGHC7uM6
lOEekQgEniaKPsJHoFmTopoqLENbt62lXGWs4bTVT2f3BzMEtMWf/8iO7lWc44GvNXw10Oc1w3BB
aIygPXQJhzmPyy2+diBl3eCylliZkYQ1RKpIYPp9sveJxclPncpORSJQnuQwwHIPMYjjiPVVyB2Y
u0ht3FDEKnijv+4h/a5gBvWzp0TQ0/bFhwf1l62yzeNLZReQFmDqjhY+NbhxItCxPw5d9JpDLxeN
PvbMO4m2cZJclZmGtVcihF/bk1wmi8W6OEv35IEdVwro5wECllHUzNBdFG5MCtdjFCba0pOd9j3l
dHs9PJi2wOajdTp/OByc3Dwvl9AA58C3gc+3ZJmkGbl/IdBxsg152qwxCjZMRXbJ5jGz0fF2f823
hxfntry7ZPt9+rDeTJ/m6TnJ43nlUMrTGfzdZefEKT/cZrvpdlc8r2b8WvLOf0sefpRKBTVg80O/
pPkqa8qPM+Xyf5Zn725EEOe6XL8IcjheLV4I7izhm/UDKUbHczJZ75LFJ07pQI3IJtvO02y1++Rc
fnQ+nJHtT3Q6S6fr590U2Hpe2YaFzNI9BeJhfjjrfdvMd8n9IoMEMPMiWVgQXZCf8HKXrQ5pduRx
eFTOB5PY50Jsubuvu+HXya2+gruv0cVwfE16+/+TP75E7WQ3wz/tWzO+vZ6Qj6v1qj9bJ4tsO8vS
M9L7dLxaEijeHm56erab/8BI8hPopCi+DRcspdRl8YP0zAWZ22Odrot5To1ma8NW5aTbRhoqREEj
gAbXXiv43gpE88WVc+TNz2luh3v+LBZyE2+uV+GtTINoC428lcrDSS/cx9QElb+Cbv9seayVSsCi
dVTK5/MN+TyckEfUiig1QJvW8qKsTCPaaD7mwWex1QlRvlfJ53AdviHQ3ZI0RQ8CAkyjBXpJdM96
lzYON9H4hIxXs5Z2VeXij/TV1dh0CgClHDvrQYQKmsfnZJOSpzb54azIRwJNtsQwnJPkkTDBWrNi
5eb8kqsvAs36tM3IcPWwflWkb367mu+ynKsZKLtmEWBVmok2l+TiVn8NWyvB9Qa0qAMKNLtk9v0V
5UDlgJVp7kZTW3N60qEaiDiKp0t637J73Dsb2WZuy0cd84G67U2noZ7obt4YLWgYtul0Ohzpi6ib
yK3W23R6Nby+jEIQ6/YG9QfeqPiBNJPo90l3tSlW1DVjlub2emjGYSd3rluRnaXV8q1KIJdrb8AL
3jzS2+u1ZS6qLURlGvbvVPVkPLFDRnctDORFfudRd0/zC1mChtpWFEKuCGy/Bhk91LWl6f0NUEsD
BBQAAgAIAPWQLkqKUkTSQUAAAB8IAQA6ABwAY29tLmFwcGxlLldlYktpdC5XZWJDb250ZW50LkRl
dmVsb3BtZW50LTE2NjctY3Jhc2gtbG9nLnR4dFVUCQADbtl6WG7Zelh1eAsAAQT1AQAABBQAAADs
XV2Tm8iSfV5+BQ8bE2rbqOuDooDw+gZCyNN7+ytabXs2JiYIBIWbawk0gOzu+7C/fbNAUgOSehpP
x8Y4Rnpwy1BknszKPJVZSOg6z0JRFLbafoXZYhgsl3Mx/CRm/0xK+cfN0lKk5XAsvop5tlzAe/VX
bBj8N+U6KO+6IuB1+jGbrxaiOP14df7hwjt9dbqWFufBQnzL8i+nH0VeJFlanDqnv1y7U5F/TQDP
6VP675fh6fp9cXoRhFfT02fCVc4i+DeJE5Hb32GtsgbbtdRA+mt1AP8O8VB/faK4WSTU24elaA/8
xTQ0Q1cHl0GZfBUn4LRcuvC6MwP/+Mc/wK2/KR8Kkatn464yhrCijINSnN4mi44GgjDXENawrmJu
M2LraIgMQ9WQiZByNVX3GQAeVOHULypGQ4yHhjrA7D0mmJwoN2KZ5eXOVRgrTpqlD4tsVagfPjQw
eibCrkWwNnII1bg5oppnWSONcIw4BnhjZiiKIpGrzrfgi1CnSRoKdZRlpQ1+hJdaiDBLo0JRpg9F
KRbqGczD5zwpH6SnShGWFRSRBrO5iBTFzYPiTkTq7V0ugmiLBKnqOCmWQRneqb+vxAo89TjLiyBJ
tbK6QFG8+1AspdD2lHm/uP7IGfuO63rTqTqYnr2feu8/njTGy3nezts/vZtL/+zyo3N+BheNxzfy
qqBU0T1qvShqSLgEg1oa3aub66nnX17dnk3+R1E+Xqg34rPMD/VSBDkIo8hWNO2dqsgrfP/W++V2
J+3WmjCKw5DCG615gEkf/yqHmf/8Tc21+9P82706vfgv9+rTXzBjFQcGJWFQuWu6FCFkbwgxEWf5
ojpoK+6NM/357PK9eutNb231FMSGQXgnTu+1CrWWVc4utGUOggFCdThJPw+Xd0tFeT/PZsFcvc0D
GYirOIa0G8iReSHU8C7P0myefQYI801ontgKI0OTMW6a0pHu5FKU0jc7M/Ef9ezzOI7NWBdxNKPq
rXsNkZOmMJlwnJgkNGM2Q+p0eq7+HID4O5kX46tLr9JiYayzflpA4EEtRRnkJdheqUvF56xMKjeu
dRGd99IlDGYd1AVzDBNciqEaQ2Ji440qciBetNZFjT7eYzyM6WHvVTOr4mFLhWHqxp83BzNmmuaO
OWbbHMNi6M+bs9G11xzOCOllTmSR2UEVVSQAg9ai+UuIbgXZVrTZM0sOTYIhop1JwM1JsHSLvURM
bXTtmQSLmRjhF5mESsXWU3SIdJNbfbLP4DMLMt27lwSZlPMH4Keyym13An7KviQC5Gd58Bn+wmFw
m8xzqQkSvY8RxoywCO/TdFCNUq/HsA6vF2jbfuaCjLoFmZvlYh82uaJhHIc0QIa6HmfbjfXClavA
z1lR2jbg7Z4YfLqd2PaNiK/L/O3By9/99NOJ+lqFqmif4GG4XNrUNE4U3BP1LESYHkb9Ps9WS9uO
kiIoiiwEjhbjLFzJJfE8CyKRD7aXto9XaAln6mBVJnOommxusBOF9HUqjqj4I6f+777DAwkAaLet
n/bST4iBLBSpB2wEzR1nVDqJdWCS7mwGEPQ9hb56CAKKBdORQdR6nG3D3x0QO8cqHFB8D9qHAYAJ
1TTr5wMaCG5Zjz6YyFpmo7vMg7RIpJm3mZstFkkJLPIYE5Xt0TWk5KsqHnRwTR3pEgs6UYy+WKIw
iA9gCSv9UJx/TWRhGMzlicoVFIPextgqXTC3wBm8b0AwFMaHA6LGUCkO76BQhjqtKF+9UZO0lEC4
tTMnFRTdPFHMfkiQzuIQqR1X3wTfbkSRrfIQDqVQVMUP7jyRxSa0asGnoLgRoYCurwNvBZP4OYXu
ZY0TG0gdrCWuxdViPgXzL1UgMZg8qzdiYeEnEQdRJHHW1e9jGE0Bq4jqoz/Vsc22+B6vr3xpWECC
qA8wCmnGeYO6p6tZvha5mdcoidaek/iu8jXC7hy/UfeSeRM/EPkbdZ7BmiX/edMIJRB8HTzMQaNs
AOtpAP7aQVOTvSXJHve10whJDzsPB8mzTaD6QQsMaQHpRYZQJRlm1CTDm4MG7Jy8EEUBTDQ4u3Yh
+KAIqnt4mI7qyBiaqs3CpUMBNDgkYC2/toJD5sIC2seICHEL+q8OjGqRrcqSDc6ihGLF97Ftr9IE
ShV/CTHVhPpGfRwSiThYzUs/ErIqbQ17p76rgkmS4EIssvzBJgaVztd74g5wEBzGfZWKDfRKHzEa
+pjUx5r6/jv4GkzDPFmWj1HbWvxNCwWxtc6oVXqeZVCJLEUuW+5PUCvWWoyGVTqTyW/01IJniDyh
5WuWRK82obwe4U7WSQjqeFOdVDLJVmlUbxTslLCWHptcYNX33cnNh8vzq6tr/2zqu875+dnle//q
w61/e+U7/vTqw43rIf/au5lc3Vz4kw+X7u3Z1aXvS5u5gs1+WiMe47DWWlswzqZVZBcIBEIToEB0
9JSo07gpEf6AKItwhaCeogxBTbUpaLvBAjWDZSikxXM/n91m2XyW3R9oE0KEQosyFeS4q1zubXpf
q/U2W56lF3JPFKRSphDSVyo3YnWd/ZfivhYrq55MWq5TohDaVySDcsYfzbPwy4cUCtWt2AuZUdDF
nCdFWaP+lJR3k2ReilwWElghreyFgvNQ9la6OAnCKDZUf3w93SqRsYQMmDDWVxQUQqr26+W0uSvm
p13w6/8UX4DBwDi5W2wnlTHAV3Xz9Zv0HNMVYvSEgCIT7UDIV6kUaJgwFbyfQCOQ+0AtcRfQDVbE
ySEEIeHmyex+GQ6jB3ijPtWpWtyYAd3qqg/j/Wz2r9Bf1LK4BXFn9RMVxLOZUKWktRDd0hWKnrxd
0OXuMNQ5VIsbARD6g8dNU2nncLGwoUKADglX6ABZdABe02+CUQjhqN4/kL7aNtzYrjpoEFBU++c+
1I2pmLdltkUxKBAJUIrcCPi9Gp+LcpVXc4CqzvZR2rLu0lvimtJMg1qMm+pmoP/t9/pNtTKZtOpE
e4njVMe1nS1ZdGsxeXJrQfp0fVJbBCmskvl3OAhWefVLtR/k/54VLcdspO+ZtWY8oVAY2GCqvxnv
Lz7nfpJ+zb5UxIiNjWueL5BFYdQRuHUQI1sH0b9dSOh/O4vZ385i429nMbebxHY5rZb528dd0z6u
0KOYE1iXJG0Un/0yD5b7vPAcQRSaqo2gqqjt7DY+oxA1MVRVjZp2u0CGd9dZtcARTDqbiM8plZkI
d0tlTKHs1tUXrpXbu3t/WPfoiEQWrAatWax2WKxqc65fIFpW9BiIsyx6qMzE1S5bT0k4eJS0rS4M
s9om6xnODKtdQY/BbH5P+mIE6PxCLL4FSenLbZFgvi9sw6fXTjPAOo1QrKZBmhVzIarYt6xNzoav
Xw/x/iqsJYUjCxHU2A0o75JivQTbdiXYh362saNQ30+G3n2VV6H2trGd8ziqOvcWz9+AZZvX/J36
rt4SqnZKOOukwx833DMqxEydLYI5tD22/bMIoOMuwgDib9+uh+yN3m5HT0vAFF6sSnH/7qcm1u+x
aL7ZGmFMHfj+Qkr1Z0EhbGzx7k79cwyLgD46hoGrwroLnW5MrG7kmF2NFHe35p+hkTGEHzU6xUMa
3kK/9bYF4o0q9zDUQQfZq5PByTsZKzJM1nxSYZObX1tRwzsbE9bdqX8ONB1FLwLNS8v84TpL0nLw
Z8TVdyCszo7/cwwxZlEl91UjkPx1evnLPLt/eNtIvRWIfVvDAL1/DvGbP+XAVxDej9tXFm1ux/GT
/kx6kN6tl6N3uXX/kvRudWqVDzfnj3uX9bbusWb5a9Us+z4M0P4sw0wPDChSfu1M56CezxPVb95u
qHZ0q20mcEObxbqwu5p0yyTCkN69nNbx5NcxVm/DQuR9T2VzIInMl0si64VrJIwgizZ3eVSgy2w+
T9LPx8T5iyXOHwlk8m4HVrtb9rzvbXgRCmY0PhaxjYj1h1/tJE3KJJgn/xbNuoIwWII6Y8HbcuuR
0ZPeC3Ogm5sbNzuFwnbVw9AaD+JVWhFEMLcx10n3XvtzVM3kXX+p6lsZ3x7WxjprrPVi9NB7YXxi
jcUvTA9Y0oN0jrMqM/lx2PA7dwMYjWYGJM9SFjt3fvhV9lffuSsScNLYFZEfmPXX0ri85dE3AlhA
eG1kbRssO1FS3wAtk4WIPoHs+qNcVXMCvUmUrWZzsb31Wl8GgX9dQyoeP7TVt4MyBd1E/nWQf5G3
ibLStpfwfgsLysGHs8VyXgXn9h5+dc00zJYiOg8Wsyh4O8uyuQrF4rqn2zekrjC7Q+SH5+U9qfFD
GiyS0JV9mrzr32gOiQFRO3iEWH9AA+m9WysiUMQNtcJaKd+aOZK9ky0ntrp/9rY6ew5Q3g22b3sg
xqwN+M42v6MtM2KBo1azsGGgzfu3+9IFumCZXI/ARf5ojzR023jb9n/6qNnXVsV/UGb5Swh+t2kq
ZA8GcZBLwYOT+n67KT/d1hZfTStBtH+T+CconP9/Ufjfok3C5EjhRwo/UviRwo8U/qNSOD1S+JHC
jxR+pPAjhf+oFK4fKfxI4UcKP1L4kcJ/VApnRwo/UviRwo8UfqTwH5XCjSOFHyn8SOFHCj9S+I9K
4fxI4UcKP1L4kcKPFP6jUrh5pPAjhR8p/EjhRwr/USm8/eUrdzKVUVIOl3nyNSjFd3zvFvH6e7dz
ETYYvNc3IJjOgurrGTWYi/pRHBWBk/7flT84LfTlpkV/4W/zIDVcP6v8G/CWfBz8+qHlqvxyrVAH
hq7NkvLEVlQ1D+7tnUeHI5i4fHboRHjoRNQ8gfGMxVhHSCqJkgOXFNsT0jY9jmkQkEr7cueEFVdX
7DkhpBI1N/cokQmfW21ciItaO0b7AMsTuCnKCIEEIhFLSzA5YAmmbVkwsVZYndAPKWG7V+iVu5Jl
68zm0bNqHs872jEiSD7lKt8Di0pZyvn6keLu9Yf6AfBYV7w8z/LqqfLrZ8JvL9WVW/mdrcvVYrb5
6QIYryijJA3yB/VsAblU2Mrm+e/320e/q5raPggzEz/9BKNB9XMGmrr9PQP1remY4wknTHN1B2t0
YjHNmYxdTUe6NYFjpmugd3+9Z8e3LY/3uSOW7ngN169/hWF6lyzWKT5AYLnuMN3zTEszTdPRqMUn
mqmbujayxiOT62PmWO4By3cktvFEvIsHI8RMSJw9DwfcMyfEpVgfE6oZ1JlolBJTGxHmaaOROQGy
HTsjYvSdk/qc0oTEY7qL04oA52wX57n4HIQP+9Aii1DicqRh16QaJWNTMy3H0EaMcuZOOKcIH0Zb
y30Kcz2ihTzUrR3k2NKDjoc7xcYe7C5CJrI404hJAbs31jWHIKTpro485kw8gvbGQFvyfvTtMU38
OOZ4Bz+lcbQbIYeAWw42sWFAyI71sUYNj0AYjyyNjhzqOoZhWBN+wOmHEa9PNqHOjJptW1BnBt3P
NbeiKG9WaSry4Vn6Lygo5BNa02gOJuChFIJl3jGKzQlxNcPRCeQdRpByrql5EJGUeISOuXc4Xh5V
tDUMZ9WfLp88fVHb0mA3HWYcQzpw9TXk+No7UtZ0tZS/ntJiE8ObeJTq2hh5ukZ1bmjArI7msfHY
NRkjHI32WfWE4CY6IaLZDjoRR5FE13w4zcX44vZ8lGfpv8U4l49Ula7XyRDKZXD/UB8SSfqmRbln
OJqJR0ijiFuaNRpzDRMPUmDiWs7IAbD1r7ScniezHJaiU+8ePLuOlR01B/y/O1Cp0ctSwkCm2aDK
7cGZCORvVcjn5akDaqAhqUGDU+nE1VwXASti19Uc19U1zhwTMdfTER4D6FWRS6eeyqsbukyd6rSr
Cw4arONB+WBh+fj7gS69RocGXLF5CyjG4zExMYbo9dwRsN0EEs/zsGZYo4kFfcgIlsxd113X5flk
k3XF6VrN/kRcn2zB16Hu2IEPrw78C1FC6TFgRgVc/gHQFDFscoyBLYDcgJYtzXEwrHwIjalrmp5h
0V3QDbSV1P1Yq1NtpAbaRcqwVSGFqfl6kRSbp/gAUDpkAHE0MTCZ8LE2cehI1iFAbSOPA2I8ckcE
e67LnoTohCH0MNACHyC3xtCvIgQB+4e18SltE4J9dkUVFcpuYpmk0Wqx3JiGLT7E1QLJOePmREOT
qsTSocbAhgfzMJ6MicuI65qNwN2R1ALBibELgks6rp17X8zL7QOOBlgf6oCAE3eMXUfX8GQkVwtO
NGfsesBQkOlcl2Ww00bQFNPSbxK2q9/Sw856cB6s0vBuUwWqA05MyCC4rH4jE2kCRYLlUg0ZDmBC
BmDSkaMx5I0xcWF9c50nJ1xy5kbBH055G8/+4e0xStvAaNfqMMAdqxt98sAYWpJxCbPkBGDHGlMH
aWiEgbs8CtRrTKiGdegtDebA4kGeNPZR8j7sbuO80oa4hzRiGnYKjUKEq+pnuAa8WqYZp5QPJfEC
do94jFFIRWIC21JiQWlHR/DPCI+g1uDU0p8mj+la+gGuW59t4oYQ28XNEOtWHfLBsuKjs9UFdDJE
Q0qkCdUbSSyYc0yhenYxLHgVfMtyLc0dO8gzPeLA4vwcwl7r2m/E+mTLBix/ma1rA0bBJlN/XwV5
kJZJKjbZaspCAk0gH60JhIoLzQh1oDUbUcfTPJ2PKDONsYWabFFvYZzukdcBM9sHJv4/4q5tN44j
yb7zSwwMkpv3y2NeNdrRrGXLY+zboK8yYYoUSMoznq/fE9Xs6rp1k7tDeAGBlLpKmRFZGRHnRER2
HX1X91atoxyOHHIw2sdYA5NwEUwZyBEq+QwZXdYW0Vi7RTkGQ41FCGpBhDD1HO+/7zz5X7vUHr0M
bIgdTVAe+y2zGhsWx2XHolKGWVlCNKVmEexrHuZskuXHOrttotB2SaHdxLi+IpQPSNn1R/o3lOKd
VtJ2Abp60xzPrLhC6BGAIhErzaIZjmAYsFsvO8PVw3rZN4zc4MexLMO7uksT/fYL+q3kcQN3mcFP
ebhzwMK6aC6VD1AlQotK/i6BV0Vw2ZZqqVxkPKnL+nz/dXf37sMZP93dfgMUvSTEWIWVXVBhb6eY
7/cv6/v+G68JMJMH8VxT8MRzSc1ZQ8KDYDVRmTcZqiXZfIVn9Fm+CvENJznjC4e3jBSRauFZ4MOj
/X4hFPZ3KnA9Pq1OEATaww/qA+ovtUYhpGMOpoKH0ijiJvyoiFI54cP0Kk/47uPf8v2XrzdAWwM1
zgkxVkPzBTU0P26p2y4E937ImmvDrz2Bf9hEsdwwIwQMxGqBDQXmW3NTItGrKQ1f9EbDEUeiWLuZ
i2LdauKO7rERPwNQCzCAgxvq/gKRrAzBJUDplAt4bHSw2SIsK9VhJWODm5T/5z1+uDYS2C2Zo1uv
j2u3O9Kzfvlo4VoJRhZKx6SamcoI3KF7d6coAjTGZKPrGPpNxhnJEMJCGFmv7HEbtvvH279vD2W7
3ifYa0l2ZBol1iQQftFA+BALdqQEyxXBvgVKvoSxJPPRrsbzurkwm62e+N8Dt/4nXC6CWPcIAeeu
BVlELKl6ZQwD6TVMKTy9aAFyCvZXsQKkMusXMSiNvfwQj1evxgLOAbTZ7eRxCW823zaUoYk9QzLi
Gn9oCeFVQxLaMuU1eFzRgJEZP1pVQRRTYMZuvIST0YaSWO7mfMYeMcFp/W7ufj2p18UtArZSkEAC
jhEWCIGag2+0ycMalGPYVTw2pZNS/i3i1vuhDKMIfffrSCch+IJO4pDTPFV8tnePj9veSUpDWJf0
gSPBEgcPnEiJEWEzSzARZhRMDVgdSLIsupn5uBOxwoJYeups3tHbaPUBF3Q+JunAlQJbUElVylFH
EDcHvAP4ZWuIQWh+cX0x4vLC4cJYwvWShHt39C7vPnSViN6oZUdtwQEaqI2CW+agtoHDgAC4wdq9
aqDtHIb9NnF+NP9Icq0WJNfGTNd2d7c7fI3t6vbT8zsNvzv4A6lCp43PHttae6ZlIHSJfR0y8Iu2
LgflEPVTeFWAnE915iHMbxyrZubwxRrTI7B2f/f0cfXwiEB8fC7GdxkfaV0MsWqmhcJuRtjHM3EK
EaqVHKyxvrXL6ZTTOzteTbLjT2c22/GdT4//sSD0SOPg9Vzj4Dc9T7n/+vseyOO0Dx35caLRLmXW
FECN0viRksVzzNa0wuk72+UyVxkNN5Fkju7t2kyhY7cr338/9JDqWh2Qgra8E07ZYihFqKtCkImC
Bc0VK9mCVXsepL+c2ZpNMXKAh4sj0de7BSe44ea4bT7efT4liDoZJTyJ04UzrQ2cTSyBeQGMBcgl
4WYEts6/IePo8feTD0V2Yjs3Yie5Ooq8+dOfVuubo9SKuw7RBilrSzBTXgPcozCJeek4q17ErJV2
MvNxPByOMxJA2vnGczs/y68fvvz9mN3RXF9r2oGIdUI0W1kpHmyZltJn7MBsQ5KSm6q75PRFeztT
u8vP167Gku0WxA38aCf5579++nj77fPN3aRW8ey4AZdVlCGyQrkFFcChfeWF2ZCNg3fQyfI3ImjL
koy1CWJJm0M97xRdDy9fPLk6xGzeaVO0T6UqzXhz0EaDnUXeGmCI84BGwbucL4Xt4cAjwfZivsxe
m80s6b69WR1fTHVMVzglroW5lpz2h4VNqZYcS/jNFAd88zHAyrRCgG9S52ZfyMCfpjiXiD/dcTWW
d7ughF9PlBjmU9/fPe0e6Av4v5PaX1M+rftNilTQhsaxcVwTFCM9EEkF4mvBq1R0zT69JkYuzXYe
RU/vHOvn50wOVGW33x1s4bfy6eO03GAcp/eOwl4bR3wsxlNOvrFQoZv0uJrUH1Vu6MW7GiuwX9Bq
NS1XPX7d7cBvH3ab+893N+PUAqVDsQe7bKjoDCVUE4PH02sASFSrN8QLYTIJnl74nLWpb4HXP3VS
/bgk1CjfMb1tvAKbuUsGawlHr0BA4sfd55vHp4eBUzDdNo2OF/BJSlw2Rf44AsqJAL1ToJp/DVb8
P+Kfsdgjra2yC1qrvsCz2LP2HVDetThwGFWKqE1nBoYPnh1TQyjKXdJe5FprMCZccoajkUei7d2c
uvr9aj/ZkmW3/vb5kMp6JMnIfYguFy9V1DIbwNAAcKEQ9mFwVQKneRepbGhel4EazrC84sM7xjqs
+YIOG9EDzC9f+/wTAekUdWoSy+eahp0oMNxQimNWhBxq8qrmNoEY/QjDiQPfzGNcEGLKtg+65/u7
/c3n59duUEQRuivfd6TbYz9UrrGKFggDS0opqGhY86ElXnOyNV8uyMznOJePnN040kmqeQYmSGsn
bLtvu1KCk/Plvoou82iJbKnSKovGd+V8p5RJ1VV9aYd+WVhereeRGrxBLwS5s1U6A4sBkEMUaJQr
owSpV14yWUD7nWmIpC+XJC9X6uLknquxuHP7CsFOmSxV3PG/V10u5lCwC05eq0OSTXOXKXchNVWP
hKEiP8CGLCVxLTk+fruq6lGS850BdPVqrI5d0jFMntMvu9uvtO/BpShh19VITIkaSI/xlEHyTKR2
BkedioGbXJpuVr9F7Pozpl6+ia6MlfFLyqz8tKS1OQURbDnfhWT6RUC81FpStawZ6ntIpJUsmkkF
m4Yrx85+Vc5hOMcZpji4Y6jFipt5oXLF7e4YcT7c3O1WD/H28w6Tnyo9VnaRtrVqdC2NNQ78pDKn
0raO8OnRpUS5Xln+ICS1IOhY0QVAsRJGHIHi5A1TMC8vKTNIzwmYUKkiJaNaOOXRM3afzKyWXJO2
VdvYLvmshQQ2ppZL8qhjLCo3q89394/0cqbDS6AfD2+MP8nXdZ5JrZJN2DKC6lMGJBgkDnjHRImH
hJDV1UQHEeryuCMRpZzz8pVU0x7RD6u7zxG4/PfHGwr5z16p+01ZYqyUEFKxSG0EyhuEfYctgjhg
ijYg0c68ORgbinSu3+N0x1hptaj05hjWPm0edru7H3fde9efn4WW9lqTPYBFZBeKYNo4aikNnAVt
wEVTlMDbwptWxo9jPtxEmu2CNGtxpodjP4puXTeHEbJrXYtRt1I4oAx1FvAYGRwPop1NKTSAscbd
qxo5Xgpx8/vGCm3nSGhlrDvVMjergaexwXaUrTabORgmM616SvIlUGj4HRuiUbnm4OKkfjQa6Go8
m18SYeq4h8FwqYepEnah6l/NlXpLtMTGlgWmB5vTNhmX/L8ZbYd3TFRY2KRmvZu2yFQIzing4GdX
8tJBOgjaPG0CbxOL2nDWYpZeYB+0+IYAIdYz/TJ1rMt6znVX1qqJLun22+7p/v7pFyqS6ENnJv3e
d23F3MkKB8MaoA6eRYaTSWB8QamQHQelN5cZ3/vv+/HPdYP0N4ykt5t5Y8vKCTvIXQ468uQhnviW
FWAl9WASE9cBvCJmA0hsgd9ANorQs9TlUkfeymmzMH3gC8i3SxG9/552xCFFrV3o2mpcCTIDhlcn
yEETIK8wMg7AFRwM0IX24qZ4Hvz8Nn6+YSz8QuZv5dYzQ/zl21131PMwNRWVHQUY22X/i2vSm8zA
HysVIREAfVTMeGm1UAYRsL4qJTWe5Iwi45vGyizU0PDh1CR/ynnY09RMrcBICl6DFp9OIwSXKpMy
JxAlkaDLa8THsMsi48JEzAVrc1s7yTCsHm973iYVNWJ0ZiYaCdWYSIgkqonCUlSR+omNc7Vg5S9m
F/pRxyJt3YJIe3FM9dz+68vq2pxwDwHnzJUJIsFzGSwbEeCYvWC8OMuVipnnSWPDcJDR7H69gAvD
qi8+/PPLLbDucXYZrkWXdE6x2GwLK80Q36qcRSsFgLyxpRUhoxOTptrBOFfjuRaeSNhPyStV8h+P
rpd6xHfbdnO7+3Dz+ESJ2q5rCb8oWIoiYRYuMUeNx0oagC8Z4GgKj0pGL6TIb+fmx7Kc72k/3TNW
f79aUn/dN1Yfts6azoE/9rCgUxN0toRiWLNAM8rA9JPiDgwEIDNLDQMyl3bjcMiJSPOc8mol1MRG
6Ik83fYyeUUVCRIsB15iVR7s1IOsepFZBPRjMtrok3XOSn+RLgwHHkm2W+Cc+HB3Abpct8ObiAma
S5iy4B0D7f9ODcrNJBcB0VOGRasWA4sheVYMgJaoIrjwht3YR3nO3Ph8daT23s3zdvTh8YH8uvv9
y+cejctDz5gTGeQUgJEQQQY7SgBsrAafnRXJtrrcMzYcayKEWxJic3RT3+7+cXPX52SVuSaQ2CwI
IvYhQ0invEWAs0yQiloKWkogCF3/9FyM4WhjMcICb9zDiYx57Nfb1dP+/qHPvjlNu7PLw4YYECuB
nZ0j36kU89TwYrOK3med4MwvpohHI09kWy/Ituptef345Zr3K9QdTqgCCEbDQDzlrYzTLGHJmCmm
xZSdDHLCXwdjjOdeLRjtfmcnpvFDoRq9oLS04rJrua50Jo0z6TsXKTSMFUy1eVmoT47b+vbFgh/K
8i0/lKFOa6DWmU5rHvq+nNW3p/s+LnqieSGEagVvDKE6w/UDCcWSIzM1cx2SNaWl8XqexhhPHeYk
aS1838D+nx/lpI3AtWKlQkyuhc4iOjpS6xrHP0W2tWTbpHijNoJ+8pHIcqHPai3VlEj8Zfew3j3c
P9I+OMIwkbTTOsE9GKqI+yqBaYxlFaxdScebrJe53HHQZeGPV0fiqoUq/lpRS6d6oSZwXeNHz6X4
7+6MD3/uN+myLUVUVTkgicyemIWAcVcPVx41bKkE3Vp+DZ48zrCsz/HqSB+z0KW8tuvtZPn/9n6Y
gj8gYa1sF4hiTMlI60BF6NgBNbsl2ACr1ppUoi+16ddIP5xjWYPhHVdjgXdLWuyP6Z+H3Zf733bD
LiTdkSgja1OhMqELJLegonCygWljDch182HUaXtyqtPxxsJs5v50jeg1C/e39w+ffr/bEDUOhxWl
389M01UJ726oRzMnyULpakYq4JIvzbs39269POfo4PPlka777dx/b+R2quuf3/etFvK5vu2fG4Ko
MVxljW1v6eS8RogLmVfWhE8KnrziWbxJjeD9xVaM/vLVWBO5pJ6blXdAkykp/vh4s7657Y5lHWzE
ha5zB949QUUBWg49OXXxezh6oDQlUwg+yZc7SUbjX+gnGd030cYvaTNl7qfsflfGpP8w+Ig+IdPx
ik5p0XmXrKATnTVqdPQo52STrK6+FIBfqCGcro90WK/nWHqz9dMO8h++rR6e/nU4ig+JacNpws1d
tT3XCHO09F0NdPzewrAA8Zl2NjVbVDNL/TBDHNAPfgYP9NdHou/knDNtpewbJT/EjzH/ZVat0cD8
nr7mwALuMxXA4VOjnkmuI8/SOyn+qL6XoYRXIy3UPJ+2Vdtpm8Hqt2Gq+9DJK7i2cHtdc78WqRSu
GjOGHEKiE8VUuXfAc9qbFOsLTyb+/FIIGd4xVGFnFioI+LCvINDh9B4EHw+4N8FVki2xouiLNHxO
LAQZWRU2lZw4j3yZKJxGmwixXRDCrCccdvQlUd8pavSimhc2erdjREaMaJCqJpfgUnlhMSvJpDOe
gyfEzOMlrjAcfiSelXMytbPPHZeD3rzDi+v7Bi7fp6ISHWxJTrEgC/xfiY7hIYM9+BCKtVqbLC52
/Q1HHou21Qui7aY4Jjfqgiw3D7vN032XleQH7yBCdzhCtGDorLUxlVJlobAgnAAQ99nYWGvQ/sUe
y370l0Nue8X9k5vGWu/muGfnhDzh/fpuAvi9jM1ZGFVS1cKdxMiCdpVlpaP0vAH3tzcD/MfZr8by
qSWh+2LS19WXQequSxy2XERIBdQkYds0megoc2Y6S1XB000Tk8PwgzEmc/uluUNfJ+zUvk6n3L+0
x4QLF9IgbBdmBX2BSwRLogYtMHLbtHRF5jJhvePRRoKE1YIga9ufekkf4qdZKEhQWHhpsR8T3A1l
MpMzhWXACW+rRBizf1AoOMk3UmvtF57t2ptJXnCUFu2/e+HgvBICcAQNBuehI49wqT6FSEV8r6xt
SfLyUhpuPPRQwL1ezT3s3s2+HCe3/zq4GjrSyK9t19Py/Lfu2EkKQOWVFQ43C5hK6QdwUBlNq1z6
WOzlQNWPf87mny8PZA98zWdcDR+KPrFw3u/WVktwkNcYKl3xzBmWGIHVBbBknnTQkwr3OU8b+GZ+
hhofbqddrj+CIj3tfr7Z/eNUjj1G/C4USO+FBqnxVMVScDssEZcXxljNVZBGvaqGMp/nnGea3jfW
aruba7XlfRJse/P4dfV0OuhquOha2WnLZqeB4Q11GEZKRjnEW1Mj2FvJ2WdVWlg+yzIe9Go89WZB
HmkWzro+dt9Y1X0BDrVvdNHMHo5HKVsBaRFlFbw79mlw1B7XGMKZS9LBwlJ6C3JFEerTUYzzx2P7
W4aqCrObhW58uJ9WQy8GbiWidbEYZnLXacYR1SjIeSlK0ynrxW8Z+N8F7nNhOAgr5FwDa3tc9NP7
1iZhWDkQ+lAimGBEGMY+Yb5ZzppyugFDZsD7NwrDp9nHQtv5jhdwcUehbzb3d7+dAvHhYD03kUfq
VJJEnaiZ1cN/sCb/h7draXLbSNL3/hV73Au09X4c6ykrwt5xWCPP3DZIEG1xLXVr++G1/es3swCC
KKDYzdjp8EWiCKiQSVTlO7/UwUfHlE923c26WOWmfhRtPN+sX/sZhaEgdmAEi6JKHEUJZfQdH3vl
LRFaZxDC3nCJ/TG0Myidc8yZMA8bwcarUUPKY14ADinXa3b2W7FI93wdGPz5eBjuX+47CTowRbH8
SEk0Myj82kl3VLngIte0GU5bMLB8RJuF5R03Nb19i4n+tCee7/pzTrVAa3kKNrHugtZyLLX2QoFJ
xBOYKMqaTNKFREnf2BJ73voNlVpZD0dE/zhtS61RyZXN6ZwFcw3sMxERqgn8eqei6VRwWBKucxYv
Wg7nZWuilN4SdWvXkvi3Y2nAz7t+GMMO2FOIAqr8jTpYCrAMQC0IhkUDRJvOMTAfg2QJvhJR2qtq
Hk5PuCCUp6s3NbWboAkcj9u+0Xb//mH37fOxLyWBBYoCS5XB7ik7kxoQrODoEu4MvO1YOqLA/olB
gv2uY36lA2f5gMtFJ6c7lixwpu2WBWbmJoD3+Z9junrVNQduMPce9gPB1louNRk9TuoDsTwbrfUb
wZqsKKipN7st9ZLu1jbT7n8DPOZhN0HzYTkgxWp3M0pfCiqDgRsEkswggmSC3x8rM411jJFEjWgo
uWWa9z/WT1iD/83XK/LlsD2XfLfbww6qjkDRSf/276bsGjOGsmX2goLlCR4LeNSC885pizl/q0kO
IKoNeTOXZew3b942Xqu4Ooit3cEPcoZ1+H33cC4Cm9KOHGR0VqpjiOHAI7qk0dAOWBHBSEt4WJWA
LRapHy556+H7lVQBNyB/PFWFjskiI8DL4AJoEBh5zYwhyhMmwYxylCRHXwEmK2u2f6VyqaJzuN1a
CYLQc6HH/3w5Pg181gpUFVkcweoFeaY7Sx0QqbFDQ+rQKWXBD7EhGrbKaFYL3VRP46xBgpitq/BT
/vgM/7dKUYN4BW8Zpb/DSDtRuvPMu44E5oh33rjAawLqZWoKtk39VrDbvlGvF8cuD4Z3K0GLt4hd
u1JYUItgl8OPwbDn2SB2cUokYL39FZgl8WLTxunqTU3d9sgKTrZJqK9f7+9+3N0NpfELDDVVBH4B
W066JFalxGADmFaIOArmFeNUgK3tWLJv4TssSbjE4PmOm5qfxs7gYl1Y04TzmnIDtLTKCj0GWIBd
45zyiHBjsbAvdp5EbFK2IfhMMyi5N0+8zeS8gPK1VumCyxbr50aEL7u7X44LZVgs5BBEJpGCkwRa
Y0x8BPQGEwc1kiMxjK3q7xar1I/vbePxw9zM/hXU4uNcD44HMsEBsB5BFDCQB2YtmopcdeCayWBN
4pmsYnjLNeqHD6r1cNWAGly9CyDF4Os2pQY1Sh2566hgCHiWZeczCIzkUDpRJYwRb/OuGzeu+Nla
mELcypV5dhgef326//Y484KpuBKYGj+gV+mUJQo2bCBginN8114a2xGhFFjkgsE7v65bszzqRC3e
cKlpc3PjTc2FarE2rCz6Kdq0wcPiRmKUhaM8UopYGYPulOQWK55B70kwgYREiPWsIqHiitzBZaws
Cyvtt9TKW7baWGdJgsfyH8d8XDikBCQKKTU9XFoGzpvn2HWfXYleR9hehgeuwP5sxdnbXff4iMuy
H69WbOht3yp+KTawjR+fH27BXyhtUyD6y1YaP6EsZAm7KxX4K9ikBK5e5xBdSYCUkCkzxV7RWvP6
l2rzp8sV7WDRb2k3XJzq9cL7AiiA/+/x3KOq36E3KjTYlwjEKBnqWaJ15wg4p5HIRBjoM8XpX2Fr
1mAaG4JrfkXDvtrvEZe68Hu//+/+DCymCt5olDKC2awRGzhhuZgEM4vIToioXU7KBLbCFFuuclM/
aeuYiJ7Ji0GYsuG+d//Z2PHcc8Sm453OAfuuOVg4JNBOcJadoDGGmF41c3DtF7Y6XL2pSVUt+s0a
cmFqb/oMJ9VOHVaEoFShSfskwSKzGvuBsKLBpQBKISXmIhMqmjeB8Tw1WH334eUGrO8+1PzZxnHo
h2HFH4aBe4T+mNr42NTGB86KNwj25ggBKxj0G9YQGXAYRAqw9yzR6VXvN7wAeBi+r8nd1mCXL0/i
vgoCf3o6fjkjDo4BaxdJdMGAqQnEjUfYWgvOA7wURSk4v27lN1xYckVWwxg+iLldtn/+9riIdPIR
kMJSaYQTpGMl38eT6ZyiHGxDxpgBX0+vQcCX61QEHIxpEHDG/vmhZAFmZ7MgZGE/hIfX1+mE0izC
UXdUSzhd3AqVg5By5WtWqyyfL0VDI8CXc1wvfD7eDY/D3+9/He6Ofy6wyfCIgLtugsLaE6JAkwUN
+4eF2AkliaYW5E1cEdJerqJINkLmEjzY1cb+bjh+PSCozRJiT0YONgC43cZj9xCTOBAGHDwcfgMW
HQE1e1UkbVr8Uud4uVgTvZ19gF/aNSDE0OPYoH88wD9xmsNEu6KnYm6aDVINispiIA0shA6swNxF
kDZMC8W1uQ6ftnrQRcGyuKdiR22hkqy0t6oUpddurfsU0Lk/1a1OnzAmhSLegsBUAZuLiASrLDDW
EWaMY+Dyj0j5V5k58JDLoh8uVsTvGppLlqJ1PXkg/ec5Smy0HPNhmD0X4MmizYi1VAY9cQmKVDEc
LSTohXj1YrWaip40qOjnGFJ4/08cg3jW4KdYapYseGyD8VwpcIcs7zxNCsd7SMOVlp7afzGWWiWB
VoRUTOzVVsnI/WHYbOvdQ/+5YKnhVBIyTScpu4DiTjZmBPLiCn5ckOIY9KOem2Cvigxf37t0IuTS
jp8uV0z2fBvtkz1smGE/wRQ+DP3DH9/Otfmcy3PdUiAyR7AnJaK4IuIeGPNg38COMcI4HugFZPXV
qhVJh22nvpVDv6maez4c7989TQkdh/9aJJDo5AAW90+TZKUP4BiBoc6tYp1RIXTEUUQrc4SblzfV
cvELvuzijiUzoJy3slFRtvadAg7d+2lAVLnhYYKXOydzNUXPnIBIZV6CQEc1w0OZ8AV/EEF1VnBg
aLwOsKzxrAsCpnFnzZ3YNbgT6/KyH3Z3vzzc/1YNT2LRAM0O01IYr/UeuAlw5mnIkQRLkhFXlcef
1r5Q+jtdXVE9NKi+XR/s/a7/9flbhRgM9qOY4CBK5oETkRAhwVqKVrJNHXgotvPZyMClF4ZcJeX9
6klLDsZrFf2Mbc0W/HK9p4oJjkhihWapSwm9QvRxBipWIKYDs5h3wGY5zmligRoe/992/XhtRSpr
kMpnRfDxG+KnNqu6VAZTwBH0llCFGjA2DfzenSfgT4kUqfd/FRzLmsqaxW3XevlyE1Lu73clc4Un
epwDBXa80c53kXGMhUhQD9Z6+INTAb8Spg9fUQ+w5iXbAC5VdJqGz6TM3twOk7V///XbA5bIn+NM
pfkQjLIsGI0dpQi2L0AAOSyPpD55sHSJ42Tle2xWqunY71t0HDYNqcsmoXmuCCvlRUWqx+R1zLYD
7x8xjnHSBM7tI1QpY1jOJL+MY7N9QEXnftg6J6rXdKWGfhwesIFwd9cPS9yYk5gjOgYTORy40seB
mJlwxBB6LQjKvTOBXRXvajzmQlx8e+NNzQFrsbXudjhPvpzr09DFSAx0V1Rdzg7ricCs9ZmqzubI
wZ/2glyngs6rvzZ3c0V736DdmlMUDDbd/Zff3tnz0Aj0ncEfA0PFdNRidzuoe9D+ILOJZ+Cqgenr
8yrCXi9TU7AjDQp2+22M/ePu7lBskY2bI5lWiuGwQGwO5Vj37cAgxIAigZMVWUrmyoqc6SEX4+vT
9YqFod96/apMUqpYQLyzw/BUyroe+5IVGoMoY6FWMoqqTED1ERcQfQUNdROACZVUjNSF65xNzNDF
02MuZ3s2t93U1LdY2nSSjxZj8ZrwE76aCTwE/0amwE8WmfuOKObRwkKBDEwFxAIUkZAoXkfBKWu/
4LDh5Zp60xDMt/t1MCsex3HkD398XKQ6CqKtnNIchOFoKYYITdgSg8AxFLGRJM5JSVSD0n87d2NL
z4VXt7mv5n7f4v7QGJCFNRm7410zdJCx0EODXUMDzgX0EfxttHCCThpMMS/AIbnyTM2PuXiq5juW
jMDDt/oCvlxjPzxOR/YUVcPi6amX3Snj4a11Xhv0fYkEb8qh5khlSoLN/kWkhWrlFWlDgzScELOv
2xGrncXGeDCaYl6DbKdwEDKCqosgOoPVQgl8P8T2o8G+ff73TM2l1sTWftKksZ80GeYOgp8+/LgN
O6hgkwo4yZVlhFxKqnPJG/jpheOSEk+1e8uww4KIini+BYCGLy092Uafx+hbt3u8m6OiQhasjtJ+
aA2NSRCEkgGtzFXWnU8W3N1gHJpvKsRVIep2xYqgxqRI/HJd4vH7t/7d9DbA49r9MnwtQ7rPZlDE
smOnYpci6jxMUHoZbZc4d9yDHqFevoLYtlr9UpBjdduKm0ODGzb3ke3/LCORzmnWApeYQKRK0wWC
BfkGexrgOHRUY1AnBM/FKsxbrVI9XzUSqVrZOd785znWrTB7NAZZeALnmOVOGJy6wIwGc4vgoEmT
iIiCaBdqAv5sBbu1apguGqynGRvoW98YVyVFpPDM1IFiwX4EUCfGJoajVzVjGZxf07ay5+VqIvrG
ftKbVPLU5jHP6V1upZCjNUYJzL1iQTOFrUQwSQVGvxUOxT19rdCrWvxizVd1V8XGruHD6F1PVmzE
4+Ov7mF/fHqYezv1mIYqoU5pCYPfU+K0Js6kBFccDKocU5ReSk5e6fBerX5J+1Y3VVzsWxprL1v1
W6U0Gt+CKb0FYwEX2BZMOLBcg0cEvqw8mLQxgaMorIBDo4R9HZqprHzZXCqXa6pl4xD3XDVgg0rj
d7ucXJPgosAWkGw8VkWDVysYwZFiiYL5Fxgn1wHFvQITV9He9y3aN43zsPfcM4IDjgWOakTDUJZ5
mnKHQEaw21GsJxALzHunQb6DLr4qYDYtfnHX48WK6GHb3opfzobN+w/rLo6YsqEBMVtkRmsM5JaN
kneZKes17Hn1ShT/+i6O+eErkvsWyX3TIXi+Oz49jgHkT3djGL+OHhsvGfzamZVz6nCXMwM6FXSX
ZlETyV6PHuPKL4SO8fKKg8ZOGfh5LAqejR9WKLrTzEqpCFCVfaeJhZ1COGxrsHCAAWFz8DqCIn67
mZU1FUsmDN9tpb0RnLUQvurBlWOPAA6uHMGlqVM+U4FVlzgFgcEnMHWw35UxbwNm1dLVwzpeH1+5
ue2m5oC32NoA4K9nQoy1lQicN2qBUQ8o70DeWNKBOALWJJjZRmcEX4DDrmjO5Lqxvs3HXTmtYu1R
GyH2DRY3ehqBh5/hqP5wfxi+TK12c6zIBGqcAAsUp6rw4PGVBdJp9EfAbtDE0Wv4Wj/jMgTy8q6a
m9vGC9O0Bak/1erTUyqPKwWfSiGP1ox6h2qaEpzNw8A/4yAXggQvSGKJufOvqowX6qPmyzc1mdvw
srG3a9+tct3HQPyplJerEiUYP5TMi3c52JKbVrjhYucpeHNGRwMqXUUlyNuFCc60vJQ02GxAe9vY
gDvSr6LEYNb0w7kpfq74TJZT2GygdxIWZ3jKO5d57hzYJFLljJroJV96se5NTcGhQRY1J7H86+8L
OIwNAAV495Y625mMs9Nt5GN4STBPsMcvBdruxDqvWhGzV9tQLny5Dp18uf/lePc45xTnA2o9yzJb
xDgrk/Xg5/Hami4yr5T2sDmum2FS1n91HyypuJBoWdxR82ltg087u20/7cDOujvvg8kKyUlSQyLD
xEWJs4JgzSBnQ+aS+QIGwt/ICqkpWBG/NUVMP6gGIurzseBATVKnYCtTjKwq2LcETVUaNHhfKnQy
Sy00OPmeuWvV3qcPl8XOp6q8zrTq1cyBrd2bH56/PB2f7p/7z5ssMnYGiRMy4TSjlsnsGI4Gx0w1
Dtxi4ElniXCulAnionLXZXwvP7ZK/a5vq1g8mIZKOAxzT6X7OY+B3LnkazrDcGKjBxtEWIJ+A1hZ
lhkEwqSJq6SSjPFfxOKpdlZNR81Coz7eHG7XEIHTXK3HP+6ePg9V2ginak0vafyASo5GR7BKXibM
8DDw6RCQoJM2eoblaVm9/YSD0R75uKVwa7TMNy1/Cssa9r5lG3t/kREeM77F0MT/N/2Tj2E0Iwxl
EsVzxhndkilQjkIW7A0cBRui/ksARcZrK04PDU7PI07ef/9pPSAxaictui6Jl1lACKCMYITMUEKV
tzb4t5ps+2m7TS3bDme2lhN9OKznUX4ZEBpnqaJ81il6LLGXDEVGLtak6BKC/3MKbo6zVzevF9yd
y73rePmmptE0CNeHi20PH/5WqsDYOzIZXNpiGK1McZPElgGVFuf+cOpRkIM0hwPmtIMtpV/Buitr
X+oYWBV1AZFDg/Ld2XiaMgW0kYVwJpKAzV3Mo9lOS1ce4pJ7YoTmYCOqFSbKarWKEkG3ZpwV3GyH
kX4Zfv7R5bNowhhqSW5NxhP8QApcV4uBeXCTYkJgFAemq7A+ID4Tua449PSoF3YCXK2YaBUC2j2W
t276xN3P4buIcnVs9sV5RO9GHAbhXPY0YKUCzmkk4OG5gM2DRKoy4JWIcHVFKD7lhRQjXq456Buv
Yd/369zU0B8xTrEEmeLMU2eC6mIoQT4BVqIJsJHhSHqhA0/Kv5iVWq65IqohyvYbgJMZcWgxaICH
oCmKNIs14DTRzjiMUQfwoWlO3HB9ZSjsMthQA2oIqNtaDbaX9CXI8r99fGnwCtMBjhh4kdogtp+J
sKMNyLoYpFfagO6J6u2csTMtF3oXPrZyasCharC9GUnXUv3u7x9ByWoMeHArStWc1domVEhEY2ls
cAFrfEOXlfHBU+bA//jrJlrChZrX7eg6/HKWnVjcdATd/l/nScSqyE2KAxRhO2aJQTcDsh5HfHba
a46w4Bkcqgu1sKsFK3IO28GE8KWYC+hAMdfqXpMoKUiUjggszBA4Mi9TCp5vDkxaI5l5s0H2LXoF
b9G7GSSHrlXYfXt6xhjF2Hs0gvy6AD8jAf2Ik1w67hiWGAndJZNdzCJIrs1bdB4tKXhhIPl0x4rH
hrV5QkhYNhLOZuD9A0pTOdX+lQ8FAJeCgcNElw3OgSq4nkSl0pWkJOoFcZUDXj3oko2wuKVmRrZe
mGqlUxZTi86yOEkRnAVfwUlQEpwECTYOMAHGAgaaLCLzvCrAXplXVN1SU29Fg3p7uzitX+/vQlXA
DrJMzyXsFv1QhjEi4QVmE0WH4yOwrMlQRw3ycOnYrlauCWtkW+2h35/KELAW//jbcG6v4hwTvqXw
NcCZdwzhgrAYwSlsCQebR/IyX9trvS64XC22JGTHGkgVOzC/N7FPZGfMOi2bioQ3SnNQsFzhDOKc
WGciJ2C7aBdkFNn4K/t1T+u/BGawzj3tBN2+X/zyJP6Gu+Hhlz+qKCCdh6kTJywNGDgR2Nifo8Su
Oexycdhjz9QGbWOz3P+Vdm29iQJR+J1fcV6a1GTXyMhFTfrAqjFU0W7FdndfCIXRJRUwgG367/fM
cHEwQLO786DA8M05c24wA5ypM9Mw9nIVZXw1Jxm6x2NcPUvX9JIdVVfQz7+xBctkFpnRXUZsYlJR
NSLjjbau6Z3v94jtShJ7MM0XNrdiP9iXD0625zBEBUyQ7ymenkLo+hRePgAdhyZwSmKWBRtvRTI3
OVCeHS/7HaRlxYT3N3PTV2cfJ84p8CeQ5/PKl1J2PPzN6AQG4sGUZk6aVcfrhD9rfvB/zeOO0CuU
AKfHvksKItpEb0jwsvx3NKUnC9g616J82SKHm+j4AWxmidXEe6iujhOw48w93g1luT+yIKFp4NMo
uxssbwc3PUjf2UdnvhOfMwfZOkdcsUjMLxBsPcybnvScBJn7cqTYACNeNYsDogW8Y2VGo7LNDhrl
IZEOa6KgArzf3eXJfLR3xgq3HucLc7MGqfi3fz7M22Fb8xevnW52axtuozj66sXukaYe9Xsg3V1K
SwNVbbkhGV4WvLFM8jY6KTPfhoJDqdGy2gFpuoCAP9bpKkQbXGFSnrYqh6aNGFlRKoyKGDb2ivB8
bhDNRR4PSYUZ5ZidWfDH10Ju4k3VaryJGLbaQiMhoT9DkGZFTk0M+RG6/ZnzeNUrBQetlkDnfgv3
pg0HFhWZ1SDWv6IlExGjtGFu8+SzTOvY67FWo1OW8hxAd3N9n31BAMg0ewNdMN2etOR5uMFgR2AT
eS16HYndt4zVajPtNABZVpizFlxdMIezm/hwarMfQZ06YmjI0nDa7gGIQlpJEVGdD3n4AlTrKaVg
Rvv4U5Pefl8FGc258jDYNZsAqWNsY7qExc54nLUKQdX6ciUDGTGZ671+EhxkvU9EzJPlcMkZdkdo
AOVinhpIz/SFzZ1ZXM1tdEYXOsoAJMeZGbbRzRuRKwwhHGNaxmLeDVLrcnOclblezmdo1u0KHfc1
q9phGHv+w+4W24hUsiaEY3Zrc7qZdXKnqjXbCXmUbw0CuV1r/WHFG8q6iGthbqotIBFD/i1U2xub
XzK6pdDXF4UVyHqB+QIhRqi0FhDyQMD9WlUrP+UY6Q9QSwMEFAACAAgA9ZAuSsV1pyjcQQAAvQ8B
ADoAHABjb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQuRGV2ZWxvcG1lbnQtMTY3NS1jcmFzaC1s
b2cudHh0VVQJAANu2XpYbtl6WHV4CwABBPUBAAAEFAAAAOxdW2/byJJ+Xv4KPiwGchLKfWGzSSGb
gURJiXd8g+XMzGIwIHhp2TyRSA1JOfZ52N++1U1dSEpyzCRYTDDyQ6SIZNVX1VVfV3VT4nWWhiLP
e3r9L0znXX+xmInubyL4JS7ki5smhUiK7lA8iFm6mMN7/Q9scfandu0X900R8Hf6azpbzkV++uvV
+ceL0emr05W0aebPxec0+3T6q8jyOE3y0/7p79fuRGQPMeA5fU7/4yI8Xb3PTy/88Gpy+kK42lkE
/8bTWGS9r7BWW4FtWmoh87XegX+7uGu+PtHcNBL67dNC1E/83bYMy9Q7l34RP4gTcFomXXjdGIGf
f/4Z3Pqn9jEXmX42bCpjCGva0C/E6W08b2ggCHMDYQObOuY9RnuUdhnGuoFshLSrib7PAPCgDod+
1zHqYty19A5m7zHB5ES7EYs0K3auwljrJ2nyNE+Xuf7xYwXjyEbYdQg2Bn1CDW4PqDFynIFBOEYc
A7whszRNk8j1/mf/k9AncRIKfZCmRQ/8CH96LsI0iXJNmzzlhZjrZzAOd1lcPElPFSIsFBSR+MFM
RJrmZn5+LyL99j4TfrRBgnR9GOcLvwjv9b+WYgme2o7y3I8To1AXaNroMRQLKbQ+ZKPfXW/QH3p9
1x1NJnpncvZ+Mnr/60nlfDnOm3H7ZXRz6Z1d/to/P4OLhsMbeZVf6OgR1f4oqki4BINqGt2rm+vJ
yLu8uj0b/4+m/Xqh34g7mR/6pfAzEEZRTzOMd7omr/C829Hvtztpt9KEUcBt+caofkCkj/+Qp9m/
/KlnxuNp9vlRn1z8l3v1298wY7U+nBSHvnLXZCFCyN4QYmKaZnP1YU9zb/qTD2eX7/Xb0eS2p5+C
2NAP78Xp431mwHkivkuMTOTpMgtF976YzzTt/SwN/Jl+m/ky+pbTKeRaJwO9WS708D5Lk3SW3oHe
2ToeT3oatk3T4qaJOIVMIZgR3R1fikK6ZWcQ/qMceD6dTu2pKaZRQPVb9xqCJklgHPnU4VMmEKEw
HJPJuf7BByX3MiWGV5ejui6TW4S10BXa04O68sLPiji5U0oTcZcWsfJjUyOn1ss1Cos5BzXCUMM4
F6KrTyE/MX+jiwz4FzU12uaL/cl4OKWH/QnjCMSKu3sVMWqZ+BtNo1MU4F3T7DcHNHL6raatNT5v
mkmZ+XLTIocEBxWpOAGCbShgGH2jglog7irgiH3r4ER+EFg7g4P3Dg5BNnfQtw7OSuNzg0OwyWz7
WwdnpWif7yhi2HqxAosHDrDE6FGya1zMnoDnCsUL7hg8l36KBWhJM/8OXuFjcGSDI0Cf6byYI6yA
sAjv03dQmVZO6TCVr+b4Xu+Fczpq1nQuzAL7sKlJMfK57yNLX53X61WmHFdOJB/SvOj1AG/zQOe3
23GvdyOm10X29uDl73766UR/rUNhtU9wN1wsetS2TjTcFjVFmB5G/T5Ll4teL4pzP8/TEFheDNNw
KWfV89SPRNbZXFr/XKElnOmdZRHPoPDqcYudaKQtPDui4ktO/d99H3ckANNq6Kft9EcY8jrSD9gI
mhvOUDqJc2CQ7nsMIJh7egX9IITAwQxZRC/P6/XgdQfEzmcKB9TvnfrHAMCGgpy184GwrJCEWx+M
ZRG31h2JAswbZ+m8bESUZmKD6sppKjoJM0G31VY3wv70Wd3ufTyLQHWpmbE9mk0KicHbajadiB/Q
DFn8six4JUFRZxcThhnqRLPbYmLccQ5gKjI/yWMZcLepm87ncQHcvsWlojC6BnJUmIgJoErOkVGB
TjSntX/CgyMTKv3QaT3Essr3Z/KAGiCK9zrDgdCAmqBdajpy5jiYmtM4iSXfy//DbNCJ0iX0eiox
bLKTGQqGaQMK3BJF5ItnCGLuPwXK1NF8UTwpFzikSYqYtNUZMeewTjWvr8y+gAntZtW1KO2M0QPG
U4mEtgwCEkX2wSBIYGpeqv/3p4XILv2H+E5R4nUK5Pi0Dc41whsBM3JeAIQkL356UxEMjdqkgMnn
1Rs9SNNZ5VB/Nks/b0XfpmfJgz+Lo48352qwKSMaUGELswQnUG9UBrWE6/qzWeCHn8AyeNeRMNSM
jPXOdJmoFQV/1oM6XcYya6mQyGq5qfBehJ+qnvyCF8v/9xWSVZwDD9fBQ7KbHPBZ7eYgggQkRmUO
qoy0O4shlFSNoKqqIbTXkSjVwrht8ZbItnibR3aHvVVc5AXUdp6HIfVXw/H2IY0j/YCD3pUFSmP0
uEPBO7zl6GGH2YdHT75pH/uNMG/MK1/tg9aptnIUI6jhKTmdY7stX1jiEF/M4PW3uLh/4cz6Zo8Y
ufZ2wJSX8gXhxN5nqNPSUByI8BlDO7uH6iOiEhjDBCdnaVk5wtxEULusZSH2/WrWyum/1L9S1lkf
lACgggMoQDF5BYNssjurS8uJAjMgEILbQeE2AxeqWDy7dnu9ez+JZuJC5DnIfbt6zSsgKx550zTh
jb4J6rplr06+YNC7jtIOFJXKHmVH8quvF62CB9zS+VA1TfItFFeEtHKXjaYm8K3CuhJ0I0IRP4js
wl9sqXZ1rDRKtvjlwjbYVTOzjCWY93dllUNKgPQIbTeiYejgenCttiAAXbTS0AKfzLqtEAXLIg7A
MlvB4qHtBFRvKNz12JYol0kMUeYtoPmugqpyaSSm/nJWeJGQK0G1097p71aZqnfmYp5mTz1iyXaD
sJa4A5mrB3FfJRtnKn3EquhjUl9tRv9v/8GfhFm8KLY8VSMoKqt3qCHV0sMyOU9TCKuFyOSK+G9p
9qnUYlWsMpkcDd5SSxQg8owWmWxljwSVyuoMd1yuZkh1telFKhmnyyQq1/F3loccc2pzgXXPc8c3
Hy/Pr66uvbOJ5/bPz88u33tXH2+92yuv702uPt64I+Rdj27GVzcX3vjjpXt7dnXpedJmrhGnndaI
T3FYai0tGKYTNcfmSBXclkZRW4kmnVYlwovqHLhGcUtRlqByPW8raLP/AUnnALYaNX04u4U5P0gf
DyzBhQiFDmU6yHGXmez4Rw9qTk4XZ8mF3LIEqZRplLaVyq2pvqKNS/FYipV9bCotNynRqNlWJIMG
1RvM0vDTRyigZxuxFzKjoDk6j/OiRC3rjnE8Az4HZRxrtJa9/cXiUPYqXZz4YTS1dG94PdkokbGE
LBgwq60oArls/HE5qW5aeUkT/Oo/+SdgMDBObub2YmUM8FW5sPmn9BwzNcpbQkCRjXYgZMtECrRs
GAq7nUDLp5at18TJxlQRJ4cQhISbxcHjIuxGT/BGf24V2OFWAHRr6h6c76XBv0JvXsriDtNM1E6U
Pw0CoUtJKyGmY2omfnY3f4e7bcxDpK8FwFzf2e5pSju783kPUygDTKLQAbLoALyq3wSjEMJRuU4v
fbVZzMY9tToNAnK1ve1Bo5GIWV1mXRQzmSBAKXKR/S91fiaKZabGAKlV4620RbkCXhNXlWZb1GHc
1tcnep//Kt+omcmmapW3lThOwefKzposurGYPLtsL326OmjM/QRmyewrHASzvP5J7b54f6V5zTFr
6XtGrRpPKITC32K6tz7fm99lXpw8pJ8UMWJr7ZqXC2RRGDUEbhzEyMZB9B8XEuY/zmL2j7PY6lXT
/HKiJr3b7f5cG1eY0ZQTYGmZRPmdV2T+Yp8XXiKIQouxFqRKvMa+1gvKMhtDZ1Op8DbTRXh/nSq6
J5g0tqteUjgyEe4WjphCEWrq37lyrO8jfbEKMBGJHODG2iiqfSpHbQu1C0THibaBGKTRkzITq22e
lpKgjd1I2sy1lq12Z1qGM8N6U9A2mPnXpC9GgM7LxfyzHxdeHt8l/mxf2IbPzyS2j00aoame+Ema
z4RQse8465wNX7/u4v01SU0KRw4iqNIbF/dxvpqQej0l2IPurtJfl/dBQSe7zFSovZ2lyZ0u/6m2
2OrYWzx7A5at/2bQXFdWojhrpMOX209rKkSgB3N/Bk1Ar/dByMWTPPQh/vatAchO4e3mbLlyGIcX
y0I8vvupivVrLJqtFwrkBqXnzaVUL/Bz0cMOb+4Jv8SwCOijYRi4Kix7ssnaRLVBYTc1UtzcBP6y
Ro4ZwluN/fwpCW+h+3hbA7FePmsge3XSOXknY0WGyYpPyr0wrnc2orr3PUxYc4/4JdBMFH0XaKOk
yJ6u0zgpOt8irtxhdRpbzi8xxAoiJfdVJZC8VXp5iyx9fHpbSb0liF2t74Peb0P85psc+ArCe7uY
49Dq4hQ/ac+kB+nd+X70jtH3pXe7Uat8vDnfruSVa//HmuXvVbPsu+2sfgddYPoWFCl/NIazU47n
ie6tbwmWH6j1TbXoAm6os1gTdlOT6dhEWNK7l5MynrwyxspFSYi8r6lsDiSR/f2SyPnONZIDSbTe
GtOBLdPZLE7ujnnzN8ubLwlk2HYw1pvr17zl/V/CsRmzKndibCJi9UWNXpzERezP4n+LallB5E0u
jXPB23IdjtGT1vOyhez1LsZOnbCZ9DDft29st1YVhNNS1edientYG2tMsc53Y4fW8+IzUyz+vuyA
0T9uBQRjyYgyHvrLIpXfVgm/cv2D0SiwwBELWd7de+GD7Ci/0gu+vEti4wX51RZvJY1bvEGQLwh6
7BNeGlnaBhNtFJcboEU8F9FvILu8TVq1Y9CNVe7mk1uv5WWQ69clpHx7Q3TbntH06TrZr/3sk9wm
SotebwHvN7CgAH46my9mKh/LFlXeYiKvmYTpQkTn/jyI/Lfy/hkdyuPtXTY7p5Q1dfMU+d02dS/M
U+LP49CVnam8uaXSDhMLErWzhVhumSOzbTMZRk4YcUvd61Mq35g5kN1iTw6s2j97q46eA5R3nc3b
Foihg6wBvu/ZX9GIkkDgqNYerUl3/f7tvnRZ3Ra5BS6yrT3S0M1SQ6/3nx6qdvKq3fGLNPsegt+t
2yjZdUIcZFJw56Tcb7flneN18eUdzIi2b4u/Ydbi/1+z1j+iMcTkSOFHCj9S+JHCjxT+o1I4PVL4
kcKPFH6k8COF/6gUbh4p/EjhRwo/UviRwn9UCmdHCj9S+JHCjxR+pPAflcKtI4UfKfxI4UcKP1L4
j0rh/EjhRwo/UviRwo8U/qNSuH2k8COFHyn8SOFHCv9RKdypfd3MHU9klBTdRRY/+IX4itvkES+/
aTwTYYXBW33pg5nMV99IKcFclD/FoQictL83/uCw0O83LOZ3/v4S0sPVo0Q+A2/Jp7Wsnimiqx8i
1DuWaQRxcdLTdD3zH3s7T/ZAMHBZcOhAeOhAVD2AMcdRaCIklUTxgUvyzQFpGzNN7keB0r7YPWCr
K/Yc4FKJntl7lMiEz5waLsvnVqS0Y7QPsDyAq6KCiDtITKm0BJMDlmBaVxJALSFsecA8pITtXgHR
AEfiRfXI5mfd9Ww6a2jHiCD521nZHlhUekU7Xz38w73+WD6fxdZGWZZm6pkvqye2bK40tVv5LbXL
5TxYP1gIm5qmDeLEz570s7n6gURt/XSWx82DWXRDr3+IYXCe/wGjjnrYkKFvnjakv7X79nDMCTNc
s48NOnaY0R8PXcNEpjOGz2zXQu/+fk92qVse7XNHJN3xevvbgpP7eL7K8A4Cy80+M0cj2zFs2+4b
1OFjwzZt0xg4w4HNzSHrO+4By3ck1vE49i6eADvT6b6fWtwzJsSl2BwSali0PzYoJbYxIGxkDAb2
GLh22B8Qq+2YlMeqOEPiix2coenQ6TTYxXku7vzwaR9a5BBKXI4M7NrUoGRoG7bTt4wBo5y5Yy6f
NHAYbSn3OczlGTXkHLEd5JGJrIaHG7XGHuwugrrG4cwgNgXso6Fp9AlChumaaMT64xFBe2OgLnk/
+vo5VfyRT3YjRIjA3I2QQ8CdPraxZUHIDs2hQa0RgTAeOAYd9KnbtyzLGfMDTj+MeHWwAhVboUOb
UOHDkO/lmluRFzfLJBFZ9yz5F9QTIhos5a+i6h3clUKwzDtGsT0mrmH1TQJ5hxGknGsbI4w4JSNC
h3x0OF62KuoauoF6afLJ8xdVLeUE7bAqfMjZdMr115DjK+9IWZPlQj7brMYm1mg8otQ0hmhkGtTk
lgHM2jdGbDh0bcYIR4N9Vj0juIrO95m/g84PWCjRVX+N52J4cXs+yNLk32KYyR97la43SReqZXB/
1+wSSfq2Q/nI6hs2HiCDIu4YzmDIDUxGkAJj1+kP+gC2fIba6XkcZDAVnY4ewbOrWNlRc8D/uydq
JXoZQFYggkoibD4UU98Eq+TP5ekd6Ae6pAQNTqVj13BdBKyIXdfou65pcNa3EXNHJsJDAL3MM+nU
U3l1RZdtUpM2dcGHFmt4cHLvZ/LJMh1Teo12Lbhi/RZQDIdDYmMM0TtyB8B2Y0i80QgbljMYO9CG
DGDK3HXddVmdj9dZl5+u1OxPxNXBGnwTkV348NeAfyEKqDw6zFLA5QuAlk/3sTnGwBZAbkDLjtHv
Y5j5EBpS17ZHlkN3QVfQKqn7sapDdaQW2kXK5PzHVdH9cBHn658tAqC0ywDiYGxhMuZDY9ynA1mH
ALUNRhwQ44E7IHjkuuxZiP0whBYGOuAD5FY59UGEIGD/aXV8Wt0Ef59dqs5QzcQiTqLlfLE2DTu8
i9UEyTnj9thAY1VimVBjYGsE4zAcD4nLiOvalcDdkVQDwYm1C4JDFKyc+5jPis0vOnWw2TUBASfu
ELt908DjgZwtODH6Q3cEDAWZzk1oiJx+HUFVTE2/Tdiufsf8P+KubTeS48i+8yv2cQAj6bxfHvMq
z3q0GmlsYd+M7mb1iBCHnCU5Xstf7xPV7Oq6sUmsCS0gkFRXTWZEZkbEORFRXbtZPPiw+Xa7++WI
Av/jnZMeFoR/dviDDKkBJISsGLcRMnELmTSPzPBahMyIbzme3XDymccJXtzyqTzrt0/vuZgqeLXU
ereZI+4RTX5nLwN5XGkCbYCIoajIGU8CvqsquF7bFBMa1NKaiOAhzyp7GnlN9jy6fjEVccVp7NVu
BjQeut23/iWZ71wfpo1Tyl2S44XsVVZjFExRenhbJQOgnUr4kUQC1nAq6PPO49PT6M/4uqerY7lx
xJZyG270bL3pe2W7n+MwF9zJJb9UklTo/yDHIpwTCug5CwS8XvwQcmC5RF59lRHB+TUO+2mudSWe
Lk50ENwvdRB8c7TU//m2ud/QCz66o7V6AhK8wR5Dw1HJICMqgpolFSur2iVlvC2Bj73FIYPxx5Xx
ZsJs14TZH31X/87LoxyOHHIw2sdYA5NwEUwZyBEq+QwZXdYW0Vi7VTlGQ01FCGpFhDD3HO9/6D35
931mj17VOcaOJiiP85ZZjQ2L47JjUSnDrCwhmlKzCPY1m7mYZH1bF7fNFLpaU6ibGddXhPIRKbv8
SP8PpXivlbR9gK7eNMczK64QegSgSMRKs2iGIxgGnNbzznBzv133DRM3+HEqy/iu/tJMv/2Kfht5
PMB9YvBTHp8cIUIfzaXyAapEaFHJ3yXwqggu21ItlYuMnTqvzw9fu9vvPjzjp/vbr4Gi14SYqrCx
Kyrs7Rzz/fZlezd84TUBZvIgnmsKntiX1Jw1JDwIVhOVeZOhWpLNV3hGn+WrEN94kmd84fiWiSJS
rewFPjza7xdCYX+j+tbD4+YEQaA9/KA+oP5SaxRCOuZgKtiURhE34UdFlMoJH6ZXecLvPv413335
eg20NVLjOSGmami+oobmxyN104fgwQ9Zc2n4pSfwD5solhtmhICBWC1woMB8a25KJHpxtOGr3mg8
4kQUa3dLUazbzNzRHQ7iZwBqAQZwcEP9HxDJyhBcApROuYDHRgebLcKyUh1WMja4Sfl/PuOHaxOB
3Zo5uu32uHbdkZ4Ny0cL10owslA6JtXMVEbgDv2btUURoDEmG12n0G82zkSGEFbCyHZjj8ew3T3c
/O3qULUbfIK9lGRHplFiTQLhFw2ED7FgR0qwXBHsW6DkS5hKshztYjqvWwqzu5pnUQ7c+h9wuQhi
/RYCzl0KsohYUvXKGAbSa5hS2L1oAXIKzlexAqQy6xcxKI29vonHqxdTAZcA2nSdPC7h9e7bjjI0
cWBIRlziP1pCeNWQhLZMeQ0eVzRgZMaPVlUQxRSYsZsu4Wy0sSSWuyWfsUdMcFq/69tfT+r1cYuA
rRQkkIBjhAVCoObgG23ysAblGE4Vj03ppJR/i7j1fizDJELf/jrRSQi+opPwfU7zVPC5un14uBqc
pDSEdUkfOBIscfDAiZQYETazBBNhRsHUgNWBJMuqm1mOOxMrrIil587mO3pXvD7ggt7HJB24UmAL
KqlKOeoI4uaAdwC/bA0xCM3Pri9GXF84XJhKuF2TcO+O3uW7D30lYjBq2VNbcIAGaqPgljmobeAw
IABusHavGmg7h2G/TZyfzD+RXKsVybUx87XtbrvD9/Zubj49vS743cEfSBV6bXz2ONbaMy0DoUuc
65CBX7R1OSiHqJ/CqwLkcqpnNmF541Q1s4Qv1pgBgbW728ePm/sHBOLjvhjfZ3ykdTHEqpkWCqcZ
YR974hQiVCs5WGN9a+fTKadXdryaZMe/PHPYji+fe/jjitATjYPXS42D3w085e7rb3sgj9M5dOTH
iUa7lFlTADVK40dKFvuYrWmF01e0yXWuMhluJskS3dutmUPH/lS+/2HsIdWlOiAFbXkvnLLFUIpQ
V4UgEwULmitWsgWr9jxIfz6ztZhi4gAPFyeib7sVJ7jj5nhsPt5+PiWIehklPInThTOtDZxNLIF5
AYwFyCXhZgSOzr8h42T7h8nHIjtxtTRiJ7k6irz7wx822+uj1Iq7HtEGKWtLMFNeA9yjMIl56Tir
XsSslXYy82k8HI8zEUDa5cFzHRUR116ic8zuaK4vNZ1AxDohmq2sFA+2TEvpM05gtiFJyU3VfXL6
rL09U7vLT9cuppJ1K+IGfrST/PP3nz7efPt8fTurVTw5bsBlFWWIrFBuQQVwaF95YTZk4+AddLL8
jQjauiRTbYJY02bTI7lTdL29e7ze/3ZydYjZvNemaJ9KVZrx5qCNBjuLvDXAEOcBjYJ3OZ8L2+OB
J4LtxXKZvV5UXb7vrq43x/dSHdMVTolLYS4lp/NhYVOqJccSfjPFAd98DLAyrRDgm9S52Rcy8Kcp
nkvEn+64mMp7taKE386UGOdT398+dvf0xoF3UvtLyqf1v0mRCtrQOA6Oa4JipAciqUB8LXiViq7Z
p9fEyLXZnkfR8zun+vklkwNV6fbdwRb+Xj59nJcbjOPSGg57bRzxsRhPOfnGQoVu0uNqUr9XuWEQ
72KqwH5Fq828XPXwtevAb++73d3n2+tpaoHSoTiDfTZU9IYSqonBY/caABLV6g3xQphMgqcXPmdt
6lvg9U+9VD+tCTXJd8xvm67AbumSwVrC0SsQkPip+3z98Hg/cgqmP6bR8QI+SYnLpsgfR0A5EaB3
ClTzr8GK/0f8MxV7orVVdkVrNRR4VlvW3gHlXYoDh1GliNp0ZmD44NkxNYSi3CftRa61BmPCOWc4
GXki2t4tqavfb/azI1m67bfPh1TWA0lG7kP0uXipopbZAIYGgAuFsA+DqxI4zbtIZUPzugzUeIb1
FR/fMdVhy1d02IkBYH75OuSfCEinqFOTWD7XNOxEgeGGUhyzIuRQk1c1txnEGEYYTxz4bhnjghBz
tn3QPd/d7q8/P71nhCKK0H35vifdHuehco1VtEAYWFJKQUXDmg8t8ZqTrfl8QWY5x3P5yMWNE52k
WmZggrR2xraHtislODlf7qvoM4+WyJYqrbJofF/Od0qZVF3V507ol5Xl1XoZqcEb9EqQe7ZKZ2Ax
AHKIAo1yZZQg9cpLJgtovzMNkfTlkuT5Sl2c3XMxFXdpXyHYOZOlijv+9abPxRwKdsHJS3VIsmnu
MuUupKbqkTBU5AfYkKUkriXHx29XVT1K8nxnAF29mKpj13QMs336pbv5SuceXIoSdn2NxJSogfQY
Txkkz0RqZ3DUqRi4yaXpZvVbxK4/Yer1m+jKVBm/pszGz0tau1MQwZHzfUimXwTES60lVcuaob6H
RFrJoplUsGm4cpzsV+UcxnM8wxRHd4y12HCzLFRuuO2OEefD9W23uY83nztMfqr0WNlH2taq0bU0
1jjwk8qcSts6wqdHlxLlemX5nZDUiqBTRVcAxUYYcQSKs1dqwby8pMwg7RMwoVJFSka1cMqjZ5w+
mVktuSZtq7axnfNZKwlsTC3X5FHHWFSuN59v7x7obVRPL0rPN9fUCTvI13eeSa2STTgygupTBiQY
JA54x0SJTULI6muiowh1ftyJiFIueflGKj/rEf2wuf0cgct/e7imkP/klfrflCXGSgkhFYvURqC8
Qdh3OCKIA6ZoAxLtzJuDsbFIz/V7nO6YKq1Wld4dw9qn3X3X3f7U0atgjnuhpb3UZA9gEdmFIpg2
jlpKA2dBG3DRFCXwtvCmlel2LIebSXO1Is1WPNPDsZ9Et76bwwjZt67FqFspHFCGOgt4jAyOB9HO
phQawFjj7lWNHC+FuOV9U4WulkhoY6w71TJ3m5GnscH2lK02mzkYJjOtekryJVBo+B0bolG55uDi
rH40GehiOptfE2HuuMfBcK2HqRJ2oepfzZV6S7TEwZYFpgeb0zYZl/y/GW3Hd8xUWDmkZtvNW2Qq
BOcUcPCzL3npIB0EbZ4OgbeJRW04azFLL3AOWnxDgBDrM/0ydarLdsl1N9aqmS7p5lv3eHf3+AsV
SfShM5N+7/u2Yu5khYNhDVAHe5HhZBIYX1AqZMdB6c15xvf+h2H857pBhhsm0tvdsrFl44Qd5S5H
HXnyEE98ywqwknowiYnrAF4RswEktsBvIBtF6EXqcq0jb+O0WZk+8BXk26eI3v9AJ+KQotYu9G01
rgSZAcOrE+SgCZBXGBkH4AoOBuhCe/FQPA3+/DF+umEq/Ermb+O2C0P85dtt/6TnYWoqKjsKMLbP
/hfXpDeZgT9WKkIiAPqomPHSaqEMImB9VUpqOskzikxvmiqzUkPDh3OT/EvO456mZmoFRlLwGrT4
9DRCcKkyKXMCURIJurxGfAy7LjIuzMRcsTZ3ZWcZhs3DzcDbpKJGjN7MRCOhGhMJkUQ1UViKKlI/
sXGuFqz82ezCMOpUpCu3ItJeHFM9N//8srk0J9xDwDlzZYJI8FwGy0YEOGYvGC/OcqVi5nnW2DAe
ZDK7367gwrAZig//+HIDrHucXYZL0SedUyw228JKM8S3KmfRSgEgb2xpRcjoxKypdjTOxXSulR0J
+zl5pUr+w9H1Uo94d9Wub7oP1w+PlKjtu5bwi4KlKBJm4RJz1HispAH4kgGOpvCoZPRCivx2bn4q
y/M97ad7purvN2vqb4fG6sPR2dJj4A8DLOjVBJ0toRjWLNCMMjD9pLgDAwHIzFLDgMy50zgecibS
Mqe82Qg1sxHakcebQSavqCJBguXAS6zKg516kFUvMouAfkxGG32yzlnpz9KF8cATyboVzokPuzPQ
5bIdXr1M0FzClAXvGejwNzUoN5NcBERPGRatWgwshuRZMQBaoorgwht2Yx/leebGp6sTtfdumbej
D48b8mv325fPAxqXh54xJzLIKQAjIYIMdpQA2FgNPjsrkm11vWdsPNZMCLcmxO7opr7d/u/17ZCT
VeaSQGKzIIg4hwwhnfIWAc4yQSpqKWgpgSD0/dNLMcajTcUIK7xxDycy5bFfbzaP+7v7IfvmNJ3O
Pg8bYkCsBHZ2jnynUsxTw4vNKnqfdYIzP5sinow8k227IttmsOXtw5dLPqxQ/3BCFUAwGgbiKW9l
nGYJS8ZMMS2m7GSQM/46GmM692bFaPednZnGj4Vq9ILS0orLvuW60jNpnEnfu0ihYaxgqs3LQn1y
3Na3Lxb8WNZv+bGMddoCtS502vIw9OVsvj3eDXHRE80LIVQreGMI1RmuH0golhyZqZnrkKwpLU3X
8zTGdOqwJElb4YcG9v/8KGdtBK4VKxVici30LKKjR2pd4/hfkW0t2TYp3qiNYJh8IrJc6bPaSjUn
En/u7rfd/d0DnYMjDBNJO60T3IOhirivEpjGWFbB2pV0vMl6nssdB10X/nh1Iq5aqeJvFbV0qhdq
Apc1fvRciv/un/HhT/0mfbaliKoqBySR2ROzEDDu6uHKo4YtlaBby6/Bk8cZ1vU5Xp3oY1a6lLd2
ezVb/r++H6fgD0hYK9sHohhTMtI6UBF67ICa3RJsgFVrTSrRl9r0a6Qfz7GuwfiOi6nA3ZoW+2P6
5777cvf3btyFpHsSZWRtKlQmdIHkFlQUTjYwbawBuW4+TDptT051Pt5UmN3Sn24RvRbh/ubu/tNv
tzuixuGwovT7iWm6KuHdDfVo5iRZKH3NSAVc8qV59+bebZDnOTr4dHmi6/5q6b938mqu65/eD60W
8qm+7Z8agqgxXGWNY2/pyXmNEBcyr6wJnxQ8ecVevEmN4P3ZVozh8sVUE7mmnluUd0CTKSn+8HC9
vb7pH8s62IgLfecOvHuCigK0HHpy6uL3cPRAaUqmEHySL3eSTMY/008yuW+mjV/TZs7cT9n9voxJ
/2D0EX1CpuMVPaVFz7tkBZ3oWaNGjx7lnGyS1dWXAvALNYTT9YkO2+0SS++u/LyD/Mdvm/vHfx4e
xYfEdOA04ea+2p5rhDla+q4GevzewrAA8Zl2NjVbVDNr/TBjHDAM/gweGK5PRO/kkjNdSTk0Sn6I
H2P+86Jao4H5PX3NgQXcZyqAw6dGPZNcR56ld1L8Xn0vYwkvJlqoZT7tSl3N2ww2fx+nug+dvIJr
C7fXN/drkUrhqjF6FTB2hp4opsq9A57T3qRYX9iZ+PNLIWR8x1iFzqxUEPDhUEGgh9MHEHx8wL0J
rpJsiRVFX6Thc2IhyMiqsKnkxHnk60ThNNpMiKsVIcx2xmEn3xH1TlGjF9W8cND7EyMyYkSDVDW5
BJfKC4tZSSad8Rw8IWYez3GF8fAT8axckqnOPnVcjnrzusf+sbljA5cfUlGJHmxJTrEgC/xfiY5h
k8EefAjFWq1NFme7/sYjT0W70iuidXMckxt1QZbr+273eNdnJfnBO4jQPxwhWjD0rLUxlVJlobAg
nAAQ99nYWGvQ/sUey2H0l0Nue8X9s5umWndL3NM5IU94v343A/xexuYsjCqpauFOYmRBu8qy0lF6
3oD725sB/uPsF1P51JrQQzHp6+bLKHXXJw5bLiKkAmqScGyaTPQoc2Y6S1XB000Ts4fhR2PM5vZr
c4ehTtirfZlOuX9pjwkXLqRB2C7MCvoClwiWRA1aYOS2aemKzGXGeqejTQQJmxVBtnZ46iV9iJ8W
oSBBYeGlxXlMcDeUyUzOFJYBJ7ytEmHM/k6h4CTfRK2tX9nbrTezvOAkLTp898LBeSUE4AgaDM5D
jzzCpfoUIhXxvbK2JcnLS2m46dBjAfd6s/Swe6f0wk/818HV0CON/NL2PS1Pf/WPnaQAVF5Z4XCz
gKmUfgAHldG0yqWPxZ4PVMP4/+LtWpoct5H0vX7FHvfCXrwfRzyIdkfYOw6Xu2duGxLFcmvdXdVb
D4/tX7+ZIEURJKjS7lT4YpdFGsiUgHznl1t3fnw8o92SPVn5avAhnQIL23K3TW20GuiVElNXJJAG
vmJQrNqCl0y8sGKR4d6StJZ06x5q+PCwrHL9CVyk5/7Tsf/nOR170vhZFTBjqACnxmAWi4PYaTz6
8lRKJQi3TPKrcijrfbYk0/K9kqtDv+bqQKYg2OH49G33fG50lYTmUnY8skELsOElVhg6DEZp0Ley
deC9xRBM4DHZei9LuehNuXVXoYfJSq/rU0asygA4WL6RtZka2qO4asGkBS3LQbrDObUay+NSA+pM
e6bhhnn/Fs4VaqjbExnb7bHTK3NWqexXqhs+vFtmQy8qbk6d0i7KRoZcaUZAq6GSM4zGJHwQVZSB
/5vi3lLDlirK1hwoNdlFP39IaaGGuQaH3kYHnqADNQznpDFJkSZxLRLYkAHM+zdSw+fdS6LV+sRT
EHEnoo/dw/1vZ0U8NNYT6YjDSiWGrhMWsxqQH01iOvjomPKtXXazzla5Kbeilf3N8mc/ozBkxA6M
YFFUiYMooYy+40OvvCVC6wRC2BsusT+GNgalc4opEebhINh4NWpI3uYCcEh+XrKzX4tFuufLwOCn
46F/uNx3EnRgimL5kZJoZlD4tlvdUOWCi1zTajhtxsB8izoL8zduSnq7GhPd6Uy83HfnnGqG1vIU
bGLdBK3lUGrthQKTiLdgoihrEmk3EiVd5Ujsee07VGphPRwR/eN0LLVGJZcPp3MWzDWwz0REqCbw
652KplHBYUm4TklctBzOy5ZEKb0m6s4uJfFvx9yAn3ZdP4QdsKcQBVT+N+pgKcAyALUgGBYNEG0a
x8B8DJK18JGI0l5V83DaYUMoj09vSmpXQRO4Hnddpe3+/ePu2+djl0sCMxQFliqD3ZNPJjUgWMHR
JdwZ+LVj7ogC+ycGCfa7jumVDpz5BttFJ6c35ixwpu2aBWamJoD36R9DunrRNQduMPcezgPB1lou
NRk8TuoDsTwZrfUbwZosKCipN7s19ZLuljbT7p8BtnncjdB8WA5IsdrdDNKXgspg4AaBJDOIINnC
94+VmcY6xkhLjagouXma9z+WOyzB/6bnBfmyX99Lvtvt4QQVVyDrpH/7d5NPjRlC2TJ5QcHyBI8F
PGrBeeO0xZy/1SQFENWGvJnLMvSbV18bnhVcHcTa7uAHOcE6/L57PBeBjWlHDjI6KdUwxHDgEV3S
aGgDrIhgpCU8LErAZouUm0te23y/kCrgBqTbU1XokCwyArwMLoAGgZHXxBiiPGESzChHSevoK8Bk
ec36t5QfFXT2d2srQRB6LvT4ny/H555PWoGqLIsjWL0gz3RjqQMiNXZoSB0apSz4ITZEwxYZzWKh
m2I3ziokiMm6Cj+l2xf4f4sUNYhX8JZR+juMtBOlG8+8a0hgjnjnjQu8JKBcpqRg3dRvBbvrKvV6
cejyYPi2EjR7i9i1K4UFtQh2OXwZDHueDWIXty0JWG9/BWZJ3GzaOD29KalbX1nByToJ9fXrw/2P
u/s+N36BoaaywM9gy63OiVUpMdgAphUijoJ5xTgVYGs71tq38B3mJGwxeH7jpuSncjK4WBbWVOG8
xtwAza2yQg8BFmDXOKc8ItxYLOyLjScRm5RtCD7RBEruzRNvEzkXUL6WKl1wWWP93IjwZXf/y3Gm
DLOFHIJIJFJwkkBrDImPgN5gy0GNpEgMY4v6u9kq5fadrWzfT83sX0EtPk314HghW7gA1iOIAgby
wKxFU5GrBlwzGaxpeSKLGN58jXLzXtU2VxWowcVvAaQY/LlNrkGNUkfuGioYAp4l2fgEAqN1KJ2o
EsaIt/mtKy8u+FlbmELcyYV5duiffn1++PY08YKpuByYGv5Ar9IpSxQc2EDAFOf4W3tpbEOEUmCR
Cwa/+XXdmnmrE7X4wlbT5urFm5ILVWOtX1j0Y7RphYfFjcQoC0d5pBSxMgbdKMktVjyD3pNgAgmJ
EOtJRULFFbmDbawsCyvt19TKO7Y4WGdJgtfy78d0nDmkBCQKyTU9XFoGzpvn2HWfXI5eRzhehgeu
wP6sxdnrXfe4xbbsx6cFG3rdt4ofihVs4+3L4x34C7ltCkR/PkrDXygLWYvdlQr8FWxSAlevcYiu
JEBKyDYxxV7RWtP6W7X54+OCdrDo17QbLk71euF9BhTA/+/p3KOq36E3KjTYlwjEKBnqWaJ14wg4
p5HIljDQZ4rTv8LWLME0VgSX/IqKfbXfIy515vdh/9/dGVhMZbzRKGUEs1kjNnCL5WISzCwiGyGi
dqlVJrAFpth8lZtyp7VjIjomN4Mw+cB97/6zcuK554hNxxudAvZdc7BwSKCN4Cw5QWMMsX3VzMG1
Lxx1eHpTkqpq9Jsl5MLY3vQZbqodO6wIQalCW+1bCRaZ1dgPhBUNrg2gFNqWuciEiuZNYDxPDVbf
fbjcgPXdh5I/W7kOXd8v+MMwcIfQH2MbHxvb+MBZ8QbB3hwhYAWDfsMaIgMOg2gDnD1LdPuq9xsu
AB6G70ty1zXY+cOTuC+CwB+fj1/OiINDwNpFEl0wYGoCccMVttaC8wA/iqIUnF+38Bs2llyQVTGG
D2Jql+1evj3NIp18AKSwVBrhBGlYzvfx1jROUQ62IWPMgK+nlyDg83UKAg7GVAg4Y//8kLMAk7OZ
EbKwH8LDz9foFqVZhKvuqJZwu7gVKgUh5cLXLFaZ7y9FRSPAh1NcL3w+3vdP/c8Pv/b3xz9n2GR4
RcBdN0Fh7QlRoMmChvPDQmyEkkRTC/ImLgipL1dQJCshcwke7OJgf9cfvx4Q1GYOsScjBxsA3G7j
sXuISRwIAw4eDr8Bi46Amr0qkjYuvtU5nh+WRBtdI9ouASH6DscG/f0R/hOnOYy0K3oq5qbJINWg
qCwG0sBCaMAKTE0EacO0UFyb6/Bpi402BcvsnYIdtYZKstLeqVyUXrq17mNA5/5Utzr+hTEpFPEW
BKYK2FxEJFhlgbGGMGMcA5d/QMq/ysyBTbZFPzwsiN9VNJfMRet69EC6z1OU2Gg55MMwey7Ak0Wb
EWupDHriEhSpYjhaSNCNePVstZKKjlSo6KYYUnj/D5yCeNbgp1hqkix4bIPxXClwhyxvPG0VjveQ
histPbX/Yiy1SAItCCmY2Ku1kpH7Q7861rvH7nPGUsOpJGScTpJPAcWTbMwA5MUVfLkgxTHoRz03
wV4VGb6+d+lEyNaJHx8XTHZ8He2THRyYfj/CFD723eMf3861+ZzLc91SIDJFsCclorgi4h4Y82Df
wIkxwjge6Aay+mLVgqTDulPfyr5bVc29HI4P757HhI7D/5olkOjoAGb3T5PWSh/AMQJDnVvFGqNC
aIijiFbmCDeXD9V88Q1fdvbGnBlQzmvZqChb+k4BZ+791COqXP84wsudk7maomdOQKQyL0Ggo5rh
IU/4gn8QQXVScGFovA6wrLLXhoCpvFlyJ3YV7sSyvOyH3f0vjw+/FcOTWDRAs8O0FMZrvQduAtx5
GlIkwZLWiKvK409rb5T+jk8XVPcVqu+WF3u/6359+VYgBoP9KEY4iJx54ES0iJBgLUUr2bYNeCi2
8cnIwKUXhlwl5f1ipzkHw7OCfsbWZgt+uDxT2QRHJLFMs9S5hF4h+jgDFSsQ04FZzDtgsxzntGWB
Gh7/33b98GxBKquQyidFcPsN8VOrVV0qgSngCHpLqEINGJsGvu/GE/CnRBup938VHMuSypLFddd6
/nAVUu4edjlzhTd6mAMFdrzRzjeRcYyFSFAP1nr4B6cCviVMH76iHmDNLdsAHhV0morPpMze3PWj
tf/w9dsjlsif40y5+RCMsiQYjQ2lCLYvQAA5LI+kvvVg6RLHycL3WK1U0rHf1+g4rBpS501C01wR
lsuLslSPrdcx2Qa8f8Q4xkkTOLePUKWMYSmRdBnHZr1BQee+XzsnqtN0oYZ+7B+xgXB33/Vz3JiT
mCM6BhM5XLjcx4GYmXDFEHotCMq9M4FdFe+qbLMRF1+/eFNywGpsLbsdzpMvp/o0dDFaBrorqiYl
h/VEYNb6RFVjU+TgT3tBrlNB59Vfm7u5oL2r0G7NKQoGh+7hy2/v7HloBPrO4I+BoWIaarG7HdQ9
aH+Q2cQzcNXA9PVpEWEvlykp2JEKBbv9OsZ+u7s/ZFtk5eZIppViOCwQm0M51n07MAgxoEjgZkXW
tubKipxxk834+vi8YKHv1l6/ypOUChYQ7+zQP+eyrqcuZ4WGIMpQqNUaRVUioPqIC4i+goa6CcCE
alWM1IXrnE3M0MXTNtvZntVrNyX1NZZWneSDxZi9JvwLf5oRPAT/jUyBnywS9w1RzKOFhQIZmAqI
BSgiIVG8joKT177gsOHjknpTEcx3+2UwKx6HaeSPf9zOUh0Z0VaOaQ7CcLQUQ4QmbIlB4BiK2EgS
56S0VIPSfzt3Y03Pxk+3eq/kfl/j/lAZkIU1GbvjfTV0kLDQQ4NdQwPOBfQR/G20cIJuNZhiXoBD
cuWdmrbZvFXTG3NGYPO1voAPl9gPT+OVPUXVsHh67GV3ynj41RqvDfq+RII35VBztHlKgk3+ItJC
sfKCtL5CGk6I2ZftiMXJYkM8GE0xr0G2U7gICUHVRRCNwWqhFnw/xPajwb59/vdMzVZrYu08aVI5
T5r0UwfBTx9+XIcdVLCtCjjJlSWEXGpV41pv4KsXjktKPNXuLcMOMyIK4vkaABo+tPRkG30eom/N
7ul+iooKmbE6cvuhNTS2giCUDGhlrpJufGvB3Q3GofmmQlwUoq5XLAiqTIrED5clHr9/696NvwZ4
XLtf+q95SPfZDIpYduxUbNqIOg8TlF5G27ScO+5Bj1AvX0FsW6y+FeRYvLbg5lDhhk19ZPs/80ik
c5o1wyW2IFKlaQLBgnyDPQ1wHRqqMagTgudiEeYtVin2V5VEqlZ2ijf/eY51K8weDUEW3oJzzFIj
DE5dYEaDuUVw0KRpiYiCaBdKAv6sBbu1qpguGqynCRvoW1cZVyVFpLBn24BiwX4EUCfGtgxHr2rG
Eji/pm5lT8uVRHSV86RXqeSxzWOa0zs/SiFFa4wSmHvFgmYKR4lgkgqMfiscinv6WqFXsfhmzVfx
VsHGruLD6F1HFmzE49Ov7nF/fH6cejv1kIbKoU5pCYPvU+K0Js6kBFccDKoU2yi9lJy80uG9WH1L
+xYvFVzsaxprPYkZZVsujcZfweTegqGAC2wLJhxYrsEjAl9SHkza2IKjKKyAS6OEfR2aKa+8bS7l
xyXVsnKJO64qsEG58bteTq5JcFFgC0gyHquiwasVjOBIsZaC+RcYJ9cBxb0CE1fQ3nU12leN83D2
3AuCAw4FjmpAw1CWedqmBoGM4LSjWG9BLDDvnQb5Drr4qoDZuPjmqceHBdH9ur0VP5wMm/cfll0c
sU2GBsRskQmtMZBbNkreJKas13Dm1StR/Ou7OKbNFyR3NZK7qkPwcn98fhoCyB/vhzB+GT02XjL4
thPL99ThKWcGdCroLs2iJpK9Hj3GlS+EjvHxgoPKSen5eSwK3o0fFii648xKqQhQlXyjiYWTQjgc
a7BwgAFhU/A6giJ+u5mVJRVzJgzfraW9EZzVEL7KwZVDjwAOrhzApalTPlGBVZc4BYHBX2DqYL8r
Y94GzKq1Vw/reH185eq1m5IDXmNrBYC/nAkx1FYicN6gBQY9oLwDeWNJA+IIWJNgZhudEHwBLrui
KZHrxvpWt7tyWsXSozZC7CssrvQ0Ag+/wFX94eHQfxlb7aZYkQnUOAEWKE5V4cHjTxZIo9EfAbtB
E0ev4Wu5xzYE8vytkpu7yg+maQ1Sf6zVp6dUHlcK/sqFPFoz6h2qaUpwNg8D/4yDXAgSvCCJJebO
v6oyLtRHTY9vSjLX4WVj75a+W+G6D4H4UykvVzlKMPyRMy/epWBzblrhgYuNp+DNGR0NqHQVlSBv
FyY403IpabA6gPaucgB3pFtEicGs6fpzU/xU8dlaTuGwgd5psTjDU964xFPjwCaRKiXURJd86dm6
NyUFhwpZ1JzE8q+/z+AwVgAU4N1b6mxjEs5Ot5EP4SXBPMEevzbQeifWedWCmL1ah3Lhw2Xo5MvD
L8f7pymnOF1Q61mSySLGWZ6sB1+P19Y0kXmltIfDcd0Mk7z+q+dgTsVGomX2RsmntRU+7eS2/bQD
O+v+fA5GKyS1khoSGSYucpwVBGsCORsSl8xnMBD+RlZIScGC+LUpYrpeVRBRX44ZB2qUOhlbmWJk
VcG5JWiq0qDB+1KhkUlqocHJ98xdq/Y+ftgWOx+L8jpTq1czB7Z0b354+fJ8fH546T6vssjYGSRO
yITjjFomk2M4Ghwz1Thwi4EnnSTCuVImiIvKXZfx3d62SP0uXytYPJiKSjj0U0+l+5SGQO5U8jXe
Ybix0YMNIixBvwGsLMsMAmHSlqtWtTLGfxGLpzhZJR0lC5X6eHO4W0IEjnO1nv64f/7cF2kjnKo1
/kjDH6jkaHQEq+RlixkeBj4dAhI00kbPsDwtqbefcDDYI7drCtdGy/TS/KuwrGLvW7ay92cZ4SHj
mw1N/P/G/+RDGM0IQ5lE8ZxwRrdkCpSjkBl7A0fBhqj/EkCR4dmC00OF0/OIk/fff1wOSIzaSYuu
S8vzLCAEUEYwQmYoocpbG/xbTbb9uD6mlq2HM1vLiT4clvMov/QIjTNXUT7pNnossZcMRUbK1qRo
WgT/5xTcHGevbl7PuDvbvev4+Kak0VQI14fNtocPf8tVYOwdGQ0ubTGMlqe4SWLzgEqLc3849SjI
QZrDBXPawZHSr2Dd5bW3OgYWRV1AZF+hfHc2nsZMAa1kIZyJJGBzF/NottPclYe45J4YoTnYiGqB
ibJYraBE0LUZZwU362GkX/pPP7p0Fk0YQ83JrdF4gi9IgetqMTAPblJsERjFgekqrA+Iz0SuKw49
bXXhJMDTgolaIaDdY3nrqk/cfQrfRZSrQ7MvziN6N+AwCOeSpwErFXBOIwEPzwVsHiRS5QGvRISr
K0JxlwspRnxcctBVfoZ91y1zU313xDjFHGSKM0+dCaqJIQf5BFiJJsBBhivphQ68Vf5iVmq+5oKo
iijbrwBOJsSh2aABHoKmKNIs1oDTljbGYYw6gA9NU8sN11eGwrbBhipQQ0Dd2mqwnaSXIMv/dntp
8ArTAa4YeJHaILafiXCiDci6GKRX2oDuiertnLEzLRu9C7e1nBpwqCpsr0bS1VS/+/kWlKzGgAe3
IlfNWa1tiwqJaCyNDS5gjW9okjI+eMoc+B9/3URLeFDyuh5dhx9OshOLm46g2//rPIlYZblJcYAi
HMckMehmQNbjiM9Ge80RFjyBQ7VRC7tYsCDnsB5MCB+KqYAOFHOp7jWJkoJEaf63tav7bRQH4u/8
FX5ZqZUuETY2H5X64JIPZds0ey3t3t0LooH0ok2gCmRX/e9vxgRiUiB7d8tDS8A/z9geD/6aGZPj
wQyOIfMmlMLMd+Iz4bmCub8skH0bv9xq4/dDIDmcWvnRW7HHNYrS9qh08it9qEYTvo8YyWVgSYZH
jLgzGLsTOZpwX1iO+yssj3QOegKSH1KclLFltFl5SNANCethYLZDbSoOZ//UjXKAS2GAw/hg4mIc
KOXX07THyirJFvhd4D81AW8Q6hojaEmahRFtDWa3badoUYuOungsuC89mCtIAR8Jy/QFjHGgEDBY
wIUmDz3znFVgZ+IVNZI0ufd4C/feSuut2yz1GwfYQZc59RF2D+ehDNeI+A3H3UQ+wPAReKzJpZK6
WIaubnuSc5Oxlt1WL16+VMcQ8Cz++ntyNK+yLNzwVQdffejzkqG7IDyMIG00CYcxj7BUfO0bxzk9
cHmSmc5IxFo8VUQw/P6w9onFKXeddKMifuPajgUfWMvGGMSTMRu4I8uEsYsjfTHiE/fmJ+11q/z7
nBmc7j1FnH5sX3xYqb8kTXav741VQFoHUzcl96iPCyccDfsnI4FWc2jlItHGntkfvG18yK7JTMvc
K+LcO1mT3EabTVbvpdtOxY5wOPTzGwxYRlEzQ3dxcWGSC5tRGGg7ttN7vkfP1zBwY1oFNp9n8XpV
bZw87rdbaIAr4NuH5DnZRnFCXt4JdJxkR952GXrBhqFIEe1eE+Udr/h7nVcvrlR5iyj/Fq6yXfi2
jq9I6c+rDKUcLuFvkVwRU3+YJ0WYF/XzJuFz2Zv/L3v4oZUKakDRQ7ukdZq00cMDFOzf0TSe5wTj
XOv1i0EOF+nmneDKEr7JVqT+Ol6RICuizbVF6dCdk12Sr+MkLa7N2wvz0yXJf6DRWRxm+yIEtvap
alggFh8QGA/z06XxdbcuopdNAhkg8TpbmBBNyQ94WSRplWcPjeqRTgezOFAhqtz91/PsIXiSd3D3
MJ7OFvfEOPwP/vwy7oY9zv5Sb/3F031ALtIsHSyzaJPkyyS+JMb18erIoH5b3RhyWay/oyf5ADop
im/LBVMp97b+QQx/StZqW6fvYrZ5gsmV26oSmrdiKOc1hgMG514ppFcC0X4J2z1i3BLzNDvwp2Ih
t/Em7AZvOgajLbTyppXHIsbo4FMTVH4K3X6veDwpFYdJ61yj8/mRfJ4F5BW1IkoNYOMTWpTpGN6F
uSidz2KrQ6k9u0Gnuqo0BLpbFMdoQUCAaTyBronupXGr/HATiU/IIl12tKurF38u7+4Wfq8AUCqw
sx64YjXmdR/tYvLWJT8Wq+k4gEm26IYziF4J46yTFNOb80upvgg061uekFm6ys6K9OPvd+siKbla
grJrFwHWxATSvyXTJ/kw6qwEYQ9pXQcUMEW0/HZGOVBnyHTM8zxUNSeDHtVA+FE8BTG+Ji+4djZX
zdxFxz3S4UAnDEcykP28MVpjGDMRM5vL6bgfJJr1FoZ3s/vb8QjEurtBvaE9r38gJhj/EfRXm8vq
umZMYZ7uZ/5i1MudEA3Z2Sot36kESrm2h1bNG8joQa9tS1HtAOkY+t9UdbAI1CejvxaGzrS8s6k4
YH4jW9BQeUMhlIpA9WvbHIq5hjH+AVBLAwQUAAIACAD1kC5KaAj8+rA+AABO2QAAOgAcAGNvbS5h
cHBsZS5XZWJLaXQuV2ViQ29udGVudC5EZXZlbG9wbWVudC0xNjg4LWNyYXNoLWxvZy50eHRVVAkA
A27Zelhu2XpYdXgLAAEE9QEAAAQUAAAA7Ftdc5tIs74+/AqutuQkyPPJMKqcbCFAWZ/1V1lOsqe2
tlQIhpg3ktAi5NjvxfntpwckGRDyWkkutmpfX0QKM3Q//TndDbrOs0itVgOz+Rdl8364XM5U/5Oa
/poW+sPLFoVaFH1f3atZtpzDd/N3bDvOH8Z1WNy1ScDf6cdstp6r1enHq/MPF8Hpq9MNtSQP5+pr
ln85/ajyVZotVqfu6W/X3ljl9yngOX2O/8MyOt18X51ehNHV+PSFcI2zGP5Nk1Tlg2+Q1tiAbUtq
I/ba7MG/fdxnr08ML4uVefu4VM2Nvzm2ZTOzdxkW6b06AaXlWoXXLQv8/PPPoNY/jA8rlZtnfpsZ
R9gw/LBQp7fpvMWBICwshC3MTCwGnA2w08eSmxZyEDKuxmaXAKBBE5Z+MzHqY9y3zR7m7zHB5MS4
UcssL/buwthwF9nicZ6tV+aHDzWMgYOwJwm2hi6hlnCG1AqkHFpEYCQwwPO5bRiGRm66X8Mvyhyn
i0iZwywrBqBH+DNXKsoW8cowxo+rQs3NM7DD5zwtHrWmChUVJRS1CKczFRuGl4erOxWbt3e5CuMd
EmSafrpahkV0Z/65VmvQ1JOV52G6sIryBsMIHiK11ESbJgt+8yZD15+4nheMx2ZvfPZ+HLz/eFLb
r+28s9uvwc3l5Ozyo3t+Bjf5/o2+KyxM9IAafxTVKFyCQA2O3tXN9TiYXF7dno3+1zA+Xpg36rOO
D/NShTkQo2hgWNY709B3TCa3wW+3e2G34YQRmqIEvli1CxhrHf+utzm//mHm1sNp/vXBHF/8t3f1
6W8YsYYLm9IoLNU1XqoIojcCn0iyfF5eHBjejTv+5ezyvXkbjG8H5imQjcLoTp1Gj3k6g5utdZ72
74r5zDDez7JpODNv81B73TpJIMZ6OfDLV8qM7vJskc2yz8BvtvXDk4GBHcZswRgism8zRjA2vdGl
KrQ69pT/X5XBRZIkTsJUEk+peetdg7MsFmA/kYRSyAgTSpA5Hp+bv4TA5E6Hgn91GTR4Cf1JX85L
2Vzu8XK4HQkwOSgctF2ovplAlGD5xlQ5ZEG0xxFS1As5chEllB7kCFqF9Ib73Yw4tu2XixZLMj3I
aFWEeQG5oM5AQgZzyBF2ipzkoJ1KBunic2mwhfqcFWnpe22OxOHfaa0tx5a1eKe1gCPDzndaa8vx
OWtJLDH6Xms1lLlnLUmR8726U5hRuqc73K07mzLxvZ6+5fis7qBAenlIHdLdhtGe7ijqI5s46MV+
Z4upBE8PHnRWTYvZI+S5ovRtbwSay76kCrhkefgZPuEyKLLu5yU/ivmLI8ueEh7jLn4HmRnVUQ5H
+OZsHwxeeJajdi3nZbnqwlYehiROkhDcerNvMKgdNZ4+QH7JVsVgAHjbC71Pt6PB4EYl10X+9uDt
73766cR8bUJB1UW4Hy2XA+rYJwY+FjUUWfQw6vd5tl4OBnG6ClerLIJMpfwsWuvT9DwLY5X3drc2
r5doieBmb12kMyi4BsLmJwY5Fl4cU/VXSv2/rss9DYDZLf70KP4UyUii2DwgI3BuKaPkSeQBI90N
OEBgHT2CeRACimQMQWlW+wYD+NwDsXetxAF1e695GQA4UIjz43SAVSikfNLBSBdvW95FHi5WqRbz
NvOy+TwtIKM8+UQpe3wNIfmq9AcGqqk8XWNBJ4Z9LBYZhckBLFHJH+r6+1TXlOFML5SqoBj41vaW
4YKFBGWIIx0ixChKDjtEhaFkHN1BjQ1V36p49cZMF4UGIuSeTUoozDkxnONCQzk4iZDZUvVN+PVG
rbJ1HsGlBZQWyaM3S3WpDF1e+Clc3ahIQcPYgrcGI35eQOOzwYltZPY2FDfkKjKfwtmX0pE4GE8e
jVhJ/CziMI41zqqWfnKjMWBVcXX1p8q3+Q7f0/2lLm0JSRAdZVTFIiFqqXu8nuYbklu7xmm80ZzG
d5VvELZt/MbsTOZ1/JDI35izDM4s/c+bmisB4evwcQYcde9YmQHy1x6aKtlLnezxsXLaETlCzsNO
8mIRKDsoga0lIEclw1hEthPXk+HNQQH2Fi/UagWZqHd27YHzQUFUtf9gjvKKDy3a9uBiUpi9QwQ2
9CspBEQuHKDHCDHlSEIf14JRHrJlWbLFuSqgWJlM8GCwXqRQqkyW4FN1qG/Mpy2xSsL1rJjESler
jW3vzHelM+kkOFfzLH8cEJtq5bMjcVMchodxXy3UFnrJj9g1flzz43V+/xPeh+MoT5fFk9c28oUd
ozCRm4haL86zDCqRpcp1t/4JasWKi12TinEd/PaRXPAUkWe43Gdp/Grrypsd3mgThMBO1NlpJqNs
vYirGcNeCStZ4giFzcnEG918uDy/urqenI0nnnt+fnb5fnL14XZyezVxJ+OrDzdegCbXwc3o6uZi
Mvpw6d2eXV1OJlpmATX0cVxjkeCo4lpJ4Gfj0rNXCAhybhvgHUdSZDSpU4QPICWJMAg6kpStqO7X
ngjtZjNQM0jbII0898vZbZbNptnDgTYh0kUT5SbQ8da5HosG9+V5my3PFhd6nApUKTcIOZaqsBNz
E/2X6qEiq6ueTEvOKDEIPZYkh3JmMpxl0ZcPCyhUd2QvdERBF3OerooK9ae0uBuls0LlupDABmlE
LxSch6K35CVIGMWJbU786/GOifYlZIPB+LGkCAS39fvluD5Qmyza4Df/WX2BDAbC6UHzIC2FgXxV
NV9/aM1xZhD7SAgodtAehHy90ARtB0whjiNoh9R2zAa5C+gGy8QpwAUh4Gbp9GEZ9eNH+GI+16lK
YU8h3TJzAvsn2fRf0WRe0RIS/E4eRypMplNlakobIkwyg6JnnzTs5W6MBFSLWwLg+r2neauWsz+f
DzCFoo7iEh0giw/Aq+tNcQouHFezBK2rXcONB2UHDQRW5eh9AnXjQs2aNJukOOOKQErRg4A/y/25
KtZ5aQNUdrZP1JZVl94gV6fm2FRy4ZjbjZOvf1ZfypPJoWUnehQ5QRmu5GzQojuJybOjBa3TzaI1
DxdwSubfoCA45c0v5YRo8me2aihmS73DanV/QpGysc3NyXb/ZP45n6SL++xLmRixvVXNywnyOIpb
BHcK4mSnIPqPcwn2j5OY/+Mktgf1ML8cl4fe7dMM8RhVsDgRBLK0DqLV50mRh8suLbyEEIUWY0uo
LPFas7cXlGUOhhqjVuHtjovo7jor0z3BpDVSe0nhyFW0XzhiCkUoM39w5dicdf1lFcAQiSXkxoYV
y3mDLEdVxzmilPGTI06z+LEUE5czpyMp4fCJ0u6stZ1yaHSkO3Nstgk9ObP4lvDFCNBNVmr+NUyL
iR4ShLMut42eP0mcEDMao8RchItsNVOq9H0ptzEbvX7dx901SYOKQBKVj4a2vXFxl642B9JgUBKe
QHdX66+rZ7XQya7z0tXe1oYbT7vKtbd49sbEuwfwM2iuqwFJOTcQvBUOf91+JjSZSnM6D2fQBAwG
v6gQ+s9VFIL/dc0AdKfwdrd7XACm6GJdqId3P9WxfotEs82ggNrY7E0mc011Mg1XaoClaM+tXyJY
DOmjJRioKqp6svFWxPKxhtPmSHF7UP0Cjpwj/MTRXT0uolvoPt42QLwxdUdv9lrIXp30Tt5pX9Fu
ssknJTY9CtqR6t8NMOHtufVLoDEU/xBowaLIH6+zdFH0vodcNY+Xrfn3SwSxp3FJ91XNkSab8Jos
8+zh8W0t9NZA9m0FA/h+H+I336XAV+DeT8McSevDKXFyfCY9mN7lj0vvepD9I9O706pVPtycP03y
qiHnf2qWv1fN0vVovPmUf8pCG4qU31vm7FX2PDEn9eF7Od8shy6ghmYWa8Nuc2LSIcrW2r0cV/40
qXysGkqC531LZXMgiJwfF0TyB9dIEoJo+8jDhGyZzWbp4vN/4uZvFjd/RZBjR5Yv3zXn1+LYZ9Ix
Crlde0dg5xGbl0gH6SIt0nCW/lvVywrC4QRq7QVt6zkcpydHn8uKOdunGHt1wu7Qw9AZ95L1oswP
4WyABSPtB88vYTXVj8A1q69FcnuYG28dsfKHZYejz8Vnjlj8Y7MDRo0z1huNoWJXRX+Zp/dhob6h
vUKiaq9mkNefMsRRns4ZD8swrMBcVPNH3bDY5PiRyEGz0B+XtNkPTtrIjDbvdn9Nizv9+vzmJW9T
91DK7NnMmqbFycAwzTx8GOy9ao3AcPn00EJ0aCGuL2AUURXBF80kTg/cstotaNl4gpQKScl9ubcg
k/KOjgWlmZi508FE55ZcNnBNFQudSNMC/+0ArBfwHinCbC0JJgckwbTJJLFJDDkcFtghJnzvjmjq
aCbpsrGyfd/OzJNZizssIv1oL++ARbVWjPPNW9ne9YfqhXlkBHme5eVL+JtX6Hd3MuNWH82X6/l0
+0sPzAzDGKaLMH80z+YQSquBsX1d/mH3prxpmY2LGIFxnn9q0yt//WGZu59/mG8d1/FHgnDLYy62
6Ehyyx35nsUQkyO45ng2evf3e9W+KbnsUofU6ngN929+tDK+S+ebCO8hkJy5nAWBIy3HcVyLSjGy
HOYwayj9oSOYz13pHZB8j2ITD0H7eFSIk6TrRY4OmxCPYuYTatnUHVmUEscaEh5Yw6Ezglzru0Ni
H2uTaq2OE0NS28OJHRwlyXQf57n6HEaPXWiRJJR4AlnYc6hFie9YjnRta8ip4N5ICIrwYbQV3ecw
VzsayENn3+JEOGFLw61aowO7h5CDpOAWcShgD3xmuWA9i3kMBdwdBQR1+kCTcjf65p46fhKH8R5+
Rqjc95BDwKULlrJtcFmf+Ra1AwJuPJQWHbrUc23bliNxQOmHEW8W61AjBtmmDTViNOnMNbdqVUAR
ulB5/2zxL6gn9Ftpi3gGIuC+JoJ13HGKnRHxLNtlBOIOIwg5z7ECjAQlAaG+CA77yxOLJof+tPxo
55Pnb2pKGqp9STkBUYX5GmJ8ox1Na7xe6h+bNbKJHYwCSpnlo4BZlAnbgszqWgH3fc/hnAg07JLq
GcJ1dEmMoz10icJKo6s/grjwL27Ph3m2+Lfyc/0amVY9I32olkH9fdYnOuk7korAdi0HD5FFkZCW
HPrCwiSAEBh50h26ALb6UdvpeTrN4Sg6DR5Asxtf2WNzQP/7G40Kva4kbE4Ue5Jqe5HiachAKv2O
gNmjNuqTCjQolY48y/MQZEXseZbrecwS3HUQ9wKGsA+g16tcK/VU313j5TDKaJsXXLR5S4P6ZUr9
yn+Paa3Rvg13bL8CCt/3iYMxeG/gDSHbjSDwggBbthyOJLQhQzgy91V3XVXno23UrU43bLoDcbPY
gM8Q2YcPfy34F6qAyqPH7RK4/gDQFEE3KjCGbAHJDdKytFwXw8mHkE89xwlsSfdB19CWVLuxlktN
pDbaR8r1eSzKovv+Il1tn9UAUNrnAHE4sjEZCd8auXSo6xBIbcNAAGI89IYEB57Hn4XoRhG0MDlo
uRtnbeu9ioBA97YmPqMpQtglV1ymQt1MLNNFvJ4vt6JhKfq4PCCF4MIZWWhUllgMagxsB2AHf+QT
jxPPc2qOu0epAUIQex+EAC/YKPdhNSt2j7F6mPUZIBDE87HnMguPhvq0EMRyfS+ADAWRLhg0RNJt
IqiTafB3CN/nL1nUOg/Ow/UiuttWgWZPEAciCG6rvuhAGkGRID1qIdsFTMgGTAy5FkeBj4kH55vn
PmtwnTO3DP7S5E083dube4ymgPG+1JEu6ZIDI86e3Zc64xIutQGwK33qIgsNMeSugELqtUfUwgxa
S5u7cHiQZ4V9otyF3autG02IHUkjoVGr0FipaF3+arknymOaC0pFXydewB6QgHMKoUgcyLaUSCjt
6BD+GeIh1BqCSvZ88hhvqB/IdZvVOm5wsX3cHHHW0rd+mU59dHe8IJ30UZ8SLUL5RScWLASmUD17
GA68Er6UnrQ830WBExAXDueXJOwNr24hNosNGbD+IXtbBozCbaT+uQ7zcFGkC7WNVkcXEmgE8ShH
4CoeNCPUhdZsSN3ACpgYUu7YvkT1bFFNME476LXATLvAJNvcVf4IeYtD6IQsOXNcN5AWgRRhUQ44
ZKBzBnGFx2w4jZnoxFEj1YQgaQcE2c4cZ1dlJr8oJ3v6t9P12pFL6oC/eVbgjkA5whOWSym3bOJL
l/uBh6X9EmPuMek26962lkBxl0CqFVxLOMprTVn/Wv8fhEKlVMQuD+jA4SOBPMsXvq4eoaAY6q7U
wyOO4DCU4K3PJ8Mwn3bnhkYavG5iqe8ql1ryJR3yhWTrwOVgcOzVPQdjWZ7mhDoSRHFBikDnuyH0
VS70sqNh4AcIe2Cp5+W5WqrF+/MDebrcnkIV3QWiKUJod4iQ2O2a73E+zXZv+eqCWWcQBzF9eIJd
hiNhcw0eGqwRDiyHeyDakIycADKj45EXVXx1JgdyYX1LQxBoQ/YFIXQXv3NdhU2KFHqLInwqQUB6
yIOsqvr94P+Ju7bdOI4k+84vETBIbt4vj3n1ascLy5bH2LdF3ygTpkiBlDzj+fo9Uc3urqyqbnJ3
CC9gsOmuUmZEVUbEORGRyRqFkI45mApeSqOIm/CjIkrlhC/Tqzzhdx/+lh8+f7kF2hqpcU6IXg3N
F9TQ/LCk7oYQfPRD1lwbfu0J/MMmiuWGGSFgIFYLLCgw35qbEolO8jB80RuNR+xEsXYzF8W61cQd
PWAhfgKgFmAAezc0/AKRrAzBJUDplAt4bHSw2SIsK9XhScYGNyn/z2t8f60T2C2Zo1uvD89ud6Bn
x8dHD66VYGShdEyqmamMwB2Go05EEaAxJhtde+g3GaeTIYSFMLJe2cMybA9Pd/+9/eN+9fn2iPCF
vZZkR6ZRYk0C4RcNhA+xYEdKsFwR7Fug5EvoJZmPdtXP6+bCbLZ64n/33PofcLkIYsMrBJy7FmQR
saTqlTEMpNcwpfD2ogXIKVhfxQqQyqxfxKA09vJLPFy96gWcA2iz28nDI7zdfNtQhiYeGZIR1/iP
HiG8akhCW6a8Bo8rGjAy40erKohiCszY9Y9wMtpYEsvdnM/YAyY4Pb/b+99O6g1xi4CtFCSQgGOE
BUKg5uAbbfKwBuUYVhWPTemklH+LuPV+LEMXoe9/63QajoyZ6ST8kNM8FXy2909P26OTlIawLukD
R4JHHDxwIiVGhM0swUSYUTA1YHUgybLoZubjTsQKC2LpqbP5jg7v0XtcMPiYpANXCmxBJVUpRx1B
3BzwDuCXrSEGofnF54sRlx8cLvQSrpckvHEH7/Ld90Ml4mjUcqC24AAN1EbBLXNQ28BhQADcYO1e
NdB2DsN+mzjfzd9JrtWC5NqY6bPd3e/2zYqru4/P5zi82/sDqcKgjc8ey1p7pmUgdIl1HTLwi7Yu
B+UQ9VN4VYCcT3XmJcxv7FUzc/hijTkisPZw//XD6vEJgfjwXowfMj7Suhhi1UwLhdWMsI934hQi
VCs5WGN9a5fTKad9Sq8m2fHnM4vtsM/16d8WhO40Dl7PNQ5+c+QpD1/+uAHyOK1DR36caLRLmTUF
UKM0fqRk8R6zNa1w6syXy1ylG24iyRzd27WZQsdhVb7/Yewh1bXaIwVt+SCcssVQilBXhSATBQua
K1ayBav2PEh/ObM1m6JzgPuLnejr3YIT3HBzWDYf7j+dEkSDjBKexOnCmdYGziaWwLwAxgLkknAz
AkvnX5Cxe/3HycciO7GdG7GTXB1E3vzlL6v17UFqxd2AaIOUtSWYKa8B7lGYxLx0nFUvYtZKO5l5
Hw/H43QCSDtfeG7nt9P8+r7F/5Dd0Vxfa1qBiHVCNFtZKR5smR6lz1iB2YYkJTdVD8npi/Z2pnaX
n69d9ZLtFsQN/GAn+Zf//Pjh7tun2/tJreLZcQMuqyhDZIVyCyqAQ/vKC7MhGwfvoJPlb0TQliXp
tQliSZt9Pe8UXfcHTpxcHWI2H7Qp2qdSlWa8OWijwc4ibw0wxHlAo+BdzpfC9njgTrAbMX/MXpvN
LOm+vV0dNuMe0hVOiWthriWn9WFhU6olxxI+meKAbz4GWJlWCPBN6tzsCxn40xTnEvGnO656ebcL
Svj1RIlxPpXOMXykbRbvpPbXlE8bPkmRCtrQOBaOa4JipAciqUB8LXiViq7Zp9fEyKXZzqPo6Z29
fn7O5EBVdje7vS38Xj5+mJYbjOPSGg57bRzxsRhPOfnGQoVu0uNqUn9WueEo3lWvwM2CVqtpuerp
y24Hfvu42zx8ur/tUwuUDsUaHLKhYjCUUE0MHm+vASBRrd4QL4TJJHh64XPWpr4FXv84SPXTklBd
vmN6W/8ENnOXDNYSDl6BgASdOPn09XHkFMywTKPjBXySEpdNkT+OgHIiQO8UqOZfgxX/j/inF7vT
2iq7oLU6FngWW9beAeVdiz2HUaWI2nRmYPjg2TE1hKI8JO1FrrUGY8IlZ9iN3Il24+bU1d+sbiZL
suzW3z7tU1lPJBm5DzHk4qWKWmYDGBoALhTCPgyuSuA07yKVDc3rMlDjGZaf+PiOXoc1X9BhI44A
8/OXY/6JgHSKOjWJx+eahp0oMNxQimNWhBxq8qrmNoEYxxHGEwe+mce4IMSUbe91zw/3N7efnjdX
UUQReijfD6TbYz1UrvEULRAGHimloKJhzYeWeM3J1ny5IDOf41w+cnZjp5NU8wxMkNZO2Pax7UoJ
Ts6X+yqGzKMlsqVKqywaP5TznVImVVf1pRX6eeHxaj2P1OANeiHIna3SGVgMgByiQKNcGSVIvfKS
yQLa70xDJH25JHm5Uhcn91z14s7tKwQ7ZbJUcce/Xg25mH3BLjh5rfZJNs1dptyF1FQ9EoaK/AAb
spTEteT4+u2qqgdJzncG0NWrXh27pGOYvKdfd3dfaN2DS1HCbqiRmBI1kB7jKYPkmUjtDI46FQM3
uTTdrH6L2PXvmHr5JrrSK+OXlFn5aUlrcwoiWHJ+CMn0QUC81FpStawZ6ntIpJUsmkkFm4Yrx8p+
Vc5hPMcZpji6Y6zFipt5oXLF7e4Qcb6/vd+tHuPdpx0mP1V6rBwibWvV6Foaaxz4SWVOpW0d4dOj
S4lyvbL8SUhqQdBe0QVAsRJGHIDiZB8xzMtLygzSewImVKpIyagWTnn0jNUnM6sl16Rt1Ta2Sz5r
IYGNqeWSPOoQi8rt6tP9wxNtwd0ffPW0PyXvJN/QeSa1SjZhyQiqTxmQYJA44B0TJV4SQtZQEx1F
qMvjdiJKOeflK6n8pEf0+9X9pwhc/sfTLYX8Z680fFKWGE9KCKlYpDYC5Q3CvsMSQRwwRRuQaGfe
HIyNRTrX73G6o1daLSq9OYS1j5vH3e7+p91w1tzzu9DSXmuyB7CI7EIRTBtHLaWBs6ANuGiKEnhb
eNNK/zrmw02k2S5IsxZnejhuuug2dHMYIYfWtRh1K4UDylBnAY+RwfEg2tmUQgMYa9y9qpHjpRA3
v69XaDtHQitj3amWuVmNPI0NdqBstdnMwTCZadVTki+BQsPv2BCNyjUHFyf1o26gq342vyTC1HGP
g+FSD1Ml7ELVv5or9ZZoiYUtC0wPNqdtMi75fzHaju+YqLCwSM16N22RqRCcU8DBz6HkpYN0ELR5
WgTeJha14azFLL3AOmjxDQFCrGf6ZWqvy3rOdVfWqoku6e7b7uvDw9dfqUii952Z9HkztBVzJysc
DGuAOngXGU4mgfEFpUJ2HJTeXGZ87384jn+uG+R4Qye93cwbW1ZO2FHuctSRJ/fxxLesACupB5OY
uA7gFTEbQGIL/AayUYSepS6XOvJWTpuF6QNfQL5Diuj9D7Qi9ilq7cLQVuNKkBkwvDpBDpoAeYWR
cQCu4GCALrQXF8Xz4OeX8fMNvfALmb+VW88M8ddv978Nx9UNU1NR2VGAsUP2v7gmvckM/LFSERIB
0EfFjJdWC2UQAeurUlL9JGcU6W/qlVmooeHLqUn+nPO4p6mZWoGRFLwGPXzajRBcqkzKnECURIIu
rxEfwy6LjAsTMReszW3tJMOwero78japqBFjMDPRSKjGREIkUU0UlqKK1E9snKsFT/5iduE4ai/S
1i2IdCMOqZ67f35eXZsT7iHgnLkyQSR4LoPHRgQ4Zi8YL85ypWLmedLYMB6km92vF3BhWB2LD//4
fAese5hdhmsxJJ1TLDbbwkozxLcqZ9FKASBvbGlFyOjEpKl2NM5VP9fCGwk3U/JKlfyng+vdH/rb
bu92dIYjJWqHriV8ULAURcIsXGKOGo+VNABfMsDRFB6VjF5Ikd/OzfeynO9pP93Tq3+zWlJ/fWys
3i+dNR1O83SEBYOaoLMlFMOaBZpRBqafFHdgIACZWWoYkLm0GsdDTkSa55RXK6EmNkJv5OvdUSav
qCJBguXAS6zKg516kFUvMouAfkxGG32yzlnpL9KF8cCdZLsFzokvdxegy3XbnzdF0FzClOmPJw1Z
j+ffqUG5meTo7yClDItWLQYWQ/KsGAAtUUVw4Q27sQ/ynLnx+Wqn9o2b5+3oy8ML+W33x+dPRzQu
9z1jTmSQUwBGQgQZ7CgBsLEafHZWJNvqcs/YeKyJEG5JiM3BTX27//vt/TEnq8w1gcRmQRCxDhlC
OuUtApxlglTUUtBSAkEY+qfnYoxH68UIC7zxBk6k57Ff7lZf6ZjhYz+YptU55GFDDIiVwM7Oke9U
inlqeLFZRe+zTnDmF1PE3cgT2dYLsq2Otrx++nzNj09o2JxQBRCMhoF4ylsZp1nCI2OmmBZTdjLI
CX8djdHPvVow2pudnZjGj4Vq9ILS0orLoeW60p40zqQfXKTQMFYw1eZloT45buvbFwt+LMu3/FjG
Oq2BWmc6rXk49uWsvn19OMZFTzQvhFCt4I0hVGe4fiChWHJkpmauQ7KmtNQ/z9MY/dRhTpLWwh8b
2P/jg5y0EbhWrFSIybXQXkRHW2pd4/hfkW0t2TYp3qiN4Dh5J7Jc6LNaSzUlEn/dPa53jw9PtA4O
MEwk7bROcA+GKuK+SmAaY1kFa1fS8SbrZS53GHRZ+MPVTly1UMVfK2rpVC/UBK5r/OC5FP817PHh
z/0mQ7aliKoqBySR2ROzEDDu6uHKo4YtlaBby6/Bk4cZlvU5XO30MQtdymu73k4e/9/ej1PweySs
lR0CUYwpGWkdqAhtO6BmtwQbYNVak0r0pTb9GunHcyxrML7jqhd4t6TFzSH987j7/PD7btyFpAcS
ZWRtKlQmdIHkFlQUTjYwbawBuW4+dJ22J6c6Ha8XZjP3p2tEr1m4v3t4/PjH/Yaocdg/Ufp8Zpqu
Snh3Qz2aOUkWylAzUgGXfGnevbl3O8pzjg4+X+50vdnO/fdGbqe6ns49fyef69v+uSGIGsNV1lj2
lnbOa4S4kHllTfik4Mkr3sWb1AjeX2zFOF6+6jWRS+q5WXkHNJmS4k9Pt+vhbwsdbMSFoXMH3j1B
RQFaDj05dfF7OHqgNCVTCD7JlztJuvEv9JN090208UvaTJn7Kbs/lDHpH4y+om/IdLyiXVq03yUr
6ER7jRptPco52SSrqy8F4BdqCKfrnQ7r9RxLb7Z+2kH+47fV49d/7rfiQ2JacJpw81BtzzXCHC2d
1UDb7y0MCxCfaWdTs0U1s9QPM8YBx8HP4IHj9U70nZxzpq2Ux0bJ7+OHmP86q9ZoYH5PxxxYwH2m
Ajh8atQzyXXkWXonxZ/V9zKW8KrTQs3zaVu1nbYZrH4fp7r3nbyCawu3NzT3a5FK4aoxOgEab4Z2
FFPl3gHPaW9SrC+8mfjLSyFkfMdYhZ1ZqCDQWfaHEDI6/v60wb0JrpJsiRVFB2n4nFgIMrIqbCo5
cR75MlE4jTYRYrsghFlPOGx3RtQ7RY1edvjrumJYMSIjRjRIVZNLcKm8sJiVZNIZz8ETYubxElcY
D9+JZ+WcTO3sc8flqDdvfzzhsYHLH1NRiTa2JKdYkAX+r0TH8JLBHnwIxVqtTRYXu/7GI/eibfWC
aLspjsmNuiDL7eNu8/VhyEryvXcQYdgcIVowtNfamEqpslBYEE4AiPtsbKw1aP9ij+Vx9JdDbnvF
/ZObeq13c9yzc0Ke8H79bgL4vYzNWRhVUtXCncTIgnaVZaWj9LwB97c3A/yH2a96+dSS0Mdi0pfV
51HqbkgctlxESAXUJGHZNJloK3NmOktVwdNNE5PN8KMxJnP7pbnDsU44qH2dTrl/aQ8JFy6kQdgu
zAo6wCWCJVGDFhi5bVq6InOZsN5+tE6QsFoQZG2Pu17S9/HjLBQkKCy8tFiPCe6GMpnJmcIy4IS3
VSKM2T8pFJzk69Ra+4V3u/Zmkhfs0qLHsxf2zishAEfQYHAe2vIIl+pTiFTE98raliQvL6Xh+qHH
At7o1dzD3jilZ37icMbqOwfXaoeeluffhm0nKQCVV1Y43CxgKqUfwEFlNK1y6WOxlwPVcfxzNv98
eSR76A8RO34pjomF8363tlqCg7zGUOmKZ87wiBFYXQBL5kkHPalwn/O0YfjzkzMpNttpl+tPoEhf
d7/c7v5+KsceIv4QCqT3QoPUeKpiKbgdlojLC2Os5ipIo15VQ5nPc84zTe/rtdru5lpt+TEJNvnT
J+8MF0MrOy3Z7DQwvKEOw0jJKId4a2oEeys5+6xKC8t7WfpBr/qpNwvySLOw1/VpOLFqOACH2jeG
aGb326OUrYC0iLIK3h3rNDhqj2sM4cwl6WBhKb0FuaII9fEgxvntscdbxqoKMz9RCF/eTKuhFwO3
EtG6WAwzeeg044hqFOS8FKXplPXiKQP/u8B9LgwHYYWca2DtERf9/L61SRhWDoQ+lAgmGBGGsU6Y
b5azppxuwJAZ8P6NwvBp9l5oO1/xAi7uIPTt5uH+91Mg3m+s5ybySJ1KkqgTNbN6+A/WpMupRGlT
DdPdrKNRrvqpxML8fvraT6cwDCd2UAZLUEjcuxIhxbXa75UPXDvX4ISTV4b2xwjmyTu30hqXCQsh
lFefGjJMc+HgkOF6r8567hbFWk0Tg7/cbncPl/edZJelFdR+ZA3BDIGnXR0TNuZYlBOL6bSRAuMp
llUY33HVy7tZUmJzWBPf7jenmupwtFYSwMSOZefMvtU6aQtIpCogig2+8XqmULJZWBJrtfQMrZ2g
h1s6/eOwLJ2jIDcszhgD4BrwmS50VBN4fbTFM5sjtYS71vRF5HAathfKurlQN2Hqifd/Yvi6rTa7
fdqB9hSSgxo+KQYbDWSAsKAlNQ1w51mUgI/ZyIqvdDHhVT0PhxnOOOXnq1e9tLOkCczjZrOw7f67
x9WXX283Q0vgcBQFtSoD9wwrU3g4VhBdrqLH2y7Djijgn5IN8Lsr7YUdOOMJzjedHO4Yq6CkC//D
25U0x20s6Tt/BS8vwu8ATe2LI96hFpSsGMt2iJL9Zi6KXkCpwxTJ4WJb/vWTWUCjUUA12TNmWAeq
CYBVWY2q3PPL5RKYGYsAXqd/9+HqWdUcmMHce9gPBEtrudSktzipD8TyZLTWLwRrMqOgpN6sltRL
uprrTKvfA0xztxqg+TAdkGK2u+m5LwWRwcAMAk5mEEGyhe8fMzONdYyRlhpREXLTMO9/zGeYg/+N
9wvyZbc8l3y1WsMOKo5Alknn35i8a0zvypbJCwqaJ1gsYFELzhunLcb8rSYpAKs25MVMlr7evPpY
f69Y1VYs9Q6+lSOswx+ru0MS2BB25MCjk1INQwwHHtEkjYY2sBQRjLSEh1kK2GSQcnLJa5OvZ1wF
zIB0sc8K7YNFRoCVwQXQINDzmhhDlCcMghnlKGkdfQaYLI9Z/5byrYLO7nKpJQhCD4ke/3O1e+j4
KBWoyrw4gtYL/Ew3ljogUmOFhtShUcqCHWJDNGwW0SwGOitm46xCghi1q/AuXTzC3xYhamCvYC0j
93foaSdKN55515DAHPHOGxd4SUA5TEnBsqjfCna5qeTrxb7Kg+HTStBsLWLVrhQWxCLo5fBlMKx5
Nohd3LYkYL79CZgl8WjRxv7uWUnd8sgKTpZBKOxV+9PqusuFX6CoqczwM9hyq3NgVUp0NoBqhYij
oF4xTgXo2o619iVshykJxxZ4eOKsXE9lZ3AxT6ypwnkNsQGaS2WF7h0ssFzjnPKIcGMxsS82nkQs
UrYh+EQTCLkXD7yN5DyB8jUX6YLL2tIPhQhXq+tPu4kwzBpyCCKRSMFIAqnRBz4CWoMtBzGSIjGM
zfLvJqOU029sZfpuLGb/AmLxfswHxwPZwgGwHkEU0JEHai2qilw1YJrJYE3LE5n58KZjlJN3qja5
qkANzt4FkGLwdZucgxqljtw1VDAEPEuy8QkYRuuQO1EljBEv864rD87Ws9QwhbiUM/Vs293/+nBz
ez+uBUNx2THVf0Cr0ilLFGzYQEAV5/iuvTS2IUIp0MgFg3d+WrVmnmpPLT5wrGhz8eBZuQpVW1o3
0+gHb9MCD4sbiV4WjvxIKWJlDLpRklvMeAa5J0EFEhIh1pOKhIoTYgfHsbIsjLReUisv2WxjHTgJ
Hstfdmk3MUgJcBSSc3q4tAyMN8+x6j657L2OsL0MD1yB/lnzs9er7nGK47wf7xbL0Mu6VbwoFrCN
F493l2Av5LIpYP15K/WfkBeyFqsrFdgrWKQEpl7jEF1JAJeQbWKKPSO1xvGP5eYPtwvaQaNf0m64
2OfrhdcZUAD/7v5Qo6pfoTUqNOiXCMQoGcpZonXjCBinkciWMJBnitO/Q9cswTQWBJfrFRX9ar1G
XOq8XmwVfgAWUxlvNEoZQW3WiA3cYrqYBDWLyEaIqF1qlQlshik2HeWsnGlpmIgNk0edMHnDfe9+
qOx47jli0/FGp4B11xw0HBJoIzhLTtAYQ2yfVXNw7Ce2Otw9K0lVNfrNHHJhKG/6DCfVDhVWhCBX
oa32rQSNzGqsB8KMBtcGEApty1xkQkXzIjCe+wKr7948XYD13ZtyfbZyHDbdHEMe3cAbhP4YyvjY
UMYHxoo3CPbmCAEtGOQb5hAZMBhEG2DvWaLbZ63f8ATgYfi+JHeZg50v7tl94QT+8LC7OiAO9g5r
F0l0wYCqCcT1R9haC8YDvBRFKRi/bmY3HBlyRlZFGd6KsVx283h7P/F08h6QwlJphBOkYTnex1vT
OEU56IaMMQO2np6DgE/HKQjYGlMh4ID98zZHAUZjMyNkYT2Eh9fX6Ba5WYSj7qiWcLq4FSoFIeXM
1ixGmc4vRUUiwMXRrxc+7667++79za/d9e7PCTYZHhEw101QmHtCFEiyoGH/sBAboSTR1AK/iTNC
6sMVFMmKy1yCBTvb2N91uy9bBLWZQuzJyEEHALPbeKweYhIbwoCBh81vQKMjIGZP8qQNgx+rHM83
S6KNrhFt54AQ3QbbBv1yB79iN4eBdkX3ydw0GaQaBJVFRxpoCA1ogamJwG2YFoprcxo+bTHRUcYy
eaZYjlpCJVlpL1VOSi/NWvchoHG/z1sdPqFPClm8BYapAhYXEQlaWWCsIcwYx8Dk75HyT1JzYJLj
rB9uFsSvKpJL5qR1PVggm8+jl9ho2cfDMHouwJJFnRFzqQxa4hIEqWLYWkjQI/7qyWglFRtSoWIz
+pDC63+//3o7gQbd+1KTZMFjGYznSoE5ZHnjaauwvYc0XGnpqf2LvtQiCDQjpFjEWi2FjFxvu8W2
Xt1tPmcsNexKQobuJHkXUNzJxvRAXlzBlwtcHJ1+1HMT7Eme4dNrl/aEHNvxw+1ikRu+9PbJDWyY
bj3AFN51m7uvt4fcfM7lIW8pEJki6JMSUVwRcQ+UedBvYMcYYRwP9Aiy+mzUgqTtslLfym6zyJp7
3O5uXj0MAR2Hv00CSHQwALP5p0lrpQ9gGIGizq1ijVEhNMRRRCtzhJunN9V08CO27OSJ6WJAOC95
o6JsbjsF7Ln3rkNUue5ugJc7BHM1RcucAEtlXgJDRzHDQ+7wBT+IoDopODA0ngZYVpnrCIOpPFmu
TqwqqxPz9LK3q+tPdze/Fc2TWDRAs8OwFPprvYfVBDjzNKRIgiWtESelx+/HPpL6O9ydUd1VqL6c
H+z1avPr422BGAz6oxjgIHLkgRPRIkKCtRS1ZNs2YKHYxicjA5deGHISl/ezmaYr6O8V9DO2VFvw
4nxPZRUckcQyzVLnFHqF6OMMRKxATAdmMe6AxXKc05YFanj8f+v1/b0ZqaxCKh8FwcUt4qdWs7pU
AlXAEbSWUIQaUDYNfN+NJ2BPiTZS7/8uOJY5leUSl1Xr+eLCpby5WeXIFZ7ovg8U6PFGO99ExtEX
IkE8WOvhB6cCviUMHz4jHmDMY7oB3CroNBWbSZm1uewGbf/my+0dpsgf/Ey5+BCUsiQYjQ2lCLYv
gAE5TI+kvvWg6RLHycz2WIxU0rFe1+jYLgpSp0VCY18RltOLMlePrdcx2Qasf8Q4xk4T2LePUKWM
YSmR9DSOzXKCgs51tzRO1EbTmRj6qbvDAsLV9aab4sbs2RzRMZjI4cDlOg7EzIQjhtBrQVDunQns
JH9XZZojfvHlg2flClhtWfNqh0PnyzE/DU2MloHsiqpJyWE+Eai1PlHV2BQ52NNekNNE0GH05/pu
zmjfVGi3Zu8Fw/7tV7+9soemEWg7gz0GioppqMXqdhD3IP2BZxPPBLZoMz7NPOzlMCUFK1KhYLVe
+tgvVtfbrIsszBzJtFIMmwVicSjHvG8HCiE6FAmcrMja1pyYkTNMctS/PtwvltBtlla/yp2UiiUg
3tm2e8hpXfebHBXqnSh9olZrFFWJgOgjLiD6CirqJsAiVKtipC6cZmxihC7upzke7Vk8dlZSX1vS
opK81xiz1YSf8NUM4CH4Py4K7GSRuG+IYh41LGTIsKiAWIAiEhLF8yg4eewnDDa8XVJvKoz5cj13
ZsVd34387uvFJNSREW3lEOYgDFtLMURowpIYBI6hiI0ksU9KSzUI/ZczN5b0HHl1i+fK1a9rq99W
GmRhTsZqd111HSRM9NCg19CAfQF9BHsbNZygWw2qmBdgkJx4psZpjp6q8YnpQmDypbyAi3Psh/vh
yO69apg8PdSyO2U8vLXGa4O2L5FgTTmUHG3ukmCTfxJpoRh5RlpXIQ07xKzLcsRiZ7HeH4yqmNfA
2ykchISg6iKIxmC2UAu2H2L70WBfPv57oOZYaWJtP2lS2U+adGMFwbs3Py3dDirYVgXs5MoSQi61
qnGtN/DVC8clJZ5q95JuhwkRBfF8CQANFy3d60afe+9bs7q/Hr2iQmasjlx+aA2NrSAIJQNSmauk
G99aMHeDcai+qRBniajLEQuCKp0i8eI8xeOP282r4W2AxbX61H3JTboPalDEtGOnYtNGlHkYoPQy
2qbl3HEPcoR6+Qxi22z0Y06O2WOz1Wwrq2FjHdn6z9wS6RBmzXCJLbBUaZpAMCHfYE0DHIeGanTq
hOC5mLl5i1GK+VUlkKqVHf3Nfx583QqjR72ThbdgHLPUCINdF5jRoG4RbDRpWiKiINqFkoA/a85u
rSqqiwbtacQGut1U2lVJESnM2TYgWLAeAcSJsS3D1quasQTGr6lr2eNwJRGbyn7Si1DyUOYx9umd
bqWQojVGCYy9YkIzha1EMEgFSr8VDtk9fS7Rqxj8aM5X8VSxjFXFhtGrzbxvfdzd/+ru1ruHu7G2
U/dhqOzqlJYw+D4ldmviTEowxUGhSrGN0kvJyTMV3rPRj0nf4qFiFeuaxFrLWv5WTo3Gt2BybUGf
wAW6BRMONNfgEYEvKQ8qbWzBUBRWwKFRwj4PzZRHPq4u5dsl1bJyiDdcVWCDcuF3PZ1ck+CiwBKQ
ZDxmRYNVKxjBlmItBfUvME5OA4p7BiauoH2zqdG+KJyHveceERywT3BUPRqGsszTNjUIZAS7Hdl6
C2yBee808HeQxSc5zIbBj+56vFkQ3S3LW/HiqNi8fjOv4ohtMjQgZotMqI0B37JR8iYxZb2GPa+e
8eKfXsUxTj4jeVMjeVM1CB6vdw/3vQP5w3Xvxi+9x8ZLBt92YvmcOtzlzIBMBdmlWdREsue9xzjy
E65jvD1bQWWndPzQFgXPxtsZiu7Qs1IqAlQl32hiYacQDtsaNBxYgLApeB1BEL9cz8qSiukiDF8t
ub0RnNUQvsrGlX2NADau7MGlqVM+UYFZl9gFgcEnUHWw3pUxbwNG1dqTm3U8375y8dhZuQJeW9YC
AH/eE6LPrUTgvF4K9HJAeQf8xpIG2BEsTYKabXRC8AU47IqmRE5r61ud7sRuFXOL2gixrixxIacR
ePgRjurbm213NZTajb4iE6hxAjRQ7KrCg8dXFkij0R4BvUETR09Z13yO4xDI06fK1VxWXpimNUj9
IVef7kN5XCn4lBN5tGbUOxTTlGBvHgb2GQe+ECRYQRJTzJ1/VmQ8kR813j4ryVy6l429nNtuhene
O+L3qbxcZS9B/yFHXrxLwebYtMINFxtPwZozOhoQ6SoqQV7OTXCg5amgwWID2svKBlyRzcxLDGrN
pjsUxY8Zn63lFDYbyJ0WkzM85Y1LPDUOdBKpUkJJ9JQtPRn3rKRgWyGLmj1b/vWPCRzGAoACrHtL
nW1Mwt7pNvLevSSYJ1jj1wZar8Q6jFoQs1ZLVy5cnLtOrm4+7a7vx5jieECtZ0kmixhnubMefD1e
W9NE5pXSHjbHaT1M8vjP7oMpFUcCLZMnynVaW1mnHc22dyvQs64P+2DQQlIrqSGRYeAi+1mBsSbg
syFxyXwGA+EvpIWUFMyIX6oiZtOpCiLq4y7jQA1cJ2MrU/SsKti3BFVVGjRYXyo0MkktNBj5nrlT
xd6HN8fZzocivc7U8tXMls3Nm7ePVw+7h5vHzedFFBkrg8QemXDoUctkcgxbg2OkGhtuMbCkk0Q4
V8oEcVG50yK+x6ctQr/zx4olbk1FJGy7sabS/Zx6R+6Y8jWcYTix0YMOIixBuwG0LMsMAmHSlqtW
tTLGv4jFU+ysko5yCZX8eLO9nEMEDn217r9eP3zuirARdtUaXlL/AYUcjY5glrxsMcLDwKZDQIJG
2ugZpqcl9fIdDnp95GJJ4VJpGR+afhWWVfR9yxb6/iQi3Ed8s6KJfzf8yns3mhGGMonsOWGPbskU
CEchM/YGtoINUf8tgCL9vdlKt5WVHlqcvP7+w7xBYtROWjRdWp57ASGAMoIRMkMJVd7a4F+qs+2H
5Ta1bNmc2VpO9HY770d51SE0zlRE+aTb6DHFXjJkGSlrk6JpEfyfUzBznD25eD3j7hyvXcfbZyWN
pkK43h4te3jzY84CY6/IoHBpi2603MVNEpsbVFrs+8OpR0YO3BwOmNMOtpR+Busuj32sYmCW1AVE
dhXKVwflaYgU0EoUwplIAhZ3MY9qO81VeYhL7okRmoOOqGaYKLPRCkoEXapxVnCzbEZ61f38k0sH
1oQ+1BzcGpQn+IIUmK4WHfNgJsUWgVEcqK7C+oD4TOS05ND9VE/sBLhbLKKWCGjXmN66qBN3P4fv
IvLVvtgX+xG96nEYhHPJ04CZCtinkYCF5wIWDxKpcoNXIsLJGaE4yxMhRrxdrmBTeQ3rzWYem+o2
O/RTTEGmOPPUmaCaGLKTT4CWaAJsZDiSXujAW+WfjEpNx5wRVWFl6wXAyYg4NGk0wEPQFFmaxRxw
2tLGOPRRB7ChaWq54fpEV9hxsKEK1BBQt9Qa7EbSpyDLf7x4qvEK0wGOGFiR2iC2n4mwow3wuhik
V9qA7Inq5YyxAy1HahcuajE1WKGqLHvRkq4m+t37CxCyGh0e3IqcNWe1ti0KJKIxNTa4gDm+oUnK
+OApc2B//H0dLeFGudZl6zq8OPJOTG7agWz/eOhErDLfpNhAEbZjkuh0M8DrscVno73mCAuewKA6
kgs7G7AgZ7tsTAgXxZhAB4K5FPeaREmBozREYGKGwJZ5iVKwfFNg0hrJzIs1sq/RK3iN3kUjOTSt
wur24RF9FH3tUQ/y6wJ8jQTkI3ZyabhjmGIkdNOa5GISQXJtXqLyaErBEw3Jhydma6xom3uEhGkh
4agG3twhN5VD7l/+kAFwKSg4TDTJYB+ojOtJVJurkpREuSBOMsCLiY7pCJNHysXI2gtTtXDKpGvR
gRe3UgRnwVZwEoQEJ0GCjgOLAGUBHU0WkXmeZWDP9CsqHimpt6JCvb2cnNYvN9ehSGAHXqbHFHaL
dihDH5HwAqOJosH2EZjWZKijBtdw7NjORi4Jq0Rb7Xaz3qchYC7+7rfuUF7FOQZ8c+JrgDPvGMIF
YTKCU1gSDjqP5Lm/ttd6nnA5G2xKyIpVkCpWoH4vfJ+4nD7qNC0qEt4ozUHAcoU9iFPLGhM5Ad1F
uyCjSMafWK+7H/8pMIN57Gkl6PL94sU9++uuu7tPXwsvIB2bqRMnLA3oOBFY2J+ixKo5rHJxWGPP
1AJtYzFcSUzF9loJYWc+yS+rq6ubMZau9J4cqQWcc48NyyhyZjguBh2TQipGQdHWSj+Z3zMd9+wM
A9O5sfnbm+3uch84uXj88gVewLdAd4DH78+/rLbd+frrORyc7u789u4GUbBBFXlY3X3qMjrew+fd
/f7Gt3m9D6v7Xz9e3tx9vN1tvz3v8bz6VsofN/Dzofv2nEwv3ncPH+8fxuvlxM8NT/7a8PDLZFXw
DeT5sC5pd93V5uOw99X/bc6zn9+eY5/r6feLTQ5/vL76eo6eJbxzc3k+Ssdvz9/fPKyu/sUpfWXe
nt9197ttd/3wL/Kf35B//PP8/ncsOtt+vHl8+AhkPV7nFwuTbYe/wH6Y//jn2S93u4fV+qqDAXDy
cVgwiF6f/w43H7rr/ZhPzLG/NJ0HhxhmOc/rfvrfz2/evf/gvodP79rXb3784fxs+P/9f/3UHv+z
izf/ne+GHz/88P78m+ub62Zz87+dnVtvgjAYhu/5Fd/lTBYD5SBc7KIRY1CQbdZtd4QBM2bTmaH7
/ftaDhZDMVmvPD325evbl9RDSb+KMivyEWgPl6Z4g/bZ5oZGs9Pul+8kz3CScvv2NFxKucv2DmjT
OezE1zpDjThWy5iCKcW2VRVa9jKGdWEsZPja64CvF4bob6arX7R5FbMJan3iWsh9EHE72mSGX22h
V5tHZG1+vacmRv4Bp/1ZaLw6KgsXrZFUt8UaFgGDLU9F7hpk86u+DCIztoq5qzaf5aMO4HpOp5+m
Na8BnG5pnvN/EACK5r9Al6w70pZiH26g/BGID5liXDsli2gYxtNBAxiGySdrrcpome05/cnhqPKP
eSnzBJliz7fhZOkWiEWUXRHZno9VfAEO67EsIDh8fN+09Pop3J2KSlWGYddvAdJlGJ0uYb6hz76y
CLY0NAZnTmn2eSMccOHhyMxLlIjKUTYQDWDprTYHtNfinX92FolhVs1QPI02/Vho6STxKaPD2ggG
Xc0QonMmiOh8NgzZ3bolSRisljMfba0ugdetQZKw2RsbLptL2uMhRDCbVTCN/UF1tt3xzl6kvDIE
Kjnm2Gy1Ya3rXNtXVlVAjsSQ/0U1i5k4ZQxXYTyZ1y7Q7Zq5hz0mVNkJhCoIxLx2jLZugtH+AFBL
AwQUAAIACAD1kC5KB5GsgNNBAABoDwEAOgAcAGNvbS5hcHBsZS5XZWJLaXQuV2ViQ29udGVudC5E
ZXZlbG9wbWVudC0xNjk2LWNyYXNoLWxvZy50eHRVVAkAA27Zelhu2XpYdXgLAAEE9QEAAAQUAAAA
7F1bc6PIkn5efgUPGxNydyNTVUAVhNcTEpK6veNbWHbPbExMEFxKNqcl0ABy2+dhf/tmFboAktym
x7ExHSM/2LKAzC+zMr/MqkLiOktDnueOWv8J01nXn8+nvPsrD36JC/HHTZOCJ0V3wB/5NJ3P4LX6
O7Js6w/l2i8emiLg5/hzOl3MeH78+er87mJ4/O54KW2S+TP+Nc2+HH/mWR6nSX7cO/7t2h3z7DEG
PMcv6X+ah8fL1/nxhR9ejY9fCVc5i+B3PIl55nyHtcoSbNNSSzfeqx343UVd4/2R4qYRV2+f57x+
4m/M0ixD7Vz6RfzIj8BpmXDhdWMEfv75Z3DrH8pdzjP1bNBUZupIUQZ+wY9v41lDA9YR1XSkIUNF
1DFNB+GuaViqpjNdV67G6i4DwIMqHPpNRXoXoa6ldpD5EWGEj5QbPk+zYusqhJRekibPs3SRq3d3
FYxDpiPXxkjr9zDRKOsTbWjbfQ1TpFME8AampSiKQK72vvpfuDqOk5Cr/TQtHPAj/Kg5D9MkyhVl
/JwXfKaewTjcZ3HxLDxV8LCQUHjiB1MeKYqb+fkDj9Tbh4z70RqJrqqDOJ/7Rfig/rngC/DUZpRn
fpxohbxAUYZPIZ8LofUhG/7mev3ewOu57nA8Vjvjs4/j4cfPR5XzxTivx+2X4c2ld3b5uXd+BhcN
BjfiKr9Q9Se99kP0ioRLMKim0b26uR4Pvcur27PR/yjK5wv1ht+L/FAvuZ+BMKI7iqadqoq4wvNu
h7/dbqXdUhPSmekTeKFV3zCFj38Xp7Ff/lAz7ek4+/qkji/+y7369W+YsUoPTopDX7prPOchZG8I
MTFJs5l801Hcm97409nlR/V2OL511GMQG/rhAz9Os/geBnqR+/e8+1DMporycZoG/lS9zXwRdYvJ
BHKsk4G+LOdq+JClSTpN70HfdBWHR45i4i61DINR4TV3dMkL4Ygtt/9HOdR0MpmwicEnUUDUW/ca
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
AFBLAwQKAAAAAABbiy5KAAAAAAAAAAAAAAAAFgAcAGNyeXB0by93b3JrZXJzL3N1YnRsZS9VVAkA
A97Pelhx2XpYdXgLAAEE9QEAAAQUAAAAUEsDBAoAAgAAAFuLLkol4NMILAAAACwAAAAxABwAY3J5
cHRvL3dvcmtlcnMvc3VidGxlL3JzYS1nZW5lcmF0ZS1rZXktc3RkZXJyLnR4dFVUCQAD3s96WN7P
elh1eAsAAQT1AQAABBQAAABDb3VsZCBub3QgZ2VuZXJhdGUgYSBrZXkgcGFpciwgc3RhdHVzIC00
MzA0ClBLAwQKAAAAAABiiy5KAAAAAAAAAAAAAAAADQAcAGRpc3BsYXlsaXN0cy9VVAkAA+fPelhx
2XpYdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIAGKLLkqjV/3oUAAAAI4AAAAyABwAZGlzcGxheWxp
c3RzL2V4dGVudC1pbmNsdWRlcy10cmFuc2Zvcm1zLXN0ZGVyci50eHRVVAkAA+fPeljnz3pYdXgL
AAEE9QEAAAQUAAAAcy9KLMjITC52zs8rSa0osbJKTy1xDvHV0FTILFbIyy9RqEwtUUjOzy1ILMlM
yklVKM8syVAoSk3OL0rJzEsHyoC1FetxuaMbVIxmEDGGAABQSwMEFAACAAgAYosuSvKWldVHAAAA
SQAAACkAHABkaXNwbGF5bGlzdHMvbGF5ZXItZGlzcGF5LWxpc3Qtc3RkZXJyLnR4dFVUCQAD5896
WOfPelh1eAsAAQT1AQAABBQAAABzL0osyMhMLnbOzytJrSixskpPLXEO8dXQVMgsVsjLL1GoTC1R
SM7PLUgsyUzKSVUozyzJUChKTc4vSsnMSwfKgLUV63EBAFBLAwQKAAAAAACSiy5KAAAAAAAAAAAA
AAAACAAcAGVkaXRpbmcvVVQJAANE0HpYcdl6WHV4CwABBPUBAAAEFAAAAFBLAwQKAAAAAACSiy5K
AAAAAAAAAAAAAAAAEQAcAGVkaXRpbmcvZGVsZXRpbmcvVVQJAANE0HpYcdl6WHV4CwABBPUBAAAE
FAAAAFBLAwQUAAIACACSiy5KRmr6i9QBAAAKFAAAKAAcAGVkaXRpbmcvZGVsZXRpbmcvZGVsZXRl
LWVtb2ppLXN0ZGVyci50eHRVVAkAA0TQelhE0HpYdXgLAAEE9QEAAAQUAAAA7ZdNattAFMfX1SkG
LY0t5s2nLBJD4hAKhSxqhyxCFiN57AisD6RxcBsEpRfoujfpeXqBXCEjJ20S0DIoWow20jzN/Oev
px+PNwSDnGCYAEMgIyIjwAFlAiVFFqiy3OrgSsdfUtPe5kVudG6CM32nt0WZ2efr6VQQYhdJxom4
QfOi0ku9NxEajUboMs+shl4h/+/vHw9/fvnoaL48tyoRwnu5XmuqBTCJ8ew+V5lGx2ixXBT5xqST
5XzyVW92W1WNUZ1+b9+BCPDhGqNMmSrd2xje29FK10mVlqaobOR5h7P/sZe9KFbA7V7K2NXxzuj6
MP/8VNVp8lnVt69mChZidH0YryUHKRjDN7N7861srWQ7o+KtRqs0MWObq11uWoNjz6akSlvdmfeJ
oKhVX9hIvkHPUiykoVx3SSdP2W09+ReL9hsubE5O/nn1myezb+U4UN7t9LVcR1b9xmu8WdN4pAsA
wd4fgJ/dADD7S5QDYFgAMEx7qwCcqTBxAAwMAEL6qgCKAgPmABgYADTsqwIoAZAIB8DAAOC0tx4A
gMjQATAwAMS0pwrAABMdxg6AgQEQ9nYKmEqAFXUADAsAjklvpwApY+qawKEBQHCfPQB3PcAHAvAI
UEsDBAoAAAAAAGSLLkoAAAAAAAAAAAAAAAAUABwAZWRpdGluZy9leGVjQ29tbWFuZC9VVAkAA+zP
elhx2XpYdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIAGSLLkrdIcPtQgAAAIYAAABBABwAZWRpdGlu
Zy9leGVjQ29tbWFuZC9jbGlwYm9hcmQtYWNjZXNzLXdpdGgtdXNlci1nZXN0dXJlLXN0ZGVyci50
eHRVVAkAA+zPeljsz3pYdXgLAAEE9QEAAAQUAAAAy80vLU71zS9LDclXSEvMzElNUSgBsjLzUhQS
FUoSi9JTSxTKMlPLFRJLFIyN9AzAQEfX0NDcFMrhyiXBCLguVCMAUEsDBBQAAgAIAPWQLkoFmCE7
VQsAAANEAAANABwAZXJyb3JfbG9nLnR4dFVUCQADbdl6WM3Pelh1eAsAAQT1AQAABBQAAADtW3lv
3LgV/7+fgjC6GxuIJFLUDQRFOp4m3vU6rsfeFAgCQyNxZpjoWpHjo0W/ex+luS3Zc9iJmzUMzGXq
Hb/3+C6Jn3qhRL+EGSIWIm5gOgF1ddemrmchExP3M/okRBJch2UGHwseI9+3be8zevseEx/7ASKm
q2P4I4Fl0QAjwcorVqKIlZIPeBRKhuKcCXTy4RzxLErGMUPA7+gQXY94NEJpKKMR/F+O2PTaLEzZ
Xz41SeaZlN4rmV9L5rk0QEcZlwHqMSF4nqFOCGwQFyjLJYrybMCH45LF6NOIZ2pZ73iyslr4uZW/
Z+KH+X8PZCzP8aaSpUV6WZRskJdfA9CXR+yOjJg4gNHbQmlrmLqlEw/tX2T85gCdvj81bN3WqYeO
eb9kgA2sMHV3ETdNQyUT45RnQ4C0TMME5QUrQwkQilYZfTyzXpSXrFU47FsB6uRpGmYxSnjGAvTK
GIvSEH2eGSMpC5BggIzf82ScMmEchjI0uh97xkfW/5XLydvfxzyJjTOWsFAwIwlv87HUJBNSU6In
UtSUdKUW0jroMI+AWibPcvCRvVbixxWhc6BTEzAUSbGHtAid3xZMdCqUNiGgBDBSnjJdKgIVKbDC
0cnRIS83JVRd3RkLmafH+X1irAtSGEWwNS6TfKjLG7kHXpCmsKOAS7cs8/JxmDBFas5DAcDjf/CE
IUOmxZRabS/lLLDgbcJDgYwvYkYpH5cg6pqAzdbvLRBLWczDjUlVVy2RyWNWZlpNDYwiyzxZl5iu
G72Ku/pnB3aJ8VsejxO4qpHqItuZ3JVLjiA2geH0SGwMyer1DzP5shuPLw+zKFmRl3JHRjMie2rD
X0BcRXt95Zz9XFY/HXMhWbYQvD2IRgv/+BQE5PPqj4urvabVXstqyAx3V1c/Rioldea5ot4Km0WU
a9b/yqU22TQsfXUnLnuB6euORUziTuNyUO3EWUj2HEcF64RDXFyQ3MGWA6tFVPJCQmzeLFYa4FIL
9okZRAQWd3gZJUwvRsWrKksP8jFE/7xE4yzsg/YyR0KG8jUkngErWRkgRTEwjGVjVcTz/hcWSW0A
6k+oazwdauJqqI9kmjQAQX0dW57vW41AWCozNcFgu872MCxBwCTTCkinuwOQhVd8WGViQxHUQilL
3h9LZoRZNMpLiB35V87uQcK1McVmMxIObUHCh7WQtdBH2GrANkAgN+Tur/vGVVgagzyB6CUMNzOE
Y0YmGdlWYVt+EhWZfYWJmUYgOx5mxrmhzTXQljXQphqUuRBaXvIhz7RBmaeVl4tKJb1CEdLIQYBO
ALIxFFMDtX0AyZiX4Bd5eQslF9rUXAu4tloOQWZUBQuyVswklu0Em3wNO92jZYvhfOLYdAsX/h6G
e8bW2mZTrWrWbCGPAmH6Jwgy9a9ZrIEDJfk1FFW1ObXrEcs0wbJYLaiEaUHLwjokJurZU7QyNoSG
oWK6DJzbFpM8t24oHM8F91q4HHxLRDk0VdDLKHfbFwd1x6UampL9MQbsgo19LgWiC4CHEY+pIcaF
Kjq0UC+A9v5JDv4W5eMkRn2Gpiqx+EB/EPOKfEX0Hsg813YIecYhQEAX+0NGgFXFmu3jUwcI/9AB
oGThAzWGRXRMLILtRhxM02urMazvjMNmabwCYrMkrpBxiOXjH99D1kiYgAYh1PHpD4/GOsGDQHB3
HHMW3KMhX8bDatk3jkqQajJpEjtQbS/KByA/zzjknoT/G5LgVZiMGfpr9+T3/+y9Pz8/vbw4fXf2
9rB7eXTS63YuzrqXZ91/XnR75729/6pgDB2m6kuzSiO0rx8oSASoBDkOBN8UdMGiccnlrepcgars
Tb6f5gmPbo1xMSzDmGk8qxYybZKiF63FIAjXe0sbMVhc6kVSx3ZPD56LQA+6ydZ8FxlpYtyfytHq
TRQCjWVht2lqvDwEWBgak2A6jAanjUbgOL+FN2e1DB/hSigTYIGU4AavlY8IHqu1IRfKMdQsu3V9
k4yWDty9+fZf9XizzeNtbG/s8R/Ojt4dnTyte9c7/H1lpQVXKYCwnG5/UPIR/HZNTus75BLBST6b
uBv4jDZkstXVXN30fM83W4dMbrMVXUKfoi7laThkWpKHMewjrYAvI3BTbQTdSgK79P+0KF1Dq2bb
uJRi6jxL2wBF9emHskyDTk128XXf8xzPaU/2VrNhPGJuHPr+dXkOqf3yfRcy/hl5khB4kybq2yRf
qeG0FhaFMDC2qhs487BnbRH21qH+oMnuIdJmJhvrDiSheRa9YyYHz80UBJWBbLKxgXrd88vOhw+/
HnWfxDh1t7ZYvEBS7tQ/zg1DyBaWeYj0rhVRfUtnuc3K8kn/KdSmbTIb0aEqXujD7+4u+47Z1K2Q
rqr9B9PeAvQtxhL1VdHEUJ0MRYDqO6bTW3RaPxQ8UvlRG4Q8AeEyTfC0SNhWTlkXTUtTpjW5fRFN
SFDd8U3Lbm0qTNu6g4RpPQMk1qbdtnVdnUJ+o7gl89mLO3chwBJC8Pbd5YoSczNO56O7d5orLJZ2
xmwKC4wLKM/ZxdnxPQBZ2Ibu+wWgdoAIscwXgNoA8nWLUp80F/42bh7fENO0ngCeSfp4dHRUNQfX
QQ5iV0BfU3n8XkB8yyUvgChA/AC7OnEtTO9JxHQl/cDm8Rbqp4/Q5KBoFJZhJFmpaqOqxd2pS78R
4u045tBJrI5zgDIrZTjUYhbl0F0Rp88llPRcfZsNnFxnl859e+7r11ILPGq/0hTZay5Hy0Rpq+E8
3bR922x5XsJzWzxZjZJ2n8xa2Kqaqgd9t1lyahKLtMyUXXPV30xnh2g9Q3wu/LBkDBrdgVYZC6yl
8dkcfDt9PNeh1P2GlvhWWtmW1xwpVQvVrJX3NFpBSzFVbCt1fB0acygInpXTDcZJoo3LZEuNQEjL
dFrczmkxkGPuoNfVcEGlfpl/ZZOJ0ZYaeJZn4eZkTG27TYMdknHjkEmo5yNU1lT3hWrKj3q/aYm+
GgzWgb76ec6uASFo+ImPbb/lcQIft21C+gi+29buT1GDDo+p6d/uUG2QeSHJ/k3J+abxIvioFWUu
oTyunn8IS3XbQ5uMj35Wj7sPbg9B7jfk56sw4fFkgP7G+vmPNz/RTo3ZT7QbJsBtv1fNc3R107gD
BU4H8vE+vrG91/BCq5eDA7jKmF0GXwp4Oxr8ZGIAF14FY/AqR1zAG1hBgPXhU5jF8Jrl8PJLeBX2
agLwe8X3oLqEZfWbegWN4e30ba/XPdQVS8Vm1WEoDrCpmxaxvZaqwG/MRTZ2HX91llzfZ0BpeDs9
siFDqO1OLo5R/xbk2WbC21oJr4wSwuqBpYTDNUtDX+euJyV5FCajXMjGSnjOYdI8sRuoUrXpg0YQ
jsswbR5QTMB0qEP9FzB3B5Ni3fMxBPW2RsP3PdJ4M9GGHOesN7B9+vvi6oTJh6I6ZbOYQOoSvorq
K/e+ifMIN7834Lp+sE2rYw2qsFJHXzR19KXZeCTAtu5YLsabG8+hrocXjNepHrxTm2DIJALHKm+D
x3P9AnxXU/lim3mmeiQS2q6YDcBucfXoZAb12X2YONiZV5R/ekzMwLR138TUb/UTmzQ/KWpRd3GL
7xN6cMrKlNeHB2OWcRYHiN2wSG39xxvBZHmn3mHHLBvKkYLoFVLza8XuKblsaojlr/UNloqkllQ0
tTw7LXNoMoS43zj2fJy8mXHWut/wDDS1aUCp7mDfJXizA5l+gKJwPBxJ1Dt6d949++01EqNx9WwM
ivPr7A4nKyC2jl3PNb2WQ6nE8ei3P5NaC0Zs7BO7XTDrqQ7rTtkTarsPsv8euJiW5z7oGjMRv+lR
3ZmI8Nd+VHcu28tJ3ZeTui8ndV9O6r6c1H3Ck7pegF319DclnmX7G2WOB2uK/wFQSwMECgAAAAAA
i4suSgAAAAAAAAAAAAAAAAUAHABmYXN0L1VUCQADNtB6WHHZelh1eAsAAQT1AQAABBQAAABQSwME
CgAAAAAAcosuSgAAAAAAAAAAAAAAAAwAHABmYXN0L2NhbnZhcy9VVAkAAwfQelhx2XpYdXgLAAEE
9QEAAAQUAAAAUEsDBBQAAgAIAHKLLkoEj+wQjgAAADQBAAAmABwAZmFzdC9jYW52YXMvY2FudmFz
LWxpbmVEYXNoLXN0ZGVyci50eHRVVAkAAwfQelgH0HpYdXgLAAEE9QEAAAQUAAAAzY4xCsJAFER7
TzEXcCFRE7KITSJCtLOwEIsf88GFzd+w+Qb19CaewmpmHsMwNQmSNZLcprldbYB76Az1vWdz4ebo
dJYyiLKoqXhkH/pu8teiyNLshu0+xhB3FuXh13rpmfXkhCsaHhZORvKuRTslUIz0tiCFZxoUQRjs
eZ5D95xAw5Agyw/HYBb13z77AlBLAwQKAAAAAABxiy5KAAAAAAAAAAAAAAAACQAcAGZhc3QvY3Nz
L1VUCQADBtB6WHHZelh1eAsAAQT1AQAABBQAAABQSwMEFAACAAgAcYsuStsI00I7AAAAPwAAACkA
HABmYXN0L2Nzcy9jb21wYXJlLWNvbnRlbnQtc3R5bGUtc3RkZXJyLnR4dFVUCQADBtB6WAbQelh1
eAsAAQT1AQAABBQAAABzLClJzS0oUSjJV0jNKyxNLU1VSFQozy/KVsgESiiUZ2TmpCpAxDOLFZJS
M/PSFQqK8pNTi4tTU/S4AFBLAwQKAAAAAAB1iy5KAAAAAAAAAAAAAAAACQAcAGZhc3QvZG9tL1VU
CQADDdB6WHHZelh1eAsAAQT1AQAABBQAAABQSwMECgAAAAAAdYsuSgAAAAAAAAAAAAAAABAAHABm
YXN0L2RvbS9XaW5kb3cvVVQJAAMN0HpYcdl6WHV4CwABBPUBAAAEFAAAAFBLAwQUAAIACAB1iy5K
QISnFaMBAAAbCQAAOAAcAGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3Jt
YW5jZS1hY3R1YWwudHh0VVQJAAMN0HpYDdB6WHV4CwABBPUBAAAEFAAAAO2VS27bMBBA9z7FHKDQ
HVRHDZIadmAbKQIhCGhxFDGVOCw5stHbl5IRJwFUe7jLIlvxPXI+HGrbmACMgUH3nQug2haoBm4Q
nCeHng1GoFEMyiN4VFWjdi1C7akbsYOxmg5ZRGvynbIVAu1esOJvcTOyzxHgZiCNB/7rMGSz2YRT
HiW4e/v2OMFlSutij5YXJjBa9FDWva3YkJ3EtQlOcdWMzgXWqr15VsPyVDTL0+oFOds+3BVP3/P5
z6cfq/WvfH0Fpe27HXqRuMzvb67zbZEkrYvFKr9KVDbF+r4QSx618bEmc+qHSsqkoeHnWTpc6IrH
jvaY0nM2nYn3bqKH23HljJRVZG2UCqvPhv2R3rDyLOE1dXPqXIuMYtzykDkpjceLLwxt0k0J9CbK
XsUq76WxDgeNhRfRytgF0e/eyRM6KeI8aoyzL6bbmEBKjU+8+IS30RArr3MnjOkVT9j/Tx/f/wQ+
OLIBxfEccfH+Aave4/w4WSmFYrrdrJaityHrbWqv3xnSiKB03sQp0qB28QkDFeC/7NcP6XP8kKAM
7Md+zP4BUEsDBBQAAgAIAHWLLkrxBzijJwEAAKsDAAA2ABwAZmFzdC9kb20vV2luZG93L3dpbmRv
dy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLWRpZmYudHh0VVQJAAMN0HpYDdB6WHV4CwABBPUBAAAE
FAAAAL2ST2sCMRDF7/spct9mQ1vwvKumpVhUVnEpIpI1o6RkkyWZ+Ofbd7EFe6htvPQy7zDzm4H3
hlJK2MLq0IBnQ4GC8WrGKqhHCr+kH5SWrAQNwgPT4mQDUgSP1IEPGj3bCo9M2oZVykh7YIez0NbZ
Fhwq8LTTrXWNMBugcGxhgyAzPGKSpul/3xcbDEKfr+c5oY+9ux5Ju3r/QPI8IZ9w9o3IUDXK7LJg
tBWS78EgN5IsTWhqcKtIZIbCYQxElq1TpjOIiNrugQh/fXaV0B96RuzVTqCyJm7XZX6VpH/ss/V7
lx6ZXtrjaDqbv035ul8MRuunSVkV5fDiRww5LhYvz8Wc30aV/HVSDG9lZrxc8HjKgVSuM2Zgg8Fo
Ck8t/PoSZOnRnXMmyQdQSwMEFAACAAgAdYsuSoIapS2iAQAA9gcAADoAHABmYXN0L2RvbS9XaW5k
b3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UtZXhwZWN0ZWQudHh0VVQJAAMN0HpYDdB6
WHV4CwABBPUBAAAEFAAAAJWVbU7jMBBA//cUcwCUO4SSXbFULWor0CpaITeeNGYTj7Enrbg9TirK
rhTa8d/4PXs+PM62MQEYA4PuOxdAtS1QDdwgOE8OPRuMQKMYlEfwqKpG7VqE2lM3YkdjNR2ziNbk
O2UrBNq9YsU3cTOy+whwM5DGA787DNlsNuGUJwkev779meAypXVxQMsLExgteijr3lZsyE7i2gSn
uGpG5wpr1cHs1bA8Fc3yvHpFzra/H4uX23z+8PJjtX7O13dQ2r7boReJy/zp/me+LZKkdbFY5XeJ
yqZYPxViyaM2PtZkTv1QSZk0NPwyS8crXfHY0QFTes6mM/HeTfRwO65ckLKKrI1SYfXFsP+nN6w8
S3hN3Zw61yKjGLc8ZE5K4+niC0ObdFMCvY+yV7HKB2msw0Fj4UW0MnZB9Ld38oTOijiPGuPsi+k2
JpBS4zMvPuFrNMTK59wJY/rEE/Z/6+P7n8AHRzagOJ4TLt4/YNV7nJ8mK6VQTL82q6Xobch6m9rr
fwxpRFA6b+IUaVC7+ISBCvAte/WHJNnKXvxFQRnYj0fNPgBQSwMEFAACAAgAdYsuSqffwQpGCAAA
cCAAAD4AHABmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UtcHJl
dHR5LWRpZmYuaHRtbFVUCQADDdB6WA3Qelh1eAsAAQT1AQAABBQAAADNWv1v2zYa/j1/hZDgLsAQ
SXZsp/5ofUgT527YriuSosWhOBSURFlsJFEj6djp7v73e/klS7LkeMl26IpVMvmSfN7vh0JfJyJL
50evE4wieGRYICdMEONYvDldidgdn8IwF48pnh9NU5LfnznTB8KJwJHz25ED/wm8EW6EQ8qQIDSf
OjnN8UxNBZRFmLkBFYJmU6dfbJwI3nE0O/rvkd7ObBLSlLKpc9IbTNScd0NSfE3i2MwHKLxfMrrK
I9eKxmP5p3qQPoHTlETOSRRFei6muXBjlJH0cepkNKe8QKEBmCG2JAC5jzOnp4cKCsopPRhOQaMH
rAAl/QbSwWDQsj9HOXc5ZiSuTHLyDaszqoe6KY7F1Ol5IzseEV6kCDYhOVjGIFyTSCSwuNf7i8GH
oojky3KlxmZcI9/q3jFwSZ4AKFGKJ/QBs4ZGo9Fo1mVsjLUZPOmTn+EsbhbHKUWgBiPLRNQ9J6Wu
QH0EutijKJieCFCx11BZoCDFbojTtKalq/atWWmdgHau8qEMtTVDxRbZHQ6l7zqDRi2uh0wzXEzM
WrtDQPWKjT5hsSnAvbA/qIbPHE8+mhp2wuMkwsGj/NtRUN+mNLx/j5jwQNVpTBgXbpiQNOo0rDzu
Dtaf7duM4Qxce/bEeeYMa34dcG4gRWphN7JRB9EiSIhSF6VkCbkhaItaDMtI/wfKoxRbc5h9pAnl
7wRrh27jOVwxLl0jYTczEAXgnZX1GJxZBo5OHgVvH4panO+Gw5Lhx1kjML3RU/7SJnY8QZ80sxcz
mjWMbeqjPENa/d0qCzCDaMLV6NKjFvhuGTVRO5nUCqBNl7YyaDN5OBy2lpuq98saIzca6RTQaVAW
fBMHJjzbQkTDrYXTwBSsiuJKxdaCo5tEp1n2FKmCyeyUMI0BbTUxUWMVqeUqLHJ1tqopsKf6CXow
jO5dOaABkQwtcc0zU+e8NHiQImlFKRhCaQAMAMW8OU29t14ZDyedtTfG8bYAyLCCHcv2WMnmlqVR
HNWXgrN5t/gET2b7enq5k6kyVRwmK7rbdRTtbOBEOO1egSdPovF/cO5WRUGZgE7LTCSDUbMM54I7
P/hwHlqJhGp7624syQxEvYA4Da2n1AIl09H/SxkJBkFIKGFbzi5sYMtyg9L0yiJolT7XvSxDG7fR
3jPgBWbovFf2nebRYPe955SZXaZ07Zg2nB4tsG6b7hoH90S4gsm005bQwB3vnM8qagyN0idcILHi
b1cB9PCyH3oye1rhyCWC0jRArD5vj45TrDJ0O5HRb+VoWZwGOo8Nj5Kvli3I925K2FU59lK5bVjE
ZIP1PqYe9+oqeUhxEJ1mu118TaAWsEaolXt+c0ke4Q0UqT2qbRthBUKbXqYY1drb2FSxXMI0Cdva
muC8gG6eBHqxBdrXQWybkP6lwJr3soOZnyXgkpnVjiYxQ5lG2MiTOo2o5MhVR6Xdtc0jcE26Nr0e
p0AcgTMf0JguJjfb8DI9uWNSGaI+V9LIaJce18mx2UObbzeGOylBZOusPubSFgV71elVZz/YHtm4
k1y8sgVtF+aeJKncdniGNJev1tycMhiedVQZo7+kYLztcK2Hzetem0iKApxOUQwZdrazXI+rTVRD
zkHVY+c/zvHsqGzElfbdXJ0iYOg0dsVjgVu3Ou5EZAQbV9wEp6pAlmQUSTLa0aNOMsy5JR6ddm5z
SyU77lShPqQVQosBQvRA6IpflSNAZr/h/KrSLNv6vKUczRZTbS6ylkPUqkiwtd38NpFoisjA9sCD
0JjQAI6DhcyJWrswtK+D9FX7bLCCrMqrdcf294g8TGMaGhvSlZD1opp+QbpSncRMQbzEgAU6WN8q
Um2WahfgMB8SrE/yTaddAn6pg6COgLlAS5tQ484DQbImi3+amACwAaNrcDgwgQTBWkOKiPAkCSr1
GI4Miy+piPltq4MksvL/Xr2J2k86TY6fkQhuWVox6SBuL98tHQV4GOXoAWwPFsCNvlK96e20Orfv
DTRl2n78sN2/xQcn19fXlZQ+Gd9c34xuWusTkMv2KF4sFm2opzgroELVnG9oWkPSg1dAWsv8xWTc
G5u6FaYYsS+KHtirgBxR16ZEirz2zVe31zxkpACfsvDNcSJEwae+j76ijbekdAmLCsJl6KoxPyUB
97/+usLs0e97Q+/c/PCAWnpf+fEc9lX7zZ36ziGNsCt9iNcg9zfwtHTmm+G4sgRAmQ+FAY0e4QH5
ALgR529O7U1Afi9M+nP/I/gTapZ/jQTyF5/u/E84+IkI83i7Imnk30LfRRz7EClgTldgqLBwfV+l
gvsxlFs/ArU+AdGga3+tHm7BgKlCEGLuwjOWDSUPsQtkZoVST2wEQOzXkVU+DJ3uzqgLe9e4vMg7
PAFmHTVE5C3GqX0AUh9KoalaCXX13/KJ0/ngAgwJAvOaGKT4AULQp0/n2gReRW9PEPDr0lvlEEjR
4gGqwyKPnM+52u3fZitwGyB/Of5Xh+B/9UL80KPA5n+SBuNDNBg/QwPnc8EksY+gksmLLeJOp+yO
UupRVa1SHE7nZnrXAIdFr75pPxm9Fbn9JpwcYMK/5gEvZr/LjDmUy6W63h9myq380+asGwRayNPW
MEJ7TbFHS3qIzQ4xBQ2+QuVy3m+n33Ur/n9Uadh7pkreh3+9X3x5e3n105ebX24/Xd5ePy/X/2B1
+i9S593lxx//fvlh8V2ocv4iVW4XP/9y+X34ZPBCRe4Wtx8X34cqw+eqAsSDMKgAV8BOxXehyui5
qsh7c6cGf2oL/KMIXEfRaxjodxE45zMXrI0TvBBp/xCke6jaS/zTeKirArBy9Q8N/gdQSwMECgAA
AAAAhIsuSgAAAAAAAAAAAAAAAAwAHABmYXN0L2V2ZW50cy9VVAkAAyfQelhx2XpYdXgLAAEE9QEA
AAQUAAAAUEsDBBQAAgAIAHiLLkpYKmd1OQAAAEMAAAAyABwAZmFzdC9ldmVudHMvZGlzcGxheS1u
b25lLW9uLWZvY3VzLWNyYXNoLXN0ZGVyci50eHRVVAkAAxTQelgU0HpYdXgLAAEE9QEAAAQUAAAA
y80vLU71zS9LDclXSEvMzElNUSgBsjLzUhQSFUoSi9JTSxTKMlPLFRJLFAwNDAz0DMBAxxTO5AIA
UEsDBBQAAgAIAISLLkowtW3jOQAAAEMAAAArABwAZmFzdC9ldmVudHMvbW91c2UtZm9jdXMtaW1h
Z2VtYXAtc3RkZXJyLnR4dFVUCQADJ9B6WCfQelh1eAsAAQT1AQAABBQAAADLzS8tTvXNL0sNyVdI
S8zMSU1RKAGyMvNSFBIVShKL0lNLFMoyU8sVEksUzA0M9AzAQEfXEM7mAgBQSwMECgAAAAAAd4su
SgAAAAAAAAAAAAAAAAsAHABmYXN0L2Zvcm1zL1VUCQADEtB6WHHZelh1eAsAAQT1AQAABBQAAABQ
SwMEFAACAAgAd4suSqWgEYpqAAAAbAAAADsAHABmYXN0L2Zvcm1zL2NoZWNrYm94LWFwcGVhcmFu
Y2UtY2hhbmdlLWJ5LWNoZWNrZWQtc3RkZXJyLnR4dFVUCQADEtB6WBLQelh1eAsAAQT1AQAABBQA
AAAzMjA01zUw1DU0UTA0tzIytzIx0zM2MVVIzs/VSywoyEnVC09N8s4sAVHO+XklqXklei6pZak5
+QW5QHa0paWZgZmVoYG5iZGFUayCX7BTaUlJfp5jXmZuYklmfl6xa15iUk5qiq2fPxcAUEsDBAoA
AAAAAHiLLkoAAAAAAAAAAAAAAAAMABwAZmFzdC9mcmFtZXMvVVQJAAMU0HpYcdl6WHV4CwABBPUB
AAAEFAAAAFBLAwQUAAIACAB4iy5K2wjTQjsAAAA/AAAALwAcAGZhc3QvZnJhbWVzL2ZyYW1lLWRp
c3BsYXktbm9uZS1mb2N1cy1zdGRlcnIudHh0VVQJAAMU0HpYFNB6WHV4CwABBPUBAAAEFAAAAHMs
KUnNLShRKMlXSM0rLE0tTVVIVCjPL8pWyARKKJRnZOakKkDEM4sVklIz89IVCoryk1OLi1NT9LgA
UEsDBAoAAAAAAICLLkoAAAAAAAAAAAAAAAAMABwAZmFzdC9pbWFnZXMvVVQJAAMg0HpYcdl6WHV4
CwABBPUBAAAEFAAAAFBLAwQUAAIACACAiy5KIY+9ODIAAAAzAAAALAAcAGZhc3QvaW1hZ2VzL3Bk
Zi1hcy1pbWFnZS1jcm9wLWJveC1zdGRlcnIudHh0VVQJAAMg0HpYINB6WHV4CwABBPUBAAAEFAAA
AHPLSSxJdUlNzk9JtVJIAdGZeekKqUVF+UVWCpl5yflFRanJJQopiSWJCskZqcnZelwAUEsDBAoA
AAAAAICLLkoAAAAAAAAAAAAAAAAMABwAZmFzdC9sb2FkZXIvVVQJAAMf0HpYcdl6WHV4CwABBPUB
AAAEFAAAAFBLAwQUAAIACAB4iy5K2wjTQjsAAAA/AAAAUgAcAGZhc3QvbG9hZGVyL2Rpc3BsYXkt
aW1hZ2UtdW5zZXQtY2FuLWJsb2NrLWltYWdlLWFuZC1jYW4tcmVsb2FkLWluLXBsYWNlLXN0ZGVy
ci50eHRVVAkAAxTQelgU0HpYdXgLAAEE9QEAAAQUAAAAcywpSc0tKFEoyVdIzSssTS1NVUhUKM8v
ylbIBEoolGdk5qQqQMQzixWSUjPz0hUKivKTU4uLU1P0uABQSwMEFAACAAgAeYsuStsI00I7AAAA
PwAAAFMAHABmYXN0L2xvYWRlci9pbWFnZXMtZW5hYmxlZC11bnNldC1jYW4tYmxvY2staW1hZ2Ut
YW5kLWNhbi1yZWxvYWQtaW4tcGxhY2Utc3RkZXJyLnR4dFVUCQADFtB6WBbQelh1eAsAAQT1AQAA
BBQAAABzLClJzS0oUSjJV0jNKyxNLU1VSFQozy/KVsgESiiUZ2TmpCpAxDOLFZJSM/PSFQqK8pNT
i4tTU/S4AFBLAwQUAAIACACAiy5K2wjTQjsAAAA/AAAALQAcAGZhc3QvbG9hZGVyL3JlbG9hZC1w
b2xpY3ktZGVsZWdhdGUtc3RkZXJyLnR4dFVUCQADH9B6WB/Qelh1eAsAAQT1AQAABBQAAABzLClJ
zS0oUSjJV0jNKyxNLU1VSFQozy/KVsgESiiUZ2TmpCpAxDOLFZJSM/PSFQqK8pNTi4tTU/S4AFBL
AwQKAAAAAACFiy5KAAAAAAAAAAAAAAAADQAcAGZhc3QvcmVnaW9ucy9VVAkAAynQelhx2XpYdXgL
AAEE9QEAAAQUAAAAUEsDBAoAAAAAAIWLLkoAAAAAAAAAAAAAAAAXABwAZmFzdC9yZWdpb25zL3Nj
cm9sbGluZy9VVAkAAyrQelhx2XpYdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIAIWLLko5AcvdQAAA
AHoAAAA1ABwAZmFzdC9yZWdpb25zL3Njcm9sbGluZy93aGVlbC1zY3JvbGwtYWJzcG9zLXN0ZGVy
ci50eHRVVAkAAynQelgp0HpYdXgLAAEE9QEAAAQUAAAAcy1LzSsJTs1LSS0KKMqvqLSySs7PK8nM
K80vLfYF4tTg5KL8nBynSoXMYoW8/BKFzNyCnNRcoKbUFC5XSjQDAFBLAwQUAAIACACFiy5KOQHL
3UAAAAB6AAAALgAcAGZhc3QvcmVnaW9ucy9zY3JvbGxpbmcvd2hlZWwtc2Nyb2xsLXN0ZGVyci50
eHRVVAkAAynQelgp0HpYdXgLAAEE9QEAAAQUAAAAcy1LzSsJTs1LSS0KKMqvqLSySs7PK8nMK80v
LfYF4tTg5KL8nBynSoXMYoW8/BKFzNyCnNRcoKbUFC5XSjQDAFBLAwQUAAIACACFiy5K5IrHQzwA
AAA9AAAAQAAcAGZhc3QvcmVnaW9ucy9zY3JvbGxpbmcvd2hlZWwtc2Nyb2xsYWJsZS1zaW5nbGUt
cmVnaW9uLXN0ZGVyci50eHRVVAkAAyrQelgq0HpYdXgLAAEE9QEAAAQUAAAAcy1LzSsJTs1LSS0K
KMqvqLSySs7PK8nMK80vLfYF4tTg5KL8nBynSoXMYoW8/BKFzNyCnNRcoKbUFC4AUEsDBAoAAAAA
AIuLLkoAAAAAAAAAAAAAAAAKABwAZmFzdC90ZXh0L1VUCQADNtB6WHHZelh1eAsAAQT1AQAABBQA
AABQSwMEFAACAAgAi4suShyVA82KAQAACgoAACMAHABmYXN0L3RleHQvZW1vamktZ2VuZGVyLTIt
c3RkZXJyLnR4dFVUCQADNtB6WDbQelh1eAsAAQT1AQAABBQAAADtlc9KwzAcx8/2KUKPYytJ2jRt
0YJuDEHYwVU8jB2yLp2F/qNNpToKvoFn38Tn8QV8BZNtDoWBt7lDc0nya/L9ffPlA8UQ0QFEA2QB
RD3seBgbtk1AmKcGK4qEG/d8cRMLNQ3zTPBMGCP+yJO8SOV65roOJB6CLrKpOwfDvOQBb4QHer0e
uMtSqcGXQP94e/l8f9XB+TAYSxUPwIZGDo8YRJaJob/OWMrBBZgG0zxbiXgQDAe3fFUnrOyDKn5W
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
IBfItjI0MTPR4wIAUEsDBBQAAgAIAFGMLkrC58UyQgAAAEUAAAA1ABwAaHR0cC90ZXN0cy9hcHBj
YWNoZS9mb3JlaWduLWlmcmFtZS1tYWluLWNyYXNoLWxvZy50eHRVVAkAA6nRelip0XpYdXgLAAEE
9QEAAAQUAAAA88tXSC5KLM5QyMlPV0jLL81LAZJFCsn5uXqJBQU5qXrhqUnemSUgyjk/ryQ1r0TP
JbUsNSe/IBfItjI0NTLW4wIAUEsDBBQAAgAIAPWQLkoHkayA00EAAGgPAQAuABwAaHR0cC90ZXN0
cy9hcHBjYWNoZS9oaXN0b3J5LXRlc3QtY3Jhc2gtbG9nLnR4dFVUCQADbtl6WOHRelh1eAsAAQT1
AQAABBQAAADsXVtzo8iSfl5+BQ8bE3J3I1NVQBWE1xMSkrq941tYds9sTEwQXEo2pyXQAHLb52F/
+2YVugCS3KbHsTEdIz/YsoDML7Myv8yqQuI6S0Oe545a/wnTWdefz6e8+ysPfokL8cdNk4InRXfA
H/k0nc/gtfo7smzrD+XaLx6aIuDn+HM6Xcx4fvz56vzuYnj87ngpbZL5M/41zb4cf+ZZHqdJftw7
/u3aHfPsMQY8xy/pf5qHx8vX+fGFH16Nj18JVzmL4Hc8iXnmfIe1yhJs01JLN96rHfjdRV3j/ZHi
phFXb5/nvH7ib8zSLEPtXPpF/MiPwGmZcOF1YwR+/vlncOsfyl3OM/Vs0FRm6khRBn7Bj2/jWUMD
1hHVdKQhQ0XUMU0H4a5pWKqmM11XrsbqLgPAgyoc+k1FehehrqV2kPkRYYSPlBs+T7Ni6yqElF6S
Js+zdJGrd3cVjEOmI9fGSOv3MNEo6xNtaNt9DVOkUwTwBqalKIpArva++l+4Oo6TkKv9NC0c8CP8
qDkP0yTKFWX8nBd8pp7BONxncfEsPFXwsJBQeOIHUx4pipv5+QOP1NuHjPvRGomuqoM4n/tF+KD+
ueAL8NRmlGd+nGiFvEBRhk8hnwuh9SEb/uZ6/d7A67nucDxWO+Ozj+Phx89HlfPFOK/H7ZfhzaV3
dvm5d34GFw0GN+Iqv1D1J732Q/SKhEswqKbRvbq5Hg+9y6vbs9H/KMrnC/WG34v8UC+5n4EwojuK
pp2qirjC826Hv91upd1SE9KZ6RN4oVXfMIWPfxensV/+UDPt6Tj7+qSOL/7Lvfr1b5ixSg9OikNf
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
pnMAUOriZN1TxUqYx5d0uyDPbeOn0p0SYLIVhuFM0kfCOGtFxard+algXwS69XmXkeH6YfPqkJ78
drPMs4KqOTC75iHA6jCJNtfk6k5/DlsbwRMDWrYBBZg8nX99hTlQOWBVmPvR1LacTjpYA+FOdep8
yWaoOxvZbm7Do454oG1702moE91NG6MlDGMOwgxH+irqBvLq7Tad3gxvr6MQhnV7h/oDMSp/IEwS
/Z50N5tiZVszZmHubodmHHZS53m1sbOyXL6VCRTjWgzckjZBenu+tiqGagtQFYb9O1adjBO7ZHS3
wkBeFXeCqj3ML2QFHGpXYwgFI7Dz2uPlPLUwvb8BUEsDBBQAAgAIAPWQLkoIx0S5bEAAAPUIAQBQ
ABwAaHR0cC90ZXN0cy9hcHBjYWNoZS9tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1uZXR3b3Jr
LWVycm9yLWNyYXNoLWNyYXNoLWxvZy50eHRVVAkAA27ZeliD0npYdXgLAAEE9QEAAAQUAAAA7F1b
b9vIkn5e/go+LAZyEsp9JdlENgOKojLe8Q2Wk8xiMBB4adk8kUgNRTn2edjfvtWkLiQleawkWEww
8oMkk82qr6qrv65qUq3rPIvkfO7ozb8om3aD2Wwiu59k+GtSqDcvSwuZFt2+fJCTbDaFz/rv2CLW
H9p1UNy3RcDf6cdsspjK+enHq/MPF/7pq9OltHEeTOWXLP98+lHm8yRL56fu6W/X3lDmDwngOX1O
/+MsOl1+np9eBNHV8PSFcLWzGF6TcSJz5yus1ZZg25aaiL3WO/DaxV32+kTzsljqt08z2Wz4m20a
JtM7l0GRPMgTcFquXHjd6oGff/4Z3PqH9mEuc/2s31bGEda0flDI09tk2tJAELYMhA3MdGw5XDhU
dBmxdQPZCGlXQ32XAeBBHU79pmPUxbhr6h3M32OCyYl2I2dZXmxdhbHmpln6NM0Wc/3DhxpG30bY
EwQbPZdQw7J71PCF6BnEwsjCAK/PTU3TFHLd/RJ8lvowSSOp97KscMCP8KfPZZSl8VzThk/zQk71
M+iHuzwpnpSnChkVJRSZBuFExprm5cH8Xsb67X0ug3iNBOl6P5nPgiK61/9cyAV4atPL0yBJjaK8
QNP8x0jOlNBml/m/eaOe2x+5nucPh3pnePZ+6L//eFJrr/p53W+/+jeXo7PLj+75GVzU79+oq4JC
R4+o8UdRTcIlGNTQ6F3dXA/90eXV7dngfzTt44V+I+/U+NAvZZCDMIoczTDe6Zq6YjS69X+73Rp2
S00YCYEkfDBqB3Dp499VM/vXP/TceDzNvzzqw4v/8q4+/Q1HrOZCoyQKSncNZzKC0RtBTIyzfFoe
dDTvxh3+cnb5Xr/1h7eOfgpioyC6l6dlN+dyni3ySBrjYDIJg+izAZcaqSyUMYbMc/gvUjHUvS+m
E017P8nCYKLf5oGKy8V4DKOwkwOifC716D7P0myS3QGiySpSTxwN24yZFmPIol3MGEa27g0uKx1b
3fMfVUhY4/HYHjM5jkOq33rXEE5pCj1sjSOMQh7xMET6cHiu/xKAkns1WPpXl35Tl40Fxgfoiuzx
Xl3zIsiLJL0rlabyLiuS0sNbGgV5uUZpcrFXIwQBREAhu/oYRi5Bb3ToD0dHLY0ECf5SjdyKxnS/
P6EfgXJxd7ciCzP+jaaJsY3Ncds0bO8xzSLA1d9m2krjX5hmU/PlpsWChHsVlXEC1NtUYFNGv1FB
IxC3FXATfWvcwTTE4q3OwTs7hzCKhf2tcbfU+FznEGZT+s2+Wyra5TtKbYFfrMC0QgEs4T8q3k2K
yRPwXFHygjcAz2WfEwlasjy4g3c4DI5scQSlgtjWi/WFhMd4l769yrRqsodJfjn7O84LZ3vUzva8
LJe7sJXTZRihMECmvmznOLXJyFNTzC/ZvHAcwNs+0fl0O3CcGzm+LvK3ey9/99NPJ/prHVKuXYK7
0WzmUNs80fChqBmC/t6r9n2eLWaOEyfzYD7PImB52c+ihZpvz7MglnlnfWnzeImWWFzvLIpkAimZ
Y5n8RCOHwhMxlX/l1P/ddbijADCzpZ8epl8GtkCxvsdG0NxyRqmTiD2ddO9wgMB2VBH6XggiCBgy
iV61cxx43wKxdazEAbNFp3kYANiQqvPDfDCGYS7ExgcDld6tdBd5kM4TZeZt5mXTaVIAo2xiorQ9
voYh+aqMBwauqSJdYUEnmnkoFh4F4z1YolI/ZP4Pico6g4k6UboC2Fnv1NqWwwVbApxhHRoQMYrG
+wOiwlAqju4hC4esb168eqMnaaGAWGKrT0oozD7R7AOHhh2PI6S3XH0TfLlZZrGOk0JaNn7yJolK
pqEODD4F8xsZSSgpW/AW0Il3KZRGS5wY5s/OUuJSXCXmUzD5XAYSh84TByOWAj+LOIhjhbPKpTdh
NASsMq6O/lTFNl/j21xf+tIUQILoEGBRxG3LqlH3cBGuSoFVv8ZJvPScwneVLxG2+/iNvpPM6/iB
yN/okwzmLPXyphZKIPg6eJqARlVdVt0A/LWFpiJ7ocgeH2qnzYIX2rnqg6U9324MI3UuVujJQeiD
kIq4xkM3behyArBzODyDDpFuWoZSZ6v9qkHVbz+9rMuUAXZFXir4YbjCrHnYTBYzQfbPZJsxsLSj
s8fQamIl7YkN2P7AiY1RsZ/H5otwXiTFolgD61ewntSCTD5IwDnVLGPz3ZRGkELFD+rimAcY19i1
yt1KjXPAVHbJRr9a7cmB5iscKtWot1+iYADCPAiEZYERNRDFxuDRyBvcLNLzLJuVSmDQP2RJ/Kqa
Y/TOBaSPFYbhBqs3KKFYyh1WHYkSP8gWaVytWGylu4JJFIyZXmr9cHl+dXU9OhuOPPf8/Ozy/ejq
w+3o9mrkjm7PLvyb8nDP9X4dDT5cerdnV5ejkQoUVT8cqhQKQL1maj8r7VBORhbXYC49UB6Jgx3y
5gqesDWCDpMXWxbUADV58FYGIsMawQfKMiVVddtG0nrdSIEzNdLgqF/ObrNsEmaPewqUCKFIUK6D
HG+RqyVb/6EcFtnsLL1QS70glXKN0EOlWuZYXxLzpXysxKp8K1OmM0o0wg4VySGRGvUmWfT5QwpM
shZ7oUojqJ/Ok3lRof6UFPeDZFKUMWCBlxujGphsXwZb6rJIEMVjUx/1r4drJWUwmZZGzENFKeoz
fr8c1hf7Rmkb/PKf+WdnoYxTi+BOUhoD/FqVfX8oz3GmEetACCi20RaEfJEqgaYNXWEfJtAMqGnr
DXGKSJSLsAUhCONtkoSPs6gbP8EH/bkaWVhmiLEA0oD2oyz8VzSaVrIswTWKDhMVjMNQ6krSUggT
TKP42bsg7fpFoLEFeepKAAyozmYtWNnZnU4dTCGdpKREB8jiPfDqfpOcQgjH1SqG8tW61MdOWbuD
gHl5W2AEGWsqJ02ZTVGccUmAU9QSxJ9l+1wWi7zsA1TW1Btps2p9oCGuLs02qeCWra8ajr78WX1Q
wohNyxr4IHEWZbiysyGLri0mzy5qKJ8uTxrTIIViLP8KB8lxoH8u16ZGf2bzhmNW0nf0Wj2eUCRN
bHJ9tGo/mt7loyR9yD6XxIjNlWteLpDHUdwSuHYQJ2sH0X9cSLB/nMX8H2ex+Y+z2HLqxHY5LKf5
28167SGuYPHYIjAvKdqY342KPJjt8sJLBNGQrgUp4uGtdc4XJKI2lCr1pHY9QUb311k5wRFMWsuX
L8mVuYx25MqUm611yO+QKzfXFf8y72FQFwiYDRq9WK7tiHJZ8LBAFCLeBGKYxU+lmbhc3ztQEg42
ktbZhWmXC3QHhjPHelvQJpjtrxm+GKlaai6nX4KkGKlVu2CyK2yj5+dOO8CMxmisp0GazSdSlrEv
xGrMRq9fd/HuLKwhxUICEXUrKXac0QhDtXyfzJdTMFTsSvBonOWdTYPqvrjjxIu8DLW3teWjTavy
3Fs8eaPj9eMQk3f6u+WiTbmWylvD4b+Dh2AY5cms2BT4jUUPjpCUoR5OgwmUPY7ziwxmADIKIP7u
ZA3jIk0gixqp2ujtuvWwAEzRxaKQj+9+qmP9GouULeWyBed6ZzSaKqmjMJhLBwurfY/gJYbFQB8t
w8BVUVWFDlcmlreQ7LZGits3BV6gkXCENxrd+VMa3UK99bYBolof0TstZK9OOifvVKyoMFnySYlN
WHpnLap772DC2/cIXgKNofi7QPPTIn+6zpK06HyLuOreh2jda3iJIWYYVytMtUAaLYfXaJZnj09v
a0NvAWLfVjBA77chfvNNDnwF4d1ZL40JqnemcprlTw4xuXVyOJPupXfx/egdo+9L76KVq3y4OVd3
4aun0qqV0mPO8vfKWXY9htB8oiJkgQlJyu+t7uxU/Xmij+o3VJTKapkJ3NBksTbstiYmbCJN5d3L
YRVPoyrGylVd8MVXZTZ7BpH9/QaR+M45EkYwilZL8TrQZTaZJOndceD8zQbOXwnk2K6ePmxAE9aB
DwBEITa5WXsgYx0Ry2d6nSRNiiSYJP+W9byCcJiCWm3B22rpkdOTQydmNsY2ItV9w61EYT3rYSiN
O+NFWhJEMHGwxUj7Lv9LVIXqeQOl6ksxvt2vjbfmWPHd6OHgifGZORZ/Z3rAih6Uc9xFkamnfKOv
XA3gNA5NGDwzlezcj6IHVV995apIYJHaqoh68He0lGapWx6HRgAJiFUZWdkG005cPnJT3ZuMP4Hs
6j59WZxAbRJni3BSPUGgnnypLoPAv64gzTePix1YQbE4pKvIvw7yz+o2UVY4zgw+r2FBOvh0Np1N
yuBcPx1RXjOMspmMz4NpGAdvwyyb6JAsNm/EN5pUGWa7ibp9qO5J9Z/SYJpEnqrT1FMGteKQmBC1
nQ3E6tEQxA4trYIxiWPL1EuspfK1mT1VOzmqY8v7Z2/Ls+cA5V1n/fEAxJg3Ad879uFlGQsjieNG
sbBioNXnt7uGC1TBanBtgMt8Y48ydF14O85/jlC9ri2T/6DI8u8h+N2qqFA1GMRBrgR3TpZPGqjn
6priy24liB5cJH4LhVv/XxT+jyiTMDlS+JHCjxR+pPAjhf+oFE6PFH6k8COFHyn8SOE/KoWzI4Uf
KfxI4UcKP1L4j0rh/EjhRwo/UviRwo8U/qNSuHmk8COFHyn8SOFHCv9RKdw6UviRwo8UfqTwI4X/
qBRuHyn8SOFHCj9S+JHCf1QKb375yhsMVZQU3VmePASF/Irv3SKr+t7tREY1Bj/oGxCc8WofpArM
RbUVR0ng5PDvyu/tFvr9uoV952/zID1absH+BXhL7XK/3ItdV1+ulXrHZEaYFCeOput58Ohs7YiO
oOPycN+JaN+JuH4CY47lOEJIKYmTPZfM1yeUbdwkUgqr1D7bPsHKK3acoEqJnts7lKgBn4sGLhZT
MyhlYbQLsDqB66K4ECaDF2UJJnsswbSlxKSclCfYPiV86woWlO5KZvUz601v9Xw8aWnHiKgTUb4D
VukV7Xy5Nbp3/aHa197UfLXFerlX/nKn+/WVTLtVX9m6XEzD1Q8yYKZpWi9Jg/xJP5vCUJo72mpX
+8f1hva6oTcPQt+Mn9/AqFP+SIOhr3+lQX9ru3Z/YBFueMzFBh0IbriDvmcwxMQAjtmeid79/XbE
b1iOwx3uwKFyx2u4fvnbEsP7ZLoc4R0EljOXM9+3hWHbtmtQYQ0Mm9nM6Il+z7ZYn7vC22P5lsQm
HmJt44kCezymO/bH3dEnxKOY9Qk1TOoODEqJbfQI941ezx4A1/bdHjEP7ZPqXB1nwBjZwhmYBMZ4
uI3zXN4F0dMutEgQSjwLGdizqUFJ3zZs4ZpGj1OLewPLogjvR1vJfQ5z1aKB3BbmFvKQC6vl4Vau
sQO7h5CNhMUNYlPA7veZ4YJTDOYx5HN34BO0Mwaaknejb7ap4w/DUGzhjxHj2xGyD7hwsY1NE0K2
z/oGNX0CYdwTBu251HNN0xQDa4/T9yNenqxBxcCndhsqHKTRTq65lfPiZpGmMu+epf+CfELtM5rG
EzABd5UQrMYdp9geEM8wXUZg3GEEQ86zDR8jixKf0L7l74+XjYqmhm5YvrX55PmLmpYG4ballACt
WvprGONL7yhZw8VM/SZMg01Mf+BTyow+8plBmWUawKyu4fN+37M5B07o7bLqGcF1dHZYTXoNdHaE
iEJX35vmon9xe97Ls/Tfsp+rbU2V6xnpQrYM7u+yLlGkbwtq+aZr2LiHDIosYYhe3zIw8WEIDDzh
9lwAW/32zOl5EuYwFZ36j+DZZaxsqdnj/+2GWoVeZRImG8fxxqrlQY4wCxhYpbbL0zvURF1SgQan
0oFneB4CVsSeZ7iexwyLuzbins8Q7gPoxTxXTj1VV9d02Ywy2tYFB03e8qDa31Ttu99hymu0a8IV
q4+Aot/vExtjiF7f6wHbDWDg+T42TNEbCChDejBlbrvuusrOB6tRNz9dqtk9EJcnG/AZItvw4a8F
/0IWkHl0uFkCV28AmiKuftcDA1sAuQEtC8N1Mcx8CPWpZ9u+Keg26BraUupurOWpJlITbSPlWJRI
oWseLpL5ahMfAEq7HCD2BiYmA6tvDFzaU3kIUFvPtwAx7nk9gn3P489CdKMIShiogPeQW63pg4xA
wO5mTXxa04Rgl11xSYWqmJglabyYzlamYWF1cTlBWha37IGBBmWKxSDHwKYP/dAf9InHiefZtcDd
ktQAYRFzG4QFUbB07uN8Uqz3N+pg1mWAwCJeH3suM/Cgp2YLixhu3/OBoWCkWwwKIuE2EdTFNPTb
hG/rF6w9H5wHizS6X2WBesciNowguKz6oAbSAJIE4VEDmS5gQiZgYsg1OPL7mHgwv3nusx2uOHOl
4C+7vIlnd/NmG61pYLxtdRTgltW1MrljdoViXMKF6gDsij51kYF6GLjLp0C95oAamEFpaXIXJg/y
rLEbybuwe7XzWhPiDtIYq9m7kWjMZbQof1ysY5XTNLcotbqKeAG7T3zOKQxFYgPbUiIgtaM9eOnh
HuQaFhXsefIYLqXv4brl2TpuCLFt3Bxx1vK32ldWfnTXuoBOuqhLiTKh/KCIBVsWppA9exgmvBK+
EJ4wvL6LfNsnLkzOLyHspa7dRixPNmzA9cxpczBYjdQ/F0EepMX/EXdtu3EkR/adX2JgkXTeL495
HWst72hGtrFvRje7WiZMkQJJ2R5//Z6oZlfXrZvcNTELCKTUVcqMyMqIOCcisuv2vjtaqycgwRvs
MTRslQwyoiKoWVKxsqpdUsbbEvjYWxwyGL9dGW8mzHZNmP3Rd/XvCjvK4cghB6N9jDUwCRfBQKwN
C5V8howua4torN2qHKOhpiIEtSJCmHuODz/2nvwPfWaPXnE2xo4mKI/9llmNDYvjsmNRKcOsLCGa
UrMI9i0PczHJ+mNd3DZTaLemUDczrm8I5SNSdv2J/g2leK+VtH2Art40xzMrrhB6BKBIxEqzaIYj
GAbs1svOcPO4XfcNEzf4aSrL+K7+0ky//Yp+G3ncwH1i8HMe7xwhQh/NpfIBqkRoUcnfJfCqCC7b
Ui2Vi4wndVmfH7919z98POOn+9tvgaLXhJiqsLErKuztHPP98nX7MHzhNQFm8iCeawqeeC6pOWtI
eBCsJirzJkO1JJuv8Iw+yzchvvEkZ3zh+JaJIlKtPAt8eLTfr4TC/kL1rafnzQmCQHv4QX1A/aXW
KIR0zMFU8FAaRdyEHxVRKid8mN7kCX/49Kf88PXbLdDWSI1zQkzV0HxFDc2PW+quD8GDH7Lm2vBr
T+AfNlEsN8wIAQOxWmBDgfnW3JRI9MJNw1e90XjEiSjW3ixFsW4zc0cP2IhfAKgFGMDBDfV/gUhW
huASoHTKBTw2OthsEZaV6rCSscFNyv/zHj9cmwjs1szRbbfHteuO9GxYPlq4VoKRhdIxqWamMgJ3
6N9IKooAjTHZ6DqFfrNxJjKEsBJGtht73Ibt4enuL7tD1W7wCfZakh2ZRok1CYRfNBA+xIIdKcFy
RbBvgZIvYSrJcrSr6bxuKczNTs/874Fb/xMuF0Gsf4SAc9eCLCKWVL0yhoH0GqYUnl60ADkF+6tY
AVKZ9asYlMZef4jHq1dTAZcA2nSdPC7h7c33G8rQxIEhGXGNP7SE8KohCW2Z8ho8rmjAyIwfraog
iikwYzddwtloY0ksd0s+Y8UijXx7/7eTen3cImArBQkk4BhhgRCoOfhGmzysQTmGXcVjUzop5d8j
bn0YyzCJ0Pd/m+gkBF/RSfg+p3kq+Ozun552g5OUhrAu6QNHgiUOHjiREiPCZpZgIswomBqwOpBk
WXUzy3FnYoUVsfTc2fxA79jVB1zQ+5ikA1cKbEElVSlHHUHcHPAO4JetIQah+cX1xYjrC4cLUwm3
axLu3dG7/PCxr0QMRi17agsO0EBtFNwyB7UNHAYEwA3W7lUDbecw7PeJ85P5J5JrtSK5Nma+tt19
d/gW283d55eXKf7m4A+kCr02Pntsa+2ZloHQJfZ1yMAv2roclEPUT+FNAXI51ZmHsLxxqppZwhdr
zIDA2sP986fN4xMC8fG5GN9nfKR1McSqmRYKuxlhH8/EKUSoVnKwxvrWLqdTTq/seDPJjn88s9mO
b1p6+u2K0BONg9dLjYO/GXjKw7df9kAep33oyI8TjXYps6YAapTGj5QsnmO2phVOX9ku17nKZLiZ
JEt0b7dmDh37Xfnhx7GHVNfqgBS05b1wyhZDKUJdFYJMFCxorljJFqza8yD95czWYoqJAzxcnIi+
7Vac4A03x23z6f7LKUHUyyjhSZwunGlt4GxiCcwLYCxALgk3I7B1/g0ZJ49/mHwsshO7pRE7ydVR
5Jv/+I/N9vYoteKuR7RBytoSzJTXAPcoTGJeOs6qFzFrpZ3MfBoPx+NMBJB2ufFc53fz/Prhu9+P
2R3N9bWmHYhYJ0SzlZXiwZZpKX3GDsw2JCm5qbpPTl+0tzO1u/xy7WoqWbcibl8DPnCzP//h86e7
719u72e1ihfHDbisogyRFcotqAAO7SsvzIZsHLyDTpa/E0Fbl2SqTf9G9oU2mx7JnaLr4a2PJ1eH
mM17bYr2qVSlGW8O2miws8hbAwxxHtAoeJfzpbA9Hngi2F4sl9lrc7NIuu9uN8f3Uh3TFU6Ja2Gu
Jaf9YWFTqiXHEn4zxQHffAywMq0Q4JvUudlXMvCnKc4l4k93XE3l3a0o4bczJcb51OML6BAhtb+m
fFr/mxSpoA2NY+O4JihGeiCSCsTXglep6Jp9ekuMXJvtPIqe3znVzy+ZHKhKt+8OtvD38vnTvNxg
HJfWcNhr44iPxXjKyTcWKnSTHleT+rXKDYN4V1MF9itabeblqqdvXQd++9jdPHy5v52mFigdij3Y
Z0NFbyihmhg8nl4DQKJavSFeCJNJ8PTC56xNfQ+8/rmX6uc1oSb5jvlt0xW4WbpksJZw9AoEJH7u
vtw+PT+OnILpt2l0vIBPUuKyKfLHEVBOBOidAtX8a7Di/xH/TMWeaG2VXdFaDQWe1Za13wDlXYsD
h1GliNp0ZmD44NkxNYSi3CftRa61BmPCJWc4GXki2t4tqavfb/azLVm67fcvh1TWE0lG7kP0uXip
opbZAIYGgAuFsA+DqxI4zbtIZUPztgzUeIb1FR/fMdVhy1d0uBEDwPz6bcg/EZBOUacmsXyuadiJ
AsMNpThmRcihJq9qbjOIMYwwnjjwm2WMC0LM2fZB9/xwv7/98vLWDYooQvfl+550e+yHyjVW0QJh
YEkpBRUNaz60xGtOtubLBZnlHOfykYsbJzpJtczABGntjG0PbVdKcHK+3FfRZx4tkS1VWmXR+L6c
75QyqbqqL+3QryvLq/UyUoM36JUgd7ZKZ2AxAHKIAo1yZZQg9cpLJgtovzMNkfT1kuTlSl2c3XM1
FXdpXyHYOZOlijv+96bPxRwKdsHJa3VIsmnuMuUupKbqkTBU5AfYkKUkriXHx+9XVT1Kcr4zgK5e
TdWxazqG2XP6a3f3jfY9uBQl7PoaiSlRA+kxnjJInonUzuCoUzFwk0vTzer3iF2/w9TrN9GVqTJ+
TRnq9JuWtG5OQQRbzvchmX4REC+1llQta4b6HhJpJYtmUsGm4cqxs9+UcxjPcYYpju4Ya7HhZlmo
3HDbHSPOx9v7bvMY7750mPxU6bGyj7StVaNraaxx4CeVOZW2dYRPjy4lyvXK8ishqRVBp4quAIqN
MOIIFGcvmIJ5eUmZQXpOwIRKFSkZ1cIpj56x+2RmteSatK3axnbJZ60ksDfUXbcijzrGonK7+XL/
8ETvZuqenqgP+PCq+pN8feeZ1CrZhC0jqD5lQIJB4oB3TJR4SAhZfU10FKEujzsRUcolL99I5Wc9
oh83918icPkvT7cU8l+8Uv+bssRYKSGkYpHaCJQ3CPsOWwRxwBRtQKKdeXcwNhbpXL/H6Y6p0mpV
6ZtjWPt889h19z93/SvBX56FlvZakz2ARWQXimDaOGopDZwFbcBFU5TA28KbVqaPYzncTJrdijRb
caaHYz+Jbn03hxGyb12LUbdSOKAMdRbwGBkcD6KdTSk0gLHG3ZsaOV4Lccv7pgrtlkhoY6w71TJv
NiNPY4PtKVttNnMwTGZa9ZTkS6DQ8Ds2RKNyzcHFWf1oMtDVdDa/JsLccY+D4VoPUyXsQtW/miv1
lmiJjS0LTA82p20yLvl/M9qO75ipsLJJzbabt8hUCM4p4OBnX/LSQToI2jxtAm8Ti9pw1mKWXmAf
tPiOACHWM/0ydarLdsl1N9aqmS7p7nv3/PDw/FcqkuhDZyb93vdtxdzJCgfDGqAOnkWGk0lgfEGp
kB0HpTeXGd+HH4fxz3WDDDdMpLc3y8aWjRN2lLscdeTJQzzxLSvASurBJCauA3hFzAaQ2AK/gWwU
oRepy7WOvI3TZmX6wFeQb58i+vAj7YhDilq70LfVuBJkBgyvTpCDJkBeYWQcgCs4GKAL7dVN8TL4
+W38csNU+JXM38ZtF4b41+/3/UnPw9RUVHYUYGyf/S+uSW8yA3+sVIREAPRRMeOl1UIZRMD6ppTU
dJIzikxvmiqzUkPDh3OT/GPO456mZmoFRlLwGrT4dBohuFSZlDmBKIkEXd4iPoZdFxkXZmKuWJvb
2VmGYfN0N/A2qagRozcz0UioxkRCJFFNFJaiitRPbJyrBSt/MbswjDoVaedWRNqLY6rn7l9fN9fm
hHsIOGeuTBAJnstg2YgAx+wF48VZrlTMPM8aG8aDTGb32xVcGDZD8eGfX++AdY+zy3At+qRzisVm
W1hphvhW5SxaKQDkjS2tCBmdmDXVjsa5ms618kTCfk5eqZL/dHS91CPe7drtXffx9umZErV91xJ+
UbAURcIsXGKOGo+VNABfMsDRFB6VjF5Ikd/PzU9lOd/Tfrpnqv5+s6b+dmisPmydLR0DfxpgQa8m
6GwJxbBmgWaUgeknxR0YCEBmlhoGZC7txvGQM5GWOeXNRqiZjdATeb4bZPKKKhIkWA68xKo82KkH
WfUiswjox2S00SfrnJX+Il0YDzyRrFvhnPiwuwBdrtvhRcQEzSVMWfCegQ5/pwblZpKLgOgpw6JV
i4HFkDwrBkBLVBFceMdu7KM8Z258uTpRe++WeTv68PhA/tb98vXLgMbloWfMiQxyCsBIiCCDHSUA
NlaDz86KZFtd7xkbjzUTwq0JcXN0U9/v/3F7P+RklbkmkNgsCCL2IUNIp7xFgLNMkIpaClpKIAh9
//RSjPFoUzHCCm/cw4lMeey3u83z/uFxyL45Tbuzz8OGGBArgZ2dI9+pFPPU8GKzit5nneDML6aI
JyPPZNuuyLYZbHn79PWaDyvUH06oAghGw0A85a2M0yxhyZgppsWUnQxyxl9HY0zn3qwY7b6zM9P4
qVCNXlBaWnHZt1xXOpPGmfS9ixQaxgqm2rws1CfHbX3/YsFPZf2Wn8pYpy1Q60KnLQ9DX87m+/PD
EBc90bwQQrWCN4ZQneH6gYRiyZGZmrkOyZrS0nQ9T2NMpw5LkrQVfmhg/89PctZG4FqxUiEm10Jn
ER0dqXWN458i21qybVK8UxvBMPlEZLnSZ7WVak4kft89brvHhyfaB0cYJpJ2Wie4B0MVcV8lMI2x
rIK1K+l4k/UylzsOui788epEXLVSxd8qaulUr9QErmv85LkU/92f8eEv/SZ9tqWIqioHJJHZE7MQ
MO7q4cqjhi2VoFvLb8GTxxnW9TlenehjVrqUt3a7my3/nz6MU/AHJKyV7QNRjCkZaR2oCB07oGa3
BBtg1VqTSvSlNv0W6cdzrGswvuNqKnC3psX+mP557L4+/L0bdyHpnkQZWZsKlQldILkFFYWTDUwb
a0Cumw+TTtuTU52PNxXmZulPt4hei3B/9/D4+Zf7G6LG4bCi9PuFaboq4d0N9WjmJFkofc1IBVzy
pXn37t5tkOccHXy5PNF1v1v67xu5m+v6uw9Dq4V8qW/7l4YgagxXWWPbWzo5rxHiQuaVNeGTgiev
eBbvUiP4cLEVY7h8NdVErqnnFuUd0GRKij893W5v7/pjWQcbcaHv3IF3T1BRgJZDT05d/B6OHihN
yRSCT/L1TpLJ+Bf6SSb3zbTxa9rMmfspu9+XMek/jD6iT8h0vKJTWnTeJSvoRGeNGh09yjnZJKur
rwXgV2oIp+sTHbbbJZa+2fl5B/lP3zePz/86HMWHxLThNOHmvtqea4Q5WvquBjp+b2FYgPhMO5ua
LaqZtX6YMQ4YBj+DB4brE9E7ueRMOymHRsmP8VPMv19UazQwv6evObCA+0wFcPjUqGeS68iz9E6K
X6vvZSzh1UQLtcyn7dRu3maw+fs41X3o5BVcW7i9vrlfi1QKV40ZQw4h0Yliqtw74DntTYr1lScT
//xaCBnfMVahMysVBHw4VBDocPoAgo8H3JvgKsmWWFH0RRo+JxaCjKwKm0pOnEe+ThROo82E2K0I
YbYzDjv5jqjfKGr0opoXNnq/Y0RGjGiQqiaX4FJ5YTEryaQznoMnxMzjJa4wHn4inpVLMtXZl47L
UW/e4b31QwOXH1JRiQ62JKdYkAX+r0TH8JDBHnwIxVqtTRYXu/7GI09F2+kV0bo5jsmNuiDL7WN3
8/zQZyX5wTuI0B+OEC0YOmttTKVUWSgsCCcAxH02NtYatH+1x3IY/fWQ295w/+ymqdbdEvd0TsgT
3q8/zAC/l7E5C6NKqlq4kxhZ0K6yrHSUnjfg/vZugP84+9VUPrUm9FBM+rb5Okrd9YnDlosIqYCa
JGybJhMdZc5MZ6kqeLppYnYYfjTGbG6/NncY6oS92tfplPuX9phw4UIahO3CrKAvcIlgSdSgBUZu
m5auyFxmrHc62kSQsFkRZGuHUy/pY/y8CAUJCgsvLfZjgruhTGZyprAMOOFtlQhj9lcKBSf5Jmpt
/cqz3XozywtO0qLDdy8cnFdCAI6gweA8dOQRLtWnEKmI75W1LUleXkvDTYceC7jXm6WH3TulF37i
vw6uho408mvb97S8/K0/dpICUHllhcPNAqZS+gEcVEbTKpc+Fns5UA3jn7P5l8sj2QPf8gVXw4di
SCyc97u11RIc5DWGSlc8c4YlRmB1ASyZJx30rMJ9ztMGfrM8Q40Pd/Mu159BkZ67P992/ziVY48R
vw8F0nuhQWo8VbEU3A5LxOWFMVZzFaRRb6qhLOc555nm90212nVLrXZ8SILtbp++bZ5PB10NF30r
O23Z7DQwvKEOw0jJKId4a2oEeys5+6xKC+tnWaaDXk2nvlmRR5qVs65P/TdW9V+AQ+0bfTSzh+NR
ylZAWkRZBe+OfRoctcc1hnDmknSwsJTeg1xRhPp8FOP88djhlrGqwnSL0I0P9/Nq6MXArUS0LhbD
TO47zTiiGgU5L0VpOmW9+i0D/7vAfS4MB2GFXGpg7YCL/vihtVkYVg6EPpQIJhgRhrFP2P/wdi1N
jhvJ+d6/wkdfMK7341jP0URIXoVmR7s3BwmiNbRmusf9kCX9emcWQBAFFLsZ3g5dpBYBVWWSVfnO
L01WpMtciww2ZADz/o3U8Hn3mmi1PfEURNyJ6GN/f/fbWRGPjfVEOuKwUomh64TFrAbkR5eZDj46
pnyy627WxSo39Va0sb9Z/+xnFIaC2IERLIoqcRQllNF3fOyVt0RonUEIe8Ml9sfQzqB0zjFnwjwc
BBuvRg0p27wAHFKe1+zst2KR7vk6MPjz8TDcv9x3EnRgimL5kZJoZlD4tpPuqHLBRa5pM5y2YGC5
RZuF5Rs3Nb19i4n+dCae7/pzTrVAa3kKNrHugtZyLLX2QoFJxBOYKMqaTNKFREnfOBJ73voOlVpZ
D0dE/zgdS61RyZXD6ZwFcw3sMxERqgn8eqei6VRwWBKucxYvWg7nZWuilN4SdWvXkvi3Y2nAz7t+
GMMO2FOIAqr8G3WwFGAZgFoQDIsGiDadY2A+BskSfCSitFfVPJx2uCCUp6c3NbWboAlcj9u+0Xb/
/mH37fOxLyWBBYoCS5XB7iknkxoQrODoEu4M/NqxdESB/RODBPtdx/xKB85yg8tFJ6c3lixwpu2W
BWbmJoD3+Z9junrVNQduMPcezgPB1louNRk9TuoDsTwbrfUbwZqsKKipN7st9ZLu1jbT7n8DbPOw
m6D5sByQYrW7GaUvBZXBwA0CSWYQQTLB94+VmcY6xkiiRjSU3DLN+x/rHdbgf/Pzinw5bO8l3+32
cIKqK1B00r/9uymnxoyhbJm9oGB5gscCHrXgvHPaYs7fapIDiGpD3sxlGfvNm6+NzyquDmJrd/CD
nGEdft89nIvAprQjBxmdleoYYjjwiC5pNLQDVkQw0hIeViVgi0XqzSVvbb5fSRVwA/LHU1XomCwy
ArwMLoAGgZHXzBiiPGESzChHSXL0FWCysmb7WyqPKjqH262VIAg9F3r8z5fj08BnrUBVkcURrF6Q
Z7qz1AGRGjs0pA6dUhb8EBuiYauMZrXQTbUbZw0SxGxdhZ/yx2f4f6sUNYhX8JZR+juMtBOlO8+8
60hgjnjnjQu8JqBepqZg29RvBbvtG/V6cezyYPi2ErR4i9i1K4UFtQh2OXwZDHueDWIXp0QC1ttf
gVkSLzZtnJ7e1NRtr6zgZJuE+vr1/u7H3d1QGr/AUFNF4Bew5aRLYlVKDDaAaYWIo2BeMU4F2NqO
JfsWvsOShEsMnt+4qflpnAwu1oU1TTivKTdAS6us0GOABdg1zimPCDcWC/ti50nEJmUbgs80g5J7
88TbTM4LKF9rlS64bLF+bkT4srv75bhQhsVCDkFkEik4SaA1xsRHQG8wcVAjORLD2Kr+brFKvX1v
G9sPczP7V1CLj3M9OF7IBBfAegRRwEAemLVoKnLVgWsmgzWJZ7KK4S3XqDcfVGtz1YAaXP0WQIrB
n9uUGtQodeSuo4Ih4FmWnc8gMJJD6USVMEa8zW/deHHFz9bCFOJ2jS19GB5/fbr/9jjzgqm4Epga
/0Cv0ilLFBzYQMAU5/hbe2lsR4RSYJELBr/5dd2aZasTtfjCpabNzYs3NReqxdqwsuinaNMGD4sb
iVEWjvJIKWJlDLpTkluseAa9J8EEEhIh1rOKhIorcgeXsbIsrLTfUitv2epgnSUJXst/HPNx4ZAS
kCik1PRwaRk4b55j1312JXod4XgZHrgC+7MVZ2933eMWl2U/Pq3Y0Nu+VfxQbGAbPz4/3IK/UNqm
QPSXozT+hbKQJeyuVOCvYJMSuHqdQ3QlAVJCpswUe0Vrzetfqs2fHle0g0W/pd1wcarXC+8LoAD+
f4/nHlX9Dr1RocG+RCBGyVDPEq07R8A5jUQmwkCfKU7/CluzBtPYEFzzKxr21X6PuNSF3/v9f/dn
YDFV8EajlBHMZo3YwAnLxSSYWUR2QkTtclImsBWm2HKVm3qnrWMieiYvBmHKgfve/WfjxHPPEZuO
dzoH7LvmYOGQQDvBWXaCxhhietXMwbVfOOrw9KYmVbXoN2vIham96TPcVDt1WBGCUoUm7ZMEi8xq
7AfCigaXAiiFlJiLTKho3gTG89Rg9d2HlxuwvvtQ82cb16EfhhV/GAbuEfpjauNjUxsfOCveINib
IwSsYNBvWENkwGEQKcDZs0SnV73f8ALgYfi+Jndbg10+PIn7Kgj86en45Yw4OAasXSTRBQOmJhA3
XmFrLTgP8KMoSsH5dSu/4cKSK7IaxvBBzO2y/fO3x0Wkk4+AFJZKI5wgHSv5Pp5M5xTlYBsyxgz4
enoNAr5cpyLgYEyDgDP2zw8lCzA7mwUhC/shPPx8nU4ozSJcdUe1hNvFrVA5CClXvma1ynJ/KRoa
AT6c43rh8/FueBz+fv/rcHf8c4FNhlcE3HUTFNaeEAWaLGg4PyzETihJNLUgb+KKkPZyFUWyETKX
4MGuDvZ3w/HrAUFtlhB7MnKwAcDtNh67h5jEgTDg4OHwG7DoCKjZqyJp0+KXOsfLw5poo1tE2zUg
xNDj2KB/PMB/4jSHiXZFT8XcNBukGhSVxUAaWAgdWIG5iyBtmBaKa3MdPm210UXBsninYkdtoZKs
tLeqFKXXbq37FNC5P9WtTn9hTApFvAWBqQI2FxEJVllgrCPMGMfA5R+R8q8yc2CTy6IfHlbE7xqa
S5aidT15IP3nOUpstBzzYZg9F+DJos2ItVQGPXEJilQxHC0k6IV49WK1moqeNKjo5xhSeP9PnIJ4
1uCnWGqWLHhsg/FcKXCHLO88TQrHe0jDlZae2n8xllolgVaEVEzs1VbJyP1h2Bzr3UP/uWCp4VQS
Mk0nKaeA4kk2ZgTy4gq+XJDiGPSjnptgr4oMX9+7dCLk0omfHldM9nwb7ZM9HJhhP8EUPgz9wx/f
zrX5nMtz3VIgMkewJyWiuCLiHhjzYN/AiTHCOB7oBWT11aoVSYdtp76VQ7+pmns+HO/fPU0JHYf/
tUgg0ckBLO6fJslKH8AxAkOdW8U6o0LoiKOIVuYINy8fquXiF3zZxRtLZkA5b2WjomztOwWcuffT
gKhyw8MEL3dO5mqKnjkBkcq8BIGOaoaHMuEL/kEE1VnBhaHxOsCyxl4XBEzjzZo7sWtwJ9blZT/s
7n55uP+tGp7EogGaHaalMF7rPXAT4M7TkCMJliQjriqPP619ofR3erqiemhQfbu+2Ptd/+vztwox
GOxHMcFBlMwDJyIhQoK1FK1kmzrwUGzns5GBSy8MuUrK+9VOSw7GZxX9jG3NFvxwfaaKCY5IYoVm
qUsJvUL0cQYqViCmA7OYd8BmOc5pYoEaHv/fdv34bEUqa5DKZ0Xw8RvipzarulQGU8AR9JZQhRow
Ng18350n4E+JFKn3fxUcy5rKmsVt13r5cBNS7u93JXOFN3qcAwV2vNHOd5FxjIVIUA/WevgHpwK+
JUwfvqIeYM1LtgE8qug0DZ9Jmb25HSZr//7rtwcskT/HmUrzIRhlWTAaO0oRbF+AAHJYHkl98mDp
EsfJyvfYrFTTsd+36DhsGlKXTULzXBFWyouKVI/J65htB94/YhzjpAmc20eoUsawnEl+Gcdmu0FF
537YOieq13Slhn4cHrCBcHfXD0vcmJOYIzoGEzlcuNLHgZiZcMUQei0Iyr0zgV0V72pscyEuvn3x
puaAtdhadzucJ1/O9WnoYiQGuiuqLmeH9URg1vpMVWdz5OBPe0GuU0Hn1V+bu7mivW/Qbs0pCgaH
7v7Lb+/seWgE+s7gj4GhYjpqsbsd1D1of5DZxDNw1cD09XkVYa+XqSnYkQYFu/02xv5xd3cotsjG
zZFMK8VwWCA2h3Ks+3ZgEGJAkcDNiiwlc2VFzrTJxfj69LxiYei3Xr+63cxBRLyzw/BUyroe+5IV
GoMoY6FWMoqqTED1ERcQfQUNdROACZVUjNSF65xNzNDF0zaXsz2b125q6lssbTrJR4uxeE34F/40
E3gI/huZAj9ZZO47ophHCwsFMjAVEAtQREKieB0Fp6z9gsOGj2vqTUMw3+7Xwax4HKeRP/zxcZHq
KIi2ckpzEIajpRgiNGFLDALHUMRGkjgnJVENSv/t3I0tPRd+us17Nff7FveHxoAsrMnYHe+aoYOM
hR4a7BoacC6gj+Bvo4UTdNJginkBDsmVd2re5uKtmt9YMgKbb/UFfLjGfnicruwpqobF01Mvu1PG
w6/WeW3Q9yUSvCmHmiOVKQk2+xeRFqqVV6QNDdJwQsy+bkesThYb48FoinkNsp3CRcgIqi6C6AxW
CyXw/RDbjwb79vnfMzWXWhNb50mTxnnSZJg7CH768OM27KCCTSrgJFeWEXIpqc4lb+CrF45LSjzV
7i3DDgsiKuL5FgAaPrT0ZBt9HqNv3e7xbo6KClmwOkr7oTU0JkEQSga0MldZdz5ZcHeDcWi+qRBX
hajbFSuCGpMi8cN1icfv3/p3068BHtful+FrGdJ9NoMilh07FbsUUedhgtLLaLvEueMe9Aj18hXE
ttXql4Icq9dW3Bwa3LC5j2z/ZxmJdE6zFrjEBCJVmi4QLMg32NMA16GjGoM6IXguVmHeapVqf9VI
pGpl53jzn+dYt8Ls0Rhk4QmcY5Y7YXDqAjMazC2CgyZNIiIKol2oCfizFezWqmG6aLCeZmygb31j
XJUUkcKeqQPFgv0IoE6MTQxHr2rGMji/pm1lz8vVRPSN86Q3qeSpzWOe07s8SiFHa4wSmHvFgmYK
R4lgkgqMfiscinv6WqFXtfjFmq/qrYqNXcOH0buerNiIx8df3cP++PQw93bqMQ1VQp3SEgbfp8Rp
TZxJCa44GFQ5pii9lJy80uG9Wv2S9q1eqrjYtzTWXrbqt0ppNP4KpvQWjAVcYFsw4cByDR4R+LLy
YNLGBI6isAIujRL2dWimsvJlc6k8rqmWjUvcc9WADSqN3+1yck2CiwJbQLLxWBUNXq1gBEeKJQrm
X2CcXAcU9wpMXEV737do3zTOw9lzzwgOOBY4qhENQ1nmacodAhnBaUexnkAsMO+dBvkOuviqgNm0
+MVTjw8roodteyt+OBs27z+suzhiyoYGxGyRGa0xkFs2St5lpqzXcObVK1H867s45s1XJPctkvum
Q/B8d3x6HAPIn+7GMH4dPTZeMvi2Myv31OEpZwZ0KuguzaImkr0ePcaVXwgd4+MVB42TMvDzWBS8
Gz+sUHSnmZVSEaAq+04TCyeFcDjWYOEAA8Lm4HUERfx2MytrKpZMGL7bSnsjOGshfNWDK8ceARxc
OYJLU6d8pgKrLnEKAoO/wNTBflfGvA2YVUtXD+t4fXzl5rWbmgPeYmsDgL+eCTHWViJw3qgFRj2g
vAN5Y0kH4ghYk2BmG50RfAEuu6I5k+vG+ja3u3JaxdqjNkLsGyxu9DQCDz/DVf3h/jB8mVrt5liR
CdQ4ARYoTlXhweNPFkin0R8Bu0ETR6/ha73HZQjk5Vs1N7eNH0zTFqT+VKtPT6k8rhT8VQp5tGbU
O1TTlOBsHgb+GQe5ECR4QRJLzJ1/VWW8UB81P76pydyGl429Xftules+BuJPpbxclSjB+EfJvHiX
gy25aYUHLnaegjdndDSg0lVUgrxdmOBMy0tJg80BtLeNA7gj/SpKDGZNP5yb4ueKz2Q5hcMGeidh
cYanvHOZ586BTSJVzqiJXvKlF+ve1BQcGmRRcxLLv/6+gMPYAFCAd2+ps53JODvdRj6GlwTzBHv8
UqDtTqzzqhUxe7UN5cKH69DJl/tfjnePc05xvqDWsyyzRYyzMlkPvh6vreki80ppD4fjuhkmZf1X
z8GSiguJlsUbNZ/WNvi0s9v20w7srLvzOZiskJwkNSQyTFyUOCsI1gxyNmQumS9gIPyNrJCaghXx
W1PE9INqIKI+HwsO1CR1CrYyxciqgnNL0FSlQYP3pUIns9RCg5PvmbtW7X36cFnsfKrK60yrXs0c
2Nq9+eH5y9Px6f65/7zJImNnkDghE04zapnMjuFocMxU48AtBp50lgjnSpkgLip3Xcb38rZV6nf9
WsXiwTRUwmGYeyrdz3kM5M4lX9MdhhsbPdggwhL0G8DKsswgECZNXCWVZIz/IhZPdbJqOmoWGvXx
5nC7hgic5mo9/nH39Hmo0kY4VWv6kcY/UMnR6AhWycuEGR4GPh0CEnTSRs+wPC2rt59wMNojH7cU
bo2W+aXlV2FZw963bGPvLzLCY8a3GJr4/03/yccwmhGGMoniOeOMbskUKEchC/YGjoINUf8lgCLj
sxWnhwan5xEn77//tB6QGLWTFl2XxMssIARQRjBCZiihylsb/FtNtv20PaaWbYczW8uJPhzW8yi/
DAiNs1RRPusUPZbYS4YiIxdrUnQJwf85BTfH2aub1wvuzuXedXx8U9NoGoTrw8W2hw9/K1Vg7B2Z
DC5tMYxWprhJYsuASotzfzj1KMhBmsMFc9rBkdKvYN2VtS91DKyKuoDIoUH57mw8TZkC2shCOBNJ
wOYu5tFsp6UrD3HJPTFCc7AR1QoTZbVaRYmgWzPOCm62w0i/DD//6PJZNGEMtSS3JuMJviAFrqvF
wDy4STEhMIoD01VYHxCfiVxXHHra6oWTAE8rJlqFgHaP5a2bPnH3c/guolwdm31xHtG7EYdBOJc9
DVipgHMaCXh4LmDzIJGqDHglIlxdEYq7vJBixMc1B33jZ9j3/To3NfRHjFMsQaY489SZoLoYSpBP
gJVoAhxkuJJe6MCT8i9mpZZrrohqiLL9BuBkRhxaDBrgIWiKIs1iDThNtDMOY9QBfGiaEzdcXxkK
uww21IAaAuq2VoPtJX0JsvxvH18avMJ0gCsGXqQ2iO1nIpxoA7IuBumVNqB7ono7Z+xMy4XehY+t
nBpwqBpsb0bStVS/+/tHULIaAx7cilI1Z7W2CRUS0VgaG1zAGt/QZWV88JQ58D/+uomW8KDmdTu6
Dj+cZScWNx1Bt//XeRKxKnKT4gBFOI5ZYtDNgKzHEZ+d9pojLHgGh+pCLexqwYqcw3YwIXwo5gI6
UMy1utckSgoSpSMCCzMEjszLlILnmwOT1khm3myQfYtewVv0bgbJoWsVdt+enjFGMfYejSC/LsDX
SEA/4iSXjjuGJUZCd8lkF7MIkmvzFp1HSwpeGEg+vbHisWFtnhASlo2Esxl4/4DSVE61f+WPAoBL
wcBhossG50AVXE+iUulKUhL1grjKAa82umQjLF6pmZGtH0y10imLqUVnWZykCM6Cr+AkKAlOggQb
B5gAYwEDTRaReV4VYK/MK6peqam3okG9vV3c1q/3d6EqYAdZpucSdot+KMMYkfACs4miw/ERWNZk
qKMGebh0bVcr14Q1sq320O9PZQhYi3/8bTi3V3GOCd9S+BrgzjuGcEFYjOAUtoSDzSN5ma/ttV4X
XK4WWxKyYw2kih2Y35vYJ7IzZp2WTUXCG6U5KFiucAZxTqwzkROwXbQLMor/K+3qnhOFgfg7f8W+
3EyduXMIAn7M9IGqdaiivYrt3b0wVKLHVMARvE7/+9sNgmCB3kceWgj8dje7m9UkZnPbu/nD/boZ
/aZkBpdrT67K3tuXKrPwx0N+2L6VZgFZfpi6bKh9NqSJE5U29t+ONNo1R7tcDNpjr+jvsm28I1cW
pmLs5apq/2JOMnB3uyhfS9e7mThaV8V+fkMHljGKzNhdejQxqWq6wvCLdlfvNv6+p0hXkmhhWhxs
bkWev8kWTpbHIEADDFDuIb4eQ+B6HJ7fADsOP8D+EFEWbPwqkriHLRfZ8ZKffpw9GIj2Jm784myi
g7P3vQGk+bzSo5SdNf5N+ADkYmXMEydO8voy44/Iy/9HHm8KrUINCH60L8kPeRW/Toexzt/xlB4t
oHOui/qlQw4X4e4NaGaJnkQbyD8dB2BHibu7RlbtngUHHvseD5NreXolf2pB/EqbzjwnOiYOinUM
hWGRmXdC0HmYn1rS08FP3OcdRwLEPCeLA6IJvOLDhIcZzQYeWVWRD5E4cQHR7ubyaD7YK2OGVw/j
ibmYg3T6b3+/H9fDluYP8XS4WM1tuAqj8Ms6cnc8XnOvBdL1udQQyJ9mF5KxTvxflEnexk5K7ltR
cCjVm+Y3IA0n4Itlnaai6PIFJhZpq1JoXIlhqppjVMTQ2CvE94VDVBfW7yg5ppdiVuZJPnEWcpVs
ml6SrYih0xYqGRXa0wFpdMqpiSE/xG5/FDJetErFQatV4HO3hDvThi1FRfIaxHoXvJhSxKh1mKs0
+SxZHVvd10t8spK9A9jdXM+jHQSAQtMv0Auu25KmIg83GFQDi3BdY9desfmWMZstho0OwJhKnfUk
1RmzPboHD/Z1/lMwZxcxPKA0nLa7BUVValkpRXPep+EL0Kz7mIMZbqIPXXr5deYnPJVqjcGu2gWU
MsY2hlOYrIyHUa0SNL3Nch0wxCTu+uWD4MC6baWIebQcoTnDbggNoJ7dUwPpiT/T3JklzFzHp3fm
o6KrOc7IsI1m2RSWYxRFJoxpGZNxM0gr681xZuZ8Oh6hW9cbtN/WrfyGMPb4m92stp6S61pRBGY1
N4eLUaN0mlbynUBE+dogkPq13u7ksqHeTnEtSF21BlTEyP8Wqu2FLT4ymrXQ7k7SK51pJ8xnCDBC
xaWAkAYC0a81Le+nAiP9BlBLAwQUAAIACAD1kC5Kydl53blBAAAODwEAOAAcAGh0dHAvdGVzdHMv
YXBwY2FjaGUvbWFpbi1yZXNvdXJjZS1yZWRpcmVjdC1jcmFzaC1sb2cudHh0VVQJAANu2XpYuNJ6
WHV4CwABBPUBAAAEFAAAAOxd73ObSJP+fPwVfLjakpMgzzAMA5QvWxKSEt/6V1l2sldbWxSCkc0b
CbSAHPv9cH/79QxIAiQ5JnFdbWrlD5EioPvpnu5numeQuEqTgGeZo9b/gmTe9ReLGe9+5pPfoly8
uEmc8zjvDvgDnyWLObxX/8DMMP9Urvz8vikC/o4/JbPlnGfHny7Pbs+Hx2+OS2nT1J/zr0n65fgT
T7MoibPj3vHvV+6Ypw8R4Dl+Tv/jIjgu32fH535wOT5+IVzlNIR/o2nEU+c7rFVKsE1LTWS8VTvw
bxd3jbdHipuEXL15WvD6ib9bpmYaaufCz6MHfgROS4ULrxoj8Ouvv4Jb/1RuM56qp4OmMoqwogz8
nB/fRPOGBh1hpiGsYUPFloN0B9tdotuqhiyElMuxussA8KAKh35XMepi3DXVDqYfsI71I+WaL5I0
37oKY6UXJ/HTPFlm6u1tBePQQti1daz1ezrRmNUn2tC2+5rOMGIY4A2oqSiKQK72vvpfuDqO4oCr
/STJHfAj/KkZD5I4zBRl/JTlfK6ewjjcpVH+JDyV8yCXUHjsT2Y8VBQ39bN7Hqo39yn3wzUSpKqD
KFv4eXCv/rXkS/DUZpTnfhRrubxAUYaPAV8IofUhG/7uev3ewOu57nA8Vjvj0w/j4YdPR5XzxTiv
x+234fWFd3rxqXd2ChcNBtfiKj9X0SOq/RFUkXABBtU0upfXV+Ohd3F5czr6H0X5dK5e8zuRH+oF
91MQRpCjaNp7VRFXeN7N8PebrbQrNWEUTEwb3mjVDybCx3+I06zf/lRT7fE4/fqojs//y738/DfM
WKUHJ0WBL901XvAAsjeAmJgm6Vx+6CjudW/88fTig3ozHN846jGIDfzgnh/DOTy6i7VIgtfEqHfv
8/lMUT7Mkok/U29SXwTfcjqFVOukoDbNuBrcp0mczJI7UDtbheORo1C9axHdMJlwnju64Lnwx5b3
/6MYcTadTq2pwblJbfXGvYJoiWMYQDa1QkNHxAhCJEISXJDzrjqF0NXJO5WnQE2o1EUpbqGLsmBK
yF5dYB2wDe7WVBCqtzMntPXJXhVZ7qc5JKUQbRCKSCvR03CyjR6z0IfAVcfjM/WjDwNxL1hjcHkx
lFqYjXTUTktgTfdqkQZE8Z1UF/O7JI9kkJW6MCE/PvYrXfWxx2Zt7Jmt2+jHx36la9fYWwaj9BXM
ocgg9pY51ru6Lst8hVBe6dppDm2bmTtDeaWiGsoWNU37FURXg2wt2jL1V+ATgnDItwYBVwfBJrbV
Kn738Umpa8cg2AZM4cYr8EmpYu0p0kWEGUabEDLZxIZMHz6K6SPKZ0/A5LnMbXcEfkq+RBzkJ6l/
B6/wMbhN5LnUxKw2Y2JOdBriXZr2qlGKagWqlLJ8cZwXliuoWa66MMntwibne4gW00emWp7nOJXZ
1BVz5Mckyx0H8DYPdD7fjBznmk+v8vRk7+Xvf/nlSH2rQs24S3A3WCwcYplHCm6Jmk4RJvtRf0iT
5cJxwijzsywJgKP5IAmWomA4S/yQp531pfXPJVqdUbWzzKMZ1JQOM+mRord1qhES/i2n/u+ujzsC
gGE29JNW+qcYAUOF6h4bQXPDGVIntAG7B+neoQDB2NEGqXshBME0REBcxXmOA69bILY+kzigNenU
PwYAFvQatJ0PdIqZbW98MBIl3kp3nvpxFgkzbxI3mc+jHFhkExPS9vAKUvKNjAcDXFNEusCCjhSz
LRYU+NM9WAKpH1qXh0iUzf5MHJCuIBj0Vs6V6QJWgTNY24Cghm3uD4hpFEeCZcT/gYM6YbKE5kkO
BzBdczwkDMM6Uqy2KGyfPxOWc/9pIk0dzhf5k3SBrTdT0W6tM6T2fp1yBinNPgcaveZZskwDLrVT
SvYYTwAJzNStggDmstDaGwQxTAhL+f/eNOfphf8Q3clEvEogJZ82wblCeM1hHshygBBn+S/vKoKh
8xnnQHlv3qmTJJlVDvVms+TrRvRNcho/+LMovL0+k4MN1b6CcSuzJihg08qgFnBdfzab+MEXsAze
dQQMOQ9gtTNdxrJF92cOpgRiGestFXIMHWpT4T0PvlQ9+Q0vFv/vSSRlnAPx1MFDshsM8JFWzBci
i4MPK8xXGWl3FkEoyZlJzuUD6FdDXqiFcdvgLZBt8DaPbA97q7jIcqgoPA9D6pfDcfKQRKG6x0Hv
i2mxMXrMJuAdo+XohTa19o+eeNM+9hthXk/ZN9/tg9apVjqKQstZ95Qh4py25QuT7+OLGbx+jvL7
l1U1NQ+sxIjFrD2mvJQvdKZbuww1WxoaTnjwjKGd7UP1EZEJjGGCE7O0qFdgbsKsXdZC8+D71awV
03+hv1TWWR0UAK58AQUoJqtgIMBLnfLSYqLAVBCI1Q6KiSjM/DIWT69cx7n343DGz3mWgdyT8jWr
gKx45F3ThHfqOqjrlr05+oZB7ztSO1BUIirjLclvvl+0DB4d6ORj1TTBt1Bcge1t3DWZMgP4VmIt
BV3zgEcPPD33FxuqLY8VRolmslgpBrtqZhaxBPP+tqxiSHUgPR21G9GJYeN6cJVr+oAuLDW0wCey
biNEwjJ1G2Dhdp6bIHtC1IbCbY9tiHIZRxBl3gJaviqoKpeGfOovZ7kXcrHOUDvtvfq+zFS1M+fz
JH1ydJNA96frLXETkat7cV/Ga2dKfbpZ0UeFvtqM/t/+gz8O0miRb3iq1s4xYvlTqCFlw7uMz5IE
wmrBU7HE/Bm6/0KLWbHKoGI0jJZa7AnSn9Eikk32IwQqlfIMd1T00EJdbXoRSkbJMg6LhfGtRQnb
mFqMY9Xz3NH17cXZ5eWVdzr23N7Z2enFB+/y9sa7ufR63vjy9todIu9qeD26vD73RrcX7s3p5YXn
CZuZopvttIZsioNCa2HBIBnLOTZDsuA2FZ21lWiQaVUivMjOAcBZLUWZnFhqVdB6QwGSzgZsNWr6
eHoDc/4kedyz8BMgFNiEqiDHXaZiL2/4IOfkZHEan4s9QJBKqEJQW6nMnKolbVzwx0Ks6GMTYblB
dIXgtiIpNKhef5YEX26hgJ6txZ6LjILm6CzK8gK1qDtG0Qz4HJQxrJBa9vYWi33ZK3Ux3Q/Cqal6
g6vxWomIJWQyhZC2onQIQO2Pi3F1F8iLm+DL/2RfgMHAOLE76kTSGOCrYjntT+E5aijEaAkBhRba
gpAuYyHQtGAoaDuBpk9MS62JE42pJE5mKgQSbhZNHhdBN3yCN+pza482MydAt4bqwfleMvlX4M0L
WcyGuGPtRPnTyYSrQlIpxLDBX9az2+Nb3G36LEDqSgAwf2ezSSjs7M7nDiZQBhBbogNk4R54Vb9x
SiCEw2JFWPhqvYSKHbkmCgIyuV/sQaMR81ldZl0UNSjXgVLE0u5f8vyU58tUjgGSa5UbaYti3bUm
rirNMolNmaWuTvS+/lW8kTOTReTaYitxjBi4sLMmi6wt1p9dLBY+LQ9qcz+GWTL9DgfBLK9+kSv8
3l9JVnPMSvqOUavGEwq4iU2qeqvzvfld6kXxQ/JFEiM2V655uUAaBmFD4NpBVF87iPzjQsL4x1lM
/3EWm041zS/GctK72ewKtXGFEU6ZDiwtkii78/LUX+zywksEEWgxVoJkidfYTXlBWWZhqKUrFd56
ugjurxJJ9zrWG5skLykcKQ+2C0dMoAg11FeuHOu7F9+sAgykhzZwY20U5e6ILTcf2gWibYebQJwk
4ZM0E8tdhJaSoI1dS1rPtaYltwJahjPFalPQJpjZ96QvRoDOy/j8qx/lXhbdxf5sV9gGz88klo8N
EqKpGvtxks04l7Fv26ucDd6+7eLdNUlNCkPy5pNNb5zfR1k5ITmOFOxBd1fpr4s7i6CTXaYy1E5m
SXynin+qLbY8doJn78Cy1d8MmuvKShSjjXT4dvtJJ5xP1Mncn0ET4DgfuVg8yQIf4m/XGoDoFE7W
Z4uVwyg4X+b88f0vVazfY9FstVBAqdrxvLmQ6k38jDvYZs2dyJcYFgJ9NAwDVwVFTzZemSg3KKym
RoKbW48v0BhShDcae9lTHNxA93FSA7FaPmsge3PUOXovYkWEScknxV4YUztrUd17B+u0uRP5EmgG
Cl8F2jDO06erJIrzzo+IK3ZY7caO5ksMMSehlPumEkhemV7eIk0en04qqbcEseX6Puj9McTvfsiB
byC8N4s5NqkuTrGj9ky6l97t16N3sdf5mvRuNWqV2+uzzUpesfZ/qFn+XjXLrpud6vdqTQzfhCLl
j8ZwdorxPFK9tNxPEx/I9U256AJuqLNYE3ZTk2FbOjeFdy/GRTx5RYwVi5IQed9T2exJIuv1ksh+
5RrJhiRabY2pwJbJbBbFd4e8+ZvlzbcEUmzZGKvN9WvW9i6jkGFqVu7EWEdE+c0HJ4qjPPJn0b95
tazQxU0ujXPB22IdjpKj1vOyEVirXYytOmE96WG2a9/Yaq1qEkwLVV/z6c1+bbQxxdqvxg6t58Vn
plj8uuyA0T9uBQRjwYgiHnrLPBFf/wi+c/2DknBigiMWory794IH0VF+pxd8cZfE2gviyyJeKY2Z
rEGQLwj60NdZYWRhG0y0YVRsgObRnIefQXZxc65sx6Abq9zNJ7Zei8sg168KSNnmNty2PSMxySrZ
r/z0i9gmSnLHWcD7NSwogJ9O54uZzMeiRRW3mIhrxkGy4OGZP5+E/om4f0aF8nhzl83WKUVN3TxF
fFlM3gvzFPvzKHBFZypubqm0w7oJidrZQCy2zJHRupnElhUyU97rUyhfm9kX3aIjBlbun53Io2cA
5X1n/bYFYkzrgO8d6zsaUcw4Dmvt0Yp0V+9PdqVLeVvkBjhPN/YIQ9dLDY7znx6qdvKy3fHzJH0N
we9XbZToOiEOUiG4c1Tst1vifuW6eDmsOiLt2+IfmLXY/9es9Y9oDLF+oPADhR8o/EDhBwr/WSmc
HCj8QOEHCj9Q+IHCf1YKNw4UfqDwA4UfKPxA4T8rhdMDhR8o/EDhBwo/UPjPSuHmgcIPFH6g8AOF
Hyj8Z6VwdqDwA4UfKPxA4QcK/1kp3DpQ+IHCDxR+oPADhf+sFG7Xvm7mjsYiSvLuIo0e/Jx/x23y
iBXfNJ7xoMLgrb70QQ3qy2+kFGDOi5/ikASut783fu+wkNcbFuOVv7+E1KB8NsdX4C3x+JPyIR2q
/CFCtWMa2iTKjxxFVVP/0dl6VAaCgUsn+w4E+w6E1QMYW5RPA4SEkjDac0m2PiBsowTZmIdS+2L7
gC+v2HHAFkrU1NqhRCR8atdwMW5ZKBCyMNoFWBzAVVFBELJJEDBhCdb3WIJJXcnUZOLnKuGAsU8J
3brC8KW7okX1yPrHxNV0Omtox0gXB4J0BywiZCln5eM03Kvb4oEnljJM0ySVD1EpH4GyvtJQbsS3
1C6W88nqST3YUBSlH8V++qSezuUPJCqrx508rp90ompq/UMfBuf5HzDqyKf3aOr68T3qidWzBiOm
U801elgjI5tqvdHA1Qxk2CP4zHJN9P7v96iUmuWM7nAHo8Idbze/LTi+j+ZlhncQWG70qDEcWrZm
WVZPIzYbaZZhGVrfHvQtZgxoz3b3WL4lsY7HQtt4pghPp7t+fXfHmOguwcZAJ5pJeiONEN3S+jod
av2+NQKuHfT6utl2TIpjVZyhaftbOENLpPhkG+cZv/ODp11oka0T3WVIw65FNKIPLM2ye6bWp4RR
d8QYQXg/2kLuc5iLM2rI/SneQs7ZVG94uFFr7MDuImQhm1FNtwhgHw4MracjpBmugYa0NxrqaGcM
1CXvRl8/p4qfc2w08QOr+Gg7QvYBt3vYwqYJITswBhoxhzqEcd/WSL9H3J5pmvaI7XH6fsTlwQpU
DN4hW1At8TvZu7jmhmf59TKOedo9jf8F9QQP+0vxq6hqB3eFECzyjhJsjXRXM3uGDnmHEaSca2lD
jBjRhzoZsOH+eNmoqGvoTuRLk0+ev6hmqYnQtqWmoBGmvoUcL70jZI2XC/GwsBqbmMPRkBBDG6Ch
oRGDmRowa08b0sHAtSjVGervsuoZwVV0E063khVPpjQQ6Kq/xnM+OL8566dJ/G8+SMWPvQrXG3oX
qmVwf9fo6oL0LZuwodnTLNxHGkHM1uz+gGlYH0IKjFy71+8B2OKhZMdn0SSFqeh4+AieLWNlS80e
/2+fqBToRQCZPkEVq9YfGtg3wCrxc3lqh5ioqxegwalk5Gqui4AVsetqPdc1NEZ7FqLu0EB4AKCX
WSqceiyuruiyDGKQpi740KQND47v/VQ8z6RjCK+RrglXrN4CisFgoFsYQ/QO3T6w3QgSbzjEmmn3
Rza0IX2YMrddd1VU56NV1mXHpZrdiVgerME3oOzYgg9/DfjnPIfKo0NNCVy8AGiCKLYYxsAWQG5A
y7bW62GY+RAaENeyhqZNtkFX0Eqpu7HKQ3WkJtpGSrEtkcLQPJxH2epniwAo6VKA2B+ZWB+xgTbq
kb6oQ4Da+kMGiHHf7et46Lr0WYi9IIAWBjrgPeRWOfWBByBg92l1fErdBH+XXaGkQtFMLKI4XM4X
K9OwzbpYTpCMUWaNNDSSJZYBNQY2hzAOg9FAd6nuulYlcLck1UAw3dwGwSAKSuc+ZrN8/YtOHWx0
DUDAdHeA3Z6h4VFfzBZM13oDdwgMBZnODGiI7F4dQVVMTb+l0239thE05oMzfxkH96sqUO0w3YIM
gsuKNyKRRlAk2C7RkPl/xF3bbiPJkX3XlwxgJJ33y2Nex71u7/S4bWPfDFIqtgWrpV5J7fX46/dE
USzWjZSwFmaBgaRhVWdGZGZEnBMRxYqQiVvIpHlkhtciZEZ8y/HihpPPPE7w6pZP5Vm/fXrP1VTB
m6XW11sx03pEk3+wm0AeV5pAGyBiKCpyxpOA76oKrtc2xYQGtbQmInjIi8qeRl6TPY+uX01FXHEa
e3U9AxpP3fX3/q2TP7g+TBunlNuQ44XsVVZjFExRenhbJQOgnUr4kUQC1nAq6MvO4/PL6Gd83cvV
sdw4Yku5DTd6tt70vbLdX+IwF9zJhm+UJBX6P8ixCOeEAnrOAgGvFz+EHFgukVdfZURwfovDfplr
XYmXixMdBL2IdK6D4Nujpf739+3jll7w0R2t1ROQ4A32GBqOSgYZURHULKlYWdUuKeNtCXzsLQ4Z
jN+ujDcTZrcmzP7ou/qXSB7lcOSQg9E+xhqYhItgykCOUMlnyOiytojG2q3KMRpqKkJQKyKEuef4
8FPvyf/QZ/bo3Zdj7GiC8jhvmdXYsDguOxaVMszKEqIpNYtg37KZi0nWt3Vx20yhmzWFuplxfUMo
H5GyzSf6fyjFe62k7QN09aY5nllxhdAjAEUiVppFMxzBMOC0XnaG28fdum+YuMFPU1nGd/WXZvrt
V/TbyuMB7hODn/P45AgR+mgulQ9QJUKLSv4ugVdFcNmWaqlcZOzUZX1++tbd//jxjJ/ub78Fil4T
YqrC1q6osLdzzPfL193D8IXXBJjJg3iuKXhiX1Jz1pDwIFhNVOZNhmpJNl/hGX2Wb0J840nO+MLx
LRNFpFrZC3x4tN+vhML+SvWtp+ftCYJAe/hBfUD9pdYohHTMwVSwKY0ibsKPiiiVEz5Mb/KEP376
c374+u0WaGukxjkhpmpovqKG5scjddeH4MEPWbMxfOMJ/MMmiuWGGSFgIFYLHCgw35qbEonexGz4
qjcajzgRxdrrpSjWzZNoDziIXwCoBRjAwQ31f0AkK0NwCVA65QIeGx1stgjLSnVYydjgJuX/+Ywf
rk0Edmvm6Ha749p1R3o2LB8tXCvByELpmFQzUxmBO/SvqhZFgMaYbHSdQr/ZOBMZQlgJI7utPR7D
9vB099ebQ9Vu8Al2I8mOTKPEmgTCLxoIH2LBjpRguSLYt0DJlzCVZDna1XRetxTm+kbP/O+BW/8T
LhdBrN9CwLmNIIuIJVWvjGEgvYYphd2LFiCn4HwVK0Aqs34Vg9LY65t4vHo1FXAJoE3XyeMS3l5/
v6YMTRwYkhEb/EdLCK8aktCWKa/B44oGjMz40aoKopgCM3bTJZyNNpbEcrfkM/aICU7rd3v/95N6
fdwiYCsFCSTgGGGBEKg5+EabPKxBOYZTxWNTOinl3yNufRjLMInQ93+f6CQEX9FJ+D6neSr43Nw/
Pd0MTlIawrqkDxwJljh44ERKjAibWYKJMKNgasDqQJJl1c0sx52JFVbE0nNn8yO9fF0fcEHvY5IO
XCmwBZVUpRx1BHFzwDuAX7aGGITmF9cXI64vHC5MJdytSbh3R+/y48e+EjEYteypLThAA7VRcMsc
1DZwGBAAN1i7Vw20ncOw3yfOT+afSE6vMF5Iro2Zr2133x2+t3d79/nlJbU/HPyBVKHXxmePY609
0zIQusS5Dhn4RVuXg3KI+im8KUAupzqzCcsbp6qZJXyxxgwIrD3cP3/aPj4hEB/3xfg+4yOtiyFW
zbRQOM0I+9gTpxChWsnBGutbu5xOOb2y480kO/7pzGE7vnzu6bcrQk80Dl4vNQ7+euApD99+2QN5
nM6hIz9ONNqlzJoCqFEaP1Ky2MdsTSucvqJNrnOVyXAzSZbo3u7MHDr2p/LDT2MPqTbqgBS05b1w
yhZDKUJdFYJMFCxorljJFqza8yD95czWYoqJAzxcnIi+61ac4DU3x2Pz6f7LKUHUyyjhSZwunGlt
4GxiCcwLYCxALgk3I3B0/g0ZJ9s/TD4W2YmbpRE7ydVR5Ovf/Ga7uz1KrbjrEW2QsrYEM+U1wD0K
k5iXjrPqRcxaaSczn8bD8TgTAaRdHjzX+Zt5fv3wbffH7I7meqPpBCLWCdFsZaV4sGVaSp9xArMN
SUpuqu6T0xft7UztLr9cu5pK1q2IG/jRTvJf/vD50933L7f3s1rFi+MGXFZRhsgK5RZUAIf2lRdm
QzYO3kEny9+JoK1LMtUmiDVttj2SO0XX+4fn2/0vJ1eHmM17bYr2qVSlGW8O2miws8hbAwxxHtAo
eJfzpbA9Hngi2F4sl9nrRdXlD93N7fb4XqpjusIpsRFmIzmdDwubUi05lvCbKQ745mOAlWmFAN+k
zs2+koE/TXEuEX+642oq782KEn43U2KcT/1w/9w90hsHfpDabyif1v8mRSpoQ+M4OK4JipEeiKQC
8bXgVSq6Zp/eEiPXZjuPoud3TvXzSyYHqtLtu4Mt/KN8/jQvNxjHpTUc9to44mMxnnLyjYUK3aTH
1aR+rXLDIN7VVIH9ilbbebnq6VvXgd8+dtcPX+5vp6kFSofiDPbZUNEbSqgmBo/dawBIVKs3xAth
MgmeXvictanvgdc/91L9cU2oSb5jftt0Ba6XLhmsJRy9AgGJP3Zfbp+eH0dOwfTHNDpewCcpcdkU
+eMIKCcC9E6Bav41WPH/iH+mYk+0tsquaK2GAs9qy9oPQHkbceAwqhRRm84MDB88O6aGUJT7pL3I
tdZgTLjkDCcjT0TbuyV19fvtfnYkS7f7/uWQynoiych9iD4XL1XUMhvA0ABwoRD2YXBVAqd5F6ls
aN6WgRrPsL7i4zumOuz4ig7XYgCYX78N+ScC0inq1CSWzzUNO1FguKEUx6wIOdTkVc1tBjGGEcYT
B369jHFBiDnbPuieH+73t19e3jNCEUXovnzfk26P81C5xipaIAwsKaWgomHNh5Z4zcnWfLkgs5zj
XD5yceNEJ6mWGZggrZ2x7aHtSglOzpf7KvrMoyWypUqrLBrfl/OdUiZVV/WlE/p1ZXm1XkZq8Aa9
EuTOVukMLAZADlGgUa6MEqReeclkAe13piGSvl6SvFypi7N7rqbiLu0rBDtnslRxx7/e9rmYQ8Eu
OLlRhySb5i5T7kJqqh4JQ0V+gA1ZSuJacnz8flXVoyTnOwPo6tVUHbumY5jt09+6u2907sGlKGHX
10hMiRpIj/GUQfJMpHYGR52KgZtcmm5Wv0fs+h2mXr+JrkyV8WvKbP28pHV9CiI4cr4PyfSLgHip
taRqWTPU95BIK1k0kwo2DVeOk/2mnMN4jjNMcXTHWIstN8tC5Zbb7hhxPt7ed9vHePelw+SnSo+V
faRtrRpdS2ONAz+pzKm0rSN8enQpUa5Xll8JSa0IOlV0BVBshRFHoDh7pRbMy0vKDNI+ARMqVaRk
VAunPHrG6ZOZ1ZJr0rZqG9sln7WSwMbUck0edYxF5Xb75f7hid5G9fKi9Hx3S52wg3x955nUKtmE
IyOoPmVAgkHigHdMlNgkhKy+JjqKUJfHnYgo5ZKXb6Xysx7Rj9v7LxG4/JenWwr5L16p/01ZYqyU
EFKxSG0EyhuEfYcjgjhgijYg0c68Oxgbi3Su3+N0x1Rptar09TGsfb5+7Lr7P3b0KpjjXmhpN5rs
ASwiu1AE08ZRS2ngLGgDLpqiBN4W3rQy3Y7lcDNpblak2YkzPRz7SXTruzmMkH3rWoy6lcIBZaiz
gMfI4HgQ7WxKoQGMNe7e1MjxWohb3jdV6GaJhLbGulMt83o78jQ22J6y1WYzB8NkplVPSb4ECg2/
Y0M0KtccXJzVjyYDXU1n82sizB33OBiu9TBVwi5U/au5Um+JljjYssD0YHPaJuOS/zej7fiOmQor
h9TsunmLTIXgnAIOfvYlLx2kg6DN0yHwNrGoDWctZukFzkGL7wgQYj3TL1OnuuyWXHdrrZrpku6+
d88PD89/oyKJPnRm0u9931bMnaxwMKwB6mAvMpxMAuMLSoXsOCi9ucz4Pvw0jH+uG2S4YSK9vV42
tmydsKPc5agjTx7iiW9ZAVZSDyYxcR3AK2I2gMQW+A1kowi9SF2udeRtnTYr0we+gnz7FNGHn+hE
HFLU2oW+rcaVIDNgeHWCHDQB8goj4wBcwcEAXWivHoqXwc8f45cbpsKvZP62brcwxL99v++f9DxM
TUVlRwHG9tn/4pr0JjPwx0pFSARAHxUzXlotlEEErG9KSU0nOaPI9KapMis1NHw4N8k/5TzuaWqm
VmAkBa9Bi09PIwSXKpMyJxAlkaDLW8THsOsi48JMzBVrczd2lmHYPt0NvE0qasTozUw0EqoxkRBJ
VBOFpagi9RMb52rByl/MLgyjTkW6cSsi7cUx1XP3r6/bjTnhHgLOmSsTRILnMlg2IsAxe8F4cZYr
FTPPs8aG8SCT2f1uBReG7VB8+OfXO2Dd4+wybESfdE6x2GwLK80Q36qcRSsFgLyxpRUhoxOzptrR
OFfTuVZ2JOzn5JUq+U9H10s94t1Nu73rPt4+PVOitu9awi8KlqJImIVLzFHjsZIG4EsGOJrCo5LR
Cyny+7n5qSzne9pP90zV32/X1N8NjdWHo7Ojx8CfBljQqwk6W0IxrFmgGWVg+klxBwYCkJmlhgGZ
S6dxPORMpGVOebsVamYjtCPPd4NMXlFFggTLgZdYlQc79SCrXmQWAf2YjDb6ZJ2z0l+kC+OBJ5J1
K5wTH3YXoMumHV69TNBcwpQF7xno8Dc1KDeTXARETxkWrVoMLIbkWTEAWqKK4MI7dmMf5Tlz48vV
idp7t8zb0YfHDfl798vXLwMal4eeMScyyCkAIyGCDHaUANhYDT47K5Jtdb1nbDzWTAi3JsT10U19
v/+f2/shJ6vMhkBisyCIOIcMIZ3yFgHOMkEqailoKYEg9P3TSzHGo03FCCu8cQ8nMuWx3+62z/uH
xyH75jSdzj4PG2JArAR2do58p1LMU8OLzSp6n3WCM7+YIp6MPJNttyLbdrDl3dPXDR9WqH84oQog
GA0D8ZS3Mk6zhCVjppgWU3YyyBl/HY0xnXu7YrT7zs5M4+dCNXpBaWnFZd9yXemZNM6k712k0DBW
MNXmZaE+OW7r+xcLfi7rt/xcxjrtgFoXOu14GPpytt+fH4a46InmhRCqFbwxhOoM1w8kFEuOzNTM
dUjWlJam63kaYzp1WJKknfBDA/t/fJKzNgLXipUKMbkWehbR0SO1rnH8r8i2lmybFO/URjBMPhFZ
rvRZ7aSaE4nfd4+77vHhic7BEYaJpJ3WCe7BUEXcVwlMYyyrYO1KOt5kvczljoOuC3+8OhFXrVTx
d4paOtUrNYFNjZ88l+K/+md8+Eu/SZ9tKaKqygFJZPbELASMu3q48qhhSyXo1vJb8ORxhnV9jlcn
+piVLuWd3d3Mlv/PH8Yp+AMS1sr2gSjGlIy0DlSEHjugZrcEG2DVWpNK9KU2/Rbpx3OsazC+42oq
cLemxf6Y/nnsvj78oxt3IemeRBlZmwqVCV0guQUVhZMNTBtrQK6bD5NO25NTnY83FeZ66U93iF6L
cH/38Pj5l/trosbhsKL0+4Vpuirh3Q31aOYkWSh9zUgFXPKleffu3m2Q5xwdfLk80XV/s/Tf1/Jm
ruvvPgytFvKlvu1fGoKoMVxljWNv6cl5jRAXMq+sCZ8UPHnFXrxLjeDDxVaM4fLVVBO5pp5blHdA
kykp/vR0u7u96x/LOtiIC33nDrx7gooCtBx6curi93D0QGlKphB8kq93kkzGv9BPMrlvpo1f02bO
3E/Z/b6MSf9g9BF9QqbjFT2lRc+7ZAWd6FmjRo8e5ZxsktXV1wLwKzWE0/WJDrvdEktf3/h5B/nP
37ePz/86PIoPienAacLNfbU91whztPRdDfT4vYVhAeIz7Wxqtqhm1vphxjhgGPwMHhiuT0Tv5JIz
3Ug5NEp+jJ9i/v2iWqOB+T19zYEF3GcqgMOnRj2TXEeepXdS/Fp9L2MJryZaqGU+7UbdzNsMtv8Y
p7oPnbyCawu31zf3a5FK4aoxehUwdoaeKKbKvQOe096kWF/ZmfiX10LI+I6xCp1ZqSDgw6GCQA+n
DyD4+IB7E1wl2RIrir5Iw+fEQpCRVWFTyYnzyNeJwmm0mRA3K0KY3YzDTr4j6gdFjV5U88JB70+M
yIgRDVLV5BJcKi8sZiWZdMZz8ISYebzEFcbDT8SzckmmOvvScTnqzeue+8fmjg1cfkhFJXqwJTnF
gizwfyU6hk0Ge/AhFGu1Nllc7PobjzwV7UaviNbNcUxu1AVZbh+76+eHPivJD95BhP7hCNGCoWet
jamUKguFBeEEgLjPxsZag/av9lgOo78ectsb7p/dNNW6W+Kezgl5wvv1xxng9zI2Z2FUSVULdxIj
C9pVlpWO0vMG3N/eDfAfZ7+ayqfWhB6KSd+2X0epuz5x2HIRIRVQk4Rj02SiR5kz01mqCp5umpg9
DD8aYza3X5s7DHXCXu1NOuX+pT0mXLiQBmG7MCvoC1wiWBI1aIGR26alKzKXGeudjjYRJGxXBNnZ
4amX9DF+XoSCBIWFlxbnMcHdUCYzOVNYBpzwtkqEMfsrhYKTfBO1dn5lb3fezPKCk7To8N0LB+eV
EIAjaDA4Dz3yCJfqU4hUxPfK2pYkL6+l4aZDjwXc6+3Sw+6d0gs/8Z8HV0OPNPKN7XtaXv7qHztJ
Aai8ssLhZgFTKf0ADiqjaZVLH4u9HKiG8c/Z/MvlkeyB7/iCq+FDMSQWzvvd2moJDvIaQ6Urnvn/
8nYtTY7bSPpev2KPe2Ev3o8jHkS7I+wdh8vdM7cNiWK5te6u6q2Hx/av30yQoggSVGl3KnyxyyIN
ZEpAvvPLBr5iUKzagpdMvLBikeHekrSWdOseavjwsKxy/QlcpOf+07H/5zkde9L4WRUwY6gAp8Zg
FouD2Gk8+vJUSiUIt0zyq3Io6322JNPyvZKrQ7/m6kCmINjh+PRt93xudJWE5lJ2PLJBC7DhJVYY
OgxGadC3snXgvcUQTOAx2XovS7noTbl1V6GHyUqv61NGrMoAOFi+kbWZGtqjuGrBpAUty0G6wzm1
GsvjUgPqTHum4YZ5/xbOFWqo2xMZ2+2x0ytzVqnsV6obPrxbZkMvKm5OndIuykaGXGlGQKuhkjOM
xiR8EFWUgf+b4t5Sw5YqytYcKDXZRT9/SGmhhrkGh95GB56gAzUM56QxSZEmcS0S2JABzPs3UsPn
3Uui1frEUxBxJ6KP3cP9b2dFPDTWE+mIw0olhq4TFrMakB9NYjr46JjyrV12s85WuSm3opX9zfJn
P6MwZMQOjGBRVImDKKGMvuNDr7wlQusEQtgbLrE/hjYGpXOKKRHm4SDYeDVqSN7mAnBIfl6ys1+L
Rbrny8Dgp+Ohf7jcdxJ0YIpi+ZGSaGZQ+LZb3VDlgotc02o4bcbAfIs6C/M3bkp6uxoT3elMvNx3
55xqhtbyFGxi3QSt5VBq7YUCk4i3YKIoaxJpNxIlXeVI7HntO1RqYT0cEf3jdCy1RiWXD6dzFsw1
sM9ERKgm8OudiqZRwWFJuE5JXLQczsuWRCm9JurOLiXxb8fcgJ92XT+EHbCnEAVU/jfqYCnAMgC1
IBgWDRBtGsfAfAyStfCRiNJeVfNw2mFDKI9Pb0pqV0ETuB53XaXt/v3j7tvnY5dLAjMUBZYqg92T
TyY1IFjB0SXcGfi1Y+6IAvsnBgn2u47plQ6c+QbbRSenN+YscKbtmgVmpiaA9+kfQ7p60TUHbjD3
Hs4DwdZaLjUZPE7qA7E8Ga31G8GaLCgoqTe7NfWS7pY20+6fAbZ53I3QfFgOSLHa3QzSl4LKYOAG
gSQziCDZwvePlZnGOsZIS42oKLl5mvc/ljsswf+m5wX5sl/fS77b7eEEFVcg66R/+3eTT40ZQtky
eUHB8gSPBTxqwXnjtMWcv9UkBRDVhryZyzL0m1dfG54VXB3E2u7gBznBOvy+ezwXgY1pRw4yOinV
MMRw4BFd0mhoA6yIYKQlPCxKwGaLlJtLXtt8v5Aq4Aak21NV6JAsMgK8DC6ABoGR18QYojxhEswo
R0nr6CvAZHnN+reUHxV09ndrK0EQei70+J8vx+eeT1qBqiyLI1i9IM90Y6kDIjV2aEgdGqUs+CE2
RMMWGc1ioZtiN84qJIjJugo/pdsX+H+LFDWIV/CWUfo7jLQTpRvPvGtIYI54540LvCSgXKakYN3U
bwW76yr1enHo8mD4thI0e4vYtSuFBbUIdjl8GQx7ng1iF7ctCVhvfwVmSdxs2jg9vSmpW19Zwck6
CfX168P9j7v7Pjd+gaGmssDPYMutzolVKTHYAKYVIo6CecU4FWBrO9bat/Ad5iRsMXh+46bkp3Iy
uFgW1lThvMbcAM2tskIPARZg1zinPCLcWCzsi40nEZuUbQg+0QRK7s0TbxM5F1C+lipdcFlj/dyI
8GV3/8txpgyzhRyCSCRScJJAawyJj4DeYMtBjaRIDGOL+rvZKuX2na1s30/N7F9BLT5N9eB4IVu4
ANYjiAIG8sCsRVORqwZcMxmsaXkiixjefI1y817VNlcVqMHFbwGkGPy5Ta5BjVJH7hoqGAKeJdn4
BAKjdSidqBLGiLf5rSsvLvhZW5hC3MmFeXbon359fvj2NPGCqbgcmBr+QK/SKUsUHNhAwBTn+Ft7
aWxDhFJgkQsGv/l13Zp5qxO1+MJW0+bqxZuSC1VjrV9Y9GO0aYWHxY3EKAtHeaQUsTIG3SjJLVY8
g96TYAIJiRDrSUVCxRW5g22sLAsr7dfUyju2OFhnSYLX8u/HdJw5pAQkCsk1PVxaBs6b59h1n1yO
Xkc4XoYHrsD+rMXZ6133uMW27MenBRt63beKH4oVbOPty+Md+Au5bQpEfz5Kw18oC1mL3ZUK/BVs
UgJXr3GIriRASsg2McVe0VrT+lu1+ePjgnaw6Ne0Gy5O9XrhfQYUwP/v6dyjqt+hNyo02JcIxCgZ
6lmideMIOKeRyJYw0GeK07/C1izBNFYEl/yKin213yMudeb3Yf/f3RlYTGW80ShlBLNZIzZwi+Vi
EswsIhshonapVSawBabYfJWbcqe1YyI6JjeDMPnAfe/+s3LiueeITccbnQL2XXOwcEigjeAsOUFj
DLF91czBtS8cdXh6U5KqavSbJeTC2N70GW6qHTusCEGpQlvtWwkWmdXYD4QVDa4NoBTalrnIhIrm
TWA8Tw1W33243ID13YeSP1u5Dl3fL/jDMHCH0B9jGx8b2/jAWfEGwd4cIWAFg37DGiIDDoNoA5w9
S3T7qvcbLgAehu9Lctc12PnDk7gvgsAfn49fzoiDQ8DaRRJdMGBqAnHDFbbWgvMAP4qiFJxft/Ab
NpZckFUxhg9iapftXr49zSKdfACksFQa4QRpWM738dY0TlEOtiFjzICvp5cg4PN1CgIOxlQIOGP/
/JCzAJOzmRGysB/Cw8/X6BalWYSr7qiWcLu4FSoFIeXC1yxWme8vRUUjwIdTXC98Pt73T/3PD7/2
98c/Z9hkeEXAXTdBYe0JUaDJgobzw0JshJJEUwvyJi4IqS9XUCQrIXMJHuziYH/XH78eENRmDrEn
IwcbANxu47F7iEkcCAMOHg6/AYuOgJq9KpI2Lr7VOZ4flkQbXSPaLgEh+g7HBv39Ef4TpzmMtCt6
KuamySDVoKgsBtLAQmjACkxNBGnDtFBcm+vwaYuNNgXL7J2CHbWGSrLS3qlclF66te5jQOf+VLc6
/oUxKRTxFgSmCthcRCRYZYGxhjBjHAOXf0DKv8rMgU22RT88LIjfVTSXzEXrevRAus9TlNhoOeTD
MHsuwJNFmxFrqQx64hIUqWI4WkjQjXj1bLWSio5UqOimGFJ4/w+cgnjW4KdYapIseGyD8VwpcIcs
bzxtFY73kIYrLT21/2IstUgCLQgpmNirtZKR+0O/Ota7x+5zxlLDqSRknE6STwHFk2zMAOTFFXy5
IMUx6Ec9N8FeFRm+vnfpRMjWiR8fF0x2fB3tkx0cmH4/whQ+9t3jH9/Otfmcy3PdUiAyRbAnJaK4
IuIeGPNg38CJMcI4HugGsvpi1YKkw7pT38q+W1XNvRyOD++ex4SOw/+aJZDo6ABm90+T1kofwDEC
Q51bxRqjQmiIo4hW5gg3lw/VfPENX3b2xpwZUM5r2agoW/pOAWfu/dQjqlz/OMLLnZO5mqJnTkCk
Mi9BoKOa4SFP+IJ/EEF1UnBhaLwOsKyy14aAqbxZcid2Fe7Esrzsh939L48PvxXDk1g0QLPDtBTG
a70HbgLceRpSJMGS1oiryuNPa2+U/o5PF1T3Farvlhd7v+t+fflWIAaD/ShGOIiceeBEtIiQYC1F
K9m2DXgotvHJyMClF4ZcJeX9Yqc5B8Ozgn7G1mYLfrg8U9kERySxTLPUuYReIfo4AxUrENOBWcw7
YLMc57RlgRoe/992/fBsQSqrkMonRXD7DfFTq1VdKoEp4Ah6S6hCDRibBr7vxhPwp0Qbqfd/FRzL
ksqSxXXXev5wFVLuHnY5c4U3epgDBXa80c43kXGMhUhQD9Z6+AenAr4lTB++oh5gzS3bAB4VdJqK
z6TM3tz1o7X/8PXbI5bIn+NMufkQjLIkGI0NpQi2L0AAOSyPpL71YOkSx8nC91itVNKx39foOKwa
UudNQtNcEZbLi7JUj63XMdkGvH/EOMZJEzi3j1CljGEpkXQZx2a9QUHnvl87J6rTdKGGfuwfsYFw
d9/1c9yYk5gjOgYTOVy43MeBmJlwxRB6LQjKvTOBXRXvqmyzERdfv3hTcsBqbC27Hc6TL6f6NHQx
Wga6K6omJYf1RGDW+kRVY1Pk4E97Qa5TQefVX5u7uaC9q9BuzSkKBofu4ctv7+x5aAT6zuCPgaFi
Gmqxux3UPWh/kNnEM3DVwPT1aRFhL5cpKdiRCgW7/TrGfru7P2RbZOXmSKaVYjgsEJtDOdZ9OzAI
MaBI4GZF1rbmyoqccZPN+Pr4vGCh79Zev8qTlAoWEO/s0D/nsq6nLmeFhiDKUKjVGkVVIqD6iAuI
voKGugnAhGpVjNSF65xNzNDF0zbb2Z7Vazcl9TWWVp3kg8WYvSb8C3+aETwE/41MgZ8sEvcNUcyj
hYUCGZgKiAUoIiFRvI6Ck9e+4LDh45J6UxHMd/tlMCseh2nkj3/czlIdGdFWjmkOwnC0FEOEJmyJ
QeAYithIEuektFSD0n87d2NNz8ZPt3qv5H5f4/5QGZCFNRm74301dJCw0EODXUMDzgX0EfxttHCC
bjWYYl6AQ3LlnZq22bxV0xtzRmDztb6AD5fYD0/jlT1F1bB4euxld8p4+NUarw36vkSCN+VQc7R5
SoJN/iLSQrHygrS+QhpOiNmX7YjFyWJDPBhNMa9BtlO4CAlB1UUQjcFqoRZ8P8T2o8G+ff73TM1W
a2LtPGlSOU+a9FMHwU8fflyHHVSwrQo4yZUlhFxqVeNab+CrF45LSjzV7i3DDjMiCuL5GgAaPrT0
ZBt9HqJvze7pfoqKCpmxOnL7oTU0toIglAxoZa6Sbnxrwd0NxqH5pkJcFKKuVywIqkyKxA+XJR6/
f+vejb8GeFy7X/qveUj32QyKWHbsVGzaiDoPE5ReRtu0nDvuQY9QL19BbFusvhXkWLy24OZQ4YZN
fWT7P/NIpHOaNcMltiBSpWkCwYJ8gz0NcB0aqjGoE4LnYhHmLVYp9leVRKpWdoo3/3mOdSvMHg1B
Ft6Cc8xSIwxOXWBGg7lFcNCkaYmIgmgXSgL+rAW7taqYLhqspwkb6FtXGVclRaSwZ9uAYsF+BFAn
xrYMR69qxhI4v6ZuZU/LlUR0lfOkV6nksc1jmtM7P0ohRWuMEph7xYJmCkeJYJIKjH4rHIp7+lqh
V7H4Zs1X8VbBxq7iw+hdRxZsxOPTr+5xf3x+nHo79ZCGyqFOaQmD71PitCbOpARXHAyqFNsovZSc
vNLhvVh9S/sWLxVc7Gsaay9r9Vu5NBp/BZN7C4YCLrAtmHBguQaPCHxJeTBpYwuOorACLo0S9nVo
przytrmUH5dUy8ol7riqwAblxu96ObkmwUWBLSDJeKyKBq9WMIIjxVoK5l9gnFwHFPcKTFxBe9fV
aF81zsPZcy8IDjgUOKoBDUNZ5mmbGgQygtOOYr0FscC8dxrkO+jiqwJm4+Kbpx4fFkT36/ZW/HAy
bN5/WHZxxDYZGhCzRSa0xkBu2Sh5k5iyXsOZV69E8a/v4pg2X5Dc1Ujuqg7By/3x+WkIIH+8H8L4
ZfTYeMng204s31OHp5wZ0KmguzSLmkj2evQYV74QOsbHCw4qJ6Xn57EoeDd+WKDojjMrpSJAVfKN
JhZOCuFwrMHCAQaETcHrCIr47WZWllTMmTB8t5b2RnBWQ/gqB1cOPQI4uHIAl6ZO+UQFVl3iFAQG
f4Gpg/2ujHkbMKvWXj2s4/XxlavXbkoOeI2tFQD+cibEUFuJwHmDFhj0gPIO5I0lDYgjYE2CmW10
QvAFuOyKpkSuG+tb3e7KaRVLj9oIsa+wuNLTCDz8Alf1h4dD/2VstZtiRSZQ4wRYoDhVhQePP1kg
jUZ/BOwGTRy9hq/lHtsQyPO3Sm7uKj+YpjVI/bFWn55SeVwp+CsX8mjNqHeopinB2TwM/DMOciFI
8IIklpg7/6rKuFAfNT2+Kclch5eNvVv6boXrPgTiT6W8XOUowfBHzrx4l4LNuWmFBy42noI3Z3Q0
oNJVVIK8XZjgTMulpMHqANq7ygHckW4RJQazpuvPTfFTxWdrOYXDBnqnxeIMT3njEk+NA5tEqpRQ
E13ypWfr3pQUHCpkUXMSy7/+PoPDWAFQgHdvqbONSTg73UY+hJcE8wR7/NpA651Y51ULYvZqHcqF
D5ehky8Pvxzvn6ac4nRBrWdJJosYZ3myHnw9XlvTROaV0h4Ox3UzTPL6r56DORUbiZbZGyWf1lb4
tJPb9tMO7Kz78zkYrZDUSmpIZJi4yHFWEKwJ5GxIXDKfwUD4G1khJQUL4temiOl6VUFEfTlmHKhR
6mRsZYqRVQXnlqCpSoMG70uFRiaphQYn3zN3rdr7+GFb7HwsyutMrV7NHNjSvfnh5cvz8fnhpfu8
yiJjZ5A4IROOM2qZTI7haHDMVOPALQaedJII50qZIC4qd13Gd3vbIvW7fK1g8WAqKuHQTz2V7lMa
ArlTydd4h+HGRg82iLAE/QawsiwzCIRJW65a1coY/0UsnuJklXSULFTq483hbgkROM7Vevrj/vlz
X6SNcKrW+CMNf6CSo9ERrJKXLWZ4GPh0CEjQSBs9w/K0pN5+wsFgj9yuKVwbLdNL86/Csoq9b9nK
3p9lhIeMbzY08f8b/5MPYTQjDGUSxXPCGd2SKVCOQmbsDRwFG6L+SwBFhmcLTg8VTs8jTt5//3E5
IDFqJy26Li3Ps4AQQBnBCJmhhCpvbfBvNdn24/qYWrYezmwtJ/pwWM6j/NIjNM5cRfmk2+ixxF4y
FBkpW5OiaRH8n1Nwc5y9unk94+5s967j45uSRlMhXB822x4+/C1XgbF3ZDS4tMUwWp7iJonNAyot
zv3h1KMgB2kOF8xpB0dKv4J1l9fe6hhYFHUBkX2F8t3ZeBozBbSShXAmkoDNXcyj2U5zVx7iknti
hOZgI6oFJspitYISQddmnBXcrIeRfuk//ejSWTRhDDUnt0bjCb4gBa6rxcA8uEmxRWAUB6arsD4g
PhO5rjj0tNWFkwBPCyZqhYB2j+Wtqz5x9yl8F1GuDs2+OI/o3YDDIJxLngasVMA5jQQ8PBeweZBI
lQe8EhGurgjFXS6kGPFxyUFX+Rn2XbfMTfXdEeMUc5Apzjx1JqgmhhzkE2AlmgAHGa6kFzrwVvmL
Wan5mguiKqJsvwI4mRCHZoMGeAiaokizWANOW9oYhzHqAD40TS03XF8ZCtsGG6pADQF1a6vBdpJe
giz/2+2lwStMB7hi4EVqg9h+JsKJNiDrYpBeaQO6J6q3c8bOtGz0LtzWcmrAoaqwvRpJV1P97udb
ULIaAx7cilw1Z7W2LSokorE0NriANb6hScr44Clz4H/8dRMt4UHJ63p0HX44yU4sbjqCbv+v8yRi
leUmxQGKcByTxKCbAVmPIz4b7TVHWPAEDtVGLexiwYKcw3owIXwopgI6UMylutckSgoSpSECCzME
jsxLlILnmwKT1khm3myQfY1ewWv0rgbJ/W9r19LcKA6E7/wKXaYqqVq7kJB4pCoHBT/KkzieTXBm
dy8UMSTrGhtSBs9U/v10C4OFA3j2wSHBoE/dklqNXt2NUys/eiv2uEZR2h6VTn6lD9VowvcRI7kM
LMnwiBF3BmN3IkcT7gvLcf8PyyOdg56A5IcUJ2VsGW1WHhJ0Q8J6GJjtUJuKw9k/daMc4FIY4DA+
mLgYB0r59TTtsbJKsgV+F/gvTcAbhLrGCFqSZmFEW4PZbdspWtSioy4eC+5LD+YKUsBHwjJ9AWMc
KAQMFnChyUPPPGcV2Jl4RY0kTe493sK996L11m2W+o0D7KDLnPoIu4fzUIZrRPyG424iH2D4CDzW
5FJJXSxDV7c9ybnJWMtuqxevnqtjCHgWf/09OZpXWRZu+KqDrz70ecnQXRAeRpA2moTDmEdYKr72
jeOcHrg8yUxnJGItnioiGH5/WPvE4pS7TrpREb9xbceCD6xlYwziyZgN3JFlwtjFkb4Y8Yl784v2
ulX+fc4MTveeIk4/ti8+rNRfkia71/fGKiCtg6mbknvUx4UTjob9k5FAqzm0cpFoY8/sD942PmTX
ZKZl7hVx7p2sSW6jzSar99Jtp2JHOBz6+Q0GLKOomaG7uLgwyYXNKAy0HdvpPd+j52sYuDGtApvP
s3j9Um2cPO63W2iAK+Dbh+Q52UZxQp7fCXScZEfedhl6wYahSBHtXhPlHa/4e51XL65UeYso/xa+
ZLvwbR1fkdKfVxlKOVzB3yK5Iqb+ME+KMC/q503C57I3/1v28EMrFdSAood2Ses0aaNnWdRi/4ym
8TQnGOdar18McrhIN+8EV5bwTfZC6q/jFQmyItpcW5QO3TnZJfk6TtLi2ry9MD9dkvwHGp3FYbYv
QmBrn6qGBWLxAYHxMD9dGl936yJ63iSQARKvs4UJ0ZT8gJdFklZ59tCoHul0MIsDFaLK3X89zR6C
pbyDu4fxdLa4J8bhf/Dnl3E37HH2l3rrL5b3AblIs3SwyqJNkq+S+JIY18erI4P6bXVjyFWx/o6e
5APopCi+LRdMpdzb+gcx/ClZq22dvovZ5gkmV26rSmjeiqGc1xgOGJx7pZBeCUT7JWy3xlCzxCxn
B/5ULOQ23oTd4E3HYLSFVt608ljEGB18aoLKT6Hb7xWPJ6XiMGmda3Q+P5LPs4C8olZEqQFsfEKL
Mh3DuzAXpfNZbHVCXM9u0KmuKg2B7hbFMVoQEGAaT6Brontp3Co/3ETiE7JIVx3t6urFn8u7u4Xf
KwCUWthZD1zRGvO6j3YxeeuSH4vVdBzAJFt0wxlEr4Rx1kmK6c35pVRfBJr1LU/ILH3Jzor04+93
6yIpuVqBsmsXAdbEBNK/JdOlfBh1VoKwh1Svg8ciWn07oxyoM2Q65mkeqpqTQY9qIPwonoIYX5Nn
XDubq2buouMe6XBo0zAcyUD288ZojWHMRMxsLqfjfpBo1lsY3s3ub8cjEOvuBvWG9rz+gZhg/EfQ
X20uq+uaMYVZ3s/8xaiXOyEasrNVWr5TCZRybQ+tmjeQ0YNe25ai2gHSMezfqepgEahPRn8tDJ1p
eWdT74D5jWxBQ+UNhVAqAtWvhTsUcw1j/ARQSwMEFAACAAgA/YwuSsEE1Ee8RQAAnx4BADIAHABo
dHRwL3Rlc3RzL2FwcGNhY2hlL21hbmlmZXN0LXBhcnNpbmctY3Jhc2gtbG9nLnR4dFVUCQAD7tJ6
WO7Selh1eAsAAQT1AQAABBQAAADsXW1zm0iQ/nz8ivlwtSUnkT0DDG+V85Yjy4kvftFZcpK7rS1q
gMHmgkALyLHvw/326xmQBEhyROK62tTKH2yJge6ne3qemW4GM8pSn+e5g5o/fjo9ZLNZzA8/c+9j
VIg/gzQpeFIcnvIHHqezKXxGfxBq0D+VESvu2yLg5+hTGs+nPD/6dH1xezk8enVUSQszNuXf0uzr
0See5VGa5EcnR19GgzHPHiLAc/Sc/seZf1R9zo8umX89PtoRrnIewO8ojHjm/IC1SgW2bamB9deo
B78PyaH++kAZpAFHk6cZb574xTL6ho56V6yIHvgBOC0TLhy1euD3338Ht/6p3OY8Q+enbWUUE0U5
ZQU/mkTTlgYVE7OPSZ/oiJiOZjuYHqqajvrYwli5HqNNBoAHETR9QQQfEnJooB6h74lK1APlhs/S
rFi7ihDlJEmTp2k6z9HtbQ3j0MJkYKuk/+5E1fqm9U7rD237XV81CTYJwDulhqIoAjk6+ca+cjSO
Ep+jd2laOIjaGGOUcz9NglxRxk95wafoHPrhLouKJ+GpgvuFhMIT5sU8UJRBxvJ7HqDJfcZZsESC
ETqN8hkr/Hv015zPwVOrXp6yKOkX8gJFGT76fCaENrts+GXgvjs5dU8Gg+F4jHrj8/fj4ftPB7Xz
RT8v++3j8ObKPb/6dHJxDhednt6Iq1iB8CNu/Gi4JuEKDGpoHFzfjMZD9+p6cn72n4ry6RLd8Dsx
PtAVZxkI07Cj9PvHSBFXuO5k+GWyNuwqTQQTn4TwoV87oBLh4z/EadbHP1HWfzzKvj2i8eW/Da4/
/w1HrHICJ0U+k+4az7gPo9eHmAjTbCoPOsrg5mT84fzqPZoMxxMHHYFYn/n3/GjKkijkedGHgCqg
y6Pkrh8VOY/Dw/tiGivK+zj1WIwmGRMxOA9DGHG9DLRnOUf+fZYmaZzegfZ4EZUHjkIsXTdMXcem
dkhsA5s2Gpxd8UI4Z60r/qXsfjMMQyvUeehbIZoMRhA6SQK9aYacWxr1DD2AwC9YVgBGNB5foITf
pUUkLWxrJCbZXSM3qL1VI3QC9EDBD1EII4cYbxDPgBlxW6OG9V01UtMPNW2rRvAtUB453KRIxSo2
6E+aRik2g3DNNOvNFo3EMn/StIXG75hmWurupgW26m1VJOMEqK+lwLb0n1TQCMQ1BRoxrZ+NOx1r
ob7WOWRz51BTN+yfjbtK47OdY6gW/dnOWSja5DuN6hbe2RLD9GxgieGj4L2oiJ+AewrJC4Mz8Fz6
NeKgJc3YHfyFw+DIFkdolBJt57A2PJUGZJO+rcqUcrKFSbaafR1nx9kWt1dbgzTjm7DJ6UoLCWbY
QNV5jlObDAaC4j+keeE4gLfd0Ps8OXOcGx6Oiuzt1suPf/vtAL1GsOTZJPjQn80czTIOFNIRNbYx
0bajfp+l85njBFHO8jz1geX5aerPxXx3kbKAZ73lpc3jEq1qUtSbF1EMSyLHNOiBonaFxwONf8+p
/7vpcE8A0I2Wfq2Tfp2wwMYB2mIjaG45Q+pU7S2ddO9QgKBvWMWjrRBIwDg2VFSe5zjwdw3E2jGJ
A1bWveZhAGDBUpl284EaeqZtr3xwJpZXC91FxpI8EmZO0kE6nUYFMMoqJqTtwQiG5CsZDzq4pox0
gQUfKEZXLMxn4RYsvtQPK++HSKz6WCwapCs0Anpr58rhQkwbnGF2DYhQt43tARHC0k2wjPgOHNQL
0jms/WV3wKTa7g8JQ7cOFKsjCk9j/JmwnLInT5o6nM6KJ+kCW20PRbuzzoDa23XK2aQy+xJo9Ibn
6TzzudROqbbFeA2QENwxCKwgsLYGAWTNyVx+PwkLnl2xh+hODsRRCkPyaRWcC4Q3HOaBvAAISV78
9qYmGBbu4wIo79Ub5KVpXGs6ieP020r0JD1PHlgcBbc3F7KzNaoqhHQyy/MMM6x1agl3wOLYY/5X
sAw+9QQMOQ8Q1AvnicwwWewQqkEsE7WjQgsyrDWF99z/Wvfkd7xYfj+RSKo4B+JpgofBrpuAT+vG
fJ7NwYc15qv19CCOIJTkzCTn8lNItwJeqoV+W+Etka3wtlvWu71TXOQFrChcl8DQr7rj7UMaBWiL
g47LabHVe6atgXf0jr1n2tTa3nviQ/fYb4V5c8i++mEfdB5qlaOoilue0kWc0658YfBtfBHD389R
cb/bqqbhgYUYUYvZYsqufKGaqrXJUKOjoabH/WcM7a03NXtEDmDIouUsLdYrMDcRs9uoDSlhrD5q
xfRf6q+U9RaNAsCICShAMXkNgwa81KsuLScKQgWBWJ2gAHtQmPllLJ6PBo5zz5Ig5pc8z0Hu2+pv
XgNZ88ibtglv0DKom5a9OviOQcc9qR0oKhUr4zXJr35ctAweFejkQ900wbewuALbu7jLZ5YOfCux
VoJuuM+jB55dstmKaqu20iiRWJaFTrCrYWYZSzDvr8squ1QF0lNxtx6FVJ00g6sqSQO6oNLQAZ8Y
dSshEpah2gCLdPOcQWxPQy2F6x5bEeU8iSDK3BmkfHVQdS4NeMjmceEGXNQfGqcdo+NqpKLelE/T
7MlRDQ2yP1XtiFsXY3Ur7utk6UypTzVq+qjQ15jR/509sLGfRbNixVONdM7kmIWwhpQJ7zy5SFMI
qxnPRIX0M2T/pRajZpVORW/oHbUQD6vPaBGDTeYjGqxUqjMGZ2UOLdQ1pheh5CydJ0FZ110rSth6
aIFG5LqDs5vbq4vr65F7PnYHJxcX51fv3evbiTu5dk/c8fXtzWCI3dHw5uz65tI9u70aTM6vr1xX
2GwqqtFNa2CGxC+1lhacpmM5x+ZYLrgNRTW7StS1sC4R/sjMAcBZHUUZXBMVuJWgZT0cBp0N2BrU
9OF8AnO+lz5uKfz4GPu2RhHIGcwzcStq+CDn5HR2nlyKW1ggVaOKhrtKNY0QVbRxxR9LsSKPTYXl
uqYqGukqkkKC6r6LU//rLSyg46XYSzGiIDm6iPKiRC3WHWdRDHwOykyiaI3RezKbbRu9UpepMj8I
DeSejsZLJSKWsGEqmtZVlAoB2P/jaly/ieEmbfDVl/wrMBgYJ27uOZE0BviqLKf9KTxHdUXTO0LA
gYXXIGTzRAg0LOgK2k2gwTTDQg1xIjGVxGkaigYDLo68x5l/GDzBB/Rc7dE2DQ/oVkcunO+m3n/7
7rSUBatwRTO7iWKh53EkJFVCdBv8ZT17d3eNu1Vs+hgtBADz91b3uISdh9OpQzRYBmi2RAfIgi3w
6n7jVIMQDsrqsPDVsoRKHFkTBQG5vN3pQqKR8LgpsymK6pSrQCmitPuXPD/jxTyTfYBlrXIlbVbW
XRvi6tIsQ7OpaaHFie63v8oPcmayNFlb7CTO1HRS2tmQpS0tVp8tFgufVo39KUtglsx+wEEwy6Ov
subv/pXmDccspG/otXo8YZ8bxKDIXZzvTu8yN0oe0q+SGImxcM3uAmngBy2BSwdRdekg7R8XEvqz
IeHDzDjlQcQOz6K7D5PJaMDk3fMqp2jdU8i5P5e7BbYMRd0PgsDDyEvc6Tx2WRAIrwW5rKTSVql/
F2EeZejdlRtm6dSFKa64S6c8exILIZgy1K7ivNAwhLhpGkh8DYlEtVvF9l0k+rCQqiTyx5mUCLKg
Y1pV8x1k2R4z0c34xOXsyZ3NPZgCYCntZ08zIVKz9FYdfBeRJqw0QOQ4uktESg3JTBQ+yeVkmY9B
IjdPctEaoDhN7qq8bmPbQTU0jc4oDM9DAgKDYcPl7PBYyMozi3vj6npYz+f5FKZnVsuqLdoqd++g
zQoNH/kgy/0krRUie6VtDXMqe+WZfolpabc8GCyx1D0RJUX7W/vssh5gtGrku0APaIgG4/FlDbpY
z9qt0vcuonzoebGO4F8otgcXY8iKZKb0sHLKJnds7Y5nmsq8tFUU3wUjI8ZGjAOeFaUHXgrjok/D
iMfBxk6VNWodt2rgu1hh6kYpvAb7O/EWrAELOkJVid6qnu8CldqsjK/BRQ2tnMhoq9i9izhieAhm
jPgc5iqxa2gRXSJNOM/zOc960Ax6RCMYUftyUFomy++kVUneQbXJYZZZiXOcKB/zOJQ8FyzvOVCr
VXndRTKQeiW5upXszaM4WH7v1Q1exl3tgmWPxm7guXGUr2iljIAqDu5ZtoVd1gOiJn5N2Q6E9Ky2
5jf49Vv9t+QyCxioWdndwZFGAPmUHN2TUWNkS+ADgSWb+8Uoix56dcc0bd3myk7uezHvNLG1fdVs
l6NUw61q9A6O0zl5xnENgqlPYXDCnThhGZPycDFzyzG5eY5ba3Yzns/jcg4zdb1VwN4FPQv8FR1u
g7wd+KsXAC7J0e4K3FK1khwnozb2iiHVrjOcTvSwNSctbgNORufTWew4fstLtbMXLRtmt8moPH1Q
983GM25WbiGa3aoTf98EPyTUr4n9yJ9gtERJeVNmks3Fdhb+wOI5K/iSeFWTWK3S7g6qOFU9oUpK
HVYyRamAtMq2lyJhadW1GmkR8WxNZ3L7mCishISLjbkCl6bCfN2qz27ay9Xa/8ZtT4cU0P2vK9W8
vblYlZ7L7nQHMYOB6lMii993gNv9FsXxmCeLuzNnaXYyL+7FFvlql809i2Oe3PHhiNju4AzEihOW
h11PVORWWbHIT1qF3u/hNkwdG8EOuIkFcIv70wr7Sf6U+MPRR/+WaCWKWQoEx7OzhxExSqwrUaOP
mtY6VEqvKp/up0v2OGyY46pyROF2DXmXjiCVQR+J9R8iCsdiw848jpK7MS+IWpXNSxPW8T8M235V
iaw7dyo2QHjViw1io0MlliUBMFHMWV72mSxEd5KNdezVZZcdJVSkc5lbylJ0t9oI1uoiZRHADbKq
HCgqn7irA0xsrklcupTqtixDdxKpBVSriczStGghpZolK87dxHow8ldiRXTxRWlIE8kVkaXnbiUc
HZKrjSUcWUTQX7qEQ/9xRSvDqReprsayij9ZbXPt4go9CE0VTZmoCuZ3bpGx2SYv7CJI87SlIHnP
qlWD2uE+k0VUvX7Laln/9u9Hqaxfq8AaWlexJuX++p0wotF2IeoFboU1y1Dfva2hYzWwKXIbvSi3
e9qyltQtEG07WAWilwZybaYRWSfqKImwlaTlzQPDknWbjuFMCWoLWgWz+SPDl2BA5+Z8+o1FhSuS
EBZvClv/eQq0GNG1AIcoYUmax5zL2Id8rhqz/uvXh2TzTZaGFBPbWMW1m/3FfZRXNOo4UrAL825t
w0D5iI/jBPNMhtrbWhFkdZZse0viN2I5UP3Ex+i4VloyaWs4fPd+uoU1zj3kTcWk6TvOBy52g+Q+
exALq/VNDWLmfrs8W2yFivzLOSysj3+rY/0Ri+LFzgdKUc91p0Kq68HqwCG22d5avYthAdBHyzBw
lV8utcYLE2U1y2pr1Eh7L/UOGinFZKVRrqsmLK/5S4BY7AdqIXt10Ds4FrEiwqTik3Jzr4l6S1GH
9w5RaXtr9S7QdBy8CLRhUmRPI7FG7P2MuDL5tFs1610MMbxAyn1VCyS3Gl7uLEsfn97Wht4cxFYb
FkHvzyF+81MOfAXhvdqdYmv13TbmQXcm3Urv9svRO8EvS+9Wa63SyITKzYz7Ncvfa83y3URT93QG
mfPrP1rd2Sv78wCJcpPcvCQOyA1bchcJuKHJYm3Ya2UP21K5Ibx7NS7jyS1jrNxlBZH3IyubLYPI
erlBZL/wGsmGQbTY64uALdNYZPT7cfM3GzffE0iJZROC2hvyzK6PTXHiUaP2aMkyIqr/ROBESVRE
LI7+h9eXFap4aqd1LnhbbCyi2kHXedkMdWuxLXNtnbCc9MSTu+sb4a3Oqjw/LFV9K8LJdm20NcXa
L8YOnefFZ6ZY8rLsQPA/rgJCiGBEEQ8n8yIV/47B/8H6B9UCzwBHzMTy7t71H0RG+YNeYOKxj6UX
xH9tcCtp5tqGnB2CnjLVLI0sbYOJNojKHd1FNOXBZ5BdPm0s0zHIxmqPJ4q95OVlMNZHJaR89Vxx
x5zRDLi2GOwjln0V+17TwnFm8HkJCxbAT+K2TXMHjbxm7KczHlywqRewt+I+CILl8eqxobVTyjV1
+xTxz1vkwz1PCZtG/kBkpuJpnfpOCwMGam8FsXwGAOudk0lVw4FpyIeXSuVLM9+JbNERHSs3BL+V
rRcA5bi3/NgBMaFNwPeO1T0RNb2Qk6CRHi1Id/H57abhUj3nuQLOs5U9wtBlqcFx/tXF9Uxepjus
SLOXEHy8SKNE1glxkAnBvYPyAQJLPIDdFC+7VcVa57T4Z2Yt8/9r1vpHJIZE3VP4nsL3FL6n8D2F
/6oUru0pfE/hewrfU/iewn9VCtf3FL6n8D2F7yl8T+G/KoXTPYXvKXxP4XsK31P4r0rhxp7C9xS+
p/A9he8p/FelcHNP4XsK31P4nsL3FP6rUri1p/A9he8pfE/hewr/VSncbjxuNjgbiygpDmdZ9MAK
/gPb5LFZPmkcc7/G4J0e+qA6ZfKJlBLMZfm/RSWBq933xm/tFu3lukV/4eeXMPKrd2WKf6QiXkda
vTQTyTcroJ6h972oOHAUhDL26Ky9uhJDx2XetgZ/W0NQbyA4oDz0MRZKgmjLJfmyQdhGgzDweCC1
z9YbmLxiQ4MtlKDM2qBEDPjMbuDyQ0oBGBwneBNg0UDqojQTc2bbobCEqFssIVpLiWGK929Ag75N
CV27QmfSXdGs0bJ4OxrKwrilnYhXKcIAyTbA0oQs5aJ6r+VgdFu+gJQYyjDL0ky+1bR6J+nyUl2Z
iMfUruZTb/HqXKIrivIuSlj2hM6n8pUPyuL9o4/LV4+iPmocVDH0zvP/krknX6fbR8v36aK31ol1
emaqtD/QT0hfO7Np/+TsdNDXsW6fwTFrYODjv9+7S5uWs03uYMIdr1dvSxjfR9NqiPcwWK6fUH04
tOy+ZVknfc02z/qWbun9d/bpO8vUT+mJPdhi+ZrEJh6NrOP5P+KubbmNI8m+8yv0yAhHQXW/PNbV
q10pLFueiX2bAECA5poCuQTptebr51SDDXZ1NyDuDmPW4SAodLPqZFVeTmYl0NsV327nnic0syc8
CiYTF0QLX4gQ3JLAVSYh2AJnm3zg+n+7J4drQ5zcSDPByR1fb7erKc6Pm+vl+tscWuq44NFQwqIV
RPBkiXVek6CEUbEYIyg7jfYw7jnMhzsa5CvnJsiFdcvRCo/Ixgz2SKmlzijCrQD2nCTxnFIio6RZ
+ZI5ndWBduR59O09Q/xis9pM8Cshl1MNOQXceWaZ1lDZJBMROnOocXBEBC+i11q7Yk4s+mnEzxeH
UK8Y1xOoV0wtZ33Nr5v94y9Pu93mYfFh918gFJur8FSf8/Luki3qIKzanRLMFh6J9pLD7hiFyUVL
MqNG8MxFMvm0vrxM0c6wWHUvY39y/o8aSfUhrrSSIqRst+bdD7Dx59WpY315uq9P7268ic4lCyFJ
olkSIY0m8KyeZJVStEpxQ8OcVGcGHqBjdKMmTo7RrVpXdMOv4/mUPv36MTzc7f6+SQ/18TV16SVf
gC5j+RdywavTt06YrD2xLFAiqHHEhWQI4xkmUKLzwQPs4Snh7z/erB4Qit7nP7Gyz7oymebE+k9v
vDigr1RCM7YduKD+Tc43Swmp6gMA3l0KTRf8ABqLKkokMVJ4RRYj8TFKYpS3VMUsKUsA/bR/qIv6
vv71YC4rhRTjufCmVqMV/PLb8qE+ofVS1lUTC42/6H8FipQSt4xBe3MM8HYFhpczI9qF4pCHBITM
6dJ9PtDz0lvd/v3zNPOG+HyxgS/BOybw8d8I/qfNI6jHpdId8PoC0IIqZg1j8BZwbnDLjnjPEPko
TSJam7UTU9ADtN2o81i7Sy1STadIFXMdUmzNH59u9v33FgGoWChADAUbX0wixYtQeQhcW8gGiFmI
gbMcozoL0a/XyGGQAp9wboNb/9isMcD8bS2+i1aE5ZxcV50rrNnE/c3u6unrfS8ac2bBugBpjDK2
EFo6iiXBMZjO2IdUEo+Kx2gHijsZqQFhhv74+Ca04Hlx/9zfPh6/0umSyYUEAsNjYtFLwkqo0cJw
4lPM8FCwdCORETnfIhgO08xvuZrO7+R6FA8+Lp926996Fvju0nALC8KfHX6phlRAElwUhGoPTFQD
k6SeKJoT4xHxLfqzG959++PzBN/d8hbP/O3tPRetgFdTqddLNpJ6kCdf6oWrHpcrVzeAeZeEp4QG
Bt+VBVyvLoIwidxSK4/gwc8K+zLyHPY4uH7RQpxxGluxHhGN47ezXpouTCsjhFlUxwvsmWelBEyR
W3hbwR2onQj4EVgA1zDCyfPOo//62BO+7vnqEDdUbIpbUSVH6919TfJf/XEuuJMFXQheReh+qY6F
GcME2HNkCHgdfOeiIzF5mm3mHsH5NQ77ea55IZ4vNjIwUMuJDEgre0v976flw7I+snTTW6utRIIW
2KMrUJWIZER4pGZB+EyyNEEoq5OjQ29xKGG8nxlvBGY1B2bb+651ffBxj8NUh+yUtN5nRzhcBBEK
OFyuPoN7E6VGNJZmFsdgqBaCEzMQ3NhzfPip8+SfutJe9y3rA+6onLDQt0iyL1gcEw3xQiiieXJe
pRyZ06/ZzMkk89s6uW0k0NWcQJuRcd0jlA+SssXn+m8IRTupuO4CdLaqGBpJMqmyRxCKULPSyIqi
CIYO2nreGS4fVvO+oXGDn1ssw7u6SyP5tjPyLXmvwF1l8Escag5jrovmHNkYRPGQIld/F5BXeeSy
JeSUKYvYqfPy/HS/2f348YSf7m6/AYueA9GKsNQzImz1mPN9+7q6Oz7CqxLm6kEslTV4Yl9CMVpV
8EiwCsvEqgjRAi82wzPayF/F+IaTnPCFw1saQbiY2Qu82dvv18rC/lYPuPaPyxcKAunhB+WB9aec
PWPcEANTwaaUGnEDfmREqRjwZniVJ/zx81/i3df7G7CtgRinQLRiSDojhqS9St12Ifjoh7RaKLqw
lfzDJpKmiijGYCBaMigUMt8ci2DBQqUUnfVGwxEbKFqvp1C0GSe2d1DEaxBqhgzg4Ia6XwBJc+dM
AJUOMSGP9QY2m5gmKRuspC9wk/z/rOOHaw1gM2eOZrXq127Tp2fH5asLV5JTPNVyTMiRiIjA7WwQ
yLYTQxqjopK5pX6jcRoMzs2EkdVS92pY7va3f7s6HNsdfYJe8GpHqtTCGgfDTxIMH7BgR4KRmBHs
i6vFF9cimY520c5rpmDWV3Lkfw+59Z9wuQhi3RaCzi1YtQifQrZCKYKkVxEhsHteg+Qk6FfSDEll
lN/loHXs+U3sr160AKcEWm02vF/Cm/VTfSrXwh8zJMUW+L8uYX0UR2BSE2El8rgkQSMjfpQsHEsq
wYxNu4Sj0YZINDXTfEb3nOBl/W52v7+I18WtSmw5q4AYHCMsEICKgW/UwcIahCHQKuqLkEEI+xZx
68MQQxOhd783MjFGZ2Ritqtpvpz4XO32+6ujk+Sqct0qDxwJlthZ8MRaGGE6kgATIUrA1MDVwSTT
rJuZjjuC5WZgybGz+fHLl3eX8sALOh8TpKNCIFsQQeRao/ZI3Az4DuiXzs47JunZ9cWI8wuHCy3C
1RzCrem9y48fu5OIo1HzLrVFDlCQ2gi4ZYrU1lEYEAg3snYrCtJ2CsN+mzjfzN8gl2IGuVRqvLab
3ebwxb3L2y+Pdw8Y7N3lwR9w4TppbLRQa2mJ5K6yS+i1i+AvUpvohEHUD+5VAXI61YlNmN7Yiqam
9EUrdWRg5W73+Hn5sEcg7vdF2a7iw7XxzmdJJBPQZoR97IkRiFAlRaeVtqWcL6e8PIT01Um2//WE
sv3y/G2Z+/czoBuJnZVTiZ1dH/OUu/tvWzCPFz001Y/XNNqESIoAqRESP0LQ2MeoVUm0fkcbn89V
muFGSKbsXq/UmDp2Wvnhp6GHFAtxYApS0w6c0EnVEqHMAkHGM+IkFSRFjazaUsft+crWZIrGAR4u
NtC704Ux9DVVvdp83l2/FIg6jByexMhEiZQKzsYnRywDxwLl4nAzDKrzT2Bstv84+RCyYVdTIzac
ih7y+ocflqubHrWgpmO0jvNcAsyUZgf3yFQglhtKsmU+SiENj7SNh8NxGgBcTxXPbOzVuL5++Lr7
vrojqVzIqoGIdYwVnUlKFtlyXUoboYFRu8A5VVl2xemz9nbi7C4+X7tokW1m4Dra20n866cvn2+f
rm92o7OKZ8cNuiw8d56kWlsQDjm0zTQR7aIy8A4yaPpGCdo8klYax+akOZyHvUTX3d3jzfbbi6tD
zKadNEnakLKQhBYDaSSyM09LAQ0xFtTIWRPjubA9HLgB9vzooAaYlZNTl+aJRH25wgi2YGrBadUP
DZsSJRgS8EoEBX2z3sHKpECAL1zGor9TgX+Z4lQh/uWOixbv1YwQdjUSYlhP/VAfl1MfOXDJpV3U
elr3WgXJSBsKheKYwmqMtGAkGYyvOCtCkjna8JoYOTfbaRY9vrOVz04zOaQqm+3mYAt/pC+fx8cN
ylCuFYW9For4mJStNflCXIZs3OJqEP+q44YjvItWgO2MVMvxcdX+frNBfvuwWd9d727a0kIth0IH
u2oo6wzFZeWdxe4VEKR6Vq9qXgiTCfD0zMYoVX4Lvv6lQ/XLHKim3jG+rV2B9dQlI2txvVeoROKX
zfXN/vFh4BRUp6be0IR8shYui6j+2IPKMQe5g6tn/tlp9v/If1rYjdRa6BmpxfGAZ7Zn7RIsb8EO
OYxIieUiI0GGjzzbh4JQFLuiPYs5Z6eUO+cMm5EbaFszTV3tdrkdqWTarJ6uD6WsfUVW3QfravFc
eMmjAg11IBcCYR8Glzl4mjW+Hhuq11WghjPMr/jwjlaGFZ2RYc2OBPPr/bH+VIl08DIUjuUzRcJO
BDJcl5IhmrnocrAixzKiGMcRhhM7up7GOMfYONs+yB7vdtub6+cHjdSIwmR3fN8l3Rb6kKnEKmow
DCxpLUF5RYp1JdAcg87x/IHMdI5T9cjJjY1MXEwrMI5rPcq2j21XgtHqfKnNrKs86ppsiVQy8cp2
x/lGCBWyyfKchn6dWV4pp5EaeYOcCXInT+kULAZEDlGg1FpZLZBaYTnhCWm/UQWR9PtHkudP6vzo
nosW7tS+nNPjTLaeuHcPMK21mMOBnTN8IQ5FNklNrLULLuvpEVP1kB9kg6cUqOQUb7/dqWqP5HRn
QL160Yqj52R0o336bXN7X/UeuVQt2HVnJCp5CaZHaIhI8pSv7Qymdio6qmIqsmj5FrHr3zD1/E31
SiuMnRNmacdHWuuXIAKVs11Iri+ViKecU8iaFFX7HkKViidJuIBNw5VDs19VcxjOcSJTHNwxlGJJ
1fSgckn1po84H292m+WDv73eYPKXkx7Nu0hbSlYyp0IKBX8Skdajbenh070JodZ6efoXMakZoK2g
M4RiyRTrieLomVowL8trZbDuEzihEIlzUs/Cax09Qvt4JDnFHKTOUvtyzmfNFLAxNZ/DI/pYlG6W
17u7fX0c1Wa/r33AhydrvuDrOs+4FEEHqAyr51MKSTCSOPAd5Tk2CSGrOxMdRKjz4zYQOZ/m5Usu
7KhH9ONyd+3By7/tb2rIf/ZK3WutEmOlGOOC+NpGIKxC2DdQEcQBlaRCEm3Um5OxIaRT/R4vd7RC
i1mh131Y+7J+2Gx2v2zqs2D6vZBcL2S1B2QR0bjEiFSmtpQ6SpxUyEWD5+DbzKqS2u2YDjdCczWD
ZsVO9HBsm+jWdXMoxrvWNe9lSYmCytTOAuo9geNBtNMhuAIyVqh5VSPH90Lc9L5WoKspE1oqbV7O
MtfLgafRTncpWy46UmSYRJVsa5EvIIWG39HOKxFzdMaPzo+agS7a2ewchLHjHgbDuR6mXLlLPf3L
MdfeEsmh2DzB9GBzUgdlgv0no+3wjpEIM0qqVptxi0wGcFoDDn52R17ScQOgxVYlsDoQLxUlxUdu
GfSg+DckCD6f6JfJrSyraa671FqMZAm3T5vHu7vH3+ohiTx0ZtbXbddWTA3PcDCkgOpgLyKcTEDG
54Rw0VCk9Op8xvfhp+P4p7pBjjc06PV62tiyNEwPapeDjjx+iCe2RAFaWXswayYuHfIKHxUosQZ/
Q7KRmJyULuc68pZGqpnpHZ1hvl2J6MNPVSMOJWppXNdWY5LjETQ8G1YddCXkGUZGQbicgQEaV76r
FM+Dn1bj5xta8DOVv6VZTQzxt6dd91HPw9T1UNnUAKO76n8yhVsVCfLHXA8hEQCtF0RZriUTChEw
v6ok1U5yQpD2plaYmTM0vDk2yV9jHPY0FZUzOJKA16iLXz+N4EzIhPMYkCixAFleAx/DzkPGhRHM
GWszV3pUYVjub495Gxe1EaMzM1YqqEJYQCQRhSUSvPC1n1gZkxNW/mx14ThqC+nKzEDasr7Uc/v3
r8uFeuE9lThHKpRjAZ5LYdlqAuyjZYQmo6kQPtI4amwYDtLMblczvNAtj4cPf369BdftZ+duwbqi
c/BJR51IKqrmW5kSrzkDkVc6lcS4N2zUVDsY56Kda2ZH3HacvNaT/H3vemuP+Oaq3NxuPt7sH2uh
tutawksNlixxmIUJxNTGY8EVyBd3cDSJesG9ZZzFt3PzLZbTPe0v97Tib5dz4q+OjdUH1ekesb4/
0oJOTKSzySVFigabEQqmHwQ1yEBAMiOXMCB1ThuHQ44gTWvKyyUTIxupO/J4e8RkRT2RqMCio8ln
YZGdWiSrlkXiQf0I99rboI3R3J5NF4YDN8g2Mzkn3tycoS6Lcnj2cqXmHKbMaJeBHn+vDcpFBeNB
0UOERYviHfEuWJIUiBbLzBn3ht3YPZ4TNz5fbcTuPigyFhtv9hvy++bb1+sjG+eHnjHDIpJTEMbK
CCKyowDCRrKz0WgWdMnzPWPDsUYgzByIde+mnnb/c7M71mSFWlSSWDQSROghQUivdQsHZxmAqrYU
lBCQIHT901MYw9FaGG4mb9zCibR57P3t8nF793CsvhlZtbOrwzrvECvBnY2pvlMIYmvDi47CWxtl
gDM/WyJuRh5hW81gWx5tebX/uqDHFeo+nJAZGIyEgdhat1JGkoAlIyqp4kM03PFR/joYo517OWO0
240emcbPqZ7Rs1qWFpR3Lde5fiaNEm47F8kkjBWZarE81T45qvPbHxb8nOZv+TkNZVqBtU5kWlF3
7MtZPj3eHeOirWmecy5rRgtBqI5w/WBCPkVPVI5UuqBVKqFdz5cx2qndNElaMXtsYP/3z3zURmBK
0lwgJudUP4to6kdqTaH4J4s6p6gLZ2/URnCcvIHMZ/qsVlyME4n/2DysNg93+6oHPQ1jQRopA9yD
qifiNnNwGqVJRtYuuKGF5/O5XD/oPPj+agNXzJzir0Rt6RTfORNYZP/ZUs7+s/uMD33uN+mqLYll
kSkoCY+2ZhYMxp0tXLmXsKXkZCnxNXyyn2Fenv5qI4+a6VJe6dXVaPn/8mFYgj8wYSl0F4i8D0Fx
bZCK1I8d1Ga3ABsgWWsVkrcpF/ka9MM55iUY3nHRAt7MSbHtyz8P/+DtSrrktpH0vX7FHPtCDfbl
iFXWG7ufx2q7+5rJZFk5lqpqqkrqtn/9RICZTIJELjNTzxcpRVJABAlEfLFi+PL4bZhnIYliREmW
MrepoyIC5QpMURCythNSSTCus7FVpu1JqC7Hq4np1/J0C9prpe4/Pz5//P2hR9PYjm8U/z5Ymjox
kO4SczSDZ52NJWbELdwyMRv95tJtouecOXi4XfF6v1vL757tlrx+92FKtWCH+LY5JARhYjgPApa9
wsp5ASrOBpK6TI3nIMkTfIs3iRF8uJiKMd2+qzlhLfb0KrwDZjI6xV9e9tv951KWNe4RbUvmDkh3
DyxSMMuBT4JZ/AYEPaA0zry1xrPrmSTV+BfySarnFtyYFjdLy/3k3S9hTPwPs0t4BbeO4VilhfUu
gQNPWGuUsfQoBK88SzpdU8BXYgin+xUP2+0aS/c7s8wg/8+vm+fXP8ZSfKAYF5xA3Fyi7SE52I4K
ezVg+b2CjQUQvxNa+awiz7KVDzPHAdPgZ/DAdL8ifWBrm2nH2JQo+b370YX/WEVrBGB+g20OFMD9
jluw4X3GnEkiHAnMaEb/rLyXOYV3FRd87U/b8d0yzWDzbe7qHjN5KREKxF5J7hfUx0h47vAsYPgy
WFGMkXsNeE4Y6V268mXcL9dUyPyJOQuDbEQQ4OIUQcDi9AkEHwvcMyXcs+y7yLGRhgm+s5a5LlHl
Y/CEONI2FE6jLYjYNYiQ24UNWzWJ+gvHRC+MecFCLyuGBtARGahKXnsQqSR2LnDWMS0NATvBBeIu
2Qrz4SvyFFsbU4M6ZFzOcvOG11I2d0zgMpMrymNhi9e8syyC/ItOd/CRwXow1kalhJCBXsz6m49c
k7YTDdKGJY4JGbMg4/556F8fi1eSjNKB2lIcQbOVWGstZUJXmY2dpZoCEDdBKpeSFeZqjuU0+nWV
m294fvFQzfWwxj2DpuyE99P7BeA3zGWtYFN5nhSIE+c6K3TqAheOGZIB9+c3A/zH2e9q+niL6CmY
9LT5MnPdFcdhDpFaH8E08bBsMvNYyhw6ERhPYKfLTBfF8LMxFnOb1tx2ihMWtt/5k++fqaPDhVAm
QW3HTlFs4OLASsIELbDIVRZMRxbiwuqtR6sIsZsGIVs1Vb34793HlSrwwDA1TMF69CBu0JPptYxd
ADhhVGKgxtSfpApO9FVsbU3j226NXPgFK7fo1HthFF4eFLADMxhsHix5BJFqvHUYxDdcqewZidfc
cPXQcwLvxWYtYe81Fys58ddR1GBJI3mnSk7L4VcpO/EWUHnqIgExCzAV3Q9ggzIncyLMuKguK6pp
/HN7/nB7RrslW7Ky1eAinRwL5+VuyilaDfRKiaErEkgHrxgUq7ZgJRMvrFhEuM9JWkv6dQ01XNwt
s1x/AhPpdfhlP/zzFI49avyiCpgxVIBRYzCKxUHsdB5teSqlEoRbJvlNMZT1POck0/K5mqvdsOZq
RyYn2G7/8rR5PRW6SkJLKjsu2aAFYHiJGYYOnVEa9K1MDqy3GIIJPGbbrmWpB72rp+4b9DDZqHV9
KR2rSgMcTN8o2kyN5VFcJYC0oGU5SHdYp1ZjelzuQJ1pzzTsMO/fwrhCDfXxSMb58tjpkTmrVA4r
1Q0X75fR0IuKm1OntIuyk6FkmhHQaqjkDKMxCx9Es8vA/05xn1PDlirK1hwoNeGiv33IeaGGuQaD
3kYHlqADNQzrpDNZkS5zLTJgyADw/o3U8Gn2mmi1XvEURNyR6H3/+PDtpIjHwnoiHXGYqcTQdMJk
VgPyo8tMBx8dUz7ZZTXrbJS7eiramN8sP/upC0Pp2IEeLIoqcRQllNF3fKyVt0RonUEIe8Ml1sfQ
zqB0zjFnwjwsBBtv7hpSprnQOKTcr9nZrsUi3fKlY/CX/W54vFx3EnRgimL6kZIIMyi87aQ7qlxw
kWvadKfNGJhP0WZh/sRdTW/fYqI/romvD/0pplpaa3kKmFh3QWs5plp7oQAS8QQQRVmTSToTKOkb
S2LLW+9QqQV62GP3j+Oy1BqVXFmczlmAa4DPRMRWTWDXOxVNp4LDlHCds7iIHE7D1kQpvSbq3i4l
8bd9KcDPm34Y3Q5YU4gCqvyNOlgKQAagFgTDpAGiTecYwMcgWYJLIkp7U87DcYYzQvlw966mduU0
ge1x3zfK7t8/b54+7fuSElhaUWCqMuCesjKpAcEKhi7hzsDXjqUiCvBPDBLwu475SgXOfILzSSfH
J+YscKbtmgVmpiKA9/kfY7h6UTUHZjD3HtYDwdJaLjUZLU7qA7E8G631G7U1WVBQU282a+ol3Swx
0+afAaZ53hxa82E6IMVsdzNKXwoqg4EZBJLMYAfJBO8fMzONdYyRRI1oKLl5mPfflzMsm/9N9yvy
5bDel3yz2cIKqrZA0Un/9hdTVo0ZXdkye0EBeYLFAha14Lxz2mLM32qSA4hqQ97MZBnrzZuPjfcq
rnZijTv4Tk5tHf61eT4lgR3CjhxkdFaqY9jDgUc0SaOhHbAigpGW8LBIAZsNUk8ueWvy7UKqgBmQ
Px6zQsdgkRFgZXABNAj0vGbGsMsTBsGMcpQkR680Jitjtt9SuVXROdyvUYIg9JTo8d+f968Dn7QC
VUUWR0C9IM90Z6kDIjVWaEgdOqUs2CE2RMMWEc1qoLtqNs4aJIgJXYWf8sev8H+rEDWIV7CWUfo7
9LQTpTvPvOtIYI54540LvCagHqamYF3UbwW77xv5enGs8mD4tBK0WItYtSuFBbUIuBxeBsOaZ4O9
i1MiAfPtb+hZEs8WbRzv3tXUrbes4GQdhPry5fHhx83DUAq/AKipIvBLs+WkS2BVSnQ2ALTCjqMA
rxinArC2Y8m+he0wJ+Ecg6cn7mp+GiuDi2ViTbOd1yE2QEuprNCjgwXYNc4pjx1uLCb2xc6TiEXK
NgSfaQYl9+aBt4mcC12+lipdcNli/VSI8Hnz8Ot+pgwLQg5BZBIpGEmgNcbAR0BrMHFQIzkSw9gi
/242Sj19bxvTD1Mx+xdQiy9TPjhuyAQbwHpsooCOPIC1CBW56sA0k8GaxDNZ+PDmY9STD6o1uWq0
Glx8CyDF4Oc2JQc1Sh2566hg2PAsy85nEBjJoXSiShgj3uZbNx5c8LNGmELcywU82w0vv70+Pr1M
vGAorjimxh9oVTpliYIFGwhAcY7f2ktjOyKUAkQuGHzz26o1y1RHavGBc0Wbqwfvai5Ui7VhgegP
3qZVPyxuJHpZOMojpYiVMehOSW4x4xn0ngQIJCS2WM8qEipuiB2c75VlYaTtmlp5zxYL6yRJcFv+
fZ/3M4OUgEQhJaeHS8vAePMcq+6zK97rCMvL8MAV4M+Wn71ddY9TnJf9eLdiQ6/rVvGiWLVt/Pj1
+R7shVI2BaK/LKXxF8pClrC6UoG9gkVKYOp1DrsrCZASMmWm2BWtNY1/Ljf/cLui3dC1j1MYLo75
euF9aSiA/+/lVKOq36E1KjTgS2zEKBnqWaJ15wgYp5HIRBjoM8Xpn4E162YaK4JrfkUDX2232Je6
8Pu4/a/+1FhMlX6jUcoIsFljb+CE6WISYBaRnRBRu5yUCWzRU2w+yl0909owET2TZ50wZcF97/7a
WPHcc+xNxzudA9Zdc0A4JNBOcJadoDGGmK7CHBz7wlKHu3c1qapFv1m2XDiUN32CnWoPFVaEoFSh
SfskAZFZjfVAmNHgUgClkBJzkQkVzZu08TwWWH334XIB1ncfav5sYzv0w7DgD93APbb+OJTxsUMZ
Hxgr3mCzN0cIoGDQb5hDZMBgECnA2rNEp6vWb7jQ8DB8X5O7zsEuF4/ivnIC//y6/3zqODg6rF0k
0QUDUBOIG7ewtRaMB/goilIwft3Cbjgz5IKsBhjeialctv/69DLzdPKxIYWl0ggnSMdKvI8n0zlF
OWBDxpgBW08vm4DPx6kI2BnTIODU++eHEgWYjM3SIQvrITx8vk4nlGYRtrqjWsLu4laoHISUC1uz
GmU+vxQNjQAXJ79e+LR/GF6Gvz3+Njzs/5j1JsMtAua6CQpzT4gCTRY0rB8WYieUJJpakDdxQUh7
uIoi2XCZS7BgFwv7u2H/ZYdNbeYt9mTkgAHA7DYeq4eYxANhwMDDw28A0RFQszd50g6Dn6scLzdr
oo1uEW2XDSGGHo8N+vsz/BNPczjQrugxmZtmg1SDorLoSAOE0AEKzF0EacO0UFyb2/rTVhOdFSyz
Zyp21LpVkpX2XpWk9NqsdT8HNO6PeauHX+iTQhFvQWCqgMVFRAIqC4x1hBnjGJj8Y6f8m2AOTHJe
9MPNivhNQ3PJkrSuDxZI/2nyEhstx3gYRs8FWLKIGTGXyqAlLkGRKoZHCwl6xl89G62moicNKvrJ
hxTe/wOPQTxp8KMvNUsWPJbBeK4UmEOWd54mhcd7SMOVlp7a/6cvtQoCLQipmNiqtZKR292wWtab
5/5T6aWGp5KQw+kkZRVQXMnGjI28uIKXC1IcnX7UcxPsTZ7h22uXjoScW/GH2xWTPV97+2QPC2bY
HtoUPg/98+9Pp9x8zuUpbykQmSPgSYldXLHjHoB5wDewYowwjgd6prP6YtSKpN26Ut/KoV9lzX3d
7R/fvR4COg7/NQsg0YMBWMw/TZKVPoBhBECdW8U6o0LoiKPYrczhiUuXAfBs8DO27OyJOTOgnNey
EQ+GWTqc8NC9nwbsKjc8H9rLnYK5mqJlTkCkMi9BoKOa4aGc8AV/EEF1VrBhaLytYVljrjMCpvFk
zZ3YNLgTy/SyHzYPvz4/fqsOT2LRAM0Ow1Lor/UeuAmw52nIkQRLkhE3pccfxz6T+nu4u6B6aFB9
v9zY203/29enqmMw4EdxaAdRIg+ciIQdEqyliJJt6sBCsZ3PRgYuvTDkJinvFzPNORjvVfQztoYt
eHG5pgoEx05ihWapSwq9wu7jDFSswJ4OzGLcAYvlOKeJBWp4/D/j+vHeglTWIJVPiuDjE/ZPbWZ1
qQxQwBG0llCFGgCbBt535wnYUyJF6v2f1Y5lSWXN4rpqvVxcuZT7x02JXOGOHs+BAhxvtPNdZBx9
IRLUg7Ue/uBUwFvC8OEV9QBjnsMGcKui0zRsJmW25n44oP3HL0/PmCJ/8jOV4kMAZVkwGjtKsdm+
AAHkMD2S+uQB6RLHycL2WI1U07HdtujYrQpS50VC07kirKQXFakek9cx2w6sf+xxjCdN4Ll9hCpl
DMuZ5Mt9bNYTVHRuh7VxonpNF2rox+EZCwg3D/0w7xtzFHNEx2Aihw1X6jiwZyZsMWy9FgTl3pnA
bvJ3NaY54xdfP3hXc8BabC2rHU4nX075aWhiJAa6K6ouZ4f5RABrfaaqszlysKe9ILepoNPo187d
XNDeN2i35ugFg0X3+PnbO3s6NAJtZ7DHAKiYjlqsbgd1D9ofZDbxDEw1gL4+Lzzs9TA1BRvSoGCz
XfvYP24edgWLrMwcybRSDA8LxOJQjnnfDgAhOhQJ7KzIUjI3ZuQcJjnrXz/cr1gY+rXVr8pJShUL
2O9sN7yWtK6XvkSFRifKmKiVjKIqE1B9xAXsvoJA3QRgQiUVI3XhNmMTI3TxOM35aM/qsbua+hZL
q0ryETEWqwl/4ac5NA/Bv5EpsJNF5r4jinlEWCiQgamAvQBFJCSK611wytgXDDa8XVNvGoL5frt0
ZsX9eBz58+8fZ6GO0tFWHsIchOHRUgw7NGFJDDaOodgbSeI5KYlqUPpvZ26s6Tnz6VbP1dxvW9zv
GgdkYU7GZv/QdB1kTPTQgGtowHMBfQR7GxFO0EkDFPMCDJIb99Q0zdldNT0xZwQmX+sLuLjs/fBy
2LJHrxomTx9q2Z0yHr5a57VB25dIsKYcao5UTkmw2V/stFCNvCBtaJCGJ8Rs63LEamWx0R+MUMxr
kO0UNkLGpuoiiM5gtlAC2w97+9Fg3z7+e6LmXGliaz1p0lhPmgxTBcFPH35cux1UsEkFPMmVZWy5
lFTnkjfw6oXjkhJPtXtLt8OMiIp4vm4ADRctPWKjT6P3rdu8PExeUSFLr45SfmgNjUkQbCUDWpmr
rDufLJi7wTiEbyrERSLqesSKoMZJkXhxmeLxr6f+3eFrgMW1+XX4Ug7pPsGgiGnHTsUuRdR5GKD0
Mtouce64Bz1CvbzSsW0x+jknx+KxBTe7BjdsqiPb/lGORDqFWUu7xAQiVZouEEzIN1jTANuhoxqd
OiF4LhZu3mqUan7VCKRqZSd/8x8nX7fC6NHoZOEJjGOWO2Hw1AVmNMAtggdNmkREFES7UBPwR8vZ
rVUDumhAT1NvoKe+cVyVFJHCnKkDxYL1CKBOjE0Mj17VjGUwfk0bZU/D1UT0jfWkV6HkQ5nHdE7v
fCmFHK0xSmDsFROaKSwlgkEqAP1WOBT39FqiVzX42Zyv6qmKjU3DhtGbfnlufdy//Oaet/vX56m2
U49hqOLqlJYweJ8ST2viTEowxQFQ5Zii9FJycqXCezH6Oe1bPVRxsW1prK1s5W+V1Gj8CqbUFowJ
XIAtmHCAXIPHDnxZeYC0MYGhKKyATaOEvd6aqYx8Hi6V2zXVsrGJe64abYNK4Xc7nVyT4KLAEpBs
PGZFg1UrGMEjxRIF+BcYJ7c1irvSJq6ive9btK8K52Htua/YHHBMcFRjNwxlmacpd9jICFY7ivUE
YoF57zTId9DFNznMDoOfXfV4syJ6WJe34sUJ2Lz/sKziiCkbGrBni8yIxkBu2Sh5l5myXsOaV1e8
+LdXcUyTL0juWyT3TYPg68P+9WV0IP/8MLrxa++x8ZLB286s7FOHq5wZ0KmguzSLmkh23XuMI19w
HePtBQeNlTLw07EouDd+WHTRPZxZKRUBqrLvNLGwUgiHZQ0IBxgQNgevIyjitzuzsqZizoThm7W0
N4KzVoev+uDKsUYAD64cm0tTp3ymArMu8RQEBr8A6mC9K2PeBoyqpZsP67h+fOXqsbuaA95ia9UA
f3kmxJhbiY3zRi0w6gHlHcgbSzoQR8CaBJhtdMbmC7DZFc2Z3Hasb3O6G0+rWFrURohtg8WVnsbG
w19hq/7wuBs+H0rtJl+RCdQ4AQgUT1XhweMnC6TTaI8AbtDE0Vv4Ws5xvgXy/Kmam/vGB9O01VL/
kKtPj6E8rhT8Kok8WjPqHappSvBsHgb2GQe5ECRYQRJTzJ2/qjIu5EdNt+9qMtfuZWPvl7ZbZbqP
jvhjKi9XxUsw/iiRF+9ysCU2rXDBxc5TsOaMjgZUuopKkLdzE5xouRQ0WC1Ae99YgBvSL7zEAGv6
4VQUP2V8JsspLDbQOwmTMzzlncs8dw4wiVQ5oya6ZEvPxr2rKdj9T2/Hsty4jbzrK3hJ1UxV5CJA
PF01BxAkHcXWeHYsO5tcVLJIe1Sjh8uSkp2/326QoviUtRtXdLAlkg00QKDR7+5Ai6gDWf7+n0o6
jFYCCpDuNTF6qBKsna6jIFcvMRr6GOMXW9IdiXVstYbMo2ircuFiU3Wy3Dwv1tvSplhuUB3ShCca
c5y5ynowPaHUahjRUAgZwuI4r4aJa//NdVDFosfQUnmiPk6tO8apS7Ht6wz4rPVxHRRcSBJzovyI
ouHC6VmBsCZAZ20ScBq6ZCDBO3EhdQwayLdZETXPREdG1P3C5YEqqI7LrUxQsypg3frIqhIrQfoS
dsgTLpkEIT+k5txj737UT3bua+51qstfTaW0Kd6M98vdYrfZz7+1rMgYGcQOmQmLGrWUJ4ZiaXC0
VGPBLQqSdMIxnSuhzDeRMOdZfPu7rZl+m4/VhpiqjiMhzcqYSvOQ5Irc0uWr2MOwY6MQeBCmfZQb
gMvSVGEiTBIHIhYxj6K/mYuntrLqeNSH0OEfr9KnZorAoq7W9sd69y2rmY2wqlbxkvIveMiRyPjo
Jc9jtPBQkOkwIcGQ6yik6J6WiPevcJDzI3dtDNtMS/lQdSo07eD3NW3x+xWLcG7xdYwmwhU/g1yN
ppgilCN5TrBGN6cCDkfGXe4NLAVrI/mPJBTJ7zVGmnaM9Fji5OrmvlkgMZKGaxRd4sDVAsIEypiM
kCriExFqbcP3qmx7316mmraLM2sd+DJNm/UolxmmxqkeUWEi4yhEF3tOkWQkjptkwxiT/wcExByj
zw5ed3l3+mPX8fagjqPqQFymvWEPo1vnBUYv/ILhkhrVaK6KG/e1K1Cpse5PQEIk5EDNYYMZaWBJ
yTdy3bm2+yIGGk5dgGTWgfnsyDwVlgLSYYUwKvItBnfRENl24qLyMC956CsmA+ARRSMnSqO1GiaM
tNk4zQLVLka6zB6+mORImlCH6oxbBfMEEyRAdNWomAcxKYoxMYoB1pXp0GJ+Jv8859BDVydWAtyt
DaLLEVA/ontrK07cPNhfIqSrebAv1iO6yPMwMGOSkFj0VMA6jT5IeMZi8KDPhSvw6jN7tkco9nLC
xIi36yOYd7yGx/m8aZvK5gvUU1STTAU0JEZZMYysU/Ix4BKVhYUMWzJk0gaxCE9apaptNpDqIGWP
rQQnZcahSqGBwFpJkKRp9AEnMRkqgzpqCzI0SeJABfJMVVh/sqGOVEOAXZtr0HNOTqUsv707VXiF
SgtbDKRIqTC3n4pgRSugdZHloZAKzp5IvJ8wdsSlJ3bhrsumBiMUHcNulaTrOvrN5A4OWYkKj0Az
5zWnpdQxHki+RNdYayz6+NphIlRoQ0INyB//XEVLuFEfa7t0HV4saSc6Ny3gbJ8eKxELRzcJFlCE
5ZhwVLopoPVY4nMoQxlgWvAEBKoeX9hGgzV00nZhQrjISgc6OJjrx730I06Aogx9ho4ZDEvmJYSA
5JtYyrXiVL1bIfsufFnQhW+rkByKVnb2stujjiKPPcqT/BoL0+jD+YiVXIaBoehixOQwVomJEmZ5
INV7RB5VMThRkLx4ojHGDm7zkCGhGkhYsoGbV6SmvPD9c19cAlwCDA5lw0RhHSiX19MXsYtKEhzP
BXaWAF7rqI9HqDxSHwzvemGiy5xSqVp0pMUxZ9ZokBUMh0Mi8C0HHgcGAcwCKpo0ZuZ5k4C9Ua+o
9kgde806sNdPld262qxtzYEdaJksXdg1yqEUdUQsZGhNZEMsH4FuTYoYonAMfdu20XIdsQ5rq07n
jwc3BPTFX/yZHcOrggANvs7x1cKeNxTTBaEzghEYEg48Dw9cfe1QyqbDZaOxKiIz2pGpYgbsd0v3
icPJrU7VoCIWKiEDOGADgTWIk5gOVRT4wLtIY3nEEhWeGa97aP9UMoOm7WnGSPv94sUD+cvW2evz
j5oWkJTF1H3DNLGoOGEY2J9EHKPmMMrFYIw9Fa1sG63m6sh0yF4zxnRDJ7maLZeb0pYu5AEdLhns
8xALlhGkzLBdFComGReUAKMthTzp31NtdzBAw7QrbD7epIung+Hkbr9awQu4BLwtPL71VrM08x5/
eLBxslfv5XWDWbCBFdnNXp8zlx1v922xPdy4dOPdzbbfp0+b1+nLIr308nxeeSnl6Rz+7rJLz69e
3Ga76XZXXq93/Fbz/t9rHn5URgUz4PrDuKTFOuvqL6Cc/Y99Dh7GHta5rs4vFjm8XS9/eKhZwjub
J688HS+9yWY3W34KCLlQY+812y7SbL375F9/8H/66G3/wqCzdLrZ76aA1n7tXix0lhYQWA/zp4+D
314Xu9njMoMGsPOyWRCIrry/4OYuWx/aPNHH4VK1H2yi6MVz4z79eRh9ndybG/j2Nb4a3X72BsX/
ye9f4n6wu9Ef7q69vf888T6sN+vhfDNbZtt5ln70Bp+On54GyruHLwMz3y3+xEzyE9ikuHw7PiBK
qevyhzewV97CmXVOfajwGzBbl7YqB912whDGShgGMCh7reF5tyC6P4Hyj7ipHOZ+VODnaiF34cZF
DbcqDFZb6MStMp7AG0RFTk0g+WvY9nuHY2NUDITWcaWfX++8X0cT7xmpIq4agE0bfRFahWF9MB/y
5LP41mHUWtT6OXwOz3iw3WZpihEEHiCNHuiVpftxcO3ycHsGr3i363nPe1XV4Y/Nzc2tPbkACAlw
sxZYHWGe97PX1HvpWz8BLfuRAJOtMA3nZPbsUUZ7u6LV1/klJ18evNaXbeaN1k+bN5f03b9uFrss
x2oOxK57CdA6zMTYa+/q3nyNeieBiwtSzgEBmN1s/v0N4kDkBa3CPIynbubM5ARp8NhxeXJv8Fv2
iLqzsXvNff2oYz/M9wbTaWQm5jRulJQwlDqY0dhcxaeBeH3eptOb0efrOIJl3f9C9YUYlz8QZhL/
e3J62hQt55pSB3P/eWRvo5PYcV5bOytH5XuJQL6uxUVQ4ia8QUHXVvlS7QGqwtD/j1RPbifuyDg9
CxfyKv8mCC9gfvZWQKG2NYKQEwK3r2GNHubawQz+C1BLAwQUAAIACAD1kC5K1MxHDY9BAADuDQEA
KgAcAGh0dHAvdGVzdHMvYXBwY2FjaGUvbWF4LXNpemUtY3Jhc2gtbG9nLnR4dFVUCQADbtl6WCPT
elh1eAsAAQT1AQAABBQAAADsXVtzo8iSfl5+BQ8bE3J3I1NVFLfw9gRCUrd3fAvL7p6NiQmCS2Fz
WgINILd9Hva3b1ahCyDJbbodG9Mx0oOFuWR+mZX5VVYVgqs8C1lR2HLzE2azvj+fT1n/Mwt+S0r+
5WZpydKyP2QPbJrNZ7At/4EM1fpTuvLL+7YI+Bx/yqaLGSuOP12e3Z6Pjt8cL6XFuT9jX7P8y/En
lhdJlhbHzvHvV+6E5Q8J4Dl+Tv/jPDxebhfH5354OTl+IVzpNIK/SZyw3P4Oa6Ul2Laluqq9lXvw
t4/62tsjyc0iJt88zVnzxN9NXdE1uXfhl8kDOwKn5dyFV60W+PXXX8Gtf0q3Bcvl02FbGVWRJA39
kh3fJLOWBqwiQ1GRgjQZGTbVbWr1sUlkRTVVVbqcyLsMAA/KcOh3Gal9hPq63EP0A8IIH0nXbJ7l
5dZVCElOmqVPs2xRyLe3NYwjU0WuhZEycDBRDHNAlJFlDRRsINVAAG9IdUmSOHLZ+ep/YfIkSUMm
D7KstMGP8JELFmZpVEjS5Kko2Uw+hXa4y5PyiXuqZGEpoLDUD6YskiQ394t7Fsk39znzozUSVZaH
STH3y/Be/mvBFuCpTSvP/CRVSnGBJI0eQzbnQptNNvrd9QbO0HNcdzSZyL3J6YfJ6MOno9r5vJ3X
7fbb6PrCO7345JydwkXD4TW/yi9l9VFtfIhak3ABBjU0upfXV5ORd3F5czr+H0n6dC5fszueH/IF
83MQRlRbUpT3ssSv8Lyb0e83W2m31IRUH4cBbCj1HRH38R/8NPO3P+VceTzOvz7Kk/P/ci8//w0z
VnLgpCT0hbsmcxZC9oYQE3GWz8ROW3KvncnH04sP8s1ocmPLxyA29MN7dlwkM1CgPCQRy5TiKQ37
9+VsKkkfplngT+Wb3Oeht4hjSLReDkrzgsnhfZ6l2TS7A6XTVTAe2RLFfQMbkBbcde74gpXcG1u+
/4+qvY04js1YY3EUEPnGvYJYSVNoPiO2TJ0iarJAlSeTM/mjD+LveSYMLy9GQouOLUPvpiU0471a
itLPyyS9E+pSdpeViXBcpYuoltZJF9OptVcXtCp4vGR9OYZURPo7meVAtepSFya0gy5qhDHZ7z1o
L2BP1K+rMBAFdD9uDsZ+EG6ZY75r6tKN1zBnqWunORhrtJM5kYWDvSpEJABnVqI1Yr2C6HqQrUXr
mvrjjYBjFFO21Qio3ggmpjp+hUZY6drRCCYhhoZ+3FMrFTVPWVjTrS6ZrhuBBZk+euSUmJTTJ+Cn
UuS2OwY/ZV8SBvKz3L+Db9gNbqvy3MJQNnTxkx5gGqFdmvaqkaoeGHreZZds2y/sgtV2CeZmOduF
TfRhIQ0jX9Xl5Xm2XeshXM77H7OitG3A2z7Q+3wztu1rFl+V+cney9//8suR/FaGOmiX4H44n9vE
1I8k1BW1riKyH/WHPFvMbTtKCr8oshA4mg2zcME7wbPMj1jeW1/a3C/QYqCi3qJMplAn2YZOjyTc
FV4QEfYtp/7vrt09DkDTW/pJN/2m7ltqJO+xETS3nCF0YmtPI93bFCBoO0p7eS8EX9ORqmO5Os+2
4XsLxNY+gQPK7V5zNwAwoX6m3XxgBaZhWRsfjHnNtdJd5n5aJNzMm8zNZrOkBBbZxISwPbqClHwj
4kED11SRzrGoR5LeFYsR+vEeLKHQD+X4Q8JLQX/KDwhXEAR6a+eKdEGGBc4wugZEqFn6/oCIkzTh
LMP/Bw7qRdkCBgSiOUy81R4ChmYeSWZHFIbqs2fCcuY/BcLU0WxePgkXANe2UsHqrDOi1n6dogdZ
mn0ONHrNimyRh0xop5TsMZ4AEqR2DAIaRebeIIChdLoQ/ztxyfIL/yG5E4l4lUFKPm2Cc4XwmkE/
UJQAIS3KX97VBEM1PymB8t68k4Msm9YOOdNp9nUj+iY7TR/8aRLdXp+JxiYUSwh1MSvCBjHiWqNW
cF1/Og388AtYBls9DkP0A0juxYtUDDv9qY0ogVjmo4BOCimCUVdb4T0Lv9Q9+Q0vVv87AskyzoF4
muAh2TUD8JGOzBcy8GGN+Wot7U4TCCXRM4m+fAhjsIhVaqHdNngrZBu87SPbzd4pLooSKgrPQ5D6
y+Y4eciSSN7joPdVt9hqPcMi4B2tY+tpFjX3tx7f6B77rTBvpuyb7/ZB51RbOopiteUpjcc57coX
OtvHF1P4/pyU9y+rahoeWInhEzR7THkpX8AQ3txlqN7RUC1g4TOG9rYPNVtEJDCCDo730rxegb4J
Gd2y1jeR79ezlnf/lf6lst7qIAdw5XMoQDFFDQMBXuotL606CkQ5gZjdoIQahZ5fxOLplWvb934a
Tdk5KwqQe7L8Lmogax551zbhnbwO6qZlb46+YdD7ntAOFJXxynhL8pvvFy2CBwOdfKybxvkWiiuw
vYu7CA004FuBdSnomoUseWD5uT/fUO3yWGUUH0xWs59gV8PMKpag39+WVTUpBtLDaieIFJkWagbX
cp4a0EVLDR3w8azbCBGwdGwBLNTNc0izAiK3FG57bEOUizSBKPPmMOSrg6pzacRifzEtvYjxeYbG
ae/l98tMlXszNsvyJxvrBEZ/GHfEbfBc3Yv7Ml07U+jDek0f5foaPfp/+w/+JMyTebnhqbq+gFm+
H0MNKQa8i/QsyyCs5izn06afYfRfadFrVmmUt4bWUUsQqPgZLTzZxHiEQKWyPMMdV2Norq7RvXAl
42yRRtVk79akhKXFpsGQ7Hnu+Pr24uzy8so7nXiuc3Z2evHBu7y98W4uPcebXN5euyPVuxpdjy+v
z73x7YV7c3p54XncZkPCejetkRGjsNJaWTDMJqKPLVRRcOsSNrpK1EhclwhfYuQA4MyOonRGTLku
aD1JDklnAbYGNX08vYE+P8ge90z8hCp0boTKIMdd5Hx9avQg+uRsfpqe83UtkEqoRNSuUg09lpe0
ccEeK7F8HJtxyzWCJYK6iqQwQPUG0yz8cgsF9HQt9pxnFAyOzpKirFDzumOcTIHPQZmBJNLIXmc+
35e9QpeB/TCKddkbXk3WSngsqbohEdJVFIYAVP64mNRXNry0DX75T/EFGAyM4yt+diKMAb6qptP+
5J6jmkS0jhDUyFS3IOSLlAvUTWgK2k2g7hPdlBvi+MBUEKehSwQSbpoEj/OwHz3Bhvzc3KNl6AHQ
rSZ7cL6XBf8KvVkly7Ag7oxuovw4CJjMJS2FaBb4y3x2ybfN3TgMjVCVVwKA+XubhS9uZ382sxGB
MoDPqAMoQBbtgVf3G6MEQjiqZoS5r9ZTqMgWc6IgoBBroB4MNFI2bcpsiqIaZRgohU/t/iXOz1m5
yEUbqGKuciNtXs27NsTVpZk6sahhyqsTva9/VRuiZzKJmFvsJM4gGqrsbMgia4vxs5PF3KfLg8rM
T6GXzL/DQdDLy1/EDL/3V1Y0HLOSvqPV6vGkhkxHOpW91fne7C73kvQh+yKIEekr17xcII3CqCVw
7SCK1w4i/7iQ0P5xFlO7HvQXE9EF3GzWSLq4QotiAwNn8ZAq7rwy9+e7vPASQQQK7pUgUfC01hZe
UKSYCCrLWr2zJs/w/ioT5IcRbi0ZvKSMoizcLqMQgZJMk1+5jmrO5X+zT9RUHFnAFI1WFGsFlpiK
7xaIlhVtAjHIoidhJhJz6h0lwaBuLWnd8+immBjvGM4UyW1Bm2DWvyd9obeF9izY7KuflF6R3KX+
dFfYhs/zqukjjURqLKd+mhVTxkTsW9YqZ8O3b/todw/dkGKolorV2kixvE+KJT3bthDswVinNtqs
7h6Bcd0iF6F2Ms3SO5n/qQ84xbETNH0Hlq0+Uxhq1uZlDNpKh28PxoKIsUAOZv4USmLb/sj4VEIR
+hB/u0bEvG4+WZ/N59GS8HxRssf3v9Sxfo9F09WwmVK553kzLtUL/ILZyDLa63IvMSwC+mgZBq4K
qxHKZGWimK432xoJai/EvUBjTFW00ejwm4duoBY/aYBYTSa1kL056h2957HCw2TJJ9XKkCH31qL6
9zbCtL0u9xJomhq9CrRRWuZPV1mSlr0fEVetN1qt9b2XGKIHkZD7phZI3jK9vHmePT6d1FJvAWKX
s92g98cQv/shB76B8N5MbVikPlVjHHVn0r30br0evfOVv9ekd6NVq9xen23mtaqZ8EPN8veqWXbd
+tO8cynQfB2KlD9azdmr2vNI9vLl6hLfIWb7xBQEuKHJYm3YbU2aZWKmc+9eTKp48qoYq6boIPK+
p7LZk0Tm6yWR9co1kglJtFookoEts+k0Se8OefM3y5tvCRRrJUhuz+YaHe+5icB3VK/dl7COiOW9
7XaSJmXiT5N/s3pZgfktH61zwdt8VoqSo879ss/M1Zz+Vp2w7vSQsWsV1eysKgjjStXXMr7Zr422
uljr1dihc7/4TBeLXpcdrH/cBAhS/3kmI3uzzWdBRTY4izLjP28Iv3P2h5Io0MEpc17c3nvhAx9P
f6dHfH7HxNoj/OcQ3lKaoRut7uEFKR/72KiMrGyDMiNKqsXQMpmx6DPIrm7UFYNRGIvW7uzjy7DV
ZcB0VxWkYnNLbtcRs2WSFdVd+fkXvmSUlbY9h+01LCj/n05n86lgo2qAzm834ddMwmzOojN/FkT+
Cb+XRobBweaOm61TqhFF+xT+YyhxX8xT6s+S0OXjcn6jS20yAOtAU70NxGr5XNU6D6VN8Jehi/t+
KuVrMwd8rGzzhhVraSfi6BlAed9bb3ZAjGgT8L1tfscw3LAYihqDw1WXs9o+2ZUuy1skN8BZvrGH
G7qeaLHt//TU+jyGGOz5ZZa/huD3q0EkH3NDHORccO+oWns3+b3LTfGiWbFKuk8K/ECfbfx/9dn/
iGExIgcKP1D4gcIPFH6g8J+VwrUDhR8o/EDhBwo/UPjPSuH0QOEHCj9Q+IHCDxT+s1K4fqDwA4Uf
KPxA4QcK/1kp3DhQ+IHCDxR+oPADhf+sFG4eKPxA4QcKP1D4gcJ/Vgq3DhR+oPADhR8o/EDhPymF
Y7XxYzt3POFRUvbnefLgl+w7bplXjep31lMW1hi8009eqEZ98XucCsx59VgOQeC4+33ye5uFvF6z
aK/86y1VDpfvnvgKvMVf77F8CYUsHkoo93RNCZLyyJZkOfcf7a1XQajQcHmw70C470BUP4AQDVgc
qipXEiV7LinWB7htlFo4ZpHQPt8+4IsrdhywuBI5N3co4QmfW01cRsxi/iD4HKm7APMDqC7Ksnwf
tBncEoT3WIJIS4lO+aMr4YC2TwndukLzhbuSef3I+sHich5PW9qRivmBMN8Bi3BZ0tnyhRHu1W31
Qg9NGuV5louXhCxf8bG+UpNu+G/0LhazYPUmGqRJkjRIUj9/kk9n4mGJ0up1Ho/rN3nIitzcGULj
PP8wo554O40ir19PI5+YjjkcG5gqruYghYwtqjjjoatoqmaNYZ/p6ur7v9+rQBqWR+YOd0Qmd8fb
zXMGJ/fJbJnhPRUs1xyqjUampZim6SjEMsaKqZmaMrCGA9PQhtSx3D2Wb0ls4mHaNh5dp3G860m8
O9oEuwRpQ0wUnThjhRBsKgNMR8pgYI6Ba4fOAOtd26Q61sAZxdE2zpjhOA62cZ6xOz982oVWtTDB
rqEqyDWJQvDQVEzL0ZUBJQZ1x4ZBVLQfbSX3OczVGXXkAaZkC3kQU63l4VatsQO7q6qmahlUwSYB
7KOhpjhYVRXN1dQRdcYjrO6Mgabk3eib59Txh9TYTuCI891WhOwDbjnIRLoOITvUhgrRRxjCeGAp
ZOAQ19F13Robe5y+H/HyYA0qomFFtnWosJNoO7nmhhXl9SJNWd4/Tf8F9QSLBgv+hFS5h/pcCOJ5
Rwkyx9hVdEfDkHdIhZRzTWWEVIPgESZDY7Q/XjYqmhr6gfhq88nzFzUt9cm2pRECGjHkt5DjS+9w
WZPFnL8Mq8Em+mg8IkRThupIU4hm6Aowq6OM6HDomtAvGepgl1XPCK6js7RoK2SQRaOIo6s/i+h8
eH5zNsiz9N9smPMHv3LXa7gP1TK4v6/1MSd90yLGSHcUEw1UhaiGpViDoaEgPIIUGLuWM3AAbPXS
reOzJMihKzoePYJnl7GypWaP/7dPlCr0vJLQLTUIN1atd8bE18Aq/ug8uUd0tY8r0OBUMnYV11WB
FZHrKo7raopBHVOl7khT0RBAL4qcO/WYX13TZWpEI21dsJPTcsODk3s/5+826Wnca6SvwxWrTUAx
HA6xiRBE78gdANuNIfFGI6To1mBswTBkAF3mtuuuqup8vMq64nipZnciLg824GtQdmzBh08L/jkr
ofLoUV0A518AmqgUmQZCwBZAbkDLluI4CHo+VR0S1zRHukW2QdfQCqm7sYpDTaS6uo2UIksghaZ5
OE+K1UObACjpU4A4GOsIj42hMnbIgNchQG2DkQGI0cAdYDRyXfosRCcMYQgDI+A95FY79YGFIGD3
aU18UtMEf5ddkaBCPpiYJ2m0mM1XpiHL6CPRQRoGNcyxoo5FiaVBjYH0EbTDcDzELsWua9YCd0tS
A4SB9W0QBqfj5dMwi2m5fp5VD2l9DRAY2B0i19EUNB7w3sLAijN0R8BQkOmGBgMiy2kiqItp6Dcx
3dZvae3a88xfpOH9qgqUewY2IYPgsmqDJ9IYigTLJYqqO4BJ1QGTpjoKVUdDhF3o31zn2QbnnLlS
8M0mb+LZfXrzHKlp4P8Rd23LjRxH9p1foghHwXW/PNZVnvV4NdLYin1zACAwYohDzpIc2eOv98kG
0egbQMaaoY1QkBS6pyqzujLznMws9PVc6+1aTLQe0OTv7CqQx5Um0AMQMRQVOeNJwHdVBddrm2JC
g1paExE85EVlTyMvyZ4H16/GIi44jb3aToDG4277tXur4neuC9PGKeVW5Hghe5XVGAVTlB7eVskA
aKcSfiSRgDWcCvqy8/j4PPoZX/d8dSg3tthcbsPNFHXQd8zufo79XHAnK75SklTo/iDHIpwTCug5
CwS8TvwQcmC5RF59lRHB+TUO+3muZSWeL450ENzPdSCE/Wyp//t1/bCml33sjtbqCUjwBnsMDVsl
g4yoCGqWVKysapeU8bYEPvQWhwzGHxfGmwizWRJmf/Rd3UsSj3I4csjBaB9jDUzCRTBlIEeo5DNk
dFlbRGPtFuUYDDUWIagFEcLUc7z7ofPkf+kye/RuxyF2NEF57LfMamxYHJcdi0oZZmUJ0ZSaRbCv
eZizSZYf6+y2iULXSwrtJsb1BaF8QMpWH+j/oRTvtJK2C9DVm+Z4ZsUVQo8AFIlYaRbNcATDgN16
2RmuHzbLvmHkBj+MZRne1V2a6Ldf0G8tjxu4Swx+zMOdA0zaRXOpfIAqEVpU8ncJvCqCy7ZUS+Ui
40ld1ueHL7u779+f8dPd7TdA0UtCjFVY2wUV9naK+b593tz3X35NgJk8iOeagieeS2rOGhIeBKuJ
yrzJUC3J5is8o8/yVYhvOMkZXzi8ZaSIVAvPAh8e7fczobC/U33r8Wl9giDQHn5QH1B/qTUKIR1z
MBU8lEYRN+FHRZTKCR+mV3nC7z/8Ld9//nIDtDVQ45wQYzU0X1BD8+OWuu1CcO+HrFkZvvIE/mET
xXLDjBAwEKsFNhSYb81NiURvGjZ80RsNRxyJYu12Lop164k7usdG/ARALcAADm6o+wMiWRmCS4DS
KRfw2Ohgs0VYVqrDSsYGNyn/z3v8cG0ksFsyR7fZHNdud6Rn/fLRwrUSjCyUjkk1M5URuEP3KmZR
BGiMyUbXMfSbjDOSIYSFMLJZ2+M2bPePt3+/PlTtep9gV5LsyDRKrEkg/KKB8CEW7EgJliuCfQuU
fAljSeajXY3ndXNhttfTLNCBW/8TLhdBrHuEgHMrQRYRS6peGcNAeg1TCk8vWoCcgv1VrACpzPpF
DEpjLz/E49WrsYBzAG12lHU7LOHN9uuWMjSxZ0hGrPAfLSG8akhCW6a8Bo8rGjAy40erKohiCszY
jZdwMtpQEsvdnM/YIyY4rd/N3a8n9bq4RcBWChJIwDHCAiFQc/CNNnlYg3IMu4rHpnRSyr9F3Ho3
lGEUoe9+HekkBF/QiZI4m2HB5/ru8fG6d5LSENYlfeBIsMTBAydSYkTYzBJMhBkFUwNWB5Isi25m
Pu5ErLAglp46m+/p5eL6gAs6H5N04EqBLaikKuWoI4ibA94B/LI1xCA0v7i+GHF54XBhLOFmScK9
O3qX7993lYjeqGVHbcEBGqiNglvmoLaBw4AAuMHavWqg7RyG/TZxfjT/SHKtFiTXxkzXdne3O3xr
8fr24/MLa787+AOpQqeNzx7bWnumZSB0iX0dMvCLti4H5RD1U3hVgJxPdeYhzG8cq2bm8IVqXMeH
0u7vnj6sHx4RiI/Pxfgu4yOtiyFWzbRQ2M0I+3gmTiFCtZKDNda3djmdcnp9x6tJdvzrmc12fBHd
4x8XhB5pHLyeaxz8tucp91++7YE8TvvQkR8nGu1SZk0B1CiNHylZPMdsTSucvq5NLnOV0XATSebo
3m7MFDp2u/LdD0MPqVbqgBS05Z1wyhZDKUJdFYJMFCxorljJFqza8yD95czWbIqRAzxcHIm+2S04
wS03x23z4e7TKUHUySjhSZwunGlt4GxiCcwLYCxALgk3I7B1/gMZR4+/n3woshPXcyN2kqujyNs/
/GG9uTlKrbjrEG2QsrYEM+U1wD0Kk5iXjrPqRcxaaSczH8fD4TgjAeg95TMBdn6WXz981/8xu6O5
XmnagYh1QjRbWSkebJmW0mfswGxDkpKbqrvk9EV7O1O7y8/XrsaS7RbEDfxoJ/nnv3z8cPv1083d
pFbx7LgBl1WUIbJCuQUVwKF95YXZkI2Dd9DJ8jciaMuSjLUJYkmbdYfkTtH17v7pZv/t5OoQs3mn
TdE+lao0481BGw12FnlrgCHOAxoF73K+FLaHA48E24v5MntttrOk+/XN+viOqmO6wimxEmYlOe0P
C5tSLTmW8JspDvjmY4CVaYUA36TOzb6QgT9NcS4Rf7rjaizv9YISfjNRYphPfXf3tHug9y18J7Vf
UT6t+02KVNCGxrFxXBMUIz0QSQXia8GrVHTNPr0mRi7Ndh5FT+8c6+fnTA5UZbffHWzht/Lxw7Tc
YByX1nDYa+OIj8V4ysk3Fip0kx5Xk/q9yg29eFdjBfYLWq2n5arHL7sd+O3Dbnv/6e5mnFqgdCj2
YJcNFZ2hhGpi8Hh6DQCJavWGeCFMJsHTC5+zNvUt8PrHTqqfloQa5Tumt41XYDt3yWAt4egVCEj8
tPt08/j0MHAKptum0fECPkmJy6bIH0dAORGgdwpU86/Biv9H/DMWe6S1VXZBa9UXeBZb1r4DyluJ
A4dRpYjadGZg+ODZMTWEotwl7UWutQZjwiVnOBp5JNrezamr36/3ky1Zdpuvnw6prEeSjNyH6HLx
UkUtswEMDQAXCmEfBlclcJp3kcqG5nUZqOEMyys+vGOsw4Yv6LAVPcD8/KXPPxGQTlGnJrF8rmnY
iQLDDaU4ZkXIoSavam4TiNGPMJw48O08xgUhpmz7oHu+v9vffHp+ywpFFKG78n1Huj32Q+Uaq2iB
MLCklIKKhjUfWuI1J1vz5YLMfI5z+cjZjSOdpJpnYIK0dsK2+7YrJTg5X+6r6DKPlsiWKq2yaHxX
zndKmVRd1Zd26OeF5dV6HqnBG/RCkDtbpTOwGAA5RIFGuTJKkHrlJZMFtN+Zhkj6cknycqUuTu65
Gos7t68Q7JTJUsUd/3rd5WIOBbvg5Eodkmyau0y5C6mpeiQMFfkBNmQpiWvJ8fHbVVWPkpzvDKCr
V2N17JKOYfKcftndfqF9Dy5FCbuuRmJK1EB6jKcMkmcitTM46lQM3OTSdLP6LWLXnzD18k10ZayM
X1Jm7aclre0piGDL+S4k0y8C4qXWkqplzVDfQyKtZNFMKtg0XDl29qtyDsM5zjDFwR1DLdbczAuV
a253x4jz/uZut36It592mPxU6bGyi7StVaNraaxx4CeVOZW2dYRPjy4lyvXK8jshqQVBx4ouAIq1
MOIIFCcvFIN5eUmZQXpOwIRKFSkZ1cIpj56x+2RmteSatK3axnbJZy0ksDG1XJJHHWNRuVl/urt/
pHdxPb80Pd/eUCdsL1/XeSa1SjZhywiqTxmQYJA44B0TJR4SQlZXEx1EqMvjjkSUcs7L11L5SY/o
+/Xdpwhc/u3xhkL+s1fqflOWGCslhFQsUhuB8gZh32GLIA6Yog1ItDNvDsaGIp3r9zjdMVZaLSq9
PYa1j9uH3e7upx29COf4LLS0K032ABaRXSiCaeOopTRwFrQBF01RAm8Lb1oZP475cBNprhek2Ygz
PRz7UXTrujmMkF3rWoy6lcIBZaizgMfI4HgQ7WxKoQGMNe5e1cjxUoib3zdW6HqOhNbGulMtc7se
eBobbEfZarOZg2Ey06qnJF8ChYbfsSEalWsOLk7qR6OBrsaz+SURpo57GAyXepgqYReq/tVcqbdE
S2xsWWB6sDltk3HJ/4fRdnjHRIWFTUonHSYtMhWCcwo4+NmVvHSQDoI2T5vA28SiNpy1mKUX2Act
viFAiPVMv0wd67KZc921tWqiS7r9unu6v3/6hYok+tCZSb/3XVsxd7LCwbAGqINnkeFkEhhfUCpk
x0HpzWXG9+6Hfvxz3SD9DSPp7Xbe2LJ2wg5yl4OOPHmIJ75lBVhJPZjExHUAr4jZABJb4DeQjSL0
LHW51JG3dtosTB/4AvLtUkTvfqAdcUhRaxe6thpXgsyA4dUJctAEyCuMjANwBQcDdKG9uCmeBz+/
jZ9vGAu/kPlbu83MEH/5eted9DxMTUVlRwHGdtn/4pr0JjPwx0pFSARAHxUzXlotlEEErK9KSY0n
OaPI+KaxMgs1NHw4Ncm/5jzsaWqmVmAkBa9Bi0+nEYJLlUmZE4iSSNDlNeJj2GWRcWEi5oK1uWs7
yTCsH2973iYVNWJ0ZiYaCdWYSIgkqonCUlSR+omNc7Vg5S9mF/pRxyJduwWR9uKY6rn91+f1ypxw
DwHnzJUJIsFzGSwbEeCYvWC8OMuVipnnSWPDcJDR7H6zgAvDui8+/PPzLbDucXYZVqJLOqdYbLaF
lWaIb1XOopUCQN7Y0oqQ0YlJU+1gnKvxXAtPJOyn5JUq+Y9H10s94rvrdnO7e3/z+ESJ2q5rCb8o
WIoiYRYuMUeNx0oagC8Z4GgKj0pGL6TIb+fmx7Kc72k/3TNWf79eUn/TN1Yfts6GjoE/9rCgUxN0
toRiWLNAM8rA9JPiDgwEIDNLDQMyl3bjcMiJSPOc8not1MRG6Ik83fYyeUUVCRIsB15iVR7s1IOs
epFZBPRjMtrok3XOSn+RLgwHHkm2W+Cc+HB3Abqs2uHF0wTNJUxZ8I6B9n9Tg3IzyUVA9JRh0arF
wGJInhUDoCWqCC68YTf2UZ4zNz5fHam9d/O8HX14fCC/7r59/tSjcXnoGXMig5wCMBIiyGBHCYCN
1eCzsyLZVpd7xoZjTYRwS0Jsj27q690/bu76nKwyKwKJzYIgYh8yhHTKWwQ4ywSpqKWgpQSC0PVP
z8UYjjYWIyzwxj2cyJjHfrldP+3vH/rsm9O0O7s8bIgBsRLY2TnynUoxTw0vNqvofdYJzvxiing0
8kS2zYJs696WN4+fV7xfoe5wQhVAMBoG4ilvZZxmCUvGTDEtpuxkkBP+OhhjPPd6wWj3OzsxjR8L
1egFpaUVl13LdaUzaZxJ37lIoWGsYKrNy0J9ctzWty8W/FiWb/mxDHXaALXOdNrw0PflrL8+3fdx
0RPNCyFUK3hjCNUZrh9IKJYcmamZ65CsKS2N1/M0xnjqMCdJG+H7Bvb/+iAnbQSuFSsVYnItdBbR
0ZFa1zj+V2RbS7ZNijdqI+gnH4ksF/qsNlJNicSfdw+b3cP9I+2DIwwTSTutE9yDoYq4rxKYxlhW
wdqVdLzJepnLHQddFv54dSSuWqjibxS1dKoXagKrGj94LsX/dGd8+HO/SZdtKaKqygFJZPbELASM
u3q48qhhSyXo1vJr8ORxhmV9jldH+piFLuWN3VxPlv9v74Yp+AMS1sp2gSjGlIy0DlSEjh1Qs1uC
DbBqrUkl+lKbfo30wzmWNRjecTUWeLekxf6Y/nnYfb7/bTfsQtIdiTKyNhUqE7pAcgsqCicbmDbW
gFw3H0adtienOh1vLMx27k83iF6zcH97//Dx292WqHE4rCj9fmaarkp4d0M9mjlJFkpXM1IBl3xp
3r25d+vlOUcHny+PdN1fz/33Vl5Pdf3Tu77VQj7Xt/1zQxA1hqusse0tnZzXCHEh88qa8EnBk1c8
izepEby72IrRX74aayKX1HOz8g5oMiXFHx9vNje33bGsg4240HXuwLsnqChAy6Enpy5+D0cPlKZk
CsEn+XInyWj8C/0ko/sm2vglbabM/ZTd78qY9A8GH9EnZDpe0SktOu+SFXSis0aNjh7lnGyS1dWX
AvALNYTT9ZEOm80cS2+v/bSD/Mev64enfx2O4kNi2nCacHNXbc81whwtfVcDHb+3MCxAfKadTc0W
1cxSP8wQB/SDn8ED/fWR6Ds550zXUvaNku/jh5j/PKvWaGB+T19zYAH3mQrg8KlRzyTXkWfpnRS/
V9/LUMKrkRZqnk+7VtfTNoP1b8NU96GTV3Bt4fa65n4tUilcNUavBcaToRPFVLl3wHPamxTrC08m
/vxSCBneMVRhZxYqCPiwryDQ4fQeBB8PuDfBVZItsaLoizR8TiwEGVkVNpWcOI98mSicRpsIcb0g
hNlMOOzoO6K+U9ToRTUvbPRux4iMGNEgVU0uwaXywmJWkklnPAdPiJnHS1xhOPxIPCvnZGpnnzsu
B715u6fu2Nyxgcv3qahEB1uSUyzIAv9XomN4yGAPPoRirdYmi4tdf8ORx6Jd6wXRdlMckxt1QZab
h9326b7LSvKDdxChOxwhWjB01tqYSqmyUFgQTgCI+2xsrDVo/2KPZT/6yyG3veL+yU1jrXdz3LNz
Qp7wfv1+Avi9jM1ZGFVS1cKdxMiCdpVlpaP0vAH3tzcD/MfZr8byqSWh+2LSl/XnQequSxy2XERI
BdQkYds0megoc2Y6S1XB000Tk8PwgzEmc/uluUNfJ+zUXqVT7l/aY8KFC2kQtguzgr7AJYIlUYMW
GLltWroic5mw3vFoI0HCekGQje1PvaT38eMsFCQoLLy02I8J7oYymcmZwjLghLdVIozZ3ykUnOQb
qbXxC892480kLzhKi/bfvXBwXgkBOIIGg/PQkUe4VJ9CpCK+V9a2JHl5KQ03Hnoo4F6v5x5272Zf
jpPbfx9cDR1p5Cvb9bQ8/9UdO0kBqLyywuFmAVMp/QAOKqNplUsfi70cqPrxz9n88+WB7IFv+Iyr
4UPRJxbO+93aagkO8hpDpSueOcMSI7C6AJbMkw56UuE+52kD387PUOPD62mX60+gSE+7n292/ziV
Y48RvwsF0nuhQWo8VbHUv3m7libHbSR9r1+xx72wF+/HEQ+i3RH2jsPl9sxtQ6JYbm13V/XWw2v7
108mSFEECaq0OxW+2GWRBjIlIN/5JYidxqMvT6VUgnDLJL8qh7LeZ0syLd8ruTr0a64OZAqCHY5P
33bP50ZXSWguZccjG7QAG15ihaHDYJQGfStbB95bDMEEHpOt97KUi96UW3cVepis9Lo+ZcSqDICD
5RtZm6mhPYqrFkxa0LIcpDucU6uxPC41oM60ZxpumPdv4Vyhhro9kbHdHju9MmeVyn6luuHDu2U2
9KLi5tQp7aJsZMiVZgS0Gio5w2hMwgdRRRn4vynuLTVsqaJszYFSk13084eUFmqYa3DobXTgCTpQ
w3BOGpMUaRLXIoENGcC8fyM1fN69JFqtTzwFEXci+tg93P92VsRDYz2RjjisVGLoOmExqwH50SSm
g4+OKd/aZTfrbJWbcita2d8sf/YzCkNG7MAIFkWVOIgSyug7PvTKWyK0TiCEveES+2NoY1A6p5gS
YR4Ogo1Xo4bkbS4Ah+TnJTv7tVike74MDP5yPPQPl/tOgg5MUSw/UhLNDArfdqsbqlxwkWtaDafN
GJhvUWdh/sZNSW9XY6I7nYmX++6cU83QWp6CTayboLUcSq29UGAS8RZMFGVNIu1GoqSrHIk9r32H
Si2shyOif5yOpdao5PLhdM6CuQb2mYgI1QR+vVPRNCo4LAnXKYmLlsN52ZIopddE3dmlJP7tmBvw
067rh7AD9hSigMr/Rh0sBVgGoBYEw6IBok3jGJiPQbIWPhJR2qtqHk47bAjl8elNSe0qaALX466r
tN2/f9x9+3TscklghqLAUmWwe/LJpAYEKzi6hDsDv3bMHVFg/8QgwX7XMb3SgTPfYLvo5PTGnAXO
tF2zwMzUBPA+/WNIVy+65sAN5t7DeSDYWsulJoPHSX0gliejtX4jWJMFBSX1ZremXtLd0mba/W+A
bR53IzQflgNSrHY3g/SloDIYuEEgyQwiSLbw/WNlprGOMdJSIypKbp7m/Y/lDkvwv+l5Qb7s1/eS
73Z7OEHFFcg66d/+3eRTY4ZQtkxeULA8wWMBj1pw3jhtMedvNUkBRLUhb+ayDP3m1deGZwVXB7G2
O/hBTrAOv+8ez0VgY9qRg4xOSjUMMRx4RJc0GtoAKyIYaQkPixKw2SLl5pLXNt8vpAq4Aen2VBU6
JIuMAC+DC6BBYOQ1MYYoT5gEM8pR0jr6CjBZXrP+LeVHBZ393dpKEISeCz3+58vxueeTVqAqy+II
Vi/IM91Y6oBIjR0aUodGKQt+iA3RsEVGs1joptiNswoJYrKuwk/p9gX+3yJFDeIVvGWU/g4j7UTp
xjPvGhKYI9554wIvCSiXKSlYN/Vbwe66Sr1eHLo8GL6tBM3eInbtSmFBLYJdDl8Gw55ng9jFbUsC
1ttfgVkSN5s2Tk9vSurWV1Zwsk5Cff36cP/j7r7PjV9gqKks8DPYcqtzYlVKDDaAaYWIo2BeMU4F
2NqOtfYtfIc5CVsMnt+4KfmpnAwuloU1VTivMTdAc6us0EOABdg1zimPCDcWC/ti40nEJmUbgk80
gZJ788TbRM4FlK+lShdc1lg/NyJ82d3/epwpw2whhyASiRScJNAaQ+IjoDfYclAjKRLD2KL+brZK
uX1nK9v3UzP7V1CLT1M9OF7IFi6A9QiigIE8MGvRVOSqAddMBmtansgihjdfo9y8V7XNVQVqcPFb
ACkGf26Ta1Cj1JG7hgqGgGdJNj6BwGgdSieqhDHibX7ryosLftYWphB3S/TxQ//0+fnh29PEC6bi
cmBq+AO9SqcsUXBgAwFTnONv7aWxDRFKgUUuGPzm13Vr5q1O1OILW02bqxdvSi5UjbV+YdGP0aYV
HhY3EqMsHOWRUsTKGHSjJLdY8Qx6T4IJJCRCrCcVCRVX5A62sbIsrLRfUyvv2OJgnSUJXsu/H9Nx
5pASkCgk1/RwaRk4b55j131yOXod4XgZHrgC+7MWZ6933eMW27IfnxZs6HXfKn4oVrCNty+Pd+Av
5LYpEP35KA1/oSxkLXZXKvBXsEkJXL3GIbqSACkh28QUe0VrTetv1eaPjwvawaJf0264ONXrhfcZ
UAD/v6dzj6p+h96o0GBfIhCjZKhnidaNI+CcRiJbwkCfKU7/CluzBNNYEVzyKyr21X6PuNSZ34f9
f3dnYDGV8UajlBHMZo3YwC2Wi0kws4hshIjapVaZwBaYYvNVbsqd1o6J6JjcDMLkA/e9+8/Kieee
IzYdb3QK2HfNwcIhgTaCs+QEjTHE9lUzB9e+cNTh6U1JqqrRb5aQC2N70ye4qXbssCIEpQpttW8l
WGRWYz8QVjS4NoBSaFvmIhMqmjeB8Tw1WH334XID1ncfSv5s5Tp0fb/gD8PAHUJ/jG18bGzjA2fF
GwR7c4SAFQz6DWuIDDgMog1w9izR7aveb7gAeBi+L8ld12DnD0/ivggCf3w+fjkjDg4BaxdJdMGA
qQnEDVfYWgvOA/woilJwft3Cb9hYckFWxRg+iKldtnv59jSLdPIBkMJSaYQTpGE538db0zhFOdiG
jDEDvp5egoDP1ykIOBhTIeCM/fNDzgJMzmZGyMJ+CA8/X6NblGYRrrqjWsLt4laoFISUC1+zWGW+
vxQVjQAfTnG98Ol43z/1Pz987u+Pf86wyfCKgLtugsLaE6JAkwUN54eF2AgliaYW5E1cEFJfrqBI
VkLmEjzYxcH+rj9+PSCozRxiT0YONgC43cZj9xCTOBAGHDwcfgMWHQE1e1UkbVx8q3M8PyyJNrpG
tF0CQvQdjg36+yP8J05zGGlX9FTMTZNBqkFRWQykgYXQgBWYmgjShmmhuDbX4dMWG20Kltk7BTtq
DZVkpb1TuSi9dGvdx4DO/aludfwLY1Io4i0ITBWwuYhIsMoCYw1hxjgGLv+AlH+VmQObbIt+eFgQ
v6toLpmL1vXogXSfpiix0XLIh2H2XIAnizYj1lIZ9MQlKFLFcLSQoBvx6tlqJRUdqVDRTTGk8P4f
OAXxrMFPsdQkWfDYBuO5UuAOWd542ioc7yENV1p6av/FWGqRBFoQUjCxV2slI/eHfnWsd4/dp4yl
hlNJyDidJJ8CiifZmAHIiyv4ckGKY9CPem6CvSoyfH3v0omQrRM/Pi6Y7Pg62ic7ODD9foQpfOy7
xz++nWvzOZfnuqVAZIpgT0pEcUXEPTDmwb6BE2OEcTzQDWT1xaoFSYd1p76Vfbeqmns5HB/ePY8J
HYf/NUsg0dEBzO6fJq2VPoBjBIY6t4o1RoXQEEcRrcwRbi4fqvniG77s7I05M6Cc17JRUbb0nQLO
3PupR1S5/nGElzsnczVFz5yASGVegkBHNcNDnvAF/yCC6qTgwtB4HWBZZa8NAVN5s+RO7CrciWV5
2Q+7+18fH34rhiexaIBmh2kpjNd6D9wEuPM0pEiCJa0RV5XHn9beKP0dny6o7itU3y0v9n7XfX75
ViAGg/0oRjiInHngRLSIkGAtRSvZtg14KLbxycjApReGXCXl/WKnOQfDs4J+xtZmC364PFPZBEck
sUyz1LmEXiH6OAMVKxDTgVnMO2CzHOe0ZYEaHv/fdv3wbEEqq5DKJ0Vw+w3xU6tVXSqBKeAIekuo
Qg0Ymwa+78YT8KdEG6n3fxUcy5LKksV113r+cBVS7h52OXOFN3qYAwV2vNHON5FxjIVIUA/WevgH
pwK+JUwfvqIeYM0t2wAeFXSais+kzN7c9aO1//D12yOWyJ/jTLn5EIyyJBiNDaUIti9AADksj6S+
9WDpEsfJwvdYrVTSsd/X6DisGlLnTULTXBGWy4uyVI+t1zHZBrx/xDjGSRM4t49QpYxhKZF0Gcdm
vUFB575fOyeq03Shhn7sH7GBcHff9XPcmJOYIzoGEzlcuNzHgZiZcMUQei0Iyr0zgV0V76pssxEX
X794U3LAamwtux3Oky+n+jR0MVoGuiuqJiWH9URg1vpEVWNT5OBPe0GuU0Hn1V+bu7mgvavQbs0p
CgaH7uHLb+/seWgE+s7gj4GhYhpqsbsd1D1of5DZxDNw1cD09WkRYS+XKSnYkQoFu/06xn67uz9k
W2Tl5kimlWI4LBCbQznWfTswCDGgSOBmRda25sqKnHGTzfj6+Lxgoe/WXr/Kk5QKFhDv7NA/57Ku
py5nhYYgylCo1RpFVSKg+ogLiL6ChroJwIRqVYzUheucTczQxdM229me1Ws3JfU1llad5IPFmL0m
/At/mhE8BP+NTIGfLBL3DVHMo4WFAhmYCogFKCIhUbyOgpPXvuCw4eOSelMRzHf7ZTArHodp5I9/
3M5SHRnRVo5pDsJwtBRDhCZsiUHgGIrYSBLnpLRUg9J/O3djTc/GT7d6r+R+X+P+UBmQhTUZu+N9
NXSQsNBDg11DA84F9BH8bbRwgm41mGJegENy5Z2attm8VdMbc0Zg87W+gA+X2A9P45U9RdWweHrs
ZXfKePjVGq8N+r5EgjflUHO0eUqCTf4i0kKx8oK0vkIaTojZl+2IxcliQzwYTTGvQbZTuAgJQdVF
EI3BaqEWfD/E9qPBvn3+90zNVmti7TxpUjlPmvRTB8FPH35chx1UsK0KOMmVJYRcalXjWm/gqxeO
S0o81e4tww4zIgri+RoAGj609GQbfRqib83u6X6KigqZsTpy+6E1NLaCIJQMaGWukm58a8HdDcah
+aZCXBSirlcsCKpMisQPlyUev3/r3o2/Bnhcu1/7r3lI99kMilh27FRs2og6DxOUXkbbtJw77kGP
UC9fQWxbrL4V5Fi8tuDmUOGGTX1k+z/zSKRzmjXDJbYgUqVpAsGCfIM9DXAdGqoxqBOC52IR5i1W
KfZXlUSqVnaKN/95jnUrzB4NQRbegnPMUiMMTl1gRoO5RXDQpGmJiIJoF0oC/qwFu7WqmC4arKcJ
G+hbVxlXJUWksGfbgGLBfgRQJ8a2DEevasYSOL+mbmVPy5VEdJXzpFep5LHNY5rTOz9KIUVrjBKY
e8WCZgpHiWCSCox+KxyKe/paoVex+GbNV/FWwcau4sPoXUcWbMTj02f3uD8+P069nXpIQ+VQp7SE
wfcpcVoTZ1KCKw4GVYptlF5KTl7p8F6svqV9i5cKLvY1jbWXtfqtXBqNv4LJvQVDARfYFkw4sFyD
RwS+pDyYtLEFR1FYAZdGCfs6NFNeedtcyo9LqmXlEndcVWCDcuN3vZxck+CiwBaQZDxWRYNXKxjB
kWItBfMvME6uA4p7BSauoL3rarSvGufh7LkXBAccChzVgIahLPO0TQ0CGcFpR7Heglhg3jsN8h10
8VUBs3HxzVOPDwui+3V7K344GTbvPyy7OGKbDA2I2SITWmMgt2yUvElMWa/hzKtXovjXd3FMmy9I
7mokd1WH4OX++Pw0BJA/3g9h/DJ6bLxk8G0nlu+pw1PODOhU0F2aRU0kez16jCtfCB3j4wUHlZPS
8/NYFLwbPyxQdMeZlVIRoCr5RhMLJ4VwONZg4QADwqbgdQRF/HYzK0sq5kwYvltLeyM4qyF8lYMr
hx4BHFw5gEtTp3yiAqsucQoCg7/A1MF+V8a8DZhVa68e1vH6+MrVazclB7zG1goAfzkTYqitROC8
QQsMekB5B/LGkgbEEbAmwcw2OiH4Alx2RVMi1431rW535bSKpUdthNhXWFzpaQQefoGr+sPDof8y
ttpNsSITqHECLFCcqsKDx58skEajPwJ2gyaOXsPXco9tCOT5WyU3d5UfTNMapP5Yq09PqTyuFPyV
C3m0ZtQ7VNOU4GweBv4ZB7kQJHhBEkvMnX9VZVyoj5oe35RkrsPLxt4tfbfCdR8C8adSXq5ylGD4
I2devEvB5ty0wgMXG0/BmzM6GlDpKipB3i5McKblUtJgdQDtXeUA7ki3iBKDWdP156b4qeKztZzC
YQO902Jxhqe8cYmnxoFNIlVKqIku+dKzdW9KCg4Vsqg5ieXPv8/gMFYAFODdW+psYxLOTreRD+El
wTzBHr820Hon1nnVgpi9Wody4cNl6OTLw6/H+6cppzhdUOtZkskixlmerAdfj9fWNJF5pbSHw3Hd
DJO8/qvnYE7FRqJl9kbJp7UVPu3ktv20Azvr/nwORisktZIaEhkmLnKcFQRrAjkbEpfMZzAQ/kZW
SEnBgvi1KWK6XlUQUV+OGQdqlDoZW5liZFXBuSVoqtKgwftSoZFJaqHByffMXav2Pn7YFjsfi/I6
U6tXMwe2dG9+ePnyfHx+eOk+rbLI2BkkTsiE44xaJpNjOBocM9U4cIuBJ50kwrlSJoiLyl2X8d3e
tkj9Ll8rWDyYiko49FNPpfslDYHcqeRrvMNwY6MHG0RYgn4DWFmWGQTCpC1XrWpljP8iFk9xsko6
ShYq9fHmcLeECBznaj39cf/8qS/SRjhVa/yRhj9QydHoCFbJyxYzPAx8OgQkaKSNnmF5WlJvP+Fg
sEdu1xSujZbppflXYVnF3rdsZe/PMsJDxjcbmvj/jf/JhzCaEYYyieI54YxuyRQoRyEz9gaOgg1R
/yWAIsOzBaeHCqfnESfvv/+4HJAYtZMWXZeW51lACKCMYITMUEKVtzb4t5ps+3F9TC1bD2e2lhN9
OCznUX7pERpnrqJ80m30WGIvGYqMlK1J0bQI/s8puDnOXt28nnF3tnvX8fFNSaOpEK4Pm20PH/6W
q8DYOzIaXNpiGC1PcZPE5gGVFuf+cOpRkIM0hwvmtIMjpV/Bustrb3UMLIq6gMi+QvnubDyNmQJa
yUI4E0nA5i7m0WynuSsPcck9MUJzsBHVAhNlsVpBiaBrM84KbtbDSL/0v/zo0lk0YQw1J7dG4wm+
IAWuq8XAPLhJsUVgFAemq7A+ID4Tua449LTVhZMATwsmaoWAdo/lras+cfdL+C6iXB2afXEe0bsB
h0E4lzwNWKmAcxoJeHguYPMgkSoPeCUiXF0RirtcSDHi45KDrvIz7LtumZvquyPGKeYgU5x56kxQ
TQw5yCfASjQBDjJcSS904K3yF7NS8zUXRFVE2X4FcDIhDs0GDfAQNEWRZrEGnLa0MQ5j1AF8aJpa
bri+MhS2DTZUgRoC6tZWg+0kvQRZ/rfbS4NXmA5wxcCL1Aax/UyEE21A1sUgvdIGdE9Ub+eMnWnZ
6F24reXUgENVYXs1kq6m+t3Pt6BkNQY8uBW5as5qbVtUSERjaWxwAWt8Q5OU8cFT5sD/+OsmWsKD
ktf16Dr8cJKdWNx0BN3+X+dJxCrLTYoDFOE4JolBNwOyHkd8NtprjrDgCRyqjVrYxYIFOYf1YEL4
UEwFdKCYS3WvSZQUJEpDBBZmCByZlygFzzcFJq2RzLzZIPsavYLX6F0NkkPXKuy+Pb9gjGLoPRpA
fl2Ar5GAfsRJLg13DEuMhG5ak1xMIkiuzVt0Hs0puDCQfHxjwWPF2vxnaVf32ygOxN/5K/yyUitd
IzDmK1IfCEmjbEKz15Lu3r0gGpwc2gSqQHbV//5mTCAmBbJ754eWAD/P2B4P/pqZykOCbEhYDwOz
A2pT43T2T1wIB7gaDHAou3uwMQ6U8OupmhNhlWQa+F1gvzQBbxDqGiNIrzQLY7Q1mNm2nSJFLTrr
4onBPNeBuYJrwEdCVz0DxjhQCBgs4EKTg555riqwK/GKGq80uXdYC/fORuqt+yz1GgfYQZdZ9RF2
B+ehFNeI2IjhbiK7w/AReKzJ1lzNxjJ0dduLnJuMtey2OvH6tTqGgGfxkx/8bF6l67jhKw6+etDn
XYrugvAwgmuiSTiMeQxdxNceWdblgcuLzGRGItriqSKC4feHtU8sTrnrJBsVsZFtWjp8YHUTYxA/
TOidPdZVGLtYrmeM2YM9+kV73Sr/PmcGl3tPEdM+ti/erNQfT/lh+95YBdTqYOqqyxzNw4UThob9
D2MDrebQysVFG3tqfvC28SG7JjMtc6+IMediTXIf7XZZvZduWhU7hsWgn48wYJmGmhm6i40Lk8ww
qQYDbcu0es/3yPkqCm5Mi8DmfhYnm2rj5Pm430MDDIFvD17PyT6KOXl9J9Bx+IG8HTL0gg1DkSI6
bLnwjlf8k+TVg6EobxHl38NNdgjfknhISn9eZSjlcA1/Cz4kqnwz50WYF/X9JuFr2av/L3v4IZUK
akDQQ7ukJOVt9HRdddjv0VRefIJxruX6xSCHy3T3TnBlCZ9kG1J/HYckyIpod69r2sD2yYHnSczT
4l6d36ifbkn+E43O4jA7FiGwdUxFwwKx+ITAeJifbpWvh6SIXnccMkDidbYwIZqSn/Cw4GmVZw+N
6pZMB7M4USGi3P3pZfYUrNwFXD1NprPlI1FO/4O/vky6Yc+zv8VTb7l6DMhNmqV36yza8XzN41ui
3J9TRwb10+pCcddF8gM9yQfQSVF8WxJMpex5/YMo3pQkYlunL1FTvcDkwm1VCc1bMRpjNcYADM69
UnhfCER70m31zJtdYlazE38iFnIbb4bZ4E3GYLSFVt6k8uhEGZ98aoLKT6HbHwWPF6ViMGn1JTqf
n8nnWUC2qBVRagAbX9DSqIxhXZib0vkstjqU2jEbdKpUvUOgu0VxjBYEBJjGE+iS6N4qc+GHm7h4
hyzTdUe72nLxfXexWHq9AgDzSeysJ65ojdkeo0NM3rrkR6c1HQswfI9uOINoSyijnaSo3JxfSvVF
oFnfck5m6Sa7KtLPfy6SgpdcrUHZtYsAbWIC15uT6cp9GndWgmEOtLoONMAU0fr7FeWgWQMqY178
UNScG/SoBsJUuet85a+4duaLZu6iY5/pMKAThmM3cPt5o1qNoVRFzMx3p5N+kNGstzBczB7nkzGI
dXeDOgPTr38gJph8C/qrzaZ1XVMqMKvHmbcc93JnGA3Z2Qst36kESrnWzm2qmUQ56bV9KaodIHOg
y+X5L6o6WAbik9FfCwNrWl6ZyJvA/EH2oKHyhkIoFYHo1wYbGL6EUf4FUEsDBBQAAgAIADqNLkrK
VjRfHEAAACTiAAAwABwAaHR0cC90ZXN0cy9hcHBjYWNoZS9vZmZsaW5lLWFjY2Vzcy1jcmFzaC1s
b2cudHh0VVQJAANg03pYYNN6WHV4CwABBPUBAAAEFAAAAOxcW3ObyLZ+PvwKnqbkJMh9g6ZVOZlC
CGV8xrey7MycmppSIWjZ7EhCA8ix98P57Wd1owsgyTFJHqZqth8smcv6vrV63bobfJ2lkczznln/
idJ5N1wuZ7L7m5z8mhTqw08XhVwU3YF8lLN0OYfv5h/YdvGfxnVYPDRFwM/pp3S2msv89NPV+d1F
cPrmdC1tmoVz+SXNPp9+klmepIv81Dv9/dofyewxAT6nL+E/LaPT9ff89CKMrkanr6RrnMXwO5km
Mut9g7bGmmxTUwext2YHfndxl709Mfw0lubt81LWL/zddSyHmZ3LsEge5QkYLVMmvG6MwM8//wxm
/dO4y2Vmng2aYDbChjEIC3l6m8wbCARhbiFsYWZi3mOoZ9Oui7BpIRch42pkHlIALGjCqd9NjLoY
dx2zg+2PmGByYtzIZZoVe3dhbHiLdPE8T1e5eXdX4RgAmi8ItvoeoRZ3+9QKhOhbhGPEMdAb2I5h
GIq56X0JP0tzlCwiafbTtOiZtkAImbmM0kWcG8boOS/k3DyDcbjPkuJZWaqQUaGpyEU4mcnYMPws
zB9kbN4+ZDKMt0yQaQ6SfBkW0YP510quwFK7UZ6HycIq9A2GETxFcqmE1ocs+N0f973B2PP9YDQy
O6Ozj6Pg46eTyvVqnLfj9mtwczk+u/zknZ/BTYPBjborLEz0hGo/FFUkXIJCNUT/6uZ6FIwvr27P
hv9rGJ8uzBt5r+LDvJRhBsIo6hmW9cE01B3j8W3w++1e2K2RMEJc/UJW9QBVNv5DXeb++qeZWU+n
2Zcnc3Tx3/7Vb3/DiDU8uCiJQm2u0VJGEL0R+MQ0zeb6YM/wb7zRL2eXH83bYHTbM09BbBRGD/IU
fNR6KOaz7pP6bRgfZ+kknJm3WahcbjWdQoB1MgDLcmlGD1m6SGfpPYDNNk540jOwy5jDGQP/7TqE
OIKY/vBSFsoWe5b/r3K0+XQ6dadMSscW5q1/DZ6yWMDgwXGGxJS6ExspdwT1C9k1p+C22H1nygzS
EmoiciZei2jzaErpUUTQFPIN7h4GoswWr1ctFmRyFCgvwqyA4NwBkK7tuK7grweYxpN9TaLIYSJG
5mh0bv4SwgA9qBwyuLoMalgO4hy3UGYaudOjWFqZZHGvQRfyPi0S7XgNRBcx/p2esUFseAY/4Bka
EdvsOz1jg3jcMwAIIwfj73V6SRCNXuX0GhHqxfc6/RrxZdUwdZzvdfo10CGnBwCbfS9AzRH3AbhN
vtvvkGRkb3Dw4cGBmuKQ7/a7EvHFweEUcfrdtiuBDtmOO5CSXu1mDp8IyBLBkypHSTF7hhpR6Lzg
D8Fy6edEAkqahffwCYfBkI0cwR1O6KuzkjMhdowP4R0FM8oeCHqfdVPU672yCULNJthPM3mIm+4i
iJhGIXLM9XW9XqVG+6ry/pLmRa8HfJsnOr/dDnu9Gzm9LrL3R2//8NNPJ+ZbEzrRQ4K70XLZo65z
YuC2rKF3psdZf8zS1bLXi5M8zPM0giwvB2m0Um3IeRrGMutsb60f12wJt83Oqkhm0Kn2uGOfGKQt
vTCm8mtG/b9DhzuKAOSZOj5thx8JIVBsHtERkBvG0JhEHBmkh54NFNiByZV5lAJyhYMgt5TX9Xrw
uUdi75jmAROeTv0wEHBhBmO3s0Es3YhEOxsMVde7wY5lAeoNs3Reztw0MnEBunKZ9k5iM8B22mIT
HE5fxPYfklkM0CWybR9AZhQCg7dFdkTMjyBDFL8uCt4oUpDf9jhhjsAV3LacOBfiCKciCxd5ohzu
NvXT+TwpILfveGkvjK8hOWpOBBroTplzlFegE0O0tk90dGQijQ9T08dETYvCmTqhB4jig8YQ4BrQ
3bQLzQkTzvHQnCaLROV79TdUg06crmByrAPDJXuRoWkwF1jgliymoXwhQczD54lWNZgvi2dtAkGa
SRGTtpixLY5j6rq+VvsCCtqNzNNVFkmNbtv0iPJUMaEtnYDFsXvUCRZQmlf6b29ayOwyfEzudUq8
TiE5Pu+cc8PwRkJFzgugsMiLn95VBMPMdlRA8Xnzzpyk6axyypvN0i870bfp2eIxnCXx3c25Hmxq
EwNSYQu1qBMSPq0MaknXD2ezSRh9Bs3gW0fR0BUZm53paqGXYMJZD9tU+bLdEpBBpt8DfJDR56ol
v2LF8m9PM1n7OeThOnkIdsaBn9OuBoVYQmBUalBlpP1ZAq6kewTdVQ1klMSyhIVx2/Etme34Ns/s
D3srv8gL6O3GYwyhvx6O949pEptHDPShbFAao8cFBevwlqNHhe0eHz31pb3vN9y8UVe+2QatQ21t
KBsmDHVLqXKO3bb5wpHH8sUMPn9LiodXVtZ3B8Soxcojqrw2XxBO3EOKipaK0omMXlC0s3+qPiI6
gDEUOFWlVecItYmgdlEbxzgMq1Gryn+JvwbrbE4qAtDBARVIMXmFA4W81FnfWhYKbEMCIbgdlamw
wYTaF8+u/V7vIVzEM3kh8xzkvl9/5hWSFYu8a6rwztw6dV2zNydfUehDR6NDikrVHGVP8ptvF62d
B8zS+aWqmsq30FwR0spcXCAG+VZzXQu6kZFMHmV2ES53qXZ9rlRKTfHLnQDQq6Zm6UtQ9/dllUNK
IOkR2oqiYLHAdeda79kAu3iN0IKfirqdEE3LIQJosXaWY0JMqNkA3LfYLlGuFgl42XgJk+8qqWou
jeU0XM2KcSzVSlDtsg/mh3Wkmp25nKfZc484arpB7Ja8IxWrR3lfLbbG1HjEqeDZCq9W0f8nfAxH
UZYsi12eqiUoEsmJgBZHLz2sFudpCm61lJnaQvgtzT6XzTqlOxRmq9HgLVGmE0ReQFHBVs6RoFNZ
X+EPy9UMBVcrLwpkmK4Wcbnxsbc8JNjU5RKb47E/vLm7PL+6uh6fjca+d35+dvlxfHV3O769Gnvj
0dXdjR+g8XVwM7y6uRgP7y7927Ory/FYWZYbRLRDjbkUvEQtNRikI11jc6SXA6hBUVuJjE6rEuFD
zxy4QXFLUY6krlkVtN0wgqATjkFrqemXs1uo+ZP06cgSXIRQJKhtghx/lakZf/Coa3K6PFtcqD1e
kEptg9K2UrkzNddp41I+lWLVPDZVmjNKDMrairRhgjruz9Lo8x000LOt2AsVUTA5Ok/yomSt+o5h
MoN8DmAcG7QWvd5yeSx6NRYnYRRPHXM8uB5tQZQvIQcGzGkrikAsW39cjqq7fONFk/z6j/wzZDBQ
Tu1+9xKtDOSrcmHzT2U5mxmUt6SAYhftUchWCyXQcWEo3HYCoUN2XLMmTk1MdeLk4IIQcLNk8rSM
uvEzfDFfWgUW3JlAumXmGK4fp5N/ReN5KYsL22ConahwOplIU0laC2GCGQy/+PjDXu5GhEfI3AiA
Wt/ZbQIrPbvzeQ9TaAMY0eyAWXyEXtVu0qbgwnG5Tq9stV3Mxj29Og0Ccv08wBgmGgs5q8usi7KZ
LQmkFLXI/pe+PpPFKtNjgPSq8U7aslwBr4mrSnMdmPBw19xcOP7yV/lFVyaX6lXeVuI4BZtrPWuy
6FZj8uKyvbLp+qQ1DxdQJbNvMBBUefOz3n0Z/5XmNcNspB8Ytao/oUg62LHN8eb68fw+GyeLx/Sz
TozY2Zjm9QLtOIobArcGssnWQPQf5xLsH6ex/Y/T2OlVw/xypIve7W5/ro0pWDzlBLK0CqL8flxk
4fKQFV4jiMIUYyNIr6k29rVe0Za5GGY2lQ5vWy6ih+tUp3uCSWO76jWNoy2j/cYRU9tp7Dv9gM6x
vo/01S6AIRILyI21UdT7VEJvC7VzRAGzl60jTtL4WauJ9TZPS0kwjd1K2tZax9W7My3d2cZmU9DO
mfm3hC9GwG6cy/mXMCnGeXK/CGeH3DZ6uZK4IWY0RlNzES7SfCal9n0hNjEbvX3bxYd7kpoUjgTS
jw5s5sbFQ5KvC1KvpwWPYXZXmV+Xz5DBTHaVaVd7P0sX96b6VZ1i63Pv8eydibdPBc5gcl1ZieJ2
Ixy+Pv2c4ulEmJN5OINJQK/3i1SLJ3kUgv8dWgNQM4X326vVymESXawK+fThpyrXb9Fotl4ooGq7
YDyeK6njSZjLHha8uSf8GsViSB8NxcBUUTknG21U1BsUbhOR4uYm8CsQqY3wDtHLnxfRLcw+3tdI
bJbPGszenHROPihfUW6yziflXhg3O1tR3YceJnZzj/g11BiKfwi1YFFkz9dpsig63yOu3GEVjS3n
1yjiTGIt903Fkcbr8Bovs/Tp+X0l9FYgdr2+D7jfx/jddxnwDbj3bjFH0OriFD9pn0mPpnfx49I7
Rj82vbuNXuXu5ny3kleu/f+nZ/l79SyHHjurP0E3YaEDTcofjeHslON5Yo6z9X6aOqDXN/WiC5ih
nsWatJtITLhEOsq6l6PSn8alj5WLkuB539LZHAki98cFkfjBPZKAINpsjZmQLdPZLFnc/ydu/mZx
8zWBNnaFfj66vn7NWz7/RQXitlN5EmPrEes3W3rJIimScJb8W1bbCqIecmlcC9ZW63A2PWldlyVx
N7sYe33Ctuhhfmjf2G0NNYmmJdSXYnp7HM1ulFjxw7JD67r4QonFPzY7YNTbfce1eusPR9C9y6K7
zJLHsJDfMNVCvJxqzSDH77JFK6+3mR3qkCzJXJRrkWry4pD2yyNHh4j+uATOfnACR2a0fvnsS1I8
qPf71m+hmfpJDLPjMGuSFCc9wzSz8Km39y4YgoHLJsdORMdOxNUTGE2msWAIKZA4OXJLvj2hdLOn
bCriiUZf7p9w9R0HTnAFYmbuARCVZzJR5xWGjqPRwZcPEFYncAWEIRHpK5QmmBzRBNO6rInDONcn
2DEQe+8OZ6pBkmXtzOa5djObzhrocBKpzcPsAC2qZBnn6zfH/Ou78o0+7BhBlqWZfk1w/ZLf9lZm
3Ko6fbmaTzbvomJmGEY/WYTZs3k214+IGJsX+p627/KZllk/SGB0Xt7C6ej3Uy1z+4Kq+d713MGQ
E9vymYctOhS25Q0HvsUQE0M45voO+vD3exmwrnl8yByxMsfb3dMVo4dkvg7xDgLNmWezIHCF5bqu
Z1HBh5bLXGb1xaDvcjawPeEf0XxPYp0PFvt8QhFOp4ceNjkwJsSnmA0ItRzqDS1KiWv1iR1Y/b47
hGQ78PrEaTsm5bkqT0wo2eOJGYb4m+zzPJf3YfR8iC0SIMjnyMK+Sy1KBq7lCs+x+jbltj/knCJ8
nG0p9yXO5RU15o7L95gT6roNCzcajwPcfYRcJLhtEZcC92DALA+MYjGfocD2hgFBB32gLvkw+/o1
Vf5EhOEefyqps+8hx4gLD7vYccBlB2xgUScg4MZ9YdG+R33PcRwx5EeMfpzx+mSVarTOtjWqEaLs
YK65lXkBHelCZt2zxb+goZBxf6WeCzM7uKuEYBV3NsXukPiW4zECcYcRhJzvWgFGnJKA0AEPjvvL
DqKO0J3oj2Y+efmmuqYh3dcUY3Aqbr6FGF9bR8karZbqdfhaNnGCYUApswYoYBZl3LEgs3pWYA8G
vmvbhKP+Ia1eEFxlNxU42mM3DbFU7Kr7EReDi9vzfpYu/i0HmXrcTZmekS60zmD+LusSlfRdQXng
eJaL+8iiiAtL9AfcwiSAEBj6wut7QLZ87f70PJlkUIpOgyew7NpX9mCO2H//QqNkr1oJZ8rdyU6r
7cGIhAy0Ug8MmB3qoC4pSYNR6dC3fB9BVsS+b3m+zyxuey6y/YAhPADSqzxTRj1Vd1ewXEYZbWLB
QcduWHD0EGbq3boOU1ajXQfu2HwFFoPBgLgYg/cGfh+y3RACLwiw5Yj+UMCcpA8lc99012V7PtxE
XX66hjkciOuTNfoMkX368NOgfyELaD06tqOJqw8gTRFMTTnGkC0guUFaFpbnYah8CA2o77qBI+g+
6QpbLfUwV32qztRB+0xtLDRTGJrHiyTfbNwAUdq1gWJ/6GAy5ANr6NG+6kMgtfUDDoxx3+8THPi+
/SJFL4pgDpOBlQ/zrFz6KCMQcPiyOj+jrkJ4SC/dZ+jZxDJZxKv5cqMaFryLdYHk3Obu0EJD3WIx
6DGwE8A4DIYD4tvE992K4+5JqpHgxNknwVU6Lo37lM+K7Z5WB7MuAwac+APse8zCw76qFpxY3sAP
IENBpHMG9VR4dQZVMTV8l9j7+IJFjXpwHq4W0cOmCzQ7nLgQQXBb+UUF0hCaBOFTCzkecEIOcGLI
s2wUDDDxob753osDrnLmBuCrQ17nc/jy+jVGXcF4X+soxA2tK/PkjtMVKuMSW6gBwJ4YUA9ZqI8h
dwUUUq8zpBZmMLd0bA+KB3lR2Z3kQ9z9ynmjTvFA0pjSqNFo5DJa6f+r0uG6TNucUt5ViRe4BySw
bQqhSFzItpQIaO1oH371cR96DU4Fezl5jNbSj+S69dkqb3Cxfd42sptdh3qyTn7ytliQTrqoS4lS
QX9RiQVzjil0zz6GgqfpC+ELyx94KHAD4kFxfk3CXmMdVmJ9sqYDVv9qp6kDRuEmUv9ahVmoXnGS
m2h1VSOBhhCPYvj/xF3bbhxHkn3nV+yjgEFy8n55zKtXOx5YtjzGvg36KhOmSIGkPKP5+j1Rza6u
Wze5O4QXEEipq5QZUZURcU5EZDaWSgYZURHULKlYWdUuKeNtCXzoLQ4pjD8vjDcRZr0kzP7ou7pj
Uo5yOHLIwWgfYw1MwkUwZSBHqOQzZHRZW0Rj7RblGAw1FiGoBRHC1HO8/6Hz5H/t0nx0ussQO5qg
PNZbZjU2PByXHYtKGWZlCdGUmkWwr3mZs0mWX+vstolC2yWFdhPj+oJQPiBl1x/o31CKd1pJ2wXo
6k1zPLPiCqFHAIpErDSLZjiCYcBqvewMVw/rZd8wcoMfxrIM7+ouTfTbL+i3kscF3GUGP+bhyhEi
dNEcZCxAlQgtKvm7BF4VwWVbqqVykfGmLuvzw5fd3Xffn/HT3e03QNFLQoxVWNkFFYAxJ5jv2+f1
fd/yS4CZPIjnmoIn3ktqzhoSHgSricq8yVAtyeYrPKPP8lWIbzjJGV84vGWkiFQL7wIfHu33M6Gw
vz/dgFs8rU4QBNrDD+oD6i+1RiGkYw6mgpfSKOIm/KiIUjnhw/QqT/jdh7/l+89fboC2BmqcE2Ks
huYLamh+XFK3XQju/ZA114ZfewL/sIliuWFGCBiI1QILCsy35qZEorPGDF/0RsMRR6JYu5mLYt1q
4o7usRA/AVALMICDG+r+ApGsDMElQOmUC3hsdLDZIiwr1eFJxgY3Kf/Pa/xwbSSwWzJHt14fn93u
SM/6x0cPrpVgZKF0TKqZqYzAHbrD2EQRoDEmG13H0G8yzkiGEBbCyHplj8uw3T/e/n377W71+aZH
+MJeS7Ij0yixJoHwiwbCh1iwIyVYrgj2LVDyJYwlmY92NZ7XzYXZbPXE/x649T/hchHEulcIOHct
yCJiSdUrYxhIr2FK4e1FC5BTsL6KFSCVWb+IQWns5Zd4vHo1FnAOoM1uJ4+P8GbzdUMZmtgzJCOu
8YceIbxqSEJbprwGjysaMDLjR6sqiGIKzNiNH+FktKEklrs5n7FHTHB6fjd3v53U6+IWAVspSCAB
xwgLhEDNwTfa5GENyjGsKh6b0kkp/xZx6/1QhlGEvvttpJMQfEEnSuKshxWf7d3j47Z3ktIQ1iV9
4EjwiIMHTqTEiLCZJZgIMwqmBqwOJFkW3cx83IlYYUEsPXU239HxgvqACzofk3TgSoEtqKQq5agj
iJsD3gH8sjXEIDS/+Hwx4vKDw4WxhOslCffu6F2++76rRPRGLTtqCw7QQG0U3DIHtQ0cBgTADdbu
VQNt5zDst4nzo/lHkmu1ILk2Zvpsd3e7Q+fi6vbj84FJ7w7+QKrQaeOzx7LWnmkZCF1iXYcM/KKt
y0E5RP0UXhUg51OdeQnzG8eqmTl8scb0CKzd3z19WD08IhAf34vxXcZHWhdDrJppobCaEfbxTpxC
hGolB2usb+1yOuW0aenVJDv+fGaxHbffP/55QeiRxsHrucbBb3qecv/l2x7I47QOHflxotEuZdYU
QI3S+JGSxXvM1rTCqU1fLnOV0XATSebo3q7NFDp2q/L9D0MPqa7VASloyzvhlC2GUoS6KgSZKFjQ
XLGSLVi150H6y5mt2RQjB3i4OBJ9vVtwghtujsvmw92nU4Kok1HCkzhdONPawNnEEpgXwFiAXBJu
RmDp/Bsyjl5/P/lQZCe2cyN2kqujyJs//Wm1vjlKrbjrEG2QsrYEM+U1wD0Kk5iXjrPqRcxaaScz
H8fD4TgjAaSdLzy389tpfv3Q73/M7miurzWtQMQ6IZqtrBQPtkyP0meswGxDkpKbqrvk9EV7O1O7
y8/XrsaS7RbEDfxoJ/mXv378cPv1083dpFbx7LgBl1WUIbJCuQUVwKF95YXZkI2Dd9DJ8jciaMuS
jLUJYkmbQ8X0FF3v7p9u9t9Org4xm3faFO1TqUoz3hy00WBnkbcGGOI8oFHwLudLYXs48EiwvZg/
Zq/NZpZ0396sjjtzj+kKp8S1MNeS0/qwsCnVkmMJv5nigG8+BliZVgjwTerc7AsZ+NMU5xLxpzuu
xvJuF5Tw64kSw3wqnbT8QHsu3kntrymf1v0mRSpoQ+NYOK4JipEeiKQC8bXgVSq6Zp9eEyOXZjuP
oqd3jvXzcyYHqrLb7w628Hv5+GFabjCOS2s47LVxxMdiPOXkGwsVukmPq0n9UeWGXryrsQL7Ba1W
03LV45fdDvz2Ybe5/3R3M04tUDoUa7DLhorOUEI1MXi8vQaARLV6Q7wQJpPg6YXPWZv6Fnj9YyfV
T0tCjfId09vGT2Azd8lgLeHoFQhI0JnYj08PA6dgumUaHS/gk5S4bIr8cQSUEwF6p0A1/xqs+H/E
P2OxR1pbZRe0Vn2BZ7Fn7R1Q3rU4cBhViqhNZwaGD54dU0Moyl3SXuRaazAmXHKGo5FHou3dnLr6
/Wo/WZJlt/766ZDKeiTJyH2ILhcvVdQyG8DQAHChEPZhcFUCp3kXqWxoXpeBGs6w/MSHd4x1WPMF
HTaiB5ifv/T5JwLSKerUJB6faxp2osBwQymOWRFyqMmrmtsEYvQjDCcOfDOPcUGIKds+6J7v7/Y3
n553WlFEEbor33ek22M9VK7xFC0QBh4ppaCiYc2HlnjNydZ8uSAzn+NcPnJ240gnqeYZmCCtnbDt
vu1KCU7Ol/squsyjJbKlSqssGt+V851SJlVX9aUV+nnh8Wo9j9TgDXohyJ2t0hlYDIAcokCjXBkl
SL3ykskC2u9MQyR9uSR5uVIXJ/dcjcWd21cIdspkqeKO/73qcjGHgl1w8lodkmyau0y5C6mpeiQM
FfkBNmQpiWvJ8fHbVVWPkpzvDKCrV2N17JKOYfKeft3dfqF1Dy5FCbuuRmJK1EB6jKcMkmcitTM4
6lQM3OTSdLP6LWLXf2Lq5ZvoylgZv6TMyk9LWptTEMGS811Ipl8ExEutJVXLmqG+h0RayaKZVLBp
uHKs7FflHIZznGGKgzuGWqy4mRcqV9zujhHn+5u73eoh3n7aYfJTpcfKLtK2Vo2upbHGgZ9U5lTa
1hE+PbqUKNcryx+EpBYEHSu6AChWwogjUJxsKoZ5eTpdv3tPwIRKFSkZ1cIpj56x+mRmteSatK3a
xnbJZy0ksDG1XJJHHWNRuVl9urt/pP24z0fFHU6dPMnXdZ5JrZJNWDKC6lMGJBgkDnjHRImXhJDV
1UQHEeryuCMRpZzz8pVUftIj+v3q7lMELv/2eEMh/9krdb8pS4wnJYRULFIbgfIGYd9hiSAOmKIN
SLQzbw7GhiKd6/c43TFWWi0qvTmGtY+bh93u7qddd4zs87vQ0l5rsgewiOxCEUwbRy2lgbOgDbho
ihJ4W3jTyvh1zIebSLNdkGYtzvRw7EfRrevmMEJ2rWsx6lYKB5ShzgIeI4PjQbSzKYUGMNa4e1Uj
x0shbn7fWKHtHAmtjHWnWuZmNfA0NtiOstVmMwfDZKZVT0m+BAoNv2NDNCrXHFyc1I9GA12NZ/NL
Ikwd9zAYLvUwVcIuVP2ruVJviZZY2LLA9GBz2ibjkv83o+3wjokKC4vUrHfTFpkKwemLn/4DP7uS
lw7SQdDmaRF4m1jUhrMWs/QC66DFNwQIsZ7pl6ljXdZzrruyVk10Sbdfd0/390+/UpFEHzoz6fe+
ayvmTlY4GNYAdfAuMpxMAuMLSoXsOCi9ucz43v/Qj3+uG6S/YSS93cwbW1ZO2EHuctCRJw/xxLes
ACupB5OYuA7gFTEbQGIL/AayUYSepS6XOvJWTpuF6QNfQL5diuj9D7QiDilq7ULXVuNKkBkwvDpB
DpoAeYWRcQCu4GCALrQXF8Xz4OeX8fMNY+EXMn8rt54Z4q9f737rzq7rpqaisqMAY7vsf3FNepMZ
+GOlIiQCoI+KGS+tFsogAtZXpaTGk5xRZHzTWJmFGho+nJrkzzkPe5qaqRUYScFr0MOn3QjBpcqk
zAlESSTo8hrxMeyyyLgwEXPB2tzWTjIMq8fbnrdJRY0YnZmJRkI1JhIiiWqisBRVpH5i41wtePIX
swv9qGORtm5BpL04pnpu//V5dW1OuIeAc+bKBJHguQweGxHgmL1gvDjLlYqZ50ljw3CQ0ex+vYAL
w6ovPvzz8y2w7nF2Ga5Fl3ROsdhsCyvNEN+qnEUrBYC8saUVIaMTk6bawThX47kW3kjYT8krVfIf
j66XesR323Zzu6MDHSlR23Ut4RcFS1EkzMIl5qjxWEkD8CUDHE3hUcnohRT57dz8WJbzPe2ne8bq
71dL6q/7xurD0lnTSTWPPSzo1ASdLaEY1izQjDIw/aS4AwMByMxSw4DMpdU4HHIi0jynvFoJNbER
eiNPt71MXlFFggTLgZdYlQc79SCrXmQWAf2YjDb6ZJ2z0l+kC8OBR5LtFjgnPtxdgC7X7XD4FEFz
CVOmr3fssh7Pf6cG5WaSo29qTBkWrVoMLIbkWTEAWqKK4MIbdmMf5Tlz4/PVkdp7N8/b0YfHF/Lb
7tvnTz0al4eeMScyyCkAIyGCDHaUANhYDT47K5JtdblnbDjWRAi3JMTm6Ka+3v3j5q7PySpzTSCx
WRBErEOGkE55iwBnmSAVtRS0lEAQuv7puRjD0cZihAXeuIcTGfPYL7erJzpzuO8H07Q6uzxsiAGx
EtjZOfKdSjFPDS82q+h91gnO/GKKeDTyRLb1gmyr3pbXj5+vef+Eus0JVQDBaBiIp7yVcZolPDJm
imkxZSeDnPDXwRjjuVcLRrvf2Ylp/FioRi8oLa247FquK+1J40z6zkUKDWMFU21eFuqT47a+fbHg
x7J8y49lqNMaqHWm05qHvi9n9fXpvo+LnmheCKFawRtDqM5w/UBCseTITM1ch2RNaWn8PE9jjKcO
c5K0Fr5vYP+vD3LSRuBasVIhJtdCexEdbal1jeOfIttasm1SvFEbQT/5SGS50Ge1lmpKJP6ye1jv
Hu4faR0cYZhI2mmd4B4MVcR9lcA0xrIK1q6k403Wy1zuOOiy8MerI3HVQhV/railU71QE7iu8YPn
Uvx3t8eHP/ebdNmWIqqqHJBEZk/MQsC4q4crjxq2VIJuLb8GTx5nWNbneHWkj1noUl7b9Xby+P/2
fpiCPyBhrWwXiGJMyUjrQEVo2wE1uyXYAKvWmlSiL7Xp10g/nGNZg+EdV2OBd0ta7I/pn4fd5/vf
d8MuJN2RKCNrU6EyoQskt6CicLKBaWMNyHXzYdRpe3Kq0/HGwmzm/nSN6DUL97f3Dx+/3W2IGofD
E6Xfz0zTVQnvbqhHMyfJQulqRirgki/Nuzf3br085+jg8+WRrvvt3H9v5Haq6+kQ9Hfyub7tnxuC
qDFcZY1lb2nnvEaIC5lX1oRPCp684l28SY3g/cVWjP7y1VgTuaSem5V3QJMpKf74eLPuvi/raCMu
dJ078O4JKgrQcujJqYvfw9EDpSmZQvBJvtxJMhr/Qj/J6L6JNn5JmylzP2X3uzIm/YfBR/QJmY5X
tEuL9rtkBZ1or1GjrUc5J5tkdfWlAPxCDeF0faTDej3H0putn3aQ//h19fD0r8NWfEhMC04Tbu6q
7blGmKOlsxpo+72FYQHiM+1saraoZpb6YYY4oB/8DB7or49E38k5Z9rSV08846zv44eY/zKr1mhg
fk/HHFjAfaYCOHxq1DPJdeRZeifFH9X3MpTwaqSFmufTtmo7bTNY/T5MdR86eQXXFm6va+7XIpXC
VWN0HDTeDO0opsq9A57T3qRYX3gz8ZeXQsjwjqEKO7NQQaCD7Y8hZHAW/mmDexNcJdkSK4oO0vA5
sRBkZFXYVHLiPPJlonAabSLEdkEIs55w2NEhUe8UNXpRzQsLvVsxIiNGNEhVk0twqbywmJVk0hnP
wRNi5vESVxgOPxLPyjmZ2tnnjstBb97hrMK+gcv3qahEG1uSUyzIAv9XomN4yWAPPoRirdYmi4td
f8ORx6Jt9YJouymOyY26IMvNw27zdN9lJfnBO4jQbY4QLRjaa21MpVRZKCwIJwDEfTY21hq0f7HH
sh/95ZDbXnH/5Kax1rs57tk5IU94v343AfxexuYsjCqpauFOYmRBu8qy0lF63oD725sB/uPsV2P5
1JLQfTHpy+rzIHXXJQ5bLiKkAmqSsGyaTLSVOTOdparg6aaJyWb4wRiTuf3S3KGvE3ZqX6dT7l/a
Y8KFC2kQtguzgg5wiWBJ1KAFRm6blq7IXCasdzzaSJCwWhBkbftdL+n7+HEWChIUFl5arMcEd0OZ
zORMYRlwwtsqEcbsHxQKTvKN1Fr7hXe79maSFxylRfuzFw7OKyEAR9BgcB7a8giX6lOIVMT3ytqW
JC8vpeHGQw8F3OvV3MPu3exwnNOBq+8cXKvtelqe/9ZtO0kBqLyywuFmAVMp/QAOKqNplUsfi70c
qPrxz9n88+WB7IGv+Yyr4UPRJxbO+93aagkO8hpDpSueOcMjRmB1ASyZJx30pMJ9ztMGvpnvocaH
22mX60+gSE+7X252/ziVY48RvwsF0nuhQWo8VbEU3A5LxOWFMVZzFaRRr6qhzOc555mm94212u7m
Wm15nwSbfA/KO8NF18pOSzbTl7l5Qx2GkZJRDvHW1Aj2VnL2WZUWlveyjAe9Gk+9WZBHmoW9ro/d
iVXdATjUvtFFM3vYHqVsBaRFlFXw7linwVF7XGMIZy5JBwtL6S3IFUWoj0cxzm+P7W8ZqirMbha6
8eF+Wg29GLiViNbFYpjJXacZR1SjIOelKE2nrBdPGfjfBe5zYTgIK+RcA2t7XPTz+9YmYVg5EPpQ
IphgRBjGOmG+Wc6acroBQ2bA+zcKw6fZx0Lb+YoXcHFHoW8293e/nwLxYWP9//B2LU1uG0n63r9i
jnuBtt6PYz1lRdg7DsvyzG2DBNEWw3J3T7faa/vXT2YBBFFAsZux0+GLRBFQIZOoynd+SaQjDiuV
GLpOWMxqQH50mengo2PKJ7vuZl2sclM/ijaeb9av/YzCUBA7MIJFUSWOooQy+o6PvfKWCK0zCGFv
uMT+GNoZlM455kyYh41g49WoIeUxLwCHlOs1O/utWKR7vg4M/nQ8DPcv950EHZiiWH6kJJoZFH7t
pDuqXHCRa9oMpy0YWD6izcLyjpua3r7FRH/aE893/TmnWqC1PAWbWHdBazmWWnuhwCTiCUwUZU0m
6UKipG9siT1v/YZKrayHI6J/nLal1qjkyuZ0zoK5BvaZiAjVBH69U9F0KjgsCdc5ixcth/OyNVFK
b4m6tWtJPE6Qf5d3/TCGHbCnEAVU+Rt1sBRgGYBaEAyLBog2nWNgPgbJEnwlorRX1TycnnBBKE9X
b2pqN0ETOB63faPt/v3j7uHzsS8lgQWKAkuVwe4pO5MaEKzg6BLuDLztWDqiwP6JQYL9rmN+pQNn
+YDLRSenO5YscKbtlgVm5iaA9/mfY7p61TUHbjD3HvYDwdZaLjUZPU7qA7E8G631G8GarCioqTe7
LfWS7tY20+7/AjzmcTdB82E5IMVqdzNKXwoqg4EbBJLMIIJkgt8fKzONdYyRRI1oKLllmve/109Y
g//N1yvy5bA9l3y328MOqo5A0Ul/+y9Tdo0ZQ9kye0HB8gSPBTxqwXnntMWcv9UkBxDVhryZyzL2
mzdvG69VXB3E1u7gBznDOvy+ezwXgU1pRw4yOivVMcRw4BFd0mhoB6yIYKQlPKxKwBaL1A+XvPXw
/UqqgBuQP56qQsdkkRHgZXABNAiMvGbGEOUJk2BGOUqSo68Ak5U1279SuVTROdxurQRB6LnQ419f
jl8HPmsFqoosjmD1gjzTnaUOiNTYoSF16JSy4IfYEA1bZTSrhW6qp3HWIEHM1lX4IX98hv9bpahB
vIK3jNLfYaSdKN155l1HAnPEO29c4DUB9TI1BdumfivYbd+o14tjlwfDu5WgxVvErl0pLKhFsMvh
x2DY82wQuzglErDe/grMknixaeN09aambntkBSfbJBQOrv1+dzeUxi8w1FQR+AVsOemSWJUSgw1g
WiHiKJhXjFMBtrZjyb6F77Ak4RKD5ztuan4aO4OLdWFNE85ryg3Q0ior9BhgAXaNc8ojwo3Fwr7Y
eRKxSdmG4DPNoOTePPE2k/MCytdapQsuW6yfGxG+7O5+Pi6UYbGQQxCZRApOEmiNMfER0BtMHNRI
jsQwtqq/W6xSP763jccPczP7r6AWn+Z6cDyQCQ6A9QiigIE8MGvRVOSqA9dMBmsSz2QVw1uuUT98
UK2HqwbU4OpdACkGX7cpNahR6shdRwVDwLMsO59BYCSH0okqYYx4m3fduHHFz9bCFOJWrsyzw/D0
y9f7h6eZF0zFlcDU+AG9SqcsUbBhAwFTnOO79tLYjgilwCIXDN75dd2a5VEnavGGS02bmxtvai5U
i7VhZdFP0aYNHhY3EqMsHOWRUsTKGHSnJLdY8Qx6T4IJJCRCrGcVCRVX5A4uY2VZWGm/pVberlH6
z5IEj+U/jvm4cEgJSBRSanq4tAycN8+x6z67Er2OsL0MD1yB/dmKs7e77vERl2U/Xq3Y0Nu+VfxS
bGAbPz4/3oK/UNqmQPSXrTR+QlnIEnZXKvBXsEkJXL3OIbqSACkhU2aKvaK15vUv1eZPlyvawaLf
0m64ONXrhfcFUAD/39O5R1W/Q29UaLAvEYhRMtSzROvOEXBOI5GJMNBnitO/wtaswTQ2BNf8ioZ9
td8jLnXhF+eGn4HFVMEbjVJGMJs1YgMnLBeTYGYR2QkRtctJmcBWmGLLVW7qJ20dE9EzeTEIUzbc
t+5/Gjuee47YdLzTOWDfNQcLhwTaCc6yEzTGENOrZg6u/cJWh6s3NamqRb9ZQy5M7U2f4aTaqcOK
EJQqNGmfJFhkVmM/EFY0uBRAKaTEXGRCRfMmMJ6nBqtvPrzcgPXNh5o/2zgO/bDGkMcwcI/QH1Mb
H5va+MBZ8QbB3hwhYAWDfsMaIgMOg0gB9p4lOr3q/YYXAA/DtzW52xrs8uVJ3FdB4E9fj1/OiINj
wNpFEl0wYGoCceMRttaC8wAvRVEKzq9b+Q0XllyR1TCGD2Jul+2fH54WkU4+AlJYKo1wgnSs5Pt4
Mp1TlINtyBgz4OvpNQj4cp2KgIMxDQLO2D/flSzA7GwWhCzsh/Dw+jqdUJpFOOqOagmni1uhchBS
rnzNapXl86VoaAT4co7rhc/Hu+Fp+PH+l+Hu+OcCmwyPCLjrJiisPSEKNFnQsH9YiJ1QEgengLyJ
K0Lay1UUyUbIXIIHu9rY3wzHXw8IarOE2JORgw0Abrfx2D3EJA6EAQcPh9+ARUdAzV4VSZsWv9Q5
Xi7WRBvdItquASGGHscG/eMR/onTHCbaFT0Vc9NskGpQVBYDaWAhdGAF5i6CtGFaKK7Ndfi01YMu
CpbFPRU7aguVZKW9VaUovXZr3aeAzv2pbnX6hDEpFPEWBKYK2FxEJFhlgbGOMGMcA5d/RMq/ysyB
h1wW/XCxIn7X0FyyFK3ryQPpP89RYqPlmA/D7LkATxZtRqylMuiJS1CkiuFoIUEvxKsXq9VU9KRB
RT/HkML7f/74x8MCGvQUS82SBY9tMJ4rBe6Q5Z2nSeF4D2m40tJT+x/GUqsk0IqQiom92ioZuT8M
m229e+w/Fyw1nEpCpukkZRdQ3MnGjEBeXMGPC1Icg37UcxPsVZHh63uXToRc2vHT5YrJnm+jfbKH
DTPsJ5jCx6F//OPhXJvPuTzXLQUicwR7UiKKKyLugTEP9g3sGCOM44FeQFZfrVqRdNh26ls59Juq
uefD8f7d1ymh4/BfiwQSnRzA4v5pkqz0ARwjMNS5VawzKoSOOIpoZY5w8/KmWi5+wZdd3LFkBpTz
VjYqyta+U8Chez8MiCo3PE7wcudkrqbomRMQqcxLEOioZngoE77gDyKozgoODI3XAZY1nnVBwDTu
rLkTuwZ3Yl1e9t3u7ufH+9+q4UksGqDZYVoK47XeAzcBzjwNOZJgSTLiqvL409oXSn+nqyuqhwbV
t+uDvd/1vzw/VIjBYD+KCQ6iZB44EQkREqylaCXb1IGHYjufjQxcemHIVVLer5605GC8VtHP2NZs
wS/Xe6qY4IgkVmiWupTQK0QfZ6BiBWI6MIt5B2yW45wmFqjh8f9t14/XVqSyBql8VgQfHxA/tVnV
pTKYAo6gt4Qq1ICxaeD37jwBf0qkSL3/q+BY1lTWLG671suXm5Byf78rmSs80eMcKLDjjXa+i4xj
LESCerDWwx+cCviVMH34inqANS/ZBnCpotM0fCZl9uZ2mKz9+18fHrFE/hxnKs2HYJRlwWjsKEWw
fQECyGF5JPXJg6VLHCcr32OzUk3Hft+i47BpSF02Cc1zRVgpLypSPSavY7YdeP+IcYyTJnBuH6FK
GcNyJvllHJvtAyo698PWOVG9pis19P3wiA2Eu7t+WOLGnMQc0TGYyOHAlT4OxMyEI4bQa0FQ7p0J
7Kp4V+MxF+Li2xtvag5Yi611t8N58uVcn4YuRmKgu6LqcnZYTwRmrc9UdTZHDv60F+Q6FXRe/bW5
myva+wbt1pyiYDjM/ctv7+x5aAT6zuCPgaFiOmqxux3UPWh/kNnEM3DVwPT1eRVhr5epKdiRBgW7
/TbG/nF3dyi2yMbNkUwrxXBYIDaHcqz7dmAQYkCRwMmKLCVzZUXO9JCL8fXpesXC0G+9flUmKVUs
IN7ZYfhayrqe+pIVGoMoY6FWMoqqTED1ERcQfQUNdROACZVUjNSF65xNzNDF02MuZ3s2t93U1LdY
2nSSjxZj8ZrwE76aCTwE/0amwE8WmfuOKObRwkKBDEwFxAIUkZAoXkfBKWu/4LDh5Zp60xDMt/t1
MCsex9Hkj398XKQ6CqKtnNIchOFoKYYITdgSg8AxFLGRJM5JSVSD0n87d2NLz4VXt7mv5n7f4v7Q
GJCFNRm7410zdJCx0EODXUMDzgX0EfxttHCCThpMMS/AIbnyTM2PuXiq5juWjMDDt/oCvlxjPzxN
R/YUVcPi6amX3Snj4a11Xhv0fYkEb8qh5khlSoLN/kWkhWrlFWlDgzScELOv2xGrncXGeDCaYl6D
bKdwEDKCqosgOoPVQgl8P8T2o8G+ff73TM2l1sTWftKksZ80GeYOgh8+fL8NO6hgkwo4yZVlhFxK
qnPJG/jpheOSEk+1e8uww4KIini+BYCGLy092Uafx+hbt3u6m6OiQhasjtJ+aA2NSRCEkgGtzFXW
nU8W3N1gHJpvKsRVIep2xYqgxqRI/HJd4vH7Q/9uehvgce1+Hn4tQ7rPZlDEsmOnYpci6jxMUHoZ
bZc4d9yDHqFevoLYtlr9UpBjdduKm0ODGzb3ke3/LCORzmnWApeYQKRK0wWCBfkGexrgOHRUY1An
BM/FKsxbrVI9XzUSqVrZOd785znWrTB7NAZZeALnmOVOGJy6wIwGc4vgoEmTiIiCaBdqAv5sBbu1
apguGqynGRvooW+Mq5IiUnhm6kCxYD8CqBNjE8PRq5qxDM6vaVvZ83I1EX1jP+lNKnlq85jn9C63
UsjRGqME5l6xoJnCViKYpAKj3wqH4p6+VuhVLX6x5qu6q2Jj1/Bh9K4nKzbi8ekX97g/fn2cezv1
mIYqoU5pCYPfU+K0Js6kBFccDKocU5ReSk5e6fBerX5J+1Y3VVzsWxprL1v1W6U0Gt+CKb0FYwEX
2BZMOLBcg0cEvqw8mLQxgaMorIBDo4R9HZqprHzZXCqXa6pl4xD3XDVgg0rjd7ucXJPgosAWkGw8
VkWDVysYwZFiiYL5Fxgn1wHFvQITV9He9y3aN43zsPfcM4IDjgWOakTDUJZ5mnKHQEaw21GsJxAL
zHunQb6DLr4qYDYtfnHX48WK6GHb3opfzobN+w/rLo6YsqEBMVtkRmsM5JaNkneZKes17Hn1ShT/
+i6O+eErkvsWyX3TIXi+O359GgPIn+7GMH4dPTZeMvi1Myvn1OEuZwZ0KuguzaImkr0ePcaVXwgd
4+UVB42dMvDzWBQ8G9+tUHSnmZVSEaAq+04TCzuFcNjWYOEAA8Lm4HUERfx2MytrKpZMGL7bSnsj
OGshfNWDK8ceARxcOYJLU6d8pgKrLnEKAoNPYOpgvytj3gbMqqWrh3W8Pr5yc9tNzQFvsbUBwF/P
hBhrKxE4b9QCox5Q3oG8saQDcQSsSTCzjc4IvgCHXdGcyXVjfZuPu3JaxdqjNkLsGyxu9DQCDz/D
Uf3u/jB8mVrt5liRCdQ4ARYoTlXhweMrC6TT6I+A3aCJo9fwtX7GZQjk5V01N7eNF6ZpC1J/qtWn
p1QeVwo+lUIerRn1DtU0JTibh4F/xkEuBAlekMQSc+dfVRkv1EfNl29qMrfhZWNv175b5bqPgfhT
KS9XJUowfiiZF+9ysCU3rXDDxc5T8OaMjgZUuopKkLcLE5xpeSlpsNmA9raxAXekX0WJwazph3NT
/FzxmSynsNlA7yQszvCUdy7z3DmwSaTKGTXRS770Yt2bmoJDgyxqTmL5l98XcBgbAArw7i11tjMZ
Z6fbyMfwkmCeYI9fCrTdiXVetSJmr7ahXPhyHTr5cv/z8e5pzinOB9R6lmW2iHFWJuvBz+O1NV1k
XintYXNcN8OkrP/qPlhScSHRsrij5tPaBp92dtt+2IGddXfeB5MVkpOkhkSGiYsSZwXBmkHOhswl
8wUMhL+RFVJTsCJ+a4qYflANRNTnY8GBmqROwVamGFlVsG8Jmqo0aPC+VOhkllpocPI9c9eqvU8f
LoudT1V5nWnVq5kDW7s33z1/+Xr8ev/cf95kkbEzSJyQCacZtUxmx3A0OGaqceAWA086S4RzpUwQ
F5W7LuN7+bFV6nd9W8XiwTRUwmGYeyrdT3kM5M4lX9MZhhMbPdggwhL0G8DKsswgECZNXCWVZIz/
IRZPtbNqOmoWGvXx5nC7hgic5mo9/XH39fNQpY1wqtb0ksYPqORodASr5GXCDA8Dnw4BCTppo2dY
npbV2084GO2Rj1sKt0bLfNPyp7CsYe9btrH3FxnhMeNbDE38f9M/+RhGM8JQJlE8Z5zRLZkC5Shk
wd7AUbAh6r8EUGS8tuL00OD0POLk/bef1gMSo3bSouuSeJkFhADKCEbIDCVUeWuDf6vJtp+229Sy
7XBmaznRh8N6HuWXAaFxlirKZ52ixxJ7yVBk5GJNii4h+D+n4OY4e3XzesHdudy7jpdvahpNg3B9
uNj28OHvpQqMvSOTwaUthtHKFDdJbBlQaXHuD6ceBTlIczhgTjvYUvoVrLuy9qWOgVVRFxA5NCjf
nY2nKVNAG1kIZyIJ2NzFPJrttHTlIS65J0ZoDjaiWmGirFarKBF0a8ZZwc12GOmX4afvXT6LJoyh
luTWZDzBD6TAdbUYmAc3KSYERnFgugrrA+IzkeuKQ0+PemEnwNWKiVYhoN1jeeumT9z9FL6JKFfH
Zl+cR/RuxGEQzmVPA1Yq4JxGAh6eC9g8SKQqA16JCFdXhOJTXkgx4uWag77xGvZ9v85NDf0R4xRL
kCnOPHUmqC6GEuQTYCWaABsZjqQXOvCk/ItZqeWaK6Iaomy/ATiZEYcWgwZ4CJqiSLNYA04T7YzD
GHUAH5rmxA3XV4bCLoMNNaCGgLqt1WB7SV+CLP/7x5cGrzAd4IiBF6kNYvuZCDvagKyLQXqlDeie
qN7OGTvTcqF34WMrpwYcqgbbm5F0LdXvfvwISlZjwINbUarmrNY2oUIiGktjgwtY4xu6rIwPnjIH
/sdfN9ESLtS8bkfX4Zez7MTipiPo9v89TyJWRW5SHKAI2zFLDLoZkPU44rPTXnOEBc/gUF2ohV0t
WJFz2A4mhC/FXEAHirlW95pESUGidERgYYbAkXmZUvB8c2DSGsnMmw2yb9EreIvezSA5dK3C7uHr
M8Yoxt6jEeTXBfgZCehHnOTSccewxEjoLpnsYhZBcm3eovNoScELA8mnO1Y8NqzNE0LCspFwNgPv
H1Gayqn2r3woALgUDBwmumxwDlTB9SQqla4kJVEviKsc8OpBl2yExS01M7L1wlQrnbKYWnSWxUmK
4Cz4Ck6CkuAkSLBxgAkwFjDQZBGZ51UB9sq8ouqWmnorGtTb28Vp/fX+LlQF7CDL9FzCbtEPZRgj
El5gNlF0OD4Cy5oMddQgD5eO7WrlmrBGttUe+v2pDAFr8Y+/Def2Ks4x4VsKXwOceccQLgiLEZzC
lnCweSQv87W91uuCy9ViS0J2rIFUsQPzexP7RHbGrNOyqUh4ozQHBcsVziDOiXUmcgK2i3ZBRpGN
v7Jf97T+S2AG69zTTtDt+8UvT+JvuBsef/6jigLSeZg6ccLSgIETgY39OUrsmsMuF4c99v8u7eqe
0wSC+Dt/xb50Js60GUFAdCYPVB2HKJJGTNq+MEROy0TAEWwm/313j48cBsi0vQc/OH77dbuLx8me
or+rtvGOXF2YhrmXr6qji3uSkX84JNVauj4sxdGGKsb5V9qwTKbMjOFi0I1JVdMVGX9oD/Vh5/97
RLqSRAvTfGNzOwnCXblwsj5HEQ7AGOWe4OkpRH7A4OkVMHDYCY6nhKpg40+RzD/tGa+Ol/0K07Jj
zPXN/PTZ2yUn7xgGY8jreeVbKXtbfM3YGPriwZRlXppVx+uMPyLf/z/y+EXQCi3A+dFzSWHMmvjR
Qrv2dzylBxton2vRvrTJoRMfXoHuLFFPsoPq6jgGN8n8w81Alq8NG04sDQMWZzf9xVX/Uw/SF3ro
LPCSc+ahWOeYDywyCwoE7Yf5qSc9nsLMfzowJEDMK7I4IZrDC3ZmLC5pdvAoD4l8iETBBbje3e3B
unc35hI/3c/mlrMCqXh3f9zN2mFr6yfvnTiblQtXcRJ/2Sb+gaVbFvRAunlrLQSq3vKDZG6z8DdV
kncxSMl9GxpOpYxF9QWkyRxCvqzT1RS9f4FJedmqHJo2YmRVrTAqYmjuFeP53CGa28CQ9QozzDEb
q5CP74XcJJum12QTMbTbQqNsgj4DkKZFTU1M+TGG/ZnLeKGVipNWW+CTr4VZTrdvDBRRtts13Fou
7CmTkqchv+BCPlkR+ahtmKu8YC15CoAx0muyla08BzBE/SCgpw4AFaV/rQvu3pMWvHY3mHQEnHjb
4guGaDLbXC6dSafusqxSgBdSvWH2Z/8UwLHN5wSToQvYLKLSna6/B0VVWlnVzHyXpzxAVzimOEbx
LvkwDNbflmHGcqm2mCCb3UapY1xzsoD5xryfthpBE4ZGJkzmb58/SCg4WdFFzIPtccuZbkc6AfXN
pXWQHtkT3W+z+TC38cFptl2hQfK8qema3bIpmBwLjKJwjGWb81k3SKvbzfOW1moxm6Jbt5tgVLeB
57mz72632Qyl0kdROGazsibOtFM6Tav5TsSvDK2JI/dr/XpQyaaBVOTCKHfVFpCIGfxbencdl19m
uq1wPZwXmo2MAvMZIsxqaS0h5ImAx7U2qHyUY6Q/UEsDBBQAAgAIAFmNLkqcCs21kEEAAOINAQAv
ABwAaHR0cC90ZXN0cy9hcHBjYWNoZS9vcmlnaW4tZGVsZXRlLWNyYXNoLWxvZy50eHRVVAkAA5rT
elia03pYdXgLAAEE9QEAAAQUAAAA7F1bc6PIkn5efkU9bEzI3Y1cRQEFhLcnEJK6veNbWHZ3b0xM
EAgKm9MSaAC57fOwv32zCl1AF7fpcWxMx8gP1gXI/DIr86vMAsFVnoW8KBzU/AuzaTeYzSa8+5mP
f0tK8eJlacnTstvnD3ySzabwHv1ODJv8oVwF5f2mCPg7/pRN5lNeHH+6PLs9Hxy/OV5Ii/Ngyr9l
+dfjTzwvkiwtjt3jL1feiOcPCeA5fk7/4yw8Xrwvjs+D8HJ0/EK4ymkE/5M44bnzA9YqC7CblppY
f4s68L9LuvrbI8XLIo5unma8ueMXy1RNHXUugjJ54EfgtFy48GpjBH799Vdw6x/KbcFzdNrfVGZg
oij9oOTHN8l0Q4OGCVMxUYmOCHN04hi0axkYqdjCWLkcoV0GgAcRbPqCCO4S0jVRhxgfiEa0I+Wa
z7K83DqKEMVNs/Rpms0LdHtbwziwMPFsjag9V6Mqs3pUHdh2T9UYwYwAvL5hKooikCP3W/CVo1GS
hhz1sqx0kGFjjFHBwyyNCkUZPRUln6JTGIe7PCmfhKdKHpYSCk+D8YRHiuLlQXHPI3Rzn/MgWiHB
CPWTYhaU4T36c87n4Kn1KE+DJFVLeYCiDB5DPhNCm0M2+OL5Pbfvu543GI1QZ3T6YTT48Omotr8Y
59W4/Ta4vvBPLz65Z6dwUL9/LY4KSoQfceOP4pqECzCoodG7vL4aDfyLy5vT4f8oyqdzdM3vRH6g
Cx7kIIxiR1HV90gRR/j+zeDLzVbaLTSBy3nE4Y1a+0J8xuh3sZv12x8oVx+P82+PaHT+X97l579h
xiou7JSEgXTXaMZDyN4QYiLO8qn80lG8a3f08fTiA7oZjG4cdAxiwyC858dZOklSrn67T0o+SYqy
e19OJ4ryYZKNgwm6yQMRefM4hjzr5KAzLzgK7/MszSbZHeicLGPxyFEMs2sxjdqa8Jw3vOClcMaW
6/+jGm4Wx7EV6zyOxhTdeFcQKmkKo8fiIIp1i5pahNFodIY+BiD+XiRC//JiILTY2NYoaacltOK9
WooyyMskvZPqUn6XlYn020IXJayVLm4a9l5dMKgwoiXvohgykbB3iOfAtHipyzZa6DJYGNP93oPx
AvIk3boKQgwTv4o5oaVtmWO9a+oybf1VzJG6dpqjaYy2MieytfFeFTISgDIr0bpuv4rodZCtRJv0
NQYhxjolW4NAGoPANJhwXmEQFrp2DQIzsPEag7BQsfIU62IIILNNRphsbEOmDx4FIybl5An4qZS5
7Q3BT9nXhIP8LA/u4BW+BreJPJeaLLONn8yxZkRkl6a9apRqAoaJdzEjO84LZ2C8WYF5Wc53YZNT
WEAiHmATLfZznNoE4Qna/5gVpeMA3s0Nnc83Q8e55vFVmZ/sPfz9L78cobcIyqBdgrvhbOZQyzxS
SFvUDBO6H/WHPJvPHCdKiqAoshA4mvezcC7mwLMsiHjeWR3a/F6i1ZiBOvMymUCZ5DDTOFK0tvDC
iPLvOfV/d33dEQB0c0M/badfh9DGEdpjI2jecIbUqdl7BuneMQCCvqOyR3shWJjp2NRQtZ/jwOsW
iK3vJA6otjvNrwGABeWz0c4HRmgz2177YChKrqXuMg/SIhFm3mReNp0mJbDIOiak7dEVpOQbGQ9A
7p0q0gUWfKSYbbFYYRDvwRJK/VCNPySiEgwmYoN0BSWgt7avTBfCbHAGaxsQkW6b+wMiTtJEsIz4
DBzUibI59ANyOCxtazwkDN06UqyWKCwS8GfCcho8jaWpg+msfJIusLXNVLRb64wMe79OOYMszD4H
Gr3mRTbPQy61GzBX7TaeAhKYf9oFgRlF1t4ggE46ncvPblzy/CJ4SO5kIl5lkJJP6+BcIrzmMA8U
JUBIi/KXdzXBUMyPSqC8N+/QOMsmtU3uZJJ9W4u+yU7Th2CSRLfXZ3KwqaEphLQyi1s6i2uDWsH1
gslkHIRfwTJ41xEw5DxAUCeep7LrDCYOMSjEMtFaKjQJNF2bCu95+LXuye94sfrsSiSLOAfiaYKH
ZNcZ4KMtmS/m4MMa89VG2pskEEpyZpJzeR9asIhXamHc1ngrZGu8m1u2h71VXBQlVBS+TyD1F8Nx
8pAlEdrjoPfVtLgxesym4B295egZtmHtHz3xpn3sb4R5M2Xf/LAPWqfawlEG9AdNT+kizo22fGHy
fXwxgdfPSXn/sqqm4YGlGLE+s8eUl/KFBh3DLkPNloYaYx4+Y2hne1NzRGQCE5jgxCwt6hWYm0Qn
3iZrx2MSBPWsFdN/pX+hrLPcKABcBQIKUExRw0CBlzqLQ6uJghiCQKx2UCJmwMwvY/H0ynOc+yCN
JvycFwXIPVm8FjWQNY+82zThHVoFddOyN0ffMeh9R2oHispEZbwl+c2Pi5bBowGdfKybJvgWiiuw
vYW7WGxyHfhWYl0IuuYhTx54fh7M1lS72FYZJZrJavET7GqYWcUSzPvbsqoh1YD0NNxqRIk2tkkz
uBbL1IAuWmhogU9k3VqIhGVqNsAi7TynMXtM0YbCbY+tiXKeJhBl/gxavjqoOpdGPA7mk9KPuFhn
aOz2Hr1fZCrqTPk0y58czaTQ/WlaS9yByNW9uC/TlTOlPs2s6TOEvsaM/t/BQzAK82RWrnmqrs8O
gnEQQw0pG955epZlEFYznotV08/Q/VdazJpVuiFGQ2+pJRxj7RktItlkP0KhUlns4Q2rHlqoa0wv
Qskwm6dRtda7tShh67HFOEG+7w2vby/OLi+v/NOR77lnZ6cXH/zL2xv/5tJ3/dHl7bU3wP7V4Hp4
eX3uD28vvJvTywvfFzYzRTPbaY1YTMJKa2VBPxvJObbAsuA2FY21lajTuC4RXmTnAOCslqJMTi1U
F7RaI4ekswFbg5o+nt7AnD/OHvcs/IQYhzY1EMjx5rk4PTV4kHNyNjtNz8VpLZBKDYXitlKZGaMF
bVzwx0qs6GMzYblONYWStiINaFD93iQLv95CAT1ZiT0XGQXN0VlSlBVqUXcMkwnwOShjRKGN7HVn
s33ZK3UxLQij2ER+/2q0UiJiCZtMobStKA0CUP39YlQ/seGnm+AXH4qvwGBgnDjh5yTSGOCrajnt
D+E5Q1eo3hICjiy8BSGfp0KgacFQGO0EmgE1LdQQJxpTSZzMVCgk3CQZP87CbvQEb9Bza482M8dA
tzryYX8/G/8r9KeVLGZD3LF2ooJ4POZISFoI0W3wl/XsGd9N7uZRzEKMlgKA+Tvr817Czu506hAK
ZQC1JTpAFu2BV/cbNyiEcFStCAtfrZZQiSPXREFAIU+B+tBopHzSlNkUZegG14BSxNLun3L/nJfz
XI4BlmuVa2mzat21Ia4uzTKpbTALLXf0v/1ZvZEzk0Xl2mIrcYzqpLKzIYuuLNaeXSwWPl1sVKdB
CrNk/gMOglkefZUr/P6fWdFwzFL6jlGrxxMOuUlMA/nL/f3pXe4n6UP2VRIjMZeueblAIwqjDYEr
BxnaykH0HxcS+j/OYsOpB/3FSE4BN+tzJG1coQNpacBZIqSKO7/Mg9kuL7xEEIWCeylIFjwb5xZe
UKRAO6HX650VeYb3V5kkP41oG6cMXlJGGTzcLqMIhZJMR69cRzXX8r87J+pYi2xgisYoynMFtlyK
bxeIth2tA3GcRU/STCLX1FtKgqZuJWk185iWXBhvGc4GQZuC1sFs/kj6Egzo/IJPvwVJ6RfJXRpM
doVt+DyvWgHRaYRjlAZpVkw4l7Fv28ucDd++7ZLdM3RDCsM2lufNl51ieZ8UC3p2HCnYh16n1m1W
V49AXzfPZaidTLL0Dol/9YZTbjshk3dg2fJvAq1mbV2GGRvp8P1mLOScj9F4GkygJHacj1wsJRRh
APG3qyMWdfPJam+xjpaE5/OSP77/pY71RyyaLNtmw0Ad358Kqf44KLhDbLZ5Xu4lhkVAHxuGgavC
qkMZLU2Uy/XWpkZKNk/EfV9jhA1M1hrd4ikNb6AWP2mAWC4mbSB7c9Q5ei9iRYTJgk+qM0MMdVai
uvcO0YzN83Ivgabj6FWgDdIyf7rKkrTs/BVx1flGe+P83ksMMceRlPumFkj+Ir38WZ49Pp3UUm8O
Yher3aD3ryF+95cc+AbCe720YdP6Ug07as+ke+ndfj16F2f+XpPe2Uatcnt9tl7XqlbCDzXL36tm
2XXpT/PKpbEemFCk/L4xnJ1qPI+Qny/OLokv5GqfXIIANzRZbBP2pibdtjRuCu9ejKp48qsYq5bo
IPJ+pLLZk0TW6yWR/co1kgVJtDxRhIAts8kkSe8OefM3y5vvCTSIZROCNldzWctrbsaY24ZZuy5h
FRGLS9udJE3KJJgk/+b1skITl3xs7AveFqtSBj1qPS+PY2u5pr9VJ6wmPcJ2nUW1Wqsah3Gl6lsZ
3+zXZmxMsfarsUPrefGZKZa8LjvY/7gFEIL/eSYTMQeIDHDnZSZ+0RD+4IqPQaOxCY6YiYL23g8f
RA/9g14IxFUSKy+In0D4C2nMZBtTwgv6NxxorDKysg1KiyipToCWyZRHn0F2dXGubECh/6xdzSdO
vVaHAbtdVZCK9WW4bbvkwKZLersK8q/iNFFWOs4M3q9gQcn/dDqdTSQDVU25uMREHDMKsxmPzoLp
OApOxPUzCBqC9VU2W7tUXcTmLuL3T/JamKc0mCahJ3pxcXFLbQFAM4GaOmuI1SlzrLdun/V4HDFT
XutTKV+Z2RP9sSMGVp4/O5FbzwDK+87qbQvExGgCvnesH2i9rYCTqNEQLqeZ5fuTXemyuCxyDZzn
a3uEoavFFcf5Tx/X1y5kgxeUWf4agt8vG0fRZ0Mc5EJw56g6326J65Wb4uWwapi2Xwj4C/M0+/+a
p/8RrTDRDhR+oPADhR8o/EDhPyuF0wOFHyj8QOEHCj9Q+M9K4fqBwg8UfqDwA4UfKPxnpXDjQOEH
Cj9Q+IHCDxT+s1K4eaDwA4UfKPxA4QcK/1kpnB0o/EDhBwo/UPiBwn9WCrcOFH6g8AOFHyj8QOE/
K4XbjR/YecORiJKyO8uTh6DkP3CZPGbVb6snPKwxeKufuRi6Ecjf4FRgzqtbcUgC19pfG793WOjr
DYv+yr/YwihcPG7iG/CWeKLH4rkTSN6IEHVMXR0n5ZGjIJQHj87W0x8wDFw+3rch3Lchqm8ghDIe
hxgLJVGy55BitUHYZrCIhDyS2mfbGwJ5xI4NtlCCcmuHEpHwud3ERalpWUIWwbsAiw2kLkrTLBLj
OBKWEG2PJYRuKDFNcbtK2KDvU2JsHaEH0l3JrL5ldTNxlMeTDe0Ea2JDmO+ARYUs5WzxkAjv6rZ6
hgfRlEGeZ7l8MMjisR6rQ3XlRvww72I+HS+fPkN0RVF6SRrkT+h0Ku+QqCwf4fG4enoHUlHzSxic
+Pk7GHXkE2lUtHokDTqxXKs/ZJqherpLVDq0DdUd9j1Vx7o9hO8sz8Tv/36P/2hYzsMd7uChcMfb
9c0FR/fJdJHiHQyW666hDwaWrVqW5arUZkPV0i1d7dn9nsX0vuHa3h7LtyQ28cRsC4+lMSuOd91+
d8eYaB4lel+jqkndoUqpZqk9zRiovZ41BLLtuz3NbDsm1bY6TisgZBvnODbjeLyN84zfBeHTLrTi
uSSax7BKPIuqVOtbqmW7ptozKDO8IWMUk/1oK7nPYa72aCDnpr6F3B6bxoaHN4qNHdg9jC1sM0PV
LArYB31ddTWMVd3T8cBwhwMN74yBpuTd6Jv71PEHxNqO2LFJdkTIPuC2SyximhCyfb2vUnOgQRj3
bJX2XOq5pmnaQ7bH6fsRLzbWoBJqVWxbhwpfUn0n19zworyepynPu6fpv6Cg4FFvLm6LijqkK4QQ
kXcGJdZQ81TT1TXIO4Ih5TxLHUDqUG2g0T4b7I+XtYqmhu5YvmzyyfMHNS0N6LalthgUht5Cji+8
I2SN5jPxAKwGm5iD4YBSXe3jga5SnZkqMKurDox+37MMQ2O4t8uqZwTX0TEcjbfQMRJFAl39BkTn
/fObs16epf/m/Vzc7VW4Xte6UC6D+7t6VxOkb9mUDUxXtUgPqxQzW7V7faYSbQApMPRst+cC2OpB
W8dnyTiHqeh48AieXcTKlpo9/t/eUanQi1LCNIEs11atvhwbgQ5WifvloQ41cVerQINT6dBTPQ8D
KxLPU13P01VmuBY2vIGOSR9Az4tcOPVYHF3TZelUp5u64EtBGg0Pju6DXDzQpKMLr9GuCUcs3wKK
fr8PtQmB6B14PWC7ISTeYEBU0+4NbehDejBlbrvuqirPh8usK44XanYn4mJjA74OdccWfPjbgH/O
Syg9OoYpgYsXAE2xQSxGCLAFkBvQsq26LoGZD+M+9SxrYNp0G3QNrZS6G6vc1ERq4m2kBrElUhia
h/OkWN6pCYDSrgEQe0OTaEPWV4cu7Yk6BKitN2CAmPS8nkYGnmc8C9ENQ+hhoAXeQ261XR94CAJ2
79bEpzRNCHbZFUkqFN3ELEmj+XS2NI3YrEvkBMmYwayhioeyxNKhxiDmAMahP+xrnqF5nlUL3C1J
DRBMM7dBMEHHi1tgFpNydROrDtG7OiBgmtcnnqurZNgTswXTVLfvDYChINOZDh2R7TYR1MU09Fua
sa3f1sON+eAsmKfh/bIKRB2mWZBBcFj1RiTSEIoE26MqNl3AhE3ApGNXNfCgTzQP5jfPfXbABWcu
FXx3yP+PuGtbbuQ4su/8kolwFFz3y2Nd5VmPVyONrdg3BwACI4Y45CzJkS1/vU82iEbfADLWDG2E
gqTQPVWZ1ZWZ52RmocfyLN8+vudqrOD1XOvtWky0HvDkd3YVyONKE+gBiBiKipzxJOC7qoLrtU0x
ocEtrYkIHvKisqeRl2TPg+tXYxEXnMZebSdA43G3/da9SfGd68K0cUq5FTleyF5lNUbBFKWHt1Uy
ANqphB9JJGANp4K+7Dw+PY9+xtc9Xx3KjS02l9twM0Ud9MWyu59iPxfcyYqvlCQVuj/IsQjnhAJ6
zgIBrxM/hBxYLpFXX2VEcH6Nw36ea1mJ54sjHej772c6APwdLfV/v60f1vSGj93RWj0BCd5gj6Fh
q2SQERVBzZKKlVXtkjLelsCH3uKQwvjjwngTYTZLwuyPvqt7MeJRDkcOORjtY6yBSbgIpgzkCJV8
howua9B5rd2iHIOhxiIEtSBCmHqO9993nvwvXWqP3uc4xI4mAHsGnVmNDYvjsmNRKcOsLCGaUrMI
9jUPczbJ8mOd3TZR6HpJod3EuL4ilA9I2eoj/T+U4p1W0nYBunrTHM+suELoEYAiESvNohmOYBiw
Wy87w/XDZtk3jNzgx7Esw7u6SxP99gv6reVxA3eZwU95uHOECF00l8oHqBKhRSV/l8CrIrhsS7VU
LjKe1GV9vv+6u/vuwxk/3d1+AxS9JMRYhbVdUIEo7hjz/fZlc99/4zUBZvIgnmsKnnguqTlrSHgQ
rCYq8yZDtSSbr/CMPstXIb7hJGd84fCWkSJSLTwLfHi03y+Ewv5OBa7Hp/UJgkB7+EF9QP2l1iiE
dMzBVPBQGkXchB8VUSonfJhe5Qm/+/i3fP/l6w3Q1kCNc0KM1dB8QQ3Nj1vqtgvBvR+yZmX4yhP4
h00Uyw0zQsBArBbYUGC+NTclEr1d2PBFbzQccSSKtdu5KNatJ+7oHhvxMwC1AAM4uKHuD4hkZQgu
AUqnXMBjo4PNFmFZqQ4rGRvcpPw/7/HDtZHAbskc3WZzXLvdkZ71y0cL10owslA6JtXMVEbgDt3r
l0URoDEmG13H0G8yzkiGEBbCyGZtj9uw3T/e/v36ULbrfYJdSbIj0yixJoHwiwbCh1iwIyVYrgj2
LVDyJYwlmY92NZ7XzYXZXuuJ/z1w63/C5SKIdY8QcG4lyCJiSdUrYxhIr2FK4elFC5BTsL+KFSCV
Wb+IQWns5Yd4vHo1FnAOoM1uJ49LeLP9tqUMTewZkhEr/EdLCK8aktCWKa/B44oGjMz40aoKopgC
M3bjJZyMNpQE5HvOZ+wRE5zW7+bul5N6XdwiYCsFCSTgGGGBEKg5+EabPKxBOYZdxWNTOinl3yJu
vR/KMIrQd7+MdOpSmjOdKImzGVZ8ru8eH697JykNYV3SB44ESxw8cCIlRoTNLMFEmFEwNWB1IMmy
6Gbm407ECgti6amz+Y5eKK4PuKDzMUkHrhTYgkqqUo46grg54B3AL1tDDELzi+uLEZcXDhfGEm6W
JNy7o3f57kNXieiNWnbUFhyggdoouGUOahs4DAiAG6zdqwbazmHYbxPnR/OPJNdqQXJtzHRtd3e7
w1cVr28/Pb+l9t3BH0gVOm189tjW2jMtA6FL7OuQgV+0dTkoh6ifwqsC5HyqMw9hfuNYNTOHL9aY
HoG1+7unj+uHRwTi43Mxvsv4SOtiiFUzLRR2M8I+nolTiFCt5GCN9a1dTqec3tnxapId/3pmsx3f
Pvf4xwWhRxoHr+caB7/tecr919/2QB6nfejIjxONdimzpgBqlMaPlCyeY7amFU7f0SaXucpouIkk
c3RvN2YKHbtd+f77oYdUK3VACtryTjhli6EUoa4KQSYKFjRXrGQLVu15kP5yZms2xcgBHi6ORN/s
Fpzglpvjtvl49/mUIOpklPAkThfOtDZwNrEE5gUwFiCXhJsR2Dr/gYyjx99PPhTZieu5ETvJ1VHk
7R/+sN7cHKVW3HWINkhZW4KZ8hrgHoVJzEvHWfUiZq20k5mP4+FwnJEA0s43ntv5WX798AX/x+yO
5nqlaQci1gnRbGWleLBlWkqfsQOzDUlKbqruktMX7e1M7S4/X7saS7ZbEDfwo53kn/7y6ePtt883
d5NaxbPjBlxWUYbICuUWVACH9pUXZkM2Dt5BJ8vfiKAtSzLWJoglbdYdkjtF17v7p5v9bydXh5jN
O22K9qlUpRlvDtposLPIWwMMcR7QKHiX86WwPRx4JNhezJfZa7OdJd2vb9bHF1Md0xVOiZUwK8lp
f1jYlGrJsYTfTHHANx8DrEwrBPgmdW72hQz8aYpzifjTHVdjea8XlPCbiRLDfOr7u6fdA71k4Z3U
fkX5tO43KVJBGxrHxnFNUIz0QCQViK8Fr1LRNfv0mhi5NNt5FD29c6yfnzM5UJXdfnewhV/Lp4/T
coNxXFrDYa+NIz4W4ykn31io0E16XE3q9yo39OJdjRXYL2i1nparHr/uduC3D7vt/ee7m3FqgdKh
2INdNlR0hhKqicHj6TUAJKrVG+KFMJkETy98ztrUt8DrnzqpflwSapTvmN42XoHt3CWDtYSjVyAg
8ePu883j08PAKZhum0bHC/gkJS6bIn8cAeVEgN4pUM2/Biv+H/HPWOyR1lbZBa1VX+BZ7Fl7B5S3
EgcOo0oRtenMwPDBs2NqCEW5S9qLXGsNxoRLznA08ki0vZtTV79f7ydbsuw23z4fUlmPJBm5D9Hl
4qWKWmYDGBoALhTCPgyuSuA07yKVDc3rMlDDGZZXfHjHWIcNX9BhK3qA+eVrn38iIJ2iTk1i+VzT
sBMFhhtKccyKkENNXtXcJhCjH2E4ceDbeYwLQkzZ9kH3fH+3v/n8/GoViihCd+X7jnR77IfKNVbR
AmFgSSkFFQ1rPrTEa0625ssFmfkc5/KRsxtHOkk1z8AEae2EbfdtV0pwcr7cV9FlHi2RLVVaZdH4
rpzvlDKpuqov7dAvC8ur9TxSgzfohSB3tkpnYDEAcogCjXJllCD1yksmC2i/Mw2R9OWS5OVKXZzc
czUWd25fIdgpk6WKO/71usvFHAp2wcmVOiTZNHeZchdSU/VIGCryA2zIUhLXkuPjt6uqHiU53xlA
V6/G6tglHcPkOf28u/1K+x5cihJ2XY3ElKiB9BhPGSTPRGpncNSpGLjJpelm9VvErj9h6uWb6MpY
Gb+kzNpPS1rbUxDBlvNdSKZfBMRLrSVVy5qhvodEWsmimVSwabhy7OxX5RyGc5xhioM7hlqsuZkX
Ktfc7o4R58PN3W79EG8/7zD5qdJjZRdpW6tG19JY48BPKnMqbesInx5dSpTrleV3QlILgo4VXQAU
a2HEEShO3iL2jto2KTNIzwmYUKkiJaNaOOXRM3afzKyWXJO2VdvYLvmshQQ2ppZL8qhjLCo36893
94/0Aq7nN6Xn2xvqhO3l6zrPpFbJJmwZQfUpAxIMEge8Y6LEQ0LI6mqigwh1edyRiFLOeflaKj/p
Ef2wvvscgct/e7yhkP/slbrflCXGSgkhFYvURqC8Qdh32CKIA6ZoAxLtzJuDsaFI5/o9TneMlVaL
Sm+PYe3T9mG3u/txR2+/OT4LLe1Kkz2ARWQXimDaOGopDZwFbcBFU5TA28KbVsaPYz7cRJrrBWk2
4kwPx34U3bpuDiNk17oWo26lcEAZ6izgMTI4HkQ7m1JoAGONu1c1crwU4ub3jRW6niOhtbHuVMvc
rgeexgbbUbbabOZgmMy06inJl0Ch4XdsiEblmoOLk/rRaKCr8Wx+SYSp4x4Gw6UepkrYhap/NVfq
LdESG1sWmB5sTttkXPL/YbQd3jFRYWGTms1u2iJTITingIOfXclLB+kgaPO0CbxNLGrDWYtZeoF9
0OIbAoRYz/TL1LEumznXXVurJrqk22+7p/v7p5+pSKIPnZn0e9+1FXMnKxwMa4A6eBYZTiaB8QWl
QnYclN5cZnzvv+/HP9cN0t8wkt5u540tayfsIHc56MiTh3jiW1aAldSDSUxcB/CKmA0gsQV+A9ko
Qs9Sl0sdeWunzcL0gS8g3y5F9P572hGHFLV2oWurcSXIDBhenSAHTYC8wsg4AFdwMEAX2oub4nnw
89v4+Yax8AuZv7XbzAzx52933VHPw9RUVHYUYGyX/S+uSW8yA3+sVIREAPRRMeOl1UIZRMD6qpTU
eJIzioxvGiuzUEPDh1OT/GvOw56mZmoFRlLwGrT4dBohuFSZlDmBKIkEXV4jPoZdFhkXJmIuWJu7
tpMMw/rxtudtUlEjRmdmopFQjYmESKKaKCxFFamf2DhXC1b+YnahH3Us0rVbEGkvjqme2399Wa/M
CfcQcM5cmSASPJfBshEBjtkLxouzXKmYeZ40NgwHGc3uNwu4MKz74sM/v9wC6x5nl2EluqRzisVm
W1hphvhW5SxaKQDkjS2tCBmdmDTVDsa5Gs+18ETCfkpeqZL/eHS91CO+u243t7sPN49PlKjtupbw
i4KlKBJm4RJz1HispAH4kgGOpvCoZPRCivx2bn4sy/me9tM9Y/X36yX1N31j9WHrbOgc+GMPCzo1
QWdLKIY1CzSjDEw/Ke7AQAAys9QwIHNpNw6HnIg0zymv10JNbISeyNNtL5NXVJEgwXLgJVblwU49
yKoXmUVAPyajjT5Z56z0F+nCcOCRZLsFzokPdxegy6od3jZN0FzClAXvGGj/NzUoN5NcBERPGRat
WgwshuRZMQBaoorgwht2Yx/lOXPj89WR2t2Zuqna+PD4QH7Z/fblc4/G5aFnzIkMcgrASIgggx0l
ADZWg8/OimRbXe4ZG441EcItCbE9uqlvd/+4uetzssqsCCQ2C4KIfcgQ0ilvEeAsE6SiloKWEghC
1z89F2M42liMsMAb93AiYx779Xb9tL9/6LNvTtPu7PKwIQbESmBn58h3KsU8NbzYrKL3WSc484sp
4tHIE9k2C7Kte1vePH5Z8X6FusMJVQDBaBiIp7yVcZolLBkzxbSYspNBTvjrYIzx3OsFo93v7MQ0
fihUoxeUllZcdi3Xlc6kcSZ95yKFhrGCqTYvC/XJcVvfvljwQ1m+5Ycy1GkD1DrTacND35ez/vZ0
38dFTzQvhFCt4I0hVGe4fiChWHJkpmauQ7KmtDRez9MY46nDnCRthO8b2P/ro5y0EbhWrFSIybXQ
WURHR2pd4/hfkW0t2TYp3qiNoJ98JLJc6LPaSDUlEn/ePWx2D/ePtA+OMEwk7bROcA+GKuK+SmAa
Y1kFa1fS8SbrZS53HHRZ+OPVkbhqoYq/UdTSqV6oCaxq/Oi5FP/TnfHhz/0mXbaliKoqBySR2ROz
EDDu6uHKo4YtlaBby6/Bk8cZlvU5Xh3pYxa6lDd2cz1Z/r+9H6bgD0hYK9sFohhTMtI6UBE6dkDN
bgk2wKq1JpXoS236NdIP51jWYHjH1Vjg3ZIW+2P652H35f7X3bALSXckysjaVKhM6ALJLagonGxg
2lgDct18GHXanpzqdLyxMNu5P90ges3C/e39w6ff7rZEjcNhRen3M9N0VcK7G+rRzEmyULqakQq4
5Evz7s29Wy/POTr4fHmk6/567r+38nqq65/e960W8rm+7Z8bgqgxXGWNbW/p5LxGiAuZV9aETwqe
vOJZvEmN4P3FVoz+8tVYE7mknpuVd0CTKSn++HizubntjmUdbMSFrnMH3j1BRQFaDj05dfF7OHqg
NCVTCD7JlztJRuNf6CcZ3TfRxi9pM2Xup+x+V8akfzD4iD4h0/GKTmnReZesoBOdNWp09CjnZJOs
rr4UgF+oIZyuj3TYbOZYenvtpx3kP3xbPzz963AUHxLThtOEm7tqe64R5mjpuxro+L2FYQHiM+1s
araoZpb6YYY4oB/8DB7or49E38k5Z7qWsm+U/BA/xvznWbVGA/N7+poDC7jPVACHT416JrmOPEvv
pPi9+l6GEl6NtFDzfNq1up62Gax/Haa6D528gmsLt9c192uRSuGqMXoXMJ4MnSimyr0DntPepFhf
eDLxp5dCyPCOoQo7s1BBwId9BYEOp/cg+HjAvQmukmyJFUVfpOFzYiHIyKqwqeTEeeTLROE02kSI
6wUhzGbCYUdfEvVOUaMX1byw0bsdIzJiRINUNbkEl8oLi1lJJp3xHDwhZh4vcYXh8CPxrJyTqZ19
7rgc9Obtnrpjc8cGLt+nohIdbElOsSAL/F+JjuEhgz34EIq1WpssLnb9DUcei3atF0TbTXFMbtQF
WW4edtun+y4ryQ/eQYTucIRowdBZa2MqpcpCYUE4ASDus7Gx1qD9iz2W/egvh9z2ivsnN4213s1x
z84JecL79bsJ4PcyNmdhVElVC3cSIwvaVZaVjtLzBtzf3gzwH2e/GsunloTui0lf118Gqbsucdhy
ESEVUJOEbdNkoqPMmeksVQVPN01MDsMPxpjM7ZfmDn2dsFN7lU65f2mPCRcupEHYLswK+gKXCJZE
DVpg5LZp6YrMZcJ6x6ONBAnrBUE2tj/1kj7ET7NQkKCw8NJiPya4G8pkJmcKy4AT3laJMGZ/p1Bw
km+k1sYvPNuNN5O84Cgt2n/3wsF5JQTgCBoMzkNHHuFSfQqRivheWduS5OWlNNx46KGAe72ee9i9
m305Tm7/fXA1dKSRr2zX0/L8V3fsJAWg8soKh5sFTKX0AziojKZVLn0s9nKg6sc/Z/PPlweyB77h
M66GD0WfWDjvd2urJTjIawyVrnjmDEuMwOoCWDJPOuhJhfucpw18Oz9DjQ+vp12uP4IiPe1+utn9
41SOPUb8LhRI7//N27U0OW4j6Xv9ij3uhb14P454EO2OsHccLrdnbhsSxXJru7uqtx5e279+MkGK
IkhQpd2p8MUuizSQKQH5zi+pAKfGYBaLg9hpPPryVEolCLdM8qtyKOt9tiTT8r2Sq0O/5upApiDY
4fj0bfd8bnSVhOZSdjyyQQuw4SVWGDoMRmnQt7J14L3FEEzgMdl6L0u56E25dVehh8lKr+tTRqzK
ADhYvpG1mRrao7hqwaQFLctBusM5tRrL41ID6kx7puGGef8WzhVqqNsTGdvtsdMrc1ap7FeqGz68
W2ZDLypuTp3SLspGhlxpRkCroZIzjMYkfBBVlIH/m+LeUsOWKsrWHCg12UU/f0hpoYa5BofeRgee
oAM1DOekMUmRJnEtEtiQAcz7N1LD591LotX6xFMQcSeij93D/W9nRTw01hPpiMNKJYauExazGpAf
TWI6+OiY8q1ddrPOVrkpt6KV/c3yZz+jMGTEDoxgUVSJgyihjL7jQ6+8JULrBELYGy6xP4Y2BqVz
iikR5uEg2Hg1akje5gJwSH5esrNfi0W658vA4C/HQ/9wue8k6MAUxfIjJdHMoPBtt7qhygUXuabV
cNqMgfkWdRbmb9yU9HY1JrrTmXi578451Qyt5SnYxLoJWsuh1NoLBSYRb8FEUdYk0m4kSrrKkdjz
2neo1MJ6OCL6x+lYao1KLh9O5yyYa2CfiYhQTeDXOxVNo4LDknCdkrhoOZyXLYlSek3UnV1K4t+O
uQE/7bp+CDtgTyEKqPxv1MFSgGUAakEwLBog2jSOgfkYJGvhIxGlvarm4bTDhlAen96U1K6CJnA9
7rpK2/37x923T8culwRmKAosVQa7J59MakCwgqNLuDPwa8fcEQX2TwwS7Hcd0ysdOPMNtotOTm/M
WeBM2zULCDk7Ho336R9DunrRNQduMPcezgPB1louNRk8TuoDsTwZrfUbwZosKCipN7s19ZLuljbT
7n8DbPO4G6H5sByQYrW7GaQvBZXBwA0CSWYQQbKF7x8rM411jJGWGlFRcvM0738sd1iC/03PC/Jl
v76XfLfbwwkqrkDWSf/27yafGjOEsmXygoLlCR4LeNSC88Zpizl/q0kKIKoNeTOXZeg3r742PCu4
Ooi13cEPcoJ1+H33eC4CG9OOHGR0UqphiOHAI7qk0dAGWBHBSEt4WJSAzRYpN5e8tvl+IVXADUi3
p6rQIVlkBHgZXAANAiOviTFEecIkmFGOktbRV4DJ8pr1byk/Kujs79ZWgiD0XOjxP1+Ozz2ftAJV
WRZHsHpBnunGUgdEauzQkDo0SlnwQ2yIhi0ymsVCN8VunFVIEJN1FX5Kty/w/xYpahCv4C2j9HcY
aSdKN55515DAHPHOGxd4SUC5TEnBuqnfCnbXVer14tDlwfBtJWj2FrFrVwoLahHscvgyGPY8G8Qu
blsSsN7+CsySuNm0cXp6U1K3vrKCk3US6uvXh/sfd/d9bvwCQ01lgZ/BlludE6tSYrABTCtEHAXz
inEqwNZ2rLVv4TvMSdhi8PzGTclP5WRwsSysqcJ5jbkBmltlhR4CLMCucU55RLixWNgXG08iNinb
EHyiCZTcmyfeJnIuoHwtVbrgssb6uRHhy+7+1+NMGWYLOQSRSKTgJIHWGBIfAb3BloMaSZEYxhb1
d7NVyu07W9m+n5rZv4JafJrqwfFCtnABrEcQBQzkgVmLpiJXDbhmMljT8kQWMbz5GuXmvaptripQ
g4vfAkgx+HObXIMapY7cNVQwBDxLsvEJBEbrUDpRJYwRb/NbV15c8LO2MIW4W2JjH/qnz88P354m
XjAVlwNTwx/oVTpliYIDGwiY4hx/ay+NbYhQCixyweA3v65bM291ohZf2GraXL14U3Khaqz1C4t+
jDat8LC4kRhl4SiPlCJWxqAbJbnFimfQexJMICERYj2pSKi4InewjZVlYaX9mlp5xxYH6yxJ8Fr+
/ZiOM4eUgEQhuaaHS8vAefMcu+6Ty9HrCMfL8MAV2J+1OHu96x632Jb9+LRgQ6/7VvFDsYJtvH15
vAN/IbdNgejPR2n4C2Uha7G7UoG/gk1K4Oo1DtGVBEgJ2Sam2Ctaa1p/qzZ/fFzQjkMkVrRn8PKh
Xi+8z4AC+P89nXtU9Tv0RoUG+xKBGCVDPUu0bhwB5zQS2RIG+kxx+lfYmiWYxorgkl9Rsa/2e8Sl
zvw+7P+7OwOLqYw3GqWMYDZrxAZusVxMgplFZCNE1C61ygS2wBSbr3JT7rR2TETH5GYQJh+4791/
Vk489xyx6XijU8C+aw4WDgm0EZwlJ2iMIbavmjm49oWjDk9vSlJVjX6zhFwY25s+wU21Y4cVIShV
aKt9K8Eisxr7gbCiwbUBlELbMheZUNG8CYznqcHquw+XG7C++1DyZyvXoev7BX8YBu4Q+mNs42Nj
Gx84K94g2JsjBKxg0G9YQ2TAYRBtgLNniW5f9X7DBcDD8H1J7roGO394EvdFEPjj8/HLGXFwCFi7
SKILBkxNIG64wtZacB7gR1GUgvPrFn7DxpILsirG8EFM7bLdy7enWaSTD4AUlkojnCANy/k+3prG
KcrBNmSMGfD19BIEfL5OQcDBmAoBZ+yfH3IWYHI2M0IW9kN4+Pka3aI0i3DVHdUSbhe3QqUgpFz4
msUq8/2lqGgE+HCK64VPx/v+qf/54XN/f/xzhk2GVwTcdRMU1p4QBZosaDg/LMRGKEk0tSBv4oKQ
+nIFRbISMpfgwS4O9nf98esBQW3mEHsycrABwO02HruHmMSBMODg4fAbsOgIqNmrImnj4lud4/lh
SbTRNaLtEhCi73Bs0N8f4T9xmsNIu6KnYm6aDFINispiIA0shAaswNREkDZMC8W1uQ6ftthoU7DM
3inYUWuoJCvtncpF6aVb6z4GdO5PdavjXxiTQhFvQWCqgM1FRIJVFhhrCDPGMXD5B6T8q8wc2GRb
9MPDgvhdRXPJXLSuRw+k+zRFiY2WQz4Ms+cCPFm0GbGWyqAnLkGRKoajhQTdiFfPViup6EiFim6K
IYX3/8AxiGcNfoqlJsmCxzYYz5UCd8jyxtNW4XgPabjS0lP7L8ZSiyTQgpCCib1aKxm5P/SrY717
7D5lLDWcSkLG6ST5FFA8ycYMQF5cwZcLUhyDftRzE+xVkeHre5dOhGyd+PFxwWTH19E+2cGB6fcj
TOFj3z3+8e1cm8+5PNctBSJTBHtSIoorIu6BMQ/2DZwYI4zjgW4gqy9WLUg6rDv1rcxDsMqquZfD
8eHd85jQcfhfswQSHR3A7P5p0lrpAzhGYKhzq1hjVAgNcRTRyhzh5vKhmi++4cvO3pgzo3DgzZIZ
RdnSdwo4dO+nHlHl+scRXu6czNUUPXMCIpV5CQId1QwPecIX/IMIqpOCC0PjdYBllb02BEzlzZI7
satwJ5blZT/s7n99fPitGJ7EogGaHaalMF7rPXAT4M7TkCIJlrRGXFUef1p7o/R3fLqguq9Qfbe8
2Ptd9/nlW4EYDPajGOEgcuaBE9EiQoK1FK1k2zbgodjGJyMDl14YcpWU94ud5hwMzwr6GVubLfjh
8kxlExyRxDLNUucSeoXo4wxUrEBMB2Yx74DNcpzTlgVqePx/2/XDswWprEIqnxTB7TfET61WdakE
poAj6C2hCjVgbBr4vhtPwJ8SbaTe/1VwLEsqSxbXXev5w1VIuXvY5cwV3uhhDhTY8UY730TGMRYi
QT1Y6+EfnAr4ljB9+Ip6gDW3bAN4VNBpKj6TMntz14/W/sPXb49YIn+OM+XmQzDKkmA0NpQi2L4A
AeSwPJL61oOlSxwnC99jtVJJx35fo+OwakidNwlNc0VYLi/KUj22XsdkG/D+EeMYJ03g3D5ClTKG
pUTSZRyb9QYFnft+7ZyoTtOFGvqxf8QGwt19189xY05ijugYTORw4XIfB2JmwhVD6LUgKPfOBHZV
vKuyzUZcfP3iTckBq7G17HY4T76c6tPQxWgZ6K6ompQc1hOBWesTVY1NkYM/7QW5TgWdV39t7uaC
9q5CuzWnKBgcuocvv72z56ER6DuDPwaGimmoxe52UPeg/UFmE8/AVQPT16dFhL1cpqRgRyoU7Pbr
GPvt7v6QbZGVmyOZVorhsEBsDuVY9+3AIMSAIoGbFVnbmisrcsZNNuPr4/OChb5be/0qT1IqWEC8
s0P/nMu6nrqcFRqCKEOhVmsUVYmA6iMuIPoKGuomABOqVTFSF65zNjFDF0/bbGd7Vq/dlNTXWFp1
kg8WY/aa8C/8aUbwEPw3MgV+skjcN0QxjxYWCmRgKiAWoIiERPE6Ck5e+4LDho9L6k1FMN/tl8Gs
eBzGkT/+cTtLdWREWzmmOQjD0VIMEZqwJQaBYyhiI0mck9JSDUr/7dyNNT0bP93qvZL7fY37Q2VA
FtZk7I731dBBwkIPDXYNDTgX0Efwt9HCCbrVYIp5AQ7JlXdq2mbzVk1vzBmBzdf6Aj5cYj88jVf2
FFXD4umxl90p4+FXa7w26PsSCd6UQ83R5ikJNvmLSAvFygvS+gppOCFmX7YjFieLDfFgNMW8BtlO
4SIkBFUXQTQGq4Va8P0Q248G+/b53zM1W62JtfOkSeU8adJPHQQ/ffhxHXZQwbYq4CRXlhByqVWN
a72Br144LinxVLu3DDvMiCiI52sAaPjQ0pNt9GmIvjW7p/spKipkxurI7YfW0NgKglAyoJW5Srrx
rQV3NxiH5psKcVGIul6xIKgyKRI/XJZ4/P6tezf+GuBx7X7tv+Yh3WczKGLZsVOxaSPqPExQehlt
03LuuAc9Qr18BbFtsfpWkGPx2oKbQ4UbNvWR7f/MI5HOadYMl9iCSJWmCQQL8g32NMB1aKjGoE4I
notFmLdYpdhfVRKpWtkp3vznOdatMHs0BFl4C84xS40wOHWBGQ3mFsFBk6YlIgqiXSgJ+LMW7Naq
YrposJ4mbKBvXWVclRSRwp5tA4oF+xFAnRjbMhy9qhlL4PyaupU9LVcS0VXOk16lksc2j2lO7/wo
hRStMUpg7hULmikcJYJJKjD6rXAo7ulrhV7F4ps1X8VbBRu7ig+jdx1ZsBGPT5/d4/74/Dj1duoh
DZVDndISBt+nxGlNnEkJrjgYVCm2UXopOXmlw3ux+pb2LV4quNjXNNZe1uq3cmk0/gom9xYMBVxg
WzDhwHINHhH4kvJg0sYWHEVhBVwaJezr0Ex55W1zKT8uqZaVS9xxVYENyo3f9XJyTYKLAltAkvFY
FQ1erWAER4q1FMy/wDi5DijuFZi4gvauq9G+apyHs+deEBxwKHBUAxqGsszTNjUIZASnHcV6C2KB
ee80yHfQxVcFzMbFN089PiyI7tftrfjhZNi8/7Ds4ohtMjQgZotMaI2B3LJR8iYxZb2GM69eieJf
38Uxbb4guauR3FUdgpf74/PTEED+eD+E8cvosfGSwbedWL6nDk85M6BTQXdpFjWR7PXoMa58IXSM
jxccVE5Kz89jUfBu/LBA0R1nVkpFgKrkG00snBTC4ViDhQMMCJuC1xEU8dvNrCypmDNh+G4t7Y3g
rIbwVQ6uHHoEcHDlAC5NnfKJCqy6xCkIDP4CUwf7XRnzNmBWrb16WMfr4ytXr92UHPAaWysA/OVM
iKG2EoHzBi0w6AHlHcgbSxoQR8CaBDPb6ITgC3DZFU2JXDfWt7rdldMqlh61EWJfYXGlpxF4+AWu
6g8Ph/7L2Go3xYpMoMYJsEBxqgoPHn+yQBqN/gjYDZo4eg1fyz22IZDnb5Xc3FV+ME1rkPpjrT49
pfK4UvBXLuTRmlHvUE1TgrN5GPhnHORCkOAFSSwxd/5VlXGhPmp6fFOSuQ4vG3u39N0K130IxJ9K
ebnKUYLhj5x58S4Fm3PTCg9cbDwFb87oaEClq6gEebswwZmWS0mD1QG0d5UDuCPdIkoMZk3Xn5vi
p4rP1nIKhw30TovFGZ7yxiWeGgc2iVQpoSa65EvP1r0pKThUyKLmJJY//z6Dw1gBUIB3b6mzjUk4
O91GPoSXBPMEe/zaQOudWOdVC2L2ah3KhQ+XoZMvD78e75+mnOJ0Qa1nSSaLGGd5sh58PV5b00Tm
ldIeDsd1M0zy+q+egzkVG4mW2Rsln9ZW+LST2/bTDuys+/M5GK2Q1EpqSGSYuMhxVhCsCeRsSFwy
n8FA+BtZISUFC+LXpojpelVBRH05ZhyoUepkbGWKkVUF55agqUqDBu9LhUYmqYUGJ98zd63a+/hh
W+x8LMrrTK1ezRzY0r354eXL8/H54aX7tMoiY2eQOCETjjNqmUyO4WhwzFTjwC0GnnSSCOdKmSAu
Knddxnd72yL1u3ytYPFgKirh0E89le6XNARyp5Kv8Q7DjY0ebBBhCfoNYGVZZhAIk7ZctaqVMf6L
WDzFySrpKFmo1Mebw90SInCcq/X0x/3zp75IG+FUrfFHGv5AJUejI1glL1vM8DDw6RCQoJE2eobl
aUm9/YSDwR65XVO4Nlqml+ZfhWUVe9+ylb0/ywgPGd9saOL/N/4nH8JoRhjKJIrnhDO6JVOgHIXM
2Bs4CjZE/ZcAigzPFpweKpyeR5y8//7jckBi1E5adF1anmcBIYAyghEyQwlV3trg32qy7cf1MbVs
PZzZWk704bCcR/mlR2icuYrySbfRY4m9ZCgyUrYmRdMi+D+n4OY4e3Xzesbd2e5dx8c3JY2mQrg+
bLY9fPhbrgJj78hocGmLYbQ8xU0SmwdUWpz7w6lHQQ7SHC6Y0w6OlH4F6y6vvdUxsCjqAiL7CuW7
s/E0ZgpoJQvhTCQBm7uYR7Od5q48xCX3xAjNwUZUC0yUxWoFJYKuzTgruFkPI/3S//KjS2fRhDHU
nNwajSf4ghS4rhYD8+AmxRaBURyYrsL6gPhM5Lri0NNWF04CPC2YqBUC2j2Wt676xN0v4buIcnVo
9sV5RO8GHAbhXPI0YKUCzmkk4OG5gM2DRKo84JWIcHVFKO5yIcWIj0sOusrPsO+6ZW6q744Yp5iD
THHmqTNBNTHkIJ8AK9EEOMhwJb3QgbfKX8xKzddcEFURZfsVwMmEODQbNMBD0BRFmsUacNrSxjiM
UQfwoWlqueH6ylDYNthQBWoIqFtbDbaT9BJk+d9uLw1eYTrAFQMvUhvE9jMRTrQBWReD9Eob0D1R
vZ0zdqZlo3fhtpZTAw5Vhe3VSLqa6nc/34KS1Rjw4FbkqjmrtW1RIRGNpbHBBazxDU1SxgdPmQP/
46+baAkPSl7Xo+vww0l2YnHTEXT7f50nEassNykOUITjmCQG3QzIehzx2WivOcKCJ3CoNmphFwsW
5BzWgwnhQzEV0IFiLtW9JlFSkCgNEViYIXBkXqIUPN8UmLRGMvNmg+xr9Apeo3c1SA5dq7D79vyC
MYqh92gA+XUBvkYC+hEnuTTcMSwxErppTXIxiSC5Nm/ReTSn4MJA8n+WdnW/jeJA/J2/wi8rtdI1
AmO+IvWBkDTKJmn2WtLduxdEg5NDm0AVyK7639+M+YhJgeze8dAS8M8ztseDv2amTHFRxpbRZuUh
QTYkrIeB6RG1qVGe/RM3wgGuBgMcyu4ebIwDJfx6quZEWCWZBn4X2C9NwBuEusYIUpJmYYy2BjPb
tlOkqEVnXTwxmOc6MFdwDfhI6KpnwBgHCgGDBVxoctAzz1UFdiVeUSNJk3uHtXDvbKXeekgTr3GA
HXSZVR9hd3AeSnGNiI0Y7iayOwwfgceabM3VbCxDV7e9yLnJWMtuqxNtXqtjCHgWP/7Bz+ZVuo4b
vuLgqwd93qXoLggPI7gmmoTDmMfQRXztkWVdHri8yExmJKQtnipCGH5/WPvE4hS7TrJRERvZpqXD
B1Y3MQbxw4Te2WNdhbGL5XrGmD3Yo1+0163y73NmcLn3FDLtY/viw0r98YQfd++NVUCtDqauuszR
PFw4YWjY/zA20GoOrVxctLGn5gdvGx+yazLTMvcKGXMu1iQP4X6f1nvpplWxY1gM+vkIA5ZpqJmh
u9i4MMkMk2ow0LZMq/d8j5yvouDGtAhsvkyjeFttnDyfDgdogCHw7UHyjBzCiJPXdwIdhx/J2zFF
L9gwFMnD444L73j5P3FWvRiK8uZh9j3YpsfgLY6GpPDnVYRSDjbwN+dDosoPM54HWV4/bxK+lr36
/7KHH1KpoAYEPbRLihPeRk+noFd/j6bysiQY51quXwxyuEr27wRXlvBNuiX113FI/DQP9/e6pg3s
JTnyLI54kt+r8xv10y3JfqLRWRSkpzwAtk6JaFggFpUIjIf56Vb5eozz8HXPIQMkXmcLE6Ip+Qkv
c55UefbQqB7JdDCLkgoR5e6/XmZP/tpdwN3TZDpbPRKl/O//9WXSDXue/S3eeqv1o09ukjS526Th
nmcbHt0S5f58dWRQv61uFHeTxz/Qk7wPnRTFt+WCqZQ9r38QxZuSWGzr9F3UVC8wmXBbVUCzVozG
WI0xAINzrwTSC4Fov3RbPfNmFpj1rORPxEJu480wG7zJGIy20MqbVB6dKOPSpyao/AS6/UnweFEq
BpPWpUTn8zP5PPPJDrUiSg1gowtaGpUxrAtzUzifxVYnxHbMBp3qqtIQ6G5hFKEFAQGm8QS6JLq3
ylz44SYuPiGrZNPRrrZc/KW7WKy8XgHQNAM7a8kVrTG7U3iMyFuX/Oi0pmMBhh/QDacf7ghltJMU
lZvzS6G+CDTrW8bJLNmmV0X6+c9FnPOCqw0ou3YRoE2M73pzMl27T+POSjDMgVbXgQaYPNx8v6Ic
NGtAZczLMhA15/o9qoEwVe4GX/krrp0tRTN30bHPdHSHKEEwdn23nzeq1RhKVcTMlu500g8ymvUW
BIvZ43wyBrHublBnYC7rH4jxJ9/8/mqzaV3XlArM+nHmrca93BlGQ3YOQst3KoFCrs2BXvMGaqrU
a4dCVDtAMkb9b6raX/nik9FfCwNrWkoB0hGYP8gBNFTWUAiFIhD92rDruhYY5V9QSwMEFAACAAgA
do0uSl/FFuAGQgAA3A8BAEEAHABodHRwL3Rlc3RzL2FwcGNhY2hlL29yaWdpbi1xdW90YS1jb250
aW51ZWQtZG93bmxvYWQtY3Jhc2gtbG9nLnR4dFVUCQAD0NN6WNDTelh1eAsAAQT1AQAABBQAAADs
XV1zm0izvj78Ci5ObclJkOeDYYDyyZaEpMRn/VWWneyprS0VgpHNawm0gBz7vTi//fQM+gAkOSZJ
ndrUyhe2LKD76Z7up6dnkLhKk0BkmatXf4Jk1vbn86lofxbj36Jc/vGSOBdx3u6JRzFN5jN4rf+B
mWP9qV35+X1dBPwcf0qmi5nIjj9dnt2e94/fHC+lTVJ/Jr4k6cPxJ5FmURJnx53j36+8oUgfI8Bz
/JL+p3lwvHydHZ/7weXw+JVwtdMQfkeTSKTuN1irLcHWLbWQ+VZvwe82bptvjzQvCYV+8zwX1RN/
ty3DMvXWhZ9Hj+IInJZKF17VRuDXX38Ft/6p3WYi1U97dWUMYU3r+bk4volmNQ0EYW4gbGBTx9w1
ictwm1KuG8hGSLsc6rsMAA/qcOh3HaM2xm1Lb2H2ARNMjrRrMU/SfOsqjLVOnMTPs2SR6be3JYx9
G2HPIdjodgg1uN2lRt9xugbhGHEM8HrM0jRNItc7X/wHoQ+jOBB6N0lyV2cOQkjPRJDEYaZpw+cs
FzP9FMbhLo3yZ+mpXAS5giJifzwVoaZ5qZ/di1C/uU+FH66RIF3vRdncz4N7/a+FWICnNqM886PY
yNUFmtZ/CsRcCq0OWf93b9Tt9EYdz+sPh3prePph2P/w6ah0vhzn9bj91r++GJ1efOqcncJFvd61
vMrPdfSEKj8UlSRcgEEVjd7l9dWwP7q4vDkd/I+mfTrXr8WdzA/9QvgpCKPI1Qzjva7JK0ajm/7v
N1tpt9SEkS0ohxdG+Q3l4z/kafZvf+qp8XScfnnSh+f/5V1+/htmrNaBk6LAV+4azkUA2RtATEyS
dKbedDXvujP8eHrxQb/pD29c/RjEBn5wL46TNLqDgf5rkeS+AUGVR/FChEaYfImniR8as8U0jwCC
MfPjaCKyPGvf57Oppn2YJmN/qt+kvozNxWQCmdhKAVWaCT24T5M4mSZ3gGq6itYjV8O2aVrcNBGn
beSYDDHdG1yIXDpta4j+owgLPplM7IkpJuGY6jfeFYRUHMMo84kTIJszHgqkD4dn+kcflNzLhOld
XvRrumzLtl6vS1jM2dLlU8RshmSOgENy0dYnkEuEvNNFClyJ6hq5SV+rkfFgQulejeBVIEHc3q3I
MS38etNCh4z3KspyP82BMcoKMIUXvME4BfZk7zgpBVF8pwYsFndJHqkIrWtkAOb7RmulsTpa2Nk5
WqCRm/g7R2ul8aXRwqblMPM7R6vizPpomRxj+3t9x7BPrS3fWbt9B6nl8O/13VLji75zGCbO9/pu
qWiX74htYUZeq8DiYwcivf8kuTfKp8/Ac7mKbW8AnkseIgFaktS/g7/wNjiyFuegz+SvZiVrTFiI
d+nbq0wrCj4U+uUMwHVfWfFRfcbnJanYhU2VzDEmgY8sfXme65YKkifLzMcky10X8NYPtD7fDFz3
Wkyu8vRk7+Xvf/nlSH+rw7Rrl+B2MJ+71LaONNwUNUwU6X7UH9JkMXfdMMr8LEsCYCrRS4KFrLln
UBtF2lpfWn1foSWc6a1FHk1hWuZyix1ppCk8P6Tia079311vtyQA06rpp83008BxUKjvsRE015yh
dEKC7h6ke5cBBHNHJ6HvhWBPAgtZRC/Oc134uwVi6z2FA2b3rerbAMCG6Tpr5gOG7YAEGx8M5BRv
pTsUOZg3SJNZ0aYozcQG1aXTVHQSZoJuq6lugv3Ji7q9+2gagupCM2M7NJsUEoM31Ww5Id+jGbL4
dVnwRoKizjYmzBGEgt0UE+eOswdTnvpxFsmAu0m8ZDaLcuD2DS4VheEVkKPCREwAVXCOjAp0pDmN
/RPsHZlA6Yc+7DGSPYA/lQfUAFG80xkOhAZGDVNzbDrW/tScRHEk+V7+D9WgFSYL6ARVYthkKzMU
DNMGFLghiokvXiCImf88Vqb2Z/P8WbnAIXVSxKSpzpA5+3Wqur40+xwK2rXIkkUaCKWdMbrHeCqR
0IZBYIahvTcIik5K/t+Z5CK98B+jO0WJVwmQ4/MmOFcIrwVU5CwHCHGW//KuJBjauGEOxefNO32c
JNPSoc50mnzZiL5JTuNHfxqFt9dnarApIxpQYROzwpDwSWlQC7ieP52O/eABLINXLQlDVWSstyaL
WK03+FMXMypjmTVUaGJot+sK70XwUPbkV7xY/N9RSJZxDjxcBQ/JbnLAZzWrQSEWkBilGlQaaW8a
QSipOYKaVfWg+Q5FoRbGbYO3QLbBWz+yPeyN4iLLYW43GmFI/eVwnDwmUajvcdD7YoJSGz3uUPAO
bzh61GH2/tGTL5rHfi3Ma3Xlm33QONWWjmIE1Twlyzm0WQ35whL7+EKutXyO8vtXVtZ3O8TIlbk9
pryWLwgn9i5DnYaG0rEIXjC0tX2oOiIqgTEUOFml5cwRahNBTbLWQSjEvl/OWln+C/1LZa3VQQkA
ZnAABSgmK2GgwEut5aVFocAMCITgZlAINK6OrmLx9Mpz3Xs/DqfiXGQZyD1Z/s1KIEseeVc34Z2+
DuqqZW+OvmLQ+5bSDhSVyB5lS/Kbbxetggfc0vpYNk3yLUyuCGnEtyJAJvCtwroUdC0CET2K9Nyf
b6h2eawwSrb4xbI32FUxs4glqPvbsoohJUB6hDYbUR46uBpcyw0KQBcuNTTAJ7NuI0TBsogDsMxm
noMJ8pjqNYXbHtsQ5SKOIMpGc2i+y6DKXBqKib+Y5qNQyJWgymnv9ffLTNVbMzFL0meXWLLdIKwh
7kDm6l7cl/HamUofsUr6mNRXqej/7T/6wyCN5vmGp8r6fGci/AnMIdXSwyI+SxIIq7lI5Xr55yR9
KLRYJatMJkeDN9QyGSPyghaZbEWPBDOV5RneoFjNkOoq5UUqGSSLOCxW+beWhxxzYnOB9dHIG1zf
XpxdXl6NTocjr3N2dnrxYXR5ezO6uRx1RsPL22uvj0ZX/evB5fX5aHB74d2cXl6MRtJmrhGnmdaQ
T3BQaC0s6CVDVWMzpCbclkZRU4kmnZQlwh/VOXCN4oaiLEHlWuhG0Hp3BJLOAWwVavp4egM1f5w8
7VmCCxAKHMp0kOMtUtnx9x9VTU7mp/G53NAEqZRplDaVyq2JvqSNC/FUiJV9bCItNynRqNlUJIMG
ddSdJsHDLUygp2ux5zKjoDk6i7K8QC3nHYNoCnwOyjjWaCV7O/P5vuxVujjxg3Bi6aPe1XCtRMYS
smDArKaiCOSy8cfFsLylNYrr4Jf/ZA/AYGCc3Op1I2UM8FWxsPmn9BwzNcobQkChjbYgpItYCrRs
GAq7mUDLp5atV8TJxlQRJ4cQhISbRuOnedAOn+GF/tIqsMOtMdCtqY/g/FEy/lcwmhWyuMM0EzUT
5U/GY6FLSUshpmNqJn5xr3+Lu6nNA6SvBECtb212PKWd7dnMxRSmASZR6ABZuAde2W+CUQjhsFin
l75aL2ZjV61Og4BMbX6PoNGIxbQqsyqKmUwQoBS5yP6XOj8V+SJVY4DUqvFG2rxYAa+IK0uzLWh4
uK2vThx9+at4oSqTTdUqbyNxnILPlZ0VWXRtMXlx2V76dHlQbtJClUy/wUFQ5fUHtfsy+ivJKo5Z
Sd8xauV4QoGwsMX00er80ewuHUXxY/KgiBFbK9e8XiALg7AmcO0gRtYOov+4kDD/cRazf5zFlltO
84uhKno3m/25Jq4wwwknwNIyibK7UZ76811eeI0gCi3GSpCa4tX2tV4xLbMxdDalGd66XAT3V4mi
e4JJbbvqNRNHJoLtiSOmMAk19R88c6zuI311FmAiEjrAjZVRVPtUjtoWahaIjhNuAnGchM/KTKy2
eRpKgjZ2LWlday1b7c40DGeG9bqgTTDzb0lf6KJgPDMx++JH+SiL7mJ/uitsg5crie1jk4Zoosd+
nGRTIVTsO84qZ4O3b9t495ykIoXLtRxU6o3z+yhbFiTXVYJH0N2V+uviPijoZBepCrWTaRLf6fJX
ucVWx07w9B1YtvqZQnNdWonirJYOX20/fYKFGOvjmT+FJsB1Pwq5eJIFPsTfrjUA2SmcrM+WK4dR
cL7IxdP7X8pYv8Wi6WqhQG5QjkYzKXU09jPhYofX94RfY1gI9FEzDFwVFD3ZcGWi2qCw6xoprm8C
v0IjZQhvNHay5zi4ge7jpAJitXxWQ/bmqHX0XsaKDJMlnxR7YVxvrUW1711MWH2P+DXQTBT+EGj9
OE+fr5IozlvfI67YYXVqW86vMcQah0rum1IgjZbpNZqnydPzSSn1FiB2ub4Per8P8bvvcuAbCO/N
Yo5Dy4tT/Kg5k+6ld+fH0TtGP5be7dpc5fb6bLOSV6z9H+Ysf685y67bzqp30I1N34JJyh+14WwV
43mkj9Llfpp8Q61vqkUXcEOVxeqw65pMxybCkt69GBbxNCpirFiUhMj7lpnNniSyf1wSOT94juRA
Eq22xnRgy2Q6jeK7Q978zfLmawIZth2M9fr6NW94/1eAKGdW6U6MdUQsP8bhRnGUR/40+rcoTyuI
vMmldi54W67DMXrUuC5Dc7vaxdiaJ6yLHua79o3txqrGwaRQ9SWf3OzXxmol1vlh7NC4Lr5QYvGP
ZQeM/nErIBhLRpTx0FnkifwsS/CN6x+MhmMLHDGX07v7UfAoO8pv9IIv75JYe0F+tGW0lMYtXiPI
VwQ99QkvjCxsg0IbRsUGaB7NRPgZZBe3Sat2DLqx0t18cuu1uAxy/aqAlG1uiG7YMzqTgK6S/cpP
H+Q2UZK77hxer2HBBPj5dDafqnwsWlR5i4m8ZhgkcxGe+bNx6J/I+2d0mB5v7rLZOqWYU9dPkZ98
U/fCPMf+LAo82ZnKm1tK7TCxIFFbG4jFljkyGzeTpilCbql7fQrlazO7slt05cCq/bMTdfQMoLxv
rV82QIxZFfC9azdvRJ0wFDistEcr0l29PtmVLsvbIjfARbqxRxq6Xmpw3f8coXInr9odP0/SHyH4
/aqNkl0nxEEqBbeOiv12W945XhVf3MGMaPO2+DuqFv//qlr/iMYQkwOFHyj8QOEHCj9Q+M9K4fRA
4QcKP1D4gcIPFP6zUrh5oPADhR8o/EDhBwr/WSmcHSj8QOEHCj9Q+IHCf1YKtw4UfqDwA4UfKPxA
4T8rhfMDhR8o/EDhBwo/UPjPSuH2gcIPFH6g8AOFHyj8Z6Vwp/JxM28wlFGSt+dp9Ojn4htuk0e8
+KTxVAQlBm/0oQ9mMl99IqUAc158FYcicNL83vi9w0J/3LCYP/jzS0gPlg8a+QK8JZ/lsnziiK6+
iFBvWaYxjvIjV9P11H9yt577gWDg0vG+A8G+A2H5AMYmD014IZWE0Z5LsvUBaRuzwgBqudI+3z5g
qyt2HOBSiZ7aO5TIhE+dKi7CwkBpx2gXYHkAl0XRMXH4mFFpCSZ7LMG0KotaRFjqgLlPCdu6IhTK
XdG8fGT9te56OpnWtGNEkPzurHQHLCplaWfLh394V7fF01uwrfXTNEnVI2GWD3RZX2pqN/JjaheL
2Xj13CFsaprWjWI/fdZPZ+obErXVw1ue1s9t0Q29+qYNo/PyNxi11LOIDH39MCL9xO7YvQEnzPDM
DjbowGFGZ9DzDBOZzgDesz0Lvf/7PfilYrlJdrjDJNIdbzdfLji8j2bLFG8hsNzsMLPftx3Dtu2O
QR0+MGzTNo2u0+va3OyxjuPtsXxLYg2Ps4XHwYE/mez6rsUdY0I8is0eoYZFOwODUmIbXcL6Rrdr
D4Bse50usZqOSXGsjNNxLGsb59gcTybjbZxn4s4PnnehRQ6hxOPIwJ5NDUp6tmE7HcvoMsqZN+Cc
IrwfbSH3JczFGRXk4Xg7AXx/bNc8XJts7MDuIWQjhzOD2BSw93um0YFgMkzPRH3WGfQJ2hkDVcm7
0VfPKeMfo9Dfwh8wy9qOkH3AnQ62sWVByPbMnkGtPoEw7joG7Xao17EsyxnwPU7fj3h5sAQVm0CS
dajwJuc7ueZGZPn1Io5F2j6N/wUTChF2F/JrUfUWbkshWOYdo9geEM+wOiaBvMMIUs6zjT5GnJI+
oT3e3x8vGxVVDe2x+lPnk5cvqlhqF3WlaqnN2WTC9beQ40vvSFnDxVw++qzCJlZ/0KfUNHqobxrU
5JYBzNox+qzX82zGCEfdXVa9ILiMzkZsK2QgAlgg0ZW/jue8d35z1k2T+N+il8pve5WuN0kbpsvg
/rbZJpL0bYfyvtUxbNxFBkXcMZxujxuY9CEFBp7T6XYAbPGIteOzaJxCKTruP4Fnl7GypWaP/7dP
1Ar0MoAsbGG8sWr9pmn7Jlglvy9Pb1ELtUkBGpxKB57heQhYEXue0fE80+CsA97x+ibCPQC9yFLp
1GN5dUmXbdJyJK/ftFjNg8N7P5WPlmmZ0mu0bcEVq5eAotfrERtjiN6+1wW2G0Di9fvYsJzuwIE+
pAslc9t1V8X0fLDKuux4qWZ3Ii4PVuCbiGzDh58a/HORw9SjxSwFXP4B0BQxbHOMgS2A3ICWHaPT
wVD5EOpRz7b7lkO3QZfQKqm7sapDVaQW2kbKsKOQwtA8nkfZ6nuLAChtM4DYHViYDHjPGHRoV85D
gNq6fQ6IcdfrEtz3PPYixE4QQA8DLfAeciud+igCELD7tCo+rWqCv8uuUFGh7CbmURwuZvOVadjh
bawKJOeM2wMDDdQUy4Q5Brb6MA69QY94jHieXQrcLUkVEJxY2yA4RMHSuU//R9y17TZyJNl3fcU+
NjBITd4vj3n19E4bbrtnjH0bkBTZFqyWeiW1dzxfvyeKIllZVaKEHcELGJLMqs6MyMyIOCciivVw
83j8Sqd3Ql9qSOBkLiJHzURLFC2cZLHkCg8FS3cajCjEXoLxMN38Xpr5/EFvJvHgw+rb7eaXAwr8
j3dOelgQ/tn+DzKkBpAQsmLcRsjELWTSPDLDaxEyI77leHbDyWceJnhxy3t5lm/v77noFbyaa71Z
iYnWI578zl4G8rjSBNoAEUNRkTOeBHxXVXC9timGAGPhgiKChzyr7GnkJdnz6PpFL+KC09ipzQRo
PGw334Z3aL5zQ5g2Til3SY4XsldZjVEwRenhbZUMgHYq4UcSCVjDqaDPO49PT6M/4+uero7lxhGb
y2240ZP1pi+W3f4cj3PBnVzySyVJheEPciwAK0IBPWeBgDeIH0IOLJfIq68yIji/xmE/zbWsxNPF
TgdBr1Wd6gCcerDU//62ul/RGz62B2v1BCR4gz2GhqOSQUZUBDVLKlZWtUvKeFsCH3uLfQrjzwvj
TYRZLwmzO/iu4ZWYBzkcOeRgtI+xBibhIpgykCNU8hkyuqwtorF2i3KMhupFCGpBhDD1HO9/GDz5
90Nqj97kOcaOJiiP85ZZjQ2L47JjUSnDrCwhmlKzCPY1mzmbZHlbZ7dNFLpaUmg7Ma6vCOUjUnb5
kf4fSvFBK2mHAF29aY5nVlwh9AhAkYiVZtEMRzAMOK3nneHqfr3sGzo3+LGXZXzXcGmi325Bv5U8
HOAhM/gpj0+OEGGI5lL5AFUitKjk7xJ4VQSXbamWykXGTp3X54ev29vvPjzjp4fbr4Gil4ToVVjZ
BRV2dor5fv+yvjt+4zUBZvIgnmsKntiX1Jw1JDwIVhOVeZOhWpLNV3hGn+WrEN94kmd84fiWThGp
FvYCHx7s9wuhsH9QgevhcXWCINAeflDvUX+pNQohHXMwFWxKo4ib8KMiSuWED9OrPOF3H/+e7758
vQbaGqnxnBC9GpovqKH54UjdDCH46IesuTT80hP4h00Uyw0zIGVAMFrgQIH51tyUSPReacMXvdF4
xE4UazdzUaxbTdzRHQ7iZwBqAQawd0PDHxDJyhBcApROuYDHRgebLcKyUh1WMja4Sfl/PuP7a53A
bskc3Xp9WLvtgZ4dl48WrpVgZKF0TKqZqYzAHYYXb4siQGNMNrr20G8yTidDCAthZL2yh2PY7h5u
/nG1L9sdfYK9lGRHplFiTQLhFw2ED7FgR0qwXBHsW6DkS+glmY920c/r5sJsrvTE/+659T/hchHE
hi0EnLsUZBGxpOqVMQyk1zClsHvRAuQUnK9iBUhl1i9iUBp7eRMPVy96AecA2my38rCE15tvG8rQ
xCNDMuIS/9ESwquGJLRlymvwuKIBIzN+tKqCKKbAjF2/hJPRxpJY7uZ8xh4wwWn9rm9/Pak3xC0C
tlKQQAKOERYIgZqDb7TJwxqUYzhVPDalk1L+LeLW+7EMXYS+/bXTacgnzHQSfshpnio+V7cPD1dH
JykNYV3SB44ESxw8cCIlRoTNLMFEmFEwNWB1IMmy6Gbm407ECgti6amz+Y5eJa/3uGDwMUkHrhTY
gkqqUo46grg54B3AL1tDDELzs+uLEZcXDhd6CddLEu7cwbt892GoRByNWg7UFhyggdoouGUOahs4
DAiAG6zdqwbazmHYbxPnu/k7ybVakFwbM13b7e12/8W9q5tPT+8Lfrf3B1KFQRufPY619kzLQOgS
5zpk4BdtXQ7KIeqn8KoAOZ/qmU2Y39irZubwxRpzRGDt7vbx4+r+AYH4sC/GDxkfaV0MsWqmhcJp
RtjHnjiFCNVKDtZY39r5dMrpnR2vJtnxb88ctsPb5x7+vCB0p3Hweq5x8JsjT7n7+vsOyON0Dh35
caLRLmXWFECN0viRksU+Zmta4fQdbXKZq3TDTSSZo3u7NlPoOJzK9z+MPaS6VHukoC0fhFO2GEoR
6qoQZKJgQXPFSrZg1Z4H6c9ntmZTdA5wf7ETfb1dcIIbbg7H5uPt51OCaJBRwpM4XTjT2sDZxBKY
F8BYgFwSbkbg6PwbMnbbf5x8LLITV3MjdpKrg8ibP/1ptb4+SK24GxBtkLK2BDPlNcA9CpOYl46z
6kXMWmknM+/j4XicTgBp5wfPbf3VNL++/7r7Q3ZHc32p6QQi1gnRbGWleLBlWkqfcQKzDUlKbqoe
ktNn7e2Z2l1+unbRS7ZdEDfwg53kn7//9PHm2+fr20mt4slxAy6rKENkhXILKoBD+8oLsyEbB++g
k+VvRNCWJem1CWJJm33F9BRdb+8er3e/n1wdYjYftCnap1KVZrw5aKPBziJvDTDEeUCj4F3O58L2
eOBOsJ2YL7PXs6rL99ur69XhxVSHdIVT4lKYS8npfFjYlGrJsYTfTHHANx8DrEwrBPgmdW72hQz8
aYrnEvGnOy56ea8WlPDriRLjfOr728ftPb1y4J3U/pLyacNvUqSCNjSOg+OaoBjpgUgqEF8LXqWi
a/bpNTFyabbnUfT0zl4/P2dyoCrb3XZvC7+VTx+n5QbjuLSGw14bR3wsxlNOvrFQoZv0uJrUH1Vu
OIp30SuwW9BqNS1XPXzdbsFv77ebu8+3131qgdKhOINDNlQMhhKqicFj9xoAEtXqDfFCmEyCpxc+
Z23qW+D1T4NUPy0J1eU7prf1K7CZu2SwlnDwCgQkftp+vn54vB85BTMc0+h4AZ+kxGVT5I8joJwI
0DsFqvnXYMX/I/7pxe60tsouaK2OBZ7FnrV3QHmXYs9hVCmiNp0ZGD54dkwNoSgPSXuRa63BmHDO
GXYjd6Lt3Jy6+t1qNzmSZbv+9nmfynogych9iCEXL1XUMhvA0ABwoRD2YXBVAqd5F6lsaF6XgRrP
sLzi4zt6HdZ8QYeNOALML1+P+ScC0inq1CSWzzUNO1FguKEUx6wIOdTkVc1tAjGOI4wnDnwzj3FB
iCnb3uue725315+fXjRCEUXooXw/kG6P81C5xipaIAwsKaWgomHNh5Z4zcnWfL4gM5/juXzk7MZO
J6nmGZggqY+lY9vHtislODlf7qsYMo+WyJYqrbJo/FDOd0qZVF3V507ol4Xl1XoeqcEb9EKQe7ZK
Z2AxAHKIAo1yZZQg9cpLJgtovzMNkfTlkuT5Sl2c3HPRizu3rxDslMlSxR3/ejXkYvYFu+Dkpdon
2TR3mXIXUlP1SBgq8gNsyFIS15Lj47erqh4keb4zgK5e9OrYJR3DZJ9+2d58pXMPLkUJu6FGYkrU
QHqMpwySZyK1MzjqVAzc5NJ0s/otYtdfMPXyTXSlV8YvKbOaNmK+35yCCI6cH0Iy/SIgXmotqVrW
DPU9JNJKFs2kgk3DleNkvyrnMJ7jGaY4umOsxYqbeaFyxe32EHE+XN9uV/fx5vMWk58qPVYOkba1
anQtjTUO/KQyp9K2jvDp0aVEuV5Z/iAktSBor+gCoFgJIw5AcfJOLZiXl5QZpH0CJlSqSMmoFk55
9IzTJzOrJdekbdU2tnM+ayGBjanlkjzqEIvK9erz7d0DvY7q6U3p+eaaOmGP8g2dZ1KrZBOOjKD6
lAEJBokD3jFRYpMQsoaa6ChCnR+3E1HKOS9fSeUnPaIfVrefI3D57w/XFPKfvNLwm7LEWCkhpGKR
2giUNwj7DkcEccAUbUCinXlzMDYW6bl+j9MdvdJqUenNIax92txvt7c/beldMIe90NJearIHsIjs
QhFMG0ctpYGzoA24aIoSeFt400q/HfPhJtJcLUizFs/0cOy66DZ0cxghh9a1GHUrhQPKUGcBj5HB
8SDa2ZRCAxhr3L2qkeOlEDe/r1foao6EVsa6Uy1zsxp5GhvsQNlqs5mDYTLTqqckXwKFht+xIRqV
aw4uTupH3UAX/Wx+SYSp4x4Hw6UepkrYhap/NVfqLdESB1sWmB5sTttkXPL/ZrQd3zFRYeGQmvV2
2iJTITingIOfQ8lLB+kgaPN0CLxNLGrDWYtZeoFz0OIbAoRYn+mXqb0u6znXXVmrJrqkm2/bx7u7
x1+oSKL3nZn0eze0FXMnKxwMa4A62IsMJ5PA+IJSITsOSm/OM773PxzHf64b5HhDJ73dzBtbVk7Y
Ue5y1JEn9/HEt6wAK6kHk5i4DuAVMRtAYgv8BrJRhJ6lLpc68lZOm4XpA19AvkOK6P0PdCL2KWrt
wtBW40qQGTC8OkEOmgB5hZFxAK7gYIAutBcPxdPgzx/jpxt64Rcyfyu3nhniL99uh0c991NTUdlR
gLFD9r+4Jr3JDPyxUhESAdBHxYyXVgtlEAHrq1JS/STPKNLf1CuzUEPDh1OT/FvO456mZmoFRlLw
GrT49DRCcKkyKXMCURIJurxGfAy7LDIuTMRcsDZ3ZScZhtXDzZG3SUWNGIOZiUZCNSYSIolqorAU
VaR+YuNcLVj5s9mF46i9SFduQaSdOKR6bv71ZXVpTriHgHPmygSR4LkMlo0IcMxeMF6c5UrFzPOk
sWE8SDe7Xy/gwrA6Fh/++eUGWPcwuwyXYkg6p1hstoWVZohvVc6ilQJA3tjSipDRiUlT7Wici36u
hR0Juyl5pUr+w8H1Uo/49qpd32w/XD88UqJ26FrCLwqWokiYhUvMUeOxkgbgSwY4msKjktELKfLb
uflelud72k/39OrvVkvqr4+N1fujs6bnwB+OsGBQE3S2hGJYs0AzysD0k+IODAQgM0sNAzLnTuN4
yIlI85wyfbnAxEZoRx5vjjJ5RRUJEiwHXmJVHuzUg6x6kVkE9GMy2uiTdc5Kf5YujAfuJNsucE58
uD0DXS7b/t3LBM0lTFnwgYEe/6YG5WaSi4DoKcOiVYuBxZA8KwZAS1QRXHjDbuyDPM/c+HS1U3vn
5nk7+vCwIb9uf//y+YjG5b5nzIkMcgrASIgggx0lADZWg8/OimRbXe4ZG481EcItCbE5uKlvt/9z
fXvMySpzSSCxWRBEnEOGkE55iwBnmSAVtRS0lEAQhv7puRjj0XoxwgJv3MGJ9Dz2683qcXd3f8y+
OU2nc8jDhhgQK4GdnSPfqRTz1PBis4reZ53gzM+miLuRJ7KtF2RbHW15/fDlkh9XaHg4oQogGA0D
8ZS3Mk6zhCVjppgWU3YyyAl/HY3Rz71aMNrd1k5M48dCNXpBaWnF5dByXemZNM6kH1yk0DBWMNXm
ZaE+OW7r2xcLfizLt/xYxjqtgVpnOq15OPblrL493h3joieaF0KoVvDGEKozXD+QUCw5MlMz1yFZ
U1rq1/M0Rj91mJOktfDHBvb//CgnbQSuFSsVYnIt9Cyio0dqXeP4X5FtLdk2Kd6ojeA4eSeyXOiz
Wks1JRJ/3d6vt/d3D3QODjBMJO20TnAPhirivkpgGmNZBWtX0vEm63kudxh0WfjD1U5ctVDFXytq
6VQv1AQua/zouRT/NTzjw5/6TYZsSxFVVQ5IIrMnZiFg3NXDlUcNWypBt5ZfgycPMyzrc7ja6WMW
upTXdn01Wf6/vx+n4PdIWCs7BKIYUzLSOlAReuyAmt0SbIBVa00q0Zfa9GukH8+xrMH4jote4O2S
FrtD+ud+++Xut+24C0kPJMrI2lSoTOgCyS2oKJxsYNpYA3LdfOg6bU9OdTpeL8xm7k/XiF6zcH9z
d//p99sNUeOwX1H6/cQ0XZXw7oZ6NHOSLJShZqQCLvnSvHtz73aU5zk6+HS503V3NfffG3k11fUv
74+tFvKpvu2fGoKoMVxljWNv6cl5jRAXMq+sCZ8UPHnFXrxJjeD92VaM4+WLXhO5pJ6blXdAkykp
/vBwvb6+GR7L2tuIC0PnDrx7gooCtBx6curi93D0QGlKphB8ki93knTjn+kn6e6baOOXtJky91N2
fyhj0j8YfUSfkOl4RU9p0fMuWUEnetao0aNHOSebZHX1pQD8Qg3hdL3TYb2eY+nNlZ92kP/4bXX/
+K/9o/iQmA6cJtw8VNtzjTBHS9/VQI/fWxgWID7TzqZmi2pmqR9mjAOOgz+DB47XO9G3cs6ZrqQ8
Nkp+iB9j/uusWqOB+T19zYEF3GcqgMOnRj2TXEeepXdS/FF9L2MJLzot1DyfdqWupm0Gq9/Gqe59
J6/g2sLtDc39WqRSuGqM3gWMnaEniqly74DntDcp1hd2Jv78UggZ3zFWYWsWKgj48FhBoIfTjyD4
8IB7E1wl2RIrir5Iw+fEQpCRVWFTyYnzyJeJwmm0iRBXC0KY9YTDdl8S9U5RoxfVvHDQhxMjMmJE
g1Q1uQSXyguLWUkmnfEcPCFmHs9xhfHwnXhWzsnU1j51XI5687aPw2NzhwYuf0xFJXqwJTnFgizw
fyU6hk0Ge/AhFGu1Nlmc7fobj9yLdqUXRNtOcUxu1AVZru+3m8e7ISvJ995BhOHhCNGCoWetjamU
KguFBeEEgLjPxsZag/Yv9lgeR3855LZX3D+5qdd6O8c9WyfkCe/X7yaA38vYnIVRJVUt3EmMLGhX
WVY6Ss8bcH97M8B/mP2il08tCX0sJn1dfRml7obEYctFhFRATRKOTZOJHmXOTGepKni6aWLyMPxo
jMncfmnucKwTDmpfplPuX9pDwoULaRC2C7OCvsAlgiVRgxYYuW1auiJzmbDefrROkLBaEGRtj0+9
pA/x0ywUJCgsvLQ4jwnuhjKZyZnCMuCEt1UijNk/KBSc5OvUWvuFvV17M8kLdmnR43cv7J1XQgCO
oMHgPPTII1yqTyFSEd8ra1uSvLyUhuuHHgu406u5h905pf+Xt2tpctxG0vf6FXPcC3vxfhzxINod
Yc84XG7P3DYkiuXWuruqtx4e279+MkGKIkhQpZ2p8MUuizSQKQH5zi9XcuKvg6jBlkbyTuWalvGv
3HbiLVjlbRMJiFkwUzH8AD4oczK1hBkX1WVFNa2/defHxzPaLdmTla8GH9IpsLAtd9vURquBXikx
dUUCaeArBsWqLXjJxAsrFhnuLUlrSbfuoYYPD8sq1x/ARXrufzr2/zynY08aP6sCZgwV4NQYzGJx
EDuNR1+eSqkE4ZZJflUOZb3PlmRavldydejXXB3IFAQ7HJ++7p7Pja6S0FzKjkc2aAE2vMQKQ4fB
KA36VrYOvLcYggk8JlvvZSkXvSm37ir0MFnpdX3KiFUZAAfLN7I2U0N7FFctmLSgZTlIdzinVmN5
XGpAnWnPNNww79/CuUINdXsiY7s9dnplziqV/Up1w4d3y2zoRcXNqVPaRdnIkCvNCGg1VHKG0ZiE
D6KKMvD/U9xbathSRdmaA6Umu+jHDykt1DDX4NDb6MATdKCG4Zw0JinSJK5FAhsygHn/Rmr4vHtJ
tFqfeAoi7kT0sXu4//WsiIfGeiIdcVipxNB1wmJWA/KjSUwHHx1TvrXLbtbZKjflVrSyv1n+7GcU
hozYgREsiipxECWU0Xd86JW3RGidQAh7wyX2x9DGoHROMSXCPBwEG69GDcnbXAAOyc9LdvZrsUj3
fBkY/Ol46B8u950EHZiiWH6kJJoZFL7tVjdUueAi17QaTpsxMN+izsL8jZuS3q7GRHc6Ey/33Tmn
mqG1PAWbWDdBazmUWnuhwCTiLZgoyppE2o1ESVc5Ente+w6VWlgPR0T/OB1LrVHJ5cPpnAVzDewz
ERGqCfx6p6JpVHBYEq5TEhcth/OyJVFKr4m6s0tJ/OsxN+CnXdcPYQfsKUQBlf+NOlgKsAxALQiG
RQNEm8YxMB+DZC18JKK0V9U8nHbYEMrj05uS2lXQBK7HXVdpu3//uPv66djlksAMRYGlymD35JNJ
DQhWcHQJdwZ+7Zg7osD+iUGC/a5jeqUDZ77BdtHJ6Y05C5xpu2aBmakJ4H36x5CuXnTNgRvMvYfz
QLC1lktNBo+T+kAsT0Zr/UawJgsKSurNbk29pLulzbT7Z4BtHncjNB+WA1KsdjeD9KWgMhi4QSDJ
DCJItvD9Y2WmsY4x0lIjKkpunub97+UOS/C/6XlBvuzX95Lvdns4QcUVyDrpL/9l8qkxQyhbJi8o
WJ7gsYBHLThvnLaY87eapACi2pA3c1mGfvPqa8OzgquDWNsd/CAnWIffdo/nIrAx7chBRielGoYY
DjyiSxoNbYAVEYy0hIdFCdhskXJzyWub7xdSBdyAdHuqCh2SRUaAl8EF0CAw8poYQ5QnTIIZ5Shp
HX0FmCyvWf+W8qOCzv5ubSUIQs+FHv/3+fjc80krUJVlcQSrF+SZbix1QKTGDg2pQ6OUBT/EhmjY
IqNZLHRT7MZZhQQxWVfhh3T7Av9vkaIG8QreMkp/h5F2onTjmXcNCcwR77xxgZcElMuUFKyb+q1g
d12lXi8OXR4M31aCZm8Ru3alsKAWwS6HL4Nhz7NB7OK2JQHr7a/ALImbTRunpzcldesrKzhZJ6G+
fHm4/3533+fGLzDUVBb4GWy51TmxKiUGG8C0QsRRMK8YpwJsbcda+xa+w5yELQbPb9yU/FROBhfL
wpoqnNeYG6C5VVboIcAC7BrnlEeEG4uFfbHxJGKTsg3BJ5pAyb154m0i5wLK11KlCy5rrJ8bET7v
7n8+zpRhtpBDEIlECk4SaI0h8RHQG2w5qJEUiWFsUX83W6XcvrOV7fupmf0LqMWnqR4cL2QLF8B6
BFHAQB6YtWgqctWAayaDNS1PZBHDm69Rbt6r2uaqAjW4+C2AFIM/t8k1qFHqyF1DBUPAsyQbn0Bg
tA6lE0LaGvE2v3XlxQU/awtTiDu5MM8O/dMvzw9fnyZeMBWXA1PDH+hVOmWJggMbCJjiHH9rL41t
iFAKLHLB4De/rlszb3WiFl/YatpcvXhTcqFqrPULi36MNq3wsLiRGGXhKI+UIlbGoBslucWKZ9B7
EkwgIRFiPalIqLgid7CNlWVhpf2aWnnHFgfrLEnwWv79mI4zh5SARCG5podLy8B58xy77pPL0esI
x8vwwBXYn7U4e73rHrfYlv34tGBDr/tW8UOxgm28fXm8A38ht02B6M9HafgLZSFrsbtSgb+CTUrg
6jUO0ZUESAnZJqbYK1prWn+rNn98XNAOFv2adsPFqV4vvM+AAvj/PZ17VPU79EaFBvsSgRglQz1L
tG4cAec0EtkSBvpMcfpn2JolmMaK4JJfUbGv9nvEpc78Puz/tzsDi6mMNxqljGA2a8QGbrFcTIKZ
RWQjRNQutcoEtsAUm69yU+60dkxEx+RmECYfuG/dXysnnnuO2HS80Slg3zUHC4cE2gjOkhM0xhDb
V80cXPvCUYenNyWpqka/WUIujO1Nn+Cm2rHDihCUKrTVvpVgkVmN/UBY0eDaAEqhbZmLTKho3gTG
89Rg9c2Hyw1Y33wo+bOV69D1/YI/DAN3CP0xtvGxsY0PnBVvEOzNEQJWMOg3rCEy4DCINsDZs0S3
r3q/4QLgYfi2JHddg50/PIn7Igj88fn4+Yw4OASsXSTRBQOmJhA3XGFrLTgP8KMoSsH5dQu/YWPJ
BVkVY/ggpnbZ7uXr0yzSyQdACkulEU6QhuV8H29N4xTlYBsyxgz4enoJAj5fpyDgYEyFgDP2z3c5
CzA5mxkhC/shPPx8jW5RmkW46o5qCbeLW6FSEFIufM1ilfn+UlQ0Anw4xfXCp+N9/9T/+PBLf3/8
Y4ZNhlcE3HUTFNaeEAWaLGg4PyzERihJNLUgb+KCkPpyBUWyEjKX4MEuDvY3/fHLAUFt5hB7MnKw
AcDtNh67h5jEgTDg4OHwG7DoCKjZqyJp4+JbneP5YUm00TWi7RIQou9wbNDfH+E/cZrDSLuip2Ju
mgxSDYrKYiANLIQGrMDURJA2TAvFtbkOn7bYaFOwzN4p2FFrqCQr7Z3KRemlW+s+BnTuT3Wr418Y
k0IRb0FgqoDNRUSCVRYYawgzxjFw+Qek/KvMHNhkW/TDw4L4XUVzyVy0rkcPpPs0RYmNlkM+DLPn
AjxZtBmxlsqgJy5BkSqGo4UE3YhXz1YrqehIhYpuiiGF9//AMYhnDX6KpSbJgsc2GM+VAnfI8sbT
VuF4D2m40tJT+x/GUosk0IKQgom9WisZuT/0q2O9e+w+ZSw1nEpCxukk+RRQPMnGDEBeXMGXC1Ic
g37UcxPsVZHh63uXToRsnfjxccFkx9fRPtnBgen3I0zhY989/v71XJvPuTzXLQUiUwR7UiKKKyLu
gTEP9g2cGCOM44FuIKsvVi1IOqw79a3su1XV3Mvh+PDueUzoOPyvWQKJjg5gdv80aa30ARwjMNS5
VawxKoSGOIpoZY5wc/lQzRff8GVnb8yZAeW8lo2KsqXvFHDo3g89osr1jyO83DmZqyl65gREKvMS
BDqqGR7yhC/4BxFUJwUXhsbrAMsqe20ImMqbJXdiV+FOLMvLvtvd//z48GsxPIlFAzQ7TEthvNZ7
4CbAnachRRIsaY24qjz+tPZG6e/4dEF1X6H6bnmx97vul5evBWIw2I9ihIPImQdORIsICdZStJJt
24CHYhufjAxcemHIVVLeL3aaczA8K+hnbG224IfLM5VNcEQSyzRLnUvoFaKPM1CxAjEdmMW8AzbL
cU5bFqjh8d+264dnC1JZhVQ+KYLbr4ifWq3qUglMAUfQW0IVasDYNPB9N56APyXaSL3/s+BYllSW
LK671vOHq5By97DLmSu80cMcKLDjjXa+iYxjLESCerDWwz84FfAtYfrwFfUAa27ZBvCooNNUfCZl
9uauH639hy9fH7FE/hxnys2HYJQlwWhsKEWwfQECyGF5JPWtB0uXOE4WvsdqpZKO/b5Gx2HVkDpv
EprmirBcXpSlemy9jsk24P0jxjFOmsC5fYQqZQxLiaTLODbrDQo69/3aOVGdpgs19H3/iA2Eu/uu
n+PGnMQc0TGYyOHC5T4OxMyEK4bQa0FQ7p0J7Kp4V2Wbjbj4+sWbkgNWY2vZ7XCefDnVp6GL0TLQ
XVE1KTmsJwKz1ieqGpsiB3/aC3KdCjqv/trczQXtXYV2a05RMDh0D59/fWfPQyPQdwZ/DAwV01CL
3e2g7kH7g8wmnoGrBqavT4sIe7lMScGOVCjY7dcx9tvd/SHbIis3RzKtFMNhgdgcyrHu24FBiAFF
AjcrsrY1V1bkjJtsxtfH5wULfbf2+lWepFSwgHhnh/45l3U9dTkrNARRhkKt1iiqEgHVR1xA9BU0
1E0AJlSrYqQuXOdsYoYunrbZzvasXrspqa+xtOokHyzG7DXhX/jTjOAh+G9kCvxkkbhviGIeLSwU
yMBUQCxAEQmJ4nUUnLz2BYcNH5fUm4pgvtsvg1nxOIwjf/z9dpbqyIi2ckxzEIajpRgiNGFLDALH
UMRGkjgnpaUalP7buRtrejZ+utV7Jff7GveHyoAsrMnYHe+roYOEhR4a7BoacC6gj+Bvo4UTdKvB
FPMCHJIr79S0zeatmt6YMwKbr/UFfLjEfngar+wpqobF02Mvu1PGw6/WeG3Q9yUSvCmHmqPNUxJs
8heRFoqVF6T1FdJwQsy+bEcsThYb4sFoinkNsp3CRUgIqi6CaAxWC7Xg+yG2Hw327fO/Z2q2WhNr
50mTynnSpJ86CH748P067KCCbVXASa4sIeRSqxrXegNfvXBcUuKpdm8ZdpgRURDP1wDQ8KGlJ9vo
0xB9a3ZP91NUVMiM1ZHbD62hsRUEoWRAK3OVdONbC+5uMA7NNxXiohB1vWJBUGVSJH64LPH47Wv3
bvw1wOPa/dx/yUO6z2ZQxLJjp2LTRtR5mKD0Mtqm5dxxD3qEevkKYtti9a0gx+K1BTeHCjds6iPb
/5FHIp3TrBkusQWRKk0TCBbkG+xpgOvQUI1BnRA8F4swb7FKsb+qJFK1slO8+Y9zrFth9mgIsvAW
nGOWGmFw6gIzGswtgoMmTUtEFES7UBLwRy3YrVXFdNFgPU3YQF+7yrgqKSKFPdsGFAv2I4A6MbZl
OHpVM5bA+TV1K3tariSiq5wnvUolj20e05ze+VEKKVpjlMDcKxY0UzhKBJNUYPRb4VDc09cKvYrF
N2u+ircKNnYVH0bvOrJgIx6ffnGP++Pz49TbqYc0VA51SksYfJ8SpzVxJiW44mBQpdhG6aXk5JUO
78XqW9q3eKngYl/TWHtZq9/KpdH4K5jcWzAUcIFtwYQDyzV4ROBLyoNJG1twFIUVcGmUsK9DM+WV
t82l/LikWlYuccdVBTYoN37Xy8k1CS4KbAFJxmNVNHi1ghEcKdZSMP8C4+Q6oLhXYOIK2ruuRvuq
cR7OnntBcMChwFENaBjKMk/b1CCQEZx2FOstiAXmvdMg30EXXxUwGxffPPX4sCC6X7e34oeTYfP+
w7KLI7bJ0ICYLTKhNQZyy0bJm8SU9RrOvHolin99F8e0+YLkrkZyV3UIXu6Pz09DAPnj/RDGL6PH
xksG33Zi+Z46POXMgE4F3aVZ1ESy16PHuPKF0DE+XnBQOSk9P49Fwbvx3QJFd5xZKRUBqpJvNLFw
UgiHYw0WDjAgbApeR1DEbzezsqRizoThu7W0N4KzGsJXObhy6BHAwZUDuDR1yicqsOoSpyAw+AtM
Hex3ZczbgFm19uphHa+Pr1y9dlNywGtsrQDwlzMhhtpKBM4btMCgB5R3IG8saUAcAWsSzGyjE4Iv
wGVXNCVy3Vjf6nZXTqtYetRGiH2FxZWeRuDhF7iq3z0c+s9jq90UKzKBGifAAsWpKjx4/MkCaTT6
I2A3aOLoNXwt99iGQJ6/VXJzV/nBNK1B6o+1+vSUyuNKwV+5kEdrRr1DNU0JzuZh4J9xkAtBghck
scTc+VdVxoX6qOnxTUnmOrxs7N3Sdytc9yEQfyrl5SpHCYY/cubFuxRszk0rPHCx8RS8OaOjAZWu
ohLk7cIEZ1ouJQ1WB9DeVQ7gjnSLKDGYNV1/boqfKj5byykcNtA7LRZneMobl3hqHNgkUqWEmuiS
Lz1b96ak4FAhi5qTWP7ltxkcxgqAArx7S51tTMLZ6TbyIbwkmCfY49cGWu/EOq9aELNX61AufLgM
nXx++Pl4/zTlFKcLaj1LMlnEOMuT9eDr8dqaJjKvlPZwOK6bYZLXf/UczKnYSLTM3ij5tLbCp53c
th92YGfdn8/BaIWkVlJDIsPERY6zgmBNIGdD4pL5DAbC38gKKSlYEL82RUzXqwoi6ssx40CNUidj
K1OMrCo4twRNVRo0eF8qNDJJLTQ4+Z65a9Xexw/bYudjUV5navVq5sCW7s13L5+fj88PL92nVRYZ
O4PECZlwnFHLZHIMR4NjphoHbjHwpJNEOFfKBHFRuesyvtvbFqnf5WsFiwdTUQmHfuqpdD+lIZA7
lXyNdxhubPRggwhL0G8AK8syg0CYtOWqVa2M8T/E4ilOVklHyUKlPt4c7pYQgeNcraff758/9UXa
CKdqjT/S8AcqORodwSp52WKGh4FPh4AEjbTRMyxPS+rtJxwM9sjtmsK10TK9NP8qLKvY+5at7P1Z
RnjI+GZDE/+/8T/5EEYzwlAmUTwnnNEtmQLlKGTG3sBRsCHqPwVQZHi24PRQ4fQ84uT9tx+XAxKj
dtKi69LyPAsIAZQRjJAZSqjy1gb/VpNtP66PqWXr4czWcqIPh+U8ys89QuPMVZRPuo0eS+wlQ5GR
sjUpmhbB/zkFN8fZq5vXM+7Odu86Pr4paTQVwvVhs+3hw99yFRh7R0aDS1sMo+UpbpLYPKDS4twf
Tj0KcpDmcMGcdnCk9CtYd3ntrY6BRVEXENlXKN+djacxU0ArWQhnIgnY3MU8mu00d+UhLrknRmgO
NqJaYKIsVisoEXRtxlnBzXoY6ef+p+9dOosmjKHm5NZoPMEXpMB1tRiYBzcptgiM4sB0FdYHxGci
1xWHnra6cBLgacFErRDQ7rG8ddUn7n4K30SUq0OzL84jejfgMAjnkqcBKxVwTiMBD88FbB4kUuUB
r0SEqytCcZcLKUZ8XHLQVX6Gfdctc1N9d8Q4xRxkijNPnQmqiSEH+QRYiSbAQYYr6YUOvFX+YlZq
vuaCqIoo268ATibEodmgAR6CpijSLNaA05Y2xmGMOoAPTVPLDddXhsK2wYYqUENA3dpqsJ2klyDL
/3Z7afAK0wGuGHiR2iC2n4lwog3IuhikV9qA7onq7ZyxMy0bvQu3tZwacKgqbK9G0tVUv/vxFpSs
xoAHtyJXzVmtbYsKiWgsjQ0uYI1vaJIyPnjKHPgff95ES3hQ8roeXYcfTrITi5uOoNv/5zyJWGW5
SXGA4r9aO7bdRnHoO1/hl5FaaRNhY3Op1AeHXJRp08y2tLO7L4gG2o0mgSqQGfXv9xwTiEmAzu4O
Dy0BzsX28fHtXEAcpwI33VzQ9Zjic+CMHAvDgk9hQdVhC3uCsMFOfJ6YEB7y2oAOBubmcO+YY0FB
owxMjoYZHFPmTSmFle/UZ8JzBXN/WSL7Nn651cbvWSI5XFr50Vuxxz2K0veoDPIrfahGE8ZHzOQy
sCRDEyPuDCbuVI6n3BeW4/4KzyOdg56E5IcvTsrYMtusIiTojoT1NDDboTYVB9s/daMC4FKY4DA+
mLqYB0rF9TTtifJKsgWOC/ynFuANQl1zBO2TZmFEW4PZbccpWtaioy6eCO5LD9YKUsAgYZm+gDkO
FAImC7jR5GFkng8V2Af5ihqfNLn3eAv33ovWW7dZ6jcM2EGXObUJu4frUIZ7RHzE8TSRDzB9BJo1
uVRSF8vQ1W1PMDcZazlt9eLVc2WGgLb46+/J0b3KsvDAVxm++tDnJcNwQWiMIG10CYc5j7BUfu2R
45waXJ4g0xmJWEukigim32d7n1ic8tRJdyriI9d2LBhgLRtzEE8nbOCOLRPmLo70xZhP3dFP+utW
+PuCGZyePUWcnrcvPqzUX5Imu9f3xi4grZOpm5J71MeNE46O/dOxQK859HKR6GPP7LNoG2fomsy0
rL0izr2TPclttNlk9Vm67VTsCIdDPx9hwjKKmhm6i4sbk1zYjMJE27GdXvseHa9h4MG0Smy+yOL1
S3Vw8rDfbqEBroBvHz7PyTaKE/L8TqDjJDvytsswCjZMRYpo95qo6HjF3+u8enGlyltE+bfwJduF
b+v4ipTxvMpUyuEK/hbJFTH1h3lShHlRP28S/gi9+f/Qww+tVFADih76Ja3TpI2eBYuZf1kk42lB
MM+1Xr+Y5HCZbt4J7izhm+yF1KPjFQmyItpcW5QO3QXZJfk6TtLi2ry5MD9dkvwHOp3FYbYvQmBr
n6qGBWLxAQLzYX66NL7u1kX0vEkAARKv0cKCaEZ+wMsiSSucPTSqRzodRHGgQlS5+6+n+X3wKG/h
7n4ymy/viHH4H/z5ZdIN9jD/S731l493AblIs3SwyqJNkq+S+JIY18erA0H9trox5KpYf8dI8gF0
UhTflguWUu5N/YMY/oys1bFO38Vs8wQmV2GrStC8FYZyXsNwgMG1VwrfK4Fov4TtHmG8EuZxfuBP
5UJu403YDd50GMy20MqbVh6LGONDTE1Q+Sl0+73i8aRUHBatC43O5wfyeR6QV9SKKDUAG5/QokyH
4V0wF2XwWWx1QlzPbtCpruobAt0timP0ICDANFqga6J7adyoONxE4hOyTFcd7erqxV/I29ul3ysA
lFrYWQ9csRrmdR/tYvLWJT8Wq+k4AJNsMQxnEL0SxlknKaY355dSfRFo1rc8IfP0JftQpB9+v10X
ScnVCpRduwiwJkwg/Rsye5T3485KEPaQ1nVAAaaIVt8+UA7UGTId5mkRqpqTQY9qIPwonoIYX5Nn
3DtbqGbuouMe6XBo0zAcy0D288ZoDcOYiTDzhZxN+oFEs97C8HZ+dzMZg1h3N6g3tBf1D4QJJn8E
/dXmsrquGVMwj3dzfznu5U6IhuxslZbvVAKlXDtHuaYuMQ56bVuKageQPbT08vwXVR0sAzVk9NfC
0JmVdza2j4L5jWxBQ+UNhVAqAtWv8Uh1ocEY/wBQSwMEFAACAAgAk40uSi2p28HoQQAAaA8BAC4A
HABodHRwL3Rlc3RzL2FwcGNhY2hlL29yaWdpbi11c2FnZS1jcmFzaC1sb2cudHh0VVQJAAMF1HpY
BdR6WHV4CwABBPUBAAAEFAAAAOxdaW/bSJP+vPwV/LAYyEko98HmBa8HEiUl3vEFy0lmMRgQPFo2
30ikhqQc+/2wv32rmzpISnLMxFhMMNIHS+ZR9VR11VN98LjO0pDnuaPWP2E66/rz+ZR3P/Pgt7gQ
X26aFDwpugP+wKfpfAa/1T+wgcifyrVf3DdFwOf4UzpdzHh+/Onq/OPF8PjN8VLaJPNn/GuafTn+
xLM8TpP8uHf8+7U75tlDDHiOn9P/OA+Pl7/z4ws/vBofvxCuchbB33gS88z5DmuVJdimpQbS36od
+NvFXf3tkeKmEVdvn+a8fuDvlqEZutq59Iv4gR+B0zLhwutGC/z666/g1j+VjznP1LNBUxlDWFEG
fsGPb+NZQwNB2NQQ1rCuYtPRqaPrXYsaqoYshJSrsbrLAPCgCrt+VzHqYtw11A5m7zHB5Ei54fM0
K7bOwljpJWnyNEsXufrxYwXj0ELYtQnW+j1CNdPqU21o232NmBiZGOANmKEoikCu9r76X7g6jpOQ
q/00LRyV2QghNedhmkS5ooyf8oLP1DNoh7ssLp6EpwoeFhIKT/xgyiNFcTM/v+eRenufcT9aI0Gq
OojzuV+E9+pfC74AT21aeebHiVbIExRl+BjyuRBab7Lh767X7w28nusOx2O1Mz57Px6+/3RUOV60
87rdfhveXHpnl59652dw0mBwI87yCxU9otqHooqESzCoptG9urkeD73Lq9uz0f8oyqcL9YbfifxQ
L7mfgTCKHEXTTlVFnOF5t8Pfb7fSbqkJI8siDH5o1Q2m8PEf4jDrtz/VTHs8zr4+quOL/3KvPv8N
M1bpwUFx6Et3jec8hOwNISYmaTaTGx3FvemNP5xdvldvh+NbRz0GsaEf3vPjNIvvoKH/WqSF370v
ZlNFeT9NA3+q3ma+iLrFZAI51slAX5ZzNbzP0iSdpnegb7qKwyNHYaRrU2phJrzmji55IRyx5fb/
KJvanEwm1kTnkyig6q17DWGSJNBy5iQMiG8ipkdIHY/P1Q8+iL8XSTC4uhxKLTrBwBBttHCD2dta
GNa5jkTEg4cL3lUnkBmEvFN5BsyHlroIwS10MTOcULpXF/gQyAx36yos3WhlTmSTYK+KvPCzAnJe
iAZC0c127RFak73tIUXHyZ1smITfpUUso2upCxvGK7TKUle9VbBdaxVgSRu9Qqssde1qFQuCDL9C
q1Rdt2wVi1CGf9xTEUE25VueMjaeol0E4WvpP+6pla4tT4EKihig+2FPrVSsPUW7GNDrVgvRhhnY
EL/DR8GGcTF9An4qZMS6I/BT+iXmID/N/Dv4hs3gNhG9UhMzaRtNAWER3qVprxqlLL5QdJfV2HFe
WH1Rs/flphnfhU2WLz/A3EeGujzOcSrFwRWU/yHNC8cBvM0dnc+3I8e54ZPrIjvZe/rpL78cqW9V
6ALtEtwN53OHWsaRgtuiNhGm+1G/z9LF3HGiOPfzPA2BefggDRei/p2nfsSzzvrU+naJlphM7SyK
eApdJMc02JFC2sILI8q/5dT/3bW5IwAAxdf103b6oyCwUaTusRE0N5whdRJ7TyPdOwwg6Dt69epe
CJYdQFgRtTzOceB7C8TWNokDetqd+mYAYEHXmbXzwQT5IQk3PhiJ7tZKd8QLMG+UpbNyyCA1C/Lr
VA6T0UmYDrqNtrp17E+e1e3ex9MIVJeaGduhWaeQGGZbzZYdmXs0Qxa/LAveCFDU3sYEaQehYLXF
ZJu2vQdTkflJHouAu03ddDaLC+DzDS4ZhdE1kKPERHQAVXKOiAp0pNit/RPubZlQ6ocx0UMs+uP+
VOyQDUTxTmfYEBoYtUzNSLeN/ak5iZNY8L34H6pBJ0oXMCqTiWGRrcyQMHQLUOB2KELs82cIYuY/
BdLU4WxePEkX2KRJipi01Rkxe79OWcuXZl9AQbvhebrIQi61M0b3GE8FEtoyCIwosvYGQQKleSH/
700Knl36D/GdpMTrFMjxaROcK4Q3HCpyXgCEJC9+eVcRDEOqcQHF5807NUjTaWVXbzpNv25E36Zn
yYM/jaOPN+eysSkjClBhC7MCM9TNSaVRS7iuP50GfvgFLINfHQFDVmSsdiaLRI79/amDGRWxzFoq
NDAMfZsK73n4perJb3ix/L8nkSzjHHi4Dh6SXTcBn9GuBoWMQ2JUalClpd1pDKEk+wiyVzWAgXDE
S7XQbhu8JbIN3uae7WZvFRd5AX07z8OQ+svmOHlI40jd46DTsoPSaD3TpuAds2XrMZtZ+1tP/Ggf
+40wb9SV7/ZB61RbOooR1PCUKOfYassXBt/HF1P4/hwX9y+srO92iBGzZHtMeSlfEJNYuwy1WxrK
Ah4+Y2hne1e9RWQCYyhwokqLniPUJoJaZa2PMPb9ataK8l/qXyrrrHYKANCDAyhAMXkFAwVe6ixP
LQsFZkAgBLeDAhULXChj8ezadZx7P4mm/ILnOcg9WX7nFZAVj7xrmvBOXQd13bI3R98w6LQjtQNF
pWKMsiX5zfeLlsEDbul8qJom+BY6V4S0cpcV6DrwrcS6FHTDQx4/8OzCn2+odrmvNEoM68spaLCr
ZmYZS1D3t2WVTUqA9Aht16ImtnE9uJaLBYAuWmpogU9k3UaIhGUQG2Dp7TxnRHZA1YbCbY9tiHKR
xBBl3hwG31VQVS6N+MRfTAsv4mLGp3bYqXq6zFS1M+OzNHtyiCGGG4S1ww3DcMjVvbivkrUzpT5i
VPQxoa9W0f/bf/DHYRbPiw1P1QiKTmBcBX1IOfWwSM7TFMJqzjMxd/05zb6UWoyKVToTrWG21EIC
RJ7RIpKtHCNBT2V5hDsqZzOEulp5EUpG6SKJyhn3rekhW59YJseq57mjm4+X51dX197Z2HN75+dn
l++9q4+33u2V1/PGVx9v3CHyroc3o6ubC2/08dK9Pbu69Dxhs6kQu53WyJzgsNRaWjBIx7LG5kh2
uA2ForYSdTqpSoQvOXIwFYpbijI4tdSqoPVKBSSdDdhq1PTh7BZqfpA+7pmCCxEKbcpUkOMuMjHi
Hz7ImpzOz5ILsbgIUilTKG0r1TQm6pI2LvljKVaMY1NhuU6JQvW2IhkMUL3+NA2/fIQO9HQt9kJk
FAyOzuO8KFGLfscongKfgzITK7SWvb35fF/2Sl0m8cNoYqje4Hq8ViJiCRnQYEZbUQRyWfvjclxd
XvKSJvjlP/kXYDAwTiy7OrE0BviqnNj8U3iO6Qo1W0JAkYW2IGSLRAg0LGgKq51Aw6eGpdbEiYGp
JE4TQhASbhoHj/OwGz3BD/W5WWDbNAKgW1314HgvDf4VerNSlmkzRUftRPmTIOCqkLQUotu6ouNn
1923uJsYZojUlQCo9Z3N6qOwszubOZhCN0AnEh0gi/bAq/qNMwohHJVz88JX68ls7MjZaRCQy4Vo
DwYaCZ/WZdZFMZ1xApQiJtn/ksdnvFhksg2QnDXeSJuXM+A1cVVplkFtZlrq6kDv61/lD1mZLCpn
eVuJMyn4XNpZk0XXFpNnp+2FT5c7tZmfQJXMvsNBUOXVL3KtxfsrzWuOWUnf0WrVeEIhN7DBVG91
vDe7y7w4eUi/SGLExso1LxfIojBqCFw7iJG1g+g/LiT0f5zF7B9nsfGPs9h0qsR2OZZl/nazItnG
FXo0MQnUJUEb+Z1XZP58lxdeIojCoGolSHZqGyt5L+iIWhjGcpU+7bpAhvfXqSxwBJPGAt1LusqM
h9tdZUyh262rr9xXrq+cfbPfoyMS2VANaq0oV+ZsuRDWLhBtO9oEYpBGT9JMLBe2WkqCgfta0rp3
YVhyPaplODOsNgVtgtn6nvSFcSO0Z85nX/248PL4LvGnu8I2fL52Wj7WaYQmauInaT7lXMa+ba9y
Nnz7tot398JqUkxkI4IqswHFfZwvS7DjSMEejGcrMwrltVowdl9kMtROpmlyp4o/1UkFue8ET9+B
ZavP9FQ9rcy9mayRDt8ccOtY5zxQg5k/hWGP43zgYrooD32Iv12zHmJsdLI+WsyVxuHFouCPp79U
sX6PRdPV1IhYkvW8mZDqBX7OHWybzVXwlxgWAX00DANXheUodLwyUS7JWE2NFDeXvV+g0WAIbzT2
8qckvIXx1kkNxGrCsIHszVHn6FTEigiTJZ+Uq3+m2lmL6t47mLDmqvhLoOkoehVow6TInq7TOCk6
PyKuXFO2G4vsLzHECCIp900lkLxlennzLH18Oqmk3gLELlc0QO+PIX73Qw58A+G9mb6yaXU6zjxq
z6R76d1+PXrH6HXp3W70VT7enG/mLsvVjkOf5e/VZ9l1oV39OsFA9w3opPzRaM5O2Z5HqpctVxDF
BjmjK6eZwA11FmvCbmrSbYtwQ3j3clzGk1fGWDkNC5H3PT2bPUlkvV4S2a/cR8IIsmi1GqgCXabT
aZzcHRLnb5Y43xLIsGVjrDan7M2Wl7wFPrGZUbn4ZB0Ry7tInDiJi9ifxv/m1X4FEdf1NI4Fb4up
R0aPWhdmxKzVws1WR2Fd9bC5a6ncaq0qCCelqq/F5Ha/Ntaosfar0UPrwvhMjcWvTA9Y0INwTm9R
pOK+kvA7ZwMYjQIDkmcuOjv3XvggxlffOSvii6sk1vaLm1G8pTTTMBts8YIIMHxilkaWtkHZieJy
AbSIZzz6DLLLy6Tl4ATGJpWr+cTSa3kaBP51CSnfXBDdcgRF+YSuIv/az76IZaK0cJw5/F7Dgu7g
09lsPpXBWQ7YxCUm4pxxmM55dO7Pgsg/EdfPqNBZ3Fxls3VI2cNsHiLuQpPXwjwl/iwOXTFOExe3
VAaHxICo7WwglkvmSG87tLK5jiPTkNf6lMrXZvbF2MkRDSvXz07k3nOActpZ/2yBGLM64HvHaj8s
gyE9x1FtsLBioNXvk13psrwscgOcZxt7hKHrgbfj/KeHquNa2fn3izR7DcGnq0GFGINBHGRCcOeo
XG+3xJXjdfHlFcyIth8k/gCFm/9fFP6PGCZhcqDwA4UfKPxA4QcK/1kpnB4o/EDhBwo/UPiBwn9W
CtcPFH6g8AOFHyj8QOE/K4WzA4UfKPxA4QcKP1D4z0rhxoHCDxR+oPADhR8o/GelcPNA4QcKP1D4
gcIPFP6zUrh1oPADhR8o/EDhBwr/WSm8fvOVOxqLKCm68yx+8Av+HffdIrO873bKwwqDt7oDgunM
l7dnlGAuykdxSAIn7e+V39ss9PWaRX/lu3mQGi5f+vEVeEu8V2X59g9VPohQ7Ri6FsTFkaOoauY/
Olvv4EDQcFmwb0e4b0dU3YExsC8OERJKonjPKfl6h7CNmTRiUSC1z7d3WPKMHTtMoUTNrB1KRMJn
dg0X9XXuh0IWRrsAix24KgpPDDyxWCQswWSPJZjWlQQGE4+rhB36PiVs6wzdl+6K59U968e6q9lk
2tCOEUHi2VnZDlhUyFLOl6/rcK8/lm9SwboyzLI0k69nWb5cZX2qrtyKe7YuF7Ng9Q4gOF5R+nHi
Z0/q2Uw+IVFZvUjlcf0OFVVT6xsNaJ3nn2DUke8F0tT1i4HUE6tnDUYmYZqr97BGRzbTeqOBq+lI
t0ewzXINdPr3ewlLzXKKdriDIuGOt5uHC47v49kyxTsILNd7TB8OLVuzLKunUdscaZZu6VrfHvQt
Ux+wnu3usXxLYgNPtI0nCPhksutZizvahLgU6wNCNYP2RhqlxNL6hA21ft8aAdkOen1itG2Tcl8V
p02ZuYXTZjScTIJtnOf8zg+fdqFFNqHENZGGXYtqlAwszbJ7htZn1GTuyDQpwvvRlnKfw1weUUNu
+v4Wcl/3g4aHG52NHdhdhCwQxzRiUcA+HOhajyCk6a6Ohqw3GhK0Mwbqknejrx9Txe/7YbiFP5gw
aztC9gG3e9jChgEhO9AHGjWGBMK4b2u036NuzzAMe2Tucfp+xMudFaiYRsRoQoWNzN/JNbc8L24W
ScKz7lnyL+hQ8Ki/EI9FVTu4K4RgkXeMYmtEXM3o6QTyDiNIOdfShhiZlAwJHZjD/fGyUVHX0A3k
V5NPnj+paqlO0BaNwEaTTSam+hZyfOkdIWu8mIvXkNXYxBiOhpTq2gANdY3qpqEBs/a0IRsMXAsK
k4n6u6x6RnAVnemzrZDHZsBCga76cJqLwcXteT9Lk3/zQSae9ipcr5MudJfB/V29SwTpWzY1h0ZP
s3AfaRSZtmb3B6aGyRBSYOTavX4PwJavOzs+j4MMStHx8BE8u4yVLTV7/L99oFKiF10Jg+uskgjr
jTb0F8Aq8bw8tUMN1CUlaHAqHbma6yJgRey6Ws91dc1kPQsxd6gjPADQizwTTj0WZ1d0WTrVaVMX
bDRYw4Pjez8Tr5bp6MJrtGvAGaufgGIwGBALY4jeodsHthtB4g2HWDPs/siGcUgfSua2667L7vlo
lXX58VLN7kRc7qzB1xHZhg+fBvwLXkDXo8MMCVx8AWiKGLZMjIEtgNyAlm2t18NQ+RAaUNeyhoZN
t0FX0Eqpu7HKXXWkBtpGyrAtkULTPFzE+eopPgCUdhlA7I8MTEbmQBv1aF/0Q4Da+kMTEOO+2yd4
6LrsWYi9MIQxDAyB95Bb5dAHHoKA3YfV8Sl1E/xddkWSCsVoYh4n0WI2X5mGbbOLZYE0TWZaIw2N
ZBdLhz4GNobQDoPRgLiMuK5VCdwtSTUQZpWP1xshCpbOfcynxfoBRx2sd3VAYBJ3gN2eruFRX1QL
k2i9gft/xF3bciPHkX3nV+zjRDiKrvvlsa7yrEerkcZW7JsDAIERQxxyluR4LX+9TzYIoKu7CTLW
DG2EgqTQPVWZXZWZ52RmoSs8FCzdaTCiEHsJxsN083fY8/Bh0JtJPPiw+na7+eWAAv/jnZMeFoR/
tv+DDKkBJISsGLcRMnELmTSPzPBahMyIbzmeXXDymYcJXlzyXp7l2/t7LnoFr+Zab1ZiovWIJ7+z
l4E8rjSBFkDEUFTkjCcB31UVXK9tigkNbmlNRPCQZ5U9jbwkex5dv+hFXHAaO4J4HdB42G6+De+z
fOeGMA2Op9wlOV7IXmU1RsEUpYe3VTIA2qmEH0kkYA2ngj7vPD49jf6Mr3u6OpYbW2wut+FGT543
fbHs9ud4nAvu5JJfKkkqDH+QYxHOCQX0nAUC3iB+CDmwXCKvvsqI4Pwah/0017ISTxc7HQS94nSq
A70k4MlS/+fb6n5Fb/jYHqzVE5DgDfYYGrZKBhlREdQsqVhZ1S4p420JfOwt9imMPy6MNxFmvSTM
7uC7htdTHuRw5JCD0T7GGpiEi2DKQI5QyWfI6LK2iMbaLcoxGqoXIagFEcLUc7z/YfDk3w+pPXqr
5hg7mqA89ltmNTY8HJcdi0oZZmUJ0ZSaRbCvWczZJMvLOrttotDVkkJTnvcVoXxEyi4/0v9DKT5o
Je0QoKs3zfHMiiuEHgEoErHSLJrhCIYBu/W8M1zdr5d9Q+cGP/ayjO8aLk302y3ot5KHDTxkBj/l
8c4RIgzRXCofoEqEFpX8XQKviuCyLdVSuchYqfP6/PB1e/vdh2f89HD7NVD0khC9Ciu7oMLOTjHf
b1/Wd8dvvCbATB7Ec03BE+uSmrOGhAfBaqIybzJUS7L5Cs/os3wV4htP8owvHN/SKSLVwlrgw4P9
fiEU9jcqcD08rk4QBNrDD+o96i+1RiGkYw6mgkVpFHETflREqZzwYXqVJ/zu41/z3Zev10BbIzWe
E6JXQ/MFNTQ/bKmbIQQf/ZA1l4ZfegL/sIliuWEGpAwIRgtsKDDfmpsSid7xbPiiNxqP2Ili7WYu
inVTYnuHjfgZgFqAAezd0PAHRLIyBJcApVMu4LHRwWaLsKxUhycZG9yk/D/v8f21TmC3ZI5uvT48
u+2Bnh0fHz24VoKRhdIxqWamMgJ3GF6CLYoAjTHZ6NpDv8k4nQwhLISR9coetmG7e7j529W+bHf0
CfZSkh2ZRok1CYRfNBA+xIIdKcFyRbBvgZIvoZdkPtpFP6+bC7O50hP/u+fW/4DLRRAblhBw7lKQ
RcSSqlfGMJBew5TC6kULkFOwv4oVIJVZv4hBaezlRTxcvegFnANos93KwyO83nzbUIYmHhmSEZf4
jx4hvGpIQlumvAaPKxowMuNHqyqIYgrM2PWPcDLaWBLL3ZzP2AMmOD2/69tfT+oNcYuArRQkkIBj
hAVCoObgG23ysAblGHYVj03ppJR/i7j1fixDF6Fvf+10EoIv6CT8kNM8VXyubh8ero5OUhrCuqQP
HAkecfDAiZQYETazBBNhRsHUgNWBJMuim5mPOxErLIilp87mO3qtu97jgsHHJB24UmALKqlKOeoI
4uaAdwC/bA0xCM3PPl+MuPzgcKGXcL0k4c4dvMt3H4ZKxNGo5UBtwQEaqI2CW+agtoHDgAC4wdq9
aqDtHIb9NnG+m7+TXKsFybUx02e7vd3uv8Z2dfPp6X3B7/b+QKowaOOzx7bWnmkZCF1iX4cM/KKt
y0E5RP0UXhUg51M9swjzG3vVzBy+UJHrsCjt7vbx4+r+AYH4sC7GDxkfaV0MsWqmhcJuRtjHmjiF
CNVKDtZY39r5dMrpnR2vJtnxL89stsPb5x7+uCB0p3Hweq5x8JsjT7n7+tsOyOO0Dx35caLRLmXW
FECN0viRksU6Zmta4fSd7XKZq3TDTSSZo3u7NlPoOOzK9z+MPaS6VHukoC0fhFO2GEoR6qoQZKJg
QXPFSrZg1Z4H6c9ntmZTdA5wf7ETfb1dcIIbbg7b5uPt51OCaJBRwpM4XTjT2sDZxBKYF8BYgFwS
bkZg6/wbMnbLf5x8LLITV3MjdpKrg8ibP/xhtb4+SK24GxBtkLK2BDPlNcA9CpOYl46z6kXMWmkn
M+/j4XicTgBp5xvPbf3VNL++//L3Q3ZHc32paQci1gnRbGWleLBlepQ+YwdmG5KU3FQ9JKfP2tsz
tbv8dO2il2y7IG7gBzvJP3//6ePNt8/Xt5NaxZPjBlxWUYbICuUWVACH9pUXZkM2Dt5BJ8vfiKAt
S9JrE8SSNqsByZ2i6+3d4/Xut5OrQ8zmgzZF+1Sq0ow3B2002FnkrQGGOA9oFLzL+VzYHg/cCbYT
88fs9azq8v326np1eDHVIV3hlLgU5lJy2h8WNqVacizhN1Mc8M3HACvTCgG+SZ2bfSEDf5riuUT8
6Y6LXt6rBSX8eqLEOJ/6/vZxe09fwP9Oan9J+bThNylSQRsax8ZxTVCM9EAkFYivBa9S0TX79JoY
uTTb8yh6emevn58zOVCV7W67t4W/l08fp+UG47i0hsNeG0d8LMZTTr6xUKGb9Lia1O9VbjiKd9Er
sFvQajUtVz183W7Bb++3m7vPt9d9aoHSodiDQzZUDIYSqonBY/UaABLV6g3xQphMgqcXPmdt6lvg
9U+DVD8tCdXlO6a39U9gM3fJYC3h4BUISPy0/Xz98Hg/cgpm2KbR8QI+SYnLpsgfR0A5EaB3ClTz
r8GK/0f804vdaW2VXdBaHQs8iz1r74DyLsWew6hSRG06MzB88OyYGkJRHpL2ItdagzHhnDPsRu5E
27k5dfW71W6yJct2/e3zPpX1QJKR+xBDLl6qqGU2gKEB4EIh7MPgqgRO8y5S2dC8LgM1nmH5iY/v
6HVY8wUdNuIIML98PeafCEinqFOTeHyuadiJAsMNpThmRcihJq9qbhOIcRxhPHHgm3mMC0JM2fZe
93x3u7v+/PTaDYooQg/l+4F0e+yHyjWeogXCwCOlFFQ0rPnQEq852ZrPF2TmczyXj5zd2Okk1TwD
E6S1E7Z9bLtSgpPz5b6KIfNoiWyp0iqLxg/lfKeUSdVVfW6Hfll4vFrPIzV4g14Ics9W6QwsBkAO
UaBRrowSpF55yWQB7XemIZK+XJI8X6mLk3suenHn9hWCnTJZqrjjX6+GXMy+YBecvFT7JJvmLlPu
QmqqHglDRX6ADVlK4lpyfPx2VdWDJM93BtDVi14du6RjmKzTL9ubr7TvwaUoYTfUSEyJGkiP8ZRB
8kykdgZHnYqBm1yabla/Rez6E6Zevomu9Mr4JWVWflrS2pyCCLacH0Iy/SIgXmotqVrWDPU9JNJK
Fs2kgk3DlWNnvyrnMJ7jGaY4umOsxYqa+6darLjdHiLOh+vb7eo+3nzeYvJTpcfKIdK2Vo2upbHG
gZ9U5lTa1hE+PbqUKNcry++EpBYE7RVdABQrYcQBKE7eMAXz8pIyg7ROwIRKFSkZ1cIpj56x+2Rm
teSatK3axnbOZy0ksDG1XJJHHWJRuV59vr17oJczPb0pPd9cUyfsUb6h80xqlWzClhFUnzIgwSBx
wDsmSiwSQtZQEx1FqPPjdiJKOeflK6n8pEf0w+r2cwQu/+3hmkL+k1caflOWGE9KCKlYpDYC5Q3C
vsMWQRwwRRuQaGfeHIyNRXqu3+N0R6+0WlR6cwhrnzb32+3tT1t6M8phLbS0l5rsASwiu1AE08ZR
S2ngLGgDLpqiBN4W3rTSL8d8uIk0VwvSrMUzPRy7LroN3RxGyKF1LUbdSuGAMtRZwGNkcDyIdjal
0ADGGnevauR4KcTN7+sVupojoZWx7lTL3KxGnsYGO1C22mzmYJjMtOopyZdAoeF3bIhG5ZqDi5P6
UTfQRT+bXxJh6rjHwXCph6kSdqHqX82Veku0xMaWBaYHm9M2GZf8vxltx3dMVFjYpIa6zPsWmQrB
OQUc/BxKXjpIB0Gbp03gbWJRG85azNIL7IMW3xAgxPpMv0ztdVnPue7KWjXRJd182z7e3T3+QkUS
ve/MpN+7oa2YO1nhYFgD1MFaZDiZBMYXlArZcVB6c57xvf/hOP5z3SDHGzrp7Wbe2LJywo5yl6OO
PLmPJ75lBVhJPZjExHUAr4jZABJb4DeQjSL0LHW51JG3ctosTB/4AvIdUkTvf6AdsU9RaxeGthpX
gsyA4dUJctAEyCuMjANwBQcDdKG9uCmeBn9+Gz/d0Au/kPlbufXMEH/5djsc9dxPTUVlRwHGDtn/
4pr0JjPwx0pFSARAHxUzXlotlEEErK9KSfWTPKNIf1OvzEINDR9OTfIvOY97mpqpFRhJwWvQw6fT
CMGlyqTMCURJJOjyGvEx7LLIuDARc8Ha3JWdZBhWDzdH3iYVNWIMZiYaCdWYSIgkqonCUlSR+omN
c7XgyZ/NLhxH7UW6cgsi7cQh1XPzzy+rS3PCPQScM1cmiATPZfDYiADH7AXjxVmuVMw8TxobxoN0
s/v1Ai4Mq2Px4R9fboB1D7PLcCmGpHOKxWZbWGmG+FblLFopAOSNLa0IGZ2YNNWOxrno51pYkbCb
kleq5D8cXC/1iG+v2vXN9sP1wyMlaoeuJfyiYCmKhFm4xBw1HitpAL5kgKMpPCoZvZAiv52b72V5
vqf9dE+v/m61pP762Fi93zprOgf+cIQFg5qgsyUUw5oFmlEGpp8Ud2AgAJlZahiQObcbx0NORJrn
lFcroSY2QivyeHOUySuqSJBgOfASq/Jgpx5k1YvMIqAfk9FGn6xzVvqzdGE8cCfZdoFz4sPtGehy
2fZvIiZoLmHKgg8M9Pg3NSg3k1wERE8ZFq1aDCyG5FkxAFqiiuDCG3ZjH+R55sanq53aOzfP29GH
hwX5dfvbl89HNC73PWNOZJBTAEZCBBnsKAGwsRp8dlYk2+pyz9h4rIkQbkmIzcFNfbv93+vbY05W
mUsCic2CIGIfMoR0ylsEOMsEqailoKUEgjD0T8/FGI/WixEWeOMOTqTnsV9vVo+7u/tj9s1p2p1D
HjbEgFgJ7Owc+U6lmKeGF5tV9D7rBGd+NkXcjTyRbb0g2+poy+uHL5f8+ISGwwlVAMFoGIinvJVx
miU8MmaKaTFlJ4Oc8NfRGP3cqwWj3W2n52J/LFSjF5SWVlwOLdeVzqRxJv3gIoWGsYKpNi8L9clx
W9++WPBjWb7lxzLWaQ3UOtNpzcOxL2f17fHuGBc90bwQQrWCN4ZQneH6gYRiyZGZmrkOyZrSUv88
T2P0U4c5SVoLf2xg/8+PctJG4FqxUiEm10JnER0dqXWN439FtrVk26R4ozaC4+SdyHKhz2ot1ZRI
/Hl7v97e3z3QPjjAMJG00zrBPRiqiPsqgWmMZRWsXUnHm6znudxh0GXhD1c7cdVCFX+t1tNzrEv5
+ho/ei7Ffw9nfPhTv8mQbSmiqsoBSWT2xCwEjLt6uPKoYUsl6Nbya/DkYYZlfQ5XO33MQpfy2q6v
Jo//r+/HKfg9EtbKDoEoxpSMtA5UhI4dULNbgg2waq1JJfpSm36N9OM5ljUY33HRC7xd0mJ3SP/c
b7/c/X077kLSA4kysjYVKhO6QHILKgonG5g21oBcNx+6TtuTU52O1wuzmfvTNaLXLNzf3N1/+u12
Q9Q47J8o/X5imq5KeHdDPZo5SRbKUDNSAZd8ad69uXc7yvMcHXy63Om6u5r77428mur6p/fHVgv5
VN/2Tw1B1Biussa2t3RyXiPEhcwra8InBU9esRZvUiN4f7YV43j5otdELqnnZuUd0GRKij88XK+v
b4ZjWXsbcWHo3IF3T1BRgJZDT05d/B6OHihNyRSCT/LlTpJu/DP9JN19E238kjZT5n7K7g9lTPoH
o4/oEzIdr+iUFp13yQo60VmjRkePck42yerqSwH4hRrC6Xqnw3o9x9KbKz/tIP/x2+r+8Z/7o/iQ
mDacJtw8VNtzjTBHS9/VQMfvLQwLEJ9pZ1OzRTWz1A8zxgHHwZ/BA8frnehbOedMV1IeGyU/xI8x
/3lWrdHA/J6+5sAC7jMVwOFTo55JriPP0jspfq++l7GEF50Wap5Pu1JX0zaD1d/Hqe59J6/g2sLt
Dc39WqRSuGrMGHIIiU4UU+XeAc9pb1KsL6xM/PmlEDK+Y6zC1ixUELbmVEGgw+lHEHw44N4EV0m2
xIqiL9LwObEQZGRV2FRy4jzyZaJwGm0ixNWCEGY94bDdl0S9U9ToRTUvbPRhx4iMGNEgVU0uwaXy
wmJWkklnPAdPiJnHc1xhPHwnnpVzMrW1Tx2Xo968/Yvrjw1c/piKSnSwJTnFgizwfyU6hkUGe/Ah
FGu1Nlmc7fobj9yLdqUXRNtOcUxu1AVZru+3m8e7ISvJ995BhOFwhGjB0FlrYyqlykJhQTgBIO6z
sbHWoP2LPZbH0V8Oue0V909u6rXeznHP1gl5wvv1uwng9zI2Z2FUSVULdxIjC9pVlpWO0vMG3N/e
DPAfZr/o5VNLQh+LSV9XX0apuyFx2HIRIRVQk4Rt02Sio8yZ6SxVBU83TUwOw4/GmMztl+YOxzrh
oPZlOuX+pT0kXLiQBmG7MCvoC1wiWBI1aIGR26alKzKXCevtR+sECasFQdb2eOolfYifZqEgQWHh
pcV+THA3lMlMzhSWASe8rRJhzP5OoeAkX6fW2i+s7dqbSV6wS4sev3th77wSAnAEDQbnoSOPcKk+
hUhFfK+sbUny8lIarh96LOBOr+YedueUnvmJ/9q7GjrSyC/t0NPy9Ndw7CQFoPLKCoebBUyl9AM4
qIymVS59/Bdv19LkuI2k7/Ur9rgX9uL9OOJBtDvC3nG43D1z25Aollvr7qreenhs//rNBCmKIEGV
dqfCF7ss0kCmBOQ7v4zqsqKa1t+68+PjGe2W7MnKV4MP6RRY2Ja7bWqj1UCvlJi6IoE08BWDYtUW
vGTihRWLDPeWpLWkW/dQw4eHZZXrT+AiPfefjv0/z+nYk8bPqoAZQwU4NQazWBzETuPRl6dSKkG4
ZZJflUNZ77MlmZbvlVwd+jVXBzIFwQ7Hp2+753OjqyQ0l7LjkQ1agA0vscLQYTBKg76VrQPvLYZg
Ao/J1ntZykVvyq27Cj1MVnpdnzJiVQbAwfKNrM3U0B7FVQsmLWhZDtIdzqnVWB6XGlBn2jMNN8z7
t3CuUEPdnsjYbo+dXpmzSmW/Ut3w4d0yG3pRcXPqlHZRNjLkSjMCWg2VnGE0JuGDqKIM/N8U95Ya
tlRRtuZAqcku+vlDSgs1zDU49DY68AQdqGE4J41JijSJa5HAhgxg3r+RGj7vXhKt1ieegog7EX3s
Hu5/OyviobGeSEccVioxdJ2wmNWA/GgS08FHx5Rv7bKbdbbKTbkVrexvlj/7GYUhI3ZgBIuiShxE
CWX0HR965S0RWicQwt5wif0xtDEonVNMiTAPB8HGq1FD8jYXgEPy85Kd/Vos0j1fBgY/HQ/9w+W+
k6ADUxTLj5REM4PCt93qhioXXOSaVsNpMwbmW9RZmL9xU9Lb1ZjoTmfi5b4751QztJanYBPrJmgt
h1JrLxSYRLwFE0VZk0i7kSjpKkdiz2vfoVIL6+GI6B+nY6k1Krl8OJ2zYK6BfSYiQjWBX+9UNI0K
DkvCdUriouVwXrYkSuk1UXd2KYl/O+YG/LTr+iHsgD2FKKDyv1EHSwGWAagFwbBogGjTOAbmY5Cs
hY9ElPaqmofTDhtCeXx6U1K7CprA9bjrKm337x933z4fu1wSmKEosFQZ7J58MqkBwQqOLuHOwK8d
c0cU2D8xSLDfdUyvdODMN9guOjm9MWeBM23XLDAzNQG8T/8Y0tWLrjlwg7n3cB4IttYifubgcVIf
iOXJaK3fCNZkQUFJvdmtqZd0t7SZdv8MsM3jboTmw3JAitXuZpC+FFQGAzcIJJlBBMkWvn+szDTW
MUZaakRFyc3TvP+x3GEJ/jc9L8iX/fpe8t1uDyeouAJZJ/3bv5t8aswQypbJCwqWJ3gs4FELzhun
Leb8rSYpgKg25M1clqHfvPra8Kzg6iDWdgc/yAnW4ffd47kIbEw7cpDRSamGIYYDj+iSRkMbYEUE
Iy3hYVECNluk3Fzy2ub7hVQBNyDdnqpCh2SREeBlcAE0CIy8JsYQ5QmTYEY5SlpHXwEmy2vWv6X8
qKCzv1tbCYLQc6HH/3w5Pvd80gpUZVkcweoFeaYbSx0QqbFDQ+rQKGXBD7EhGrbIaBYL3RS7cVYh
QUzWVfgp3b7A/1ukqEG8greM0t9hpJ0o3XjmXUMCc8Q7b1zgJQHlMiUF66Z+K9hdV6nXi0OXB8O3
laDZW8SuXSksqEWwy+HLYNjzbBC7uG1JwHr7KzBL4mbTxunpTUnd+soKTtZJqK9fH+5/3N33ufEL
DDWVBX4GW251TqxKicEGMK0QcRTMK8apAFvbsda+he8wJ2GLwfMbNyU/lZPBxbKwpgrnNeYGaG6V
FXoIsAC7xjnlEeHGYmFfbDyJ2KRsQ/CJJlByb554m8i5gPK1VOmCyxrr50aEL7v7X44zZZgt5BBE
IpGCkwRaY0h8BPQGWw5qJEViGFvU381WKbfvbGX7fmpm/wpq8WmqB8cL2cIFsB5BFDCQB2Ytmopc
NeCayWBNyxNZxPDma5Sb96q2uapADS5+CyDF4M9tcg1qlDpy11DBEPAsycYnEBitQ+lElTBGvM1v
XXlxwc/awhTiTi7Ms0P/9Ovzw7eniRdMxeXA1PAHepVOWaLgwAYCpjjH39pLYxsilAKLXDD4za/r
1sxbnajFF7aaNlcv3pRcqBpr/cKiH6NNKzwsbiRGWTjKI6WIlTHoRkluseIZ9J4EE0hIhFhPKhIq
rsgdbGNlWVhpv6ZW3rHFwTpLEryWfz+m48whJSBRSK7p4dIycN48x6775HL0OsLxMjxwBfZnLc5e
77rHLbZlPz4t2NDrvlX8UKxgG29fHu/AX8htUyD681Ea/kJZyFrsrlTgr2CTErh6jUN0JQFSQraJ
KfaK1prW36rNHx8XtINFv6bdcHGq1wvvM6AA/n9P5x5V/Q69UaHBvkQgRslQzxKtG0fAOY1EtoSB
PlOc/hW2ZgmmsSK45FdU7Kv9HnGpM78P+//uzsBiKuONRikjmM0asYFbLBeTYGYR2QgRtUutMoEt
MMXmq9yUO60dE9ExuRmEyQfue/eflRPPPUdsOt7oFLDvmoOFQwJtBGfJCRpjiO2rZg6ufeGow9Ob
klRVo98sIRfG9qbPcFPt2GFFCEoV2mrfSrDIrMZ+IKxocG0ApdC2zEUmVDRvAuN5arD67sPlBqzv
PpT82cp16Pp+wR+GgTuE/hjb+NjYxgfOijcI9uYIASsY9BvWEBlwGEQb4OxZottXvd9wAfAwfF+S
u67Bzh+exH0RBP74fPxyRhwcAtYukuiCAVMTiBuusLUWnAf4URSl4Py6hd+wseSCrIoxfBBTu2z3
8u1pFunkAyCFpdIIJ0jDcr6Pt6ZxinKwDRljBnw9vQQBn69TEHAwpkLAGfvnh5wFmJzNjJCF/RAe
fr5GtyjNIlx1R7WE28WtUCkIKRe+ZrHKfH8pKhoBPpzieuHz8b5/6n9++LW/P/45wybDKwLuugkK
a0+IAk0WNJwfFmIjlCSaWpA3cUFIfbmCIlkJmUvwYBcH+7v++PWAoDZziD0ZOdgA4HYbj91DTOJA
GHDwcPgNWHQE1OxVkbRx8a3O8fywJNroGtF2CQjRdzg26O+P8J84zWGkXdFTMTdNBqkGRWUxkAYW
QgNWYGoiSBumheLaXIdPW2y0KVhm7xTsqDVUkpX2TuWi9NKtdR8DOvenutXxL4xJoYi3IDBVwOYi
IsEqC4w1hBnjGLj8A1L+VWYObLIt+uFhQfyuorlkLlrXowfSfZ6ixEbLIR+G2XMBnizajFhLZdAT
l6BIFcPRQoJuxKtnq5VUdKRCRTfFkML7f+AYxLMGP8VSk2TBYxuM50qBO2R542mrcLyHNFxp6an9
F2OpRRJoQUjBxF6tlYzcH/rVsd49dp8zlhpOJSHjdJJ8CiieZGMGIC+u4MsFKY5BP+q5CfaqyPD1
vUsnQrZO/Pi4YLLj62if7ODA9PsRpvCx7x7/+HauzedcnuuWApEpgj0pEcUVEffAmAf7Bk6MEcbx
QDeQ1RerFiQd1p36Vvbdqmru5XB8ePc8JnQc/tcsgURHBzC7f5q0VvoAjhEY6twq1hgVQkMcRbQy
R7i5fKjmi2/4srM35syAcl7LRkXZ0ncKOHTvpx5R5frHEV7unMzVFD1zAiKVeQkCHdUMD3nCF/yD
CKqTggtD43WAZZW9NgRM5c2SO7GrcCeW5WU/7O5/eXz4rRiexKIBmh2mpTBe6z1wE+DO05AiCZa0
RlxVHn9ae6P0d3y6oLqvUH23vNj7Xffry7cCMRjsRzHCQeTMAyeiRYQEaylaybZtwEOxjU9GBi69
MOQqKe8XO805GJ4V9DO2Nlvww+WZyiY4IollmqXOJfQK0ccZqFiBmA7MYt4Bm+U4py0L1PD4/7br
h2cLUlmFVD4pgttviJ9arepSCUwBR9BbQhVqwNg08H03noA/JdpIvf+r4FiWVJYsrrvW84erkHL3
sMuZK7zRwxwosOONdr6JjGMsRIJ6sNbDPzgV8C1h+vAV9QBrbtkG8Kig01R8JmX25q4frf2Hr98e
sUT+HGfKzYdglCXBaGwoRbB9AQLIYXkk9a0HS5c4Tha+x2qlko79vkbHYdWQOm8SmuaKsFxelKV6
bL2OyTbg/SPGMU6awLl9hCplDEuJpMs4NusNCjr3/do5UZ2mCzX0Y/+IDYS7+66f48acxBzRMZjI
4cLlPg7EzIQrhtBrQVDunQnsqnhXZZuNuPj6xZuSA1Zja9ntcJ58OdWnoYvRMtBdUTUpOawnArPW
J6oamyIHf9oLcp0KOq/+2tzNBe1dhXZrTlEwOHQPX357Z89DI9B3Bn8MDBXTUIvd7aDuQfuDzCae
gasGpq9Piwh7uUxJwY5UKNjt1zH22939IdsiKzdHMq0Uw2GB2BzKse7bgUGIAUUCNyuytjVXVuSM
m2zG18fnBQt9t/b6VZ6kVLCAeGeH/jmXdT11OSs0BFGGQq3WKKoSAdVHXED0FTTUTQAmVKtipC5c
52xihi6ettnO9qxeuympr7G06iQfLMbsNeFf+NOM4CH4b2QK/GSRuG+IYh4tLBTIwFRALEARCYni
dRScvPYFhw0fl9SbimC+2y+DWfE4jCN//ON2lurIiLZyTHMQhqOlGCI0YUsMAsdQxEaSOCelpRqU
/tu5G2t6Nn661Xsl9/sa94fKgCysydgd76uhg4SFHhrsGhpwLqCP4G+jhRN0q8EU8wIckivv1LTN
5q2a3pgzApuv9QV8uMR+eBqv7CmqhsXTYy+7U8bDr9Z4bdD3JRK8KYeao81TEmzyF5EWipUXpPUV
0nBCzL5sRyxOFhviwWiKeQ2yncJFSAiqLoJoDFYLteD7IbYfDfbt879narZaE2vnSZPKedKknzoI
fvrw4zrsoIJtVcBJriwh5FKrGtd6A1+9cFxS4ql2bxl2mBFREM/XANDwoaUn2+jzEH1rdk/3U1RU
yIzVkdsPraGxFQShZEArc5V041sL7m4wDs03FeKiEHW9YkFQZVIkfrgs8fj9W/du/DXA49r90n/N
Q7rPZlDEsmOnYtNG1HmYoPQy2qbl3HEPeoR6+Qpi22L1rSDH4rUFN4cKN2zqI9v/mUcindOsGS6x
BZEqTRMIFuQb7GmA69BQjUGdEDwXizBvsUqxv6okUrWyU7z5z3OsW2H2aAiy8BacY5YaYXDqAjMa
zC2CgyZNS0QURLtQEvBnLditVcV00WA9TdhA37rKuCopIoU92wYUC/YjgDoxtmU4elUzlsD5NXUr
e1quJKKrnCe9SiWPbR7TnN75UQopWmOUwNwrFjRTOEoEk1Rg9FvhUNzT1wq9isU3a76Ktwo2dhUf
Ru86smAjHp9+dY/74/Pj1NuphzRUDnVKSxh8nxKnNXEmJbjiYFCl2EbppeTklQ7vxepb2rd4qeBi
X9NY60nMKNtyaTT+Cib3FgwFXGBbMOHAcg0eEfiS8mDSxhYcRWEFXBol7OvQTHnlbXMpPy6plpVL
3HFVgQ3Kjd/1cnJNgosCW0CS8VgVDV6tYARHirUUzL/AOLkOKO4VmLiC9q6r0b5qnIez514QHHAo
cFQDGoayzNM2NQhkBKcdxXoLYoF57zTId9DFVwXMxsU3Tz0+LIju1+2t+OFk2Lz/sOziiG0yNCBm
i0xojYHcslHyJjFlvYYzr16J4l/fxTFtviC5q5HcVR2Cl/vj89MQQP54P4Txy+ix8ZLBt51YvqcO
TzkzoFNBd2kWNZHs9egxrnwhdIyPFxxUTkrPz2NR8G78sEDRHWdWSkWAquQbTSycFMLhWIOFAwwI
m4LXERTx282sLKmYM2H4bi3tjeCshvBVDq4cegRwcOUALk2d8okKrLrEKQgM/gJTB/tdGfM2YFat
vXpYx+vjK1ev3ZQc8BpbKwD85UyIobYSgfMGLTDoAeUdyBtLGhBHwJoEM9vohOALcNkVTYlcN9a3
ut2V0yqWHrURYl9hcaWnEXj4Ba7qDw+H/svYajfFikygxgmwQHGqCg8ef7JAGo3+CNgNmjh6DV/L
PbYhkOdvldzcVX4wTWuQ+mOtPj2l8rhS8Fcu5NGaUe9QTVOCs3kY+Gcc5EKQ4AVJLDF3/lWVcaE+
anp8U5K5Di8be7f03QrXfQjEn0p5ucpRguGPnHnxLgWbc9MKD1xsPAVvzuhoQKWrqAR5uzDBmZZL
SYPVAbR3lQO4I90iSgxmTdefm+Knis/WcgqHDfROi8UZnvLGJZ4aBzaJVCmhJrrkS8/WvSkpOFTI
ouYkln/9fQaHsQKgAO/eUmcbk3B2uo18CC8J5gn2+LWB1juxzqsWxOzVOpQLHy5DJ18efjneP005
xemCWs+STBYxzvJkPfh6vLamicwrpT0cjutmmOT1Xz0Hcyo2Ei2zN0o+ra3waSe37acd2Fn353Mw
WiGpldSQyDBxkeOsIFgTyNmQuGQ+g4HwN7JCSgoWxK9NEdP1qoKI+nLMOFCj1MnYyhQjqwrOLUFT
lQYN3pcKjUxSCw1OvmfuWrX38cO22PlYlNeZWr2aObCle/PDy5fn4/PDS/d5lUXGziBxQiYcZ9Qy
mRzD0eCYqcaBWww86SQRzpUyQVxU7rqM7/a2Rep3+VrB4sFUVMKhn3oq3ac0BHKnkq/xDsONjR5s
EGEJ+g1gZVlmEAiTtly1qpUx/otYPMXJKukoWajUx5vD3RIicJyr9fTH/fPnvkgb4VSt8Uca/kAl
R6MjWCUvW8zwMPDpEJCgkTZ6huVpSb39hIPBHrldU7g2WqaX5l+FZRV737KVvT/LCA8Z32xo4v83
/icfwmhGGMokiueEM7olU6AchczYGzgKNkT9lwCKDM8WnB4qnJ5HnLz//uNyQGLUTlp0XVqeZwEh
gDKCETJDCVXe2uDfarLtx/UxtWw9nNlaTvThsJxH+aVHaJy5ivJJt9Fjib1kKDJStiZF0yL4P6fg
5jh7dfN6xt3Z7l3HxzcljaZCuD5stj18+FuuAmPvyGhwaYthtDzFTRKbB1RanPvDqUdBDtIcLpjT
Do6UfgXrLq+91TGwKOoCIvsK5buz8TRmCmglC+FMJAGbu5hHs53mrjzEJffECM3BRlQLTJTFagUl
gq7NOCu4WQ8j/dJ/+tGls2jCGGpObo3GE3xBClxXi4F5cJNii8AoDkxXYX1AfCZyXXHoaasLJwGe
FkzUCgHtHstbV33i7lP4LqJcHZp9cR7RuwGHQTiXPA1YqYBzGgl4eC5g8yCRKg94JSJcXRGKu1xI
MeLjkoOu8jPsu26Zm+q7I8Yp5iBTnHnqTFBNDDnIJ8BKNAEOMlxJL3TgrfIXs1LzNRdEVUTZfgVw
MiEOzQYN8BA0RZFmsQactrQxDmPUAXxomlpuuL4yFLYNNlSBGgLq1laD7SS9BFn+t9tLg1eYDnDF
wIvUBrH9TIQTbUDWxSC90gZ0T1Rv54ydadnoXbit5dSAQ1VhezWSrqb63c+3oGQ1Bjy4Fblqzmpt
W1RIRGNpbHABa3xDk5TxwVPmwP/46yZawoOS1/XoOvxwkp1Y3HQE3f5f50nEKstNigMU4TgmiUE3
A7IeR3w22muOsOAJHKqNWtjFggU5h/VgQvhQTAV0oJhLda9JlBQkyv+2di3NjeJA+M6v0GWqkqq1
CwmJh6tyUPCjPLbj2QRndvdCEUOyrrEhZfBM5d9vt3gYHCCzu8MhwaBP3ZJajV7dPdA5HszgGDJv
SinMfKcuE44tmP3LAtm38cuNNn7fBZLDqZUbvGYnXKPIbY9yJ7/ShWrU4fuIkVwGhmR4xIhbg4k9
leMpd4Vh2b/C8qjOQU9A8iLFRRlbRpulh4S6IWE1DEyOqE1FcfZP3SgHuBQGOIwPpjbGgVJ+PXVz
oqySTIHfBf5TE/AGoa4xQi1JszCircHMtu2UWtSisy6eCO5KB+YKUsBHwtBdAWMcKAQMFnChyUHP
PB8qsA/iFTWSNLl3eAv3znOttx6S2G0cYAddZlVH2B2chzJcI+K3HHcT+QDDR+CxJptKamMZurrt
Rc5Nxlp2W51w+1QeQ8Cz+Lvv0dm8yjBww1cdfHWhz0uG7oLwMII00SQcxjzCUPG1by3r8sDlRWZ1
RgLW4qkigOH3u7VPLE6+61Q3KuK3tmkZ8IE1TIxBPJ2wgT02dBi7WNIVYz61b3/SXrfMv8+ZweXe
U8Dp+/bFh6X6i+Lo+PLWWAWkVTB1XXKHurhwwtGwfzoWaDWHVi4SbeyZ+c7bxrvsmsy0zL0Czp2L
NclDsN8n1V66aZXsCItDP7/FgGUUNTN0FxsXJrkwGYWBtmVaved76vlqGm5Mq8DmqyTcPZcbJw+n
wwEaYAR8u5A8JYcgjMjTG4GOEx3J6zFBL9gwFMmC40ukvONlf+/S8sVIlTcL0m/+c3L0X3fhiOT+
vPJQyv4W/mbRiOj1h2mU+WlWPW8S/ih7/f9lDz9qpYIaUPTQLmkXR230DJjMWP+Opva4Ihjnul6/
GORwHe/fCK4s4ZvkmVRfxxHxkizY3xiUDu0VOUbpLozi7EZfXOmfrkn6A43OQj85ZT6wdYpVwwKx
sEBgPMxP19rX4y4LnvYRZIDEq2xhQjQjP+BlFsVlnj00ykd1OphFQYWocvdfj/N7byOXcHc/mc3X
d0Qr/nt/fpl0wx7mf6m37npz55GrOIkH2yTYR+k2Cq+JdnO+OjKo3pY3mtxmu+/oSd6DTori23LB
VMpeVD+I5s7ITm3r9F3M1C8wqXJblUPTVgzlvMJwwODcK4b0SiDaL2HaZ4ydYzbzgj8VC7mNN2E2
eKtjMNpCK2+18hhEGxc+NUHlx9DtT4rHi1JxmLSuanQ+P5DPc4+8oFZEqQFseEGLsjqGd2Gucuez
2OpQasds0CmvMg2B7haEIVoQEGAaT6DXRPdaWyg/3ETiE7KOtx3tateLv5LL5drtFQBKDeysBVes
wrycgmNIXrvkx2AVHQsw0QHdcHrBC2GcdZJi9eb8kqsvAs36mkZkHj8nH4r0w+/LXRblXG1B2bWL
AGtiPOkuyGwj78edlSDMIa3qgAImC7bfPlAO1BqyOuZx5auak16PaiD8LJ4m0b5GT7h2tlLN3EXH
PtPhQMf3x9KT/bwxWmEY0xEzX8nZpB8kmvXm+8v53WIyBrHublBnaK6qH4jxJn94/dVms6quGVOY
zd3cXY97uROiITsHpeU7lUAu19ZZrimonEKvHXJR7QCZQ6PC0P+mqr21pz4Z/bUwtGaFFFCrwPxG
DqCh0oZCyBWB6temXqkPhdH+AVBLAwQUAAIACAD1kC5KKuni9O1BAAB6DwEAMgAcAGh0dHAvdGVz
dHMvYXBwY2FjaGUvcHJvZ3Jlc3MtY291bnRlci1jcmFzaC1sb2cudHh0VVQJAANu2XpYO9R6WHV4
CwABBPUBAAAEFAAAAOxdXXObSLO+PvwKLk5tyUmQ5wMYoHyyJSEp8Vl/lWUne2pri0IwsnkjgRaQ
Y78X57efngFJgCTHJK5Tm1r5wpYFdD/d0/309AwSV2kS8Cxz1PpPkMy7/mIx493PfPJblIs/bhLn
PM67A/7AZ8liDq/VPzCj9E/lys/vmyLg5/hTMlvOeXb86fLs9nx4/Oa4lDZN/Tn/mqRfjj/xNIuS
ODvuHf9+5Y55+hABnuPn9D8uguPydXZ87geX4+MXwlVOQ/gdTSOeOt9hrVKCbVpqIv2t2oHfXdzV
3x4pbhJy9eZpwesn/m6ZmqmrnQs/jx74ETgtFS68aozAr7/+Cm79U7nNeKqeDprKDIQVZeDn/Pgm
mjc0EISZhrCGdRVbDkIOJV1GqKohCyHlcqzuMgA8qMKh31WMuhh3TbWDjQ+YYHKkXPNFkuZbV2Gs
9OIkfpony0y9va1gHFoIuzbBWr9HqMasPtWGtt3XCMOIYYA3MExFUQRytffV/8LVcRQHXO0nSe6A
H+FHzXiQxGGmKOOnLOdz9RTG4S6N8ifhqZwHuYTCY38y46GiuKmf3fNQvblPuR+ukSBVHUTZws+D
e/WvJV+CpzajPPejWMvlBYoyfAz4QgitD9nwd9fr9wZez3WH47HaGZ9+GA8/fDqqnC/GeT1uvw2v
L7zTi0+9s1O4aDC4Flf5uYoeUe2HooqECzCoptG9vL4aD72Ly5vT0f8oyqdz9ZrfifxQL7ifgjCK
HEXT3quKuMLzboa/32ylXakJI920dXihVd8QTlb/EKdZv/2pptrjcfr1UR2f/5d7+flvmLFKD06K
Al+6a7zgAWRvADExTdK5fNNR3Ove+OPpxQf1Zji+cdRjEBv4wT0/TtLoDgb6r2WS+xoEVR7FSx5q
YfI1niV+2L3P5zNF+TBLJv5MvUl9EYjL6RTSrpMChDTjanCfJnEyS+4AwmwVmkeOYkBiUd0ktnCk
O7rgufDN1kj8RzH6bDqdWlOdT8MJVW/cK4icOIbBZFMeTE1EzImP1PH4TP3og/h7kReDy4thocXE
lt5KCzcNe0sLnZr+VEciCcDpOe+qU0gWQt6pPAUyRKUuopMWugwGguleXeBD4DfcrauwGGllTmiT
yV4VWe6nOdCAEG3aFLF24xFY073jIUVH8Z0cmJjfJXkkA67UpRP046Oy0lUfFWzXRsW0DYP++Kis
dO0aFWbrrzEqNdeVo8Js03wFT9FANyZ4y1Nm1VMWtjF7jfgtde3wlEWYTl4jfksVFU8BdoiqFqJN
NrEhfoePgiCjfPYE/JTLiHVH4KfkS8RBfpL6d/AX3ga3FdFrYwsRo42mCTFCvEvTXjVKUY+hDpcF
2nFeWJBRc0LmJinfhU1WNNO2DR+Zanme41TqhSuqwMckyx0H8DYPdD7fjBznmk+v8vRk7+Xvf/nl
SH2rwqxol+BusFg41DKPFNwStcURpvtRf0iT5cJxwijzsywJgHn4IAmWoiSeQeniaWd9af19iZYw
Q+0s82gGsyaHmcaRQto6lYaUf8up/7vr7Y4AoJsN/bSd/oASG4XqHhtBc8MZUicU492DdO8YAEHf
MdFX90LQLUBgErU4z3Hg7xaIrfckDph8d+pvAwALZtNGOx+EFg5IsPHBSMzAVrpDnoN5ozSZF12E
1ExgotCpnCajkxg66DZb6mYT7E+f1e3eR7MQVBeaDWOHZp1CYrC2mqd2yPZohix+WRa8EaCovY0J
MwShYLUdCcRsew+mPPXjLBIBd5O4yXwe5cDnG1wyCsMrIEeJiegAquAcERXoSLFb+yfYOzKB1A9t
0kMkpuj+TByQA0TxTmfYEBpQhdqlpq7b5v7UnEZxJPhe/A/VoBMmS2jUZGJYZCszJAzdAhS4JQrL
588QxNx/mkhTh/NF/iRdYJMmKWLSVmdo2Pt1ylpemn0OBe2aZ8kyDbjULqZwu42nAgltGQRhGFp7
g6BodMT/vWnO0wv/IbqTlHiVADk+bYJzhfCaQ0XOcoAQZ/kv7yqCocsa51B83rxTJ0kyqxzqzWbJ
143om+Q0fvBnUXh7fSYHmxpEASpsYRYz6YRNK4NawHX92WziB1/AMnjVETBkRcZqZ7qM5XKAP3Ow
QUUsGy0Vhhi64abCex58qXryG14s/u9JJGWcAw/XwUOy6wzwme1qENU5JEalBlVG2p1FEEpyjiBn
VQPojUNeqIVx2+AtkG3wNo9sD3uruMhymNt5HobUL4fj5CGJQnWPg94XE5TG6DGbgndYy9ELbMPa
P3riRfvYb4R5o658tw9ap1rpKAPazLqnRDnHVlu+MPk+vhBLIZ+j/P6FlfXdDjFi4WyPKS/lC8KI
tctQu6WhwYQHzxja2T5UHxGZwBgKnKjSYuYItYmgdlnLEPb9ataK8l/oL5V1VgcFAJjBARSgmKyC
gQIvdcpLi0KBDSAQgttBsQIDXChj8fTKdZx7Pw5n/JxnGcg9Kf9mFZAVj7xrmvBOXQd13bI3R98w
6H1HageKSkSPsiX5zfeLlsEDbul8rJom+BYmV4S0chcjVAe+lVhLQdc84NEDT8/9xYZqy2OFUaKt
L1alwa6amUUsQd3fllUMKQHSI7TdiHJk43pwlfsHgC4sNbTAJ7JuI0TCMokNsPRWsMwwsCdUbSjc
9tiGKJdxBFHmLaD5roKqcmnIp/5ylnshFys+tdPeq+/LTFU7cz5P0ieHmKLdIEZL3FORq3txX8Zr
Z0p9xKzoM4S+WkX/b//BHwdptMg3PFUjKGLq/hTmkHLpYRmfJQmE1YKnYjn7c5J+KbSYFat0Q4wG
a6nFmCDyjBaRbEWPBDOV8gx3VKxmCHW18iKUjJJlHBaL8FvLQ7Y+tRjHque5o+vbi7PLyyvvdOy5
vbOz04sP3uXtjXdz6fW88eXttTtE3tXwenR5fe6Nbi/cm9PLC88TNjOF2O20QiuEg0JrYcEgGcsa
myE54TYVitpK1Om0KhH+yM6BKRS3FGVyaqlVQevNC0g6G7DVqOnj6Q3U/EnyuGcJLkAosKmhghx3
mYqOf/gga3KyOI3PxX4jSKWGQmlbqcycqiVtXPDHQqzoYxNhuU6JQvW2Ig1oUL3+LAm+3MIEerYW
ey4yCpqjsyjLC9Ri3jGKZsDnoIxhhdayt7dY7MteqYsRPwinpuoNrsZrJSKWkAkDZrYVRSCXtT8u
xtUdJy9ugi//yb4Ag4FxYifWiaQxwFfFwuafwnOGrlDWEgIKLbQFIV3GQqBpwVBY7QSaPjUttSZO
NKaSOBmEICTcLJo8LoJu+AQv1OdWgW1mToBuddWD871k8q/AmxeymG0oOmonyp9OJlwVkkohuq0r
On52K36Lu22DBUhdCYBa39lsSAo7u/O5gylMA8SmFoACZOEeeFW/cYNCCIfF2rzw1XoxGztydRoE
ZHJv2oNGI+azusy6KEM3OAFKEYvsf8nzU54vUzkGSK4ab6QtihXwmriqNMukYLKlrk70vv5VvJCV
yaJylbeVOAbzncLOmiy6tpg8u2wvfFoe1OZ+DFUy/Q4HQZVXv8i9Fu+vJKs5ZiV9x6hV4wkF3MSm
oXqr8735XepF8UPyRRIjNleueblAIwzChsC1gwyydhD9x4WE/o+z2PjHWWw61TS/GMuid7PZn2vj
Cj2cMgIsLZIou/Py1F/s8sJLBFFoMVaC5BSvsa/1gmmZhaGzqczw1uUiuL9KJN0TTBrbVS+ZOBo8
2J44YgqTUF195ZljfR/pm7MAHZHQBm6sjaLcp7LltlC7QLTtcBOIkyR8kmZiuc3TUhK0sWtJ61pr
WnJ3pmU4G1htCtoEM/ue9MUI0HkZn3/1o9zLorvYn+0K2+D5SmL5WKchmqqxHyfZjHMZ+7a9ytng
7dsu3j0nqUlhyEYEVXrj/D7KyoLkOFKwB91dpb8u7lyCTnaZylA7mSXxnSp+VVtseewEz96BZauf
GTTXlZUoZjTS4dvtJ7SDfKJO5v4MmgDH+cjF4kkW+BB/u9YARKdwsj5brBxGwfky54/vf6li/R6L
ZquFArFB6XlzIdWb+Bl3sM2ae8IvMSwE+mgYBq4Kip5svDJRblBYTY0UNzeBX6DRNhDeaOxlT3Fw
A93HSQ3EavmsgezNUefovYgVESYlnxR7YUztrEV17x1MjOYe8Uug6Sh8FWjDOE+frpIozjs/Iq7Y
YbUbW84vMcSchFLum0ogeWV6eYs0eXw6qaTeEsSW6/ug98cQv/shB76B8N4s5ti0ujjFjtoz6V56
t1+P3jF6XXq3GnOV2+uzzUpesfZ/mLP8veYsu247q981N9F9EyYpfzSGs1OM55HqpeV+mnhDrm/K
RRdwQ53FmrCbmnTbItwU3r0YF/HkFTFWLEpC5H3PzGZPElmvl0T2K8+RbEii1daYCmyZzGZRfHfI
m79Z3nxLoIEtG2O1uX7NWt7/xSwfGWblTox1RJSfsnCiOMojfxb9m1enFUTc5NI4F7wt1uEMetS6
LjPLWu1ibM0T1kUPs137xlZrVZNgWqj6mk9v9mszGiXWfjV2aF0Xnymx+HXZAaN/3AoIxoIRRTz0
lnkiPmoSfOf6h0HDiQmOWIjp3b0XPIiO8ju94Iu7JNZeEB9G8UppzGQNgnxB0Ns+YYWRhW1QaMOo
2ADNozkPP4Ps4jZp2Y5BN1a5m09svRaXQa5fFZCyzQ3RbXtGk9BVsl/56RexTZTkjrOA12tYMAF+
Op0vZjIfixZV3GIirhkHyYKHZ/58Evon4v4ZFabHm7tstk4p5tTNU8QH0+S9ME+xP48CV3Sm4uaW
SjtMTEjUzgZisWWO9LbNpBFMoJSY8l6fQvnazL7oFh0xsHL/7EQePQMo7zvrly0QY6MO+N6xvqMR
1SnHYa09WpHu6vXJrnQpb4vcAOfpxh5h6HqpwXH+00PVTl62O36epK8h+P2qjRJdJ8RBKgR3jor9
dkvcOV4XX9zBjGj7tvgHqhb7/6pa/4jGEJMDhR8o/EDhBwo/UPjPSuH0QOEHCj9Q+IHCDxT+s1K4
fqDwA4UfKPxA4QcK/1kp3DhQ+IHCDxR+oPADhf+sFG4eKPxA4QcKP1D4gcJ/VgpnBwo/UPiBwg8U
fqDwn5XCrQOFHyj8QOEHCj9Q+M9K4Xbt42buaCyiJO8u0ujBz/l33CaPWPFJ4xkPKgze6kMfhm74
8hMpBZjz4qs4JIGT9vfG7x0W+nrDor/y55eQGpTPAfkKvCUetVI+EESVX0Sodkxdm0T5kaOoauo/
OluP5UAwcOlk34Fg34GwegAjAIt1hISSMNpzSbY+IGwzJoZphhOpfbF9wJJX7DjAhBI1tXYoEQmf
2nVcvsWDQMjCaBdgcQBXRYWhbzOfhsISTPZYgmld1kR8lNYSB/R9SoztK7AllESL2pHV17qr6XTW
0I4RQeK7s9IdsKjwinJWPq7DvbotHq6iK8M0TVL5wJbycSvrK3XlRnxK7WI5n6yeCoR1RVH6Ueyn
T+rpXH5BorJ6tMrj+qkqqqbW3zTAzue/wKgjnxSkqetHBaknVs8ajBgxNFfvYY2ObEPrjQaupiPd
HsF7lmui93+/x7LULPfJDnf4RLjj7ea7Bcf30bzM8A4Cy/WeoQ+Hlq1ZltXTqM1GmqVbuta3B32L
6QOjZ7t7LN+S2MATbOPxSTid7vqqxR1jQlyK9QGhmkl7I41SYml9Ygy1ft8aAdcOen1ith2T4lgV
p4EDcwunQf3JdDrZxnnG7/zgaRdaZBNKXIY07FpUo2RgaZbdM7W+QZnhjhijCO9HW8h9DnNxRg25
icMt5CbFvOHhxlxjB3YXIQvZzNCIRQH7cKBrPQgmTXd1NDR6oyFBO2OgLnk3+vo5VfyQv3QLPwuD
6XaE7ANu97CFTRNCdqAPNGoOCYRx39Zov0fdnmma9ojtcfp+xOXBCtTVl3LUoMKbVN/JNTc8y6+X
cczT7mn8L5hP8LC/FN+KqnZwVwjBIu8Miq0RcTWzpxPIO4wg5VxLG4IPKBkSOmDD/fGyUVHX0J3I
P00+ef6iuqU+3bYUY2s6ZepbyPHSO0LWeLkQDyarsYk5HA0p1bUBGuoa1ZmpAbP2tKExGLiWYRCG
+rusekZwFR21bH8LHcxvAoGu+m0854Pzm7N+msT/5oNUfNmrcL1OujBbBvd39S4RpG/ZlA3Nnmbh
PtIoYrZm9wdMw2QIKTBy7V6/B2CLB6Adn0WTFErR8fARPFvGypaaPf7fPlEp0IuZhElDbm2sWr3J
8dTXwSrxdXlqh5qoSwrQ4FQ6cjXXRcCK2HW1nuvqGjN6FjLcoY7wAEAvs1Q49VhcXdFl6bSadOs3
TaPhwfG9n4ony3R04TXaNeGK1UtAMRgMYMqAIXqHbh/YbgSJNxxizbT7IxvakD6UzG3XXRWz89Eq
67LjUs3uRCwP1uDriGzDh58G/HOew8yjY5gSuPgDoCmQvcUwBrYAcgNatrVeD0PlQ2hAXcsamjbd
Bl1BK6XuxioP1ZGaaBupgW2JFIbm4TzKVl9bBEBp1wCI/ZGJyYgNtFGP9sU8BKitP2SAGPfdPsFD
1zWehdgLAmhhoAPeQ26VUx94AAJ2n1bHp9RN8HfZFUoqFM3EIorD5XyxMg3brItlgWTMYNZIQyM5
xdJhjoHNIYzDYDQgrkFc16oE7pakGghGzG0QTNBx4dzHbJavv9Gpg/WuDggYcQfY7ekaHvVFtWBE
6w3cITAUZDrToSGye3UEVTH/R9y1LTdyHNl3fsU+ToSj4LpfHusqz3q8Gmlsxb45ABAYMcQhZ0mO
1vLX+2SDALu6myBjzdBGKEgK3VOV2VWZeU5mFrqb30sznz/o7SQefFh/u9n+fESB//HOSQ8Lwj87
/EGG1AASQlaM2wiZQPxZ1Dwyw2sRMiO+5Xh2wclnHid4ccl7eZZv7++56BW8nGu9XYuJ1iOa/M6u
AnlcaQItgIihqMgZTwK+qyq4XtsUExrU0pqI4CHPKvs08pLseXT9ohdxwWns1XYCNO5322/DGy7f
uSFMG6eUW5HjhexVVmMUTFF6eFslA6CdSviRRALWcApo5qzsnx5Hf8bXPV4dy40tNpfbcDNFHfS9
sruf4mkuuJMVXylJKgx/kGMRzgkF9JwFAt4gfgg5sFwir77KiOD8Gof9ONeyEo8XOx0E93MdBF8f
LfV/vq3v1vSCj93RWj0BCd5gj6Fhq2SQERVBzZKKlVXtkjLelsDH3uKQwfjjwngTYTZLwuyPvmt4
YeVRDkcOORjtY6yBSbgIpgzkCJV8howua4torN2iHKOhehGCWhAhTD3H++8HT/6XIbNH79kcY0cT
lMd+y6zGhofjsmNRKcOsLCGaUrMI9jWLOZtkeVlnt00UulxSaMpCviKUj0jZ6iP9P5Tig1bSDgG6
etMcz6y4QugRgCIRK82iGY5gGLBbzzvD9d1m2Td0bvBjL8v4ruHSRL/9gn7Eqw8beEgMfsrjnSNE
GKK5BF6FKhFaVPJ3Cbwqgsu2VEvlImOlzuvz/dfdzXcfnvHTw+1XQNFLQvQqrO2CCns7xXy/fdnc
nr7wmgAzeRDPNQVPrEtqzhoSHgSricq8yVAtyeYrPKPP8lWIbzzJM75wfEuniFQLa4EPj/b7hVDY
36m+df+wfoIg0B5+UB9Qf6k1CiEdczAVLEqjiJvwoyJK5YQP06s84Xcf/5Zvv3y9AtoaqfGcEL0a
mi+ooflxS10PIfjkh6xZGb7yBP5hE8Vyw4wQMBCrBTYUmG/NTYlEb302fNEbjUfsRLF2OxfFuvXE
Hd1iI34GoBZgAAc3NPwBkawMwSVA6ZQLeGx0sNkiLCvV4UnGBjcp/897/HCtE9gtmaPbbI7Pbnek
Z6fHRw+ulWBkoXRMqpmpjMAdhtdiiyJAY0w2uvbQbzJOJ0MIC2Fks7bHbdhu76//fnmo2p18gl1J
siPTKLEmgfCLBsKHWLAjJViuCPYtUPIl9JLMR7vo53VzYbaXeuJ/D9z6H3C5CGLDEgLOrQRZRCyp
emUMA+k1TCmsXrQAOQX7q1gBUpn1ixiUxl5exOPVi17AOYA2u508PsKr7bctZWjiiSEZscJ/9Ajh
VUMS2jLlNXhc0YCRGT9aVUEUU2DGrn+Ek9HGklju5nzGHjHB0/O7uvnlSb0hbhGwlYIEEnCMsEAI
1Bx8o00e1qAcw67isSmdlPJvEbfej2XoIvTNL51Oh4zVVCdK4mzGBZ/Lm/v7y5OTlIawLukDR4JH
HDxwIiVGhM0swUSYUTA1YHUgybLoZubjTsQKC2LpqbP5jl70rg+4YPAxSQeuFNiCSqpSjjqCuDng
HcAvW0MMQvOzzxcjLj84XOgl3CxJuHdH7/Ldh6EScTJqOVBbcIAGaqPgljmobeAwIABusHavGmg7
h2G/TZzv5u8k12pBcm2m1ZDvdje7w/f2rq8/Pb4u+N3BH0gVBm189tjW2jMtA6FL7OuQgV+0dTko
h6ifwqsC5HyqZxZhfmOvmpnDF2vMCYG125uHj+u7ewTi47oYP2R8pHUxxKqZFgq7GWEfa+IUIlQr
OVhjfWvn0ylPr+x4NcmOf31msx1fPnf/xwWhO42D13ONg9+eeMrt19/2QB5P+9CRHyca7VJmTQHU
KI0fKVmsY7amFU5f0SaXuUo33ESSObq3GzOFjsOufP/92EOqlTogBW35IJyyxVCKUFeFIBMFC5or
VrIFq/Y8SH8+szWbonOAh4ud6JvdghPccnPcNh9vPj8liAYZJTyJ04UzrQ2cTSyBeQGMBcgl4WYE
ts6/IWO3/KfJxyI7cTk3Yie5Ooq8/cMf1puro9SKuwHRBilrSzBTXgPcozCJeek4q17ErJV2MvM+
Ho7H6QSQdr7x3M5fTvPrh2+7P2Z3NNcrTTuw0Yvbmq2sFA+2TI/SZ+zAbEOSkpuqh+T0WXt7pnaX
H69d9JLtFsQN/Ggn+ae/fPp4/e3z1c2kVvHouAGXVZQhskK5BRXAoX3lhdmQjYN30MnyNyJoy5L0
2gSxpM16QHJP0fXm9uFq/9uTq0PM5oM2RftUqtKMNwdtNNhZ5K0BhjgPaBS8y/lc2B4P3Am2F/PH
7LXZzpLul1fr43upjukKp8RKmJXktD8sbEq15FjCb6Y44JuPAVamFQJ8kzo3+0IG/mmK5xLxT3dc
9PJeLijhNxMlxvnU9zcPuzt648A7qf2K8mnDb1KkgjY0jo3jmqAY6YFIKhBfC16lomv26TUxcmm2
51H09M5ePz9ncqAqu/3uYAu/lk8fp+UG47i0hsNeG0d8LMZTTr6xUKGb9Lia1O9VbjiJd9ErsF/Q
aj0tV91/3e3Ab+9229vPN1d9aoHSodiDQzZUDIYSqonBY/UaABLV6g3xQphMgqcXPmdt6lvg9U+D
VD8uCdXlO6a39U9gO3fJYC3h6BUISPy4+3x1/3A3cgpm2KbR8QI+SYnLpsgfR0A5EaB3ClTzr8GK
/0f804vdaW2VXdBanQo8iy1r74DyVuLAYVQpojadGRg+eHZMDaEoD0l7kWutwZhwzhl2I3ei7d2c
uvr9ej/ZkmW3+fb5kMq6J8nIfYghFy9V1DIbwNAAcKEQ9mFwVQKneRepbGhel4Eaz7D8xMd39Dps
+IIOW3ECmF++nvJPBKRT1KlJPD7XNOxEgeGGUhyzIuRQk1c1twnEOI0wnjjw7TzGBSGmbPuge769
2V99fnzPCEUUoYfy/UC6PfZD5RpP0QJh4JFSCioa1nxoidecbM3nCzLzOZ7LR85u7HSSap6BCdLa
Cds+tV0pwcn5cl/FkHm0RLZUaZVF44dyvlPKpOqqPrdDvyw8Xq3nkRq8QS8EuWerdAYWAyCHKNAo
V0YJUq+8ZLKA9jvTEElfLkmer9TFyT0Xvbhz+wrBTpksVdzxr9dDLuZQsAtOrtQhyaa5y5S7kJqq
R8JQkR9gQ5aSuJYcH79dVfUoyfOdAXT1olfHLukYJuv08+76K+17cClK2A01ElOiBtJjPGWQPBOp
ncFRp2LgJpemm9VvEbv+hKmXb6IrvTJ+SZm1n5a0tk9BBFvODyGZfhEQL7WWVC1rhvoeEmkli2ZS
wabhyrGzX5VzGM/xDFMc3THWYs3NvFC55nZ3jDgfrm5267t4/XmHyZ8qPVYOkba1anQtjTUO/KQy
p9K2jvDp0aVEuV5ZficktSBor+gCoFgLI45AcfJKLZiXl5QZpHUCJlSqSMmoFk559IzdJzOrJdek
bdU2tnM+ayGBjanlkjzqGIvK1frzze09vY3q8UXp+fqKOmFP8g2dZ1KrZBO2jKD6lAEJBokD3jFR
YpEQsoaa6ChCnR+3E1HKOS9fS+UnPaIf1jefI3D5b/dXFPIfvdLwm7LEeFJCSMUitREobxD2HbYI
4oAp2oBEO/PmYGws0nP9Hk939EqrRaW3x7D2aXu32938uKNXwRzXQku70mQPYBHZhSKYNo5aSgNn
QRtw0RQl8LbwppV+OebDTaS5XJBmI57p4dh30W3o5jBCDq1rMepWCgeUoc4CHiOD40G0symFBjDW
uHtVI8dLIW5+X6/Q5RwJrY11T7XM7XrkaWywA2WrzWYOhslMq56SfAkUGn7HhmhUrjm4OKkfdQNd
9LP5JRGmjnscDJd6mCphF6r+1Vypt0RLbGxZYHqwOW2Tccn/m9F2fMdEhYVNaja7aYtMheCcAg5+
DiUvHaSDoM3TJvA2sagNZy1m6QX2QYtvCBBifaZfpva6bOZcd22tmuiSrr/tHm5vH36mIok+dGbS
7/3QVsydrHAwrAHqYC0ynEwC4wtKhew4KL05z/jef38a/7lukNMNnfR2O29sWTthR7nLUUeePMQT
37ICrKQeTGLiOoBXxGwAiS3wG8hGEXqWulzqyFs7bRamD3wB+Q4povff0444pKi1C0NbjStBZsDw
6gQ5aALkFUbGAbiCgwG60F7cFI+DP7+NH2/ohV/I/K3dZmaIP3+7GU56HqamorKjAGOH7H9xTXqT
GfhjpSIkAqCPihkvrRbKIALWV6Wk+kmeUaS/qVdmoYaGD6cm+decxz1NzdQKjKTgNejh02mE4FJl
UuYEoiQSdHmN+Bh2WWRcmIi5YG3u0k4yDOv76xNvk4oaMQYzE42EakwkRBLVRGEpqkj9xMa5WvDk
z2YXTqP2Il26BZH24pjquf7nl/XKPOEeAs6ZKxNEgucyeGxEgGP2gvHiLFcqZp4njQ3jQbrZ/WYB
F4b1qfjwjy/XwLrH2WVYiSHpnGKx2RZWmiG+VTmLVgoAeWNLK0JGJyZNtaNxLvq5FlYk7KfklSr5
90fXSz3iu8t2db37cHX/QInaoWsJvyhYiiJhFi4xR43HShqALxngaAqPSkYvpMhv5+Z7WZ7vaX+6
p1d/v15Sf3NqrD5snQ0dA78/wYJBTdDZEophzQLNKAPTT4o7MBCAzCw1DMic243jIScizXPK67VQ
ExuhFXm4PsnkFVUkSLAceIlVebBTD7LqRWYR0I/JaKNP1jkr/Vm6MB64k2y3wDnx4e4MdFm1w6uX
CZpLmLLgAwM9/U0Nys0kFwHRU4ZFqxYDiyF5VgyAlqgiuPCG3dhHeZ658fFqp/bezfN29OFxQX7Z
/fbl8wmNy0PPmBMZ5BSAkRBBBjtKAGysBp+dFcm2utwzNh5rIoRbEmJ7dFPfbv736uaUk1VmRSCx
WRBE7EOGkE55iwBnmSAVtRS0lEAQhv7puRjj0XoxwgJv3MOJ9Dz26/X6YX97d8q+OU27c8jDhhgQ
K4GdnSPfqRTz1PBis4reZ53gzM+miLuRJ7JtFmRbn2x5c/9lxU9PaDicUAUQjIaBeMpbGadZwiNj
ppgWU3YyyAl/HY3Rz71eMNr9zk5M44dCNXpBaWnF5dByXelMGmf0tmO4SKFhrGCqzctCfXLc1rcv
FvxQlm/5oYx12gC1znTa8HDqy1l/e7g9xUVPNC+EUK3gjSFUZ7h+IKFYcmSmZq5Dsqa01D/PpzH6
qcOcJG2EPzWw/+dHOWkjcK1YqRCTa6GziI6O1LrG8b8i21qybVK8URvBafJOZLnQZ7WRakok/ry7
2+zubu9pHxxhmEjaaZ3gHgxVxH2VwDTGsgrWrqTjTdbzXO446LLwx6uduGqhir9R1NKpXqgJrGr8
6LkU/z2c8eGP/SZDtqWIqioHJJHZE7MQMO7q4cqjhi2VoFvLr8GTxxmW9Tle7fQxC13KG7u5nDz+
v70fp+APSFgrOwSiGFMy0jpQETp2QM1uCTbAqrUmlehLbfo10o/nWNZgfMdFL/BuSYv9Mf1zt/ty
++tu3IWkBxJlZG0qVCZ0geQWVBRONjBtrAG5bj50nbZPTnU6Xi/Mdu5PN4hes3B/fXv36bebLVHj
cHii9PuRaboq4d0N9WjmJFkoQ81IBVzypXn35t7tJM9zdPDxcqfr/nLuv7fycqrrn96fWi3kY33b
PzYEUWO4yhrb3tLJeY0QFzKvrAmfFDx5xVq8SY3g/dlWjNPli14TuaSem5V3QJMpKX5/f7W5uh6O
ZR1sxIWhcwfePUFFAVoOPTl18Xs4eqA0JVMIPsmXO0m68c/0k3T3TbTxS9pMmftTdn8oY9I/GH1E
n5DpeEWntOi8S1bQic4aNTp6lHOySVZXXwrAL9QQnq53Omw2cyy9vfTTDvIfvq3vHv55OIoPiWnD
acLNQ7U91whztPRdDXT83sKwAPGZdjY1W1QzS/0wYxxwGvwZPHC63om+k3POdCnlqVHyQ/wY859n
1RoNzO/paw4s4D5TARw+NeqZ5DryLL2T4vfqexlLeNFpoeb5tEt1OW0zWP86TnUfOnnp2zfg9obm
fi1SKVw1Rq8CxsrQiWKq3DvgOe1NivWFlYk/vRRCxneMVdiZhQoCPjxVEOhw+gkEHw+4N8FVki2x
ouiLNHxOLAQZWRU2lZw4j3yZKDyNNhHickEIs5lw2O47ot4pavSimhc2+rBjREaMaJCqJpfgUnlh
MSvJpDOegyfEzOM5rjAevhPPyjmZ2tnHjstRb97uYTg2d2zg8qdUVKKDLckpFmSB/yvRMSwy2IMP
oVirtcnibNffeORetEu9INpuimNyoy7IcnW32z7cDllJfvAOIgyHI0QLhs5aG1MpVRYKC8IJAHGf
jY21Bu1f7LE8jf5yyG2vuH9yU6/1bo57dk7IJ7xfv5sAfi9jcxZGlVS1cCcxsqBdZVnpKD1vwP3t
zQD/cfaLXj61JPSpmPR1/WWUuhsShy0XEVIBNUnYNk0mOsqcmc5SVfB008TkMPxojMncfmnucKoT
Dmqv0lPuX9pjwoULaRC2C7OCvsAlgiVRgxYYuW1auiJzmbDefrROkLBeEGRjT6de0of4aRYKEhQW
XlrsxwR3Q5nM5ExhGXDC2yoRxuzvFAqe5OvU2viFtd14M8kLdmnR03cvHJxXQgCOoMHgPHTkES7V
pxCpiO+VtS1JXl5Kw/VDjwXc6/Xcw+7d7Mtxcvuvg6uhI418ZYeelse/hmMnKQCVV1Y43CxgKqUf
wEFlNK1y6WOx5wPVafznbP7x8kj2f/F2LU2O20j6Xr9ij3thL96PIx5EuyPsHYfL3TO3DYliubXu
ruqth8f2r99MkKIIElRpdyp8scsiDWRKQL7zS0v2ZOWrwYd0Cixsy902tdFqoFdKTF2RQBr4ikGx
agteMvHCikWGe0vSWtKte6jhw8OyyvUncJGe+0/H/p/ndOxJ42dVwIyhApwag1ksDmKn8ejLUymV
INwyya/Koaz32ZJMy/dKrg79mqsDmYJgh+PTt93zudFVEppL2fHIBi3AhpdYYegwGKVB38rWgfcW
QzCBx2TrvSzlojfl1l2FHiYrva5PGbEqA+Bg+UbWZmpoj+KqBZMWtCwH6Q7n1Gosj0sNqDPtmYYb
5v1bOFeooW5PZGy3x06vzFmlsl+pbvjwbpkNvai4OXVKuygbGXKlGQGthkrOMBqT8EFUUQb+b4p7
Sw1bqihbc6DUZBf9/CGlhRrmGhx6Gx14gg7UMJyTxiRFmsS1SGBDBjDv30gNn3cviVbrE09BxJ2I
PnYP97+dFfHQWE+kIw4rlRi6TljMakB+NInp4KNjyrd22c06W+Wm3IpW9jfLn/2MwpAROzCCRVEl
DqKEMvqOD73ylgitEwhhb7jE/hjaGJTOKaZEmIeDYOPVqCF5mwvAIfl5yc5+LRbpni8Dg5+Oh/7h
ct9J0IEpiuVHSqKZQeHbbnVDlQsuck2r4bQZA/Mt6izM37gp6e1qTHSnM/Fy351zqhlay1OwiXUT
tJZDqbUXCkwi3oKJoqxJpN1IlHSVI7Hnte9QqYX1cET0j9Ox1BqVXD6czlkw18A+ExGhmsCvdyqa
RgWHJeE6JXHRcjgvWxKl9JqouxV052/H3ICfdl0/hB2wpxAFVP436mApwDIAtSAYFg0QbRrHwHwM
krXwkYjSXlXzcNphQyiPT29KaldBE7ged12l7f794+7b52OXSwIzFAWWKoPdk08mNSBYwdEl3Bn4
tWPuiAL7JwYJ9ruO6ZUOnPkG20UnpzfmLHCm7ZoFZqYmgPfpH0O6etE1B24w9x7OA8HWWi41GTxO
6gOxPBmt9RvBmiwoKKk3uzX1ku6WNtPunwG2edyN0HxYDkix2t0M0peCymDgBoEkM4gg2cL3j5WZ
xjrGSEuNqCi5eZr3P5Y7LMH/pucF+bJf30u+2+3hBBVXIOukf/t3k0+NGULZMnlBwfIEjwU8asF5
47TFnL/VJAUQ1Ya8mcsy9JtXXxueFVwdxNru4Ac5wTr8vns8F4GNaUcOMjop1TDEcOARXdJoaAOs
iGCkJTwsSsBmi5SbS17bfL+QKuAGpNtTVeiQLDICvAwugAaBkdfEGKI8YRLMKEdJ6+grwGR5zfq3
lB8VdPZ3aytBEHou9PifL8fnnk9agaosiyNYvSDPdGOpAyI1dmhIHRqlLPghNkTDFhnNYqGbYjfO
KiSIyboKP6XbF/h/ixQ1iFfwllH6O4y0E6Ubz7xrSGCOeOeNC7wkoFympGDd1G8Fu+sq9Xpx6PJg
+LYSNHuL2LUrhQW1CHY5fBkMe54NYhe3LQlYb38FZkncbNo4Pb0pqVtfWcHJOgn19evD/Y+7+z43
foGhprLAz2DLrc6JVSkx2ACmFSKOgnnFOBVgazvW2rfwHeYkbDF4fuOm5KdyMrhYFtZU4bzG3ADN
rbJCDwEWYNc4pzwi3Fgs7IuNJxGblG0IPtEESu7NE28TORdQvpYqXXBZY/3ciPBld//LcaYMs4Uc
gkgkUnCSQGsMiY+A3mDLQY2kSAxji/q72Srl9p2tbN9PzexfQS0+TfXgeCFbuADWI4gCBvLArEVT
kasGXDMZrGl5IosY3nyNcvNe1TZXFajBxW8BpBj8uU2uQY1SR+4aKhgCniXZ+AQCo3UonagSxoi3
+a0rLy74WVuYQtzJhXl26J9+fX749jTxgqm4HJga/kCv0ilLFBzYQMAU5/hbe2lsQ4RSYJELBr/5
dd2aeasTtfjCVtPm6sWbkgtVY61fWPRjtGmFh8WNxCgLR3mkFLEyBt0oyS1WPIPek2ACCYkQ60lF
QsUVuYNtrCwLK+3X1Mo7tjhYZ0mC1/Lvx3ScOaQEJArJNT1cWgbOm+fYdZ9cjl5HOF6GB67A/qzF
2etd97jFtuzHpwUbet23ih+KFWzj7cvjHfgLuW0KRH8+SsNfKAtZi92VCvwVbFICV69xiK4kQErI
NjHFXtFa0/pbtfnj44J2sOjXtBsuTvV64X0GFMD/7+nco6rfoTcqNNiXCMQoGepZonXjCDinkciW
MNBnitO/wtYswTRWBJf8iop9td8jLnXm92H/390ZWExlvNEoZQSzWSM2cIvlYhLMLCIbIaJ2qVUm
sAWm2HyVm3KntWMiOiY3gzD5wH3v/rNy4rnniE3HG50C9l1zsHBIoI3gLDlBYwyxfdXMwbUvHHV4
elOSqmr0myXkwtje9Bluqh07rAhBqUJb7VsJFpnV2A+EFQ2uDaAU2pa5yISK5k1gPE8NVt99uNyA
9d2Hkj9buQ5d3y/4wzBwh9AfYxsfG9v4wFnxBsHeHCFgBYN+wxoiAw6DaAOcPUt0+6r3Gy4AHobv
S3LXNdj5w5O4L4LAH5+PX86Ig0PA2kUSXTBgagJxwxW21oLzAD+KohScX7fwGzaWXJBVMYYPYmqX
7V6+Pc0inXwApLBUGuEEaVjO9/HWNE5RDrYhY8yAr6eXIODzdQoCDsZUCDhj//yQswCTs5kRsrAf
wsPP1+gWpVmEq+6olnC7uBUqBSHlwtcsVpnvL0VFI8CHU1wvfD7e90/9zw+/9vfHP2fYZHhFwF03
QWHtCVGgyYKG88NCbISSRFML8iYuCKkvV1AkKyFzCR7s4mB/1x+/HhDUZg6xJyMHGwDcbuOxe4hJ
HAgDDh4OvwGLjoCavSqSNi6+1TmeH5ZEG10j2i4BIfoOxwb9/RH+E6c5jLQreirmpskg1aCoLAbS
wEJowApMTQRpw7RQXJvr8GmLjTYFy+ydgh21hkqy0t6pXJReurXuY0Dn/lS3Ov6FMSkU8RYEpgrY
XEQkWGWBsYYwYxwDl39Ayr/KzIFNtkU/PCyI31U0l8xF63r0QLrPU5TYaDnkwzB7LsCTRZsRa6kM
euISFKliOFpI0I149Wy1koqOVKjophhSeP8PnIJ41uCnWGqSLHhsg/FcKXCHLG88bRWO95CGKy09
tf9iLLVIAi0IKZjYq7WSkftDvzrWu8fuc8ZSw6kkZJxOkk8BxZNszADkxRV8uSDFMehHPTfBXhUZ
vr536UTI1okfHxdMdnwd7ZMdHJh+P8IUPvbd4x/fzrX5nMtz3VIgMkWwJyWiuCLiHhjzYN/AiTHC
OB7oBrL6YtWCpMO6U9/KvltVzb0cjg/vnseEjsP/miWQ6OgAZvdPk9ZKH8AxAkOdW8Uao0JoiKOI
VuYIN5cP1XzxDV929sacGVDOa9moKFv6TgFn7v3UI6pc/zjCy52TuZqiZ05ApDIvQaCjmuEhT/iC
fxBBdVJwYWi8DrCssteGgKm8WXIndhXuxLK87Ifd/S+PD78Vw5NYNECzw7QUxmu9B24C3HkaUiTB
ktaIq8rjT2tvlP6OTxdU9xWq75YXe7/rfn35ViAGg/0oRjiInHngRLSIkGAtRSvZtg14KLbxycjA
pReGXCXl/WKnOQfDs4J+xtZmC364PFPZBEcksUyz1LmEXiH6OAMVKxDTgVnMO2CzHOe0ZYEaHv/f
dv3wbEEqq5DKJ0Vw+w3xU6tVXSqBKeAIekuoQg0Ymwa+78YT8KdEG6n3fxUcy5LKksV113r+cBVS
7h52OXOFN3qYAwV2vNHON5FxjIVIUA/WevgHpwK+JUwfvqIeYM0t2wAeFXSais+kzN7c9aO1//D1
2yOWyJ/jTLn5EIyyJBiNDaUIti9AADksj6S+9WDpEsfJwvdYrVTSsd/X6DisGlLnTULTXBGWy4uy
VI+t1zHZBrx/xDjGSRM4t49QpYxhKZF0GcdmvUFB53490cuqTtOFGvqxf8QGwt19189xY05ijugY
TORw4XIfB2JmwhVD6LUgKPfOBHZVvKuyzUZcfP3iTckBq7G17HY4T76c6tPQxWgZ6K6ompQc1hOB
WesTVY1NkYM/7QW5TgWdV39t7uaC9q5CuzWnKBgcuocvv72z56ER6DuDPwaGimmoxe52UPeg/UFm
E8/AVQPT16dFhL1cpqRgRyoU7PbrGPvt7v6QbZGVmyOZVorhsEBsDuVY9+3AIMSAIoGbFVnbmisr
csZNNuPr4/OChb5be/0qT1IqWEC8s0P/nMu6nrqcFRqCKEOhVmsUVYmA6iMuIPoKGuomABOqVTFS
F65zNjFDF0/bbGd7Vq/dlNTXWFp1kg8WY/aa8C/8aUbwEPw3MgV+skjcN0QxjxYWCmRgKiAWoIiE
RPE6Ck5e+4LDho9L6k1FMN/tl8GseBymkT/+cTtLdWREWzmmOQjD0VIMEZqwJQaBYyhiI0mck9JS
DUr/7dyNNT0bP93qvZL7fY37Q2VAFtZk7I731dBBwkIPDXYNDTgX0Efwt9HCCbrVYIp5AQ7JlXdq
2mbzVk1vzBmBzdf6Aj5cYj88jVf2FFXD4umxl90p4+FXa7w26PsSCd6UQ83R5ikJNvmLSAvFygvS
+gppOCFmX7YjFieLDfFgNMW8BtlO4SIkBFUXQTQGq4Va8P0Q248G+/b53zM1W62JtfOkSeU8adJP
HQQ/ffhxHXZQwbYq4CRXlhByqVWNa72Br144LinxVLu3DDvMiCiI52sAaPjQ0pNt9HmIvjW7p/sp
KipkxurI7YfW0NgKglAyoJW5SrrxrQV3NxiH5psKcVGIul6xIKgyKRI/XJZ4/P6tezf+GuBx7X7p
v+Yh3WczKGLZsVOxaSPqPExQehlt03LuuAc9Qr18BbFtsfpWkGPx2oKbQ4UbNvWR7f/MI5HOadYM
l9iCSJWmCQQL8g32NMB1aKjGoE4InotFmLdYpdhfVRKpWtkp3vznOdatMHs0BFl4C84xS40wOHWB
GQ3mFsFBk6YlIgqiXSgJ+LMW7NaqYrposJ4mbKBvXWVclRSRwp5tA4oF+xFAnRjbMhy9qhlL4Pya
upU9LVcS0VXOk16lksc2j2lO7/wohRStMUpg7hULmikcJYJJKjD6rXAo7ulrhV7F4ps1X8VbBRu7
ig+jdx1ZsBGPT7+6x/3x+XHq7dRDGiqHOqUlDL5PidOaOJMSXHEwqFJso/RScvJKh/di9S3tW7xU
cLGvaay9rNVv5dJo/BVM7i0YCrjAtmDCgeUaPCLwJeXBpI0tOIrCCrg0StjXoZnyytvmUn5cUi0r
l7jjqgIblBu/6+XkmgQXBbaAJOOxKhq8WsEIjhRrKZh/gXFyHVDcKzBxBe1dV6N91TgPZ8+9IDjg
UOCoBjQMZZmnbWoQyAhOO4r1FsQC895pkO+gi68KmI2Lb556fFgQ3a/bW/HDybB5/2HZxRHbZGhA
zBaZ0BoDuWWj5E1iynoNZ169EsW/votj2nxBclcjuas6BC/3x+enIYD88X4I45fRY+Mlg287sXxP
HZ5yZkCngu7SLGoi2evRY1z5QugYHy84qJyUnp/HouDd+GGBojvOrJSKAFXJN5pYOCmEw7EGCwcY
EDYFryMo4rebWVlSMWfC8N1a2hvBWQ3hqxxcOfQI4ODKAVyaOuUTFVh1iVMQGPwFpg72uzLmbcCs
Wnv1sI7Xx1euXrspOeA1tlYA+MuZEENtJQLnDVpg0APKO5A3ljQgjoA1CWa20QnBF+CyK5oSuW6s
b3W7K6dVLD1qI8S+wuJKTyPw8Atc1R8eDv2XsdVuihWZQI0TYIHiVBUePP5kgTQa/RGwGzRx9Bq+
lntsQyDP3yq5uav8YJrWIPXHWn16SuVxpeCvXMijNaPeoZqmBGfzMPDPOMiFIMELklhi7vyrKuNC
fdT0+KYkcx1eNvZu6bsVrvsQiD+V8nKVowTDHznz4l0KNuemFR642HgK3pzR0YBKV1EJ8nZhgjMt
l5IGqwNo7yoHcEe6RZQYzJquPzfFTxWfreUUDhvonRaLMzzljUs8NQ5sEqlSQk10yZeerXtTUnCo
kEXNSSz/+vsMDmMFQAHevaXONibh7HQb+RBeEswT7PFrA613Yp1XLYjZq3UoFz5chk6+PPxyvH+a
corTBbWeJZksYpzlyXrw9XhtTROZV0p7OBzXzTDJ6796DuZUbCRaZm+UfFpb4dNObttPO7Cz7s/n
YLRCUiupIZFh4iLHWUGwJpCzIXHJfAYD4W9khZQULIhfmyKm61UFEfXlmHGgRqmTsZUpRlYVnFuC
pioNGrwvFRqZpBYanHzP3LVq7+OHbbHzsSivM7V6NXNgS/fmh5cvz8fnh5fu8yqLjJ1B4oRMOM6o
ZTI5hqPBMVONA7cYeNJJIpwrZYK4qNx1Gd/tbYvU7/K1gsWDqaiEQz/1VLpPaQjkTiVf4x2GGxs9
2CDCEvQbwMqyzCAQJm25alUrY/wXsXiKk1XSUbJQqY83h7slROA4V+vpj/vnz32RNsKpWuOPNPyB
So5GR7BKXraY4WHg0yEgQSNt9AzL05J6+wkHgz1yu6ZwbbRML82/Cssq9r5lK3t/lhEeMr7Z0MT/
b/xPPoTRjDCUSRTPCWd0S6ZAOQqZsTdwFGyI+i8BFBmeLTg9VDg9jzh5//3H5YDEqJ206Lq0PM8C
QgBlBCNkhhKqvLXBv9Vk24/rY2rZejiztZzow2E5j/JLj9A4cxXlk26jxxJ7yVBkpGxNiqZF8H9O
wc1x9urm9Yy7s927jo9vShpNhXB92Gx7+PC3XAXG3pHR4NIWw2h5ipskNg+otDj3h1OPghykOVww
px0cKf0K1l1ee6tjYFHUBUT2Fcp3Z+NpzBTQShbCmUgCNncxj2Y7zV15iEvuiRGag42oFpgoi9UK
SgRdm3FWcLMeRvql//SjS2fRhDHUnNwajSf4ghS4rhYD8+AmxRaBURyYrsL6gPhM5Lri0NNWF04C
PC2YqBUC2j2Wt676xN2n8F1EuTo0++I8oncDDoNwLnkasFIB5zQS8PBcwOZBIlUe8EpEuLoiFHe5
kGLExyUHXeVn2HfdMjfVd0eMU8xBpjjz1JmgmhhykE+AlWgCHGS4kl7owFvlL2al5msuiKqIsv0K
4GRCHJoNGuAhaIoizWINOG1pYxzGqAP40DS13HB9ZShsG2yoAjUE1K2tBttJegmy/G+3lwavMB3g
ioEXqQ1i+5kIJ9qArItBeqUN6J6o3s4ZO9Oy0btwW8upAYeqwvZqJF1N9bufb0HJagx4cCty1ZzV
2raokIjG0tjgAtb4hiYp44OnzIH/8ddNtIQHJa/r0XX44SQ7sbjpCLr9v86TiFWWmxQHKMJxTBKD
bgZkPY74bLTXHGHBEzhUG7WwiwULcg7rwYTwoZgK6EAxl+pekygpSJSGCCzM+N/Wjq63URz4zq/w
y0qtdIliY/NRqQ8O+VC2TbPX0u7dvSAaSC/aBKJAdtV/fzMmEJMC2btbP7QEPJ4Zezz+nBmOIfMm
lMLKd+Ix4TqCOb8skH0TvdxsovdDIDlcWnnhLj/gHkVhe1Q4+ZUeVOMAxkeM5NIzJcMrRtzujZ2J
HE24J0zb+RWWRzoFHQHJjznOeGyYbZYeEnRDwmoamO5Rm4rj3T/1oBzgUpjgMN6bOBgHSvn1HFhj
ZZVkCRwX+E8twGuI2uYIWpY6M6Kpwaym4xQtatFJF48F96QLawUpYJAwB56AOQ4wAZMF3Ghy0TPP
RQV2IV5RLUudepc3UO+utN66TROvdoEddJldXWF3cR3KcI+IDzmeJvIeho/Aa00OldRBHtq67VnJ
dcIaTlvdaPlaXkPAu/jr7/HJvMo08cBXXXz1oM9Lhu6C8DKCtNAkHOY8wlTxtYe2fX7h8qwwnZCQ
NXiqCGH6/WHvE9kpTp10oyI+dCzbhAHWtDAG8WTMes7IHMDcxZaeGPGJM/xJe92y/C5nBudnTyGn
H9sXX5bqL07i/dt7bReQVsHUB5K71MONE46G/ZORQKs5tHKRaGPPrA/eNj4UVyemYe0Vcu6e7Ulu
w80mrc7SLbskR9gc+vkQA5ZR1MzQXRzcmOTCYhQm2rZld97v0cs1DDyYVoHN52m0XpUHJ0+H7RYa
4Abo9iB7RrZhFJPXdwIdJ96T3T5FL9gwFcnD/VusvOPlf6+z8sON4jcPs2/BKt0Hu3V0Qwp/XkUo
5WAJf/P4hgz0l1mcB1leva8jvlT84P8VDz80rqAGFD60S1oncRM+E2r6X+I0XuYE41zr9YtBDhfJ
5p3gzhJ+SVekGh1viJ/m4ebWpLTvzMk+ztZRnOS3g7urwadrkv1Ao7MoSA95AGQdEtWwgCw6QmA8
zE/Xxtf9Og9fNzEUgMirYmFBNCU/4GMeJ2WZHTjKVzoeLOKIhSi+u9PL7NF/lvfw9DiezhYPxDj+
9//8Mm4He5r9pb56i+cHn1wladJbpuEmzpZxdE2M21NqKaD6Wj4Ycpmvv6MneR86KYpvQ4KllHNX
/SCGNyVrdazTlZg1OIPJlNuqAjRrhKGcVzAWwODaK4H8SiCak7CcE4xTwDzPjvSpWMhNtAmrRpsO
g9EWGmnT+DGJMTr61ASVn0C3Pygaz7jisGida3g+P5HPM5+8oVZEqQHY6AwXZToMb4O5KpzPYqsD
165Vw1OmMg+B7hZGEVoQECAab6Brontt3Ck/3ETiG7JIli3t6ujsz+X9/cLrFABKTeyspQhVMG+H
cB+RXZv8mKzCYwNMvEU3nH74RhhnraiY3pxfCvVFoFl3WUxmySq9KNJPv9+v87igagnKrlkEWB3G
l94dmT7Lx1FrJQirT6s6oACTh8tvF5QDtftMh3mZB6rmpN+hGgg/iacgxtf4FffO5qqZ2/A4Jzwc
RC0IRtKX3bQxWsEwbNMgmM3ldNwNJOr1FgT3s4e78QjEur1B3b41r34gjD/+w++uNodVdc2Ygnl+
mHmLUSd1QtRkZ6u0fKsSKOTaPsk1BTV11GvbQlRbgKy+qfPzX1S1v/DVkNFdC317elSg1DnC/Ea2
oKGymkIoFIHq13ikOtdgjH8AUEsDBBQAAgAIAPWQLkrgKVARsEMAADUVAQAoABwAaHR0cC90ZXN0
cy9hcHBjYWNoZS9yZWxvYWQtY3Jhc2gtbG9nLnR4dFVUCQADbtl6WHDUelh1eAsAAQT1AQAABBQA
AADsXe9zm0iT/nz8FfPhaktOVjIzAwxQubwlIynri+3oLCW7d1tbFD8GmzcItIAc+/1wf/v1DLIM
SHJE4rra1MofbImB7qd7ep7pHgYzzbOAF4WNmj9Bthh4y2XCB79y/31cij9OlpY8LQcjfseTbLmA
z+h3zDT8hzL1ytu2CPg5/ZQlqwUvTj99uPh4OT59dbqWFuXegn/J8s+nn3hexFlanA5Pf5s6M57f
xYDn9Dn998vgdP25OL30gg+z0wPhKuch/I6jmOf2N1irrMG2LTVU7TXqwe8BHmivTxQnCzmaPyx5
88TfTKNvaKh35ZXxHT8Bp+XChdNWD/zjH/8At/6hfCx4js5HbWW6ihVl5JX8dB4vWhqIillfxX2s
IWzaKraJMVApRX3VVFXlwwztMgA8iKDpN4TVAcYDA/Ww/g4TTE6Ua77M8nLrKoyVYZqlD4tsVaCP
H2sYx6aKHYvg/tmQ0D4zz2h/bFlnfcKwyjDAG+mGoigCORp+8T5zNIvTgKOzLCtt8CP8oIIHWRoW
ijJ7KEq+QOfQDzd5XD4IT5U8KCUUnnp+wkNFcXKvuOUhmt/m3As3SFSERnGx9MrgFv254ivw1FMv
L7w47ZfyAkUZ3wd8KYQ2u2z8m+OeDUfu0HHGsxnqzc7fzcbvPp3Uzhf9vOm39+PrK/f86tPw4hwu
Go2uxVVeidR7tfFD1ZqEKzCoodH5cD2djd2rD/PzyX8ryqdLdM1vxPhAV9zLQRhVbaXff4sUcYXr
zse/zbeG3VoTuDwyCXzo1w9owse/i9PM93+gvH9/mn+5R7PL/3A+/PoXHLHKEE6KA0+6a7bkAYze
AGIiyvKFPGgrzvVw9sv51Ts0H8/mNjoFsYEX3PLTHKR44eC2XCSK8i7JfC9B89wT8baKIhhdvRw0
5QVHwW2epVmS3YCm5DECT2wFm5pmME1TGR1gTcW6gZzJFS+FI7bc/m9VV7MoisxI41FgRmjuTCFM
0hR6jkUeC4kOTRiCvPTyMk5v0Gx2gVJ+k5WxtKatkWjscI3c0K29GsHh4O2SD1AEowQbPyOeAwuq
bY3UIodq1FkQAbvs0wi+BXrDg92KTKbq32uagRljW6aZP+/TaBnfa9pa4/OmWRRbh5sWWsTfq0jG
CdBcS4FOje9VUA/EbQWMfHfcaapFzK3OwTs7h6jEUL877tYan+scglWi69/ru7WiXb6jqmpY6qEK
DOZbwBLje8FxcZk8APeUkhecCXgu+xxz0JLl3g38hcPgyBZHgD7LOjjaDJ/oId6lb68ypZpYYUJd
z7S2feDMqrYzKyfL+S5scmryCKOeaqD1ebZdI35H0PkvWVHaNuBtN/R+nU9s+5pH0zJ/s/fytz/9
dIJeI0hvdgkeBMulTU3jRMEdURuBiul+1O/ybLW07TAuvKLIAmB5PsqClZjbLmBy4nlvc2nzuERL
mI56qzJOIP2xmaGfKKSrU3FI+dec+r+7DvcEAM1o6afd9OtYtdQQ7bERNLecIXUSa08n3do6QNB2
ZOxoLwQTq5FqEFSdZ9vwdwvE1jGJA7LoXvMwADAhLda7+cDQOYMhuvHBRKRSj7rL3EuLWJg5z5xs
sYhLYJSnmJC2h1MYkq9kPGjgmirSBRb1RDG6YgkDL9qDJZD6Icu+i0WG5yWiQbpCTGi92rlyuGBm
gTNY14DQ1SDaHxAVBqk4uIWMFzKxonz1M4rTUgBh1lafSCiaeaKYXZFokRE8hwRKxXTFh1HJ83Vq
Os0gKB+euqf6PpQ1iewfYpg7ggYOnyhWV3hUo3g/vJwXS/ANv+YBh3KyFjPXvMhWeQAt1RmVDyWf
gEx9pwMNiwL1qV3HthEa+xHeemmY8NnKL8q4XAHveaUn2q6yL1VQMa1FLhjXAfynd+fNgjxelk84
6gAsXyOUAfcK+i+hpMwncQ6OcF1ncr1KL7JsKQrNHKLnLotDOYAomF9vcybSfF1YT+rKhcpJtkrD
qvLYmkotjatepCGp7OPVxYcPU/d85jrDiwsoRdwPH+fu/IM7dOfnl+Nrefhs6Lx3Jx+vnPn5hyvX
FdECuQntqpSZFNUsHGXSDtG3KtMV4KyO8kjo7ZBXCHiWqWC9m7yQMcgvavLgj8BmaljBRkdZBqcm
qkva1H8CnKFgVhf4y/k8yxI/u9+T/ASqGljQ/yDHWeVi6WV8J6M1W56nl2LJBqRScKHZVSozIrQe
hlf8vhIruDwTpmuUKMCeHUXqQNLuWZIFnz8CCyUbsZci7YLc7CIuygr1r3F5O4mTUsYAwwppDGKY
RvfNjlIXI14QRgZyR9PZRokMJoMpBHcVBUSH+r9fzepFu5u2wa+/FJ/tlTBOLGbZsTTGDnmVUv4h
PKdrCiEdIaghJOZtCPkqFQINkyiEdhNoeBQovSHuEnJc4SLMDIXAeEti/34ZDMIH+ICey78tZvgY
W0AacL6b+f8M3EUli1m6QvRuorzI9zkSktZCNAv8ZTy7mtliUBaZlAUqehQA3u49rekIOweLhY0p
5BlQDwp0gCzcA6/uN65TCOGwqpCErzZlBLZlXQACCrm8537mecqTpsymKF3TOQFOEeXNn/L8nJer
XPaBKvP1J2nLqvZoiKtLMw1q6cxEjye6X/6sPghhxKQyv+4kjlENV3Y2ZNGNxeTZgkn4dN3YX3gp
JHr5NziIRx76LOte98+saDjmUfqOXqvHkxpwAxs6ch/Pdxc3uRund9lnSYzYeHTN4QIh1wxbAjcO
0snGQfRZBwUwTyx4GHuDSXzzy3w+dTy5dnotmKIoW1VmwYOVXCveE5haEIacmMhP3cUqcb0wFGEV
CpdRQ28Vf4cI83UPnV25UZ4tXCD88iaD2fNBimOtYu0AcX5kGELcIgslvoZETKxW+XWIxIDjR4n8
fiklgiyI3FYddYAsy/cYup4NXe49uMuVD4TohjzIH5ZCJDW1VmV0iEgG8y6InMU3qcgZ73geRw89
ka9tUv8VFEjQGqIkS2+qXG5328k6UI3OKAzfRwKCB7zCJVfeQ6kYxVAD9Wbr66EYK4qFSGJrCbWp
twqgA7SZouwIQJb7SVorRPYq2xrmrO2VZwYVpo3d8mC4wVL3BFRK7W/ts2UmrBqtiukQ6KEeIWc2
u6xBB1mW1apuDhEVQM+LWZX/pquWczHjhbzJtA4B6ZRd7tjbHc80ycAwW/XNIRg9yFl3YXR4XlYe
eCmMj30axTwJd3aqXL3S1FaRdIgVTDMq4TXYX4m3cAtY2BEqwVqrpDoEqm55VXw5FzW0ckLTW8XS
IeKw4SOYMZJzmEjFPaPH6BJJ83lRrHjeg2bQIxrBiNqXk8oyWbzgVl11gGpmsmAtbr0E6K/iJNx8
79VhbaKjdsHG74kb+m4C+f7G1VU/rXurvkjy/KhviN9SdgBtPKut+Q1+/VT/XS1mmmqroDzAkUZI
tWoMzqeN8SeBOwJLvgrKaR7f9eqOadq6z5Wd3Pdi3mlia/uq2S49R9VW9XyA4zSOn3FcgwbqEw2c
cCNO2MSkPFwu3Wrk7J6JtprdnBerpJppmKa1SvVD0Hth8ERa+yDvB/7qBYBLCjO7AjehxJQUNp+2
sT/ymNVVJtai1szhJDFk+7Y9n54vloltBy0v1c5+bNkxB82n1elO3Tc7z7h+cgumVmuV4esmBBHW
g5rY9/wBRkucViuH83wlbkPwOy9ZeSXv+VmWVIyBzdYqxAGquE58oUpKHa9livIWt5YTLkVZ0VqL
aVR32Leo5snbfmIxIMJcbJ4QuCiBWbW1mLDrHlzrviW3fLFk6P7PFWEfry/ETcVqQ0vVna6TeDBQ
Ax1DXp3wG8DtfomTZMbTcF3vTLJ8uCpvxTam9d2RWy9JeHrDx1Nsuc4ExIoTNoddX6wiPVVyooog
WifcBtNUIzwANzYBbnk7WmMfFg9pMJ6+Dz5iWqFYZkBwPJ/cTbFRYX0SNX1PaetQJX29Wud+uvTu
xw1zXCJHlCrXTjp2BF4b9B6b/yWicCZutKySOL2Z8RKTJc/FFpPKhG38d+O2XwmWiy+dCmQIr3qB
HECXrcV6aQhMlHCvqPpss/5ysGxVU/267KqjhIpsJStABcrgjvW8SusiZanuhvl6CUus1lldHcBU
tiVx41Jdg4JX7SiShjqticyzrGwh1ampUNxVrA8j/0msiC7+uJxBRQmEFUq6rkRpUALtXImSpT59
6ZUo7W+39qb/7Sw2/nYWM7u+XHg1k3cX5k9bULq4QgsjRtDCE6uVxY1b5t5ylxcOEUR9uhEkSEdv
rQYecP/LxESr30vbrMsHt9NMrqsTmBloV7FM58GOW3RUby8JvsAtuuaC4Fdvt2gqCS0duY1elFsx
LLmq1y0QLSt8CkQ/C2X+TbFcsesoCXtPkjY3NQxTrqB1DGcdo7agp2A2v2X4YlXcwi344osXl64o
NL1kV9gGz09zpoc1GqoRSr00KxLOZexb1uOYDV6/HuDdN38aUphqqUTsjgtt23WxbZe3cbGeKm1b
CnYht+o9nVBtv7XtcJXLUHtTW456Oku2vcHJzyLlW/8kb9Hb2iIf01vD4et7CAzKuY/8hUiMAtv+
hXtLABl4dyJ5rmFcpTGkEa7Izt5szp6VgCm4XEHx9PanOtZvsUjYIusrXUc9110Iqa4PGaCNLdbe
9nSIYSHQR8swcFVQpdOzRxPluqLZ1khxe5/TARp1XcVPGmXuPPeKmr8EiPUKfq+F7NVJ7+StiBUR
Jms+kdgshnobUYNbGxO9ve3pEGiaGr4ItHFa5g9TUQf0vkdctcBgte4eHGKI4YfVfpZaILnr4eUu
8+z+4U1t6K1A7JsKBuj9PsQ/f5cDX0F49zYbcSyKegu+yPIHmxg6O+nOpHvp3Xo5esfqy9K71cpV
GtVutW/qmLP8tXKWry4maL7mGZCk/N7qzl7VnydILCnKDXnigFBZ7W4BNzRZrA17a2nLMgk3hHev
ZlU8uVWMyc1k4Itvymz2DCLz5QaR9cI5ElZhFD3uOkRAl1kilm2OA+cvNnC+JlDHpoUxakGzWMc9
zT5mXDdqe8w3EbF+JNCO07iMvST+F6/nFUSHKah1Lnhb7HgS20G7Tsy6ZqpkvRe1nShsZj0MpXEv
WqWSILzExkwj7Y3Lh6jyxRZqoepLGc33a9Nbc6z1YvTQeWJ8Zo7FL0wPWNCDcM5wVWbiIcHgG1cD
dBr6BgyepUh2bt3gTtRX37gq4jFSWxURzxe6a2lsa6PQARGge4RVRla2wbQTyqcIqp3Q4a8gu3ou
RhYnUJuE2cpPuAwLsZm/ugwCf1pBKp6egOlaQVFOHyN/6uWfxe7UrLTtJXzewIJ08EHcqGru7JHX
zIJsycMLb+GH3htx5wdBsri5E7V9SpVhtk8Ru5bFXf3RQ+ot4sARdZp4nre+A8SAqO09Qaw2vqta
59JKt9SQGUhilco3Zp6J2skWHSu37b6RrRcA5W1v87EDYqw3Ad/a5jeUZTjiOGwUC48M9Pj5za7h
AlWwGFxPwHn+ZI8wdFN42/a/u2q9rpXJv1dm+UsIfvtYVIgaDOIgF4J7J9UjOqZ4VKgpXnYrUWn3
IvE7KJz9f1H436JMwuRI4UcKP1L4kcKPFP6jUjg9UviRwo8UfqTwI4X/qBSuHSn8SOFHCj9S+JHC
f1QK148UfqTwI4UfKfxI4T8qhRtHCj9S+JHCjxR+pPAflcLZkcKPFH6k8COFHyn8R6Vw80jhRwo/
UviRwo8U/qNSePPhK2cyE1FSDpZ5fOeV/Bueu1VZ9dxtwoMag3d6AkLX9OrfL1dgLqv/ACoJnHR/
Vn5vt9CX6xbthZ/mUVGwfoOT+Ncx4iVZ61c5IfFwLUc9Q+v7cXliKwjl3r299UIlFTou9/c1BPsa
wnoDxtTiEXwQSsJ4zyXFpkHYprOAif+BLrQvtxo0Lq/Y0RAKJSg3dygRAz63mrgI47rUjtVdgEUD
rosymW+auukLSzDZYwmmTVnUMMTbZqBB26dE37rCiKS74mW9ZfMeD5RHSUs7VoloCPIdsKiQpVys
38DkTD9Wr8XCRBnneZbLd22t35S1uVRT5uKZravVwn98oRvWFEU5i1Mvf0DnCxhLha08vhXrfvNC
LNRHzYMUeuf5f5zcky9566PNW97QG3NojiaM6H1HG+I+nVh6fzgZOX1N1awJHDMdQ33713ujVtNy
f5c7fOGO13D9+t10s9t4sR7iPRUs14a6Nh6bVt80zWGfWmzSNzVT659ZozOTaSN9aDl7LN+S2MRj
bXePSTF0D93xzo8dfUIcirURoX2DDid9SonZPyP6uH92Zk6AbEfDM2J07ZOqrY7T9DxzG2dghlHk
b+O84Dde8LALrWoRShym9rFj0j4lI7NvWkOjf6ZTpjsTxqiK96Ot5D6HuTqjgZxH1hZyy4+8lodb
ycYO7A5QjWoxvU9MCtjHI60/hM7ra46mjvXhZEzUnTHQlLwbffOcOn6PELyF3ze8cDtC9gG3htjE
hgEhO9JGfWqMCYTxmdWnZ0PqDIHWrAnb4/T9iNeNNaiYahZtQ4WDAdvJNXNelNerNOX54Dz9JyQU
PDxbifdnoB4eCCFYjDudYnNCnL4x1AiMO6zCkHPM/hiGDiVjQkdsvD9enlQ0NQx8+afNJ89f1LDU
q+aVpqUe06OIodcwxtfeEbJmq6V4p2SDTYzxZEyp1h+pY61PNWb0gVmH/bE+GjmmrhOmnu2y6hnB
dXTA0N4WOkhKAoGu/s9pLkeX84uzPEv/xUeQE4r3A0LIkAGky/9H3LUtt3Ek2Xd+hR8VMVFw3S+P
dfVoRw7L1oxj3yYAEJQZpkgtQXnt+fo52SDAru4mxNhheB0OgkI3q05WV2aevHQ3ln+lV5KMvg/K
VRuZF4kzxV1gIRXHhKxQgZZDTBFgD++u/Pbd9eYerujb+jtW9nGvzKZ5Zv3nJ14c0NMGsiaokVSn
L51Ya0hFj+n/5o2yfCUPoLGoqmWWM4dVFDmzmLNmzkTPTa6aiwLQX/b3tKjf0l+P5vJaaTWdC19a
M1nBD7+s7+ldYm80rZpaWfzF8VegKKVILwR2b80J1q5B8WoVzIbUAuKQBJc5X7r3B3rejlq3//Zx
mmVFfDzYwddczuHjvwn873cPoB5vjB2A0wdAK26Ed0LAWsC4wSwHFqOA5+O8qOx9tUHNQY/QDqMu
Yx0O9UgtnyM1IgxIcWl++/56f3yKD4CqlQHE1KyQzRXWokrEQ2DaUnVALFJOUtSczVmIcbtFDIMQ
+BnjNjr1t90WAyyf1uO76EVYL8l1OZhCiiY+X99efvn0+SiaCG4lBgfpnHG+Md4GiqXBMYStuA6l
FZmNzNmPNu5spA6Ek3YOwmEXPC7u7/ubh9MDjt4IvdJA4GQuIkfNREvkLZxkseQKCwVNdxoRUYg9
gvEw3fxemvn8QW8n/uDd+svt9pcjC/zmjZMeGoQ/O/xCitRAEkJWjNsITNwCk+aRGV6LkBn+Lcez
F3x43uXjBF+95D2e5dP7cy56AS/nUm/XYiL1KE5+Y1eBLK40gS6AiKGoyBlPArarKphe2xQTGrGl
NRHOQ54V9mnkJex5dPyih7hgNK7UdkI0Ts+jfeMGN22cUm5FhhfYq6zGKKii9LC2SgZQO5XwI4kE
ruFU0OeNx/GBuc/YusejY9zYYnPchhs9We/hwdA/x9NcMCcrvlKSRBh+IcMinBMK7DkLOLwBfgg5
sFwir77KCOf8EoP9ONeyEI8HOxkE93MZQP6Omvo/X9b3a3o72+6orZ6IBG/Qx9CwVTKCERURmiUV
K6vaJWW8LYGPrcUhhfHtwngTMJslMFdH2zW8a/iIw5FBDkb7GGtgEiaCKQMcoZLNkNFlbeGNtVvE
MRqqhxDUAoQwtRxvfxgs+fdDam94rvyIO4IweOy3zGpsWByXHYtKGWZlCdGUmkWwL7mYs0mWL+vs
tIlAl0sC7SbK9RmufBSUrd7TvyEUH6SSdnDQ1ZvmeGbFFWKPIBSJotIsmuFwhgG79bwxXN9vlm1D
Zwbf91jGZw2HJvJdLci3lscNPGQGP+TxzhEiDN5cKh8gSoQUlexdQlwVEcu2VEvlIuNKnZfnh8+7
2+/ePWOnh9OvwaKXQPQirO2CCFd2yvn++LS5O71oiwgzWRDPNTlPXJfUnDUEHgFWE5V5kyFaks1X
WEaf5YsY33iSZ2zh+JROEKkWroVUJ/39RCzsn1Tg2j+snygIpIcd1AfWX2qNQkjHHFQFF6WRx034
UeGlcsKX6UWW8Lv3/8h3nz5fg22NxHgORC+G5gtiaH7cUjeDCz7ZIWtWhq88kX/oRLHcMCMEFMRq
gQ2FyLfmpkTy2FKGL1qj8YgdFGu3cyjWrSfm6A4b8SMItUAEcDBDwy+AZGUILoFKp1wQx0YHnS3C
slIdVjI2mEn5f97jh2MdYLekjm6zOa7d7hienZaPFq6VYGShdEyqmakMxx18Uoi2i0AYY7LRtad+
k3E6DCEsuJHN2h63Ybvb3/zz8lC2O9kEu5KkR6ZRYk2C4RcNhg9Y0CMlWK5w9i1Q8iX0SOajXfTz
ujmY7aWe2N9DbP07TC6c2HAJQedWgjQillS9MoYh6DVMKVy9aEFyCvZXsQJBZdZf5aA09vJFPB69
6AHOCbTZ7eRxCa+3X+htYat4ipCMWOF/WkJY1ZCEtkx5jTiuaNDIjB+tqiCKKVBj1y/hZLQxEsvd
PJ6xR07wtH7Xt78+iTf4LSK2UhAgAcMIDQSg5mAbbfLQBuUYdhWPTemklH8Nv/V2jKHz0Le/djIJ
wRdkEn7IaT5VfC5v9/vLk5GUhrguyQNDgiUOHjyREiPCZpagIswoqBq4OphkWTQz83EnsMICLD01
Nt99+PDNG33gBYONSTpwpRAtqKQq5agjAjcHvgP6ZWuIQWh+dn0x4vLC4UCPcLOE8Modrct374ZK
xEmp5RDaIgZoCG0UzDJHaBs4FAiEG1G7Vw1hO4div46f7+bvkGu1gFwbM13b3e3u8Bjb9c2HxxfE
vznYA6nCII3PHttae6ZlIHaJfR0y+Iu2Lgfl4PVTeJGDnE/1zEWYn9iLZub0xRpzYmDt7vbh/fp+
D0d8vC7GDxkfaV0MsWqmhcJuhtvHNXEKHqqVHKyxvrXz6ZSnV4W+OMiOf39msx1f5rz/dgF0J3Hw
ei5x8NtTnHL3+Y8rMI+nfejIjlMY7VJmTYHUKI0fKVlcx2xNK5ye2S6XY5VuuAmSObu3GzOljsOu
fPvD2EKqlTowBW35AE7ZYihFqKuCk4mCBc0VK9kiqvY8SH8+szWbojOAh4Md9M1uwQhuuTlum/e3
H58SRANGCUvidOFMawNjE0tgXoBjgXJJmBmBrfMfYOwu/2nyMWQnLudK7CRXR8jbv/xlvbk+olbc
DYw2SFlbgpryGmAehUnMS8dZ9SJmrbSTmff+cDxOB0Da+cZzOyqGuYWHvx+zO5rrlaYdCF8nRLOV
leIRLdNS+owdmG1IUnJT9ZCcPqtvz9Tu8uOxix7ZbgFu4Ec9yT9//+H9zZeP17eTWsWj4QZdVlGG
yArlFlRADO0rL8yGbBysg06Wv1KAtoyklyaIJWkO9bwn73p793B99ceTqYPP5oM0RftUqtKMNwdp
NKKzyFsDDXEe1Ch4l/M5tz0euAP2+LKkDpjXs6pL9w6mY7rCKbESZiU57Q8LnVItOZbwyRQHffMx
QMu0goNvUudmv5KBf5riuUT80xkXPd7LBSH8ZiLEOJ/6ll4QRA/gfyO1X1E+bfgkQSrChsaxcVwT
5CM9GEkF42vBq1R0zT69xEcuzfY8i56e2cvn55EcQpXd1e6gC7+VD++n5QbjuLSGQ18bh38sxlNO
vrFQIZv0OJrUn1VuOMG76AW4WpBqPS1X7T/vdohv73fbu4+3131qgdKh2INDNlQMihKqicHj6jUQ
JKrVG4oLoTIJll74nLWpr8HXPwyofloC1eU7pqf1K7Cdm2RELeFoFYhI/LT7eL1/uB8ZBTNs0+h4
QTxJicumyB5HUDkRIHcKVPOvwYr/R/7Tw+6ktsouSK1OBZ7FnrU3YHkrcYhhVCmiNp0ZInzE2TE1
uKI8JO1FrrUGY8I5Y9iN3EG7cvPQ1VPXRb8ly27z5eMhlbUnZGQ+xJCLlypqmQ1oaAC5UHD7ULgq
wdO8i1Q2NC/LQI1nWF7x8Rm9DBu+IMNWnAjmp8+n/BMR6RR1ahLL55qGnihEuKEUx6wIOdTkVc1t
QjFOI4wnDnw793FBiGm0fZA9391eXX98fO0GeRShh/L9EHR77IfKNVbRgmFgSSkFFQ1rPrTEa062
5vMFmfkcz+UjZyd2Mkk1z8AEae0k2j61XSnByfhyX8WQebQUbKnSKovGD+V8p5RJ1VV9bod+Wlhe
reeeGnGDXnByz1bpDDQGRA5eoFGujBKkXnnJZEHY70yDJ/16SfJ8pS5Ozrno4c71KwQ7jWSp4j68
spVyMYeCXXBypQ5JNs1dptyF1FQ9EoaK/CAbspTEteT4+vWqqkckz3cG0NGLXhy7JGOYXKdfdjef
ad8jlqKE3VAjMSVqMD3GU0aQZyK1MzjqVAzc5NJ0s/o1fNdfMfXySXSkF8YvCbP205LW9smJYMv5
wSXTBxHxUmtJ1bJmqO8hkVSyaCYVdBqmHDv7RTmH8RzPRIqjM8ZSrLmZFyrX3O6OHufd9e1ufR9v
Pu4w+VOlx8rB07ZWja6lscbBn1TmVNrWETY9upQo1yvLn8SkFoD2gi4QirUw4kgUJ2+Ygnp5SZlB
uk7ghEoVKRnVwimPnrH7ZGa15Jq0rdrGds5mLSSwMbVcwqOOvqhcrz/e3u3p5Uy7/Z76gA/vEn3C
N3SeSa2STdgygupTBkEwgjjwHRMlLhJc1lATHXmo8+N2EKWcx+VrqfykR/Td+vZjBC//Y39NLv/R
Kg2flCXGSgkhFYvURqC8gdt32CLwA6ZogyDamVcnY2NIz/V7PJ3RC60Whd4e3dqH7f1ud/vTjt6M
crwWWtqVJn1AFJFdKIJp46ilNHAWtEEsmqIE3xbetNJfjvlwEzSXC2g24pkejqvOuw3dHEbIoXUt
Rt1K4aAy1FnAY2QwPPB2NqXQQMYady9q5Piai5uf1wt0OWdCa2PdUy1zux5ZGhvsELLVZjNHhMlM
q56SfAkhNOyODdGoXHNwcVI/6ga66GfzSxCmhnvsDJd6mCpxF6r+1Vypt0RLbGxZoHrQOW2Tccn/
h952fMZEhIVNaja7aYtMBXBODgc/h5KXDtIBaPO0CbxNLGrDWYtZeoF90OIrEoRYn+mXqb0sm3ms
u7Z2ekNDuvmye7i7e/iFiiT60JlJn1dDWzF3ssLAsAaqg2uRYWQSIr6gVMiOI6Q35yO+tz+cxn+u
G+R0QofebueNLWsn7Ch3OerIkwd/4ltWoJXUg0mRuA6IK2I2oMQW/A3BRhF6lrpc6shbO20Wpg98
gfkOKaK3P9COOKSotQtDW40rQWbQ8OoEGWgi5BVKxkG4goMCutC+uikeB39+Gz+e0INfyPyt3Wam
iL98uR1u9TxMTUVlRw7GDtn/4pr0JjPEj5WKkHCAPipmvLRaKAMPWF+UkuoneUaQ/qRemIUaGr6c
quTfcx73NDVTKziSgtWgxae7EYJLlUmZEwIlkSDLS+Bj2GXIODCBuaBt7tJOMgzr/c0pbpOKGjEG
NRONQDUmEjyJaqKwFFWkfmLjXC1Y+bPZhdOoPaRLtwDpShxTPTf/+rRemSfeQ8Q5c2WCSLBcBstG
AXDMXjBenOVKxczzpLFhPEg3u98s8MKwPhUffv90A657nF2GlRiSzikWm21hpRmKtypn0UoBIm9s
aUXI6MSkqXY0zkU/18IVCVfT4JUq+fuj6aUe8d1lu77ZvbveP1Ciduhawgc5S1Ek1MIl5qjxWEkD
8iUDDE3hUcnohRT59cx8j+X5nvanc3rxr9ZL4m9OjdWHrTO8VH5/ogWDmAhnSyiGNQs2owxUPynu
EIGAZGapoUDm3G4cDzmBNM8pr9dCTXSErsjDzQmTV1SRIGA58BKr8ohOPYJVLzKLoH5MRht9ss5Z
6c+GC+OBO2S7hZgTX+7OUJdVO7yJmKi5hCoLPkSgp9+pQbmZ5CIoesrQaNViYDEkz4oB0RJVBBde
sRv7iOeZEx+PdmJfuXnejr48XpBfd398+nhi4/LQM+ZERnAKwkiMICM6SiBsrAafnRXJtrrcMzYe
awLCLYHYHs3Ul9v/vb495WSVWRFJbBYBIvYhg0unvEWAsUxARS0FLSUECEP/9BzGeLQeRliIG69g
RPo49vPN+uHq7v6UfXOadueQhw0xwFeCOztHtlMp5qnhxWYVvc86wZifTRF3I0+wbRawrU+6vNl/
WvHTCg03J1QBBqOhIJ7yVsZplrBkzBTTYspOBjmJX0dj9HOvF5T2amcnqvFjoRq9oLS04nJoua50
Txpn0g8mUmgoKyLV5mWhPjlu6+sXC34sy6f8WMYybcBaZzJteDj15ay/PNyd/KKnMC+EUK3gjcFV
Z5h+MKFYcmSmZq5Dsqa01K/n0xj91GEeJG2EPzWw/9d7OWkjcK1YqeCTa6F7ER3dUusaxz9FtrVk
26R4pTaC0+QdZLnQZ7WRahpI/G13v9nd3+1pHxxpmEjaaZ1gHgxVxH2V4DTGsoqoXUnHm6znY7nj
oMvgj0c7uGqhir9R1NKpvlITWNX43nMp/nu4x4c/9psM2ZYiqqoclERmT5GFgHJXD1MeNXSpBN1a
fgmfPM6wLM/xaCePWehS3tjN5WT5//F2nII/MGGt7OCIYkzJSOsQitBtB9TslqADrFprUom+1KZf
gn48x7IE4zMuesC7JSmujumf+92nu9924y4kPQRRRtamQmVCFyC3CEVhZAPTxhoE182HrtP2yahO
x+vBbOf2dAPvNXP3N3f3H/643VJoHA4rSp+PkaarEtbdUI9mTpKFMtSMVMAhX5p3r27dTnieCwcf
D3eyXl3O7fdWXk5l/evbU6uFfKxv+8eGIGoMV1lj21u6c17DxYXMK2vCJwVLXnEtXqVG8PZsK8bp
8EUviVwSz83KOwiTKSm+319vrm+G27IOOuLC0LkD654gokBYDjk5dfF7GHqwNCVTCD7Jr3eSdOOf
6SfpzptI45ekmUbuT9n9oYxJfzD6ir4h1fGK7tKi+12ygkx0r1GjW49yTjbJ6urXHPBXaghPxzsZ
Nps5l95e+mkH+Y9f1vcP/zrcig/EtOE08eah2p5rhDpaelYD3X5voVig+Ew7m5otqpmlfpgxDzgN
/gwfOB3voO/kPGa6lPLUKPkuvo/5b7NqjQbn9/SYAwu6z1RADJ8a9UxyHXmW3knxZ/W9jBFedFKo
eT7tUl1O2wzWv41T3YdOXsG1hdkbmvu1SKVw1ZgxZBAS3VFMlXsHPqe9SbF+5crEn7/mQsZnjEXY
mYUKAr48VRDo5vQTCT7e4N4EV0m2xIqiB2n4nFgIMrIqbCr537xdS5PbRpK+96/Y41ygrffjWE9Z
EfaEwxp55kqCaItrqVvbD4/Hv34zCyCIAordnJ0OXySKgKoyiUK+80tPiCNtR+G82oqIQ4MIuV/5
sBVI1F84FnphzgsOejkxNICOyEBV8tqDSCWxc4GzjmlpCPgJLhD3kq+wXL4iT7GtMzWoqeJyUZs3
Dq6fC7jMHIry2NjiNe8siyD/otMdPGTwHoy1USkhZKAvVv0tV65JO4gGacPajgkZqyDj8WHon+5L
VJKM0oHa0hxBs5XYay1lwlCZjZ2lmoIhboJULiUrzKs1lvPqr6vcfMX9q5tqroet3TNoys72fnq/
MvgNc1kreKk8TwrEiXOdFTp1gQvHDMlg9+c3M/hPu9/U9PEW0XMy6dvu6yJ0VwKHOURqfQTXxMOx
ycxjK3PoRGA8gZ8uM101wy/WWO1tWnvbOU9Y2H7nz7F/pk4BF0KZBLUdO0URwMWBl4QFWuCRqyyY
jizElddbr1YRYncNQvZq7nrx37uPG1XggWFqmILz6EHcYCTTaxm7AOaEUYmBGlN/kio401extTeN
Z7s3chUXrMKiM/bCKLw8KGAHbjD4PNjyCCLVeOswiW+4UtkzEl8Lw9VLLwm8FbuthL3VXGzkxF9H
UYMtjeSdKjUt06fSduItWOWpiwTELJipGH4AH5Q5mRNhxkX1sqKa17/0zk+XF7RbsicbXw2+pHNg
4bLcTTlFq4FeKTF1RQLp4CcGxaoteMnECytWGe5LktaSfttDDV8e1lWuP4GL9DT8fBz+eU7HnjR+
UQXMGCrAqTGYxeIgdjqPvjyVUgnCLZP8qhzKdp9Lkml9X83VYdhydSBzEOxwfPy2ezo3ukpCSyk7
HtmgBdjwEisMHQajNOhbmRx4bzEEE3jMtt3LUi96U2/dN+hhstHr+lgQqwoADpZvFG2mxvYorhKY
tKBlOUh3OKdWY3lc7kCdac80vGHev4VzhRrq44mMy+2x8y1LVqkcNqobvrxdZ0NfVNycOqVdlJ0M
pdKMgFZDJWcYjVn4IJooA/+e4r6khi1VlG05UGq2i/72IeeVGuYaHHobHXiCDtQwnJPOZEW6zLXI
YEMGMO/fSA2fd6+JVtsTT0HEnYg+9vd3v50V8dhYT6QjDiuVGLpOWMxqQH50mengo2PKJ7vuZl2s
clNvRRv7m/VjP6MwFMQOjGBRVImjKKGMvuNjr7wlQusMQtgbLrE/hnYGpXOOORPm4SDYeDVqSNnm
BeCQcr1mZ78Vi3TP14HBn4+H4f7lvpOgA1MUy4+URDODwq+ddEeVCy5yTZvhtAUDyy3aLCzvuKnp
7VtM9Kcz8XzXn3OqBVrLU7CJdRe0lmOptRcKTCKewERR1mSSLiRK+saR2PPWb6jUyno4IvrH6Vhq
jUquHE7nLJhrYJ+JiFBN4Nc7FU2ngsOScJ2zeNFyOC9bE6X0lqhbu5bEvx1LA37e9cMYdsCeQhRQ
5W/UwVKAZQBqQTAsGiDadI6B+RgkS/CViNJeVfNw2uGCUJ6u3tTUboIm8Hrc9o22+/cPu2+fj30p
CSxQFFiqDHZPOZnUgGAFR5dwZ+Bpx9IRBfZPDBLsdx3zKx04yw0uF52c7liywJm2WxaYmZsA3ud/
jOnqVdccuMHcezgPBFtrudRk9DipD8TybLTWbwRrsqKgpt7sttRLulvbTLt/BtjmYTdB82E5IMVq
dzNKXwoqg4EbBJLMIIJkgt8fKzONdYyRRI1oKLllmve/1zuswf/m6xX5cti+l3y328MJql6BopP+
6y+mnBozhrJl9oKC5QkeC3jUgvPOaYs5f6tJDiCqDXkzl2XsN2/eNl6ruDqIrd3BD3KGdfh993Au
ApvSjhxkdFaqY4jhwCO6pNHQDlgRwUhLeFiVgC0WqTeXvLX5fiVVwA3IH09VoWOyyAjwMrgAGgRG
XjNjiPKESTCjHCXJ0VeAycqa7V+pXKroHG63VoIg9Fzo8b9fjk8Dn7UCVUUWR7B6QZ7pzlIHRGrs
0JA6dEpZ8ENsiIatMprVQjfVbpw1SBCzdRV+yh+f4f9WKWoQr+Ato/R3GGknSneeedeRwBzxzhsX
eE1AvUxNwbap3wp22zfq9eLY5cHwbiVo8Raxa1cKC2oR7HL4MRj2PBvELk6JBKy3vwKzJF5s2jhd
vamp276ygpNtEurr1/u7H3d3Q2n8AkNNFYFfwJaTLolVKTHYAKYVIo6CecU4FWBrO5bsW/gOSxIu
MXi+46bmp3EyuFgX1jThvKbcAC2tskKPARZg1zinPCLcWCzsi50nEZuUbQg+0wxK7s0TbzM5L6B8
rVW64LLF+rkR4cvu7pfjQhkWCzkEkUmk4CSB1hgTHwG9wcRBjeRIDGOr+rvFKvX2vW1sP8zN7F9B
LT7O9eD4QiZ4AaxHEAUM5IFZi6YiVx24ZjJYk3gmqxjeco1680G1NlcNqMHVswBSDD5uU2pQo9SR
u44KhoBnWXY+g8BIDqUTVcIY8TbPunHjip+thSnErVyZZ4fh8den+2+PMy+YiiuBqfEDepVOWaLg
wAYCpjjHZ+2lsR0RSoFFLhg88+u6NctWJ2rxhktNm5sbb2ouVIu1YWXRT9GmDR4WNxKjLBzlkVLE
yhh0pyS3WPEMek+CCSQkQqxnFQkVV+QOLmNlWVhpv6VW3rLVwTpLEnwt/37Mx4VDSkCikFLTw6Vl
4Lx5jl332ZXodYTjZXjgCuzPVpy93XWPW1yW/Xi1YkNv+1bxS7GBbfz4/HAL/kJpmwLRX47S+All
IUvYXanAX8EmJXD1OofoSgKkhEyZKfaK1prXv1SbP12uaAeLfku74eJUrxfeF0AB/H+P5x5V/Q69
UaHBvkQgRslQzxKtO0fAOY1EJsJAnylO/wxbswbT2BBc8ysa9tV+j7jUhd/7/f/0Z2AxVfBGo5QR
zGaN2MAJy8UkmFlEdkJE7XJSJrAVpthylZt6p61jInomLwZhyoH73v21ceK554hNxzudA/Zdc7Bw
SKCd4Cw7QWMMMb1q5uDaLxx1uHpTk6pa9Js15MLU3vQZ3lQ7dVgRglKFJu2TBIvMauwHwooGlwIo
hZSYi0yoaN4ExvPUYPXdh5cbsL77UPNnG69DPwwr/jAM3CP0x9TGx6Y2PnBWvEGwN0cIWMGg37CG
yIDDIFKAs2eJTq96v+EFwMPwfU3utga7fHkS91UQ+NPT8csZcXAMWLtIogsGTE0gbnyFrbXgPMBD
UZSC8+tWfsOFJVdkNYzhg5jbZfvnb4+LSCcfASkslUY4QTpW8n08mc4pysE2ZIwZ8PX0GgR8uU5F
wMGYBgFn7J8fShZgdjYLQhb2Q3h4fJ1OKM0ivOqOaglvF7dC5SCkXPma1SrL/aVoaAT4co7rhc/H
u+Fx+Nv9r8Pd8Y8FNhm+IuCum6Cw9oQo0GRBw/lhIXZCSaKpBXkTV4S0l6soko2QuQQPdnWwvxuO
Xw8IarOE2JORgw0Abrfx2D3EJA6EAQcPh9+ARUdAzV4VSZsWv9Q5Xi7WRBvdItquASGGHscG/f0B
/onTHCbaFT0Vc9NskGpQVBYDaWAhdGAF5i6CtGFaKK7Ndfi01UYXBcvinoodtYVKstLeqlKUXru1
7lNA5/5Utzp9wpgUingLAlMFbC4iEqyywFhHmDGOgcs/IuVfZebAJpdFP1ysiN81NJcsRet68kD6
z3OU2Gg55sMwey7Ak0WbEWupDHriEhSpYjhaSNAL8erFajUVPWlQ0c8xpPD+HzgG8azBT7HULFnw
2AbjuVLgDlneeZoUjveQhistPbX/YSy1SgKtCKmY2KutkpH7w7A51ruH/nPBUsOpJGSaTlJOAcWT
bMwI5MUV/LggxTHoRz03wV4VGb6+d+lEyKUTP12umOz5Ntonezgww36CKXwY+od/fTvX5nMuz3VL
gcgcwZ6UiOKKiHtgzIN9AyfGCON4oBeQ1VerViQdtp36Vg79pmru+XC8f/c0JXQc/muRQKKTA1jc
P02SlT6AYwSGOreKdUaF0BFHEa3MEW5ePlTLxS/4sos7lsyAct7KRkXZ2ncKOHTvpwFR5YaHCV7u
nMzVFD1zAiKVeQkCHdUMD2XCF/xBBNVZwQtD43WAZY29LgiYxp01d2LX4E6sy8t+2N398nD/WzU8
iUUDNDtMS2G81nvgJsA7T0OOJFiSjLiqPP609oXS3+nqiuqhQfXt+sXe7/pfn79ViMFgP4oJDqJk
HjgRCRESrKVoJdvUgYdiO5+NDFx6YchVUt6vdlpyMF6r6K+Gbi2+XJ+pYoIjklihWepSQq8QfZyB
ihWI6cAs5h2wWY5zmlighsf/t10/XluRyhqk8lkRfPyG+KnNqi6VwRRwBL0lVKEGjE0Dv3fnCfhT
IkXq/Z8Fx7KmsmZx27VevtyElPv7Xclc4Rs9zoECO95o57vIOMZCJKgHaz38wamAXwnTh6+oB1jz
km0Alyo6TcNnUmZvbofJ2r//+u0BS+TPcabSfAhGWRaMxo5SBNsXIIAclkdSnzxYusRxsvI9NivV
dOz3LToOm4bUZZPQPFeElfKiItVj8jpm24H3jxjHOGkC5/YRqpQxLGeSX8ax2W5Q0bkfts6J6jVd
qaEfhwdsINzd9cMSN+Yk5oiOwUQOL1zp40DMTHjFEHotCMq9M4FdFe9qbHMhLr698abmgLXYWnc7
nCdfzvVp6GIkBrorqi5nh/VEYNb6TFVnc+TgT3tBrlNB59Vfm7u5or1v0G7NKQoGh+7+y2/v7Hlo
BPrO4I+BoWI6arG7HdQ9aH+Q2cQzcNXA9PV5FWGvl6kp2JEGBbv9Nsb+cXd3KLbIxs2RTCvFcFgg
NodyrPt2YBBiQJHAmxVZSubKipxpk4vx9el6xcLQb71+VSYpVSwg3tlheCplXY99yQqNQZSxUCsZ
RVUmoPqIC4i+goa6CcCESipG6sJ1ziZm6OJpm8vZns1tNzX1LZY2neSjxVi8JvyEj2YCD8G/kSnw
k0XmviOKebSwUCADUwGxAEUkJIrXUXDK2i84bHi5pt40BPPtfh3MisdxHPnDvz4uUh0F0VZOaQ7C
cLQUQ4QmbIlB4BiK2EgS56QkqkHpv527saXnwqPb3Fdzv29xf2gMyMKajN3xrhk6yFjoocGuoQHn
AvoI/jZaOEEnDaaYF+CQXPlOzdtcfKvmO5aMwOZbfQFfrrEfHqdX9hRVw+LpqZfdKePhqXVeG/R9
iQRvyqHmSGVKgs3+RaSFauUVaUODNJwQs6/bEauTxcZ4MJpiXoNsp/AiZARVF0F0BquFEvh+iO1H
g337/O+Zmkutia3zpEnjPGkyzB0EP334cRt2UMEmFXCSK8sIuZRU55I38NMLxyUlnmr3lmGHBREV
8XwLAA1fWnqyjT6P0bdu93g3R0WFLFgdpf3QGhqTIAglA1qZq6w7nyy4u8E4NN9UiKtC1O2KFUGN
SZH45brE4/dv/bvpaYDHtftl+FqGdJ/NoIhlx07FLkXUeZig9DLaLnHuuAc9Qr18BbFttfqlIMfq
thU3hwY3bO4j2/9RRiKd06wFLjGBSJWmCwQL8g32NMDr0FGNQZ0QPBerMG+1SrW/aiRStbJzvPmP
c6xbYfZoDLLwBM4xy50wOHWBGQ3mFsFBkyYREQXRLtQE/NEKdmvVMF00WE8zNtC3vjGuSopIYc/U
gWLBfgRQJ8YmhqNXNWMZnF/TtrLn5Woi+sZ50ptU8tTmMc/pXR6lkKM1RgnMvWJBM4WjRDBJBUa/
FQ7FPX2t0Kta/GLNV3VXxcau4cPoXU9WbMTj46/uYX98eph7O/WYhiqhTmkJg99T4rQmzqQEVxwM
qhxTlF5KTl7p8F6tfkn7VjdVXOxbGmsvW/VbpTQan4IpvQVjARfYFkw4sFyDRwS+rDyYtDGBoyis
gJdGCfs6NFNZ+bK5VC7XVMvGS9xz1YANKo3f7XJyTYKLAltAsvFYFQ1erWAER4olCuZfYJxcBxT3
CkxcRXvft2jfNM7D2XPPCA44FjiqEQ1DWeZpyh0CGcFpR7GeQCww750G+Q66+KqA2bT4xVOPFyui
h217K345GzbvP6y7OGLKhgbEbJEZrTGQWzZK3mWmrNdw5tUrUfzruzjmzVck9y2S+6ZD8Hx3fHoc
A8if7sYwfh09Nl4y+LUzK++pw1PODOhU0F2aRU0kez16jCu/EDrGyysOGidl4OexKPhu/LBC0Z1m
VkpFgKrsO00snBTC4ViDhQMMCJuD1xEU8dvNrKypWDJh+G4r7Y3grIXwVQ+uHHsEcHDlCC5NnfKZ
Cqy6xCkIDD6BqYP9rox5GzCrlq4e1vH6+MrNbTc1B7zF1gYAfz0TYqytROC8UQuMekB5B/LGkg7E
EbAmwcw2OiP4ArzsiuZMrhvr29zuymkVa4/aCLFvsLjR0wg8/Ayv6g/3h+HL1Go3x4pMoMYJsEBx
qgoPHh9ZIJ1GfwTsBk0cvYav9R6XIZCXd9Xc3DYemKYtSP2pVp+eUnlcKfhUCnm0ZtQ7VNOU4Gwe
Bv4ZB7kQJHhBEkvMnX9VZbxQHzVfvqnJ3IaXjb1d+26V6z4G4k+lvFyVKMH4oWRevMvBlty0wgMX
O0/BmzM6GlDpKipB3i5McKblpaTB5gDa28YB3JF+FSUGs6Yfzk3xc8VnspzCYQO9k7A4w1Peucxz
58AmkSpn1EQv+dKLdW9qCg4Nsqg5ieVff1/AYWwAKMC7t9TZzmScnW4jH8NLgnmCPX4p0HYn1nnV
ipi92oZy4ct16OTL/S/Hu8c5pzi/oNazLLNFjLMyWQ9+Hq+t6SLzSmkPh+O6GSZl/VfPwZKKC4mW
xR01n9Y2+LSz2/bTDuysu/M5mKyQnCQ1JDJMXJQ4KwjWDHI2ZC6ZL2Ag/I2skJqCFfFbU8T0g2og
oj4fCw7UJHUKtjLFyKqCc0vQVKVBg/elQiez1EKDk++Zu1btffpwWex8qsrrTKtezRzY2r354fnL
0/Hp/rn/vMkiY2eQOCETTjNqmcyO4WhwzFTjwC0GnnSWCOdKmSAuKnddxvfytlXqd31bxeLBNFTC
YZh7Kt3PeQzkziVf0zsMb2z0YIMIS9BvACvLMoNAmDRxlVSSMf6HWDzVyarpqFlo1Mebw+0aInCa
q/X4r7unz0OVNsKpWtNDGj+gkqPREaySlwkzPAx8OgQk6KSNnmF5WlZvP+FgtEc+bincGi3zTcuf
wrKGvW/Zxt5fZITHjG8xNPH/Tf/kYxjNCEOZRPGccUa3ZAqUo5AFewNHwYao/xRAkfHaitNDg9Pz
iJP3339aD0iM2kmLrkviZRYQAigjGCEzlFDlrQ3+rSbbftoeU8u2w5mt5UQfDut5lF/+r7eja27U
Br77V+jlZi4ztQcJIYnM3IMQkPoSx9cLybV98RCbpJ6L7YxN7ub+fXeFjQEDSdub8pBgYKWVtFrt
SvuRYWic6hIVxDIKAzSx9xiyjNhKk3wYYfB/l4Kao/03O6/buDvdvuv4elDHUbUgLhedbg/jqbUC
YyNnL3BJH7fRbBY3z/Ftgkof8/64NEBGDtwcJpiWGkhKvhLrzpbd5THQMOoCJLMWzNOj8LQ/KaAt
pxBahY5B5y4WoNhOrVcexiUPHMWlCzKiaMREaZRWw4TTUzHO5646TUb6lN190vGRNeEeqj3c2gtP
0EECVFcfN+ZBTQojDIyiQXTlfmAwPpPzNuPQQ1U9lABva41oMwT079G89cRPXN+ZX0Pkq4WzL+Yj
GhVxGLjWcUANWipgnkYHNDxt0HnQ8YRN8Opw82aLUKyl54gRX9dbMG8Zhvv5vHk2lc2XuE9RDTLl
soBqZcQwNHaTj4OUqAwQMkzJgEvjRiLoPZWqltlAqoWV3Z8EOCkjDlUSDbjGSIoszUcbcBrRodK4
R21Ah6Zx5CpXvnErrDvYUEuoIcDuVGrw5x7tC1k+velLvMKkgSkGWqRUGNtPhUDRCnhdaLxASAVr
Tyh+njJ2xKXDd+Gm7UwNWihamn2Skq5t6dfJDSyyEjc8XJ9bqzlfSj/CBcmRaBprtEEbXzOMhQpM
QJkG/eP/y2gJL+ptPU1dhw9L3onGTUtY22fHTMTC8k2KCRSBHGMPN90U8HpM8TmUgXQxLHgMClWH
LWyjwBo6i9PEhPCQlwZ0sDDXl3vphB4FjjJ0OBpmcEyZF1MKmm9smOcrj6mflsi+DV/utuF7kkgO
VSuTPucvuEdR+B4VQX61gW50YH3ETC5DVzM0MeJyGKlYhzE3nivVz/A8qmLQk5B8/0WjjS3S5iFC
QtWRsBQDN1vkpt7e9s/e2AC4FAQcxoexwjxQNq6nIyLrlSQ8XBf4mxTwWkVdMkLlk3pjvLYBE23H
KZWsRUdeHHncaB90Be3BIuE6xgMZBxoBwgJuNPkYmedVBvZKvqLaJ3Xsfd6Cvf9Qma2rzdrUDNiB
l8nShN1HPZThHhEPOJ4m8iGmj0CzJkU1VdiGrmnbKLmOWMtpq7+Y3x/MENAWf/ktO7pXuS4e+FrD
VwNzXjMMF4TGCFqgSzjIPJ5r82sHUjYNLhuFVRFJWUukihTE75O9T2xOcepUdSrigRLShQXWFZiD
OI7YUIWuA7KL1MYLeayCN/rrHsrvC2bQPHtKOT0dX3x4YH/ZOts+/qjtAtIymbqjuU8NbpxwdOyP
Qw+95tDLRaOPPRMn0TZOiqsj06J7pZz7jT3JVfr0tCnP0oU8oONJDvM8wIRlFDkzTBeFG5PcE4yC
oC2F7LXvqZY7GODBtE1sPtkslg+Hg5Obl9UKBuAc8Dbw+Y6s0kVG7n8QmDjZljxvNxgFG0SRPN0+
ZjY6Xv7Xcnd4cW7bm6e7r7OHzXb2vFyckyKeV5FKeTaHv3l2Tpzqw12Wz3Z5+bxe8WvFO/+tePhR
aRX0gK0P/ZKW66ytPhd6WvyzOgd3E4J5rqv9i0kOp+unHwR3lvDN5oGUq+M5STZ5+vTBpXSkJmSb
7ZaLbJ1/cC7fO+/OyO47Op0tZpuXfAZovaztwEJliz0E5sN8dzb4sl3m6f1TBgVg5WWxoBBdkO/w
Ms/WhzJ76jg8qtaDRexrIbbd/dfd+HNyq6/g7nN0MZ5ek8H+f/LHp6gb7Gb8p31rprfXCXm/3qyH
8036lO3m2eKMDD4cr44CyreHm4Ge58tvGEk+gUmK5NtygSqlLssfZGAuyNIe6/RdTDgNmJ0NW1WA
7lphKOclDAcY1L3W8L0liPbLVU6JG3UKmNvxHj+bC7kNN0/UcKvCYLaFVtwq7XHJINzH1ASWv4Zp
/2JxbLSKg9I6qdTz8YZ8HCfkEbkiUg3ALhp1UVaF4V0w74vgszjqhChf1Oo5XIdvCEy3dLFADwIC
SKMFeoV0zwaXNg430fiETNfzjnFV1eZP9NXV1PQSAKUcJ+v+h1/CPL6k2wV57qIfl5X1SIDJVhiG
M0kfCeOssypWHc5PBfsiMKzPu4yM1w+bV0n65rerZZ4VWM2B2bWTAKvDJNpckotb/Tns7ARPjOih
DxgFmDydf32FOVA5YlWYu8nM9pxOelgD4Ufy9MjgS3aPe2cTO8xd9ahjPdC3g9ks1Inux43REoYx
B2HGE30R9QN59X6bza7G15dRCGTdPaD+SJS0Y2GS6Pekv9sUK/uaMQtzez0207AXO8+r0c7KcvlO
JlDQtRi5JW5Ao3u+tipItQOoCsP+HatOpoldMvp7YSQvijtBxR7mF7ICDrWrMYSCEdh57cmyry3M
4G9QSwMEFAACAAgA9ZAuSs5e8xnHQQAAZg8BADUAHABodHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291
cmNlLXJlZGlyZWN0LTItY3Jhc2gtbG9nLnR4dFVUCQADbtl6WKbUelh1eAsAAQT1AQAABBQAAADs
XVtv28iSfl7+Cj4sBnISyn3lDd4MJEpKvOMbLDuZxWAg8NKyeSKRGpJy7POwv32rm7qQujhmYiwm
GOUhktlk1VfVVV93dVPkVZaGIs9dvf4vTKdtfzabiPZnEfwWF/LDS5NCJEW7Jx7EJJ1N4bv+B7a4
86d25Rf3myLg3/GndDKfivz40+XZ7Xn/+M3xQto486fia5p9Of4ksjxOk/y4c/z7lTcU2UMMeI6f
0/84C48X3/Pjcz+8HB6/EK52GsH/8TgWmfsd1moLsJuWmoi91Vvwfxu32dsjzUsjod88zUT9xN9t
0zCZ3rrwi/hBHIHTMunCq40e+PXXX8Gtf2q3ucj0096mMo6wpvX8QhzfxNMNDQRhy0DYwEzHtouY
i8w2cphuIBsh7XKo7zIAPKhD0+86Rm2M26bewvwDJpgcaddilmbF1lUYa50kTZ6m6TzXb28rGPs2
wp5DsNHtEGpYdpcafcfpGsTCyMIAr8dNTdMkcr3z1f8i9GGchELvpmnh6iZGCOm5CNMkyjVt+JQX
YqqfQj/cZXHxJD1ViLBQUETiBxMRaZqX+fm9iPSb+0z40QoJ0vVenM/8IrzX/5qLOXhq3ctTP06M
Ql2gaf3HUMyk0HqX9X/3Rt1Ob9TxvP5wqLeGpx+G/Q+fjirny35e9dtv/euL0enFp87ZKVzU613L
q/xCR4+o9o+iioQLMKim0bu8vhr2RxeXN6eD/9G0T+f6tbiT+aFfCD8DYRS5mmG81zV5xWh00//9
ZivtFpow8pE1hi9G5YCtfPyHPM3+7U89Mx6Ps6+P+vD8v7zLz3/DjNU6cFIc+spdw5kIIXtDiIlx
mk3VQVfzrjvDj6cXH/Sb/vDG1Y9BbOiH9+K4SGeGwm3Q9n0xnWjah0ka+BP9JvNl0M3HY0ixVgbq
slzo4X2WJukkvQN1k2UYHrkaJ23bYiZH0mne4EIU0g9bXv+Psqet8Xhsj5kYRwHVb7wriJIkgY6z
xj4LEcPICZA+HJ7pH30Qfy9zoHd50ZdaHOQgZDbTEtrjvVryws+KOLlT6hJxlxaxctlCF8a4kS5h
cmevLuhP6MxCtPUxJCE23+kiA5JFC12E0Qa6uBWO6X7vQX8Bb+J2VQW2iOn8uDkkQpETbpljv6vr
osT8cXOWunabYzvNIiFySLBXhYoEYEsl2qYm+XHRtSBbieb8NTrBZzgQW52Aa51gIbNRh+/rhIWu
XZ1gOci2X6ETFipWnqJtZDqINOET0wocyPT+oyTDuJg8AT8VKre9Afgp/RILkJ9m/h18wmFwm8xz
pYnaTfLcDAiP8C5Ne9Vo5dgLY+5iMHbdFw6+aHPy5aWZ2IVNjV4htUwfCHJxnutWxgZPMv7HNC9c
F/BuNrQ+3wxc91qMr4rsZO/l73/55Uh/q8MMaJfgdjibudQ2jzTcELU5RpjuR/0hS+cz143i3M/z
NASOFr00nMvh7yz1I5G1VpfWjyu0xOJ6a17EE5ghuZbJjzTS1KksouJbTv3fXYdbEgAzN/TTZvpN
TB0U6XtsBM0bzlA6ibOnk+5dDhDYjkm9vheCTzBGwInlea4Ln1sgto4pHDDRbtUPAwAbZs68mQ8s
k4QkXPtgIGctS92RKMC8QZZOy4pBaSY2qK6cpqKTcAa6zYa6eYj98bO6vft4EoHqUjPnOzQzColh
NbUaOZG1RzNk8cuy4I0ERZ1tTNhCEAp2U0zYcpw9mIrMT/JYBtxN6qXTaVwAn69xqSiMroAcFSbC
AFTJOTIq0JHmNPZPuLdnQqUfSqKHWE7H/YlsUB1E8U5nOBAaGDVMTc4cc39qjuMklnwv/4bRoBWl
cyjKVGLYZCszFAxmAwrcEIXji2cIYuo/BcrU/nRWPCkXOGSTFDFpqjPizn6daixfmH0OA9q1yNN5
FgqlnXO6x3gqkdCG6SmiyN4bBAkMzXP1d2dciOzCf4jvFCVepUCOT+vgXCK8FjAi5wVASPLil3cV
wVBRDQsYfN6804M0nVSaOpNJ+nUt+iY9TR78SRzdXp+pzqacaECFDcyKEA6tcaVTS7ieP5kEfvgF
LINvLQlDjchYb43niSr9/YmLOZWxzBsqFFD6bim8F+GXqie/4cXy745Csohz4OE6eEh2ZgE+s+EY
FApIjMoYVOlpbxJDKKk5gppV9aAOjkSpFvptjbdEtsa72bLd7Y3iIi9gbjcaYUj9RXecPKRxpO9x
0PtygrLRe5ZDwTtWw96LHG7v7z35pXnsb4T5xrjy3T5onGoLR3EoCeqeksM5tpvyhSn28cUEPj/H
xf0LR9Z3O8TIRbI9pryUL4hF7F2GOg0NjQIRPmNoa7up3iMqgTEMcHKUljNHGJsIapa13Ma+X81a
OfyX+hfKWstGCQBmcAAFKCavYKDAS63FpeVAgTkQCMHNoFiMgwtVLJ5eea577yfRRJyLPAe5J4vP
vAKy4pF3mya801dBXbfszdE3DHrfUtqBolJZo2xJfvP9olXwgFtaH6umSb6FyRUhjdyFUcCAbxXW
haBrEYr4QWTn/mxNtYu20ihZ1pcr0GBXzcwylmDc35ZVdikB0iO0WY+GtoPrwbXYKwB00UJDA3wy
69ZCFCyTOACLNYKFQuYEVN9QuO2xNVHOkxiibDSD4rsKqsqlkRj780kxioRc8amd9l5/v8hUvTUV
0zR7cokpyw3CG+K2ZK7uxX2ZrJyp9BGzoo9LfbUR/b/9B38YZvGsWPNUVV8AbvLHMIdUSw/z5CxN
IaxmIpNL15/T7EupxaxYxbjsDauhFj9A5BktMtnKGglmKoszvEG5miHV1YYXqWSQzpOoXHDfWh5y
2Ni2BNZHI29wfXtxdnl5NTodjrzO2dnpxYfR5e3N6OZy1BkNL2+vvT4aXfWvB5fX56PB7YV3c3p5
MRpJmy2NOM20RtYYh6XW0oJeOlRjbI7UhNvUKGoqkdFxVSJ8qMrB0ihuKMoU1NarglYbFZB0DmCr
UdPH0xsY84P0cc8SXIhQ6FCugxxvnsmKv/+gxuR0dpqcy71FkEq5RmlTqZY51he0cSEeS7Gyjk2l
5YwSjbKmIjkUqKPuJA2/3MIEerISey4zCoqjszgvStRy3jGIJ8DnoMzCGq1lb2c225e9SpdF/DAa
m/qodzVcKZGxhEzoMLOpKAK5bPxxMazuLo2STfCLP/IvwGBgnNx1dWNlDPBVubD5p/QcZxq1GkJA
kY22IGTzRAo0begKu5lA06emrdfEycJUEacFIQgJN4mDx1nYjp7gi/7cKrBjmQHQLdNHcP4oDf4V
jqalLMvhGkPNRPnjIBC6lLQQwhymMfzstvsWd9vICpG+FABjfWu9+SjtbE+nLqYwDWBEoQNk0R54
Vb8JTiGEo3JtXvpqtZiNXbU6DQJytQ89gkIjEZO6zLoozrggQClykf0vdX4minmm+gCpVeO1tFm5
Al4TV5Vmm9Thlq0vTxx9/av8okYmm6pV3kbiLAo+V3bWZNGVxeTZZXvp00WjMfUTGCWz73AQjPL6
F7XXMvorzWuOWUrf0WvVeEKhMLHJ9dHy/NH0LhvFyUP6RREjNpeueblAHoXRhsCVgzhZOYj+40KC
/eMs5v84i023muYXQzXo3az355q4gkVjiwBLyyTK70ZF5s92eeElgiiUGEtBaoq3sa/1gmmZjaGy
qczwVsNFeH+VKronmGxsV71k4shFuD1xxBQmoUx/5ZljfR/pm7MAhkjkADfWelHtUzlqW6hZIDpO
tA7EII2elJlYbfM0lARl7ErSaqw1bbU70zCcOdY3Ba2D2fqe9IX5BfRnLqZf/bgY5fFd4k92hW34
/Ehi+5jRCI31xE/SfCKEin3HWeZs+PZtG++ek9SkWEjdHLCujYv7OF8MSK6rBI+guqvU1+WdS1DJ
zjMVaieTNLnT5X/VElu1neDJOx2v7kabQHFdWYmy+EY6fLv8NEMhAj2Y+hMoAlz3o5CLJ3noQ/zt
WgOQlcLJ6my5chiH5/NCPL7/pYr1eyyaLBcK5AblaDSVUkeBnwsXO9bmnvBLDIuAPjYMA1eFZU02
XJqoNijsTY0Ub24Cv0Cj4AivNXbypyS8gerjpAZiuXy2gezNUevovYwVGSYLPin3wiy9tRLVvncx
4Zt7xC+BxlD0KtD6SZE9XaVxUrR+RFy5w+psbDm/xBAziJTcN5VAGi3SazTL0senk0rqzUHsYn0f
9P4Y4nc/5MA3EN7rxRyHVhenrKPmTLqX3p3Xo3eMXpfe7Y25yu312Xolr1z7P8xZ/l5zll23ndXv
mguYb8Ik5Y+N7myV/Xmkj7LFfpo8oNY31aILuKHOYpuwNzUxxybClN69GJbxNCpjrFyUhMj7npnN
niSyXy+JnFeeIzmQRMutMR3YMp1M4uTukDd/s7z5lkCObQdjfXP92mp4/1dEbMzNyp0Yq4hY/KLC
jZO4iP1J/G9RnVYQeZPLxrngbbkOx+lR43GZR/ZyF2NrnrAa9LC1a9/YbqwqCMelqq/F+Ga/Nr4x
xDqvxg6Nx8Vnhlj8uuyA0T9uBQRjyYgyHjrzIpU/Kwm/c/2D0ygwwREzOb27H4UPsqL8Ti/48i6J
lRfkj1FGC2mWaW0Q5AuCXvjEKo0sbYOBNorLDdAinoroM8gub5NW5RhUY5W7+eTWa3kZ5PpVCSlf
3xDdtGZkFl0m+5WffZHbRGnhujP4voIFE+Cn0+lsovKxLFHlLSbymmGYzkR05k+DyD+R98/oMD1e
32WzdUo5p948Rf4ITd0L85T40zj0ZGUqb26plMPEhERtrSGWW+aINS4mTSACy1T3+pTKV2Z2ZbXo
yo5V+2cnqvUMoLxvrb42QIx5HfC9a39HIUpsgaNaebQk3eX3k13psrgtcg1cZGt7pKGrpQbX/c8R
qlbyqtzxizR7DcHvl2WUrDohDjIpuHVU7rfb8s7xuvjyDmZEm5fFPzBqWf9fo9Y/ojDE5EDhBwo/
UPiBwg8U/rNSOD1Q+IHCDxR+oPADhf+sFM4OFH6g8AOFHyj8QOE/K4XzA4UfKPxA4QcKP1D4z0rh
5oHCDxR+oPADhR8o/GelcOtA4QcKP1D4gcIPFP6zUrh9oPADhR8o/EDhBwr/WSncqf3czBsMZZQU
7VkWP/iF+I7b5JFV/tJ4IsIKgzf60Qdn3Fe/SCnBnJeP4lAETprfG7+3W+jrdQt75d8vIT1cvPPj
K/CWfK3K4uUfunoQod4ymRHExZGr6XrmP7pbr+BA0HFZsK8h3NcQVRsw5sC+8EUqieI9l+SrBmkb
54EVRIHSPttusNUVOxosqUTP7B1KZMJnTh0X57Ytn9GTYbQLsGzAayXyAfWBOkNagskeSzDdUGLa
8nGV0MD2KeFbVzBfKYln1ZbVY931bDzZ0I4RQfLZWdkOWFTK0s4Wr+vwrm7LF6kwrZ9laaZezrJ4
tcrqSqbdyF+pXcynwfINQJhpmtaNEz970k+n6gGJ2vI1Ko+rN6johl47aCPonOcfYNRSbwUy9NVr
gfQTu2P3Bhbhhsc62KADhxudQc8zGGLOAI7Znone//1ewVK33NrlDhmr+tv1swWH9/F0keEtBJaz
Dmf9vu0Ytm13DOpYA8NmNjO6Tq9rW6zHO463x/ItiXU8DtvGwzAfj3c9anFHnxCPYtYj1DBpZ2BQ
SmyjS3jf6HbtAXBtr9MlZtM+KdtqOAN/RxhFDhuPg22cZ+LOD592oUUOocSzkIE9mxqU9GzDdjqm
0eXU4t7Agikw3o+2lPsc5vKMKnKgBrKFPIgQ3fDwxlxjB3YPQdo4FjeITQF7v8eMDog2mMdQn3cG
fYJ2xkBd8m709XOq+ENKtiMksgK0HSH7gDsdbGPThJDtsZ5BzT6BMO46Bu12qNcxTdMZWHucvh/x
orECFXO/JNsqVDhI2U6uuRF5cT1PEpG1T5N/wXxCRN25fCqq3sJtKQTLvOMU2wPiGWaHEcg7jCDl
PNvoY2RR0ie0Z/X3x8taRV1DO1Afm3zy/EV1S326bWmA7fHY0t9Cji+8I2UN5zP5ErIam5j9QZ9S
ZvRQnxmUWaYBzNox+rzX82zOiYW6u6x6RnAVnUOiYAudQ6NIoqs+jee8d35z1s3S5N+il8mHvUrX
M9KG2TK4v83aRJK+7VCrb3YMG3eRQZHlGE63ZxmY9CEFBp7T6XYAbPmys+OzOMhgKDruP4JnF7Gy
pWaP/7dP1Er0kp1N4kcVny8PBsj3GVglH5ent6iJ2qQEDU6lA8/wPASsiD3P6HgeMyzesRH3+gzh
HoCe55l06rG8uqLLZpRt6YKDJt/w4PDez+SbZVpMeo22Tbhi+RVQ9Ho9YmMM0dv3usB2A0i8fh8b
ptMdOFCGdGHI3HbdVTk7HyyzLj9eqNmdiIvGGnxW5bzVQcY24J+LAmYeLW4q4PIDQFPEsW1hDGwB
5Aa07BidDoaRD6Ee9Wy7bzp0G3QFrZK6G6tqqiM10TZSjh2FFLrm4TzOl48tAqC0zQFid2BiMrB6
xqBDu3IeAtTW7VuAGHe9LsF9z+PPQuyEIZQwUAHvIbfKqQ8iBAG7T6vj0+om+LvsihQVymJiFifR
fDpbmoYdq43VAGlZ3LIHBhqoKRaDOQY2+9APvUGPeJx4nl0J3C1JNRAWMbdBWJKOS+c+5pNi9USn
FmZtBggs4vWw12EGHnTlaGERo9Pz+sBQkOkWg4LI6dQRVMXU9NuEb+t3WLgxHpz58/8j7tqW20iO
7Du/Yh/1UnDdL491HWst72hG9sS+OQAQ0DCGIrUk5bX89T7ZIBp9A8hYM2YjJkgOulWV2VWZeU5m
Fvpu++sRBf7HOyc9LAj/7PAHGVIDSAhZMW4jZOIWMmkemeG1CJkR33K8uODkM48TvLjkY3mWbx/f
czVW8Hqu9XYtJloPaPI7uwrkcaUJtAAihqIiZzwJ+K6q4HptU0xoUEtrIoKHvKjsaeQl2fPg+tVY
xAWnsVfbCdB43G2/dW+zfOe6MG2cUm5FjheyV1mNUTBF6eFtlQyAdirhRxIJWMOpoC87j0/Po5/x
dc9Xh3IbvuDsDDdT1EHfK7v7JfZzwZ2s+EpJUqH7gxyLcE4ooOcsEPA68UPIgeUSefVVRgTn1zjs
57mWlXi+ONJB0AtOpzoAYR8t9X++rR/W9IKP3dFaPQEJ3mCPoWGrZJARFUHNkoqVVe2SMt6WwIfe
4pDB+MPCeBNhNkvC7I++q3s55VEORw45GO1jrIFJuAimDOQIlXyGjC5ri2is3aIcg6HGIgS1IEKY
eo73P3ae/M9dZo/eqTnEjiYoj/2WWY0ND8dlx6JShllZQjSlZhHsaxZzNsnyss5umyh0vaTQbmJc
XxHKB6Rs9ZH+H0rxTitpuwBdvWmOZ1ZcIfQIQJGIlWbRDEcwDNitl53h+mGz7BtGbvDjWJbhXd2l
iX77Bf3W8riBu8TgpzzcOcCkXTSXygeoEqFFJX+XwKsiuGxLtVQuMlbqsj4/ft3d/fDhjJ/ubr8B
il4SYqzC2i6osLdTzPf9y+a+/8JrAszkQTzXFDyxLqk5a0h4EKwmKvMmQ7Ukm6/wjD7LVyG+4SRn
fOHwlpEiUi2sBT482u8XQmF/o/rW49P6BEGgPfygPqD+UmsUQjrmYCpYlEYRN+FHRZTKCR+mV3nC
Hz7+Nd9/+XoDtDVQ45wQYzU0X1BD8+OWuu1CcO+HrFkZvvIE/mETxXLDjBAwEKsFNhSYb81NiURv
eDZ80RsNRxyJYu12Lop164k7usdG/AxALcAADm6o+wMiWRmCS4DSKRfw2Ohgs0VYVqrDk4wNblL+
n/f44dpIYLdkjm6zOT673ZGe9Y+PHlwrwchC6ZhUM1MZgTt0r8AWRYDGmGx0HUO/yTgjGUJYCCOb
tT1uw3b/ePu360PVrvcJdiXJjkyjxJoEwi8aCB9iwY6UYLki2LdAyZcwlmQ+2tV4XjcXZnutJ/73
wK3/AZeLINYtIeDcSpBFxJKqV8YwkF7DlMLqRQuQU7C/ihUglVm/iEFp7OVFPF69Ggs4B9Bmt5PH
R3iz/balDE3sGZIRK/xHjxBeNSShLVNeg8cVDRiZ8aNVFUQxBWbsxo9wMtpQEsvdnM/YIyY4Pb+b
u99O6nVxi4CtFCSQgGOEBUKg5uAbbfKwBuUYdhWPTemklH+LuPV+KMMoQt/9NtJJCL6gEyVxNsOC
z/Xd4+N17ySlIaxL+sCR4BEHD5xIiRFhM0swEWYUTA1YHUiyLLqZ+bgTscKCWHrqbH6gl7rrAy7o
fEzSgSsFtqCSqpSjjiBuDngH8MvWEIPQ/OLzxYjLDw4XxhJuliTcu6N3+eFDV4nojVp21BYcoIHa
KLhlDmobOAwIgBus3asG2s5h2G8T50fzjyTXakFybcz02e7udofv7V3ffnp+XfC7gz+QKnTa+Oyx
rbVnWgZCl9jXIQO/aOtyUA5RP4VXBcj5VGcWYX7jWDUzhy/WmB6Btfu7p4/rh0cE4uO6GN9lfKR1
McSqmRYKuxlhH2viFCJUKzlYY31rl9Mpp1d2vJpkx7+c2WzHl889/mFB6JHGweu5xsFve55y//X7
HsjjtA8d+XGi0S5l1hRAjdL4kZLFOmZrWuH0FW1ymauMhptIMkf3dmOm0LHble9/HHpItVIHpKAt
74RTthhKEeqqEGSiYEFzxUq2YNWeB+kvZ7ZmU4wc4OHiSPTNbsEJbrk5bpuPd59PCaJORglP4nTh
TGsDZxNLYF4AYwFySbgZga3zb8g4Wv5+8qHITlzPjdhJqui44/eUrzc3R6kVdx2iDVLWlmCmvAa4
R2ES89JxVr2IWSvtZObjeDgcZySAtPON53Z+ll8/fNv9MbujuV5p2oGIdUI0W1kpHmyZHqXP2IHZ
hiQlN1V3yemL9namdpefr12NJdstiBv40U7yL3/+9PH22+ebu0mt4tlxAy6rKENkhXILKoBD+8oL
syEbR1XxZPkbEbRlScbaBLGkzbpDcqfoenf/dLP/fnJ1iNm806Zon0pVmvHmoI0GO4u8NcAQ5wGN
gnc5Xwrbw4FHgu3F/DF7bbazpPv1zfr4XqpjusIpsRJmJTntDwubUi05lvCbKQ745mOAlWmFAN+k
zs2+kIE/TXEuEX+642os7/WCEn4zUWKYT31/97R7oDcOvJParyif1v0mRSpoQ+PYOK4JipEeiKQC
8bXgVSq6Zp9eEyOXZjuPoqd3jvXzcyYHqrLb7w628Pfy6eO03GAcl9Zw2GvjiI/FeMrJNxYqdJMe
V5P6vcoNvXhXYwX2C1qtp+Wqx6+7Hfjtw257//nuZpxaoHQo9mCXDRWdoYRqYvBYvQaARLV6Q7wQ
JpPg6YXPWZv6Fnj9UyfVz0tCjfId09vGT2A7d8lgLeHoFQhI/Lz7fPP49DBwCqbbptHxAj5Jicum
yB9HQDkRoHcKVPOvwYr/R/wzFnuktVV2QWvVF3gWW9beAeWtxIHDqFJEbTozMHzw7JgaQlHukvYi
11qDMeGSMxyNPBJt7+bU1e/X+8mWLLvNt8+HVNYjSUbuQ3S5eKmiltkAhgaAC4WwD4OrEjjNu0hl
Q/O6DNRwhuUnPrxjrMOGL+iwFT3A/PK1zz8RkE5Rpybx+FzTsBMFhhtKccyKkENNXtXcJhCjH2E4
ceDbeYwLQkzZ9kH3fH+3v/n8/J4RiihCd+X7jnR77IfKNZ6iBcLAI6UUVDSs+dASrznZmi8XZOZz
nMtHzm4c6STVPAMTpLUTtt23XSnByflyX0WXebREtlRplUXju3K+U8qk6qq+tEO/LDxereeRGrxB
LwS5s1U6A4sBkEMUaJQrowSpV14yWUD7nWmIpC+XJC9X6uLknquxuHP7CsFOmSxV3PGv110u5lCw
C06u1CHJprnLlLuQmqpHwlCRH2BDlpK4lhwfv11V9SjJ+c4Auno1Vscu6Rgm6/Tr7vYr7XtwKUrY
dTUSU6IG0mM8ZZA8E6mdwVGnYuAml6ab1W8Ru/6IqZdvoitjZfySMms/LWltT0EEW853IZl+ERAv
tZZULWuG+h4SaSWLZlLBpuHKsbNflXMYznGGKQ7uGGqx5mZeqFxzuztGnA83d7v1Q7z9vMPkp0qP
lV2kba0aXUtjjQM/qcyptK0jfHp0KVGuV5bfCUktCDpWdAFQrIURR6A4eaUWzMtLygzSOgETKlWk
ZFQLpzx6xu6TmdWSa9K2ahvbJZ+1kMDG1HJJHnWMReVm/fnu/pHeRvX8ovR8e0OdsL18XeeZ1CrZ
hC0jqD5lQIJB4oB3TJRYJISsriY6iFCXxx2JKOWcl6+l8pMe0Q/ru88RuPz74w2F/Gev1P2mLDGe
lBBSsUhtBMobhH2HLYI4YIo2INHOvDkYG4p0rt/jdMdYabWo9PYY1j5tH3a7u5939CqY41poaVea
7AEsIrtQBNPGUUtp4CxoAy6aogTeFt60Ml6O+XATaa4XpNmIMz0c+1F067o5jJBd61qMupXCAWWo
s4DHyOB4EO1sSqEBjDXuXtXI8VKIm983Vuh6joTWxrpTLXO7HngaG2xH2WqzmYNhMtOqpyRfAoWG
37EhGpVrDi5O6kejga7Gs/klEaaOexgMl3qYKmEXqv7VXKm3REtsbFlgerA5bZNxyf+b0XZ4x0SF
hU1qNrtpi0yF4JwCDn52JS8dpIOgzdMm8DaxqA1nLWbpBfZBi28IEGI90y9Tx7ps5lx3ba2a6JJu
v+2e7u+ffqUiiT50ZtLvfddWzJ2scDCsAepgLTKcTALjC0qF7OiMgLnM+N7/2I9/rhukv2Ekvd3O
G1vWTthB7nLQkScP8cS3rAArqQeTmLgO4BUxG0BiC/wGslGEnqUulzry1k6bhekDX0C+XYro/Y+0
Iw4pau1C11bjSpAZMLw6QQ6aAHmFkXEAruBggC60FzfF8+Dnt/HzDWPhFzJ/a7eZGeKv3+66k56H
qamo7CjA2C77X1yT3mQG/lipCIkA6KNixkurhTKIgPVVKanxJGcUGd80VmahhoYPpyb5l5yHPU3N
1AqMpOA16OHTaYTgUmVS5gSiJBJ0eY34GHZZZFyYiLlgbe7aTjIM68fbnrdJRY0YnZmJRkI1JhIi
iWqisBRVpH5i41wtePIXswv9qGORrt2CSHtxTPXc/vPLemVOuIeAc+bKBJHguQweGxHgmL1gvDjL
lYqZ50ljw3CQ0ex+s4ALw7ovPvzjyy2w7nF2GVaiSzqnWGy2hZVmiG9VzqKVAkDe2NKKkNGJSVPt
YJyr8VwLKxL2U/JKlfzHo+ulHvHddbu53X24eXyiRG3XtYRfFCxFkTALl5ijxmMlDcCXDHA0hUcl
oxdS5Ldz82NZzve0n+4Zq79fL6m/6RurD1tnQ8fAH3tY0KkJOltCMaxZoBllYPpJcQcGApCZpYYB
mUu7cTjkRKR5Tnm9FmpiI7QiT7e9TF5RRYIEy4GXWJUHO/Ugq15kFgH9mIw2+mSds9JfpAvDgUeS
7RY4Jz7cXYAuq3Z49TJBcwlTFrxjoP3f1KDcTHIRED1lWLRqMbAYkmfFAGiJKoILb9iNfZTnzI3P
V0dq7908b0cfHhfkt933L597NC4PPWNOZJBTAEZCBBnsKAGwsRp8dlYk2+pyz9hwrIkQbkmI7dFN
fbv735u7PierzIpAYrMgiNiHDCGd8hYBzjJBKmopaCmBIHT903MxhqONxQgLvHEPJzLmsV9v10/7
+4c+++Y07c4uDxtiQKwEdnaOfKdSzFPDi80qep91gjO/mCIejTyRbbMg27q35c3jlxXvn1B3OKEK
IBgNA/GUtzJOs4RHxkwxLabsZJAT/joYYzz3esFo9zs7MY2fCtXoBaWlFZddy3WlM2mcSd+5SKFh
rGCqzctCfXLc1rcvFvxUlm/5qQx12gC1znTa8ND35ay/Pd33cdETzQshVCt4YwjVGa4fSCiWHJmp
meuQrCktjZ/naYzx1GFOkjbC9w3s//lRTtoIXCtWKsTkWugsoqMjta5x/K/ItpZsmxRv1EbQTz4S
WS70WW2kmhKJP+0eNruH+0faB0cYJpJ2Wie4B0MVcV8lMI2xrIK1K+l4k/UylzsOuiz88epIXLVQ
xd8oaulUL9QEVjV+9FyK/+7O+PDnfpMu21JEVZUDksjsiVkIGHf1cOVRw5ZK0K3l1+DJ4wzL+hyv
jvQxC13KG7u5njz+v74fpuAPSFgr2wWiGFMy0jpQETp2QM1uCTbAqrUmlehLbfo10g/nWNZgeMfV
WODdkhb7Y/rnYffl/u+7YReS7kiUkbWpUJnQBZJbUFE42cC0sQbkuvkw6rQ9OdXpeGNhtnN/ukH0
moX72/uHT9/vtkSNw+GJ0u9npumqhHc31KOZk2ShdDUjFXDJl+bdm3u3Xp5zdPD58kjX/fXcf2/l
9VTXP77vWy3kc33bPzcEUWO4yhrb3tLJeY0QFzKvrAmfFDx5xVq8SY3g/cVWjP7y1VgTuaSem5V3
QJMpKf74eLO5ue2OZR1sxIWucwfePUFFAVoOPTl18Xs4eqA0JVMIPsmXO0lG41/oJxndN9HGL2kz
Ze6n7H5XxqR/MPiIPiHT8YpOadF5l6ygE501anT0KOdkk6yuvhSAX6ghnK6PdNhs5lh6e+2nHeQ/
fVs/PP3zcBQfEtOG04Sbu2p7rhHmaOm7Guj4vYVhAeIz7WxqtqhmlvphhjigH/wMHuivj0TfyTln
upayb5T8ED/G/KdZtUYD83v6mgMLuM9UAIdPjXomuY48S++k+L36XoYSXo20UPN82rW6nrYZrP8+
THUfOnkF1xZur2vu1yKVwlVj9CpgrAydKKbKvQOe096kWF9YmfjLSyFkeMdQhZ1ZqCDgw76CQIfT
exB8PODeBFdJtsSKoi/S8DmxEGRkVdhUcuI88mWicBptIsT1ghBmM+Gwo++Ieqeo0YtqXtjo3Y4R
GTGiQaqaXIJL5YXFrCSTzngOnhAzj5e4wnD4kXhWzsnUzj53XA5683ZP3bG5YwOX71NRiQ62JKdY
kAX+r0THsMhgDz6EYq3WJouLXX/DkceiXesF0XZTHJMbdUGWm4fd9um+y0ryg3cQoTscIVowdNba
mEqpslBYEE4AiPtsbKw1aP9ij2U/+ssht73i/slNY613c9yzc0Ke8H79YQL4vYzNWRhVUtXCncTI
gnaVZaWj9LwB97c3A/zH2a/G8qklofti0tf1l0HqrksctlxESAXUJGHbNJnoKHNmOktVwdNNE5PD
8IMxJnP7pblDXyfs1F6lU+5f2mPChQtpELYLs4K+wCWCJVGDFhi5bVq6InOZsN7xaCNBwnpBkI3t
T72kD/HTLBQkKCy8tNiPCe6GMpnJmcIy4IS3VSKM2d8pFJzkG6m18Qtru/FmkhccpUX77144OK+E
ABxBg8F56MgjXKpPIVIR3ytrW5K8vJSGGw89FHCv13MPu3ezL8fJ7b8OroaONPKV7Xpanv/qjp2k
AFReWeFws4CplH4AB5XRtMqlj8VeDlT9+Ods/vnyQPbAN3zG1fCh6BML5/1u/Rdv19LkuI2k7/Ur
9rgX9uL9OOJBtDvC3nG43D1z25Aollvr7qreenhs//rNBCmKIEGVdqfCF7ss0kCmBOQ7v0xttBro
lRJTVySQBr5iUKzagpdMvLBikeHekrSWdOseavjwsKxy/QlcpOf+07H/5zkde9L4WRUwY6gAp8Zg
FouD2Gk8+vKI8CYIt0zyq3Io6322JNPyvZKrQ7/m6kCmINjh+PRt93xudJWE5lJ2PLJBC7DhJVYY
OgxGadC3snXgvcUQTOAx2XovS7noTbl1V6GHyUqv61NGrMoAOFi+kbWZGtqjuGrBpAUty0G6wzm1
GsvjUgPqTHum4YZ5/xbOFWqo2xMZ2+2x0ytzVqnsV6obPrxbZkMvKm5OndIuykaGXGlGQKuhkjOM
xiR8EFWUgf+b4t5Sw5YqytYcKDXZRT9/SGmhhrkGh95GB56gAzUM56QxSZEmcS0S2JABzPs3UsPn
3Uui1frEUxBxJ6KP3cP9b2dFPDTWE+mIw0olhq4TFrMakB9NYjr46JjyrV12s85WuSm3opX9zfJn
P6MwZMQOjGBRVImDKKGMvuNDr7wlQusEQtgbLrE/hjYGpXOKKRHm4SDYeDVqSN7mAnBIfl6ys1+L
Rbrny8Dgp+Ohf7jcdxJ0YIpi+ZGSaGZQ+LZb3VDlgotc02o4bcbAfIs6C/M3bkp6uxoT3elMvNx3
55xqhtbyFGxi3QSt5VBq7YUCk4i3YKIoaxJpNxIlXeVI7HntO1RqYT0cEf3jdCy1RiWXD6dzFsw1
sM9ERKgm8OudiqZRwWFJuE5JXLQczsuWRCm9JurOLiXxb8fcgJ92XT+EHbCnEAVU/jfqYCnAMgC1
IBgWDRBtGsfAfAyStfCRiNJeVfNw2mFDKI9Pb0pqV0ETuB53XaXt/v3j7tvnY5dLAjMUBZYqg92T
TyY1IFjB0SXcGfi1Y+6IAvsnBgn2u47plQ6c+QbbRSenN+YscKbtmgVmpiaA9+kfQ7p60TUHbjD3
Hs4DwdZaLjUZPE7qA7E8Ga31G8GaLCgoqTe7NfWS7pY20+6fAbZ53I3QfFgOSLHa3QzSl4LKYOAG
gSQziCDZwvePlZnGOsZIS42oKLl5mvc/ljsswf+m5wX5sl/fS77b7eEEFVcg66R/+3eTT40ZQtky
eUHB8gSPBTxqwXnjtMWcv9UkBRDVhryZyzL0m1dfG54VXB3E2u7gBznBOvy+ezwXgY1pRw4yOinV
MMRw4BFd0mhoA6yIYKQlPCxKwGaLlJtLXtt8v5Aq4Aak21NV6JAsMgK8DC6ABoGR18QYojxhEswo
R0nr6CvAZHnN+reUHxV09ndrK0EQei70+J8vx+eeT1qBqiyLI1i9IM90Y6kDIjV2aEgdGqUs+CE2
RMMWGc1ioZtiN84qJIjJugo/pdsX+H+LFDWIV/CWUfo7jLQTpRvPvGtIYI54540LvCSgXKakYN3U
bwW76yr1enHo8mD4thI0e4vYtSuFBbUIdjl8GQx7ng1iF7ctCVhvfwVmSdxs2jg9vSmpW19Zwck6
CfX168P9j7v7Pjd+gaGmssDPYMutzolVKTHYAKYVIo6CecU4FWBrO9bat/Ad5iRsMXh+46bkp3Iy
uFgW1lThvMbcAM2tskIPARZg1zinPCLcWCzsi40nEZuUbQg+0QRK7s0TbxM5F1C+lipdcFlj/dyI
8GV3/8txpgyzhRyCSCRScJJAawyJj4DeYMtBjaRIDGOL+rvZKuX2na1s30/N7F9BLT5N9eB4IVu4
ANYjiAIG8sCsRVORqwZcMxmsaXkiixjefI1y817VNlcVqMHFbwGkGPy5Ta5BjVJH7hoqGAKeJdn4
BAKjdSidqBLGiLf5rSsvLvhZW5hC3C3Rxw/906/PD9+eJl4wFZcDU8Mf6FU6ZYmCAxsImOIcf2sv
jW2IUAoscsHgN7+uWzNvdaIWX9hq2ly9eFNyoWqs9QuLfow2rfCwuJEYZeEoj5QiVsagGyW5xYpn
0HsSTCAhEWI9qUiouCJ3sI2VZWGl/ZpaeccWB+ssSfBa/v2YjjOHlIBEIbmmh0vLwHnzHLvuk8vR
6wjHy/DAFdiftTh7veset9iW/fi0YEOv+1bxQ7GCbbx9ebwDfyG3TYHoz0dp+AtlIWuxu1KBv4JN
SuDqNQ7RlQRICdkmptgrWmtaf6s2f3xc0A4W/Zp2w8WpXi+8z4AC+P89nXtU9Tv0RoUG+xKBGCVD
PUu0bhwB5zQS2RIG+kxx+lfYmiWYxorgkl9Rsa/2e8Slzvw+7P+7OwOLqYw3GqWMYDZrxAZusVxM
gplFZCNE1C61ygS2wBSbr3JT7rR2TETH5GYQJh+4791/Vk489xyx6XijU8C+aw4WDgm0EZwlJ2iM
Ibavmjm49oWjDk9vSlJVjX6zhFwY25s+w021Y4cVIShVaKt9K8Eisxr7gbCiwbUBlELbMheZUNG8
CYznqcHquw+XG7C++1DyZyvXoev7BX8YBu4Q+mNs42NjGx84K94g2JsjBKxg0G9YQ2TAYRBtgLNn
iW5f9X7DBcDD8H1J7roGO394EvdFEPjj8/HLGXFwCFi7SKILBkxNIG64wtZacB7gR1GUgvPrFn7D
xpILsirG8EFM7bLdy7enWaSTD4AUlkojnCANy/k+3prGKcrBNmSMGfD19BIEfL5OQcDBmAoBZ+yf
H3IWYHI2M0IW9kN4+Pka3aI0i3DVHdUSbhe3QqUgpFz4msUq8/2lqGgE+HCK64XPx/v+qf/54df+
/vjnDJsMrwi46yYorD0hCjRZ0HB+WIiNUJJoakHexAUh9eUKimQlZC7Bg10c7O/649cDgtrMIfZk
5GADgNttPHYPMYkDYcDBw+E3YNERULNXRdLGxbc6x/PDkmija0TbJSBE3+HYoL8/wn/iNIeRdkVP
xdw0GaQaFJXFQBpYCA1YgamJIG2YFoprcx0+bbHRpmCZvVOwo9ZQSVbaO5WL0ku31n0M6Nyf6lbH
vzAmhSLegsBUAZuLiASrLDDWEGaMY+DyD0j5V5k5sMm26IeHBfG7iuaSuWhdjx5I93mKEhsth3wY
Zs8FeLJoM2ItlUFPXIIiVQxHCwm6Ea+erVZS0ZEKFd0UQwrv/4FTEM8a/BRLTZIFj20wnisF7pDl
jaetwvEe0nClpaf2X4ylFkmgBSEFE3u1VjJyf+hXx3r32H3OWGo4lYSM00nyKaB4ko0ZgLy4gi8X
pDgG/ajnJtirIsPX9y6dCNk68ePjgsmOr6N9soMD0+9HmMLHvnv849u5Np9zea5bCkSmCPakRBRX
RNwDYx7sGzgxRhjHA91AVl+sWpB0WHfqW9l3q6q5l8Px4d3zmNBx+F+zBBIdHcDs/mnSWukDOEZg
qHOrWGNUCA1xFNHKHOHm8qGaL77hy87emDMDynktGxVlS98p4My9n3pElesfR3i5czJXU/TMCYhU
5iUIdFQzPOQJX/APIqhOCi4MjdcBllX22hAwlTdL7sSuwp1Ylpf9sLv/5fHht2J4EosGaHaYlsJ4
rffATYA7T0OKJFjSGnFVefxp7Y3S3/Hpguq+QvXd8mLvd92vL98KxGCwH8UIB5EzD5yIFhESrKVo
Jdu2AQ/FNj4ZGbj0wpCrpLxf7DTnYHhW0M/Y2mzBD5dnKpvgiCSWaZY6l9ArRB9noGIFYjowi3kH
bJbjnLYsUMPj/9uuH54tSGUVUvmkCG6/IX5qtapLJTAFHEFvCVWoAWPTwPfdeAL+lGgj9f6vgmNZ
UlmyuO5azx+uQsrdwy5nrvBGD3OgwI432vkmMo6xEAnqwVoP/+BUwLeE6cNX1AOsuWUbwKOCTlPx
mZTZm7t+tPYfvn57xBL5c5wpNx+CUZYEo7GhFMH2BQggh+WR1LceLF3iOFn4HquVSjr2+xodh1VD
6rxJaJorwnJ5UZbqsfU6JtuA948YxzhpAuf2EaqUMSwlki7j2Kw3KOjc92vnRHWaLtTQj/0jNhDu
7rt+jhtzEnNEx2AihwuX+zgQMxOuGEKvBUG5dyawq+JdlW024uLrF29KDliNrWW3w3ny5VSfhi5G
y0B3RdWk5LCeCMxan6hqbIoc/GkvyHUq6Lz6a3M3F7R3FdqtOUXB4NA9fPntnT0PjUDfGfwxMFRM
Qy12t4O6B+0PMpt4Bq4amL4+LSLs5TIlBTtSoWC3X8fYb3f3h2yLrNwcybRSDIcFYnMox7pvBwYh
BhQJ3KzI2tZcWZEzbrIZXx+fFyz03drrV3mSUsEC4p0d+udc1vXU5azQEEQZCrVao6hKBFQfcQHR
V9BQNwGYUK2KkbpwnbOJGbp42mY727N67aakvsbSqpN8sBiz14R/4U8zgofgv5Ep8JNF4r4hinm0
sFAgA1MBsQBFJCSK11Fw8toXHDZ8XFJvKoL5br8MZsXjMI388Y/bWaojI9rKMc1BGI6WYojQhC0x
CBxDERtJ4pyUlmpQ+m/nbqzp2fjpVu+V3O9r3B8qA7KwJmN3vK+GDhIWemiwa2jAuYA+gr+NFk7Q
rQZTzAtwSK68U9M2m7dqemPOCGy+1hfw4RL74Wm8sqeoGhZPj73sThkPv1rjtUHfl0jwphxqjjZP
SbDJX0RaKFZekNZXSMMJMfuyHbE4WWyIB6Mp5jXIdgoXISGougiiMVgt1ILvh9h+NNi3z/+eqdlq
TaydJ00q50mTfuog+OnDj+uwgwq2VQEnubKEkEutalzrDXz1wnFJiafavWXYYUZEQTxfA0DDh5ae
bKPPQ/St2T3dT1FRITNWR24/tIbGVhCEkgGtzFXSjW8tuLvBODTfVIiLQtT1igVBlUmR+OGyxOP3
b9278dcAj2v3S/81D+k+m0ERy46dik0bUedhgtLLaJuWc8c96BHq5SuIbYvVt4Ici9cW3Bwq3LCp
j2z/Zx6JdE6zZrjEFkSqNE0gWJBvsKcBrkNDNQZ1QvBcLMK8xSrF/qqSSNXKTvHmP8+xboXZoyHI
wltwjllqhMGpC8xoMLcIDpo0LRFREO1CScCftWA3ToGvbN5Nw0zxN1yPq5IiUtizbUCxYD8CqBNj
W4ajVzVjCZxfU7eyp+VKIrrKedKrVPLY5jHN6Z0fpZCiNUYJzL1iQTOFo0QwSQVGvxUOxT19rdCr
WHyz5qt4q2BjV/Fh9K5bzq2Px6df3eP++Pw49XbqIQ2VQ53SEgbfp8RpTZxJCa44GFQptlF6KTl5
pcN7sfqW9i1eKrjY1zTWXtbqt3JpNP4KJvcWDAVcYFsw4cByDR4R+JLyYNLGFhxFYQVcGiXs69BM
eeVtcyk/LqmWlUvccVWBDcqN3/Vyck2CiwJbQJLxWBUNXq1gBEeKtRTMv8A4uQ4o7hWYuIL2rqvR
vmqch7PnXhAccChwVAMahrLM0zY1CGQEpx3FegtigXnvNMh30MVXBczGxTdPPT4siO7X7a344WTY
vP+w7OKIbTI0IGaLTGiNgdyyUfImMWW9hjOvXoniX9/FMW2+ILmrkdxVHYKX++Pz0xBA/ng/hPHL
6LHxksG3nVi+pw5POTOgU0F3aRY1kez16DGufCF0jI8XHFROSs/PY1HwbvywQNEdZ1ZKRYCq5BtN
LJwUwuFYg4UDDAibgtcRFPHbzawsqZgzYfhuLe2N4KyG8FUOrhx6BHBw5QAuTZ3yiQqsusQpCAz+
AlMH+10Z8zZgVq29eljH6+MrV6/dlBzwGlsrAPzlTIihthKB8wYtMOgB5R3IG0saEEfAmgQz2+iE
4Atw2RVNiVw31re63ZXTKpYetRFiX2FxpacRePgFruoPD4f+y9hqN8WKTKDGCbBAcaoKDx5/skAa
jf4I2A2aOHoNX8s9tiGQ52+V3NxVfjBNa5D6Y60+PaXyuFLwVy7k0ZpR71BNU4KzeRj4ZxzkQpDg
BUksMXf+VZVxoT5qenxTkrkOLxt7t/TdCtd9CMSfSnm5ylGC4Y+cefEuBZtz0woPXGw8BW/O6GhA
pauoBHm7MMGZlktJg9UBtHeVA7gj3SJKDGZN15+b4qeKz9ZyCocN9E6LxRme8sYlnhoHNolUKaEm
uuRLz9a9KSk4VMii5iSWf/19BoexAqAA795SZxuTcHa6jXwILwnmCfb4tYHWO7HOqxbE7NU6lAsf
LkMnXx5+Od4/TTnF6YJaz5JMFjHO8mQ9+Hq8tqaJzCulPRyO62aY5PVfPQdzKjYSLbM3Sj6trfBp
J7ftpx3YWffnczBaIamV1JDIMHGR46wgWBPI2ZC4ZD6DgfA3skJKChbEr00R0/Wqgoj6csw4UKPU
ydjKFCOrCs4tQVOVBg3elwqNTFILDU6+Z+5atffxw7bY+ViU15lavZo5sKV788PLl+fj88NL93mV
RcbOIHFCJhxn1DKZHMPR4JipxoFbDDzpJBHOlTJBXFTuuozv9rZF6nf5WsHiwVRUwqGfeirdpzQE
cqeSr/EOw42NHmwQYQn6DWBlWWYQCJO2XLWqlTH+i1g8xckq6ShZqNTHm8PdEiJwnKv19Mf98+e+
SBvhVK3xRxr+QCVHoyNYJS9bzPAw8OkQkKCRNnqG5WlJvf2Eg8EeuV1TuDZappfmX4VlFXvfspW9
P8sIDxnfbGji/zf+Jx/CaEYYyiSK54QzuiVToByFzNgbOAo2RP2XAIoMzxacHiqcnkecvP/+43JA
YtROWnRdWp5nASGAMoIRMkMJVd7a4N9qsu3H9TG1bD2c2VpO9OGwnEf5pUdonLmK8km30WOJvWQo
MlK2JkXTIvg/p+DmOHt183rG3dnuXcfHNyWNpkK4Pmy2PXz4W64CY+/IaHBpi2G0PMVNEpsHVFqc
+8OpR0EO0hwumNMOjpR+Besur73VMbAo6gIi+wrlu7PxNGYKaCUL4UwkAZu7mEezneauPMQl98QI
zcFGVAtMlMVqBSWCrs04K7hZDyP90n/60aWzaMIYak5ujcYTfEEKXFeLgXlwk2KLwCgOTFdhfUB8
JnJdcehpqwsnAZ4WTNQKAe0ey1tXfeLuU/guolwdmn1xHtG7AYdBOJc8DVipgHMaCXh4LmDzIJEq
D3glIlxdEYq7XEgx4uOSg67yM+y7bpmb6rsjxinmIFOceepMUE0MOcgnwEo0AQ4yXEkvdOCt8hez
UvM1F0RVRNl+BXAyIQ7NBg3wEDRFkWaxBpy2tDEOY9QBfGiaWm64vjIUtg02VIEaAurWVoPtJL0E
Wf6320uDV5gOcMXAi9QGsf1MhBNtQNbFIL3SBnRPVG/njJ1p2ehduK3l1IBDVWF7NZKupvrdz7eg
ZDUGPLgVuWrOam1bVEhEY2lscAFrfEOTlPHBU+bA//jrJlrCg5LX9eg6/HCSnVjcdATd/l/nScQq
y02KAxThOCaJQTcDsh5HfDbaa46w4Akcqo1a2MWCBTmH9WBC+FBMBXSgmEt1r0mUFCRKQwQWZggc
mZcoBc83BSatkcy82SD7Gr3/29q1NDeKA+E7v0KXqUqq1i4QEmBX5aDgR3kSx7MJzuzuhSKGZKmx
IWXwTOXfT7d4WNiAZx8cEgx86pbUaj27m5lt/J4FksOplRu85wdcoyhsjwonv8KFYtShf8RILgNT
UDxixOzB1JmJyYy53LSd/8PySOWgJyB5+cVJHltGm5WHBNWQsB4GpnvUprw8+ydvpANcAwY4lA1m
DsaBkn49dWsqrZIsjv0C+6UJeINQ1xhB+aSZGd5WYVbbdooSteioi6ecuWIEcwXBoZMwdZfDGAcy
AYMFXGgaoWeeiwrsQryixidN7keshfvRq9Jad2niNg6wgy6z6yPsI5yHUlwjYrcMdxPZAMNH4LEm
xxCGg3noarYnKTcZa9ltHYWbl+oYAp7Fj79HR/Mq08QNX3nw1YU2Lyi6C8LDCMJCk3AY83BTxte+
te3TA5cniamMBLTFU0UAw++ztU/MTrHrpBoVsVvHsk3oYE0LYxDPpnTgTEwdxi62cPmEzZzbX7TX
rdLvc2ZwuvcUMOO8fvFhpf6iJNq/fTRWAY06mLou2MhwceGEoWH/bMLRag6tXATa2FPrzNvGWXJN
ZlrmXgFjo5M1yV2w3ab1XrplV+xwm0E7v8WAZQZqZmguDi5MMm5RAwbatmX3nu9R09U03JiWgc2X
aRi/VhsnT4fdDipgDHy78HlGdkEYkZcPAg0n2pP3fYpesGEokgf7t0h6x8v/jrPqxVjmNw+yb/5r
uvff43BMCn9eRShlfwN/82hMdPVhFuV+ltfPm4QvJa//t+Thh5IrKAFJD+2S4iRqo2dib/zPaGrP
S4JxrtXyxSCHq2T7QXBlCd+kr6TuHcfES/Nge2MaxtBZkn2UxWGU5Df63ZX+6ZpkP9DoLPTTQ+4D
W4dEViwQC0sExsP8dK193cd58LKNIAEkXicLE6I5+QEv8yip0uyhUT1S6WASJRUi891/PS8evbW4
h7vH6XyxeiBa+d/788u0G/a0+Eu+dVfrB49cJWky2KTBNso2UXhNtJvj1ZFA/ba60cQmj7+jJ3kP
GimKb8sFUynnrv5BNHdOYrmt03dRSz/BZNJtVQHNWjEGYzWGAwbnXgl8LwWi/eKWc8Q4BWa9KPmT
sZDbeONWgzcVg9EWWnlT8mMSbVL61ASVn0CzP0geT3LFYNK6VOh8fiKfFx55Q62IUgPY8ISWQVUM
68JcFc5nsdYh1yOrQae6qm8INLcgDNGCgADTeAJdEd1r7U764SYCn5BVsumoV0fN/lLc36/cXgEw
DBMba/nDrjFvh2Afkvcu+TFpTQcx0Q7dcHrBG6GMdpKianV+KdQXgWp9zyKySF7TiyL99Pt9nEcF
VxtQdu0iQJsYT7h3ZL4Wj5POQuDW0KjKgBqAyYPNtwvKwbCHVMU8L31ZcsLrUQ2E6WrT+Rq94NrZ
UlZzFx3nSIeBqPn+RHiinzdq1BhKdcQslmI+7QfxZrn5/v3i4W46AbHurtDR0KplR2K86R9ef7E5
tC5rSiVm/bBwV5Ne7jhvyM5OavlOJVDItTU0a96grEu9titEtQOkYsx/p6q9lSe7jP5SGNrz4s4y
WIn5jexAQ2UNhVAoAtmuuTPkSwWj/QRQSwMEFAACAAgABo4uSrvYKL+OQQAA4w0BADMAHABodHRw
L3Rlc3RzL2FwcGNhY2hlL3NpbXBsZS12aWRlby1zeW5jLWNyYXNoLWxvZy50eHRVVAkAA9vUeljb
1HpYdXgLAAEE9QEAAAQUAAAA7F1bc6PIkn5efgUPGxNydyPXhaJA4e0JhKRu7/gWlt09GxMTBIKS
zWkJNIDc9nnY375ZhS6gi9t0OzamY6QHS1ZB5pdZmV9lVSG4ytJQ5HlHr7/CdNoOZrOJaH8Wo9/i
Qr55aVKIpGj3xIOYpLMpfNb/wBax/9SuguJ+UwS8jj+lk/lU5MefLs9uz/vHb44X0sZZMBVf0+zL
8SeR5XGa5Mfu8e9X3lBkDzHgOX5O/+MsPF58zo/Pg/ByePxCuNppBH/jcSyyzndYqy3AblpqIfOt
3oK/bdw23x5pXhoJ/eZpJuoH/m5bhmXqrYugiB/EETgtky682uiBX3/9Fdz6p3abi0w/7W0qYwhr
Wi8oxPFNPN3QQBDmBsIGNnXMOybvYLvNTVs3kI2QdjnUdxkAHtSh6XcdozbGbUtvYfYBE0yOtGsx
S7Ni6yyMNTdJk6dpOs/129sKxr6NsOcQbHRdQg1ud6nRd5yuQThGHAO8HrM0TZPIdfdr8EXowzgJ
hd5N06IDfoSXnoswTaJc04ZPeSGm+in0w10WF0/SU4UICwVFJMFoIiJN87IgvxeRfnOfiSBaIUG6
3ovzWVCE9/pfczEHT617eRrEiVGoEzSt/xiKmRRa77L+757fdXu+63n94VBvDU8/DPsfPh1Vjpf9
vOq33/rXF/7pxSf37BRO6vWu5VlBoaNHVHtRVJFwAQbVNHqX11fDvn9xeXM6+B9N+3SuX4s7mR/6
hQgyEEZRRzOM97omz/D9m/7vN1tpt9CEEcFsBB+M6heR9PEf8jD7tz/1zHg8zr4+6sPz//IuP/8N
M1Zz4aA4DJS7hjMRQvaGEBPjNJuqLzuad+0OP55efNBv+sObjn4MYsMgvBfHeTwFBcZDHInUCPKn
JGzfF9OJpn2YpKNgot9kgYy9+XgMmdbKQGuWCz28z9IknaR3oHWyjMajjsZImzvEdBzpO29wIQrp
ji3n/0fZ4Xw8HttjU4yjEdVvvCsIliSB/uPjwBTQB+PQQfpweKZ/DED8vUyF3uVFX2qxiQMp1ExL
aI/3asmLICvi5E6pS8RdWsTKc0oXRcghjXQJizl7dUG3gssL0dbHkIvYeqeLDLgWLXQR1kQX4+GY
7vce9BfQJ27XVFgUO69gDkXcwlvm2HVzLBPxVzBnoWu3OQ6zGpkTOWS0V4WKBCBNJZoTIIIfF10N
spVoauEf74QgMgXajilc6wQHW5bz452w1LWrExxOmfnjnlqqqHjKsblNmnSCxUcOZHr/UXJiXEye
gJ8KldveAPyUfokFyE+z4A7e4WtwW5nnjm3jRpFkjQiL8C5Ne9Vo5RAMQ+9iTO50XjgGo80azEsz
sQubGsRM0xwHyNIXx3U6lSHCk8T/Mc2LTgfwbja0Pt8MOp1rMb4qspO9p7//5Zcj/a0OhdAuwe1w
NutQ2zrScFPUUBzR/ag/ZOl81ulEcR7keRoCR4teGs7lKHiWBpHIWqtT698rtIQzvTUv4gkUSh1u
sSONNIUXRVR8y6n/u+vrlgRgWhv6aTP9lgAaifQ9NoLmDWconcTZ00n3HQYQzB21vb4XAiFCIIvo
5XGdDrxvgdj6TuGAertV/xoA2FBAs2Y+sGnAob5Y+WAgi66l7iILkjyWZt6kXjqdxgWwyDomlO3R
FaTkGxUPJrimjHSJBR1pVlMsThiM92AJlX6oxx9iWQsGE9mgXCGH31blWJUuGAqnI403DQhhOtb+
gBjHSSxZRv4PHNSK0jnMCFR32GSrPxQM0z7S7IYoxiQQz4TlNHgaKVP701nxpFzgkM1UdBrrjJiz
X6caQRZmnwONXos8nWehUNoZo3uMp4AEioBmQcCjyN4bBDCXTubqf3dciOwieIjvVCJepZCST+vg
XCK8FjAO5AVASPLil3cVwVDODwugvDfv9FGaTipN7mSSfl2LvklPk4dgEke312eqsykjGsZNzGII
yoBxpVNLuF4wmYyC8AtYBp9aEoYaB7DeGs8TNe8MJh3MKMQyJg0VwgQYbSm8F+GXqie/4cXyf1ch
WcQ5EE8dPCS7yQEfbcZ8Y0eADyvMV+lpbxJDKKmRSY3lPZiERaJUC/22xlsiW+PdbNnu9kZxkRdQ
Ufg+htRfdMfJQxpH+h4HvS+HxY3e4w4F75gNew/KcHt/78kPzWN/I8zrKfvmu33QONUWjmJQiNY9
Zco4Z035whL7+GIC75/j4v5lVU3NA0sxcoVmjykv5QvCib3LUKuhodZIhM8Y2tpuqveISmAMA5wc
pWW9AmMT5o2yllKGg6CatXL4L/UvlLWWjRLAVSChAMXkFQwUeKm1OLUcKDCTBGI3g8Iwg5FfxeLp
ldfp3AdJNBHnIs9B7sniPa+ArHjk3aYJ7/RVUNcte3P0DYPet5R2oKhUVsZbkt98v2gVPATo5GPV
NMm3UFzJRYcG7sLCNoFvFdaFoGsRivhBZOfBbE21i7bSKDmZLJc/wa6amWUswbi/LavsUgKkR1Cz
Hg2Yg+vBtVioBnTRQkMDfDLr1kIULIs4AAs381yAnRHVNxRue2xNlPMkhijzZzDlq4KqcmkkxsF8
UviRkOsMtcPe6+8Xmaq3pmKaZk8dYlGY/RHSELcpc3Uv7stk5Uylj1gVfUzqq43o/x08BMMwi2fF
mqeq+mhEyMiBEkdNeOfJWZpCWM1EJtdNP8PsvyzWKV1rMZnsDbOhFjpC5BktMtnUfIRCpbI4whuU
c2iprja8SCWDdJ5E5Wrv1qKEY45tLrDu+97g+vbi7PLyyj8d+p57dnZ68cG/vL3xby591x9e3l57
feRf9a8Hl9fn/uD2wrs5vbzwfelZrhGrmdaIj3FYai0t6KVDNcbmSBXclkZ4U4kmHVclwpuaOQA4
u6EoS1BbrwparZJD0jmArUZNH09vYMwfpY97Fn5ChEKHMh3kePNMblD1H9SYnM5Ok3O5sQVSKdMo
aiqVW2N9QRsX4rEUK+exqbTcpESjuKlIBhNUvztJwy+3UEBPVmLPZUbB5OgszosStaw7BvEE+ByU
cazRWva6s9m+7FW6OAnCaGzpfu9quFIiYwlZXKO0qSgCAWj8cTGsbm34ySb4xT/5F2AwME5u+XVi
ZQzwVbmc9qf0HDM1ajaEgCIbbUHI5okUaNnQFayZQCuglq3XxMmJqSJObmkUEm4Sjx5nYTt6gg/6
c2uPDrdGQLem7sPxfjr6V+hPS1ncgbjjzUQF49FI6FLSQojpgL/sZ/d8t7ibhTxE+lIAMH9rvfMl
7WxPpx1MoQygjkIHyKI98Kp+E4xCCEflirD01WoJFXfUmigIyNUmqA8TjURM6jLropjJBAFKkUu7
f6njM1HMM9UHSK1VrqXNynXXmriqNNuiDuO2vjzQ//pX+UGNTDZVa4uNxHFq4tLOmiy6spg8u1gs
fbpoNKZBAqNk9h0OglFe/6JW+P2/0rzmmKX0Hb1WjScUCgtbTPeXx/vTu8yPk4f0iyJGbC1d83KB
LAqjDYErBzGychD9x4WE+Y+zmP3jLLY61TS/GKpB72a9K9TEFWY05gRYWiZRfucXWTDb5YWXCKIw
xVgKUiXexm7KC8oyG0MtXanwVsNFeH+VKronmGxskrykcGQi3C4cMYUi1NRfuXKs7158swowEYkc
4MZaL6rdEUdtPjQLRAdmL6tAHKXRkzITq12EhpJgGruStBprLVttBTQMZ4b1TUHrYObfk74YATo/
F9OvQVz4eXyXBJNdYRs+P5LYATZphMZ6EiRpPhFCxb7jLHM2fPu2jXfXJDUpHDmIoMrcuLiP88WA
1OkowT7M7irz6/J6GZjJzjMVaieTNLnT5Z/qFFu1neDJO7Bs+ZrA5LqyEsXZRjp8e/oJ5CdG+mga
TGAS0Ol8FHLxJA8DiL9dawBypnCyOlquHMbh+bwQj+9/qWL9Hosmy4UCxvSW70+lVH8U5KKDHb65
E/kSwyKgjw3DwFVhOScbLk1UGxT2pkaKN7ceX6CRM4TXGl15udQNzD5OaiCWy2cbyN4ctY7ey1iR
YbLgk3IvjOutlaj2fQcTtrkT+RJoJopeBVo/KbKnqzROitaPiCt3WJ2NHc2XGGKNIiX3TSWQ/EV6
+bMsfXw6qaTeHMQu1vdB748hfvdDDnwD4b1ezHFodXGKHzVn0r307rwevcu9ztekd3ujVrm9Pluv
5JVr/4ea5e9Vs+y62Kl+rdbIDCwoUv7Y6M5W2Z9Hup8t9tPkF2p9Uy26gBvqLLYJe1OT6dhEWNK7
F8MynvwyxspFSYi876ls9iSR/XpJ5LxyjeRAEi23xnRgy3QyiZO7Q978zfLmWwIZth2M9c31a97w
KiNGWcCsypUYq4hYXM7fiZO4iINJ/G9RLSuIvMhl41jwtlyHY/So8bhMLXu5i7FVJ6wGPcx37Rvb
jVWNwnGp6msxvtmvjW0Msc6rsUPjcfGZIRa/Ljtg9I9bAcFYMqKMB3depPI3DeF3rn8wGo0scMRM
lnf3fvggZ5Tf6YVAXiWx8oL8CYS/kMYtvkGQLwh6HhBeGlnaBgNtFJcboEU8FdFnkF1enKumYzAb
q1zNJ7dey9Mg169KSPn6Mtymc0aC6DLZr4Lsi9wmSotOZwafV7CgAH46nc4mKh/LKaq8xESeMwzT
mYjOgukoCk7k9TM6lMfrq2y2Dilr6s1D5C+g1LUwT0kwjUNPzkzlxS2V6TCRV+y31hDLLXNkNp5M
ck4ibqlrfUrlKzO7crbYkR2r9s9OVOsZQHnfWn1sgBizOuD7jv0dE1GEBY5q06Ml6S4/n+xKl8Vl
kWvgIlvbIw1dLTV0Ov/po+pMXk13giLNXkPw++U0Ss46IQ4yKbh1VO7q2/J65bp41a0Qk82nxT8w
avH/r1HrHzExxORA4QcKP1D4gcIPFP6zUjg9UPiBwg8UfqDwA4X/rBRuHij8QOEHCj9Q+IHCf1YK
ZwcKP1D4gcIPFH6g8J+Vwq0DhR8o/EDhBwo/UPjPSuH8QOEHCj9Q+IHCDxT+s1K4faDwA4UfKPxA
4QcK/1kp3Kn93MwbDGWUFO1ZFj8EhfiOy+QRL39pPBFhhcEb/eiDmSxQv0gpwZyXt+JQBE6aXxu/
t1vo63WL+cq/X0J6uHjgxFfgLflMj8WTJ3R1I0K9ZZnGKC6OOpquZ8FjZ+v5D/Km69loX0O4ryGq
NmAUjcbYREgqieI9p+SrBmkbiwJnLCKlfbbdEKgzdjQ4Uome2TuUyITPnDou0zKDUMrCaBdg2YCr
oixO5E8ksLQEkz2WYFqXxSwSCFs2mPuUsO0zIBqgJZ7VWpY3E9ez8WRDO0ZENoTZDlhUekU7Wzwk
wru6LZ/igbR+lqWZejLI4rkeqzNN7Ub+Su1iPh0tHz+DTU3TunESZE/66VTdIFFbPsPjcfX4Dt3Q
61+G0DnP38CopR5JY+irZ9LoJ7Zr9wacMMMzXWzQgcMMd9DzDBOZzgC+sz0Lvf/7Pf+jZjmMTdvu
sGzpjrfrewsO7+PpIsNbCCw3XWb2+7Zj2LbtGtThA8M2bdPoOr2uzc0ecx1vj+VbEut45E19N/GY
YzIe77r77o4+IR7FZo9Qw6LuwKCU2EaXsL7R7doD4Nqe2yVW0z4p22o4Q3tHGAmOxuPRNs4zcReE
T7vQIodQ4nFkYM+mBiU927Ad1zK6jHLmDTinCO9HW8p9DnN5RBU5hYzeQk6jKNzw8EatsQO7h5CN
HM4MYlPA3u+ZhksQMkzPRH3mDvoE7YyBuuTd6OvHVPGbdBxt4We27WxHyD7gjottbFkQsj2zZ1Cr
TyCMu45Buy71XMuynAHf4/T9iBeNVaiRZZEtqJHlWDu55kbkxfU8SUTWPk3+BfWEiLpzeVdUvYXb
UgiWeccotgfEMyzXJJB3GEHKebbRx4hT0ie0x/v742Wtoq6hPVJvm3zy/Ek1S8NyWKlbGnI2HnP9
LeT4wjtS1nA+k0/AqrGJ1R/0KTWNHuqbBjW5ZQCzukaf9XqezRjhqLvLqmcEV9BhDBXWJjqMmeT8
2j0m3fPe+c1ZN0uTf4teJm/2Kl1vkjZUy+D+ttkmkvRth/K+5Ro27iKDIu4YTrfHDUz6kAIDz3G7
LoAtn7R1fBaPMhiKjvuP4NlFrGyp2eP/7QO1Er2sJGCQD9jaqtWXURiYYJW8XZ7eohZqkxI0OJUO
PMPzELAi9jzD9TzT4My1EfP6JsI9AD3PM+nUY3l2RZdtUpNu6oIvLbbhweF9kMnnmbRM6TXatuCM
5UdA0ev1iI0xRG/f6wLbDSDx+n1sWE534MA0pAtD5rbrrsrqfLDMuvx4oWZ3Ii4aa/BNRLbhyzKl
Dv9cFFB5tJilgMs3AE0RwzbHGNgCyA1o2TFcF8PIh1CPerbdtxy6DbqCVkndjVU11ZFaaBspw45C
Cl3zcB7ny9sWAVDaZgCxO7AwGfCeMXBpV9YhQG3dPgfEuOt1Ce57HnsWohuGMIWBGfAecqsc+iBC
ELD7sDo+rW5CsMuuSFGhnEzM4iSaT2dL07DD21gNkJwzbg8MNFAllgk1Brb60A+9QY94jHieXQnc
LUk1EJxY2yA4RMHCuY/5pFjd0amFzbYJCDjxethzTQMPunK04MRwe14fGAoynZtQKzluHUFVTE2/
Tdi2fsfcrD3PgnkS3i+rQL3FiQ0ZBKeVH2QiDaBIcDxqIMsFTMgCTCZyDYb6PUw8GN8899kOl5y5
VPDNLq/j2X14/Rjt/4i7tt1IjiP7zi8RYGQ775fHvMqzllcjjS3sm9FNVo8Jc8hZkmOv/PV7oppd
XbduEmtCCwgk1VWTGZGVEXFORGTXVMGbpdbXWzHTekSTv7ObQB5XmkAPQMRQVOSMJwHfVRVcr22K
CQ1qaU1E8JAXlT2NvCZ7Hl2/moq44jT2ag6Unrrrb/2rFL9zfZg2Tim3IccL2ausxiiYovTwtkoG
QDuV8COJBKzhVNCXncenl9HP+LqXq2O5scWWchtu9Gy96Xtlu1/iMBfcyYZvlCQV+j/IsQjnhAJ6
zgIBrxc/hBxYLpFXX2VEcH6Lw36Za12Jl4sTHQT3Sx0E3x4t9b+/bR+39IKP7mitnoAEb7DH0LBV
MsiIiqBmScXKqnZJGW9L4GNvcchg/H5lvJkwuzVh9kff1b8Z8SiHI4ccjPYx1sAkXARTBnKESj5D
Rpe1RTTWblWO0VBTEYJaESHMPceHH3tP/qc+s0cvdBxjRxOUx37LrMaGxXHZsaiUYVaWEE2pWQT7
loe5mGT9sS5umyl0s6ZQNzOurwjlI1K2+Uj/D6V4r5W0fYCu3jTHMyuuEHoEoEjESrNohiMYBuzW
y85w+7hb9w0TN/hxKsv4rv7STL/9in5bedzAfWLwUx7vHCFCH82l8gGqRGhRyd8l8KoILttSLZWL
jCd1WZ8fv3b33/9wxk/3t98CRa8JMVVha1dU2Ns55vv1y+5h+MJrAszkQTzXFDzxXFJz1pDwIFhN
VOZNhmpJNl/hGX2Wb0J840nO+MLxLRNFpFp5FvjwaL9fCIX9lepbT8/bEwSB9vCD+oD6S61RCOmY
g6ngoTSKuAk/KqJUTvgwvckTfv/xL/nhy9dboK2RGueEmKqh+Yoamh+31F0fggc/ZM3G8I0n8A+b
KJYbZkCFgGC0wIYC8625KZHo9cKGr3qj8YgTUay9Xopi3Xbmjh6wET8DUAswgIMb6v+ASFaG4BKg
dMoFPDY62GwRlpXqsJKxwU3K//MeP1ybCOzWzNHtdse16470bFg+WrhWgpGF0jGpZqYyAnfo378s
CghkNtnoOoV+s3EmMoSwEkZ2W3vchu3h6e6vN4eq3eAT7EaSHZlGiTUJhF80ED7Egh0pwXJFsG+B
ki9hKslytKvpvG4pzPWNnvnfA7f+H7hcBLH+EQLObQRZRCypemUMA+k1TCk8vWgBcgr2V7ECpDLr
VzEojb3+EI9Xr6YCLgG06Tp5XMLb62/XlKGJA0MyYoP/aAnhVUMS2jLlNXhc0YCRGT9aVUEUU2DG
brqEs9HGkljulnzGHjHBaf1u7/9+Uq+PWwRspSCBBBwjLBACNQffaJOHNSjHsKt4bEonpfx7xK0P
YxkmEfr+7xOdhOArOgnf5zRPBZ+b+6enm8FJSkNYl/SBI8ESBw+cSIkRYTNLMBFmFEwNWB1Isqy6
meW4M7HCilh67my+pzeK6wMu6H1M0oErBbagkqqUo44gbg54B/DL1hCD0Pzi+mLE9YXDhamEuzUJ
9+7oXb7/oa9EDEYte2oLDtBAbRTcMge1DRwGBMAN1u5VA23nMOz3ifOT+SeSa7UiuTZmvrbdfXf4
3t7t3aeXl9R+d/AHUoVeG589trX2TMtA6BL7OmTgF21dDsoh6qfwpgC5nOrMQ1jeOFXNLOGLNWZA
YO3h/vnj9vEJgfj4XIzvMz7Suhhi1UwLhd2MsI9n4hQiVCs5WGN9a5fTKadXdryZZMc/n9lsx5fP
Pf1+ReiJxsHrpcbBXw885eHrr3sgj9M+dOTHiUa7lFlTADVK40dKFs8xW9MKp69ok+tcZTLcTJIl
urc7M4eO/a788OPYQ6qNOiAFbXkvnLLFUIpQV4UgEwULmitWsgWr9jxIfzmztZhi4gAPFyei77oV
J3jNzXHbfLz/fEoQ9TJKeBKnC2daGzibWALzAhgLkEvCzQhsnX9DxsnjHyYfi+zEzdKIneTqKPL1
73633d0epVbc9Yg2SFlbgpnyGuAehUnMS8dZ9SJmrbSTmU/j4XiciQDSLjee6/zNPL9++Lb7Y3ZH
c73RtAMbFaubrawUD7ZMS+kzdmC2IUnJTdV9cvqivZ2p3eWXa1dTyboVcQM/2kn+5U+fPt59+3x7
P6tVvDhuwGUVZYisUG5BBXBoX3lhNmTj4B10svydCNq6JFNtgljTZtsjuVN0vX94vt3/enJ1iNm8
16Zon0pVmvHmoI0GO4u8NcAQ5wGNgnc5Xwrb44Engu3Fcpm9XlRd/tTd3G6P76U6piucEhthNpLT
/rCwKdWSYwm/meKAbz4GWJlWCPBN6tzsKxn40xTnEvGnO66m8t6sKOF3MyXG+dQP98/dI71x4Dup
/Ybyaf1vUqSCNjSOjeOaoBjpgUgqEF8LXqWia/bpLTFybbbzKHp+51Q/v2RyoCrdvjvYwj/Kp4/z
coNxXFrDYa+NIz4W4ykn31io0E16XE3qtyo3DOJdTRXYr2i1nZernr52HfjtY3f98Pn+dppaoHQo
9mCfDRW9oYRqYvB4eg0AiWr1hnghTCbB0wufszb1PfD6p16qn9eEmuQ75rdNV+B66ZLBWsLRKxCQ
+Ln7fPv0/DhyCqbfptHxAj5JicumyB9HQDkRoHcKVPOvwYr/R/wzFXuitVV2RWs1FHhWW9a+A8rb
iAOHUaWI2nRmYPjg2TE1hKLcJ+1FrrUGY8IlZzgZeSLa3i2pq99v97MtWbrdt8+HVNYTSUbuQ/S5
eKmiltkAhgaAC4WwD4OrEjjNu0hlQ/O2DNR4hvUVH98x1WHHV3S4FgPA/PJ1yD8RkE5RpyaxfK5p
2IkCww2lOGZFyKEmr2puM4gxjDCeOPDrZYwLQszZ9kH3/HC/v/388p4RiihC9+X7nnR77IfKNVbR
AmFgSSkFFQ1rPrTEa0625ssFmeUc5/KRixsnOkm1zMAEae2MbQ9tV0pwcr7cV9FnHi2RLVVaZdH4
vpzvlDKpuqov7dAvK8ur9TJSgzfolSB3tkpnYDEAcogCjXJllCD1yksmC2i/Mw2R9PWS5OVKXZzd
czUVd2lfIdg5k6WKO/71ts/FHAp2wcmNOiTZNHeZchdSU/VIGCryA2zIUhLXkuPj96uqHiU53xlA
V6+m6tg1HcPsOf2tu/tK+x5cihJ2fY3ElKiB9BhPGSTPRGpncNSpGLjJpelm9XvErj9g6vWb6MpU
Gb+mzNbPS1rXpyCCLef7kEy/CIiXWkuqljVDfQ+JtJJFM6lg03Dl2NlvyjmM5zjDFEd3jLXYcrMs
VG657Y4R54fb+277GO8+d5j8VOmxso+0rVWja2msceAnlTmVtnWET48uJcr1yvIbIakVQaeKrgCK
rTDiCBRnr9SCeXlJmUF6TsCEShUpGdXCKY+esftkZrXkmrSt2sZ2yWetJLAxtVyTRx1jUbndfr5/
eKK3Ub28KD3f3VIn7CBf33kmtUo2YcsIqk8ZkGCQOOAdEyUeEkJWXxMdRajL405ElHLJy7dS+VmP
6A/b+88RuPzXp1sK+S9eqf9NWWKslBBSsUhtBMobhH2HLYI4YIo2INHOvDsYG4t0rt/jdMdUabWq
9PUxrH26fuy6+587ehXM8VloaTea7AEsIrtQBNPGUUtp4CxoAy6aogTeFt60Mn0cy+Fm0tysSLMT
Z3o49pPo1ndzGCH71rUYdSuFA8pQZwGPkcHxINrZlEIDGGvcvamR47UQt7xvqtDNEgltjXWnWub1
duRpbLA9ZavNZg6GyUyrnpJ8CRQafseGaFSuObg4qx9NBrqazubXRJg77nEwXOthqoRdqPpXc6Xe
Ei2xsWWB6cHmtE3GJf9vRtvxHTMVVjap2XXzFpkKwTkFHPzsS146SAdBm6dN4G1iURvOWszSC+yD
Ft8RIMR6pl+mTnXZLbnu1lo10yXdfeueHx6e/0ZFEn3ozKTf+76tmDtZ4WBYA9TBs8hwMgmMLygV
suOg9OYy4/vw4zD+uW6Q4YaJ9PZ62diydcKOcpejjjx5iCe+ZQVYST2YxMR1AK+I2QASW+A3kI0i
9CJ1udaRt3XarEwf+Ary7VNEH36kHXFIUWsX+rYaV4LMgOHVCXLQBMgrjIwDcAUHA3ShvbopXgY/
v41fbpgKv5L527rdwhD/9u2+P+l5mJqKyo4CjO2z/8U16U1m4I+VipAIgD4qZry0WiiDCFjflJKa
TnJGkelNU2VWamj4cG6Sf8553NPUTK3ASApegxafTiMElyqTMicQJZGgy1vEx7DrIuPCTMwVa3M3
dpZh2D7dDbxNKmrE6M1MNBKqMZEQSVQThaWoIvUTG+dqwcpfzC4Mo05FunErIu3FMdVz968v2405
4R4CzpkrE0SC5zJYNiLAMXvBeHGWKxUzz7PGhvEgk9n9bgUXhu1QfPifL3fAusfZZdiIPumcYrHZ
FlaaIb5VOYtWCgB5Y0srQkYnZk21o3GupnOtPJGwn5NXquQ/HV0v9Yh3N+32rvvh9umZErV91xJ+
UbAURcIsXGKOGo+VNABfMsDRFB6VjF5Ikd/PzU9lOd/Tfrpnqv5+u6b+bmisPmydHR0DfxpgQa8m
6GwJxbBmgWaUgeknxR0YCEBmlhoGZC7txvGQM5GWOeXtVqiZjdATeb4bZPKKKhIkWA68xKo82KkH
WfUiswjox2S00SfrnJX+Il0YDzyRrFvhnPiwuwBdNu3w6mWC5hKmLHjPQIe/qUG5meQiIHrKsGjV
YmAxJM+KAdASVQQX3rEb+yjPmRtfrk7U3rtl3o4+PD6Qv3e/fvk8oHF56BlzIoOcAjASIshgRwmA
jdXgs7Mi2VbXe8bGY82EcGtCXB/d1Lf7f97eDzlZZTYEEpsFQcQ+ZAjplLcIcJYJUlFLQUsJBKHv
n16KMR5tKkZY4Y17OJEpj/16t33ePzwO2TenaXf2edgQA2IlsLNz5DuVYp4aXmxW0fusE5z5xRTx
ZOSZbLsV2baDLe+evmz4sEL94YQqgGA0DMRT3so4zRKWjJliWkzZySBn/HU0xnTu7YrR7rv5WbWf
CtXoBaWlFZd9y3WlM2mcSd+7SKFhrGCqzctCfXLc1vcvFvxU1m/5qYx12gG1LnTa8TD05Wy/PT8M
cdETzQshVCt4YwjVGa4fSCiWHJmpmeuQrCktTdfzNMZ06rAkSTvhhwb2//goZ20ErhUrFWJyLXQW
0dGRWtc4/ldkW0u2TYp3aiMYJp+ILFf6rHZSzYnEH7vHXff48ET74AjDRNJO6wT3YKgi7qsEpjGW
VbB2JR1vsl7mcsdB14U/Xp2Iq1aq+DtFLZ3qlZrApsaPnkvxX/0ZH/7Sb9JnW4qoqnJAEpk9MQsB
464erjxq2FIJurX8Fjx5nGFdn+PViT5mpUt5Z3c3s+X/y4dxCv6AhLWyfSCKMSUjrQMVoWMH1OyW
YAOsWmtSib7Upt8i/XiOdQ3Gd1xNBe7WtNgf0z+P3ZeHf3TjLiTdkygja1OhMqELJLegonCygWlj
Dch182HSaXtyqvPxpsJcL/3pDtFrEe7vHh4//Xp/TdQ4HFaUfr8wTVclvLuhHs2cJAulrxmpgEu+
NO/e3bsN8pyjgy+XJ7rub5b++1rezHX9w4eh1UK+1Lf9S0MQNYarrLHtLZ2c1whxIfPKmvBJwZNX
PIt3qRF8uNiKMVy+mmoi19Rzi/IOaDIlxZ+ebne3d/2xrIONuNB37sC7J6goQMuhJ6cufg9HD5Sm
ZArBJ/l6J8lk/Av9JJP7Ztr4NW3mzP2U3e/LmPQPRh/RJ2Q6XtEpLTrvkhV0orNGjY4e5ZxsktXV
1wLwKzWE0/WJDrvdEktf3/h5B/lP37aPz/86HMWHxLThNOHmvtqea4Q5WvquBjp+b2FYgPhMO5ua
LaqZtX6YMQ4YBj+DB4brE9E7ueRMN1IOjZI/xI8x/3FRrdHA/J6+5sAC7jMVwOFTo55JriPP0jsp
fqu+l7GEVxMt1DKfdqNu5m0G23+MU92HTl7BtYXb65v7tUilcNUYvQoYT4ZOFFPl3gHPaW9SrK88
mfjLayFkfMdYhc6sVBDw4VBBoMPpAwg+HnBvgqskW2JF0Rdp+JxYCDKyKmwqOXEe+TpROI02E+Jm
RQizm3HYyXdEfaeo0YtqXtjo/Y4RGTGiQaqaXIJL5YXFrCSTzngOnhAzj5e4wnj4iXhWLslUZ186
Lke9ed1zf2zu2MDlh1RUooMtySkWZIH/K9ExPGSwBx9CsVZrk8XFrr/xyFPRbvSKaN0cx+RGXZDl
9rG7fn7os5L84B1E6A9HiBYMnbU2plKqLBQWhBMA4j4bG2sN2r/aYzmM/nrIbW+4f3bTVOtuiXs6
J+QJ79fvZ4Dfy9ichVElVS3cSYwsaFdZVjpKzxtwf3s3wH+c/Woqn1oTeigmfd1+GaXu+sRhy0WE
VEBNErZNk4mOMmems1QVPN00MTsMPxpjNrdfmzsMdcJe7U065f6lPSZcuJAGYbswK+gLXCJYEjVo
gZHbpqUrMpcZ652ONhEkbFcE2dnh1Ev6IX5ahIIEhYWXFvsxwd1QJjM5U1gGnPC2SoQx+xuFgpN8
E7V2fuXZ7ryZ5QUnadHhuxcOzishAEfQYHAeOvIIl+pTiFTE98raliQvr6XhpkOPBdzr7dLD7p3S
Cz/xnwdXQ0ca+cb2PS0vf/XHTlIAKq+scLhZwFRKP4CDymha5dLHYi8HqmH8czb/cnkke+A7vuBq
+FAMiYXzfre2WoKDvMZQ6YpnzrDECKwugCXzpIOeVbjPedrAr5dnqPHhzbzL9WdQpOful9vun6dy
7P/ydi1NjttI+l6/Yo97YS/ejyMeRLsj7B2Hy+2Z24ZEsdza7q7qrYfX9q+fTJCiCBJUaXcqfLHL
Ig1kSkC+88uTxs+qgBlDBTg1BrNYHMRO49GXp1IqQbhlkl+VQ1nvsyWZlu+VXB36NVcHMgXBDsen
b7vnc6OrJDSXsuORDVqADS+xwtBhMEqDvpWtA+8thmACj8nWe1nKRW/KrbsKPUxWel2fMmJVBsDB
8o2szdTQHsVVCyYtaFkO0h3OqdVYHpcaUGfaMw03zPu3cK5QQ92eyNhuj51embNKZb9S3fDh3TIb
elFxc+qUdlE2MuRKMwJaDZWcYTQm4YOoogz83xT3lhq2VFG25kCpyS76+UNKCzXMNTj0NjrwBB2o
YTgnjUmKNIlrkcCGDGDev5EaPu9eEq3WJ56CiDsRfewe7n87K+KhsZ5IRxxWKjF0nbCY1YD8aBLT
wUfHlG/tspt1tspNuRWt7G+WP/sZhSEjdmAEi6JKHEQJZfQdH3rlLRFaJxDC3nCJ/TG0MSidU0yJ
MA8HwcarUUPyNheAQ/Lzkp39WizSPV8GBn85HvqHy30nQQemKJYfKYlmBoVvu9UNVS64yDWthtNm
DMy3qLMwf+OmpLerMdGdzsTLfXfOqWZoLU/BJtZN0FoOpdZeKDCJeAsmirImkXYjUdJVjsSe175D
pRbWwxHRP07HUmtUcvlwOmfBXAP7TESEagK/3qloGhUcloTrlMRFy+G8bEmU0mui7uxSEv92zA34
adf1Q9gBewpRQOV/ow6WAiwDUAuCYdEA0aZxDMzHIFkLH4ko7VU1D6cdNoTy+PSmpHYVNIHrcddV
2u7fP+6+fTp2uSQwQ1FgqTLYPflkUgOCFRxdwp2BXzvmjiiwf2KQYL/rmF7pwJlvsF10cnpjzgJn
2q5ZYGZqAnif/jGkqxddc+AGc+/hPBBsreVSk8HjpD4Qy5PRWr8RrMmCgpJ6s1tTL+luaTPt/jfA
No+7EZoPywEpVrubQfpSUBkM3CCQZAYRJFv4/rEy01jHGGmpERUlN0/z/sdyhyX43/S8IF/263vJ
d7s9nKDiCmSd9G//bvKpMUMoWyYvKFie4LGARy04b5y2mPO3mqQAotqQN3NZhn7z6mvDs4Krg1jb
HfwgJ1iH33eP5yKwMe3IQUYnpRqGGA48oksaDW2AFRGMtISHRQnYbJFyc8lrm+8XUgXcgHR7qgod
kkVGgJfBBdAgMPKaGEOUJ0yCGeUoaR19BZgsr1n/lvKjgs7+bm0lCELPhR7/8+X43PNJK1CVZXEE
qxfkmW4sdUCkxg4NqUOjlAU/xIZo2CKjWSx0U+zGWYUEMVlX4ad0+wL/b5GiBvEK3jJKf4eRdqJ0
45l3DQnMEe+8cYGXBJTLlBSsm/qtYHddpV4vDl0eDN9WgmZvEbt2pbCgFsEuhy+DYc+zQezitiUB
6+2vwCyJm00bp6c3JXXrKys4WSehvn59uP9xd9/nxi8w1FQW+BlsudU5sSolBhvAtELEUTCvGKcC
bG3HWvsWvsOchC0Gz2/clPxUTgYXy8KaKpzXmBuguVVW6CHAAuwa55RHhBuLhX2x8SRik7INwSea
QMm9eeJtIucCytdSpQsua6yfGxG+7O5/Pc6UYbaQQxCJRApOEmiNIfER0BtsOaiRFIlhbFF/N1ul
3L6zle37qZn9K6jFp6keHC9kCxfAegRRwEAemLVoKnLVgGsmgzUtT2QRw5uvUW7eq9rmqgI1uPgt
gBSDP7fJNahR6shdQwVDwLMkG59AYLQOpRNVwhjxNr915cUFP2sLU4g7uTDPDv3T5+eHb08TL5iK
y4Gp4Q/0Kp2yRMGBDQRMcY6/tZfGNkQoBRa5YPCbX9etmbc6UYsvbDVtrl68KblQNdb6hUU/RptW
eFjcSIyycJRHShErY9CNktxixTPoPQkmkJAIsZ5UJFRckTvYxsqysNJ+Ta28Y4uDdZYkeC3/fkzH
mUNKQKKQXNPDpWXgvHmOXffJ5eh1hONleOAK7M9anL3edY9bbMt+fFqwodd9q/ihWME23r483oG/
kNumQPTnozT8hbKQtdhdqcBfwSYlcPUah+hKAqSEbBNT7BWtNa2/VZs/Pi5oB4t+Tbvh4lSvF95n
QAH8/57OPar6HXqjQoN9iUCMkqGeJVo3joBzGolsCQN9pjj9K2zNEkxjRXDJr6jYV/s94lJnfh/2
/92dgcVUxhuNUkYwmzViA7dYLibBzCKyESJql1plAltgis1XuSl3WjsmomNyMwiTD9z37j8rJ557
jth0vNEpYN81BwuHBNoIzpITNMYQ21fNHFz7wlGHpzclqapGv1lCLoztTZ/gptqxw4oQlCq01b6V
YJFZjf1AWNHg2gBKoW2Zi0yoaN4ExvPUYPXdh8sNWN99KPmzlevQ9f2CPwwDdwj9MbbxsbGND5wV
bxDszRECVjDoN6whMuAwiDbA2bNEt696v+EC4GH4viR3XYOdPzyJ+yII/PH5+OWMODgErF0k0QUD
piYQN1xhay04D/CjKErB+XULv2FjyQVZFWP4IKZ22e7l29Ms0skHQApLpRFOkIblfB9vTeMU5WAb
MsYM+Hp6CQI+X6cg4GBMhYAz9s8POQswOZsZIQv7ITz8fI1uUZpFuOqOagm3i1uhUhBSLnzNYpX5
/lJUNAJ8OMX1wqfjff/U//zwub8//jnDJsMrAu66CQprT4gCTRY0nB8WYiOUJJpakDdxQUh9uYIi
WQmZS/BgFwf7u/749YCgNnOIPRk52ADgdhuP3UNM4kAYcPBw+A1YdATU7FWRtHHxrc7x/LAk2uga
0XYJCNF3ODbo74/wnzjNYaRd0VMxN00GqQZFZTGQBhZCA1ZgaiJIG6aF4tpch09bbLQpWGbvFOyo
NVSSlfZO5aL00q11HwM696e61fEvjEmhiLcgMFXA5iIiwSoLjDWEGeMYuPwDUv5VZg5ssi364WFB
/K6iuWQuWtejB9J9mqLERsshH4bZcwGeLNqMWEtl0BOXoEgVw9FCgm7Eq2erlVR0pEJFN8WQwvt/
4BTEswY/xVKTZMFjG4znSoE7ZHnjaatwvIc0XGnpqf0XY6lFEmhBSMHEXq2VjNwf+tWx3j12nzKW
Gk4lIeN0knwKKJ5kYwYgL67gywUpjkE/6rkJ9qrI8PW9SydCtk78+LhgsuPraJ/s4MD0+xGm8LHv
Hv/4dq7N51ye65YCkSmCPSkRxRUR98CYB/sGTowRxvFAN5DVF6sWJB3WnfpW9t2qau7lcHx49zwm
dBz+1yyBREcHMLt/mrRW+gCOERjq3CrWGBVCQxxFtDJHuLl8qOaLb/iyszfmzIByXstGRdnSdwo4
c++nHlHl+scRXu6czNUUPXMCIpV5CQId1QwPecIX/IMIqpOCC0PjdYBllb02BEzlzZI7satwJ5bl
ZT/s7n99fPitGJ7EogGaHaalMF7rPXAT4M7TkCIJlrRGXFUef1p7o/R3fLqguq9Qfbe82Ptd9/nl
W4EYDPajGOEgcuaBE9EiQoK1FK1k2zbgodjGJyMDl14YcpWU94ud5hwMzwr6GVubLfjh8kxlExyR
xDLNUucSeoXo4wxUrEBMB2Yx74DNcpzTlgVqePx/2/XDswWprEIqnxTB7TfET61WdakEpoAj6C2h
CjVgbBr4vhtPwJ8SbaTe/1VwLEsqSxbXXev5w1VIuXvY5cwV3uhhDhTY8UY730TGMRYiQT1Y6+Ef
nAr4ljB9+Ip6gDW3bAN4VNBpKj6TMntz14/W/sPXb49YIn+OM+XmQzDKkmA0NpQi2L4AAeSwPJL6
1oOlSxwnC99jtVJJx35fo+OwakidNwlNc0VYLi/KUj22XsdkG/D+EeMYJ03g3D5ClTKGpUTSZRyb
9QYFnft+7ZyoTtOFGvqxf8QGwt19189xY05ijugYTORw4XIfB2JmwhVD6LUgKPfOBHZVvKuyzUZc
fP3iTckBq7G17HY4T76c6tPQxWgZ6K6ompQc1hOBWesTVY1NkYM/7QW5TgWdV39t7uaC9q5CuzWn
KBgcuocvv72z56ER6DuDPwaGimmoxe52UPeg/UFmE8/AVQPT16dFhL1cpqRgRyoU7PbrGPvt7v6Q
bZGVmyOZVorhsEBsDuVY9+3AIMSAIoGbFVnbmisrcsZNNuPr4/OChb5be/0qT1IqWEC8s0P/nMu6
nrqcFRqCKEOhVmsUVYmA6iMuIPoKGuomABOqVTFSF65zNjFDF0/bbGd7Vq/dlNTXWFp1kg8WY/aa
8C/8aUbwEPw3MgV+skjcN0QxjxYWCmRgKiAWoIiERPE6Ck5e+4LDho9L6k1FMN/tl8GseBymkT/+
cTtLdWREWzmmOQjD0VIMEZqwJQaBYyhiI0mck9JSDUr/7dyNNT0bP93qvZL7fY37Q2VAFtZk7I73
1dBBwkIPDXYNDTgX0Efwt9HCCbrVYIp5AQ7JlXdq2mbzVk1vzBmBzdf6Aj5cYj88jVf2FFXD4umx
l90p4+FXa7w26PsSCd6UQ83R5ikJNvmLSAvFygvS+gppOCFmX7YjFieLDfFgNMW8BtlO4SIkBFUX
QTQGq4Va8P0Q248G+/b53zM1W62JtfOkSeU8adJPHQQ/ffhxHXZQwbYq4CRXlhByqVWNa72Br144
LinxVLu3DDvMiCiI52sAaPjQ0pNt9GmIvjW7p/spKipkxurI7YfW0NgKglAyoJW5SrrxrQV3NxiH
5psKcVGIul6xIKgyKRI/XJZ4/P6tezf+GuBx7X7tv+Yh3WczKGLZsVOxaSPqPExQehlt03LuuAc9
Qr18BbFtsfpWkGPx2oKbQ4UbNvWR7f/MI5HOadYMl9iCSJWmCQQL8g32NMB1aKjGoE4InotFmLdY
pdhfVRKpWtkp3vznOdatMHs0BFl4C84xS40wOHWBGQ3mFsFBk6YlIgqiXSgJ+LMW7NaqYrposJ4m
bKBvXWVclRSRwp5tA4oF+xFAnRjbMhy9qhlL4PyaupU9LVcS0VXOk16lksc2j2lO7/wohRStMUpg
7hULmikcJYJJKjD6rXAo7ulrhV7F4ps1X8VbBRu7ig+jdx1ZsBGPT5/d4/74/Dj1duohDZVDndIS
Bt+nxGlNnEkJrjgYVCm2UXopOXmlw3ux+pb2LV4quNjXNNZe1uq3cmk0/gom9xYMBVxgWzDhwHIN
HhH4kvJg0sYWHEVhBVwaJezr0Ex55W1zKT8uqZaVS9xxVYENyo3f9XJyTYKLAltAkvFYFQ1erWAE
R4q1FMy/wDi5DijuFZi4gvauq9G+apyHs+deEBxwKHBUAxqGsszTNjUIZASnHcV6C2KBee80yHfQ
xVcFzMbFN089PiyI7tftrfjhZNi8/7Ds4ohtMjQgZotMaI2B3LJR8iYxZb2GM69eieJf38Uxbb4g
uauR3FUdgpf74/PTEED+eD+E8cvosfGSwbedWL6nDk85M6BTQXdpFjWR7PXoMa58IXSMjxccVE5K
z89jUfBu/LBA0R1nVkpFgKrkG00snBTC4ViDhQMMCJuC1xEU8dvNrCypmDNh+G4t7Y3grIbwVQ6u
HHoEcHDlAC5NnfKJCqy6xCkIDP4CUwf7XRnzNmBWrb16WMfr4ytXr92UHPAaWysA/OVMiKG2EoHz
Bi0w6AHlHcgbSxoQR8CaBDPb6ITgC3DZFU2JXDfWt7rdldMqlh61EWJfYXGlpxF4+AWu6g8Ph/7L
2Go3xYpMoMYJsEBxqgoPHn+yQBqN/gjYDZo4eg1fyz22IZDnb5Xc3FV+ME1rkPpjrT49pfK4UvBX
LuTRmlHvUE1TgrN5GPhnHORCkOAFSSwxd/5VlXGhPmp6fFOSuQ4vG3u39N0K130IxJ9KebnKUYLh
j5x58S4Fm3PTCg9cbDwFb87oaEClq6gEebswwZmWS0mD1QG0d5UDuCPdIkoMZk3Xn5vip4rP1nIK
hw30TovFGZ7yxiWeGgc2iVQpoSa65EvP1r0pKThUyKLmJJY//z6Dw1gBUIB3b6mzjUk4O91GPoSX
BPMEe/zaQOudWOdVC2L2ah3KhQ+XoZMvD78e75+mnOJ0Qa1nSSaLGGd5sh58PV5b00TmldIeDsd1
M0zy+q+egzkVG4mW2Rsln9ZW+LST2/bTDuys+/M5GK2Q1EpqSGSYuMhxVhCsCeRsSFwyn8FA+BtZ
ISUFC+LXpojpelVBRH05ZhyoUepkbGWKkVUF55agqUqDBu9LhUYmqYUGJ98zd63a+/hhW+x8LMrr
TK1ezRzY0r354eXL8/H54aX7tMoiY2eQOCETjjNqmUyO4WhwzFTjwC0GnnSSCOdKmSAuKnddxnd7
2yL1u3ytYPFgKirh0E89le6XNARyp5Kv8Q7DjY0ebBBhCfoNYGVZZhAIk7ZctaqVMf6LWDzFySrp
KFmo1Mebw90SInCcq/X0x/3zp75IG+FUrfFHGv5AJUejI1glL1vM8DDw6RCQoJE2eoblaUm9/YSD
wR65XVO4Nlqml+ZfhWUVe9+ylb0/ywgPGd9saOL/N/4nH8JoRhjKJIrnhDO6JVOgHIXM2Bs4CjZE
/ZcAigzPFpweKpyeR5y8//7jckBi1E5adF1anmcBIYAyghEyQwlV3trg32qy7cf1MbVsPZzZWk70
4bCcR/mlR2icuYrySbfRY4m9ZCgyUrYmRdMi+D+n4OY4e3Xzesbd2e5dx8c3JY2mQrg+bLY9fPhb
rgJj78hocGmLYbQ8xU0SmwdUWpz7w6lHQQ7SHC6Y0w6OlH4F6y6vvdUxsCjqAiL7CuW7s/E0Zgpo
JQvhTCQBm7uYR7Od5q48xCX3xAjNwUZUC0yUxWoFJYKuzTgruFkPI/3S//KjS2fRhDHUnNwajSf4
ghS4rhYD8+AmxRaBURyYrsL6gPhM5Lri0NNWF04CPC2YqBUC2j2Wt676xN0v4buIcnVo9sV5RO8G
HAbhXPI0YKUCzmkk4OG5gM2DRKo84JWIcHVFKO5yIcWIj0sOusrPsO+6ZW6q744Yp5iDTHHmqTNB
NTHkIJ8AK9EEOMhwJb3QgbfKX8xKzddcEFURZfsVwMmEODQbNMBD0BRFmsUacNrSxjiMUQfwoWlq
ueH6ylDYNthQBWoIqFtbDbaT9BJk+d9uLw1eYTrAFQMvUhvE9jMRTrQBWReD9Eob0D1RvZ0zdqZl
o3fhtpZTAw5Vhe3VSLqa6nc/34KS1Rjw4FbkqjmrtW1RIRGNpbHBBazxDU1SxgdPmQP/46+baAkP
Sl7Xo+vww0l2YnHTEXT7f50nEassNykOUITjmCQG3QzIehzx2WivOcKCJ3CoNmphFwsW5BzWgwnh
QzEV0IFiLtW9JlFSkCgNEViYIXBkXqIUPN8UmLRGMvNmg+xr9Apeo3c1SA5dq7D79vyCMYqh92gA
+XUBvkYC+hEnuTTcMSwxErppTXIx/bO1a2luFAfCd36FLlOVVG1cSIiXq3LA2HF5bMezCc7s7oUi
BnupsSFl8Ezl30+3eFg4gGcfHBIM+tQtqdXo1d3c1TXT+j8sj2QOegKSlykuytgy2qw8JMiGhPUw
MD2iNtXLs3/iRjjApTDAYfzuwcI4UMKvp2pMhFWSoeN3gf/SBLxBqGuMICVpFkZvazCjbTtFilp0
1sUTnbuODXMFR4ePhKa6OoxxoBAwWMCFJhs981xVYFfiFTWSNLm3eQv39lbqrYc0cRsH2EGXmfUR
dhvnoQzXiPiI424iv8PwEXisyaIOtbAMXd32IucmYy27rXa4ea2OIeBZ/Ph7dDav0jTc8BUHX13o
8w5Dd0F4GMEx0CQcxjy6JuJrj0zz8sDlRWYyIwFr8VQRwPD7w9onFqfYdZKNivjIMkwNPrCagTGI
HybszhprKoxdTMfVx/zBGv2ivW6Vf58zg8u9p4DTj+2LDyv1FyXRcffeWAWkdTB11eE2dXHhhKNh
/8NYR6s5tHJx0MaeGR+8bXzIrslMy9wr4Ny+WJM8BPt9Wu+lG2bFjm5y6OcjDFhGUTNDd7FwYZLr
BqMw0DYNs/d8j5yvouDGtAhsvkzDeFttnDyfDgdogCHw7ULyjByCMCKv7wQ6TnQkb8cUvWDDUCQP
jrtIeMfL/46z6sVQlDcPsm/+Nj36b3E4JIU/ryKUsr+Bv3k0JKr8MItyP8vr503C17JX/1v28EMq
FdSAoId2SXEStdHTmMX+YZGUlyXBONdy/WKQw1Wyfye4soRv0i2pv45D4qV5sL/XKB1YS3KMsjiM
kvxend+on25J9gONzkI/PeU+sHVKRMMCsbBEYDzMT7fK12OcB6/7CDJA4nW2MCGakh/wMo+SKs8e
GtUjmQ5mUVIhotz918vsyVs7C7h7mkxnq0eilP+9P79MumHPs7/EW3e1fvTITZImd5s02EfZJgpv
iXJ/vjoyqN9WN4qzyePv6Eneg06K4ttywVTKmtc/iOJOSSy2dfouZqgXmEy4rSqgWSuGcl5jOGBw
7pVAeiEQ7ZdmqWferAKznpX8iVjIbbzpRoM3GYPRFlp5k8qjEWVc+tQElZ9Atz8JHi9KxWHSupTo
fH4mn2ce2aFWRKkBbHhBizIZw7swN4XzWWx1KLVtNOhUV5WGQHcLwhAtCAgwjSfQJdG9VebCDzdx
8AlZJZuOdrXk4i+dxWLl9goApRp21pIrVmN2p+AYkrcu+dFYTccETHRAN5xesCOMs05STG7OL4X6
ItCsb1lEZsk2vSrSz78v4jwquNqAsmsXAdbEeI47J9O18zTurATdGNC6Dihg8mDz7YpyoOaAyZiX
pS9qzvF6VAPhZ/HUifI1esW1s6Vo5i461pkOV4ni+2PHc/p5Y7TGMCYws6UznfSD9Ga9+f5i9jif
jEGsuxvUHhjL+gdivMkfXn+1Wayua8YEZv04c1fjXu50vSE7B6HlO5VAIdfGQKt5Axkt9dqhENUO
kIyh/05VeytPfDL6a2FgTos7g/IS8xs5gIbKGgqhUASiX4OMVnUtMMpPUEsDBBQAAgAIAPWQLkr8
MT65sEEAAEsPAQAtABwAaHR0cC90ZXN0cy9hcHBjYWNoZS90b3AtZnJhbWUtMS1jcmFzaC1sb2cu
dHh0VVQJAANu2XpYEdV6WHV4CwABBPUBAAAEFAAAAOxd7XObSJP/fPwVfLjakpMgzxsMqHzZkpCU
9a3fypKze7W1RSEY2TyRQAvIsZ8P97dfz6AXQJJjktTVplauVCwL6P51T/dvumeQuEmTQGRZR6/+
BMm87S8WM9H+TUx+jXL5y03iXMR5uy8exSxZzOG1/gfm2PxTu/Hzh7oI+Dn9mMyWc5Gdfry+uLsc
nL45XUmbpv5cfE7ST6cfRZpFSZyddk9/v3FHIn2MAM/pS/qfFsHp6nV2eukH16PTV8LVzkP4P5pG
Iu18hbXaCmzdUguxt3oL/m/jNnt7orlJKPTx80JUT/zdtgyL6a0rP48exQk4LZUuvKmNwM8//wxu
/VO7y0Sqn/frykyENa3v5+J0HM1rGgjC3EDYwEzHvGPCP9K2MNUNZCOkXY/0fQaAB3U49LuOURvj
tqW3sPkBE0xOtFuxSNJ85yqMtW6cxM/zZJnpd3cljAMbYdch2Oh1CTW43aPGwHF6BuEYcQzw+qal
aZpErnc/+5+EPoriQOi9JMk74Ef40TMRJHGYadroOcvFXD+HcbhPo/xZeioXQa6giNifzESoaW7q
Zw8i1McPqfDDDRKk6/0oW/h58KD/tRRL8NR2lOd+FBu5ukDTBk+BWEih1SEb/O56vW7f67ruYDTS
W6PzD6PBh48npfPlOG/G7dfB7ZV3fvWxe3EOF/X7t/IqP9fRE6r8UFSScAUGVTS617c3o4F3dT0+
H/6Ppn281G/FvcwP/Ur4KQijqKMZxntdk1d43njw+3gn7VaaMMLEx/DCKL9BpY//kKfZv/6pp8bT
afr5SR9d/pd7/dvfMGO1LpwUBb5y12ghAsjeAGJimqRz9WZHc2+7o1/Orz7o48Fo3NFPQWzgBw/i
NEmjexjoUMxELtoP+XymaR9mycSf6ePUl2G3nE4hyVopKEwzoQcPaRIns+QeFM7WgXjS0bDNmMUZ
Q5xCihDMmO4Or0Qu/bHj/f8oRpxPp1N7ysQ0sKf62L2BaIljGEB4fzK1CPJNGeu5n+ZRfK+PRhd6
LO6TPFJG1TUSYr5eo7BM56BG8PtCuUOfQrJg650uUiBDVNfI0KttNHkwpfSgRvAtsBxu71VEEDfR
t5oGvGHZO6bZ7w5otF+v8ZBpK40vmwZh4rzetNAhk4OKVJwA29UUWBx9q4JyIO4qsE367XGHQ39n
cPD+weEmQea3x53S+OLg2JRY1rf7Tina5zvCGXL4axVYfOIASwyeJNVF+ewZuCdXvOAOwXPJp0iA
liT17+E3vA2OrHEE6GMmebW+CTFDvE/fQWVaMb/CvLqacDudV06wqF5guUkq9mFTMxQ1Hd9Hlr46
r9Mp8b8rWf2XJMs7HcBbP9D6bTzsdG7F9CZPzw5e/v6nn070tzpUOfsEt4PFokNt60TDTVFTBIXW
QbUf0mS56HTCKPOzLAmA5UU/CZZyirtI/FCkrc2l1fcVWsJNvbXMoxlUQR1umScaaQrPDqn4klP/
d9/bLQmAWTX9tJl+m3IHhfoBG0FzzRlKJ3EODNJDxwQIbE/hrh+EgBm1kUX04rxOB37vgNh5T+GA
YrpVfRsA2FAdm8184NhWQIKtD4ayolrrDkUO5g3TZF50BUozsUF16TQVncRkoNtqqhthf/qibvch
moWgutBsmns0MwqJwZtqZk7ID2iGLH5dFryRoKiziwlzBKFgN8Vkcsc5gClP/TiLZMCNEzeZz6Mc
uH2LS0VheAPkqDARmOJbBefIqEAnmtPYP8HBkQmUfmh7HiNZcvszeUANEMV7neFAaGDUMDUd5liH
U3MaxZHke/k3zAatMFlC46USwyY7maFgMBtQ4IYoQl+8QBBz/3miTB3MF/mzcoFD6qSISVOdoekc
1qnm9ZXZlzCh3YosWaaBUNpNqIz2G08lEtowCEgY2geDIIapean+7k5zkV75j9G9osSbBMjxeRuc
a4S3AmbkLAcIcZb/9K4kGLqmUQ6Tz5t3+iRJZqVD3dks+bwVPU7O40d/FoV3txdqsKlJNKDCBmYx
aCL4tDSoBVzXn80mfvAJLINXLQlDzchYb02XsWrv/VkHm1TGstlQIYF+d0fhgwg+lT35BS8Wf3cV
klWcAw9XwUOyMw74rGZzEKMCEqM0B5VG2p1FEEqqRlBVVR963VAUamHctngLZFu89SO7w94oLrIc
ajvPw5D6q+E4e0yiUD/goPdFgVIbPe5Q8A5vOHrYMe3DoydfNI/9WpjX5pWv9kHjVFs5Chqcmqfk
dI7tpnxhiUN8MYPfv0X5wytn1nd7xMiFsAOmvJYvCCf2PkOdhobiiQheMLS1e6g6IiqBMUxwcpaW
lSPMTQQ1y1o+xb5fzlo5/Rf6V8pa64MSAFRwAAUoJithoMBLrdWlxUSBTSAQgptBcSYmuFDF4vmN
2+k8+HE4E5ciy0Du2ep3VgJZ8si7ugnv9E1QVy17c/IFg963lHagqET2KDuS33y9aBU84JbWL2XT
JN9CcUVII3dRCpyCC0+tBN2KQESPIr30F1uqXR0rjJItfrHKDHZVzCxiCeb9XVnFkBIgPUKbjaiY
OrgaXKv9AEAXrjQ0wCezbitEwbKIA7BYI1hETJwJ1WsKdz22JcplHEGUeQtovsugylwaiqm/nOVe
sSBbOe29/n6VqXprLuZJ+twhlmw3iNkQt5C5ehD3dbxxptJHrJI+U+qrzOj/7T/6oyCNFvmWp8r6
iLAcfwo1pFp6WMYXSQJhtRCpXJ7+LUk/FVqsklXMlKPBG2rxJ4i8oEUmW9EjQaWyOsMdFqsZUl1l
epFKhskyDotF9Z3lIYdNbS6w7nnu8Pbu6uL6+sY7H3lu9+Li/OqDd3039sbXXtcbXd/dugPk3Qxu
h9e3l97w7sodn19feZ60mWvEaaY1BJ4NCq2FBf1kpObYDKmC29IoaiqR0WlZIvxSnQPXKG4oyhLU
1suCNpsRkHQOYKtQ0y/nY5jzJ8nTgSW4AKHAoaYOctxlKjv+waOak5PFeXwp9w9BKjU1SptK5dZU
X9HGlXgqxMo+NpGWM0o0ypqKNKFB9XqzJPh0BwX0bCP2UmYUNEcXUZYXqGXdMYxmwOegjGONVrK3
u1gcyl6lixM/CKeW7vVvRhslMpaQBQNmNRVFIJeNP65G5R0kL66DX/2RfQIGA+PkzmonUsYAXxUL
m39Kz5lMo7whBBTaaAdCuoylQMuGobCbCbR8atl6RZxsTBVxcghBSLhZNHlaBO3wGV7oL60CO9ya
AN0y3YPzvWTyr8CbF7K4Y2oMNRPlTycToUtJKyHMYRrDL26t73C3T3iA9LUAmOtb2w1GaWd7Pu9g
CmUAIwodIAsPwCv7TZgUQjgs1umlrzaL2bijVqdBQKb2mj1oNGIxq8qsijKZKQhQilxk/0udn4p8
maoxQGrVeCttUayAV8SVpdkWdUxu6+sTvc9/FS/UzGRTtcrbSByn4HNlZ0UW3VhMXly2lz5dHTTm
fgyzZPoVDoJZXv+kdl+8v5Ks4pi19D2jVo4nFAgLW6burc/35vepF8WPySdFjNhau+b1As0wCGsC
Nw4yycZB9B8XEuwfZ7H5j7PY6pTT/GqkJr3xdn+uiStYOOUEWFomUXbv5am/2OeF1wii0GKsBakS
r7av9YqyzMbQ2ZQqvM10ETzcJIruCSa17arXFI6mCHYLR0yhCGX6d64cq/tIX6wCGCKhA9xYGUW1
T+WobaFmgeg44TYQJ0n4rMzEapunoSRoYzeSNnOtZavdmYbhbGK9LmgbzPxr0hcjQOdlYv7Zj3Iv
i+5jf7YvbIOXZxLbx4yGaKrHfpxkMyFU7DvOOmeDt2/beH9NUpHCkYMIKvXG+UOUrSakTkcJ9qC7
K/XXxb1J0MkuUxVqZ7Mkvtflf+UWWx07w7N3Ot7ccTaD5rq0EsXNWjp8uf20AyEm+mTuz6AJ6HR+
EXLxJAt8iL99awCyUzjbnC1XDqPgcpmLp/c/lbF+jUWz9UKB3KD0vLmU6k38THSww+t7wq8xLAT6
qBkGrgqKnmy0NlFtUNh1jRTXN4FfoVGYCG81drPnOBhD93FWAbFePqshe3PSOnkvY0WGyYpPir0w
rrc2otoPHUzM+h7xa6AxFH4XaIM4T59vkijOW98irthhdWpbzq8xxJqESu6bUiB5q/TyFmny9HxW
Sr0liF2t74Peb0P87psc+AbCe7uY49Dy4hQ/ac6kB+nd+X70jtH3pXe7Vqvc3V5sV/KKtf9jzfL3
qln23XZWvYNuwnwLipQ/asPZKsbzRPfS1X6afEOtb6pFF3BDlcXqsOuamGMTYUnvXo2KePKKGCsW
JSHyvqayOZBE9vdLIuc710gOJNF6a0wHtkxmsyi+P+bN3yxvviTQxLaDsV5fv+YN7/9izDdNq3Qn
xiYiVp+a6ERxlEf+LPq3KJcVRN7kUjsXvC3X4Ux60nhe5qG93sXYqRM2kx7m+/aN7caqJsG0UPU5
n44PazNrU6zz3dih8bz4whSLvy87YPSPWwHBWDKijIfuMk/kR0eCr1z/MGk4scARC1nePXjBo+wo
v9ILvrxLYuMF+XETbyWNW7xGkK8IeuETXhhZ2AYTbRgVG6B5NBfhbyC7uE1atWPQjZXu5pNbr8Vl
kOs3BaRse0N0057R4nSd7Dd++kluEyV5p7OA1xtYUAA/n88XM5WPRYsqbzGR14yCZCHCC38+Cf0z
ef+MDuXx9i6bnVOKmrp+ivygmboX5jn251Hgys5U3txSaoeJBYna2kIstswRa9xM2hMn5Ja616dQ
vjGzJ7vFjhxYtX92po5eAJT3rc3LBoixWQX80LG/ohFltsBhpT1ak+769dm+dFndFrkFLtKtPdLQ
zVJDp/OfHip38qrd8fMk/R6C36/bKNl1QhykUnDrpNhvt+Wd41XxxR3MiDZvi79h1uL/X7PWP6Ix
xORI4UcKP1L4kcKPFP6jUjg9UviRwo8UfqTwI4X/qBTOjhR+pPAjhR8p/EjhPyqFm0cKP1L4kcKP
FH6k8B+Vwq0jhR8p/EjhRwo/UviPSuH8SOFHCj9S+JHCjxT+o1K4faTwI4UfKfxI4UcK/1Ep3Kl8
3MwdjmSU5O1FGj36ufiK2+QRLz5pPBNBicEbfejDZKavPpFSgLksvopDEThpfm/8wWGh329Y2Hf+
/BLSg9VzPT4Db8lHp6we8KGrLyLUWxYzJlF+0tF0PfWfOjuP2UAwcOnk0IHg0IGwfACjYCKm8EIq
CaMDl2SbA9I2UzimE06U9sXuAVtdsecAl0r01N6jRCZ86lRxWXYglHaM9gGWB3BZFJ74bGIRR1qC
yQFLMK3K4pbFuTrADikxd66wpspd0aJyZP217no6ndW0A0ch+d1Z6R5YVMrSLlYP5HBv7oqHpWBb
G6RpkqonsKyen7K5lGlj+TG1q+V8sn7MD2aapvWi2E+f9fO5+oZEbf2slKfNY1J0Q6++SWB0Xv4G
o5Z69I+hb579o5/ZXbs/5MQ0XNbFBh06ptEd9l2DIeYM4T3btdD7v99zVqqWi33uENIdb7dfLjh6
iOarFG8hsJx1TTYY2I5h23bXoA4fGjazmdFz+j2bs77ZddwDlu9IrOKZTHbxWDSYTvd91+KeMSEu
xaxPqGHR7tCglNhGj5gDo9ezh0C2/W6PWE3HpDhWwRmGZBfndCIfFrGL80Lc+8HzPrTIIZS4HBnY
talBSd82bKdrGT2TctMdcqiB8WG0hdyXMBdnlJET+NlBTqaE1jxcKzb2YHcRspHDTYPYFLAP+szo
gmiDuQwNzO5wQNDeGKhK3o++ek4ZPzWZvYOfOSHbjZBDwJ0utrFlQcj2Wd+g1oBAGPccg/a61O0C
rTlDfsDphxGvDpahBkHBthWoQUDZXq4Ziyy/XcaxSNvn8b+goBBhbym/FlVv4bYUgmXemRTbQ+Ia
VpcRyDuMIOVc2xhgxCkZENrng8PxslVR1dCeqF91Pnn5oqqlxbOmqpaG2J5Ouf4WcnzlHSlrtFzI
J41V2MQaDAeUMqOPBsygjFsGMGvXGJj9vmubJuGot8+qFwSX0EF4hDukgpEZhhJd+et4LvuX44te
msT/Fv1UfturdD0jbSiXwf1t1iaS9G2H8oHVNWzcQwZF3DGcXp8bmAwgBYau0+11AWzxRLPTi2iS
wlR0OngCz65iZUfNAf/vnqgV6GUpAZwYsq1V6zdDBLM/WCW/L09vUQu1SQEanEqHruG6CFgRu67R
dV1mcLNrI9MdMIT7AHqZpdKpp/Lqki6bUUbruuBNy6x5cPTgp/LRMi0mvUbbFlyxfgko+v0+sTGG
6B24PWC7ISTeYIANy+kNHehDejBl7rrupijPh+usy05XavYn4upgBT5DZBc+/NTgX4ocSo+WaSng
8heApsjENscY2ALIDWjZMbpdDDMfQn3q2vbAcugu6BJaJXU/VnWoitRCu0hN7CikMDSPl1G2/t4i
AErbJkDsDS1MhrxvDLu0J+sQoLbegANi3HN7BA9c13wRYjcIoIeBFvgAuZVOfRQBCNh/WhWfVjXB
32dXqKhQdhOLKA6X88XaNOzwNlYTJOcmt4cGGqoSi0GNga0BjEN/2CeuSVzXLgXujqQKCE6sXRBc
0nHh3Kdslm++0qmFWZsBAk7cPna7zMDDnpwtODG6fXcADAWZzhl0RE63iqAspqLfJuaufocFtfng
wl/GwcO6CtRbnNht+WRHvXghE2kIRYLjUgNZXcCErP8j7tqW20iO7Du/RBGOgut+eazrWGt5RzOy
J/bNAYCAhjEUqSUpr+Wv35MNotE3gIw1YzZiguSgW1WZ1ZWZ52RmoSGT5pEZXouQGfEtx4sPnHzm
cYIXH/lYnuXbx/dcjRW8nmu9XYuJ1gOe/M6uAnlcaQI9ABFDUZEzngR8V1VwvbYpJjS4pTURwUNe
VPY08pLseXD9aizigtPYz6Do4277rXtl5TvXhWnjlHIrcryQvcpqjIIpSg9vq2QAtFMJP5JIwBpO
BX3ZeXx6Hv2Mr3u+OpQbW2wut+Fmijroi2V3v8R+LriTFV8pSSp0f5BjEc4JBfScBQJeJ34IObBc
Iq++yojg/BqH/TzXshLPF0c6CO7nOgi+Plrqf39bP6zpDR+7o7V6AhK8wR5Dw1bJICMqgpolFSur
2iVlvC2BD73FIYXxx4XxJsJsloTZH31X9wbKoxyOHHIASI2xBibhIpgykCNU8hkyuqwtorF2i3IM
hhqLENSCCGHqOd7/2Hnyv3SpPXpx5hA7mtC9ACizGhsWx2XHolKGWVlCNKVmEexrHuZskuXHOrtt
otD1kkK7iXF9RSgfkLLVR/p/KMU7raTtAnT1pjmeWXGF0CMARSJWmkUzHMEwYLdedobrh82ybxi5
wY9jWYZ3dZcm+u0X9KM0w2EDd5nBT3m4c4QIXTSXygeoEqFFJX+XwKsiuGxLtVQuMp7UZX1+/Lq7
++HDGT/d3X4DFL0kxFiFtV1QYW+nmO/7l819/43XBJjJg3iuKXjiuaTmrCHhQbCaqMybDNWSbL7C
M/osX4X4hpOc8YXDW0aKgNvOFSHC+2y/XwiF/Z0KXI9P6xMEgfbwg/qA+kutUQjpmIOp4KE0irgJ
PyqiVE74ML3KE/7w8W/5/svXG6CtgRrnhBirofmCGpoft9RtF4J7P2TNyvCVJ/APmyiWG2aEgIFY
LbChwHxrbkokeo2z4YveaDjiSBRrt3NRrFtP3NE9NuJnAGoBBnBwQ90fEMnKEFwClE65gMdGB5st
wrJSHVYyNrhJ+X/e44drI4Hdkjm6zea4drsjPeuXjxaulWBkoXRMqpmpjMAduvdciyJAY0w2uo6h
32SckQwhLISRzdoet2G7f7z9+/WhbNf7BLuSZEemUWJNAuEXDYQPsWBHSrBcEexboORLGEsyH+1q
PK+bC7OdZVEO3PqfcLkIYt0jBJxbCbKIWFL1yhgG0muYUnh60QLkFOyvYgVIZdYvYlAae/khHq9e
jQWcA2iz28njEt5sv20pQxN7hmTECv/REsKrhiS0Zcpr8LiiASMzfrSqgiimwIzdeAknow0lsdzN
+Yw9YoLT+t3c/XZSr4tbBGylIIEEHCMsEAI1B99ok4c1KMewq3hsSiel/FvErfdDGUYR+u63kU5C
8AWdKImzGVZ8ru8eH697JykNYV3SB44ESxw8cCIlRoTNLMFEmFEwNWB1IMmy6Gbm407ECgti6amz
+YHe3K4PuKDzMUkHrhTYgkqqUo46grg54B3AL1tDDELzi+uLEZcXDhfGEm6WJNy7o3f54UNXieiN
WnbUFhyggdoouGUOahs4DAiAG6zdqwbazmHYbxPnR/OPJNdqQXJtzHRtd3e7wxf3rm8/Pb8v+N3B
H0gVOm189vQWbM+0DIQusa9DBn7R1uWgHKJ+Cq8KkPOpzjyE+Y1j1cwcvlhjegTW7u+ePq4fHhGI
j8/F+C7jI62LIVbNtFDYzQj7eCZOIUK1koM11rd2OZ1yemfHq0l2/OuZzXZ8+9zjHxeEHmkcvJ5r
HPy25yn3X7/vgTxO+9CRHyca7VJmTQHUKI0fKVk8x2xNK5y+o00uc5XRcBNJ5ujebswUOna78v2P
Qw+pVuqAFLTlnXDKFkMpQl0VgkwULGiuWMkWrNrzIP3lzNZsipEDPFwcib7ZLTjBLTfHbfPx7vMp
QdTJKOFJnC6caW3gbGIJzAtgLEAuCTcjsHX+DRlHj7+ffCiyE9dzI3aSq6PI2z/8Yb25OUqtuOsQ
bZCytgQz5TXAPQqTmJeOs+pFzFppJzMfx8PhOCMBpJ1vPLfzs/z64evuj9kdzfVK0w5ErBOi2cpK
8WDLtJQ+YwdmG5KU3FTdJacv2tuZ2l1+vnY1lmy3IG7gRzvJv/zl08fbb59v7ia1imfHDbisogyR
FcotqAAO7SsvzIZsHLyDTpa/EUFblmSsTRBL2qw7JHeKrnf3Tzf77ydXh5jNO22K9qlUpRlvDtpo
sLPIWwMMcR7QKHiX86WwPRx4JNhezJfZa7OdJd2vb9bHF1Md0xVOiZUwK8lpf1jYlGrJsYTfTHHA
Nx8DrEwrBPgmdW72hQz8aYpzifjTHVdjea8XlPCbiRLDfOr7u6fdA71y4J3UfkX5tO43KVJBGxrH
xnFNUIz0QCQViK8Fr1LRNfv0mhi5NNt5FD29c6yfnzM5UJXdfnewhX+UTx+n5QbjuLSGw14bR3ws
xlNOvrFQoZv0uJrU71Vu6MW7GiuwX9BqPS1XPX7d7cBvH3bb+893N+PUAqVDsQe7bKjoDCVUE4PH
02sASFSrN8QLYTIJnl74nLWpb4HXP3VS/bwk1CjfMb1tvALbuUsGawlHr0BA4ufd55vHp4eBUzDd
No2OF/BJSlw2Rf44AsqJAL1ToJp/DVb8P+Kfsdgjra2yC1qrvsCz2LP2DihvJQ4cRpUiatOZgeGD
Z8fUEIpyl7QXudYajAmXnOFo5JFoezenrn6/3k+2ZNltvn0+pLIeSTJyH6LLxUsVtcwGMDQAXCiE
fRhclcBp3kUqG5rXZaCGMyyv+PCOsQ4bvqDDVvQA88vXPv9EQDpFnZrE8rmmYScKDDeU4pgVIYea
vKq5TSBGP8Jw4sC38xgXhJiy7YPu+f5uf/P5+UUjFFGE7sr3Hen22A+Va6yiBcLAklIKKhrWfGiJ
15xszZcLMvM5zuUjZzeOdJJqnoEJ0toJ2+7brpTg5Hy5r6LLPFoiW6q0yqLxXTnfKWVSdVVf2qFf
FpZX63mkBm/QC0HubJXOwGIA5BAFGuXKKEHqlZdMFtB+Zxoi6cslycuVuji552os7ty+QrBTJksV
d/zrdZeLORTsgpMrdUiyae4y5S6kpuqRMFTkB9iQpSSuJcfHb1dVPUpyvjOArl6N1bFLOobJc/p1
d/uV9j24FCXsuhqJKVED6TGeMkieidTO4KhTMXCTS9PN6reIXX/C1Ms30ZWxMn5JmbWflrS2pyCC
Lee7kEy/CIiXWkuqljVDfQ+JtJJFM6lg03Dl2NmvyjkM5zjDFAd3DLVYczMvVK653R0jzoebu936
Id5+3mHyU6XHyi7StlaNrqWxxoGfVOZU2tYRPj26lCjXK8vvhKQWBB0rugAo1sKII1CcvFML5uUl
ZQbpOQETKlWkZFQLpzx6xu6TmdWSa9K2ahvbJZ+1kMDG1HJJHnWMReVm/fnu/pFeR/X8pvR8e0Od
sL18XeeZ1CrZhC0jqD5lQIJB4oB3TJR4SAhZXU10EKEujzsSUco5L19L5Sc9oh/Wd58jcPn3xxsK
+c9eqftNWWKslBBSsUhtBMobhH2HLYI4YIo2INHOvDkYG4p0rt/jdMdYabWo9PYY1j5tH3a7u593
9C6Y47PQ0q402QNYRHahCKaNo5bSwFnQBlw0RQm8LbxpZfw45sNNpLlekGYjzvRw7EfRrevmMEJ2
rWsx6lYKB5ShzgIeI4PjQbSzKYUGMNa4e1Ujx0shbn7fWKHrORJaG+tOtczteuBpbLAdZavNZg6G
yUyrnpJ8CRQafseGaFSuObg4qR+NBroaz+aXRJg67mEwXOphqoRdqPpXc6XeEi2xsWWB6cHmtE3G
Jf9vRtvhHRMVFjap2eymLTIVgnMKOPjZlbx0kA6CNk+bwNvEojactZilF9gHLb4hQIj1TL9MHeuy
mXPdtbVqoku6/bZ7ur9/+pWKJPrQmUm/911bMXeywsGwBqiDZ5HhZBIYX1AqZMdB6c1lxvf+x378
c90g/Q0j6e123tiydsIOcpeDjjx5iCe+ZQVYST2YxMR1AK+I2QASW+A3kI0i9Cx1udSRt3baLEwf
+ALy7VJE73+kHXFIUWsXurYaV4LMgOHVCXLQBMgrjIwDcAUHA3Shvbgpngc/v42fbxgLv5D5W7vN
zBB//XbXHfU8TE1FZUcBxnbZ/+Ka9CYz8MdKRUgEQB8VM15aLZRBBKyvSkmNJzmjyPimsTILNTR8
ODXJv+Y87GlqplZgJAWvQYtPpxGCS5VJmROIkkjQ5TXiY9hlkXFhIuaCtblrO8kwrB9ve94mFTVi
dGYmGgnVmEiIJKqJwlJUkfqJjXO1YOUvZhf6UcciXbsFkfbimOq5/deX9cqccA8B50yntESC5zJY
NiLAMXvBeHGWKxUzz5PGhuEgo9n9ZgEXhnVffPjnl1tg3ePsMqxEl3ROsdhsCyvNEN+qnEUrBYC8
saUVIaMTk6bawThX47kWnkjYT8krVfIfj66XesR31+3mdvfh5vGJErVd1xJ+UbAURcIsXGKOGo+V
NABfMsDRFB6VjF5Ikd/OzY9lOd/TfrpnrP5+vaT+pm+sPmydDZ0Df+xhQacm6GwJxbBmgWaUgekn
xR0YCEBmlhoGZC7txuGQE5HmOeX1WqiJjdATebrtZfKKKhIkWA68xKo82KkHWfUiswjox2S00Sfr
nJX+Il0YDjySbLfAOfHh7gJ0WbXDu5cJmkuYsuAdA+3/pgblZpKLgOgpw6JVi4HFkDwrBkBLVBFc
eMNu7KM8Z258vjpSe+/meTv68PhAftt9//K5R+Py0DPmRAY5BWAkRJDBjhIAG6vBZ2dFsq0u94wN
x5oI4ZaE2B7d1Le7/7m563OyyqwIJDYLgoh9yBDSKW8R4CwTpKKWgpYSCELXPz0XYzjaWIywwBv3
cCJjHvv1dv20v3/os29O0+7s8rAhBsRKYGfnyHcqxTw1vNisovdZJzjziyni0cgT2TYLsq17W948
flnxfoW6wwlVAMFoGIinvJVxmiUsGTPFtJiyk0FO+OtgjPHc6wWj3e/sxDR+KlSjF5SWVlx2LdeV
zqRxJn3nIoWGsYKpNi8L9clxW9++WPBTWb7lpzLUaQPUOtNpw0Pfl7P+9nTfx0VPNC+EUK3gjSFU
Z7h+IKFYcmSmZq5Dsqa0NF7P0xjjqcOcJG2E7xvY/+OjnLQRuFasVIjJtdBZREdHal3j+F+RbS3Z
NineqI2gn3wkslzos9pINSUSf949bHYP94+0D44wTCTttE5wD4Yq4r5KYBpjWQVrV9LxJutlLncc
dFn449WRuGqhir9R1NKpXqgJrGr86LkU/9Wd8eHP/SZdtqWIqioHJJHZE7MQMO7q4cqjhi2VoFvL
r8GTxxmW9TleHeljFrqUN3ZzPVn+v70fpuAPSFgr2wWiGFMy0jpQETp2QM1uCTbAqrUmlehLbfo1
0g/nWNZgeMfVWODdkhb7Y/rnYffl/h+7YReS7kiUkbWpUJnQBZJbUFE42cC0sQbkuvkw6rQ9OdXp
eGNhtnN/ukH0moX72/uHT9/vtkSNw2FF6fcz03RVwrsb6tHMSbJQupqRCrjkS/Puzb1bL885Ovh8
eaTr/nruv7fyeqrrn973rRbyub7tnxuCqDFcZY1tb+nkvEaIC5lX1oRPCp684lm8SY3g/cVWjP7y
1VgTuaSem5V3QJMpKf74eLO5ue2OZR1sxIWucwfePUFFAVoOPTl18Xs4eqA0JVMIPsmXO0lG41/o
JxndN9HGL2kzZe6n7H5XxqR/MPiIPiHT8YpOadF5l6ygE501anT0KOdkk6yuvhSAX6ghnK6PdNhs
5lh6e+2nHeQ/fVs/PP3rcBQfEtOG04Sbu2p7rhHmaOm7Guj4vYVhAeIz7WxqtqhmlvphhjigH/wM
Huivj0TfyTlnupayb5T8ED/G/OdZtUYD83v6mgMLuM9UAIdPjXomuY48S++k+L36XoYSXo20UPN8
2rW6nrYZrP8xTHUfOnkF1xZur2vu1yKVwlVj9C5gPBk6UUyVewc8p71Jsb7wZOIvL4WQ4R1DFXZm
oYKAD/sKAh1O70Hw8YB7E1wl2RIrir5Iw+fEQpCRVWFTyYnzyJeJwmm0iRDXC0KYzYTDjr4k6p2i
Ri+qeWGjdztGZMSIBqlqcgkulRcWs5JMOuM5eELMPF7iCsPhR+JZOSdTO/vccTnozds9dcfmjg1c
vk9FJTrYkpxiQRb4vxIdw0MGe/AhFGu1Nllc7PobjjwWbf61BPhwN8UxuVEXZLl52G2f7rusJD94
BxG6wxGiBUNnrY2plCoLhQXhBIC4z8bGWoP2L/ZY9qO/HHLbK+6f3DTWejfHPTsn5Anv1x8mgN/L
2JyFUSVVLdxJjCxoV1lWOkrPG3B/ezPAf5z9aiyfWhK6LyZ9XX8ZpO66xGHLRYRUQE0Stk2TiY4y
Z6azVBU83TQxOQw/GGMyt1+aO/R1wk7tVTrl/qU9Jly4kAZhuzAr6AtcIlgSNWiBkdumpSsylwnr
HY82EiSsFwTZ2P7US/oQP81CQYLCwkuL/ZjgbiiTmZwpLANOeFslwpj9nULBSb6RWhu/8Gw33kzy
gqO0aP/dCwfnlRCAI2gwOA8deYRL9SlEKuJ7ZW1LkpeX0nDjoYcC7vV67mH3bvblOLn958HV0JFG
vrJdT8vzX92xkxSAyisrHG4WMJXSD+CgMppWufSx2MuBqh//nM0/Xx7IHviGz7gaPhR9YuG8362t
luAgrzFUuuKZMywxAqsLYMk86aAnFe5znjbw7fwMNT68/l/erqU5biNJ3/kr9rgXaOv9ONYDJSvC
2nGYlmZuG91o0OqVRHL58Nj+9ZtZQKNRQIHs3WH4YtMNuCqzuyrf+eWyyvVncJGe+s/H/p/ndOxJ
42dVwIyhApwag1ksDmKn8ejLUymVINwyyS/Koaz32ZJMy/dKrg79mqsDmYJgh+Pj/e7p3OgqCc2l
7HhkgxZgw0usMHQYjNKgb2XrwHuLIZjAY7L1XpZy0aty665CD5OVXtfHjFiVAXCwfCNrMzW0R3HV
gkkLWpaDdIdzajWWx6UG1Jn2TMMN8/4tnCvUUNcnMrbbY6dX5qxS2a9UN3x4s8yGvqi4OXVKuygb
GXKlGQGthkrOMBqT8EFUUQb+b4p7Sw1bqihbc6DUZBf98iGlhRrmGhx6Gx14gg7UMJyTxiRFmsS1
SGBDBjDv30gNn3cviVbrE09BxJ2IPnZ3t7+dFfHQWE+kIw4rlRi6TljMakB+NInp4KNjyrd22c06
W+Wq3IpW9jfLn/2MwpAROzCCRVElDqKEMvqOD73ylgitEwhhb7jE/hjaGJTOKaZEmIeDYOPFqCF5
mxeAQ/Lzkp39WizSPV8GBj8fD/3dy30nQQemKJYfKYlmBoVvu9UNVS64yDWthtNmDMy3qLMwf+Oq
pLerMdGdzsTzbXfOqWZoLU/BJtZN0FoOpdZeKDCJeAsmirImkXYjUdJVjsSe175DpRbWwxHRP07H
UmtUcvlwOmfBXAP7TESEagK/3qloGhUcloTrlMSLlsN52ZIopddE3dilJP7tmBvw067rh7AD9hSi
gMr/Rh0sBVgGoBYEw6IBok3jGJiPQbIWPhJR2otqHk47bAjl8elVSe0qaALX46artN2/f9jdfzl2
uSQwQ1FgqTLYPflkUgOCFRxdwp2BXzvmjiiwf2KQYL/rmF7pwJlvsF10cnpjzgJn2q5ZYGZqAnif
/jGkqxddc+AGc+/hPBBsreVSk8HjpD4Qy5PRWr8RrMmCgpJ6s1tTL+luaTPt/hlgm4fdCM2H5YAU
q93NIH0pqAwGbhBIMoMIki18/1iZaaxjjLTUiIqSm6d5/2O5wxL8b3pekC/79b3ku90eTlBxBbJO
+rd/N/nUmCGULZMXFCxP8FjAoxacN05bzPlbTVIAUW3Im7ksQ7959bXhWcHVQaztDn6QE6zD77uH
cxHYmHbkIKOTUg1DDAce0SWNhjbAighGWsLDogRstki5ueS1zfcLqQJuQLo+VYUOySIjwMvgAmgQ
GHlNjCHKEybBjHKUtI6+AkyW16x/S/lRQWd/s7YSBKHnQo//+XZ86vmkFajKsjiC1QvyTDeWOiBS
Y4eG1KFRyoIfYkM0bJHRLBa6KnbjrEKCmKyr8HO6fob/t0hRg3gFbxmlv8NIO1G68cy7hgTmiHfe
uMBLAsplSgrWTf1WsJuuUq8Xhy4Phm8rQbO3iF27UlhQi2CXw5fBsOfZIHZx25KA9fYXYJbEzaaN
09Orkrr1lRWcrJNQ37/f3f60u+1z4xcYaioL/Ay23OqcWJUSgw1gWiHiKJhXjFMBtrZjrX0L32FO
whaD5zeuSn4qJ4OLZWFNFc5rzA3Q3Cor9BBgAXaNc8ojwo3Fwr7YeBKxSdmG4BNNoOTePPE2kfMC
ytdSpQsua6yfGxG+7W5/Pc6UYbaQQxCJRApOEmiNIfER0BtsOaiRFIlhbFF/N1ul3L6zle37qZn9
O6jFx6keHC9kCxfAegRRwEAemLVoKnLVgGsmgzUtT2QRw5uvUW7eq9rmqgI1uPgtgBSDP7fJNahR
6shdQwVDwLMkG59AYLQOpRNVwhjxNr915cUFP2sLU4gbuTDPDv3j16e7+8eJF0zF5cDU8Ad6lU5Z
ouDABgKmOMff2ktjGyKUAotcMPjNL+vWzFudqMUXtpo2Vy9elVyoGmv9wqIfo00rPCxuJEZZOMoj
pYiVMehGSW6x4hn0ngQTSEiEWE8qEiouyB1sY2VZWGm/plbeLFH6z5IEr+Xfj+k4c0gJSBSSa3q4
tAycN8+x6z65HL2OcLwMD1yB/VmLs9e77nGLbdmPTws29LpvFT8UK9jG6+eHG/AXctsUiP58lIa/
UBayFrsrFfgr2KQErl7jEF1JgJSQbWKKvaK1pvW3avPHxwXtYNGvaTdcnOr1wvsMKID/3+O5R1W/
Q29UaLAvEYhRMtSzROvGEXBOI5EtYaDPFKd/ha1ZgmmsCC75FRX7ar9HXOrM793+v7szsJjKeKNR
yghms0Zs4BbLxSSYWUQ2QkTtUqtMYAtMsfkqV+VOa8dEdExuBmHygfvR/WflxHPPEZuONzoF7Lvm
YOGQQBvBWXKCxhhi+6qZg2u/cNTh6VVJqqrRb5aQC2N70xe4qXbssCIEpQpttW8lWGRWYz8QVjS4
NoBSaFvmIhMqmjeB8Tw1WP3w4eUGrB8+lPzZynXo+n7BH4aBO4T+GNv42NjGB86KNwj25ggBKxj0
G9YQGXAYRBvg7Fmi21e93/AC4GH4sSR3XYOdPzyJ+yII/Onp+O2MODgErF0k0QUDpiYQN1xhay04
D/CjKErB+XULv2FjyQVZFWP4IKZ22e75/nEW6eQDIIWl0ggnSMNyvo+3pnGKcrANGWMGfD29BAGf
r1MQcDCmQsAZ++djzgJMzmZGyMJ+CA8/X6NblGYRrrqjWsLt4laoFISUC1+zWGW+vxQVjQAfTnG9
8OV42z/2v9x97W+Pf86wyfCKgLtugsLaE6JAkwUN54eF2AgliaYW5E1cEFJfrqBIVkLmEjzYxcH+
oT9+PyCozRxiT0YONgC43cZj9xCTOBAGHDwcfgMWHQE1e1EkbVx8q3M8PyyJNrpGtF0CQvQdjg36
+wP8J05zGGlX9FTMTZNBqkFRWQykgYXQgBWYmgjShmmhuDaX4dMWG20Kltk7BTtqDZVkpb1RuSi9
dGvdp4DO/aludfwLY1Io4i0ITBWwuYhIsMoCYw1hxjgGLv+AlH+RmQObbIt+eFgQv6toLpmL1vXo
gXRfpiix0XLIh2H2XIAnizYj1lIZ9MQlKFLFcLSQoBvx6tlqJRUdqVDRTTGk8P4fOAbxrMFPsdQk
WfDYBuO5UuAOWd542ioc7yENV1p6av/FWGqRBFoQUjCxV2slI/eHfnWsdw/dl4ylhlNJyDidJJ8C
iifZmAHIiyv4ckGKY9CPem6CvSgyfHnv0omQrRM/Pi6Y7Pg62ic7ODD9foQpfOi7hz/uz7X5nMtz
3VIgMkWwJyWiuCLiHhjzYN/AiTHCOB7oBrL6YtWCpMO6U9/KvltVzT0fjnfvnsaEjsP/miWQ6OgA
ZvdPk9ZKH8AxAkOdW8Uao0JoiKOIVuYINy8fqvniG77s7I05M6Cc17JRUbb0nQIO3fu5R1S5/mGE
lzsnczVFz5yASGVegkBHNcNDnvAF/yCC6qTgwtB4GWBZZa8NAVN5s+RO7CrciWV52cfd7a8Pd78V
w5NYNECzw7QUxmu9B24C3HkaUiTBktaIi8rjT2tvlP6OTxdU9xWqb5YXe7/rvj7fF4jBYD+KEQ4i
Zx44ES0iJFhL0Uq2bQMeim18MjJw6YUhF0l5v9hpzsHwrKCfsbXZgh8uz1Q2wRFJLNMsdS6hV4g+
zkDFCsR0YBbzDtgsxzltWaCGx/+3XT88W5DKKqTySRFc3yN+arWqSyUwBRxBbwlVqAFj08D33XgC
/pRoI/X+r4JjWVJZsrjuWs8frkLK3d0uZ67wRg9zoMCON9r5JjKOsRAJ6sFaD//gVMC3hOnDV9QD
rLllG8Cjgk5T8ZmU2ZubfrT2777fP2CJ/DnOlJsPwShLgtHYUIpg+wIEkMPySOpbD5YucZwsfI/V
SiUd+32NjsOqIXXeJDTNFWG5vChL9dh6HZNtwPtHjGOcNIFz+whVyhiWEkkv49isNyjo3Pdr50R1
mi7U0E/9AzYQ7m67fo4bcxJzRMdgIocLl/s4EDMTrhhCrwVBuXcmsIviXZVtNuLi6xevSg5Yja1l
t8N58uVUn4YuRstAd0XVpOSwngjMWp+oamyKHPxpL8hlKui8+mtzNxe0dxXarTlFweDQ3X377Z09
D41A3xn8MTBUTEMtdreDugftDzKbeAauGpi+Pi0i7OUyJQU7UqFgt1/H2K93t4dsi6zcHMm0UgyH
BWJzKMe6bwcGIQYUCdysyNrWXFiRM26yGV8fnxcs9N3a61d5klLBAuKdHfqnXNb12OWs0BBEGQq1
WqOoSgRUH3EB0VfQUDcBmFCtipG6cJmziRm6eNpmO9uzeu2qpL7G0qqTfLAYs9eEf+FPM4KH4L+R
KfCTReK+IYp5tLBQIANTAbEARSQkitdRcPLaLzhs+Lik3lQE881+GcyKx2Ec+cMf17NUR0a0lWOa
gzAcLcUQoQlbYhA4hiI2ksQ5KS3VoPTfzt1Y07Px063eK7nf17g/VAZkYU3G7nhbDR0kLPTQYNfQ
gHMBfQR/Gy2coFsNppgX4JBceKembTZv1fTGnBHYfK0v4MMl9sPjeGVPUTUsnh572Z0yHn61xmuD
vi+R4E051BxtnpJgk38RaaFYeUFaXyENJ8Tsy3bE4mSxIR6MppjXINspXISEoOoiiMZgtVALvh9i
+9Fg3z7/e6ZmqzWxdp40qZwnTfqpg+DnDz+tww4q2FYFnOTKEkIutapxrTfw1QvHJSWeaveWYYcZ
EQXxfA0ADR9aerKNvgzRt2b3eDtFRYXMWB25/dAaGltBEEoGtDJXSTe+teDuBuPQfFMhLgpR1ysW
BFUmReKHyxKP3++7d+OvAR7X7tf+ex7SfTaDIpYdOxWbNqLOwwSll9E2LeeOe9Aj1MtXENsWq28F
ORavLbg5VLhhUx/Z/s88EumcZs1wiS2IVGmaQLAg32BPA1yHhmoM6oTguViEeYtViv1VJZGqlZ3i
zX+eY90Ks0dDkIW34Byz1AiDUxeY0WBuERw0aVoioiDahZKAP2vBbq0qposG62nCBrrvKuOqpIgU
9mwbUCzYjwDqxNiW4ehVzVgC59fUrexpuZKIrnKe9CqVPLZ5THN650cppGiNUQJzr1jQTOEoEUxS
gdFvhUNxT18r9CoW36z5Kt4q2NhVfBi968iCjXh8/Ooe9senh6m3Uw9pqBzqlJYw+D4lTmviTEpw
xcGgSrGN0kvJySsd3ovVt7Rv8VLBxb6msfayVr+VS6PxVzC5t2Ao4ALbggkHlmvwiMCXlAeTNrbg
KAor4NIoYV+HZsorb5tL+XFJtaxc4o6rCmxQbvyul5NrElwU2AKSjMeqaPBqBSM4UqylYP4Fxsll
QHGvwMQVtHddjfZV4zycPfeM4IBDgaMa0DCUZZ62qUEgIzjtKNZbEAvMe6dBvoMuvihgNi6+eerx
YUF0v25vxQ8nw+b9h2UXR2yToQExW2RCawzklo2SN4kp6zWcefVKFP/yLo5p8wXJXY3kruoQPN8e
nx6HAPKn2yGMX0aPjZcMvu3E8j11eMqZAZ0KukuzqIlkr0ePceUXQsf4eMFB5aT0/DwWBe/GxwWK
7jizUioCVCXfaGLhpBAOxxosHGBA2BS8jqCI325mZUnFnAnDd2tpbwRnNYSvcnDl0COAgysHcGnq
lE9UYNUlTkFg8BeYOtjvypi3AbNq7cXDOl4fX7l67arkgNfYWgHgL2dCDLWVCJw3aIFBDyjvQN5Y
0oA4AtYkmNlGJwRfgMuuaErksrG+1e0unFax9KiNEPsKiys9jcDDz3BVP94d+m9jq90UKzKBGifA
AsWpKjx4/MkCaTT6I2A3aOLoJXwt99iGQJ6/VXJzU/nBNK1B6o+1+vSUyuNKwV+5kEdrRr1DNU0J
zuZh4J9xkAtBghckscTc+VdVxgv1UdPjq5LMdXjZ2Jul71a47kMg/lTKy1WOEgx/5MyLdynYnJtW
eOBi4yl4c0ZHAypdRSXI24UJzrS8lDRYHUB7UzmAO9ItosRg1nT9uSl+qvhsLadw2EDvtFic4Slv
XOKpcWCTSJUSaqKXfOnZulclBYcKWdScxPLX32dwGCsACvDuLXW2MQlnp9vIh/CSYJ5gj18baL0T
67xqQcxerUO58OEydPLt7tfj7eOUU5wuqPUsyWQR4yxP1oOvx2trmsi8UtrD4bhshkle/9VzMKdi
I9Eye6Pk09oKn3Zy237egZ11ez4HoxWSWkkNiQwTFznOCoI1gZwNiUvmMxgIfyMrpKRgQfzaFDFd
ryqIqM/HjAM1Sp2MrUwxsqrg3BI0VWnQ4H2p0MgktdDg5HvmLlV7nz5si51PRXmdqdWrmQNbujcf
n789HZ/unrsvqywydgaJEzLhOKOWyeQYjgbHTDUO3GLgSSeJcK6UCeKicpdlfLe3LVK/y9cKFg+m
ohIO/dRT6T6nIZA7lXyNdxhubPRggwhL0G8AK8syg0CYtOWqVa2M8V/E4ilOVklHyUKlPt4cbpYQ
geNcrcc/bp++9EXaCKdqjT/S8AcqORodwSp52WKGh4FPh4AEjbTRMyxPS+rtJxwM9sj1msK10TK9
NP8qLKvY+5at7P1ZRnjI+GZDE/+/8T/5EEYzwlAmUTwnnNEtmQLlKGTG3sBRsCHqvwRQZHi24PRQ
4fQ84uT9j5+WAxKjdtKi69LyPAsIAZQRjJAZSqjy1gb/VpNtP62PqWXr4czWcqIPh+U8ym89QuPM
VZRPuo0eS+wlQ5GRsjUpmhbB/zkFN8fZi5vXM+7Odu86Pr4qaTQVwvVhs+3hw99yFRh7R0aDS1sM
o+UpbpLYPKDS4twfTj0KcpDmcMGcdnCk9CtYd3ntrY6BRVEXENlXKN+djacxU0ArWQhnIgnY3MU8
mu00d+UhLrknRmgONqJaYKIsVisoEXRtxlnBzXoY6bf+808unUUTxlBzcms0nuALUuC6WgzMg5sU
WwRGcWC6CusD4jORy4pDT1u9cBLgacFErRDQ7rG8ddUn7j6HHyLK1aHZF+cRvRtwGIRzydOAlQo4
p5GAh+cCNg8SqfKAVyLCxRWhuMsLKUZ8XHLQVX6Gfdctc1N9d8Q4xRxkijNPnQmqiSEH+QRYiSbA
QYYr6YUOvFX+xazUfM0FURVRtl8BnEyIQ7NBAzwETVGkWawBpy1tjMMYdQAfmqaWG64vDIVtgw1V
oIaAurXVYDtJX4Is/9v1S4NXmA5wxcCL1Aax/UyEE21A1sUgvdIGdE9Ub+eMnWnZ6F24ruXUgENV
YXs1kq6m+t0v16BkNQY8uBW5as5qbVtUSERjaWxwAWt8Q5OU8cFT5sD/+OsmWsKDktf16Dr8cJKd
WNx0BN3+X+dJxCrLTYoDFOE4JolBNwOyHkd8NtprjrDgCRyqjVrYxYIFOYf1YEL4UEwFdKCYS3Wv
SZQUJEpDBBZmCByZlygFzzcFJq2RzLzZIPsavYLX6F0NkkPXKuzun54xRjH0Hg0gvy7A10hAP+Ik
l4Y7hiVG/9vakS03isTe+Yp+maqkau2CprlclQeMj/I4xLMxzuzuC0UM9lJjQ8rgmcrfj9QcbhzA
swcPCYZWS+qWRF+SmDGYmjN7MmOOphrm/+F5JFLQk5C8LHHFY8tos4qQIDoS1sPA9ITWVCvP/vEb
HgBXgQEOZYOZiXmgeFxPWZ9yryRdw+8C+6UJeANR1xhBKNJkRmvrML1tO0XIWnSxxVONObYFcwVb
g4+EKjsajHGACRgs4EKThZF5bhqwG/mKGkWa1FushXprJ2jrMU2cxgF2sGVGfYTdwnkoxTUiNma4
m8gGmD4CjzWZiq2YyEOX2l7V3CSsZbfVCrev1TEEPIsff48u7lWqihu+/OCrAzpvUwwXhIcRbB1d
wmHMo6k8v/bYMK4PXF5VJhIS0JZIFQEMvz+sfSI7xa6T6FTExqZuqPCBVXXMQTyb0oE5UWUYuxi2
o03YzBz/or9uVX9fMIPrvaeAKR/7Fx9W5i9KotP+vbEKqNTJ1GWbWYqDCycMHftnEw295tDLxUYf
e6p/iLbxobomMS1zr4Ax62pN8hgcDmm9l64bFTmawUDPx5iwTEHLDOpi4sIk03SqwEDb0I3e8z1i
vZKEG9M8sbmbhvGu2jhZn49H6IAR0O1A8YwcgzAir+8EFCc6kbdTilGwYSiSB6d9xKPj5X/HWfVi
xPnNg+ybv0tP/lscjkgRz6tIpexv4W8ejYgsPsyi3M/y+nkT8a3q5f9WPfwQuIIW4PjQLylOojZ8
Kkwb/yFO6cUlmOdabF9McrhKDu8EV5bwTboj9ddxRLw0Dw4PqqIMTZecoiwOoyR/kJd38qd7kv1A
p7PQT8+5D2SdE96xgCwsITAf5qd76espzoPXQwQVIPK6WpgQzckPeJlHSVVnD47qkYgHqyixEM53
//WyePY29iPcPU/ni9UTkcr/3p9fpt1g68Vf/K2z2jx55C5Jk8E2DQ5Rto3CeyI9XK6OCuq31Y1k
b/P4O0aS90BJUXxbLphKmcv6B5GcOYn5tk7fRXX5CibjYasK0KwVRmGshtEABudeCZTnAtF+abp5
gTELmM2ipI/nQm6jTdMbtIkwmG2hlTaBH5VIkzKmJpj8BNT+zGm84orBpNUV8Hxek88Lj+zRKqLU
AGx4hUuhIgzrgrkrgs9irwPXlt7AU11VGQLqFoQhehAQIBpPoAuiey8teRxuYuMTskq2Hf1qiuy7
9uPjyukVAEVRUVlLqpQaZn8OTiF565IfldZ4DICJjhiG0wv2hDLaiYqK3fmlMF8EuvUti8gi2aU3
RXr9+2OcRwVVWzB27SJAmzCe7SzJfGM/TzobQdOHitgG6zzYfrthHBRjSEWYF9fnLWd7PaaBMFlU
na/RK66dubybu/CYFzwM8Pj+xPbsftqoUsNQKiPMwrXn034grdluvv+4eFpOJyDW3R1qDXW3/oEw
3vQPr7/ZTFq3NaUcZvO0cFaTXuo0rSE7R27lO41AIdfGRa4VnUilXTsWotoBpA9VkZ9/Y6q9lcc/
Gf2tMDTmxZ2uaCXMb+QIFiprGITCEHC9xi1VV4CRfgJQSwMEFAACAAgAPY4uSlKsf7lbQwAALRQB
AC0AHABodHRwL3Rlc3RzL2FwcGNhY2hlL3RvcC1mcmFtZS0zLWNyYXNoLWxvZy50eHRVVAkAA0bV
elhG1XpYdXgLAAEE9QEAAAQUAAAA7F1bc9u4kn5e/go8bE3JSSgDBO/l9ZRESRnv+LaWnMzZqSkW
L6DNY4nUkJRjn4f97dsAdSEpyTET16lJjfxgXUh2f91ofGg0QPE6SwOW5zaq/wXprOvN51PW/cz8
X+OCvzhpUrCk6A7YI5um8xm8R78TXcV/SNdecd8UAX/Hn9LpYsby409X57cXw+N3x0tpUebN2Jc0
ezj+xLI8TpP8uHf827UzZtljDHiOX9L/NA+Ol+/z4wsvuBofvxKudBbC/ziKWWZ/g7XSEmzTUh2r
71EH/ndJV31/JDlpyNDkec7qJ/5m6rKuos6lV8SP7AiclnEXXjda4Oeffwa3/iHd5ixDZ4OmMg0T
SRp4BTuexLOGBgUTQ8ZEJioihq1aNta6AAvJ2MRYuhqjXQaABxEc+g0R3CWkq6MO0T4ShShH0g2b
p1mxdRUhUi9Jk+dZusjR7W0F49DExLEUIvd7CpUNs0/loWX1ZcUg2CAAb6DpkiRx5Kj3xXtgaBwn
AUP9NC1s8CP8oZwFaRLmkjR+zgs2Q2fQDndZXDxzTxUsKAQUlnj+lIWS5GRefs9CNLnPmBeukWCE
BnE+94rgHv25YAvw1KaVZ16cyIW4QJKGTwGbc6H1Jhv+5rj93sDtOc5wPEad8dnH8fDjp6PK+byd
1+326/Dm0j27/NQ7P4OLBoMbfpVXIPyEa38UVyRcgkE1jc7VzfV46F5eTc5G/5CkTxfoht3x/oEu
mZeBMIptSZZPkcSvcN3J8LfJVrdbaiI4MAIN3sjVLwzu49/5aeavf6BMfjrOvjyh8cV/OVef/4I9
VurBSXHgCXeN5yyA3htATERpNhNf2pJz0xv/cnb5EU2G44mNjkFs4AX37LhI57LALSvd+2I2laSP
09T3pmiSeTzoFlEEXayTgbosZyi4z9IknaZ3oG66CsMjW9KUrqlZxLC405zRJSu4H7a8/h9lSxtR
FJmRyqLAjNDEuYYoSRJoOCMyfSOwsGV4EOOFlxVxcofG43OUsLu0iIUxS12KqbfSxXTN2qsLPA1u
LlgXRdA9iP4BsQzoDy91qRS30KUZQUTpXl3gSWA00q2q0A2Dqt9vjs8szVO3zDE/NHRZ5PvNWena
aY5JdaOVOaGl+HtViEgAHitFm9T6ftG1IFuJtrDyBjHlh1QJ6VYjkGojWAol+hvE1ErXjkawFIuY
+A0aYali7SnaxQrRDK2FaN3wLejpwydOU3ExfQbmKETfdkbgp/QhZiA/zbw7eIWvwW28nwtNFm4T
SbqvaCHZpWmvGqkcFWE0XA6Ttv3KYRE30yInzdgubGJcYZ4felhHy/Nsu8LaDufiX9K8sG3A2zzQ
+TwZ2fYNi66L7GTv5ac//XSE3iPITXYJ7gbzuU1N/UgibVHrmND9qD9m6WJu22Gce3meBsDRbJAG
Cz4wnadeyLLO+tL69wKtAnHUWRTxFHIX29C1I0lpCw8ClH3Nqf+36+sOB6DqDf20nf5Q8ywcoj02
guaGM4ROxdrTSPe2BhDUHek22gshsDQF6woqz7NteN0CsfWdwAEpcKf+NQAwIafV2vmAeVagBBsf
jHg+sdIdsgLMG2XprMzlhWbFBNWV00R0KpoKuvW2uinxohd1O/fxNATVpWZN26FZpdAxjLaaDSs0
9miGXvy6XvCOg4IRbQsTMTCEgtkWk2lY1h5MReYlecwDbpI66WwWF8DnG1wiCsNrIEeBSVEBVMk5
PCrwkWS19k+wt2UCoR8mK48xT5S9KT8gGoiSnc6wIDQIbtk1A9XS93fNKE5izvf8M4wGnTBdwHRJ
dAxT2eoZAoZqAgrSDoWOPfYCQcy8Z1+YOpzNi2fhAktpkiJR2uoMNWu/TjGWL82+gAHthuXpIguY
0K5pdI/xlCOhLYNAC0NzbxAkMDQvxOdeVLDs0nuM7wQlXqdAjs+b4FwhvGEwIucFQEjy4qcPFcEw
1xkXMPi8+4D8NJ1WDvWm0/TLRvQkPUsevWkc3t6ci8ammiIBFbYwKzJ0akSVRi3hOt506nvBA1gG
7zochhiRCepEi0RMyr2pTTTKY1lrqVAjMCdtKrxnwUPVk1/xYvm5J5As4xx4uA4eOrtqAD695RgU
MugYlTGo0tLONIZQEjmCyKoGMEMNWakW2m2Dt0S2wds8st3sreIiLyC3c10CXX/ZHCePaRyiPQ46
LROURusZFgXvGC1bT7U0c3/r8TftY78R5o1x5Zt90LqrLR0FWUjDU3w4J2ZbvtDZPr6YwuvnuLh/
5cj6YYcYXr7aY8pr+UIxFHOXoVZLQ1WfBS8Y2tk+VG8R0YEJDHB8lOaZI4xNCm7Xay2LeF611/Lh
v9S/VNZZHeQAIIMDKEAxeQUDBV7qLC8tBwqYHQIU0g6Kr2ngQhGLZ9eObd97SThlFyzPQe7J8jWv
gKx45EPThA9oHdR1y94dfcWg047QDhSV8jnKluR33y5aBA+4pfNL1TTOt5BcKUord5lqoALfCqxL
QTcsYPEjyy68+YZql8dKo/i0vqwNg101M8tYgnF/W1bZpAqQnkJbQfQwj66a/5ZVfEAXLjW0wMd7
3UaIgKUrFsBS23kOa5ZPUUPhtsc2RLlIYogydw6T7yqoKpeGLPIW08INGa/41E47RafLnoo6MzZL
s2db0fl0Q9Fa4jZ5X92L+ypZO1PoU/SKPo3rq43o/+09euMgi+fFhqdqBEUt7EWQQ4rSwyI5T1MI
qznLeFH5c5o9lFr0ilWqxlvDaKmF+Fh5QQvvbOUcCTKV5RnOqKxmcHW14YUrGaWLJCxL4VvlIUuN
TIMR5LrO6Ob28vzq6to9G7tO7/z87PKje3U7cSdXbs8dX93eOEPsXg9vRlc3F+7o9tKZnF1dui63
2ZAUq53W0IhIUGotLRikYzHG5lgk3LpEcVuJKo2qEuFFzBwMiZKWonRGTVQVtF5CgE5nAbYaNf1y
NoEx30+f9pTgAgxkTjUEcpxFxmf8w0cxJqfzs+SCr/qBVKpJlLaVaugRWtLGJXsqxfJ5bMotV6ki
UbWtSA0mqG5/mgYPt5BAT9diL3iPgsnReZwXJWqed4ziKfA5KDOIRGu9tzef7+u9QpeheEEY6cgd
XI/XSngsYR0aTG8rSoG+LP9+Oa6u+7hJE/zyQ/4ADAbG8fVQOxbGAF+Vhc0/uOc0VaJGSwg4NPEW
hGyRcIG6CU1hthOoe1Q3UU0cn5gK4jQgBKHDTWP/aR50w2d4g16qAluG7gPdqsiF893U/2fgzkpZ
hqVJKm4nyot8nyEuaSlEtVRJJS8uiDe52wh0I8BoJQDG+s5mWZDb2Z3NbEIhDVAVgQ6QhXvgVf3G
NAohHJa1ee6rdTGb2KI6DQJysULswkQjYdO6zLooTdWYApTCi+x/ivMzViwy0QZYVI030uZlBbwm
rirN1KmlGSZaneh++bN8I0Ymk4oqbytxBgWfCztrsujaYuXFsj336fKgPPMSGCWzb3AQjPLoQay1
uH+mec0xK+k7Wq0aTzhgOtE15K7Od2d3mRsnj+mDIEair1zzeoFaGIQNgWsHacraQfRvFxLq385i
za4G/eVYDAGTzWpVG1eoYWQowFk8pPI7t8i8+S4vvEYQhYR7JUgkPI1VnlckKSaBPL+S76zJM7i/
TgX5KURpLN68Jo3SWLCdRhEKKZmK3jiPqq+qfHVMVLESWsAUtVYUqzaWWCRpF4iWFW4C0U/DZ2Em
EYseLSXBpG4taT3y6KZYq2gZzhpBTUGbYNa/pfsSDOjcnM2+eHHh5vFd4k13hW3wMq+aHlFpiCOU
eEmaTxkTsW9Zqz4bvH/fJbtH6JoUA1tYwZWZYnEf50t6tm0h2IW5TmW2We6wgXndIhOhdjJNkzvE
/1UnnOLYCZl+AMtWf1OYalbqMobW6A5fn4z5lDEf+TNvCimxbf/CeCkhDzyIv10zYp43n6zP5nW0
OLhYFOzp9Kcq1m+xaLqaNvPlOtedcamu7+XMJpbRXCF9jWEh0EfDMHBVUM5QxisTRbnebGqkpLkk
+gqNmobJRmMvf06CCeTiJzUQq2JSA9m7o87RKY8VHiZLPilXhgzUWYvq3ttE0Zorpq+BpuLwTaAN
kyJ7vk7jpOh8j7hyvdFqLMC+xhDdD4Xcd5VAcpfdy51n6dPzSaXrLUDsstoNer8P8YfvcuA7CO9N
acOi1VKNcdSeSffSu/V29E7w29K70chVbm/ON3WtshK+4v8AAiDInudFukW51VxYC9TACA0UBInr
haFYWF/R/utFGGZI0W//cP4XRDg8MPGG9V8vRDMo4GAwa1xMheEEG4KP24ihzAh8ISa8d/l+MiAl
N7/3MgYeBRGsbBsi+LAytoH8YprvbRvPwzgwfZTn0yFI/pU9D5+Cew8IUNCf4LpW0lQLM75Nc5jw
kmddngaJrt5WILRBxAVeZ2wO1vaS8H/4jG5Z4ORz6Gbm8gqhOmdkENoLH70kYLwKD74s512Yqo1e
9wqBvgpmwznu/UqUu1qIFQXLxo4JaLGF2KO9J1lQAxZ6lHKIa2yi2s14KJt6Y//Da8RZgV4TVxaG
G1sYdm2t29qoG4LrYLhnxbiA3jsDSr0uq7TjJYy1DvcyPYczy70EkDHV9y68RpkGeVddWS4+rZao
OzxhL0949wEtEp7lgY/KjIIfG3iFV2ZCq+Wa8oMYZ4jW2MTwGkg0Cpr2j9eY+oAJGI5//83Qyg8C
oYEb2xG+OvfQiKEyjDa6l23zCZfMoza2G/y76uT1TQRvUSevL7x/V52cmG88v6uvAH89qnzV06Fn
/94Y+jrl2HeE3Gy5Es+/ECsjolwL09z6Mm8T9hYRWKbCdD57vhyXY69bjsdlM8EoLRZr3ybhUJQ3
Szj4euNbJhwmJByrRXUEmWU6ncbJ3aEu8teqi7yC7EwLBrBmjzZa7hyNrMDU9MoernVELO+SsuMk
LmJvGv+LVadgCt8e1zgXvM0r+Bo9aj2H8VRztf65NadajwjE2LXjxGytyg+iUtWXIprs16Y1piPW
m01HWs8hXpiOkLdlB+tvVywm+O9nMuFjAO8BvUWR8pvjgm+sjms09HVwxJxP/mFy9sjrjd/oBY/v
KFt7gd9S5y6lGbrRGBJe0c01TzFKI0vbILUI43KzSBHPWPgZZJe3lIhi3U8fUGXnM9+mUl4G7HZd
Qso3N4+0rSiajK7o7drLHviSelrYNkzqHtawIIN+PpvNp51aOiyuGQfpnIXn3swPvRO+1xB1jk43
OxK3TikrLs1T+K20Yt/gc+LN4sDhdUu+EbBSLFV0oKbOBmK5vQirbUuNYchwaOhiX2SpfG1mn9cS
bd6wYq/BiTjKZ0qnnfXbFoiJVgd8b5vfUKbUI0bCWvFsNcys3p/s6i7LLeQb4Czb2MMNXReibfs/
XVyt84pimFek2VsIPl0V2XhNEuIg44I7R+XeJJPfZVMXX97tgWn7oul3jNPGv2uc/luUDYlyoPAD
hR8o/EDhBwr/USmcHij8QOEHCj9Q+IHCf1QKVw8UfqDwA4UfKPxA4T8qhWsHCj9Q+IHCDxR+oPAf
lcL1A4UfKPxA4QcKP1D4j0rhxoHCDxR+oPADhR8o/EelcPNA4QcKP1D4gcIPFP6jUrhVuxl5dRtd
d57Fj17BvmGbPDbK36GYsqDC4K1uc9FUzavc03dR/myRIHCl/d74vc1C365Z1Df+BRCMguWTi74A
b/GHQy0fYYTEj7aijq7Kflwc2RJCmfdkbz1ICEPDZf6+A8G+A2H1ACEmCT14w5WE8Z5L8vUBbptG
VaqFvtA+3z5giit2HDC4EpSZO5TwDp9ZNVyGrymmkEXwLsD8ANko4Y89icQZ3BKi7LGE0IYSXeM/
7QsH1H1KtK0rVE8oiefVI+tHYKAsmja0E6xgfqNwtgMW5bKk8+VDh5zr2/JxUESVhlmWZuIZU8sn
RK0vVaUJvzHvcjHzVw8yg/MlqR8nXvaMzmbi12Sl1dOgntYPgkIyqn+pQ+u8/GtvHfFwMxmtn26G
TsyeORgZiiY7ao/IdGRpcm80cGQVq9YIvjMdHZ/+9Z4kVbec7XIH4+54v/kh1vF9PFt28Q4Gy9We
pg6HpiWbptmTqWWMZFM1VblvDfqmoQ60nuXssXxLYh1PuKN5fA2aZ9fv0u5oE8WhRB0oVNZpbyRT
qphyX9GGcr9vjoBsB72+ordtk/JYFWeoRMoWzpDf2hz52zjP2Z0XPO9Ciy2FKo6BZeKYVKbKwJRN
q6fLfY0amjMyDIrJfrSl3Jcwl2fUkBuqtYWcqarX8HAj2diB3cHYxJahyYpJAftwoMo9cIqsOioe
ar3RUME7Y6AueTf6+jlV/MzT/S38EYuM7QjZB9zqAa3pOoTsQB3IVB8qEMZ9S6b9HnV6uq5bI2OP
0/cjXh6sQCVAxFvBTIxQsXZyzYTlxc0iSVjWPUv+CQkFC/sL/hPSqEO6XAjh/U6jxBwpjqz3VAX6
HcHQ5RxTHhJsUGWo0IEx3B8vGxV1DV1fvDT55OWLqpaaSjmu1Cw1FUOLIgO9hz6+9A6XNV7M+bMU
a2yiD0dDSlV5gIeqTFVDl4FZe/JQGwwcEwYmA/d3WfWC4Co6H+a1W+h8Xws4uuqPtV0MLibn/SxN
/sUGGf9lbO56VelCugzu76pdhZO+aVFjqPdkk/SxTLFhyVZ/YMhEGUIXGDlWr98DsOUzG4/PYz+D
oeh4+ASeXcbKlpo9/t8+USrR81RCD/zA3Fi1/jKKPBWs4r8tijpUx12lBA1OpSNHdhwMrEgcR+45
jiobWs/EmjNUMRkA6EWecace86srukwV8pamLvhS1xoeHN97GX8MV0flXqNdHa5YvQUUg/8n7tqW
4ziO7Du+wo+McNS47pfHuspcUyFKtBX75pgbKIRAgAuAWtFf75M9mEFXd2OIWCO0CgVATjerTlZV
Zp689HQp0guB01tzgrVrULxaBbMhtYA4JMFlzpfu/YGet6PW3f/lcZplRXy82MHXXM7h478J/O/3
D6Aeb4wdgNMvgFbcCO+EgLWAcYNZDixGAc/HeVHZ+2qDmoMeoR1GXcY6XOqRWj5HakQYkGJrfvv+
6v74rXYAqlYGEFOzQjZXWIsqEQ+BaUvVAbFIOUlRczZnIcbtFjEMQuBnjNvo1t/2WwywfFuP76IX
Yb0k124whRRNfL662X359PkomghuJQYH6ZxxvjHeBoqlwTGErdiH0orMRubsRwd3NlIHwkk7B+Fw
Ch4X9/f764fTF/69EXqlgcDJXESOmomWyFs4yWLJFRYKmu40IqIQewTjYbr5vTTz+YPeTvzBu/WX
m+0vRxb4pzdOemgQ/tnhD6RIDSQhZMW4jcDELTBpHpnhtQiZ4d9yPLvhZDOPE3xzy3s8y7f391z0
Au7mUm/XYiL1KE5+Y1eBLK40gTZAxFBU5IwnAdtVFUyvbYoJjdjSmgjnIc8K+zTyEvY8un7RQ1ww
GpdqOyEap29oeuMGN22cUm5FhhfYq6zGKKii9LC2SgZQO5XwI4kEruFU0OeNx/GLl56xdY9Xx7hx
xOa4DTd6st70Jdz7n+NpLpiTFV8pSSIMfyDDIpwTCuw5Czi8AX4IObBcIq++ygjn/BKD/TjXshCP
FzsZBPdzGQRfHzX1f76s79b0JVz7o7Z6IhK8QR9Dw1HJCEZURGiWVKysapeU8bYEPrYWhxTGXxbG
m4DZLIG5PNqu4R27RxyODHIw2sdYA5MwEUwZ4AiVbIaMLmsLb6zdIo7RUD2EoBYghKnlePvDYMm/
H1J79GrgMXc0QXmct8xqbFgclx2LShlmZQnRlJpFsC/ZzNkky9s6u20i0G5JoP1EuT7DlY+CstV7
+juE4oNU0g4OunrTHM+suELsEYQiUVSaRTMczjDgtJ43huu7zbJt6Mzg+x7L+K7h0kS+ywX51vJ4
gIfM4Ic8PjlChMGbS+UDRImQopK9S4irImLZlmqpXGTs1Hl5fvi8v/nu3TN2erj9Cix6CUQvwtou
iHBpp5zv66fN7entAESYyYJ4rsl5Yl9Sc9YQeARYTVTmTYZoSTZfYRl9li9ifONJnrGF41s6QaRa
2At8eNTfT8TC/kkFrvuH9RMFgfSwg/rA+kutUQjpmIOqYFMaedyEHxVeKid8mF5kCb97/498++nz
FdjWSIznQPRiaL4ghubHI3U9uOCTHbJmZfjKE/mHThTLDTNCQEGsFjhQiHxrbkokelG94YvWaDxi
B8Xa7RyKdeuJObrFQfwIQi0QARzM0PAHQLIyBJdApVMuiGOjg84WYVmpDisZG8yk/D+f8cO1DrBb
Uke32RzXbn8Mz07LRwvXSjCyUDom1cxUhuMOPilE20UgjDHZ6NpTv8k4HYYQFtzIZm2Px7Dd3l//
c3co251sgl1J0iPTKLEmwfCLBsMHLOiREixXOPsWKPkSeiTz0S76ed0czHanJ/b3EFv/DpMLJzZs
IejcSpBGxJKqV8YwBL2GKYXdixYkp+B8FSsQVGb9TQ5KYy9v4vHqRQ9wTqDNfi+PS3i1/ULf6LmK
pwjJiBX+pyWEVQ1JaMuU14jjigaNzPjRqgqimAI1dv0STkYbI7HczeMZe+QET+t3dfPrk3iD3yJi
KwUBEjCM0EAAag620SYPbVCO4VTx2JROSvnX8Ftvxxg6D33zayeTEHxBJuGHnOZTxWd3c3+/OxlJ
aYjrkjwwJFji4METKTEibGYJKsKMgqqBq4NJlkUzMx93AisswNJTY/Pdhw9/eqMPvGCwMUkHrhSi
BZVUpRx1RODmwHdAv2wNMQjNz64vRlxeOFzoEW6WEFJK8mBdvns3VCJOSi2H0BYxQENoo2CWOULb
wKFAINyI2r1qCNs5FPt1/Hw3f4dcqwXk2pjp2u5v9oevdV9ff3h8t/qbgz2QKgzS+OxxrLVnWgZi
lzjXIYO/aOtyUA5eP4UXOcj5VM9swvzGXjQzpy9U5DpuSru9eXi/vruHIz7ui/FDxkdaF0Osmmmh
cJrh9rEnTsFDtZKDNda3dj6d8vR+oxcH2fHvzxy245s67/+yALqTOHg9lzj47SlOuf389RLM4+kc
OrLjFEa7lFlTIDVK40dKFvuYrWmF03e0yeVYpRtugmTO7u1Qxemo43Aq3/4wtpBqpQ5MQVs+gFO2
GEoR6qrgZKJgQXPFSraIqj0P0p/PbM2m6Azg4WIHfbNfMIJbbo7H5v3Nx6cE0YBRwpI4XTjT2sDY
xBKYF+BYoFwSZkbg6PwHGLvtP00+huzEbq7ETnJ1hLz985/Xm6sjasXdwGiDlLUlqCmvAeZRmMS8
dJxVL2LWSjuZee8Px+N0AKSdHzy397tpfv3wMpRjdkdzvdJ0AuHrhGi2slI8omVaSp9xArMNSUpu
qh6S02f17ZnaXX68dtEj2y/ADfyoJ/nn7z+8v/7y8epmUqt4NNygyyrKEFmh3IIKiKF95YXZkI2D
ddDJ8lcK0JaR9NIEsSTNoZ735F1vbh+uLr8+mTr4bD5IU7RPpSrNeHOQRiM6i7w10BDnQY2Cdzmf
c9vjgTtgl2K+zF7Pqi7f73dX6+NL/I7pCqfESpiV5HQ+LHRKteRYwm+mOOibjwFaphUcfJM6N/uN
DPzTFM8l4p/uuOjx7haE8JuJEON86tubh/0dvZDmjdR+Rfm04TcJUhE2NI6D45ogH+nBSCoYXwte
paJr9uklPnJptudZ9PTOXj4/j+QQquwv9wdd+K18eD8tNxjHpTUc+to4/GMxnnLyjYUK2aTH1aT+
qHLDCd5FL8DlglTrabnq/vN+j/j2br+9/Xhz1acWKB2KMzhkQ8WgKKGaGDx2r4EgUa3eUFwIlUmw
9MLnrE19Db7+YUD10xKoLt8xva1fge3cJCNqCUerQETip/3Hq/uHu5FRMMMxjY4XxJOUuGyK7HEE
lRMBcqdANf8arPh/5D897E5qq+yC1OpU4FnsWXsDlrcShxhGlSJq05khwkecHVODK8pD0l7kWmsw
Jpwzht3IHbRLNw9d/eX6cnIky37z5eMhlXVPyMh8iCEXL1XUMhvQ0AByoeD2oXBVgqd5F6lsaF6W
gRrPsLzi4zt6GTZ8QYatOBHMT59P+Sci0inq1CSWzzUNPVGIcEMpjlkRcqjJq5rbhGKcRhhPHPh2
7uOCENNo+yB7vr25vPr4+Boq8ihCD+X7Iej2OA+Va6yiBcPAklIKKhrWfGiJ15xszecLMvM5nstH
zm7sZJJqnoEJ0tpJtH1qu1KCk/Hlvooh82gp2FKlVRaNH8r5TimTqqv63An9tLC8Ws89NeIGveDk
nq3SGWgMiBy8QKNcGSVIvfKSyYKw35kGT/rtkuT5Sl2c3HPRw53rVwh2GslSxX1Hb+egXMyhYBec
XKlDkk1zlyl3ITVVj4ShIj/IhiwlcS05Pn69quoRyfOdAXT1ohfHLskYJvv0y/76M517xFKUsBtq
JKZEDabHeMoI8kykdgZHnYqBm1yabla/hu/6K6Zevomu9ML4JWHWflrS2j45ERw5P7hk+kVEvNRa
UrWsGep7SCSVLJpJBZ2GKcfJflHOYTzHM5Hi6I6xFGtu5oXKNbf7o8d5d3WzX9/F6497TP5U6bFy
8LStVaNraaxx8CeVOZW2dYRNjy4lyvXK8gcxqQWgvaALhGItjDgSxckbF6FeXlJmkPYJnFCpIiWj
Wjjl0TNOn8ysllyTtlXb2M7ZrIUENqaWS3jU0ReVq/XHm9t7elnh4X1S9/n6ijphT/iGzjOpVbIJ
R0ZQfcogCEYQB75josQmwWUNNdGRhzo/bgdRynlcvpbKT3pE361vPkbw8q/3V+TyH63S8JuyxFgp
IaRikdoIlDdw+w5HBH7AFG0QRDvz6mRsDOm5fo+nO3qh1aLQ26Nb+7C92+9vftrT22+Oe6GlXWnS
B0QR2YUimDaOWkoDZ0EbxKIpSvBt4U0r/XbMh5ug2S2g2YhnejguO+82dHMYIYfWtRh1K4WDylBn
AY+RwfDA29mUQgMZa9y9qJHjWy5ufl8v0G7OhNbGuqda5nY9sjQ22CFkq81mjgiTmVY9JfkSQmjY
HRuiUbnm4OKkftQNdNHP5pcgTA332Bku9TBV4i5U/au5Um+JljjYskD1oHPaJuOS/w+97fiOiQgL
h9Rs9tMWmQrgnBwOfg4lLx2kA9Dm6RB4m1jUhrMWs/QC56DFVyQIsT7TL1N7WTbzWHdtrZrIkq6/
7B9ubx9+oSKJPnRm0u/Loa2YO1lhYFgD1cFeZBiZhIgvKBWy4wjpzfmI7+0Pp/Gf6wY53dCht9t5
Y8vaCTvKXY468uTBn/iWFWgl9WBSJK4D4oqYDSixBX9DsFGEnqUulzry1k6bhekDX2C+Q4ro7Q90
Ig4pau3C0FbjSpAZNLw6QQaaCHmFknEQruCggC60bx6Kx8GfP8aPN/TgFzJ/a7eZKeIvX26GRz0P
U1NR2ZGDsUP2v7gmvckM8WOlIiQcoI+KGS+tFsrAA9YXpaT6SZ4RpL+pF2ahhoYPpyr595zHPU3N
1AqOpBi9HY9qfAZGJFUmZU4IlESCLC+Bj2GXIePCBOaCtrmdnWQY1vfXp7hNKmrEGNRMNALVmEjw
JKqJwlJUkfqJjXO1YOXPZhdOo/aQdm4B0qU4pnqu//VpvTJPvIeIc+bKBJFguQyWjQLgmL1gvDjL
lYqZ50ljw3iQbna/WeCFYX0qPvz+6Rpc9zi7DCsxJJ1TLDbbwkozFG9VzqKVAkTe2NKKkNGJSVPt
aJyLfq6FHQmX0+CVKvn3R9P7YXi7aru63r+7un+gRO3QtYRf5CxFkVALl5ijxmMlDciXDDA0hUcl
oxdS5Ncz8z2W53van+7pxb9cL4m/OTVWH47Ohp4Dvz/RgkFMhLMlFMOaBZtRBqqfFHeIQEAys9RQ
IHPuNI6HnECa55TXa6EmOtK/e/WNV1SRIGA58BKr8ohOPYJVLzKLoH5MRht9ss5Z6c+GC+OBO2T7
hZgTH+7PUJdV+1B/o4cyyP1AlQUfItDTn6lBuZnkIih6ytBo1WJgMSTPigHRElUEF16xG/uI55kb
H692Yl+6ed6OPjxuyK/7r58+nti4PPSMOZERnIIwEiPIiI4SCBurwWdnRbKtLveMjceagHBLILZH
M/Xl5n+vbk45WWVWRBKbRYCIc8jg0ilvEWAsE1BRS0FLCQHC0D89hzEerYcRFuLGSxiRPo79fL1+
oJernvrBNJ3OIQ8bYoCvBHd2jmynUsxTw4vNKnqfdYIxP5si7kaeYNssYFufdHlz/2nFTys0PJxQ
BRiMhoJ4ylsZp1nCkjFTTIspOxnkJH4djdHPvV5Q2sv99LnYHwvV6AWlpRWXQ8t1pWfSOJN+MJFC
Q1kRqTYvC/XJcVtfv1jwY1m+5ccylmkD1jqTacPDqS9n/eX0cu43wlOYF0KoVvDG4KozTD+YUCw5
MlMz1yFZU1rq1/NpjH7qMA+SNsKfGtj/672ctBG4VqxU8Mm10LOIjh6pdY3jryLbWrJtUrxSG8Fp
8g6yXOiz2kg1DST+tr/b7O9u7+kcHGmYSNppnWAeDFXEfZXgNMayiqhdScebrOdjueOgy+CPVzu4
aqGKv1HU0qm+URNY1fjecyn+e3jGhz/2mwzZliKqqhyURGZPkYWAclcPUx41dKkE3Vp+CZ88zrAs
z/FqJ49Z6FLe2M1usvz/eDtOwR+YsFZ2cEQxpmSkdQhF6LEDanZL0AFWrTWpRF9q0y9BP55jWYLx
HRc94P2SFJfH9M/d/tPtb/txF5Iegigja1OhMqELkFuEojCygWljDYLr5kPXaftkVKfj9WC2c3u6
gfeaufvr27sPX2+2FBqHw4rS78dI01UJ626oRzMnyUIZakYq4JIvzbtXt24nPM+Fg4+XO1kvd3P7
vZW7qax/fXtqtZCP9W3/2BBEjeEqaxx7S0/Oa7i4kHllTfikYMkr9uJVagRvz7ZinC5f9JLIJfHc
rLyDMJmS4vf3V5ur6+GxrIOOuDB07sC6J4goEJZDTk5d/B6GHixNyRSCT/LbnSTd+Gf6Sbr7JtL4
JWmmkftTdn8oY9I/GH1En5DqeEVPadHzLllBJnrWqNGjRzknm2R19VsO+Bs1hKfrnQybzZxLb3d+
2kH+45f13cO/Do/iAzEdOE28eai25xqhjpa+q4Eev7dQLFB8pp1NzRbVzFI/zJgHnAZ/hg+crnfQ
93IeM+2kPDVKvovvY/7brFqjwfk9fc2BBd1nKiCGT416JrmOPEvvpPij+l7GCC86KdQ8n7ZTu2mb
wfq3car70MkruLYwe0NzvxapFK4ao3cBY2foiWKq3DvwOe1NivUbOxN//pYLGd8xFmFvFioI+PBU
QaCH008k+PiAexNcJdkSK4q+SMPnxEKQkVVhU8mJ88iXA4Wn0SYgdgsgzGYSw3ZfEvVGUaMX1bxw
0IcTIzJ8RAOqmlyCSeWFxawkk854jjghZh7PxQrj4Tt4Vs6Dqb197Lgc9ebtH4bH5o4NXP6Uikr0
YEtyigVZYP9KdAybjOjBh1Cs1dpkcbbrbzxyD22nF6DtpzwmN+qCLFd3++3D7ZCV5AfrIMLwcIRo
wdCz1sZUSpWFwoJwAkTc/5u3K+ly20jS9/oVc5wLNLkvx1xlvWf3+Fktd19JEGVxLFVpanG7/es7
IgGCSCBZxZmu54tdJuDMCDIz9vgiSOVSssK8WmM5r/66ys1XvL96qeZ62No9g6bsbO+n9yuD3zCX
tYJL5XlSIE6c66zQqQtcOGZIBrs/v5nBf9r9pqaPt4iek0nfdl8XobsSOMwhUusjuCYejk1mHluZ
QycC4wn8dJnpqhl+scZqb9Pa2855wsL2O3+O/TN1CrgQyiSo7dgpigAuDrwkLNACj1xlwXRkIa68
3nq1ihC7axCyV3PXi//efdyoAg8MU8MUnEcP4gYjmV7L2AUwJ4xKDNSY+pNUwZm+iq29afy2eyNX
ccEqLDpjL4zCy4MCduAGg8+DLY8gUo23DpP4hiuVPSPxtTBcvfSSwFux20rYW83FRk78ZRQ12NJI
3qlS0zL9VdpOvAWrPHWRgJgFMxXDD+CDMidzIsy4qF5WVPP6l+789HhBuyV7svHV4EM6BxYuy92U
U7Qa6JUSU1ckkA6+YlCs2oKXTLywYpXhviRpLem3PdTw4WFd5foTuEhPw8/H4R/ndOxJ4xdVwIyh
Apwag1ksDmKn8+jLUymVINwyya/KoWz3uSSZ1u/VXB2GLVcHMgfBDsfHb7unc6OrJLSUsuORDVqA
DS+xwtBhMEqDvpXJgfcWQzCBx2zbvSz1ojf11n2DHiYbva6PBbGqAOBg+UbRZmpsj+IqgUkLWpaD
dIdzajWWx+UO1Jn2TMMN8/4tnCvUUB9PZFxuj51fWbJK5bBR3fDh7Tob+qLi5tQp7aLsZCiVZgS0
Gio5w2jMwgfRRBn4vynuS2rYUkXZlgOlZrvorx9yXqlhrsGht9GBJ+hADcM56UxWpMtciww2ZADz
/o3U8Hn3mmi1PfEURNyJ6GN/f/fbWRGPjfVEOuKwUomh64TFrAbkR5eZDj46pnyy627WxSo39Va0
sb9Z/+xnFIaC2IERLIoqcRQllNF3fOyVt0RonUEIe8Ml9sfQzqB0zjFnwjwcBBuvRg0p27wAHFKe
1+zst2KR7vk6MPjz8TDcv9x3EnRgimL5kZJoZlD4tpPuqHLBRa5pM5y2YGC5RZuF5Rs3Nb19i4n+
dCae7/pzTrVAa3kKNrHugtZyLLX2QoFJxBOYKMqaTNKFREnfOBJ73voOlVpZD0dE/zgdS61RyZXD
6ZwFcw3sMxERqgn8eqei6VRwWBKucxYvWg7nZWuilN4SdWvXkvi3Y2nAz7t+GMMO2FOIAqr8G3Ww
FGAZgFoQDIsGiDadY2A+BskSfCSitFfVPJx2uCCUp6c3NbWboAlcj9u+0Xb//mH37fOxLyWBBYoC
S5XB7iknkxoQrODoEu4M/NqxdESB/RODBPtdx/xKB85yg8tFJ6c3lixwpu2WBWbmJoD3+e9junrV
NQduMPcezgPB1louNRk9TuoDsTwbrfUbwZqsKKipN7st9ZLu1jbT7h8BtnnYTdB8WA5IsdrdjNKX
gspg4AaBJDOIIJng+8fKTGMdYyRRIxpKbpnm/a/1Dmvwv/l5Rb4ctveS73Z7OEHVFSg66T/+05RT
Y8ZQtsxeULA8wWMBj1pw3jltMedvNckBRLUhb+ayjP3mzdfGZxVXB7G1O/hBzrAOv+8ezkVgU9qR
g4zOSnUMMRx4RJc0GtoBKyIYaQkPqxKwxSL15pK3Nt+vpAq4AfnjqSp0TBYZAV4GF0CDwMhrZgxR
njAJZpSjJDn6CjBZWbP9LZVHFZ3D7dZKEISeCz3+98vxaeCzVqCqyOIIVi/IM91Z6oBIjR0aUodO
KQt+iA3RsFVGs1roptqNswYJYrauwk/54zP8v1WKGsQreMso/R1G2onSnWfedSQwR7zzxgVeE1Av
U1Owbeq3gt32jXq9OHZ5MHxbCVq8RezalcKCWgS7HL4Mhj3PBrGLUyIB6+2vwCyJF5s2Tk9vauq2
V1Zwsk1Cff16f/fj7m4ojV9gqKki8AvYctIlsSolBhvAtELEUTCvGKcCbG3Hkn0L32FJwiUGz2/c
1Pw0TgYX68KaJpzXlBugpVVW6DHAAuwa55RHhBuLhX2x8yRik7INwWeaQcm9eeJtJucFlK+1Shdc
tlg/NyJ82d39clwow2IhhyAyiRScJNAaY+IjoDeYOKiRHIlhbFV/t1il3r63je2HuZn9K6jFx7ke
HC9kggtgPYIoYCAPzFo0FbnqwDWTwZrEM1nF8JZr1JsPqrW5akANrn4LIMXgz21KDWqUOnLXUcEQ
8CzLzmcQGMmhdKJKGCPe5rduvLjiZ2thCnErV+bZYXj89en+2+PMC6biSmBq/AO9SqcsUXBgAwFT
nONv7aWxHRFKgUUuGPzm13Vrlq1O1OILl5o2Ny/e1FyoFmvDyqKfok0bPCxuJEZZOMojpYiVMehO
SW6x4hn0ngQTSEiEWM8qEiquyB1cxsqysNJ+S628ZauDdZYkeC3/dszHhUNKQKKQUtPDpWXgvHmO
XffZleh1hONleOAK7M9WnL3ddY9bXJb9+LRiQ2/7VvFDsYFt/Pj8cAv+QmmbAtFfjtL4F8pClrC7
UoG/gk1K4Op1DtGVBEgJmTJT7BWtNa9/qTZ/elzRDhb9lnbDxaleL7wvgAL4/z2ee1T1O/RGhQb7
EoEYJUM9S7TuHAHnNBKZCAN9pjj9M2zNGkxjQ3DNr2jYV/s94lIXfu/3/9OfgcVUwRuNUkYwmzVi
AycsF5NgZhHZCRG1y0mZwFaYYstVbuqdto6J6Jm8GIQpB+5795fGieeeIzYd73QO2HfNwcIhgXaC
s+wEjTHE9KqZg2u/cNTh6U1NqmrRb9aQC1N702e4qXbqsCIEpQpN2icJFpnV2A+EFQ0uBVAKKTEX
mVDRvAmM56nB6rsPLzdgffeh5s82rkM/DCv+MAzcI/TH1MbHpjY+cFa8QbA3RwhYwaDfsIbIgMMg
UoCzZ4lOr3q/4QXAw/B9Te62Brt8eBL3VRD409PxyxlxcAxYu0iiCwZMTSBuvMLWWnAe4EdRlILz
61Z+w4UlV2Q1jOGDmNtl++dvj4tIJx8BKSyVRjhBOlbyfTyZzinKwTZkjBnw9fQaBHy5TkXAwZgG
AWfsnx9KFmB2NgtCFvZDePj5Op1QmkW46o5qCbeLW6FyEFKufM1qleX+UjQ0Anw4x/XC5+Pd8Dj8
9f7X4e74xwKbDK8IuOsmKKw9IQo0WdBwfliInVCSaGpB3sQVIe3lKopkI2QuwYNdHezvhuPXA4La
LCH2ZORgA4DbbTx2DzGJA2HAwcPhN2DREVCzV0XSpsUvdY6XhzXRRreIXk/WgLuMY4P+9gD/idMc
JtoVPRVz02yQalBUFgNpYCF0YAXmLoK0YVoors11+LTVRhcFy+Kdih21hUqy0t6qUpReu7XuU0Dn
/lS3Ov2FMSkU8RYEpgrYXEQkWGWBsY4wYxwDl39Eyr/KzIFNLot+eFgRv2toLlmK1vXkgfSf5yix
0XLMh2H2XIAnizYj1lIZ9MQlKFLFcLSQoBfi1YvVaip60qCin2NI4f3fcQziWYOfYqlZsuCxDcZz
pcAdsrzzNCkc7yENV1p6av/NWGqVBFoRUjGxV1slI/eHYXOsdw/954KlhlNJyDSdpJwCiifZmBHI
iyv4ckGKY9CPem6CvSoyfH3v0omQSyd+elwx2fNttE/2cGCG/QRT+DD0D//8dq7N51ye65YCkTmC
PSkRxRUR98CYB/sGTowRxvFALyCrr1atSDpsO/WtHPpN1dzz4Xj/7mlK6Dj8r0UCiU4OYHH/NElW
+gCOERjq3CrWGRVCRxxFtDJHuHn5UC0Xv+DLLt5YMgPKeSsbFWVr3yng0L2fBkSVGx4meLlzMldT
9MwJiFTmJQh0VDM8lAlf8A8iqM4KLgyN1wGWNfa6IGAab9bciV2DO7EuL/thd/fLw/1v1fAkFg3Q
7DAthfFa74GbAHeehhxJsCQZcVV5/GntC6W/09MV1UOD6tv1xd7v+l+fv1WIwWA/igkOomQeOBEJ
ERKspWgl29SBh2I7n40MXHphyFVS3q92WnIwPqvoZ2xrtuCH6zNVTHBEEis0S11K6BWijzNQsQIx
HZjFvAM2y3FOEwvU8Pj/tuvHZytSWYNUPiuCj98QP7VZ1aUymAKOoLeEKtSAsWng++48AX9KpEi9
/7PgWNZU1ixuu9bLh5uQcn+/K5krvNHjHCiw4412vouMYyxEgnqw1sM/OBXwLWH68BX1AGtesg3g
UUWnafhMyuzN7TBZ+/dfvz1gifw5zlSaD8Eoy4LR2FGKYPsCBJDD8kjqkwdLlzhOVr7HZqWajv2+
Rcdh05C6bBKa54qwUl5UpHpMXsdsO/D+EeMYJ03g3D5ClTKG5Uzyyzg22w0qOvfD1jlRvaYrNfTj
8IANhLu7fljixpzEHNExmMjhwpU+DsTMhCuG0GtBUO6dCeyqeFdjmwtx8e2LNzUHrMXWutvhPPly
rk9DFyMx0F1RdTk7rCcCs9ZnqjqbIwd/2gtynQo6r/7a3M0V7X2DdmtOUTA4dPdffntnz0Mj0HcG
fwwMFdNRi93toO5B+4PMJp6Bqwamr8+rCHu9TE3BjjQo2O23MfaPu7tDsUU2bo5kWimGwwKxOZRj
3bcDgxADigRuVmQpmSsrcqZNLsbXp+cVC0O/9fpVmaRUsYB4Z4fhqZR1PfYlKzQGUcZCrWQUVZmA
6iMuIPoKGuomABMqqRipC9c5m5ihi6dtLmd7Nq/d1NS3WNp0ko8WY/Ga8C/8aSbwEPw3MgV+ssjc
d0QxjxYWCmRgKiAWoIiERPE6Ck5Z+wWHDR/X1JuGYL7dr4NZ8TiOI3/458dFqqMg2sopzUEYjpZi
iNCELTEIHEMRG0ninJRENSj9t3M3tvRc+Ok279Xc71vcHxoDsrAmY3e8a4YOMhZ6aLBraMC5gD6C
v40WTtBJgynmBTgkV96peZuLt2p+Y8kIbL7VF/DhGvvhcbqyp6gaFk9PvexOGQ+/Wue1Qd+XSPCm
HGqOVKYk2OxfRFqoVl6RNjRIwwkx+7odsTpZbIwHoynmNch2ChchI6i6CKIzWC2UwPdDbD8a7Nvn
f8/UXGpNbJ0nTRrnSZNh7iD46cOP27CDCjapgJNcWUbIpaQ6l7yBr144LinxVLu3DDssiKiI51sA
aPjQ0pNt9HmMvnW7x7s5Kipkweoo7YfW0JgEQSgZ0MpcZd35ZMHdDcah+aZCXBWiblesCGpMisQP
1yUev3/r302/Bnhcu1+Gr2VI99kMilh27FTsUkSdhwlKL6PtEueOe9Aj1MtXENtWq18KcqxeW3Fz
aHDD5j6y/R9lJNI5zVrgEhOIVGm6QLAg32BPA1yHjmoM6oTguViFeatVqv1VI5GqlZ3jzX+cY90K
s0djkIUncI5Z7oTBqQvMaDC3CA6aNImIKIh2oSbgj1awW6uG6aLBepqxgb71jXFVUkQKe6YOFAv2
I4A6MTYxHL2qGcvg/Jq2lT0vVxPRN86T3qSSpzaPeU7v8iiFHK0xSmDuFQuaKRwlgkkqMPqtcCju
6WuFXtXiF2u+qrcqNnYNH0bverJiIx4ff3UP++PTw9zbqcc0VAl1SksYfJ8SpzVxJiW44mBQ5Zii
9FJy8kqH92r1S9q3eqniYt/SWNtJzCjbSmk0/gqm9BaMBVxgWzDhwHINHhH4svJg0sYEjqKwAi6N
EvZ1aKay8mVzqTyuqZaNS9xz1YANKo3f7XJyTYKLAltAsvFYFQ1erWAER4olCuZfYJxcBxT3Ckxc
RXvft2jfNM7D2XPPCA44FjiqEQ1DWeZpyh0CGcFpR7GeQCww750G+Q66+KqA2bT4xVOPDyuih217
K344GzbvP6y7OGLKhgbEbJEZrTGQWzZK3mWmrNdw5tUrUfzruzjmzVck9y2S+6ZD8Hx3fHocA8if
7sYwfh09Nl4y+LYzK/fU4SlnBnQq6C7NoiaSvR49xpVfCB3j4xUHjZMy8PNYFLwbP6xQdKeZlVIR
oCr7ThMLJ4VwONZg4QADwubgdQRF/HYzK2sqlkwYvttKeyM4ayF81YMrxx4BHFw5gktTp3ymAqsu
cQoCg7/A1MF+V8a8DZhVS1cP63h9fOXmtZuaA95iawOAv54JMdZWInDeqAVGPaC8A3ljSQfiCFiT
YGYbnRF8AS67ojmT68b6Nre7clrF2qM2QuwbLG70NAIPP8NV/eH+MHyZWu3mWJEJ1DgBFihOVeHB
408WSKfRHwG7QRNHr+FrvcdlCOTlWzU3t40fTNMWpP5Uq09PqTyuFPxVCnm0ZtQ7VNOU4GweBv4Z
B7kQJHhBEkvMnX9VZbxQHzU/vqnJ3IaXjb1d+26V6z4G4k+lvFyVKMH4R8m8eJeDLblphQcudp6C
N2d0NKDSVVSCvF2Y4EzLS0mDzQG0t40DuCP9KkoMZk0/nJvi54rPZDmFwwZ6J2Fxhqe8c5nnzoFN
IlXOqIle8qUX697UFBwaZFFzEsu//r6Aw9gAUIB3b6mznck4O91GPoaXBPMEe/xSoO1OrPOqFTF7
tQ3lwofr0MmX+1+Od49zTnG+oNazLLNFjLMyWQ++Hq+t6SLzSmkPh+O6GSZl/VfPwZKKC4mWxRs1
n9Y2+LSz2/bTDuysu/M5mKyQnCQ1JDJMXJQ4KwjWDHI2ZC6ZL2Ag/I2skJqCFfFbU8T0g2ogoj4f
Cw7UJHUKtjLFyKqCc0vQVKVBg/elQiez1EKDk++Zu1btffpwWex8qsrrTKtezRzY2r354fnL0/Hp
/rn/vMkiY2eQOCETTjNqmcyO4WhwzFTjwC0GnnSWCOdKmSAuKnddxvfytlXqd/1axeLBNFTCYZh7
Kt3PeQzkziVf0x2GGxs92CDCEvQbwMqyzCAQJk1cJZVkjP8mFk91smo6ahYa9fHmcLuGCJzmaj3+
8+7p81CljXCq1vQjjX+gkqPREaySlwkzPAx8OgQk6KSNnmF5WlZvP+FgtEc+bincGi3zS8uvwrKG
vW/Zxt5fZITHjG8xNPH/m/6Tj2E0IwxlEsVzxhndkilQjkIW7A0cBRui/lMARcZnK04PDU7PI07e
f/9pPSAxaictui6Jl1lACKCMYITMUEKVtzb4t5ps+2l7TC3bDme2lhN9OKznUX4ZEBpnqaJ81il6
LLGXDEVGLtak6BKC/3MKbo6zVzevF9ydy73r+PimptE0CNeHi20PH/67VIGxd2QyuLTFMFqZ4iaJ
LQMqLc794dSjIAdpDhfMaQdHSr+CdVfWvtQxsCrqAiKHBuW7s/E0ZQpoIwvhTCQBm7uYR7Odlq48
xCX3xAjNwUZUK0yU1WoVJYJuzTgruNkOI/0y/Pyjy2fRhDHUktyajCf4ghS4rhYD8+AmxYTAKA5M
V2F9QHymf/V2dM2J28B3foVebuYyUxhL1pczcw9ChpRLCNfDybV9YQw4KXMBMuDczf377srY2GA7
aXtTPyTG9mpX0molrfbDe5txaI6qhRPgbaUSdYaAwRzNW8/8xM29/TVEuZo5+2I+ol4Wh4EbM+xT
i5YKmKfRgx2eseg86AnpErx63L7ZIhSxtBwx4utqDRY13TBfLE7PppLFCvUU5SBTPutTo63shtYp
+TisErUFRoYh2efK+gPZbz2VKpd5QlSNKJufBTgpIg6VEg341iqKIi1AG3A6oF1tUEdtYQ9NhwNf
++qNqrDmYEM1oYaAuvNVQ7AQtC1k+WTalniFKQtDDHaRSmNsPx0CR2uQdaEVfak0zD2h/HmbsSMt
Db4L07ozNaihrKn2WUq6uqnfRFOYZBUqPPyAO6u5QKlggBOSp9A01hqLNr62O5S6b/uUGdh//H8Z
LeFFta7nqevwYSE70bhpBXP77JiJWDq5STGBIrDjUKDSTYOsxxSfXdVXPoYFH8KGqsEW9qTACjnL
88SE8JAXBnQwMVene+WFgoJE6XocDTM4pswbUgo736FlItCC6Z+WyL6OXu7X0XuWSA63VjZ+Tl9Q
R5H5HmVBfo2FZvRgfsRMLl3fMDQx4qo70EMTDrkVvtI/w/OoTEFLQvLDFyd1rFlt5hESyo6ExTJw
u0NpKg62f+7GBcClsMBhvDvUmAfKxfX05MB5JUmB8wJ/0wa8gqhpjVD6pFoZUddhsu44pZS16CiL
B4JbE8BewQiYJHzPCljjQCVgsYCKpgAj87wqwF7JV1T5pEp9wGuoDx5Ko3W93diKATvIMlWYsAe4
D2WoI+J9jqeJvIvpI9CsSVNDNdahadielFwlrOa0NVgu5rkZAtrir74lR/cq38cDX2f4amHMG4bh
gtAYwUh0CYc1j/Bdfu2+UqcGlyeFlQmJWU2kihiW32e6T6xOdupUdirifS2VDxOsLzEH8XDAujr0
PVi7KGNFyIe6/0Z/3bz8tmAGp2dPMafn/YsPc/GXbJLd44+KFpAWydQ9wwNqUXHC0bF/GAr0mkMv
F4M+9kyeRds4K65KTM3eK+Y8ONFJruOnp21xli5VTo5QHMZ5HxOWUZTMMFw0Kia5kIzCQltJ1Wrf
Uy6308GDaZfYfLxdrh7yg5Ppy3oNHXAJdFv4fE/W8TIh8x8EBk6yI8+7LUbBhqVIGu8eExcdL/1r
tc9fXLr6pvH+6+xhu5s9r5aXJIvnlaVSni3gb5pcEq/8cJ+ks31aPK8ifq14778VDz9KtYIWcPjQ
L2m1Serw+Uz7/J/h7NyPCea5LrcvJjmcbJ5+ENQs4ZvtAylmx0sSbdP46YNPaU+PyS7Zr5bJJv3g
Xb/33l2Q/Xd0OlvOti/pDMh62biOBWTLAwTmw3x30fmyW6Xx/CmBAhB5USxsiK7Id3iZJpu8zBYc
+aMyHizigIW4erdf96PP0Z25gbvPg6vR5JZ0Dv+jPz4NmsGmoz/dWzu5u43I+812011s46dkv0iW
F6Tz4Xg1FFC8zW86ZpGuvmEk+QgGKbJvzQVbKX1d/CAde0VW7lin7WLSO4HZu7BVGei+FoZyXsBw
gMG91wa+dwxRfwmpjzAyg7kbHehzuZDraBOyQlsZBrMt1NJWqo9POuEhpiaI/A0M+xdH40mtOGxa
xyU8H6fk4ygijygVkWsAdnmCi7IyDG+CeZ8Fn8VeJ0QHsoInv/JvCAy3eLlEDwICRKMFeol1LzrX
Lg43MfiETDaLhn7V5eqPzc3NxLYyAKUCB+uBKlbAPL7EuyV5buIfnxV4FMAkawzDGcWPhHHWiIqV
u/NTJr4IdOvzPiGjzcP2VZae/nazSpOMqgUIu3oWYFWYyNhrcnVnPoeNjSBkjxZtQAEmjRdfXxEO
VPVYGeZ+PHMtZ6IW0UD4kT0F6XxJ5qg7G7tubsKjj3igbTuzWWgi004bowUMYx7CjMbmatAOJKrt
NpvdjG6vByGwdXOHBj05Ln4gTDT4PWpvNs2KtmbMwdzdjuwkbKVOiArvrJ2UbxQCGV/Lnl/QBiLn
INfWGas2AJVh6L8T1dEkclNGeyv01NVBGFL/APMLWYOE2lcEQiYI3LiWXk+MSzCdvwFQSwMEFAAC
AAgA9ZAuSgU3Z8oYRgAACB8BAC4AHABodHRwL3Rlc3RzL2FwcGNhY2hlL3VwZGF0ZS1jYWNoZS1j
cmFzaC1sb2cudHh0VVQJAANu2XpYe9V6WHV4CwABBPUBAAAEFAAAAOxdW3OjyJJ+Xn5FPWxMyO6W
TVHcw+sJG8vdPu2LjiV39+7EBFFAYXMagQaQL+dhf/tmFUgCJLlFj2NjOkZ+sGUumV9eKyurEMMs
9Vme26j546eTAzqdxuzgC/M+RQX/46RJwZLi4Iw9sjidTuAz+g0bivy7NKTFQ5sE/Bx+TuPZhOWH
n28u764Gh/uHFbUwoxP2lGbfDj+zLI/SJD88Ofw6dEYse4wAz+Fr/J+n/mH1OT+8ov7N6HBLuNJF
AL+jMGKZ/QPSShXYtqS6rL5DPfh9gA/Ud3uSkwYMjV+mrHnhV1Pv6yrqXdMiemR7oLSMq3DYssCv
v/4Kav1dustZhi7O2sw0GUvSGS3Y4TiatDgoMjb6Mu5jFWHD1kxb1Q4sQ0F92ZRl6WaE1gkAGkRw
6ivC8gHGBzrqYe0DVrCyJ92yaZoVK3dhLJ0kafIySWc5ururYRyYMnYsBfdPTxTSN8xT0h9Y1mlf
MbBsYIB3pumSJHHk6OSJfmNoFCU+Q6dpWtigR/hBOfPTJMglafSSF2yCLsAO91lUvHBNFcwvBBSW
UC9mgSQ5Gc0fWIDGDxmjwQKJjNBZlE9p4T+gP2ZsBppaWnlCo6RfiBskafDssykn2jTZ4Kvjnp6c
uSeOMxiNUG908WE0+PB5r3Y9t/PCbp8Gt9fuxfXnk8sLuOns7JbfRQskP8uNHyLXKFyDQA2Ozs3t
cDRwr2/GF+f/LUmfr9Atu+fxga4ZzYAYkW2p3z9GEr/DdceDr+OVsKs4YRkrFMOHfv0A4Tr+jV9m
fvodZf3nw+zpGY2u/su5+fIXjFjpBC6KfCrUNZoyH6LXB58I02wiDtqSc3sy+nhx/QGNB6OxjQ6B
rE/9B3b49BAVLI7yov8UxYFPs+DgoZjEkvQhTj0ao3FGue/NwhAirZcB1yxnyH/I0iSN03vgGs+9
cc+WNOXANDVimlx3zvk1K7g6VpT/H6XBjTAMzVBloW+GaOwMwVmSBOxnhIFMLF/VQh9cvaBZESX3
aDS6RAm7T4tIyFTxUg21Ey+ma9ZGXqBw0HbBDlAIUYL194hlkAXlipemkQ68NMMPCdnICzQJiQ0f
1FlYmqkabyBOQCydrYhjvm/ysmT8BuJUvNaKo6ua0kmcwFK8jSyEJ0A6K0lbhLwB6bqTzUkbGOM3
MALTqKetGAHXjWBp2OgUK5uMUPFaYwRLM2BgeQNNVSwWmiIHsmrqutaBtG54FkT64Jlnq6iIXyBz
FCK2nXPQU/otYkA/zeg9/IXDoDYe54KTZXUxt+4pWoDXcdrIRioHRxgUq9HStrccHeV2deSkGVuH
TQwvRKMqlXVUXWfbteTt8JT8Mc0L2wa87RO9L+Nz275l4bDIjjbefvzLL3voHYISZR3hA386tYmp
70m4I2orkDHZjPpDls6mth1EOc3z1Icczc5Sf8bHp8uUBizrLW5tHhdoFUNDvVkRxVDC2Iau7UlK
V6UqAWHfU+r/rjvc4wBUvcWfdONvqtiSA7RBRuDcUobgqVgbjPRgawBBXVN1o40QsEpMWVdQeZ1t
w98VECvHBA6ohHvNwwDAhNJW66YDiG3DspY6OOfl0Jx3kdEkj7iY49RJJ5OogCyy9AkhezCEkNwX
/qCCakpP51jkPUnvioX5NNyAxRf8oVJ+jHiVRmN+QqiCYOBbu1aECzYsUIbR1SGIaumbHSKMkohn
Gf4/5KBekM6gVhfmMJUVewgYqrknmV1RGJS94pYT+uIJUQeTafEiVGAp7VC0OvMMNGszTzGCVGJf
QRq9ZXk6y3wmuPMSa73wBJBguaMT+EFgbnQCmOUmM/H/SViw7Jo+RvciEIcphOTL0jnnCG8ZjAN5
ARCSvPjlfY0wFNqjAlLe/nvkpWlcO3USx+nTkvQ4vUgeaRwFd7eXwthEUyRebmwvlqqoFIbkJYsS
rkPj2KP+N5AMPvU4DDEOYNQLZ4mYEdLYxhoBX8ZKR4Y+TJFWGD4w/1tdk9/RYvn/iUBS+TkkniZ4
CHbVAHykW+ZTCQMd1jJfzdJOHIEriZFJjOVnMD0KWMkW7LbEWyJb4m2fWTV7J7/IC6goXBdD6Ffm
OHpMowBtUNBxOSy2rGdYBLSjdrSeB/OKzdbjH7r7fsvNmyG7/8M66BxqlaI0RW5pSuV+rnXNFzrb
lC9i+PslKh62q2oaGpiT4b2TDaJsmy8UQzHXCap3FNTzmP+KoL3VU02LiADGMMDxUZrXKzA2YaNb
1BohprQetXz4L/lXzHrzkxzAkHIokGLyGgYCealX3VoOFFjjCcTsBsXyNBj5hS9eDB3bfqBJELMr
ludA96j6m9dA1jTyvi3Ce7Rw6qZk+3vfEei4J7hDikp5ZbxCef/HSQvnUSCdfKyLxvMtFFcgexd1
EaKokG8F1orQLfNZ9MiyKzpdptrqXCkUn0yWjUmQqyFm6Usw7q/SKk2qQNJT5G4WZaGFm85VtZAB
XVBx6ICPR92SiIClKxbAwp1gKcyzPIJaDFc1tkyUsyQCL3OnMOWrg6rn0oCFdBYXbsB4n6Fx2TE6
riIV9SZskmYvtqITmP0pSkfcjMfqRtw3yUKZgp+i1/hpnF9jRP8HfaQjP4umxTJP1fkpzCA0hBpS
THhnyWWagltNWcY7ml9g9l9y0WtSqRq3htqRi+rJyitceLCJ+QiBSqW6wjkv59CcXWN44UzO01kS
lH3YlaaEpYamwTByXef89u768uZm6F6MXOfk8vLi+oN7czd2xzfuiTu6ubt1BrI7HNye39xeued3
18744ubadbnMhqTo3bgGkGf9kmspwVk6EmNsLouCW5cUoytFlYR1ivBHzBwAnNmRlM6IieqEFv1r
CDoLsDVS08eLMYz5Xvq8ofHjy7JvEQ0BHWeW8aWjwaMYk9PpRXLFl5yAKtEkInelaughqtLGNXsu
yfJ5bMolV4kiEdyVpAYTVPc0Tv1vd1BAxwuyVzyiYHJ0GeVFiZrXHedRDPkcmBlYIo3oPZlON0Wv
4GUo1A9CHblnw9GCCfclWTckQrqSUsAB+79dj+qLDm7SBl/9k3+DDAbC8cU4OxLCQL4q22m/c81p
qkTUjhDkwJRXIGSzhBPUTTCF1o2gToluogY5PjEVidPQJQIBF0fe89Q/CF7gA3qt92gZugfpVkUu
XO+m3r98d1LSMizwO6MbKRpCoYY4pYqIaoG+zFdXY1dyN1UMX0ZzApD5e8s1KS7nwWRiYwJlALEE
OkAWbIBX1xvTCLhwUHaEua4WLVT8auvUh6QwYUFED86j+4/j8dChYqGvKqda7dSc+TOxsLkBher7
lq5hdHrtelGieMJqqt5qb25DRQO9+nk+AVel4/SUE4KwVjrTUZmFbkcnw5kHzvSJvZRD8fCTM8K9
EfOv89ypqrssp25eVEUd/JkleXSfsADFaXIvJu9mqw+5FX/dW8NfjJdGq6e4DTkZyvqMPjmgGSA2
Tm9zKkpJrdUe3IKWyUKTQwM6fHFSNODElOOfM5a9wNFR9G92kZxGRd7jlnC/sRc3h2OiBFPlVhNw
G45BgBEPa+aMhiOoUETVcs+Kihk3iKABZU0p4GLGuQqAkFYTcBsAPmMlqTUycjO3rI7KY+IO3leB
tFoi2l8iWjkgIJZ9U9lstQi3wegZBDmj0dUajGLKSVotwG1oEg+G9UsX8GfULzh1oHs9GpWGfdZk
y81n3r+gkHSnwlOFIBG4xcICS9vwSTHk5ZQHTenOgcOyuWaEc6hWqzu4DUiep8EZziMWB+4iYEZF
NvOLXsXoomCTX2pWipKi+V8DKfeimyc4w7OI8BoTt/p72wCTtcptv4KinMuF53KpP3DAWV6ULXOB
/TONZ6xypyYWDmOh0BZqYQkozej+fArWagxugZTP4UtCW0Cr+XawwLVfHt9vwtuvwxMWxrxRSrrC
C2A4Eq4NvvgaQlEOaa3W2vcZBFoYBgiGsJi7CU9qth0yGPYE5d6qqC2hdK3Vo9qGJWQ1zhKkKRku
P39Hz+MhR+mk0xc4+0CzWvwQgltNpC2QGKbGKiTV8p83i+Jg8X+vrpiFF9ZuWCgkdgPP5btQGj6x
kGSJtR2I64RckF9hthK76wi8wq35XxlFy9/VQqbcaoRtoUg9gBpYxPt42Ix1DtzhWHhKGmbRY8PE
TVk3qbKT+t5MO01sbV01zwvNEbnVtttCcSrDryjuM8ui8GU1KHy44J5f0Bzsi6n7KO5YP/KunHYz
ls/iMn4MVW110bZBTwO/ljw3QN4MfP8NgCtYbfXWtgFuKlXFMB62sVeZVMFdaWI1bA1e86UbyFuT
aWzbfktLtavnZ9YUD+NheblT183aK26XasHEavXIthhtQqz5NbJQSkC0REnZSB9nM74FgT3CcAOT
4cUCnWJgs9Ue24IV0xSPsxJUBxVNXgfhVhPsis+0Wr2IOi0TexZRqdjmwyfDIWZ886Mo+xTTUNtN
rjX7b1o7lJjlwezXdf/nWjHubi+X7cLSnK4TUwhUX8OiYXkPuN2nKI5HLJl31M/T7GRWPPBtyNXO
iAcaxyy5Z4MhtlznHMjyCxaHXY93UaB6fEy/iaFcsdptsu/h1g1V1oMtcGMT4BYPZxX2k/wl8QfD
T/4dJiWKaQoJjmXnj0Osl1iXpIafCGkdKqlX3Sr38xV9HjTEcRURUXK7S7eNIXAl0Cds/pN74YgX
PbM4Su5HrMBK1eosRVjF/zho61XBosHHewTV9H5Nn6DewZB9Bu4FKObXu3xxuiJLkwAyUcxoXtpM
9Po60ZZV2avTLg3FWaQz3pIwRaOvE0lNJnWSonvhBlnVwuHdKtxVAYZsrFBcqFSDiQtv53UiSQKN
1EhmaVq0kGrEFK29bmQ9iPwlWe5dLHPLXW6EN3ix6NUBlVxsO3en5bkG5UZy0YmlBgzNL3Sf/ig/
iOkGBCnv1HUiZxAVlx2nBi2y6D0pr/aeauroT2hC71km+k1LDCBxwuKmrppdL01lIUXfxF5L9480
F+Ep+k2dlK1jXaspe3Kf1eNMF42nbp4b+EGL4EJBMHeaK4jYPyCxxhTIJNwh/hDXZ6yYZUlD8g4u
oRnmepdQTDKX+w1dQv3bSaz97STW7XqYX4/E8sN4uT+3iyrUIDQUNKE8iPJ7t8jodJ0WtiFEPLIg
JBbbWv3kLRbITKyo9bW2RePefximovGuwNBJupI1NOavLuFhoumtHvEbrOE1G8XfXY9RZSWwIDc2
rCja+pboAHdzRMsKlo7opYGYoBAsWrkdKWG6pLRY9dDLjmtHd9YwahNaOrPxI+GLZUDn5mzyRKPC
5TNxGq9zW//1kcSkWCWBHKKEJmkeMyZ837LmMeu/e3eA168ONagYsiUrcm2XQvEQ5dWAZNuCsAvF
Z22nQ/lMkW0Hs0y42lGtH768Spw7wvF7XhNXP/ExOq7tCTK0Vjh8fyOApTPmIW/CK0fftj8yvo0l
9+kjn12s7sbg5evR4mq+hyvyr2Ywuzz+pY71RySK51s2NA31XHfCqboelMg2toz2nvBtBAsgfbQE
A1X55XxjNBexXG1qcyS4vQl8C46mJuMlRzG5GNO8pi8OYr6RqYVsf6+3d8x9hbtJlU/KXckG6i1I
HTzYWNHae8K3gabKwZtAGyRF9jLkE6XenyFXdmCs1rLSNoLoXlCuGtYcya3Cy51m6fPLUS30ZkC2
2mkJfP8c4vd/SoH74N7LbTUWqW8TMva6Z9KN6d16u/SO5bdN72arVmm0A8pdmLua5a9Vs3y326J6
KtWhSPmtZc5eac89xHuuYtcVPyB2montL6CGZhZrw17p/VmmwnSu3etR6U9u6WPl9jDwvB+pbDYE
kfl2QWS9cY1kQRDNNykjyJZpzNtau7j5i8XN9whq2LQwRu2dhEbH571UlYaaXnsmZuER1Vce2FES
FRGNo3+zelmh8MeNWteCtvmOKI3sdR6XTcOc7yddqRMWgx421u3gNzuz8vywZPVUhOPN3LTWEGu9
WXboPC6+MsTit80OWP7bdUAw33Un/OFkVqT8ex/8H+x/aCTwdFDElJd3D67/yGeUP6gFyp9XWWiB
f02EW1EzdKOVILdwepMqRilkKRsMtEFUbkUvogkLvgDt8jFpMR2D2VjtuUq+Cb68DWJ9WELKlw9E
d50zGpjMg31Is298w25a2PYUPi9gQQH8wtcuRTwuVmXFPSM/nbLgkk68gB7xxUAE5fHyeaeVS8qa
un0J/5YY8VTSS0Inke/wmSl/zKg2HVZ0CNTeEmL58IKsdp5Mmj4JDF08dVUyX4h5ymeLNjes2Ml8
JM5eApTj3uJjB8RYawJ+sM0fmIhqCsNBY3o0T7rzz0frwqV6QHUJnGVLebigi1aDbf+nK9dn8nS+
Te0tCB/Pp1F81gl+kHHCvb3yyQeTPzneJC/Mqsik+7T4T4xaxv/XqPW3mBhiZZfCdyl8l8J3KXyX
wn/WFE52KXyXwncpfJfCdyn8Z03h6i6F71L4LoXvUvguhf+sKVzbpfBdCt+l8F0K36XwnzWF67sU
vkvhuxS+S+G7FP6zpnBjl8J3KXyXwncpfJfCf9YUbu5S+C6F71L4LoXvUvjPmsKtxuNmzvmIe0lx
MM2iR1qwH9gmLxvlk8Yx82sZvNNDH5qqUfFESgnmqvwqDpHAle574zeahbydWdQ3fn5JRn71Uk7+
bUL8vafV2zmReCUE6ulq34uKPVtCKKPP9so7MmUwXOZtOuFvOhHUT2DZ91joyzJnEkQbbskXJ7hs
GrM0iwWC+3T1BBV3rDlhcSYoM9cw4QGfWU1chhryb3lGGZbXAeYncJ0Uk3WMPdngkmBlgySYtJjo
mL84BE6om5hoK3eoVKgrmjbOzF/rhrIwbnGHHMVP+NkaWITTki6rF2k6w7vyTacQU4MsSzPx+tTq
5aeLW1VpzB9Tu55NvPk7erEqSdJplNDsBV1MxLsqpPmLTp8X7zhFfdQ8qIB1Xv8u6Z54b28fLV7c
i47ME/Ps3FC0vqOe4D45t7T+yfmZ01dl1TqHY6ajy8d/vZekNiUP16kj/D/irmy5jRzLvusr/KiI
CtDYl0esNZ6xo1ylmo556+AqK0qiNKJU0+6v74OkSCUyk7RmWtFTUSHKTAg4F7jLuRcgUafjp9dr
Hq6+3dy9mPglheTSK5mzdcRa64lwphArrSTBpWCNTMq7eELyUY8tnsVijEeL5WYzdRHSxJrwKJhM
XBAtfCFCcEsCV5mEYAucbfKB6//tmuyfNThXKzPGuUH03SzGOD+vr+fL71NoqeOCR0MJi1YQwZMl
1nlNghJGxWKMoOw02n2/5zDvW/SRc86XI+R8w1eDGR6QjQnskVJLnVGEWwHsOUniOaVERkmz8iVz
OqkDbc/T6Ns2ffxCwU8N8Uu3Wo815BRw55llWkNlk0xE6MyhxsEREbyIXmvtijkx6acRvzzsQ10u
9962gbpcCjnpa35f755+e95u14+zT9v6bdDrVXiuF9R8uGSz2gmrdqcEs4VHor3ksDtGYXLRksyo
ETxzkUw+rS+vQ7QjzBbdy9CfnP+jVtL9RdGtpCtmNxvz4SfY+Mvs1L6unh/qNeGNN9G5ZCEkSTRL
IqTRBJ7Vk6xSihYLbmiYkupMxz10UI/VyKkwqlariq7/dTxf0pffP4fH++3f1+mx3rtTp17yGegy
pn8mZ7w6feuEydoTywIlghpHXEiGMJ5hAiU6HzzA7q8j//j5ZvGIUPQx/w0z+6Iro2FOzP+44cUe
faUS2oJ8vkp1fHPB5vXi5HpzwYdLoemM70FjUkWJJEYKr8hiJD5GSYzylqqYJWUJoJ93j3VSP9a/
7o1Vb3AUw7HwplaDGbz6Nn+sV8teyjprYqbxF4dfgSKlxC1j0N4cA7xdgeHlzIh2oTjkIQEhczx1
X/f0vBysbvfxZZhpQ3x52MCXlI/h478B/C/rJ1CPS6U74PUFoAVVzBrG4C3g3OCWHfGeIfJRmkS0
NmsnxqB7aLtep7F2j1qkmo6RKuY6pFiaP7/c7A7fWwSgYqYAMRTNeDGJFC9C5SFwbSEbIGYhBs5y
jOosRL9cIodBCnzCufWa/rleooPpZi2+i1aE+ZRcq84V1mzi4Wa7er57OIjGnJmxLkAao4wthJaO
YklwDKYz1iGVxKPiMdqe4o56akAYrscgTHXHL5eR7G6fjl/pdMnkTAKB4TGx6CVhJdRoYTjxKWZ4
KFi6kciInG8R9Ltpxrdcjcd3cjmIB5/nz9vltwML/HBpuIUF4c/2v1RDKiAJLgpCtQcmqoFJUk8U
zYnxiPgW/dkF774C9WWAHy55i2e6edvmohVwNZZ6OWcDqXt58qWeuepxuXJ1AZh3SXhKaGDwXVnA
9eoiCJPILbXyCB78rLCvPU9hj73nFy3ECaexGVHR41cUX5ouTCsjhJlVxwvsmWelBEyRW3hbwR2o
nQj4EVgA1zDCyfPO4/Adyid83cvTPm6o2Bi3omrIOrrvCv+LP44FdzKjM8GrCN0v1bEwY5gAe44M
Aa+D71x0JCZPs83cIzi/xWG/jDUtxMvDRgYGajmSgdH5wVL/+3n+OK93ra4P1morkaAF9ugKVCUi
GREeqVkQPpMsTRDK6uRo31vsSxgfJ/obgFlMgdkcfNey3qBwwGGqQ3ZKWu+zIxwugggFHC5Xn8G9
iVIjGksziaPXVQvBiQkIbug5Pv3SefIvXWmvu2qgxx2VExb6Fkn2BZNjoiFeCEU0T86rlCNz+i2L
ORpkellHzQYCraYEGrL4B4TyXlI2+1r/DaFoJxXXXYDOVhVDI0kmVfYIQhFqVhpZURTB0EFbzzvD
+eNi2jc0bvBri6Xfqns0kG8zIV8tM+wVuKsMXsW+5jDmumjOhXUQxUOKXP1dQF7lkcuWkFOmLGKl
zsvzy8N6+/PnE366a34DFj0FohVhridE2Ogh5/t+t7g/3j1WCXP1IJbKGjyxLqEYrSp4JFiFZWJV
hGiBF5vhGW3kb2J8/UFO+MJ+k0YQLibWAm8e7PeusrC/1g2u3dP8lYJAevhBuWf9KWfPGDfEwFSw
KKVG3IAfGVEqBrwZ3uQJf/76n/H+7uEGbKsnxikQrRiSTogh6UGlbrsQfPRDWs0UndlK/mETSVNF
FGMwEC0ZFAqZb45FsGChUopOeqN+jw0UrZdjKNrMB+7oHop4DULNkAHs3VD3CyBp7pwJoNIhJuSx
3sBmE9MkZYOZ9AVukv+fdXz/rAFspszRLBaHuVsf0rPj9NWJK8kpnmo5JuRIRETgdjYIZNuJIY1R
UcncUr9BPw0G5ybCyGKuD2pY7ne3f13tt+2OPkHPeLUjVWphjYPhJwmGD1iwI8FIzAj2xdXii2uR
jHu7aMc1YzDLlRz4331u/Te4XASxbglB52asWoRPIVuhFEHSq4gQWD2vQXIS9CtphqQyyh9y0Nr3
9CIenl60AMcEWq3X/DCFN8vneqfezB8zJMVm+L9OIbyqC0xqIqxEHpckaGTEj5KFY0klmLFpp3DQ
Wx+Jnki+rT5wgtf5u9n+8SpeF7cqseWsAmJwjLBAACoGvlEHC2sQhkCrqC9CBiHse8StT30MTYTe
/tHIxBidkKkWcRb9HZ/VdrdbHZ0kV5XrVnngSDDFzoIn1sII05EEmAhRAqYGrg4mmSbdzLjfASw3
AUsOnc3PV1cfLuWeF3Q+JkhHhUC2IILItUbtkbgZ8B3QL52dd0zSs/OLHqcnDg9ahIsphBtz8C4/
f+52Io5GzbvUFjlAQWoj4JYpUltHYUAg3MjarShI2ykM+33ifDN+g1yKCeRSqeHcrrfr/Rf3zm+v
nu4f0dmHy70/4MJ10thoodbSEsldZZfQaxfBX6Q20QmDqB/cmwLkeKgTizBu2IqmxvRFK3VkYOV+
+/R1/rhDID6si7JdxYdr453PkkgmoM0I+1gTIxChSopOK21LOV9Oeb099c1Jtv/9hLL99vJtmbuP
E6AbieuX+o4kdnZ5zFPuH75vwDxe9dBUP17TaBMiKQKkRkj8CEFjHaNWJdH6HW18OldpuhsgGbN7
vVBD6thp5adf+h5SzMSeKUhNO3BCJ1VLhDILBBnPiJNUkBQ1smpLHbfnK1ujIRoHuH/YQF+sJ5zg
kqqD2nzdXr8WiDqMHJ7EyESJlArOxidHLAPHAuXicDMMqvNPYGyW/zh4H7Jhq7ERG07FAfLyp5/m
i5sDakFNx2gd57kEmCnNDu6RqUAsN5Rky3yUQhoeaRsP+/00ALgeK55Z21F9ff9194fqjqRyJqsG
ItYxVnQmKVlky3UqbYQGRu0C51Rl2RWnz9rbib27+PLsokW2noDr6MFO4l++XH29fb6+2Q72Kl4c
N+iy8Nx5kmptQTjk0DbTRLSLysA7yKDpOyVo00haaRybkmbeMbnX6Lq9f7rZfH91dYjZtJMmSRtS
FpLQYiCNRHbmaSmgIcaCGjlrYjwXtvsdN8Be7s9qgFmplqOie+9arkO5wgg2Y2rGadUPDZsSJRgS
8EoEBX2z3sHKpECAL1zGon9QgX8d4lQh/rXFRYt3NSGEXQyE6NdTP9U7o+qVA5dc2lmtp3WvVZCM
tKFQKI4prMZIC0aSwfiKsyIkmaMNb4mRU6OdZtHDlq18dpzJIVVZb9Z7W/gzXX0dbjcoQ7lWFPZa
KOJjUrbW5AtxGbJxi6dB/Ku2G47wLloBNhNSzYfbVbuH9Rr57eN6eX+9vWlLC7UcCh3sqqGsMxSX
lXcWq1dAkOpevap5IUwmwNMzG6NU+T34+lWH6rcpUE29Y9isnYHl2CUja3EHr1CJxG/r65vd02PP
KahOTb2hCflkLVwWUf2xB5VjDnIHV/f8s9Ps/5H/tLAbqbXQE1KL4wbP5Jm1S7C8GdvnMCIllouM
BBk+8mwfCkJR7Ir2LOacnVLunDNsem6gbcw4dbWb+Wagkmm9eL7el7J2FVl1H6yrxXPhJY8KNNSB
XAiEfRhc5uBp1vi6bajeVoHqjzA94/0WrQwLOiHDkh0J5t3Dsf5UiXTwMhSO6TNFwk4EMlyXkiGa
uehysCLHMqAYxx76Azu6HMc4x9gw297LHu+3m5vrl4tGakRhstu+75JuC33IVGIWNRgGprSWoLwi
xboSaI5B53h+Q2Y8xql65KhhIxMX4wqM41oPsu3jsSvBaHW+1GbWVR51TbZEKpl4ZbvtfCOECtlk
eU5D7yamV8pxpEbeICeC3MldOgWLAZFDFCi1VlYLpFZYTnhC2m9UQST98Zbk+Z06P2hz0cId25dz
epjJ1h337hbfWovZb9g5w2diX2ST1MRau+Cy7h4xVTf5QTZ4SoFKTvH2++2qHpCcPhlQn1604ugp
Gd1gnb6tbx+q3iOXqgW7bo9EJS/B9AgNEUme8vU4g6knFR1VMRVZtHyP2PVvGHq6UX3SCmOnhJnb
4ZbW8jWIQOVsF5LrSyXiKecUsiZF1XMPoUrFkyRcwKbhyqHZb6o59Mc4kSn2WvSlmFM13qicU70+
RJzPN9v1/NHfXq8x+OtOj+ZdpC0lK5lTIYWCP4lI69a29PDp3oRQa708/YuY1ATQVtAJQjFnih2I
4uBOLZiX5bUyWNcJnFCIxDmpe+G1jh6hfTySnGIOUmepfTnnsyYK2HOm+BQecYhF6WZ+vb3f1euo
1rtdPQe8v172FV938oxLEXSAyrC6P6WQBCOJA99RnmORELK6PdFehDrfbwOR83FePufCDs6Ifp5v
rz14+ffdTQ35L16pe61VYswUY1wQX48RCKsQ9g1UBHFAJamQRBv17mSsD+nUeY/XFq3QYlLo5SGs
XS0f1+vtb+t6F8xhLSTXM1ntAVlENC4xIpWpR0odJU4q5KLBc/BtZlVJ7XKMuxugWU2gWbATZzg2
TXTrTnMoxruja97LkhIFlaknC6j3BI4H0U6H4ArIWKHmTQc5fhTixu1agVZjJjRX2rzuZS7nPU+j
ne5Stlx0pMgwiSrZ1iJfQAoNv6OdVyLm6Iwf7B81HV20o9kpCEPH3Q+GU2eYcuUudfcvx1zPlkgO
xeYJpgebkzooE+w/GW37LQYiTCipWqyHR2QygNMacPCz2/KSjhsALbYqgdWBeKkoKT5yy6AHxb8j
QfD5xHmZ3MqyGOe6c63FQJZw+7x+ur9/+lY3SeT+ZGZ93XTHiqnhGQ6GFFAdrEWEkwnI+JwQLhqK
lF6dz/g+/XLs/9RpkGODBr1ejg+2zA3Tvdpl70Qe38cTW6IAraxnMGsmLh3yCh8VKLEGf0OykZgc
lS6nTuTNjVQTwzs6wXy7EtGnX6pG7EvU0rjuWI1JjkfQ8GxYddCVkGcYGQXhcgYGaFz5oVK8dH5a
jV8atOAnKn9zsxgZ4rfnbfdRz/3QdVPZ1ACju+p/MoVbFQnyx1w3IREArRdEWa4lEwoRML+pJNUO
ckKQtlErzMQeGt4cmuTvMfbPNBWVMziSgNeok18/jeBMyITzGJAosQBZ3gIf3U5DxoMBzAlrMys9
qDDMd7fHvI2LehCjMzNWKqhCWEAkEYUlErzw9TyxMiYnzPzZ6sKx1xbSykxA2rBDqef273fzmXrl
PZU4RyqUYwGeS2HaagLso2WEJqOpED7SODjY0O+kGd0uJnihmx83H/52dwuuexiduxnris7BJx11
Iqmomm9lSrzmDERe6VQS496wwaHaXj8X7VgTK+I2w+S17uTvDq63nhFfr8rN7frzze6pFmq7U0t4
qcGSJQ6zMIGYevBYcAXyxR0cTaJecG8ZZ/H93HyL5fSZ9tc2rfib+ZT4i+PB6r3qLOrnwHdHWtCJ
iXQ2uaRI0WAzQsH0g6AGGQhIZuQSBqTOaWO/ywGkcU15PmdiYCN1RZ5uj5isqDsSFVh0NPksLLJT
i2TVskg8qB/hXnsbtDGa27PpQr/jBtl6IufEm+sz1GVW9ncvV2rOYcqMdhno8fd6QLmoYDwoeoiw
aFG8I94FS5IC0WKZOePe8TT2Ac+Jhi9PG7E3Zly3q28eFuSP9fe76yMb5/szY4ZFJKcgjJURRGRH
AYSNZGej0SzokqfPjPX7GoAwUyCWBzf1vP2fm+2xJivUrJLEopEgQg8JQnqtWzg4ywBU9UhBCQEJ
Qnd+egyj31sLw03kjRs4kTaPfbidP23uH4/VNyOrdnZ1WOcdYiW4szHVdwpBbD3woqPw1kYZ4MzP
loibngfYFhPY5kdbXuzuZvQ4Q92HEzIDg5EwEFvrVspIEjBlRCVVfIiGOz7IX3t9tGPPJ4x2s9YD
0/g11T16VsvSgvLuyHWun0mjhNvORTIJY0WmWixP9Zwc1fn9Nwt+TdNNfk19mRZgrSOZFtQdz+XM
n5/uj3HR1jTPOZc1o4UgVEe4fjAhn6InKkcqXdAqldDO52sf7dBunCQtmD0eYP/3r3xwjMCUpLlA
TM6pfhbR1I/UmkLxTxZ1TlEXzt7pGMFx8AYynzhnteBimEj8x/pxsX6831U9ONAwFqSRMsA9qLoj
bjMHp1GaZGTtghtaeD6fyx06nQZ/eNrAFRO7+AtRj3SKH+wJzLL/ailn/9V9xoe+nDfpqi2JZZEp
KAmPtmYWDMadLVy5l7Cl5GQp8S188jDCtDyHp408auKU8kIvVv/g7Uq65DaO9L1/xRx9AZ37csyV
4rPkJ4uW7GsVCi3WiOxu90Jb/PUTkahCIYGsrpqZfrqQRQDMjAAyY48vF6//5w/zEPxoCQuuiiJy
znvJlAZXBNsOsNjNwx7oklLSR2diyuIa6udztDmYP3FTEzy0uLg9hn8ehy/3X4d5FZIoTpRkKXOb
OioiUK7AFQUhazshlQTnOhtbVdqehOpyvJqYfi1Pt6C9Vur+8/3jx9/venSN7fhG8e+Dp6kTA+ku
sUYzeNbZWHJG3MItE7PRby7dJnrOuYOH2xWvt7u1/O7Zbsnrdx+mUgt2yG+bQ0EQFobzIGDZK+yc
F6DibCCpy9R4DpI8wbd4kxzBh1dLMabbNzUnrMWeXqV3wE3GoPjT0367/1zassY9om2p3AHp7oFF
Cm458Emwit+AoAcrjTNvrfHsciVJNf4r9STVcwtuTIubped+iu6XNCb+h9klvIJbx3Ds0sJ+l8CB
J+w1yth6FIJXniWdLingCzmE0/2Kh+12bUv3O7OsIP/by+bx+dvYig8U44ITaDeXbHtIDrajQqwG
bL9XsLHAxO+EVj6ryLNs1cPM7YBp8DP2wHS/In1ga59px9hUKPm9+9GFv6yyNQJsfoMwBwrM/Y5b
8OF9xppJIhwJzGhG/6i6lzmFNxUXfB1P2/Hdssxg83Ue6h4reSkRCsReKe4X1MdIeO7wLGD4MthR
jJl7DfacMNK7dOHLuF8uqZD5E3MWBtnIIMDFKYOAzemTEXxscM+UcM+y7yJHIA0TfGctc12iysfg
CXGk7SicRlsQsWsQIbcLH7YCifoTx0IvzHnBQi8rhgbQERmoSl57EKkkdi5w1jEtDQE/wQXiXvMV
5sNX5Cm2dqYGdai4nNXmDc+lbe5YwGWmUJTHxhaveWdZBPkXne7gI4P3YKyNSgkhA3216m8+ck3a
TjRIG5Z2TMhYBRn3j0P/fF+ikmSUDtSW5giarcReaykThsps7CzVFAxxE6RyKVlhLtZYTqNfVrn5
iucXD9VcD2u7Z9CUnez99H5h8BvmslawqTxPCsSJc50VOnWBC8cMyWD35zcz+I+z39T08RbRUzLp
YfNlFrorgcMcIrU+gmviYdlk5rGVOXQiMJ7AT5eZLprhZ2Ms5jatue2UJyxsv/On2D9Tx4ALoUyC
2o6dogjg4sBLwgIt8MhVFkxHFuLC661HqwixmwYhWzV1vfjv3ceVKvDAMDVMwXr0IG4wkum1jF0A
c8KoxECNqT9IFZzoq9jamsa33Rq5iAtWYdEJe2EUXh4UsAM3GHwebHkEkWq8dZjEN1yp7BmJl8Jw
9dBzAm/FZi1hb/UKHCfkv46iBlsayTtValoOv0rbibdglacuEhCzYKZi+AF8UOZkToQZF9Xrimoa
/9yeP9ye0W7Jlqx8NbhIp8DCebmbcopWA71SYuqKBNLBKwbFqi14ycQLKxYZ7nOS1pJ+3UMNF3fL
KtefwEV6Hn7ZD/8+pWOPGr+oAmYMFeDUGMxicRA7nUdfnkqpBOGWSX5VDmU9zznJtHyu5mo3rLna
kSkItts/PWyeT42uktBSyo5LNmgBNrzECkOHwSgN+lYmB95bDMEEHrNt97LUg97UU/cNephs9Lo+
FcSqAoCD5RtFm6mxPYqrBCYtaFkO0h3WqdVYHpc7UGfaMw07zPu3cK5QQ308knG+PXZ6ZM4qlcNK
dcPF22U29FXFzalT2kXZyVAqzQhoNVRyhtGYhQ+iiTLwv1Pc59SwpYqyNQdKTXbR3z/kvFDDXIND
b6MDT9CBGoZ10pmsSJe5FhlsyADm/Rup4dPsNdFqveIpiLgj0fv+/u7rSRGPjfVEOuKwUomh64TF
rAbkR5eZDj46pnyyy27W2Sg39VS0Mb9ZfvYTCkNB7MAIFkWVOIoSyug7PvbKWyK0ziCEveES+2No
Z1A655gzYR4Wgo1Xo4aUaV4BDin3a3a2a7FIt3wZGPxlvxvuX+87CTowRbH8SEk0Myi87aQ7qlxw
kWvaDKfNGJhP0WZh/sRNTW/fYqI/romXu/6UUy3QWp6CTay7oLUcS629UGAS8QQmirImk3QmUdI3
lsSWt96hUgvrYY/oH8dlqTUqubI4nbNgroF9JiJCNYFf71Q0nQoOS8J1zuJVy+E0bE2U0muibu1S
En/dlwb8vOmHMeyAPYUooMrfqIOlAMsA1IJgWDRAtOkcA/MxSJbgkojSXlXzcJzhjFA+3L2pqV0F
TWB73PaNtvv3j5uHT/u+lAQWKAosVQa7p6xMakCwgqNLuDPwtWPpiAL7JwYJ9ruO+UIHznyC80Un
xyfmLHCm7ZoFZqYmgPf5n2O6etE1B24w9x7WA8HWWi41GT1O6gOxPBut9RvBmiwoqKk3mzX1km6W
NtPm3wGmedwcoPmwHJBitbsZpS8FlcHADQJJZhBBMsH7x8pMYx1jJFEjGkpunub983KGJfjfdL8i
Xw7rfck3my2soGoLFJ30X38yZdWYMZQtsxcULE/wWMCjFpx3TlvM+VtNcgBRbcibuSxjv3nzsfFe
xdVOrO0OvpMTrMN/No+nIrBD2pGDjM5KdQwxHHhElzQa2gErIhhpCQ+LErDZIPXkkrcm3y6kCrgB
+eOxKnRMFhkBXgYXQIPAyGtmDFGeMAlmlKMkOXoBmKyM2X5L5VZF53C7thIEoadCj3993j8PfNIK
VBVZHMHqBXmmO0sdEKmxQ0Pq0CllwQ+xIRq2yGhWA91Us3HWIEFM1lX4KX98gf9bpahBvIK3jNLf
YaSdKN155l1HAnPEO29c4DUB9TA1BeumfivYbd+o14tjlwfDp5WgxVvErl0pLKhFsMvhZTDseTaI
XZwSCVhvfwVmSTzbtHG8e1NTt96ygpN1EurLl/u7Hzd3Q2n8AkNNFYFfwJaTLolVKTHYAKYVIo6C
ecU4FWBrO5bsW/gOcxLOMXh64qbmp7EyuFgW1jThvA65AVpaZYUeAyzArnFOeUS4sVjYFztPIjYp
2xB8phmU3Jsn3iZyXkH5Wqp0wWWL9VMjwufN3a/7mTIsFnIIIpNIwUkCrTEmPgJ6g4mDGsmRGMYW
9XezUerpe9uYfpia2b+AWnya6sFxQybYANYjiAIG8sCsRVORqw5cMxmsSTyTRQxvPkY9+aBak6sG
1ODiWwApBj+3KTWoUerIXUcFQ8CzLDufQWAkh9KJKmGMeJtv3Xhwwc/awhTiVi7Ms93w9Nvz/cPT
xAum4kpgavyBXqVTlihYsIGAKc7xW3tpbEeEUmCRCwbf/LpuzTLVkVp84FzT5urBm5oL1WJtWFj0
h2jTCg+LG4lRFo7ySCliZQy6U5JbrHgGvSfBBBISIdazioSKK3IH57GyLIy0XVMrb5co/SdJgtvy
H/u8nzmkBCQKKTU9XFoGzpvn2HWfXYleR1hehgeuwP5sxdnbXfc4xXnZj3crNvS6bxUvihVs48eX
x1vwF0rbFIj+spTGXygLWcLuSgX+CjYpgavXOURXEiAlZMpMsQtaaxr/XG3+4XZFO1j0a9oNF8d6
vfC+AArg/3s69ajqd+iNCg32JQIxSoZ6lmjdOQLOaSQyEQb6THH6R9iaNZjGiuCaX9Gwr7ZbxKUu
/N5v/7s/AYupgjcapYxgNmvEBk5YLibBzCKyEyJql5MygS0wxeaj3NQzrR0T0TN5NghTFtz37q+N
Fc89R2w63ukcsO+ag4VDAu0EZ9kJGmOI6aKZg2O/stTh7k1NqmrRb5aQC4f2pk+wU+2hw4oQlCo0
aZ8kWGRWYz8QVjS4FEAppMRcZEJF8yYwnscGq+8+vN6A9d2Hmj/b2A79MCz4wzBwj9AfhzY+dmjj
A2fFGwR7c4SAFQz6DWuIDDgMIgVYe5bodNH7Da8AHobva3LXNdjl4lHcV0Hgn5/3n0+Ig2PA2kUS
XTBgagJx4xa21oLzAB9FUQrOr1v4DWeGXJDVMIZ3YmqX7V8enmaRTj4CUlgqjXCCdKzk+3gynVOU
g23IGDPg6+klCPh8nIqAnTENAk7YPz+ULMDkbBaELOyH8PD5Op1QmkXY6o5qCbuLW6FyEFIufM1q
lPn8UjQ0Alyc4nrh0/5ueBr+fv/bcLf/NsMmwy0C7roJCmtPiAJNFjSsHxZiJ5QkmlqQN3FBSHu4
iiLZCJlL8GAXC/u7Yf9lh6A2c4g9GTnYAOB2G4/dQ0zigTDg4OHhN2DREVCzV0XSDoOf6xwvN2ui
jW4RbZeAEEOPxwb94xH+iac5HGhX9FjMTbNBqkFRWQykgYXQgRWYuwjShmmhuDbX4dNWE50VLLNn
KnbUGirJSnurSlF67da6nwM698e61cMvjEmhiLcgMFXA5iIiwSoLjHWEGeMYuPwjUv5VZg5Mcl70
w82K+E1Dc8lStK4PHkj/aYoSGy3HfBhmzwV4smgzYi2VQU9cgiJVDI8WEvRMvHo2Wk1FTxpU9FMM
Kbz/Jx6DeNLgx1hqlix4bIPxXClwhyzvPE0Kj/eQhistPbX/z1hqlQRaEFIxsVVrJSO3u2G1rDeP
/aeCpYankpDD6SRlFVBcycaMQF5cwcsFKY5BP+q5CfaqyPD1vUtHQs6t+MPtismer6N9socFM2wP
MIWPQ//4+8OpNp9zeapbCkTmCPakRBRXRNwDYx7sG1gxRhjHAz2DrL4YtSJpt+7Ut3LoV1VzL7v9
/bvnQ0LH4b9mCSR6cACL+6dJstIHcIzAUOdWsc6oEDriKKKVOcLN64tqPvgZX3b2xJwZUM5r2ago
W/pOAQ/d+2lAVLnh8QAvd0rmaoqeOQGRyrwEgY5qhodywhf8QQTVWcGGofE6wLLGXGcETOPJmjux
aXAnluVlP2zufn28/1odnsSiAZodpqUwXus9cBNgz9OQIwmWJCOuKo8/jn2m9Pdwd0H10KD6drmx
t5v+t5eHCjEY7EdxgIMomQdOREKEBGspWsk2deCh2M5nIwOXXhhylZT3i5nmHIz3KvoZW5steHG5
pooJjkhihWapSwm9QvRxBipWIKYDs5h3wGY5zmligRoe/892/XhvQSprkMonRfDxAfFTm1VdKoMp
4Ah6S6hCDRibBt535wn4UyJF6v0fBceypLJmcd21Xi6uQsr9/aZkrnBHj+dAgR1vtPNdZBxjIRLU
g7Ue/uBUwFvC9OEF9QBjnrMN4FZFp2n4TMpsze1wsPbvvzw8Yon8Kc5Umg/BKMuC0dhRimD7AgSQ
w/JI6pMHS5c4Tha+x2qkmo7ttkXHbtWQOm8Sms4VYaW8qEj1mLyO2Xbg/SPGMZ40gef2EaqUMSxn
kl/HsVlPUNG5HdbOieo1XaihH4dHbCDc3PXDHDfmKOaIjsFEDhuu9HEgZiZsMYReC4Jy70xgV8W7
GtOciYuvH7ypOWAttpbdDqeTL6f6NHQxEgPdFVWXs8N6IjBrfaaqszly8Ke9INepoNPol87dXNDe
N2i35hgFg0V3//nrO3s6NAJ9Z/DHwFAxHbXY3Q7qHrQ/yGziGbhqYPr6vIiw18PUFGxIg4LNdh1j
/7i52xVbZOXmSKaVYnhYIDaHcqz7dmAQYkCRwM6KLCVzZUXOYZKz8fXD/YqFoV97/aqcpFSxgHhn
u+G5lHU99SUrNAZRxkKtZBRVmYDqIy4g+goa6iYAEyqpGKkL1zmbmKGLx2nOZ3tWj93U1LdYWnWS
jxZj8ZrwF36aA3gI/o1MgZ8sMvcdUcyjhYUCGZgKiAUoIiFRXEbBKWO/4rDh7Zp60xDMt9tlMCvu
x+PIH3//OEt1FERbeUhzEIZHSzFEaMKWGASOoYiNJPGclEQ1KP23czfW9Jz5dKvnau63Le53jQOy
sCZjs79rhg4yFnposGtowHMBfQR/Gy2coJMGU8wLcEiu3FPTNGd31fTEnBGYfK0v4OIS++HpsGWP
UTUsnj70sjtlPHy1zmuDvi+R4E051BypnJJgs38VaaEaeUHa0CANT4jZ1u2I1cpiYzwYTTGvQbZT
2AgZQdVFEJ3BaqEEvh9i+9Fg3z7/e6LmXGtiaz1p0lhPmgxTB8FPH35chx1UsEkFPMmVZYRcSqpz
yRt49cJxSYmn2r1l2GFGREU8XwNAw0VLj7bRpzH61m2e7qaoqJAFq6O0H1pDYxIEoWRAK3OVdeeT
BXc3GIfmmwpxUYi6HrEiqHFSJF5clnj856F/d/ga4HFtfh2+lEO6T2ZQxLJjp2KXIuo8TFB6GW2X
OHfcgx6hXl5AbFuMfi7IsXhswc2uwQ2b+si238qRSKc0a4FLTCBSpekCwYJ8gz0NsB06qjGoE4Ln
YhHmrUap5leNRKpWdoo3fzvFuhVmj8YgC0/gHLPcCYOnLjCjwdwieNCkSUREQbQLNQHfWsFurRqm
iwbracIGeugbx1VJESnMmTpQLNiPAOrE2MTw6FXNWAbn17St7Gm4moi+sZ70KpV8aPOYzumdL6WQ
ozVGCcy9YkEzhaVEMEkFRr8VDsU9vVToVQ1+tuareqpiY9PwYfSmJws24v7pN/e43T8/Tr2dekxD
lVCntITB+5R4WhNnUoIrDgZVjilKLyUnFzq8F6Of077VQxUX25bG2spW/VYpjcavYEpvwVjABbYF
Ew4s1+ARgS8rDyZtTOAoCitg0yhhL0MzlZHPm0vldk21bGzinqsGbFBp/G6Xk2sSXBTYApKNx6po
8GoFI3ikWKJg/gXGyXVAcRdg4ira+75F+6pxHtaee0FwwLHAUY1oGMoyT1PuEMgIVjuK9QRigXnv
NMh30MVXBcwOg59d9XizInpYt7fixcmwef9h2cURUzY0IGaLzGiNgdyyUfIuM2W9hjWvLkTxr+/i
mCZfkNy3SO6bDsHL3f75aQwg/3w3hvHr6LHxksHbzqzsU4ernBnQqaC7NIuaSHY5eowjvxI6xtsL
DhorZeCnY1Fwb/ywQNE9nFkpFQGqsu80sbBSCIdlDRYOMCBsDl5HUMRvd2ZlTcWcCcM3a2lvBGct
hK/64MqxRwAPrhzBpalTPlOBVZd4CgKDX2DqYL8rY94GzKqlqw/ruHx85eqxm5oD3mJrBYC/PBNi
rK1E4LxRC4x6QHkH8saSDsQRsCbBzDY6I/gCbHZFcybXHevbnO7K0yqWHrURYttgcaWnEXj4Bbbq
D/e74fOh1W6KFZlAjRNggeKpKjx4/GSBdBr9EbAbNHH0Gr6Wc5yHQJ4/VXNz2/hgmrYg9Q+1+vSY
yuNKwa9SyKM1o96hmqYEz+Zh4J9xkAtBghckscTc+Ysq45X6qOn2TU3mOrxs7O3Sd6tc9zEQfyzl
5apECcYfJfPiXQ625KYVLrjYeQrenNHRgEpX/9Pbsew2jiPv/gpdBugG1oFI8RmgDxQlZT0dd3o7
TmZ3L4ZiKWmjHTuInZntv98qSpb1TnYnGB8SWxLJIlUs1rsiwfz3UxOcYBkzGnQQUN/3IGDqr1pa
YmBrVvkpKL7y+Ix1QADZ4NyJ0TkjJMHUJEEyNcCTcJEkeBKNydK1fidNCLIesIg6kuUf/6mlw+gk
oADpXhOjpyrB2uk6Cgr1EqOhjzF+sSX9kVinXhvA3ImuKhcutlUnm93DeruvbIrVBtUhTXiiMceZ
q6wHyxNKraYRDYWQISDH22qYuP5fxYM6FAOGltoTzXlq3TNPXYlt31Lgs7YnPCi5kCTmRPkRRcOF
07MCYU2Aztok4DR0yUCCd+JCmhC0gO+yImqVi56MqC9rlweqpDoutzJBzaoAvPWRVSVWgvQl7JQn
XDIJQn5IzVuPvZvZMNm5abjXqT5/NZXRtngzf9kc1ofdy+p7x4qMkUHsmJmwrFFLeWIolgZHSzUW
3KIgSScc07kSynwTCfM2i+/wsA3Tb/uxxhQz1XMkZHkVU2luk0KRW7l8lXsYdmwUAg/CtI9yA3BZ
mipMhEniQMQi5lH0J3PxNDCrCUdzCj3+8Sq7b6cILOtq7X9uD9/zhtkIq2qVL6n4gocciYyPXvI8
RgsPBZkOExJMuY5Ciu5piXj/CgcFP3LdhbDLtFQP1ZdC0x5+X9MOv1+zCBcWX8doYrvyZ1Co0RRT
hHIkzwnW6OZUwOHIuMu9gaVgbST/koQixb3WTLOemZ5KnFxc3rQLJEbScI2iSxy4WkCYQBmTEVJF
fCJCrW34XpVtb7poqmm3OLPWgS+zrF2PcpNjapz6ERUmMo5CdLHnFElG4rhJNo0x+X9AQMwx+s3B
6y7vznDsOt6eNGFUPYDLbDDsYXblvMDomV8yXFKjGs1VceO+dgUqNdb9CUiIhByoOWwwIw2glHwl
153reyhioOXUBUDmPZCnJ+aptBSQHiuEUZFvMbiLhsi2ExeVh3nJQ18xGQCPKFo5UVq9NSBhpMvG
aRaobjHSTX771SQn0oQ6VGfcKpknWCABoqtGxTyISVGMiVEMsK5MhxbzM/lvcw49DjWCCXC3MYk+
R0B9h+6tnThxc2v/HiFdLYJ9sR7RWZGHgRmThMSipwLWafRBwjMWgwd9LlyBV5/ZN3uE4igjJka8
3ZzBquc13K1WbdtUvlqjnqKeZCqgITHKimlknZKPAZeoLCAybMmQSRvEIhy1StX7bAHVQ8ruOglO
qoxDtUIDgbWSIEnT6ANOYjJVBnXUFmRoksSBCuQbVWHDyYZ6Ug0BdF2uQa84GUtZfnU9VniFSgtb
DKRIqTC3n4oAoxXQusjyUEgFZ08k3k8YO8EyELtw3WdTgxmKnml3StL1Hf1mcQ2HrESFR6CZ85rT
UuoYDyRfomusNRZ9fO00ESq0IaEG5I+/rqIl3GjOtVu6Di9WtBOdm9Zwti9PlYiFo5sECygCOiYc
lW4KaD2W+JzKUAaYFjwBgWrAF7bVYQOcrFuYEC6yyoEODubmcS/9iBOgKFOfoWMGw5J5CSEg+SaW
cq04Ve9WyL4PXhb0wdspJIeilU2fDi+ooyhij4okv8bCMvpwPmIll2lgKLoYMTmNVWKihFkeSPUe
kUd1CEYKkpdPtObYw20eMyTUAwkrNnD3jNSUl75/7otLgEuAwaFsmiisA+XyevoidlFJguO5wN4k
gDcGGuIRao80J8P7XpjoM6fUqhadaHHMmTUaZAXD4ZAIfMuBx4FJALOAiiaNmXleJWCv1CtqPNKE
XrMe6PV9bbc+7ra24cAOtExWLuwa5VCKOiIWMrQmsimWj0C3JkUMUTiHoW3b6rkJWI+1VWeru6Mb
Avrir3/PT+FVQYAGX+f4amHPG4rpgtAZwQgMCQeehweuvnYoZdvhstVZHZCU9mSqSIH97ug+cTqF
1akeVMRCJWQAB2wgsAZxEtOpigIfeBdpLI9YosI3xuse+x9LZtC2PaWMdN8vXjySv3ybPz/8bGgB
SVVM3TdME4uKE4aB/UnEMWoOo1wMxthT0cm20emuCUyP7JUypls6ycd0s9lVtnQhj+BwyWCfh1iw
jCBlhu2iUDHJuKAEGG0p5Kh/T73fyQQN066w+XyXre+PhpPrl8dHeAHnALeFx/feY5rl3t1PDzZO
/uw9Pe8wCzawIof0+SF32fEO39f7441zN99Duv+xvN89L5/W2blX5PMqSikvV/D3kJ97fv3iPj8s
94fqenPg17r3/1z38KM2K1gBNx7GJa23ed94AYiN4n8bc3I797DOdX19scjh1Xbz00PNEt7Z3XvV
6XjuLXaHdPMpIORMzb3nfL/O8u3hk//5g//LR2//BwadZcvdy2EJYL1s3YuFwbKyBdbD/OXj5Lfn
9SG92+TQAQ5edQsC0YX3B9w85NtjnyNjHC/Vx8EuylE8N+/xz+3s2+LGXMK3b/HF7OqLNyn/L/71
NR5udj37t7trr26+LLwP2912utqlm3y/yrOP3uTT6TPQQXX3+GViVof175hJfgGbFNG35wOilPpc
/fAm9sJbO7PO2IcKv9Vm79JWFU33vW0IY1UbDm1Q9trC8w4h+j+B8k+wqaLNzayEz9VC7oONiwZs
9TZYbaEXttp8Am8SlTk1geRvYdu/OBhbs2IgtM5r4/x67f06W3gPSBURa6Bt1hqL0HobNtTmQ5F8
Ft86zFqLxjjHz/EZD7ZbmmUYQeAB0OiBXkPdj5PPLg+3Z/CKd7VdDbxXVZ/+3FxeXtlRBCCE4WY9
rnjV5uElfc68pyH8CWg1joQ2+SOm4VykDx5ldHAoWn+dXwvy5cFrfdrn3mx7v3sVpa//cbk+5AVU
KyB2/ShAm20Wxn72Lm7Mt2hwEbg4I9UaEGhzSFc/XiEORJ7Repvb+dKtnFmMkAaPndBTeJPf8jvU
nc3dax4aR53GYTDOchmZhRmHjZKqDaU+tpnNzUU83og31225vJx9+RxHgNbDL1SfiXn1A9ss4n8u
xpdN0WqtKXVtbr7M7FU0Ch3nDdx5dFR+kAgUeC3Oggo2wOuSrj0WqDrQqN4m+P9I9eJq4Y6M8VU4
kxclFuD7cW3+5j0Chdo3CEJBCNy+5rJaa9dm8l9QSwMEFAACAAgA9ZAuSkexk2+JRAAAdDABADQA
HABodHRwL3Rlc3RzL2FwcGNhY2hlL3doaXRlbGlzdC13aWxkY2FyZC1jcmFzaC1sb2cudHh0VVQJ
AANu2XpYstV6WHV4CwABBPUBAAAEFAAAAOxdWW/byJZ+Hv6Kehg05CSUWFXc4cmF1sS3vY1lpzNo
NAguRZs3FKkmKce+D/Pb51RRC6nFMd3GoANTD5bM5eznO3WquFxmqc/y3Eb1j5/Ouu58HrPub8z7
NSr41zBNCpYU3RG7Z3E6n8Fv9DvWNfKHdOkWd9sk4NP7ksaLGct7Xy5Ob87GvXe9JbUwc2fse5p9
631hWR6lSd7r975eDqcsu49Ant5T/B/mfm/5O++duf7FtPdMcaWTAP5GYcQy+wXaSkthtzXVFfU9
6sDfLu6q74+kYRowdP04Z/UDv5q6rKuoc+4W0T07AqNl3ISXWx74xz/+AWb9Q7rJWYZORtvMNAVL
0sgtWO86mm1xIAo2ZAXLWEXYsDXF1miXaCaSFVNRpIsp2qcAWBDBrq8IK12MuzrqYO0TJpgcSVds
nmbFzlkYS/0kTR5n6SJHNzcVGcemgocWwfKgT6hsmAMqjy1rIBMDKwYG8UaaLkkSlxz1v7vfGJpG
ic/QIE0LG+wIH5QzP02CXJKmj3nBZugE/HCbRcUjt1TB/EKIwhLXi1kgScPMze9YgK7vMuYGa0kU
hEZRPncL/w79uWALsNTGyzM3SuRCnCBJ4wefzTnRusvGX4fOoD9y+sPheDpFnenJp+n405ejyvHc
z2u//Tq+OndOzr/0T0/gpNHoip/lFkh5UGofqlQonINCNY7Di6vL6dg5v7g+mfyPJH05Q1fslucH
OmduBsSoYkuy/BFJ/AzHuR5/vd5JuyUnrFiWEsIPubIBY27j3/lh5q9/oEx+6GXfH9D07L+GF7/9
DTNW6sNBke8Kc03nzIfs9SEmwjSbiY22NLzqTz+fnH9C1+PptY16QNZ3/TvWu48ClnbvilksSZ/i
1HNjdJ25PNwWYQjJ1cmAUZYz5N9laZLG6S0wilcBeGRLkD6apumKxc01nJyzgltgx97/UfrYCMPQ
DFUWBh5F18NLiI8kAZcZIVMDTVVUNVTQdHqKPrtA/o5H/+jifCy4GCbVmnFhOpyww0XRdcVXeKiD
aQvWRSGkBLY+IJYB5ClLXio2GvDSDD+k9CAvsCGgGO7WWFgQ543UCSziHWSRF25WQLJz0pZKiN7M
H74ZHvSHIB0lt8IxCbtNi0iE1ZIXVekreGXJa8sres0rlqoa1it4Zclrj1d0BVNFfQWvVE1XegVI
a4S8RvxiRTN3LIWrltI1g5rma8RvyWufpXSqNAyyA/FbsqhYytDAUFoD0rrhWRC/4wcOg1ERPwI+
FSJihxOwU/otYkA/zdxb+IbNYLYyeoGTZjWJKN0jWoD3cTrIRiqrLlTbZRm27WeWXWV72DVMM7ZP
NlG3PC8MXUVHy+Nsu1IVhhzrP6d5Ydsg7/aOzm/XE9u+YuFlkR0fPP3jL78cofcIxj77CHf9+dym
pn4k4aZSw3iIHpb6U5Yu5rYdRLmb56kPyMNGqb/ghe80dQOWddan1rcLaYmhoc6iiGIYG9mGrh1J
pKl4QUDZj4z6v/s2d7gAqr7FnzbjzyzfUgJ0QEfgvGUMwZNYB5x0Z2sggrpnOI8OimC5VqjoBJXH
2TZ87wixs03IAUPsTn0zCGDCmFlrZoOQuQZk6doGEz7OWvEuMjfJI67mdTpMZ7OoABTZxITQPbiE
lHwn4kEF05SRzmVRjiS9qSyW74YHZPEFfxiC30d8+OfGfIcwBcXAt3KsSBdsWGAMo2lAMNXSDwdE
GCURRxn+P2BQJ0gX0AQId5hkxx9CDNU8ksyGUrjEZU+E5cx99ISq49m8eBQmsMh2KlqNeQaadZin
qCBLtc8ARq9Yni4ynwnumkYPKE9BEqw0DAIjCMyDQQDtc7IQ//fDgmXn7n10KxLxMoWUfNwE50rC
KwZ1IC9AhCQvfvlQIQwj+GkBkPfuA/LSNK7s6sdx+n1D+jo9Se7dOApurk6Fs6lGJIybqOWbrmaE
FaeW4g7dOPZc/xtoBr86XAxRBzDqhItEtJpubGONQixj0pAh9LzKDsM75n+rWvIHViz/7wtJlnEO
wFMXHpJdNUA+2gz5XJeBDSvIV/H0MI4glERlErV8BH1XwEq24LeNvKVkG3m39+y6vVFc5AWMKBwH
Q+ov3XF8n0YBOmCgj2VZ3PKeYVGwjtrQe7qlmYe9x380j/2tMK+n7LsX26Bxqi0NpRFly1Iqj3Ot
KV7o7BBexPD9W1TcPW9UU7PAigyflDmgynPxghjE3Keo3lBR3WP+E4p2dnfVPSISGEOB41Waj1eg
NvFOvEnWMh27bjVrefkv+S+ZdVY7uQCXLhcFICavyEABlzrLU8tCgTUOIGYjUTyFaFD5RSyeXA5t
+85NgpidsTwHusfL77wiZMUiH7ZV+IDWQV3X7N3RDxT62BHcAaJSPjLeofzu5aRF8BCAk89V1Tje
wuAKdG9iLviogLdC1iWhK+az6J5lZ+58A7XLfaVSvJksZzxBr5qaZSxB3d+lVbqUAOgRpZlHNd3C
9eBazk2DdMGSQwP5eNZtiAixdGKBWLiZ5TRieRRtMdy12AYoF0kEUebMoeWrClXF0oCF7iIunIDx
eYbaYR/Rx2Wmos6MzdLs0SY6he6PkIZyazxXD8p9kayNKfgRvcJP4/xqFf2f7r079bNoXmxwqgZQ
akDcEMaQouFdJKdpCmE1ZxmfKv0Nuv+Si17RStW4N9SGXChk/hNceLKJfoTCSGV5xHBS9tCcXa28
cCaTdJEE5QTvzqSEpYamwTBynOHk6ub89OLi0jmZOsP+6enJ+Sfn4ubaub5w+s704uZqOFacy/HV
5OLqzJncnA+vTy7OHYfrbEhEb8Y1MELsl1xLDUbpVNTYXBEDbl0iRlOKKg2rFOFLdA4gnNmQlM6o
iaqE1hPjkHQWyFaDps8n11DzvfThwMSPryi+RTUEdIaLjK9Jje9FTU7nJ8kZX8sCqlSTqNKUqqGH
aAkb5+yhJMv72JRrrlIiUdyUpAYNqjOIU//bDQyg4zXZM55R0BydRnlRSs3HHZMoBjwHZgaWaC17
+/P5oewVvAzi+kGoI2d0OV0z4bGk6IZEaVNSfM5a/v18Wl3NcJJt4Zf/5N8AwUA5vspnR0IZwKty
Ou0PbjlNlajaUAQlMJUdEbJFwgnqJrhCa0ZQd6luoho53pgK4DR0iULCxZH3MPe7wSP8QE/NPVqG
7gHcqsiB453U+5fvzEpahgVxZzQj5YaexxCntCSiWmAv88ll3h3sxorhK2hFAJC/s1ns4np2ZzMb
UxgGUEtIB5IFB8Sr2o1pFEI4KGeEua3WU6jYFnOiQCAX654ONBoJi+s066Q0VWMEIIVP7f4pjs9Y
sciEDxQxV7mhNi/nXWvkqtRMnVqaYaLVgc73P8sfojKZVMwtNiJnUBWXetZo0bXG5MnJYm7T5U55
5iZQJbMXGAiqPPomZvidP9O8ZpgV9T1eq8aT4sOQW9eQszremd1mTpTcp98EMGJ9ZZrnE9QCP9gi
uDaQRtYGom8uJNQ3p7H25jTW7Wqan09F0bverAo1MYUahAYBlOZJlN86RebO91nhOYQotBgrQmKI
t7Wa8oxhmYlhLF0Z4a3LhX93mQq4J5hsLZI8Z+CoMX934IgpDEJV9Mojx/rqxQ9HAapCAguwseZF
sTpiicWHZoFoWcEmEL00eBRqYrGK0JAStLFrSutaq5tiKaBhOGsYbRPaBLPxkvTFCkjn5Gz23Y0K
J49uEzfeF7b+05XEdLFKAyVEiZukecyYiH3LWuWs//59F+8fk9SoGIqlEKXSGxd3Ub4sSLYtCDvQ
3VX66/J6GehkF5kIteM4TW4R/1NtscW+Yxx/QHh99VMMzXVlJsrQttLhx+1nqDHmIW/mxtAE2PZn
xidPct+F+Ns3B8A7heP10XzmMPLPFgV7+PhLVdaXaBSvJgo0DXUcZ8apOp6bMxtbxvZK5HMUCwA+
thQDU/llTzZdqSgWKMxtjhRvLz0+g6OhKXjDsZ8/Jv41dB/HNSFW02dbkr076hx95LHCw2SJJ+Va
mIE6a1LdOxsTbXsl8jmiqUrwKqKNkyJ7vEyjpOj8FXLlCqu1taL5HEV0LxB031UCyVmmlzPP0ofH
40rqLYDscn4f+P41iT/8JQO+g/DeTOZYtDo5ZRw1R9KD8G69Hrzztc7XhHdza6xyc3W6mckr5/7b
Mcvfa8yy72Kn+rVanurqMEj5fcudndKfR8jJlutpfIOY3xSTLmCGOopti73NSbVMwnRu3fNpGU9O
GWPlpCRE3ktGNgeSyHy9JLJeeYxkQRKtlsYQoGUax1Fy2+bN3yxvfkRQw6aFMdqevzYaXmXke4qr
6ZUrMdYRsbyC346SqIjcOPo3qw4rCL/IZetYsDafh9PoUeO6zHRztYqxM05YFz1s7Fs3Nhuz8vyw
ZPW9CK8Pc9O2Sqz1aujQuC4+UWLx66IDVt7cDAjGHBF5PPQXRcpvY/BfOP+h0cDTwRBzPry7c/x7
3lG+0Aouv0pibQV+C4SzpGboxhZAPiPoDZcYpZKlblBog6hcAC2iGQt+A9rlxbmiHYNurHI1H196
LU+DXL8sRco3l+E27RkDha6S/dLNvvFlorSw7Tn8XosFA+DHk9k8FvlYtqj8EhN+ztRP5yw4dWde
4B7z62cQDI83V9nsHFKOqbcP4Tc9iWthHhN3FvlD3pnyi1sq7TDRIVE7GxHLJXNFbdpMuiEhgaGL
a31K5ms1B7xbtLljxfrZsdh7CqJ87Kx/NpAYa3WB72zzBY2ohxkOau3RCnRXv4/3pcvyssiN4Czb
6MMVXU812PZ/Okq1kxftjluk2WsQ/rhqo3jXCXGQccKdo3K93eTXK9fJC7cShTZvi/9C1TL+v6rW
m2gMMWkhvIXwFsJbCG8h/GeFcNpCeAvhLYS3EN5C+M8K4WoL4S2EtxDeQngL4T8rhGsthLcQ3kJ4
C+EthP+sEK63EN5CeAvhLYS3EP6zQrjRQngL4S2EtxDeQvjPCuFmC+EthLcQ3kJ4C+E/K4Rb9kvu
ivF1lLOZO78DozsCBsV9xTs3yDz/+RSerxuV51NsqJc3LMfp9+U93i948gX2KpT5Bfys8vALrJoC
h1/H1erruVp75XuiiNJW67Zat9W6rdZttf5JqzXBtZvDh5Mpj5KiO8+ie7dgL7ipTTHK54LEzK8g
eKNbNDVVc8X9o6UwZ+WDswSAk+Z3sh10C309t6ivXVnJ23uQ2tt7UBh5e08KI1rbHbyV7qD+jDQf
jOsugijt9v+7fDJ/+/CEv9fDE0rvFOXTa7t9/t/yUbbVCNcCajGPoE8sYVnkL2mvxptiZFUZVFnq
1tjw+Uz4W32G/cs65fUGQd5U3sbDR4jRouZbQU1zBzXBb5HbzflrkhYxC8IoZlH600yxcJg64xoc
etSx57oe1RCfR7lI1v298Pke9PwRKYuqaBLdTleRyclesVi8rVZ0eftg9AdEMfGYILpywQRccHKx
eVCkRvc8h+YHRD2TMBRG64fAiGc061h/G4+cJO0s8VtBNKq0rn4rrm6fCdQuCLQLAu2CQLsg8LMu
CCjIL1+CjL5DgqCvpo6We8QL61BHV2UvKo5sCaHMfbDR2rbrD+zwDu3wD+0Iqjsw1jALfUXhTILo
wCn5egfXTdMJ81gguM93d7jijD07LM4EZeYeJjyyMqsml4VVj/mcFlb2Ccx34CopzbJ0Ff5wTTA5
oAmmNVpqoBv8tYawQz3ERNs5Q3WFuaJ5dc/6pdMoC+Mt7lghfIef7RGLclrSaXob+W6Mhpc3togl
Io2zLM3QkL/Npwyv9ZmqdM3HZueLmceycid0cJI0iBI3e0QnM/EiPQmtTuMvqFFCbgAZ1TZiBZzz
9ItuOlA73sN58NXFXfX9ETo2++ZoYhBNHqp9LNOJpcn9yWgoq4pqTWCbOdSVj6j3JY0XM5b3vlyc
3pyNe+96S+Ihf20eH7j1vrCMvxs47/V7m7fl5L0nxOk+zP3e8nfeO3P9i+mTh4/YPYvTOX9nZN0c
2NhnDh6r6P3mHXTTu2i2zPCOApqrfU0dj01LNk2zL1PLmMimaqrywBoNTEMdaX1reEDzHYp1eQjZ
lcd3aRjue0vrHp+QIcXqiFBZp/2JTCkx5QHRxvJgYE6wpo76A6I39Um5ryqnq1JzR05Xx0EYerty
nrJb13/cJ61iEUqGhiLjoUllSkambFp9XR5o1NCGE8OgCj4sbUn3KZnLI2qSm6a3I7mnmf6WhbeK
2h7Zh4piKpahycSkIPt4pMp9cJ6sDlVlrPUnY6LsjYE65f3S14+pyu95brAjP4xJrd0IOSS41ccm
1nUI2ZE6kqk+JhDGA0umgz4d9nVdtybGAaMflni5syIqBjzdMTVshFjehzXXLC+uFknCsu5J8i/m
FywYLPjbM1EHdzkRzPNOo9ickKGs91UCeYcVSLmhKY+xYlAyJnRkjA/Hy4ZFnUPXE1/bePL0SXVN
XbarKeWqGug95PjSOpzWdDGfp1lRQxN9PBlTqsojZazKVDV0GZC1L4+10WhoahoxlME+rZ4gXJXO
9LC/I53pQ2ELa+8i7J+Nzq5PB1ma/JuNMv5SUG56lXRhWAbm76pdwkHftKgx1vuyiQeKTBXDkq3B
yJAxGUMKTIZWf9AHYadidNQ7jbwMSlFv/ACWXcbKDpsD9t89sKaVr6t7tDKpiC4wweVocnVy2e2v
LG3pStfgCqhEtYzxSNYNClVL6w9ka0yITCb6cEBHA6yPxrsKTFZBn/e4wT9B3b2L/Hx/MqxerJz3
duSoqmAZxk4xxpZr/B9xV7bbyJFl3/UV9VhAI+jYl8dY7Zopw2WruzFvA5IiVYRVlEaLx9Vf3yeS
W0ZmkhKmhR7DIFnMUMS5kXHvPXdJyQ5uzK6AU//GKBaM998e7rd1m6DbnWLgFWKFYpnVkUM1IIwQ
iRKX8MIzK4mrxIxKY7FOs/3QFYbibpHl4evRPTkNaiRZ8JuxJEs19Ac7SV62m+dWEDZjojtjTEAU
GKCoWHEkG5wu4SQl3nNDbHHGOytdUuyiKPUO+f2mnRHkOKQvxkLfjDVloVdDdrQvqtbPPyX/k//8
5e7l9tP2w0duYGU5fn73AbIUlUEMXLVYHMY2wXb5IAopmtoIdXclqcvqsl9l9vvqz54UuxVPl48g
zinTcNzVTr7KdPScL3q37/jlWs4lDmL9E4UfPgqoD98ZABgoUSKJkYJhsAiJYpTEKG+pillSVg/a
y9NjPf0/1J/urWWlkGK4Fr7UanDor7/OHzfb2w8fZbVAYqbxE4ePQJFS4pYx7GuOAcyhwInlzIh2
oTjEjgH0c7yvX3Y9Vj1l3i8zrcf7iw18SfkYPv4bwP959QwW/1HpDnh9A2hBFbOGMXheEAVQHIeD
zcAiKU0iWpu1ExdNTzfrNNbuUotU0zFSxVyHFLfmj583T4c/FQWgYqY6M6IZLyaR4kWonB40IWTo
XmIhBs5yjOoiRL9cru5q2uIMUegN/WO1xATTw1p8V60I8ym5bg6G/+lhs715+fZwEA12dsY6smmM
MrYQWrpwRYKvM51xHxIsZFQ8Rts7uKOZGhCG6zEIg1Ow39w/n+6ej39F6yOTMwkEhsfEopeElVCZ
l+HEp5jh7eE1jWQa7y2C/jTN+par8fpOLgeW6vP8Zbv8eoioPnw03O5M7e5DVaQCwu2iIFR7YKIa
mCT1RNGcGI/gitG/6g4PC7x6y1s808PbMVetgDdjqZdzNpC616MBH+mqZ+HK1RvAvEvCU0IDg+3K
AjRGF0GYtBomyIOI8YvCnmaewh57169aiBNGYy2GQcfTavnyuHlGqGQ6z66MEGZWDS+wZ56VElBF
bmFtBXcIk0TAS2ABvN3AT142Htf72c/Yuv3VPm4csTFuRZUc7HfnXP7uj2vBnMzoTFRHuPtQDQsz
hglEopGBPHbwnYuOxORptpl7EN23GOz9WtNC7C82MjBqxzLUvPZeU//nZf443z5vtquDttrKp2iB
PrqCoxIR2AvPFbbbZ5KlCUJZnRztW4tdNvCHifkGYBZTYNYH27WcL78ecZhqkJ2S1vvsCIeJAF0F
DperzeDeRKnhjaWZxNGbqoXgxAQEN7Qcn37pLPnPXTr203Z934/DlBMW5y2S7As2x0RDvBCKaJ6c
VylH5vRbbuZokenbOho2EOhmSqDVQLke4Mp7CY7Zl/pvCEU7qbjuHHS2qhgaSTKpRmIgFKFmeCIr
isIZOpzWy8Zw/riYtg2NGfzSYumP6i4N5FtPyAd6tj/AXVfadeyfHJDvzptzYR1E8ZAiV3sXJAiH
B/sMOWXKIu7UZXl+eVhtf/x8xk53wze7KGcEohVhridEWOsh5/v+bXF//CPjNfisFsRSWZ0n7kso
RqsKHlFBYZlYFSFa4MVmWEYb+ZsYX3+RM7awP6QRBCH9WJBDSgNSf6ssrKudPz3PTxQE0sMOyl0E
nXL2jCGeMVAV3JRSPW7AS4aXigFfhjdZwh+//K3GPBuwrZ4Y50C0Ykg6IYakhyN117ngox3Saqbo
zFbyD51ImiqiGIOCaMlwoGQiORbBgsWRUnTSGvVnbKBovRxD0WY+MEf3OIi3INQMEcDODHUfarTI
nTMBVDrEhMDXG+hsYpqkjIg3+AIzyf/PZ3x3rQFsptTR1KT/bu9Wh9jtuH1140pyiqea2gw5EhHh
uJ0NgmSWGMIYFZXMLfUbzNNgcG7CjSzm+nAMy/3T3X/f7EqtR5ugZ7zqkSo1SY1gtCQJhg9Y0CPB
SMxw9sXVRKZrkYxnu2rXNWMwyxs5sL+7PNWfMLlwYt0tBJ3bBck+hWyFUiTJoogQuHteg+QknK+k
GYLKKF/loHXu6Zt4uHrVAhwTaLVa8cMWbpYvtRPwlD9Sis3wf91CWFUXmNREWIk4LknQyIiXkoVj
SSWosWm3cDBbH4mmZhzP6AMnOO3fZvv7SbzOb1Viy1kFxGAYoYEAVGrGRAcLbRCG4FRRX4QMQtj3
8Fuf+hgaD739vZGJMTohE7NdPuhUPL3ZPj3dHI0kV5XrVnlgSLDFzoIn1iQj05EEqAhRAqoGrg4m
mSbNzHjeASw3AUsOjc2P19cfPsodL9gl16SjQiBaEEHkWu/xCNwM+A7ol87OOybpxf3FjNMbhwst
wsUUwrU5WJcfP3dVvaNS8y60RQxQENoImGWK0NZRKBAIN6J2KwrCdgrFfh8/36zfIJdiArlUari3
tYl9vmsnuH6+f8RkHz7u7AEXrpPGRotjLS2R3FV2iXPtIviL1CY6YeD1g3uTgxwvdeYmjAe2oqkx
fdFKHRlYud8+f5k/PsERH+6Lsl3Gh2vjnc+SSCZwmuH2cU+MgIcqKTqttC3lcjoFm7YnIm8Osv1f
r9+Qlx6CbiR2Vo4ldnZ5jFPuH77XrujTOaypdV/DaBMiKQKkRki8hKBxH6NWJdH6gBOfjlWa6QZI
xuxeL9SQOnan8tMvfQspZmLHFKSmHTihk6opQpkFnIxnxEkqSIoaUbWljtvLma3REo0B3F1soC9W
E0ZwSdXh2HzZ3p4SRB1GDktiZKJESgVj45MjloFjgXJxmBmGo/MvYGzLEofF+5ANuxkrseFUHCAv
//KX+WJzQC2o6Rit4zyXADWl2cE8MhWI5YaSbJmPUkjDI239YX+eBgDX44NnVvZmWKt6eNgVwHfZ
HUnlTNYTCF/HWNGZpGQRLdettBEnMGoXOKcqS5Ze07czdfC4v3bVIltNwHX0oCfx7z9f13z7Zjuo
++0NN+iy8Nx5kmpuQTjE0DbTRLSLysA6yKDpOwVo00haaRybkmbeMbmTd93eP2/W30+mDj6bdtIk
aUPKQhJaDKSRiM48LQU0xFhQI2dNjJfcdn/iBtiajbfZSrUcJd1vNvP9s03HdIURbMbUjNN6PjR0
SpRgSMA7ERT0zXoHLZMCDr5wGYt+JQN/WuJcIv404qrFezMhhF0MhOjnUz9tn1eP21pI4NLOusJS
fa+CZIQNheLgmMKqj7RgJBmMrzgrQpI52vAWHzm12nkWPRzZymfHkRxCldV6tdOFP9L1l2G5QRnK
taLQ10LhH5OyNSdfiMuQjVtcDeLfVW44wrtqBVhPSDUflqueHlYrxLePq+X97XbTphZqOhRnsMuG
sk5RXFbeWdy9AoJU+15UjQuhMgGWntkYpcrvwdevO1S/TYFq8h3DYe0OLMcmGVGLO1iFSiR+W91u
np4fe0ZBdcfUG5oQT9bEZRHVHntQOeYgd3C1fyY7zf4f+U8Lu5FaCz0htTgWeCbbPz+C5c3YLoYR
KbFcZCSI8BFn+1DgimKXtGcx5+yUcpeMYTNzA21txqGrXc/XgyOZVouX210qq5bYu3Q863LxXHjJ
owINdSAXAm4fCpc5eJo1vpYN1dsyUP0Vpne8P6KVYUEnZFiyI8H89nDMP1UiHbwMhWP7TJHQE4EI
16VkiGYuuhysyLEMKMZxhv7Cji7HPs4xNoy2d7LH++16c/vyeExIMrlrU+iCVJyHTCV2UYNhYEtr
CsorUqwrgeYYdI6XCzLjNc7lI0cDG5m4GGdgHNd6EG0fWxgFo9X4UptZl3nUNdgSqWTile3K+UYI
FbLJ8tIJ/TaxvVKOPTXiBjnh5M5W6RQ0BkQOXqDUXFlNkFphOeEJYb9RBZ709ZLk5UqdH4y5auGO
9cs5PYxka8UdPz3vcjG7gp0zfCZ2STZJTay5Cy5r9YipWuQH2eApBSo5xdfvV1U9IDnfGVCvXrXi
6CkZ3eA+fV3dPdRzj1iqJuy6GolKXoLpERoir/1TtZ3B1K5fR1VMRRYt38N3/YSlpwfVK60wdkqY
uR2WtJYnJ4IjZzuXXN8qEU85p5A1Kar2PYQqFU+ScAGdhinHyX5TzqG/xplIsTeiL8WcqnGhck71
6uBxPm+2q/mjv7tdYfFTpUfzztOWkpXMqZBCwZ9EpLW0LT1sujch1FwvT/8mJjUBtBV0glDMmWIH
org3L6fMNbW8ZgbrfQInFCJxTmotvObRI04fjySnmIPUWWpfLtmsiQT2vHaqTuA5dhKmzfx2e//0
vFn+vHp6qj31u9+mccLXdXFyKYIOODKs1qcUgmAEceA7ynPcJLisriba81CX520gcj6Oy+dc2EF/
3ef59taDl39/2nRddTur1L3XLDF2ijEuiK9tBMIquH2DIwI/oJJUCKKNency1od0rt/jNKIVWkwK
vTy4tevl42q1/Q0k6ZR4k1zPZNUHRBHRuMSIVKa2ZztKnFSIRYPn4NvMqpLa2zGeboDmZgLNgp3p
4Vg33q3r5lCMd61r3stSWzNNqZ0F1HsCwwNvp0NwBWSsUPOmRo7XXNx4XCvQzZgJzZU2p1rmct6z
NNrpLmTLRUeKCJOokm1N8gWE0LA72nklYo61R7Pd2Gaiq3Y1OwVhaLj7znCqhylX7lKrfznm2lsi
OQ42T1A96JzUQZlg/0Vv2x8xEGHikKrFatgikwGcVoeD167kJR03AFpsPQRWB+KloqT4yC3DOSj+
HQmCz2f6ZXIry2Ic6861FgNZwt3L6vn+/vlrLZLIXWdmfV93LfrU8AwDQwqoDu5FhJEJiPicEC4a
ipBeXY74Pv1ynP9cN8hxQINeL8eNLXPDdC932evI4zt/YksUoJW1B7NG4tIhrvBRgRJr8DcEG4nJ
UepyqiNvbqSaWN7RCebbpYg+/VJPxC5FLY3r2mpMcjyChmfDqoGuhDxDySgIlzNQQOPKq4diP/n5
Y7wf0IKfyPzNzWKkiF9ftt3jubula1HZVAeju+x/MoVbFQnix1yLkHCA1guiLNeSCQUPmN+UkmoX
OSNIO6gVZqKGhi+HKvnXGPs9TUXlDI4kYDXq5tcne5wJmXAeAwIlFiDLW+Bj2mnIuDCAOaFt5kYP
Mgzzp7tj3MZFbcTo1IyVCqoQFuBJRGGJBC987SdWxuSEnb+YXTjO2kK6MROQ1uyQ6rn7x7f5TJ14
TyXOkQrlWIDlUti2GgD7aBmhyWgqhI80Dhob+pM0q9vFBC9082Px4c9vd+C6h9W5m7Eu6Rx80lEn
koqq8VamxGvOQOSVTiUx7g0bNNX25rlq15q4I249DF5rJf/pYHprj/ju19N83jw910Rt17WEt+os
WeJQCxOIqY3HgiuQL+5gaBL1gnvLOIvvZ+ZbLOd72k9jWvHX8ynxF8fG6t3RWdRn95+OtKATE+Fs
ckmRosFmhILqB0ENIhCQzMglFEhdOo39KQeQxjnl+ZyJgY7UO/J8d8RkRa1IVGDR0eSzsIhOLYJV
yyLxoH6Ee+1t0MZobi+GC/2JG2SriZgTX64uUJdZuc5/7B944VBlRrsI9Pi5NigXFYwHRQ8RGi2K
d8S7YElSIFosM2fcO3ZjH/CcGbi/2oi9NuO8Xf3ycEN+X33/dntk43zXM2ZYRHAKwlgZQUR0FEDY
SHY2Gs2CLnm6Z6w/1wCEmQKxPJipl+3/brbHnKxQs0oSi0aAiHNI4NJr3sLBWAagqi0FJQQECF3/
9BhGf7YWhpuIG9cwIm0c+3A3f17fPx6zb0bW09nlYZ138JXgzsZU2ykEsbXhRUfhrY0ywJhfTBE3
Mw+wLSawzY+6vHj6NqPHHeoeTsgMDEZCQWzNWykjScCWEZVU8SEa7vggfu3N0a49n1Da9UoPVOPX
VGv03eNSgvKu5TrX5zsp4bYzkUxCWRGpFstT7ZOjOr9/seDXND3k19SXaQHWOpJpQd2xL2f+8nx/
9Iu2hnnOuawZLQSuOsL0gwn5FD1ROVLpglaphHY/T3O0S7txkLRg9tjA/h9f+KCNwJSkuYBPzqk+
12vq4+mmUPyTRZ1T1IWzd2ojOC7eQOYTfVYLLoaBxH+uHherx/uneg4ONIwFaaQMMA+qVsRt5uA0
SpOMqF1wQwvPl2O5w6TT4A9XG7hiooq/ELWlU7xSE5hl/8VSzv6re8aH7vtNumxLYllkCkrCo62R
BYNyZwtT7iV0KTlZSnwLnzysMC3P4Wojj5roUl7oxc1g+//2qZ+C3zFhKXTniLwPQXFtEIrUxw5q
s1uADpCstQrJ25SLfAv6/hrTEvRHXLWAV1NSrA/pn8fVt/s/Vv0uJNkFUYrnIlwmTCYg1whFYWQd
kUorBNfFuqbT9mRUh/O1YJZje7qA9xq5+7v7x+vv22UNjd1uR+v7PtI0mcO6q9qjGQMnLnU1I+Fw
yaZizbtbtyOec+Hg/nIj6/pmbL+X/GYo60+fjq0WfF/ftvuGoNoYLqLEsdf1t1BIuDgXaSaF2SBg
yTPuxbvUCD5dbMU4Xr5qJeFT4plReQdhck2KPz1tFpu77rGsnY4Y13XuwLoHiMgQlkNOWrv4LQw9
WJrgwTkb+OudJM38F/pJmnEDaeyUNMPI/ZTd78qY9Qd6X9VvqupYUZ/Sqs+7RAGZ6rNGpT56FGPQ
gWeTX3PAr9QQTtcbGRaLMZde3thhB/mvL/PH53/sfq0FENcDJytv7qrtMXuoo66/96T+KgsNxQLF
J9LoUHQSRU31w/R5wHHyM3zgeL2B/k/erqW5kRtJ3/Ur9ugLevF+HPFsO9aecLjHnrmSxZJb626p
V1J7ZvzrJxNFFgtVoMTdVfhiy6wykEkC+c4vR771mQ6cz4WS3/sfffyvTbZGgs1vETJEg7lPhAMf
PhSsmaTS08it4ezPqntZUnjTcCG28bSDOKzLDHa/L0PdUyUvo1KD2KvF/ZKFlKgoBIH04ZfBjmLM
3Buw56RVwedXfhn/y2sqZPnGkoVRdTII8OGcQcDm9NkIPjW4F0ZF4CWQJBCUxsZAnOOeZKZDioFS
T/uOwnm1FRGHDhFqv/JhG4TGbwQWemHOCw56PTEsgo4oQFUOJoBIpYn4KDjhRlkKfoKP1L/kKyyX
b8jTfOtMjfpYcbmozRufa9vcqYDLzqGogI0twQjieAL5l7wh8COD92CdS1pLqSJ7sepvuXJL2kF2
SBvXdkwsWAWZ7h7H4fmhRiXpJB2Yq80RrDiFvdZKZQyVuUQcMwwMcRuV9jk7aV+tsZxXf13llive
X73Ucj1u7Z7RMH629/P7lcFvuS9Gw6UKImsQJ94TJ00mUUjPLS1g95c3M/hPu9+09Ike0XMy6cvu
8yJ0VwOHJSbmQgLXJMCxKTxgK3MkMnKRwU9Xha2a4RdrrPa2vb3dnCesbL8L59g/16eAC2VcgdpO
RDMEQ/LgJWGBFnjkukhuEo9p5fW2qzWEuF2HkL2eu17C9/7DRhUEYJhZruE8BhA3GMkMRiUSwZyw
OnNQY/pPUgVn+hq29rbz2+6tWsUFm7DojL0wCa8ACtiDGww+D7Y8gki1wXlM4luhdQmcptfCcO3S
SwJv5W4rYW+NkBs58ZdJ1GBLI32na03L8a/adhIcWOWZJApiFsxUDD+AD8q9Kply65N+WVHN61+6
88fHC9od3dONrwYfsjmwcFnu5pKTM0CvUpi6opES+IpBsRoHXjIN0slVhvuSpHV02PZQw4eHdZXr
T+AiPY+/3I3/OKdjTxq/qgJuLZPg1FjMYgkQOySgL8+U0pIKx5W4Koey3eeSZFq/13J1GLdcHegc
BFvBTX+jKKul7Hhko5FgwyusMPQYjDKgb1X24L2lGG0Uqbh+L0u76E279dChh6tOr+tTRX+rADhY
vlG1mZ7ao4TOYNKClhUg3eGcOoPlcYWAOjOBG7hhIbyFc4Ua6sOJjMvtsfMrS1aZGjeqGz68XWdD
X1TcgnltfFJExVppRkGroZKznKUiQ5RdlIH/neK+pIYd04xvOdB6tov++l0pKzUsDDj0LnnwBD2o
YTgnxBZNSRFGFrAhI5j3b6SGz7u3ROvtiWcg4k5E3w0P97+fFfHUWE+Vpx4rlTi6TljMakF+kMJN
DMlzHbJbd7MuVrlpt2Kd/e36Zz+jMFTEDoxgMVSJkyhhnL0TU6+8o9KYAkI4WKGwP4YRi9K5pFIo
D3AQXLoaNaRu8wJwSH3esrPFxXJsL9aBwV/uDuPDy30n0USuGZYfaYVmBoNvOxvCtI8+CcO64bQF
A8st+iws37hp6R16TAynM/H1fjjnVCu0VmBgExsSjVFTqXWQGkwikcFE0c4Wmi8kSobOkdiL3neo
9cp6uEP0j9OxNAaVXD2c3jsw18A+kwmhmsCv9zpZoqPHknBTinzRcjgv2xKlzZaoW7eWxL/f1Qb8
shvGKeyAPYUooOq/UQcrCZYBqAXJsWiAGks8B/MxKp7hI5mUu6rm4bTDBaF8fHrTUrsJmsD1uB06
bfcntEI8mxWKAkuVj3CImlkQrODoUuHthBtovQP7J0UF9rtJ5ZUOnNfhEJdvLFkQ3LgtC9zOTQDv
y9+ndPWqaw7cYBECnAeKrbVCGTp5nCxE6kSxxpg3gjVZUdBSb3db6hXbrW2m3T8ibPO4OyLzYTkg
w2p3O0lfBiqDgxsEkswiGmuG7x8rM63znNPMrNQ9sMNzmvc/1zussf/m5w35atzeS7Hb7eEENVeg
6qT/+MbWU2OnULYqQTKwPMFjAY9aCkG8cZjzd4aWCKLa0jdzWaZ+8+5r07OGq4Pc2h3ioGZYh3/u
Hs9FYMe0owAZXbQmHDEcREKXNFlGgBUZrXJUxFUJ2GKRdnMlepvvV1IF3IDy4VQVOiWLrAQvQ0ig
QWLktXCOKE+YBLPaM5o9ewWYrK7Z/5bqo4bO8XZrJUjKzoUe//Pp7nkUs1ZgusriBFYvyDNDHPNA
pMEODWUi0dqBH+JisnyV0WwWuml2E7xDgpytq/hT+fAV/t8mRQ3iFbxllP4eI+1UGxJ48IRG7mnw
wfooWgLaZVoKtk39TvLboVOvl6YuD17RViWr3iJ27SrpQC2CXQ5fBseeZ4s44DnTiPX2V2CWpItN
G6enNy112ysrBd0moT5/frj/cXc/1sYvMNR0FfgVuDybmlhVCoMNYFohei+YV1wwCba259m9he+w
JOESg+c3blp+OidDyHVhTRfO65gbYLVVVpopwALsWu91QIQbhJMFTy7QhE3KLsZQWAEl9+aJt5mc
F1C+1ipdCtVj/dyI8Gl3/+vdQhlWCzlGWWhi4CSB1pgSHxG9wSxAjZRELeer+rvFKu32g+tsP87N
7J9BLT7N9eB4ITNcABcQRAEDeWDWoqkoNAHXTEVnsyh0FcNbrtFuPure5roDNbj6LYAUiz+3rTWo
SZkkPGGSI+BZUSQUEBjZo3RiWlor3+a37ry44mdrYUp5q1bm2WF8+u354cvTzAum4t4dwZBplTTC
a0c1HNhIwRQX+FsHZR2hUmuwyCWH3/y6bs261YlafOFS0+bmxZuWC91jbVxZ9Mdo0wYPS1iFURaB
8khr6lSKhmglHFY8g95TYAJJheMKik6UyStyB5exshystN9Sq2756mCdJQley7/dlbuFQ0pBotBa
0yOU4+C8BYFd98XX6HWC42VFFBrsz16cvd91j1tclv34tGHDbPtW8UO5gW388PXxFvyF2jYFor8e
pekvlIU8Y3elBn8Fm5TA1SMe0ZUkSAmVC9f8Fa01r3+pNv/4uKEdLPot7VbIU71efF8BBfD/ezr3
qJp36I1KA/YlAjEqjnqWGkM8Bec0UZUpB32mBfszbM0WTGNDcMuv7NhX+z3iUld+H/b/PZyBxXTF
G01KJTCbDWIDZywXU2BmUUWkTMaXrG3kK0yx5So37U5bx0QOXF0MwtQD973/S+fEiyAQm04QUyL2
XQuwcGhkRApevGQpxSvQ8nHtF446PL1pSdU9+tew+KdOq49wU92xw4pSlCosm5AVWGTOYD8QVjT4
HEEp5Mx94lIn+yYwnqcGq2+/e7kB69vvWv5c5zoM43oeA4aBB4T+OLbx8WMbHzgrwSLYm6cUrGDQ
b1hDZMFhkDki2Dw1+VXvN74AeBi/b8nd1mDXD0/ivgkC//x89+mMODgFrH2iyUcLpiYQN11h5xw4
D/CjaMbA+fUrv+HCkiuyOsbwQc7tssPXL0+LSKeYACkcU1Z6SQmv+T6RLfGaCbANOecWfD2zBgFf
rtMQcLC2Q8AZ++eHmgWYnc2KkIX9EAF+PmIySrMEV90zo+B2CSd1iVKpla/ZrLLcX8mORoAP57he
/Hh3Pz6Nf334bby/+2OBTYZXBNx1GzXWnlANmiwaOD88JiK1ooY5kDdpRUh/uYYi1QmZK/BgVwf7
2/Hu8wFBbZYQeyoJsAHA7bYBu4e4wuFK4ODhICmw6Cio2asiacfFL3WO14ct0db0iHZrQIhxwLkX
f3uE/8TJKEfaNTsVc7NikWpQVA4DaTjkAazAQhJIG26kFsZeh0/bbHRRsCzeadjRW6gkp9ytrkXp
rVvrf47o3J/qVo9/YUwKRbwDgakjNhdRBVZZ5JxQbq3n4PJPSPlXmTmwyWXRDw8b4ncdzaVq0bo5
eiDDxzlKbI2a8mGYPZfgyaLNiLVUFj1xBYpUcxzTJdmFePVitZaKgXaoGOYYUnz/dxxduR0tUxSP
AdtggtAa3CEnSGBZ46gcZYU2KjD3lqNlVoQ0TOz1Vsmo/WHcHOvd4/CxYqnhhB96nPRTTwHDk2zt
BOQlNHy5IMUx6MeCsNFdFRm+vnfpRMilE3983DA5iG20Tw1wYMb9EabwcRwe//XlXJsvhDrXLUWq
SgJ7UiGKKyLugTEP9g2cGCutF5FdQFZfrdqQdNh26js1DrfdmT7Px4ROnUSzSCAtp+EIQ7NTIYJj
BIa6cJoTq2Mk1DNEK/NU2JcP1XLxC77s4o0lM6Cct7JRM772nSLOr/xpRFS58fEIL3dO5hqGnjkF
kcqDAoGOakbEOi0P/kElM0XDhWHpOsCyzl4XBEznzZY7uetwJ9flZT/s7n99fPi9GUTGkwWaPaal
MF4bAnAT4c6zWBKNjmYrryqPP619ofT3+HRF9dih+nZ9sfe74bevXxrEYLAf5REOomYeBJUZERKc
Y2glu0zAQ3EkFKuiUEFaepWUD6udlhxMzxr6Od+aLfjh+kxVExyRxCrNqo7uKhrRxzmoWImYDtxh
3gGb5YRgmUdmRfo/2/XTsxWpvEOqmBXBhy+In9qt6tIFTAFP0VtCFWrB2LTwfZNAwZ+SObEQ/iw4
ljWVLYvbrvX64SakPDzsauYKb/Q0BwrseGt8IInjHLWiQD04F+Afgkn4ljB9+Ip6gDUv2QbwqKHT
dnwmbff2djxa+w+fvzxiifw5zlSbD8EoK5KzRBhDsH0JAshjeSQLOYClS72gK99js1JLx37fo+Ow
aUhdNgnNc0V4LS+qUj3lYFJxBLx/xDjGSRM4A5Myra3lpdDyMo7NdoOGzv24dU70YNhKDf04PmID
4e5+GJe4MScxR02KNgm4cLWPAzEz4Yoh9FqUTARvI78q3tXZ5kJcfPviTcsB77G17nY4T5Gd69PQ
xcgcdFfSpBSP9URg1obCNHElCfCng6TXqaDz6q/NsF3RPnRod/YUBYND9/Dp93fuPDQCfWfwx8BQ
sYQ57G4HdQ/aH2Q2DRxcNTB9Q1lF2NtlWgp2tEPBbr+NsX/Y3R+qLbJxcxQ3WnMcvInNoQLrvj0Y
hBhQpHCzEs/ZXlmRc9zkYnz9+LxhYRy2Xr+uk5QaFhDv7DA+17Kup6FmhaYgylSola1mulBQfdRH
RF9BQ91GYEJnnRLz8TpnEzN06bTN5WzP5rWblvoeS5tO8slinOcW4k9zBA/BfyNT4CfLIgKhmge0
sFAgA1MRsQBlojTJ11FwprGJlx22eWTimdCOYL7dr4NZ6W4aIf/4rw+LVEdFtFXHNAflOFqKI0IT
tsQgcAxDbCSFc1IyM6D0387d2NJz4afbvNdyv+9xf+gMyMKajN3dfTd0ULDQw4BdwyLOBQwJ/G20
cKLJBkyxIMEhufJOzdtcvFXzG0tGYPOtvoAP19gPT8cre4qqYfH0sZfdaxvgVyPBWPR9qQJvyqPm
yHVKgivhRaSFZuUVaWOHNJwQs2/bEZuTxad4MJpiwYBsZ3ARCoKqyyiJxWqhDL4fYvux6N4+/3um
5lJrYu88Gdo5T4aOcwdBd6Ktji7riFOReUHIpayJz8HCVy+9UIwGZvxbhh3W42xPdIotADR86NjJ
Nvo4Rd/I7ul+jopKVbE6avuhsyxlSRFKBrSy0MWQkB24u9F6NN90TKtC1O2KDUGdSZH44brE459f
hnfHXwM8rt2v4+c68P5sBiUsO/Y6kZxQ52GCMqjkSBbCiwB6hAX1CmLbavVLQY7VaytuDh1u+NxH
tv+jjkQ6p1krXGIGkaosiRQL8i32NMB1IMxgUCfGIOQqzNus0u7POz+vZrY3DPB9Mw3QYXswXsjp
DwyWgq2VGFg0LkaFU2vM5DyEZLMPKsCRFlfX9b5/cRzg+2YeIFDcyQcb7eaw+R/nkL3GJNgUKxIZ
fHxeiLQ4PIJbA1YjxXmZNlOZJDU+tt/jH72YvdEdC8yAEThDHH0ZOlO3lEwM9swE9CO2VYBWtC5z
nCBrOC/gw9u+szAv1xIxdK6F2WTEj90q8yzi5Y2IJTlrtcQUMtZlM7gRFHNt4Ls46VFrsdfq1ZrF
L5auNW81bOw6rpjZDethzenu6Tf/uL97fpxbVM2UTasRW+Uoh+9T4dApwZUi3oBdWFJOKigl6CuN
6qvVLxkRzUsNF/ue4t2rXhlarfDGX8HWFompDg1MJC49GOAxIJBg0XCJdMrg70on4e5r6V5HmKor
X7b66uOWatWRRYPQHfSj2r/er4o3NPoksZOl2IDF3SAFJKc4GS0zsGIjF/Q6vLtX0O4a2oehR/um
/x/Onv+KGIfLKetJOx5YLgTxmOC0o3bKIBZ4CN6AmgKT4qq433Hxi6ceHzZEj9suXfxwts/ef7du
Rkm5WBYRekYVNCpBbrmkBClcu2DgzOtXkhHXN6PMm69IHnokD12/ZpoJX92Ln++nbEQbBLdBcfi2
C6/31OMp5xZMA1DBhidDFX89CI4rvxABx8crDjonZRTn6S54N35YgQEfR28qTYGqEoihDk4KFXCs
QasBA9KVGEwCe+LtRm+2VCyZsGK3lfZWCt4DKmvnb06tDjh/c8LIZl6HwiQWj+IwBw5/gcWGbbuc
BxcxOZivnjny+hTOzWs3LQeix9YGx3892mIqEUX8v0kLTHpABw/yxlEC4ghYU+AtWFMQQwIuu2al
0OumE3e3u3LoxjowYKXcd1jc6GnET/4KV/WHh8P46dgxOIe8bGTWSzCkcTiMiAF/skiJQbcK7AZD
PbuGr/Uel5Gcl2+13Nx2fjDDepMBji0H7JSRFFrDX7UeyRjOgkc1zSiOGOLgZgqQC1GBM6ewUt6H
V1XGC2Ve8+OblsxtlNy627UL2kQgpnzCqSJZ6BrsmP6oCaTgS3Q1xa7xwCUSGDil1iQLKl0nLenb
RTvOtLyU+9gcQHfbOYA7OqyC3WDWDOO5t38uXM1OMDhsoHcy1pgEJogvohAPNonSpaAmeikksFj3
pqXg0CHr6IggbuA/F6geGxyNIDDf5YgtOALeJTFFySQPFFsVc2T9hrLzqg0xe72NSMOH6wjQp4df
7+6f5tTofEFd4EUVh1BtdUAgfD3BOEsSD1qbAIfjulEsdf1Xz8GSigv5osUbLZ/Odfh0s/f50w7s
rPvzOThaISUrZmnimH+p4WIQrAXkbCxC8VAxTcQbWSEtBSvit6aIHUbdAXb9elfhrI5Sp0JEMwwQ
azi3FE1VFg14XzoSVZSRpoDtzf21au/n7y6LnZ+bKkHbK7uzB752b374+un57vnh6/BxkwzHBid5
Alg8jtrlqniOE84x4Y5zwzjxoShEpWVcUp+0vy5xfXnbJoO9fq1h8WA7KuEwzq2h/pcyxaPnyrXj
HYYbmwLYINJR9BvAynLcIp4ny0JnnVVK/09IoX/3dn29beNI/N2fgi8LtMA5EClSpAL0gaKknDdx
3aud7N69GIqlZI2N7cB2dtFvvzOUZOu/09ti9dA6koacocjhkJyZX61n1fmoi9Dh5q/Sp2amwwIe
7PBte/wtq51+IThY8ZHyHzjJ0VA76OwvIjyoYrCmw7wKY+GHAUMvu9j78UANuT0yb3PYNlpOL1Wb
wmcd9r7PWvZ+5WA7P7i2hibSFX+6+W6g4ooygeo5RqhxwTyYHLmwKUQQ0daE8h/Ji5I/a0iadkh6
Rmq5ubtv4jyGUgsfly6RayGNMA805lRkijrUC3zfBD8KoPe+3U191saY9n3XkWkqW3t3mOGnOkUF
sYzCACMFBEOVEVtrko8jxDBwKSxztP/uvTqbPqh/sw4fj+o8qg7GZdobvTGZWWc2duUUBpf0cRvN
gtEJx7c4mz7CF7k0QEUO2hwGmJYaupS8kLLPlt0X+NDwTQMmsw7Ok7PxVBx40I7DFK1Cx2CMGgvQ
bKc2uBDTqweO4tIFG9FrpHZplFbjhNO2GedzV7UxVV+yhy/VjVvcCrZndIXxBA3kwdLVx/MFWCaF
EeZ30WC6cj8wmGbKeZ+Pa1nVQE+ApzUhuvwZ/Uf00m2Fu+sH8+8Q9Woes4ywSld5OgmudRxQgw4X
CDfpwApPG4yBdIRncWodbt7t2Iq1DJyU4uO6BKuOz/C4WjWP2LLVGvcpqrmyXBZQrYw3Do3d5ONg
JSoDHRmGZMClcSMvGDxcq5bZYKpDlT228rScEidV8BJcYyRFleajKzuN6Fhp3KM2sIamceQqV75z
K6w/Z1JHxiTgrm01+CtBhzKvz+ZD+DFMGhhisIqUClMUqhB6tAJdFxoReFLB3BN6P24xdualJwRj
3nU0CBJ6HWK3kPW6pn69mMMkK3HDw/W5df7zpfQjnJAciR6+Rht0VTbj2FOBCSjTsP7454A54UFd
1jYCH9486U700VrD3L48Ayp7Vm9SxIGE7hgL3HRToOsRqXQsA+lidvMYFlQ9Lr2NAmvspG18RbjJ
T36AMDHXp3vphIKCRhk7HP1LOCL/xZTCyjc2TPhKsAs+u98x3Xfxy90uflt4eLi0Msnr8Q33KPIQ
qjxXsTbQjA7MjwhIM3Y1Q08pLseRinUYcyNcqX5EAFWVgwFc9eKNhowd1maZ6KEaD3kyA3d71Kai
cGG0P2weXwoGDuPjWCGclU1P6niRDa7yBM4L/F0L8FpFfTZC5ZW6MKLrg3ldxykV8KWzLo4EN9qH
tYIWMEm4jhFg44AQYCzgRpOPCYYuKrALsEu1V+rc+7yDe/+pMlo3u62p+eGDLpMnT3wf16EM94h4
wPE0kY8RBQO9sxTVVKEMfcO2UXKdsY7TVj9dPZbeFBhSsP4jO0eJuS4e+Fr/XQNjXjPMeoQ+FdrD
yHaweYRrYcIDKZt+o43CqowkrCPhRgLmd2vvE8XJT52qsVE8UJ50YYJ1PYRSjiM2VqHrgO0itREh
j1XwzrDjsvyhnAzNs6eE0/b3xZul+su22f75W20XkJ4w4R3NfWpw44RjfoI4FBj8h8E6GlMFMK+V
NKRVXJ2ZjrVXwrnf2JPcJC8vu9NZuidLdoTkMM4DxF2jqJlhuCjcmOTCYxQMbenJQTelarmjER5M
W3z26S5dP5UHJ/O3zQY+wDXwbeD1A9kkaUYevxEYONmevO53mMwbTJFjsn/ObJK/42/rQ/ng2sp7
TA6/L592++XrOr0meVqyHBF6uYJ/j9k1cao3D9lxeTie7tcrvlS88/eKhz8qUkEL2PowvGq9zbrq
c5ni3vfVOXqYEoTrrrYvYjXOti/fCO4s4ZPdEznNjtdksTsmL59cClbelOyzwzrNtsdPzu0H56eP
5PAnxs6ly93bcQlsvW3th4XK0oICYT1/+jj6Zb8+Jo8vGRSAlZ+KhQXRDfkTHh6zbVnmQB3lrWo9
WERRC7FyD18Pk6+Le30Hv75GN5PZZzIq/l/890vUTzaf/M8+NbP7zwvyYbvbjle75CU7rLL0Ixl9
Ol89BZyelj9GenVc/4EJ8RcwSLH7dlywlFK3pz/IyNyQtT3WGbqY5zRoDjb7Vk566KShnJ9oONDg
2msL79sO0X15nvBKGipzmvtJwZ+FdO7i7UxjeavSIGhEJ28VeVwyCovUoKDytzDs3yyPDak4LFqn
lXp+npOfJwvyjFoRew3QplmLswqN6KP5kOfQxa9OiPTq9ZRX+Q6B4ZakKQZCEGAaHekrXffj6Nam
Eyca75DZdtXzXVVV/Km+u5uZwQ5AKb9SJVsuP9E8vyX7lLz29R+XneqRJc3yTn+9iepSVy7Bql3t
e8WfZhtMWLpIngnjrFcaVu0xX3INSaDnvB4yMtk+7S6Omvl/7tbHLBd8Bfo0u9QzoZnnC21uyc29
/hr2tjP0GHpqZqQ5JqvfL+gf5l651U/zMF3ahtaLAe1D+LmZoWf+kj3i9tzUNmVfPWCBlfUI4G25
DPVCX+CNXomChjGJNJOpvomGiWAVVm3r5fJu8vk2CmHk9H5Q17mS04rmWC4X0a+L4S6twPio83b/
eWJm4SB3QtT6zsZOJL16Jh863vn7UPg+herc5F21h6hK4/x/s8FitrCz0nArXMmbQvkqv6D5F9mA
EjzUBl0+2Eoap0oz+gtQSwMEFAACAAgA9ZAuSqxbKP4PRAAAXhUBADMAHABodHRwL3Rlc3RzL2Fw
cGNhY2hlL3dyb25nLXNpZ25hdHVyZS0yLWNyYXNoLWxvZy50eHRVVAkAA27Zeljn1XpYdXgLAAEE
9QEAAAQUAAAA7F1Zc9u4k39efgo8TE3JSWQTAO/yekrWkXjjQ2vJyexOTbEgErT5DyVqSMrHPuxn
3wZISSQlOWKS2prUyA/WQbIvdP/Q3QDFYRJ7PE0dVP3z4ukxm88jfvyZTz6GmXjpxrOMz7LjHn/k
UTyfwnv0BzYM/KcyZNlDnQT8nXyKo8WUpyefbi7vrvonb04KakHCpvwpTr6cfOJJGsaz9KRz8vuw
O+LJYwjynLzG/3nunRTv05Mr5t2MTvYUV7nw4X8YhDxxvkFbpRC2rqmham9RC/4f42Pt7ZHSjX2O
xi9zXj3xd8toGxpqXbMsfORHYLREmHBYG4HffvsNzPqncpfyBF306sx0FStKj2X8ZBxOaxyIis22
ittYQ9h0dOxoxrFu2aitWqqq3IzQNgXAgggO/Y6weozxsYFaWH+PCSZHyi2fx0m2cRXGSmcWz16m
8SJFd3clGfuWirs2we3zDqFt0zqn7b5tn7eJiVUTg3g93VAURUiOOk/sC0ejcOZxdB7HmQN2hD+U
ci+e+amijF7SjE/RBYzDfRJmL8JSGfcyKQqfsUnEfUXpJix94D4aPySc+StJVIR6YTpnmfeA/lrw
BVhqPcpTFs7ambxAUfrPHp8LotUh6//edc87PbfT7fZHI9QaXbwf9d9/OiqdL8Z5NW4f+7fX7sX1
p87lBVzU692Kq1iG1Ge18kfVEoVrUKjCsXtzOxz13eub8cXgvxTl0xW65fciPtA1ZwkQo6qjtNtn
SBFXuO64//t4I+wKTlj1TU+8aZe/IMLGf4jTrI9/oqT9fJI8PaPR1b93bz7/DSNW6cBJocekuUZz
7kH0euATQZxM5ZeO0r3tjD5cXL9H4/5o7KATIOsx74GfPCXx7L7t5VTbGYzu8UM2jRTlfRRPWITG
CRO+twgCiLRWAlyTlCPvAS6Lo/geuEZLbzxyFGxpmmFqmmrSY2zZhqai7uCaZ8IoG0Pwb/mwm0EQ
WIHGA88K0Lg7BJeZzWAUzYCTgHpqgE1w+IwlWTi7R6PRJZrx+zgLpWZ1jqaO9+fIDd3eyRGMD5bP
+DEKIGKw+Q7xBBBRrXO0DHtfjrrpBZTu5Ai2BajDx1sZ2Tom5DtVMzDVmbahmvFuB0eC1e9Ubcnx
K6oBIu6vmm+TyU5G0k8A8moMbON7GVQccYOBgc3v9TvDNDzibQwO3jo4RIMP3z04BcfXBofoBsb6
9w5OwWib7ahmQNTuy8AwJzagRP9Z4F2YRS+APZnEhe4ALBd/CTlwiRN2D6/wNRiyhhFUMwnZe6yM
CdF9vI3fTmZKPsnC5FrMuo6z5yyr1rOsbpzwbbLJaSpgE5OpBirOc5zSJNAV0P4hTjPHAXnrB1qf
xwPHueXBMEtOd15+9uuvR+gtglRnG+Fjbz53qGUcKbip1PBCd0v9PokXc8fxw5SlaewByvNe7C3E
PHcZM58nrdWl1e+ltMTUUWuRhRGkQo5p6EcKaSqe7lP+NaP+77avW0IAzajxp834+7pmqz7aoSNw
rhlD8iT2jkF6cHQQQduSvaOdIvi2TlWDoPw8x4HXDSE2vpNyQEbdqn4NAliQIuvNbMAZMW17bYOB
SKuWvLOEzdJQqDmOu/F0GmaAKGufkLr7QwjJN9IfNDBN7ulCFvVIMZrKgj0W7JDFk/wh434MRbbH
InFAmoJi4Fs6V4YLNm0whtnUIQzNNnY7RBDOQoEy4jNgUMuPF5Dzy+GwyMZ4SDE060ixmkrBGH/F
LafsZSJV7U/n2Ys0gU3qoWg35unr9m6ecjYp1L4CGL3labxIPC656zrdoTwFSSCvaeQEduD71k4n
gGp5tpCfO0HGk2v2GN7LQBzGEJIva+dcSnjLYR5IMxBhlma/visRhoR9lAHkvXmHJnEclQ51oih+
WpMexxezRxaF/t3tpRxsqhMF4wZqQbGp+2ZQGtRc3C6LognzvoBm8K4lxJDzAEatYDGTlSWLHKxT
8GVMGjIMMBRWdYYP3PtStuRXrJh/7khJCj8H4KkKD8GumSAfbYh8nIMNS8hXGuluFIIryZlJzuU9
KLN8nrOFcVvLm0u2lrd+ZHPYG/lFmkFG4boYQr8YjtPHOPTRDgOd5dNibfRMm4J1tIajxyFT3z16
4k1z36+5eTVk33yzDRqHWmEonag1S2nCz/WmeGHwXXgRwevnMHvYL6upWGBJRvRgdqiyL14Qk1jb
FDUaKson3HtF0dbmoeqIyACG+knO0iJfgbkJm82i1maYsXLUiuk/518way0PCgGGTIgCEJOWZKCA
S63i0nyiwLoAEKuZKBNDh5lf+uLFsOs4D2zmR/yKpynQPS1e05KQJYu8q6vwDq2cuqrZm6OvKHTW
ktwBomKRGW9QfvPtpKXzQAHV+lBWTeAtJFegexNzWZqvAd5KWQtCt9zj4SNPrth8DbXFsVwpUVjm
DU7Qq6Jm7ksw72/SyoeUAOgRtZGITGU2rjpX0YoG6fyCQwP5RNStiUixDGKDWLiZ5VTDnlBUY7hp
sTVQLmYheJk7h5KvLFQZS30esEWUuT4X/YfKaWforIhU1JryaZy8OMSgUP0R0lBuW8TqTrlvZitj
Sn7EKPHTBb/KjP4f7JGNvCScZ2ucqgAUtWwWQA4pC97F7DKOwa3mPBGd0c9Q/edcjJJWmi5GQ2vI
Bapa8goXEWyyHqGQqRRndAd5DS3YVaYXwWQQL2Z+3s/daErYWmCZHCPX7Q5u764vb26G7sXI7XYu
Ly+u37s3d2N3fON23NHN3W23r7rD/u3g5vbKHdxdd8cXN9euK3Q2FWI04wrJIvZyrrkGvXgk59hU
lQm3oRCzKUWNBmWK8CIrBxDOakjK4NRCZUKrPjgEnQ2yVaDpw8UY5vxJ/Lyj8eOpqmdTHQGd7iIR
S1D9Rzknx/OL2ZVYugKqVFeo2pSqaQSogI1r/pyTFXVsLDTXKFEobkpShwLVPY9i78sdJNDRiuyV
iCgoji7DNMulFnnHIIwAz4GZiRVaid7OfL4reiUvkzDPDwzk9oajFRPhS6phKpQ2JUXAAdt/XI/K
ixfurC588SH9AggGyolFPSeUygBe5e20P4XldE2hWkMRBB5tiJAsZoKgYcFQ6M0IGowaFqqQE4Wp
BE7TUCgEXBROnufesf8Cb9BrvUfbNCYAtxpy4Xw3nvzLc6c5LdMGvzObkWLBZMKRoFQQ0Wywl/Xq
qm4du00Pm56KlgQA+VvrtS2h5/F06mAKaQC1pXQgmb9DvLLduE7Bhf28OyxstWqhYkf2RIFAKpc5
XSg0Zjyq0qyS0jWdE4AU0dr9S56f8GyRyDFQZa9yTW2e910r5MrULIPaummh5Ynu01/5GzkzWVT2
FhuRM6mGcz0rtOhKY/Jqs1jYtDjYnrIZzJLJNxgIZnn0Rfb83b/itGKYJfUto1b2J9XjBjZ05C7P
d6f3iRvOHuMvEhixsTTN/gR13/NrBFcG0snKQPQf5xLaP05j/dUg8CAXmHI/ZMeD8P7DeDzsMrlP
oKiiasaaRywTaVhZoLI8kB1S2xebOzpZPA09mIrnLOGdmT96YvNhlpyzJAl58sunzu1F53r8y3QO
wq6MKHD5uLMV5Mr+rVkGsyYeSp7ELO1m2WnAopSfOY5QOE9CMVmacm+iuu55ExTF8Ze7+cV0fpMM
4uSJJb5sfBO59NCEnBboNkb5VJPej/hMElLt2gLC15Mx3TJEMENed87S0PvA0oeO739i0YLLdNvA
tSWBPUgaJvHQdoIU8MZoSM+GGtYHer0wb4AkLyWCcKzWpk+5t5Dba3bMYRrHE+IRBNkLmI3742SR
Zrc8hXJKIKwNYWc1I+h5AeEmGhXnOc5H/uI9wCybt1MkA8fhjyAypESrNi2FArjWaN+DFdfJRLCS
VPsFTTHJ41qr/EoEXi0jrYQ3nthUY3LhV6REAeZiK43oN1FimVqtRb1tFba2cs3tCeRArvvf18S8
u71cF415P9btRiwFl9CxLFvvQW73KYwi4b0FIkBQdBbZg9jUVqyPPbAo4rN73h9iG5wUyIoTVl+7
Exmlq/kME7vW6f6q3IapqYa/h9zYAnGzh14heyd9mXn94UfvDtNcinkcQjaWDB6H2MhlXZMafqS0
9lVOvahZ3E9X7LlfUcclchJQa63xvQYCFwp9xNZ/Ci8ciaW2RQRJ+ohnmBQFb67CpvyP/bpdIcpE
C7pRmgDuVU4TxBJFQZbNfDcBM7I0HzPZtG1EW9XUSZl2PlCCRbwQiakl26PNshqVlknKycz1kyKR
h5oFm00NYKrmBsWVSXXNlj3LRiSpr9MSySSOs5qkOrVkb68Z2QlE/pqs8C6+TOqoBEXZjGuWimhQ
em9NRUSQiibaj01FDKecelyPZDU6Xm/XaJKVaX5gEiifRHab3rtZwubbErJ9CNEJXRGSvZfaNoc9
+iUWJlq59bKq47yHYSzrMIJJbffCPh0dnXubHR1MdaNxFvHVlk41h/hqea6pxLehaKmMoty2YMv0
oZkj2ra/dsRJ7L9INfO8oSElzNaUVkWwYcmMoaE76xjVCa2d2fyWSgKrIJ2b8ukTCzM3De9nLNrm
tt7rgGAxrFFfDdCMzeI04lz6vm0vc17v7dtjvL1ZUKFiqrZK1FLTOnsI0wJUHEcSdmEWKjW+862q
juMvEulqp1E8u0fiX7n3LY+d4uidmByLv+gMnZWWiEy9Fg5f7wszj/MJmkzFFOI5zgcuVjVSjz2K
NGOzOS/msdPV2WJJL/SuFhl/Pvu1LOu3aBQtO/i6jlquOxVU3QnMlQ62zfoWoX0U8wE+aoqBqbw8
8RgtVZQ7B6w6R4rre4L24AhzKV5zlFnGmKUlewkhlutaNcneHLWOzoSvCDcp8CTfpGKi1orU8YOD
iV7fIrSPaJrq/xDR+rMseRmKjKn1PeTyrU92rYbZRxFj4ku6b0qO5Bbh5c6T+PnltBR6CyBbLLwD
3++T+N13GfANuPd6lcWm5VUj86g5ku6Ed/vHwTtWfyy8W7VcpVIX5Ivyh5zl75WzfLXs0iYagzry
7R+14Wzl43mEoOTJN7qIL+TCo1wNATNUUawu9kYTwLYIN4R1r0e5P7m5j+WrheB535LZ7Agi68cF
kf2DcyQbgmi5ZwUBWsaRqG8PcfM3i5uvEdSxZWOM6gvLZrPtv1i1PaIbpS2SK48o7qRzwlmYhSwK
/4eX0woidp/WzgVriwUynR41npdt31puL9jIE1aTHja3beiyGrOaeEHO6ikLxru56bUp1v5h6NB4
XnxlisU/Fh2w+o9bjMFYIKLwh84ii8XthN439j906k8MMMRcpHcPrvcoKspvtAIT2xdXVhB3H7oF
NdMwawC5h9OLOw5yJXPdYKL1w3xnUhZOuf8ZaOd3zchyDKqx0jZ7sScqvwxifZiLlK7vj2laM1om
XQb7kCVfxP6NOHOcObxfiQUJ8MvFdB7JeMxLVLH3U1wz8uI59y/ZdOKzU7EqgCA9Xm9/3Tglz6nr
p4ibj+Um1ZcZE6tiojIVu05L5TAxIFBbaxHzvWyq1rSY5L5v+6YhN+HmzFdqnotq0REDKze2nMqj
lyDKWWv1toHEWK8K/OBY31CIGhbHfqU8WoLu8v3ptnAp7ldYC86TtT5C0VWrwXF+cdVyJS/LHZbF
yY8gfLYso0TVCX6QCMKto3wN0hI3ElXJy2ElKm1eFn/HrGX+f81a/4jCEJMDhB8g/ADhBwg/QPjP
CuH0AOEHCD9A+AHCDxD+s0K4doDwA4QfIPwA4QcI/1khXD9A+AHCDxB+gPADhP+sEG4cIPwA4QcI
P0D4AcJ/Vgg3DxB+gPADhB8g/ADhPyuEWwcIP0D4AcIPEH6A8J8Vwu3K7WbdwUh4SXY8T8JHlvFv
2CavmvmdxhH3Sgje6KYPXdOZvCMlF+Yq/40sCeCk+d74ncNCf9ywaD/4/iUVecWznsTPiojHaRUP
fULyF4JRy9DakzA7chSEEvbsbDx6SYWBSya7Dni7DvjlAzB7YR54qiqY+OGOS9LVAaGbTjTKuC+5
zzcPMHnFlgO2YIISawsTEfCJXZHLmuiapQlaWN0msDiAy6QMPsETDNO/OEJ2aIJpjYlhit+RhgPa
Lib6xhUak+YK5+Ujq6d8oCSIatyxSsQBL9kiFhW0lMvi+Uzd4V3+AC1V6SdJnMiHchWP1FpdqSlj
cZfa9WI6WT75DWuKopyH4teR0MVU/nKxsnx81vPqyVmojapfYhic139ZsCWfBtdGq8fBoVOrY/UG
JtHbXa2D23Rg6+3OoNdta6pmD+A7q2uoZ3+/R29VNfe2mcMT5ni7/tHf0UO4/Dmylgqaax1d6/ct
u21ZVqdNbXPQtsBJ2+d279wytZ7esbs7NN+gWJXHNzblmegQO9t+Fn/LmJAuxVqP0LZBO4M2pcRq
nxO93z4/twaAtb3OOTGajkl+rCwnJ5xvyMk1nwbBZFPOS37PvJdt0qo2oaRrqm3ctWibkp7VtuyO
0T7Xqal3ByakwHi3tDnd12TOz6hIDnnFhuSBptGahWu5xhbZu6pqqbapt4lFQfZ+T2t3gHRb62pq
X+8M+kTd6gNVytulr55Tlj9ghl6XH7QK8KaH7BLc7mALGwa4bE/rtanRJ+DG53abnndot2MYhj0w
dxh9t8TFwZKo2PKCTVEtn9hbsWbM0+x2MZvx5Phi9i/IJ7h/vhA/V45a+FgQwSLudIqtAem2jY5G
IO6wCiHXtdp9rJqU9Antmf3d/rJmUeVwPJEvdTx5/aKypjZRN1AVvjT1IDDRW4jxwjqC1mgxFw+f
rKCJ0R/0KdXaPbWvtalmGu3/I+7aduM4kuw7v8KPBAbZzvvlMa8e7UiwbHkG+zaobjZlwhSpZVPe
kb9+TlRfWDe2iB3CaxhsqiuZeSIzI+JEZFQVLGtk1ZSSvTHS8bQk1ZmOh+g2nelm6DZrsyF0w6fx
vCvvfnmbHu7v/tiWB3oKO029liuwZUz/Sq8kGX0flKs2Mi8SZ4q7wEIqjglZoQIth5giwO5fcvn9
25v1A1zR95UesnfYK7Nhnpn/ecOLPXpiElZeb9WTVIcvYS66TkMqeo7td5fK8pXcg8akqpZZzhxW
UeTMYs6aORM9N7lqLgpAf9k90KR+T389GMtrpWdj4UtrJjP44dfugV40dqlp1tTK4i+OvwJFKUV6
IbB7a06wdg2KV6tgNqQWEIYkuMz51L3fs/N21Lrd94dhlhXxcHEEX3M5h4//JvDfbR/BPC6N7YHT
B0ArboR3QsBawLjBLAcWo4Dn47yo7H21Qc1BD9D2vS5j7S+NkVo+R2pE6JFiaX5/d7M7PrYIQNXK
AGJqVsjmCmtRJeIhMG2pOiAWKScpas7mLMS42SCEQQT8jHEbNP19u0EHy83G+C7GInRLcl31ppCC
ic83d1dfPn0+iiaCW4neQTpnnG+Mt55iaXAMYSvWobQis5E5+8HGnfU0AuGknYNw2AWHyf3X7vbx
9ESnS6FXGgiczEXkqJloibyFkyyWXGGhoOlOIyAKcYxg2M1ofC/NfPygNxN/8Lb7crf59cgCv7t0
0kOD8Gf7X0iRGkhCyIpxG4GJW2DSPDLDaxEyw7/leHbB+0chHgb45pKP8Sw3H7e5GAt4NZd6000Z
9yBMvrSrQBZXmkALIGIoKnLGk4Dtqgqm1zbFhEZoaU2E85BnhX3qeQl7Hly/GENcMBrXajMhGqdH
lV663k0bp5RbkeEF9iqrMQqqKD2srZIB1E4l/EgigWs4FfR543F8luoztu5wdYgbW2yO23CjJ/NN
D3zf/iOexoI5WfGVkiRC/wsZFuGcUGDPWcDh9fBDyIHlEnn1VUY455cY7MNYy0IcLo5kEPRi66kM
gndHTf2fL91DR2/e2h611ROR4A36GBq2SkYwoiJCs6RiZVW7pIy3JfChtdhnML5f6G8CZr0E5vpo
u/qXEh9xODLIARF7jDUwCRPBlAGOUMlmyOiytvDG2i3iGHQ1hhDUAoQwtRxvfuwt+bs+s0fvUh5y
RxOUx37LrMaGyXHZsaiUYVaWEE2pWQT7ksWcDbK8rLNmE4GulgTaTpTrM1z5IChbvad/QyjeSyVt
76CrN83xzIorxB5BKBJFpVk0w+EMA3breWPYPayXbcPIDL4fYxm26i9N5LtekK+Txw3cJwY/5OHO
AWPuvblUPkCUCCkq2buEuCoilm2plspFxkqdl+fHz9u7H94+Y6f75jdg0UsgxiJ0dkGEazvlfF8/
re9Pb6IgwkwWxHNNzhPrkpqzhsAjwGqiMm8yREuy+QrL6LN8EeMbDvKMLRw2GQki1cJa4Muj/n4i
FvZPOt/aPXZPFATSww7qPesvtUYhpGMOqoJFaeRxE35UeKmc8GV6kSX84f3f6XHtN2BbAzGeAzEW
Q/MFMTQ/bqnb3gWf7JA1K8NXnsg/dKJYbpgRAgpitcCGQuRbc1MieWwpwxet0bDHERRrN3Mo1nUT
c3SPjfgRhFogAtibof4XQLIyBJdApVMuiGOjg84WYVmpDjMZG8yk/D/v8f21EWC3pI5uvT7O3fYY
np2mjyaulWBkoXRMqpmpDMcdfFKItotAGGOy0XVM/Sb9jDCEsOBG1p09bsN2v7v959X+1O5kE+xK
kh6ZRok1CYZfNBg+YEGPlGC5wtm3QMmXMEYy7+1iPK6bg9lc6Yn93cfW/4LJhRPrlxB0biVII2JJ
1StjGIJew5TC6kULklOwv4oVCCqz/iYHpb6XF/F49WIMcE6gzXYrj1N4s/lCr1o4vTng0hixwv80
hbCqIQltmfIacVzRoJEZP1pVQRRToMZuPIWT3oZILHfzeMYeOcHT/N3c/fYkXu+3iNhKQYAEDCM0
EICag220yUMblGPYVTw2pZNS/jX81pshhpGHvvttJJMQfEEm4fuc5tOBz9Xdbnd1MpLSENcleWBI
MMXBgydSYkTYzBJUhBkFVQNXB5Msi2Zm3u8EVliApafG5ocPH7671Hte0NuYpANXCtGCSqpSjjoi
cHPgO6BftoYYhOZn5xc9Lk8cLowRrpcQXrujdfnhbX8ScVJq2Ye2iAEaQhsFs8wR2gYOBQLhRtTu
VUPYzqHYr+PnR+OPkGu1gFwbM53b7d12/9ze7vbD4e3xl3t7IFXopfHZY1trz7QMxC6xr0MGf9HW
5aAcvH4KL3KQ86GeWYR5w7FoZk5frDEnBtbu7x7fdw87OOLjuhjfZ3ykdTHEqpkWCrsZbh9r4hQ8
VCs5WGN9a+fTKU/v0npxkB1/eWazHd8Ku/t+AfRI4uD1XOLgN6c45f7z12swj6d96MiOUxjtUmZN
gdQojR8pWaxjtqYVTo9ok8uxyqi7CZI5u7drM6WO/a588+PQQqqV2jMFbXkPTtliKEWoq4KTiYIF
zRUr2SKq9jxIfz6zNRtiZAD3F0fQ19sFI7jh5rht3t99fEoQ9RglLInThTOtDYxNLIF5AY4FyiVh
ZgS2zn+AcbT8p8GHkJ24miuxk1wdIW/+8pdufXNErbjrGW2QsrYENeU1wDwKk5iXjrPqRcxaaScz
H/vDYT8jANLON57b+qtpfn3/tPtjdkdzvdK0A+HrhGi2slI8omWaSp+xA7MNSUpuqu6T02f17Zmz
u3y4djFGtl2AG/hRT/I/3n14f/vl483d5KziYLhBl1WUIbJCuQUVEEP7yguzIRsH66CT5a8UoC0j
GUsTxJI0Xc/knrzr3f3jzfXXJ1MHn817aYr2qVSlGW8O0mhEZ5G3BhriPKhR8C7nc2572PEI2OE9
OiNgXs9OXUav5zmmK5wSK2FWktP+sNAp1ZJjCZ9McdA3HwO0TCs4+CZ1bvYbGfinIZ5LxD+1uBjj
vVoQwq8nQgzzqW/o3TH0xoFLqf2K8mn9JwlSETY0jo3jmiAf6cFIKhhfC16lomv26SU+cmm051n0
tOVYPj+P5BCqbK+3e134vXx4Pz1uMI5Lazj0tXH4x2I85eQbCxWySY+rSf1Zxw0neBdjAa4XpOqm
x1W7z9st4tuH7eb+493NOLVA6VDswT4bKnpFCdXE4LF6DQSJzuoNxYVQmQRLL3zO2tTX4OsfelQ/
L4Ea5TumzcYzsJmbZEQt4WgViEj8vP14s3t8GBgF02/T6HhBPEmJy6bIHkdQOREgdwp05l+DFf+P
/GcMeyS1VXZBanU64FksWbsEy1uJfQyjShG16cwQ4SPOjqnBFeU+aS9yrTUYE84Zw1HPI2jXbh66
+uvuerIly3b95eM+lbUjZGQ+RJ+LlypqmQ1oaAC5UHD7ULgqwdO8i3RsaF6WgRqOsDzjwxZjGdZ8
QYZD7RQRhE+fT/knItIp6tQkps81DT1RiHBDKY5ZEXKoyaua24RinHoYDhz4Zu7jghDTaHsve76/
u775eHjPCHkUofvj+z7o9tgPlWvMogXDwJRSCioa1nxoidecbM3nD2TmYzyXj5w1HMkk1TwDE6S1
k2j7VHalBCfjy30VfebRUrClSqssGt8f5zulTKqu6nM79NPC9Go999SIG/SCk3v2lM5AY0Dk4AUa
5cooQeqVl0wWhP3ONHjSbx9Jnj+pi5M2F2O4c/0KwU4jWTpxx193fS5mf2AXnFypfZJNc5cpdyE1
nR4JQ4f8IBuylMS15Pj69U5Vj0ierwygqxdjceySjGGyTr9ubz/TvkcsRQm7/ozElKjB9BhPGUGe
iVTO4KhSMXCTS9PN6tfwXX/F0MuN6MpYGL8kTOenR1qbJyeCLed7l0wfRMRLrSVVy5qhuodEUsmi
mVTQaZhyemfmi060Nt9yVMMWQyk6buYHlR2326PHeXtzt+0e4u3HLQZ/Oumxsve0rVWja2mscfAn
lTkdbesImx5dSpTrleVPYlILQMeCLhCKThhxJIqTV2pBvbykzCCtEzihUkVKRmfhlEfP2H0ys1py
TdpWbWM7Z7MWEtgYWi7hUUdfVG66j3f3O3ob1Xa3ozrg/Wsmn/D1lWdSq2QTtoyg8ymDIBhBHPiO
iRKLBJfVn4kOPNT5fkcQpZzH5Z1UflIj+ra7+xjBy7/ubsjlH6xS/0lZYsyUEFKxSGUEyhu4fYct
Aj9gijYIop15dTI2hPRcvcdTi7HQalHozdGtfdg8bLd3P2/pVTDHtdDSrjTpA6KI7EIRTBtHJaWB
s6ANYtEUJfi28KaV8XLMu5uguVpAsxbP1HBcj7xbX81hhOxL12LUrRQOKkOVBTxGBsMDb2dTCg1k
rHH3okKOb7m4ebuxQFdzJtQZ657OMjfdwNLYYPuQrTabOSJMZlr1lORLCKFhd2yIRuWag4uT86NR
Rxfj0fwShKnhHjrDpRqmStyFTv9qrlRboiU2tixQPeictsm45P9DbztsMRFhYZOa9XZaIlMBnJPD
wc/+yEsH6QC0edoE3iYWteGsxSy9wD5o8RUJQqzP1MvUsSzreazbWasmsqTbL9vH+/vHX+mQRO8r
M+nzui8r5k5WGBjWQHWwFhlGJiHiC0qF7DhCenM+4nvz46n/56pBTg1G6O1mXtjSOWEHuctBRZ7c
+xPfsgKtpBpMisR1QFwRswEltuBvCDaK0LPU5VJFXue0WRg+8AXm26eI3vxIO2KfotYu9GU1rgSZ
QcOrE2SgiZBXKBkH4QoOCuhC++amOHT+/DY+NBiDX8j8dW49U8Rfv9z1d3ruh6ZDZUcOxvbZ/+Ka
9CYzxI+VDiHhAH1UzHhptVAGHrC+KCU1HuQZQcaNxsIsnKHhy6lK/pLzsKapmVrBkRSsBk0+3Y0Q
XKpMypwQKIkEWV4CH90uQ8aFCcwFbXNXdpJh6Ha3p7hNKirE6NVMNALVmEjwJKqJwlJUkeqJjXO1
YObPZhdOvY4hXbkFSIcbIqiK449P3co88R4izpkrE0SC5TKYNgqAY/aC8eIsVypmnieFDcNORqP7
9QIvDN3p8OFfn27BdY+jy7ASfdI5xWKzLaw0Q/FW5SxaKUDkjS2tCBmdmBTVDvq5GI+1sCLhehq8
0kn+7mh6qUZ8e9Vubrdvb3aPlKjtq5bwQc5SFAm1cIk5KjxW0oB8yQBDU3hUMnohRX49Mz/G8nxN
+1ObsfjX3ZL461Nh9X7r9O8b351oQS8mwtkSimHNgs0oA9VPijtEICCZWWookDm3G4ddTiDNc8pd
J9RER2hFHm9PmLyiEwkClgMvsSqP6NQjWPUiswjqx2S00SfrnJX+bLgw7HiEbLsQc+LL7Rnqsmr7
Vy8TNZdQZcH7CPT0OxUoN5NcBEVPGRqtWgwshuRZMSBaoorgwitWYx/xPNPwcHUk9rWb5+3oy+OC
/Lb9+unjiY3Lfc2YExnBKQgjMYKM6CiBsLEafHZWJNvqcs3YsK8JCLcEYnM0U1/u/vfm7pSTVWZF
JLFZBIjYhwwunfIWAcYyARWVFLSUECD09dNzGMPexjDCQtx4DSMyjmM/33aP1/cPp+yb07Q7+zxs
iAG+EtzZObKdSjFPBS82q+h91gnG/GyKeNTzBNt6AVt30uX17tOKn2aovzmhCjAYDQXxlLcyTrOE
KWOmmBZTdjLISfw66GM8dregtNdbO1GNnwqd0QtKSysu+5LrSvekcSZ9byKFhrIiUm1eFqqT47a+
/mHBT2W5yU9lKNMarHUm05qHU11O9+Xx/uQXPYV5IYRqBW8MrjrD9IMJxZIjMzVzHZI1paXxfD71
MR46zIOktfCnAvb/ei8nZQSuFSsVfHItdC+io1tqXeP4p8i2lmybFK9URnAafARZLtRZraWaBhJ/
2z6stw/3O9oHRxomknZaJ5gHQyfivkpwGmNZRdSupONN1vOx3LHTZfDHqyO4auEUf62opFN940xg
VeN7z6X47/4eH36oN+mzLUVUVTkoicyeIgsB5a4epjxq6FIJurX8Ej55HGFZnuPVkTxmoUp5bddX
k+n/+5thCn7PhLWyvSOKMSUjrUMoQrcdULFbgg6waq1JJfpSm34J+uEYyxIMW1yMAW+XpLg+pn8e
tp/uf98Oq5B0H0QZWZsKlQldgNwiFIWRDUwbaxBcNx9GlbZPRnXa3xjMZm5P1/BeM3d/e//w4evd
hkLjsJ9R+jxEmq5KWHdDNZo5SRZKf2akAi750rx7det2wvNcOHi4PJL1+mpuvzfyairrX9+cSi3k
4XzbHwqCqDBcZY1tb+nOeQ0XFzKvrAmfFCx5xVq8yhnBm7OlGKfLF2NJ5JJ4bna8gzCZkuK73c36
5ra/LWuvIy70lTuw7gkiCoTlkJNTFb+HoQdLUzKF4JP8diXJqP8z9SSjdhNp/JI008j9KbvfH2PS
Hwy+om9Idbyiu7TofpesIBPda9To1qOck02yuvotB/yNM4Sn6yMZ1us5l95c+WkF+U9fuofHP/a3
4gMxbThNvLk/bc81Qh0tPauBbr+3UCxQfKadTc0W1cxSPcyQB5w6f4YPnK6PoG/lPGa6kvJUKPk2
vo/5b7PTGg3O7+kxBxZ0n6mAGD41qpnkOvIsvZPiz6p7GSK8GEmh5vm0K3U1LTPofh+muveVvIJr
C7PXF/drkUrhqjF6FTBWhu4oppN7Bz6nvUn/5u1KmuS2kfW9f8Uc50I97MsRq6wIe8JhjT1zrWKx
rXqWujW9eGz/+pcJslgEiequedPhi1QiKSCTBHLPDy698mXcT6+pkOUTSxYG2cggwMU5g4DN6bMR
fGpwz5Rwz7LvIkcgDRN8Zy1zXaLKx+AJcaTtKJxHWxFxaBAh9ysftsKI+ivHQi/MecFCLyuGBtAR
GahKXnsQqSR2LnDWMS0NAT/BBeJe8hWWw1fkKbZ1pgY1VVwuavOGp9I2dyrgMnMoymNji9e8syyC
/ItOd/CRwXsw1kalhJCBvlj1txy5Ju0gGqQNazsmZKyCjMeHoX+6L1FJMkoHaktzBM1WYq+1lAlD
ZTZ2lmoKhrgJUrmUrDCv1ljOo7+ucvMVz68eqrketnbPoCk72/vp/crgN8xlrWBTeZ4UiBPnOit0
6gIXjhmSwe7Pb2bwn2a/qenjLaLnZNLX3ZdF6K4EDnOI1PoIromHZZOZx1bm0InAeAI/XWa6aoZf
jLGa27TmtnOesLD9zp9j/0ydAi6EMglqO3aKIoCLAy8JC7TAI1dZMB1ZiCuvtx6tIsTuGoTs1dz1
4r91HzeqwAPD1DAF69GDuMFIptcydgHMCaMSAzWm/iRVcKavYmtvGt92b+QqLliFRWfshVF4eVDA
Dtxg8Hmw5RFEqvHWYRLfcKWyZyS+Foarh14SeCt2Wwl7q7nYyIm/jaIGWxrJO1VqWqZfpe3EW7DK
UxcJiFkwUzH8AD4oczInwoyL6mVFNY9/ac9Ptxe0W7InG18NLtI5sHBZ7qacotVAr5SYuiKBdPCK
QbFqC14y8cKKVYb7kqS1pN/2UMPFw7rK9QdwkZ6Gn47Dv8/p2JPGL6qAGUMFODUGs1gcxE7n0Zen
UipBuGWSX5VD2c5zSTKtn6u5Ogxbrg5kDoIdjo9fd0/nRldJaCllxyUbtAAbXmKFocNglAZ9K5MD
7y2GYAKP2bZ7WepBb+qp+wY9TDZ6XR8LYlUBwMHyjaLN1NgexVUCkxa0LAfpDuvUaiyPyx2oM+2Z
hh3m/Vs4V6ihPp7IuNweOz+yZJXKYaO64eLtOhv6ouLm1CntouxkKJVmBLQaKjnDaMzCB9FEGfjP
FPclNWypomzLgVKzXfT3Dzmv1DDX4NDb6MATdKCGYZ10JivSZa5FBhsygHn/Rmr4PHtNtNqueAoi
7kT0sb+/+/WsiMfGeiIdcVipxNB1wmJWA/Kjy0wHHx1TPtl1N+tilJt6KtqY36w/+xmFoSB2YASL
okocRQll9B0fe+UtEVpnEMLecIn9MbQzKJ1zzJkwDwvBxqtRQ8o0LwCHlPs1O/utWKR7vg4M/nQ8
DPcv950EHZiiWH6kJJoZFN520h1VLrjINW2G0xYMLKdos7B84qamt28x0Z/WxPNdf86pFmgtT8Em
1l3QWo6l1l4oMIl4AhNFWZNJupAo6RtLYs9b71CplfVwRPSP07LUGpVcWZzOWTDXwD4TEaGawK93
KppOBYcl4Tpn8aLlcB62JkrpLVG3di2Jfz2WBvy864cx7IA9hSigyt+og6UAywDUgmBYNEC06RwD
8zFIluCSiNJeVfNwmuGCUJ7u3tTUboImsD1u+0bb/fuH3ddPx76UBBYoCixVBrunrExqQLCCo0u4
M/C1Y+mIAvsnBgn2u475lQ6c5QSXi05OTyxZ4EzbLQvMzE0A7/M/x3T1qmsO3GDuPawHgq21XGoy
epzUB2J5NlrrN4I1WVFQU292W+ol3a1tpt2/A0zzsJug+bAckGK1uxmlLwWVwcANAklmEEEywfvH
ykxjHWMkUSMaSm6Z5v2f9Qxr8L/5fkW+HLb7ku92e1hB1RYoOukvfzVl1ZgxlC2zFxQsT/BYwKMW
nHdOW8z5W01yAFFtyJu5LGO/efOx8V7F1UFs7Q5+kDOsw2+7h3MR2JR25CCjs1IdQwwHHtEljYZ2
wIoIRlrCw6oEbDFIPbnkrcn3K6kCbkD+eKoKHZNFRoCXwQXQIDDymhlDlCdMghnlKEmOvgJMVsZs
v6Vyq6JzuN1aCYLQc6HHvz4fnwY+awWqiiyOYPWCPNOdpQ6I1NihIXXolLLgh9gQDVtlNKuBbqrZ
OGuQIGbrKvyQPz7D/61S1CBewVtG6e8w0k6U7jzzriOBOeKdNy7wmoB6mJqCbVO/Fey2b9TrxbHL
g+HTStDiLWLXrhQW1CLY5fAyGPY8G8QuTokErLe/ArMkXmzaON29qanbblnByTYJ9eXL/d33u7uh
NH6BoaaKwC9gy0mXxKqUGGwA0woRR8G8YpwKsLUdS/YtfIclCZcYPD9xU/PTWBlcrAtrmnBeU26A
llZZoccAC7BrnFMeEW4sFvbFzpOITco2BJ9pBiX35om3mZwXUL7WKl1w2WL93IjweXf383GhDIuF
HILIJFJwkkBrjImPgN5g4qBGciSGsVX93WKUevreNqYf5mb2L6AWH+d6cNyQCTaA9QiigIE8MGvR
VOSqA9dMBmsSz2QVw1uOUU8+qNbkqgE1uPoWQIrBz21KDWqUOnLXUcEQ8CzLzmcQGMmhdKJKGCPe
5ls3Hlzxs7UwhbiVK/PsMDz+8nT/9XHmBVNxJTA1/kCv0ilLFCzYQMAU5/itvTS2I0IpsMgFg29+
XbdmmepELT5wqWlz8+BNzYVqsTasLPop2rTBw+JGYpSFozxSilgZg+6U5BYrnkHvSTCBhESI9awi
oeKK3MFlrCwLI+231MpbtlpYZ0mC2/Ifx3xcOKQEJAopNT1cWgbOm+fYdZ9diV5HWF6GB67A/mzF
2dtd9zjFZdmPdys29LZvFS+KDWzjx+eHW/AXStsUiP6ylMZfKAtZwu5KBf4KNimBq9c5RFcSICVk
ykyxV7TWPP6l2vzpdkU7WPRb2g0Xp3q98L4ACuD/ezz3qOp36I0KDfYlAjFKhnqWaN05As5pJDIR
BvpMcfpn2Jo1mMaG4Jpf0bCv9nvEpS783u//tz8Di6mCNxqljGA2a8QGTlguJsHMIrITImqXkzKB
rTDFlqPc1DNtHRPRM3kxCFMW3Lfub40Vzz1HbDre6Ryw75qDhUMC7QRn2QkaY4jpVTMHx35hqcPd
m5pU1aLfrCEXpvamT7BT7dRhRQhKFZq0TxIsMquxHwgrGlwKoBRSYi4yoaJ5ExjPU4PVNx9ebsD6
5kPNn21sh34YVvxhGLhH6I+pjY9NbXzgrHiDYG+OELCCQb9hDZEBh0GkAGvPEp1e9X7DC4CH4dua
3G0Ndrl4EvdVEPjHp+PnM+LgGLB2kUQXDJiaQNy4ha214DzAR1GUgvPrVn7DhSFXZDWM4YOY22X7
56+Pi0gnHwEpLJVGOEE6VvJ9PJnOKcrBNmSMGfD19BoEfDlORcDBmAYBZ+yf70oWYHY2C0IW9kN4
+HydTijNImx1R7WE3cWtUDkIKVe+ZjXKcn4pGhoBLs5xvfDpeDc8Dn+//2W4O/6xwCbDLQLuugkK
a0+IAk0WNKwfFmInlCSaWpA3cUVIe7iKItkImUvwYFcL+5vh+OWAoDZLiD0ZOdgA4HYbj91DTOKB
MODg4eE3YNERULNXRdKmwS91jpebNdFGt4hen6wBexmPDfrHA/wTT3OYaFf0VMxNs0GqQVFZDKSB
hdCBFZi7CNKGaaG4Ntfh01YTXRQsi2cqdtQWKslKe6tKUXrt1rofAzr3p7rV6RfGpFDEWxCYKmBz
EZFglQXGOsKMcQxc/hEp/yozBya5LPrhZkX8rqG5ZCla15MH0n+ao8RGyzEfhtlzAZ4s2oxYS2XQ
E5egSBXDo4UEvRCvXoxWU9GTBhX9HEMK7/+JpyCeNfgplpolCx7bYDxXCtwhyztPk8LjPaThSktP
7X8ZS62SQCtCKib2aqtk5P4wbJb17qH/VLDU8FQSMp1OUlYBxZVszAjkxRW8XJDiGPSjnptgr4oM
X9+7dCLk0oqfbldM9nwb7ZM9LJhhP8EUPgz9w+9fz7X5nMtz3VIgMkewJyWiuCLiHhjzYN/AijHC
OB7oBWT11agVSYdtp76VQ7+pmns+HO/fPU0JHYf/WiSQ6OQAFvdPk2SlD+AYgaHOrWKdUSF0xFFE
K3OEm5cX1XLwC77s4oklM6Cct7JRUbb2nQKeuffDgKhyw8MEL3dO5mqKnjkBkcq8BIGOaoaHcsIX
/EEE1VnBhqHxOsCyxlwXBEzjyZo7sWtwJ9blZd/t7n5+uP+1OjyJRQM0O0xLYbzWe+AmwJ6nIUcS
LElGXFUefxr7QunvdHdF9dCg+na9sfe7/pfnrxViMNiPYoKDKJkHTkRChARrKVrJNnXgodjOZyMD
l14YcpWU96uZlhyM9yr6GduaLXhxvaaKCY5IYoVmqUsJvUL0cQYqViCmA7OYd8BmOc5pYoEaHv/f
dv14b0Uqa5DKZ0Xw8SvipzarulQGU8AR9JZQhRowNg28784T8KdEitT7PwuOZU1lzeK2a71c3ISU
+/tdyVzhjh7PgQI73mjnu8g4xkIkqAdrPfzBqYC3hOnDV9QDjHnJNoBbFZ2m4TMpsze3w2Tt33/5
+oAl8uc4U2k+BKMsC0ZjRymC7QsQQA7LI6lPHixd4jhZ+R6bkWo69vsWHYdNQ+qySWg+V4SV8qIi
1WPyOmbbgfePGMd40gSe20eoUsawnEl+GcdmO0FF537YOieq13Slhr4fHrCBcHfXD0vcmJOYIzoG
EzlsuNLHgZiZsMUQei0Iyr0zgV0V72pMcyEuvn3wpuaAtdhadzucT76c69PQxUgMdFdUXc4O64nA
rPWZqs7myMGf9oJcp4LOo7927uaK9r5BuzWnKBgsuvvPv76z50Mj0HcGfwwMFdNRi93toO5B+4PM
Jp6Bqwamr8+rCHs9TE3BjjQo2O23MfaPu7tDsUU2bo5kWimGhwVicyjHum8HBiEGFAnsrMhSMldW
5EyTXIyvT/crFoZ+6/WrcpJSxQLinR2Gp1LW9diXrNAYRBkLtZJRVGUCqo+4gOgraKibAEyopGKk
LlznbGKGLp6muZzt2Tx2U1PfYmnTST5ajMVrwl/4aSbwEPwbmQI/WWTuO6KYRwsLBTIwFRALUERC
ongdBaeM/YLDhrdr6k1DMN/u18GseBxPI3/4/eMi1VEQbeWU5iAMj5ZiiNCELTEIHEMRG0niOSmJ
alD6b+dubOm58Ok2z9Xc71vcHxoHZGFNxu541wwdZCz00GDX0IDnAvoI/jZaOEEnDaaYF+CQXLmn
5mku7qr5iSUjMPlWX8DFNfbD47RlT1E1LJ6eetmdMh6+Wue1Qd+XSPCmHGqOVE5JsNm/iLRQjbwi
bWiQhifE7Ot2xGplsTEejKaY1yDbKWyEjKDqIojOYLVQAt8Psf1osG+f/z1Tc6k1sbWeNGmsJ02G
uYPghw/fb8MOKtikAp7kyjJCLiXVueQNvHrhuKTEU+3eMuywIKIinm8BoOGipSfb6NMYfet2j3dz
VFTIgtVR2g+toTEJglAyoJW5yrrzyYK7G4xD802FuCpE3Y5YEdQ4KRIvrks8fvvav5u+Bnhcu5+H
L+WQ7rMZFLHs2KnYpYg6DxOUXkbbJc4d96BHqJevILatRr8U5Fg9tuLm0OCGzX1k+z/KkUjnNGuB
S0wgUqXpAsGCfIM9DbAdOqoxqBOC52IV5q1GqeZXjUSqVnaON/9xjnUrzB6NQRaewDlmuRMGT11g
RoO5RfCgSZOIiIJoF2oC/mgFu7VqmC4arKcZG+hr3ziuSopIYc7UgWLBfgRQJ8YmhkevasYyOL+m
bWXPw9VE9I31pDep5KnNYz6nd7mUQo7WGCUw94oFzRSWEsEkFRj9VjgU9/S1Qq9q8Is1X9VTFRu7
hg+jdz1ZsRGPj7+4h/3x6WHu7dRjGqqEOqUlDN6nxNOaOJMSXHEwqHJMUXopOXmlw3s1+iXtWz1U
cbFvaaztScwo20ppNH4FU3oLxgIusC2YcGC5Bo8IfFl5MGljAkdRWAGbRgn7OjRTGfmyuVRu11TL
xibuuWrABpXG73Y5uSbBRYEtINl4rIoGr1YwgkeKJQrmX2CcXAcU9wpMXEV737do3zTOw9pzzwgO
OBY4qhENQ1nmacodAhnBakexnkAsMO+dBvkOuviqgNk0+MVVjzcroodteytenA2b9x/WXRwxZUMD
YrbIjNYYyC0bJe8yU9ZrWPPqlSj+9V0c8+QrkvsWyX3TIXi+Oz49jgHkH+/GMH4dPTZeMnjbmZV9
6nCVMwM6FXSXZlETyV6PHuPIL4SO8faKg8ZKGfj5WBTcG9+tUHSnMyulIkBV9p0mFlYK4bCswcIB
BoTNwesIivjtzqysqVgyYfhuK+2N4KyF8FUfXDn2CODBlSO4NHXKZyqw6hJPQWDwC0wd7HdlzNuA
WbV09WEdrx9fuXnspuaAt9jaAOCvz4QYaysROG/UAqMeUN6BvLGkA3EErEkws43OCL4Am13RnMl1
x/o2p7vytIq1R22E2DdY3OhpBB5+hq363f1h+Dy12s2xIhOocQIsUDxVhQePnyyQTqM/AnaDJo5e
w9d6jssQyMunam5uGx9M0xak/lSrT0+pPK4U/CqFPFoz6h2qaUrwbB4G/hkHuRAkeEESS8ydf1Vl
vFAfNd++qcnchpeNvV37bpXrPgbiT6W8XJUowfijZF68y8GW3LTCBRc7T8GbMzoaUOkqKkHeLkxw
puWlpMFmAdrbxgLckX4VJQazph/OTfFzxWeynMJiA72TsDjDU965zHPnwCaRKmfURC/50otxb2oK
Dg2yqDmJ5V9+W8BhbAAowLu31NnOZDw73UY+hpcE8wR7/FKg7U6s86gVMXu1DeXCxXXo5PP9z8e7
xzmnOG9Q61mW2SLGWTlZD16P19Z0kXmltIfFcd0ZJmX8V9fBkooLiZbFEzWf1jb4tLPb9sMO7Ky7
8zqYrJCcJDUkMkxclDgrCNYMcjZkLpkvYCD8jayQmoIV8VtTxPSDaiCiPh8LDtQkdQq2MsXIqoJ1
S9BUpUGD96VCJ7PUQoOT75m7Vu39+OGy2PmxKq8zrXo1c2Br9+a7589Px6f75/7TJouMnUHihEw4
nVHLZHYMjwbHTDUeuMXAk84S4VwpE8RF5a7L+F6etkr9rh+rWDyYhko4DHNPpfspj4HcueRr2sOw
Y6MHG0RYgn4DWFmWGQTCpImrpJKM8b/E4qlWVk1HzUKjPt4cbtcQgdO5Wo+/3z19Gqq0EZ6qNX2k
8QcqORodwSp5mTDDw8CnQ0CCTtroGZanZfX2JxyM9sjHLYVbo2V+aPkqLGvY+5Zt7P1FRnjM+BZD
E//f9E8+htGMMJRJFM8Zz+iWTIFyFLJgb+BRsCHqPwVQZLy34vT/eru650ZtIP7uv0IvN3OZqT3o
AyQycw9CQOpLHF8vTq7ti4cYknrOHxnbuZv8990VNgYMJG0z5SHBwEorabX62t1f2lDSI8TJxdVt
HSAxlNr1cekScYsFhAGUMRghU9ShXuD7JngvZNvbUzH12Sk4s+9zR6ZpHY9ykWFonPIQFcQyCgM0
sXcZqozYziZFP8Lg/5zCMkf7b3Zet3F32n3X8XWvyqNqYFymrW4Pw7G1AmMDZz/hkj5uo1kUN9fx
LUClj7g/nAaoyEGbQwfTUoNIyVdi3dm02zwGakZdwGTWwHlynDztTwpowymEVqFj0LmLBThtp9Yr
D+OSB44SksMc0avFRKmlVuFE0NNpnC+4OgUjXWR3X3R8VE24h2oPt/aTJ6ggD5auPm7MwzIpjDAw
ioapq/ADg/GZnLcZhx6y6pAEeFspRJMhoH+P5q0nfuL6zvwaol7NnX0Rj2iQx2EQWscBNWipgDiN
DqzwtEHnQcf1LMCrI8ybLUIxl44jRnxdLcGsoRnuZ7P62VQ2m+M+RTnIFGcB1cp4/dDYTT4Bs0Rl
QJChSwZCGh55QeepVDnNGlMNquz+JMBJEXGoBDTAjZEUVZqPNuA0on2lcY/awBqaxhFXXL5xK6w9
2FBDqCHg7nTW4M9c2hWyfHzTBbzCpIEuBqtIqTC2nwpBohXoutC4gScVjD2h936LsSMvLb4LN01n
alBCr6HYJ5B0TUO/ntzAICtxw4P7wlrN+VL6EQ5IjkTTWKMN2viafuypwASUaVh//H+IlvCiWtZT
6Dp8WOhONG6aw9g+PSIRe1ZvUgRQBHGMXdx0U6DrEeKzLwPJMSx4DAuqFlvYWoIVdtJTYEJ4KAoD
OhiYq8O9dEKXgkbpOwINMwRC5sWUwso3Nsz1lcvUuwHZN/EreBO/J0ByuLQyydPuGfcoct+jPMiv
NlCNDoyPiOTS55qhiZGQ/UjFOoyFcblU7+F5VOagA5B8/0WtjA2zzUOEhLIjYTENXG9Qm7p72z97
YwPgUpjgMNGPFeJA2biejhdZryTPxXFBvGkBXsmobY5Q+qRaGLepwbym45QSatFRF0euMNqHtYJ2
YZDgjnFhjgOFgMkCbjT5GJnnVQX2Cl5R5ZMq975o4N5/KPXW5XplKgbsoMtkYcLu4zqU4R6RCASe
Joo+wkegWZOimiosQ1u3raVcZazhtNVPZ/cHMwS0xZ//yI7uVZzjga81fDXQ5zXDcEFojKA9dAmH
OY/LLb52IGXd4LKWWJmRhDVEqkhg+n2y94nFyU+dyk5FIlCe5DDAcg8xiOOI9VXIHZi7SG3cUMQq
eKO/7iH9rmAG9bOnRNDT9sWHB/WXrbLN40tlF5AWYOqOFj41uHEi0LE/Dl30mkMvF40+9sw7ibZx
klyVmYa1VyKEX9uTXCaLxbo4S/fkgR1XCujnAQKWUdTM0F0UbkwK12MUJtrSk532PeV0ez08mLbA
5qN1On84HJzcPC+X0ADnwLeBz7dkmaQZuX8h0HGyDXnarDEKNkxFdsnmMbPR8XZ/zbeHF+e2vLtk
+336sN5Mn+bpOcnjeeVQytMZ/N1l58QpP9xmu+l2VzyvZvxa8s5/Sx5+lEoFNWDzQ7+k+Spryo8z
5fJ/lmfvbkQQ57pcvwhyOF4tXgjuLOGb9QMpRsdzMlnvksUnTulAjcgm287TbLX75Fx+dD6cke1P
dDpLp+vn3RTYel7ZhoXM0j0F4mF+OOt928x3yf0igwQw8yJZWBBdkJ/wcpetDml25HF4VM4Hk9jn
Qmy5u6+74dfJrb6Cu6/RxXB8TXr7/5M/vkTtZDfDP+1bM769npCPq/WqP1sni2w7y9Iz0vt0vFoS
KN4ebnp6tpv/wEjyE+ikKL4NFyyl1GXxg/TMBZnbY52ui3lOjWZrw1blpNtGGipEQSOABtdeK/je
CkTzxZVz5M3PaW6He/4sFnITb65X4a1Mg2gLjbyVysNJL9zH1ASVv4Ju/2x5rJVKwKJ1VMrn8w35
PJyQR9SKKDVAm9byoqxMI9poPubBZ7HVCVG+V8nncB2+IdDdkjRFDwICTKMFekl0z3qXNg430fiE
jFezlnZV5eKP9NXV2HQKAKUcO+tBhAqax+dkk5KnNvnhrMhHAk22xDCck+SRMMFas2Ll5vySqy8C
zfq0zchw9bB+VaRvfrua77Kcqxkou2YRYFWaiTaX5OJWfw1bK8H1BrSoAwo0u2T2/RXlQOWAlWnu
RlNbc3rSoRqIOIqnS3rfsnvcOxvZZm7LRx3zgbrtTaehnuhu3hgtaBi26XQ6HOmLqJvIrdbbdHo1
vL6MQhDr9gb1B96o+IE0k+j3SXe1KVbUNWOW5vZ6aMZhJ3euW5GdpdXyrUogl2tvwAvePNLb67Vl
LqotRGUa9u9U9WQ8sUNGdy0M5EV+51F3T/MLWYKG2lYUQq4IbL8GGT3UtaXp/Q1QSwMEFAACAAgA
9ZAuSuGVkUUCQgAAIg8BAEIAHABodHRwL3Rlc3RzL2FwcGNhY2hlL3gtZnJhbWUtb3B0aW9ucy1w
cmV2ZW50cy1mcmFtaW5nLWNyYXNoLWxvZy50eHRVVAkAA27Zelgc1npYdXgLAAEE9QEAAAQUAAAA
7F1bc6PIkn5efkU9bEzI3Y1cF6CA8PaEhKRu7/gWlvuyMTFBIChsjiWhAeS2z8P+9s0qdAFd3KbH
sTEdIz+01AIyv8zK/CqzComrLA1Fnruo/hemk3Ywm41F+4sY/ZYU8sVLp4WYFu2eeBDjdDaB9+h3
wjn5Q7sKirtNEfB3/DkdzyciP/58efbpvH/85nghLc6CifiWZvfHn0WWJ+k0P+4cf73yhiJ7SADP
8XP6H2fh8eJ9fnwehJfD4xfC1U4j+DeJE5G5P2CttgC7aamFjbeoBf+2Sdt4e6R5aSTQzdNM1E/8
alu6ZaDWRVAkD+IInJZJF15tjMCvv/4Kbv1D+5SLDJ32NpWZmGhaLyjE8U0y2dBAMeE6JjoxELFd
bLombTvYRjq2MdYuh2iXAeBBBIe+IoLbhLQt1CLmB0IJPdKuxSzNiq2rCNE603T6NEnnOfr0qYKx
b2PiOZTo3Q5lOre7TO87TlennGBOAF7PtDRNk8hR51twL9AwmYYCddO0cJFFMMYoF2E6jXJNGz7l
hZigUxiH2ywpnqSnChEWCoqYBqOxiDTNy4L8TkTo5i4TQbRCghHqJfksKMI79OdczMFT61GeBMlU
L9QFmtZ/DMVMCq0PWf+r53c7Pb/jef3hELWGpx+G/Q+fjyrny3Fejdtv/esL//Tic+fsFC7q9a7l
VUGB8COu/TFckXABBtU0epfXV8O+f3F5czr4H037fI6uxa3MD3QhggyEMexquv4eafIK37/pf73Z
SruFJoJNTuUbvfqB/AT9Lk+zf/sDZfrjcfbtEQ3P/8u7/PI3zFitAyclYaDcNZyJELI3hJiI02yi
PnQ177oz/Hh68QHd9Ic3LjoGsWEQ3onjNI7HyVToQSgTrH1XTMaa9mGcjoIxuskCGXfzOIYsa2Wg
McsFCu+ydJqO01vQOF5G4pGrQR7ZjHHsSL95gwtRSFdsOf4/ysHmcRzbsRmIKLLRxfDT9RlYNi0j
F8XJNFEB+y0p7pDIsjRDOsQmUIYO8c+VLs5MQhvoMkQcjRi68a6QVAVxwuMRFSHBoyDGaDg8Qx8D
MOVOplzv8qKvlcyATdZMS2jHe7XkRZAVyfRWqZuK27RI1AgtdBHGG+kSluns1QXhA7FTiDaKIeeJ
9U560kV4oYtaZpOR4mHM9nsPYgNomrSrKoiFHfoK5hiWYUZb5tjv6rqI7byCOQtdu83hNm5kTuTQ
0V4VKhKAnJVoDrzzCqKrQbYS3cwx+wbBxDFxtgaB1AaBM97IjH2DsNC1axC4Q23zFTy1ULHyFGtj
y7Z4k0y3+MiBTO8/Su5NivETcGGhctsbgJ/S+0SA/DQLbuEVPga3yTxXmhynyZhYI2pGZJemvWq0
cqqHKX4x97vuC+d6vFnreWkmdmFTkyUPKAmwhRbnuW5lKvLkBPMxzQvXBbybB1pfbgauey3iqyI7
2Xv5+19+OUJvERRcuwS3w9nMZbZ1pJGGqAE0YftRf8jS+cx1oyQP8jwNgaNFLw3ncrY9S4NIZK3V
pfXPFVrKTdSaF8kYCjKXW+aRRpvCiyMmvufU/931cUsCMKwN/ayZ/nAkHByhPTaC5g1nKJ3U2TNI
d64JEIwdPQTaC8G0Rxa2KCrPc1143QKx9ZnCAXV9q/4xALChUDeb+UDgKKTh2gcDWdwtdUeiAPMG
WTopGxSlmdqgunKaik5qGqDbaqqbkyB+Vrd3l4wjUF1qNs0dmg0GicGbah45Ed+jGbL4ZVnwRoJi
zjYmmOggFOymmEIOfLkbU5EF0zyRAXeTeulkkhTA52tcKgqjKyBHhYkaAKrkHBkV+EhzGvsn3Dsy
odIPHdhDIqv/YCwPqAFiZKczHAgNOWM2Sc0QG461PzWXpbP8P8wGrSidQw+oEsOmW5mhYBg2oCAN
URhQue9HMQmeRsrU/mRWPCkXOHSTFGX13kxnZDr7daq5fGH2OUxo1yJP51kolHYTivjdxjOJhDUM
Akd2LfuCYApT81z9vxMXIrsIHpJbRYlXKZDj0zo4lwivBczIeQEQpnnxy7uKYGjghgVMPm/eoVGa
jiuHOuNx+m0t+iY9nT4E4ySCRkoNNjOpBlTYwCzbCjmPK4NawvWC8XgUhPdgGbxrSRhqRiaoFc+n
ql8Lxi4xmYxls6FCB7q5LYV3IryvevI7Xiz/31FIFnEOPFwHD8lucMBnNZuDQiIgMSpzUGWkvXEC
oaRqBFVV9aDtjkSpFsZtjbdEtsa7eWR72BvFRV5Abef7BFJ/MRwnD2kSoT0Oel8WKBujxx0G3uEN
R892THv/6Mk3zWN/I8w35pUf9kHjVFs4yqR4w1NyOid2U76wxD6+GMPrl6S4e+HM+m6HGLkmt8eU
l/IF5dTeZajT0FB7JMJnDG1tH6qPiEpgAhOcnKVl5QhzE8XNsjaOSBBUs1ZO/6X+hbLW8qAEABUc
QAGKySsYGPBSa3FpOVEQEwiEkkZQHOKY4EIVi6dXnuveBdNoLM5FnoPck8VrXgFZ8ci7TRPeoVVQ
1y17c/Qdg963lHagqFT2KFuS3/y4aBU84JbWx6ppkm+huKK0kbv4CBvAtwrrQtC1CEXyILLzYLam
2sWx0qj1siHYVTOzjCWY97dllUNKgfQoazaiVuSQenAttiYAXbTQ0ACfzLq1EAXLog7AMpp5znKc
EUMbCrc9tibK+TSBKPNn0HxXQVW5NBJxMB8XfiTkik/ttPfo/SJTUWsiJmn25FJLthvUbIg7lLm6
F/fldOVMpY9aFX2m1Feb0f87eAiGYZbMijVP1QiKChHEUEOqpYf59CxNIaxmIpMr5V/S7L7UYlWs
Mkw5GryhlniE6TNaZLKVPRJUKoszvEG5miHV1aYXqWSQzqdRub6/tTzkGLHNBUG+7w2uP12cXV5e
+adD3+ucnZ1efPAvP934N5d+xx9efrr2+ti/6l8PLq/P/cGnC+/m9PLC96XNXKNOM60Rj0lYai0t
6KVDNcfmWBXclsZwU4kGi6sS4UV1DlxjpKEoSzAbVQWt9kUg6RzAVqOmj6c3MOeP0sc9S3AhxqHD
TARyvHkmO/7+g5qT09np9FzuS4BUZmqMNZXKrRgtaONCPJZiZR+bSssNRjVmNBVpQoPqd8dpeP8J
CujxSuy5zChojs6SvChRy7pjkIyBz0EZJxqrZW9nNtuXvUoXp0EYxRbye1fDlRIZS9iCAbOaiqKQ
y/rvF8PqZpY/3QS/+E9+DwwGxslNXjdRxgBflQubf0jPmYbGeEMIOLLxFoRsPpUCLRuGwm4m0AqY
JTe3KuJkY6qIk0MIQsKNk9HjLGxHT/AGPbcK7HBrBHRrIB/O99PRv0J/UsrijqkZuJmoIB6NBJKS
FkIMx9AM8uwu/xZ3U8JDjJYCYK5vrfc6pZ3tycQlDMoAgyp0gCzaA6/qN2EyCOGoXJuXvlotZhNX
rU6DgFxte/vQaEzFuC6zLso0TEGBUuQi+5/q/EwU80yNAVarxmtps3IFvCauKs22mGNyGy1P9L/9
Wb5RM5PN1CpvI3Gcgc+VnTVZbGUxfXbZXvp0cVCfBFOYJbMfcBDM8uhe7bX4f6Z5zTFL6TtGrRpP
OBQWsUzkL8/3J7eZn0wf0ntFjMRauublAs0ojDYErhxk0pWD2D8uJIx/nMXmP85iy62m+cVQTXo3
6/25Jq4wophTYGmZRPmtX2TBbJcXXiKIQYuxFKRKvI19rReUZTaBzqZS4a2mi/DuKlV0Twnd2K56
SeFoinC7cCQMilADvXLlWN9H+m4VYGAaOcCNtVFU+1SO2hZqFoiOE60DcZRGT8pMorZ5GkqCNnYl
aTXXWrbanWkYziZBm4LWwcx/JH0JBnR+LibfgqTw8+R2Gox3hW34/ExiB8RgEY7RNJim+VgIFfuO
s8zZ8O3bNtldk9SkcOxgiiu9cXGX5IsJyXWVYB+6u0p/Xd4lBZ3sPFOhdjJOp7dI/lNtsdWxEzJ+
h8jq5rcxNNeVlShubqTDd9tPRogQIzSaBGNoAlz3o5CLJ3kYQPztWgOQncLJ6my5cpiE5/NCPL7/
pYr1RywaLxcK5Aal70+kVH8U5MIlDt/cE36JYRHQx4Zh4Kqw7MmGSxPVBoW9qZGRzU3gF2hkJiZr
jZ38aRreQPdxUgOxXD7bQPbmqHX0XsaKDJMFn5R7YRy1VqLady6h5uYe8UugGTh6FWj9aZE9XaXJ
tGj9FXHlDquzseX8EkOsUaTkvqkEkr9IL3+WpY9PJ5XUm4PYxfo+6P1riN/9JQe+gfBeL+Y4rLo4
xY+aM+leendej94Jfl16tzdqldqdnOXa/6Fm+XvVLLtuO6vfNTcyAguKlN83hrNVjucR8rPFfpr8
QK1vqkUXcEOdxTZhb2oyHJsKS3r3YljGk1/GWLkoCZH3I5XNniSyXy+JnFeukRxIouXWGAK2TMfj
ZHp7yJu/Wd58T6BJbIcQtLl+zRve/2U7NDStyp0Yq4hYfIHDTaZJkQTj5N+iWlZQeZPLxrngbbkO
Z7KjxvMypvZyF2OrTlhNeoTv2je2G6sahXGp6lsR3+zXZm5Msc6rsUPjefGZKZa8LjsQ7K7fE0kV
0lGdeZHKr3eEP7gwYLJoZEEizWTdc+eHD7LV+sEFkkDePrDyhfxGiL+Qxi2+wRwviAYWUF4aWdoG
M1CUlDuDRTIR0ReQXd4/rPoUaFMqt7nJPcnyMkiCqxJSvr5TuGEzRUXIlllwFWT3cv8kLVx3Bu9X
sKAyfDqdzMYqUMveTd57Ia8ZhulMRGfBZBQFJ/LGEgR14/r2k61TymJz8xT5ZTB1k8jTNJgkoSdb
NnnXR6VPpBZEcGsNsdxLxkbTLsuKmIi4pW6CKZWvzOzKNsqVA6s2lk7U0TOA8r61etsAMTHrgO9c
u3mHRsNIkKjWNyzZaPn+ZFe6LO4XXAMX2doeaeiqB3fd//RxtcVVfUBQpNlrCH6/7C9kOwZxkEnB
raNyI9qWt1TXxZe39mLWvF/8C3TO/7/o/B/RMRF6oPADhR8o/EDhBwr/WSmcHSj8QOEHCj9Q+IHC
f1YKNw4UfqDwA4UfKPxA4T8rhZsHCj9Q+IHCDxR+oPCflcKtA4UfKPxA4QcKP1D4z0rh/EDhBwo/
UPiBwg8U/rNSuH2g8AOFHyj8QOEHCv9ZKdypfQ/LGwxllBTtWZY8BIX4ga/gYl5+BXcswgqDN/o2
hGmYgfqqRgnmvPyNCkXgtPnX5vcOC3u9YTFe+Ys9GIWLZ2+oRxl8ta3FQziQ+oU+1LIMfZQUR66G
UBY8uluPwsAwcNlo34Fw34GoeoDAX0wMjKWSKNlzSb46IG0zAyMKopHSPts+YKsrdhzgUgnK7B1K
ZMJnTg0XDkZxHEpZBO8CLA+QjSswZdSWlhC6xxLC6peMLMq5OmDsU2JuXWHFyl3JrHpk9XvnKIvH
G9oJplj+qFS2AxaTsrSzxTMzvKtP5QNNDK2vnm0hH5KyeMTJ6kpDu5Ff37qYT0bLJ/EQQ9O0bjIN
sid0OlG/HKgtH2fyuHqSCdJR/UMCg/P8L/u01NN5dLR6PA86sTt2b8CpqXtGh+hs4Jh6Z9DzdAMb
zgA+sz0Lv//7PQqlbnm4yx2hdMfb9Y/uDe+SySLDWxgsNzqm0e/bjm7bdkdnDh/otmEbetfpdW1u
9MyO4+2xfEtiHQ9ztvEEoyCOd/0G4Y4xoR4jRo8y3WKdgc4gDfQuNft6t2sPgGt7nS61mo5JeayK
06LmdhhZBjPjeLSN80zcBuHTLrTYgUT1ONaJZzOd0Z6t207H0rsm46Y34DCjk/1oS7nPYS7PqCG3
Ar6FnLPA3vDwRq2xA7uHsY0dburUZoC93zP0DiSXbngG7pudQZ/inTFQl7wbff2cKn7uhPEWfpiL
R9sRsg+40yE2sSwI2Z7R05nVpxDGXUdn3Q7zOpZlOQO+x+n7ES8OVqASHDKyCRU+tMydXHMj8uJ6
Pp2KrH06/RfUEyLqzuXPhaIWaUshROadyYg9oJ5udQwKeUcwpJxn6305hrRPWY/398fLWkVdQ3uk
Xjb55PmL6pZGxralkeHEMUdvIccX3pGyhvOZfBhYjU2s/qDPmKH3cN/QmcEtHZi1o/fNXs+zTZNy
3N1l1TOCq+gMh2yRHDECIiS66s/UnPfOb866WTr9t+hl8ldQpesN2oZqGdzfNtpUkr7tMN63OrpN
ulhnEJC60+1xndA+pMDAczrdDoAtHzp2fJaMMpiKjvuP4NlFrGyp2eP/7RO1Er2sJCCKsLW2avUh
iwIDrJK/I4dazMJtWoIGp7KBp3seBlYknqd3PM/Qudmxsen1DUx6AHqeZ9Kpx/Lqii7bYAbb1AUf
ykiueXB4F2TykSstQ3qNtS24YvkWUPR6PWoTAtHb97rAdgNIvH6f6JbTHTjQhnRhytx23VVZnQ+W
WZcfL9TsTsTFwRp8A9Nt+PC3Af9cFFB5tExLAZcvAJphk9icEGALIDegZUfvdAjMfBj3mGfbfcth
26AraJXU3VjVoTpSC28jNYlKJFl0P5wn+fL3fAAoa5sAsTuwCB3wnj7osK6sQ4Daun0OiEnX61LS
9zzzWYidMIQWBjrgPeRWOfVBhCBg92l1fFrdhGCXXZGiQtlMzJJpNJ/MlqYRh7eJmiA5N7k90PFA
lVgG1BjE6sM49AY96pnU8+xK4G5JqoHg1NoGwSEKFs59zMfF6qeOWsRoG4CAU69HvI6hk/8j7tqW
GzmO7Du/Yh8nwlF03S+PdZVnPV6NNLZi3xwACIwY4pCzJEdr+et9skEAXd1NkLFmaCMUJIXuqcrs
qsw8JzML3RJFCydZLLnCQ8HSnQYhCrGXYDxMN78fUMNk/qA3k3jwYfXtdvPzAQX+xzsnPSwI/2z/
BxlSA0gIWTFuI2QCHGFR88gMr0XIjPiW49kFJ595mODFJe/lWb69v+eiV/BqrvVmNUXcI5r8zl4G
8rjSBFoAEUNRkTOeBHxXVXC9tikmNKilNRHBQ55V9jTykux5dP2iF3HBaezUZgI0Hrabb8NbJd+5
IUwDwip3SY4XsldZjVEwRenhbZUMgHYq4UcSCVgDaFefdx6fnkZ/xtc9XR3LjS02l9twoyfPm75w
dftTPM4Fd3LJL5UkFYY/yLHQW1kV0HMWCHiD+CHkwHKJvPoqI4Lzaxz201zLSjxd7HQQ9KLRqQ7g
tQdL/Z9vq/sVvflie7BWT0CCN9hjaNgqGWRERVCzpGJlVbukjLcl8LG32Gcw/rgw3kSY9ZIwu4Pv
Gl4SeZDDkUMORvsYa2ASLoIpAzlCJZ8ho8vaIhprtyjHaKhehKAWRAhTz/H++8GT/2XI7NG7LcfY
0QTlsd8yq7Hh4bjsWFTKMCtLiKbULIJ9zWLOJlle1tltE4WulhTaTozrK0L5iJRdfqT/h1J80Era
IUBXb5rjmRVXCD0CUCRipVk0wxEMA3breWe4ul8v+4bODX7sZRnfNVya6Ldb0G8lDxt4SAx+yuOd
I0QYorlUPkCVCC0q+bsEXhXBZVuqpXKRsVLn9fn+6/b2uw/P+Onh9mug6CUhehVWdkGFnZ1ivt++
rO+O3wRNgJk8iOeagifWJTVnDQkPgtVEZd5kqJZk8xWe0Wf5KsQ3nuQZXzi+pVNEqoW1wIcH+/1C
KOzvVN96eFydIAi0hx/Ue9Rfao1CSMccTAWL0ijiJvyoiFI54cP0Kk/43ce/5bsvX6+BtkZqPCdE
r4bmC2pofthSN0MIPvohay4Nv/QE/mETxXLDDGgPEIwW2FBgvjU3JRK9adnwRW80HrETxdrNXBTr
VhN3dIeN+BmAWoAB7N3Q8AdEsjIElwClUy7gsdHBZouwrFSHJxkb3KT8P+/x/bVOYLdkjm69Pjy7
7YGeHR8fPbhWgpGF0jGpZqYyAncYXkUtigCNMdno2kO/yTidDCEshJH1yh62Ybt7uPn71b5qd/QJ
9lKSHZlGiTUJhF80ED7Egh0pwXJFsG+Bki+hl2Q+2kU/r5sLAxY/8b97bv0PuFwEsWEJAecuBVlE
LKl6ZQwD6TVMKaxetAA5BfurWAFSmfWLGJTGXl7Ew9WLXsA5gDbbrTw8wuvNtw1laOKRIRlxif/o
EcKrhiS0Zcpr8LiiASMzfrSqgiimwIxd/wgno40lsdzN+Yw9YILT87u+/eWk3hC3CNhKQQIJOEZY
IARqDr7RJg9rUI5hV/HYlE5K+beIW+/HMnQR+vaXTich+IJOwg85zVPB5+r24eHq6CSlIaxL+sCR
0DtbPXAiJUaEzSzBRJhRMDVgdSDJsuhm5uNOxAoLYumps/mOXq6u97hg8DFJB64U2IJKqlKOOoK4
OeAdwC9bQwxC87PPFyMuPzhc6CVcL0m4cwfv8t2HoRJxNGo5UFtwgAZqo+CWOaht4DAgAG6wdq8a
aDuHYb9NnO/m7yTXakFybaYZyu+2t9v9F9qubj49vUf33d4fSBUGbXz22NbaMy0DoUvs65CBX7R1
OSiHqJ/CqwLkfKpnFmF+Y6+amcMXa8wRgbW728ePq/sHBOLDuhg/ZHykdTHEqpkWCrsZYR9r4hQi
VCs5WGN9a+fTKad3WbyaZMe/PrPZDm9le/jjgtCdxsHrucbBb4485e7rbzsgj9M+dOTHiUa7lFlT
ADVK40dKFuuYrWmF07e3y2Wu0g03kWSO7u3aTKHjsCvffz/2kOpS7ZGCtnwQTtliKEWoq0KQiYIF
zRUr2YJVe05vuj67FLMpOge4v9iJvt4uOMENN4dt8/H28ylBNMgo4UmcLpxpbeBsYgnMC2AsQC4J
NyOwdf4NGbvlP04+FtmJq7kRO8nVQeTNH/6wWl8fpFbcDYg2SFlbgpnyGuAehUnMS8dZ9SJmrbST
mffxcDxOJ4C0843ntv5qml/ffw38Ibujub7UtAMR64RotrJSPNgyPUqfsQOzDUlKbqoektNn7e2Z
2l1+unbRS7ZdEDfwg53kn/7y6ePNt8/Xt5NaxZPjBlxWUYbICuUWVACH9pUXZkM2Dt5BJ8vfiKAt
S9JrE8SSNvuK6Sm63t49Xu9+O7k6xGw+aFO0T6UqzXhz0EaDnUXeGmCI84BGwbucz4Xt8cCdYDsx
f8xem80s6X51vTq8sOmQrnBKXApzKTntDwubUi05lvCbKQ745mOAlWmFAN+kzs2+kIE/TfFcIv50
x0Uv79WCEn49UWKcT31/+7i9p6/ifye1v6R82vCbFKmgDY1j47gmKEZ6IJIKxNeCV6nomn16TYxc
mu15FD29s9fPz5kcqMp2t93bwq/l08dpucE4Lq3hsNfGER+L8ZSTbyxU6CY9rib1e5UbjuJd9Ars
FrRaTctVD1+3W/Db++3m7vPtdZ9aoHQo9uCQDRWDoYRqYvBYvQaARLV6Q7wQJpPg6YXPWZv6Fnj9
0yDVj0tCdfmO6W39E9jMXTJYSzh4BQISP24/Xz883o+cghm2aXS8gE9S4rIp8scRUE4E6J0C1fxr
sOL/Ef/0YndaW2UXtFbHAs9iy9o7oLxLsecwqhRRm84MDB88O6aGUJSHpL3ItdZgTDjnDLuRO9F2
bk5d/W61m2zJsl1/+7xPZT2QZOQ+xJCLlypqmQ1gaAC4UAj7MLgqgdO8i1Q2NK/LQI1nWH7i4zt6
HdZ8QYeNOALML1+P+ScC0inq1CQen2sadqLAcEMpjlkRcqjJq5rbBGIcRxhPHPhmHuOCEFO2vdc9
393urj8/vYCDIorQQ/l+IN0e+6FyjadogTDwSCkFFQ1rPrTEa0625vMFmfkcz+UjZzd2Okk1z8AE
ae2EbR/brpTg5Hy5r2LIPFoiW6q0yqLxQznfKWVSdVWf26FfFh6v1vNIDd6gF4Lcs1U6A4sBkEMU
aJQrowSpV14yWUD7nWmIpC+XJM9X6uLknote3Ll9hTDrtaGKO/71asjF7At2wclLtU+yae4y5S6k
puqRMFTkB9iQpSSuJcfHb1dVPUjyfGcAXb3o1bFLOobJOv28vflK+x5cihJ2Q43ElKiB9BhPGSTP
RGpncNSpGLjJpelm9VvErj9h6uWb6EqvjF9ShvrQ+pLW5hREsOX8EJLpFwHxUmtJ1bJmqO8hkVay
aCYVbBquHDv7VTmH8RzPMMXRHWMtVtzMC5UrbreHiPPh+na7uo83n7eY/FTpsXKItK1Vo2tprHHg
J5U5lbZ1hE+PLiXK9cryOyGpBUF7RRcAxUoYcQCKk3dNwby8pMwgrRMwoVJFSka1cMqjZ+w+mVkt
uSZtq7axnfNZCwlsTC2X5FGHWFSuV59v7x7oNU1PbxDPN9fUCXuUb+g8k1olm7BlBNWnDEgwSBzw
jokSi4SQNdRERxHq/LidiFLOeflKKj/pEf2wuv0cgct/e7imkP/klYbflCXGkxJCKhapjUB5g7Dv
sEUQB0zRBiTamTcHY2ORnuv3ON3RK60Wld4cwtqnzf12e/vjlt6RclgLLe2lJnsAi8guFMG0cdRS
GjgL2oCLpiiBt4U3rfTLMR9uIs3VgjRr8UwPx66LbkM3hxFyaF2LUbdSOKAMdRbwGBkcD6KdTSk0
gLHG3asaOV4KcfP7eoWu5khoZaw71TI3q5GnscEOlK02mzkYJjOtekryJVBo+B0bolG55uDipH7U
DXTRz+aXRJg67nEwXOphqoRdqPpXc6XeEi2xsWWB6cHmtE3GJf9vRtvxHRMVFjapWW+nLTIVgnMK
OPg5lLx0kA6CNk+bwNvEojactZilF9gHLb4hQIj1mX6Z2uuynnPdlbVqoku6+bZ9vLt7/JmKJHrf
mUm/d0NbMXeywsGwBqiDtchwMgmMLygVsuOg9OY843v//XH857pBjjd00tvNvLFl5YQd5S5HHXly
H098ywqwknowiYnrAF4RswEktsBvIBtF6Fnqcqkjb+W0WZg+8AXkO6SI3n9PO2KfotYuDG01rgSZ
AcOrE+SgCZBXGBkH4AoOBuhCe3FTPA3+/DZ+uqEXfiHzt3LrmSH+/O12OOm5n5qKyo4CjB2y/8U1
6U1m4I+VipAIgD4qZry0WiiDCFhflZLqJ3lGkf6mXpmFGho+nJrkX3Me9zQ1UyswkoLXoIdPpxGC
S5VJmROIkkjQ5TXiY9hlkXFhIuaCtbkrO8kwrB5ujrxNKmrEGMxMNBKqMZEQSVQThaWoIvUTG+dq
wZM/m104jtqLdOUWRNqJQ6rn5p9fVpfmhHsIOGeuTBAJnsvgsREBjtkLxouzXKmYeZ40NowH6Wb3
6wVcGFbH4sM/vtwA6x5ml+FSDEnnFIvNtrDSDPGtylm0UgDIG1taETI6MWmqHY1z0c+1sCJhNyWv
VMl/OLhe6hHfXrXrm+2H64dHStQOXUv4RcFSFAmzcIk5ajxW0gB8yQBHU3hUMnohRX47N9/L8nxP
++meXv3dakn99bGxer911nQM/OEICwY1QWdLKIY1CzSjDEw/Ke7AQAAys9QwIHNuN46HnIg0zymv
VkJNbIRW5PHmKJNXVJEgwXLgJVblwU49yKoXmUVAPyajjT5Z56z0Z+nCeOBOsu0C58SH2zPQ5bLt
30lM0FzClAUfGOjxb2pQbia5CIieMixatRhYDMmzYgC0RBXBhTfsxj7I88yNT1c7tXdunrejDw8L
8sv2ty+fj2hc7nvGnMggpwCMhAgy2FECYGM1+OysSLbV5Z6x8VgTIdySEJuDm/p2+7/Xt8ecrDKX
BBKbBUHEPmQI6ZS3CHCWCVJRS0FLCQRh6J+eizEerRcjLPDGHZxIz2O/3qwed3f3x+yb07Q7hzxs
iAGxEtjZOfKdSjFPDS82q+h91gnO/GyKuBt5Itt6QbbV0ZbXD18u+fEJDYcTqgCC0TAQT3kr4zRL
eGTMFNNiyk4GOeGvozH6uVcLRrvb2olp/FCoRi8oLa24HFquK51J40z6wUUKDWMFU21eFuqT47a+
fbHgh7J8yw9lrNMaqHWm05qHY1/O6tvj3TEueqJ5IYRqBW8MoTrD9QMJxZIjMzVzHZI1paX+eZ7G
6KcOc5K0Fv7YwP6fH+WkjcC1YqVCTK6FziI6OlLrGsf/imxrybZJ8UZtBMfJO5HlQp/VWqopkfjz
9n69vb97oH1wgGEiaad1gnswVBH3VQLTGMsqWLuSjjdZz3O5w6DLwh+uduKqhSr+Wq2n50CX8vU1
fvRciv8ezvjwp36TIdtSRFWVA5LI7IlZCBh39XDlUcOWStCt5dfgycMMy/ocrnb6mIUu5bVdX00e
/9/ej1PweySslR0CUYwpGWkdqAgdO6BmtwQbYNVak0r0pTb9GunHcyxrML7johd4u6TF7pD+ud9+
uft1O+5C0gOJMrI2FSoTukByCyoKJxuYNtaAXDcfuk7bk1OdjtcLs5n70zWi1yzc39zdf/rtdkPU
OOyfKP1+YpquSnh3Qz2aOUkWylAzUgGXfGnevbl3O8rzHB18utzpurua+++NvJrq+qf3x1YL+VTf
9k8NQdQYrrLGtrd0cl4jxIXMK2vCJwVPXrEWb1IjeH+2FeN4+aLXRC6p52blHdBkSoo/PFyvr2+G
Y1l7G3Fh6NyBd09QUYCWQ09OXfwejh4oTckUgk/y5U6Sbvwz/STdfRNt/JI2U+Z+yu4PZUz6B6OP
6BMyHa/olBadd8kKOtFZo0ZHj3JONsnq6ksB+IUawul6p8N6PcfSmys/7SD/4dvq/vGf+6P4kJg2
nCbcPFTbc40wR0vf1UDH7y0MCxCfaWdTs0U1s9QPM8YBx8GfwQPH653oWznnTFdSHhslP8SPMf95
Vq3RwPyevubAAu4zFcDhU6OeSa4jz9I7KX6vvpexhBedFmqeT7tSV9M2g9Wv41T3vpNXcG3h9obm
fi1SKVw1Zgw5hEQniqly7+hbLrxJsb6wMvGnl0LI+I6xCluzUEHAh8cKAh1OP4LgwwH3JrhKsiVW
FH2Rhs+JhSAjq8KmkhPnkS8ThdNoEyGuFoQw6wmH7b4j6p2iRi+qeWGjDztGZMSIBqlqcgkulRcW
s5JMOuM5eELMPJ7jCuPhO/GsnJOprX3quBz15u1fYX9s4PLHVFSigy3JKRZkgf8r0TEsMtiDD6FY
q7XJ4mzX33jkXrQrvSDadopjcqMuyHJ9v9083g1ZSb73DiIMhyNEC4bOWhtTKVUWCgvCCQBxn42N
tQbtX+yxPI7+cshtr7h/clOv9XaOe7ZOyBPer99NAL+XsTkLo0qqWriTGFnQrrKsdJSeN+D+9maA
/zD7RS+fWhL6WEz6uvoySt0NicOWiwipgJokbJsmEx1lzkxnqSp4umlichh+NMZkbr80dzjWCQe1
L9Mp9y/tIeHChTQI24VZQV/gEsGSqEELjNw2LV2RuUxYbz9aJ0hYLQiytsdTL+lD/DQLBQkKCy8t
9mOCu6FMZnKmsAw44W2VCGP2dwoFJ/k6tdZ+YW3X3kzygl1a9PjdC3vnlRCAI2gwOA8deYRL9SlE
KuJ7ZW1LkpeX0nD90GMBd3o197A7p/TMT/zX3tXQkUZ+aYeelqe/hmMnKQCVV1Y43CxgKqUfwEFl
NK1y+S/erqXJcRtJ3+tX7HEv7MX7ccSDaHeEveNwuXvmtiFRLLfW3VW99fDY/vWbCVIUQYIq7U6F
L3ZZpIFMCch3fmlcVJcV1bT+1p0fH89ot2RPVr4afEinwMK23G1TG60GeqXE1BUJpIGvGBSrtuAl
Ey+sWGS4tyStJd26hxo+PCyrXH8CF+m5/3Ts/3lOx540flYFzBgqwKkxmMXiIHYaj748lVIJwi2T
/KocynqfLcm0fK/k6tCvuTqQKQh2OD592z2fG10lobmUHY9s0AJseIkVhg6DURr0rWwdeG8xBBN4
TLbey1IuelNu3VXoYbLS6/qUEasyAA6Wb2Rtpob2KK5aMGlBy3KQ7nBOrcbyuNSAOtOeabhh3r+F
c4Ua6vZExnZ77PTKnFUq+5Xqhg/vltnQi4qbU6e0i7KRIVeaEdBqqOQMozEJH0QVZeD/pri31LCl
irI1B0pNdtHPH1JaqGGuwaG30YEn6EANwzlpTFKkSVyLBDZkAPP+jdTwefeSaLU+8RRE3InoY/dw
/9tZEQ+N9UQ64rBSiaHrhMWsBuRHk5gOPjqmfGuX3ayzVW7KrWhlf7P82c8oDBmxAyNYFFXiIEoo
o+/40CtvidA6gRD2hkvsj6GNQemcYkqEeTgINl6NGpK3uQAckp+X7OzXYpHu+TIw+Ol46B8u950E
HZiiWH6kJJoZFL7tVjdUueAi17QaTpsxMN+izsL8jZuS3q7GRHc6Ey/33TmnmqG1PAWbWDdBazmU
WnuhwCTiLZgoyppE2o1ESVc5Ente+w6VWlgPR0T/OB1LrVHJ5cPpnAVzDewzERGqCfx6p6JpVHBY
Eq5TEhcth/OyJVFKr4m6s0tJ/NsxN+CnXdcPYQfsKUQBlf+NOlgKsAxALQiGRQNEm8YxMB+DZC18
JKK0V9U8nHbYEMrj05uS2lXQBK7HXVdpu3//uPv2+djlksAMRYGlymD35JNJDQhWcHQJdwZ+7Zg7
osD+iUGC/a5jeqUDZ77BdtHJ6Y05C5xpu2aBmakJ4H36x5CuXnTNgRvMvYfzQLC1lktNBo+T+kAs
T0Zr/UawJgsKSurNbk29pLulzbT7Z4BtHncjNB+WA1KsdjeD9KWgMhi4QSDJDCJItvD9Y2WmsY4x
0lIjKkpunub9j+UOS/C/6XlBvuzX95Lvdns4QcUVyDrp3/7d5FNjhlC2TF5QsDzBYwGPWnDeOG0x
5281SQFEtSFv5rIM/ebV14ZnBVcHsbY7+EFOsA6/7x7PRWBj2pGDjE5KNQwxHHhElzQa2gArIhhp
CQ+LErDZIuXmktc23y+kCrgB6fZUFToki4wAL4MLoEFg5DUxhihPmAQzylHSOvoKMFles/4t5UcF
nf3d2koQhJ4LPf7ny/G555NWoCrL4ghWL8gz3VjqgEiNHRpSh0YpC36IDdGwRUazWOim2I2zCgli
sq7CT+n2Bf7fIkUN4hW8ZZT+DiPtROnGM+8aEpgj3nnjAi8JKJcpKVg39VvB7rpKvV4cujwYvq0E
zd4idu1KYUEtgl0OXwbDnmeD2MVtSwLW21+BWRI3mzZOT29K6tZXVnCyTkJ9/fpw/+Puvs+NX2Co
qSzwM9hyq3NiVUoMNoBphYijYF4xTgXY2o619i18hzkJWwye37gp+amcDC6WhTVVOK8xN0Bzq6zQ
Q4AF2DXOKY8INxYL+2LjScQmZRuCTzSBknvzxNtEzgWUr6VKF1zWWD83InzZ3f9ynCnDbCGHIBKJ
FJwk0BpD4iOgN9hyUCMpEsPYov5utkq5fWcr2/dTM/tXUItPUz04XsgWLoD1CKKAgTwwa9FU5KoB
10wGa1qeyCKGN1+j3LxXtc1VBWpw8VsAKQZ/bpNrUKPUkbuGCoaAZ0k2PoHAaB1KJ6qEMeJtfuvK
iwt+1hamEHdyYZ4d+qdfnx++PU28YCouB6aGP9CrdMoSBQc2EDDFOf7WXhrbEKEUWOSCwW9+Xbdm
3upELb6w1bS5evGm5ELVWOsXFv0YbVrhYXEjMcrCUR4pRayMQTdKcosVz6D3JJhAQiLEelKRUHFF
7mAbK8vCSvs1tfKOLQ7WWZLgtfz7MR1nDikBiUJyTQ+XloHz5jl23SeXo9cRjpfhgSuwP2tx9nrX
PW6xLfvxacGGXvet4odiBdt4+/J4B/5CbpsC0Z+P0vAXykLWYnelAn8Fm5TA1WscoisJkBKyTUyx
V7TWtP5Wbf74uKAdLPo17YaLU71eeJ8BBfD/ezr3qOp36I0KDfYlAjFKhnqWaN04As5pJLIlDPSZ
4vSvsDVLMI0VwSW/omJf7feIS535fdj/d3cGFlMZbzRKGcFs1ogN3GK5mAQzi8hGiKhdapUJbIEp
Nl/lptxp7ZiIjsnNIEw+cN+7/6yceO45YtPxRqeAfdccLBwSaCM4S07QGENsXzVzcO0LRx2e3pSk
qhr9Zgm5MLY3fYabascOK0JQqtBW+1aCRWY19gNhRYNrAyiFtmUuMqGieRMYz1OD1XcfLjdgffeh
5M9WrkPXLzHkMQzcIfTH2MbHxjY+cFa8QbA3RwhYwaDfsIbIgMMg2gBnzxLdvur9hguAh+H7ktx1
DXb+8CTuiyDwx+fjlzPi4BCwdpFEFwyYmkDccIWtteA8wI+iKAXn1y38ho0lF2RVjOGDmNplu5dv
T7NIJx8AKSyVRjhBGpbzfbw1jVOUg23IGDPg6+klCPh8nYKAgzEVAs7YPz/kLMDkbGaELOyH8PDz
NbpFaRbhqjuqJdwuboVKQUi58DWLVeb7S1HRCPDhFNcLn4/3/VP/88Ov/f3xzxk2GV4RcNdNUFh7
QhRosqDh/LAQG6Ek0dSCvIkLQurLFRTJSshcgge7ONjf9cevBwS1mUPsycjBBgC323jsHmISB8KA
g4fDb8CiI6Bmr4qkjYtvdY7nhyXRRteItktAiL7DsUF/f4T/xGkOI+2Knoq5aTJINSgqi4E0sBAa
sAJTE0HaMC0U1+Y6fNpio03BMnunYEetoZKstHcqF6WXbq37GNC5P9Wtjn9hTApFvAWBqQI2FxEJ
VllgrCHMGMfA5R+Q8q8yc2CTbdEPDwvidxXNJXPRuh49kO7zFCU2Wg75MMyeC/Bk0WbEWiqDnrgE
RaoYjhYSdCNePVutpKIjFSq6KYYU3v8DpyCeNfgplpokCx7bYDxXCtwhyxtPW4XjPaThSktP7b8Y
Sy2SQAtCCib2aq1k5P7Qr4717rH7nLHUcCoJGaeT5FNA8SQbMwB5cQVfLkhxDPpRz02wV0WGr+9d
OhGydeLHxwWTHV9H+2QHB6bfjzCFj333+Me3c20+5/JctxSITBHsSYkoroi4B8Y82DdwYowwjge6
gay+WLUg6bDu1Ley71ZVcy+H48O75zGh4/C/ZgkkOjqA2f3TpLXSB3CMwFDnVrHGqBAa4iiilTnC
zeVDNV98w5edvTFnBpTzWjYqypa+U8CZez/1iCrXP47wcudkrqbomRMQqcxLEOioZnjIE77gH0RQ
nRRcGBqvAyyr7LUhYCpvltyJXYU7sSwv+2F3/8vjw2/F8CQWDdDsMC2F8VrvgZsAd56GFEmwpDXi
qvL409obpb/j0wXVfYXqu+XF3u+6X1++FYjBYD+KEQ4iZx44ES0iJFhL0Uq2bQMeim18MjJw6YUh
V0l5v9hpzsHwrKCfsbXZgh8uz1Q2wRFJLNMsdS6hV4g+zkDFCsR0YBbzDtgsxzltWaCGx/+3XT88
W5DKKqTySRHcfkP81GpVl0pgCjiC3hKqUAPGpoHvu/EE/CnRRur9XwXHsqSyZHHdtZ4/XIWUu4dd
zlzhjR7mQIEdb7TzTWQcYyES1IO1Hv7BqYBvCdOHr6gHWHPLNoBHBZ2m4jMpszd3/WjtP3z99ogl
8uc4U24+BKMsCUZjQymC7QsQQA7LI6lvPVi6xHGy8D1WK5V07Pc1Og6rhtR5k9A0V4Tl8qIs1WPr
dUy2Ae8fMY5x0gTO7SNUKWNYSiRdxrFZb1DQue/XzonqNF2ooR/7R2wg3N13/Rw35iTmiI7BRA4X
LvdxIGYmXDGEXguCcu9MYFfFuyrbbMTF1y/elBywGlvLbofz5MupPg1djJaB7oqqSclhPRGYtT5R
1dgUOfjTXpDrVNB59dfmbi5o7yq0W3OKgsGhe/jy2zt7HhqBvjP4Y2ComIZa7G4HdQ/aH2Q28Qxc
NTB9fVpE2MtlSgp2pELBbr+Osd/u7g/ZFlm5OZJppRgOC8TmUI513w4MQgwoErhZkbWtubIiZ9xk
M74+Pi9Y6Lu116/yJKWCBcQ7O/TPuazrqctZoSGIMhRqtUZRlQioPuICoq+goW4CMKFaFSN14Tpn
EzN08bTNdrZn9dpNSX2NpVUn+WAxZq8J/8KfZgQPwX8jU+Ani8R9QxTzaGGhQAamAmIBikhIFK+j
4OS1Lzhs+Lik3lQE891+GcyKx2Ea+eMft7NUR0a0lWOagzAcLcUQoQlbYhA4hiI2ksQ5KS3VoPTf
zt1Y07Px063eK7nf17g/VAZkYU3G7nhfDR0kLPTQYNfQgHMBfQR/Gy2coFsNppgX4JBceaembTZv
1fTGnBGNg+WXjMCHS+yHp/HKnqJqWDw99rI7ZTz8ao3XBn1fIsGbcqg52jwlwSZ/EWmhWHlBWl8h
DSfE7Mt2xOJksSEejKaY1yDbKVyEhKDqIojGYLVQC74fYvvRYN8+/3umZqs1sXaeNKmcJ036qYPg
pw8/rsMOKthWBZzkyhJCLrWqca038NULxyUlnmr3lmGHGREF8XwNAA0fWnqyjT4P0bdm93Q/RUWF
zFgduf3QGhpbQRBKBrQyV0k3vrXg7gbj0HxTIS4KUdcrFgRVJkXih8sSj9+/de/GXwM8rt0v/dc8
pPtsBkUsO3YqNm1EnYcJSi+jbVrOHfegR6iXryC2LVbfCnIsXltwc6hww6Y+sv2feSTSOc2a4RJb
EKnSNIFgQb7Bnga4Dg3VGNQJwXOxCPMWqxT7q0oiVSs7xZv/PMe6FWaPhiALb8E5ZqkRBqcuMKPB
3CI4aNK0RERBtAslAX/Wgt1aVUwXDdbThA30rauMq5IiUtizbUCxYD8CqBNjW4ajVzVjCZxfU7ey
p+VKIrrKedKrVPLY5jHN6Z0fpZCiNUYJzL1iQTOFo0QwSQVGvxUOxT19rdCrWHyz5qt4q2BjV/Fh
9K4jCzbi8elX97g/Pj9OvZ16SEPlUKe0hMH3KXFaE2dSgisOBlWKbZReSk5e6fBerL6lfYuXCi72
NY21l7X6rVwajb+Cyb0FQwEX2BZMOLBcg0cEvqQ8mLSxbXDIs4BLo4R9HZopr7xtLuXHJdWycok7
riqwQbnxu15OrklwUWALSDIeq6LBqxWM4EixFifKB8bJdUBxr8DEFbR3XY32VeM8nD33guCAQ4Gj
GtAwlGWetqlBICM47SjWWxALzHunQb6DLr4qYDYuvnnq8WFBdL9ub8UPJ8Pm/YdlF0dsk6EBMVtk
QmsM5JaNkjeJKes1nHn1ShT/+i6OafMFyV2N5K7qELzcH5+fhgDyx/shjF9Gj42XDL7txPI9dXjK
mQGdCrpLs6iJZK9Hj3HlC6FjfLzgoHJSen4ei4J344cFiu44s1IqAlQl32hi4aQQDscaLBxgQNgU
vI6giN9uZmVJxZwJw3draW8EZzWEr3Jw5dAjgIMrB3Bp6pRPVGDVJU5BYPAXmDrY78qYtwGzau3V
wzpeH1+5eu2m5IDX2FoB4C9nQgy1lQicN2iBQQ8o70DeWNKAOALWJJjZRicEX4DLrmhK5LqxvtXt
rpxWsfSojRD7CosrPY3Awy9wVX94OPRfxla7KVZkAjVOgAWKU1V48PiTBdJo9EfAbtDE0Wv4Wu6x
DYE8f6vk5q7yg2lag9Qfa/XpKZXHlYK/ciGP1ox6h2qaEpzNw8A/4yAXggQvSGKJufOvqowL9VHT
45uSzHV42di7pe9WuO5DIP5UystVjhIMf+TMi3cp2JybVnjgYuMpeHNGRwMqXUUlyNuFCc60XEoa
rA6gvascwB3pFlFiMGu6/twUP1V8tpZTOGygd1oszvCUNy7x1DiwSaRKCTXRJV96tu5NScGhQhY1
J7H86+8zOIwVAAV495Y625iEs9Nt5EN4STBPsMevDbTeiXVetSBmr9ahXPhwGTr58vDL8f5pyilO
F9R6lmSyiHGWJ+vB1+O1NU1kXint4XBcN8Mkr//qOZhTsZFomb1R8mlthU87uW0/7cDOuj+fg9EK
Sa2khkSGiYscZwXBmkDOhsQl8xkMhL+RFVJSsCB+bYqYrlcVRNSXY8aBGqVOxlamGFlVcG4Jmqo0
aPC+VGhkklpocPI9c9eqvY8ftsXOx6K8ztTq1cyBLd2bH16+PB+fH166z6ssMnYGiRMy4Tijlsnk
GI4Gx0w1Dtxi4EkniXCulAnionLXZXy3ty1Sv8vXChYPpqISDv3UU+k+pSGQO5V8jXcYbmz0YIMI
S9BvACvLMoNAmLTlqlWtjPFfxOIpTlZJR8lCpT7eHO6WEIHjXK2nP+6fP/dF2ginao0/0vAHKjka
HcEqedlihoeBT4eABI200TMsT0vq7SccDPbI7ZrCtdEyvTT/Kiyr2PuWrez9WUZ4yPhmQxP/v/E/
+RBGM8JQJlE8J5zRLZkC5Shkxt7AUbAh6r8EUGR4tuD0UOH0POLk/fcflwMSo3bSouvS8jwLCAGU
EYyQGUqo8tYG/1aTbT+uj6ll6+HM1nKiD4flPMovPULjzFWUT7qNHkvsJUORkbI1KZoWwf85BTfH
2aub1zPuznbvOj6+KWk0FcL1YbPt4cPfchUYe0dGg0tbDKPlKW6S2Dyg0uLcH049CnKQ5nDBnHZw
pPQrWHd57a2OgUVRFxDZVyjfnY2nMVNAK1kIZyIJ2NzFPJrtNHflIS65J0ZoDjaiWmCiLFYrKBF0
bcZZwc16GOmX/tOPLp1FE8ZQc3JrNJ7gC1LguloMzIObFFsERnFgugrrA+IzkeuKQ09bXTgJ8LRg
olYIaPdY3rrqE3efwncR5erQ7IvziN4NOAzCueRpwEoFnNNIwMNzAZsHiVR5wCsR4eqKUNzlQooR
H5ccdJWfYd91y9xU3x0xTjEHmeLMU2eCamLIQT4BVqIJcJDhSnqhA2+Vv5iVmq+5IKoiyvYrgJMJ
cWg2aICHoCmKNIs14LSljXEYow7gQ9PUcsP1laGwbbChCtQQULe2Gmwn6SXI8r/dXhq8wnSAKwZe
pDaI7WcinGgDsi4G6ZU2oHuiejtn7EzLRu/CbS2nBhyqCturkXQ11e9+vgUlqzHgwa3IVXNWa9ui
QiIaS2ODC1jjG5qkjA+eMgf+x1830RIelLyuR9fhh5PsxOKmI+j2/zpPIlZZblIcoAjHMUkMuhmQ
9Tjis9Fec4QFT+BQbdTCLhYsyDmsBxPCh2IqoAPFXKp7Tf63tSNbbhQHvvMVepmqpGrtQkLiSFUe
FHyUJ3E8m5DM7r5QxJCsa2xIGTxT+fvtFoeFA2R2d3hIMNDqltTduvqYCAoaZWRyNMzgmDJvRims
fGc+E54rmPvLEtl30cutLnrfJZLDpZUfvRYH3KMofY/KIL/Sh2Y0YXzETC4jSzI0MeLOaOrO5GTG
fWE57q/wPNIpGEhIXn1xUseO2WYdIUF3JGymgdketamobP/UjQqAS2GCw/ho5mIeKBXX07SnyivJ
Fjgu8J9agLcQ9c0RtE/alRFdHWZ3HadoWYuOungquC89WCtIAYOEZfoC5jhQCZgs4EaTh5F5PlRg
H+Qran3Spt7jHdR7z5q07rLUbxmwgy5zGhN2D9ehDPeI+BXH00Q+wvQRaNbkUkldrEOf2J6U3Cas
47TVi9dPtRkC2uJvvidH9yrLwgNfZfjqg8xLhuGC0BhB2ugSDnMeYan82leOc2pweVKYTkjEOiJV
RDD9frf3idUpT510pyJ+5dqOBQOsZWMO4tmUjdyJZcLcxZG+mPCZe/WT/rp1+UPBDE7PniJO3/cv
PqzVX5Im+5e31i4gbZKpm5J71MeNE46O/bOJQK859HKR6GPP7HfRNt4V1yamY+0Vce6d7Enuou02
a87SbacmRzgc5PwKE5ZR1MwgLi5uTHJhMwoTbcd2Bu179HINAw+mVWLzZRZvnuuDk/vDbgcdcAF0
+/B5TnZRnJCnNwKCk+zJ6z7DKNgwFSmi/UuiouMVf2/y+sWFqm8R5d/C52wfvm7iC1LG8ypTKYdr
+FskF8TUH+ZJEeZF87yN+KPizf9XPPzQagUtoPChX9ImTbrwgRDZ1r/DaTwuCea51tsXkxyu0u0b
wZ0lfJM9k2Z0vCBBVkTbS4vSsbsk+yTfxElaXJrXZ+anc5L/QKezOMwORQhkHVLVsYAsriAwH+an
c+PrflNET9sECkDkTbGwIJqTH/CySNK6zAEc9SMdDxZRYSGq3sPX4+IueJA3cHc3nS9Wt8So/gd/
fpn2g90v/lJv/dXDbUDO0iwdrbNom+TrJD4nxuXx6imgeVvfGHJdbL5jJPkAhBTZt+OCpZR73fwg
hj8nG3WsM3Qx2zyByVXYqhI074ShnDcwAmBw7ZXC94ohui9huw0MNUuYh0VFn8qF3EWbsFu06TCY
baGTNq0+FjEmVUxNUPkpiP1B0XhSKw6L1qWG5/M9+bwIyAtqReQagI1PcFGmw/A+mLMy+Cz2OiGu
Z7fw1Ff9DQFxi+IYPQgIEI0W6BrrnhvXKg43kfiErNJ1T7+6evWX8uZm5Q8yAKUWCmtFFWtgXg7R
PiavffxjsQaPAzDJDsNwBtELYZz1omJ6d+owgvbCtFjgS6nyCLDCa56QRfqcfSgG97/fbIqkrMka
FGQ327A2TCD9azJ/kHeT3oYT9pg27QYsfV9E628fKBRqjx0d5nEZqtaWwYA6IfzI0jYxviZPuN+2
VKzRh8cdsxoP9IcRhhMZyGHaGG1gGNIWhoulnE+HgUS73cLwZnF7PZ2AKPQzgTe2l80PhAmmfwTD
zeaypq0ZUzAPtwt/NRmkTogWv+3UyNCrOEpZsMdWQxvwdaULdyWr9vbpEYb+N/UerAI1zAy3wtiZ
V1xAvQrmN7IDrZa3lEipPJQuEEc1pWCMfwBQSwMECgAAAAAArosuSgAAAAAAAAAAAAAAABAAHABo
dHRwL3Rlc3RzL21pc2MvVVQJAAN40HpYcdl6WHV4CwABBPUBAAAEFAAAAFBLAwQUAAIACACuiy5K
FTU1knoAAAC8AAAAKgAcAGh0dHAvdGVzdHMvbWlzYy94c2x0LWJhZC1pbXBvcnQtc3RkZXJyLnR4
dFVUCQADeNB6WHjQelh1eAsAAQT1AQAABBQAAACNjkEOwyAMBO95hT9AIO2hFb8hxFUsGYyMkfr8
EuUD1V5WO4fZLKURJyOpgKqiET7ECKdZi95vj9caZrb4DiH4Qj17xS5DM3b/7WxuT4ej0kTNDaV1
bsBUEZ6AjAWrwU2XSeJdIcKoaZ8aE2BJx3+6Kn3k87qXLDEvP1BLAwQKAAAAAACciy5KAAAAAAAA
AAAAAAAAFgAcAGh0dHAvdGVzdHMvbmF2aWdhdGlvbi9VVAkAA1jQelhx2XpYdXgLAAEE9QEAAAQU
AAAAUEsDBBQAAgAIAJaLLkrbCNNCOwAAAD8AAAA3ABwAaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL2Zh
bGxiYWNrLWFuY2hvci1yZWxvYWQtc3RkZXJyLnR4dFVUCQADTNB6WEzQelh1eAsAAQT1AQAABBQA
AABzLClJzS0oUSjJV0jNKyxNLU1VSFQozy/KVsgESiiUZ2TmpCpAxDOLFZJSM/PSFQqK8pNTi4tT
U/S4AFBLAwQUAAIACACciy5Kkl+epGoAAABsAAAALQAcAGh0dHAvdGVzdHMvbmF2aWdhdGlvbi9w
b3N0LWdvYmFjazItc3RkZXJyLnR4dFVUCQADWNB6WFjQelh1eAsAAQT1AQAABBQAAAAzMjA01zUw
1DU0UTA0tzKysDI10zOwMFZIzs/VSywoyEnVC09N8s4sAVHO+XklqXklei6pZak5+QW5QHa0paWZ
sZmVoYG5iZmleayCX7BTaUlJfp5jXmZuYklmfl6xa15iUk5qiq2fPxcAUEsDBAoAAAAAANOLLkoA
AAAAAAAAAAAAAAAUABwAaHR0cC90ZXN0cy9zZWN1cml0eS9VVAkAA77Qelhx2XpYdXgLAAEE9QEA
AAQUAAAAUEsDBAoAAAAAAKGLLkoAAAAAAAAAAAAAAAAqABwAaHR0cC90ZXN0cy9zZWN1cml0eS9j
b250ZW50U2VjdXJpdHlQb2xpY3kvVVQJAANe0HpYcdl6WHV4CwABBPUBAAAEFAAAAFBLAwQUAAIA
CACViy5KE0rhBXMAAAB1AAAAVwAcAGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5
UG9saWN5L2Nvbm5lY3Qtc3JjLXN0YXItd2Vic29ja2V0LWFsbG93ZWQtc3RkZXJyLnR4dFVUCQAD
SdB6WEnQelh1eAsAAQT1AQAABBQAAAAzMjA01zUw1DU0UTA0tzKysDIx1DOxMFNIzs/VSywoyEnV
C09N8s4sAVHO+XklqXklei6pZak5+QW5QHa0paWZsYGVoYG5iZmhQayCs5tfakl5flG2QnCwj0di
XkpxRmJ2qkJaYmZOaoqChq6lhYG5JhcAUEsDBBQAAgAIAJWLLkpByTvycwAAAHUAAABXABwAaHR0
cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvZGVmYXVsdC1zcmMtc3Rhci13
ZWJzb2NrZXQtYWxsb3dlZC1zdGRlcnIudHh0VVQJAANJ0HpYSdB6WHV4CwABBPUBAAAEFAAAADMy
MDTXNTDUNTRRMDS3MrKwMjHUMzcyUkjOz9VLLCjISdULT03yziwBUc75eSWpeSV6LqllqTn5BblA
drSlpZmxgZWhgbmJmaFBrIKzm19qSXl+UbZCcLCPR2JeSnFGYnaqQlpiZk5qioKGrqWFgbkmFwBQ
SwMEFAACAAgAoYsuSmOqrGyCAAAAqAAAAEAAHABodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRT
ZWN1cml0eVBvbGljeS94c2wtYWxsb3dlZC1zdGRlcnIudHh0VVQJAANe0HpYXtB6WHV4CwABBPUB
AAAEFAAAAC2NQQrDMAwE73mFXhA7vaT4FYW+ILgbYlAsIyml/n1NKXtahtnNcrbCmxepBFXRRHth
0OHeUgjLbZ3jyJLuMcZgyJcW7yFLdVR//vtDuOQeFCaXZlgw74z5Y0xcKmglMM4h0A/YAfg0aHpD
bVwnksqdljnSjs2vMUSbguxqTdTxmr5QSwMEFAACAAgAoYsuSmOqrGyCAAAAqAAAAFIAHABodHRw
L3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS94c2wtdW5hZmZlY3RlZC1ieS1z
dHlsZS1zcmMtMi1zdGRlcnIudHh0VVQJAANe0HpYXtB6WHV4CwABBPUBAAAEFAAAAC2NQQrDMAwE
73mFXhA7vaT4FYW+ILgbYlAsIyml/n1NKXtahtnNcrbCmxepBFXRRHth0OHeUgjLbZ3jyJLuMcZg
yJcW7yFLdVR//vtDuOQeFCaXZlgw74z5Y0xcKmglMM4h0A/YAfg0aHpDbVwnksqdljnSjs2vMUSb
guxqTdTxmr5QSwMEFAACAAgAzIsuStQJ6olDAAAARgAAADcAHABodHRwL3Rlc3RzL3NlY3VyaXR5
L2Nyb3NzLW9yaWdpbi1hcHBjYWNoZS1jcmFzaC1sb2cudHh0VVQJAAOv0HpYr9B6WHV4CwABBPUB
AAAEFAAAAPPLV0guSizOUMjJT1dIyy/NSwGSRQrJ+bl6iQUFOal64alJ3pklIMo5P68kNa9EzyW1
LDUnvyAXyLaytDQzMdfjAgBQSwMEFAACAAgA04suSmBLZhCRAAAA+wEAAEUAHABodHRwL3Rlc3Rz
L3NlY3VyaXR5L3hzcy1ERU5JRUQteHNsLWRvY3VtZW50LXNlY3VyaXR5T3JpZ2luLXN0ZGVyci50
eHRVVAkAA77Qeli+0HpYdXgLAAEE9QEAAAQUAAAA7Y4xDoMwDEV3TuELhASWVplh6NKeAQVTIpkk
sp0Kbl869AYdq7++r/dC3kqkSWNOgMyZPSyREFbV4q3t+kvrznX+6pyzgqFy1MPuImYY77dxMLuQ
mXOoGyY1X+DB8RlTu28EFBNCD0j4IUD0IJQVUZvz6V/Icro95EQHdK2DBSetjAITI0gtJbPi3IR/
6I9D31BLAwQKAAAAAADKiy5KAAAAAAAAAAAAAAAADwAcAGh0dHAvdGVzdHMvc3NsL1VUCQADq9B6
WHHZelh1eAsAAQT1AQAABBQAAABQSwMEFAACAAgA9ZAuSqhl9KVYRgAAyCQBAC8AHABodHRwL3Rl
c3RzL3NzbC92ZXJpZnktc3NsLWVuYWJsZWQtY3Jhc2gtbG9nLnR4dFVUCQADbtl6WKvQelh1eAsA
AQT1AQAABBQAAADsXWtzm0iX/rz8iv6wlZKTyKa5Q3n9liPJiTe+aC05M7tTU1QDjcUagQaQY++H
/e17uhtJgCRbOH5nJzVK1YwlLufWp58+l0YMs9Snee6g+j8/nR6S2Symh79Q72tUsD+9NCloUhz2
6QON09kUPqPfsGmav0tDUkyaJODf0bc0nk9pfvTt+uL2cnD0/qikFmZkSr+n2f3RN5rlUZrkR6dH
vw57I5o9RCDP0XP8H2f+Ufk5P7ok/vXoaEdxpfMA/h+FEc2cV2grlcI2NTVk7QPqwP8P8aH24UDq
pQFF46cZrV/4q2V0DQ11rkgRPdADMFrGTDhsjMA//vEPMOvv0m1OM3TebzLTZSxJfVLQo3E0bXBQ
ZGx2ZdzFGsKWIxuOZhwqlo66siXL0vUIbVIALIjg1K8Iy4cYHxqog/XPWMHKgXRDZ2lWrN2FsXSa
pMnTNJ3n6Pa2IuPAknHPVnD306midk3rk9od2PanrmJi2cQgXl83JElikqPT7+SeolGU+BR9StPC
QQaWZRnl1E+TIJek0VNe0Ck6h3G4y6LiiVmqoH7BRaEJ8WIaSFIvI/mEBmg8ySgJlpLICPWjfEYK
f4L+mNM5WGo1ylMSJd2C3yBJg0efzhjR+pANfu25n0777mmvNxiNUGd0/nk0+PztoHI9G+fluH0d
3Fy551ffTi/O4aZ+/4bdRQokP8q1f6pcoXAFCtU49q5vhqOBe3U9Pj/7T0n6dolu6B2bH+iKkgyI
qbIjdbsnSGJ3uO548Ot4bdqVnLCs+KEOH7rVAyaz8W/sMuvr7yjrPh5l3x/R6PLfete//AVnrHQK
F0U+4eYazagPs9cHnwjTbMoPOlLv5nT05fzqMxoPRmMHHYEDzZm/HPlZmufdNIvuYLiBmU/8CT2c
FNNYkj7HqUdiNM4Ic795GMJk62TAOMsp8idZmqRxegeM44VDHjgStjTNMDVNNtVDbGDFVlHv7IoW
zC5ro/AvYuTNMAytUKOhb4Vo3BuC1yQJDKQZUj0kpm4qIfh8QbIiSu7QaHSBEnqXFhFXrslRNc3d
OVJDt7dyBPuD8Qt6iEKYNNj4iGgGoCg3OeqAJTty1E0/VNWtHMG2gHb4cDMj28L4B1WzTKr78ppq
1hbVbPuHVVtwfFY1U9Z0Y3fVAlvxtjLifgKo12BgKPIPMqg54joD09B/2O9k3cNrg4M3Do6iaJYu
/7DfCY7PDY6iKrqCf9h2gtEm26mKZls7j75hejagxOCRQV5UxE+APQXHhd4ZWC69jyhwSTNyB3/h
MBiygRGgj7q7Qoan6AHexG8rM0mss7C+lguv4+y40MrNQKuXZnSTbHyl0kLqE9lA5XWOU1kHegzH
v6R54Tggb/NE55fxmePc0HBYZMdbbz959+4AfUAQ7WwifOjPZo5qGQcSbis1xGfqdqk/Z+l85jhB
lJM8T31AedpP/Tlb6i5SEtCss7y1fpxLq5g66syLKIbVzYE5eSApbcUjgUpfMur/bjrcYQJoRoO/
2oq/rli2LQdoi47AuWEMzlOxtwzSxNFBBG1DAI+2iqBQC9xKQeI6x4G/a0KsHeNywGrRqR8GASyI
kvV2NlADy1f8lQ3OWGS14B3QAtQ7y9KpyA44Z8UC1pXLuHcquga8jba8FUzCZ3n3JlEcAGvBWdc3
cNZUmBhmW86GHZhbOMMs3m0WvGdCqfa6TLBGgStYbWUyTdveIlORkSSPmMON0146nUYFYPtKLu6F
wRDAkcsEMI86AnOYV8gHkt3aPv7WkfE5f0h/HiIWepOYneADpOKNxrDBNWBFajc1Pc02tk/NMEoi
hvfsO6wGnSCdQwLGJ4alrM0MLoZmgRS4pRQhoc8AxJQ8eVzVwXRWPHET2EoTFLHSlmeg29t58nW9
VPsSFrQbmqfzzKecu66rW5RXmSRqSyfQgsDa6gQJLM1z/v00LGh2RR6iOw6JwxTA8WnlnAsJbyis
yHkBIiR58e5jhTBkT6MCFp/3H5GXpnHl1Gkcp99XpMfpefJA4ii4vbngg63qigRQ2EYt31bMsDKo
QtweiWOP+PegGXzqMDH4ioxRJ5wnPM0nsYMhngE76i0Zahii5SbDCfXvq5Z8wYri+ymXpPRzwOG6
8DDZNRPkM9qtQbZOYWJU1qDKSPfiCFyJxwg8qupDzhtQwRbGbSWvkGwlb/PM+rC38ou8gNjOdTFM
/XI4jh/SKEBbDHQiApTG6Jm2CtYxW46eauvW9tFjH9r7fsPNG+vKq23QeqqVhtIhZatbii3n2GqL
Fwbdhhcx/P0lKiY7rqwfN5BhBbEtquyKF4qpWJsUtVsqqnrUf0bRzvqp+ojwCYxhgWOrNIscYW1S
5HazNsCYkOqsZcu/4F8y6yxOMgEgggNRAGLyigwq4FKnvFUsFFgHAFFwO1FooIMJuS+eD3uOMyFJ
ENNLmudA97j8m1eErFjkY1OFj2jp1HXN3h+8oNBJh3MHiEpZjrJG+f3rSXPnAbN0vlRVY3gLwZWi
tDJXABky4C2XtSR0Q30aPdDsksxWUFueE0qxFF9Um0GvmprCl2DdX6clhlQB0FPUViKGGrZx3bnK
vgBIF5QcWsjHZt2KCBfLUGwQS2tnOTWwPRU1GK5bbAWU8yQCL3NnkHxXhapiaUBDMo8LN6CsElS7
7ASdlDMVdaZ0mmZPjmKwdEPR28mtyWyubpX7Olkak/NTjAo/nfGrrej/Th7IyM+iWbHCqVpibXmU
hBBD8tLDPLlIU3CrGc1YmfqXNLsXXIyKVprORsNsySX0ZOUZLmyyiRwJIpXyit6ZqGYwdrXlhTE5
S+dJIIrra+UhW2N1R4xct3d2c3t1cX09dM9Hbu/04uL86rN7fTt2x9fuqTu6vr3pDWR3OLg5u765
dM9ur3rj8+sr12U6m5Jit+MamCH2BVehQT8d8TU2l3nAbUiq3JaipoZVivCHZw6mpOKWpAyqWqhK
aNmUgElng2w1aPpyPoY130sft5TgfFmGcEdHQKc3z1jGP3jga3I6O08uWR8RqKq6pKptqZpGiErY
uKKPgizLY1OmuaYqkqq1JalDgup+ilP//hYC6HhJ9pLNKEiOLqK8EFKzuOMsigHPgZmJJbU2e09n
s22zl/MyFeIHoYHc/nC0ZMJ8STZgwIy2pBSYy93frkbVTpKbNIUvv+T3gGCgHOuwOhFXBvBKFDZ/
Z5bTNUk1W4ogB5a8JkI2TxhBw4KhsNoRNIhqWKhGjiWmHDhNcEGYcHHkPc78w+AJPqDnqsC2aXgA
txpy4Xo39f7bd6eClmnrkia3I0VCz6OIUSqJaLYmafjZFnsTu/3QMH0ZLQjAWt9ZNRqZnofTqYNV
CAM0hUsHkgVbxKvajeoquHAg6vTMVstiNnZ4dRoI5Lzn7EKikdC4TrNOStd0qgCksCL7H/z6jBbz
jI+BzKvGK2ozUQGvkatSswxIeEwLLS50v/8hPvCVyVJ5lbcVOVMFm3M9a7TUpcbKs2V7ZtPyZHdK
Elgls1cYCFZ5dM+7L+4faV4zzIL6hlGr+pPsUwMbOnIX17vTu8yNkof0ngMjNham2Z2gHvhBg+DS
QLqyNJD6t3MJ7VmX8GFlnNIgIodn0d2X8XjYI3wLQ5lTNLo7ixb8tqmo+cSgvoZG5XUQlqfBPGYr
1Tw/rhwFcoDNIgU4jtPk7sRxeAoKf1OIfEiRZp2DsjfRaNa8KATVDdu30WnB6t4sFX6HXmAdRklw
vLr+pMOOf0RRUoikvtGP2UUCiMorEkD8PGPlsEv4L/VL8vMkj+4SGiD2lQeSdqPx8rK9PZUopKLe
MJ7fRckIYmAeF08FvzVOitLor+zAycawAK049S925GU3Oik7OJGvUKPCqpfnU1aP8JlbXPJA+6ys
PEAeldGYPF1uYC6S1PelvkZ7y1qkIUSD91KmZw1ttvcdNWjtO6rdaJP8M33H/vN8p97u2MF3PGxX
WbGdQPcw4XcZK7PR1tiFm2zV4I4WBEYui7w5xJkQcs6A+/JAZ3XhDUDziNbruauzS2HfVUYa0Ai+
+uCGLuQx5P27A3EnC+m0RnNkB8lJoJsNySGvSLNgIbb49iqZhZCem3ESLlkYQAj+sTGr+uJgVdGV
aqpsN9otO+EHpNMrJhdRQkkGiVjOhp+lCJ2NVm0p8Gbdq/ZixM4DUbhRm/2VF/UIPEXRq3qwvIAy
5h7JwbuYbJ9pwVKpyij1Rfz9yNQSWPEq5RY3lXUfce97USOT5UbnZpch0cOgigClFksE6FeUEWL/
s4TXG22dHeALAEwXRKtiCi4xYyTqtLvKvJrD20QVixbWGz2WXUS1qY16o9Gl27+oSrtQ3WpLzw9l
NBr1L/70kVIgJa/3E/7SI6XIbztSSsulyLNMmTaMvOg59j1ABQ5/59NZXELgtkuXy1W+cdAYukCy
zltL20jcchMJ/BPtEU1uFPdfRj+dBqG1hQU45P+fQqUrEJ+V4F0/o/zpAxKXPY6yUGs0WgU7jCAb
wooIX+mTPwHJRANs8W3kT+iUCLXXj201QqVXZepWo1+wi2x6bSl6Trbm911kYv6htxVJ87wXRRKG
uq8LxDhadqMZsANHElrbjdAX7Y/eyh9quew2I/ARkRstg11kCXx5R+2DNclE38LWGq2DHdgapr0d
ZQQ7ULrcZmYojS7Bywx8SjV7q17jbM52MtIHEs8JBNSL3SXYVnGjfbALK13hDsSpDkqazBlxo39w
ySokjUJ6rQ6DPVvVCN85zCq5IabscQyWUqiKBdF5vXuwaRtvY+sztT0Nua77X1eKeXtzsep1CWO7
vZjAcuzrmHfb7kBu93sUxyOaLNrBZ2l2Oi8mbMDLDZYTyHtockcHQ2y7vTMgyy5YHnY91gJYleGw
Yjf6Ey/KbZiabAQ7yI0tELeY9EvZT/OnxB8Mv/q3WBVSzFIIzGl29jDEhpB1RWr4VVUbhwT1stXi
frskj4OaOq5Sxq317shOA4FLhb5i6z+YFzIMCeYx5JQjWmCl7NMJFdblfxg07aqIvkmr6ia4V7W6
ycoBJVkIZyAUiSnE0nzMeCOlFW1Zk70qbTFQjEU6Z8GIxRsj7YqxslolyauObpCV/QfWarHaGsCU
zTWKS5Pqmr3ojuxOUg10tUIyS9OiIamuWotOSQuyHsz8FVnmXXRRi1ZZSQPzxkm7mrEW0M01YzZJ
y3bJG9aM9b9dldxwqlXxqxFvG45XTzi0MYUWhKaCpoS1IfI7t8jIbJMVdiGkeuqSEG+SNyrROzS2
Laxo1R75suHmT4Ypb5gpDDXakjV16q+33rGqG43K8hv03uv14xf7qJqsBJAFurVR5Dv9bV4FbueI
th2sHNFLgyeuJuZl3ZaUMFlRWnYrDYsXblu6s45Rk9DKmc3XTF8sg3RuTqffSVS4rDpG4k1u6z8P
gRbBmhrIIUpIkuYxpdz3bXsxZ/0PHw7x5q5ujYop27IiV3YXFZMoL2HUcThhF9bdyg4l8XQnRLvz
jLsab+6Uef7qKn7uGMcfWThQ/otP0EktP2pMh5c38FBMqYc8UVl2nC+UbT/LffLAAqv1XVRs5T5e
Xs0aX5F/CQnq48m7qqyv0ShebLVij3i47pRRdXm9ENtm86maXRQLAD4aioGpfBFqjRYq8i3eVpOj
ipuP0ezAUdVlvOLI46oxySv2YkIsNiA2JHt/0Dk4Yb7C3KTEE/E0gYk6S1KHEwcrevMpm11E0+Tg
TUQbJEX2NGQxYudHyInik91oMe2iiOEFojtWcSS3nF7uLEsfn44rU28OZMsd0sD3xyT++EMGfA/u
vdoOZ6vV7X3mQXsk3Qrv9tvBO5bfFt6tRqxSy4TE7ul9zPLXilleTDQ1TyOQOX/4rTGcHTGeBwiS
PPFEAjvAd4jybWu42dhuir1W9rAthRrMulcj4U+u8DGxrRM87zWRzZZJZL3dJLLfOEayYRItHi5A
gJZpzDL6/bz5i82blwjq2LL5L0zUdwCbbZ+gpaGpG5Vn2ZYeUf7+jBMlEaucRv9Dq2GFwh4TbFwL
1mY7GXX1oPW6HCjWYh/4WpywXPSwuenJG6s1K88PBavvRTjezk1vLLH2m6FD63XxmSUWvy06YPlv
VwHBmCEi84fTeZGyH+HxX1n/0NXAM8AQMxbeTVz/gWWUr7QCYc+ZLa3AfrDHLamZhtkAyB2cXiWK
KZQUusFCG0TiEZIimtLgF6AtfmiCp2OQjVWeh2YPr4jbYK4PhUj56icl2uaMnq8uJvuQZGyP0kVa
OM4MPi/FggD4ibf1eEQs2osfxT0jP53R4IJMvYAcsz4IgvB49Zzi2iUipm5ewn6yiz9N+JSQaeT3
WGbKHg+spMOKARO1sxJRPHQka62TSVWmgWnwpyUF86Wan/h+Fjaw/AmEY372AkQ56Sw/tpAY63WB
J471ikTUDiD5raVHC9BdfD7eNF3KB8tXgtNspQ9TdFlqcJx/deVqJk8W24jegvDJIo06WN9TC4sm
pMN18uI3IGS1fVr8A6uW+WetWn+LxBArewjfQ/gewvcQvofwnxXC1T2E7yF8D+F7CN9D+M8K4doe
wvcQvofwPYTvIfxnhXB9D+F7CN9D+B7C9xD+s0K4sYfwPYTvIXwP4XsI/1kh3NxD+B7C9xC+h/A9
hP+sEG7tIXwP4XsI30P4HsJ/Vgi3a4+b9c5GzEuKw1kWPZCCvmKbvGyKJ41j6lcQvNVDH7qmE/5E
ihDmUvyYMQdwpf3e+K3Dor7dsGhv/PySjPzyDcnsh1TYS6jLVyUj/ju6qGNoXS8qDhwJoYw8Omsv
LJZh4DJv2wl/24mgegLLVA+IL8uMSRBtuSVfnmC66X4o64HHuc/WT1j8jg0nTMYEZdYGJmzCZ3Zd
LllXfc4dy5sEZidwlVSIbS30aMA0wcoWTbBap4UNxfb5CW0bE339Do2bK5rVzixejImyMG5wxzL7
OUsY7w1iqYyWdFG+0rg3vBWvnTakQZalGX+Vdfki6uWdmjRmT6ldzafe4n3pWJMk6VOUkOwJnU/5
K2akxUunH5fvm0ZdVD9owOA8/xPwHf4O9S5avkQdHVunVv/MVPRuTzvFXfXM1runZ/1eV5M1+wyO
WT1DPvnrvbC6qnkAZl8zBxxk5viwejvLaBJNyxnekUFz7VTXBgPL7lrW/xF3bcuNHMn1nV8xj4xw
FKbul8e6ymOPQiNRu+G3jQYIULQ4IE2Qsma/3qcaBNjV3cDQXsZaoSA46GbVyaq8nMxKoK0nwplC
rLSSBJeCNTIp7+IJyScjjvBcT/AIatebzdzDamb2hEfBZOKCaOELEYJbErjKJARb4GuTD1z/b/dk
f22IU1g+XTfRUbvZLKc4P69vutW3ObTUccGjoYRFK4jgyRLrvCZBCaNiMUZQdhrtftxzmPd3NMhX
xkyQS2fsaIVHXGMGe6TUUmcU4VYAe06SeE4pkVHSrHzJnM7qQDvyPPr2niF+uXHdBL+WXE815BRw
55llWkNlk0xE6MyhxsEREbyIXmvtijmx6KcRv1wcQl3rvbNtoK61kLO+5tf17umX5+12/bj4tP1P
8In1dXiuX/D54ZIt6iCs2p0SzBYeifaSw+4YhclFSzKjRvDMRTL5tL68TtHOsFj2L2N/cv6PWkm7
qTmsDYNSmQ//Aht/WZ061tXzw8P941PjTXQuWQhJEs2SCGk0gWf1JKuUolWKGxrmpDoz8AAdY5vp
PjBoKq/oht/G82P68dfP4fF++/d1eqyPy6pLL/kCbBnLv5ALXp2+dcJk7YllgRJBjSMuJEMYzzCB
Ep0PHmCvenb08fPt8hGh6GP+Eyv7oiuTaU6s//TGiz36yiR0R5eDSHZ8E6FXQqr6wJEPl0LTBd+D
xqKKEkmMFF6RxUh8jJIY5S1VMUvKEkA/7x7ron6sfz2Yy0ohxXguvKnVaAWvfuse67O5L2VdNbHQ
+IvDr0CRUuKWMWhvjgHersDwcmZEu1Ac0pCAkDldui97dl4OVrf7+DLNvCG+XGzgS9COCXz8N4Jf
vzj87sOl0j3w+gLQgipmDWPwFnBucMuOeM8Q+ShNIlqbtRNT0AO0/ajzWPtLLVJNp0gVcz1SbM0f
P97uDl9bBKBioQAxFM14MYkUL0LlIXBtIRsgZiEGznKM6ixEv1ohhUEGfMK5DW79Y73CAPO3tfgu
WhG6Obmue1dYk4mH2+3189eHg2jMmQXrA6QxythCaOkplgTHYDpjH1JJPCoeox0o7mSkBoThegrC
VHe8X9w/d3dPx290umRyIYHA8JhY9JKwEmq0MJz4FDM8FCzdSCREzrcIhsM081uupvM7uRrFg8/d
83b124EFfrg03MKC8Gf7X6ohFZAEFwWh2gMT1cAkqSeK5sR4RHyL/uyG91/++DLBd7e8xTN/e3vP
RSvg9VTqVcdGUg/S5Eu9cNXjcuXqBjDvkvCU0MDgu7KA69VFECaRWmrlETz4WWFfR57DHgfXL1qI
M05jI1YjonH8ctZL04dpZYQwi+p4gT3zrJSAKXILbyu4A7UTAT8CC+AaRjh53nkcvj32hK97uTrE
DRWb4lZUjVlH/w38f/XHueBOFnQheBWh/6U6FmYME2DPkSHg9fCdi47E5Gm2mXsE57c47Je55oV4
udjIwEAtJzIw2h0s9b+eu8euPiJ5fbBWW4kELbBHV6AqEcmI8EjNgvCZZGmCUFYnR4feYl/B+Dgz
3gjMcg7M5uC7VvVB6wccpjpkp6T1PjvC4SKIUMDhcvUZ3JsoNaKxNLM4BkO1EJyYgeDGnuPTT70n
3z/b5dN2cz/kjsoJC32LJPuCxTHREC+EIpon51XKkTn9ls2cTDK/rZPbRgJdzwk0zvMeEMoHSdni
S/03hKK9VFz3ATpbVQyNJJlU2SMIRahZaWRFUQRDB2097wy7x+W8b2jc4JcWy/Cu/tJIvs2MfB0/
KHBfGLyKQ81hzPXRnAvrIIqHFLn6u4C8yiOXLSGnTFnETp2X56eH9faHzyf8dH/7LVj0HIhWhE7P
iFArJS3n+/Z1eX98ZGAlzNWDWCpr8MS+hGK0quCRYBWWiVURogVebIZntJG/ifENJznhC4e3NIJw
MbMXXBzt92tlYX+r51u7p+6VgkB6+EG5Z/0pZ4+kwRADU8GmlBpxA35kRKkY8GZ4kyf84ctf4v3X
h1uwrYEYp0C0Ykg6I4akB5W660Pw0Q9ptVB0YSv5h00kTRVRjMFAtGRQKGS+ORbBgoVKKTrrjYYj
NlC0Xk2haNON3FH99vQbEGqGDGDvhvpfAElz50wAlQ4xIY/1BjabmCYpG6ykL3CT/P+s4/trDWAz
Z45muTys3fqQnh2Xry5cSU7xVMsxIUciIgK3s0Eg207IKqOKSuaW+o3GaTA4NxNGlp0+qGG53939
7Xp/anf0CXrBqx2pUgtrHAw/STB8wIIdCUZiRrAvrhZfXItkOtpFO6+Zglldy5H/3efWf8LlIoj1
Wwg6t2DVInwK2QqlCJJeRYTA7nkNkpOgX0kzJJVRfpeD1rHnN/Fw9aIFOCXQar3mhyW8XT3XpwAu
/DFDUmyB/+sSwqu6wKQmwkrkcUmCRkb8KFk4llSCGZt2CUejDZFoaqb5jD5wgtf1u93+/ipeH7cq
seWsAmJwjLBAACoGvlEHC2sQhkCrqC9CBiHse8StT0MMTYTe/t7IxBidkYnta5qvBz7X293u+ugk
uapct8oDR4IldhY8sRZGmI4kwESIEjA1cHUwyTTrZqbjjmC5GVhy7Gx+uLr6cCn3vKD3MUE6KgSy
BRFErjVqj8TNgO+AfunsvGOSnl1fjDi/cLjQIlzOIdyYg3f54XN/EnE0at6ntsgBClIbAbdMkdo6
CgMC4UbWbkVB2k5h2O8T55v5G+RSzCCXSo3Xdr1d77+3t7u7erp/xGAfLvf+gAvXS2OjhVpLSyR3
lV1Cr10Ef5HaRCcMon5wbwqQ06lObML0xlY0NaUvWqkjAyv326cv3eMOgfiwL8r2FR+ujXc+SyKZ
gDYj7GNPjECEKik6rbQt5Xw55fWhx29Osv2vJ5Ttl5cvy9x9nAHdSOysnErs7OqYp9w/fNuAebzq
oal+vKbRJkRSBEiNkPgRgsY+Rq1KovUr2vh8rtIMN0IyZfd6qcbUsdfKTz8NPaRYiD1TkJr24IRO
qpYIZRYIMp4RJ6kgKWpk1ZY6bs9XtiZTNA5wf7GBvlzPOMEVVQe1+bK9eS0Q9Rg5PImRiRIpFZyN
T45YBo4FysXhZhhU5x/A2Gz/cfIhZMOup0ZseD3DM4fvKe+WtwfUgpqe0TrOcwkwU5od3CNTgVhu
KMmW+SiFNDzSNh4Ox2kAcD1VPLO21+P6+v7b7g/VHUnlQlYNRKxjrOhMUrLIlutS2ggNjNoFzqnK
si9On7W3E2d38eXaRYtsPQPX0YOdxL/+ePXyUM/2rOLFcYMuC8+dJ6nWFoRDDm0zTUS7qAy8gwya
vlOCNo+klcaxOWm6nsm9Rtft/dPt5turq0PMpr00SdqQspCEFgNpJLIzT0sBDTEW1MhZE+O5sD0c
uAH28uSgBpiVajUpug8eSHQoVxjBFkwtOK36oWFTogRDAl6JoKBv1jtYmRQI8IXLWPR3KvCvU5wq
xL/ecdHivZ4Rwi5HQgzrqZ/q03LqEwcuubSLWk/rX6sgGWlDoVAcU1iNkRaMJIPxFWdFSDJHG94S
I+dmO82ix3e28tlpJodUZb1Z723hj3T1ZXzcoAzlWlHYa6GIj0nZWpMvxGXIxi2uBvHPOm44wrto
BdjMSNWNj6t2D+s18tv6+MOb7W1bWqjlUOhgXw1lvaG4rLyz2L0CglTP6lXNC2EyAZ6e2Rilyu/B
1696VL/MgWrqHePb2hVYTV0yshZ38AqVSPyyvrndPT0OnILq1dQbmpBP1sJlEdUfe1A55iB3cPXM
PzvN/h/5Twu7kVoLPSO1OB7wzLasXYLlLdg+hxEpsVxkJMjwkWf7UBCKYl+0ZzHn7JRy55xhM3ID
bWOmqavddJuRSqb18vlmX8raVWTVfbC+Fs+Flzwq0FAHciEQ9mFwmYOnWePrsaF6WwVqOMP8ig/v
aGVY0hkZVuxIML8+HOtPlUgHL0PhWD5TJOxEIMN1KRmimYsuBytyLCOKcRxhOLGjq2mMc4yNs+29
7PF+u7m9eXnOSI0oTPbH933SbaEPmUqsogbDwJLWEpRXpFhXAs0x6BzPH8hM5zhVj5zc2MjExbQC
47jWo2z72HYlGK3Ol9rM+sqjrsmWSCUTr2x/nG+EUCGbLM9p6NeZ5ZVyGqmRN8iZIHfylE7BYkDk
EAVKrZXVAqkVlhOekPYbVRBJv38kef6kzo/uuWjhTu3LOT3OZOuJe30Ibl+L2R/YOcMXYl9kk9TE
Wrvgsp4eMVUP+UE2eEqBSk7x9vudqh6QnO4MqFcvWnH0nIxutE+/re8eqt4jl6oFu/6MRCUvwfQI
DRFJnvK1ncHUTkVHVUxFFi3fI3b9K6aev6leaYWxc8J0dnyktXoNIlA524fk+lKJeMo5haxJUbXv
IVSpeJKEC9g0XDk0+001h+EcJzLFwR1DKTqqpgeVHdXrQ8TZP6/d392sMfnrSY/mfaQtJSuZUyGF
gj+JSOvRtvTw6d6EUGu9PP2TmNQM0FbQGULRMcUORHH0SC2Yl+W1Mlj3CZxQiMQ5qWfhtY4eoX08
kpxiDlJnqX0557NmCtiYms/hEYdYlG67m+39rj6Nar3b1T7g/YM1X/H1nWdciqADVIbV8ymFJBhJ
HPiO8hybhJDVn4kOItT5cRuInE/z8o6LcY/o525748HLv+1ua8h/8Ur9a60SY6UY44L42kYgrELY
N1ARxAGVpEISbdS7k7EhpFP9Hq93tEKLWaFXh7B2tXpcr7e/rOujYA57IbleyGoPyCKicYkRqUxt
KXWUOKmQiwbPwbeZVSW12zEdboTmegbNkp3o4dg00a3v5lCM961r3suSEgWVqZ0F1HsCx4Nop0Nw
BWSsUPOmRo7vhbjpfa1A11Mm1CltXs8yV93A02in+5QtFx0pMkyiSra1yBeQQsPvaOeViDk640fn
R81AF+1sdg7C2HEPg+FcD1Ou3KWe/uWYa2+J5FBsnmB6sDmpgzLB/oPRdnjHSIQZJVXL9bhFJgM4
rQEHP/sjL+m4AdBiqxJYHYiXipLiI7cMelD8OxIEn0/0y+RWluU01+20FiNZwt3z+un+/um3ekgi
952Z9XXTtxVTwzMcDCmgOtiLCCcTkPE5IVw0FCm9Op/xffrpOP6pbpDjDQ16vZo2tnSG6UHtctCR
x/fxxJYoQCtrD2bNxKVDXuGjAiXW4G9INhKTk9LlXEdeZ6Samd7RGebbl4g+/VQ1Yl+ilsb1bTUm
OR5Bw7Nh1UFXQp5hZBSEyxkYoHHlu0rxMvhpNX65oQU/U/nrzHJiiL89b/tPeu6nrofKpgYY3Vf/
kyncqkiQP+Z6CIkAaL0gynItmVCIgPlNJal2khOCtDe1wsycoeHNsUn+GuOwp6monMGRBLxGXfz6
aQRnQiacx4BEiQXI8hb4GHYeMi6MYM5Ym7nWowpDt7s75m1c1EaM3sxYqaAKYQGRRBSWSPDC135i
ZUxOWPmz1YXjqC2kazMDacMOpZ67v3/tFuqV91TiHKlQjgV4LoVlqwmwj5YRmoymQvhI46ixYThI
M7tdzvBC1x0PH/78egeue5iduwXri87BJx11Iqmomm9lSrzmDERe6VQS496wUVPtYJyLdq6ZHXGb
cfJaT/J3B9dbe8TX1+X2bv35dvdUC7V91xJearBkicMsTCCmNh4LrkC+uIOjSdQL7i3jLL6fm2+x
nO5pf72nFX/TzYm/PDZW71Wnf8L67kgLejGRziaXFCkabEYomH4Q1CADAcmMXMKA1DltHA45gjSt
KXcdEyMbqTvydHfEZEU9kajAoqPJZ2GRnVokq5ZF4kH9CPfa26CN0dyeTReGAzfI1jM5J95cn6Eu
i7J/9HKl5hymzGifgR5/rw3KRQXjQdFDhEWL4h3xLliSFIgWy8wZ947d2Ac8J258udqIvTHTul19
87Ahv6+/fb05snG+7xkzLCI5BWGsjCAiOwogbCQ7G41mQZc83zM2HGsEwsyBWB3c1PP2v2+3x5qs
UItKEotGggg9JAjptW7h4CwDUNWWghICEoS+f3oKYzhaC8PN5I0bOJE2j324654294/H6puRVTv7
OqzzDrES3NmY6juFILY2vOgovLVRBjjzsyXiZuQRtuUMtu5oy8vd1wU9rlD/4YTMwGAkDMTWupUy
kgQsGVFJFR+i4Y6P8tfBGO3c3YzRbtbjz8X+nOoZPatlaUF533Kd62fSKOG2d5FMwliRqRbLU+2T
ozq//2HBz2n+lp/TUKYlWOtEpiV1x76c7vnp/hgXbU3znHNZM1oIQnWE6wcT8il6onKk0gWtUgnt
er6O0U7tpknSktljA/u/feGjNgJTkuYCMTmn+llEUz9SawrFP1nUOUVdOHunNoLj5A1kPtNnteRi
nEj8+/pxuX6831U9ONAwFqSRMsA9qHoibjMHp1GaZGTtghtaeD6fyx0GnQd/uNrAFTOn+EtRWzrF
d84EFtl/sZSz/+g/40Nf+k36aktiWWQKSsKjrZkFg3FnC1fuJWwpOVlKfAufPMwwL8/haiOPmulS
Xurl9Wj5//JpWILfM2EpdB+IvA9BcW2QitSPHdRmtwAbIFlr9T+8XUmX3DaSvtevmGNfqMG+HLHK
emP381htd18zmSwrx1JVTVVJ3favnwgwk0mQyGVm6vkipUgKiCCB2OODj87ElMUt1M/naHMwf+Ku
JnhocXF/DP88D18evw3zKiRRnCjJUuY2dVREoFyBKwpC1nZCKgnOdTa2qrQ9CdXleDUx/VqebkF7
rdT958fnj78/9Oga2/GN4t8HT1MnBtJdYo1m8KyzseSMuIVbJmaj31y6TfSccwcPtyte73dr+d2z
3ZLX7z5MpRbskN82h4IgLAznQcCyV9g5L0DF2UBSl6nxHCR5gm/xJjmCDxdLMabbdzUnrMWeXqV3
wE3GoPjLy367/1zassY9om2p3AHp7oFFCm458Emwit+AoAcrjTNvrfHseiVJNf6FepLquQU3psXN
0nM/RfdLGhP/w+wSXsGtYzh2aWG/S+DAE/YaZWw9CsErz5JO1xTwlRzC6X7Fw3a7tqX7nVlWkP/n
183z6x9jKz5QjAtOoN1csu0hOdiOCrEasP1ewcYCE78TWvmsIs+yVQ8ztwOmwc/YA9P9ivSBrX2m
HWNToeT37kcX/mOVrRFg8xuEOVBg7nfcgg/vM9ZMEuFIYEYz+mfVvcwpvKu44Ot42o7vlmUGm2/z
UPdYyUuJUCD2SnG/oD5GwnOHRwHDl8GOYszca8RaMNK7dOXLuF+uqZD5E3MWBtnIIMDFKYOAzemT
EXxscM+UcM+y7yJHIA0TfGctc12iysfgCXGk7SicRlsQsWsQIbcLH7bCiPoLx0IvzHnBQi8rhgbQ
ERmoSl57EKkkdi5w1jEtDQE/wQXiLvkK8+Er8hRbO1ODOlRczmrzhtfSNncs4DJTKMpjY4vXvLMs
gvyLTnfwkcF7MNZGpYSQgV6s+puPXJO2Ew3ShqUdEzJWQcb989C/PpaoJBmlA7WlOYJmK7HXWsqE
oTIbO0s1BUPcBKlcSlaYqzWW0+jXVW6+4fnFQzXXw9ruGTRlJ3s/vV8Y/Ia5rBVsKs+TAnHiXGeF
Tl3gwjFDMtj9+c0M/uPsdzV9vEX0lEx62nyZhe5K4DCHSK2P4Jp4WDaZeWxlDp0IjCfw02Wmi2b4
2RiLuU1rbjvlCQvb7/wp9s/UMeBCKJOgtmOnKAK4OPCSsEALPHKVBdORhbjweuvRKkLspkHIVk1d
L/5793GlCjwwTA1TsB49iBuMZHotYxfAnDAqMVBj6k9SBSf6Kra2pvFtt0Yu4oJVWHTCXhiFlwcF
7MANBp8HWx5BpBpvHSbxDVcqe0bitTBcPfScwHuxWUvYe70Cxwn5r6OowZZG8k6VmpbDr9J24i1Y
5amLBMQsmKkYfgAflDmZE2HGRXVZUU3jn9vzh9sz2i3ZkpWvBhfpFFg4L3dTTtFqoFdKTF2RQDp4
xaBYtQUvmXhhxSLDfU7SWtKve6jh4m5Z5foTuEivwy/74Z+ndOxR4xdVwIyhApwag1ksDmKn8+jL
UymVINwyyW/KoaznOSeZls/VXO2GNVc7MgXBdvuXp83rqdFVElpK2XHJBi3AhpdYYegwGKVB38rk
wHuLIZjAY7btXpZ60Lt66r5BD5ONXteXglhVAHCwfKNoMzW2R3GVwKQFLctBusM6tRrL43IH6kx7
pmGHef8WzhVqqI9HMs63x06PzFmlclipbrh4v8yGXlTcnDqlXZSdDKXSjIBWQyVnGI1Z+CCaKAP/
O8V9Tg1bqihbc6DUZBf97UPOCzXMNTj0NjrwBB2oYVgnncmKdJlrkcGGDGDev5EaPs1eE63WK56C
iDsSve8fH76dFPHYWE+kIw4rlRi6TljMakB+dJnp4KNjyie77GadjXJXT0Ub85vlZz+hMBTEDoxg
UVSJoyihjL7jY6+8JULrDELYGy6xP4Z2BqVzjjkT5mEh2HgzakiZ5gJwSLlfs7Ndi0W65cvA4C/7
3fB4ue8k6MAUxfIjJdHMoPC2k+6ocsFFrmkznDZjYD5Fm4X5E3c1vX2Lif64Jr4+9KecaoHW8hRs
Yt0FreVYau2FApOIJzBRlDWZpDOJkr6xJLa89Q6VWlgPe0T/OC5LrVHJlcXpnAVzDewzERGqCfx6
p6LpVHBYEq5zFhcth9OwNVFKr4m6t0tJ/G1fGvDzph/GsAP2FKKAKn+jDpYCLANQC4Jh0QDRpnMM
zMcgWYJLIkp7U83DcYYzQvlw966mdhU0ge1x3zfa7t8/b54+7ftSEligKLBUGeyesjKpAcEKji7h
zsDXjqUjCuyfGCTY7zrmKx048wnOF50cn5izwJm2axaYmZoA3ud/jOnqRdccuMHce1gPBFtrudRk
9DipD8TybLTWbwRrsqCgpt5s1tRLulnaTJt/BpjmeXOA5sNyQIrV7maUvhRUBgM3CCSZQQTJBO8f
KzONdYyRRI1oKLl5mvfflzMswf+m+xX5cljvS77ZbGEFVVug6KR/+4spq8aMoWyZvaBgeYLHAh61
4Lxz2mLO32qSA4hqQ97MZRn7zZuPjfcqrnZibXfwnZxgHf61eT4VgR3SjhxkdFaqY4jhwCO6pNHQ
DlgRwUhLeFiUgM0GqSeXvDX5diFVwA3IH49VoWOyyAjwMrgAGgRGXjNjiPKESTCjHCXJ0SvAZGXM
9lsqtyo6h/u1lSAIPRV6/Pfn/evAJ61AVZHFEaxekGe6s9QBkRo7NKQOnVIW/BAbomGLjGY10F01
G2cNEsRkXYWf8sev8H+rFDWIV/CWUfo7jLQTpTvPvOtIYI54540LvCagHqamYN3UbwW77xv1enHs
8mD4tBK0eIvYtSuFBbUIdjm8DIY9zwaxi1MiAevtb8AsiWebNo5372rq1ltWcLJOQn358vjw4+Zh
KI1fYKipIvAL2HLSJbEqJQYbwLRCxFEwrxinAmxtx5J9C99hTsI5Bk9P3NX8NFYGF8vCmiac1yE3
QEurrNBjgAXYNc4pjwg3Fgv7YudJxCZlG4LPNIOSe/PE20TOBZSvpUoXXLZYPzUifN48/LqfKcNi
IYcgMokUnCTQGmPiI6A3mDiokRyJYWxRfzcbpZ6+t43ph6mZ/QuoxZepHhw3ZIINYD2CKGAgD8xa
NBW56sA1k8GaxDNZxPDmY9STD6o1uWpADS6+BZBi8HObUoMapY7cdVQwBDzLsvMZBEZyKJ2oEsaI
t/nWjQcX/KwtTCHu5cI82w0vv70+Pr1MvGAqrgSmxh/oVTpliYIFGwiY4hy/tZfGdkQoBRa5YPDN
b+vWLFMdqcUHzjVtrh68q7lQLdaGhUV/iDat8LC4kRhl4SiPlCJWxqA7JbnFimfQexJMICERYj2r
SKi4IXdwHivLwkjbNbXyni0W1kmS4Lb8+z7vZw4pAYlCSk0Pl5aB8+Y5dt1nV6LXEZaX4YErsD9b
cfZ21z1OcV72492KDb3uW8WLYgXb+PHr8z34C6VtCkR/WUrjL5SFLGF3pQJ/BZuUwNXrHKIrCZAS
MmWm2BWtNY1/rjb/cLui3dB1jFMYLo71euF9ARTA//dy6lHV79AbFRrsSwRilAz1LNG6cwSc00hk
Igz0meL0z7A1azCNFcE1v6JhX223iEtd+H3c/ld/AhZTBW80ShnBbNaIDZywXEyCmUVkJ0TULidl
Altgis1HuatnWjsmomfybBCmLLjv3V8bK557jth0vNM5YN81BwuHBNoJzrITNMYQ01UzB8e+sNTh
7l1NqmrRb5aQC4f2pk+wU+2hw4oQlCo0aZ8kWGRWYz8QVjS4FEAppMRcZEJF8yYwnscGq+8+XG7A
+u5DzZ9tbId+GBb8YRi4R+iPQxsfO7TxgbPiDYK9OULACgb9hjVEBhwGkQKsPUt0uur9hguAh+H7
mtx1DXa5eBT3VRD459f95xPi4BiwdpFEFwyYmkDcuIWtteA8wEdRlILz6xZ+w5khF2Q1jOGdmNpl
+69PL7NIJx8BKSyVRjhBOlbyfTyZzinKwTZkjBnw9fQSBHw+TkXAzpgGASfsnx9KFmByNgtCFvZD
ePh8nU4ozSJsdUe1hN3FrVA5CCkXvmY1ynx+KRoaAS5Ocb3waf8wvAx/e/xteNj/McMmwy0C7roJ
CmtPiAJNFjSsHxZiJ5QkmlqQN3FBSHu4iiLZCJlL8GAXC/u7Yf9lh6A2c4g9GTnYAOB2G4/dQ0zi
gTDg4OHhN2DREVCzN0XSDoOf6xwvN2uijW4RbZeAEEOPxwb9/Rn+iac5HGhX9FjMTbNBqkFRWQyk
gYXQgRWYuwjShmmhuDa34dNWE50VLLNnKnbUGirJSnuvSlF67da6nwM698e61cMvjEmhiLcgMFXA
5iIiwSoLjHWEGeMYuPwjUv5NZg5Mcl70w82K+E1Dc8lStK4PHkj/aYoSGy3HfBhmzwV4smgzYi2V
QU9cgiJVDI8WEvRMvHo2Wk1FTxpU9FMMKbz/B56CeNLgx1hqlix4bIPxXClwhyzvPE0Kj/eQhist
PbX/z1hqlQRaEFIxsVVrJSO3u2G1rDfP/aeCpYankpDD6SRlFVBcycaMQF5cwcsFKY5BP+q5Cfam
yPDtvUtHQs6t+MPtismer6N9socFM2wPMIXPQ//8+9OpNp9zeapbCkTmCPakRBRXRNwDYx7sG1gx
RhjHAz2DrL4YtSJpt+7Ut3LoV1VzX3f7x3evh4SOw3/NEkj04AAW90+TZKUP4BiBoc6tYp1RIXTE
UUQrc4Sby4tqPvgZX3b2xJwZUM5r2agoW/pOAc/c+2lAVLnh+QAvd0rmaoqeOQGRyrwEgY5qhody
whf8QQTVWcGGofE2wLLGXGcETOPJmjuxaXAnluVlP2wefn1+/FYdnsSiAZodpqUwXus9cBNgz9OQ
IwmWJCNuKo8/jn2m9Pdwd0H10KD6frmxt5v+t69PFWIw2I/iAAdRMg+ciIQICdZStJJt6sBDsZ3P
RgYuvTDkJinvFzPNORjvVfQztjZb8OJyTRUTHJHECs1SlxJ6hejjDFSsQEwHZjHvgM1ynNPEAjU8
/p/t+vHeglTWIJVPiuDjE+KnNqu6VAZTwBH0llCFGjA2DbzvzhPwp0SK1Ps/C45lSWXN4rprvVxc
hZT7x03JXOGOHs+BAjveaOe7yDjGQiSoB2s9/MGpgLeE6cMr6gHGPGcbwK2KTtPwmZTZmvvhYO0/
fnl6xhL5U5ypNB+CUZYFo7GjFMH2BQggh+WR1CcPli5xnCx8j9VINR3bbYuO3aohdd4kNJ0rwkp5
UZHqMXkds+3A+0eMYzxpAs/tI1QpY1jOJF/GsVlPUNG5HdbOieo1XaihH4dnbCDcPPTDHDfmKOaI
jsFEDhuu9HEgZiZsMYReC4Jy70xgN8W7GtOciYuvH7yrOWAttpbdDqeTL6f6NHQxEgPdFVWXs8N6
IjBrfaaqszly8Ke9ILepoNPo187dXNDeN2i35hgFg0X3+PnbO3s6NAJ9Z/DHwFAxHbXY3Q7qHrQ/
yGziGbhqYPr6vIiw18PUFGxIg4LNdh1j/7h52BVbZOXmSKaVYnhYIDaHcqz7dmAQYkCRwM6KLCVz
Y0XOYZKz8fXD/YqFoV97/aqcpFSxgHhnu+G1lHW99CUrNAZRxkKtZBRVmYDqIy4g+goa6iYAEyqp
GKkLtzmbmKGLx2nOZ3tWj93V1LdYWnWSjxZj8ZrwF36aA3gI/o1MgZ8sMvcdUcyjhYUCGZgKiAUo
IiFRXEfBKWNfcNjwdk29aQjm++0ymBX342nkz79/nKU6CqKtPKQ5CMOjpRgiNGFLDALHUMRGknhO
SqIalP7buRtres58utVzNffbFve7xgFZWJOx2T80QwcZCz002DU04LmAPoK/jRZO0EmDKeYFOCQ3
7qlpmrO7anpizghMvtYXcHGJ/fBy2LLHqBoWTx962Z0yHr5a57VB35dI8KYcao5UTkmw2V9EWqhG
XpA2NEjDE2K2dTtitbLYGA9GU8xrkO0UNkJGUHURRGewWiiB74fYfjTYt8//nqg515rYWk+aNNaT
JsPUQfDThx/XYQcVbFIBT3JlGSGXkupc8gZevXBcUuKpdm8ZdpgRURHP1wDQcNHSo230aYy+dZuX
hykqKmTB6ijth9bQmARBKBnQylxl3flkwd0NxqH5pkJcFKKuR6wIapwUiReXJR7/eurfHb4GeFyb
X4cv5ZDukxkUsezYqdiliDoPE5ReRtslzh33oEeol1cQ2xajnwtyLB5bcLNrcMOmPrLtH+VIpFOa
tcAlJhCp0nSBYEG+wZ4G2A4d1RjUCcFzsQjzVqNU86tGIlUrO8Wb/zjFuhVmj8YgC0/gHLPcCYOn
LjCjwdwieNCkSUREQbQLNQF/tILdWjVMFw3W04QN9NQ3jquSIlKYM3WgWLAfAdSJsYnh0auasQzO
r2lb2dNwNRF9Yz3pVSr50OYxndM7X0ohR2uMEph7xYJmCkuJYJIKjH4rHIp7eq3Qqxr8bM1X9VTF
xqbhw+hNTxZsxP3Lb+55u399nno79ZiGKqFOaQmD9ynxtCbOpARXHAyqHFOUXkpOrnR4L0Y/p32r
hyouti2NtZWt+q1SGo1fwZTegrGAC2wLJhxYrsEjAl9WHkzamMBRFFbAplHCXodmKiOfN5fK7Zpq
2djEPVcN2KDS+N0uJ9ckuCiwBSQbj1XR4NUKRvBIsUTB/AuMk9uA4q7AxFW0932L9lXjPKw99xXB
AccCRzWiYSjLPE25QyAjWO0o1hOIBea90yDfQRffFDA7DH521ePNiuhh3d6KFyfD5v2HZRdHTNnQ
gJgtMqM1BnLLRsm7zJT1Gta8uhLFv72LY5p8QXLfIrlvOgRfH/avL2MA+eeHMYxfR4+NlwzedmZl
nzpc5cyATgXdpVnURLLr0WMc+ULoGG8vOGislIGfjkXBvfHDAkX3cGalVASoyr7TxMJKIRyWNVg4
wICwOXgdQRG/3ZmVNRVzJgzfrKW9EZy1EL7qgyvHHgE8uHIEl6ZO+UwFVl3iKQgMfoGpg/2ujHkb
MKuWbj6s4/rxlavH7moOeIutFQD+8kyIsbYSgfNGLTDqAeUdyBtLOhBHwJoEM9vojOALsNkVzZnc
dqxvc7obT6tYetRGiG2DxZWeRuDhr7BVf3jcDZ8PrXZTrMgEapwACxRPVeHB4ycLpNPoj4DdoImj
t/C1nOM8BPL8qZqb+8YH07QFqX+o1afHVB5XCn6VQh6tGfUO1TQleDYPA/+Mg1wIErwgiSXmzl9V
GRfqo6bbdzWZ6/CysfdL361y3cdA/LGUl6sSJRh/lMyLdznYkptWuOBi5yl4c0ZHAypdRSXI24UJ
TrRcShqsFqC9byzADekXUWIwa/rh1BQ/VXwmyykstv/p7eiaE8eR7/wKv2zVTNWSsmR9pmoeZNnO
sgnD3ECyt/tCEexkqCGQCmT35t9ftwzG3+FuU8tDArYlteRWq78bzp0YnTNCEgxNEiRDAzwJF0mC
J1GfLF3qd1CFIG0Bi6gjWf7+n1I6jEYCCpDuNTF6qBKsna6jIFcvMRr6GOMXW9IeiXXqtQLMvWiq
cuFiXXWy3j6uNrvCplhsUB3ShCcac5y5ynqwPKHUahjRUAgZAnKcV8PE9f8mHpSh6DC0lJ6ozlPr
lnnqQmz7ugA+a3PCgwMXksScKD+iaLhwelYgrAnQWZsEnIYuGUjwTlxIFYIa8E1WRC0z0ZIR9XXl
8kAdqI7LrUxQsyoAb31kVYmVIH0JO+QJl0yCkB9Sc+6xdzvqJju3Ffc61eavplJaF2/Gr+v9ar99
XX5rWJExMogdMxMeatRSnhiKpcHRUo0FtyhI0gnHdK6EMt9Ewpxn8e0etmL6rT9WmWKqWo6ENCti
Ks1dkityC5evwx6GHRuFwIMw7aPcAFyWpgoTYZI4ELGIeRT9zVw8FcyqwlGdQot/vEof6ikCD3W1
dj82+29ZxWyEVbUOLyn/gocciYyPXvI8RgsPBZkOExIMuY5Ciu5piXj/Cgc5PzJtQthkWoqHykuh
aQu/r2mD3y9ZhHOLr2M0sd3hZ5Cr0RRThHIkzwnW6OZUwOHIuMu9gaVgbST/kYQi+b3aTNOWmZ5K
nFzd3NYLJEbScI2iSxy4WkCYQBmTEVJFfCJCrW34XpVtb5toqmmzOLPWgS/TtF6Pcp1hapzyERUm
Mo5CdLHnFElG4rhJNowx+X9AQMwx+uzgdZd3pzt2HW8PqjCqFsBl2hn2MJo4LzB64R8YLqlRjeaq
uHFfuwKVGuv+BCREQg7UHDaYkQZQSr6R68713RUxUHPqAiCzFsgXJ+bpYCkgLVYIoyLfYnAXDZFt
Jy4qD/OSh75iMgAeUdRyotR6q0DCSJON0yxQzWKk6+zui0lOpAl1qM64dWCeYIEEiK4aFfMgJkUx
JkYxwLoyHVrMz+Sf5xx6HKoHE+BuZRJtjoD6Ht1bG3Hi5s7+EiFdzYN9sR7RRZ6HgRmThMSipwLW
afRBwjMWgwd9LlyBV5/Zsz1CcZQeEyPers5g2fIa7pfLum0qW65QT1FOMhXQkBhlxTCyTsnHgEtU
FhAZtmTIpA1iEfZapcp91oBqIWX3jQQnRcahUqGBwFpJkKRp9AEnMRkqgzpqCzI0SeJABfJMVVh3
sqGWVEMAXZNr0EtO+lKWT6Z9hVeotLDFQIqUCnP7qQgwWgGtiywPhVRw9kTi/YSxEywdsQvTNpsa
zFC0TLtRkq7t6DezKRyyEhUegWbOa05LqWM8kHyJrrHWWPTxtcNEqNCGhBqQP/65ipZwozrXZuk6
vFjQTnRuWsHZPj9VIhaObhIsoAjomHBUuimg9VjicyhDGWBa8AQEqg5f2FqHFXDSZmFCuMgKBzo4
mKvHvfQjToCiDH2GjhkMS+YlhIDkm1jKteJUvVsh+zZ4WdAGb6OQHIpWdvG8f0UdRR57lCf5NRaW
0YfzESu5DAND0cWIyWGsEhMlzPJAqveIPCpD0FOQ/PBEbY4t3OYxQ0I5kLBgA7cvSE35wffPfXEJ
cAkwOJQNE4V1oFxeT1/ELipJcDwX2FkCeGWgLh6h9Eh1MrzthYk2c0qpatGJFsecWaNBVjAcDonA
txx4HJgEMAuoaNKYmedNAvZGvaLKI1XoNWuBXj+UduvTdmMrDuxAy2Thwq5RDqWoI2IhQ2siG2L5
CHRrUsQQhXPo2ra1nquAtVhbdbq8P7ohoC/+6s/sFF4VBGjwdY6vFva8oZguCJ0RjMCQcOB5eODq
a4dS1h0ua52VAVnQlkwVC2C/G7pPnE5udSoHFbFQCRnAARsIrEGcxHSoosAH3kUayyOWqPDMeN1j
/33JDOq2pwUjzfeLF4/kL9tkL48/KlpAUhRT9w3TxKLihGFgfxJxjJrDKBeDMfZUNLJtNLqrAtMi
ey0Y0zWd5NNivd4WtnQhj+BwyWCfh1iwjCBlhu2iUDHJuKAEGG0pZK9/T7nfwQAN066w+Xibrh6O
hpPp69MTvIBLgNvC4zvvaZFm3v0PDzZO9uI9v2wxCzawIvvFy2PmsuPtv612xxuXbr77xe77/GH7
Mn9epZdens8rL6U8X8LffXbp+eWLu2w/3+2L69WB3+re/3vdw4/SrGAF3HgYl7TaZG3jwSaS/+OY
g7uxh3Wuy+uLRQ4nm/UPDzVLeGf74BWn46U32+4X608BIRdq7L1ku1Wabfaf/OsP/k8fvd1fGHSW
zrev+zmA9bpxLxYGSw8tsB7mTx8Hv72s9ov7dQYd4OBFtyAQXXl/wc19tjn22TPG8VJ5HOziMIrn
5t3/uRt9nd2aG/j2Nb4aTT57g8P/2e9f4u5m09Ef7q6d3H6eeR82281wuV2ss90ySz96g0+nT0cH
xd3jl4FZ7ld/Yib5GWxSRN+WD4hS6rr44Q3slbdyZp2+DxV+rc3Opa3Km+5a2xDGijYM2qDstYHn
HUK0f7jQ4tgGuIFBrn09wOdqIbfBxkUFtnIbrLbQCltpPoE3iA45NYHkb2DbvzoYa7NiILSOS+Pk
trDRpB83AlqG7dep9+to5j0iJUVMg/HSGnyElsdhXW0+5AlrEVM8T2lRge34OT7jwRZdpClGHXgw
UfRaL6H7x8G1y93tGbziTTbLDlxQ5SUbm5ubie2dOyEcN/jxLRVtHl8XL6n33IVzpSWT0CZ7wtSd
s8WjRxntHKqyzF9ykucBKjzv4B1tHrZvboPpv25W+yyHagkEsh1taLXNzNhr7+rWfI06F4GLC1Ks
AaD0dL9Yfn+DoBB5Qctt7sZzt3Jm1kNOPHZCaVjr37J71LeN3WvuGkedxoG1HcznkZmZftgoKdpQ
6mOb0dhcxf2NeHXd5vOb0efrOAK07n6h+kKMix/YZhb/e9a/bIoWa02pa3P7eWQnUS90nFdw58md
DJ2EI8drcREUsMFaH2jhU46qHY3Kbcj/R95nk5k7ZvpX4UJe5d8E4o5r87P3BFRtVyEIOSFw+1r4
F3xcajP4L1BLAwQUAAIACADIji5KWwRYDqIFAABNEAAACgAcAGh0dHBkLmNvbmZVVAkAA0fWelht
2XpYdXgLAAEE9QEAAAQUAAAArVdtb9s2EP6uX0G4MLAVk5y4cecVQQDXcZYsSZ1ZTgMsSQ1aoiTW
EqmRVGJ76377jpTlF8lRA2wOEInH57k7HY/Ho0vEExEjzhVqtDIpGpZ1nSkyRwGNyYeWStLWHZle
UmXdUP8MZADbCFuRUqnvpNRvWK7HBfnIsXgRJjViqhFgZUwTwjOF3h0cWJeEpL2YPhE0ZNY1nq/H
I/JnRqSS6HAbVVAPO+AsZW6KBXHNdwBQ83ckHctVWKgdwErvHRczI+scaGmfM0Y8RTmTN0T0Ixr7
2jD8LOuKY/+a+xl8Gc4Up8wn80mSC2I6JXPitXCKvYi0WyCerEGO5NvkjNG5X0c0gBIJex6RcuLx
JMWq1uo2sKwkUxGb6CX4jt8r1B768lX05cv0iEv1fbpGleiUeXHm15peQUrEmIfgDgtoWMfdoEr0
iGAfMqSOu4KUiFLGdSSYLhESSOo6hp4vx1TSWs/0fInihbSOAdMlAiMhVxTrTVFH3IJpBW+2ly7B
IUlwWrt2K0wl781mrM94AykTY4rraRpQIgnyLKiqXYQVpERMo7RTsFa/MhnGGqWJVl6JPuGEoMP2
z84B/B1a1vEpFVB8uFig1omldQxT82noQpcRItEZj2P+7C6SK8pmEl1nsaKfKXmWaACm+r9eANJs
AWnoPY0egiVBfaJHuVIByQrxgbmffMIWGygKBE/0jHXcWvtyYlk9U1N0TTcuO5HKqwy4rIUS/YMa
Xx6cH+7Po8f7sXr8+/7Uf7x35eNE//uxcfKy3VN42ZjVEhdSSAYL4+5xy+gHF24l6WPGGfVwbJyA
Y+IcigSD9yvOZ1kq0TAIdJUOr8gTidEzFsyyBkJwAbLdw4hoqd7yjpqrhiGdcZFgOAGbEWrGqJmh
pkIPjaZ4aKDmiUTNqR79NSIBEUR8oyDWY3BL2L2QMKVFDQRld0oZ8V+nsXlqGAlnO/iNFWSfoOZt
A/LSCHZRxjbObTeQeSkyy6UhwyoTJkzW8UVQVJh13nsnENxCflLGmErj5cvW8/0rzMIMDCAfI8ef
VcQsRg6LK2LCkENYVaxATCriQCAnEFWTkG9+FQ0L7JCqyUhn5xrdj7CQYO7CHdrdbucXu4scKnn+
WuFS8AuanLL4K3zzV7xPZfug3bZ/u4FpKiu0GXzOTLxIuxwZV+xZ9YsZhI1Vw8Y4iHlFnEIgUv7i
F7dzM2k1VCl8bqr2iO2p0DPwqEzGaomcOKvIPYiRh6uLJGGRqqGRT8iRT1UlgPZAv1dliAw5omp2
GdnjO+TAQz2XI/CRhp2iFCOnGDlTeClD7y4+nQ7vXPuw3TkE86l5KYP6N93379f6vBRGLwZdmzJh
3/hcYC6HF117VKiZcdq1K0ly23dh3QpM5sn2PsTRNuKoghifQbavESroWgayu8+3z+zVdte/IsA3
gnI47BZ6J8PWh20OmmGf+mb/wX6BvQF5DpkJWQj5lOcOLJbOE8gJWH9Y69Xa7JSblbfjRQondZrG
UNa1E625DY06clS4XGMGzOM+ZSGa27qpFXDuIOePPbPhkqbICZe79HPM/BjOHehrbOkJqtMe3iHD
41034MajbykJ7CepH2UF0lRWO9Xx9QtMFcR8G0ubStOa1dVY0wxsauyeUJgrkw04cDZKXwecYvUa
oC15JjxiFMt9meFTsZ0R627AdCIov9aYYOWvhX+VRYaJSRDj0HTh5tiViLPdKRlxoSY8JWyiYAjT
NWEr+q+Vc6N8OGAhHLv6tNsSwmXOR3CaDn6/HbjjyfVgfD48/Ya+jEe9/mAbONLKnbfIRvdnjyXj
n6lQGY51r4HefugeHb3LDe9t4cyEe7Xx5ri1xQd1b6w3qAdLQmyZEo8G1DO3bLmQiiQoFVzlt08H
kKveqiGk8P6PFmqrvdQNm/P2wXlwdP/kB3AJ/i8WtnrFfwFQSwMECgAAAAAArYsuSgAAAAAAAAAA
AAAAAAkAHABpbXBvcnRlZC9VVAkAA3bQelhx2XpYdXgLAAEE9QEAAAQUAAAAUEsDBAoAAAAAAKKL
LkoAAAAAAAAAAAAAAAAPABwAaW1wb3J0ZWQvYmxpbmsvVVQJAANf0HpYcdl6WHV4CwABBPUBAAAE
FAAAAFBLAwQKAAAAAACiiy5KAAAAAAAAAAAAAAAAFAAcAGltcG9ydGVkL2JsaW5rL2Zhc3QvVVQJ
AANf0HpYcdl6WHV4CwABBPUBAAAEFAAAAFBLAwQKAAAAAACiiy5KAAAAAAAAAAAAAAAAGgAcAGlt
cG9ydGVkL2JsaW5rL2Zhc3QvZm9ybXMvVVQJAANf0HpYcdl6WHV4CwABBPUBAAAEFAAAAFBLAwQK
AAAAAACiiy5KAAAAAAAAAAAAAAAAIQAcAGltcG9ydGVkL2JsaW5rL2Zhc3QvZm9ybXMvYnV0dG9u
L1VUCQADX9B6WHHZelh1eAsAAQT1AQAABBQAAABQSwMEFAACAAgAoosuSsch79s3AAAAQAAAAEcA
HABpbXBvcnRlZC9ibGluay9mYXN0L2Zvcm1zL2J1dHRvbi9idXR0b24tcmVzZXQtZm9jdXMtYnkt
bW91c2Utc3RkZXJyLnR4dFVUCQADX9B6WF/Qelh1eAsAAQT1AQAABBQAAADLzS8tTvXNL0sNyVdI
S8zMSU1RKAGyMvNSFBIVShKL0lNLFMoyU8sVEksULAwM9AzAQAfG4AIAUEsDBAoAAAAAAKKLLkoA
AAAAAAAAAAAAAAAgABwAaW1wb3J0ZWQvYmxpbmsvZmFzdC9mb3Jtcy9yYW5nZS9VVAkAA1/Qelhx
2XpYdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIAKKLLkrHIe/bNwAAAEAAAAA/ABwAaW1wb3J0ZWQv
YmxpbmsvZmFzdC9mb3Jtcy9yYW5nZS9yYW5nZS1mb2N1cy1ieS1tb3VzZS1zdGRlcnIudHh0VVQJ
AANf0HpYX9B6WHV4CwABBPUBAAAEFAAAAMvNLy1O9c0vSw3JV0hLzMxJTVEoAbIy81IUEhVKEovS
U0sUyjJTyxUSSxQsDAz0DMBAB8bgAgBQSwMECgAAAAAAoosuSgAAAAAAAAAAAAAAACEAHABpbXBv
cnRlZC9ibGluay9mYXN0L2Zvcm1zL3N1Ym1pdC9VVAkAA1/Qelhx2XpYdXgLAAEE9QEAAAQUAAAA
UEsDBBQAAgAIAKKLLkrHIe/bNwAAAEAAAABBABwAaW1wb3J0ZWQvYmxpbmsvZmFzdC9mb3Jtcy9z
dWJtaXQvc3VibWl0LWZvY3VzLWJ5LW1vdXNlLXN0ZGVyci50eHRVVAkAA1/Qelhf0HpYdXgLAAEE
9QEAAAQUAAAAy80vLU71zS9LDclXSEvMzElNUSgBsjLzUhQSFUoSi9JTSxTKMlPLFRJLFCwMDPQM
wEAHxuACAFBLAwQKAAAAAACyiy5KAAAAAAAAAAAAAAAADQAcAGltcG9ydGVkL3czYy9VVAkAA3/Q
elhx2XpYdXgLAAEE9QEAAAQUAAAAUEsDBAoAAAAAAK2LLkoAAAAAAAAAAAAAAAAaABwAaW1wb3J0
ZWQvdzNjL1dlYkNyeXB0b0FQSS9VVAkAA3bQelhx2XpYdXgLAAEE9QEAAAQUAAAAUEsDBAoAAAAA
AK+LLkoAAAAAAAAAAAAAAAAmABwAaW1wb3J0ZWQvdzNjL1dlYkNyeXB0b0FQSS9nZW5lcmF0ZUtl
eS9VVAkAA3nQelhx2XpYdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIAK2LLkqPNBpwRAAAAKAJAABH
ABwAaW1wb3J0ZWQvdzNjL1dlYkNyeXB0b0FQSS9nZW5lcmF0ZUtleS90ZXN0X2ZhaWx1cmVzX1JT
QS1PQUVQLXN0ZGVyci50eHRVVAkAA3bQelh20HpYdXgLAAEE9QEAAAQUAAAAc84vzUlRyMsvUUhP
zUstSixJVUhUyE6tVChIzCzSUSguSSwpLVbQNTE2MOFyHlU7qnZU7ajaUbWjakfVjqodVUtztQBQ
SwMEFAACAAgAr4suSlQCybI2AAAAwAIAAFAAHABpbXBvcnRlZC93M2MvV2ViQ3J5cHRvQVBJL2dl
bmVyYXRlS2V5L3Rlc3RfZmFpbHVyZXNfUlNBU1NBLVBLQ1MxLXYxXzUtc3RkZXJyLnR4dFVUCQAD
edB6WHnQelh1eAsAAQT1AQAABBQAAABzzi/NSVHIyy9RSE/NSy1KLElVSFTITq1UKEjMLNJRKC5J
LCktVtA1MTYw4XIeVTuqdpCpBQBQSwMECgAAAAAAsosuSgAAAAAAAAAAAAAAACAAHABpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1VUCQADf9B6WHHZelh1eAsAAQT1AQAABBQAAABQSwME
CgAAAAAAsosuSgAAAAAAAAAAAAAAACYAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZldGNoL1VUCQADf9B6WHHZelh1eAsAAQT1AQAABBQAAABQSwMECgAAAAAAxIsuSgAAAAAAAAAA
AAAAACoAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9VVAkAA5/Q
elhx2XpYdXgLAAEE9QEAAAQUAAAAUEsDBAoAAAAAAMSLLkoAAAAAAAAAAAAAAAAwABwAaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvYmFzaWMvVVQJAAOf0HpYcdl6WHV4
CwABBPUBAAAEFAAAAFBLAwQUAAIACADEiy5KmIyRmJAAAACeAAAARwAcAGltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2Jhc2ljL21vZGUtbm8tY29ycy1zdGRlcnIudHh0
VVQJAAOf0HpYn9B6WHV4CwABBPUBAAAEFAAAAB3HQQuCMBQA4Hu/4h0Lcm1pTL1qESQSregQHZa+
YrjtyRz194u+27fmQiZcJCIDIcuUl1wysUmhI8f0OFpkV3wcTGQtxg+FwfgXq/GNlkaHPt6KQkpR
Cp5LnuV3aNXl1CicJkN+9U9F3mMXf4f9+XwES7qHpzYWe5gP1U7FgNptQ6BQk9PGK9UsISlykS5m
X1BLAwQUAAIACADEiy5KZj5yzpAAAACeAAAATgAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmV0Y2gvYXBpL2Jhc2ljL21vZGUtbm8tY29ycy13b3JrZXItc3RkZXJyLnR4dFVUCQAD
n9B6WJ/Qelh1eAsAAQT1AQAABBQAAAAdx0ELgjAUAOB7v+IdC3JtKU29ahEkEq3oEB2WvmK47ckc
9feLvtu35kImXCQiAyHLlJdcMr7JoCPH9DhaZFd8HExkLcYPhcH4F6vxjZZGhz7eikJKUQqeS57l
d2jV5dQonCZDfvVPRd5jF3+H/fl8BEu6h6c2FnuYD9VOxYDabUOgUJPTxivVLCEpcpEuZl9QSwME
CgAAAAAAtosuSgAAAAAAAAAAAAAAAC8AHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZldGNoL2FwaS9jb3JzL1VUCQADh9B6WHHZelh1eAsAAQT1AQAABBQAAABQSwMEFAACAAgAsosu
SitSSvOuAAAAtAMAAEQAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2Fw
aS9jb3JzL2NvcnMtYmFzaWMtc3RkZXJyLnR4dFVUCQADf9B6WH/Qelh1eAsAAQT1AQAABBQAAADN
0L0KwjAYheHdq8ioYGPSvzRdW0WwFDGKgzjE9lNC26SkQW/f4uwFZHyHAw8nJJQFhAY0RpTlIc+j
BIcJQ40ZsBzHHvAVHgflcA3uY2yn9AuX8IbejANod+OczSNKMsLT5I5qcTlVAqZJGb35RWG0hsbN
jfbn8xH1RrboKVUPLVp2xU44C3LYWmtsaQaptBDVGgU8o9FqEf7RRST2WRf7/F3stS4hmc+6NPVE
9wVQSwMEFAACAAgAsosuSk2yXbuuAAAAtAMAAEsAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtYmFzaWMtd29ya2VyLXN0ZGVyci50eHRVVAkAA3/Q
elh/0HpYdXgLAAEE9QEAAAQUAAAAzc7BCsIgHIDxe0/hsaCZupa661YEjYgsOkQHq38hmzqc1OsX
nXsAj9/hgx8jlGeEZnSOKC+ZLPM55pyhm7dY930H+ATXjYl4C/HtQ2vcE9fwgs73Flw8S8m/EyWC
yEVxQVt13DcKhsF4N/tF5Z2DW/w2Wh8OO9R5fUcPbTq4o3FbrVQMoO0yBB9qb7VxSjVTlElB88mI
/dEJRlLWLUSyugITylLW8TxhHc2LRHQfUEsDBBQAAgAIALOLLkonh/tdnQAAADwBAABLABwAaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLW5vLXByZWZs
aWdodC1zdGRlcnIudHh0VVQJAAOB0HpYgdB6WHV4CwABBPUBAAAEFAAAAM3OuwrCMBhA4d2nyKhg
Y5Kqabq2imApYhQHcYjtr4TmUtKgr29x9gEcv+HAYYTyhNCELhHlORN5yjHJGGq8xarvDeAL3Pc6
4hri24dOuycu4QXG9xZcvArBx4iSjIj16oZqeT5WEoZBe7f4ovDOQRNHo93pdEDGqxY9lDbQomlX
bGUMoOwmBB9Kb5V2UlZzlIiMprMJ+3FHmfiTuw9QSwMEFAACAAgAsosuSlnZEK2dAAAAPAEAAFIA
HABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtbm8t
cHJlZmxpZ2h0LXdvcmtlci1zdGRlcnIudHh0VVQJAAOA0HpYgNB6WHV4CwABBPUBAAAEFAAAAM3O
TQuCMByA8XufYseCXJuWc161CBKJZnSIDkv/xXAvMkd9/aRzH6Dj7/DAExPKIkIjukaU5THPkxSz
JEOtM1gOgwZ8gftBBVxDeDvfK/vEJbxAu8GADVfO2RRRkhGebm6oFudTJWAclbOrLwpnLbRhMto3
zRFpJzv0kEpDh+Z9sRPBgzRb750vnZHKClEtUcQzmixm8a87Tv7k7gNQSwMEFAACAAgAs4suSkEL
JhVDAgAASQwAAEUAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9j
b3JzL2NvcnMtb3JpZ2luLXN0ZGVyci50eHRVVAkAA4LQeliC0HpYdXgLAAEE9QEAAAQUAAAA7ZZR
a9swEMff9yn00rLBzpZkyZICYYQ0bce6pswpexijSLKcmDqWcbR1/fZTUlZoGSwjlKV0WC8ny/c/
//iju/H0vJieTdDHSVGMTiYDNO3red2iRQjdIE0bb3Wz8KswkBJjVK9Q6wPSTeNvXInMLRpZ61Yr
GPs29L6B0foN3OVIXo0fJz92wS7Q6OI9srpdZ2q8Ln9pESoSHB+y0Uqr9dlUd3Xau5X/1kedtOtd
1dTzRUi623fBX7t2WDHtKukUVEpyYIoQ0OvQWZMRTQ03Rhwu9Y8rPXdDfOg3pQ3XkgfZ6IAex3Uv
HHfW0oeb/7taurDw5Wp4MpklT4vl3zF/oEW2ZU6EFaw0FspcMmAVVmA4L6EsJWNYMGW0/QPze+E7
5uQFMX/g8+2ZY52r3CiQxBJg1hiQ0uBIv6KaZrkl6i99/uTMKSYCMAHCEBEDqgaZTBinyPploruu
cclnZz7UITl34cb313U7T47cd9f4buna8EUpET8iWGKV86/ovLj8dFZEudq36SaIsq2zIcbodDa7
uKNc6bqJxb2+Hh8XoXd6Oel73x/5pa7bojh7i0BJkr35bXWcsn2uTuxzdfnesBs/954WbShzrDMQ
hElgQhNQxgqwTmtsjDIcm9162sW0eCEX7NbQBWeScS5B2ixeq9hikFlVAcu0jgMGx4rS3aCfTkZH
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
BAoAAAAAAASMLkoAAAAAAAAAAAAAAAAMABwAbWVkaWEvdHJhY2svVVQJAAMY0XpYcdl6WHV4CwAB
BPUBAAAEFAAAAFBLAwQUAAIACAAEjC5KjekYVEsBAABUAgAAKgAcAG1lZGlhL3RyYWNrL3RyYWNr
LWluLWJhbmQtc3R5bGUtYWN0dWFsLnR4dFVUCQADGNF6WBjRelh1eAsAAQT1AQAABBQAAAB9kV1r
wjAUhu/zK86drWyhfoAgeDG0wtjQMbMxGLuI7aEJxqQ0p1P//dL6MXGwq5D3PCc5ecIEegJSksDT
wSCQA2kMZDV60B5kWRqNOWSuqjAjc+AsfU8XIsqkLY08kKpcXaiYsW4XpgqzDWirSUsT1vu1tDlQ
JUPqSRJ69vq2iLRtctHEPZjAt87RccI9tZH/TL5iln68pFORziC6LXODtiAFkwl0ep0Ylk9X8PXR
3Ehb1LLAFkX7L7vRYdKGy2RJ2ll/pG/H5VuXh/Og45XbaVt04rMOFS7DuG04TtzYieJz3SNuMA+a
RHjISUlwDME76S1CwgcerKNgw+u1QQ7izIRPqHDMGjoZNx6rU88kdPWTO2jchI3YuRbq3UA9nvxC
c1dXLdX/Q41GF2ql9y00uIH6fDi8QKkuFDE2f3h8ZuliBss5iHQlGPsBUEsDBBQAAgAIAASMLkrj
5XqAcAEAAL0CAAAoABwAbWVkaWEvdHJhY2svdHJhY2staW4tYmFuZC1zdHlsZS1kaWZmLnR4dFVU
CQADGNF6WBjRelh1eAsAAQT1AQAABBQAAAC1kk1PwzAMhu/9Fb7R0qXdChMIadJgyyQ0NNBWPq5p
a42ItJkSB7Z/T7ovBBw4IUW2LD1+3zgOYwzSJ61cjTYdCxIpf16kz1hMJe3TjZOqSueoUFhMldho
R4zQEjNonSKb1lhJkZIR5dsuMtmwQjQVs7RRyHC9wpKwSmhNQRzH/+8oSnJCbf2GQ2C9rHMJsY+9
DIbDAOaPs/BdVqiTlVcPoygA/sRneWgR37DyZcBOTyH3llA6Y7BpM0KplTY2YPzlgY9yPoZwiTTS
9cr56Ratc+ixsbStLFdY+8Yo2XbBYAAnZlmEWb/fgUOITiK4n/4lONMVRknhx1wa7Zpq9E2w24H2
7KXiHNcE2zfZXln4QtYI3eTMQqMJ3qWVhcIE8gNjQRi8CuIW716BJWH2TQPflnlxajUHkH/oHdX7
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
WkpfQDGCYPMcbU3eheo47O5W8SD+Qr0xFMIeJN8ZqSEDL4amJkTo1SkiPQ7K0zf7R8RLMZjGiYKw
fYc21WHSkPYqueLvPNZC8ZrhWcyZWwF5AeKeMeXIySLuQblAxyIXaR0/c8wkINZjDZIViNgux5El
JRnUk1HLtmoM9CD5samlW0CEZtXaJRq2eFZDa2U7bIAq2yBWlK4gUuW0Vi+L4Bp6aZ2sWKoRsUL7
riRUj5ORxs26WTplni9CrqrsK3xiVIAtO7b3yPIa0M9H2ThGAw6KIZvww2dJ2VkHy0FVC70HOij6
nuJx2DtVjCxHBcrAWEt0WXQBSrYMCkKGzvS2WqqGrCy5hJW3sVg4BD6Q/IBrtG4KPhr6/l7W7Cv0
MihwECbv4p4YSIoJQ8SxZkm2aXEXUbIlq4vofWvMGxWEvFVTTZiiTKWiyY28cnT9khHzb6zNF0Lt
iwTf+DBXhyjgIck2pxllsXUQbLjDF7hnpBQULvZsxxrSRxHFDup2Mp1bYfdp+ssX/4vt/vK2uT59
/P4TstKGlFoMmWDkvx/R73X6vSn/nv0WQ0YTDbEfRV/4vUC/79PfT4f5NNn16y7sXoFfz8BF/uv9
cX8Nv9XgtyqdnB9OKQsnB//2UDq59LfhV4/5vgunxgI2hrTYB7cu0N4l2XvCxOmpG/TXTemv01/D
vadzJ3AN/TW6NaHzW1M3v0bnPlfJDZlBSXeGzkyJkqzldzagM1f5qY2rv92jv118pbPl8b//dnPB
396NpXPP94/2IAWWd3Tnc0QyZI5M/rfhvRW1hP/dh835ZVf/etGVbj7fAZS74otNX4/ei1rdfOHr
BTo9WX/t8O/L9O0zLdgbnMNkcQ7K/+TpdN75fzietrv98bI7Xx93z9N/ySbmbOI4Kp0f6un1cj3v
jy+uQf/+untlL8Ymg+zXIKjv17dpG8+n/WW7O+8/7bbP59Mre0g2Fa/5dRKPZBfs+WV33W8312lX
j+/X3fGCVlI9WSkdtzuY8+719Gn39HF/2LLIpk2jUpcVhmUFerRsfsEfrV2WIL1jtvHFTxK/d0DZ
7vh0crxudMJzK/vlhHv+hFmStE3zO1ZfVTxhgW48giWrdSap2b++hcU2zoU6714m+Tl/ZUXbJsBm
9W3+pC+7/3nfHNw/sg/bpuTy7W6eTsfn/cv72W/maTNd3PXNuYi7645vKmgTc2B5FRact0XnPZbW
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
b2Z/3ByduEw62bHYPm6OL0z3tbCYIBszvidQaBXrpxJNv+JlxRBdk8bqEN1Z1ZkqW4BMxyK3zbXy
DrsnW3BouJjH4yz6Mg5/Q7sgx2mW46QXE0cRtFwN0d4i+BjRU5rUh//FrFMIOysWfJY+0kmKcS9B
eFqK7yYgDdnh5/122qC75OI9hd/r+ffelGaB4PbhdkNgJbmsZP2oUc2vdf5y/gpWEstKvbcDXTgp
70dNqu/1kqZ9elmYq2Jn0Zr/d9NfdX+kfCf+T+l+Ob4h1Xx/ckn063n/ZZKyzXnyQEFHv7BM+naR
NNO8jSmU3U/vzDP25jaWaE9DOkjlx6EEb253fnL2OC0bFRS/kkorJcD2yQkEOaR5d75F4NENHJwu
apnoiVa3y+quVlaMqvzZdy/sXPi4sKluezpUtMc+LUVnSxAJSXMz5rfGrma6RVrcwlIlhTIPxK1K
iqDvjbiUTjiSgKPT6ejpiGRK09Gs3IO5Pya/5KJEfPeMtWH1jdr8P2V/htVJzlSE5cg4u+l/PP3f
2f1uWCQppuA4jatdzY/+no0tEutbI3bM4fshLkCbB8lKQmqXcrxF2Xke0P3qSC0np2JJEQmFlzjG
N9nab46Ph/fzw277svvJOT3b97fD/mn668U4yYndAnw66NwheCYCuM+772LDHHc5P02mLCSmPBb3
djqEpxu3wS4vZizFBdAudyyjRnje/cXXl8aG8A+v03aZ5rF+nbkPhM5qamjL37iXSbXsX/dXN0cI
rJY+2ud9DMm83fmBczm6F01/VfP5/eCxqsv743n3Mi11CUrv0+4bV4t2/dWtzw+Q8nczI5E6zFCM
Eyrnla9+yHjSng9RHXrhd3Ht/og79vu/odJROARYxOjqefe3KFF/mSSK/3mXtujrVOYtfns6fjod
Pu1+CjbzuHvZuDvxKYXd4Z/HfWzO+p/8yQ4DER0/hUOXF/eOzXb/aX85nYEkJgnyMLOMNvRx//Lw
cecTTeGywV2TJXofNXWFw4r72X3ab/DRz4C571jvZrJn1zu356XiMjmo/HJzyZaTRG9IRO0yPJz+
X+DIBDkyjwPaiMf7R+uAoOmJhEmk0zM8vV/53c31M05Qwg6Dpn1//NU/j4fr59PD7vnZD5flV0nf
6DenSy8iND4PrwEIflrKRfZzu7vdt3PhLZBMRU7aP5r8ZaYgz2/o8jApuNp2RP7Wba5FgmT+02eU
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
+hh8yHRLmQHCNiLA/w9uHMrHL+MZprH8z+nln+cb/IeVIL/8cfo+HZczCnso6lkD3ulXAIVQ7k99
QhtymrSEwX/bRunM1N373rYq7o9jotAPJU1Z2AaqsNHw+j4elh92zPSfxtSIFQOhIwiUyEC8dpZ1
hYotA6LyILC3oKrduC6zu/3HOzxJBGm1+osErfDQaipmi5Bn1qr9ckkMFbSwajoctXWYw02XC0yx
ma5XLZtFGitCCOri2hRCbt3zSQLWpDGC53zVQmI8zr8K+3QMnJJdfGG9iafYtGvbbWz6X/8LUEsD
BAoAAAAAAAWMLkoAAAAAAAAAAAAAAAAEABwAc3ZnL1VUCQADGdF6WHHZelh1eAsAAQT1AQAABBQA
AABQSwMECgAAAAAABYwuSgAAAAAAAAAAAAAAAA0AHABzdmcvYXMtaW1hZ2UvVVQJAAMZ0XpYcdl6
WHV4CwABBPUBAAAEFAAAAFBLAwQUAAIACAAFjC5K2wjTQjsAAAA/AAAAPwAcAHN2Zy9hcy1pbWFn
ZS9zdmctaW1hZ2Utd2l0aC1kYXRhLXVyaS1pbWFnZXMtZGlzYWJsZWQtc3RkZXJyLnR4dFVUCQAD
GdF6WBnRelh1eAsAAQT1AQAABBQAAABzLClJzS0oUSjJV0jNKyxNLU1VSFQozy/KVsgESiiUZ2Tm
pCpAxDOLFZJSM/PSFQqK8pNTi4tTU/S4AFBLAwQKAAAAAAATjC5KAAAAAAAAAAAAAAAACwAcAHdl
YmFyY2hpdmUvVVQJAAM10XpYcdl6WHV4CwABBPUBAAAEFAAAAFBLAwQUAAIACAATjC5K2wjTQjsA
AAA/AAAAOgAcAHdlYmFyY2hpdmUvdGVzdC1saW5rLXJlbC1zdWJyZXNvdXJjZS1iZWZvcmVsb2Fk
LXN0ZGVyci50eHRVVAkAAzXRelg10XpYdXgLAAEE9QEAAAQUAAAAcywpSc0tKFEoyVdIzSssTS1N
VUhUKM8vylbIBEoolGdk5qQqQMQzixWSUjPz0hUKivKTU4uLU1P0uABQSwMEFAACAAgAuowuSnOr
OC49VAIADwE/ABkAHAB3cHR3a19wcm9jZXNzX2xvZy5vdXQudHh0VVQJAANw0npY0M96WHV4CwAB
BPUBAAAEFAAAAOy9a5PbOJYg+r1/RX64VdvdU7AJEnw5ru+Ey66art16Rdm9vRF37jpAEMxkWymp
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
AAAAUEsBAh4DCgACAAAAVYsuSphceX8VAAAAFQAAAB0AGAAAAAAAAQAAAKSB2SMAAF93cHRfY2Vy
dHMvaW5kZXgudHh0LmF0dHIub2xkVVQFAAPRz3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgACAAAA
VYsuSn1RAkA3AAAANwAAABgAGAAAAAAAAQAAAKSBRSQAAF93cHRfY2VydHMvaW5kZXgudHh0Lm9s
ZFVUBQAD0c96WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAFWLLkphwWfvCAUAAIsGAAAYABgA
AAAAAAEAAACkgc4kAABfd3B0X2NlcnRzL2xvY2FsaG9zdC5rZXlVVAUAA9HPelh1eAsAAQT1AQAA
BBQAAABQSwECHgMUAAIACABViy5Ky9xABvEJAAA7EgAAGAAYAAAAAAABAAAApIEoKgAAX3dwdF9j
ZXJ0cy9sb2NhbGhvc3QucGVtVVQFAAPRz3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgACAAAAVYsu
SgfLt04HAAAABwAAABEAGAAAAAAAAQAAAKSBazQAAF93cHRfY2VydHMvc2VyaWFsVVQFAAPRz3pY
dXgLAAEE9QEAAAQUAAAAUEsBAh4DCgACAAAAVYsuSsjXL8kHAAAABwAAABUAGAAAAAAAAQAAAKSB
vTQAAF93cHRfY2VydHMvc2VyaWFsLm9sZFVUBQAD0c96WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQA
AgAIANqQLkosuJu51IwBAL5nDwAOABgAAAAAAAEAAACkgRM1AABhY2Nlc3NfbG9nLnR4dFVUBQAD
PNl6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAPWQLkrfJwIdy0EAALQPAQA6ABgAAAAAAAEA
AACkgS/CAQBjb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQuRGV2ZWxvcG1lbnQtMTY0Ny1jcmFz
aC1sb2cudHh0VVQFAANu2XpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA9ZAuSkexk2+JRAAA
dDABADoAGAAAAAAAAQAAAKSBbgQCAGNvbS5hcHBsZS5XZWJLaXQuV2ViQ29udGVudC5EZXZlbG9w
bWVudC0xNjUyLWNyYXNoLWxvZy50eHRVVAUAA27Zelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIA
CAD1kC5KrFso/g9EAABeFQEAOgAYAAAAAAABAAAApIFrSQIAY29tLmFwcGxlLldlYktpdC5XZWJD
b250ZW50LkRldmVsb3BtZW50LTE2NjEtY3Jhc2gtbG9nLnR4dFVUBQADbtl6WHV4CwABBPUBAAAE
FAAAAFBLAQIeAxQAAgAIAPWQLkqKUkTSQUAAAB8IAQA6ABgAAAAAAAEAAACkge6NAgBjb20uYXBw
bGUuV2ViS2l0LldlYkNvbnRlbnQuRGV2ZWxvcG1lbnQtMTY2Ny1jcmFzaC1sb2cudHh0VVQFAANu
2XpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA9ZAuSsV1pyjcQQAAvQ8BADoAGAAAAAAAAQAA
AKSBo84CAGNvbS5hcHBsZS5XZWJLaXQuV2ViQ29udGVudC5EZXZlbG9wbWVudC0xNjc1LWNyYXNo
LWxvZy50eHRVVAUAA27Zelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAD1kC5KaAj8+rA+AABO
2QAAOgAYAAAAAAABAAAApIHzEAMAY29tLmFwcGxlLldlYktpdC5XZWJDb250ZW50LkRldmVsb3Bt
ZW50LTE2ODgtY3Jhc2gtbG9nLnR4dFVUBQADbtl6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAI
APWQLkoHkayA00EAAGgPAQA6ABgAAAAAAAEAAACkgRdQAwBjb20uYXBwbGUuV2ViS2l0LldlYkNv
bnRlbnQuRGV2ZWxvcG1lbnQtMTY5Ni1jcmFzaC1sb2cudHh0VVQFAANu2XpYdXgLAAEE9QEAAAQU
AAAAUEsBAh4DFAACAAgA9ZAuSkd2+Rj4QQAAdwwBADoAGAAAAAAAAQAAAKSBXpIDAGNvbS5hcHBs
ZS5XZWJLaXQuV2ViQ29udGVudC5EZXZlbG9wbWVudC0xNzAzLWNyYXNoLWxvZy50eHRVVAUAA27Z
elh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAD1kC5K1MxHDY9BAADuDQEAOgAYAAAAAAABAAAA
pIHK1AMAY29tLmFwcGxlLldlYktpdC5XZWJDb250ZW50LkRldmVsb3BtZW50LTE3MDktY3Jhc2gt
bG9nLnR4dFVUBQADbtl6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAPWQLkr8MT65sEEAAEsP
AQA6ABgAAAAAAAEAAACkgc0WBABjb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQuRGV2ZWxvcG1l
bnQtMTcxNS1jcmFzaC1sb2cudHh0VVQFAANu2XpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA
9ZAuSgU3Z8oYRgAACB8BADoAGAAAAAAAAQAAAKSB8VgEAGNvbS5hcHBsZS5XZWJLaXQuV2ViQ29u
dGVudC5EZXZlbG9wbWVudC0xNzIwLWNyYXNoLWxvZy50eHRVVAUAA27Zelh1eAsAAQT1AQAABBQA
AABQSwECHgMUAAIACAD1kC5KCMdEuWxAAAD1CAEAOgAYAAAAAAABAAAApIF9nwQAY29tLmFwcGxl
LldlYktpdC5XZWJDb250ZW50LkRldmVsb3BtZW50LTE3MjctY3Jhc2gtbG9nLnR4dFVUBQADbtl6
WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAPWQLkoq6eL07UEAAHoPAQA6ABgAAAAAAAEAAACk
gV3gBABjb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQuRGV2ZWxvcG1lbnQtMTczMy1jcmFzaC1s
b2cudHh0VVQFAANu2XpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA9ZAuSuApUBGwQwAANRUB
ADoAGAAAAAAAAQAAAKSBviIFAGNvbS5hcHBsZS5XZWJLaXQuV2ViQ29udGVudC5EZXZlbG9wbWVu
dC0xNzQxLWNyYXNoLWxvZy50eHRVVAUAA27Zelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAD1
kC5Kydl53blBAAAODwEAOgAYAAAAAAABAAAApIHiZgUAY29tLmFwcGxlLldlYktpdC5XZWJDb250
ZW50LkRldmVsb3BtZW50LTE3NDYtY3Jhc2gtbG9nLnR4dFVUBQADbtl6WHV4CwABBPUBAAAEFAAA
AFBLAQIeAxQAAgAIAPWQLkpCTtnkKkMAABURAQA6ABgAAAAAAAEAAACkgQ+pBQBjb20uYXBwbGUu
V2ViS2l0LldlYkNvbnRlbnQuRGV2ZWxvcG1lbnQtMTc1My1jcmFzaC1sb2cudHh0VVQFAANu2XpY
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA9ZAuSs5e8xnHQQAAZg8BADoAGAAAAAAAAQAAAKSB
rewFAGNvbS5hcHBsZS5XZWJLaXQuV2ViQ29udGVudC5EZXZlbG9wbWVudC0xNzU5LWNyYXNoLWxv
Zy50eHRVVAUAA27Zelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAD1kC5K3pMchYxBAAAwDgEA
OgAYAAAAAAABAAAApIHoLgYAY29tLmFwcGxlLldlYktpdC5XZWJDb250ZW50LkRldmVsb3BtZW50
LTE3NjYtY3Jhc2gtbG9nLnR4dFVUBQADbtl6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAPWQ
LkrhlZFFAkIAACIPAQA6ABgAAAAAAAEAAACkgehwBgBjb20uYXBwbGUuV2ViS2l0LldlYkNvbnRl
bnQuRGV2ZWxvcG1lbnQtMTc3MS1jcmFzaC1sb2cudHh0VVQFAANu2XpYdXgLAAEE9QEAAAQUAAAA
UEsBAh4DFAACAAgA9ZAuSqhl9KVYRgAAyCQBADoAGAAAAAAAAQAAAKSBXrMGAGNvbS5hcHBsZS5X
ZWJLaXQuV2ViQ29udGVudC5EZXZlbG9wbWVudC0xNzc3LWNyYXNoLWxvZy50eHRVVAUAA27Zelh1
eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAABbiy5KAAAAAAAAAAAAAAAABwAYAAAAAAAAABAA7UEq
+gYAY3J5cHRvL1VUBQAD3s96WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAFqLLkoAAAAAAAAA
AAAAAAAOABgAAAAAAAAAEADtQWv6BgBjcnlwdG8vc3VidGxlL1VUBQAD3M96WHV4CwABBPUBAAAE
FAAAAFBLAQIeAwoAAgAAAFqLLkol4NMILAAAACwAAAA+ABgAAAAAAAEAAACkgbP6BgBjcnlwdG8v
c3VidGxlL3JzYS1nZW5lcmF0ZS1rZXktbWFsZm9ybWVkLXBhcmFtZXRlcnMtc3RkZXJyLnR4dFVU
BQAD3M96WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAFqLLkowO7ixSwAAAGgAAAA8ABgAAAAA
AAEAAACkgVf7BgBjcnlwdG8vc3VidGxlL3JzYS1pbXBvcnQta2V5LW1hbGZvcm1lZC1wYXJhbWV0
ZXJzLXN0ZGVyci50eHRVVAUAA9zPelh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAABbiy5KAAAA
AAAAAAAAAAAADwAYAAAAAAAAABAA7UEY/AYAY3J5cHRvL3dvcmtlcnMvVVQFAAPez3pYdXgLAAEE
9QEAAAQUAAAAUEsBAh4DCgAAAAAAW4suSgAAAAAAAAAAAAAAABYAGAAAAAAAAAAQAO1BYfwGAGNy
eXB0by93b3JrZXJzL3N1YnRsZS9VVAUAA97Pelh1eAsAAQT1AQAABBQAAABQSwECHgMKAAIAAABb
iy5KJeDTCCwAAAAsAAAAMQAYAAAAAAABAAAApIGx/AYAY3J5cHRvL3dvcmtlcnMvc3VidGxlL3Jz
YS1nZW5lcmF0ZS1rZXktc3RkZXJyLnR4dFVUBQAD3s96WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoA
AAAAAGKLLkoAAAAAAAAAAAAAAAANABgAAAAAAAAAEADtQUj9BgBkaXNwbGF5bGlzdHMvVVQFAAPn
z3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAYosuSqNX/ehQAAAAjgAAADIAGAAAAAAAAQAA
AKSBj/0GAGRpc3BsYXlsaXN0cy9leHRlbnQtaW5jbHVkZXMtdHJhbnNmb3Jtcy1zdGRlcnIudHh0
VVQFAAPnz3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAYosuSvKWldVHAAAASQAAACkAGAAA
AAAAAQAAAKSBS/4GAGRpc3BsYXlsaXN0cy9sYXllci1kaXNwYXktbGlzdC1zdGRlcnIudHh0VVQF
AAPnz3pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAkosuSgAAAAAAAAAAAAAAAAgAGAAAAAAA
AAAQAO1B9f4GAGVkaXRpbmcvVVQFAANE0HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAkosu
SgAAAAAAAAAAAAAAABEAGAAAAAAAAAAQAO1BN/8GAGVkaXRpbmcvZGVsZXRpbmcvVVQFAANE0HpY
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAkosuSkZq+ovUAQAAChQAACgAGAAAAAAAAQAAAKSB
gv8GAGVkaXRpbmcvZGVsZXRpbmcvZGVsZXRlLWVtb2ppLXN0ZGVyci50eHRVVAUAA0TQelh1eAsA
AQT1AQAABBQAAABQSwECHgMKAAAAAABkiy5KAAAAAAAAAAAAAAAAFAAYAAAAAAAAABAA7UG4AQcA
ZWRpdGluZy9leGVjQ29tbWFuZC9VVAUAA+zPelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABk
iy5K3SHD7UIAAACGAAAAQQAYAAAAAAABAAAApIEGAgcAZWRpdGluZy9leGVjQ29tbWFuZC9jbGlw
Ym9hcmQtYWNjZXNzLXdpdGgtdXNlci1nZXN0dXJlLXN0ZGVyci50eHRVVAUAA+zPelh1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACAD1kC5KBZghO1ULAAADRAAADQAYAAAAAAABAAAApIHDAgcAZXJy
b3JfbG9nLnR4dFVUBQADbdl6WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAIuLLkoAAAAAAAAA
AAAAAAAFABgAAAAAAAAAEADtQV8OBwBmYXN0L1VUBQADNtB6WHV4CwABBPUBAAAEFAAAAFBLAQIe
AwoAAAAAAHKLLkoAAAAAAAAAAAAAAAAMABgAAAAAAAAAEADtQZ4OBwBmYXN0L2NhbnZhcy9VVAUA
AwfQelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAByiy5KBI/sEI4AAAA0AQAAJgAYAAAAAAAB
AAAApIHkDgcAZmFzdC9jYW52YXMvY2FudmFzLWxpbmVEYXNoLXN0ZGVyci50eHRVVAUAAwfQelh1
eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAABxiy5KAAAAAAAAAAAAAAAACQAYAAAAAAAAABAA7UHS
DwcAZmFzdC9jc3MvVVQFAAMG0HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAcYsuStsI00I7
AAAAPwAAACkAGAAAAAAAAQAAAKSBFRAHAGZhc3QvY3NzL2NvbXBhcmUtY29udGVudC1zdHlsZS1z
dGRlcnIudHh0VVQFAAMG0HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAdYsuSgAAAAAAAAAA
AAAAAAkAGAAAAAAAAAAQAO1BsxAHAGZhc3QvZG9tL1VUBQADDdB6WHV4CwABBPUBAAAEFAAAAFBL
AQIeAwoAAAAAAHWLLkoAAAAAAAAAAAAAAAAQABgAAAAAAAAAEADtQfYQBwBmYXN0L2RvbS9XaW5k
b3cvVVQFAAMN0HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAdYsuSkCEpxWjAQAAGwkAADgA
GAAAAAAAAQAAAKSBQBEHAGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3Jt
YW5jZS1hY3R1YWwudHh0VVQFAAMN0HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAdYsuSvEH
OKMnAQAAqwMAADYAGAAAAAAAAQAAAKSBVRMHAGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVy
dGllcy1wZXJmb3JtYW5jZS1kaWZmLnR4dFVUBQADDdB6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQA
AgAIAHWLLkqCGqUtogEAAPYHAAA6ABgAAAAAAAEAAACkgewUBwBmYXN0L2RvbS9XaW5kb3cvd2lu
ZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UtZXhwZWN0ZWQudHh0VVQFAAMN0HpYdXgLAAEE9QEA
AAQUAAAAUEsBAh4DFAACAAgAdYsuSqffwQpGCAAAcCAAAD4AGAAAAAAAAQAAAKSBAhcHAGZhc3Qv
ZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS1wcmV0dHktZGlmZi5odG1s
VVQFAAMN0HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAhIsuSgAAAAAAAAAAAAAAAAwAGAAA
AAAAAAAQAO1BwB8HAGZhc3QvZXZlbnRzL1VUBQADJ9B6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQA
AgAIAHiLLkpYKmd1OQAAAEMAAAAyABgAAAAAAAEAAACkgQYgBwBmYXN0L2V2ZW50cy9kaXNwbGF5
LW5vbmUtb24tZm9jdXMtY3Jhc2gtc3RkZXJyLnR4dFVUBQADFNB6WHV4CwABBPUBAAAEFAAAAFBL
AQIeAxQAAgAIAISLLkowtW3jOQAAAEMAAAArABgAAAAAAAEAAACkgasgBwBmYXN0L2V2ZW50cy9t
b3VzZS1mb2N1cy1pbWFnZW1hcC1zdGRlcnIudHh0VVQFAAMn0HpYdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DCgAAAAAAd4suSgAAAAAAAAAAAAAAAAsAGAAAAAAAAAAQAO1BSSEHAGZhc3QvZm9ybXMvVVQF
AAMS0HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAd4suSqWgEYpqAAAAbAAAADsAGAAAAAAA
AQAAAKSBjiEHAGZhc3QvZm9ybXMvY2hlY2tib3gtYXBwZWFyYW5jZS1jaGFuZ2UtYnktY2hlY2tl
ZC1zdGRlcnIudHh0VVQFAAMS0HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAeIsuSgAAAAAA
AAAAAAAAAAwAGAAAAAAAAAAQAO1BbSIHAGZhc3QvZnJhbWVzL1VUBQADFNB6WHV4CwABBPUBAAAE
FAAAAFBLAQIeAxQAAgAIAHiLLkrbCNNCOwAAAD8AAAAvABgAAAAAAAEAAACkgbMiBwBmYXN0L2Zy
YW1lcy9mcmFtZS1kaXNwbGF5LW5vbmUtZm9jdXMtc3RkZXJyLnR4dFVUBQADFNB6WHV4CwABBPUB
AAAEFAAAAFBLAQIeAwoAAAAAAICLLkoAAAAAAAAAAAAAAAAMABgAAAAAAAAAEADtQVcjBwBmYXN0
L2ltYWdlcy9VVAUAAyDQelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACAiy5KIY+9ODIAAAAz
AAAALAAYAAAAAAABAAAApIGdIwcAZmFzdC9pbWFnZXMvcGRmLWFzLWltYWdlLWNyb3AtYm94LXN0
ZGVyci50eHRVVAUAAyDQelh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAACAiy5KAAAAAAAAAAAA
AAAADAAYAAAAAAAAABAA7UE1JAcAZmFzdC9sb2FkZXIvVVQFAAMf0HpYdXgLAAEE9QEAAAQUAAAA
UEsBAh4DFAACAAgAeIsuStsI00I7AAAAPwAAAFIAGAAAAAAAAQAAAKSBeyQHAGZhc3QvbG9hZGVy
L2Rpc3BsYXktaW1hZ2UtdW5zZXQtY2FuLWJsb2NrLWltYWdlLWFuZC1jYW4tcmVsb2FkLWluLXBs
YWNlLXN0ZGVyci50eHRVVAUAAxTQelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAB5iy5K2wjT
QjsAAAA/AAAAUwAYAAAAAAABAAAApIFCJQcAZmFzdC9sb2FkZXIvaW1hZ2VzLWVuYWJsZWQtdW5z
ZXQtY2FuLWJsb2NrLWltYWdlLWFuZC1jYW4tcmVsb2FkLWluLXBsYWNlLXN0ZGVyci50eHRVVAUA
AxbQelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACAiy5K2wjTQjsAAAA/AAAALQAYAAAAAAAB
AAAApIEKJgcAZmFzdC9sb2FkZXIvcmVsb2FkLXBvbGljeS1kZWxlZ2F0ZS1zdGRlcnIudHh0VVQF
AAMf0HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAhYsuSgAAAAAAAAAAAAAAAA0AGAAAAAAA
AAAQAO1BrCYHAGZhc3QvcmVnaW9ucy9VVAUAAynQelh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAA
AACFiy5KAAAAAAAAAAAAAAAAFwAYAAAAAAAAABAA7UHzJgcAZmFzdC9yZWdpb25zL3Njcm9sbGlu
Zy9VVAUAAyrQelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACFiy5KOQHL3UAAAAB6AAAANQAY
AAAAAAABAAAApIFEJwcAZmFzdC9yZWdpb25zL3Njcm9sbGluZy93aGVlbC1zY3JvbGwtYWJzcG9z
LXN0ZGVyci50eHRVVAUAAynQelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACFiy5KOQHL3UAA
AAB6AAAALgAYAAAAAAABAAAApIHzJwcAZmFzdC9yZWdpb25zL3Njcm9sbGluZy93aGVlbC1zY3Jv
bGwtc3RkZXJyLnR4dFVUBQADKdB6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAIWLLkrkisdD
PAAAAD0AAABAABgAAAAAAAEAAACkgZsoBwBmYXN0L3JlZ2lvbnMvc2Nyb2xsaW5nL3doZWVsLXNj
cm9sbGFibGUtc2luZ2xlLXJlZ2lvbi1zdGRlcnIudHh0VVQFAAMq0HpYdXgLAAEE9QEAAAQUAAAA
UEsBAh4DCgAAAAAAi4suSgAAAAAAAAAAAAAAAAoAGAAAAAAAAAAQAO1BUSkHAGZhc3QvdGV4dC9V
VAUAAzbQelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACLiy5KHJUDzYoBAAAKCgAAIwAYAAAA
AAABAAAApIGVKQcAZmFzdC90ZXh0L2Vtb2ppLWdlbmRlci0yLXN0ZGVyci50eHRVVAUAAzbQelh1
eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAACLiy5KAAAAAAAAAAAAAAAACQAYAAAAAAAAABAA7UF8
KwcAZmFzdC94c2wvVVQFAAM10HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAiosuSk77IPiI
AAAA5wAAACUAGAAAAAAAAQAAAKSBvysHAGZhc3QveHNsL3RyYW5zZm9ybS14aHItZG9jLXN0ZGVy
ci50eHRVVAUAAzTQelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACKiy5K/aIuZI8AAADuAAAA
JwAYAAAAAAABAAAApIGmLAcAZmFzdC94c2wveHNsdC1iYWQtaW1wb3J0LXVyaS1zdGRlcnIudHh0
VVQFAAM00HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAiosuSs+PZg5QAAAAoAAAACQAGAAA
AAAAAQAAAKSBli0HAGZhc3QveHNsL3hzbHQtY29udGVudFR5cGUtc3RkZXJyLnR4dFVUBQADNNB6
WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAIuLLkqBSnetSwAAAKwAAAA0ABgAAAAAAAEAAACk
gUQuBwBmYXN0L3hzbC94c2x0LXRyYW5zZm9ybS10by1mcmFnbWVudC1jcmFzaC1zdGRlcnIudHh0
VVQFAAM10HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA9pAuSgecxElLAwAAlA4AABEAGAAA
AAAAAQAAAKSB/S4HAGZ1bGxfcmVzdWx0cy5qc29uVVQFAANv2XpYdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DCgAAAAAAlYsuSgAAAAAAAAAAAAAAAAUAGAAAAAAAAAAQAO1BkzIHAGh0dHAvVVQFAANJ0HpY
dXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAyosuSgAAAAAAAAAAAAAAAAsAGAAAAAAAAAAQAO1B
0jIHAGh0dHAvdGVzdHMvVVQFAAOr0HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAsI4uSgAA
AAAAAAAAAAAAABQAGAAAAAAAAAAQAO1BFzMHAGh0dHAvdGVzdHMvYXBwY2FjaGUvVVQFAAMc1npY
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA9ZAuSkd2+Rj4QQAAdwwBAEYAGAAAAAAAAQAAAKSB
ZTMHAGh0dHAvdGVzdHMvYXBwY2FjaGUvY3Jhc2gtd2hlbi1uYXZpZ2F0aW5nLWF3YXktdGhlbi1i
YWNrLWNyYXNoLWxvZy50eHRVVAUAA27Zelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAD1kC5K
aAj8+rA+AABO2QAALgAYAAAAAAABAAAApIHddQcAaHR0cC90ZXN0cy9hcHBjYWNoZS9jeXJpbGxp
Yy11cmktY3Jhc2gtbG9nLnR4dFVUBQADbtl6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAB2M
LkqgT4iFQgAAAEUAAAA7ABgAAAAAAAEAAACkgfW0BwBodHRwL3Rlc3RzL2FwcGNhY2hlL2RpZmZl
cmVudC1vcmlnaW4tbWFuaWZlc3QtY3Jhc2gtbG9nLnR4dFVUBQADStF6WHV4CwABBPUBAAAEFAAA
AFBLAQIeAxQAAgAIAFGMLkrC58UyQgAAAEUAAAA1ABgAAAAAAAEAAACkgay1BwBodHRwL3Rlc3Rz
L2FwcGNhY2hlL2ZvcmVpZ24taWZyYW1lLW1haW4tY3Jhc2gtbG9nLnR4dFVUBQADqdF6WHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAPWQLkoHkayA00EAAGgPAQAuABgAAAAAAAEAAACkgV22BwBo
dHRwL3Rlc3RzL2FwcGNhY2hlL2hpc3RvcnktdGVzdC1jcmFzaC1sb2cudHh0VVQFAANu2XpYdXgL
AAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA9ZAuSt6THIWMQQAAMA4BADEAGAAAAAAAAQAAAKSBmPgH
AGh0dHAvdGVzdHMvYXBwY2FjaGUvaWRlbnRpZmllci10ZXN0LWNyYXNoLWxvZy50eHRVVAUAA27Z
elh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAD1kC5KQk7Z5CpDAAAVEQEALwAYAAAAAAABAAAA
pIGPOggAaHR0cC90ZXN0cy9hcHBjYWNoZS9sb2NhbC1jb250ZW50LWNyYXNoLWxvZy50eHRVVAUA
A27Zelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAD1kC5KCMdEuWxAAAD1CAEAUAAYAAAAAAAB
AAAApIEifggAaHR0cC90ZXN0cy9hcHBjYWNoZS9tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1u
ZXR3b3JrLWVycm9yLWNyYXNoLWNyYXNoLWxvZy50eHRVVAUAA27Zelh1eAsAAQT1AQAABBQAAABQ
SwECHgMUAAIACAD1kC5Kydl53blBAAAODwEAOAAYAAAAAAABAAAApIEYvwgAaHR0cC90ZXN0cy9h
cHBjYWNoZS9tYWluLXJlc291cmNlLXJlZGlyZWN0LWNyYXNoLWxvZy50eHRVVAUAA27Zelh1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACAD9jC5KwQTUR7xFAACfHgEAMgAYAAAAAAABAAAApIFDAQkA
aHR0cC90ZXN0cy9hcHBjYWNoZS9tYW5pZmVzdC1wYXJzaW5nLWNyYXNoLWxvZy50eHRVVAUAA+7S
elh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAD1kC5K1MxHDY9BAADuDQEAKgAYAAAAAAABAAAA
pIFrRwkAaHR0cC90ZXN0cy9hcHBjYWNoZS9tYXgtc2l6ZS1jcmFzaC1sb2cudHh0VVQFAANu2XpY
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAOo0uSspWNF8cQAAAJOIAADAAGAAAAAAAAQAAAKSB
XokJAGh0dHAvdGVzdHMvYXBwY2FjaGUvb2ZmbGluZS1hY2Nlc3MtY3Jhc2gtbG9nLnR4dFVUBQAD
YNN6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAFmNLkqcCs21kEEAAOINAQAvABgAAAAAAAEA
AACkgeTJCQBodHRwL3Rlc3RzL2FwcGNhY2hlL29yaWdpbi1kZWxldGUtY3Jhc2gtbG9nLnR4dFVU
BQADmtN6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAHaNLkpfxRbgBkIAANwPAQBBABgAAAAA
AAEAAACkgd0LCgBodHRwL3Rlc3RzL2FwcGNhY2hlL29yaWdpbi1xdW90YS1jb250aW51ZWQtZG93
bmxvYWQtY3Jhc2gtbG9nLnR4dFVUBQAD0NN6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAJON
LkotqdvB6EEAAGgPAQAuABgAAAAAAAEAAACkgV5OCgBodHRwL3Rlc3RzL2FwcGNhY2hlL29yaWdp
bi11c2FnZS1jcmFzaC1sb2cudHh0VVQFAAMF1HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA
9ZAuSirp4vTtQQAAeg8BADIAGAAAAAAAAQAAAKSBrpAKAGh0dHAvdGVzdHMvYXBwY2FjaGUvcHJv
Z3Jlc3MtY291bnRlci1jcmFzaC1sb2cudHh0VVQFAANu2XpYdXgLAAEE9QEAAAQUAAAAUEsBAh4D
FAACAAgA9ZAuSuApUBGwQwAANRUBACgAGAAAAAAAAQAAAKSBB9MKAGh0dHAvdGVzdHMvYXBwY2Fj
aGUvcmVsb2FkLWNyYXNoLWxvZy50eHRVVAUAA27Zelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIA
CAD1kC5Kzl7zGcdBAABmDwEANQAYAAAAAAABAAAApIEZFwsAaHR0cC90ZXN0cy9hcHBjYWNoZS9y
ZXNvdXJjZS1yZWRpcmVjdC0yLWNyYXNoLWxvZy50eHRVVAUAA27Zelh1eAsAAQT1AQAABBQAAABQ
SwECHgMUAAIACAAGji5Ku9gov45BAADjDQEAMwAYAAAAAAABAAAApIFPWQsAaHR0cC90ZXN0cy9h
cHBjYWNoZS9zaW1wbGUtdmlkZW8tc3luYy1jcmFzaC1sb2cudHh0VVQFAAPb1HpYdXgLAAEE9QEA
AAQUAAAAUEsBAh4DFAACAAgA9ZAuSvwxPrmwQQAASw8BAC0AGAAAAAAAAQAAAKSBSpsLAGh0dHAv
dGVzdHMvYXBwY2FjaGUvdG9wLWZyYW1lLTEtY3Jhc2gtbG9nLnR4dFVUBQADbtl6WHV4CwABBPUB
AAAEFAAAAFBLAQIeAxQAAgAIAD2OLkpSrH+5W0MAAC0UAQAtABgAAAAAAAEAAACkgWHdCwBodHRw
L3Rlc3RzL2FwcGNhY2hlL3RvcC1mcmFtZS0zLWNyYXNoLWxvZy50eHRVVAUAA0bVelh1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACAD1kC5KBTdnyhhGAAAIHwEALgAYAAAAAAABAAAApIEjIQwAaHR0
cC90ZXN0cy9hcHBjYWNoZS91cGRhdGUtY2FjaGUtY3Jhc2gtbG9nLnR4dFVUBQADbtl6WHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAPWQLkpHsZNviUQAAHQwAQA0ABgAAAAAAAEAAACkgaNnDABo
dHRwL3Rlc3RzL2FwcGNhY2hlL3doaXRlbGlzdC13aWxkY2FyZC1jcmFzaC1sb2cudHh0VVQFAANu
2XpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA9ZAuSqxbKP4PRAAAXhUBADMAGAAAAAAAAQAA
AKSBmqwMAGh0dHAvdGVzdHMvYXBwY2FjaGUvd3Jvbmctc2lnbmF0dXJlLTItY3Jhc2gtbG9nLnR4
dFVUBQADbtl6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAPWQLkrhlZFFAkIAACIPAQBCABgA
AAAAAAEAAACkgRbxDABodHRwL3Rlc3RzL2FwcGNhY2hlL3gtZnJhbWUtb3B0aW9ucy1wcmV2ZW50
cy1mcmFtaW5nLWNyYXNoLWxvZy50eHRVVAUAA27Zelh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAA
AACuiy5KAAAAAAAAAAAAAAAAEAAYAAAAAAAAABAA7UGUMw0AaHR0cC90ZXN0cy9taXNjL1VUBQAD
eNB6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAK6LLkoVNTWSegAAALwAAAAqABgAAAAAAAEA
AACkgd4zDQBodHRwL3Rlc3RzL21pc2MveHNsdC1iYWQtaW1wb3J0LXN0ZGVyci50eHRVVAUAA3jQ
elh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAACciy5KAAAAAAAAAAAAAAAAFgAYAAAAAAAAABAA
7UG8NA0AaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL1VUBQADWNB6WHV4CwABBPUBAAAEFAAAAFBLAQIe
AxQAAgAIAJaLLkrbCNNCOwAAAD8AAAA3ABgAAAAAAAEAAACkgQw1DQBodHRwL3Rlc3RzL25hdmln
YXRpb24vZmFsbGJhY2stYW5jaG9yLXJlbG9hZC1zdGRlcnIudHh0VVQFAANM0HpYdXgLAAEE9QEA
AAQUAAAAUEsBAh4DFAACAAgAnIsuSpJfnqRqAAAAbAAAAC0AGAAAAAAAAQAAAKSBuDUNAGh0dHAv
dGVzdHMvbmF2aWdhdGlvbi9wb3N0LWdvYmFjazItc3RkZXJyLnR4dFVUBQADWNB6WHV4CwABBPUB
AAAEFAAAAFBLAQIeAwoAAAAAANOLLkoAAAAAAAAAAAAAAAAUABgAAAAAAAAAEADtQYk2DQBodHRw
L3Rlc3RzL3NlY3VyaXR5L1VUBQADvtB6WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAKGLLkoA
AAAAAAAAAAAAAAAqABgAAAAAAAAAEADtQdc2DQBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRT
ZWN1cml0eVBvbGljeS9VVAUAA17Qelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACViy5KE0rh
BXMAAAB1AAAAVwAYAAAAAAABAAAApIE7Nw0AaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2Vj
dXJpdHlQb2xpY3kvY29ubmVjdC1zcmMtc3Rhci13ZWJzb2NrZXQtYWxsb3dlZC1zdGRlcnIudHh0
VVQFAANJ0HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAlYsuSkHJO/JzAAAAdQAAAFcAGAAA
AAAAAQAAAKSBPzgNAGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2Rl
ZmF1bHQtc3JjLXN0YXItd2Vic29ja2V0LWFsbG93ZWQtc3RkZXJyLnR4dFVUBQADSdB6WHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAKGLLkpjqqxsggAAAKgAAABAABgAAAAAAAEAAACkgUM5DQBo
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS94c2wtYWxsb3dlZC1zdGRl
cnIudHh0VVQFAANe0HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAoYsuSmOqrGyCAAAAqAAA
AFIAGAAAAAAAAQAAAKSBPzoNAGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9s
aWN5L3hzbC11bmFmZmVjdGVkLWJ5LXN0eWxlLXNyYy0yLXN0ZGVyci50eHRVVAUAA17Qelh1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACADMiy5K1AnqiUMAAABGAAAANwAYAAAAAAABAAAApIFNOw0A
aHR0cC90ZXN0cy9zZWN1cml0eS9jcm9zcy1vcmlnaW4tYXBwY2FjaGUtY3Jhc2gtbG9nLnR4dFVU
BQADr9B6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIANOLLkpgS2YQkQAAAPsBAABFABgAAAAA
AAEAAACkgQE8DQBodHRwL3Rlc3RzL3NlY3VyaXR5L3hzcy1ERU5JRUQteHNsLWRvY3VtZW50LXNl
Y3VyaXR5T3JpZ2luLXN0ZGVyci50eHRVVAUAA77Qelh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAA
AADKiy5KAAAAAAAAAAAAAAAADwAYAAAAAAAAABAA7UERPQ0AaHR0cC90ZXN0cy9zc2wvVVQFAAOr
0HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA9ZAuSqhl9KVYRgAAyCQBAC8AGAAAAAAAAQAA
AKSBWj0NAGh0dHAvdGVzdHMvc3NsL3ZlcmlmeS1zc2wtZW5hYmxlZC1jcmFzaC1sb2cudHh0VVQF
AANu2XpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAyI4uSlsEWA6iBQAATRAAAAoAGAAAAAAA
AQAAAKSBG4QNAGh0dHBkLmNvbmZVVAUAA0fWelh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAACt
iy5KAAAAAAAAAAAAAAAACQAYAAAAAAAAABAA7UEBig0AaW1wb3J0ZWQvVVQFAAN20HpYdXgLAAEE
9QEAAAQUAAAAUEsBAh4DCgAAAAAAoosuSgAAAAAAAAAAAAAAAA8AGAAAAAAAAAAQAO1BRIoNAGlt
cG9ydGVkL2JsaW5rL1VUBQADX9B6WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAKKLLkoAAAAA
AAAAAAAAAAAUABgAAAAAAAAAEADtQY2KDQBpbXBvcnRlZC9ibGluay9mYXN0L1VUBQADX9B6WHV4
CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAKKLLkoAAAAAAAAAAAAAAAAaABgAAAAAAAAAEADtQduK
DQBpbXBvcnRlZC9ibGluay9mYXN0L2Zvcm1zL1VUBQADX9B6WHV4CwABBPUBAAAEFAAAAFBLAQIe
AwoAAAAAAKKLLkoAAAAAAAAAAAAAAAAhABgAAAAAAAAAEADtQS+LDQBpbXBvcnRlZC9ibGluay9m
YXN0L2Zvcm1zL2J1dHRvbi9VVAUAA1/Qelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACiiy5K
xyHv2zcAAABAAAAARwAYAAAAAAABAAAApIGKiw0AaW1wb3J0ZWQvYmxpbmsvZmFzdC9mb3Jtcy9i
dXR0b24vYnV0dG9uLXJlc2V0LWZvY3VzLWJ5LW1vdXNlLXN0ZGVyci50eHRVVAUAA1/Qelh1eAsA
AQT1AQAABBQAAABQSwECHgMKAAAAAACiiy5KAAAAAAAAAAAAAAAAIAAYAAAAAAAAABAA7UFCjA0A
aW1wb3J0ZWQvYmxpbmsvZmFzdC9mb3Jtcy9yYW5nZS9VVAUAA1/Qelh1eAsAAQT1AQAABBQAAABQ
SwECHgMUAAIACACiiy5KxyHv2zcAAABAAAAAPwAYAAAAAAABAAAApIGcjA0AaW1wb3J0ZWQvYmxp
bmsvZmFzdC9mb3Jtcy9yYW5nZS9yYW5nZS1mb2N1cy1ieS1tb3VzZS1zdGRlcnIudHh0VVQFAANf
0HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAoosuSgAAAAAAAAAAAAAAACEAGAAAAAAAAAAQ
AO1BTI0NAGltcG9ydGVkL2JsaW5rL2Zhc3QvZm9ybXMvc3VibWl0L1VUBQADX9B6WHV4CwABBPUB
AAAEFAAAAFBLAQIeAxQAAgAIAKKLLkrHIe/bNwAAAEAAAABBABgAAAAAAAEAAACkgaeNDQBpbXBv
cnRlZC9ibGluay9mYXN0L2Zvcm1zL3N1Ym1pdC9zdWJtaXQtZm9jdXMtYnktbW91c2Utc3RkZXJy
LnR4dFVUBQADX9B6WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAALKLLkoAAAAAAAAAAAAAAAAN
ABgAAAAAAAAAEADtQVmODQBpbXBvcnRlZC93M2MvVVQFAAN/0HpYdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DCgAAAAAArYsuSgAAAAAAAAAAAAAAABoAGAAAAAAAAAAQAO1BoI4NAGltcG9ydGVkL3czYy9X
ZWJDcnlwdG9BUEkvVVQFAAN20HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAr4suSgAAAAAA
AAAAAAAAACYAGAAAAAAAAAAQAO1B9I4NAGltcG9ydGVkL3czYy9XZWJDcnlwdG9BUEkvZ2VuZXJh
dGVLZXkvVVQFAAN50HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgArYsuSo80GnBEAAAAoAkA
AEcAGAAAAAAAAQAAAKSBVI8NAGltcG9ydGVkL3czYy9XZWJDcnlwdG9BUEkvZ2VuZXJhdGVLZXkv
dGVzdF9mYWlsdXJlc19SU0EtT0FFUC1zdGRlcnIudHh0VVQFAAN20HpYdXgLAAEE9QEAAAQUAAAA
UEsBAh4DFAACAAgAr4suSlQCybI2AAAAwAIAAFAAGAAAAAAAAQAAAKSBGZANAGltcG9ydGVkL3cz
Yy9XZWJDcnlwdG9BUEkvZ2VuZXJhdGVLZXkvdGVzdF9mYWlsdXJlc19SU0FTU0EtUEtDUzEtdjFf
NS1zdGRlcnIudHh0VVQFAAN50HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAsosuSgAAAAAA
AAAAAAAAACAAGAAAAAAAAAAQAO1B2ZANAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
VVQFAAN/0HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAsosuSgAAAAAAAAAAAAAAACYAGAAA
AAAAAAAQAO1BM5ENAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvVVQFAAN/
0HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAxIsuSgAAAAAAAAAAAAAAACoAGAAAAAAAAAAQ
AO1Bk5ENAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL1VUBQADn9B6
WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAMSLLkoAAAAAAAAAAAAAAAAwABgAAAAAAAAAEADt
QfeRDQBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9iYXNpYy9VVAUA
A5/Qelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACADEiy5KmIyRmJAAAACeAAAARwAYAAAAAAAB
AAAApIFhkg0AaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvYmFzaWMv
bW9kZS1uby1jb3JzLXN0ZGVyci50eHRVVAUAA5/Qelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIA
CADEiy5KZj5yzpAAAACeAAAATgAYAAAAAAABAAAApIFykw0AaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9mZXRjaC9hcGkvYmFzaWMvbW9kZS1uby1jb3JzLXdvcmtlci1zdGRlcnIudHh0
VVQFAAOf0HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAtosuSgAAAAAAAAAAAAAAAC8AGAAA
AAAAAAAQAO1BipQNAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2Nv
cnMvVVQFAAOH0HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAsosuSitSSvOuAAAAtAMAAEQA
GAAAAAAAAQAAAKSB85QNAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBp
L2NvcnMvY29ycy1iYXNpYy1zdGRlcnIudHh0VVQFAAN/0HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4D
FAACAAgAsosuSk2yXbuuAAAAtAMAAEsAGAAAAAAAAQAAAKSBH5YNAGltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1iYXNpYy13b3JrZXItc3RkZXJyLnR4
dFVUBQADf9B6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIALOLLkonh/tdnQAAADwBAABLABgA
AAAAAAEAAACkgVKXDQBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9j
b3JzL2NvcnMtbm8tcHJlZmxpZ2h0LXN0ZGVyci50eHRVVAUAA4HQelh1eAsAAQT1AQAABBQAAABQ
SwECHgMUAAIACACyiy5KWdkQrZ0AAAA8AQAAUgAYAAAAAAABAAAApIF0mA0AaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLW5vLXByZWZsaWdodC13b3Jr
ZXItc3RkZXJyLnR4dFVUBQADgNB6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIALOLLkpBCyYV
QwIAAEkMAABFABgAAAAAAAEAAACkgZ2ZDQBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZldGNoL2FwaS9jb3JzL2NvcnMtb3JpZ2luLXN0ZGVyci50eHRVVAUAA4LQelh1eAsAAQT1AQAA
BBQAAABQSwECHgMUAAIACACziy5Ka710fqcAAAB4AgAATAAYAAAAAAABAAAApIFfnA0AaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLW9yaWdpbi13b3Jr
ZXItc3RkZXJyLnR4dFVUBQADgtB6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIALSLLkqPyZQy
mQEAAN4FAABIABgAAAAAAAEAAACkgYydDQBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZldGNoL2FwaS9jb3JzL2NvcnMtcHJlZmxpZ2h0LXN0ZGVyci50eHRVVAUAA4TQelh1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACAC2iy5KdFsFPMsCAAC/EwAAUQAYAAAAAAABAAAApIGnnw0AaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLXJlZGlyZWN0
LXByZWZsaWdodC1zdGRlcnIudHh0VVQFAAOH0HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA
BIwuSgAAAAAAAAAAAAAAAAYAGAAAAAAAAAAQAO1B/aINAG1lZGlhL1VUBQADGNF6WHV4CwABBPUB
AAAEFAAAAFBLAQIeAwoAAAAAAASMLkoAAAAAAAAAAAAAAAAMABgAAAAAAAAAEADtQT2jDQBtZWRp
YS90cmFjay9VVAUAAxjRelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAEjC5KjekYVEsBAABU
AgAAKgAYAAAAAAABAAAApIGDow0AbWVkaWEvdHJhY2svdHJhY2staW4tYmFuZC1zdHlsZS1hY3R1
YWwudHh0VVQFAAMY0XpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgABIwuSuPleoBwAQAAvQIA
ACgAGAAAAAAAAQAAAKSBMqUNAG1lZGlhL3RyYWNrL3RyYWNrLWluLWJhbmQtc3R5bGUtZGlmZi50
eHRVVAUAAxjRelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAEjC5KDPrk6jYBAAAzAgAALAAY
AAAAAAABAAAApIEEpw0AbWVkaWEvdHJhY2svdHJhY2staW4tYmFuZC1zdHlsZS1leHBlY3RlZC50
eHRVVAUAAxjRelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAEjC5KFPniv5YIAADQIAAAMAAY
AAAAAAABAAAApIGgqA0AbWVkaWEvdHJhY2svdHJhY2staW4tYmFuZC1zdHlsZS1wcmV0dHktZGlm
Zi5odG1sVVQFAAMY0XpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA8YsuSgAAAAAAAAAAAAAA
AAgAGAAAAAAAAAAQAO1BoLENAHBsdWdpbnMvVVQFAAP10HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4D
FAACAAgA8YsuSu5dckWGAAAA9gAAADsAGAAAAAAAAQAAAKSB4rENAHBsdWdpbnMvbnBwLXNldC13
aW5kb3ctY2FsbGVkLWR1cmluZy1kZXN0cnVjdGlvbi1zdGRlcnIudHh0VVQFAAP10HpYdXgLAAEE
9QEAAAQUAAAAUEsBAh4DFAACAAgAq4suSjsPvkesAgAA6ikAABoAGAAAAAAAAQAAAKSB3bINAHB5
d2Vic29ja2V0LndzLmxvZy1lcnIudHh0VVQFAANy0HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAAC
AAgAmosuSmQLyOUJAQAAjwIAABoAGAAAAAAAAQAAAKSB3bUNAHB5d2Vic29ja2V0LndzLmxvZy1v
dXQudHh0VVQFAANU0HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAVIsuSgAAAAAAAAAAAAAA
ABsAGAAAAAAAAAAAAKSBOrcNAHB5d2Vic29ja2V0Lndzcy5sb2ctZXJyLnR4dFVUBQADz896WHV4
CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAFSLLkoAAAAAAAAAAAAAAAAbABgAAAAAAAAAAACkgY+3
DQBweXdlYnNvY2tldC53c3MubG9nLW91dC50eHRVVAUAA8/Pelh1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACAD2kC5KRSYdOdEnAADLqgAADAAYAAAAAAABAAAApIHktw0AcmVzdWx0cy5odG1sVVQF
AANv2XpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA5o4uSgAAAAAAAAAAAAAAAAgAGAAAAAAA
AAAQAO1B+98NAHJldHJpZXMvVVQFAAN/1npYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA5o4u
SgAAAAAAAAAAAAAAAA0AGAAAAAAAAAAQAO1BPeANAHJldHJpZXMvaHR0cC9VVAUAA3/Welh1eAsA
AQT1AQAABBQAAABQSwECHgMKAAAAAAD0kC5KAAAAAAAAAAAAAAAAEwAYAAAAAAAAABAA7UGE4A0A
cmV0cmllcy9odHRwL3Rlc3RzL1VUBQADa9l6WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAANeQ
LkoAAAAAAAAAAAAAAAAcABgAAAAAAAAAEADtQdHgDQByZXRyaWVzL2h0dHAvdGVzdHMvYXBwY2Fj
aGUvVVQFAAM12XpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAHY8uSkd2+Rj4QQAAdwwBAE4A
GAAAAAAAAQAAAKSBJ+ENAHJldHJpZXMvaHR0cC90ZXN0cy9hcHBjYWNoZS9jcmFzaC13aGVuLW5h
dmlnYXRpbmctYXdheS10aGVuLWJhY2stY3Jhc2gtbG9nLnR4dFVUBQAD6tZ6WHV4CwABBPUBAAAE
FAAAAFBLAQIeAxQAAgAIAOaOLkpoCPz6sD4AAE7ZAAA2ABgAAAAAAAEAAACkgacjDgByZXRyaWVz
L2h0dHAvdGVzdHMvYXBwY2FjaGUvY3lyaWxsaWMtdXJpLWNyYXNoLWxvZy50eHRVVAUAA3/Welh1
eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAADjy5KB5GsgNNBAABoDwEANgAYAAAAAAABAAAApIHH
Yg4AcmV0cmllcy9odHRwL3Rlc3RzL2FwcGNhY2hlL2hpc3RvcnktdGVzdC1jcmFzaC1sb2cudHh0
VVQFAAO11npYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAupAuSt6THIWMQQAAMA4BADkAGAAA
AAAAAQAAAKSBCqUOAHJldHJpZXMvaHR0cC90ZXN0cy9hcHBjYWNoZS9pZGVudGlmaWVyLXRlc3Qt
Y3Jhc2gtbG9nLnR4dFVUBQADANl6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAIOQLkpCTtnk
KkMAABURAQA3ABgAAAAAAAEAAACkgQnnDgByZXRyaWVzL2h0dHAvdGVzdHMvYXBwY2FjaGUvbG9j
YWwtY29udGVudC1jcmFzaC1sb2cudHh0VVQFAAOV2HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAAC
AAgAEJAuSgjHRLlsQAAA9QgBAFgAGAAAAAAAAQAAAKSBpCoPAHJldHJpZXMvaHR0cC90ZXN0cy9h
cHBjYWNoZS9tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1uZXR3b3JrLWVycm9yLWNyYXNoLWNy
YXNoLWxvZy50eHRVVAUAA8DXelh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABmkC5Kydl53blB
AAAODwEAQAAYAAAAAAABAAAApIGiaw8AcmV0cmllcy9odHRwL3Rlc3RzL2FwcGNhY2hlL21haW4t
cmVzb3VyY2UtcmVkaXJlY3QtY3Jhc2gtbG9nLnR4dFVUBQADYNh6WHV4CwABBPUBAAAEFAAAAFBL
AQIeAxQAAgAIADqPLkrUzEcNj0EAAO4NAQAyABgAAAAAAAEAAACkgdWtDwByZXRyaWVzL2h0dHAv
dGVzdHMvYXBwY2FjaGUvbWF4LXNpemUtY3Jhc2gtbG9nLnR4dFVUBQADINd6WHV4CwABBPUBAAAE
FAAAAFBLAQIeAxQAAgAIAC2QLkoq6eL07UEAAHoPAQA6ABgAAAAAAAEAAACkgdDvDwByZXRyaWVz
L2h0dHAvdGVzdHMvYXBwY2FjaGUvcHJvZ3Jlc3MtY291bnRlci1jcmFzaC1sb2cudHh0VVQFAAP1
13pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgASZAuSuApUBGwQwAANRUBADAAGAAAAAAAAQAA
AKSBMTIQAHJldHJpZXMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZWxvYWQtY3Jhc2gtbG9nLnR4dFVU
BQADKth6WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAJ2QLkrOXvMZx0EAAGYPAQA9ABgAAAAA
AAEAAACkgUt2EAByZXRyaWVzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2UtcmVkaXJlY3Qt
Mi1jcmFzaC1sb2cudHh0VVQFAAPK2HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAV48uSvwx
PrmwQQAASw8BADUAGAAAAAAAAQAAAKSBibgQAHJldHJpZXMvaHR0cC90ZXN0cy9hcHBjYWNoZS90
b3AtZnJhbWUtMS1jcmFzaC1sb2cudHh0VVQFAANV13pYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAAC
AAgAc48uSgU3Z8oYRgAACB8BADYAGAAAAAAAAQAAAKSBqPoQAHJldHJpZXMvaHR0cC90ZXN0cy9h
cHBjYWNoZS91cGRhdGUtY2FjaGUtY3Jhc2gtbG9nLnR4dFVUBQADitd6WHV4CwABBPUBAAAEFAAA
AFBLAQIeAxQAAgAIANeQLkrhlZFFAkIAACIPAQBKABgAAAAAAAEAAACkgTBBEQByZXRyaWVzL2h0
dHAvdGVzdHMvYXBwY2FjaGUveC1mcmFtZS1vcHRpb25zLXByZXZlbnRzLWZyYW1pbmctY3Jhc2gt
bG9nLnR4dFVUBQADNdl6WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAPSQLkoAAAAAAAAAAAAA
AAAXABgAAAAAAAAAEADtQbaDEQByZXRyaWVzL2h0dHAvdGVzdHMvc3NsL1VUBQADa9l6WHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAPSQLkqoZfSlWEYAAMgkAQA3ABgAAAAAAAEAAACkgQeEEQBy
ZXRyaWVzL2h0dHAvdGVzdHMvc3NsL3ZlcmlmeS1zc2wtZW5hYmxlZC1jcmFzaC1sb2cudHh0VVQF
AANr2XpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA8osuSgAAAAAAAAAAAAAAAAsAGAAAAAAA
AAAQAO1B0MoRAHNjcm9sbGJhcnMvVVQFAAP30HpYdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA
8osuSm69I2E5AAAAQgAAADsAGAAAAAAAAQAAAKSBFcsRAHNjcm9sbGJhcnMvc2Nyb2xsZXZlbnQt
aWZyYW1lLW5vLXNjcm9sbGluZy13aGVlbC1zdGRlcnIudHh0VVQFAAP30HpYdXgLAAEE9QEAAAQU
AAAAUEsBAh4DFAACAAgA9pAuSnjzzo8aiQgApUkvAAoAGAAAAAAAAQAAAKSBw8sRAHN0YXRzLmpz
b25VVAUAA2/Zelh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAAAFjC5KAAAAAAAAAAAAAAAABAAY
AAAAAAAAABAA7UEhVRoAc3ZnL1VUBQADGdF6WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAAWM
LkoAAAAAAAAAAAAAAAANABgAAAAAAAAAEADtQV9VGgBzdmcvYXMtaW1hZ2UvVVQFAAMZ0XpYdXgL
AAEE9QEAAAQUAAAAUEsBAh4DFAACAAgABYwuStsI00I7AAAAPwAAAD8AGAAAAAAAAQAAAKSBplUa
AHN2Zy9hcy1pbWFnZS9zdmctaW1hZ2Utd2l0aC1kYXRhLXVyaS1pbWFnZXMtZGlzYWJsZWQtc3Rk
ZXJyLnR4dFVUBQADGdF6WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAABOMLkoAAAAAAAAAAAAA
AAALABgAAAAAAAAAEADtQVpWGgB3ZWJhcmNoaXZlL1VUBQADNdF6WHV4CwABBPUBAAAEFAAAAFBL
AQIeAxQAAgAIABOMLkrbCNNCOwAAAD8AAAA6ABgAAAAAAAEAAACkgZ9WGgB3ZWJhcmNoaXZlL3Rl
c3QtbGluay1yZWwtc3VicmVzb3VyY2UtYmVmb3JlbG9hZC1zdGRlcnIudHh0VVQFAAM10XpYdXgL
AAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAuowuSnOrOC49VAIADwE/ABkAGAAAAAAAAQAAAKSBTlca
AHdwdHdrX3Byb2Nlc3NfbG9nLm91dC50eHRVVAUAA3DSelh1eAsAAQT1AQAABBQAAABQSwUGAAAA
AMsAywDPWAAA3qscAAAA
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>298885</attachid>
            <date>2017-01-14 21:47:45 -0800</date>
            <delta_ts>2017-01-14 22:32:23 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-167055-20170114214600.patch</filename>
            <type>text/plain</type>
            <size>620340</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEwNzcwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTQxOTRlNjQ2MmViZmMx
OWRlNTYxM2FhOTcxOGQ3YzNhYThkMjA1ZS4uYjM4NmRmYTk3NTgyY2Q2MjA2NDEwNDE0ZWI4OGQx
MWNlMjZmZTcwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwOCBAQAorMjAxNy0wMS0xNCAgRGFy
aW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIFBhc3NSZWZQdHIg
ZnJvbSAibG9hZGVyIiBkaXJlY3Rvcnkgb2YgV2ViQ29yZQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY3MDU1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6RG9jdW1lbnQ6OnByb2Nlc3NIdHRwRXF1aXYpOiBQYXNzIGEgcmVmZXJlbmNlLgor
ICAgICAgICAqIGVkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6RWRpdENvbW1hbmRDb21wb3NpdGlvbjo6dW5hcHBseSk6IERpdHRvLgorICAgICAgICAo
V2ViQ29yZTo6RWRpdENvbW1hbmRDb21wb3NpdGlvbjo6cmVhcHBseSk6IERpdHRvLgorICAgICAg
ICAoV2ViQ29yZTo6Q29tcG9zaXRlRWRpdENvbW1hbmQ6OmVuc3VyZUNvbXBvc2l0aW9uKTogUmV0
dXJuIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6Q29tcG9zaXRlRWRpdENvbW1hbmQ6
OmFwcGx5Q29tbWFuZFRvQ29tcG9zaXRlKTogVXNlIGEgcmVmZXJlbmNlLgorICAgICAgICAqIGVk
aXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuaDogVXBkYXRlZCBmb3IgYWJvdmUgY2hhbmdlcy4K
KworICAgICAgICAqIGVkaXRpbmcvRWRpdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRv
cjo6dW5hcHBsaWVkRWRpdGluZyk6IFRha2UgYSByZWZlcmVuY2UgaW5zdGVhZCBvZiBhIFBhc3NS
ZWZQdHIuCisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OnJlYXBwbGllZEVkaXRpbmcpOiBEaXR0
by4KKyAgICAgICAgKiBlZGl0aW5nL0VkaXRvci5oOiBVcGRhdGVkIGZvciBhYm92ZSBjaGFuZ2Vz
LiBBbHNvIGNoYW5nZWQgdGhlCisgICAgICAgIEZyYWdtZW50QW5kUmVzb3VyY2VzIHJlc291cmNl
cyB2ZWN0b3IgdG8gaG9sZCBSZWYgaW5zdGVhZCBvZiBSZWZQdHIuCisKKyAgICAgICAgKiBlZGl0
aW5nL2lvcy9FZGl0b3JJT1MubW06CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OldlYkNvbnRl
bnRSZWFkZXI6OnJlYWRXZWJBcmNoaXZlKTogUGFzcyBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdl
YkNvcmU6OkVkaXRvcjo6Y3JlYXRlRnJhZ21lbnRBbmRBZGRSZXNvdXJjZXMpOiBVcGRhdGVkIGZv
ciBjaGFuZ2UgdG8KKyAgICAgICAgRnJhZ21lbnRBbmRSZXNvdXJjZXMuCisKKyAgICAgICAgKiBl
ZGl0aW5nL21hYy9FZGl0b3JNYWMubW06CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OldlYkNv
bnRlbnRSZWFkZXI6OnJlYWRXZWJBcmNoaXZlKTogUGFzcyBhIHJlZmVyZW5jZS4KKyAgICAgICAg
KFdlYkNvcmU6OkVkaXRvcjo6Y3JlYXRlRnJhZ21lbnRBbmRBZGRSZXNvdXJjZXMpOiBVcGRhdGVk
IGZvciBjaGFuZ2UgdG8KKyAgICAgICAgRnJhZ21lbnRBbmRSZXNvdXJjZXMuCisKKyAgICAgICAg
KiBoaXN0b3J5L1BhZ2VDYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpjYW5DYWNoZUZyYW1l
KTogVXNlIGEgcmVmZXJlbmNlLgorCisgICAgICAgICogaHRtbC9GaWxlSW5wdXRUeXBlLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkZpbGVJbnB1dFR5cGU6OmhhbmRsZURPTUFjdGl2YXRlRXZlbnQp
OiBQYXNzIHJlZmVyZW5jZXMuCisKKyAgICAgICAgKiBodG1sL0hUTUxGb3JtQ29udHJvbEVsZW1l
bnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEZvcm1Db250cm9sRWxlbWVudDo6Zm9ybU1l
dGhvZCk6IFVzZSBhdXRvLgorCisgICAgICAgICogaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6SFRNTEZvcm1FbGVtZW50OjpwcmVwYXJlRm9yU3VibWlzc2lvbik6
IFVwZGF0ZWQgdG8gdXNlIGEgcmV0dXJuCisgICAgICAgIHZhbHVlcyBmb3IgdGV4dEZpZWxkVmFs
dWVzIGludHNlYWQgb2YgYW4gb3V0IGFyZ3VtZW50IHdpdGggZ2V0VGV4dEZpZWxkVmFsdWVzLgor
ICAgICAgICAoV2ViQ29yZTo6SFRNTEZvcm1FbGVtZW50Ojp0ZXh0RmllbGRWYWx1ZXMpOiBSZW5h
bWVkIGZyb20gZ2V0VGV4dEZpZWxkVmFsdWVzCisgICAgICAgIGFuZCBjaGFuZ2VkIHRvIHVzZSBh
IHJldHVybiB2YWx1ZSBpbnN0ZWFkIG9mIGFuIG91dCBhcmd1bWVudC4KKyAgICAgICAgKFdlYkNv
cmU6OkhUTUxGb3JtRWxlbWVudDo6c3VibWl0KTogUGFzcyBhIHJlZmVyZW5jZS4KKyAgICAgICAg
KFdlYkNvcmU6OkhUTUxGb3JtRWxlbWVudDo6cmVxdWVzdEF1dG9jb21wbGV0ZSk6IFBhc3MgYSBS
ZWYmJi4KKyAgICAgICAgKiBodG1sL0hUTUxGb3JtRWxlbWVudC5oOiBVcGRhdGVkIGZvciBhYm92
ZSBjaGFuZ2VzLgorCisgICAgICAgICogaHRtbC9IVE1MSHRtbEVsZW1lbnQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTEh0bWxFbGVtZW50OjppbnNlcnRlZEJ5UGFyc2VyKTogVXNlIGEgcmVm
ZXJlbmNlLgorCisgICAgICAgICogaHRtbC9IVE1MTGlua0VsZW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTExpbmtFbGVtZW50Ojpwcm9jZXNzKTogUGFzcyBhIHJlZmVyZW5jZS4KKyAg
ICAgICAgKFdlYkNvcmU6OkhUTUxMaW5rRWxlbWVudDo6c2V0Q1NTU3R5bGVTaGVldCk6IFVzZSBh
dXRvLgorCisgICAgICAgICogaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OmxvYWRSZXNvdXJjZSk6IFVzZSBhIHJlZmVyZW5jZS4K
KworICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50Ojp1cGRh
dGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzKTogVXNlIGEgcmVmZXJlbmNlLAorICAgICAgICBhbHNv
IHVwZGF0ZSBmb3Igc3RydWN0LXN0eWxlIG1lbWJlciBuYW1lcyB3aXRob3UgbV8gcHJlZml4Lgor
ICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpnZXRGcmFt
ZXNXaXRoTWFuaWZlc3RzKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JBcHBs
aWNhdGlvbkNhY2hlQWdlbnQ6OmdldE1hbmlmZXN0Rm9yRnJhbWUpOiBEaXR0by4KKyAgICAgICAg
KFdlYkNvcmU6Okluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6Z2V0QXBwbGljYXRpb25D
YWNoZUZvckZyYW1lKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JBcHBsaWNh
dGlvbkNhY2hlQWdlbnQ6OmJ1aWxkT2JqZWN0Rm9yQXBwbGljYXRpb25DYWNoZSk6IERpdHRvLgor
ICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZEFy
cmF5Rm9yQXBwbGljYXRpb25DYWNoZVJlc291cmNlcyk6IERpdHRvLgorICAgICAgICAoV2ViQ29y
ZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZE9iamVjdEZvckFwcGxpY2F0
aW9uQ2FjaGVSZXNvdXJjZSk6IERpdHRvLgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JB
cHBsaWNhdGlvbkNhY2hlQWdlbnQuaDogVXBkYXRlZCBmb3IgYWJvdmUgY2hhbmdlcy4KKworICAg
ICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp1cGRhdGVBcHBsaWNhdGlvbkNhY2hl
U3RhdHVzSW1wbCk6IFRha2UgYSByZWZlcmVuY2UuCisgICAgICAgICogaW5zcGVjdG9yL0luc3Bl
Y3Rvckluc3RydW1lbnRhdGlvbi5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAg
KiBsb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXI6OkRvY3VtZW50TG9hZGVyKTogTW92ZSBtdWNoIGluaXRpYWxpemF0aW9uIHRvIGNsYXNz
IGRlZmluaXRpb24uCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6b3JpZ2luYWxS
ZXF1ZXN0KTogTW92ZWQgdG8gaGVhZGVyIHRvIG1ha2UgaXQgaW5saW5lLgorICAgICAgICAoV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXI6Om9yaWdpbmFsUmVxdWVzdENvcHkpOiBEaXR0by4KKyAgICAg
ICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpyZXF1ZXN0KTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6dXJsKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpE
b2N1bWVudExvYWRlcjo6c3RvcExvYWRpbmcpOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAo
V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OndpbGxTZW5kUmVxdWVzdCk6IFVwZGF0ZWQgdG8gdGFr
ZSBhIHJhdyBwb2ludGVyIGluc3RlYWQgb2YgYQorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAg
ICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmNvbW1pdERhdGEpOiBDYWxsIHNob3VsZFVzZU1h
aW5SZXNvdXJjZUVuY29kaW5nIGluc3RlYWQgb2YKKyAgICAgICAgc3BlY2lhbCBjYXNpbmcgV2Vi
QXJjaGl2ZS4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjptYXliZUNyZWF0ZUFy
Y2hpdmUpOiBQYXNzIHJlZmVyZW5jZXMuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRl
cjo6c2V0QXJjaGl2ZSk6IFRha2UgUmVmJiYgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAg
ICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMpOiBUYWtl
IGEgcmVmZXJlbmNlIGluc3RlYWQKKyAgICAgICAgb2YgYSBwb2ludGVyLgorICAgICAgICAoV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXI6OnBvcEFyY2hpdmVGb3JTdWJmcmFtZSk6IFJldHVybiBSZWZQ
dHIgaW5zdGVhZCBvZgorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXI6OnN1YnJlc291cmNlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpEb2N1
bWVudExvYWRlcjo6c3VicmVzb3VyY2VzKTogUmV0dXJuIGEgVmVjdG9yPFJlZj4gaW5zdGVhZCBv
ZiBhCisgICAgICAgIFZlY3RvcjxSZWZQdHI+LgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXI6OnN1YnN0aXR1dGVSZXNvdXJjZURlbGl2ZXJ5VGltZXJGaXJlZCk6IFVzZSBtb3ZlCisg
ICAgICAgIGluc3RlYWQgb2Ygc3dhcC4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
OjpzY2hlZHVsZUFyY2hpdmVMb2FkKTogVXNlIHNob3VsZExvYWRGcm9tQXJjaGl2ZU9ubHkKKyAg
ICAgICAgaW5zdGVhZCBvZiBhIHNwZWNpYWwgY2FzZSBmb3IgZWFjaCB0eXBlIG9mIGFyY2hpdmUu
CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6b3JpZ2luYWxVUkwpOiBNb3ZlZCB0
byBoZWFkZXIgdG8gbWFrZSBpdCBpbmxpbmUuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExv
YWRlcjo6cmVzcG9uc2VVUkwpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyOjpkb2N1bWVudFVSTCk6IENhbGwgc2hvdWxkVXNlTWFpblJlc291cmNlVVJMIGluc3RlYWQg
b2YKKyAgICAgICAgc3BlY2lhbCBjYXNpbmcgV2ViQXJjaGl2ZS4KKyAgICAgICAgKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyOjpyZXNwb25zZU1JTUVUeXBlKTogTW92ZWQgdG8gaGVhZGVyIHRvIG1h
a2UgaXQgaW5saW5lLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmN1cnJlbnRD
b250ZW50VHlwZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmNv
bnRlbnRGaWx0ZXIpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpn
ZXRJY29uTG9hZERlY2lzaW9uRm9ySWNvblVSTCk6IFBhc3MgYSByZWZlcmVuY2UuCisgICAgICAg
IChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6Z2V0SWNvbkRhdGFGb3JJY29uVVJMKTogRGl0dG8u
CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6ZGlzcGF0Y2hPbmxvYWRFdmVudHMp
OiBVc2UgYSByZWZlcmVuY2UuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6dW5y
ZWFjaGFibGVVUkwpOiBNb3ZlZCB0byBoZWFkZXIgdG8gbWFrZSBpdCBpbmxpbmUuCisgICAgICAg
ICogbG9hZGVyL0RvY3VtZW50TG9hZGVyLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAg
ICAgICAqIGxvYWRlci9FbXB0eUNsaWVudHMuY3BwOiBVcGRhdGVkIGZvciBjaGFuZ2VzIHRvIGNs
aWVudCBpbnRlcmZhY2VzLgorICAgICAgICAqIGxvYWRlci9FbXB0eUNsaWVudHMuaDogRGl0dG8u
CisKKyAgICAgICAgKiBsb2FkZXIvRm9ybVN0YXRlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZv
cm1TdGF0ZTo6Rm9ybVN0YXRlKTogVGFrZSByZWZlcmVuY2VzIGluc3RlYWQgb2YgUGFzc1JlZlB0
ciwgYWxzbworICAgICAgICB0YWtlIFZlY3RvciYmIGluc3RlYWQgb2YgVmVjdG9yJiB3aGVuIHdl
IHdhbnQgdG8gdGFrZSBvd25lcnNoaXAgYW5kIHVzZSBtb3ZlCisgICAgICAgIGluc3RlYWQgb2Yg
c3dhcCB0byBkbyB0aGF0LgorICAgICAgICAoV2ViQ29yZTo6Rm9ybVN0YXRlOjpjcmVhdGUpOiBE
aXR0by4KKyAgICAgICAgKiBsb2FkZXIvRm9ybVN0YXRlLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92
ZS4gQWxzbyBjaGFuZ2VkIHJldHVybiB2YWx1ZXMgdG8gYmUKKyAgICAgICAgcmVmZXJlbmNlcyBp
bnN0ZWFkIG9mIHBvaW50ZXJzIGFuZCBtZW1iZXJzIHRvIGJlIFJlZiBpbnN0ZWFkIG9mIFJlZlB0
ci4KKworICAgICAgICAqIGxvYWRlci9Gb3JtU3VibWlzc2lvbi5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpGb3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6cGFyc2VNZXRob2RUeXBlKTogVXBkYXRl
ZCBmb3IgY2hhbmdlCisgICAgICAgIHRvIHRoZSBNZXRob2QgZW51bWVyYXRpb24uCisgICAgICAg
IChXZWJDb3JlOjpGb3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6Y29weUZyb20pOiBEZWxldGVk
LgorICAgICAgICAoV2ViQ29yZTo6Rm9ybVN1Ym1pc3Npb246OkZvcm1TdWJtaXNzaW9uKTogVXNl
IFJlZiYmIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYkNvcmU6OkZvcm1TdWJt
aXNzaW9uOjpjcmVhdGUpOiBVc2UgcmVmZXJlbmNlIGluc3RlYWQgb2YgcG9pbnRlciBhbmQKKyAg
ICAgICAgcmF3IHBvaW50ZXIgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLiBBbHNvIGNvcHkgYXR0cmli
dXRlcyB1c2luZyBjb3B5IGNvbnN0cnVjdG9yCisgICAgICAgIGluc3RlYWQgb2YgYW4gZXhwbGlj
aXQgY29weUZyb20gZnVuY3Rpb24uCisgICAgICAgIChXZWJDb3JlOjpGb3JtU3VibWlzc2lvbjo6
cmVxdWVzdFVSTCk6IFVwZGF0ZWQgZm9yIGNoYW5nZSB0byB0aGUgTWV0aG9kCisgICAgICAgIGVu
dW1lcmF0aW9uLgorICAgICAgICAoV2ViQ29yZTo6Rm9ybVN1Ym1pc3Npb246OnBvcHVsYXRlRnJh
bWVMb2FkUmVxdWVzdCk6IERpdHRvLgorICAgICAgICAqIGxvYWRlci9Gb3JtU3VibWlzc2lvbi5o
OiBVcGRhdGVkIGZvciB0aGUgYWJvdmUgY2hhbmdlcy4gTWFkZSB0aGUgQXR0cmlidXRlcworICAg
ICAgICBjbGFzcyBjb3B5YWJsZSwgc2luY2Ugd2UgY29weSBpdC4gQ2hhbmdlZCBzb21lIGZ1bmN0
aW9ucyB0byByZXR1cm4gcmVmZXJlbmNlcworICAgICAgICBpbnN0ZWFkIG9mIHBvaW50ZXJzIGFu
ZCB1c2UgUmVmIGluc3RlYWQgb2YgUmVmUHRyIGZvciBkYXRhIG1lbWJlcnMuCisKKyAgICAgICAg
KiBsb2FkZXIvRnJhbWVMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6
OnN1Ym1pdEZvcm0pOiBVcGRhdGVkIGZvciBjaGFuZ2VzIHRvIEZvcm1TdWJtaXNzaW9uCisgICAg
ICAgIGFuZCBGb3JtU3RhdGUuCisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6cmVjZWl2
ZWRGaXJzdERhdGEpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2Fk
RnJhbWVSZXF1ZXN0KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6bG9h
ZFJlc291cmNlU3luY2hyb25vdXNseSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVM
b2FkZXI6OmNvbnRpbnVlTG9hZEFmdGVyTmF2aWdhdGlvblBvbGljeSk6IERpdHRvLgorCisgICAg
ICAgICogbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50Lmg6IFVzZSByZWZlcmVuY2VzLCBwb2ludGVy
cywgUmVmUHRyLCBhbmQgUmVmCisgICAgICAgIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKworICAg
ICAgICAqIGxvYWRlci9IaXN0b3J5Q29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpI
aXN0b3J5Q29udHJvbGxlcjo6cHVzaFN0YXRlKTogVGFrZSBSZWZQdHImJiBpbnN0ZWFkIG9mIFBh
c3NSZWZQdHIuCisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5Q29udHJvbGxlcjo6cmVwbGFjZVN0
YXRlKTogRGl0dG8uCisgICAgICAgICogbG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmg6IFVwZGF0
ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRlci9JbWFnZUxvYWRlci5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpJbWFnZUxvYWRlcjo6dXBkYXRlRnJvbUVsZW1lbnQpOiBQYXNzIGEg
cmVmZXJlbmNlLgorCisgICAgICAgICogbG9hZGVyL05hdmlnYXRpb25TY2hlZHVsZXIuY3BwOiBV
c2UgcmVmZXJuY2VzIGFuZCBSZWYmJiBpbnN0ZWFkIG9mCisgICAgICAgIHBvaW50ZXJzIGFuZCBQ
YXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6U2NoZWR1bGVkTmF2aWdhdGlvbjo6U2NoZWR1
bGVkTmF2aWdhdGlvbik6IEFkZGVkIGFuIG92ZXJsb2FkCisgICAgICAgIHRoYXQgc2VzdHMgbV9z
aG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5LgorICAgICAgICAqIGxvYWRlci9OYXZpZ2F0aW9u
U2NoZWR1bGVyLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRlci9S
ZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcjo6c3Rh
cnQpOiBVc2UgYW5kIHBhc3MgcmVmZXJlbmNlcy4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNl
TG9hZGVyOjp3aWxsU2VuZFJlcXVlc3QpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291
cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6
OlJlc291cmNlTG9hZGVyOjpkaWRGYWlsKTogRGl0dG8uCisKKyAgICAgICAgKiBsb2FkZXIvU3Vi
ZnJhbWVMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OmNyZWF0
ZUphdmFBcHBsZXRXaWRnZXQpOiBSZXR1cm4gUmVmUHRyIGluc3RlYWQKKyAgICAgICAgb2YgUGFz
c1JlZlB0ci4gUGFzcyByZWZlcmVuY2VzIGluc3RlYWQgb2YgcG9pbnRlcnMuCisgICAgICAgIChX
ZWJDb3JlOjpTdWJmcmFtZUxvYWRlcjo6bG9hZE9yUmVkaXJlY3RTdWJmcmFtZSk6IERpdHRvLgor
ICAgICAgICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OmxvYWRTdWJmcmFtZSk6IERpdHRvLgor
ICAgICAgICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OmRvY3VtZW50KTogRGVsZXRlZC4gVGhp
cyB3YXMgbmV2ZXIgcmVhbGx5IHRoZQorICAgICAgICBjb3JyZWN0IGlkaW9tIGZvciBnZXR0aW5n
IHRoZSBhcHByb3ByaWF0ZSBkb2N1bWVudDsgaGlkaW5nIHRoZSBkZXBlbmRlbmN5CisgICAgICAg
IG9uIG1fZnJhbWUgd2Fzbid0IHBhaW5nIG9mZi4KKyAgICAgICAgKFdlYkNvcmU6OlN1YmZyYW1l
TG9hZGVyOjpsb2FkUGx1Z2luKTogUGFzcyByZWZlcmVuY2UgaW5zdGVhZCBvZiBwb2ludGVyLgor
ICAgICAgICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OnNob3VsZENvbnZlcnRJbnZhbGlkVVJM
c1RvQmxhbmspOiBFbGltaW5hdGVkCisgICAgICAgIHVubmVlZGVkIG51bGwgY2hlY2tpbmcgYW5k
IGNvbXBsZXhpdHkgZHVlIHRvIGdvaW5nIHRocm91Z2ggdGhlIGRvY3VtZW50CisgICAgICAgIGlu
c3RlYWQgb2YgdGhlIGZyYW1lIGZvciB0aGlzIGNoZWNrLgorICAgICAgICAqIGxvYWRlci9TdWJm
cmFtZUxvYWRlci5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIv
YXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNh
dGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlKTogTW92ZWQgZGF0YSBtZW1iZXIKKyAgICAgICAg
aW5pdGlhbGl6YXRpb24gdG8gdGhlIGNsYXNzIGRlZmluaXRpb24uCisgICAgICAgIChXZWJDb3Jl
OjpBcHBsaWNhdGlvbkNhY2hlOjp+QXBwbGljYXRpb25DYWNoZSk6IFBhc3MgYSByZWZlcmVuY2Ug
aW5zdGVhZAorICAgICAgICBvZiBhIHBvaW50ZXIuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNh
dGlvbkNhY2hlOjppc0NvbXBsZXRlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNh
dGlvbkNhY2hlOjpzZXRNYW5pZmVzdFJlc291cmNlKTogVGFrZSBSZWYmJiBpbnN0ZWFkIG9mCisg
ICAgICAgIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlOjph
ZGRSZXNvdXJjZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZTo6
cmVtb3ZlUmVzb3VyY2UpOiBEZWxldGVkLiBXYXMgdW51c2VkLgorICAgICAgICAqIGxvYWRlci9h
cHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlLmg6IFVwZGF0ZWQgZm9yIGFib3ZlIGNoYW5nZXMuCisK
KyAgICAgICAgKiBsb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6QXBwbGljYXRpb25DYWNoZUdy
b3VwKTogTW92ZWQgbW9zdAorICAgICAgICBtZW1iZXIgaW5pdGlhbGl6YXRpb24gdG8gdGhlIGNs
YXNzIGRlZmluaXRpb24uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
On5BcHBsaWNhdGlvbkNhY2hlR3JvdXApOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2Vi
Q29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpjYWNoZUZvck1haW5SZXF1ZXN0KTogUmVtb3Zl
ZAorICAgICAgICB1bm5lY2Vzc2FyeSBwcmVmbGlnaHQgZm9yIHJlbW92ZUZyYWdtZW50SWRlbnRp
Zmllciwgd2hpY2ggZWZmaWNpZW50bHkKKyAgICAgICAgZG9lcyBub3RoaW5nIGlmIHRoZXJlIGlz
IG5vIGlkZW50aWZpZXIuIFVzZSBlYXJseSByZXR1cm4uCisgICAgICAgIChXZWJDb3JlOjpBcHBs
aWNhdGlvbkNhY2hlR3JvdXA6OmZhbGxiYWNrQ2FjaGVGb3JNYWluUmVxdWVzdCk6IE1vcmUgb2YK
KyAgICAgICAgdGhlIHNhbWUuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3Jv
dXA6OnNlbGVjdENhY2hlKTogRGl0dG8sIGFsc28gdGFrZSBhIHJlZmVyZW5jZSwKKyAgICAgICAg
YW5kIHVzZSBldmVudCBuYW1lcyBpbnN0ZWFkIG9mIGEgc3BlY2lhbCBlbnVtZXJhdGlvbiB0byBw
b2FzdCBldmVudHMuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNl
bGVjdENhY2hlV2l0aG91dE1hbmlmZXN0VVJMKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpB
cHBsaWNhdGlvbkNhY2hlR3JvdXA6OmZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZSk6IERpdHRv
LgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpmYWlsZWRMb2FkaW5n
TWFpblJlc291cmNlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hl
R3JvdXA6OmRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKTogRGl0dG8uCisgICAgICAgIChXZWJD
b3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNhY2hlRGVzdHJveWVkKTogRGl0dG8uCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnN0b3BMb2FkaW5nSW5GcmFtZSk6
IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZXROZXdl
c3RDYWNoZSk6IFVzZSBSZWYmJiBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIuCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6Om1ha2VPYnNvbGV0ZSk6IE1vcmUg
b2YgdGhlIHNhbWUuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnVw
ZGF0ZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjph
Ym9ydCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpk
aWRSZWNlaXZlUmVzcG9uc2UpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9u
Q2FjaGVHcm91cDo6ZGlkRmluaXNoTG9hZGluZyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6
QXBwbGljYXRpb25DYWNoZUdyb3VwOjpkaWRGYWlsKTogRGl0dG8uCisgICAgICAgIChXZWJDb3Jl
OjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRpZEZpbmlzaExvYWRpbmdNYW5pZmVzdCk6IERpdHRv
LgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjptYW5pZmVzdE5vdEZv
dW5kKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNo
ZWNrSWZMb2FkSXNDb21wbGV0ZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRp
b25DYWNoZUdyb3VwOjpzdGFydExvYWRpbmdFbnRyeSk6IERpdHRvLgorICAgICAgICAoV2ViQ29y
ZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpkZWxpdmVyRGVsYXllZE1haW5SZXNvdXJjZXMpOiBV
c2UgYSBtb2Rlcm4KKyAgICAgICAgZm9yIGxvb3AuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNh
dGlvbkNhY2hlR3JvdXA6OmFkZEVudHJ5KTogVXNlIGF1dG8gYW5kIHNpbXBsaWZ5IGxvZ2ljCisg
ICAgICAgIGZvciBhZGRpbmcuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3Jv
dXA6OmFzc29jaWF0ZURvY3VtZW50TG9hZGVyV2l0aENhY2hlKTogVXBkYXRlIHNpbmNlCisgICAg
ICAgIGZ1bmN0aW9uIHJlc3VsdCBpcyBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYkNvcmU6OkFw
cGxpY2F0aW9uQ2FjaGVHcm91cDo6c2NoZWR1bGVSZWFjaGVkTWF4QXBwQ2FjaGVTaXplQ2FsbGJh
Y2spOgorICAgICAgICBVc2UgYXV0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2Fj
aGVHcm91cDo6cG9zdExpc3RlbmVyVGFzayk6IFRha2UgZXZlbnQgdHlwZSBpbnN0ZWFkIG9mCisg
ICAgICAgIHRha2luZyBhIHNwZWNpYWwgZW51bWVyYXRpb24uCisgICAgICAgICogbG9hZGVyL2Fw
cGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisK
KyAgICAgICAgKiBsb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUhvc3QuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhvc3Q6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0
KTogTW92ZSBtb3N0IG1lbWJlcgorICAgICAgICBpbml0aWFsaXphdGlvbiB0byB0aGUgY2xhc3Mg
ZGVmaW5pdGlvbi4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojp+QXBw
bGljYXRpb25DYWNoZUhvc3QpOiBVc2UgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6QXBw
bGljYXRpb25DYWNoZUhvc3Q6OnNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0KTogRGl0dG8uCisg
ICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c2VsZWN0Q2FjaGVXaXRoTWFu
aWZlc3QpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojpt
YWluUmVzb3VyY2VEYXRhUmVjZWl2ZWQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxp
Y2F0aW9uQ2FjaGVIb3N0OjpmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKTogRGl0dG8uCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6ZmluaXNoZWRMb2FkaW5nTWFpblJl
c291cmNlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6
bWF5YmVMb2FkRmFsbGJhY2tGb3JSZWRpcmVjdCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6
QXBwbGljYXRpb25DYWNoZUhvc3Q6Om1heWJlTG9hZEZhbGxiYWNrRm9yUmVzcG9uc2UpOiBEaXR0
by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpjcmVhdGVGaWxlVVJM
KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWF5YmVM
b2FkU3luY2hyb25vdXNseSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25D
YWNoZUhvc3Q6Om5vdGlmeURPTUFwcGxpY2F0aW9uQ2FjaGUpOiBUYWtlIGV2ZW50CisgICAgICAg
IHR5cGUgaW5zdGVhZCBvZiBzcGVjaWFsIGVudW1lcmF0aW9uLgorICAgICAgICAoV2ViQ29yZTo6
QXBwbGljYXRpb25DYWNoZUhvc3Q6OnN0b3BMb2FkaW5nSW5GcmFtZSk6IFVzZSByZWZlcmVuY2Uu
CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c3RvcERlZmVycmluZ0V2
ZW50cyk6IFVwZGF0ZWQgdG8gdXNlCisgICAgICAgIGV2ZW50IHR5cGVzIGluc3RlYWQgb2Ygc3Bl
Y2lhbCBlbnVtZXJhdGlvbiBhbmQgYWxzbyByZXBhaXJlZCBwb3NzaWJsZQorICAgICAgICBlZGdl
IGNhc2Ugd2hlcmUgY29kZSBpbiBldmVudCBoYW5kbGVyIHNvbWVob3cgdHJpZ2dlcnMgYWRkaXRp
b25hbCBldmVudHMuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6cmVz
b3VyY2VMaXN0KTogUmVuYW1lZCBmcm9tIGZpbGxSZXNvdXJjZUxpc3QKKyAgICAgICAgYW5kIGNo
YW5nZWQgdG8gcmV0dXJuIGEgdmVjdG9yIGluc3RlYWQgb2YgcG9wdWxhdGluZyBvbmUuCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6YXBwbGljYXRpb25DYWNoZUluZm8p
OiBUd2VhayBjb2Rpbmcgc3R5bGUgYSBiaXQuCisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVBcHBs
aWNhdGlvbkNhY2hlRXZlbnQpOiBGYWN0b3JlZCB0aGlzIGhlbHBlciBvdXQgb2YKKyAgICAgICAg
ZGlzcGF0Y2hET01FdmVudCBzbyB3ZSBjYW4gdXNlIFJlZiBpbnN0ZWFkIG9mIFJlZlB0ci4KKyAg
ICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpkaXNwYXRjaERPTUV2ZW50KTog
VXBkYXRlZCB0byByZWNlbnQgZXZlbnQgdHlwZQorICAgICAgICByYXRoZXIgdGhhbiByZWNlaXZp
bmcgYW4gZXZlbnQgaWQgYW5kIG1hcHBpbmcgaXQgdG8gYSB0eXBlLgorICAgICAgICAoV2ViQ29y
ZTo6QXBwbGljYXRpb25DYWNoZUhvc3Q6OnNldEFwcGxpY2F0aW9uQ2FjaGUpOiBUYWtlIFJlZlB0
ciYmIGluc3RlYWQgb2YKKyAgICAgICAgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYkNvcmU6OkFw
cGxpY2F0aW9uQ2FjaGVIb3N0Ojp1cGRhdGUpOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAo
V2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhvc3Q6OnN3YXBDYWNoZSk6IERpdHRvLgorICAgICAg
ICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhvc3Q6OmFib3J0KTogRGl0dG8uCisgICAgICAg
ICogbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVIb3N0Lmg6IFVwZGF0ZWQgZm9yIHRo
ZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3Rv
cmFnZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6bG9h
ZENhY2hlR3JvdXApOiBQYXNzIGEgUmVmIGluc3RlYWQgb2YgUmVmUHRyLgorICAgICAgICAoV2Vi
Q29yZTo6QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmNhY2hlR3JvdXBGb3JVUkwpOiBEaXR0by4K
KyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpmYWxsYmFja0NhY2hl
R3JvdXBGb3JVUkwpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVT
dG9yYWdlOjpjYWNoZUdyb3VwRGVzdHJveWVkKTogVGFrZSBhIHJlZmVyZW5jZS4KKyAgICAgICAg
KFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpjYWNoZUdyb3VwTWFkZU9ic29sZXRl
KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6c3Rv
cmVOZXdlc3RDYWNoZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNo
ZVN0b3JhZ2U6OmxvYWRDYWNoZSk6IFJldHVybiBSZWZQdHIgaW5zdGVhZCBvZiBQYXNzUmVmUHRy
LgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmRlbGV0ZUNhY2hl
R3JvdXApOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAqIGxvYWRlci9hcHBjYWNoZS9BcHBs
aWNhdGlvbkNhY2hlU3RvcmFnZS5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAg
KiBsb2FkZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25DYWNoZS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpET01BcHBsaWNhdGlvbkNhY2hlOjpET01BcHBsaWNhdGlvbkNhY2hlKTogVGFrZSBhIHJl
ZmVyZW5jZS4KKyAgICAgICAgKFdlYkNvcmU6OkRPTUFwcGxpY2F0aW9uQ2FjaGU6OnRvRXZlbnRU
eXBlKTogRGVsZXRlZC4KKyAgICAgICAgKiBsb2FkZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25D
YWNoZS5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuIE1hZGUgbW9zdAorICAgICAgICBtZW1iZXJz
IHByaXZhdGUuCisKKyAgICAgICAgKiBsb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkFyY2hpdmU6OmNsZWFyQWxsU3ViZnJhbWVBcmNoaXZlcyk6IFVzZSBhIHNl
dCBmb3IgdGhlIGxvZ2ljIHRoYXQKKyAgICAgICAgcHJldmVudHMgdXMgZnJvbSB3YWxraW5nIHRo
ZSBzYW1lIGFyY2hpdmUgbW9yZSB0aGFuIG9uY2UsIHJhdGhlciB0aGFuIHVzaW5nCisgICAgICAg
IGEgdmVjdG9yLiBMZWZ0IGl0IHJlY3Vyc2l2ZSwgdGhvdWdoLgorICAgICAgICAqIGxvYWRlci9h
cmNoaXZlL0FyY2hpdmUuaDogR2l0IHJpZCBvZiB0aGUgdHlwZSBmdW5jdGlvbiwgcmVwbGFjaW5n
IGl0IHdpdGgKKyAgICAgICAgdGhyZWUgZnVuY3Rpb25zIGZvciB0aGUgZm91ciBkaWZmZXJlbnQg
cG9saWNpZXMgd2UgY3VycmVudGx5IGhhdmUgYWJvdXQgdGhlCisgICAgICAgIGRpZmZlcmVudCBh
cmNoaXZlIHR5cGVzLiBDaGFuZ2VkIGZ1bmN0aW9ucyB0byB0YWtlIFJlZiYmIGluc3RlYWQgb2Yg
UGFzc1JlZlB0cgorICAgICAgICBhbmQgcmV0dXJuIGNvbnN0IFZlY3RvcjxSZWY+JiBpbnN0ZWFk
IG9mIGNvbnN0IFZlY3RvcjxSZWZQdHI+JiwgY2hhbmdpbmcgdGhlCisgICAgICAgIGRhdGEgbWVt
YmVycyB0byBtYXRjaC4KKworICAgICAgICAqIGxvYWRlci9hcmNoaXZlL0FyY2hpdmVGYWN0b3J5
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZUFyY2hpdmVNSU1FVHlwZXNNYXApOiBGYWN0
b3JlZCB0aGlzIG91dCBvZiB0aGUgYXJjaGl2ZU1JTUVUeXBlcworICAgICAgICBmdW5jdGlvbiBz
byB3ZSBkb24ndCBuZWVkIGEgYm9vbGVhbi4gQWxzbyB1c2UgQVNDSUlMaXRlcmFsLgorICAgICAg
ICAoV2ViQ29yZTo6YXJjaGl2ZU1JTUVUeXBlcyk6IFVwZGF0ZWQgdG8gc2UgdGhlIGFib3ZlLgor
CisgICAgICAgICogbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uOjphZGRBbGxSZXNv
dXJjZXMpOiBUYWtlIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6QXJjaGl2ZVJlc291
cmNlQ29sbGVjdGlvbjo6cG9wU3ViZnJhbWVBcmNoaXZlKTogUmV0dXJuIFJlZlB0ciBpbnN0ZWFk
CisgICAgICAgIG9mIFBhc3NSZWZQdHIuCisgICAgICAgICogbG9hZGVyL2FyY2hpdmUvQXJjaGl2
ZVJlc291cmNlQ29sbGVjdGlvbi5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAg
KiBsb2FkZXIvYXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNoaXZlLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkxlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKTog
VXNlIGF1dG8gYW5kCisgICAgICAgIGZld2VyIGxvY2FsIHZhcmlhYmxlcywgbW9yZSByZWZlcmVu
Y2VzIGZvciBhcmd1bWVudCB0eXBlcyBhbmQgcmV0dXJuIHZhbHVlcy4KKyAgICAgICAgKFdlYkNv
cmU6OkxlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVJlc291cmNlUmVzcG9uc2VGcm9tUHJvcGVydHlM
aXN0RGF0YSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6Y3Jl
YXRlUmVzb3VyY2UpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hpdmU6
OmNyZWF0ZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6ZXh0
cmFjdCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6dHlwZSk6
IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpMZWdhY3lXZWJBcmNoaXZlOjpyYXdEYXRhUmVw
cmVzZW50YXRpb24pOiBNb3JlIG9mIHRoZSBzYW1lLgorICAgICAgICAoV2ViQ29yZTo6TGVnYWN5
V2ViQXJjaGl2ZTo6Y3JlYXRlRnJvbVNlbGVjdGlvbik6IERpdHRvLgorICAgICAgICAqIGxvYWRl
ci9hcmNoaXZlL2NmL0xlZ2FjeVdlYkFyY2hpdmUuaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLiBB
bHNvIG1hcmtlZCB0aGUKKyAgICAgICAgY2xhc3MgZmluYWwgYW5kIGFkZGVkIG92ZXJyaWRlcyBm
b3IgdGhlIGZvdXIgbmV3IHBvbGljeSBtZW1iZXIgZnVuY3Rpb25zLgorCisgICAgICAgICogbG9h
ZGVyL2FyY2hpdmUvbWh0bWwvTUhUTUxBcmNoaXZlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1I
VE1MQXJjaGl2ZTo6Z2VuZXJhdGVNSFRNTERhdGEpOiBSZXR1cm4gUmVmUHRyIGluc3RlYWQgb2YK
KyAgICAgICAgUGFzc1JlZlB0ci4KKyAgICAgICAgKiBsb2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRN
TEFyY2hpdmUuaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLiBBbHNvIG1hcmtlZCB0aGUKKyAgICAg
ICAgY2xhc3MgZmluYWwgYW5kIGFkZGVkIG92ZXJyaWRlcyBmb3IgdGhlIGZvdXIgbmV3IHBvbGlj
eSBtZW1iZXIgZnVuY3Rpb25zLgorCisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZENTU1N0
eWxlU2hlZXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkQ1NTU3R5bGVTaGVldDo6cmVz
dG9yZVBhcnNlZFN0eWxlU2hlZXQpOiBSZXR1cm4gUmVmUHRyIGluc3RlYWQKKyAgICAgICAgb2Yg
UGFzc1JlZlB0ci4KKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5o
OiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVk
UmVzb3VyY2VSZXF1ZXN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlUmVx
dWVzdDo6c2V0SW5pdGlhdG9yKTogVGFrZSBhIHJlZmVyZW5jZSBpbnN0ZWFkIG9mIGEKKyAgICAg
ICAgUGFzc1JlZlB0ci4KKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VSZXF1
ZXN0Lmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRlci9jb2NvYS9E
aXNrQ2FjaGVNb25pdG9yLmg6IFJlbW92ZWQuIFRoaXMgaXMgYSBkdXBsaWNhdGUsIHVudXNlZCBj
b3B5CisgICAgICAgIG9mIERpc2tDYWNoZU1vbml0b3JDb2NvYS5oLgorCisgICAgICAgICogbG9h
ZGVyL2NvY29hL0Rpc2tDYWNoZU1vbml0b3JDb2NvYS5oOiBSZW1vdmVkIHVubmVlZGVkIGV4cG9y
dGluZyBhbmQgdmlydHVhbAorICAgICAgICBtZW1iZXIgZnVuY3Rpb25zLCBtYWRlIG1vcmUgdGhp
bmdzIHByaXZhdGUsIGFuZCBjaGFuZ2VkIHJldHVybiB0eXBlIHRvIFJlZlB0cgorICAgICAgICBp
bnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgICogbG9hZGVyL2NvY29hL0Rpc2tDYWNoZU1v
bml0b3JDb2NvYS5tbToKKyAgICAgICAgKFdlYkNvcmU6OkRpc2tDYWNoZU1vbml0b3I6OnRyeUdl
dEZpbGVCYWNrZWRTaGFyZWRCdWZmZXJGcm9tQ0ZVUkxDYWNoZWRSZXNwb25zZSk6CisgICAgICAg
IENoYW5nZWQgcmV0dXJuIHR5cGUgdG8gUmVmUHRyIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKwor
ICAgICAgICAqIGxvYWRlci9pY29uL0ljb25EYXRhYmFzZS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpJY29uRGF0YWJhc2U6OnNldEljb25EYXRhRm9ySWNvblVSTCk6IFRha2UgcmF3IHBvaW50ZXIg
aW5zdGVhZCBvZgorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6SWNvbkRh
dGFiYXNlOjpnZXRPckNyZWF0ZUljb25SZWNvcmQpOiBSZXR1cm4gUmVmIGluc3RlYWQgb2YgUGFz
c1JlZlB0ci4KKyAgICAgICAgKFdlYkNvcmU6Okljb25EYXRhYmFzZTo6Z2V0SW1hZ2VEYXRhRm9y
SWNvblVSTEZyb21TUUxEYXRhYmFzZSk6IFJldHVybiBSZWZQdHIKKyAgICAgICAgaW5zdGVhZCBv
ZiBQYXNzUmVmUHRyLgorICAgICAgICAqIGxvYWRlci9pY29uL0ljb25EYXRhYmFzZS5oOiBVcGRh
dGVkIGZvciB0aGUgYWJvdmUuIEFsc28gbWFya2VkIGZ1bmN0aW9ucyBmaW5hbAorICAgICAgICBp
bnN0ZWFkIG9mIG92ZXJyaWRlLgorICAgICAgICAqIGxvYWRlci9pY29uL0ljb25EYXRhYmFzZUJh
c2UuaDogRGl0dG8uCisKKyAgICAgICAgKiBsb2FkZXIvaWNvbi9QYWdlVVJMUmVjb3JkLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlBhZ2VVUkxSZWNvcmQ6OlBhZ2VVUkxSZWNvcmQpOiBNb3ZlZCBp
bml0aWFsaXphdGlvbiB0byB0aGUgaGVhZGVyLgorICAgICAgICAoV2ViQ29yZTo6UGFnZVVSTFJl
Y29yZDo6flBhZ2VVUkxSZWNvcmQpOiBXcm90ZSBjb2RlIGhlcmUgaW5zdGVhZCBvZiBjYWxsaW5n
CisgICAgICAgIHNldEljb25SZWNvcmQobnVsbHB0cikuCisgICAgICAgIChXZWJDb3JlOjpQYWdl
VVJMUmVjb3JkOjpzZXRJY29uUmVjb3JkKTogVGFrZSBSZWZQdHImJiBpbnN0ZWFkIG9mIFBhc3NS
ZWZQdHIuCisgICAgICAgICogbG9hZGVyL2ljb24vUGFnZVVSTFJlY29yZC5oOiBVcGRhdGQgZm9y
IHRoZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRlci9pb3MvUXVpY2tMb29rLmg6CisgICAgICAg
IChXZWJDb3JlOjpRdWlja0xvb2tIYW5kbGU6OnNldENsaWVudCk6IFRha2UgUmVmJiYgaW5zdGVh
ZCBvZiBQYXNzUmVGUHRyLgorICAgICAgICAqIGxvYWRlci9pb3MvUXVpY2tMb29rLm1tOgorICAg
ICAgICAoLVtXZWJSZXNvdXJjZUxvYWRlclF1aWNrTG9va0RlbGVnYXRlIGluaXRXaXRoUmVzb3Vy
Y2VMb2FkZXI6XSk6IFRha2UKKyAgICAgICAgcmVmZXJlbmNlIGluc3RlYWQgb2YgUGFzc1JlZlB0
ci4KKyAgICAgICAgKFdlYkNvcmU6OlF1aWNrTG9va0hhbmRsZTo6Y3JlYXRlKTogUGFzcyByZWZl
cmVuY2UgaW5zdGVhZCBvZiBwb2ludGVyLgorCisgICAgICAgICogcGFnZS9DaHJvbWUuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6Q2hyb21lOjpydW5PcGVuUGFuZWwpOiBVcGRhdGVkIHRvIHRha2Ug
dHdvIHJlZmVyZW5jZXMuCisgICAgICAgICogcGFnZS9DaHJvbWUuaDogRGl0dG8uCisgICAgICAg
ICogcGFnZS9DaHJvbWVDbGllbnQuaDogZGl0dG8uCisKKyAgICAgICAgKiBwYWdlL0RPTVdpbmRv
dy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpET01XaW5kb3c6OmFwcGxpY2F0aW9uQ2FjaGUpOiBQ
YXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6RE9NV2luZG93OjpzZXRMb2NhdGlv
bik6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RE9NV2luZG93OjpjcmVhdGVXaW5kb3cpOiBE
aXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkRPTVdpbmRvdzo6b3Blbik6IERpdHRvLgorCisgICAg
ICAgICogcGFnZS9FZGl0b3JDbGllbnQuaDogQ2hhbmdlZCBhcmd1bWVudHMgdG8gcmVmZXJlbmNl
cyBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisKKyAgICAgICAgKiBwYWdlL0hpc3RvcnkuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6SGlzdG9yeTo6c3RhdGVPYmplY3RBZGRlZCk6IFBhc3MgYW4gcnZh
bHVlIHJlZmVyZW5jZS4KKworICAgICAgICAqIHBhZ2UvTG9jYXRpb24uY3BwOgorICAgICAgICAo
V2ViQ29yZTo6TG9jYXRpb246OnJlbG9hZCk6IFBhc3MgcmVmZXJlbmNlIGluc3RlYWQgb2YgcG9p
bnRlci4KKyAgICAgICAgKFdlYkNvcmU6OkxvY2F0aW9uOjpzZXRMb2NhdGlvbik6IERpdHRvLgor
CisgICAgICAgICogcGxhdGZvcm0vVVJMLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlVSTDo6c2V0
RnJhZ21lbnRJZGVudGlmaWVyKTogVGFrZSBhIFN0cmluZ1ZpZXcgcmF0aGVyIHRoYW4KKyAgICAg
ICAgYSBTdHJpbmcsIHdoaWNoIGlzIG1vcmUgZmxleGlibGUgZm9yIGNhbGxlcnMuIEFsc28gZWxp
bWluYXRlZCBhbiB1bm5lZWRlZAorICAgICAgICBzdHJpbmcgYWxsb2NhdGlvbiB3aGVuIHRoZSBv
bGQgc3RyaW5nIGhhZCBhIGZyYWdtZW50IHRoYXQgaXMgYmVpbmcgcmVwbGFjZWQuCisgICAgICAg
ICogcGxhdGZvcm0vVVJMLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIHJl
cGxheS9SZXBsYXlJbnB1dERpc3BhdGNoTWV0aG9kcy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJ
bml0aWFsTmF2aWdhdGlvbjo6ZGlzcGF0Y2gpOiBQYXNzIHJlZmVyZW5jZS4KKyAgICAgICAgKiBz
dmcvU1ZHRkVJbWFnZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZHRkVJbWFnZUVs
ZW1lbnQ6OnJlcXVlc3RJbWFnZVJlc291cmNlKTogRGl0dG8uCisgICAgICAgICogc3ZnL1NWR0Zv
bnRGYWNlVXJpRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdGb250RmFjZVVyaUVs
ZW1lbnQ6OmxvYWRGb250KTogRGl0dG8uCisgICAgICAgICogc3ZnL1NWR1VzZUVsZW1lbnQuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6U1ZHVXNlRWxlbWVudDo6dXBkYXRlRXh0ZXJuYWxEb2N1bWVu
dCk6IERpdHRvLgorCiAyMDE3LTAxLTE0ICBaYWxhbiBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+
CiAKICAgICAgICAgU21hbGwgY29kZSBjbGVhbnVwIGFmdGVyIHIyMTA3NjAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxv
ZwppbmRleCA4ODZkOWNlYmE4N2Q3MzY5ZWE3YjMyNjlmMzlmYWVlNTFlZTIxODczLi5kZWIwZmI2
MzAwYTg2OTg5MWZhYzlhM2JiNDZlMGQ3YzlhNmU3ZDk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L21hYy9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsODkgQEAKKzIwMTctMDEtMTQgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgor
CisgICAgICAgIFJlbW92ZSBQYXNzUmVmUHRyIGZyb20gImxvYWRlciIgZGlyZWN0b3J5IG9mIFdl
YkNvcmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2
NzA1NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
V2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50Lmg6IFVwZGF0ZWQgZm9yIGNoYW5nZXMgdG8g
Q2hyb21lQ2xpZW50LgorICAgICAgICBBbHNvIG1hZGUgY2xhc3MgZmluYWwgYW5kIG1vc3QgZnVu
Y3Rpb25zIHByaXZhdGUgYW5kIGZpbmFsLgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkNo
cm9tZUNsaWVudC5tbToKKyAgICAgICAgKFdlYkNocm9tZUNsaWVudDo6cnVuT3BlblBhbmVsKTog
VXBkYXRlZCB0byB0YWtlIHJlZmVyZW5jZXMuCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9X
ZWJFZGl0b3JDbGllbnQuaDogVXBkYXRlZCBmb3IgY2hhbmdlcyB0byBFZGl0b3JDbGllbnQuCisg
ICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50Lm1tOgorICAgICAgICAoLVtX
ZWJVbmRvU3RlcCBpbml0V2l0aFVuZG9TdGVwOl0pOiBUYWtlIHJlZmVyZW5jZSBpbnN0ZWFkIG9m
IFBhc3NSZWZQdHIuCisgICAgICAgICgrW1dlYlVuZG9TdGVwIHN0ZXBXaXRoVW5kb1N0ZXA6XSk6
IERpdHRvLgorICAgICAgICAoLVtXZWJVbmRvU3RlcCBzdGVwXSk6IFJldHVybiByZWZlcmVuY2Ug
aW5zdGVhZCBvZiBwb2ludGVyLgorICAgICAgICAoLVtXZWJFZGl0b3JVbmRvVGFyZ2V0IHVuZG9F
ZGl0aW5nOl0pOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisgICAgICAgICgtW1dlYkVkaXRvclVu
ZG9UYXJnZXQgcmVkb0VkaXRpbmc6XSk6IERpdHRvLgorICAgICAgICAoV2ViRWRpdG9yQ2xpZW50
OjpyZWdpc3RlclVuZG9PclJlZG9TdGVwKTogVGFrZSByZWZlcmVuY2UgaW5zdGVhZCBvZgorICAg
ICAgICBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9T
dGVwKTogRGl0dG8uCisgICAgICAgIChXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyUmVkb1N0ZXAp
OiBEaXR0by4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50
Lmg6IFVwZGF0ZWQgZm9yIGNoYW5nZXMgdG8KKyAgICAgICAgRnJhbWVMb2FkZXJDbGllbnQsIG1h
cmtlZCBmdW5jdGlvbnMgZmluYWwgaW5zdGVhZCBvZiBvdmVycmlkZS4KKyAgICAgICAgKiBXZWJD
b3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5tbToKKyAgICAgICAgKFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbik6IFRha2UK
KyAgICAgICAgcG9pbnRlciBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJGcmFt
ZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKTog
RGl0dG8uCisgICAgICAgIChtYWtlRm9ybUZpZWxkVmFsdWVzRGljdGlvbmFyeSk6IFRha2UgYSBy
ZWZlcmVuY2UuCisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2Vu
ZFN1Ym1pdEV2ZW50KTogVGFrZSBSZWYmJiBpbnN0ZWFkCisgICAgICAgIG9mIFBhc3NSZWZQdHIu
CisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybSk6
IFRha2UgYSByZWZlcmVuY2UgaW5zdGVhZAorICAgICAgICBvZiBQYXNzUmVmUHRyLgorICAgICAg
ICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmFjdGlvbkRpY3Rpb25hcnkpOiBUYWtlIGEgcG9pbnRl
ciBpbnN0ZWFkIG9mIFBhc3NSZVB0ci4KKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpj
cmVhdGVGcmFtZSk6IFRha2UgYSByZWZlcmVuY2UgaW5zdGVhZCBvZiBhIHBvaW50ZXIuCisgICAg
ICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlUGx1Z2luKTogRGl0dG8uCisgICAgICAg
IChXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlSmF2YUFwcGxldFdpZGdldCk6IERpdHRvLgor
ICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KTog
RGl0dG8uCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250
ZXh0Lmg6IFVzZSBSZWYgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAqIFdlYkNvcmVT
dXBwb3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQubW06IFR3ZWFrIHN0eWxlIGEgYml0Lgor
CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIuaDog
VGFrZSBhIHJlZmVyZW5jZSBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIuIFVzZSBSZWZQ
dHIgZm9yIGNsYXNzIGZpZWxkLgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYk9wZW5QYW5l
bFJlc3VsdExpc3RlbmVyLm1tOgorICAgICAgICAoLVtXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5l
ciBkZWFsbG9jXSk6IERlbGV0ZWQuIENvbXBpbGVyIHdpbGwgbm93IGRvIGl0CisgICAgICAgIGNv
cnJlY3RseSB3aXRob3V0IHVzIGRlY2xhcmluZyBhbnl0aGluZyBleHBsaWNpdGx5LgorICAgICAg
ICAoLVtXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lciBjYW5jZWxdKTogR2V0IHJpZCBvZiBoYW5k
LXdyaXR0ZW4gZGVyZWYgY29kZSwKKyAgICAgICAgYW5kIGxldCBSZWZQdHIgZG8gdGhlIHdvcmsu
CisgICAgICAgICgtW1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyIGNob29zZUZpbGVuYW1lOl0p
OiBEaXR0by4KKyAgICAgICAgKC1bV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIgY2hvb3NlRmls
ZW5hbWVzOl0pOiBEaXR0by4KKyAgICAgICAgKC1bV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIg
Y2hvb3NlRmlsZW5hbWVzOmRpc3BsYXlTdHJpbmc6aWNvbkltYWdlOl0pOgorICAgICAgICBSZXdy
b3RlIHRvIHVzZSBhIG1vZGVybiBPYmplY3RpdmUtQyBmb3IgbG9vcCwgcmVzZXJ2ZUluaXRpYWxD
YXBhY2l0eSwKKyAgICAgICAgYW5kIHVuY2hlY2tlZEFwcGVuZC4KKworICAgICAgICAqIFdlYlZp
ZXcvV2ViQXJjaGl2ZS5tbToKKyAgICAgICAgKC1bV2ViQXJjaGl2ZSBpbml0V2l0aE1haW5SZXNv
dXJjZTpzdWJyZXNvdXJjZXM6c3ViZnJhbWVBcmNoaXZlczpdKToKKyAgICAgICAgVXBkYXRlZCBm
b3IgY2hhbmdlcyB0byBMZWdhY3lXZWJBcmNoaXZlLgorICAgICAgICAoLVtXZWJBcmNoaXZlIG1h
aW5SZXNvdXJjZV0pOiBEaXR0by4KKyAgICAgICAgKC1bV2ViQXJjaGl2ZSBzdWJyZXNvdXJjZXNd
KTogRGl0dG8uCisgICAgICAgICgtW1dlYkFyY2hpdmUgc3ViZnJhbWVBcmNoaXZlc10pOiBEaXR0
by4KKworICAgICAgICAqIFdlYlZpZXcvV2ViRGF0YVNvdXJjZS5tbToKKyAgICAgICAgKC1bV2Vi
RGF0YVNvdXJjZSBfYWRkU3ViZnJhbWVBcmNoaXZlczpdKTogVXNlIGEgbW9kZXJuIE9iamVjdGl2
ZS1DIGZvciBsb29wCisgICAgICAgIGluc3RlYWQgb2YgTlNFbnVtZXJhdG9yLgorICAgICAgICAo
LVtXZWJEYXRhU291cmNlIF9maWxlV3JhcHBlckZvclVSTDpdKTogVXNlIGF1dG8uCisgICAgICAg
ICgtW1dlYkRhdGFTb3VyY2UgX2RvY3VtZW50RnJhZ21lbnRXaXRoQXJjaGl2ZTpdKTogUGFzcyBh
IHJlZmVyZW5jZS4KKyAgICAgICAgKC1bV2ViRGF0YVNvdXJjZSBtYWluUmVzb3VyY2VdKTogRGl0
dG8uCisgICAgICAgICgtW1dlYkRhdGFTb3VyY2Ugc3VicmVzb3VyY2VzXSk6IERpdHRvLgorICAg
ICAgICAoLVtXZWJEYXRhU291cmNlIHN1YnJlc291cmNlRm9yVVJMOl0pOiBEaXR0by4KKyAgICAg
ICAgKC1bV2ViRGF0YVNvdXJjZSBhZGRTdWJyZXNvdXJjZTpdKTogRGl0dG8uCisKKyAgICAgICAg
KiBXZWJWaWV3L1dlYlJlc291cmNlLm1tOgorICAgICAgICAoLVtXZWJSZXNvdXJjZVByaXZhdGUg
aW5pdFdpdGhDb3JlUmVzb3VyY2U6XSk6IFRha2UgUmVmJiYgaW5zdGVhZCBvZiBQYXNzUmVmUHRy
LgorICAgICAgICAoLVtXZWJSZXNvdXJjZVByaXZhdGUgZGVhbGxvY10pOiBSZW1vdmUgZXhwbGlj
aXQgZGVyZWYgc2luY2UgUmVmUHRyIHdpbGwgbm93IHRha2UKKyAgICAgICAgY2FyZSBvZiBpdAor
ICAgICAgICAoLVtXZWJSZXNvdXJjZSBpbml0V2l0aENvZGVyOl0pOiBQYXNzIGEgcmVmZXJlbmNl
LgorICAgICAgICAoLVtXZWJSZXNvdXJjZSBlbmNvZGVXaXRoQ29kZXI6XSk6IFVwZGF0ZWQgc2lu
Y2UgY29yZVJlc291cmNlIGlzIG5vdyBSZWZQdHIuCisgICAgICAgICgtW1dlYlJlc291cmNlIF9p
bml0V2l0aENvcmVSZXNvdXJjZTpdKTogVGFrZSBSZWYmJiBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIu
CisgICAgICAgICgtW1dlYlJlc291cmNlIF9jb3JlUmVzb3VyY2VdKTogUmV0dXJuIHJlZmVyZW5j
ZSByYXRoZXIgdGhhbiBwb2ludGVyLgorICAgICAgICAoLVtXZWJSZXNvdXJjZSBfaW5pdFdpdGhE
YXRhOlVSTDpNSU1FVHlwZTp0ZXh0RW5jb2RpbmdOYW1lOmZyYW1lTmFtZTpyZXNwb25zZTpjb3B5
RGF0YTpdKToKKyAgICAgICAgQWRkZWQgY29kZSB0byBoYW5kbGUgdGhlIG51bGwgY2FzZSBhbmQg
cGFzcyBhIHJlZmVyZW5jZSByYXRoZXIgdGhhbiBhIHBvaW50ZXIuCisgICAgICAgICogV2ViVmll
dy9XZWJSZXNvdXJjZUludGVybmFsLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKwogMjAxNy0w
MS0xMyAgSm9zZXBoIFBlY29yYXJvICA8cGVjb3Jhcm9AYXBwbGUuY29tPgogCiAgICAgICAgIFJl
bW92ZSBFTkFCTEUoREVUQUlMU19FTEVNRU5UKSBndWFyZHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCA3Yjg5M2Ix
MmRhMDQzMzA1N2ZjYjAyYTMzZTkzYTNjZjE5NmVhNDVmLi4zNjA3YzdkMGUxMzViNDk0YzMxODBi
ODAwMzA3ZDE3NzhlNzUyOWRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cK
KysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTE0IEBACisyMDE3LTAx
LTE0ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgUGFz
c1JlZlB0ciBmcm9tICJsb2FkZXIiIGRpcmVjdG9yeSBvZiBXZWJDb3JlCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjcwNTUKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNoYXJlZC9BUElXZWJBcmNoaXZl
Lmg6IFVzZSBSZWZQdHImJiBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgICogU2hhcmVk
L0FQSVdlYkFyY2hpdmUubW06CisgICAgICAgIChBUEk6OldlYkFyY2hpdmU6OmNyZWF0ZSk6IERp
dHRvLgorICAgICAgICAoQVBJOjpXZWJBcmNoaXZlOjpXZWJBcmNoaXZlKTogRGl0dG8uCisgICAg
ICAgIChBUEk6OldlYkFyY2hpdmU6OnN1YnJlc291cmNlcyk6IERpdHRvLgorICAgICAgICAoQVBJ
OjpXZWJBcmNoaXZlOjpzdWJmcmFtZUFyY2hpdmVzKTogRGl0dG8uCisKKyAgICAgICAgKiBTaGFy
ZWQvVGV4dENoZWNrZXJTdGF0ZS5oOiBJbml0aWFsaXplIGRhdGEgbWVtYmVycyBzbyBjbGFzc2Vz
CisgICAgICAgIHVzaW5nIHRoaXMgd29uJ3QgaGF2ZSB0byBleHBsaWNpdGx5IGluaXRhbGl6ZSB0
aGVtLgorCisgICAgICAgICogVUlQcm9jZXNzL1dlYkljb25EYXRhYmFzZS5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYkljb25EYXRhYmFzZTo6c2V0SWNvbkRhdGFGb3JJY29uVVJMKTogUGFzcyBh
IHJhdworICAgICAgICBwb2ludGVyIHRvIFdlYkNvcmUuCisKKyAgICAgICAgKiBVSVByb2Nlc3Mv
V2ViUGFnZVByb3h5Lmg6IFJlbW92ZWQgZm9yd2FyZCBkZWNsYXJhdGlvbiBvZgorICAgICAgICBT
dHJpbmdQYWlyVmVjdG9yLCBub3QgbmVlZGVkIGhlcmUuCisKKyAgICAgICAgKiBXZWJQcm9jZXNz
L0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6
OldlYkljb25EYXRhYmFzZVByb3h5OjpXZWJJY29uRGF0YWJhc2VQcm94eSk6IFRha2UgYSByZWZl
cmVuY2UuCisgICAgICAgIChXZWJLaXQ6OldlYkljb25EYXRhYmFzZVByb3h5OjpyZXRhaW5JY29u
Rm9yUGFnZVVSTCk6IFVwZGF0ZWQgZm9yIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYktpdDo6V2Vi
SWNvbkRhdGFiYXNlUHJveHk6OnJlbGVhc2VJY29uRm9yUGFnZVVSTCk6IERpdHRvLgorICAgICAg
ICAoV2ViS2l0OjpXZWJJY29uRGF0YWJhc2VQcm94eTo6c3luY2hyb25vdXNJY29uRm9yUGFnZVVS
TCk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJJY29uRGF0YWJhc2VQcm94eTo6bG9hZERl
Y2lzaW9uRm9ySWNvblVSTCk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJJY29uRGF0YWJh
c2VQcm94eTo6cmVjZWl2ZWRJY29uTG9hZERlY2lzaW9uKTogRGl0dG8uCisgICAgICAgIChXZWJL
aXQ6OldlYkljb25EYXRhYmFzZVByb3h5OjppY29uRGF0YUZvckljb25VUkwpOiBEaXR0by4KKyAg
ICAgICAgKFdlYktpdDo6V2ViSWNvbkRhdGFiYXNlUHJveHk6OnNldEljb25VUkxGb3JQYWdlVVJM
KTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkljb25EYXRhYmFzZVByb3h5OjpzZXRJY29u
RGF0YUZvckljb25VUkwpOiBEaXR0by4KKyAgICAgICAgKiBXZWJQcm9jZXNzL0ljb25EYXRhYmFz
ZS9XZWJJY29uRGF0YWJhc2VQcm94eS5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisgICAgICAg
IE1hcmtlZCB0aGUgY2xhc3MgZmluYWwsIG1hZGUgbW9zdCBmdW5jdGlvbnMgcHJpdmF0ZSBhbmQg
ZmluYWwuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVu
ZGxlTmF2aWdhdGlvbkFjdGlvbi5jcHA6CisgICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxl
TmF2aWdhdGlvbkFjdGlvbjo6SW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uKToKKyAgICAg
ICAgUmVtb3ZlZCBhc3NlcnRpb24gdGhhdCBhIHBvaW50ZXIgaXMgbm9uLW51bGwgc2luY2UgdGhh
dCBwb2ludGVyIGlzIG5vdyBhCisgICAgICAgIHJlZmVyZW5jZS4gTGVmdCB1c2Ugb2YgUGFzc1Jl
ZlB0ciBoZXJlIGZvciBub3cuegorCisgICAgICAgICogV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYkxv
YWRlclN0cmF0ZWd5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViTG9hZGVyU3RyYXRlZ3k6OnNj
aGVkdWxlTG9hZCk6IFVwZGF0ZWQgc2luY2UgYXBwbGljYXRpb24gY2FjaGUKKyAgICAgICAgaG9z
dCBpcyBub3cgYSByZWZlcmVuY2UgcmF0aGVyIHRobmEgYSBwb2ludGVyLgorICAgICAgICAqIFdl
YlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJLaXQ6
OldlYlJlc291cmNlTG9hZGVyOjp3aWxsU2VuZFJlcXVlc3QpOiBEaXR0by4KKyAgICAgICAgKFdl
YktpdDo6V2ViUmVzb3VyY2VMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZSk6IERpdHRvLgorICAg
ICAgICAoV2ViS2l0OjpXZWJSZXNvdXJjZUxvYWRlcjo6ZGlkRmFpbFJlc291cmNlTG9hZCk6IERp
dHRvLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpidWlsZEhUVFBIZWFkZXJzKTogR290IHJpZCBvZiB1bm5lZWRlZCB1c2Ug
b2YgU3RyaW5nOjpmb3JtYXQuCisgICAgICAgIChXZWJLaXQ6OlBsdWdpblZpZXc6OmNyZWF0ZSk6
IFRha2UgYSByZWZlcmVuY2UgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViS2l0
OjpQbHVnaW5WaWV3OjpQbHVnaW5WaWV3KTogRGl0dG8uIEFsc28gbW92ZWQgbXVjaCBvZiB0aGUg
ZGF0YQorICAgICAgICBtZW1iZXIgaW5pdGlhbGl6YXRpb24gdG8gdGhlIGNsYXNzIGRlZmluaXRp
b24uCisgICAgICAgIChXZWJLaXQ6OlBsdWdpblZpZXc6OnJlY3JlYXRlQW5kSW5pdGlhbGl6ZSk6
IFRha2UgUmVmJiYgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViS2l0OjpQbHVn
aW5WaWV3OjptYW51YWxMb2FkRGlkUmVjZWl2ZVJlc3BvbnNlKTogVXBkYXRlZCBmb3IgY2hhbmdl
IHRvCisgICAgICAgIE1hbnVhbFN0cmVhbVN0YXRlIGVudW1lcmF0aW9uLgorICAgICAgICAoV2Vi
S2l0OjpQbHVnaW5WaWV3OjptYW51YWxMb2FkRGlkUmVjZWl2ZURhdGEpOiBEaXR0by4KKyAgICAg
ICAgKFdlYktpdDo6UGx1Z2luVmlldzo6bWFudWFsTG9hZERpZEZpbmlzaExvYWRpbmcgRGl0dG8u
KToKKyAgICAgICAgKFdlYktpdDo6UGx1Z2luVmlldzo6bWFudWFsTG9hZERpZEZhaWwpOiBEaXR0
by4KKyAgICAgICAgKFdlYktpdDo6UGx1Z2luVmlldzo6bGl2ZVJlc291cmNlRGF0YSk6IFJldHVy
biBSZWZQdHIgaW5zZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJLaXQ6OlBsdWdpblZp
ZXc6OnJlZGVsaXZlck1hbnVhbFN0cmVhbSk6IFVwZGF0ZWQgZm9yIE1hbnVhbFN0cmVhbVN0YXRl
LgorICAgICAgICAqIFdlYlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3Lmg6IFVwZGF0ZWQgZm9y
IHRoZSBhYm92ZS4gQWxzbyBjaGFuZ2VkCisgICAgICAgIE1hbnVhbFN0cmVhbVN0YXRlIGludG8g
YW4gZW51bSBjbGFzcy4KKworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2Vi
Q2hyb21lQ2xpZW50LmNwcDogQ2hhbmdlZCBtX3BhZ2UgdG8gYSByZWZlcmVuY2UuCisgICAgICAg
IChXZWJLaXQ6OldlYkNocm9tZUNsaWVudDo6cnVuT3BlblBhbmVsKTogVGFrZSBib3RoIGFyZ3Vt
ZW50cyBhcyByZWZlcmVuY2VzLgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
V2ViQ2hyb21lQ2xpZW50Lmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIFdl
YlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmNwcDoKKyAgICAgICAgKFdl
YktpdDo6V2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9TdGVwKTogVGFrZSByZWZlcmVuY2Ug
aW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViS2l0OjpXZWJFZGl0b3JDbGllbnQ6
OnJlZ2lzdGVyUmVkb1N0ZXApOiBEaXR0by4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L1dlYkVkaXRvckNsaWVudC5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUKKworICAgICAg
ICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xp
Y3lGb3JOZXdXaW5kb3dBY3Rpb24pOgorICAgICAgICBVcGRhdGVkIGZvciBjaGFuZ2UgdG8gRnJh
bWVMb2FkZXJDbGllbnQuCisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50Ojpk
aXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24pOiBEaXR0by4KKyAgICAgICAg
KFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVu
dCk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0
Y2hXaWxsU3VibWl0Rm9ybSk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRl
ckNsaWVudDo6Y3JlYXRlRnJhbWUpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbik6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJG
cmFtZUxvYWRlckNsaWVudDo6cmVjcmVhdGVQbHVnaW4pOiBEaXR0by4KKyAgICAgICAgKFdlYktp
dDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQpOiBEaXR0by4K
KyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtpbmdD
b250ZXh0KTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50Ojpk
aWRSZXF1ZXN0QXV0b2NvbXBsZXRlKTogRGl0dG8uCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUu
CisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChX
ZWJLaXQ6OldlYlBhZ2U6OldlYlBhZ2UpOiBQYXNzIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYktp
dDo6V2ViUGFnZTo6Y3JlYXRlUGx1Z2luKTogUmV0dXJuIFJlZlB0ciBpbnN0ZWFkIG9mIFBhc3NS
ZWZQdHIuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OmZyb21Db3JlUGFnZSk6IFVwZGF0ZWQg
Zm9yIGNoYW5nZSB0byBXZWJDaHJvbWVDbGllbnQuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6
OnNldEhlYWRlclBhZ2VCYW5uZXIpOiBUYWtlIHBvaW50ZXIgaW5zdGVhZCBvZiBQYXNzUmVmUHRy
LgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpzZXRGb290ZXJQYWdlQmFubmVyKTogRGl0dG8u
CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnNldEFjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3Rl
bmVyKTogVGFrZSBSZWYmJiBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIuCisgICAgICAg
IChXZWJLaXQ6OldlYlBhZ2U6OmN1cnJlbnRTZWxlY3Rpb25Bc1JhbmdlKTogUmV0dXJuIFJlZlB0
ciBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnJhbmdl
RnJvbUVkaXRpbmdSYW5nZSk6IERpdHRvLgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJQYWdlLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIFdlYlByb2Nlc3Mv
V2ViUGFnZS9tYWMvV2ViUGFnZU1hYy5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6Y2Fj
aGVkUmVzcG9uc2VEYXRhRm9yVVJMKTogUmV0dXJuIFJlZlB0ciBpbnN0ZWFkIG9mIFBhc3NSZWZQ
dHIuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnNldFRvcE92ZXJoYW5nSW1hZ2UpOiBUYWtl
IHJhdyBwb2ludGVyIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYktpdDo6V2Vi
UGFnZTo6c2V0Qm90dG9tT3ZlcmhhbmdJbWFnZSk6IERpdHRvLgorCisgICAgICAgICogV2ViUHJv
Y2Vzcy9XZWJQcm9jZXNzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzczo6V2ViUHJv
Y2Vzcyk6IFBhc3MgYSByZWZlcmVuY2UuIE1vdmUgbW9zdCBpbml0aWFsaXphdGlvbiB0bworICAg
ICAgICB0aGUgY2xhc3MgZGVmaW5pdGlvbi4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlByb2Nl
c3MuaDogVXBkYWVkIGZvciB0aGUgYWJvdmUuCisKIDIwMTctMDEtMTQgIFRpbSBIb3J0b24gIDx0
aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIHVudXNlZCBXS1ZpZXcg
aW5pdGlhbGl6ZXIgcGFyYW1ldGVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9j
dW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAppbmRleCAyOWRlMzcx
MjRjZGE1MWE4YmMwYjIyZWE1MDVhNTdhZDg4ZTI5Njc2Li41NmE3OWY0NDNhYjI5N2JhMjBkMzQz
ZDIzZDUxNDVjYmEwZGU0ZjM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1l
bnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKQEAgLTMxMzcsNyAr
MzEzNyw3IEBAIHZvaWQgRG9jdW1lbnQ6OnByb2Nlc3NIdHRwRXF1aXYoY29uc3QgU3RyaW5nJiBl
cXVpdiwgY29uc3QgU3RyaW5nJiBjb250ZW50LCBib29sCiAgICAgICAgICAgICBlbHNlCiAgICAg
ICAgICAgICAgICAgY29tcGxldGVkVVJMID0gY29tcGxldGVVUkwodXJsU3RyaW5nKTsKICAgICAg
ICAgICAgIGlmICghcHJvdG9jb2xJc0phdmFTY3JpcHQoY29tcGxldGVkVVJMKSkKLSAgICAgICAg
ICAgICAgICBmcmFtZS0+bmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlUmVkaXJlY3QodGhp
cywgZGVsYXksIGNvbXBsZXRlZFVSTCk7CisgICAgICAgICAgICAgICAgZnJhbWUtPm5hdmlnYXRp
b25TY2hlZHVsZXIoKS5zY2hlZHVsZVJlZGlyZWN0KCp0aGlzLCBkZWxheSwgY29tcGxldGVkVVJM
KTsKICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgIFN0cmluZyBtZXNzYWdlID0g
IlJlZnVzZWQgdG8gcmVmcmVzaCAiICsgbV91cmwuc3RyaW5nQ2VudGVyRWxsaXBzaXplZFRvTGVu
Z3RoKCkgKyAiIHRvIGEgamF2YXNjcmlwdDogVVJMIjsKICAgICAgICAgICAgICAgICBhZGRDb25z
b2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpTZWN1cml0eSwgTWVzc2FnZUxldmVsOjpFcnJvciwg
bWVzc2FnZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0NvbXBvc2l0ZUVk
aXRDb21tYW5kLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1h
bmQuY3BwCmluZGV4IGNjZTljYWFlYzFhMDFlZTlmNDhiM2FkYTU4MmFmYTJhNzExYzYxODAuLmY3
ZmQ0ODQ4YjdlODM2M2UxZDliMDFlYTM5Nzc4YWJiNWJjOGQ0ODUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuY3BwCkBAIC0yMzksNyArMjM5LDcg
QEAgdm9pZCBFZGl0Q29tbWFuZENvbXBvc2l0aW9uOjp1bmFwcGx5KCkKICAgICBmb3IgKHNpemVf
dCBpID0gc2l6ZTsgaTsgLS1pKQogICAgICAgICBtX2NvbW1hbmRzW2kgLSAxXS0+ZG9VbmFwcGx5
KCk7CiAKLSAgICBmcmFtZS0+ZWRpdG9yKCkudW5hcHBsaWVkRWRpdGluZyh0aGlzKTsKKyAgICBm
cmFtZS0+ZWRpdG9yKCkudW5hcHBsaWVkRWRpdGluZygqdGhpcyk7CiAKICAgICBpZiAoQVhPYmpl
Y3RDYWNoZTo6YWNjZXNzaWJpbGl0eUVuYWJsZWQoKSkKICAgICAgICAgbV9yZXBsYWNlZFRleHQu
cG9zdFRleHRTdGF0ZUNoYW5nZU5vdGlmaWNhdGlvbkZvclVuYXBwbHkobV9kb2N1bWVudC0+ZXhp
c3RpbmdBWE9iamVjdENhY2hlKCkpOwpAQCAtMjY1LDcgKzI2NSw3IEBAIHZvaWQgRWRpdENvbW1h
bmRDb21wb3NpdGlvbjo6cmVhcHBseSgpCiAgICAgZm9yIChhdXRvJiBjb21tYW5kIDogbV9jb21t
YW5kcykKICAgICAgICAgY29tbWFuZC0+ZG9SZWFwcGx5KCk7CiAKLSAgICBmcmFtZS0+ZWRpdG9y
KCkucmVhcHBsaWVkRWRpdGluZyh0aGlzKTsKKyAgICBmcmFtZS0+ZWRpdG9yKCkucmVhcHBsaWVk
RWRpdGluZygqdGhpcyk7CiAKICAgICBpZiAoQVhPYmplY3RDYWNoZTo6YWNjZXNzaWJpbGl0eUVu
YWJsZWQoKSkKICAgICAgICAgbV9yZXBsYWNlZFRleHQucG9zdFRleHRTdGF0ZUNoYW5nZU5vdGlm
aWNhdGlvbkZvclJlYXBwbHkobV9kb2N1bWVudC0+ZXhpc3RpbmdBWE9iamVjdENhY2hlKCkpOwpA
QCAtNDE2LDE0ICs0MTYsMTQgQEAgRWRpdENvbW1hbmRDb21wb3NpdGlvbiogQ29tcG9zaXRlRWRp
dENvbW1hbmQ6OmNvbXBvc2l0aW9uKCkgY29uc3QKICAgICByZXR1cm4gbnVsbHB0cjsKIH0KIAot
RWRpdENvbW1hbmRDb21wb3NpdGlvbiogQ29tcG9zaXRlRWRpdENvbW1hbmQ6OmVuc3VyZUNvbXBv
c2l0aW9uKCkKK0VkaXRDb21tYW5kQ29tcG9zaXRpb24mIENvbXBvc2l0ZUVkaXRDb21tYW5kOjpl
bnN1cmVDb21wb3NpdGlvbigpCiB7Ci0gICAgQ29tcG9zaXRlRWRpdENvbW1hbmQqIGNvbW1hbmQg
PSB0aGlzOwotICAgIHdoaWxlIChjb21tYW5kICYmIGNvbW1hbmQtPnBhcmVudCgpKQotICAgICAg
ICBjb21tYW5kID0gY29tbWFuZC0+cGFyZW50KCk7CisgICAgYXV0byogY29tbWFuZCA9IHRoaXM7
CisgICAgd2hpbGUgKGF1dG8qIHBhcmVudCA9IGNvbW1hbmQtPnBhcmVudCgpKQorICAgICAgICBj
b21tYW5kID0gcGFyZW50OwogICAgIGlmICghY29tbWFuZC0+bV9jb21wb3NpdGlvbikKICAgICAg
ICAgY29tbWFuZC0+bV9jb21wb3NpdGlvbiA9IEVkaXRDb21tYW5kQ29tcG9zaXRpb246OmNyZWF0
ZShkb2N1bWVudCgpLCBzdGFydGluZ1NlbGVjdGlvbigpLCBlbmRpbmdTZWxlY3Rpb24oKSwgZWRp
dGluZ0FjdGlvbigpKTsKLSAgICByZXR1cm4gY29tbWFuZC0+bV9jb21wb3NpdGlvbi5nZXQoKTsK
KyAgICByZXR1cm4gKmNvbW1hbmQtPm1fY29tcG9zaXRpb247CiB9CiAKIGJvb2wgQ29tcG9zaXRl
RWRpdENvbW1hbmQ6OmlzQ3JlYXRlTGlua0NvbW1hbmQoKSBjb25zdApAQCAtNDY1LDcgKzQ2NSw3
IEBAIHZvaWQgQ29tcG9zaXRlRWRpdENvbW1hbmQ6OmFwcGx5Q29tbWFuZFRvQ29tcG9zaXRlKFBh
c3NSZWZQdHI8RWRpdENvbW1hbmQ+IHBycENvCiAgICAgY29tbWFuZC0+ZG9BcHBseSgpOwogICAg
IGlmIChjb21tYW5kLT5pc1NpbXBsZUVkaXRDb21tYW5kKCkpIHsKICAgICAgICAgY29tbWFuZC0+
c2V0UGFyZW50KG51bGxwdHIpOwotICAgICAgICBlbnN1cmVDb21wb3NpdGlvbigpLT5hcHBlbmQo
dG9TaW1wbGVFZGl0Q29tbWFuZChjb21tYW5kLmdldCgpKSk7CisgICAgICAgIGVuc3VyZUNvbXBv
c2l0aW9uKCkuYXBwZW5kKHRvU2ltcGxlRWRpdENvbW1hbmQoY29tbWFuZC5nZXQoKSkpOwogICAg
IH0KICAgICBtX2NvbW1hbmRzLmFwcGVuZChXVEZNb3ZlKGNvbW1hbmQpKTsKIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuaCBiL1NvdXJj
ZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuaAppbmRleCA4NWY0MThmN2Ri
OTE3Y2NmMDE0OGE2Zjc0ZWJjMzhiZWIwNTAzOWIxLi4wMjIxZGM5OTljY2ZlNmZjNTliMTgxYTlm
Zjc4MDk5YjZlMzVmM2I3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0NvbXBv
c2l0ZUVkaXRDb21tYW5kLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9Db21wb3NpdGVF
ZGl0Q29tbWFuZC5oCkBAIC0xMDUsNyArMTA1LDcgQEAgcHVibGljOgogICAgIHZvaWQgYXBwbHko
KTsKICAgICBib29sIGlzRmlyc3RDb21tYW5kKEVkaXRDb21tYW5kKiBjb21tYW5kKSB7IHJldHVy
biAhbV9jb21tYW5kcy5pc0VtcHR5KCkgJiYgbV9jb21tYW5kcy5maXJzdCgpID09IGNvbW1hbmQ7
IH0KICAgICBFZGl0Q29tbWFuZENvbXBvc2l0aW9uKiBjb21wb3NpdGlvbigpIGNvbnN0OwotICAg
IEVkaXRDb21tYW5kQ29tcG9zaXRpb24qIGVuc3VyZUNvbXBvc2l0aW9uKCk7CisgICAgRWRpdENv
bW1hbmRDb21wb3NpdGlvbiYgZW5zdXJlQ29tcG9zaXRpb24oKTsKIAogICAgIHZpcnR1YWwgYm9v
bCBpc0NyZWF0ZUxpbmtDb21tYW5kKCkgY29uc3Q7CiAgICAgdmlydHVhbCBib29sIGlzVHlwaW5n
Q29tbWFuZCgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0
b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCmluZGV4IDRkMzg0MWI2
YjAxNzQxMzM3ZTMzZDIwMzE5OGI3NjUzZmZjM2M3ZjMuLjlmOTc3NzQxOWEyNDA1ZjVlY2Q0ZWRj
Mzg3YzgxYjc0NjY4MTFmNmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRp
dG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5jcHAKQEAgLTk5NSwy
MyArOTk1LDIzIEBAIGJvb2wgRWRpdG9yOjp3aWxsVW5hcHBseUVkaXRpbmcoY29uc3QgRWRpdENv
bW1hbmRDb21wb3NpdGlvbiYgY29tcG9zaXRpb24pIGNvbnN0CiAgICAgcmV0dXJuIGRpc3BhdGNo
QmVmb3JlSW5wdXRFdmVudHMoY29tcG9zaXRpb24uc3RhcnRpbmdSb290RWRpdGFibGVFbGVtZW50
KCksIGNvbXBvc2l0aW9uLmVuZGluZ1Jvb3RFZGl0YWJsZUVsZW1lbnQoKSwgImhpc3RvcnlVbmRv
Iik7CiB9CiAKLXZvaWQgRWRpdG9yOjp1bmFwcGxpZWRFZGl0aW5nKFBhc3NSZWZQdHI8RWRpdENv
bW1hbmRDb21wb3NpdGlvbj4gY21kKQordm9pZCBFZGl0b3I6OnVuYXBwbGllZEVkaXRpbmcoRWRp
dENvbW1hbmRDb21wb3NpdGlvbiYgY29tcG9zaXRpb24pCiB7CiAgICAgZG9jdW1lbnQoKS51cGRh
dGVMYXlvdXQoKTsKIAotICAgIG5vdGlmeVRleHRGcm9tQ29udHJvbHMoY21kLT5zdGFydGluZ1Jv
b3RFZGl0YWJsZUVsZW1lbnQoKSwgY21kLT5lbmRpbmdSb290RWRpdGFibGVFbGVtZW50KCkpOwor
ICAgIG5vdGlmeVRleHRGcm9tQ29udHJvbHMoY29tcG9zaXRpb24uc3RhcnRpbmdSb290RWRpdGFi
bGVFbGVtZW50KCksIGNvbXBvc2l0aW9uLmVuZGluZ1Jvb3RFZGl0YWJsZUVsZW1lbnQoKSk7CiAK
LSAgICBWaXNpYmxlU2VsZWN0aW9uIG5ld1NlbGVjdGlvbihjbWQtPnN0YXJ0aW5nU2VsZWN0aW9u
KCkpOworICAgIFZpc2libGVTZWxlY3Rpb24gbmV3U2VsZWN0aW9uKGNvbXBvc2l0aW9uLnN0YXJ0
aW5nU2VsZWN0aW9uKCkpOwogICAgIGNoYW5nZVNlbGVjdGlvbkFmdGVyQ29tbWFuZChuZXdTZWxl
Y3Rpb24sIEZyYW1lU2VsZWN0aW9uOjpkZWZhdWx0U2V0U2VsZWN0aW9uT3B0aW9ucygpKTsKLSAg
ICBkaXNwYXRjaElucHV0RXZlbnRzKGNtZC0+c3RhcnRpbmdSb290RWRpdGFibGVFbGVtZW50KCks
IGNtZC0+ZW5kaW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCAiaGlzdG9yeVVuZG8iKTsKKyAgICBk
aXNwYXRjaElucHV0RXZlbnRzKGNvbXBvc2l0aW9uLnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVu
dCgpLCBjb21wb3NpdGlvbi5lbmRpbmdSb290RWRpdGFibGVFbGVtZW50KCksICJoaXN0b3J5VW5k
byIpOwogCiAgICAgdXBkYXRlRWRpdG9yVUlOb3dJZlNjaGVkdWxlZCgpOwogCi0gICAgbV9hbHRl
cm5hdGl2ZVRleHRDb250cm9sbGVyLT5yZXNwb25kVG9VbmFwcGxpZWRFZGl0aW5nKGNtZC5nZXQo
KSk7CisgICAgbV9hbHRlcm5hdGl2ZVRleHRDb250cm9sbGVyLT5yZXNwb25kVG9VbmFwcGxpZWRF
ZGl0aW5nKCZjb21wb3NpdGlvbik7CiAKICAgICBtX2xhc3RFZGl0Q29tbWFuZCA9IG51bGxwdHI7
Ci0gICAgaWYgKGNsaWVudCgpKQotICAgICAgICBjbGllbnQoKS0+cmVnaXN0ZXJSZWRvU3RlcChj
bWQpOworICAgIGlmIChhdXRvKiBjbGllbnQgPSB0aGlzLT5jbGllbnQoKSkKKyAgICAgICAgY2xp
ZW50LT5yZWdpc3RlclJlZG9TdGVwKGNvbXBvc2l0aW9uKTsKICAgICByZXNwb25kVG9DaGFuZ2Vk
Q29udGVudHMobmV3U2VsZWN0aW9uKTsKIH0KIApAQCAtMTAyMCwyMSArMTAyMCwyMSBAQCBib29s
IEVkaXRvcjo6d2lsbFJlYXBwbHlFZGl0aW5nKGNvbnN0IEVkaXRDb21tYW5kQ29tcG9zaXRpb24m
IGNvbXBvc2l0aW9uKSBjb25zdAogICAgIHJldHVybiBkaXNwYXRjaEJlZm9yZUlucHV0RXZlbnRz
KGNvbXBvc2l0aW9uLnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCBjb21wb3NpdGlvbi5l
bmRpbmdSb290RWRpdGFibGVFbGVtZW50KCksICJoaXN0b3J5UmVkbyIpOwogfQogCi12b2lkIEVk
aXRvcjo6cmVhcHBsaWVkRWRpdGluZyhQYXNzUmVmUHRyPEVkaXRDb21tYW5kQ29tcG9zaXRpb24+
IGNtZCkKK3ZvaWQgRWRpdG9yOjpyZWFwcGxpZWRFZGl0aW5nKEVkaXRDb21tYW5kQ29tcG9zaXRp
b24mIGNvbXBvc2l0aW9uKQogewogICAgIGRvY3VtZW50KCkudXBkYXRlTGF5b3V0KCk7CiAKLSAg
ICBub3RpZnlUZXh0RnJvbUNvbnRyb2xzKGNtZC0+c3RhcnRpbmdSb290RWRpdGFibGVFbGVtZW50
KCksIGNtZC0+ZW5kaW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpKTsKKyAgICBub3RpZnlUZXh0RnJv
bUNvbnRyb2xzKGNvbXBvc2l0aW9uLnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCBjb21w
b3NpdGlvbi5lbmRpbmdSb290RWRpdGFibGVFbGVtZW50KCkpOwogCi0gICAgVmlzaWJsZVNlbGVj
dGlvbiBuZXdTZWxlY3Rpb24oY21kLT5lbmRpbmdTZWxlY3Rpb24oKSk7CisgICAgVmlzaWJsZVNl
bGVjdGlvbiBuZXdTZWxlY3Rpb24oY29tcG9zaXRpb24uZW5kaW5nU2VsZWN0aW9uKCkpOwogICAg
IGNoYW5nZVNlbGVjdGlvbkFmdGVyQ29tbWFuZChuZXdTZWxlY3Rpb24sIEZyYW1lU2VsZWN0aW9u
OjpkZWZhdWx0U2V0U2VsZWN0aW9uT3B0aW9ucygpKTsKLSAgICBkaXNwYXRjaElucHV0RXZlbnRz
KGNtZC0+c3RhcnRpbmdSb290RWRpdGFibGVFbGVtZW50KCksIGNtZC0+ZW5kaW5nUm9vdEVkaXRh
YmxlRWxlbWVudCgpLCAiaGlzdG9yeVJlZG8iKTsKKyAgICBkaXNwYXRjaElucHV0RXZlbnRzKGNv
bXBvc2l0aW9uLnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCBjb21wb3NpdGlvbi5lbmRp
bmdSb290RWRpdGFibGVFbGVtZW50KCksICJoaXN0b3J5UmVkbyIpOwogICAgIAogICAgIHVwZGF0
ZUVkaXRvclVJTm93SWZTY2hlZHVsZWQoKTsKIAogICAgIG1fbGFzdEVkaXRDb21tYW5kID0gbnVs
bHB0cjsKLSAgICBpZiAoY2xpZW50KCkpCi0gICAgICAgIGNsaWVudCgpLT5yZWdpc3RlclVuZG9T
dGVwKGNtZCk7CisgICAgaWYgKGF1dG8qIGNsaWVudCA9IHRoaXMtPmNsaWVudCgpKQorICAgICAg
ICBjbGllbnQtPnJlZ2lzdGVyVW5kb1N0ZXAoY29tcG9zaXRpb24pOwogICAgIHJlc3BvbmRUb0No
YW5nZWRDb250ZW50cyhuZXdTZWxlY3Rpb24pOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9lZGl0aW5nL0VkaXRvci5oIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuaApp
bmRleCA3MzMwZWJiMDNlYTg0MWE3YzhlMTBkYzNiMDgzYjc0MTFkMDg5MTcxLi5iOGIzYjA2NmEz
YTQyYTE1NWJkYTdjMzUwOTM1MDYxZjkwMmU3OWZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9lZGl0aW5nL0VkaXRvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmgK
QEAgLTk5LDEwICs5OSwxMiBAQCBlbnVtIGNsYXNzIE1haWxCbG9ja3F1b3RlSGFuZGxpbmcgewog
fTsKIAogI2lmIFBMQVRGT1JNKENPQ09BKQorCiBzdHJ1Y3QgRnJhZ21lbnRBbmRSZXNvdXJjZXMg
ewogICAgIFJlZlB0cjxEb2N1bWVudEZyYWdtZW50PiBmcmFnbWVudDsKLSAgICBWZWN0b3I8UmVm
UHRyPEFyY2hpdmVSZXNvdXJjZT4+IHJlc291cmNlczsKKyAgICBWZWN0b3I8UmVmPEFyY2hpdmVS
ZXNvdXJjZT4+IHJlc291cmNlczsKIH07CisKICNlbmRpZgogCiBjbGFzcyBFZGl0b3IgewpAQCAt
MjA2LDggKzIwOCw4IEBAIHB1YmxpYzoKICAgICBib29sIHdpbGxSZWFwcGx5RWRpdGluZyhjb25z
dCBFZGl0Q29tbWFuZENvbXBvc2l0aW9uJikgY29uc3Q7CiAKICAgICB2b2lkIGFwcGxpZWRFZGl0
aW5nKFBhc3NSZWZQdHI8Q29tcG9zaXRlRWRpdENvbW1hbmQ+KTsKLSAgICB2b2lkIHVuYXBwbGll
ZEVkaXRpbmcoUGFzc1JlZlB0cjxFZGl0Q29tbWFuZENvbXBvc2l0aW9uPik7Ci0gICAgdm9pZCBy
ZWFwcGxpZWRFZGl0aW5nKFBhc3NSZWZQdHI8RWRpdENvbW1hbmRDb21wb3NpdGlvbj4pOworICAg
IHZvaWQgdW5hcHBsaWVkRWRpdGluZyhFZGl0Q29tbWFuZENvbXBvc2l0aW9uJik7CisgICAgdm9p
ZCByZWFwcGxpZWRFZGl0aW5nKEVkaXRDb21tYW5kQ29tcG9zaXRpb24mKTsKICAgICB2b2lkIHVu
YXBwbGllZFNwZWxsQ29ycmVjdGlvbihjb25zdCBWaXNpYmxlU2VsZWN0aW9uJiBzZWxlY3Rpb25P
ZkNvcnJlY3RlZCwgY29uc3QgU3RyaW5nJiBjb3JyZWN0ZWQsIGNvbnN0IFN0cmluZyYgY29ycmVj
dGlvbik7CiAKICAgICAvLyBUaGlzIGlzIG9mZiBieSBkZWZhdWx0LCBzaW5jZSBtb3N0IGVkaXRv
cnMgd2FudCB0aGlzIGJlaGF2aW9yIChvcmlnaW5hbGx5IG1hdGNoZWQgSUUgYnV0IG5vdCBGaXJl
Zm94KS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvaW9zL0VkaXRvcklPUy5t
bSBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvaW9zL0VkaXRvcklPUy5tbQppbmRleCBjNWU4YzI5
MTI0YmYwN2JhOTZjZTU0YzI3ZWNiOGJjZmY3YjU2NDdlLi45NzA4ZTFlNGYxZTFhOTFmNWU0ODQx
NDRmZmRiYTk3OTk2YjcxNDI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2lv
cy9FZGl0b3JJT1MubW0KKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9pb3MvRWRpdG9ySU9T
Lm1tCkBAIC0zOTAsMjcgKzM5MCwyNSBAQCBib29sIEVkaXRvcjo6V2ViQ29udGVudFJlYWRlcjo6
cmVhZFdlYkFyY2hpdmUoU2hhcmVkQnVmZmVyKiBidWZmZXIpCiAgICAgaWYgKCFidWZmZXIpCiAg
ICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBhcmNo
aXZlID0gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFVSTCgpLCAqYnVmZmVyKTsKKyAgICBhdXRv
IGFyY2hpdmUgPSBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoVVJMKCksICpidWZmZXIpOwogICAg
IGlmICghYXJjaGl2ZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgUmVmUHRyPEFyY2hp
dmVSZXNvdXJjZT4gbWFpblJlc291cmNlID0gYXJjaGl2ZS0+bWFpblJlc291cmNlKCk7CisgICAg
YXV0byogbWFpblJlc291cmNlID0gYXJjaGl2ZS0+bWFpblJlc291cmNlKCk7CiAgICAgaWYgKCFt
YWluUmVzb3VyY2UpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIGNvbnN0IFN0cmluZyYg
dHlwZSA9IG1haW5SZXNvdXJjZS0+bWltZVR5cGUoKTsKLQotICAgIGlmIChmcmFtZS5sb2FkZXIo
KS5jbGllbnQoKS5jYW5TaG93TUlNRVR5cGVBc0hUTUwodHlwZSkpIHsKLSAgICAgICAgLy8gRklY
TUU6IFRoZSBjb2RlIGluIGNyZWF0ZUZyYWdtZW50QW5kQWRkUmVzb3VyY2VzIGNhbGxzIHNldERl
ZmVyc0xvYWRpbmcodHJ1ZSkuIERvbid0IHdlIG5lZWQgdGhhdCBoZXJlPwotICAgICAgICBpZiAo
RG9jdW1lbnRMb2FkZXIqIGxvYWRlciA9IGZyYW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkp
Ci0gICAgICAgICAgICBsb2FkZXItPmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoYXJjaGl2ZS5nZXQo
KSk7CisgICAgYXV0byYgdHlwZSA9IG1haW5SZXNvdXJjZS0+bWltZVR5cGUoKTsKKyAgICBpZiAo
IWZyYW1lLmxvYWRlcigpLmNsaWVudCgpLmNhblNob3dNSU1FVHlwZUFzSFRNTCh0eXBlKSkKKyAg
ICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgICAgIFN0cmluZyBtYXJrdXBTdHJpbmcgPSBTdHJp
bmc6OmZyb21VVEY4KG1haW5SZXNvdXJjZS0+ZGF0YSgpLmRhdGEoKSwgbWFpblJlc291cmNlLT5k
YXRhKCkuc2l6ZSgpKTsKLSAgICAgICAgYWRkRnJhZ21lbnQoY3JlYXRlRnJhZ21lbnRGcm9tTWFy
a3VwKCpmcmFtZS5kb2N1bWVudCgpLCBtYXJrdXBTdHJpbmcsIG1haW5SZXNvdXJjZS0+dXJsKCks
IERpc2FsbG93U2NyaXB0aW5nQW5kUGx1Z2luQ29udGVudCkpOwotICAgICAgICByZXR1cm4gdHJ1
ZTsKLSAgICB9CisgICAgLy8gRklYTUU6IFRoZSBjb2RlIGluIGNyZWF0ZUZyYWdtZW50QW5kQWRk
UmVzb3VyY2VzIGNhbGxzIHNldERlZmVyc0xvYWRpbmcodHJ1ZSkuIERvbid0IHdlIG5lZWQgdGhh
dCBoZXJlPworICAgIGlmIChhdXRvKiBsb2FkZXIgPSBmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExv
YWRlcigpKQorICAgICAgICBsb2FkZXItPmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoKmFyY2hpdmUp
OwogCi0gICAgcmV0dXJuIGZhbHNlOworICAgIGF1dG8gbWFya3VwU3RyaW5nID0gU3RyaW5nOjpm
cm9tVVRGOChtYWluUmVzb3VyY2UtPmRhdGEoKS5kYXRhKCksIG1haW5SZXNvdXJjZS0+ZGF0YSgp
LnNpemUoKSk7CisgICAgYWRkRnJhZ21lbnQoY3JlYXRlRnJhZ21lbnRGcm9tTWFya3VwKCpmcmFt
ZS5kb2N1bWVudCgpLCBtYXJrdXBTdHJpbmcsIG1haW5SZXNvdXJjZS0+dXJsKCksIERpc2FsbG93
U2NyaXB0aW5nQW5kUGx1Z2luQ29udGVudCkpOworICAgIHJldHVybiB0cnVlOwogfQogCiBib29s
IEVkaXRvcjo6V2ViQ29udGVudFJlYWRlcjo6cmVhZEZpbGVuYW1lcyhjb25zdCBWZWN0b3I8U3Ry
aW5nPiYpCkBAIC01NTQsMTEgKzU1Miw5IEBAIFJlZlB0cjxEb2N1bWVudEZyYWdtZW50PiBFZGl0
b3I6OmNyZWF0ZUZyYWdtZW50QW5kQWRkUmVzb3VyY2VzKE5TQXR0cmlidXRlZFN0cmluCiAKICAg
ICBhdXRvIGZyYWdtZW50QW5kUmVzb3VyY2VzID0gY3JlYXRlRnJhZ21lbnQoc3RyaW5nKTsKIAot
ICAgIGlmIChEb2N1bWVudExvYWRlciogbG9hZGVyID0gbV9mcmFtZS5sb2FkZXIoKS5kb2N1bWVu
dExvYWRlcigpKSB7Ci0gICAgICAgIGZvciAoYXV0byYgcmVzb3VyY2UgOiBmcmFnbWVudEFuZFJl
c291cmNlcy5yZXNvdXJjZXMpIHsKLSAgICAgICAgICAgIGlmIChyZXNvdXJjZSkKLSAgICAgICAg
ICAgICAgICBsb2FkZXItPmFkZEFyY2hpdmVSZXNvdXJjZShyZXNvdXJjZS5yZWxlYXNlTm9uTnVs
bCgpKTsKLSAgICAgICAgfQorICAgIGlmIChhdXRvKiBsb2FkZXIgPSBtX2ZyYW1lLmxvYWRlcigp
LmRvY3VtZW50TG9hZGVyKCkpIHsKKyAgICAgICAgZm9yIChhdXRvJiByZXNvdXJjZSA6IGZyYWdt
ZW50QW5kUmVzb3VyY2VzLnJlc291cmNlcykKKyAgICAgICAgICAgIGxvYWRlci0+YWRkQXJjaGl2
ZVJlc291cmNlKFdURk1vdmUocmVzb3VyY2UpKTsKICAgICB9CiAKICAgICBpZiAod2FzSW1hZ2Vz
RW5hYmxlZCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvbWFjL0VkaXRvck1h
Yy5tbSBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvbWFjL0VkaXRvck1hYy5tbQppbmRleCBiNTRi
YmQxN2U3ZjA4ZmU2ZWFmMDk5N2U3ODczZTVmNWFjZGQyMzE5Li4zYjVkY2QxMGU0MzBlNmEzMTcx
ZTc1Y2IwYzY4YTczYTg5ZTkzYWJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5n
L21hYy9FZGl0b3JNYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9tYWMvRWRpdG9y
TWFjLm1tCkBAIC01MTIsNyArNTEyLDcgQEAgYm9vbCBFZGl0b3I6OldlYkNvbnRlbnRSZWFkZXI6
OnJlYWRXZWJBcmNoaXZlKFNoYXJlZEJ1ZmZlciogYnVmZmVyKQogICAgIGlmICghYnVmZmVyKQog
ICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAgICBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gYXJj
aGl2ZSA9IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShVUkwoKSwgKmJ1ZmZlcik7CisgICAgYXV0
byBhcmNoaXZlID0gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFVSTCgpLCAqYnVmZmVyKTsKICAg
ICBpZiAoIWFyY2hpdmUpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIApAQCAtNTI1LDcgKzUyNSw3
IEBAIGJvb2wgRWRpdG9yOjpXZWJDb250ZW50UmVhZGVyOjpyZWFkV2ViQXJjaGl2ZShTaGFyZWRC
dWZmZXIqIGJ1ZmZlcikKICAgICBpZiAoZnJhbWUubG9hZGVyKCkuY2xpZW50KCkuY2FuU2hvd01J
TUVUeXBlQXNIVE1MKHR5cGUpKSB7CiAgICAgICAgIC8vIEZJWE1FOiBUaGUgY29kZSBpbiBjcmVh
dGVGcmFnbWVudEFuZEFkZFJlc291cmNlcyBjYWxscyBzZXREZWZlcnNMb2FkaW5nKHRydWUpLiBE
b24ndCB3ZSBuZWVkIHRoYXQgaGVyZT8KICAgICAgICAgaWYgKERvY3VtZW50TG9hZGVyKiBsb2Fk
ZXIgPSBmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKQotICAgICAgICAgICAgbG9hZGVy
LT5hZGRBbGxBcmNoaXZlUmVzb3VyY2VzKGFyY2hpdmUuZ2V0KCkpOworICAgICAgICAgICAgbG9h
ZGVyLT5hZGRBbGxBcmNoaXZlUmVzb3VyY2VzKCphcmNoaXZlKTsKIAogICAgICAgICBTdHJpbmcg
bWFya3VwU3RyaW5nID0gU3RyaW5nOjpmcm9tVVRGOChtYWluUmVzb3VyY2UtPmRhdGEoKS5kYXRh
KCksIG1haW5SZXNvdXJjZS0+ZGF0YSgpLnNpemUoKSk7CiAgICAgICAgIGZyYWdtZW50ID0gY3Jl
YXRlRnJhZ21lbnRGcm9tTWFya3VwKCpmcmFtZS5kb2N1bWVudCgpLCBtYXJrdXBTdHJpbmcsIG1h
aW5SZXNvdXJjZS0+dXJsKCksIERpc2FsbG93U2NyaXB0aW5nQW5kUGx1Z2luQ29udGVudCk7CkBA
IC03MDQsMTEgKzcwNCw5IEBAIFJlZlB0cjxEb2N1bWVudEZyYWdtZW50PiBFZGl0b3I6OmNyZWF0
ZUZyYWdtZW50QW5kQWRkUmVzb3VyY2VzKE5TQXR0cmlidXRlZFN0cmluCiAKICAgICBhdXRvIGZy
YWdtZW50QW5kUmVzb3VyY2VzID0gY3JlYXRlRnJhZ21lbnQoc3RyaW5nKTsKIAotICAgIGlmIChE
b2N1bWVudExvYWRlciogbG9hZGVyID0gbV9mcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigp
KSB7Ci0gICAgICAgIGZvciAoYXV0byYgcmVzb3VyY2UgOiBmcmFnbWVudEFuZFJlc291cmNlcy5y
ZXNvdXJjZXMpIHsKLSAgICAgICAgICAgIGlmIChyZXNvdXJjZSkKLSAgICAgICAgICAgICAgICBs
b2FkZXItPmFkZEFyY2hpdmVSZXNvdXJjZShyZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpKTsKLSAg
ICAgICAgfQorICAgIGlmIChhdXRvKiBsb2FkZXIgPSBtX2ZyYW1lLmxvYWRlcigpLmRvY3VtZW50
TG9hZGVyKCkpIHsKKyAgICAgICAgZm9yIChhdXRvJiByZXNvdXJjZSA6IGZyYWdtZW50QW5kUmVz
b3VyY2VzLnJlc291cmNlcykKKyAgICAgICAgICAgIGxvYWRlci0+YWRkQXJjaGl2ZVJlc291cmNl
KFdURk1vdmUocmVzb3VyY2UpKTsKICAgICB9CiAKICAgICBpZiAoIXdhc0RlZmVycmluZ0NhbGxi
YWNrcykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2hpc3RvcnkvUGFnZUNhY2hlLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2hpc3RvcnkvUGFnZUNhY2hlLmNwcAppbmRleCA2ZDAwNDM3ZTE5YTVi
MDg3MmM5NDFmYmJhMzQwMjc4OTg0N2U0NGQwLi5hOGE0OWY5NDAxM2VkMmQwMmJkMjNiZTZhYjMy
ZDljN2MyZWVjYzM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9oaXN0b3J5L1BhZ2VDYWNo
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaGlzdG9yeS9QYWdlQ2FjaGUuY3BwCkBAIC0xNjQs
NyArMTY0LDcgQEAgc3RhdGljIGJvb2wgY2FuQ2FjaGVGcmFtZShGcmFtZSYgZnJhbWUsIERpYWdu
b3N0aWNMb2dnaW5nQ2xpZW50JiBkaWFnbm9zdGljTG9nZ2kKICAgICB9CiAgICAgLy8gRklYTUU6
IFdlIHNob3VsZCBpbnZlc3RpZ2F0aW5nIGNhY2hpbmcgZnJhbWVzIHRoYXQgaGF2ZSBhbiBhc3Nv
Y2lhdGVkCiAgICAgLy8gYXBwbGljYXRpb24gY2FjaGUuIDxyZGFyOi8vcHJvYmxlbS81OTE3ODk5
PiB0cmFja3MgdGhhdCB3b3JrLgotICAgIGlmICghZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9u
Q2FjaGVIb3N0KCktPmNhbkNhY2hlSW5QYWdlQ2FjaGUoKSkgeworICAgIGlmICghZG9jdW1lbnRM
b2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuY2FuQ2FjaGVJblBhZ2VDYWNoZSgpKSB7CiAg
ICAgICAgIFBDTE9HKCIgICAtVGhlIERvY3VtZW50TG9hZGVyIHVzZXMgYW4gYXBwbGljYXRpb24g
Y2FjaGUiKTsKICAgICAgICAgbG9nUGFnZUNhY2hlRmFpbHVyZURpYWdub3N0aWNNZXNzYWdlKGRp
YWdub3N0aWNMb2dnaW5nQ2xpZW50LCBEaWFnbm9zdGljTG9nZ2luZ0tleXM6OmFwcGxpY2F0aW9u
Q2FjaGVLZXkoKSk7CiAgICAgICAgIGlzQ2FjaGVhYmxlID0gZmFsc2U7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0ZpbGVJbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9GaWxlSW5wdXRUeXBlLmNwcAppbmRleCA1N2QwZGMxYzc2M2Q2N2I2YjAyMjhjODYwNTEzZDdm
MWU5YzUzNjNiLi4yOGI2YzA2NjFmNGQzMTI5YjE2NzkzZWFlNDE0YjdiYTJmN2NlYjZiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0ZpbGVJbnB1dFR5cGUuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlwZS5jcHAKQEAgLTE5MSw3ICsxOTEsNyBAQCB2b2lk
IEZpbGVJbnB1dFR5cGU6OmhhbmRsZURPTUFjdGl2YXRlRXZlbnQoRXZlbnQmIGV2ZW50KQogICAg
IGlmICghU2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkpCiAgICAgICAg
IHJldHVybjsKIAotICAgIGlmIChDaHJvbWUqIGNocm9tZSA9IHRoaXMtPmNocm9tZSgpKSB7Cisg
ICAgaWYgKGF1dG8qIGNocm9tZSA9IHRoaXMtPmNocm9tZSgpKSB7CiAgICAgICAgIEZpbGVDaG9v
c2VyU2V0dGluZ3Mgc2V0dGluZ3M7CiAgICAgICAgIEhUTUxJbnB1dEVsZW1lbnQmIGlucHV0ID0g
ZWxlbWVudCgpOwogICAgICAgICBzZXR0aW5ncy5hbGxvd3NNdWx0aXBsZUZpbGVzID0gaW5wdXQu
aGFzQXR0cmlidXRlV2l0aG91dFN5bmNocm9uaXphdGlvbihtdWx0aXBsZUF0dHIpOwpAQCAtMjAx
LDkgKzIwMSw4IEBAIHZvaWQgRmlsZUlucHV0VHlwZTo6aGFuZGxlRE9NQWN0aXZhdGVFdmVudChF
dmVudCYgZXZlbnQpCiAjaWYgRU5BQkxFKE1FRElBX0NBUFRVUkUpCiAgICAgICAgIHNldHRpbmdz
Lm1lZGlhQ2FwdHVyZVR5cGUgPSBpbnB1dC5tZWRpYUNhcHR1cmVUeXBlKCk7CiAjZW5kaWYKLQog
ICAgICAgICBhcHBseUZpbGVDaG9vc2VyU2V0dGluZ3Moc2V0dGluZ3MpOwotICAgICAgICBjaHJv
bWUtPnJ1bk9wZW5QYW5lbChpbnB1dC5kb2N1bWVudCgpLmZyYW1lKCksIG1fZmlsZUNob29zZXIp
OworICAgICAgICBjaHJvbWUtPnJ1bk9wZW5QYW5lbCgqaW5wdXQuZG9jdW1lbnQoKS5mcmFtZSgp
LCAqbV9maWxlQ2hvb3Nlcik7CiAgICAgfQogCiAgICAgZXZlbnQuc2V0RGVmYXVsdEhhbmRsZWQo
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVu
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwCmlu
ZGV4IDJlODcyYWFiYWU2NGIwNDQ4ZDIyMTRlOTYyYmIxNmY2Y2JmOTkwMTIuLmVhOGEzYjMzZTAw
Mjc4MzJkNjcwZjllMDk4N2FjY2E4ZDM2OGJhYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50LmNwcApAQCAtODksNyArODksNyBAQCB2b2lkIEhUTUxG
b3JtQ29udHJvbEVsZW1lbnQ6OnNldEZvcm1FbmN0eXBlKGNvbnN0IFN0cmluZyYgdmFsdWUpCiAK
IFN0cmluZyBIVE1MRm9ybUNvbnRyb2xFbGVtZW50Ojpmb3JtTWV0aG9kKCkgY29uc3QKIHsKLSAg
ICBjb25zdCBBdG9taWNTdHJpbmcmIGZvcm1NZXRob2RBdHRyID0gYXR0cmlidXRlV2l0aG91dFN5
bmNocm9uaXphdGlvbihmb3JtbWV0aG9kQXR0cik7CisgICAgYXV0byYgZm9ybU1ldGhvZEF0dHIg
PSBhdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKGZvcm1tZXRob2RBdHRyKTsKICAgICBp
ZiAoZm9ybU1ldGhvZEF0dHIuaXNOdWxsKCkpCiAgICAgICAgIHJldHVybiBlbXB0eVN0cmluZygp
OwogICAgIHJldHVybiBGb3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6bWV0aG9kU3RyaW5nKEZv
cm1TdWJtaXNzaW9uOjpBdHRyaWJ1dGVzOjpwYXJzZU1ldGhvZFR5cGUoZm9ybU1ldGhvZEF0dHIp
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmNwcAppbmRleCA3NDc1ZjY0ZDI2
ZGViMjU2MDk1ZWRhZDViMWMwNmVmMGVhNWQwMmQ4Li42NDBlMzNlZjNjODk0MmFiOGRkOTExODMw
ZmU2ODBmY2VjYmVlMGJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3Jt
RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3Bw
CkBAIC0yODksMTIgKzI4OSwxMSBAQCB2b2lkIEhUTUxGb3JtRWxlbWVudDo6cHJlcGFyZUZvclN1
Ym1pc3Npb24oRXZlbnQmIGV2ZW50KQogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgU3Ry
aW5nUGFpclZlY3RvciBjb250cm9sTmFtZXNBbmRWYWx1ZXM7Ci0gICAgZ2V0VGV4dEZpZWxkVmFs
dWVzKGNvbnRyb2xOYW1lc0FuZFZhbHVlcyk7Ci0gICAgYXV0byBmb3JtU3RhdGUgPSBGb3JtU3Rh
dGU6OmNyZWF0ZSh0aGlzLCBjb250cm9sTmFtZXNBbmRWYWx1ZXMsICZkb2N1bWVudCgpLCBOb3RT
dWJtaXR0ZWRCeUphdmFTY3JpcHQpOworICAgIGF1dG8gZm9ybVN0YXRlID0gRm9ybVN0YXRlOjpj
cmVhdGUoKnRoaXMsIHRleHRGaWVsZFZhbHVlcygpLCBkb2N1bWVudCgpLCBOb3RTdWJtaXR0ZWRC
eUphdmFTY3JpcHQpOwogICAgIGZyYW1lLT5sb2FkZXIoKS5jbGllbnQoKS5kaXNwYXRjaFdpbGxT
ZW5kU3VibWl0RXZlbnQoV1RGTW92ZShmb3JtU3RhdGUpKTsKIAogICAgIFJlZjxIVE1MRm9ybUVs
ZW1lbnQ+IHByb3RlY3RlZFRoaXMoKnRoaXMpOworCiAgICAgLy8gRXZlbnQgaGFuZGxpbmcgY2Fu
IHJlc3VsdCBpbiBtX3Nob3VsZFN1Ym1pdCBiZWNvbWluZyB0cnVlLCByZWdhcmRsZXNzIG9mIGRp
c3BhdGNoRXZlbnQoKSByZXR1cm4gdmFsdWUuCiAgICAgaWYgKGRpc3BhdGNoRXZlbnQoRXZlbnQ6
OmNyZWF0ZShldmVudE5hbWVzKCkuc3VibWl0RXZlbnQsIHRydWUsIHRydWUpKSkKICAgICAgICAg
bV9zaG91bGRTdWJtaXQgPSB0cnVlOwpAQCAtMzE1LDIwICszMTQsMjAgQEAgdm9pZCBIVE1MRm9y
bUVsZW1lbnQ6OnN1Ym1pdEZyb21KYXZhU2NyaXB0KCkKICAgICBzdWJtaXQoMCwgZmFsc2UsIFNj
cmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpLCBTdWJtaXR0ZWRCeUphdmFT
Y3JpcHQpOwogfQogCi12b2lkIEhUTUxGb3JtRWxlbWVudDo6Z2V0VGV4dEZpZWxkVmFsdWVzKFN0
cmluZ1BhaXJWZWN0b3ImIGZpZWxkTmFtZXNBbmRWYWx1ZXMpIGNvbnN0CitTdHJpbmdQYWlyVmVj
dG9yIEhUTUxGb3JtRWxlbWVudDo6dGV4dEZpZWxkVmFsdWVzKCkgY29uc3QKIHsKLSAgICBBU1NF
UlRfQVJHKGZpZWxkTmFtZXNBbmRWYWx1ZXMsIGZpZWxkTmFtZXNBbmRWYWx1ZXMuaXNFbXB0eSgp
KTsKLQotICAgIGZpZWxkTmFtZXNBbmRWYWx1ZXMucmVzZXJ2ZUNhcGFjaXR5KG1fYXNzb2NpYXRl
ZEVsZW1lbnRzLnNpemUoKSk7CisgICAgU3RyaW5nUGFpclZlY3RvciByZXN1bHQ7CisgICAgcmVz
dWx0LnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobV9hc3NvY2lhdGVkRWxlbWVudHMuc2l6ZSgpKTsK
ICAgICBmb3IgKGF1dG8mIGFzc29jaWF0ZWRFbGVtZW50IDogbV9hc3NvY2lhdGVkRWxlbWVudHMp
IHsKLSAgICAgICAgSFRNTEVsZW1lbnQmIGVsZW1lbnQgPSBhc3NvY2lhdGVkRWxlbWVudC0+YXNI
VE1MRWxlbWVudCgpOworICAgICAgICBhdXRvJiBlbGVtZW50ID0gYXNzb2NpYXRlZEVsZW1lbnQt
PmFzSFRNTEVsZW1lbnQoKTsKICAgICAgICAgaWYgKCFpczxIVE1MSW5wdXRFbGVtZW50PihlbGVt
ZW50KSkKICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICBIVE1MSW5wdXRFbGVtZW50JiBp
bnB1dCA9IGRvd25jYXN0PEhUTUxJbnB1dEVsZW1lbnQ+KGVsZW1lbnQpOworICAgICAgICBhdXRv
JiBpbnB1dCA9IGRvd25jYXN0PEhUTUxJbnB1dEVsZW1lbnQ+KGVsZW1lbnQpOwogICAgICAgICBp
ZiAoIWlucHV0LmlzVGV4dEZpZWxkKCkpCiAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAg
ZmllbGROYW1lc0FuZFZhbHVlcy5hcHBlbmQoc3RkOjptYWtlX3BhaXIoaW5wdXQubmFtZSgpLnN0
cmluZygpLCBpbnB1dC52YWx1ZSgpKSk7CisgICAgICAgIHJlc3VsdC51bmNoZWNrZWRBcHBlbmQo
eyBpbnB1dC5uYW1lKCkuc3RyaW5nKCksIGlucHV0LnZhbHVlKCkgfSk7CiAgICAgfQorICAgIHJl
dHVybiByZXN1bHQ7CiB9CiAKIHZvaWQgSFRNTEZvcm1FbGVtZW50OjpzdWJtaXQoRXZlbnQqIGV2
ZW50LCBib29sIGFjdGl2YXRlU3VibWl0QnV0dG9uLCBib29sIHByb2Nlc3NpbmdVc2VyR2VzdHVy
ZSwgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikKQEAgLTM2NCw5
ICszNjMsMTAgQEAgdm9pZCBIVE1MRm9ybUVsZW1lbnQ6OnN1Ym1pdChFdmVudCogZXZlbnQsIGJv
b2wgYWN0aXZhdGVTdWJtaXRCdXR0b24sIGJvb2wgcHJvY2UKICAgICBpZiAobmVlZEJ1dHRvbkFj
dGl2YXRpb24gJiYgZmlyc3RTdWNjZXNzZnVsU3VibWl0QnV0dG9uKQogICAgICAgICBmaXJzdFN1
Y2Nlc3NmdWxTdWJtaXRCdXR0b24tPnNldEFjdGl2YXRlZFN1Ym1pdCh0cnVlKTsKIAotICAgIExv
Y2tIaXN0b3J5IGxvY2tIaXN0b3J5ID0gcHJvY2Vzc2luZ1VzZXJHZXN0dXJlID8gTG9ja0hpc3Rv
cnk6Ok5vIDogTG9ja0hpc3Rvcnk6OlllczsKLSAgICBSZWY8SFRNTEZvcm1FbGVtZW50PiBwcm90
ZWN0ZWRUaGlzKCp0aGlzKTsgLy8gRm9ybSBzdWJtaXNzaW9uIGNhbiBleGVjdXRlIGFyYml0YXJ5
IEphdmFTY3JpcHQuCi0gICAgZnJhbWUtPmxvYWRlcigpLnN1Ym1pdEZvcm0oRm9ybVN1Ym1pc3Np
b246OmNyZWF0ZSh0aGlzLCBtX2F0dHJpYnV0ZXMsIGV2ZW50LCBsb2NrSGlzdG9yeSwgZm9ybVN1
Ym1pc3Npb25UcmlnZ2VyKSk7CisgICAgYXV0byBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhp
cyk7IC8vIEZvcm0gc3VibWlzc2lvbiBjYW4gZXhlY3V0ZSBhcmJpdGFyeSBKYXZhU2NyaXB0Lgor
CisgICAgYXV0byBzaG91bGRMb2NrSGlzdG9yeSA9IHByb2Nlc3NpbmdVc2VyR2VzdHVyZSA/IExv
Y2tIaXN0b3J5OjpObyA6IExvY2tIaXN0b3J5OjpZZXM7CisgICAgZnJhbWUtPmxvYWRlcigpLnN1
Ym1pdEZvcm0oRm9ybVN1Ym1pc3Npb246OmNyZWF0ZSgqdGhpcywgbV9hdHRyaWJ1dGVzLCBldmVu
dCwgc2hvdWxkTG9ja0hpc3RvcnksIGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikpOwogCiAgICAgaWYg
KG5lZWRCdXR0b25BY3RpdmF0aW9uICYmIGZpcnN0U3VjY2Vzc2Z1bFN1Ym1pdEJ1dHRvbikKICAg
ICAgICAgZmlyc3RTdWNjZXNzZnVsU3VibWl0QnV0dG9uLT5zZXRBY3RpdmF0ZWRTdWJtaXQoZmFs
c2UpOwpAQCAtNDM5LDggKzQzOSw4IEBAIHZvaWQgSFRNTEZvcm1FbGVtZW50OjpyZXF1ZXN0QXV0
b2NvbXBsZXRlKCkKICAgICBTdHJpbmdQYWlyVmVjdG9yIGNvbnRyb2xOYW1lc0FuZFZhbHVlczsK
ICAgICBnZXRUZXh0RmllbGRWYWx1ZXMoY29udHJvbE5hbWVzQW5kVmFsdWVzKTsKIAotICAgIFJl
ZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSA9IEZvcm1TdGF0ZTo6Y3JlYXRlKHRoaXMsIGNvbnRy
b2xOYW1lc0FuZFZhbHVlcywgJmRvY3VtZW50KCksIFN1Ym1pdHRlZEJ5SmF2YVNjcmlwdCk7Ci0g
ICAgZnJhbWUtPmxvYWRlcigpLmNsaWVudCgpLmRpZFJlcXVlc3RBdXRvY29tcGxldGUoZm9ybVN0
YXRlLnJlbGVhc2UoKSk7CisgICAgYXV0byBmb3JtU3RhdGUgPSBGb3JtU3RhdGU6OmNyZWF0ZSh0
aGlzLCBjb250cm9sTmFtZXNBbmRWYWx1ZXMsICZkb2N1bWVudCgpLCBTdWJtaXR0ZWRCeUphdmFT
Y3JpcHQpOworICAgIGZyYW1lLT5sb2FkZXIoKS5jbGllbnQoKS5kaWRSZXF1ZXN0QXV0b2NvbXBs
ZXRlKFdURk1vdmUoZm9ybVN0YXRlKSk7CiB9CiAKIHZvaWQgSFRNTEZvcm1FbGVtZW50OjpmaW5p
c2hSZXF1ZXN0QXV0b2NvbXBsZXRlKEF1dG9jb21wbGV0ZVJlc3VsdCByZXN1bHQpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5oIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuaAppbmRleCBiYjUxNzk4OTc2ZTNmNjY0M2Q4YmE0YTc1
YTdiMTAzZTcyMDYyMzk3Li41ZGUxOTVlYjk2MTVjZWE2MmU1YTIxY2JmMDQ5Yjk3OWFiMjcxYjI1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmgKQEAgLTEyOCw3ICsxMjgsNyBA
QCBwdWJsaWM6CiAgICAgY29uc3QgVmVjdG9yPEZvcm1Bc3NvY2lhdGVkRWxlbWVudCo+JiBhc3Nv
Y2lhdGVkRWxlbWVudHMoKSBjb25zdCB7IHJldHVybiBtX2Fzc29jaWF0ZWRFbGVtZW50czsgfQog
ICAgIGNvbnN0IFZlY3RvcjxIVE1MSW1hZ2VFbGVtZW50Kj4mIGltYWdlRWxlbWVudHMoKSBjb25z
dCB7IHJldHVybiBtX2ltYWdlRWxlbWVudHM7IH0KIAotICAgIHZvaWQgZ2V0VGV4dEZpZWxkVmFs
dWVzKFN0cmluZ1BhaXJWZWN0b3ImIGZpZWxkTmFtZXNBbmRWYWx1ZXMpIGNvbnN0OworICAgIFN0
cmluZ1BhaXJWZWN0b3IgdGV4dEZpZWxkVmFsdWVzKCkgY29uc3Q7CiAKICAgICBzdGF0aWMgSFRN
TEZvcm1FbGVtZW50KiBmaW5kQ2xvc2VzdEZvcm1BbmNlc3Rvcihjb25zdCBFbGVtZW50Jik7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEh0bWxFbGVtZW50LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTEh0bWxFbGVtZW50LmNwcAppbmRleCA1ODQ2ZjU2NDE5OGE5
ZDlmZmUwMjMyZWJlMTVjMWZkNTBhZjMxOWM4Li40OWY4MzcyNTQzYzE5YmRkOGExYmNkZmQzM2M1
NTM1NmY2ODZmNTU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxIdG1sRWxl
bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSHRtbEVsZW1lbnQuY3BwCkBA
IC02NiwxNSArNjYsMTUgQEAgdm9pZCBIVE1MSHRtbEVsZW1lbnQ6Omluc2VydGVkQnlQYXJzZXIo
KQogICAgIGlmICghZG9jdW1lbnQoKS5mcmFtZSgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBE
b2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIgPSBkb2N1bWVudCgpLmZyYW1lKCktPmxvYWRl
cigpLmRvY3VtZW50TG9hZGVyKCk7CisgICAgYXV0byogZG9jdW1lbnRMb2FkZXIgPSBkb2N1bWVu
dCgpLmZyYW1lKCktPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCk7CiAgICAgaWYgKCFkb2N1bWVu
dExvYWRlcikKICAgICAgICAgcmV0dXJuOwogCi0gICAgY29uc3QgQXRvbWljU3RyaW5nJiBtYW5p
ZmVzdCA9IGF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24obWFuaWZlc3RBdHRyKTsKKyAg
ICBhdXRvJiBtYW5pZmVzdCA9IGF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24obWFuaWZl
c3RBdHRyKTsKICAgICBpZiAobWFuaWZlc3QuaXNFbXB0eSgpKQotICAgICAgICBkb2N1bWVudExv
YWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+c2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3Qo
KTsKKyAgICAgICAgZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2VsZWN0
Q2FjaGVXaXRob3V0TWFuaWZlc3QoKTsKICAgICBlbHNlCi0gICAgICAgIGRvY3VtZW50TG9hZGVy
LT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5zZWxlY3RDYWNoZVdpdGhNYW5pZmVzdChkb2N1bWVu
dCgpLmNvbXBsZXRlVVJMKG1hbmlmZXN0KSk7CisgICAgICAgIGRvY3VtZW50TG9hZGVyLT5hcHBs
aWNhdGlvbkNhY2hlSG9zdCgpLnNlbGVjdENhY2hlV2l0aE1hbmlmZXN0KGRvY3VtZW50KCkuY29t
cGxldGVVUkwobWFuaWZlc3QpKTsKIH0KIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MTGlua0VsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGlua0Vs
ZW1lbnQuY3BwCmluZGV4IGQ3NzdhMzkzNzFjY2ZkOGMzM2EzZmU4MDk2MDdlMjg5YjJlNDk5NTEu
LjQ5NmFlZDZlYmU3NTk4NGI2YjIzMTE1ZWU3ZTMwMzBkOTg2OGRiZTAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTExpbmtFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxMaW5rRWxlbWVudC5jcHAKQEAgLTI2Nyw3ICsyNjcsNyBAQCB2b2lkIEhUTUxM
aW5rRWxlbWVudDo6cHJvY2VzcygpCiAgICAgICAgIGlmICghaXNBY3RpdmUpCiAgICAgICAgICAg
ICBwcmlvcml0eSA9IFJlc291cmNlTG9hZFByaW9yaXR5OjpWZXJ5TG93OwogICAgICAgICBDYWNo
ZWRSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCh1cmwsIENhY2hlZFJlc291cmNlTG9hZGVyOjpkZWZh
dWx0Q2FjaGVkUmVzb3VyY2VPcHRpb25zKCksIHByaW9yaXR5LCBXVEZNb3ZlKGNoYXJzZXQpKTsK
LSAgICAgICAgcmVxdWVzdC5zZXRJbml0aWF0b3IodGhpcyk7CisgICAgICAgIHJlcXVlc3Quc2V0
SW5pdGlhdG9yKCp0aGlzKTsKIAogICAgICAgICBpZiAoZG9jdW1lbnQoKS5jb250ZW50U2VjdXJp
dHlQb2xpY3koKS0+YWxsb3dTdHlsZVdpdGhOb25jZShhdHRyaWJ1dGVXaXRob3V0U3luY2hyb25p
emF0aW9uKEhUTUxOYW1lczo6bm9uY2VBdHRyKSkpIHsKICAgICAgICAgICAgIFJlc291cmNlTG9h
ZGVyT3B0aW9ucyBvcHRpb25zID0gQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OmRlZmF1bHRDYWNoZWRS
ZXNvdXJjZU9wdGlvbnMoKTsKQEAgLTM2Nyw3ICszNjcsNyBAQCB2b2lkIEhUTUxMaW5rRWxlbWVu
dDo6c2V0Q1NTU3R5bGVTaGVldChjb25zdCBTdHJpbmcmIGhyZWYsIGNvbnN0IFVSTCYgYmFzZVVS
TCwgYwogICAgIENTU1BhcnNlckNvbnRleHQgcGFyc2VyQ29udGV4dChkb2N1bWVudCgpLCBiYXNl
VVJMLCBjaGFyc2V0KTsKICAgICBhdXRvIGNhY2hlUG9saWN5ID0gZnJhbWUtPmxvYWRlcigpLnN1
YnJlc291cmNlQ2FjaGVQb2xpY3koKTsKIAotICAgIGlmIChSZWZQdHI8U3R5bGVTaGVldENvbnRl
bnRzPiByZXN0b3JlZFNoZWV0ID0gY29uc3RfY2FzdDxDYWNoZWRDU1NTdHlsZVNoZWV0Kj4oY2Fj
aGVkU3R5bGVTaGVldCktPnJlc3RvcmVQYXJzZWRTdHlsZVNoZWV0KHBhcnNlckNvbnRleHQsIGNh
Y2hlUG9saWN5KSkgeworICAgIGlmIChhdXRvIHJlc3RvcmVkU2hlZXQgPSBjb25zdF9jYXN0PENh
Y2hlZENTU1N0eWxlU2hlZXQqPihjYWNoZWRTdHlsZVNoZWV0KS0+cmVzdG9yZVBhcnNlZFN0eWxl
U2hlZXQocGFyc2VyQ29udGV4dCwgY2FjaGVQb2xpY3kpKSB7CiAgICAgICAgIEFTU0VSVChyZXN0
b3JlZFNoZWV0LT5pc0NhY2hlYWJsZSgpKTsKICAgICAgICAgQVNTRVJUKCFyZXN0b3JlZFNoZWV0
LT5pc0xvYWRpbmcoKSk7CiAgICAgICAgIGluaXRpYWxpemVTdHlsZVNoZWV0KHJlc3RvcmVkU2hl
ZXQucmVsZWFzZU5vbk51bGwoKSwgKmNhY2hlZFN0eWxlU2hlZXQpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKaW5kZXggM2E5YzRmNTE5OGYxZjI2MDQzODE3ODlhODQ5
ZjNhOWY1ZDJiZjAxOS4uZjRkZDU0ZTU4N2E1ZTY5ODhhOGY4NDk1NzIyMzE4OTY4NzFhZjczYSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCkBAIC0xNDI4LDExICsx
NDI4LDggQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50Ojpsb2FkUmVzb3VyY2UoY29uc3QgVVJMJiBp
bml0aWFsVVJMLCBDb250ZW50VHlwZSYgY29udGVudFQKICAgICB9CiAKICNpZiBFTkFCTEUoQ09O
VEVOVF9FWFRFTlNJT05TKQotICAgIERvY3VtZW50TG9hZGVyKiBkb2N1bWVudExvYWRlciA9IGZy
YW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwotCi0gICAgaWYgKGRvY3VtZW50TG9hZGVy
KSB7Ci0gICAgICAgIGF1dG8gYmxvY2tlZFN0YXR1cyA9IHBhZ2UtPnVzZXJDb250ZW50UHJvdmlk
ZXIoKS5wcm9jZXNzQ29udGVudEV4dGVuc2lvblJ1bGVzRm9yTG9hZCh1cmwsIFJlc291cmNlVHlw
ZTo6TWVkaWEsICpkb2N1bWVudExvYWRlcik7Ci0gICAgICAgIGlmIChibG9ja2VkU3RhdHVzLmJs
b2NrZWRMb2FkKSB7CisgICAgaWYgKGF1dG8qIGRvY3VtZW50TG9hZGVyID0gZnJhbWUtPmxvYWRl
cigpLmRvY3VtZW50TG9hZGVyKCkpIHsKKyAgICAgICAgaWYgKHBhZ2UtPnVzZXJDb250ZW50UHJv
dmlkZXIoKS5wcm9jZXNzQ29udGVudEV4dGVuc2lvblJ1bGVzRm9yTG9hZCh1cmwsIFJlc291cmNl
VHlwZTo6TWVkaWEsICpkb2N1bWVudExvYWRlcikuYmxvY2tlZExvYWQpIHsKICAgICAgICAgICAg
IG1lZGlhTG9hZGluZ0ZhaWxlZChNZWRpYVBsYXllcjo6Rm9ybWF0RXJyb3IpOwogICAgICAgICAg
ICAgcmV0dXJuOwogICAgICAgICB9CkBAIC0xNDQyLDExICsxNDM5LDkgQEAgdm9pZCBIVE1MTWVk
aWFFbGVtZW50Ojpsb2FkUmVzb3VyY2UoY29uc3QgVVJMJiBpbml0aWFsVVJMLCBDb250ZW50VHlw
ZSYgY29udGVudFQKICAgICAvLyBUaGUgcmVzb3VyY2UgZmV0Y2ggYWxnb3JpdGhtIAogICAgIG1f
bmV0d29ya1N0YXRlID0gTkVUV09SS19MT0FESU5HOwogCi0gICAgLy8gSWYgdGhlIHVybCBzaG91
bGQgYmUgbG9hZGVkIGZyb20gdGhlIGFwcGxpY2F0aW9uIGNhY2hlLCBwYXNzIHRoZSB1cmwgb2Yg
dGhlIGNhY2hlZCBmaWxlCi0gICAgLy8gdG8gdGhlIG1lZGlhIGVuZ2luZS4KLSAgICBBcHBsaWNh
dGlvbkNhY2hlSG9zdCogY2FjaGVIb3N0ID0gZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVy
KCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7CisgICAgLy8gSWYgdGhlIFVSTCBzaG91bGQgYmUg
bG9hZGVkIGZyb20gdGhlIGFwcGxpY2F0aW9uIGNhY2hlLCBwYXNzIHRoZSBVUkwgb2YgdGhlIGNh
Y2hlZCBmaWxlIHRvIHRoZSBtZWRpYSBlbmdpbmUuCiAgICAgQXBwbGljYXRpb25DYWNoZVJlc291
cmNlKiByZXNvdXJjZSA9IG51bGxwdHI7Ci0gICAgaWYgKGNhY2hlSG9zdCAmJiBjYWNoZUhvc3Qt
PnNob3VsZExvYWRSZXNvdXJjZUZyb21BcHBsaWNhdGlvbkNhY2hlKFJlc291cmNlUmVxdWVzdCh1
cmwpLCByZXNvdXJjZSkpIHsKKyAgICBpZiAoZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVy
KCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2hvdWxkTG9hZFJlc291cmNlRnJvbUFwcGxpY2F0
aW9uQ2FjaGUoUmVzb3VyY2VSZXF1ZXN0KHVybCksIHJlc291cmNlKSkgewogICAgICAgICAvLyBS
ZXNvdXJjZXMgdGhhdCBhcmUgbm90IHByZXNlbnQgaW4gdGhlIG1hbmlmZXN0IHdpbGwgYWx3YXlz
IGZhaWwgdG8gbG9hZCAoYXQgbGVhc3QsIGFmdGVyIHRoZQogICAgICAgICAvLyBjYWNoZSBoYXMg
YmVlbiBwcmltZWQgdGhlIGZpcnN0IHRpbWUpLCBtYWtpbmcgdGhlIHRlc3Rpbmcgb2Ygb2ZmbGlu
ZSBhcHBsaWNhdGlvbnMgc2ltcGxlci4KICAgICAgICAgaWYgKCFyZXNvdXJjZSB8fCByZXNvdXJj
ZS0+cGF0aCgpLmlzRW1wdHkoKSkgewpAQCAtMTQ2MCw3ICsxNDU1LDcgQEAgdm9pZCBIVE1MTWVk
aWFFbGVtZW50Ojpsb2FkUmVzb3VyY2UoY29uc3QgVVJMJiBpbml0aWFsVVJMLCBDb250ZW50VHlw
ZSYgY29udGVudFQKIAogICAgIG1fZmlyc3RUaW1lUGxheWluZyA9IHRydWU7CiAKLSAgICAvLyBT
ZXQgbV9jdXJyZW50U3JjICpiZWZvcmUqIGNoYW5naW5nIHRvIHRoZSBjYWNoZSB1cmwsIHRoZSBm
YWN0IHRoYXQgd2UgYXJlIGxvYWRpbmcgZnJvbSB0aGUgYXBwCisgICAgLy8gU2V0IG1fY3VycmVu
dFNyYyAqYmVmb3JlKiBjaGFuZ2luZyB0byB0aGUgY2FjaGUgVVJMLCB0aGUgZmFjdCB0aGF0IHdl
IGFyZSBsb2FkaW5nIGZyb20gdGhlIGFwcAogICAgIC8vIGNhY2hlIGlzIGFuIGludGVybmFsIGRl
dGFpbCBub3QgZXhwb3NlZCB0aHJvdWdoIHRoZSBtZWRpYSBlbGVtZW50IEFQSS4KICAgICBtX2N1
cnJlbnRTcmMgPSB1cmw7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5jcHAKaW5kZXggZmY0ZmYzMWNjMTlm
NDkzNGQwNGIyMjk3Zjc2ZWI5NDU4ODQ4NWQyMi4uNmUzOWJjZGFkMGQ4NGYwNDI3YTkyYzI3MTBm
ZmNmMmYxZTBiMDBjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3Bl
Y3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5jcHAKQEAgLTY4LDE2ICs2OCwxNyBA
QCB2b2lkIEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6ZW5hYmxlKEVycm9yU3RyaW5n
JikKIAogdm9pZCBJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6OnVwZGF0ZUFwcGxpY2F0
aW9uQ2FjaGVTdGF0dXMoRnJhbWUqIGZyYW1lKQogewotICAgIERvY3VtZW50TG9hZGVyKiBkb2N1
bWVudExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOworICAgIGlmICgh
ZnJhbWUpCisgICAgICAgIHJldHVybjsKKyAgICBhdXRvKiBkb2N1bWVudExvYWRlciA9IGZyYW1l
LT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwogICAgIGlmICghZG9jdW1lbnRMb2FkZXIpCiAg
ICAgICAgIHJldHVybjsKIAotICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0KiBob3N0ID0gZG9jdW1l
bnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7Ci0gICAgQXBwbGljYXRpb25DYWNoZUhv
c3Q6OlN0YXR1cyBzdGF0dXMgPSBob3N0LT5zdGF0dXMoKTsKLSAgICBBcHBsaWNhdGlvbkNhY2hl
SG9zdDo6Q2FjaGVJbmZvIGluZm8gPSBob3N0LT5hcHBsaWNhdGlvbkNhY2hlSW5mbygpOworICAg
IGF1dG8mIGhvc3QgPSBkb2N1bWVudExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKTsKKyAg
ICBpbnQgc3RhdHVzID0gaG9zdC5zdGF0dXMoKTsKKyAgICBhdXRvIG1hbmlmZXN0VVJMID0gaG9z
dC5hcHBsaWNhdGlvbkNhY2hlSW5mbygpLm1hbmlmZXN0LnN0cmluZygpOwogCi0gICAgU3RyaW5n
IG1hbmlmZXN0VVJMID0gaW5mby5tX21hbmlmZXN0LnN0cmluZygpOwotICAgIG1fZnJvbnRlbmRE
aXNwYXRjaGVyLT5hcHBsaWNhdGlvbkNhY2hlU3RhdHVzVXBkYXRlZChtX3BhZ2VBZ2VudC0+ZnJh
bWVJZChmcmFtZSksIG1hbmlmZXN0VVJMLCBzdGF0aWNfY2FzdDxpbnQ+KHN0YXR1cykpOworICAg
IG1fZnJvbnRlbmREaXNwYXRjaGVyLT5hcHBsaWNhdGlvbkNhY2hlU3RhdHVzVXBkYXRlZChtX3Bh
Z2VBZ2VudC0+ZnJhbWVJZChmcmFtZSksIG1hbmlmZXN0VVJMLCBzdGF0dXMpOwogfQogCiB2b2lk
IEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6bmV0d29ya1N0YXRlQ2hhbmdlZCgpCkBA
IC05MSwyMCArOTIsMTggQEAgdm9pZCBJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6Omdl
dEZyYW1lc1dpdGhNYW5pZmVzdHMoRXJyb3JTdHJpbmcmLCBSZWZQdHIKICAgICByZXN1bHQgPSBJ
bnNwZWN0b3I6OlByb3RvY29sOjpBcnJheTxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlv
bkNhY2hlOjpGcmFtZVdpdGhNYW5pZmVzdD46OmNyZWF0ZSgpOwogCiAgICAgZm9yIChGcmFtZSog
ZnJhbWUgPSAmbV9wYWdlQWdlbnQtPm1haW5GcmFtZSgpOyBmcmFtZTsgZnJhbWUgPSBmcmFtZS0+
dHJlZSgpLnRyYXZlcnNlTmV4dCgpKSB7Ci0gICAgICAgIERvY3VtZW50TG9hZGVyKiBkb2N1bWVu
dExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOworICAgICAgICBhdXRv
KiBkb2N1bWVudExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwogICAg
ICAgICBpZiAoIWRvY3VtZW50TG9hZGVyKQogICAgICAgICAgICAgY29udGludWU7CiAKLSAgICAg
ICAgQXBwbGljYXRpb25DYWNoZUhvc3QqIGhvc3QgPSBkb2N1bWVudExvYWRlci0+YXBwbGljYXRp
b25DYWNoZUhvc3QoKTsKLSAgICAgICAgQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNhY2hlSW5mbyBp
bmZvID0gaG9zdC0+YXBwbGljYXRpb25DYWNoZUluZm8oKTsKLSAgICAgICAgU3RyaW5nIG1hbmlm
ZXN0VVJMID0gaW5mby5tX21hbmlmZXN0LnN0cmluZygpOworICAgICAgICBhdXRvJiBob3N0ID0g
ZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7CisgICAgICAgIFN0cmluZyBt
YW5pZmVzdFVSTCA9IGhvc3QuYXBwbGljYXRpb25DYWNoZUluZm8oKS5tYW5pZmVzdC5zdHJpbmco
KTsKICAgICAgICAgaWYgKCFtYW5pZmVzdFVSTC5pc0VtcHR5KCkpIHsKLSAgICAgICAgICAgIFJl
ZjxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpGcmFtZVdpdGhNYW5pZmVz
dD4gdmFsdWUgPSBJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpGcmFtZVdp
dGhNYW5pZmVzdDo6Y3JlYXRlKCkKKyAgICAgICAgICAgIHJlc3VsdC0+YWRkSXRlbShJbnNwZWN0
b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpGcmFtZVdpdGhNYW5pZmVzdDo6Y3JlYXRl
KCkKICAgICAgICAgICAgICAgICAuc2V0RnJhbWVJZChtX3BhZ2VBZ2VudC0+ZnJhbWVJZChmcmFt
ZSkpCiAgICAgICAgICAgICAgICAgLnNldE1hbmlmZXN0VVJMKG1hbmlmZXN0VVJMKQotICAgICAg
ICAgICAgICAgIC5zZXRTdGF0dXMoc3RhdGljX2Nhc3Q8aW50Pihob3N0LT5zdGF0dXMoKSkpCi0g
ICAgICAgICAgICAgICAgLnJlbGVhc2UoKTsKLSAgICAgICAgICAgIHJlc3VsdC0+YWRkSXRlbShX
VEZNb3ZlKHZhbHVlKSk7CisgICAgICAgICAgICAgICAgLnNldFN0YXR1cyhzdGF0aWNfY2FzdDxp
bnQ+KGhvc3Quc3RhdHVzKCkpKQorICAgICAgICAgICAgICAgIC5yZWxlYXNlKCkpOwogICAgICAg
ICB9CiAgICAgfQogfQpAQCAtMTI0LDY4ICsxMjMsNjAgQEAgdm9pZCBJbnNwZWN0b3JBcHBsaWNh
dGlvbkNhY2hlQWdlbnQ6OmdldE1hbmlmZXN0Rm9yRnJhbWUoRXJyb3JTdHJpbmcmIGVycm9yU3Ry
aW4KICAgICBpZiAoIWRvY3VtZW50TG9hZGVyKQogICAgICAgICByZXR1cm47CiAKLSAgICBBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6Q2FjaGVJbmZvIGluZm8gPSBkb2N1bWVudExvYWRlci0+YXBwbGlj
YXRpb25DYWNoZUhvc3QoKS0+YXBwbGljYXRpb25DYWNoZUluZm8oKTsKLSAgICAqbWFuaWZlc3RV
UkwgPSBpbmZvLm1fbWFuaWZlc3Quc3RyaW5nKCk7CisgICAgKm1hbmlmZXN0VVJMID0gZG9jdW1l
bnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuYXBwbGljYXRpb25DYWNoZUluZm8oKS5t
YW5pZmVzdC5zdHJpbmcoKTsKIH0KIAogdm9pZCBJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdl
bnQ6OmdldEFwcGxpY2F0aW9uQ2FjaGVGb3JGcmFtZShFcnJvclN0cmluZyYgZXJyb3JTdHJpbmcs
IGNvbnN0IFN0cmluZyYgZnJhbWVJZCwgUmVmUHRyPEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxp
Y2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGU+JiBhcHBsaWNhdGlvbkNhY2hlKQogewotICAg
IERvY3VtZW50TG9hZGVyKiBkb2N1bWVudExvYWRlciA9IGFzc2VydEZyYW1lV2l0aERvY3VtZW50
TG9hZGVyKGVycm9yU3RyaW5nLCBmcmFtZUlkKTsKKyAgICBhdXRvKiBkb2N1bWVudExvYWRlciA9
IGFzc2VydEZyYW1lV2l0aERvY3VtZW50TG9hZGVyKGVycm9yU3RyaW5nLCBmcmFtZUlkKTsKICAg
ICBpZiAoIWRvY3VtZW50TG9hZGVyKQogICAgICAgICByZXR1cm47CiAKLSAgICBBcHBsaWNhdGlv
bkNhY2hlSG9zdCogaG9zdCA9IGRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgp
OwotICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8gaW5mbyA9IGhvc3QtPmFwcGxp
Y2F0aW9uQ2FjaGVJbmZvKCk7Ci0KLSAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6UmVzb3VyY2VJ
bmZvTGlzdCByZXNvdXJjZXM7Ci0gICAgaG9zdC0+ZmlsbFJlc291cmNlTGlzdCgmcmVzb3VyY2Vz
KTsKLQotICAgIGFwcGxpY2F0aW9uQ2FjaGUgPSBidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2Fj
aGUocmVzb3VyY2VzLCBpbmZvKTsKKyAgICBhdXRvJiBob3N0ID0gZG9jdW1lbnRMb2FkZXItPmFw
cGxpY2F0aW9uQ2FjaGVIb3N0KCk7CisgICAgYXBwbGljYXRpb25DYWNoZSA9IGJ1aWxkT2JqZWN0
Rm9yQXBwbGljYXRpb25DYWNoZShob3N0LnJlc291cmNlTGlzdCgpLCBob3N0LmFwcGxpY2F0aW9u
Q2FjaGVJbmZvKCkpOwogfQogCi1SZWY8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25D
YWNoZTo6QXBwbGljYXRpb25DYWNoZT4gSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50Ojpi
dWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGUoY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6
OlJlc291cmNlSW5mb0xpc3QmIGFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMsIGNvbnN0IEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8mIGFwcGxpY2F0aW9uQ2FjaGVJbmZvKQorUmVmPElu
c3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGU+IElu
c3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6YnVpbGRPYmplY3RGb3JBcHBsaWNhdGlvbkNh
Y2hlKGNvbnN0IFZlY3RvcjxBcHBsaWNhdGlvbkNhY2hlSG9zdDo6UmVzb3VyY2VJbmZvPiYgYXBw
bGljYXRpb25DYWNoZVJlc291cmNlcywgY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNhY2hl
SW5mbyYgYXBwbGljYXRpb25DYWNoZUluZm8pCiB7CiAgICAgcmV0dXJuIEluc3BlY3Rvcjo6UHJv
dG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGU6OmNyZWF0ZSgpCi0gICAg
ICAgIC5zZXRNYW5pZmVzdFVSTChhcHBsaWNhdGlvbkNhY2hlSW5mby5tX21hbmlmZXN0LnN0cmlu
ZygpKQotICAgICAgICAuc2V0U2l6ZShhcHBsaWNhdGlvbkNhY2hlSW5mby5tX3NpemUpCi0gICAg
ICAgIC5zZXRDcmVhdGlvblRpbWUoYXBwbGljYXRpb25DYWNoZUluZm8ubV9jcmVhdGlvblRpbWUp
Ci0gICAgICAgIC5zZXRVcGRhdGVUaW1lKGFwcGxpY2F0aW9uQ2FjaGVJbmZvLm1fdXBkYXRlVGlt
ZSkKKyAgICAgICAgLnNldE1hbmlmZXN0VVJMKGFwcGxpY2F0aW9uQ2FjaGVJbmZvLm1hbmlmZXN0
LnN0cmluZygpKQorICAgICAgICAuc2V0U2l6ZShhcHBsaWNhdGlvbkNhY2hlSW5mby5zaXplKQor
ICAgICAgICAuc2V0Q3JlYXRpb25UaW1lKGFwcGxpY2F0aW9uQ2FjaGVJbmZvLmNyZWF0aW9uVGlt
ZSkKKyAgICAgICAgLnNldFVwZGF0ZVRpbWUoYXBwbGljYXRpb25DYWNoZUluZm8udXBkYXRlVGlt
ZSkKICAgICAgICAgLnNldFJlc291cmNlcyhidWlsZEFycmF5Rm9yQXBwbGljYXRpb25DYWNoZVJl
c291cmNlcyhhcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2VzKSkKICAgICAgICAgLnJlbGVhc2UoKTsK
IH0KIAotUmVmPEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFycmF5PEluc3BlY3Rvcjo6UHJvdG9jb2w6
OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4+IEluc3BlY3RvckFw
cGxpY2F0aW9uQ2FjaGVBZ2VudDo6YnVpbGRBcnJheUZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJj
ZXMoY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mb0xpc3QmIGFwcGxpY2F0
aW9uQ2FjaGVSZXNvdXJjZXMpCitSZWY8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXJyYXk8SW5zcGVj
dG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZVJlc291cmNl
Pj4gSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZEFycmF5Rm9yQXBwbGljYXRp
b25DYWNoZVJlc291cmNlcyhjb25zdCBWZWN0b3I8QXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291
cmNlSW5mbz4mIGFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMpCiB7Ci0gICAgYXV0byByZXNvdXJj
ZXMgPSBJbnNwZWN0b3I6OlByb3RvY29sOjpBcnJheTxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBs
aWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+OjpjcmVhdGUoKTsKLQotICAg
IGZvciAoY29uc3QgYXV0byYgcmVzb3VyY2VJbmZvIDogYXBwbGljYXRpb25DYWNoZVJlc291cmNl
cykKLSAgICAgICAgcmVzb3VyY2VzLT5hZGRJdGVtKGJ1aWxkT2JqZWN0Rm9yQXBwbGljYXRpb25D
YWNoZVJlc291cmNlKHJlc291cmNlSW5mbykpOwotCi0gICAgcmV0dXJuIHJlc291cmNlczsKKyAg
ICBhdXRvIHJlc3VsdCA9IEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFycmF5PEluc3BlY3Rvcjo6UHJv
dG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT46OmNyZWF0
ZSgpOworICAgIGZvciAoYXV0byYgaW5mbyA6IGFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMpCisg
ICAgICAgIHJlc3VsdC0+YWRkSXRlbShidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGVSZXNv
dXJjZShpbmZvKSk7CisgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAogUmVmPEluc3BlY3Rvcjo6UHJv
dG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4gSW5zcGVj
dG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGVS
ZXNvdXJjZShjb25zdCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6UmVzb3VyY2VJbmZvJiByZXNvdXJj
ZUluZm8pCiB7CiAgICAgU3RyaW5nQnVpbGRlciB0eXBlczsKIAotICAgIGlmIChyZXNvdXJjZUlu
Zm8ubV9pc01hc3RlcikKKyAgICBpZiAocmVzb3VyY2VJbmZvLmlzTWFzdGVyKQogICAgICAgICB0
eXBlcy5hcHBlbmRMaXRlcmFsKCJNYXN0ZXIgIik7CiAKLSAgICBpZiAocmVzb3VyY2VJbmZvLm1f
aXNNYW5pZmVzdCkKKyAgICBpZiAocmVzb3VyY2VJbmZvLmlzTWFuaWZlc3QpCiAgICAgICAgIHR5
cGVzLmFwcGVuZExpdGVyYWwoIk1hbmlmZXN0ICIpOwogCi0gICAgaWYgKHJlc291cmNlSW5mby5t
X2lzRmFsbGJhY2spCisgICAgaWYgKHJlc291cmNlSW5mby5pc0ZhbGxiYWNrKQogICAgICAgICB0
eXBlcy5hcHBlbmRMaXRlcmFsKCJGYWxsYmFjayAiKTsKIAotICAgIGlmIChyZXNvdXJjZUluZm8u
bV9pc0ZvcmVpZ24pCisgICAgaWYgKHJlc291cmNlSW5mby5pc0ZvcmVpZ24pCiAgICAgICAgIHR5
cGVzLmFwcGVuZExpdGVyYWwoIkZvcmVpZ24gIik7CiAKLSAgICBpZiAocmVzb3VyY2VJbmZvLm1f
aXNFeHBsaWNpdCkKKyAgICBpZiAocmVzb3VyY2VJbmZvLmlzRXhwbGljaXQpCiAgICAgICAgIHR5
cGVzLmFwcGVuZExpdGVyYWwoIkV4cGxpY2l0ICIpOwogCiAgICAgcmV0dXJuIEluc3BlY3Rvcjo6
UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6Y3Jl
YXRlKCkKLSAgICAgICAgLnNldFVybChyZXNvdXJjZUluZm8ubV9yZXNvdXJjZS5zdHJpbmcoKSkK
LSAgICAgICAgLnNldFNpemUoc3RhdGljX2Nhc3Q8aW50PihyZXNvdXJjZUluZm8ubV9zaXplKSkK
KyAgICAgICAgLnNldFVybChyZXNvdXJjZUluZm8ucmVzb3VyY2Uuc3RyaW5nKCkpCisgICAgICAg
IC5zZXRTaXplKHN0YXRpY19jYXN0PGludD4ocmVzb3VyY2VJbmZvLnNpemUpKQogICAgICAgICAu
c2V0VHlwZSh0eXBlcy50b1N0cmluZygpKQogICAgICAgICAucmVsZWFzZSgpOwogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVB
Z2VudC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2Fj
aGVBZ2VudC5oCmluZGV4IGQ1YzU3OWM3ZWFiZTdiMmJhZGM0NzRiMGY0ODcxNmRkNjk0ZmViNzYu
LjQ4NzUyZWZhMGNkNWY2YTc2MmRlNTNkYzJhMTEyZWZmNDY0ZjcyZmIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFn
ZW50LmgKQEAgLTYyLDggKzYyLDggQEAgcHVibGljOgogICAgIHZvaWQgZ2V0QXBwbGljYXRpb25D
YWNoZUZvckZyYW1lKEVycm9yU3RyaW5nJiwgY29uc3QgU3RyaW5nJiBmcmFtZUlkLCBSZWZQdHI8
SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZT4m
KSBvdmVycmlkZTsKIAogcHJpdmF0ZToKLSAgICBSZWY8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBw
bGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZT4gYnVpbGRPYmplY3RGb3JBcHBsaWNhdGlv
bkNhY2hlKGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpSZXNvdXJjZUluZm9MaXN0JiwgY29u
c3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNhY2hlSW5mbyYpOwotICAgIFJlZjxJbnNwZWN0b3I6
OlByb3RvY29sOjpBcnJheTxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpB
cHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+PiBidWlsZEFycmF5Rm9yQXBwbGljYXRpb25DYWNoZVJl
c291cmNlcyhjb25zdCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6UmVzb3VyY2VJbmZvTGlzdCYpOwor
ICAgIFJlZjxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlv
bkNhY2hlPiBidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGUoY29uc3QgVmVjdG9yPEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0OjpSZXNvdXJjZUluZm8+JiwgY29uc3QgQXBwbGljYXRpb25DYWNoZUhv
c3Q6OkNhY2hlSW5mbyYpOworICAgIFJlZjxJbnNwZWN0b3I6OlByb3RvY29sOjpBcnJheTxJbnNw
ZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlUmVzb3Vy
Y2U+PiBidWlsZEFycmF5Rm9yQXBwbGljYXRpb25DYWNoZVJlc291cmNlcyhjb25zdCBWZWN0b3I8
QXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mbz4mKTsKICAgICBSZWY8SW5zcGVjdG9y
OjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiBi
dWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZShjb25zdCBBcHBsaWNhdGlvbkNh
Y2hlSG9zdDo6UmVzb3VyY2VJbmZvJik7CiAKICAgICBEb2N1bWVudExvYWRlciogYXNzZXJ0RnJh
bWVXaXRoRG9jdW1lbnRMb2FkZXIoRXJyb3JTdHJpbmcmLCBjb25zdCBTdHJpbmcmIGZyYW1lSWQp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1l
bnRhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uLmNwcAppbmRleCAyZTQzMzc5NmE2YWYzYjExYjkxZDdjYjA2MjFhMTg0N2I1ZmMyNTdh
Li5kNjhjNTIyZWZjZTAyY2ZlZDU5YThmMDg1OWY0NTRlMWM4YzJjYTgxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcApA
QCAtMSw2ICsxLDYgQEAKIC8qCiAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgotKiBDb3B5cmlnaHQgKEMpIDIwMTQsIDIwMTUgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorKiBDb3B5cmlnaHQgKEMpIDIwMTQtMjAxNyBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAqCiAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCkBA
IC0xMDczLDEwICsxMDczLDEwIEBAIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpuZXR3
b3JrU3RhdGVDaGFuZ2VkSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiBpbnN0CiAgICAgICAgIGFw
cGxpY2F0aW9uQ2FjaGVBZ2VudC0+bmV0d29ya1N0YXRlQ2hhbmdlZCgpOwogfQogCi12b2lkIElu
c3BlY3Rvckluc3RydW1lbnRhdGlvbjo6dXBkYXRlQXBwbGljYXRpb25DYWNoZVN0YXR1c0ltcGwo
SW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgRnJhbWUqIGZyYW1lKQor
dm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OnVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0
dXNJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRpbmdBZ2VudHMsIEZyYW1lJiBm
cmFtZSkKIHsKLSAgICBpZiAoSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50KiBhcHBsaWNh
dGlvbkNhY2hlQWdlbnQgPSBpbnN0cnVtZW50aW5nQWdlbnRzLmluc3BlY3RvckFwcGxpY2F0aW9u
Q2FjaGVBZ2VudCgpKQotICAgICAgICBhcHBsaWNhdGlvbkNhY2hlQWdlbnQtPnVwZGF0ZUFwcGxp
Y2F0aW9uQ2FjaGVTdGF0dXMoZnJhbWUpOworICAgIGlmIChhdXRvKiBhcHBsaWNhdGlvbkNhY2hl
QWdlbnQgPSBpbnN0cnVtZW50aW5nQWdlbnRzLmluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2Vu
dCgpKQorICAgICAgICBhcHBsaWNhdGlvbkNhY2hlQWdlbnQtPnVwZGF0ZUFwcGxpY2F0aW9uQ2Fj
aGVTdGF0dXMoJmZyYW1lKTsKIH0KIAogYm9vbCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmNv
bnNvbGVBZ2VudEVuYWJsZWQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9u
Q29udGV4dCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJ
bnN0cnVtZW50YXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0
cnVtZW50YXRpb24uaAppbmRleCA5YjYwMDEwNGRhMmYxZGQ1ZWQxMDJiYmY5NDVhNmY1YWQ0OTk3
ZjQyLi4yNDVjZGM4ODc1MmQwODUxZTU3MDQ0YmI3MjMzNWI2YTA4MjRhYWZkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oCkBA
IC00MDcsNyArNDA3LDcgQEAgcHJpdmF0ZToKICNlbmRpZgogCiAgICAgc3RhdGljIHZvaWQgbmV0
d29ya1N0YXRlQ2hhbmdlZEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYpOwotICAgIHN0YXRpYyB2
b2lkIHVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXNJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMm
LCBGcmFtZSopOworICAgIHN0YXRpYyB2b2lkIHVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXNJ
bXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBGcmFtZSYpOwogCiAgICAgc3RhdGljIHZvaWQgbGF5
ZXJUcmVlRGlkQ2hhbmdlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJik7CiAgICAgc3RhdGljIHZv
aWQgcmVuZGVyTGF5ZXJEZXN0cm95ZWRJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBjb25zdCBS
ZW5kZXJMYXllciYpOwpAQCAtMTE4MSw4ICsxMTgxLDggQEAgaW5saW5lIHZvaWQgSW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjpuZXR3b3JrU3RhdGVDaGFuZ2VkKFBhZ2UmIHBhZ2UpCiBpbmxpbmUg
dm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OnVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0
dXMoRnJhbWUqIGZyYW1lKQogewogICAgIEZBU1RfUkVUVVJOX0lGX05PX0ZST05URU5EUyh2b2lk
KCkpOwotICAgIGlmIChJbnN0cnVtZW50aW5nQWdlbnRzKiBpbnN0cnVtZW50aW5nQWdlbnRzID0g
aW5zdHJ1bWVudGluZ0FnZW50c0ZvckZyYW1lKGZyYW1lKSkKLSAgICAgICAgdXBkYXRlQXBwbGlj
YXRpb25DYWNoZVN0YXR1c0ltcGwoKmluc3RydW1lbnRpbmdBZ2VudHMsIGZyYW1lKTsKKyAgICBp
ZiAoYXV0byogaW5zdHJ1bWVudGluZ0FnZW50cyA9IGluc3RydW1lbnRpbmdBZ2VudHNGb3JGcmFt
ZShmcmFtZSkpCisgICAgICAgIHVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXNJbXBsKCppbnN0
cnVtZW50aW5nQWdlbnRzLCAqZnJhbWUpOwogfQogCiBpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0
cnVtZW50YXRpb246OmFkZE1lc3NhZ2VUb0NvbnNvbGUoUGFnZSYgcGFnZSwgc3RkOjp1bmlxdWVf
cHRyPEluc3BlY3Rvcjo6Q29uc29sZU1lc3NhZ2U+IG1lc3NhZ2UpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0RvY3VtZW50TG9hZGVyLmNwcAppbmRleCA5YjM4YzNiMzYyNzkwNWUxYmVhYTM5ZjU1YmUz
ZGJjNjljMzc3YWU5Li5lZTY1OWNiNWY5Mzk1OTA3NjdlYzk4NGE2MTcxZmQ1MzkwZTU0ODFlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5jcHAKQEAgLTEyOSwzMCArMTI5
LDE2IEBAIHN0YXRpYyBib29sIGFyZUFsbExvYWRlcnNQYWdlQ2FjaGVBY2NlcHRhYmxlKGNvbnN0
IFJlc291cmNlTG9hZGVyTWFwJiBsb2FkZXJzKQogICAgIHJldHVybiB0cnVlOwogfQogCi1Eb2N1
bWVudExvYWRlcjo6RG9jdW1lbnRMb2FkZXIoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXEsIGNv
bnN0IFN1YnN0aXR1dGVEYXRhJiBzdWJzdGl0dXRlRGF0YSkKLSAgICA6IG1fZGVmZXJNYWluUmVz
b3VyY2VEYXRhTG9hZCh0cnVlKQotICAgICwgbV9mcmFtZShudWxscHRyKQotICAgICwgbV9jYWNo
ZWRSZXNvdXJjZUxvYWRlcihDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Y3JlYXRlKHRoaXMpKQorRG9j
dW1lbnRMb2FkZXI6OkRvY3VtZW50TG9hZGVyKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVz
dCwgY29uc3QgU3Vic3RpdHV0ZURhdGEmIHN1YnN0aXR1dGVEYXRhKQorICAgIDogbV9jYWNoZWRS
ZXNvdXJjZUxvYWRlcihDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Y3JlYXRlKHRoaXMpKQogICAgICwg
bV93cml0ZXIobV9mcmFtZSkKLSAgICAsIG1fb3JpZ2luYWxSZXF1ZXN0KHJlcSkKKyAgICAsIG1f
b3JpZ2luYWxSZXF1ZXN0KHJlcXVlc3QpCiAgICAgLCBtX3N1YnN0aXR1dGVEYXRhKHN1YnN0aXR1
dGVEYXRhKQotICAgICwgbV9vcmlnaW5hbFJlcXVlc3RDb3B5KHJlcSkKLSAgICAsIG1fcmVxdWVz
dChyZXEpCisgICAgLCBtX29yaWdpbmFsUmVxdWVzdENvcHkocmVxdWVzdCkKKyAgICAsIG1fcmVx
dWVzdChyZXF1ZXN0KQogICAgICwgbV9vcmlnaW5hbFN1YnN0aXR1dGVEYXRhV2FzVmFsaWQoc3Vi
c3RpdHV0ZURhdGEuaXNWYWxpZCgpKQotICAgICwgbV9jb21taXR0ZWQoZmFsc2UpCi0gICAgLCBt
X2lzU3RvcHBpbmcoZmFsc2UpCi0gICAgLCBtX2dvdEZpcnN0Qnl0ZShmYWxzZSkKLSAgICAsIG1f
aXNDbGllbnRSZWRpcmVjdChmYWxzZSkKLSAgICAsIG1faXNMb2FkaW5nTXVsdGlwYXJ0Q29udGVu
dChmYWxzZSkKLSAgICAsIG1fd2FzT25sb2FkRGlzcGF0Y2hlZChmYWxzZSkKLSAgICAsIG1fc3Rv
cFJlY29yZGluZ1Jlc3BvbnNlcyhmYWxzZSkKICAgICAsIG1fc3Vic3RpdHV0ZVJlc291cmNlRGVs
aXZlcnlUaW1lcigqdGhpcywgJkRvY3VtZW50TG9hZGVyOjpzdWJzdGl0dXRlUmVzb3VyY2VEZWxp
dmVyeVRpbWVyRmlyZWQpCi0gICAgLCBtX2RpZENyZWF0ZUdsb2JhbEhpc3RvcnlFbnRyeShmYWxz
ZSkKLSAgICAsIG1fbG9hZGluZ01haW5SZXNvdXJjZShmYWxzZSkKLSAgICAsIG1fdGltZU9mTGFz
dERhdGFSZWNlaXZlZCgwLjApCi0gICAgLCBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291
cmNlTG9hZGVyKDApCiAgICAgLCBtX2RhdGFMb2FkVGltZXIoKnRoaXMsICZEb2N1bWVudExvYWRl
cjo6aGFuZGxlU3Vic3RpdHV0ZURhdGFMb2FkTm93KQotICAgICwgbV9zdWJyZXNvdXJjZUxvYWRl
cnNBcmVQYWdlQ2FjaGVBY2NlcHRhYmxlKGZhbHNlKQogICAgICwgbV9hcHBsaWNhdGlvbkNhY2hl
SG9zdChzdGQ6Om1ha2VfdW5pcXVlPEFwcGxpY2F0aW9uQ2FjaGVIb3N0PigqdGhpcykpCiB7CiB9
CkBAIC0xNjYsNyArMTUyLDkgQEAgRnJhbWVMb2FkZXIqIERvY3VtZW50TG9hZGVyOjpmcmFtZUxv
YWRlcigpIGNvbnN0CiAKIFN1YnJlc291cmNlTG9hZGVyKiBEb2N1bWVudExvYWRlcjo6bWFpblJl
c291cmNlTG9hZGVyKCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9tYWluUmVzb3VyY2UgPyBtX21h
aW5SZXNvdXJjZS0+bG9hZGVyKCkgOiAwOworICAgIGlmICghbV9tYWluUmVzb3VyY2UpCisgICAg
ICAgIHJldHVybiBudWxscHRyOworICAgIHJldHVybiBtX21haW5SZXNvdXJjZS0+bG9hZGVyKCk7
CiB9CiAKIERvY3VtZW50TG9hZGVyOjp+RG9jdW1lbnRMb2FkZXIoKQpAQCAtMTc5LDcgKzE2Nyw3
IEBAIERvY3VtZW50TG9hZGVyOjp+RG9jdW1lbnRMb2FkZXIoKQogICAgIGlmIChtX2ljb25EYXRh
Q2FsbGJhY2spCiAgICAgICAgIG1faWNvbkRhdGFDYWxsYmFjay0+aW52YWxpZGF0ZSgpOwogICAg
IG1fY2FjaGVkUmVzb3VyY2VMb2FkZXItPmNsZWFyRG9jdW1lbnRMb2FkZXIoKTsKLSAgICAKKwog
ICAgIGNsZWFyTWFpblJlc291cmNlKCk7CiB9CiAKQEAgLTE5OSwzMSArMTg3LDYgQEAgRG9jdW1l
bnQqIERvY3VtZW50TG9hZGVyOjpkb2N1bWVudCgpIGNvbnN0CiAgICAgcmV0dXJuIG51bGxwdHI7
CiB9CiAKLWNvbnN0IFJlc291cmNlUmVxdWVzdCYgRG9jdW1lbnRMb2FkZXI6Om9yaWdpbmFsUmVx
dWVzdCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fb3JpZ2luYWxSZXF1ZXN0OwotfQotCi1jb25z
dCBSZXNvdXJjZVJlcXVlc3QmIERvY3VtZW50TG9hZGVyOjpvcmlnaW5hbFJlcXVlc3RDb3B5KCkg
Y29uc3QKLXsKLSAgICByZXR1cm4gbV9vcmlnaW5hbFJlcXVlc3RDb3B5OwotfQotCi1jb25zdCBS
ZXNvdXJjZVJlcXVlc3QmIERvY3VtZW50TG9hZGVyOjpyZXF1ZXN0KCkgY29uc3QKLXsKLSAgICBy
ZXR1cm4gbV9yZXF1ZXN0OwotfQotCi1SZXNvdXJjZVJlcXVlc3QmIERvY3VtZW50TG9hZGVyOjpy
ZXF1ZXN0KCkKLXsKLSAgICByZXR1cm4gbV9yZXF1ZXN0OwotfQotCi1jb25zdCBVUkwmIERvY3Vt
ZW50TG9hZGVyOjp1cmwoKSBjb25zdAotewotICAgIHJldHVybiByZXF1ZXN0KCkudXJsKCk7Ci19
Ci0KIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnJlcGxhY2VSZXF1ZXN0VVJMRm9yU2FtZURvY3VtZW50
TmF2aWdhdGlvbihjb25zdCBVUkwmIHVybCkKIHsKICAgICBtX29yaWdpbmFsUmVxdWVzdENvcHku
c2V0VVJMKHVybCk7CkBAIC0zMTksNyArMjgyLDcgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6c3Rv
cExvYWRpbmcoKQogICAgIGNhbmNlbEFsbChtX211bHRpcGFydFN1YnJlc291cmNlTG9hZGVycyk7
CiAKICAgICAvLyBBcHBjYWNoZSB1c2VzIFJlc291cmNlSGFuZGxlIGRpcmVjdGx5LCBEb2N1bWVu
dExvYWRlciBkb2Vzbid0IGNvdW50IHRoZXNlIGxvYWRzLgotICAgIG1fYXBwbGljYXRpb25DYWNo
ZUhvc3QtPnN0b3BMb2FkaW5nSW5GcmFtZShtX2ZyYW1lKTsKKyAgICBtX2FwcGxpY2F0aW9uQ2Fj
aGVIb3N0LT5zdG9wTG9hZGluZ0luRnJhbWUoKm1fZnJhbWUpOwogICAgIAogI2lmIEVOQUJMRShX
RUJfQVJDSElWRSkgfHwgRU5BQkxFKE1IVE1MKQogICAgIGNsZWFyQXJjaGl2ZVJlc291cmNlcygp
OwpAQCAtNjAyLDcgKzU2NSw3IEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6OndpbGxTZW5kUmVxdWVz
dChSZXNvdXJjZVJlcXVlc3QmIG5ld1JlcXVlc3QsIGNvbnN0IFJlc291cmNlCiAKICAgICBBU1NF
UlQoIW1fd2FpdGluZ0Zvck5hdmlnYXRpb25Qb2xpY3kpOwogICAgIG1fd2FpdGluZ0Zvck5hdmln
YXRpb25Qb2xpY3kgPSB0cnVlOwotICAgIGZyYW1lTG9hZGVyKCktPnBvbGljeUNoZWNrZXIoKS5j
aGVja05hdmlnYXRpb25Qb2xpY3kobmV3UmVxdWVzdCwgZGlkUmVjZWl2ZVJlZGlyZWN0UmVzcG9u
c2UsIFt0aGlzXShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFBhc3NSZWZQdHI8Rm9y
bVN0YXRlPiwgYm9vbCBzaG91bGRDb250aW51ZSkgeworICAgIGZyYW1lTG9hZGVyKCktPnBvbGlj
eUNoZWNrZXIoKS5jaGVja05hdmlnYXRpb25Qb2xpY3kobmV3UmVxdWVzdCwgZGlkUmVjZWl2ZVJl
ZGlyZWN0UmVzcG9uc2UsIFt0aGlzXSAoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBG
b3JtU3RhdGUqLCBib29sIHNob3VsZENvbnRpbnVlKSB7CiAgICAgICAgIGNvbnRpbnVlQWZ0ZXJO
YXZpZ2F0aW9uUG9saWN5KHJlcXVlc3QsIHNob3VsZENvbnRpbnVlKTsKICAgICB9KTsKIH0KQEAg
LTkwMCwxMiArODYzLDggQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6Y29tbWl0RGF0YShjb25zdCBj
aGFyKiBieXRlcywgc2l6ZV90IGxlbmd0aCkKICAgICAgICAgaWYgKGZyYW1lTG9hZGVyKCktPnN0
YXRlTWFjaGluZSgpLmNyZWF0aW5nSW5pdGlhbEVtcHR5RG9jdW1lbnQoKSkKICAgICAgICAgICAg
IHJldHVybjsKICAgICAgICAgCi0jaWYgRU5BQkxFKE1IVE1MKQotICAgICAgICAvLyBUaGUgb3Jp
Z2luIGlzIHRoZSBNSFRNTCBmaWxlLCB3ZSBuZWVkIHRvIHNldCB0aGUgYmFzZSBVUkwgdG8gdGhl
IGRvY3VtZW50IGVuY29kZWQgaW4gdGhlIE1IVE1MIHNvCi0gICAgICAgIC8vIHJlbGF0aXZlIFVS
THMgYXJlIHJlc29sdmVkIHByb3Blcmx5LgotICAgICAgICBpZiAobV9hcmNoaXZlICYmIG1fYXJj
aGl2ZS0+dHlwZSgpID09IEFyY2hpdmU6Ok1IVE1MKQorICAgICAgICBpZiAobV9hcmNoaXZlICYm
IG1fYXJjaGl2ZS0+c2hvdWxkT3ZlcnJpZGVCYXNlVVJMKCkpCiAgICAgICAgICAgICBtX2ZyYW1l
LT5kb2N1bWVudCgpLT5zZXRCYXNlVVJMT3ZlcnJpZGUobV9hcmNoaXZlLT5tYWluUmVzb3VyY2Uo
KS0+dXJsKCkpOwotI2VuZGlmCiAKICAgICAgICAgLy8gQ2FsbCByZWNlaXZlZEZpcnN0RGF0YSgp
IGV4YWN0bHkgb25jZSBwZXIgbG9hZC4gV2Ugc2hvdWxkIG9ubHkgcmVhY2ggdGhpcyBwb2ludCBt
dWx0aXBsZSB0aW1lcwogICAgICAgICAvLyBmb3IgbXVsdGlwYXJ0IGxvYWRzLCBhbmQgRnJhbWVM
b2FkZXI6OmlzUmVwbGFjaW5nKCkgd2lsbCBiZSB0cnVlIGFmdGVyIHRoZSBmaXJzdCB0aW1lLgpA
QCAtOTIxLDEwICs4ODAsOCBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpjb21taXREYXRhKGNvbnN0
IGNoYXIqIGJ5dGVzLCBzaXplX3QgbGVuZ3RoKQogICAgICAgICBpZiAob3ZlcnJpZGVFbmNvZGlu
ZygpLmlzTnVsbCgpKSB7CiAgICAgICAgICAgICB1c2VyQ2hvc2VuID0gZmFsc2U7CiAgICAgICAg
ICAgICBlbmNvZGluZyA9IHJlc3BvbnNlKCkudGV4dEVuY29kaW5nTmFtZSgpOwotI2lmIEVOQUJM
RShXRUJfQVJDSElWRSkKLSAgICAgICAgICAgIGlmIChtX2FyY2hpdmUgJiYgbV9hcmNoaXZlLT50
eXBlKCkgPT0gQXJjaGl2ZTo6V2ViQXJjaGl2ZSkKKyAgICAgICAgICAgIGlmIChtX2FyY2hpdmUg
JiYgbV9hcmNoaXZlLT5zaG91bGRVc2VNYWluUmVzb3VyY2VFbmNvZGluZygpKQogICAgICAgICAg
ICAgICAgIGVuY29kaW5nID0gbV9hcmNoaXZlLT5tYWluUmVzb3VyY2UoKS0+dGV4dEVuY29kaW5n
KCk7Ci0jZW5kaWYKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIHVzZXJDaG9zZW4gPSB0
cnVlOwogICAgICAgICAgICAgZW5jb2RpbmcgPSBvdmVycmlkZUVuY29kaW5nKCk7CkBAIC0xMDgz
LDE1ICsxMDQwLDE2IEBAIGJvb2wgRG9jdW1lbnRMb2FkZXI6OmlzTG9hZGluZ0luQVBJU2Vuc2Uo
KSBjb25zdAogICAgIGlmIChmcmFtZUxvYWRlcigpLT5zdGF0ZSgpICE9IEZyYW1lU3RhdGVDb21w
bGV0ZSkgewogICAgICAgICBpZiAobV9mcmFtZS0+c2V0dGluZ3MoKS5uZWVkc0lzTG9hZGluZ0lu
QVBJU2Vuc2VRdWlyaygpICYmICFtX3N1YnJlc291cmNlTG9hZGVycy5pc0VtcHR5KCkpCiAgICAg
ICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICAKLSAgICAgICAgRG9jdW1lbnQqIGRvYyA9IG1fZnJh
bWUtPmRvY3VtZW50KCk7Ci0gICAgICAgIGlmICgoaXNMb2FkaW5nTWFpblJlc291cmNlKCkgfHwg
IW1fZnJhbWUtPmRvY3VtZW50KCktPmxvYWRFdmVudEZpbmlzaGVkKCkpICYmIGlzTG9hZGluZygp
KQorCisgICAgICAgIEFTU0VSVChtX2ZyYW1lLT5kb2N1bWVudCgpKTsKKyAgICAgICAgYXV0byYg
ZG9jdW1lbnQgPSAqbV9mcmFtZS0+ZG9jdW1lbnQoKTsKKyAgICAgICAgaWYgKChpc0xvYWRpbmdN
YWluUmVzb3VyY2UoKSB8fCAhZG9jdW1lbnQubG9hZEV2ZW50RmluaXNoZWQoKSkgJiYgaXNMb2Fk
aW5nKCkpCiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgaWYgKG1fY2FjaGVkUmVz
b3VyY2VMb2FkZXItPnJlcXVlc3RDb3VudCgpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0g
ICAgICAgIGlmIChkb2MtPnByb2Nlc3NpbmdMb2FkRXZlbnQoKSkKKyAgICAgICAgaWYgKGRvY3Vt
ZW50LnByb2Nlc3NpbmdMb2FkRXZlbnQoKSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAg
ICAgICBpZiAoZG9jLT5oYXNBY3RpdmVQYXJzZXIoKSkKKyAgICAgICAgaWYgKGRvY3VtZW50Lmhh
c0FjdGl2ZVBhcnNlcigpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQogICAgIHJl
dHVybiBmcmFtZUxvYWRlcigpLT5zdWJmcmFtZUlzTG9hZGluZygpOwpAQCAtMTEwMiw0MCArMTA2
MCwzNSBAQCBib29sIERvY3VtZW50TG9hZGVyOjptYXliZUNyZWF0ZUFyY2hpdmUoKQogI2lmICFF
TkFCTEUoV0VCX0FSQ0hJVkUpICYmICFFTkFCTEUoTUhUTUwpCiAgICAgcmV0dXJuIGZhbHNlOwog
I2Vsc2UKLSAgICAKICAgICAvLyBHaXZlIHRoZSBhcmNoaXZlIG1hY2hpbmVyeSBhIGNyYWNrIGF0
IHRoaXMgZG9jdW1lbnQuIElmIHRoZSBNSU1FIHR5cGUgaXMgbm90IGFuIGFyY2hpdmUgdHlwZSwg
aXQgd2lsbCByZXR1cm4gMC4KICAgICBtX2FyY2hpdmUgPSBBcmNoaXZlRmFjdG9yeTo6Y3JlYXRl
KG1fcmVzcG9uc2UudXJsKCksIG1haW5SZXNvdXJjZURhdGEoKS5nZXQoKSwgbV9yZXNwb25zZS5t
aW1lVHlwZSgpKTsKICAgICBpZiAoIW1fYXJjaGl2ZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwog
ICAgIAotICAgIGFkZEFsbEFyY2hpdmVSZXNvdXJjZXMobV9hcmNoaXZlLmdldCgpKTsKLSAgICBB
cmNoaXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSA9IG1fYXJjaGl2ZS0+bWFpblJlc291cmNlKCk7
Ci0gICAgbV9wYXJzZWRBcmNoaXZlRGF0YSA9ICZtYWluUmVzb3VyY2UtPmRhdGEoKTsKLSAgICBt
X3dyaXRlci5zZXRNSU1FVHlwZShtYWluUmVzb3VyY2UtPm1pbWVUeXBlKCkpOwotICAgIAorICAg
IGFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoKm1fYXJjaGl2ZSk7CisgICAgQVNTRVJUKG1fYXJjaGl2
ZS0+bWFpblJlc291cmNlKCkpOworICAgIGF1dG8mIG1haW5SZXNvdXJjZSA9ICptX2FyY2hpdmUt
Pm1haW5SZXNvdXJjZSgpOworICAgIG1fcGFyc2VkQXJjaGl2ZURhdGEgPSAmbWFpblJlc291cmNl
LmRhdGEoKTsKKyAgICBtX3dyaXRlci5zZXRNSU1FVHlwZShtYWluUmVzb3VyY2UubWltZVR5cGUo
KSk7CisKICAgICBBU1NFUlQobV9mcmFtZS0+ZG9jdW1lbnQoKSk7Ci0gICAgY29tbWl0RGF0YSht
YWluUmVzb3VyY2UtPmRhdGEoKS5kYXRhKCksIG1haW5SZXNvdXJjZS0+ZGF0YSgpLnNpemUoKSk7
CisgICAgY29tbWl0RGF0YShtYWluUmVzb3VyY2UuZGF0YSgpLmRhdGEoKSwgbWFpblJlc291cmNl
LmRhdGEoKS5zaXplKCkpOwogICAgIHJldHVybiB0cnVlOwotI2VuZGlmIC8vICFFTkFCTEUoV0VC
X0FSQ0hJVkUpICYmICFFTkFCTEUoTUhUTUwpCisjZW5kaWYKIH0KIAogI2lmIEVOQUJMRShXRUJf
QVJDSElWRSkgfHwgRU5BQkxFKE1IVE1MKQogCi12b2lkIERvY3VtZW50TG9hZGVyOjpzZXRBcmNo
aXZlKFBhc3NSZWZQdHI8QXJjaGl2ZT4gYXJjaGl2ZSkKK3ZvaWQgRG9jdW1lbnRMb2FkZXI6OnNl
dEFyY2hpdmUoUmVmPEFyY2hpdmU+JiYgYXJjaGl2ZSkKIHsKLSAgICBtX2FyY2hpdmUgPSBhcmNo
aXZlOwotICAgIGFkZEFsbEFyY2hpdmVSZXNvdXJjZXMobV9hcmNoaXZlLmdldCgpKTsKKyAgICBt
X2FyY2hpdmUgPSBXVEZNb3ZlKGFyY2hpdmUpOworICAgIGFkZEFsbEFyY2hpdmVSZXNvdXJjZXMo
Km1fYXJjaGl2ZSk7CiB9CiAKLXZvaWQgRG9jdW1lbnRMb2FkZXI6OmFkZEFsbEFyY2hpdmVSZXNv
dXJjZXMoQXJjaGl2ZSogYXJjaGl2ZSkKK3ZvaWQgRG9jdW1lbnRMb2FkZXI6OmFkZEFsbEFyY2hp
dmVSZXNvdXJjZXMoQXJjaGl2ZSYgYXJjaGl2ZSkKIHsKICAgICBpZiAoIW1fYXJjaGl2ZVJlc291
cmNlQ29sbGVjdGlvbikKICAgICAgICAgbV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uID0gc3Rk
OjptYWtlX3VuaXF1ZTxBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uPigpOwotICAgICAgICAKLSAg
ICBBU1NFUlQoYXJjaGl2ZSk7Ci0gICAgaWYgKCFhcmNoaXZlKQotICAgICAgICByZXR1cm47Ci0g
ICAgICAgIAogICAgIG1fYXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi0+YWRkQWxsUmVzb3VyY2Vz
KGFyY2hpdmUpOwogfQogCkBAIC0xMTQ1LDEzICsxMDk4LDEyIEBAIHZvaWQgRG9jdW1lbnRMb2Fk
ZXI6OmFkZEFyY2hpdmVSZXNvdXJjZShSZWY8QXJjaGl2ZVJlc291cmNlPiYmIHJlc291cmNlKQog
ewogICAgIGlmICghbV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uKQogICAgICAgICBtX2FyY2hp
dmVSZXNvdXJjZUNvbGxlY3Rpb24gPSBzdGQ6Om1ha2VfdW5pcXVlPEFyY2hpdmVSZXNvdXJjZUNv
bGxlY3Rpb24+KCk7Ci0gICAgICAgIAogICAgIG1fYXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi0+
YWRkUmVzb3VyY2UoV1RGTW92ZShyZXNvdXJjZSkpOwogfQogCi1QYXNzUmVmUHRyPEFyY2hpdmU+
IERvY3VtZW50TG9hZGVyOjpwb3BBcmNoaXZlRm9yU3ViZnJhbWUoY29uc3QgU3RyaW5nJiBmcmFt
ZU5hbWUsIGNvbnN0IFVSTCYgdXJsKQorUmVmUHRyPEFyY2hpdmU+IERvY3VtZW50TG9hZGVyOjpw
b3BBcmNoaXZlRm9yU3ViZnJhbWUoY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IFVSTCYg
dXJsKQogewotICAgIHJldHVybiBtX2FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24gPyBtX2FyY2hp
dmVSZXNvdXJjZUNvbGxlY3Rpb24tPnBvcFN1YmZyYW1lQXJjaGl2ZShmcmFtZU5hbWUsIHVybCkg
OiBQYXNzUmVmUHRyPEFyY2hpdmU+KG51bGxwdHIpOworICAgIHJldHVybiBtX2FyY2hpdmVSZXNv
dXJjZUNvbGxlY3Rpb24gPyBtX2FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24tPnBvcFN1YmZyYW1l
QXJjaGl2ZShmcmFtZU5hbWUsIHVybCkgOiBudWxscHRyOwogfQogCiB2b2lkIERvY3VtZW50TG9h
ZGVyOjpjbGVhckFyY2hpdmVSZXNvdXJjZXMoKQpAQCAtMTE3MSw3ICsxMTIzLDcgQEAgQXJjaGl2
ZVJlc291cmNlKiBEb2N1bWVudExvYWRlcjo6YXJjaGl2ZVJlc291cmNlRm9yVVJMKGNvbnN0IFVS
TCYgdXJsKSBjb25zdAogewogICAgIGlmICghbV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uKQog
ICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICBBcmNoaXZlUmVzb3VyY2UqIHJlc291cmNlID0g
bV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uLT5hcmNoaXZlUmVzb3VyY2VGb3JVUkwodXJsKTsK
KyAgICBhdXRvKiByZXNvdXJjZSA9IG1fYXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi0+YXJjaGl2
ZVJlc291cmNlRm9yVVJMKHVybCk7CiAgICAgaWYgKCFyZXNvdXJjZSB8fCByZXNvdXJjZS0+c2hv
dWxkSWdub3JlV2hlblVuYXJjaGl2aW5nKCkpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAg
IHJldHVybiByZXNvdXJjZTsKQEAgLTExODIsMTcgKzExMzQsMTYgQEAgUmVmUHRyPEFyY2hpdmVS
ZXNvdXJjZT4gRG9jdW1lbnRMb2FkZXI6Om1haW5SZXNvdXJjZSgpIGNvbnN0CiAgICAgUmVmUHRy
PFNoYXJlZEJ1ZmZlcj4gZGF0YSA9IG1haW5SZXNvdXJjZURhdGEoKTsKICAgICBpZiAoIWRhdGEp
CiAgICAgICAgIGRhdGEgPSBTaGFyZWRCdWZmZXI6OmNyZWF0ZSgpOwotICAgICAgICAKICAgICBh
dXRvJiByZXNwb25zZSA9IHRoaXMtPnJlc3BvbnNlKCk7CiAgICAgcmV0dXJuIEFyY2hpdmVSZXNv
dXJjZTo6Y3JlYXRlKFdURk1vdmUoZGF0YSksIHJlc3BvbnNlLnVybCgpLCByZXNwb25zZS5taW1l
VHlwZSgpLCByZXNwb25zZS50ZXh0RW5jb2RpbmdOYW1lKCksIGZyYW1lKCktPnRyZWUoKS51bmlx
dWVOYW1lKCkpOwogfQogCi1QYXNzUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gRG9jdW1lbnRMb2Fk
ZXI6OnN1YnJlc291cmNlKGNvbnN0IFVSTCYgdXJsKSBjb25zdAorUmVmUHRyPEFyY2hpdmVSZXNv
dXJjZT4gRG9jdW1lbnRMb2FkZXI6OnN1YnJlc291cmNlKGNvbnN0IFVSTCYgdXJsKSBjb25zdAog
ewogICAgIGlmICghaXNDb21taXR0ZWQoKSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAg
Ci0gICAgQ2FjaGVkUmVzb3VyY2UqIHJlc291cmNlID0gbV9jYWNoZWRSZXNvdXJjZUxvYWRlci0+
Y2FjaGVkUmVzb3VyY2UodXJsKTsKKyAgICBhdXRvKiByZXNvdXJjZSA9IG1fY2FjaGVkUmVzb3Vy
Y2VMb2FkZXItPmNhY2hlZFJlc291cmNlKHVybCk7CiAgICAgaWYgKCFyZXNvdXJjZSB8fCAhcmVz
b3VyY2UtPmlzTG9hZGVkKCkpCiAgICAgICAgIHJldHVybiBhcmNoaXZlUmVzb3VyY2VGb3JVUkwo
dXJsKTsKIApAQCAtMTIwNiwxOCArMTE1NywxNiBAQCBQYXNzUmVmUHRyPEFyY2hpdmVSZXNvdXJj
ZT4gRG9jdW1lbnRMb2FkZXI6OnN1YnJlc291cmNlKGNvbnN0IFVSTCYgdXJsKSBjb25zdAogICAg
IHJldHVybiBBcmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShkYXRhLCB1cmwsIHJlc291cmNlLT5yZXNw
b25zZSgpKTsKIH0KIAotVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+PiBEb2N1bWVudExv
YWRlcjo6c3VicmVzb3VyY2VzKCkgY29uc3QKK1ZlY3RvcjxSZWY8QXJjaGl2ZVJlc291cmNlPj4g
RG9jdW1lbnRMb2FkZXI6OnN1YnJlc291cmNlcygpIGNvbnN0CiB7CiAgICAgaWYgKCFpc0NvbW1p
dHRlZCgpKQogICAgICAgICByZXR1cm4geyB9OwogCi0gICAgVmVjdG9yPFJlZlB0cjxBcmNoaXZl
UmVzb3VyY2U+PiBzdWJyZXNvdXJjZXM7Ci0KLSAgICBmb3IgKGF1dG8mIGNhY2hlZFJlc291cmNl
SGFuZGxlIDogbV9jYWNoZWRSZXNvdXJjZUxvYWRlci0+YWxsQ2FjaGVkUmVzb3VyY2VzKCkudmFs
dWVzKCkpIHsKLSAgICAgICAgaWYgKFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IHN1YnJlc291cmNl
ID0gdGhpcy0+c3VicmVzb3VyY2UoVVJMKFBhcnNlZFVSTFN0cmluZywgY2FjaGVkUmVzb3VyY2VI
YW5kbGUtPnVybCgpKSkpCi0gICAgICAgICAgICBzdWJyZXNvdXJjZXMuYXBwZW5kKFdURk1vdmUo
c3VicmVzb3VyY2UpKTsKKyAgICBWZWN0b3I8UmVmPEFyY2hpdmVSZXNvdXJjZT4+IHN1YnJlc291
cmNlczsKKyAgICBmb3IgKGF1dG8mIGhhbmRsZSA6IG1fY2FjaGVkUmVzb3VyY2VMb2FkZXItPmFs
bENhY2hlZFJlc291cmNlcygpLnZhbHVlcygpKSB7CisgICAgICAgIGlmIChhdXRvIHN1YnJlc291
cmNlID0gdGhpcy0+c3VicmVzb3VyY2UoeyBQYXJzZWRVUkxTdHJpbmcsIGhhbmRsZS0+dXJsKCkg
fSkpCisgICAgICAgICAgICBzdWJyZXNvdXJjZXMuYXBwZW5kKHN1YnJlc291cmNlLnJlbGVhc2VO
b25OdWxsKCkpOwogICAgIH0KLQogICAgIHJldHVybiBzdWJyZXNvdXJjZXM7CiB9CiAKQEAgLTEy
MjUsOSArMTE3NCwxMSBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpkZWxpdmVyU3Vic3RpdHV0ZVJl
c291cmNlc0FmdGVyRGVsYXkoKQogewogICAgIGlmIChtX3BlbmRpbmdTdWJzdGl0dXRlUmVzb3Vy
Y2VzLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwotICAgIEFTU0VSVChtX2ZyYW1lICYmIG1f
ZnJhbWUtPnBhZ2UoKSk7CisgICAgQVNTRVJUKG1fZnJhbWUpOworICAgIEFTU0VSVChtX2ZyYW1l
LT5wYWdlKCkpOwogICAgIGlmIChtX2ZyYW1lLT5wYWdlKCktPmRlZmVyc0xvYWRpbmcoKSkKICAg
ICAgICAgcmV0dXJuOworCiAgICAgaWYgKCFtX3N1YnN0aXR1dGVSZXNvdXJjZURlbGl2ZXJ5VGlt
ZXIuaXNBY3RpdmUoKSkKICAgICAgICAgbV9zdWJzdGl0dXRlUmVzb3VyY2VEZWxpdmVyeVRpbWVy
LnN0YXJ0T25lU2hvdCgwKTsKIH0KQEAgLTEyMzYsMTggKzExODcsMTUgQEAgdm9pZCBEb2N1bWVu
dExvYWRlcjo6c3Vic3RpdHV0ZVJlc291cmNlRGVsaXZlcnlUaW1lckZpcmVkKCkKIHsKICAgICBp
ZiAobV9wZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlcy5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVy
bjsKLSAgICBBU1NFUlQobV9mcmFtZSAmJiBtX2ZyYW1lLT5wYWdlKCkpOworICAgIEFTU0VSVCht
X2ZyYW1lKTsKKyAgICBBU1NFUlQobV9mcmFtZS0+cGFnZSgpKTsKICAgICBpZiAobV9mcmFtZS0+
cGFnZSgpLT5kZWZlcnNMb2FkaW5nKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIFN1YnN0aXR1
dGVSZXNvdXJjZU1hcCBjb3B5OwotICAgIGNvcHkuc3dhcChtX3BlbmRpbmdTdWJzdGl0dXRlUmVz
b3VyY2VzKTsKLQotICAgIGZvciAoYXV0byYgZW50cnkgOiBjb3B5KSB7Ci0gICAgICAgIGF1dG8m
IGxvYWRlciA9IGVudHJ5LmtleTsKLSAgICAgICAgU3Vic3RpdHV0ZVJlc291cmNlKiByZXNvdXJj
ZSA9IGVudHJ5LnZhbHVlLmdldCgpOwotCi0gICAgICAgIGlmIChyZXNvdXJjZSkKKyAgICBhdXRv
IHBlbmRpbmdTdWJzdGl0dXRlUmVzb3VyY2VzID0gV1RGTW92ZShtX3BlbmRpbmdTdWJzdGl0dXRl
UmVzb3VyY2VzKTsKKyAgICBmb3IgKGF1dG8mIHBlbmRpbmdTdWJzdGl0dXRlUmVzb3VyY2UgOiBw
ZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlcykgeworICAgICAgICBhdXRvJiBsb2FkZXIgPSBwZW5k
aW5nU3Vic3RpdHV0ZVJlc291cmNlLmtleTsKKyAgICAgICAgaWYgKGF1dG8mIHJlc291cmNlID0g
cGVuZGluZ1N1YnN0aXR1dGVSZXNvdXJjZS52YWx1ZSkKICAgICAgICAgICAgIHJlc291cmNlLT5k
ZWxpdmVyKCpsb2FkZXIpOwogICAgICAgICBlbHNlIHsKICAgICAgICAgICAgIC8vIEEgbnVsbCBy
ZXNvdXJjZSBtZWFucyB0aGF0IHdlIHNob3VsZCBmYWlsIHRoZSBsb2FkLgpAQCAtMTI1OCwxMCAr
MTIwNiwxMiBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpzdWJzdGl0dXRlUmVzb3VyY2VEZWxpdmVy
eVRpbWVyRmlyZWQoKQogfQogCiAjaWZuZGVmIE5ERUJVRworCiBib29sIERvY3VtZW50TG9hZGVy
Ojppc1N1YnN0aXR1dGVMb2FkUGVuZGluZyhSZXNvdXJjZUxvYWRlciogbG9hZGVyKSBjb25zdAog
ewogICAgIHJldHVybiBtX3BlbmRpbmdTdWJzdGl0dXRlUmVzb3VyY2VzLmNvbnRhaW5zKGxvYWRl
cik7CiB9CisKICNlbmRpZgogCiB2b2lkIERvY3VtZW50TG9hZGVyOjpjYW5jZWxQZW5kaW5nU3Vi
c3RpdHV0ZUxvYWQoUmVzb3VyY2VMb2FkZXIqIGxvYWRlcikKQEAgLTEyNzQsOSArMTIyNCwxMCBA
QCB2b2lkIERvY3VtZW50TG9hZGVyOjpjYW5jZWxQZW5kaW5nU3Vic3RpdHV0ZUxvYWQoUmVzb3Vy
Y2VMb2FkZXIqIGxvYWRlcikKIH0KIAogI2lmIEVOQUJMRShXRUJfQVJDSElWRSkgfHwgRU5BQkxF
KE1IVE1MKQorCiBib29sIERvY3VtZW50TG9hZGVyOjpzY2hlZHVsZUFyY2hpdmVMb2FkKFJlc291
cmNlTG9hZGVyJiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKIHsKLSAg
ICBpZiAoQXJjaGl2ZVJlc291cmNlKiByZXNvdXJjZSA9IGFyY2hpdmVSZXNvdXJjZUZvclVSTChy
ZXF1ZXN0LnVybCgpKSkgeworICAgIGlmIChhdXRvKiByZXNvdXJjZSA9IGFyY2hpdmVSZXNvdXJj
ZUZvclVSTChyZXF1ZXN0LnVybCgpKSkgewogICAgICAgICBzY2hlZHVsZVN1YnN0aXR1dGVSZXNv
dXJjZUxvYWQobG9hZGVyLCAqcmVzb3VyY2UpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9
CkBAIC0xMjg0LDIxICsxMjM1LDE5IEBAIGJvb2wgRG9jdW1lbnRMb2FkZXI6OnNjaGVkdWxlQXJj
aGl2ZUxvYWQoUmVzb3VyY2VMb2FkZXImIGxvYWRlciwgY29uc3QgUmVzb3VyY2VSCiAgICAgaWYg
KCFtX2FyY2hpdmUpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIHN3aXRjaCAobV9hcmNo
aXZlLT50eXBlKCkpIHsKICNpZiBFTkFCTEUoV0VCX0FSQ0hJVkUpCi0gICAgY2FzZSBBcmNoaXZl
OjpXZWJBcmNoaXZlOgotICAgICAgICAvLyBXZWJBcmNoaXZlRGVidWdNb2RlIG1lYW5zIHdlIGZh
aWwgbG9hZHMgaW5zdGVhZCBvZiB0cnlpbmcgdG8gZmV0Y2ggdGhlbSBmcm9tIHRoZSBuZXR3b3Jr
IGlmIHRoZXkncmUgbm90IGluIHRoZSBhcmNoaXZlLgotICAgICAgICByZXR1cm4gbV9mcmFtZS0+
c2V0dGluZ3MoKS53ZWJBcmNoaXZlRGVidWdNb2RlRW5hYmxlZCgpICYmIEFyY2hpdmVGYWN0b3J5
Ojppc0FyY2hpdmVNaW1lVHlwZShyZXNwb25zZU1JTUVUeXBlKCkpOwotI2VuZGlmCi0jaWYgRU5B
QkxFKE1IVE1MKQotICAgIGNhc2UgQXJjaGl2ZTo6TUhUTUw6Ci0gICAgICAgIHJldHVybiB0cnVl
OyAvLyBBbHdheXMgZmFpbCB0aGUgbG9hZCBmb3IgcmVzb3VyY2VzIG5vdCBpbmNsdWRlZCBpbiB0
aGUgTUhUTUwuCisgICAgLy8gVGhlIGlkZWEgb2YgV2ViQXJjaGl2ZURlYnVnTW9kZSBpcyB0aGF0
IHdlIHNob3VsZCBmYWlsIGluc3RlYWQgb2YgdHJ5aW5nIHRvIGZldGNoIGZyb20gdGhlIG5ldHdv
cmsuCisgICAgLy8gUmV0dXJuaW5nIHRydWUgZW5zdXJlcyB0aGUgY2FsbGVyIHdpbGwgbm90IHRy
eSB0byBmZXRjaCBmcm9tIHRoZSBuZXR3b3JrLgorICAgIGlmIChtX2ZyYW1lLT5zZXR0aW5ncygp
LndlYkFyY2hpdmVEZWJ1Z01vZGVFbmFibGVkKCkgJiYgcmVzcG9uc2VNSU1FVHlwZSgpID09ICJh
cHBsaWNhdGlvbi94LXdlYmFyY2hpdmUiKQorICAgICAgICByZXR1cm4gdHJ1ZTsKICNlbmRpZgot
ICAgIGRlZmF1bHQ6Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICB9CisKKyAgICAvLyBJZiB3
ZSB3YW50IHRvIGxvYWQgZnJvbSB0aGUgYXJjaGl2ZSBvbmx5LCB0aGVuIHdlIHNob3VsZCBhbHdh
eXMgcmV0dXJuIHRydWUgc28gdGhhdCB0aGUgY2FsbGVyCisgICAgLy8gZG9lcyBub3QgdHJ5IHRv
IGZldGNoIGZvcm0gdGhlIG5ldHdvcmsuCisgICAgcmV0dXJuIG1fYXJjaGl2ZS0+c2hvdWxkTG9h
ZEZyb21BcmNoaXZlT25seSgpOwogfQotI2VuZGlmIC8vIEVOQUJMRShXRUJfQVJDSElWRSkKKwor
I2VuZGlmCiAKIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnNjaGVkdWxlU3Vic3RpdHV0ZVJlc291cmNl
TG9hZChSZXNvdXJjZUxvYWRlciYgbG9hZGVyLCBTdWJzdGl0dXRlUmVzb3VyY2UmIHJlc291cmNl
KQogewpAQCAtMTMwNiwxMCArMTI1NSwxMCBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpzY2hlZHVs
ZVN1YnN0aXR1dGVSZXNvdXJjZUxvYWQoUmVzb3VyY2VMb2FkZXImIGxvYWRlciwgU3VicwogICAg
IGRlbGl2ZXJTdWJzdGl0dXRlUmVzb3VyY2VzQWZ0ZXJEZWxheSgpOwogfQogCi12b2lkIERvY3Vt
ZW50TG9hZGVyOjphZGRSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByKQordm9pZCBE
b2N1bWVudExvYWRlcjo6YWRkUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9u
c2UpCiB7CiAgICAgaWYgKCFtX3N0b3BSZWNvcmRpbmdSZXNwb25zZXMpCi0gICAgICAgIG1fcmVz
cG9uc2VzLmFwcGVuZChyKTsKKyAgICAgICAgbV9yZXNwb25zZXMuYXBwZW5kKHJlc3BvbnNlKTsK
IH0KIAogdm9pZCBEb2N1bWVudExvYWRlcjo6c3RvcFJlY29yZGluZ1Jlc3BvbnNlcygpCkBAIC0x
MzQ0LDIxICsxMjkzLDExIEBAIGJvb2wgRG9jdW1lbnRMb2FkZXI6OnVybEZvckhpc3RvcnlSZWZs
ZWN0c0ZhaWx1cmUoKSBjb25zdAogICAgIHJldHVybiBtX3N1YnN0aXR1dGVEYXRhLmlzVmFsaWQo
KSB8fCBtX3Jlc3BvbnNlLmh0dHBTdGF0dXNDb2RlKCkgPj0gNDAwOwogfQogCi1jb25zdCBVUkwm
IERvY3VtZW50TG9hZGVyOjpvcmlnaW5hbFVSTCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fb3Jp
Z2luYWxSZXF1ZXN0Q29weS51cmwoKTsKLX0KLQotY29uc3QgVVJMJiBEb2N1bWVudExvYWRlcjo6
cmVzcG9uc2VVUkwoKSBjb25zdAotewotICAgIHJldHVybiBtX3Jlc3BvbnNlLnVybCgpOwotfQot
CiBVUkwgRG9jdW1lbnRMb2FkZXI6OmRvY3VtZW50VVJMKCkgY29uc3QKIHsKICAgICBVUkwgdXJs
ID0gc3Vic3RpdHV0ZURhdGEoKS5yZXNwb25zZSgpLnVybCgpOwogI2lmIEVOQUJMRShXRUJfQVJD
SElWRSkKLSAgICBpZiAodXJsLmlzRW1wdHkoKSAmJiBtX2FyY2hpdmUgJiYgbV9hcmNoaXZlLT50
eXBlKCkgPT0gQXJjaGl2ZTo6V2ViQXJjaGl2ZSkKKyAgICBpZiAodXJsLmlzRW1wdHkoKSAmJiBt
X2FyY2hpdmUgJiYgbV9hcmNoaXZlLT5zaG91bGRVc2VNYWluUmVzb3VyY2VVUkwoKSkKICAgICAg
ICAgdXJsID0gbV9hcmNoaXZlLT5tYWluUmVzb3VyY2UoKS0+dXJsKCk7CiAjZW5kaWYKICAgICBp
ZiAodXJsLmlzRW1wdHkoKSkKQEAgLTEzNjgsMjggKzEzMDcsMTUgQEAgVVJMIERvY3VtZW50TG9h
ZGVyOjpkb2N1bWVudFVSTCgpIGNvbnN0CiAgICAgcmV0dXJuIHVybDsKIH0KIAotY29uc3QgU3Ry
aW5nJiBEb2N1bWVudExvYWRlcjo6cmVzcG9uc2VNSU1FVHlwZSgpIGNvbnN0Ci17Ci0gICAgcmV0
dXJuIG1fcmVzcG9uc2UubWltZVR5cGUoKTsKLX0KLQotY29uc3QgU3RyaW5nJiBEb2N1bWVudExv
YWRlcjo6Y3VycmVudENvbnRlbnRUeXBlKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV93cml0ZXIu
bWltZVR5cGUoKTsKLX0KLQogI2lmIFBMQVRGT1JNKElPUykKKwogLy8gRklYTUU6IFRoaXMgbWV0
aG9kIHNlZW1zIHRvIHZpb2xhdGUgdGhlIGVuY2Fwc3VsYXRpb24gb2YgdGhpcyBjbGFzcy4KIHZv
aWQgRG9jdW1lbnRMb2FkZXI6OnNldFJlc3BvbnNlTUlNRVR5cGUoY29uc3QgU3RyaW5nJiByZXNw
b25zZU1pbWVUeXBlKQogewogICAgIG1fcmVzcG9uc2Uuc2V0TWltZVR5cGUocmVzcG9uc2VNaW1l
VHlwZSk7CiB9Ci0jZW5kaWYKIAotY29uc3QgVVJMJiBEb2N1bWVudExvYWRlcjo6dW5yZWFjaGFi
bGVVUkwoKSBjb25zdAotewotICAgIHJldHVybiBtX3N1YnN0aXR1dGVEYXRhLmZhaWxpbmdVUkwo
KTsKLX0KKyNlbmRpZgogCiB2b2lkIERvY3VtZW50TG9hZGVyOjpzZXREZWZlcnNMb2FkaW5nKGJv
b2wgZGVmZXJzKQogewpAQCAtMTY4Miw3ICsxNjA4LDcgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6
Z2V0SWNvbkxvYWREZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcpCiAg
ICAgaWYgKG1faWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrKQogICAgICAgICBtX2ljb25Mb2FkRGVj
aXNpb25DYWxsYmFjay0+aW52YWxpZGF0ZSgpOwogICAgIG1faWNvbkxvYWREZWNpc2lvbkNhbGxi
YWNrID0gSWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrOjpjcmVhdGUodGhpcywgaWNvbkxvYWREZWNp
c2lvbkNhbGxiYWNrKTsKLSAgICBpY29uRGF0YWJhc2UoKS5sb2FkRGVjaXNpb25Gb3JJY29uVVJM
KHVybFN0cmluZywgbV9pY29uTG9hZERlY2lzaW9uQ2FsbGJhY2spOworICAgIGljb25EYXRhYmFz
ZSgpLmxvYWREZWNpc2lvbkZvckljb25VUkwodXJsU3RyaW5nLCAqbV9pY29uTG9hZERlY2lzaW9u
Q2FsbGJhY2spOwogfQogCiB2b2lkIERvY3VtZW50TG9hZGVyOjpjb250aW51ZUljb25Mb2FkV2l0
aERlY2lzaW9uKEljb25Mb2FkRGVjaXNpb24gZGVjaXNpb24pCkBAIC0xNzAzLDcgKzE2MjksNyBA
QCB2b2lkIERvY3VtZW50TG9hZGVyOjpnZXRJY29uRGF0YUZvckljb25VUkwoY29uc3QgU3RyaW5n
JiB1cmxTdHJpbmcpCiAgICAgaWYgKG1faWNvbkRhdGFDYWxsYmFjaykKICAgICAgICAgbV9pY29u
RGF0YUNhbGxiYWNrLT5pbnZhbGlkYXRlKCk7CiAgICAgbV9pY29uRGF0YUNhbGxiYWNrID0gSWNv
bkRhdGFDYWxsYmFjazo6Y3JlYXRlKHRoaXMsIGljb25EYXRhQ2FsbGJhY2spOwotICAgIGljb25E
YXRhYmFzZSgpLmljb25EYXRhRm9ySWNvblVSTCh1cmxTdHJpbmcsIG1faWNvbkRhdGFDYWxsYmFj
ayk7CisgICAgaWNvbkRhdGFiYXNlKCkuaWNvbkRhdGFGb3JJY29uVVJMKHVybFN0cmluZywgKm1f
aWNvbkRhdGFDYWxsYmFjayk7CiB9CiAKIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnN0YXJ0SWNvbkxv
YWRpbmcoKQpAQCAtMTc0OSw3ICsxNjc1LDcgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6ZmluaXNo
ZWRMb2FkaW5nSWNvbihJY29uTG9hZGVyJiBsb2FkZXIsIFNoYXJlZEJ1ZmZlciogYnVmZmUKIHZv
aWQgRG9jdW1lbnRMb2FkZXI6OmRpc3BhdGNoT25sb2FkRXZlbnRzKCkKIHsKICAgICBtX3dhc09u
bG9hZERpc3BhdGNoZWQgPSB0cnVlOwotICAgIGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPnN0b3BE
ZWZlcnJpbmdFdmVudHMoKTsKKyAgICBtX2FwcGxpY2F0aW9uQ2FjaGVIb3N0LT5zdG9wRGVmZXJy
aW5nRXZlbnRzKCk7CiB9CiAKIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnNldFRyaWdnZXJpbmdBY3Rp
b24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgYWN0aW9uKQpAQCAtMTc4OSwyMyArMTcxNSwxOCBA
QCB2b2lkIERvY3VtZW50TG9hZGVyOjphZGRQZW5kaW5nQ29udGVudEV4dGVuc2lvbkRpc3BsYXlO
b25lU2VsZWN0b3IoY29uc3QgU3RyaW5nJgogfQogI2VuZGlmCiAKLSNpZiBFTkFCTEUoQ09OVEVO
VF9GSUxURVJJTkcpCi1Db250ZW50RmlsdGVyKiBEb2N1bWVudExvYWRlcjo6Y29udGVudEZpbHRl
cigpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fY29udGVudEZpbHRlci5nZXQoKTsKLX0KLSNlbmRp
ZgotCiBib29sIERvY3VtZW50TG9hZGVyOjppc0Fsd2F5c09uTG9nZ2luZ0FsbG93ZWQoKSBjb25z
dAogewotICAgIHJldHVybiBtX2ZyYW1lID8gbV9mcmFtZS0+aXNBbHdheXNPbkxvZ2dpbmdBbGxv
d2VkKCkgOiB0cnVlOworICAgIHJldHVybiAhbV9mcmFtZSB8fCBtX2ZyYW1lLT5pc0Fsd2F5c09u
TG9nZ2luZ0FsbG93ZWQoKTsKIH0KIAogI2lmIFVTRShRVUlDS19MT09LKQorCiB2b2lkIERvY3Vt
ZW50TG9hZGVyOjpzZXRRdWlja0xvb2tIYW5kbGUoc3RkOjp1bmlxdWVfcHRyPFF1aWNrTG9va0hh
bmRsZT4gcXVpY2tMb29rSGFuZGxlKQogewogICAgIG1fcXVpY2tMb29rSGFuZGxlID0gV1RGTW92
ZShxdWlja0xvb2tIYW5kbGUpOwogfQorCiAjZW5kaWYKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmggYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuaAppbmRleCBkNzBiMzliODZmODJj
MDcyM2QzMmZhNmU4MTU2NTkyNDg3ZTY2MDkyLi44N2U0ZWI3NjNiYWVhMWRkNjU4NTM0ZDgyZjk0
NzlhZjBjMjg1NWVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRM
b2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuaApAQCAt
MSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNiBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKQEAgLTc2LDggKzc2LDcgQEAg
Y2xhc3MgU2hhcmVkQnVmZmVyOwogY2xhc3MgU3VicmVzb3VyY2VMb2FkZXI7CiBjbGFzcyBTdWJz
dGl0dXRlUmVzb3VyY2U7CiAKLXR5cGVkZWYgSGFzaE1hcDx1bnNpZ25lZCBsb25nLCBSZWZQdHI8
UmVzb3VyY2VMb2FkZXI+PiBSZXNvdXJjZUxvYWRlck1hcDsKLXR5cGVkZWYgVmVjdG9yPFJlc291
cmNlUmVzcG9uc2U+IFJlc3BvbnNlVmVjdG9yOwordXNpbmcgUmVzb3VyY2VMb2FkZXJNYXAgPSBI
YXNoTWFwPHVuc2lnbmVkIGxvbmcsIFJlZlB0cjxSZXNvdXJjZUxvYWRlcj4+OwogCiBjbGFzcyBE
b2N1bWVudExvYWRlciA6IHB1YmxpYyBSZWZDb3VudGVkPERvY3VtZW50TG9hZGVyPiwgcHJpdmF0
ZSBDYWNoZWRSYXdSZXNvdXJjZUNsaWVudCB7CiAgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7
CkBAIC0xNTAsMTQgKzE0OSwxNSBAQCBwdWJsaWM6CiAjZW5kaWYKIAogI2lmIEVOQUJMRShXRUJf
QVJDSElWRSkgfHwgRU5BQkxFKE1IVE1MKQotICAgIHZvaWQgc2V0QXJjaGl2ZShQYXNzUmVmUHRy
PEFyY2hpdmU+KTsKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGFkZEFsbEFyY2hpdmVSZXNvdXJj
ZXMoQXJjaGl2ZSopOworICAgIHZvaWQgc2V0QXJjaGl2ZShSZWY8QXJjaGl2ZT4mJik7CisgICAg
V0VCQ09SRV9FWFBPUlQgdm9pZCBhZGRBbGxBcmNoaXZlUmVzb3VyY2VzKEFyY2hpdmUmKTsKICAg
ICBXRUJDT1JFX0VYUE9SVCB2b2lkIGFkZEFyY2hpdmVSZXNvdXJjZShSZWY8QXJjaGl2ZVJlc291
cmNlPiYmKTsKLSAgICBQYXNzUmVmUHRyPEFyY2hpdmU+IHBvcEFyY2hpdmVGb3JTdWJmcmFtZShj
b25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgY29uc3QgVVJMJik7CisgICAgUmVmUHRyPEFyY2hpdmU+
IHBvcEFyY2hpdmVGb3JTdWJmcmFtZShjb25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgY29uc3QgVVJM
Jik7CiAgICAgV0VCQ09SRV9FWFBPUlQgU2hhcmVkQnVmZmVyKiBwYXJzZWRBcmNoaXZlRGF0YSgp
IGNvbnN0OwogCiAgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBzY2hlZHVsZUFyY2hpdmVMb2FkKFJl
c291cmNlTG9hZGVyJiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7CiAjZW5kaWYKKwogICAgIHZv
aWQgc2NoZWR1bGVTdWJzdGl0dXRlUmVzb3VyY2VMb2FkKFJlc291cmNlTG9hZGVyJiwgU3Vic3Rp
dHV0ZVJlc291cmNlJik7CiAKICAgICAvLyBSZXR1cm4gdGhlIEFyY2hpdmVSZXNvdXJjZSBmb3Ig
dGhlIFVSTCBvbmx5IHdoZW4gbG9hZGluZyBhbiBBcmNoaXZlCkBAIC0xNjYsOSArMTY2LDEwIEBA
IHB1YmxpYzoKICAgICBXRUJDT1JFX0VYUE9SVCBSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBtYWlu
UmVzb3VyY2UoKSBjb25zdDsKIAogICAgIC8vIFJldHVybiBhbiBBcmNoaXZlUmVzb3VyY2UgZm9y
IHRoZSBVUkwsIGVpdGhlciBjcmVhdGluZyBmcm9tIGxpdmUgZGF0YSBvcgotICAgIC8vIHB1bGxp
bmcgZnJvbSB0aGUgQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbgotICAgIFdFQkNPUkVfRVhQT1JU
IFBhc3NSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBzdWJyZXNvdXJjZShjb25zdCBVUkwmKSBjb25z
dDsKLSAgICBXRUJDT1JFX0VYUE9SVCBWZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+IHN1
YnJlc291cmNlcygpIGNvbnN0OworICAgIC8vIHB1bGxpbmcgZnJvbSB0aGUgQXJjaGl2ZVJlc291
cmNlQ29sbGVjdGlvbi4KKyAgICBXRUJDT1JFX0VYUE9SVCBSZWZQdHI8QXJjaGl2ZVJlc291cmNl
PiBzdWJyZXNvdXJjZShjb25zdCBVUkwmKSBjb25zdDsKKworICAgIFdFQkNPUkVfRVhQT1JUIFZl
Y3RvcjxSZWY8QXJjaGl2ZVJlc291cmNlPj4gc3VicmVzb3VyY2VzKCkgY29uc3Q7CiAKICNpZm5k
ZWYgTkRFQlVHCiAgICAgYm9vbCBpc1N1YnN0aXR1dGVMb2FkUGVuZGluZyhSZXNvdXJjZUxvYWRl
ciopIGNvbnN0OwpAQCAtMTc2LDcgKzE3Nyw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGNhbmNlbFBl
bmRpbmdTdWJzdGl0dXRlTG9hZChSZXNvdXJjZUxvYWRlciopOyAgIAogICAgIAogICAgIHZvaWQg
YWRkUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwotICAgIGNvbnN0IFJlc3BvbnNl
VmVjdG9yJiByZXNwb25zZXMoKSBjb25zdCB7IHJldHVybiBtX3Jlc3BvbnNlczsgfQorICAgIGNv
bnN0IFZlY3RvcjxSZXNvdXJjZVJlc3BvbnNlPiYgcmVzcG9uc2VzKCkgY29uc3QgeyByZXR1cm4g
bV9yZXNwb25zZXM7IH0KIAogICAgIGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIHRyaWdnZXJpbmdB
Y3Rpb24oKSBjb25zdCB7IHJldHVybiBtX3RyaWdnZXJpbmdBY3Rpb247IH0KICAgICB2b2lkIHNl
dFRyaWdnZXJpbmdBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYpOwpAQCAtMjQwLDE3ICsy
NDEsNyBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHNldERlZmVyTWFpblJlc291cmNlRGF0YUxvYWQo
Ym9vbCBkZWZlcikgeyBtX2RlZmVyTWFpblJlc291cmNlRGF0YUxvYWQgPSBkZWZlcjsgfQogICAg
IAotICAgIHZvaWQgZGlkVGVsbENsaWVudEFib3V0TG9hZChjb25zdCBTdHJpbmcmIHVybCkKLSAg
ICB7IAotI2lmICFQTEFURk9STShDT0NPQSkKLSAgICAgICAgLy8gRG9uJ3QgaW5jbHVkZSBkYXRh
IHVybHMgaGVyZSwgYXMgaWYgYSBsb3Qgb2YgZGF0YSBpcyBsb2FkZWQKLSAgICAgICAgLy8gdGhh
dCB3YXksIHdlIGhvbGQgb24gdG8gdGhlIChsYXJnZSkgdXJsIHN0cmluZyBmb3IgdG9vIGxvbmcu
Ci0gICAgICAgIGlmIChwcm90b2NvbElzKHVybCwgImRhdGEiKSkKLSAgICAgICAgICAgIHJldHVy
bjsKLSNlbmRpZgotICAgICAgICBpZiAoIXVybC5pc0VtcHR5KCkpCi0gICAgICAgICAgICBtX3Jl
c291cmNlc0NsaWVudEtub3dzQWJvdXQuYWRkKHVybCk7Ci0gICAgfQorICAgIHZvaWQgZGlkVGVs
bENsaWVudEFib3V0TG9hZChjb25zdCBTdHJpbmcmIHVybCk7CiAgICAgYm9vbCBoYXZlVG9sZENs
aWVudEFib3V0TG9hZChjb25zdCBTdHJpbmcmIHVybCkgeyByZXR1cm4gbV9yZXNvdXJjZXNDbGll
bnRLbm93c0Fib3V0LmNvbnRhaW5zKHVybCk7IH0KICAgICB2b2lkIHJlY29yZE1lbW9yeUNhY2hl
TG9hZEZvckZ1dHVyZUNsaWVudE5vdGlmaWNhdGlvbihjb25zdCBSZXNvdXJjZVJlcXVlc3QmKTsK
ICAgICB2b2lkIHRha2VNZW1vcnlDYWNoZUxvYWRzRm9yQ2xpZW50Tm90aWZpY2F0aW9uKFZlY3Rv
cjxSZXNvdXJjZVJlcXVlc3Q+JiBsb2Fkcyk7CkBAIC0yNTgsMTEgKzI0OSwxMSBAQCBwdWJsaWM6
CiAgICAgTG9hZFRpbWluZyYgdGltaW5nKCkgeyByZXR1cm4gbV9sb2FkVGltaW5nOyB9CiAgICAg
dm9pZCByZXNldFRpbWluZygpIHsgbV9sb2FkVGltaW5nID0gTG9hZFRpbWluZygpOyB9CiAKLSAg
ICAvLyBUaGUgV2ViS2l0IGxheWVyIGNhbGxzIHRoaXMgZnVuY3Rpb24gd2hlbiBpdCdzIHJlYWR5
IGZvciB0aGUgZGF0YSB0bwotICAgIC8vIGFjdHVhbGx5IGJlIGFkZGVkIHRvIHRoZSBkb2N1bWVu
dC4KKyAgICAvLyBUaGUgV2ViS2l0IGxheWVyIGNhbGxzIHRoaXMgZnVuY3Rpb24gd2hlbiBpdCdz
IHJlYWR5IGZvciB0aGUgZGF0YSB0byBhY3R1YWxseSBiZSBhZGRlZCB0byB0aGUgZG9jdW1lbnQu
CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBjb21taXREYXRhKGNvbnN0IGNoYXIqIGJ5dGVzLCBz
aXplX3QgbGVuZ3RoKTsKIAotICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0KiBhcHBsaWNhdGlvbkNh
Y2hlSG9zdCgpIGNvbnN0IHsgcmV0dXJuIG1fYXBwbGljYXRpb25DYWNoZUhvc3QuZ2V0KCk7IH0K
KyAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdCYgYXBwbGljYXRpb25DYWNoZUhvc3QoKSBjb25zdDsK
KyAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdCogYXBwbGljYXRpb25DYWNoZUhvc3RVbmxlc3NCZWlu
Z0Rlc3Ryb3llZCgpIGNvbnN0OwogCiAgICAgdm9pZCBjaGVja0xvYWRDb21wbGV0ZSgpOwogCkBA
IC0yOTcsNyArMjg4LDcgQEAgcHJvdGVjdGVkOgogCiAgICAgV0VCQ09SRV9FWFBPUlQgdmlydHVh
bCB2b2lkIGF0dGFjaFRvRnJhbWUoKTsKIAotICAgIGJvb2wgbV9kZWZlck1haW5SZXNvdXJjZURh
dGFMb2FkOworICAgIGJvb2wgbV9kZWZlck1haW5SZXNvdXJjZURhdGFMb2FkIHsgdHJ1ZSB9Owog
CiBwcml2YXRlOgogICAgIERvY3VtZW50KiBkb2N1bWVudCgpIGNvbnN0OwpAQCAtMzU4LDcgKzM0
OSw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBjYW5jZWxQb2xpY3lDaGVja0lmTmVlZGVkKCk7CiAg
ICAgdm9pZCBiZWNvbWVNYWluUmVzb3VyY2VDbGllbnQoKTsKIAotICAgIEZyYW1lKiBtX2ZyYW1l
OworICAgIEZyYW1lKiBtX2ZyYW1lIHsgbnVsbHB0ciB9OwogICAgIFJlZjxDYWNoZWRSZXNvdXJj
ZUxvYWRlcj4gbV9jYWNoZWRSZXNvdXJjZUxvYWRlcjsKIAogICAgIENhY2hlZFJlc291cmNlSGFu
ZGxlPENhY2hlZFJhd1Jlc291cmNlPiBtX21haW5SZXNvdXJjZTsKQEAgLTM5MCwxNSArMzgxLDE1
IEBAIHByaXZhdGU6CiAgICAgUmVzb3VyY2VFcnJvciBtX21haW5Eb2N1bWVudEVycm9yOyAgICAK
IAogICAgIGJvb2wgbV9vcmlnaW5hbFN1YnN0aXR1dGVEYXRhV2FzVmFsaWQ7Ci0gICAgYm9vbCBt
X2NvbW1pdHRlZDsKLSAgICBib29sIG1faXNTdG9wcGluZzsKLSAgICBib29sIG1fZ290Rmlyc3RC
eXRlOwotICAgIGJvb2wgbV9pc0NsaWVudFJlZGlyZWN0OwotICAgIGJvb2wgbV9pc0xvYWRpbmdN
dWx0aXBhcnRDb250ZW50OworICAgIGJvb2wgbV9jb21taXR0ZWQgeyBmYWxzZSB9OworICAgIGJv
b2wgbV9pc1N0b3BwaW5nIHsgZmFsc2UgfTsKKyAgICBib29sIG1fZ290Rmlyc3RCeXRlIHsgZmFs
c2UgfTsKKyAgICBib29sIG1faXNDbGllbnRSZWRpcmVjdCB7IGZhbHNlIH07CisgICAgYm9vbCBt
X2lzTG9hZGluZ011bHRpcGFydENvbnRlbnQgeyBmYWxzZSB9OwogCiAgICAgLy8gRklYTUU6IERv
Y3VtZW50OjptX3Byb2Nlc3NpbmdMb2FkRXZlbnQgYW5kIERvY3VtZW50TG9hZGVyOjptX3dhc09u
bG9hZERpc3BhdGNoZWQgYXJlIHJvdWdobHkgdGhlIHNhbWUKICAgICAvLyBhbmQgc2hvdWxkIGJl
IG1lcmdlZC4KLSAgICBib29sIG1fd2FzT25sb2FkRGlzcGF0Y2hlZDsKKyAgICBib29sIG1fd2Fz
T25sb2FkRGlzcGF0Y2hlZCB7IGZhbHNlIH07CiAKICAgICBTdHJpbmdXaXRoRGlyZWN0aW9uIG1f
cGFnZVRpdGxlOwogCkBAIC00MTUsOCArNDA2LDggQEAgcHJpdmF0ZToKICAgICAvLyBXZSByZXRh
aW4gYWxsIHRoZSByZWNlaXZlZCByZXNwb25zZXMgc28gd2UgY2FuIHBsYXkgYmFjayB0aGUKICAg
ICAvLyBXZWJSZXNvdXJjZUxvYWREZWxlZ2F0ZSBtZXNzYWdlcyBpZiB0aGUgaXRlbSBpcyBsb2Fk
ZWQgZnJvbSB0aGUKICAgICAvLyBwYWdlIGNhY2hlLgotICAgIFJlc3BvbnNlVmVjdG9yIG1fcmVz
cG9uc2VzOwotICAgIGJvb2wgbV9zdG9wUmVjb3JkaW5nUmVzcG9uc2VzOworICAgIFZlY3RvcjxS
ZXNvdXJjZVJlc3BvbnNlPiBtX3Jlc3BvbnNlczsKKyAgICBib29sIG1fc3RvcFJlY29yZGluZ1Jl
c3BvbnNlcyB7IGZhbHNlIH07CiAgICAgCiAgICAgdHlwZWRlZiBIYXNoTWFwPFJlZlB0cjxSZXNv
dXJjZUxvYWRlcj4sIFJlZlB0cjxTdWJzdGl0dXRlUmVzb3VyY2U+PiBTdWJzdGl0dXRlUmVzb3Vy
Y2VNYXA7CiAgICAgU3Vic3RpdHV0ZVJlc291cmNlTWFwIG1fcGVuZGluZ1N1YnN0aXR1dGVSZXNv
dXJjZXM7CkBAIC00MzIsMTMgKzQyMywxMyBAQCBwcml2YXRlOgogICAgIFZlY3RvcjxSZXNvdXJj
ZVJlcXVlc3Q+IG1fcmVzb3VyY2VzTG9hZGVkRnJvbU1lbW9yeUNhY2hlRm9yQ2xpZW50Tm90aWZp
Y2F0aW9uOwogICAgIAogICAgIFN0cmluZyBtX2NsaWVudFJlZGlyZWN0U291cmNlRm9ySGlzdG9y
eTsKLSAgICBib29sIG1fZGlkQ3JlYXRlR2xvYmFsSGlzdG9yeUVudHJ5OworICAgIGJvb2wgbV9k
aWRDcmVhdGVHbG9iYWxIaXN0b3J5RW50cnkgeyBmYWxzZSB9OwogCi0gICAgYm9vbCBtX2xvYWRp
bmdNYWluUmVzb3VyY2U7CisgICAgYm9vbCBtX2xvYWRpbmdNYWluUmVzb3VyY2UgeyBmYWxzZSB9
OwogICAgIExvYWRUaW1pbmcgbV9sb2FkVGltaW5nOwogCi0gICAgZG91YmxlIG1fdGltZU9mTGFz
dERhdGFSZWNlaXZlZDsKLSAgICB1bnNpZ25lZCBsb25nIG1faWRlbnRpZmllckZvckxvYWRXaXRo
b3V0UmVzb3VyY2VMb2FkZXI7CisgICAgZG91YmxlIG1fdGltZU9mTGFzdERhdGFSZWNlaXZlZCB7
IDAgfTsKKyAgICB1bnNpZ25lZCBsb25nIG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3Vy
Y2VMb2FkZXIgeyAwIH07CiAKICAgICBEb2N1bWVudExvYWRlclRpbWVyIG1fZGF0YUxvYWRUaW1l
cjsKICAgICBib29sIG1fd2FpdGluZ0ZvckNvbnRlbnRQb2xpY3kgeyBmYWxzZSB9OwpAQCAtNDUy
LDcgKzQ0Myw3IEBAIHByaXZhdGU6CiAgICAgSGFzaE1hcDx1aW50NjRfdCwgTGlua0ljb24+IG1f
aWNvbnNQZW5kaW5nTG9hZERlY2lzaW9uOwogICAgIEhhc2hNYXA8c3RkOjp1bmlxdWVfcHRyPElj
b25Mb2FkZXI+LCB1aW50NjRfdD4gbV9pY29uTG9hZGVyczsKIAotICAgIGJvb2wgbV9zdWJyZXNv
dXJjZUxvYWRlcnNBcmVQYWdlQ2FjaGVBY2NlcHRhYmxlOworICAgIGJvb2wgbV9zdWJyZXNvdXJj
ZUxvYWRlcnNBcmVQYWdlQ2FjaGVBY2NlcHRhYmxlIHsgZmFsc2UgfTsKICAgICBTaG91bGRPcGVu
RXh0ZXJuYWxVUkxzUG9saWN5IG1fc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSB7IFNob3Vs
ZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3k6OlNob3VsZE5vdEFsbG93IH07CiAKICAgICBzdGQ6OnVu
aXF1ZV9wdHI8QXBwbGljYXRpb25DYWNoZUhvc3Q+IG1fYXBwbGljYXRpb25DYWNoZUhvc3Q7CkBA
IC00ODcsNCArNDc4LDg3IEBAIGlubGluZSB2b2lkIERvY3VtZW50TG9hZGVyOjp0YWtlTWVtb3J5
Q2FjaGVMb2Fkc0ZvckNsaWVudE5vdGlmaWNhdGlvbihWZWN0b3I8UmVzCiAgICAgbV9yZXNvdXJj
ZXNMb2FkZWRGcm9tTWVtb3J5Q2FjaGVGb3JDbGllbnROb3RpZmljYXRpb24uY2xlYXIoKTsKIH0K
IAoraW5saW5lIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgRG9jdW1lbnRMb2FkZXI6Om9yaWdpbmFs
UmVxdWVzdCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fb3JpZ2luYWxSZXF1ZXN0OworfQorCitp
bmxpbmUgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiBEb2N1bWVudExvYWRlcjo6b3JpZ2luYWxSZXF1
ZXN0Q29weSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fb3JpZ2luYWxSZXF1ZXN0Q29weTsKK30K
KworaW5saW5lIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgRG9jdW1lbnRMb2FkZXI6OnJlcXVlc3Qo
KSBjb25zdAoreworICAgIHJldHVybiBtX3JlcXVlc3Q7Cit9CisKK2lubGluZSBSZXNvdXJjZVJl
cXVlc3QmIERvY3VtZW50TG9hZGVyOjpyZXF1ZXN0KCkKK3sKKyAgICByZXR1cm4gbV9yZXF1ZXN0
OworfQorCitpbmxpbmUgY29uc3QgVVJMJiBEb2N1bWVudExvYWRlcjo6dXJsKCkgY29uc3QKK3sK
KyAgICByZXR1cm4gbV9yZXF1ZXN0LnVybCgpOworfQorCitpbmxpbmUgY29uc3QgVVJMJiBEb2N1
bWVudExvYWRlcjo6b3JpZ2luYWxVUkwoKSBjb25zdAoreworICAgIHJldHVybiBtX29yaWdpbmFs
UmVxdWVzdENvcHkudXJsKCk7Cit9CisKK2lubGluZSBjb25zdCBVUkwmIERvY3VtZW50TG9hZGVy
OjpyZXNwb25zZVVSTCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fcmVzcG9uc2UudXJsKCk7Cit9
CisKK2lubGluZSBjb25zdCBTdHJpbmcmIERvY3VtZW50TG9hZGVyOjpyZXNwb25zZU1JTUVUeXBl
KCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9yZXNwb25zZS5taW1lVHlwZSgpOworfQorCitpbmxp
bmUgY29uc3QgU3RyaW5nJiBEb2N1bWVudExvYWRlcjo6Y3VycmVudENvbnRlbnRUeXBlKCkgY29u
c3QKK3sKKyAgICByZXR1cm4gbV93cml0ZXIubWltZVR5cGUoKTsKK30KKworaW5saW5lIGNvbnN0
IFVSTCYgRG9jdW1lbnRMb2FkZXI6OnVucmVhY2hhYmxlVVJMKCkgY29uc3QKK3sKKyAgICByZXR1
cm4gbV9zdWJzdGl0dXRlRGF0YS5mYWlsaW5nVVJMKCk7Cit9CisKK2lubGluZSBBcHBsaWNhdGlv
bkNhY2hlSG9zdCYgRG9jdW1lbnRMb2FkZXI6OmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkgY29uc3QK
K3sKKyAgICAvLyBGb3IgYSBzaG9ydCB0aW1lIHdoaWxlIHRoZSBkb2N1bWVudCBsb2FkZXIgaXMg
YmVpbmcgZGVzdHJveWVkLCBtX2FwcGxpY2F0aW9uQ2FjaGVIb3N0IGlzIG51bGwuCisgICAgLy8g
SXQncyBub3QgYWNjZXB0YWJsZSB0byBjYWxsIHRoaXMgZnVuY3Rpb24gZHVyaW5nIHRoYXQgdGlt
ZS4KKyAgICBBU1NFUlQobV9hcHBsaWNhdGlvbkNhY2hlSG9zdCk7CisgICAgcmV0dXJuICptX2Fw
cGxpY2F0aW9uQ2FjaGVIb3N0OworfQorCitpbmxpbmUgQXBwbGljYXRpb25DYWNoZUhvc3QqIERv
Y3VtZW50TG9hZGVyOjphcHBsaWNhdGlvbkNhY2hlSG9zdFVubGVzc0JlaW5nRGVzdHJveWVkKCkg
Y29uc3QKK3sKKyAgICByZXR1cm4gbV9hcHBsaWNhdGlvbkNhY2hlSG9zdC5nZXQoKTsKK30KKwor
I2lmIEVOQUJMRShDT05URU5UX0ZJTFRFUklORykKKworaW5saW5lIENvbnRlbnRGaWx0ZXIqIERv
Y3VtZW50TG9hZGVyOjpjb250ZW50RmlsdGVyKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9jb250
ZW50RmlsdGVyLmdldCgpOworfQorCisjZW5kaWYKKworaW5saW5lIHZvaWQgRG9jdW1lbnRMb2Fk
ZXI6OmRpZFRlbGxDbGllbnRBYm91dExvYWQoY29uc3QgU3RyaW5nJiB1cmwpCit7CisjaWYgIVBM
QVRGT1JNKENPQ09BKQorICAgIC8vIERvbid0IGluY2x1ZGUgZGF0YSBVUkxzIGhlcmUsIGFzIGlm
IGEgbG90IG9mIGRhdGEgaXMgbG9hZGVkIHRoYXQgd2F5LCB3ZSBob2xkIG9uIHRvIHRoZSAobGFy
Z2UpIFVSTCBzdHJpbmcgZm9yIHRvbyBsb25nLgorICAgIGlmIChwcm90b2NvbElzKHVybCwgImRh
dGEiKSkKKyAgICAgICAgcmV0dXJuOworI2VuZGlmCisgICAgaWYgKCF1cmwuaXNFbXB0eSgpKQor
ICAgICAgICBtX3Jlc291cmNlc0NsaWVudEtub3dzQWJvdXQuYWRkKHVybCk7Cit9CisKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuY3BwIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5jcHAKaW5kZXggZTBmNmU1YjNlMzRhOGExZThk
MzE0OWMwNDJlMWRhMGEzNzNkNGRhOS4uZWVmYzRhYTgzODMxMDQ0NmU5MjFkNGYxNzI5NTgyZTgy
NGM4YTVmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5jcHAKQEAgLTQ2LDYg
KzQ2LDcgQEAKICNpbmNsdWRlICJIVE1MRm9ybUVsZW1lbnQuaCIKICNpbmNsdWRlICJJblByb2Nl
c3NJREJTZXJ2ZXIuaCIKICNpbmNsdWRlICJJbnNwZWN0b3JDbGllbnQuaCIKKyNpbmNsdWRlICJO
ZXR3b3JrU3RvcmFnZVNlc3Npb24uaCIKICNpbmNsdWRlICJQYWdlLmgiCiAjaW5jbHVkZSAiUGFn
ZUNvbmZpZ3VyYXRpb24uaCIKICNpbmNsdWRlICJQYXltZW50Q29vcmRpbmF0b3JDbGllbnQuaCIK
QEAgLTE3MSw4ICsxNzIsOCBAQCBwcml2YXRlOgogICAgIHZvaWQgcmVxdWVzdENhbmRpZGF0ZXNG
b3JTZWxlY3Rpb24oY29uc3QgVmlzaWJsZVNlbGVjdGlvbiYpIGZpbmFsIHsgfQogICAgIHZvaWQg
aGFuZGxlQWNjZXB0ZWRDYW5kaWRhdGVXaXRoU29mdFNwYWNlcyhUZXh0Q2hlY2tpbmdSZXN1bHQp
IGZpbmFsIHsgfQogCi0gICAgdm9pZCByZWdpc3RlclVuZG9TdGVwKFBhc3NSZWZQdHI8VW5kb1N0
ZXA+KSBmaW5hbDsKLSAgICB2b2lkIHJlZ2lzdGVyUmVkb1N0ZXAoUGFzc1JlZlB0cjxVbmRvU3Rl
cD4pIGZpbmFsOworICAgIHZvaWQgcmVnaXN0ZXJVbmRvU3RlcChVbmRvU3RlcCYpIGZpbmFsOwor
ICAgIHZvaWQgcmVnaXN0ZXJSZWRvU3RlcChVbmRvU3RlcCYpIGZpbmFsOwogICAgIHZvaWQgY2xl
YXJVbmRvUmVkb09wZXJhdGlvbnMoKSBmaW5hbCB7IH0KIAogICAgIGJvb2wgY2FuQ29weUN1dChG
cmFtZSosIGJvb2wgZGVmYXVsdFZhbHVlKSBjb25zdCBmaW5hbCB7IHJldHVybiBkZWZhdWx0VmFs
dWU7IH0KQEAgLTMzMSwxNCArMzMyLDE0IEBAIGNsYXNzIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQg
ZmluYWwgOiBwdWJsaWMgRnJhbWVMb2FkZXJDbGllbnQgewogICAgIHZvaWQgZGlzcGF0Y2hTaG93
KCkgZmluYWwgeyB9CiAKICAgICB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yUmVzcG9uc2Uo
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIEZyYW1lUG9s
aWN5RnVuY3Rpb24pIGZpbmFsIHsgfQotICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JO
ZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJlc291cmNlUmVx
dWVzdCYsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwgY29uc3QgU3RyaW5nJiwgRnJhbWVQb2xpY3lG
dW5jdGlvbikgZmluYWw7Ci0gICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRp
b25BY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYs
IFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwgRnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7CisgICAg
dm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBOYXZpZ2F0
aW9uQWN0aW9uJiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgRm9ybVN0YXRlKiwgY29uc3QgU3Ry
aW5nJiwgRnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERlY2lk
ZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0
IFJlc291cmNlUmVxdWVzdCYsIEZvcm1TdGF0ZSosIEZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFs
OwogICAgIHZvaWQgY2FuY2VsUG9saWN5Q2hlY2soKSBmaW5hbCB7IH0KIAogICAgIHZvaWQgZGlz
cGF0Y2hVbmFibGVUb0ltcGxlbWVudFBvbGljeShjb25zdCBSZXNvdXJjZUVycm9yJikgZmluYWwg
eyB9CiAKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChQYXNzUmVmUHRyPEZv
cm1TdGF0ZT4pIGZpbmFsOwotICAgIHZvaWQgZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShQYXNzUmVm
UHRyPEZvcm1TdGF0ZT4sIEZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFsOworICAgIHZvaWQgZGlz
cGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJlZjxGb3JtU3RhdGU+JiYpIGZpbmFsOworICAgIHZv
aWQgZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShGb3JtU3RhdGUmLCBGcmFtZVBvbGljeUZ1bmN0aW9u
KSBmaW5hbDsKIAogICAgIHZvaWQgcmV2ZXJ0VG9Qcm92aXNpb25hbFN0YXRlKERvY3VtZW50TG9h
ZGVyKikgZmluYWwgeyB9CiAgICAgdm9pZCBzZXRNYWluRG9jdW1lbnRFcnJvcihEb2N1bWVudExv
YWRlciosIGNvbnN0IFJlc291cmNlRXJyb3ImKSBmaW5hbCB7IH0KQEAgLTQxMCwxMCArNDExLDEw
IEBAIGNsYXNzIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQgZmluYWwgOiBwdWJsaWMgRnJhbWVMb2Fk
ZXJDbGllbnQgewogICAgIHZvaWQgZGlkRGlzcGxheUluc2VjdXJlQ29udGVudCgpIGZpbmFsIHsg
fQogICAgIHZvaWQgZGlkUnVuSW5zZWN1cmVDb250ZW50KFNlY3VyaXR5T3JpZ2luKiwgY29uc3Qg
VVJMJikgZmluYWwgeyB9CiAgICAgdm9pZCBkaWREZXRlY3RYU1MoY29uc3QgVVJMJiwgYm9vbCkg
ZmluYWwgeyB9Ci0gICAgUmVmUHRyPEZyYW1lPiBjcmVhdGVGcmFtZShjb25zdCBVUkwmLCBjb25z
dCBTdHJpbmcmLCBIVE1MRnJhbWVPd25lckVsZW1lbnQqLCBjb25zdCBTdHJpbmcmLCBib29sLCBp
bnQsIGludCkgZmluYWw7Ci0gICAgUmVmUHRyPFdpZGdldD4gY3JlYXRlUGx1Z2luKGNvbnN0IElu
dFNpemUmLCBIVE1MUGx1Z0luRWxlbWVudCosIGNvbnN0IFVSTCYsIGNvbnN0IFZlY3RvcjxTdHJp
bmc+JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBTdHJpbmcmLCBib29sKSBmaW5hbDsK
KyAgICBSZWZQdHI8RnJhbWU+IGNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYs
IEhUTUxGcmFtZU93bmVyRWxlbWVudCYsIGNvbnN0IFN0cmluZyYsIGJvb2wsIGludCwgaW50KSBm
aW5hbDsKKyAgICBSZWZQdHI8V2lkZ2V0PiBjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYsIEhU
TUxQbHVnSW5FbGVtZW50JiwgY29uc3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25z
dCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFN0cmluZyYsIGJvb2wpIGZpbmFsOwogICAgIHZvaWQg
cmVjcmVhdGVQbHVnaW4oV2lkZ2V0KikgZmluYWw7Ci0gICAgUGFzc1JlZlB0cjxXaWRnZXQ+IGNy
ZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYsIEhUTUxBcHBsZXRFbGVtZW50Kiwg
Y29uc3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYp
IGZpbmFsOworICAgIFJlZlB0cjxXaWRnZXQ+IGNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3Qg
SW50U2l6ZSYsIEhUTUxBcHBsZXRFbGVtZW50JiwgY29uc3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0
cmluZz4mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYpIGZpbmFsOwogCiAgICAgT2JqZWN0Q29udGVu
dFR5cGUgb2JqZWN0Q29udGVudFR5cGUoY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJikgZmluYWwg
eyByZXR1cm4gT2JqZWN0Q29udGVudFR5cGU6Ok5vbmU7IH0KICAgICBTdHJpbmcgb3ZlcnJpZGVN
ZWRpYVR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiB7IH07IH0KQEAgLTQzMiwxNiArNDMzLDM3
IEBAIGNsYXNzIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQgZmluYWwgOiBwdWJsaWMgRnJhbWVMb2Fk
ZXJDbGllbnQgewogICAgIGJvb2wgc2hvdWxkQ2FjaGVSZXNwb25zZShEb2N1bWVudExvYWRlcios
IHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBjb25zdCB1bnNpZ25lZCBj
aGFyKiwgdW5zaWduZWQgbG9uZyBsb25nKSBmaW5hbCB7IHJldHVybiB0cnVlOyB9CiAjZW5kaWYK
IAotICAgIFBhc3NSZWZQdHI8RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRlTmV0d29ya2lu
Z0NvbnRleHQoKSBmaW5hbDsKKyAgICBSZWY8RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRl
TmV0d29ya2luZ0NvbnRleHQoKSBmaW5hbDsKIAogI2lmIEVOQUJMRShSRVFVRVNUX0FVVE9DT01Q
TEVURSkKLSAgICB2b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxldGUoUGFzc1JlZlB0cjxGb3JtU3Rh
dGU+KSBmaW5hbCB7IH0KKyAgICB2b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxldGUoUmVmPEZvcm1T
dGF0ZT4mJikgZmluYWwgeyB9CiAjZW5kaWYKIAogICAgIGJvb2wgaXNFbXB0eUZyYW1lTG9hZGVy
Q2xpZW50KCkgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQogICAgIHZvaWQgcHJlZmV0Y2hETlMoY29u
c3QgU3RyaW5nJikgZmluYWwgeyB9CiB9OwogCitjbGFzcyBFbXB0eUZyYW1lTmV0d29ya2luZ0Nv
bnRleHQgZmluYWwgOiBwdWJsaWMgRnJhbWVOZXR3b3JraW5nQ29udGV4dCB7CitwdWJsaWM6Cisg
ICAgc3RhdGljIFJlZjxFbXB0eUZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZSgpIHsgcmV0
dXJuIGFkb3B0UmVmKCpuZXcgRW1wdHlGcmFtZU5ldHdvcmtpbmdDb250ZXh0KTsgfQorCitwcml2
YXRlOgorICAgIEVtcHR5RnJhbWVOZXR3b3JraW5nQ29udGV4dCgpOworCisgICAgYm9vbCBzaG91
bGRDbGVhclJlZmVycmVyT25IVFRQU1RvSFRUUFJlZGlyZWN0KCkgY29uc3QgeyByZXR1cm4gdHJ1
ZTsgfQorICAgIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgc3RvcmFnZVNlc3Npb24oKSBjb25zdCBm
aW5hbCB7IHJldHVybiBOZXR3b3JrU3RvcmFnZVNlc3Npb246OmRlZmF1bHRTdG9yYWdlU2Vzc2lv
bigpOyB9CisKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICBib29sIGxvY2FsRmlsZUNvbnRlbnRT
bmlmZmluZ0VuYWJsZWQoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQorICAgIFNjaGVkdWxlUGFp
ckhhc2hTZXQqIHNjaGVkdWxlZFJ1bkxvb3BQYWlycygpIGNvbnN0IHsgcmV0dXJuIG51bGxwdHI7
IH0KKyAgICBSZXRhaW5QdHI8Q0ZEYXRhUmVmPiBzb3VyY2VBcHBsaWNhdGlvbkF1ZGl0RGF0YSgp
IGNvbnN0IHsgcmV0dXJuIG51bGxwdHI7IH07CisjZW5kaWYKKworI2lmIFBMQVRGT1JNKENPQ09B
KSB8fCBQTEFURk9STShXSU4pCisgICAgUmVzb3VyY2VFcnJvciBibG9ja2VkRXJyb3IoY29uc3Qg
UmVzb3VyY2VSZXF1ZXN0JikgY29uc3QgZmluYWwgeyByZXR1cm4geyB9OyB9CisjZW5kaWYKK307
CisKIGNsYXNzIEVtcHR5SW5zcGVjdG9yQ2xpZW50IGZpbmFsIDogcHVibGljIEluc3BlY3RvckNs
aWVudCB7CiAgICAgdm9pZCBpbnNwZWN0ZWRQYWdlRGVzdHJveWVkKCkgZmluYWwgeyB9CiAgICAg
SW5zcGVjdG9yOjpGcm9udGVuZENoYW5uZWwqIG9wZW5Mb2NhbEZyb250ZW5kKEluc3BlY3RvckNv
bnRyb2xsZXIqKSBmaW5hbCB7IHJldHVybiBudWxscHRyOyB9CkBAIC01NjksMjMgKzU5MSwyMyBA
QCBzdGQ6OnVuaXF1ZV9wdHI8Q29sb3JDaG9vc2VyPiBFbXB0eUNocm9tZUNsaWVudDo6Y3JlYXRl
Q29sb3JDaG9vc2VyKENvbG9yQ2hvb3NlcgogCiAjZW5kaWYKIAotdm9pZCBFbXB0eUNocm9tZUNs
aWVudDo6cnVuT3BlblBhbmVsKEZyYW1lKiwgUGFzc1JlZlB0cjxGaWxlQ2hvb3Nlcj4pCit2b2lk
IEVtcHR5Q2hyb21lQ2xpZW50OjpydW5PcGVuUGFuZWwoRnJhbWUmLCBGaWxlQ2hvb3NlciYpCiB7
CiB9CiAKLXZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lG
b3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJlc291cmNl
UmVxdWVzdCYsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwgY29uc3QgU3RyaW5nJiwgRnJhbWVQb2xp
Y3lGdW5jdGlvbikKK3ZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQ
b2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJl
c291cmNlUmVxdWVzdCYsIEZvcm1TdGF0ZSosIGNvbnN0IFN0cmluZyYsIEZyYW1lUG9saWN5RnVu
Y3Rpb24pCiB7CiB9CiAKLXZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNp
ZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mLCBjb25z
dCBSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIEZyYW1lUG9saWN5RnVu
Y3Rpb24pCit2b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5
Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgUmVzb3Vy
Y2VSZXF1ZXN0JiwgRm9ybVN0YXRlKiwgRnJhbWVQb2xpY3lGdW5jdGlvbikKIHsKIH0KIAotdm9p
ZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoUGFz
c1JlZlB0cjxGb3JtU3RhdGU+KQordm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aFdpbGxTZW5kU3VibWl0RXZlbnQoUmVmPEZvcm1TdGF0ZT4mJikKIHsKIH0KIAotdm9pZCBFbXB0
eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKFBhc3NSZWZQdHI8Rm9y
bVN0YXRlPiwgRnJhbWVQb2xpY3lGdW5jdGlvbikKK3ZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVu
dDo6ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShGb3JtU3RhdGUmLCBGcmFtZVBvbGljeUZ1bmN0aW9u
KQogewogfQogCkBAIC01OTQsMTIgKzYxNiwxMiBAQCBSZWY8RG9jdW1lbnRMb2FkZXI+IEVtcHR5
RnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZURvY3VtZW50TG9hZGVyKGNvbnN0IFJlc291cmNlUgog
ICAgIHJldHVybiBEb2N1bWVudExvYWRlcjo6Y3JlYXRlKHJlcXVlc3QsIHN1YnN0aXR1dGVEYXRh
KTsKIH0KIAotUmVmUHRyPEZyYW1lPiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVGcmFt
ZShjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmLCBIVE1MRnJhbWVPd25lckVsZW1lbnQqLCBjb25z
dCBTdHJpbmcmLCBib29sLCBpbnQsIGludCkKK1JlZlB0cjxGcmFtZT4gRW1wdHlGcmFtZUxvYWRl
ckNsaWVudDo6Y3JlYXRlRnJhbWUoY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiwgSFRNTEZyYW1l
T3duZXJFbGVtZW50JiwgY29uc3QgU3RyaW5nJiwgYm9vbCwgaW50LCBpbnQpCiB7CiAgICAgcmV0
dXJuIG51bGxwdHI7CiB9CiAKLVJlZlB0cjxXaWRnZXQ+IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6
OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiwgSFRNTFBsdWdJbkVsZW1lbnQqLCBjb25zdCBV
UkwmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3Qg
U3RyaW5nJiwgYm9vbCkKK1JlZlB0cjxXaWRnZXQ+IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNy
ZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiwgSFRNTFBsdWdJbkVsZW1lbnQmLCBjb25zdCBVUkwm
LCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgU3Ry
aW5nJiwgYm9vbCkKIHsKICAgICByZXR1cm4gbnVsbHB0cjsKIH0KQEAgLTYwOCwyNSArNjMwLDMw
IEBAIHZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6cmVjcmVhdGVQbHVnaW4oV2lkZ2V0KikK
IHsKIH0KIAotUGFzc1JlZlB0cjxXaWRnZXQ+IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0
ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYsIEhUTUxBcHBsZXRFbGVtZW50KiwgY29u
c3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYpCitS
ZWZQdHI8V2lkZ2V0PiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lk
Z2V0KGNvbnN0IEludFNpemUmLCBIVE1MQXBwbGV0RWxlbWVudCYsIGNvbnN0IFVSTCYsIGNvbnN0
IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mKQogewogICAgIHJldHVybiBu
dWxscHRyOwogfQogCi1QYXNzUmVmUHRyPEZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IEVtcHR5RnJh
bWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkKK2lubGluZSBFbXB0eUZy
YW1lTmV0d29ya2luZ0NvbnRleHQ6OkVtcHR5RnJhbWVOZXR3b3JraW5nQ29udGV4dCgpCisgICAg
OiBGcmFtZU5ldHdvcmtpbmdDb250ZXh0IHsgbnVsbHB0ciB9Cit7Cit9CisKK1JlZjxGcmFtZU5l
dHdvcmtpbmdDb250ZXh0PiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVOZXR3b3JraW5n
Q29udGV4dCgpCiB7Ci0gICAgcmV0dXJuIFBhc3NSZWZQdHI8RnJhbWVOZXR3b3JraW5nQ29udGV4
dD4oKTsKKyAgICByZXR1cm4gRW1wdHlGcmFtZU5ldHdvcmtpbmdDb250ZXh0OjpjcmVhdGUoKTsK
IH0KIAogdm9pZCBFbXB0eUVkaXRvckNsaWVudDo6RW1wdHlUZXh0Q2hlY2tlckNsaWVudDo6cmVx
dWVzdENoZWNraW5nT2ZTdHJpbmcoVGV4dENoZWNraW5nUmVxdWVzdCYsIGNvbnN0IFZpc2libGVT
ZWxlY3Rpb24mKQogewogfQogCi12b2lkIEVtcHR5RWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9T
dGVwKFBhc3NSZWZQdHI8VW5kb1N0ZXA+KQordm9pZCBFbXB0eUVkaXRvckNsaWVudDo6cmVnaXN0
ZXJVbmRvU3RlcChVbmRvU3RlcCYpCiB7CiB9CiAKLXZvaWQgRW1wdHlFZGl0b3JDbGllbnQ6OnJl
Z2lzdGVyUmVkb1N0ZXAoUGFzc1JlZlB0cjxVbmRvU3RlcD4pCit2b2lkIEVtcHR5RWRpdG9yQ2xp
ZW50OjpyZWdpc3RlclJlZG9TdGVwKFVuZG9TdGVwJikKIHsKIH0KIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0VtcHR5Q2xpZW50cy5oCmluZGV4IDFhMWQ1M2MzNzQwOGFiOTljNjBkZjBlMmY3ZDgyYTQxYzFh
ZWQ2NjkuLjhmMjUyYmE3OTJmNzExOTdkMDkxMDkyNmM4NDBhMjkwODVhZDEwMzkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmgKQEAgLTEzOCw3ICsxMzgsNyBAQCBjbGFzcyBFbXB0
eUNocm9tZUNsaWVudCA6IHB1YmxpYyBDaHJvbWVDbGllbnQgewogICAgIHN0ZDo6dW5pcXVlX3B0
cjxDb2xvckNob29zZXI+IGNyZWF0ZUNvbG9yQ2hvb3NlcihDb2xvckNob29zZXJDbGllbnQqLCBj
b25zdCBDb2xvciYpIGZpbmFsOwogI2VuZGlmCiAKLSAgICB2b2lkIHJ1bk9wZW5QYW5lbChGcmFt
ZSosIFBhc3NSZWZQdHI8RmlsZUNob29zZXI+KSBmaW5hbDsKKyAgICB2b2lkIHJ1bk9wZW5QYW5l
bChGcmFtZSYsIEZpbGVDaG9vc2VyJikgZmluYWw7CiAgICAgdm9pZCBsb2FkSWNvbkZvckZpbGVz
KGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgRmlsZUljb25Mb2FkZXImKSBmaW5hbCB7IH0KIAogICAg
IHZvaWQgZWxlbWVudERpZEZvY3VzKGNvbnN0IE5vZGUqKSBmaW5hbCB7IH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3RhdGUuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0Zvcm1TdGF0ZS5jcHAKaW5kZXggMzUxMGI4MDI1ZGRmYzM1MTYzOGUwMzA2MDZmYWQ2MDQ1
Y2M5NTE5Ni4uNWU4OTZlN2Y4NTJmOTZlMjU0MGVkOGQ0ZDE1MTc2MmI2YjQwZDkxMyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdGF0ZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL0Zvcm1TdGF0ZS5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJp
Z2h0IChDKSAyMDA2LCAyMDA5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENv
cHlyaWdodCAoQykgMjAwNi0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAq
CiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMzQsMTcgKzM0LDE3IEBACiAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAotaW5saW5lIEZvcm1TdGF0ZTo6Rm9ybVN0YXRlKFBhc3NSZWZQdHI8
SFRNTEZvcm1FbGVtZW50PiBmb3JtLCBTdHJpbmdQYWlyVmVjdG9yJiB0ZXh0RmllbGRWYWx1ZXNU
b0Fkb3B0LCBQYXNzUmVmUHRyPERvY3VtZW50PiBzb3VyY2VEb2N1bWVudCwgRm9ybVN1Ym1pc3Np
b25UcmlnZ2VyIGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikKK2lubGluZSBGb3JtU3RhdGU6OkZvcm1T
dGF0ZShIVE1MRm9ybUVsZW1lbnQmIGZvcm0sIFN0cmluZ1BhaXJWZWN0b3ImJiB0ZXh0RmllbGRW
YWx1ZXMsIERvY3VtZW50JiBzb3VyY2VEb2N1bWVudCwgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIGZv
cm1TdWJtaXNzaW9uVHJpZ2dlcikKICAgICA6IG1fZm9ybShmb3JtKQorICAgICwgbV90ZXh0Rmll
bGRWYWx1ZXMoV1RGTW92ZSh0ZXh0RmllbGRWYWx1ZXMpKQogICAgICwgbV9zb3VyY2VEb2N1bWVu
dChzb3VyY2VEb2N1bWVudCkKICAgICAsIG1fZm9ybVN1Ym1pc3Npb25UcmlnZ2VyKGZvcm1TdWJt
aXNzaW9uVHJpZ2dlcikKIHsKLSAgICBtX3RleHRGaWVsZFZhbHVlcy5zd2FwKHRleHRGaWVsZFZh
bHVlc1RvQWRvcHQpOwogfQogCi1SZWY8Rm9ybVN0YXRlPiBGb3JtU3RhdGU6OmNyZWF0ZShQYXNz
UmVmUHRyPEhUTUxGb3JtRWxlbWVudD4gZm9ybSwgU3RyaW5nUGFpclZlY3RvciYgdGV4dEZpZWxk
VmFsdWVzVG9BZG9wdCwgUGFzc1JlZlB0cjxEb2N1bWVudD4gc291cmNlRG9jdW1lbnQsIEZvcm1T
dWJtaXNzaW9uVHJpZ2dlciBmb3JtU3VibWlzc2lvblRyaWdnZXIpCitSZWY8Rm9ybVN0YXRlPiBG
b3JtU3RhdGU6OmNyZWF0ZShIVE1MRm9ybUVsZW1lbnQmIGZvcm0sIFN0cmluZ1BhaXJWZWN0b3Im
JiB0ZXh0RmllbGRWYWx1ZXMsIERvY3VtZW50JiBzb3VyY2VEb2N1bWVudCwgRm9ybVN1Ym1pc3Np
b25UcmlnZ2VyIGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikKIHsKLSAgICByZXR1cm4gYWRvcHRSZWYo
Km5ldyBGb3JtU3RhdGUoZm9ybSwgdGV4dEZpZWxkVmFsdWVzVG9BZG9wdCwgc291cmNlRG9jdW1l
bnQsIGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikpOworICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEZv
cm1TdGF0ZShmb3JtLCBXVEZNb3ZlKHRleHRGaWVsZFZhbHVlcyksIHNvdXJjZURvY3VtZW50LCBm
b3JtU3VibWlzc2lvblRyaWdnZXIpKTsKIH0KIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0Zvcm1TdGF0ZS5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdGF0ZS5o
CmluZGV4IDk1MDQwZjljMjhkNDc5M2JiMTVmOGZmMzdhMGI2MjRkMjhiZDhjZjcuLjJkZWRkMDli
ZTUyYjBhZmM5NzAyODNhMTE0Y2NmMDM0ZjdiNjVmYWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9Gb3JtU3RhdGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN0
YXRlLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA2LCAyMDA5IEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNi0yMDE3
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucwpAQCAtMjgsMzcgKzI4LDMzIEBACiAKICNwcmFnbWEgb25jZQogCi0jaW5jbHVkZSA8
d3RmL1JlZkNvdW50ZWQuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFt
ZXNwYWNlIFdlYkNvcmUgewogCi0gICAgY2xhc3MgRG9jdW1lbnQ7Ci0gICAgY2xhc3MgSFRNTEZv
cm1FbGVtZW50OworY2xhc3MgRG9jdW1lbnQ7CitjbGFzcyBIVE1MRm9ybUVsZW1lbnQ7CiAKLSAg
ICBlbnVtIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciB7Ci0gICAgICAgIFN1Ym1pdHRlZEJ5SmF2YVNj
cmlwdCwKLSAgICAgICAgTm90U3VibWl0dGVkQnlKYXZhU2NyaXB0Ci0gICAgfTsKLSAgICAKLSAg
ICB0eXBlZGVmIFZlY3RvcjxzdGQ6OnBhaXI8U3RyaW5nLCBTdHJpbmc+PiBTdHJpbmdQYWlyVmVj
dG9yOworZW51bSBGb3JtU3VibWlzc2lvblRyaWdnZXIgeyBTdWJtaXR0ZWRCeUphdmFTY3JpcHQs
IE5vdFN1Ym1pdHRlZEJ5SmF2YVNjcmlwdCB9OwogCi0gICAgY2xhc3MgRm9ybVN0YXRlIDogcHVi
bGljIFJlZkNvdW50ZWQ8Rm9ybVN0YXRlPiB7Ci0gICAgcHVibGljOgotICAgICAgICBzdGF0aWMg
UmVmPEZvcm1TdGF0ZT4gY3JlYXRlKFBhc3NSZWZQdHI8SFRNTEZvcm1FbGVtZW50PiwgU3RyaW5n
UGFpclZlY3RvciYgdGV4dEZpZWxkVmFsdWVzVG9BZG9wdCwgUGFzc1JlZlB0cjxEb2N1bWVudD4s
IEZvcm1TdWJtaXNzaW9uVHJpZ2dlcik7Cit1c2luZyBTdHJpbmdQYWlyVmVjdG9yID0gVmVjdG9y
PHN0ZDo6cGFpcjxTdHJpbmcsIFN0cmluZz4+OwogCi0gICAgICAgIEhUTUxGb3JtRWxlbWVudCog
Zm9ybSgpIGNvbnN0IHsgcmV0dXJuIG1fZm9ybS5nZXQoKTsgfQotICAgICAgICBjb25zdCBTdHJp
bmdQYWlyVmVjdG9yJiB0ZXh0RmllbGRWYWx1ZXMoKSBjb25zdCB7IHJldHVybiBtX3RleHRGaWVs
ZFZhbHVlczsgfQotICAgICAgICBEb2N1bWVudCogc291cmNlRG9jdW1lbnQoKSBjb25zdCB7IHJl
dHVybiBtX3NvdXJjZURvY3VtZW50LmdldCgpOyB9Ci0gICAgICAgIEZvcm1TdWJtaXNzaW9uVHJp
Z2dlciBmb3JtU3VibWlzc2lvblRyaWdnZXIoKSBjb25zdCB7IHJldHVybiBtX2Zvcm1TdWJtaXNz
aW9uVHJpZ2dlcjsgfQorY2xhc3MgRm9ybVN0YXRlIDogcHVibGljIFJlZkNvdW50ZWQ8Rm9ybVN0
YXRlPiB7CitwdWJsaWM6CisgICAgc3RhdGljIFJlZjxGb3JtU3RhdGU+IGNyZWF0ZShIVE1MRm9y
bUVsZW1lbnQmLCBTdHJpbmdQYWlyVmVjdG9yJiYgdGV4dEZpZWxkVmFsdWVzLCBEb2N1bWVudCYs
IEZvcm1TdWJtaXNzaW9uVHJpZ2dlcik7CiAKLSAgICBwcml2YXRlOgotICAgICAgICBGb3JtU3Rh
dGUoUGFzc1JlZlB0cjxIVE1MRm9ybUVsZW1lbnQ+LCBTdHJpbmdQYWlyVmVjdG9yJiB0ZXh0Rmll
bGRWYWx1ZXNUb0Fkb3B0LCBQYXNzUmVmUHRyPERvY3VtZW50PiwgRm9ybVN1Ym1pc3Npb25Ucmln
Z2VyKTsKKyAgICBIVE1MRm9ybUVsZW1lbnQmIGZvcm0oKSBjb25zdCB7IHJldHVybiBtX2Zvcm07
IH0KKyAgICBjb25zdCBTdHJpbmdQYWlyVmVjdG9yJiB0ZXh0RmllbGRWYWx1ZXMoKSBjb25zdCB7
IHJldHVybiBtX3RleHRGaWVsZFZhbHVlczsgfQorICAgIERvY3VtZW50JiBzb3VyY2VEb2N1bWVu
dCgpIGNvbnN0IHsgcmV0dXJuIG1fc291cmNlRG9jdW1lbnQ7IH0KKyAgICBGb3JtU3VibWlzc2lv
blRyaWdnZXIgZm9ybVN1Ym1pc3Npb25UcmlnZ2VyKCkgY29uc3QgeyByZXR1cm4gbV9mb3JtU3Vi
bWlzc2lvblRyaWdnZXI7IH0KIAotICAgICAgICBSZWZQdHI8SFRNTEZvcm1FbGVtZW50PiBtX2Zv
cm07Ci0gICAgICAgIFN0cmluZ1BhaXJWZWN0b3IgbV90ZXh0RmllbGRWYWx1ZXM7Ci0gICAgICAg
IFJlZlB0cjxEb2N1bWVudD4gbV9zb3VyY2VEb2N1bWVudDsKLSAgICAgICAgRm9ybVN1Ym1pc3Np
b25UcmlnZ2VyIG1fZm9ybVN1Ym1pc3Npb25UcmlnZ2VyOwotICAgIH07Citwcml2YXRlOgorICAg
IEZvcm1TdGF0ZShIVE1MRm9ybUVsZW1lbnQmLCBTdHJpbmdQYWlyVmVjdG9yJiYgdGV4dEZpZWxk
VmFsdWVzLCBEb2N1bWVudCYsIEZvcm1TdWJtaXNzaW9uVHJpZ2dlcik7CisKKyAgICBSZWY8SFRN
TEZvcm1FbGVtZW50PiBtX2Zvcm07CisgICAgU3RyaW5nUGFpclZlY3RvciBtX3RleHRGaWVsZFZh
bHVlczsKKyAgICBSZWY8RG9jdW1lbnQ+IG1fc291cmNlRG9jdW1lbnQ7CisgICAgRm9ybVN1Ym1p
c3Npb25UcmlnZ2VyIG1fZm9ybVN1Ym1pc3Npb25UcmlnZ2VyOworfTsKIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdWJtaXNz
aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3VibWlzc2lvbi5jcHAKaW5kZXgg
MjBhYWY0YzRjNzI3YWY2OTJiNzk4ZTI2OTY1ZmI5NDA0Nzg2YzliMi4uNzcwNzM0M2M1YzIzNzU5
Nzk3YmJjYmYwNDE1MzkyMzAzNzlmNzljOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0Zvcm1TdWJtaXNzaW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN1
Ym1pc3Npb24uY3BwCkBAIC0xMDYsNyArMTA2LDcgQEAgdm9pZCBGb3JtU3VibWlzc2lvbjo6QXR0
cmlidXRlczo6dXBkYXRlRW5jb2RpbmdUeXBlKGNvbnN0IFN0cmluZyYgdHlwZSkKIAogRm9ybVN1
Ym1pc3Npb246Ok1ldGhvZCBGb3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6cGFyc2VNZXRob2RU
eXBlKGNvbnN0IFN0cmluZyYgdHlwZSkKIHsKLSAgICByZXR1cm4gZXF1YWxMZXR0ZXJzSWdub3Jp
bmdBU0NJSUNhc2UodHlwZSwgInBvc3QiKSA/IEZvcm1TdWJtaXNzaW9uOjpQb3N0TWV0aG9kIDog
Rm9ybVN1Ym1pc3Npb246OkdldE1ldGhvZDsKKyAgICByZXR1cm4gZXF1YWxMZXR0ZXJzSWdub3Jp
bmdBU0NJSUNhc2UodHlwZSwgInBvc3QiKSA/IEZvcm1TdWJtaXNzaW9uOjpNZXRob2Q6OlBvc3Qg
OiBGb3JtU3VibWlzc2lvbjo6TWV0aG9kOjpHZXQ7CiB9CiAKIHZvaWQgRm9ybVN1Ym1pc3Npb246
OkF0dHJpYnV0ZXM6OnVwZGF0ZU1ldGhvZFR5cGUoY29uc3QgU3RyaW5nJiB0eXBlKQpAQCAtMTE0
LDI0ICsxMTQsMTMgQEAgdm9pZCBGb3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6dXBkYXRlTWV0
aG9kVHlwZShjb25zdCBTdHJpbmcmIHR5cGUpCiAgICAgbV9tZXRob2QgPSBwYXJzZU1ldGhvZFR5
cGUodHlwZSk7CiB9CiAKLXZvaWQgRm9ybVN1Ym1pc3Npb246OkF0dHJpYnV0ZXM6OmNvcHlGcm9t
KGNvbnN0IEF0dHJpYnV0ZXMmIG90aGVyKQotewotICAgIG1fbWV0aG9kID0gb3RoZXIubV9tZXRo
b2Q7Ci0gICAgbV9pc011bHRpUGFydEZvcm0gPSBvdGhlci5tX2lzTXVsdGlQYXJ0Rm9ybTsKLQot
ICAgIG1fYWN0aW9uID0gb3RoZXIubV9hY3Rpb247Ci0gICAgbV90YXJnZXQgPSBvdGhlci5tX3Rh
cmdldDsKLSAgICBtX2VuY29kaW5nVHlwZSA9IG90aGVyLm1fZW5jb2RpbmdUeXBlOwotICAgIG1f
YWNjZXB0Q2hhcnNldCA9IG90aGVyLm1fYWNjZXB0Q2hhcnNldDsKLX0KLQotaW5saW5lIEZvcm1T
dWJtaXNzaW9uOjpGb3JtU3VibWlzc2lvbihNZXRob2QgbWV0aG9kLCBjb25zdCBVUkwmIGFjdGlv
biwgY29uc3QgU3RyaW5nJiB0YXJnZXQsIGNvbnN0IFN0cmluZyYgY29udGVudFR5cGUsIFBhc3NS
ZWZQdHI8Rm9ybVN0YXRlPiBzdGF0ZSwgUGFzc1JlZlB0cjxGb3JtRGF0YT4gZGF0YSwgY29uc3Qg
U3RyaW5nJiBib3VuZGFyeSwgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnksIFBhc3NSZWZQdHI8RXZl
bnQ+IGV2ZW50KQoraW5saW5lIEZvcm1TdWJtaXNzaW9uOjpGb3JtU3VibWlzc2lvbihNZXRob2Qg
bWV0aG9kLCBjb25zdCBVUkwmIGFjdGlvbiwgY29uc3QgU3RyaW5nJiB0YXJnZXQsIGNvbnN0IFN0
cmluZyYgY29udGVudFR5cGUsIFJlZjxGb3JtU3RhdGU+JiYgc3RhdGUsIFJlZjxGb3JtRGF0YT4m
JiBkYXRhLCBjb25zdCBTdHJpbmcmIGJvdW5kYXJ5LCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSwg
RXZlbnQqIGV2ZW50KQogICAgIDogbV9tZXRob2QobWV0aG9kKQogICAgICwgbV9hY3Rpb24oYWN0
aW9uKQogICAgICwgbV90YXJnZXQodGFyZ2V0KQogICAgICwgbV9jb250ZW50VHlwZShjb250ZW50
VHlwZSkKLSAgICAsIG1fZm9ybVN0YXRlKHN0YXRlKQotICAgICwgbV9mb3JtRGF0YShkYXRhKQor
ICAgICwgbV9mb3JtU3RhdGUoV1RGTW92ZShzdGF0ZSkpCisgICAgLCBtX2Zvcm1EYXRhKFdURk1v
dmUoZGF0YSkpCiAgICAgLCBtX2JvdW5kYXJ5KGJvdW5kYXJ5KQogICAgICwgbV9sb2NrSGlzdG9y
eShsb2NrSGlzdG9yeSkKICAgICAsIG1fZXZlbnQoZXZlbnQpCkBAIC0xNTUsMTAgKzE0NCw4IEBA
IHN0YXRpYyBUZXh0RW5jb2RpbmcgZW5jb2RpbmdGcm9tQWNjZXB0Q2hhcnNldChjb25zdCBTdHJp
bmcmIGFjY2VwdENoYXJzZXQsIERvY3VtCiAgICAgcmV0dXJuIGRvY3VtZW50LnRleHRFbmNvZGlu
ZygpOwogfQogCi1SZWY8Rm9ybVN1Ym1pc3Npb24+IEZvcm1TdWJtaXNzaW9uOjpjcmVhdGUoSFRN
TEZvcm1FbGVtZW50KiBmb3JtLCBjb25zdCBBdHRyaWJ1dGVzJiBhdHRyaWJ1dGVzLCBQYXNzUmVm
UHRyPEV2ZW50PiBldmVudCwgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnksIEZvcm1TdWJtaXNzaW9u
VHJpZ2dlciB0cmlnZ2VyKQorUmVmPEZvcm1TdWJtaXNzaW9uPiBGb3JtU3VibWlzc2lvbjo6Y3Jl
YXRlKEhUTUxGb3JtRWxlbWVudCYgZm9ybSwgY29uc3QgQXR0cmlidXRlcyYgYXR0cmlidXRlcywg
RXZlbnQqIGV2ZW50LCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSwgRm9ybVN1Ym1pc3Npb25Ucmln
Z2VyIHRyaWdnZXIpCiB7Ci0gICAgQVNTRVJUKGZvcm0pOwotCiAgICAgSFRNTEZvcm1Db250cm9s
RWxlbWVudCogc3VibWl0QnV0dG9uID0gbnVsbHB0cjsKICAgICBpZiAoZXZlbnQgJiYgZXZlbnQt
PnRhcmdldCgpKSB7CiAgICAgICAgIGZvciAoTm9kZSogbm9kZSA9IGV2ZW50LT50YXJnZXQoKS0+
dG9Ob2RlKCk7IG5vZGU7IG5vZGUgPSBub2RlLT5wYXJlbnROb2RlKCkpIHsKQEAgLTE2OSw4ICsx
NTYsNyBAQCBSZWY8Rm9ybVN1Ym1pc3Npb24+IEZvcm1TdWJtaXNzaW9uOjpjcmVhdGUoSFRNTEZv
cm1FbGVtZW50KiBmb3JtLCBjb25zdCBBdHRyaWJ1dAogICAgICAgICB9CiAgICAgfQogCi0gICAg
Rm9ybVN1Ym1pc3Npb246OkF0dHJpYnV0ZXMgY29waWVkQXR0cmlidXRlczsKLSAgICBjb3BpZWRB
dHRyaWJ1dGVzLmNvcHlGcm9tKGF0dHJpYnV0ZXMpOworICAgIGF1dG8gY29waWVkQXR0cmlidXRl
cyA9IGF0dHJpYnV0ZXM7CiAgICAgaWYgKHN1Ym1pdEJ1dHRvbikgewogICAgICAgICBBdG9taWNT
dHJpbmcgYXR0cmlidXRlVmFsdWU7CiAgICAgICAgIGlmICghKGF0dHJpYnV0ZVZhbHVlID0gc3Vi
bWl0QnV0dG9uLT5hdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKGZvcm1hY3Rpb25BdHRy
KSkuaXNOdWxsKCkpCkBAIC0xODMsMTUgKzE2OSwxNSBAQCBSZWY8Rm9ybVN1Ym1pc3Npb24+IEZv
cm1TdWJtaXNzaW9uOjpjcmVhdGUoSFRNTEZvcm1FbGVtZW50KiBmb3JtLCBjb25zdCBBdHRyaWJ1
dAogICAgICAgICAgICAgY29waWVkQXR0cmlidXRlcy5zZXRUYXJnZXQoYXR0cmlidXRlVmFsdWUp
OwogICAgIH0KICAgICAKLSAgICBEb2N1bWVudCYgZG9jdW1lbnQgPSBmb3JtLT5kb2N1bWVudCgp
OwotICAgIFVSTCBhY3Rpb25VUkwgPSBkb2N1bWVudC5jb21wbGV0ZVVSTChjb3BpZWRBdHRyaWJ1
dGVzLmFjdGlvbigpLmlzRW1wdHkoKSA/IGRvY3VtZW50LnVybCgpLnN0cmluZygpIDogY29waWVk
QXR0cmlidXRlcy5hY3Rpb24oKSk7CisgICAgYXV0byYgZG9jdW1lbnQgPSBmb3JtLmRvY3VtZW50
KCk7CisgICAgYXV0byBhY3Rpb25VUkwgPSBkb2N1bWVudC5jb21wbGV0ZVVSTChjb3BpZWRBdHRy
aWJ1dGVzLmFjdGlvbigpLmlzRW1wdHkoKSA/IGRvY3VtZW50LnVybCgpLnN0cmluZygpIDogY29w
aWVkQXR0cmlidXRlcy5hY3Rpb24oKSk7CiAgICAgYm9vbCBpc01haWx0b0Zvcm0gPSBhY3Rpb25V
UkwucHJvdG9jb2xJcygibWFpbHRvIik7CiAgICAgYm9vbCBpc011bHRpUGFydEZvcm0gPSBmYWxz
ZTsKLSAgICBTdHJpbmcgZW5jb2RpbmdUeXBlID0gY29waWVkQXR0cmlidXRlcy5lbmNvZGluZ1R5
cGUoKTsKKyAgICBhdXRvIGVuY29kaW5nVHlwZSA9IGNvcGllZEF0dHJpYnV0ZXMuZW5jb2RpbmdU
eXBlKCk7CiAKICAgICBkb2N1bWVudC5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+dXBncmFkZUlu
c2VjdXJlUmVxdWVzdElmTmVlZGVkKGFjdGlvblVSTCwgQ29udGVudFNlY3VyaXR5UG9saWN5OjpJ
bnNlY3VyZVJlcXVlc3RUeXBlOjpGb3JtU3VibWlzc2lvbik7CiAKLSAgICBpZiAoY29waWVkQXR0
cmlidXRlcy5tZXRob2QoKSA9PSBQb3N0TWV0aG9kKSB7CisgICAgaWYgKGNvcGllZEF0dHJpYnV0
ZXMubWV0aG9kKCkgPT0gTWV0aG9kOjpQb3N0KSB7CiAgICAgICAgIGlzTXVsdGlQYXJ0Rm9ybSA9
IGNvcGllZEF0dHJpYnV0ZXMuaXNNdWx0aVBhcnRGb3JtKCk7CiAgICAgICAgIGlmIChpc011bHRp
UGFydEZvcm0gJiYgaXNNYWlsdG9Gb3JtKSB7CiAgICAgICAgICAgICBlbmNvZGluZ1R5cGUgPSAi
YXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIjsKQEAgLTE5OSwxOSArMTg1LDE5IEBA
IFJlZjxGb3JtU3VibWlzc2lvbj4gRm9ybVN1Ym1pc3Npb246OmNyZWF0ZShIVE1MRm9ybUVsZW1l
bnQqIGZvcm0sIGNvbnN0IEF0dHJpYnV0CiAgICAgICAgIH0KICAgICB9CiAKLSAgICBUZXh0RW5j
b2RpbmcgZGF0YUVuY29kaW5nID0gaXNNYWlsdG9Gb3JtID8gVVRGOEVuY29kaW5nKCkgOiBlbmNv
ZGluZ0Zyb21BY2NlcHRDaGFyc2V0KGNvcGllZEF0dHJpYnV0ZXMuYWNjZXB0Q2hhcnNldCgpLCBk
b2N1bWVudCk7Ci0gICAgUmVmUHRyPERPTUZvcm1EYXRhPiBkb21Gb3JtRGF0YSA9IERPTUZvcm1E
YXRhOjpjcmVhdGUoZGF0YUVuY29kaW5nLmVuY29kaW5nRm9yRm9ybVN1Ym1pc3Npb24oKSk7Ci0g
ICAgVmVjdG9yPHN0ZDo6cGFpcjxTdHJpbmcsIFN0cmluZz4+IGZvcm1WYWx1ZXM7CisgICAgYXV0
byBkYXRhRW5jb2RpbmcgPSBpc01haWx0b0Zvcm0gPyBVVEY4RW5jb2RpbmcoKSA6IGVuY29kaW5n
RnJvbUFjY2VwdENoYXJzZXQoY29waWVkQXR0cmlidXRlcy5hY2NlcHRDaGFyc2V0KCksIGRvY3Vt
ZW50KTsKKyAgICBhdXRvIGRvbUZvcm1EYXRhID0gRE9NRm9ybURhdGE6OmNyZWF0ZShkYXRhRW5j
b2RpbmcuZW5jb2RpbmdGb3JGb3JtU3VibWlzc2lvbigpKTsKKyAgICBTdHJpbmdQYWlyVmVjdG9y
IGZvcm1WYWx1ZXM7CiAKICAgICBib29sIGNvbnRhaW5zUGFzc3dvcmREYXRhID0gZmFsc2U7Ci0g
ICAgZm9yIChhdXRvJiBjb250cm9sIDogZm9ybS0+YXNzb2NpYXRlZEVsZW1lbnRzKCkpIHsKLSAg
ICAgICAgSFRNTEVsZW1lbnQmIGVsZW1lbnQgPSBjb250cm9sLT5hc0hUTUxFbGVtZW50KCk7Cisg
ICAgZm9yIChhdXRvJiBjb250cm9sIDogZm9ybS5hc3NvY2lhdGVkRWxlbWVudHMoKSkgeworICAg
ICAgICBhdXRvJiBlbGVtZW50ID0gY29udHJvbC0+YXNIVE1MRWxlbWVudCgpOwogICAgICAgICBp
ZiAoIWVsZW1lbnQuaXNEaXNhYmxlZEZvcm1Db250cm9sKCkpCi0gICAgICAgICAgICBjb250cm9s
LT5hcHBlbmRGb3JtRGF0YSgqZG9tRm9ybURhdGEsIGlzTXVsdGlQYXJ0Rm9ybSk7CisgICAgICAg
ICAgICBjb250cm9sLT5hcHBlbmRGb3JtRGF0YShkb21Gb3JtRGF0YSwgaXNNdWx0aVBhcnRGb3Jt
KTsKICAgICAgICAgaWYgKGlzPEhUTUxJbnB1dEVsZW1lbnQ+KGVsZW1lbnQpKSB7Ci0gICAgICAg
ICAgICBIVE1MSW5wdXRFbGVtZW50JiBpbnB1dCA9IGRvd25jYXN0PEhUTUxJbnB1dEVsZW1lbnQ+
KGVsZW1lbnQpOworICAgICAgICAgICAgYXV0byYgaW5wdXQgPSBkb3duY2FzdDxIVE1MSW5wdXRF
bGVtZW50PihlbGVtZW50KTsKICAgICAgICAgICAgIGlmIChpbnB1dC5pc1RleHRGaWVsZCgpKSB7
Ci0gICAgICAgICAgICAgICAgZm9ybVZhbHVlcy5hcHBlbmQoc3RkOjpwYWlyPFN0cmluZywgU3Ry
aW5nPihpbnB1dC5uYW1lKCkuc3RyaW5nKCksIGlucHV0LnZhbHVlKCkpKTsKKyAgICAgICAgICAg
ICAgICBmb3JtVmFsdWVzLmFwcGVuZCh7IGlucHV0Lm5hbWUoKS5zdHJpbmcoKSwgaW5wdXQudmFs
dWUoKSB9KTsKICAgICAgICAgICAgICAgICBpbnB1dC5hZGRTZWFyY2hSZXN1bHQoKTsKICAgICAg
ICAgICAgIH0KICAgICAgICAgICAgIGlmIChpbnB1dC5pc1Bhc3N3b3JkRmllbGQoKSAmJiAhaW5w
dXQudmFsdWUoKS5pc0VtcHR5KCkpCkBAIC0yMjMsMTEgKzIwOSwxMSBAQCBSZWY8Rm9ybVN1Ym1p
c3Npb24+IEZvcm1TdWJtaXNzaW9uOjpjcmVhdGUoSFRNTEZvcm1FbGVtZW50KiBmb3JtLCBjb25z
dCBBdHRyaWJ1dAogICAgIFN0cmluZyBib3VuZGFyeTsKIAogICAgIGlmIChpc011bHRpUGFydEZv
cm0pIHsKLSAgICAgICAgZm9ybURhdGEgPSBGb3JtRGF0YTo6Y3JlYXRlTXVsdGlQYXJ0KCooc3Rh
dGljX2Nhc3Q8Rm9ybURhdGFMaXN0Kj4oZG9tRm9ybURhdGEuZ2V0KCkpKSwgZG9tRm9ybURhdGEt
PmVuY29kaW5nKCksICZkb2N1bWVudCk7CisgICAgICAgIGZvcm1EYXRhID0gRm9ybURhdGE6OmNy
ZWF0ZU11bHRpUGFydChkb21Gb3JtRGF0YSwgZG9tRm9ybURhdGEtPmVuY29kaW5nKCksICZkb2N1
bWVudCk7CiAgICAgICAgIGJvdW5kYXJ5ID0gZm9ybURhdGEtPmJvdW5kYXJ5KCkuZGF0YSgpOwog
ICAgIH0gZWxzZSB7Ci0gICAgICAgIGZvcm1EYXRhID0gRm9ybURhdGE6OmNyZWF0ZSgqKHN0YXRp
Y19jYXN0PEZvcm1EYXRhTGlzdCo+KGRvbUZvcm1EYXRhLmdldCgpKSksIGRvbUZvcm1EYXRhLT5l
bmNvZGluZygpLCBhdHRyaWJ1dGVzLm1ldGhvZCgpID09IEdldE1ldGhvZCA/IEZvcm1EYXRhOjpG
b3JtVVJMRW5jb2RlZCA6IEZvcm1EYXRhOjpwYXJzZUVuY29kaW5nVHlwZShlbmNvZGluZ1R5cGUp
KTsKLSAgICAgICAgaWYgKGNvcGllZEF0dHJpYnV0ZXMubWV0aG9kKCkgPT0gUG9zdE1ldGhvZCAm
JiBpc01haWx0b0Zvcm0pIHsKKyAgICAgICAgZm9ybURhdGEgPSBGb3JtRGF0YTo6Y3JlYXRlKGRv
bUZvcm1EYXRhLCBkb21Gb3JtRGF0YS0+ZW5jb2RpbmcoKSwgYXR0cmlidXRlcy5tZXRob2QoKSA9
PSBNZXRob2Q6OkdldCA/IEZvcm1EYXRhOjpGb3JtVVJMRW5jb2RlZCA6IEZvcm1EYXRhOjpwYXJz
ZUVuY29kaW5nVHlwZShlbmNvZGluZ1R5cGUpKTsKKyAgICAgICAgaWYgKGNvcGllZEF0dHJpYnV0
ZXMubWV0aG9kKCkgPT0gTWV0aG9kOjpQb3N0ICYmIGlzTWFpbHRvRm9ybSkgewogICAgICAgICAg
ICAgLy8gQ29udmVydCB0aGUgZm9ybSBkYXRhIGludG8gYSBzdHJpbmcgdGhhdCB3ZSBwdXQgaW50
byB0aGUgVVJMLgogICAgICAgICAgICAgYXBwZW5kTWFpbHRvUG9zdEZvcm1EYXRhVG9VUkwoYWN0
aW9uVVJMLCAqZm9ybURhdGEsIGVuY29kaW5nVHlwZSk7CiAgICAgICAgICAgICBmb3JtRGF0YSA9
IEZvcm1EYXRhOjpjcmVhdGUoKTsKQEAgLTIzNiwxNCArMjIyLDE3IEBAIFJlZjxGb3JtU3VibWlz
c2lvbj4gRm9ybVN1Ym1pc3Npb246OmNyZWF0ZShIVE1MRm9ybUVsZW1lbnQqIGZvcm0sIGNvbnN0
IEF0dHJpYnV0CiAKICAgICBmb3JtRGF0YS0+c2V0SWRlbnRpZmllcihnZW5lcmF0ZUZvcm1EYXRh
SWRlbnRpZmllcigpKTsKICAgICBmb3JtRGF0YS0+c2V0Q29udGFpbnNQYXNzd29yZERhdGEoY29u
dGFpbnNQYXNzd29yZERhdGEpOworCiAgICAgU3RyaW5nIHRhcmdldE9yQmFzZVRhcmdldCA9IGNv
cGllZEF0dHJpYnV0ZXMudGFyZ2V0KCkuaXNFbXB0eSgpID8gZG9jdW1lbnQuYmFzZVRhcmdldCgp
IDogY29waWVkQXR0cmlidXRlcy50YXJnZXQoKTsKLSAgICBhdXRvIGZvcm1TdGF0ZSA9IEZvcm1T
dGF0ZTo6Y3JlYXRlKGZvcm0sIGZvcm1WYWx1ZXMsICZkb2N1bWVudCwgdHJpZ2dlcik7Ci0gICAg
cmV0dXJuIGFkb3B0UmVmKCpuZXcgRm9ybVN1Ym1pc3Npb24oY29waWVkQXR0cmlidXRlcy5tZXRo
b2QoKSwgYWN0aW9uVVJMLCB0YXJnZXRPckJhc2VUYXJnZXQsIGVuY29kaW5nVHlwZSwgV1RGTW92
ZShmb3JtU3RhdGUpLCBXVEZNb3ZlKGZvcm1EYXRhKSwgYm91bmRhcnksIGxvY2tIaXN0b3J5LCBl
dmVudCkpOworCisgICAgYXV0byBmb3JtU3RhdGUgPSBGb3JtU3RhdGU6OmNyZWF0ZShmb3JtLCBX
VEZNb3ZlKGZvcm1WYWx1ZXMpLCBkb2N1bWVudCwgdHJpZ2dlcik7CisKKyAgICByZXR1cm4gYWRv
cHRSZWYoKm5ldyBGb3JtU3VibWlzc2lvbihjb3BpZWRBdHRyaWJ1dGVzLm1ldGhvZCgpLCBhY3Rp
b25VUkwsIHRhcmdldE9yQmFzZVRhcmdldCwgZW5jb2RpbmdUeXBlLCBXVEZNb3ZlKGZvcm1TdGF0
ZSksIGZvcm1EYXRhLnJlbGVhc2VOb25OdWxsKCksIGJvdW5kYXJ5LCBsb2NrSGlzdG9yeSwgZXZl
bnQpKTsKIH0KIAogVVJMIEZvcm1TdWJtaXNzaW9uOjpyZXF1ZXN0VVJMKCkgY29uc3QKIHsKLSAg
ICBpZiAobV9tZXRob2QgPT0gRm9ybVN1Ym1pc3Npb246OlBvc3RNZXRob2QpCisgICAgaWYgKG1f
bWV0aG9kID09IE1ldGhvZDo6UG9zdCkKICAgICAgICAgcmV0dXJuIG1fYWN0aW9uOwogCiAgICAg
VVJMIHJlcXVlc3RVUkwobV9hY3Rpb24pOwpAQCAtMjU5LDcgKzI0OCw3IEBAIHZvaWQgRm9ybVN1
Ym1pc3Npb246OnBvcHVsYXRlRnJhbWVMb2FkUmVxdWVzdChGcmFtZUxvYWRSZXF1ZXN0JiBmcmFt
ZVJlcXVlc3QpCiAgICAgaWYgKCFtX3JlZmVycmVyLmlzRW1wdHkoKSkKICAgICAgICAgZnJhbWVS
ZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLnNldEhUVFBSZWZlcnJlcihtX3JlZmVycmVyKTsKIAot
ICAgIGlmIChtX21ldGhvZCA9PSBGb3JtU3VibWlzc2lvbjo6UG9zdE1ldGhvZCkgeworICAgIGlm
IChtX21ldGhvZCA9PSBNZXRob2Q6OlBvc3QpIHsKICAgICAgICAgZnJhbWVSZXF1ZXN0LnJlc291
cmNlUmVxdWVzdCgpLnNldEhUVFBNZXRob2QoIlBPU1QiKTsKICAgICAgICAgZnJhbWVSZXF1ZXN0
LnJlc291cmNlUmVxdWVzdCgpLnNldEhUVFBCb2R5KG1fZm9ybURhdGEuY29weVJlZigpKTsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdWJtaXNzaW9uLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN1Ym1pc3Npb24uaAppbmRleCA0MWIzN2UwNjQyYjE4YTgw
ZTE2NGYwNTY2YmVmODhkMmQxMGU3ZWY4Li4yNTI0MTJjMGMwMmIzOWJkOWU4YjQ1MWFjNzUzNWE0
NTczNTQ3NmEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN1Ym1pc3Np
b24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN1Ym1pc3Npb24uaApAQCAtMzYs
MzEgKzM2LDIxIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgRG9jdW1lbnQ7CiBj
bGFzcyBFdmVudDsKIGNsYXNzIEZvcm1EYXRhOworCiBzdHJ1Y3QgRnJhbWVMb2FkUmVxdWVzdDsK
LWNsYXNzIEhUTUxGb3JtRWxlbWVudDsKLWNsYXNzIFRleHRFbmNvZGluZzsKIAogY2xhc3MgRm9y
bVN1Ym1pc3Npb24gOiBwdWJsaWMgUmVmQ291bnRlZDxGb3JtU3VibWlzc2lvbj4gewogcHVibGlj
OgotICAgIGVudW0gTWV0aG9kIHsgR2V0TWV0aG9kLCBQb3N0TWV0aG9kIH07CisgICAgZW51bSBj
bGFzcyBNZXRob2QgeyBHZXQsIFBvc3QgfTsKIAogICAgIGNsYXNzIEF0dHJpYnV0ZXMgewotICAg
ICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShBdHRyaWJ1dGVzKTsKICAgICBwdWJsaWM6Ci0gICAg
ICAgIEF0dHJpYnV0ZXMoKQotICAgICAgICAgICAgOiBtX21ldGhvZChHZXRNZXRob2QpCi0gICAg
ICAgICAgICAsIG1faXNNdWx0aVBhcnRGb3JtKGZhbHNlKQotICAgICAgICAgICAgLCBtX2VuY29k
aW5nVHlwZSgiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIikKLSAgICAgICAgewot
ICAgICAgICB9Ci0KICAgICAgICAgTWV0aG9kIG1ldGhvZCgpIGNvbnN0IHsgcmV0dXJuIG1fbWV0
aG9kOyB9CiAgICAgICAgIHN0YXRpYyBNZXRob2QgcGFyc2VNZXRob2RUeXBlKGNvbnN0IFN0cmlu
ZyYpOwogICAgICAgICB2b2lkIHVwZGF0ZU1ldGhvZFR5cGUoY29uc3QgU3RyaW5nJik7Ci0gICAg
ICAgIHN0YXRpYyBTdHJpbmcgbWV0aG9kU3RyaW5nKE1ldGhvZCBtZXRob2QpIHsgcmV0dXJuIG1l
dGhvZCA9PSBQb3N0TWV0aG9kID8gInBvc3QiIDogImdldCI7IH0KKyAgICAgICAgc3RhdGljIEFT
Q0lJTGl0ZXJhbCBtZXRob2RTdHJpbmcoTWV0aG9kIG1ldGhvZCkgeyByZXR1cm4gQVNDSUlMaXRl
cmFsIHsgbWV0aG9kID09IE1ldGhvZDo6UG9zdCA/ICJwb3N0IiA6ICJnZXQiIH07IH0KIAogICAg
ICAgICBjb25zdCBTdHJpbmcmIGFjdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fYWN0aW9uOyB9CiAg
ICAgICAgIHZvaWQgcGFyc2VBY3Rpb24oY29uc3QgU3RyaW5nJik7CkBAIC03Niw1MCArNjYsNDYg
QEAgcHVibGljOgogICAgICAgICBjb25zdCBTdHJpbmcmIGFjY2VwdENoYXJzZXQoKSBjb25zdCB7
IHJldHVybiBtX2FjY2VwdENoYXJzZXQ7IH0KICAgICAgICAgdm9pZCBzZXRBY2NlcHRDaGFyc2V0
KGNvbnN0IFN0cmluZyYgdmFsdWUpIHsgbV9hY2NlcHRDaGFyc2V0ID0gdmFsdWU7IH0KIAotICAg
ICAgICB2b2lkIGNvcHlGcm9tKGNvbnN0IEF0dHJpYnV0ZXMmKTsKLQogICAgIHByaXZhdGU6Ci0g
ICAgICAgIE1ldGhvZCBtX21ldGhvZDsKLSAgICAgICAgYm9vbCBtX2lzTXVsdGlQYXJ0Rm9ybTsK
LQorICAgICAgICBNZXRob2QgbV9tZXRob2QgeyBNZXRob2Q6OkdldCB9OworICAgICAgICBib29s
IG1faXNNdWx0aVBhcnRGb3JtIHsgZmFsc2UgfTsKICAgICAgICAgU3RyaW5nIG1fYWN0aW9uOwog
ICAgICAgICBTdHJpbmcgbV90YXJnZXQ7Ci0gICAgICAgIFN0cmluZyBtX2VuY29kaW5nVHlwZTsK
KyAgICAgICAgU3RyaW5nIG1fZW5jb2RpbmdUeXBlIHsgQVNDSUlMaXRlcmFsIHsgImFwcGxpY2F0
aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIgfSB9OwogICAgICAgICBTdHJpbmcgbV9hY2NlcHRD
aGFyc2V0OwogICAgIH07CiAKLSAgICBzdGF0aWMgUmVmPEZvcm1TdWJtaXNzaW9uPiBjcmVhdGUo
SFRNTEZvcm1FbGVtZW50KiwgY29uc3QgQXR0cmlidXRlcyYsIFBhc3NSZWZQdHI8RXZlbnQ+IGV2
ZW50LCBMb2NrSGlzdG9yeSwgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyKTsKKyAgICBzdGF0aWMgUmVm
PEZvcm1TdWJtaXNzaW9uPiBjcmVhdGUoSFRNTEZvcm1FbGVtZW50JiwgY29uc3QgQXR0cmlidXRl
cyYsIEV2ZW50KiwgTG9ja0hpc3RvcnksIEZvcm1TdWJtaXNzaW9uVHJpZ2dlcik7CiAKICAgICB2
b2lkIHBvcHVsYXRlRnJhbWVMb2FkUmVxdWVzdChGcmFtZUxvYWRSZXF1ZXN0Jik7Ci0gICAgCiAg
ICAgVVJMIHJlcXVlc3RVUkwoKSBjb25zdDsKIAogICAgIE1ldGhvZCBtZXRob2QoKSBjb25zdCB7
IHJldHVybiBtX21ldGhvZDsgfQogICAgIGNvbnN0IFVSTCYgYWN0aW9uKCkgY29uc3QgeyByZXR1
cm4gbV9hY3Rpb247IH0KICAgICBjb25zdCBTdHJpbmcmIHRhcmdldCgpIGNvbnN0IHsgcmV0dXJu
IG1fdGFyZ2V0OyB9Ci0gICAgdm9pZCBjbGVhclRhcmdldCgpIHsgbV90YXJnZXQgPSBTdHJpbmco
KTsgfQogICAgIGNvbnN0IFN0cmluZyYgY29udGVudFR5cGUoKSBjb25zdCB7IHJldHVybiBtX2Nv
bnRlbnRUeXBlOyB9Ci0gICAgRm9ybVN0YXRlKiBzdGF0ZSgpIGNvbnN0IHsgcmV0dXJuIG1fZm9y
bVN0YXRlLmdldCgpOyB9Ci0gICAgRm9ybURhdGEqIGRhdGEoKSBjb25zdCB7IHJldHVybiBtX2Zv
cm1EYXRhLmdldCgpOyB9CisgICAgRm9ybVN0YXRlJiBzdGF0ZSgpIGNvbnN0IHsgcmV0dXJuIG1f
Zm9ybVN0YXRlOyB9CisgICAgRm9ybURhdGEmIGRhdGEoKSBjb25zdCB7IHJldHVybiBtX2Zvcm1E
YXRhOyB9CiAgICAgY29uc3QgU3RyaW5nIGJvdW5kYXJ5KCkgY29uc3QgeyByZXR1cm4gbV9ib3Vu
ZGFyeTsgfQogICAgIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5KCkgY29uc3QgeyByZXR1cm4gbV9s
b2NrSGlzdG9yeTsgfQogICAgIEV2ZW50KiBldmVudCgpIGNvbnN0IHsgcmV0dXJuIG1fZXZlbnQu
Z2V0KCk7IH0KLQogICAgIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIoKSBjb25zdCB7IHJldHVybiBt
X3JlZmVycmVyOyB9Ci0gICAgdm9pZCBzZXRSZWZlcnJlcihjb25zdCBTdHJpbmcmIHJlZmVycmVy
KSB7IG1fcmVmZXJyZXIgPSByZWZlcnJlcjsgfQogICAgIGNvbnN0IFN0cmluZyYgb3JpZ2luKCkg
Y29uc3QgeyByZXR1cm4gbV9vcmlnaW47IH0KKworICAgIHZvaWQgY2xlYXJUYXJnZXQoKSB7IG1f
dGFyZ2V0ID0geyB9OyB9CisgICAgdm9pZCBzZXRSZWZlcnJlcihjb25zdCBTdHJpbmcmIHJlZmVy
cmVyKSB7IG1fcmVmZXJyZXIgPSByZWZlcnJlcjsgfQogICAgIHZvaWQgc2V0T3JpZ2luKGNvbnN0
IFN0cmluZyYgb3JpZ2luKSB7IG1fb3JpZ2luID0gb3JpZ2luOyB9CiAKIHByaXZhdGU6Ci0gICAg
Rm9ybVN1Ym1pc3Npb24oTWV0aG9kLCBjb25zdCBVUkwmIGFjdGlvbiwgY29uc3QgU3RyaW5nJiB0
YXJnZXQsIGNvbnN0IFN0cmluZyYgY29udGVudFR5cGUsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwg
UGFzc1JlZlB0cjxGb3JtRGF0YT4sIGNvbnN0IFN0cmluZyYgYm91bmRhcnksIExvY2tIaXN0b3J5
LCBQYXNzUmVmUHRyPEV2ZW50Pik7CisgICAgRm9ybVN1Ym1pc3Npb24oTWV0aG9kLCBjb25zdCBV
UkwmIGFjdGlvbiwgY29uc3QgU3RyaW5nJiB0YXJnZXQsIGNvbnN0IFN0cmluZyYgY29udGVudFR5
cGUsIFJlZjxGb3JtU3RhdGU+JiYsIFJlZjxGb3JtRGF0YT4mJiwgY29uc3QgU3RyaW5nJiBib3Vu
ZGFyeSwgTG9ja0hpc3RvcnksIEV2ZW50Kik7CiAKICAgICAvLyBGSVhNRTogSG9sZCBhbiBpbnN0
YW5jZSBvZiBBdHRyaWJ1dGVzIGluc3RlYWQgb2YgaW5kaXZpZHVhbCBtZW1iZXJzLgogICAgIE1l
dGhvZCBtX21ldGhvZDsKICAgICBVUkwgbV9hY3Rpb247CiAgICAgU3RyaW5nIG1fdGFyZ2V0Owog
ICAgIFN0cmluZyBtX2NvbnRlbnRUeXBlOwotICAgIFJlZlB0cjxGb3JtU3RhdGU+IG1fZm9ybVN0
YXRlOwotICAgIFJlZlB0cjxGb3JtRGF0YT4gbV9mb3JtRGF0YTsKKyAgICBSZWY8Rm9ybVN0YXRl
PiBtX2Zvcm1TdGF0ZTsKKyAgICBSZWY8Rm9ybURhdGE+IG1fZm9ybURhdGE7CiAgICAgU3RyaW5n
IG1fYm91bmRhcnk7CiAgICAgTG9ja0hpc3RvcnkgbV9sb2NrSGlzdG9yeTsKICAgICBSZWZQdHI8
RXZlbnQ+IG1fZXZlbnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVM
b2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcAppbmRleCA0
Y2ZlYmVmMTFmYmVkMzczODkxMTFiMmIxYjQ0ZjhlNmZkNzQ0MzQzLi5lNWNjODk1NWQzNmQ0YjA5
ODQ0NTc1MjVkNzkxZGRjMjNjYTM5MmI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvRnJhbWVMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRl
ci5jcHAKQEAgLTM2NiwxNyArMzY2LDE1IEBAIHZvaWQgRnJhbWVMb2FkZXI6OnVybFNlbGVjdGVk
KGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmIHBhc3NlZFJlcXVlc3QsIEV2ZW50KiB0cmlnCiAKIHZv
aWQgRnJhbWVMb2FkZXI6OnN1Ym1pdEZvcm0oUmVmPEZvcm1TdWJtaXNzaW9uPiYmIHN1Ym1pc3Np
b24pCiB7Ci0gICAgQVNTRVJUKHN1Ym1pc3Npb24tPm1ldGhvZCgpID09IEZvcm1TdWJtaXNzaW9u
OjpQb3N0TWV0aG9kIHx8IHN1Ym1pc3Npb24tPm1ldGhvZCgpID09IEZvcm1TdWJtaXNzaW9uOjpH
ZXRNZXRob2QpOworICAgIEFTU0VSVChzdWJtaXNzaW9uLT5tZXRob2QoKSA9PSBGb3JtU3VibWlz
c2lvbjo6TWV0aG9kOjpQb3N0IHx8IHN1Ym1pc3Npb24tPm1ldGhvZCgpID09IEZvcm1TdWJtaXNz
aW9uOjpNZXRob2Q6OkdldCk7CiAKICAgICAvLyBGSVhNRTogRmluZCBhIGdvb2Qgc3BvdCBmb3Ig
dGhlc2UuCi0gICAgQVNTRVJUKHN1Ym1pc3Npb24tPmRhdGEoKSk7Ci0gICAgQVNTRVJUKHN1Ym1p
c3Npb24tPnN0YXRlKCkpOwotICAgIEFTU0VSVCghc3VibWlzc2lvbi0+c3RhdGUoKS0+c291cmNl
RG9jdW1lbnQoKS0+ZnJhbWUoKSB8fCBzdWJtaXNzaW9uLT5zdGF0ZSgpLT5zb3VyY2VEb2N1bWVu
dCgpLT5mcmFtZSgpID09ICZtX2ZyYW1lKTsKKyAgICBBU1NFUlQoIXN1Ym1pc3Npb24tPnN0YXRl
KCkuc291cmNlRG9jdW1lbnQoKS5mcmFtZSgpIHx8IHN1Ym1pc3Npb24tPnN0YXRlKCkuc291cmNl
RG9jdW1lbnQoKS5mcmFtZSgpID09ICZtX2ZyYW1lKTsKIAogICAgIGlmICghbV9mcmFtZS5wYWdl
KCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGlmIChzdWJtaXNzaW9uLT5zdGF0ZSgpLT5zb3Vy
Y2VEb2N1bWVudCgpLT5wYWdlQ2FjaGVTdGF0ZSgpICE9IERvY3VtZW50OjpOb3RJblBhZ2VDYWNo
ZSkKKyAgICBpZiAoc3VibWlzc2lvbi0+c3RhdGUoKS5zb3VyY2VEb2N1bWVudCgpLnBhZ2VDYWNo
ZVN0YXRlKCkgIT0gRG9jdW1lbnQ6Ok5vdEluUGFnZUNhY2hlKQogICAgICAgICByZXR1cm47CiAK
ICAgICBpZiAoc3VibWlzc2lvbi0+YWN0aW9uKCkuaXNFbXB0eSgpKQpAQCAtMzk4LDEyICszOTYs
MTIgQEAgdm9pZCBGcmFtZUxvYWRlcjo6c3VibWl0Rm9ybShSZWY8Rm9ybVN1Ym1pc3Npb24+JiYg
c3VibWlzc2lvbikKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIEZyYW1lKiB0YXJnZXRG
cmFtZSA9IGZpbmRGcmFtZUZvck5hdmlnYXRpb24oc3VibWlzc2lvbi0+dGFyZ2V0KCksIHN1Ym1p
c3Npb24tPnN0YXRlKCktPnNvdXJjZURvY3VtZW50KCkpOworICAgIEZyYW1lKiB0YXJnZXRGcmFt
ZSA9IGZpbmRGcmFtZUZvck5hdmlnYXRpb24oc3VibWlzc2lvbi0+dGFyZ2V0KCksICZzdWJtaXNz
aW9uLT5zdGF0ZSgpLnNvdXJjZURvY3VtZW50KCkpOwogICAgIGlmICghdGFyZ2V0RnJhbWUpIHsK
ICAgICAgICAgaWYgKCFET01XaW5kb3c6OmFsbG93UG9wVXAoJm1fZnJhbWUpICYmICFTY3JpcHRD
b250cm9sbGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSkKICAgICAgICAgICAgIHJldHVybjsK
IAotICAgICAgICAvLyBGSVhNRTogdGFyZ2V0RnJhbWUgY2FuIGJlIDAgZm9yIHR3byBkaXN0aW5j
dCByZWFzb25zOgorICAgICAgICAvLyBGSVhNRTogdGFyZ2V0RnJhbWUgY2FuIGJlIG51bGwgZm9y
IHR3byBkaXN0aW5jdCByZWFzb25zOgogICAgICAgICAvLyAxLiBUaGUgZnJhbWUgd2FzIG5vdCBm
b3VuZCBieSBuYW1lLCBzbyB3ZSBzaG91bGQgdHJ5IG9wZW5pbmcgYSBuZXcgd2luZG93LgogICAg
ICAgICAvLyAyLiBUaGUgZnJhbWUgd2FzIGZvdW5kLCBidXQgbmF2aWdhdGluZyBpdCB3YXMgbm90
IGFsbG93ZWQsIGUuZy4gYnkgSFRNTDUgc2FuZGJveCBvciBieSBvcmlnaW4gY2hlY2tzLgogICAg
ICAgICAvLyBDb250aW51aW5nIGZvcm0gc3VibWlzc2lvbiBtYWtlcyBubyBzZW5zZSBpbiB0aGUg
bGF0dGVyIGNhc2UuCkBAIC00MzQsNyArNDMyLDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6c3VibWl0
Rm9ybShSZWY8Rm9ybVN1Ym1pc3Npb24+JiYgc3VibWlzc2lvbikKICAgICAgICAgbV9zdWJtaXR0
ZWRGb3JtVVJMID0gc3VibWlzc2lvbi0+cmVxdWVzdFVSTCgpOwogICAgIH0KIAotICAgIHN1Ym1p
c3Npb24tPmRhdGEoKS0+Z2VuZXJhdGVGaWxlcyhtX2ZyYW1lLmRvY3VtZW50KCkpOworICAgIHN1
Ym1pc3Npb24tPmRhdGEoKS5nZW5lcmF0ZUZpbGVzKG1fZnJhbWUuZG9jdW1lbnQoKSk7CiAgICAg
c3VibWlzc2lvbi0+c2V0UmVmZXJyZXIob3V0Z29pbmdSZWZlcnJlcigpKTsKICAgICBzdWJtaXNz
aW9uLT5zZXRPcmlnaW4ob3V0Z29pbmdPcmlnaW4oKSk7CiAKQEAgLTY2MCwyMCArNjU4LDE4IEBA
IHZvaWQgRnJhbWVMb2FkZXI6OnJlY2VpdmVkRmlyc3REYXRhKCkKICAgICBpZiAoIW1fZG9jdW1l
bnRMb2FkZXIpCiAgICAgICAgIHJldHVybjsKIAorICAgIEFTU0VSVChtX2ZyYW1lLmRvY3VtZW50
KCkpOworICAgIGF1dG8mIGRvY3VtZW50ID0gKm1fZnJhbWUuZG9jdW1lbnQoKTsKKwogICAgIGRv
dWJsZSBkZWxheTsKICAgICBTdHJpbmcgdXJsU3RyaW5nOwogICAgIGlmICghcGFyc2VIVFRQUmVm
cmVzaChtX2RvY3VtZW50TG9hZGVyLT5yZXNwb25zZSgpLmh0dHBIZWFkZXJGaWVsZChIVFRQSGVh
ZGVyTmFtZTo6UmVmcmVzaCksIGRlbGF5LCB1cmxTdHJpbmcpKQogICAgICAgICByZXR1cm47Ci0g
ICAgVVJMIGNvbXBsZXRlZFVSTDsKLSAgICBpZiAodXJsU3RyaW5nLmlzRW1wdHkoKSkKLSAgICAg
ICAgY29tcGxldGVkVVJMID0gbV9mcmFtZS5kb2N1bWVudCgpLT51cmwoKTsKLSAgICBlbHNlCi0g
ICAgICAgIGNvbXBsZXRlZFVSTCA9IG1fZnJhbWUuZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwodXJs
U3RyaW5nKTsKLQorICAgIGF1dG8gY29tcGxldGVkVVJMID0gdXJsU3RyaW5nLmlzRW1wdHkoKSA/
IGRvY3VtZW50LnVybCgpIDogZG9jdW1lbnQuY29tcGxldGVVUkwodXJsU3RyaW5nKTsKICAgICBp
ZiAoIXByb3RvY29sSXNKYXZhU2NyaXB0KGNvbXBsZXRlZFVSTCkpCi0gICAgICAgIG1fZnJhbWUu
bmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlUmVkaXJlY3QobV9mcmFtZS5kb2N1bWVudCgp
LCBkZWxheSwgY29tcGxldGVkVVJMKTsKKyAgICAgICAgbV9mcmFtZS5uYXZpZ2F0aW9uU2NoZWR1
bGVyKCkuc2NoZWR1bGVSZWRpcmVjdChkb2N1bWVudCwgZGVsYXksIGNvbXBsZXRlZFVSTCk7CiAg
ICAgZWxzZSB7Ci0gICAgICAgIFN0cmluZyBtZXNzYWdlID0gIlJlZnVzZWQgdG8gcmVmcmVzaCAi
ICsgbV9mcmFtZS5kb2N1bWVudCgpLT51cmwoKS5zdHJpbmdDZW50ZXJFbGxpcHNpemVkVG9MZW5n
dGgoKSArICIgdG8gYSBqYXZhc2NyaXB0OiBVUkwiOworICAgICAgICBhdXRvIG1lc3NhZ2UgPSAi
UmVmdXNlZCB0byByZWZyZXNoICIgKyBkb2N1bWVudC51cmwoKS5zdHJpbmdDZW50ZXJFbGxpcHNp
emVkVG9MZW5ndGgoKSArICIgdG8gYSBqYXZhc2NyaXB0OiBVUkwiOwogICAgICAgICBtX2ZyYW1l
LmRvY3VtZW50KCktPmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OlNlY3VyaXR5LCBN
ZXNzYWdlTGV2ZWw6OkVycm9yLCBtZXNzYWdlKTsKICAgICB9CiB9CkBAIC0xMTM5LDcgKzExMzUs
NyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpsb2FkRnJhbWVSZXF1ZXN0KGNvbnN0IEZyYW1lTG9hZFJl
cXVlc3QmIHJlcXVlc3QsIEV2ZW50KiBldmVudAogICAgICAgICB8fCBldmVudC0+dGFyZ2V0KCkt
PnRvTm9kZSgpLT5kb2N1bWVudCgpLnBhZ2VDYWNoZVN0YXRlKCkgPT0gRG9jdW1lbnQ6Ok5vdElu
UGFnZUNhY2hlKTsKIAogICAgIC8vIFByb3RlY3QgZnJhbWUgZnJvbSBnZXR0aW5nIGJsb3duIGF3
YXkgaW5zaWRlIGRpc3BhdGNoQmVmb3JlTG9hZEV2ZW50IGluIGxvYWRXaXRoRG9jdW1lbnRMb2Fk
ZXIuCi0gICAgUmVmPEZyYW1lPiBwcm90ZWN0KG1fZnJhbWUpOworICAgIGF1dG8gcHJvdGVjdEZy
YW1lID0gbWFrZVJlZihtX2ZyYW1lKTsKIAogICAgIFVSTCB1cmwgPSByZXF1ZXN0LnJlc291cmNl
UmVxdWVzdCgpLnVybCgpOwogCkBAIC0xMTcyLDcgKzExNjgsNyBAQCB2b2lkIEZyYW1lTG9hZGVy
Ojpsb2FkRnJhbWVSZXF1ZXN0KGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmIHJlcXVlc3QsIEV2ZW50
KiBldmVudAogCiAgICAgLy8gRklYTUU6IEl0J3MgcG9zc2libGUgdGhpcyB0YXJnZXRGcmFtZSB3
aWxsIG5vdCBiZSB0aGUgc2FtZSBmcmFtZSB0aGF0IHdhcyB0YXJnZXRlZCBieSB0aGUgYWN0dWFs
CiAgICAgLy8gbG9hZCBpZiBmcmFtZSBuYW1lcyBoYXZlIGNoYW5nZWQuCi0gICAgRnJhbWUqIHNv
dXJjZUZyYW1lID0gZm9ybVN0YXRlID8gZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLT5mcmFt
ZSgpIDogJm1fZnJhbWU7CisgICAgRnJhbWUqIHNvdXJjZUZyYW1lID0gZm9ybVN0YXRlID8gZm9y
bVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLmZyYW1lKCkgOiAmbV9mcmFtZTsKICAgICBpZiAoIXNv
dXJjZUZyYW1lKQogICAgICAgICBzb3VyY2VGcmFtZSA9ICZtX2ZyYW1lOwogICAgIEZyYW1lKiB0
YXJnZXRGcmFtZSA9IHNvdXJjZUZyYW1lLT5sb2FkZXIoKS5maW5kRnJhbWVGb3JOYXZpZ2F0aW9u
KHJlcXVlc3QuZnJhbWVOYW1lKCkpOwpAQCAtMTI1Niw3ICsxMjUyLDcgQEAgdm9pZCBGcmFtZUxv
YWRlcjo6bG9hZFVSTChjb25zdCBGcmFtZUxvYWRSZXF1ZXN0JiBmcmFtZUxvYWRSZXF1ZXN0LCBj
b25zdCBTdHJpbmcKICAgICAgICAgb2xkRG9jdW1lbnRMb2FkZXItPnNldExhc3RDaGVja2VkUmVx
dWVzdChSZXNvdXJjZVJlcXVlc3QoKSk7CiAgICAgICAgIHBvbGljeUNoZWNrZXIoKS5zdG9wQ2hl
Y2soKTsKICAgICAgICAgcG9saWN5Q2hlY2tlcigpLnNldExvYWRUeXBlKG5ld0xvYWRUeXBlKTsK
LSAgICAgICAgcG9saWN5Q2hlY2tlcigpLmNoZWNrTmF2aWdhdGlvblBvbGljeShyZXF1ZXN0LCBm
YWxzZSAvKiBkaWRSZWNlaXZlUmVkaXJlY3RSZXNwb25zZSAqLywgb2xkRG9jdW1lbnRMb2FkZXIu
Z2V0KCksIGZvcm1TdGF0ZSwgW3RoaXNdKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwg
Rm9ybVN0YXRlKiwgYm9vbCBzaG91bGRDb250aW51ZSkgeworICAgICAgICBwb2xpY3lDaGVja2Vy
KCkuY2hlY2tOYXZpZ2F0aW9uUG9saWN5KHJlcXVlc3QsIGZhbHNlIC8qIGRpZFJlY2VpdmVSZWRp
cmVjdFJlc3BvbnNlICovLCBvbGREb2N1bWVudExvYWRlci5nZXQoKSwgZm9ybVN0YXRlLCBbdGhp
c10gKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiwgYm9vbCBzaG91
bGRDb250aW51ZSkgewogICAgICAgICAgICAgY29udGludWVGcmFnbWVudFNjcm9sbEFmdGVyTmF2
aWdhdGlvblBvbGljeShyZXF1ZXN0LCBzaG91bGRDb250aW51ZSk7CiAgICAgICAgIH0pOwogICAg
ICAgICByZXR1cm47CkBAIC0xNDUyLDcgKzE0NDgsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpsb2Fk
V2l0aERvY3VtZW50TG9hZGVyKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIEZyYW1lTG9hZFR5cGUg
dAogICAgICAgICBvbGREb2N1bWVudExvYWRlci0+c2V0VHJpZ2dlcmluZ0FjdGlvbihhY3Rpb24p
OwogICAgICAgICBvbGREb2N1bWVudExvYWRlci0+c2V0TGFzdENoZWNrZWRSZXF1ZXN0KFJlc291
cmNlUmVxdWVzdCgpKTsKICAgICAgICAgcG9saWN5Q2hlY2tlcigpLnN0b3BDaGVjaygpOwotICAg
ICAgICBwb2xpY3lDaGVja2VyKCkuY2hlY2tOYXZpZ2F0aW9uUG9saWN5KGxvYWRlci0+cmVxdWVz
dCgpLCBmYWxzZSAvKiBkaWRSZWNlaXZlUmVkaXJlY3RSZXNwb25zZSAqLywgb2xkRG9jdW1lbnRM
b2FkZXIuZ2V0KCksIGZvcm1TdGF0ZSwgW3RoaXNdKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVx
dWVzdCwgRm9ybVN0YXRlKiwgYm9vbCBzaG91bGRDb250aW51ZSkgeworICAgICAgICBwb2xpY3lD
aGVja2VyKCkuY2hlY2tOYXZpZ2F0aW9uUG9saWN5KGxvYWRlci0+cmVxdWVzdCgpLCBmYWxzZSAv
KiBkaWRSZWNlaXZlUmVkaXJlY3RSZXNwb25zZSAqLywgb2xkRG9jdW1lbnRMb2FkZXIuZ2V0KCks
IGZvcm1TdGF0ZSwgW3RoaXNdIChjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1T
dGF0ZSosIGJvb2wgc2hvdWxkQ29udGludWUpIHsKICAgICAgICAgICAgIGNvbnRpbnVlRnJhZ21l
bnRTY3JvbGxBZnRlck5hdmlnYXRpb25Qb2xpY3kocmVxdWVzdCwgc2hvdWxkQ29udGludWUpOwog
ICAgICAgICB9KTsKICAgICAgICAgcmV0dXJuOwpAQCAtMTQ3OSw3ICsxNDc1LDcgQEAgdm9pZCBG
cmFtZUxvYWRlcjo6bG9hZFdpdGhEb2N1bWVudExvYWRlcihEb2N1bWVudExvYWRlciogbG9hZGVy
LCBGcmFtZUxvYWRUeXBlIHQKICAgICAgICAgfQogICAgIH0KIAotICAgIHBvbGljeUNoZWNrZXIo
KS5jaGVja05hdmlnYXRpb25Qb2xpY3kobG9hZGVyLT5yZXF1ZXN0KCksIGZhbHNlIC8qIGRpZFJl
Y2VpdmVSZWRpcmVjdFJlc3BvbnNlICovLCBsb2FkZXIsIGZvcm1TdGF0ZSwgW3RoaXMsIGFsbG93
TmF2aWdhdGlvblRvSW52YWxpZFVSTF0oY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBG
b3JtU3RhdGUqIGZvcm1TdGF0ZSwgYm9vbCBzaG91bGRDb250aW51ZSkgeworICAgIHBvbGljeUNo
ZWNrZXIoKS5jaGVja05hdmlnYXRpb25Qb2xpY3kobG9hZGVyLT5yZXF1ZXN0KCksIGZhbHNlIC8q
IGRpZFJlY2VpdmVSZWRpcmVjdFJlc3BvbnNlICovLCBsb2FkZXIsIGZvcm1TdGF0ZSwgW3RoaXMs
IGFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTF0gKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVx
dWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIGJvb2wgc2hvdWxkQ29udGludWUpIHsKICAgICAg
ICAgY29udGludWVMb2FkQWZ0ZXJOYXZpZ2F0aW9uUG9saWN5KHJlcXVlc3QsIGZvcm1TdGF0ZSwg
c2hvdWxkQ29udGludWUsIGFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTCk7CiAgICAgfSk7CiB9
CkBAIC0yNzExLDcgKzI3MDcsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpsb2FkUG9zdFJlcXVlc3Qo
Y29uc3QgRnJhbWVMb2FkUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgU3RyaW5nJgogICAgICAgICAg
ICAgcmV0dXJuOwogICAgICAgICB9CiAKLSAgICAgICAgcG9saWN5Q2hlY2tlcigpLmNoZWNrTmV3
V2luZG93UG9saWN5KGFjdGlvbiwgd29ya2luZ1Jlc291cmNlUmVxdWVzdCwgV1RGTW92ZShmb3Jt
U3RhdGUpLCBmcmFtZU5hbWUsIFt0aGlzLCBhbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkwsIG9w
ZW5lclBvbGljeV0oY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBGb3JtU3RhdGUqIGZv
cm1TdGF0ZSwgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IE5hdmlnYXRpb25BY3Rpb24m
IGFjdGlvbiwgYm9vbCBzaG91bGRDb250aW51ZSkgeworICAgICAgICBwb2xpY3lDaGVja2VyKCku
Y2hlY2tOZXdXaW5kb3dQb2xpY3koYWN0aW9uLCB3b3JraW5nUmVzb3VyY2VSZXF1ZXN0LCBXVEZN
b3ZlKGZvcm1TdGF0ZSksIGZyYW1lTmFtZSwgW3RoaXMsIGFsbG93TmF2aWdhdGlvblRvSW52YWxp
ZFVSTCwgb3BlbmVyUG9saWN5XSAoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBGb3Jt
U3RhdGUqIGZvcm1TdGF0ZSwgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IE5hdmlnYXRp
b25BY3Rpb24mIGFjdGlvbiwgYm9vbCBzaG91bGRDb250aW51ZSkgewogICAgICAgICAgICAgY29u
dGludWVMb2FkQWZ0ZXJOZXdXaW5kb3dQb2xpY3kocmVxdWVzdCwgZm9ybVN0YXRlLCBmcmFtZU5h
bWUsIGFjdGlvbiwgc2hvdWxkQ29udGludWUsIGFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTCwg
b3BlbmVyUG9saWN5KTsKICAgICAgICAgfSk7CiAgICAgICAgIHJldHVybjsKQEAgLTI3NjksMTEg
KzI3NjUsMTEgQEAgdW5zaWduZWQgbG9uZyBGcmFtZUxvYWRlcjo6bG9hZFJlc291cmNlU3luY2hy
b25vdXNseShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXUKICAgICBpZiAoZXJyb3IuaXNOdWxs
KCkpIHsKICAgICAgICAgQVNTRVJUKCFuZXdSZXF1ZXN0LmlzTnVsbCgpKTsKIAotICAgICAgICBp
ZiAoIWRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZFN5
bmNocm9ub3VzbHkobmV3UmVxdWVzdCwgZXJyb3IsIHJlc3BvbnNlLCBkYXRhKSkgeworICAgICAg
ICBpZiAoIWRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWF5YmVMb2Fk
U3luY2hyb25vdXNseShuZXdSZXF1ZXN0LCBlcnJvciwgcmVzcG9uc2UsIGRhdGEpKSB7CiAgICAg
ICAgICAgICBWZWN0b3I8Y2hhcj4gYnVmZmVyOwogICAgICAgICAgICAgcGxhdGZvcm1TdHJhdGVn
aWVzKCktPmxvYWRlclN0cmF0ZWd5KCktPmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkobmV0d29y
a2luZ0NvbnRleHQoKSwgaWRlbnRpZmllciwgbmV3UmVxdWVzdCwgc3RvcmVkQ3JlZGVudGlhbHMs
IGNsaWVudENyZWRlbnRpYWxQb2xpY3ksIGVycm9yLCByZXNwb25zZSwgYnVmZmVyKTsKICAgICAg
ICAgICAgIGRhdGEgPSBTaGFyZWRCdWZmZXI6OmFkb3B0VmVjdG9yKGJ1ZmZlcik7Ci0gICAgICAg
ICAgICBkb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5tYXliZUxvYWRG
YWxsYmFja1N5bmNocm9ub3VzbHkobmV3UmVxdWVzdCwgZXJyb3IsIHJlc3BvbnNlLCBkYXRhKTsK
KyAgICAgICAgICAgIGRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWF5
YmVMb2FkRmFsbGJhY2tTeW5jaHJvbm91c2x5KG5ld1JlcXVlc3QsIGVycm9yLCByZXNwb25zZSwg
ZGF0YSk7CiAgICAgICAgICAgICBSZXNvdXJjZUxvYWRPYnNlcnZlcjo6c2hhcmVkT2JzZXJ2ZXIo
KS5sb2dTdWJyZXNvdXJjZUxvYWRpbmcoJm1fZnJhbWUsIG5ld1JlcXVlc3QsIHJlc3BvbnNlKTsK
ICAgICAgICAgfQogICAgIH0KQEAgLTMxMDgsNyArMzEwNCw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6
OmNvbnRpbnVlTG9hZEFmdGVyTmF2aWdhdGlvblBvbGljeShjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
IHJlcXVlCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBtX2NsaWVudC5kaXNwYXRjaFdp
bGxTdWJtaXRGb3JtKGZvcm1TdGF0ZSwgW3RoaXNdKFBvbGljeUFjdGlvbiBhY3Rpb24pIHsKKyAg
ICBtX2NsaWVudC5kaXNwYXRjaFdpbGxTdWJtaXRGb3JtKCpmb3JtU3RhdGUsIFt0aGlzXSAoUG9s
aWN5QWN0aW9uIGFjdGlvbikgewogICAgICAgICBwb2xpY3lDaGVja2VyKCkuY29udGludWVMb2Fk
QWZ0ZXJXaWxsU3VibWl0Rm9ybShhY3Rpb24pOwogICAgIH0pOwogfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaAppbmRleCBkMTNiMGEwNzlkZTk5ZjM4NzcwNTUyNDc4
YTdmYmIzMjA4OGQ5Y2Y1Li40YjU1N2ZjNzdkYTZiNjRmNzU0MmIyYjQwMDExNDhiYWM0MjRiNmU1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaApAQCAtMSw1ICsx
LDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKQEAgLTE3NywxNCArMTc3LDE0IEBAIHB1
YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hTaG93KCkgPSAwOwogCiAgICAgdmlydHVh
bCB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIEZyYW1lUG9saWN5RnVuY3Rpb24pID0gMDsK
LSAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24o
Y29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIFBhc3NSZWZQ
dHI8Rm9ybVN0YXRlPiwgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIEZyYW1lUG9saWN5RnVuY3Rp
b24pID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0
aW9uQWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
LCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIEZyYW1lUG9saWN5RnVuY3Rpb24pID0gMDsKKyAgICB2
aXJ0dWFsIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3Qg
TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIEZvcm1TdGF0ZSosIGNv
bnN0IFN0cmluZyYgZnJhbWVOYW1lLCBGcmFtZVBvbGljeUZ1bmN0aW9uKSA9IDA7CisgICAgdmly
dHVhbCB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBO
YXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgRm9ybVN0YXRlKiwgRnJh
bWVQb2xpY3lGdW5jdGlvbikgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBjYW5jZWxQb2xpY3lDaGVj
aygpID0gMDsKIAogICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaFVuYWJsZVRvSW1wbGVtZW50UG9s
aWN5KGNvbnN0IFJlc291cmNlRXJyb3ImKSA9IDA7CiAKLSAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0
Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFBhc3NSZWZQdHI8Rm9ybVN0YXRlPikgPSAwOwotICAgIHZp
cnR1YWwgdm9pZCBkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwg
RnJhbWVQb2xpY3lGdW5jdGlvbikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaFdpbGxT
ZW5kU3VibWl0RXZlbnQoUmVmPEZvcm1TdGF0ZT4mJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBk
aXNwYXRjaFdpbGxTdWJtaXRGb3JtKEZvcm1TdGF0ZSYsIEZyYW1lUG9saWN5RnVuY3Rpb24pID0g
MDsKIAogICAgIHZpcnR1YWwgdm9pZCByZXZlcnRUb1Byb3Zpc2lvbmFsU3RhdGUoRG9jdW1lbnRM
b2FkZXIqKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNldE1haW5Eb2N1bWVudEVycm9yKERvY3Vt
ZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VFcnJvciYpID0gMDsKQEAgLTI3MiwxMiArMjcyLDEy
IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIGJvb2wgY2FuQ2FjaGVQYWdlKCkgY29uc3QgPSAwOwog
ICAgIHZpcnR1YWwgdm9pZCBjb252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxvYWQoRG9jdW1l
bnRMb2FkZXIqLCBTZXNzaW9uSUQsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmKSA9IDA7CiAKLSAgICB2aXJ0dWFsIFJlZlB0cjxGcmFtZT4gY3JlYXRlRnJh
bWUoY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiBuYW1lLCBIVE1MRnJhbWVPd25lckVsZW1lbnQq
LCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBib29sIGFsbG93c1Njcm9sbGluZywgaW50IG1hcmdp
bldpZHRoLCBpbnQgbWFyZ2luSGVpZ2h0KSA9IDA7Ci0gICAgdmlydHVhbCBSZWZQdHI8V2lkZ2V0
PiBjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYsIEhUTUxQbHVnSW5FbGVtZW50KiwgY29uc3Qg
VVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0
IFN0cmluZyYsIGJvb2wgbG9hZE1hbnVhbGx5KSA9IDA7CisgICAgdmlydHVhbCBSZWZQdHI8RnJh
bWU+IGNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgbmFtZSwgSFRNTEZyYW1l
T3duZXJFbGVtZW50JiwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgYm9vbCBhbGxvd3NTY3JvbGxp
bmcsIGludCBtYXJnaW5XaWR0aCwgaW50IG1hcmdpbkhlaWdodCkgPSAwOworICAgIHZpcnR1YWwg
UmVmUHRyPFdpZGdldD4gY3JlYXRlUGx1Z2luKGNvbnN0IEludFNpemUmLCBIVE1MUGx1Z0luRWxl
bWVudCYsIGNvbnN0IFVSTCYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFN0
cmluZz4mLCBjb25zdCBTdHJpbmcmLCBib29sIGxvYWRNYW51YWxseSkgPSAwOwogICAgIHZpcnR1
YWwgdm9pZCByZWNyZWF0ZVBsdWdpbihXaWRnZXQqKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHJl
ZGlyZWN0RGF0YVRvUGx1Z2luKFdpZGdldCogcGx1Z2luV2lkZ2V0KSA9IDA7CiAKLSAgICB2aXJ0
dWFsIFBhc3NSZWZQdHI8V2lkZ2V0PiBjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNp
emUmLCBIVE1MQXBwbGV0RWxlbWVudCosIGNvbnN0IFVSTCYgYmFzZVVSTCwgY29uc3QgVmVjdG9y
PFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykg
PSAwOworICAgIHZpcnR1YWwgUmVmUHRyPFdpZGdldD4gY3JlYXRlSmF2YUFwcGxldFdpZGdldChj
b25zdCBJbnRTaXplJiwgSFRNTEFwcGxldEVsZW1lbnQmLCBjb25zdCBVUkwmIGJhc2VVUkwsIGNv
bnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFy
YW1WYWx1ZXMpID0gMDsKIAogICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaERpZEZhaWxUb1N0YXJ0
UGx1Z2luKGNvbnN0IFBsdWdpblZpZXdCYXNlKikgY29uc3QgeyB9CiAKQEAgLTI5NCw2ICsyOTQs
NyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBOU0NhY2hlZFVSTFJlc3BvbnNlKiB3aWxsQ2FjaGVS
ZXNwb25zZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgTlNDYWNo
ZWRVUkxSZXNwb25zZSopIGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIE5TRGljdGlvbmFyeSAqZGF0
YURldGVjdGlvbkNvbnRleHQoKSB7IHJldHVybiBudWxscHRyOyB9CiAjZW5kaWYKKwogI2lmIFBM
QVRGT1JNKFdJTikgJiYgVVNFKENGVVJMQ09OTkVDVElPTikKICAgICAvLyBGSVhNRTogV2luZG93
cyBzaG91bGQgdXNlIHdpbGxDYWNoZVJlc3BvbnNlIC0gPGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD01NzI1Nz4uCiAgICAgdmlydHVhbCBib29sIHNob3VsZENhY2hlUmVz
cG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmLCBjb25zdCB1bnNpZ25lZCBjaGFyKiBkYXRhLCB1bnNpZ25lZCBsb25n
IGxvbmcgbGVuZ3RoKSA9IDA7CkBAIC0zMDksMTAgKzMxMCwxMCBAQCBwdWJsaWM6CiAgICAgLy8g
Q2xpZW50cyB0aGF0IGdlbmVyYWxseSBkaXNhbGxvdyB1bml2ZXJzYWwgYWNjZXNzIGNhbiBtYWtl
IGV4Y2VwdGlvbnMgZm9yIHBhcnRpY3VsYXIgVVJMcy4KICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxk
Rm9yY2VVbml2ZXJzYWxBY2Nlc3NGcm9tTG9jYWxVUkwoY29uc3QgVVJMJikgeyByZXR1cm4gZmFs
c2U7IH0KIAotICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBj
cmVhdGVOZXR3b3JraW5nQ29udGV4dCgpID0gMDsKKyAgICB2aXJ0dWFsIFJlZjxGcmFtZU5ldHdv
cmtpbmdDb250ZXh0PiBjcmVhdGVOZXR3b3JraW5nQ29udGV4dCgpID0gMDsKIAogI2lmIEVOQUJM
RShSRVFVRVNUX0FVVE9DT01QTEVURSkKLSAgICB2aXJ0dWFsIHZvaWQgZGlkUmVxdWVzdEF1dG9j
b21wbGV0ZShQYXNzUmVmUHRyPEZvcm1TdGF0ZT4pID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZGlk
UmVxdWVzdEF1dG9jb21wbGV0ZShSZWY8Rm9ybVN0YXRlPiYmKSA9IDA7CiAjZW5kaWYKIAogICAg
IHZpcnR1YWwgYm9vbCBzaG91bGRQYWludEJyb2tlbkltYWdlKGNvbnN0IFVSTCYpIGNvbnN0IHsg
cmV0dXJuIHRydWU7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9IaXN0b3J5
Q29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvSGlzdG9yeUNvbnRyb2xsZXIu
Y3BwCmluZGV4IDI5NWI5NGExYTU1NWIyYTI4ZTc1MDM2YzZiMWQwMjU3MDcyOTk3Y2MuLjI2YTRi
MzM5NmQxZTg3YTAwNjNlMGI0YzBjYTA2NjkyMjA0YTkzNzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9IaXN0b3J5Q29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmNwcApAQCAtODQ2LDcgKzg0Niw3IEBAIHZvaWQgSGlz
dG9yeUNvbnRyb2xsZXI6OnVwZGF0ZUN1cnJlbnRJdGVtKCkKICAgICB9CiB9CiAKLXZvaWQgSGlz
dG9yeUNvbnRyb2xsZXI6OnB1c2hTdGF0ZShQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1
ZT4gc3RhdGVPYmplY3QsIGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgdXJsU3Ry
aW5nKQordm9pZCBIaXN0b3J5Q29udHJvbGxlcjo6cHVzaFN0YXRlKFJlZlB0cjxTZXJpYWxpemVk
U2NyaXB0VmFsdWU+JiYgc3RhdGVPYmplY3QsIGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0
cmluZyYgdXJsU3RyaW5nKQogewogICAgIGlmICghbV9jdXJyZW50SXRlbSkKICAgICAgICAgcmV0
dXJuOwpAQCAtODYwLDcgKzg2MCw3IEBAIHZvaWQgSGlzdG9yeUNvbnRyb2xsZXI6OnB1c2hTdGF0
ZShQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gc3RhdGVPYmplY3QsCiAgICAgLy8g
T3ZlcnJpZGUgZGF0YSBpbiB0aGUgY3VycmVudCBpdGVtIChjcmVhdGVkIGJ5IGNyZWF0ZUl0ZW1U
cmVlKSB0byByZWZsZWN0CiAgICAgLy8gdGhlIHB1c2hTdGF0ZSgpIGFyZ3VtZW50cy4KICAgICBt
X2N1cnJlbnRJdGVtLT5zZXRUaXRsZSh0aXRsZSk7Ci0gICAgbV9jdXJyZW50SXRlbS0+c2V0U3Rh
dGVPYmplY3Qoc3RhdGVPYmplY3QpOworICAgIG1fY3VycmVudEl0ZW0tPnNldFN0YXRlT2JqZWN0
KFdURk1vdmUoc3RhdGVPYmplY3QpKTsKICAgICBtX2N1cnJlbnRJdGVtLT5zZXRVUkxTdHJpbmco
dXJsU3RyaW5nKTsKIAogICAgIExPRyhIaXN0b3J5LCAiSGlzdG9yeUNvbnRyb2xsZXIgJXAgcHVz
aFN0YXRlOiBBZGRpbmcgdG9wIGl0ZW0gJXAsIHNldHRpbmcgdXJsIG9mIGN1cnJlbnQgaXRlbSAl
cCB0byAlcyIsIHRoaXMsIHRvcEl0ZW0ucHRyKCksIG1fY3VycmVudEl0ZW0uZ2V0KCksIHVybFN0
cmluZy5hc2NpaSgpLmRhdGEoKSk7CkBAIC04NzQsNyArODc0LDcgQEAgdm9pZCBIaXN0b3J5Q29u
dHJvbGxlcjo6cHVzaFN0YXRlKFBhc3NSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiBzdGF0
ZU9iamVjdCwKICAgICBtX2ZyYW1lLmxvYWRlcigpLmNsaWVudCgpLnVwZGF0ZUdsb2JhbEhpc3Rv
cnkoKTsKIH0KIAotdm9pZCBIaXN0b3J5Q29udHJvbGxlcjo6cmVwbGFjZVN0YXRlKFBhc3NSZWZQ
dHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiBzdGF0ZU9iamVjdCwgY29uc3QgU3RyaW5nJiB0aXRs
ZSwgY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcpCit2b2lkIEhpc3RvcnlDb250cm9sbGVyOjpyZXBs
YWNlU3RhdGUoUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4mJiBzdGF0ZU9iamVjdCwgY29u
c3QgU3RyaW5nJiB0aXRsZSwgY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcpCiB7CiAgICAgaWYgKCFt
X2N1cnJlbnRJdGVtKQogICAgICAgICByZXR1cm47CkBAIC04ODQsNyArODg0LDcgQEAgdm9pZCBI
aXN0b3J5Q29udHJvbGxlcjo6cmVwbGFjZVN0YXRlKFBhc3NSZWZQdHI8U2VyaWFsaXplZFNjcmlw
dFZhbHVlPiBzdGF0ZU9iamUKICAgICBpZiAoIXVybFN0cmluZy5pc0VtcHR5KCkpCiAgICAgICAg
IG1fY3VycmVudEl0ZW0tPnNldFVSTFN0cmluZyh1cmxTdHJpbmcpOwogICAgIG1fY3VycmVudEl0
ZW0tPnNldFRpdGxlKHRpdGxlKTsKLSAgICBtX2N1cnJlbnRJdGVtLT5zZXRTdGF0ZU9iamVjdChz
dGF0ZU9iamVjdCk7CisgICAgbV9jdXJyZW50SXRlbS0+c2V0U3RhdGVPYmplY3QoV1RGTW92ZShz
dGF0ZU9iamVjdCkpOwogICAgIG1fY3VycmVudEl0ZW0tPnNldEZvcm1EYXRhKG51bGxwdHIpOwog
ICAgIG1fY3VycmVudEl0ZW0tPnNldEZvcm1Db250ZW50VHlwZShTdHJpbmcoKSk7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9IaXN0b3J5Q29udHJvbGxlci5oIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmgKaW5kZXggMTBmZjFmMTRhMzNlZjc2
YjkwYmZkMTNkNDY1MjhjNzg3NWY1ZWJkNS4uM2QyNWUyODliMjJmYjFmOTk2M2Y2ZGZiMzM0Nzg5
NTgxZDA5MjcwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0hpc3RvcnlDb250
cm9sbGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmgK
QEAgLTg0LDggKzg0LDggQEAgcHVibGljOgogICAgIEhpc3RvcnlJdGVtKiBwcm92aXNpb25hbEl0
ZW0oKSBjb25zdCB7IHJldHVybiBtX3Byb3Zpc2lvbmFsSXRlbS5nZXQoKTsgfQogICAgIHZvaWQg
c2V0UHJvdmlzaW9uYWxJdGVtKEhpc3RvcnlJdGVtKik7CiAKLSAgICB2b2lkIHB1c2hTdGF0ZShQ
YXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4sIGNvbnN0IFN0cmluZyYgdGl0bGUsIGNv
bnN0IFN0cmluZyYgdXJsKTsKLSAgICB2b2lkIHJlcGxhY2VTdGF0ZShQYXNzUmVmUHRyPFNlcmlh
bGl6ZWRTY3JpcHRWYWx1ZT4sIGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgdXJs
KTsKKyAgICB2b2lkIHB1c2hTdGF0ZShSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiYmLCBj
b25zdCBTdHJpbmcmIHRpdGxlLCBjb25zdCBTdHJpbmcmIHVybCk7CisgICAgdm9pZCByZXBsYWNl
U3RhdGUoUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4mJiwgY29uc3QgU3RyaW5nJiB0aXRs
ZSwgY29uc3QgU3RyaW5nJiB1cmwpOwogCiAgICAgdm9pZCBzZXREZWZlcnNMb2FkaW5nKGJvb2wp
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvSW1hZ2VMb2FkZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL0ltYWdlTG9hZGVyLmNwcAppbmRleCBhNTNhZjExYmI5Zjkz
YmEyYTgxMjNkYjFhODEwZjM4ODc5OTZmZGM1Li4xYjJmYzFiYjQ5N2M3ZDQ5MTlkMTljNjM5YWMw
ZWY3MjhlY2UwNzkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvSW1hZ2VMb2Fk
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9JbWFnZUxvYWRlci5jcHAKQEAgLTE3
OCw3ICsxNzgsNyBAQCB2b2lkIEltYWdlTG9hZGVyOjp1cGRhdGVGcm9tRWxlbWVudCgpCiAgICAg
ICAgIG9wdGlvbnMuc2FtZU9yaWdpbkRhdGFVUkxGbGFnID0gU2FtZU9yaWdpbkRhdGFVUkxGbGFn
OjpTZXQ7CiAKICAgICAgICAgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QoUmVzb3VyY2VS
ZXF1ZXN0KGRvY3VtZW50LmNvbXBsZXRlVVJMKHNvdXJjZVVSSShhdHRyKSkpLCBvcHRpb25zKTsK
LSAgICAgICAgcmVxdWVzdC5zZXRJbml0aWF0b3IoJmVsZW1lbnQoKSk7CisgICAgICAgIHJlcXVl
c3Quc2V0SW5pdGlhdG9yKGVsZW1lbnQoKSk7CiAKICAgICAgICAgcmVxdWVzdC5zZXRBc1BvdGVu
dGlhbGx5Q3Jvc3NPcmlnaW4oZWxlbWVudCgpLmF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRp
b24oSFRNTE5hbWVzOjpjcm9zc29yaWdpbkF0dHIpLCBkb2N1bWVudCk7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmNwcAppbmRleCA3ZWZmYWQ3ZmExYzVh
YTM0NDZlYWMwMDI5NjE4ZjEyYmI1NzViNGU1Li41Njk3NzUzMmI4YjEyYmUwOGE2MTljZDNmYjFj
MTg3NWQzYjc2ZWIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlv
blNjaGVkdWxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL05hdmlnYXRpb25TY2hl
ZHVsZXIuY3BwCkBAIC02OCw2ICs2OCwxNiBAQCBwdWJsaWM6CiAgICAgICAgICwgbV91c2VyR2Vz
dHVyZVRvRm9yd2FyZChVc2VyR2VzdHVyZUluZGljYXRvcjo6Y3VycmVudFVzZXJHZXN0dXJlKCkp
CiAgICAgewogICAgIH0KKyAgICBTY2hlZHVsZWROYXZpZ2F0aW9uKGRvdWJsZSBkZWxheSwgTG9j
a0hpc3RvcnkgbG9ja0hpc3RvcnksIExvY2tCYWNrRm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3YXJk
TGlzdCwgYm9vbCB3YXNEdXJpbmdMb2FkLCBib29sIGlzTG9jYXRpb25DaGFuZ2UsIFNob3VsZE9w
ZW5FeHRlcm5hbFVSTHNQb2xpY3kgZXh0ZXJuYWxVUkxQb2xpY3kpCisgICAgICAgIDogbV9kZWxh
eShkZWxheSkKKyAgICAgICAgLCBtX2xvY2tIaXN0b3J5KGxvY2tIaXN0b3J5KQorICAgICAgICAs
IG1fbG9ja0JhY2tGb3J3YXJkTGlzdChsb2NrQmFja0ZvcndhcmRMaXN0KQorICAgICAgICAsIG1f
d2FzRHVyaW5nTG9hZCh3YXNEdXJpbmdMb2FkKQorICAgICAgICAsIG1faXNMb2NhdGlvbkNoYW5n
ZShpc0xvY2F0aW9uQ2hhbmdlKQorICAgICAgICAsIG1fdXNlckdlc3R1cmVUb0ZvcndhcmQoVXNl
ckdlc3R1cmVJbmRpY2F0b3I6OmN1cnJlbnRVc2VyR2VzdHVyZSgpKQorICAgICAgICAsIG1fc2hv
dWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeShleHRlcm5hbFVSTFBvbGljeSkKKyAgICB7CisgICAg
fQogICAgIHZpcnR1YWwgflNjaGVkdWxlZE5hdmlnYXRpb24oKSB7IH0KIAogICAgIHZpcnR1YWwg
dm9pZCBmaXJlKEZyYW1lJikgPSAwOwpAQCAtODEsMTIgKzkxLDExIEBAIHB1YmxpYzoKICAgICBM
b2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QoKSBjb25zdCB7IHJldHVybiBt
X2xvY2tCYWNrRm9yd2FyZExpc3Q7IH0KICAgICBib29sIHdhc0R1cmluZ0xvYWQoKSBjb25zdCB7
IHJldHVybiBtX3dhc0R1cmluZ0xvYWQ7IH0KICAgICBib29sIGlzTG9jYXRpb25DaGFuZ2UoKSBj
b25zdCB7IHJldHVybiBtX2lzTG9jYXRpb25DaGFuZ2U7IH0KLSAgICBSZWZQdHI8VXNlckdlc3R1
cmVUb2tlbj4gdXNlckdlc3R1cmVUb0ZvcndhcmQoKSBjb25zdCB7IHJldHVybiBtX3VzZXJHZXN0
dXJlVG9Gb3J3YXJkOyB9CisgICAgVXNlckdlc3R1cmVUb2tlbiogdXNlckdlc3R1cmVUb0Zvcndh
cmQoKSBjb25zdCB7IHJldHVybiBtX3VzZXJHZXN0dXJlVG9Gb3J3YXJkLmdldCgpOyB9CiAKIHBy
b3RlY3RlZDoKICAgICB2b2lkIGNsZWFyVXNlckdlc3R1cmUoKSB7IG1fdXNlckdlc3R1cmVUb0Zv
cndhcmQgPSBudWxscHRyOyB9Ci0KLSAgICBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5IG1f
c2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSB7IFNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xp
Y3k6OlNob3VsZE5vdEFsbG93IH07CisgICAgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSBz
aG91bGRPcGVuRXh0ZXJuYWxVUkxzKCkgY29uc3QgeyByZXR1cm4gbV9zaG91bGRPcGVuRXh0ZXJu
YWxVUkxzUG9saWN5OyB9CiAKIHByaXZhdGU6CiAgICAgZG91YmxlIG1fZGVsYXk7CkBAIC05NSwx
OSArMTA0LDE3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX3dhc0R1cmluZ0xvYWQ7CiAgICAgYm9v
bCBtX2lzTG9jYXRpb25DaGFuZ2U7CiAgICAgUmVmUHRyPFVzZXJHZXN0dXJlVG9rZW4+IG1fdXNl
ckdlc3R1cmVUb0ZvcndhcmQ7CisgICAgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSBtX3No
b3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgeyBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5
OjpTaG91bGROb3RBbGxvdyB9OwogfTsKIAogY2xhc3MgU2NoZWR1bGVkVVJMTmF2aWdhdGlvbiA6
IHB1YmxpYyBTY2hlZHVsZWROYXZpZ2F0aW9uIHsKIHByb3RlY3RlZDoKLSAgICBTY2hlZHVsZWRV
UkxOYXZpZ2F0aW9uKERvY3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQsIGRvdWJsZSBkZWxheSwg
U2VjdXJpdHlPcmlnaW4qIHNlY3VyaXR5T3JpZ2luLCBjb25zdCBVUkwmIHVybCwgY29uc3QgU3Ry
aW5nJiByZWZlcnJlciwgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnksIExvY2tCYWNrRm9yd2FyZExp
c3QgbG9ja0JhY2tGb3J3YXJkTGlzdCwgYm9vbCBkdXJpbmdMb2FkLCBib29sIGlzTG9jYXRpb25D
aGFuZ2UpCi0gICAgICAgIDogU2NoZWR1bGVkTmF2aWdhdGlvbihkZWxheSwgbG9ja0hpc3Rvcnks
IGxvY2tCYWNrRm9yd2FyZExpc3QsIGR1cmluZ0xvYWQsIGlzTG9jYXRpb25DaGFuZ2UpCisgICAg
U2NoZWR1bGVkVVJMTmF2aWdhdGlvbihEb2N1bWVudCYgaW5pdGlhdGluZ0RvY3VtZW50LCBkb3Vi
bGUgZGVsYXksIFNlY3VyaXR5T3JpZ2luKiBzZWN1cml0eU9yaWdpbiwgY29uc3QgVVJMJiB1cmws
IGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBMb2NrQmFj
a0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QsIGJvb2wgZHVyaW5nTG9hZCwgYm9vbCBp
c0xvY2F0aW9uQ2hhbmdlKQorICAgICAgICA6IFNjaGVkdWxlZE5hdmlnYXRpb24oZGVsYXksIGxv
Y2tIaXN0b3J5LCBsb2NrQmFja0ZvcndhcmRMaXN0LCBkdXJpbmdMb2FkLCBpc0xvY2F0aW9uQ2hh
bmdlLCBpbml0aWF0aW5nRG9jdW1lbnQuc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeVRvUHJv
cGFnYXRlKCkpCiAgICAgICAgICwgbV9zZWN1cml0eU9yaWdpbihzZWN1cml0eU9yaWdpbikKICAg
ICAgICAgLCBtX3VybCh1cmwpCiAgICAgICAgICwgbV9yZWZlcnJlcihyZWZlcnJlcikKLSAgICAg
ICAgLCBtX2hhdmVUb2xkQ2xpZW50KGZhbHNlKQogICAgIHsKLSAgICAgICAgaWYgKGluaXRpYXRp
bmdEb2N1bWVudCkKLSAgICAgICAgICAgIG1fc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSA9
IGluaXRpYXRpbmdEb2N1bWVudC0+c2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeVRvUHJvcGFn
YXRlKCk7CiAgICAgfQogCiAgICAgdm9pZCBmaXJlKEZyYW1lJiBmcmFtZSkgb3ZlcnJpZGUKQEAg
LTExNSw3ICsxMjIsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgICAgIFVzZXJHZXN0dXJlSW5kaWNhdG9y
IGdlc3R1cmVJbmRpY2F0b3IodXNlckdlc3R1cmVUb0ZvcndhcmQoKSk7CiAKICAgICAgICAgUmVz
b3VyY2VSZXF1ZXN0IHJlc291cmNlUmVxdWVzdChtX3VybCwgbV9yZWZlcnJlciwgVXNlUHJvdG9j
b2xDYWNoZVBvbGljeSk7Ci0gICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KG1f
c2VjdXJpdHlPcmlnaW4uZ2V0KCksIHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hpc3Rv
cnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZp
Z2F0aW9uVG9JbnZhbGlkVVJMOjpZZXMsIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxvdywgbV9z
aG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5KTsKKyAgICAgICAgRnJhbWVMb2FkUmVxdWVzdCBm
cmFtZVJlcXVlc3QobV9zZWN1cml0eU9yaWdpbi5nZXQoKSwgcmVzb3VyY2VSZXF1ZXN0LCAiX3Nl
bGYiLCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVy
cmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkw6OlllcywgTmV3RnJhbWVPcGVuZXJQb2xp
Y3k6OkFsbG93LCBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzKCkpOwogCiAgICAgICAgIGZyYW1lLmxv
YWRlcigpLmNoYW5nZUxvY2F0aW9uKGZyYW1lUmVxdWVzdCk7CiAgICAgfQpAQCAtMTUyLDEyICsx
NTksMTIgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8U2VjdXJpdHlPcmlnaW4+IG1fc2VjdXJpdHlP
cmlnaW47CiAgICAgVVJMIG1fdXJsOwogICAgIFN0cmluZyBtX3JlZmVycmVyOwotICAgIGJvb2wg
bV9oYXZlVG9sZENsaWVudDsKKyAgICBib29sIG1faGF2ZVRvbGRDbGllbnQgeyBmYWxzZSB9Owog
fTsKIAogY2xhc3MgU2NoZWR1bGVkUmVkaXJlY3QgOiBwdWJsaWMgU2NoZWR1bGVkVVJMTmF2aWdh
dGlvbiB7CiBwdWJsaWM6Ci0gICAgU2NoZWR1bGVkUmVkaXJlY3QoRG9jdW1lbnQqIGluaXRpYXRp
bmdEb2N1bWVudCwgZG91YmxlIGRlbGF5LCBTZWN1cml0eU9yaWdpbiogc2VjdXJpdHlPcmlnaW4s
IGNvbnN0IFVSTCYgdXJsLCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSwgTG9ja0JhY2tGb3J3YXJk
TGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0KQorICAgIFNjaGVkdWxlZFJlZGlyZWN0KERvY3VtZW50
JiBpbml0aWF0aW5nRG9jdW1lbnQsIGRvdWJsZSBkZWxheSwgU2VjdXJpdHlPcmlnaW4qIHNlY3Vy
aXR5T3JpZ2luLCBjb25zdCBVUkwmIHVybCwgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnksIExvY2tC
YWNrRm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3YXJkTGlzdCkKICAgICAgICAgOiBTY2hlZHVsZWRV
UkxOYXZpZ2F0aW9uKGluaXRpYXRpbmdEb2N1bWVudCwgZGVsYXksIHNlY3VyaXR5T3JpZ2luLCB1
cmwsIFN0cmluZygpLCBsb2NrSGlzdG9yeSwgbG9ja0JhY2tGb3J3YXJkTGlzdCwgZmFsc2UsIGZh
bHNlKQogICAgIHsKICAgICAgICAgY2xlYXJVc2VyR2VzdHVyZSgpOwpAQCAtMTczLDcgKzE4MCw3
IEBAIHB1YmxpYzoKICAgICAgICAgVXNlckdlc3R1cmVJbmRpY2F0b3IgZ2VzdHVyZUluZGljYXRv
cih1c2VyR2VzdHVyZVRvRm9yd2FyZCgpKTsKICAgICAgICAgYm9vbCByZWZyZXNoID0gZXF1YWxJ
Z25vcmluZ0ZyYWdtZW50SWRlbnRpZmllcihmcmFtZS5kb2N1bWVudCgpLT51cmwoKSwgdXJsKCkp
OwogICAgICAgICBSZXNvdXJjZVJlcXVlc3QgcmVzb3VyY2VSZXF1ZXN0KHVybCgpLCByZWZlcnJl
cigpLCByZWZyZXNoID8gUmVsb2FkSWdub3JpbmdDYWNoZURhdGEgOiBVc2VQcm90b2NvbENhY2hl
UG9saWN5KTsKLSAgICAgICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFtZVJlcXVlc3Qoc2VjdXJpdHlP
cmlnaW4oKSwgcmVzb3VyY2VSZXF1ZXN0LCAiX3NlbGYiLCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFj
a0ZvcndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVycmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFs
aWRVUkw6Ok5vLCBOZXdGcmFtZU9wZW5lclBvbGljeTo6QWxsb3csIG1fc2hvdWxkT3BlbkV4dGVy
bmFsVVJMc1BvbGljeSk7CisgICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KHNl
Y3VyaXR5T3JpZ2luKCksIHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hpc3RvcnkoKSwg
bG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9u
VG9JbnZhbGlkVVJMOjpObywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBzaG91bGRPcGVu
RXh0ZXJuYWxVUkxzKCkpOwogCiAgICAgICAgIGZyYW1lLmxvYWRlcigpLmNoYW5nZUxvY2F0aW9u
KGZyYW1lUmVxdWVzdCk7CiAgICAgfQpAQCAtMTgxLDcgKzE4OCw3IEBAIHB1YmxpYzoKIAogY2xh
c3MgU2NoZWR1bGVkTG9jYXRpb25DaGFuZ2UgOiBwdWJsaWMgU2NoZWR1bGVkVVJMTmF2aWdhdGlv
biB7CiBwdWJsaWM6Ci0gICAgU2NoZWR1bGVkTG9jYXRpb25DaGFuZ2UoRG9jdW1lbnQqIGluaXRp
YXRpbmdEb2N1bWVudCwgU2VjdXJpdHlPcmlnaW4qIHNlY3VyaXR5T3JpZ2luLCBjb25zdCBVUkwm
IHVybCwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnksIExv
Y2tCYWNrRm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3YXJkTGlzdCwgYm9vbCBkdXJpbmdMb2FkKQor
ICAgIFNjaGVkdWxlZExvY2F0aW9uQ2hhbmdlKERvY3VtZW50JiBpbml0aWF0aW5nRG9jdW1lbnQs
IFNlY3VyaXR5T3JpZ2luKiBzZWN1cml0eU9yaWdpbiwgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0
cmluZyYgcmVmZXJyZXIsIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRM
aXN0IGxvY2tCYWNrRm9yd2FyZExpc3QsIGJvb2wgZHVyaW5nTG9hZCkKICAgICAgICAgOiBTY2hl
ZHVsZWRVUkxOYXZpZ2F0aW9uKGluaXRpYXRpbmdEb2N1bWVudCwgMC4wLCBzZWN1cml0eU9yaWdp
biwgdXJsLCByZWZlcnJlciwgbG9ja0hpc3RvcnksIGxvY2tCYWNrRm9yd2FyZExpc3QsIGR1cmlu
Z0xvYWQsIHRydWUpIHsgfQogCiAgICAgdm9pZCBmaXJlKEZyYW1lJiBmcmFtZSkgb3ZlcnJpZGUK
QEAgLTE4OSwxNCArMTk2LDE0IEBAIHB1YmxpYzoKICAgICAgICAgVXNlckdlc3R1cmVJbmRpY2F0
b3IgZ2VzdHVyZUluZGljYXRvcih1c2VyR2VzdHVyZVRvRm9yd2FyZCgpKTsKIAogICAgICAgICBS
ZXNvdXJjZVJlcXVlc3QgcmVzb3VyY2VSZXF1ZXN0KHVybCgpLCByZWZlcnJlcigpLCBVc2VQcm90
b2NvbENhY2hlUG9saWN5KTsKLSAgICAgICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFtZVJlcXVlc3Qo
c2VjdXJpdHlPcmlnaW4oKSwgcmVzb3VyY2VSZXF1ZXN0LCAiX3NlbGYiLCBsb2NrSGlzdG9yeSgp
LCBsb2NrQmFja0ZvcndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVycmVyLCBBbGxvd05hdmlnYXRp
b25Ub0ludmFsaWRVUkw6Ok5vLCBOZXdGcmFtZU9wZW5lclBvbGljeTo6QWxsb3csIG1fc2hvdWxk
T3BlbkV4dGVybmFsVVJMc1BvbGljeSk7CisgICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVS
ZXF1ZXN0KHNlY3VyaXR5T3JpZ2luKCksIHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hp
c3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dO
YXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpObywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBz
aG91bGRPcGVuRXh0ZXJuYWxVUkxzKCkpOwogICAgICAgICBmcmFtZS5sb2FkZXIoKS5jaGFuZ2VM
b2NhdGlvbihmcmFtZVJlcXVlc3QpOwogICAgIH0KIH07CiAKIGNsYXNzIFNjaGVkdWxlZFJlZnJl
c2ggOiBwdWJsaWMgU2NoZWR1bGVkVVJMTmF2aWdhdGlvbiB7CiBwdWJsaWM6Ci0gICAgU2NoZWR1
bGVkUmVmcmVzaChEb2N1bWVudCogaW5pdGlhdGluZ0RvY3VtZW50LCBTZWN1cml0eU9yaWdpbiog
c2VjdXJpdHlPcmlnaW4sIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyKQor
ICAgIFNjaGVkdWxlZFJlZnJlc2goRG9jdW1lbnQmIGluaXRpYXRpbmdEb2N1bWVudCwgU2VjdXJp
dHlPcmlnaW4qIHNlY3VyaXR5T3JpZ2luLCBjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiBy
ZWZlcnJlcikKICAgICAgICAgOiBTY2hlZHVsZWRVUkxOYXZpZ2F0aW9uKGluaXRpYXRpbmdEb2N1
bWVudCwgMC4wLCBzZWN1cml0eU9yaWdpbiwgdXJsLCByZWZlcnJlciwgTG9ja0hpc3Rvcnk6Olll
cywgTG9ja0JhY2tGb3J3YXJkTGlzdDo6WWVzLCBmYWxzZSwgdHJ1ZSkKICAgICB7CiAgICAgfQpA
QCAtMjA2LDcgKzIxMyw3IEBAIHB1YmxpYzoKICAgICAgICAgVXNlckdlc3R1cmVJbmRpY2F0b3Ig
Z2VzdHVyZUluZGljYXRvcih1c2VyR2VzdHVyZVRvRm9yd2FyZCgpKTsKIAogICAgICAgICBSZXNv
dXJjZVJlcXVlc3QgcmVzb3VyY2VSZXF1ZXN0KHVybCgpLCByZWZlcnJlcigpLCBSZWxvYWRJZ25v
cmluZ0NhY2hlRGF0YSk7Ci0gICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KHNl
Y3VyaXR5T3JpZ2luKCksIHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hpc3RvcnkoKSwg
bG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9u
VG9JbnZhbGlkVVJMOjpZZXMsIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxvdywgbV9zaG91bGRP
cGVuRXh0ZXJuYWxVUkxzUG9saWN5KTsKKyAgICAgICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFtZVJl
cXVlc3Qoc2VjdXJpdHlPcmlnaW4oKSwgcmVzb3VyY2VSZXF1ZXN0LCAiX3NlbGYiLCBsb2NrSGlz
dG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVycmVyLCBBbGxvd05h
dmlnYXRpb25Ub0ludmFsaWRVUkw6OlllcywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBz
aG91bGRPcGVuRXh0ZXJuYWxVUkxzKCkpOwogICAgICAgICBmcmFtZS5sb2FkZXIoKS5jaGFuZ2VM
b2NhdGlvbihmcmFtZVJlcXVlc3QpOwogICAgIH0KIH07CkBAIC0yMjYsNyArMjMzLDcgQEAgcHVi
bGljOgogICAgICAgICBpZiAoIW1faGlzdG9yeVN0ZXBzKSB7CiAgICAgICAgICAgICAvLyBTcGVj
aWFsIGNhc2UgZm9yIGdvKDApIGZyb20gYSBmcmFtZSAtPiByZWxvYWQgb25seSB0aGUgZnJhbWUK
ICAgICAgICAgICAgIC8vIFRvIGZvbGxvdyBGaXJlZm94IGFuZCBJRSdzIGJlaGF2aW9yLCBoaXN0
b3J5IHJlbG9hZCBjYW4gb25seSBuYXZpZ2F0ZSB0aGUgc2VsZiBmcmFtZS4KLSAgICAgICAgICAg
IGZyYW1lLmxvYWRlcigpLnVybFNlbGVjdGVkKGZyYW1lLmRvY3VtZW50KCktPnVybCgpLCAiX3Nl
bGYiLCAwLCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0KCksIE1heWJlU2VuZFJl
ZmVycmVyLCBtX3Nob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kpOworICAgICAgICAgICAgZnJh
bWUubG9hZGVyKCkudXJsU2VsZWN0ZWQoZnJhbWUuZG9jdW1lbnQoKS0+dXJsKCksICJfc2VsZiIs
IDAsIGxvY2tIaXN0b3J5KCksIGxvY2tCYWNrRm9yd2FyZExpc3QoKSwgTWF5YmVTZW5kUmVmZXJy
ZXIsIHNob3VsZE9wZW5FeHRlcm5hbFVSTHMoKSk7CiAgICAgICAgICAgICByZXR1cm47CiAgICAg
ICAgIH0KICAgICAgICAgCkBAIC0yNDEsMTUgKzI0OCwxMCBAQCBwcml2YXRlOgogCiBjbGFzcyBT
Y2hlZHVsZWRGb3JtU3VibWlzc2lvbiA6IHB1YmxpYyBTY2hlZHVsZWROYXZpZ2F0aW9uIHsKIHB1
YmxpYzoKLSAgICBTY2hlZHVsZWRGb3JtU3VibWlzc2lvbihQYXNzUmVmUHRyPEZvcm1TdWJtaXNz
aW9uPiBzdWJtaXNzaW9uLCBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3Qs
IGJvb2wgZHVyaW5nTG9hZCkKLSAgICAgICAgOiBTY2hlZHVsZWROYXZpZ2F0aW9uKDAsIHN1Ym1p
c3Npb24tPmxvY2tIaXN0b3J5KCksIGxvY2tCYWNrRm9yd2FyZExpc3QsIGR1cmluZ0xvYWQsIHRy
dWUpCi0gICAgICAgICwgbV9zdWJtaXNzaW9uKHN1Ym1pc3Npb24pCi0gICAgICAgICwgbV9oYXZl
VG9sZENsaWVudChmYWxzZSkKKyAgICBTY2hlZHVsZWRGb3JtU3VibWlzc2lvbihSZWY8Rm9ybVN1
Ym1pc3Npb24+JiYgc3VibWlzc2lvbiwgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0Zvcndh
cmRMaXN0LCBib29sIGR1cmluZ0xvYWQpCisgICAgICAgIDogU2NoZWR1bGVkTmF2aWdhdGlvbigw
LCBzdWJtaXNzaW9uLT5sb2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0LCBkdXJpbmdM
b2FkLCB0cnVlLCBzdWJtaXNzaW9uLT5zdGF0ZSgpLnNvdXJjZURvY3VtZW50KCkuc2hvdWxkT3Bl
bkV4dGVybmFsVVJMc1BvbGljeVRvUHJvcGFnYXRlKCkpCisgICAgICAgICwgbV9zdWJtaXNzaW9u
KFdURk1vdmUoc3VibWlzc2lvbikpCiAgICAgewotICAgICAgICBBU1NFUlQobV9zdWJtaXNzaW9u
LT5zdGF0ZSgpKTsKLQotICAgICAgICBpZiAoRG9jdW1lbnQqIGRvY3VtZW50ID0gbV9zdWJtaXNz
aW9uLT5zdGF0ZSgpLT5zb3VyY2VEb2N1bWVudCgpKQotICAgICAgICAgICAgbV9zaG91bGRPcGVu
RXh0ZXJuYWxVUkxzUG9saWN5ID0gZG9jdW1lbnQtPnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xp
Y3lUb1Byb3BhZ2F0ZSgpOwogICAgIH0KIAogICAgIHZvaWQgZmlyZShGcmFtZSYgZnJhbWUpIG92
ZXJyaWRlCkBAIC0yNjAsMTQgKzI2MiwxNCBAQCBwdWJsaWM6CiAgICAgICAgIC8vIE5vdyB0aGF0
IHRoZSB0aW1lciBoYXMgZmlyZWQsIHdlIG5lZWQgdG8gcmVwZWF0IHRoZSBzZWN1cml0eSBjaGVj
ayB3aGljaCBub3JtYWxseSBpcyBkb25lIHdoZW4KICAgICAgICAgLy8gc2VsZWN0aW5nIGEgdGFy
Z2V0LCBpbiBjYXNlIGNvbmRpdGlvbnMgaGF2ZSBjaGFuZ2VkLiBPdGhlciBjb2RlIHBhdGhzIGF2
b2lkIHRoaXMgYnkgdGFyZ2V0aW5nCiAgICAgICAgIC8vIHdpdGhvdXQgbGVhdmluZyBhIHRpbWUg
d2luZG93LiBJZiB3ZSBmYWlsIHRoZSBjaGVjayBqdXN0IHNpbGVudGx5IGRyb3AgdGhlIGZvcm0g
c3VibWlzc2lvbi4KLSAgICAgICAgRG9jdW1lbnQqIHJlcXVlc3RpbmdEb2N1bWVudCA9IG1fc3Vi
bWlzc2lvbi0+c3RhdGUoKS0+c291cmNlRG9jdW1lbnQoKTsKLSAgICAgICAgaWYgKCFyZXF1ZXN0
aW5nRG9jdW1lbnQtPmNhbk5hdmlnYXRlKCZmcmFtZSkpCisgICAgICAgIGF1dG8mIHJlcXVlc3Rp
bmdEb2N1bWVudCA9IG1fc3VibWlzc2lvbi0+c3RhdGUoKS5zb3VyY2VEb2N1bWVudCgpOworICAg
ICAgICBpZiAoIXJlcXVlc3RpbmdEb2N1bWVudC5jYW5OYXZpZ2F0ZSgmZnJhbWUpKQogICAgICAg
ICAgICAgcmV0dXJuOwotICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1lUmVxdWVzdChyZXF1
ZXN0aW5nRG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCksIGxvY2tIaXN0b3J5KCksIGxvY2tCYWNr
Rm9yd2FyZExpc3QoKSwgTWF5YmVTZW5kUmVmZXJyZXIsIEFsbG93TmF2aWdhdGlvblRvSW52YWxp
ZFVSTDo6WWVzLCBOZXdGcmFtZU9wZW5lclBvbGljeTo6QWxsb3csIG1fc2hvdWxkT3BlbkV4dGVy
bmFsVVJMc1BvbGljeSk7CisgICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KHJl
cXVlc3RpbmdEb2N1bWVudC5zZWN1cml0eU9yaWdpbigpLCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFj
a0ZvcndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVycmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFs
aWRVUkw6OlllcywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBzaG91bGRPcGVuRXh0ZXJu
YWxVUkxzKCkpOwogICAgICAgICBtX3N1Ym1pc3Npb24tPnBvcHVsYXRlRnJhbWVMb2FkUmVxdWVz
dChmcmFtZVJlcXVlc3QpOwotICAgICAgICBmcmFtZS5sb2FkZXIoKS5sb2FkRnJhbWVSZXF1ZXN0
KGZyYW1lUmVxdWVzdCwgbV9zdWJtaXNzaW9uLT5ldmVudCgpLCBtX3N1Ym1pc3Npb24tPnN0YXRl
KCkpOworICAgICAgICBmcmFtZS5sb2FkZXIoKS5sb2FkRnJhbWVSZXF1ZXN0KGZyYW1lUmVxdWVz
dCwgbV9zdWJtaXNzaW9uLT5ldmVudCgpLCAmbV9zdWJtaXNzaW9uLT5zdGF0ZSgpKTsKICAgICB9
Ci0gICAgCisKICAgICB2b2lkIGRpZFN0YXJ0VGltZXIoRnJhbWUmIGZyYW1lLCBUaW1lciYgdGlt
ZXIpIG92ZXJyaWRlCiAgICAgewogICAgICAgICBpZiAobV9oYXZlVG9sZENsaWVudCkKQEAgLTI5
Myw4ICsyOTUsOCBAQCBwdWJsaWM6CiAgICAgfQogCiBwcml2YXRlOgotICAgIFJlZlB0cjxGb3Jt
U3VibWlzc2lvbj4gbV9zdWJtaXNzaW9uOwotICAgIGJvb2wgbV9oYXZlVG9sZENsaWVudDsKKyAg
ICBSZWY8Rm9ybVN1Ym1pc3Npb24+IG1fc3VibWlzc2lvbjsKKyAgICBib29sIG1faGF2ZVRvbGRD
bGllbnQgeyBmYWxzZSB9OwogfTsKIAogY2xhc3MgU2NoZWR1bGVkUGFnZUJsb2NrIGZpbmFsIDog
cHVibGljIFNjaGVkdWxlZE5hdmlnYXRpb24gewpAQCAtMzEzLDcgKzMxNSw3IEBAIHB1YmxpYzoK
ICAgICAgICAgU3Vic3RpdHV0ZURhdGEgcmVwbGFjZW1lbnREYXRhKFNoYXJlZEJ1ZmZlcjo6Y3Jl
YXRlKCksIG1fb3JpZ2luRG9jdW1lbnQudXJsKCksIHJlcGxhY2VtZW50UmVzcG9uc2UsIFN1YnN0
aXR1dGVEYXRhOjpTZXNzaW9uSGlzdG9yeVZpc2liaWxpdHk6OkhpZGRlbik7CiAKICAgICAgICAg
UmVzb3VyY2VSZXF1ZXN0IHJlc291cmNlUmVxdWVzdChtX29yaWdpbkRvY3VtZW50LnVybCgpLCBl
bXB0eVN0cmluZygpLCBSZWxvYWRJZ25vcmluZ0NhY2hlRGF0YSk7Ci0gICAgICAgIEZyYW1lTG9h
ZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KG1fb3JpZ2luRG9jdW1lbnQuc2VjdXJpdHlPcmlnaW4oKSwg
cmVzb3VyY2VSZXF1ZXN0LCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0KCksIE1h
eWJlU2VuZFJlZmVycmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkw6OlllcywgTmV3RnJh
bWVPcGVuZXJQb2xpY3k6OkFsbG93LCBtX3Nob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kpOwor
ICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1lUmVxdWVzdChtX29yaWdpbkRvY3VtZW50LnNl
Y3VyaXR5T3JpZ2luKCksIHJlc291cmNlUmVxdWVzdCwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tG
b3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlk
VVJMOjpZZXMsIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxvdywgc2hvdWxkT3BlbkV4dGVybmFs
VVJMcygpKTsKICAgICAgICAgZnJhbWVSZXF1ZXN0LnNldFN1YnN0aXR1dGVEYXRhKHJlcGxhY2Vt
ZW50RGF0YSk7CiAgICAgICAgIGZyYW1lLmxvYWRlcigpLmxvYWQoZnJhbWVSZXF1ZXN0KTsKICAg
ICB9CkBAIC0zNjQsNyArMzY2LDcgQEAgaW5saW5lIGJvb2wgTmF2aWdhdGlvblNjaGVkdWxlcjo6
c2hvdWxkU2NoZWR1bGVOYXZpZ2F0aW9uKGNvbnN0IFVSTCYgdXJsKSBjb25zdAogICAgIHJldHVy
biBOYXZpZ2F0aW9uRGlzYWJsZXJGb3JCZWZvcmVVbmxvYWQ6OmlzTmF2aWdhdGlvbkFsbG93ZWQo
KTsKIH0KIAotdm9pZCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjpzY2hlZHVsZVJlZGlyZWN0KERvY3Vt
ZW50KiBpbml0aWF0aW5nRG9jdW1lbnQsIGRvdWJsZSBkZWxheSwgY29uc3QgVVJMJiB1cmwpCit2
b2lkIE5hdmlnYXRpb25TY2hlZHVsZXI6OnNjaGVkdWxlUmVkaXJlY3QoRG9jdW1lbnQmIGluaXRp
YXRpbmdEb2N1bWVudCwgZG91YmxlIGRlbGF5LCBjb25zdCBVUkwmIHVybCkKIHsKICAgICBpZiAo
IXNob3VsZFNjaGVkdWxlTmF2aWdhdGlvbih1cmwpKQogICAgICAgICByZXR1cm47CkBAIC0zNzUs
NyArMzc3LDcgQEAgdm9pZCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjpzY2hlZHVsZVJlZGlyZWN0KERv
Y3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQsIGRvdWJsZQogCiAgICAgLy8gV2Ugd2FudCBhIG5l
dyBiYWNrL2ZvcndhcmQgbGlzdCBpdGVtIGlmIHRoZSByZWZyZXNoIHRpbWVvdXQgaXMgPiAxIHNl
Y29uZC4KICAgICBpZiAoIW1fcmVkaXJlY3QgfHwgZGVsYXkgPD0gbV9yZWRpcmVjdC0+ZGVsYXko
KSkgewotICAgICAgICBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QgPSBk
ZWxheSA8PSAxID8gTG9ja0JhY2tGb3J3YXJkTGlzdDo6WWVzIDogTG9ja0JhY2tGb3J3YXJkTGlz
dDo6Tm87CisgICAgICAgIGF1dG8gbG9ja0JhY2tGb3J3YXJkTGlzdCA9IGRlbGF5IDw9IDEgPyBM
b2NrQmFja0ZvcndhcmRMaXN0OjpZZXMgOiBMb2NrQmFja0ZvcndhcmRMaXN0OjpObzsKICAgICAg
ICAgc2NoZWR1bGUoc3RkOjptYWtlX3VuaXF1ZTxTY2hlZHVsZWRSZWRpcmVjdD4oaW5pdGlhdGlu
Z0RvY3VtZW50LCBkZWxheSwgbV9mcmFtZS5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLCB1
cmwsIExvY2tIaXN0b3J5OjpZZXMsIGxvY2tCYWNrRm9yd2FyZExpc3QpKTsKICAgICB9CiB9CkBA
IC0zOTgsNyArNDAwLDcgQEAgTG9ja0JhY2tGb3J3YXJkTGlzdCBOYXZpZ2F0aW9uU2NoZWR1bGVy
OjptdXN0TG9ja0JhY2tGb3J3YXJkTGlzdChGcmFtZSYgdGFyZ2V0RnIKICAgICByZXR1cm4gTG9j
a0JhY2tGb3J3YXJkTGlzdDo6Tm87CiB9CiAKLXZvaWQgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2No
ZWR1bGVMb2NhdGlvbkNoYW5nZShEb2N1bWVudCogaW5pdGlhdGluZ0RvY3VtZW50LCBTZWN1cml0
eU9yaWdpbiogc2VjdXJpdHlPcmlnaW4sIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIHJl
ZmVycmVyLCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSwgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2Nr
QmFja0ZvcndhcmRMaXN0KQordm9pZCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjpzY2hlZHVsZUxvY2F0
aW9uQ2hhbmdlKERvY3VtZW50JiBpbml0aWF0aW5nRG9jdW1lbnQsIFNlY3VyaXR5T3JpZ2luKiBz
ZWN1cml0eU9yaWdpbiwgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIExv
Y2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2Fy
ZExpc3QpCiB7CiAgICAgaWYgKCFzaG91bGRTY2hlZHVsZU5hdmlnYXRpb24odXJsKSkKICAgICAg
ICAgcmV0dXJuOwpAQCAtNDEyLDEwICs0MTQsNyBAQCB2b2lkIE5hdmlnYXRpb25TY2hlZHVsZXI6
OnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UoRG9jdW1lbnQqIGluaXRpYXRpbmdEb2N1bWVudCwgUwog
ICAgIC8vIGZyYWdtZW50IHBhcnQsIHdlIGRvbid0IG5lZWQgdG8gc2NoZWR1bGUgdGhlIGxvY2F0
aW9uIGNoYW5nZS4KICAgICBpZiAodXJsLmhhc0ZyYWdtZW50SWRlbnRpZmllcigpICYmIGVxdWFs
SWdub3JpbmdGcmFnbWVudElkZW50aWZpZXIobV9mcmFtZS5kb2N1bWVudCgpLT51cmwoKSwgdXJs
KSkgewogICAgICAgICBSZXNvdXJjZVJlcXVlc3QgcmVzb3VyY2VSZXF1ZXN0KG1fZnJhbWUuZG9j
dW1lbnQoKS0+Y29tcGxldGVVUkwodXJsKSwgcmVmZXJyZXIsIFVzZVByb3RvY29sQ2FjaGVQb2xp
Y3kpOwotICAgICAgICBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5IHNob3VsZE9wZW5FeHRl
cm5hbFVSTHNQb2xpY3kgPSBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5OjpTaG91bGROb3RB
bGxvdzsKLSAgICAgICAgaWYgKGluaXRpYXRpbmdEb2N1bWVudCkKLSAgICAgICAgICAgIHNob3Vs
ZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgPSBpbml0aWF0aW5nRG9jdW1lbnQtPnNob3VsZE9wZW5F
eHRlcm5hbFVSTHNQb2xpY3lUb1Byb3BhZ2F0ZSgpOwotICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0
IGZyYW1lUmVxdWVzdChzZWN1cml0eU9yaWdpbiwgcmVzb3VyY2VSZXF1ZXN0LCAiX3NlbGYiLCBs
b2NrSGlzdG9yeSwgbG9ja0JhY2tGb3J3YXJkTGlzdCwgTWF5YmVTZW5kUmVmZXJyZXIsIEFsbG93
TmF2aWdhdGlvblRvSW52YWxpZFVSTDo6Tm8sIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxvdywg
UmVwbGFjZURvY3VtZW50SWZKYXZhU2NyaXB0VVJMLCBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9s
aWN5KTsKKyAgICAgICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFtZVJlcXVlc3Qoc2VjdXJpdHlPcmln
aW4sIHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hpc3RvcnksIGxvY2tCYWNrRm9yd2Fy
ZExpc3QsIE1heWJlU2VuZFJlZmVycmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkw6Ok5v
LCBOZXdGcmFtZU9wZW5lclBvbGljeTo6QWxsb3csIFJlcGxhY2VEb2N1bWVudElmSmF2YVNjcmlw
dFVSTCwgaW5pdGlhdGluZ0RvY3VtZW50LnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3lUb1By
b3BhZ2F0ZSgpKTsKICAgICAgICAgbG9hZGVyLmNoYW5nZUxvY2F0aW9uKGZyYW1lUmVxdWVzdCk7
CiAgICAgICAgIHJldHVybjsKICAgICB9CkBAIC00MjcsNyArNDI2LDcgQEAgdm9pZCBOYXZpZ2F0
aW9uU2NoZWR1bGVyOjpzY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKERvY3VtZW50KiBpbml0aWF0aW5n
RG9jdW1lbnQsIFMKICAgICBzY2hlZHVsZShzdGQ6Om1ha2VfdW5pcXVlPFNjaGVkdWxlZExvY2F0
aW9uQ2hhbmdlPihpbml0aWF0aW5nRG9jdW1lbnQsIHNlY3VyaXR5T3JpZ2luLCB1cmwsIHJlZmVy
cmVyLCBsb2NrSGlzdG9yeSwgbG9ja0JhY2tGb3J3YXJkTGlzdCwgZHVyaW5nTG9hZCkpOwogfQog
Ci12b2lkIE5hdmlnYXRpb25TY2hlZHVsZXI6OnNjaGVkdWxlRm9ybVN1Ym1pc3Npb24oUGFzc1Jl
ZlB0cjxGb3JtU3VibWlzc2lvbj4gc3VibWlzc2lvbikKK3ZvaWQgTmF2aWdhdGlvblNjaGVkdWxl
cjo6c2NoZWR1bGVGb3JtU3VibWlzc2lvbihSZWY8Rm9ybVN1Ym1pc3Npb24+JiYgc3VibWlzc2lv
bikKIHsKICAgICBBU1NFUlQobV9mcmFtZS5wYWdlKCkpOwogCkBAIC00NDMsMTQgKzQ0MiwxNCBA
QCB2b2lkIE5hdmlnYXRpb25TY2hlZHVsZXI6OnNjaGVkdWxlRm9ybVN1Ym1pc3Npb24oUGFzc1Jl
ZlB0cjxGb3JtU3VibWlzc2lvbj4gc3VibQogICAgIC8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzIzODMgZm9yIHRoZSBvcmlnaW5hbCBtb3RpdmF0aW9uIGZv
ciB0aGlzLgogICAgIExvY2tCYWNrRm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3YXJkTGlzdCA9IG11
c3RMb2NrQmFja0ZvcndhcmRMaXN0KG1fZnJhbWUpOwogICAgIGlmIChsb2NrQmFja0ZvcndhcmRM
aXN0ID09IExvY2tCYWNrRm9yd2FyZExpc3Q6Ok5vCi0gICAgICAgICYmIChzdWJtaXNzaW9uLT5z
dGF0ZSgpLT5mb3JtU3VibWlzc2lvblRyaWdnZXIoKSA9PSBTdWJtaXR0ZWRCeUphdmFTY3JpcHQg
JiYgbV9mcmFtZS50cmVlKCkucGFyZW50KCkgJiYgIVVzZXJHZXN0dXJlSW5kaWNhdG9yOjpwcm9j
ZXNzaW5nVXNlckdlc3R1cmUoKSkpIHsKKyAgICAgICAgJiYgKHN1Ym1pc3Npb24tPnN0YXRlKCku
Zm9ybVN1Ym1pc3Npb25UcmlnZ2VyKCkgPT0gU3VibWl0dGVkQnlKYXZhU2NyaXB0ICYmIG1fZnJh
bWUudHJlZSgpLnBhcmVudCgpICYmICFVc2VyR2VzdHVyZUluZGljYXRvcjo6cHJvY2Vzc2luZ1Vz
ZXJHZXN0dXJlKCkpKSB7CiAgICAgICAgIGxvY2tCYWNrRm9yd2FyZExpc3QgPSBMb2NrQmFja0Zv
cndhcmRMaXN0OjpZZXM7CiAgICAgfQogICAgIAotICAgIHNjaGVkdWxlKHN0ZDo6bWFrZV91bmlx
dWU8U2NoZWR1bGVkRm9ybVN1Ym1pc3Npb24+KHN1Ym1pc3Npb24sIGxvY2tCYWNrRm9yd2FyZExp
c3QsIGR1cmluZ0xvYWQpKTsKKyAgICBzY2hlZHVsZShzdGQ6Om1ha2VfdW5pcXVlPFNjaGVkdWxl
ZEZvcm1TdWJtaXNzaW9uPihXVEZNb3ZlKHN1Ym1pc3Npb24pLCBsb2NrQmFja0ZvcndhcmRMaXN0
LCBkdXJpbmdMb2FkKSk7CiB9CiAKLXZvaWQgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2NoZWR1bGVS
ZWZyZXNoKERvY3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQpCit2b2lkIE5hdmlnYXRpb25TY2hl
ZHVsZXI6OnNjaGVkdWxlUmVmcmVzaChEb2N1bWVudCYgaW5pdGlhdGluZ0RvY3VtZW50KQogewog
ICAgIGlmICghc2hvdWxkU2NoZWR1bGVOYXZpZ2F0aW9uKCkpCiAgICAgICAgIHJldHVybjsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmggYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5oCmluZGV4IDQ5YzQzYmUy
YmIxNWViYTgwNTY1NzY2MTJkMTVkMWFiY2YzMDc3MTcuLjBhZTE3MTE0NThjMzc0NmY3NzgxNmZl
ZDkzNjdiYTQ4YmY2MTZmZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZp
Z2F0aW9uU2NoZWR1bGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL05hdmlnYXRpb25T
Y2hlZHVsZXIuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAx
NiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYt
MjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIw
MDgsIDIwMDkgVG9yY2ggTW9iaWxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4gKGh0dHA6Ly93
d3cudG9yY2htb2JpbGUuY29tLykKICAqIENvcHlyaWdodCAoQykgMjAwOSBBZGFtIEJhcnRoLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgogICoKQEAgLTY4LDEwICs2OCwxMCBAQCBwdWJsaWM6CiAgICAg
Ym9vbCByZWRpcmVjdFNjaGVkdWxlZER1cmluZ0xvYWQoKTsKICAgICBib29sIGxvY2F0aW9uQ2hh
bmdlUGVuZGluZygpOwogCi0gICAgdm9pZCBzY2hlZHVsZVJlZGlyZWN0KERvY3VtZW50KiBpbml0
aWF0aW5nRG9jdW1lbnQsIGRvdWJsZSBkZWxheSwgY29uc3QgVVJMJik7Ci0gICAgdm9pZCBzY2hl
ZHVsZUxvY2F0aW9uQ2hhbmdlKERvY3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQsIFNlY3VyaXR5
T3JpZ2luKiwgY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgTG9ja0hpc3Rvcnkg
PSBMb2NrSGlzdG9yeTo6WWVzLCBMb2NrQmFja0ZvcndhcmRMaXN0ID0gTG9ja0JhY2tGb3J3YXJk
TGlzdDo6WWVzKTsKLSAgICB2b2lkIHNjaGVkdWxlRm9ybVN1Ym1pc3Npb24oUGFzc1JlZlB0cjxG
b3JtU3VibWlzc2lvbj4pOwotICAgIHZvaWQgc2NoZWR1bGVSZWZyZXNoKERvY3VtZW50KiBpbml0
aWF0aW5nRG9jdW1lbnQpOworICAgIHZvaWQgc2NoZWR1bGVSZWRpcmVjdChEb2N1bWVudCYgaW5p
dGlhdGluZ0RvY3VtZW50LCBkb3VibGUgZGVsYXksIGNvbnN0IFVSTCYpOworICAgIHZvaWQgc2No
ZWR1bGVMb2NhdGlvbkNoYW5nZShEb2N1bWVudCYgaW5pdGlhdGluZ0RvY3VtZW50LCBTZWN1cml0
eU9yaWdpbiosIGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIExvY2tIaXN0b3J5
ID0gTG9ja0hpc3Rvcnk6OlllcywgTG9ja0JhY2tGb3J3YXJkTGlzdCA9IExvY2tCYWNrRm9yd2Fy
ZExpc3Q6Olllcyk7CisgICAgdm9pZCBzY2hlZHVsZUZvcm1TdWJtaXNzaW9uKFJlZjxGb3JtU3Vi
bWlzc2lvbj4mJik7CisgICAgdm9pZCBzY2hlZHVsZVJlZnJlc2goRG9jdW1lbnQmIGluaXRpYXRp
bmdEb2N1bWVudCk7CiAgICAgdm9pZCBzY2hlZHVsZUhpc3RvcnlOYXZpZ2F0aW9uKGludCBzdGVw
cyk7CiAgICAgdm9pZCBzY2hlZHVsZVBhZ2VCbG9jayhEb2N1bWVudCYgb3JpZ2luRG9jdW1lbnQp
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3Bw
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcAppbmRleCA5ZTJhYmRh
ZGNhMTc4MWFkMTA1YzM5NDlmMmYwY2QxMGZlZWFhZDdhLi4zNjUwZWJiNTg4ZDgwMmE4NjFlMzMw
YTFlZDc3MDBhOTUzYzY3ZjQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVz
b3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRl
ci5jcHAKQEAgLTE5MSw3ICsxOTEsNyBAQCB2b2lkIFJlc291cmNlTG9hZGVyOjpzdGFydCgpCiAg
ICAgICAgIHJldHVybjsKICNlbmRpZgogCi0gICAgaWYgKG1fZG9jdW1lbnRMb2FkZXItPmFwcGxp
Y2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZFJlc291cmNlKCp0aGlzLCBtX3JlcXVlc3QsIG1f
cmVxdWVzdC51cmwoKSkpCisgICAgaWYgKG1fZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KCkubWF5YmVMb2FkUmVzb3VyY2UoKnRoaXMsIG1fcmVxdWVzdCwgbV9yZXF1ZXN0LnVy
bCgpKSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKG1fZGVmZXJzTG9hZGluZykgewpAQCAt
NjA3LDcgKzYwNyw3IEBAIFJlc291cmNlRXJyb3IgUmVzb3VyY2VMb2FkZXI6OmNhbm5vdFNob3dV
UkxFcnJvcigpCiAKIFJlc291cmNlUmVxdWVzdCBSZXNvdXJjZUxvYWRlcjo6d2lsbFNlbmRSZXF1
ZXN0KFJlc291cmNlSGFuZGxlKiwgUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCwgUmVzb3VyY2VS
ZXNwb25zZSYmIHJlZGlyZWN0UmVzcG9uc2UpCiB7Ci0gICAgaWYgKGRvY3VtZW50TG9hZGVyKCkt
PmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZEZhbGxiYWNrRm9yUmVkaXJlY3QodGhp
cywgcmVxdWVzdCwgcmVkaXJlY3RSZXNwb25zZSkpCisgICAgaWYgKGRvY3VtZW50TG9hZGVyKCkt
PmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWF5YmVMb2FkRmFsbGJhY2tGb3JSZWRpcmVjdCh0aGlz
LCByZXF1ZXN0LCByZWRpcmVjdFJlc3BvbnNlKSkKICAgICAgICAgcmV0dXJuIFdURk1vdmUocmVx
dWVzdCk7CiAgICAgd2lsbFNlbmRSZXF1ZXN0SW50ZXJuYWwocmVxdWVzdCwgcmVkaXJlY3RSZXNw
b25zZSk7CiAgICAgcmV0dXJuIFdURk1vdmUocmVxdWVzdCk7CkBAIC02MjAsNyArNjIwLDcgQEAg
dm9pZCBSZXNvdXJjZUxvYWRlcjo6ZGlkU2VuZERhdGEoUmVzb3VyY2VIYW5kbGUqLCB1bnNpZ25l
ZCBsb25nIGxvbmcgYnl0ZXNTZW50LAogCiB2b2lkIFJlc291cmNlTG9hZGVyOjpkaWRSZWNlaXZl
UmVzcG9uc2UoUmVzb3VyY2VIYW5kbGUqLCBSZXNvdXJjZVJlc3BvbnNlJiYgcmVzcG9uc2UpCiB7
Ci0gICAgaWYgKGRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJl
TG9hZEZhbGxiYWNrRm9yUmVzcG9uc2UodGhpcywgcmVzcG9uc2UpKQorICAgIGlmIChkb2N1bWVu
dExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLm1heWJlTG9hZEZhbGxiYWNrRm9yUmVz
cG9uc2UodGhpcywgcmVzcG9uc2UpKQogICAgICAgICByZXR1cm47CiAgICAgZGlkUmVjZWl2ZVJl
c3BvbnNlKHJlc3BvbnNlKTsKIH0KQEAgLTY0Miw3ICs2NDIsNyBAQCB2b2lkIFJlc291cmNlTG9h
ZGVyOjpkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFuZGxlKiwgZG91YmxlIGZpbmlzaFRpbWUp
CiAKIHZvaWQgUmVzb3VyY2VMb2FkZXI6OmRpZEZhaWwoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBS
ZXNvdXJjZUVycm9yJiBlcnJvcikKIHsKLSAgICBpZiAoZG9jdW1lbnRMb2FkZXIoKS0+YXBwbGlj
YXRpb25DYWNoZUhvc3QoKS0+bWF5YmVMb2FkRmFsbGJhY2tGb3JFcnJvcih0aGlzLCBlcnJvcikp
CisgICAgaWYgKGRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWF5YmVM
b2FkRmFsbGJhY2tGb3JFcnJvcih0aGlzLCBlcnJvcikpCiAgICAgICAgIHJldHVybjsKICAgICBk
aWRGYWlsKGVycm9yKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJm
cmFtZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3ViZnJhbWVMb2FkZXIuY3Bw
CmluZGV4IGFmNmMxNjQ0MmUxZTJlNTMzZjMwMzNmMDA0ZjNmNzc5ODgwZjFmMWYuLjAxYWU1M2E4
Y2Q2MzBjZWExOTJmYzM1MDhkODQyOTM4YWYyNzg2YTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9TdWJmcmFtZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L1N1YmZyYW1lTG9hZGVyLmNwcApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMp
IDIwMDYtMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQg
KEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmln
aHQgKEMpIDIwMDggTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMp
CiAgKiBDb3B5cmlnaHQgKEMpIDIwMDgsIDIwMDkgVG9yY2ggTW9iaWxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4gKGh0dHA6Ly93d3cudG9yY2htb2JpbGUuY29tLykKICAqIENvcHlyaWdodCAo
QykgMjAwOCBBbHAgVG9rZXIgPGFscEBhdG9rZXIuY29tPgpAQCAtMTA5LDIzICsxMDksMjUgQEAg
Ym9vbCBTdWJmcmFtZUxvYWRlcjo6cmVzb3VyY2VXaWxsVXNlUGx1Z2luKGNvbnN0IFN0cmluZyYg
dXJsLCBjb25zdCBTdHJpbmcmIG1pbWUKIAogYm9vbCBTdWJmcmFtZUxvYWRlcjo6cGx1Z2luSXNM
b2FkYWJsZShjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkKIHsKKyAgICBh
dXRvKiBkb2N1bWVudCA9IG1fZnJhbWUuZG9jdW1lbnQoKTsKKwogICAgIGlmIChNSU1FVHlwZVJl
Z2lzdHJ5Ojppc0phdmFBcHBsZXRNSU1FVHlwZShtaW1lVHlwZSkpIHsKICAgICAgICAgaWYgKCFt
X2ZyYW1lLnNldHRpbmdzKCkuaXNKYXZhRW5hYmxlZCgpKQogICAgICAgICAgICAgcmV0dXJuIGZh
bHNlOwotICAgICAgICBpZiAoZG9jdW1lbnQoKSAmJiBkb2N1bWVudCgpLT5zZWN1cml0eU9yaWdp
bigpLT5pc0xvY2FsKCkgJiYgIW1fZnJhbWUuc2V0dGluZ3MoKS5pc0phdmFFbmFibGVkRm9yTG9j
YWxGaWxlcygpKQorICAgICAgICBpZiAoZG9jdW1lbnQgJiYgZG9jdW1lbnQtPnNlY3VyaXR5T3Jp
Z2luKCktPmlzTG9jYWwoKSAmJiAhbV9mcmFtZS5zZXR0aW5ncygpLmlzSmF2YUVuYWJsZWRGb3JM
b2NhbEZpbGVzKCkpCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogCi0gICAgaWYg
KGRvY3VtZW50KCkpIHsKLSAgICAgICAgaWYgKGRvY3VtZW50KCktPmlzU2FuZGJveGVkKFNhbmRi
b3hQbHVnaW5zKSkKKyAgICBpZiAoZG9jdW1lbnQpIHsKKyAgICAgICAgaWYgKGRvY3VtZW50LT5p
c1NhbmRib3hlZChTYW5kYm94UGx1Z2lucykpCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAK
LSAgICAgICAgaWYgKCFkb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5jYW5EaXNwbGF5KHVy
bCkpIHsKKyAgICAgICAgaWYgKCFkb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuRGlzcGxh
eSh1cmwpKSB7CiAgICAgICAgICAgICBGcmFtZUxvYWRlcjo6cmVwb3J0TG9jYWxMb2FkRmFpbGVk
KCZtX2ZyYW1lLCB1cmwuc3RyaW5nKCkpOwogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAg
ICAgICB9CiAKLSAgICAgICAgaWYgKCFtX2ZyYW1lLmxvYWRlcigpLm1peGVkQ29udGVudENoZWNr
ZXIoKS5jYW5SdW5JbnNlY3VyZUNvbnRlbnQoZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSwg
dXJsKSkKKyAgICAgICAgaWYgKCFtX2ZyYW1lLmxvYWRlcigpLm1peGVkQ29udGVudENoZWNrZXIo
KS5jYW5SdW5JbnNlY3VyZUNvbnRlbnQoZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCksIHVybCkp
CiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogCkBAIC0yMDYsMTggKzIwOCwyMCBA
QCBib29sIFN1YmZyYW1lTG9hZGVyOjpyZXF1ZXN0T2JqZWN0KEhUTUxQbHVnSW5JbWFnZUVsZW1l
bnQmIG93bmVyRWxlbWVudCwgY29uc3QgUwogICAgIGlmICh1cmwuaXNFbXB0eSgpICYmIG1pbWVU
eXBlLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCisgICAgYXV0byYgZG9jdW1l
bnQgPSBvd25lckVsZW1lbnQuZG9jdW1lbnQoKTsKKwogICAgIFVSTCBjb21wbGV0ZWRVUkw7CiAg
ICAgaWYgKCF1cmwuaXNFbXB0eSgpKQogICAgICAgICBjb21wbGV0ZWRVUkwgPSBjb21wbGV0ZVVS
TCh1cmwpOwogCi0gICAgZG9jdW1lbnQoKS0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPnVwZ3Jh
ZGVJbnNlY3VyZVJlcXVlc3RJZk5lZWRlZChjb21wbGV0ZWRVUkwsIENvbnRlbnRTZWN1cml0eVBv
bGljeTo6SW5zZWN1cmVSZXF1ZXN0VHlwZTo6TG9hZCk7CisgICAgZG9jdW1lbnQuY29udGVudFNl
Y3VyaXR5UG9saWN5KCktPnVwZ3JhZGVJbnNlY3VyZVJlcXVlc3RJZk5lZWRlZChjb21wbGV0ZWRV
UkwsIENvbnRlbnRTZWN1cml0eVBvbGljeTo6SW5zZWN1cmVSZXF1ZXN0VHlwZTo6TG9hZCk7CiAK
ICAgICBib29sIGhhc0ZhbGxiYWNrQ29udGVudCA9IGlzPEhUTUxPYmplY3RFbGVtZW50Pihvd25l
ckVsZW1lbnQpICYmIGRvd25jYXN0PEhUTUxPYmplY3RFbGVtZW50Pihvd25lckVsZW1lbnQpLmhh
c0ZhbGxiYWNrQ29udGVudCgpOwogCiAgICAgYm9vbCB1c2VGYWxsYmFjazsKICAgICBpZiAoc2hv
dWxkVXNlUGx1Z2luKGNvbXBsZXRlZFVSTCwgbWltZVR5cGUsIGhhc0ZhbGxiYWNrQ29udGVudCwg
dXNlRmFsbGJhY2spKSB7CiAgICAgICAgIGJvb2wgc3VjY2VzcyA9IHJlcXVlc3RQbHVnaW4ob3du
ZXJFbGVtZW50LCBjb21wbGV0ZWRVUkwsIG1pbWVUeXBlLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVl
cywgdXNlRmFsbGJhY2spOwotICAgICAgICBsb2dQbHVnaW5SZXF1ZXN0KGRvY3VtZW50KCktPnBh
Z2UoKSwgbWltZVR5cGUsIGNvbXBsZXRlZFVSTCwgc3VjY2Vzcyk7CisgICAgICAgIGxvZ1BsdWdp
blJlcXVlc3QoZG9jdW1lbnQucGFnZSgpLCBtaW1lVHlwZSwgY29tcGxldGVkVVJMLCBzdWNjZXNz
KTsKICAgICAgICAgcmV0dXJuIHN1Y2Nlc3M7CiAgICAgfQogCkBAIC0yMjcsNyArMjMxLDcgQEAg
Ym9vbCBTdWJmcmFtZUxvYWRlcjo6cmVxdWVzdE9iamVjdChIVE1MUGx1Z0luSW1hZ2VFbGVtZW50
JiBvd25lckVsZW1lbnQsIGNvbnN0IFMKICAgICByZXR1cm4gbG9hZE9yUmVkaXJlY3RTdWJmcmFt
ZShvd25lckVsZW1lbnQsIGNvbXBsZXRlZFVSTCwgZnJhbWVOYW1lLCBMb2NrSGlzdG9yeTo6WWVz
LCBMb2NrQmFja0ZvcndhcmRMaXN0OjpZZXMpOwogfQogCi1QYXNzUmVmUHRyPFdpZGdldD4gU3Vi
ZnJhbWVMb2FkZXI6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYgc2l6ZSwg
SFRNTEFwcGxldEVsZW1lbnQmIGVsZW1lbnQsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5h
bWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpCitSZWZQdHI8V2lkZ2V0PiBT
dWJmcmFtZUxvYWRlcjo6Y3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXplJiBzaXpl
LCBIVE1MQXBwbGV0RWxlbWVudCYgZWxlbWVudCwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFt
TmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykKIHsKICAgICBTdHJpbmcg
YmFzZVVSTFN0cmluZzsKICAgICBTdHJpbmcgY29kZUJhc2VVUkxTdHJpbmc7CkBAIC0yNTYsMTQg
KzI2MCwxNCBAQCBQYXNzUmVmUHRyPFdpZGdldD4gU3ViZnJhbWVMb2FkZXI6OmNyZWF0ZUphdmFB
cHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYgc2l6ZSwgSAogICAgIH0KIAogICAgIGlmIChiYXNl
VVJMU3RyaW5nLmlzRW1wdHkoKSkKLSAgICAgICAgYmFzZVVSTFN0cmluZyA9IG1fZnJhbWUuZG9j
dW1lbnQoKS0+YmFzZVVSTCgpLnN0cmluZygpOworICAgICAgICBiYXNlVVJMU3RyaW5nID0gZWxl
bWVudC5kb2N1bWVudCgpLmJhc2VVUkwoKS5zdHJpbmcoKTsKICAgICBVUkwgYmFzZVVSTCA9IGNv
bXBsZXRlVVJMKGJhc2VVUkxTdHJpbmcpOwogCiAgICAgUmVmUHRyPFdpZGdldD4gd2lkZ2V0Owog
ICAgIGlmIChhbGxvd1BsdWdpbnMoKSkKLSAgICAgICAgd2lkZ2V0ID0gbV9mcmFtZS5sb2FkZXIo
KS5jbGllbnQoKS5jcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KHNpemUsICZlbGVtZW50LCBiYXNlVVJM
LCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcyk7CisgICAgICAgIHdpZGdldCA9IG1fZnJhbWUubG9h
ZGVyKCkuY2xpZW50KCkuY3JlYXRlSmF2YUFwcGxldFdpZGdldChzaXplLCBlbGVtZW50LCBiYXNl
VVJMLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcyk7CiAKLSAgICBsb2dQbHVnaW5SZXF1ZXN0KGRv
Y3VtZW50KCktPnBhZ2UoKSwgZWxlbWVudC5zZXJ2aWNlVHlwZSgpLCBTdHJpbmcoKSwgd2lkZ2V0
KTsKKyAgICBsb2dQbHVnaW5SZXF1ZXN0KG1fZnJhbWUucGFnZSgpLCBlbGVtZW50LnNlcnZpY2VU
eXBlKCksIFN0cmluZygpLCB3aWRnZXQpOwogCiAgICAgaWYgKCF3aWRnZXQpIHsKICAgICAgICAg
UmVuZGVyRW1iZWRkZWRPYmplY3QqIHJlbmRlcmVyID0gZWxlbWVudC5yZW5kZXJFbWJlZGRlZE9i
amVjdCgpOwpAQCAtMjc3LDE2ICsyODEsMTggQEAgUGFzc1JlZlB0cjxXaWRnZXQ+IFN1YmZyYW1l
TG9hZGVyOjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmIHNpemUsIEgKICAg
ICByZXR1cm4gd2lkZ2V0OwogfQogCi1GcmFtZSogU3ViZnJhbWVMb2FkZXI6OmxvYWRPclJlZGly
ZWN0U3ViZnJhbWUoSFRNTEZyYW1lT3duZXJFbGVtZW50JiBvd25lckVsZW1lbnQsIGNvbnN0IFVS
TCYgcmVxdWVzdFVybCwgY29uc3QgQXRvbWljU3RyaW5nJiBmcmFtZU5hbWUsIExvY2tIaXN0b3J5
IGxvY2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QpCitG
cmFtZSogU3ViZnJhbWVMb2FkZXI6OmxvYWRPclJlZGlyZWN0U3ViZnJhbWUoSFRNTEZyYW1lT3du
ZXJFbGVtZW50JiBvd25lckVsZW1lbnQsIGNvbnN0IFVSTCYgcmVxdWVzdFVSTCwgY29uc3QgQXRv
bWljU3RyaW5nJiBmcmFtZU5hbWUsIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBMb2NrQmFja0Zv
cndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QpCiB7Ci0gICAgVVJMIHVybCA9IHJlcXVlc3RV
cmw7Ci0gICAgb3duZXJFbGVtZW50LmRvY3VtZW50KCkuY29udGVudFNlY3VyaXR5UG9saWN5KCkt
PnVwZ3JhZGVJbnNlY3VyZVJlcXVlc3RJZk5lZWRlZCh1cmwsIENvbnRlbnRTZWN1cml0eVBvbGlj
eTo6SW5zZWN1cmVSZXF1ZXN0VHlwZTo6TG9hZCk7CisgICAgYXV0byYgaW5pdGlhdGluZ0RvY3Vt
ZW50ID0gb3duZXJFbGVtZW50LmRvY3VtZW50KCk7CisKKyAgICBVUkwgdXBncmFkZWRSZXF1ZXN0
VVJMID0gcmVxdWVzdFVSTDsKKyAgICBpbml0aWF0aW5nRG9jdW1lbnQuY29udGVudFNlY3VyaXR5
UG9saWN5KCktPnVwZ3JhZGVJbnNlY3VyZVJlcXVlc3RJZk5lZWRlZCh1cGdyYWRlZFJlcXVlc3RV
UkwsIENvbnRlbnRTZWN1cml0eVBvbGljeTo6SW5zZWN1cmVSZXF1ZXN0VHlwZTo6TG9hZCk7CiAK
LSAgICBGcmFtZSogZnJhbWUgPSBvd25lckVsZW1lbnQuY29udGVudEZyYW1lKCk7CisgICAgYXV0
byogZnJhbWUgPSBvd25lckVsZW1lbnQuY29udGVudEZyYW1lKCk7CiAgICAgaWYgKGZyYW1lKQot
ICAgICAgICBmcmFtZS0+bmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlTG9jYXRpb25DaGFu
Z2UobV9mcmFtZS5kb2N1bWVudCgpLCBtX2ZyYW1lLmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2lu
KCksIHVybCwgbV9mcmFtZS5sb2FkZXIoKS5vdXRnb2luZ1JlZmVycmVyKCksIGxvY2tIaXN0b3J5
LCBsb2NrQmFja0ZvcndhcmRMaXN0KTsKKyAgICAgICAgZnJhbWUtPm5hdmlnYXRpb25TY2hlZHVs
ZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKGluaXRpYXRpbmdEb2N1bWVudCwgaW5pdGlhdGlu
Z0RvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCksIHVwZ3JhZGVkUmVxdWVzdFVSTCwgbV9mcmFtZS5s
b2FkZXIoKS5vdXRnb2luZ1JlZmVycmVyKCksIGxvY2tIaXN0b3J5LCBsb2NrQmFja0ZvcndhcmRM
aXN0KTsKICAgICBlbHNlCi0gICAgICAgIGZyYW1lID0gbG9hZFN1YmZyYW1lKG93bmVyRWxlbWVu
dCwgdXJsLCBmcmFtZU5hbWUsIG1fZnJhbWUubG9hZGVyKCkub3V0Z29pbmdSZWZlcnJlcigpKTsK
KyAgICAgICAgZnJhbWUgPSBsb2FkU3ViZnJhbWUob3duZXJFbGVtZW50LCB1cGdyYWRlZFJlcXVl
c3RVUkwsIGZyYW1lTmFtZSwgbV9mcmFtZS5sb2FkZXIoKS5vdXRnb2luZ1JlZmVycmVyKCkpOwog
CiAgICAgaWYgKCFmcmFtZSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CkBAIC0zMDMsMTMgKzMw
OSwxNSBAQCBGcmFtZSogU3ViZnJhbWVMb2FkZXI6OmxvYWRTdWJmcmFtZShIVE1MRnJhbWVPd25l
ckVsZW1lbnQmIG93bmVyRWxlbWVudCwgY29uc3QgVQogICAgIGludCBtYXJnaW5XaWR0aCA9IC0x
OwogICAgIGludCBtYXJnaW5IZWlnaHQgPSAtMTsKICAgICBpZiAoaXM8SFRNTEZyYW1lRWxlbWVu
dEJhc2U+KG93bmVyRWxlbWVudCkpIHsKLSAgICAgICAgSFRNTEZyYW1lRWxlbWVudEJhc2UmIGZy
YW1lRWxlbWVudEJhc2UgPSBkb3duY2FzdDxIVE1MRnJhbWVFbGVtZW50QmFzZT4ob3duZXJFbGVt
ZW50KTsKKyAgICAgICAgYXV0byYgZnJhbWVFbGVtZW50QmFzZSA9IGRvd25jYXN0PEhUTUxGcmFt
ZUVsZW1lbnRCYXNlPihvd25lckVsZW1lbnQpOwogICAgICAgICBhbGxvd3NTY3JvbGxpbmcgPSBm
cmFtZUVsZW1lbnRCYXNlLnNjcm9sbGluZ01vZGUoKSAhPSBTY3JvbGxiYXJBbHdheXNPZmY7CiAg
ICAgICAgIG1hcmdpbldpZHRoID0gZnJhbWVFbGVtZW50QmFzZS5tYXJnaW5XaWR0aCgpOwogICAg
ICAgICBtYXJnaW5IZWlnaHQgPSBmcmFtZUVsZW1lbnRCYXNlLm1hcmdpbkhlaWdodCgpOwogICAg
IH0KIAotICAgIGlmICghb3duZXJFbGVtZW50LmRvY3VtZW50KCkuc2VjdXJpdHlPcmlnaW4oKS0+
Y2FuRGlzcGxheSh1cmwpKSB7CisgICAgYXV0byBkb2N1bWVudCA9IG1ha2VSZWYob3duZXJFbGVt
ZW50LmRvY3VtZW50KCkpOworCisgICAgaWYgKCFkb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKS0+
Y2FuRGlzcGxheSh1cmwpKSB7CiAgICAgICAgIEZyYW1lTG9hZGVyOjpyZXBvcnRMb2NhbExvYWRG
YWlsZWQoJm1fZnJhbWUsIHVybC5zdHJpbmcoKSk7CiAgICAgICAgIHJldHVybiBudWxscHRyOwog
ICAgIH0KQEAgLTMxNywyMCArMzI1LDIwIEBAIEZyYW1lKiBTdWJmcmFtZUxvYWRlcjo6bG9hZFN1
YmZyYW1lKEhUTUxGcmFtZU93bmVyRWxlbWVudCYgb3duZXJFbGVtZW50LCBjb25zdCBVCiAgICAg
aWYgKCFTdWJmcmFtZUxvYWRpbmdEaXNhYmxlcjo6Y2FuTG9hZEZyYW1lKG93bmVyRWxlbWVudCkp
CiAgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgU3RyaW5nIHJlZmVycmVyVG9Vc2UgPSBT
ZWN1cml0eVBvbGljeTo6Z2VuZXJhdGVSZWZlcnJlckhlYWRlcihvd25lckVsZW1lbnQuZG9jdW1l
bnQoKS5yZWZlcnJlclBvbGljeSgpLCB1cmwsIHJlZmVycmVyKTsKKyAgICBTdHJpbmcgcmVmZXJy
ZXJUb1VzZSA9IFNlY3VyaXR5UG9saWN5OjpnZW5lcmF0ZVJlZmVycmVySGVhZGVyKGRvY3VtZW50
LT5yZWZlcnJlclBvbGljeSgpLCB1cmwsIHJlZmVycmVyKTsKIAogICAgIC8vIFByZXZlbnQgaW5p
dGlhbCBlbXB0eSBkb2N1bWVudCBsb2FkIGZyb20gdHJpZ2dlcmluZyBsb2FkIGV2ZW50cy4KLSAg
ICBtX2ZyYW1lLmRvY3VtZW50KCktPmluY3JlbWVudExvYWRFdmVudERlbGF5Q291bnQoKTsKKyAg
ICBkb2N1bWVudC0+aW5jcmVtZW50TG9hZEV2ZW50RGVsYXlDb3VudCgpOwogCi0gICAgUmVmUHRy
PEZyYW1lPiBmcmFtZSA9IG1fZnJhbWUubG9hZGVyKCkuY2xpZW50KCkuY3JlYXRlRnJhbWUodXJs
LCBuYW1lLCAmb3duZXJFbGVtZW50LCByZWZlcnJlclRvVXNlLCBhbGxvd3NTY3JvbGxpbmcsIG1h
cmdpbldpZHRoLCBtYXJnaW5IZWlnaHQpOworICAgIGF1dG8gZnJhbWUgPSBtX2ZyYW1lLmxvYWRl
cigpLmNsaWVudCgpLmNyZWF0ZUZyYW1lKHVybCwgbmFtZSwgb3duZXJFbGVtZW50LCByZWZlcnJl
clRvVXNlLCBhbGxvd3NTY3JvbGxpbmcsIG1hcmdpbldpZHRoLCBtYXJnaW5IZWlnaHQpOwogCi0g
ICAgbV9mcmFtZS5kb2N1bWVudCgpLT5kZWNyZW1lbnRMb2FkRXZlbnREZWxheUNvdW50KCk7Cisg
ICAgZG9jdW1lbnQtPmRlY3JlbWVudExvYWRFdmVudERlbGF5Q291bnQoKTsKIAogICAgIGlmICgh
ZnJhbWUpICB7CiAgICAgICAgIG1fZnJhbWUubG9hZGVyKCkuY2hlY2tDYWxsSW1wbGljaXRDbG9z
ZSgpOwogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICB9Ci0gICAgCisKICAgICAvLyBBbGwg
bmV3IGZyYW1lcyB3aWxsIGhhdmUgbV9pc0NvbXBsZXRlIHNldCB0byB0cnVlIGF0IHRoaXMgcG9p
bnQgZHVlIHRvIHN5bmNocm9ub3VzbHkgbG9hZGluZwogICAgIC8vIGFuIGVtcHR5IGRvY3VtZW50
IGluIEZyYW1lTG9hZGVyOjppbml0KCkuIEJ1dCBtYW55IGZyYW1lcyB3aWxsIG5vdyBiZSBzdGFy
dGluZyBhbgogICAgIC8vIGFzeW5jaHJvbm91cyBsb2FkIG9mIHVybCwgc28gd2Ugc2V0IG1faXND
b21wbGV0ZSB0byBmYWxzZSBhbmQgdGhlbiBjaGVjayBpZiB0aGUgbG9hZCBpcwpAQCAtMzQwLDEy
ICszNDgsMTIgQEAgRnJhbWUqIFN1YmZyYW1lTG9hZGVyOjpsb2FkU3ViZnJhbWUoSFRNTEZyYW1l
T3duZXJFbGVtZW50JiBvd25lckVsZW1lbnQsIGNvbnN0IFUKICAgICBmcmFtZS0+bG9hZGVyKCku
c3RhcnRlZCgpOwogICAgCiAgICAgYXV0byogcmVuZGVyZXIgPSBvd25lckVsZW1lbnQucmVuZGVy
ZXIoKTsKLSAgICBGcmFtZVZpZXcqIHZpZXcgPSBmcmFtZS0+dmlldygpOworICAgIGF1dG8qIHZp
ZXcgPSBmcmFtZS0+dmlldygpOwogICAgIGlmIChpczxSZW5kZXJXaWRnZXQ+KHJlbmRlcmVyKSAm
JiB2aWV3KQogICAgICAgICBkb3duY2FzdDxSZW5kZXJXaWRnZXQ+KCpyZW5kZXJlcikuc2V0V2lk
Z2V0KHZpZXcpOwotICAgIAorCiAgICAgbV9mcmFtZS5sb2FkZXIoKS5jaGVja0NhbGxJbXBsaWNp
dENsb3NlKCk7Ci0gICAgCisKICAgICAvLyBTb21lIGxvYWRzIGFyZSBwZXJmb3JtZWQgc3luY2hy
b25vdXNseSAoZS5nLiwgYWJvdXQ6YmxhbmsgYW5kIGxvYWRzCiAgICAgLy8gY2FuY2VsbGVkIGJ5
IHJldHVybmluZyBhIG51bGwgUmVzb3VyY2VSZXF1ZXN0IGZyb20gcmVxdWVzdEZyb21EZWxlZ2F0
ZSkuCiAgICAgLy8gSW4gdGhlc2UgY2FzZXMsIHRoZSBzeW5jaHJvbm91cyBsb2FkIHdvdWxkIGhh
dmUgZmluaXNoZWQKQEAgLTM4MSwxNyArMzg5LDE0IEBAIGJvb2wgU3ViZnJhbWVMb2FkZXI6OnNo
b3VsZFVzZVBsdWdpbihjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgYm9v
CiAgICAgcmV0dXJuIG9iamVjdFR5cGUgPT0gT2JqZWN0Q29udGVudFR5cGU6Ok5vbmUgfHwgb2Jq
ZWN0VHlwZSA9PSBPYmplY3RDb250ZW50VHlwZTo6UGx1Z0luOwogfQogCi1Eb2N1bWVudCogU3Vi
ZnJhbWVMb2FkZXI6OmRvY3VtZW50KCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9mcmFtZS5kb2N1
bWVudCgpOwotfQotCiBib29sIFN1YmZyYW1lTG9hZGVyOjpsb2FkUGx1Z2luKEhUTUxQbHVnSW5J
bWFnZUVsZW1lbnQmIHBsdWdpbkVsZW1lbnQsIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcm
IG1pbWVUeXBlLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9y
PFN0cmluZz4mIHBhcmFtVmFsdWVzLCBib29sIHVzZUZhbGxiYWNrKQogewogICAgIGlmICh1c2VG
YWxsYmFjaykKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgUmVuZGVyRW1iZWRkZWRPYmpl
Y3QqIHJlbmRlcmVyID0gcGx1Z2luRWxlbWVudC5yZW5kZXJFbWJlZGRlZE9iamVjdCgpOworICAg
IGF1dG8mIGRvY3VtZW50ID0gcGx1Z2luRWxlbWVudC5kb2N1bWVudCgpOworICAgIGF1dG8qIHJl
bmRlcmVyID0gcGx1Z2luRWxlbWVudC5yZW5kZXJFbWJlZGRlZE9iamVjdCgpOworCiAgICAgLy8g
RklYTUU6IFRoaXMgY29kZSBzaG91bGQgbm90IGRlcGVuZCBvbiByZW5kZXJlciEKICAgICBpZiAo
IXJlbmRlcmVyKQogICAgICAgICByZXR1cm4gZmFsc2U7CkBAIC0zOTksMTcgKzQwNCwxOSBAQCBi
b29sIFN1YmZyYW1lTG9hZGVyOjpsb2FkUGx1Z2luKEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQmIHBs
dWdpbkVsZW1lbnQsIGNvbnN0IFVSTAogICAgIHBsdWdpbkVsZW1lbnQuc3ViZnJhbWVMb2FkZXJX
aWxsQ3JlYXRlUGx1Z0luKHVybCk7CiAKICAgICBJbnRTaXplIGNvbnRlbnRTaXplID0gcm91bmRl
ZEludFNpemUoTGF5b3V0U2l6ZShyZW5kZXJlci0+Y29udGVudFdpZHRoKCksIHJlbmRlcmVyLT5j
b250ZW50SGVpZ2h0KCkpKTsKLSAgICBib29sIGxvYWRNYW51YWxseSA9IGlzPFBsdWdpbkRvY3Vt
ZW50PigqZG9jdW1lbnQoKSkgJiYgIW1fY29udGFpbnNQbHVnaW5zICYmIGRvd25jYXN0PFBsdWdp
bkRvY3VtZW50PigqZG9jdW1lbnQoKSkuc2hvdWxkTG9hZFBsdWdpbk1hbnVhbGx5KCk7CisgICAg
Ym9vbCBsb2FkTWFudWFsbHkgPSBpczxQbHVnaW5Eb2N1bWVudD4oZG9jdW1lbnQpICYmICFtX2Nv
bnRhaW5zUGx1Z2lucyAmJiBkb3duY2FzdDxQbHVnaW5Eb2N1bWVudD4oZG9jdW1lbnQpLnNob3Vs
ZExvYWRQbHVnaW5NYW51YWxseSgpOwogCiAjaWYgUExBVEZPUk0oSU9TKQogICAgIC8vIE9uIGlP
Uywgd2Ugb25seSB0ZWxsIHRoZSBwbHVnaW4gdG8gYmUgaW4gZnVsbCBwYWdlIG1vZGUgaWYgdGhl
IGNvbnRhaW5pbmcgcGx1Z2luIGRvY3VtZW50IGlzIHRoZSB0b3AgbGV2ZWwgZG9jdW1lbnQuCi0g
ICAgaWYgKGRvY3VtZW50KCktPm93bmVyRWxlbWVudCgpKQorICAgIGlmIChkb2N1bWVudC5vd25l
ckVsZW1lbnQoKSkKICAgICAgICAgbG9hZE1hbnVhbGx5ID0gZmFsc2U7CiAjZW5kaWYKIAotICAg
IFdlYWtQdHI8UmVuZGVyV2lkZ2V0PiB3ZWFrUmVuZGVyZXIgPSByZW5kZXJlci0+Y3JlYXRlV2Vh
a1B0cigpOwotICAgIC8vIGNyZWF0ZVBsdWdpbiAqbWF5KiBjYXVzZSB0aGlzIHJlbmRlcmVyIHRv
IGRpc2FwcGVhciBmcm9tIHVuZGVybmVhdGguCi0gICAgUmVmUHRyPFdpZGdldD4gd2lkZ2V0ID0g
bV9mcmFtZS5sb2FkZXIoKS5jbGllbnQoKS5jcmVhdGVQbHVnaW4oY29udGVudFNpemUsICZwbHVn
aW5FbGVtZW50LCB1cmwsIHBhcmFtTmFtZXMsIHBhcmFtVmFsdWVzLCBtaW1lVHlwZSwgbG9hZE1h
bnVhbGx5KTsKKyAgICBhdXRvIHdlYWtSZW5kZXJlciA9IHJlbmRlcmVyLT5jcmVhdGVXZWFrUHRy
KCk7CisKKyAgICBhdXRvIHdpZGdldCA9IG1fZnJhbWUubG9hZGVyKCkuY2xpZW50KCkuY3JlYXRl
UGx1Z2luKGNvbnRlbnRTaXplLCBwbHVnaW5FbGVtZW50LCB1cmwsIHBhcmFtTmFtZXMsIHBhcmFt
VmFsdWVzLCBtaW1lVHlwZSwgbG9hZE1hbnVhbGx5KTsKKworICAgIC8vIFRoZSBjYWxsIHRvIGNy
ZWF0ZVBsdWdpbiAqbWF5KiBjYXVzZSB0aGlzIHJlbmRlcmVyIHRvIGRpc2FwcGVhciBmcm9tIHVu
ZGVybmVhdGguCiAgICAgaWYgKCF3ZWFrUmVuZGVyZXIpCiAgICAgICAgIHJldHVybiBmYWxzZTsK
IApAQCAtNDMzLDkgKzQ0MCw3IEBAIFVSTCBTdWJmcmFtZUxvYWRlcjo6Y29tcGxldGVVUkwoY29u
c3QgU3RyaW5nJiB1cmwpIGNvbnN0CiAKIGJvb2wgU3ViZnJhbWVMb2FkZXI6OnNob3VsZENvbnZl
cnRJbnZhbGlkVVJMc1RvQmxhbmsoKSBjb25zdAogewotICAgIGlmIChTZXR0aW5ncyogc2V0dGlu
Z3MgPSBkb2N1bWVudCgpID8gZG9jdW1lbnQoKS0+c2V0dGluZ3MoKSA6IG51bGxwdHIpCi0gICAg
ICAgIHJldHVybiBzZXR0aW5ncy0+c2hvdWxkQ29udmVydEludmFsaWRVUkxzVG9CbGFuaygpOwot
ICAgIHJldHVybiB0cnVlOworICAgIHJldHVybiBtX2ZyYW1lLnNldHRpbmdzKCkuc2hvdWxkQ29u
dmVydEludmFsaWRVUkxzVG9CbGFuaygpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3ViZnJhbWVMb2FkZXIuaCBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9TdWJmcmFtZUxvYWRlci5oCmluZGV4IDk1MTM5NzRiODE3MDVhZWM2
NWQxNTUwMjMzOTM1ZDRhNTQyM2I3ODUuLjEyYmY3NzE3ZTc0MzIzNWNjYzdkYTdkY2NjMzM3ZDQy
NjkyYWE5NjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJmcmFtZUxvYWRl
ci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJmcmFtZUxvYWRlci5oCkBAIC02MSw3
ICs2MSw3IEBAIHB1YmxpYzoKICAgICBib29sIHJlcXVlc3RPYmplY3QoSFRNTFBsdWdJbkltYWdl
RWxlbWVudCYsIGNvbnN0IFN0cmluZyYgdXJsLCBjb25zdCBBdG9taWNTdHJpbmcmIGZyYW1lTmFt
ZSwKICAgICAgICAgY29uc3QgU3RyaW5nJiBzZXJ2aWNlVHlwZSwgY29uc3QgVmVjdG9yPFN0cmlu
Zz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcyk7CiAKLSAg
ICBQYXNzUmVmUHRyPFdpZGdldD4gY3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXpl
JiwgSFRNTEFwcGxldEVsZW1lbnQmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywg
Y29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKTsKKyAgICBSZWZQdHI8V2lkZ2V0PiBj
cmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmLCBIVE1MQXBwbGV0RWxlbWVudCYs
IGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYg
cGFyYW1WYWx1ZXMpOwogCiAgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBhbGxvd1BsdWdpbnMoKTsK
IApAQCAtNzgsMTQgKzc4LDEyIEBAIHByaXZhdGU6CiAgICAgYm9vbCBzaG91bGRVc2VQbHVnaW4o
Y29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgYm9vbCBoYXNGYWxsYmFjaywgYm9v
bCYgdXNlRmFsbGJhY2spOwogICAgIGJvb2wgcGx1Z2luSXNMb2FkYWJsZShjb25zdCBVUkwmLCBj
b25zdCBTdHJpbmcmIG1pbWVUeXBlKTsKIAotICAgIERvY3VtZW50KiBkb2N1bWVudCgpIGNvbnN0
OworICAgIFVSTCBjb21wbGV0ZVVSTChjb25zdCBTdHJpbmcmKSBjb25zdDsKIAogICAgIGJvb2wg
c2hvdWxkQ29udmVydEludmFsaWRVUkxzVG9CbGFuaygpIGNvbnN0OwogCiAgICAgYm9vbCBtX2Nv
bnRhaW5zUGx1Z2luczsKICAgICBGcmFtZSYgbV9mcmFtZTsKLQotICAgIFVSTCBjb21wbGV0ZVVS
TChjb25zdCBTdHJpbmcmKSBjb25zdDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwCmluZGV4IGI2YTYzNDEw
ZDNlYzY2Zjk1ZTY2MTA1YWFkZjdjMzMyZjliNDQxYTYuLjZlOTdmYTQ5MWY0MmJhNGNlNTI5MjY1
OTE5YjM2YjgzZjUzMWMzNTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJy
ZXNvdXJjZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YnJlc291cmNl
TG9hZGVyLmNwcApAQCAtMjU2LDYgKzI1Niw3IEBAIHZvaWQgU3VicmVzb3VyY2VMb2FkZXI6OmRp
ZFNlbmREYXRhKHVuc2lnbmVkIGxvbmcgbG9uZyBieXRlc1NlbnQsIHVuc2lnbmVkIGxvbmcKIH0K
IAogI2lmIFVTRShRVUlDS19MT09LKQorCiBib29sIFN1YnJlc291cmNlTG9hZGVyOjpzaG91bGRD
cmVhdGVRdWlja0xvb2tIYW5kbGVGb3JSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiBy
ZXNwb25zZSkgY29uc3QKIHsKICAgICBpZiAobV9yZXNvdXJjZS0+dHlwZSgpICE9IENhY2hlZFJl
c291cmNlOjpNYWluUmVzb3VyY2UpCkBAIC0yNjYsNiArMjY3LDcgQEAgYm9vbCBTdWJyZXNvdXJj
ZUxvYWRlcjo6c2hvdWxkQ3JlYXRlUXVpY2tMb29rSGFuZGxlRm9yUmVzcG9uc2UoY29uc3QgUmVz
b3VyY2VSZXMKIAogICAgIHJldHVybiBRdWlja0xvb2tIYW5kbGU6OnNob3VsZENyZWF0ZUZvck1J
TUVUeXBlKHJlc3BvbnNlLm1pbWVUeXBlKCkpOwogfQorCiAjZW5kaWYKIAogdm9pZCBTdWJyZXNv
dXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJl
c3BvbnNlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxp
Y2F0aW9uQ2FjaGUuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0
aW9uQ2FjaGUuY3BwCmluZGV4IDZmODJlMWRjNzk2YTk2MDIwOTFiZDY4MmM5NzQ3YzI0OGI5NTRh
ZDEuLjYwMDljY2E3NzJmZTJiY2E3NjAyYzczMTQ2NzhmZTRhMjQ4YjU5YmQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZS5jcHAKQEAg
LTQzLDE3ICs0MywxMyBAQCBzdGF0aWMgaW5saW5lIGJvb2wgZmFsbGJhY2tVUkxMb25nZXJUaGFu
KGNvbnN0IHN0ZDo6cGFpcjxVUkwsIFVSTD4mIGxocywgY29uc3QgcwogfQogCiBBcHBsaWNhdGlv
bkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlKCkKLSAgICA6IG1fZ3JvdXAobnVsbHB0cikKLSAgICAs
IG1fbWFuaWZlc3QobnVsbHB0cikKLSAgICAsIG1fZXN0aW1hdGVkU2l6ZUluU3RvcmFnZSgwKQot
ICAgICwgbV9zdG9yYWdlSUQoMCkKIHsKIH0KIAogQXBwbGljYXRpb25DYWNoZTo6fkFwcGxpY2F0
aW9uQ2FjaGUoKQogewogICAgIGlmIChtX2dyb3VwKQotICAgICAgICBtX2dyb3VwLT5jYWNoZURl
c3Ryb3llZCh0aGlzKTsKKyAgICAgICAgbV9ncm91cC0+Y2FjaGVEZXN0cm95ZWQoKnRoaXMpOwog
fQogICAgIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlOjpzZXRHcm91cChBcHBsaWNhdGlvbkNhY2hl
R3JvdXAqIGdyb3VwKQpAQCAtNjQsNTcgKzYwLDM5IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZTo6
c2V0R3JvdXAoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCkKIAogYm9vbCBBcHBsaWNhdGlv
bkNhY2hlOjppc0NvbXBsZXRlKCkKIHsKLSAgICByZXR1cm4gbV9ncm91cCAmJiBtX2dyb3VwLT5j
YWNoZUlzQ29tcGxldGUodGhpcyk7CisgICAgcmV0dXJuIG1fZ3JvdXAgJiYgbV9ncm91cC0+Y2Fj
aGVJc0NvbXBsZXRlKCp0aGlzKTsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlOjpzZXRNYW5p
ZmVzdFJlc291cmNlKFBhc3NSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiBtYW5pZmVz
dCkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZTo6c2V0TWFuaWZlc3RSZXNvdXJjZShSZWY8QXBwbGlj
YXRpb25DYWNoZVJlc291cmNlPiYmIG1hbmlmZXN0KQogewotICAgIEFTU0VSVChtYW5pZmVzdCk7
CiAgICAgQVNTRVJUKCFtX21hbmlmZXN0KTsKICAgICBBU1NFUlQobWFuaWZlc3QtPnR5cGUoKSAm
IEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6TWFuaWZlc3QpOwotICAgIAotICAgIG1fbWFuaWZl
c3QgPSBtYW5pZmVzdC5nZXQoKTsKLSAgICAKLSAgICBhZGRSZXNvdXJjZShtYW5pZmVzdCk7CisK
KyAgICBtX21hbmlmZXN0ID0gbWFuaWZlc3QucHRyKCk7CisKKyAgICBhZGRSZXNvdXJjZShXVEZN
b3ZlKG1hbmlmZXN0KSk7CiB9CiAgICAgCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGU6OmFkZFJlc291
cmNlKFBhc3NSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiByZXNvdXJjZSkKK3ZvaWQg
QXBwbGljYXRpb25DYWNoZTo6YWRkUmVzb3VyY2UoUmVmPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJj
ZT4mJiByZXNvdXJjZSkKIHsKLSAgICBBU1NFUlQocmVzb3VyY2UpOwotICAgIAotICAgIGNvbnN0
IFN0cmluZyYgdXJsID0gcmVzb3VyY2UtPnVybCgpOwotICAgIAorICAgIGF1dG8mIHVybCA9IHJl
c291cmNlLT51cmwoKTsKKworICAgIEFTU0VSVCghVVJMKFBhcnNlZFVSTFN0cmluZywgdXJsKS5o
YXNGcmFnbWVudElkZW50aWZpZXIoKSk7CiAgICAgQVNTRVJUKCFtX3Jlc291cmNlcy5jb250YWlu
cyh1cmwpKTsKLSAgICAKKwogICAgIGlmIChtX3N0b3JhZ2VJRCkgewogICAgICAgICBBU1NFUlQo
IXJlc291cmNlLT5zdG9yYWdlSUQoKSk7CiAgICAgICAgIEFTU0VSVChyZXNvdXJjZS0+dHlwZSgp
ICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIpOwotICAgICAgICAKKwogICAgICAg
ICAvLyBBZGQgdGhlIHJlc291cmNlIHRvIHRoZSBzdG9yYWdlLgotICAgICAgICBtX2dyb3VwLT5z
dG9yYWdlKCkuc3RvcmUocmVzb3VyY2UuZ2V0KCksIHRoaXMpOworICAgICAgICBtX2dyb3VwLT5z
dG9yYWdlKCkuc3RvcmUocmVzb3VyY2UucHRyKCksIHRoaXMpOwogICAgIH0KIAogICAgIG1fZXN0
aW1hdGVkU2l6ZUluU3RvcmFnZSArPSByZXNvdXJjZS0+ZXN0aW1hdGVkU2l6ZUluU3RvcmFnZSgp
OwogCi0gICAgbV9yZXNvdXJjZXMuc2V0KHVybCwgcmVzb3VyY2UpOworICAgIG1fcmVzb3VyY2Vz
LnNldCh1cmwsIFdURk1vdmUocmVzb3VyY2UpKTsKIH0KIAotdW5zaWduZWQgQXBwbGljYXRpb25D
YWNoZTo6cmVtb3ZlUmVzb3VyY2UoY29uc3QgU3RyaW5nJiB1cmwpCi17Ci0gICAgSGFzaE1hcDxT
dHJpbmcsIFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+Pjo6aXRlcmF0b3IgaXQgPSBt
X3Jlc291cmNlcy5maW5kKHVybCk7Ci0gICAgaWYgKGl0ID09IG1fcmVzb3VyY2VzLmVuZCgpKQot
ICAgICAgICByZXR1cm4gMDsKLQotICAgIC8vIFRoZSByZXNvdXJjZSBleGlzdHMsIGdldCBpdHMg
dHlwZSBzbyB3ZSBjYW4gcmV0dXJuIGl0LgotICAgIHVuc2lnbmVkIHR5cGUgPSBpdC0+dmFsdWUt
PnR5cGUoKTsKLQotICAgIG1fZXN0aW1hdGVkU2l6ZUluU3RvcmFnZSAtPSBpdC0+dmFsdWUtPmVz
dGltYXRlZFNpemVJblN0b3JhZ2UoKTsKLQotICAgIG1fcmVzb3VyY2VzLnJlbW92ZShpdCk7Ci0K
LSAgICByZXR1cm4gdHlwZTsKLX0gICAgCi0gICAgCiBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2Uq
IEFwcGxpY2F0aW9uQ2FjaGU6OnJlc291cmNlRm9yVVJMKGNvbnN0IFN0cmluZyYgdXJsKQogewog
ICAgIEFTU0VSVCghVVJMKFBhcnNlZFVSTFN0cmluZywgdXJsKS5oYXNGcmFnbWVudElkZW50aWZp
ZXIoKSk7CkBAIC0xMzMsOSArMTExLDcgQEAgQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiBBcHBs
aWNhdGlvbkNhY2hlOjpyZXNvdXJjZUZvclJlcXVlc3QoY29uc3QgUmVzb3VyY2VSZXEKICAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CiAKICAgICBVUkwgdXJsKHJlcXVlc3QudXJsKCkpOwotICAgIGlm
ICh1cmwuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkpCi0gICAgICAgIHVybC5yZW1vdmVGcmFnbWVu
dElkZW50aWZpZXIoKTsKLQorICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKICAg
ICByZXR1cm4gcmVzb3VyY2VGb3JVUkwodXJsKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGUuaCBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlLmgKaW5kZXggNzYxNzY2MjBmY2Q2ZmEz
OWFkMmE1YzM5NjFiYWMyM2IxN2E3YzAyNS4uOWE0NThjNzEwYzRhZDAxOWIxMzVmZjE0NjcwMDZk
ZjgwOTQ4MTdmYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0Fw
cGxpY2F0aW9uQ2FjaGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBw
bGljYXRpb25DYWNoZS5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAw
OCBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgt
MjAxNyBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKQEAgLTI2LDM1ICsyNiwyOCBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRl
IDx3dGYvSGFzaE1hcC5oPgotI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+Ci0jaW5jbHVkZSA8d3Rm
L1Bhc3NSZWZQdHIuaD4KLSNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgogI2luY2x1ZGUgPHd0
Zi90ZXh0L1N0cmluZ0hhc2guaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAog
bmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlR3JvdXA7CiBjbGFz
cyBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U7Ci1jbGFzcyBEb2N1bWVudExvYWRlcjsKIGNsYXNz
IFVSTDsKIGNsYXNzIFJlc291cmNlUmVxdWVzdDsKLWNsYXNzIFNlY3VyaXR5T3JpZ2luOwogCi10
eXBlZGVmIFZlY3RvcjxzdGQ6OnBhaXI8VVJMLCBVUkw+PiBGYWxsYmFja1VSTFZlY3RvcjsKK3Vz
aW5nIEZhbGxiYWNrVVJMVmVjdG9yID0gVmVjdG9yPHN0ZDo6cGFpcjxVUkwsIFVSTD4+OwogCiBj
bGFzcyBBcHBsaWNhdGlvbkNhY2hlIDogcHVibGljIFJlZkNvdW50ZWQ8QXBwbGljYXRpb25DYWNo
ZT4gewogcHVibGljOgogICAgIHN0YXRpYyBSZWY8QXBwbGljYXRpb25DYWNoZT4gY3JlYXRlKCkg
eyByZXR1cm4gYWRvcHRSZWYoKm5ldyBBcHBsaWNhdGlvbkNhY2hlKTsgfQotICAgIAorCiAgICAg
fkFwcGxpY2F0aW9uQ2FjaGUoKTsKIAotICAgIHZvaWQgYWRkUmVzb3VyY2UoUGFzc1JlZlB0cjxB
cHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+IHJlc291cmNlKTsKLSAgICB1bnNpZ25lZCByZW1vdmVS
ZXNvdXJjZShjb25zdCBTdHJpbmcmIHVybCk7Ci0gICAgCi0gICAgdm9pZCBzZXRNYW5pZmVzdFJl
c291cmNlKFBhc3NSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiBtYW5pZmVzdCk7Cisg
ICAgdm9pZCBhZGRSZXNvdXJjZShSZWY8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiYmKTsKKwor
ICAgIHZvaWQgc2V0TWFuaWZlc3RSZXNvdXJjZShSZWY8QXBwbGljYXRpb25DYWNoZVJlc291cmNl
PiYmKTsKICAgICBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqIG1hbmlmZXN0UmVzb3VyY2UoKSBj
b25zdCB7IHJldHVybiBtX21hbmlmZXN0OyB9Ci0gICAgCisKICAgICB2b2lkIHNldEdyb3VwKEFw
cGxpY2F0aW9uQ2FjaGVHcm91cCopOwogICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAo
KSBjb25zdCB7IHJldHVybiBtX2dyb3VwOyB9CiAKQEAgLTcyLDM5ICs2NSwzOCBAQCBwdWJsaWM6
CiAgICAgdm9pZCBzZXRGYWxsYmFja1VSTHMoY29uc3QgRmFsbGJhY2tVUkxWZWN0b3ImKTsKICAg
ICBjb25zdCBGYWxsYmFja1VSTFZlY3RvciYgZmFsbGJhY2tVUkxzKCkgY29uc3QgeyByZXR1cm4g
bV9mYWxsYmFja1VSTHM7IH0KICAgICBib29sIHVybE1hdGNoZXNGYWxsYmFja05hbWVzcGFjZShj
b25zdCBVUkwmLCBVUkwqIGZhbGxiYWNrVVJMID0gbnVsbHB0cik7Ci0gICAgCisKICNpZm5kZWYg
TkRFQlVHCiAgICAgdm9pZCBkdW1wKCk7CiAjZW5kaWYKIAotICAgIHR5cGVkZWYgSGFzaE1hcDxT
dHJpbmcsIFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+PiBSZXNvdXJjZU1hcDsKKyAg
ICB1c2luZyBSZXNvdXJjZU1hcCA9IEhhc2hNYXA8U3RyaW5nLCBSZWZQdHI8QXBwbGljYXRpb25D
YWNoZVJlc291cmNlPj47CiAgICAgY29uc3QgUmVzb3VyY2VNYXAmIHJlc291cmNlcygpIGNvbnN0
IHsgcmV0dXJuIG1fcmVzb3VyY2VzOyB9Ci0gICAgCisKICAgICB2b2lkIHNldFN0b3JhZ2VJRCh1
bnNpZ25lZCBzdG9yYWdlSUQpIHsgbV9zdG9yYWdlSUQgPSBzdG9yYWdlSUQ7IH0KICAgICB1bnNp
Z25lZCBzdG9yYWdlSUQoKSBjb25zdCB7IHJldHVybiBtX3N0b3JhZ2VJRDsgfQogICAgIHZvaWQg
Y2xlYXJTdG9yYWdlSUQoKTsKLSAgICAKKwogICAgIHN0YXRpYyBib29sIHJlcXVlc3RJc0hUVFBP
ckhUVFBTR2V0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYpOwogCiAgICAgaW50NjRfdCBlc3RpbWF0
ZWRTaXplSW5TdG9yYWdlKCkgY29uc3QgeyByZXR1cm4gbV9lc3RpbWF0ZWRTaXplSW5TdG9yYWdl
OyB9CiAKIHByaXZhdGU6CiAgICAgQXBwbGljYXRpb25DYWNoZSgpOwotICAgIAotICAgIEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cCogbV9ncm91cDsKKworICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCog
bV9ncm91cCB7IG51bGxwdHIgfTsKICAgICBSZXNvdXJjZU1hcCBtX3Jlc291cmNlczsKLSAgICBB
cHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqIG1fbWFuaWZlc3Q7CisgICAgQXBwbGljYXRpb25DYWNo
ZVJlc291cmNlKiBtX21hbmlmZXN0IHsgbnVsbHB0ciB9OwogCi0gICAgYm9vbCBtX2FsbG93QWxs
TmV0d29ya1JlcXVlc3RzOworICAgIGJvb2wgbV9hbGxvd0FsbE5ldHdvcmtSZXF1ZXN0cyB7IGZh
bHNlIH07CiAgICAgVmVjdG9yPFVSTD4gbV9vbmxpbmVXaGl0ZWxpc3Q7CiAgICAgRmFsbGJhY2tV
UkxWZWN0b3IgbV9mYWxsYmFja1VSTHM7CiAKICAgICAvLyBUaGUgdG90YWwgc2l6ZSBvZiB0aGUg
cmVzb3VyY2VzIGJlbG9uZ2luZyB0byB0aGlzIEFwcGxpY2F0aW9uIENhY2hlIGluc3RhbmNlLgot
ICAgIC8vIFRoaXMgaXMgYW4gZXN0aW1hdGlvbiBvZiB0aGUgc2l6ZSB0aGlzIEFwcGxpY2F0aW9u
IENhY2hlIG9jY3VwaWVzIGluIHRoZQotICAgIC8vIGRhdGFiYXNlIGZpbGUuCi0gICAgaW50NjRf
dCBtX2VzdGltYXRlZFNpemVJblN0b3JhZ2U7CisgICAgLy8gVGhpcyBpcyBhbiBlc3RpbWF0aW9u
IG9mIHRoZSBzaXplIHRoaXMgQXBwbGljYXRpb24gQ2FjaGUgb2NjdXBpZXMgaW4gdGhlIGRhdGFi
YXNlIGZpbGUuCisgICAgaW50NjRfdCBtX2VzdGltYXRlZFNpemVJblN0b3JhZ2UgeyAwIH07CiAK
LSAgICB1bnNpZ25lZCBtX3N0b3JhZ2VJRDsKKyAgICB1bnNpZ25lZCBtX3N0b3JhZ2VJRCB7IDAg
fTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuY3BwIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5jcHAKaW5kZXggODZl
OWE1YTg4NDkwN2NkZDNkNDZhZmNjZGUwM2Y4ZDNmYTA5ODUzYS4uOTg4MWIyNWU1YWNiMGZlOTY0
MjVmNjdhZGIzNDMxODQxNDdiZTA4ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5jcHAKQEAgLTEsNSArMSw1IEBA
CiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA4LCAyMDA5LCAyMDEwIEFwcGxlIEluYy4gQWxsIFJp
Z2h0cyBSZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOC0yMDE3IEFwcGxlIEluYy4gQWxs
IFJpZ2h0cyBSZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMzQs
NiArMzQsNyBAQAogI2luY2x1ZGUgIkNocm9tZUNsaWVudC5oIgogI2luY2x1ZGUgIkRPTUFwcGxp
Y2F0aW9uQ2FjaGUuaCIKICNpbmNsdWRlICJEb2N1bWVudExvYWRlci5oIgorI2luY2x1ZGUgIkV2
ZW50TmFtZXMuaCIKICNpbmNsdWRlICJGcmFtZS5oIgogI2luY2x1ZGUgIkZyYW1lTG9hZGVyLmgi
CiAjaW5jbHVkZSAiRnJhbWVMb2FkZXJDbGllbnQuaCIKQEAgLTU0LDE3ICs1NSw3IEBAIEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cDo6QXBwbGljYXRpb25DYWNoZUdyb3VwKFJlZjxBcHBsaWNhdGlvbkNh
Y2hlU3RvcmFnZT4mJiBzdG9yCiAgICAgOiBtX3N0b3JhZ2UoV1RGTW92ZShzdG9yYWdlKSkKICAg
ICAsIG1fbWFuaWZlc3RVUkwobWFuaWZlc3RVUkwpCiAgICAgLCBtX29yaWdpbihTZWN1cml0eU9y
aWdpbjo6Y3JlYXRlKG1hbmlmZXN0VVJMKSkKLSAgICAsIG1fdXBkYXRlU3RhdHVzKElkbGUpCi0g
ICAgLCBtX2Rvd25sb2FkaW5nUGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVyc0NvdW50KDApCi0g
ICAgLCBtX3Byb2dyZXNzVG90YWwoMCkKLSAgICAsIG1fcHJvZ3Jlc3NEb25lKDApCi0gICAgLCBt
X2ZyYW1lKG51bGxwdHIpCi0gICAgLCBtX3N0b3JhZ2VJRCgwKQotICAgICwgbV9pc09ic29sZXRl
KGZhbHNlKQotICAgICwgbV9jb21wbGV0aW9uVHlwZShOb25lKQotICAgICwgbV9jYWxsZWRSZWFj
aGVkTWF4QXBwQ2FjaGVTaXplKGZhbHNlKQogICAgICwgbV9hdmFpbGFibGVTcGFjZUluUXVvdGEo
QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OnVua25vd25RdW90YSgpKQotICAgICwgbV9vcmlnaW5R
dW90YUV4Y2VlZGVkUHJldmlvdXNseShmYWxzZSkKIHsKIH0KIApAQCAtNzIsMTAgKzYzLDEwIEBA
IEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6fkFwcGxpY2F0aW9uQ2FjaGVHcm91cCgpCiB7CiAgICAg
QVNTRVJUKCFtX25ld2VzdENhY2hlKTsKICAgICBBU1NFUlQobV9jYWNoZXMuaXNFbXB0eSgpKTsK
LSAgICAKKwogICAgIHN0b3BMb2FkaW5nKCk7CiAKLSAgICBtX3N0b3JhZ2UtPmNhY2hlR3JvdXBE
ZXN0cm95ZWQodGhpcyk7CisgICAgbV9zdG9yYWdlLT5jYWNoZUdyb3VwRGVzdHJveWVkKCp0aGlz
KTsKIH0KICAgICAKIEFwcGxpY2F0aW9uQ2FjaGUqIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6Y2Fj
aGVGb3JNYWluUmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIERvY3VtZW50
TG9hZGVyKiBkb2N1bWVudExvYWRlcikKQEAgLTg0LDIxICs3NSwyMCBAQCBBcHBsaWNhdGlvbkNh
Y2hlKiBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNhY2hlRm9yTWFpblJlcXVlc3QoY29uc3QgUmVz
b3VyY2VSZXF1ZQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAogICAgIFVSTCB1cmwocmVxdWVz
dC51cmwoKSk7Ci0gICAgaWYgKHVybC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSkKLSAgICAgICAg
dXJsLnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpOworICAgIHVybC5yZW1vdmVGcmFnbWVudElk
ZW50aWZpZXIoKTsKIAogICAgIGF1dG8qIHBhZ2UgPSBkb2N1bWVudExvYWRlci0+ZnJhbWUoKSA/
IGRvY3VtZW50TG9hZGVyLT5mcmFtZSgpLT5wYWdlKCkgOiBudWxscHRyOwogICAgIGlmICghcGFn
ZSB8fCBwYWdlLT51c2VzRXBoZW1lcmFsU2Vzc2lvbigpKQogICAgICAgICByZXR1cm4gbnVsbHB0
cjsKIAotICAgIGlmIChBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwID0gcGFnZS0+YXBwbGlj
YXRpb25DYWNoZVN0b3JhZ2UoKS5jYWNoZUdyb3VwRm9yVVJMKHVybCkpIHsKLSAgICAgICAgQVNT
RVJUKGdyb3VwLT5uZXdlc3RDYWNoZSgpKTsKLSAgICAgICAgQVNTRVJUKCFncm91cC0+aXNPYnNv
bGV0ZSgpKTsKLSAgICAgICAgCi0gICAgICAgIHJldHVybiBncm91cC0+bmV3ZXN0Q2FjaGUoKTsK
LSAgICB9Ci0gICAgCi0gICAgcmV0dXJuIG51bGxwdHI7CisgICAgYXV0byogZ3JvdXAgPSBwYWdl
LT5hcHBsaWNhdGlvbkNhY2hlU3RvcmFnZSgpLmNhY2hlR3JvdXBGb3JVUkwodXJsKTsKKyAgICBp
ZiAoIWdyb3VwKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIEFTU0VSVChncm91cC0+
bmV3ZXN0Q2FjaGUoKSk7CisgICAgQVNTRVJUKCFncm91cC0+aXNPYnNvbGV0ZSgpKTsKKworICAg
IHJldHVybiBncm91cC0+bmV3ZXN0Q2FjaGUoKTsKIH0KICAgICAKIEFwcGxpY2F0aW9uQ2FjaGUq
IEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZmFsbGJhY2tDYWNoZUZvck1haW5SZXF1ZXN0KGNvbnN0
IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRG9jdW1lbnRMb2FkZXIqIGRvY3VtZW50TG9hZGVy
KQpAQCAtMTA2LDgxICs5Niw4NyBAQCBBcHBsaWNhdGlvbkNhY2hlKiBBcHBsaWNhdGlvbkNhY2hl
R3JvdXA6OmZhbGxiYWNrQ2FjaGVGb3JNYWluUmVxdWVzdChjb25zdCBSZXNvdQogICAgIGlmICgh
QXBwbGljYXRpb25DYWNoZTo6cmVxdWVzdElzSFRUUE9ySFRUUFNHZXQocmVxdWVzdCkpCiAgICAg
ICAgIHJldHVybiBudWxscHRyOwogCi0gICAgVVJMIHVybChyZXF1ZXN0LnVybCgpKTsKLSAgICBp
ZiAodXJsLmhhc0ZyYWdtZW50SWRlbnRpZmllcigpKQotICAgICAgICB1cmwucmVtb3ZlRnJhZ21l
bnRJZGVudGlmaWVyKCk7CisgICAgYXV0byogZnJhbWUgPSBkb2N1bWVudExvYWRlci0+ZnJhbWUo
KTsKKyAgICBpZiAoIWZyYW1lKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAotICAgIGF1dG8q
IHBhZ2UgPSBkb2N1bWVudExvYWRlci0+ZnJhbWUoKSA/IGRvY3VtZW50TG9hZGVyLT5mcmFtZSgp
LT5wYWdlKCkgOiBudWxscHRyOworICAgIGF1dG8qIHBhZ2UgPSBmcmFtZS0+cGFnZSgpOwogICAg
IGlmICghcGFnZSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKLSAgICBpZiAoQXBwbGljYXRp
b25DYWNoZUdyb3VwKiBncm91cCA9IHBhZ2UtPmFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlKCkuZmFs
bGJhY2tDYWNoZUdyb3VwRm9yVVJMKHVybCkpIHsKLSAgICAgICAgQVNTRVJUKGdyb3VwLT5uZXdl
c3RDYWNoZSgpKTsKLSAgICAgICAgQVNTRVJUKCFncm91cC0+aXNPYnNvbGV0ZSgpKTsKKyAgICBV
UkwgdXJsKHJlcXVlc3QudXJsKCkpOworICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIo
KTsKIAotICAgICAgICByZXR1cm4gZ3JvdXAtPm5ld2VzdENhY2hlKCk7Ci0gICAgfQotICAgIAot
ICAgIHJldHVybiBudWxscHRyOworICAgIGF1dG8qIGdyb3VwID0gcGFnZS0+YXBwbGljYXRpb25D
YWNoZVN0b3JhZ2UoKS5mYWxsYmFja0NhY2hlR3JvdXBGb3JVUkwodXJsKTsKKyAgICBpZiAoIWdy
b3VwKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIEFTU0VSVChncm91cC0+bmV3ZXN0
Q2FjaGUoKSk7CisgICAgQVNTRVJUKCFncm91cC0+aXNPYnNvbGV0ZSgpKTsKKworICAgIHJldHVy
biBncm91cC0+bmV3ZXN0Q2FjaGUoKTsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
OnNlbGVjdENhY2hlKEZyYW1lKiBmcmFtZSwgY29uc3QgVVJMJiBwYXNzZWRNYW5pZmVzdFVSTCkK
K3ZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZWxlY3RDYWNoZShGcmFtZSYgZnJhbWUsIGNv
bnN0IFVSTCYgcGFzc2VkTWFuaWZlc3RVUkwpCiB7Ci0gICAgQVNTRVJUKGZyYW1lICYmIGZyYW1l
LT5wYWdlKCkpOwotICAgIAotICAgIGlmICghZnJhbWUtPnNldHRpbmdzKCkub2ZmbGluZVdlYkFw
cGxpY2F0aW9uQ2FjaGVFbmFibGVkKCkpCisgICAgQVNTRVJUKGZyYW1lLmRvY3VtZW50KCkpOwor
ICAgIEFTU0VSVChmcmFtZS5wYWdlKCkpOworICAgIEFTU0VSVChmcmFtZS5sb2FkZXIoKS5kb2N1
bWVudExvYWRlcigpKTsKKworICAgIGlmICghZnJhbWUuc2V0dGluZ3MoKS5vZmZsaW5lV2ViQXBw
bGljYXRpb25DYWNoZUVuYWJsZWQoKSkKICAgICAgICAgcmV0dXJuOwotICAgIAotICAgIERvY3Vt
ZW50TG9hZGVyKiBkb2N1bWVudExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRl
cigpOwotICAgIEFTU0VSVCghZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkt
PmFwcGxpY2F0aW9uQ2FjaGUoKSk7CisKKyAgICBhdXRvJiBkb2N1bWVudExvYWRlciA9ICpmcmFt
ZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOworICAgIEFTU0VSVCghZG9jdW1lbnRMb2FkZXIu
YXBwbGljYXRpb25DYWNoZUhvc3QoKS5hcHBsaWNhdGlvbkNhY2hlKCkpOwogCiAgICAgaWYgKHBh
c3NlZE1hbmlmZXN0VVJMLmlzTnVsbCgpKSB7Ci0gICAgICAgIHNlbGVjdENhY2hlV2l0aG91dE1h
bmlmZXN0VVJMKGZyYW1lKTsgICAgICAgIAorICAgICAgICBzZWxlY3RDYWNoZVdpdGhvdXRNYW5p
ZmVzdFVSTChmcmFtZSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKICAgICAvLyBEb24ndCBh
Y2Nlc3MgYW55dGhpbmcgb24gZGlzayBpZiBwcml2YXRlIGJyb3dzaW5nIGlzIGVuYWJsZWQuCi0g
ICAgaWYgKGZyYW1lLT5wYWdlKCktPnVzZXNFcGhlbWVyYWxTZXNzaW9uKCkgfHwgIWZyYW1lLT5k
b2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5jYW5BY2Nlc3NBcHBsaWNhdGlvbkNhY2hlKGZy
YW1lLT50cmVlKCkudG9wKCkuZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSkpIHsKLSAgICAg
ICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q0hFQ0tJTkdfRVZFTlQs
IGRvY3VtZW50TG9hZGVyKTsKLSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNh
Y2hlSG9zdDo6RVJST1JfRVZFTlQsIGRvY3VtZW50TG9hZGVyKTsKKyAgICBpZiAoZnJhbWUucGFn
ZSgpLT51c2VzRXBoZW1lcmFsU2Vzc2lvbigpIHx8ICFmcmFtZS5kb2N1bWVudCgpLT5zZWN1cml0
eU9yaWdpbigpLT5jYW5BY2Nlc3NBcHBsaWNhdGlvbkNhY2hlKGZyYW1lLnRyZWUoKS50b3AoKS5k
b2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpKSkgeworICAgICAgICBwb3N0TGlzdGVuZXJUYXNr
KGV2ZW50TmFtZXMoKS5jaGVja2luZ0V2ZW50LCBkb2N1bWVudExvYWRlcik7CisgICAgICAgIHBv
c3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmVycm9yRXZlbnQsIGRvY3VtZW50TG9hZGVyKTsK
ICAgICAgICAgcmV0dXJuOwogICAgIH0KIAogICAgIFVSTCBtYW5pZmVzdFVSTChwYXNzZWRNYW5p
ZmVzdFVSTCk7Ci0gICAgaWYgKG1hbmlmZXN0VVJMLmhhc0ZyYWdtZW50SWRlbnRpZmllcigpKQot
ICAgICAgICBtYW5pZmVzdFVSTC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKKyAgICBtYW5p
ZmVzdFVSTC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKIAotICAgIEFwcGxpY2F0aW9uQ2Fj
aGUqIG1haW5SZXNvdXJjZUNhY2hlID0gZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVI
b3N0KCktPm1haW5SZXNvdXJjZUFwcGxpY2F0aW9uQ2FjaGUoKTsKKyAgICBhdXRvKiBtYWluUmVz
b3VyY2VDYWNoZSA9IGRvY3VtZW50TG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWFpblJl
c291cmNlQXBwbGljYXRpb25DYWNoZSgpOwogICAgIAogICAgIGlmIChtYWluUmVzb3VyY2VDYWNo
ZSkgeworICAgICAgICBBU1NFUlQobWFpblJlc291cmNlQ2FjaGUtPmdyb3VwKCkpOwogICAgICAg
ICBpZiAobWFuaWZlc3RVUkwgPT0gbWFpblJlc291cmNlQ2FjaGUtPmdyb3VwKCktPm1fbWFuaWZl
c3RVUkwpIHsKICAgICAgICAgICAgIC8vIFRoZSBjYWNoZSBtYXkgaGF2ZSBnb3R0ZW4gb2Jzb2xl
dGVkIGFmdGVyIHdlJ3ZlIGxvYWRlZCBmcm9tIGl0LCBidXQgYmVmb3JlIHdlIHBhcnNlZCB0aGUg
ZG9jdW1lbnQgYW5kIHNhdyBjYWNoZSBtYW5pZmVzdC4KICAgICAgICAgICAgIGlmIChtYWluUmVz
b3VyY2VDYWNoZS0+Z3JvdXAoKS0+aXNPYnNvbGV0ZSgpKQogICAgICAgICAgICAgICAgIHJldHVy
bjsKLSAgICAgICAgICAgIG1haW5SZXNvdXJjZUNhY2hlLT5ncm91cCgpLT5hc3NvY2lhdGVEb2N1
bWVudExvYWRlcldpdGhDYWNoZShkb2N1bWVudExvYWRlciwgbWFpblJlc291cmNlQ2FjaGUpOwor
ICAgICAgICAgICAgbWFpblJlc291cmNlQ2FjaGUtPmdyb3VwKCktPmFzc29jaWF0ZURvY3VtZW50
TG9hZGVyV2l0aENhY2hlKCZkb2N1bWVudExvYWRlciwgbWFpblJlc291cmNlQ2FjaGUpOwogICAg
ICAgICAgICAgbWFpblJlc291cmNlQ2FjaGUtPmdyb3VwKCktPnVwZGF0ZShmcmFtZSwgQXBwbGlj
YXRpb25DYWNoZVVwZGF0ZVdpdGhCcm93c2luZ0NvbnRleHQpOwogICAgICAgICB9IGVsc2Ugewog
ICAgICAgICAgICAgLy8gVGhlIG1haW4gcmVzb3VyY2Ugd2FzIGxvYWRlZCBmcm9tIGNhY2hlLCBz
byB0aGUgY2FjaGUgbXVzdCBoYXZlIGFuIGVudHJ5IGZvciBpdC4gTWFyayBpdCBhcyBmb3JlaWdu
LgotICAgICAgICAgICAgVVJMIHJlc291cmNlVVJMKGRvY3VtZW50TG9hZGVyLT5yZXNwb25zZVVS
TCgpKTsKLSAgICAgICAgICAgIGlmIChyZXNvdXJjZVVSTC5oYXNGcmFnbWVudElkZW50aWZpZXIo
KSkKLSAgICAgICAgICAgICAgICByZXNvdXJjZVVSTC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIo
KTsKLSAgICAgICAgICAgIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSogcmVzb3VyY2UgPSBtYWlu
UmVzb3VyY2VDYWNoZS0+cmVzb3VyY2VGb3JVUkwocmVzb3VyY2VVUkwpOwotICAgICAgICAgICAg
Ym9vbCBpblN0b3JhZ2UgPSByZXNvdXJjZS0+c3RvcmFnZUlEKCk7Ci0gICAgICAgICAgICByZXNv
dXJjZS0+YWRkVHlwZShBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6OkZvcmVpZ24pOworICAgICAg
ICAgICAgVVJMIHJlc291cmNlVVJMIHsgZG9jdW1lbnRMb2FkZXIucmVzcG9uc2VVUkwoKSB9Owor
ICAgICAgICAgICAgcmVzb3VyY2VVUkwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CisKKyAg
ICAgICAgICAgIEFTU0VSVChtYWluUmVzb3VyY2VDYWNoZS0+cmVzb3VyY2VGb3JVUkwocmVzb3Vy
Y2VVUkwpKTsKKyAgICAgICAgICAgIGF1dG8mIHJlc291cmNlID0gKm1haW5SZXNvdXJjZUNhY2hl
LT5yZXNvdXJjZUZvclVSTChyZXNvdXJjZVVSTCk7CisKKyAgICAgICAgICAgIGJvb2wgaW5TdG9y
YWdlID0gcmVzb3VyY2Uuc3RvcmFnZUlEKCk7CisgICAgICAgICAgICByZXNvdXJjZS5hZGRUeXBl
KEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6Rm9yZWlnbik7CiAgICAgICAgICAgICBpZiAoaW5T
dG9yYWdlKQotICAgICAgICAgICAgICAgIGZyYW1lLT5wYWdlKCktPmFwcGxpY2F0aW9uQ2FjaGVT
dG9yYWdlKCkuc3RvcmVVcGRhdGVkVHlwZShyZXNvdXJjZSwgbWFpblJlc291cmNlQ2FjaGUpOwor
ICAgICAgICAgICAgICAgIGZyYW1lLnBhZ2UoKS0+YXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKS5z
dG9yZVVwZGF0ZWRUeXBlKCZyZXNvdXJjZSwgbWFpblJlc291cmNlQ2FjaGUpOwogCiAgICAgICAg
ICAgICAvLyBSZXN0YXJ0IHRoZSBjdXJyZW50IG5hdmlnYXRpb24gZnJvbSB0aGUgdG9wIG9mIHRo
ZSBuYXZpZ2F0aW9uIGFsZ29yaXRobSwgdW5kb2luZyBhbnkgY2hhbmdlcyB0aGF0IHdlcmUgbWFk
ZQogICAgICAgICAgICAgLy8gYXMgcGFydCBvZiB0aGUgaW5pdGlhbCBsb2FkLgogICAgICAgICAg
ICAgLy8gVGhlIG5hdmlnYXRpb24gd2lsbCBub3QgcmVzdWx0IGluIHRoZSBzYW1lIHJlc291cmNl
IGJlaW5nIGxvYWRlZCwgYmVjYXVzZSAiZm9yZWlnbiIgZW50cmllcyBhcmUgbmV2ZXIgcGlja2Vk
IGR1cmluZyBuYXZpZ2F0aW9uLgotICAgICAgICAgICAgZnJhbWUtPm5hdmlnYXRpb25TY2hlZHVs
ZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKGZyYW1lLT5kb2N1bWVudCgpLCBmcmFtZS0+ZG9j
dW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSwgZG9jdW1lbnRMb2FkZXItPnVybCgpLCBmcmFtZS0+
bG9hZGVyKCkucmVmZXJyZXIoKSk7CisgICAgICAgICAgICBmcmFtZS5uYXZpZ2F0aW9uU2NoZWR1
bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZSgqZnJhbWUuZG9jdW1lbnQoKSwgZnJhbWUuZG9j
dW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSwgZG9jdW1lbnRMb2FkZXIudXJsKCksIGZyYW1lLmxv
YWRlcigpLnJlZmVycmVyKCkpOwogICAgICAgICB9Ci0gICAgICAgIAogICAgICAgICByZXR1cm47
CiAgICAgfQotICAgIAorCiAgICAgLy8gVGhlIHJlc291cmNlIHdhcyBsb2FkZWQgZnJvbSB0aGUg
bmV0d29yaywgY2hlY2sgaWYgaXQgaXMgYSBIVFRQL0hUVFBTIEdFVC4gICAgCi0gICAgY29uc3Qg
UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0ID0gZnJhbWUtPmxvYWRlcigpLmFjdGl2ZURvY3VtZW50
TG9hZGVyKCktPnJlcXVlc3QoKTsKKyAgICBhdXRvJiByZXF1ZXN0ID0gZnJhbWUubG9hZGVyKCku
YWN0aXZlRG9jdW1lbnRMb2FkZXIoKS0+cmVxdWVzdCgpOwogCiAgICAgaWYgKCFBcHBsaWNhdGlv
bkNhY2hlOjpyZXF1ZXN0SXNIVFRQT3JIVFRQU0dldChyZXF1ZXN0KSkKICAgICAgICAgcmV0dXJu
OwpAQCAtMTg5LDQ2ICsxODUsNDggQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVj
dENhY2hlKEZyYW1lKiBmcmFtZSwgY29uc3QgVVJMJiBwYXNzZWRNYW5pZmVzdFUKICAgICBpZiAo
IXByb3RvY29sSG9zdEFuZFBvcnRBcmVFcXVhbChtYW5pZmVzdFVSTCwgcmVxdWVzdC51cmwoKSkp
CiAgICAgICAgIHJldHVybjsKIAotICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAgPSBm
cmFtZS0+cGFnZSgpLT5hcHBsaWNhdGlvbkNhY2hlU3RvcmFnZSgpLmZpbmRPckNyZWF0ZUNhY2hl
R3JvdXAobWFuaWZlc3RVUkwpOworICAgIGF1dG8mIGdyb3VwID0gKmZyYW1lLnBhZ2UoKS0+YXBw
bGljYXRpb25DYWNoZVN0b3JhZ2UoKS5maW5kT3JDcmVhdGVDYWNoZUdyb3VwKG1hbmlmZXN0VVJM
KTsKIAotICAgIGRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5zZXRDYW5k
aWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoZ3JvdXApOwotICAgIGdyb3VwLT5tX3BlbmRpbmdN
YXN0ZXJSZXNvdXJjZUxvYWRlcnMuYWRkKGRvY3VtZW50TG9hZGVyKTsKLSAgICBncm91cC0+bV9k
b3dubG9hZGluZ1BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnNDb3VudCsrOworICAgIGRvY3Vt
ZW50TG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2V0Q2FuZGlkYXRlQXBwbGljYXRpb25D
YWNoZUdyb3VwKCZncm91cCk7CisgICAgZ3JvdXAubV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2Fk
ZXJzLmFkZCgmZG9jdW1lbnRMb2FkZXIpOworICAgIGdyb3VwLm1fZG93bmxvYWRpbmdQZW5kaW5n
TWFzdGVyUmVzb3VyY2VMb2FkZXJzQ291bnQrKzsKIAotICAgIEFTU0VSVCghZ3JvdXAtPm1fY2Fj
aGVCZWluZ1VwZGF0ZWQgfHwgZ3JvdXAtPm1fdXBkYXRlU3RhdHVzICE9IElkbGUpOwotICAgIGdy
b3VwLT51cGRhdGUoZnJhbWUsIEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVXaXRoQnJvd3NpbmdDb250
ZXh0KTsKKyAgICBBU1NFUlQoIWdyb3VwLm1fY2FjaGVCZWluZ1VwZGF0ZWQgfHwgZ3JvdXAubV91
cGRhdGVTdGF0dXMgIT0gSWRsZSk7CisgICAgZ3JvdXAudXBkYXRlKGZyYW1lLCBBcHBsaWNhdGlv
bkNhY2hlVXBkYXRlV2l0aEJyb3dzaW5nQ29udGV4dCk7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25D
YWNoZUdyb3VwOjpzZWxlY3RDYWNoZVdpdGhvdXRNYW5pZmVzdFVSTChGcmFtZSogZnJhbWUpCit2
b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3RVUkwo
RnJhbWUmIGZyYW1lKQogewotICAgIGlmICghZnJhbWUtPnNldHRpbmdzKCkub2ZmbGluZVdlYkFw
cGxpY2F0aW9uQ2FjaGVFbmFibGVkKCkpCisgICAgaWYgKCFmcmFtZS5zZXR0aW5ncygpLm9mZmxp
bmVXZWJBcHBsaWNhdGlvbkNhY2hlRW5hYmxlZCgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBE
b2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIgPSBmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRM
b2FkZXIoKTsKLSAgICBBU1NFUlQoIWRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9z
dCgpLT5hcHBsaWNhdGlvbkNhY2hlKCkpOworICAgIEFTU0VSVChmcmFtZS5kb2N1bWVudCgpKTsK
KyAgICBBU1NFUlQoZnJhbWUucGFnZSgpKTsKKyAgICBBU1NFUlQoZnJhbWUubG9hZGVyKCkuZG9j
dW1lbnRMb2FkZXIoKSk7CisgICAgYXV0byYgZG9jdW1lbnRMb2FkZXIgPSAqZnJhbWUubG9hZGVy
KCkuZG9jdW1lbnRMb2FkZXIoKTsKKyAgICBBU1NFUlQoIWRvY3VtZW50TG9hZGVyLmFwcGxpY2F0
aW9uQ2FjaGVIb3N0KCkuYXBwbGljYXRpb25DYWNoZSgpKTsKIAogICAgIC8vIERvbid0IGFjY2Vz
cyBhbnl0aGluZyBvbiBkaXNrIGlmIHByaXZhdGUgYnJvd3NpbmcgaXMgZW5hYmxlZC4KLSAgICBp
ZiAoZnJhbWUtPnBhZ2UoKS0+dXNlc0VwaGVtZXJhbFNlc3Npb24oKSB8fCAhZnJhbWUtPmRvY3Vt
ZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPmNhbkFjY2Vzc0FwcGxpY2F0aW9uQ2FjaGUoZnJhbWUt
PnRyZWUoKS50b3AoKS5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpKSkgewotICAgICAgICBw
b3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDSEVDS0lOR19FVkVOVCwgZG9j
dW1lbnRMb2FkZXIpOwotICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVI
b3N0OjpFUlJPUl9FVkVOVCwgZG9jdW1lbnRMb2FkZXIpOworICAgIGlmIChmcmFtZS5wYWdlKCkt
PnVzZXNFcGhlbWVyYWxTZXNzaW9uKCkgfHwgIWZyYW1lLmRvY3VtZW50KCktPnNlY3VyaXR5T3Jp
Z2luKCktPmNhbkFjY2Vzc0FwcGxpY2F0aW9uQ2FjaGUoZnJhbWUudHJlZSgpLnRvcCgpLmRvY3Vt
ZW50KCktPnNlY3VyaXR5T3JpZ2luKCkpKSB7CisgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZl
bnROYW1lcygpLmNoZWNraW5nRXZlbnQsIGRvY3VtZW50TG9hZGVyKTsKKyAgICAgICAgcG9zdExp
c3RlbmVyVGFzayhldmVudE5hbWVzKCkuZXJyb3JFdmVudCwgZG9jdW1lbnRMb2FkZXIpOwogICAg
ICAgICByZXR1cm47CiAgICAgfQogCi0gICAgQXBwbGljYXRpb25DYWNoZSogbWFpblJlc291cmNl
Q2FjaGUgPSBkb2N1bWVudExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+bWFpblJlc291
cmNlQXBwbGljYXRpb25DYWNoZSgpOwotCi0gICAgaWYgKG1haW5SZXNvdXJjZUNhY2hlKSB7Ci0g
ICAgICAgIG1haW5SZXNvdXJjZUNhY2hlLT5ncm91cCgpLT5hc3NvY2lhdGVEb2N1bWVudExvYWRl
cldpdGhDYWNoZShkb2N1bWVudExvYWRlciwgbWFpblJlc291cmNlQ2FjaGUpOwotICAgICAgICBt
YWluUmVzb3VyY2VDYWNoZS0+Z3JvdXAoKS0+dXBkYXRlKGZyYW1lLCBBcHBsaWNhdGlvbkNhY2hl
VXBkYXRlV2l0aEJyb3dzaW5nQ29udGV4dCk7CisgICAgaWYgKGF1dG8qIG1haW5SZXNvdXJjZUNh
Y2hlID0gZG9jdW1lbnRMb2FkZXIuYXBwbGljYXRpb25DYWNoZUhvc3QoKS5tYWluUmVzb3VyY2VB
cHBsaWNhdGlvbkNhY2hlKCkpIHsKKyAgICAgICAgQVNTRVJUKG1haW5SZXNvdXJjZUNhY2hlLT5n
cm91cCgpKTsKKyAgICAgICAgYXV0byYgZ3JvdXAgPSAqbWFpblJlc291cmNlQ2FjaGUtPmdyb3Vw
KCk7CisgICAgICAgIGdyb3VwLmFzc29jaWF0ZURvY3VtZW50TG9hZGVyV2l0aENhY2hlKCZkb2N1
bWVudExvYWRlciwgbWFpblJlc291cmNlQ2FjaGUpOworICAgICAgICBncm91cC51cGRhdGUoZnJh
bWUsIEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVXaXRoQnJvd3NpbmdDb250ZXh0KTsKICAgICB9CiB9
CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpmaW5pc2hlZExvYWRpbmdNYWluUmVzb3Vy
Y2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlcikKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpm
aW5pc2hlZExvYWRpbmdNYWluUmVzb3VyY2UoRG9jdW1lbnRMb2FkZXImIGxvYWRlcikKIHsKLSAg
ICBBU1NFUlQobV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLmNvbnRhaW5zKGxvYWRlcikp
OworICAgIEFTU0VSVChtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMuY29udGFpbnMoJmxv
YWRlcikpOwogICAgIEFTU0VSVChtX2NvbXBsZXRpb25UeXBlID09IE5vbmUgfHwgbV9wZW5kaW5n
RW50cmllcy5pc0VtcHR5KCkpOwotICAgIFVSTCB1cmwgPSBsb2FkZXItPnVybCgpOwotICAgIGlm
ICh1cmwuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkpCi0gICAgICAgIHVybC5yZW1vdmVGcmFnbWVu
dElkZW50aWZpZXIoKTsKKyAgICBVUkwgdXJsID0gbG9hZGVyLnVybCgpOworICAgIHVybC5yZW1v
dmVGcmFnbWVudElkZW50aWZpZXIoKTsKIAogICAgIHN3aXRjaCAobV9jb21wbGV0aW9uVHlwZSkg
ewogICAgIGNhc2UgTm9uZToKQEAgLTIzNiwzNCArMjM0LDMyIEBAIHZvaWQgQXBwbGljYXRpb25D
YWNoZUdyb3VwOjpmaW5pc2hlZExvYWRpbmdNYWluUmVzb3VyY2UoRG9jdW1lbnRMb2FkZXIqIGxv
YWRlcikKICAgICAgICAgcmV0dXJuOwogICAgIGNhc2UgTm9VcGRhdGU6CiAgICAgICAgIEFTU0VS
VCghbV9jYWNoZUJlaW5nVXBkYXRlZCk7Ci0gICAgICAgIGFzc29jaWF0ZURvY3VtZW50TG9hZGVy
V2l0aENhY2hlKGxvYWRlciwgbV9uZXdlc3RDYWNoZS5nZXQoKSk7Ci0KLSAgICAgICAgaWYgKEFw
cGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSogcmVzb3VyY2UgPSBtX25ld2VzdENhY2hlLT5yZXNvdXJj
ZUZvclVSTCh1cmwpKSB7CisgICAgICAgIGFzc29jaWF0ZURvY3VtZW50TG9hZGVyV2l0aENhY2hl
KCZsb2FkZXIsIG1fbmV3ZXN0Q2FjaGUuZ2V0KCkpOworICAgICAgICBpZiAoYXV0byogcmVzb3Vy
Y2UgPSBtX25ld2VzdENhY2hlLT5yZXNvdXJjZUZvclVSTCh1cmwpKSB7CiAgICAgICAgICAgICBp
ZiAoIShyZXNvdXJjZS0+dHlwZSgpICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIp
KSB7CiAgICAgICAgICAgICAgICAgcmVzb3VyY2UtPmFkZFR5cGUoQXBwbGljYXRpb25DYWNoZVJl
c291cmNlOjpNYXN0ZXIpOwogICAgICAgICAgICAgICAgIEFTU0VSVCghcmVzb3VyY2UtPnN0b3Jh
Z2VJRCgpKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfSBlbHNlCi0gICAgICAgICAgICBtX25l
d2VzdENhY2hlLT5hZGRSZXNvdXJjZShBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6OmNyZWF0ZSh1
cmwsIGxvYWRlci0+cmVzcG9uc2UoKSwgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIs
IGxvYWRlci0+bWFpblJlc291cmNlRGF0YSgpKSk7CisgICAgICAgICAgICBtX25ld2VzdENhY2hl
LT5hZGRSZXNvdXJjZShBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6OmNyZWF0ZSh1cmwsIGxvYWRl
ci5yZXNwb25zZSgpLCBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6Ok1hc3RlciwgbG9hZGVyLm1h
aW5SZXNvdXJjZURhdGEoKSkpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIEZhaWx1cmU6CiAg
ICAgICAgIC8vIENhY2hlIHVwZGF0ZSBoYXMgYmVlbiBhIGZhaWx1cmUsIHNvIHRoZXJlIGlzIG5v
IHJlYXNvbiB0byBrZWVwIHRoZSBkb2N1bWVudCBhc3NvY2lhdGVkIHdpdGggdGhlIGluY29tcGxl
dGUgY2FjaGUKICAgICAgICAgLy8gKGl0cyBtYWluIHJlc291cmNlIHdhcyBub3QgY2FjaGVkIHll
dCwgc28gaXQgaXMgbGlrZWx5IHRoYXQgdGhlIGFwcGxpY2F0aW9uIGNoYW5nZWQgc2lnbmlmaWNh
bnRseSBzZXJ2ZXItc2lkZSkuCiAgICAgICAgIEFTU0VSVCghbV9jYWNoZUJlaW5nVXBkYXRlZCk7
IC8vIEFscmVhZHkgY2xlYXJlZCBvdXQgYnkgc3RvcExvYWRpbmcoKS4KLSAgICAgICAgbG9hZGVy
LT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5zZXRBcHBsaWNhdGlvbkNhY2hlKG51bGxwdHIpOyAv
LyBXaWxsIHVuc2V0IGNhbmRpZGF0ZSwgdG9vLgotICAgICAgICBtX2Fzc29jaWF0ZWREb2N1bWVu
dExvYWRlcnMucmVtb3ZlKGxvYWRlcik7Ci0gICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGlj
YXRpb25DYWNoZUhvc3Q6OkVSUk9SX0VWRU5ULCBsb2FkZXIpOworICAgICAgICBsb2FkZXIuYXBw
bGljYXRpb25DYWNoZUhvc3QoKS5zZXRBcHBsaWNhdGlvbkNhY2hlKG51bGxwdHIpOyAvLyBXaWxs
IHVuc2V0IGNhbmRpZGF0ZSwgdG9vLgorICAgICAgICBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRl
cnMucmVtb3ZlKCZsb2FkZXIpOworICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMo
KS5lcnJvckV2ZW50LCBsb2FkZXIpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIENvbXBsZXRl
ZDoKLSAgICAgICAgQVNTRVJUKG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycy5jb250YWlucyhs
b2FkZXIpKTsKLQotICAgICAgICBpZiAoQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiByZXNvdXJj
ZSA9IG1fY2FjaGVCZWluZ1VwZGF0ZWQtPnJlc291cmNlRm9yVVJMKHVybCkpIHsKKyAgICAgICAg
QVNTRVJUKG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycy5jb250YWlucygmbG9hZGVyKSk7Cisg
ICAgICAgIGlmIChhdXRvKiByZXNvdXJjZSA9IG1fY2FjaGVCZWluZ1VwZGF0ZWQtPnJlc291cmNl
Rm9yVVJMKHVybCkpIHsKICAgICAgICAgICAgIGlmICghKHJlc291cmNlLT50eXBlKCkgJiBBcHBs
aWNhdGlvbkNhY2hlUmVzb3VyY2U6Ok1hc3RlcikpIHsKICAgICAgICAgICAgICAgICByZXNvdXJj
ZS0+YWRkVHlwZShBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6Ok1hc3Rlcik7CiAgICAgICAgICAg
ICAgICAgQVNTRVJUKCFyZXNvdXJjZS0+c3RvcmFnZUlEKCkpOwogICAgICAgICAgICAgfQogICAg
ICAgICB9IGVsc2UKLSAgICAgICAgICAgIG1fY2FjaGVCZWluZ1VwZGF0ZWQtPmFkZFJlc291cmNl
KEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6Y3JlYXRlKHVybCwgbG9hZGVyLT5yZXNwb25zZSgp
LCBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6Ok1hc3RlciwgbG9hZGVyLT5tYWluUmVzb3VyY2VE
YXRhKCkpKTsKKyAgICAgICAgICAgIG1fY2FjaGVCZWluZ1VwZGF0ZWQtPmFkZFJlc291cmNlKEFw
cGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6Y3JlYXRlKHVybCwgbG9hZGVyLnJlc3BvbnNlKCksIEFw
cGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6TWFzdGVyLCBsb2FkZXIubWFpblJlc291cmNlRGF0YSgp
KSk7CiAgICAgICAgIC8vIFRoZSAiY2FjaGVkIiBldmVudCB3aWxsIGJlIHBvc3RlZCB0byBhbGwg
YXNzb2NpYXRlZCBkb2N1bWVudHMgb25jZSB1cGRhdGUgaXMgY29tcGxldGUuCiAgICAgICAgIGJy
ZWFrOwogICAgIH0KQEAgLTI3Myw5ICsyNjksOSBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91
cDo6ZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCiAg
ICAgY2hlY2tJZkxvYWRJc0NvbXBsZXRlKCk7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdy
b3VwOjpmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCit2
b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZShEb2N1
bWVudExvYWRlciYgbG9hZGVyKQogewotICAgIEFTU0VSVChtX3BlbmRpbmdNYXN0ZXJSZXNvdXJj
ZUxvYWRlcnMuY29udGFpbnMobG9hZGVyKSk7CisgICAgQVNTRVJUKG1fcGVuZGluZ01hc3RlclJl
c291cmNlTG9hZGVycy5jb250YWlucygmbG9hZGVyKSk7CiAgICAgQVNTRVJUKG1fY29tcGxldGlv
blR5cGUgPT0gTm9uZSB8fCBtX3BlbmRpbmdFbnRyaWVzLmlzRW1wdHkoKSk7CiAKICAgICBzd2l0
Y2ggKG1fY29tcGxldGlvblR5cGUpIHsKQEAgLTI4NCwzMiArMjgwLDI3IEBAIHZvaWQgQXBwbGlj
YXRpb25DYWNoZUdyb3VwOjpmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKERvY3VtZW50TG9hZGVy
KiBsb2FkZXIpCiAgICAgICAgIHJldHVybjsKICAgICBjYXNlIE5vVXBkYXRlOgogICAgICAgICBB
U1NFUlQoIW1fY2FjaGVCZWluZ1VwZGF0ZWQpOwotCiAgICAgICAgIC8vIFRoZSBtYW5pZmVzdCBk
aWRuJ3QgY2hhbmdlLCBhbmQgd2UgaGF2ZSBhIHJlbGV2YW50IGNhY2hlIC0gYnV0IHRoZSBtYWlu
IHJlc291cmNlIGRvd25sb2FkIGZhaWxlZCBtaWQtd2F5LCBzbyBpdCBjYW5ub3QgYmUgc3RvcmVk
IHRvIHRoZSBjYWNoZSwKICAgICAgICAgLy8gYW5kIHRoZSBsb2FkZXIgZG9lcyBub3QgZ2V0IGFz
c29jaWF0ZWQgdG8gaXQuIElmIHRoZXJlIGFyZSBvdGhlciBtYWluIHJlc291cmNlcyBiZWluZyBk
b3dubG9hZGVkIGZvciB0aGlzIGNhY2hlIGdyb3VwLCB0aGV5IG1heSBzdGlsbCBzdWNjZWVkLgot
ICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFUlJPUl9FVkVO
VCwgbG9hZGVyKTsKLQorICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5lcnJv
ckV2ZW50LCBsb2FkZXIpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIEZhaWx1cmU6CiAgICAg
ICAgIC8vIENhY2hlIHVwZGF0ZSBmYWlsZWQsIHRvby4KICAgICAgICAgQVNTRVJUKCFtX2NhY2hl
QmVpbmdVcGRhdGVkKTsgLy8gQWxyZWFkeSBjbGVhcmVkIG91dCBieSBzdG9wTG9hZGluZygpLgot
ICAgICAgICBBU1NFUlQoIWxvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+YXBwbGljYXRp
b25DYWNoZSgpIHx8IGxvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+YXBwbGljYXRpb25D
YWNoZSgpLT5ncm91cCgpID09IHRoaXMpOwotCi0gICAgICAgIGxvYWRlci0+YXBwbGljYXRpb25D
YWNoZUhvc3QoKS0+c2V0QXBwbGljYXRpb25DYWNoZShudWxscHRyKTsgLy8gV2lsbCB1bnNldCBj
YW5kaWRhdGUsIHRvby4KLSAgICAgICAgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzLnJlbW92
ZShsb2FkZXIpOwotICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0
OjpFUlJPUl9FVkVOVCwgbG9hZGVyKTsKKyAgICAgICAgQVNTRVJUKCFsb2FkZXIuYXBwbGljYXRp
b25DYWNoZUhvc3QoKS5hcHBsaWNhdGlvbkNhY2hlKCkgfHwgbG9hZGVyLmFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KCkuYXBwbGljYXRpb25DYWNoZSgpLT5ncm91cCgpID09IHRoaXMpOworICAgICAgICBs
b2FkZXIuYXBwbGljYXRpb25DYWNoZUhvc3QoKS5zZXRBcHBsaWNhdGlvbkNhY2hlKG51bGxwdHIp
OyAvLyBXaWxsIHVuc2V0IGNhbmRpZGF0ZSwgdG9vLgorICAgICAgICBtX2Fzc29jaWF0ZWREb2N1
bWVudExvYWRlcnMucmVtb3ZlKCZsb2FkZXIpOworICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2
ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBsb2FkZXIpOwogICAgICAgICBicmVhazsKICAgICBjYXNl
IENvbXBsZXRlZDoKICAgICAgICAgLy8gVGhlIGNhY2hlIG1hbmlmZXN0IGRpZG4ndCBsaXN0IHRo
aXMgbWFpbiByZXNvdXJjZSwgYW5kIGFsbCBjYWNoZSBlbnRyaWVzIHdlcmUgYWxyZWFkeSB1cGRh
dGVkIHN1Y2Nlc3NmdWxseSAtIGJ1dCB0aGUgbWFpbiByZXNvdXJjZSBmYWlsZWQgdG8gbG9hZCwK
ICAgICAgICAgLy8gc28gaXQgY2Fubm90IGJlIHN0b3JlZCB0byB0aGUgY2FjaGUuIElmIHRoZXJl
IGFyZSBvdGhlciBtYWluIHJlc291cmNlcyBiZWluZyBkb3dubG9hZGVkIGZvciB0aGlzIGNhY2hl
IGdyb3VwLCB0aGV5IG1heSBzdGlsbCBzdWNjZWVkLgotICAgICAgICBBU1NFUlQobV9hc3NvY2lh
dGVkRG9jdW1lbnRMb2FkZXJzLmNvbnRhaW5zKGxvYWRlcikpOwotICAgICAgICBBU1NFUlQobG9h
ZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5hcHBsaWNhdGlvbkNhY2hlKCkgPT0gbV9jYWNo
ZUJlaW5nVXBkYXRlZCk7Ci0gICAgICAgIEFTU0VSVCghbG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hl
SG9zdCgpLT5jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKSk7Ci0gICAgICAgIG1fYXNz
b2NpYXRlZERvY3VtZW50TG9hZGVycy5yZW1vdmUobG9hZGVyKTsKLSAgICAgICAgbG9hZGVyLT5h
cHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5zZXRBcHBsaWNhdGlvbkNhY2hlKG51bGxwdHIpOwotCi0g
ICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkVSUk9SX0VWRU5U
LCBsb2FkZXIpOwotCisgICAgICAgIEFTU0VSVChtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMu
Y29udGFpbnMoJmxvYWRlcikpOworICAgICAgICBBU1NFUlQobG9hZGVyLmFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KCkuYXBwbGljYXRpb25DYWNoZSgpID09IG1fY2FjaGVCZWluZ1VwZGF0ZWQpOworICAg
ICAgICBBU1NFUlQoIWxvYWRlci5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLmNhbmRpZGF0ZUFwcGxp
Y2F0aW9uQ2FjaGVHcm91cCgpKTsKKyAgICAgICAgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJz
LnJlbW92ZSgmbG9hZGVyKTsKKyAgICAgICAgbG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCku
c2V0QXBwbGljYXRpb25DYWNoZShudWxscHRyKTsKKyAgICAgICAgcG9zdExpc3RlbmVyVGFzayhl
dmVudE5hbWVzKCkuZXJyb3JFdmVudCwgbG9hZGVyKTsKICAgICAgICAgYnJlYWs7CiAgICAgfQog
CkBAIC0zNDYsMTIgKzMzNywxMiBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c3RvcExv
YWRpbmcoKQogICAgIG1fcGVuZGluZ0VudHJpZXMuY2xlYXIoKTsKIH0gICAgCiAKLXZvaWQgQXBw
bGljYXRpb25DYWNoZUdyb3VwOjpkaXNhc3NvY2lhdGVEb2N1bWVudExvYWRlcihEb2N1bWVudExv
YWRlciogbG9hZGVyKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRpc2Fzc29jaWF0ZURv
Y3VtZW50TG9hZGVyKERvY3VtZW50TG9hZGVyJiBsb2FkZXIpCiB7Ci0gICAgbV9hc3NvY2lhdGVk
RG9jdW1lbnRMb2FkZXJzLnJlbW92ZShsb2FkZXIpOwotICAgIG1fcGVuZGluZ01hc3RlclJlc291
cmNlTG9hZGVycy5yZW1vdmUobG9hZGVyKTsKKyAgICBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRl
cnMucmVtb3ZlKCZsb2FkZXIpOworICAgIG1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5y
ZW1vdmUoJmxvYWRlcik7CiAKLSAgICBpZiAoYXV0byogaG9zdCA9IGxvYWRlci0+YXBwbGljYXRp
b25DYWNoZUhvc3QoKSkKKyAgICBpZiAoYXV0byogaG9zdCA9IGxvYWRlci5hcHBsaWNhdGlvbkNh
Y2hlSG9zdFVubGVzc0JlaW5nRGVzdHJveWVkKCkpCiAgICAgICAgIGhvc3QtPnNldEFwcGxpY2F0
aW9uQ2FjaGUobnVsbHB0cik7IC8vIFdpbGwgc2V0IGNhbmRpZGF0ZSBncm91cCB0byBudWxsLCB0
b28uCiAKICAgICBpZiAoIW1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycy5pc0VtcHR5KCkgfHwg
IW1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5pc0VtcHR5KCkpCkBAIC0zNzIsMjYgKzM2
MywyNiBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZGlzYXNzb2NpYXRlRG9jdW1lbnRM
b2FkZXIoRG9jdW1lbnRMb2FkZXIqIGxvYWRlcikKICAgICBtX25ld2VzdENhY2hlID0gbnVsbHB0
cjsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNhY2hlRGVzdHJveWVkKEFwcGxp
Y2F0aW9uQ2FjaGUqIGNhY2hlKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNhY2hlRGVz
dHJveWVkKEFwcGxpY2F0aW9uQ2FjaGUmIGNhY2hlKQogewotICAgIGlmIChtX2NhY2hlcy5yZW1v
dmUoY2FjaGUpICYmIG1fY2FjaGVzLmlzRW1wdHkoKSkgeworICAgIGlmIChtX2NhY2hlcy5yZW1v
dmUoJmNhY2hlKSAmJiBtX2NhY2hlcy5pc0VtcHR5KCkpIHsKICAgICAgICAgQVNTRVJUKG1fYXNz
b2NpYXRlZERvY3VtZW50TG9hZGVycy5pc0VtcHR5KCkpOwogICAgICAgICBBU1NFUlQobV9wZW5k
aW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLmlzRW1wdHkoKSk7CiAgICAgICAgIGRlbGV0ZSB0aGlz
OwogICAgIH0KIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnN0b3BMb2FkaW5nSW5G
cmFtZShGcmFtZSogZnJhbWUpCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c3RvcExvYWRp
bmdJbkZyYW1lKEZyYW1lJiBmcmFtZSkKIHsKLSAgICBpZiAoZnJhbWUgIT0gbV9mcmFtZSkKKyAg
ICBpZiAoJmZyYW1lICE9IG1fZnJhbWUpCiAgICAgICAgIHJldHVybjsKIAogICAgIGNhY2hlVXBk
YXRlRmFpbGVkKCk7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZXROZXdlc3RD
YWNoZShQYXNzUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+IG5ld2VzdENhY2hlKQordm9pZCBBcHBs
aWNhdGlvbkNhY2hlR3JvdXA6OnNldE5ld2VzdENhY2hlKFJlZjxBcHBsaWNhdGlvbkNhY2hlPiYm
IG5ld2VzdENhY2hlKQogewotICAgIG1fbmV3ZXN0Q2FjaGUgPSBuZXdlc3RDYWNoZTsKKyAgICBt
X25ld2VzdENhY2hlID0gV1RGTW92ZShuZXdlc3RDYWNoZSk7CiAKICAgICBtX2NhY2hlcy5hZGQo
bV9uZXdlc3RDYWNoZS5nZXQoKSk7CiAgICAgbV9uZXdlc3RDYWNoZS0+c2V0R3JvdXAodGhpcyk7
CkBAIC00MDMsNDAgKzM5NCw0MyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6bWFrZU9i
c29sZXRlKCkKICAgICAgICAgcmV0dXJuOwogCiAgICAgbV9pc09ic29sZXRlID0gdHJ1ZTsKLSAg
ICBtX3N0b3JhZ2UtPmNhY2hlR3JvdXBNYWRlT2Jzb2xldGUodGhpcyk7CisgICAgbV9zdG9yYWdl
LT5jYWNoZUdyb3VwTWFkZU9ic29sZXRlKCp0aGlzKTsKICAgICBBU1NFUlQoIW1fc3RvcmFnZUlE
KTsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnVwZGF0ZShGcmFtZSogZnJhbWUs
IEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVPcHRpb24gdXBkYXRlT3B0aW9uKQordm9pZCBBcHBsaWNh
dGlvbkNhY2hlR3JvdXA6OnVwZGF0ZShGcmFtZSYgZnJhbWUsIEFwcGxpY2F0aW9uQ2FjaGVVcGRh
dGVPcHRpb24gdXBkYXRlT3B0aW9uKQogeworICAgIEFTU0VSVChmcmFtZS5sb2FkZXIoKS5kb2N1
bWVudExvYWRlcigpKTsKKyAgICBhdXRvJiBkb2N1bWVudExvYWRlciA9ICpmcmFtZS5sb2FkZXIo
KS5kb2N1bWVudExvYWRlcigpOworCiAgICAgaWYgKG1fdXBkYXRlU3RhdHVzID09IENoZWNraW5n
IHx8IG1fdXBkYXRlU3RhdHVzID09IERvd25sb2FkaW5nKSB7CiAgICAgICAgIGlmICh1cGRhdGVP
cHRpb24gPT0gQXBwbGljYXRpb25DYWNoZVVwZGF0ZVdpdGhCcm93c2luZ0NvbnRleHQpIHsKLSAg
ICAgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNIRUNLSU5H
X0VWRU5ULCBmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSk7CisgICAgICAgICAgICBw
b3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5jaGVja2luZ0V2ZW50LCBkb2N1bWVudExvYWRl
cik7CiAgICAgICAgICAgICBpZiAobV91cGRhdGVTdGF0dXMgPT0gRG93bmxvYWRpbmcpCi0gICAg
ICAgICAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RE9XTkxP
QURJTkdfRVZFTlQsIGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKTsKKyAgICAgICAg
ICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5kb3dubG9hZGluZ0V2ZW50LCBk
b2N1bWVudExvYWRlcik7CiAgICAgICAgIH0KICAgICAgICAgcmV0dXJuOwogICAgIH0KIAogICAg
IC8vIERvbid0IGFjY2VzcyBhbnl0aGluZyBvbiBkaXNrIGlmIHByaXZhdGUgYnJvd3NpbmcgaXMg
ZW5hYmxlZC4KLSAgICBpZiAoZnJhbWUtPnBhZ2UoKS0+dXNlc0VwaGVtZXJhbFNlc3Npb24oKSB8
fCAhZnJhbWUtPmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPmNhbkFjY2Vzc0FwcGxpY2F0
aW9uQ2FjaGUoZnJhbWUtPnRyZWUoKS50b3AoKS5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigp
KSkgeworICAgIGlmIChmcmFtZS5wYWdlKCktPnVzZXNFcGhlbWVyYWxTZXNzaW9uKCkgfHwgIWZy
YW1lLmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPmNhbkFjY2Vzc0FwcGxpY2F0aW9uQ2Fj
aGUoZnJhbWUudHJlZSgpLnRvcCgpLmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCkpKSB7CiAg
ICAgICAgIEFTU0VSVChtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMuaXNFbXB0eSgpKTsK
ICAgICAgICAgQVNTRVJUKG1fcGVuZGluZ0VudHJpZXMuaXNFbXB0eSgpKTsKICAgICAgICAgQVNT
RVJUKCFtX2NhY2hlQmVpbmdVcGRhdGVkKTsKLSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6Q0hFQ0tJTkdfRVZFTlQsIGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVu
dExvYWRlcigpKTsKLSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9z
dDo6RVJST1JfRVZFTlQsIGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKTsKKyAgICAg
ICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkuY2hlY2tpbmdFdmVudCwgZG9jdW1lbnRM
b2FkZXIpOworICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50
LCBkb2N1bWVudExvYWRlcik7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKICAgICBBU1NFUlQo
IW1fZnJhbWUpOwotICAgIG1fZnJhbWUgPSBmcmFtZTsKKyAgICBtX2ZyYW1lID0gJmZyYW1lOwog
CiAgICAgc2V0VXBkYXRlU3RhdHVzKENoZWNraW5nKTsKIAotICAgIHBvc3RMaXN0ZW5lclRhc2so
QXBwbGljYXRpb25DYWNoZUhvc3Q6OkNIRUNLSU5HX0VWRU5ULCBtX2Fzc29jaWF0ZWREb2N1bWVu
dExvYWRlcnMpOworICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmNoZWNraW5nRXZl
bnQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CiAgICAgaWYgKCFtX25ld2VzdENhY2hl
KSB7CiAgICAgICAgIEFTU0VSVCh1cGRhdGVPcHRpb24gPT0gQXBwbGljYXRpb25DYWNoZVVwZGF0
ZVdpdGhCcm93c2luZ0NvbnRleHQpOwotICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0
aW9uQ2FjaGVIb3N0OjpDSEVDS0lOR19FVkVOVCwgZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9h
ZGVyKCkpOworICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5jaGVja2luZ0V2
ZW50LCBkb2N1bWVudExvYWRlcik7CiAgICAgfQogICAgIAogICAgIEFTU0VSVCghbV9tYW5pZmVz
dEhhbmRsZSk7CkBAIC00NDksNyArNDQzLDcgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
OnVwZGF0ZShGcmFtZSogZnJhbWUsIEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVPcHRpb24gdXAKICAg
ICBtX21hbmlmZXN0SGFuZGxlID0gY3JlYXRlUmVzb3VyY2VIYW5kbGUobV9tYW5pZmVzdFVSTCwg
bV9uZXdlc3RDYWNoZSA/IG1fbmV3ZXN0Q2FjaGUtPm1hbmlmZXN0UmVzb3VyY2UoKSA6IDApOwog
fQogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6YWJvcnQoRnJhbWUqIGZyYW1lKQordm9p
ZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFib3J0KEZyYW1lJiBmcmFtZSkKIHsKICAgICBpZiAo
bV91cGRhdGVTdGF0dXMgPT0gSWRsZSkKICAgICAgICAgcmV0dXJuOwpAQCAtNDU4LDcgKzQ1Miw3
IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjphYm9ydChGcmFtZSogZnJhbWUpCiAgICAg
aWYgKG1fY29tcGxldGlvblR5cGUgIT0gTm9uZSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgZnJh
bWUtPmRvY3VtZW50KCktPmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OkFwcENhY2hl
LCBNZXNzYWdlTGV2ZWw6OkRlYnVnLCBBU0NJSUxpdGVyYWwoIkFwcGxpY2F0aW9uIENhY2hlIGRv
d25sb2FkIHByb2Nlc3Mgd2FzIGFib3J0ZWQuIikpOworICAgIGZyYW1lLmRvY3VtZW50KCktPmFk
ZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OkFwcENhY2hlLCBNZXNzYWdlTGV2ZWw6OkRl
YnVnLCBBU0NJSUxpdGVyYWwoIkFwcGxpY2F0aW9uIENhY2hlIGRvd25sb2FkIHByb2Nlc3Mgd2Fz
IGFib3J0ZWQuIikpOwogICAgIGNhY2hlVXBkYXRlRmFpbGVkKCk7CiB9CiAKQEAgLTUwMiw4ICs0
OTYsNyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJl
c291cmNlSGFuZGxlKiBoYW5kbGUsIFJlc291cmNlUgogICAgIEFTU0VSVChoYW5kbGUgPT0gbV9j
dXJyZW50SGFuZGxlKTsKIAogICAgIFVSTCB1cmwoaGFuZGxlLT5maXJzdFJlcXVlc3QoKS51cmwo
KSk7Ci0gICAgaWYgKHVybC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSkKLSAgICAgICAgdXJsLnJl
bW92ZUZyYWdtZW50SWRlbnRpZmllcigpOworICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZp
ZXIoKTsKICAgICAKICAgICBBU1NFUlQoIW1fY3VycmVudFJlc291cmNlKTsKICAgICBBU1NFUlQo
bV9wZW5kaW5nRW50cmllcy5jb250YWlucyh1cmwpKTsKQEAgLTU5Myw3ICs1ODYsNyBAQCB2b2lk
IEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUhhbmRsZSog
aGFuZGxlLCBkb3VibGUgZmluaQogICAgIAogICAgIEFTU0VSVChtX2NhY2hlQmVpbmdVcGRhdGVk
KTsKIAotICAgIG1fY2FjaGVCZWluZ1VwZGF0ZWQtPmFkZFJlc291cmNlKFdURk1vdmUobV9jdXJy
ZW50UmVzb3VyY2UpKTsKKyAgICBtX2NhY2hlQmVpbmdVcGRhdGVkLT5hZGRSZXNvdXJjZShtX2N1
cnJlbnRSZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICBtX2N1cnJlbnRIYW5kbGUgPSBu
dWxscHRyOwogCiAgICAgLy8gV2hpbGUgZG93bmxvYWRpbmcgY2hlY2sgdG8gc2VlIGlmIHdlIGhh
dmUgZXhjZWVkZWQgdGhlIGF2YWlsYWJsZSBxdW90YS4KQEAgLTYyNiw4ICs2MTksNyBAQCB2b2lk
IEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZGlkRmFpbChSZXNvdXJjZUhhbmRsZSogaGFuZGxlLCBj
b25zdCBSZXNvdXJjZUVycm9yJgogCiAgICAgdW5zaWduZWQgdHlwZSA9IG1fY3VycmVudFJlc291
cmNlID8gbV9jdXJyZW50UmVzb3VyY2UtPnR5cGUoKSA6IG1fcGVuZGluZ0VudHJpZXMuZ2V0KGhh
bmRsZS0+Zmlyc3RSZXF1ZXN0KCkudXJsKCkpOwogICAgIFVSTCB1cmwoaGFuZGxlLT5maXJzdFJl
cXVlc3QoKS51cmwoKSk7Ci0gICAgaWYgKHVybC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSkKLSAg
ICAgICAgdXJsLnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpOworICAgIHVybC5yZW1vdmVGcmFn
bWVudElkZW50aWZpZXIoKTsKIAogICAgIEFTU0VSVCghbV9jdXJyZW50UmVzb3VyY2UgfHwgIW1f
cGVuZGluZ0VudHJpZXMuY29udGFpbnModXJsKSk7CiAgICAgbV9jdXJyZW50UmVzb3VyY2UgPSBu
dWxscHRyOwpAQCAtNzM0LDcgKzcyNiw3IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpk
aWRGaW5pc2hMb2FkaW5nTWFuaWZlc3QoKQogICAgIC8vIFdlIGhhdmUgdGhlIG1hbmlmZXN0LCBu
b3cgZG93bmxvYWQgdGhlIHJlc291cmNlcy4KICAgICBzZXRVcGRhdGVTdGF0dXMoRG93bmxvYWRp
bmcpOwogICAgIAotICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkRP
V05MT0FESU5HX0VWRU5ULCBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOworICAgIHBvc3RM
aXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmRvd25sb2FkaW5nRXZlbnQsIG1fYXNzb2NpYXRlZERv
Y3VtZW50TG9hZGVycyk7CiAKICAgICBBU1NFUlQobV9wZW5kaW5nRW50cmllcy5pc0VtcHR5KCkp
OwogCkBAIC04MDIsOCArNzk0LDggQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6Om1hbmlm
ZXN0Tm90Rm91bmQoKQogewogICAgIG1ha2VPYnNvbGV0ZSgpOwogCi0gICAgcG9zdExpc3RlbmVy
VGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6T0JTT0xFVEVfRVZFTlQsIG1fYXNzb2NpYXRlZERv
Y3VtZW50TG9hZGVycyk7Ci0gICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9z
dDo6RVJST1JfRVZFTlQsIG1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycyk7CisgICAgcG9z
dExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkub2Jzb2xldGVFdmVudCwgbV9hc3NvY2lhdGVkRG9j
dW1lbnRMb2FkZXJzKTsKKyAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5lcnJvckV2
ZW50LCBtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMpOwogCiAgICAgc3RvcExvYWRpbmco
KTsKIApAQCAtODEzLDE2ICs4MDUsMTYgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6Om1h
bmlmZXN0Tm90Rm91bmQoKQogICAgIHdoaWxlICghbV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2Fk
ZXJzLmlzRW1wdHkoKSkgewogICAgICAgICBIYXNoU2V0PERvY3VtZW50TG9hZGVyKj46Oml0ZXJh
dG9yIGl0ID0gbV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLmJlZ2luKCk7CiAgICAgICAg
IAotICAgICAgICBBU1NFUlQoKCppdCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPmNhbmRpZGF0
ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCgpID09IHRoaXMpOwotICAgICAgICBBU1NFUlQoISgqaXQp
LT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5hcHBsaWNhdGlvbkNhY2hlKCkpOwotICAgICAgICAo
Kml0KS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+c2V0Q2FuZGlkYXRlQXBwbGljYXRpb25DYWNo
ZUdyb3VwKG51bGxwdHIpOworICAgICAgICBBU1NFUlQoKCppdCktPmFwcGxpY2F0aW9uQ2FjaGVI
b3N0KCkuY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKCkgPT0gdGhpcyk7CisgICAgICAg
IEFTU0VSVCghKCppdCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuYXBwbGljYXRpb25DYWNoZSgp
KTsKKyAgICAgICAgKCppdCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2V0Q2FuZGlkYXRlQXBw
bGljYXRpb25DYWNoZUdyb3VwKG51bGxwdHIpOwogICAgICAgICBtX3BlbmRpbmdNYXN0ZXJSZXNv
dXJjZUxvYWRlcnMucmVtb3ZlKGl0KTsKICAgICB9CiAKICAgICBtX2Rvd25sb2FkaW5nUGVuZGlu
Z01hc3RlclJlc291cmNlTG9hZGVyc0NvdW50ID0gMDsKICAgICBzZXRVcGRhdGVTdGF0dXMoSWRs
ZSk7ICAgIAogICAgIG1fZnJhbWUgPSBudWxscHRyOwotICAgIAorCiAgICAgaWYgKG1fY2FjaGVz
LmlzRW1wdHkoKSkgewogICAgICAgICBBU1NFUlQobV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJz
LmlzRW1wdHkoKSk7CiAgICAgICAgIEFTU0VSVCghbV9jYWNoZUJlaW5nVXBkYXRlZCk7CkBAIC04
NDksMTMgKzg0MSwxMyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6Y2hlY2tJZkxvYWRJ
c0NvbXBsZXRlKCkKIAogICAgICAgICAvLyBUaGUgc3RvcmFnZSBjb3VsZCBoYXZlIGJlZW4gbWFu
dWFsbHkgZW1wdGllZCBieSB0aGUgdXNlci4KICAgICAgICAgaWYgKCFtX3N0b3JhZ2VJRCkKLSAg
ICAgICAgICAgIG1fc3RvcmFnZS0+c3RvcmVOZXdlc3RDYWNoZSh0aGlzKTsKKyAgICAgICAgICAg
IG1fc3RvcmFnZS0+c3RvcmVOZXdlc3RDYWNoZSgqdGhpcyk7CiAKLSAgICAgICAgcG9zdExpc3Rl
bmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Tk9VUERBVEVfRVZFTlQsIG1fYXNzb2NpYXRl
ZERvY3VtZW50TG9hZGVycyk7CisgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygp
Lm5vdXBkYXRlRXZlbnQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CiAgICAgICAgIGJy
ZWFrOwogICAgIGNhc2UgRmFpbHVyZToKICAgICAgICAgQVNTRVJUKCFtX2NhY2hlQmVpbmdVcGRh
dGVkKTsKLSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RVJS
T1JfRVZFTlQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CisgICAgICAgIHBvc3RMaXN0
ZW5lclRhc2soZXZlbnROYW1lcygpLmVycm9yRXZlbnQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9h
ZGVycyk7CiAgICAgICAgIGlmIChtX2NhY2hlcy5pc0VtcHR5KCkpIHsKICAgICAgICAgICAgIEFT
U0VSVChtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMuaXNFbXB0eSgpKTsKICAgICAgICAgICAg
IGRlbGV0ZSB0aGlzOwpAQCAtODY3LDcgKzg1OSw3IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdy
b3VwOjpjaGVja0lmTG9hZElzQ29tcGxldGUoKQogCiAgICAgICAgIEFTU0VSVChtX2NhY2hlQmVp
bmdVcGRhdGVkKTsKICAgICAgICAgaWYgKG1fbWFuaWZlc3RSZXNvdXJjZSkKLSAgICAgICAgICAg
IG1fY2FjaGVCZWluZ1VwZGF0ZWQtPnNldE1hbmlmZXN0UmVzb3VyY2UoV1RGTW92ZShtX21hbmlm
ZXN0UmVzb3VyY2UpKTsKKyAgICAgICAgICAgIG1fY2FjaGVCZWluZ1VwZGF0ZWQtPnNldE1hbmlm
ZXN0UmVzb3VyY2UobV9tYW5pZmVzdFJlc291cmNlLnJlbGVhc2VOb25OdWxsKCkpOwogICAgICAg
ICBlbHNlIHsKICAgICAgICAgICAgIC8vIFdlIGNhbiBnZXQgaGVyZSBhcyBhIHJlc3VsdCBvZiBy
ZXRyeWluZyB0aGUgQ29tcGxldGUgc3RlcCwgZm9sbG93aW5nCiAgICAgICAgICAgICAvLyBhIGZh
aWx1cmUgb2YgdGhlIGNhY2hlIHN0b3JhZ2UgdG8gc2F2ZSB0aGUgbmV3ZXN0IGNhY2hlIGR1ZSB0
byBoaXR0aW5nCkBAIC04ODcsMTggKzg3OSwxOCBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91
cDo6Y2hlY2tJZkxvYWRJc0NvbXBsZXRlKCkKICAgICAgICAgICAgIGRpZFJlYWNoT3JpZ2luUXVv
dGEodG90YWxTcGFjZU5lZWRlZCk7CiAKICAgICAgICAgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6
OkZhaWx1cmVSZWFzb24gZmFpbHVyZVJlYXNvbjsKLSAgICAgICAgc2V0TmV3ZXN0Q2FjaGUoV1RG
TW92ZShtX2NhY2hlQmVpbmdVcGRhdGVkKSk7Ci0gICAgICAgIGlmIChtX3N0b3JhZ2UtPnN0b3Jl
TmV3ZXN0Q2FjaGUodGhpcywgb2xkTmV3ZXN0Q2FjaGUuZ2V0KCksIGZhaWx1cmVSZWFzb24pKSB7
CisgICAgICAgIHNldE5ld2VzdENhY2hlKG1fY2FjaGVCZWluZ1VwZGF0ZWQucmVsZWFzZU5vbk51
bGwoKSk7CisgICAgICAgIGlmIChtX3N0b3JhZ2UtPnN0b3JlTmV3ZXN0Q2FjaGUoKnRoaXMsIG9s
ZE5ld2VzdENhY2hlLmdldCgpLCBmYWlsdXJlUmVhc29uKSkgewogICAgICAgICAgICAgLy8gTmV3
IGNhY2hlIHN0b3JlZCwgbm93IHJlbW92ZSB0aGUgb2xkIGNhY2hlLgogICAgICAgICAgICAgaWYg
KG9sZE5ld2VzdENhY2hlKQogICAgICAgICAgICAgICAgIG1fc3RvcmFnZS0+cmVtb3ZlKG9sZE5l
d2VzdENhY2hlLmdldCgpKTsKIAogICAgICAgICAgICAgLy8gRmlyZSB0aGUgZmluYWwgcHJvZ3Jl
c3MgZXZlbnQuCiAgICAgICAgICAgICBBU1NFUlQobV9wcm9ncmVzc0RvbmUgPT0gbV9wcm9ncmVz
c1RvdGFsKTsKLSAgICAgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhv
c3Q6OlBST0dSRVNTX0VWRU5ULCBtX3Byb2dyZXNzVG90YWwsIG1fcHJvZ3Jlc3NEb25lLCBtX2Fz
c29jaWF0ZWREb2N1bWVudExvYWRlcnMpOworICAgICAgICAgICAgcG9zdExpc3RlbmVyVGFzayhl
dmVudE5hbWVzKCkucHJvZ3Jlc3NFdmVudCwgbV9wcm9ncmVzc1RvdGFsLCBtX3Byb2dyZXNzRG9u
ZSwgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsKIAogICAgICAgICAgICAgLy8gRmlyZSB0
aGUgc3VjY2VzcyBldmVudC4KLSAgICAgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soaXNVcGdyYWRl
QXR0ZW1wdCA/IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpVUERBVEVSRUFEWV9FVkVOVCA6IEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0OjpDQUNIRURfRVZFTlQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVy
cyk7CisgICAgICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGlzVXBncmFkZUF0dGVtcHQgPyBldmVu
dE5hbWVzKCkudXBkYXRlcmVhZHlFdmVudCA6IGV2ZW50TmFtZXMoKS5jYWNoZWRFdmVudCwgbV9h
c3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsKICAgICAgICAgICAgIC8vIEl0IGlzIGNsZWFyIHRo
YXQgdGhlIG9yaWdpbiBxdW90YSB3YXMgbm90IHJlYWNoZWQsIHNvIGNsZWFyIHRoZSBmbGFnIGlm
IGl0IHdhcyBzZXQuCiAgICAgICAgICAgICBtX29yaWdpblF1b3RhRXhjZWVkZWRQcmV2aW91c2x5
ID0gZmFsc2U7CiAgICAgICAgIH0gZWxzZSB7CkBAIC05MTksMTAgKzkxMSw4IEBAIHZvaWQgQXBw
bGljYXRpb25DYWNoZUdyb3VwOjpjaGVja0lmTG9hZElzQ29tcGxldGUoKQogCiAgICAgICAgICAg
ICAgICAgLy8gU2F2ZSBhIHJlZmVyZW5jZSB0byB0aGUgbmV3IGNhY2hlLgogICAgICAgICAgICAg
ICAgIG1fY2FjaGVCZWluZ1VwZGF0ZWQgPSBXVEZNb3ZlKG1fbmV3ZXN0Q2FjaGUpOwotICAgICAg
ICAgICAgICAgIGlmIChvbGROZXdlc3RDYWNoZSkgewotICAgICAgICAgICAgICAgICAgICAvLyBS
ZWluc3RhdGUgdGhlIG9sZE5ld2VzdENhY2hlLgotICAgICAgICAgICAgICAgICAgICBzZXROZXdl
c3RDYWNoZShXVEZNb3ZlKG9sZE5ld2VzdENhY2hlKSk7Ci0gICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgICAgIGlmIChvbGROZXdlc3RDYWNoZSkKKyAgICAgICAgICAgICAgICAgICAgc2V0
TmV3ZXN0Q2FjaGUob2xkTmV3ZXN0Q2FjaGUucmVsZWFzZU5vbk51bGwoKSk7CiAgICAgICAgICAg
ICAgICAgc2NoZWR1bGVSZWFjaGVkTWF4QXBwQ2FjaGVTaXplQ2FsbGJhY2soKTsKICAgICAgICAg
ICAgICAgICByZXR1cm47CiAgICAgICAgICAgICB9CkBAIC05MzAsNyArOTIwLDcgQEAgdm9pZCBB
cHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNoZWNrSWZMb2FkSXNDb21wbGV0ZSgpCiAgICAgICAgICAg
ICAvLyBSdW4gdGhlICJjYWNoZSBmYWlsdXJlIHN0ZXBzIgogICAgICAgICAgICAgLy8gRmlyZSB0
aGUgZXJyb3IgZXZlbnRzIHRvIGFsbCBwZW5kaW5nIG1hc3RlciBlbnRyaWVzLCBhcyB3ZWxsIGFu
eSBvdGhlciBjYWNoZSBob3N0cwogICAgICAgICAgICAgLy8gY3VycmVudGx5IGFzc29jaWF0ZWQg
d2l0aCBhIGNhY2hlIGluIHRoaXMgZ3JvdXAuCi0gICAgICAgICAgICBwb3N0TGlzdGVuZXJUYXNr
KEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFUlJPUl9FVkVOVCwgbV9hc3NvY2lhdGVkRG9jdW1lbnRM
b2FkZXJzKTsKKyAgICAgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmVycm9y
RXZlbnQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CiAgICAgICAgICAgICAvLyBEaXNh
c3NvY2lhdGUgdGhlIHBlbmRpbmcgbWFzdGVyIGVudHJpZXMgZnJvbSB0aGUgZmFpbGVkIG5ldyBj
YWNoZS4gTm90ZSB0aGF0CiAgICAgICAgICAgICAvLyBhbGwgb3RoZXIgbG9hZGVycyBpbiB0aGUg
bV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzIGFyZSBzdGlsbCBhc3NvY2lhdGVkIHdpdGgKICAg
ICAgICAgICAgIC8vIHNvbWUgb3RoZXIgY2FjaGUgaW4gdGhpcyBncm91cC4gVGhleSBhcmUgbm90
IGFzc29jaWF0ZWQgd2l0aCB0aGUgZmFpbGVkIG5ldyBjYWNoZS4KQEAgLTkzOSwxMiArOTI5LDEy
IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpjaGVja0lmTG9hZElzQ29tcGxldGUoKQog
ICAgICAgICAgICAgVmVjdG9yPERvY3VtZW50TG9hZGVyKj4gbG9hZGVyczsKICAgICAgICAgICAg
IGNvcHlUb1ZlY3RvcihtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMsIGxvYWRlcnMpOwog
ICAgICAgICAgICAgZm9yIChhdXRvJiBsb2FkZXIgOiBsb2FkZXJzKQotICAgICAgICAgICAgICAg
IGRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKGxvYWRlcik7IC8vIFRoaXMgY2FuIGRlbGV0ZSB0
aGlzIGdyb3VwLgorICAgICAgICAgICAgICAgIGRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKCps
b2FkZXIpOyAvLyBUaGlzIGNhbiBkZWxldGUgdGhpcyBncm91cC4KIAogICAgICAgICAgICAgLy8g
UmVpbnN0YXRlIHRoZSBvbGROZXdlc3RDYWNoZSwgaWYgdGhlcmUgd2FzIG9uZS4KICAgICAgICAg
ICAgIGlmIChvbGROZXdlc3RDYWNoZSkgewogICAgICAgICAgICAgICAgIC8vIFRoaXMgd2lsbCBk
aXNjYXJkIHRoZSBmYWlsZWQgbmV3IGNhY2hlLgotICAgICAgICAgICAgICAgIHNldE5ld2VzdENh
Y2hlKFdURk1vdmUob2xkTmV3ZXN0Q2FjaGUpKTsKKyAgICAgICAgICAgICAgICBzZXROZXdlc3RD
YWNoZShvbGROZXdlc3RDYWNoZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICAgICAgICAgIH0gZWxz
ZSB7CiAgICAgICAgICAgICAgICAgLy8gV2UgbXVzdCBoYXZlIGJlZW4gZGVsZXRlZCBieSB0aGUg
bGFzdCBjYWxsIHRvIGRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKCkuCiAgICAgICAgICAgICAg
ICAgcmV0dXJuOwpAQCAtOTczLDE0ICs5NjMsMTMgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3Jv
dXA6OnN0YXJ0TG9hZGluZ0VudHJ5KCkKICAgICAgICAgcmV0dXJuOwogICAgIH0KICAgICAKLSAg
ICBFbnRyeU1hcDo6Y29uc3RfaXRlcmF0b3IgaXQgPSBtX3BlbmRpbmdFbnRyaWVzLmJlZ2luKCk7
CisgICAgYXV0byBmaXJzdFBlbmRpbmdFbnRyeVVSTCA9IG1fcGVuZGluZ0VudHJpZXMuYmVnaW4o
KS0+a2V5OwogCi0gICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6UFJP
R1JFU1NfRVZFTlQsIG1fcHJvZ3Jlc3NUb3RhbCwgbV9wcm9ncmVzc0RvbmUsIG1fYXNzb2NpYXRl
ZERvY3VtZW50TG9hZGVycyk7CisgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkucHJv
Z3Jlc3NFdmVudCwgbV9wcm9ncmVzc1RvdGFsLCBtX3Byb2dyZXNzRG9uZSwgbV9hc3NvY2lhdGVk
RG9jdW1lbnRMb2FkZXJzKTsKICAgICBtX3Byb2dyZXNzRG9uZSsrOwogCiAgICAgQVNTRVJUKCFt
X2N1cnJlbnRIYW5kbGUpOwotICAgIAotICAgIG1fY3VycmVudEhhbmRsZSA9IGNyZWF0ZVJlc291
cmNlSGFuZGxlKFVSTChQYXJzZWRVUkxTdHJpbmcsIGl0LT5rZXkpLCBtX25ld2VzdENhY2hlID8g
bV9uZXdlc3RDYWNoZS0+cmVzb3VyY2VGb3JVUkwoaXQtPmtleSkgOiAwKTsKKyAgICBtX2N1cnJl
bnRIYW5kbGUgPSBjcmVhdGVSZXNvdXJjZUhhbmRsZShVUkwoUGFyc2VkVVJMU3RyaW5nLCBmaXJz
dFBlbmRpbmdFbnRyeVVSTCksIG1fbmV3ZXN0Q2FjaGUgPyBtX25ld2VzdENhY2hlLT5yZXNvdXJj
ZUZvclVSTChmaXJzdFBlbmRpbmdFbnRyeVVSTCkgOiAwKTsKIH0KIAogdm9pZCBBcHBsaWNhdGlv
bkNhY2hlR3JvdXA6OmRlbGl2ZXJEZWxheWVkTWFpblJlc291cmNlcygpCkBAIC05ODgsMTkgKzk3
NywxNSBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZGVsaXZlckRlbGF5ZWRNYWluUmVz
b3VyY2VzKCkKICAgICAvLyBOZWVkIHRvIGNvcHkgbG9hZGVycywgYmVjYXVzZSB0aGUgY2FjaGUg
Z3JvdXAgbWF5IGJlIGRlc3Ryb3llZCBhdCB0aGUgZW5kIG9mIGl0ZXJhdGlvbi4KICAgICBWZWN0
b3I8RG9jdW1lbnRMb2FkZXIqPiBsb2FkZXJzOwogICAgIGNvcHlUb1ZlY3RvcihtX3BlbmRpbmdN
YXN0ZXJSZXNvdXJjZUxvYWRlcnMsIGxvYWRlcnMpOwotICAgIHNpemVfdCBjb3VudCA9IGxvYWRl
cnMuc2l6ZSgpOwotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpICE9IGNvdW50OyArK2kpIHsKLSAg
ICAgICAgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciA9IGxvYWRlcnNbaV07CisgICAgZm9yIChhdXRv
KiBsb2FkZXIgOiBsb2FkZXJzKSB7CiAgICAgICAgIGlmIChsb2FkZXItPmlzTG9hZGluZ01haW5S
ZXNvdXJjZSgpKQogICAgICAgICAgICAgY29udGludWU7Ci0KLSAgICAgICAgY29uc3QgUmVzb3Vy
Y2VFcnJvciYgZXJyb3IgPSBsb2FkZXItPm1haW5Eb2N1bWVudEVycm9yKCk7Ci0gICAgICAgIGlm
IChlcnJvci5pc051bGwoKSkKLSAgICAgICAgICAgIGZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJj
ZShsb2FkZXIpOworICAgICAgICBpZiAobG9hZGVyLT5tYWluRG9jdW1lbnRFcnJvcigpLmlzTnVs
bCgpKQorICAgICAgICAgICAgZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKCpsb2FkZXIpOwog
ICAgICAgICBlbHNlCi0gICAgICAgICAgICBmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKGxvYWRl
cik7CisgICAgICAgICAgICBmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKCpsb2FkZXIpOwogICAg
IH0KLSAgICBpZiAoIWNvdW50KQorICAgIGlmIChsb2FkZXJzLmlzRW1wdHkoKSkKICAgICAgICAg
Y2hlY2tJZkxvYWRJc0NvbXBsZXRlKCk7CiB9CiAKQEAgLTEwMDgsMTMgKzk5MywxMiBAQCB2b2lk
IEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6YWRkRW50cnkoY29uc3QgU3RyaW5nJiB1cmwsIHVuc2ln
bmVkIHR5cGUpCiB7CiAgICAgQVNTRVJUKG1fY2FjaGVCZWluZ1VwZGF0ZWQpOwogICAgIEFTU0VS
VCghVVJMKFBhcnNlZFVSTFN0cmluZywgdXJsKS5oYXNGcmFnbWVudElkZW50aWZpZXIoKSk7Ci0g
ICAgCisKICAgICAvLyBEb24ndCBhZGQgdGhlIFVSTCBpZiB3ZSBhbHJlYWR5IGhhdmUgYW4gbWFz
dGVyIHJlc291cmNlIGluIHRoZSBjYWNoZQogICAgIC8vIChpLmUuLCB0aGUgbWFpbiByZXNvdXJj
ZSBmaW5pc2hlZCBsb2FkaW5nIGJlZm9yZSB0aGUgbWFuaWZlc3QpLgotICAgIGlmIChBcHBsaWNh
dGlvbkNhY2hlUmVzb3VyY2UqIHJlc291cmNlID0gbV9jYWNoZUJlaW5nVXBkYXRlZC0+cmVzb3Vy
Y2VGb3JVUkwodXJsKSkgeworICAgIGlmIChhdXRvKiByZXNvdXJjZSA9IG1fY2FjaGVCZWluZ1Vw
ZGF0ZWQtPnJlc291cmNlRm9yVVJMKHVybCkpIHsKICAgICAgICAgQVNTRVJUKHJlc291cmNlLT50
eXBlKCkgJiBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6Ok1hc3Rlcik7CiAgICAgICAgIEFTU0VS
VCghbV9mcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKS0+aXNMb2FkaW5nTWFpblJlc291
cmNlKCkpOwotICAgIAogICAgICAgICByZXNvdXJjZS0+YWRkVHlwZSh0eXBlKTsKICAgICAgICAg
cmV0dXJuOwogICAgIH0KQEAgLTEwMjUsMTEgKzEwMDksOCBAQCB2b2lkIEFwcGxpY2F0aW9uQ2Fj
aGVHcm91cDo6YWRkRW50cnkoY29uc3QgU3RyaW5nJiB1cmwsIHVuc2lnbmVkIHR5cGUpCiAgICAg
ICAgIG1fbWFuaWZlc3RSZXNvdXJjZS0+YWRkVHlwZSh0eXBlKTsKICAgICAgICAgcmV0dXJuOwog
ICAgIH0KLSAgICAKLSAgICBFbnRyeU1hcDo6QWRkUmVzdWx0IHJlc3VsdCA9IG1fcGVuZGluZ0Vu
dHJpZXMuYWRkKHVybCwgdHlwZSk7Ci0gICAgCi0gICAgaWYgKCFyZXN1bHQuaXNOZXdFbnRyeSkK
LSAgICAgICAgcmVzdWx0Lml0ZXJhdG9yLT52YWx1ZSB8PSB0eXBlOworCisgICAgbV9wZW5kaW5n
RW50cmllcy5hZGQodXJsLCB0eXBlKS5pdGVyYXRvci0+dmFsdWUgfD0gdHlwZTsKIH0KIAogdm9p
ZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFzc29jaWF0ZURvY3VtZW50TG9hZGVyV2l0aENhY2hl
KERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIEFwcGxpY2F0aW9uQ2FjaGUqIGNhY2hlKQpAQCAtMTA0
MCw2MyArMTAyMSw2MyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6YXNzb2NpYXRlRG9j
dW1lbnRMb2FkZXJXaXRoQ2FjaGUoRG9jdW1lbnRMb2FkZXIqIGxvYQogCiAgICAgQVNTRVJUKCFt
X2lzT2Jzb2xldGUpOwogCi0gICAgbG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5zZXRB
cHBsaWNhdGlvbkNhY2hlKGNhY2hlKTsKKyAgICBsb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCkuc2V0QXBwbGljYXRpb25DYWNoZShjYWNoZSk7CiAKICAgICBBU1NFUlQoIW1fYXNzb2NpYXRl
ZERvY3VtZW50TG9hZGVycy5jb250YWlucyhsb2FkZXIpKTsKICAgICBtX2Fzc29jaWF0ZWREb2N1
bWVudExvYWRlcnMuYWRkKGxvYWRlcik7CiB9CiAKLWNsYXNzIENocm9tZUNsaWVudENhbGxiYWNr
VGltZXI6IHB1YmxpYyBUaW1lckJhc2UgeworY2xhc3MgQ2hyb21lQ2xpZW50Q2FsbGJhY2tUaW1l
ciBmaW5hbCA6IHB1YmxpYyBUaW1lckJhc2UgewogcHVibGljOgotICAgIENocm9tZUNsaWVudENh
bGxiYWNrVGltZXIoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBjYWNoZUdyb3VwKQotICAgICAgICA6
IG1fY2FjaGVHcm91cChjYWNoZUdyb3VwKQorICAgIENocm9tZUNsaWVudENhbGxiYWNrVGltZXIo
QXBwbGljYXRpb25DYWNoZUdyb3VwJiBncm91cCkKKyAgICAgICAgOiBtX2dyb3VwKGdyb3VwKQog
ICAgIHsKICAgICB9CiAKIHByaXZhdGU6Ci0gICAgdm9pZCBmaXJlZCgpIG92ZXJyaWRlCisgICAg
dm9pZCBmaXJlZCgpIGZpbmFsCiAgICAgewotICAgICAgICBtX2NhY2hlR3JvdXAtPmRpZFJlYWNo
TWF4QXBwQ2FjaGVTaXplKCk7CisgICAgICAgIG1fZ3JvdXAuZGlkUmVhY2hNYXhBcHBDYWNoZVNp
emUoKTsKICAgICAgICAgZGVsZXRlIHRoaXM7CiAgICAgfQotICAgIC8vIE5vdGUgdGhhdCB0aGVy
ZSBpcyBubyBuZWVkIHRvIHVzZSBhIFJlZlB0ciBoZXJlLiBUaGUgQXBwbGljYXRpb25DYWNoZUdy
b3VwIGluc3RhbmNlIGlzIGd1YXJhbnRlZWQKLSAgICAvLyB0byBiZSBhbGl2ZSB3aGVuIHRoZSB0
aW1lciBmaXJlcyBzaW5jZSBpbnZva2luZyB0aGUgQ2hyb21lQ2xpZW50IGNhbGxiYWNrIGlzIHBh
cnQgb2YgaXRzIG5vcm1hbAorCisgICAgLy8gTm90ZSB0aGF0IHRoZXJlIGlzIG5vIG5lZWQgdG8g
dXNlIGEgUmVmIGhlcmUuIFRoZSBBcHBsaWNhdGlvbkNhY2hlR3JvdXAgaW5zdGFuY2UgaXMgZ3Vh
cmFudGVlZAorICAgIC8vIHRvIGJlIGFsaXZlIHdoZW4gdGhlIHRpbWVyIGZpcmVzIHNpbmNlIGlu
dm9raW5nIHRoZSBjYWxsYmFjayBpcyBwYXJ0IG9mIGl0cyBub3JtYWwKICAgICAvLyB1cGRhdGUg
bWFjaGluZXJ5IGFuZCBub3RoaW5nIGNhbiB5ZXQgY2F1c2UgaXQgdG8gZ2V0IGRlbGV0ZWQuCi0g
ICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBtX2NhY2hlR3JvdXA7CisgICAgQXBwbGljYXRpb25D
YWNoZUdyb3VwJiBtX2dyb3VwOwogfTsKIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNj
aGVkdWxlUmVhY2hlZE1heEFwcENhY2hlU2l6ZUNhbGxiYWNrKCkKIHsKICAgICBBU1NFUlQoaXNN
YWluVGhyZWFkKCkpOwotICAgIENocm9tZUNsaWVudENhbGxiYWNrVGltZXIqIHRpbWVyID0gbmV3
IENocm9tZUNsaWVudENhbGxiYWNrVGltZXIodGhpcyk7CisgICAgYXV0byogdGltZXIgPSBuZXcg
Q2hyb21lQ2xpZW50Q2FsbGJhY2tUaW1lcigqdGhpcyk7CiAgICAgdGltZXItPnN0YXJ0T25lU2hv
dCgwKTsKICAgICAvLyBUaGUgdGltZXIgd2lsbCBkZWxldGUgaXRzZWxmIG9uY2UgaXQgZmlyZXMu
CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpwb3N0TGlzdGVuZXJUYXNrKEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0OjpFdmVudElEIGV2ZW50SUQsIGludCBwcm9ncmVzc1RvdGFsLCBpbnQg
cHJvZ3Jlc3NEb25lLCBjb25zdCBIYXNoU2V0PERvY3VtZW50TG9hZGVyKj4mIGxvYWRlclNldCkK
K3ZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpwb3N0TGlzdGVuZXJUYXNrKGNvbnN0IEF0b21p
Y1N0cmluZyYgZXZlbnRUeXBlLCBpbnQgcHJvZ3Jlc3NUb3RhbCwgaW50IHByb2dyZXNzRG9uZSwg
Y29uc3QgSGFzaFNldDxEb2N1bWVudExvYWRlcio+JiBsb2FkZXJTZXQpCiB7CiAgICAgZm9yIChh
dXRvJiBsb2FkZXIgOiBsb2FkZXJTZXQpCi0gICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnRJ
RCwgcHJvZ3Jlc3NUb3RhbCwgcHJvZ3Jlc3NEb25lLCBsb2FkZXIpOworICAgICAgICBwb3N0TGlz
dGVuZXJUYXNrKGV2ZW50VHlwZSwgcHJvZ3Jlc3NUb3RhbCwgcHJvZ3Jlc3NEb25lLCAqbG9hZGVy
KTsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnBvc3RMaXN0ZW5lclRhc2soQXBw
bGljYXRpb25DYWNoZUhvc3Q6OkV2ZW50SUQgZXZlbnRJRCwgaW50IHByb2dyZXNzVG90YWwsIGlu
dCBwcm9ncmVzc0RvbmUsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCit2b2lkIEFwcGxpY2F0aW9u
Q2FjaGVHcm91cDo6cG9zdExpc3RlbmVyVGFzayhjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlw
ZSwgaW50IHByb2dyZXNzVG90YWwsIGludCBwcm9ncmVzc0RvbmUsIERvY3VtZW50TG9hZGVyJiBs
b2FkZXIpCiB7Ci0gICAgRnJhbWUqIGZyYW1lID0gbG9hZGVyLT5mcmFtZSgpOworICAgIGF1dG8q
IGZyYW1lID0gbG9hZGVyLmZyYW1lKCk7CiAgICAgaWYgKCFmcmFtZSkKICAgICAgICAgcmV0dXJu
OwogICAgIAotICAgIEFTU0VSVChmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSA9PSBs
b2FkZXIpOworICAgIEFTU0VSVChmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSA9PSAm
bG9hZGVyKTsKIAotICAgIFJlZlB0cjxEb2N1bWVudExvYWRlcj4gbG9hZGVyUHJvdGVjdG9yKGxv
YWRlcik7Ci0gICAgZnJhbWUtPmRvY3VtZW50KCktPnBvc3RUYXNrKFtsb2FkZXJQcm90ZWN0b3Is
IGV2ZW50SUQsIHByb2dyZXNzVG90YWwsIHByb2dyZXNzRG9uZV0gKFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQmIGNvbnRleHQpIHsKKyAgICBSZWZQdHI8RG9jdW1lbnRMb2FkZXI+IHByb3RlY3RlZExv
YWRlcigmbG9hZGVyKTsKKyAgICBmcmFtZS0+ZG9jdW1lbnQoKS0+cG9zdFRhc2soW3Byb3RlY3Rl
ZExvYWRlciwgJmV2ZW50VHlwZSwgcHJvZ3Jlc3NUb3RhbCwgcHJvZ3Jlc3NEb25lXSAoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCkgewogICAgICAgICBBU1NFUlRfVU5VU0VEKGNvbnRl
eHQsIGNvbnRleHQuaXNEb2N1bWVudCgpKTsKLSAgICAgICAgRnJhbWUqIGZyYW1lID0gbG9hZGVy
UHJvdGVjdG9yLT5mcmFtZSgpOworICAgICAgICBhdXRvKiBmcmFtZSA9IHByb3RlY3RlZExvYWRl
ci0+ZnJhbWUoKTsKICAgICAgICAgaWYgKCFmcmFtZSkKICAgICAgICAgICAgIHJldHVybjsKIAot
ICAgICAgICBBU1NFUlQoZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkgPT0gbG9hZGVy
UHJvdGVjdG9yKTsKLQotICAgICAgICBsb2FkZXJQcm90ZWN0b3ItPmFwcGxpY2F0aW9uQ2FjaGVI
b3N0KCktPm5vdGlmeURPTUFwcGxpY2F0aW9uQ2FjaGUoZXZlbnRJRCwgcHJvZ3Jlc3NUb3RhbCwg
cHJvZ3Jlc3NEb25lKTsKKyAgICAgICAgQVNTRVJUKGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExv
YWRlcigpID09IHByb3RlY3RlZExvYWRlcik7CisgICAgICAgIHByb3RlY3RlZExvYWRlci0+YXBw
bGljYXRpb25DYWNoZUhvc3QoKS5ub3RpZnlET01BcHBsaWNhdGlvbkNhY2hlKGV2ZW50VHlwZSwg
cHJvZ3Jlc3NUb3RhbCwgcHJvZ3Jlc3NEb25lKTsKICAgICB9KTsKIH0KIApAQCAtMTEwOCw4ICsx
MDg5LDcgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNldFVwZGF0ZVN0YXR1cyhVcGRh
dGVTdGF0dXMgc3RhdHVzKQogdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNsZWFyU3RvcmFn
ZUlEKCkKIHsKICAgICBtX3N0b3JhZ2VJRCA9IDA7Ci0gICAgCi0gICAgZm9yIChjb25zdCBhdXRv
JiBjYWNoZSA6IG1fY2FjaGVzKQorICAgIGZvciAoYXV0byYgY2FjaGUgOiBtX2NhY2hlcykKICAg
ICAgICAgY2FjaGUtPmNsZWFyU3RvcmFnZUlEKCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuaCBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuaAppbmRleCBiMDY0
NGM0NmM4NjY5MWNhOGQwMDkzNTU3NjhmYjU4OTE2ZGY3OWIxLi5mYzg1MWRhN2NmYThjNDMzMmY2
ODVlYTI5MTIyZTM3ZDRkYjdhYWEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
YXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5oCkBAIC0xLDUgKzEsNSBAQAogLyoK
LSAqIENvcHlyaWdodCAoQykgMjAwOCwgMjAwOSwgMjAxMCBBcHBsZSBJbmMuIEFsbCBSaWdodHMg
UmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxNyBBcHBsZSBJbmMuIEFsbCBSaWdo
dHMgUmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTQ5LDggKzQ5
LDkgQEAgZW51bSBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlT3B0aW9uIHsKICAgICBBcHBsaWNhdGlv
bkNhY2hlVXBkYXRlV2l0aG91dEJyb3dzaW5nQ29udGV4dAogfTsKIAotY2xhc3MgQXBwbGljYXRp
b25DYWNoZUdyb3VwIDogUmVzb3VyY2VIYW5kbGVDbGllbnQgewotICAgIFdURl9NQUtFX05PTkNP
UFlBQkxFKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCk7IFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwor
Y2xhc3MgQXBwbGljYXRpb25DYWNoZUdyb3VwIGZpbmFsIDogcHJpdmF0ZSBSZXNvdXJjZUhhbmRs
ZUNsaWVudCB7CisgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoQXBwbGljYXRpb25DYWNoZUdyb3Vw
KTsKKyAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKICAgICBleHBsaWNpdCBB
cHBsaWNhdGlvbkNhY2hlR3JvdXAoUmVmPEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlPiYmLCBjb25z
dCBVUkwmIG1hbmlmZXN0VVJMKTsKICAgICB2aXJ0dWFsIH5BcHBsaWNhdGlvbkNhY2hlR3JvdXAo
KTsKQEAgLTYwLDggKzYxLDggQEAgcHVibGljOgogICAgIHN0YXRpYyBBcHBsaWNhdGlvbkNhY2hl
KiBjYWNoZUZvck1haW5SZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIERvY3VtZW50TG9h
ZGVyKik7CiAgICAgc3RhdGljIEFwcGxpY2F0aW9uQ2FjaGUqIGZhbGxiYWNrQ2FjaGVGb3JNYWlu
UmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBEb2N1bWVudExvYWRlciopOwogICAgIAot
ICAgIHN0YXRpYyB2b2lkIHNlbGVjdENhY2hlKEZyYW1lKiwgY29uc3QgVVJMJiBtYW5pZmVzdFVS
TCk7Ci0gICAgc3RhdGljIHZvaWQgc2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3RVUkwoRnJhbWUq
KTsKKyAgICBzdGF0aWMgdm9pZCBzZWxlY3RDYWNoZShGcmFtZSYsIGNvbnN0IFVSTCYgbWFuaWZl
c3RVUkwpOworICAgIHN0YXRpYyB2b2lkIHNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0VVJMKEZy
YW1lJik7CiAKICAgICBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZSYgc3RvcmFnZSgpIHsgcmV0dXJu
IG1fc3RvcmFnZTsgfQogICAgIGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwoKSBjb25zdCB7IHJldHVy
biBtX21hbmlmZXN0VVJMOyB9CkBAIC03MywzMSArNzQsMzEgQEAgcHVibGljOgogICAgIHVuc2ln
bmVkIHN0b3JhZ2VJRCgpIGNvbnN0IHsgcmV0dXJuIG1fc3RvcmFnZUlEOyB9CiAgICAgdm9pZCBj
bGVhclN0b3JhZ2VJRCgpOwogICAgIAotICAgIHZvaWQgdXBkYXRlKEZyYW1lKiwgQXBwbGljYXRp
b25DYWNoZVVwZGF0ZU9wdGlvbik7IC8vIEZJWE1FOiBGcmFtZSBzaG91bGQgbm90IGJlIG5lZWRl
ZCB3aGVuIHVwZGF0aW5nIHdpdGhvdXQgYnJvd3NpbmcgY29udGV4dC4KLSAgICB2b2lkIGNhY2hl
RGVzdHJveWVkKEFwcGxpY2F0aW9uQ2FjaGUqKTsKKyAgICB2b2lkIHVwZGF0ZShGcmFtZSYsIEFw
cGxpY2F0aW9uQ2FjaGVVcGRhdGVPcHRpb24pOyAvLyBGSVhNRTogRnJhbWUgc2hvdWxkIG5vdCBi
ZSBuZWVkZWQgd2hlbiB1cGRhdGluZyB3aXRob3V0IGJyb3dzaW5nIGNvbnRleHQuCisgICAgdm9p
ZCBjYWNoZURlc3Ryb3llZChBcHBsaWNhdGlvbkNhY2hlJik7CiAgICAgCi0gICAgdm9pZCBhYm9y
dChGcmFtZSopOworICAgIHZvaWQgYWJvcnQoRnJhbWUmKTsKIAotICAgIGJvb2wgY2FjaGVJc0Nv
bXBsZXRlKEFwcGxpY2F0aW9uQ2FjaGUqIGNhY2hlKSB7IHJldHVybiBtX2NhY2hlcy5jb250YWlu
cyhjYWNoZSk7IH0KKyAgICBib29sIGNhY2hlSXNDb21wbGV0ZShBcHBsaWNhdGlvbkNhY2hlJiBj
YWNoZSkgeyByZXR1cm4gbV9jYWNoZXMuY29udGFpbnMoJmNhY2hlKTsgfQogCi0gICAgdm9pZCBz
dG9wTG9hZGluZ0luRnJhbWUoRnJhbWUqKTsKKyAgICB2b2lkIHN0b3BMb2FkaW5nSW5GcmFtZShG
cmFtZSYpOwogCiAgICAgQXBwbGljYXRpb25DYWNoZSogbmV3ZXN0Q2FjaGUoKSBjb25zdCB7IHJl
dHVybiBtX25ld2VzdENhY2hlLmdldCgpOyB9Ci0gICAgdm9pZCBzZXROZXdlc3RDYWNoZShQYXNz
UmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+KTsKKyAgICB2b2lkIHNldE5ld2VzdENhY2hlKFJlZjxB
cHBsaWNhdGlvbkNhY2hlPiYmKTsKIAogICAgIHZvaWQgbWFrZU9ic29sZXRlKCk7CiAgICAgYm9v
bCBpc09ic29sZXRlKCkgY29uc3QgeyByZXR1cm4gbV9pc09ic29sZXRlOyB9CiAKLSAgICB2b2lk
IGZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZShEb2N1bWVudExvYWRlciopOwotICAgIHZvaWQg
ZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZShEb2N1bWVudExvYWRlciopOworICAgIHZvaWQgZmlu
aXNoZWRMb2FkaW5nTWFpblJlc291cmNlKERvY3VtZW50TG9hZGVyJik7CisgICAgdm9pZCBmYWls
ZWRMb2FkaW5nTWFpblJlc291cmNlKERvY3VtZW50TG9hZGVyJik7CiAKLSAgICB2b2lkIGRpc2Fz
c29jaWF0ZURvY3VtZW50TG9hZGVyKERvY3VtZW50TG9hZGVyKik7CisgICAgdm9pZCBkaXNhc3Nv
Y2lhdGVEb2N1bWVudExvYWRlcihEb2N1bWVudExvYWRlciYpOwogCiBwcml2YXRlOgotICAgIHN0
YXRpYyB2b2lkIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkV2ZW50SUQg
aWQsIGNvbnN0IEhhc2hTZXQ8RG9jdW1lbnRMb2FkZXIqPiYgc2V0KSB7IHBvc3RMaXN0ZW5lclRh
c2soaWQsIDAsIDAsIHNldCk7IH0KLSAgICBzdGF0aWMgdm9pZCBwb3N0TGlzdGVuZXJUYXNrKEFw
cGxpY2F0aW9uQ2FjaGVIb3N0OjpFdmVudElEIGlkLCBEb2N1bWVudExvYWRlciogbG9hZGVyKSAg
eyBwb3N0TGlzdGVuZXJUYXNrKGlkLCAwLCAwLCBsb2FkZXIpOyB9Ci0gICAgc3RhdGljIHZvaWQg
cG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RXZlbnRJRCwgaW50IHByb2dy
ZXNzVG90YWwsIGludCBwcm9ncmVzc0RvbmUsIGNvbnN0IEhhc2hTZXQ8RG9jdW1lbnRMb2FkZXIq
PiYpOwotICAgIHN0YXRpYyB2b2lkIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhv
c3Q6OkV2ZW50SUQsIGludCBwcm9ncmVzc1RvdGFsLCBpbnQgcHJvZ3Jlc3NEb25lLCBEb2N1bWVu
dExvYWRlciopOworICAgIHN0YXRpYyB2b2lkIHBvc3RMaXN0ZW5lclRhc2soY29uc3QgQXRvbWlj
U3RyaW5nJiBldmVudFR5cGUsIGNvbnN0IEhhc2hTZXQ8RG9jdW1lbnRMb2FkZXIqPiYgc2V0KSB7
IHBvc3RMaXN0ZW5lclRhc2soZXZlbnRUeXBlLCAwLCAwLCBzZXQpOyB9CisgICAgc3RhdGljIHZv
aWQgcG9zdExpc3RlbmVyVGFzayhjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgRG9jdW1l
bnRMb2FkZXImIGxvYWRlcikgIHsgcG9zdExpc3RlbmVyVGFzayhldmVudFR5cGUsIDAsIDAsIGxv
YWRlcik7IH0KKyAgICBzdGF0aWMgdm9pZCBwb3N0TGlzdGVuZXJUYXNrKGNvbnN0IEF0b21pY1N0
cmluZyYgZXZlbnRUeXBlLCBpbnQgcHJvZ3Jlc3NUb3RhbCwgaW50IHByb2dyZXNzRG9uZSwgY29u
c3QgSGFzaFNldDxEb2N1bWVudExvYWRlcio+Jik7CisgICAgc3RhdGljIHZvaWQgcG9zdExpc3Rl
bmVyVGFzayhjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgaW50IHByb2dyZXNzVG90YWws
IGludCBwcm9ncmVzc0RvbmUsIERvY3VtZW50TG9hZGVyJik7CiAKICAgICB2b2lkIHNjaGVkdWxl
UmVhY2hlZE1heEFwcENhY2hlU2l6ZUNhbGxiYWNrKCk7CiAKQEAgLTEzNSw3ICsxMzYsNyBAQCBw
cml2YXRlOgogCiAgICAgVVJMIG1fbWFuaWZlc3RVUkw7CiAgICAgUmVmUHRyPFNlY3VyaXR5T3Jp
Z2luPiBtX29yaWdpbjsKLSAgICBVcGRhdGVTdGF0dXMgbV91cGRhdGVTdGF0dXM7CisgICAgVXBk
YXRlU3RhdHVzIG1fdXBkYXRlU3RhdHVzIHsgSWRsZSB9OwogICAgIAogICAgIC8vIFRoaXMgaXMg
dGhlIG5ld2VzdCBjb21wbGV0ZSBjYWNoZSBpbiB0aGUgZ3JvdXAuCiAgICAgUmVmUHRyPEFwcGxp
Y2F0aW9uQ2FjaGU+IG1fbmV3ZXN0Q2FjaGU7CkBAIC0xNTAsMjYgKzE1MSwyNSBAQCBwcml2YXRl
OgogICAgIC8vIExpc3Qgb2YgcGVuZGluZyBtYXN0ZXIgZW50cmllcywgdXNlZCBkdXJpbmcgdGhl
IHVwZGF0ZSBwcm9jZXNzIHRvIGVuc3VyZSB0aGF0IG5ldyBtYXN0ZXIgZW50cmllcyBhcmUgY2Fj
aGVkLgogICAgIEhhc2hTZXQ8RG9jdW1lbnRMb2FkZXIqPiBtX3BlbmRpbmdNYXN0ZXJSZXNvdXJj
ZUxvYWRlcnM7CiAgICAgLy8gSG93IG1hbnkgb2YgdGhlIGFib3ZlIHBlbmRpbmcgbWFzdGVyIGVu
dHJpZXMgaGF2ZSBub3QgeWV0IGZpbmlzaGVkIGRvd25sb2FkaW5nLgotICAgIGludCBtX2Rvd25s
b2FkaW5nUGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVyc0NvdW50OworICAgIGludCBtX2Rvd25s
b2FkaW5nUGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVyc0NvdW50IHsgMCB9OwogICAgIAogICAg
IC8vIFRoZXNlIGFyZSBhbGwgdGhlIGRvY3VtZW50IGxvYWRlcnMgdGhhdCBhcmUgYXNzb2NpYXRl
ZCB3aXRoIGEgY2FjaGUgaW4gdGhpcyBncm91cC4KICAgICBIYXNoU2V0PERvY3VtZW50TG9hZGVy
Kj4gbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzOwogCiAgICAgLy8gVGhlIFVSTHMgYW5kIHR5
cGVzIG9mIHBlbmRpbmcgY2FjaGUgZW50cmllcy4KLSAgICB0eXBlZGVmIEhhc2hNYXA8U3RyaW5n
LCB1bnNpZ25lZD4gRW50cnlNYXA7Ci0gICAgRW50cnlNYXAgbV9wZW5kaW5nRW50cmllczsKKyAg
ICBIYXNoTWFwPFN0cmluZywgdW5zaWduZWQ+IG1fcGVuZGluZ0VudHJpZXM7CiAgICAgCiAgICAg
Ly8gVGhlIHRvdGFsIG51bWJlciBvZiBpdGVtcyB0byBiZSBwcm9jZXNzZWQgdG8gdXBkYXRlIHRo
ZSBjYWNoZSBncm91cCBhbmQgdGhlIG51bWJlciB0aGF0IGhhdmUgYmVlbiBkb25lLgotICAgIGlu
dCBtX3Byb2dyZXNzVG90YWw7Ci0gICAgaW50IG1fcHJvZ3Jlc3NEb25lOworICAgIGludCBtX3By
b2dyZXNzVG90YWwgeyAwIH07CisgICAgaW50IG1fcHJvZ3Jlc3NEb25lIHsgMCB9OwogCiAgICAg
Ly8gRnJhbWUgdXNlZCBmb3IgZmV0Y2hpbmcgcmVzb3VyY2VzIHdoZW4gdXBkYXRpbmcuCiAgICAg
Ly8gRklYTUU6IEFuIHVwZGF0ZSBzdGFydGVkIGJ5IGEgcGFydGljdWxhciBmcmFtZSBzaG91bGQg
bm90IHN0b3AgaWYgaXQgaXMgZGVzdHJveWVkLCBidXQgdGhlcmUgYXJlIG90aGVyIGZyYW1lcyBh
c3NvY2lhdGVkIHdpdGggdGhlIHNhbWUgY2FjaGUgZ3JvdXAuCi0gICAgRnJhbWUqIG1fZnJhbWU7
CisgICAgRnJhbWUqIG1fZnJhbWUgeyBudWxscHRyIH07CiAgIAogICAgIC8vIEFuIG9ic29sZXRl
IGNhY2hlIGdyb3VwIGlzIG5ldmVyIHN0b3JlZCwgYnV0IHRoZSBvcHBvc2l0ZSBpcyBub3QgdHJ1
ZSAtIHN0b3JpbmcgbWF5IGZhaWwgZm9yIG11bHRpcGxlIHJlYXNvbnMsIHN1Y2ggYXMgZXhjZWVk
aW5nIGRpc2sgcXVvdGEuCi0gICAgdW5zaWduZWQgbV9zdG9yYWdlSUQ7Ci0gICAgYm9vbCBtX2lz
T2Jzb2xldGU7CisgICAgdW5zaWduZWQgbV9zdG9yYWdlSUQgeyAwIH07CisgICAgYm9vbCBtX2lz
T2Jzb2xldGUgeyBmYWxzZSB9OwogCiAgICAgLy8gRHVyaW5nIHVwZGF0ZSwgdGhpcyBpcyB1c2Vk
IHRvIGhhbmRsZSBhc3luY2hyb25vdXNseSBhcnJpdmluZyByZXN1bHRzLgogICAgIGVudW0gQ29t
cGxldGlvblR5cGUgewpAQCAtMTc4LDEyICsxNzgsMTIgQEAgcHJpdmF0ZToKICAgICAgICAgRmFp
bHVyZSwKICAgICAgICAgQ29tcGxldGVkCiAgICAgfTsKLSAgICBDb21wbGV0aW9uVHlwZSBtX2Nv
bXBsZXRpb25UeXBlOworICAgIENvbXBsZXRpb25UeXBlIG1fY29tcGxldGlvblR5cGUgeyBOb25l
IH07CiAKICAgICAvLyBUaGlzIGZsYWcgaXMgc2V0IGltbWVkaWF0ZWx5IGFmdGVyIHRoZSBDaHJv
bWVDbGllbnQ6OnJlYWNoZWRNYXhBcHBDYWNoZVNpemUoKSBjYWxsYmFjayBpcyBpbnZva2VkIGFz
IGEgcmVzdWx0IG9mIHRoZSBzdG9yYWdlIGxheWVyIGZhaWxpbmcgdG8gc2F2ZSBhIGNhY2hlCiAg
ICAgLy8gZHVlIHRvIHJlYWNoaW5nIHRoZSBtYXhpbXVtIHNpemUgb2YgdGhlIGFwcGxpY2F0aW9u
IGNhY2hlIGRhdGFiYXNlIGZpbGUuIFRoaXMgZmxhZyBpcyB1c2VkIGJ5IEFwcGxpY2F0aW9uQ2Fj
aGVHcm91cDo6Y2hlY2tJZkxvYWRJc0NvbXBsZXRlKCkgdG8gZGVjaWRlCiAgICAgLy8gdGhlIGNv
dXJzZSBvZiBhY3Rpb24gaW4gY2FzZSBvZiB0aGlzIGZhaWx1cmUgKGkuZS4gY2FsbCB0aGUgQ2hy
b21lQ2xpZW50IGNhbGxiYWNrIG9yIHJ1biB0aGUgZmFpbHVyZSBzdGVwcykuCi0gICAgYm9vbCBt
X2NhbGxlZFJlYWNoZWRNYXhBcHBDYWNoZVNpemU7CisgICAgYm9vbCBtX2NhbGxlZFJlYWNoZWRN
YXhBcHBDYWNoZVNpemUgeyBmYWxzZSB9OwogICAgIAogICAgIFJlZlB0cjxSZXNvdXJjZUhhbmRs
ZT4gbV9jdXJyZW50SGFuZGxlOwogICAgIFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+
IG1fY3VycmVudFJlc291cmNlOwpAQCAtMTkzLDcgKzE5Myw3IEBAIHByaXZhdGU6CiAgICAgUmVm
UHRyPFJlc291cmNlSGFuZGxlPiBtX21hbmlmZXN0SGFuZGxlOwogCiAgICAgaW50NjRfdCBtX2F2
YWlsYWJsZVNwYWNlSW5RdW90YTsKLSAgICBib29sIG1fb3JpZ2luUXVvdGFFeGNlZWRlZFByZXZp
b3VzbHk7CisgICAgYm9vbCBtX29yaWdpblF1b3RhRXhjZWVkZWRQcmV2aW91c2x5IHsgZmFsc2Ug
fTsKIAogICAgIGZyaWVuZCBjbGFzcyBDaHJvbWVDbGllbnRDYWxsYmFja1RpbWVyOwogfTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hl
SG9zdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNo
ZUhvc3QuY3BwCmluZGV4IDdmNTAwNGM5ODlmOTllM2VlNzVlZjVkOWZjNjU5ZmVhNWQ0ZWM4M2Iu
LjkxMTQ2OTljODdmZjg1YzIxM2UwZGRhYTM4ZTM2ODZjNTVkYmJhOGEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlSG9zdC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVIb3N0LmNw
cApAQCAtMzIsNiArMzIsNyBAQAogI2luY2x1ZGUgIkNvbnRlbnRTZWN1cml0eVBvbGljeS5oIgog
I2luY2x1ZGUgIkRvY3VtZW50TG9hZGVyLmgiCiAjaW5jbHVkZSAiRE9NQXBwbGljYXRpb25DYWNo
ZS5oIgorI2luY2x1ZGUgIkV2ZW50TmFtZXMuaCIKICNpbmNsdWRlICJGaWxlU3lzdGVtLmgiCiAj
aW5jbHVkZSAiRnJhbWUuaCIKICNpbmNsdWRlICJGcmFtZUxvYWRlci5oIgpAQCAtNDgsMzEgKzQ5
LDI5IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpBcHBs
aWNhdGlvbkNhY2hlSG9zdChEb2N1bWVudExvYWRlciYgZG9jdW1lbnRMb2FkZXIpCi0gICAgOiBt
X2RvbUFwcGxpY2F0aW9uQ2FjaGUobnVsbHB0cikKLSAgICAsIG1fZG9jdW1lbnRMb2FkZXIoZG9j
dW1lbnRMb2FkZXIpCi0gICAgLCBtX2RlZmVyc0V2ZW50cyh0cnVlKQotICAgICwgbV9jYW5kaWRh
dGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAobnVsbHB0cikKKyAgICA6IG1fZG9jdW1lbnRMb2FkZXIo
ZG9jdW1lbnRMb2FkZXIpCiB7CiB9CiAKIEFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojp+QXBwbGljYXRp
b25DYWNoZUhvc3QoKQogewogICAgIEFTU0VSVCghbV9hcHBsaWNhdGlvbkNhY2hlIHx8ICFtX2Nh
bmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCB8fCBtX2FwcGxpY2F0aW9uQ2FjaGUtPmdyb3Vw
KCkgPT0gbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXApOwotCiAgICAgaWYgKG1fYXBw
bGljYXRpb25DYWNoZSkKLSAgICAgICAgbV9hcHBsaWNhdGlvbkNhY2hlLT5ncm91cCgpLT5kaXNh
c3NvY2lhdGVEb2N1bWVudExvYWRlcigmbV9kb2N1bWVudExvYWRlcik7CisgICAgICAgIG1fYXBw
bGljYXRpb25DYWNoZS0+Z3JvdXAoKS0+ZGlzYXNzb2NpYXRlRG9jdW1lbnRMb2FkZXIobV9kb2N1
bWVudExvYWRlcik7CiAgICAgZWxzZSBpZiAobV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3Jv
dXApCi0gICAgICAgIG1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwLT5kaXNhc3NvY2lh
dGVEb2N1bWVudExvYWRlcigmbV9kb2N1bWVudExvYWRlcik7CisgICAgICAgIG1fY2FuZGlkYXRl
QXBwbGljYXRpb25DYWNoZUdyb3VwLT5kaXNhc3NvY2lhdGVEb2N1bWVudExvYWRlcihtX2RvY3Vt
ZW50TG9hZGVyKTsKIH0KIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c2VsZWN0Q2FjaGVX
aXRob3V0TWFuaWZlc3QoKQogewotICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c2VsZWN0Q2Fj
aGVXaXRob3V0TWFuaWZlc3RVUkwobV9kb2N1bWVudExvYWRlci5mcmFtZSgpKTsKKyAgICBBU1NF
UlQobV9kb2N1bWVudExvYWRlci5mcmFtZSgpKTsKKyAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
OnNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0VVJMKCptX2RvY3VtZW50TG9hZGVyLmZyYW1lKCkp
OwogfQogCiB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpzZWxlY3RDYWNoZVdpdGhNYW5pZmVz
dChjb25zdCBVUkwmIG1hbmlmZXN0VVJMKQogewotICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6
c2VsZWN0Q2FjaGUobV9kb2N1bWVudExvYWRlci5mcmFtZSgpLCBtYW5pZmVzdFVSTCk7CisgICAg
QVNTRVJUKG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUoKSk7CisgICAgQXBwbGljYXRpb25DYWNoZUdy
b3VwOjpzZWxlY3RDYWNoZSgqbV9kb2N1bWVudExvYWRlci5mcmFtZSgpLCBtYW5pZmVzdFVSTCk7
CiB9CiAKIHZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6Om1heWJlTG9hZE1haW5SZXNvdXJjZShS
ZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFN1YnN0aXR1dGVEYXRhJiBzdWJzdGl0dXRlRGF0YSkK
QEAgLTE0MCwxMiArMTM5LDExIEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZUhvc3Q6Om1heWJlTG9h
ZEZhbGxiYWNrRm9yTWFpbkVycm9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYKIAogdm9pZCBBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6bWFpblJlc291cmNlRGF0YVJlY2VpdmVkKGNvbnN0IGNoYXIqLCBp
bnQsIGxvbmcgbG9uZywgYm9vbCkKIHsKLSAgICAvLyBUaGlzIG1ldGhvZCBpcyBoZXJlIHRvIGZh
Y2lsaXRhdGUgYWx0ZXJuYXRlIGltcGxlbWV0YXRpb25zIG9mIHRoaXMgaW50ZXJmYWNlIGJ5IHRo
ZSBob3N0IGJyb3dzZXIuCiB9CiAKIHZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmZhaWxlZExv
YWRpbmdNYWluUmVzb3VyY2UoKQogewotICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAg
PSBtX2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cDsKKyAgICBhdXRvKiBncm91cCA9IG1f
Y2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwOwogICAgIGlmICghZ3JvdXAgJiYgbV9hcHBs
aWNhdGlvbkNhY2hlKSB7CiAgICAgICAgIGlmIChtYWluUmVzb3VyY2VBcHBsaWNhdGlvbkNhY2hl
KCkpIHsKICAgICAgICAgICAgIC8vIEV2ZW4gd2hlbiB0aGUgbWFpbiByZXNvdXJjZSBpcyBiZWlu
ZyBsb2FkZWQgZnJvbSBhbiBhcHBsaWNhdGlvbiBjYWNoZSwgbG9hZGluZyBjYW4gZmFpbCBpZiBh
Ym9ydGVkLgpAQCAtMTU1LDE3ICsxNTMsMTcgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6
ZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZSgpCiAgICAgfQogICAgIAogICAgIGlmIChncm91cCkK
LSAgICAgICAgZ3JvdXAtPmZhaWxlZExvYWRpbmdNYWluUmVzb3VyY2UoJm1fZG9jdW1lbnRMb2Fk
ZXIpOworICAgICAgICBncm91cC0+ZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZShtX2RvY3VtZW50
TG9hZGVyKTsKIH0KIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6ZmluaXNoZWRMb2FkaW5n
TWFpblJlc291cmNlKCkKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwID0gY2Fu
ZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKCk7CisgICAgYXV0byogZ3JvdXAgPSBjYW5kaWRh
dGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKTsKICAgICBpZiAoIWdyb3VwICYmIGFwcGxpY2F0aW9u
Q2FjaGUoKSAmJiAhbWFpblJlc291cmNlQXBwbGljYXRpb25DYWNoZSgpKQogICAgICAgICBncm91
cCA9IGFwcGxpY2F0aW9uQ2FjaGUoKS0+Z3JvdXAoKTsKICAgICAKICAgICBpZiAoZ3JvdXApCi0g
ICAgICAgIGdyb3VwLT5maW5pc2hlZExvYWRpbmdNYWluUmVzb3VyY2UoJm1fZG9jdW1lbnRMb2Fk
ZXIpOworICAgICAgICBncm91cC0+ZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKG1fZG9jdW1l
bnRMb2FkZXIpOwogfQogCiBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjptYXliZUxvYWRSZXNv
dXJjZShSZXNvdXJjZUxvYWRlciYgbG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVl
c3QsIGNvbnN0IFVSTCYgb3JpZ2luYWxVUkwpCkBAIC0xODYsMTcgKzE4NCwxOSBAQCBib29sIEFw
cGxpY2F0aW9uQ2FjaGVIb3N0OjptYXliZUxvYWRSZXNvdXJjZShSZXNvdXJjZUxvYWRlciYgbG9h
ZGVyLCBjb25zdCBSZXNvdQogCiBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjptYXliZUxvYWRG
YWxsYmFja0ZvclJlZGlyZWN0KFJlc291cmNlTG9hZGVyKiByZXNvdXJjZUxvYWRlciwgUmVzb3Vy
Y2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3Bv
bnNlKQogewotICAgIGlmICghcmVkaXJlY3RSZXNwb25zZS5pc051bGwoKSAmJiAhcHJvdG9jb2xI
b3N0QW5kUG9ydEFyZUVxdWFsKHJlcXVlc3QudXJsKCksIHJlZGlyZWN0UmVzcG9uc2UudXJsKCkp
KQorICAgIGlmICghcmVkaXJlY3RSZXNwb25zZS5pc051bGwoKSAmJiAhcHJvdG9jb2xIb3N0QW5k
UG9ydEFyZUVxdWFsKHJlcXVlc3QudXJsKCksIHJlZGlyZWN0UmVzcG9uc2UudXJsKCkpKSB7CiAg
ICAgICAgIGlmIChzY2hlZHVsZUxvYWRGYWxsYmFja1Jlc291cmNlRnJvbUFwcGxpY2F0aW9uQ2Fj
aGUocmVzb3VyY2VMb2FkZXIpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQogICAg
IHJldHVybiBmYWxzZTsKIH0KIAogYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWF5YmVMb2Fk
RmFsbGJhY2tGb3JSZXNwb25zZShSZXNvdXJjZUxvYWRlciogcmVzb3VyY2VMb2FkZXIsIGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewotICAgIGlmIChyZXNwb25zZS5odHRwU3Rh
dHVzQ29kZSgpIC8gMTAwID09IDQgfHwgcmVzcG9uc2UuaHR0cFN0YXR1c0NvZGUoKSAvIDEwMCA9
PSA1KQorICAgIGlmIChyZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpIC8gMTAwID09IDQgfHwgcmVz
cG9uc2UuaHR0cFN0YXR1c0NvZGUoKSAvIDEwMCA9PSA1KSB7CiAgICAgICAgIGlmIChzY2hlZHVs
ZUxvYWRGYWxsYmFja1Jlc291cmNlRnJvbUFwcGxpY2F0aW9uQ2FjaGUocmVzb3VyY2VMb2FkZXIp
KQogICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQogICAgIHJldHVybiBmYWxzZTsKIH0K
IApAQCAtMjIwLDExICsyMjAsOSBAQCBVUkwgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmNyZWF0ZUZp
bGVVUkwoY29uc3QgU3RyaW5nJiBwYXRoKQogICAgIC8vIGFwcCBjYWNoZSBtZWRpYSBmaWxlcyBh
cmUgYWx3YXlzIGNyZWF0ZWQgd2l0aCBlbmNvZGVGb3JGaWxlTmFtZShjcmVhdGVDYW5vbmljYWxV
VUlEU3RyaW5nKCkpLgogCiAjaWYgVVNFKENGKSAmJiBQTEFURk9STShXSU4pCi0gICAgUmV0YWlu
UHRyPENGVVJMUmVmPiBjZlVSTCA9IGFkb3B0Q0YoQ0ZVUkxDcmVhdGVXaXRoRmlsZVN5c3RlbVBh
dGgoMCwgcGF0aC5jcmVhdGVDRlN0cmluZygpLmdldCgpLCBrQ0ZVUkxXaW5kb3dzUGF0aFN0eWxl
LCBmYWxzZSkpOwotICAgIFVSTCB1cmwoY2ZVUkwuZ2V0KCkpOworICAgIFVSTCB1cmwoYWRvcHRD
RihDRlVSTENyZWF0ZVdpdGhGaWxlU3lzdGVtUGF0aCgwLCBwYXRoLmNyZWF0ZUNGU3RyaW5nKCku
Z2V0KCksIGtDRlVSTFdpbmRvd3NQYXRoU3R5bGUsIGZhbHNlKSkuZ2V0KCkpOwogI2Vsc2UKICAg
ICBVUkwgdXJsOwotCiAgICAgdXJsLnNldFByb3RvY29sKEFTQ0lJTGl0ZXJhbCgiZmlsZSIpKTsK
ICAgICB1cmwuc2V0UGF0aChwYXRoKTsKICNlbmRpZgpAQCAtMjQ2LDcgKzI0NCw3IEBAIGJvb2wg
QXBwbGljYXRpb25DYWNoZUhvc3Q6Om1heWJlTG9hZFN5bmNocm9ub3VzbHkoUmVzb3VyY2VSZXF1
ZXN0JiByZXF1ZXN0LCBSZXNvCiAgICAgaWYgKCFzaG91bGRMb2FkUmVzb3VyY2VGcm9tQXBwbGlj
YXRpb25DYWNoZShyZXF1ZXN0LCByZXNvdXJjZSkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAot
ICAgIFJlZlB0cjxTaGFyZWRCdWZmZXI+IHJlc3BvbnNlRGF0YSA9IHJlc291cmNlID8gYnVmZmVy
RnJvbVJlc291cmNlKCpyZXNvdXJjZSkgOiBudWxscHRyOworICAgIGF1dG8gcmVzcG9uc2VEYXRh
ID0gcmVzb3VyY2UgPyBidWZmZXJGcm9tUmVzb3VyY2UoKnJlc291cmNlKSA6IG51bGxwdHI7CiAg
ICAgaWYgKCFyZXNwb25zZURhdGEpIHsKICAgICAgICAgZXJyb3IgPSBtX2RvY3VtZW50TG9hZGVy
LmZyYW1lTG9hZGVyKCktPmNsaWVudCgpLmNhbm5vdFNob3dVUkxFcnJvcihyZXF1ZXN0KTsKICAg
ICAgICAgcmV0dXJuIHRydWU7CkBAIC0yODYsMjAgKzI4NCwyMSBAQCB2b2lkIEFwcGxpY2F0aW9u
Q2FjaGVIb3N0OjpzZXRET01BcHBsaWNhdGlvbkNhY2hlKERPTUFwcGxpY2F0aW9uQ2FjaGUqIGRv
bUFwcGxpYwogICAgIG1fZG9tQXBwbGljYXRpb25DYWNoZSA9IGRvbUFwcGxpY2F0aW9uQ2FjaGU7
CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6Om5vdGlmeURPTUFwcGxpY2F0aW9uQ2Fj
aGUoRXZlbnRJRCBpZCwgaW50IHRvdGFsLCBpbnQgZG9uZSkKK3ZvaWQgQXBwbGljYXRpb25DYWNo
ZUhvc3Q6Om5vdGlmeURPTUFwcGxpY2F0aW9uQ2FjaGUoY29uc3QgQXRvbWljU3RyaW5nJiBldmVu
dFR5cGUsIGludCB0b3RhbCwgaW50IGRvbmUpCiB7Ci0gICAgaWYgKGlkICE9IFBST0dSRVNTX0VW
RU5UKQorICAgIGlmIChldmVudFR5cGUgIT0gZXZlbnROYW1lcygpLnByb2dyZXNzRXZlbnQpCiAg
ICAgICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6dXBkYXRlQXBwbGljYXRpb25DYWNoZVN0
YXR1cyhtX2RvY3VtZW50TG9hZGVyLmZyYW1lKCkpOwogCiAgICAgaWYgKG1fZGVmZXJzRXZlbnRz
KSB7CiAgICAgICAgIC8vIEV2ZW50IGRpc3BhdGNoaW5nIGlzIGRlZmVycmVkIHVudGlsIGRvY3Vt
ZW50Lm9ubG9hZCBoYXMgZmlyZWQuCi0gICAgICAgIG1fZGVmZXJyZWRFdmVudHMuYXBwZW5kKERl
ZmVycmVkRXZlbnQoaWQsIHRvdGFsLCBkb25lKSk7CisgICAgICAgIG1fZGVmZXJyZWRFdmVudHMu
YXBwZW5kKHsgZXZlbnRUeXBlLCB0b3RhbCwgZG9uZSB9KTsKICAgICAgICAgcmV0dXJuOwogICAg
IH0KLSAgICBkaXNwYXRjaERPTUV2ZW50KGlkLCB0b3RhbCwgZG9uZSk7CisKKyAgICBkaXNwYXRj
aERPTUV2ZW50KGV2ZW50VHlwZSwgdG90YWwsIGRvbmUpOwogfQogCi12b2lkIEFwcGxpY2F0aW9u
Q2FjaGVIb3N0OjpzdG9wTG9hZGluZ0luRnJhbWUoRnJhbWUqIGZyYW1lKQordm9pZCBBcHBsaWNh
dGlvbkNhY2hlSG9zdDo6c3RvcExvYWRpbmdJbkZyYW1lKEZyYW1lJiBmcmFtZSkKIHsKICAgICBB
U1NFUlQoIW1fYXBwbGljYXRpb25DYWNoZSB8fCAhbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hl
R3JvdXAgfHwgbV9hcHBsaWNhdGlvbkNhY2hlLT5ncm91cCgpID09IG1fY2FuZGlkYXRlQXBwbGlj
YXRpb25DYWNoZUdyb3VwKTsKIApAQCAtMzEyLDUzICszMTEsNjggQEAgdm9pZCBBcHBsaWNhdGlv
bkNhY2hlSG9zdDo6c3RvcExvYWRpbmdJbkZyYW1lKEZyYW1lKiBmcmFtZSkKIHZvaWQgQXBwbGlj
YXRpb25DYWNoZUhvc3Q6OnN0b3BEZWZlcnJpbmdFdmVudHMoKQogewogICAgIFJlZjxEb2N1bWVu
dExvYWRlcj4gcHJvdGVjdChtX2RvY3VtZW50TG9hZGVyKTsKLSAgICBmb3IgKGF1dG8mIGV2ZW50
IDogbV9kZWZlcnJlZEV2ZW50cykKLSAgICAgICAgZGlzcGF0Y2hET01FdmVudChldmVudC5ldmVu
dElELCBldmVudC5wcm9ncmVzc1RvdGFsLCBldmVudC5wcm9ncmVzc0RvbmUpOworCisgICAgLy8g
Tm90ZSwgZG8gbm90IGNhY2hlIHRoZSBzaXplIGluIGEgbG9jYWwgdmFyaWFibGUuCisgICAgLy8g
VGhpcyBjb2RlIG5lZWRzIHRvIHByb3Blcmx5IGhhbmRsZSB0aGUgY2FzZSB3aGVyZSBtb3JlIGV2
ZW50cyBhcmUgYWRkZWQgdG8KKyAgICAvLyBtX2RlZmVycmVkRXZlbnRzIHdoaWxlIGl0ZXJhdGlu
ZyBpdC4gVGhpcyBpcyB3aHkgd2UgZG9uJ3QgdXNlIGEgbW9kZXJuIGZvciBsb29wLgorICAgIGZv
ciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9kZWZlcnJlZEV2ZW50cy5zaXplKCk7ICsraSkgeworICAg
ICAgICBhdXRvJiBldmVudCA9IG1fZGVmZXJyZWRFdmVudHNbaV07CisgICAgICAgIGRpc3BhdGNo
RE9NRXZlbnQoZXZlbnQuZXZlbnRUeXBlLCBldmVudC5wcm9ncmVzc1RvdGFsLCBldmVudC5wcm9n
cmVzc0RvbmUpOworICAgIH0KKwogICAgIG1fZGVmZXJyZWRFdmVudHMuY2xlYXIoKTsKICAgICBt
X2RlZmVyc0V2ZW50cyA9IGZhbHNlOwogfQogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojpm
aWxsUmVzb3VyY2VMaXN0KFJlc291cmNlSW5mb0xpc3QqIHJlc291cmNlcykKK1ZlY3RvcjxBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6UmVzb3VyY2VJbmZvPiBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6cmVz
b3VyY2VMaXN0KCkKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlKiBjYWNoZSA9IGFwcGxpY2F0aW9u
Q2FjaGUoKTsKKyAgICBWZWN0b3I8UmVzb3VyY2VJbmZvPiByZXN1bHQ7CisKKyAgICBhdXRvKiBj
YWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKTsKICAgICBpZiAoIWNhY2hlIHx8ICFjYWNoZS0+aXND
b21wbGV0ZSgpKQotICAgICAgICByZXR1cm47CisgICAgICAgIHJldHVybiByZXN1bHQ7CiAKLSAg
ICBmb3IgKGNvbnN0IGF1dG8mIHVybEFuZFJlc291cmNlIDogY2FjaGUtPnJlc291cmNlcygpKSB7
Ci0gICAgICAgIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSogcmVzb3VyY2UgPSB1cmxBbmRSZXNv
dXJjZS52YWx1ZS5nZXQoKTsKKyAgICByZXN1bHQucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShjYWNo
ZS0+cmVzb3VyY2VzKCkuc2l6ZSgpKTsKIAotICAgICAgICB1bnNpZ25lZCB0eXBlID0gcmVzb3Vy
Y2UtPnR5cGUoKTsKKyAgICBmb3IgKGF1dG8mIHVybEFuZFJlc291cmNlIDogY2FjaGUtPnJlc291
cmNlcygpKSB7CisgICAgICAgIEFTU0VSVCh1cmxBbmRSZXNvdXJjZS52YWx1ZSk7CisgICAgICAg
IGF1dG8mIHJlc291cmNlID0gKnVybEFuZFJlc291cmNlLnZhbHVlOworCisgICAgICAgIHVuc2ln
bmVkIHR5cGUgPSByZXNvdXJjZS50eXBlKCk7CiAgICAgICAgIGJvb2wgaXNNYXN0ZXIgPSB0eXBl
ICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXI7CiAgICAgICAgIGJvb2wgaXNNYW5p
ZmVzdCA9IHR5cGUgJiBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6Ok1hbmlmZXN0OwogICAgICAg
ICBib29sIGlzRXhwbGljaXQgPSB0eXBlICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpFeHBs
aWNpdDsKICAgICAgICAgYm9vbCBpc0ZvcmVpZ24gPSB0eXBlICYgQXBwbGljYXRpb25DYWNoZVJl
c291cmNlOjpGb3JlaWduOwogICAgICAgICBib29sIGlzRmFsbGJhY2sgPSB0eXBlICYgQXBwbGlj
YXRpb25DYWNoZVJlc291cmNlOjpGYWxsYmFjazsKIAotICAgICAgICByZXNvdXJjZXMtPmFwcGVu
ZChSZXNvdXJjZUluZm8ocmVzb3VyY2UtPnVybCgpLCBpc01hc3RlciwgaXNNYW5pZmVzdCwgaXNG
YWxsYmFjaywgaXNGb3JlaWduLCBpc0V4cGxpY2l0LCByZXNvdXJjZS0+ZXN0aW1hdGVkU2l6ZUlu
U3RvcmFnZSgpKSk7CisgICAgICAgIHJlc3VsdC51bmNoZWNrZWRBcHBlbmQoeyByZXNvdXJjZS51
cmwoKSwgaXNNYXN0ZXIsIGlzTWFuaWZlc3QsIGlzRmFsbGJhY2ssIGlzRm9yZWlnbiwgaXNFeHBs
aWNpdCwgcmVzb3VyY2UuZXN0aW1hdGVkU2l6ZUluU3RvcmFnZSgpIH0pOwogICAgIH0KKworICAg
IHJldHVybiByZXN1bHQ7CiB9CiAKIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8gQXBw
bGljYXRpb25DYWNoZUhvc3Q6OmFwcGxpY2F0aW9uQ2FjaGVJbmZvKCkKIHsKLSAgICBBcHBsaWNh
dGlvbkNhY2hlKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKTsKKyAgICBhdXRvKiBjYWNoZSA9
IGFwcGxpY2F0aW9uQ2FjaGUoKTsKICAgICBpZiAoIWNhY2hlIHx8ICFjYWNoZS0+aXNDb21wbGV0
ZSgpKQotICAgICAgICByZXR1cm4gQ2FjaGVJbmZvKFVSTCgpLCAwLCAwLCAwKTsKKyAgICAgICAg
cmV0dXJuIHsgeyB9LCAwLCAwLCAwIH07CiAKICAgICAvLyBGSVhNRTogQWRkICJDcmVhdGlvbiBU
aW1lIiBhbmQgIlVwZGF0ZSBUaW1lIiB0byBBcHBsaWNhdGlvbiBDYWNoZXMuCi0gICAgcmV0dXJu
IENhY2hlSW5mbyhjYWNoZS0+bWFuaWZlc3RSZXNvdXJjZSgpLT51cmwoKSwgMCwgMCwgY2FjaGUt
PmVzdGltYXRlZFNpemVJblN0b3JhZ2UoKSk7CisgICAgcmV0dXJuIHsgY2FjaGUtPm1hbmlmZXN0
UmVzb3VyY2UoKS0+dXJsKCksIDAsIDAsIGNhY2hlLT5lc3RpbWF0ZWRTaXplSW5TdG9yYWdlKCkg
fTsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6ZGlzcGF0Y2hET01FdmVudChFdmVu
dElEIGlkLCBpbnQgdG90YWwsIGludCBkb25lKQorc3RhdGljIFJlZjxFdmVudD4gY3JlYXRlQXBw
bGljYXRpb25DYWNoZUV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBpbnQgdG90
YWwsIGludCBkb25lKQogewotICAgIGlmIChtX2RvbUFwcGxpY2F0aW9uQ2FjaGUpIHsKLSAgICAg
ICAgY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUgPSBET01BcHBsaWNhdGlvbkNhY2hlOjp0
b0V2ZW50VHlwZShpZCk7Ci0gICAgICAgIFJlZlB0cjxFdmVudD4gZXZlbnQ7Ci0gICAgICAgIGlm
IChpZCA9PSBQUk9HUkVTU19FVkVOVCkKLSAgICAgICAgICAgIGV2ZW50ID0gUHJvZ3Jlc3NFdmVu
dDo6Y3JlYXRlKGV2ZW50VHlwZSwgdHJ1ZSwgZG9uZSwgdG90YWwpOwotICAgICAgICBlbHNlCi0g
ICAgICAgICAgICBldmVudCA9IEV2ZW50OjpjcmVhdGUoZXZlbnRUeXBlLCBmYWxzZSwgZmFsc2Up
OwotICAgICAgICBtX2RvbUFwcGxpY2F0aW9uQ2FjaGUtPmRpc3BhdGNoRXZlbnQoKmV2ZW50KTsK
LSAgICB9CisgICAgaWYgKGV2ZW50VHlwZSA9PSBldmVudE5hbWVzKCkucHJvZ3Jlc3NFdmVudCkK
KyAgICAgICAgcmV0dXJuIFByb2dyZXNzRXZlbnQ6OmNyZWF0ZShldmVudFR5cGUsIHRydWUsIGRv
bmUsIHRvdGFsKTsKKyAgICByZXR1cm4gRXZlbnQ6OmNyZWF0ZShldmVudFR5cGUsIGZhbHNlLCBm
YWxzZSk7Cit9CisKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmRpc3BhdGNoRE9NRXZlbnQo
Y29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGludCB0b3RhbCwgaW50IGRvbmUpCit7Cisg
ICAgaWYgKCFtX2RvbUFwcGxpY2F0aW9uQ2FjaGUpCisgICAgICAgIHJldHVybjsKKyAgICBtX2Rv
bUFwcGxpY2F0aW9uQ2FjaGUtPmRpc3BhdGNoRXZlbnQoY3JlYXRlQXBwbGljYXRpb25DYWNoZUV2
ZW50KGV2ZW50VHlwZSwgdG90YWwsIGRvbmUpKTsKIH0KIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hl
SG9zdDo6c2V0Q2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKEFwcGxpY2F0aW9uQ2FjaGVH
cm91cCogZ3JvdXApCkBAIC0zNjcsMjUgKzM4MSwyNCBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVI
b3N0OjpzZXRDYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoQXBwbGljYXRpb25DYWNoZUdy
bwogICAgIG1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwID0gZ3JvdXA7CiB9CiAgICAg
Ci12b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpzZXRBcHBsaWNhdGlvbkNhY2hlKFBhc3NSZWZQ
dHI8QXBwbGljYXRpb25DYWNoZT4gYXBwbGljYXRpb25DYWNoZSkKK3ZvaWQgQXBwbGljYXRpb25D
YWNoZUhvc3Q6OnNldEFwcGxpY2F0aW9uQ2FjaGUoUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+JiYg
YXBwbGljYXRpb25DYWNoZSkKIHsKICAgICBpZiAobV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hl
R3JvdXApIHsKICAgICAgICAgQVNTRVJUKCFtX2FwcGxpY2F0aW9uQ2FjaGUpOwogICAgICAgICBt
X2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCA9IG51bGxwdHI7CiAgICAgfQotCi0gICAg
bV9hcHBsaWNhdGlvbkNhY2hlID0gYXBwbGljYXRpb25DYWNoZTsKKyAgICBtX2FwcGxpY2F0aW9u
Q2FjaGUgPSBXVEZNb3ZlKGFwcGxpY2F0aW9uQ2FjaGUpOwogfQogCiBib29sIEFwcGxpY2F0aW9u
Q2FjaGVIb3N0OjpzaG91bGRMb2FkUmVzb3VyY2VGcm9tQXBwbGljYXRpb25DYWNoZShjb25zdCBS
ZXNvdXJjZVJlcXVlc3QmIG9yaWdpbmFsUmVxdWVzdCwgQXBwbGljYXRpb25DYWNoZVJlc291cmNl
KiYgcmVzb3VyY2UpCiB7Ci0gICAgQXBwbGljYXRpb25DYWNoZSogY2FjaGUgPSBhcHBsaWNhdGlv
bkNhY2hlKCk7CisgICAgYXV0byogY2FjaGUgPSBhcHBsaWNhdGlvbkNhY2hlKCk7CiAgICAgaWYg
KCFjYWNoZSB8fCAhY2FjaGUtPmlzQ29tcGxldGUoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwog
CiAgICAgUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3Qob3JpZ2luYWxSZXF1ZXN0KTsKLSAgICBpZiAo
RnJhbWUqIGxvYWRlckZyYW1lID0gbV9kb2N1bWVudExvYWRlci5mcmFtZSgpKSB7Ci0gICAgICAg
IGlmIChEb2N1bWVudCogZG9jdW1lbnQgPSBsb2FkZXJGcmFtZS0+ZG9jdW1lbnQoKSkKKyAgICBp
ZiAoYXV0byogbG9hZGVyRnJhbWUgPSBtX2RvY3VtZW50TG9hZGVyLmZyYW1lKCkpIHsKKyAgICAg
ICAgaWYgKGF1dG8qIGRvY3VtZW50ID0gbG9hZGVyRnJhbWUtPmRvY3VtZW50KCkpCiAgICAgICAg
ICAgICBkb2N1bWVudC0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPnVwZ3JhZGVJbnNlY3VyZVJl
cXVlc3RJZk5lZWRlZChyZXF1ZXN0LCBDb250ZW50U2VjdXJpdHlQb2xpY3k6Okluc2VjdXJlUmVx
dWVzdFR5cGU6OkxvYWQpOwogICAgIH0KICAgICAKQEAgLTQzMCw3ICs0NDMsNiBAQCBib29sIEFw
cGxpY2F0aW9uQ2FjaGVIb3N0OjpnZXRBcHBsaWNhdGlvbkNhY2hlRmFsbGJhY2tSZXNvdXJjZShj
b25zdCBSZXNvdXJjZVJlcQogCiAgICAgcmVzb3VyY2UgPSBjYWNoZS0+cmVzb3VyY2VGb3JVUkwo
ZmFsbGJhY2tVUkwpOwogICAgIEFTU0VSVChyZXNvdXJjZSk7Ci0KICAgICByZXR1cm4gdHJ1ZTsK
IH0KIApAQCAtNDQ0LDMwICs0NTYsMjcgQEAgYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c2No
ZWR1bGVMb2FkRmFsbGJhY2tSZXNvdXJjZUZyb21BcHBsaWNhdGlvbkNhY2hlKFJlc28KICAgICAg
ICAgcmV0dXJuIGZhbHNlOwogCiAgICAgbG9hZGVyLT53aWxsU3dpdGNoVG9TdWJzdGl0dXRlUmVz
b3VyY2UoKTsKLQogICAgIG1fZG9jdW1lbnRMb2FkZXIuc2NoZWR1bGVTdWJzdGl0dXRlUmVzb3Vy
Y2VMb2FkKCpsb2FkZXIsICpyZXNvdXJjZSk7Ci0KICAgICByZXR1cm4gdHJ1ZTsKIH0KIAogQXBw
bGljYXRpb25DYWNoZUhvc3Q6OlN0YXR1cyBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c3RhdHVzKCkg
Y29uc3QKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUo
KTsgICAgCisgICAgYXV0byogY2FjaGUgPSBhcHBsaWNhdGlvbkNhY2hlKCk7CiAgICAgaWYgKCFj
YWNoZSkKICAgICAgICAgcmV0dXJuIFVOQ0FDSEVEOwogCiAgICAgc3dpdGNoIChjYWNoZS0+Z3Jv
dXAoKS0+dXBkYXRlU3RhdHVzKCkpIHsKLSAgICAgICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hlR3Jv
dXA6OkNoZWNraW5nOgotICAgICAgICAgICAgcmV0dXJuIENIRUNLSU5HOwotICAgICAgICBjYXNl
IEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6RG93bmxvYWRpbmc6Ci0gICAgICAgICAgICByZXR1cm4g
RE9XTkxPQURJTkc7Ci0gICAgICAgIGNhc2UgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpJZGxlOiB7
Ci0gICAgICAgICAgICBpZiAoY2FjaGUtPmdyb3VwKCktPmlzT2Jzb2xldGUoKSkKLSAgICAgICAg
ICAgICAgICByZXR1cm4gT0JTT0xFVEU7Ci0gICAgICAgICAgICBpZiAoY2FjaGUgIT0gY2FjaGUt
Pmdyb3VwKCktPm5ld2VzdENhY2hlKCkpCi0gICAgICAgICAgICAgICAgcmV0dXJuIFVQREFURVJF
QURZOwotICAgICAgICAgICAgcmV0dXJuIElETEU7Ci0gICAgICAgIH0KKyAgICBjYXNlIEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cDo6Q2hlY2tpbmc6CisgICAgICAgIHJldHVybiBDSEVDS0lORzsKKyAg
ICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6RG93bmxvYWRpbmc6CisgICAgICAgIHJldHVy
biBET1dOTE9BRElORzsKKyAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6SWRsZToKKyAg
ICAgICAgaWYgKGNhY2hlLT5ncm91cCgpLT5pc09ic29sZXRlKCkpCisgICAgICAgICAgICByZXR1
cm4gT0JTT0xFVEU7CisgICAgICAgIGlmIChjYWNoZSAhPSBjYWNoZS0+Z3JvdXAoKS0+bmV3ZXN0
Q2FjaGUoKSkKKyAgICAgICAgICAgIHJldHVybiBVUERBVEVSRUFEWTsKKyAgICAgICAgcmV0dXJu
IElETEU7CiAgICAgfQogCiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CkBAIC00NzYsMjcgKzQ4
NSwzMCBAQCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6U3RhdHVzIEFwcGxpY2F0aW9uQ2FjaGVIb3N0
OjpzdGF0dXMoKSBjb25zdAogCiBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojp1cGRhdGUoKQog
ewotICAgIEFwcGxpY2F0aW9uQ2FjaGUqIGNhY2hlID0gYXBwbGljYXRpb25DYWNoZSgpOworICAg
IGF1dG8qIGNhY2hlID0gYXBwbGljYXRpb25DYWNoZSgpOwogICAgIGlmICghY2FjaGUpCiAgICAg
ICAgIHJldHVybiBmYWxzZTsKLSAgICBjYWNoZS0+Z3JvdXAoKS0+dXBkYXRlKG1fZG9jdW1lbnRM
b2FkZXIuZnJhbWUoKSwgQXBwbGljYXRpb25DYWNoZVVwZGF0ZVdpdGhvdXRCcm93c2luZ0NvbnRl
eHQpOworICAgIGF1dG8qIGZyYW1lID0gbV9kb2N1bWVudExvYWRlci5mcmFtZSgpOworICAgIGlm
ICghZnJhbWUpCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICBjYWNoZS0+Z3JvdXAoKS0+dXBk
YXRlKCpmcmFtZSwgQXBwbGljYXRpb25DYWNoZVVwZGF0ZVdpdGhvdXRCcm93c2luZ0NvbnRleHQp
OwogICAgIHJldHVybiB0cnVlOwogfQogCiBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojpzd2Fw
Q2FjaGUoKQogewotICAgIEFwcGxpY2F0aW9uQ2FjaGUqIGNhY2hlID0gYXBwbGljYXRpb25DYWNo
ZSgpOworICAgIGF1dG8qIGNhY2hlID0gYXBwbGljYXRpb25DYWNoZSgpOwogICAgIGlmICghY2Fj
aGUpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIC8vIElmIHRoZSBncm91cCBvZiBhcHBs
aWNhdGlvbiBjYWNoZXMgdG8gd2hpY2ggY2FjaGUgYmVsb25ncyBoYXMgdGhlIGxpZmVjeWNsZSBz
dGF0dXMgb2Jzb2xldGUsIHVuYXNzb2NpYXRlIGRvY3VtZW50IGZyb20gY2FjaGUuCiAgICAgaWYg
KGNhY2hlLT5ncm91cCgpLT5pc09ic29sZXRlKCkpIHsKLSAgICAgICAgY2FjaGUtPmdyb3VwKCkt
PmRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKCZtX2RvY3VtZW50TG9hZGVyKTsKKyAgICAgICAg
Y2FjaGUtPmdyb3VwKCktPmRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKG1fZG9jdW1lbnRMb2Fk
ZXIpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAKICAgICAvLyBJZiB0aGVyZSBpcyBu
byBuZXdlciBjYWNoZSwgcmFpc2UgYW4gSU5WQUxJRF9TVEFURV9FUlIgZXhjZXB0aW9uLgotICAg
IEFwcGxpY2F0aW9uQ2FjaGUqIG5ld2VzdENhY2hlID0gY2FjaGUtPmdyb3VwKCktPm5ld2VzdENh
Y2hlKCk7CisgICAgYXV0byogbmV3ZXN0Q2FjaGUgPSBjYWNoZS0+Z3JvdXAoKS0+bmV3ZXN0Q2Fj
aGUoKTsKICAgICBpZiAoY2FjaGUgPT0gbmV3ZXN0Q2FjaGUpCiAgICAgICAgIHJldHVybiBmYWxz
ZTsKICAgICAKQEAgLTUwOCwxNCArNTIwLDEzIEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZUhvc3Q6
OnN3YXBDYWNoZSgpCiAKIHZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmFib3J0KCkKIHsKLSAg
ICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGNhY2hlR3JvdXAgPSBjYW5kaWRhdGVBcHBsaWNhdGlv
bkNhY2hlR3JvdXAoKTsKLSAgICBpZiAoY2FjaGVHcm91cCkKLSAgICAgICAgY2FjaGVHcm91cC0+
YWJvcnQobV9kb2N1bWVudExvYWRlci5mcmFtZSgpKTsKLSAgICBlbHNlIHsKLSAgICAgICAgQXBw
bGljYXRpb25DYWNoZSogY2FjaGUgPSBhcHBsaWNhdGlvbkNhY2hlKCk7Ci0gICAgICAgIGlmIChj
YWNoZSkKLSAgICAgICAgICAgIGNhY2hlLT5ncm91cCgpLT5hYm9ydChtX2RvY3VtZW50TG9hZGVy
LmZyYW1lKCkpOwotICAgIH0KKyAgICBhdXRvKiBmcmFtZSA9IG1fZG9jdW1lbnRMb2FkZXIuZnJh
bWUoKTsKKyAgICBpZiAoIWZyYW1lKQorICAgICAgICByZXR1cm47CisgICAgaWYgKGF1dG8qIGNh
Y2hlR3JvdXAgPSBjYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKSkKKyAgICAgICAgY2Fj
aGVHcm91cC0+YWJvcnQoKmZyYW1lKTsKKyAgICBlbHNlIGlmIChhdXRvKiBjYWNoZSA9IGFwcGxp
Y2F0aW9uQ2FjaGUoKSkKKyAgICAgICAgY2FjaGUtPmdyb3VwKCktPmFib3J0KCpmcmFtZSk7CiB9
CiAKIGJvb2wgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmlzQXBwbGljYXRpb25DYWNoZUVuYWJsZWQo
KQpAQCAtNTI1LDE1ICs1MzYsMTIgQEAgYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6aXNBcHBs
aWNhdGlvbkNhY2hlRW5hYmxlZCgpCiAKIGJvb2wgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmlzQXBw
bGljYXRpb25DYWNoZUJsb2NrZWRGb3JSZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVx
dWVzdCkKIHsKLSAgICBGcmFtZSogZnJhbWUgPSBtX2RvY3VtZW50TG9hZGVyLmZyYW1lKCk7Cisg
ICAgYXV0byogZnJhbWUgPSBtX2RvY3VtZW50TG9hZGVyLmZyYW1lKCk7CiAgICAgaWYgKCFmcmFt
ZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwotCiAgICAgaWYgKGZyYW1lLT5pc01haW5GcmFtZSgp
KQogICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICBSZWY8U2VjdXJpdHlPcmlnaW4+IG9yaWdp
bihTZWN1cml0eU9yaWdpbjo6Y3JlYXRlKHJlcXVlc3QudXJsKCkpKTsKLSAgICByZXR1cm4gIW9y
aWdpbi5nZXQoKS5jYW5BY2Nlc3NBcHBsaWNhdGlvbkNhY2hlKGZyYW1lLT5kb2N1bWVudCgpLT50
b3BPcmlnaW4oKSk7CisgICAgcmV0dXJuICFTZWN1cml0eU9yaWdpbjo6Y3JlYXRlKHJlcXVlc3Qu
dXJsKCkpLT5jYW5BY2Nlc3NBcHBsaWNhdGlvbkNhY2hlKGZyYW1lLT5kb2N1bWVudCgpLT50b3BP
cmlnaW4oKSk7CiB9CiAKIH0gIC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUhvc3QuaCBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlSG9zdC5oCmluZGV4IGM5
NWIyM2IyODc0ODI3OTYwNzU4ZjMyODA2N2IxZGZiYWViODc4YmEuLjJiZmRjNjJmOTM5OGQwMGY0
Y2IxZTkxYjg2ZDdmMzZjODUzYjc3ODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlSG9zdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlSG9zdC5oCkBAIC0xLDYgKzEsNyBAQAogLyoK
LSAqIENvcHlyaWdodCAoYykgMjAwOSwgR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQu
Ci0gKiAKKyAqIENvcHlyaWdodCAoYykgMjAwOSwgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqIENvcHlyaWdodCAoYykgMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCiAgKiBtZXQ6CkBAIC0zMCwx
NjUgKzMxLDEzNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2luY2x1ZGUgIlBsYXRmb3JtRXhwb3J0
TWFjcm9zLmgiCiAjaW5jbHVkZSAiVVJMLmgiCiAjaW5jbHVkZSA8d3RmL0RlcXVlLmg+Ci0jaW5j
bHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KLSNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAjaW5jbHVk
ZSA8d3RmL1ZlY3Rvci5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7Ci0gICAgY2xhc3MgRE9NQXBw
bGljYXRpb25DYWNoZTsKLSAgICBjbGFzcyBEb2N1bWVudExvYWRlcjsKLSAgICBjbGFzcyBGcmFt
ZTsKLSAgICBjbGFzcyBSZXNvdXJjZUVycm9yOwotICAgIGNsYXNzIFJlc291cmNlTG9hZGVyOwot
ICAgIGNsYXNzIFJlc291cmNlUmVxdWVzdDsKLSAgICBjbGFzcyBSZXNvdXJjZVJlc3BvbnNlOwot
ICAgIGNsYXNzIFNoYXJlZEJ1ZmZlcjsKLSAgICBjbGFzcyBTdWJzdGl0dXRlRGF0YTsKLSAgICBj
bGFzcyBBcHBsaWNhdGlvbkNhY2hlOwotICAgIGNsYXNzIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDsK
LSAgICBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U7Ci0gICAgY2xhc3MgQXBwbGljYXRp
b25DYWNoZVN0b3JhZ2U7Ci0KLSAgICBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlSG9zdCB7Ci0gICAg
ICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKEFwcGxpY2F0aW9uQ2FjaGVIb3N0KTsgV1RGX01BS0Vf
RkFTVF9BTExPQ0FURUQ7Ci0gICAgcHVibGljOgotICAgICAgICAvLyBUaGUgU3RhdHVzIG51bWVy
aWMgdmFsdWVzIGFyZSBzcGVjaWZpZWQgaW4gdGhlIEhUTUw1IHNwZWMuCi0gICAgICAgIGVudW0g
U3RhdHVzIHsKLSAgICAgICAgICAgIFVOQ0FDSEVEID0gMCwKLSAgICAgICAgICAgIElETEUgPSAx
LAotICAgICAgICAgICAgQ0hFQ0tJTkcgPSAyLAotICAgICAgICAgICAgRE9XTkxPQURJTkcgPSAz
LAotICAgICAgICAgICAgVVBEQVRFUkVBRFkgPSA0LAotICAgICAgICAgICAgT0JTT0xFVEUgPSA1
Ci0gICAgICAgIH07Ci0KLSAgICAgICAgZW51bSBFdmVudElEIHsKLSAgICAgICAgICAgIENIRUNL
SU5HX0VWRU5UID0gMCwKLSAgICAgICAgICAgIEVSUk9SX0VWRU5ULAotICAgICAgICAgICAgTk9V
UERBVEVfRVZFTlQsCi0gICAgICAgICAgICBET1dOTE9BRElOR19FVkVOVCwKLSAgICAgICAgICAg
IFBST0dSRVNTX0VWRU5ULAotICAgICAgICAgICAgVVBEQVRFUkVBRFlfRVZFTlQsCi0gICAgICAg
ICAgICBDQUNIRURfRVZFTlQsCi0gICAgICAgICAgICBPQlNPTEVURV9FVkVOVCAgLy8gTXVzdCBy
ZW1haW4gdGhlIGxhc3QgdmFsdWUsIHRoaXMgaXMgdXNlZCB0byBzaXplIGFycmF5cy4KLSAgICAg
ICAgfTsKLQotICAgICAgICBzdHJ1Y3QgQ2FjaGVJbmZvIHsKLSAgICAgICAgICAgIENhY2hlSW5m
byhjb25zdCBVUkwmIG1hbmlmZXN0LCBkb3VibGUgY3JlYXRpb25UaW1lLCBkb3VibGUgdXBkYXRl
VGltZSwgbG9uZyBsb25nIHNpemUpCi0gICAgICAgICAgICAgICAgOiBtX21hbmlmZXN0KG1hbmlm
ZXN0KQotICAgICAgICAgICAgICAgICwgbV9jcmVhdGlvblRpbWUoY3JlYXRpb25UaW1lKQotICAg
ICAgICAgICAgICAgICwgbV91cGRhdGVUaW1lKHVwZGF0ZVRpbWUpCi0gICAgICAgICAgICAgICAg
LCBtX3NpemUoc2l6ZSkgeyB9Ci0gICAgICAgICAgICBVUkwgbV9tYW5pZmVzdDsKLSAgICAgICAg
ICAgIGRvdWJsZSBtX2NyZWF0aW9uVGltZTsKLSAgICAgICAgICAgIGRvdWJsZSBtX3VwZGF0ZVRp
bWU7Ci0gICAgICAgICAgICBsb25nIGxvbmcgbV9zaXplOwotICAgICAgICB9OwotCi0gICAgICAg
IHN0cnVjdCBSZXNvdXJjZUluZm8gewotICAgICAgICAgICAgUmVzb3VyY2VJbmZvKGNvbnN0IFVS
TCYgcmVzb3VyY2UsIGJvb2wgaXNNYXN0ZXIsIGJvb2wgaXNNYW5pZmVzdCwgYm9vbCBpc0ZhbGxi
YWNrLCBib29sIGlzRm9yZWlnbiwgYm9vbCBpc0V4cGxpY2l0LCBsb25nIGxvbmcgc2l6ZSkKLSAg
ICAgICAgICAgICAgICA6IG1fcmVzb3VyY2UocmVzb3VyY2UpCi0gICAgICAgICAgICAgICAgLCBt
X2lzTWFzdGVyKGlzTWFzdGVyKQotICAgICAgICAgICAgICAgICwgbV9pc01hbmlmZXN0KGlzTWFu
aWZlc3QpCi0gICAgICAgICAgICAgICAgLCBtX2lzRmFsbGJhY2soaXNGYWxsYmFjaykKLSAgICAg
ICAgICAgICAgICAsIG1faXNGb3JlaWduKGlzRm9yZWlnbikKLSAgICAgICAgICAgICAgICAsIG1f
aXNFeHBsaWNpdChpc0V4cGxpY2l0KQotICAgICAgICAgICAgICAgICwgbV9zaXplKHNpemUpIHsg
fQotICAgICAgICAgICAgVVJMIG1fcmVzb3VyY2U7Ci0gICAgICAgICAgICBib29sIG1faXNNYXN0
ZXI7Ci0gICAgICAgICAgICBib29sIG1faXNNYW5pZmVzdDsKLSAgICAgICAgICAgIGJvb2wgbV9p
c0ZhbGxiYWNrOwotICAgICAgICAgICAgYm9vbCBtX2lzRm9yZWlnbjsKLSAgICAgICAgICAgIGJv
b2wgbV9pc0V4cGxpY2l0OwotICAgICAgICAgICAgbG9uZyBsb25nIG1fc2l6ZTsKLSAgICAgICAg
fTsKLQotICAgICAgICB0eXBlZGVmIFZlY3RvcjxSZXNvdXJjZUluZm8+IFJlc291cmNlSW5mb0xp
c3Q7Ci0KLSAgICAgICAgZXhwbGljaXQgQXBwbGljYXRpb25DYWNoZUhvc3QoRG9jdW1lbnRMb2Fk
ZXImKTsKLSAgICAgICAgfkFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7Ci0KLSAgICAgICAgc3RhdGlj
IFVSTCBjcmVhdGVGaWxlVVJMKGNvbnN0IFN0cmluZyYpOwotCi0gICAgICAgIHZvaWQgc2VsZWN0
Q2FjaGVXaXRob3V0TWFuaWZlc3QoKTsKLSAgICAgICAgdm9pZCBzZWxlY3RDYWNoZVdpdGhNYW5p
ZmVzdChjb25zdCBVUkwmIG1hbmlmZXN0VVJMKTsKLQotICAgICAgICB2b2lkIG1heWJlTG9hZE1h
aW5SZXNvdXJjZShSZXNvdXJjZVJlcXVlc3QmLCBTdWJzdGl0dXRlRGF0YSYpOwotICAgICAgICB2
b2lkIG1heWJlTG9hZE1haW5SZXNvdXJjZUZvclJlZGlyZWN0KFJlc291cmNlUmVxdWVzdCYsIFN1
YnN0aXR1dGVEYXRhJik7Ci0gICAgICAgIGJvb2wgbWF5YmVMb2FkRmFsbGJhY2tGb3JNYWluUmVz
cG9uc2UoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwot
ICAgICAgICB2b2lkIG1haW5SZXNvdXJjZURhdGFSZWNlaXZlZChjb25zdCBjaGFyKiBkYXRhLCBp
bnQgbGVuZ3RoLCBsb25nIGxvbmcgZW5jb2RlZERhdGFMZW5ndGgsIGJvb2wgYWxsQXRPbmNlKTsK
LSAgICAgICAgdm9pZCBmaW5pc2hlZExvYWRpbmdNYWluUmVzb3VyY2UoKTsKLSAgICAgICAgdm9p
ZCBmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKCk7Ci0KLSAgICAgICAgV0VCQ09SRV9FWFBPUlQg
Ym9vbCBtYXliZUxvYWRSZXNvdXJjZShSZXNvdXJjZUxvYWRlciYsIGNvbnN0IFJlc291cmNlUmVx
dWVzdCYsIGNvbnN0IFVSTCYgb3JpZ2luYWxVUkwpOwotICAgICAgICBXRUJDT1JFX0VYUE9SVCBi
b29sIG1heWJlTG9hZEZhbGxiYWNrRm9yUmVkaXJlY3QoUmVzb3VyY2VMb2FkZXIqLCBSZXNvdXJj
ZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7Ci0gICAgICAgIFdFQkNPUkVfRVhQ
T1JUIGJvb2wgbWF5YmVMb2FkRmFsbGJhY2tGb3JSZXNwb25zZShSZXNvdXJjZUxvYWRlciosIGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICAgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBtYXli
ZUxvYWRGYWxsYmFja0ZvckVycm9yKFJlc291cmNlTG9hZGVyKiwgY29uc3QgUmVzb3VyY2VFcnJv
ciYpOwotCi0gICAgICAgIGJvb2wgbWF5YmVMb2FkU3luY2hyb25vdXNseShSZXNvdXJjZVJlcXVl
c3QmLCBSZXNvdXJjZUVycm9yJiwgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZm
ZXI+Jik7Ci0gICAgICAgIHZvaWQgbWF5YmVMb2FkRmFsbGJhY2tTeW5jaHJvbm91c2x5KGNvbnN0
IFJlc291cmNlUmVxdWVzdCYsIFJlc291cmNlRXJyb3ImLCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVm
UHRyPFNoYXJlZEJ1ZmZlcj4mKTsKLQotICAgICAgICBib29sIGNhbkNhY2hlSW5QYWdlQ2FjaGUo
KTsKLQotICAgICAgICBTdGF0dXMgc3RhdHVzKCkgY29uc3Q7ICAKLSAgICAgICAgYm9vbCB1cGRh
dGUoKTsKLSAgICAgICAgYm9vbCBzd2FwQ2FjaGUoKTsKLSAgICAgICAgdm9pZCBhYm9ydCgpOwot
Ci0gICAgICAgIHZvaWQgc2V0RE9NQXBwbGljYXRpb25DYWNoZShET01BcHBsaWNhdGlvbkNhY2hl
Kik7Ci0gICAgICAgIHZvaWQgbm90aWZ5RE9NQXBwbGljYXRpb25DYWNoZShFdmVudElELCBpbnQg
cHJvZ3Jlc3NUb3RhbCwgaW50IHByb2dyZXNzRG9uZSk7Ci0KLSAgICAgICAgdm9pZCBzdG9wTG9h
ZGluZ0luRnJhbWUoRnJhbWUqKTsKLQotICAgICAgICB2b2lkIHN0b3BEZWZlcnJpbmdFdmVudHMo
KTsgLy8gQWxzbyByYWlzZXMgdGhlIGV2ZW50cyB0aGF0IGhhdmUgYmVlbiBxdWV1ZWQgdXAuCi0K
LSAgICAgICAgdm9pZCBmaWxsUmVzb3VyY2VMaXN0KFJlc291cmNlSW5mb0xpc3QqKTsKLSAgICAg
ICAgQ2FjaGVJbmZvIGFwcGxpY2F0aW9uQ2FjaGVJbmZvKCk7Ci0KLSAgICAgICAgYm9vbCBzaG91
bGRMb2FkUmVzb3VyY2VGcm9tQXBwbGljYXRpb25DYWNoZShjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
LCBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqJik7Ci0gICAgICAgIGJvb2wgZ2V0QXBwbGljYXRp
b25DYWNoZUZhbGxiYWNrUmVzb3VyY2UoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgQXBwbGljYXRp
b25DYWNoZVJlc291cmNlKiYsIEFwcGxpY2F0aW9uQ2FjaGUqID0gbnVsbHB0cik7Ci0KLSAgICBw
cml2YXRlOgotICAgICAgICBib29sIGlzQXBwbGljYXRpb25DYWNoZUVuYWJsZWQoKTsKLSAgICAg
ICAgYm9vbCBpc0FwcGxpY2F0aW9uQ2FjaGVCbG9ja2VkRm9yUmVxdWVzdChjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmKTsKLQotICAgICAgICBzdHJ1Y3QgRGVmZXJyZWRFdmVudCB7Ci0gICAgICAgICAg
ICBFdmVudElEIGV2ZW50SUQ7Ci0gICAgICAgICAgICBpbnQgcHJvZ3Jlc3NUb3RhbDsKLSAgICAg
ICAgICAgIGludCBwcm9ncmVzc0RvbmU7Ci0gICAgICAgICAgICBEZWZlcnJlZEV2ZW50KEV2ZW50
SUQgaWQsIGludCB0b3RhbCwgaW50IGRvbmUpIDogZXZlbnRJRChpZCksIHByb2dyZXNzVG90YWwo
dG90YWwpLCBwcm9ncmVzc0RvbmUoZG9uZSkgeyB9Ci0gICAgICAgIH07Ci0KLSAgICAgICAgRE9N
QXBwbGljYXRpb25DYWNoZSogbV9kb21BcHBsaWNhdGlvbkNhY2hlOwotICAgICAgICBEb2N1bWVu
dExvYWRlciYgbV9kb2N1bWVudExvYWRlcjsKLSAgICAgICAgYm9vbCBtX2RlZmVyc0V2ZW50czsg
Ly8gRXZlbnRzIGFyZSBkZWZlcnJlZCB1bnRpbCBhZnRlciBkb2N1bWVudCBvbmxvYWQuCi0gICAg
ICAgIFZlY3RvcjxEZWZlcnJlZEV2ZW50PiBtX2RlZmVycmVkRXZlbnRzOwotCi0gICAgICAgIHZv
aWQgZGlzcGF0Y2hET01FdmVudChFdmVudElELCBpbnQgcHJvZ3Jlc3NUb3RhbCwgaW50IHByb2dy
ZXNzRG9uZSk7Ci0KLSAgICAgICAgZnJpZW5kIGNsYXNzIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDsK
LSAgICAgICAgZnJpZW5kIGNsYXNzIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOwotCi0gICAgICAg
IGJvb2wgc2NoZWR1bGVMb2FkRmFsbGJhY2tSZXNvdXJjZUZyb21BcHBsaWNhdGlvbkNhY2hlKFJl
c291cmNlTG9hZGVyKiwgQXBwbGljYXRpb25DYWNoZSogPSBudWxscHRyKTsKLSAgICAgICAgdm9p
ZCBzZXRDYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoQXBwbGljYXRpb25DYWNoZUdyb3Vw
KiBncm91cCk7Ci0gICAgICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogY2FuZGlkYXRlQXBwbGlj
YXRpb25DYWNoZUdyb3VwKCkgY29uc3QgeyByZXR1cm4gbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNh
Y2hlR3JvdXA7IH0KLSAgICAgICAgdm9pZCBzZXRBcHBsaWNhdGlvbkNhY2hlKFBhc3NSZWZQdHI8
QXBwbGljYXRpb25DYWNoZT4gYXBwbGljYXRpb25DYWNoZSk7Ci0gICAgICAgIEFwcGxpY2F0aW9u
Q2FjaGUqIGFwcGxpY2F0aW9uQ2FjaGUoKSBjb25zdCB7IHJldHVybiBtX2FwcGxpY2F0aW9uQ2Fj
aGUuZ2V0KCk7IH0KLSAgICAgICAgQXBwbGljYXRpb25DYWNoZSogbWFpblJlc291cmNlQXBwbGlj
YXRpb25DYWNoZSgpIGNvbnN0IHsgcmV0dXJuIG1fbWFpblJlc291cmNlQXBwbGljYXRpb25DYWNo
ZS5nZXQoKTsgfQotICAgICAgICBib29sIG1heWJlTG9hZEZhbGxiYWNrRm9yTWFpbkVycm9yKGNv
bnN0IFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKLQotICAgICAgICAv
LyBUaGUgYXBwbGljYXRpb24gY2FjaGUgdGhhdCB0aGUgZG9jdW1lbnQgbG9hZGVyIGlzIGFzc29j
aWF0ZWQgd2l0aCAoaWYgYW55KS4KLSAgICAgICAgUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+IG1f
YXBwbGljYXRpb25DYWNoZTsKLQotICAgICAgICAvLyBCZWZvcmUgYW4gYXBwbGljYXRpb24gY2Fj
aGUgaGFzIGZpbmlzaGVkIGxvYWRpbmcsIHRoaXMgd2lsbCBiZSB0aGUgY2FuZGlkYXRlIGFwcGxp
Y2F0aW9uCi0gICAgICAgIC8vIGdyb3VwIHRoYXQgdGhlIGRvY3VtZW50IGxvYWRlciBpcyBhc3Nv
Y2lhdGVkIHdpdGguCi0gICAgICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogbV9jYW5kaWRhdGVB
cHBsaWNhdGlvbkNhY2hlR3JvdXA7Ci0KLSAgICAgICAgLy8gVGhpcyBpcyB0aGUgYXBwbGljYXRp
b24gY2FjaGUgdGhlIG1haW4gcmVzb3VyY2Ugd2FzIGxvYWRlZCBmcm9tIChpZiBhbnkpLgotICAg
ICAgICBSZWZQdHI8QXBwbGljYXRpb25DYWNoZT4gbV9tYWluUmVzb3VyY2VBcHBsaWNhdGlvbkNh
Y2hlOworCitjbGFzcyBBcHBsaWNhdGlvbkNhY2hlOworY2xhc3MgQXBwbGljYXRpb25DYWNoZUdy
b3VwOworY2xhc3MgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOworY2xhc3MgQXBwbGljYXRpb25D
YWNoZVN0b3JhZ2U7CitjbGFzcyBET01BcHBsaWNhdGlvbkNhY2hlOworY2xhc3MgRG9jdW1lbnRM
b2FkZXI7CitjbGFzcyBGcmFtZTsKK2NsYXNzIFJlc291cmNlRXJyb3I7CitjbGFzcyBSZXNvdXJj
ZUxvYWRlcjsKK2NsYXNzIFJlc291cmNlUmVxdWVzdDsKK2NsYXNzIFJlc291cmNlUmVzcG9uc2U7
CitjbGFzcyBTaGFyZWRCdWZmZXI7CitjbGFzcyBTdWJzdGl0dXRlRGF0YTsKKworY2xhc3MgQXBw
bGljYXRpb25DYWNoZUhvc3QgeworICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKEFwcGxpY2F0aW9u
Q2FjaGVIb3N0KTsgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CitwdWJsaWM6CisgICAgLy8gVGhl
IFN0YXR1cyBudW1lcmljIHZhbHVlcyBhcmUgc3BlY2lmaWVkIGluIHRoZSBIVE1MNSBzcGVjLgor
ICAgIGVudW0gU3RhdHVzIHsKKyAgICAgICAgVU5DQUNIRUQgPSAwLAorICAgICAgICBJRExFID0g
MSwKKyAgICAgICAgQ0hFQ0tJTkcgPSAyLAorICAgICAgICBET1dOTE9BRElORyA9IDMsCisgICAg
ICAgIFVQREFURVJFQURZID0gNCwKKyAgICAgICAgT0JTT0xFVEUgPSA1CisgICAgfTsKKworICAg
IHN0cnVjdCBDYWNoZUluZm8geworICAgICAgICBVUkwgbWFuaWZlc3Q7CisgICAgICAgIGRvdWJs
ZSBjcmVhdGlvblRpbWU7CisgICAgICAgIGRvdWJsZSB1cGRhdGVUaW1lOworICAgICAgICBsb25n
IGxvbmcgc2l6ZTsKKyAgICB9OworCisgICAgc3RydWN0IFJlc291cmNlSW5mbyB7CisgICAgICAg
IFVSTCByZXNvdXJjZTsKKyAgICAgICAgYm9vbCBpc01hc3RlcjsKKyAgICAgICAgYm9vbCBpc01h
bmlmZXN0OworICAgICAgICBib29sIGlzRmFsbGJhY2s7CisgICAgICAgIGJvb2wgaXNGb3JlaWdu
OworICAgICAgICBib29sIGlzRXhwbGljaXQ7CisgICAgICAgIGxvbmcgbG9uZyBzaXplOworICAg
IH07CisKKyAgICBleHBsaWNpdCBBcHBsaWNhdGlvbkNhY2hlSG9zdChEb2N1bWVudExvYWRlciYp
OworICAgIH5BcHBsaWNhdGlvbkNhY2hlSG9zdCgpOworCisgICAgc3RhdGljIFVSTCBjcmVhdGVG
aWxlVVJMKGNvbnN0IFN0cmluZyYpOworCisgICAgdm9pZCBzZWxlY3RDYWNoZVdpdGhvdXRNYW5p
ZmVzdCgpOworICAgIHZvaWQgc2VsZWN0Q2FjaGVXaXRoTWFuaWZlc3QoY29uc3QgVVJMJiBtYW5p
ZmVzdFVSTCk7CisKKyAgICB2b2lkIG1heWJlTG9hZE1haW5SZXNvdXJjZShSZXNvdXJjZVJlcXVl
c3QmLCBTdWJzdGl0dXRlRGF0YSYpOworICAgIHZvaWQgbWF5YmVMb2FkTWFpblJlc291cmNlRm9y
UmVkaXJlY3QoUmVzb3VyY2VSZXF1ZXN0JiwgU3Vic3RpdHV0ZURhdGEmKTsKKyAgICBib29sIG1h
eWJlTG9hZEZhbGxiYWNrRm9yTWFpblJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmKTsKKyAgICB2b2lkIG1haW5SZXNvdXJjZURhdGFSZWNlaXZl
ZChjb25zdCBjaGFyKiBkYXRhLCBpbnQgbGVuZ3RoLCBsb25nIGxvbmcgZW5jb2RlZERhdGFMZW5n
dGgsIGJvb2wgYWxsQXRPbmNlKTsKKyAgICB2b2lkIGZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJj
ZSgpOworICAgIHZvaWQgZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZSgpOworCisgICAgV0VCQ09S
RV9FWFBPUlQgYm9vbCBtYXliZUxvYWRSZXNvdXJjZShSZXNvdXJjZUxvYWRlciYsIGNvbnN0IFJl
c291cmNlUmVxdWVzdCYsIGNvbnN0IFVSTCYgb3JpZ2luYWxVUkwpOworICAgIFdFQkNPUkVfRVhQ
T1JUIGJvb2wgbWF5YmVMb2FkRmFsbGJhY2tGb3JSZWRpcmVjdChSZXNvdXJjZUxvYWRlciosIFJl
c291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKKyAgICBXRUJDT1JFX0VY
UE9SVCBib29sIG1heWJlTG9hZEZhbGxiYWNrRm9yUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXIqLCBj
b25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CisgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBtYXliZUxv
YWRGYWxsYmFja0ZvckVycm9yKFJlc291cmNlTG9hZGVyKiwgY29uc3QgUmVzb3VyY2VFcnJvciYp
OworCisgICAgYm9vbCBtYXliZUxvYWRTeW5jaHJvbm91c2x5KFJlc291cmNlUmVxdWVzdCYsIFJl
c291cmNlRXJyb3ImLCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4mKTsK
KyAgICB2b2lkIG1heWJlTG9hZEZhbGxiYWNrU3luY2hyb25vdXNseShjb25zdCBSZXNvdXJjZVJl
cXVlc3QmLCBSZXNvdXJjZUVycm9yJiwgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRC
dWZmZXI+Jik7CisKKyAgICBib29sIGNhbkNhY2hlSW5QYWdlQ2FjaGUoKTsKKworICAgIFN0YXR1
cyBzdGF0dXMoKSBjb25zdDsKKyAgICBib29sIHVwZGF0ZSgpOworICAgIGJvb2wgc3dhcENhY2hl
KCk7CisgICAgdm9pZCBhYm9ydCgpOworCisgICAgdm9pZCBzZXRET01BcHBsaWNhdGlvbkNhY2hl
KERPTUFwcGxpY2F0aW9uQ2FjaGUqKTsKKyAgICB2b2lkIG5vdGlmeURPTUFwcGxpY2F0aW9uQ2Fj
aGUoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGludCBwcm9ncmVzc1RvdGFsLCBpbnQg
cHJvZ3Jlc3NEb25lKTsKKworICAgIHZvaWQgc3RvcExvYWRpbmdJbkZyYW1lKEZyYW1lJik7CisK
KyAgICB2b2lkIHN0b3BEZWZlcnJpbmdFdmVudHMoKTsgLy8gQWxzbyByYWlzZXMgdGhlIGV2ZW50
cyB0aGF0IGhhdmUgYmVlbiBxdWV1ZWQgdXAuCisKKyAgICBWZWN0b3I8UmVzb3VyY2VJbmZvPiBy
ZXNvdXJjZUxpc3QoKTsKKyAgICBDYWNoZUluZm8gYXBwbGljYXRpb25DYWNoZUluZm8oKTsKKwor
ICAgIGJvb2wgc2hvdWxkTG9hZFJlc291cmNlRnJvbUFwcGxpY2F0aW9uQ2FjaGUoY29uc3QgUmVz
b3VyY2VSZXF1ZXN0JiwgQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiYpOworICAgIGJvb2wgZ2V0
QXBwbGljYXRpb25DYWNoZUZhbGxiYWNrUmVzb3VyY2UoY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jiwg
QXBwbGljYXRpb25DYWNoZVJlc291cmNlKiYsIEFwcGxpY2F0aW9uQ2FjaGUqID0gbnVsbHB0cik7
CisKK3ByaXZhdGU6CisgICAgZnJpZW5kIGNsYXNzIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDsKKwor
ICAgIHN0cnVjdCBEZWZlcnJlZEV2ZW50IHsKKyAgICAgICAgQXRvbWljU3RyaW5nIGV2ZW50VHlw
ZTsKKyAgICAgICAgaW50IHByb2dyZXNzVG90YWw7CisgICAgICAgIGludCBwcm9ncmVzc0RvbmU7
CiAgICAgfTsKIAorICAgIGJvb2wgaXNBcHBsaWNhdGlvbkNhY2hlRW5hYmxlZCgpOworICAgIGJv
b2wgaXNBcHBsaWNhdGlvbkNhY2hlQmxvY2tlZEZvclJlcXVlc3QoY29uc3QgUmVzb3VyY2VSZXF1
ZXN0Jik7CisKKyAgICB2b2lkIGRpc3BhdGNoRE9NRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiBl
dmVudFR5cGUsIGludCBwcm9ncmVzc1RvdGFsLCBpbnQgcHJvZ3Jlc3NEb25lKTsKKworICAgIGJv
b2wgc2NoZWR1bGVMb2FkRmFsbGJhY2tSZXNvdXJjZUZyb21BcHBsaWNhdGlvbkNhY2hlKFJlc291
cmNlTG9hZGVyKiwgQXBwbGljYXRpb25DYWNoZSogPSBudWxscHRyKTsKKyAgICB2b2lkIHNldENh
bmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cChBcHBsaWNhdGlvbkNhY2hlR3JvdXAqKTsKKyAg
ICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGNhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCgp
IGNvbnN0IHsgcmV0dXJuIG1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwOyB9CisgICAg
dm9pZCBzZXRBcHBsaWNhdGlvbkNhY2hlKFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hlPiYmKTsKKyAg
ICBBcHBsaWNhdGlvbkNhY2hlKiBhcHBsaWNhdGlvbkNhY2hlKCkgY29uc3QgeyByZXR1cm4gbV9h
cHBsaWNhdGlvbkNhY2hlLmdldCgpOyB9CisgICAgQXBwbGljYXRpb25DYWNoZSogbWFpblJlc291
cmNlQXBwbGljYXRpb25DYWNoZSgpIGNvbnN0IHsgcmV0dXJuIG1fbWFpblJlc291cmNlQXBwbGlj
YXRpb25DYWNoZS5nZXQoKTsgfQorICAgIGJvb2wgbWF5YmVMb2FkRmFsbGJhY2tGb3JNYWluRXJy
b3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VFcnJvciYpOworCisgICAg
RE9NQXBwbGljYXRpb25DYWNoZSogbV9kb21BcHBsaWNhdGlvbkNhY2hlIHsgbnVsbHB0ciB9Owor
ICAgIERvY3VtZW50TG9hZGVyJiBtX2RvY3VtZW50TG9hZGVyOworCisgICAgYm9vbCBtX2RlZmVy
c0V2ZW50cyB7IHRydWUgfTsgLy8gRXZlbnRzIGFyZSBkZWZlcnJlZCB1bnRpbCBhZnRlciBkb2N1
bWVudCBvbmxvYWQuCisgICAgVmVjdG9yPERlZmVycmVkRXZlbnQ+IG1fZGVmZXJyZWRFdmVudHM7
CisKKyAgICAvLyBUaGUgYXBwbGljYXRpb24gY2FjaGUgdGhhdCB0aGUgZG9jdW1lbnQgbG9hZGVy
IGlzIGFzc29jaWF0ZWQgd2l0aCAoaWYgYW55KS4KKyAgICBSZWZQdHI8QXBwbGljYXRpb25DYWNo
ZT4gbV9hcHBsaWNhdGlvbkNhY2hlOworCisgICAgLy8gQmVmb3JlIGFuIGFwcGxpY2F0aW9uIGNh
Y2hlIGhhcyBmaW5pc2hlZCBsb2FkaW5nLCB0aGlzIHdpbGwgYmUgdGhlIGNhbmRpZGF0ZSBhcHBs
aWNhdGlvbgorICAgIC8vIGdyb3VwIHRoYXQgdGhlIGRvY3VtZW50IGxvYWRlciBpcyBhc3NvY2lh
dGVkIHdpdGguCisgICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBtX2NhbmRpZGF0ZUFwcGxpY2F0
aW9uQ2FjaGVHcm91cCB7IG51bGxwdHIgfTsKKworICAgIC8vIFRoaXMgaXMgdGhlIGFwcGxpY2F0
aW9uIGNhY2hlIHRoZSBtYWluIHJlc291cmNlIHdhcyBsb2FkZWQgZnJvbSAoaWYgYW55KS4KKyAg
ICBSZWZQdHI8QXBwbGljYXRpb25DYWNoZT4gbV9tYWluUmVzb3VyY2VBcHBsaWNhdGlvbkNhY2hl
OworfTsKKwogfSAgLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UuY3BwCmluZGV4
IGRmMTAzZTRhMmI4ZWI0NTU4M2UwZWE5MzY1N2ZkZTZjODYxMDQ5MDYuLmY0ZmE5NWI1MTdlYzc3
OTE2MjRmYzBmMjVhNjU2YjBjMDk0NDE0NzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlLmNwcApAQCAtMTI2
LDM2ICsxMjYsMzIgQEAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBBcHBsaWNhdGlvbkNhY2hlU3Rv
cmFnZTo6bG9hZENhY2hlR3JvdXAoY29uc3QgVVJMJiBtYW5pZmUKICAgICBpZiAoIWNhY2hlKQog
ICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICAgICAgCi0gICAgQXBwbGljYXRpb25DYWNoZUdy
b3VwKiBncm91cCA9IG5ldyBBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKnRoaXMsIG1hbmlmZXN0VVJM
KTsKLSAgICAgIAotICAgIGdyb3VwLT5zZXRTdG9yYWdlSUQoc3RhdGljX2Nhc3Q8dW5zaWduZWQ+
KHN0YXRlbWVudC5nZXRDb2x1bW5JbnQ2NCgwKSkpOwotICAgIGdyb3VwLT5zZXROZXdlc3RDYWNo
ZShXVEZNb3ZlKGNhY2hlKSk7Ci0KLSAgICByZXR1cm4gZ3JvdXA7CisgICAgYXV0byYgZ3JvdXAg
PSAqbmV3IEFwcGxpY2F0aW9uQ2FjaGVHcm91cCgqdGhpcywgbWFuaWZlc3RVUkwpOworICAgIGdy
b3VwLnNldFN0b3JhZ2VJRChzdGF0aWNfY2FzdDx1bnNpZ25lZD4oc3RhdGVtZW50LmdldENvbHVt
bkludDY0KDApKSk7CisgICAgZ3JvdXAuc2V0TmV3ZXN0Q2FjaGUoY2FjaGUucmVsZWFzZU5vbk51
bGwoKSk7CisgICAgcmV0dXJuICZncm91cDsKIH0gICAgCiAKIEFwcGxpY2F0aW9uQ2FjaGVHcm91
cCogQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmZpbmRPckNyZWF0ZUNhY2hlR3JvdXAoY29uc3Qg
VVJMJiBtYW5pZmVzdFVSTCkKIHsKICAgICBBU1NFUlQoIW1hbmlmZXN0VVJMLmhhc0ZyYWdtZW50
SWRlbnRpZmllcigpKTsKIAotICAgIENhY2hlR3JvdXBNYXA6OkFkZFJlc3VsdCByZXN1bHQgPSBt
X2NhY2hlc0luTWVtb3J5LmFkZChtYW5pZmVzdFVSTCwgbnVsbHB0cik7Ci0gICAgCisgICAgYXV0
byByZXN1bHQgPSBtX2NhY2hlc0luTWVtb3J5LmFkZChtYW5pZmVzdFVSTCwgbnVsbHB0cik7CiAg
ICAgaWYgKCFyZXN1bHQuaXNOZXdFbnRyeSkgewogICAgICAgICBBU1NFUlQocmVzdWx0Lml0ZXJh
dG9yLT52YWx1ZSk7CiAgICAgICAgIHJldHVybiByZXN1bHQuaXRlcmF0b3ItPnZhbHVlOwogICAg
IH0KIAogICAgIC8vIExvb2sgdXAgdGhlIGdyb3VwIGluIHRoZSBkYXRhYmFzZQotICAgIEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAgPSBsb2FkQ2FjaGVHcm91cChtYW5pZmVzdFVSTCk7Cisg
ICAgYXV0byogZ3JvdXAgPSBsb2FkQ2FjaGVHcm91cChtYW5pZmVzdFVSTCk7CiAgICAgCiAgICAg
Ly8gSWYgdGhlIGdyb3VwIHdhcyBub3QgZm91bmQgd2UgbmVlZCB0byBjcmVhdGUgaXQKICAgICBp
ZiAoIWdyb3VwKSB7CiAgICAgICAgIGdyb3VwID0gbmV3IEFwcGxpY2F0aW9uQ2FjaGVHcm91cCgq
dGhpcywgbWFuaWZlc3RVUkwpOwogICAgICAgICBtX2NhY2hlSG9zdFNldC5hZGQodXJsSG9zdEhh
c2gobWFuaWZlc3RVUkwpKTsKICAgICB9Ci0gICAgCisKICAgICByZXN1bHQuaXRlcmF0b3ItPnZh
bHVlID0gZ3JvdXA7Ci0gICAgCiAgICAgcmV0dXJuIGdyb3VwOwogfQogCkBAIC0yNDQsMjAgKzI0
MCwxOCBAQCBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpj
YWNoZUdyb3VwRm9yVVJMKGNvbnN0IFVSTCYgdXJsKQogICAgICAgICBpZiAoIWNhY2hlKQogICAg
ICAgICAgICAgY29udGludWU7CiAKLSAgICAgICAgQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiBy
ZXNvdXJjZSA9IGNhY2hlLT5yZXNvdXJjZUZvclVSTCh1cmwpOworICAgICAgICBhdXRvKiByZXNv
dXJjZSA9IGNhY2hlLT5yZXNvdXJjZUZvclVSTCh1cmwpOwogICAgICAgICBpZiAoIXJlc291cmNl
KQogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIGlmIChyZXNvdXJjZS0+dHlwZSgpICYg
QXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpGb3JlaWduKQogICAgICAgICAgICAgY29udGludWU7
CiAKLSAgICAgICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCA9IG5ldyBBcHBsaWNhdGlv
bkNhY2hlR3JvdXAoKnRoaXMsIG1hbmlmZXN0VVJMKTsKLSAgICAgICAgCi0gICAgICAgIGdyb3Vw
LT5zZXRTdG9yYWdlSUQoc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHN0YXRlbWVudC5nZXRDb2x1bW5J
bnQ2NCgwKSkpOwotICAgICAgICBncm91cC0+c2V0TmV3ZXN0Q2FjaGUoV1RGTW92ZShjYWNoZSkp
OwotICAgICAgICAKLSAgICAgICAgbV9jYWNoZXNJbk1lbW9yeS5zZXQoZ3JvdXAtPm1hbmlmZXN0
VVJMKCksIGdyb3VwKTsKLSAgICAgICAgCi0gICAgICAgIHJldHVybiBncm91cDsKKyAgICAgICAg
YXV0byYgZ3JvdXAgPSAqbmV3IEFwcGxpY2F0aW9uQ2FjaGVHcm91cCgqdGhpcywgbWFuaWZlc3RV
UkwpOworICAgICAgICBncm91cC5zZXRTdG9yYWdlSUQoc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHN0
YXRlbWVudC5nZXRDb2x1bW5JbnQ2NCgwKSkpOworICAgICAgICBncm91cC5zZXROZXdlc3RDYWNo
ZShjYWNoZS5yZWxlYXNlTm9uTnVsbCgpKTsKKyAgICAgICAgbV9jYWNoZXNJbk1lbW9yeS5zZXQo
Z3JvdXAubWFuaWZlc3RVUkwoKSwgJmdyb3VwKTsKKworICAgICAgICByZXR1cm4gJmdyb3VwOwog
ICAgIH0KIAogICAgIGlmIChyZXN1bHQgIT0gU1FMSVRFX0RPTkUpCkBAIC0zMjAsMTQgKzMxNCwx
MyBAQCBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpmYWxs
YmFja0NhY2hlR3JvdXBGb3JVUkwoY29uc3QgVQogICAgICAgICBpZiAoY2FjaGUtPnJlc291cmNl
Rm9yVVJMKGZhbGxiYWNrVVJMKS0+dHlwZSgpICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpG
b3JlaWduKQogICAgICAgICAgICAgY29udGludWU7CiAKLSAgICAgICAgQXBwbGljYXRpb25DYWNo
ZUdyb3VwKiBncm91cCA9IG5ldyBBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKnRoaXMsIG1hbmlmZXN0
VVJMKTsKLSAgICAgICAgCi0gICAgICAgIGdyb3VwLT5zZXRTdG9yYWdlSUQoc3RhdGljX2Nhc3Q8
dW5zaWduZWQ+KHN0YXRlbWVudC5nZXRDb2x1bW5JbnQ2NCgwKSkpOwotICAgICAgICBncm91cC0+
c2V0TmV3ZXN0Q2FjaGUoV1RGTW92ZShjYWNoZSkpOwotICAgICAgICAKLSAgICAgICAgbV9jYWNo
ZXNJbk1lbW9yeS5zZXQoZ3JvdXAtPm1hbmlmZXN0VVJMKCksIGdyb3VwKTsKLSAgICAgICAgCi0g
ICAgICAgIHJldHVybiBncm91cDsKKyAgICAgICAgYXV0byYgZ3JvdXAgPSAqbmV3IEFwcGxpY2F0
aW9uQ2FjaGVHcm91cCgqdGhpcywgbWFuaWZlc3RVUkwpOworICAgICAgICBncm91cC5zZXRTdG9y
YWdlSUQoc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHN0YXRlbWVudC5nZXRDb2x1bW5JbnQ2NCgwKSkp
OworICAgICAgICBncm91cC5zZXROZXdlc3RDYWNoZShjYWNoZS5yZWxlYXNlTm9uTnVsbCgpKTsK
KworICAgICAgICBtX2NhY2hlc0luTWVtb3J5LnNldChncm91cC5tYW5pZmVzdFVSTCgpLCAmZ3Jv
dXApOworCisgICAgICAgIHJldHVybiAmZ3JvdXA7CiAgICAgfQogCiAgICAgaWYgKHJlc3VsdCAh
PSBTUUxJVEVfRE9ORSkKQEAgLTMzNiwzMyArMzI5LDMzIEBAIEFwcGxpY2F0aW9uQ2FjaGVHcm91
cCogQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmZhbGxiYWNrQ2FjaGVHcm91cEZvclVSTChjb25z
dCBVCiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZVN0b3Jh
Z2U6OmNhY2hlR3JvdXBEZXN0cm95ZWQoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCkKK3Zv
aWQgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmNhY2hlR3JvdXBEZXN0cm95ZWQoQXBwbGljYXRp
b25DYWNoZUdyb3VwJiBncm91cCkKIHsKLSAgICBpZiAoZ3JvdXAtPmlzT2Jzb2xldGUoKSkgewot
ICAgICAgICBBU1NFUlQoIWdyb3VwLT5zdG9yYWdlSUQoKSk7Ci0gICAgICAgIEFTU0VSVChtX2Nh
Y2hlc0luTWVtb3J5LmdldChncm91cC0+bWFuaWZlc3RVUkwoKSkgIT0gZ3JvdXApOworICAgIGlm
IChncm91cC5pc09ic29sZXRlKCkpIHsKKyAgICAgICAgQVNTRVJUKCFncm91cC5zdG9yYWdlSUQo
KSk7CisgICAgICAgIEFTU0VSVChtX2NhY2hlc0luTWVtb3J5LmdldChncm91cC5tYW5pZmVzdFVS
TCgpKSAhPSAmZ3JvdXApOwogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgQVNTRVJUKG1f
Y2FjaGVzSW5NZW1vcnkuZ2V0KGdyb3VwLT5tYW5pZmVzdFVSTCgpKSA9PSBncm91cCk7CisgICAg
QVNTRVJUKG1fY2FjaGVzSW5NZW1vcnkuZ2V0KGdyb3VwLm1hbmlmZXN0VVJMKCkpID09ICZncm91
cCk7CiAKLSAgICBtX2NhY2hlc0luTWVtb3J5LnJlbW92ZShncm91cC0+bWFuaWZlc3RVUkwoKSk7
CisgICAgbV9jYWNoZXNJbk1lbW9yeS5yZW1vdmUoZ3JvdXAubWFuaWZlc3RVUkwoKSk7CiAgICAg
CiAgICAgLy8gSWYgdGhlIGNhY2hlIGdyb3VwIGlzIGhhbGYtY3JlYXRlZCwgd2UgZG9uJ3Qgd2Fu
dCBpdCBpbiB0aGUgc2F2ZWQgc2V0IChhcyBpdCBpcyBub3Qgc3RvcmVkIGluIGRhdGFiYXNlKS4K
LSAgICBpZiAoIWdyb3VwLT5zdG9yYWdlSUQoKSkKLSAgICAgICAgbV9jYWNoZUhvc3RTZXQucmVt
b3ZlKHVybEhvc3RIYXNoKGdyb3VwLT5tYW5pZmVzdFVSTCgpKSk7CisgICAgaWYgKCFncm91cC5z
dG9yYWdlSUQoKSkKKyAgICAgICAgbV9jYWNoZUhvc3RTZXQucmVtb3ZlKHVybEhvc3RIYXNoKGdy
b3VwLm1hbmlmZXN0VVJMKCkpKTsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6
Y2FjaGVHcm91cE1hZGVPYnNvbGV0ZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwKQordm9p
ZCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6Y2FjaGVHcm91cE1hZGVPYnNvbGV0ZShBcHBsaWNh
dGlvbkNhY2hlR3JvdXAmIGdyb3VwKQogewotICAgIEFTU0VSVChtX2NhY2hlc0luTWVtb3J5Lmdl
dChncm91cC0+bWFuaWZlc3RVUkwoKSkgPT0gZ3JvdXApOwotICAgIEFTU0VSVChtX2NhY2hlSG9z
dFNldC5jb250YWlucyh1cmxIb3N0SGFzaChncm91cC0+bWFuaWZlc3RVUkwoKSkpKTsKKyAgICBB
U1NFUlQobV9jYWNoZXNJbk1lbW9yeS5nZXQoZ3JvdXAubWFuaWZlc3RVUkwoKSkgPT0gJmdyb3Vw
KTsKKyAgICBBU1NFUlQobV9jYWNoZUhvc3RTZXQuY29udGFpbnModXJsSG9zdEhhc2goZ3JvdXAu
bWFuaWZlc3RVUkwoKSkpKTsKIAotICAgIGlmIChBcHBsaWNhdGlvbkNhY2hlKiBuZXdlc3RDYWNo
ZSA9IGdyb3VwLT5uZXdlc3RDYWNoZSgpKQorICAgIGlmIChhdXRvKiBuZXdlc3RDYWNoZSA9IGdy
b3VwLm5ld2VzdENhY2hlKCkpCiAgICAgICAgIHJlbW92ZShuZXdlc3RDYWNoZSk7CiAKLSAgICBt
X2NhY2hlc0luTWVtb3J5LnJlbW92ZShncm91cC0+bWFuaWZlc3RVUkwoKSk7Ci0gICAgbV9jYWNo
ZUhvc3RTZXQucmVtb3ZlKHVybEhvc3RIYXNoKGdyb3VwLT5tYW5pZmVzdFVSTCgpKSk7CisgICAg
bV9jYWNoZXNJbk1lbW9yeS5yZW1vdmUoZ3JvdXAubWFuaWZlc3RVUkwoKSk7CisgICAgbV9jYWNo
ZUhvc3RTZXQucmVtb3ZlKHVybEhvc3RIYXNoKGdyb3VwLm1hbmlmZXN0VVJMKCkpKTsKIH0KIAog
Y29uc3QgU3RyaW5nJiBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6Y2FjaGVEaXJlY3RvcnkoKSBj
b25zdApAQCAtOTk2LDcgKzk4OSw3IEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmNo
ZWNrT3JpZ2luUXVvdGEoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCwgQXBwCiAgICAgcmV0
dXJuIHRydWU7CiB9CiAKLWJvb2wgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OnN0b3JlTmV3ZXN0
Q2FjaGUoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCwgQXBwbGljYXRpb25DYWNoZSogb2xk
Q2FjaGUsIEZhaWx1cmVSZWFzb24mIGZhaWx1cmVSZWFzb24pCitib29sIEFwcGxpY2F0aW9uQ2Fj
aGVTdG9yYWdlOjpzdG9yZU5ld2VzdENhY2hlKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCYgZ3JvdXAs
IEFwcGxpY2F0aW9uQ2FjaGUqIG9sZENhY2hlLCBGYWlsdXJlUmVhc29uJiBmYWlsdXJlUmVhc29u
KQogewogICAgIG9wZW5EYXRhYmFzZSh0cnVlKTsKIApAQCAtMTAxMiwyNCArMTAwNSwyNCBAQCBi
b29sIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpzdG9yZU5ld2VzdENhY2hlKEFwcGxpY2F0aW9u
Q2FjaGVHcm91cCogZ3JvdXAsIEFwcAogCiAgICAgLy8gQ2hlY2sgaWYgdGhpcyB3b3VsZCByZWFj
aCB0aGUgcGVyLW9yaWdpbiBxdW90YS4KICAgICBpbnQ2NF90IHRvdGFsU3BhY2VOZWVkZWRJZ25v
cmVkOwotICAgIGlmICghY2hlY2tPcmlnaW5RdW90YShncm91cCwgb2xkQ2FjaGUsIGdyb3VwLT5u
ZXdlc3RDYWNoZSgpLCB0b3RhbFNwYWNlTmVlZGVkSWdub3JlZCkpIHsKKyAgICBpZiAoIWNoZWNr
T3JpZ2luUXVvdGEoJmdyb3VwLCBvbGRDYWNoZSwgZ3JvdXAubmV3ZXN0Q2FjaGUoKSwgdG90YWxT
cGFjZU5lZWRlZElnbm9yZWQpKSB7CiAgICAgICAgIGZhaWx1cmVSZWFzb24gPSBPcmlnaW5RdW90
YVJlYWNoZWQ7CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9CiAKICAgICBHcm91cFN0b3Jh
Z2VJREpvdXJuYWwgZ3JvdXBTdG9yYWdlSURKb3VybmFsOwotICAgIGlmICghZ3JvdXAtPnN0b3Jh
Z2VJRCgpKSB7CisgICAgaWYgKCFncm91cC5zdG9yYWdlSUQoKSkgewogICAgICAgICAvLyBTdG9y
ZSB0aGUgZ3JvdXAKLSAgICAgICAgaWYgKCFzdG9yZShncm91cCwgJmdyb3VwU3RvcmFnZUlESm91
cm5hbCkpIHsKKyAgICAgICAgaWYgKCFzdG9yZSgmZ3JvdXAsICZncm91cFN0b3JhZ2VJREpvdXJu
YWwpKSB7CiAgICAgICAgICAgICBjaGVja0Zvck1heFNpemVSZWFjaGVkKCk7CiAgICAgICAgICAg
ICBmYWlsdXJlUmVhc29uID0gaXNNYXhpbXVtU2l6ZVJlYWNoZWQoKSA/IFRvdGFsUXVvdGFSZWFj
aGVkIDogRGlza09yT3BlcmF0aW9uRmFpbHVyZTsKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsK
ICAgICAgICAgfQogICAgIH0KICAgICAKLSAgICBBU1NFUlQoZ3JvdXAtPm5ld2VzdENhY2hlKCkp
OwotICAgIEFTU0VSVCghZ3JvdXAtPmlzT2Jzb2xldGUoKSk7Ci0gICAgQVNTRVJUKCFncm91cC0+
bmV3ZXN0Q2FjaGUoKS0+c3RvcmFnZUlEKCkpOworICAgIEFTU0VSVChncm91cC5uZXdlc3RDYWNo
ZSgpKTsKKyAgICBBU1NFUlQoIWdyb3VwLmlzT2Jzb2xldGUoKSk7CisgICAgQVNTRVJUKCFncm91
cC5uZXdlc3RDYWNoZSgpLT5zdG9yYWdlSUQoKSk7CiAgICAgCiAgICAgLy8gTG9nIHRoZSBzdG9y
YWdlSUQgY2hhbmdlcyB0byB0aGUgaW4tbWVtb3J5IHJlc291cmNlIG9iamVjdHMuIFRoZSBqb3Vy
bmFsCiAgICAgLy8gb2JqZWN0IHdpbGwgcm9sbCB0aGVtIGJhY2sgYXV0b21hdGljYWxseSBpbiBj
YXNlIGEgZGF0YWJhc2Ugb3BlcmF0aW9uCkBAIC0xMDM3LDcgKzEwMzAsNyBAQCBib29sIEFwcGxp
Y2F0aW9uQ2FjaGVTdG9yYWdlOjpzdG9yZU5ld2VzdENhY2hlKEFwcGxpY2F0aW9uQ2FjaGVHcm91
cCogZ3JvdXAsIEFwcAogICAgIFJlc291cmNlU3RvcmFnZUlESm91cm5hbCByZXNvdXJjZVN0b3Jh
Z2VJREpvdXJuYWw7CiAKICAgICAvLyBTdG9yZSB0aGUgbmV3ZXN0IGNhY2hlCi0gICAgaWYgKCFz
dG9yZShncm91cC0+bmV3ZXN0Q2FjaGUoKSwgJnJlc291cmNlU3RvcmFnZUlESm91cm5hbCkpIHsK
KyAgICBpZiAoIXN0b3JlKGdyb3VwLm5ld2VzdENhY2hlKCksICZyZXNvdXJjZVN0b3JhZ2VJREpv
dXJuYWwpKSB7CiAgICAgICAgIGNoZWNrRm9yTWF4U2l6ZVJlYWNoZWQoKTsKICAgICAgICAgZmFp
bHVyZVJlYXNvbiA9IGlzTWF4aW11bVNpemVSZWFjaGVkKCkgPyBUb3RhbFF1b3RhUmVhY2hlZCA6
IERpc2tPck9wZXJhdGlvbkZhaWx1cmU7CiAgICAgICAgIHJldHVybiBmYWxzZTsKQEAgLTEwNTEs
OCArMTA0NCw4IEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OnN0b3JlTmV3ZXN0Q2Fj
aGUoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCwgQXBwCiAgICAgICAgIHJldHVybiBmYWxz
ZTsKICAgICB9CiAgICAgCi0gICAgc3RhdGVtZW50LmJpbmRJbnQ2NCgxLCBncm91cC0+bmV3ZXN0
Q2FjaGUoKS0+c3RvcmFnZUlEKCkpOwotICAgIHN0YXRlbWVudC5iaW5kSW50NjQoMiwgZ3JvdXAt
PnN0b3JhZ2VJRCgpKTsKKyAgICBzdGF0ZW1lbnQuYmluZEludDY0KDEsIGdyb3VwLm5ld2VzdENh
Y2hlKCktPnN0b3JhZ2VJRCgpKTsKKyAgICBzdGF0ZW1lbnQuYmluZEludDY0KDIsIGdyb3VwLnN0
b3JhZ2VJRCgpKTsKICAgICAKICAgICBpZiAoIWV4ZWN1dGVTdGF0ZW1lbnQoc3RhdGVtZW50KSkg
ewogICAgICAgICBmYWlsdXJlUmVhc29uID0gRGlza09yT3BlcmF0aW9uRmFpbHVyZTsKQEAgLTEw
NjUsMjIgKzEwNTgsMjQgQEAgYm9vbCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6c3RvcmVOZXdl
c3RDYWNoZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwLCBBcHAKICAgICByZXR1cm4gdHJ1
ZTsKIH0KIAotYm9vbCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6c3RvcmVOZXdlc3RDYWNoZShB
cHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwKQorYm9vbCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFn
ZTo6c3RvcmVOZXdlc3RDYWNoZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAmIGdyb3VwKQogewogICAg
IC8vIElnbm9yZSB0aGUgcmVhc29uIGZvciBmYWlsaW5nLCBqdXN0IGF0dGVtcHQgdGhlIHN0b3Jl
LgogICAgIEZhaWx1cmVSZWFzb24gaWdub3JlZEZhaWx1cmVSZWFzb247Ci0gICAgcmV0dXJuIHN0
b3JlTmV3ZXN0Q2FjaGUoZ3JvdXAsIDAsIGlnbm9yZWRGYWlsdXJlUmVhc29uKTsKKyAgICByZXR1
cm4gc3RvcmVOZXdlc3RDYWNoZShncm91cCwgbnVsbHB0ciwgaWdub3JlZEZhaWx1cmVSZWFzb24p
OwogfQogCi10ZW1wbGF0ZSA8dHlwZW5hbWUgQ2hhcmFjdGVyVHlwZT4KLXN0YXRpYyBpbmxpbmUg
dm9pZCBwYXJzZUhlYWRlcihjb25zdCBDaGFyYWN0ZXJUeXBlKiBoZWFkZXIsIHNpemVfdCBoZWFk
ZXJMZW5ndGgsIFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordGVtcGxhdGU8dHlwZW5hbWUg
Q2hhcmFjdGVyVHlwZT4KK3N0YXRpYyBpbmxpbmUgdm9pZCBwYXJzZUhlYWRlcihjb25zdCBDaGFy
YWN0ZXJUeXBlKiBoZWFkZXIsIHVuc2lnbmVkIGhlYWRlckxlbmd0aCwgUmVzb3VyY2VSZXNwb25z
ZSYgcmVzcG9uc2UpCiB7Ci0gICAgc2l6ZV90IHBvcyA9IGZpbmQoaGVhZGVyLCBoZWFkZXJMZW5n
dGgsICc6Jyk7Ci0gICAgQVNTRVJUKHBvcyAhPSBub3RGb3VuZCk7Ci0gICAgCi0gICAgU3RyaW5n
IGhlYWRlck5hbWUgPSBBdG9taWNTdHJpbmcoaGVhZGVyLCBwb3MpOwotICAgIFN0cmluZyBoZWFk
ZXJWYWx1ZSA9IFN0cmluZyhoZWFkZXIgKyBwb3MgKyAxLCBoZWFkZXJMZW5ndGggLSBwb3MgLSAx
KTsKLSAgICAKKyAgICBBU1NFUlQoZmluZChoZWFkZXIsIGhlYWRlckxlbmd0aCwgJzonKSAhPSBu
b3RGb3VuZCk7CisgICAgdW5zaWduZWQgY29sb25Qb3NpdGlvbiA9IGZpbmQoaGVhZGVyLCBoZWFk
ZXJMZW5ndGgsICc6Jyk7CisKKyAgICAvLyBTYXZlIG1lbW9yeSBieSBwdXR0aW5nIHRoZSBoZWFk
ZXIgbmFtZXMgaW50byBhdG9taWMgc3RyaW5ncyBzbyBlYWNoIGlzIHN0b3JlZCBvbmx5IG9uY2Us
CisgICAgLy8gZXZlbiB0aG91Z2ggdGhlIHNldEhUVFBIZWFkZXJGaWVsZCBmdW5jdGlvbiBkb2Vz
IG5vdCByZXF1aXJlIGFuIGF0b21pYyBzdHJpbmcuCisgICAgQXRvbWljU3RyaW5nIGhlYWRlck5h
bWUgeyBoZWFkZXIsIGNvbG9uUG9zaXRpb24gfTsKKyAgICBTdHJpbmcgaGVhZGVyVmFsdWUgeyBo
ZWFkZXIgKyBjb2xvblBvc2l0aW9uICsgMSwgaGVhZGVyTGVuZ3RoIC0gY29sb25Qb3NpdGlvbiAt
IDEgfTsKKwogICAgIHJlc3BvbnNlLnNldEhUVFBIZWFkZXJGaWVsZChoZWFkZXJOYW1lLCBoZWFk
ZXJWYWx1ZSk7CiB9CiAKQEAgLTExMDcsNyArMTEwMiw3IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBw
YXJzZUhlYWRlcnMoY29uc3QgU3RyaW5nJiBoZWFkZXJzLCBSZXNvdXJjZVJlc3BvbnNlJiByZXNw
b25zCiAgICAgfQogfQogICAgIAotUGFzc1JlZlB0cjxBcHBsaWNhdGlvbkNhY2hlPiBBcHBsaWNh
dGlvbkNhY2hlU3RvcmFnZTo6bG9hZENhY2hlKHVuc2lnbmVkIHN0b3JhZ2VJRCkKK1JlZlB0cjxB
cHBsaWNhdGlvbkNhY2hlPiBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6bG9hZENhY2hlKHVuc2ln
bmVkIHN0b3JhZ2VJRCkKIHsKICAgICBBU1NFUlQoU1FMaXRlRGF0YWJhc2VUcmFja2VyOjpoYXNU
cmFuc2FjdGlvbkluUHJvZ3Jlc3MoKSk7CiAgICAgU1FMaXRlU3RhdGVtZW50IGNhY2hlU3RhdGVt
ZW50KG1fZGF0YWJhc2UsCkBAIC0xNDA4LDEwICsxNDAzLDExIEBAIGJvb2wgQXBwbGljYXRpb25D
YWNoZVN0b3JhZ2U6OmRlbGV0ZUNhY2hlR3JvdXAoY29uc3QgU3RyaW5nJiBtYW5pZmVzdFVSTCkK
ICAgICBTUUxpdGVUcmFuc2FjdGlvbkluUHJvZ3Jlc3NBdXRvQ291bnRlciB0cmFuc2FjdGlvbkNv
dW50ZXI7CiAKICAgICBTUUxpdGVUcmFuc2FjdGlvbiBkZWxldGVUcmFuc2FjdGlvbihtX2RhdGFi
YXNlKTsKKwogICAgIC8vIENoZWNrIHRvIHNlZSBpZiB0aGUgZ3JvdXAgaXMgaW4gbWVtb3J5Lgot
ICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAgPSBtX2NhY2hlc0luTWVtb3J5LmdldCht
YW5pZmVzdFVSTCk7CisgICAgYXV0byogZ3JvdXAgPSBtX2NhY2hlc0luTWVtb3J5LmdldChtYW5p
ZmVzdFVSTCk7CiAgICAgaWYgKGdyb3VwKQotICAgICAgICBjYWNoZUdyb3VwTWFkZU9ic29sZXRl
KGdyb3VwKTsKKyAgICAgICAgY2FjaGVHcm91cE1hZGVPYnNvbGV0ZSgqZ3JvdXApOwogICAgIGVs
c2UgewogICAgICAgICAvLyBUaGUgY2FjaGUgZ3JvdXAgaXMgbm90IGluIG1lbW9yeSwgc28gcmVt
b3ZlIGl0IGZyb20gdGhlIGRpc2suCiAgICAgICAgIG9wZW5EYXRhYmFzZShmYWxzZSk7CkBAIC0x
NDI0LDkgKzE0MjAsOSBAQCBib29sIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpkZWxldGVDYWNo
ZUdyb3VwKGNvbnN0IFN0cmluZyYgbWFuaWZlc3RVUkwpCiAgICAgfQogCiAgICAgZGVsZXRlVHJh
bnNhY3Rpb24uY29tbWl0KCk7Ci0gICAgCisKICAgICBjaGVja0ZvckRlbGV0ZWRSZXNvdXJjZXMo
KTsKLSAgICAKKwogICAgIHJldHVybiB0cnVlOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UuaCBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5oCmluZGV4IGU0
OGU4NjY3MzUzNjJkOTQ3N2E4YTI1MTAwM2NjODYxNTA1MjdkMTYuLjlmYTI5MmVlNTBmYWVlODlj
MzVjODYxYThmOTlmYTE2ZjkwNTQ3NmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5oCkBAIC0xLDUgKzEsNSBA
QAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCwgMjAxMCwgMjAxMSBBcHBsZSBJbmMuIEFsbCBS
aWdodHMgUmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxNyBBcHBsZSBJbmMuIEFs
bCBSaWdodHMgUmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTQx
LDcgKzQxLDcgQEAgY2xhc3MgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOwogY2xhc3MgVVJMOwog
Y2xhc3MgU2VjdXJpdHlPcmlnaW47CiBjbGFzcyBTaGFyZWRCdWZmZXI7Ci10ZW1wbGF0ZSA8Y2xh
c3MgVD4gY2xhc3MgU3RvcmFnZUlESm91cm5hbDsKK3RlbXBsYXRlPHR5cGVuYW1lPiBjbGFzcyBT
dG9yYWdlSURKb3VybmFsOwogCiBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZSA6IHB1Ymxp
YyBSZWZDb3VudGVkPEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlPiB7CiBwdWJsaWM6CkBAIC03Mywx
OSArNzMsMTkgQEAgcHVibGljOgogCiAgICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBmaW5kT3JD
cmVhdGVDYWNoZUdyb3VwKGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwpOwogICAgIEFwcGxpY2F0aW9u
Q2FjaGVHcm91cCogZmluZEluTWVtb3J5Q2FjaGVHcm91cChjb25zdCBVUkwmIG1hbmlmZXN0VVJM
KSBjb25zdDsKLSAgICB2b2lkIGNhY2hlR3JvdXBEZXN0cm95ZWQoQXBwbGljYXRpb25DYWNoZUdy
b3VwKik7Ci0gICAgdm9pZCBjYWNoZUdyb3VwTWFkZU9ic29sZXRlKEFwcGxpY2F0aW9uQ2FjaGVH
cm91cCopOwotICAgICAgICAKLSAgICBib29sIHN0b3JlTmV3ZXN0Q2FjaGUoQXBwbGljYXRpb25D
YWNoZUdyb3VwKiwgQXBwbGljYXRpb25DYWNoZSogb2xkQ2FjaGUsIEZhaWx1cmVSZWFzb24mIGZh
aWx1cmVSZWFzb24pOwotICAgIGJvb2wgc3RvcmVOZXdlc3RDYWNoZShBcHBsaWNhdGlvbkNhY2hl
R3JvdXAqKTsgLy8gVXBkYXRlcyB0aGUgY2FjaGUgZ3JvdXAsIGJ1dCBkb2Vzbid0IHJlbW92ZSBv
bGQgY2FjaGUuCisgICAgdm9pZCBjYWNoZUdyb3VwRGVzdHJveWVkKEFwcGxpY2F0aW9uQ2FjaGVH
cm91cCYpOworICAgIHZvaWQgY2FjaGVHcm91cE1hZGVPYnNvbGV0ZShBcHBsaWNhdGlvbkNhY2hl
R3JvdXAmKTsKKworICAgIGJvb2wgc3RvcmVOZXdlc3RDYWNoZShBcHBsaWNhdGlvbkNhY2hlR3Jv
dXAmLCBBcHBsaWNhdGlvbkNhY2hlKiBvbGRDYWNoZSwgRmFpbHVyZVJlYXNvbiYpOworICAgIGJv
b2wgc3RvcmVOZXdlc3RDYWNoZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAmKTsgLy8gVXBkYXRlcyB0
aGUgY2FjaGUgZ3JvdXAsIGJ1dCBkb2Vzbid0IHJlbW92ZSBvbGQgY2FjaGUuCiAgICAgYm9vbCBz
dG9yZShBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqLCBBcHBsaWNhdGlvbkNhY2hlKik7CiAgICAg
Ym9vbCBzdG9yZVVwZGF0ZWRUeXBlKEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSosIEFwcGxpY2F0
aW9uQ2FjaGUqKTsKIAogICAgIC8vIFJlbW92ZXMgdGhlIGdyb3VwIGlmIHRoZSBjYWNoZSB0byBi
ZSByZW1vdmVkIGlzIHRoZSBuZXdlc3Qgb25lIChzbywgc3RvcmVOZXdlc3RDYWNoZSgpIG5lZWRz
IHRvIGJlIGNhbGxlZCBiZWZvcmVoYW5kIHdoZW4gdXBkYXRpbmcpLgogICAgIHZvaWQgcmVtb3Zl
KEFwcGxpY2F0aW9uQ2FjaGUqKTsKLSAgICAKKwogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgZW1w
dHkoKTsKLSAgICAKKwogICAgIGJvb2wgZ2V0TWFuaWZlc3RVUkxzKFZlY3RvcjxVUkw+KiB1cmxz
KTsKICAgICBib29sIGNhY2hlR3JvdXBTaXplKGNvbnN0IFN0cmluZyYgbWFuaWZlc3RVUkwsIGlu
dDY0X3QqIHNpemUpOwogICAgIGJvb2wgZGVsZXRlQ2FjaGVHcm91cChjb25zdCBTdHJpbmcmIG1h
bmlmZXN0VVJMKTsKQEAgLTEwNSwxNCArMTA1LDE1IEBAIHB1YmxpYzoKIAogICAgIHN0YXRpYyBp
bnQ2NF90IHVua25vd25RdW90YSgpIHsgcmV0dXJuIC0xOyB9CiAgICAgc3RhdGljIGludDY0X3Qg
bm9RdW90YSgpIHsgcmV0dXJuIHN0ZDo6bnVtZXJpY19saW1pdHM8aW50NjRfdD46Om1heCgpOyB9
CisKIHByaXZhdGU6CiAgICAgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoY29uc3QgU3RyaW5nJiBj
YWNoZURpcmVjdG9yeSwgY29uc3QgU3RyaW5nJiBmbGF0RmlsZVN1YmRpcmVjdG9yeU5hbWUpOwog
Ci0gICAgUGFzc1JlZlB0cjxBcHBsaWNhdGlvbkNhY2hlPiBsb2FkQ2FjaGUodW5zaWduZWQgc3Rv
cmFnZUlEKTsKKyAgICBSZWZQdHI8QXBwbGljYXRpb25DYWNoZT4gbG9hZENhY2hlKHVuc2lnbmVk
IHN0b3JhZ2VJRCk7CiAgICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBsb2FkQ2FjaGVHcm91cChj
b25zdCBVUkwmIG1hbmlmZXN0VVJMKTsKICAgICAKLSAgICB0eXBlZGVmIFN0b3JhZ2VJREpvdXJu
YWw8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiBSZXNvdXJjZVN0b3JhZ2VJREpvdXJuYWw7Ci0g
ICAgdHlwZWRlZiBTdG9yYWdlSURKb3VybmFsPEFwcGxpY2F0aW9uQ2FjaGVHcm91cD4gR3JvdXBT
dG9yYWdlSURKb3VybmFsOworICAgIHVzaW5nIFJlc291cmNlU3RvcmFnZUlESm91cm5hbCA9IFN0
b3JhZ2VJREpvdXJuYWw8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPjsKKyAgICB1c2luZyBHcm91
cFN0b3JhZ2VJREpvdXJuYWwgPSBTdG9yYWdlSURKb3VybmFsPEFwcGxpY2F0aW9uQ2FjaGVHcm91
cD47CiAKICAgICBib29sIHN0b3JlKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCosIEdyb3VwU3RvcmFn
ZUlESm91cm5hbCopOwogICAgIGJvb2wgc3RvcmUoQXBwbGljYXRpb25DYWNoZSosIFJlc291cmNl
U3RvcmFnZUlESm91cm5hbCopOwpAQCAtMTUyLDggKzE1Myw3IEBAIHByaXZhdGU6CiAgICAgLy8g
d2Uga2VlcCBhIGhhc2ggc2V0IG9mIHRoZSBob3N0cyBvZiB0aGUgbWFuaWZlc3QgVVJMcyBvZiBh
bGwgbm9uLW9ic29sZXRlIGNhY2hlIGdyb3Vwcy4KICAgICBIYXNoQ291bnRlZFNldDx1bnNpZ25l
ZCwgQWxyZWFkeUhhc2hlZD4gbV9jYWNoZUhvc3RTZXQ7CiAgICAgCi0gICAgdHlwZWRlZiBIYXNo
TWFwPFN0cmluZywgQXBwbGljYXRpb25DYWNoZUdyb3VwKj4gQ2FjaGVHcm91cE1hcDsKLSAgICBD
YWNoZUdyb3VwTWFwIG1fY2FjaGVzSW5NZW1vcnk7IC8vIEV4Y2x1ZGVzIG9ic29sZXRlIGNhY2hl
IGdyb3Vwcy4KKyAgICBIYXNoTWFwPFN0cmluZywgQXBwbGljYXRpb25DYWNoZUdyb3VwKj4gbV9j
YWNoZXNJbk1lbW9yeTsgLy8gRXhjbHVkZXMgb2Jzb2xldGUgY2FjaGUgZ3JvdXBzLgogCiAgICAg
ZnJpZW5kIGNsYXNzIFdURjo6TmV2ZXJEZXN0cm95ZWQ8QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U+
OwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9ET01BcHBs
aWNhdGlvbkNhY2hlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9ET01BcHBs
aWNhdGlvbkNhY2hlLmNwcAppbmRleCA0ZDBlZWYyMjRjMGFiZDE4OTE1YjM2M2UxNTFlMDAwNDVk
MDk4OTFjLi5lZDhmYWQ4ZjY5NjEwYTczZWY1ZGYxYTc3ZTM3Y2VmMmVhNDQ1ZjAxIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25DYWNoZS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0RPTUFwcGxpY2F0aW9uQ2Fj
aGUuY3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCwgMjAwOSBB
cHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAx
NyBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKQEAgLTI5LDExMSArMjksODQgQEAKICNpbmNsdWRlICJBcHBsaWNhdGlvbkNhY2hl
SG9zdC5oIgogI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnRMb2FkZXIu
aCIKLSNpbmNsdWRlICJFdmVudC5oIgotI2luY2x1ZGUgIkV2ZW50TGlzdGVuZXIuaCIKLSNpbmNs
dWRlICJFdmVudE5hbWVzLmgiCiAjaW5jbHVkZSAiRXhjZXB0aW9uQ29kZS5oIgogI2luY2x1ZGUg
IkZyYW1lLmgiCi0jaW5jbHVkZSAiRnJhbWVMb2FkZXIuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUg
ewogCi1ET01BcHBsaWNhdGlvbkNhY2hlOjpET01BcHBsaWNhdGlvbkNhY2hlKEZyYW1lKiBmcmFt
ZSkKLSAgICA6IERPTVdpbmRvd1Byb3BlcnR5KGZyYW1lKQorRE9NQXBwbGljYXRpb25DYWNoZTo6
RE9NQXBwbGljYXRpb25DYWNoZShGcmFtZSYgZnJhbWUpCisgICAgOiBET01XaW5kb3dQcm9wZXJ0
eSgmZnJhbWUpCiB7Ci0gICAgQXBwbGljYXRpb25DYWNoZUhvc3QqIGNhY2hlSG9zdCA9IGFwcGxp
Y2F0aW9uQ2FjaGVIb3N0KCk7Ci0gICAgaWYgKGNhY2hlSG9zdCkKLSAgICAgICAgY2FjaGVIb3N0
LT5zZXRET01BcHBsaWNhdGlvbkNhY2hlKHRoaXMpOworICAgIGlmIChhdXRvKiBob3N0ID0gYXBw
bGljYXRpb25DYWNoZUhvc3QoKSkKKyAgICAgICAgaG9zdC0+c2V0RE9NQXBwbGljYXRpb25DYWNo
ZSh0aGlzKTsKIH0KIAogdm9pZCBET01BcHBsaWNhdGlvbkNhY2hlOjpkaXNjb25uZWN0RnJhbWVG
b3JEb2N1bWVudFN1c3BlbnNpb24oKQogewotICAgIGlmIChBcHBsaWNhdGlvbkNhY2hlSG9zdCog
Y2FjaGVIb3N0ID0gYXBwbGljYXRpb25DYWNoZUhvc3QoKSkKLSAgICAgICAgY2FjaGVIb3N0LT5z
ZXRET01BcHBsaWNhdGlvbkNhY2hlKG51bGxwdHIpOworICAgIGlmIChhdXRvKiBob3N0ID0gYXBw
bGljYXRpb25DYWNoZUhvc3QoKSkKKyAgICAgICAgaG9zdC0+c2V0RE9NQXBwbGljYXRpb25DYWNo
ZShudWxscHRyKTsKICAgICBET01XaW5kb3dQcm9wZXJ0eTo6ZGlzY29ubmVjdEZyYW1lRm9yRG9j
dW1lbnRTdXNwZW5zaW9uKCk7CiB9CiAKIHZvaWQgRE9NQXBwbGljYXRpb25DYWNoZTo6cmVjb25u
ZWN0RnJhbWVGcm9tRG9jdW1lbnRTdXNwZW5zaW9uKEZyYW1lKiBmcmFtZSkKIHsKICAgICBET01X
aW5kb3dQcm9wZXJ0eTo6cmVjb25uZWN0RnJhbWVGcm9tRG9jdW1lbnRTdXNwZW5zaW9uKGZyYW1l
KTsKLSAgICBpZiAoQXBwbGljYXRpb25DYWNoZUhvc3QqIGNhY2hlSG9zdCA9IGFwcGxpY2F0aW9u
Q2FjaGVIb3N0KCkpCi0gICAgICAgIGNhY2hlSG9zdC0+c2V0RE9NQXBwbGljYXRpb25DYWNoZSh0
aGlzKTsKKyAgICBpZiAoYXV0byogaG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkpCisgICAg
ICAgIGhvc3QtPnNldERPTUFwcGxpY2F0aW9uQ2FjaGUodGhpcyk7CiB9CiAKIHZvaWQgRE9NQXBw
bGljYXRpb25DYWNoZTo6d2lsbERlc3Ryb3lHbG9iYWxPYmplY3RJbkZyYW1lKCkKIHsKLSAgICBp
ZiAoQXBwbGljYXRpb25DYWNoZUhvc3QqIGNhY2hlSG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCkpCi0gICAgICAgIGNhY2hlSG9zdC0+c2V0RE9NQXBwbGljYXRpb25DYWNoZShudWxscHRyKTsK
KyAgICBpZiAoYXV0byogaG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkpCisgICAgICAgIGhv
c3QtPnNldERPTUFwcGxpY2F0aW9uQ2FjaGUobnVsbHB0cik7CiAgICAgRE9NV2luZG93UHJvcGVy
dHk6OndpbGxEZXN0cm95R2xvYmFsT2JqZWN0SW5GcmFtZSgpOwogfQogCiBBcHBsaWNhdGlvbkNh
Y2hlSG9zdCogRE9NQXBwbGljYXRpb25DYWNoZTo6YXBwbGljYXRpb25DYWNoZUhvc3QoKSBjb25z
dAogewotICAgIGlmICghbV9mcmFtZSB8fCAhbV9mcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2Fk
ZXIoKSkKKyAgICBpZiAoIW1fZnJhbWUpCiAgICAgICAgIHJldHVybiBudWxscHRyOwotICAgIHJl
dHVybiBtX2ZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hl
SG9zdCgpOworICAgIGF1dG8qIGRvY3VtZW50TG9hZGVyID0gbV9mcmFtZS0+bG9hZGVyKCkuZG9j
dW1lbnRMb2FkZXIoKTsKKyAgICBpZiAoIWRvY3VtZW50TG9hZGVyKQorICAgICAgICByZXR1cm4g
bnVsbHB0cjsKKyAgICByZXR1cm4gJmRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9z
dCgpOwogfQogCiB1bnNpZ25lZCBzaG9ydCBET01BcHBsaWNhdGlvbkNhY2hlOjpzdGF0dXMoKSBj
b25zdAogewotICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0KiBjYWNoZUhvc3QgPSBhcHBsaWNhdGlv
bkNhY2hlSG9zdCgpOwotICAgIGlmICghY2FjaGVIb3N0KQorICAgIGF1dG8qIGhvc3QgPSBhcHBs
aWNhdGlvbkNhY2hlSG9zdCgpOworICAgIGlmICghaG9zdCkKICAgICAgICAgcmV0dXJuIEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0OjpVTkNBQ0hFRDsKLSAgICByZXR1cm4gY2FjaGVIb3N0LT5zdGF0dXMo
KTsKKyAgICByZXR1cm4gaG9zdC0+c3RhdHVzKCk7CiB9CiAKIEV4Y2VwdGlvbk9yPHZvaWQ+IERP
TUFwcGxpY2F0aW9uQ2FjaGU6OnVwZGF0ZSgpCiB7Ci0gICAgYXV0byogY2FjaGVIb3N0ID0gYXBw
bGljYXRpb25DYWNoZUhvc3QoKTsKLSAgICBpZiAoIWNhY2hlSG9zdCB8fCAhY2FjaGVIb3N0LT51
cGRhdGUoKSkKKyAgICBhdXRvKiBob3N0ID0gYXBwbGljYXRpb25DYWNoZUhvc3QoKTsKKyAgICBp
ZiAoIWhvc3QgfHwgIWhvc3QtPnVwZGF0ZSgpKQogICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsg
SU5WQUxJRF9TVEFURV9FUlIgfTsKICAgICByZXR1cm4geyB9OwogfQogCiBFeGNlcHRpb25Pcjx2
b2lkPiBET01BcHBsaWNhdGlvbkNhY2hlOjpzd2FwQ2FjaGUoKQogewotICAgIGF1dG8qIGNhY2hl
SG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7Ci0gICAgaWYgKCFjYWNoZUhvc3QgfHwgIWNh
Y2hlSG9zdC0+c3dhcENhY2hlKCkpCisgICAgYXV0byogaG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVI
b3N0KCk7CisgICAgaWYgKCFob3N0IHx8ICFob3N0LT5zd2FwQ2FjaGUoKSkKICAgICAgICAgcmV0
dXJuIEV4Y2VwdGlvbiB7IElOVkFMSURfU1RBVEVfRVJSIH07CiAgICAgcmV0dXJuIHsgfTsKIH0K
IAogdm9pZCBET01BcHBsaWNhdGlvbkNhY2hlOjphYm9ydCgpCiB7Ci0gICAgQXBwbGljYXRpb25D
YWNoZUhvc3QqIGNhY2hlSG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7Ci0gICAgaWYgKGNh
Y2hlSG9zdCkKLSAgICAgICAgY2FjaGVIb3N0LT5hYm9ydCgpOworICAgIGlmIChhdXRvKiBob3N0
ID0gYXBwbGljYXRpb25DYWNoZUhvc3QoKSkKKyAgICAgICAgaG9zdC0+YWJvcnQoKTsKIH0KIAog
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCogRE9NQXBwbGljYXRpb25DYWNoZTo6c2NyaXB0RXhlY3V0
aW9uQ29udGV4dCgpIGNvbnN0CiB7Ci0gICAgaWYgKG1fZnJhbWUpCi0gICAgICAgIHJldHVybiBt
X2ZyYW1lLT5kb2N1bWVudCgpOwotICAgIHJldHVybiBudWxscHRyOwotfQotCi1jb25zdCBBdG9t
aWNTdHJpbmcmIERPTUFwcGxpY2F0aW9uQ2FjaGU6OnRvRXZlbnRUeXBlKEFwcGxpY2F0aW9uQ2Fj
aGVIb3N0OjpFdmVudElEIGlkKQotewotICAgIHN3aXRjaCAoaWQpIHsKLSAgICBjYXNlIEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0OjpDSEVDS0lOR19FVkVOVDoKLSAgICAgICAgcmV0dXJuIGV2ZW50TmFt
ZXMoKS5jaGVja2luZ0V2ZW50OwotICAgIGNhc2UgQXBwbGljYXRpb25DYWNoZUhvc3Q6OkVSUk9S
X0VWRU5UOgotICAgICAgICByZXR1cm4gZXZlbnROYW1lcygpLmVycm9yRXZlbnQ7Ci0gICAgY2Fz
ZSBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Tk9VUERBVEVfRVZFTlQ6Ci0gICAgICAgIHJldHVybiBl
dmVudE5hbWVzKCkubm91cGRhdGVFdmVudDsKLSAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVIb3N0
OjpET1dOTE9BRElOR19FVkVOVDoKLSAgICAgICAgcmV0dXJuIGV2ZW50TmFtZXMoKS5kb3dubG9h
ZGluZ0V2ZW50OwotICAgIGNhc2UgQXBwbGljYXRpb25DYWNoZUhvc3Q6OlBST0dSRVNTX0VWRU5U
OgotICAgICAgICByZXR1cm4gZXZlbnROYW1lcygpLnByb2dyZXNzRXZlbnQ7Ci0gICAgY2FzZSBB
cHBsaWNhdGlvbkNhY2hlSG9zdDo6VVBEQVRFUkVBRFlfRVZFTlQ6Ci0gICAgICAgIHJldHVybiBl
dmVudE5hbWVzKCkudXBkYXRlcmVhZHlFdmVudDsKLSAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVI
b3N0OjpDQUNIRURfRVZFTlQ6Ci0gICAgICAgIHJldHVybiBldmVudE5hbWVzKCkuY2FjaGVkRXZl
bnQ7Ci0gICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6T0JTT0xFVEVfRVZFTlQ6ICAgICAg
ICAgICAgCi0gICAgICAgIHJldHVybiBldmVudE5hbWVzKCkub2Jzb2xldGVFdmVudDsKLSAgICB9
Ci0gICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgcmV0dXJuIGV2ZW50TmFtZXMoKS5lcnJv
ckV2ZW50OworICAgIGlmICghbV9mcmFtZSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAg
cmV0dXJuIG1fZnJhbWUtPmRvY3VtZW50KCk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9ET01BcHBsaWNhdGlv
bkNhY2hlLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25D
YWNoZS5oCmluZGV4IDNmMjBkOGMyYjc1MTk3MzJmYWExZjdkMGVlMGY5MDRhOTc4NTAxOWQuLmNm
NmQyYTlkOTlmNzA2OGMwNmNjMmY0YTI3MTExZTJkY2RjMWU2NzUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9ET01BcHBsaWNhdGlvbkNhY2hlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0RPTUFwcGxpY2F0aW9uQ2FjaGUuaApAQCAtMSw1
ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDgsIDIwMDkgQXBwbGUgSW5jLiBBbGwg
UmlnaHRzIFJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBB
bGwgUmlnaHRzIFJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0y
NSw0NiArMjUsMzkgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpbmNsdWRlICJBcHBsaWNhdGlvbkNh
Y2hlSG9zdC5oIgogI2luY2x1ZGUgIkRPTVdpbmRvd1Byb3BlcnR5LmgiCiAjaW5jbHVkZSAiRXZl
bnRUYXJnZXQuaCIKLSNpbmNsdWRlICJFeGNlcHRpb25Pci5oIgotI2luY2x1ZGUgIlNjcmlwdFdy
YXBwYWJsZS5oIgotI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQv
QXRvbWljU3RyaW5nSGFzaC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2NsYXNzIEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0OwogY2xhc3MgRnJhbWU7Ci1jbGFzcyBVUkw7CiAKIGNsYXNzIERPTUFw
cGxpY2F0aW9uQ2FjaGUgZmluYWwgOiBwdWJsaWMgUmVmQ291bnRlZDxET01BcHBsaWNhdGlvbkNh
Y2hlPiwgcHVibGljIEV2ZW50VGFyZ2V0V2l0aElubGluZURhdGEsIHB1YmxpYyBET01XaW5kb3dQ
cm9wZXJ0eSB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFJlZjxET01BcHBsaWNhdGlvbkNhY2hlPiBj
cmVhdGUoRnJhbWUqIGZyYW1lKSB7IHJldHVybiBhZG9wdFJlZigqbmV3IERPTUFwcGxpY2F0aW9u
Q2FjaGUoZnJhbWUpKTsgfQorICAgIHN0YXRpYyBSZWY8RE9NQXBwbGljYXRpb25DYWNoZT4gY3Jl
YXRlKEZyYW1lJiBmcmFtZSkgeyByZXR1cm4gYWRvcHRSZWYoKm5ldyBET01BcHBsaWNhdGlvbkNh
Y2hlKGZyYW1lKSk7IH0KICAgICB2aXJ0dWFsIH5ET01BcHBsaWNhdGlvbkNhY2hlKCkgeyBBU1NF
UlQoIW1fZnJhbWUpOyB9CiAKLSAgICB2b2lkIGRpc2Nvbm5lY3RGcmFtZUZvckRvY3VtZW50U3Vz
cGVuc2lvbigpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVjb25uZWN0RnJhbWVGcm9tRG9jdW1lbnRT
dXNwZW5zaW9uKEZyYW1lKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCB3aWxsRGVzdHJveUdsb2JhbE9i
amVjdEluRnJhbWUoKSBvdmVycmlkZTsKLQogICAgIHVuc2lnbmVkIHNob3J0IHN0YXR1cygpIGNv
bnN0OwogICAgIEV4Y2VwdGlvbk9yPHZvaWQ+IHVwZGF0ZSgpOwogICAgIEV4Y2VwdGlvbk9yPHZv
aWQ+IHN3YXBDYWNoZSgpOwogICAgIHZvaWQgYWJvcnQoKTsKIAotICAgIHVzaW5nIFJlZkNvdW50
ZWQ8RE9NQXBwbGljYXRpb25DYWNoZT46OnJlZjsKLSAgICB1c2luZyBSZWZDb3VudGVkPERPTUFw
cGxpY2F0aW9uQ2FjaGU+OjpkZXJlZjsKKyAgICB1c2luZyBSZWZDb3VudGVkOjpyZWY7CisgICAg
dXNpbmcgUmVmQ291bnRlZDo6ZGVyZWY7CiAKLSAgICBFdmVudFRhcmdldEludGVyZmFjZSBldmVu
dFRhcmdldEludGVyZmFjZSgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIERPTUFwcGxpY2F0aW9u
Q2FjaGVFdmVudFRhcmdldEludGVyZmFjZVR5cGU7IH0KLSAgICBTY3JpcHRFeGVjdXRpb25Db250
ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29uc3Qgb3ZlcnJpZGU7Citwcml2YXRlOgor
ICAgIGV4cGxpY2l0IERPTUFwcGxpY2F0aW9uQ2FjaGUoRnJhbWUmKTsKIAotICAgIHN0YXRpYyBj
b25zdCBBdG9taWNTdHJpbmcmIHRvRXZlbnRUeXBlKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFdmVu
dElEIGlkKTsKKyAgICB2b2lkIHJlZkV2ZW50VGFyZ2V0KCkgZmluYWwgeyByZWYoKTsgfQorICAg
IHZvaWQgZGVyZWZFdmVudFRhcmdldCgpIGZpbmFsIHsgZGVyZWYoKTsgfQogCi1wcml2YXRlOgot
ICAgIGV4cGxpY2l0IERPTUFwcGxpY2F0aW9uQ2FjaGUoRnJhbWUqKTsKKyAgICBFdmVudFRhcmdl
dEludGVyZmFjZSBldmVudFRhcmdldEludGVyZmFjZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIERP
TUFwcGxpY2F0aW9uQ2FjaGVFdmVudFRhcmdldEludGVyZmFjZVR5cGU7IH0KKyAgICBTY3JpcHRF
eGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29uc3QgZmluYWw7CiAK
LSAgICB2b2lkIHJlZkV2ZW50VGFyZ2V0KCkgb3ZlcnJpZGUgeyByZWYoKTsgfQotICAgIHZvaWQg
ZGVyZWZFdmVudFRhcmdldCgpIG92ZXJyaWRlIHsgZGVyZWYoKTsgfQorICAgIHZvaWQgZGlzY29u
bmVjdEZyYW1lRm9yRG9jdW1lbnRTdXNwZW5zaW9uKCkgZmluYWw7CisgICAgdm9pZCByZWNvbm5l
Y3RGcmFtZUZyb21Eb2N1bWVudFN1c3BlbnNpb24oRnJhbWUqKSBmaW5hbDsKKyAgICB2b2lkIHdp
bGxEZXN0cm95R2xvYmFsT2JqZWN0SW5GcmFtZSgpIGZpbmFsOwogCiAgICAgQXBwbGljYXRpb25D
YWNoZUhvc3QqIGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkgY29uc3Q7CiB9OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL01hbmlmZXN0UGFyc2VyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9NYW5pZmVzdFBhcnNlci5jcHAKaW5kZXggNjAxMTQx
ZDZmZjY2NDY1NTQ2YjgxYzI0YTBmYThiOWI5MWRjNGM5NS4uNWMxNTEzNTlkZTk4M2E4MWE3NTYw
NTNiYmVjZGNmYjg5YjQ1ODI2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Fw
cGNhY2hlL01hbmlmZXN0UGFyc2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBw
Y2FjaGUvTWFuaWZlc3RQYXJzZXIuY3BwCkBAIC0xMTksOCArMTE5LDcgQEAgYm9vbCBwYXJzZU1h
bmlmZXN0KGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwsIGNvbnN0IGNoYXIqIGRhdGEsIGludCBsZW5n
dGgsIE1hbmlmZXMKICAgICAgICAgICAgIGlmICghdXJsLmlzVmFsaWQoKSkKICAgICAgICAgICAg
ICAgICBjb250aW51ZTsKIAotICAgICAgICAgICAgaWYgKHVybC5oYXNGcmFnbWVudElkZW50aWZp
ZXIoKSkKLSAgICAgICAgICAgICAgICB1cmwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7Cisg
ICAgICAgICAgICB1cmwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CiAgICAgICAgICAgICAK
ICAgICAgICAgICAgIGlmICghZXF1YWxJZ25vcmluZ0FTQ0lJQ2FzZSh1cmwucHJvdG9jb2woKSwg
bWFuaWZlc3RVUkwucHJvdG9jb2woKSkpCiAgICAgICAgICAgICAgICAgY29udGludWU7CkBAIC0x
NTAsOCArMTQ5LDcgQEAgYm9vbCBwYXJzZU1hbmlmZXN0KGNvbnN0IFVSTCYgbWFuaWZlc3RVUkws
IGNvbnN0IGNoYXIqIGRhdGEsIGludCBsZW5ndGgsIE1hbmlmZXMKICAgICAgICAgICAgIFVSTCBu
YW1lc3BhY2VVUkwobWFuaWZlc3RVUkwsIGxpbmUuc3Vic3RyaW5nKDAsIHAgLSB1cGNvbnZlcnRl
ZExpbmVDaGFyYWN0ZXJzKSk7CiAgICAgICAgICAgICBpZiAoIW5hbWVzcGFjZVVSTC5pc1ZhbGlk
KCkpCiAgICAgICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgICAgICBpZiAobmFtZXNwYWNl
VVJMLmhhc0ZyYWdtZW50SWRlbnRpZmllcigpKQotICAgICAgICAgICAgICAgIG5hbWVzcGFjZVVS
TC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKKyAgICAgICAgICAgIG5hbWVzcGFjZVVSTC5y
ZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKIAogICAgICAgICAgICAgaWYgKCFwcm90b2NvbEhv
c3RBbmRQb3J0QXJlRXF1YWwobWFuaWZlc3RVUkwsIG5hbWVzcGFjZVVSTCkpCiAgICAgICAgICAg
ICAgICAgY29udGludWU7CkBAIC0xNjgsOCArMTY2LDcgQEAgYm9vbCBwYXJzZU1hbmlmZXN0KGNv
bnN0IFVSTCYgbWFuaWZlc3RVUkwsIGNvbnN0IGNoYXIqIGRhdGEsIGludCBsZW5ndGgsIE1hbmlm
ZXMKICAgICAgICAgICAgIFVSTCBmYWxsYmFja1VSTChtYW5pZmVzdFVSTCwgU3RyaW5nKGZhbGxi
YWNrU3RhcnQsIHAgLSBmYWxsYmFja1N0YXJ0KSk7CiAgICAgICAgICAgICBpZiAoIWZhbGxiYWNr
VVJMLmlzVmFsaWQoKSkKICAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAgIGlm
IChmYWxsYmFja1VSTC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSkKLSAgICAgICAgICAgICAgICBm
YWxsYmFja1VSTC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKKyAgICAgICAgICAgIGZhbGxi
YWNrVVJMLnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpOwogCiAgICAgICAgICAgICBpZiAoIXBy
b3RvY29sSG9zdEFuZFBvcnRBcmVFcXVhbChtYW5pZmVzdFVSTCwgZmFsbGJhY2tVUkwpKQogICAg
ICAgICAgICAgICAgIGNvbnRpbnVlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2FwcGNhY2hlL01hbmlmZXN0UGFyc2VyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2Fj
aGUvTWFuaWZlc3RQYXJzZXIuaAppbmRleCA2NjEyYzAwZjc5NTE3ZDg2ZGFjZTQzOTcxYjM1Zjdi
MGExNmZhNjc1Li5iMjgyNDllYmU0N2Y1ZDY2ZDJlMjE0NjM5NzMxMDZmMTBjYzJiZjU2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvTWFuaWZlc3RQYXJzZXIuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvTWFuaWZlc3RQYXJzZXIuaApAQCAt
MjYsMTggKzI2LDE5IEBACiAjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgIkFwcGxpY2F0aW9uQ2Fj
aGUuaCIKKyNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
LSAgICBjbGFzcyBVUkw7CitjbGFzcyBVUkw7CiAKLSAgICBzdHJ1Y3QgTWFuaWZlc3QgewotICAg
ICAgICBWZWN0b3I8VVJMPiBvbmxpbmVXaGl0ZWxpc3RlZFVSTHM7Ci0gICAgICAgIEhhc2hTZXQ8
U3RyaW5nPiBleHBsaWNpdFVSTHM7Ci0gICAgICAgIEZhbGxiYWNrVVJMVmVjdG9yIGZhbGxiYWNr
VVJMczsKLSAgICAgICAgYm9vbCBhbGxvd0FsbE5ldHdvcmtSZXF1ZXN0czsgLy8gV2lsZGNhcmQg
Zm91bmQgaW4gTkVUV09SSyBzZWN0aW9uLgotICAgIH07CitzdHJ1Y3QgTWFuaWZlc3QgeworICAg
IFZlY3RvcjxVUkw+IG9ubGluZVdoaXRlbGlzdGVkVVJMczsKKyAgICBIYXNoU2V0PFN0cmluZz4g
ZXhwbGljaXRVUkxzOworICAgIEZhbGxiYWNrVVJMVmVjdG9yIGZhbGxiYWNrVVJMczsKKyAgICBi
b29sIGFsbG93QWxsTmV0d29ya1JlcXVlc3RzOyAvLyBXaWxkY2FyZCBmb3VuZCBpbiBORVRXT1JL
IHNlY3Rpb24uCit9OwogCi0gICAgYm9vbCBwYXJzZU1hbmlmZXN0KGNvbnN0IFVSTCYgbWFuaWZl
c3RVUkwsIGNvbnN0IGNoYXIqIGRhdGEsIGludCBsZW5ndGgsIE1hbmlmZXN0Jik7Citib29sIHBh
cnNlTWFuaWZlc3QoY29uc3QgVVJMJiBtYW5pZmVzdFVSTCwgY29uc3QgY2hhciogZGF0YSwgaW50
IGxlbmd0aCwgTWFuaWZlc3QmKTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmNwcAppbmRleCBlODlhNDk5ZGY0MDQ0NmMzMjYw
YmJmZjFiMjhkZTBkOWFkOTc3YTBlLi41ZTA1YmUyMmM3ZDRlYTdmMTIyYmE0MTE3ODY5M2YyNWVk
MmUwZWRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmNwcApAQCAt
MSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDggQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0zNywx
NyArMzcsMTcgQEAgQXJjaGl2ZTo6fkFyY2hpdmUoKQogCiB2b2lkIEFyY2hpdmU6OmNsZWFyQWxs
U3ViZnJhbWVBcmNoaXZlcygpCiB7Ci0gICAgVmVjdG9yPFJlZlB0cjxBcmNoaXZlPj4gY2xlYXJl
ZEFyY2hpdmVzOwotICAgIGNsZWFyQWxsU3ViZnJhbWVBcmNoaXZlc0ltcGwoJmNsZWFyZWRBcmNo
aXZlcyk7CisgICAgSGFzaFNldDxBcmNoaXZlKj4gY2xlYXJlZEFyY2hpdmVzOworICAgIGNsZWFy
ZWRBcmNoaXZlcy5hZGQodGhpcyk7CisgICAgY2xlYXJBbGxTdWJmcmFtZUFyY2hpdmVzKGNsZWFy
ZWRBcmNoaXZlcyk7CiB9CiAKLXZvaWQgQXJjaGl2ZTo6Y2xlYXJBbGxTdWJmcmFtZUFyY2hpdmVz
SW1wbChWZWN0b3I8UmVmUHRyPEFyY2hpdmU+PiogY2xlYXJlZEFyY2hpdmVzKQordm9pZCBBcmNo
aXZlOjpjbGVhckFsbFN1YmZyYW1lQXJjaGl2ZXMoSGFzaFNldDxBcmNoaXZlKj4mIGNsZWFyZWRB
cmNoaXZlcykKIHsKKyAgICBBU1NFUlQoY2xlYXJlZEFyY2hpdmVzLmNvbnRhaW5zKHRoaXMpKTsK
ICAgICBmb3IgKGF1dG8mIGFyY2hpdmUgOiBtX3N1YmZyYW1lQXJjaGl2ZXMpIHsKLSAgICAgICAg
aWYgKCFjbGVhcmVkQXJjaGl2ZXMtPmNvbnRhaW5zKGFyY2hpdmUpKSB7Ci0gICAgICAgICAgICBj
bGVhcmVkQXJjaGl2ZXMtPmFwcGVuZChhcmNoaXZlKTsKLSAgICAgICAgICAgIGFyY2hpdmUtPmNs
ZWFyQWxsU3ViZnJhbWVBcmNoaXZlc0ltcGwoY2xlYXJlZEFyY2hpdmVzKTsKLSAgICAgICAgfQor
ICAgICAgICBpZiAoY2xlYXJlZEFyY2hpdmVzLmFkZChhcmNoaXZlLnB0cigpKSkKKyAgICAgICAg
ICAgIGFyY2hpdmUtPmNsZWFyQWxsU3ViZnJhbWVBcmNoaXZlcyhjbGVhcmVkQXJjaGl2ZXMpOwog
ICAgIH0KICAgICBtX3N1YmZyYW1lQXJjaGl2ZXMuY2xlYXIoKTsKIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmUuaCBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9hcmNoaXZlL0FyY2hpdmUuaAppbmRleCBmMjA2NTQ5MzIyNDIzYTdmYjI0MDBkZTU4Yzlm
NGExOTIyZGRhZWU3Li5mZjc0Y2UyODMxYWE0ZDI3MzU0MmYxMmQ5OTM3ODI0NTE2MDJlM2M3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZS5oCkBAIC0xLDUgKzEsNSBAQAog
LyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTI5LDQxICsyOSwzOCBAQAog
I3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJBcmNoaXZlUmVzb3VyY2UuaCIKLQotI2luY2x1ZGUg
PHd0Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLSNpbmNsdWRl
IDx3dGYvUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorI2luY2x1ZGUgPHd0Zi9I
YXNoU2V0Lmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgQXJjaGl2ZSA6IHB1Ymxp
YyBSZWZDb3VudGVkPEFyY2hpdmU+IHsKIHB1YmxpYzoKLSAgICBlbnVtIFR5cGUgewotICAgICAg
V2ViQXJjaGl2ZSwKLSAgICAgIE1IVE1MCi0gICAgfTsKICAgICB2aXJ0dWFsIH5BcmNoaXZlKCk7
Ci0gICAgdmlydHVhbCBUeXBlIHR5cGUoKSBjb25zdCA9IDA7CisKKyAgICB2aXJ0dWFsIGJvb2wg
c2hvdWxkTG9hZEZyb21BcmNoaXZlT25seSgpIGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFsIGJvb2wg
c2hvdWxkT3ZlcnJpZGVCYXNlVVJMKCkgY29uc3QgPSAwOworICAgIHZpcnR1YWwgYm9vbCBzaG91
bGRVc2VNYWluUmVzb3VyY2VFbmNvZGluZygpIGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFsIGJvb2wg
c2hvdWxkVXNlTWFpblJlc291cmNlVVJMKCkgY29uc3QgPSAwOworCiAgICAgQXJjaGl2ZVJlc291
cmNlKiBtYWluUmVzb3VyY2UoKSB7IHJldHVybiBtX21haW5SZXNvdXJjZS5nZXQoKTsgfQotICAg
IGNvbnN0IFZlY3RvcjxSZWZQdHI8QXJjaGl2ZVJlc291cmNlPj4mIHN1YnJlc291cmNlcygpIGNv
bnN0IHsgcmV0dXJuIG1fc3VicmVzb3VyY2VzOyB9Ci0gICAgY29uc3QgVmVjdG9yPFJlZlB0cjxB
cmNoaXZlPj4mIHN1YmZyYW1lQXJjaGl2ZXMoKSBjb25zdCB7IHJldHVybiBtX3N1YmZyYW1lQXJj
aGl2ZXM7IH0KKyAgICBjb25zdCBWZWN0b3I8UmVmPEFyY2hpdmVSZXNvdXJjZT4+JiBzdWJyZXNv
dXJjZXMoKSBjb25zdCB7IHJldHVybiBtX3N1YnJlc291cmNlczsgfQorICAgIGNvbnN0IFZlY3Rv
cjxSZWY8QXJjaGl2ZT4+JiBzdWJmcmFtZUFyY2hpdmVzKCkgY29uc3QgeyByZXR1cm4gbV9zdWJm
cmFtZUFyY2hpdmVzOyB9CiAKIHByb3RlY3RlZDoKICAgICAvLyBUaGVzZSBtZXRob2RzIGFyZSBt
ZWFudCBmb3Igc3ViY2xhc3NlcyBmb3IgZGlmZmVyZW50IGFyY2hpdmUgdHlwZXMgdG8gYWRkIHJl
c291cmNlcyBpbiB0byB0aGUgYXJjaGl2ZSwKICAgICAvLyBhbmQgc2hvdWxkIG5vdCBiZSBleHBv
c2VkIGFzIGFyY2hpdmVzIHNob3VsZCBiZSBpbW11dGFibGUgdG8gY2xpZW50cwotICAgIHZvaWQg
c2V0TWFpblJlc291cmNlKFBhc3NSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBtYWluUmVzb3VyY2Up
IHsgbV9tYWluUmVzb3VyY2UgPSBtYWluUmVzb3VyY2U7IH0KLSAgICB2b2lkIGFkZFN1YnJlc291
cmNlKFBhc3NSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBzdWJSZXNvdXJjZSkgeyBtX3N1YnJlc291
cmNlcy5hcHBlbmQoc3ViUmVzb3VyY2UpOyB9Ci0gICAgdm9pZCBhZGRTdWJmcmFtZUFyY2hpdmUo
UGFzc1JlZlB0cjxBcmNoaXZlPiBzdWJmcmFtZUFyY2hpdmUpIHsgbV9zdWJmcmFtZUFyY2hpdmVz
LmFwcGVuZChzdWJmcmFtZUFyY2hpdmUpOyB9CisgICAgdm9pZCBzZXRNYWluUmVzb3VyY2UoUmVm
PEFyY2hpdmVSZXNvdXJjZT4mJiBtYWluUmVzb3VyY2UpIHsgbV9tYWluUmVzb3VyY2UgPSBXVEZN
b3ZlKG1haW5SZXNvdXJjZSk7IH0KKyAgICB2b2lkIGFkZFN1YnJlc291cmNlKFJlZjxBcmNoaXZl
UmVzb3VyY2U+JiYgcmVzb3VyY2UpIHsgbV9zdWJyZXNvdXJjZXMuYXBwZW5kKFdURk1vdmUocmVz
b3VyY2UpKTsgfQorICAgIHZvaWQgYWRkU3ViZnJhbWVBcmNoaXZlKFJlZjxBcmNoaXZlPiYmIHN1
YmZyYW1lQXJjaGl2ZSkgeyBtX3N1YmZyYW1lQXJjaGl2ZXMuYXBwZW5kKFdURk1vdmUoc3ViZnJh
bWVBcmNoaXZlKSk7IH0KIAogICAgIHZvaWQgY2xlYXJBbGxTdWJmcmFtZUFyY2hpdmVzKCk7CiAK
IHByaXZhdGU6Ci0gICAgdm9pZCBjbGVhckFsbFN1YmZyYW1lQXJjaGl2ZXNJbXBsKFZlY3RvcjxS
ZWZQdHI8QXJjaGl2ZT4+KiBjbGVhcmVkQXJjaGl2ZXMpOworICAgIHZvaWQgY2xlYXJBbGxTdWJm
cmFtZUFyY2hpdmVzKEhhc2hTZXQ8QXJjaGl2ZSo+Jik7CiAKICAgICBSZWZQdHI8QXJjaGl2ZVJl
c291cmNlPiBtX21haW5SZXNvdXJjZTsKLSAgICBWZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJj
ZT4+IG1fc3VicmVzb3VyY2VzOwotICAgIFZlY3RvcjxSZWZQdHI8QXJjaGl2ZT4+IG1fc3ViZnJh
bWVBcmNoaXZlczsKKyAgICBWZWN0b3I8UmVmPEFyY2hpdmVSZXNvdXJjZT4+IG1fc3VicmVzb3Vy
Y2VzOworICAgIFZlY3RvcjxSZWY8QXJjaGl2ZT4+IG1fc3ViZnJhbWVBcmNoaXZlczsKIH07CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9hcmNoaXZlL0FyY2hpdmVGYWN0b3J5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNo
aXZlL0FyY2hpdmVGYWN0b3J5LmNwcAppbmRleCA5MGI2Nzk5NTE1NmRiMDhlZTRiZTQ3NTQ4NzVh
ZGU1Y2ZhMzYyZDljLi40MTdhYzQ3YTczNmNlNjViMjIzM2MxZmNiNTYyZGY3MTZlYjZhYmIyIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlRmFjdG9yeS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZUZhY3RvcnkuY3Bw
CkBAIC00OSwzMSArNDksMzMgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogdHlwZWRlZiBSZWZQdHI8
QXJjaGl2ZT4gUmF3RGF0YUNyZWF0aW9uRnVuY3Rpb24oY29uc3QgVVJMJiwgU2hhcmVkQnVmZmVy
Jik7CiB0eXBlZGVmIEhhc2hNYXA8U3RyaW5nLCBSYXdEYXRhQ3JlYXRpb25GdW5jdGlvbiosIEFT
Q0lJQ2FzZUluc2Vuc2l0aXZlSGFzaD4gQXJjaGl2ZU1JTUVUeXBlc01hcDsKIAotLy8gVGhlIGNy
ZWF0ZSBmdW5jdGlvbnMgaW4gdGhlIGFyY2hpdmUgY2xhc3NlcyByZXR1cm4gUGFzc1JlZlB0ciB0
byBjb25jcmV0ZSBzdWJjbGFzc2VzCisvLyBUaGUgY3JlYXRlIGZ1bmN0aW9ucyBpbiB0aGUgYXJj
aGl2ZSBjbGFzc2VzIHJldHVybiBSZWZQdHIgdG8gY29uY3JldGUgc3ViY2xhc3NlcwogLy8gb2Yg
QXJjaGl2ZS4gVGhpcyBhZGFwdG9yIG1ha2VzIHRoZSBmdW5jdGlvbnMgaGF2ZSBhIHVuaWZvcm0g
cmV0dXJuIHR5cGUuCi10ZW1wbGF0ZSA8dHlwZW5hbWUgQXJjaGl2ZUNsYXNzPiBzdGF0aWMgUmVm
UHRyPEFyY2hpdmU+IGFyY2hpdmVGYWN0b3J5Q3JlYXRlKGNvbnN0IFVSTCYgdXJsLCBTaGFyZWRC
dWZmZXImIGJ1ZmZlcikKK3RlbXBsYXRlPHR5cGVuYW1lIEFyY2hpdmVDbGFzcz4gc3RhdGljIFJl
ZlB0cjxBcmNoaXZlPiBhcmNoaXZlRmFjdG9yeUNyZWF0ZShjb25zdCBVUkwmIHVybCwgU2hhcmVk
QnVmZmVyJiBidWZmZXIpCiB7CiAgICAgcmV0dXJuIEFyY2hpdmVDbGFzczo6Y3JlYXRlKHVybCwg
YnVmZmVyKTsKIH0KIAotc3RhdGljIEFyY2hpdmVNSU1FVHlwZXNNYXAmIGFyY2hpdmVNSU1FVHlw
ZXMoKQorc3RhdGljIEFyY2hpdmVNSU1FVHlwZXNNYXAgY3JlYXRlQXJjaGl2ZU1JTUVUeXBlc01h
cCgpCiB7Ci0gICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPEFyY2hpdmVNSU1FVHlwZXNNYXA+IG1p
bWVUeXBlczsKLSAgICBzdGF0aWMgYm9vbCBpbml0aWFsaXplZCA9IGZhbHNlOwotCi0gICAgaWYg
KGluaXRpYWxpemVkKQotICAgICAgICByZXR1cm4gbWltZVR5cGVzOworICAgIEFyY2hpdmVNSU1F
VHlwZXNNYXAgbWFwOwogCiAjaWYgRU5BQkxFKFdFQl9BUkNISVZFKSAmJiBVU0UoQ0YpCi0gICAg
bWltZVR5cGVzLmdldCgpLnNldCgiYXBwbGljYXRpb24veC13ZWJhcmNoaXZlIiwgYXJjaGl2ZUZh
Y3RvcnlDcmVhdGU8TGVnYWN5V2ViQXJjaGl2ZT4pOworICAgIG1hcC5hZGQoQVNDSUlMaXRlcmFs
IHsgImFwcGxpY2F0aW9uL3gtd2ViYXJjaGl2ZSIgfSwgYXJjaGl2ZUZhY3RvcnlDcmVhdGU8TGVn
YWN5V2ViQXJjaGl2ZT4pOwogI2VuZGlmCisKICNpZiBFTkFCTEUoTUhUTUwpCi0gICAgbWltZVR5
cGVzLmdldCgpLnNldCgibXVsdGlwYXJ0L3JlbGF0ZWQiLCBhcmNoaXZlRmFjdG9yeUNyZWF0ZTxN
SFRNTEFyY2hpdmU+KTsKLSAgICBtaW1lVHlwZXMuZ2V0KCkuc2V0KCJhcHBsaWNhdGlvbi94LW1p
bWVhcmNoaXZlIiwgYXJjaGl2ZUZhY3RvcnlDcmVhdGU8TUhUTUxBcmNoaXZlPik7CisgICAgbWFw
LmFkZChBU0NJSUxpdGVyYWwgeyAibXVsdGlwYXJ0L3JlbGF0ZWQiIH0sIGFyY2hpdmVGYWN0b3J5
Q3JlYXRlPE1IVE1MQXJjaGl2ZT4pOworICAgIG1hcC5hZGQoQVNDSUlMaXRlcmFsIHsgImFwcGxp
Y2F0aW9uL3gtbWltZWFyY2hpdmUiIH0sIGFyY2hpdmVGYWN0b3J5Q3JlYXRlPE1IVE1MQXJjaGl2
ZT4pOwogI2VuZGlmCiAKLSAgICBpbml0aWFsaXplZCA9IHRydWU7Ci0gICAgcmV0dXJuIG1pbWVU
eXBlczsKKyAgICByZXR1cm4gbWFwOworfQorCitzdGF0aWMgQXJjaGl2ZU1JTUVUeXBlc01hcCYg
YXJjaGl2ZU1JTUVUeXBlcygpCit7CisgICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPEFyY2hpdmVN
SU1FVHlwZXNNYXA+IG1hcCA9IGNyZWF0ZUFyY2hpdmVNSU1FVHlwZXNNYXAoKTsKKyAgICByZXR1
cm4gbWFwOwogfQogCiBib29sIEFyY2hpdmVGYWN0b3J5Ojppc0FyY2hpdmVNaW1lVHlwZShjb25z
dCBTdHJpbmcmIG1pbWVUeXBlKQpAQCAtODMsMTAgKzg1LDE0IEBAIGJvb2wgQXJjaGl2ZUZhY3Rv
cnk6OmlzQXJjaGl2ZU1pbWVUeXBlKGNvbnN0IFN0cmluZyYgbWltZVR5cGUpCiAKIFJlZlB0cjxB
cmNoaXZlPiBBcmNoaXZlRmFjdG9yeTo6Y3JlYXRlKGNvbnN0IFVSTCYgdXJsLCBTaGFyZWRCdWZm
ZXIqIGRhdGEsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUpCiB7Ci0gICAgUmF3RGF0YUNyZWF0aW9u
RnVuY3Rpb24qIGZ1bmN0aW9uID0gbWltZVR5cGUuaXNFbXB0eSgpID8gMCA6IGFyY2hpdmVNSU1F
VHlwZXMoKS5nZXQobWltZVR5cGUpOwogICAgIGlmICghZGF0YSkKICAgICAgICAgcmV0dXJuIG51
bGxwdHI7Ci0gICAgcmV0dXJuIGZ1bmN0aW9uID8gZnVuY3Rpb24odXJsLCAqZGF0YSkgOiBSZWZQ
dHI8QXJjaGl2ZT4obnVsbHB0cik7CisgICAgaWYgKG1pbWVUeXBlLmlzRW1wdHkoKSkKKyAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CisgICAgYXV0byogZnVuY3Rpb24gPSBhcmNoaXZlTUlNRVR5cGVz
KCkuZ2V0KG1pbWVUeXBlKTsKKyAgICBpZiAoIWZ1bmN0aW9uKQorICAgICAgICByZXR1cm4gbnVs
bHB0cjsKKyAgICByZXR1cm4gZnVuY3Rpb24odXJsLCAqZGF0YSk7CiB9CiAKIHZvaWQgQXJjaGl2
ZUZhY3Rvcnk6OnJlZ2lzdGVyS25vd25BcmNoaXZlTUlNRVR5cGVzKCkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24uY3Bw
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlv
bi5jcHAKaW5kZXggOThmNmMxZTJmYTFkNGE1MDkxMzAwZDU4NzgwNDQyMTFkOGY3YjIzYi4uYTM3
MDVlYzc3YWQyNjMxZTU5NjhkODVhY2U5N2RmMGZkMTU3YzFlYSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlv
bi5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA4IEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOC0yMDE3IEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwpAQCAtMjksMzEgKzI5LDIzIEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiQXJj
aGl2ZVJlc291cmNlQ29sbGVjdGlvbi5oIgogCi1uYW1lc3BhY2UgV2ViQ29yZSB7CisjaW5jbHVk
ZSAiQXJjaGl2ZS5oIgogCi1BcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uOjpBcmNoaXZlUmVzb3Vy
Y2VDb2xsZWN0aW9uKCkKLXsKLX0KK25hbWVzcGFjZSBXZWJDb3JlIHsKIAotdm9pZCBBcmNoaXZl
UmVzb3VyY2VDb2xsZWN0aW9uOjphZGRBbGxSZXNvdXJjZXMoQXJjaGl2ZSogYXJjaGl2ZSkKK3Zv
aWQgQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbjo6YWRkQWxsUmVzb3VyY2VzKEFyY2hpdmUmIGFy
Y2hpdmUpCiB7Ci0gICAgQVNTRVJUKGFyY2hpdmUpOwotICAgIGlmICghYXJjaGl2ZSkKLSAgICAg
ICAgcmV0dXJuOworICAgIGZvciAoYXV0byYgc3VicmVzb3VyY2UgOiBhcmNoaXZlLnN1YnJlc291
cmNlcygpKQorICAgICAgICBtX3N1YnJlc291cmNlcy5zZXQoc3VicmVzb3VyY2UtPnVybCgpLCBz
dWJyZXNvdXJjZS5wdHIoKSk7CiAKLSAgICBmb3IgKGF1dG8mIHN1YnJlc291cmNlIDogYXJjaGl2
ZS0+c3VicmVzb3VyY2VzKCkpCi0gICAgICAgIG1fc3VicmVzb3VyY2VzLnNldChzdWJyZXNvdXJj
ZS0+dXJsKCksIHN1YnJlc291cmNlLmdldCgpKTsKLQotICAgIGZvciAoYXV0byYgc3ViZnJhbWVB
cmNoaXZlIDogYXJjaGl2ZS0+c3ViZnJhbWVBcmNoaXZlcygpKSB7CisgICAgZm9yIChhdXRvJiBz
dWJmcmFtZUFyY2hpdmUgOiBhcmNoaXZlLnN1YmZyYW1lQXJjaGl2ZXMoKSkgewogICAgICAgICBB
U1NFUlQoc3ViZnJhbWVBcmNoaXZlLT5tYWluUmVzb3VyY2UoKSk7Ci0KLSAgICAgICAgY29uc3Qg
U3RyaW5nJiBmcmFtZU5hbWUgPSBzdWJmcmFtZUFyY2hpdmUtPm1haW5SZXNvdXJjZSgpLT5mcmFt
ZU5hbWUoKTsKLSAgICAgICAgaWYgKCFmcmFtZU5hbWUuaXNOdWxsKCkpCi0gICAgICAgICAgICBt
X3N1YmZyYW1lcy5zZXQoZnJhbWVOYW1lLCBzdWJmcmFtZUFyY2hpdmUuZ2V0KCkpOwotICAgICAg
ICBlbHNlIHsKLSAgICAgICAgICAgIC8vIEluIHRoZSBNSFRNTCBjYXNlLCBmcmFtZXMgZG9uJ3Qg
aGF2ZSBhIG5hbWUgc28gd2UgdXNlIHRoZSBVUkwgaW5zdGVhZC4KLSAgICAgICAgICAgIG1fc3Vi
ZnJhbWVzLnNldChzdWJmcmFtZUFyY2hpdmUtPm1haW5SZXNvdXJjZSgpLT51cmwoKS5zdHJpbmco
KSwgc3ViZnJhbWVBcmNoaXZlLmdldCgpKTsKKyAgICAgICAgYXV0byBmcmFtZU5hbWUgPSBzdWJm
cmFtZUFyY2hpdmUtPm1haW5SZXNvdXJjZSgpLT5mcmFtZU5hbWUoKTsKKyAgICAgICAgaWYgKGZy
YW1lTmFtZS5pc051bGwoKSkgeworICAgICAgICAgICAgLy8gSW4gdGhlIE1IVE1MIGNhc2UsIGZy
YW1lcyBkb24ndCBoYXZlIGEgbmFtZSwgc28gd2UgdXNlIHRoZSBVUkwgaW5zdGVhZC4KKyAgICAg
ICAgICAgIGZyYW1lTmFtZSA9IHN1YmZyYW1lQXJjaGl2ZS0+bWFpblJlc291cmNlKCktPnVybCgp
LnN0cmluZygpOwogICAgICAgICB9CisgICAgICAgIG1fc3ViZnJhbWVzLnNldChmcmFtZU5hbWUs
IHN1YmZyYW1lQXJjaGl2ZS5wdHIoKSk7CiAgICAgfQogfQogCkBAIC02MSwyNSArNTMsMTkgQEAg
dm9pZCBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uOjphZGRBbGxSZXNvdXJjZXMoQXJjaGl2ZSog
YXJjaGl2ZSkKIC8vIENhbiB3ZSBjaGFuZ2UgdGhlIGRlc2lnbiBpbiBhIG1hbm5lciB0aGF0IHdp
bGwgbGV0IHVzIGRlcHJlY2F0ZSB0aGF0IEFQSSB3aXRob3V0IHJlZHVjaW5nIGZ1bmN0aW9uYWxp
dHkgb2YgdGhvc2UgYXBwcz8KIHZvaWQgQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbjo6YWRkUmVz
b3VyY2UoUmVmPEFyY2hpdmVSZXNvdXJjZT4mJiByZXNvdXJjZSkKIHsKLSAgICBjb25zdCBVUkwm
IHVybCA9IHJlc291cmNlLT51cmwoKTsKKyAgICBhdXRvJiB1cmwgPSByZXNvdXJjZS0+dXJsKCk7
CiAgICAgbV9zdWJyZXNvdXJjZXMuc2V0KHVybCwgV1RGTW92ZShyZXNvdXJjZSkpOwogfQogCiBB
cmNoaXZlUmVzb3VyY2UqIEFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb246OmFyY2hpdmVSZXNvdXJj
ZUZvclVSTChjb25zdCBVUkwmIHVybCkKIHsKLSAgICBBcmNoaXZlUmVzb3VyY2UqIHJlc291cmNl
ID0gbV9zdWJyZXNvdXJjZXMuZ2V0KHVybCk7Ci0gICAgaWYgKCFyZXNvdXJjZSkKLSAgICAgICAg
cmV0dXJuIG51bGxwdHI7Ci0gICAgICAgIAotICAgIHJldHVybiByZXNvdXJjZTsKKyAgICByZXR1
cm4gbV9zdWJyZXNvdXJjZXMuZ2V0KHVybCk7CiB9CiAKLVBhc3NSZWZQdHI8QXJjaGl2ZT4gQXJj
aGl2ZVJlc291cmNlQ29sbGVjdGlvbjo6cG9wU3ViZnJhbWVBcmNoaXZlKGNvbnN0IFN0cmluZyYg
ZnJhbWVOYW1lLCBjb25zdCBVUkwmIHVybCkKK1JlZlB0cjxBcmNoaXZlPiBBcmNoaXZlUmVzb3Vy
Y2VDb2xsZWN0aW9uOjpwb3BTdWJmcmFtZUFyY2hpdmUoY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUs
IGNvbnN0IFVSTCYgdXJsKQogewotICAgIGF1dG8gYXJjaGl2ZSA9IG1fc3ViZnJhbWVzLnRha2Uo
ZnJhbWVOYW1lKTsKLSAgICBpZiAoYXJjaGl2ZSkKLSAgICAgICAgcmV0dXJuIFdURk1vdmUoYXJj
aGl2ZSk7Ci0KKyAgICBpZiAoYXV0byBhcmNoaXZlID0gbV9zdWJmcmFtZXMudGFrZShmcmFtZU5h
bWUpKQorICAgICAgICByZXR1cm4gYXJjaGl2ZTsKICAgICByZXR1cm4gbV9zdWJmcmFtZXMudGFr
ZSh1cmwuc3RyaW5nKCkpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
YXJjaGl2ZS9BcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvYXJjaGl2ZS9BcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uLmgKaW5kZXggNWM2MjBiNTFmMzFl
NjM4MmQ3ZWYxY2MyNDhiOTMyMGY1NmM4OTdhNy4uMzdkZjY4YjM2NmNmZjg1MzliOTVjODIzZjJl
OTEyNGQzNWVhOTkzOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUv
QXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9h
cmNoaXZlL0FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24uaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0g
KiBDb3B5cmlnaHQgKEMpIDIwMDggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICog
Q29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgog
ICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yOCwyNCArMjgsMjkgQEAKIAogI3By
YWdtYSBvbmNlCiAKLSNpbmNsdWRlICJBcmNoaXZlLmgiCi0jaW5jbHVkZSAiQXJjaGl2ZVJlc291
cmNlLmgiCi0jaW5jbHVkZSAiVVJMLmgiCisjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KICNpbmNs
dWRlIDx3dGYvSGFzaE1hcC5oPgotI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgorI2lu
Y2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0hhc2gu
aD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitjbGFzcyBBcmNoaXZlOworY2xhc3MgQXJjaGl2
ZVJlc291cmNlOworY2xhc3MgVVJMOworCiBjbGFzcyBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9u
IHsKLSAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uKTsg
V1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CisgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoQXJjaGl2
ZVJlc291cmNlQ29sbGVjdGlvbik7CisgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CisKIHB1
YmxpYzoKLSAgICBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uKCk7CisgICAgQXJjaGl2ZVJlc291
cmNlQ29sbGVjdGlvbigpID0gZGVmYXVsdDsKIAogICAgIHZvaWQgYWRkUmVzb3VyY2UoUmVmPEFy
Y2hpdmVSZXNvdXJjZT4mJik7Ci0gICAgdm9pZCBhZGRBbGxSZXNvdXJjZXMoQXJjaGl2ZSopOwor
ICAgIHZvaWQgYWRkQWxsUmVzb3VyY2VzKEFyY2hpdmUmKTsKICAgICAKICAgICBXRUJDT1JFX0VY
UE9SVCBBcmNoaXZlUmVzb3VyY2UqIGFyY2hpdmVSZXNvdXJjZUZvclVSTChjb25zdCBVUkwmKTsK
LSAgICBQYXNzUmVmUHRyPEFyY2hpdmU+IHBvcFN1YmZyYW1lQXJjaGl2ZShjb25zdCBTdHJpbmcm
IGZyYW1lTmFtZSwgY29uc3QgVVJMJik7CisgICAgUmVmUHRyPEFyY2hpdmU+IHBvcFN1YmZyYW1l
QXJjaGl2ZShjb25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgY29uc3QgVVJMJik7CiAgICAgCiBwcml2
YXRlOiAgICAKICAgICBIYXNoTWFwPFN0cmluZywgUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+IG1f
c3VicmVzb3VyY2VzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUv
Y2YvTGVnYWN5V2ViQXJjaGl2ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9j
Zi9MZWdhY3lXZWJBcmNoaXZlLmNwcAppbmRleCBlMDQ5MDYzMDA4MWEwMTJhNDMzMzI2YmUyNDIz
MTgyN2RkZmNlOTcxLi4zOWQ4MzUyMDZjNzEwMWVlNGMxOTBjNDI4ZjRiY2VkYjUzMTMzMWFmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNo
aXZlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9jZi9MZWdhY3lXZWJB
cmNoaXZlLmNwcApAQCAtODAsMTggKzgwLDE2IEBAIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+
IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKEFyCiAg
ICAgICAgIENGRGljdGlvbmFyeVNldFZhbHVlKHByb3BlcnR5TGlzdC5nZXQoKSwgTGVnYWN5V2Vi
QXJjaGl2ZVJlc291cmNlTUlNRVR5cGVLZXksIDApOwogICAgICAgICByZXR1cm4gcHJvcGVydHlM
aXN0OwogICAgIH0KLSAgICAKLSAgICBSZXRhaW5QdHI8Q0ZNdXRhYmxlRGljdGlvbmFyeVJlZj4g
cHJvcGVydHlMaXN0ID0gYWRvcHRDRihDRkRpY3Rpb25hcnlDcmVhdGVNdXRhYmxlKDAsIDYsIDAs
ICZrQ0ZUeXBlRGljdGlvbmFyeVZhbHVlQ2FsbEJhY2tzKSk7Ci0gICAgCisKKyAgICBhdXRvIHBy
b3BlcnR5TGlzdCA9IGFkb3B0Q0YoQ0ZEaWN0aW9uYXJ5Q3JlYXRlTXV0YWJsZSgwLCA2LCAwLCAm
a0NGVHlwZURpY3Rpb25hcnlWYWx1ZUNhbGxCYWNrcykpOworCiAgICAgLy8gUmVzb3VyY2UgZGF0
YSBjYW4gYmUgZW1wdHksIGJ1dCBtdXN0IGJlIHJlcHJlc2VudGVkIGJ5IGFuIGVtcHR5IENGRGF0
YVJlZgotICAgIFNoYXJlZEJ1ZmZlciYgZGF0YSA9IHJlc291cmNlLT5kYXRhKCk7Ci0gICAgUmV0
YWluUHRyPENGRGF0YVJlZj4gY2ZEYXRhOwotICAgIGNmRGF0YSA9IGRhdGEuY3JlYXRlQ0ZEYXRh
KCk7CisgICAgYXV0byYgZGF0YSA9IHJlc291cmNlLT5kYXRhKCk7CisKKyAgICBDRkRpY3Rpb25h
cnlTZXRWYWx1ZShwcm9wZXJ0eUxpc3QuZ2V0KCksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZURh
dGFLZXksIGRhdGEuY3JlYXRlQ0ZEYXRhKCkuZ2V0KCkpOwogCi0gICAgQ0ZEaWN0aW9uYXJ5U2V0
VmFsdWUocHJvcGVydHlMaXN0LmdldCgpLCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VEYXRhS2V5
LCBjZkRhdGEuZ2V0KCkpOwotICAgIAogICAgIC8vIFJlc291cmNlIFVSTCBjYW5ub3QgYmUgbnVs
bAotICAgIGlmIChSZXRhaW5QdHI8Q0ZTdHJpbmdSZWY+IGNmVVJMID0gcmVzb3VyY2UtPnVybCgp
LnN0cmluZygpLmNyZWF0ZUNGU3RyaW5nKCkpCisgICAgaWYgKGF1dG8gY2ZVUkwgPSByZXNvdXJj
ZS0+dXJsKCkuc3RyaW5nKCkuY3JlYXRlQ0ZTdHJpbmcoKSkKICAgICAgICAgQ0ZEaWN0aW9uYXJ5
U2V0VmFsdWUocHJvcGVydHlMaXN0LmdldCgpLCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VVUkxL
ZXksIGNmVVJMLmdldCgpKTsKICAgICBlbHNlIHsKICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVn
YWN5V2ViQXJjaGl2ZSAtIE5VTEwgcmVzb3VyY2UgVVJMIGlzIGludmFsaWQgLSByZXR1cm5pbmcg
bnVsbCBwcm9wZXJ0eSBsaXN0Iik7CkBAIC05OSw0MiArOTcsNDEgQEAgUmV0YWluUHRyPENGRGlj
dGlvbmFyeVJlZj4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50
YXRpb24oQXIKICAgICB9CiAKICAgICAvLyBGcmFtZU5hbWUgc2hvdWxkIGJlIGxlZnQgb3V0IGlm
IGVtcHR5IGZvciBzdWJyZXNvdXJjZXMsIGJ1dCBhbHdheXMgaW5jbHVkZWQgZm9yIG1haW4gcmVz
b3VyY2VzCi0gICAgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUocmVzb3VyY2UtPmZyYW1lTmFtZSgp
KTsKKyAgICBhdXRvJiBmcmFtZU5hbWUgPSByZXNvdXJjZS0+ZnJhbWVOYW1lKCk7CiAgICAgaWYg
KCFmcmFtZU5hbWUuaXNFbXB0eSgpIHx8IGlzTWFpblJlc291cmNlKQogICAgICAgICBDRkRpY3Rp
b25hcnlTZXRWYWx1ZShwcm9wZXJ0eUxpc3QuZ2V0KCksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJj
ZUZyYW1lTmFtZUtleSwgZnJhbWVOYW1lLmNyZWF0ZUNGU3RyaW5nKCkuZ2V0KCkpOwotICAgIAor
CiAgICAgLy8gU2V0IE1JTUVUeXBlLCBUZXh0RW5jb2RpbmdOYW1lLCBhbmQgUmVzb3VyY2VSZXNw
b25zZSBvbmx5IGlmIHRoZXkgYWN0dWFsbHkgZXhpc3QKLSAgICBjb25zdCBTdHJpbmcmIG1pbWVU
eXBlKHJlc291cmNlLT5taW1lVHlwZSgpKTsKKyAgICBhdXRvJiBtaW1lVHlwZSA9IHJlc291cmNl
LT5taW1lVHlwZSgpOwogICAgIGlmICghbWltZVR5cGUuaXNFbXB0eSgpKQogICAgICAgICBDRkRp
Y3Rpb25hcnlTZXRWYWx1ZShwcm9wZXJ0eUxpc3QuZ2V0KCksIExlZ2FjeVdlYkFyY2hpdmVSZXNv
dXJjZU1JTUVUeXBlS2V5LCBtaW1lVHlwZS5jcmVhdGVDRlN0cmluZygpLmdldCgpKTsKLSAgICAK
LSAgICBjb25zdCBTdHJpbmcmIHRleHRFbmNvZGluZyhyZXNvdXJjZS0+dGV4dEVuY29kaW5nKCkp
OworCisgICAgYXV0byYgdGV4dEVuY29kaW5nID0gcmVzb3VyY2UtPnRleHRFbmNvZGluZygpOwog
ICAgIGlmICghdGV4dEVuY29kaW5nLmlzRW1wdHkoKSkKICAgICAgICAgQ0ZEaWN0aW9uYXJ5U2V0
VmFsdWUocHJvcGVydHlMaXN0LmdldCgpLCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VUZXh0RW5j
b2RpbmdOYW1lS2V5LCB0ZXh0RW5jb2RpbmcuY3JlYXRlQ0ZTdHJpbmcoKS5nZXQoKSk7CiAKICAg
ICAvLyBEb24ndCBpbmNsdWRlIHRoZSByZXNvdXJjZSByZXNwb25zZSBmb3IgdGhlIG1haW4gcmVz
b3VyY2UKICAgICBpZiAoIWlzTWFpblJlc291cmNlKSB7Ci0gICAgICAgIFJldGFpblB0cjxDRkRh
dGFSZWY+IHJlc291cmNlUmVzcG9uc2VEYXRhID0gY3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50
YXRpb24ocmVzb3VyY2UtPnJlc3BvbnNlKCkpOwotICAgICAgICBpZiAocmVzb3VyY2VSZXNwb25z
ZURhdGEpCisgICAgICAgIGlmIChhdXRvIHJlc291cmNlUmVzcG9uc2VEYXRhID0gY3JlYXRlUHJv
cGVydHlMaXN0UmVwcmVzZW50YXRpb24ocmVzb3VyY2UtPnJlc3BvbnNlKCkpKQogICAgICAgICAg
ICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJvcGVydHlMaXN0LmdldCgpLCBMZWdhY3lXZWJBcmNo
aXZlUmVzb3VyY2VSZXNwb25zZUtleSwgcmVzb3VyY2VSZXNwb25zZURhdGEuZ2V0KCkpOyAgICAK
ICAgICB9CiAgICAgCiAgICAgcmV0dXJuIHByb3BlcnR5TGlzdDsKIH0KIAotUmV0YWluUHRyPENG
RGljdGlvbmFyeVJlZj4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlUHJvcGVydHlMaXN0UmVwcmVz
ZW50YXRpb24oQXJjaGl2ZSogYXJjaGl2ZSkKK1JldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IExl
Z2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKEFyY2hpdmUm
IGFyY2hpdmUpCiB7Ci0gICAgUmV0YWluUHRyPENGTXV0YWJsZURpY3Rpb25hcnlSZWY+IHByb3Bl
cnR5TGlzdCA9IGFkb3B0Q0YoQ0ZEaWN0aW9uYXJ5Q3JlYXRlTXV0YWJsZSgwLCAzLCAwLCAma0NG
VHlwZURpY3Rpb25hcnlWYWx1ZUNhbGxCYWNrcykpOwotICAgIAotICAgIFJldGFpblB0cjxDRkRp
Y3Rpb25hcnlSZWY+IG1haW5SZXNvdXJjZURpY3QgPSBjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNl
bnRhdGlvbihhcmNoaXZlLT5tYWluUmVzb3VyY2UoKSwgTWFpblJlc291cmNlKTsKKyAgICBhdXRv
IHByb3BlcnR5TGlzdCA9IGFkb3B0Q0YoQ0ZEaWN0aW9uYXJ5Q3JlYXRlTXV0YWJsZSgwLCAzLCAw
LCAma0NGVHlwZURpY3Rpb25hcnlWYWx1ZUNhbGxCYWNrcykpOworCisgICAgYXV0byBtYWluUmVz
b3VyY2VEaWN0ID0gY3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24oYXJjaGl2ZS5tYWlu
UmVzb3VyY2UoKSwgTWFpblJlc291cmNlKTsKICAgICBBU1NFUlQobWFpblJlc291cmNlRGljdCk7
CiAgICAgaWYgKCFtYWluUmVzb3VyY2VEaWN0KQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAg
ICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShwcm9wZXJ0eUxpc3QuZ2V0KCksIExlZ2FjeVdlYkFyY2hp
dmVNYWluUmVzb3VyY2VLZXksIG1haW5SZXNvdXJjZURpY3QuZ2V0KCkpOwogCi0gICAgUmV0YWlu
UHRyPENGTXV0YWJsZUFycmF5UmVmPiBzdWJyZXNvdXJjZXNBcnJheSA9IGFkb3B0Q0YoQ0ZBcnJh
eUNyZWF0ZU11dGFibGUoMCwgYXJjaGl2ZS0+c3VicmVzb3VyY2VzKCkuc2l6ZSgpLCAma0NGVHlw
ZUFycmF5Q2FsbEJhY2tzKSk7Ci0gICAgZm9yIChhdXRvJiByZXNvdXJjZSA6IGFyY2hpdmUtPnN1
YnJlc291cmNlcygpKSB7Ci0gICAgICAgIGlmIChSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBz
dWJyZXNvdXJjZSA9IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKHJlc291cmNlLmdl
dCgpLCBTdWJyZXNvdXJjZSkpCisgICAgYXV0byBzdWJyZXNvdXJjZXNBcnJheSA9IGFkb3B0Q0Yo
Q0ZBcnJheUNyZWF0ZU11dGFibGUoMCwgYXJjaGl2ZS5zdWJyZXNvdXJjZXMoKS5zaXplKCksICZr
Q0ZUeXBlQXJyYXlDYWxsQmFja3MpKTsKKyAgICBmb3IgKGF1dG8mIHJlc291cmNlIDogYXJjaGl2
ZS5zdWJyZXNvdXJjZXMoKSkgeworICAgICAgICBpZiAoYXV0byBzdWJyZXNvdXJjZSA9IGNyZWF0
ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKHJlc291cmNlLnB0cigpLCBTdWJyZXNvdXJjZSkp
CiAgICAgICAgICAgICBDRkFycmF5QXBwZW5kVmFsdWUoc3VicmVzb3VyY2VzQXJyYXkuZ2V0KCks
IHN1YnJlc291cmNlLmdldCgpKTsKICAgICAgICAgZWxzZQogICAgICAgICAgICAgTE9HKEFyY2hp
dmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIEZhaWxlZCB0byBjcmVhdGUgcHJvcGVydHkgbGlzdCBm
b3Igc3VicmVzb3VyY2UiKTsKQEAgLTE0Miw5ICsxMzksOSBAQCBSZXRhaW5QdHI8Q0ZEaWN0aW9u
YXJ5UmVmPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlv
bihBcgogICAgIGlmIChDRkFycmF5R2V0Q291bnQoc3VicmVzb3VyY2VzQXJyYXkuZ2V0KCkpKQog
ICAgICAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShwcm9wZXJ0eUxpc3QuZ2V0KCksIExlZ2FjeVdl
YkFyY2hpdmVTdWJyZXNvdXJjZXNLZXksIHN1YnJlc291cmNlc0FycmF5LmdldCgpKTsKIAotICAg
IFJldGFpblB0cjxDRk11dGFibGVBcnJheVJlZj4gc3ViZnJhbWVzQXJyYXkgPSBhZG9wdENGKENG
QXJyYXlDcmVhdGVNdXRhYmxlKDAsIGFyY2hpdmUtPnN1YmZyYW1lQXJjaGl2ZXMoKS5zaXplKCks
ICZrQ0ZUeXBlQXJyYXlDYWxsQmFja3MpKTsKLSAgICBmb3IgKGF1dG8mIHN1YmZyYW1lIDogYXJj
aGl2ZS0+c3ViZnJhbWVBcmNoaXZlcygpKSB7Ci0gICAgICAgIGlmIChSZXRhaW5QdHI8Q0ZEaWN0
aW9uYXJ5UmVmPiBzdWJmcmFtZUFyY2hpdmUgPSBjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRh
dGlvbihzdWJmcmFtZS5nZXQoKSkpCisgICAgYXV0byBzdWJmcmFtZXNBcnJheSA9IGFkb3B0Q0Yo
Q0ZBcnJheUNyZWF0ZU11dGFibGUoMCwgYXJjaGl2ZS5zdWJmcmFtZUFyY2hpdmVzKCkuc2l6ZSgp
LCAma0NGVHlwZUFycmF5Q2FsbEJhY2tzKSk7CisgICAgZm9yIChhdXRvJiBzdWJmcmFtZSA6IGFy
Y2hpdmUuc3ViZnJhbWVBcmNoaXZlcygpKSB7CisgICAgICAgIGlmIChhdXRvIHN1YmZyYW1lQXJj
aGl2ZSA9IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKHN1YmZyYW1lLmdldCgpKSkK
ICAgICAgICAgICAgIENGQXJyYXlBcHBlbmRWYWx1ZShzdWJmcmFtZXNBcnJheS5nZXQoKSwgc3Vi
ZnJhbWVBcmNoaXZlLmdldCgpKTsKICAgICAgICAgZWxzZQogICAgICAgICAgICAgTE9HKEFyY2hp
dmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIEZhaWxlZCB0byBjcmVhdGUgcHJvcGVydHkgbGlzdCBm
b3Igc3ViZnJhbWUgYXJjaGl2ZSIpOwpAQCAtMTYwLDEzICsxNTcsMTMgQEAgUmVzb3VyY2VSZXNw
b25zZSBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVSZXNvdXJjZVJlc3BvbnNlRnJvbVByb3BlcnR5
TGlzdERhdGEoQ0YKICAgICBBU1NFUlQoZGF0YSk7CiAgICAgaWYgKCFkYXRhKQogICAgICAgICBy
ZXR1cm4gUmVzb3VyY2VSZXNwb25zZSgpOwotICAgIAorCiAgICAgLy8gSWYgdGhlIFJlc291cmNl
UmVzcG9uc2VWZXJzaW9uIChwYXNzZWQgaW4gYXMgcmVzcG9uc2VEYXRhVHlwZSkgZXhpc3RzIGF0
IGFsbCwgdGhpcyBpcyBhICJuZXciIHdlYiBhcmNoaXZlIHRoYXQgd2UKICAgICAvLyBjYW4gcGFy
c2Ugd2VsbCBpbiBhIGNyb3NzIHBsYXRmb3JtIG1hbm5lciBJZiBpdCBkb2Vzbid0IGV4aXN0LCB3
ZSB3aWxsIGFzc3VtZSB0aGlzIGlzIGFuICJvbGQiIHdlYiBhcmNoaXZlIHdpdGgsCiAgICAgLy8g
TlNVUkxSZXNwb25zZSBvYmplY3RzIGluIGl0IGFuZCBwYXJzZSB0aGUgUmVzb3VyY2VSZXNwb25z
ZSBhcyBzdWNoLgogICAgIGlmICghcmVzcG9uc2VEYXRhVHlwZSkKICAgICAgICAgcmV0dXJuIGNy
ZWF0ZVJlc291cmNlUmVzcG9uc2VGcm9tTWFjQXJjaGl2ZWREYXRhKGRhdGEpOwotICAgICAgICAK
KwogICAgIC8vIEZJWE1FOiBQYXJzZSB0aGUgIm5ldyIgZm9ybWF0IHRoYXQgdGhlIGFib3ZlIGNv
bW1lbnQgcmVmZXJlbmNlcyBoZXJlLiBUaGlzIGZvcm1hdCBkb2Vzbid0IGV4aXN0IHlldC4KICAg
ICByZXR1cm4gUmVzb3VyY2VSZXNwb25zZSgpOwogfQpAQCAtMTc2LDQ3ICsxNzMsNDYgQEAgUmVm
UHRyPEFyY2hpdmVSZXNvdXJjZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlUmVzb3VyY2UoQ0ZE
aWN0aW9uYXJ5UmVmIGRpY3Rpb24KICAgICBBU1NFUlQoZGljdGlvbmFyeSk7CiAgICAgaWYgKCFk
aWN0aW9uYXJ5KQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICAgICAgCi0gICAgQ0ZEYXRh
UmVmIHJlc291cmNlRGF0YSA9IHN0YXRpY19jYXN0PENGRGF0YVJlZj4oQ0ZEaWN0aW9uYXJ5R2V0
VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlRGF0YUtleSkpOworCisg
ICAgYXV0byByZXNvdXJjZURhdGEgPSBzdGF0aWNfY2FzdDxDRkRhdGFSZWY+KENGRGljdGlvbmFy
eUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZURhdGFLZXkpKTsK
ICAgICBpZiAocmVzb3VyY2VEYXRhICYmIENGR2V0VHlwZUlEKHJlc291cmNlRGF0YSkgIT0gQ0ZE
YXRhR2V0VHlwZUlEKCkpIHsKICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2
ZSAtIFJlc291cmNlIGRhdGEgaXMgbm90IG9mIHR5cGUgQ0ZEYXRhLCBjYW5ub3QgY3JlYXRlIGlu
dmFsaWQgcmVzb3VyY2UiKTsKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQotICAgIAot
ICAgIENGU3RyaW5nUmVmIGZyYW1lTmFtZSA9IHN0YXRpY19jYXN0PENGU3RyaW5nUmVmPihDRkRp
Y3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VGcmFt
ZU5hbWVLZXkpKTsKKworICAgIGF1dG8gZnJhbWVOYW1lID0gc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdS
ZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNv
dXJjZUZyYW1lTmFtZUtleSkpOwogICAgIGlmIChmcmFtZU5hbWUgJiYgQ0ZHZXRUeXBlSUQoZnJh
bWVOYW1lKSAhPSBDRlN0cmluZ0dldFR5cGVJRCgpKSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywg
IkxlZ2FjeVdlYkFyY2hpdmUgLSBGcmFtZSBuYW1lIGlzIG5vdCBvZiB0eXBlIENGU3RyaW5nLCBj
YW5ub3QgY3JlYXRlIGludmFsaWQgcmVzb3VyY2UiKTsKICAgICAgICAgcmV0dXJuIG51bGxwdHI7
CiAgICAgfQotICAgIAotICAgIENGU3RyaW5nUmVmIG1pbWVUeXBlID0gc3RhdGljX2Nhc3Q8Q0ZT
dHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hp
dmVSZXNvdXJjZU1JTUVUeXBlS2V5KSk7CisKKyAgICBhdXRvIG1pbWVUeXBlID0gc3RhdGljX2Nh
c3Q8Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdl
YkFyY2hpdmVSZXNvdXJjZU1JTUVUeXBlS2V5KSk7CiAgICAgaWYgKG1pbWVUeXBlICYmIENGR2V0
VHlwZUlEKG1pbWVUeXBlKSAhPSBDRlN0cmluZ0dldFR5cGVJRCgpKSB7CiAgICAgICAgIExPRyhB
cmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBNSU1FIHR5cGUgaXMgbm90IG9mIHR5cGUgQ0ZT
dHJpbmcsIGNhbm5vdCBjcmVhdGUgaW52YWxpZCByZXNvdXJjZSIpOwogICAgICAgICByZXR1cm4g
bnVsbHB0cjsKICAgICB9Ci0gICAgCi0gICAgQ0ZTdHJpbmdSZWYgdXJsID0gc3RhdGljX2Nhc3Q8
Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFy
Y2hpdmVSZXNvdXJjZVVSTEtleSkpOworCisgICAgYXV0byB1cmwgPSBzdGF0aWNfY2FzdDxDRlN0
cmluZ1JlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2
ZVJlc291cmNlVVJMS2V5KSk7CiAgICAgaWYgKHVybCAmJiBDRkdldFR5cGVJRCh1cmwpICE9IENG
U3RyaW5nR2V0VHlwZUlEKCkpIHsKICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJj
aGl2ZSAtIFVSTCBpcyBub3Qgb2YgdHlwZSBDRlN0cmluZywgY2Fubm90IGNyZWF0ZSBpbnZhbGlk
IHJlc291cmNlIik7CiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIH0KLSAgICAKLSAgICBD
RlN0cmluZ1JlZiB0ZXh0RW5jb2RpbmcgPSBzdGF0aWNfY2FzdDxDRlN0cmluZ1JlZj4oQ0ZEaWN0
aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlVGV4dEVu
Y29kaW5nTmFtZUtleSkpOworCisgICAgYXV0byB0ZXh0RW5jb2RpbmcgPSBzdGF0aWNfY2FzdDxD
RlN0cmluZ1JlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJj
aGl2ZVJlc291cmNlVGV4dEVuY29kaW5nTmFtZUtleSkpOwogICAgIGlmICh0ZXh0RW5jb2Rpbmcg
JiYgQ0ZHZXRUeXBlSUQodGV4dEVuY29kaW5nKSAhPSBDRlN0cmluZ0dldFR5cGVJRCgpKSB7CiAg
ICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBUZXh0IGVuY29kaW5nIGlz
IG5vdCBvZiB0eXBlIENGU3RyaW5nLCBjYW5ub3QgY3JlYXRlIGludmFsaWQgcmVzb3VyY2UiKTsK
ICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQogCiAgICAgUmVzb3VyY2VSZXNwb25zZSBy
ZXNwb25zZTsKLSAgICAKLSAgICBDRkRhdGFSZWYgcmVzb3VyY2VSZXNwb25zZURhdGEgPSBzdGF0
aWNfY2FzdDxDRkRhdGFSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2Fj
eVdlYkFyY2hpdmVSZXNvdXJjZVJlc3BvbnNlS2V5KSk7Ci0gICAgaWYgKHJlc291cmNlUmVzcG9u
c2VEYXRhKSB7CisKKyAgICBpZiAoYXV0byByZXNvdXJjZVJlc3BvbnNlRGF0YSA9IHN0YXRpY19j
YXN0PENGRGF0YVJlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2Vi
QXJjaGl2ZVJlc291cmNlUmVzcG9uc2VLZXkpKSkgewogICAgICAgICBpZiAoQ0ZHZXRUeXBlSUQo
cmVzb3VyY2VSZXNwb25zZURhdGEpICE9IENGRGF0YUdldFR5cGVJRCgpKSB7CiAgICAgICAgICAg
ICBMT0coQXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZlIC0gUmVzb3VyY2UgcmVzcG9uc2UgZGF0
YSBpcyBub3Qgb2YgdHlwZSBDRkRhdGEsIGNhbm5vdCBjcmVhdGUgaW52YWxpZCByZXNvdXJjZSIp
OwogICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgICAgIH0KICAgICAgICAgCi0gICAg
ICAgIENGU3RyaW5nUmVmIHJlc291cmNlUmVzcG9uc2VWZXJzaW9uID0gc3RhdGljX2Nhc3Q8Q0ZT
dHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hp
dmVSZXNvdXJjZVJlc3BvbnNlVmVyc2lvbktleSkpOworICAgICAgICBhdXRvIHJlc291cmNlUmVz
cG9uc2VWZXJzaW9uID0gc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZh
bHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZVJlc3BvbnNlVmVyc2lvbktl
eSkpOwogICAgICAgICBpZiAocmVzb3VyY2VSZXNwb25zZVZlcnNpb24gJiYgQ0ZHZXRUeXBlSUQo
cmVzb3VyY2VSZXNwb25zZVZlcnNpb24pICE9IENGU3RyaW5nR2V0VHlwZUlEKCkpIHsKICAgICAg
ICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBSZXNvdXJjZSByZXNwb25z
ZSB2ZXJzaW9uIGlzIG5vdCBvZiB0eXBlIENGU3RyaW5nLCBjYW5ub3QgY3JlYXRlIGludmFsaWQg
cmVzb3VyY2UiKTsKICAgICAgICAgICAgIHJldHVybiBudWxscHRyOwpAQCAtMjI0LDcgKzIyMCw3
IEBAIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVJlc291
cmNlKENGRGljdGlvbmFyeVJlZiBkaWN0aW9uCiAgICAgICAgIAogICAgICAgICByZXNwb25zZSA9
IGNyZWF0ZVJlc291cmNlUmVzcG9uc2VGcm9tUHJvcGVydHlMaXN0RGF0YShyZXNvdXJjZVJlc3Bv
bnNlRGF0YSwgcmVzb3VyY2VSZXNwb25zZVZlcnNpb24pOwogICAgIH0KLSAgICAKKwogICAgIHJl
dHVybiBBcmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShTaGFyZWRCdWZmZXI6OndyYXBDRkRhdGEocmVz
b3VyY2VEYXRhKSwgVVJMKFVSTCgpLCB1cmwpLCBtaW1lVHlwZSwgdGV4dEVuY29kaW5nLCBmcmFt
ZU5hbWUsIHJlc3BvbnNlKTsKIH0KIApAQCAtMjMzLDIxICsyMjksMTkgQEAgUmVmPExlZ2FjeVdl
YkFyY2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZSgpCiAgICAgcmV0dXJuIGFkb3B0UmVm
KCpuZXcgTGVnYWN5V2ViQXJjaGl2ZSk7CiB9CiAKLVJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBM
ZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4mJiBtYWluUmVz
b3VyY2UsIFZlY3RvcjxSZWZQdHI8QXJjaGl2ZVJlc291cmNlPj4mJiBzdWJyZXNvdXJjZXMsIFZl
Y3RvcjxSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4+JiYgc3ViZnJhbWVBcmNoaXZlcykKK1JlZjxM
ZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoUmVmPEFyY2hpdmVSZXNv
dXJjZT4mJiBtYWluUmVzb3VyY2UsIFZlY3RvcjxSZWY8QXJjaGl2ZVJlc291cmNlPj4mJiBzdWJy
ZXNvdXJjZXMsIFZlY3RvcjxSZWY8TGVnYWN5V2ViQXJjaGl2ZT4+JiYgc3ViZnJhbWVBcmNoaXZl
cykKIHsKLSAgICBpZiAoIW1haW5SZXNvdXJjZSkKLSAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0K
ICAgICBhdXRvIGFyY2hpdmUgPSBjcmVhdGUoKTsKKwogICAgIGFyY2hpdmUtPnNldE1haW5SZXNv
dXJjZShXVEZNb3ZlKG1haW5SZXNvdXJjZSkpOwotICAgIAorCiAgICAgZm9yIChhdXRvJiBzdWJy
ZXNvdXJjZSA6IHN1YnJlc291cmNlcykKICAgICAgICAgYXJjaGl2ZS0+YWRkU3VicmVzb3VyY2Uo
V1RGTW92ZShzdWJyZXNvdXJjZSkpOwogCiAgICAgZm9yIChhdXRvJiBzdWJmcmFtZUFyY2hpdmUg
OiBzdWJmcmFtZUFyY2hpdmVzKQogICAgICAgICBhcmNoaXZlLT5hZGRTdWJmcmFtZUFyY2hpdmUo
V1RGTW92ZShzdWJmcmFtZUFyY2hpdmUpKTsKIAotICAgIHJldHVybiBXVEZNb3ZlKGFyY2hpdmUp
OworICAgIHJldHVybiBhcmNoaXZlOwogfQogCiBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVn
YWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFNoYXJlZEJ1ZmZlciYgZGF0YSkKQEAgLTMwNyw0OCArMzAx
LDUwIEBAIGJvb2wgTGVnYWN5V2ViQXJjaGl2ZTo6ZXh0cmFjdChDRkRpY3Rpb25hcnlSZWYgZGlj
dGlvbmFyeSkKICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIE1haW4g
cmVzb3VyY2UgaXMgbm90IHRoZSBleHBlY3RlZCBDRkRpY3Rpb25hcnksIGFib3J0aW5nIGludmFs
aWQgV2ViQXJjaGl2ZSIpOwogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQotICAgIAotICAg
IHNldE1haW5SZXNvdXJjZShjcmVhdGVSZXNvdXJjZShtYWluUmVzb3VyY2VEaWN0KSk7Ci0gICAg
aWYgKCFtYWluUmVzb3VyY2UoKSkgeworCisgICAgYXV0byBtYWluUmVzb3VyY2UgPSBjcmVhdGVS
ZXNvdXJjZShtYWluUmVzb3VyY2VEaWN0KTsKKyAgICBpZiAoIW1haW5SZXNvdXJjZSkgewogICAg
ICAgICBMT0coQXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZlIC0gRmFpbGVkIHRvIHBhcnNlIG1h
aW4gcmVzb3VyY2UgZnJvbSBDRkRpY3Rpb25hcnkgb3IgbWFpbiByZXNvdXJjZSBkb2VzIG5vdCBl
eGlzdCwgYWJvcnRpbmcgaW52YWxpZCBXZWJBcmNoaXZlIik7CiAgICAgICAgIHJldHVybiBmYWxz
ZTsKICAgICB9Ci0gICAgCi0gICAgaWYgKG1haW5SZXNvdXJjZSgpLT5taW1lVHlwZSgpLmlzTnVs
bCgpKSB7CisKKyAgICBpZiAobWFpblJlc291cmNlLT5taW1lVHlwZSgpLmlzTnVsbCgpKSB7CiAg
ICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBNYWluIHJlc291cmNlIE1J
TUUgdHlwZSBpcyByZXF1aXJlZCwgYnV0IHdhcyBudWxsLiIpOwogICAgICAgICByZXR1cm4gZmFs
c2U7CiAgICAgfQotICAgIAotICAgIENGQXJyYXlSZWYgc3VicmVzb3VyY2VBcnJheSA9IHN0YXRp
Y19jYXN0PENGQXJyYXlSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2Fj
eVdlYkFyY2hpdmVTdWJyZXNvdXJjZXNLZXkpKTsKKworICAgIHNldE1haW5SZXNvdXJjZShtYWlu
UmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSk7CisKKyAgICBhdXRvIHN1YnJlc291cmNlQXJyYXkg
PSBzdGF0aWNfY2FzdDxDRkFycmF5UmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5
LCBMZWdhY3lXZWJBcmNoaXZlU3VicmVzb3VyY2VzS2V5KSk7CiAgICAgaWYgKHN1YnJlc291cmNl
QXJyYXkgJiYgQ0ZHZXRUeXBlSUQoc3VicmVzb3VyY2VBcnJheSkgIT0gQ0ZBcnJheUdldFR5cGVJ
RCgpKSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBTdWJyZXNv
dXJjZXMgaXMgbm90IHRoZSBleHBlY3RlZCBBcnJheSwgYWJvcnRpbmcgaW52YWxpZCBXZWJBcmNo
aXZlIik7CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9Ci0gICAgCisKICAgICBpZiAoc3Vi
cmVzb3VyY2VBcnJheSkgewotICAgICAgICBDRkluZGV4IGNvdW50ID0gQ0ZBcnJheUdldENvdW50
KHN1YnJlc291cmNlQXJyYXkpOworICAgICAgICBhdXRvIGNvdW50ID0gQ0ZBcnJheUdldENvdW50
KHN1YnJlc291cmNlQXJyYXkpOwogICAgICAgICBmb3IgKENGSW5kZXggaSA9IDA7IGkgPCBjb3Vu
dDsgKytpKSB7Ci0gICAgICAgICAgICBDRkRpY3Rpb25hcnlSZWYgc3VicmVzb3VyY2VEaWN0ID0g
c3RhdGljX2Nhc3Q8Q0ZEaWN0aW9uYXJ5UmVmPihDRkFycmF5R2V0VmFsdWVBdEluZGV4KHN1YnJl
c291cmNlQXJyYXksIGkpKTsKKyAgICAgICAgICAgIGF1dG8gc3VicmVzb3VyY2VEaWN0ID0gc3Rh
dGljX2Nhc3Q8Q0ZEaWN0aW9uYXJ5UmVmPihDRkFycmF5R2V0VmFsdWVBdEluZGV4KHN1YnJlc291
cmNlQXJyYXksIGkpKTsKICAgICAgICAgICAgIGlmIChDRkdldFR5cGVJRChzdWJyZXNvdXJjZURp
Y3QpICE9IENGRGljdGlvbmFyeUdldFR5cGVJRCgpKSB7CiAgICAgICAgICAgICAgICAgTE9HKEFy
Y2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIFN1YnJlc291cmNlIGlzIG5vdCBleHBlY3RlZCBD
RkRpY3Rpb25hcnksIGFib3J0aW5nIGludmFsaWQgV2ViQXJjaGl2ZSIpOwogICAgICAgICAgICAg
ICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIAogICAgICAgICAg
ICAgaWYgKGF1dG8gc3VicmVzb3VyY2UgPSBjcmVhdGVSZXNvdXJjZShzdWJyZXNvdXJjZURpY3Qp
KQotICAgICAgICAgICAgICAgIGFkZFN1YnJlc291cmNlKFdURk1vdmUoc3VicmVzb3VyY2UpKTsK
KyAgICAgICAgICAgICAgICBhZGRTdWJyZXNvdXJjZShzdWJyZXNvdXJjZS5yZWxlYXNlTm9uTnVs
bCgpKTsKICAgICAgICAgfQogICAgIH0KLSAgICAKLSAgICBDRkFycmF5UmVmIHN1YmZyYW1lQXJy
YXkgPSBzdGF0aWNfY2FzdDxDRkFycmF5UmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9u
YXJ5LCBMZWdhY3lXZWJBcmNoaXZlU3ViZnJhbWVBcmNoaXZlc0tleSkpOworCisgICAgYXV0byBz
dWJmcmFtZUFycmF5ID0gc3RhdGljX2Nhc3Q8Q0ZBcnJheVJlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFs
dWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVN1YmZyYW1lQXJjaGl2ZXNLZXkpKTsKICAg
ICBpZiAoc3ViZnJhbWVBcnJheSAmJiBDRkdldFR5cGVJRChzdWJmcmFtZUFycmF5KSAhPSBDRkFy
cmF5R2V0VHlwZUlEKCkpIHsKICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2
ZSAtIFN1YmZyYW1lIGFyY2hpdmVzIGlzIG5vdCB0aGUgZXhwZWN0ZWQgQXJyYXksIGFib3J0aW5n
IGludmFsaWQgV2ViQXJjaGl2ZSIpOwogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQotICAg
IAorCiAgICAgaWYgKHN1YmZyYW1lQXJyYXkpIHsKLSAgICAgICAgQ0ZJbmRleCBjb3VudCA9IENG
QXJyYXlHZXRDb3VudChzdWJmcmFtZUFycmF5KTsKKyAgICAgICAgYXV0byBjb3VudCA9IENGQXJy
YXlHZXRDb3VudChzdWJmcmFtZUFycmF5KTsKICAgICAgICAgZm9yIChDRkluZGV4IGkgPSAwOyBp
IDwgY291bnQ7ICsraSkgewotICAgICAgICAgICAgQ0ZEaWN0aW9uYXJ5UmVmIHN1YmZyYW1lRGlj
dCA9IHN0YXRpY19jYXN0PENGRGljdGlvbmFyeVJlZj4oQ0ZBcnJheUdldFZhbHVlQXRJbmRleChz
dWJmcmFtZUFycmF5LCBpKSk7CisgICAgICAgICAgICBhdXRvIHN1YmZyYW1lRGljdCA9IHN0YXRp
Y19jYXN0PENGRGljdGlvbmFyeVJlZj4oQ0ZBcnJheUdldFZhbHVlQXRJbmRleChzdWJmcmFtZUFy
cmF5LCBpKSk7CiAgICAgICAgICAgICBpZiAoQ0ZHZXRUeXBlSUQoc3ViZnJhbWVEaWN0KSAhPSBD
RkRpY3Rpb25hcnlHZXRUeXBlSUQoKSkgewogICAgICAgICAgICAgICAgIExPRyhBcmNoaXZlcywg
IkxlZ2FjeVdlYkFyY2hpdmUgLSBTdWJmcmFtZSBhcnJheSBpcyBub3QgZXhwZWN0ZWQgQ0ZEaWN0
aW9uYXJ5LCBhYm9ydGluZyBpbnZhbGlkIFdlYkFyY2hpdmUiKTsKICAgICAgICAgICAgICAgICBy
ZXR1cm4gZmFsc2U7CkBAIC0zNjUsMjYgKzM2MSwyMSBAQCBib29sIExlZ2FjeVdlYkFyY2hpdmU6
OmV4dHJhY3QoQ0ZEaWN0aW9uYXJ5UmVmIGRpY3Rpb25hcnkpCiAgICAgcmV0dXJuIHRydWU7CiB9
CiAKLUFyY2hpdmU6OlR5cGUgTGVnYWN5V2ViQXJjaGl2ZTo6dHlwZSgpIGNvbnN0Ci17Ci0gICAg
cmV0dXJuIEFyY2hpdmU6OldlYkFyY2hpdmU7Ci19Ci0gICAgCiBSZXRhaW5QdHI8Q0ZEYXRhUmVm
PiBMZWdhY3lXZWJBcmNoaXZlOjpyYXdEYXRhUmVwcmVzZW50YXRpb24oKQogewotICAgIFJldGFp
blB0cjxDRkRpY3Rpb25hcnlSZWY+IHByb3BlcnR5TGlzdCA9IGNyZWF0ZVByb3BlcnR5TGlzdFJl
cHJlc2VudGF0aW9uKHRoaXMpOworICAgIGF1dG8gcHJvcGVydHlMaXN0ID0gY3JlYXRlUHJvcGVy
dHlMaXN0UmVwcmVzZW50YXRpb24oKnRoaXMpOwogICAgIEFTU0VSVChwcm9wZXJ0eUxpc3QpOwog
ICAgIGlmICghcHJvcGVydHlMaXN0KSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdl
YkFyY2hpdmUgLSBGYWlsZWQgdG8gY3JlYXRlIHByb3BlcnR5IGxpc3QgZm9yIGFyY2hpdmUsIHJl
dHVybmluZyBubyBkYXRhIik7CiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIH0KIAotICAg
IFJldGFpblB0cjxDRldyaXRlU3RyZWFtUmVmPiBzdHJlYW0gPSBhZG9wdENGKENGV3JpdGVTdHJl
YW1DcmVhdGVXaXRoQWxsb2NhdGVkQnVmZmVycygwLCAwKSk7CisgICAgYXV0byBzdHJlYW0gPSBh
ZG9wdENGKENGV3JpdGVTdHJlYW1DcmVhdGVXaXRoQWxsb2NhdGVkQnVmZmVycygwLCAwKSk7CiAK
ICAgICBDRldyaXRlU3RyZWFtT3BlbihzdHJlYW0uZ2V0KCkpOwogICAgIENGUHJvcGVydHlMaXN0
V3JpdGUocHJvcGVydHlMaXN0LmdldCgpLCBzdHJlYW0uZ2V0KCksIGtDRlByb3BlcnR5TGlzdEJp
bmFyeUZvcm1hdF92MV8wLCAwLCAwKTsKIAotICAgIFJldGFpblB0cjxDRkRhdGFSZWY+IHBsaXN0
RGF0YSA9IGFkb3B0Q0Yoc3RhdGljX2Nhc3Q8Q0ZEYXRhUmVmPihDRldyaXRlU3RyZWFtQ29weVBy
b3BlcnR5KHN0cmVhbS5nZXQoKSwga0NGU3RyZWFtUHJvcGVydHlEYXRhV3JpdHRlbikpKTsKKyAg
ICBhdXRvIHBsaXN0RGF0YSA9IGFkb3B0Q0Yoc3RhdGljX2Nhc3Q8Q0ZEYXRhUmVmPihDRldyaXRl
U3RyZWFtQ29weVByb3BlcnR5KHN0cmVhbS5nZXQoKSwga0NGU3RyZWFtUHJvcGVydHlEYXRhV3Jp
dHRlbikpKTsKICAgICBBU1NFUlQocGxpc3REYXRhKTsKIAogICAgIENGV3JpdGVTdHJlYW1DbG9z
ZShzdHJlYW0uZ2V0KCkpOwpAQCAtNDMyLDcgKzQyMyw3IEBAIFJlZlB0cjxMZWdhY3lXZWJBcmNo
aXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoTm9kZSYgbm9kZSwgc3RkOjpmdW5jdGlvbjxi
b29sCiAKICAgICBWZWN0b3I8Tm9kZSo+IG5vZGVMaXN0OwogICAgIFN0cmluZyBtYXJrdXBTdHJp
bmcgPSBjcmVhdGVNYXJrdXAobm9kZSwgSW5jbHVkZU5vZGUsICZub2RlTGlzdCwgRG9Ob3RSZXNv
bHZlVVJMcywgdGFnTmFtZXNUb0ZpbHRlci5nZXQoKSk7Ci0gICAgTm9kZTo6Tm9kZVR5cGUgbm9k
ZVR5cGUgPSBub2RlLm5vZGVUeXBlKCk7CisgICAgYXV0byBub2RlVHlwZSA9IG5vZGUubm9kZVR5
cGUoKTsKICAgICBpZiAobm9kZVR5cGUgIT0gTm9kZTo6RE9DVU1FTlRfTk9ERSAmJiBub2RlVHlw
ZSAhPSBOb2RlOjpET0NVTUVOVF9UWVBFX05PREUpCiAgICAgICAgIG1hcmt1cFN0cmluZyA9IGRv
Y3VtZW50VHlwZVN0cmluZyhub2RlLmRvY3VtZW50KCkpICsgbWFya3VwU3RyaW5nOwogCkBAIC00
NDEsMjAgKzQzMiwyMSBAQCBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2
ZTo6Y3JlYXRlKE5vZGUmIG5vZGUsIHN0ZDo6ZnVuY3Rpb248Ym9vbAogCiBSZWZQdHI8TGVnYWN5
V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKEZyYW1lJiBmcmFtZSkKIHsKLSAg
ICBEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIgPSBmcmFtZS5sb2FkZXIoKS5kb2N1bWVu
dExvYWRlcigpOwotCisgICAgYXV0byogZG9jdW1lbnRMb2FkZXIgPSBmcmFtZS5sb2FkZXIoKS5k
b2N1bWVudExvYWRlcigpOwogICAgIGlmICghZG9jdW1lbnRMb2FkZXIpCiAgICAgICAgIHJldHVy
biBudWxscHRyOwotICAgICAgICAKLSAgICBWZWN0b3I8UmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+
PiBzdWJmcmFtZUFyY2hpdmVzOwotICAgIAorCisgICAgYXV0byBtYWluUmVzb3VyY2UgPSBkb2N1
bWVudExvYWRlci0+bWFpblJlc291cmNlKCk7CisgICAgaWYgKCFtYWluUmVzb3VyY2UpCisgICAg
ICAgIHJldHVybiBudWxscHRyOworCisgICAgVmVjdG9yPFJlZjxMZWdhY3lXZWJBcmNoaXZlPj4g
c3ViZnJhbWVBcmNoaXZlczsKICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgZnJhbWUudHJl
ZSgpLmNoaWxkQ291bnQoKTsgKytpKSB7Ci0gICAgICAgIGlmIChSZWZQdHI8TGVnYWN5V2ViQXJj
aGl2ZT4gY2hpbGRGcmFtZUFyY2hpdmUgPSBjcmVhdGUoKmZyYW1lLnRyZWUoKS5jaGlsZChpKSkp
Ci0gICAgICAgICAgICBzdWJmcmFtZUFyY2hpdmVzLmFwcGVuZChXVEZNb3ZlKGNoaWxkRnJhbWVB
cmNoaXZlKSk7CisgICAgICAgIGlmIChhdXRvIGNoaWxkRnJhbWVBcmNoaXZlID0gY3JlYXRlKCpm
cmFtZS50cmVlKCkuY2hpbGQoaSkpKQorICAgICAgICAgICAgc3ViZnJhbWVBcmNoaXZlcy5hcHBl
bmQoY2hpbGRGcmFtZUFyY2hpdmUucmVsZWFzZU5vbk51bGwoKSk7CiAgICAgfQogCi0gICAgYXV0
byBzdWJyZXNvdXJjZXMgPSBkb2N1bWVudExvYWRlci0+c3VicmVzb3VyY2VzKCk7Ci0gICAgcmV0
dXJuIGNyZWF0ZShkb2N1bWVudExvYWRlci0+bWFpblJlc291cmNlKCksIFdURk1vdmUoc3VicmVz
b3VyY2VzKSwgV1RGTW92ZShzdWJmcmFtZUFyY2hpdmVzKSk7CisgICAgcmV0dXJuIGNyZWF0ZSht
YWluUmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSwgZG9jdW1lbnRMb2FkZXItPnN1YnJlc291cmNl
cygpLCBXVEZNb3ZlKHN1YmZyYW1lQXJjaGl2ZXMpKTsKIH0KIAogUmVmUHRyPExlZ2FjeVdlYkFy
Y2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShSYW5nZSogcmFuZ2UpCkBAIC00NjIsMjIg
KzQ1NCwyMCBAQCBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3Jl
YXRlKFJhbmdlKiByYW5nZSkKICAgICBpZiAoIXJhbmdlKQogICAgICAgICByZXR1cm4gbnVsbHB0
cjsKICAgICAgICAgCi0gICAgRG9jdW1lbnQmIGRvY3VtZW50ID0gcmFuZ2UtPnN0YXJ0Q29udGFp
bmVyKCkuZG9jdW1lbnQoKTsKLQotICAgIEZyYW1lKiBmcmFtZSA9IGRvY3VtZW50LmZyYW1lKCk7
CisgICAgYXV0byYgZG9jdW1lbnQgPSByYW5nZS0+c3RhcnRDb250YWluZXIoKS5kb2N1bWVudCgp
OworICAgIGF1dG8qIGZyYW1lID0gZG9jdW1lbnQuZnJhbWUoKTsKICAgICBpZiAoIWZyYW1lKQog
ICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICAKLSAgICAvLyBGSVhNRTogVGhpcyBpcyBhbHdh
eXMgImZvciBpbnRlcmNoYW5nZSIuIElzIHRoYXQgcmlnaHQ/IFNlZSB0aGUgcHJldmlvdXMgbWV0
aG9kLgorCisgICAgLy8gRklYTUU6IFRoaXMgaXMgYWx3YXlzICJmb3IgaW50ZXJjaGFuZ2UiLiBJ
cyB0aGF0IHJpZ2h0PwogICAgIFZlY3RvcjxOb2RlKj4gbm9kZUxpc3Q7CiAgICAgU3RyaW5nIG1h
cmt1cFN0cmluZyA9IGRvY3VtZW50VHlwZVN0cmluZyhkb2N1bWVudCkgKyBjcmVhdGVNYXJrdXAo
KnJhbmdlLCAmbm9kZUxpc3QsIEFubm90YXRlRm9ySW50ZXJjaGFuZ2UpOwotCiAgICAgcmV0dXJu
IGNyZWF0ZShtYXJrdXBTdHJpbmcsICpmcmFtZSwgbm9kZUxpc3QsIG51bGxwdHIpOwogfQogCiBS
ZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKGNvbnN0IFN0
cmluZyYgbWFya3VwU3RyaW5nLCBGcmFtZSYgZnJhbWUsIGNvbnN0IFZlY3RvcjxOb2RlKj4mIG5v
ZGVzLCBzdGQ6OmZ1bmN0aW9uPGJvb2wgKEZyYW1lJik+IGZyYW1lRmlsdGVyKQogewotICAgIGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlID0gZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRM
b2FkZXIoKS0+cmVzcG9uc2UoKTsKKyAgICBhdXRvJiByZXNwb25zZSA9IGZyYW1lLmxvYWRlcigp
LmRvY3VtZW50TG9hZGVyKCktPnJlc3BvbnNlKCk7CiAgICAgVVJMIHJlc3BvbnNlVVJMID0gcmVz
cG9uc2UudXJsKCk7CiAgICAgCiAgICAgLy8gaXQncyBwb3NzaWJsZSB0byBoYXZlIGEgcmVzcG9u
c2Ugd2l0aG91dCBhIFVSTCBoZXJlCkBAIC00ODUsNDIgKzQ3NSw0MSBAQCBSZWZQdHI8TGVnYWN5
V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKGNvbnN0IFN0cmluZyYgbWFya3Vw
U3RyaW5nLCBGcgogICAgIGlmIChyZXNwb25zZVVSTC5pc051bGwoKSkKICAgICAgICAgcmVzcG9u
c2VVUkwgPSBVUkwoUGFyc2VkVVJMU3RyaW5nLCBlbXB0eVN0cmluZygpKTsKIAotICAgIFJlZlB0
cjxBcmNoaXZlUmVzb3VyY2U+IG1haW5SZXNvdXJjZSA9IEFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRl
KHV0ZjhCdWZmZXIobWFya3VwU3RyaW5nKSwgcmVzcG9uc2VVUkwsIHJlc3BvbnNlLm1pbWVUeXBl
KCksICJVVEYtOCIsIGZyYW1lLnRyZWUoKS51bmlxdWVOYW1lKCkpOworICAgIGF1dG8gbWFpblJl
c291cmNlID0gQXJjaGl2ZVJlc291cmNlOjpjcmVhdGUodXRmOEJ1ZmZlcihtYXJrdXBTdHJpbmcp
LCByZXNwb25zZVVSTCwgcmVzcG9uc2UubWltZVR5cGUoKSwgIlVURi04IiwgZnJhbWUudHJlZSgp
LnVuaXF1ZU5hbWUoKSk7CiAgICAgaWYgKCFtYWluUmVzb3VyY2UpCiAgICAgICAgIHJldHVybiBu
dWxscHRyOwogCi0gICAgVmVjdG9yPFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPj4gc3ViZnJhbWVB
cmNoaXZlczsKLSAgICBWZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+IHN1YnJlc291cmNl
czsKKyAgICBWZWN0b3I8UmVmPExlZ2FjeVdlYkFyY2hpdmU+PiBzdWJmcmFtZUFyY2hpdmVzOwor
ICAgIFZlY3RvcjxSZWY8QXJjaGl2ZVJlc291cmNlPj4gc3VicmVzb3VyY2VzOwogICAgIEhhc2hT
ZXQ8VVJMPiB1bmlxdWVTdWJyZXNvdXJjZXM7CiAKLSAgICBzaXplX3Qgbm9kZXNTaXplID0gbm9k
ZXMuc2l6ZSgpOyAgICAKLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG5vZGVzU2l6ZTsgKytp
KSB7Ci0gICAgICAgIE5vZGUmIG5vZGUgPSAqbm9kZXNbaV07CisgICAgZm9yIChhdXRvJiBub2Rl
UHRyIDogbm9kZXMpIHsKKyAgICAgICAgTm9kZSYgbm9kZSA9ICpub2RlUHRyOwogICAgICAgICBG
cmFtZSogY2hpbGRGcmFtZTsKICAgICAgICAgaWYgKChpczxIVE1MRnJhbWVFbGVtZW50QmFzZT4o
bm9kZSkgfHwgaXM8SFRNTE9iamVjdEVsZW1lbnQ+KG5vZGUpKQogICAgICAgICAgICAgJiYgKGNo
aWxkRnJhbWUgPSBkb3duY2FzdDxIVE1MRnJhbWVPd25lckVsZW1lbnQ+KG5vZGUpLmNvbnRlbnRG
cmFtZSgpKSkgewogICAgICAgICAgICAgaWYgKGZyYW1lRmlsdGVyICYmICFmcmFtZUZpbHRlcigq
Y2hpbGRGcmFtZSkpCiAgICAgICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgICAgICAgICAg
Ci0gICAgICAgICAgICBpZiAoUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IHN1YmZyYW1lQXJjaGl2
ZSA9IGNyZWF0ZSgqY2hpbGRGcmFtZS0+ZG9jdW1lbnQoKSwgZnJhbWVGaWx0ZXIpKQotICAgICAg
ICAgICAgICAgIHN1YmZyYW1lQXJjaGl2ZXMuYXBwZW5kKFdURk1vdmUoc3ViZnJhbWVBcmNoaXZl
KSk7CisgICAgICAgICAgICBpZiAoYXV0byBzdWJmcmFtZUFyY2hpdmUgPSBjcmVhdGUoKmNoaWxk
RnJhbWUtPmRvY3VtZW50KCksIGZyYW1lRmlsdGVyKSkKKyAgICAgICAgICAgICAgICBzdWJmcmFt
ZUFyY2hpdmVzLmFwcGVuZChzdWJmcmFtZUFyY2hpdmUucmVsZWFzZU5vbk51bGwoKSk7CiAgICAg
ICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgTE9HX0VSUk9SKCJVbmFibGVkIHRvIGFyY2hp
dmUgc3ViZnJhbWUgJXMiLCBjaGlsZEZyYW1lLT50cmVlKCkudW5pcXVlTmFtZSgpLnN0cmluZygp
LnV0ZjgoKS5kYXRhKCkpOwogCiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBMaXN0SGFz
aFNldDxVUkw+IHN1YnJlc291cmNlVVJMczsKICAgICAgICAgICAgIG5vZGUuZ2V0U3VicmVzb3Vy
Y2VVUkxzKHN1YnJlc291cmNlVVJMcyk7Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIERvY3Vt
ZW50TG9hZGVyKiBkb2N1bWVudExvYWRlciA9IGZyYW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVy
KCk7CiAKLSAgICAgICAgICAgIGZvciAoY29uc3QgYXV0byYgc3VicmVzb3VyY2VVUkwgOiBzdWJy
ZXNvdXJjZVVSTHMpIHsKKyAgICAgICAgICAgIEFTU0VSVChmcmFtZS5sb2FkZXIoKS5kb2N1bWVu
dExvYWRlcigpKTsKKyAgICAgICAgICAgIGF1dG8mIGRvY3VtZW50TG9hZGVyID0gKmZyYW1lLmxv
YWRlcigpLmRvY3VtZW50TG9hZGVyKCk7CisKKyAgICAgICAgICAgIGZvciAoYXV0byYgc3VicmVz
b3VyY2VVUkwgOiBzdWJyZXNvdXJjZVVSTHMpIHsKICAgICAgICAgICAgICAgICBpZiAodW5pcXVl
U3VicmVzb3VyY2VzLmNvbnRhaW5zKHN1YnJlc291cmNlVVJMKSkKICAgICAgICAgICAgICAgICAg
ICAgY29udGludWU7CiAKICAgICAgICAgICAgICAgICB1bmlxdWVTdWJyZXNvdXJjZXMuYWRkKHN1
YnJlc291cmNlVVJMKTsKIAotICAgICAgICAgICAgICAgIGlmIChSZWZQdHI8QXJjaGl2ZVJlc291
cmNlPiByZXNvdXJjZSA9IGRvY3VtZW50TG9hZGVyLT5zdWJyZXNvdXJjZShzdWJyZXNvdXJjZVVS
TCkpIHsKLSAgICAgICAgICAgICAgICAgICAgc3VicmVzb3VyY2VzLmFwcGVuZChXVEZNb3ZlKHJl
c291cmNlKSk7CisgICAgICAgICAgICAgICAgaWYgKGF1dG8gcmVzb3VyY2UgPSBkb2N1bWVudExv
YWRlci5zdWJyZXNvdXJjZShzdWJyZXNvdXJjZVVSTCkpIHsKKyAgICAgICAgICAgICAgICAgICAg
c3VicmVzb3VyY2VzLmFwcGVuZChyZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICAgICAg
ICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgICAgfQogCkBAIC01MjgsMTAgKzUx
Nyw5IEBAIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUo
Y29uc3QgU3RyaW5nJiBtYXJrdXBTdHJpbmcsIEZyCiAjaWYgRU5BQkxFKENBQ0hFX1BBUlRJVElP
TklORykKICAgICAgICAgICAgICAgICByZXF1ZXN0LnNldERvbWFpbkZvckNhY2hlUGFydGl0aW9u
KGZyYW1lLmRvY3VtZW50KCktPnRvcE9yaWdpbigpLT5kb21haW5Gb3JDYWNoZVBhcnRpdGlvbigp
KTsKICNlbmRpZgotICAgICAgICAgICAgICAgIENhY2hlZFJlc291cmNlKiBjYWNoZWRSZXNvdXJj
ZSA9IE1lbW9yeUNhY2hlOjpzaW5nbGV0b24oKS5yZXNvdXJjZUZvclJlcXVlc3QocmVxdWVzdCwg
ZnJhbWUucGFnZSgpLT5zZXNzaW9uSUQoKSk7Ci0gICAgICAgICAgICAgICAgaWYgKGNhY2hlZFJl
c291cmNlKSB7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChSZWZQdHI8QXJjaGl2ZVJlc291cmNl
PiByZXNvdXJjZSA9IEFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKGNhY2hlZFJlc291cmNlLT5yZXNv
dXJjZUJ1ZmZlcigpLCBzdWJyZXNvdXJjZVVSTCwgY2FjaGVkUmVzb3VyY2UtPnJlc3BvbnNlKCkp
KSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBzdWJyZXNvdXJjZXMuYXBwZW5kKFdURk1vdmUo
cmVzb3VyY2UpKTsKKyAgICAgICAgICAgICAgICBpZiAoYXV0byogY2FjaGVkUmVzb3VyY2UgPSBN
ZW1vcnlDYWNoZTo6c2luZ2xldG9uKCkucmVzb3VyY2VGb3JSZXF1ZXN0KHJlcXVlc3QsIGZyYW1l
LnBhZ2UoKS0+c2Vzc2lvbklEKCkpKSB7CisgICAgICAgICAgICAgICAgICAgIGlmIChhdXRvIHJl
c291cmNlID0gQXJjaGl2ZVJlc291cmNlOjpjcmVhdGUoY2FjaGVkUmVzb3VyY2UtPnJlc291cmNl
QnVmZmVyKCksIHN1YnJlc291cmNlVVJMLCBjYWNoZWRSZXNvdXJjZS0+cmVzcG9uc2UoKSkpIHsK
KyAgICAgICAgICAgICAgICAgICAgICAgIHN1YnJlc291cmNlcy5hcHBlbmQocmVzb3VyY2UucmVs
ZWFzZU5vbk51bGwoKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAg
ICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIH0KQEAgLTU0MywxNyArNTMxLDE3IEBA
IFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoY29uc3Qg
U3RyaW5nJiBtYXJrdXBTdHJpbmcsIEZyCiAgICAgfQogCiAgICAgLy8gQWRkIGZhdmljb24gaWYg
b25lIGV4aXN0cyBmb3IgdGhpcyBwYWdlLCBpZiB3ZSBhcmUgYXJjaGl2aW5nIHRoZSBlbnRpcmUg
cGFnZS4KLSAgICBpZiAobm9kZXNTaXplICYmIG5vZGVzWzBdLT5pc0RvY3VtZW50Tm9kZSgpICYm
IGljb25EYXRhYmFzZSgpLmlzRW5hYmxlZCgpKSB7Ci0gICAgICAgIGNvbnN0IFN0cmluZyYgaWNv
blVSTCA9IGljb25EYXRhYmFzZSgpLnN5bmNocm9ub3VzSWNvblVSTEZvclBhZ2VVUkwocmVzcG9u
c2VVUkwpOworICAgIGlmICghbm9kZXMuaXNFbXB0eSgpICYmIG5vZGVzWzBdLT5pc0RvY3VtZW50
Tm9kZSgpICYmIGljb25EYXRhYmFzZSgpLmlzRW5hYmxlZCgpKSB7CisgICAgICAgIGF1dG8gaWNv
blVSTCA9IGljb25EYXRhYmFzZSgpLnN5bmNocm9ub3VzSWNvblVSTEZvclBhZ2VVUkwocmVzcG9u
c2VVUkwpOwogICAgICAgICBpZiAoIWljb25VUkwuaXNFbXB0eSgpICYmIGljb25EYXRhYmFzZSgp
LnN5bmNocm9ub3VzSWNvbkRhdGFLbm93bkZvckljb25VUkwoaWNvblVSTCkpIHsKLSAgICAgICAg
ICAgIGlmIChJbWFnZSogaWNvbkltYWdlID0gaWNvbkRhdGFiYXNlKCkuc3luY2hyb25vdXNJY29u
Rm9yUGFnZVVSTChyZXNwb25zZVVSTCwgSW50U2l6ZSgxNiwgMTYpKSkgeworICAgICAgICAgICAg
aWYgKGF1dG8qIGljb25JbWFnZSA9IGljb25EYXRhYmFzZSgpLnN5bmNocm9ub3VzSWNvbkZvclBh
Z2VVUkwocmVzcG9uc2VVUkwsIEludFNpemUoMTYsIDE2KSkpIHsKICAgICAgICAgICAgICAgICBp
ZiAoYXV0byByZXNvdXJjZSA9IEFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKGljb25JbWFnZS0+ZGF0
YSgpLCBVUkwoUGFyc2VkVVJMU3RyaW5nLCBpY29uVVJMKSwgImltYWdlL3gtaWNvbiIsICIiLCAi
IikpCi0gICAgICAgICAgICAgICAgICAgIHN1YnJlc291cmNlcy5hcHBlbmQoV1RGTW92ZShyZXNv
dXJjZSkpOworICAgICAgICAgICAgICAgICAgICBzdWJyZXNvdXJjZXMuYXBwZW5kKHJlc291cmNl
LnJlbGVhc2VOb25OdWxsKCkpOwogICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgfQogCi0g
ICAgcmV0dXJuIGNyZWF0ZShXVEZNb3ZlKG1haW5SZXNvdXJjZSksIFdURk1vdmUoc3VicmVzb3Vy
Y2VzKSwgV1RGTW92ZShzdWJmcmFtZUFyY2hpdmVzKSk7CisgICAgcmV0dXJuIGNyZWF0ZShtYWlu
UmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSwgV1RGTW92ZShzdWJyZXNvdXJjZXMpLCBXVEZNb3Zl
KHN1YmZyYW1lQXJjaGl2ZXMpKTsKIH0KIAogUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2Fj
eVdlYkFyY2hpdmU6OmNyZWF0ZUZyb21TZWxlY3Rpb24oRnJhbWUqIGZyYW1lKQpAQCAtNTYxLDcg
KzU0OSw3IEBAIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVh
dGVGcm9tU2VsZWN0aW9uKEZyYW1lKiBmcmFtZSkKICAgICBpZiAoIWZyYW1lKQogICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKIAotICAgIERvY3VtZW50KiBkb2N1bWVudCA9IGZyYW1lLT5kb2N1bWVu
dCgpOworICAgIGF1dG8qIGRvY3VtZW50ID0gZnJhbWUtPmRvY3VtZW50KCk7CiAgICAgaWYgKCFk
b2N1bWVudCkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKQEAgLTU2OSwxMiArNTU3LDEwIEBA
IFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVGcm9tU2Vs
ZWN0aW9uKEZyYW1lKiBmcmFtZSkKICAgICBidWlsZGVyLmFwcGVuZChkb2N1bWVudFR5cGVTdHJp
bmcoKmRvY3VtZW50KSk7CiAKICAgICBWZWN0b3I8Tm9kZSo+IG5vZGVMaXN0OwotICAgIFJlZlB0
cjxSYW5nZT4gc2VsZWN0aW9uUmFuZ2UgPSBmcmFtZS0+c2VsZWN0aW9uKCkudG9Ob3JtYWxpemVk
UmFuZ2UoKTsKLSAgICBpZiAoc2VsZWN0aW9uUmFuZ2UpCisgICAgaWYgKGF1dG8gc2VsZWN0aW9u
UmFuZ2UgPSBmcmFtZS0+c2VsZWN0aW9uKCkudG9Ob3JtYWxpemVkUmFuZ2UoKSkKICAgICAgICAg
YnVpbGRlci5hcHBlbmQoY3JlYXRlTWFya3VwKCpzZWxlY3Rpb25SYW5nZSwgJm5vZGVMaXN0LCBB
bm5vdGF0ZUZvckludGVyY2hhbmdlKSk7CiAKLSAgICBTdHJpbmcgbWFya3VwU3RyaW5nID0gYnVp
bGRlci50b1N0cmluZygpOwotICAgIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBhcmNoaXZlID0g
Y3JlYXRlKG1hcmt1cFN0cmluZywgKmZyYW1lLCBub2RlTGlzdCwgbnVsbHB0cik7CisgICAgYXV0
byBhcmNoaXZlID0gY3JlYXRlKGJ1aWxkZXIudG9TdHJpbmcoKSwgKmZyYW1lLCBub2RlTGlzdCwg
bnVsbHB0cik7CiAgICAgCiAgICAgaWYgKCFkb2N1bWVudC0+aXNGcmFtZVNldCgpKQogICAgICAg
ICByZXR1cm4gYXJjaGl2ZTsKQEAgLTU4NCw3ICs1NzAsMTEgQEAgUmVmUHRyPExlZ2FjeVdlYkFy
Y2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZUZyb21TZWxlY3Rpb24oRnJhbWUqIGZyYW1l
KQogICAgIFN0cmluZyBpZnJhbWVNYXJrdXAgPSAiPGlmcmFtZSBmcmFtZWJvcmRlcj1cIm5vXCIg
bWFyZ2lud2lkdGg9XCIwXCIgbWFyZ2luaGVpZ2h0PVwiMFwiIHdpZHRoPVwiOTglJVwiIGhlaWdo
dD1cIjk4JSVcIiBzcmM9XCIiICsgZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCktPnJl
c3BvbnNlKCkudXJsKCkuc3RyaW5nKCkgKyAiXCI+PC9pZnJhbWU+IjsKICAgICBhdXRvIGlmcmFt
ZVJlc291cmNlID0gQXJjaGl2ZVJlc291cmNlOjpjcmVhdGUodXRmOEJ1ZmZlcihpZnJhbWVNYXJr
dXApLCBibGFua1VSTCgpLCAidGV4dC9odG1sIiwgIlVURi04IiwgU3RyaW5nKCkpOwogCi0gICAg
cmV0dXJuIGNyZWF0ZShXVEZNb3ZlKGlmcmFtZVJlc291cmNlKSwgVmVjdG9yPFJlZlB0cjxBcmNo
aXZlUmVzb3VyY2U+PigpLCBWZWN0b3I8UmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+PiB7IGFyY2hp
dmUgfSk7CisgICAgVmVjdG9yPFJlZjxMZWdhY3lXZWJBcmNoaXZlPj4gc3ViZnJhbWVBcmNoaXZl
czsKKyAgICBzdWJmcmFtZUFyY2hpdmVzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkoMSk7CisgICAg
c3ViZnJhbWVBcmNoaXZlcy51bmNoZWNrZWRBcHBlbmQoYXJjaGl2ZS5yZWxlYXNlTm9uTnVsbCgp
KTsKKworICAgIHJldHVybiBjcmVhdGUoaWZyYW1lUmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSwg
eyB9LCBXVEZNb3ZlKHN1YmZyYW1lQXJjaGl2ZXMpKTsKIH0KIAogfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvY2YvTGVnYWN5V2ViQXJjaGl2ZS5oIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvY2YvTGVnYWN5V2ViQXJjaGl2ZS5oCmluZGV4IDM1ZGRm
M2MyYTU5YzA4NjMzYmRkOWIyMTM0N2IzNmY4ZDI3NjJjMWEuLjQ0NjdkMGQ2YTAzZTA4MDNhZTZi
YTc1NjM5NzZlYmU1MjJhMTQ5OGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9h
cmNoaXZlL2NmL0xlZ2FjeVdlYkFyY2hpdmUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
YXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNoaXZlLmgKQEAgLTM3LDIzICszNywyNiBAQCBjbGFzcyBG
cmFtZTsKIGNsYXNzIE5vZGU7CiBjbGFzcyBSYW5nZTsKIAotY2xhc3MgTGVnYWN5V2ViQXJjaGl2
ZSA6IHB1YmxpYyBBcmNoaXZlIHsKK2NsYXNzIExlZ2FjeVdlYkFyY2hpdmUgZmluYWwgOiBwdWJs
aWMgQXJjaGl2ZSB7CiBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxMZWdh
Y3lXZWJBcmNoaXZlPiBjcmVhdGUoKTsKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmUHRy
PExlZ2FjeVdlYkFyY2hpdmU+IGNyZWF0ZShTaGFyZWRCdWZmZXImKTsKICAgICBXRUJDT1JFX0VY
UE9SVCBzdGF0aWMgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IGNyZWF0ZShjb25zdCBVUkwmLCBT
aGFyZWRCdWZmZXImKTsKLSAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmUHRyPExlZ2FjeVdl
YkFyY2hpdmU+IGNyZWF0ZShSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiYmIG1haW5SZXNvdXJjZSwg
VmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+PiYmIHN1YnJlc291cmNlcywgVmVjdG9yPFJl
ZlB0cjxMZWdhY3lXZWJBcmNoaXZlPj4mJiBzdWJmcmFtZUFyY2hpdmVzKTsKKyAgICBXRUJDT1JF
X0VYUE9SVCBzdGF0aWMgUmVmPExlZ2FjeVdlYkFyY2hpdmU+IGNyZWF0ZShSZWY8QXJjaGl2ZVJl
c291cmNlPiYmIG1haW5SZXNvdXJjZSwgVmVjdG9yPFJlZjxBcmNoaXZlUmVzb3VyY2U+PiYmIHN1
YnJlc291cmNlcywgVmVjdG9yPFJlZjxMZWdhY3lXZWJBcmNoaXZlPj4mJiBzdWJmcmFtZUFyY2hp
dmVzKTsKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+
IGNyZWF0ZShOb2RlJiwgc3RkOjpmdW5jdGlvbjxib29sKEZyYW1lJik+IGZyYW1lRmlsdGVyID0g
bnVsbHB0cik7CiAgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZlB0cjxMZWdhY3lXZWJBcmNo
aXZlPiBjcmVhdGUoRnJhbWUmKTsKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmUHRyPExl
Z2FjeVdlYkFyY2hpdmU+IGNyZWF0ZUZyb21TZWxlY3Rpb24oRnJhbWUqKTsKICAgICBXRUJDT1JF
X0VYUE9SVCBzdGF0aWMgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IGNyZWF0ZShSYW5nZSopOwog
Ci0gICAgVHlwZSB0eXBlKCkgY29uc3Qgb3ZlcnJpZGU7Ci0KICAgICBXRUJDT1JFX0VYUE9SVCBS
ZXRhaW5QdHI8Q0ZEYXRhUmVmPiByYXdEYXRhUmVwcmVzZW50YXRpb24oKTsKIAogcHJpdmF0ZToK
LSAgICBMZWdhY3lXZWJBcmNoaXZlKCkgeyB9CisgICAgTGVnYWN5V2ViQXJjaGl2ZSgpID0gZGVm
YXVsdDsKKworICAgIGJvb2wgc2hvdWxkTG9hZEZyb21BcmNoaXZlT25seSgpIGNvbnN0IGZpbmFs
IHsgcmV0dXJuIGZhbHNlOyB9CisgICAgYm9vbCBzaG91bGRPdmVycmlkZUJhc2VVUkwoKSBjb25z
dCBmaW5hbCB7IHJldHVybiBmYWxzZTsgfQorICAgIGJvb2wgc2hvdWxkVXNlTWFpblJlc291cmNl
RW5jb2RpbmcoKSBjb25zdCBmaW5hbCB7IHJldHVybiB0cnVlOyB9CisgICAgYm9vbCBzaG91bGRV
c2VNYWluUmVzb3VyY2VVUkwoKSBjb25zdCBmaW5hbCB7IHJldHVybiB0cnVlOyB9CiAKICAgICBl
bnVtIE1haW5SZXNvdXJjZVN0YXR1cyB7IFN1YnJlc291cmNlLCBNYWluUmVzb3VyY2UgfTsKIApA
QCAtNjIsNyArNjUsNyBAQCBwcml2YXRlOgogICAgIHN0YXRpYyBSZXNvdXJjZVJlc3BvbnNlIGNy
ZWF0ZVJlc291cmNlUmVzcG9uc2VGcm9tTWFjQXJjaGl2ZWREYXRhKENGRGF0YVJlZik7CiAgICAg
c3RhdGljIFJlc291cmNlUmVzcG9uc2UgY3JlYXRlUmVzb3VyY2VSZXNwb25zZUZyb21Qcm9wZXJ0
eUxpc3REYXRhKENGRGF0YVJlZiwgQ0ZTdHJpbmdSZWYgcmVzcG9uc2VEYXRhVHlwZSk7CiAgICAg
c3RhdGljIFJldGFpblB0cjxDRkRhdGFSZWY+IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0
aW9uKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICBzdGF0aWMgUmV0YWluUHRyPENGRGlj
dGlvbmFyeVJlZj4gY3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24oQXJjaGl2ZSopOwor
ICAgIHN0YXRpYyBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBjcmVhdGVQcm9wZXJ0eUxpc3RS
ZXByZXNlbnRhdGlvbihBcmNoaXZlJik7CiAgICAgc3RhdGljIFJldGFpblB0cjxDRkRpY3Rpb25h
cnlSZWY+IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKEFyY2hpdmVSZXNvdXJjZSos
IE1haW5SZXNvdXJjZVN0YXR1cyk7CiAKICAgICBib29sIGV4dHJhY3QoQ0ZEaWN0aW9uYXJ5UmVm
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL21odG1sL01IVE1M
QXJjaGl2ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRNTEFy
Y2hpdmUuY3BwCmluZGV4IGUxZjNhZDA2YTVmN2YyYjgwNTUzMTA0NWRhNGI4NmMyZDNjODJkZDMu
LjNlZmIwYWE4YzczZDIxNGQzZjU1NDA3YmY0OGFhZjA4NTRlNzlmNWYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL21odG1sL01IVE1MQXJjaGl2ZS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvbWh0bWwvTUhUTUxBcmNoaXZlLmNwcApAQCAt
MTMwLDcgKzEzMCw3IEBAIFJlZlB0cjxNSFRNTEFyY2hpdmU+IE1IVE1MQXJjaGl2ZTo6Y3JlYXRl
KGNvbnN0IFVSTCYgdXJsLCBTaGFyZWRCdWZmZXImIGRhdGEpCiAgICAgcmV0dXJuIG1haW5BcmNo
aXZlOwogfQogCi1QYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gTUhUTUxBcmNoaXZlOjpnZW5lcmF0
ZU1IVE1MRGF0YShQYWdlKiBwYWdlKQorUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gTUhUTUxBcmNoaXZl
OjpnZW5lcmF0ZU1IVE1MRGF0YShQYWdlKiBwYWdlKQogewogICAgIFZlY3RvcjxQYWdlU2VyaWFs
aXplcjo6UmVzb3VyY2U+IHJlc291cmNlczsKICAgICBQYWdlU2VyaWFsaXplciBwYWdlU2VyaWFs
aXplcigmcmVzb3VyY2VzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNo
aXZlL21odG1sL01IVE1MQXJjaGl2ZS5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUv
bWh0bWwvTUhUTUxBcmNoaXZlLmgKaW5kZXggY2EyMDAwMzc5YmRmNDEyZjRlNDEyNGVhZjIxYWJh
NjZhMTVlMzRiMi4uODUyNDY1OWFhYjIyMGRlMDc1YzY3N2FiNzBmMTlhY2NjODgxOGRmZiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvbWh0bWwvTUhUTUxBcmNoaXZl
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvbWh0bWwvTUhUTUxBcmNoaXZl
LmgKQEAgLTQwLDIyICs0MCwyNCBAQCBjbGFzcyBNSFRNTFBhcnNlcjsKIGNsYXNzIFBhZ2U7CiBj
bGFzcyBTaGFyZWRCdWZmZXI7CiAKLWNsYXNzIE1IVE1MQXJjaGl2ZSA6IHB1YmxpYyBBcmNoaXZl
IHsKK2NsYXNzIE1IVE1MQXJjaGl2ZSBmaW5hbCA6IHB1YmxpYyBBcmNoaXZlIHsKIHB1YmxpYzoK
LSAgICBUeXBlIHR5cGUoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBNSFRNTDsgfQotCiAgICAg
c3RhdGljIFJlZjxNSFRNTEFyY2hpdmU+IGNyZWF0ZSgpOwogICAgIHN0YXRpYyBSZWZQdHI8TUhU
TUxBcmNoaXZlPiBjcmVhdGUoY29uc3QgVVJMJiwgU2hhcmVkQnVmZmVyJik7CiAKLSAgICBzdGF0
aWMgUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGdlbmVyYXRlTUhUTUxEYXRhKFBhZ2UqKTsKKyAg
ICBzdGF0aWMgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZ2VuZXJhdGVNSFRNTERhdGEoUGFnZSopOwog
CiAgICAgdmlydHVhbCB+TUhUTUxBcmNoaXZlKCk7CiAKIHByaXZhdGU6Ci0gICAgc3RhdGljIFBh
c3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBnZW5lcmF0ZU1IVE1MRGF0YShQYWdlKiwgYm9vbCB1c2VC
aW5hcnlFbmNvZGluZyk7Ci0KICAgICBmcmllbmQgY2xhc3MgTUhUTUxQYXJzZXI7CisKICAgICBN
SFRNTEFyY2hpdmUoKTsKKworICAgIGJvb2wgc2hvdWxkTG9hZEZyb21BcmNoaXZlT25seSgpIGNv
bnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KKyAgICBib29sIHNob3VsZE92ZXJyaWRlQmFzZVVS
TCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KKyAgICBib29sIHNob3VsZFVzZU1haW5S
ZXNvdXJjZUVuY29kaW5nKCkgY29uc3QgZmluYWwgeyByZXR1cm4gZmFsc2U7IH0KKyAgICBib29s
IHNob3VsZFVzZU1haW5SZXNvdXJjZVVSTCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIGZhbHNlOyB9
CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5jcHAKaW5kZXggOGJmMDY5MWFjNDk2NjU1
MThjZmE4YWI1ZTkxMTA1MDdkZWQ3NzA2OS4uYWY0MGNjMjA0YWQwNDdmODVjMjM0MTdjYmNlN2Yx
OTdlM2JlNjI0MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hl
ZENTU1N0eWxlU2hlZXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNo
ZWRDU1NTdHlsZVNoZWV0LmNwcApAQCAtMyw3ICszLDcgQEAKICAgICBDb3B5cmlnaHQgKEMpIDIw
MDEgRGlyayBNdWVsbGVyIChtdWVsbGVyQGtkZS5vcmcpCiAgICAgQ29weXJpZ2h0IChDKSAyMDAy
IFdhbGRvIEJhc3RpYW4gKGJhc3RpYW5Aa2RlLm9yZykKICAgICBDb3B5cmlnaHQgKEMpIDIwMDYg
U2FtdWVsIFdlaW5pZyAoc2FtLndlaW5pZ0BnbWFpbC5jb20pCi0gICAgQ29weXJpZ2h0IChDKSAy
MDA0LCAyMDA1LCAyMDA2IEFwcGxlIEluYy4KKyAgICBDb3B5cmlnaHQgKEMpIDIwMDQtMjAxNyBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAKICAgICBUaGlzIGxpYnJhcnkgaXMgZnJl
ZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCiAgICAgbW9kaWZ5IGl0
IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKQEAgLTE5
LDkgKzE5LDYgQEAKICAgICBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENP
UFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bwogICAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5k
YXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCiAgICAgQm9zdG9u
LCBNQSAwMjExMC0xMzAxLCBVU0EuCi0KLSAgICBUaGlzIGNsYXNzIHByb3ZpZGVzIGFsbCBmdW5j
dGlvbmFsaXR5IG5lZWRlZCBmb3IgbG9hZGluZyBpbWFnZXMsIHN0eWxlIHNoZWV0cyBhbmQgaHRt
bAotICAgIHBhZ2VzIGZyb20gdGhlIHdlYi4gSXQgaGFzIGEgbWVtb3J5IGNhY2hlIGZvciB0aGVz
ZSBvYmplY3RzLgogKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgpAQCAtMTU2LDcgKzE1Myw3IEBA
IHZvaWQgQ2FjaGVkQ1NTU3R5bGVTaGVldDo6ZGVzdHJveURlY29kZWREYXRhKCkKICAgICBzZXRE
ZWNvZGVkU2l6ZSgwKTsKIH0KIAotUGFzc1JlZlB0cjxTdHlsZVNoZWV0Q29udGVudHM+IENhY2hl
ZENTU1N0eWxlU2hlZXQ6OnJlc3RvcmVQYXJzZWRTdHlsZVNoZWV0KGNvbnN0IENTU1BhcnNlckNv
bnRleHQmIGNvbnRleHQsIENhY2hlUG9saWN5IGNhY2hlUG9saWN5KQorUmVmUHRyPFN0eWxlU2hl
ZXRDb250ZW50cz4gQ2FjaGVkQ1NTU3R5bGVTaGVldDo6cmVzdG9yZVBhcnNlZFN0eWxlU2hlZXQo
Y29uc3QgQ1NTUGFyc2VyQ29udGV4dCYgY29udGV4dCwgQ2FjaGVQb2xpY3kgY2FjaGVQb2xpY3kp
CiB7CiAgICAgaWYgKCFtX3BhcnNlZFN0eWxlU2hlZXRDYWNoZSkKICAgICAgICAgcmV0dXJuIG51
bGxwdHI7CkBAIC0xODAsNyArMTc3LDcgQEAgUGFzc1JlZlB0cjxTdHlsZVNoZWV0Q29udGVudHM+
IENhY2hlZENTU1N0eWxlU2hlZXQ6OnJlc3RvcmVQYXJzZWRTdHlsZVNoZWV0KGNvbnMKIAogdm9p
ZCBDYWNoZWRDU1NTdHlsZVNoZWV0OjpzYXZlUGFyc2VkU3R5bGVTaGVldChSZWY8U3R5bGVTaGVl
dENvbnRlbnRzPiYmIHNoZWV0KQogewotICAgIEFTU0VSVChzaGVldC5nZXQoKS5pc0NhY2hlYWJs
ZSgpKTsKKyAgICBBU1NFUlQoc2hlZXQtPmlzQ2FjaGVhYmxlKCkpOwogCiAgICAgaWYgKG1fcGFy
c2VkU3R5bGVTaGVldENhY2hlKQogICAgICAgICBtX3BhcnNlZFN0eWxlU2hlZXRDYWNoZS0+cmVt
b3ZlZEZyb21NZW1vcnlDYWNoZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZENTU1N0eWxlU2hlZXQuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNo
ZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmgKaW5kZXggM2M4YWUyOGRkMjdhZWY4MGFlMmRlZWI0YTMz
NmU3NDg1NGU3ZWYwYy4uYzMzYWEyZTQwODU1MzhiYzdiNDU2ZjQxNjM5YzJjYzE4NzlmODc0ZSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZENTU1N0eWxlU2hl
ZXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVl
dC5oCkBAIC0yLDcgKzIsNyBAQAogICAgIENvcHlyaWdodCAoQykgMTk5OCBMYXJzIEtub2xsIChr
bm9sbEBtcGktaGQubXBnLmRlKQogICAgIENvcHlyaWdodCAoQykgMjAwMSBEaXJrIE11ZWxsZXIg
PG11ZWxsZXJAa2RlLm9yZz4KICAgICBDb3B5cmlnaHQgKEMpIDIwMDYgU2FtdWVsIFdlaW5pZyAo
c2FtLndlaW5pZ0BnbWFpbC5jb20pCi0gICAgQ29weXJpZ2h0IChDKSAyMDA0LCAyMDA1LCAyMDA2
LCAyMDA3LCAyMDA4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAgICBDb3B5cmln
aHQgKEMpIDIwMDQtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAKICAgICBU
aGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5k
L29yCiAgICAgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2Vu
ZXJhbCBQdWJsaWMKQEAgLTE4LDkgKzE4LDYgQEAKICAgICBhbG9uZyB3aXRoIHRoaXMgbGlicmFy
eTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bwogICAgIHRoZSBG
cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGgg
Rmxvb3IsCiAgICAgQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCi0KLSAgICBUaGlzIGNsYXNz
IHByb3ZpZGVzIGFsbCBmdW5jdGlvbmFsaXR5IG5lZWRlZCBmb3IgbG9hZGluZyBpbWFnZXMsIHN0
eWxlIHNoZWV0cyBhbmQgaHRtbAotICAgIHBhZ2VzIGZyb20gdGhlIHdlYi4gSXQgaGFzIGEgbWVt
b3J5IGNhY2hlIGZvciB0aGVzZSBvYmplY3RzLgogKi8KIAogI3ByYWdtYSBvbmNlCkBAIC0yOSw0
NCArMjYsNDQgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi0gICAgY2xhc3MgQ2FjaGVkUmVz
b3VyY2VDbGllbnQ7Ci0gICAgY2xhc3MgU3R5bGVTaGVldENvbnRlbnRzOwotICAgIGNsYXNzIFRl
eHRSZXNvdXJjZURlY29kZXI7Ci0gICAgc3RydWN0IENTU1BhcnNlckNvbnRleHQ7CitjbGFzcyBT
dHlsZVNoZWV0Q29udGVudHM7CitjbGFzcyBUZXh0UmVzb3VyY2VEZWNvZGVyOworCitzdHJ1Y3Qg
Q1NTUGFyc2VyQ29udGV4dDsKIAotICAgIGNsYXNzIENhY2hlZENTU1N0eWxlU2hlZXQgZmluYWwg
OiBwdWJsaWMgQ2FjaGVkUmVzb3VyY2UgewotICAgIHB1YmxpYzoKLSAgICAgICAgQ2FjaGVkQ1NT
U3R5bGVTaGVldChDYWNoZWRSZXNvdXJjZVJlcXVlc3QmJiwgU2Vzc2lvbklEKTsKLSAgICAgICAg
dmlydHVhbCB+Q2FjaGVkQ1NTU3R5bGVTaGVldCgpOworY2xhc3MgQ2FjaGVkQ1NTU3R5bGVTaGVl
dCBmaW5hbCA6IHB1YmxpYyBDYWNoZWRSZXNvdXJjZSB7CitwdWJsaWM6CisgICAgQ2FjaGVkQ1NT
U3R5bGVTaGVldChDYWNoZWRSZXNvdXJjZVJlcXVlc3QmJiwgU2Vzc2lvbklEKTsKKyAgICB2aXJ0
dWFsIH5DYWNoZWRDU1NTdHlsZVNoZWV0KCk7CiAKLSAgICAgICAgZW51bSBjbGFzcyBNSU1FVHlw
ZUNoZWNrIHsgU3RyaWN0LCBMYXggfTsKLSAgICAgICAgY29uc3QgU3RyaW5nIHNoZWV0VGV4dChN
SU1FVHlwZUNoZWNrID0gTUlNRVR5cGVDaGVjazo6U3RyaWN0LCBib29sKiBoYXNWYWxpZE1JTUVU
eXBlID0gbnVsbHB0cikgY29uc3Q7CisgICAgZW51bSBjbGFzcyBNSU1FVHlwZUNoZWNrIHsgU3Ry
aWN0LCBMYXggfTsKKyAgICBjb25zdCBTdHJpbmcgc2hlZXRUZXh0KE1JTUVUeXBlQ2hlY2sgPSBN
SU1FVHlwZUNoZWNrOjpTdHJpY3QsIGJvb2wqIGhhc1ZhbGlkTUlNRVR5cGUgPSBudWxscHRyKSBj
b25zdDsKIAotICAgICAgICBQYXNzUmVmUHRyPFN0eWxlU2hlZXRDb250ZW50cz4gcmVzdG9yZVBh
cnNlZFN0eWxlU2hlZXQoY29uc3QgQ1NTUGFyc2VyQ29udGV4dCYsIENhY2hlUG9saWN5KTsKLSAg
ICAgICAgdm9pZCBzYXZlUGFyc2VkU3R5bGVTaGVldChSZWY8U3R5bGVTaGVldENvbnRlbnRzPiYm
KTsKKyAgICBSZWZQdHI8U3R5bGVTaGVldENvbnRlbnRzPiByZXN0b3JlUGFyc2VkU3R5bGVTaGVl
dChjb25zdCBDU1NQYXJzZXJDb250ZXh0JiwgQ2FjaGVQb2xpY3kpOworICAgIHZvaWQgc2F2ZVBh
cnNlZFN0eWxlU2hlZXQoUmVmPFN0eWxlU2hlZXRDb250ZW50cz4mJik7CiAKLSAgICBwcml2YXRl
OgotICAgICAgICBib29sIGNhblVzZVNoZWV0KE1JTUVUeXBlQ2hlY2ssIGJvb2wqIGhhc1ZhbGlk
TUlNRVR5cGUpIGNvbnN0OwotICAgICAgICBib29sIG1heVRyeVJlcGxhY2VFbmNvZGVkRGF0YSgp
IGNvbnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KK3ByaXZhdGU6CisgICAgYm9vbCBjYW5Vc2VT
aGVldChNSU1FVHlwZUNoZWNrLCBib29sKiBoYXNWYWxpZE1JTUVUeXBlKSBjb25zdDsKKyAgICBi
b29sIG1heVRyeVJlcGxhY2VFbmNvZGVkRGF0YSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7
IH0KIAotICAgICAgICB2b2lkIGRpZEFkZENsaWVudChDYWNoZWRSZXNvdXJjZUNsaWVudCYpIGZp
bmFsOworICAgIHZvaWQgZGlkQWRkQ2xpZW50KENhY2hlZFJlc291cmNlQ2xpZW50JikgZmluYWw7
CiAKLSAgICAgICAgdm9pZCBzZXRFbmNvZGluZyhjb25zdCBTdHJpbmcmKSBmaW5hbDsKLSAgICAg
ICAgU3RyaW5nIGVuY29kaW5nKCkgY29uc3QgZmluYWw7Ci0gICAgICAgIGNvbnN0IFRleHRSZXNv
dXJjZURlY29kZXIqIHRleHRSZXNvdXJjZURlY29kZXIoKSBjb25zdCBmaW5hbCB7IHJldHVybiBt
X2RlY29kZXIuZ2V0KCk7IH0KLSAgICAgICAgdm9pZCBmaW5pc2hMb2FkaW5nKFNoYXJlZEJ1ZmZl
ciopIGZpbmFsOwotICAgICAgICB2b2lkIGRlc3Ryb3lEZWNvZGVkRGF0YSgpIGZpbmFsOworICAg
IHZvaWQgc2V0RW5jb2RpbmcoY29uc3QgU3RyaW5nJikgZmluYWw7CisgICAgU3RyaW5nIGVuY29k
aW5nKCkgY29uc3QgZmluYWw7CisgICAgY29uc3QgVGV4dFJlc291cmNlRGVjb2RlciogdGV4dFJl
c291cmNlRGVjb2RlcigpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fZGVjb2Rlci5nZXQoKTsgfQor
ICAgIHZvaWQgZmluaXNoTG9hZGluZyhTaGFyZWRCdWZmZXIqKSBmaW5hbDsKKyAgICB2b2lkIGRl
c3Ryb3lEZWNvZGVkRGF0YSgpIGZpbmFsOwogCi0gICAgICAgIHZvaWQgc2V0Qm9keURhdGFGcm9t
KGNvbnN0IENhY2hlZFJlc291cmNlJikgZmluYWw7CisgICAgdm9pZCBzZXRCb2R5RGF0YUZyb20o
Y29uc3QgQ2FjaGVkUmVzb3VyY2UmKSBmaW5hbDsKIAotICAgIHByb3RlY3RlZDoKLSAgICAgICAg
dm9pZCBjaGVja05vdGlmeSgpIGZpbmFsOworcHJvdGVjdGVkOgorICAgIHZvaWQgY2hlY2tOb3Rp
ZnkoKSBmaW5hbDsKIAotICAgICAgICBSZWZQdHI8VGV4dFJlc291cmNlRGVjb2Rlcj4gbV9kZWNv
ZGVyOwotICAgICAgICBTdHJpbmcgbV9kZWNvZGVkU2hlZXRUZXh0OworICAgIFJlZlB0cjxUZXh0
UmVzb3VyY2VEZWNvZGVyPiBtX2RlY29kZXI7CisgICAgU3RyaW5nIG1fZGVjb2RlZFNoZWV0VGV4
dDsKIAotICAgICAgICBSZWZQdHI8U3R5bGVTaGVldENvbnRlbnRzPiBtX3BhcnNlZFN0eWxlU2hl
ZXRDYWNoZTsKLSAgICB9OworICAgIFJlZlB0cjxTdHlsZVNoZWV0Q29udGVudHM+IG1fcGFyc2Vk
U3R5bGVTaGVldENhY2hlOworfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3QuY3Bw
CmluZGV4IDQ3M2FjZDU5ZjAzNGExMTJiZWU2NDM1MTVkNmNiMjliNWI1MDE1NGIuLjZkMGMyMjEx
OWFlMzRiMWNkMDRmYTNmMTBhNTM0NmVmNjFiMDYyNWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3QuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3QuY3BwCkBAIC01OSwxNSAr
NTksMTcgQEAgU3RyaW5nIENhY2hlZFJlc291cmNlUmVxdWVzdDo6c3BsaXRGcmFnbWVudElkZW50
aWZpZXJGcm9tUmVxdWVzdFVSTChSZXNvdXJjZVJlcXUKICAgICByZXR1cm4gZnJhZ21lbnRJZGVu
dGlmaWVyOwogfQogCi12b2lkIENhY2hlZFJlc291cmNlUmVxdWVzdDo6c2V0SW5pdGlhdG9yKFBh
c3NSZWZQdHI8RWxlbWVudD4gZWxlbWVudCkKK3ZvaWQgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0Ojpz
ZXRJbml0aWF0b3IoRWxlbWVudCYgZWxlbWVudCkKIHsKLSAgICBBU1NFUlQoIW1faW5pdGlhdG9y
RWxlbWVudCAmJiBtX2luaXRpYXRvck5hbWUuaXNFbXB0eSgpKTsKLSAgICBtX2luaXRpYXRvckVs
ZW1lbnQgPSBlbGVtZW50OworICAgIEFTU0VSVCghbV9pbml0aWF0b3JFbGVtZW50KTsKKyAgICBB
U1NFUlQobV9pbml0aWF0b3JOYW1lLmlzRW1wdHkoKSk7CisgICAgbV9pbml0aWF0b3JFbGVtZW50
ID0gJmVsZW1lbnQ7CiB9CiAKIHZvaWQgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0OjpzZXRJbml0aWF0
b3IoY29uc3QgQXRvbWljU3RyaW5nJiBuYW1lKQogewotICAgIEFTU0VSVCghbV9pbml0aWF0b3JF
bGVtZW50ICYmIG1faW5pdGlhdG9yTmFtZS5pc0VtcHR5KCkpOworICAgIEFTU0VSVCghbV9pbml0
aWF0b3JFbGVtZW50KTsKKyAgICBBU1NFUlQobV9pbml0aWF0b3JOYW1lLmlzRW1wdHkoKSk7CiAg
ICAgbV9pbml0aWF0b3JOYW1lID0gbmFtZTsKIH0KIApAQCAtMjA5LDEwICsyMTEsMTIgQEAgdm9p
ZCBDYWNoZWRSZXNvdXJjZVJlcXVlc3Q6OnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcklmTmVlZGVk
KCkKIH0KIAogI2lmIEVOQUJMRShDT05URU5UX0VYVEVOU0lPTlMpCisKIHZvaWQgQ2FjaGVkUmVz
b3VyY2VSZXF1ZXN0OjphcHBseUJsb2NrZWRTdGF0dXMoY29uc3QgQ29udGVudEV4dGVuc2lvbnM6
OkJsb2NrZWRTdGF0dXMmIGJsb2NrZWRTdGF0dXMpCiB7CiAgICAgQ29udGVudEV4dGVuc2lvbnM6
OmFwcGx5QmxvY2tlZFN0YXR1c1RvUmVxdWVzdChibG9ja2VkU3RhdHVzLCBtX3Jlc291cmNlUmVx
dWVzdCk7CiB9CisKICNlbmRpZgogCiB2b2lkIENhY2hlZFJlc291cmNlUmVxdWVzdDo6dXBkYXRl
UmVmZXJyZXJPcmlnaW5BbmRVc2VyQWdlbnRIZWFkZXJzKEZyYW1lTG9hZGVyJiBmcmFtZUxvYWRl
ciwgUmVmZXJyZXJQb2xpY3kgZGVmYXVsdFBvbGljeSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3QuaCBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3QuaAppbmRleCAwZThhNGMzZmI5M2Jl
NTEzMjk0ZDRmMDQ1ZTk5ZWY5YWU3MTA3NjAwLi5lZWVkMWExZmZmNDU2ZjJmYzMxMzYyYmNlNGFj
NmZmYzgyN2RmYjYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2Fj
aGVkUmVzb3VyY2VSZXF1ZXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0Nh
Y2hlZFJlc291cmNlUmVxdWVzdC5oCkBAIC01OCw3ICs1OCw3IEBAIHB1YmxpYzoKICAgICBjb25z
dCBSZXNvdXJjZUxvYWRlck9wdGlvbnMmIG9wdGlvbnMoKSBjb25zdCB7IHJldHVybiBtX29wdGlv
bnM7IH0KICAgICB2b2lkIHNldE9wdGlvbnMoY29uc3QgUmVzb3VyY2VMb2FkZXJPcHRpb25zJiBv
cHRpb25zKSB7IG1fb3B0aW9ucyA9IG9wdGlvbnM7IH0KICAgICBjb25zdCBzdGQ6Om9wdGlvbmFs
PFJlc291cmNlTG9hZFByaW9yaXR5PiYgcHJpb3JpdHkoKSBjb25zdCB7IHJldHVybiBtX3ByaW9y
aXR5OyB9Ci0gICAgdm9pZCBzZXRJbml0aWF0b3IoUGFzc1JlZlB0cjxFbGVtZW50Pik7CisgICAg
dm9pZCBzZXRJbml0aWF0b3IoRWxlbWVudCYpOwogICAgIHZvaWQgc2V0SW5pdGlhdG9yKGNvbnN0
IEF0b21pY1N0cmluZyYgbmFtZSk7CiAgICAgY29uc3QgQXRvbWljU3RyaW5nJiBpbml0aWF0b3JO
YW1lKCkgY29uc3Q7CiAgICAgYm9vbCBhbGxvd3NDYWNoaW5nKCkgY29uc3QgeyByZXR1cm4gbV9v
cHRpb25zLmNhY2hpbmdQb2xpY3kgPT0gQ2FjaGluZ1BvbGljeTo6QWxsb3dDYWNoaW5nOyB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvci5o
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NvY29hL0Rpc2tDYWNoZU1vbml0b3IuaApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODVkYWVjNzBhMjA5YzcyZGVjOTZiMmRhZmNiNGM3NzU4
ZGJjZTI3ZC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvci5oCisrKyAvZGV2L251
bGwKQEAgLTEsNjIgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNCBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAq
IGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICog
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNwcmFnbWEgb25jZQotCi0jaW5jbHVk
ZSAiUmVzb3VyY2VSZXF1ZXN0LmgiCi0jaW5jbHVkZSAiU2Vzc2lvbklELmgiCi0jaW5jbHVkZSA8
d3RmL1Bhc3NSZWZQdHIuaD4KLQotdHlwZWRlZiBjb25zdCBzdHJ1Y3QgX0NGQ2FjaGVkVVJMUmVz
cG9uc2UqIENGQ2FjaGVkVVJMUmVzcG9uc2VSZWY7Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQot
Y2xhc3MgU2hhcmVkQnVmZmVyOwotCi1jbGFzcyBEaXNrQ2FjaGVNb25pdG9yIHsKLXB1YmxpYzoK
LSAgICBzdGF0aWMgdm9pZCBtb25pdG9yRmlsZUJhY2tpbmdTdG9yZUNyZWF0aW9uKGNvbnN0IFJl
c291cmNlUmVxdWVzdCYsIFNlc3Npb25JRCwgQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZik7Ci0gICAg
c3RhdGljIFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiB0cnlHZXRGaWxlQmFja2VkU2hhcmVkQnVm
ZmVyRnJvbUNGVVJMQ2FjaGVkUmVzcG9uc2UoQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZik7Ci0gICAg
dmlydHVhbCB+RGlza0NhY2hlTW9uaXRvcigpIHsgfQotCi1wcm90ZWN0ZWQ6Ci0gICAgRGlza0Nh
Y2hlTW9uaXRvcihjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBTZXNzaW9uSUQsIENGQ2FjaGVkVVJM
UmVzcG9uc2VSZWYpOwotCi0gICAgdmlydHVhbCB2b2lkIHJlc291cmNlQmVjYW1lRmlsZUJhY2tl
ZChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4pOwotCi0gICAgY29uc3QgUmVzb3VyY2VSZXF1ZXN0
JiByZXNvdXJjZVJlcXVlc3QoKSBjb25zdCB7IHJldHVybiBtX3Jlc291cmNlUmVxdWVzdDsgfQot
ICAgIFNlc3Npb25JRCBzZXNzaW9uSUQoKSBjb25zdCB7IHJldHVybiBtX3Nlc3Npb25JRDsgfQot
Ci1wcml2YXRlOgotICAgIFJlc291cmNlUmVxdWVzdCBtX3Jlc291cmNlUmVxdWVzdDsKLSAgICBT
ZXNzaW9uSUQgbV9zZXNzaW9uSUQ7Ci19OwotCi0jaWYgKFBMQVRGT1JNKElPUykgJiYgX19JUEhP
TkVfT1NfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPCA4MDAwMCkgfHwgKFBMQVRGT1JNKE1BQykgJiYg
X19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA8IDEwOTApCi12b2lkIERpc2tDYWNoZU1v
bml0b3I6Om1vbml0b3JGaWxlQmFja2luZ1N0b3JlQ3JlYXRpb24oY29uc3QgUmVzb3VyY2VSZXF1
ZXN0JiwgU2Vzc2lvbklELCBDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKSB7IH0KLVBhc3NSZWZQdHI8
U2hhcmVkQnVmZmVyPiBEaXNrQ2FjaGVNb25pdG9yOjp0cnlHZXRGaWxlQmFja2VkU2hhcmVkQnVm
ZmVyRnJvbUNGVVJMQ2FjaGVkUmVzcG9uc2UoQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZikgeyByZXR1
cm4gbnVsbHB0cjsgfQotI2VuZGlmCi0KLX0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NvY29hL0Rpc2tDYWNoZU1vbml0b3JDb2NvYS5oIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2NvY29hL0Rpc2tDYWNoZU1vbml0b3JDb2NvYS5oCmluZGV4
IDE4NmMzNGFmOTdmYmVlYjM4ZjY0M2Q0MTcyN2YxNDhmNTE2YWFhNmQuLjYzMDRmMWYwNmVkMDFh
YzBkY2ZmOGQzZGIzYjY1MTc3ZjFmNzkyMWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9jb2NvYS9EaXNrQ2FjaGVNb25pdG9yQ29jb2EuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvckNvY29hLmgKQEAgLTEsNSArMSw1IEBACiAvKgot
ICogQ29weXJpZ2h0IChDKSAyMDE0IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
IENvcHlyaWdodCAoQykgMjAxNC0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
ICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMjcsNyArMjcsNiBAQAogCiAjaW5j
bHVkZSAiUmVzb3VyY2VSZXF1ZXN0LmgiCiAjaW5jbHVkZSAiU2Vzc2lvbklELmgiCi0jaW5jbHVk
ZSA8d3RmL1Bhc3NSZWZQdHIuaD4KIAogdHlwZWRlZiBjb25zdCBzdHJ1Y3QgX0NGQ2FjaGVkVVJM
UmVzcG9uc2UqIENGQ2FjaGVkVVJMUmVzcG9uc2VSZWY7CiAKQEAgLTM1LDIxICszNCwxOSBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIFNoYXJlZEJ1ZmZlcjsKIAotY2xhc3MgV0VCQ09S
RV9FWFBPUlQgRGlza0NhY2hlTW9uaXRvciB7CitjbGFzcyBEaXNrQ2FjaGVNb25pdG9yIHsKIHB1
YmxpYzoKICAgICBzdGF0aWMgdm9pZCBtb25pdG9yRmlsZUJhY2tpbmdTdG9yZUNyZWF0aW9uKGNv
bnN0IFJlc291cmNlUmVxdWVzdCYsIFNlc3Npb25JRCwgQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZik7
Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiB0cnlHZXRGaWxlQmFja2VkU2hh
cmVkQnVmZmVyRnJvbUNGVVJMQ2FjaGVkUmVzcG9uc2UoQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZik7
Ci0gICAgdmlydHVhbCB+RGlza0NhY2hlTW9uaXRvcigpIHsgfQorICAgIHN0YXRpYyBSZWZQdHI8
U2hhcmVkQnVmZmVyPiB0cnlHZXRGaWxlQmFja2VkU2hhcmVkQnVmZmVyRnJvbUNGVVJMQ2FjaGVk
UmVzcG9uc2UoQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZik7CiAKLXByb3RlY3RlZDoKLSAgICBXRUJD
T1JFX0VYUE9SVCBEaXNrQ2FjaGVNb25pdG9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIFNlc3Np
b25JRCwgQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZik7Citwcml2YXRlOgorICAgIERpc2tDYWNoZU1v
bml0b3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgU2Vzc2lvbklELCBDRkNhY2hlZFVSTFJlc3Bv
bnNlUmVmKTsKIAotICAgIHZpcnR1YWwgdm9pZCByZXNvdXJjZUJlY2FtZUZpbGVCYWNrZWQoU2hh
cmVkQnVmZmVyJik7CisgICAgdm9pZCByZXNvdXJjZUJlY2FtZUZpbGVCYWNrZWQoU2hhcmVkQnVm
ZmVyJik7CiAKICAgICBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlc291cmNlUmVxdWVzdCgpIGNv
bnN0IHsgcmV0dXJuIG1fcmVzb3VyY2VSZXF1ZXN0OyB9CiAgICAgU2Vzc2lvbklEIHNlc3Npb25J
RCgpIGNvbnN0IHsgcmV0dXJuIG1fc2Vzc2lvbklEOyB9CiAKLXByaXZhdGU6CiAgICAgUmVzb3Vy
Y2VSZXF1ZXN0IG1fcmVzb3VyY2VSZXF1ZXN0OwogICAgIFNlc3Npb25JRCBtX3Nlc3Npb25JRDsK
IH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY29jb2EvRGlza0NhY2hlTW9u
aXRvckNvY29hLm1tIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NvY29hL0Rpc2tDYWNoZU1vbml0
b3JDb2NvYS5tbQppbmRleCA2ODU4MDM2MGI4ZWJjZGNhY2E4YTNlOTM4NDk4YTE5NzU1MmRjMTZh
Li42YWM0NWExNmZlOTZjMzhhNzI5MjhjMTljNTVkYzFlZTNjY2VhYTRlIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvckNvY29hLm1tCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jb2NvYS9EaXNrQ2FjaGVNb25pdG9yQ29jb2EubW0KQEAg
LTI5LDExICsyOSw4IEBACiAjaW1wb3J0ICJDRk5ldHdvcmtTUEkuaCIKICNpbXBvcnQgIkNhY2hl
ZFJlc291cmNlLmgiCiAjaW1wb3J0ICJNZW1vcnlDYWNoZS5oIgotI2ltcG9ydCAiUmVzb3VyY2VS
ZXF1ZXN0LmgiCi0jaW1wb3J0ICJTZXNzaW9uSUQuaCIKICNpbXBvcnQgIlNoYXJlZEJ1ZmZlci5o
IgogI2ltcG9ydCA8d3RmL01haW5UaHJlYWQuaD4KLSNpbXBvcnQgPHd0Zi9QYXNzUmVmUHRyLmg+
CiAjaW1wb3J0IDx3dGYvUmVmUHRyLmg+CiAKICNpZiBVU0UoV0VCX1RIUkVBRCkKQEAgLTQ1LDkg
KzQyLDkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogLy8gVGhlIG1heGltdW0gbnVtYmVyIG9mIHNl
Y29uZHMgd2UnbGwgdHJ5IHRvIHdhaXQgZm9yIGEgcmVzb3VyY2UgdG8gYmUgZGlzayBjYWNoZWQg
YmVmb3JlIHdlIGZvcmdldCB0aGUgcmVxdWVzdC4KIHN0YXRpYyBjb25zdCBkb3VibGUgZGlza0Nh
Y2hlTW9uaXRvclRpbWVvdXQgPSAyMDsKIAotUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IERpc2tD
YWNoZU1vbml0b3I6OnRyeUdldEZpbGVCYWNrZWRTaGFyZWRCdWZmZXJGcm9tQ0ZVUkxDYWNoZWRS
ZXNwb25zZShDRkNhY2hlZFVSTFJlc3BvbnNlUmVmIGNhY2hlZFJlc3BvbnNlKQorUmVmUHRyPFNo
YXJlZEJ1ZmZlcj4gRGlza0NhY2hlTW9uaXRvcjo6dHJ5R2V0RmlsZUJhY2tlZFNoYXJlZEJ1ZmZl
ckZyb21DRlVSTENhY2hlZFJlc3BvbnNlKENGQ2FjaGVkVVJMUmVzcG9uc2VSZWYgY2FjaGVkUmVz
cG9uc2UpCiB7Ci0gICAgQ0ZEYXRhUmVmIGRhdGEgPSBfQ0ZDYWNoZWRVUkxSZXNwb25zZUdldE1l
bU1hcHBlZERhdGEoY2FjaGVkUmVzcG9uc2UpOworICAgIGF1dG8gZGF0YSA9IF9DRkNhY2hlZFVS
TFJlc3BvbnNlR2V0TWVtTWFwcGVkRGF0YShjYWNoZWRSZXNwb25zZSk7CiAgICAgaWYgKCFkYXRh
KQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIApAQCAtODcsOCArODQsNyBAQCBEaXNrQ2FjaGVN
b25pdG9yOjpEaXNrQ2FjaGVNb25pdG9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwg
U2Vzc2lvbklEIHNlcwogICAgIGRpc3BhdGNoX2FmdGVyKGRpc3BhdGNoX3RpbWUoRElTUEFUQ0hf
VElNRV9OT1csIE5TRUNfUEVSX1NFQyAqIGRpc2tDYWNoZU1vbml0b3JUaW1lb3V0KSwgZGlzcGF0
Y2hfZ2V0X21haW5fcXVldWUoKSwgY2FuY2VsTW9uaXRvckJsb2NrVG9SdW4pOwogCiAgICAgLy8g
U2V0IHVwIHRoZSBkaXNrIGNhY2hpbmcgY2FsbGJhY2sgdG8gY3JlYXRlIHRoZSBTaGFyZWFibGVS
ZXNvdXJjZSBhbmQgc2VuZCBpdCB0byB0aGUgV2ViUHJvY2Vzcy4KLSAgICBDRkNhY2hlZFVSTFJl
c3BvbnNlQ2FsbEJhY2tCbG9jayBibG9jayA9IF4oQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZiBjYWNo
ZWRSZXNwb25zZSkKLSAgICB7CisgICAgYXV0byBibG9jayA9IF4oQ0ZDYWNoZWRVUkxSZXNwb25z
ZVJlZiBjYWNoZWRSZXNwb25zZSkgewogICAgICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwog
ICAgICAgICAvLyBJZiB0aGUgbW9uaXRvciBpc24ndCB0aGVyZSB0aGVuIGl0IHRpbWVkIG91dCBi
ZWZvcmUgdGhpcyByZXNvdXJjZSB3YXMgY2FjaGVkIHRvIGRpc2suCiAgICAgICAgIGlmICghcmF3
TW9uaXRvcikKQEAgLTk3LDcgKzkzLDcgQEAgRGlza0NhY2hlTW9uaXRvcjo6RGlza0NhY2hlTW9u
aXRvcihjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFNlc3Npb25JRCBzZXMKICAgICAg
ICAgYXV0byBtb25pdG9yID0gc3RkOjp1bmlxdWVfcHRyPERpc2tDYWNoZU1vbml0b3I+KHJhd01v
bml0b3IpOyAvLyBCYWxhbmNlZCBieSAibmV3IERpc2tDYWNoZU1vbml0b3IiIGluIG1vbml0b3JG
aWxlQmFja2luZ1N0b3JlQ3JlYXRpb24uCiAgICAgICAgIHJhd01vbml0b3IgPSBudWxscHRyOwog
Ci0gICAgICAgIFJlZlB0cjxTaGFyZWRCdWZmZXI+IGZpbGVCYWNrZWRCdWZmZXIgPSBEaXNrQ2Fj
aGVNb25pdG9yOjp0cnlHZXRGaWxlQmFja2VkU2hhcmVkQnVmZmVyRnJvbUNGVVJMQ2FjaGVkUmVz
cG9uc2UoY2FjaGVkUmVzcG9uc2UpOworICAgICAgICBhdXRvIGZpbGVCYWNrZWRCdWZmZXIgPSBE
aXNrQ2FjaGVNb25pdG9yOjp0cnlHZXRGaWxlQmFja2VkU2hhcmVkQnVmZmVyRnJvbUNGVVJMQ2Fj
aGVkUmVzcG9uc2UoY2FjaGVkUmVzcG9uc2UpOwogICAgICAgICBpZiAoIWZpbGVCYWNrZWRCdWZm
ZXIpCiAgICAgICAgICAgICByZXR1cm47CiAKQEAgLTEwNSw4ICsxMDEsNyBAQCBEaXNrQ2FjaGVN
b25pdG9yOjpEaXNrQ2FjaGVNb25pdG9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwg
U2Vzc2lvbklEIHNlcwogICAgIH07CiAKICNpZiBVU0UoV0VCX1RIUkVBRCkKLSAgICBDRkNhY2hl
ZFVSTFJlc3BvbnNlQ2FsbEJhY2tCbG9jayBibG9ja1RvUnVuID0gXihDRkNhY2hlZFVSTFJlc3Bv
bnNlUmVmIHJlc3BvbnNlKQotICAgIHsKKyAgICBhdXRvIGJsb2NrVG9SdW4gPSBeKENGQ2FjaGVk
VVJMUmVzcG9uc2VSZWYgcmVzcG9uc2UpIHsKICAgICAgICAgQ0ZSZXRhaW4ocmVzcG9uc2UpOwog
ICAgICAgICBXZWJUaHJlYWRSdW4oXnsKICAgICAgICAgICAgIGJsb2NrKHJlc3BvbnNlKTsKQEAg
LTExNCwxNCArMTA5LDE0IEBAIERpc2tDYWNoZU1vbml0b3I6OkRpc2tDYWNoZU1vbml0b3IoY29u
c3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBTZXNzaW9uSUQgc2VzCiAgICAgICAgIH0pOwog
ICAgIH07CiAjZWxzZQotICAgIENGQ2FjaGVkVVJMUmVzcG9uc2VDYWxsQmFja0Jsb2NrIGJsb2Nr
VG9SdW4gPSBibG9jazsKKyAgICBhdXRvIGJsb2NrVG9SdW4gPSBibG9jazsKICNlbmRpZgogICAg
IF9DRkNhY2hlZFVSTFJlc3BvbnNlU2V0QmVjYW1lRmlsZUJhY2tlZENhbGxCYWNrQmxvY2soY2Fj
aGVkUmVzcG9uc2UsIGJsb2NrVG9SdW4sIGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCkpOwogfQog
CiB2b2lkIERpc2tDYWNoZU1vbml0b3I6OnJlc291cmNlQmVjYW1lRmlsZUJhY2tlZChTaGFyZWRC
dWZmZXImIGZpbGVCYWNrZWRCdWZmZXIpCiB7Ci0gICAgQ2FjaGVkUmVzb3VyY2UqIHJlc291cmNl
ID0gTWVtb3J5Q2FjaGU6OnNpbmdsZXRvbigpLnJlc291cmNlRm9yUmVxdWVzdChtX3Jlc291cmNl
UmVxdWVzdCwgbV9zZXNzaW9uSUQpOworICAgIGF1dG8qIHJlc291cmNlID0gTWVtb3J5Q2FjaGU6
OnNpbmdsZXRvbigpLnJlc291cmNlRm9yUmVxdWVzdChtX3Jlc291cmNlUmVxdWVzdCwgbV9zZXNz
aW9uSUQpOwogICAgIGlmICghcmVzb3VyY2UpCiAgICAgICAgIHJldHVybjsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9pY29uL0ljb25EYXRhYmFzZS5jcHAKaW5kZXggZWU0MzdlODYyOGViZjRl
ODYzMjdjYzc3MDMwZjVmNjk0ZTMwYmIyZC4uZGNjZTBhNWMzY2Q4MTZjYzg0N2JjN2FmZTJiYTIx
NjdhY2QwODgwYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkRh
dGFiYXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2Uu
Y3BwCkBAIC01MzMsNyArNTMzLDcgQEAgdm9pZCBJY29uRGF0YWJhc2U6OnBlcmZvcm1SZWxlYXNl
SWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJiBwYWdlVVJMT3JpZ2luYWwsIGkKICAgICBkZWxl
dGUgcGFnZVJlY29yZDsKIH0KIAotdm9pZCBJY29uRGF0YWJhc2U6OnNldEljb25EYXRhRm9ySWNv
blVSTChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZGF0YU9yaWdpbmFsLCBjb25zdCBTdHJpbmcm
IGljb25VUkxPcmlnaW5hbCkKK3ZvaWQgSWNvbkRhdGFiYXNlOjpzZXRJY29uRGF0YUZvckljb25V
UkwoU2hhcmVkQnVmZmVyKiBkYXRhT3JpZ2luYWwsIGNvbnN0IFN0cmluZyYgaWNvblVSTE9yaWdp
bmFsKQogeyAgICAKICAgICBBU1NFUlRfTk9UX1NZTkNfVEhSRUFEKCk7CiAgICAgCkBAIC01NDIs
NyArNTQyLDcgQEAgdm9pZCBJY29uRGF0YWJhc2U6OnNldEljb25EYXRhRm9ySWNvblVSTChQYXNz
UmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZGF0YU9yaWdpbmFsLAogICAgIGlmICghaXNPcGVuKCkgfHwg
aWNvblVSTE9yaWdpbmFsLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwogICAgIAotICAgIFJl
ZlB0cjxTaGFyZWRCdWZmZXI+IGRhdGEgPSBkYXRhT3JpZ2luYWwgPyBkYXRhT3JpZ2luYWwtPmNv
cHkoKSA6IFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPihudWxscHRyKTsKKyAgICBhdXRvIGRhdGEg
PSBkYXRhT3JpZ2luYWwgPyBSZWZQdHI8U2hhcmVkQnVmZmVyPiB7IGRhdGFPcmlnaW5hbC0+Y29w
eSgpIH0gOiBudWxscHRyOwogICAgIFN0cmluZyBpY29uVVJMID0gaWNvblVSTE9yaWdpbmFsLmlz
b2xhdGVkQ29weSgpOwogICAgIAogICAgIFZlY3RvcjxTdHJpbmc+IHBhZ2VVUkxzOwpAQCAtODg1
LDE4ICs4ODUsMTcgQEAgU3RyaW5nIEljb25EYXRhYmFzZTo6ZGVmYXVsdERhdGFiYXNlRmlsZW5h
bWUoKQogfQogCiAvLyBVbmxpa2UgZ2V0T3JDcmVhdGVQYWdlVVJMUmVjb3JkKCksIGdldE9yQ3Jl
YXRlSWNvblJlY29yZCgpIGRvZXMgbm90IG1hcmsgdGhlIGljb24gYXMgImludGVyZXN0ZWQgaW4g
aW1wb3J0IgotUGFzc1JlZlB0cjxJY29uUmVjb3JkPiBJY29uRGF0YWJhc2U6OmdldE9yQ3JlYXRl
SWNvblJlY29yZChjb25zdCBTdHJpbmcmIGljb25VUkwpCitSZWY8SWNvblJlY29yZD4gSWNvbkRh
dGFiYXNlOjpnZXRPckNyZWF0ZUljb25SZWNvcmQoY29uc3QgU3RyaW5nJiBpY29uVVJMKQogewog
ICAgIC8vIENsaWVudHMgb2YgZ2V0T3JDcmVhdGVJY29uUmVjb3JkKCkgYXJlIHJlcXVpcmVkIHRv
IGFjcXVpcmUgdGhlIG1fdXJsQW5kSWNvbkxvY2sgYmVmb3JlIGNhbGxpbmcgdGhpcyBtZXRob2QK
ICAgICBBU1NFUlQoIW1fdXJsQW5kSWNvbkxvY2sudHJ5TG9jaygpKTsKIAotICAgIGlmIChJY29u
UmVjb3JkKiBpY29uID0gbV9pY29uVVJMVG9SZWNvcmRNYXAuZ2V0KGljb25VUkwpKQotICAgICAg
ICByZXR1cm4gaWNvbjsKKyAgICBpZiAoYXV0byogaWNvbiA9IG1faWNvblVSTFRvUmVjb3JkTWFw
LmdldChpY29uVVJMKSkKKyAgICAgICAgcmV0dXJuICppY29uOwogCiAgICAgYXV0byBuZXdJY29u
ID0gSWNvblJlY29yZDo6Y3JlYXRlKGljb25VUkwpOwogICAgIG1faWNvblVSTFRvUmVjb3JkTWFw
LnNldChpY29uVVJMLCBuZXdJY29uLnB0cigpKTsKLQotICAgIHJldHVybiBXVEZNb3ZlKG5ld0lj
b24pOworICAgIHJldHVybiBuZXdJY29uOwogfQogCiAvLyBUaGlzIG1ldGhvZCByZXRyaWV2ZXMg
dGhlIGV4aXN0aW5nIFBhZ2VVUkxSZWNvcmQsIG9yIGNyZWF0ZXMgYSBuZXcgb25lIGFuZCBtYXJr
cyBpdCBhcyAiaW50ZXJlc3RlZCBpbiB0aGUgaW1wb3J0IiBmb3IgbGF0ZXIgbm90aWZpY2F0aW9u
CkBAIC0xOTE3LDcgKzE5MTYsNyBAQCBpbnQ2NF90IEljb25EYXRhYmFzZTo6YWRkSWNvblVSTFRv
U1FMRGF0YWJhc2UoY29uc3QgU3RyaW5nJiBpY29uVVJMKQogICAgIHJldHVybiBpY29uSUQ7CiB9
CiAKLVBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBJY29uRGF0YWJhc2U6OmdldEltYWdlRGF0YUZv
ckljb25VUkxGcm9tU1FMRGF0YWJhc2UoY29uc3QgU3RyaW5nJiBpY29uVVJMKQorUmVmUHRyPFNo
YXJlZEJ1ZmZlcj4gSWNvbkRhdGFiYXNlOjpnZXRJbWFnZURhdGFGb3JJY29uVVJMRnJvbVNRTERh
dGFiYXNlKGNvbnN0IFN0cmluZyYgaWNvblVSTCkKIHsKICAgICBBU1NFUlRfSUNPTl9TWU5DX1RI
UkVBRCgpOwogICAgIApAQCAtMTkzNiw3ICsxOTM1LDcgQEAgUGFzc1JlZlB0cjxTaGFyZWRCdWZm
ZXI+IEljb25EYXRhYmFzZTo6Z2V0SW1hZ2VEYXRhRm9ySWNvblVSTEZyb21TUUxEYXRhYmFzZShj
b24KIAogICAgIG1fZ2V0SW1hZ2VEYXRhRm9ySWNvblVSTFN0YXRlbWVudC0+cmVzZXQoKTsKICAg
ICAKLSAgICByZXR1cm4gV1RGTW92ZShpbWFnZURhdGEpOworICAgIHJldHVybiBpbWFnZURhdGE7
CiB9CiAKIHZvaWQgSWNvbkRhdGFiYXNlOjpyZW1vdmVJY29uRnJvbVNRTERhdGFiYXNlKGNvbnN0
IFN0cmluZyYgaWNvblVSTCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29u
L0ljb25EYXRhYmFzZS5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNl
LmgKaW5kZXggZDVkNDUyY2VmZDM3YzBhY2U4MTJhZGEzNTAzNDcwYWU2MjhkN2M5ZS4uMDYxYWY0
YTEyNTU3NzFkZTExYTMyZjU2ODNjMGVmZGE1OTI5M2I5ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2ljb24vSWNvbkRhdGFiYXNlLmgKQEAgLTQ1LDYgKzQ1LDcgQEAgbmFtZXNwYWNlIFdlYkNv
cmUgewogLy8gRHVtbXkgdmVyc2lvbiBvZiBJY29uRGF0YWJhc2UgdGhhdCBkb2VzIG5vdGhpbmcu
CiBjbGFzcyBJY29uRGF0YWJhc2UgZmluYWwgOiBwdWJsaWMgSWNvbkRhdGFiYXNlQmFzZSB7CiAg
ICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CisKIHB1YmxpYzoKICAgICBzdGF0aWMgdm9pZCBk
ZWxheURhdGFiYXNlQ2xlYW51cCgpIHsgfQogICAgIHN0YXRpYyB2b2lkIGFsbG93RGF0YWJhc2VD
bGVhbnVwKCkgeyB9CkBAIC03MCwzMiArNzEsMzIgQEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQ
T1JUIEljb25EYXRhYmFzZSgpOwogICAgIH5JY29uRGF0YWJhc2UoKTsKIAotICAgIFdFQkNPUkVf
RVhQT1JUIHZvaWQgc2V0Q2xpZW50KEljb25EYXRhYmFzZUNsaWVudCopIG92ZXJyaWRlOworICAg
IFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0Q2xpZW50KEljb25EYXRhYmFzZUNsaWVudCopIGZpbmFs
OwogCi0gICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBvcGVuKGNvbnN0IFN0cmluZyYgZGlyZWN0b3J5
LCBjb25zdCBTdHJpbmcmIGZpbGVuYW1lKSBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCB2
b2lkIGNsb3NlKCkgb3ZlcnJpZGU7CisgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBvcGVuKGNvbnN0
IFN0cmluZyYgZGlyZWN0b3J5LCBjb25zdCBTdHJpbmcmIGZpbGVuYW1lKSBmaW5hbDsKKyAgICBX
RUJDT1JFX0VYUE9SVCB2b2lkIGNsb3NlKCkgZmluYWw7CiAgICAgICAgICAgICAKLSAgICBXRUJD
T1JFX0VYUE9SVCB2b2lkIHJlbW92ZUFsbEljb25zKCkgb3ZlcnJpZGU7CisgICAgV0VCQ09SRV9F
WFBPUlQgdm9pZCByZW1vdmVBbGxJY29ucygpIGZpbmFsOwogCiAgICAgdm9pZCByZWFkSWNvbkZv
clBhZ2VVUkxGcm9tRGlzayhjb25zdCBTdHJpbmcmKTsKIAotICAgIFdFQkNPUkVfRVhQT1JUIElt
YWdlKiBkZWZhdWx0SWNvbihjb25zdCBJbnRTaXplJikgb3ZlcnJpZGU7CisgICAgV0VCQ09SRV9F
WFBPUlQgSW1hZ2UqIGRlZmF1bHRJY29uKGNvbnN0IEludFNpemUmKSBmaW5hbDsKIAotICAgIFdF
QkNPUkVfRVhQT1JUIHZvaWQgcmV0YWluSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikgb3Zl
cnJpZGU7Ci0gICAgV0VCQ09SRV9FWFBPUlQgdm9pZCByZWxlYXNlSWNvbkZvclBhZ2VVUkwoY29u
c3QgU3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRJY29uRGF0
YUZvckljb25VUkwoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGRhdGEsIGNvbnN0IFN0cmluZyYp
IG92ZXJyaWRlOwotICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0SWNvblVSTEZvclBhZ2VVUkwo
Y29uc3QgU3RyaW5nJiBpY29uVVJMLCBjb25zdCBTdHJpbmcmIHBhZ2VVUkwpIG92ZXJyaWRlOwor
ICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgcmV0YWluSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5n
JikgZmluYWw7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCByZWxlYXNlSWNvbkZvclBhZ2VVUkwo
Y29uc3QgU3RyaW5nJikgZmluYWw7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRJY29uRGF0
YUZvckljb25VUkwoU2hhcmVkQnVmZmVyKiBkYXRhLCBjb25zdCBTdHJpbmcmIGljb25VUkwpIGZp
bmFsOworICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0SWNvblVSTEZvclBhZ2VVUkwoY29uc3Qg
U3RyaW5nJiBpY29uVVJMLCBjb25zdCBTdHJpbmcmIHBhZ2VVUkwpIGZpbmFsOwogCi0gICAgV0VC
Q09SRV9FWFBPUlQgSW1hZ2UqIHN5bmNocm9ub3VzSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5n
JiwgY29uc3QgSW50U2l6ZSYpIG92ZXJyaWRlOwotICAgIE5hdGl2ZUltYWdlUHRyIHN5bmNocm9u
b3VzTmF0aXZlSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJiBwYWdlVVJMT3JpZ2luYWwsIGNv
bnN0IEludFNpemUmKSBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCBTdHJpbmcgc3luY2hy
b25vdXNJY29uVVJMRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmKSBvdmVycmlkZTsKLSAgICBib29s
IHN5bmNocm9ub3VzSWNvbkRhdGFLbm93bkZvckljb25VUkwoY29uc3QgU3RyaW5nJikgb3ZlcnJp
ZGU7Ci0gICAgV0VCQ09SRV9FWFBPUlQgSWNvbkxvYWREZWNpc2lvbiBzeW5jaHJvbm91c0xvYWRE
ZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5nJiwgRG9jdW1lbnRMb2FkZXIqKSBvdmVycmlk
ZTsKKyAgICBXRUJDT1JFX0VYUE9SVCBJbWFnZSogc3luY2hyb25vdXNJY29uRm9yUGFnZVVSTChj
b25zdCBTdHJpbmcmLCBjb25zdCBJbnRTaXplJikgZmluYWw7CisgICAgTmF0aXZlSW1hZ2VQdHIg
c3luY2hyb25vdXNOYXRpdmVJY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIHBhZ2VVUkxPcmln
aW5hbCwgY29uc3QgSW50U2l6ZSYpIGZpbmFsOworICAgIFdFQkNPUkVfRVhQT1JUIFN0cmluZyBz
eW5jaHJvbm91c0ljb25VUkxGb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYpIGZpbmFsOworICAgIGJv
b2wgc3luY2hyb25vdXNJY29uRGF0YUtub3duRm9ySWNvblVSTChjb25zdCBTdHJpbmcmKSBmaW5h
bDsKKyAgICBXRUJDT1JFX0VYUE9SVCBJY29uTG9hZERlY2lzaW9uIHN5bmNocm9ub3VzTG9hZERl
Y2lzaW9uRm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBEb2N1bWVudExvYWRlciopIGZpbmFsOwog
Ci0gICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRFbmFibGVkKGJvb2wpIG92ZXJyaWRlOwotICAg
IFdFQkNPUkVfRVhQT1JUIGJvb2wgaXNFbmFibGVkKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgV0VC
Q09SRV9FWFBPUlQgdm9pZCBzZXRFbmFibGVkKGJvb2wpOworICAgIFdFQkNPUkVfRVhQT1JUIGJv
b2wgaXNFbmFibGVkKCkgY29uc3QgZmluYWw7CiAKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNl
dFByaXZhdGVCcm93c2luZ0VuYWJsZWQoYm9vbCBmbGFnKSBvdmVycmlkZTsKKyAgICBXRUJDT1JF
X0VYUE9SVCB2b2lkIHNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQoYm9vbCBmbGFnKSBmaW5hbDsK
ICAgICBib29sIGlzUHJpdmF0ZUJyb3dzaW5nRW5hYmxlZCgpIGNvbnN0OwogCiAgICAgV0VCQ09S
RV9FWFBPUlQgc3RhdGljIHZvaWQgZGVsYXlEYXRhYmFzZUNsZWFudXAoKTsKQEAgLTEwMywxMCAr
MTA0LDEwIEBAIHB1YmxpYzoKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgdm9pZCBjaGVja0lu
dGVncml0eUJlZm9yZU9wZW5pbmcoKTsKIAogICAgIC8vIFN1cHBvcnQgZm9yIFdlYkNvcmVTdGF0
aXN0aWNzIGluIFdlYktpdAotICAgIFdFQkNPUkVfRVhQT1JUIHNpemVfdCBwYWdlVVJMTWFwcGlu
Z0NvdW50KCkgb3ZlcnJpZGU7Ci0gICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90IHJldGFpbmVkUGFn
ZVVSTENvdW50KCkgb3ZlcnJpZGU7Ci0gICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90IGljb25SZWNv
cmRDb3VudCgpIG92ZXJyaWRlOwotICAgIFdFQkNPUkVfRVhQT1JUIHNpemVfdCBpY29uUmVjb3Jk
Q291bnRXaXRoRGF0YSgpIG92ZXJyaWRlOworICAgIFdFQkNPUkVfRVhQT1JUIHNpemVfdCBwYWdl
VVJMTWFwcGluZ0NvdW50KCkgZmluYWw7CisgICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90IHJldGFp
bmVkUGFnZVVSTENvdW50KCkgZmluYWw7CisgICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90IGljb25S
ZWNvcmRDb3VudCgpIGZpbmFsOworICAgIFdFQkNPUkVfRVhQT1JUIHNpemVfdCBpY29uUmVjb3Jk
Q291bnRXaXRoRGF0YSgpIGZpbmFsOwogCiBwcml2YXRlOgogICAgIGZyaWVuZCBJY29uRGF0YWJh
c2VCYXNlJiBpY29uRGF0YWJhc2UoKTsKQEAgLTEzMCwxMiArMTMxLDEyIEBAIHByaXZhdGU6CiAK
IC8vICoqKiBBbnkgVGhyZWFkICoqKgogcHVibGljOgotICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wg
aXNPcGVuKCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgV0VCQ09SRV9FWFBPUlQgU3RyaW5nIGRhdGFi
YXNlUGF0aCgpIGNvbnN0IG92ZXJyaWRlOworICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgaXNPcGVu
KCkgY29uc3QgZmluYWw7CisgICAgV0VCQ09SRV9FWFBPUlQgU3RyaW5nIGRhdGFiYXNlUGF0aCgp
IGNvbnN0IGZpbmFsOwogICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBTdHJpbmcgZGVmYXVsdERh
dGFiYXNlRmlsZW5hbWUoKTsKIAogcHJpdmF0ZToKLSAgICBQYXNzUmVmUHRyPEljb25SZWNvcmQ+
IGdldE9yQ3JlYXRlSWNvblJlY29yZChjb25zdCBTdHJpbmcmIGljb25VUkwpOworICAgIFJlZjxJ
Y29uUmVjb3JkPiBnZXRPckNyZWF0ZUljb25SZWNvcmQoY29uc3QgU3RyaW5nJiBpY29uVVJMKTsK
ICAgICBQYWdlVVJMUmVjb3JkKiBnZXRPckNyZWF0ZVBhZ2VVUkxSZWNvcmQoY29uc3QgU3RyaW5n
JiBwYWdlVVJMKTsKICAgICAKICAgICBib29sIG1faXNFbmFibGVkOwpAQCAtMTc4LDcgKzE3OSw3
IEBAIHByaXZhdGU6CiAKIC8vICoqKiBTeW5jIFRocmVhZCBPbmx5ICoqKgogcHVibGljOgotICAg
IFdFQkNPUkVfRVhQT1JUIGJvb2wgc2hvdWxkU3RvcFRocmVhZEFjdGl2aXR5KCkgY29uc3Qgb3Zl
cnJpZGU7CisgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBzaG91bGRTdG9wVGhyZWFkQWN0aXZpdHko
KSBjb25zdCBmaW5hbDsKIAogcHJpdmF0ZTogICAgCiAgICAgc3RhdGljIHZvaWQgaWNvbkRhdGFi
YXNlU3luY1RocmVhZFN0YXJ0KHZvaWQgKik7CkBAIC0yMTMsNyArMjE0LDcgQEAgcHJpdmF0ZToK
ICAgICB2b2lkIHJlbW92ZVBhZ2VVUkxGcm9tU1FMRGF0YWJhc2UoY29uc3QgU3RyaW5nJiBwYWdl
VVJMKTsKICAgICBpbnQ2NF90IGdldEljb25JREZvckljb25VUkxGcm9tU1FMRGF0YWJhc2UoY29u
c3QgU3RyaW5nJiBpY29uVVJMKTsKICAgICBpbnQ2NF90IGFkZEljb25VUkxUb1NRTERhdGFiYXNl
KGNvbnN0IFN0cmluZyYpOwotICAgIFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBnZXRJbWFnZURh
dGFGb3JJY29uVVJMRnJvbVNRTERhdGFiYXNlKGNvbnN0IFN0cmluZyYgaWNvblVSTCk7CisgICAg
UmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZ2V0SW1hZ2VEYXRhRm9ySWNvblVSTEZyb21TUUxEYXRhYmFz
ZShjb25zdCBTdHJpbmcmIGljb25VUkwpOwogICAgIHZvaWQgcmVtb3ZlSWNvbkZyb21TUUxEYXRh
YmFzZShjb25zdCBTdHJpbmcmIGljb25VUkwpOwogICAgIHZvaWQgd3JpdGVJY29uU25hcHNob3RU
b1NRTERhdGFiYXNlKGNvbnN0IEljb25TbmFwc2hvdCYpOyAgICAKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlQmFzZS5oIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlQmFzZS5oCmluZGV4IDk4NmQ0ZDk2ZjU3MjdmNDZh
MWYyZTg3NTAzOWU2Yzg2MDMyZjYzODEuLmQ0MDUxYjkzNmM3MTBmYzI5YzcxZDUyZTQ3MjdiYTg1
YjBhZWI5OTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL0ljb25EYXRh
YmFzZUJhc2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2VC
YXNlLmgKQEAgLTI4LDcgKzI4LDYgQEAKICNpbmNsdWRlICJOYXRpdmVJbWFnZS5oIgogI2luY2x1
ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+Ci0jaW5jbHVk
ZSA8d3RmL1Bhc3NSZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CkBAIC0zOSwxMSArMzgsNyBAQCBjbGFzcyBJbWFnZTsKIGNsYXNzIElu
dFNpemU7CiBjbGFzcyBTaGFyZWRCdWZmZXI7CiAKLWVudW0gSWNvbkxvYWREZWNpc2lvbiB7Ci0g
ICAgSWNvbkxvYWRZZXMsCi0gICAgSWNvbkxvYWRObywKLSAgICBJY29uTG9hZFVua25vd24KLX07
CitlbnVtIEljb25Mb2FkRGVjaXNpb24geyBJY29uTG9hZFllcywgSWNvbkxvYWRObywgSWNvbkxv
YWRVbmtub3duIH07CiAKIGNsYXNzIENhbGxiYWNrQmFzZSA6IHB1YmxpYyBSZWZDb3VudGVkPENh
bGxiYWNrQmFzZT4gewogcHVibGljOgpAQCAtMTM0LDcgKzEyOSw3IEBAIHB1YmxpYzoKICAgICAg
ICAgbV9jYWxsYmFjayhyZXN1bHQsIGNvbnRleHQoKSk7CiAgICAgICAgIG1fY2FsbGJhY2sgPSBu
dWxscHRyOwogICAgIH0KLSAgICAKKwogICAgIHZvaWQgaW52YWxpZGF0ZSgpCiAgICAgewogICAg
ICAgICBtX2NhbGxiYWNrID0gbnVsbHB0cjsKQEAgLTE1MSwyNiArMTQ2LDIyIEBAIHByaXZhdGU6
CiAgICAgQ2FsbGJhY2tGdW5jdGlvbiBtX2NhbGxiYWNrOwogfTsKIAotdHlwZWRlZiBFbnVtQ2Fs
bGJhY2s8SWNvbkxvYWREZWNpc2lvbj4gSWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrOwotdHlwZWRl
ZiBPYmplY3RDYWxsYmFjazxTaGFyZWRCdWZmZXIqPiBJY29uRGF0YUNhbGxiYWNrOwordXNpbmcg
SWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrID0gRW51bUNhbGxiYWNrPEljb25Mb2FkRGVjaXNpb24+
OwordXNpbmcgSWNvbkRhdGFDYWxsYmFjayA9IE9iamVjdENhbGxiYWNrPFNoYXJlZEJ1ZmZlcio+
OwogCiBjbGFzcyBXRUJDT1JFX0VYUE9SVCBJY29uRGF0YWJhc2VCYXNlIHsKICAgICBXVEZfTUFL
RV9OT05DT1BZQUJMRShJY29uRGF0YWJhc2VCYXNlKTsKIAotcHJvdGVjdGVkOgotICAgIEljb25E
YXRhYmFzZUJhc2UoKSB7IH0KLQogcHVibGljOgogICAgIHZpcnR1YWwgfkljb25EYXRhYmFzZUJh
c2UoKSB7IH0KIAotICAgIC8vIFVzZWQgaW50ZXJuYWxseSBieSBXZWJDb3JlCiAgICAgdmlydHVh
bCBib29sIGlzRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9Ci0gICAgICAgIAorCiAg
ICAgdmlydHVhbCB2b2lkIHJldGFpbkljb25Gb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYpIHsgfQog
ICAgIHZpcnR1YWwgdm9pZCByZWxlYXNlSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikgeyB9
CiAKLSAgICB2aXJ0dWFsIHZvaWQgc2V0SWNvblVSTEZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJiwg
Y29uc3QgU3RyaW5nJikgeyB9Ci0gICAgdmlydHVhbCB2b2lkIHNldEljb25EYXRhRm9ySWNvblVS
TChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4sIGNvbnN0IFN0cmluZyYpIHsgfQorICAgIHZpcnR1
YWwgdm9pZCBzZXRJY29uVVJMRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIC8qaWNvblVSTCovLCBj
b25zdCBTdHJpbmcmIC8qcGFnZVVSTCovKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgc2V0SWNvbkRh
dGFGb3JJY29uVVJMKFNoYXJlZEJ1ZmZlciosIGNvbnN0IFN0cmluZyYgLyppY29uVVJMKi8pIHsg
fQogCiAgICAgLy8gU3luY2hyb25vdXMgY2FsbHMgdXNlZCBpbnRlcm5hbGx5IGJ5IFdlYkNvcmUu
CiAgICAgLy8gVXNhZ2Ugc2hvdWxkIGJlIHJlcGxhY2VkIGJ5IGFzeW5jaHJvbm91cyBjYWxscy4K
QEAgLTE4MiwxMiArMTczLDEyIEBAIHB1YmxpYzoKIAogICAgIC8vIEFzeW5jaHJvbm91cyBjYWxs
cyB3ZSBzaG91bGQgdXNlIHRvIHJlcGxhY2UgdGhlIGFib3ZlIHdoZW4gc3VwcG9ydGVkLgogICAg
IHZpcnR1YWwgYm9vbCBzdXBwb3J0c0FzeW5jaHJvbm91c01vZGUoKSB7IHJldHVybiBmYWxzZTsg
fQotICAgIHZpcnR1YWwgdm9pZCBsb2FkRGVjaXNpb25Gb3JJY29uVVJMKGNvbnN0IFN0cmluZyYs
IFBhc3NSZWZQdHI8SWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrPikgeyB9Ci0gICAgdmlydHVhbCB2
b2lkIGljb25EYXRhRm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBQYXNzUmVmUHRyPEljb25EYXRh
Q2FsbGJhY2s+KSB7IH0KLSAgICAKKyAgICB2aXJ0dWFsIHZvaWQgbG9hZERlY2lzaW9uRm9ySWNv
blVSTChjb25zdCBTdHJpbmcmLCBJY29uTG9hZERlY2lzaW9uQ2FsbGJhY2smKSB7IH0KKyAgICB2
aXJ0dWFsIHZvaWQgaWNvbkRhdGFGb3JJY29uVVJMKGNvbnN0IFN0cmluZyYsIEljb25EYXRhQ2Fs
bGJhY2smKSB7IH0KIAogICAgIC8vIFVzZWQgd2l0aGluIG9uZSBvciBtb3JlIFdlYktpdCBwb3J0
cy4KICAgICAvLyBXZSBzaG91bGQgdHJ5IHRvIHJlbW92ZSB0aGVzZSBkZXBlbmRlbmNpZXMgZnJv
bSB0aGUgSWNvbkRhdGFiYXNlQmFzZSBjbGFzcy4KKwogICAgIHZpcnR1YWwgdm9pZCBzZXRFbmFi
bGVkKGJvb2wpIHsgfQogCiAgICAgdmlydHVhbCBJbWFnZSogZGVmYXVsdEljb24oY29uc3QgSW50
U2l6ZSYpIHsgcmV0dXJuIG51bGxwdHI7IH0KQEAgLTIwNSwxMCArMTk2LDEyIEBAIHB1YmxpYzoK
IAogICAgIHZpcnR1YWwgdm9pZCBzZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkKGJvb2wpIHsgfQog
ICAgIHZpcnR1YWwgdm9pZCBzZXRDbGllbnQoSWNvbkRhdGFiYXNlQ2xpZW50KikgeyB9Ci0gICAg
CisKICAgICB2aXJ0dWFsIGJvb2wgaXNPcGVuKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KICAg
ICB2aXJ0dWFsIFN0cmluZyBkYXRhYmFzZVBhdGgoKSBjb25zdDsKIAorcHJvdGVjdGVkOgorICAg
IEljb25EYXRhYmFzZUJhc2UoKSA9IGRlZmF1bHQ7CiB9OwogCiAvLyBGdW5jdGlvbnMgdG8gZ2V0
L3NldCB0aGUgZ2xvYmFsIGljb24gZGF0YWJhc2UuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvaWNvbi9QYWdlVVJMUmVjb3JkLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9p
Y29uL1BhZ2VVUkxSZWNvcmQuY3BwCmluZGV4IGY4YjIzMTRjZjExOGNiOWQ4NjhjMTQwZDhiODJl
YTEzNTQxZGI4YjAuLjk5ZGRlZDhmMjA1ZjNhYWJmNGVjZjgwZDA3NWFhYzg1Zjk2MjkxYmEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL1BhZ2VVUkxSZWNvcmQuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL1BhZ2VVUkxSZWNvcmQuY3BwCkBAIC0zNSwy
OSArMzUsMjkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBQYWdlVVJMUmVjb3JkOjpQYWdlVVJM
UmVjb3JkKGNvbnN0IFN0cmluZyYgcGFnZVVSTCkKICAgICA6IG1fcGFnZVVSTChwYWdlVVJMKQot
ICAgICwgbV9yZXRhaW5Db3VudCgwKQogewogfQogCiBQYWdlVVJMUmVjb3JkOjp+UGFnZVVSTFJl
Y29yZCgpCiB7Ci0gICAgc2V0SWNvblJlY29yZChudWxscHRyKTsKKyAgICBpZiAobV9pY29uUmVj
b3JkKQorICAgICAgICBtX2ljb25SZWNvcmQtPm1fcmV0YWluaW5nUGFnZVVSTHMucmVtb3ZlKG1f
cGFnZVVSTCk7CiB9CiAKLXZvaWQgUGFnZVVSTFJlY29yZDo6c2V0SWNvblJlY29yZChQYXNzUmVm
UHRyPEljb25SZWNvcmQ+IGljb24pCit2b2lkIFBhZ2VVUkxSZWNvcmQ6OnNldEljb25SZWNvcmQo
UmVmUHRyPEljb25SZWNvcmQ+JiYgaWNvbikKIHsKICAgICBpZiAobV9pY29uUmVjb3JkKQogICAg
ICAgICBtX2ljb25SZWNvcmQtPm1fcmV0YWluaW5nUGFnZVVSTHMucmVtb3ZlKG1fcGFnZVVSTCk7
Ci0gICAgICAgIAotICAgIG1faWNvblJlY29yZCA9IGljb247Ci0gICAgCisKKyAgICBtX2ljb25S
ZWNvcmQgPSBXVEZNb3ZlKGljb24pOworCiAgICAgaWYgKG1faWNvblJlY29yZCkKICAgICAgICAg
bV9pY29uUmVjb3JkLT5tX3JldGFpbmluZ1BhZ2VVUkxzLmFkZChtX3BhZ2VVUkwpOwogfQogICAg
IAogUGFnZVVSTFNuYXBzaG90IFBhZ2VVUkxSZWNvcmQ6OnNuYXBzaG90KGJvb2wgZm9yRGVsZXRp
b24pIGNvbnN0IAogewotICAgIHJldHVybiBQYWdlVVJMU25hcHNob3QobV9wYWdlVVJMLCAobV9p
Y29uUmVjb3JkICYmICFmb3JEZWxldGlvbikgPyBtX2ljb25SZWNvcmQtPmljb25VUkwoKSA6IFN0
cmluZygpKTsKKyAgICByZXR1cm4geyBtX3BhZ2VVUkwsIChtX2ljb25SZWNvcmQgJiYgIWZvckRl
bGV0aW9uKSA/IG1faWNvblJlY29yZC0+aWNvblVSTCgpIDogU3RyaW5nKCkgfTsKIH0KIAogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2lj
b24vUGFnZVVSTFJlY29yZC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vUGFnZVVSTFJl
Y29yZC5oCmluZGV4IGVmZWQzNDUwYzUyZDc5MDQzZjNiYjYyZjcwZjI2ZjNmZGZjZWNiM2QuLjE4
OTg3NWUzMmQ4YTc0ZGU0MTdkNTllMTZiZDQwY2E3OGE5MjBlODEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9pY29uL1BhZ2VVUkxSZWNvcmQuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvaWNvbi9QYWdlVVJMUmVjb3JkLmgKQEAgLTYxLDcgKzYxLDcgQEAgcHVibGljOgog
CiAgICAgaW5saW5lIFN0cmluZyB1cmwoKSBjb25zdCB7IHJldHVybiBtX3BhZ2VVUkw7IH0KICAg
ICAKLSAgICB2b2lkIHNldEljb25SZWNvcmQoUGFzc1JlZlB0cjxJY29uUmVjb3JkPik7CisgICAg
dm9pZCBzZXRJY29uUmVjb3JkKFJlZlB0cjxJY29uUmVjb3JkPiYmKTsKICAgICBJY29uUmVjb3Jk
KiBpY29uUmVjb3JkKCkgeyByZXR1cm4gbV9pY29uUmVjb3JkLmdldCgpOyB9CiAKICAgICBQYWdl
VVJMU25hcHNob3Qgc25hcHNob3QoYm9vbCBmb3JEZWxldGlvbiA9IGZhbHNlKSBjb25zdDsKQEAg
LTgyLDEyICs4MiwxMiBAQCBwdWJsaWM6CiAgICAgICAgIHJldHVybiBtX3JldGFpbkNvdW50ID4g
MDsKICAgICB9CiAKLSAgICBpbmxpbmUgaW50IHJldGFpbkNvdW50KCkgY29uc3QgeyByZXR1cm4g
bV9yZXRhaW5Db3VudDsgfQorICAgIGludCByZXRhaW5Db3VudCgpIGNvbnN0IHsgcmV0dXJuIG1f
cmV0YWluQ291bnQ7IH0KIAogcHJpdmF0ZToKICAgICBTdHJpbmcgbV9wYWdlVVJMOwogICAgIFJl
ZlB0cjxJY29uUmVjb3JkPiBtX2ljb25SZWNvcmQ7Ci0gICAgaW50IG1fcmV0YWluQ291bnQ7Cisg
ICAgaW50IG1fcmV0YWluQ291bnQgeyAwIH07CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaW9zL1F1aWNrTG9vay5oIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2lvcy9RdWlja0xvb2suaAppbmRleCA1NTNjZWQ1MjU2NWY5YWI2
ZDQwMzg4YzEzNmU1M2E3ZTY5ZTRjNzYxLi42ZmQxY2M2OGViNmQ0ZjE4YWU4MWU1NzMxNzdiNzZh
NWRhNDRkNWEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaW9zL1F1aWNrTG9v
ay5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pb3MvUXVpY2tMb29rLmgKQEAgLTg0LDcg
Kzg0LDcgQEAgcHVibGljOgogCiAgICAgV0VCQ09SRV9FWFBPUlQgTlNVUkxSZXNwb25zZSAqbnNS
ZXNwb25zZSgpOwogCi0gICAgdm9pZCBzZXRDbGllbnQoUGFzc1JlZlB0cjxRdWlja0xvb2tIYW5k
bGVDbGllbnQ+IGNsaWVudCkgeyBtX2NsaWVudCA9IGNsaWVudDsgfQorICAgIHZvaWQgc2V0Q2xp
ZW50KFJlZjxRdWlja0xvb2tIYW5kbGVDbGllbnQ+JiYgY2xpZW50KSB7IG1fY2xpZW50ID0gV1RG
TW92ZShjbGllbnQpOyB9CiAKICAgICBXRUJDT1JFX0VYUE9SVCBTdHJpbmcgcHJldmlld0ZpbGVO
YW1lKCkgY29uc3Q7CiAgICAgV0VCQ09SRV9FWFBPUlQgU3RyaW5nIHByZXZpZXdVVEkoKSBjb25z
dDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pb3MvUXVpY2tMb29rLm1tIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2lvcy9RdWlja0xvb2subW0KaW5kZXggZDE0MjE0NzY3Y2I1
N2FjMzAyY2IxZWIxYjU2NzIyMDM0NTI3N2YzYi4uMjg0ZDQyZTFmZjUyNDhkZDRjM2IyNjZjYjg0
YjkyNGVjMzViNzQyMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2lvcy9RdWlj
a0xvb2subW0KKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2lvcy9RdWlja0xvb2subW0KQEAg
LTE4OSwxMyArMTg5LDEzIEBAIEBlbmQKIAogQGltcGxlbWVudGF0aW9uIFdlYlJlc291cmNlTG9h
ZGVyUXVpY2tMb29rRGVsZWdhdGUKIAotLSAoaWQpaW5pdFdpdGhSZXNvdXJjZUxvYWRlcjooUGFz
c1JlZlB0cjxSZXNvdXJjZUxvYWRlcj4pcmVzb3VyY2VMb2FkZXIKKy0gKGlkKWluaXRXaXRoUmVz
b3VyY2VMb2FkZXI6KFJlc291cmNlTG9hZGVyJilyZXNvdXJjZUxvYWRlcgogewogICAgIHNlbGYg
PSBbc3VwZXIgaW5pdF07CiAgICAgaWYgKCFzZWxmKQogICAgICAgICByZXR1cm4gbmlsOwogCi0g
ICAgX3Jlc291cmNlTG9hZGVyID0gcmVzb3VyY2VMb2FkZXI7CisgICAgX3Jlc291cmNlTG9hZGVy
ID0gJnJlc291cmNlTG9hZGVyOwogICAgIHJldHVybiBzZWxmOwogfQogCkBAIC0zMzEsNyArMzMx
LDcgQEAgc3RkOjp1bmlxdWVfcHRyPFF1aWNrTG9va0hhbmRsZT4gUXVpY2tMb29rSGFuZGxlOjpj
cmVhdGUoUmVzb3VyY2VMb2FkZXImIGxvYWRlciwKIHsKICAgICBBU1NFUlQoc2hvdWxkQ3JlYXRl
Rm9yTUlNRVR5cGUocmVzcG9uc2UubWltZVR5cGUoKSkpOwogCi0gICAgUmV0YWluUHRyPFdlYlJl
c291cmNlTG9hZGVyUXVpY2tMb29rRGVsZWdhdGU+IGRlbGVnYXRlID0gYWRvcHROUyhbW1dlYlJl
c291cmNlTG9hZGVyUXVpY2tMb29rRGVsZWdhdGUgYWxsb2NdIGluaXRXaXRoUmVzb3VyY2VMb2Fk
ZXI6JmxvYWRlcl0pOworICAgIFJldGFpblB0cjxXZWJSZXNvdXJjZUxvYWRlclF1aWNrTG9va0Rl
bGVnYXRlPiBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tXZWJSZXNvdXJjZUxvYWRlclF1aWNrTG9va0Rl
bGVnYXRlIGFsbG9jXSBpbml0V2l0aFJlc291cmNlTG9hZGVyOmxvYWRlcl0pOwogICAgIHN0ZDo6
dW5pcXVlX3B0cjxRdWlja0xvb2tIYW5kbGU+IHF1aWNrTG9va0hhbmRsZShuZXcgUXVpY2tMb29r
SGFuZGxlKFtsb2FkZXIub3JpZ2luYWxSZXF1ZXN0KCkubnNVUkxSZXF1ZXN0KERvTm90VXBkYXRl
SFRUUEJvZHkpIFVSTF0sIHJlc3BvbnNlLm5zVVJMUmVzcG9uc2UoKSwgZGVsZWdhdGUuZ2V0KCkp
KTsKICAgICBbZGVsZWdhdGUgc2V0UXVpY2tMb29rSGFuZGxlOnF1aWNrTG9va0hhbmRsZS5nZXQo
KV07CiAgICAgbG9hZGVyLmRpZENyZWF0ZVF1aWNrTG9va0hhbmRsZSgqcXVpY2tMb29rSGFuZGxl
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21lLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvQ2hyb21lLmNwcAppbmRleCBkMDE1YmE0NWEzM2FlYmNlMTcyOWQzYjk5YjI1
NWY1NDUzMDFlNzZhLi4xZWM2NmU5OTEwZjU1NjQ5ZWU2MGI5ZjZkYzI5MGYxMzMyNDBhZDRkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9DaHJvbWUuY3BwCkBAIC00MzIsNyArNDMyLDcgQEAgc3RkOjp1bmlxdWVfcHRy
PENvbG9yQ2hvb3Nlcj4gQ2hyb21lOjpjcmVhdGVDb2xvckNob29zZXIoQ29sb3JDaG9vc2VyQ2xp
ZW50KiBjbGkKIH0KICNlbmRpZgogCi12b2lkIENocm9tZTo6cnVuT3BlblBhbmVsKEZyYW1lKiBm
cmFtZSwgUGFzc1JlZlB0cjxGaWxlQ2hvb3Nlcj4gZmlsZUNob29zZXIpCit2b2lkIENocm9tZTo6
cnVuT3BlblBhbmVsKEZyYW1lJiBmcmFtZSwgRmlsZUNob29zZXImIGZpbGVDaG9vc2VyKQogewog
ICAgIG5vdGlmeVBvcHVwT3BlbmluZ09ic2VydmVycygpOwogICAgIG1fY2xpZW50LnJ1bk9wZW5Q
YW5lbChmcmFtZSwgZmlsZUNob29zZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9DaHJvbWUuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21lLmgKaW5kZXggZjIzODYwYTJi
ZGFmM2MyOTNlMDE5M2MyY2E0OTJiYTZhODhmN2M1Mi4uYjUwZjc4NzNmMTA0OWUwNjE2ZDcyMzk4
MDEzZDMxNDYyNzRiM2Y3NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWUu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZS5oCkBAIC0xNTYsNyArMTU2LDcgQEAg
cHVibGljOgogICAgIHN0ZDo6dW5pcXVlX3B0cjxDb2xvckNob29zZXI+IGNyZWF0ZUNvbG9yQ2hv
b3NlcihDb2xvckNob29zZXJDbGllbnQqLCBjb25zdCBDb2xvciYgaW5pdGlhbENvbG9yKTsKICNl
bmRpZgogCi0gICAgdm9pZCBydW5PcGVuUGFuZWwoRnJhbWUqLCBQYXNzUmVmUHRyPEZpbGVDaG9v
c2VyPik7CisgICAgdm9pZCBydW5PcGVuUGFuZWwoRnJhbWUmLCBGaWxlQ2hvb3NlciYpOwogICAg
IHZvaWQgbG9hZEljb25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8U3RyaW5nPiYsIEZpbGVJY29uTG9h
ZGVyJik7CiAKICAgICB2b2lkIGRpc3BhdGNoVmlld3BvcnRQcm9wZXJ0aWVzRGlkQ2hhbmdlKGNv
bnN0IFZpZXdwb3J0QXJndW1lbnRzJikgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0Nocm9tZUNsaWVudC5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWVDbGllbnQu
aAppbmRleCBhMDlmZTNjYjMwYmEzZDgxOGMxNGQxZDE4ZWQ2NTM1ZTFmZTM4ODE1Li44NjgyNmU1
OTUwODlmMjRjMjViMjc4NmMxZjRlOTgyMmRjNDRkZWRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0Nocm9tZUNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21l
Q2xpZW50LmgKQEAgLTI3Myw3ICsyNzMsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBzdGQ6OnVu
aXF1ZV9wdHI8Q29sb3JDaG9vc2VyPiBjcmVhdGVDb2xvckNob29zZXIoQ29sb3JDaG9vc2VyQ2xp
ZW50KiwgY29uc3QgQ29sb3ImKSA9IDA7CiAjZW5kaWYKIAotICAgIHZpcnR1YWwgdm9pZCBydW5P
cGVuUGFuZWwoRnJhbWUqLCBQYXNzUmVmUHRyPEZpbGVDaG9vc2VyPikgPSAwOworICAgIHZpcnR1
YWwgdm9pZCBydW5PcGVuUGFuZWwoRnJhbWUmLCBGaWxlQ2hvb3NlciYpID0gMDsKICAgICAvLyBB
c3luY2hyb25vdXMgcmVxdWVzdCB0byBsb2FkIGFuIGljb24gZm9yIHNwZWNpZmllZCBmaWxlbmFt
ZXMuCiAgICAgdmlydHVhbCB2b2lkIGxvYWRJY29uRm9yRmlsZXMoY29uc3QgVmVjdG9yPFN0cmlu
Zz4mLCBGaWxlSWNvbkxvYWRlciYpID0gMDsKICAgICAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRv
dy5jcHAKaW5kZXggNmEyN2IyYzI5YmQyZmU0NDFhMjA4MjJkNGQ5ZDVkYjU3OWVhNzc2ZC4uOWY3
YTZhYzUwMWEzNmI4NGNkYjU3MTRhMmRjMjRlYmY3MmRhYjUzZSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9N
V2luZG93LmNwcApAQCAtNzczLDcgKzc3Myw3IEBAIERPTUFwcGxpY2F0aW9uQ2FjaGUqIERPTVdp
bmRvdzo6YXBwbGljYXRpb25DYWNoZSgpIGNvbnN0CiAgICAgaWYgKCFpc0N1cnJlbnRseURpc3Bs
YXllZEluRnJhbWUoKSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgaWYgKCFtX2FwcGxp
Y2F0aW9uQ2FjaGUpCi0gICAgICAgIG1fYXBwbGljYXRpb25DYWNoZSA9IERPTUFwcGxpY2F0aW9u
Q2FjaGU6OmNyZWF0ZShtX2ZyYW1lKTsKKyAgICAgICAgbV9hcHBsaWNhdGlvbkNhY2hlID0gRE9N
QXBwbGljYXRpb25DYWNoZTo6Y3JlYXRlKCptX2ZyYW1lKTsKICAgICByZXR1cm4gbV9hcHBsaWNh
dGlvbkNhY2hlLmdldCgpOwogfQogCkBAIC0yMDg3LDcgKzIwODcsNyBAQCB2b2lkIERPTVdpbmRv
dzo6c2V0TG9jYXRpb24oRE9NV2luZG93JiBhY3RpdmVXaW5kb3csIERPTVdpbmRvdyYgZmlyc3RX
aW5kb3csIGNvbgogICAgIC8vIFdlIHdhbnQgYSBuZXcgaGlzdG9yeSBpdGVtIGlmIHdlIGFyZSBw
cm9jZXNzaW5nIGEgdXNlciBnZXN0dXJlLgogICAgIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5ID0g
KGxvY2tpbmcgIT0gTG9ja0hpc3RvcnlCYXNlZE9uR2VzdHVyZVN0YXRlIHx8ICFTY3JpcHRDb250
cm9sbGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSkgPyBMb2NrSGlzdG9yeTo6WWVzIDogTG9j
a0hpc3Rvcnk6Ok5vOwogICAgIExvY2tCYWNrRm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3YXJkTGlz
dCA9IChsb2NraW5nICE9IExvY2tIaXN0b3J5QmFzZWRPbkdlc3R1cmVTdGF0ZSkgPyBMb2NrQmFj
a0ZvcndhcmRMaXN0OjpZZXMgOiBMb2NrQmFja0ZvcndhcmRMaXN0OjpObzsKLSAgICBtX2ZyYW1l
LT5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZShhY3RpdmVEb2N1
bWVudCwgYWN0aXZlRG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCksCisgICAgbV9mcmFtZS0+bmF2
aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UoKmFjdGl2ZURvY3VtZW50
LCBhY3RpdmVEb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKSwKICAgICAgICAgLy8gRklYTUU6IFdo
YXQgaWYgYWN0aXZlRG9jdW1lbnQoKS0+ZnJhbWUoKSBpcyAwPwogICAgICAgICBjb21wbGV0ZWRV
UkwsIGFjdGl2ZURvY3VtZW50LT5mcmFtZSgpLT5sb2FkZXIoKS5vdXRnb2luZ1JlZmVycmVyKCks
CiAgICAgICAgIGxvY2tIaXN0b3J5LCBsb2NrQmFja0ZvcndhcmRMaXN0KTsKQEAgLTIyMTMsNyAr
MjIxMyw3IEBAIFJlZlB0cjxGcmFtZT4gRE9NV2luZG93OjpjcmVhdGVXaW5kb3coY29uc3QgU3Ry
aW5nJiB1cmxTdHJpbmcsIGNvbnN0IEF0b21pY1N0cmluCiAgICAgICAgIG5ld0ZyYW1lLT5sb2Fk
ZXIoKS5jaGFuZ2VMb2NhdGlvbihmcmFtZVJlcXVlc3QpOwogICAgIH0gZWxzZSBpZiAoIXVybFN0
cmluZy5pc0VtcHR5KCkpIHsKICAgICAgICAgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnkgPSBTY3Jp
cHRDb250cm9sbGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSA/IExvY2tIaXN0b3J5OjpObyA6
IExvY2tIaXN0b3J5OjpZZXM7Ci0gICAgICAgIG5ld0ZyYW1lLT5uYXZpZ2F0aW9uU2NoZWR1bGVy
KCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZShhY3RpdmVXaW5kb3cuZG9jdW1lbnQoKSwgYWN0aXZl
V2luZG93LmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCksIGNvbXBsZXRlZFVSTCwgcmVmZXJy
ZXIsIGxvY2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0OjpObyk7CisgICAgICAgIG5ld0Zy
YW1lLT5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZSgqYWN0aXZl
V2luZG93LmRvY3VtZW50KCksIGFjdGl2ZVdpbmRvdy5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdp
bigpLCBjb21wbGV0ZWRVUkwsIHJlZmVycmVyLCBsb2NrSGlzdG9yeSwgTG9ja0JhY2tGb3J3YXJk
TGlzdDo6Tm8pOwogICAgIH0KIAogICAgIC8vIE5hdmlnYXRpbmcgdGhlIG5ldyBmcmFtZSBjb3Vs
ZCByZXN1bHQgaW4gaXQgYmVpbmcgZGV0YWNoZWQgZnJvbSBpdHMgcGFnZSBieSBhIG5hdmlnYXRp
b24gcG9saWN5IGRlbGVnYXRlLgpAQCAtMjIyMywyOCArMjIyMywyNiBAQCBSZWZQdHI8RnJhbWU+
IERPTVdpbmRvdzo6Y3JlYXRlV2luZG93KGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nLCBjb25zdCBB
dG9taWNTdHJpbgogICAgIHJldHVybiBuZXdGcmFtZTsKIH0KIAotUmVmUHRyPERPTVdpbmRvdz4g
RE9NV2luZG93OjpvcGVuKGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nLCBjb25zdCBBdG9taWNTdHJp
bmcmIGZyYW1lTmFtZSwgY29uc3QgU3RyaW5nJiB3aW5kb3dGZWF0dXJlc1N0cmluZywKLSAgICBE
T01XaW5kb3cmIGFjdGl2ZVdpbmRvdywgRE9NV2luZG93JiBmaXJzdFdpbmRvdykKK1JlZlB0cjxE
T01XaW5kb3c+IERPTVdpbmRvdzo6b3Blbihjb25zdCBTdHJpbmcmIHVybFN0cmluZywgY29uc3Qg
QXRvbWljU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IFN0cmluZyYgd2luZG93RmVhdHVyZXNTdHJp
bmcsIERPTVdpbmRvdyYgYWN0aXZlV2luZG93LCBET01XaW5kb3cmIGZpcnN0V2luZG93KQogewog
ICAgIGlmICghaXNDdXJyZW50bHlEaXNwbGF5ZWRJbkZyYW1lKCkpCiAgICAgICAgIHJldHVybiBu
dWxscHRyOwogCi0gICAgRG9jdW1lbnQqIGFjdGl2ZURvY3VtZW50ID0gYWN0aXZlV2luZG93LmRv
Y3VtZW50KCk7CisgICAgYXV0byogYWN0aXZlRG9jdW1lbnQgPSBhY3RpdmVXaW5kb3cuZG9jdW1l
bnQoKTsKICAgICBpZiAoIWFjdGl2ZURvY3VtZW50KQogICAgICAgICByZXR1cm4gbnVsbHB0cjsK
IAotICAgIEZyYW1lKiBmaXJzdEZyYW1lID0gZmlyc3RXaW5kb3cuZnJhbWUoKTsKKyAgICBhdXRv
KiBmaXJzdEZyYW1lID0gZmlyc3RXaW5kb3cuZnJhbWUoKTsKICAgICBpZiAoIWZpcnN0RnJhbWUp
CiAgICAgICAgIHJldHVybiBudWxscHRyOwogCiAjaWYgRU5BQkxFKENPTlRFTlRfRVhURU5TSU9O
UykKICAgICBpZiAoZmlyc3RGcmFtZS0+ZG9jdW1lbnQoKQotICAgICAgICAmJiBmaXJzdEZyYW1l
LT5tYWluRnJhbWUoKS5wYWdlKCkKKyAgICAgICAgJiYgZmlyc3RGcmFtZS0+cGFnZSgpCiAgICAg
ICAgICYmIGZpcnN0RnJhbWUtPm1haW5GcmFtZSgpLmRvY3VtZW50KCkKICAgICAgICAgJiYgZmly
c3RGcmFtZS0+bWFpbkZyYW1lKCkuZG9jdW1lbnQoKS0+bG9hZGVyKCkpIHsKLSAgICAgICAgUmVz
b3VyY2VMb2FkSW5mbyByZXNvdXJjZUxvYWRJbmZvID0geyBmaXJzdEZyYW1lLT5kb2N1bWVudCgp
LT5jb21wbGV0ZVVSTCh1cmxTdHJpbmcpLCBmaXJzdEZyYW1lLT5tYWluRnJhbWUoKS5kb2N1bWVu
dCgpLT51cmwoKSwgUmVzb3VyY2VUeXBlOjpQb3B1cCB9OwotICAgICAgICBWZWN0b3I8Q29udGVu
dEV4dGVuc2lvbnM6OkFjdGlvbj4gYWN0aW9ucyA9IGZpcnN0RnJhbWUtPm1haW5GcmFtZSgpLnBh
Z2UoKS0+dXNlckNvbnRlbnRQcm92aWRlcigpLmFjdGlvbnNGb3JSZXNvdXJjZUxvYWQocmVzb3Vy
Y2VMb2FkSW5mbywgKmZpcnN0RnJhbWUtPm1haW5GcmFtZSgpLmRvY3VtZW50KCktPmxvYWRlcigp
KTsKLSAgICAgICAgZm9yIChjb25zdCBDb250ZW50RXh0ZW5zaW9uczo6QWN0aW9uJiBhY3Rpb24g
OiBhY3Rpb25zKSB7CisgICAgICAgIFJlc291cmNlTG9hZEluZm8gcmVzb3VyY2VMb2FkSW5mbyB7
IGZpcnN0RnJhbWUtPmRvY3VtZW50KCktPmNvbXBsZXRlVVJMKHVybFN0cmluZyksIGZpcnN0RnJh
bWUtPm1haW5GcmFtZSgpLmRvY3VtZW50KCktPnVybCgpLCBSZXNvdXJjZVR5cGU6OlBvcHVwIH07
CisgICAgICAgIGZvciAoYXV0byYgYWN0aW9uIDogZmlyc3RGcmFtZS0+cGFnZSgpLT51c2VyQ29u
dGVudFByb3ZpZGVyKCkuYWN0aW9uc0ZvclJlc291cmNlTG9hZChyZXNvdXJjZUxvYWRJbmZvLCAq
Zmlyc3RGcmFtZS0+bWFpbkZyYW1lKCkuZG9jdW1lbnQoKS0+bG9hZGVyKCkpKSB7CiAgICAgICAg
ICAgICBpZiAoYWN0aW9uLnR5cGUoKSA9PSBDb250ZW50RXh0ZW5zaW9uczo6QWN0aW9uVHlwZTo6
QmxvY2tMb2FkKQogICAgICAgICAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgICAgICB9CkBA
IC0yMjg0LDcgKzIyODIsNyBAQCBSZWZQdHI8RE9NV2luZG93PiBET01XaW5kb3c6Om9wZW4oY29u
c3QgU3RyaW5nJiB1cmxTdHJpbmcsIGNvbnN0IEF0b21pY1N0cmluZyYgZgogICAgICAgICAvLyBG
b3Igd2hhdGV2ZXIgcmVhc29uLCBGaXJlZm94IHVzZXMgdGhlIGZpcnN0IHdpbmRvdyByYXRoZXIg
dGhhbiB0aGUgYWN0aXZlIHdpbmRvdyB0bwogICAgICAgICAvLyBkZXRlcm1pbmUgdGhlIG91dGdv
aW5nIHJlZmVycmVyLiBXZSByZXBsaWNhdGUgdGhhdCBiZWhhdmlvciBoZXJlLgogICAgICAgICBM
b2NrSGlzdG9yeSBsb2NrSGlzdG9yeSA9IFNjcmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2Vy
R2VzdHVyZSgpID8gTG9ja0hpc3Rvcnk6Ok5vIDogTG9ja0hpc3Rvcnk6OlllczsKLSAgICAgICAg
dGFyZ2V0RnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdl
KGFjdGl2ZURvY3VtZW50LCBhY3RpdmVEb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKSwgY29tcGxl
dGVkVVJMLCBmaXJzdEZyYW1lLT5sb2FkZXIoKS5vdXRnb2luZ1JlZmVycmVyKCksCisgICAgICAg
IHRhcmdldEZyYW1lLT5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5n
ZSgqYWN0aXZlRG9jdW1lbnQsIGFjdGl2ZURvY3VtZW50LT5zZWN1cml0eU9yaWdpbigpLCBjb21w
bGV0ZWRVUkwsIGZpcnN0RnJhbWUtPmxvYWRlcigpLm91dGdvaW5nUmVmZXJyZXIoKSwKICAgICAg
ICAgICAgIGxvY2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0OjpObyk7CiAgICAgICAgIHJl
dHVybiB0YXJnZXRGcmFtZS0+ZG9jdW1lbnQoKS0+ZG9tV2luZG93KCk7CiAgICAgfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9FZGl0b3JDbGllbnQuaCBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvRWRpdG9yQ2xpZW50LmgKaW5kZXggZWIxYTQyZTJlZWQwM2E1MTRkMTIzNjA4YmNlNzNi
NGUyZDU2NzgwYS4uZjQxMzIxMDlmNjQ5M2MzMDU4MmE5ODkxOTJjOGRiMzU1OTk5Nzg0YyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9FZGl0b3JDbGllbnQuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0VkaXRvckNsaWVudC5oCkBAIC0xMDQsOCArMTA0LDggQEAgcHVibGljOgog
ICAgIHZpcnR1YWwgdm9pZCBkaXNjYXJkZWRDb21wb3NpdGlvbihGcmFtZSopID0gMDsKICAgICB2
aXJ0dWFsIHZvaWQgY2FuY2VsZWRDb21wb3NpdGlvbigpID0gMDsKIAotICAgIHZpcnR1YWwgdm9p
ZCByZWdpc3RlclVuZG9TdGVwKFBhc3NSZWZQdHI8VW5kb1N0ZXA+KSA9IDA7Ci0gICAgdmlydHVh
bCB2b2lkIHJlZ2lzdGVyUmVkb1N0ZXAoUGFzc1JlZlB0cjxVbmRvU3RlcD4pID0gMDsKKyAgICB2
aXJ0dWFsIHZvaWQgcmVnaXN0ZXJVbmRvU3RlcChVbmRvU3RlcCYpID0gMDsKKyAgICB2aXJ0dWFs
IHZvaWQgcmVnaXN0ZXJSZWRvU3RlcChVbmRvU3RlcCYpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQg
Y2xlYXJVbmRvUmVkb09wZXJhdGlvbnMoKSA9IDA7CiAKICAgICB2aXJ0dWFsIGJvb2wgY2FuQ29w
eUN1dChGcmFtZSosIGJvb2wgZGVmYXVsdFZhbHVlKSBjb25zdCA9IDA7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL0hpc3RvcnkuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9IaXN0
b3J5LmNwcAppbmRleCAxZDQ1NDJiODdlYTYxMjUwYTg0YmQ3Y2Q5MTY3MmQ1ZWFmYjM4NGRmLi42
M2VkM2QwMDdlYmVkMWE4MjM5MGJhZTE5ODc1YjM1Mjc2OWZlOGUzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0hpc3RvcnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvSGlz
dG9yeS5jcHAKQEAgLTIwNywxMCArMjA3LDEwIEBAIEV4Y2VwdGlvbk9yPHZvaWQ+IEhpc3Rvcnk6
OnN0YXRlT2JqZWN0QWRkZWQoUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4mJiBkYXRhCiAg
ICAgICAgIG1fZnJhbWUtPmRvY3VtZW50KCktPnVwZGF0ZVVSTEZvclB1c2hPclJlcGxhY2VTdGF0
ZShmdWxsVVJMKTsKIAogICAgIGlmIChzdGF0ZU9iamVjdFR5cGUgPT0gU3RhdGVPYmplY3RUeXBl
OjpQdXNoKSB7Ci0gICAgICAgIG1fZnJhbWUtPmxvYWRlcigpLmhpc3RvcnkoKS5wdXNoU3RhdGUo
ZGF0YSwgdGl0bGUsIGZ1bGxVUkwuc3RyaW5nKCkpOworICAgICAgICBtX2ZyYW1lLT5sb2FkZXIo
KS5oaXN0b3J5KCkucHVzaFN0YXRlKFdURk1vdmUoZGF0YSksIHRpdGxlLCBmdWxsVVJMLnN0cmlu
ZygpKTsKICAgICAgICAgbV9mcmFtZS0+bG9hZGVyKCkuY2xpZW50KCkuZGlzcGF0Y2hEaWRQdXNo
U3RhdGVXaXRoaW5QYWdlKCk7CiAgICAgfSBlbHNlIGlmIChzdGF0ZU9iamVjdFR5cGUgPT0gU3Rh
dGVPYmplY3RUeXBlOjpSZXBsYWNlKSB7Ci0gICAgICAgIG1fZnJhbWUtPmxvYWRlcigpLmhpc3Rv
cnkoKS5yZXBsYWNlU3RhdGUoZGF0YSwgdGl0bGUsIGZ1bGxVUkwuc3RyaW5nKCkpOworICAgICAg
ICBtX2ZyYW1lLT5sb2FkZXIoKS5oaXN0b3J5KCkucmVwbGFjZVN0YXRlKFdURk1vdmUoZGF0YSks
IHRpdGxlLCBmdWxsVVJMLnN0cmluZygpKTsKICAgICAgICAgbV9mcmFtZS0+bG9hZGVyKCkuY2xp
ZW50KCkuZGlzcGF0Y2hEaWRSZXBsYWNlU3RhdGVXaXRoaW5QYWdlKCk7CiAgICAgfQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0xvY2F0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvTG9jYXRpb24uY3BwCmluZGV4IDhkODM5ZDEzYTkxOTgwZTFhMDI4ZGJjNTgwYmJiZjFk
MzY2ZDQ1NmYuLmJkYjU0OGIwYjc4OTM0YWM2MmMxNzFlNjlmN2YxMjkzYmZmYTQyNzYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTG9jYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvTG9jYXRpb24uY3BwCkBAIC0yMjEsOSArMjIxLDEwIEBAIHZvaWQgTG9jYXRpb246
OnNldEhhc2goRE9NV2luZG93JiBhY3RpdmVXaW5kb3csIERPTVdpbmRvdyYgZmlyc3RXaW5kb3cs
IGNvbnN0IFN0CiB7CiAgICAgaWYgKCFtX2ZyYW1lKQogICAgICAgICByZXR1cm47Ci0gICAgVVJM
IHVybCA9IG1fZnJhbWUtPmRvY3VtZW50KCktPnVybCgpOwotICAgIFN0cmluZyBvbGRGcmFnbWVu
dElkZW50aWZpZXIgPSB1cmwuZnJhZ21lbnRJZGVudGlmaWVyKCk7Ci0gICAgU3RyaW5nIG5ld0Zy
YWdtZW50SWRlbnRpZmllciA9IGhhc2g7CisgICAgQVNTRVJUKG1fZnJhbWUtPmRvY3VtZW50KCkp
OworICAgIGF1dG8gdXJsID0gbV9mcmFtZS0+ZG9jdW1lbnQoKS0+dXJsKCk7CisgICAgYXV0byBv
bGRGcmFnbWVudElkZW50aWZpZXIgPSB1cmwuZnJhZ21lbnRJZGVudGlmaWVyKCk7CisgICAgYXV0
byBuZXdGcmFnbWVudElkZW50aWZpZXIgPSBoYXNoOwogICAgIGlmIChoYXNoWzBdID09ICcjJykK
ICAgICAgICAgbmV3RnJhZ21lbnRJZGVudGlmaWVyID0gaGFzaC5zdWJzdHJpbmcoMSk7CiAgICAg
dXJsLnNldEZyYWdtZW50SWRlbnRpZmllcihuZXdGcmFnbWVudElkZW50aWZpZXIpOwpAQCAtMjQ2
LDcgKzI0Nyw5IEBAIHZvaWQgTG9jYXRpb246OnJlcGxhY2UoRE9NV2luZG93JiBhY3RpdmVXaW5k
b3csIERPTVdpbmRvdyYgZmlyc3RXaW5kb3csIGNvbnN0IFN0CiB7CiAgICAgaWYgKCFtX2ZyYW1l
KQogICAgICAgICByZXR1cm47Ci0gICAgLy8gTm90ZTogV2UgY2FsbCBET01XaW5kb3c6OnNldExv
Y2F0aW9uIGRpcmVjdGx5IGhlcmUgYmVjYXVzZSByZXBsYWNlKCkgYWx3YXlzIG9wZXJhdGVzIG9u
IHRoZSBjdXJyZW50IGZyYW1lLgorICAgIEFTU0VSVChtX2ZyYW1lLT5kb2N1bWVudCgpKTsKKyAg
ICBBU1NFUlQobV9mcmFtZS0+ZG9jdW1lbnQoKS0+ZG9tV2luZG93KCkpOworICAgIC8vIFdlIGNh
bGwgRE9NV2luZG93OjpzZXRMb2NhdGlvbiBkaXJlY3RseSBoZXJlIGJlY2F1c2UgcmVwbGFjZSgp
IGFsd2F5cyBvcGVyYXRlcyBvbiB0aGUgY3VycmVudCBmcmFtZS4KICAgICBtX2ZyYW1lLT5kb2N1
bWVudCgpLT5kb21XaW5kb3coKS0+c2V0TG9jYXRpb24oYWN0aXZlV2luZG93LCBmaXJzdFdpbmRv
dywgdXJsLCBMb2NrSGlzdG9yeUFuZEJhY2tGb3J3YXJkTGlzdCk7CiB9CiAKQEAgLTI1NCwyNiAr
MjU3LDM4IEBAIHZvaWQgTG9jYXRpb246OnJlbG9hZChET01XaW5kb3cmIGFjdGl2ZVdpbmRvdykK
IHsKICAgICBpZiAoIW1fZnJhbWUpCiAgICAgICAgIHJldHVybjsKKworICAgIEFTU0VSVChhY3Rp
dmVXaW5kb3cuZG9jdW1lbnQoKSk7CisgICAgQVNTRVJUKG1fZnJhbWUtPmRvY3VtZW50KCkpOwor
ICAgIEFTU0VSVChtX2ZyYW1lLT5kb2N1bWVudCgpLT5kb21XaW5kb3coKSk7CisKKyAgICBhdXRv
JiBhY3RpdmVEb2N1bWVudCA9ICphY3RpdmVXaW5kb3cuZG9jdW1lbnQoKTsKKyAgICBhdXRvJiB0
YXJnZXREb2N1bWVudCA9ICptX2ZyYW1lLT5kb2N1bWVudCgpOworCiAgICAgLy8gRklYTUU6IEl0
J3Mgbm90IGNsZWFyIHRoaXMgY3Jvc3Mtb3JpZ2luIHNlY3VyaXR5IGNoZWNrIGlzIHZhbHVhYmxl
LgogICAgIC8vIFdlIGFsbG93IG9uZSBwYWdlIHRvIGNoYW5nZSB0aGUgbG9jYXRpb24gb2YgYW5v
dGhlci4gV2h5IGJsb2NrIGF0dGVtcHRzIHRvIHJlbG9hZD8KICAgICAvLyBPdGhlciBsb2NhdGlv
biBvcGVyYXRpb25zIHNpbXBseSBibG9jayB1c2Ugb2YgSmF2YVNjcmlwdCBVUkxzIGNyb3NzIG9y
aWdpbi4KLSAgICBET01XaW5kb3cqIHRhcmdldFdpbmRvdyA9IG1fZnJhbWUtPmRvY3VtZW50KCkt
PmRvbVdpbmRvdygpOwotICAgIGlmICghYWN0aXZlV2luZG93LmRvY3VtZW50KCktPnNlY3VyaXR5
T3JpZ2luKCktPmNhbkFjY2VzcyhtX2ZyYW1lLT5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigp
KSkgewotICAgICAgICB0YXJnZXRXaW5kb3ctPnByaW50RXJyb3JNZXNzYWdlKHRhcmdldFdpbmRv
dy0+Y3Jvc3NEb21haW5BY2Nlc3NFcnJvck1lc3NhZ2UoYWN0aXZlV2luZG93KSk7CisgICAgaWYg
KCFhY3RpdmVEb2N1bWVudC5zZWN1cml0eU9yaWdpbigpLT5jYW5BY2Nlc3ModGFyZ2V0RG9jdW1l
bnQuc2VjdXJpdHlPcmlnaW4oKSkpIHsKKyAgICAgICAgYXV0byYgdGFyZ2V0V2luZG93ID0gKnRh
cmdldERvY3VtZW50LmRvbVdpbmRvdygpOworICAgICAgICB0YXJnZXRXaW5kb3cucHJpbnRFcnJv
ck1lc3NhZ2UodGFyZ2V0V2luZG93LmNyb3NzRG9tYWluQWNjZXNzRXJyb3JNZXNzYWdlKGFjdGl2
ZVdpbmRvdykpOwogICAgICAgICByZXR1cm47CiAgICAgfQotICAgIGlmIChwcm90b2NvbElzSmF2
YVNjcmlwdChtX2ZyYW1lLT5kb2N1bWVudCgpLT51cmwoKSkpCisKKyAgICBpZiAocHJvdG9jb2xJ
c0phdmFTY3JpcHQodGFyZ2V0RG9jdW1lbnQudXJsKCkpKQogICAgICAgICByZXR1cm47Ci0gICAg
bV9mcmFtZS0+bmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlUmVmcmVzaChhY3RpdmVXaW5k
b3cuZG9jdW1lbnQoKSk7CisKKyAgICBtX2ZyYW1lLT5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2No
ZWR1bGVSZWZyZXNoKGFjdGl2ZURvY3VtZW50KTsKIH0KIAogdm9pZCBMb2NhdGlvbjo6c2V0TG9j
YXRpb24oRE9NV2luZG93JiBhY3RpdmVXaW5kb3csIERPTVdpbmRvdyYgZmlyc3RXaW5kb3csIGNv
bnN0IFN0cmluZyYgdXJsKQogewogICAgIEFTU0VSVChtX2ZyYW1lKTsKLSAgICBGcmFtZSogZnJh
bWUgPSBtX2ZyYW1lLT5sb2FkZXIoKS5maW5kRnJhbWVGb3JOYXZpZ2F0aW9uKFN0cmluZygpLCBh
Y3RpdmVXaW5kb3cuZG9jdW1lbnQoKSk7Ci0gICAgaWYgKCFmcmFtZSkKKyAgICBhdXRvKiB0YXJn
ZXRGcmFtZSA9IG1fZnJhbWUtPmxvYWRlcigpLmZpbmRGcmFtZUZvck5hdmlnYXRpb24oeyB9LCBh
Y3RpdmVXaW5kb3cuZG9jdW1lbnQoKSk7CisgICAgaWYgKCF0YXJnZXRGcmFtZSkKICAgICAgICAg
cmV0dXJuOwotICAgIGZyYW1lLT5kb2N1bWVudCgpLT5kb21XaW5kb3coKS0+c2V0TG9jYXRpb24o
YWN0aXZlV2luZG93LCBmaXJzdFdpbmRvdywgdXJsKTsKKyAgICBBU1NFUlQodGFyZ2V0RnJhbWUt
PmRvY3VtZW50KCkpOworICAgIEFTU0VSVCh0YXJnZXRGcmFtZS0+ZG9jdW1lbnQoKS0+ZG9tV2lu
ZG93KCkpOworICAgIHRhcmdldEZyYW1lLT5kb2N1bWVudCgpLT5kb21XaW5kb3coKS0+c2V0TG9j
YXRpb24oYWN0aXZlV2luZG93LCBmaXJzdFdpbmRvdywgdXJsKTsKIH0KIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVVJMLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1VSTC5jcHAKaW5kZXggZTcwYTBmN2I4M2U5ZTJmODQ1
NGNkMTFmNWE2NDk4NjFhMDI2Mzg5My4uNWVmYjg1YTMwMzRlZTNlZWQwMGJhZmRjZjBlNjgzMjI2
NTA3NzhhMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVVJMLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9VUkwuY3BwCkBAIC0xMTI2LDE3ICsxMTI2LDE3IEBA
IHZvaWQgVVJMOjpzZXRQYXNzKGNvbnN0IFN0cmluZyYgcGFzc3dvcmQpCiAgICAgfQogfQogCi12
b2lkIFVSTDo6c2V0RnJhZ21lbnRJZGVudGlmaWVyKGNvbnN0IFN0cmluZyYgcykKK3ZvaWQgVVJM
OjpzZXRGcmFnbWVudElkZW50aWZpZXIoU3RyaW5nVmlldyBpZGVudGlmaWVyKQogewogICAgIGlm
ICghbV9pc1ZhbGlkKQogICAgICAgICByZXR1cm47CiAKLSAgICAvLyBGSVhNRTogTm9uLUFTQ0lJ
IGNoYXJhY3RlcnMgbXVzdCBiZSBlbmNvZGVkIGFuZCBlc2NhcGVkIHRvIG1hdGNoIHBhcnNlKCkg
ZXhwZWN0YXRpb25zLgotICAgIGlmIChVUkxQYXJzZXI6OmVuYWJsZWQoKSkgewotICAgICAgICBV
UkxQYXJzZXIgcGFyc2VyKG1ha2VTdHJpbmcobV9zdHJpbmcubGVmdChtX3F1ZXJ5RW5kKSwgIiMi
LCBzKSk7Ci0gICAgICAgICp0aGlzID0gcGFyc2VyLnJlc3VsdCgpOwotICAgIH0gZWxzZQotICAg
ICAgICBwYXJzZShtX3N0cmluZy5sZWZ0KG1fcXVlcnlFbmQpICsgIiMiICsgcyk7CisgICAgLy8g
RklYTUU6IE9wdGltaXplIHRoZSBjYXNlIHdoZXJlIHRoZSBpZGVudGlmaWVyIGFscmVhZHkgaGFw
cGVucyB0byBiZSBlcXVhbCB0byB3aGF0IHdhcyBwYXNzZWQ/CisgICAgLy8gRklYTUU6IElzIGl0
IGNvcnJlY3QgdG8gZG8gdGhpcyB3aXRob3V0IGVuY29kaW5nIGFuZCBlc2NhcGluZyBub24tQVND
SUkgY2hhcmFjdGVycz8KKyAgICBpZiAoVVJMUGFyc2VyOjplbmFibGVkKCkpCisgICAgICAgICp0
aGlzID0gVVJMUGFyc2VyIHsgbWFrZVN0cmluZyhTdHJpbmdWaWV3IHsgbV9zdHJpbmcgfS5zdWJz
dHJpbmcoMCwgbV9xdWVyeUVuZCksICcjJywgaWRlbnRpZmllcikgfS5yZXN1bHQoKTsKKyAgICBl
bHNlCisgICAgICAgIHBhcnNlKG1fc3RyaW5nLmxlZnQobV9xdWVyeUVuZCkgKyAiIyIgKyBpZGVu
dGlmaWVyKTsKIH0KIAogdm9pZCBVUkw6OnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9VUkwuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL1VSTC5oCmluZGV4IDVhYmYwNWZlN2M2Mzc0ZmQ1NTJhODAxZGM3OGRhMmRiNmE2Y2Nl
ZmUuLmIyYzIzZGU0MTE3ODQwMDAyMDQzM2QzYjM0YmQ2N2MxNmE1NDVkZDIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1VSTC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL1VSTC5oCkBAIC0xNTgsNyArMTU4LDcgQEAgcHVibGljOgogICAgIC8vIFVSTCAod2l0aCBu
b3RoaW5nIGFmdGVyIGl0KS4gVG8gY2xlYXIgdGhlIHF1ZXJ5LCBwYXNzIGEgbnVsbCBzdHJpbmcu
CiAgICAgdm9pZCBzZXRRdWVyeShjb25zdCBTdHJpbmcmKTsKIAotICAgIHZvaWQgc2V0RnJhZ21l
bnRJZGVudGlmaWVyKGNvbnN0IFN0cmluZyYpOworICAgIHZvaWQgc2V0RnJhZ21lbnRJZGVudGlm
aWVyKFN0cmluZ1ZpZXcpOwogICAgIHZvaWQgcmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CiAK
ICAgICBXRUJDT1JFX0VYUE9SVCBmcmllbmQgYm9vbCBlcXVhbElnbm9yaW5nRnJhZ21lbnRJZGVu
dGlmaWVyKGNvbnN0IFVSTCYsIGNvbnN0IFVSTCYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVwbGF5L1JlcGxheUlucHV0RGlzcGF0Y2hNZXRob2RzLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3JlcGxheS9SZXBsYXlJbnB1dERpc3BhdGNoTWV0aG9kcy5jcHAKaW5kZXggODQ3NTJhMjMyZmVh
NmUzOWVjNTc2MTQyZmUzNTcwYzFiYzNkMjQxNi4uN2YzYzMwMDNjMTUyYWVjMDgyZmE5N2Y2MDI2
Zjc4NmZhOTJjZjRiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVwbGF5L1JlcGxheUlu
cHV0RGlzcGF0Y2hNZXRob2RzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZXBsYXkvUmVwbGF5
SW5wdXREaXNwYXRjaE1ldGhvZHMuY3BwCkBAIC01MCw4ICs1MCw5IEBAIHZvaWQgRW5kU2VnbWVu
dFNlbnRpbmVsOjpkaXNwYXRjaChSZXBsYXlDb250cm9sbGVyJikKIC8vIE5hdmlnYXRpb24gaW5w
dXRzLgogdm9pZCBJbml0aWFsTmF2aWdhdGlvbjo6ZGlzcGF0Y2goUmVwbGF5Q29udHJvbGxlciYg
Y29udHJvbGxlcikKIHsKLSAgICBGcmFtZSYgZnJhbWUgPSBjb250cm9sbGVyLnBhZ2UoKS5tYWlu
RnJhbWUoKTsKLSAgICBmcmFtZS5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlv
bkNoYW5nZShmcmFtZS5kb2N1bWVudCgpLCBtX3NlY3VyaXR5T3JpZ2luLmdldCgpLCBtX3VybCwg
bV9yZWZlcnJlcik7CisgICAgYXV0byYgZnJhbWUgPSBjb250cm9sbGVyLnBhZ2UoKS5tYWluRnJh
bWUoKTsKKyAgICBBU1NFUlQoZnJhbWUuZG9jdW1lbnQoKSk7CisgICAgZnJhbWUubmF2aWdhdGlv
blNjaGVkdWxlcigpLnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UoKmZyYW1lLmRvY3VtZW50KCksIG1f
c2VjdXJpdHlPcmlnaW4uZ2V0KCksIG1fdXJsLCBtX3JlZmVycmVyKTsKIH0KIAogdm9pZCBIYW5k
bGVLZXlQcmVzczo6ZGlzcGF0Y2goUmVwbGF5Q29udHJvbGxlciYgY29udHJvbGxlcikKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGRUltYWdlRWxlbWVudC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9zdmcvU1ZHRkVJbWFnZUVsZW1lbnQuY3BwCmluZGV4IDBiMzI3MTBiNmZhOWQ0MzNm
YjgyYWE5MTE2YjIwZDY4MThkNWFmYjIuLmMyY2Q2ZjY1YjMwYjdhMGJlZjQ0NzhkNWFjNDcwOWVk
OWNmZDIxYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGRUltYWdlRWxlbWVu
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZFSW1hZ2VFbGVtZW50LmNwcApAQCAt
ODgsNyArODgsNyBAQCB2b2lkIFNWR0ZFSW1hZ2VFbGVtZW50OjpyZXF1ZXN0SW1hZ2VSZXNvdXJj
ZSgpCiAgICAgb3B0aW9ucy5jb250ZW50U2VjdXJpdHlQb2xpY3lJbXBvc2l0aW9uID0gaXNJblVz
ZXJBZ2VudFNoYWRvd1RyZWUoKSA/IENvbnRlbnRTZWN1cml0eVBvbGljeUltcG9zaXRpb246OlNr
aXBQb2xpY3lDaGVjayA6IENvbnRlbnRTZWN1cml0eVBvbGljeUltcG9zaXRpb246OkRvUG9saWN5
Q2hlY2s7CiAKICAgICBDYWNoZWRSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdChSZXNvdXJjZVJlcXVl
c3QoZG9jdW1lbnQoKS5jb21wbGV0ZVVSTChocmVmKCkpKSwgb3B0aW9ucyk7Ci0gICAgcmVxdWVz
dC5zZXRJbml0aWF0b3IodGhpcyk7CisgICAgcmVxdWVzdC5zZXRJbml0aWF0b3IoKnRoaXMpOwog
ICAgIG1fY2FjaGVkSW1hZ2UgPSBkb2N1bWVudCgpLmNhY2hlZFJlc291cmNlTG9hZGVyKCkucmVx
dWVzdEltYWdlKFdURk1vdmUocmVxdWVzdCkpOwogCiAgICAgaWYgKG1fY2FjaGVkSW1hZ2UpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRm9udEZhY2VVcmlFbGVtZW50LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGb250RmFjZVVyaUVsZW1lbnQuY3BwCmluZGV4IDM1NjZh
YzQ2NTMyOWY3ZmExY2Q0NDZlZjE3YTM2NWQ3NWVmNmYyNDMuLjU2ZDVlNjNjM2MxNWFhZjZmNWY2
ZTliNjk5NGE5MGU2ZmQ2MjIzNDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdG
b250RmFjZVVyaUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGb250RmFj
ZVVyaUVsZW1lbnQuY3BwCkBAIC0xMDUsNyArMTA1LDcgQEAgdm9pZCBTVkdGb250RmFjZVVyaUVs
ZW1lbnQ6OmxvYWRGb250KCkKIAogICAgICAgICBDYWNoZWRSZXNvdXJjZUxvYWRlciYgY2FjaGVk
UmVzb3VyY2VMb2FkZXIgPSBkb2N1bWVudCgpLmNhY2hlZFJlc291cmNlTG9hZGVyKCk7CiAgICAg
ICAgIENhY2hlZFJlc291cmNlUmVxdWVzdCByZXF1ZXN0KFJlc291cmNlUmVxdWVzdChkb2N1bWVu
dCgpLmNvbXBsZXRlVVJMKGhyZWYpKSwgb3B0aW9ucyk7Ci0gICAgICAgIHJlcXVlc3Quc2V0SW5p
dGlhdG9yKHRoaXMpOworICAgICAgICByZXF1ZXN0LnNldEluaXRpYXRvcigqdGhpcyk7CiAgICAg
ICAgIG1fY2FjaGVkRm9udCA9IGNhY2hlZFJlc291cmNlTG9hZGVyLnJlcXVlc3RGb250KFdURk1v
dmUocmVxdWVzdCksIGlzU1ZHRm9udFRhcmdldCgqdGhpcykpOwogICAgICAgICBpZiAobV9jYWNo
ZWRGb250KSB7CiAgICAgICAgICAgICBtX2NhY2hlZEZvbnQtPmFkZENsaWVudCgqdGhpcyk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVXNlRWxlbWVudC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9zdmcvU1ZHVXNlRWxlbWVudC5jcHAKaW5kZXggOGY1MDA5OTJmNTVlYjI2NTYxYTU4
ZmJjMTU5YjYyMzEyN2IxNTg2Ny4uZTZiNGVmNjk3M2YzNjJhYjhkZmY1NmU5MzA5MWRiOWRmZDhm
MjE5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1VzZUVsZW1lbnQuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdVc2VFbGVtZW50LmNwcApAQCAtNTcyLDcgKzU3Miw3
IEBAIHZvaWQgU1ZHVXNlRWxlbWVudDo6dXBkYXRlRXh0ZXJuYWxEb2N1bWVudCgpCiAgICAgICAg
IG9wdGlvbnMuY29udGVudFNlY3VyaXR5UG9saWN5SW1wb3NpdGlvbiA9IGlzSW5Vc2VyQWdlbnRT
aGFkb3dUcmVlKCkgPyBDb250ZW50U2VjdXJpdHlQb2xpY3lJbXBvc2l0aW9uOjpTa2lwUG9saWN5
Q2hlY2sgOiBDb250ZW50U2VjdXJpdHlQb2xpY3lJbXBvc2l0aW9uOjpEb1BvbGljeUNoZWNrOwog
ICAgICAgICBvcHRpb25zLm1vZGUgPSBGZXRjaE9wdGlvbnM6Ok1vZGU6OlNhbWVPcmlnaW47CiAg
ICAgICAgIENhY2hlZFJlc291cmNlUmVxdWVzdCByZXF1ZXN0IHsgUmVzb3VyY2VSZXF1ZXN0IHsg
ZXh0ZXJuYWxEb2N1bWVudFVSTCB9LCBvcHRpb25zIH07Ci0gICAgICAgIHJlcXVlc3Quc2V0SW5p
dGlhdG9yKHRoaXMpOworICAgICAgICByZXF1ZXN0LnNldEluaXRpYXRvcigqdGhpcyk7CiAgICAg
ICAgIG1fZXh0ZXJuYWxEb2N1bWVudCA9IGRvY3VtZW50KCkuY2FjaGVkUmVzb3VyY2VMb2FkZXIo
KS5yZXF1ZXN0U1ZHRG9jdW1lbnQoV1RGTW92ZShyZXF1ZXN0KSk7CiAgICAgICAgIGlmIChtX2V4
dGVybmFsRG9jdW1lbnQpCiAgICAgICAgICAgICBtX2V4dGVybmFsRG9jdW1lbnQtPmFkZENsaWVu
dCgqdGhpcyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9X
ZWJDaHJvbWVDbGllbnQuaCBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkNo
cm9tZUNsaWVudC5oCmluZGV4IDQ4YWJlMzA4YThmZWY3NWFmODY4NmUxZTUzYTgzYzg3MjFmODI3
ZjkuLjUxNzU3M2M3M2FhZDNiODZjZGMyMTE2MjI1ZTNhYTI5M2FmMDAyMTggMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oCkBAIC0z
MywxMzAgKzMzLDEzNSBAQAogCiBAY2xhc3MgV2ViVmlldzsKIAotY2xhc3MgV2ViQ2hyb21lQ2xp
ZW50IDogcHVibGljIFdlYkNvcmU6OkNocm9tZUNsaWVudCB7CitjbGFzcyBXZWJDaHJvbWVDbGll
bnQgZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6Q2hyb21lQ2xpZW50IHsKIHB1YmxpYzoKICAgICBX
ZWJDaHJvbWVDbGllbnQoV2ViVmlldyopOwotICAgIAotICAgIHZvaWQgY2hyb21lRGVzdHJveWVk
KCkgb3ZlcnJpZGU7Ci0gICAgCi0gICAgdm9pZCBzZXRXaW5kb3dSZWN0KGNvbnN0IFdlYkNvcmU6
OkZsb2F0UmVjdCYpIG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OkZsb2F0UmVjdCB3aW5kb3dSZWN0
KCkgb3ZlcnJpZGU7Ci0KLSAgICBXZWJDb3JlOjpGbG9hdFJlY3QgcGFnZVJlY3QoKSBvdmVycmlk
ZTsKLQotICAgIHZvaWQgZm9jdXMoKSBvdmVycmlkZTsKLSAgICB2b2lkIHVuZm9jdXMoKSBvdmVy
cmlkZTsKLSAgICAKLSAgICBib29sIGNhblRha2VGb2N1cyhXZWJDb3JlOjpGb2N1c0RpcmVjdGlv
bikgb3ZlcnJpZGU7Ci0gICAgdm9pZCB0YWtlRm9jdXMoV2ViQ29yZTo6Rm9jdXNEaXJlY3Rpb24p
IG92ZXJyaWRlOwotCi0gICAgdm9pZCBmb2N1c2VkRWxlbWVudENoYW5nZWQoV2ViQ29yZTo6RWxl
bWVudCopIG92ZXJyaWRlOwotICAgIHZvaWQgZm9jdXNlZEZyYW1lQ2hhbmdlZChXZWJDb3JlOjpG
cmFtZSopIG92ZXJyaWRlOwotCi0gICAgV2ViQ29yZTo6UGFnZSogY3JlYXRlV2luZG93KFdlYkNv
cmU6OkZyYW1lKiwgY29uc3QgV2ViQ29yZTo6RnJhbWVMb2FkUmVxdWVzdCYsIGNvbnN0IFdlYkNv
cmU6OldpbmRvd0ZlYXR1cmVzJiwgY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYpIG92
ZXJyaWRlOwotICAgIHZvaWQgc2hvdygpIG92ZXJyaWRlOwotCi0gICAgYm9vbCBjYW5SdW5Nb2Rh
bCgpIG92ZXJyaWRlOwotICAgIHZvaWQgcnVuTW9kYWwoKSBvdmVycmlkZTsKLQotICAgIHZvaWQg
c2V0VG9vbGJhcnNWaXNpYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJvb2wgdG9vbGJhcnNWaXNp
YmxlKCkgb3ZlcnJpZGU7Ci0gICAgCi0gICAgdm9pZCBzZXRTdGF0dXNiYXJWaXNpYmxlKGJvb2wp
IG92ZXJyaWRlOwotICAgIGJvb2wgc3RhdHVzYmFyVmlzaWJsZSgpIG92ZXJyaWRlOwotICAgIAot
ICAgIHZvaWQgc2V0U2Nyb2xsYmFyc1Zpc2libGUoYm9vbCkgb3ZlcnJpZGU7Ci0gICAgYm9vbCBz
Y3JvbGxiYXJzVmlzaWJsZSgpIG92ZXJyaWRlOwotICAgIAotICAgIHZvaWQgc2V0TWVudWJhclZp
c2libGUoYm9vbCkgb3ZlcnJpZGU7Ci0gICAgYm9vbCBtZW51YmFyVmlzaWJsZSgpIG92ZXJyaWRl
OwotICAgIAotICAgIHZvaWQgc2V0UmVzaXphYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIAotICAg
IHZvaWQgYWRkTWVzc2FnZVRvQ29uc29sZShKU0M6Ok1lc3NhZ2VTb3VyY2UsIEpTQzo6TWVzc2Fn
ZUxldmVsLCBjb25zdCBXVEY6OlN0cmluZyYgbWVzc2FnZSwgdW5zaWduZWQgbGluZU51bWJlciwg
dW5zaWduZWQgY29sdW1uTnVtYmVyLCBjb25zdCBXVEY6OlN0cmluZyYgc291cmNlVVJMKSBvdmVy
cmlkZTsKLQotICAgIGJvb2wgY2FuUnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsKCkgb3ZlcnJp
ZGU7Ci0gICAgYm9vbCBydW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoY29uc3QgV1RGOjpTdHJp
bmcmIG1lc3NhZ2UsIFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7Ci0KLSAgICB2b2lkIGNsb3Nl
V2luZG93U29vbigpIG92ZXJyaWRlOwotCi0gICAgdm9pZCBydW5KYXZhU2NyaXB0QWxlcnQoV2Vi
Q29yZTo6RnJhbWUqLCBjb25zdCBXVEY6OlN0cmluZyYpIG92ZXJyaWRlOwotICAgIGJvb2wgcnVu
SmF2YVNjcmlwdENvbmZpcm0oV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXVEY6OlN0cmluZyYpIG92
ZXJyaWRlOwotICAgIGJvb2wgcnVuSmF2YVNjcmlwdFByb21wdChXZWJDb3JlOjpGcmFtZSosIGNv
bnN0IFdURjo6U3RyaW5nJiBtZXNzYWdlLCBjb25zdCBXVEY6OlN0cmluZyYgZGVmYXVsdFZhbHVl
LCBXVEY6OlN0cmluZyYgcmVzdWx0KSBvdmVycmlkZTsKLQotICAgIGJvb2wgc3VwcG9ydHNJbW1l
ZGlhdGVJbnZhbGlkYXRpb24oKSBvdmVycmlkZTsKLSAgICB2b2lkIGludmFsaWRhdGVSb290Vmll
dyhjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBpbnZhbGlkYXRl
Q29udGVudHNBbmRSb290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jikgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBpbnZhbGlkYXRlQ29udGVudHNGb3JTbG93U2Nyb2xsKGNvbnN0IFdlYkNvcmU6Oklu
dFJlY3QmKSBvdmVycmlkZTsKLSAgICB2b2lkIHNjcm9sbChjb25zdCBXZWJDb3JlOjpJbnRTaXpl
JiBzY3JvbGxEZWx0YSwgY29uc3QgV2ViQ29yZTo6SW50UmVjdCYgcmVjdFRvU2Nyb2xsLCBjb25z
dCBXZWJDb3JlOjpJbnRSZWN0JiBjbGlwUmVjdCkgb3ZlcnJpZGU7Ci0KLSAgICBXZWJDb3JlOjpJ
bnRQb2ludCBzY3JlZW5Ub1Jvb3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFBvaW50JikgY29uc3Qg
b3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6SW50UmVjdCByb290Vmlld1RvU2NyZWVuKGNvbnN0IFdl
YkNvcmU6OkludFJlY3QmKSBjb25zdCBvdmVycmlkZTsKKworICAgIFdlYlZpZXcqIHdlYlZpZXco
KSBjb25zdCB7IHJldHVybiBtX3dlYlZpZXc7IH0KKworcHJpdmF0ZToKKyAgICB2b2lkIGNocm9t
ZURlc3Ryb3llZCgpIGZpbmFsOworCisgICAgdm9pZCBzZXRXaW5kb3dSZWN0KGNvbnN0IFdlYkNv
cmU6OkZsb2F0UmVjdCYpIGZpbmFsOworICAgIFdlYkNvcmU6OkZsb2F0UmVjdCB3aW5kb3dSZWN0
KCkgZmluYWw7CisKKyAgICBXZWJDb3JlOjpGbG9hdFJlY3QgcGFnZVJlY3QoKSBmaW5hbDsKKwor
ICAgIHZvaWQgZm9jdXMoKSBmaW5hbDsKKyAgICB2b2lkIHVuZm9jdXMoKSBmaW5hbDsKKworICAg
IGJvb2wgY2FuVGFrZUZvY3VzKFdlYkNvcmU6OkZvY3VzRGlyZWN0aW9uKSBmaW5hbDsKKyAgICB2
b2lkIHRha2VGb2N1cyhXZWJDb3JlOjpGb2N1c0RpcmVjdGlvbikgZmluYWw7CisKKyAgICB2b2lk
IGZvY3VzZWRFbGVtZW50Q2hhbmdlZChXZWJDb3JlOjpFbGVtZW50KikgZmluYWw7CisgICAgdm9p
ZCBmb2N1c2VkRnJhbWVDaGFuZ2VkKFdlYkNvcmU6OkZyYW1lKikgZmluYWw7CisKKyAgICBXZWJD
b3JlOjpQYWdlKiBjcmVhdGVXaW5kb3coV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXZWJDb3JlOjpG
cmFtZUxvYWRSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6V2luZG93RmVhdHVyZXMmLCBjb25zdCBX
ZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJikgZmluYWw7CisgICAgdm9pZCBzaG93KCkgZmluYWw7
CisKKyAgICBib29sIGNhblJ1bk1vZGFsKCkgZmluYWw7CisgICAgdm9pZCBydW5Nb2RhbCgpIGZp
bmFsOworCisgICAgdm9pZCBzZXRUb29sYmFyc1Zpc2libGUoYm9vbCkgZmluYWw7CisgICAgYm9v
bCB0b29sYmFyc1Zpc2libGUoKSBmaW5hbDsKKworICAgIHZvaWQgc2V0U3RhdHVzYmFyVmlzaWJs
ZShib29sKSBmaW5hbDsKKyAgICBib29sIHN0YXR1c2JhclZpc2libGUoKSBmaW5hbDsKKworICAg
IHZvaWQgc2V0U2Nyb2xsYmFyc1Zpc2libGUoYm9vbCkgZmluYWw7CisgICAgYm9vbCBzY3JvbGxi
YXJzVmlzaWJsZSgpIGZpbmFsOworCisgICAgdm9pZCBzZXRNZW51YmFyVmlzaWJsZShib29sKSBm
aW5hbDsKKyAgICBib29sIG1lbnViYXJWaXNpYmxlKCkgZmluYWw7CisKKyAgICB2b2lkIHNldFJl
c2l6YWJsZShib29sKSBmaW5hbDsKKworICAgIHZvaWQgYWRkTWVzc2FnZVRvQ29uc29sZShKU0M6
Ok1lc3NhZ2VTb3VyY2UsIEpTQzo6TWVzc2FnZUxldmVsLCBjb25zdCBXVEY6OlN0cmluZyYgbWVz
c2FnZSwgdW5zaWduZWQgbGluZU51bWJlciwgdW5zaWduZWQgY29sdW1uTnVtYmVyLCBjb25zdCBX
VEY6OlN0cmluZyYgc291cmNlVVJMKSBmaW5hbDsKKworICAgIGJvb2wgY2FuUnVuQmVmb3JlVW5s
b2FkQ29uZmlybVBhbmVsKCkgZmluYWw7CisgICAgYm9vbCBydW5CZWZvcmVVbmxvYWRDb25maXJt
UGFuZWwoY29uc3QgV1RGOjpTdHJpbmcmIG1lc3NhZ2UsIFdlYkNvcmU6OkZyYW1lKikgZmluYWw7
CisKKyAgICB2b2lkIGNsb3NlV2luZG93U29vbigpIGZpbmFsOworCisgICAgdm9pZCBydW5KYXZh
U2NyaXB0QWxlcnQoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXVEY6OlN0cmluZyYpIGZpbmFsOwor
ICAgIGJvb2wgcnVuSmF2YVNjcmlwdENvbmZpcm0oV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXVEY6
OlN0cmluZyYpIGZpbmFsOworICAgIGJvb2wgcnVuSmF2YVNjcmlwdFByb21wdChXZWJDb3JlOjpG
cmFtZSosIGNvbnN0IFdURjo6U3RyaW5nJiBtZXNzYWdlLCBjb25zdCBXVEY6OlN0cmluZyYgZGVm
YXVsdFZhbHVlLCBXVEY6OlN0cmluZyYgcmVzdWx0KSBmaW5hbDsKKworICAgIGJvb2wgc3VwcG9y
dHNJbW1lZGlhdGVJbnZhbGlkYXRpb24oKSBmaW5hbDsKKyAgICB2b2lkIGludmFsaWRhdGVSb290
Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRSZWN0JikgZmluYWw7CisgICAgdm9pZCBpbnZhbGlkYXRl
Q29udGVudHNBbmRSb290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRSZWN0JikgZmluYWw7CisgICAg
dm9pZCBpbnZhbGlkYXRlQ29udGVudHNGb3JTbG93U2Nyb2xsKGNvbnN0IFdlYkNvcmU6OkludFJl
Y3QmKSBmaW5hbDsKKyAgICB2b2lkIHNjcm9sbChjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBzY3Jv
bGxEZWx0YSwgY29uc3QgV2ViQ29yZTo6SW50UmVjdCYgcmVjdFRvU2Nyb2xsLCBjb25zdCBXZWJD
b3JlOjpJbnRSZWN0JiBjbGlwUmVjdCkgZmluYWw7CisKKyAgICBXZWJDb3JlOjpJbnRQb2ludCBz
Y3JlZW5Ub1Jvb3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFBvaW50JikgY29uc3QgZmluYWw7Cisg
ICAgV2ViQ29yZTo6SW50UmVjdCByb290Vmlld1RvU2NyZWVuKGNvbnN0IFdlYkNvcmU6OkludFJl
Y3QmKSBjb25zdCBmaW5hbDsKKwogI2lmIFBMQVRGT1JNKElPUykKLSAgICBXZWJDb3JlOjpJbnRQ
b2ludCBhY2Nlc3NpYmlsaXR5U2NyZWVuVG9Sb290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRQb2lu
dCYpIGNvbnN0IG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OkludFJlY3Qgcm9vdFZpZXdUb0FjY2Vz
c2liaWxpdHlTY3JlZW4oY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGNvbnN0IG92ZXJyaWRlOwor
ICAgIFdlYkNvcmU6OkludFBvaW50IGFjY2Vzc2liaWxpdHlTY3JlZW5Ub1Jvb3RWaWV3KGNvbnN0
IFdlYkNvcmU6OkludFBvaW50JikgY29uc3QgZmluYWw7CisgICAgV2ViQ29yZTo6SW50UmVjdCBy
b290Vmlld1RvQWNjZXNzaWJpbGl0eVNjcmVlbihjb25zdCBXZWJDb3JlOjpJbnRSZWN0JikgY29u
c3QgZmluYWw7CiAjZW5kaWYKLSAgICBQbGF0Zm9ybVBhZ2VDbGllbnQgcGxhdGZvcm1QYWdlQ2xp
ZW50KCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCBjb250ZW50c1NpemVDaGFuZ2VkKFdlYkNv
cmU6OkZyYW1lKiwgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYpIGNvbnN0IG92ZXJyaWRlOwotICAg
IHZvaWQgc2Nyb2xsUmVjdEludG9WaWV3KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBjb25zdCBv
dmVycmlkZTsKLSAgICAKLSAgICB2b2lkIHNldFN0YXR1c2JhclRleHQoY29uc3QgV1RGOjpTdHJp
bmcmKSBvdmVycmlkZTsKIAotICAgIHZvaWQgc2Nyb2xsYmFyc01vZGVEaWRDaGFuZ2UoKSBjb25z
dCBvdmVycmlkZSB7IH0KLSAgICBib29sIHNob3VsZFVuYXZhaWxhYmxlUGx1Z2luTWVzc2FnZUJl
QnV0dG9uKFdlYkNvcmU6OlJlbmRlckVtYmVkZGVkT2JqZWN0OjpQbHVnaW5VbmF2YWlsYWJpbGl0
eVJlYXNvbikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCB1bmF2YWlsYWJsZVBsdWdpbkJ1dHRv
bkNsaWNrZWQoV2ViQ29yZTo6RWxlbWVudCosIFdlYkNvcmU6OlJlbmRlckVtYmVkZGVkT2JqZWN0
OjpQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCBt
b3VzZURpZE1vdmVPdmVyRWxlbWVudChjb25zdCBXZWJDb3JlOjpIaXRUZXN0UmVzdWx0JiwgdW5z
aWduZWQgbW9kaWZpZXJGbGFncykgb3ZlcnJpZGU7CisgICAgUGxhdGZvcm1QYWdlQ2xpZW50IHBs
YXRmb3JtUGFnZUNsaWVudCgpIGNvbnN0IGZpbmFsOworICAgIHZvaWQgY29udGVudHNTaXplQ2hh
bmdlZChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6OkludFNpemUmKSBjb25zdCBmaW5h
bDsKKyAgICB2b2lkIHNjcm9sbFJlY3RJbnRvVmlldyhjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jikg
Y29uc3QgZmluYWw7CisKKyAgICB2b2lkIHNldFN0YXR1c2JhclRleHQoY29uc3QgV1RGOjpTdHJp
bmcmKSBmaW5hbDsKKworICAgIHZvaWQgc2Nyb2xsYmFyc01vZGVEaWRDaGFuZ2UoKSBjb25zdCBm
aW5hbCB7IH0KKyAgICBib29sIHNob3VsZFVuYXZhaWxhYmxlUGx1Z2luTWVzc2FnZUJlQnV0dG9u
KFdlYkNvcmU6OlJlbmRlckVtYmVkZGVkT2JqZWN0OjpQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNv
bikgY29uc3QgZmluYWw7CisgICAgdm9pZCB1bmF2YWlsYWJsZVBsdWdpbkJ1dHRvbkNsaWNrZWQo
V2ViQ29yZTo6RWxlbWVudCosIFdlYkNvcmU6OlJlbmRlckVtYmVkZGVkT2JqZWN0OjpQbHVnaW5V
bmF2YWlsYWJpbGl0eVJlYXNvbikgY29uc3QgZmluYWw7CisgICAgdm9pZCBtb3VzZURpZE1vdmVP
dmVyRWxlbWVudChjb25zdCBXZWJDb3JlOjpIaXRUZXN0UmVzdWx0JiwgdW5zaWduZWQgbW9kaWZp
ZXJGbGFncykgZmluYWw7CiAKLSAgICB2b2lkIHNldFRvb2xUaXAoY29uc3QgV1RGOjpTdHJpbmcm
LCBXZWJDb3JlOjpUZXh0RGlyZWN0aW9uKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldFRvb2xUaXAo
Y29uc3QgV1RGOjpTdHJpbmcmLCBXZWJDb3JlOjpUZXh0RGlyZWN0aW9uKSBmaW5hbDsKIAotICAg
IHZvaWQgcHJpbnQoV2ViQ29yZTo6RnJhbWUqKSBvdmVycmlkZTsKLSAgICB2b2lkIGV4Y2VlZGVk
RGF0YWJhc2VRdW90YShXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdURjo6U3RyaW5nJiBkYXRhYmFz
ZU5hbWUsIFdlYkNvcmU6OkRhdGFiYXNlRGV0YWlscykgb3ZlcnJpZGU7Ci0gICAgdm9pZCByZWFj
aGVkTWF4QXBwQ2FjaGVTaXplKGludDY0X3Qgc3BhY2VOZWVkZWQpIG92ZXJyaWRlOwotICAgIHZv
aWQgcmVhY2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YShXZWJDb3JlOjpTZWN1cml0eU9y
aWdpbiosIGludDY0X3QgdG90YWxTcGFjZU5lZWRlZCkgb3ZlcnJpZGU7CisgICAgdm9pZCBwcmlu
dChXZWJDb3JlOjpGcmFtZSopIGZpbmFsOworICAgIHZvaWQgZXhjZWVkZWREYXRhYmFzZVF1b3Rh
KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV1RGOjpTdHJpbmcmIGRhdGFiYXNlTmFtZSwgV2ViQ29y
ZTo6RGF0YWJhc2VEZXRhaWxzKSBmaW5hbDsKKyAgICB2b2lkIHJlYWNoZWRNYXhBcHBDYWNoZVNp
emUoaW50NjRfdCBzcGFjZU5lZWRlZCkgZmluYWw7CisgICAgdm9pZCByZWFjaGVkQXBwbGljYXRp
b25DYWNoZU9yaWdpblF1b3RhKFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luKiwgaW50NjRfdCB0b3Rh
bFNwYWNlTmVlZGVkKSBmaW5hbDsKIAogI2lmIEVOQUJMRShEQVNIQk9BUkRfU1VQUE9SVCkKLSAg
ICB2b2lkIGFubm90YXRlZFJlZ2lvbnNDaGFuZ2VkKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBhbm5v
dGF0ZWRSZWdpb25zQ2hhbmdlZCgpIGZpbmFsOwogI2VuZGlmCiAKLSAgICB2b2lkIHJ1bk9wZW5Q
YW5lbChXZWJDb3JlOjpGcmFtZSosIFBhc3NSZWZQdHI8V2ViQ29yZTo6RmlsZUNob29zZXI+KSBv
dmVycmlkZTsKLSAgICB2b2lkIGxvYWRJY29uRm9yRmlsZXMoY29uc3QgVmVjdG9yPFdURjo6U3Ry
aW5nPiYsIFdlYkNvcmU6OkZpbGVJY29uTG9hZGVyJikgb3ZlcnJpZGU7CisgICAgdm9pZCBydW5P
cGVuUGFuZWwoV2ViQ29yZTo6RnJhbWUmLCBXZWJDb3JlOjpGaWxlQ2hvb3NlciYpIGZpbmFsOwor
ICAgIHZvaWQgbG9hZEljb25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiwgV2Vi
Q29yZTo6RmlsZUljb25Mb2FkZXImKSBmaW5hbDsKIAogI2lmICFQTEFURk9STShJT1MpCi0gICAg
dm9pZCBzZXRDdXJzb3IoY29uc3QgV2ViQ29yZTo6Q3Vyc29yJikgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBzZXRDdXJzb3JIaWRkZW5VbnRpbE1vdXNlTW92ZXMoYm9vbCkgb3ZlcnJpZGU7CisgICAgdm9p
ZCBzZXRDdXJzb3IoY29uc3QgV2ViQ29yZTo6Q3Vyc29yJikgZmluYWw7CisgICAgdm9pZCBzZXRD
dXJzb3JIaWRkZW5VbnRpbE1vdXNlTW92ZXMoYm9vbCkgZmluYWw7CiAjZW5kaWYKIAogI2lmIEVO
QUJMRShJTlBVVF9UWVBFX0NPTE9SKQotICAgIHN0ZDo6dW5pcXVlX3B0cjxXZWJDb3JlOjpDb2xv
ckNob29zZXI+IGNyZWF0ZUNvbG9yQ2hvb3NlcihXZWJDb3JlOjpDb2xvckNob29zZXJDbGllbnQq
LCBjb25zdCBXZWJDb3JlOjpDb2xvciYpIG92ZXJyaWRlOworICAgIHN0ZDo6dW5pcXVlX3B0cjxX
ZWJDb3JlOjpDb2xvckNob29zZXI+IGNyZWF0ZUNvbG9yQ2hvb3NlcihXZWJDb3JlOjpDb2xvckNo
b29zZXJDbGllbnQqLCBjb25zdCBXZWJDb3JlOjpDb2xvciYpIGZpbmFsOwogI2VuZGlmCi0gICAg
CisKICNpZiBFTkFCTEUoUE9JTlRFUl9MT0NLKQotICAgIGJvb2wgcmVxdWVzdFBvaW50ZXJMb2Nr
KCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCByZXF1ZXN0UG9pbnRlclVubG9jaygpIG92ZXJyaWRlOwor
ICAgIGJvb2wgcmVxdWVzdFBvaW50ZXJMb2NrKCkgZmluYWw7CisgICAgdm9pZCByZXF1ZXN0UG9p
bnRlclVubG9jaygpIGZpbmFsOwogI2VuZGlmCiAKLSAgICBXZWJDb3JlOjpLZXlib2FyZFVJTW9k
ZSBrZXlib2FyZFVJTW9kZSgpIG92ZXJyaWRlOworICAgIFdlYkNvcmU6OktleWJvYXJkVUlNb2Rl
IGtleWJvYXJkVUlNb2RlKCkgZmluYWw7CisKKyAgICBOU1Jlc3BvbmRlciAqZmlyc3RSZXNwb25k
ZXIoKSBmaW5hbDsKKyAgICB2b2lkIG1ha2VGaXJzdFJlc3BvbmRlcihOU1Jlc3BvbmRlciAqKSBm
aW5hbDsKIAotICAgIE5TUmVzcG9uZGVyICpmaXJzdFJlc3BvbmRlcigpIG92ZXJyaWRlOwotICAg
IHZvaWQgbWFrZUZpcnN0UmVzcG9uZGVyKE5TUmVzcG9uZGVyICopIG92ZXJyaWRlOworICAgIHZv
aWQgZW5hYmxlU3VkZGVuVGVybWluYXRpb24oKSBmaW5hbDsKKyAgICB2b2lkIGRpc2FibGVTdWRk
ZW5UZXJtaW5hdGlvbigpIGZpbmFsOwogCi0gICAgdm9pZCBlbmFibGVTdWRkZW5UZXJtaW5hdGlv
bigpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkgb3ZlcnJp
ZGU7Ci0gICAgCi0gICAgYm9vbCBzaG91bGRSZXBsYWNlV2l0aEdlbmVyYXRlZEZpbGVGb3JVcGxv
YWQoY29uc3QgV1RGOjpTdHJpbmcmIHBhdGgsIFdURjo6U3RyaW5nICZnZW5lcmF0ZWRGaWxlbmFt
ZSkgb3ZlcnJpZGU7Ci0gICAgV1RGOjpTdHJpbmcgZ2VuZXJhdGVSZXBsYWNlbWVudEZpbGUoY29u
c3QgV1RGOjpTdHJpbmcmIHBhdGgpIG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkUmVwbGFjZVdp
dGhHZW5lcmF0ZWRGaWxlRm9yVXBsb2FkKGNvbnN0IFdURjo6U3RyaW5nJiBwYXRoLCBXVEY6OlN0
cmluZyAmZ2VuZXJhdGVkRmlsZW5hbWUpIGZpbmFsOworICAgIFdURjo6U3RyaW5nIGdlbmVyYXRl
UmVwbGFjZW1lbnRGaWxlKGNvbnN0IFdURjo6U3RyaW5nJiBwYXRoKSBmaW5hbDsKIAotICAgIHZv
aWQgZWxlbWVudERpZEZvY3VzKGNvbnN0IFdlYkNvcmU6Ok5vZGUqKSBvdmVycmlkZTsKLSAgICB2
b2lkIGVsZW1lbnREaWRCbHVyKGNvbnN0IFdlYkNvcmU6Ok5vZGUqKSBvdmVycmlkZTsKKyAgICB2
b2lkIGVsZW1lbnREaWRGb2N1cyhjb25zdCBXZWJDb3JlOjpOb2RlKikgZmluYWw7CisgICAgdm9p
ZCBlbGVtZW50RGlkQmx1cihjb25zdCBXZWJDb3JlOjpOb2RlKikgZmluYWw7CiAKLSAgICBib29s
IHNob3VsZFBhaW50RW50aXJlQ29udGVudHMoKSBjb25zdCBvdmVycmlkZTsKKyAgICBib29sIHNo
b3VsZFBhaW50RW50aXJlQ29udGVudHMoKSBjb25zdCBmaW5hbDsKIAotICAgIHZvaWQgYXR0YWNo
Um9vdEdyYXBoaWNzTGF5ZXIoV2ViQ29yZTo6RnJhbWUqLCBXZWJDb3JlOjpHcmFwaGljc0xheWVy
Kikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBhdHRhY2hWaWV3T3ZlcmxheUdyYXBoaWNzTGF5ZXIoV2Vi
Q29yZTo6RnJhbWUqLCBXZWJDb3JlOjpHcmFwaGljc0xheWVyKikgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBzZXROZWVkc09uZVNob3REcmF3aW5nU3luY2hyb25pemF0aW9uKCkgb3ZlcnJpZGU7Ci0gICAg
dm9pZCBzY2hlZHVsZUNvbXBvc2l0aW5nTGF5ZXJGbHVzaCgpIG92ZXJyaWRlOworICAgIHZvaWQg
YXR0YWNoUm9vdEdyYXBoaWNzTGF5ZXIoV2ViQ29yZTo6RnJhbWUqLCBXZWJDb3JlOjpHcmFwaGlj
c0xheWVyKikgZmluYWw7CisgICAgdm9pZCBhdHRhY2hWaWV3T3ZlcmxheUdyYXBoaWNzTGF5ZXIo
V2ViQ29yZTo6RnJhbWUqLCBXZWJDb3JlOjpHcmFwaGljc0xheWVyKikgZmluYWw7CisgICAgdm9p
ZCBzZXROZWVkc09uZVNob3REcmF3aW5nU3luY2hyb25pemF0aW9uKCkgZmluYWw7CisgICAgdm9p
ZCBzY2hlZHVsZUNvbXBvc2l0aW5nTGF5ZXJGbHVzaCgpIGZpbmFsOwogCi0gICAgQ29tcG9zaXRp
bmdUcmlnZ2VyRmxhZ3MgYWxsb3dlZENvbXBvc2l0aW5nVHJpZ2dlcnMoKSBjb25zdCBvdmVycmlk
ZQorICAgIENvbXBvc2l0aW5nVHJpZ2dlckZsYWdzIGFsbG93ZWRDb21wb3NpdGluZ1RyaWdnZXJz
KCkgY29uc3QgZmluYWwKICAgICB7CiAgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxDb21wb3Np
dGluZ1RyaWdnZXJGbGFncz4oCiAgICAgICAgICAgICBUaHJlZURUcmFuc2Zvcm1UcmlnZ2VyIHwK
QEAgLTE2OSw1MiArMTc0LDQ5IEBAIHB1YmxpYzoKICAgICAgICAgICAgIEFuaW1hdGlvblRyaWdn
ZXIpOwogICAgIH0KIAotI2lmIEVOQUJMRShWSURFTykKLSNpZiBQTEFURk9STShNQUMpICYmIEVO
QUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKLSAgICB2b2lkIHNldFVwUGxheWJhY2tDb250
cm9sc01hbmFnZXIoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudCYpIG92ZXJyaWRlOwotICAgIHZv
aWQgY2xlYXJQbGF5YmFja0NvbnRyb2xzTWFuYWdlcigpIG92ZXJyaWRlOworI2lmIEVOQUJMRShW
SURFTykgJiYgUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUp
CisgICAgdm9pZCBzZXRVcFBsYXliYWNrQ29udHJvbHNNYW5hZ2VyKFdlYkNvcmU6OkhUTUxNZWRp
YUVsZW1lbnQmKSBmaW5hbDsKKyAgICB2b2lkIGNsZWFyUGxheWJhY2tDb250cm9sc01hbmFnZXIo
KSBmaW5hbDsKICNlbmRpZgogCi0gICAgYm9vbCBzdXBwb3J0c1ZpZGVvRnVsbHNjcmVlbihXZWJD
b3JlOjpIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIG92ZXJyaWRl
OwotICAgIHZvaWQgZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6
SFRNTFZpZGVvRWxlbWVudCYsIFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9G
dWxsc2NyZWVuTW9kZSkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBleGl0VmlkZW9GdWxsc2NyZWVuRm9y
VmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmKSBvdmVycmlkZTsKKyNpZiBF
TkFCTEUoVklERU8pCisgICAgYm9vbCBzdXBwb3J0c1ZpZGVvRnVsbHNjcmVlbihXZWJDb3JlOjpI
VE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIGZpbmFsOworICAgIHZv
aWQgZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVv
RWxlbWVudCYsIFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVu
TW9kZSkgZmluYWw7CisgICAgdm9pZCBleGl0VmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50
KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmKSBmaW5hbDsKICNlbmRpZgotICAgIAorCiAjaWYg
RU5BQkxFKEZVTExTQ1JFRU5fQVBJKQotICAgIGJvb2wgc3VwcG9ydHNGdWxsU2NyZWVuRm9yRWxl
bWVudChjb25zdCBXZWJDb3JlOjpFbGVtZW50KiwgYm9vbCB3aXRoS2V5Ym9hcmQpIG92ZXJyaWRl
OwotICAgIHZvaWQgZW50ZXJGdWxsU2NyZWVuRm9yRWxlbWVudChXZWJDb3JlOjpFbGVtZW50Kikg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBleGl0RnVsbFNjcmVlbkZvckVsZW1lbnQoV2ViQ29yZTo6RWxl
bWVudCopIG92ZXJyaWRlOworICAgIGJvb2wgc3VwcG9ydHNGdWxsU2NyZWVuRm9yRWxlbWVudChj
b25zdCBXZWJDb3JlOjpFbGVtZW50KiwgYm9vbCB3aXRoS2V5Ym9hcmQpIGZpbmFsOworICAgIHZv
aWQgZW50ZXJGdWxsU2NyZWVuRm9yRWxlbWVudChXZWJDb3JlOjpFbGVtZW50KikgZmluYWw7Cisg
ICAgdm9pZCBleGl0RnVsbFNjcmVlbkZvckVsZW1lbnQoV2ViQ29yZTo6RWxlbWVudCopIGZpbmFs
OwogI2VuZGlmCiAKLSAgICBib29sIHNlbGVjdEl0ZW1Xcml0aW5nRGlyZWN0aW9uSXNOYXR1cmFs
KCkgb3ZlcnJpZGU7Ci0gICAgYm9vbCBzZWxlY3RJdGVtQWxpZ25tZW50Rm9sbG93c01lbnVXcml0
aW5nRGlyZWN0aW9uKCkgb3ZlcnJpZGU7Ci0gICAgYm9vbCBoYXNPcGVuZWRQb3B1cCgpIGNvbnN0
IG92ZXJyaWRlOwotICAgIFJlZlB0cjxXZWJDb3JlOjpQb3B1cE1lbnU+IGNyZWF0ZVBvcHVwTWVu
dShXZWJDb3JlOjpQb3B1cE1lbnVDbGllbnQqKSBjb25zdCBvdmVycmlkZTsKLSAgICBSZWZQdHI8
V2ViQ29yZTo6U2VhcmNoUG9wdXBNZW51PiBjcmVhdGVTZWFyY2hQb3B1cE1lbnUoV2ViQ29yZTo6
UG9wdXBNZW51Q2xpZW50KikgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzZWxlY3RJdGVtV3Jp
dGluZ0RpcmVjdGlvbklzTmF0dXJhbCgpIGZpbmFsOworICAgIGJvb2wgc2VsZWN0SXRlbUFsaWdu
bWVudEZvbGxvd3NNZW51V3JpdGluZ0RpcmVjdGlvbigpIGZpbmFsOworICAgIGJvb2wgaGFzT3Bl
bmVkUG9wdXAoKSBjb25zdCBmaW5hbDsKKyAgICBSZWZQdHI8V2ViQ29yZTo6UG9wdXBNZW51PiBj
cmVhdGVQb3B1cE1lbnUoV2ViQ29yZTo6UG9wdXBNZW51Q2xpZW50KikgY29uc3QgZmluYWw7Cisg
ICAgUmVmUHRyPFdlYkNvcmU6OlNlYXJjaFBvcHVwTWVudT4gY3JlYXRlU2VhcmNoUG9wdXBNZW51
KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCopIGNvbnN0IGZpbmFsOwogCi0gICAgdm9pZCB3aGVl
bEV2ZW50SGFuZGxlcnNDaGFuZ2VkKGJvb2wpIG92ZXJyaWRlIHsgfQorICAgIHZvaWQgd2hlZWxF
dmVudEhhbmRsZXJzQ2hhbmdlZChib29sKSBmaW5hbCB7IH0KIAogI2lmIEVOQUJMRShTVUJUTEVf
Q1JZUFRPKQotICAgIGJvb2wgd3JhcENyeXB0b0tleShjb25zdCBWZWN0b3I8dWludDhfdD4mLCBW
ZWN0b3I8dWludDhfdD4mKSBjb25zdCBvdmVycmlkZTsKLSAgICBib29sIHVud3JhcENyeXB0b0tl
eShjb25zdCBWZWN0b3I8dWludDhfdD4mLCBWZWN0b3I8dWludDhfdD4mKSBjb25zdCBvdmVycmlk
ZTsKKyAgICBib29sIHdyYXBDcnlwdG9LZXkoY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiwgVmVjdG9y
PHVpbnQ4X3Q+JikgY29uc3QgZmluYWw7CisgICAgYm9vbCB1bndyYXBDcnlwdG9LZXkoY29uc3Qg
VmVjdG9yPHVpbnQ4X3Q+JiwgVmVjdG9yPHVpbnQ4X3Q+JikgY29uc3QgZmluYWw7CiAjZW5kaWYK
IAogI2lmIEVOQUJMRShTRVJWSUNFX0NPTlRST0xTKQotICAgIHZvaWQgaGFuZGxlU2VsZWN0aW9u
U2VydmljZUNsaWNrKFdlYkNvcmU6OkZyYW1lU2VsZWN0aW9uJiwgY29uc3QgVmVjdG9yPFN0cmlu
Zz4mIHRlbGVwaG9uZU51bWJlcnMsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50Jikgb3ZlcnJpZGU7
Ci0gICAgYm9vbCBoYXNSZWxldmFudFNlbGVjdGlvblNlcnZpY2VzKGJvb2wgaXNUZXh0T25seSkg
Y29uc3Qgb3ZlcnJpZGU7CisgICAgdm9pZCBoYW5kbGVTZWxlY3Rpb25TZXJ2aWNlQ2xpY2soV2Vi
Q29yZTo6RnJhbWVTZWxlY3Rpb24mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgdGVsZXBob25lTnVt
YmVycywgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKSBmaW5hbDsKKyAgICBib29sIGhhc1JlbGV2
YW50U2VsZWN0aW9uU2VydmljZXMoYm9vbCBpc1RleHRPbmx5KSBjb25zdCBmaW5hbDsKICNlbmRp
ZgogCi0gICAgV2ViVmlldyogd2ViVmlldygpIGNvbnN0IHsgcmV0dXJuIG1fd2ViVmlldzsgfQot
CiAjaWYgRU5BQkxFKFdJUkVMRVNTX1BMQVlCQUNLX1RBUkdFVCkgJiYgIVBMQVRGT1JNKElPUykK
LSAgICB2b2lkIGFkZFBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2NF90IC8qY29udGV4
dElkKi8pIG92ZXJyaWRlOwotICAgIHZvaWQgcmVtb3ZlUGxheWJhY2tUYXJnZXRQaWNrZXJDbGll
bnQodWludDY0X3QgLypjb250ZXh0SWQqLykgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzaG93UGxheWJh
Y2tUYXJnZXRQaWNrZXIodWludDY0X3QgLypjb250ZXh0SWQqLywgY29uc3QgV2ViQ29yZTo6SW50
UG9pbnQmLCBib29sIC8qIGhhc1ZpZGVvICovKSBvdmVycmlkZTsKLSAgICB2b2lkIHBsYXliYWNr
VGFyZ2V0UGlja2VyQ2xpZW50U3RhdGVEaWRDaGFuZ2UodWludDY0X3QgLypjb250ZXh0SWQqLywg
V2ViQ29yZTo6TWVkaWFQcm9kdWNlcjo6TWVkaWFTdGF0ZUZsYWdzKSBvdmVycmlkZTsKLSAgICB2
b2lkIHNldE1vY2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyRW5hYmxlZChib29sKSBvdmVycmlk
ZTsKLSAgICB2b2lkIHNldE1vY2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyU3RhdGUoY29uc3Qg
U3RyaW5nJiwgV2ViQ29yZTo6TWVkaWFQbGF5YmFja1RhcmdldENvbnRleHQ6OlN0YXRlKSBvdmVy
cmlkZTsKKyAgICB2b2lkIGFkZFBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2NF90IC8q
Y29udGV4dElkKi8pIGZpbmFsOworICAgIHZvaWQgcmVtb3ZlUGxheWJhY2tUYXJnZXRQaWNrZXJD
bGllbnQodWludDY0X3QgLypjb250ZXh0SWQqLykgZmluYWw7CisgICAgdm9pZCBzaG93UGxheWJh
Y2tUYXJnZXRQaWNrZXIodWludDY0X3QgLypjb250ZXh0SWQqLywgY29uc3QgV2ViQ29yZTo6SW50
UG9pbnQmLCBib29sIC8qIGhhc1ZpZGVvICovKSBmaW5hbDsKKyAgICB2b2lkIHBsYXliYWNrVGFy
Z2V0UGlja2VyQ2xpZW50U3RhdGVEaWRDaGFuZ2UodWludDY0X3QgLypjb250ZXh0SWQqLywgV2Vi
Q29yZTo6TWVkaWFQcm9kdWNlcjo6TWVkaWFTdGF0ZUZsYWdzKSBmaW5hbDsKKyAgICB2b2lkIHNl
dE1vY2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyRW5hYmxlZChib29sKSBmaW5hbDsKKyAgICB2
b2lkIHNldE1vY2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyU3RhdGUoY29uc3QgU3RyaW5nJiwg
V2ViQ29yZTo6TWVkaWFQbGF5YmFja1RhcmdldENvbnRleHQ6OlN0YXRlKSBmaW5hbDsKICNlbmRp
ZgogCi1wcml2YXRlOgogICAgIFdlYlZpZXcgKm1fd2ViVmlldzsKIH07CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQubW0gYi9Tb3Vy
Y2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQubW0KaW5kZXggZDdl
YzhjYjFiNDZhYjc4MThlMGRlMjI0MTI2Y2FhNWEwNjVkYTI5MS4uYTUyYTQ2MDFjMTY0N2RlNDVk
NDA5OTU3YTgxMzJhMjNkMWEzNjA2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2Vi
Q29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dl
YkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5tbQpAQCAtNzQxLDEwICs3NDEsMTAgQEAgdm9p
ZCBXZWJDaHJvbWVDbGllbnQ6OnJlcXVlc3RQb2ludGVyVW5sb2NrKCkKIH0KICNlbmRpZgogCi12
b2lkIFdlYkNocm9tZUNsaWVudDo6cnVuT3BlblBhbmVsKEZyYW1lKiwgUGFzc1JlZlB0cjxGaWxl
Q2hvb3Nlcj4gY2hvb3NlcikKK3ZvaWQgV2ViQ2hyb21lQ2xpZW50OjpydW5PcGVuUGFuZWwoRnJh
bWUmLCBGaWxlQ2hvb3NlciYgY2hvb3NlcikKIHsKICAgICBCRUdJTl9CTE9DS19PQkpDX0VYQ0VQ
VElPTlM7Ci0gICAgQk9PTCBhbGxvd011bHRpcGxlRmlsZXMgPSBjaG9vc2VyLT5zZXR0aW5ncygp
LmFsbG93c011bHRpcGxlRmlsZXM7CisgICAgQk9PTCBhbGxvd011bHRpcGxlRmlsZXMgPSBjaG9v
c2VyLnNldHRpbmdzKCkuYWxsb3dzTXVsdGlwbGVGaWxlczsKICAgICBXZWJPcGVuUGFuZWxSZXN1
bHRMaXN0ZW5lciAqbGlzdGVuZXIgPSBbW1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyIGFsbG9j
XSBpbml0V2l0aENob29zZXI6Y2hvb3Nlcl07CiAgICAgaWQgZGVsZWdhdGUgPSBbbV93ZWJWaWV3
IFVJRGVsZWdhdGVdOwogICAgIGlmIChbZGVsZWdhdGUgcmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxl
Y3Rvcih3ZWJWaWV3OnJ1bk9wZW5QYW5lbEZvckZpbGVCdXR0b25XaXRoUmVzdWx0TGlzdGVuZXI6
YWxsb3dNdWx0aXBsZUZpbGVzOildKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2Vi
Q29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3Jl
U3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuaAppbmRleCAzYjM1ZDRkMjExMGY0OWYxYzQ5M2ZlYWNj
ZDA4NDczOGI4MjM4YWY5Li44ODIxNTMxMDRjNTAwOWU1ZTdlYTBhZTdmOTA4YjM3NmM3MGNmN2M1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JD
bGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JD
bGllbnQuaApAQCAtMTE1LDggKzExNSw4IEBAIHByaXZhdGU6CiAgICAgdm9pZCBkaXNjYXJkZWRD
b21wb3NpdGlvbihXZWJDb3JlOjpGcmFtZSopIGZpbmFsOwogICAgIHZvaWQgY2FuY2VsZWRDb21w
b3NpdGlvbigpIGZpbmFsOwogCi0gICAgdm9pZCByZWdpc3RlclVuZG9TdGVwKFBhc3NSZWZQdHI8
V2ViQ29yZTo6VW5kb1N0ZXA+KSBmaW5hbDsKLSAgICB2b2lkIHJlZ2lzdGVyUmVkb1N0ZXAoUGFz
c1JlZlB0cjxXZWJDb3JlOjpVbmRvU3RlcD4pIGZpbmFsOworICAgIHZvaWQgcmVnaXN0ZXJVbmRv
U3RlcChXZWJDb3JlOjpVbmRvU3RlcCYpIGZpbmFsOworICAgIHZvaWQgcmVnaXN0ZXJSZWRvU3Rl
cChXZWJDb3JlOjpVbmRvU3RlcCYpIGZpbmFsOwogICAgIHZvaWQgY2xlYXJVbmRvUmVkb09wZXJh
dGlvbnMoKSBmaW5hbDsKIAogICAgIGJvb2wgY2FuQ29weUN1dChXZWJDb3JlOjpGcmFtZSosIGJv
b2wgZGVmYXVsdFZhbHVlKSBjb25zdCBmaW5hbDsKQEAgLTE3NCw3ICsxNzQsNyBAQCBwcml2YXRl
OgogICAgIHZvaWQgaGFuZGxlQWNjZXB0ZWRDYW5kaWRhdGVXaXRoU29mdFNwYWNlcyhXZWJDb3Jl
OjpUZXh0Q2hlY2tpbmdSZXN1bHQpIGZpbmFsOwogI2VuZGlmCiAKLSAgICB2b2lkIHJlZ2lzdGVy
VW5kb09yUmVkb1N0ZXAoUGFzc1JlZlB0cjxXZWJDb3JlOjpVbmRvU3RlcD4sIGJvb2wgaXNSZWRv
KTsKKyAgICB2b2lkIHJlZ2lzdGVyVW5kb09yUmVkb1N0ZXAoV2ViQ29yZTo6VW5kb1N0ZXAmLCBi
b29sIGlzUmVkbyk7CiAKICAgICBXZWJWaWV3ICptX3dlYlZpZXc7CiAgICAgUmV0YWluUHRyPFdl
YkVkaXRvclVuZG9UYXJnZXQ+IG1fdW5kb1RhcmdldDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5tbSBiL1NvdXJjZS9XZWJLaXQv
bWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5tbQppbmRleCA3ZjlmNDE3YWQxYzQz
YTg2YWEyNWQyMTQ4ZTU0Njk1ZTFkYjcwMjhlLi5mMzhhOWYwY2RjMmQ0OTUwZGQwNjQ2ZDcwMzhm
OGM1YTMzM2UwNDg2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9y
dC9XZWJFZGl0b3JDbGllbnQubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBv
cnQvV2ViRWRpdG9yQ2xpZW50Lm1tCkBAIC0xMTksOCArMTE5LDggQEAgQGludGVyZmFjZSBXZWJV
bmRvU3RlcCA6IE5TT2JqZWN0CiAgICAgUmVmUHRyPFVuZG9TdGVwPiBtX3N0ZXA7ICAgCiB9CiAK
LSsgKFdlYlVuZG9TdGVwICopc3RlcFdpdGhVbmRvU3RlcDooUGFzc1JlZlB0cjxVbmRvU3RlcD4p
c3RlcDsKLS0gKFVuZG9TdGVwICopc3RlcDsKKysgKFdlYlVuZG9TdGVwICopc3RlcFdpdGhVbmRv
U3RlcDooVW5kb1N0ZXAmKXN0ZXA7CistIChVbmRvU3RlcCYpc3RlcDsKIAogQGVuZAogCkBAIC0x
MzUsMTMgKzEzNSwxMiBAQCArICh2b2lkKWluaXRpYWxpemUKICNlbmRpZgogfQogCi0tIChpZClp
bml0V2l0aFVuZG9TdGVwOihQYXNzUmVmUHRyPFVuZG9TdGVwPilzdGVwCistIChpZClpbml0V2l0
aFVuZG9TdGVwOihVbmRvU3RlcCYpc3RlcAogewotICAgIEFTU0VSVChzdGVwKTsKICAgICBzZWxm
ID0gW3N1cGVyIGluaXRdOwogICAgIGlmICghc2VsZikKICAgICAgICAgcmV0dXJuIG5pbDsKLSAg
ICBtX3N0ZXAgPSBzdGVwOworICAgIG1fc3RlcCA9ICZzdGVwOwogICAgIHJldHVybiBzZWxmOwog
fQogCkBAIC0xNTMsMTQgKzE1MiwxNCBAQCAtICh2b2lkKWRlYWxsb2MKICAgICBbc3VwZXIgZGVh
bGxvY107CiB9CiAKLSsgKFdlYlVuZG9TdGVwICopc3RlcFdpdGhVbmRvU3RlcDooUGFzc1JlZlB0
cjxVbmRvU3RlcD4pc3RlcAorKyAoV2ViVW5kb1N0ZXAgKilzdGVwV2l0aFVuZG9TdGVwOihVbmRv
U3RlcCYpc3RlcAogewogICAgIHJldHVybiBbW1tXZWJVbmRvU3RlcCBhbGxvY10gaW5pdFdpdGhV
bmRvU3RlcDpzdGVwXSBhdXRvcmVsZWFzZV07CiB9CiAKLS0gKFVuZG9TdGVwICopc3RlcAorLSAo
VW5kb1N0ZXAmKXN0ZXAKIHsKLSAgICByZXR1cm4gbV9zdGVwLmdldCgpOworICAgIHJldHVybiAq
bV9zdGVwOwogfQogCiBAZW5kCkBAIC0xNzcsMTMgKzE3NiwxMyBAQCBAaW1wbGVtZW50YXRpb24g
V2ViRWRpdG9yVW5kb1RhcmdldAogLSAodm9pZCl1bmRvRWRpdGluZzooaWQpYXJnCiB7CiAgICAg
QVNTRVJUKFthcmcgaXNLaW5kT2ZDbGFzczpbV2ViVW5kb1N0ZXAgY2xhc3NdXSk7Ci0gICAgW2Fy
ZyBzdGVwXS0+dW5hcHBseSgpOworICAgIFthcmcgc3RlcF0udW5hcHBseSgpOwogfQogCiAtICh2
b2lkKXJlZG9FZGl0aW5nOihpZClhcmcKIHsKICAgICBBU1NFUlQoW2FyZyBpc0tpbmRPZkNsYXNz
OltXZWJVbmRvU3RlcCBjbGFzc11dKTsKLSAgICBbYXJnIHN0ZXBdLT5yZWFwcGx5KCk7CisgICAg
W2FyZyBzdGVwXS5yZWFwcGx5KCk7CiB9CiAKIEBlbmQKQEAgLTY0MiwxMCArNjQxLDggQEAgc3Rh
dGljIE5TU3RyaW5nKiB1bmRvTmFtZUZvckVkaXRBY3Rpb24oRWRpdEFjdGlvbiBlZGl0QWN0aW9u
KQogICAgIHJldHVybiBuaWw7CiB9CiAKLXZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVu
ZG9PclJlZG9TdGVwKFBhc3NSZWZQdHI8VW5kb1N0ZXA+IHN0ZXAsIGJvb2wgaXNSZWRvKQordm9p
ZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb09yUmVkb1N0ZXAoVW5kb1N0ZXAmIHN0ZXAs
IGJvb2wgaXNSZWRvKQogewotICAgIEFTU0VSVChzdGVwKTsKLSAgICAKICAgICBOU1VuZG9NYW5h
Z2VyICp1bmRvTWFuYWdlciA9IFttX3dlYlZpZXcgdW5kb01hbmFnZXJdOwogCiAjaWYgUExBVEZP
Uk0oSU9TKQpAQCAtNjU2LDcgKzY1Myw3IEBAIHZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3Rl
clVuZG9PclJlZG9TdGVwKFBhc3NSZWZQdHI8VW5kb1N0ZXA+IHN0ZXAsIGJvb2wgaXNSCiAgICAg
ICAgIHJldHVybjsKICNlbmRpZgogCi0gICAgTlNTdHJpbmcgKmFjdGlvbk5hbWUgPSB1bmRvTmFt
ZUZvckVkaXRBY3Rpb24oc3RlcC0+ZWRpdGluZ0FjdGlvbigpKTsKKyAgICBOU1N0cmluZyAqYWN0
aW9uTmFtZSA9IHVuZG9OYW1lRm9yRWRpdEFjdGlvbihzdGVwLmVkaXRpbmdBY3Rpb24oKSk7CiAg
ICAgV2ViVW5kb1N0ZXAgKndlYkVudHJ5ID0gW1dlYlVuZG9TdGVwIHN0ZXBXaXRoVW5kb1N0ZXA6
c3RlcF07CiAgICAgW3VuZG9NYW5hZ2VyIHJlZ2lzdGVyVW5kb1dpdGhUYXJnZXQ6bV91bmRvVGFy
Z2V0LmdldCgpIHNlbGVjdG9yOihpc1JlZG8gPyBAc2VsZWN0b3IocmVkb0VkaXRpbmc6KSA6IEBz
ZWxlY3Rvcih1bmRvRWRpdGluZzopKSBvYmplY3Q6d2ViRW50cnldOwogICAgIGlmIChhY3Rpb25O
YW1lKQpAQCAtNjg0LDEyICs2ODEsMTIgQEAgdm9pZCBXZWJFZGl0b3JDbGllbnQ6OnVwZGF0ZUVk
aXRvclN0YXRlQWZ0ZXJMYXlvdXRJZkVkaXRhYmlsaXR5Q2hhbmdlZCgpCiAgICAgICAgIFttX3dl
YlZpZXcgdXBkYXRlVG91Y2hCYXJdOwogfQogCi12b2lkIFdlYkVkaXRvckNsaWVudDo6cmVnaXN0
ZXJVbmRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPiBjbWQpCit2b2lkIFdlYkVkaXRvckNsaWVu
dDo6cmVnaXN0ZXJVbmRvU3RlcChVbmRvU3RlcCYgY21kKQogewogICAgIHJlZ2lzdGVyVW5kb09y
UmVkb1N0ZXAoY21kLCBmYWxzZSk7CiB9CiAKLXZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3Rl
clJlZG9TdGVwKFBhc3NSZWZQdHI8VW5kb1N0ZXA+IGNtZCkKK3ZvaWQgV2ViRWRpdG9yQ2xpZW50
OjpyZWdpc3RlclJlZG9TdGVwKFVuZG9TdGVwJiBjbWQpCiB7CiAgICAgcmVnaXN0ZXJVbmRvT3JS
ZWRvU3RlcChjbWQsIHRydWUpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2Vi
Q29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaCBiL1NvdXJjZS9XZWJLaXQvbWFjL1dl
YkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKaW5kZXggYTExZmI4OGJkYmQ5MWJh
ZDhmZDhkZjlmZDI5MmY4MjU4OGZjNDVmNi4uYmZiZDJmNzgzNmY2NDhiODA3MGFjNzQzZjJlYWM4
MzZhNWM5NjkxMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQv
V2ViRnJhbWVMb2FkZXJDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3Vw
cG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHly
aWdodCAoQykgMjAwNi0yMDE2IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENv
cHlyaWdodCAoQykgMjAwNi0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAq
CiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtNTgsMjAyICs1OCwyMDIgQEAgcHVibGlj
OgogICAgIFdlYkZyYW1lKiB3ZWJGcmFtZSgpIGNvbnN0IHsgcmV0dXJuIG1fd2ViRnJhbWUuZ2V0
KCk7IH0KIAogcHJpdmF0ZToKLSAgICB2b2lkIGZyYW1lTG9hZGVyRGVzdHJveWVkKCkgb3ZlcnJp
ZGU7Ci0gICAgYm9vbCBoYXNXZWJWaWV3KCkgY29uc3Qgb3ZlcnJpZGU7IC8vIG1haW5seSBmb3Ig
YXNzZXJ0aW9ucworICAgIHZvaWQgZnJhbWVMb2FkZXJEZXN0cm95ZWQoKSBmaW5hbDsKKyAgICBi
b29sIGhhc1dlYlZpZXcoKSBjb25zdCBmaW5hbDsgLy8gbWFpbmx5IGZvciBhc3NlcnRpb25zCiAK
LSAgICB2b2lkIG1ha2VSZXByZXNlbnRhdGlvbihXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIG92
ZXJyaWRlOwotICAgIGJvb2wgaGFzSFRNTFZpZXcoKSBjb25zdCBvdmVycmlkZTsKKyAgICB2b2lk
IG1ha2VSZXByZXNlbnRhdGlvbihXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIGZpbmFsOworICAg
IGJvb2wgaGFzSFRNTFZpZXcoKSBjb25zdCBmaW5hbDsKICNpZiBQTEFURk9STShJT1MpCi0gICAg
Ym9vbCBmb3JjZUxheW91dE9uUmVzdG9yZUZyb21QYWdlQ2FjaGUoKSBvdmVycmlkZTsKKyAgICBi
b29sIGZvcmNlTGF5b3V0T25SZXN0b3JlRnJvbVBhZ2VDYWNoZSgpIGZpbmFsOwogI2VuZGlmCi0g
ICAgdm9pZCBmb3JjZUxheW91dEZvck5vbkhUTUwoKSBvdmVycmlkZTsKKyAgICB2b2lkIGZvcmNl
TGF5b3V0Rm9yTm9uSFRNTCgpIGZpbmFsOwogCi0gICAgdm9pZCBzZXRDb3BpZXNPblNjcm9sbCgp
IG92ZXJyaWRlOworICAgIHZvaWQgc2V0Q29waWVzT25TY3JvbGwoKSBmaW5hbDsKIAotICAgIHZv
aWQgZGV0YWNoZWRGcm9tUGFyZW50MigpIG92ZXJyaWRlOwotICAgIHZvaWQgZGV0YWNoZWRGcm9t
UGFyZW50MygpIG92ZXJyaWRlOworICAgIHZvaWQgZGV0YWNoZWRGcm9tUGFyZW50MigpIGZpbmFs
OworICAgIHZvaWQgZGV0YWNoZWRGcm9tUGFyZW50MygpIGZpbmFsOwogCi0gICAgdm9pZCBjb252
ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxvYWQoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBX
ZWJDb3JlOjpTZXNzaW9uSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKKyAgICB2b2lkIGNvbnZlcnRN
YWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNv
cmU6OlNlc3Npb25JRCwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOwogCi0gICAgdm9pZCBhc3NpZ25JZGVudGlm
aWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7
CisgICAgdm9pZCBhc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0JikgZmluYWw7CiAKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0
KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJD
b3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiBy
ZWRpcmVjdFJlc3BvbnNlKSBvdmVycmlkZTsKLSAgICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxT
dG9yYWdlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
KSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hh
bGxlbmdlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
LCBjb25zdCBXZWJDb3JlOjpBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpIG92ZXJyaWRlOworICAg
IHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpIGZpbmFsOworICAg
IGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIq
LCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRS
ZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hh
bGxlbmdlJikgZmluYWw7CiAjaWYgVVNFKFBST1RFQ1RJT05fU1BBQ0VfQVVUSF9DQUxMQkFDSykK
LSAgICBib29sIGNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6
OlByb3RlY3Rpb25TcGFjZSYpIG92ZXJyaWRlOworICAgIGJvb2wgY2FuQXV0aGVudGljYXRlQWdh
aW5zdFByb3RlY3Rpb25TcGFjZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UHJvdGVjdGlvblNwYWNlJikgZmluYWw7CiAj
ZW5kaWYKIAogI2lmIFBMQVRGT1JNKElPUykKLSAgICBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVm
PiBjb25uZWN0aW9uUHJvcGVydGllcyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllcikgb3ZlcnJpZGU7CisgICAgUmV0YWluUHRyPENGRGljdGlvbmFyeVJl
Zj4gY29ubmVjdGlvblByb3BlcnRpZXMoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIpIGZpbmFsOwogI2VuZGlmCiAKLSAgICB2b2lkIGRpc3BhdGNoRGlk
UmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIG92ZXJyaWRlOworICAgIHZvaWQgZGlz
cGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5h
bDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoKSBm
aW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVu
dExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgZmluYWw7CiAjaWYgRU5BQkxFKERB
VEFfREVURUNUSU9OKQotICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hEYXRhRGV0ZWN0aW9uKE5T
QXJyYXkgKmRldGVjdGlvblJlc3VsdHMpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hEaWRG
aW5pc2hEYXRhRGV0ZWN0aW9uKE5TQXJyYXkgKmRldGVjdGlvblJlc3VsdHMpIGZpbmFsOwogI2Vu
ZGlmCi0gICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVy
cm9yJikgb3ZlcnJpZGU7Ci0KLSAgICBOU0NhY2hlZFVSTFJlc3BvbnNlKiB3aWxsQ2FjaGVSZXNw
b25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
TlNDYWNoZWRVUkxSZXNwb25zZSopIGNvbnN0IG92ZXJyaWRlOwotCi0gICAgdm9pZCBkaXNwYXRj
aERpZERpc3BhdGNoT25sb2FkRXZlbnRzKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERp
ZFJlY2VpdmVTZXJ2ZXJSZWRpcmVjdEZvclByb3Zpc2lvbmFsTG9hZCgpIG92ZXJyaWRlOwotICAg
IHZvaWQgZGlzcGF0Y2hEaWRDYW5jZWxDbGllbnRSZWRpcmVjdCgpIG92ZXJyaWRlOwotICAgIHZv
aWQgZGlzcGF0Y2hXaWxsUGVyZm9ybUNsaWVudFJlZGlyZWN0KGNvbnN0IFdlYkNvcmU6OlVSTCYs
IGRvdWJsZSBpbnRlcnZhbCwgZG91YmxlIGZpcmVEYXRlKSBvdmVycmlkZTsKLSAgICB2b2lkIGRp
c3BhdGNoRGlkQ2hhbmdlTG9jYXRpb25XaXRoaW5QYWdlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBk
aXNwYXRjaERpZFB1c2hTdGF0ZVdpdGhpblBhZ2UoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3Bh
dGNoRGlkUmVwbGFjZVN0YXRlV2l0aGluUGFnZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0
Y2hEaWRQb3BTdGF0ZVdpdGhpblBhZ2UoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGlk
RmFpbExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKKworICAgIE5TQ2Fj
aGVkVVJMUmVzcG9uc2UqIHdpbGxDYWNoZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
KiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBOU0NhY2hlZFVSTFJlc3BvbnNlKikgY29uc3Qg
ZmluYWw7CisKKyAgICB2b2lkIGRpc3BhdGNoRGlkRGlzcGF0Y2hPbmxvYWRFdmVudHMoKSBmaW5h
bDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVNlcnZlclJlZGlyZWN0Rm9yUHJvdmlzaW9u
YWxMb2FkKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZENhbmNlbENsaWVudFJlZGlyZWN0
KCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxQZXJmb3JtQ2xpZW50UmVkaXJlY3QoY29u
c3QgV2ViQ29yZTo6VVJMJiwgZG91YmxlIGludGVydmFsLCBkb3VibGUgZmlyZURhdGUpIGZpbmFs
OworICAgIHZvaWQgZGlzcGF0Y2hEaWRDaGFuZ2VMb2NhdGlvbldpdGhpblBhZ2UoKSBmaW5hbDsK
KyAgICB2b2lkIGRpc3BhdGNoRGlkUHVzaFN0YXRlV2l0aGluUGFnZSgpIGZpbmFsOworICAgIHZv
aWQgZGlzcGF0Y2hEaWRSZXBsYWNlU3RhdGVXaXRoaW5QYWdlKCkgZmluYWw7CisgICAgdm9pZCBk
aXNwYXRjaERpZFBvcFN0YXRlV2l0aGluUGFnZSgpIGZpbmFsOwogICAgIAotICAgIHZvaWQgZGlz
cGF0Y2hXaWxsQ2xvc2UoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUlj
b24oKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkU3RhcnRQcm92aXNpb25hbExvYWQo
KSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVRpdGxlKGNvbnN0IFdlYkNv
cmU6OlN0cmluZ1dpdGhEaXJlY3Rpb24mKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlk
Q29tbWl0TG9hZChzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6Okhhc0luc2VjdXJlQ29udGVudD4pIG92
ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsUHJvdmlzaW9uYWxMb2FkKGNvbnN0IFdl
YkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmFp
bExvYWQoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwotICAgIHZvaWQg
ZGlzcGF0Y2hEaWRGaW5pc2hEb2N1bWVudExvYWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3Bh
dGNoRGlkRmluaXNoTG9hZCgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWFjaExh
eW91dE1pbGVzdG9uZShXZWJDb3JlOjpMYXlvdXRNaWxlc3RvbmVzKSBvdmVycmlkZTsKKyAgICB2
b2lkIGRpc3BhdGNoV2lsbENsb3NlKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2Vp
dmVJY29uKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFN0YXJ0UHJvdmlzaW9uYWxMb2Fk
KCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVUaXRsZShjb25zdCBXZWJDb3Jl
OjpTdHJpbmdXaXRoRGlyZWN0aW9uJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZENvbW1p
dExvYWQoc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpIYXNJbnNlY3VyZUNvbnRlbnQ+KSBmaW5hbDsK
KyAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbFByb3Zpc2lvbmFsTG9hZChjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZUVycm9yJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkKGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmlu
aXNoRG9jdW1lbnRMb2FkKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWQo
KSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVhY2hMYXlvdXRNaWxlc3RvbmUoV2ViQ29y
ZTo6TGF5b3V0TWlsZXN0b25lcykgZmluYWw7CiAKLSAgICBXZWJDb3JlOjpGcmFtZSogZGlzcGF0
Y2hDcmVhdGVQYWdlKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mKSBvdmVycmlkZTsK
LSAgICB2b2lkIGRpc3BhdGNoU2hvdygpIG92ZXJyaWRlOworICAgIFdlYkNvcmU6OkZyYW1lKiBk
aXNwYXRjaENyZWF0ZVBhZ2UoY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYpIGZpbmFs
OworICAgIHZvaWQgZGlzcGF0Y2hTaG93KCkgZmluYWw7CiAKLSAgICB2b2lkIGRpc3BhdGNoRGVj
aWRlUG9saWN5Rm9yUmVzcG9uc2UoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rp
b24pIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dB
Y3Rpb24oY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCYsIFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0YXRlPiwgY29uc3QgV1RG
OjpTdHJpbmcmIGZyYW1lTmFtZSwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29u
c3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVx
dWVzdCYsIFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0YXRlPiwgV2ViQ29yZTo6RnJhbWVQb2xp
Y3lGdW5jdGlvbikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBjYW5jZWxQb2xpY3lDaGVjaygpIG92ZXJy
aWRlOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JSZXNwb25zZShjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jiwg
V2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERl
Y2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0
aW9uJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgV2ViQ29yZTo6Rm9ybVN0YXRl
KiwgY29uc3QgV1RGOjpTdHJpbmcmIGZyYW1lTmFtZSwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5j
dGlvbikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25B
Y3Rpb24oY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCYsIFdlYkNvcmU6OkZvcm1TdGF0ZSosIFdlYkNvcmU6OkZyYW1lUG9saWN5
RnVuY3Rpb24pIGZpbmFsOworICAgIHZvaWQgY2FuY2VsUG9saWN5Q2hlY2soKSBmaW5hbDsKIAot
ICAgIHZvaWQgZGlzcGF0Y2hVbmFibGVUb0ltcGxlbWVudFBvbGljeShjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaFVuYWJsZVRvSW1wbGVt
ZW50UG9saWN5KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKIAotICAgIHZv
aWQgZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0
YXRlPikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKFBhc3NSZWZQ
dHI8V2ViQ29yZTo6Rm9ybVN0YXRlPiwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgb3Zl
cnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoUmVmPFdlYkNvcmU6
OkZvcm1TdGF0ZT4mJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKFdl
YkNvcmU6OkZvcm1TdGF0ZSYsIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFsOwog
Ci0gICAgdm9pZCByZXZlcnRUb1Byb3Zpc2lvbmFsU3RhdGUoV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXIqKSBvdmVycmlkZTsKLSAgICB2b2lkIHNldE1haW5Eb2N1bWVudEVycm9yKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwot
ICAgIGJvb2wgZGlzcGF0Y2hEaWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2FjaGUoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgaW50IGxlbmd0aCkgb3ZlcnJpZGU7CisgICAgdm9p
ZCByZXZlcnRUb1Byb3Zpc2lvbmFsU3RhdGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBmaW5h
bDsKKyAgICB2b2lkIHNldE1haW5Eb2N1bWVudEVycm9yKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
KiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIGZpbmFsOworICAgIGJvb2wgZGlzcGF0
Y2hEaWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2FjaGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIq
LCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZVJlc3BvbnNlJiwgaW50IGxlbmd0aCkgZmluYWw7CiAKLSAgICB2b2lkIHNldE1haW5GcmFtZURv
Y3VtZW50UmVhZHkoYm9vbCkgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRNYWluRnJhbWVEb2N1bWVu
dFJlYWR5KGJvb2wpIGZpbmFsOwogCi0gICAgdm9pZCBzdGFydERvd25sb2FkKGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFN0cmluZyYgc3VnZ2VzdGVkTmFtZSA9IFN0cmlu
ZygpKSBvdmVycmlkZTsKKyAgICB2b2lkIHN0YXJ0RG93bmxvYWQoY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0JiwgY29uc3QgU3RyaW5nJiBzdWdnZXN0ZWROYW1lID0gU3RyaW5nKCkpIGZp
bmFsOwogCi0gICAgdm9pZCB3aWxsQ2hhbmdlVGl0bGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIq
KSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZENoYW5nZVRpdGxlKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKikgb3ZlcnJpZGU7CisgICAgdm9pZCB3aWxsQ2hhbmdlVGl0bGUoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXIqKSBmaW5hbDsKKyAgICB2b2lkIGRpZENoYW5nZVRpdGxlKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyKikgZmluYWw7CiAKLSAgICB2b2lkIHdpbGxSZXBsYWNlTXVsdGlwYXJ0Q29udGVu
dCgpIG92ZXJyaWRlIHsgfQotICAgIHZvaWQgZGlkUmVwbGFjZU11bHRpcGFydENvbnRlbnQoKSBv
dmVycmlkZTsKKyAgICB2b2lkIHdpbGxSZXBsYWNlTXVsdGlwYXJ0Q29udGVudCgpIGZpbmFsIHsg
fQorICAgIHZvaWQgZGlkUmVwbGFjZU11bHRpcGFydENvbnRlbnQoKSBmaW5hbDsKIAotICAgIHZv
aWQgY29tbWl0dGVkTG9hZChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IGNoYXIqLCBp
bnQpIG92ZXJyaWRlOwotICAgIHZvaWQgZmluaXNoZWRMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCB1cGRhdGVHbG9iYWxIaXN0b3J5KCkgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCB1cGRhdGVHbG9iYWxIaXN0b3J5UmVkaXJlY3RMaW5rcygpIG92ZXJyaWRl
OworICAgIHZvaWQgY29tbWl0dGVkTG9hZChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0
IGNoYXIqLCBpbnQpIGZpbmFsOworICAgIHZvaWQgZmluaXNoZWRMb2FkaW5nKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKikgZmluYWw7CisgICAgdm9pZCB1cGRhdGVHbG9iYWxIaXN0b3J5KCkgZmlu
YWw7CisgICAgdm9pZCB1cGRhdGVHbG9iYWxIaXN0b3J5UmVkaXJlY3RMaW5rcygpIGZpbmFsOwog
Ci0gICAgYm9vbCBzaG91bGRHb1RvSGlzdG9yeUl0ZW0oV2ViQ29yZTo6SGlzdG9yeUl0ZW0qKSBj
b25zdCBvdmVycmlkZTsKLSAgICB2b2lkIHVwZGF0ZUdsb2JhbEhpc3RvcnlJdGVtRm9yUGFnZSgp
IG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkR29Ub0hpc3RvcnlJdGVtKFdlYkNvcmU6Okhpc3Rv
cnlJdGVtKikgY29uc3QgZmluYWw7CisgICAgdm9pZCB1cGRhdGVHbG9iYWxIaXN0b3J5SXRlbUZv
clBhZ2UoKSBmaW5hbDsKIAotICAgIHZvaWQgZGlkRGlzcGxheUluc2VjdXJlQ29udGVudCgpIG92
ZXJyaWRlOwotICAgIHZvaWQgZGlkUnVuSW5zZWN1cmVDb250ZW50KFdlYkNvcmU6OlNlY3VyaXR5
T3JpZ2luKiwgY29uc3QgV2ViQ29yZTo6VVJMJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWREZXRl
Y3RYU1MoY29uc3QgV2ViQ29yZTo6VVJMJiwgYm9vbCBkaWRCbG9ja0VudGlyZVBhZ2UpIG92ZXJy
aWRlOworICAgIHZvaWQgZGlkRGlzcGxheUluc2VjdXJlQ29udGVudCgpIGZpbmFsOworICAgIHZv
aWQgZGlkUnVuSW5zZWN1cmVDb250ZW50KFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luKiwgY29uc3Qg
V2ViQ29yZTo6VVJMJikgZmluYWw7CisgICAgdm9pZCBkaWREZXRlY3RYU1MoY29uc3QgV2ViQ29y
ZTo6VVJMJiwgYm9vbCBkaWRCbG9ja0VudGlyZVBhZ2UpIGZpbmFsOwogCi0gICAgV2ViQ29yZTo6
UmVzb3VyY2VFcnJvciBjYW5jZWxsZWRFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QmKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGJsb2NrZWRFcnJvcihj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpS
ZXNvdXJjZUVycm9yIGJsb2NrZWRCeUNvbnRlbnRCbG9ja2VyRXJyb3IoY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBj
YW5ub3RTaG93VVJMRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJp
ZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBpbnRlcnJ1cHRlZEZvclBvbGljeUNoYW5n
ZUVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRlOworICAgIFdl
YkNvcmU6OlJlc291cmNlRXJyb3IgY2FuY2VsbGVkRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0JikgZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkRXJy
b3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CisgICAgV2ViQ29yZTo6
UmVzb3VyY2VFcnJvciBibG9ja2VkQnlDb250ZW50QmxvY2tlckVycm9yKGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgY2Fu
bm90U2hvd1VSTEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOwor
ICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgaW50ZXJydXB0ZWRGb3JQb2xpY3lDaGFuZ2VFcnJv
cihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKICNpZiBFTkFCTEUoQ09O
VEVOVF9GSUxURVJJTkcpCi0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkQnlDb250
ZW50RmlsdGVyRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7
CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkQnlDb250ZW50RmlsdGVyRXJyb3Io
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CiAjZW5kaWYKIAotICAgIFdl
YkNvcmU6OlJlc291cmNlRXJyb3IgY2Fubm90U2hvd01JTUVUeXBlRXJyb3IoY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OlJlc291cmNlRXJy
b3IgZmlsZURvZXNOb3RFeGlzdEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Um
KSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIHBsdWdpbldpbGxIYW5kbGVM
b2FkRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOworICAg
IFdlYkNvcmU6OlJlc291cmNlRXJyb3IgY2Fubm90U2hvd01JTUVUeXBlRXJyb3IoY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOworICAgIFdlYkNvcmU6OlJlc291cmNlRXJy
b3IgZmlsZURvZXNOb3RFeGlzdEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Um
KSBmaW5hbDsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIHBsdWdpbldpbGxIYW5kbGVMb2Fk
RXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOwogCi0gICAgYm9v
bCBzaG91bGRGYWxsQmFjayhjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7
CisgICAgYm9vbCBzaG91bGRGYWxsQmFjayhjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikg
ZmluYWw7CiAKLSAgICBXVEY6OlN0cmluZyB1c2VyQWdlbnQoY29uc3QgV2ViQ29yZTo6VVJMJikg
b3ZlcnJpZGU7CisgICAgV1RGOjpTdHJpbmcgdXNlckFnZW50KGNvbnN0IFdlYkNvcmU6OlVSTCYp
IGZpbmFsOwogICAgIAotICAgIHZvaWQgc2F2ZVBsYXRmb3JtRGF0YVRvQ2FjaGVkRnJhbWUoV2Vi
Q29yZTo6Q2FjaGVkRnJhbWUqKSBvdmVycmlkZTsKLSAgICB2b2lkIHRyYW5zaXRpb25Ub0NvbW1p
dHRlZEZyb21DYWNoZWRGcmFtZShXZWJDb3JlOjpDYWNoZWRGcmFtZSopIG92ZXJyaWRlOworICAg
IHZvaWQgc2F2ZVBsYXRmb3JtRGF0YVRvQ2FjaGVkRnJhbWUoV2ViQ29yZTo6Q2FjaGVkRnJhbWUq
KSBmaW5hbDsKKyAgICB2b2lkIHRyYW5zaXRpb25Ub0NvbW1pdHRlZEZyb21DYWNoZWRGcmFtZShX
ZWJDb3JlOjpDYWNoZWRGcmFtZSopIGZpbmFsOwogI2lmIFBMQVRGT1JNKElPUykKLSAgICB2b2lk
IGRpZFJlc3RvcmVGcmFtZUhpZXJhcmNoeUZvckNhY2hlZEZyYW1lKCkgb3ZlcnJpZGU7CisgICAg
dm9pZCBkaWRSZXN0b3JlRnJhbWVIaWVyYXJjaHlGb3JDYWNoZWRGcmFtZSgpIGZpbmFsOwogI2Vu
ZGlmCi0gICAgdm9pZCB0cmFuc2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdlKCkgb3ZlcnJpZGU7
CisgICAgdm9pZCB0cmFuc2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdlKCkgZmluYWw7CiAKLSAg
ICB2b2lkIGRpZFNhdmVUb1BhZ2VDYWNoZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkUmVzdG9y
ZUZyb21QYWdlQ2FjaGUoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZFNhdmVUb1BhZ2VDYWNoZSgp
IGZpbmFsOworICAgIHZvaWQgZGlkUmVzdG9yZUZyb21QYWdlQ2FjaGUoKSBmaW5hbDsKIAotICAg
IHZvaWQgZGlzcGF0Y2hEaWRCZWNvbWVGcmFtZXNldChib29sKSBvdmVycmlkZTsKKyAgICB2b2lk
IGRpc3BhdGNoRGlkQmVjb21lRnJhbWVzZXQoYm9vbCkgZmluYWw7CiAKLSAgICBib29sIGNhbkhh
bmRsZVJlcXVlc3QoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgY29uc3Qgb3ZlcnJp
ZGU7Ci0gICAgYm9vbCBjYW5TaG93TUlNRVR5cGUoY29uc3QgV1RGOjpTdHJpbmcmIE1JTUVUeXBl
KSBjb25zdCBvdmVycmlkZTsKLSAgICBib29sIGNhblNob3dNSU1FVHlwZUFzSFRNTChjb25zdCBX
VEY6OlN0cmluZyYgTUlNRVR5cGUpIGNvbnN0IG92ZXJyaWRlOwotICAgIGJvb2wgcmVwcmVzZW50
YXRpb25FeGlzdHNGb3JVUkxTY2hlbWUoY29uc3QgV1RGOjpTdHJpbmcmIFVSTFNjaGVtZSkgY29u
c3Qgb3ZlcnJpZGU7Ci0gICAgV1RGOjpTdHJpbmcgZ2VuZXJhdGVkTUlNRVR5cGVGb3JVUkxTY2hl
bWUoY29uc3QgV1RGOjpTdHJpbmcmIFVSTFNjaGVtZSkgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9v
bCBjYW5IYW5kbGVSZXF1ZXN0KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGNvbnN0
IGZpbmFsOworICAgIGJvb2wgY2FuU2hvd01JTUVUeXBlKGNvbnN0IFdURjo6U3RyaW5nJiBNSU1F
VHlwZSkgY29uc3QgZmluYWw7CisgICAgYm9vbCBjYW5TaG93TUlNRVR5cGVBc0hUTUwoY29uc3Qg
V1RGOjpTdHJpbmcmIE1JTUVUeXBlKSBjb25zdCBmaW5hbDsKKyAgICBib29sIHJlcHJlc2VudGF0
aW9uRXhpc3RzRm9yVVJMU2NoZW1lKGNvbnN0IFdURjo6U3RyaW5nJiBVUkxTY2hlbWUpIGNvbnN0
IGZpbmFsOworICAgIFdURjo6U3RyaW5nIGdlbmVyYXRlZE1JTUVUeXBlRm9yVVJMU2NoZW1lKGNv
bnN0IFdURjo6U3RyaW5nJiBVUkxTY2hlbWUpIGNvbnN0IGZpbmFsOwogCi0gICAgdm9pZCBmcmFt
ZUxvYWRDb21wbGV0ZWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIHNhdmVWaWV3U3RhdGVUb0l0ZW0o
V2ViQ29yZTo6SGlzdG9yeUl0ZW0mKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlc3RvcmVWaWV3U3Rh
dGUoKSBvdmVycmlkZTsKLSAgICB2b2lkIHByb3Zpc2lvbmFsTG9hZFN0YXJ0ZWQoKSBvdmVycmlk
ZTsKLSAgICB2b2lkIGRpZEZpbmlzaExvYWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIHByZXBhcmVG
b3JEYXRhU291cmNlUmVwbGFjZW1lbnQoKSBvdmVycmlkZTsKLSAgICBSZWY8V2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXI+IGNyZWF0ZURvY3VtZW50TG9hZGVyKGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlN1YnN0aXR1dGVEYXRhJikgb3ZlcnJpZGU7Ci0gICAg
dm9pZCB1cGRhdGVDYWNoZWREb2N1bWVudExvYWRlcihXZWJDb3JlOjpEb2N1bWVudExvYWRlciYp
IG92ZXJyaWRlIHsgfQorICAgIHZvaWQgZnJhbWVMb2FkQ29tcGxldGVkKCkgZmluYWw7CisgICAg
dm9pZCBzYXZlVmlld1N0YXRlVG9JdGVtKFdlYkNvcmU6Okhpc3RvcnlJdGVtJikgZmluYWw7Cisg
ICAgdm9pZCByZXN0b3JlVmlld1N0YXRlKCkgZmluYWw7CisgICAgdm9pZCBwcm92aXNpb25hbExv
YWRTdGFydGVkKCkgZmluYWw7CisgICAgdm9pZCBkaWRGaW5pc2hMb2FkKCkgZmluYWw7CisgICAg
dm9pZCBwcmVwYXJlRm9yRGF0YVNvdXJjZVJlcGxhY2VtZW50KCkgZmluYWw7CisgICAgUmVmPFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyPiBjcmVhdGVEb2N1bWVudExvYWRlcihjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpTdWJzdGl0dXRlRGF0YSYpIGZpbmFs
OworICAgIHZvaWQgdXBkYXRlQ2FjaGVkRG9jdW1lbnRMb2FkZXIoV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXImKSBmaW5hbCB7IH0KIAotICAgIHZvaWQgc2V0VGl0bGUoY29uc3QgV2ViQ29yZTo6U3Ry
aW5nV2l0aERpcmVjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlVSTCYpIG92ZXJyaWRlOworICAgIHZv
aWQgc2V0VGl0bGUoY29uc3QgV2ViQ29yZTo6U3RyaW5nV2l0aERpcmVjdGlvbiYsIGNvbnN0IFdl
YkNvcmU6OlVSTCYpIGZpbmFsOwogCi0gICAgUmVmUHRyPFdlYkNvcmU6OkZyYW1lPiBjcmVhdGVG
cmFtZShjb25zdCBXZWJDb3JlOjpVUkwmLCBjb25zdCBXVEY6OlN0cmluZyYgbmFtZSwgV2ViQ29y
ZTo6SFRNTEZyYW1lT3duZXJFbGVtZW50KiwKLSAgICAgICAgY29uc3QgV1RGOjpTdHJpbmcmIHJl
ZmVycmVyLCBib29sIGFsbG93c1Njcm9sbGluZywgaW50IG1hcmdpbldpZHRoLCBpbnQgbWFyZ2lu
SGVpZ2h0KSBvdmVycmlkZTsKLSAgICBSZWZQdHI8V2ViQ29yZTo6V2lkZ2V0PiBjcmVhdGVQbHVn
aW4oY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50Kiwg
Y29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgVmVjdG9yPFdURjo6U3RyaW5nPiYsCi0gICAgICAg
IGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mLCBjb25zdCBXVEY6OlN0cmluZyYsIGJvb2wpIG92
ZXJyaWRlOwotICAgIHZvaWQgcmVjcmVhdGVQbHVnaW4oV2ViQ29yZTo6V2lkZ2V0Kikgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCByZWRpcmVjdERhdGFUb1BsdWdpbihXZWJDb3JlOjpXaWRnZXQqIHBsdWdp
bldpZGdldCkgb3ZlcnJpZGU7CisgICAgUmVmUHRyPFdlYkNvcmU6OkZyYW1lPiBjcmVhdGVGcmFt
ZShjb25zdCBXZWJDb3JlOjpVUkwmLCBjb25zdCBXVEY6OlN0cmluZyYgbmFtZSwgV2ViQ29yZTo6
SFRNTEZyYW1lT3duZXJFbGVtZW50JiwKKyAgICAgICAgY29uc3QgV1RGOjpTdHJpbmcmIHJlZmVy
cmVyLCBib29sIGFsbG93c1Njcm9sbGluZywgaW50IG1hcmdpbldpZHRoLCBpbnQgbWFyZ2luSGVp
Z2h0KSBmaW5hbDsKKyAgICBSZWZQdHI8V2ViQ29yZTo6V2lkZ2V0PiBjcmVhdGVQbHVnaW4oY29u
c3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50JiwgY29uc3Qg
V2ViQ29yZTo6VVJMJiwKKyAgICAgICAgY29uc3QgVmVjdG9yPFdURjo6U3RyaW5nPiYsIGNvbnN0
IFZlY3RvcjxXVEY6OlN0cmluZz4mLCBjb25zdCBXVEY6OlN0cmluZyYsIGJvb2wpIGZpbmFsOwor
ICAgIHZvaWQgcmVjcmVhdGVQbHVnaW4oV2ViQ29yZTo6V2lkZ2V0KikgZmluYWw7CisgICAgdm9p
ZCByZWRpcmVjdERhdGFUb1BsdWdpbihXZWJDb3JlOjpXaWRnZXQqIHBsdWdpbldpZGdldCkgZmlu
YWw7CiAKICNpZiBFTkFCTEUoV0VCR0wpCi0gICAgV2ViQ29yZTo6V2ViR0xMb2FkUG9saWN5IHdl
YkdMUG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYpIGNvbnN0IG92ZXJyaWRlOwotICAgIFdlYkNv
cmU6OldlYkdMTG9hZFBvbGljeSByZXNvbHZlV2ViR0xQb2xpY3lGb3JVUkwoY29uc3QgU3RyaW5n
JikgY29uc3Qgb3ZlcnJpZGU7Ci0jZW5kaWYgLy8gRU5BQkxFKFdFQkdMKQorICAgIFdlYkNvcmU6
OldlYkdMTG9hZFBvbGljeSB3ZWJHTFBvbGljeUZvclVSTChjb25zdCBTdHJpbmcmKSBjb25zdCBm
aW5hbDsKKyAgICBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgcmVzb2x2ZVdlYkdMUG9saWN5Rm9y
VVJMKGNvbnN0IFN0cmluZyYpIGNvbnN0IGZpbmFsOworI2VuZGlmCiAKLSAgICBQYXNzUmVmUHRy
PFdlYkNvcmU6OldpZGdldD4gY3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBXZWJDb3JlOjpJ
bnRTaXplJiwgV2ViQ29yZTo6SFRNTEFwcGxldEVsZW1lbnQqLCBjb25zdCBXZWJDb3JlOjpVUkwm
IGJhc2VVUkwsCi0gICAgICAgIGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mIHBhcmFtTmFtZXMs
IGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mIHBhcmFtVmFsdWVzKSBvdmVycmlkZTsKKyAgICBS
ZWZQdHI8V2ViQ29yZTo6V2lkZ2V0PiBjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IFdlYkNv
cmU6OkludFNpemUmLCBXZWJDb3JlOjpIVE1MQXBwbGV0RWxlbWVudCYsIGNvbnN0IFdlYkNvcmU6
OlVSTCYgYmFzZVVSTCwKKyAgICAgICAgY29uc3QgVmVjdG9yPFdURjo6U3RyaW5nPiYgcGFyYW1O
YW1lcywgY29uc3QgVmVjdG9yPFdURjo6U3RyaW5nPiYgcGFyYW1WYWx1ZXMpIGZpbmFsOwogICAg
IAotICAgIFdlYkNvcmU6Ok9iamVjdENvbnRlbnRUeXBlIG9iamVjdENvbnRlbnRUeXBlKGNvbnN0
IFdlYkNvcmU6OlVSTCYsIGNvbnN0IFdURjo6U3RyaW5nJiBtaW1lVHlwZSkgb3ZlcnJpZGU7Ci0g
ICAgV1RGOjpTdHJpbmcgb3ZlcnJpZGVNZWRpYVR5cGUoKSBjb25zdCBvdmVycmlkZTsKKyAgICBX
ZWJDb3JlOjpPYmplY3RDb250ZW50VHlwZSBvYmplY3RDb250ZW50VHlwZShjb25zdCBXZWJDb3Jl
OjpVUkwmLCBjb25zdCBXVEY6OlN0cmluZyYgbWltZVR5cGUpIGZpbmFsOworICAgIFdURjo6U3Ry
aW5nIG92ZXJyaWRlTWVkaWFUeXBlKCkgY29uc3QgZmluYWw7CiAgICAgCi0gICAgdm9pZCBkaXNw
YXRjaERpZENsZWFyV2luZG93T2JqZWN0SW5Xb3JsZChXZWJDb3JlOjpET01XcmFwcGVyV29ybGQm
KSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGlkQ2xlYXJXaW5kb3dPYmplY3RJbldvcmxk
KFdlYkNvcmU6OkRPTVdyYXBwZXJXb3JsZCYpIGZpbmFsOwogCi0gICAgdm9pZCByZWdpc3RlckZv
ckljb25Ob3RpZmljYXRpb24oYm9vbCBsaXN0ZW4pIG92ZXJyaWRlOworICAgIHZvaWQgcmVnaXN0
ZXJGb3JJY29uTm90aWZpY2F0aW9uKGJvb2wgbGlzdGVuKSBmaW5hbDsKIAogI2lmIFBMQVRGT1JN
KElPUykKLSAgICBib29sIHNob3VsZExvYWRNZWRpYUVsZW1lbnRVUkwoY29uc3QgV2ViQ29yZTo6
VVJMJikgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRMb2FkTWVkaWFFbGVtZW50VVJM
KGNvbnN0IFdlYkNvcmU6OlVSTCYpIGNvbnN0IGZpbmFsOwogI2VuZGlmCiAKLSAgICBSZW1vdGVB
WE9iamVjdFJlZiBhY2Nlc3NpYmlsaXR5UmVtb3RlT2JqZWN0KCkgb3ZlcnJpZGUgeyByZXR1cm4g
MDsgfQorICAgIFJlbW90ZUFYT2JqZWN0UmVmIGFjY2Vzc2liaWxpdHlSZW1vdGVPYmplY3QoKSBm
aW5hbCB7IHJldHVybiAwOyB9CiAgICAgCiAgICAgUmV0YWluUHRyPFdlYkZyYW1lUG9saWN5TGlz
dGVuZXI+IHNldFVwUG9saWN5TGlzdGVuZXIoV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbiwg
TlNVUkwgKmFwcExpbmtVUkwgPSBuaWwpOwogCi0gICAgTlNEaWN0aW9uYXJ5ICphY3Rpb25EaWN0
aW9uYXJ5KGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mLCBQYXNzUmVmUHRyPFdlYkNv
cmU6OkZvcm1TdGF0ZT4pIGNvbnN0OworICAgIE5TRGljdGlvbmFyeSAqYWN0aW9uRGljdGlvbmFy
eShjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJiwgV2ViQ29yZTo6Rm9ybVN0YXRlKikg
Y29uc3Q7CiAgICAgCi0gICAgYm9vbCBjYW5DYWNoZVBhZ2UoKSBjb25zdCBvdmVycmlkZTsKKyAg
ICBib29sIGNhbkNhY2hlUGFnZSgpIGNvbnN0IGZpbmFsOwogCi0gICAgUGFzc1JlZlB0cjxXZWJD
b3JlOjpGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBjcmVhdGVOZXR3b3JraW5nQ29udGV4dCgpIG92
ZXJyaWRlOworICAgIFJlZjxXZWJDb3JlOjpGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBjcmVhdGVO
ZXR3b3JraW5nQ29udGV4dCgpIGZpbmFsOwogCiAjaWYgRU5BQkxFKFJFUVVFU1RfQVVUT0NPTVBM
RVRFKQotICAgIHZvaWQgZGlkUmVxdWVzdEF1dG9jb21wbGV0ZShQYXNzUmVmUHRyPFdlYkNvcmU6
OkZvcm1TdGF0ZT4pIG92ZXJyaWRlIHsgfQorICAgIHZvaWQgZGlkUmVxdWVzdEF1dG9jb21wbGV0
ZShSZWY8V2ViQ29yZTo6Rm9ybVN0YXRlPiYmKSBmaW5hbCB7IH0KICNlbmRpZgogCi0gICAgYm9v
bCBzaG91bGRQYWludEJyb2tlbkltYWdlKGNvbnN0IFdlYkNvcmU6OlVSTCYpIGNvbnN0IG92ZXJy
aWRlOworICAgIGJvb2wgc2hvdWxkUGFpbnRCcm9rZW5JbWFnZShjb25zdCBXZWJDb3JlOjpVUkwm
KSBjb25zdCBmaW5hbDsKIAogI2lmIFVTRShRVUlDS19MT09LKQotICAgIHZvaWQgZGlkQ3JlYXRl
UXVpY2tMb29rSGFuZGxlKFdlYkNvcmU6OlF1aWNrTG9va0hhbmRsZSYpIG92ZXJyaWRlOworICAg
IHZvaWQgZGlkQ3JlYXRlUXVpY2tMb29rSGFuZGxlKFdlYkNvcmU6OlF1aWNrTG9va0hhbmRsZSYp
IGZpbmFsOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCi0gICAgdm9p
ZCBjb250ZW50RmlsdGVyRGlkQmxvY2tMb2FkKFdlYkNvcmU6OkNvbnRlbnRGaWx0ZXJVbmJsb2Nr
SGFuZGxlcikgb3ZlcnJpZGU7CisgICAgdm9pZCBjb250ZW50RmlsdGVyRGlkQmxvY2tMb2FkKFdl
YkNvcmU6OkNvbnRlbnRGaWx0ZXJVbmJsb2NrSGFuZGxlcikgZmluYWw7CiAjZW5kaWYKIAotICAg
IHZvaWQgcHJlZmV0Y2hETlMoY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7CisgICAgdm9pZCBwcmVm
ZXRjaEROUyhjb25zdCBTdHJpbmcmKSBmaW5hbDsKIAogICAgIFJldGFpblB0cjxXZWJGcmFtZT4g
bV93ZWJGcmFtZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBv
cnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3Vw
cG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5tbQppbmRleCA0ZTliMmUyNzJkMmQzOWRhYTgwZGEw
Y2NhNDNkZDJmYTA5ODljMTA1Li5hNTQ3M2UzYjhlZTk0YjRjMTk4YmVkYTQzNGE5YzM2MTI1NDQx
MjAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFt
ZUxvYWRlckNsaWVudC5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9X
ZWJGcmFtZUxvYWRlckNsaWVudC5tbQpAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQg
KEMpIDIwMDYtMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmln
aHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTEyOCw3ICsxMjgsNyBAQAogI2ltcG9ydCA8cnVu
dGltZS9Jbml0aWFsaXplVGhyZWFkaW5nLmg+CiAjaW1wb3J0IDx3dGYvQmxvY2tPYmpDRXhjZXB0
aW9ucy5oPgogI2ltcG9ydCA8d3RmL01haW5UaHJlYWQuaD4KLSNpbXBvcnQgPHd0Zi9QYXNzUmVm
UHRyLmg+CisjaW1wb3J0IDx3dGYvUmVmLmg+CiAjaW1wb3J0IDx3dGYvUnVuTG9vcC5oPgogI2lt
cG9ydCA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKQEAgLTg4NCw3ICs4ODQsNyBAQCBzdGF0aWMg
Qk9PTCBzaG91bGRUcnlBcHBMaW5rKFdlYlZpZXcgKndlYlZpZXcsIGNvbnN0IE5hdmlnYXRpb25B
Y3Rpb24mIGFjdGlvbiwgRgogI2VuZGlmCiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IE5hdmlnYXRpb25B
Y3Rpb24mIGFjdGlvbiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBQYXNzUmVmUHRy
PEZvcm1TdGF0ZT4gZm9ybVN0YXRlLCBjb25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgRnJhbWVQb2xp
Y3lGdW5jdGlvbiBmdW5jdGlvbikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNo
RGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIGFj
dGlvbiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBGb3JtU3RhdGUqIGZvcm1TdGF0
ZSwgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24p
CiB7CiAgICAgV2ViVmlldyAqd2ViVmlldyA9IGdldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSk7
CiAgICAgQk9PTCB0cnlBcHBMaW5rID0gc2hvdWxkVHJ5QXBwTGluayh3ZWJWaWV3LCBhY3Rpb24s
IG51bGxwdHIpOwpAQCAtODk2LDcgKzg5Niw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IE5hdmlnYXRpCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGRlY2lzaW9uTGlzdGVuZXI6c2V0VXBQb2xpY3lMaXN0
ZW5lcihXVEZNb3ZlKGZ1bmN0aW9uKSwgdHJ5QXBwTGluayA/IChOU1VSTCAqKXJlcXVlc3QudXJs
KCkgOiBuaWwpLmdldCgpXTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0
Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24m
IGFjdGlvbiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBQYXNzUmVmUHRyPEZvcm1T
dGF0ZT4gZm9ybVN0YXRlLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQordm9pZCBXZWJG
cmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9u
KGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIGFjdGlvbiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiBy
ZXF1ZXN0LCBGb3JtU3RhdGUqIGZvcm1TdGF0ZSwgRnJhbWVQb2xpY3lGdW5jdGlvbiBmdW5jdGlv
bikKIHsKICAgICBXZWJWaWV3ICp3ZWJWaWV3ID0gZ2V0V2ViVmlldyhtX3dlYkZyYW1lLmdldCgp
KTsKICAgICBCT09MIHRyeUFwcExpbmsgPSBzaG91bGRUcnlBcHBMaW5rKHdlYlZpZXcsIGFjdGlv
biwgY29yZShtX3dlYkZyYW1lLmdldCgpKSk7CkBAIC05MjAsMjkgKzkyMCwyOCBAQCB2b2lkIFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFVuYWJsZVRvSW1wbGVtZW50UG9saWN5KGNvbnN0
IFJlc291cmNlRXJyb3ImCiAgICAgW1t3ZWJWaWV3IF9wb2xpY3lEZWxlZ2F0ZUZvcndhcmRlcl0g
d2ViVmlldzp3ZWJWaWV3IHVuYWJsZVRvSW1wbGVtZW50UG9saWN5V2l0aEVycm9yOmVycm9yIGZy
YW1lOm1fd2ViRnJhbWUuZ2V0KCldOyAgICAKIH0KIAotc3RhdGljIE5TRGljdGlvbmFyeSAqbWFr
ZUZvcm1GaWVsZFZhbHVlc0RpY3Rpb25hcnkoRm9ybVN0YXRlKiBmb3JtU3RhdGUpCitzdGF0aWMg
TlNEaWN0aW9uYXJ5ICptYWtlRm9ybUZpZWxkVmFsdWVzRGljdGlvbmFyeShGb3JtU3RhdGUmIGZv
cm1TdGF0ZSkKIHsKLSAgICBjb25zdCBTdHJpbmdQYWlyVmVjdG9yJiB0ZXh0RmllbGRWYWx1ZXMg
PSBmb3JtU3RhdGUtPnRleHRGaWVsZFZhbHVlcygpOworICAgIGF1dG8mIHRleHRGaWVsZFZhbHVl
cyA9IGZvcm1TdGF0ZS50ZXh0RmllbGRWYWx1ZXMoKTsKICAgICBzaXplX3Qgc2l6ZSA9IHRleHRG
aWVsZFZhbHVlcy5zaXplKCk7CiAgICAgTlNNdXRhYmxlRGljdGlvbmFyeSAqZGljdGlvbmFyeSA9
IFtbTlNNdXRhYmxlRGljdGlvbmFyeSBhbGxvY10gaW5pdFdpdGhDYXBhY2l0eTpzaXplXTsKLSAg
ICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHNpemU7ICsraSkKLSAgICAgICAgW2RpY3Rpb25hcnkg
c2V0T2JqZWN0OnRleHRGaWVsZFZhbHVlc1tpXS5zZWNvbmQgZm9yS2V5OnRleHRGaWVsZFZhbHVl
c1tpXS5maXJzdF07Ci0KKyAgICBmb3IgKGF1dG8mIHZhbHVlIDogdGV4dEZpZWxkVmFsdWVzKQor
ICAgICAgICBbZGljdGlvbmFyeSBzZXRPYmplY3Q6dmFsdWUuc2Vjb25kIGZvcktleTp2YWx1ZS5m
aXJzdF07CiAgICAgcmV0dXJuIFtkaWN0aW9uYXJ5IGF1dG9yZWxlYXNlXTsKIH0KIAotdm9pZCBX
ZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFBhc3NSZWZQ
dHI8V2ViQ29yZTo6Rm9ybVN0YXRlPiBmb3JtU3RhdGUpCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xp
ZW50OjpkaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoUmVmPFdlYkNvcmU6OkZvcm1TdGF0ZT4m
JiBmb3JtU3RhdGUpCiB7CiAgICAgaWQgPFdlYkZvcm1EZWxlZ2F0ZT4gZm9ybURlbGVnYXRlID0g
W2dldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSkgX2Zvcm1EZWxlZ2F0ZV07CiAgICAgaWYgKCFm
b3JtRGVsZWdhdGUpCiAgICAgICAgIHJldHVybjsKIAotICAgIERPTUhUTUxGb3JtRWxlbWVudCAq
Zm9ybUVsZW1lbnQgPSBraXQoZm9ybVN0YXRlLT5mb3JtKCkpOworICAgIERPTUhUTUxGb3JtRWxl
bWVudCAqZm9ybUVsZW1lbnQgPSBraXQoJmZvcm1TdGF0ZS0+Zm9ybSgpKTsKICAgICBOU0RpY3Rp
b25hcnkgKnZhbHVlcyA9IG1ha2VGb3JtRmllbGRWYWx1ZXNEaWN0aW9uYXJ5KGZvcm1TdGF0ZS5n
ZXQoKSk7CiAgICAgQ2FsbEZvcm1EZWxlZ2F0ZShnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkp
LCBAc2VsZWN0b3Iod2lsbFNlbmRTdWJtaXRFdmVudFRvRm9ybTppbkZyYW1lOndpdGhWYWx1ZXM6
KSwgZm9ybUVsZW1lbnQsIG1fd2ViRnJhbWUuZ2V0KCksIHZhbHVlcyk7CiB9CiAKLXZvaWQgV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0oUGFzc1JlZlB0cjxGb3Jt
U3RhdGU+IGZvcm1TdGF0ZSwgRnJhbWVQb2xpY3lGdW5jdGlvbiBmdW5jdGlvbikKK3ZvaWQgV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0oRm9ybVN0YXRlJiBmb3Jt
U3RhdGUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24pCiB7CiAgICAgaWQgPFdlYkZvcm1E
ZWxlZ2F0ZT4gZm9ybURlbGVnYXRlID0gW2dldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSkgX2Zv
cm1EZWxlZ2F0ZV07CiAgICAgaWYgKCFmb3JtRGVsZWdhdGUpIHsKQEAgLTk1MCw4ICs5NDksOCBA
QCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKFBhc3NS
ZWZQdHI8Rm9ybVN0YXRlPiBmb3JtU3RhdAogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAg
TlNEaWN0aW9uYXJ5ICp2YWx1ZXMgPSBtYWtlRm9ybUZpZWxkVmFsdWVzRGljdGlvbmFyeShmb3Jt
U3RhdGUuZ2V0KCkpOwotICAgIENhbGxGb3JtRGVsZWdhdGUoZ2V0V2ViVmlldyhtX3dlYkZyYW1l
LmdldCgpKSwgQHNlbGVjdG9yKGZyYW1lOnNvdXJjZUZyYW1lOndpbGxTdWJtaXRGb3JtOndpdGhW
YWx1ZXM6c3VibWlzc2lvbkxpc3RlbmVyOiksIG1fd2ViRnJhbWUuZ2V0KCksIGtpdChmb3JtU3Rh
dGUtPnNvdXJjZURvY3VtZW50KCktPmZyYW1lKCkpLCBraXQoZm9ybVN0YXRlLT5mb3JtKCkpLCB2
YWx1ZXMsIHNldFVwUG9saWN5TGlzdGVuZXIoV1RGTW92ZShmdW5jdGlvbikpLmdldCgpKTsKKyAg
ICBOU0RpY3Rpb25hcnkgKnZhbHVlcyA9IG1ha2VGb3JtRmllbGRWYWx1ZXNEaWN0aW9uYXJ5KGZv
cm1TdGF0ZSk7CisgICAgQ2FsbEZvcm1EZWxlZ2F0ZShnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0
KCkpLCBAc2VsZWN0b3IoZnJhbWU6c291cmNlRnJhbWU6d2lsbFN1Ym1pdEZvcm06d2l0aFZhbHVl
czpzdWJtaXNzaW9uTGlzdGVuZXI6KSwgbV93ZWJGcmFtZS5nZXQoKSwga2l0KGZvcm1TdGF0ZS5z
b3VyY2VEb2N1bWVudCgpLmZyYW1lKCkpLCBraXQoJmZvcm1TdGF0ZS5mb3JtKCkpLCB2YWx1ZXMs
IHNldFVwUG9saWN5TGlzdGVuZXIoV1RGTW92ZShmdW5jdGlvbikpLmdldCgpKTsKIH0KIAogdm9p
ZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6cmV2ZXJ0VG9Qcm92aXNpb25hbFN0YXRlKERvY3VtZW50
TG9hZGVyKiBsb2FkZXIpCkBAIC0xNTUyLDcgKzE1NTEsNyBAQCBzdGF0aWMgY29uc3QgTW91c2VF
dmVudCogZmluZE1vdXNlRXZlbnQoY29uc3QgRXZlbnQqIGV2ZW50KQogICAgIHJldHVybiAwOwog
fQogCi1OU0RpY3Rpb25hcnkgKldlYkZyYW1lTG9hZGVyQ2xpZW50OjphY3Rpb25EaWN0aW9uYXJ5
KGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIGFjdGlvbiwgUGFzc1JlZlB0cjxGb3JtU3RhdGU+IGZv
cm1TdGF0ZSkgY29uc3QKK05TRGljdGlvbmFyeSAqV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmFjdGlv
bkRpY3Rpb25hcnkoY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgYWN0aW9uLCBGb3JtU3RhdGUqIGZv
cm1TdGF0ZSkgY29uc3QKIHsKICAgICB1bnNpZ25lZCBtb2RpZmllckZsYWdzID0gMDsKICAgICBj
b25zdCBFdmVudCogZXZlbnQgPSBhY3Rpb24uZXZlbnQoKTsKQEAgLTE1OTMsMTAgKzE1OTIsOCBA
QCBOU0RpY3Rpb25hcnkgKldlYkZyYW1lTG9hZGVyQ2xpZW50OjphY3Rpb25EaWN0aW9uYXJ5KGNv
bnN0IE5hdmlnYXRpb25BY3Rpb24mIGFjdAogICAgICAgICAgICAgW3Jlc3VsdCBzZXRPYmplY3Q6
W05TTnVtYmVyIG51bWJlcldpdGhJbnQ6V2ViQ29yZTo6Tm9CdXR0b25dIGZvcktleTpXZWJBY3Rp
b25CdXR0b25LZXldOwogICAgIH0KIAotICAgIGlmIChmb3JtU3RhdGUpIHsKLSAgICAgICAgQVNT
RVJUKGZvcm1TdGF0ZS0+Zm9ybSgpKTsKLSAgICAgICAgW3Jlc3VsdCBzZXRPYmplY3Q6a2l0KGZv
cm1TdGF0ZS0+Zm9ybSgpKSBmb3JLZXk6V2ViQWN0aW9uRm9ybUtleV07Ci0gICAgfQorICAgIGlm
IChmb3JtU3RhdGUpCisgICAgICAgIFtyZXN1bHQgc2V0T2JqZWN0OmtpdCgmZm9ybVN0YXRlLT5m
b3JtKCkpIGZvcktleTpXZWJBY3Rpb25Gb3JtS2V5XTsKIAogICAgIHJldHVybiByZXN1bHQ7CiB9
CkBAIC0xNjIyLDcgKzE2MTksNyBAQCBib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjYW5DYWNo
ZVBhZ2UoKSBjb25zdAogICAgIHJldHVybiB0cnVlOwogfQogCi1SZWZQdHI8RnJhbWU+IFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVGcmFtZShjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5n
JiBuYW1lLCBIVE1MRnJhbWVPd25lckVsZW1lbnQqIG93bmVyRWxlbWVudCwKK1JlZlB0cjxGcmFt
ZT4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYgdXJsLCBjb25z
dCBTdHJpbmcmIG5hbWUsIEhUTUxGcmFtZU93bmVyRWxlbWVudCYgb3duZXJFbGVtZW50LAogICAg
IGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIGJvb2wgYWxsb3dzU2Nyb2xsaW5nLCBpbnQgbWFyZ2lu
V2lkdGgsIGludCBtYXJnaW5IZWlnaHQpCiB7CiAgICAgQkVHSU5fQkxPQ0tfT0JKQ19FWENFUFRJ
T05TOwpAQCAtMTYzMSw3ICsxNjI4LDcgQEAgUmVmUHRyPEZyYW1lPiBXZWJGcmFtZUxvYWRlckNs
aWVudDo6Y3JlYXRlRnJhbWUoY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgbmEKICAgICAK
ICAgICBXZWJGcmFtZVZpZXcgKmNoaWxkVmlldyA9IFtbV2ViRnJhbWVWaWV3IGFsbG9jXSBpbml0
XTsKICAgICAKLSAgICBSZWZQdHI8RnJhbWU+IHJlc3VsdCA9IFtXZWJGcmFtZSBfY3JlYXRlU3Vi
ZnJhbWVXaXRoT3duZXJFbGVtZW50Om93bmVyRWxlbWVudCBmcmFtZU5hbWU6bmFtZSBmcmFtZVZp
ZXc6Y2hpbGRWaWV3XTsKKyAgICBSZWZQdHI8RnJhbWU+IHJlc3VsdCA9IFtXZWJGcmFtZSBfY3Jl
YXRlU3ViZnJhbWVXaXRoT3duZXJFbGVtZW50OiZvd25lckVsZW1lbnQgZnJhbWVOYW1lOm5hbWUg
ZnJhbWVWaWV3OmNoaWxkVmlld107CiAgICAgW2NoaWxkVmlldyByZWxlYXNlXTsKIAogICAgIFdl
YkZyYW1lICpuZXdGcmFtZSA9IGtpdChyZXN1bHQuZ2V0KCkpOwpAQCAtMTkwOSw3ICsxOTA2LDcg
QEAgc3RhdGljIGJvb2wgc2hvdWxkQmxvY2tQbHVnaW4oV2ViQmFzZVBsdWdpblBhY2thZ2UgKnBs
dWdpblBhY2thZ2UpCiAjZW5kaWYKIH0KIAotUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiBzaXplLCBIVE1MUGx1Z0luRWxlbWVu
dCogZWxlbWVudCwgY29uc3QgVVJMJiB1cmwsCitSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRl
ckNsaWVudDo6Y3JlYXRlUGx1Z2luKGNvbnN0IEludFNpemUmIHNpemUsIEhUTUxQbHVnSW5FbGVt
ZW50JiBlbGVtZW50LCBjb25zdCBVUkwmIHVybCwKICAgICBjb25zdCBWZWN0b3I8U3RyaW5nPiYg
cGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzLCBjb25zdCBTdHJp
bmcmIG1pbWVUeXBlLCBib29sIGxvYWRNYW51YWxseSkKIHsKICAgICBCRUdJTl9CTE9DS19PQkpD
X0VYQ0VQVElPTlM7CkBAIC0xOTQ4LDcgKzE5NDUsNyBAQCBSZWZQdHI8V2lkZ2V0PiBXZWJGcmFt
ZUxvYWRlckNsaWVudDo6Y3JlYXRlUGx1Z2luKGNvbnN0IEludFNpemUmIHNpemUsIEhUTUxQbHVn
SQogICAgICAgICAgICAgYXR0cmlidXRlcywgV2ViUGx1Z0luQXR0cmlidXRlc0tleSwKICAgICAg
ICAgICAgIFtOU051bWJlciBudW1iZXJXaXRoSW50OmxvYWRNYW51YWxseSA/IFdlYlBsdWdJbk1v
ZGVGdWxsIDogV2ViUGx1Z0luTW9kZUVtYmVkXSwgV2ViUGx1Z0luTW9kZUtleSwKICAgICAgICAg
ICAgIFtOU051bWJlciBudW1iZXJXaXRoQm9vbDohbG9hZE1hbnVhbGx5XSwgV2ViUGx1Z0luU2hv
dWxkTG9hZE1haW5SZXNvdXJjZUtleSwKLSAgICAgICAgICAgIGtpdChlbGVtZW50KSwgV2ViUGx1
Z0luQ29udGFpbmluZ0VsZW1lbnRLZXksCisgICAgICAgICAgICBraXQoJmVsZW1lbnQpLCBXZWJQ
bHVnSW5Db250YWluaW5nRWxlbWVudEtleSwKICAgICAgICAgICAgIC8vIEZJWE1FOiBXZSBzaG91
bGQgYmUgcGFzc2luZyBiYXNlIFVSTCwgc2VlIDxodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MzUyMTU+LgogICAgICAgICAgICAgcGx1Z2luVVJMLCBXZWJQbHVnSW5CYXNl
VVJMS2V5LCAvLyBwbHVnaW5VUkwgbWlnaHQgYmUgbmlsLCBzbyBhZGQgaXQgbGFzdAogICAgICAg
ICAgICAgbmlsXTsKQEAgLTE5OTQsMTEgKzE5OTEsMTEgQEAgUmVmUHRyPFdpZGdldD4gV2ViRnJh
bWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiBzaXplLCBIVE1MUGx1
Z0kKICAgICBpZiAocGx1Z2luUGFja2FnZSkgewogICAgICAgICBpZiAoc2hvdWxkQmxvY2tQbHVn
aW4ocGx1Z2luUGFja2FnZSkpIHsKICAgICAgICAgICAgIGVycm9yQ29kZSA9IFdlYktpdEVycm9y
QmxvY2tlZFBsdWdJblZlcnNpb247Ci0gICAgICAgICAgICBpZiAoaXM8UmVuZGVyRW1iZWRkZWRP
YmplY3Q+KGVsZW1lbnQtPnJlbmRlcmVyKCkpKQotICAgICAgICAgICAgICAgIGRvd25jYXN0PFJl
bmRlckVtYmVkZGVkT2JqZWN0PigqZWxlbWVudC0+cmVuZGVyZXIoKSkuc2V0UGx1Z2luVW5hdmFp
bGFiaWxpdHlSZWFzb24oUmVuZGVyRW1iZWRkZWRPYmplY3Q6Okluc2VjdXJlUGx1Z2luVmVyc2lv
bik7CisgICAgICAgICAgICBpZiAoaXM8UmVuZGVyRW1iZWRkZWRPYmplY3Q+KGVsZW1lbnQucmVu
ZGVyZXIoKSkpCisgICAgICAgICAgICAgICAgZG93bmNhc3Q8UmVuZGVyRW1iZWRkZWRPYmplY3Q+
KCplbGVtZW50LnJlbmRlcmVyKCkpLnNldFBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKFJlbmRl
ckVtYmVkZGVkT2JqZWN0OjpJbnNlY3VyZVBsdWdpblZlcnNpb24pOwogICAgICAgICB9IGVsc2Ug
ewogICAgICAgICAgICAgaWYgKFtwbHVnaW5QYWNrYWdlIGlzS2luZE9mQ2xhc3M6W1dlYlBsdWdp
blBhY2thZ2UgY2xhc3NdXSkKLSAgICAgICAgICAgICAgICB2aWV3ID0gcGx1Z2luVmlldyhtX3dl
YkZyYW1lLmdldCgpLCAoV2ViUGx1Z2luUGFja2FnZSAqKXBsdWdpblBhY2thZ2UsIGF0dHJpYnV0
ZUtleXMsIGtpdChwYXJhbVZhbHVlcyksIGJhc2VVUkwsIGtpdChlbGVtZW50KSwgbG9hZE1hbnVh
bGx5KTsKKyAgICAgICAgICAgICAgICB2aWV3ID0gcGx1Z2luVmlldyhtX3dlYkZyYW1lLmdldCgp
LCAoV2ViUGx1Z2luUGFja2FnZSAqKXBsdWdpblBhY2thZ2UsIGF0dHJpYnV0ZUtleXMsIGtpdChw
YXJhbVZhbHVlcyksIGJhc2VVUkwsIGtpdCgmZWxlbWVudCksIGxvYWRNYW51YWxseSk7CiAjaWYg
RU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCiAgICAgICAgICAgICBlbHNlIGlmIChbcGx1Z2lu
UGFja2FnZSBpc0tpbmRPZkNsYXNzOltXZWJOZXRzY2FwZVBsdWdpblBhY2thZ2UgY2xhc3NdXSkg
ewogICAgICAgICAgICAgICAgIFdlYkJhc2VOZXRzY2FwZVBsdWdpblZpZXcgKnBsdWdpblZpZXcg
PSBbW1tORVRTQ0FQRV9QTFVHSU5fVklFVyBhbGxvY10KQEAgLTIwMTAsNyArMjAwNyw3IEBAIFJl
ZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50
U2l6ZSYgc2l6ZSwgSFRNTFBsdWdJCiAgICAgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZUtleXM6
YXR0cmlidXRlS2V5cwogICAgICAgICAgICAgICAgICAgICBhdHRyaWJ1dGVWYWx1ZXM6a2l0KHBh
cmFtVmFsdWVzKQogICAgICAgICAgICAgICAgICAgICBsb2FkTWFudWFsbHk6bG9hZE1hbnVhbGx5
Ci0gICAgICAgICAgICAgICAgICAgIGVsZW1lbnQ6ZWxlbWVudF0gYXV0b3JlbGVhc2VdOworICAg
ICAgICAgICAgICAgICAgICBlbGVtZW50OiZlbGVtZW50XSBhdXRvcmVsZWFzZV07CiAKICAgICAg
ICAgICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IE5ldHNjYXBlUGx1Z2luV2lkZ2V0KHBsdWdp
blZpZXcpKTsKICAgICAgICAgICAgIH0KQEAgLTIwODEsNyArMjA3OCw3IEBAIHZvaWQgV2ViRnJh
bWVMb2FkZXJDbGllbnQ6OnJlZGlyZWN0RGF0YVRvUGx1Z2luKFdpZGdldCogcGx1Z2luV2lkZ2V0
KQogICAgIEVORF9CTE9DS19PQkpDX0VYQ0VQVElPTlM7CiB9CiAgICAgCi1QYXNzUmVmUHRyPFdp
ZGdldD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3Qg
SW50U2l6ZSYgc2l6ZSwgSFRNTEFwcGxldEVsZW1lbnQqIGVsZW1lbnQsIGNvbnN0IFVSTCYgYmFz
ZVVSTCwgCitSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlSmF2YUFw
cGxldFdpZGdldChjb25zdCBJbnRTaXplJiBzaXplLCBIVE1MQXBwbGV0RWxlbWVudCYgZWxlbWVu
dCwgY29uc3QgVVJMJiBiYXNlVVJMLAogICAgIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5h
bWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpCiB7CiAgICAgQkVHSU5fQkxP
Q0tfT0JKQ19FWENFUFRJT05TOwpAQCAtMjA5OSw4ICsyMDk2LDggQEAgUGFzc1JlZlB0cjxXaWRn
ZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IElu
dFNpemUmIHMKICAgICBpZiAocGx1Z2luUGFja2FnZSkgewogICAgICAgICBpZiAoc2hvdWxkQmxv
Y2tQbHVnaW4ocGx1Z2luUGFja2FnZSkpIHsKICAgICAgICAgICAgIGVycm9yQ29kZSA9IFdlYktp
dEVycm9yQmxvY2tlZFBsdWdJblZlcnNpb247Ci0gICAgICAgICAgICBpZiAoaXM8UmVuZGVyRW1i
ZWRkZWRPYmplY3Q+KGVsZW1lbnQtPnJlbmRlcmVyKCkpKQotICAgICAgICAgICAgICAgIGRvd25j
YXN0PFJlbmRlckVtYmVkZGVkT2JqZWN0PigqZWxlbWVudC0+cmVuZGVyZXIoKSkuc2V0UGx1Z2lu
VW5hdmFpbGFiaWxpdHlSZWFzb24oUmVuZGVyRW1iZWRkZWRPYmplY3Q6Okluc2VjdXJlUGx1Z2lu
VmVyc2lvbik7CisgICAgICAgICAgICBpZiAoaXM8UmVuZGVyRW1iZWRkZWRPYmplY3Q+KGVsZW1l
bnQucmVuZGVyZXIoKSkpCisgICAgICAgICAgICAgICAgZG93bmNhc3Q8UmVuZGVyRW1iZWRkZWRP
YmplY3Q+KCplbGVtZW50LnJlbmRlcmVyKCkpLnNldFBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29u
KFJlbmRlckVtYmVkZGVkT2JqZWN0OjpJbnNlY3VyZVBsdWdpblZlcnNpb24pOwogICAgICAgICB9
IGVsc2UgewogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgICAgICAgICAgaWYg
KFtwbHVnaW5QYWNrYWdlIGlzS2luZE9mQ2xhc3M6W1dlYk5ldHNjYXBlUGx1Z2luUGFja2FnZSBj
bGFzc11dKSB7CkBAIC0yMTEyLDcgKzIxMDksNyBAQCBQYXNzUmVmUHRyPFdpZGdldD4gV2ViRnJh
bWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYgcwog
ICAgICAgICAgICAgICAgICAgICBhdHRyaWJ1dGVLZXlzOmtpdChwYXJhbU5hbWVzKQogICAgICAg
ICAgICAgICAgICAgICBhdHRyaWJ1dGVWYWx1ZXM6a2l0KHBhcmFtVmFsdWVzKQogICAgICAgICAg
ICAgICAgICAgICBsb2FkTWFudWFsbHk6Tk8KLSAgICAgICAgICAgICAgICAgICAgZWxlbWVudDpl
bGVtZW50XSBhdXRvcmVsZWFzZV07CisgICAgICAgICAgICAgICAgICAgIGVsZW1lbnQ6JmVsZW1l
bnRdIGF1dG9yZWxlYXNlXTsKICAgICAgICAgICAgICAgICBpZiAodmlldykKICAgICAgICAgICAg
ICAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBOZXRzY2FwZVBsdWdpbldpZGdldChzdGF0aWNf
Y2FzdDxXZWJCYXNlTmV0c2NhcGVQbHVnaW5WaWV3ICo+KHZpZXcpKSk7CiAgICAgICAgICAgICB9
CkBAIC0yMjA5LDcgKzIyMDYsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpyZWdpc3Rl
ckZvckljb25Ob3RpZmljYXRpb24oYm9vbCBsaXN0ZW4pCiAjZW5kaWYKIH0KIAotUGFzc1JlZlB0
cjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlTmV0
d29ya2luZ0NvbnRleHQoKQorUmVmPEZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpjcmVhdGVOZXR3b3JraW5nQ29udGV4dCgpCiB7CiAgICAgcmV0dXJuIFdlYkZy
YW1lTmV0d29ya2luZ0NvbnRleHQ6OmNyZWF0ZShjb3JlKG1fd2ViRnJhbWUuZ2V0KCkpKTsKIH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTmV0
d29ya2luZ0NvbnRleHQuaCBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZy
YW1lTmV0d29ya2luZ0NvbnRleHQuaAppbmRleCBiMDhkNTZlMThjOWM4ZWU2NDE4MGEyMTRmNWZi
YjBlZGUwNGY1YTRkLi45N2UwZWFkOWYwOGI3ZjM2MTI3OGEzZDc1NmQ2MjhhNWZhZWFhOTE2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZU5ldHdv
cmtpbmdDb250ZXh0LmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2Vi
RnJhbWVOZXR3b3JraW5nQ29udGV4dC5oCkBAIC0yMywxNiArMjMsMTUgQEAKICAqIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFdlYkZyYW1lTmV0d29ya2lu
Z0NvbnRleHRfaAotI2RlZmluZSBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0X2gKKyNwcmFnbWEg
b25jZQogCiAjaW5jbHVkZSA8V2ViQ29yZS9GcmFtZU5ldHdvcmtpbmdDb250ZXh0Lmg+CiAKIGNs
YXNzIFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQgOiBwdWJsaWMgV2ViQ29yZTo6RnJhbWVOZXR3
b3JraW5nQ29udGV4dCB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8V2ViRnJhbWVO
ZXR3b3JraW5nQ29udGV4dD4gY3JlYXRlKFdlYkNvcmU6OkZyYW1lKiBmcmFtZSkKKyAgICBzdGF0
aWMgUmVmPFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZShXZWJDb3JlOjpGcmFtZSog
ZnJhbWUpCiAgICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IFdlYkZyYW1lTmV0d29y
a2luZ0NvbnRleHQoZnJhbWUpKTsKKyAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgV2ViRnJh
bWVOZXR3b3JraW5nQ29udGV4dChmcmFtZSkpOwogICAgIH0KIAogICAgIHN0YXRpYyBXZWJDb3Jl
OjpOZXR3b3JrU3RvcmFnZVNlc3Npb24mIGVuc3VyZVByaXZhdGVCcm93c2luZ1Nlc3Npb24oKTsK
QEAgLTUxLDcgKzUwLDQgQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgc291cmNlQXBwbGljYXRpb25J
ZGVudGlmaWVyKCkgY29uc3Qgb3ZlcnJpZGU7CiAgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBi
bG9ja2VkRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgY29uc3Qgb3ZlcnJp
ZGU7CiAgICAgV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uJiBzdG9yYWdlU2Vzc2lvbigp
IGNvbnN0IG92ZXJyaWRlOwotCiB9OwotCi0jZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQubW0gYi9Tb3Vy
Y2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0Lm1t
CmluZGV4IDkzZTc0YmJlNjI4NGI2M2MyMzIxMjlkMTc0OGUwZDkxNjJkMWExOWMuLmVlZjcwMmM1
NmZkMGVkNjdkMzcwZjM0YTY2OTllMjUzNjcyZDgwNGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQubW0KKysrIGIv
U291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4
dC5tbQpAQCAtNDcsMTYgKzQ3LDEzIEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogTmV0d29y
a1N0b3JhZ2VTZXNzaW9uJiBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0OjplbnN1cmVQcml2YXRl
QnJvd3NpbmdTZXNzaW9uKCkKIHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwotCiAgICAg
TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjplbnN1cmVQcml2YXRlQnJvd3NpbmdTZXNzaW9uKFNlc3Np
b25JRDo6bGVnYWN5UHJpdmF0ZVNlc3Npb25JRCgpLCBbW05TQnVuZGxlIG1haW5CdW5kbGVdIGJ1
bmRsZUlkZW50aWZpZXJdKTsKLQogICAgIHJldHVybiAqTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpz
dG9yYWdlU2Vzc2lvbihTZXNzaW9uSUQ6OmxlZ2FjeVByaXZhdGVTZXNzaW9uSUQoKSk7CiB9CiAK
IHZvaWQgV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dDo6ZGVzdHJveVByaXZhdGVCcm93c2luZ1Nl
c3Npb24oKQogewogICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7Ci0KICAgICBOZXR3b3JrU3Rv
cmFnZVNlc3Npb246OmRlc3Ryb3lTZXNzaW9uKFNlc3Npb25JRDo6bGVnYWN5UHJpdmF0ZVNlc3Np
b25JRCgpKTsKIH0KIApAQCAtNjgsMTkgKzY1LDE5IEBAIGJvb2wgV2ViRnJhbWVOZXR3b3JraW5n
Q29udGV4dDo6bG9jYWxGaWxlQ29udGVudFNuaWZmaW5nRW5hYmxlZCgpIGNvbnN0CiBTY2hlZHVs
ZVBhaXJIYXNoU2V0KiBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0OjpzY2hlZHVsZWRSdW5Mb29w
UGFpcnMoKSBjb25zdAogewogICAgIGlmICghZnJhbWUoKSB8fCAhZnJhbWUoKS0+cGFnZSgpKQot
ICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgcmV0dXJuIGZy
YW1lKCktPnBhZ2UoKS0+c2NoZWR1bGVkUnVuTG9vcFBhaXJzKCk7CiB9CiAKIFJldGFpblB0cjxD
RkRhdGFSZWY+IFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQ6OnNvdXJjZUFwcGxpY2F0aW9uQXVk
aXREYXRhKCkgY29uc3QKIHsKICAgICBpZiAoIWZyYW1lKCkgfHwgIWZyYW1lKCktPnBhZ2UoKSkK
LSAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIAogICAgIFdl
YlZpZXcgKndlYnZpZXcgPSBraXQoZnJhbWUoKS0+cGFnZSgpKTsKLSAgICAKICAgICBpZiAoIXdl
YnZpZXcpCi0gICAgICAgIHJldHVybiAwOworICAgICAgICByZXR1cm4gbnVsbHB0cjsKKwogICAg
IHJldHVybiByZWludGVycHJldF9jYXN0PENGRGF0YVJlZj4od2Vidmlldy5fc291cmNlQXBwbGlj
YXRpb25BdWRpdERhdGEpOwogfQogCkBAIC05OCw3ICs5NSw3IEBAIE5ldHdvcmtTdG9yYWdlU2Vz
c2lvbiYgV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dDo6c3RvcmFnZVNlc3Npb24oKSBjb25zdAog
ewogICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CiAgICAgaWYgKGZyYW1lKCkgJiYgZnJhbWUo
KS0+cGFnZSgpLT5zZXNzaW9uSUQoKS5pc0VwaGVtZXJhbCgpKSB7Ci0gICAgICAgIGlmIChOZXR3
b3JrU3RvcmFnZVNlc3Npb24qIHNlc3Npb24gPSBOZXR3b3JrU3RvcmFnZVNlc3Npb246OnN0b3Jh
Z2VTZXNzaW9uKFNlc3Npb25JRDo6bGVnYWN5UHJpdmF0ZVNlc3Npb25JRCgpKSkKKyAgICAgICAg
aWYgKGF1dG8qIHNlc3Npb24gPSBOZXR3b3JrU3RvcmFnZVNlc3Npb246OnN0b3JhZ2VTZXNzaW9u
KFNlc3Npb25JRDo6bGVnYWN5UHJpdmF0ZVNlc3Npb25JRCgpKSkKICAgICAgICAgICAgIHJldHVy
biAqc2Vzc2lvbjsKICAgICAgICAgLy8gU29tZSByZXF1ZXN0cyBtYXkgc3RpbGwgYmUgY29taW5n
IHNob3J0bHkgYmVmb3JlIFdlYkNvcmUgdXBkYXRlcyB0aGUgc2Vzc2lvbiBJRCBhbmQgYWZ0ZXIg
V2ViS2l0IGRlc3Ryb3lzIHRoZSBwcml2YXRlIGJyb3dzaW5nIHNlc3Npb24uCiAgICAgICAgIExP
R19FUlJPUigiSW52YWxpZCBzZXNzaW9uIElELiBQbGVhc2UgZmlsZSBhIGJ1ZyB1bmxlc3MgeW91
IGp1c3QgZGlzYWJsZWQgcHJpdmF0ZSBicm93c2luZywgaW4gd2hpY2ggY2FzZSBpdCdzIGFuIGV4
cGVjdGVkIHJhY2UuIik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3Vw
cG9ydC9XZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lci5oIGIvU291cmNlL1dlYktpdC9tYWMvV2Vi
Q29yZVN1cHBvcnQvV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIuaAppbmRleCBhY2M2MmNhZDc0
MDFjNTVkZmM3ODA4N2FlYzlmYmJiNGJhY2MyOTUyLi4wZTQwYWEyZWQyNTkzZDE3NWM1MGQ4ZDA3
YTI3YWIwNmRlMWQxZTU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3Vw
cG9ydC9XZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFj
L1dlYkNvcmVTdXBwb3J0L1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLmgKQEAgLTEsNSArMSw1
IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA4IEFwcGxlIEluYy4gIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTI0LDcgKzI0LDcg
QEAKICAqLwogCiAjaW1wb3J0ICJXZWJVSURlbGVnYXRlLmgiCi0jaW1wb3J0IDx3dGYvRm9yd2Fy
ZC5oPgorI2ltcG9ydCA8d3RmL1JlZlB0ci5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiBjbGFz
cyBGaWxlQ2hvb3NlcjsKQEAgLTMyLDkgKzMyLDkgQEAgY2xhc3MgRmlsZUNob29zZXI7CiAKIEBp
bnRlcmZhY2UgV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIgOiBOU09iamVjdCA8V2ViT3BlblBh
bmVsUmVzdWx0TGlzdGVuZXI+CiB7Ci0gICAgV2ViQ29yZTo6RmlsZUNob29zZXIqIF9jaG9vc2Vy
OworICAgIFJlZlB0cjxXZWJDb3JlOjpGaWxlQ2hvb3Nlcj4gX2Nob29zZXI7CiB9CiAKLS0gKGlk
KWluaXRXaXRoQ2hvb3NlcjooUGFzc1JlZlB0cjxXZWJDb3JlOjpGaWxlQ2hvb3Nlcj4pY2hvb3Nl
cjsKKy0gKGlkKWluaXRXaXRoQ2hvb3NlcjooV2ViQ29yZTo6RmlsZUNob29zZXImKWNob29zZXI7
CiAKIEBlbmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dl
Yk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1
cHBvcnQvV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIubW0KaW5kZXggYjZiZDI2N2JkZWQ4MWE3
YjRmODdmZDhjZjNjZGQwMGFjNDEyYThlYS4uOGIyNTIwOTA3MDNhZTQ3ZDdiYmFmYWE2NWIzMjZm
ZWVmY2MzMDQ3YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQv
V2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2Vi
Q29yZVN1cHBvcnQvV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIubW0KQEAgLTM2LDMwICszNiwx
OCBAQCB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogQGltcGxlbWVudGF0aW9uIFdlYk9wZW5Q
YW5lbFJlc3VsdExpc3RlbmVyCiAKLS0gKGlkKWluaXRXaXRoQ2hvb3NlcjooUGFzc1JlZlB0cjxG
aWxlQ2hvb3Nlcj4pY2hvb3NlcgorLSAoaWQpaW5pdFdpdGhDaG9vc2VyOihGaWxlQ2hvb3NlciYp
Y2hvb3NlcgogewogICAgIHNlbGYgPSBbc3VwZXIgaW5pdF07CiAgICAgaWYgKCFzZWxmKQogICAg
ICAgICByZXR1cm4gbmlsOwotICAgIF9jaG9vc2VyID0gY2hvb3Nlci5sZWFrUmVmKCk7CisgICAg
X2Nob29zZXIgPSAmY2hvb3NlcjsKICAgICByZXR1cm4gc2VsZjsKIH0KIAotI2lmbmRlZiBOREVC
VUcKLS0gKHZvaWQpZGVhbGxvYwotewotICAgIEFTU0VSVCghX2Nob29zZXIpOwotICAgIFtzdXBl
ciBkZWFsbG9jXTsKLX0KLSNlbmRpZgotCiAtICh2b2lkKWNhbmNlbAogewotICAgIEFTU0VSVChf
Y2hvb3Nlcik7Ci0gICAgaWYgKCFfY2hvb3NlcikKLSAgICAgICAgcmV0dXJuOwotICAgIF9jaG9v
c2VyLT5kZXJlZigpOwotICAgIF9jaG9vc2VyID0gMDsKKyAgICBfY2hvb3NlciA9IG51bGxwdHI7
CiB9CiAKIC0gKHZvaWQpY2hvb3NlRmlsZW5hbWU6KE5TU3RyaW5nICopZmlsZW5hbWUKQEAgLTY4
LDggKzU2LDcgQEAgLSAodm9pZCljaG9vc2VGaWxlbmFtZTooTlNTdHJpbmcgKilmaWxlbmFtZQog
ICAgIGlmICghX2Nob29zZXIpCiAgICAgICAgIHJldHVybjsKICAgICBfY2hvb3Nlci0+Y2hvb3Nl
RmlsZShmaWxlbmFtZSk7Ci0gICAgX2Nob29zZXItPmRlcmVmKCk7Ci0gICAgX2Nob29zZXIgPSAw
OworICAgIF9jaG9vc2VyID0gbnVsbHB0cjsKIH0KIAogLSAodm9pZCljaG9vc2VGaWxlbmFtZXM6
KE5TQXJyYXkgKilmaWxlbmFtZXMKQEAgLTgyLDExICs2OSwxMSBAQCAtICh2b2lkKWNob29zZUZp
bGVuYW1lczooTlNBcnJheSAqKWZpbGVuYW1lcwogICAgIGZvciAoTlNVSW50ZWdlciBpID0gMDsg
aSA8IGNvdW50OyBpKyspCiAgICAgICAgIG5hbWVzW2ldID0gW2ZpbGVuYW1lcyBvYmplY3RBdElu
ZGV4OmldOwogICAgIF9jaG9vc2VyLT5jaG9vc2VGaWxlcyhuYW1lcyk7Ci0gICAgX2Nob29zZXIt
PmRlcmVmKCk7Ci0gICAgX2Nob29zZXIgPSAwOworICAgIF9jaG9vc2VyID0gbnVsbHB0cjsKIH0K
IAogI2lmIFBMQVRGT1JNKElPUykKKwogLSAodm9pZCljaG9vc2VGaWxlbmFtZTooTlNTdHJpbmcg
KilmaWxlbmFtZSBkaXNwbGF5U3RyaW5nOihOU1N0cmluZyAqKWRpc3BsYXlTdHJpbmcgaWNvbklt
YWdlOihDR0ltYWdlUmVmKWltYWdlUmVmCiB7CiAgICAgW3NlbGYgY2hvb3NlRmlsZW5hbWVzOltO
U0FycmF5IGFycmF5V2l0aE9iamVjdDpmaWxlbmFtZV0gZGlzcGxheVN0cmluZzpkaXNwbGF5U3Ry
aW5nIGljb25JbWFnZTppbWFnZVJlZl07CkBAIC05OCwxOCArODUsMTQgQEAgLSAodm9pZCljaG9v
c2VGaWxlbmFtZXM6KE5TQXJyYXkgKilmaWxlbmFtZXMgZGlzcGxheVN0cmluZzooTlNTdHJpbmcg
KilkaXNwbGF5U3QKICAgICBpZiAoIV9jaG9vc2VyKQogICAgICAgICByZXR1cm47CiAKLSAgICBS
ZWZQdHI8SWNvbj4gaWNvbiA9IEljb246OmNyZWF0ZUljb25Gb3JJbWFnZShpbWFnZVJlZik7Ci0K
LSAgICBOU1VJbnRlZ2VyIGNvdW50ID0gW2ZpbGVuYW1lcyBjb3VudF07Ci0gICAgVmVjdG9yPFN0
cmluZz4gbmFtZXMoY291bnQpOwotICAgIGZvciAoTlNVSW50ZWdlciBpID0gMDsgaSA8IGNvdW50
OyArK2kpCi0gICAgICAgIG5hbWVzW2ldID0gW2ZpbGVuYW1lcyBvYmplY3RBdEluZGV4OmldOwot
ICAgIF9jaG9vc2VyLT5jaG9vc2VNZWRpYUZpbGVzKG5hbWVzLCBkaXNwbGF5U3RyaW5nLCBpY29u
LmdldCgpKTsKLSAgICAKLSAgICAvLyBGSVhNRTogd2Ugc2hvdWxkbid0IGJlIG1hbnVhbGx5IGRl
cmVmKCknaW5nIGhlcmUuCi0gICAgX2Nob29zZXItPmRlcmVmKCk7CisgICAgVmVjdG9yPFN0cmlu
Zz4gbmFtZXM7CisgICAgbmFtZXMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShbZmlsZW5hbWVzIGNv
dW50XSk7CisgICAgZm9yIChOU1N0cmluZyAqZmlsZW5hbWUgaW4gZmlsZW5hbWVzKQorICAgICAg
ICBuYW1lcy51bmNoZWNrZWRBcHBlbmQoZmlsZW5hbWUpOworICAgIF9jaG9vc2VyLT5jaG9vc2VN
ZWRpYUZpbGVzKG5hbWVzLCBkaXNwbGF5U3RyaW5nLCBJY29uOjpjcmVhdGVJY29uRm9ySW1hZ2Uo
aW1hZ2VSZWYpLmdldCgpKTsKICAgICBfY2hvb3NlciA9IG51bGxwdHI7CiB9CisKICNlbmRpZgog
CiBAZW5kCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkFyY2hpdmUu
bW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkFyY2hpdmUubW0KaW5kZXggZTk2YzYw
N2NmYjg0Yzg1YTFlYmZhYWJkYzMxY2ViYTA0ZWE1YzNlOC4uZmY3NTQ2ZDg1ZjhhNTVhNTliODBh
YWYxN2I1NGU3MmVhNjFmOTY3OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmll
dy9XZWJBcmNoaXZlLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViQXJjaGl2
ZS5tbQpAQCAtMTc0LDI1ICsxNzQsMTYgQEAgLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoTWFpblJl
c291cmNlOihXZWJSZXNvdXJjZSAqKW1haW5SZXNvdXJjZSBzdWJyZXNvdXJjZXM6KE4KICAgICAg
ICAgW3NlbGYgcmVsZWFzZV07CiAgICAgICAgIHJldHVybiBuaWw7CiAgICAgfQotICAgIAotICAg
IFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IGNvcmVNYWluUmVzb3VyY2UgPSBtYWluUmVzb3VyY2Ug
PyBbbWFpblJlc291cmNlIF9jb3JlUmVzb3VyY2VdIDogbnVsbHB0cjsKIAotICAgIFZlY3RvcjxS
ZWZQdHI8QXJjaGl2ZVJlc291cmNlPj4gY29yZVJlc291cmNlczsKKyAgICBWZWN0b3I8UmVmPEFy
Y2hpdmVSZXNvdXJjZT4+IGNvcmVSZXNvdXJjZXM7CiAgICAgZm9yIChXZWJSZXNvdXJjZSAqc3Vi
cmVzb3VyY2UgaW4gc3VicmVzb3VyY2VzKQogICAgICAgICBjb3JlUmVzb3VyY2VzLmFwcGVuZChb
c3VicmVzb3VyY2UgX2NvcmVSZXNvdXJjZV0pOwogCi0gICAgVmVjdG9yPFJlZlB0cjxMZWdhY3lX
ZWJBcmNoaXZlPj4gY29yZUFyY2hpdmVzOworICAgIFZlY3RvcjxSZWY8TGVnYWN5V2ViQXJjaGl2
ZT4+IGNvcmVBcmNoaXZlczsKICAgICBmb3IgKFdlYkFyY2hpdmUgKnN1YmZyYW1lQXJjaGl2ZSBp
biBzdWJmcmFtZUFyY2hpdmVzKQotICAgICAgICBjb3JlQXJjaGl2ZXMuYXBwZW5kKFtzdWJmcmFt
ZUFyY2hpdmUtPl9wcml2YXRlIGNvcmVBcmNoaXZlXSk7Ci0KLSAgICBhdXRvIGNvcmVBcmNoaXZl
ID0gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFdURk1vdmUoY29yZU1haW5SZXNvdXJjZSksIFdU
Rk1vdmUoY29yZVJlc291cmNlcyksIFdURk1vdmUoY29yZUFyY2hpdmVzKSk7Ci0gICAgaWYgKCFj
b3JlQXJjaGl2ZSkgewotICAgICAgICBbc2VsZiByZWxlYXNlXTsKLSAgICAgICAgcmV0dXJuIG5p
bDsKLSAgICB9Ci0KLSAgICBbX3ByaXZhdGUgc2V0Q29yZUFyY2hpdmU6V1RGTW92ZShjb3JlQXJj
aGl2ZSldOworICAgICAgICBjb3JlQXJjaGl2ZXMuYXBwZW5kKCpbc3ViZnJhbWVBcmNoaXZlLT5f
cHJpdmF0ZSBjb3JlQXJjaGl2ZV0pOwogCisgICAgW19wcml2YXRlIHNldENvcmVBcmNoaXZlOkxl
Z2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShbbWFpblJlc291cmNlIF9jb3JlUmVzb3VyY2VdLCBXVEZN
b3ZlKGNvcmVSZXNvdXJjZXMpLCBXVEZNb3ZlKGNvcmVBcmNoaXZlcykpXTsKICAgICByZXR1cm4g
c2VsZjsKIH0KIApAQCAtMjc1LDkgKzI2NiwxMCBAQCAtIChXZWJSZXNvdXJjZSAqKW1haW5SZXNv
dXJjZQogICAgIC8vIEN1cnJlbnRseSBmcm9tIFdlYktpdCBBUEkgcGVyc3BlY3RpdmUsIFdlYkFy
Y2hpdmVzIGFyZSBlbnRpcmVseSBpbW11dGFibGUgb25jZSBjcmVhdGVkCiAgICAgLy8gSWYgdGhl
eSBldmVyIGJlY29tZSBtdXRhYmxlLCB3ZSdsbCBuZWVkIHRvIHJldGhpbmsgdGhpcy4gCiAgICAg
aWYgKCFfcHJpdmF0ZS0+Y2FjaGVkTWFpblJlc291cmNlKSB7Ci0gICAgICAgIExlZ2FjeVdlYkFy
Y2hpdmUqIGNvcmVBcmNoaXZlID0gW19wcml2YXRlIGNvcmVBcmNoaXZlXTsKLSAgICAgICAgaWYg
KGNvcmVBcmNoaXZlKQotICAgICAgICAgICAgX3ByaXZhdGUtPmNhY2hlZE1haW5SZXNvdXJjZSA9
IFtbV2ViUmVzb3VyY2UgYWxsb2NdIF9pbml0V2l0aENvcmVSZXNvdXJjZTpjb3JlQXJjaGl2ZS0+
bWFpblJlc291cmNlKCldOworICAgICAgICBpZiAoYXV0byogY29yZUFyY2hpdmUgPSBbX3ByaXZh
dGUgY29yZUFyY2hpdmVdKSB7CisgICAgICAgICAgICBpZiAoYXV0byogbWFpblJlc291cmNlID0g
Y29yZUFyY2hpdmUtPm1haW5SZXNvdXJjZSgpKQorICAgICAgICAgICAgICAgIF9wcml2YXRlLT5j
YWNoZWRNYWluUmVzb3VyY2UgPSBbW1dlYlJlc291cmNlIGFsbG9jXSBfaW5pdFdpdGhDb3JlUmVz
b3VyY2U6Km1haW5SZXNvdXJjZV07CisgICAgICAgIH0KICAgICB9CiAgICAgCiAgICAgcmV0dXJu
IFtbX3ByaXZhdGUtPmNhY2hlZE1haW5SZXNvdXJjZSByZXRhaW5dIGF1dG9yZWxlYXNlXTsKQEAg
LTI5NCwxMiArMjg2LDExIEBAIC0gKE5TQXJyYXkgKilzdWJyZXNvdXJjZXMKICAgICAgICAgaWYg
KCFjb3JlQXJjaGl2ZSkKICAgICAgICAgICAgIF9wcml2YXRlLT5jYWNoZWRTdWJyZXNvdXJjZXMg
PSBbW05TQXJyYXkgYWxsb2NdIGluaXRdOwogICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIGNv
bnN0IFZlY3RvcjxSZWZQdHI8QXJjaGl2ZVJlc291cmNlPj4mIHN1YnJlc291cmNlcyhjb3JlQXJj
aGl2ZS0+c3VicmVzb3VyY2VzKCkpOworICAgICAgICAgICAgYXV0byYgc3VicmVzb3VyY2VzID0g
Y29yZUFyY2hpdmUtPnN1YnJlc291cmNlcygpOwogICAgICAgICAgICAgTlNNdXRhYmxlQXJyYXkg
Km11dGFibGVBcnJheSA9IFtbTlNNdXRhYmxlQXJyYXkgYWxsb2NdIGluaXRXaXRoQ2FwYWNpdHk6
c3VicmVzb3VyY2VzLnNpemUoKV07CiAgICAgICAgICAgICBfcHJpdmF0ZS0+Y2FjaGVkU3VicmVz
b3VyY2VzID0gbXV0YWJsZUFycmF5OwotICAgICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsg
aSA8IHN1YnJlc291cmNlcy5zaXplKCk7ICsraSkgewotICAgICAgICAgICAgICAgIFdlYlJlc291
cmNlICpyZXNvdXJjZSA9IFtbV2ViUmVzb3VyY2UgYWxsb2NdIF9pbml0V2l0aENvcmVSZXNvdXJj
ZTpzdWJyZXNvdXJjZXNbaV0uZ2V0KCldOwotICAgICAgICAgICAgICAgIGlmIChyZXNvdXJjZSkg
eworICAgICAgICAgICAgZm9yIChhdXRvJiBzdWJyZXNvdXJjZSA6IHN1YnJlc291cmNlcykgewor
ICAgICAgICAgICAgICAgIGlmIChXZWJSZXNvdXJjZSAqcmVzb3VyY2UgPSBbW1dlYlJlc291cmNl
IGFsbG9jXSBfaW5pdFdpdGhDb3JlUmVzb3VyY2U6c3VicmVzb3VyY2UuZ2V0KCldKSB7CiAgICAg
ICAgICAgICAgICAgICAgIFttdXRhYmxlQXJyYXkgYWRkT2JqZWN0OnJlc291cmNlXTsKICAgICAg
ICAgICAgICAgICAgICAgW3Jlc291cmNlIHJlbGVhc2VdOwogICAgICAgICAgICAgICAgIH0KQEAg
LTMxOCwxNSArMzA5LDE1IEBAIC0gKE5TQXJyYXkgKilzdWJmcmFtZUFyY2hpdmVzCiAgICAgLy8g
Q3VycmVudGx5IGZyb20gV2ViS2l0IEFQSSBwZXJzcGVjdGl2ZSwgV2ViQXJjaGl2ZXMgYXJlIGVu
dGlyZWx5IGltbXV0YWJsZSBvbmNlIGNyZWF0ZWQKICAgICAvLyBJZiB0aGV5IGV2ZXIgYmVjb21l
IG11dGFibGUsIHdlJ2xsIG5lZWQgdG8gcmV0aGluayB0aGlzLiAgCiAgICAgaWYgKCFfcHJpdmF0
ZS0+Y2FjaGVkU3ViZnJhbWVBcmNoaXZlcykgewotICAgICAgICBMZWdhY3lXZWJBcmNoaXZlKiBj
b3JlQXJjaGl2ZSA9IFtfcHJpdmF0ZSBjb3JlQXJjaGl2ZV07CisgICAgICAgIGF1dG8qIGNvcmVB
cmNoaXZlID0gW19wcml2YXRlIGNvcmVBcmNoaXZlXTsKICAgICAgICAgaWYgKCFjb3JlQXJjaGl2
ZSkKICAgICAgICAgICAgIF9wcml2YXRlLT5jYWNoZWRTdWJmcmFtZUFyY2hpdmVzID0gW1tOU0Fy
cmF5IGFsbG9jXSBpbml0XTsKICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICBjb25zdCBWZWN0
b3I8UmVmUHRyPEFyY2hpdmU+PiYgc3ViZnJhbWVBcmNoaXZlcyhjb3JlQXJjaGl2ZS0+c3ViZnJh
bWVBcmNoaXZlcygpKTsKLSAgICAgICAgICAgIE5TTXV0YWJsZUFycmF5ICptdXRhYmxlQXJyYXkg
PSBbW05TTXV0YWJsZUFycmF5IGFsbG9jXSBpbml0V2l0aENhcGFjaXR5OnN1YmZyYW1lQXJjaGl2
ZXMuc2l6ZSgpXTsKKyAgICAgICAgICAgIGF1dG8mIHN1YmZyYW1lQXJjaGl2ZXMgPSBjb3JlQXJj
aGl2ZS0+c3ViZnJhbWVBcmNoaXZlcygpOworICAgICAgICAgICAgYXV0byBtdXRhYmxlQXJyYXkg
PSBbW05TTXV0YWJsZUFycmF5IGFsbG9jXSBpbml0V2l0aENhcGFjaXR5OnN1YmZyYW1lQXJjaGl2
ZXMuc2l6ZSgpXTsKICAgICAgICAgICAgIF9wcml2YXRlLT5jYWNoZWRTdWJmcmFtZUFyY2hpdmVz
ID0gbXV0YWJsZUFycmF5OwogICAgICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IHN1
YmZyYW1lQXJjaGl2ZXMuc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgICAgICAgICBXZWJBcmNoaXZl
ICphcmNoaXZlID0gW1tXZWJBcmNoaXZlIGFsbG9jXSBfaW5pdFdpdGhDb3JlTGVnYWN5V2ViQXJj
aGl2ZTooTGVnYWN5V2ViQXJjaGl2ZSAqKXN1YmZyYW1lQXJjaGl2ZXNbaV0uZ2V0KCldOworICAg
ICAgICAgICAgICAgIFdlYkFyY2hpdmUgKmFyY2hpdmUgPSBbW1dlYkFyY2hpdmUgYWxsb2NdIF9p
bml0V2l0aENvcmVMZWdhY3lXZWJBcmNoaXZlOihMZWdhY3lXZWJBcmNoaXZlICopc3ViZnJhbWVB
cmNoaXZlc1tpXS5wdHIoKV07CiAgICAgICAgICAgICAgICAgW211dGFibGVBcnJheSBhZGRPYmpl
Y3Q6YXJjaGl2ZV07CiAgICAgICAgICAgICAgICAgW2FyY2hpdmUgcmVsZWFzZV07CiAgICAgICAg
ICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkRhdGFTb3Vy
Y2UubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkRhdGFTb3VyY2UubW0KaW5kZXgg
NjA2NDcyMmE1NjM2MTQ4NTg0MmNmNTdmZDkzMGY3NTU4OGQ2ZThmNi4uMThjZjlmN2RiNGM2Mzg3
ODQ3MTcwODkyOGJhYjg5NThhNDc5MjcwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMv
V2ViVmlldy9XZWJEYXRhU291cmNlLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcv
V2ViRGF0YVNvdXJjZS5tbQpAQCAtMTY2LDI1ICsxNjYsMjIgQEAgLSAoTlNFcnJvciAqKV9tYWlu
RG9jdW1lbnRFcnJvcgogCiAtICh2b2lkKV9hZGRTdWJmcmFtZUFyY2hpdmVzOihOU0FycmF5ICop
c3ViZnJhbWVBcmNoaXZlcwogewotICAgIC8vIEZJWE1FOiBUaGlzIFNQSSBpcyBwb29yLCBwb29y
IGRlc2lnbi4gIENhbiB3ZSBjb21lIHVwIHdpdGggYW5vdGhlciBzb2x1dGlvbiBmb3IgdGhvc2Ug
d2hvIG5lZWQgaXQ/Ci0gICAgTlNFbnVtZXJhdG9yICplbnVtZXJhdG9yID0gW3N1YmZyYW1lQXJj
aGl2ZXMgb2JqZWN0RW51bWVyYXRvcl07Ci0gICAgV2ViQXJjaGl2ZSAqYXJjaGl2ZTsKLSAgICB3
aGlsZSAoKGFyY2hpdmUgPSBbZW51bWVyYXRvciBuZXh0T2JqZWN0XSkgIT0gbmlsKQotICAgICAg
ICB0b1ByaXZhdGUoX3ByaXZhdGUpLT5sb2FkZXItPmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoW2Fy
Y2hpdmUgX2NvcmVMZWdhY3lXZWJBcmNoaXZlXSk7CisgICAgLy8gRklYTUU6IFRoaXMgU1BJIGlz
IHBvb3IsIHBvb3IgZGVzaWduLiBDYW4gd2UgY29tZSB1cCB3aXRoIGFub3RoZXIgc29sdXRpb24g
Zm9yIHRob3NlIHdobyBuZWVkIGl0PworICAgIGZvciAoV2ViQXJjaGl2ZSAqYXJjaGl2ZSBpbiBz
dWJmcmFtZUFyY2hpdmVzKQorICAgICAgICB0b1ByaXZhdGUoX3ByaXZhdGUpLT5sb2FkZXItPmFk
ZEFsbEFyY2hpdmVSZXNvdXJjZXMoKlthcmNoaXZlIF9jb3JlTGVnYWN5V2ViQXJjaGl2ZV0pOwog
fQogCiAjaWYgIVBMQVRGT1JNKElPUykKKwogLSAoTlNGaWxlV3JhcHBlciAqKV9maWxlV3JhcHBl
ckZvclVSTDooTlNVUkwgKilVUkwKIHsKICAgICBpZiAoW1VSTCBpc0ZpbGVVUkxdKQogICAgICAg
ICByZXR1cm4gW1tbTlNGaWxlV3JhcHBlciBhbGxvY10gaW5pdFdpdGhVUkw6W1VSTCBVUkxCeVJl
c29sdmluZ1N5bWxpbmtzSW5QYXRoXSBvcHRpb25zOjAgZXJyb3I6bnVsbHB0cl0gYXV0b3JlbGVh
c2VdOwogCi0gICAgV2ViUmVzb3VyY2UgKnJlc291cmNlID0gW3NlbGYgc3VicmVzb3VyY2VGb3JV
Ukw6VVJMXTsKLSAgICBpZiAocmVzb3VyY2UpCisgICAgaWYgKGF1dG8gcmVzb3VyY2UgPSBbc2Vs
ZiBzdWJyZXNvdXJjZUZvclVSTDpVUkxdKQogICAgICAgICByZXR1cm4gW3Jlc291cmNlIF9maWxl
V3JhcHBlclJlcHJlc2VudGF0aW9uXTsKLSAgICAKLSAgICBOU0NhY2hlZFVSTFJlc3BvbnNlICpj
YWNoZWRSZXNwb25zZSA9IFtbc2VsZiBfd2ViVmlld10gX2NhY2hlZFJlc3BvbnNlRm9yVVJMOlVS
TF07Ci0gICAgaWYgKGNhY2hlZFJlc3BvbnNlKSB7CisKKyAgICBpZiAoYXV0byBjYWNoZWRSZXNw
b25zZSA9IFtbc2VsZiBfd2ViVmlld10gX2NhY2hlZFJlc3BvbnNlRm9yVVJMOlVSTF0pIHsKICAg
ICAgICAgTlNGaWxlV3JhcHBlciAqd3JhcHBlciA9IFtbW05TRmlsZVdyYXBwZXIgYWxsb2NdIGlu
aXRSZWd1bGFyRmlsZVdpdGhDb250ZW50czpbY2FjaGVkUmVzcG9uc2UgZGF0YV1dIGF1dG9yZWxl
YXNlXTsKICAgICAgICAgW3dyYXBwZXIgc2V0UHJlZmVycmVkRmlsZW5hbWU6W1tjYWNoZWRSZXNw
b25zZSByZXNwb25zZV0gc3VnZ2VzdGVkRmlsZW5hbWVdXTsKICAgICAgICAgcmV0dXJuIHdyYXBw
ZXI7CkBAIC0xOTIsNiArMTg5LDcgQEAgLSAoTlNGaWxlV3JhcHBlciAqKV9maWxlV3JhcHBlckZv
clVSTDooTlNVUkwgKilVUkwKICAgICAKICAgICByZXR1cm4gbmlsOwogfQorCiAjZW5kaWYKIAog
LSAoTlNTdHJpbmcgKilfcmVzcG9uc2VNSU1FVHlwZQpAQCAtMzA1LDkgKzMwMywxMCBAQCAtIChE
T01Eb2N1bWVudEZyYWdtZW50ICopX2RvY3VtZW50RnJhZ21lbnRXaXRoQXJjaGl2ZTooV2ViQXJj
aGl2ZSAqKWFyY2hpdmUKICAgICAgICAgTlNTdHJpbmcgKk1JTUVUeXBlID0gW21haW5SZXNvdXJj
ZSBNSU1FVHlwZV07CiAgICAgICAgIGlmIChbV2ViVmlldyBjYW5TaG93TUlNRVR5cGVBc0hUTUw6
TUlNRVR5cGVdKSB7CiAgICAgICAgICAgICBOU1N0cmluZyAqbWFya3VwU3RyaW5nID0gW1tOU1N0
cmluZyBhbGxvY10gaW5pdFdpdGhEYXRhOlttYWluUmVzb3VyY2UgZGF0YV0gZW5jb2Rpbmc6TlNV
VEY4U3RyaW5nRW5jb2RpbmddOworCiAgICAgICAgICAgICAvLyBGSVhNRTogc2VlbXMgcG9vciBm
b3JtIHRvIGRvIHRoaXMgYXMgYSBzaWRlIGVmZmVjdCBvZiBnZXR0aW5nIGEgZG9jdW1lbnQgZnJh
Z21lbnQKICAgICAgICAgICAgIGlmICh0b1ByaXZhdGUoX3ByaXZhdGUpLT5sb2FkZXIpCi0gICAg
ICAgICAgICAgICAgdG9Qcml2YXRlKF9wcml2YXRlKS0+bG9hZGVyLT5hZGRBbGxBcmNoaXZlUmVz
b3VyY2VzKFthcmNoaXZlIF9jb3JlTGVnYWN5V2ViQXJjaGl2ZV0pOworICAgICAgICAgICAgICAg
IHRvUHJpdmF0ZShfcHJpdmF0ZSktPmxvYWRlci0+YWRkQWxsQXJjaGl2ZVJlc291cmNlcygqW2Fy
Y2hpdmUgX2NvcmVMZWdhY3lXZWJBcmNoaXZlXSk7CiAKICAgICAgICAgICAgIERPTURvY3VtZW50
RnJhZ21lbnQgKmZyYWdtZW50ID0gW1tzZWxmIHdlYkZyYW1lXSBfZG9jdW1lbnRGcmFnbWVudFdp
dGhNYXJrdXBTdHJpbmc6bWFya3VwU3RyaW5nIGJhc2VVUkxTdHJpbmc6W1ttYWluUmVzb3VyY2Ug
VVJMXSBfd2ViX29yaWdpbmFsRGF0YUFzU3RyaW5nXV07CiAgICAgICAgICAgICBbbWFya3VwU3Ry
aW5nIHJlbGVhc2VdOwpAQCAtMzI0LDcgKzMyMyw3IEBAIC0gKERPTURvY3VtZW50RnJhZ21lbnQg
KilfZG9jdW1lbnRGcmFnbWVudFdpdGhJbWFnZVJlc291cmNlOihXZWJSZXNvdXJjZSAqKXJlc291
CiB7CiAgICAgRE9NRWxlbWVudCAqaW1hZ2VFbGVtZW50ID0gW3NlbGYgX2ltYWdlRWxlbWVudFdp
dGhJbWFnZVJlc291cmNlOnJlc291cmNlXTsKICAgICBpZiAoIWltYWdlRWxlbWVudCkKLSAgICAg
ICAgcmV0dXJuIDA7CisgICAgICAgIHJldHVybiBuaWw7CiAgICAgRE9NRG9jdW1lbnRGcmFnbWVu
dCAqZnJhZ21lbnQgPSBbW1tzZWxmIHdlYkZyYW1lXSBET01Eb2N1bWVudF0gY3JlYXRlRG9jdW1l
bnRGcmFnbWVudF07CiAgICAgW2ZyYWdtZW50IGFwcGVuZENoaWxkOmltYWdlRWxlbWVudF07CiAg
ICAgcmV0dXJuIGZyYWdtZW50OwpAQCAtNTE5LDMyICs1MTgsMzEgQEAgLSAoV2ViQXJjaGl2ZSAq
KXdlYkFyY2hpdmUKIC0gKFdlYlJlc291cmNlICopbWFpblJlc291cmNlCiB7CiAgICAgYXV0byBj
b3JlUmVzb3VyY2UgPSB0b1ByaXZhdGUoX3ByaXZhdGUpLT5sb2FkZXItPm1haW5SZXNvdXJjZSgp
OwotICAgIHJldHVybiBbW1tXZWJSZXNvdXJjZSBhbGxvY10gX2luaXRXaXRoQ29yZVJlc291cmNl
OldURk1vdmUoY29yZVJlc291cmNlKV0gYXV0b3JlbGVhc2VdOworICAgIGlmICghY29yZVJlc291
cmNlKQorICAgICAgICByZXR1cm4gbmlsOworICAgIHJldHVybiBbW1tXZWJSZXNvdXJjZSBhbGxv
Y10gX2luaXRXaXRoQ29yZVJlc291cmNlOmNvcmVSZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpXSBh
dXRvcmVsZWFzZV07CiB9CiAKIC0gKE5TQXJyYXkgKilzdWJyZXNvdXJjZXMKIHsKICAgICBhdXRv
IGNvcmVTdWJyZXNvdXJjZXMgPSB0b1ByaXZhdGUoX3ByaXZhdGUpLT5sb2FkZXItPnN1YnJlc291
cmNlcygpOwotCiAgICAgYXV0byBzdWJyZXNvdXJjZXMgPSBhZG9wdE5TKFtbTlNNdXRhYmxlQXJy
YXkgYWxsb2NdIGluaXRXaXRoQ2FwYWNpdHk6Y29yZVN1YnJlc291cmNlcy5zaXplKCldKTsKLSAg
ICBmb3IgKGNvbnN0IGF1dG8mIGNvcmVTdWJyZXNvdXJjZSA6IGNvcmVTdWJyZXNvdXJjZXMpIHsK
LSAgICAgICAgaWYgKGF1dG8gcmVzb3VyY2UgPSBhZG9wdE5TKFtbV2ViUmVzb3VyY2UgYWxsb2Nd
IF9pbml0V2l0aENvcmVSZXNvdXJjZTpjb3JlU3VicmVzb3VyY2VdKSkKKyAgICBmb3IgKGF1dG8m
IGNvcmVTdWJyZXNvdXJjZSA6IGNvcmVTdWJyZXNvdXJjZXMpIHsKKyAgICAgICAgaWYgKGF1dG8g
cmVzb3VyY2UgPSBhZG9wdE5TKFtbV2ViUmVzb3VyY2UgYWxsb2NdIF9pbml0V2l0aENvcmVSZXNv
dXJjZTpjb3JlU3VicmVzb3VyY2UuY29weVJlZigpXSkpCiAgICAgICAgICAgICBbc3VicmVzb3Vy
Y2VzIGFkZE9iamVjdDpyZXNvdXJjZS5nZXQoKV07CiAgICAgfQotCiAgICAgcmV0dXJuIHN1YnJl
c291cmNlcy5hdXRvcmVsZWFzZSgpOwogfQogCiAtIChXZWJSZXNvdXJjZSAqKXN1YnJlc291cmNl
Rm9yVVJMOihOU1VSTCAqKVVSTAogewotICAgIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IHN1YnJl
c291cmNlID0gdG9Qcml2YXRlKF9wcml2YXRlKS0+bG9hZGVyLT5zdWJyZXNvdXJjZShVUkwpOwot
ICAgIAotICAgIHJldHVybiBzdWJyZXNvdXJjZSA/IFtbW1dlYlJlc291cmNlIGFsbG9jXSBfaW5p
dFdpdGhDb3JlUmVzb3VyY2U6c3VicmVzb3VyY2UuZ2V0KCldIGF1dG9yZWxlYXNlXSA6IG5pbDsK
KyAgICBhdXRvIHN1YnJlc291cmNlID0gdG9Qcml2YXRlKF9wcml2YXRlKS0+bG9hZGVyLT5zdWJy
ZXNvdXJjZShVUkwpOworICAgIHJldHVybiBzdWJyZXNvdXJjZSA/IFtbW1dlYlJlc291cmNlIGFs
bG9jXSBfaW5pdFdpdGhDb3JlUmVzb3VyY2U6c3VicmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKV0g
YXV0b3JlbGVhc2VdIDogbmlsOwogfQogCiAtICh2b2lkKWFkZFN1YnJlc291cmNlOihXZWJSZXNv
dXJjZSAqKXN1YnJlc291cmNlCiB7ICAgIAotICAgIHRvUHJpdmF0ZShfcHJpdmF0ZSktPmxvYWRl
ci0+YWRkQXJjaGl2ZVJlc291cmNlKCpbc3VicmVzb3VyY2UgX2NvcmVSZXNvdXJjZV0pOworICAg
IHRvUHJpdmF0ZShfcHJpdmF0ZSktPmxvYWRlci0+YWRkQXJjaGl2ZVJlc291cmNlKFtzdWJyZXNv
dXJjZSBfY29yZVJlc291cmNlXSk7CiB9CiAKIEBlbmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvbWFjL1dlYlZpZXcvV2ViUmVzb3VyY2UubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3
L1dlYlJlc291cmNlLm1tCmluZGV4IGU1ZDhmZDRhZmJkNGQyZmFjOWNkMzkyMTkxNmE0OWI4ZjE3
MzVlZjYuLmIzYmI3NWJhOWQxOGRjNjkwOGFiZWU5YzJkY2IwNjY1YjExNGFmYjAgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUmVzb3VyY2UubW0KKysrIGIvU291cmNl
L1dlYktpdC9tYWMvV2ViVmlldy9XZWJSZXNvdXJjZS5tbQpAQCAtMSw1ICsxLDUgQEAKIC8qCi0g
KiBDb3B5cmlnaHQgKEMpIDIwMDUsIDIwMDYsIDIwMDcsIDIwMDggQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA1LTIwMTcgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC01Nyw5
ICs1Nyw5IEBAIHN0YXRpYyBOU1N0cmluZyAqIGNvbnN0IFdlYlJlc291cmNlUmVzcG9uc2VLZXkg
PSAgICAgICAgICBAIldlYlJlc291cmNlUmVzcG9uc2UiCiAKIEBpbnRlcmZhY2UgV2ViUmVzb3Vy
Y2VQcml2YXRlIDogTlNPYmplY3QgewogQHB1YmxpYwotICAgIEFyY2hpdmVSZXNvdXJjZSogY29y
ZVJlc291cmNlOworICAgIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IGNvcmVSZXNvdXJjZTsKIH0K
LS0gKGluc3RhbmNldHlwZSlpbml0V2l0aENvcmVSZXNvdXJjZTooUGFzc1JlZlB0cjxBcmNoaXZl
UmVzb3VyY2U+KWNvcmVSZXNvdXJjZTsKKy0gKGluc3RhbmNldHlwZSlpbml0V2l0aENvcmVSZXNv
dXJjZTooUmVmPEFyY2hpdmVSZXNvdXJjZT4mJiljb3JlUmVzb3VyY2U7CiBAZW5kCiAKIEBpbXBs
ZW1lbnRhdGlvbiBXZWJSZXNvdXJjZVByaXZhdGUKQEAgLTc4LDEzICs3OCwxMiBAQCAtIChpbnN0
YW5jZXR5cGUpaW5pdAogICAgIHJldHVybiBbc3VwZXIgaW5pdF07CiB9CiAKLS0gKGluc3RhbmNl
dHlwZSlpbml0V2l0aENvcmVSZXNvdXJjZTooUGFzc1JlZlB0cjxBcmNoaXZlUmVzb3VyY2U+KXBh
c3NlZFJlc291cmNlCistIChpbnN0YW5jZXR5cGUpaW5pdFdpdGhDb3JlUmVzb3VyY2U6KFJlZjxB
cmNoaXZlUmVzb3VyY2U+JiYpcGFzc2VkUmVzb3VyY2UKIHsKICAgICBzZWxmID0gW3N1cGVyIGlu
aXRdOwogICAgIGlmICghc2VsZikKICAgICAgICAgcmV0dXJuIG5pbDsKLSAgICAvLyBBY3F1aXJl
IHRoZSBQYXNzUmVmUHRyPD4ncyByZWYgYXMgb3VyIG93biBtYW51YWwgcmVmCi0gICAgY29yZVJl
c291cmNlID0gcGFzc2VkUmVzb3VyY2UubGVha1JlZigpOworICAgIGNvcmVSZXNvdXJjZSA9IFdU
Rk1vdmUocGFzc2VkUmVzb3VyY2UpOwogICAgIHJldHVybiBzZWxmOwogfQogCkBAIC05Miw5ICs5
MSw2IEBAIC0gKHZvaWQpZGVhbGxvYwogewogICAgIGlmIChXZWJDb3JlT2JqQ1NjaGVkdWxlRGVh
bGxvY2F0ZU9uTWFpblRocmVhZChbV2ViUmVzb3VyY2VQcml2YXRlIGNsYXNzXSwgc2VsZikpCiAg
ICAgICAgIHJldHVybjsKLQotICAgIGlmIChjb3JlUmVzb3VyY2UpCi0gICAgICAgIGNvcmVSZXNv
dXJjZS0+ZGVyZWYoKTsKICAgICBbc3VwZXIgZGVhbGxvY107CiB9CiAKQEAgLTE1MywxNCArMTQ5
LDE5IEBAIC0gKGluc3RhbmNldHlwZSlpbml0V2l0aENvZGVyOihOU0NvZGVyICopZGVjb2Rlcgog
ICAgICAgICByZXR1cm4gbmlsOwogICAgIH0KIAotICAgIF9wcml2YXRlID0gW1tXZWJSZXNvdXJj
ZVByaXZhdGUgYWxsb2NdIGluaXRXaXRoQ29yZVJlc291cmNlOkFyY2hpdmVSZXNvdXJjZTo6Y3Jl
YXRlKFNoYXJlZEJ1ZmZlcjo6d3JhcE5TRGF0YShkYXRhKSwgdXJsLCBtaW1lVHlwZSwgdGV4dEVu
Y29kaW5nLCBmcmFtZU5hbWUsIHJlc3BvbnNlKV07CisgICAgYXV0byBjb3JlUmVzb3VyY2UgPSBB
cmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShTaGFyZWRCdWZmZXI6OndyYXBOU0RhdGEoZGF0YSksIHVy
bCwgbWltZVR5cGUsIHRleHRFbmNvZGluZywgZnJhbWVOYW1lLCByZXNwb25zZSk7CisgICAgaWYg
KCFjb3JlUmVzb3VyY2UpIHsKKyAgICAgICAgW3NlbGYgcmVsZWFzZV07CisgICAgICAgIHJldHVy
biBuaWw7CisgICAgfQogCisgICAgX3ByaXZhdGUgPSBbW1dlYlJlc291cmNlUHJpdmF0ZSBhbGxv
Y10gaW5pdFdpdGhDb3JlUmVzb3VyY2U6Y29yZVJlc291cmNlLnJlbGVhc2VOb25OdWxsKCldOwog
ICAgIHJldHVybiBzZWxmOwogfQogCiAtICh2b2lkKWVuY29kZVdpdGhDb2RlcjooTlNDb2RlciAq
KWVuY29kZXIKIHsKLSAgICBBcmNoaXZlUmVzb3VyY2UgKnJlc291cmNlID0gX3ByaXZhdGUtPmNv
cmVSZXNvdXJjZTsKKyAgICBhdXRvKiByZXNvdXJjZSA9IF9wcml2YXRlLT5jb3JlUmVzb3VyY2Uu
Z2V0KCk7CiAgICAgCiAgICAgTlNEYXRhICpkYXRhID0gbmlsOwogICAgIE5TVVJMICp1cmwgPSBu
aWw7CkBAIC0yMDksOCArMjEwLDcgQEAgLSAoTlNVUkwgKilVUkwKIAogICAgIGlmICghX3ByaXZh
dGUtPmNvcmVSZXNvdXJjZSkKICAgICAgICAgcmV0dXJuIG5pbDsKLSAgICBOU1VSTCAqdXJsID0g
X3ByaXZhdGUtPmNvcmVSZXNvdXJjZS0+dXJsKCk7Ci0gICAgcmV0dXJuIHVybDsKKyAgICByZXR1
cm4gX3ByaXZhdGUtPmNvcmVSZXNvdXJjZS0+dXJsKCk7CiB9CiAKIC0gKE5TU3RyaW5nICopTUlN
RVR5cGUKQEAgLTI1MiwyMiArMjUyLDE5IEBAIEBlbmQKIAogQGltcGxlbWVudGF0aW9uIFdlYlJl
c291cmNlIChXZWJSZXNvdXJjZUludGVybmFsKQogCi0tIChpZClfaW5pdFdpdGhDb3JlUmVzb3Vy
Y2U6KFBhc3NSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiljb3JlUmVzb3VyY2UKKy0gKGlkKV9pbml0
V2l0aENvcmVSZXNvdXJjZTooUmVmPEFyY2hpdmVSZXNvdXJjZT4mJiljb3JlUmVzb3VyY2UKIHsK
ICAgICBzZWxmID0gW3N1cGVyIGluaXRdOwogICAgIGlmICghc2VsZikKICAgICAgICAgcmV0dXJu
IG5pbDsKLSAgICAgICAgICAgIAotICAgIEFTU0VSVChjb3JlUmVzb3VyY2UpOwotICAgIAotICAg
IF9wcml2YXRlID0gW1tXZWJSZXNvdXJjZVByaXZhdGUgYWxsb2NdIGluaXRXaXRoQ29yZVJlc291
cmNlOmNvcmVSZXNvdXJjZV07Ci0gICAgICAgICAgICAKKworICAgIF9wcml2YXRlID0gW1tXZWJS
ZXNvdXJjZVByaXZhdGUgYWxsb2NdIGluaXRXaXRoQ29yZVJlc291cmNlOldURk1vdmUoY29yZVJl
c291cmNlKV07CiAgICAgcmV0dXJuIHNlbGY7CiB9CiAKLS0gKFdlYkNvcmU6OkFyY2hpdmVSZXNv
dXJjZSAqKV9jb3JlUmVzb3VyY2UKKy0gKFdlYkNvcmU6OkFyY2hpdmVSZXNvdXJjZSYpX2NvcmVS
ZXNvdXJjZQogewotICAgIHJldHVybiBfcHJpdmF0ZS0+Y29yZVJlc291cmNlOworICAgIHJldHVy
biAqX3ByaXZhdGUtPmNvcmVSZXNvdXJjZTsKIH0KIAogQGVuZApAQCAtMzA0LDggKzMwMSwxMyBA
QCAtIChpZClfaW5pdFdpdGhEYXRhOihOU0RhdGEgKilkYXRhCiAgICAgICAgIHJldHVybiBuaWw7
CiAgICAgfQogCi0gICAgX3ByaXZhdGUgPSBbW1dlYlJlc291cmNlUHJpdmF0ZSBhbGxvY10gaW5p
dFdpdGhDb3JlUmVzb3VyY2U6QXJjaGl2ZVJlc291cmNlOjpjcmVhdGUoU2hhcmVkQnVmZmVyOjp3
cmFwTlNEYXRhKGNvcHlEYXRhID8gW1tkYXRhIGNvcHldIGF1dG9yZWxlYXNlXSA6IGRhdGEpLCBV
UkwsIE1JTUVUeXBlLCB0ZXh0RW5jb2RpbmdOYW1lLCBmcmFtZU5hbWUsIHJlc3BvbnNlKV07Cisg
ICAgYXV0byBjb3JlUmVzb3VyY2UgPSBBcmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShTaGFyZWRCdWZm
ZXI6OndyYXBOU0RhdGEoY29weURhdGEgPyBbW2RhdGEgY29weV0gYXV0b3JlbGVhc2VdIDogZGF0
YSksIFVSTCwgTUlNRVR5cGUsIHRleHRFbmNvZGluZ05hbWUsIGZyYW1lTmFtZSwgcmVzcG9uc2Up
OworICAgIGlmICghY29yZVJlc291cmNlKSB7CisgICAgICAgIFtzZWxmIHJlbGVhc2VdOworICAg
ICAgICByZXR1cm4gbmlsOworICAgIH0KIAorICAgIF9wcml2YXRlID0gW1tXZWJSZXNvdXJjZVBy
aXZhdGUgYWxsb2NdIGluaXRXaXRoQ29yZVJlc291cmNlOmNvcmVSZXNvdXJjZS5yZWxlYXNlTm9u
TnVsbCgpXTsKICAgICByZXR1cm4gc2VsZjsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9tYWMvV2ViVmlldy9XZWJSZXNvdXJjZUludGVybmFsLmggYi9Tb3VyY2UvV2ViS2l0L21hYy9X
ZWJWaWV3L1dlYlJlc291cmNlSW50ZXJuYWwuaAppbmRleCAyZjQ2OTEyZThiZThkM2IzOTJjZjU3
MzkyZjA3OWRhYjlkODA5ZTI1Li44MGM5NzZlYjZiMzY1NGZjMWM2ODhjMmE5NmI4M2JkYjdhZjc3
MjUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlJlc291cmNlSW50
ZXJuYWwuaAorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlJlc291cmNlSW50ZXJu
YWwuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDggQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CkBAIC0yNywxMyArMjcsMTMgQEAKICAqLwogCiAjaW1wb3J0ICJXZWJSZXNvdXJjZVByaXZhdGUu
aCIKLSNpbXBvcnQgPHd0Zi9QYXNzUmVmUHRyLmg+CisjaW1wb3J0IDx3dGYvUmVmLmg+CiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKICAgICBjbGFzcyBBcmNoaXZlUmVzb3VyY2U7CiB9CiAKIEBpbnRl
cmZhY2UgV2ViUmVzb3VyY2UgKFdlYlJlc291cmNlSW50ZXJuYWwpCi0tIChpZClfaW5pdFdpdGhD
b3JlUmVzb3VyY2U6KFBhc3NSZWZQdHI8V2ViQ29yZTo6QXJjaGl2ZVJlc291cmNlPiljb3JlUmVz
b3VyY2U7Ci0tIChXZWJDb3JlOjpBcmNoaXZlUmVzb3VyY2UqKV9jb3JlUmVzb3VyY2U7CistIChp
ZClfaW5pdFdpdGhDb3JlUmVzb3VyY2U6KFJlZjxXZWJDb3JlOjpBcmNoaXZlUmVzb3VyY2U+JiYp
Y29yZVJlc291cmNlOworLSAoV2ViQ29yZTo6QXJjaGl2ZVJlc291cmNlJilfY29yZVJlc291cmNl
OwogQGVuZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSVdlYkFyY2hpdmUu
aCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUElXZWJBcmNoaXZlLmgKaW5kZXggZDk2YjU5NmRh
YmZiZTkwNjhhYzUzNDEwNjg3YmZhMmQxODYxOGIyMy4uODM3NTc3N2RiODBmZTA3ZWFjODM0OTMw
MzNiZDE4NjRhYmFjN2E3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSVdl
YkFyY2hpdmUuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJV2ViQXJjaGl2ZS5oCkBA
IC0yOSw3ICsyOSw2IEBACiAjaWYgUExBVEZPUk0oQ09DT0EpCiAKICNpbmNsdWRlICJBUElPYmpl
Y3QuaCIKLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIu
aD4KIAogbmFtZXNwYWNlIEFQSSB7CkBAIC01MCw5ICs0OSw5IEBAIGNsYXNzIFdlYkFyY2hpdmUg
OiBwdWJsaWMgQVBJOjpPYmplY3RJbXBsPEFQSTo6T2JqZWN0OjpUeXBlOjpXZWJBcmNoaXZlPiB7
CiBwdWJsaWM6CiAgICAgdmlydHVhbCB+V2ViQXJjaGl2ZSgpOwogCi0gICAgc3RhdGljIFJlZjxX
ZWJBcmNoaXZlPiBjcmVhdGUoV2ViQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3VyY2UsIFBhc3NS
ZWZQdHI8QVBJOjpBcnJheT4gc3VicmVzb3VyY2VzLCBQYXNzUmVmUHRyPEFQSTo6QXJyYXk+IHN1
YmZyYW1lQXJjaGl2ZXMpOworICAgIHN0YXRpYyBSZWY8V2ViQXJjaGl2ZT4gY3JlYXRlKFdlYkFy
Y2hpdmVSZXNvdXJjZSogbWFpblJlc291cmNlLCBSZWZQdHI8QVBJOjpBcnJheT4mJiBzdWJyZXNv
dXJjZXMsIFJlZlB0cjxBUEk6OkFycmF5PiYmIHN1YmZyYW1lQXJjaGl2ZXMpOwogICAgIHN0YXRp
YyBSZWY8V2ViQXJjaGl2ZT4gY3JlYXRlKEFQSTo6RGF0YSopOwotICAgIHN0YXRpYyBSZWY8V2Vi
QXJjaGl2ZT4gY3JlYXRlKFBhc3NSZWZQdHI8V2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZT4pOwor
ICAgIHN0YXRpYyBSZWY8V2ViQXJjaGl2ZT4gY3JlYXRlKFJlZlB0cjxXZWJDb3JlOjpMZWdhY3lX
ZWJBcmNoaXZlPiYmKTsKICAgICBzdGF0aWMgUmVmPFdlYkFyY2hpdmU+IGNyZWF0ZShXZWJDb3Jl
OjpSYW5nZSopOwogCiAgICAgV2ViQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3VyY2UoKTsKQEAg
LTY0LDkgKzYzLDkgQEAgcHVibGljOgogICAgIFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hpdmUqIGNv
cmVMZWdhY3lXZWJBcmNoaXZlKCk7CiAKIHByaXZhdGU6Ci0gICAgV2ViQXJjaGl2ZShXZWJBcmNo
aXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSwgUGFzc1JlZlB0cjxBUEk6OkFycmF5PiBzdWJyZXNv
dXJjZXMsIFBhc3NSZWZQdHI8QVBJOjpBcnJheT4gc3ViZnJhbWVBcmNoaXZlcyk7CisgICAgV2Vi
QXJjaGl2ZShXZWJBcmNoaXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSwgUmVmUHRyPEFQSTo6QXJy
YXk+JiYgc3VicmVzb3VyY2VzLCBSZWZQdHI8QVBJOjpBcnJheT4mJiBzdWJmcmFtZUFyY2hpdmVz
KTsKICAgICBXZWJBcmNoaXZlKEFQSTo6RGF0YSopOwotICAgIFdlYkFyY2hpdmUoUGFzc1JlZlB0
cjxXZWJDb3JlOjpMZWdhY3lXZWJBcmNoaXZlPik7CisgICAgV2ViQXJjaGl2ZShSZWZQdHI8V2Vi
Q29yZTo6TGVnYWN5V2ViQXJjaGl2ZT4mJik7CiAKICAgICBSZWZQdHI8V2ViQ29yZTo6TGVnYWN5
V2ViQXJjaGl2ZT4gbV9sZWdhY3lXZWJBcmNoaXZlOwogICAgIFJlZlB0cjxXZWJBcmNoaXZlUmVz
b3VyY2U+IG1fY2FjaGVkTWFpblJlc291cmNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
U2hhcmVkL0FQSVdlYkFyY2hpdmUubW0gYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJV2ViQXJj
aGl2ZS5tbQppbmRleCA5MjkwM2IzNDdhNDlmY2VjZmE2YzM1YzU5ZTJmNmQ2OTE2ZDk4MmU5Li5m
MmYwZmUwMTcxZjllMzMzMTQ0N2QzNmQwYTQ3YzZkYmUwMWEyMzJlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9TaGFyZWQvQVBJV2ViQXJjaGl2ZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9T
aGFyZWQvQVBJV2ViQXJjaGl2ZS5tbQpAQCAtMzgsOSArMzgsOSBAQCB1c2luZyBuYW1lc3BhY2Ug
V2ViQ29yZTsKIAogbmFtZXNwYWNlIEFQSSB7CiAKLVJlZjxXZWJBcmNoaXZlPiBXZWJBcmNoaXZl
OjpjcmVhdGUoV2ViQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3VyY2UsIFBhc3NSZWZQdHI8QVBJ
OjpBcnJheT4gc3VicmVzb3VyY2VzLCBQYXNzUmVmUHRyPEFQSTo6QXJyYXk+IHN1YmZyYW1lQXJj
aGl2ZXMpCitSZWY8V2ViQXJjaGl2ZT4gV2ViQXJjaGl2ZTo6Y3JlYXRlKFdlYkFyY2hpdmVSZXNv
dXJjZSogbWFpblJlc291cmNlLCBSZWZQdHI8QVBJOjpBcnJheT4mJiBzdWJyZXNvdXJjZXMsIFJl
ZlB0cjxBUEk6OkFycmF5PiYmIHN1YmZyYW1lQXJjaGl2ZXMpCiB7Ci0gICAgcmV0dXJuIGFkb3B0
UmVmKCpuZXcgV2ViQXJjaGl2ZShtYWluUmVzb3VyY2UsIHN1YnJlc291cmNlcywgc3ViZnJhbWVB
cmNoaXZlcykpOworICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYkFyY2hpdmUobWFpblJlc291
cmNlLCBXVEZNb3ZlKHN1YnJlc291cmNlcyksIFdURk1vdmUoc3ViZnJhbWVBcmNoaXZlcykpKTsK
IH0KIAogUmVmPFdlYkFyY2hpdmU+IFdlYkFyY2hpdmU6OmNyZWF0ZShBUEk6OkRhdGEqIGRhdGEp
CkBAIC00OCw5ICs0OCw5IEBAIFJlZjxXZWJBcmNoaXZlPiBXZWJBcmNoaXZlOjpjcmVhdGUoQVBJ
OjpEYXRhKiBkYXRhKQogICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYkFyY2hpdmUoZGF0YSkp
OwogfQogCi1SZWY8V2ViQXJjaGl2ZT4gV2ViQXJjaGl2ZTo6Y3JlYXRlKFBhc3NSZWZQdHI8TGVn
YWN5V2ViQXJjaGl2ZT4gbGVnYWN5V2ViQXJjaGl2ZSkKK1JlZjxXZWJBcmNoaXZlPiBXZWJBcmNo
aXZlOjpjcmVhdGUoUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+JiYgbGVnYWN5V2ViQXJjaGl2ZSkK
IHsKLSAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBXZWJBcmNoaXZlKGxlZ2FjeVdlYkFyY2hpdmUp
KTsKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBXZWJBcmNoaXZlKGxlZ2FjeVdlYkFyY2hpdmUu
cmVsZWFzZU5vbk51bGwoKSkpOwogfQogCiBSZWY8V2ViQXJjaGl2ZT4gV2ViQXJjaGl2ZTo6Y3Jl
YXRlKFJhbmdlKiByYW5nZSkKQEAgLTU4LDMxICs1OCwzMiBAQCBSZWY8V2ViQXJjaGl2ZT4gV2Vi
QXJjaGl2ZTo6Y3JlYXRlKFJhbmdlKiByYW5nZSkKICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBX
ZWJBcmNoaXZlKExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShyYW5nZSkpKTsKIH0KIAotV2ViQXJj
aGl2ZTo6V2ViQXJjaGl2ZShXZWJBcmNoaXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSwgUGFzc1Jl
ZlB0cjxBUEk6OkFycmF5PiBzdWJyZXNvdXJjZXMsIFBhc3NSZWZQdHI8QVBJOjpBcnJheT4gc3Vi
ZnJhbWVBcmNoaXZlcykKK1dlYkFyY2hpdmU6OldlYkFyY2hpdmUoV2ViQXJjaGl2ZVJlc291cmNl
KiBtYWluUmVzb3VyY2UsIFJlZlB0cjxBUEk6OkFycmF5PiYmIHN1YnJlc291cmNlcywgUmVmUHRy
PEFQSTo6QXJyYXk+JiYgc3ViZnJhbWVBcmNoaXZlcykKICAgICA6IG1fY2FjaGVkTWFpblJlc291
cmNlKG1haW5SZXNvdXJjZSkKICAgICAsIG1fY2FjaGVkU3VicmVzb3VyY2VzKHN1YnJlc291cmNl
cykKICAgICAsIG1fY2FjaGVkU3ViZnJhbWVBcmNoaXZlcyhzdWJmcmFtZUFyY2hpdmVzKQogewot
ICAgIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IGNvcmVNYWluUmVzb3VyY2UgPSBtX2NhY2hlZE1h
aW5SZXNvdXJjZS0+Y29yZUFyY2hpdmVSZXNvdXJjZSgpOworICAgIGF1dG8gY29yZU1haW5SZXNv
dXJjZSA9IG1fY2FjaGVkTWFpblJlc291cmNlLT5jb3JlQXJjaGl2ZVJlc291cmNlKCk7CiAKLSAg
ICBWZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+IGNvcmVBcmNoaXZlUmVzb3VyY2VzOwor
ICAgIFZlY3RvcjxSZWY8QXJjaGl2ZVJlc291cmNlPj4gY29yZUFyY2hpdmVSZXNvdXJjZXM7CiAg
ICAgY29yZUFyY2hpdmVSZXNvdXJjZXMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShtX2NhY2hlZFN1
YnJlc291cmNlcy0+c2l6ZSgpKTsKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1fY2FjaGVk
U3VicmVzb3VyY2VzLT5zaXplKCk7ICsraSkgewotICAgICAgICBSZWZQdHI8V2ViQXJjaGl2ZVJl
c291cmNlPiByZXNvdXJjZSA9IG1fY2FjaGVkU3VicmVzb3VyY2VzLT5hdDxXZWJBcmNoaXZlUmVz
b3VyY2U+KGkpOworICAgICAgICBhdXRvIHJlc291cmNlID0gbV9jYWNoZWRTdWJyZXNvdXJjZXMt
PmF0PFdlYkFyY2hpdmVSZXNvdXJjZT4oaSk7CiAgICAgICAgIEFTU0VSVChyZXNvdXJjZSk7Ci0g
ICAgICAgIGNvcmVBcmNoaXZlUmVzb3VyY2VzLnVuY2hlY2tlZEFwcGVuZChyZXNvdXJjZS0+Y29y
ZUFyY2hpdmVSZXNvdXJjZSgpKTsKKyAgICAgICAgQVNTRVJUKHJlc291cmNlLT5jb3JlQXJjaGl2
ZVJlc291cmNlKCkpOworICAgICAgICBjb3JlQXJjaGl2ZVJlc291cmNlcy51bmNoZWNrZWRBcHBl
bmQoKnJlc291cmNlLT5jb3JlQXJjaGl2ZVJlc291cmNlKCkpOwogICAgIH0KIAotICAgIFZlY3Rv
cjxSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4+IGNvcmVTdWJmcmFtZUxlZ2FjeVdlYkFyY2hpdmVz
OworICAgIFZlY3RvcjxSZWY8TGVnYWN5V2ViQXJjaGl2ZT4+IGNvcmVTdWJmcmFtZUxlZ2FjeVdl
YkFyY2hpdmVzOwogICAgIGNvcmVTdWJmcmFtZUxlZ2FjeVdlYkFyY2hpdmVzLnJlc2VydmVJbml0
aWFsQ2FwYWNpdHkobV9jYWNoZWRTdWJmcmFtZUFyY2hpdmVzLT5zaXplKCkpOwotCiAgICAgZm9y
IChzaXplX3QgaSA9IDA7IGkgPCBtX2NhY2hlZFN1YmZyYW1lQXJjaGl2ZXMtPnNpemUoKTsgKytp
KSB7Ci0gICAgICAgIFJlZlB0cjxXZWJBcmNoaXZlPiBzdWJmcmFtZVdlYkFyY2hpdmUgPSBtX2Nh
Y2hlZFN1YmZyYW1lQXJjaGl2ZXMtPmF0PFdlYkFyY2hpdmU+KGkpOworICAgICAgICBhdXRvIHN1
YmZyYW1lV2ViQXJjaGl2ZSA9IG1fY2FjaGVkU3ViZnJhbWVBcmNoaXZlcy0+YXQ8V2ViQXJjaGl2
ZT4oaSk7CiAgICAgICAgIEFTU0VSVChzdWJmcmFtZVdlYkFyY2hpdmUpOwotICAgICAgICBjb3Jl
U3ViZnJhbWVMZWdhY3lXZWJBcmNoaXZlcy51bmNoZWNrZWRBcHBlbmQoc3ViZnJhbWVXZWJBcmNo
aXZlLT5jb3JlTGVnYWN5V2ViQXJjaGl2ZSgpKTsKKyAgICAgICAgQVNTRVJUKHN1YmZyYW1lV2Vi
QXJjaGl2ZS0+Y29yZUxlZ2FjeVdlYkFyY2hpdmUoKSk7CisgICAgICAgIGNvcmVTdWJmcmFtZUxl
Z2FjeVdlYkFyY2hpdmVzLnVuY2hlY2tlZEFwcGVuZCgqc3ViZnJhbWVXZWJBcmNoaXZlLT5jb3Jl
TGVnYWN5V2ViQXJjaGl2ZSgpKTsKICAgICB9CiAKLSAgICBtX2xlZ2FjeVdlYkFyY2hpdmUgPSBM
ZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoV1RGTW92ZShjb3JlTWFpblJlc291cmNlKSwgV1RGTW92
ZShjb3JlQXJjaGl2ZVJlc291cmNlcyksIFdURk1vdmUoY29yZVN1YmZyYW1lTGVnYWN5V2ViQXJj
aGl2ZXMpKTsKKyAgICBtX2xlZ2FjeVdlYkFyY2hpdmUgPSBMZWdhY3lXZWJBcmNoaXZlOjpjcmVh
dGUoKmNvcmVNYWluUmVzb3VyY2UsIFdURk1vdmUoY29yZUFyY2hpdmVSZXNvdXJjZXMpLCBXVEZN
b3ZlKGNvcmVTdWJmcmFtZUxlZ2FjeVdlYkFyY2hpdmVzKSk7CiB9CiAKIFdlYkFyY2hpdmU6Oldl
YkFyY2hpdmUoQVBJOjpEYXRhKiBkYXRhKQpAQCAtOTAsNyArOTEsNyBAQCBXZWJBcmNoaXZlOjpX
ZWJBcmNoaXZlKEFQSTo6RGF0YSogZGF0YSkKICAgICBtX2xlZ2FjeVdlYkFyY2hpdmUgPSBMZWdh
Y3lXZWJBcmNoaXZlOjpjcmVhdGUoU2hhcmVkQnVmZmVyOjpjcmVhdGUoZGF0YS0+Ynl0ZXMoKSwg
ZGF0YS0+c2l6ZSgpKS5nZXQoKSk7CiB9CiAKLVdlYkFyY2hpdmU6OldlYkFyY2hpdmUoUGFzc1Jl
ZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBsZWdhY3lXZWJBcmNoaXZlKQorV2ViQXJjaGl2ZTo6V2Vi
QXJjaGl2ZShSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4mJiBsZWdhY3lXZWJBcmNoaXZlKQogICAg
IDogbV9sZWdhY3lXZWJBcmNoaXZlKGxlZ2FjeVdlYkFyY2hpdmUpCiB7CiB9CkBAIC0xMTEsMTAg
KzExMiw4IEBAIEFQSTo6QXJyYXkqIFdlYkFyY2hpdmU6OnN1YnJlc291cmNlcygpCiAgICAgaWYg
KCFtX2NhY2hlZFN1YnJlc291cmNlcykgewogICAgICAgICBWZWN0b3I8UmVmUHRyPEFQSTo6T2Jq
ZWN0Pj4gc3VicmVzb3VyY2VzOwogICAgICAgICBzdWJyZXNvdXJjZXMucmVzZXJ2ZUluaXRpYWxD
YXBhY2l0eShtX2xlZ2FjeVdlYkFyY2hpdmUtPnN1YnJlc291cmNlcygpLnNpemUoKSk7Ci0KLSAg
ICAgICAgZm9yIChjb25zdCBhdXRvJiBzdWJyZXNvdXJjZSA6IG1fbGVnYWN5V2ViQXJjaGl2ZS0+
c3VicmVzb3VyY2VzKCkpCi0gICAgICAgICAgICBzdWJyZXNvdXJjZXMudW5jaGVja2VkQXBwZW5k
KFdlYkFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKHN1YnJlc291cmNlKSk7Ci0KKyAgICAgICAgZm9y
IChhdXRvJiBzdWJyZXNvdXJjZSA6IG1fbGVnYWN5V2ViQXJjaGl2ZS0+c3VicmVzb3VyY2VzKCkp
CisgICAgICAgICAgICBzdWJyZXNvdXJjZXMudW5jaGVja2VkQXBwZW5kKFdlYkFyY2hpdmVSZXNv
dXJjZTo6Y3JlYXRlKHN1YnJlc291cmNlLnB0cigpKSk7CiAgICAgICAgIG1fY2FjaGVkU3VicmVz
b3VyY2VzID0gQVBJOjpBcnJheTo6Y3JlYXRlKFdURk1vdmUoc3VicmVzb3VyY2VzKSk7CiAgICAg
fQogCkBAIC0xMjYsMTAgKzEyNSw4IEBAIEFQSTo6QXJyYXkqIFdlYkFyY2hpdmU6OnN1YmZyYW1l
QXJjaGl2ZXMoKQogICAgIGlmICghbV9jYWNoZWRTdWJmcmFtZUFyY2hpdmVzKSB7CiAgICAgICAg
IFZlY3RvcjxSZWZQdHI8QVBJOjpPYmplY3Q+PiBzdWJmcmFtZVdlYkFyY2hpdmVzOwogICAgICAg
ICBzdWJmcmFtZVdlYkFyY2hpdmVzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobV9sZWdhY3lXZWJB
cmNoaXZlLT5zdWJmcmFtZUFyY2hpdmVzKCkuc2l6ZSgpKTsKLQotICAgICAgICBmb3IgKGNvbnN0
IGF1dG8mIHN1YmZyYW1lQXJjaGl2ZSA6IG1fbGVnYWN5V2ViQXJjaGl2ZS0+c3ViZnJhbWVBcmNo
aXZlcygpKQotICAgICAgICAgICAgc3ViZnJhbWVXZWJBcmNoaXZlcy51bmNoZWNrZWRBcHBlbmQo
V2ViQXJjaGl2ZTo6Y3JlYXRlKHN0YXRpY19jYXN0PExlZ2FjeVdlYkFyY2hpdmUqPihzdWJmcmFt
ZUFyY2hpdmUuZ2V0KCkpKSk7Ci0KKyAgICAgICAgZm9yIChhdXRvJiBzdWJmcmFtZUFyY2hpdmUg
OiBtX2xlZ2FjeVdlYkFyY2hpdmUtPnN1YmZyYW1lQXJjaGl2ZXMoKSkKKyAgICAgICAgICAgIHN1
YmZyYW1lV2ViQXJjaGl2ZXMudW5jaGVja2VkQXBwZW5kKFdlYkFyY2hpdmU6OmNyZWF0ZShzdGF0
aWNfY2FzdDxMZWdhY3lXZWJBcmNoaXZlKj4oc3ViZnJhbWVBcmNoaXZlLnB0cigpKSkpOwogICAg
ICAgICBtX2NhY2hlZFN1YmZyYW1lQXJjaGl2ZXMgPSBBUEk6OkFycmF5OjpjcmVhdGUoV1RGTW92
ZShzdWJmcmFtZVdlYkFyY2hpdmVzKSk7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9TaGFyZWQvVGV4dENoZWNrZXJTdGF0ZS5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1Rl
eHRDaGVja2VyU3RhdGUuaAppbmRleCBiY2M5ZmVjY2NjYjJmNjliNzY3OTg0Njg1MTljZDQyYjAz
N2NhMmRkLi5jZTY2ZjEwMjUwMjNhYWRlZjg4ZDM1Nzg2Nzg5OTg2MTA5YjJjY2ZiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvVGV4dENoZWNrZXJTdGF0ZS5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL1NoYXJlZC9UZXh0Q2hlY2tlclN0YXRlLmgKQEAgLTIzLDIzICsyMywyMiBAQAog
ICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgVGV4dENo
ZWNrZXJTdGF0ZV9oCi0jZGVmaW5lIFRleHRDaGVja2VyU3RhdGVfaAorI3ByYWdtYSBvbmNlCiAK
ICNpbmNsdWRlICJBcmd1bWVudENvZGVycy5oIgogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogc3Ry
dWN0IFRleHRDaGVja2VyU3RhdGUgewotICAgIGJvb2wgaXNDb250aW51b3VzU3BlbGxDaGVja2lu
Z0VuYWJsZWQ7Ci0gICAgYm9vbCBpc0dyYW1tYXJDaGVja2luZ0VuYWJsZWQ7CisgICAgYm9vbCBp
c0NvbnRpbnVvdXNTcGVsbENoZWNraW5nRW5hYmxlZCB7IGZhbHNlIH07CisgICAgYm9vbCBpc0dy
YW1tYXJDaGVja2luZ0VuYWJsZWQgeyBmYWxzZSB9OwogCiAjaWYgVVNFKEFQUEtJVCkKLSAgICBi
b29sIGlzQXV0b21hdGljU3BlbGxpbmdDb3JyZWN0aW9uRW5hYmxlZDsKLSAgICBib29sIGlzQXV0
b21hdGljUXVvdGVTdWJzdGl0dXRpb25FbmFibGVkOwotICAgIGJvb2wgaXNBdXRvbWF0aWNEYXNo
U3Vic3RpdHV0aW9uRW5hYmxlZDsKLSAgICBib29sIGlzQXV0b21hdGljTGlua0RldGVjdGlvbkVu
YWJsZWQ7Ci0gICAgYm9vbCBpc0F1dG9tYXRpY1RleHRSZXBsYWNlbWVudEVuYWJsZWQ7CisgICAg
Ym9vbCBpc0F1dG9tYXRpY1NwZWxsaW5nQ29ycmVjdGlvbkVuYWJsZWQgeyBmYWxzZSB9OworICAg
IGJvb2wgaXNBdXRvbWF0aWNRdW90ZVN1YnN0aXR1dGlvbkVuYWJsZWQgeyBmYWxzZSB9OworICAg
IGJvb2wgaXNBdXRvbWF0aWNEYXNoU3Vic3RpdHV0aW9uRW5hYmxlZCB7IGZhbHNlIH07CisgICAg
Ym9vbCBpc0F1dG9tYXRpY0xpbmtEZXRlY3Rpb25FbmFibGVkIHsgZmFsc2UgfTsKKyAgICBib29s
IGlzQXV0b21hdGljVGV4dFJlcGxhY2VtZW50RW5hYmxlZCB7IGZhbHNlIH07CiAjZW5kaWYKIH07
CiAKQEAgLTQ4LDUgKzQ3LDMgQEAgc3RydWN0IFRleHRDaGVja2VyU3RhdGUgewogbmFtZXNwYWNl
IElQQyB7CiB0ZW1wbGF0ZTw+IHN0cnVjdCBBcmd1bWVudENvZGVyPFdlYktpdDo6VGV4dENoZWNr
ZXJTdGF0ZT4gOiBTaW1wbGVBcmd1bWVudENvZGVyPFdlYktpdDo6VGV4dENoZWNrZXJTdGF0ZT4g
eyB9OwogfTsKLQotI2VuZGlmIC8vIFRleHRDaGVja2VyU3RhdGVfaApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkljb25EYXRhYmFzZS5jcHAgYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvV2ViSWNvbkRhdGFiYXNlLmNwcAppbmRleCA1NmY1ZGExYTIwMTNhMDlhNjlh
NWZiZWEyNGZlNGE2YmJiYjBhMDA0Li44OTJjMDVmZGFjZjRiMzNhYzg1YzZjNDU1ZDU4M2E0ZTg3
OWZiYmYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViSWNvbkRhdGFi
YXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViSWNvbkRhdGFiYXNlLmNw
cApAQCAtMTMwLDcgKzEzMCw3IEBAIHZvaWQgV2ViSWNvbkRhdGFiYXNlOjpzZXRJY29uRGF0YUZv
ckljb25VUkwoY29uc3QgSVBDOjpEYXRhUmVmZXJlbmNlJiBpY29uRGF0YSwKICAgICBMT0coSWNv
bkRhdGFiYXNlLCAiV0syIFVJUHJvY2VzcyBzZXR0aW5nIGljb24gZGF0YSAoJWkgYnl0ZXMpIGZv
ciBwYWdlIFVSTCAlcyIsIChpbnQpaWNvbkRhdGEuc2l6ZSgpLCBpY29uVVJMLmFzY2lpKCkuZGF0
YSgpKTsKICAgICBpZiAoIW1faWNvbkRhdGFiYXNlSW1wbCkKICAgICAgICAgcmV0dXJuOwotICAg
IG1faWNvbkRhdGFiYXNlSW1wbC0+c2V0SWNvbkRhdGFGb3JJY29uVVJMKFNoYXJlZEJ1ZmZlcjo6
Y3JlYXRlKGljb25EYXRhLmRhdGEoKSwgaWNvbkRhdGEuc2l6ZSgpKSwgaWNvblVSTCk7CisgICAg
bV9pY29uRGF0YWJhc2VJbXBsLT5zZXRJY29uRGF0YUZvckljb25VUkwoU2hhcmVkQnVmZmVyOjpj
cmVhdGUoaWNvbkRhdGEuZGF0YSgpLCBpY29uRGF0YS5zaXplKCkpLnB0cigpLCBpY29uVVJMKTsK
IH0KIAogdm9pZCBXZWJJY29uRGF0YWJhc2U6OnN5bmNocm9ub3VzSWNvbkRhdGFGb3JQYWdlVVJM
KGNvbnN0IFN0cmluZyYsIElQQzo6RGF0YVJlZmVyZW5jZSYgaWNvbkRhdGEpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmggYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKaW5kZXggNzU4YzIzOTU5ODUwNTI0Mzk4NmMwNzM3
NTE0OWMzZWVlYjEzNzI4Ni4uNDYwNmRmMTE0YWQ3Nzc0ZTQzNzk0MGU0ZmMwOTg3YTlmMWFkZjZh
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaApAQCAtMTg2LDcgKzE4
Niw2IEBAIGNsYXNzIFBhZ2VDbGllbnQ7CiBjbGFzcyBSZW1vdGVMYXllclRyZWVTY3JvbGxpbmdQ
ZXJmb3JtYW5jZURhdGE7CiBjbGFzcyBSZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbjsKIGNsYXNz
IFJlbW90ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yUHJveHk7Ci1jbGFzcyBTdHJpbmdQYWlyVmVjdG9y
OwogY2xhc3MgVXNlckRhdGE7CiBjbGFzcyBWaWV3U25hcHNob3Q7CiBjbGFzcyBWaXNpdGVkTGlu
a1N0b3JlOwpAQCAtMjA2LDExICsyMDUsMTIgQEAgY2xhc3MgV2ViUHJvY2Vzc1Byb3h5OwogY2xh
c3MgV2ViVXNlckNvbnRlbnRDb250cm9sbGVyUHJveHk7CiBjbGFzcyBXZWJXaGVlbEV2ZW50Owog
Y2xhc3MgV2Vic2l0ZURhdGFTdG9yZTsKK2NsYXNzIEdhbWVwYWREYXRhOworCiBzdHJ1Y3QgQXR0
cmlidXRlZFN0cmluZzsKIHN0cnVjdCBDb2xvclNwYWNlRGF0YTsKIHN0cnVjdCBFZGl0aW5nUmFu
Z2U7CiBzdHJ1Y3QgRWRpdG9yU3RhdGU7Ci1jbGFzcyBHYW1lcGFkRGF0YTsKIHN0cnVjdCBJbnRl
cmFjdGlvbkluZm9ybWF0aW9uUmVxdWVzdDsKIHN0cnVjdCBMb2FkUGFyYW1ldGVyczsKIHN0cnVj
dCBQbGF0Zm9ybVBvcHVwTWVudURhdGE7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5jcHAgYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5jcHAKaW5k
ZXggMzNmZTU4N2U0MTU3NjM4NDAwMzMxNTA5ZDhmN2IyNTNjNzMzZTg5ZC4uNTQyZWRkZDZkYzA5
YjNiYWMxNDdlODNlMWNiNzY0NTk4OTg5N2IzNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9JY29uRGF0YWJhc2UvV2ViSWNvbkRhdGFiYXNlUHJveHkuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSWNvbkRhdGFiYXNlL1dlYkljb25EYXRhYmFzZVByb3h5
LmNwcApAQCAtNDIsMTEgKzQyLDEwIEBAIFdlYkljb25EYXRhYmFzZVByb3h5Ojp+V2ViSWNvbkRh
dGFiYXNlUHJveHkoKQogewogfQogCi1XZWJJY29uRGF0YWJhc2VQcm94eTo6V2ViSWNvbkRhdGFi
YXNlUHJveHkoV2ViUHJvY2VzcyogcHJvY2VzcykKLSAgICA6IG1faXNFbmFibGVkKGZhbHNlKQot
ICAgICwgbV9wcm9jZXNzKHByb2Nlc3MpCitXZWJJY29uRGF0YWJhc2VQcm94eTo6V2ViSWNvbkRh
dGFiYXNlUHJveHkoV2ViUHJvY2VzcyYgcHJvY2VzcykKKyAgICA6IG1fcHJvY2Vzcyhwcm9jZXNz
KQogewotICAgIG1fcHJvY2Vzcy0+YWRkTWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpXZWJJY29u
RGF0YWJhc2VQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCAqdGhpcyk7CisgICAgbV9wcm9j
ZXNzLmFkZE1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlUHJveHk6Om1l
c3NhZ2VSZWNlaXZlck5hbWUoKSwgKnRoaXMpOwogfQogCiBib29sIFdlYkljb25EYXRhYmFzZVBy
b3h5Ojppc0VuYWJsZWQoKSBjb25zdApAQCAtNjUsMTggKzY0LDE4IEBAIHZvaWQgV2ViSWNvbkRh
dGFiYXNlUHJveHk6OnNldEVuYWJsZWQoYm9vbCBlbmFibGVkKQogCiB2b2lkIFdlYkljb25EYXRh
YmFzZVByb3h5OjpyZXRhaW5JY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIHBhZ2VVUkwpCiB7
Ci0gICAgbV9wcm9jZXNzLT5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2Vz
OjpXZWJQcm9jZXNzUHJveHk6OlJldGFpbkljb25Gb3JQYWdlVVJMKHBhZ2VVUkwpLCAwKTsKKyAg
ICBtX3Byb2Nlc3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2Vi
UHJvY2Vzc1Byb3h5OjpSZXRhaW5JY29uRm9yUGFnZVVSTChwYWdlVVJMKSwgMCk7CiB9CiAKIHZv
aWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnJlbGVhc2VJY29uRm9yUGFnZVVSTChjb25zdCBTdHJp
bmcmIHBhZ2VVUkwpCiB7Ci0gICAgbV9wcm9jZXNzLT5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigp
LT5zZW5kKE1lc3NhZ2VzOjpXZWJQcm9jZXNzUHJveHk6OlJlbGVhc2VJY29uRm9yUGFnZVVSTChw
YWdlVVJMKSwgMCk7CisgICAgbV9wcm9jZXNzLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNl
bmQoTWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6UmVsZWFzZUljb25Gb3JQYWdlVVJMKHBhZ2VV
UkwpLCAwKTsKIH0KIAogSW1hZ2UqIFdlYkljb25EYXRhYmFzZVByb3h5OjpzeW5jaHJvbm91c0lj
b25Gb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYgcGFnZVVSTCwgY29uc3QgSW50U2l6ZSYgLypzaXpl
Ki8pCiB7CiAgICAgSVBDOjpEYXRhUmVmZXJlbmNlIHJlc3VsdDsKLSAgICBpZiAoIW1fcHJvY2Vz
cy0+cGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYkljb25E
YXRhYmFzZTo6U3luY2hyb25vdXNJY29uRGF0YUZvclBhZ2VVUkwocGFnZVVSTCksIE1lc3NhZ2Vz
OjpXZWJJY29uRGF0YWJhc2U6OlN5bmNocm9ub3VzSWNvbkRhdGFGb3JQYWdlVVJMOjpSZXBseShy
ZXN1bHQpLCAwKSkKKyAgICBpZiAoIW1fcHJvY2Vzcy5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigp
LT5zZW5kU3luYyhNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpTeW5jaHJvbm91c0ljb25EYXRh
Rm9yUGFnZVVSTChwYWdlVVJMKSwgTWVzc2FnZXM6OldlYkljb25EYXRhYmFzZTo6U3luY2hyb25v
dXNJY29uRGF0YUZvclBhZ2VVUkw6OlJlcGx5KHJlc3VsdCksIDApKQogICAgICAgICByZXR1cm4g
MDsKICAgICAKICAgICAvLyBGSVhNRTogUmV0dXJuIEltYWdlIGNyZWF0ZWQgd2l0aCB0aGUgYWJv
dmUgZGF0YS4KQEAgLTExMCwzNCArMTA5LDMyIEBAIGJvb2wgV2ViSWNvbkRhdGFiYXNlUHJveHk6
OnN1cHBvcnRzQXN5bmNocm9ub3VzTW9kZSgpCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLXZvaWQg
V2ViSWNvbkRhdGFiYXNlUHJveHk6OmxvYWREZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5n
JiBpY29uVVJMLCBQYXNzUmVmUHRyPFdlYkNvcmU6Okljb25Mb2FkRGVjaXNpb25DYWxsYmFjaz4g
Y2FsbGJhY2spCit2b2lkIFdlYkljb25EYXRhYmFzZVByb3h5Ojpsb2FkRGVjaXNpb25Gb3JJY29u
VVJMKGNvbnN0IFN0cmluZyYgaWNvblVSTCwgV2ViQ29yZTo6SWNvbkxvYWREZWNpc2lvbkNhbGxi
YWNrJiBjYWxsYmFjaykKIHsKLSAgICB1aW50NjRfdCBpZCA9IGNhbGxiYWNrLT5jYWxsYmFja0lE
KCk7Ci0gICAgbV9pY29uTG9hZERlY2lzaW9uQ2FsbGJhY2tzLmFkZChpZCwgY2FsbGJhY2spOwot
ICAgIAotICAgIG1fcHJvY2Vzcy0+cGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNz
YWdlczo6V2ViSWNvbkRhdGFiYXNlOjpHZXRMb2FkRGVjaXNpb25Gb3JJY29uVVJMKGljb25VUkws
IGlkKSwgMCk7CisgICAgdWludDY0X3QgaWQgPSBjYWxsYmFjay5jYWxsYmFja0lEKCk7CisgICAg
bV9pY29uTG9hZERlY2lzaW9uQ2FsbGJhY2tzLmFkZChpZCwgJmNhbGxiYWNrKTsKKyAgICBtX3By
b2Nlc3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViSWNvbkRh
dGFiYXNlOjpHZXRMb2FkRGVjaXNpb25Gb3JJY29uVVJMKGljb25VUkwsIGlkKSwgMCk7CiB9CiAK
IHZvaWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnJlY2VpdmVkSWNvbkxvYWREZWNpc2lvbihpbnQg
ZGVjaXNpb24sIHVpbnQ2NF90IGNhbGxiYWNrSUQpCiB7Ci0gICAgUmVmUHRyPFdlYkNvcmU6Oklj
b25Mb2FkRGVjaXNpb25DYWxsYmFjaz4gY2FsbGJhY2sgPSBtX2ljb25Mb2FkRGVjaXNpb25DYWxs
YmFja3MudGFrZShjYWxsYmFja0lEKTsKLSAgICBpZiAoY2FsbGJhY2spCisgICAgaWYgKGF1dG8g
Y2FsbGJhY2sgPSBtX2ljb25Mb2FkRGVjaXNpb25DYWxsYmFja3MudGFrZShjYWxsYmFja0lEKSkK
ICAgICAgICAgY2FsbGJhY2stPnBlcmZvcm1DYWxsYmFjayhzdGF0aWNfY2FzdDxXZWJDb3JlOjpJ
Y29uTG9hZERlY2lzaW9uPihkZWNpc2lvbikpOwogfQogCi12b2lkIFdlYkljb25EYXRhYmFzZVBy
b3h5OjppY29uRGF0YUZvckljb25VUkwoY29uc3QgU3RyaW5nJiAvKmljb25VUkwqLywgUGFzc1Jl
ZlB0cjxXZWJDb3JlOjpJY29uRGF0YUNhbGxiYWNrPikKK3ZvaWQgV2ViSWNvbkRhdGFiYXNlUHJv
eHk6Omljb25EYXRhRm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpJY29uRGF0YUNh
bGxiYWNrJikKIHsKIH0KIAogdm9pZCBXZWJJY29uRGF0YWJhc2VQcm94eTo6c2V0SWNvblVSTEZv
clBhZ2VVUkwoY29uc3QgU3RyaW5nJiBpY29uVVJMLCBjb25zdCBTdHJpbmcmIHBhZ2VVUkwpCiB7
Ci0gICAgbV9wcm9jZXNzLT5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2Vz
OjpXZWJJY29uRGF0YWJhc2U6OlNldEljb25VUkxGb3JQYWdlVVJMKGljb25VUkwsIHBhZ2VVUkwp
LCAwKTsKKyAgICBtX3Byb2Nlc3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNz
YWdlczo6V2ViSWNvbkRhdGFiYXNlOjpTZXRJY29uVVJMRm9yUGFnZVVSTChpY29uVVJMLCBwYWdl
VVJMKSwgMCk7CiB9CiAKLXZvaWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnNldEljb25EYXRhRm9y
SWNvblVSTChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaWNvbkRhdGEsIGNvbnN0IFN0cmluZyYg
aWNvblVSTCkKK3ZvaWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnNldEljb25EYXRhRm9ySWNvblVS
TChTaGFyZWRCdWZmZXIqIGljb25EYXRhLCBjb25zdCBTdHJpbmcmIGljb25VUkwpCiB7Ci0gICAg
SVBDOjpEYXRhUmVmZXJlbmNlIGRhdGEocmVpbnRlcnByZXRfY2FzdDxjb25zdCB1aW50OF90Kj4o
aWNvbkRhdGEgPyBpY29uRGF0YS0+ZGF0YSgpIDogMCksIGljb25EYXRhID8gaWNvbkRhdGEtPnNp
emUoKSA6IDApOwotICAgIG1fcHJvY2Vzcy0+cGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2Vu
ZChNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpTZXRJY29uRGF0YUZvckljb25VUkwoZGF0YSwg
aWNvblVSTCksIDApOworICAgIElQQzo6RGF0YVJlZmVyZW5jZSBkYXRhKHJlaW50ZXJwcmV0X2Nh
c3Q8Y29uc3QgdWludDhfdCo+KGljb25EYXRhID8gaWNvbkRhdGEtPmRhdGEoKSA6IG51bGxwdHIp
LCBpY29uRGF0YSA/IGljb25EYXRhLT5zaXplKCkgOiAwKTsKKyAgICBtX3Byb2Nlc3MucGFyZW50
UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpTZXRJ
Y29uRGF0YUZvckljb25VUkwoZGF0YSwgaWNvblVSTCksIDApOwogfQogCiB2b2lkIFdlYkljb25E
YXRhYmFzZVByb3h5Ojp1cmxJbXBvcnRGaW5pc2hlZCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5oIGIvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JY29uRGF0YWJhc2UvV2ViSWNvbkRhdGFiYXNlUHJveHku
aAppbmRleCA2MmEwNmMzZjk0ZjdkN2UwOTc2MzViNTJiNzhjNDMzOGViM2NhOGJkLi5iZGY4ZDRj
ZjYzYWJlOWNlYTNkMmFjMTk4MWU5MDZlYjY2MWY1YTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5oCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSWNvbkRhdGFiYXNlL1dlYkljb25EYXRhYmFzZVBy
b3h5LmgKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KICAqLwogCi0jaWZuZGVmIFdlYkljb25EYXRhYmFzZVByb3h5X2gKLSNkZWZpbmUgV2ViSWNv
bkRhdGFiYXNlUHJveHlfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJBUElPYmplY3QuaCIK
ICNpbmNsdWRlICJNZXNzYWdlUmVjZWl2ZXIuaCIKQEAgLTM3LDQzICszNiw0MSBAQCBuYW1lc3Bh
Y2UgV2ViS2l0IHsKIAogY2xhc3MgV2ViUHJvY2VzczsKIAotY2xhc3MgV2ViSWNvbkRhdGFiYXNl
UHJveHkgOiBwdWJsaWMgV2ViQ29yZTo6SWNvbkRhdGFiYXNlQmFzZSwgcHJpdmF0ZSBJUEM6Ok1l
c3NhZ2VSZWNlaXZlciB7CitjbGFzcyBXZWJJY29uRGF0YWJhc2VQcm94eSBmaW5hbCA6IHB1Ymxp
YyBXZWJDb3JlOjpJY29uRGF0YWJhc2VCYXNlLCBwcml2YXRlIElQQzo6TWVzc2FnZVJlY2VpdmVy
IHsKIHB1YmxpYzoKLSAgICBleHBsaWNpdCBXZWJJY29uRGF0YWJhc2VQcm94eShXZWJQcm9jZXNz
Kik7CisgICAgZXhwbGljaXQgV2ViSWNvbkRhdGFiYXNlUHJveHkoV2ViUHJvY2VzcyYpOwogICAg
IHZpcnR1YWwgfldlYkljb25EYXRhYmFzZVByb3h5KCk7CiAKLSAgICBib29sIGlzRW5hYmxlZCgp
IGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQgc2V0RW5hYmxlZChib29sKSBvdmVycmlkZTsKKyAg
ICB2b2lkIHNldEVuYWJsZWQoYm9vbCkgZmluYWw7CiAKLSAgICB2b2lkIHJldGFpbkljb25Gb3JQ
YWdlVVJMKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVsZWFzZUljb25Gb3JQ
YWdlVVJMKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0SWNvblVSTEZvclBh
Z2VVUkwoY29uc3QgU3RyaW5nJiwgY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBz
ZXRJY29uRGF0YUZvckljb25VUkwoUGFzc1JlZlB0cjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+LCBj
b25zdCBTdHJpbmcmKSBvdmVycmlkZTsKK3ByaXZhdGU6CisgICAgYm9vbCBpc0VuYWJsZWQoKSBj
b25zdCBmaW5hbDsKKworICAgIHZvaWQgcmV0YWluSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5n
JikgZmluYWw7CisgICAgdm9pZCByZWxlYXNlSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikg
ZmluYWw7CisgICAgdm9pZCBzZXRJY29uVVJMRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmLCBjb25z
dCBTdHJpbmcmKSBmaW5hbDsKKyAgICB2b2lkIHNldEljb25EYXRhRm9ySWNvblVSTChXZWJDb3Jl
OjpTaGFyZWRCdWZmZXIqLCBjb25zdCBTdHJpbmcmKSBmaW5hbDsKIAotICAgIFN0cmluZyBzeW5j
aHJvbm91c0ljb25VUkxGb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAgIGJv
b2wgc3luY2hyb25vdXNJY29uRGF0YUtub3duRm9ySWNvblVSTChjb25zdCBTdHJpbmcmKSBvdmVy
cmlkZTsKLSAgICBXZWJDb3JlOjpJY29uTG9hZERlY2lzaW9uIHN5bmNocm9ub3VzTG9hZERlY2lz
aW9uRm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIG92
ZXJyaWRlOwotICAgIFdlYkNvcmU6OkltYWdlKiBzeW5jaHJvbm91c0ljb25Gb3JQYWdlVVJMKGNv
bnN0IFN0cmluZyYsIGNvbnN0IFdlYkNvcmU6OkludFNpemUmKSBvdmVycmlkZTsKKyAgICBTdHJp
bmcgc3luY2hyb25vdXNJY29uVVJMRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmKSBmaW5hbDsKKyAg
ICBib29sIHN5bmNocm9ub3VzSWNvbkRhdGFLbm93bkZvckljb25VUkwoY29uc3QgU3RyaW5nJikg
ZmluYWw7CisgICAgV2ViQ29yZTo6SWNvbkxvYWREZWNpc2lvbiBzeW5jaHJvbm91c0xvYWREZWNp
c2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5nJiwgV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBm
aW5hbDsKKyAgICBXZWJDb3JlOjpJbWFnZSogc3luY2hyb25vdXNJY29uRm9yUGFnZVVSTChjb25z
dCBTdHJpbmcmLCBjb25zdCBXZWJDb3JlOjpJbnRTaXplJikgZmluYWw7CiAgICAgCi0gICAgLy8g
QXN5bmNocm9ub3VzIGNhbGxzIHdlIHNob3VsZCB1c2UgdG8gcmVwbGFjZSB0aGUgYWJvdmUgd2hl
biBzdXBwb3J0ZWQuCi0gICAgYm9vbCBzdXBwb3J0c0FzeW5jaHJvbm91c01vZGUoKSBvdmVycmlk
ZTsKLSAgICB2b2lkIGxvYWREZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5nJiwgUGFzc1Jl
ZlB0cjxXZWJDb3JlOjpJY29uTG9hZERlY2lzaW9uQ2FsbGJhY2s+KSBvdmVycmlkZTsKKyAgICBi
b29sIHN1cHBvcnRzQXN5bmNocm9ub3VzTW9kZSgpIGZpbmFsOworICAgIHZvaWQgbG9hZERlY2lz
aW9uRm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpJY29uTG9hZERlY2lzaW9uQ2Fs
bGJhY2smKSBmaW5hbDsKICAgICB2b2lkIHJlY2VpdmVkSWNvbkxvYWREZWNpc2lvbihpbnQgZGVj
aXNpb24sIHVpbnQ2NF90IGNhbGxiYWNrSUQpOwotICAgIHZvaWQgaWNvbkRhdGFGb3JJY29uVVJM
KGNvbnN0IFN0cmluZyYsIFBhc3NSZWZQdHI8V2ViQ29yZTo6SWNvbkRhdGFDYWxsYmFjaz4pIG92
ZXJyaWRlOworICAgIHZvaWQgaWNvbkRhdGFGb3JJY29uVVJMKGNvbnN0IFN0cmluZyYsIFdlYkNv
cmU6Okljb25EYXRhQ2FsbGJhY2smKSBmaW5hbDsKIAotcHJpdmF0ZToKICAgICAvLyBJUEM6Ok1l
c3NhZ2VSZWNlaXZlcgotICAgIHZvaWQgZGlkUmVjZWl2ZU1lc3NhZ2UoSVBDOjpDb25uZWN0aW9u
JiwgSVBDOjpEZWNvZGVyJikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRSZWNlaXZlTWVzc2FnZShJ
UEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXImKSBmaW5hbDsKICAgICAKICAgICAvLyBDYWxs
YmFja3MgZnJvbSB0aGUgVUlQcm9jZXNzCiAgICAgdm9pZCB1cmxJbXBvcnRGaW5pc2hlZCgpOwog
Ci0gICAgYm9vbCBtX2lzRW5hYmxlZDsKLSAgICBXZWJQcm9jZXNzKiBtX3Byb2Nlc3M7CisgICAg
Ym9vbCBtX2lzRW5hYmxlZCB7IGZhbHNlIH07CisgICAgV2ViUHJvY2VzcyYgbV9wcm9jZXNzOwog
ICAgIAogICAgIEhhc2hNYXA8dWludDY0X3QsIFJlZlB0cjxXZWJDb3JlOjpJY29uTG9hZERlY2lz
aW9uQ2FsbGJhY2s+PiBtX2ljb25Mb2FkRGVjaXNpb25DYWxsYmFja3M7CiB9OwogCiB9IC8vIG5h
bWVzcGFjZSBXZWJLaXQKLQotI2VuZGlmIC8vIFdlYkljb25EYXRhYmFzZVByb3h5X2gKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRC
dW5kbGVOYXZpZ2F0aW9uQWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5q
ZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uLmNwcAppbmRleCAxOTYz
YTFhMDI2NTUzOTEwYzJlZGM2YTY0N2EzOWRhOTllMmI4MTIxLi4zNTY5ZmQ4NzViZTg2Yzk1ODZm
MGVlN2IyNTAwMTNjOTdjM2M1M2RlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbi5jcHAKKysr
IGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRs
ZU5hdmlnYXRpb25BY3Rpb24uY3BwCkBAIC0xMDIsNyArMTAyLDcgQEAgUmVmPEluamVjdGVkQnVu
ZGxlTmF2aWdhdGlvbkFjdGlvbj4gSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uOjpjcmVh
dGUoV2ViRnIKICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBJbmplY3RlZEJ1bmRsZU5hdmlnYXRp
b25BY3Rpb24oZnJhbWUsIGFjdGlvbiwgZm9ybVN0YXRlKSk7CiB9CiAKLUluamVjdGVkQnVuZGxl
TmF2aWdhdGlvbkFjdGlvbjo6SW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uKFdlYkZyYW1l
KiBmcmFtZSwgY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgbmF2aWdhdGlvbkFjdGlvbiwgUGFzc1Jl
ZlB0cjxGb3JtU3RhdGU+IHBycEZvcm1TdGF0ZSkKK0luamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFj
dGlvbjo6SW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uKFdlYkZyYW1lKiBmcmFtZSwgY29u
c3QgTmF2aWdhdGlvbkFjdGlvbiYgbmF2aWdhdGlvbkFjdGlvbiwgUGFzc1JlZlB0cjxGb3JtU3Rh
dGU+IGZvcm1TdGF0ZSkKICAgICA6IG1fbmF2aWdhdGlvblR5cGUobmF2aWdhdGlvbkFjdGlvbi50
eXBlKCkpCiAgICAgLCBtX21vZGlmaWVycyhtb2RpZmllcnNGb3JOYXZpZ2F0aW9uQWN0aW9uKG5h
dmlnYXRpb25BY3Rpb24pKQogICAgICwgbV9tb3VzZUJ1dHRvbihXZWJNb3VzZUV2ZW50OjpOb0J1
dHRvbikKQEAgLTExNiwxMSArMTE2LDggQEAgSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9u
OjpJbmplY3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rpb24oV2ViRnJhbWUqIGZyYW1lLAogICAgICAg
ICBtX3N5bnRoZXRpY0NsaWNrVHlwZSA9IHN5bnRoZXRpY0NsaWNrVHlwZUZvck5hdmlnYXRpb25B
Y3Rpb24obmF2aWdhdGlvbkFjdGlvbik7CiAgICAgfQogCi0gICAgUmVmUHRyPEZvcm1TdGF0ZT4g
Zm9ybVN0YXRlID0gcHJwRm9ybVN0YXRlOwotICAgIGlmIChmb3JtU3RhdGUpIHsKLSAgICAgICAg
QVNTRVJUKGZvcm1TdGF0ZS0+Zm9ybSgpKTsKLSAgICAgICAgbV9mb3JtRWxlbWVudCAgID0gSW5q
ZWN0ZWRCdW5kbGVOb2RlSGFuZGxlOjpnZXRPckNyZWF0ZShmb3JtU3RhdGUtPmZvcm0oKSk7Ci0g
ICAgfQorICAgIGlmIChmb3JtU3RhdGUpCisgICAgICAgIG1fZm9ybUVsZW1lbnQgPSBJbmplY3Rl
ZEJ1bmRsZU5vZGVIYW5kbGU6OmdldE9yQ3JlYXRlKGZvcm1TdGF0ZS0+Zm9ybSgpKTsKIH0KIAog
fSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmNwcAppbmRleCAxMjEwMjUxZjU0ZDdmMjU1
NjVmODliZWY1NDQ3YmMxZDQ4YWFhNmQ1Li4zNjFmOWUyY2FiODI5ZDgzMjUwMGYzYTY0MTU0NTA1
NmExOTA0MGNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL05ldHdvcmsv
V2ViTG9hZGVyU3RyYXRlZ3kuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvTmV0
d29yay9XZWJMb2FkZXJTdHJhdGVneS5jcHAKQEAgLTE2Myw3ICsxNjMsNyBAQCB2b2lkIFdlYkxv
YWRlclN0cmF0ZWd5OjpzY2hlZHVsZUxvYWQoUmVzb3VyY2VMb2FkZXImIHJlc291cmNlTG9hZGVy
LCBDYWNoZWRSZXNvdQogICAgIH0KICNlbmRpZgogCi0gICAgaWYgKHJlc291cmNlTG9hZGVyLmRv
Y3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZFJlc291cmNl
KHJlc291cmNlTG9hZGVyLCByZXNvdXJjZUxvYWRlci5yZXF1ZXN0KCksIHJlc291cmNlTG9hZGVy
LnJlcXVlc3QoKS51cmwoKSkpIHsKKyAgICBpZiAocmVzb3VyY2VMb2FkZXIuZG9jdW1lbnRMb2Fk
ZXIoKS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS5tYXliZUxvYWRSZXNvdXJjZShyZXNvdXJjZUxv
YWRlciwgcmVzb3VyY2VMb2FkZXIucmVxdWVzdCgpLCByZXNvdXJjZUxvYWRlci5yZXF1ZXN0KCku
dXJsKCkpKSB7CiAgICAgICAgIExPRyhOZXR3b3JrU2NoZWR1bGluZywgIihXZWJQcm9jZXNzKSBX
ZWJMb2FkZXJTdHJhdGVneTo6c2NoZWR1bGVMb2FkLCB1cmwgJyVzJyB3aWxsIGJlIGxvYWRlZCBm
cm9tIGFwcGxpY2F0aW9uIGNhY2hlLiIsIHJlc291cmNlTG9hZGVyLnVybCgpLnN0cmluZygpLnV0
ZjgoKS5kYXRhKCkpOwogICAgICAgICBSRUxFQVNFX0xPR19JRl9BTExPV0VEKHJlc291cmNlTG9h
ZGVyLCAic2NoZWR1bGVMb2FkOiBVUkwgd2lsbCBiZSBsb2FkZWQgZnJvbSBhcHBsaWNhdGlvbiBj
YWNoZSAoZnJhbWUgPSAlcCwgcmVzb3VyY2VJRCA9ICUiIFBSSXU2NCAiKSIsIHJlc291cmNlTG9h
ZGVyLmZyYW1lKCksIGlkZW50aWZpZXIpOwogICAgICAgICBtX3dlYlJlc291cmNlTG9hZGVycy5z
ZXQoaWRlbnRpZmllciwgV2ViUmVzb3VyY2VMb2FkZXI6OmNyZWF0ZShyZXNvdXJjZUxvYWRlciwg
dHJhY2tpbmdQYXJhbWV0ZXJzKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlTG9hZGVyLmNwcAppbmRleCA3MzhiMWRjYzMzOTM3MjY5
NjhhNjJjNTczYzM4Mjg4ZDk3ZjdiM2QxLi4zOGE4ODJiYjhmNGU5MTAyNjBiOWU1MmQ4ZTU1ZGMx
MTllZDBiMzE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL05ldHdvcmsv
V2ViUmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvTmV0
d29yay9XZWJSZXNvdXJjZUxvYWRlci5jcHAKQEAgLTg3LDcgKzg3LDcgQEAgdm9pZCBXZWJSZXNv
dXJjZUxvYWRlcjo6d2lsbFNlbmRSZXF1ZXN0KFJlc291cmNlUmVxdWVzdCYmIHByb3Bvc2VkUmVx
dWVzdCwgUmVzb3UKIAogICAgIFJlZlB0cjxXZWJSZXNvdXJjZUxvYWRlcj4gcHJvdGVjdGVkVGhp
cyh0aGlzKTsKIAotICAgIGlmIChtX2NvcmVMb2FkZXItPmRvY3VtZW50TG9hZGVyKCktPmFwcGxp
Y2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZEZhbGxiYWNrRm9yUmVkaXJlY3QobV9jb3JlTG9h
ZGVyLmdldCgpLCBwcm9wb3NlZFJlcXVlc3QsIHJlZGlyZWN0UmVzcG9uc2UpKQorICAgIGlmICht
X2NvcmVMb2FkZXItPmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWF5
YmVMb2FkRmFsbGJhY2tGb3JSZWRpcmVjdChtX2NvcmVMb2FkZXIuZ2V0KCksIHByb3Bvc2VkUmVx
dWVzdCwgcmVkaXJlY3RSZXNwb25zZSkpCiAgICAgICAgIHJldHVybjsKIAogICAgIG1fY29yZUxv
YWRlci0+d2lsbFNlbmRSZXF1ZXN0KFdURk1vdmUocHJvcG9zZWRSZXF1ZXN0KSwgcmVkaXJlY3RS
ZXNwb25zZSwgW3Byb3RlY3RlZFRoaXNdKFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QpIHsKQEAg
LTExMCw3ICsxMTAsNyBAQCB2b2lkIFdlYlJlc291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9u
c2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIGJvbwogCiAgICAgUmVmPFdlYlJl
c291cmNlTG9hZGVyPiBwcm90ZWN0KCp0aGlzKTsKIAotICAgIGlmIChtX2NvcmVMb2FkZXItPmRv
Y3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZEZhbGxiYWNr
Rm9yUmVzcG9uc2UobV9jb3JlTG9hZGVyLmdldCgpLCByZXNwb25zZSkpCisgICAgaWYgKG1fY29y
ZUxvYWRlci0+ZG9jdW1lbnRMb2FkZXIoKS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS5tYXliZUxv
YWRGYWxsYmFja0ZvclJlc3BvbnNlKG1fY29yZUxvYWRlci5nZXQoKSwgcmVzcG9uc2UpKQogICAg
ICAgICByZXR1cm47CiAKICAgICBtX2NvcmVMb2FkZXItPmRpZFJlY2VpdmVSZXNwb25zZShyZXNw
b25zZSk7CkBAIC0xNDgsNyArMTQ4LDcgQEAgdm9pZCBXZWJSZXNvdXJjZUxvYWRlcjo6ZGlkRmFp
bFJlc291cmNlTG9hZChjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKICAgICBMT0coTmV0d29y
aywgIihXZWJQcm9jZXNzKSBXZWJSZXNvdXJjZUxvYWRlcjo6ZGlkRmFpbFJlc291cmNlTG9hZCBm
b3IgJyVzJyIsIG1fY29yZUxvYWRlci0+dXJsKCkuc3RyaW5nKCkubGF0aW4xKCkuZGF0YSgpKTsK
ICAgICBSRUxFQVNFX0xPR19JRl9BTExPV0VEKCJkaWRGYWlsUmVzb3VyY2VMb2FkOiAocGFnZUlE
ID0gJSIgUFJJdTY0ICIsIGZyYW1lSUQgPSAlIiBQUkl1NjQgIiwgcmVzb3VyY2VJRCA9ICUiIFBS
SXU2NCAiKSIsIG1fdHJhY2tpbmdQYXJhbWV0ZXJzLnBhZ2VJRCwgbV90cmFja2luZ1BhcmFtZXRl
cnMuZnJhbWVJRCwgbV90cmFja2luZ1BhcmFtZXRlcnMucmVzb3VyY2VJRCk7CiAKLSAgICBpZiAo
bV9jb3JlTG9hZGVyLT5kb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5t
YXliZUxvYWRGYWxsYmFja0ZvckVycm9yKG1fY29yZUxvYWRlci5nZXQoKSwgZXJyb3IpKQorICAg
IGlmIChtX2NvcmVMb2FkZXItPmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCkubWF5YmVMb2FkRmFsbGJhY2tGb3JFcnJvcihtX2NvcmVMb2FkZXIuZ2V0KCksIGVycm9yKSkK
ICAgICAgICAgcmV0dXJuOwogICAgIG1fY29yZUxvYWRlci0+ZGlkRmFpbChlcnJvcik7CiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5j
cHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5jcHAKaW5k
ZXggYWMxZGFhYmFkMDYzYTQ5NjI2YjM3ZTA0MDJlOWViZjU0OTJkM2IxYi4uNzg4NjI2ODU5YTY4
NjUxNDY1YmMxNzFmYTFhYjBiMmI1MmFmODczMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3LmNwcApAQCAtMTg1LDIzICsxODUsMTkgQEAgc3Rh
dGljIFN0cmluZyBidWlsZEhUVFBIZWFkZXJzKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3Bv
bnNlLCBsb25nIGxvbmcmIGV4cGUKICAgICBpZiAoIXJlc3BvbnNlLmlzSFRUUCgpKQogICAgICAg
ICByZXR1cm4gU3RyaW5nKCk7CiAKLSAgICBTdHJpbmdCdWlsZGVyIHN0cmluZ0J1aWxkZXI7Ci0g
ICAgCi0gICAgU3RyaW5nIHN0YXR1c0xpbmUgPSBTdHJpbmc6OmZvcm1hdCgiSFRUUCAlZCAiLCBy
ZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpKTsKLSAgICBzdHJpbmdCdWlsZGVyLmFwcGVuZChzdGF0
dXNMaW5lKTsKLSAgICBzdHJpbmdCdWlsZGVyLmFwcGVuZChyZXNwb25zZS5odHRwU3RhdHVzVGV4
dCgpKTsKLSAgICBzdHJpbmdCdWlsZGVyLmFwcGVuZCgnXG4nKTsKLSAgICAKLSAgICBIVFRQSGVh
ZGVyTWFwOjpjb25zdF9pdGVyYXRvciBlbmQgPSByZXNwb25zZS5odHRwSGVhZGVyRmllbGRzKCku
ZW5kKCk7Ci0gICAgZm9yIChIVFRQSGVhZGVyTWFwOjpjb25zdF9pdGVyYXRvciBpdCA9IHJlc3Bv
bnNlLmh0dHBIZWFkZXJGaWVsZHMoKS5iZWdpbigpOyBpdCAhPSBlbmQ7ICsraXQpIHsKLSAgICAg
ICAgc3RyaW5nQnVpbGRlci5hcHBlbmQoaXQtPmtleSk7Ci0gICAgICAgIHN0cmluZ0J1aWxkZXIu
YXBwZW5kTGl0ZXJhbCgiOiAiKTsKLSAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmQoaXQtPnZh
bHVlKTsKLSAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmQoJ1xuJyk7CisgICAgU3RyaW5nQnVp
bGRlciBoZWFkZXI7CisgICAgaGVhZGVyLmFwcGVuZExpdGVyYWwoIkhUVFAgIik7CisgICAgaGVh
ZGVyLmFwcGVuZE51bWJlcihyZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpKTsKKyAgICBoZWFkZXIu
YXBwZW5kKCcgJyk7CisgICAgaGVhZGVyLmFwcGVuZChyZXNwb25zZS5odHRwU3RhdHVzVGV4dCgp
KTsKKyAgICBoZWFkZXIuYXBwZW5kKCdcbicpOworICAgIGZvciAoYXV0byYgZmllbGQgOiByZXNw
b25zZS5odHRwSGVhZGVyRmllbGRzKCkpIHsKKyAgICAgICAgaGVhZGVyLmFwcGVuZChmaWVsZC5r
ZXkpOworICAgICAgICBoZWFkZXIuYXBwZW5kTGl0ZXJhbCgiOiAiKTsKKyAgICAgICAgaGVhZGVy
LmFwcGVuZChmaWVsZC52YWx1ZSk7CisgICAgICAgIGhlYWRlci5hcHBlbmQoJ1xuJyk7CiAgICAg
fQotICAgIAotICAgIFN0cmluZyBoZWFkZXJzID0gc3RyaW5nQnVpbGRlci50b1N0cmluZygpOwot
ICAgIAorCiAgICAgLy8gSWYgdGhlIGNvbnRlbnQgaXMgZW5jb2RlZCAobW9zdCBsaWtlbHkgY29t
cHJlc3NlZCksIHRoZW4gZG9uJ3Qgc2VuZCBpdHMgbGVuZ3RoIHRvIHRoZSBwbHVnaW4sCiAgICAg
Ly8gd2hpY2ggaXMgb25seSBpbnRlcmVzdGVkIGluIHRoZSBkZWNvZGVkIGxlbmd0aCwgbm90IHll
dCBrbm93biBhdCB0aGUgbW9tZW50LgogICAgIC8vIDxyZGFyOi8vcHJvYmxlbS80NDcwNTk5PiB0
cmFja3MgYSByZXF1ZXN0IGZvciAtW05TVVJMUmVzcG9uc2UgZXhwZWN0ZWRDb250ZW50TGVuZ3Ro
XSB0byBpbmNvcnBvcmF0ZSB0aGlzIGxvZ2ljLgpAQCAtMjA5LDcgKzIwNSw3IEBAIHN0YXRpYyBT
dHJpbmcgYnVpbGRIVFRQSGVhZGVycyhjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwg
bG9uZyBsb25nJiBleHBlCiAgICAgaWYgKCFjb250ZW50RW5jb2RpbmcuaXNOdWxsKCkgJiYgY29u
dGVudEVuY29kaW5nICE9ICJpZGVudGl0eSIpCiAgICAgICAgIGV4cGVjdGVkQ29udGVudExlbmd0
aCA9IC0xOwogCi0gICAgcmV0dXJuIGhlYWRlcnM7CisgICAgcmV0dXJuIGhlYWRlci50b1N0cmlu
ZygpOwogfQogCiBzdGF0aWMgdWludDMyX3QgbGFzdE1vZGlmaWVkRGF0ZU1TKGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQpAQCAtMjkyLDM3ICsyODgsMTkgQEAgc3RhdGljIGlubGlu
ZSBXZWJQYWdlKiB3ZWJQYWdlKEhUTUxQbHVnSW5FbGVtZW50KiBwbHVnaW5FbGVtZW50KQogICAg
IHJldHVybiB3ZWJGcmFtZS0+cGFnZSgpOwogfQogCi1SZWY8UGx1Z2luVmlldz4gUGx1Z2luVmll
dzo6Y3JlYXRlKFBhc3NSZWZQdHI8SFRNTFBsdWdJbkVsZW1lbnQ+IHBsdWdpbkVsZW1lbnQsIFBh
c3NSZWZQdHI8UGx1Z2luPiBwbHVnaW4sIGNvbnN0IFBsdWdpbjo6UGFyYW1ldGVycyYgcGFyYW1l
dGVycykKK1JlZjxQbHVnaW5WaWV3PiBQbHVnaW5WaWV3OjpjcmVhdGUoSFRNTFBsdWdJbkVsZW1l
bnQmIHBsdWdpbkVsZW1lbnQsIFJlZjxQbHVnaW4+JiYgcGx1Z2luLCBjb25zdCBQbHVnaW46OlBh
cmFtZXRlcnMmIHBhcmFtZXRlcnMpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgUGx1Z2lu
VmlldyhwbHVnaW5FbGVtZW50LCBwbHVnaW4sIHBhcmFtZXRlcnMpKTsKKyAgICByZXR1cm4gYWRv
cHRSZWYoKm5ldyBQbHVnaW5WaWV3KHBsdWdpbkVsZW1lbnQsIFdURk1vdmUocGx1Z2luKSwgcGFy
YW1ldGVycykpOwogfQogCi1QbHVnaW5WaWV3OjpQbHVnaW5WaWV3KFBhc3NSZWZQdHI8SFRNTFBs
dWdJbkVsZW1lbnQ+IHBsdWdpbkVsZW1lbnQsIFBhc3NSZWZQdHI8UGx1Z2luPiBwbHVnaW4sIGNv
bnN0IFBsdWdpbjo6UGFyYW1ldGVycyYgcGFyYW1ldGVycykKK1BsdWdpblZpZXc6OlBsdWdpblZp
ZXcoSFRNTFBsdWdJbkVsZW1lbnQmIHBsdWdpbkVsZW1lbnQsIFJlZjxQbHVnaW4+JiYgcGx1Z2lu
LCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpCiAgICAgOiBQbHVnaW5WaWV3
QmFzZSgwKQotICAgICwgbV9wbHVnaW5FbGVtZW50KHBsdWdpbkVsZW1lbnQpCi0gICAgLCBtX3Bs
dWdpbihwbHVnaW4pCisgICAgLCBtX3BsdWdpbkVsZW1lbnQoJnBsdWdpbkVsZW1lbnQpCisgICAg
LCBtX3BsdWdpbihXVEZNb3ZlKHBsdWdpbikpCiAgICAgLCBtX3dlYlBhZ2Uod2ViUGFnZShtX3Bs
dWdpbkVsZW1lbnQuZ2V0KCkpKQogICAgICwgbV9wYXJhbWV0ZXJzKHBhcmFtZXRlcnMpCi0gICAg
LCBtX2lzSW5pdGlhbGl6ZWQoZmFsc2UpCi0gICAgLCBtX2lzV2FpdGluZ0ZvclN5bmNocm9ub3Vz
SW5pdGlhbGl6YXRpb24oZmFsc2UpCi0gICAgLCBtX2lzV2FpdGluZ1VudGlsTWVkaWFDYW5TdGFy
dChmYWxzZSkKLSAgICAsIG1faXNCZWluZ0Rlc3Ryb3llZChmYWxzZSkKLSAgICAsIG1fcGx1Z2lu
UHJvY2Vzc0hhc0NyYXNoZWQoZmFsc2UpCi0jaWYgRU5BQkxFKFBSSU1BUllfU05BUFNIT1RURURf
UExVR0lOX0hFVVJJU1RJQykKLSAgICAsIG1fZGlkUGx1Z0luU3RhcnRPZmZTY3JlZW4oZmFsc2Up
Ci0jZW5kaWYKICAgICAsIG1fcGVuZGluZ1VSTFJlcXVlc3RzVGltZXIoUnVuTG9vcDo6bWFpbigp
LCB0aGlzLCAmUGx1Z2luVmlldzo6cGVuZGluZ1VSTFJlcXVlc3RzVGltZXJGaXJlZCkKLSNpZiBF
TkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKLSAgICAsIG1fbnBSdW50aW1lT2JqZWN0TWFwKHRo
aXMpCi0jZW5kaWYKLSAgICAsIG1fbWFudWFsU3RyZWFtU3RhdGUoU3RyZWFtU3RhdGVJbml0aWFs
KQogICAgICwgbV9wbHVnaW5TbmFwc2hvdFRpbWVyKCp0aGlzLCAmUGx1Z2luVmlldzo6cGx1Z2lu
U25hcHNob3RUaW1lckZpcmVkLCBwbHVnaW5TbmFwc2hvdFRpbWVyRGVsYXkpCi0jaWYgRU5BQkxF
KFBSSU1BUllfU05BUFNIT1RURURfUExVR0lOX0hFVVJJU1RJQykgfHwgUExBVEZPUk0oQ09DT0Ep
Ci0gICAgLCBtX2NvdW50U25hcHNob3RSZXRyaWVzKDApCi0jZW5kaWYKLSAgICAsIG1fZGlkUmVj
ZWl2ZVVzZXJJbnRlcmFjdGlvbihmYWxzZSkKLSAgICAsIG1fcGFnZVNjYWxlRmFjdG9yKDEpCi0g
ICAgLCBtX3BsdWdpbklzUGxheWluZ0F1ZGlvKGZhbHNlKQogewogICAgIG1fd2ViUGFnZS0+YWRk
UGx1Z2luVmlldyh0aGlzKTsKIH0KQEAgLTM3NCw3ICszNTIsNyBAQCB2b2lkIFBsdWdpblZpZXc6
OmRlc3Ryb3lQbHVnaW5BbmRSZXNldCgpCiAgICAgY2FuY2VsQWxsU3RyZWFtcygpOwogfQogCi12
b2lkIFBsdWdpblZpZXc6OnJlY3JlYXRlQW5kSW5pdGlhbGl6ZShQYXNzUmVmUHRyPFBsdWdpbj4g
cGx1Z2luKQordm9pZCBQbHVnaW5WaWV3OjpyZWNyZWF0ZUFuZEluaXRpYWxpemUoUmVmPFBsdWdp
bj4mJiBwbHVnaW4pCiB7CiAgICAgaWYgKG1fcGx1Z2luKSB7CiAgICAgICAgIGlmIChtX3BsdWdp
blNuYXBzaG90VGltZXIuaXNBY3RpdmUoKSkKQEAgLTM4MiwxMyArMzYwLDEyIEBAIHZvaWQgUGx1
Z2luVmlldzo6cmVjcmVhdGVBbmRJbml0aWFsaXplKFBhc3NSZWZQdHI8UGx1Z2luPiBwbHVnaW4p
CiAgICAgICAgIGRlc3Ryb3lQbHVnaW5BbmRSZXNldCgpOwogICAgIH0KIAotICAgIC8vIFJlc2V0
IG1lbWJlciB2YXJpYWJsZXMgdG8gaW5pdGlhbCB2YWx1ZXMuCi0gICAgbV9wbHVnaW4gPSBwbHVn
aW47CisgICAgbV9wbHVnaW4gPSBXVEZNb3ZlKHBsdWdpbik7CiAgICAgbV9pc0luaXRpYWxpemVk
ID0gZmFsc2U7CiAgICAgbV9pc1dhaXRpbmdGb3JTeW5jaHJvbm91c0luaXRpYWxpemF0aW9uID0g
ZmFsc2U7CiAgICAgbV9pc1dhaXRpbmdVbnRpbE1lZGlhQ2FuU3RhcnQgPSBmYWxzZTsKICAgICBt
X2lzQmVpbmdEZXN0cm95ZWQgPSBmYWxzZTsKLSAgICBtX21hbnVhbFN0cmVhbVN0YXRlID0gU3Ry
ZWFtU3RhdGVJbml0aWFsOworICAgIG1fbWFudWFsU3RyZWFtU3RhdGUgPSBNYW51YWxTdHJlYW1T
dGF0ZTo6SW5pdGlhbDsKICAgICBtX3RyYW5zaWVudFBhaW50aW5nU25hcHNob3QgPSBudWxscHRy
OwogCiAgICAgaW5pdGlhbGl6ZVBsdWdpbigpOwpAQCAtNDIxLDggKzM5OCw4IEBAIHZvaWQgUGx1
Z2luVmlldzo6bWFudWFsTG9hZERpZFJlY2VpdmVSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJiByZXNwb25zZSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKCFtX2lzSW5pdGlhbGl6
ZWQpIHsKLSAgICAgICAgQVNTRVJUKG1fbWFudWFsU3RyZWFtU3RhdGUgPT0gU3RyZWFtU3RhdGVJ
bml0aWFsKTsKLSAgICAgICAgbV9tYW51YWxTdHJlYW1TdGF0ZSA9IFN0cmVhbVN0YXRlSGFzUmVj
ZWl2ZWRSZXNwb25zZTsKKyAgICAgICAgQVNTRVJUKG1fbWFudWFsU3RyZWFtU3RhdGUgPT0gTWFu
dWFsU3RyZWFtU3RhdGU6OkluaXRpYWwpOworICAgICAgICBtX21hbnVhbFN0cmVhbVN0YXRlID0g
TWFudWFsU3RyZWFtU3RhdGU6Okhhc1JlY2VpdmVkUmVzcG9uc2U7CiAgICAgICAgIG1fbWFudWFs
U3RyZWFtUmVzcG9uc2UgPSByZXNwb25zZTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTQ0
OCw3ICs0MjUsNyBAQCB2b2lkIFBsdWdpblZpZXc6Om1hbnVhbExvYWREaWRSZWNlaXZlRGF0YShj
b25zdCBjaGFyKiBieXRlcywgaW50IGxlbmd0aCkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYg
KCFtX2lzSW5pdGlhbGl6ZWQpIHsKLSAgICAgICAgQVNTRVJUKG1fbWFudWFsU3RyZWFtU3RhdGUg
PT0gU3RyZWFtU3RhdGVIYXNSZWNlaXZlZFJlc3BvbnNlKTsKKyAgICAgICAgQVNTRVJUKG1fbWFu
dWFsU3RyZWFtU3RhdGUgPT0gTWFudWFsU3RyZWFtU3RhdGU6Okhhc1JlY2VpdmVkUmVzcG9uc2Up
OwogICAgICAgICBpZiAoIW1fbWFudWFsU3RyZWFtRGF0YSkKICAgICAgICAgICAgIG1fbWFudWFs
U3RyZWFtRGF0YSA9IFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKCk7CiAKQEAgLTQ2Niw4ICs0NDMsOCBA
QCB2b2lkIFBsdWdpblZpZXc6Om1hbnVhbExvYWREaWRGaW5pc2hMb2FkaW5nKCkKICAgICAgICAg
cmV0dXJuOwogCiAgICAgaWYgKCFtX2lzSW5pdGlhbGl6ZWQpIHsKLSAgICAgICAgQVNTRVJUKG1f
bWFudWFsU3RyZWFtU3RhdGUgPT0gU3RyZWFtU3RhdGVIYXNSZWNlaXZlZFJlc3BvbnNlKTsKLSAg
ICAgICAgbV9tYW51YWxTdHJlYW1TdGF0ZSA9IFN0cmVhbVN0YXRlRmluaXNoZWQ7CisgICAgICAg
IEFTU0VSVChtX21hbnVhbFN0cmVhbVN0YXRlID09IE1hbnVhbFN0cmVhbVN0YXRlOjpIYXNSZWNl
aXZlZFJlc3BvbnNlKTsKKyAgICAgICAgbV9tYW51YWxTdHJlYW1TdGF0ZSA9IE1hbnVhbFN0cmVh
bVN0YXRlOjpGaW5pc2hlZDsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIApAQCAtNDgxLDcgKzQ1
OCw3IEBAIHZvaWQgUGx1Z2luVmlldzo6bWFudWFsTG9hZERpZEZhaWwoY29uc3QgUmVzb3VyY2VF
cnJvciYgZXJyb3IpCiAgICAgICAgIHJldHVybjsKIAogICAgIGlmICghbV9pc0luaXRpYWxpemVk
KSB7Ci0gICAgICAgIG1fbWFudWFsU3RyZWFtU3RhdGUgPSBTdHJlYW1TdGF0ZUZpbmlzaGVkOwor
ICAgICAgICBtX21hbnVhbFN0cmVhbVN0YXRlID0gTWFudWFsU3RyZWFtU3RhdGU6OkZpbmlzaGVk
OwogICAgICAgICBtX21hbnVhbFN0cmVhbUVycm9yID0gZXJyb3I7CiAgICAgICAgIG1fbWFudWFs
U3RyZWFtRGF0YSA9IG51bGxwdHI7CiAgICAgICAgIHJldHVybjsKQEAgLTEwMDcsNyArOTg0LDcg
QEAgdm9pZCBQbHVnaW5WaWV3Ojp3aWxsRGV0YXRjaFJlbmRlcmVyKCkKICAgICBtX3BsdWdpbi0+
d2lsbERldGF0Y2hSZW5kZXJlcigpOwogfQogCi1QYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gUGx1
Z2luVmlldzo6bGl2ZVJlc291cmNlRGF0YSgpIGNvbnN0CitSZWZQdHI8U2hhcmVkQnVmZmVyPiBQ
bHVnaW5WaWV3OjpsaXZlUmVzb3VyY2VEYXRhKCkgY29uc3QKIHsKICAgICBpZiAoIW1faXNJbml0
aWFsaXplZCB8fCAhbV9wbHVnaW4pCiAgICAgICAgIHJldHVybiAwOwpAQCAtMTMwOCwxMiArMTI4
NSwxMiBAQCB2b2lkIFBsdWdpblZpZXc6OmNhbmNlbEFsbFN0cmVhbXMoKQogCiB2b2lkIFBsdWdp
blZpZXc6OnJlZGVsaXZlck1hbnVhbFN0cmVhbSgpCiB7Ci0gICAgaWYgKG1fbWFudWFsU3RyZWFt
U3RhdGUgPT0gU3RyZWFtU3RhdGVJbml0aWFsKSB7CisgICAgaWYgKG1fbWFudWFsU3RyZWFtU3Rh
dGUgPT0gTWFudWFsU3RyZWFtU3RhdGU6OkluaXRpYWwpIHsKICAgICAgICAgLy8gTm90aGluZyB0
byBkby4KICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIGlmIChtX21hbnVhbFN0cmVhbVN0
YXRlID09IFN0cmVhbVN0YXRlRmFpbGVkKSB7CisgICAgaWYgKG1fbWFudWFsU3RyZWFtU3RhdGUg
PT0gTWFudWFsU3RyZWFtU3RhdGU6OkZhaWxlZCkgewogICAgICAgICBtYW51YWxMb2FkRGlkRmFp
bChtX21hbnVhbFN0cmVhbUVycm9yKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTEzMzQs
NyArMTMxMSw3IEBAIHZvaWQgUGx1Z2luVmlldzo6cmVkZWxpdmVyTWFudWFsU3RyZWFtKCkKICAg
ICAgICAgbV9tYW51YWxTdHJlYW1EYXRhID0gbnVsbHB0cjsKICAgICB9CiAKLSAgICBpZiAobV9t
YW51YWxTdHJlYW1TdGF0ZSA9PSBTdHJlYW1TdGF0ZUZpbmlzaGVkKQorICAgIGlmIChtX21hbnVh
bFN0cmVhbVN0YXRlID09IE1hbnVhbFN0cmVhbVN0YXRlOjpGaW5pc2hlZCkKICAgICAgICAgbWFu
dWFsTG9hZERpZEZpbmlzaExvYWRpbmcoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3LmgKaW5kZXggMDA3NTgzYzQzZDAzOGI5ZmFjYzJlZGI3
M2QzYTEyNWI0YmNkYTQ4My4uMzhiZTYyMWI4MWFmNjlhNjM3MzczNjJhY2IyMDE3ZWQzNzgwNzU4
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZp
ZXcuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5o
CkBAIC02NCw5ICs2NCw5IEBAIGNsYXNzIFdlYkV2ZW50OwogCiBjbGFzcyBQbHVnaW5WaWV3IDog
cHVibGljIFdlYkNvcmU6OlBsdWdpblZpZXdCYXNlLCBwdWJsaWMgUGx1Z2luQ29udHJvbGxlciwg
cHJpdmF0ZSBXZWJDb3JlOjpNZWRpYUNhblN0YXJ0TGlzdGVuZXIsIHByaXZhdGUgV2ViRnJhbWU6
OkxvYWRMaXN0ZW5lciwgcHJpdmF0ZSBXZWJDb3JlOjpNZWRpYVByb2R1Y2VyIHsKIHB1YmxpYzoK
LSAgICBzdGF0aWMgUmVmPFBsdWdpblZpZXc+IGNyZWF0ZShQYXNzUmVmUHRyPFdlYkNvcmU6OkhU
TUxQbHVnSW5FbGVtZW50PiwgUGFzc1JlZlB0cjxQbHVnaW4+LCBjb25zdCBQbHVnaW46OlBhcmFt
ZXRlcnMmKTsKKyAgICBzdGF0aWMgUmVmPFBsdWdpblZpZXc+IGNyZWF0ZShXZWJDb3JlOjpIVE1M
UGx1Z0luRWxlbWVudCYsIFJlZjxQbHVnaW4+JiYsIGNvbnN0IFBsdWdpbjo6UGFyYW1ldGVycyYp
OwogCi0gICAgdm9pZCByZWNyZWF0ZUFuZEluaXRpYWxpemUoUGFzc1JlZlB0cjxQbHVnaW4+KTsK
KyAgICB2b2lkIHJlY3JlYXRlQW5kSW5pdGlhbGl6ZShSZWY8UGx1Z2luPiYmKTsKIAogICAgIFdl
YkNvcmU6OkZyYW1lKiBmcmFtZSgpIGNvbnN0OwogCkBAIC0xMTIsMTMgKzExMiwxMyBAQCBwdWJs
aWM6CiAKICAgICBib29sIHNob3VsZEFsbG93U2NyaXB0aW5nKCk7CiAKLSAgICBQYXNzUmVmUHRy
PFdlYkNvcmU6OlNoYXJlZEJ1ZmZlcj4gbGl2ZVJlc291cmNlRGF0YSgpIGNvbnN0OworICAgIFJl
ZlB0cjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+IGxpdmVSZXNvdXJjZURhdGEoKSBjb25zdDsKICAg
ICBib29sIHBlcmZvcm1EaWN0aW9uYXJ5TG9va3VwQXRMb2NhdGlvbihjb25zdCBXZWJDb3JlOjpG
bG9hdFBvaW50Jik7CiAgICAgU3RyaW5nIGdldFNlbGVjdGlvbkZvcldvcmRBdFBvaW50KGNvbnN0
IFdlYkNvcmU6OkZsb2F0UG9pbnQmKSBjb25zdDsKICAgICBib29sIGV4aXN0aW5nU2VsZWN0aW9u
Q29udGFpbnNQb2ludChjb25zdCBXZWJDb3JlOjpGbG9hdFBvaW50JikgY29uc3Q7CiAKIHByaXZh
dGU6Ci0gICAgUGx1Z2luVmlldyhQYXNzUmVmUHRyPFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50
PiwgUGFzc1JlZlB0cjxQbHVnaW4+LCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmIHBhcmFtZXRl
cnMpOworICAgIFBsdWdpblZpZXcoV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQmLCBSZWY8UGx1
Z2luPiYmLCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmKTsKICAgICB2aXJ0dWFsIH5QbHVnaW5W
aWV3KCk7CiAKICAgICB2b2lkIGluaXRpYWxpemVQbHVnaW4oKTsKQEAgLTI0NCwxNCArMjQ0LDE0
IEBAIHByaXZhdGU6CiAgICAgV2ViUGFnZSogbV93ZWJQYWdlOwogICAgIFBsdWdpbjo6UGFyYW1l
dGVycyBtX3BhcmFtZXRlcnM7CiAKLSAgICBib29sIG1faXNJbml0aWFsaXplZDsKLSAgICBib29s
IG1faXNXYWl0aW5nRm9yU3luY2hyb25vdXNJbml0aWFsaXphdGlvbjsKLSAgICBib29sIG1faXNX
YWl0aW5nVW50aWxNZWRpYUNhblN0YXJ0OwotICAgIGJvb2wgbV9pc0JlaW5nRGVzdHJveWVkOwot
ICAgIGJvb2wgbV9wbHVnaW5Qcm9jZXNzSGFzQ3Jhc2hlZDsKKyAgICBib29sIG1faXNJbml0aWFs
aXplZCB7IGZhbHNlIH07CisgICAgYm9vbCBtX2lzV2FpdGluZ0ZvclN5bmNocm9ub3VzSW5pdGlh
bGl6YXRpb24geyBmYWxzZSB9OworICAgIGJvb2wgbV9pc1dhaXRpbmdVbnRpbE1lZGlhQ2FuU3Rh
cnQgeyBmYWxzZSB9OworICAgIGJvb2wgbV9pc0JlaW5nRGVzdHJveWVkIHsgZmFsc2UgfTsKKyAg
ICBib29sIG1fcGx1Z2luUHJvY2Vzc0hhc0NyYXNoZWQgeyBmYWxzZSB9OwogCiAjaWYgRU5BQkxF
KFBSSU1BUllfU05BUFNIT1RURURfUExVR0lOX0hFVVJJU1RJQykKLSAgICBib29sIG1fZGlkUGx1
Z0luU3RhcnRPZmZTY3JlZW47CisgICAgYm9vbCBtX2RpZFBsdWdJblN0YXJ0T2ZmU2NyZWVuIHsg
ZmFsc2UgfTsKICNlbmRpZgogCiAgICAgLy8gUGVuZGluZyBVUkxSZXF1ZXN0cyB0aGF0IHRoZSBw
bHVnLWluIGhhcyBtYWRlLgpAQCAtMjY3LDE4ICsyNjcsMTMgQEAgcHJpdmF0ZToKIAogI2lmIEVO
QUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgIC8vIEEgbWFwIG9mIGFsbCByZWxhdGVkIE5Q
T2JqZWN0cyBmb3IgdGhpcyBwbHVnLWluIHZpZXcuCi0gICAgTlBSdW50aW1lT2JqZWN0TWFwIG1f
bnBSdW50aW1lT2JqZWN0TWFwOworICAgIE5QUnVudGltZU9iamVjdE1hcCBtX25wUnVudGltZU9i
amVjdE1hcCB7IHRoaXMgfTsKICNlbmRpZgogCiAgICAgLy8gVGhlIG1hbnVhbCBzdHJlYW0gc3Rh
dGUuIFRoaXMgaXMgdXNlZCBzbyB3ZSBjYW4gZGVsaXZlciBhIG1hbnVhbCBzdHJlYW0gdG8gYSBw
bHVnLWluCiAgICAgLy8gd2hlbiBpdCBpcyBpbml0aWFsaXplZC4KLSAgICBlbnVtIE1hbnVhbFN0
cmVhbVN0YXRlIHsKLSAgICAgICAgU3RyZWFtU3RhdGVJbml0aWFsLAotICAgICAgICBTdHJlYW1T
dGF0ZUhhc1JlY2VpdmVkUmVzcG9uc2UsCi0gICAgICAgIFN0cmVhbVN0YXRlRmluaXNoZWQsCi0g
ICAgICAgIFN0cmVhbVN0YXRlRmFpbGVkCi0gICAgfTsKLSAgICBNYW51YWxTdHJlYW1TdGF0ZSBt
X21hbnVhbFN0cmVhbVN0YXRlOworICAgIGVudW0gY2xhc3MgTWFudWFsU3RyZWFtU3RhdGUgeyBJ
bml0aWFsLCBIYXNSZWNlaXZlZFJlc3BvbnNlLCBGaW5pc2hlZCwgRmFpbGVkIH07CisgICAgTWFu
dWFsU3RyZWFtU3RhdGUgbV9tYW51YWxTdHJlYW1TdGF0ZSB7IE1hbnVhbFN0cmVhbVN0YXRlOjpJ
bml0aWFsIH07CiAKICAgICBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIG1fbWFudWFsU3RyZWFt
UmVzcG9uc2U7CiAgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBtX21hbnVhbFN0cmVhbUVycm9y
OwpAQCAtMjg5LDEzICsyODQsMTMgQEAgcHJpdmF0ZToKICAgICAvLyBUaGlzIHRpbWVyIGlzIHVz
ZWQgd2hlbiBwbHVnaW4gc25hcHNob3R0aW5nIGlzIGVuYWJsZWQsIHRvIGNhcHR1cmUgYSBwbHVn
aW4gcGxhY2Vob2xkZXIuCiAgICAgV2ViQ29yZTo6RGVmZXJyYWJsZU9uZVNob3RUaW1lciBtX3Bs
dWdpblNuYXBzaG90VGltZXI7CiAjaWYgRU5BQkxFKFBSSU1BUllfU05BUFNIT1RURURfUExVR0lO
X0hFVVJJU1RJQykgfHwgUExBVEZPUk0oQ09DT0EpCi0gICAgdW5zaWduZWQgbV9jb3VudFNuYXBz
aG90UmV0cmllczsKKyAgICB1bnNpZ25lZCBtX2NvdW50U25hcHNob3RSZXRyaWVzIHsgMCB9Owog
I2VuZGlmCi0gICAgYm9vbCBtX2RpZFJlY2VpdmVVc2VySW50ZXJhY3Rpb247CisgICAgYm9vbCBt
X2RpZFJlY2VpdmVVc2VySW50ZXJhY3Rpb24geyBmYWxzZSB9OwogCi0gICAgZG91YmxlIG1fcGFn
ZVNjYWxlRmFjdG9yOworICAgIGRvdWJsZSBtX3BhZ2VTY2FsZUZhY3RvciB7IDEgfTsKIAotICAg
IGJvb2wgbV9wbHVnaW5Jc1BsYXlpbmdBdWRpbzsKKyAgICBib29sIG1fcGx1Z2luSXNQbGF5aW5n
QXVkaW8geyBmYWxzZSB9OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVu
dC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9t
ZUNsaWVudC5jcHAKaW5kZXggZGMzZmVkNWM5YmJmZTMwYzhiZDIwYWVlOWU5YjAxZDgyZGZlNGZl
OC4uM2Q3MmM2NzMxNzZlMGQwMWNmNTMzYTNjYzM1OWU5YmIwYWMyNWE2YSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hy
b21lQ2xpZW50LmNwcApAQCAtMTAzLDIwICsxMDMsMjAgQEAgc3RhdGljIGRvdWJsZSBhcmVhKFdl
YkZyYW1lKiBmcmFtZSkKIH0KIAogCi1zdGF0aWMgV2ViRnJhbWUqIGZpbmRMYXJnZXN0RnJhbWVJ
bkZyYW1lU2V0KFdlYlBhZ2UqIHBhZ2UpCitzdGF0aWMgV2ViRnJhbWUqIGZpbmRMYXJnZXN0RnJh
bWVJbkZyYW1lU2V0KFdlYlBhZ2UmIHBhZ2UpCiB7CiAgICAgLy8gQXBwcm94aW1hdGUgd2hhdCBh
IHVzZXIgY291bGQgY29uc2lkZXIgYSBkZWZhdWx0IHRhcmdldCBmcmFtZSBmb3IgYXBwbGljYXRp
b24gbWVudSBvcGVyYXRpb25zLgogCi0gICAgV2ViRnJhbWUqIG1haW5GcmFtZSA9IHBhZ2UtPm1h
aW5XZWJGcmFtZSgpOworICAgIFdlYkZyYW1lKiBtYWluRnJhbWUgPSBwYWdlLm1haW5XZWJGcmFt
ZSgpOwogICAgIGlmICghbWFpbkZyYW1lIHx8ICFtYWluRnJhbWUtPmlzRnJhbWVTZXQoKSkKLSAg
ICAgICAgcmV0dXJuIDA7CisgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgV2ViRnJhbWUq
IGxhcmdlc3RTb0ZhciA9IDA7CisgICAgV2ViRnJhbWUqIGxhcmdlc3RTb0ZhciA9IG51bGxwdHI7
CiAKICAgICBSZWY8QVBJOjpBcnJheT4gZnJhbWVDaGlsZHJlbiA9IG1haW5GcmFtZS0+Y2hpbGRG
cmFtZXMoKTsKICAgICBzaXplX3QgY291bnQgPSBmcmFtZUNoaWxkcmVuLT5zaXplKCk7CiAgICAg
Zm9yIChzaXplX3QgaSA9IDA7IGkgPCBjb3VudDsgKytpKSB7Ci0gICAgICAgIFdlYkZyYW1lKiBj
aGlsZEZyYW1lID0gZnJhbWVDaGlsZHJlbi0+YXQ8V2ViRnJhbWU+KGkpOworICAgICAgICBhdXRv
KiBjaGlsZEZyYW1lID0gZnJhbWVDaGlsZHJlbi0+YXQ8V2ViRnJhbWU+KGkpOwogICAgICAgICBp
ZiAoIWxhcmdlc3RTb0ZhciB8fCBhcmVhKGNoaWxkRnJhbWUpID4gYXJlYShsYXJnZXN0U29GYXIp
KQogICAgICAgICAgICAgbGFyZ2VzdFNvRmFyID0gY2hpbGRGcmFtZTsKICAgICB9CkBAIC0xMjQs
NiArMTI0LDE1IEBAIHN0YXRpYyBXZWJGcmFtZSogZmluZExhcmdlc3RGcmFtZUluRnJhbWVTZXQo
V2ViUGFnZSogcGFnZSkKICAgICByZXR1cm4gbGFyZ2VzdFNvRmFyOwogfQogCitXZWJDaHJvbWVD
bGllbnQ6OldlYkNocm9tZUNsaWVudChXZWJQYWdlJiBwYWdlKQorICAgIDogbV9wYWdlKHBhZ2Up
Cit7Cit9CisKK2lubGluZSBXZWJDaHJvbWVDbGllbnQ6On5XZWJDaHJvbWVDbGllbnQoKQorewor
fQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y2hyb21lRGVzdHJveWVkKCkKIHsKICAgICBkZWxl
dGUgdGhpczsKQEAgLTEzMSw3ICsxNDAsNyBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y2hyb21l
RGVzdHJveWVkKCkKIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNldFdpbmRvd1JlY3QoY29uc3Qg
RmxvYXRSZWN0JiB3aW5kb3dGcmFtZSkKIHsKLSAgICBtX3BhZ2UtPnNlbmRTZXRXaW5kb3dGcmFt
ZSh3aW5kb3dGcmFtZSk7CisgICAgbV9wYWdlLnNlbmRTZXRXaW5kb3dGcmFtZSh3aW5kb3dGcmFt
ZSk7CiB9CiAKIEZsb2F0UmVjdCBXZWJDaHJvbWVDbGllbnQ6OndpbmRvd1JlY3QoKQpAQCAtMTQw
LDEzICsxNDksMTMgQEAgRmxvYXRSZWN0IFdlYkNocm9tZUNsaWVudDo6d2luZG93UmVjdCgpCiAg
ICAgcmV0dXJuIEZsb2F0UmVjdCgpOwogI2Vsc2UKICNpZiBQTEFURk9STShNQUMpCi0gICAgaWYg
KG1fcGFnZS0+aGFzQ2FjaGVkV2luZG93RnJhbWUoKSkKLSAgICAgICAgcmV0dXJuIG1fcGFnZS0+
d2luZG93RnJhbWVJblVuZmxpcHBlZFNjcmVlbkNvb3JkaW5hdGVzKCk7CisgICAgaWYgKG1fcGFn
ZS5oYXNDYWNoZWRXaW5kb3dGcmFtZSgpKQorICAgICAgICByZXR1cm4gbV9wYWdlLndpbmRvd0Zy
YW1lSW5VbmZsaXBwZWRTY3JlZW5Db29yZGluYXRlcygpOwogI2VuZGlmCiAKICAgICBGbG9hdFJl
Y3QgbmV3V2luZG93RnJhbWU7CiAKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBh
cmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OkdldFdpbmRvd0ZyYW1lKCksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFdpbmRvd0ZyYW1l
OjpSZXBseShuZXdXaW5kb3dGcmFtZSksIG1fcGFnZS0+cGFnZUlEKCkpKQorICAgIGlmICghV2Vi
UHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMo
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0V2luZG93RnJhbWUoKSwgTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6R2V0V2luZG93RnJhbWU6OlJlcGx5KG5ld1dpbmRvd0ZyYW1lKSwgbV9wYWdlLnBh
Z2VJRCgpKSkKICAgICAgICAgcmV0dXJuIEZsb2F0UmVjdCgpOwogCiAgICAgcmV0dXJuIG5ld1dp
bmRvd0ZyYW1lOwpAQCAtMTU1LDMzICsxNjQsMzMgQEAgRmxvYXRSZWN0IFdlYkNocm9tZUNsaWVu
dDo6d2luZG93UmVjdCgpCiAKIEZsb2F0UmVjdCBXZWJDaHJvbWVDbGllbnQ6OnBhZ2VSZWN0KCkK
IHsKLSAgICByZXR1cm4gRmxvYXRSZWN0KEZsb2F0UG9pbnQoKSwgbV9wYWdlLT5zaXplKCkpOwor
ICAgIHJldHVybiBGbG9hdFJlY3QoRmxvYXRQb2ludCgpLCBtX3BhZ2Uuc2l6ZSgpKTsKIH0KIAog
dm9pZCBXZWJDaHJvbWVDbGllbnQ6OmZvY3VzKCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2Fn
ZXM6OldlYlBhZ2VQcm94eTo6U2V0Rm9jdXModHJ1ZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OlNldEZvY3VzKHRydWUpKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVD
bGllbnQ6OnVuZm9jdXMoKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpTZXRGb2N1cyhmYWxzZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OlNldEZvY3VzKGZhbHNlKSk7CiB9CiAKICNpZiBQTEFURk9STShDT0NPQSkKIHZvaWQg
V2ViQ2hyb21lQ2xpZW50OjplbGVtZW50RGlkRm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9kZSogbm9k
ZSkKIHsKLSAgICBtX3BhZ2UtPmVsZW1lbnREaWRGb2N1cyhjb25zdF9jYXN0PFdlYkNvcmU6Ok5v
ZGUqPihub2RlKSk7CisgICAgbV9wYWdlLmVsZW1lbnREaWRGb2N1cyhjb25zdF9jYXN0PFdlYkNv
cmU6Ok5vZGUqPihub2RlKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjplbGVtZW50RGlk
Qmx1cihjb25zdCBXZWJDb3JlOjpOb2RlKiBub2RlKQogewotICAgIG1fcGFnZS0+ZWxlbWVudERp
ZEJsdXIoY29uc3RfY2FzdDxXZWJDb3JlOjpOb2RlKj4obm9kZSkpOworICAgIG1fcGFnZS5lbGVt
ZW50RGlkQmx1cihjb25zdF9jYXN0PFdlYkNvcmU6Ok5vZGUqPihub2RlKSk7CiB9CiAKIHZvaWQg
V2ViQ2hyb21lQ2xpZW50OjptYWtlRmlyc3RSZXNwb25kZXIoKQogewotICAgIG1fcGFnZS0+c2Vu
ZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpNYWtlRmlyc3RSZXNwb25kZXIoKSk7CisgICAgbV9w
YWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6TWFrZUZpcnN0UmVzcG9uZGVyKCkpOwog
fSAgICAKICNlbmRpZiAgICAKIApAQCAtMTkzLDcgKzIwMiw3IEBAIGJvb2wgV2ViQ2hyb21lQ2xp
ZW50OjpjYW5UYWtlRm9jdXMoRm9jdXNEaXJlY3Rpb24pCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50
Ojp0YWtlRm9jdXMoRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9uKQogewotICAgIG1fcGFnZS0+c2Vu
ZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpUYWtlRm9jdXMoZGlyZWN0aW9uKSk7CisgICAgbV9w
YWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6VGFrZUZvY3VzKGRpcmVjdGlvbikpOwog
fQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6Zm9jdXNlZEVsZW1lbnRDaGFuZ2VkKEVsZW1lbnQq
IGVsZW1lbnQpCkBAIC0yMDcsMTQgKzIxNiwxNCBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6Zm9j
dXNlZEVsZW1lbnRDaGFuZ2VkKEVsZW1lbnQqIGVsZW1lbnQpCiAKICAgICBXZWJGcmFtZSogd2Vi
RnJhbWUgPSBXZWJGcmFtZTo6ZnJvbUNvcmVGcmFtZSgqZWxlbWVudC0+ZG9jdW1lbnQoKS5mcmFt
ZSgpKTsKICAgICBBU1NFUlQod2ViRnJhbWUpOwotICAgIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVG
b3JtQ2xpZW50KCkuZGlkRm9jdXNUZXh0RmllbGQobV9wYWdlLCAmaW5wdXRFbGVtZW50LCB3ZWJG
cmFtZSk7CisgICAgbV9wYWdlLmluamVjdGVkQnVuZGxlRm9ybUNsaWVudCgpLmRpZEZvY3VzVGV4
dEZpZWxkKCZtX3BhZ2UsICZpbnB1dEVsZW1lbnQsIHdlYkZyYW1lKTsKIH0KIAogdm9pZCBXZWJD
aHJvbWVDbGllbnQ6OmZvY3VzZWRGcmFtZUNoYW5nZWQoRnJhbWUqIGZyYW1lKQogewogICAgIFdl
YkZyYW1lKiB3ZWJGcmFtZSA9IGZyYW1lID8gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZyYW1l
KSA6IG51bGxwdHI7CiAKLSAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNz
Q29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZvY3VzZWRGcmFtZUNo
YW5nZWQod2ViRnJhbWUgPyB3ZWJGcmFtZS0+ZnJhbWVJRCgpIDogMCksIG1fcGFnZS0+cGFnZUlE
KCkpOworICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9u
KCktPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6Rm9jdXNlZEZyYW1lQ2hhbmdlZCh3ZWJG
cmFtZSA/IHdlYkZyYW1lLT5mcmFtZUlEKCkgOiAwKSwgbV9wYWdlLnBhZ2VJRCgpKTsKIH0KIAog
UGFnZSogV2ViQ2hyb21lQ2xpZW50OjpjcmVhdGVXaW5kb3coRnJhbWUqIGZyYW1lLCBjb25zdCBG
cmFtZUxvYWRSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBXaW5kb3dGZWF0dXJlcyYgd2luZG93RmVh
dHVyZXMsIGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIG5hdmlnYXRpb25BY3Rpb24pCkBAIC0yMzQs
MTMgKzI0MywxMyBAQCBQYWdlKiBXZWJDaHJvbWVDbGllbnQ6OmNyZWF0ZVdpbmRvdyhGcmFtZSog
ZnJhbWUsIGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmIHJlcXVlcwogICAgIG5hdmlnYXRpb25BY3Rp
b25EYXRhLm1vdXNlQnV0dG9uID0gSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uOjptb3Vz
ZUJ1dHRvbkZvck5hdmlnYXRpb25BY3Rpb24obmF2aWdhdGlvbkFjdGlvbik7CiAgICAgbmF2aWdh
dGlvbkFjdGlvbkRhdGEuc3ludGhldGljQ2xpY2tUeXBlID0gSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0
aW9uQWN0aW9uOjpzeW50aGV0aWNDbGlja1R5cGVGb3JOYXZpZ2F0aW9uQWN0aW9uKG5hdmlnYXRp
b25BY3Rpb24pOwogICAgIG5hdmlnYXRpb25BY3Rpb25EYXRhLnVzZXJHZXN0dXJlVG9rZW5JZGVu
dGlmaWVyID0gd2ViUHJvY2Vzcy51c2VyR2VzdHVyZVRva2VuSWRlbnRpZmllcihuYXZpZ2F0aW9u
QWN0aW9uLnVzZXJHZXN0dXJlVG9rZW4oKSk7Ci0gICAgbmF2aWdhdGlvbkFjdGlvbkRhdGEuY2Fu
SGFuZGxlUmVxdWVzdCA9IG1fcGFnZS0+Y2FuSGFuZGxlUmVxdWVzdChyZXF1ZXN0LnJlc291cmNl
UmVxdWVzdCgpKTsKKyAgICBuYXZpZ2F0aW9uQWN0aW9uRGF0YS5jYW5IYW5kbGVSZXF1ZXN0ID0g
bV9wYWdlLmNhbkhhbmRsZVJlcXVlc3QocmVxdWVzdC5yZXNvdXJjZVJlcXVlc3QoKSk7CiAgICAg
bmF2aWdhdGlvbkFjdGlvbkRhdGEuc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSA9IG5hdmln
YXRpb25BY3Rpb24uc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSgpOwogICAgIG5hdmlnYXRp
b25BY3Rpb25EYXRhLmRvd25sb2FkQXR0cmlidXRlID0gbmF2aWdhdGlvbkFjdGlvbi5kb3dubG9h
ZEF0dHJpYnV0ZSgpOwogCiAgICAgdWludDY0X3QgbmV3UGFnZUlEID0gMDsKICAgICBXZWJQYWdl
Q3JlYXRpb25QYXJhbWV0ZXJzIHBhcmFtZXRlcnM7Ci0gICAgaWYgKCF3ZWJQcm9jZXNzLnBhcmVu
dFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkNy
ZWF0ZU5ld1BhZ2Uod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9t
RnJhbWUoZnJhbWUpLCByZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLCB3aW5kb3dGZWF0dXJlcywg
bmF2aWdhdGlvbkFjdGlvbkRhdGEpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpDcmVhdGVOZXdQ
YWdlOjpSZXBseShuZXdQYWdlSUQsIHBhcmFtZXRlcnMpLCBtX3BhZ2UtPnBhZ2VJRCgpKSkKKyAg
ICBpZiAoIXdlYlByb2Nlc3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6Q3JlYXRlTmV3UGFnZSh3ZWJGcmFtZS0+ZnJhbWVJRCgpLCBT
ZWN1cml0eU9yaWdpbkRhdGE6OmZyb21GcmFtZShmcmFtZSksIHJlcXVlc3QucmVzb3VyY2VSZXF1
ZXN0KCksIHdpbmRvd0ZlYXR1cmVzLCBuYXZpZ2F0aW9uQWN0aW9uRGF0YSksIE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OkNyZWF0ZU5ld1BhZ2U6OlJlcGx5KG5ld1BhZ2VJRCwgcGFyYW1ldGVycyks
IG1fcGFnZS5wYWdlSUQoKSkpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCiAgICAgaWYgKCFu
ZXdQYWdlSUQpCkBAIC0yNTIsMzIgKzI2MSwzMiBAQCBQYWdlKiBXZWJDaHJvbWVDbGllbnQ6OmNy
ZWF0ZVdpbmRvdyhGcmFtZSogZnJhbWUsIGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmIHJlcXVlcwog
CiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2hvdygpCiB7Ci0gICAgbV9wYWdlLT5zaG93KCk7Cisg
ICAgbV9wYWdlLnNob3coKTsKIH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OmNhblJ1bk1vZGFs
KCkKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5jYW5SdW5Nb2RhbCgpOworICAgIHJldHVybiBtX3Bh
Z2UuY2FuUnVuTW9kYWwoKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJ1bk1vZGFsKCkK
IHsKLSAgICBtX3BhZ2UtPnJ1bk1vZGFsKCk7CisgICAgbV9wYWdlLnJ1bk1vZGFsKCk7CiB9CiAK
IHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRUb29sYmFyc1Zpc2libGUoYm9vbCB0b29sYmFyc0Fy
ZVZpc2libGUpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNl
dFRvb2xiYXJzQXJlVmlzaWJsZSh0b29sYmFyc0FyZVZpc2libGUpKTsKKyAgICBtX3BhZ2Uuc2Vu
ZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRUb29sYmFyc0FyZVZpc2libGUodG9vbGJhcnNB
cmVWaXNpYmxlKSk7CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50Ojp0b29sYmFyc1Zpc2libGUo
KQogewotICAgIEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VVSUNsaWVudDo6VUlFbGVtZW50Vmlz
aWJpbGl0eSB0b29sYmFyc1Zpc2liaWxpdHkgPSBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGll
bnQoKS50b29sYmFyc0FyZVZpc2libGUobV9wYWdlKTsKKyAgICBBUEk6OkluamVjdGVkQnVuZGxl
OjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHkgdG9vbGJhcnNWaXNpYmlsaXR5ID0g
bV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS50b29sYmFyc0FyZVZpc2libGUoJm1fcGFn
ZSk7CiAgICAgaWYgKHRvb2xiYXJzVmlzaWJpbGl0eSAhPSBBUEk6OkluamVjdGVkQnVuZGxlOjpQ
YWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHk6OlVua25vd24pCiAgICAgICAgIHJldHVy
biB0b29sYmFyc1Zpc2liaWxpdHkgPT0gQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50
OjpVSUVsZW1lbnRWaXNpYmlsaXR5OjpWaXNpYmxlOwogICAgIAogICAgIGJvb2wgdG9vbGJhcnNB
cmVWaXNpYmxlID0gdHJ1ZTsKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVu
dFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6Okdl
dFRvb2xiYXJzQXJlVmlzaWJsZSgpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRUb29sYmFy
c0FyZVZpc2libGU6OlJlcGx5KHRvb2xiYXJzQXJlVmlzaWJsZSksIG1fcGFnZS0+cGFnZUlEKCkp
KQorICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rp
b24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0VG9vbGJhcnNBcmVWaXNp
YmxlKCksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFRvb2xiYXJzQXJlVmlzaWJsZTo6UmVw
bHkodG9vbGJhcnNBcmVWaXNpYmxlKSwgbV9wYWdlLnBhZ2VJRCgpKSkKICAgICAgICAgcmV0dXJu
IHRydWU7CiAKICAgICByZXR1cm4gdG9vbGJhcnNBcmVWaXNpYmxlOwpAQCAtMjg1LDE3ICsyOTQs
MTcgQEAgYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnRvb2xiYXJzVmlzaWJsZSgpCiAKIHZvaWQgV2Vi
Q2hyb21lQ2xpZW50OjpzZXRTdGF0dXNiYXJWaXNpYmxlKGJvb2wgc3RhdHVzQmFySXNWaXNpYmxl
KQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRTdGF0dXNC
YXJJc1Zpc2libGUoc3RhdHVzQmFySXNWaXNpYmxlKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2Fn
ZXM6OldlYlBhZ2VQcm94eTo6U2V0U3RhdHVzQmFySXNWaXNpYmxlKHN0YXR1c0JhcklzVmlzaWJs
ZSkpOwogfQogCiBib29sIFdlYkNocm9tZUNsaWVudDo6c3RhdHVzYmFyVmlzaWJsZSgpCiB7Ci0g
ICAgQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5
IHN0YXR1c2JhclZpc2liaWxpdHkgPSBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5z
dGF0dXNCYXJJc1Zpc2libGUobV9wYWdlKTsKKyAgICBBUEk6OkluamVjdGVkQnVuZGxlOjpQYWdl
VUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHkgc3RhdHVzYmFyVmlzaWJpbGl0eSA9IG1fcGFn
ZS5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkuc3RhdHVzQmFySXNWaXNpYmxlKCZtX3BhZ2UpOwog
ICAgIGlmIChzdGF0dXNiYXJWaXNpYmlsaXR5ICE9IEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VV
SUNsaWVudDo6VUlFbGVtZW50VmlzaWJpbGl0eTo6VW5rbm93bikKICAgICAgICAgcmV0dXJuIHN0
YXR1c2JhclZpc2liaWxpdHkgPT0gQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpV
SUVsZW1lbnRWaXNpYmlsaXR5OjpWaXNpYmxlOwogCiAgICAgYm9vbCBzdGF0dXNCYXJJc1Zpc2li
bGUgPSB0cnVlOwotICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vz
c0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0U3RhdHVz
QmFySXNWaXNpYmxlKCksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFN0YXR1c0JhcklzVmlz
aWJsZTo6UmVwbHkoc3RhdHVzQmFySXNWaXNpYmxlKSwgbV9wYWdlLT5wYWdlSUQoKSkpCisgICAg
aWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5z
ZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRTdGF0dXNCYXJJc1Zpc2libGUoKSwg
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0U3RhdHVzQmFySXNWaXNpYmxlOjpSZXBseShzdGF0
dXNCYXJJc1Zpc2libGUpLCBtX3BhZ2UucGFnZUlEKCkpKQogICAgICAgICByZXR1cm4gdHJ1ZTsK
IAogICAgIHJldHVybiBzdGF0dXNCYXJJc1Zpc2libGU7CkBAIC0zMTQsMTcgKzMyMywxNyBAQCBi
b29sIFdlYkNocm9tZUNsaWVudDo6c2Nyb2xsYmFyc1Zpc2libGUoKQogCiB2b2lkIFdlYkNocm9t
ZUNsaWVudDo6c2V0TWVudWJhclZpc2libGUoYm9vbCBtZW51QmFyVmlzaWJsZSkKIHsKLSAgICBt
X3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0TWVudUJhcklzVmlzaWJsZSht
ZW51QmFyVmlzaWJsZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OlNldE1lbnVCYXJJc1Zpc2libGUobWVudUJhclZpc2libGUpKTsKIH0KIAogYm9vbCBXZWJDaHJv
bWVDbGllbnQ6Om1lbnViYXJWaXNpYmxlKCkKIHsKLSAgICBBUEk6OkluamVjdGVkQnVuZGxlOjpQ
YWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHkgbWVudWJhclZpc2liaWxpdHkgPSBtX3Bh
Z2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5tZW51QmFySXNWaXNpYmxlKG1fcGFnZSk7Cisg
ICAgQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5
IG1lbnViYXJWaXNpYmlsaXR5ID0gbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5tZW51
QmFySXNWaXNpYmxlKCZtX3BhZ2UpOwogICAgIGlmIChtZW51YmFyVmlzaWJpbGl0eSAhPSBBUEk6
OkluamVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHk6OlVua25v
d24pCiAgICAgICAgIHJldHVybiBtZW51YmFyVmlzaWJpbGl0eSA9PSBBUEk6OkluamVjdGVkQnVu
ZGxlOjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHk6OlZpc2libGU7CiAgICAgCiAg
ICAgYm9vbCBtZW51QmFySXNWaXNpYmxlID0gdHJ1ZTsKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNp
bmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OkdldE1lbnVCYXJJc1Zpc2libGUoKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94
eTo6R2V0TWVudUJhcklzVmlzaWJsZTo6UmVwbHkobWVudUJhcklzVmlzaWJsZSksIG1fcGFnZS0+
cGFnZUlEKCkpKQorICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vz
c0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0TWVudUJh
cklzVmlzaWJsZSgpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRNZW51QmFySXNWaXNpYmxl
OjpSZXBseShtZW51QmFySXNWaXNpYmxlKSwgbV9wYWdlLnBhZ2VJRCgpKSkKICAgICAgICAgcmV0
dXJuIHRydWU7CiAKICAgICByZXR1cm4gbWVudUJhcklzVmlzaWJsZTsKQEAgLTMzMiwxOCArMzQx
LDE4IEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjptZW51YmFyVmlzaWJsZSgpCiAKIHZvaWQgV2Vi
Q2hyb21lQ2xpZW50OjpzZXRSZXNpemFibGUoYm9vbCByZXNpemFibGUpCiB7Ci0gICAgbV9wYWdl
LT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldElzUmVzaXphYmxlKHJlc2l6YWJsZSkp
OworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldElzUmVzaXphYmxl
KHJlc2l6YWJsZSkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6YWRkTWVzc2FnZVRvQ29u
c29sZShNZXNzYWdlU291cmNlIHNvdXJjZSwgTWVzc2FnZUxldmVsIGxldmVsLCBjb25zdCBTdHJp
bmcmIG1lc3NhZ2UsIHVuc2lnbmVkIGxpbmVOdW1iZXIsIHVuc2lnbmVkIGNvbHVtbk51bWJlciwg
Y29uc3QgU3RyaW5nJiBzb3VyY2VJRCkKIHsKICAgICAvLyBOb3RpZnkgdGhlIGJ1bmRsZSBjbGll
bnQuCi0gICAgbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkud2lsbEFkZE1lc3NhZ2VU
b0NvbnNvbGUobV9wYWdlLCBzb3VyY2UsIGxldmVsLCBtZXNzYWdlLCBsaW5lTnVtYmVyLCBjb2x1
bW5OdW1iZXIsIHNvdXJjZUlEKTsKKyAgICBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgp
LndpbGxBZGRNZXNzYWdlVG9Db25zb2xlKCZtX3BhZ2UsIHNvdXJjZSwgbGV2ZWwsIG1lc3NhZ2Us
IGxpbmVOdW1iZXIsIGNvbHVtbk51bWJlciwgc291cmNlSUQpOwogfQogCiBib29sIFdlYkNocm9t
ZUNsaWVudDo6Y2FuUnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsKCkKIHsKLSAgICByZXR1cm4g
bV9wYWdlLT5jYW5SdW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoKTsKKyAgICByZXR1cm4gbV9w
YWdlLmNhblJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbCgpOwogfQogCiBib29sIFdlYkNocm9t
ZUNsaWVudDo6cnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsKGNvbnN0IFN0cmluZyYgbWVzc2Fn
ZSwgRnJhbWUqIGZyYW1lKQpAQCAtMzU0LDcgKzM2Myw3IEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50
OjpydW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBGcmFt
ZSoKIAogICAgIEhhbmdEZXRlY3Rpb25EaXNhYmxlciBoYW5nRGV0ZWN0aW9uRGlzYWJsZXI7CiAK
LSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9u
KCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJ1bkJlZm9yZVVubG9hZENvbmZp
cm1QYW5lbChtZXNzYWdlLCB3ZWJGcmFtZS0+ZnJhbWVJRCgpKSwgTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6UnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsOjpSZXBseShzaG91bGRDbG9zZSksIG1f
cGFnZS0+cGFnZUlEKCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246
OkluZm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKSkKKyAgICBpZiAoIVdlYlByb2Nlc3M6
OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6OlJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbChtZXNzYWdlLCB3ZWJG
cmFtZS0+ZnJhbWVJRCgpKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuQmVmb3JlVW5sb2Fk
Q29uZmlybVBhbmVsOjpSZXBseShzaG91bGRDbG9zZSksIG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25k
czo6aW5maW5pdHkoKSwgSVBDOjpTZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNz
V2lsbFN1c3BlbmQpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICByZXR1cm4gc2hvdWxk
Q2xvc2U7CkBAIC0zNjksMTQgKzM3OCwxNCBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y2xvc2VX
aW5kb3dTb29uKCkKICAgICAvLyBhIGNsb3NlIGV4ZWN1dGUgc3luY2hyb25vdXNseSBhcyBwYXJ0
IG9mIHdpbmRvdy5jbG9zZSwgYnV0IG90aGVyIHBhcnRzCiAgICAgLy8gbGF0ZXIgb24uCiAKLSAg
ICBtX3BhZ2UtPmNvcmVQYWdlKCktPnNldEdyb3VwTmFtZShTdHJpbmcoKSk7CisgICAgbV9wYWdl
LmNvcmVQYWdlKCktPnNldEdyb3VwTmFtZShTdHJpbmcoKSk7CiAKLSAgICBpZiAoV2ViRnJhbWUq
IGZyYW1lID0gbV9wYWdlLT5tYWluV2ViRnJhbWUoKSkgeworICAgIGlmIChXZWJGcmFtZSogZnJh
bWUgPSBtX3BhZ2UubWFpbldlYkZyYW1lKCkpIHsKICAgICAgICAgaWYgKEZyYW1lKiBjb3JlRnJh
bWUgPSBmcmFtZS0+Y29yZUZyYW1lKCkpCiAgICAgICAgICAgICBjb3JlRnJhbWUtPmxvYWRlcigp
LnN0b3BGb3JVc2VyQ2FuY2VsKCk7CiAgICAgfQogCi0gICAgbV9wYWdlLT5zZW5kQ2xvc2UoKTsK
KyAgICBtX3BhZ2Uuc2VuZENsb3NlKCk7CiB9CiAKIHN0YXRpYyBib29sIHNob3VsZFN1cHByZXNz
SmF2YVNjcmlwdERpYWxvZ3MoRnJhbWUmIGZyYW1lKQpAQCAtMzk2LDExICs0MDUsMTEgQEAgdm9p
ZCBXZWJDaHJvbWVDbGllbnQ6OnJ1bkphdmFTY3JpcHRBbGVydChGcmFtZSogZnJhbWUsIGNvbnN0
IFN0cmluZyYgYWxlcnRUZXh0KQogICAgIEFTU0VSVCh3ZWJGcmFtZSk7CiAKICAgICAvLyBOb3Rp
ZnkgdGhlIGJ1bmRsZSBjbGllbnQuCi0gICAgbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50
KCkud2lsbFJ1bkphdmFTY3JpcHRBbGVydChtX3BhZ2UsIGFsZXJ0VGV4dCwgd2ViRnJhbWUpOwor
ICAgIG1fcGFnZS5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkud2lsbFJ1bkphdmFTY3JpcHRBbGVy
dCgmbV9wYWdlLCBhbGVydFRleHQsIHdlYkZyYW1lKTsKIAogICAgIEhhbmdEZXRlY3Rpb25EaXNh
YmxlciBoYW5nRGV0ZWN0aW9uRGlzYWJsZXI7CiAKLSAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24o
KS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpSdW5KYXZhU2NyaXB0QWxlcnQod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmln
aW5EYXRhOjpmcm9tRnJhbWUoZnJhbWUpLCBhbGVydFRleHQpLCBNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpSdW5KYXZhU2NyaXB0QWxlcnQ6OlJlcGx5KCksIG1fcGFnZS0+cGFnZUlEKCksIFNlY29u
ZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246OkluZm9ybVBsYXRmb3JtUHJvY2Vz
c1dpbGxTdXNwZW5kKTsKKyAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNz
Q29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2Ny
aXB0QWxlcnQod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tRnJh
bWUoZnJhbWUpLCBhbGVydFRleHQpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2Ny
aXB0QWxlcnQ6OlJlcGx5KCksIG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwg
SVBDOjpTZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpOwog
fQogCiBib29sIFdlYkNocm9tZUNsaWVudDo6cnVuSmF2YVNjcmlwdENvbmZpcm0oRnJhbWUqIGZy
YW1lLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UpCkBAIC00MTIsMTIgKzQyMSwxMiBAQCBib29sIFdl
YkNocm9tZUNsaWVudDo6cnVuSmF2YVNjcmlwdENvbmZpcm0oRnJhbWUqIGZyYW1lLCBjb25zdCBT
dHJpbmcmIG1lc3NhZ2UpCiAgICAgQVNTRVJUKHdlYkZyYW1lKTsKIAogICAgIC8vIE5vdGlmeSB0
aGUgYnVuZGxlIGNsaWVudC4KLSAgICBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS53
aWxsUnVuSmF2YVNjcmlwdENvbmZpcm0obV9wYWdlLCBtZXNzYWdlLCB3ZWJGcmFtZSk7CisgICAg
bV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS53aWxsUnVuSmF2YVNjcmlwdENvbmZpcm0o
Jm1fcGFnZSwgbWVzc2FnZSwgd2ViRnJhbWUpOwogCiAgICAgSGFuZ0RldGVjdGlvbkRpc2FibGVy
IGhhbmdEZXRlY3Rpb25EaXNhYmxlcjsKIAogICAgIGJvb2wgcmVzdWx0ID0gZmFsc2U7Ci0gICAg
aWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5z
ZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2NyaXB0Q29uZmlybSh3ZWJG
cmFtZS0+ZnJhbWVJRCgpLCBTZWN1cml0eU9yaWdpbkRhdGE6OmZyb21GcmFtZShmcmFtZSksIG1l
c3NhZ2UpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2NyaXB0Q29uZmlybTo6UmVw
bHkocmVzdWx0KSwgbV9wYWdlLT5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBDOjpT
ZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpKQorICAgIGlm
ICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2Vu
ZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdENvbmZpcm0od2ViRnJh
bWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tRnJhbWUoZnJhbWUpLCBtZXNz
YWdlKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdENvbmZpcm06OlJlcGx5
KHJlc3VsdCksIG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBDOjpTZW5k
U3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpKQogICAgICAgICBy
ZXR1cm4gZmFsc2U7CiAKICAgICByZXR1cm4gcmVzdWx0OwpAQCAtNDMyLDExICs0NDEsMTEgQEAg
Ym9vbCBXZWJDaHJvbWVDbGllbnQ6OnJ1bkphdmFTY3JpcHRQcm9tcHQoRnJhbWUqIGZyYW1lLCBj
b25zdCBTdHJpbmcmIG1lc3NhZ2UsIGMKICAgICBBU1NFUlQod2ViRnJhbWUpOwogCiAgICAgLy8g
Tm90aWZ5IHRoZSBidW5kbGUgY2xpZW50LgotICAgIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVVSUNs
aWVudCgpLndpbGxSdW5KYXZhU2NyaXB0UHJvbXB0KG1fcGFnZSwgbWVzc2FnZSwgZGVmYXVsdFZh
bHVlLCB3ZWJGcmFtZSk7CisgICAgbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS53aWxs
UnVuSmF2YVNjcmlwdFByb21wdCgmbV9wYWdlLCBtZXNzYWdlLCBkZWZhdWx0VmFsdWUsIHdlYkZy
YW1lKTsKIAogICAgIEhhbmdEZXRlY3Rpb25EaXNhYmxlciBoYW5nRGV0ZWN0aW9uRGlzYWJsZXI7
CiAKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0
aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJ1bkphdmFTY3JpcHRQcm9t
cHQod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tRnJhbWUoZnJh
bWUpLCBtZXNzYWdlLCBkZWZhdWx0VmFsdWUpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5K
YXZhU2NyaXB0UHJvbXB0OjpSZXBseShyZXN1bHQpLCBtX3BhZ2UtPnBhZ2VJRCgpLCBTZWNvbmRz
OjppbmZpbml0eSgpLCBJUEM6OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0Zm9ybVByb2Nlc3NX
aWxsU3VzcGVuZCkpCisgICAgaWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9j
ZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZh
U2NyaXB0UHJvbXB0KHdlYkZyYW1lLT5mcmFtZUlEKCksIFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJv
bUZyYW1lKGZyYW1lKSwgbWVzc2FnZSwgZGVmYXVsdFZhbHVlKSwgTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6UnVuSmF2YVNjcmlwdFByb21wdDo6UmVwbHkocmVzdWx0KSwgbV9wYWdlLnBhZ2VJRCgp
LCBTZWNvbmRzOjppbmZpbml0eSgpLCBJUEM6OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0Zm9y
bVByb2Nlc3NXaWxsU3VzcGVuZCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIHJldHVy
biAhcmVzdWx0LmlzTnVsbCgpOwpAQCAtNDQ1LDI3ICs0NTQsMjkgQEAgYm9vbCBXZWJDaHJvbWVD
bGllbnQ6OnJ1bkphdmFTY3JpcHRQcm9tcHQoRnJhbWUqIGZyYW1lLCBjb25zdCBTdHJpbmcmIG1l
c3NhZ2UsIGMKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRTdGF0dXNiYXJUZXh0KGNvbnN0IFN0
cmluZyYgc3RhdHVzYmFyVGV4dCkKIHsKICAgICAvLyBOb3RpZnkgdGhlIGJ1bmRsZSBjbGllbnQu
Ci0gICAgbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkud2lsbFNldFN0YXR1c2JhclRl
eHQobV9wYWdlLCBzdGF0dXNiYXJUZXh0KTsKKyAgICBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNs
aWVudCgpLndpbGxTZXRTdGF0dXNiYXJUZXh0KCZtX3BhZ2UsIHN0YXR1c2JhclRleHQpOwogCi0g
ICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldFN0YXR1c1RleHQoc3Rh
dHVzYmFyVGV4dCkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNl
dFN0YXR1c1RleHQoc3RhdHVzYmFyVGV4dCkpOwogfQogCiBLZXlib2FyZFVJTW9kZSBXZWJDaHJv
bWVDbGllbnQ6OmtleWJvYXJkVUlNb2RlKCkKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5rZXlib2Fy
ZFVJTW9kZSgpOworICAgIHJldHVybiBtX3BhZ2Uua2V5Ym9hcmRVSU1vZGUoKTsKIH0KIAogI2lm
IEVOQUJMRShQT0lOVEVSX0xPQ0spCisKIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpyZXF1ZXN0UG9p
bnRlckxvY2soKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpS
ZXF1ZXN0UG9pbnRlckxvY2soKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6UmVxdWVzdFBvaW50ZXJMb2NrKCkpOwogICAgIHJldHVybiB0cnVlOwogfQogCiB2b2lk
IFdlYkNocm9tZUNsaWVudDo6cmVxdWVzdFBvaW50ZXJVbmxvY2soKQogewotICAgIG1fcGFnZS0+
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZXF1ZXN0UG9pbnRlclVubG9jaygpKTsKKyAg
ICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZXF1ZXN0UG9pbnRlclVubG9j
aygpKTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjppbnZhbGlkYXRlUm9v
dFZpZXcoY29uc3QgSW50UmVjdCYpCkBAIC00NzUsNjEgKzQ4Niw2MSBAQCB2b2lkIFdlYkNocm9t
ZUNsaWVudDo6aW52YWxpZGF0ZVJvb3RWaWV3KGNvbnN0IEludFJlY3QmKQogCiB2b2lkIFdlYkNo
cm9tZUNsaWVudDo6aW52YWxpZGF0ZUNvbnRlbnRzQW5kUm9vdFZpZXcoY29uc3QgSW50UmVjdCYg
cmVjdCkKIHsKLSAgICBpZiAoRG9jdW1lbnQqIGRvY3VtZW50ID0gbV9wYWdlLT5jb3JlUGFnZSgp
LT5tYWluRnJhbWUoKS5kb2N1bWVudCgpKSB7CisgICAgaWYgKERvY3VtZW50KiBkb2N1bWVudCA9
IG1fcGFnZS5jb3JlUGFnZSgpLT5tYWluRnJhbWUoKS5kb2N1bWVudCgpKSB7CiAgICAgICAgIGlm
IChkb2N1bWVudC0+cHJpbnRpbmcoKSkKICAgICAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAg
ICBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPnNldE5lZWRzRGlzcGxheUluUmVjdChyZWN0KTsKKyAg
ICBtX3BhZ2UuZHJhd2luZ0FyZWEoKS0+c2V0TmVlZHNEaXNwbGF5SW5SZWN0KHJlY3QpOwogfQog
CiB2b2lkIFdlYkNocm9tZUNsaWVudDo6aW52YWxpZGF0ZUNvbnRlbnRzRm9yU2xvd1Njcm9sbChj
b25zdCBJbnRSZWN0JiByZWN0KQogewotICAgIGlmIChEb2N1bWVudCogZG9jdW1lbnQgPSBtX3Bh
Z2UtPmNvcmVQYWdlKCktPm1haW5GcmFtZSgpLmRvY3VtZW50KCkpIHsKKyAgICBpZiAoRG9jdW1l
bnQqIGRvY3VtZW50ID0gbV9wYWdlLmNvcmVQYWdlKCktPm1haW5GcmFtZSgpLmRvY3VtZW50KCkp
IHsKICAgICAgICAgaWYgKGRvY3VtZW50LT5wcmludGluZygpKQogICAgICAgICAgICAgcmV0dXJu
OwogICAgIH0KIAotICAgIG1fcGFnZS0+cGFnZURpZFNjcm9sbCgpOworICAgIG1fcGFnZS5wYWdl
RGlkU2Nyb2xsKCk7CiAjaWYgVVNFKENPT1JESU5BVEVEX0dSQVBISUNTKQotICAgIG1fcGFnZS0+
ZHJhd2luZ0FyZWEoKS0+c2Nyb2xsKHJlY3QsIEludFNpemUoKSk7CisgICAgbV9wYWdlLmRyYXdp
bmdBcmVhKCktPnNjcm9sbChyZWN0LCBJbnRTaXplKCkpOwogI2Vsc2UKLSAgICBtX3BhZ2UtPmRy
YXdpbmdBcmVhKCktPnNldE5lZWRzRGlzcGxheUluUmVjdChyZWN0KTsKKyAgICBtX3BhZ2UuZHJh
d2luZ0FyZWEoKS0+c2V0TmVlZHNEaXNwbGF5SW5SZWN0KHJlY3QpOwogI2VuZGlmCiB9CiAKIHZv
aWQgV2ViQ2hyb21lQ2xpZW50OjpzY3JvbGwoY29uc3QgSW50U2l6ZSYgc2Nyb2xsRGVsdGEsIGNv
bnN0IEludFJlY3QmIHNjcm9sbFJlY3QsIGNvbnN0IEludFJlY3QmIGNsaXBSZWN0KQogewotICAg
IG1fcGFnZS0+cGFnZURpZFNjcm9sbCgpOwotICAgIG1fcGFnZS0+ZHJhd2luZ0FyZWEoKS0+c2Ny
b2xsKGludGVyc2VjdGlvbihzY3JvbGxSZWN0LCBjbGlwUmVjdCksIHNjcm9sbERlbHRhKTsKKyAg
ICBtX3BhZ2UucGFnZURpZFNjcm9sbCgpOworICAgIG1fcGFnZS5kcmF3aW5nQXJlYSgpLT5zY3Jv
bGwoaW50ZXJzZWN0aW9uKHNjcm9sbFJlY3QsIGNsaXBSZWN0KSwgc2Nyb2xsRGVsdGEpOwogfQog
CiAjaWYgVVNFKENPT1JESU5BVEVEX0dSQVBISUNTKQogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmRl
bGVnYXRlZFNjcm9sbFJlcXVlc3RlZChjb25zdCBJbnRQb2ludCYgc2Nyb2xsT2Zmc2V0KQogewot
ICAgIG1fcGFnZS0+cGFnZURpZFJlcXVlc3RTY3JvbGwoc2Nyb2xsT2Zmc2V0KTsKKyAgICBtX3Bh
Z2UucGFnZURpZFJlcXVlc3RTY3JvbGwoc2Nyb2xsT2Zmc2V0KTsKIH0KICNlbmRpZgogCiBJbnRQ
b2ludCBXZWJDaHJvbWVDbGllbnQ6OnNjcmVlblRvUm9vdFZpZXcoY29uc3QgSW50UG9pbnQmIHBv
aW50KSBjb25zdAogewotICAgIHJldHVybiBtX3BhZ2UtPnNjcmVlblRvUm9vdFZpZXcocG9pbnQp
OworICAgIHJldHVybiBtX3BhZ2Uuc2NyZWVuVG9Sb290Vmlldyhwb2ludCk7CiB9CiAKIEludFJl
Y3QgV2ViQ2hyb21lQ2xpZW50Ojpyb290Vmlld1RvU2NyZWVuKGNvbnN0IEludFJlY3QmIHJlY3Qp
IGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+cm9vdFZpZXdUb1NjcmVlbihyZWN0KTsKKyAg
ICByZXR1cm4gbV9wYWdlLnJvb3RWaWV3VG9TY3JlZW4ocmVjdCk7CiB9CiAgICAgCiAjaWYgUExB
VEZPUk0oSU9TKQogSW50UG9pbnQgV2ViQ2hyb21lQ2xpZW50OjphY2Nlc3NpYmlsaXR5U2NyZWVu
VG9Sb290Vmlldyhjb25zdCBJbnRQb2ludCYgcG9pbnQpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1f
cGFnZS0+YWNjZXNzaWJpbGl0eVNjcmVlblRvUm9vdFZpZXcocG9pbnQpOworICAgIHJldHVybiBt
X3BhZ2UuYWNjZXNzaWJpbGl0eVNjcmVlblRvUm9vdFZpZXcocG9pbnQpOwogfQogCiBJbnRSZWN0
IFdlYkNocm9tZUNsaWVudDo6cm9vdFZpZXdUb0FjY2Vzc2liaWxpdHlTY3JlZW4oY29uc3QgSW50
UmVjdCYgcmVjdCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5yb290Vmlld1RvQWNjZXNz
aWJpbGl0eVNjcmVlbihyZWN0KTsKKyAgICByZXR1cm4gbV9wYWdlLnJvb3RWaWV3VG9BY2Nlc3Np
YmlsaXR5U2NyZWVuKHJlY3QpOwogfQogI2VuZGlmCiAKQEAgLTU0MSwyMCArNTUyLDIwIEBAIFBs
YXRmb3JtUGFnZUNsaWVudCBXZWJDaHJvbWVDbGllbnQ6OnBsYXRmb3JtUGFnZUNsaWVudCgpIGNv
bnN0CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpjb250ZW50c1NpemVDaGFuZ2VkKEZyYW1lKiBm
cmFtZSwgY29uc3QgSW50U2l6ZSYgc2l6ZSkgY29uc3QKIHsKLSAgICBpZiAoIW1fcGFnZS0+Y29y
ZVBhZ2UoKS0+c2V0dGluZ3MoKS5mcmFtZUZsYXR0ZW5pbmdFbmFibGVkKCkpIHsKKyAgICBpZiAo
IW1fcGFnZS5jb3JlUGFnZSgpLT5zZXR0aW5ncygpLmZyYW1lRmxhdHRlbmluZ0VuYWJsZWQoKSkg
ewogICAgICAgICBXZWJGcmFtZSogbGFyZ2VzdEZyYW1lID0gZmluZExhcmdlc3RGcmFtZUluRnJh
bWVTZXQobV9wYWdlKTsKICAgICAgICAgaWYgKGxhcmdlc3RGcmFtZSAhPSBtX2NhY2hlZEZyYW1l
U2V0TGFyZ2VzdEZyYW1lLmdldCgpKSB7CiAgICAgICAgICAgICBtX2NhY2hlZEZyYW1lU2V0TGFy
Z2VzdEZyYW1lID0gbGFyZ2VzdEZyYW1lOwotICAgICAgICAgICAgbV9wYWdlLT5zZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OkZyYW1lU2V0TGFyZ2VzdEZyYW1lQ2hhbmdlZChsYXJnZXN0RnJh
bWUgPyBsYXJnZXN0RnJhbWUtPmZyYW1lSUQoKSA6IDApKTsKKyAgICAgICAgICAgIG1fcGFnZS5z
ZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZyYW1lU2V0TGFyZ2VzdEZyYW1lQ2hhbmdlZChs
YXJnZXN0RnJhbWUgPyBsYXJnZXN0RnJhbWUtPmZyYW1lSUQoKSA6IDApKTsKICAgICAgICAgfQog
ICAgIH0KIAogICAgIGlmICgmZnJhbWUtPnBhZ2UoKS0+bWFpbkZyYW1lKCkgIT0gZnJhbWUpCiAg
ICAgICAgIHJldHVybjsKIAotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjpEaWRDaGFuZ2VDb250ZW50U2l6ZShzaXplKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6RGlkQ2hhbmdlQ29udGVudFNpemUoc2l6ZSkpOwogCi0gICAgbV9wYWdl
LT5kcmF3aW5nQXJlYSgpLT5tYWluRnJhbWVDb250ZW50U2l6ZUNoYW5nZWQoc2l6ZSk7CisgICAg
bV9wYWdlLmRyYXdpbmdBcmVhKCktPm1haW5GcmFtZUNvbnRlbnRTaXplQ2hhbmdlZChzaXplKTsK
IAogICAgIEZyYW1lVmlldyogZnJhbWVWaWV3ID0gZnJhbWUtPnZpZXcoKTsKICAgICBpZiAoZnJh
bWVWaWV3ICYmICFmcmFtZVZpZXctPmRlbGVnYXRlc1Njcm9sbGluZygpKSAgewpAQCAtNTYyLDcg
KzU3Myw3IEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpjb250ZW50c1NpemVDaGFuZ2VkKEZyYW1l
KiBmcmFtZSwgY29uc3QgSW50U2l6ZSYgc2l6ZSkgY29uCiAgICAgICAgIGJvb2wgaGFzVmVydGlj
YWxTY3JvbGxiYXIgPSBmcmFtZVZpZXctPnZlcnRpY2FsU2Nyb2xsYmFyKCk7CiAKICAgICAgICAg
aWYgKGhhc0hvcml6b250YWxTY3JvbGxiYXIgIT0gbV9jYWNoZWRNYWluRnJhbWVIYXNIb3Jpem9u
dGFsU2Nyb2xsYmFyIHx8IGhhc1ZlcnRpY2FsU2Nyb2xsYmFyICE9IG1fY2FjaGVkTWFpbkZyYW1l
SGFzVmVydGljYWxTY3JvbGxiYXIpIHsKLSAgICAgICAgICAgIG1fcGFnZS0+c2VuZChNZXNzYWdl
czo6V2ViUGFnZVByb3h5OjpEaWRDaGFuZ2VTY3JvbGxiYXJzRm9yTWFpbkZyYW1lKGhhc0hvcml6
b250YWxTY3JvbGxiYXIsIGhhc1ZlcnRpY2FsU2Nyb2xsYmFyKSk7CisgICAgICAgICAgICBtX3Bh
Z2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRDaGFuZ2VTY3JvbGxiYXJzRm9yTWFp
bkZyYW1lKGhhc0hvcml6b250YWxTY3JvbGxiYXIsIGhhc1ZlcnRpY2FsU2Nyb2xsYmFyKSk7CiAK
ICAgICAgICAgICAgIG1fY2FjaGVkTWFpbkZyYW1lSGFzSG9yaXpvbnRhbFNjcm9sbGJhciA9IGhh
c0hvcml6b250YWxTY3JvbGxiYXI7CiAgICAgICAgICAgICBtX2NhY2hlZE1haW5GcmFtZUhhc1Zl
cnRpY2FsU2Nyb2xsYmFyID0gaGFzVmVydGljYWxTY3JvbGxiYXI7CkBAIC02MDMsMTIgKzYxNCwx
MiBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6dW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2Vk
KEVsZW1lbnQqIGVsZW1lbnQsIFJlbmRlckVtYgogICAgIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQq
IHBsdWdpbkVsZW1lbnQgPSBzdGF0aWNfY2FzdDxIVE1MUGx1Z0luSW1hZ2VFbGVtZW50Kj4oZWxl
bWVudCk7CiAKICAgICBTdHJpbmcgZnJhbWVVUkxTdHJpbmcgPSBwbHVnaW5FbGVtZW50LT5kb2N1
bWVudCgpLmZyYW1lKCktPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCktPnJlc3BvbnNlVVJMKCku
c3RyaW5nKCk7Ci0gICAgU3RyaW5nIHBhZ2VVUkxTdHJpbmcgPSBtX3BhZ2UtPm1haW5GcmFtZSgp
LT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOworICAg
IFN0cmluZyBwYWdlVVJMU3RyaW5nID0gbV9wYWdlLm1haW5GcmFtZSgpLT5sb2FkZXIoKS5kb2N1
bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwogICAgIFN0cmluZyBwbHVnaW5V
UkxTdHJpbmcgPSBwbHVnaW5FbGVtZW50LT5kb2N1bWVudCgpLmNvbXBsZXRlVVJMKHBsdWdpbkVs
ZW1lbnQtPnVybCgpKS5zdHJpbmcoKTsKICAgICBVUkwgcGx1Z2luc3BhZ2VBdHRyaWJ1dGVVUkwg
PSBlbGVtZW50LT5kb2N1bWVudCgpLmNvbXBsZXRlVVJMKHN0cmlwTGVhZGluZ0FuZFRyYWlsaW5n
SFRNTFNwYWNlcyhwbHVnaW5FbGVtZW50LT5nZXRBdHRyaWJ1dGUocGx1Z2luc3BhZ2VBdHRyKSkp
OwogICAgIGlmICghcGx1Z2luc3BhZ2VBdHRyaWJ1dGVVUkwucHJvdG9jb2xJc0luSFRUUEZhbWls
eSgpKQogICAgICAgICBwbHVnaW5zcGFnZUF0dHJpYnV0ZVVSTCA9IFVSTCgpOwotICAgIG1fcGFn
ZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpVbmF2YWlsYWJsZVBsdWdpbkJ1dHRvbkNs
aWNrZWQocGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24sIHBsdWdpbkVsZW1lbnQtPnNlcnZpY2VU
eXBlKCksIHBsdWdpblVSTFN0cmluZywgcGx1Z2luc3BhZ2VBdHRyaWJ1dGVVUkwuc3RyaW5nKCks
IGZyYW1lVVJMU3RyaW5nLCBwYWdlVVJMU3RyaW5nKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2Fn
ZXM6OldlYlBhZ2VQcm94eTo6VW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2VkKHBsdWdpblVu
YXZhaWxhYmlsaXR5UmVhc29uLCBwbHVnaW5FbGVtZW50LT5zZXJ2aWNlVHlwZSgpLCBwbHVnaW5V
UkxTdHJpbmcsIHBsdWdpbnNwYWdlQXR0cmlidXRlVVJMLnN0cmluZygpLCBmcmFtZVVSTFN0cmlu
ZywgcGFnZVVSTFN0cmluZykpOwogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0oZWxlbWVudCk7CiAg
ICAgVU5VU0VEX1BBUkFNKHBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKTsKQEAgLTYyNSwxMSAr
NjM2LDExIEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojptb3VzZURpZE1vdmVPdmVyRWxlbWVudChj
b25zdCBIaXRUZXN0UmVzdWx0JiBoaXRUZXN0UmVzdWx0CiAgICAgUmVmUHRyPEFQSTo6T2JqZWN0
PiB1c2VyRGF0YTsKIAogICAgIC8vIE5vdGlmeSB0aGUgYnVuZGxlIGNsaWVudC4KLSAgICBtX3Bh
Z2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5tb3VzZURpZE1vdmVPdmVyRWxlbWVudChtX3Bh
Z2UsIGhpdFRlc3RSZXN1bHQsIHN0YXRpY19jYXN0PFdlYkV2ZW50OjpNb2RpZmllcnM+KG1vZGlm
aWVyRmxhZ3MpLCB1c2VyRGF0YSk7CisgICAgbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQo
KS5tb3VzZURpZE1vdmVPdmVyRWxlbWVudCgmbV9wYWdlLCBoaXRUZXN0UmVzdWx0LCBzdGF0aWNf
Y2FzdDxXZWJFdmVudDo6TW9kaWZpZXJzPihtb2RpZmllckZsYWdzKSwgdXNlckRhdGEpOwogCiAg
ICAgLy8gTm90aWZ5IHRoZSBVSVByb2Nlc3MuCiAgICAgV2ViSGl0VGVzdFJlc3VsdERhdGEgd2Vi
SGl0VGVzdFJlc3VsdERhdGEoaGl0VGVzdFJlc3VsdCk7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6Ok1vdXNlRGlkTW92ZU92ZXJFbGVtZW50KHdlYkhpdFRlc3RSZXN1
bHREYXRhLCBtb2RpZmllckZsYWdzLCBVc2VyRGF0YShXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS50
cmFuc2Zvcm1PYmplY3RzVG9IYW5kbGVzKHVzZXJEYXRhLmdldCgpKS5nZXQoKSkpKTsKKyAgICBt
X3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpNb3VzZURpZE1vdmVPdmVyRWxlbWVu
dCh3ZWJIaXRUZXN0UmVzdWx0RGF0YSwgbW9kaWZpZXJGbGFncywgVXNlckRhdGEoV2ViUHJvY2Vz
czo6c2luZ2xldG9uKCkudHJhbnNmb3JtT2JqZWN0c1RvSGFuZGxlcyh1c2VyRGF0YS5nZXQoKSku
Z2V0KCkpKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRUb29sVGlwKGNvbnN0IFN0
cmluZyYgdG9vbFRpcCwgVGV4dERpcmVjdGlvbikKQEAgLTY0MCw3ICs2NTEsNyBAQCB2b2lkIFdl
YkNocm9tZUNsaWVudDo6c2V0VG9vbFRpcChjb25zdCBTdHJpbmcmIHRvb2xUaXAsIFRleHREaXJl
Y3Rpb24pCiAgICAgICAgIHJldHVybjsKICAgICBtX2NhY2hlZFRvb2xUaXAgPSB0b29sVGlwOwog
Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldFRvb2xUaXAobV9j
YWNoZWRUb29sVGlwKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6
U2V0VG9vbFRpcChtX2NhY2hlZFRvb2xUaXApKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6
OnByaW50KEZyYW1lKiBmcmFtZSkKQEAgLTY2OCw3ICs2NzksNyBAQCB2b2lkIFdlYkNocm9tZUNs
aWVudDo6cHJpbnQoRnJhbWUqIGZyYW1lKQogICAgIH0KICNlbmRpZgogCi0gICAgbV9wYWdlLT5z
ZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQcmludEZyYW1lKHdlYkZyYW1lLT5mcmFt
ZUlEKCkpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQcmludEZyYW1lOjpSZXBseSgpLCBTZWNv
bmRzOjppbmZpbml0eSgpLCBJUEM6OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0Zm9ybVByb2Nl
c3NXaWxsU3VzcGVuZCk7CisgICAgbV9wYWdlLnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OlByaW50RnJhbWUod2ViRnJhbWUtPmZyYW1lSUQoKSksIE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OlByaW50RnJhbWU6OlJlcGx5KCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5
bmNPcHRpb246OkluZm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKTsKIH0KIAogdm9pZCBX
ZWJDaHJvbWVDbGllbnQ6OmV4Y2VlZGVkRGF0YWJhc2VRdW90YShGcmFtZSogZnJhbWUsIGNvbnN0
IFN0cmluZyYgZGF0YWJhc2VOYW1lLCBEYXRhYmFzZURldGFpbHMgZGV0YWlscykKQEAgLTY4Niwx
MiArNjk3LDEyIEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpleGNlZWRlZERhdGFiYXNlUXVvdGEo
RnJhbWUqIGZyYW1lLCBjb25zdCBTdHJpbmcmIGRhdGFiYXNlCiAgICAgYXV0byBjdXJyZW50T3Jp
Z2luVXNhZ2UgPSB0cmFja2VyLnVzYWdlKG9yaWdpbkRhdGEpOwogICAgIHVpbnQ2NF90IG5ld1F1
b3RhID0gMDsKICAgICBSZWZQdHI8QVBJOjpTZWN1cml0eU9yaWdpbj4gc2VjdXJpdHlPcmlnaW4g
PSBBUEk6OlNlY3VyaXR5T3JpZ2luOjpjcmVhdGUoV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRh
Ojpmcm9tRGF0YWJhc2VJZGVudGlmaWVyKFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJv
bVNlY3VyaXR5T3JpZ2luKCpvcmlnaW4pLmRhdGFiYXNlSWRlbnRpZmllcigpKS0+c2VjdXJpdHlP
cmlnaW4oKSk7Ci0gICAgbmV3UXVvdGEgPSBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQo
KS5kaWRFeGNlZWREYXRhYmFzZVF1b3RhKG1fcGFnZSwgc2VjdXJpdHlPcmlnaW4uZ2V0KCksIGRh
dGFiYXNlTmFtZSwgZGV0YWlscy5kaXNwbGF5TmFtZSgpLCBjdXJyZW50UXVvdGEsIGN1cnJlbnRP
cmlnaW5Vc2FnZSwgZGV0YWlscy5jdXJyZW50VXNhZ2UoKSwgZGV0YWlscy5leHBlY3RlZFVzYWdl
KCkpOworICAgIG5ld1F1b3RhID0gbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5kaWRF
eGNlZWREYXRhYmFzZVF1b3RhKCZtX3BhZ2UsIHNlY3VyaXR5T3JpZ2luLmdldCgpLCBkYXRhYmFz
ZU5hbWUsIGRldGFpbHMuZGlzcGxheU5hbWUoKSwgY3VycmVudFF1b3RhLCBjdXJyZW50T3JpZ2lu
VXNhZ2UsIGRldGFpbHMuY3VycmVudFVzYWdlKCksIGRldGFpbHMuZXhwZWN0ZWRVc2FnZSgpKTsK
IAogICAgIGlmICghbmV3UXVvdGEpIHsKICAgICAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCku
cGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoCiAgICAgICAgICAgICBNZXNzYWdl
czo6V2ViUGFnZVByb3h5OjpFeGNlZWRlZERhdGFiYXNlUXVvdGEod2ViRnJhbWUtPmZyYW1lSUQo
KSwgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tU2VjdXJpdHlPcmlnaW4oKm9yaWdp
bikuZGF0YWJhc2VJZGVudGlmaWVyKCksIGRhdGFiYXNlTmFtZSwgZGV0YWlscy5kaXNwbGF5TmFt
ZSgpLCBjdXJyZW50UXVvdGEsIGN1cnJlbnRPcmlnaW5Vc2FnZSwgZGV0YWlscy5jdXJyZW50VXNh
Z2UoKSwgZGV0YWlscy5leHBlY3RlZFVzYWdlKCkpLAotICAgICAgICAgICAgTWVzc2FnZXM6Oldl
YlBhZ2VQcm94eTo6RXhjZWVkZWREYXRhYmFzZVF1b3RhOjpSZXBseShuZXdRdW90YSksIG1fcGFn
ZS0+cGFnZUlEKCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246Oklu
Zm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKTsKKyAgICAgICAgICAgIE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OkV4Y2VlZGVkRGF0YWJhc2VRdW90YTo6UmVwbHkobmV3UXVvdGEpLCBtX3Bh
Z2UucGFnZUlEKCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246Oklu
Zm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKTsKICAgICB9CiAKICAgICB0cmFja2VyLnNl
dFF1b3RhKG9yaWdpbkRhdGEsIG5ld1F1b3RhKTsKQEAgLTcwNSwxMCArNzE2LDEwIEBAIHZvaWQg
V2ViQ2hyb21lQ2xpZW50OjpyZWFjaGVkTWF4QXBwQ2FjaGVTaXplKGludDY0X3QpCiB2b2lkIFdl
YkNocm9tZUNsaWVudDo6cmVhY2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YShTZWN1cml0
eU9yaWdpbiogb3JpZ2luLCBpbnQ2NF90IHRvdGFsQnl0ZXNOZWVkZWQpCiB7CiAgICAgUmVmUHRy
PEFQSTo6U2VjdXJpdHlPcmlnaW4+IHNlY3VyaXR5T3JpZ2luID0gQVBJOjpTZWN1cml0eU9yaWdp
bjo6Y3JlYXRlRnJvbVN0cmluZyhvcmlnaW4tPnRvU3RyaW5nKCkpOwotICAgIGlmIChtX3BhZ2Ut
PmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5kaWRSZWFjaEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5R
dW90YShtX3BhZ2UsIHNlY3VyaXR5T3JpZ2luLmdldCgpLCB0b3RhbEJ5dGVzTmVlZGVkKSkKKyAg
ICBpZiAobV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5kaWRSZWFjaEFwcGxpY2F0aW9u
Q2FjaGVPcmlnaW5RdW90YSgmbV9wYWdlLCBzZWN1cml0eU9yaWdpbi5nZXQoKSwgdG90YWxCeXRl
c05lZWRlZCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGF1dG8mIGNhY2hlU3RvcmFnZSA9IG1f
cGFnZS0+Y29yZVBhZ2UoKS0+YXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKTsKKyAgICBhdXRvJiBj
YWNoZVN0b3JhZ2UgPSBtX3BhZ2UuY29yZVBhZ2UoKS0+YXBwbGljYXRpb25DYWNoZVN0b3JhZ2Uo
KTsKICAgICBpbnQ2NF90IGN1cnJlbnRRdW90YSA9IDA7CiAgICAgaWYgKCFjYWNoZVN0b3JhZ2Uu
Y2FsY3VsYXRlUXVvdGFGb3JPcmlnaW4ob3JpZ2luLCBjdXJyZW50UXVvdGEpKQogICAgICAgICBy
ZXR1cm47CkBAIC03MTYsNyArNzI3LDcgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJlYWNoZWRB
cHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoU2VjdXJpdHlPcmlnaW4qIG9yaWdpbiwKICAgICB1
aW50NjRfdCBuZXdRdW90YSA9IDA7CiAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50
UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoCiAgICAgICAgIE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OlJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoV2ViQ29yZTo6U2VjdXJp
dHlPcmlnaW5EYXRhOjpmcm9tU2VjdXJpdHlPcmlnaW4oKm9yaWdpbikuZGF0YWJhc2VJZGVudGlm
aWVyKCksIGN1cnJlbnRRdW90YSwgdG90YWxCeXRlc05lZWRlZCksCi0gICAgICAgIE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6OlJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGE6OlJlcGx5
KG5ld1F1b3RhKSwgbV9wYWdlLT5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBDOjpT
ZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpOworICAgICAg
ICBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZWFjaGVkQXBwbGljYXRpb25DYWNoZU9yaWdpblF1
b3RhOjpSZXBseShuZXdRdW90YSksIG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHko
KSwgSVBDOjpTZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQp
OwogCiAgICAgY2FjaGVTdG9yYWdlLnN0b3JlVXBkYXRlZFF1b3RhRm9yT3JpZ2luKG9yaWdpbiwg
bmV3UXVvdGEpOwogfQpAQCAtNzMwLDM1ICs3NDEsMzIgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6
OmFubm90YXRlZFJlZ2lvbnNDaGFuZ2VkKCkKIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnNob3Vs
ZFJlcGxhY2VXaXRoR2VuZXJhdGVkRmlsZUZvclVwbG9hZChjb25zdCBTdHJpbmcmIHBhdGgsIFN0
cmluZyYgZ2VuZXJhdGVkRmlsZW5hbWUpCiB7Ci0gICAgZ2VuZXJhdGVkRmlsZW5hbWUgPSBtX3Bh
Z2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5zaG91bGRHZW5lcmF0ZUZpbGVGb3JVcGxvYWQo
bV9wYWdlLCBwYXRoKTsKKyAgICBnZW5lcmF0ZWRGaWxlbmFtZSA9IG1fcGFnZS5pbmplY3RlZEJ1
bmRsZVVJQ2xpZW50KCkuc2hvdWxkR2VuZXJhdGVGaWxlRm9yVXBsb2FkKCZtX3BhZ2UsIHBhdGgp
OwogICAgIHJldHVybiAhZ2VuZXJhdGVkRmlsZW5hbWUuaXNOdWxsKCk7CiB9CiAKIFN0cmluZyBX
ZWJDaHJvbWVDbGllbnQ6OmdlbmVyYXRlUmVwbGFjZW1lbnRGaWxlKGNvbnN0IFN0cmluZyYgcGF0
aCkKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkuZ2VuZXJh
dGVGaWxlRm9yVXBsb2FkKG1fcGFnZSwgcGF0aCk7CisgICAgcmV0dXJuIG1fcGFnZS5pbmplY3Rl
ZEJ1bmRsZVVJQ2xpZW50KCkuZ2VuZXJhdGVGaWxlRm9yVXBsb2FkKCZtX3BhZ2UsIHBhdGgpOwog
fQogCiAjaWYgRU5BQkxFKElOUFVUX1RZUEVfQ09MT1IpCiBzdGQ6OnVuaXF1ZV9wdHI8Q29sb3JD
aG9vc2VyPiBXZWJDaHJvbWVDbGllbnQ6OmNyZWF0ZUNvbG9yQ2hvb3NlcihDb2xvckNob29zZXJD
bGllbnQqIGNsaWVudCwgY29uc3QgQ29sb3ImIGluaXRpYWxDb2xvcikKIHsKLSAgICByZXR1cm4g
c3RkOjptYWtlX3VuaXF1ZTxXZWJDb2xvckNob29zZXI+KG1fcGFnZSwgY2xpZW50LCBpbml0aWFs
Q29sb3IpOworICAgIHJldHVybiBzdGQ6Om1ha2VfdW5pcXVlPFdlYkNvbG9yQ2hvb3Nlcj4oJm1f
cGFnZSwgY2xpZW50LCBpbml0aWFsQ29sb3IpOwogfQogI2VuZGlmCiAKLXZvaWQgV2ViQ2hyb21l
Q2xpZW50OjpydW5PcGVuUGFuZWwoRnJhbWUqIGZyYW1lLCBQYXNzUmVmUHRyPEZpbGVDaG9vc2Vy
PiBwcnBGaWxlQ2hvb3NlcikKK3ZvaWQgV2ViQ2hyb21lQ2xpZW50OjpydW5PcGVuUGFuZWwoRnJh
bWUmIGZyYW1lLCBGaWxlQ2hvb3NlciYgZmlsZUNob29zZXIpCiB7Ci0gICAgaWYgKG1fcGFnZS0+
YWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIoKSkKKyAgICBpZiAobV9wYWdlLmFjdGl2ZU9w
ZW5QYW5lbFJlc3VsdExpc3RlbmVyKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIFJlZlB0cjxG
aWxlQ2hvb3Nlcj4gZmlsZUNob29zZXIgPSBwcnBGaWxlQ2hvb3NlcjsKKyAgICBtX3BhZ2Uuc2V0
QWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIoV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXI6
OmNyZWF0ZSgmbV9wYWdlLCAmZmlsZUNob29zZXIpKTsKIAotICAgIG1fcGFnZS0+c2V0QWN0aXZl
T3BlblBhbmVsUmVzdWx0TGlzdGVuZXIoV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXI6OmNyZWF0
ZShtX3BhZ2UsIGZpbGVDaG9vc2VyLmdldCgpKSk7Ci0KLSAgICBXZWJGcmFtZSogd2ViRnJhbWUg
PSBXZWJGcmFtZTo6ZnJvbUNvcmVGcmFtZSgqZnJhbWUpOworICAgIGF1dG8qIHdlYkZyYW1lID0g
V2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoZnJhbWUpOwogICAgIEFTU0VSVCh3ZWJGcmFtZSk7Ci0K
LSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuT3BlblBhbmVsKHdl
YkZyYW1lLT5mcmFtZUlEKCksIFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbUZyYW1lKGZyYW1lKSwg
ZmlsZUNob29zZXItPnNldHRpbmdzKCkpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2Vi
UGFnZVByb3h5OjpSdW5PcGVuUGFuZWwod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmln
aW5EYXRhOjpmcm9tRnJhbWUoJmZyYW1lKSwgZmlsZUNob29zZXIuc2V0dGluZ3MoKSkpOwogfQog
CiB2b2lkIFdlYkNocm9tZUNsaWVudDo6bG9hZEljb25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8U3Ry
aW5nPiYgZmlsZW5hbWVzLCBGaWxlSWNvbkxvYWRlciYgbG9hZGVyKQpAQCAtNzY3LDM0ICs3NzUs
MzggQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmxvYWRJY29uRm9yRmlsZXMoY29uc3QgVmVjdG9y
PFN0cmluZz4mIGZpbGVuYW1lcywgRmlsZUljb24KIH0KIAogI2lmICFQTEFURk9STShJT1MpCisK
IHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRDdXJzb3IoY29uc3QgV2ViQ29yZTo6Q3Vyc29yJiBj
dXJzb3IpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldEN1
cnNvcihjdXJzb3IpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpT
ZXRDdXJzb3IoY3Vyc29yKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRDdXJzb3JI
aWRkZW5VbnRpbE1vdXNlTW92ZXMoYm9vbCBoaWRkZW5VbnRpbE1vdXNlTW92ZXMpCiB7Ci0gICAg
bV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldEN1cnNvckhpZGRlblVudGls
TW91c2VNb3ZlcyhoaWRkZW5VbnRpbE1vdXNlTW92ZXMpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpTZXRDdXJzb3JIaWRkZW5VbnRpbE1vdXNlTW92ZXMoaGlkZGVu
VW50aWxNb3VzZU1vdmVzKSk7CiB9CisKICNlbmRpZgogCiAjaWYgRU5BQkxFKFJFUVVFU1RfQU5J
TUFUSU9OX0ZSQU1FKSAmJiAhVVNFKFJFUVVFU1RfQU5JTUFUSU9OX0ZSQU1FX1RJTUVSKQorCiB2
b2lkIFdlYkNocm9tZUNsaWVudDo6c2NoZWR1bGVBbmltYXRpb24oKQogewogI2lmIFVTRShDT09S
RElOQVRFRF9HUkFQSElDUykKLSAgICBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPmxheWVyVHJlZUhv
c3QoKS0+c2NoZWR1bGVBbmltYXRpb24oKTsKKyAgICBtX3BhZ2UuZHJhd2luZ0FyZWEoKS0+bGF5
ZXJUcmVlSG9zdCgpLT5zY2hlZHVsZUFuaW1hdGlvbigpOwogI2VuZGlmCiB9CisKICNlbmRpZgog
CiB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xzKGNvbnN0IFZl
Y3RvcjxSZWZQdHI8V2ViQ29yZTo6RWxlbWVudD4+JiBlbGVtZW50cykKIHsKLSAgICByZXR1cm4g
bV9wYWdlLT5pbmplY3RlZEJ1bmRsZUZvcm1DbGllbnQoKS5kaWRBc3NvY2lhdGVGb3JtQ29udHJv
bHMobV9wYWdlLCBlbGVtZW50cyk7CisgICAgcmV0dXJuIG1fcGFnZS5pbmplY3RlZEJ1bmRsZUZv
cm1DbGllbnQoKS5kaWRBc3NvY2lhdGVGb3JtQ29udHJvbHMoJm1fcGFnZSwgZWxlbWVudHMpOwog
fQogCiBib29sIFdlYkNocm9tZUNsaWVudDo6c2hvdWxkTm90aWZ5T25Gb3JtQ2hhbmdlcygpCiB7
Ci0gICAgcmV0dXJuIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCkuc2hvdWxkTm90
aWZ5T25Gb3JtQ2hhbmdlcyhtX3BhZ2UpOworICAgIHJldHVybiBtX3BhZ2UuaW5qZWN0ZWRCdW5k
bGVGb3JtQ2xpZW50KCkuc2hvdWxkTm90aWZ5T25Gb3JtQ2hhbmdlcygmbV9wYWdlKTsKIH0KIAog
Ym9vbCBXZWJDaHJvbWVDbGllbnQ6OnNlbGVjdEl0ZW1Xcml0aW5nRGlyZWN0aW9uSXNOYXR1cmFs
KCkKQEAgLTgxOSwzOSArODMxLDQxIEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpoYXNPcGVuZWRQ
b3B1cCgpIGNvbnN0CiAKIFJlZlB0cjxXZWJDb3JlOjpQb3B1cE1lbnU+IFdlYkNocm9tZUNsaWVu
dDo6Y3JlYXRlUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCogY2xpZW50KSBjb25z
dAogewotICAgIHJldHVybiBXZWJQb3B1cE1lbnU6OmNyZWF0ZShtX3BhZ2UsIGNsaWVudCk7Cisg
ICAgcmV0dXJuIFdlYlBvcHVwTWVudTo6Y3JlYXRlKCZtX3BhZ2UsIGNsaWVudCk7CiB9CiAKIFJl
ZlB0cjxXZWJDb3JlOjpTZWFyY2hQb3B1cE1lbnU+IFdlYkNocm9tZUNsaWVudDo6Y3JlYXRlU2Vh
cmNoUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCogY2xpZW50KSBjb25zdAogewot
ICAgIHJldHVybiBXZWJTZWFyY2hQb3B1cE1lbnU6OmNyZWF0ZShtX3BhZ2UsIGNsaWVudCk7Cisg
ICAgcmV0dXJuIFdlYlNlYXJjaFBvcHVwTWVudTo6Y3JlYXRlKCZtX3BhZ2UsIGNsaWVudCk7CiB9
CiAKIEdyYXBoaWNzTGF5ZXJGYWN0b3J5KiBXZWJDaHJvbWVDbGllbnQ6OmdyYXBoaWNzTGF5ZXJG
YWN0b3J5KCkgY29uc3QKIHsKLSAgICBpZiAoYXV0byBkcmF3aW5nQXJlYSA9IG1fcGFnZS0+ZHJh
d2luZ0FyZWEoKSkKKyAgICBpZiAoYXV0byBkcmF3aW5nQXJlYSA9IG1fcGFnZS5kcmF3aW5nQXJl
YSgpKQogICAgICAgICByZXR1cm4gZHJhd2luZ0FyZWEtPmdyYXBoaWNzTGF5ZXJGYWN0b3J5KCk7
CiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKICNpZiBVU0UoUkVRVUVTVF9BTklNQVRJT05fRlJB
TUVfRElTUExBWV9NT05JVE9SKQorCiBSZWZQdHI8V2ViQ29yZTo6RGlzcGxheVJlZnJlc2hNb25p
dG9yPiBXZWJDaHJvbWVDbGllbnQ6OmNyZWF0ZURpc3BsYXlSZWZyZXNoTW9uaXRvcihQbGF0Zm9y
bURpc3BsYXlJRCBkaXNwbGF5SUQpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+ZHJhd2lu
Z0FyZWEoKS0+Y3JlYXRlRGlzcGxheVJlZnJlc2hNb25pdG9yKGRpc3BsYXlJRCk7CisgICAgcmV0
dXJuIG1fcGFnZS5kcmF3aW5nQXJlYSgpLT5jcmVhdGVEaXNwbGF5UmVmcmVzaE1vbml0b3IoZGlz
cGxheUlEKTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjphdHRhY2hSb290
R3JhcGhpY3NMYXllcihGcmFtZSosIEdyYXBoaWNzTGF5ZXIqIGxheWVyKQogewogICAgIGlmIChs
YXllcikKLSAgICAgICAgbV9wYWdlLT5lbnRlckFjY2VsZXJhdGVkQ29tcG9zaXRpbmdNb2RlKGxh
eWVyKTsKKyAgICAgICAgbV9wYWdlLmVudGVyQWNjZWxlcmF0ZWRDb21wb3NpdGluZ01vZGUobGF5
ZXIpOwogICAgIGVsc2UKLSAgICAgICAgbV9wYWdlLT5leGl0QWNjZWxlcmF0ZWRDb21wb3NpdGlu
Z01vZGUoKTsKKyAgICAgICAgbV9wYWdlLmV4aXRBY2NlbGVyYXRlZENvbXBvc2l0aW5nTW9kZSgp
OwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6YXR0YWNoVmlld092ZXJsYXlHcmFwaGljc0xh
eWVyKEZyYW1lKiBmcmFtZSwgR3JhcGhpY3NMYXllciogZ3JhcGhpY3NMYXllcikKIHsKLSAgICBp
ZiAoYXV0byBkcmF3aW5nQXJlYSA9IG1fcGFnZS0+ZHJhd2luZ0FyZWEoKSkKKyAgICBpZiAoYXV0
byBkcmF3aW5nQXJlYSA9IG1fcGFnZS5kcmF3aW5nQXJlYSgpKQogICAgICAgICBkcmF3aW5nQXJl
YS0+YXR0YWNoVmlld092ZXJsYXlHcmFwaGljc0xheWVyKGZyYW1lLCBncmFwaGljc0xheWVyKTsK
IH0KIApAQCAtODYyLDEyOCArODc2LDEzNiBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0TmVl
ZHNPbmVTaG90RHJhd2luZ1N5bmNocm9uaXphdGlvbigpCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50
OjpzY2hlZHVsZUNvbXBvc2l0aW5nTGF5ZXJGbHVzaCgpCiB7Ci0gICAgaWYgKG1fcGFnZS0+ZHJh
d2luZ0FyZWEoKSkKLSAgICAgICAgbV9wYWdlLT5kcmF3aW5nQXJlYSgpLT5zY2hlZHVsZUNvbXBv
c2l0aW5nTGF5ZXJGbHVzaCgpOworICAgIGlmIChtX3BhZ2UuZHJhd2luZ0FyZWEoKSkKKyAgICAg
ICAgbV9wYWdlLmRyYXdpbmdBcmVhKCktPnNjaGVkdWxlQ29tcG9zaXRpbmdMYXllckZsdXNoKCk7
CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjphZGp1c3RMYXllckZsdXNoVGhyb3R0bGluZyhX
ZWJDb3JlOjpMYXllckZsdXNoVGhyb3R0bGVTdGF0ZTo6RmxhZ3MgZmxhZ3MpCiB7Ci0gICAgcmV0
dXJuIG1fcGFnZS0+ZHJhd2luZ0FyZWEoKSAmJiBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPmFkanVz
dExheWVyRmx1c2hUaHJvdHRsaW5nKGZsYWdzKTsKKyAgICByZXR1cm4gbV9wYWdlLmRyYXdpbmdB
cmVhKCkgJiYgbV9wYWdlLmRyYXdpbmdBcmVhKCktPmFkanVzdExheWVyRmx1c2hUaHJvdHRsaW5n
KGZsYWdzKTsKIH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OmxheWVyVHJlZVN0YXRlSXNGcm96
ZW4oKSBjb25zdAogewotICAgIGlmIChtX3BhZ2UtPmRyYXdpbmdBcmVhKCkpCi0gICAgICAgIHJl
dHVybiBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPmxheWVyVHJlZVN0YXRlSXNGcm96ZW4oKTsKKyAg
ICBpZiAobV9wYWdlLmRyYXdpbmdBcmVhKCkpCisgICAgICAgIHJldHVybiBtX3BhZ2UuZHJhd2lu
Z0FyZWEoKS0+bGF5ZXJUcmVlU3RhdGVJc0Zyb3plbigpOwogCiAgICAgcmV0dXJuIGZhbHNlOwog
fQogCiAjaWYgRU5BQkxFKEFTWU5DX1NDUk9MTElORykKKwogUGFzc1JlZlB0cjxTY3JvbGxpbmdD
b29yZGluYXRvcj4gV2ViQ2hyb21lQ2xpZW50OjpjcmVhdGVTY3JvbGxpbmdDb29yZGluYXRvcihQ
YWdlKiBwYWdlKSBjb25zdAogewotICAgIEFTU0VSVChtX3BhZ2UtPmNvcmVQYWdlKCkgPT0gcGFn
ZSk7Ci0gICAgaWYgKG1fcGFnZS0+ZHJhd2luZ0FyZWEoKS0+dHlwZSgpID09IERyYXdpbmdBcmVh
VHlwZVJlbW90ZUxheWVyVHJlZSkKLSAgICAgICAgcmV0dXJuIFJlbW90ZVNjcm9sbGluZ0Nvb3Jk
aW5hdG9yOjpjcmVhdGUobV9wYWdlKTsKLQotICAgIHJldHVybiAwOworICAgIEFTU0VSVChtX3Bh
Z2UuY29yZVBhZ2UoKSA9PSBwYWdlKTsKKyAgICBpZiAobV9wYWdlLmRyYXdpbmdBcmVhKCktPnR5
cGUoKSAhPSBEcmF3aW5nQXJlYVR5cGVSZW1vdGVMYXllclRyZWUpCisgICAgICAgIHJldHVybiBu
dWxscHRyOworICAgIHJldHVybiBSZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvcjo6Y3JlYXRlKCZt
X3BhZ2UpOwogfQorCiAjZW5kaWYKIAogI2lmIChQTEFURk9STShJT1MpICYmIEhBVkUoQVZLSVQp
KSB8fCAoUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpKQor
CiBib29sIFdlYkNocm9tZUNsaWVudDo6c3VwcG9ydHNWaWRlb0Z1bGxzY3JlZW4oV2ViQ29yZTo6
SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIG1vZGUpCiB7Ci0gICAg
cmV0dXJuIG1fcGFnZS0+dmlkZW9GdWxsc2NyZWVuTWFuYWdlcigpLnN1cHBvcnRzVmlkZW9GdWxs
c2NyZWVuKG1vZGUpOworICAgIHJldHVybiBtX3BhZ2UudmlkZW9GdWxsc2NyZWVuTWFuYWdlcigp
LnN1cHBvcnRzVmlkZW9GdWxsc2NyZWVuKG1vZGUpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVu
dDo6c2V0VXBQbGF5YmFja0NvbnRyb2xzTWFuYWdlcihXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50
JiBtZWRpYUVsZW1lbnQpCiB7Ci0gICAgbV9wYWdlLT5wbGF5YmFja1Nlc3Npb25NYW5hZ2VyKCku
c2V0VXBQbGF5YmFja0NvbnRyb2xzTWFuYWdlcihtZWRpYUVsZW1lbnQpOworICAgIG1fcGFnZS5w
bGF5YmFja1Nlc3Npb25NYW5hZ2VyKCkuc2V0VXBQbGF5YmFja0NvbnRyb2xzTWFuYWdlcihtZWRp
YUVsZW1lbnQpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y2xlYXJQbGF5YmFja0NvbnRy
b2xzTWFuYWdlcigpCiB7Ci0gICAgbV9wYWdlLT5wbGF5YmFja1Nlc3Npb25NYW5hZ2VyKCkuY2xl
YXJQbGF5YmFja0NvbnRyb2xzTWFuYWdlcigpOworICAgIG1fcGFnZS5wbGF5YmFja1Nlc3Npb25N
YW5hZ2VyKCkuY2xlYXJQbGF5YmFja0NvbnRyb2xzTWFuYWdlcigpOwogfQogCiB2b2lkIFdlYkNo
cm9tZUNsaWVudDo6ZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6
SFRNTFZpZGVvRWxlbWVudCYgdmlkZW9FbGVtZW50LCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50
RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUgbW9kZSkKIHsKICAgICBBU1NFUlQobW9kZSAhPSBI
VE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGVOb25lKTsKLSAgICBtX3Bh
Z2UtPnZpZGVvRnVsbHNjcmVlbk1hbmFnZXIoKS5lbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVv
RWxlbWVudCh2aWRlb0VsZW1lbnQsIG1vZGUpOworICAgIG1fcGFnZS52aWRlb0Z1bGxzY3JlZW5N
YW5hZ2VyKCkuZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQodmlkZW9FbGVtZW50
LCBtb2RlKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmV4aXRWaWRlb0Z1bGxzY3JlZW5G
b3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCYgdmlkZW9FbGVtZW50KQog
ewotICAgIG1fcGFnZS0+dmlkZW9GdWxsc2NyZWVuTWFuYWdlcigpLmV4aXRWaWRlb0Z1bGxzY3Jl
ZW5Gb3JWaWRlb0VsZW1lbnQodmlkZW9FbGVtZW50KTsKKyAgICBtX3BhZ2UudmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlcigpLmV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQodmlkZW9FbGVt
ZW50KTsKIH0KIAorI2VuZGlmCisKICNpZiBQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19Q
UkVTRU5UQVRJT05fTU9ERSkKKwogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmV4aXRWaWRlb0Z1bGxz
Y3JlZW5Ub01vZGVXaXRob3V0QW5pbWF0aW9uKFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmIHZp
ZGVvRWxlbWVudCwgSFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIHRh
cmdldE1vZGUpCiB7Ci0gICAgbV9wYWdlLT52aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyKCkuZXhpdFZp
ZGVvRnVsbHNjcmVlblRvTW9kZVdpdGhvdXRBbmltYXRpb24odmlkZW9FbGVtZW50LCB0YXJnZXRN
b2RlKTsKKyAgICBtX3BhZ2UudmlkZW9GdWxsc2NyZWVuTWFuYWdlcigpLmV4aXRWaWRlb0Z1bGxz
Y3JlZW5Ub01vZGVXaXRob3V0QW5pbWF0aW9uKHZpZGVvRWxlbWVudCwgdGFyZ2V0TW9kZSk7CiB9
Ci0jZW5kaWYKIAogI2VuZGlmCi0gICAgCisKICNpZiBFTkFCTEUoRlVMTFNDUkVFTl9BUEkpCisK
IGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpzdXBwb3J0c0Z1bGxTY3JlZW5Gb3JFbGVtZW50KGNvbnN0
IFdlYkNvcmU6OkVsZW1lbnQqLCBib29sIHdpdGhLZXlib2FyZCkKIHsKLSAgICByZXR1cm4gbV9w
YWdlLT5mdWxsU2NyZWVuTWFuYWdlcigpLT5zdXBwb3J0c0Z1bGxTY3JlZW4od2l0aEtleWJvYXJk
KTsKKyAgICByZXR1cm4gbV9wYWdlLmZ1bGxTY3JlZW5NYW5hZ2VyKCktPnN1cHBvcnRzRnVsbFNj
cmVlbih3aXRoS2V5Ym9hcmQpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZW50ZXJGdWxs
U2NyZWVuRm9yRWxlbWVudChXZWJDb3JlOjpFbGVtZW50KiBlbGVtZW50KQogewotICAgIG1fcGFn
ZS0+ZnVsbFNjcmVlbk1hbmFnZXIoKS0+ZW50ZXJGdWxsU2NyZWVuRm9yRWxlbWVudChlbGVtZW50
KTsKKyAgICBtX3BhZ2UuZnVsbFNjcmVlbk1hbmFnZXIoKS0+ZW50ZXJGdWxsU2NyZWVuRm9yRWxl
bWVudChlbGVtZW50KTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmV4aXRGdWxsU2NyZWVu
Rm9yRWxlbWVudChXZWJDb3JlOjpFbGVtZW50KiBlbGVtZW50KQogewotICAgIG1fcGFnZS0+ZnVs
bFNjcmVlbk1hbmFnZXIoKS0+ZXhpdEZ1bGxTY3JlZW5Gb3JFbGVtZW50KGVsZW1lbnQpOworICAg
IG1fcGFnZS5mdWxsU2NyZWVuTWFuYWdlcigpLT5leGl0RnVsbFNjcmVlbkZvckVsZW1lbnQoZWxl
bWVudCk7CiB9CisKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oSU9TKQorCiBGbG9hdFNpemUgV2Vi
Q2hyb21lQ2xpZW50OjpzY3JlZW5TaXplKCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5z
Y3JlZW5TaXplKCk7CisgICAgcmV0dXJuIG1fcGFnZS5zY3JlZW5TaXplKCk7CiB9CiAKIEZsb2F0
U2l6ZSBXZWJDaHJvbWVDbGllbnQ6OmF2YWlsYWJsZVNjcmVlblNpemUoKSBjb25zdAogewotICAg
IHJldHVybiBtX3BhZ2UtPmF2YWlsYWJsZVNjcmVlblNpemUoKTsKKyAgICByZXR1cm4gbV9wYWdl
LmF2YWlsYWJsZVNjcmVlblNpemUoKTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViQ2hyb21lQ2xp
ZW50OjpkaXNwYXRjaFZpZXdwb3J0UHJvcGVydGllc0RpZENoYW5nZShjb25zdCBWaWV3cG9ydEFy
Z3VtZW50cyYgdmlld3BvcnRBcmd1bWVudHMpIGNvbnN0CiB7Ci0gICAgbV9wYWdlLT52aWV3cG9y
dFByb3BlcnRpZXNEaWRDaGFuZ2Uodmlld3BvcnRBcmd1bWVudHMpOworICAgIG1fcGFnZS52aWV3
cG9ydFByb3BlcnRpZXNEaWRDaGFuZ2Uodmlld3BvcnRBcmd1bWVudHMpOwogfQogCiB2b2lkIFdl
YkNocm9tZUNsaWVudDo6bm90aWZ5U2Nyb2xsZXJUaHVtYklzVmlzaWJsZUluUmVjdChjb25zdCBJ
bnRSZWN0JiBzY3JvbGxlclRodW1iKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2Vi
UGFnZVByb3h5OjpOb3RpZnlTY3JvbGxlclRodW1iSXNWaXNpYmxlSW5SZWN0KHNjcm9sbGVyVGh1
bWIpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpOb3RpZnlTY3Jv
bGxlclRodW1iSXNWaXNpYmxlSW5SZWN0KHNjcm9sbGVyVGh1bWIpKTsKIH0KIAogdm9pZCBXZWJD
aHJvbWVDbGllbnQ6OnJlY29tbWVuZGVkU2Nyb2xsYmFyU3R5bGVEaWRDaGFuZ2UoU2Nyb2xsYmFy
U3R5bGUgbmV3U3R5bGUpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OlJlY29tbWVuZGVkU2Nyb2xsYmFyU3R5bGVEaWRDaGFuZ2Uoc3RhdGljX2Nhc3Q8aW50MzJf
dD4obmV3U3R5bGUpKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6
UmVjb21tZW5kZWRTY3JvbGxiYXJTdHlsZURpZENoYW5nZShzdGF0aWNfY2FzdDxpbnQzMl90Pihu
ZXdTdHlsZSkpKTsKIH0KIAogc3RkOjpvcHRpb25hbDxTY3JvbGxiYXJPdmVybGF5U3R5bGU+IFdl
YkNocm9tZUNsaWVudDo6cHJlZmVycmVkU2Nyb2xsYmFyT3ZlcmxheVN0eWxlKCkKIHsKLSAgICBy
ZXR1cm4gbV9wYWdlLT5zY3JvbGxiYXJPdmVybGF5U3R5bGUoKTsgCisgICAgcmV0dXJuIG1fcGFn
ZS5zY3JvbGxiYXJPdmVybGF5U3R5bGUoKTsKIH0KIAogQ29sb3IgV2ViQ2hyb21lQ2xpZW50Ojp1
bmRlcmxheUNvbG9yKCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT51bmRlcmxheUNvbG9y
KCk7CisgICAgcmV0dXJuIG1fcGFnZS51bmRlcmxheUNvbG9yKCk7CiB9CiAKIHZvaWQgV2ViQ2hy
b21lQ2xpZW50OjpwYWdlRXh0ZW5kZWRCYWNrZ3JvdW5kQ29sb3JEaWRDaGFuZ2UoQ29sb3IgYmFj
a2dyb3VuZENvbG9yKSBjb25zdAogewogI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oRUZM
KQotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQYWdlRXh0ZW5kZWRC
YWNrZ3JvdW5kQ29sb3JEaWRDaGFuZ2UoYmFja2dyb3VuZENvbG9yKSk7CisgICAgbV9wYWdlLnNl
bmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UGFnZUV4dGVuZGVkQmFja2dyb3VuZENvbG9yRGlk
Q2hhbmdlKGJhY2tncm91bmRDb2xvcikpOwogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0oYmFja2dy
b3VuZENvbG9yKTsKICNlbmRpZgpAQCAtOTkxLDQzICsxMDEzLDQzIEBAIHZvaWQgV2ViQ2hyb21l
Q2xpZW50OjpwYWdlRXh0ZW5kZWRCYWNrZ3JvdW5kQ29sb3JEaWRDaGFuZ2UoQ29sb3IgYmFja2dy
b3VuZENvbG9yCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojp3aGVlbEV2ZW50SGFuZGxlcnNDaGFu
Z2VkKGJvb2wgaGFzSGFuZGxlcnMpCiB7Ci0gICAgbV9wYWdlLT53aGVlbEV2ZW50SGFuZGxlcnND
aGFuZ2VkKGhhc0hhbmRsZXJzKTsKKyAgICBtX3BhZ2Uud2hlZWxFdmVudEhhbmRsZXJzQ2hhbmdl
ZChoYXNIYW5kbGVycyk7CiB9CiAKIFN0cmluZyBXZWJDaHJvbWVDbGllbnQ6OnBsdWdJblN0YXJ0
TGFiZWxUaXRsZShjb25zdCBTdHJpbmcmIG1pbWVUeXBlKSBjb25zdAogewotICAgIHJldHVybiBt
X3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5wbHVnSW5TdGFydExhYmVsVGl0bGUobWlt
ZVR5cGUpOworICAgIHJldHVybiBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLnBsdWdJ
blN0YXJ0TGFiZWxUaXRsZShtaW1lVHlwZSk7CiB9CiAKIFN0cmluZyBXZWJDaHJvbWVDbGllbnQ6
OnBsdWdJblN0YXJ0TGFiZWxTdWJ0aXRsZShjb25zdCBTdHJpbmcmIG1pbWVUeXBlKSBjb25zdAog
ewotICAgIHJldHVybiBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5wbHVnSW5TdGFy
dExhYmVsU3VidGl0bGUobWltZVR5cGUpOworICAgIHJldHVybiBtX3BhZ2UuaW5qZWN0ZWRCdW5k
bGVVSUNsaWVudCgpLnBsdWdJblN0YXJ0TGFiZWxTdWJ0aXRsZShtaW1lVHlwZSk7CiB9CiAKIFN0
cmluZyBXZWJDaHJvbWVDbGllbnQ6OnBsdWdJbkV4dHJhU3R5bGVTaGVldCgpIGNvbnN0CiB7Ci0g
ICAgcmV0dXJuIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLnBsdWdJbkV4dHJhU3R5
bGVTaGVldCgpOworICAgIHJldHVybiBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLnBs
dWdJbkV4dHJhU3R5bGVTaGVldCgpOwogfQogCiBTdHJpbmcgV2ViQ2hyb21lQ2xpZW50OjpwbHVn
SW5FeHRyYVNjcmlwdCgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+aW5qZWN0ZWRCdW5k
bGVVSUNsaWVudCgpLnBsdWdJbkV4dHJhU2NyaXB0KCk7CisgICAgcmV0dXJuIG1fcGFnZS5pbmpl
Y3RlZEJ1bmRsZVVJQ2xpZW50KCkucGx1Z0luRXh0cmFTY3JpcHQoKTsKIH0KIAogdm9pZCBXZWJD
aHJvbWVDbGllbnQ6OmVuYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkKIHsKLSAgICBtX3BhZ2UtPnNl
bmQoTWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6RW5hYmxlU3VkZGVuVGVybWluYXRpb24oKSk7
CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6RW5hYmxlU3VkZGVu
VGVybWluYXRpb24oKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpkaXNhYmxlU3VkZGVu
VGVybWluYXRpb24oKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUHJvY2Vzc1By
b3h5OjpEaXNhYmxlU3VkZGVuVGVybWluYXRpb24oKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2Fn
ZXM6OldlYlByb2Nlc3NQcm94eTo6RGlzYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkpOwogfQogCiB2
b2lkIFdlYkNocm9tZUNsaWVudDo6ZGlkQWRkSGVhZGVyTGF5ZXIoR3JhcGhpY3NMYXllciogaGVh
ZGVyUGFyZW50KQogewogI2lmIEVOQUJMRShSVUJCRVJfQkFORElORykKLSAgICBpZiAoUGFnZUJh
bm5lciogYmFubmVyID0gbV9wYWdlLT5oZWFkZXJQYWdlQmFubmVyKCkpCisgICAgaWYgKFBhZ2VC
YW5uZXIqIGJhbm5lciA9IG1fcGFnZS5oZWFkZXJQYWdlQmFubmVyKCkpCiAgICAgICAgIGJhbm5l
ci0+ZGlkQWRkUGFyZW50TGF5ZXIoaGVhZGVyUGFyZW50KTsKICNlbHNlCiAgICAgVU5VU0VEX1BB
UkFNKGhlYWRlclBhcmVudCk7CkBAIC0xMDM3LDcgKzEwNTksNyBAQCB2b2lkIFdlYkNocm9tZUNs
aWVudDo6ZGlkQWRkSGVhZGVyTGF5ZXIoR3JhcGhpY3NMYXllciogaGVhZGVyUGFyZW50KQogdm9p
ZCBXZWJDaHJvbWVDbGllbnQ6OmRpZEFkZEZvb3RlckxheWVyKEdyYXBoaWNzTGF5ZXIqIGZvb3Rl
clBhcmVudCkKIHsKICNpZiBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpCi0gICAgaWYgKFBhZ2VCYW5u
ZXIqIGJhbm5lciA9IG1fcGFnZS0+Zm9vdGVyUGFnZUJhbm5lcigpKQorICAgIGlmIChQYWdlQmFu
bmVyKiBiYW5uZXIgPSBtX3BhZ2UuZm9vdGVyUGFnZUJhbm5lcigpKQogICAgICAgICBiYW5uZXIt
PmRpZEFkZFBhcmVudExheWVyKGZvb3RlclBhcmVudCk7CiAjZWxzZQogICAgIFVOVVNFRF9QQVJB
TShmb290ZXJQYXJlbnQpOwpAQCAtMTA0NiwzNiArMTA2OCwzOSBAQCB2b2lkIFdlYkNocm9tZUNs
aWVudDo6ZGlkQWRkRm9vdGVyTGF5ZXIoR3JhcGhpY3NMYXllciogZm9vdGVyUGFyZW50KQogCiBi
b29sIFdlYkNocm9tZUNsaWVudDo6c2hvdWxkVXNlVGlsZWRCYWNraW5nRm9yRnJhbWVWaWV3KGNv
bnN0IEZyYW1lVmlldyogZnJhbWVWaWV3KSBjb25zdAogewotICAgIHJldHVybiBtX3BhZ2UtPmRy
YXdpbmdBcmVhKCktPnNob3VsZFVzZVRpbGVkQmFja2luZ0ZvckZyYW1lVmlldyhmcmFtZVZpZXcp
OworICAgIHJldHVybiBtX3BhZ2UuZHJhd2luZ0FyZWEoKS0+c2hvdWxkVXNlVGlsZWRCYWNraW5n
Rm9yRnJhbWVWaWV3KGZyYW1lVmlldyk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojppc1Bs
YXlpbmdNZWRpYURpZENoYW5nZShXZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpNZWRpYVN0YXRlRmxh
Z3Mgc3RhdGUsIHVpbnQ2NF90IHNvdXJjZUVsZW1lbnRJRCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQo
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6SXNQbGF5aW5nTWVkaWFEaWRDaGFuZ2Uoc3RhdGUsIHNv
dXJjZUVsZW1lbnRJRCkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OklzUGxheWluZ01lZGlhRGlkQ2hhbmdlKHN0YXRlLCBzb3VyY2VFbGVtZW50SUQpKTsKIH0KIAog
I2lmIEVOQUJMRShNRURJQV9TRVNTSU9OKQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6aGFzTWVk
aWFTZXNzaW9uV2l0aEFjdGl2ZU1lZGlhRWxlbWVudHNEaWRDaGFuZ2UoYm9vbCBzdGF0ZSkKIHsK
LSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6SGFzTWVkaWFTZXNzaW9u
V2l0aEFjdGl2ZU1lZGlhRWxlbWVudHNEaWRDaGFuZ2Uoc3RhdGUpKTsKKyAgICBtX3BhZ2Uuc2Vu
ZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpIYXNNZWRpYVNlc3Npb25XaXRoQWN0aXZlTWVkaWFF
bGVtZW50c0RpZENoYW5nZShzdGF0ZSkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6bWVk
aWFTZXNzaW9uTWV0YWRhdGFEaWRDaGFuZ2UoY29uc3QgV2ViQ29yZTo6TWVkaWFTZXNzaW9uTWV0
YWRhdGEmIG1ldGFkYXRhKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpNZWRpYVNlc3Npb25NZXRhZGF0YURpZENoYW5nZShtZXRhZGF0YSkpOworICAgIG1fcGFn
ZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6Ok1lZGlhU2Vzc2lvbk1ldGFkYXRhRGlkQ2hh
bmdlKG1ldGFkYXRhKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpmb2N1c2VkQ29udGVu
dE1lZGlhRWxlbWVudERpZENoYW5nZSh1aW50NjRfdCBlbGVtZW50SUQpCiB7Ci0gICAgbV9wYWdl
LT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZvY3VzZWRDb250ZW50TWVkaWFFbGVtZW50
RGlkQ2hhbmdlKGVsZW1lbnRJRCkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OkZvY3VzZWRDb250ZW50TWVkaWFFbGVtZW50RGlkQ2hhbmdlKGVsZW1lbnRJRCkpOwog
fQorCiAjZW5kaWYKIAogI2lmIEVOQUJMRShTVUJUTEVfQ1JZUFRPKQorCiBib29sIFdlYkNocm9t
ZUNsaWVudDo6d3JhcENyeXB0b0tleShjb25zdCBWZWN0b3I8dWludDhfdD4mIGtleSwgVmVjdG9y
PHVpbnQ4X3Q+JiB3cmFwcGVkS2V5KSBjb25zdAogewogICAgIGJvb2wgc3VjY2VlZGVkOwotICAg
IGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+
c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6V3JhcENyeXB0b0tleShrZXkpLCBNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpXcmFwQ3J5cHRvS2V5OjpSZXBseShzdWNjZWVkZWQsIHdyYXBw
ZWRLZXkpLCBtX3BhZ2UtPnBhZ2VJRCgpKSkKKyAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRv
bigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OldyYXBDcnlwdG9LZXkoa2V5KSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6V3JhcENy
eXB0b0tleTo6UmVwbHkoc3VjY2VlZGVkLCB3cmFwcGVkS2V5KSwgbV9wYWdlLnBhZ2VJRCgpKSkK
ICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIHJldHVybiBzdWNjZWVkZWQ7CiB9CkBAIC0xMDgz
LDM0ICsxMTA4LDM5IEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50Ojp3cmFwQ3J5cHRvS2V5KGNvbnN0
IFZlY3Rvcjx1aW50OF90PiYga2V5LCBWZWN0b3I8dWludDhfdD4mCiBib29sIFdlYkNocm9tZUNs
aWVudDo6dW53cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90PiYgd3JhcHBlZEtleSwg
VmVjdG9yPHVpbnQ4X3Q+JiBrZXkpIGNvbnN0CiB7CiAgICAgYm9vbCBzdWNjZWVkZWQ7Ci0gICAg
aWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5z
ZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpVbndyYXBDcnlwdG9LZXkod3JhcHBlZEtl
eSksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlVud3JhcENyeXB0b0tleTo6UmVwbHkoc3VjY2Vl
ZGVkLCBrZXkpLCBtX3BhZ2UtPnBhZ2VJRCgpKSkKKyAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmds
ZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OlVud3JhcENyeXB0b0tleSh3cmFwcGVkS2V5KSwgTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6VW53cmFwQ3J5cHRvS2V5OjpSZXBseShzdWNjZWVkZWQsIGtleSksIG1fcGFnZS5wYWdl
SUQoKSkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICByZXR1cm4gc3VjY2VlZGVkOwogfQor
CiAjZW5kaWYKIAogI2lmIEVOQUJMRShURUxFUEhPTkVfTlVNQkVSX0RFVEVDVElPTikgJiYgUExB
VEZPUk0oTUFDKQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6aGFuZGxlVGVsZXBob25lTnVtYmVy
Q2xpY2soY29uc3QgU3RyaW5nJiBudW1iZXIsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBwb2lu
dCkKIHsKLSAgICBtX3BhZ2UtPmhhbmRsZVRlbGVwaG9uZU51bWJlckNsaWNrKG51bWJlciwgcG9p
bnQpOworICAgIG1fcGFnZS5oYW5kbGVUZWxlcGhvbmVOdW1iZXJDbGljayhudW1iZXIsIHBvaW50
KTsKIH0KKwogI2VuZGlmCiAKICNpZiBFTkFCTEUoU0VSVklDRV9DT05UUk9MUykKKwogdm9pZCBX
ZWJDaHJvbWVDbGllbnQ6OmhhbmRsZVNlbGVjdGlvblNlcnZpY2VDbGljayhXZWJDb3JlOjpGcmFt
ZVNlbGVjdGlvbiYgc2VsZWN0aW9uLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgdGVsZXBob25lTnVt
YmVycywgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIHBvaW50KQogewotICAgIG1fcGFnZS0+aGFu
ZGxlU2VsZWN0aW9uU2VydmljZUNsaWNrKHNlbGVjdGlvbiwgdGVsZXBob25lTnVtYmVycywgcG9p
bnQpOworICAgIG1fcGFnZS5oYW5kbGVTZWxlY3Rpb25TZXJ2aWNlQ2xpY2soc2VsZWN0aW9uLCB0
ZWxlcGhvbmVOdW1iZXJzLCBwb2ludCk7CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpoYXNS
ZWxldmFudFNlbGVjdGlvblNlcnZpY2VzKGJvb2wgaXNUZXh0T25seSkgY29uc3QKIHsKICAgICBy
ZXR1cm4gKGlzVGV4dE9ubHkgJiYgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuaGFzU2VsZWN0aW9u
U2VydmljZXMoKSkgfHwgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuaGFzUmljaENvbnRlbnRTZXJ2
aWNlcygpOwogfQorCiAjZW5kaWYKIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnNob3VsZERpc3Bh
dGNoRmFrZU1vdXNlTW92ZUV2ZW50cygpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+c2hv
dWxkRGlzcGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKCk7CisgICAgcmV0dXJuIG1fcGFnZS5zaG91
bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHMoKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGll
bnQ6OmhhbmRsZUF1dG9GaWxsQnV0dG9uQ2xpY2soSFRNTElucHV0RWxlbWVudCYgaW5wdXRFbGVt
ZW50KQpAQCAtMTExOSw2NCArMTE0OSw2NSBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6aGFuZGxl
QXV0b0ZpbGxCdXR0b25DbGljayhIVE1MSW5wdXRFbGVtZW50JiBpbnB1dEVsZW1lbnQpCiAKICAg
ICAvLyBOb3RpZnkgdGhlIGJ1bmRsZSBjbGllbnQuCiAgICAgYXV0byBub2RlSGFuZGxlID0gSW5q
ZWN0ZWRCdW5kbGVOb2RlSGFuZGxlOjpnZXRPckNyZWF0ZShpbnB1dEVsZW1lbnQpOwotICAgIG1f
cGFnZS0+aW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLmRpZENsaWNrQXV0b0ZpbGxCdXR0b24oKm1f
cGFnZSwgbm9kZUhhbmRsZS5nZXQoKSwgdXNlckRhdGEpOworICAgIG1fcGFnZS5pbmplY3RlZEJ1
bmRsZVVJQ2xpZW50KCkuZGlkQ2xpY2tBdXRvRmlsbEJ1dHRvbihtX3BhZ2UsIG5vZGVIYW5kbGUu
Z2V0KCksIHVzZXJEYXRhKTsKIAogICAgIC8vIE5vdGlmeSB0aGUgVUlQcm9jZXNzLgotICAgIG1f
cGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpIYW5kbGVBdXRvRmlsbEJ1dHRvbkNs
aWNrKFVzZXJEYXRhKFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnRyYW5zZm9ybU9iamVjdHNUb0hh
bmRsZXModXNlckRhdGEuZ2V0KCkpLmdldCgpKSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6OkhhbmRsZUF1dG9GaWxsQnV0dG9uQ2xpY2soVXNlckRhdGEoV2ViUHJv
Y2Vzczo6c2luZ2xldG9uKCkudHJhbnNmb3JtT2JqZWN0c1RvSGFuZGxlcyh1c2VyRGF0YS5nZXQo
KSkuZ2V0KCkpKSk7CiB9CiAKICNpZiBFTkFCTEUoV0lSRUxFU1NfUExBWUJBQ0tfVEFSR0VUKSAm
JiAhUExBVEZPUk0oSU9TKQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6YWRkUGxheWJhY2tUYXJn
ZXRQaWNrZXJDbGllbnQodWludDY0X3QgY29udGV4dElkKQogewotICAgIG1fcGFnZS0+c2VuZChN
ZXNzYWdlczo6V2ViUGFnZVByb3h5OjpBZGRQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudChjb250
ZXh0SWQpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpBZGRQbGF5
YmFja1RhcmdldFBpY2tlckNsaWVudChjb250ZXh0SWQpKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVD
bGllbnQ6OnJlbW92ZVBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2NF90IGNvbnRleHRJ
ZCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UmVtb3ZlUGxh
eWJhY2tUYXJnZXRQaWNrZXJDbGllbnQoY29udGV4dElkKSk7CisgICAgbV9wYWdlLnNlbmQoTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6UmVtb3ZlUGxheWJhY2tUYXJnZXRQaWNrZXJDbGllbnQoY29u
dGV4dElkKSk7CiB9CiAKLQogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNob3dQbGF5YmFja1Rhcmdl
dFBpY2tlcih1aW50NjRfdCBjb250ZXh0SWQsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBwb3Np
dGlvbiwgYm9vbCBpc1ZpZGVvKQogewotICAgIEZyYW1lVmlldyogZnJhbWVWaWV3ID0gbV9wYWdl
LT5tYWluRnJhbWUoKS0+dmlldygpOworICAgIEZyYW1lVmlldyogZnJhbWVWaWV3ID0gbV9wYWdl
Lm1haW5GcmFtZSgpLT52aWV3KCk7CiAgICAgRmxvYXRSZWN0IHJlY3QoZnJhbWVWaWV3LT5jb250
ZW50c1RvUm9vdFZpZXcoZnJhbWVWaWV3LT53aW5kb3dUb0NvbnRlbnRzKHBvc2l0aW9uKSksIEZs
b2F0U2l6ZSgpKTsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2hv
d1BsYXliYWNrVGFyZ2V0UGlja2VyKGNvbnRleHRJZCwgcmVjdCwgaXNWaWRlbykpOworICAgIG1f
cGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNob3dQbGF5YmFja1RhcmdldFBpY2tl
cihjb250ZXh0SWQsIHJlY3QsIGlzVmlkZW8pKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6
OnBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50U3RhdGVEaWRDaGFuZ2UodWludDY0X3QgY29udGV4
dElkLCBXZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpNZWRpYVN0YXRlRmxhZ3Mgc3RhdGUpCiB7Ci0g
ICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlBsYXliYWNrVGFyZ2V0UGlj
a2VyQ2xpZW50U3RhdGVEaWRDaGFuZ2UoY29udGV4dElkLCBzdGF0ZSkpOworICAgIG1fcGFnZS5z
ZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50U3Rh
dGVEaWRDaGFuZ2UoY29udGV4dElkLCBzdGF0ZSkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVu
dDo6c2V0TW9ja01lZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJFbmFibGVkKGJvb2wgZW5hYmxlZCkK
IHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0TW9ja01lZGlh
UGxheWJhY2tUYXJnZXRQaWNrZXJFbmFibGVkKGVuYWJsZWQpKTsKKyAgICBtX3BhZ2Uuc2VuZChN
ZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVu
YWJsZWQoZW5hYmxlZCkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0TW9ja01lZGlh
UGxheWJhY2tUYXJnZXRQaWNrZXJTdGF0ZShjb25zdCBTdHJpbmcmIG5hbWUsIFdlYkNvcmU6Ok1l
ZGlhUGxheWJhY2tUYXJnZXRDb250ZXh0OjpTdGF0ZSBzdGF0ZSkKIHsKLSAgICBtX3BhZ2UtPnNl
bmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0TW9ja01lZGlhUGxheWJhY2tUYXJnZXRQaWNr
ZXJTdGF0ZShuYW1lLCBzdGF0ZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OlNldE1vY2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyU3RhdGUobmFtZSwgc3RhdGUp
KTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjppbWFnZU9yTWVkaWFEb2N1
bWVudFNpemVDaGFuZ2VkKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIG5ld1NpemUpCiB7Ci0gICAg
bV9wYWdlLT5pbWFnZU9yTWVkaWFEb2N1bWVudFNpemVDaGFuZ2VkKG5ld1NpemUpOworICAgIG1f
cGFnZS5pbWFnZU9yTWVkaWFEb2N1bWVudFNpemVDaGFuZ2VkKG5ld1NpemUpOwogfQogCi0jaWYg
RU5BQkxFKFZJREVPKQotI2lmIFVTRShHU1RSRUFNRVIpCisjaWYgRU5BQkxFKFZJREVPKSAmJiBV
U0UoR1NUUkVBTUVSKQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6cmVxdWVzdEluc3RhbGxNaXNz
aW5nTWVkaWFQbHVnaW5zKGNvbnN0IFN0cmluZyYgZGV0YWlscywgY29uc3QgU3RyaW5nJiBkZXNj
cmlwdGlvbiwgV2ViQ29yZTo6TWVkaWFQbGF5ZXJSZXF1ZXN0SW5zdGFsbE1pc3NpbmdQbHVnaW5z
Q2FsbGJhY2smIGNhbGxiYWNrKQogewotICAgIG1fcGFnZS0+cmVxdWVzdEluc3RhbGxNaXNzaW5n
TWVkaWFQbHVnaW5zKGRldGFpbHMsIGRlc2NyaXB0aW9uLCBjYWxsYmFjayk7CisgICAgbV9wYWdl
LnJlcXVlc3RJbnN0YWxsTWlzc2luZ01lZGlhUGx1Z2lucyhkZXRhaWxzLCBkZXNjcmlwdGlvbiwg
Y2FsbGJhY2spOwogfQorCiAjZW5kaWYKLSNlbmRpZiAvLyBFTkFCTEUoVklERU8pCiAKIHZvaWQg
V2ViQ2hyb21lQ2xpZW50OjpkaWRJbnZhbGlkYXRlRG9jdW1lbnRNYXJrZXJSZWN0cygpCiB7Ci0g
ICAgbV9wYWdlLT5maW5kQ29udHJvbGxlcigpLmRpZEludmFsaWRhdGVEb2N1bWVudE1hcmtlclJl
Y3RzKCk7CisgICAgbV9wYWdlLmZpbmRDb250cm9sbGVyKCkuZGlkSW52YWxpZGF0ZURvY3VtZW50
TWFya2VyUmVjdHMoKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5o
IGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGll
bnQuaAppbmRleCBhZjkwYjM4ZGQ5NWYzMmFmNDhhNDU4N2JhMjdmMmZiYzVkN2Q2YjFkLi5kNGE5
OTFiMjc0ODYwZmZjMzJkZjM0ZTBmMWJjNDczN2FhYjkwZTAwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50
LmgKQEAgLTI2LDE5OCArMjYsMTk2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaW5jbHVkZSAiV2Vi
RnJhbWUuaCIKICNpbmNsdWRlIDxXZWJDb3JlL0Nocm9tZUNsaWVudC5oPgotI2luY2x1ZGUgPFdl
YkNvcmUvVmlld3BvcnRBcmd1bWVudHMuaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcu
aD4KIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKK2NsYXNzIFdlYkZyYW1lOwogY2xhc3MgV2ViUGFn
ZTsKIAotY2xhc3MgV2ViQ2hyb21lQ2xpZW50IDogcHVibGljIFdlYkNvcmU6OkNocm9tZUNsaWVu
dCB7CitjbGFzcyBXZWJDaHJvbWVDbGllbnQgZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6Q2hyb21l
Q2xpZW50IHsKIHB1YmxpYzoKLSAgICBXZWJDaHJvbWVDbGllbnQoV2ViUGFnZSogcGFnZSkKLSAg
ICAgICAgOiBtX2NhY2hlZE1haW5GcmFtZUhhc0hvcml6b250YWxTY3JvbGxiYXIoZmFsc2UpCi0g
ICAgICAgICwgbV9jYWNoZWRNYWluRnJhbWVIYXNWZXJ0aWNhbFNjcm9sbGJhcihmYWxzZSkKLSAg
ICAgICAgLCBtX3BhZ2UocGFnZSkKLSAgICB7Ci0gICAgfQotICAgIAotICAgIFdlYlBhZ2UqIHBh
Z2UoKSBjb25zdCB7IHJldHVybiBtX3BhZ2U7IH0KKyAgICBXZWJDaHJvbWVDbGllbnQoV2ViUGFn
ZSYpOwogCi0gICAgdmlydHVhbCB2b2lkKiB3ZWJWaWV3KCkgY29uc3QgeyByZXR1cm4gMDsgfQor
ICAgIFdlYlBhZ2UmIHBhZ2UoKSBjb25zdCB7IHJldHVybiBtX3BhZ2U7IH0KIAogcHJpdmF0ZToK
LSAgICB2b2lkIGNocm9tZURlc3Ryb3llZCgpIG92ZXJyaWRlOworICAgIH5XZWJDaHJvbWVDbGll
bnQoKTsKKworICAgIHZvaWQgY2hyb21lRGVzdHJveWVkKCkgZmluYWw7CiAgICAgCi0gICAgdm9p
ZCBzZXRXaW5kb3dSZWN0KGNvbnN0IFdlYkNvcmU6OkZsb2F0UmVjdCYpIG92ZXJyaWRlOwotICAg
IFdlYkNvcmU6OkZsb2F0UmVjdCB3aW5kb3dSZWN0KCkgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRX
aW5kb3dSZWN0KGNvbnN0IFdlYkNvcmU6OkZsb2F0UmVjdCYpIGZpbmFsOworICAgIFdlYkNvcmU6
OkZsb2F0UmVjdCB3aW5kb3dSZWN0KCkgZmluYWw7CiAgICAgCi0gICAgV2ViQ29yZTo6RmxvYXRS
ZWN0IHBhZ2VSZWN0KCkgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6RmxvYXRSZWN0IHBhZ2VSZWN0
KCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBmb2N1cygpIG92ZXJyaWRlOwotICAgIHZvaWQgdW5m
b2N1cygpIG92ZXJyaWRlOworICAgIHZvaWQgZm9jdXMoKSBmaW5hbDsKKyAgICB2b2lkIHVuZm9j
dXMoKSBmaW5hbDsKICAgICAKLSAgICBib29sIGNhblRha2VGb2N1cyhXZWJDb3JlOjpGb2N1c0Rp
cmVjdGlvbikgb3ZlcnJpZGU7Ci0gICAgdm9pZCB0YWtlRm9jdXMoV2ViQ29yZTo6Rm9jdXNEaXJl
Y3Rpb24pIG92ZXJyaWRlOworICAgIGJvb2wgY2FuVGFrZUZvY3VzKFdlYkNvcmU6OkZvY3VzRGly
ZWN0aW9uKSBmaW5hbDsKKyAgICB2b2lkIHRha2VGb2N1cyhXZWJDb3JlOjpGb2N1c0RpcmVjdGlv
bikgZmluYWw7CiAKLSAgICB2b2lkIGZvY3VzZWRFbGVtZW50Q2hhbmdlZChXZWJDb3JlOjpFbGVt
ZW50Kikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBmb2N1c2VkRnJhbWVDaGFuZ2VkKFdlYkNvcmU6OkZy
YW1lKikgb3ZlcnJpZGU7CisgICAgdm9pZCBmb2N1c2VkRWxlbWVudENoYW5nZWQoV2ViQ29yZTo6
RWxlbWVudCopIGZpbmFsOworICAgIHZvaWQgZm9jdXNlZEZyYW1lQ2hhbmdlZChXZWJDb3JlOjpG
cmFtZSopIGZpbmFsOwogCiAgICAgLy8gVGhlIEZyYW1lIHBvaW50ZXIgcHJvdmlkZXMgdGhlIENo
cm9tZUNsaWVudCB3aXRoIGNvbnRleHQgYWJvdXQgd2hpY2gKICAgICAvLyBGcmFtZSB3YW50cyB0
byBjcmVhdGUgdGhlIG5ldyBQYWdlLiAgQWxzbywgdGhlIG5ld2x5IGNyZWF0ZWQgd2luZG93CiAg
ICAgLy8gc2hvdWxkIG5vdCBiZSBzaG93biB0byB0aGUgdXNlciB1bnRpbCB0aGUgQ2hyb21lQ2xp
ZW50IG9mIHRoZSBuZXdseQogICAgIC8vIGNyZWF0ZWQgUGFnZSBoYXMgaXRzIHNob3cgbWV0aG9k
IGNhbGxlZC4KLSAgICBXZWJDb3JlOjpQYWdlKiBjcmVhdGVXaW5kb3coV2ViQ29yZTo6RnJhbWUq
LCBjb25zdCBXZWJDb3JlOjpGcmFtZUxvYWRSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6V2luZG93
RmVhdHVyZXMmLCBjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJikgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBzaG93KCkgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6UGFnZSogY3JlYXRlV2luZG93
KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV2ViQ29yZTo6RnJhbWVMb2FkUmVxdWVzdCYsIGNvbnN0
IFdlYkNvcmU6OldpbmRvd0ZlYXR1cmVzJiwgY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlv
biYpIGZpbmFsOworICAgIHZvaWQgc2hvdygpIGZpbmFsOwogICAgIAotICAgIGJvb2wgY2FuUnVu
TW9kYWwoKSBvdmVycmlkZTsKLSAgICB2b2lkIHJ1bk1vZGFsKCkgb3ZlcnJpZGU7CisgICAgYm9v
bCBjYW5SdW5Nb2RhbCgpIGZpbmFsOworICAgIHZvaWQgcnVuTW9kYWwoKSBmaW5hbDsKICAgICAK
LSAgICB2b2lkIHNldFRvb2xiYXJzVmlzaWJsZShib29sKSBvdmVycmlkZTsKLSAgICBib29sIHRv
b2xiYXJzVmlzaWJsZSgpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0VG9vbGJhcnNWaXNpYmxlKGJv
b2wpIGZpbmFsOworICAgIGJvb2wgdG9vbGJhcnNWaXNpYmxlKCkgZmluYWw7CiAgICAgCi0gICAg
dm9pZCBzZXRTdGF0dXNiYXJWaXNpYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJvb2wgc3RhdHVz
YmFyVmlzaWJsZSgpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0U3RhdHVzYmFyVmlzaWJsZShib29s
KSBmaW5hbDsKKyAgICBib29sIHN0YXR1c2JhclZpc2libGUoKSBmaW5hbDsKICAgICAKLSAgICB2
b2lkIHNldFNjcm9sbGJhcnNWaXNpYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJvb2wgc2Nyb2xs
YmFyc1Zpc2libGUoKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldFNjcm9sbGJhcnNWaXNpYmxlKGJv
b2wpIGZpbmFsOworICAgIGJvb2wgc2Nyb2xsYmFyc1Zpc2libGUoKSBmaW5hbDsKICAgICAKLSAg
ICB2b2lkIHNldE1lbnViYXJWaXNpYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJvb2wgbWVudWJh
clZpc2libGUoKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldE1lbnViYXJWaXNpYmxlKGJvb2wpIGZp
bmFsOworICAgIGJvb2wgbWVudWJhclZpc2libGUoKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHNl
dFJlc2l6YWJsZShib29sKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldFJlc2l6YWJsZShib29sKSBm
aW5hbDsKICAgICAKLSAgICB2b2lkIGFkZE1lc3NhZ2VUb0NvbnNvbGUoSlNDOjpNZXNzYWdlU291
cmNlLCBKU0M6Ok1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCB1bnNpZ25lZCBs
aW5lTnVtYmVyLCB1bnNpZ25lZCBjb2x1bW5OdW1iZXIsIGNvbnN0IFN0cmluZyYgc291cmNlSUQp
IG92ZXJyaWRlOworICAgIHZvaWQgYWRkTWVzc2FnZVRvQ29uc29sZShKU0M6Ok1lc3NhZ2VTb3Vy
Y2UsIEpTQzo6TWVzc2FnZUxldmVsLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIHVuc2lnbmVkIGxp
bmVOdW1iZXIsIHVuc2lnbmVkIGNvbHVtbk51bWJlciwgY29uc3QgU3RyaW5nJiBzb3VyY2VJRCkg
ZmluYWw7CiAgICAgCi0gICAgYm9vbCBjYW5SdW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoKSBv
dmVycmlkZTsKLSAgICBib29sIHJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbChjb25zdCBTdHJp
bmcmIG1lc3NhZ2UsIFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7CisgICAgYm9vbCBjYW5SdW5C
ZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoKSBmaW5hbDsKKyAgICBib29sIHJ1bkJlZm9yZVVubG9h
ZENvbmZpcm1QYW5lbChjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIFdlYkNvcmU6OkZyYW1lKikgZmlu
YWw7CiAgICAgCi0gICAgdm9pZCBjbG9zZVdpbmRvd1Nvb24oKSBvdmVycmlkZTsKKyAgICB2b2lk
IGNsb3NlV2luZG93U29vbigpIGZpbmFsOwogICAgIAotICAgIHZvaWQgcnVuSmF2YVNjcmlwdEFs
ZXJ0KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBy
dW5KYXZhU2NyaXB0Q29uZmlybShXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFN0cmluZyYpIG92ZXJy
aWRlOwotICAgIGJvb2wgcnVuSmF2YVNjcmlwdFByb21wdChXZWJDb3JlOjpGcmFtZSosIGNvbnN0
IFN0cmluZyYgbWVzc2FnZSwgY29uc3QgU3RyaW5nJiBkZWZhdWx0VmFsdWUsIFN0cmluZyYgcmVz
dWx0KSBvdmVycmlkZTsKLSAgICB2b2lkIHNldFN0YXR1c2JhclRleHQoY29uc3QgU3RyaW5nJikg
b3ZlcnJpZGU7Ci0KLSAgICBXZWJDb3JlOjpLZXlib2FyZFVJTW9kZSBrZXlib2FyZFVJTW9kZSgp
IG92ZXJyaWRlOwotCi0gICAgLy8gSG9zdFdpbmRvdyBtZW1iZXIgZnVuY3Rpb24gb3ZlcnJpZGVz
LgotICAgIHZvaWQgaW52YWxpZGF0ZVJvb3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBv
dmVycmlkZTsKLSAgICB2b2lkIGludmFsaWRhdGVDb250ZW50c0FuZFJvb3RWaWV3KGNvbnN0IFdl
YkNvcmU6OkludFJlY3QmKSBvdmVycmlkZTsKLSAgICB2b2lkIGludmFsaWRhdGVDb250ZW50c0Zv
clNsb3dTY3JvbGwoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIG92ZXJyaWRlOwotICAgIHZvaWQg
c2Nyb2xsKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIHNjcm9sbERlbHRhLCBjb25zdCBXZWJDb3Jl
OjpJbnRSZWN0JiBzY3JvbGxSZWN0LCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiBjbGlwUmVjdCkg
b3ZlcnJpZGU7CisgICAgdm9pZCBydW5KYXZhU2NyaXB0QWxlcnQoV2ViQ29yZTo6RnJhbWUqLCBj
b25zdCBTdHJpbmcmKSBmaW5hbDsKKyAgICBib29sIHJ1bkphdmFTY3JpcHRDb25maXJtKFdlYkNv
cmU6OkZyYW1lKiwgY29uc3QgU3RyaW5nJikgZmluYWw7CisgICAgYm9vbCBydW5KYXZhU2NyaXB0
UHJvbXB0KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjb25zdCBTdHJp
bmcmIGRlZmF1bHRWYWx1ZSwgU3RyaW5nJiByZXN1bHQpIGZpbmFsOworICAgIHZvaWQgc2V0U3Rh
dHVzYmFyVGV4dChjb25zdCBTdHJpbmcmKSBmaW5hbDsKKworICAgIFdlYkNvcmU6OktleWJvYXJk
VUlNb2RlIGtleWJvYXJkVUlNb2RlKCkgZmluYWw7CisKKyAgICAvLyBIb3N0V2luZG93IG1lbWJl
ciBmdW5jdGlvbiBmaW5hbHMuCisgICAgdm9pZCBpbnZhbGlkYXRlUm9vdFZpZXcoY29uc3QgV2Vi
Q29yZTo6SW50UmVjdCYpIGZpbmFsOworICAgIHZvaWQgaW52YWxpZGF0ZUNvbnRlbnRzQW5kUm9v
dFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGZpbmFsOworICAgIHZvaWQgaW52YWxpZGF0
ZUNvbnRlbnRzRm9yU2xvd1Njcm9sbChjb25zdCBXZWJDb3JlOjpJbnRSZWN0JikgZmluYWw7Cisg
ICAgdm9pZCBzY3JvbGwoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgc2Nyb2xsRGVsdGEsIGNvbnN0
IFdlYkNvcmU6OkludFJlY3QmIHNjcm9sbFJlY3QsIGNvbnN0IFdlYkNvcmU6OkludFJlY3QmIGNs
aXBSZWN0KSBmaW5hbDsKKwogI2lmIFVTRShDT09SRElOQVRFRF9HUkFQSElDUykKLSAgICB2b2lk
IGRlbGVnYXRlZFNjcm9sbFJlcXVlc3RlZChjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYgc2Nyb2xs
T2Zmc2V0KSBvdmVycmlkZTsKKyAgICB2b2lkIGRlbGVnYXRlZFNjcm9sbFJlcXVlc3RlZChjb25z
dCBXZWJDb3JlOjpJbnRQb2ludCYgc2Nyb2xsT2Zmc2V0KSBmaW5hbDsKICNlbmRpZgotICAgIFdl
YkNvcmU6OkludFBvaW50IHNjcmVlblRvUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQm
KSBjb25zdCBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpJbnRSZWN0IHJvb3RWaWV3VG9TY3JlZW4o
Y29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGNvbnN0IG92ZXJyaWRlOworCisgICAgV2ViQ29yZTo6
SW50UG9pbnQgc2NyZWVuVG9Sb290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIGNvbnN0
IGZpbmFsOworICAgIFdlYkNvcmU6OkludFJlY3Qgcm9vdFZpZXdUb1NjcmVlbihjb25zdCBXZWJD
b3JlOjpJbnRSZWN0JikgY29uc3QgZmluYWw7CisKICNpZiBQTEFURk9STShJT1MpCi0gICAgV2Vi
Q29yZTo6SW50UG9pbnQgYWNjZXNzaWJpbGl0eVNjcmVlblRvUm9vdFZpZXcoY29uc3QgV2ViQ29y
ZTo6SW50UG9pbnQmKSBjb25zdCBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpJbnRSZWN0IHJvb3RW
aWV3VG9BY2Nlc3NpYmlsaXR5U2NyZWVuKGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBjb25zdCBv
dmVycmlkZTsKKyAgICBXZWJDb3JlOjpJbnRQb2ludCBhY2Nlc3NpYmlsaXR5U2NyZWVuVG9Sb290
Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIGNvbnN0IGZpbmFsOworICAgIFdlYkNvcmU6
OkludFJlY3Qgcm9vdFZpZXdUb0FjY2Vzc2liaWxpdHlTY3JlZW4oY29uc3QgV2ViQ29yZTo6SW50
UmVjdCYpIGNvbnN0IGZpbmFsOwogI2VuZGlmCi0gICAgUGxhdGZvcm1QYWdlQ2xpZW50IHBsYXRm
b3JtUGFnZUNsaWVudCgpIGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQgY29udGVudHNTaXplQ2hh
bmdlZChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6OkludFNpemUmKSBjb25zdCBvdmVy
cmlkZTsKLSAgICB2b2lkIHNjcm9sbFJlY3RJbnRvVmlldyhjb25zdCBXZWJDb3JlOjpJbnRSZWN0
JikgY29uc3Qgb3ZlcnJpZGU7IC8vIEN1cnJlbnRseSBvbmx5IE1hYyBoYXMgYSBub24gZW1wdHkg
aW1wbGVtZW50YXRpb24uCiAKLSAgICBib29sIHNob3VsZFVuYXZhaWxhYmxlUGx1Z2luTWVzc2Fn
ZUJlQnV0dG9uKFdlYkNvcmU6OlJlbmRlckVtYmVkZGVkT2JqZWN0OjpQbHVnaW5VbmF2YWlsYWJp
bGl0eVJlYXNvbikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCB1bmF2YWlsYWJsZVBsdWdpbkJ1
dHRvbkNsaWNrZWQoV2ViQ29yZTo6RWxlbWVudCosIFdlYkNvcmU6OlJlbmRlckVtYmVkZGVkT2Jq
ZWN0OjpQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbikgY29uc3Qgb3ZlcnJpZGU7CisgICAgUGxh
dGZvcm1QYWdlQ2xpZW50IHBsYXRmb3JtUGFnZUNsaWVudCgpIGNvbnN0IGZpbmFsOworICAgIHZv
aWQgY29udGVudHNTaXplQ2hhbmdlZChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6Oklu
dFNpemUmKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIHNjcm9sbFJlY3RJbnRvVmlldyhjb25zdCBX
ZWJDb3JlOjpJbnRSZWN0JikgY29uc3QgZmluYWw7IC8vIEN1cnJlbnRseSBvbmx5IE1hYyBoYXMg
YSBub24gZW1wdHkgaW1wbGVtZW50YXRpb24uCiAKLSAgICB2b2lkIHNjcm9sbGJhcnNNb2RlRGlk
Q2hhbmdlKCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCBtb3VzZURpZE1vdmVPdmVyRWxlbWVu
dChjb25zdCBXZWJDb3JlOjpIaXRUZXN0UmVzdWx0JiwgdW5zaWduZWQgbW9kaWZpZXJGbGFncykg
b3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRVbmF2YWlsYWJsZVBsdWdpbk1lc3NhZ2VCZUJ1dHRv
bihXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFz
b24pIGNvbnN0IGZpbmFsOworICAgIHZvaWQgdW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2Vk
KFdlYkNvcmU6OkVsZW1lbnQqLCBXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2lu
VW5hdmFpbGFiaWxpdHlSZWFzb24pIGNvbnN0IGZpbmFsOwogCi0gICAgdm9pZCBzZXRUb29sVGlw
KGNvbnN0IFN0cmluZyYsIFdlYkNvcmU6OlRleHREaXJlY3Rpb24pIG92ZXJyaWRlOworICAgIHZv
aWQgc2Nyb2xsYmFyc01vZGVEaWRDaGFuZ2UoKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIG1vdXNl
RGlkTW92ZU92ZXJFbGVtZW50KGNvbnN0IFdlYkNvcmU6OkhpdFRlc3RSZXN1bHQmLCB1bnNpZ25l
ZCBtb2RpZmllckZsYWdzKSBmaW5hbDsKKworICAgIHZvaWQgc2V0VG9vbFRpcChjb25zdCBTdHJp
bmcmLCBXZWJDb3JlOjpUZXh0RGlyZWN0aW9uKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHByaW50
KFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7CisgICAgdm9pZCBwcmludChXZWJDb3JlOjpGcmFt
ZSopIGZpbmFsOwogCi0gICAgdm9pZCBleGNlZWRlZERhdGFiYXNlUXVvdGEoV2ViQ29yZTo6RnJh
bWUqLCBjb25zdCBTdHJpbmcmIGRhdGFiYXNlTmFtZSwgV2ViQ29yZTo6RGF0YWJhc2VEZXRhaWxz
KSBvdmVycmlkZTsKKyAgICB2b2lkIGV4Y2VlZGVkRGF0YWJhc2VRdW90YShXZWJDb3JlOjpGcmFt
ZSosIGNvbnN0IFN0cmluZyYgZGF0YWJhc2VOYW1lLCBXZWJDb3JlOjpEYXRhYmFzZURldGFpbHMp
IGZpbmFsOwogCi0gICAgdm9pZCByZWFjaGVkTWF4QXBwQ2FjaGVTaXplKGludDY0X3Qgc3BhY2VO
ZWVkZWQpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVhY2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5R
dW90YShXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiosIGludDY0X3Qgc3BhY2VOZWVkZWQpIG92ZXJy
aWRlOworICAgIHZvaWQgcmVhY2hlZE1heEFwcENhY2hlU2l6ZShpbnQ2NF90IHNwYWNlTmVlZGVk
KSBmaW5hbDsKKyAgICB2b2lkIHJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoV2Vi
Q29yZTo6U2VjdXJpdHlPcmlnaW4qLCBpbnQ2NF90IHNwYWNlTmVlZGVkKSBmaW5hbDsKIAogI2lm
IEVOQUJMRShEQVNIQk9BUkRfU1VQUE9SVCkKLSAgICB2b2lkIGFubm90YXRlZFJlZ2lvbnNDaGFu
Z2VkKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBhbm5vdGF0ZWRSZWdpb25zQ2hhbmdlZCgpIGZpbmFs
OwogI2VuZGlmCiAKLSAgICBib29sIHNob3VsZFJlcGxhY2VXaXRoR2VuZXJhdGVkRmlsZUZvclVw
bG9hZChjb25zdCBTdHJpbmcmIHBhdGgsIFN0cmluZyYgZ2VuZXJhdGVkRmlsZW5hbWUpIG92ZXJy
aWRlOwotICAgIFN0cmluZyBnZW5lcmF0ZVJlcGxhY2VtZW50RmlsZShjb25zdCBTdHJpbmcmIHBh
dGgpIG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkUmVwbGFjZVdpdGhHZW5lcmF0ZWRGaWxlRm9y
VXBsb2FkKGNvbnN0IFN0cmluZyYgcGF0aCwgU3RyaW5nJiBnZW5lcmF0ZWRGaWxlbmFtZSkgZmlu
YWw7CisgICAgU3RyaW5nIGdlbmVyYXRlUmVwbGFjZW1lbnRGaWxlKGNvbnN0IFN0cmluZyYgcGF0
aCkgZmluYWw7CiAgICAgCiAjaWYgRU5BQkxFKElOUFVUX1RZUEVfQ09MT1IpCi0gICAgc3RkOjp1
bmlxdWVfcHRyPFdlYkNvcmU6OkNvbG9yQ2hvb3Nlcj4gY3JlYXRlQ29sb3JDaG9vc2VyKFdlYkNv
cmU6OkNvbG9yQ2hvb3NlckNsaWVudCosIGNvbnN0IFdlYkNvcmU6OkNvbG9yJikgb3ZlcnJpZGU7
CisgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6OkNvbG9yQ2hvb3Nlcj4gY3JlYXRlQ29sb3JD
aG9vc2VyKFdlYkNvcmU6OkNvbG9yQ2hvb3NlckNsaWVudCosIGNvbnN0IFdlYkNvcmU6OkNvbG9y
JikgZmluYWw7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShJT1NfVE9VQ0hfRVZFTlRTKQotICAgIHZv
aWQgZGlkUHJldmVudERlZmF1bHRGb3JFdmVudCgpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkUHJl
dmVudERlZmF1bHRGb3JFdmVudCgpIGZpbmFsOwogI2VuZGlmCiAKICNpZiBQTEFURk9STShJT1Mp
Ci0gICAgdm9pZCBkaWRSZWNlaXZlTW9iaWxlRG9jVHlwZShib29sKSBvdmVycmlkZTsKLSAgICB2
b2lkIHNldE5lZWRzU2Nyb2xsTm90aWZpY2F0aW9ucyhXZWJDb3JlOjpGcmFtZSosIGJvb2wpIG92
ZXJyaWRlOwotICAgIHZvaWQgb2JzZXJ2ZWRDb250ZW50Q2hhbmdlKFdlYkNvcmU6OkZyYW1lKikg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBjbGVhckNvbnRlbnRDaGFuZ2VPYnNlcnZlcnMoV2ViQ29yZTo6
RnJhbWUqKSBvdmVycmlkZTsKLSAgICB2b2lkIG5vdGlmeVJldmVhbGVkU2VsZWN0aW9uQnlTY3Jv
bGxpbmdGcmFtZShXZWJDb3JlOjpGcmFtZSopIG92ZXJyaWRlOwotICAgIGJvb2wgaXNTdG9wcGlu
ZygpIG92ZXJyaWRlOwotCi0gICAgdm9pZCBkaWRMYXlvdXQoTGF5b3V0VHlwZSA9IE5vcm1hbExh
eW91dCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRTdGFydE92ZXJmbG93U2Nyb2xsKCkgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCBkaWRFbmRPdmVyZmxvd1Njcm9sbCgpIG92ZXJyaWRlOwotICAgIGJvb2wg
aGFzU3RhYmxlUGFnZVNjYWxlRmFjdG9yKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRS
ZWNlaXZlTW9iaWxlRG9jVHlwZShib29sKSBmaW5hbDsKKyAgICB2b2lkIHNldE5lZWRzU2Nyb2xs
Tm90aWZpY2F0aW9ucyhXZWJDb3JlOjpGcmFtZSosIGJvb2wpIGZpbmFsOworICAgIHZvaWQgb2Jz
ZXJ2ZWRDb250ZW50Q2hhbmdlKFdlYkNvcmU6OkZyYW1lKikgZmluYWw7CisgICAgdm9pZCBjbGVh
ckNvbnRlbnRDaGFuZ2VPYnNlcnZlcnMoV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKKyAgICB2b2lk
IG5vdGlmeVJldmVhbGVkU2VsZWN0aW9uQnlTY3JvbGxpbmdGcmFtZShXZWJDb3JlOjpGcmFtZSop
IGZpbmFsOworICAgIGJvb2wgaXNTdG9wcGluZygpIGZpbmFsOworCisgICAgdm9pZCBkaWRMYXlv
dXQoTGF5b3V0VHlwZSA9IE5vcm1hbExheW91dCkgZmluYWw7CisgICAgdm9pZCBkaWRTdGFydE92
ZXJmbG93U2Nyb2xsKCkgZmluYWw7CisgICAgdm9pZCBkaWRFbmRPdmVyZmxvd1Njcm9sbCgpIGZp
bmFsOworICAgIGJvb2wgaGFzU3RhYmxlUGFnZVNjYWxlRmFjdG9yKCkgY29uc3QgZmluYWw7CiAK
ICAgICAvLyBGSVhNRTogU2VlIDxyZGFyOi8vcHJvYmxlbS81OTc1NTU5PgotICAgIHZvaWQgc3Vw
cHJlc3NGb3JtTm90aWZpY2F0aW9ucygpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVzdG9yZUZvcm1O
b3RpZmljYXRpb25zKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBzdXBwcmVzc0Zvcm1Ob3RpZmljYXRp
b25zKCkgZmluYWw7CisgICAgdm9pZCByZXN0b3JlRm9ybU5vdGlmaWNhdGlvbnMoKSBmaW5hbDsK
IAotICAgIHZvaWQgYWRkT3JVcGRhdGVTY3JvbGxpbmdMYXllcihXZWJDb3JlOjpOb2RlKiwgUGxh
dGZvcm1MYXllciogc2Nyb2xsaW5nTGF5ZXIsIFBsYXRmb3JtTGF5ZXIqIGNvbnRlbnRzTGF5ZXIs
IGNvbnN0IFdlYkNvcmU6OkludFNpemUmIHNjcm9sbFNpemUsIGJvb2wgYWxsb3dIb3Jpem9udGFs
U2Nyb2xsYmFyLCBib29sIGFsbG93VmVydGljYWxTY3JvbGxiYXIpIG92ZXJyaWRlOwotICAgIHZv
aWQgcmVtb3ZlU2Nyb2xsaW5nTGF5ZXIoV2ViQ29yZTo6Tm9kZSosIFBsYXRmb3JtTGF5ZXIqIHNj
cm9sbGluZ0xheWVyLCBQbGF0Zm9ybUxheWVyKiBjb250ZW50c0xheWVyKSBvdmVycmlkZTsKKyAg
ICB2b2lkIGFkZE9yVXBkYXRlU2Nyb2xsaW5nTGF5ZXIoV2ViQ29yZTo6Tm9kZSosIFBsYXRmb3Jt
TGF5ZXIqIHNjcm9sbGluZ0xheWVyLCBQbGF0Zm9ybUxheWVyKiBjb250ZW50c0xheWVyLCBjb25z
dCBXZWJDb3JlOjpJbnRTaXplJiBzY3JvbGxTaXplLCBib29sIGFsbG93SG9yaXpvbnRhbFNjcm9s
bGJhciwgYm9vbCBhbGxvd1ZlcnRpY2FsU2Nyb2xsYmFyKSBmaW5hbDsKKyAgICB2b2lkIHJlbW92
ZVNjcm9sbGluZ0xheWVyKFdlYkNvcmU6Ok5vZGUqLCBQbGF0Zm9ybUxheWVyKiBzY3JvbGxpbmdM
YXllciwgUGxhdGZvcm1MYXllciogY29udGVudHNMYXllcikgZmluYWw7CiAKLSAgICB2b2lkIHdl
YkFwcE9yaWVudGF0aW9uc1VwZGF0ZWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIHNob3dQbGF5YmFj
a1RhcmdldFBpY2tlcihib29sIGhhc1ZpZGVvKSBvdmVycmlkZTsKKyAgICB2b2lkIHdlYkFwcE9y
aWVudGF0aW9uc1VwZGF0ZWQoKSBmaW5hbDsKKyAgICB2b2lkIHNob3dQbGF5YmFja1RhcmdldFBp
Y2tlcihib29sIGhhc1ZpZGVvKSBmaW5hbDsKIAotICAgIFNlY29uZHMgZXZlbnRUaHJvdHRsaW5n
RGVsYXkoKSBvdmVycmlkZTsKKyAgICBTZWNvbmRzIGV2ZW50VGhyb3R0bGluZ0RlbGF5KCkgZmlu
YWw7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShPUklFTlRBVElPTl9FVkVOVFMpCi0gICAgaW50IGRl
dmljZU9yaWVudGF0aW9uKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgaW50IGRldmljZU9yaWVudGF0
aW9uKCkgY29uc3QgZmluYWw7CiAjZW5kaWYKIAotICAgIHZvaWQgcnVuT3BlblBhbmVsKFdlYkNv
cmU6OkZyYW1lKiwgUGFzc1JlZlB0cjxXZWJDb3JlOjpGaWxlQ2hvb3Nlcj4pIG92ZXJyaWRlOwot
ICAgIHZvaWQgbG9hZEljb25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8U3RyaW5nPiYsIFdlYkNvcmU6
OkZpbGVJY29uTG9hZGVyJikgb3ZlcnJpZGU7CisgICAgdm9pZCBydW5PcGVuUGFuZWwoV2ViQ29y
ZTo6RnJhbWUmLCBXZWJDb3JlOjpGaWxlQ2hvb3NlciYpIGZpbmFsOworICAgIHZvaWQgbG9hZElj
b25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8U3RyaW5nPiYsIFdlYkNvcmU6OkZpbGVJY29uTG9hZGVy
JikgZmluYWw7CiAKICNpZiAhUExBVEZPUk0oSU9TKQotICAgIHZvaWQgc2V0Q3Vyc29yKGNvbnN0
IFdlYkNvcmU6OkN1cnNvciYpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0Q3Vyc29ySGlkZGVuVW50
aWxNb3VzZU1vdmVzKGJvb2wpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0Q3Vyc29yKGNvbnN0IFdl
YkNvcmU6OkN1cnNvciYpIGZpbmFsOworICAgIHZvaWQgc2V0Q3Vyc29ySGlkZGVuVW50aWxNb3Vz
ZU1vdmVzKGJvb2wpIGZpbmFsOwogI2VuZGlmCisKICNpZiBFTkFCTEUoUkVRVUVTVF9BTklNQVRJ
T05fRlJBTUUpICYmICFVU0UoUkVRVUVTVF9BTklNQVRJT05fRlJBTUVfVElNRVIpCi0gICAgdm9p
ZCBzY2hlZHVsZUFuaW1hdGlvbigpIG92ZXJyaWRlOworICAgIHZvaWQgc2NoZWR1bGVBbmltYXRp
b24oKSBmaW5hbDsKICNlbmRpZgogICAgIAogI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCi0gICAg
Ym9vbCByZXF1ZXN0UG9pbnRlckxvY2soKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlcXVlc3RQb2lu
dGVyVW5sb2NrKCkgb3ZlcnJpZGU7CisgICAgYm9vbCByZXF1ZXN0UG9pbnRlckxvY2soKSBmaW5h
bDsKKyAgICB2b2lkIHJlcXVlc3RQb2ludGVyVW5sb2NrKCkgZmluYWw7CiAjZW5kaWYKIAotICAg
IHZvaWQgZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xzKGNvbnN0IFZlY3RvcjxSZWZQdHI8V2ViQ29y
ZTo6RWxlbWVudD4+Jikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBzaG91bGROb3RpZnlPbkZvcm1DaGFu
Z2VzKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRBc3NvY2lhdGVGb3JtQ29udHJvbHMoY29uc3Qg
VmVjdG9yPFJlZlB0cjxXZWJDb3JlOjpFbGVtZW50Pj4mKSBmaW5hbDsKKyAgICBib29sIHNob3Vs
ZE5vdGlmeU9uRm9ybUNoYW5nZXMoKSBmaW5hbDsKIAotICAgIGJvb2wgc2VsZWN0SXRlbVdyaXRp
bmdEaXJlY3Rpb25Jc05hdHVyYWwoKSBvdmVycmlkZTsKLSAgICBib29sIHNlbGVjdEl0ZW1BbGln
bm1lbnRGb2xsb3dzTWVudVdyaXRpbmdEaXJlY3Rpb24oKSBvdmVycmlkZTsKLSAgICBib29sIGhh
c09wZW5lZFBvcHVwKCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgUmVmUHRyPFdlYkNvcmU6OlBvcHVw
TWVudT4gY3JlYXRlUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCopIGNvbnN0IG92
ZXJyaWRlOwotICAgIFJlZlB0cjxXZWJDb3JlOjpTZWFyY2hQb3B1cE1lbnU+IGNyZWF0ZVNlYXJj
aFBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1lbnVDbGllbnQqKSBjb25zdCBvdmVycmlkZTsKKyAg
ICBib29sIHNlbGVjdEl0ZW1Xcml0aW5nRGlyZWN0aW9uSXNOYXR1cmFsKCkgZmluYWw7CisgICAg
Ym9vbCBzZWxlY3RJdGVtQWxpZ25tZW50Rm9sbG93c01lbnVXcml0aW5nRGlyZWN0aW9uKCkgZmlu
YWw7CisgICAgYm9vbCBoYXNPcGVuZWRQb3B1cCgpIGNvbnN0IGZpbmFsOworICAgIFJlZlB0cjxX
ZWJDb3JlOjpQb3B1cE1lbnU+IGNyZWF0ZVBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1lbnVDbGll
bnQqKSBjb25zdCBmaW5hbDsKKyAgICBSZWZQdHI8V2ViQ29yZTo6U2VhcmNoUG9wdXBNZW51PiBj
cmVhdGVTZWFyY2hQb3B1cE1lbnUoV2ViQ29yZTo6UG9wdXBNZW51Q2xpZW50KikgY29uc3QgZmlu
YWw7CiAKLSAgICBXZWJDb3JlOjpHcmFwaGljc0xheWVyRmFjdG9yeSogZ3JhcGhpY3NMYXllckZh
Y3RvcnkoKSBjb25zdCBvdmVycmlkZTsKLSAgICB2b2lkIGF0dGFjaFJvb3RHcmFwaGljc0xheWVy
KFdlYkNvcmU6OkZyYW1lKiwgV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOwotICAg
IHZvaWQgYXR0YWNoVmlld092ZXJsYXlHcmFwaGljc0xheWVyKFdlYkNvcmU6OkZyYW1lKiwgV2Vi
Q29yZTo6R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0TmVlZHNPbmVTaG90
RHJhd2luZ1N5bmNocm9uaXphdGlvbigpIG92ZXJyaWRlOwotICAgIHZvaWQgc2NoZWR1bGVDb21w
b3NpdGluZ0xheWVyRmx1c2goKSBvdmVycmlkZTsKLSAgICBib29sIGFkanVzdExheWVyRmx1c2hU
aHJvdHRsaW5nKFdlYkNvcmU6OkxheWVyRmx1c2hUaHJvdHRsZVN0YXRlOjpGbGFncykgb3ZlcnJp
ZGU7CisgICAgV2ViQ29yZTo6R3JhcGhpY3NMYXllckZhY3RvcnkqIGdyYXBoaWNzTGF5ZXJGYWN0
b3J5KCkgY29uc3QgZmluYWw7CisgICAgdm9pZCBhdHRhY2hSb290R3JhcGhpY3NMYXllcihXZWJD
b3JlOjpGcmFtZSosIFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXIqKSBmaW5hbDsKKyAgICB2b2lkIGF0
dGFjaFZpZXdPdmVybGF5R3JhcGhpY3NMYXllcihXZWJDb3JlOjpGcmFtZSosIFdlYkNvcmU6Okdy
YXBoaWNzTGF5ZXIqKSBmaW5hbDsKKyAgICB2b2lkIHNldE5lZWRzT25lU2hvdERyYXdpbmdTeW5j
aHJvbml6YXRpb24oKSBmaW5hbDsKKyAgICB2b2lkIHNjaGVkdWxlQ29tcG9zaXRpbmdMYXllckZs
dXNoKCkgZmluYWw7CisgICAgYm9vbCBhZGp1c3RMYXllckZsdXNoVGhyb3R0bGluZyhXZWJDb3Jl
OjpMYXllckZsdXNoVGhyb3R0bGVTdGF0ZTo6RmxhZ3MpIGZpbmFsOwogCiAjaWYgVVNFKFJFUVVF
U1RfQU5JTUFUSU9OX0ZSQU1FX0RJU1BMQVlfTU9OSVRPUikKLSAgICBSZWZQdHI8V2ViQ29yZTo6
RGlzcGxheVJlZnJlc2hNb25pdG9yPiBjcmVhdGVEaXNwbGF5UmVmcmVzaE1vbml0b3IoV2ViQ29y
ZTo6UGxhdGZvcm1EaXNwbGF5SUQpIGNvbnN0IG92ZXJyaWRlOworICAgIFJlZlB0cjxXZWJDb3Jl
OjpEaXNwbGF5UmVmcmVzaE1vbml0b3I+IGNyZWF0ZURpc3BsYXlSZWZyZXNoTW9uaXRvcihXZWJD
b3JlOjpQbGF0Zm9ybURpc3BsYXlJRCkgY29uc3QgZmluYWw7CiAjZW5kaWYKIAotICAgIENvbXBv
c2l0aW5nVHJpZ2dlckZsYWdzIGFsbG93ZWRDb21wb3NpdGluZ1RyaWdnZXJzKCkgY29uc3Qgb3Zl
cnJpZGUKKyAgICBDb21wb3NpdGluZ1RyaWdnZXJGbGFncyBhbGxvd2VkQ29tcG9zaXRpbmdUcmln
Z2VycygpIGNvbnN0IGZpbmFsCiAgICAgewogICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8Q29t
cG9zaXRpbmdUcmlnZ2VyRmxhZ3M+KAogICAgICAgICAgICAgVGhyZWVEVHJhbnNmb3JtVHJpZ2dl
ciB8CkBAIC0yMzAsMTE5ICsyMjgsMTIxIEBAIHByaXZhdGU6CiAgICAgICAgICAgICBBbmltYXRp
b25UcmlnZ2VyKTsKICAgICB9CiAKLSAgICBib29sIGxheWVyVHJlZVN0YXRlSXNGcm96ZW4oKSBj
b25zdCBvdmVycmlkZTsKKyAgICBib29sIGxheWVyVHJlZVN0YXRlSXNGcm96ZW4oKSBjb25zdCBm
aW5hbDsKIAogI2lmIEVOQUJMRShBU1lOQ19TQ1JPTExJTkcpCi0gICAgUGFzc1JlZlB0cjxXZWJD
b3JlOjpTY3JvbGxpbmdDb29yZGluYXRvcj4gY3JlYXRlU2Nyb2xsaW5nQ29vcmRpbmF0b3IoV2Vi
Q29yZTo6UGFnZSopIGNvbnN0IG92ZXJyaWRlOworICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6U2Ny
b2xsaW5nQ29vcmRpbmF0b3I+IGNyZWF0ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yKFdlYkNvcmU6OlBh
Z2UqKSBjb25zdCBmaW5hbDsKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oSU9TKQotICAgIHZvaWQg
ZWxlbWVudERpZFJlZm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9kZSopIG92ZXJyaWRlOworICAgIHZv
aWQgZWxlbWVudERpZFJlZm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9kZSopIGZpbmFsOwogI2VuZGlm
CiAKICNpZiAoUExBVEZPUk0oSU9TKSAmJiBIQVZFKEFWS0lUKSkgfHwgKFBMQVRGT1JNKE1BQykg
JiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSkKLSAgICBib29sIHN1cHBvcnRzVmlk
ZW9GdWxsc2NyZWVuKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2Ny
ZWVuTW9kZSkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRVcFBsYXliYWNrQ29udHJvbHNNYW5hZ2Vy
KFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQmKSBvdmVycmlkZTsKLSAgICB2b2lkIGNsZWFyUGxh
eWJhY2tDb250cm9sc01hbmFnZXIoKSBvdmVycmlkZTsKLSAgICB2b2lkIGVudGVyVmlkZW9GdWxs
c2NyZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmLCBXZWJDb3Jl
OjpIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIG92ZXJyaWRlOwot
ICAgIHZvaWQgZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1M
VmlkZW9FbGVtZW50Jikgb3ZlcnJpZGU7Ci0jaWYgUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklE
RU9fUFJFU0VOVEFUSU9OX01PREUpCi0gICAgdm9pZCBleGl0VmlkZW9GdWxsc2NyZWVuVG9Nb2Rl
V2l0aG91dEFuaW1hdGlvbihXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50JiwgV2ViQ29yZTo6SFRN
TE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlKSBvdmVycmlkZTsKKyAgICBi
b29sIHN1cHBvcnRzVmlkZW9GdWxsc2NyZWVuKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVt
czo6VmlkZW9GdWxsc2NyZWVuTW9kZSkgZmluYWw7CisgICAgdm9pZCBzZXRVcFBsYXliYWNrQ29u
dHJvbHNNYW5hZ2VyKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQmKSBmaW5hbDsKKyAgICB2b2lk
IGNsZWFyUGxheWJhY2tDb250cm9sc01hbmFnZXIoKSBmaW5hbDsKKyAgICB2b2lkIGVudGVyVmlk
ZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmLCBX
ZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIGZpbmFs
OworICAgIHZvaWQgZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpI
VE1MVmlkZW9FbGVtZW50JikgZmluYWw7CiAjZW5kaWYKKworI2lmIFBMQVRGT1JNKE1BQykgJiYg
RU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQorICAgIHZvaWQgZXhpdFZpZGVvRnVsbHNj
cmVlblRvTW9kZVdpdGhvdXRBbmltYXRpb24oV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCYsIFdl
YkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZSkgZmluYWw7
CiAjZW5kaWYKIAogI2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQSSkKLSAgICBib29sIHN1cHBvcnRz
RnVsbFNjcmVlbkZvckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6RWxlbWVudCosIGJvb2wgd2l0aEtl
eWJvYXJkKSBvdmVycmlkZTsKLSAgICB2b2lkIGVudGVyRnVsbFNjcmVlbkZvckVsZW1lbnQoV2Vi
Q29yZTo6RWxlbWVudCopIG92ZXJyaWRlOwotICAgIHZvaWQgZXhpdEZ1bGxTY3JlZW5Gb3JFbGVt
ZW50KFdlYkNvcmU6OkVsZW1lbnQqKSBvdmVycmlkZTsKKyAgICBib29sIHN1cHBvcnRzRnVsbFNj
cmVlbkZvckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6RWxlbWVudCosIGJvb2wgd2l0aEtleWJvYXJk
KSBmaW5hbDsKKyAgICB2b2lkIGVudGVyRnVsbFNjcmVlbkZvckVsZW1lbnQoV2ViQ29yZTo6RWxl
bWVudCopIGZpbmFsOworICAgIHZvaWQgZXhpdEZ1bGxTY3JlZW5Gb3JFbGVtZW50KFdlYkNvcmU6
OkVsZW1lbnQqKSBmaW5hbDsKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oQ09DT0EpCi0gICAgdm9p
ZCBlbGVtZW50RGlkRm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9kZSopIG92ZXJyaWRlOwotICAgIHZv
aWQgZWxlbWVudERpZEJsdXIoY29uc3QgV2ViQ29yZTo6Tm9kZSopIG92ZXJyaWRlOworICAgIHZv
aWQgZWxlbWVudERpZEZvY3VzKGNvbnN0IFdlYkNvcmU6Ok5vZGUqKSBmaW5hbDsKKyAgICB2b2lk
IGVsZW1lbnREaWRCbHVyKGNvbnN0IFdlYkNvcmU6Ok5vZGUqKSBmaW5hbDsKIAotICAgIHZvaWQg
bWFrZUZpcnN0UmVzcG9uZGVyKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBtYWtlRmlyc3RSZXNwb25k
ZXIoKSBmaW5hbDsKICNlbmRpZgogCi0gICAgdm9pZCBlbmFibGVTdWRkZW5UZXJtaW5hdGlvbigp
IG92ZXJyaWRlOwotICAgIHZvaWQgZGlzYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkgb3ZlcnJpZGU7
CisgICAgdm9pZCBlbmFibGVTdWRkZW5UZXJtaW5hdGlvbigpIGZpbmFsOworICAgIHZvaWQgZGlz
YWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkgZmluYWw7CiAKICNpZiBQTEFURk9STShJT1MpCi0gICAg
V2ViQ29yZTo6RmxvYXRTaXplIHNjcmVlblNpemUoKSBjb25zdCBvdmVycmlkZTsKLSAgICBXZWJD
b3JlOjpGbG9hdFNpemUgYXZhaWxhYmxlU2NyZWVuU2l6ZSgpIGNvbnN0IG92ZXJyaWRlOworICAg
IFdlYkNvcmU6OkZsb2F0U2l6ZSBzY3JlZW5TaXplKCkgY29uc3QgZmluYWw7CisgICAgV2ViQ29y
ZTo6RmxvYXRTaXplIGF2YWlsYWJsZVNjcmVlblNpemUoKSBjb25zdCBmaW5hbDsKICNlbmRpZgot
ICAgIHZvaWQgZGlzcGF0Y2hWaWV3cG9ydFByb3BlcnRpZXNEaWRDaGFuZ2UoY29uc3QgV2ViQ29y
ZTo6Vmlld3BvcnRBcmd1bWVudHMmKSBjb25zdCBvdmVycmlkZTsKIAotICAgIHZvaWQgbm90aWZ5
U2Nyb2xsZXJUaHVtYklzVmlzaWJsZUluUmVjdChjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jikgb3Zl
cnJpZGU7Ci0gICAgdm9pZCByZWNvbW1lbmRlZFNjcm9sbGJhclN0eWxlRGlkQ2hhbmdlKFdlYkNv
cmU6OlNjcm9sbGJhclN0eWxlIG5ld1N0eWxlKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNo
Vmlld3BvcnRQcm9wZXJ0aWVzRGlkQ2hhbmdlKGNvbnN0IFdlYkNvcmU6OlZpZXdwb3J0QXJndW1l
bnRzJikgY29uc3QgZmluYWw7CiAKLSAgICBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlNjcm9sbGJh
ck92ZXJsYXlTdHlsZT4gcHJlZmVycmVkU2Nyb2xsYmFyT3ZlcmxheVN0eWxlKCkgb3ZlcnJpZGU7
CisgICAgdm9pZCBub3RpZnlTY3JvbGxlclRodW1iSXNWaXNpYmxlSW5SZWN0KGNvbnN0IFdlYkNv
cmU6OkludFJlY3QmKSBmaW5hbDsKKyAgICB2b2lkIHJlY29tbWVuZGVkU2Nyb2xsYmFyU3R5bGVE
aWRDaGFuZ2UoV2ViQ29yZTo6U2Nyb2xsYmFyU3R5bGUgbmV3U3R5bGUpIGZpbmFsOwogCi0gICAg
V2ViQ29yZTo6Q29sb3IgdW5kZXJsYXlDb2xvcigpIGNvbnN0IG92ZXJyaWRlOworICAgIHN0ZDo6
b3B0aW9uYWw8V2ViQ29yZTo6U2Nyb2xsYmFyT3ZlcmxheVN0eWxlPiBwcmVmZXJyZWRTY3JvbGxi
YXJPdmVybGF5U3R5bGUoKSBmaW5hbDsKIAotICAgIHZvaWQgcGFnZUV4dGVuZGVkQmFja2dyb3Vu
ZENvbG9yRGlkQ2hhbmdlKFdlYkNvcmU6OkNvbG9yKSBjb25zdCBvdmVycmlkZTsKKyAgICBXZWJD
b3JlOjpDb2xvciB1bmRlcmxheUNvbG9yKCkgY29uc3QgZmluYWw7CisKKyAgICB2b2lkIHBhZ2VF
eHRlbmRlZEJhY2tncm91bmRDb2xvckRpZENoYW5nZShXZWJDb3JlOjpDb2xvcikgY29uc3QgZmlu
YWw7CiAgICAgCi0gICAgdm9pZCB3aGVlbEV2ZW50SGFuZGxlcnNDaGFuZ2VkKGJvb2wpIG92ZXJy
aWRlOworICAgIHZvaWQgd2hlZWxFdmVudEhhbmRsZXJzQ2hhbmdlZChib29sKSBmaW5hbDsKIAot
ICAgIFN0cmluZyBwbHVnSW5TdGFydExhYmVsVGl0bGUoY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkg
Y29uc3Qgb3ZlcnJpZGU7Ci0gICAgU3RyaW5nIHBsdWdJblN0YXJ0TGFiZWxTdWJ0aXRsZShjb25z
dCBTdHJpbmcmIG1pbWVUeXBlKSBjb25zdCBvdmVycmlkZTsKLSAgICBTdHJpbmcgcGx1Z0luRXh0
cmFTdHlsZVNoZWV0KCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgU3RyaW5nIHBsdWdJbkV4dHJhU2Ny
aXB0KCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgU3RyaW5nIHBsdWdJblN0YXJ0TGFiZWxUaXRsZShj
b25zdCBTdHJpbmcmIG1pbWVUeXBlKSBjb25zdCBmaW5hbDsKKyAgICBTdHJpbmcgcGx1Z0luU3Rh
cnRMYWJlbFN1YnRpdGxlKGNvbnN0IFN0cmluZyYgbWltZVR5cGUpIGNvbnN0IGZpbmFsOworICAg
IFN0cmluZyBwbHVnSW5FeHRyYVN0eWxlU2hlZXQoKSBjb25zdCBmaW5hbDsKKyAgICBTdHJpbmcg
cGx1Z0luRXh0cmFTY3JpcHQoKSBjb25zdCBmaW5hbDsKIAotICAgIHZvaWQgZGlkQWRkSGVhZGVy
TGF5ZXIoV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkQWRk
Rm9vdGVyTGF5ZXIoV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOworICAgIHZvaWQg
ZGlkQWRkSGVhZGVyTGF5ZXIoV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIGZpbmFsOworICAgIHZv
aWQgZGlkQWRkRm9vdGVyTGF5ZXIoV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIGZpbmFsOwogCi0g
ICAgYm9vbCBzaG91bGRVc2VUaWxlZEJhY2tpbmdGb3JGcmFtZVZpZXcoY29uc3QgV2ViQ29yZTo6
RnJhbWVWaWV3KikgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRVc2VUaWxlZEJhY2tp
bmdGb3JGcmFtZVZpZXcoY29uc3QgV2ViQ29yZTo6RnJhbWVWaWV3KikgY29uc3QgZmluYWw7CiAK
LSAgICB2b2lkIGlzUGxheWluZ01lZGlhRGlkQ2hhbmdlKFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6
Ok1lZGlhU3RhdGVGbGFncywgdWludDY0X3QpIG92ZXJyaWRlOworICAgIHZvaWQgaXNQbGF5aW5n
TWVkaWFEaWRDaGFuZ2UoV2ViQ29yZTo6TWVkaWFQcm9kdWNlcjo6TWVkaWFTdGF0ZUZsYWdzLCB1
aW50NjRfdCkgZmluYWw7CiAKICNpZiBFTkFCTEUoTUVESUFfU0VTU0lPTikKLSAgICB2b2lkIGhh
c01lZGlhU2Vzc2lvbldpdGhBY3RpdmVNZWRpYUVsZW1lbnRzRGlkQ2hhbmdlKGJvb2wpIG92ZXJy
aWRlOwotICAgIHZvaWQgbWVkaWFTZXNzaW9uTWV0YWRhdGFEaWRDaGFuZ2UoY29uc3QgV2ViQ29y
ZTo6TWVkaWFTZXNzaW9uTWV0YWRhdGEmKSBvdmVycmlkZTsKLSAgICB2b2lkIGZvY3VzZWRDb250
ZW50TWVkaWFFbGVtZW50RGlkQ2hhbmdlKHVpbnQ2NF90KSBvdmVycmlkZTsKKyAgICB2b2lkIGhh
c01lZGlhU2Vzc2lvbldpdGhBY3RpdmVNZWRpYUVsZW1lbnRzRGlkQ2hhbmdlKGJvb2wpIGZpbmFs
OworICAgIHZvaWQgbWVkaWFTZXNzaW9uTWV0YWRhdGFEaWRDaGFuZ2UoY29uc3QgV2ViQ29yZTo6
TWVkaWFTZXNzaW9uTWV0YWRhdGEmKSBmaW5hbDsKKyAgICB2b2lkIGZvY3VzZWRDb250ZW50TWVk
aWFFbGVtZW50RGlkQ2hhbmdlKHVpbnQ2NF90KSBmaW5hbDsKICNlbmRpZgogCiAjaWYgRU5BQkxF
KFNVQlRMRV9DUllQVE8pCi0gICAgYm9vbCB3cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50
OF90PiYsIFZlY3Rvcjx1aW50OF90PiYpIGNvbnN0IG92ZXJyaWRlOwotICAgIGJvb2wgdW53cmFw
Q3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90PiYsIFZlY3Rvcjx1aW50OF90PiYpIGNvbnN0
IG92ZXJyaWRlOworICAgIGJvb2wgd3JhcENyeXB0b0tleShjb25zdCBWZWN0b3I8dWludDhfdD4m
LCBWZWN0b3I8dWludDhfdD4mKSBjb25zdCBmaW5hbDsKKyAgICBib29sIHVud3JhcENyeXB0b0tl
eShjb25zdCBWZWN0b3I8dWludDhfdD4mLCBWZWN0b3I8dWludDhfdD4mKSBjb25zdCBmaW5hbDsK
ICNlbmRpZgogCiAjaWYgRU5BQkxFKFRFTEVQSE9ORV9OVU1CRVJfREVURUNUSU9OKSAmJiBQTEFU
Rk9STShNQUMpCi0gICAgdm9pZCBoYW5kbGVUZWxlcGhvbmVOdW1iZXJDbGljayhjb25zdCBTdHJp
bmcmIG51bWJlciwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKSBvdmVycmlkZTsKKyAgICB2b2lk
IGhhbmRsZVRlbGVwaG9uZU51bWJlckNsaWNrKGNvbnN0IFN0cmluZyYgbnVtYmVyLCBjb25zdCBX
ZWJDb3JlOjpJbnRQb2ludCYpIGZpbmFsOwogI2VuZGlmCisKICNpZiBFTkFCTEUoU0VSVklDRV9D
T05UUk9MUykKLSAgICB2b2lkIGhhbmRsZVNlbGVjdGlvblNlcnZpY2VDbGljayhXZWJDb3JlOjpG
cmFtZVNlbGVjdGlvbiYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiB0ZWxlcGhvbmVOdW1iZXJzLCBj
b25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIG92ZXJyaWRlOwotICAgIGJvb2wgaGFzUmVsZXZhbnRT
ZWxlY3Rpb25TZXJ2aWNlcyhib29sIGlzVGV4dE9ubHkpIGNvbnN0IG92ZXJyaWRlOworICAgIHZv
aWQgaGFuZGxlU2VsZWN0aW9uU2VydmljZUNsaWNrKFdlYkNvcmU6OkZyYW1lU2VsZWN0aW9uJiwg
Y29uc3QgVmVjdG9yPFN0cmluZz4mIHRlbGVwaG9uZU51bWJlcnMsIGNvbnN0IFdlYkNvcmU6Oklu
dFBvaW50JikgZmluYWw7CisgICAgYm9vbCBoYXNSZWxldmFudFNlbGVjdGlvblNlcnZpY2VzKGJv
b2wgaXNUZXh0T25seSkgY29uc3QgZmluYWw7CiAjZW5kaWYKIAotICAgIGJvb2wgc2hvdWxkRGlz
cGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91
bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHMoKSBjb25zdCBmaW5hbDsKIAotICAgIHZvaWQg
aGFuZGxlQXV0b0ZpbGxCdXR0b25DbGljayhXZWJDb3JlOjpIVE1MSW5wdXRFbGVtZW50Jikgb3Zl
cnJpZGU7CisgICAgdm9pZCBoYW5kbGVBdXRvRmlsbEJ1dHRvbkNsaWNrKFdlYkNvcmU6OkhUTUxJ
bnB1dEVsZW1lbnQmKSBmaW5hbDsKIAogI2lmIEVOQUJMRShXSVJFTEVTU19QTEFZQkFDS19UQVJH
RVQpICYmICFQTEFURk9STShJT1MpCi0gICAgdm9pZCBhZGRQbGF5YmFja1RhcmdldFBpY2tlckNs
aWVudCh1aW50NjRfdCAvKmNvbnRleHRJZCovKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlbW92ZVBs
YXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2NF90IC8qY29udGV4dElkKi8pIG92ZXJyaWRl
OwotICAgIHZvaWQgc2hvd1BsYXliYWNrVGFyZ2V0UGlja2VyKHVpbnQ2NF90IGNvbnRleHRJZCwg
Y29uc3QgV2ViQ29yZTo6SW50UG9pbnQmLCBib29sKSBvdmVycmlkZTsKLSAgICB2b2lkIHBsYXli
YWNrVGFyZ2V0UGlja2VyQ2xpZW50U3RhdGVEaWRDaGFuZ2UodWludDY0X3QsIFdlYkNvcmU6Ok1l
ZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncykgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRNb2Nr
TWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVuYWJsZWQoYm9vbCkgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlclN0YXRlKGNvbnN0IFN0cmluZyYsIFdl
YkNvcmU6Ok1lZGlhUGxheWJhY2tUYXJnZXRDb250ZXh0OjpTdGF0ZSkgb3ZlcnJpZGU7CisgICAg
dm9pZCBhZGRQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudCh1aW50NjRfdCAvKmNvbnRleHRJZCov
KSBmaW5hbDsKKyAgICB2b2lkIHJlbW92ZVBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2
NF90IC8qY29udGV4dElkKi8pIGZpbmFsOworICAgIHZvaWQgc2hvd1BsYXliYWNrVGFyZ2V0UGlj
a2VyKHVpbnQ2NF90IGNvbnRleHRJZCwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmLCBib29sKSBm
aW5hbDsKKyAgICB2b2lkIHBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50U3RhdGVEaWRDaGFuZ2Uo
dWludDY0X3QsIFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncykgZmluYWw7
CisgICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVuYWJsZWQoYm9vbCkg
ZmluYWw7CisgICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlclN0YXRlKGNv
bnN0IFN0cmluZyYsIFdlYkNvcmU6Ok1lZGlhUGxheWJhY2tUYXJnZXRDb250ZXh0OjpTdGF0ZSkg
ZmluYWw7CiAjZW5kaWYKIAotICAgIHZvaWQgaW1hZ2VPck1lZGlhRG9jdW1lbnRTaXplQ2hhbmdl
ZChjb25zdCBXZWJDb3JlOjpJbnRTaXplJikgb3ZlcnJpZGU7Ci0jaWYgRU5BQkxFKFZJREVPKQot
I2lmIFVTRShHU1RSRUFNRVIpCi0gICAgdm9pZCByZXF1ZXN0SW5zdGFsbE1pc3NpbmdNZWRpYVBs
dWdpbnMoY29uc3QgU3RyaW5nJiAvKmRldGFpbHMqLywgY29uc3QgU3RyaW5nJiAvKmRlc2NyaXB0
aW9uKi8sIFdlYkNvcmU6Ok1lZGlhUGxheWVyUmVxdWVzdEluc3RhbGxNaXNzaW5nUGx1Z2luc0Nh
bGxiYWNrJikgb3ZlcnJpZGU7Ci0jZW5kaWYKKyAgICB2b2lkIGltYWdlT3JNZWRpYURvY3VtZW50
U2l6ZUNoYW5nZWQoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYpIGZpbmFsOworCisjaWYgRU5BQkxF
KFZJREVPKSAmJiBVU0UoR1NUUkVBTUVSKQorICAgIHZvaWQgcmVxdWVzdEluc3RhbGxNaXNzaW5n
TWVkaWFQbHVnaW5zKGNvbnN0IFN0cmluZyYgLypkZXRhaWxzKi8sIGNvbnN0IFN0cmluZyYgLypk
ZXNjcmlwdGlvbiovLCBXZWJDb3JlOjpNZWRpYVBsYXllclJlcXVlc3RJbnN0YWxsTWlzc2luZ1Bs
dWdpbnNDYWxsYmFjayYpIGZpbmFsOwogI2VuZGlmCiAKLSAgICB2b2lkIGRpZEludmFsaWRhdGVE
b2N1bWVudE1hcmtlclJlY3RzKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRJbnZhbGlkYXRlRG9j
dW1lbnRNYXJrZXJSZWN0cygpIGZpbmFsOwogCiAgICAgU3RyaW5nIG1fY2FjaGVkVG9vbFRpcDsK
ICAgICBtdXRhYmxlIFJlZlB0cjxXZWJGcmFtZT4gbV9jYWNoZWRGcmFtZVNldExhcmdlc3RGcmFt
ZTsKLSAgICBtdXRhYmxlIGJvb2wgbV9jYWNoZWRNYWluRnJhbWVIYXNIb3Jpem9udGFsU2Nyb2xs
YmFyOwotICAgIG11dGFibGUgYm9vbCBtX2NhY2hlZE1haW5GcmFtZUhhc1ZlcnRpY2FsU2Nyb2xs
YmFyOworICAgIG11dGFibGUgYm9vbCBtX2NhY2hlZE1haW5GcmFtZUhhc0hvcml6b250YWxTY3Jv
bGxiYXIgeyBmYWxzZSB9OworICAgIG11dGFibGUgYm9vbCBtX2NhY2hlZE1haW5GcmFtZUhhc1Zl
cnRpY2FsU2Nyb2xsYmFyIHsgZmFsc2UgfTsKIAotICAgIFdlYlBhZ2UqIG1fcGFnZTsKKyAgICBX
ZWJQYWdlJiBtX3BhZ2U7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50
LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9y
Q2xpZW50LmNwcAppbmRleCA1NGIyN2I0NDA0ODUyNjllNWU4N2Y4MmQwZmI1MDJhMWYwMjJhYzMz
Li44YjgwNzU1MmM0MTE0NTI2MjQ4ODAzODNmOWQzMmFiYWEwNzZiZWZiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5j
cHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0
b3JDbGllbnQuY3BwCkBAIC0yMzgsMjEgKzIzOCwyMSBAQCB2b2lkIFdlYkVkaXRvckNsaWVudDo6
Z2V0Q2xpZW50UGFzdGVib2FyZERhdGFGb3JSYW5nZShSYW5nZSogcmFuZ2UsIFZlY3RvcjxTdHJp
bgogICAgIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVFZGl0b3JDbGllbnQoKS5nZXRQYXN0ZWJvYXJk
RGF0YUZvclJhbmdlKCptX3BhZ2UsIHJhbmdlLCBwYXN0ZWJvYXJkVHlwZXMsIHBhc3RlYm9hcmRE
YXRhKTsKIH0KIAotdm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb1N0ZXAoUGFzc1Jl
ZlB0cjxVbmRvU3RlcD4gc3RlcCkKK3ZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9T
dGVwKFVuZG9TdGVwJiBzdGVwKQogewogICAgIC8vIEZJWE1FOiBBZGQgYXNzZXJ0aW9uIHRoYXQg
dGhlIGNvbW1hbmQgYmVpbmcgcmVhcHBsaWVkIGlzIHRoZSBzYW1lIGNvbW1hbmQgdGhhdCBpcwog
ICAgIC8vIGJlaW5nIHBhc3NlZCB0byB1cy4KICAgICBpZiAobV9wYWdlLT5pc0luUmVkbygpKQog
ICAgICAgICByZXR1cm47CiAKLSAgICBSZWZQdHI8V2ViVW5kb1N0ZXA+IHdlYlN0ZXAgPSBXZWJV
bmRvU3RlcDo6Y3JlYXRlKHN0ZXApOwotICAgIG1fcGFnZS0+YWRkV2ViVW5kb1N0ZXAod2ViU3Rl
cC0+c3RlcElEKCksIHdlYlN0ZXAuZ2V0KCkpOwotICAgIHVpbnQzMl90IGVkaXRBY3Rpb24gPSBz
dGF0aWNfY2FzdDx1aW50MzJfdD4od2ViU3RlcC0+c3RlcCgpLT5lZGl0aW5nQWN0aW9uKCkpOwor
ICAgIGF1dG8gd2ViU3RlcCA9IFdlYlVuZG9TdGVwOjpjcmVhdGUoJnN0ZXApOworICAgIGF1dG8g
ZWRpdEFjdGlvbiA9IHN0YXRpY19jYXN0PHVpbnQzMl90Pih3ZWJTdGVwLT5zdGVwKCktPmVkaXRp
bmdBY3Rpb24oKSk7CiAKKyAgICBtX3BhZ2UtPmFkZFdlYlVuZG9TdGVwKHdlYlN0ZXAtPnN0ZXBJ
RCgpLCB3ZWJTdGVwLnB0cigpKTsKICAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6UmVnaXN0ZXJFZGl0Q29tbWFuZEZvclVuZG8od2ViU3RlcC0+c3RlcElEKCksIGVkaXRB
Y3Rpb24pKTsKIH0KIAotdm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyUmVkb1N0ZXAoUGFz
c1JlZlB0cjxVbmRvU3RlcD4pCit2b2lkIFdlYkVkaXRvckNsaWVudDo6cmVnaXN0ZXJSZWRvU3Rl
cChVbmRvU3RlcCYpCiB7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oCmluZGV4IDhkODE3NGRjOTEz
YWY1ZTJjYjMwMTgwNzQyMDVhZDk1ODE5NjRhNjAuLmNlMmJjYzQ3MTg4NGFlZTFkOWRhNWMyZGE3
YzVjNzhiNmVmODU0ZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
Q29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuaApAQCAtNzEsOCArNzEsOCBAQCBw
cml2YXRlOgogICAgIHZvaWQgZGlkV3JpdGVTZWxlY3Rpb25Ub1Bhc3RlYm9hcmQoKSBmaW5hbDsK
ICAgICB2b2lkIGdldENsaWVudFBhc3RlYm9hcmREYXRhRm9yUmFuZ2UoV2ViQ29yZTo6UmFuZ2Uq
LCBWZWN0b3I8U3RyaW5nPiYgcGFzdGVib2FyZFR5cGVzLCBWZWN0b3I8UmVmUHRyPFdlYkNvcmU6
OlNoYXJlZEJ1ZmZlcj4+JiBwYXN0ZWJvYXJkRGF0YSkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBy
ZWdpc3RlclVuZG9TdGVwKFBhc3NSZWZQdHI8V2ViQ29yZTo6VW5kb1N0ZXA+KSBmaW5hbDsKLSAg
ICB2b2lkIHJlZ2lzdGVyUmVkb1N0ZXAoUGFzc1JlZlB0cjxXZWJDb3JlOjpVbmRvU3RlcD4pIGZp
bmFsOworICAgIHZvaWQgcmVnaXN0ZXJVbmRvU3RlcChXZWJDb3JlOjpVbmRvU3RlcCYpIGZpbmFs
OworICAgIHZvaWQgcmVnaXN0ZXJSZWRvU3RlcChXZWJDb3JlOjpVbmRvU3RlcCYpIGZpbmFsOwog
ICAgIHZvaWQgY2xlYXJVbmRvUmVkb09wZXJhdGlvbnMoKSBmaW5hbDsKIAogICAgIGJvb2wgY2Fu
Q29weUN1dChXZWJDb3JlOjpGcmFtZSosIGJvb2wgZGVmYXVsdFZhbHVlKSBjb25zdCBmaW5hbDsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2Vi
RnJhbWVMb2FkZXJDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3Jl
U3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKaW5kZXggZjE3NzVjNjg2ZjhmNDA2NTA4
Njg1MzUyNWUwMGYxZGQyYjEzMWJkZi4uOGE3NTk0ZTAxM2IyMzE3YTNhMzI3YmFiZDQ0OTJmOTM0
ZTIwMWRiZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3Vw
cG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKQEAgLTcwMSw3ICs3
MDEsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZv
clJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9ucwogICAgICAgICBtX2ZyYW1lLT5kaWRSZWNl
aXZlUG9saWN5RGVjaXNpb24obGlzdGVuZXJJRCwgc3RhdGljX2Nhc3Q8UG9saWN5QWN0aW9uPihw
b2xpY3lBY3Rpb24pLCAwLCBkb3dubG9hZElEKTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNs
aWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdh
dGlvbkFjdGlvbiYgbmF2aWdhdGlvbkFjdGlvbiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1
ZXN0LCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4gZm9ybVN0YXRlLCBjb25zdCBTdHJpbmcmIGZyYW1l
TmFtZSwgRnJhbWVQb2xpY3lGdW5jdGlvbiBmdW5jdGlvbikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IE5hdmln
YXRpb25BY3Rpb24mIG5hdmlnYXRpb25BY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVx
dWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBGcmFt
ZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQogewogICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBtX2Zy
YW1lLT5wYWdlKCk7CiAgICAgaWYgKCF3ZWJQYWdlKSB7CkBAIC03MzcsNyArNzM3LDcgQEAgdm9p
ZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dB
Y3Rpb24oY29uc3QgTmF2aWdhdGkKICAgICB3ZWJQYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OkRlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihtX2ZyYW1lLT5mcmFtZUlEKCks
IFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbUZyYW1lKGNvcmVGcmFtZSksIG5hdmlnYXRpb25BY3Rp
b25EYXRhLCByZXF1ZXN0LCBmcmFtZU5hbWUsIGxpc3RlbmVySUQsIFVzZXJEYXRhKFdlYlByb2Nl
c3M6OnNpbmdsZXRvbigpLnRyYW5zZm9ybU9iamVjdHNUb0hhbmRsZXModXNlckRhdGEuZ2V0KCkp
LmdldCgpKSkpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lk
ZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgbmF2aWdh
dGlvbkFjdGlvbiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBQYXNzUmVmUHRyPEZv
cm1TdGF0ZT4gcHJwRm9ybVN0YXRlLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQordm9p
ZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9u
QWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIG5hdmlnYXRpb25BY3Rpb24sIGNvbnN0IFJl
c291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIEZyYW1lUG9saWN5
RnVuY3Rpb24gZnVuY3Rpb24pCiB7CiAgICAgV2ViUGFnZSogd2ViUGFnZSA9IG1fZnJhbWUtPnBh
Z2UoKTsKICAgICBpZiAoIXdlYlBhZ2UpIHsKQEAgLTc1Miw3ICs3NTIsNiBAQCB2b2lkIFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24o
Y29uc3QgTmF2aWdhdAogICAgIH0KIAogICAgIFJlZlB0cjxBUEk6Ok9iamVjdD4gdXNlckRhdGE7
Ci0gICAgUmVmUHRyPEZvcm1TdGF0ZT4gZm9ybVN0YXRlID0gcHJwRm9ybVN0YXRlOwogCiAgICAg
UmVmUHRyPEluamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbj4gYWN0aW9uID0gSW5qZWN0ZWRC
dW5kbGVOYXZpZ2F0aW9uQWN0aW9uOjpjcmVhdGUobV9mcmFtZSwgbmF2aWdhdGlvbkFjdGlvbiwg
Zm9ybVN0YXRlKTsKIApAQCAtNzgyLDcgKzc4MSw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0
CiAgICAgY2FzZSBOYXZpZ2F0aW9uVHlwZTo6Rm9ybVN1Ym1pdHRlZDoKICAgICBjYXNlIE5hdmln
YXRpb25UeXBlOjpGb3JtUmVzdWJtaXR0ZWQ6CiAgICAgICAgIGlmIChmb3JtU3RhdGUpCi0gICAg
ICAgICAgICBvcmlnaW5hdGluZ0ZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZvcm1T
dGF0ZS0+c291cmNlRG9jdW1lbnQoKS0+ZnJhbWUoKSk7CisgICAgICAgICAgICBvcmlnaW5hdGlu
Z0ZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZvcm1TdGF0ZS0+c291cmNlRG9jdW1l
bnQoKS5mcmFtZSgpKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBOYXZpZ2F0aW9uVHlwZTo6
QmFja0ZvcndhcmQ6CiAgICAgY2FzZSBOYXZpZ2F0aW9uVHlwZTo6UmVsb2FkOgpAQCAtODQzLDQw
ICs4NDIsMzYgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hVbmFibGVUb0lt
cGxlbWVudFBvbGljeShjb25zdCBSZXNvdXJjZUVycm9yJgogICAgIHdlYlBhZ2UtPnNlbmQoTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6VW5hYmxlVG9JbXBsZW1lbnRQb2xpY3kobV9mcmFtZS0+ZnJh
bWVJRCgpLCBlcnJvciwgVXNlckRhdGEoV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkudHJhbnNmb3Jt
T2JqZWN0c1RvSGFuZGxlcyh1c2VyRGF0YS5nZXQoKSkuZ2V0KCkpKSk7CiB9CiAKLXZvaWQgV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChQYXNzUmVmUHRy
PEZvcm1TdGF0ZT4gcHJwRm9ybVN0YXRlKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJlZjxGb3JtU3RhdGU+JiYgZm9ybVN0YXRlKQogewot
ICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7CisgICAgYXV0byogd2ViUGFn
ZSA9IG1fZnJhbWUtPnBhZ2UoKTsKICAgICBpZiAoIXdlYlBhZ2UpCiAgICAgICAgIHJldHVybjsK
IAotICAgIFJlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSA9IHBycEZvcm1TdGF0ZTsKLSAgICBI
VE1MRm9ybUVsZW1lbnQqIGZvcm0gPSBmb3JtU3RhdGUtPmZvcm0oKTsKKyAgICBhdXRvJiBmb3Jt
ID0gZm9ybVN0YXRlLT5mb3JtKCk7CiAKLSAgICBXZWJGcmFtZSogc291cmNlRnJhbWUgPSBXZWJG
cmFtZTo6ZnJvbUNvcmVGcmFtZSgqZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLT5mcmFtZSgp
KTsKKyAgICBBU1NFUlQoZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLmZyYW1lKCkpOworICAg
IGF1dG8qIHNvdXJjZUZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZvcm1TdGF0ZS0+
c291cmNlRG9jdW1lbnQoKS5mcmFtZSgpKTsKICAgICBBU1NFUlQoc291cmNlRnJhbWUpOwogCi0g
ICAgd2ViUGFnZS0+aW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCkud2lsbFNlbmRTdWJtaXRFdmVu
dCh3ZWJQYWdlLCBmb3JtLCBtX2ZyYW1lLCBzb3VyY2VGcmFtZSwgZm9ybVN0YXRlLT50ZXh0Rmll
bGRWYWx1ZXMoKSk7CisgICAgd2ViUGFnZS0+aW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCkud2ls
bFNlbmRTdWJtaXRFdmVudCh3ZWJQYWdlLCAmZm9ybSwgbV9mcmFtZSwgc291cmNlRnJhbWUsIGZv
cm1TdGF0ZS0+dGV4dEZpZWxkVmFsdWVzKCkpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xp
ZW50OjpkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiBwcnBGb3Jt
U3RhdGUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24pCit2b2lkIFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKEZvcm1TdGF0ZSYgZm9ybVN0YXRlLCBGcmFt
ZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQogewogICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBtX2Zy
YW1lLT5wYWdlKCk7CiAgICAgaWYgKCF3ZWJQYWdlKQogICAgICAgICByZXR1cm47CiAKLSAgICAv
LyBGSVhNRTogUGFzcyBtb3JlIG9mIHRoZSBmb3JtIHN0YXRlLgotICAgIFJlZlB0cjxGb3JtU3Rh
dGU+IGZvcm1TdGF0ZSA9IHBycEZvcm1TdGF0ZTsKLSAgICAKLSAgICBIVE1MRm9ybUVsZW1lbnQq
IGZvcm0gPSBmb3JtU3RhdGUtPmZvcm0oKTsKKyAgICBhdXRvJiBmb3JtID0gZm9ybVN0YXRlLmZv
cm0oKTsKIAotICAgIFdlYkZyYW1lKiBzb3VyY2VGcmFtZSA9IFdlYkZyYW1lOjpmcm9tQ29yZUZy
YW1lKCpmb3JtU3RhdGUtPnNvdXJjZURvY3VtZW50KCktPmZyYW1lKCkpOworICAgIGF1dG8qIHNv
dXJjZUZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZvcm1TdGF0ZS5zb3VyY2VEb2N1
bWVudCgpLmZyYW1lKCkpOwogICAgIEFTU0VSVChzb3VyY2VGcmFtZSk7CiAKLSAgICBjb25zdCBW
ZWN0b3I8c3RkOjpwYWlyPFN0cmluZywgU3RyaW5nPj4mIHZhbHVlcyA9IGZvcm1TdGF0ZS0+dGV4
dEZpZWxkVmFsdWVzKCk7CisgICAgYXV0byYgdmFsdWVzID0gZm9ybVN0YXRlLnRleHRGaWVsZFZh
bHVlcygpOwogCiAgICAgUmVmUHRyPEFQSTo6T2JqZWN0PiB1c2VyRGF0YTsKLSAgICB3ZWJQYWdl
LT5pbmplY3RlZEJ1bmRsZUZvcm1DbGllbnQoKS53aWxsU3VibWl0Rm9ybSh3ZWJQYWdlLCBmb3Jt
LCBtX2ZyYW1lLCBzb3VyY2VGcmFtZSwgdmFsdWVzLCB1c2VyRGF0YSk7Ci0KKyAgICB3ZWJQYWdl
LT5pbmplY3RlZEJ1bmRsZUZvcm1DbGllbnQoKS53aWxsU3VibWl0Rm9ybSh3ZWJQYWdlLCAmZm9y
bSwgbV9mcmFtZSwgc291cmNlRnJhbWUsIHZhbHVlcywgdXNlckRhdGEpOwogCiAgICAgdWludDY0
X3QgbGlzdGVuZXJJRCA9IG1fZnJhbWUtPnNldFVwUG9saWN5TGlzdGVuZXIoV1RGTW92ZShmdW5j
dGlvbikpOwogCkBAIC0xNDAwLDE0ICsxMzk1LDEzIEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZChEb2N1bWVudExvYWRlciAqZG9j
CiAgICAgbV9mcmFtZS0+Y29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKGRvY3VtZW50
TG9hZGVyLCBzZXNzaW9uSUQsIHJlcXVlc3QsIHJlc3BvbnNlKTsKIH0KIAotUmVmUHRyPEZyYW1l
PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlRnJhbWUoY29uc3QgVVJMJiB1cmwsIGNvbnN0
IFN0cmluZyYgbmFtZSwgSFRNTEZyYW1lT3duZXJFbGVtZW50KiBvd25lckVsZW1lbnQsCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgU3Ry
aW5nJiByZWZlcnJlciwgYm9vbCAvKmFsbG93c1Njcm9sbGluZyovLCBpbnQgLyptYXJnaW5XaWR0
aCovLCBpbnQgLyptYXJnaW5IZWlnaHQqLykKK1JlZlB0cjxGcmFtZT4gV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIG5hbWUsIEhU
TUxGcmFtZU93bmVyRWxlbWVudCYgb3duZXJFbGVtZW50LAorICAgIGNvbnN0IFN0cmluZyYgcmVm
ZXJyZXIsIGJvb2wgLyphbGxvd3NTY3JvbGxpbmcqLywgaW50IC8qbWFyZ2luV2lkdGgqLywgaW50
IC8qbWFyZ2luSGVpZ2h0Ki8pCiB7Ci0gICAgV2ViUGFnZSogd2ViUGFnZSA9IG1fZnJhbWUtPnBh
Z2UoKTsKKyAgICBhdXRvKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpOwogCi0gICAgUmVmUHRy
PFdlYkZyYW1lPiBzdWJmcmFtZSA9IFdlYkZyYW1lOjpjcmVhdGVTdWJmcmFtZSh3ZWJQYWdlLCBu
YW1lLCBvd25lckVsZW1lbnQpOwotCi0gICAgRnJhbWUqIGNvcmVTdWJmcmFtZSA9IHN1YmZyYW1l
LT5jb3JlRnJhbWUoKTsKKyAgICBhdXRvIHN1YmZyYW1lID0gV2ViRnJhbWU6OmNyZWF0ZVN1YmZy
YW1lKHdlYlBhZ2UsIG5hbWUsICZvd25lckVsZW1lbnQpOworICAgIGF1dG8qIGNvcmVTdWJmcmFt
ZSA9IHN1YmZyYW1lLT5jb3JlRnJhbWUoKTsKICAgICBpZiAoIWNvcmVTdWJmcmFtZSkKICAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CiAKQEAgLTE0MjcsNyArMTQyMSw3IEBAIFJlZlB0cjxGcmFtZT4g
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBT
dHJpbmcmIG5hCiAgICAgcmV0dXJuIGNvcmVTdWJmcmFtZTsKIH0KIAotUmVmUHRyPFdpZGdldD4g
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiwgSFRNTFBs
dWdJbkVsZW1lbnQqIHBsdWdpbkVsZW1lbnQsIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBWZWN0b3I8
U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzLCBj
b25zdCBTdHJpbmcmIG1pbWVUeXBlLCBib29sIGxvYWRNYW51YWxseSkKK1JlZlB0cjxXaWRnZXQ+
IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYsIEhUTUxQ
bHVnSW5FbGVtZW50JiBwbHVnaW5FbGVtZW50LCBjb25zdCBVUkwmIHVybCwgY29uc3QgVmVjdG9y
PFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcywg
Y29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgYm9vbCBsb2FkTWFudWFsbHkpCiB7CiAgICAgQVNTRVJU
KHBhcmFtTmFtZXMuc2l6ZSgpID09IHBhcmFtVmFsdWVzLnNpemUoKSk7CiAgICAgQVNTRVJUKG1f
ZnJhbWUtPnBhZ2UoKSk7CkBAIC0xNDQ0LDExICsxNDM4LDExIEBAIFJlZlB0cjxXaWRnZXQ+IFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYsIEhUTUxQbHVn
SW5FbGVtCiAjZW5kaWYKIAogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQotICAgIGF1
dG8gcGx1Z2luID0gbV9mcmFtZS0+cGFnZSgpLT5jcmVhdGVQbHVnaW4obV9mcmFtZSwgcGx1Z2lu
RWxlbWVudCwgcGFyYW1ldGVycywgcGFyYW1ldGVycy5taW1lVHlwZSk7CisgICAgYXV0byBwbHVn
aW4gPSBtX2ZyYW1lLT5wYWdlKCktPmNyZWF0ZVBsdWdpbihtX2ZyYW1lLCAmcGx1Z2luRWxlbWVu
dCwgcGFyYW1ldGVycywgcGFyYW1ldGVycy5taW1lVHlwZSk7CiAgICAgaWYgKCFwbHVnaW4pCiAg
ICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgcmV0dXJuIFBsdWdpblZpZXc6OmNyZWF0ZShw
bHVnaW5FbGVtZW50LCBXVEZNb3ZlKHBsdWdpbiksIHBhcmFtZXRlcnMpOworICAgIHJldHVybiBQ
bHVnaW5WaWV3OjpjcmVhdGUocGx1Z2luRWxlbWVudCwgcGx1Z2luLnJlbGVhc2VOb25OdWxsKCks
IHBhcmFtZXRlcnMpOwogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0ocGx1Z2luRWxlbWVudCk7CiAg
ICAgcmV0dXJuIG51bGxwdHI7CkBAIC0xNDU4LDEzICsxNDUyLDE0IEBAIFJlZlB0cjxXaWRnZXQ+
IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYsIEhUTUxQ
bHVnSW5FbGVtCiB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpyZWNyZWF0ZVBsdWdpbihXaWRn
ZXQqIHdpZGdldCkKIHsKICNpZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKLSAgICBBU1NF
UlQod2lkZ2V0ICYmIHdpZGdldC0+aXNQbHVnaW5WaWV3QmFzZSgpKTsKKyAgICBBU1NFUlQod2lk
Z2V0KTsKKyAgICBBU1NFUlQod2lkZ2V0LT5pc1BsdWdpblZpZXdCYXNlKCkpOwogICAgIEFTU0VS
VChtX2ZyYW1lLT5wYWdlKCkpOwogCi0gICAgUGx1Z2luVmlldyogcGx1Z2luVmlldyA9IHN0YXRp
Y19jYXN0PFBsdWdpblZpZXcqPih3aWRnZXQpOworICAgIGF1dG8mIHBsdWdpblZpZXcgPSBzdGF0
aWNfY2FzdDxQbHVnaW5WaWV3Jj4oKndpZGdldCk7CiAgICAgU3RyaW5nIG5ld01JTUVUeXBlOwot
ICAgIGF1dG8gcGx1Z2luID0gbV9mcmFtZS0+cGFnZSgpLT5jcmVhdGVQbHVnaW4obV9mcmFtZSwg
cGx1Z2luVmlldy0+cGx1Z2luRWxlbWVudCgpLCBwbHVnaW5WaWV3LT5pbml0aWFsUGFyYW1ldGVy
cygpLCBuZXdNSU1FVHlwZSk7Ci0gICAgcGx1Z2luVmlldy0+cmVjcmVhdGVBbmRJbml0aWFsaXpl
KFdURk1vdmUocGx1Z2luKSk7CisgICAgYXV0byBwbHVnaW4gPSBtX2ZyYW1lLT5wYWdlKCktPmNy
ZWF0ZVBsdWdpbihtX2ZyYW1lLCBwbHVnaW5WaWV3LnBsdWdpbkVsZW1lbnQoKSwgcGx1Z2luVmll
dy5pbml0aWFsUGFyYW1ldGVycygpLCBuZXdNSU1FVHlwZSk7CisgICAgcGx1Z2luVmlldy5yZWNy
ZWF0ZUFuZEluaXRpYWxpemUocGx1Z2luLnJlbGVhc2VOb25OdWxsKCkpOwogI2Vsc2UKICAgICBV
TlVTRURfUEFSQU0od2lkZ2V0KTsKICNlbmRpZgpAQCAtMTQ3Nyw5ICsxNDcyLDEwIEBAIHZvaWQg
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OnJlZGlyZWN0RGF0YVRvUGx1Z2luKFdpZGdldCogcGx1Z2lu
V2lkZ2V0KQogfQogCiAjaWYgRU5BQkxFKFdFQkdMKQorCiBXZWJDb3JlOjpXZWJHTExvYWRQb2xp
Y3kgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OndlYkdMUG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYg
dXJsKSBjb25zdAogewotICAgIGlmIChXZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgp
KQorICAgIGlmIChhdXRvKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpKQogICAgICAgICByZXR1
cm4gd2ViUGFnZS0+d2ViR0xQb2xpY3lGb3JVUkwobV9mcmFtZSwgdXJsKTsKIAogICAgIHJldHVy
biBXZWJHTEFsbG93Q3JlYXRpb247CkBAIC0xNDg3LDMxICsxNDgzLDMyIEBAIFdlYkNvcmU6Oldl
YkdMTG9hZFBvbGljeSBXZWJGcmFtZUxvYWRlckNsaWVudDo6d2ViR0xQb2xpY3lGb3JVUkwoY29u
c3QgU3RyaW5nJiB1CiAKIFdlYkNvcmU6OldlYkdMTG9hZFBvbGljeSBXZWJGcmFtZUxvYWRlckNs
aWVudDo6cmVzb2x2ZVdlYkdMUG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYgdXJsKSBjb25zdAog
ewotICAgIGlmIChXZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpKQorICAgIGlmIChh
dXRvKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpKQogICAgICAgICByZXR1cm4gd2ViUGFnZS0+
cmVzb2x2ZVdlYkdMUG9saWN5Rm9yVVJMKG1fZnJhbWUsIHVybCk7CiAKICAgICByZXR1cm4gV2Vi
R0xBbGxvd0NyZWF0aW9uOwogfQotI2VuZGlmIC8vIEVOQUJMRShXRUJHTCkKIAotUGFzc1JlZlB0
cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNv
bnN0IEludFNpemUmIHBsdWdpblNpemUsIEhUTUxBcHBsZXRFbGVtZW50KiBhcHBsZXRFbGVtZW50
LCBjb25zdCBVUkwmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVj
dG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKQorI2VuZGlmCisKK1JlZlB0cjxXaWRnZXQ+IFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmIHBs
dWdpblNpemUsIEhUTUxBcHBsZXRFbGVtZW50JiBhcHBsZXRFbGVtZW50LCBjb25zdCBVUkwmLCBj
b25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBh
cmFtVmFsdWVzKQogewogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQotICAgIGF1dG8g
cGx1Z2luID0gY3JlYXRlUGx1Z2luKHBsdWdpblNpemUsIGFwcGxldEVsZW1lbnQsIFVSTCgpLCBw
YXJhbU5hbWVzLCBwYXJhbVZhbHVlcywgYXBwbGV0RWxlbWVudC0+c2VydmljZVR5cGUoKSwgZmFs
c2UpOworICAgIGF1dG8gcGx1Z2luID0gY3JlYXRlUGx1Z2luKHBsdWdpblNpemUsIGFwcGxldEVs
ZW1lbnQsIFVSTCgpLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcywgYXBwbGV0RWxlbWVudC5zZXJ2
aWNlVHlwZSgpLCBmYWxzZSk7CiAgICAgaWYgKCFwbHVnaW4pIHsKLSAgICAgICAgaWYgKFdlYlBh
Z2UqIHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCkpIHsKLSAgICAgICAgICAgIFN0cmluZyBmcmFt
ZVVSTFN0cmluZyA9IG1fZnJhbWUtPmNvcmVGcmFtZSgpLT5sb2FkZXIoKS5kb2N1bWVudExvYWRl
cigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwotICAgICAgICAgICAgU3RyaW5nIHBhZ2VVUkxT
dHJpbmcgPSB3ZWJQYWdlLT5jb3JlUGFnZSgpLT5tYWluRnJhbWUoKS5sb2FkZXIoKS5kb2N1bWVu
dExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwotICAgICAgICAgICAgd2ViUGFnZS0+
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRGYWlsVG9Jbml0aWFsaXplUGx1Z2luKGFw
cGxldEVsZW1lbnQtPnNlcnZpY2VUeXBlKCksIGZyYW1lVVJMU3RyaW5nLCBwYWdlVVJMU3RyaW5n
KSk7CisgICAgICAgIGlmIChhdXRvKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpKSB7CisgICAg
ICAgICAgICBhdXRvIGZyYW1lVVJMU3RyaW5nID0gbV9mcmFtZS0+Y29yZUZyYW1lKCktPmxvYWRl
cigpLmRvY3VtZW50TG9hZGVyKCktPnJlc3BvbnNlVVJMKCkuc3RyaW5nKCk7CisgICAgICAgICAg
ICBhdXRvIHBhZ2VVUkxTdHJpbmcgPSB3ZWJQYWdlLT5jb3JlUGFnZSgpLT5tYWluRnJhbWUoKS5s
b2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOworICAgICAg
ICAgICAgd2ViUGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRGYWlsVG9Jbml0
aWFsaXplUGx1Z2luKGFwcGxldEVsZW1lbnQuc2VydmljZVR5cGUoKSwgZnJhbWVVUkxTdHJpbmcs
IHBhZ2VVUkxTdHJpbmcpKTsKICAgICAgICAgfQogICAgIH0KLSAgICByZXR1cm4gV1RGTW92ZShw
bHVnaW4pOworICAgIHJldHVybiBwbHVnaW47CiAjZWxzZQogICAgIFVOVVNFRF9QQVJBTShwbHVn
aW5TaXplKTsKICAgICBVTlVTRURfUEFSQU0oYXBwbGV0RWxlbWVudCk7CiAgICAgVU5VU0VEX1BB
UkFNKHBhcmFtTmFtZXMpOwogICAgIFVOVVNFRF9QQVJBTShwYXJhbVZhbHVlcyk7Ci0gICAgcmV0
dXJuIDA7CisgICAgcmV0dXJuIG51bGxwdHI7CiAjZW5kaWYKIH0KIApAQCAtMTcxNywxMyArMTcx
NCwxMyBAQCBib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRGb3JjZVVuaXZlcnNhbEFj
Y2Vzc0Zyb21Mb2NhbFVSTChjb25zdCBXZWJDb3JlOgogICAgIHJldHVybiB3ZWJQYWdlLT5pbmpl
Y3RlZEJ1bmRsZUxvYWRlckNsaWVudCgpLnNob3VsZEZvcmNlVW5pdmVyc2FsQWNjZXNzRnJvbUxv
Y2FsVVJMKHdlYlBhZ2UsIHVybC5zdHJpbmcoKSk7CiB9CiAKLVBhc3NSZWZQdHI8RnJhbWVOZXR3
b3JraW5nQ29udGV4dD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtpbmdDb250
ZXh0KCkKK1JlZjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6
Y3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKQogewotICAgIGF1dG8gY29udGV4dCA9IFdlYkZyYW1l
TmV0d29ya2luZ0NvbnRleHQ6OmNyZWF0ZShtX2ZyYW1lKTsKLSAgICByZXR1cm4gV1RGTW92ZShj
b250ZXh0KTsKKyAgICByZXR1cm4gV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dDo6Y3JlYXRlKG1f
ZnJhbWUpOwogfQogCiAjaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQorCiB2b2lkIFdlYkZy
YW1lTG9hZGVyQ2xpZW50Ojpjb250ZW50RmlsdGVyRGlkQmxvY2tMb2FkKFdlYkNvcmU6OkNvbnRl
bnRGaWx0ZXJVbmJsb2NrSGFuZGxlciB1bmJsb2NrSGFuZGxlcikKIHsKICAgICBpZiAoIXVuYmxv
Y2tIYW5kbGVyLm5lZWRzVUlQcm9jZXNzKCkpIHsKQEAgLTE3MzQsMTIgKzE3MzEsMTUgQEAgdm9p
ZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y29udGVudEZpbHRlckRpZEJsb2NrTG9hZChXZWJDb3Jl
OjpDb250ZW50RmlsdGVyVW5ibG8KICAgICBpZiAoV2ViUGFnZSogd2ViUGFnZSB7IG1fZnJhbWUt
PnBhZ2UoKSB9KQogICAgICAgICB3ZWJQYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OkNvbnRlbnRGaWx0ZXJEaWRCbG9ja0xvYWRGb3JGcmFtZSh1bmJsb2NrSGFuZGxlciwgbV9mcmFt
ZS0+ZnJhbWVJRCgpKSk7CiB9CisKICNlbmRpZgogCiAjaWYgRU5BQkxFKFJFUVVFU1RfQVVUT0NP
TVBMRVRFKQotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlkUmVxdWVzdEF1dG9jb21wbGV0
ZShQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4pCisKK3ZvaWQgV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmRpZFJlcXVlc3RBdXRvY29tcGxldGUoUmVmPFdlYkNvcmU6OkZvcm1TdGF0ZT4mJikK
IHsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnByZWZldGNoRE5T
KGNvbnN0IFN0cmluZyYgaG9zdG5hbWUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKaW5k
ZXggZGIyZjk0OTE0MDcyNDA3NzczYmQwODZmN2Y4YjlhY2QwN2VlYTc0Ni4uMGI4MjliNGEyOTA3
Yzg0ZTg5MTYwYzE4N2UzOGRlNGFmOTNhNTE5OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGll
bnQuaApAQCAtMzYsNyArMzYsNyBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIGNsYXNzIFBsdWdpblZp
ZXc7CiBjbGFzcyBXZWJGcmFtZTsKICAgICAKLWNsYXNzIFdlYkZyYW1lTG9hZGVyQ2xpZW50IDog
cHVibGljIFdlYkNvcmU6OkZyYW1lTG9hZGVyQ2xpZW50IHsKK2NsYXNzIFdlYkZyYW1lTG9hZGVy
Q2xpZW50IGZpbmFsIDogcHVibGljIFdlYkNvcmU6OkZyYW1lTG9hZGVyQ2xpZW50IHsKIHB1Ymxp
YzoKICAgICBXZWJGcmFtZUxvYWRlckNsaWVudCgpOwogICAgIH5XZWJGcmFtZUxvYWRlckNsaWVu
dCgpOwpAQCAtNDksMjE3ICs0OSwyMTYgQEAgcHVibGljOgogICAgIHZvaWQgc2V0VXNlSWNvbkxv
YWRpbmdDbGllbnQoYm9vbCB1c2VJY29uTG9hZGluZ0NsaWVudCkgeyBtX3VzZUljb25Mb2FkaW5n
Q2xpZW50ID0gdXNlSWNvbkxvYWRpbmdDbGllbnQ7IH0KIAogcHJpdmF0ZToKLSAgICB2b2lkIGZy
YW1lTG9hZGVyRGVzdHJveWVkKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBmcmFtZUxvYWRlckRlc3Ry
b3llZCgpIGZpbmFsOwogCi0gICAgYm9vbCBoYXNIVE1MVmlldygpIGNvbnN0IG92ZXJyaWRlOwot
ICAgIGJvb2wgaGFzV2ViVmlldygpIGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wgaGFzSFRNTFZp
ZXcoKSBjb25zdCBmaW5hbDsKKyAgICBib29sIGhhc1dlYlZpZXcoKSBjb25zdCBmaW5hbDsKICAg
ICAKLSAgICB2b2lkIG1ha2VSZXByZXNlbnRhdGlvbihXZWJDb3JlOjpEb2N1bWVudExvYWRlciop
IG92ZXJyaWRlOworICAgIHZvaWQgbWFrZVJlcHJlc2VudGF0aW9uKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKikgZmluYWw7CiAjaWYgUExBVEZPUk0oSU9TKQotICAgIGJvb2wgZm9yY2VMYXlvdXRP
blJlc3RvcmVGcm9tUGFnZUNhY2hlKCkgb3ZlcnJpZGU7CisgICAgYm9vbCBmb3JjZUxheW91dE9u
UmVzdG9yZUZyb21QYWdlQ2FjaGUoKSBmaW5hbDsKICNlbmRpZgotICAgIHZvaWQgZm9yY2VMYXlv
dXRGb3JOb25IVE1MKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBmb3JjZUxheW91dEZvck5vbkhUTUwo
KSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHNldENvcGllc09uU2Nyb2xsKCkgb3ZlcnJpZGU7Cisg
ICAgdm9pZCBzZXRDb3BpZXNPblNjcm9sbCgpIGZpbmFsOwogICAgIAotICAgIHZvaWQgZGV0YWNo
ZWRGcm9tUGFyZW50MigpIG92ZXJyaWRlOwotICAgIHZvaWQgZGV0YWNoZWRGcm9tUGFyZW50Mygp
IG92ZXJyaWRlOworICAgIHZvaWQgZGV0YWNoZWRGcm9tUGFyZW50MigpIGZpbmFsOworICAgIHZv
aWQgZGV0YWNoZWRGcm9tUGFyZW50MygpIGZpbmFsOwogICAgIAotICAgIHZvaWQgYXNzaWduSWRl
bnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJy
aWRlOworICAgIHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOwogICAgIAotICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2Vu
ZFJlcXVlc3QoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVz
cG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpIG92ZXJyaWRlOwotICAgIGJvb2wgc2hvdWxkVXNlQ3Jl
ZGVudGlhbFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGlj
YXRpb25DaGFsbGVuZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikgb3ZlcnJp
ZGU7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChXZWJDb3JlOjpEb2N1bWVudExv
YWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkgZmlu
YWw7CisgICAgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1bWVu
dExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgZmluYWw7CisgICAgdm9pZCBkaXNw
YXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShXZWJDb3JlOjpEb2N1bWVudExv
YWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6QXV0aGVudGlj
YXRpb25DaGFsbGVuZ2UmKSBmaW5hbDsKICNpZiBVU0UoUFJPVEVDVElPTl9TUEFDRV9BVVRIX0NB
TExCQUNLKQotICAgIGJvb2wgY2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3Qg
V2ViQ29yZTo6UHJvdGVjdGlvblNwYWNlJikgb3ZlcnJpZGU7CisgICAgYm9vbCBjYW5BdXRoZW50
aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpQcm90ZWN0aW9uU3BhY2UmKSBm
aW5hbDsKICNlbmRpZgogI2lmIFBMQVRGT1JNKElPUykKLSAgICBSZXRhaW5QdHI8Q0ZEaWN0aW9u
YXJ5UmVmPiBjb25uZWN0aW9uUHJvcGVydGllcyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllcikgb3ZlcnJpZGU7CisgICAgUmV0YWluUHRyPENGRGljdGlv
bmFyeVJlZj4gY29ubmVjdGlvblByb3BlcnRpZXMoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIGZpbmFsOwogI2VuZGlmCi0gICAgdm9pZCBkaXNwYXRj
aERpZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRl
OwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChXZWJDb3JlOjpEb2N1
bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgaW50IGRhdGFMZW5ndGgpIG92
ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBvdmVycmlkZTsKLSAgICB2b2lk
IGRpc3BhdGNoRGlkRmFpbExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlk
ZTsKLSAgICBib29sIGRpc3BhdGNoRGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlKFdlYkNv
cmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGludCBsZW5ndGgpIG92ZXJyaWRlOworICAg
IHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIq
LCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2UmKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGludCBkYXRh
TGVuZ3RoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgZmluYWw7CisgICAg
dm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmlu
YWw7CisgICAgYm9vbCBkaXNwYXRjaERpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShXZWJD
b3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBpbnQgbGVuZ3RoKSBmaW5hbDsKICNpZiBF
TkFCTEUoREFUQV9ERVRFQ1RJT04pCi0gICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaERhdGFEZXRl
Y3Rpb24oTlNBcnJheSAqZGV0ZWN0aW9uUmVzdWx0cykgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNw
YXRjaERpZEZpbmlzaERhdGFEZXRlY3Rpb24oTlNBcnJheSAqZGV0ZWN0aW9uUmVzdWx0cykgZmlu
YWw7CiAjZW5kaWYKICAgICAKLSAgICB2b2lkIGRpc3BhdGNoRGlkRGlzcGF0Y2hPbmxvYWRFdmVu
dHMoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVNlcnZlclJlZGlyZWN0
Rm9yUHJvdmlzaW9uYWxMb2FkKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZENoYW5n
ZVByb3Zpc2lvbmFsVVJMKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZENhbmNlbENs
aWVudFJlZGlyZWN0KCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxQZXJmb3JtQ2xp
ZW50UmVkaXJlY3QoY29uc3QgV2ViQ29yZTo6VVJMJiwgZG91YmxlIGludGVydmFsLCBkb3VibGUg
ZmlyZURhdGUpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRDaGFuZ2VMb2NhdGlvbldp
dGhpblBhZ2UoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUHVzaFN0YXRlV2l0aGlu
UGFnZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZXBsYWNlU3RhdGVXaXRoaW5Q
YWdlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFBvcFN0YXRlV2l0aGluUGFnZSgp
IG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hXaWxsQ2xvc2UoKSBvdmVycmlkZTsKLSAgICB2
b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUljb24oKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNo
RGlkU3RhcnRQcm92aXNpb25hbExvYWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlk
UmVjZWl2ZVRpdGxlKGNvbnN0IFdlYkNvcmU6OlN0cmluZ1dpdGhEaXJlY3Rpb24mKSBvdmVycmlk
ZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkQ29tbWl0TG9hZChzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6
Okhhc0luc2VjdXJlQ29udGVudD4pIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWls
UHJvdmlzaW9uYWxMb2FkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsK
LSAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbExvYWQoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJv
ciYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hEb2N1bWVudExvYWQoKSBv
dmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZCgpIG92ZXJyaWRlOwotCi0g
ICAgdm9pZCBkaXNwYXRjaERpZFJlYWNoTGF5b3V0TWlsZXN0b25lKFdlYkNvcmU6OkxheW91dE1p
bGVzdG9uZXMpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRMYXlvdXQoKSBvdmVycmlk
ZTsKLQotICAgIFdlYkNvcmU6OkZyYW1lKiBkaXNwYXRjaENyZWF0ZVBhZ2UoY29uc3QgV2ViQ29y
ZTo6TmF2aWdhdGlvbkFjdGlvbiYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hTaG93KCkg
b3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERpZERpc3BhdGNoT25sb2FkRXZlbnRzKCkgZmlu
YWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVTZXJ2ZXJSZWRpcmVjdEZvclByb3Zpc2lv
bmFsTG9hZCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRDaGFuZ2VQcm92aXNpb25hbFVS
TCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRDYW5jZWxDbGllbnRSZWRpcmVjdCgpIGZp
bmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsUGVyZm9ybUNsaWVudFJlZGlyZWN0KGNvbnN0IFdl
YkNvcmU6OlVSTCYsIGRvdWJsZSBpbnRlcnZhbCwgZG91YmxlIGZpcmVEYXRlKSBmaW5hbDsKKyAg
ICB2b2lkIGRpc3BhdGNoRGlkQ2hhbmdlTG9jYXRpb25XaXRoaW5QYWdlKCkgZmluYWw7CisgICAg
dm9pZCBkaXNwYXRjaERpZFB1c2hTdGF0ZVdpdGhpblBhZ2UoKSBmaW5hbDsKKyAgICB2b2lkIGRp
c3BhdGNoRGlkUmVwbGFjZVN0YXRlV2l0aGluUGFnZSgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0
Y2hEaWRQb3BTdGF0ZVdpdGhpblBhZ2UoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbENs
b3NlKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVJY29uKCkgZmluYWw7Cisg
ICAgdm9pZCBkaXNwYXRjaERpZFN0YXJ0UHJvdmlzaW9uYWxMb2FkKCkgZmluYWw7CisgICAgdm9p
ZCBkaXNwYXRjaERpZFJlY2VpdmVUaXRsZShjb25zdCBXZWJDb3JlOjpTdHJpbmdXaXRoRGlyZWN0
aW9uJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZENvbW1pdExvYWQoc3RkOjpvcHRpb25h
bDxXZWJDb3JlOjpIYXNJbnNlY3VyZUNvbnRlbnQ+KSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNo
RGlkRmFpbFByb3Zpc2lvbmFsTG9hZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmlu
YWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
RXJyb3ImKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoRG9jdW1lbnRMb2FkKCkg
ZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWQoKSBmaW5hbDsKKworICAgIHZv
aWQgZGlzcGF0Y2hEaWRSZWFjaExheW91dE1pbGVzdG9uZShXZWJDb3JlOjpMYXlvdXRNaWxlc3Rv
bmVzKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkTGF5b3V0KCkgZmluYWw7CisKKyAgICBX
ZWJDb3JlOjpGcmFtZSogZGlzcGF0Y2hDcmVhdGVQYWdlKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRp
b25BY3Rpb24mKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoU2hvdygpIGZpbmFsOwogICAgIAot
ICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JSZXNwb25zZShjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgV2ViQ29y
ZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERlY2lk
ZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9u
JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgUGFzc1JlZlB0cjxXZWJDb3JlOjpG
b3JtU3RhdGU+LCBjb25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgV2ViQ29yZTo6RnJhbWVQb2xpY3lG
dW5jdGlvbikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmln
YXRpb25BY3Rpb24oY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYsIFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0YXRlPiwgV2Vi
Q29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBjYW5jZWxQb2xp
Y3lDaGVjaygpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JSZXNw
b25zZShjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0JiwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7CisgICAg
dm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBXZWJDb3Jl
OjpOYXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgV2Vi
Q29yZTo6Rm9ybVN0YXRlKiwgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIFdlYkNvcmU6OkZyYW1l
UG9saWN5RnVuY3Rpb24pIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JO
YXZpZ2F0aW9uQWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpGb3JtU3RhdGUqLCBXZWJDb3JlOjpG
cmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsKKyAgICB2b2lkIGNhbmNlbFBvbGljeUNoZWNrKCkg
ZmluYWw7CiAgICAgCi0gICAgdm9pZCBkaXNwYXRjaFVuYWJsZVRvSW1wbGVtZW50UG9saWN5KGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNo
VW5hYmxlVG9JbXBsZW1lbnRQb2xpY3koY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIGZp
bmFsOwogICAgIAotICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFBhc3NSZWZQ
dHI8V2ViQ29yZTo6Rm9ybVN0YXRlPikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxT
dWJtaXRGb3JtKFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0YXRlPiwgV2ViQ29yZTo6RnJhbWVQ
b2xpY3lGdW5jdGlvbikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5kU3VibWl0
RXZlbnQoUmVmPFdlYkNvcmU6OkZvcm1TdGF0ZT4mJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRj
aFdpbGxTdWJtaXRGb3JtKFdlYkNvcmU6OkZvcm1TdGF0ZSYsIFdlYkNvcmU6OkZyYW1lUG9saWN5
RnVuY3Rpb24pIGZpbmFsOwogICAgIAotICAgIHZvaWQgcmV2ZXJ0VG9Qcm92aXNpb25hbFN0YXRl
KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRNYWluRG9j
dW1lbnRFcnJvcihXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlRXJyb3ImKSBvdmVycmlkZTsKKyAgICB2b2lkIHJldmVydFRvUHJvdmlzaW9uYWxTdGF0ZShX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciopIGZpbmFsOworICAgIHZvaWQgc2V0TWFpbkRvY3VtZW50
RXJyb3IoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVy
cm9yJikgZmluYWw7CiAgICAgCi0gICAgdm9pZCBzZXRNYWluRnJhbWVEb2N1bWVudFJlYWR5KGJv
b2wpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0TWFpbkZyYW1lRG9jdW1lbnRSZWFkeShib29sKSBm
aW5hbDsKICAgICAKLSAgICB2b2lkIHN0YXJ0RG93bmxvYWQoY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0JiwgY29uc3QgU3RyaW5nJiBzdWdnZXN0ZWROYW1lID0gU3RyaW5nKCkpIG92ZXJy
aWRlOworICAgIHZvaWQgc3RhcnREb3dubG9hZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QmLCBjb25zdCBTdHJpbmcmIHN1Z2dlc3RlZE5hbWUgPSBTdHJpbmcoKSkgZmluYWw7CiAgICAg
Ci0gICAgdm9pZCB3aWxsQ2hhbmdlVGl0bGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBvdmVy
cmlkZTsKLSAgICB2b2lkIGRpZENoYW5nZVRpdGxlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikg
b3ZlcnJpZGU7CisgICAgdm9pZCB3aWxsQ2hhbmdlVGl0bGUoV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXIqKSBmaW5hbDsKKyAgICB2b2lkIGRpZENoYW5nZVRpdGxlKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKikgZmluYWw7CiAKLSAgICB2b2lkIHdpbGxSZXBsYWNlTXVsdGlwYXJ0Q29udGVudCgpIG92
ZXJyaWRlOwotICAgIHZvaWQgZGlkUmVwbGFjZU11bHRpcGFydENvbnRlbnQoKSBvdmVycmlkZTsK
KyAgICB2b2lkIHdpbGxSZXBsYWNlTXVsdGlwYXJ0Q29udGVudCgpIGZpbmFsOworICAgIHZvaWQg
ZGlkUmVwbGFjZU11bHRpcGFydENvbnRlbnQoKSBmaW5hbDsKIAotICAgIHZvaWQgY29tbWl0dGVk
TG9hZChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IGNoYXIqLCBpbnQpIG92ZXJyaWRl
OwotICAgIHZvaWQgZmluaXNoZWRMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgb3Zl
cnJpZGU7CisgICAgdm9pZCBjb21taXR0ZWRMb2FkKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwg
Y29uc3QgY2hhciosIGludCkgZmluYWw7CisgICAgdm9pZCBmaW5pc2hlZExvYWRpbmcoV2ViQ29y
ZTo6RG9jdW1lbnRMb2FkZXIqKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHVwZGF0ZUdsb2JhbEhp
c3RvcnkoKSBvdmVycmlkZTsKLSAgICB2b2lkIHVwZGF0ZUdsb2JhbEhpc3RvcnlSZWRpcmVjdExp
bmtzKCkgb3ZlcnJpZGU7CisgICAgdm9pZCB1cGRhdGVHbG9iYWxIaXN0b3J5KCkgZmluYWw7Cisg
ICAgdm9pZCB1cGRhdGVHbG9iYWxIaXN0b3J5UmVkaXJlY3RMaW5rcygpIGZpbmFsOwogICAgIAot
ICAgIGJvb2wgc2hvdWxkR29Ub0hpc3RvcnlJdGVtKFdlYkNvcmU6Okhpc3RvcnlJdGVtKikgY29u
c3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRHb1RvSGlzdG9yeUl0ZW0oV2ViQ29yZTo6SGlz
dG9yeUl0ZW0qKSBjb25zdCBmaW5hbDsKIAotICAgIHZvaWQgZGlkRGlzcGxheUluc2VjdXJlQ29u
dGVudCgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkUnVuSW5zZWN1cmVDb250ZW50KFdlYkNvcmU6
OlNlY3VyaXR5T3JpZ2luKiwgY29uc3QgV2ViQ29yZTo6VVJMJikgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBkaWREZXRlY3RYU1MoY29uc3QgV2ViQ29yZTo6VVJMJiwgYm9vbCBkaWRCbG9ja0VudGlyZVBh
Z2UpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkRGlzcGxheUluc2VjdXJlQ29udGVudCgpIGZpbmFs
OworICAgIHZvaWQgZGlkUnVuSW5zZWN1cmVDb250ZW50KFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2lu
KiwgY29uc3QgV2ViQ29yZTo6VVJMJikgZmluYWw7CisgICAgdm9pZCBkaWREZXRlY3RYU1MoY29u
c3QgV2ViQ29yZTo6VVJMJiwgYm9vbCBkaWRCbG9ja0VudGlyZVBhZ2UpIGZpbmFsOwogCi0gICAg
V2ViQ29yZTo6UmVzb3VyY2VFcnJvciBjYW5jZWxsZWRFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGJsb2Nr
ZWRFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKLSAgICBX
ZWJDb3JlOjpSZXNvdXJjZUVycm9yIGJsb2NrZWRCeUNvbnRlbnRCbG9ja2VyRXJyb3IoY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3Vy
Y2VFcnJvciBjYW5ub3RTaG93VVJMRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBpbnRlcnJ1cHRlZEZvclBv
bGljeUNoYW5nZUVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRl
OworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgY2FuY2VsbGVkRXJyb3IoY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBi
bG9ja2VkRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CisgICAg
V2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkQnlDb250ZW50QmxvY2tlckVycm9yKGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOworICAgIFdlYkNvcmU6OlJlc291cmNl
RXJyb3IgY2Fubm90U2hvd1VSTEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYp
IGZpbmFsOworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgaW50ZXJydXB0ZWRGb3JQb2xpY3lD
aGFuZ2VFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKICNpZiBF
TkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCi0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9j
a2VkQnlDb250ZW50RmlsdGVyRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikg
b3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkQnlDb250ZW50Rmls
dGVyRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CiAjZW5kaWYK
ICAgICAKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dNSU1FVHlwZUVycm9y
KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKLSAgICBXZWJDb3Jl
OjpSZXNvdXJjZUVycm9yIGZpbGVEb2VzTm90RXhpc3RFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBwbHVn
aW5XaWxsSGFuZGxlTG9hZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBv
dmVycmlkZTsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dNSU1FVHlwZUVy
cm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICBXZWJDb3Jl
OjpSZXNvdXJjZUVycm9yIGZpbGVEb2VzTm90RXhpc3RFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlc3BvbnNlJikgZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBwbHVnaW5X
aWxsSGFuZGxlTG9hZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5h
bDsKICAgICAKLSAgICBib29sIHNob3VsZEZhbGxCYWNrKGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
RXJyb3ImKSBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZEZhbGxCYWNrKGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKICAgICAKLSAgICBib29sIGNhbkhhbmRsZVJlcXVlc3Qo
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgYm9v
bCBjYW5TaG93TUlNRVR5cGUoY29uc3QgU3RyaW5nJiBNSU1FVHlwZSkgY29uc3Qgb3ZlcnJpZGU7
Ci0gICAgYm9vbCBjYW5TaG93TUlNRVR5cGVBc0hUTUwoY29uc3QgU3RyaW5nJiBNSU1FVHlwZSkg
Y29uc3Qgb3ZlcnJpZGU7Ci0gICAgYm9vbCByZXByZXNlbnRhdGlvbkV4aXN0c0ZvclVSTFNjaGVt
ZShjb25zdCBTdHJpbmcmIFVSTFNjaGVtZSkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgU3RyaW5nIGdl
bmVyYXRlZE1JTUVUeXBlRm9yVVJMU2NoZW1lKGNvbnN0IFN0cmluZyYgVVJMU2NoZW1lKSBjb25z
dCBvdmVycmlkZTsKKyAgICBib29sIGNhbkhhbmRsZVJlcXVlc3QoY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0JikgY29uc3QgZmluYWw7CisgICAgYm9vbCBjYW5TaG93TUlNRVR5cGUoY29u
c3QgU3RyaW5nJiBNSU1FVHlwZSkgY29uc3QgZmluYWw7CisgICAgYm9vbCBjYW5TaG93TUlNRVR5
cGVBc0hUTUwoY29uc3QgU3RyaW5nJiBNSU1FVHlwZSkgY29uc3QgZmluYWw7CisgICAgYm9vbCBy
ZXByZXNlbnRhdGlvbkV4aXN0c0ZvclVSTFNjaGVtZShjb25zdCBTdHJpbmcmIFVSTFNjaGVtZSkg
Y29uc3QgZmluYWw7CisgICAgU3RyaW5nIGdlbmVyYXRlZE1JTUVUeXBlRm9yVVJMU2NoZW1lKGNv
bnN0IFN0cmluZyYgVVJMU2NoZW1lKSBjb25zdCBmaW5hbDsKICAgICAKLSAgICB2b2lkIGZyYW1l
TG9hZENvbXBsZXRlZCgpIG92ZXJyaWRlOwotICAgIHZvaWQgc2F2ZVZpZXdTdGF0ZVRvSXRlbShX
ZWJDb3JlOjpIaXN0b3J5SXRlbSYpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVzdG9yZVZpZXdTdGF0
ZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgcHJvdmlzaW9uYWxMb2FkU3RhcnRlZCgpIG92ZXJyaWRl
OwotICAgIHZvaWQgZGlkRmluaXNoTG9hZCgpIG92ZXJyaWRlOwotICAgIHZvaWQgcHJlcGFyZUZv
ckRhdGFTb3VyY2VSZXBsYWNlbWVudCgpIG92ZXJyaWRlOworICAgIHZvaWQgZnJhbWVMb2FkQ29t
cGxldGVkKCkgZmluYWw7CisgICAgdm9pZCBzYXZlVmlld1N0YXRlVG9JdGVtKFdlYkNvcmU6Okhp
c3RvcnlJdGVtJikgZmluYWw7CisgICAgdm9pZCByZXN0b3JlVmlld1N0YXRlKCkgZmluYWw7Cisg
ICAgdm9pZCBwcm92aXNpb25hbExvYWRTdGFydGVkKCkgZmluYWw7CisgICAgdm9pZCBkaWRGaW5p
c2hMb2FkKCkgZmluYWw7CisgICAgdm9pZCBwcmVwYXJlRm9yRGF0YVNvdXJjZVJlcGxhY2VtZW50
KCkgZmluYWw7CiAgICAgCi0gICAgUmVmPFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyPiBjcmVhdGVE
b2N1bWVudExvYWRlcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJD
b3JlOjpTdWJzdGl0dXRlRGF0YSYpIG92ZXJyaWRlOwotICAgIHZvaWQgdXBkYXRlQ2FjaGVkRG9j
dW1lbnRMb2FkZXIoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXImKSBvdmVycmlkZTsKKyAgICBSZWY8
V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI+IGNyZWF0ZURvY3VtZW50TG9hZGVyKGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlN1YnN0aXR1dGVEYXRhJikgZmlu
YWw7CisgICAgdm9pZCB1cGRhdGVDYWNoZWREb2N1bWVudExvYWRlcihXZWJDb3JlOjpEb2N1bWVu
dExvYWRlciYpIGZpbmFsOwogCi0gICAgdm9pZCBzZXRUaXRsZShjb25zdCBXZWJDb3JlOjpTdHJp
bmdXaXRoRGlyZWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6VVJMJikgb3ZlcnJpZGU7CisgICAgdm9p
ZCBzZXRUaXRsZShjb25zdCBXZWJDb3JlOjpTdHJpbmdXaXRoRGlyZWN0aW9uJiwgY29uc3QgV2Vi
Q29yZTo6VVJMJikgZmluYWw7CiAgICAgCi0gICAgU3RyaW5nIHVzZXJBZ2VudChjb25zdCBXZWJD
b3JlOjpVUkwmKSBvdmVycmlkZTsKKyAgICBTdHJpbmcgdXNlckFnZW50KGNvbnN0IFdlYkNvcmU6
OlVSTCYpIGZpbmFsOwogICAgIAotICAgIHZvaWQgc2F2ZVBsYXRmb3JtRGF0YVRvQ2FjaGVkRnJh
bWUoV2ViQ29yZTo6Q2FjaGVkRnJhbWUqKSBvdmVycmlkZTsKLSAgICB2b2lkIHRyYW5zaXRpb25U
b0NvbW1pdHRlZEZyb21DYWNoZWRGcmFtZShXZWJDb3JlOjpDYWNoZWRGcmFtZSopIG92ZXJyaWRl
OworICAgIHZvaWQgc2F2ZVBsYXRmb3JtRGF0YVRvQ2FjaGVkRnJhbWUoV2ViQ29yZTo6Q2FjaGVk
RnJhbWUqKSBmaW5hbDsKKyAgICB2b2lkIHRyYW5zaXRpb25Ub0NvbW1pdHRlZEZyb21DYWNoZWRG
cmFtZShXZWJDb3JlOjpDYWNoZWRGcmFtZSopIGZpbmFsOwogI2lmIFBMQVRGT1JNKElPUykKLSAg
ICB2b2lkIGRpZFJlc3RvcmVGcmFtZUhpZXJhcmNoeUZvckNhY2hlZEZyYW1lKCkgb3ZlcnJpZGU7
CisgICAgdm9pZCBkaWRSZXN0b3JlRnJhbWVIaWVyYXJjaHlGb3JDYWNoZWRGcmFtZSgpIGZpbmFs
OwogI2VuZGlmCi0gICAgdm9pZCB0cmFuc2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdlKCkgb3Zl
cnJpZGU7CisgICAgdm9pZCB0cmFuc2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdlKCkgZmluYWw7
CiAKLSAgICB2b2lkIGRpZFNhdmVUb1BhZ2VDYWNoZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlk
UmVzdG9yZUZyb21QYWdlQ2FjaGUoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZFNhdmVUb1BhZ2VD
YWNoZSgpIGZpbmFsOworICAgIHZvaWQgZGlkUmVzdG9yZUZyb21QYWdlQ2FjaGUoKSBmaW5hbDsK
IAotICAgIHZvaWQgZGlzcGF0Y2hEaWRCZWNvbWVGcmFtZXNldChib29sKSBvdmVycmlkZTsKKyAg
ICB2b2lkIGRpc3BhdGNoRGlkQmVjb21lRnJhbWVzZXQoYm9vbCkgZmluYWw7CiAKLSAgICBib29s
IGNhbkNhY2hlUGFnZSgpIGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQgY29udmVydE1haW5SZXNv
dXJjZUxvYWRUb0Rvd25sb2FkKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6U2Vz
c2lvbklELCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CisgICAgYm9vbCBjYW5DYWNoZVBhZ2UoKSBjb25z
dCBmaW5hbDsKKyAgICB2b2lkIGNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZChXZWJD
b3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlNlc3Npb25JRCwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFs
OwogCi0gICAgUmVmUHRyPFdlYkNvcmU6OkZyYW1lPiBjcmVhdGVGcmFtZShjb25zdCBXZWJDb3Jl
OjpVUkwmLCBjb25zdCBTdHJpbmcmIG5hbWUsIFdlYkNvcmU6OkhUTUxGcmFtZU93bmVyRWxlbWVu
dCosCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBTdHJp
bmcmIHJlZmVycmVyLCBib29sIGFsbG93c1Njcm9sbGluZywgaW50IG1hcmdpbldpZHRoLCBpbnQg
bWFyZ2luSGVpZ2h0KSBvdmVycmlkZTsKLSAgICAKLSAgICBSZWZQdHI8V2ViQ29yZTo6V2lkZ2V0
PiBjcmVhdGVQbHVnaW4oY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxQbHVn
SW5FbGVtZW50KiwgY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBj
b25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFN0cmluZyYsIGJvb2wgbG9hZE1hbnVhbGx5KSBv
dmVycmlkZTsKLSAgICB2b2lkIHJlY3JlYXRlUGx1Z2luKFdlYkNvcmU6OldpZGdldCopIG92ZXJy
aWRlOwotICAgIHZvaWQgcmVkaXJlY3REYXRhVG9QbHVnaW4oV2ViQ29yZTo6V2lkZ2V0KiBwbHVn
aW5XaWRnZXQpIG92ZXJyaWRlOworICAgIFJlZlB0cjxXZWJDb3JlOjpGcmFtZT4gY3JlYXRlRnJh
bWUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgU3RyaW5nJiBuYW1lLCBXZWJDb3JlOjpIVE1M
RnJhbWVPd25lckVsZW1lbnQmLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBib29sIGFsbG93c1Nj
cm9sbGluZywgaW50IG1hcmdpbldpZHRoLCBpbnQgbWFyZ2luSGVpZ2h0KSBmaW5hbDsKKworICAg
IFJlZlB0cjxXZWJDb3JlOjpXaWRnZXQ+IGNyZWF0ZVBsdWdpbihjb25zdCBXZWJDb3JlOjpJbnRT
aXplJiwgV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQmLCBjb25zdCBXZWJDb3JlOjpVUkwmLCBj
b25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgU3RyaW5n
JiwgYm9vbCBsb2FkTWFudWFsbHkpIGZpbmFsOworICAgIHZvaWQgcmVjcmVhdGVQbHVnaW4oV2Vi
Q29yZTo6V2lkZ2V0KikgZmluYWw7CisgICAgdm9pZCByZWRpcmVjdERhdGFUb1BsdWdpbihXZWJD
b3JlOjpXaWRnZXQqIHBsdWdpbldpZGdldCkgZmluYWw7CiAgICAgCiAjaWYgRU5BQkxFKFdFQkdM
KQotICAgIFdlYkNvcmU6OldlYkdMTG9hZFBvbGljeSB3ZWJHTFBvbGljeUZvclVSTChjb25zdCBT
dHJpbmcmKSBjb25zdCBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgcmVz
b2x2ZVdlYkdMUG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYpIGNvbnN0IG92ZXJyaWRlOworICAg
IFdlYkNvcmU6OldlYkdMTG9hZFBvbGljeSB3ZWJHTFBvbGljeUZvclVSTChjb25zdCBTdHJpbmcm
KSBjb25zdCBmaW5hbDsKKyAgICBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgcmVzb2x2ZVdlYkdM
UG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYpIGNvbnN0IGZpbmFsOwogI2VuZGlmIC8vIEVOQUJM
RShXRUJHTCkKIAotICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6V2lkZ2V0PiBjcmVhdGVKYXZhQXBw
bGV0V2lkZ2V0KGNvbnN0IFdlYkNvcmU6OkludFNpemUmLCBXZWJDb3JlOjpIVE1MQXBwbGV0RWxl
bWVudCosIGNvbnN0IFdlYkNvcmU6OlVSTCYgYmFzZVVSTCwgY29uc3QgVmVjdG9yPFN0cmluZz4m
IHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykgb3ZlcnJpZGU7
CisgICAgUmVmUHRyPFdlYkNvcmU6OldpZGdldD4gY3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25z
dCBXZWJDb3JlOjpJbnRTaXplJiwgV2ViQ29yZTo6SFRNTEFwcGxldEVsZW1lbnQmLCBjb25zdCBX
ZWJDb3JlOjpVUkwmIGJhc2VVUkwsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBj
b25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpIGZpbmFsOwogICAgIAotICAgIFdlYkNv
cmU6Ok9iamVjdENvbnRlbnRUeXBlIG9iamVjdENvbnRlbnRUeXBlKGNvbnN0IFdlYkNvcmU6OlVS
TCYsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUpIG92ZXJyaWRlOwotICAgIFN0cmluZyBvdmVycmlk
ZU1lZGlhVHlwZSgpIGNvbnN0IG92ZXJyaWRlOworICAgIFdlYkNvcmU6Ok9iamVjdENvbnRlbnRU
eXBlIG9iamVjdENvbnRlbnRUeXBlKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNvbnN0IFN0cmluZyYg
bWltZVR5cGUpIGZpbmFsOworICAgIFN0cmluZyBvdmVycmlkZU1lZGlhVHlwZSgpIGNvbnN0IGZp
bmFsOwogCi0gICAgdm9pZCBkaXNwYXRjaERpZENsZWFyV2luZG93T2JqZWN0SW5Xb3JsZChXZWJD
b3JlOjpET01XcmFwcGVyV29ybGQmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGlkQ2xl
YXJXaW5kb3dPYmplY3RJbldvcmxkKFdlYkNvcmU6OkRPTVdyYXBwZXJXb3JsZCYpIGZpbmFsOwog
ICAgIAotICAgIHZvaWQgZGlzcGF0Y2hHbG9iYWxPYmplY3RBdmFpbGFibGUoV2ViQ29yZTo6RE9N
V3JhcHBlcldvcmxkJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxEaXNjb25uZWN0
RE9NV2luZG93RXh0ZW5zaW9uRnJvbUdsb2JhbE9iamVjdChXZWJDb3JlOjpET01XaW5kb3dFeHRl
bnNpb24qKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjb25uZWN0RE9NV2luZG93
RXh0ZW5zaW9uVG9HbG9iYWxPYmplY3QoV2ViQ29yZTo6RE9NV2luZG93RXh0ZW5zaW9uKikgb3Zl
cnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxEZXN0cm95R2xvYmFsT2JqZWN0Rm9yRE9NV2lu
ZG93RXh0ZW5zaW9uKFdlYkNvcmU6OkRPTVdpbmRvd0V4dGVuc2lvbiopIG92ZXJyaWRlOworICAg
IHZvaWQgZGlzcGF0Y2hHbG9iYWxPYmplY3RBdmFpbGFibGUoV2ViQ29yZTo6RE9NV3JhcHBlcldv
cmxkJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxEaXNjb25uZWN0RE9NV2luZG93RXh0
ZW5zaW9uRnJvbUdsb2JhbE9iamVjdChXZWJDb3JlOjpET01XaW5kb3dFeHRlbnNpb24qKSBmaW5h
bDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjb25uZWN0RE9NV2luZG93RXh0ZW5zaW9uVG9HbG9i
YWxPYmplY3QoV2ViQ29yZTo6RE9NV2luZG93RXh0ZW5zaW9uKikgZmluYWw7CisgICAgdm9pZCBk
aXNwYXRjaFdpbGxEZXN0cm95R2xvYmFsT2JqZWN0Rm9yRE9NV2luZG93RXh0ZW5zaW9uKFdlYkNv
cmU6OkRPTVdpbmRvd0V4dGVuc2lvbiopIGZpbmFsOwogCi0gICAgdm9pZCByZWdpc3RlckZvcklj
b25Ob3RpZmljYXRpb24oYm9vbCBsaXN0ZW4gPSB0cnVlKSBvdmVycmlkZTsKKyAgICB2b2lkIHJl
Z2lzdGVyRm9ySWNvbk5vdGlmaWNhdGlvbihib29sIGxpc3RlbiA9IHRydWUpIGZpbmFsOwogICAg
IAogI2lmIFBMQVRGT1JNKENPQ09BKQotICAgIFJlbW90ZUFYT2JqZWN0UmVmIGFjY2Vzc2liaWxp
dHlSZW1vdGVPYmplY3QoKSBvdmVycmlkZTsKKyAgICBSZW1vdGVBWE9iamVjdFJlZiBhY2Nlc3Np
YmlsaXR5UmVtb3RlT2JqZWN0KCkgZmluYWw7CiAgICAgCi0gICAgTlNDYWNoZWRVUkxSZXNwb25z
ZSogd2lsbENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2UqKSBjb25zdCBvdmVycmlkZTsKKyAg
ICBOU0NhY2hlZFVSTFJlc3BvbnNlKiB3aWxsQ2FjaGVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVu
dExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25zZSop
IGNvbnN0IGZpbmFsOwogCi0gICAgTlNEaWN0aW9uYXJ5ICpkYXRhRGV0ZWN0aW9uQ29udGV4dCgp
IG92ZXJyaWRlOworICAgIE5TRGljdGlvbmFyeSAqZGF0YURldGVjdGlvbkNvbnRleHQoKSBmaW5h
bDsKICNlbmRpZgogCi0gICAgYm9vbCBzaG91bGRBbHdheXNVc2VQbHVnaW5Eb2N1bWVudChjb25z
dCBTdHJpbmcmIC8qbWltZVR5cGUqLykgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRB
bHdheXNVc2VQbHVnaW5Eb2N1bWVudChjb25zdCBTdHJpbmcmIC8qbWltZVR5cGUqLykgY29uc3Qg
ZmluYWw7CiAKLSAgICB2b2lkIGRpZENoYW5nZVNjcm9sbE9mZnNldCgpIG92ZXJyaWRlOworICAg
IHZvaWQgZGlkQ2hhbmdlU2Nyb2xsT2Zmc2V0KCkgZmluYWw7CiAKLSAgICBib29sIGFsbG93U2Ny
aXB0KGJvb2wgZW5hYmxlZFBlclNldHRpbmdzKSBvdmVycmlkZTsKKyAgICBib29sIGFsbG93U2Ny
aXB0KGJvb2wgZW5hYmxlZFBlclNldHRpbmdzKSBmaW5hbDsKIAotICAgIGJvb2wgc2hvdWxkRm9y
Y2VVbml2ZXJzYWxBY2Nlc3NGcm9tTG9jYWxVUkwoY29uc3QgV2ViQ29yZTo6VVJMJikgb3ZlcnJp
ZGU7CisgICAgYm9vbCBzaG91bGRGb3JjZVVuaXZlcnNhbEFjY2Vzc0Zyb21Mb2NhbFVSTChjb25z
dCBXZWJDb3JlOjpVUkwmKSBmaW5hbDsKIAotICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6RnJhbWVO
ZXR3b3JraW5nQ29udGV4dD4gY3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKSBvdmVycmlkZTsKKyAg
ICBSZWY8V2ViQ29yZTo6RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRlTmV0d29ya2luZ0Nv
bnRleHQoKSBmaW5hbDsKIAogI2lmIEVOQUJMRShSRVFVRVNUX0FVVE9DT01QTEVURSkKLSAgICB2
b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxldGUoUGFzc1JlZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+
KSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxldGUoUmVmPFdlYkNvcmU6
OkZvcm1TdGF0ZT4mJikgZmluYWw7CiAjZW5kaWYKIAotICAgIHZvaWQgZm9yY2VQYWdlVHJhbnNp
dGlvbklmTmVlZGVkKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBmb3JjZVBhZ2VUcmFuc2l0aW9uSWZO
ZWVkZWQoKSBmaW5hbDsKIAogI2lmIFVTRShRVUlDS19MT09LKQotICAgIHZvaWQgZGlkQ3JlYXRl
UXVpY2tMb29rSGFuZGxlKFdlYkNvcmU6OlF1aWNrTG9va0hhbmRsZSYpIG92ZXJyaWRlOworICAg
IHZvaWQgZGlkQ3JlYXRlUXVpY2tMb29rSGFuZGxlKFdlYkNvcmU6OlF1aWNrTG9va0hhbmRsZSYp
IGZpbmFsOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCi0gICAgdm9p
ZCBjb250ZW50RmlsdGVyRGlkQmxvY2tMb2FkKFdlYkNvcmU6OkNvbnRlbnRGaWx0ZXJVbmJsb2Nr
SGFuZGxlcikgb3ZlcnJpZGU7CisgICAgdm9pZCBjb250ZW50RmlsdGVyRGlkQmxvY2tMb2FkKFdl
YkNvcmU6OkNvbnRlbnRGaWx0ZXJVbmJsb2NrSGFuZGxlcikgZmluYWw7CiAjZW5kaWYKIAotICAg
IHZvaWQgcHJlZmV0Y2hETlMoY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7CisgICAgdm9pZCBwcmVm
ZXRjaEROUyhjb25zdCBTdHJpbmcmKSBmaW5hbDsKIAotICAgIHZvaWQgZGlkUmVzdG9yZVNjcm9s
bFBvc2l0aW9uKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRSZXN0b3JlU2Nyb2xsUG9zaXRpb24o
KSBmaW5hbDsKIAotICAgIGJvb2wgdXNlSWNvbkxvYWRpbmdDbGllbnQoKSBvdmVycmlkZTsKLSAg
ICB2b2lkIGdldExvYWREZWNpc2lvbkZvckljb24oY29uc3QgV2ViQ29yZTo6TGlua0ljb24mLCB1
aW50NjRfdCBjYWxsYmFja0lEKSBvdmVycmlkZTsKLSAgICB2b2lkIGZpbmlzaGVkTG9hZGluZ0lj
b24odWludDY0X3QgbG9hZElkZW50aWZpZXIsIFdlYkNvcmU6OlNoYXJlZEJ1ZmZlciopIG92ZXJy
aWRlOworICAgIGJvb2wgdXNlSWNvbkxvYWRpbmdDbGllbnQoKSBmaW5hbDsKKyAgICB2b2lkIGdl
dExvYWREZWNpc2lvbkZvckljb24oY29uc3QgV2ViQ29yZTo6TGlua0ljb24mLCB1aW50NjRfdCBj
YWxsYmFja0lEKSBmaW5hbDsKKyAgICB2b2lkIGZpbmlzaGVkTG9hZGluZ0ljb24odWludDY0X3Qg
bG9hZElkZW50aWZpZXIsIFdlYkNvcmU6OlNoYXJlZEJ1ZmZlciopIGZpbmFsOwogCiAgICAgV2Vi
RnJhbWUqIG1fZnJhbWU7CiAgICAgUmVmUHRyPFBsdWdpblZpZXc+IG1fcGx1Z2luVmlldzsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcCBi
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAppbmRleCBlOTRm
ODdhOWRkZjc5YWMzNDBkZmUwMTVkZDZiNWUzMmE0YWVkYjI4Li5jNTAyYzYyN2UyOTJiYmU1MzUy
MmE5YTc3NDMyMjA3YjE4MGUxNmExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJQYWdlL1dlYlBhZ2UuY3BwCkBAIC0zNDIsNyArMzQyLDcgQEAgV2ViUGFnZTo6V2ViUGFnZSh1
aW50NjRfdCBwYWdlSUQsIGNvbnN0IFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMmIHBhcmFtZXRl
cnMpCiAjZW5kaWYKIAogICAgIFBhZ2VDb25maWd1cmF0aW9uIHBhZ2VDb25maWd1cmF0aW9uKG1h
a2VVbmlxdWVSZWY8V2ViRWRpdG9yQ2xpZW50Pih0aGlzKSwgV2ViU29ja2V0UHJvdmlkZXI6OmNy
ZWF0ZSgpKTsKLSAgICBwYWdlQ29uZmlndXJhdGlvbi5jaHJvbWVDbGllbnQgPSBuZXcgV2ViQ2hy
b21lQ2xpZW50KHRoaXMpOworICAgIHBhZ2VDb25maWd1cmF0aW9uLmNocm9tZUNsaWVudCA9IG5l
dyBXZWJDaHJvbWVDbGllbnQoKnRoaXMpOwogI2lmIEVOQUJMRShDT05URVhUX01FTlVTKQogICAg
IHBhZ2VDb25maWd1cmF0aW9uLmNvbnRleHRNZW51Q2xpZW50ID0gbmV3IFdlYkNvbnRleHRNZW51
Q2xpZW50KHRoaXMpOwogI2VuZGlmCkBAIC02OTgsNyArNjk4LDggQEAgdm9pZCBXZWJQYWdlOjpp
bml0aWFsaXplSW5qZWN0ZWRCdW5kbGVEaWFnbm9zdGljTG9nZ2luZ0NsaWVudChXS0J1bmRsZVBh
Z2VEaWFnbm8KIH0KIAogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQotUGFzc1JlZlB0
cjxQbHVnaW4+IFdlYlBhZ2U6OmNyZWF0ZVBsdWdpbihXZWJGcmFtZSogZnJhbWUsIEhUTUxQbHVn
SW5FbGVtZW50KiBwbHVnaW5FbGVtZW50LCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmIHBhcmFt
ZXRlcnMsIFN0cmluZyYgbmV3TUlNRVR5cGUpCisKK1JlZlB0cjxQbHVnaW4+IFdlYlBhZ2U6OmNy
ZWF0ZVBsdWdpbihXZWJGcmFtZSogZnJhbWUsIEhUTUxQbHVnSW5FbGVtZW50KiBwbHVnaW5FbGVt
ZW50LCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmIHBhcmFtZXRlcnMsIFN0cmluZyYgbmV3TUlN
RVR5cGUpCiB7CiAgICAgU3RyaW5nIGZyYW1lVVJMU3RyaW5nID0gZnJhbWUtPmNvcmVGcmFtZSgp
LT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwogICAg
IFN0cmluZyBwYWdlVVJMU3RyaW5nID0gbV9wYWdlLT5tYWluRnJhbWUoKS5sb2FkZXIoKS5kb2N1
bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwpAQCAtMTMyNSw3ICsxMzI2LDcg
QEAgdm9pZCBXZWJQYWdlOjpsYXlvdXRJZk5lZWRlZCgpCiAKIFdlYlBhZ2UqIFdlYlBhZ2U6OmZy
b21Db3JlUGFnZShQYWdlKiBwYWdlKQogewotICAgIHJldHVybiBzdGF0aWNfY2FzdDxXZWJDaHJv
bWVDbGllbnQmPihwYWdlLT5jaHJvbWUoKS5jbGllbnQoKSkucGFnZSgpOworICAgIHJldHVybiAm
c3RhdGljX2Nhc3Q8V2ViQ2hyb21lQ2xpZW50Jj4ocGFnZS0+Y2hyb21lKCkuY2xpZW50KCkpLnBh
Z2UoKTsKIH0KIAogdm9pZCBXZWJQYWdlOjpzZXRTaXplKGNvbnN0IFdlYkNvcmU6OkludFNpemUm
IHZpZXdTaXplKQpAQCAtMTc5MSw3ICsxNzkyLDggQEAgdm9pZCBXZWJQYWdlOjpwb3N0SW5qZWN0
ZWRCdW5kbGVNZXNzYWdlKGNvbnN0IFN0cmluZyYgbWVzc2FnZU5hbWUsIGNvbnN0IFVzZXJEYXQK
IH0KIAogI2lmICFQTEFURk9STShJT1MpCi12b2lkIFdlYlBhZ2U6OnNldEhlYWRlclBhZ2VCYW5u
ZXIoUGFzc1JlZlB0cjxQYWdlQmFubmVyPiBwYWdlQmFubmVyKQorCit2b2lkIFdlYlBhZ2U6OnNl
dEhlYWRlclBhZ2VCYW5uZXIoUGFnZUJhbm5lciogcGFnZUJhbm5lcikKIHsKICAgICBpZiAobV9o
ZWFkZXJCYW5uZXIpCiAgICAgICAgIG1faGVhZGVyQmFubmVyLT5kZXRhY2hGcm9tUGFnZSgpOwpA
QCAtMTgwNyw3ICsxODA5LDcgQEAgUGFnZUJhbm5lciogV2ViUGFnZTo6aGVhZGVyUGFnZUJhbm5l
cigpCiAgICAgcmV0dXJuIG1faGVhZGVyQmFubmVyLmdldCgpOwogfQogCi12b2lkIFdlYlBhZ2U6
OnNldEZvb3RlclBhZ2VCYW5uZXIoUGFzc1JlZlB0cjxQYWdlQmFubmVyPiBwYWdlQmFubmVyKQor
dm9pZCBXZWJQYWdlOjpzZXRGb290ZXJQYWdlQmFubmVyKFBhZ2VCYW5uZXIqIHBhZ2VCYW5uZXIp
CiB7CiAgICAgaWYgKG1fZm9vdGVyQmFubmVyKQogICAgICAgICBtX2Zvb3RlckJhbm5lci0+ZGV0
YWNoRnJvbVBhZ2UoKTsKQEAgLTM1NzUsNiArMzU3Nyw3IEBAIHZvaWQgV2ViUGFnZTo6c2V0QWN0
aXZlUG9wdXBNZW51KFdlYlBvcHVwTWVudSogbWVudSkKIH0KIAogI2lmIEVOQUJMRShJTlBVVF9U
WVBFX0NPTE9SKQorCiB2b2lkIFdlYlBhZ2U6OnNldEFjdGl2ZUNvbG9yQ2hvb3NlcihXZWJDb2xv
ckNob29zZXIqIGNvbG9yQ2hvb3NlcikKIHsKICAgICBtX2FjdGl2ZUNvbG9yQ2hvb3NlciA9IGNv
bG9yQ2hvb3NlcjsKQEAgLTM1ODksMTEgKzM1OTIsMTIgQEAgdm9pZCBXZWJQYWdlOjpkaWRDaG9v
c2VDb2xvcihjb25zdCBXZWJDb3JlOjpDb2xvciYgY29sb3IpCiB7CiAgICAgbV9hY3RpdmVDb2xv
ckNob29zZXItPmRpZENob29zZUNvbG9yKGNvbG9yKTsKIH0KKwogI2VuZGlmCiAKLXZvaWQgV2Vi
UGFnZTo6c2V0QWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIoUGFzc1JlZlB0cjxXZWJPcGVu
UGFuZWxSZXN1bHRMaXN0ZW5lcj4gb3BlblBhbmVsUmVzdWx0TGlzdGVuZXIpCit2b2lkIFdlYlBh
Z2U6OnNldEFjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyKFJlZjxXZWJPcGVuUGFuZWxSZXN1
bHRMaXN0ZW5lcj4mJiBvcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcikKIHsKLSAgICBtX2FjdGl2ZU9w
ZW5QYW5lbFJlc3VsdExpc3RlbmVyID0gb3BlblBhbmVsUmVzdWx0TGlzdGVuZXI7CisgICAgbV9h
Y3RpdmVPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lciA9IFdURk1vdmUob3BlblBhbmVsUmVzdWx0TGlz
dGVuZXIpOwogfQogCiBib29sIFdlYlBhZ2U6OmZpbmRTdHJpbmdGcm9tSW5qZWN0ZWRCdW5kbGUo
Y29uc3QgU3RyaW5nJiB0YXJnZXQsIEZpbmRPcHRpb25zIG9wdGlvbnMpCkBAIC01NDA4LDExICs1
NDEyLDExIEBAIGJvb2wgV2ViUGFnZTo6cGx1Z0luSXNQcmltYXJ5U2l6ZShXZWJDb3JlOjpIVE1M
UGx1Z0luSW1hZ2VFbGVtZW50JiBwbHVnSW5JbWFnZUVsCiAKICNlbmRpZiAvLyBFTkFCTEUoUFJJ
TUFSWV9TTkFQU0hPVFRFRF9QTFVHSU5fSEVVUklTVElDKQogCi1QYXNzUmVmUHRyPFJhbmdlPiBX
ZWJQYWdlOjpjdXJyZW50U2VsZWN0aW9uQXNSYW5nZSgpCitSZWZQdHI8UmFuZ2U+IFdlYlBhZ2U6
OmN1cnJlbnRTZWxlY3Rpb25Bc1JhbmdlKCkKIHsKLSAgICBGcmFtZSogZnJhbWUgPSBmcmFtZVdp
dGhTZWxlY3Rpb24obV9wYWdlLmdldCgpKTsKKyAgICBhdXRvKiBmcmFtZSA9IGZyYW1lV2l0aFNl
bGVjdGlvbihtX3BhZ2UuZ2V0KCkpOwogICAgIGlmICghZnJhbWUpCi0gICAgICAgIHJldHVybiAw
OworICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAogICAgIHJldHVybiBmcmFtZS0+c2VsZWN0aW9u
KCkudG9Ob3JtYWxpemVkUmFuZ2UoKTsKIH0KQEAgLTU1MTIsNyArNTUxNiw3IEBAIHZvaWQgV2Vi
UGFnZTo6Z2V0U2FtcGxpbmdQcm9maWxlck91dHB1dCh1aW50NjRfdCBjYWxsYmFja0lEKQogI2Vu
ZGlmCiB9CiAKLVBhc3NSZWZQdHI8V2ViQ29yZTo6UmFuZ2U+IFdlYlBhZ2U6OnJhbmdlRnJvbUVk
aXRpbmdSYW5nZShXZWJDb3JlOjpGcmFtZSYgZnJhbWUsIGNvbnN0IEVkaXRpbmdSYW5nZSYgcmFu
Z2UsIEVkaXRpbmdSYW5nZUlzUmVsYXRpdmVUbyBlZGl0aW5nUmFuZ2VJc1JlbGF0aXZlVG8pCitS
ZWZQdHI8V2ViQ29yZTo6UmFuZ2U+IFdlYlBhZ2U6OnJhbmdlRnJvbUVkaXRpbmdSYW5nZShXZWJD
b3JlOjpGcmFtZSYgZnJhbWUsIGNvbnN0IEVkaXRpbmdSYW5nZSYgcmFuZ2UsIEVkaXRpbmdSYW5n
ZUlzUmVsYXRpdmVUbyBlZGl0aW5nUmFuZ2VJc1JlbGF0aXZlVG8pCiB7CiAgICAgQVNTRVJUKHJh
bmdlLmxvY2F0aW9uICE9IG5vdEZvdW5kKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJQYWdlLmgKaW5kZXggODFjZTc1MWY4ZWJkMWQ4ZTBlMGI3ZGNhNWZmMDdiYjcz
ZDNkMjE2NS4uYjY1ZDkzYmM3YWVjZWM2ZDc4Mjk0YmYxZWNiYjY1OGE4ZjU5OGIyNiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCkBAIC03NCw3ICs3NCw2
IEBACiAjaW5jbHVkZSA8bWVtb3J5PgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAjaW5jbHVk
ZSA8d3RmL01vbm90b25pY1RpbWUuaD4KLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2lu
Y2x1ZGUgPHd0Zi9SZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvUnVuTG9vcC5oPgogI2luY2x1ZGUg
PHd0Zi9TZWNvbmRzLmg+CkBAIC0zMTQsNyArMzEzLDcgQEAgcHVibGljOgogI2VuZGlmCiAKICAg
ICBXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lciogYWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVu
ZXIoKSBjb25zdCB7IHJldHVybiBtX2FjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLmdldCgp
OyB9Ci0gICAgdm9pZCBzZXRBY3RpdmVPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcihQYXNzUmVmUHRy
PFdlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyPik7CisgICAgdm9pZCBzZXRBY3RpdmVPcGVuUGFu
ZWxSZXN1bHRMaXN0ZW5lcihSZWY8V2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXI+JiYpOwogCiAg
ICAgdm9pZCBkaWRSZWNlaXZlTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXIm
KSBvdmVycmlkZTsKICAgICB2b2lkIGRpZFJlY2VpdmVTeW5jTWVzc2FnZShJUEM6OkNvbm5lY3Rp
b24mLCBJUEM6OkRlY29kZXImLCBzdGQ6OnVuaXF1ZV9wdHI8SVBDOjpFbmNvZGVyPiYpIG92ZXJy
aWRlOwpAQCAtMzU1LDE2ICszNTQsMTYgQEAgcHVibGljOgogICAgIFdlYkNvcmU6Ok1haW5GcmFt
ZSogbWFpbkZyYW1lKCkgY29uc3Q7IC8vIE1heSByZXR1cm4gMC4KICAgICBXZWJDb3JlOjpGcmFt
ZVZpZXcqIG1haW5GcmFtZVZpZXcoKSBjb25zdDsgLy8gTWF5IHJldHVybiAwLgogCi0gICAgUGFz
c1JlZlB0cjxXZWJDb3JlOjpSYW5nZT4gY3VycmVudFNlbGVjdGlvbkFzUmFuZ2UoKTsKKyAgICBS
ZWZQdHI8V2ViQ29yZTo6UmFuZ2U+IGN1cnJlbnRTZWxlY3Rpb25Bc1JhbmdlKCk7CiAKICNpZiBF
TkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKLSAgICBQYXNzUmVmUHRyPFBsdWdpbj4gY3JlYXRl
UGx1Z2luKFdlYkZyYW1lKiwgV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQqLCBjb25zdCBQbHVn
aW46OlBhcmFtZXRlcnMmLCBTdHJpbmcmIG5ld01JTUVUeXBlKTsKKyAgICBSZWZQdHI8UGx1Z2lu
PiBjcmVhdGVQbHVnaW4oV2ViRnJhbWUqLCBXZWJDb3JlOjpIVE1MUGx1Z0luRWxlbWVudCosIGNv
bnN0IFBsdWdpbjo6UGFyYW1ldGVycyYsIFN0cmluZyYgbmV3TUlNRVR5cGUpOwogI2VuZGlmCiAK
ICNpZiBFTkFCTEUoV0VCR0wpCiAgICAgV2ViQ29yZTo6V2ViR0xMb2FkUG9saWN5IHdlYkdMUG9s
aWN5Rm9yVVJMKFdlYkZyYW1lKiwgY29uc3QgU3RyaW5nJik7CiAgICAgV2ViQ29yZTo6V2ViR0xM
b2FkUG9saWN5IHJlc29sdmVXZWJHTFBvbGljeUZvclVSTChXZWJGcmFtZSosIGNvbnN0IFN0cmlu
ZyYpOwotI2VuZGlmIC8vIEVOQUJMRShXRUJHTCkKKyNlbmRpZgogICAgIAogICAgIGVudW0gY2xh
c3MgSW5jbHVkZVBvc3RMYXlvdXREYXRhSGludCB7IE5vLCBZZXMgfTsKICAgICBFZGl0b3JTdGF0
ZSBlZGl0b3JTdGF0ZShJbmNsdWRlUG9zdExheW91dERhdGFIaW50ID0gSW5jbHVkZVBvc3RMYXlv
dXREYXRhSGludDo6WWVzKSBjb25zdDsKQEAgLTQ1NSwyMSArNDU0LDIxIEBAIHB1YmxpYzoKIAog
ICAgIGJvb2wgaGFzQ2FjaGVkV2luZG93RnJhbWUoKSBjb25zdCB7IHJldHVybiBtX2hhc0NhY2hl
ZFdpbmRvd0ZyYW1lOyB9CiAKLSNpZiAhUExBVEZPUk0oSU9TKQotICAgIHZvaWQgc2V0VG9wT3Zl
cmhhbmdJbWFnZShQYXNzUmVmUHRyPFdlYkltYWdlPik7Ci0gICAgdm9pZCBzZXRCb3R0b21PdmVy
aGFuZ0ltYWdlKFBhc3NSZWZQdHI8V2ViSW1hZ2U+KTsKLSNlbmRpZiAvLyAhUExBVEZPUk0oSU9T
KQotCiAgICAgdm9pZCB1cGRhdGVIZWFkZXJBbmRGb290ZXJMYXllcnNGb3JEZXZpY2VTY2FsZUNo
YW5nZShmbG9hdCBzY2FsZUZhY3Rvcik7Ci0jZW5kaWYgLy8gUExBVEZPUk0oQ09DT0EpCisjZW5k
aWYKKworI2lmIFBMQVRGT1JNKE1BQykKKyAgICB2b2lkIHNldFRvcE92ZXJoYW5nSW1hZ2UoV2Vi
SW1hZ2UqKTsKKyAgICB2b2lkIHNldEJvdHRvbU92ZXJoYW5nSW1hZ2UoV2ViSW1hZ2UqKTsKKyNl
bmRpZgogCiAgICAgYm9vbCB3aW5kb3dJc0ZvY3VzZWQoKSBjb25zdDsKICAgICBib29sIHdpbmRv
d0FuZFdlYlBhZ2VBcmVGb2N1c2VkKCkgY29uc3Q7CiAKICNpZiAhUExBVEZPUk0oSU9TKQotICAg
IHZvaWQgc2V0SGVhZGVyUGFnZUJhbm5lcihQYXNzUmVmUHRyPFBhZ2VCYW5uZXI+KTsKKyAgICB2
b2lkIHNldEhlYWRlclBhZ2VCYW5uZXIoUGFnZUJhbm5lciopOwogICAgIFBhZ2VCYW5uZXIqIGhl
YWRlclBhZ2VCYW5uZXIoKTsKLSAgICB2b2lkIHNldEZvb3RlclBhZ2VCYW5uZXIoUGFzc1JlZlB0
cjxQYWdlQmFubmVyPik7CisgICAgdm9pZCBzZXRGb290ZXJQYWdlQmFubmVyKFBhZ2VCYW5uZXIq
KTsKICAgICBQYWdlQmFubmVyKiBmb290ZXJQYWdlQmFubmVyKCk7CiAKICAgICB2b2lkIGhpZGVQ
YWdlQmFubmVycygpOwpAQCAtNDc3LDcgKzQ3Niw3IEBAIHB1YmxpYzoKICAgICAKICAgICB2b2lk
IHNldEhlYWRlckJhbm5lckhlaWdodEZvclRlc3RpbmcoaW50KTsKICAgICB2b2lkIHNldEZvb3Rl
ckJhbm5lckhlaWdodEZvclRlc3RpbmcoaW50KTsKLSNlbmRpZiAvLyAhUExBVEZPUk0oSU9TKQor
I2VuZGlmCiAKICAgICBXZWJDb3JlOjpJbnRQb2ludCBzY3JlZW5Ub1Jvb3RWaWV3KGNvbnN0IFdl
YkNvcmU6OkludFBvaW50Jik7CiAgICAgV2ViQ29yZTo6SW50UmVjdCByb290Vmlld1RvU2NyZWVu
KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKTsKQEAgLTYyMSw3ICs2MjAsNyBAQCBwdWJsaWM6CiAg
ICAgYm9vbCBoYXNMb2NhbERhdGFGb3JVUkwoY29uc3QgV2ViQ29yZTo6VVJMJik7CiAgICAgU3Ry
aW5nIGNhY2hlZFJlc3BvbnNlTUlNRVR5cGVGb3JVUkwoY29uc3QgV2ViQ29yZTo6VVJMJik7CiAg
ICAgU3RyaW5nIGNhY2hlZFN1Z2dlc3RlZEZpbGVuYW1lRm9yVVJMKGNvbnN0IFdlYkNvcmU6OlVS
TCYpOwotICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6U2hhcmVkQnVmZmVyPiBjYWNoZWRSZXNwb25z
ZURhdGFGb3JVUkwoY29uc3QgV2ViQ29yZTo6VVJMJik7CisgICAgUmVmUHRyPFdlYkNvcmU6OlNo
YXJlZEJ1ZmZlcj4gY2FjaGVkUmVzcG9uc2VEYXRhRm9yVVJMKGNvbnN0IFdlYkNvcmU6OlVSTCYp
OwogCiAgICAgc3RhdGljIGJvb2wgY2FuSGFuZGxlUmVxdWVzdChjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmKTsKIApAQCAtMTAxNiw5ICsxMDE1LDExIEBAIHByaXZhdGU6CiAgICAgYm9v
bCBzaG91bGRTd2l0Y2hUb0Jsb2NrTW9kZUZvckhhbmRsZShjb25zdCBXZWJDb3JlOjpJbnRQb2lu
dCYgaGFuZGxlUG9pbnQsIFNlbGVjdGlvbkhhbmRsZVBvc2l0aW9uKTsKICAgICBSZWZQdHI8V2Vi
Q29yZTo6UmFuZ2U+IHN3aXRjaFRvQmxvY2tTZWxlY3Rpb25BdFBvaW50KGNvbnN0IFdlYkNvcmU6
OkludFBvaW50JiwgU2VsZWN0aW9uSGFuZGxlUG9zaXRpb24pOwogI2VuZGlmCisKICNpZiAhUExB
VEZPUk0oQ09DT0EpCiAgICAgc3RhdGljIGNvbnN0IGNoYXIqIGludGVycHJldEtleUV2ZW50KGNv
bnN0IFdlYkNvcmU6OktleWJvYXJkRXZlbnQqKTsKICNlbmRpZgorCiAgICAgYm9vbCBwZXJmb3Jt
RGVmYXVsdEJlaGF2aW9yRm9yS2V5RXZlbnQoY29uc3QgV2ViS2V5Ym9hcmRFdmVudCYpOwogCiAj
aWYgUExBVEZPUk0oTUFDKQpAQCAtMTIwNiw3ICsxMjA3LDcgQEAgcHJpdmF0ZToKICAgICBzdGF0
aWMgUGx1Z2luVmlldyogZm9jdXNlZFBsdWdpblZpZXdGb3JGcmFtZShXZWJDb3JlOjpGcmFtZSYp
OwogICAgIHN0YXRpYyBQbHVnaW5WaWV3KiBwbHVnaW5WaWV3Rm9yRnJhbWUoV2ViQ29yZTo6RnJh
bWUqKTsKIAotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFdlYkNvcmU6OlJhbmdlPiByYW5nZUZyb21F
ZGl0aW5nUmFuZ2UoV2ViQ29yZTo6RnJhbWUmLCBjb25zdCBFZGl0aW5nUmFuZ2UmLCBFZGl0aW5n
UmFuZ2VJc1JlbGF0aXZlVG8gPSBFZGl0aW5nUmFuZ2VJc1JlbGF0aXZlVG86OkVkaXRhYmxlUm9v
dCk7CisgICAgc3RhdGljIFJlZlB0cjxXZWJDb3JlOjpSYW5nZT4gcmFuZ2VGcm9tRWRpdGluZ1Jh
bmdlKFdlYkNvcmU6OkZyYW1lJiwgY29uc3QgRWRpdGluZ1JhbmdlJiwgRWRpdGluZ1JhbmdlSXNS
ZWxhdGl2ZVRvID0gRWRpdGluZ1JhbmdlSXNSZWxhdGl2ZVRvOjpFZGl0YWJsZVJvb3QpOwogCiAg
ICAgdm9pZCByZXBvcnRVc2VkRmVhdHVyZXMoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9XZWJQYWdlTWFjLm1tIGIvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9XZWJQYWdlTWFjLm1tCmluZGV4IGY3ZWI4ZDcwYzZkNjI4
ZTZlYmQzNzlhNjI4OTZmNDEyYTVjYmJlNWEuLjE2Y2M3MzRiZWNjNWE2NmJkNzg5ODJkMTk5ODQy
NTRhMTI3YWJjZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFn
ZS9tYWMvV2ViUGFnZU1hYy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBh
Z2UvbWFjL1dlYlBhZ2VNYWMubW0KQEAgLTcyNCw3ICs3MjQsNyBAQCBTdHJpbmcgV2ViUGFnZTo6
Y2FjaGVkUmVzcG9uc2VNSU1FVHlwZUZvclVSTChjb25zdCBVUkwmIHVybCkKICAgICByZXR1cm4g
W1tjYWNoZWRSZXNwb25zZUZvclVSTCh0aGlzLCB1cmwpIHJlc3BvbnNlXSBNSU1FVHlwZV07CiB9
CiAKLVBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBXZWJQYWdlOjpjYWNoZWRSZXNwb25zZURhdGFG
b3JVUkwoY29uc3QgVVJMJiB1cmwpCitSZWZQdHI8U2hhcmVkQnVmZmVyPiBXZWJQYWdlOjpjYWNo
ZWRSZXNwb25zZURhdGFGb3JVUkwoY29uc3QgVVJMJiB1cmwpCiB7CiAgICAgcmV0dXJuIFNoYXJl
ZEJ1ZmZlcjo6d3JhcE5TRGF0YShbY2FjaGVkUmVzcG9uc2VGb3JVUkwodGhpcywgdXJsKSBkYXRh
XSk7CiB9CkBAIC03NzMsMzcgKzc3MywzMyBAQCB2b2lkIFdlYlBhZ2U6OmFjY2VwdHNGaXJzdE1v
dXNlKGludCBldmVudE51bWJlciwgY29uc3QgV2ViS2l0OjpXZWJNb3VzZUV2ZW50JiBldgogICAg
ICAgICByZXN1bHQgPSAhIWhpdFJlc3VsdC5zY3JvbGxiYXIoKTsKIH0KIAotdm9pZCBXZWJQYWdl
OjpzZXRUb3BPdmVyaGFuZ0ltYWdlKFBhc3NSZWZQdHI8V2ViSW1hZ2U+IGltYWdlKQordm9pZCBX
ZWJQYWdlOjpzZXRUb3BPdmVyaGFuZ0ltYWdlKFdlYkltYWdlKiBpbWFnZSkKIHsKLSAgICBGcmFt
ZVZpZXcqIGZyYW1lVmlldyA9IG1fbWFpbkZyYW1lLT5jb3JlRnJhbWUoKS0+dmlldygpOworICAg
IGF1dG8qIGZyYW1lVmlldyA9IG1fbWFpbkZyYW1lLT5jb3JlRnJhbWUoKS0+dmlldygpOwogICAg
IGlmICghZnJhbWVWaWV3KQogICAgICAgICByZXR1cm47CiAKLSAgICBHcmFwaGljc0xheWVyKiBs
YXllciA9IGZyYW1lVmlldy0+c2V0V2FudHNMYXllckZvclRvcE92ZXJIYW5nQXJlYShpbWFnZS5n
ZXQoKSk7CisgICAgYXV0byogbGF5ZXIgPSBmcmFtZVZpZXctPnNldFdhbnRzTGF5ZXJGb3JUb3BP
dmVySGFuZ0FyZWEoaW1hZ2UpOwogICAgIGlmICghbGF5ZXIpCiAgICAgICAgIHJldHVybjsKIAog
ICAgIGxheWVyLT5zZXRTaXplKGltYWdlLT5zaXplKCkpOwogICAgIGxheWVyLT5zZXRQb3NpdGlv
bihGbG9hdFBvaW50KDAsIC1pbWFnZS0+c2l6ZSgpLmhlaWdodCgpKSk7Ci0KLSAgICBSZXRhaW5Q
dHI8Q0dJbWFnZVJlZj4gY2dJbWFnZSA9IGltYWdlLT5iaXRtYXAoKS5tYWtlQ0dJbWFnZUNvcHko
KTsKLSAgICBsYXllci0+cGxhdGZvcm1MYXllcigpLmNvbnRlbnRzID0gKGlkKWNnSW1hZ2UuZ2V0
KCk7CisgICAgbGF5ZXItPnBsYXRmb3JtTGF5ZXIoKS5jb250ZW50cyA9IChpZClpbWFnZS0+Yml0
bWFwKCkubWFrZUNHSW1hZ2VDb3B5KCkuZ2V0KCk7CiB9CiAKLXZvaWQgV2ViUGFnZTo6c2V0Qm90
dG9tT3ZlcmhhbmdJbWFnZShQYXNzUmVmUHRyPFdlYkltYWdlPiBpbWFnZSkKK3ZvaWQgV2ViUGFn
ZTo6c2V0Qm90dG9tT3ZlcmhhbmdJbWFnZShXZWJJbWFnZSogaW1hZ2UpCiB7Ci0gICAgRnJhbWVW
aWV3KiBmcmFtZVZpZXcgPSBtX21haW5GcmFtZS0+Y29yZUZyYW1lKCktPnZpZXcoKTsKKyAgICBh
dXRvKiBmcmFtZVZpZXcgPSBtX21haW5GcmFtZS0+Y29yZUZyYW1lKCktPnZpZXcoKTsKICAgICBp
ZiAoIWZyYW1lVmlldykKICAgICAgICAgcmV0dXJuOwogCi0gICAgR3JhcGhpY3NMYXllciogbGF5
ZXIgPSBmcmFtZVZpZXctPnNldFdhbnRzTGF5ZXJGb3JCb3R0b21PdmVySGFuZ0FyZWEoaW1hZ2Uu
Z2V0KCkpOworICAgIGF1dG8qIGxheWVyID0gZnJhbWVWaWV3LT5zZXRXYW50c0xheWVyRm9yQm90
dG9tT3ZlckhhbmdBcmVhKGltYWdlKTsKICAgICBpZiAoIWxheWVyKQogICAgICAgICByZXR1cm47
CiAKICAgICBsYXllci0+c2V0U2l6ZShpbWFnZS0+c2l6ZSgpKTsKLSAgICAKLSAgICBSZXRhaW5Q
dHI8Q0dJbWFnZVJlZj4gY2dJbWFnZSA9IGltYWdlLT5iaXRtYXAoKS5tYWtlQ0dJbWFnZUNvcHko
KTsKLSAgICBsYXllci0+cGxhdGZvcm1MYXllcigpLmNvbnRlbnRzID0gKGlkKWNnSW1hZ2UuZ2V0
KCk7CisgICAgbGF5ZXItPnBsYXRmb3JtTGF5ZXIoKS5jb250ZW50cyA9IChpZClpbWFnZS0+Yml0
bWFwKCkubWFrZUNHSW1hZ2VDb3B5KCkuZ2V0KCk7CiB9CiAKIHZvaWQgV2ViUGFnZTo6dXBkYXRl
SGVhZGVyQW5kRm9vdGVyTGF5ZXJzRm9yRGV2aWNlU2NhbGVDaGFuZ2UoZmxvYXQgc2NhbGVGYWN0
b3IpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3Bw
IGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcAppbmRleCBjMTI4MDE4
MzAzNTYwMjJhYmYzMGY4Nzg3Mzc5NmMzNTNkZTNiYmY0Li4zZTVjYmFkYWIyNDQ0Mjg2MDUwMTM3
MDJlOTM0NTAyM2YxNjBiMjkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYlByb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vz
cy5jcHAKQEAgLTE1OCwyMiArMTU4LDEyIEBAIFdlYlByb2Nlc3M6OldlYlByb2Nlc3MoKQogI2lm
IFBMQVRGT1JNKElPUykKICAgICAsIG1fdmlld1VwZGF0ZURpc3BhdGNoZXIoVmlld1VwZGF0ZURp
c3BhdGNoZXI6OmNyZWF0ZSgpKQogI2VuZGlmCi0gICAgLCBtX2luRGlkQ2xvc2UoZmFsc2UpCi0g
ICAgLCBtX2hhc1NldENhY2hlTW9kZWwoZmFsc2UpCi0gICAgLCBtX2NhY2hlTW9kZWwoQ2FjaGVN
b2RlbERvY3VtZW50Vmlld2VyKQotICAgICwgbV9mdWxsS2V5Ym9hcmRBY2Nlc3NFbmFibGVkKGZh
bHNlKQotICAgICwgbV90ZXh0Q2hlY2tlclN0YXRlKCkKLSAgICAsIG1faWNvbkRhdGFiYXNlUHJv
eHkoKm5ldyBXZWJJY29uRGF0YWJhc2VQcm94eSh0aGlzKSkKKyAgICAsIG1faWNvbkRhdGFiYXNl
UHJveHkoKm5ldyBXZWJJY29uRGF0YWJhc2VQcm94eSgqdGhpcykpCiAgICAgLCBtX3dlYkxvYWRl
clN0cmF0ZWd5KCpuZXcgV2ViTG9hZGVyU3RyYXRlZ3kpCiAgICAgLCBtX2Ruc1ByZWZldGNoSHlz
dGVyZXJpcyhbdGhpc10oSHlzdGVyZXNpc1N0YXRlIHN0YXRlKSB7IGlmIChzdGF0ZSA9PSBIeXN0
ZXJlc2lzU3RhdGU6OlN0b3BwZWQpIG1fZG5zUHJlZmV0Y2hlZEhvc3RzLmNsZWFyKCk7IH0pCiAj
aWYgRU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCiAgICAgLCBtX3BsdWdpblByb2Nlc3NDb25u
ZWN0aW9uTWFuYWdlcihQbHVnaW5Qcm9jZXNzQ29ubmVjdGlvbk1hbmFnZXI6OmNyZWF0ZSgpKQog
I2VuZGlmCi0jaWYgRU5BQkxFKFNFUlZJQ0VfQ09OVFJPTFMpCi0gICAgLCBtX2hhc0ltYWdlU2Vy
dmljZXMoZmFsc2UpCi0gICAgLCBtX2hhc1NlbGVjdGlvblNlcnZpY2VzKGZhbHNlKQotICAgICwg
bV9oYXNSaWNoQ29udGVudFNlcnZpY2VzKGZhbHNlKQotI2VuZGlmCiAgICAgLCBtX25vblZpc2li
bGVQcm9jZXNzQ2xlYW51cFRpbWVyKCp0aGlzLCAmV2ViUHJvY2Vzczo6bm9uVmlzaWJsZVByb2Nl
c3NDbGVhbnVwVGltZXJGaXJlZCkKICAgICAsIG1fc3RhdGlzdGljc0NoYW5nZWRUaW1lcigqdGhp
cywgJldlYlByb2Nlc3M6OnN0YXRpc3RpY3NDaGFuZ2VkVGltZXJGaXJlZCkKICNpZiBQTEFURk9S
TShJT1MpCkBAIC0xOTQsOSArMTg0LDExIEBAIFdlYlByb2Nlc3M6OldlYlByb2Nlc3MoKQogI2lm
IEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCiAg
ICAgYWRkU3VwcGxlbWVudDxXZWJOb3RpZmljYXRpb25NYW5hZ2VyPigpOwogI2VuZGlmCisKICNp
ZiBFTkFCTEUoTEVHQUNZX0VOQ1JZUFRFRF9NRURJQSkKICAgICBhZGRTdXBwbGVtZW50PFdlYk1l
ZGlhS2V5U3RvcmFnZU1hbmFnZXI+KCk7CiAjZW5kaWYKKwogICAgIG1fcGx1Z0luQXV0b1N0YXJ0
T3JpZ2luSGFzaGVzLmFkZChTZXNzaW9uSUQ6OmRlZmF1bHRTZXNzaW9uSUQoKSwgSGFzaE1hcDx1
bnNpZ25lZCwgZG91YmxlPigpKTsKIAogI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpAQCAt
MjA3LDcgKzE5OSw2IEBAIFdlYlByb2Nlc3M6OldlYlByb2Nlc3MoKQogICAgIG1fcmVzb3VyY2VM
b2FkU3RhdGlzdGljc1N0b3JhZ2UtPnNldE5vdGlmaWNhdGlvbkNhbGxiYWNrKFt0aGlzXSB7CiAg
ICAgICAgIGlmIChtX3N0YXRpc3RpY3NDaGFuZ2VkVGltZXIuaXNBY3RpdmUoKSkKICAgICAgICAg
ICAgIHJldHVybjsKLSAgICAgICAgCiAgICAgICAgIG1fc3RhdGlzdGljc0NoYW5nZWRUaW1lci5z
dGFydE9uZVNob3Qoc3RkOjpjaHJvbm86OnNlY29uZHMoNSkpOwogICAgIH0pOwogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmggYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaAppbmRleCAyMjhmMDQ2MTFkYjE4MGJiZmRlN2Y0
ZDliNWYyMTNmZGI2M2NjOWUyLi4zNTQ0NjRhODFlNDBiMGRlNGVmY2FjYWQ1ZmI4NjRhYTkzNzAz
MTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaApAQCAtMjMsOCArMjMs
NyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYg
V2ViUHJvY2Vzc19oCi0jZGVmaW5lIFdlYlByb2Nlc3NfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNs
dWRlICJDYWNoZU1vZGVsLmgiCiAjaW5jbHVkZSAiQ2hpbGRQcm9jZXNzLmgiCkBAIC0zNDYsMjAg
KzM0NSwyMCBAQCBwcml2YXRlOgogICAgIFJlZlB0cjxWaWV3VXBkYXRlRGlzcGF0Y2hlcj4gbV92
aWV3VXBkYXRlRGlzcGF0Y2hlcjsKICNlbmRpZgogCi0gICAgYm9vbCBtX2luRGlkQ2xvc2U7Cisg
ICAgYm9vbCBtX2luRGlkQ2xvc2UgeyBmYWxzZSB9OwogCiAgICAgSGFzaE1hcDxXZWJDb3JlOjpT
ZXNzaW9uSUQsIEhhc2hNYXA8dW5zaWduZWQsIGRvdWJsZT4+IG1fcGx1Z0luQXV0b1N0YXJ0T3Jp
Z2luSGFzaGVzOwogICAgIEhhc2hTZXQ8U3RyaW5nPiBtX3BsdWdJbkF1dG9TdGFydE9yaWdpbnM7
CiAKLSAgICBib29sIG1faGFzU2V0Q2FjaGVNb2RlbDsKLSAgICBDYWNoZU1vZGVsIG1fY2FjaGVN
b2RlbDsKKyAgICBib29sIG1faGFzU2V0Q2FjaGVNb2RlbCB7IGZhbHNlIH07CisgICAgQ2FjaGVN
b2RlbCBtX2NhY2hlTW9kZWwgeyBDYWNoZU1vZGVsRG9jdW1lbnRWaWV3ZXIgfTsKIAogI2lmIFBM
QVRGT1JNKENPQ09BKQogICAgIFdlYkNvcmU6Ok1hY2hTZW5kUmlnaHQgbV9jb21wb3NpdGluZ1Jl
bmRlclNlcnZlclBvcnQ7CiAgICAgcGlkX3QgbV9wcmVzZW50ZXJBcHBsaWNhdGlvblBpZDsKICNl
bmRpZgogCi0gICAgYm9vbCBtX2Z1bGxLZXlib2FyZEFjY2Vzc0VuYWJsZWQ7CisgICAgYm9vbCBt
X2Z1bGxLZXlib2FyZEFjY2Vzc0VuYWJsZWQgeyBmYWxzZSB9OwogCiAgICAgSGFzaE1hcDx1aW50
NjRfdCwgV2ViRnJhbWUqPiBtX2ZyYW1lTWFwOwogCkBAIC0zODgsOSArMzg3LDkgQEAgcHJpdmF0
ZToKICNlbmRpZgogCiAjaWYgRU5BQkxFKFNFUlZJQ0VfQ09OVFJPTFMpCi0gICAgYm9vbCBtX2hh
c0ltYWdlU2VydmljZXM7Ci0gICAgYm9vbCBtX2hhc1NlbGVjdGlvblNlcnZpY2VzOwotICAgIGJv
b2wgbV9oYXNSaWNoQ29udGVudFNlcnZpY2VzOworICAgIGJvb2wgbV9oYXNJbWFnZVNlcnZpY2Vz
IHsgZmFsc2UgfTsKKyAgICBib29sIG1faGFzU2VsZWN0aW9uU2VydmljZXMgeyBmYWxzZSB9Owor
ICAgIGJvb2wgbV9oYXNSaWNoQ29udGVudFNlcnZpY2VzIHsgZmFsc2UgfTsKICNlbmRpZgogCiAg
ICAgSGFzaFNldDx1aW50NjRfdD4gbV9wYWdlc0luV2luZG93czsKQEAgLTQxNiw1ICs0MTUsMyBA
QCBwcml2YXRlOgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0Ci0KLSNlbmRpZiAvLyBXZWJQ
cm9jZXNzX2gK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>298888</attachid>
            <date>2017-01-14 22:32:29 -0800</date>
            <delta_ts>2017-01-15 11:08:13 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-167055-20170114223044.patch</filename>
            <type>text/plain</type>
            <size>633717</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEwNzcyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTQxOTRlNjQ2MmViZmMx
OWRlNTYxM2FhOTcxOGQ3YzNhYThkMjA1ZS4uN2JmNDhjMGZlZmJkOTBjNTBhMTdjMTdkNGUzODg4
M2M2ZDM4MjYxZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxNCBAQAorMjAxNy0wMS0xNCAgRGFy
aW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIFBhc3NSZWZQdHIg
ZnJvbSAibG9hZGVyIiBkaXJlY3Rvcnkgb2YgV2ViQ29yZQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY3MDU1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6RG9jdW1lbnQ6OnByb2Nlc3NIdHRwRXF1aXYpOiBQYXNzIGEgcmVmZXJlbmNlLgor
ICAgICAgICAqIGVkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6RWRpdENvbW1hbmRDb21wb3NpdGlvbjo6dW5hcHBseSk6IERpdHRvLgorICAgICAgICAo
V2ViQ29yZTo6RWRpdENvbW1hbmRDb21wb3NpdGlvbjo6cmVhcHBseSk6IERpdHRvLgorICAgICAg
ICAoV2ViQ29yZTo6Q29tcG9zaXRlRWRpdENvbW1hbmQ6OmVuc3VyZUNvbXBvc2l0aW9uKTogUmV0
dXJuIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6Q29tcG9zaXRlRWRpdENvbW1hbmQ6
OmFwcGx5Q29tbWFuZFRvQ29tcG9zaXRlKTogVXNlIGEgcmVmZXJlbmNlLgorICAgICAgICAqIGVk
aXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuaDogVXBkYXRlZCBmb3IgYWJvdmUgY2hhbmdlcy4K
KworICAgICAgICAqIGVkaXRpbmcvRWRpdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRv
cjo6dW5hcHBsaWVkRWRpdGluZyk6IFRha2UgYSByZWZlcmVuY2UgaW5zdGVhZCBvZiBhIFBhc3NS
ZWZQdHIuCisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OnJlYXBwbGllZEVkaXRpbmcpOiBEaXR0
by4KKyAgICAgICAgKiBlZGl0aW5nL0VkaXRvci5oOiBVcGRhdGVkIGZvciBhYm92ZSBjaGFuZ2Vz
LiBBbHNvIGNoYW5nZWQgdGhlCisgICAgICAgIEZyYWdtZW50QW5kUmVzb3VyY2VzIHJlc291cmNl
cyB2ZWN0b3IgdG8gaG9sZCBSZWYgaW5zdGVhZCBvZiBSZWZQdHIuCisKKyAgICAgICAgKiBlZGl0
aW5nL2lvcy9FZGl0b3JJT1MubW06CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OldlYkNvbnRl
bnRSZWFkZXI6OnJlYWRXZWJBcmNoaXZlKTogUGFzcyBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdl
YkNvcmU6OkVkaXRvcjo6Y3JlYXRlRnJhZ21lbnRBbmRBZGRSZXNvdXJjZXMpOiBVcGRhdGVkIGZv
ciBjaGFuZ2UgdG8KKyAgICAgICAgRnJhZ21lbnRBbmRSZXNvdXJjZXMuCisKKyAgICAgICAgKiBl
ZGl0aW5nL21hYy9FZGl0b3JNYWMubW06CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OldlYkNv
bnRlbnRSZWFkZXI6OnJlYWRXZWJBcmNoaXZlKTogUGFzcyBhIHJlZmVyZW5jZS4KKyAgICAgICAg
KFdlYkNvcmU6OkVkaXRvcjo6Y3JlYXRlRnJhZ21lbnRBbmRBZGRSZXNvdXJjZXMpOiBVcGRhdGVk
IGZvciBjaGFuZ2UgdG8KKyAgICAgICAgRnJhZ21lbnRBbmRSZXNvdXJjZXMuCisKKyAgICAgICAg
KiBoaXN0b3J5L1BhZ2VDYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpjYW5DYWNoZUZyYW1l
KTogVXNlIGEgcmVmZXJlbmNlLgorCisgICAgICAgICogaHRtbC9GaWxlSW5wdXRUeXBlLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkZpbGVJbnB1dFR5cGU6OmhhbmRsZURPTUFjdGl2YXRlRXZlbnQp
OiBQYXNzIHJlZmVyZW5jZXMuCisKKyAgICAgICAgKiBodG1sL0hUTUxGb3JtQ29udHJvbEVsZW1l
bnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEZvcm1Db250cm9sRWxlbWVudDo6Zm9ybU1l
dGhvZCk6IFVzZSBhdXRvLgorCisgICAgICAgICogaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6SFRNTEZvcm1FbGVtZW50OjpwcmVwYXJlRm9yU3VibWlzc2lvbik6
IFVwZGF0ZWQgdG8gdXNlIGEgcmV0dXJuCisgICAgICAgIHZhbHVlcyBmb3IgdGV4dEZpZWxkVmFs
dWVzIGludHNlYWQgb2YgYW4gb3V0IGFyZ3VtZW50IHdpdGggZ2V0VGV4dEZpZWxkVmFsdWVzLgor
ICAgICAgICAoV2ViQ29yZTo6SFRNTEZvcm1FbGVtZW50Ojp0ZXh0RmllbGRWYWx1ZXMpOiBSZW5h
bWVkIGZyb20gZ2V0VGV4dEZpZWxkVmFsdWVzCisgICAgICAgIGFuZCBjaGFuZ2VkIHRvIHVzZSBh
IHJldHVybiB2YWx1ZSBpbnN0ZWFkIG9mIGFuIG91dCBhcmd1bWVudC4KKyAgICAgICAgKFdlYkNv
cmU6OkhUTUxGb3JtRWxlbWVudDo6c3VibWl0KTogUGFzcyBhIHJlZmVyZW5jZS4KKyAgICAgICAg
KFdlYkNvcmU6OkhUTUxGb3JtRWxlbWVudDo6cmVxdWVzdEF1dG9jb21wbGV0ZSk6IFBhc3MgYSBS
ZWYmJi4KKyAgICAgICAgKiBodG1sL0hUTUxGb3JtRWxlbWVudC5oOiBVcGRhdGVkIGZvciBhYm92
ZSBjaGFuZ2VzLgorCisgICAgICAgICogaHRtbC9IVE1MSHRtbEVsZW1lbnQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTEh0bWxFbGVtZW50OjppbnNlcnRlZEJ5UGFyc2VyKTogVXNlIGEgcmVm
ZXJlbmNlLgorCisgICAgICAgICogaHRtbC9IVE1MTGlua0VsZW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTExpbmtFbGVtZW50Ojpwcm9jZXNzKTogUGFzcyBhIHJlZmVyZW5jZS4KKyAg
ICAgICAgKFdlYkNvcmU6OkhUTUxMaW5rRWxlbWVudDo6c2V0Q1NTU3R5bGVTaGVldCk6IFVzZSBh
dXRvLgorCisgICAgICAgICogaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OmxvYWRSZXNvdXJjZSk6IFVzZSBhIHJlZmVyZW5jZS4K
KworICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50Ojp1cGRh
dGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzKTogVXNlIGEgcmVmZXJlbmNlLAorICAgICAgICBhbHNv
IHVwZGF0ZSBmb3Igc3RydWN0LXN0eWxlIG1lbWJlciBuYW1lcyB3aXRob3UgbV8gcHJlZml4Lgor
ICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpnZXRGcmFt
ZXNXaXRoTWFuaWZlc3RzKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JBcHBs
aWNhdGlvbkNhY2hlQWdlbnQ6OmdldE1hbmlmZXN0Rm9yRnJhbWUpOiBEaXR0by4KKyAgICAgICAg
KFdlYkNvcmU6Okluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6Z2V0QXBwbGljYXRpb25D
YWNoZUZvckZyYW1lKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JBcHBsaWNh
dGlvbkNhY2hlQWdlbnQ6OmJ1aWxkT2JqZWN0Rm9yQXBwbGljYXRpb25DYWNoZSk6IERpdHRvLgor
ICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZEFy
cmF5Rm9yQXBwbGljYXRpb25DYWNoZVJlc291cmNlcyk6IERpdHRvLgorICAgICAgICAoV2ViQ29y
ZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZE9iamVjdEZvckFwcGxpY2F0
aW9uQ2FjaGVSZXNvdXJjZSk6IERpdHRvLgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JB
cHBsaWNhdGlvbkNhY2hlQWdlbnQuaDogVXBkYXRlZCBmb3IgYWJvdmUgY2hhbmdlcy4KKworICAg
ICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp1cGRhdGVBcHBsaWNhdGlvbkNhY2hl
U3RhdHVzSW1wbCk6IFRha2UgYSByZWZlcmVuY2UuCisgICAgICAgICogaW5zcGVjdG9yL0luc3Bl
Y3Rvckluc3RydW1lbnRhdGlvbi5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAg
KiBsb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXI6OkRvY3VtZW50TG9hZGVyKTogTW92ZSBtdWNoIGluaXRpYWxpemF0aW9uIHRvIGNsYXNz
IGRlZmluaXRpb24uCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6b3JpZ2luYWxS
ZXF1ZXN0KTogTW92ZWQgdG8gaGVhZGVyIHRvIG1ha2UgaXQgaW5saW5lLgorICAgICAgICAoV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXI6Om9yaWdpbmFsUmVxdWVzdENvcHkpOiBEaXR0by4KKyAgICAg
ICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpyZXF1ZXN0KTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6dXJsKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpE
b2N1bWVudExvYWRlcjo6c3RvcExvYWRpbmcpOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAo
V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OndpbGxTZW5kUmVxdWVzdCk6IFVwZGF0ZWQgdG8gdGFr
ZSBhIHJhdyBwb2ludGVyIGluc3RlYWQgb2YgYQorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAg
ICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmNvbW1pdERhdGEpOiBDYWxsIHNob3VsZFVzZU1h
aW5SZXNvdXJjZUVuY29kaW5nIGluc3RlYWQgb2YKKyAgICAgICAgc3BlY2lhbCBjYXNpbmcgV2Vi
QXJjaGl2ZS4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjptYXliZUNyZWF0ZUFy
Y2hpdmUpOiBQYXNzIHJlZmVyZW5jZXMuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRl
cjo6c2V0QXJjaGl2ZSk6IFRha2UgUmVmJiYgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAg
ICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMpOiBUYWtl
IGEgcmVmZXJlbmNlIGluc3RlYWQKKyAgICAgICAgb2YgYSBwb2ludGVyLgorICAgICAgICAoV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXI6OnBvcEFyY2hpdmVGb3JTdWJmcmFtZSk6IFJldHVybiBSZWZQ
dHIgaW5zdGVhZCBvZgorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXI6OnN1YnJlc291cmNlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpEb2N1
bWVudExvYWRlcjo6c3VicmVzb3VyY2VzKTogUmV0dXJuIGEgVmVjdG9yPFJlZj4gaW5zdGVhZCBv
ZiBhCisgICAgICAgIFZlY3RvcjxSZWZQdHI+LgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXI6OnN1YnN0aXR1dGVSZXNvdXJjZURlbGl2ZXJ5VGltZXJGaXJlZCk6IFVzZSBtb3ZlCisg
ICAgICAgIGluc3RlYWQgb2Ygc3dhcC4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
OjpzY2hlZHVsZUFyY2hpdmVMb2FkKTogVXNlIHNob3VsZExvYWRGcm9tQXJjaGl2ZU9ubHkKKyAg
ICAgICAgaW5zdGVhZCBvZiBhIHNwZWNpYWwgY2FzZSBmb3IgZWFjaCB0eXBlIG9mIGFyY2hpdmUu
CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6b3JpZ2luYWxVUkwpOiBNb3ZlZCB0
byBoZWFkZXIgdG8gbWFrZSBpdCBpbmxpbmUuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExv
YWRlcjo6cmVzcG9uc2VVUkwpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyOjpkb2N1bWVudFVSTCk6IENhbGwgc2hvdWxkVXNlTWFpblJlc291cmNlVVJMIGluc3RlYWQg
b2YKKyAgICAgICAgc3BlY2lhbCBjYXNpbmcgV2ViQXJjaGl2ZS4KKyAgICAgICAgKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyOjpyZXNwb25zZU1JTUVUeXBlKTogTW92ZWQgdG8gaGVhZGVyIHRvIG1h
a2UgaXQgaW5saW5lLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmN1cnJlbnRD
b250ZW50VHlwZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmNv
bnRlbnRGaWx0ZXIpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpn
ZXRJY29uTG9hZERlY2lzaW9uRm9ySWNvblVSTCk6IFBhc3MgYSByZWZlcmVuY2UuCisgICAgICAg
IChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6Z2V0SWNvbkRhdGFGb3JJY29uVVJMKTogRGl0dG8u
CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6ZGlzcGF0Y2hPbmxvYWRFdmVudHMp
OiBVc2UgYSByZWZlcmVuY2UuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6dW5y
ZWFjaGFibGVVUkwpOiBNb3ZlZCB0byBoZWFkZXIgdG8gbWFrZSBpdCBpbmxpbmUuCisgICAgICAg
ICogbG9hZGVyL0RvY3VtZW50TG9hZGVyLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAg
ICAgICAqIGxvYWRlci9FbXB0eUNsaWVudHMuY3BwOiBVcGRhdGVkIGZvciBjaGFuZ2VzIHRvIGNs
aWVudCBpbnRlcmZhY2VzLgorICAgICAgICAqIGxvYWRlci9FbXB0eUNsaWVudHMuaDogRGl0dG8u
CisKKyAgICAgICAgKiBsb2FkZXIvRm9ybVN0YXRlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZv
cm1TdGF0ZTo6Rm9ybVN0YXRlKTogVGFrZSByZWZlcmVuY2VzIGluc3RlYWQgb2YgUGFzc1JlZlB0
ciwgYWxzbworICAgICAgICB0YWtlIFZlY3RvciYmIGluc3RlYWQgb2YgVmVjdG9yJiB3aGVuIHdl
IHdhbnQgdG8gdGFrZSBvd25lcnNoaXAgYW5kIHVzZSBtb3ZlCisgICAgICAgIGluc3RlYWQgb2Yg
c3dhcCB0byBkbyB0aGF0LgorICAgICAgICAoV2ViQ29yZTo6Rm9ybVN0YXRlOjpjcmVhdGUpOiBE
aXR0by4KKyAgICAgICAgKiBsb2FkZXIvRm9ybVN0YXRlLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92
ZS4gQWxzbyBjaGFuZ2VkIHJldHVybiB2YWx1ZXMgdG8gYmUKKyAgICAgICAgcmVmZXJlbmNlcyBp
bnN0ZWFkIG9mIHBvaW50ZXJzIGFuZCBtZW1iZXJzIHRvIGJlIFJlZiBpbnN0ZWFkIG9mIFJlZlB0
ci4KKworICAgICAgICAqIGxvYWRlci9Gb3JtU3VibWlzc2lvbi5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpGb3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6cGFyc2VNZXRob2RUeXBlKTogVXBkYXRl
ZCBmb3IgY2hhbmdlCisgICAgICAgIHRvIHRoZSBNZXRob2QgZW51bWVyYXRpb24uCisgICAgICAg
IChXZWJDb3JlOjpGb3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6Y29weUZyb20pOiBEZWxldGVk
LgorICAgICAgICAoV2ViQ29yZTo6Rm9ybVN1Ym1pc3Npb246OkZvcm1TdWJtaXNzaW9uKTogVXNl
IFJlZiYmIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYkNvcmU6OkZvcm1TdWJt
aXNzaW9uOjpjcmVhdGUpOiBVc2UgcmVmZXJlbmNlIGluc3RlYWQgb2YgcG9pbnRlciBhbmQKKyAg
ICAgICAgcmF3IHBvaW50ZXIgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLiBBbHNvIGNvcHkgYXR0cmli
dXRlcyB1c2luZyBjb3B5IGNvbnN0cnVjdG9yCisgICAgICAgIGluc3RlYWQgb2YgYW4gZXhwbGlj
aXQgY29weUZyb20gZnVuY3Rpb24uCisgICAgICAgIChXZWJDb3JlOjpGb3JtU3VibWlzc2lvbjo6
cmVxdWVzdFVSTCk6IFVwZGF0ZWQgZm9yIGNoYW5nZSB0byB0aGUgTWV0aG9kCisgICAgICAgIGVu
dW1lcmF0aW9uLgorICAgICAgICAoV2ViQ29yZTo6Rm9ybVN1Ym1pc3Npb246OnBvcHVsYXRlRnJh
bWVMb2FkUmVxdWVzdCk6IERpdHRvLgorICAgICAgICAqIGxvYWRlci9Gb3JtU3VibWlzc2lvbi5o
OiBVcGRhdGVkIGZvciB0aGUgYWJvdmUgY2hhbmdlcy4gTWFkZSB0aGUgQXR0cmlidXRlcworICAg
ICAgICBjbGFzcyBjb3B5YWJsZSwgc2luY2Ugd2UgY29weSBpdC4gQ2hhbmdlZCBzb21lIGZ1bmN0
aW9ucyB0byByZXR1cm4gcmVmZXJlbmNlcworICAgICAgICBpbnN0ZWFkIG9mIHBvaW50ZXJzIGFu
ZCB1c2UgUmVmIGluc3RlYWQgb2YgUmVmUHRyIGZvciBkYXRhIG1lbWJlcnMuCisKKyAgICAgICAg
KiBsb2FkZXIvRnJhbWVMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6
OnN1Ym1pdEZvcm0pOiBVcGRhdGVkIGZvciBjaGFuZ2VzIHRvIEZvcm1TdWJtaXNzaW9uCisgICAg
ICAgIGFuZCBGb3JtU3RhdGUuCisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6cmVjZWl2
ZWRGaXJzdERhdGEpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2Fk
RnJhbWVSZXF1ZXN0KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6bG9h
ZFJlc291cmNlU3luY2hyb25vdXNseSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVM
b2FkZXI6OmNvbnRpbnVlTG9hZEFmdGVyTmF2aWdhdGlvblBvbGljeSk6IERpdHRvLgorCisgICAg
ICAgICogbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50Lmg6IFVzZSByZWZlcmVuY2VzLCBwb2ludGVy
cywgUmVmUHRyLCBhbmQgUmVmCisgICAgICAgIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKworICAg
ICAgICAqIGxvYWRlci9IaXN0b3J5Q29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpI
aXN0b3J5Q29udHJvbGxlcjo6cHVzaFN0YXRlKTogVGFrZSBSZWZQdHImJiBpbnN0ZWFkIG9mIFBh
c3NSZWZQdHIuCisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5Q29udHJvbGxlcjo6cmVwbGFjZVN0
YXRlKTogRGl0dG8uCisgICAgICAgICogbG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmg6IFVwZGF0
ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRlci9JbWFnZUxvYWRlci5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpJbWFnZUxvYWRlcjo6dXBkYXRlRnJvbUVsZW1lbnQpOiBQYXNzIGEg
cmVmZXJlbmNlLgorCisgICAgICAgICogbG9hZGVyL05hdmlnYXRpb25TY2hlZHVsZXIuY3BwOiBV
c2UgcmVmZXJuY2VzIGFuZCBSZWYmJiBpbnN0ZWFkIG9mCisgICAgICAgIHBvaW50ZXJzIGFuZCBQ
YXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6U2NoZWR1bGVkTmF2aWdhdGlvbjo6U2NoZWR1
bGVkTmF2aWdhdGlvbik6IEFkZGVkIGFuIG92ZXJsb2FkCisgICAgICAgIHRoYXQgc2VzdHMgbV9z
aG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5LgorICAgICAgICAqIGxvYWRlci9OYXZpZ2F0aW9u
U2NoZWR1bGVyLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRlci9S
ZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcjo6c3Rh
cnQpOiBVc2UgYW5kIHBhc3MgcmVmZXJlbmNlcy4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNl
TG9hZGVyOjp3aWxsU2VuZFJlcXVlc3QpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291
cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6
OlJlc291cmNlTG9hZGVyOjpkaWRGYWlsKTogRGl0dG8uCisKKyAgICAgICAgKiBsb2FkZXIvU3Vi
ZnJhbWVMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OmNyZWF0
ZUphdmFBcHBsZXRXaWRnZXQpOiBSZXR1cm4gUmVmUHRyIGluc3RlYWQKKyAgICAgICAgb2YgUGFz
c1JlZlB0ci4gUGFzcyByZWZlcmVuY2VzIGluc3RlYWQgb2YgcG9pbnRlcnMuCisgICAgICAgIChX
ZWJDb3JlOjpTdWJmcmFtZUxvYWRlcjo6bG9hZE9yUmVkaXJlY3RTdWJmcmFtZSk6IERpdHRvLgor
ICAgICAgICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OmxvYWRTdWJmcmFtZSk6IERpdHRvLgor
ICAgICAgICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OmRvY3VtZW50KTogRGVsZXRlZC4gVGhp
cyB3YXMgbmV2ZXIgcmVhbGx5IHRoZQorICAgICAgICBjb3JyZWN0IGlkaW9tIGZvciBnZXR0aW5n
IHRoZSBhcHByb3ByaWF0ZSBkb2N1bWVudDsgaGlkaW5nIHRoZSBkZXBlbmRlbmN5CisgICAgICAg
IG9uIG1fZnJhbWUgd2Fzbid0IHBhaW5nIG9mZi4KKyAgICAgICAgKFdlYkNvcmU6OlN1YmZyYW1l
TG9hZGVyOjpsb2FkUGx1Z2luKTogUGFzcyByZWZlcmVuY2UgaW5zdGVhZCBvZiBwb2ludGVyLgor
ICAgICAgICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OnNob3VsZENvbnZlcnRJbnZhbGlkVVJM
c1RvQmxhbmspOiBFbGltaW5hdGVkCisgICAgICAgIHVubmVlZGVkIG51bGwgY2hlY2tpbmcgYW5k
IGNvbXBsZXhpdHkgZHVlIHRvIGdvaW5nIHRocm91Z2ggdGhlIGRvY3VtZW50CisgICAgICAgIGlu
c3RlYWQgb2YgdGhlIGZyYW1lIGZvciB0aGlzIGNoZWNrLgorICAgICAgICAqIGxvYWRlci9TdWJm
cmFtZUxvYWRlci5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIv
YXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNh
dGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlKTogTW92ZWQgZGF0YSBtZW1iZXIKKyAgICAgICAg
aW5pdGlhbGl6YXRpb24gdG8gdGhlIGNsYXNzIGRlZmluaXRpb24uCisgICAgICAgIChXZWJDb3Jl
OjpBcHBsaWNhdGlvbkNhY2hlOjp+QXBwbGljYXRpb25DYWNoZSk6IFBhc3MgYSByZWZlcmVuY2Ug
aW5zdGVhZAorICAgICAgICBvZiBhIHBvaW50ZXIuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNh
dGlvbkNhY2hlOjppc0NvbXBsZXRlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNh
dGlvbkNhY2hlOjpzZXRNYW5pZmVzdFJlc291cmNlKTogVGFrZSBSZWYmJiBpbnN0ZWFkIG9mCisg
ICAgICAgIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlOjph
ZGRSZXNvdXJjZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZTo6
cmVtb3ZlUmVzb3VyY2UpOiBEZWxldGVkLiBXYXMgdW51c2VkLgorICAgICAgICAqIGxvYWRlci9h
cHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlLmg6IFVwZGF0ZWQgZm9yIGFib3ZlIGNoYW5nZXMuCisK
KyAgICAgICAgKiBsb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6QXBwbGljYXRpb25DYWNoZUdy
b3VwKTogTW92ZWQgbW9zdAorICAgICAgICBtZW1iZXIgaW5pdGlhbGl6YXRpb24gdG8gdGhlIGNs
YXNzIGRlZmluaXRpb24uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
On5BcHBsaWNhdGlvbkNhY2hlR3JvdXApOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2Vi
Q29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpjYWNoZUZvck1haW5SZXF1ZXN0KTogUmVtb3Zl
ZAorICAgICAgICB1bm5lY2Vzc2FyeSBwcmVmbGlnaHQgZm9yIHJlbW92ZUZyYWdtZW50SWRlbnRp
Zmllciwgd2hpY2ggZWZmaWNpZW50bHkKKyAgICAgICAgZG9lcyBub3RoaW5nIGlmIHRoZXJlIGlz
IG5vIGlkZW50aWZpZXIuIFVzZSBlYXJseSByZXR1cm4uCisgICAgICAgIChXZWJDb3JlOjpBcHBs
aWNhdGlvbkNhY2hlR3JvdXA6OmZhbGxiYWNrQ2FjaGVGb3JNYWluUmVxdWVzdCk6IE1vcmUgb2YK
KyAgICAgICAgdGhlIHNhbWUuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3Jv
dXA6OnNlbGVjdENhY2hlKTogRGl0dG8sIGFsc28gdGFrZSBhIHJlZmVyZW5jZSwKKyAgICAgICAg
YW5kIHVzZSBldmVudCBuYW1lcyBpbnN0ZWFkIG9mIGEgc3BlY2lhbCBlbnVtZXJhdGlvbiB0byBw
b2FzdCBldmVudHMuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNl
bGVjdENhY2hlV2l0aG91dE1hbmlmZXN0VVJMKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpB
cHBsaWNhdGlvbkNhY2hlR3JvdXA6OmZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZSk6IERpdHRv
LgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpmYWlsZWRMb2FkaW5n
TWFpblJlc291cmNlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hl
R3JvdXA6OmRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKTogRGl0dG8uCisgICAgICAgIChXZWJD
b3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNhY2hlRGVzdHJveWVkKTogRGl0dG8uCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnN0b3BMb2FkaW5nSW5GcmFtZSk6
IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZXROZXdl
c3RDYWNoZSk6IFVzZSBSZWYmJiBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIuCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6Om1ha2VPYnNvbGV0ZSk6IE1vcmUg
b2YgdGhlIHNhbWUuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnVw
ZGF0ZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjph
Ym9ydCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpk
aWRSZWNlaXZlUmVzcG9uc2UpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9u
Q2FjaGVHcm91cDo6ZGlkRmluaXNoTG9hZGluZyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6
QXBwbGljYXRpb25DYWNoZUdyb3VwOjpkaWRGYWlsKTogRGl0dG8uCisgICAgICAgIChXZWJDb3Jl
OjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRpZEZpbmlzaExvYWRpbmdNYW5pZmVzdCk6IERpdHRv
LgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjptYW5pZmVzdE5vdEZv
dW5kKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNo
ZWNrSWZMb2FkSXNDb21wbGV0ZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRp
b25DYWNoZUdyb3VwOjpzdGFydExvYWRpbmdFbnRyeSk6IERpdHRvLgorICAgICAgICAoV2ViQ29y
ZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpkZWxpdmVyRGVsYXllZE1haW5SZXNvdXJjZXMpOiBV
c2UgYSBtb2Rlcm4KKyAgICAgICAgZm9yIGxvb3AuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNh
dGlvbkNhY2hlR3JvdXA6OmFkZEVudHJ5KTogVXNlIGF1dG8gYW5kIHNpbXBsaWZ5IGxvZ2ljCisg
ICAgICAgIGZvciBhZGRpbmcuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3Jv
dXA6OmFzc29jaWF0ZURvY3VtZW50TG9hZGVyV2l0aENhY2hlKTogVXBkYXRlIHNpbmNlCisgICAg
ICAgIGZ1bmN0aW9uIHJlc3VsdCBpcyBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYkNvcmU6OkFw
cGxpY2F0aW9uQ2FjaGVHcm91cDo6c2NoZWR1bGVSZWFjaGVkTWF4QXBwQ2FjaGVTaXplQ2FsbGJh
Y2spOgorICAgICAgICBVc2UgYXV0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2Fj
aGVHcm91cDo6cG9zdExpc3RlbmVyVGFzayk6IFRha2UgZXZlbnQgdHlwZSBpbnN0ZWFkIG9mCisg
ICAgICAgIHRha2luZyBhIHNwZWNpYWwgZW51bWVyYXRpb24uCisgICAgICAgICogbG9hZGVyL2Fw
cGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisK
KyAgICAgICAgKiBsb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUhvc3QuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhvc3Q6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0
KTogTW92ZSBtb3N0IG1lbWJlcgorICAgICAgICBpbml0aWFsaXphdGlvbiB0byB0aGUgY2xhc3Mg
ZGVmaW5pdGlvbi4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojp+QXBw
bGljYXRpb25DYWNoZUhvc3QpOiBVc2UgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6QXBw
bGljYXRpb25DYWNoZUhvc3Q6OnNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0KTogRGl0dG8uCisg
ICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c2VsZWN0Q2FjaGVXaXRoTWFu
aWZlc3QpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojpt
YWluUmVzb3VyY2VEYXRhUmVjZWl2ZWQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxp
Y2F0aW9uQ2FjaGVIb3N0OjpmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKTogRGl0dG8uCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6ZmluaXNoZWRMb2FkaW5nTWFpblJl
c291cmNlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6
bWF5YmVMb2FkRmFsbGJhY2tGb3JSZWRpcmVjdCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6
QXBwbGljYXRpb25DYWNoZUhvc3Q6Om1heWJlTG9hZEZhbGxiYWNrRm9yUmVzcG9uc2UpOiBEaXR0
by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpjcmVhdGVGaWxlVVJM
KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWF5YmVM
b2FkU3luY2hyb25vdXNseSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25D
YWNoZUhvc3Q6Om5vdGlmeURPTUFwcGxpY2F0aW9uQ2FjaGUpOiBUYWtlIGV2ZW50CisgICAgICAg
IHR5cGUgaW5zdGVhZCBvZiBzcGVjaWFsIGVudW1lcmF0aW9uLgorICAgICAgICAoV2ViQ29yZTo6
QXBwbGljYXRpb25DYWNoZUhvc3Q6OnN0b3BMb2FkaW5nSW5GcmFtZSk6IFVzZSByZWZlcmVuY2Uu
CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c3RvcERlZmVycmluZ0V2
ZW50cyk6IFVwZGF0ZWQgdG8gdXNlCisgICAgICAgIGV2ZW50IHR5cGVzIGluc3RlYWQgb2Ygc3Bl
Y2lhbCBlbnVtZXJhdGlvbiBhbmQgYWxzbyByZXBhaXJlZCBwb3NzaWJsZQorICAgICAgICBlZGdl
IGNhc2Ugd2hlcmUgY29kZSBpbiBldmVudCBoYW5kbGVyIHNvbWVob3cgdHJpZ2dlcnMgYWRkaXRp
b25hbCBldmVudHMuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6cmVz
b3VyY2VMaXN0KTogUmVuYW1lZCBmcm9tIGZpbGxSZXNvdXJjZUxpc3QKKyAgICAgICAgYW5kIGNo
YW5nZWQgdG8gcmV0dXJuIGEgdmVjdG9yIGluc3RlYWQgb2YgcG9wdWxhdGluZyBvbmUuCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6YXBwbGljYXRpb25DYWNoZUluZm8p
OiBUd2VhayBjb2Rpbmcgc3R5bGUgYSBiaXQuCisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVBcHBs
aWNhdGlvbkNhY2hlRXZlbnQpOiBGYWN0b3JlZCB0aGlzIGhlbHBlciBvdXQgb2YKKyAgICAgICAg
ZGlzcGF0Y2hET01FdmVudCBzbyB3ZSBjYW4gdXNlIFJlZiBpbnN0ZWFkIG9mIFJlZlB0ci4KKyAg
ICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpkaXNwYXRjaERPTUV2ZW50KTog
VXBkYXRlZCB0byByZWNlbnQgZXZlbnQgdHlwZQorICAgICAgICByYXRoZXIgdGhhbiByZWNlaXZp
bmcgYW4gZXZlbnQgaWQgYW5kIG1hcHBpbmcgaXQgdG8gYSB0eXBlLgorICAgICAgICAoV2ViQ29y
ZTo6QXBwbGljYXRpb25DYWNoZUhvc3Q6OnNldEFwcGxpY2F0aW9uQ2FjaGUpOiBUYWtlIFJlZlB0
ciYmIGluc3RlYWQgb2YKKyAgICAgICAgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYkNvcmU6OkFw
cGxpY2F0aW9uQ2FjaGVIb3N0Ojp1cGRhdGUpOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAo
V2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhvc3Q6OnN3YXBDYWNoZSk6IERpdHRvLgorICAgICAg
ICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhvc3Q6OmFib3J0KTogRGl0dG8uCisgICAgICAg
ICogbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVIb3N0Lmg6IFVwZGF0ZWQgZm9yIHRo
ZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3Rv
cmFnZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6bG9h
ZENhY2hlR3JvdXApOiBQYXNzIGEgUmVmIGluc3RlYWQgb2YgUmVmUHRyLgorICAgICAgICAoV2Vi
Q29yZTo6QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmNhY2hlR3JvdXBGb3JVUkwpOiBEaXR0by4K
KyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpmYWxsYmFja0NhY2hl
R3JvdXBGb3JVUkwpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVT
dG9yYWdlOjpjYWNoZUdyb3VwRGVzdHJveWVkKTogVGFrZSBhIHJlZmVyZW5jZS4KKyAgICAgICAg
KFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpjYWNoZUdyb3VwTWFkZU9ic29sZXRl
KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6c3Rv
cmVOZXdlc3RDYWNoZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNo
ZVN0b3JhZ2U6OmxvYWRDYWNoZSk6IFJldHVybiBSZWZQdHIgaW5zdGVhZCBvZiBQYXNzUmVmUHRy
LgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmRlbGV0ZUNhY2hl
R3JvdXApOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAqIGxvYWRlci9hcHBjYWNoZS9BcHBs
aWNhdGlvbkNhY2hlU3RvcmFnZS5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAg
KiBsb2FkZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25DYWNoZS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpET01BcHBsaWNhdGlvbkNhY2hlOjpET01BcHBsaWNhdGlvbkNhY2hlKTogVGFrZSBhIHJl
ZmVyZW5jZS4KKyAgICAgICAgKFdlYkNvcmU6OkRPTUFwcGxpY2F0aW9uQ2FjaGU6OnRvRXZlbnRU
eXBlKTogRGVsZXRlZC4KKyAgICAgICAgKiBsb2FkZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25D
YWNoZS5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuIE1hZGUgbW9zdAorICAgICAgICBtZW1iZXJz
IHByaXZhdGUuCisKKyAgICAgICAgKiBsb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkFyY2hpdmU6OmNsZWFyQWxsU3ViZnJhbWVBcmNoaXZlcyk6IFVzZSBhIHNl
dCBmb3IgdGhlIGxvZ2ljIHRoYXQKKyAgICAgICAgcHJldmVudHMgdXMgZnJvbSB3YWxraW5nIHRo
ZSBzYW1lIGFyY2hpdmUgbW9yZSB0aGFuIG9uY2UsIHJhdGhlciB0aGFuIHVzaW5nCisgICAgICAg
IGEgdmVjdG9yLiBMZWZ0IGl0IHJlY3Vyc2l2ZSwgdGhvdWdoLgorICAgICAgICAqIGxvYWRlci9h
cmNoaXZlL0FyY2hpdmUuaDogR2l0IHJpZCBvZiB0aGUgdHlwZSBmdW5jdGlvbiwgcmVwbGFjaW5n
IGl0IHdpdGgKKyAgICAgICAgdGhyZWUgZnVuY3Rpb25zIGZvciB0aGUgZm91ciBkaWZmZXJlbnQg
cG9saWNpZXMgd2UgY3VycmVudGx5IGhhdmUgYWJvdXQgdGhlCisgICAgICAgIGRpZmZlcmVudCBh
cmNoaXZlIHR5cGVzLiBDaGFuZ2VkIGZ1bmN0aW9ucyB0byB0YWtlIFJlZiYmIGluc3RlYWQgb2Yg
UGFzc1JlZlB0cgorICAgICAgICBhbmQgcmV0dXJuIGNvbnN0IFZlY3RvcjxSZWY+JiBpbnN0ZWFk
IG9mIGNvbnN0IFZlY3RvcjxSZWZQdHI+JiwgY2hhbmdpbmcgdGhlCisgICAgICAgIGRhdGEgbWVt
YmVycyB0byBtYXRjaC4KKworICAgICAgICAqIGxvYWRlci9hcmNoaXZlL0FyY2hpdmVGYWN0b3J5
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZUFyY2hpdmVNSU1FVHlwZXNNYXApOiBGYWN0
b3JlZCB0aGlzIG91dCBvZiB0aGUgYXJjaGl2ZU1JTUVUeXBlcworICAgICAgICBmdW5jdGlvbiBz
byB3ZSBkb24ndCBuZWVkIGEgYm9vbGVhbi4gQWxzbyB1c2UgQVNDSUlMaXRlcmFsLgorICAgICAg
ICAoV2ViQ29yZTo6YXJjaGl2ZU1JTUVUeXBlcyk6IFVwZGF0ZWQgdG8gc2UgdGhlIGFib3ZlLgor
CisgICAgICAgICogbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uOjphZGRBbGxSZXNv
dXJjZXMpOiBUYWtlIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6QXJjaGl2ZVJlc291
cmNlQ29sbGVjdGlvbjo6cG9wU3ViZnJhbWVBcmNoaXZlKTogUmV0dXJuIFJlZlB0ciBpbnN0ZWFk
CisgICAgICAgIG9mIFBhc3NSZWZQdHIuCisgICAgICAgICogbG9hZGVyL2FyY2hpdmUvQXJjaGl2
ZVJlc291cmNlQ29sbGVjdGlvbi5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAg
KiBsb2FkZXIvYXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNoaXZlLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkxlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKTog
VXNlIGF1dG8gYW5kCisgICAgICAgIGZld2VyIGxvY2FsIHZhcmlhYmxlcywgbW9yZSByZWZlcmVu
Y2VzIGZvciBhcmd1bWVudCB0eXBlcyBhbmQgcmV0dXJuIHZhbHVlcy4KKyAgICAgICAgKFdlYkNv
cmU6OkxlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVJlc291cmNlUmVzcG9uc2VGcm9tUHJvcGVydHlM
aXN0RGF0YSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6Y3Jl
YXRlUmVzb3VyY2UpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hpdmU6
OmNyZWF0ZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6ZXh0
cmFjdCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6dHlwZSk6
IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpMZWdhY3lXZWJBcmNoaXZlOjpyYXdEYXRhUmVw
cmVzZW50YXRpb24pOiBNb3JlIG9mIHRoZSBzYW1lLgorICAgICAgICAoV2ViQ29yZTo6TGVnYWN5
V2ViQXJjaGl2ZTo6Y3JlYXRlRnJvbVNlbGVjdGlvbik6IERpdHRvLgorICAgICAgICAqIGxvYWRl
ci9hcmNoaXZlL2NmL0xlZ2FjeVdlYkFyY2hpdmUuaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLiBB
bHNvIG1hcmtlZCB0aGUKKyAgICAgICAgY2xhc3MgZmluYWwgYW5kIGFkZGVkIG92ZXJyaWRlcyBm
b3IgdGhlIGZvdXIgbmV3IHBvbGljeSBtZW1iZXIgZnVuY3Rpb25zLgorCisgICAgICAgICogbG9h
ZGVyL2FyY2hpdmUvbWh0bWwvTUhUTUxBcmNoaXZlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1I
VE1MQXJjaGl2ZTo6Y3JlYXRlKTogUGFzcyByZWZlcmVuY2VzLgorICAgICAgICAoV2ViQ29yZTo6
TUhUTUxBcmNoaXZlOjpnZW5lcmF0ZU1IVE1MRGF0YSk6IFJldHVybiBSZWZQdHIgaW5zdGVhZCBv
ZgorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAqIGxvYWRlci9hcmNoaXZlL21odG1sL01I
VE1MQXJjaGl2ZS5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuIEFsc28gbWFya2VkIHRoZQorICAg
ICAgICBjbGFzcyBmaW5hbCBhbmQgYWRkZWQgb3ZlcnJpZGVzIGZvciB0aGUgZm91ciBuZXcgcG9s
aWN5IG1lbWJlciBmdW5jdGlvbnMuCisKKyAgICAgICAgKiBsb2FkZXIvYXJjaGl2ZS9taHRtbC9N
SFRNTFBhcnNlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNSFRNTFBhcnNlcjo6cGFyc2VBcmNo
aXZlV2l0aEhlYWRlcik6IFBhc3MgUmVmIGluc3RlYWQgb2YgUmVmUHRyCisgICAgICAgIHRvIHNl
dE1haW5SZXNvdXJjZSBhbmQgYWRkU3ViZnJhbWVBcmNoaXZlLgorICAgICAgICAoV2ViQ29yZTo6
TUhUTUxQYXJzZXI6OmFkZFJlc291cmNlVG9BcmNoaXZlKTogRGl0dG8uCisKKyAgICAgICAgKiBs
b2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpD
YWNoZWRDU1NTdHlsZVNoZWV0OjpyZXN0b3JlUGFyc2VkU3R5bGVTaGVldCk6IFJldHVybiBSZWZQ
dHIgaW5zdGVhZAorICAgICAgICBvZiBQYXNzUmVmUHRyLgorICAgICAgICAqIGxvYWRlci9jYWNo
ZS9DYWNoZWRDU1NTdHlsZVNoZWV0Lmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAg
ICAqIGxvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3QuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6Q2FjaGVkUmVzb3VyY2VSZXF1ZXN0OjpzZXRJbml0aWF0b3IpOiBUYWtlIGEgcmVmZXJl
bmNlIGluc3RlYWQgb2YgYQorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAqIGxvYWRlci9j
YWNoZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3QuaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLgorCisg
ICAgICAgICogbG9hZGVyL2NvY29hL0Rpc2tDYWNoZU1vbml0b3IuaDogUmVtb3ZlZC4gVGhpcyBp
cyBhIGR1cGxpY2F0ZSwgdW51c2VkIGNvcHkKKyAgICAgICAgb2YgRGlza0NhY2hlTW9uaXRvckNv
Y29hLmguCisKKyAgICAgICAgKiBsb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvckNvY29hLmg6
IFJlbW92ZWQgdW5uZWVkZWQgZXhwb3J0aW5nIGFuZCB2aXJ0dWFsCisgICAgICAgIG1lbWJlciBm
dW5jdGlvbnMsIG1hZGUgbW9yZSB0aGluZ3MgcHJpdmF0ZSwgYW5kIGNoYW5nZWQgcmV0dXJuIHR5
cGUgdG8gUmVmUHRyCisgICAgICAgIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKiBs
b2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvckNvY29hLm1tOgorICAgICAgICAoV2ViQ29yZTo6
RGlza0NhY2hlTW9uaXRvcjo6dHJ5R2V0RmlsZUJhY2tlZFNoYXJlZEJ1ZmZlckZyb21DRlVSTENh
Y2hlZFJlc3BvbnNlKToKKyAgICAgICAgQ2hhbmdlZCByZXR1cm4gdHlwZSB0byBSZWZQdHIgaW5z
dGVhZCBvZiBQYXNzUmVmUHRyLgorCisgICAgICAgICogbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNl
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okljb25EYXRhYmFzZTo6c2V0SWNvbkRhdGFGb3JJY29u
VVJMKTogVGFrZSByYXcgcG9pbnRlciBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIuCisg
ICAgICAgIChXZWJDb3JlOjpJY29uRGF0YWJhc2U6OmdldE9yQ3JlYXRlSWNvblJlY29yZCk6IFJl
dHVybiBSZWYgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6SWNvbkRh
dGFiYXNlOjpnZXRJbWFnZURhdGFGb3JJY29uVVJMRnJvbVNRTERhdGFiYXNlKTogUmV0dXJuIFJl
ZlB0cgorICAgICAgICBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgICogbG9hZGVyL2lj
b24vSWNvbkRhdGFiYXNlLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4gQWxzbyBtYXJrZWQgZnVu
Y3Rpb25zIGZpbmFsCisgICAgICAgIGluc3RlYWQgb2Ygb3ZlcnJpZGUuCisgICAgICAgICogbG9h
ZGVyL2ljb24vSWNvbkRhdGFiYXNlQmFzZS5oOiBEaXR0by4KKworICAgICAgICAqIGxvYWRlci9p
Y29uL1BhZ2VVUkxSZWNvcmQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGFnZVVSTFJlY29yZDo6
UGFnZVVSTFJlY29yZCk6IE1vdmVkIGluaXRpYWxpemF0aW9uIHRvIHRoZSBoZWFkZXIuCisgICAg
ICAgIChXZWJDb3JlOjpQYWdlVVJMUmVjb3JkOjp+UGFnZVVSTFJlY29yZCk6IFdyb3RlIGNvZGUg
aGVyZSBpbnN0ZWFkIG9mIGNhbGxpbmcKKyAgICAgICAgc2V0SWNvblJlY29yZChudWxscHRyKS4K
KyAgICAgICAgKFdlYkNvcmU6OlBhZ2VVUkxSZWNvcmQ6OnNldEljb25SZWNvcmQpOiBUYWtlIFJl
ZlB0ciYmIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKiBsb2FkZXIvaWNvbi9QYWdl
VVJMUmVjb3JkLmg6IFVwZGF0ZCBmb3IgdGhlIGFib3ZlLgorCisgICAgICAgICogbG9hZGVyL2lv
cy9RdWlja0xvb2suaDoKKyAgICAgICAgKFdlYkNvcmU6OlF1aWNrTG9va0hhbmRsZTo6c2V0Q2xp
ZW50KTogVGFrZSBSZWYmJiBpbnN0ZWFkIG9mIFBhc3NSZUZQdHIuCisgICAgICAgICogbG9hZGVy
L2lvcy9RdWlja0xvb2subW06CisgICAgICAgICgtW1dlYlJlc291cmNlTG9hZGVyUXVpY2tMb29r
RGVsZWdhdGUgaW5pdFdpdGhSZXNvdXJjZUxvYWRlcjpdKTogVGFrZQorICAgICAgICByZWZlcmVu
Y2UgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6UXVpY2tMb29rSGFu
ZGxlOjpjcmVhdGUpOiBQYXNzIHJlZmVyZW5jZSBpbnN0ZWFkIG9mIHBvaW50ZXIuCisKKyAgICAg
ICAgKiBwYWdlL0Nocm9tZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDaHJvbWU6OnJ1bk9wZW5Q
YW5lbCk6IFVwZGF0ZWQgdG8gdGFrZSB0d28gcmVmZXJlbmNlcy4KKyAgICAgICAgKiBwYWdlL0No
cm9tZS5oOiBEaXR0by4KKyAgICAgICAgKiBwYWdlL0Nocm9tZUNsaWVudC5oOiBkaXR0by4KKwor
ICAgICAgICAqIHBhZ2UvRE9NV2luZG93LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRPTVdpbmRv
dzo6YXBwbGljYXRpb25DYWNoZSk6IFBhc3MgYSByZWZlcmVuY2UuCisgICAgICAgIChXZWJDb3Jl
OjpET01XaW5kb3c6OnNldExvY2F0aW9uKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpET01X
aW5kb3c6OmNyZWF0ZVdpbmRvdyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RE9NV2luZG93
OjpvcGVuKTogRGl0dG8uCisKKyAgICAgICAgKiBwYWdlL0VkaXRvckNsaWVudC5oOiBDaGFuZ2Vk
IGFyZ3VtZW50cyB0byByZWZlcmVuY2VzIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKworICAgICAg
ICAqIHBhZ2UvSGlzdG9yeS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5OjpzdGF0ZU9i
amVjdEFkZGVkKTogUGFzcyBhbiBydmFsdWUgcmVmZXJlbmNlLgorCisgICAgICAgICogcGFnZS9M
b2NhdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMb2NhdGlvbjo6cmVsb2FkKTogUGFzcyBy
ZWZlcmVuY2UgaW5zdGVhZCBvZiBwb2ludGVyLgorICAgICAgICAoV2ViQ29yZTo6TG9jYXRpb246
OnNldExvY2F0aW9uKTogRGl0dG8uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9VUkwuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6VVJMOjpzZXRGcmFnbWVudElkZW50aWZpZXIpOiBUYWtlIGEgU3RyaW5n
VmlldyByYXRoZXIgdGhhbgorICAgICAgICBhIFN0cmluZywgd2hpY2ggaXMgbW9yZSBmbGV4aWJs
ZSBmb3IgY2FsbGVycy4gQWxzbyBlbGltaW5hdGVkIGFuIHVubmVlZGVkCisgICAgICAgIHN0cmlu
ZyBhbGxvY2F0aW9uIHdoZW4gdGhlIG9sZCBzdHJpbmcgaGFkIGEgZnJhZ21lbnQgdGhhdCBpcyBi
ZWluZyByZXBsYWNlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9VUkwuaDogVXBkYXRlZCBmb3IgdGhl
IGFib3ZlLgorCisgICAgICAgICogcmVwbGF5L1JlcGxheUlucHV0RGlzcGF0Y2hNZXRob2RzLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkluaXRpYWxOYXZpZ2F0aW9uOjpkaXNwYXRjaCk6IFBhc3Mg
cmVmZXJlbmNlLgorICAgICAgICAqIHN2Zy9TVkdGRUltYWdlRWxlbWVudC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpTVkdGRUltYWdlRWxlbWVudDo6cmVxdWVzdEltYWdlUmVzb3VyY2UpOiBEaXR0
by4KKyAgICAgICAgKiBzdmcvU1ZHRm9udEZhY2VVcmlFbGVtZW50LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlNWR0ZvbnRGYWNlVXJpRWxlbWVudDo6bG9hZEZvbnQpOiBEaXR0by4KKyAgICAgICAg
KiBzdmcvU1ZHVXNlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdVc2VFbGVtZW50
Ojp1cGRhdGVFeHRlcm5hbERvY3VtZW50KTogRGl0dG8uCisKIDIwMTctMDEtMTQgIFphbGFuIEJ1
anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBTbWFsbCBjb2RlIGNsZWFudXAgYWZ0
ZXIgcjIxMDc2MApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9pb3MvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYktpdC9pb3MvQ2hhbmdlTG9nCmluZGV4IDYxZTg0MjdmODZjMGI5ZjYyNDM1NmIwNzFk
OTFlMTFiYjcyNzFhOWUuLjkyODgxM2M4ZWY3M2I1ZWQyOTgwMjZkYjdlNWE3MjM0YjM5N2Q0MjAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvaW9zL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
S2l0L2lvcy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxNy0wMS0xNCAgRGFyaW4gQWRs
ZXIgIDxkYXJpbkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIFBhc3NSZWZQdHIgZnJvbSAi
bG9hZGVyIiBkaXJlY3Rvcnkgb2YgV2ViQ29yZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY3MDU1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnRJT1Mu
aDogVXBkYXRlZCBydW5PcGVuUGFuZWwgdG8gdGFrZSByZWZlcmVuY2VzLgorICAgICAgICBNYWRl
IGNsYXNzIGZpbmFsIGFuZCBtb3N0IGZ1bmN0aW9ucyBwcml2YXRlIGFuZCBmaW5hbC4KKyAgICAg
ICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnRJT1MubW06CisgICAgICAgIChXZWJD
aHJvbWVDbGllbnRJT1M6OnJ1bk9wZW5QYW5lbCk6IFVwZGF0ZWQgdG8gdGFrZSByZWZlcmVuY2Vz
LgorCiAyMDE2LTEyLTMwICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KIAogICAgICAg
ICBSZW1vdmUgUGFzc1JlZlB0ciB1c2UgZnJvbSB0aGUgImRvbSIgZGlyZWN0b3J5LCByZWxhdGVk
IGNsZWFudXAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZyBiL1NvdXJj
ZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwppbmRleCA4ODZkOWNlYmE4N2Q3MzY5ZWE3YjMyNjlmMzlm
YWVlNTFlZTIxODczLi5kZWIwZmI2MzAwYTg2OTg5MWZhYzlhM2JiNDZlMGQ3YzlhNmU3ZDk1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktp
dC9tYWMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsODkgQEAKKzIwMTctMDEtMTQgIERhcmluIEFkbGVy
ICA8ZGFyaW5AYXBwbGUuY29tPgorCisgICAgICAgIFJlbW92ZSBQYXNzUmVmUHRyIGZyb20gImxv
YWRlciIgZGlyZWN0b3J5IG9mIFdlYkNvcmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE2NzA1NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50Lmg6IFVw
ZGF0ZWQgZm9yIGNoYW5nZXMgdG8gQ2hyb21lQ2xpZW50LgorICAgICAgICBBbHNvIG1hZGUgY2xh
c3MgZmluYWwgYW5kIG1vc3QgZnVuY3Rpb25zIHByaXZhdGUgYW5kIGZpbmFsLgorICAgICAgICAq
IFdlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5tbToKKyAgICAgICAgKFdlYkNocm9tZUNs
aWVudDo6cnVuT3BlblBhbmVsKTogVXBkYXRlZCB0byB0YWtlIHJlZmVyZW5jZXMuCisKKyAgICAg
ICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuaDogVXBkYXRlZCBmb3IgY2hhbmdl
cyB0byBFZGl0b3JDbGllbnQuCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xp
ZW50Lm1tOgorICAgICAgICAoLVtXZWJVbmRvU3RlcCBpbml0V2l0aFVuZG9TdGVwOl0pOiBUYWtl
IHJlZmVyZW5jZSBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgICgrW1dlYlVuZG9TdGVw
IHN0ZXBXaXRoVW5kb1N0ZXA6XSk6IERpdHRvLgorICAgICAgICAoLVtXZWJVbmRvU3RlcCBzdGVw
XSk6IFJldHVybiByZWZlcmVuY2UgaW5zdGVhZCBvZiBwb2ludGVyLgorICAgICAgICAoLVtXZWJF
ZGl0b3JVbmRvVGFyZ2V0IHVuZG9FZGl0aW5nOl0pOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisg
ICAgICAgICgtW1dlYkVkaXRvclVuZG9UYXJnZXQgcmVkb0VkaXRpbmc6XSk6IERpdHRvLgorICAg
ICAgICAoV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9PclJlZG9TdGVwKTogVGFrZSByZWZl
cmVuY2UgaW5zdGVhZCBvZgorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViRWRpdG9y
Q2xpZW50OjpyZWdpc3RlclVuZG9TdGVwKTogRGl0dG8uCisgICAgICAgIChXZWJFZGl0b3JDbGll
bnQ6OnJlZ2lzdGVyUmVkb1N0ZXApOiBEaXR0by4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0
L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lmg6IFVwZGF0ZWQgZm9yIGNoYW5nZXMgdG8KKyAgICAgICAg
RnJhbWVMb2FkZXJDbGllbnQsIG1hcmtlZCBmdW5jdGlvbnMgZmluYWwgaW5zdGVhZCBvZiBvdmVy
cmlkZS4KKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5tbToK
KyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5l
d1dpbmRvd0FjdGlvbik6IFRha2UKKyAgICAgICAgcG9pbnRlciBpbnN0ZWFkIG9mIFBhc3NSZWZQ
dHIuCisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lG
b3JOYXZpZ2F0aW9uQWN0aW9uKTogRGl0dG8uCisgICAgICAgIChtYWtlRm9ybUZpZWxkVmFsdWVz
RGljdGlvbmFyeSk6IFRha2UgYSByZWZlcmVuY2UuCisgICAgICAgIChXZWJGcmFtZUxvYWRlckNs
aWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KTogVGFrZSBSZWYmJiBpbnN0ZWFkCisg
ICAgICAgIG9mIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hXaWxsU3VibWl0Rm9ybSk6IFRha2UgYSByZWZlcmVuY2UgaW5zdGVhZAorICAgICAgICBv
ZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmFjdGlvbkRpY3Rp
b25hcnkpOiBUYWtlIGEgcG9pbnRlciBpbnN0ZWFkIG9mIFBhc3NSZVB0ci4KKyAgICAgICAgKFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVGcmFtZSk6IFRha2UgYSByZWZlcmVuY2UgaW5zdGVh
ZCBvZiBhIHBvaW50ZXIuCisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlUGx1
Z2luKTogRGl0dG8uCisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlSmF2YUFw
cGxldFdpZGdldCk6IERpdHRvLgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0
ZU5ldHdvcmtpbmdDb250ZXh0KTogRGl0dG8uCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9X
ZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0Lmg6IFVzZSBSZWYgaW5zdGVhZCBvZiBQYXNzUmVmUHRy
LgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQubW06
IFR3ZWFrIHN0eWxlIGEgYml0LgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViT3BlblBh
bmVsUmVzdWx0TGlzdGVuZXIuaDogVGFrZSBhIHJlZmVyZW5jZSBpbnN0ZWFkIG9mCisgICAgICAg
IFBhc3NSZWZQdHIuIFVzZSBSZWZQdHIgZm9yIGNsYXNzIGZpZWxkLgorICAgICAgICAqIFdlYkNv
cmVTdXBwb3J0L1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLm1tOgorICAgICAgICAoLVtXZWJP
cGVuUGFuZWxSZXN1bHRMaXN0ZW5lciBkZWFsbG9jXSk6IERlbGV0ZWQuIENvbXBpbGVyIHdpbGwg
bm93IGRvIGl0CisgICAgICAgIGNvcnJlY3RseSB3aXRob3V0IHVzIGRlY2xhcmluZyBhbnl0aGlu
ZyBleHBsaWNpdGx5LgorICAgICAgICAoLVtXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lciBjYW5j
ZWxdKTogR2V0IHJpZCBvZiBoYW5kLXdyaXR0ZW4gZGVyZWYgY29kZSwKKyAgICAgICAgYW5kIGxl
dCBSZWZQdHIgZG8gdGhlIHdvcmsuCisgICAgICAgICgtW1dlYk9wZW5QYW5lbFJlc3VsdExpc3Rl
bmVyIGNob29zZUZpbGVuYW1lOl0pOiBEaXR0by4KKyAgICAgICAgKC1bV2ViT3BlblBhbmVsUmVz
dWx0TGlzdGVuZXIgY2hvb3NlRmlsZW5hbWVzOl0pOiBEaXR0by4KKyAgICAgICAgKC1bV2ViT3Bl
blBhbmVsUmVzdWx0TGlzdGVuZXIgY2hvb3NlRmlsZW5hbWVzOmRpc3BsYXlTdHJpbmc6aWNvbklt
YWdlOl0pOgorICAgICAgICBSZXdyb3RlIHRvIHVzZSBhIG1vZGVybiBPYmplY3RpdmUtQyBmb3Ig
bG9vcCwgcmVzZXJ2ZUluaXRpYWxDYXBhY2l0eSwKKyAgICAgICAgYW5kIHVuY2hlY2tlZEFwcGVu
ZC4KKworICAgICAgICAqIFdlYlZpZXcvV2ViQXJjaGl2ZS5tbToKKyAgICAgICAgKC1bV2ViQXJj
aGl2ZSBpbml0V2l0aE1haW5SZXNvdXJjZTpzdWJyZXNvdXJjZXM6c3ViZnJhbWVBcmNoaXZlczpd
KToKKyAgICAgICAgVXBkYXRlZCBmb3IgY2hhbmdlcyB0byBMZWdhY3lXZWJBcmNoaXZlLgorICAg
ICAgICAoLVtXZWJBcmNoaXZlIG1haW5SZXNvdXJjZV0pOiBEaXR0by4KKyAgICAgICAgKC1bV2Vi
QXJjaGl2ZSBzdWJyZXNvdXJjZXNdKTogRGl0dG8uCisgICAgICAgICgtW1dlYkFyY2hpdmUgc3Vi
ZnJhbWVBcmNoaXZlc10pOiBEaXR0by4KKworICAgICAgICAqIFdlYlZpZXcvV2ViRGF0YVNvdXJj
ZS5tbToKKyAgICAgICAgKC1bV2ViRGF0YVNvdXJjZSBfYWRkU3ViZnJhbWVBcmNoaXZlczpdKTog
VXNlIGEgbW9kZXJuIE9iamVjdGl2ZS1DIGZvciBsb29wCisgICAgICAgIGluc3RlYWQgb2YgTlNF
bnVtZXJhdG9yLgorICAgICAgICAoLVtXZWJEYXRhU291cmNlIF9maWxlV3JhcHBlckZvclVSTDpd
KTogVXNlIGF1dG8uCisgICAgICAgICgtW1dlYkRhdGFTb3VyY2UgX2RvY3VtZW50RnJhZ21lbnRX
aXRoQXJjaGl2ZTpdKTogUGFzcyBhIHJlZmVyZW5jZS4KKyAgICAgICAgKC1bV2ViRGF0YVNvdXJj
ZSBtYWluUmVzb3VyY2VdKTogRGl0dG8uCisgICAgICAgICgtW1dlYkRhdGFTb3VyY2Ugc3VicmVz
b3VyY2VzXSk6IERpdHRvLgorICAgICAgICAoLVtXZWJEYXRhU291cmNlIHN1YnJlc291cmNlRm9y
VVJMOl0pOiBEaXR0by4KKyAgICAgICAgKC1bV2ViRGF0YVNvdXJjZSBhZGRTdWJyZXNvdXJjZTpd
KTogRGl0dG8uCisKKyAgICAgICAgKiBXZWJWaWV3L1dlYlJlc291cmNlLm1tOgorICAgICAgICAo
LVtXZWJSZXNvdXJjZVByaXZhdGUgaW5pdFdpdGhDb3JlUmVzb3VyY2U6XSk6IFRha2UgUmVmJiYg
aW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoLVtXZWJSZXNvdXJjZVByaXZhdGUgZGVh
bGxvY10pOiBSZW1vdmUgZXhwbGljaXQgZGVyZWYgc2luY2UgUmVmUHRyIHdpbGwgbm93IHRha2UK
KyAgICAgICAgY2FyZSBvZiBpdAorICAgICAgICAoLVtXZWJSZXNvdXJjZSBpbml0V2l0aENvZGVy
Ol0pOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoLVtXZWJSZXNvdXJjZSBlbmNvZGVXaXRo
Q29kZXI6XSk6IFVwZGF0ZWQgc2luY2UgY29yZVJlc291cmNlIGlzIG5vdyBSZWZQdHIuCisgICAg
ICAgICgtW1dlYlJlc291cmNlIF9pbml0V2l0aENvcmVSZXNvdXJjZTpdKTogVGFrZSBSZWYmJiBp
bnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgICgtW1dlYlJlc291cmNlIF9jb3JlUmVzb3Vy
Y2VdKTogUmV0dXJuIHJlZmVyZW5jZSByYXRoZXIgdGhhbiBwb2ludGVyLgorICAgICAgICAoLVtX
ZWJSZXNvdXJjZSBfaW5pdFdpdGhEYXRhOlVSTDpNSU1FVHlwZTp0ZXh0RW5jb2RpbmdOYW1lOmZy
YW1lTmFtZTpyZXNwb25zZTpjb3B5RGF0YTpdKToKKyAgICAgICAgQWRkZWQgY29kZSB0byBoYW5k
bGUgdGhlIG51bGwgY2FzZSBhbmQgcGFzcyBhIHJlZmVyZW5jZSByYXRoZXIgdGhhbiBhIHBvaW50
ZXIuCisgICAgICAgICogV2ViVmlldy9XZWJSZXNvdXJjZUludGVybmFsLmg6IFVwZGF0ZWQgZm9y
IHRoZSBhYm92ZS4KKwogMjAxNy0wMS0xMyAgSm9zZXBoIFBlY29yYXJvICA8cGVjb3Jhcm9AYXBw
bGUuY29tPgogCiAgICAgICAgIFJlbW92ZSBFTkFCTEUoREVUQUlMU19FTEVNRU5UKSBndWFyZHMK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCA3Yjg5M2IxMmRhMDQzMzA1N2ZjYjAyYTMzZTkzYTNjZjE5NmVhNDVmLi4z
NjA3YzdkMGUxMzViNDk0YzMxODBiODAwMzA3ZDE3NzhlNzUyOWRlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTE0IEBACisyMDE3LTAxLTE0ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4K
KworICAgICAgICBSZW1vdmUgUGFzc1JlZlB0ciBmcm9tICJsb2FkZXIiIGRpcmVjdG9yeSBvZiBX
ZWJDb3JlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
NjcwNTUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IFNoYXJlZC9BUElXZWJBcmNoaXZlLmg6IFVzZSBSZWZQdHImJiBpbnN0ZWFkIG9mIFBhc3NSZWZQ
dHIuCisgICAgICAgICogU2hhcmVkL0FQSVdlYkFyY2hpdmUubW06CisgICAgICAgIChBUEk6Oldl
YkFyY2hpdmU6OmNyZWF0ZSk6IERpdHRvLgorICAgICAgICAoQVBJOjpXZWJBcmNoaXZlOjpXZWJB
cmNoaXZlKTogRGl0dG8uCisgICAgICAgIChBUEk6OldlYkFyY2hpdmU6OnN1YnJlc291cmNlcyk6
IERpdHRvLgorICAgICAgICAoQVBJOjpXZWJBcmNoaXZlOjpzdWJmcmFtZUFyY2hpdmVzKTogRGl0
dG8uCisKKyAgICAgICAgKiBTaGFyZWQvVGV4dENoZWNrZXJTdGF0ZS5oOiBJbml0aWFsaXplIGRh
dGEgbWVtYmVycyBzbyBjbGFzc2VzCisgICAgICAgIHVzaW5nIHRoaXMgd29uJ3QgaGF2ZSB0byBl
eHBsaWNpdGx5IGluaXRhbGl6ZSB0aGVtLgorCisgICAgICAgICogVUlQcm9jZXNzL1dlYkljb25E
YXRhYmFzZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkljb25EYXRhYmFzZTo6c2V0SWNvbkRh
dGFGb3JJY29uVVJMKTogUGFzcyBhIHJhdworICAgICAgICBwb2ludGVyIHRvIFdlYkNvcmUuCisK
KyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lmg6IFJlbW92ZWQgZm9yd2FyZCBkZWNs
YXJhdGlvbiBvZgorICAgICAgICBTdHJpbmdQYWlyVmVjdG9yLCBub3QgbmVlZGVkIGhlcmUuCisK
KyAgICAgICAgKiBXZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5j
cHA6CisgICAgICAgIChXZWJLaXQ6OldlYkljb25EYXRhYmFzZVByb3h5OjpXZWJJY29uRGF0YWJh
c2VQcm94eSk6IFRha2UgYSByZWZlcmVuY2UuCisgICAgICAgIChXZWJLaXQ6OldlYkljb25EYXRh
YmFzZVByb3h5OjpyZXRhaW5JY29uRm9yUGFnZVVSTCk6IFVwZGF0ZWQgZm9yIHJlZmVyZW5jZS4K
KyAgICAgICAgKFdlYktpdDo6V2ViSWNvbkRhdGFiYXNlUHJveHk6OnJlbGVhc2VJY29uRm9yUGFn
ZVVSTCk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJJY29uRGF0YWJhc2VQcm94eTo6c3lu
Y2hyb25vdXNJY29uRm9yUGFnZVVSTCk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJJY29u
RGF0YWJhc2VQcm94eTo6bG9hZERlY2lzaW9uRm9ySWNvblVSTCk6IERpdHRvLgorICAgICAgICAo
V2ViS2l0OjpXZWJJY29uRGF0YWJhc2VQcm94eTo6cmVjZWl2ZWRJY29uTG9hZERlY2lzaW9uKTog
RGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkljb25EYXRhYmFzZVByb3h5OjppY29uRGF0YUZv
ckljb25VUkwpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViSWNvbkRhdGFiYXNlUHJveHk6
OnNldEljb25VUkxGb3JQYWdlVVJMKTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkljb25E
YXRhYmFzZVByb3h5OjpzZXRJY29uRGF0YUZvckljb25VUkwpOiBEaXR0by4KKyAgICAgICAgKiBX
ZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5oOiBVcGRhdGVkIGZv
ciB0aGUgYWJvdmUuCisgICAgICAgIE1hcmtlZCB0aGUgY2xhc3MgZmluYWwsIG1hZGUgbW9zdCBm
dW5jdGlvbnMgcHJpdmF0ZSBhbmQgZmluYWwuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVj
dGVkQnVuZGxlL0luamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbi5jcHA6CisgICAgICAgIChX
ZWJLaXQ6OkluamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbjo6SW5qZWN0ZWRCdW5kbGVOYXZp
Z2F0aW9uQWN0aW9uKToKKyAgICAgICAgUmVtb3ZlZCBhc3NlcnRpb24gdGhhdCBhIHBvaW50ZXIg
aXMgbm9uLW51bGwgc2luY2UgdGhhdCBwb2ludGVyIGlzIG5vdyBhCisgICAgICAgIHJlZmVyZW5j
ZS4gTGVmdCB1c2Ugb2YgUGFzc1JlZlB0ciBoZXJlIGZvciBub3cuegorCisgICAgICAgICogV2Vi
UHJvY2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6
V2ViTG9hZGVyU3RyYXRlZ3k6OnNjaGVkdWxlTG9hZCk6IFVwZGF0ZWQgc2luY2UgYXBwbGljYXRp
b24gY2FjaGUKKyAgICAgICAgaG9zdCBpcyBub3cgYSByZWZlcmVuY2UgcmF0aGVyIHRobmEgYSBw
b2ludGVyLgorICAgICAgICAqIFdlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUxvYWRlci5j
cHA6CisgICAgICAgIChXZWJLaXQ6OldlYlJlc291cmNlTG9hZGVyOjp3aWxsU2VuZFJlcXVlc3Qp
OiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViUmVzb3VyY2VMb2FkZXI6OmRpZFJlY2VpdmVS
ZXNwb25zZSk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJSZXNvdXJjZUxvYWRlcjo6ZGlk
RmFpbFJlc291cmNlTG9hZCk6IERpdHRvLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9QbHVnaW5z
L1BsdWdpblZpZXcuY3BwOgorICAgICAgICAoV2ViS2l0OjpidWlsZEhUVFBIZWFkZXJzKTogR290
IHJpZCBvZiB1bm5lZWRlZCB1c2Ugb2YgU3RyaW5nOjpmb3JtYXQuCisgICAgICAgIChXZWJLaXQ6
OlBsdWdpblZpZXc6OmNyZWF0ZSk6IFRha2UgYSByZWZlcmVuY2UgaW5zdGVhZCBvZiBQYXNzUmVm
UHRyLgorICAgICAgICAoV2ViS2l0OjpQbHVnaW5WaWV3OjpQbHVnaW5WaWV3KTogRGl0dG8uIEFs
c28gbW92ZWQgbXVjaCBvZiB0aGUgZGF0YQorICAgICAgICBtZW1iZXIgaW5pdGlhbGl6YXRpb24g
dG8gdGhlIGNsYXNzIGRlZmluaXRpb24uCisgICAgICAgIChXZWJLaXQ6OlBsdWdpblZpZXc6OnJl
Y3JlYXRlQW5kSW5pdGlhbGl6ZSk6IFRha2UgUmVmJiYgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgor
ICAgICAgICAoV2ViS2l0OjpQbHVnaW5WaWV3OjptYW51YWxMb2FkRGlkUmVjZWl2ZVJlc3BvbnNl
KTogVXBkYXRlZCBmb3IgY2hhbmdlIHRvCisgICAgICAgIE1hbnVhbFN0cmVhbVN0YXRlIGVudW1l
cmF0aW9uLgorICAgICAgICAoV2ViS2l0OjpQbHVnaW5WaWV3OjptYW51YWxMb2FkRGlkUmVjZWl2
ZURhdGEpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6UGx1Z2luVmlldzo6bWFudWFsTG9hZERp
ZEZpbmlzaExvYWRpbmcgRGl0dG8uKToKKyAgICAgICAgKFdlYktpdDo6UGx1Z2luVmlldzo6bWFu
dWFsTG9hZERpZEZhaWwpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6UGx1Z2luVmlldzo6bGl2
ZVJlc291cmNlRGF0YSk6IFJldHVybiBSZWZQdHIgaW5zZWFkIG9mIFBhc3NSZWZQdHIuCisgICAg
ICAgIChXZWJLaXQ6OlBsdWdpblZpZXc6OnJlZGVsaXZlck1hbnVhbFN0cmVhbSk6IFVwZGF0ZWQg
Zm9yIE1hbnVhbFN0cmVhbVN0YXRlLgorICAgICAgICAqIFdlYlByb2Nlc3MvUGx1Z2lucy9QbHVn
aW5WaWV3Lmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4gQWxzbyBjaGFuZ2VkCisgICAgICAgIE1h
bnVhbFN0cmVhbVN0YXRlIGludG8gYW4gZW51bSBjbGFzcy4KKworICAgICAgICAqIFdlYlByb2Nl
c3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcDogQ2hhbmdlZCBtX3BhZ2UgdG8g
YSByZWZlcmVuY2UuCisgICAgICAgIChXZWJLaXQ6OldlYkNocm9tZUNsaWVudDo6cnVuT3BlblBh
bmVsKTogVGFrZSBib3RoIGFyZ3VtZW50cyBhcyByZWZlcmVuY2VzLgorICAgICAgICAqIFdlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50Lmg6IFVwZGF0ZWQgZm9yIHRoZSBh
Ym92ZS4KKworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xp
ZW50LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9T
dGVwKTogVGFrZSByZWZlcmVuY2UgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2Vi
S2l0OjpXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyUmVkb1N0ZXApOiBEaXR0by4KKyAgICAgICAg
KiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oOiBVcGRhdGVkIGZv
ciB0aGUgYWJvdmUKKworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJh
bWVMb2FkZXJDbGllbnQuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVu
dDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24pOgorICAgICAgICBVcGRh
dGVkIGZvciBjaGFuZ2UgdG8gRnJhbWVMb2FkZXJDbGllbnQuCisgICAgICAgIChXZWJLaXQ6Oldl
YkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rp
b24pOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3Bh
dGNoV2lsbFNlbmRTdWJtaXRFdmVudCk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFt
ZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybSk6IERpdHRvLgorICAgICAgICAo
V2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlRnJhbWUpOiBEaXR0by4KKyAgICAg
ICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbik6IERpdHRvLgor
ICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6cmVjcmVhdGVQbHVnaW4pOiBE
aXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUphdmFB
cHBsZXRXaWRnZXQpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6Oldl
YkZyYW1lTG9hZGVyQ2xpZW50OjpkaWRSZXF1ZXN0QXV0b2NvbXBsZXRlKTogRGl0dG8uCisgICAg
ICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oOiBV
cGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2Vi
UGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OldlYlBhZ2UpOiBQYXNzIHJlZmVy
ZW5jZS4KKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6Y3JlYXRlUGx1Z2luKTogUmV0dXJuIFJl
ZlB0ciBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OmZy
b21Db3JlUGFnZSk6IFVwZGF0ZWQgZm9yIGNoYW5nZSB0byBXZWJDaHJvbWVDbGllbnQuCisgICAg
ICAgIChXZWJLaXQ6OldlYlBhZ2U6OnNldEhlYWRlclBhZ2VCYW5uZXIpOiBUYWtlIHBvaW50ZXIg
aW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpzZXRGb290
ZXJQYWdlQmFubmVyKTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnNldEFjdGl2
ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyKTogVGFrZSBSZWYmJiBpbnN0ZWFkIG9mCisgICAgICAg
IFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OmN1cnJlbnRTZWxlY3Rpb25B
c1JhbmdlKTogUmV0dXJuIFJlZlB0ciBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgIChX
ZWJLaXQ6OldlYlBhZ2U6OnJhbmdlRnJvbUVkaXRpbmdSYW5nZSk6IERpdHRvLgorICAgICAgICAq
IFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKwor
ICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9tYWMvV2ViUGFnZU1hYy5tbToKKyAgICAgICAg
KFdlYktpdDo6V2ViUGFnZTo6Y2FjaGVkUmVzcG9uc2VEYXRhRm9yVVJMKTogUmV0dXJuIFJlZlB0
ciBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnNldFRv
cE92ZXJoYW5nSW1hZ2UpOiBUYWtlIHJhdyBwb2ludGVyIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4K
KyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6c2V0Qm90dG9tT3ZlcmhhbmdJbWFnZSk6IERpdHRv
LgorCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6V2ViUHJvY2Vzczo6V2ViUHJvY2Vzcyk6IFBhc3MgYSByZWZlcmVuY2UuIE1vdmUgbW9zdCBp
bml0aWFsaXphdGlvbiB0bworICAgICAgICB0aGUgY2xhc3MgZGVmaW5pdGlvbi4KKyAgICAgICAg
KiBXZWJQcm9jZXNzL1dlYlByb2Nlc3MuaDogVXBkYWVkIGZvciB0aGUgYWJvdmUuCisKIDIwMTct
MDEtMTQgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CiAKICAgICAgICAg
UmVtb3ZlIHVudXNlZCBXS1ZpZXcgaW5pdGlhbGl6ZXIgcGFyYW1ldGVyCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3Vt
ZW50LmNwcAppbmRleCAyOWRlMzcxMjRjZGE1MWE4YmMwYjIyZWE1MDVhNTdhZDg4ZTI5Njc2Li41
NmE3OWY0NDNhYjI5N2JhMjBkMzQzZDIzZDUxNDVjYmEwZGU0ZjM1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1
bWVudC5jcHAKQEAgLTMxMzcsNyArMzEzNyw3IEBAIHZvaWQgRG9jdW1lbnQ6OnByb2Nlc3NIdHRw
RXF1aXYoY29uc3QgU3RyaW5nJiBlcXVpdiwgY29uc3QgU3RyaW5nJiBjb250ZW50LCBib29sCiAg
ICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgY29tcGxldGVkVVJMID0gY29tcGxldGVV
UkwodXJsU3RyaW5nKTsKICAgICAgICAgICAgIGlmICghcHJvdG9jb2xJc0phdmFTY3JpcHQoY29t
cGxldGVkVVJMKSkKLSAgICAgICAgICAgICAgICBmcmFtZS0+bmF2aWdhdGlvblNjaGVkdWxlcigp
LnNjaGVkdWxlUmVkaXJlY3QodGhpcywgZGVsYXksIGNvbXBsZXRlZFVSTCk7CisgICAgICAgICAg
ICAgICAgZnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZVJlZGlyZWN0KCp0aGlz
LCBkZWxheSwgY29tcGxldGVkVVJMKTsKICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAg
ICAgIFN0cmluZyBtZXNzYWdlID0gIlJlZnVzZWQgdG8gcmVmcmVzaCAiICsgbV91cmwuc3RyaW5n
Q2VudGVyRWxsaXBzaXplZFRvTGVuZ3RoKCkgKyAiIHRvIGEgamF2YXNjcmlwdDogVVJMIjsKICAg
ICAgICAgICAgICAgICBhZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpTZWN1cml0eSwg
TWVzc2FnZUxldmVsOjpFcnJvciwgbWVzc2FnZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9lZGl0aW5nL0NvbXBvc2l0ZUVkaXRDb21tYW5kLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRp
bmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuY3BwCmluZGV4IGNjZTljYWFlYzFhMDFlZTlmNDhiM2Fk
YTU4MmFmYTJhNzExYzYxODAuLmY3ZmQ0ODQ4YjdlODM2M2UxZDliMDFlYTM5Nzc4YWJiNWJjOGQ0
ODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1h
bmQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQu
Y3BwCkBAIC0yMzksNyArMjM5LDcgQEAgdm9pZCBFZGl0Q29tbWFuZENvbXBvc2l0aW9uOjp1bmFw
cGx5KCkKICAgICBmb3IgKHNpemVfdCBpID0gc2l6ZTsgaTsgLS1pKQogICAgICAgICBtX2NvbW1h
bmRzW2kgLSAxXS0+ZG9VbmFwcGx5KCk7CiAKLSAgICBmcmFtZS0+ZWRpdG9yKCkudW5hcHBsaWVk
RWRpdGluZyh0aGlzKTsKKyAgICBmcmFtZS0+ZWRpdG9yKCkudW5hcHBsaWVkRWRpdGluZygqdGhp
cyk7CiAKICAgICBpZiAoQVhPYmplY3RDYWNoZTo6YWNjZXNzaWJpbGl0eUVuYWJsZWQoKSkKICAg
ICAgICAgbV9yZXBsYWNlZFRleHQucG9zdFRleHRTdGF0ZUNoYW5nZU5vdGlmaWNhdGlvbkZvclVu
YXBwbHkobV9kb2N1bWVudC0+ZXhpc3RpbmdBWE9iamVjdENhY2hlKCkpOwpAQCAtMjY1LDcgKzI2
NSw3IEBAIHZvaWQgRWRpdENvbW1hbmRDb21wb3NpdGlvbjo6cmVhcHBseSgpCiAgICAgZm9yIChh
dXRvJiBjb21tYW5kIDogbV9jb21tYW5kcykKICAgICAgICAgY29tbWFuZC0+ZG9SZWFwcGx5KCk7
CiAKLSAgICBmcmFtZS0+ZWRpdG9yKCkucmVhcHBsaWVkRWRpdGluZyh0aGlzKTsKKyAgICBmcmFt
ZS0+ZWRpdG9yKCkucmVhcHBsaWVkRWRpdGluZygqdGhpcyk7CiAKICAgICBpZiAoQVhPYmplY3RD
YWNoZTo6YWNjZXNzaWJpbGl0eUVuYWJsZWQoKSkKICAgICAgICAgbV9yZXBsYWNlZFRleHQucG9z
dFRleHRTdGF0ZUNoYW5nZU5vdGlmaWNhdGlvbkZvclJlYXBwbHkobV9kb2N1bWVudC0+ZXhpc3Rp
bmdBWE9iamVjdENhY2hlKCkpOwpAQCAtNDE2LDE0ICs0MTYsMTQgQEAgRWRpdENvbW1hbmRDb21w
b3NpdGlvbiogQ29tcG9zaXRlRWRpdENvbW1hbmQ6OmNvbXBvc2l0aW9uKCkgY29uc3QKICAgICBy
ZXR1cm4gbnVsbHB0cjsKIH0KIAotRWRpdENvbW1hbmRDb21wb3NpdGlvbiogQ29tcG9zaXRlRWRp
dENvbW1hbmQ6OmVuc3VyZUNvbXBvc2l0aW9uKCkKK0VkaXRDb21tYW5kQ29tcG9zaXRpb24mIENv
bXBvc2l0ZUVkaXRDb21tYW5kOjplbnN1cmVDb21wb3NpdGlvbigpCiB7Ci0gICAgQ29tcG9zaXRl
RWRpdENvbW1hbmQqIGNvbW1hbmQgPSB0aGlzOwotICAgIHdoaWxlIChjb21tYW5kICYmIGNvbW1h
bmQtPnBhcmVudCgpKQotICAgICAgICBjb21tYW5kID0gY29tbWFuZC0+cGFyZW50KCk7CisgICAg
YXV0byogY29tbWFuZCA9IHRoaXM7CisgICAgd2hpbGUgKGF1dG8qIHBhcmVudCA9IGNvbW1hbmQt
PnBhcmVudCgpKQorICAgICAgICBjb21tYW5kID0gcGFyZW50OwogICAgIGlmICghY29tbWFuZC0+
bV9jb21wb3NpdGlvbikKICAgICAgICAgY29tbWFuZC0+bV9jb21wb3NpdGlvbiA9IEVkaXRDb21t
YW5kQ29tcG9zaXRpb246OmNyZWF0ZShkb2N1bWVudCgpLCBzdGFydGluZ1NlbGVjdGlvbigpLCBl
bmRpbmdTZWxlY3Rpb24oKSwgZWRpdGluZ0FjdGlvbigpKTsKLSAgICByZXR1cm4gY29tbWFuZC0+
bV9jb21wb3NpdGlvbi5nZXQoKTsKKyAgICByZXR1cm4gKmNvbW1hbmQtPm1fY29tcG9zaXRpb247
CiB9CiAKIGJvb2wgQ29tcG9zaXRlRWRpdENvbW1hbmQ6OmlzQ3JlYXRlTGlua0NvbW1hbmQoKSBj
b25zdApAQCAtNDY1LDcgKzQ2NSw3IEBAIHZvaWQgQ29tcG9zaXRlRWRpdENvbW1hbmQ6OmFwcGx5
Q29tbWFuZFRvQ29tcG9zaXRlKFBhc3NSZWZQdHI8RWRpdENvbW1hbmQ+IHBycENvCiAgICAgY29t
bWFuZC0+ZG9BcHBseSgpOwogICAgIGlmIChjb21tYW5kLT5pc1NpbXBsZUVkaXRDb21tYW5kKCkp
IHsKICAgICAgICAgY29tbWFuZC0+c2V0UGFyZW50KG51bGxwdHIpOwotICAgICAgICBlbnN1cmVD
b21wb3NpdGlvbigpLT5hcHBlbmQodG9TaW1wbGVFZGl0Q29tbWFuZChjb21tYW5kLmdldCgpKSk7
CisgICAgICAgIGVuc3VyZUNvbXBvc2l0aW9uKCkuYXBwZW5kKHRvU2ltcGxlRWRpdENvbW1hbmQo
Y29tbWFuZC5nZXQoKSkpOwogICAgIH0KICAgICBtX2NvbW1hbmRzLmFwcGVuZChXVEZNb3ZlKGNv
bW1hbmQpKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRl
RWRpdENvbW1hbmQuaCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1h
bmQuaAppbmRleCA4NWY0MThmN2RiOTE3Y2NmMDE0OGE2Zjc0ZWJjMzhiZWIwNTAzOWIxLi4wMjIx
ZGM5OTljY2ZlNmZjNTliMTgxYTlmZjc4MDk5YjZlMzVmM2I3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9lZGl0aW5nL0NvbXBvc2l0ZUVkaXRDb21tYW5kLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvZWRpdGluZy9Db21wb3NpdGVFZGl0Q29tbWFuZC5oCkBAIC0xMDUsNyArMTA1LDcgQEAgcHVi
bGljOgogICAgIHZvaWQgYXBwbHkoKTsKICAgICBib29sIGlzRmlyc3RDb21tYW5kKEVkaXRDb21t
YW5kKiBjb21tYW5kKSB7IHJldHVybiAhbV9jb21tYW5kcy5pc0VtcHR5KCkgJiYgbV9jb21tYW5k
cy5maXJzdCgpID09IGNvbW1hbmQ7IH0KICAgICBFZGl0Q29tbWFuZENvbXBvc2l0aW9uKiBjb21w
b3NpdGlvbigpIGNvbnN0OwotICAgIEVkaXRDb21tYW5kQ29tcG9zaXRpb24qIGVuc3VyZUNvbXBv
c2l0aW9uKCk7CisgICAgRWRpdENvbW1hbmRDb21wb3NpdGlvbiYgZW5zdXJlQ29tcG9zaXRpb24o
KTsKIAogICAgIHZpcnR1YWwgYm9vbCBpc0NyZWF0ZUxpbmtDb21tYW5kKCkgY29uc3Q7CiAgICAg
dmlydHVhbCBib29sIGlzVHlwaW5nQ29tbWFuZCgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0
b3IuY3BwCmluZGV4IDRkMzg0MWI2YjAxNzQxMzM3ZTMzZDIwMzE5OGI3NjUzZmZjM2M3ZjMuLjlm
OTc3NzQxOWEyNDA1ZjVlY2Q0ZWRjMzg3YzgxYjc0NjY4MTFmNmIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5n
L0VkaXRvci5jcHAKQEAgLTk5NSwyMyArOTk1LDIzIEBAIGJvb2wgRWRpdG9yOjp3aWxsVW5hcHBs
eUVkaXRpbmcoY29uc3QgRWRpdENvbW1hbmRDb21wb3NpdGlvbiYgY29tcG9zaXRpb24pIGNvbnN0
CiAgICAgcmV0dXJuIGRpc3BhdGNoQmVmb3JlSW5wdXRFdmVudHMoY29tcG9zaXRpb24uc3RhcnRp
bmdSb290RWRpdGFibGVFbGVtZW50KCksIGNvbXBvc2l0aW9uLmVuZGluZ1Jvb3RFZGl0YWJsZUVs
ZW1lbnQoKSwgImhpc3RvcnlVbmRvIik7CiB9CiAKLXZvaWQgRWRpdG9yOjp1bmFwcGxpZWRFZGl0
aW5nKFBhc3NSZWZQdHI8RWRpdENvbW1hbmRDb21wb3NpdGlvbj4gY21kKQordm9pZCBFZGl0b3I6
OnVuYXBwbGllZEVkaXRpbmcoRWRpdENvbW1hbmRDb21wb3NpdGlvbiYgY29tcG9zaXRpb24pCiB7
CiAgICAgZG9jdW1lbnQoKS51cGRhdGVMYXlvdXQoKTsKIAotICAgIG5vdGlmeVRleHRGcm9tQ29u
dHJvbHMoY21kLT5zdGFydGluZ1Jvb3RFZGl0YWJsZUVsZW1lbnQoKSwgY21kLT5lbmRpbmdSb290
RWRpdGFibGVFbGVtZW50KCkpOworICAgIG5vdGlmeVRleHRGcm9tQ29udHJvbHMoY29tcG9zaXRp
b24uc3RhcnRpbmdSb290RWRpdGFibGVFbGVtZW50KCksIGNvbXBvc2l0aW9uLmVuZGluZ1Jvb3RF
ZGl0YWJsZUVsZW1lbnQoKSk7CiAKLSAgICBWaXNpYmxlU2VsZWN0aW9uIG5ld1NlbGVjdGlvbihj
bWQtPnN0YXJ0aW5nU2VsZWN0aW9uKCkpOworICAgIFZpc2libGVTZWxlY3Rpb24gbmV3U2VsZWN0
aW9uKGNvbXBvc2l0aW9uLnN0YXJ0aW5nU2VsZWN0aW9uKCkpOwogICAgIGNoYW5nZVNlbGVjdGlv
bkFmdGVyQ29tbWFuZChuZXdTZWxlY3Rpb24sIEZyYW1lU2VsZWN0aW9uOjpkZWZhdWx0U2V0U2Vs
ZWN0aW9uT3B0aW9ucygpKTsKLSAgICBkaXNwYXRjaElucHV0RXZlbnRzKGNtZC0+c3RhcnRpbmdS
b290RWRpdGFibGVFbGVtZW50KCksIGNtZC0+ZW5kaW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCAi
aGlzdG9yeVVuZG8iKTsKKyAgICBkaXNwYXRjaElucHV0RXZlbnRzKGNvbXBvc2l0aW9uLnN0YXJ0
aW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCBjb21wb3NpdGlvbi5lbmRpbmdSb290RWRpdGFibGVF
bGVtZW50KCksICJoaXN0b3J5VW5kbyIpOwogCiAgICAgdXBkYXRlRWRpdG9yVUlOb3dJZlNjaGVk
dWxlZCgpOwogCi0gICAgbV9hbHRlcm5hdGl2ZVRleHRDb250cm9sbGVyLT5yZXNwb25kVG9VbmFw
cGxpZWRFZGl0aW5nKGNtZC5nZXQoKSk7CisgICAgbV9hbHRlcm5hdGl2ZVRleHRDb250cm9sbGVy
LT5yZXNwb25kVG9VbmFwcGxpZWRFZGl0aW5nKCZjb21wb3NpdGlvbik7CiAKICAgICBtX2xhc3RF
ZGl0Q29tbWFuZCA9IG51bGxwdHI7Ci0gICAgaWYgKGNsaWVudCgpKQotICAgICAgICBjbGllbnQo
KS0+cmVnaXN0ZXJSZWRvU3RlcChjbWQpOworICAgIGlmIChhdXRvKiBjbGllbnQgPSB0aGlzLT5j
bGllbnQoKSkKKyAgICAgICAgY2xpZW50LT5yZWdpc3RlclJlZG9TdGVwKGNvbXBvc2l0aW9uKTsK
ICAgICByZXNwb25kVG9DaGFuZ2VkQ29udGVudHMobmV3U2VsZWN0aW9uKTsKIH0KIApAQCAtMTAy
MCwyMSArMTAyMCwyMSBAQCBib29sIEVkaXRvcjo6d2lsbFJlYXBwbHlFZGl0aW5nKGNvbnN0IEVk
aXRDb21tYW5kQ29tcG9zaXRpb24mIGNvbXBvc2l0aW9uKSBjb25zdAogICAgIHJldHVybiBkaXNw
YXRjaEJlZm9yZUlucHV0RXZlbnRzKGNvbXBvc2l0aW9uLnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxl
bWVudCgpLCBjb21wb3NpdGlvbi5lbmRpbmdSb290RWRpdGFibGVFbGVtZW50KCksICJoaXN0b3J5
UmVkbyIpOwogfQogCi12b2lkIEVkaXRvcjo6cmVhcHBsaWVkRWRpdGluZyhQYXNzUmVmUHRyPEVk
aXRDb21tYW5kQ29tcG9zaXRpb24+IGNtZCkKK3ZvaWQgRWRpdG9yOjpyZWFwcGxpZWRFZGl0aW5n
KEVkaXRDb21tYW5kQ29tcG9zaXRpb24mIGNvbXBvc2l0aW9uKQogewogICAgIGRvY3VtZW50KCku
dXBkYXRlTGF5b3V0KCk7CiAKLSAgICBub3RpZnlUZXh0RnJvbUNvbnRyb2xzKGNtZC0+c3RhcnRp
bmdSb290RWRpdGFibGVFbGVtZW50KCksIGNtZC0+ZW5kaW5nUm9vdEVkaXRhYmxlRWxlbWVudCgp
KTsKKyAgICBub3RpZnlUZXh0RnJvbUNvbnRyb2xzKGNvbXBvc2l0aW9uLnN0YXJ0aW5nUm9vdEVk
aXRhYmxlRWxlbWVudCgpLCBjb21wb3NpdGlvbi5lbmRpbmdSb290RWRpdGFibGVFbGVtZW50KCkp
OwogCi0gICAgVmlzaWJsZVNlbGVjdGlvbiBuZXdTZWxlY3Rpb24oY21kLT5lbmRpbmdTZWxlY3Rp
b24oKSk7CisgICAgVmlzaWJsZVNlbGVjdGlvbiBuZXdTZWxlY3Rpb24oY29tcG9zaXRpb24uZW5k
aW5nU2VsZWN0aW9uKCkpOwogICAgIGNoYW5nZVNlbGVjdGlvbkFmdGVyQ29tbWFuZChuZXdTZWxl
Y3Rpb24sIEZyYW1lU2VsZWN0aW9uOjpkZWZhdWx0U2V0U2VsZWN0aW9uT3B0aW9ucygpKTsKLSAg
ICBkaXNwYXRjaElucHV0RXZlbnRzKGNtZC0+c3RhcnRpbmdSb290RWRpdGFibGVFbGVtZW50KCks
IGNtZC0+ZW5kaW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCAiaGlzdG9yeVJlZG8iKTsKKyAgICBk
aXNwYXRjaElucHV0RXZlbnRzKGNvbXBvc2l0aW9uLnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVu
dCgpLCBjb21wb3NpdGlvbi5lbmRpbmdSb290RWRpdGFibGVFbGVtZW50KCksICJoaXN0b3J5UmVk
byIpOwogICAgIAogICAgIHVwZGF0ZUVkaXRvclVJTm93SWZTY2hlZHVsZWQoKTsKIAogICAgIG1f
bGFzdEVkaXRDb21tYW5kID0gbnVsbHB0cjsKLSAgICBpZiAoY2xpZW50KCkpCi0gICAgICAgIGNs
aWVudCgpLT5yZWdpc3RlclVuZG9TdGVwKGNtZCk7CisgICAgaWYgKGF1dG8qIGNsaWVudCA9IHRo
aXMtPmNsaWVudCgpKQorICAgICAgICBjbGllbnQtPnJlZ2lzdGVyVW5kb1N0ZXAoY29tcG9zaXRp
b24pOwogICAgIHJlc3BvbmRUb0NoYW5nZWRDb250ZW50cyhuZXdTZWxlY3Rpb24pOwogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oIGIvU291cmNlL1dlYkNv
cmUvZWRpdGluZy9FZGl0b3IuaAppbmRleCA3MzMwZWJiMDNlYTg0MWE3YzhlMTBkYzNiMDgzYjc0
MTFkMDg5MTcxLi5iOGIzYjA2NmEzYTQyYTE1NWJkYTdjMzUwOTM1MDYxZjkwMmU3OWZmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2VkaXRpbmcvRWRpdG9yLmgKQEAgLTk5LDEwICs5OSwxMiBAQCBlbnVtIGNsYXNzIE1haWxC
bG9ja3F1b3RlSGFuZGxpbmcgewogfTsKIAogI2lmIFBMQVRGT1JNKENPQ09BKQorCiBzdHJ1Y3Qg
RnJhZ21lbnRBbmRSZXNvdXJjZXMgewogICAgIFJlZlB0cjxEb2N1bWVudEZyYWdtZW50PiBmcmFn
bWVudDsKLSAgICBWZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+IHJlc291cmNlczsKKyAg
ICBWZWN0b3I8UmVmPEFyY2hpdmVSZXNvdXJjZT4+IHJlc291cmNlczsKIH07CisKICNlbmRpZgog
CiBjbGFzcyBFZGl0b3IgewpAQCAtMjA2LDggKzIwOCw4IEBAIHB1YmxpYzoKICAgICBib29sIHdp
bGxSZWFwcGx5RWRpdGluZyhjb25zdCBFZGl0Q29tbWFuZENvbXBvc2l0aW9uJikgY29uc3Q7CiAK
ICAgICB2b2lkIGFwcGxpZWRFZGl0aW5nKFBhc3NSZWZQdHI8Q29tcG9zaXRlRWRpdENvbW1hbmQ+
KTsKLSAgICB2b2lkIHVuYXBwbGllZEVkaXRpbmcoUGFzc1JlZlB0cjxFZGl0Q29tbWFuZENvbXBv
c2l0aW9uPik7Ci0gICAgdm9pZCByZWFwcGxpZWRFZGl0aW5nKFBhc3NSZWZQdHI8RWRpdENvbW1h
bmRDb21wb3NpdGlvbj4pOworICAgIHZvaWQgdW5hcHBsaWVkRWRpdGluZyhFZGl0Q29tbWFuZENv
bXBvc2l0aW9uJik7CisgICAgdm9pZCByZWFwcGxpZWRFZGl0aW5nKEVkaXRDb21tYW5kQ29tcG9z
aXRpb24mKTsKICAgICB2b2lkIHVuYXBwbGllZFNwZWxsQ29ycmVjdGlvbihjb25zdCBWaXNpYmxl
U2VsZWN0aW9uJiBzZWxlY3Rpb25PZkNvcnJlY3RlZCwgY29uc3QgU3RyaW5nJiBjb3JyZWN0ZWQs
IGNvbnN0IFN0cmluZyYgY29ycmVjdGlvbik7CiAKICAgICAvLyBUaGlzIGlzIG9mZiBieSBkZWZh
dWx0LCBzaW5jZSBtb3N0IGVkaXRvcnMgd2FudCB0aGlzIGJlaGF2aW9yIChvcmlnaW5hbGx5IG1h
dGNoZWQgSUUgYnV0IG5vdCBGaXJlZm94KS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Vk
aXRpbmcvaW9zL0VkaXRvcklPUy5tbSBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvaW9zL0VkaXRv
cklPUy5tbQppbmRleCBjNWU4YzI5MTI0YmYwN2JhOTZjZTU0YzI3ZWNiOGJjZmY3YjU2NDdlLi45
NzA4ZTFlNGYxZTFhOTFmNWU0ODQxNDRmZmRiYTk3OTk2YjcxNDI3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9lZGl0aW5nL2lvcy9FZGl0b3JJT1MubW0KKysrIGIvU291cmNlL1dlYkNvcmUv
ZWRpdGluZy9pb3MvRWRpdG9ySU9TLm1tCkBAIC0zOTAsMjcgKzM5MCwyNSBAQCBib29sIEVkaXRv
cjo6V2ViQ29udGVudFJlYWRlcjo6cmVhZFdlYkFyY2hpdmUoU2hhcmVkQnVmZmVyKiBidWZmZXIp
CiAgICAgaWYgKCFidWZmZXIpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIFJlZlB0cjxM
ZWdhY3lXZWJBcmNoaXZlPiBhcmNoaXZlID0gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFVSTCgp
LCAqYnVmZmVyKTsKKyAgICBhdXRvIGFyY2hpdmUgPSBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUo
VVJMKCksICpidWZmZXIpOwogICAgIGlmICghYXJjaGl2ZSkKICAgICAgICAgcmV0dXJuIGZhbHNl
OwogCi0gICAgUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gbWFpblJlc291cmNlID0gYXJjaGl2ZS0+
bWFpblJlc291cmNlKCk7CisgICAgYXV0byogbWFpblJlc291cmNlID0gYXJjaGl2ZS0+bWFpblJl
c291cmNlKCk7CiAgICAgaWYgKCFtYWluUmVzb3VyY2UpCiAgICAgICAgIHJldHVybiBmYWxzZTsK
IAotICAgIGNvbnN0IFN0cmluZyYgdHlwZSA9IG1haW5SZXNvdXJjZS0+bWltZVR5cGUoKTsKLQot
ICAgIGlmIChmcmFtZS5sb2FkZXIoKS5jbGllbnQoKS5jYW5TaG93TUlNRVR5cGVBc0hUTUwodHlw
ZSkpIHsKLSAgICAgICAgLy8gRklYTUU6IFRoZSBjb2RlIGluIGNyZWF0ZUZyYWdtZW50QW5kQWRk
UmVzb3VyY2VzIGNhbGxzIHNldERlZmVyc0xvYWRpbmcodHJ1ZSkuIERvbid0IHdlIG5lZWQgdGhh
dCBoZXJlPwotICAgICAgICBpZiAoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciA9IGZyYW1lLmxvYWRl
cigpLmRvY3VtZW50TG9hZGVyKCkpCi0gICAgICAgICAgICBsb2FkZXItPmFkZEFsbEFyY2hpdmVS
ZXNvdXJjZXMoYXJjaGl2ZS5nZXQoKSk7CisgICAgYXV0byYgdHlwZSA9IG1haW5SZXNvdXJjZS0+
bWltZVR5cGUoKTsKKyAgICBpZiAoIWZyYW1lLmxvYWRlcigpLmNsaWVudCgpLmNhblNob3dNSU1F
VHlwZUFzSFRNTCh0eXBlKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgICAgIFN0cmlu
ZyBtYXJrdXBTdHJpbmcgPSBTdHJpbmc6OmZyb21VVEY4KG1haW5SZXNvdXJjZS0+ZGF0YSgpLmRh
dGEoKSwgbWFpblJlc291cmNlLT5kYXRhKCkuc2l6ZSgpKTsKLSAgICAgICAgYWRkRnJhZ21lbnQo
Y3JlYXRlRnJhZ21lbnRGcm9tTWFya3VwKCpmcmFtZS5kb2N1bWVudCgpLCBtYXJrdXBTdHJpbmcs
IG1haW5SZXNvdXJjZS0+dXJsKCksIERpc2FsbG93U2NyaXB0aW5nQW5kUGx1Z2luQ29udGVudCkp
OwotICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICB9CisgICAgLy8gRklYTUU6IFRoZSBjb2RlIGlu
IGNyZWF0ZUZyYWdtZW50QW5kQWRkUmVzb3VyY2VzIGNhbGxzIHNldERlZmVyc0xvYWRpbmcodHJ1
ZSkuIERvbid0IHdlIG5lZWQgdGhhdCBoZXJlPworICAgIGlmIChhdXRvKiBsb2FkZXIgPSBmcmFt
ZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKQorICAgICAgICBsb2FkZXItPmFkZEFsbEFyY2hp
dmVSZXNvdXJjZXMoKmFyY2hpdmUpOwogCi0gICAgcmV0dXJuIGZhbHNlOworICAgIGF1dG8gbWFy
a3VwU3RyaW5nID0gU3RyaW5nOjpmcm9tVVRGOChtYWluUmVzb3VyY2UtPmRhdGEoKS5kYXRhKCks
IG1haW5SZXNvdXJjZS0+ZGF0YSgpLnNpemUoKSk7CisgICAgYWRkRnJhZ21lbnQoY3JlYXRlRnJh
Z21lbnRGcm9tTWFya3VwKCpmcmFtZS5kb2N1bWVudCgpLCBtYXJrdXBTdHJpbmcsIG1haW5SZXNv
dXJjZS0+dXJsKCksIERpc2FsbG93U2NyaXB0aW5nQW5kUGx1Z2luQ29udGVudCkpOworICAgIHJl
dHVybiB0cnVlOwogfQogCiBib29sIEVkaXRvcjo6V2ViQ29udGVudFJlYWRlcjo6cmVhZEZpbGVu
YW1lcyhjb25zdCBWZWN0b3I8U3RyaW5nPiYpCkBAIC01NTQsMTEgKzU1Miw5IEBAIFJlZlB0cjxE
b2N1bWVudEZyYWdtZW50PiBFZGl0b3I6OmNyZWF0ZUZyYWdtZW50QW5kQWRkUmVzb3VyY2VzKE5T
QXR0cmlidXRlZFN0cmluCiAKICAgICBhdXRvIGZyYWdtZW50QW5kUmVzb3VyY2VzID0gY3JlYXRl
RnJhZ21lbnQoc3RyaW5nKTsKIAotICAgIGlmIChEb2N1bWVudExvYWRlciogbG9hZGVyID0gbV9m
cmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKSB7Ci0gICAgICAgIGZvciAoYXV0byYgcmVz
b3VyY2UgOiBmcmFnbWVudEFuZFJlc291cmNlcy5yZXNvdXJjZXMpIHsKLSAgICAgICAgICAgIGlm
IChyZXNvdXJjZSkKLSAgICAgICAgICAgICAgICBsb2FkZXItPmFkZEFyY2hpdmVSZXNvdXJjZShy
ZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpKTsKLSAgICAgICAgfQorICAgIGlmIChhdXRvKiBsb2Fk
ZXIgPSBtX2ZyYW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkpIHsKKyAgICAgICAgZm9yIChh
dXRvJiByZXNvdXJjZSA6IGZyYWdtZW50QW5kUmVzb3VyY2VzLnJlc291cmNlcykKKyAgICAgICAg
ICAgIGxvYWRlci0+YWRkQXJjaGl2ZVJlc291cmNlKFdURk1vdmUocmVzb3VyY2UpKTsKICAgICB9
CiAKICAgICBpZiAod2FzSW1hZ2VzRW5hYmxlZCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2VkaXRpbmcvbWFjL0VkaXRvck1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvbWFjL0Vk
aXRvck1hYy5tbQppbmRleCBiNTRiYmQxN2U3ZjA4ZmU2ZWFmMDk5N2U3ODczZTVmNWFjZGQyMzE5
Li4zYjVkY2QxMGU0MzBlNmEzMTcxZTc1Y2IwYzY4YTczYTg5ZTkzYWJhIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9lZGl0aW5nL21hYy9FZGl0b3JNYWMubW0KKysrIGIvU291cmNlL1dlYkNv
cmUvZWRpdGluZy9tYWMvRWRpdG9yTWFjLm1tCkBAIC01MTIsNyArNTEyLDcgQEAgYm9vbCBFZGl0
b3I6OldlYkNvbnRlbnRSZWFkZXI6OnJlYWRXZWJBcmNoaXZlKFNoYXJlZEJ1ZmZlciogYnVmZmVy
KQogICAgIGlmICghYnVmZmVyKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAgICBSZWZQdHI8
TGVnYWN5V2ViQXJjaGl2ZT4gYXJjaGl2ZSA9IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShVUkwo
KSwgKmJ1ZmZlcik7CisgICAgYXV0byBhcmNoaXZlID0gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRl
KFVSTCgpLCAqYnVmZmVyKTsKICAgICBpZiAoIWFyY2hpdmUpCiAgICAgICAgIHJldHVybiBmYWxz
ZTsKIApAQCAtNTI1LDcgKzUyNSw3IEBAIGJvb2wgRWRpdG9yOjpXZWJDb250ZW50UmVhZGVyOjpy
ZWFkV2ViQXJjaGl2ZShTaGFyZWRCdWZmZXIqIGJ1ZmZlcikKICAgICBpZiAoZnJhbWUubG9hZGVy
KCkuY2xpZW50KCkuY2FuU2hvd01JTUVUeXBlQXNIVE1MKHR5cGUpKSB7CiAgICAgICAgIC8vIEZJ
WE1FOiBUaGUgY29kZSBpbiBjcmVhdGVGcmFnbWVudEFuZEFkZFJlc291cmNlcyBjYWxscyBzZXRE
ZWZlcnNMb2FkaW5nKHRydWUpLiBEb24ndCB3ZSBuZWVkIHRoYXQgaGVyZT8KICAgICAgICAgaWYg
KERvY3VtZW50TG9hZGVyKiBsb2FkZXIgPSBmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigp
KQotICAgICAgICAgICAgbG9hZGVyLT5hZGRBbGxBcmNoaXZlUmVzb3VyY2VzKGFyY2hpdmUuZ2V0
KCkpOworICAgICAgICAgICAgbG9hZGVyLT5hZGRBbGxBcmNoaXZlUmVzb3VyY2VzKCphcmNoaXZl
KTsKIAogICAgICAgICBTdHJpbmcgbWFya3VwU3RyaW5nID0gU3RyaW5nOjpmcm9tVVRGOChtYWlu
UmVzb3VyY2UtPmRhdGEoKS5kYXRhKCksIG1haW5SZXNvdXJjZS0+ZGF0YSgpLnNpemUoKSk7CiAg
ICAgICAgIGZyYWdtZW50ID0gY3JlYXRlRnJhZ21lbnRGcm9tTWFya3VwKCpmcmFtZS5kb2N1bWVu
dCgpLCBtYXJrdXBTdHJpbmcsIG1haW5SZXNvdXJjZS0+dXJsKCksIERpc2FsbG93U2NyaXB0aW5n
QW5kUGx1Z2luQ29udGVudCk7CkBAIC03MDQsMTEgKzcwNCw5IEBAIFJlZlB0cjxEb2N1bWVudEZy
YWdtZW50PiBFZGl0b3I6OmNyZWF0ZUZyYWdtZW50QW5kQWRkUmVzb3VyY2VzKE5TQXR0cmlidXRl
ZFN0cmluCiAKICAgICBhdXRvIGZyYWdtZW50QW5kUmVzb3VyY2VzID0gY3JlYXRlRnJhZ21lbnQo
c3RyaW5nKTsKIAotICAgIGlmIChEb2N1bWVudExvYWRlciogbG9hZGVyID0gbV9mcmFtZS5sb2Fk
ZXIoKS5kb2N1bWVudExvYWRlcigpKSB7Ci0gICAgICAgIGZvciAoYXV0byYgcmVzb3VyY2UgOiBm
cmFnbWVudEFuZFJlc291cmNlcy5yZXNvdXJjZXMpIHsKLSAgICAgICAgICAgIGlmIChyZXNvdXJj
ZSkKLSAgICAgICAgICAgICAgICBsb2FkZXItPmFkZEFyY2hpdmVSZXNvdXJjZShyZXNvdXJjZS5y
ZWxlYXNlTm9uTnVsbCgpKTsKLSAgICAgICAgfQorICAgIGlmIChhdXRvKiBsb2FkZXIgPSBtX2Zy
YW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkpIHsKKyAgICAgICAgZm9yIChhdXRvJiByZXNv
dXJjZSA6IGZyYWdtZW50QW5kUmVzb3VyY2VzLnJlc291cmNlcykKKyAgICAgICAgICAgIGxvYWRl
ci0+YWRkQXJjaGl2ZVJlc291cmNlKFdURk1vdmUocmVzb3VyY2UpKTsKICAgICB9CiAKICAgICBp
ZiAoIXdhc0RlZmVycmluZ0NhbGxiYWNrcykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2hp
c3RvcnkvUGFnZUNhY2hlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2hpc3RvcnkvUGFnZUNhY2hlLmNw
cAppbmRleCA2ZDAwNDM3ZTE5YTViMDg3MmM5NDFmYmJhMzQwMjc4OTg0N2U0NGQwLi5hOGE0OWY5
NDAxM2VkMmQwMmJkMjNiZTZhYjMyZDljN2MyZWVjYzM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9oaXN0b3J5L1BhZ2VDYWNoZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaGlzdG9yeS9Q
YWdlQ2FjaGUuY3BwCkBAIC0xNjQsNyArMTY0LDcgQEAgc3RhdGljIGJvb2wgY2FuQ2FjaGVGcmFt
ZShGcmFtZSYgZnJhbWUsIERpYWdub3N0aWNMb2dnaW5nQ2xpZW50JiBkaWFnbm9zdGljTG9nZ2kK
ICAgICB9CiAgICAgLy8gRklYTUU6IFdlIHNob3VsZCBpbnZlc3RpZ2F0aW5nIGNhY2hpbmcgZnJh
bWVzIHRoYXQgaGF2ZSBhbiBhc3NvY2lhdGVkCiAgICAgLy8gYXBwbGljYXRpb24gY2FjaGUuIDxy
ZGFyOi8vcHJvYmxlbS81OTE3ODk5PiB0cmFja3MgdGhhdCB3b3JrLgotICAgIGlmICghZG9jdW1l
bnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPmNhbkNhY2hlSW5QYWdlQ2FjaGUoKSkg
eworICAgIGlmICghZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuY2FuQ2Fj
aGVJblBhZ2VDYWNoZSgpKSB7CiAgICAgICAgIFBDTE9HKCIgICAtVGhlIERvY3VtZW50TG9hZGVy
IHVzZXMgYW4gYXBwbGljYXRpb24gY2FjaGUiKTsKICAgICAgICAgbG9nUGFnZUNhY2hlRmFpbHVy
ZURpYWdub3N0aWNNZXNzYWdlKGRpYWdub3N0aWNMb2dnaW5nQ2xpZW50LCBEaWFnbm9zdGljTG9n
Z2luZ0tleXM6OmFwcGxpY2F0aW9uQ2FjaGVLZXkoKSk7CiAgICAgICAgIGlzQ2FjaGVhYmxlID0g
ZmFsc2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0ZpbGVJbnB1dFR5cGUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmNwcAppbmRleCA1N2QwZGMxYzc2
M2Q2N2I2YjAyMjhjODYwNTEzZDdmMWU5YzUzNjNiLi4yOGI2YzA2NjFmNGQzMTI5YjE2NzkzZWFl
NDE0YjdiYTJmN2NlYjZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0ZpbGVJbnB1
dFR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlwZS5jcHAKQEAg
LTE5MSw3ICsxOTEsNyBAQCB2b2lkIEZpbGVJbnB1dFR5cGU6OmhhbmRsZURPTUFjdGl2YXRlRXZl
bnQoRXZlbnQmIGV2ZW50KQogICAgIGlmICghU2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1Vz
ZXJHZXN0dXJlKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGlmIChDaHJvbWUqIGNocm9tZSA9
IHRoaXMtPmNocm9tZSgpKSB7CisgICAgaWYgKGF1dG8qIGNocm9tZSA9IHRoaXMtPmNocm9tZSgp
KSB7CiAgICAgICAgIEZpbGVDaG9vc2VyU2V0dGluZ3Mgc2V0dGluZ3M7CiAgICAgICAgIEhUTUxJ
bnB1dEVsZW1lbnQmIGlucHV0ID0gZWxlbWVudCgpOwogICAgICAgICBzZXR0aW5ncy5hbGxvd3NN
dWx0aXBsZUZpbGVzID0gaW5wdXQuaGFzQXR0cmlidXRlV2l0aG91dFN5bmNocm9uaXphdGlvbiht
dWx0aXBsZUF0dHIpOwpAQCAtMjAxLDkgKzIwMSw4IEBAIHZvaWQgRmlsZUlucHV0VHlwZTo6aGFu
ZGxlRE9NQWN0aXZhdGVFdmVudChFdmVudCYgZXZlbnQpCiAjaWYgRU5BQkxFKE1FRElBX0NBUFRV
UkUpCiAgICAgICAgIHNldHRpbmdzLm1lZGlhQ2FwdHVyZVR5cGUgPSBpbnB1dC5tZWRpYUNhcHR1
cmVUeXBlKCk7CiAjZW5kaWYKLQogICAgICAgICBhcHBseUZpbGVDaG9vc2VyU2V0dGluZ3Moc2V0
dGluZ3MpOwotICAgICAgICBjaHJvbWUtPnJ1bk9wZW5QYW5lbChpbnB1dC5kb2N1bWVudCgpLmZy
YW1lKCksIG1fZmlsZUNob29zZXIpOworICAgICAgICBjaHJvbWUtPnJ1bk9wZW5QYW5lbCgqaW5w
dXQuZG9jdW1lbnQoKS5mcmFtZSgpLCAqbV9maWxlQ2hvb3Nlcik7CiAgICAgfQogCiAgICAgZXZl
bnQuc2V0RGVmYXVsdEhhbmRsZWQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTEZvcm1Db250cm9sRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3Jt
Q29udHJvbEVsZW1lbnQuY3BwCmluZGV4IDJlODcyYWFiYWU2NGIwNDQ4ZDIyMTRlOTYyYmIxNmY2
Y2JmOTkwMTIuLmVhOGEzYjMzZTAwMjc4MzJkNjcwZjllMDk4N2FjY2E4ZDM2OGJhYTIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVudC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50LmNwcApAQCAtODks
NyArODksNyBAQCB2b2lkIEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ6OnNldEZvcm1FbmN0eXBlKGNv
bnN0IFN0cmluZyYgdmFsdWUpCiAKIFN0cmluZyBIVE1MRm9ybUNvbnRyb2xFbGVtZW50Ojpmb3Jt
TWV0aG9kKCkgY29uc3QKIHsKLSAgICBjb25zdCBBdG9taWNTdHJpbmcmIGZvcm1NZXRob2RBdHRy
ID0gYXR0cmlidXRlV2l0aG91dFN5bmNocm9uaXphdGlvbihmb3JtbWV0aG9kQXR0cik7CisgICAg
YXV0byYgZm9ybU1ldGhvZEF0dHIgPSBhdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKGZv
cm1tZXRob2RBdHRyKTsKICAgICBpZiAoZm9ybU1ldGhvZEF0dHIuaXNOdWxsKCkpCiAgICAgICAg
IHJldHVybiBlbXB0eVN0cmluZygpOwogICAgIHJldHVybiBGb3JtU3VibWlzc2lvbjo6QXR0cmli
dXRlczo6bWV0aG9kU3RyaW5nKEZvcm1TdWJtaXNzaW9uOjpBdHRyaWJ1dGVzOjpwYXJzZU1ldGhv
ZFR5cGUoZm9ybU1ldGhvZEF0dHIpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTEZvcm1FbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50
LmNwcAppbmRleCA3NDc1ZjY0ZDI2ZGViMjU2MDk1ZWRhZDViMWMwNmVmMGVhNWQwMmQ4Li42NDBl
MzNlZjNjODk0MmFiOGRkOTExODMwZmU2ODBmY2VjYmVlMGJlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MRm9ybUVsZW1lbnQuY3BwCkBAIC0yODksMTIgKzI4OSwxMSBAQCB2b2lkIEhUTUxGb3Jt
RWxlbWVudDo6cHJlcGFyZUZvclN1Ym1pc3Npb24oRXZlbnQmIGV2ZW50KQogICAgICAgICByZXR1
cm47CiAgICAgfQogCi0gICAgU3RyaW5nUGFpclZlY3RvciBjb250cm9sTmFtZXNBbmRWYWx1ZXM7
Ci0gICAgZ2V0VGV4dEZpZWxkVmFsdWVzKGNvbnRyb2xOYW1lc0FuZFZhbHVlcyk7Ci0gICAgYXV0
byBmb3JtU3RhdGUgPSBGb3JtU3RhdGU6OmNyZWF0ZSh0aGlzLCBjb250cm9sTmFtZXNBbmRWYWx1
ZXMsICZkb2N1bWVudCgpLCBOb3RTdWJtaXR0ZWRCeUphdmFTY3JpcHQpOworICAgIGF1dG8gZm9y
bVN0YXRlID0gRm9ybVN0YXRlOjpjcmVhdGUoKnRoaXMsIHRleHRGaWVsZFZhbHVlcygpLCBkb2N1
bWVudCgpLCBOb3RTdWJtaXR0ZWRCeUphdmFTY3JpcHQpOwogICAgIGZyYW1lLT5sb2FkZXIoKS5j
bGllbnQoKS5kaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoV1RGTW92ZShmb3JtU3RhdGUpKTsK
IAogICAgIFJlZjxIVE1MRm9ybUVsZW1lbnQ+IHByb3RlY3RlZFRoaXMoKnRoaXMpOworCiAgICAg
Ly8gRXZlbnQgaGFuZGxpbmcgY2FuIHJlc3VsdCBpbiBtX3Nob3VsZFN1Ym1pdCBiZWNvbWluZyB0
cnVlLCByZWdhcmRsZXNzIG9mIGRpc3BhdGNoRXZlbnQoKSByZXR1cm4gdmFsdWUuCiAgICAgaWYg
KGRpc3BhdGNoRXZlbnQoRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkuc3VibWl0RXZlbnQsIHRy
dWUsIHRydWUpKSkKICAgICAgICAgbV9zaG91bGRTdWJtaXQgPSB0cnVlOwpAQCAtMzE1LDIwICsz
MTQsMjAgQEAgdm9pZCBIVE1MRm9ybUVsZW1lbnQ6OnN1Ym1pdEZyb21KYXZhU2NyaXB0KCkKICAg
ICBzdWJtaXQoMCwgZmFsc2UsIFNjcmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVy
ZSgpLCBTdWJtaXR0ZWRCeUphdmFTY3JpcHQpOwogfQogCi12b2lkIEhUTUxGb3JtRWxlbWVudDo6
Z2V0VGV4dEZpZWxkVmFsdWVzKFN0cmluZ1BhaXJWZWN0b3ImIGZpZWxkTmFtZXNBbmRWYWx1ZXMp
IGNvbnN0CitTdHJpbmdQYWlyVmVjdG9yIEhUTUxGb3JtRWxlbWVudDo6dGV4dEZpZWxkVmFsdWVz
KCkgY29uc3QKIHsKLSAgICBBU1NFUlRfQVJHKGZpZWxkTmFtZXNBbmRWYWx1ZXMsIGZpZWxkTmFt
ZXNBbmRWYWx1ZXMuaXNFbXB0eSgpKTsKLQotICAgIGZpZWxkTmFtZXNBbmRWYWx1ZXMucmVzZXJ2
ZUNhcGFjaXR5KG1fYXNzb2NpYXRlZEVsZW1lbnRzLnNpemUoKSk7CisgICAgU3RyaW5nUGFpclZl
Y3RvciByZXN1bHQ7CisgICAgcmVzdWx0LnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobV9hc3NvY2lh
dGVkRWxlbWVudHMuc2l6ZSgpKTsKICAgICBmb3IgKGF1dG8mIGFzc29jaWF0ZWRFbGVtZW50IDog
bV9hc3NvY2lhdGVkRWxlbWVudHMpIHsKLSAgICAgICAgSFRNTEVsZW1lbnQmIGVsZW1lbnQgPSBh
c3NvY2lhdGVkRWxlbWVudC0+YXNIVE1MRWxlbWVudCgpOworICAgICAgICBhdXRvJiBlbGVtZW50
ID0gYXNzb2NpYXRlZEVsZW1lbnQtPmFzSFRNTEVsZW1lbnQoKTsKICAgICAgICAgaWYgKCFpczxI
VE1MSW5wdXRFbGVtZW50PihlbGVtZW50KSkKICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAg
ICBIVE1MSW5wdXRFbGVtZW50JiBpbnB1dCA9IGRvd25jYXN0PEhUTUxJbnB1dEVsZW1lbnQ+KGVs
ZW1lbnQpOworICAgICAgICBhdXRvJiBpbnB1dCA9IGRvd25jYXN0PEhUTUxJbnB1dEVsZW1lbnQ+
KGVsZW1lbnQpOwogICAgICAgICBpZiAoIWlucHV0LmlzVGV4dEZpZWxkKCkpCiAgICAgICAgICAg
ICBjb250aW51ZTsKLSAgICAgICAgZmllbGROYW1lc0FuZFZhbHVlcy5hcHBlbmQoc3RkOjptYWtl
X3BhaXIoaW5wdXQubmFtZSgpLnN0cmluZygpLCBpbnB1dC52YWx1ZSgpKSk7CisgICAgICAgIHJl
c3VsdC51bmNoZWNrZWRBcHBlbmQoeyBpbnB1dC5uYW1lKCkuc3RyaW5nKCksIGlucHV0LnZhbHVl
KCkgfSk7CiAgICAgfQorICAgIHJldHVybiByZXN1bHQ7CiB9CiAKIHZvaWQgSFRNTEZvcm1FbGVt
ZW50OjpzdWJtaXQoRXZlbnQqIGV2ZW50LCBib29sIGFjdGl2YXRlU3VibWl0QnV0dG9uLCBib29s
IHByb2Nlc3NpbmdVc2VyR2VzdHVyZSwgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIGZvcm1TdWJtaXNz
aW9uVHJpZ2dlcikKQEAgLTM2NCw5ICszNjMsMTAgQEAgdm9pZCBIVE1MRm9ybUVsZW1lbnQ6OnN1
Ym1pdChFdmVudCogZXZlbnQsIGJvb2wgYWN0aXZhdGVTdWJtaXRCdXR0b24sIGJvb2wgcHJvY2UK
ICAgICBpZiAobmVlZEJ1dHRvbkFjdGl2YXRpb24gJiYgZmlyc3RTdWNjZXNzZnVsU3VibWl0QnV0
dG9uKQogICAgICAgICBmaXJzdFN1Y2Nlc3NmdWxTdWJtaXRCdXR0b24tPnNldEFjdGl2YXRlZFN1
Ym1pdCh0cnVlKTsKIAotICAgIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5ID0gcHJvY2Vzc2luZ1Vz
ZXJHZXN0dXJlID8gTG9ja0hpc3Rvcnk6Ok5vIDogTG9ja0hpc3Rvcnk6OlllczsKLSAgICBSZWY8
SFRNTEZvcm1FbGVtZW50PiBwcm90ZWN0ZWRUaGlzKCp0aGlzKTsgLy8gRm9ybSBzdWJtaXNzaW9u
IGNhbiBleGVjdXRlIGFyYml0YXJ5IEphdmFTY3JpcHQuCi0gICAgZnJhbWUtPmxvYWRlcigpLnN1
Ym1pdEZvcm0oRm9ybVN1Ym1pc3Npb246OmNyZWF0ZSh0aGlzLCBtX2F0dHJpYnV0ZXMsIGV2ZW50
LCBsb2NrSGlzdG9yeSwgZm9ybVN1Ym1pc3Npb25UcmlnZ2VyKSk7CisgICAgYXV0byBwcm90ZWN0
ZWRUaGlzID0gbWFrZVJlZigqdGhpcyk7IC8vIEZvcm0gc3VibWlzc2lvbiBjYW4gZXhlY3V0ZSBh
cmJpdGFyeSBKYXZhU2NyaXB0LgorCisgICAgYXV0byBzaG91bGRMb2NrSGlzdG9yeSA9IHByb2Nl
c3NpbmdVc2VyR2VzdHVyZSA/IExvY2tIaXN0b3J5OjpObyA6IExvY2tIaXN0b3J5OjpZZXM7Cisg
ICAgZnJhbWUtPmxvYWRlcigpLnN1Ym1pdEZvcm0oRm9ybVN1Ym1pc3Npb246OmNyZWF0ZSgqdGhp
cywgbV9hdHRyaWJ1dGVzLCBldmVudCwgc2hvdWxkTG9ja0hpc3RvcnksIGZvcm1TdWJtaXNzaW9u
VHJpZ2dlcikpOwogCiAgICAgaWYgKG5lZWRCdXR0b25BY3RpdmF0aW9uICYmIGZpcnN0U3VjY2Vz
c2Z1bFN1Ym1pdEJ1dHRvbikKICAgICAgICAgZmlyc3RTdWNjZXNzZnVsU3VibWl0QnV0dG9uLT5z
ZXRBY3RpdmF0ZWRTdWJtaXQoZmFsc2UpOwpAQCAtNDM5LDggKzQzOSw4IEBAIHZvaWQgSFRNTEZv
cm1FbGVtZW50OjpyZXF1ZXN0QXV0b2NvbXBsZXRlKCkKICAgICBTdHJpbmdQYWlyVmVjdG9yIGNv
bnRyb2xOYW1lc0FuZFZhbHVlczsKICAgICBnZXRUZXh0RmllbGRWYWx1ZXMoY29udHJvbE5hbWVz
QW5kVmFsdWVzKTsKIAotICAgIFJlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSA9IEZvcm1TdGF0
ZTo6Y3JlYXRlKHRoaXMsIGNvbnRyb2xOYW1lc0FuZFZhbHVlcywgJmRvY3VtZW50KCksIFN1Ym1p
dHRlZEJ5SmF2YVNjcmlwdCk7Ci0gICAgZnJhbWUtPmxvYWRlcigpLmNsaWVudCgpLmRpZFJlcXVl
c3RBdXRvY29tcGxldGUoZm9ybVN0YXRlLnJlbGVhc2UoKSk7CisgICAgYXV0byBmb3JtU3RhdGUg
PSBGb3JtU3RhdGU6OmNyZWF0ZSh0aGlzLCBjb250cm9sTmFtZXNBbmRWYWx1ZXMsICZkb2N1bWVu
dCgpLCBTdWJtaXR0ZWRCeUphdmFTY3JpcHQpOworICAgIGZyYW1lLT5sb2FkZXIoKS5jbGllbnQo
KS5kaWRSZXF1ZXN0QXV0b2NvbXBsZXRlKFdURk1vdmUoZm9ybVN0YXRlKSk7CiB9CiAKIHZvaWQg
SFRNTEZvcm1FbGVtZW50OjpmaW5pc2hSZXF1ZXN0QXV0b2NvbXBsZXRlKEF1dG9jb21wbGV0ZVJl
c3VsdCByZXN1bHQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxl
bWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuaAppbmRleCBiYjUx
Nzk4OTc2ZTNmNjY0M2Q4YmE0YTc1YTdiMTAzZTcyMDYyMzk3Li41ZGUxOTVlYjk2MTVjZWE2MmU1
YTIxY2JmMDQ5Yjk3OWFiMjcxYjI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxGb3JtRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50
LmgKQEAgLTEyOCw3ICsxMjgsNyBAQCBwdWJsaWM6CiAgICAgY29uc3QgVmVjdG9yPEZvcm1Bc3Nv
Y2lhdGVkRWxlbWVudCo+JiBhc3NvY2lhdGVkRWxlbWVudHMoKSBjb25zdCB7IHJldHVybiBtX2Fz
c29jaWF0ZWRFbGVtZW50czsgfQogICAgIGNvbnN0IFZlY3RvcjxIVE1MSW1hZ2VFbGVtZW50Kj4m
IGltYWdlRWxlbWVudHMoKSBjb25zdCB7IHJldHVybiBtX2ltYWdlRWxlbWVudHM7IH0KIAotICAg
IHZvaWQgZ2V0VGV4dEZpZWxkVmFsdWVzKFN0cmluZ1BhaXJWZWN0b3ImIGZpZWxkTmFtZXNBbmRW
YWx1ZXMpIGNvbnN0OworICAgIFN0cmluZ1BhaXJWZWN0b3IgdGV4dEZpZWxkVmFsdWVzKCkgY29u
c3Q7CiAKICAgICBzdGF0aWMgSFRNTEZvcm1FbGVtZW50KiBmaW5kQ2xvc2VzdEZvcm1BbmNlc3Rv
cihjb25zdCBFbGVtZW50Jik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TEh0bWxFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEh0bWxFbGVtZW50LmNw
cAppbmRleCA1ODQ2ZjU2NDE5OGE5ZDlmZmUwMjMyZWJlMTVjMWZkNTBhZjMxOWM4Li40OWY4Mzcy
NTQzYzE5YmRkOGExYmNkZmQzM2M1NTM1NmY2ODZmNTU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxIdG1sRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MSHRtbEVsZW1lbnQuY3BwCkBAIC02NiwxNSArNjYsMTUgQEAgdm9pZCBIVE1MSHRtbEVsZW1l
bnQ6Omluc2VydGVkQnlQYXJzZXIoKQogICAgIGlmICghZG9jdW1lbnQoKS5mcmFtZSgpKQogICAg
ICAgICByZXR1cm47CiAKLSAgICBEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIgPSBkb2N1
bWVudCgpLmZyYW1lKCktPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCk7CisgICAgYXV0byogZG9j
dW1lbnRMb2FkZXIgPSBkb2N1bWVudCgpLmZyYW1lKCktPmxvYWRlcigpLmRvY3VtZW50TG9hZGVy
KCk7CiAgICAgaWYgKCFkb2N1bWVudExvYWRlcikKICAgICAgICAgcmV0dXJuOwogCi0gICAgY29u
c3QgQXRvbWljU3RyaW5nJiBtYW5pZmVzdCA9IGF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRp
b24obWFuaWZlc3RBdHRyKTsKKyAgICBhdXRvJiBtYW5pZmVzdCA9IGF0dHJpYnV0ZVdpdGhvdXRT
eW5jaHJvbml6YXRpb24obWFuaWZlc3RBdHRyKTsKICAgICBpZiAobWFuaWZlc3QuaXNFbXB0eSgp
KQotICAgICAgICBkb2N1bWVudExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+c2VsZWN0
Q2FjaGVXaXRob3V0TWFuaWZlc3QoKTsKKyAgICAgICAgZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0
aW9uQ2FjaGVIb3N0KCkuc2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3QoKTsKICAgICBlbHNlCi0g
ICAgICAgIGRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5zZWxlY3RDYWNo
ZVdpdGhNYW5pZmVzdChkb2N1bWVudCgpLmNvbXBsZXRlVVJMKG1hbmlmZXN0KSk7CisgICAgICAg
IGRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLnNlbGVjdENhY2hlV2l0aE1h
bmlmZXN0KGRvY3VtZW50KCkuY29tcGxldGVVUkwobWFuaWZlc3QpKTsKIH0KIAogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGlua0VsZW1lbnQuY3BwIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MTGlua0VsZW1lbnQuY3BwCmluZGV4IGQ3NzdhMzkzNzFjY2ZkOGMzM2Ez
ZmU4MDk2MDdlMjg5YjJlNDk5NTEuLjQ5NmFlZDZlYmU3NTk4NGI2YjIzMTE1ZWU3ZTMwMzBkOTg2
OGRiZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExpbmtFbGVtZW50LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMaW5rRWxlbWVudC5jcHAKQEAgLTI2Nyw3
ICsyNjcsNyBAQCB2b2lkIEhUTUxMaW5rRWxlbWVudDo6cHJvY2VzcygpCiAgICAgICAgIGlmICgh
aXNBY3RpdmUpCiAgICAgICAgICAgICBwcmlvcml0eSA9IFJlc291cmNlTG9hZFByaW9yaXR5OjpW
ZXJ5TG93OwogICAgICAgICBDYWNoZWRSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCh1cmwsIENhY2hl
ZFJlc291cmNlTG9hZGVyOjpkZWZhdWx0Q2FjaGVkUmVzb3VyY2VPcHRpb25zKCksIHByaW9yaXR5
LCBXVEZNb3ZlKGNoYXJzZXQpKTsKLSAgICAgICAgcmVxdWVzdC5zZXRJbml0aWF0b3IodGhpcyk7
CisgICAgICAgIHJlcXVlc3Quc2V0SW5pdGlhdG9yKCp0aGlzKTsKIAogICAgICAgICBpZiAoZG9j
dW1lbnQoKS5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dTdHlsZVdpdGhOb25jZShhdHRy
aWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKEhUTUxOYW1lczo6bm9uY2VBdHRyKSkpIHsKICAg
ICAgICAgICAgIFJlc291cmNlTG9hZGVyT3B0aW9ucyBvcHRpb25zID0gQ2FjaGVkUmVzb3VyY2VM
b2FkZXI6OmRlZmF1bHRDYWNoZWRSZXNvdXJjZU9wdGlvbnMoKTsKQEAgLTM2Nyw3ICszNjcsNyBA
QCB2b2lkIEhUTUxMaW5rRWxlbWVudDo6c2V0Q1NTU3R5bGVTaGVldChjb25zdCBTdHJpbmcmIGhy
ZWYsIGNvbnN0IFVSTCYgYmFzZVVSTCwgYwogICAgIENTU1BhcnNlckNvbnRleHQgcGFyc2VyQ29u
dGV4dChkb2N1bWVudCgpLCBiYXNlVVJMLCBjaGFyc2V0KTsKICAgICBhdXRvIGNhY2hlUG9saWN5
ID0gZnJhbWUtPmxvYWRlcigpLnN1YnJlc291cmNlQ2FjaGVQb2xpY3koKTsKIAotICAgIGlmIChS
ZWZQdHI8U3R5bGVTaGVldENvbnRlbnRzPiByZXN0b3JlZFNoZWV0ID0gY29uc3RfY2FzdDxDYWNo
ZWRDU1NTdHlsZVNoZWV0Kj4oY2FjaGVkU3R5bGVTaGVldCktPnJlc3RvcmVQYXJzZWRTdHlsZVNo
ZWV0KHBhcnNlckNvbnRleHQsIGNhY2hlUG9saWN5KSkgeworICAgIGlmIChhdXRvIHJlc3RvcmVk
U2hlZXQgPSBjb25zdF9jYXN0PENhY2hlZENTU1N0eWxlU2hlZXQqPihjYWNoZWRTdHlsZVNoZWV0
KS0+cmVzdG9yZVBhcnNlZFN0eWxlU2hlZXQocGFyc2VyQ29udGV4dCwgY2FjaGVQb2xpY3kpKSB7
CiAgICAgICAgIEFTU0VSVChyZXN0b3JlZFNoZWV0LT5pc0NhY2hlYWJsZSgpKTsKICAgICAgICAg
QVNTRVJUKCFyZXN0b3JlZFNoZWV0LT5pc0xvYWRpbmcoKSk7CiAgICAgICAgIGluaXRpYWxpemVT
dHlsZVNoZWV0KHJlc3RvcmVkU2hlZXQucmVsZWFzZU5vbk51bGwoKSwgKmNhY2hlZFN0eWxlU2hl
ZXQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKaW5kZXggM2E5YzRm
NTE5OGYxZjI2MDQzODE3ODlhODQ5ZjNhOWY1ZDJiZjAxOS4uZjRkZDU0ZTU4N2E1ZTY5ODhhOGY4
NDk1NzIyMzE4OTY4NzFhZjczYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
TWVkaWFFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1l
bnQuY3BwCkBAIC0xNDI4LDExICsxNDI4LDggQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50Ojpsb2Fk
UmVzb3VyY2UoY29uc3QgVVJMJiBpbml0aWFsVVJMLCBDb250ZW50VHlwZSYgY29udGVudFQKICAg
ICB9CiAKICNpZiBFTkFCTEUoQ09OVEVOVF9FWFRFTlNJT05TKQotICAgIERvY3VtZW50TG9hZGVy
KiBkb2N1bWVudExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwotCi0g
ICAgaWYgKGRvY3VtZW50TG9hZGVyKSB7Ci0gICAgICAgIGF1dG8gYmxvY2tlZFN0YXR1cyA9IHBh
Z2UtPnVzZXJDb250ZW50UHJvdmlkZXIoKS5wcm9jZXNzQ29udGVudEV4dGVuc2lvblJ1bGVzRm9y
TG9hZCh1cmwsIFJlc291cmNlVHlwZTo6TWVkaWEsICpkb2N1bWVudExvYWRlcik7Ci0gICAgICAg
IGlmIChibG9ja2VkU3RhdHVzLmJsb2NrZWRMb2FkKSB7CisgICAgaWYgKGF1dG8qIGRvY3VtZW50
TG9hZGVyID0gZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkpIHsKKyAgICAgICAgaWYg
KHBhZ2UtPnVzZXJDb250ZW50UHJvdmlkZXIoKS5wcm9jZXNzQ29udGVudEV4dGVuc2lvblJ1bGVz
Rm9yTG9hZCh1cmwsIFJlc291cmNlVHlwZTo6TWVkaWEsICpkb2N1bWVudExvYWRlcikuYmxvY2tl
ZExvYWQpIHsKICAgICAgICAgICAgIG1lZGlhTG9hZGluZ0ZhaWxlZChNZWRpYVBsYXllcjo6Rm9y
bWF0RXJyb3IpOwogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CkBAIC0xNDQyLDExICsx
NDM5LDkgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50Ojpsb2FkUmVzb3VyY2UoY29uc3QgVVJMJiBp
bml0aWFsVVJMLCBDb250ZW50VHlwZSYgY29udGVudFQKICAgICAvLyBUaGUgcmVzb3VyY2UgZmV0
Y2ggYWxnb3JpdGhtIAogICAgIG1fbmV0d29ya1N0YXRlID0gTkVUV09SS19MT0FESU5HOwogCi0g
ICAgLy8gSWYgdGhlIHVybCBzaG91bGQgYmUgbG9hZGVkIGZyb20gdGhlIGFwcGxpY2F0aW9uIGNh
Y2hlLCBwYXNzIHRoZSB1cmwgb2YgdGhlIGNhY2hlZCBmaWxlCi0gICAgLy8gdG8gdGhlIG1lZGlh
IGVuZ2luZS4KLSAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdCogY2FjaGVIb3N0ID0gZnJhbWUtPmxv
YWRlcigpLmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7CisgICAgLy8g
SWYgdGhlIFVSTCBzaG91bGQgYmUgbG9hZGVkIGZyb20gdGhlIGFwcGxpY2F0aW9uIGNhY2hlLCBw
YXNzIHRoZSBVUkwgb2YgdGhlIGNhY2hlZCBmaWxlIHRvIHRoZSBtZWRpYSBlbmdpbmUuCiAgICAg
QXBwbGljYXRpb25DYWNoZVJlc291cmNlKiByZXNvdXJjZSA9IG51bGxwdHI7Ci0gICAgaWYgKGNh
Y2hlSG9zdCAmJiBjYWNoZUhvc3QtPnNob3VsZExvYWRSZXNvdXJjZUZyb21BcHBsaWNhdGlvbkNh
Y2hlKFJlc291cmNlUmVxdWVzdCh1cmwpLCByZXNvdXJjZSkpIHsKKyAgICBpZiAoZnJhbWUtPmxv
YWRlcigpLmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2hvdWxkTG9h
ZFJlc291cmNlRnJvbUFwcGxpY2F0aW9uQ2FjaGUoUmVzb3VyY2VSZXF1ZXN0KHVybCksIHJlc291
cmNlKSkgewogICAgICAgICAvLyBSZXNvdXJjZXMgdGhhdCBhcmUgbm90IHByZXNlbnQgaW4gdGhl
IG1hbmlmZXN0IHdpbGwgYWx3YXlzIGZhaWwgdG8gbG9hZCAoYXQgbGVhc3QsIGFmdGVyIHRoZQog
ICAgICAgICAvLyBjYWNoZSBoYXMgYmVlbiBwcmltZWQgdGhlIGZpcnN0IHRpbWUpLCBtYWtpbmcg
dGhlIHRlc3Rpbmcgb2Ygb2ZmbGluZSBhcHBsaWNhdGlvbnMgc2ltcGxlci4KICAgICAgICAgaWYg
KCFyZXNvdXJjZSB8fCByZXNvdXJjZS0+cGF0aCgpLmlzRW1wdHkoKSkgewpAQCAtMTQ2MCw3ICsx
NDU1LDcgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50Ojpsb2FkUmVzb3VyY2UoY29uc3QgVVJMJiBp
bml0aWFsVVJMLCBDb250ZW50VHlwZSYgY29udGVudFQKIAogICAgIG1fZmlyc3RUaW1lUGxheWlu
ZyA9IHRydWU7CiAKLSAgICAvLyBTZXQgbV9jdXJyZW50U3JjICpiZWZvcmUqIGNoYW5naW5nIHRv
IHRoZSBjYWNoZSB1cmwsIHRoZSBmYWN0IHRoYXQgd2UgYXJlIGxvYWRpbmcgZnJvbSB0aGUgYXBw
CisgICAgLy8gU2V0IG1fY3VycmVudFNyYyAqYmVmb3JlKiBjaGFuZ2luZyB0byB0aGUgY2FjaGUg
VVJMLCB0aGUgZmFjdCB0aGF0IHdlIGFyZSBsb2FkaW5nIGZyb20gdGhlIGFwcAogICAgIC8vIGNh
Y2hlIGlzIGFuIGludGVybmFsIGRldGFpbCBub3QgZXhwb3NlZCB0aHJvdWdoIHRoZSBtZWRpYSBl
bGVtZW50IEFQSS4KICAgICBtX2N1cnJlbnRTcmMgPSB1cmw7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuY3BwIGIv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5j
cHAKaW5kZXggZmY0ZmYzMWNjMTlmNDkzNGQwNGIyMjk3Zjc2ZWI5NDU4ODQ4NWQyMi4uNmUzOWJj
ZGFkMGQ4NGYwNDI3YTkyYzI3MTBmZmNmMmYxZTBiMDBjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5j
cHAKQEAgLTY4LDE2ICs2OCwxNyBAQCB2b2lkIEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2Vu
dDo6ZW5hYmxlKEVycm9yU3RyaW5nJikKIAogdm9pZCBJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hl
QWdlbnQ6OnVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXMoRnJhbWUqIGZyYW1lKQogewotICAg
IERvY3VtZW50TG9hZGVyKiBkb2N1bWVudExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVu
dExvYWRlcigpOworICAgIGlmICghZnJhbWUpCisgICAgICAgIHJldHVybjsKKyAgICBhdXRvKiBk
b2N1bWVudExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwogICAgIGlm
ICghZG9jdW1lbnRMb2FkZXIpCiAgICAgICAgIHJldHVybjsKIAotICAgIEFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KiBob3N0ID0gZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7Ci0g
ICAgQXBwbGljYXRpb25DYWNoZUhvc3Q6OlN0YXR1cyBzdGF0dXMgPSBob3N0LT5zdGF0dXMoKTsK
LSAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q2FjaGVJbmZvIGluZm8gPSBob3N0LT5hcHBsaWNh
dGlvbkNhY2hlSW5mbygpOworICAgIGF1dG8mIGhvc3QgPSBkb2N1bWVudExvYWRlci0+YXBwbGlj
YXRpb25DYWNoZUhvc3QoKTsKKyAgICBpbnQgc3RhdHVzID0gaG9zdC5zdGF0dXMoKTsKKyAgICBh
dXRvIG1hbmlmZXN0VVJMID0gaG9zdC5hcHBsaWNhdGlvbkNhY2hlSW5mbygpLm1hbmlmZXN0LnN0
cmluZygpOwogCi0gICAgU3RyaW5nIG1hbmlmZXN0VVJMID0gaW5mby5tX21hbmlmZXN0LnN0cmlu
ZygpOwotICAgIG1fZnJvbnRlbmREaXNwYXRjaGVyLT5hcHBsaWNhdGlvbkNhY2hlU3RhdHVzVXBk
YXRlZChtX3BhZ2VBZ2VudC0+ZnJhbWVJZChmcmFtZSksIG1hbmlmZXN0VVJMLCBzdGF0aWNfY2Fz
dDxpbnQ+KHN0YXR1cykpOworICAgIG1fZnJvbnRlbmREaXNwYXRjaGVyLT5hcHBsaWNhdGlvbkNh
Y2hlU3RhdHVzVXBkYXRlZChtX3BhZ2VBZ2VudC0+ZnJhbWVJZChmcmFtZSksIG1hbmlmZXN0VVJM
LCBzdGF0dXMpOwogfQogCiB2b2lkIEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6bmV0
d29ya1N0YXRlQ2hhbmdlZCgpCkBAIC05MSwyMCArOTIsMTggQEAgdm9pZCBJbnNwZWN0b3JBcHBs
aWNhdGlvbkNhY2hlQWdlbnQ6OmdldEZyYW1lc1dpdGhNYW5pZmVzdHMoRXJyb3JTdHJpbmcmLCBS
ZWZQdHIKICAgICByZXN1bHQgPSBJbnNwZWN0b3I6OlByb3RvY29sOjpBcnJheTxJbnNwZWN0b3I6
OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpGcmFtZVdpdGhNYW5pZmVzdD46OmNyZWF0ZSgp
OwogCiAgICAgZm9yIChGcmFtZSogZnJhbWUgPSAmbV9wYWdlQWdlbnQtPm1haW5GcmFtZSgpOyBm
cmFtZTsgZnJhbWUgPSBmcmFtZS0+dHJlZSgpLnRyYXZlcnNlTmV4dCgpKSB7Ci0gICAgICAgIERv
Y3VtZW50TG9hZGVyKiBkb2N1bWVudExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExv
YWRlcigpOworICAgICAgICBhdXRvKiBkb2N1bWVudExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5k
b2N1bWVudExvYWRlcigpOwogICAgICAgICBpZiAoIWRvY3VtZW50TG9hZGVyKQogICAgICAgICAg
ICAgY29udGludWU7CiAKLSAgICAgICAgQXBwbGljYXRpb25DYWNoZUhvc3QqIGhvc3QgPSBkb2N1
bWVudExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKTsKLSAgICAgICAgQXBwbGljYXRpb25D
YWNoZUhvc3Q6OkNhY2hlSW5mbyBpbmZvID0gaG9zdC0+YXBwbGljYXRpb25DYWNoZUluZm8oKTsK
LSAgICAgICAgU3RyaW5nIG1hbmlmZXN0VVJMID0gaW5mby5tX21hbmlmZXN0LnN0cmluZygpOwor
ICAgICAgICBhdXRvJiBob3N0ID0gZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCk7CisgICAgICAgIFN0cmluZyBtYW5pZmVzdFVSTCA9IGhvc3QuYXBwbGljYXRpb25DYWNoZUlu
Zm8oKS5tYW5pZmVzdC5zdHJpbmcoKTsKICAgICAgICAgaWYgKCFtYW5pZmVzdFVSTC5pc0VtcHR5
KCkpIHsKLSAgICAgICAgICAgIFJlZjxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNh
Y2hlOjpGcmFtZVdpdGhNYW5pZmVzdD4gdmFsdWUgPSBJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBs
aWNhdGlvbkNhY2hlOjpGcmFtZVdpdGhNYW5pZmVzdDo6Y3JlYXRlKCkKKyAgICAgICAgICAgIHJl
c3VsdC0+YWRkSXRlbShJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpGcmFt
ZVdpdGhNYW5pZmVzdDo6Y3JlYXRlKCkKICAgICAgICAgICAgICAgICAuc2V0RnJhbWVJZChtX3Bh
Z2VBZ2VudC0+ZnJhbWVJZChmcmFtZSkpCiAgICAgICAgICAgICAgICAgLnNldE1hbmlmZXN0VVJM
KG1hbmlmZXN0VVJMKQotICAgICAgICAgICAgICAgIC5zZXRTdGF0dXMoc3RhdGljX2Nhc3Q8aW50
Pihob3N0LT5zdGF0dXMoKSkpCi0gICAgICAgICAgICAgICAgLnJlbGVhc2UoKTsKLSAgICAgICAg
ICAgIHJlc3VsdC0+YWRkSXRlbShXVEZNb3ZlKHZhbHVlKSk7CisgICAgICAgICAgICAgICAgLnNl
dFN0YXR1cyhzdGF0aWNfY2FzdDxpbnQ+KGhvc3Quc3RhdHVzKCkpKQorICAgICAgICAgICAgICAg
IC5yZWxlYXNlKCkpOwogICAgICAgICB9CiAgICAgfQogfQpAQCAtMTI0LDY4ICsxMjMsNjAgQEAg
dm9pZCBJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6OmdldE1hbmlmZXN0Rm9yRnJhbWUo
RXJyb3JTdHJpbmcmIGVycm9yU3RyaW4KICAgICBpZiAoIWRvY3VtZW50TG9hZGVyKQogICAgICAg
ICByZXR1cm47CiAKLSAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q2FjaGVJbmZvIGluZm8gPSBk
b2N1bWVudExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+YXBwbGljYXRpb25DYWNoZUlu
Zm8oKTsKLSAgICAqbWFuaWZlc3RVUkwgPSBpbmZvLm1fbWFuaWZlc3Quc3RyaW5nKCk7CisgICAg
Km1hbmlmZXN0VVJMID0gZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuYXBw
bGljYXRpb25DYWNoZUluZm8oKS5tYW5pZmVzdC5zdHJpbmcoKTsKIH0KIAogdm9pZCBJbnNwZWN0
b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6OmdldEFwcGxpY2F0aW9uQ2FjaGVGb3JGcmFtZShFcnJv
clN0cmluZyYgZXJyb3JTdHJpbmcsIGNvbnN0IFN0cmluZyYgZnJhbWVJZCwgUmVmUHRyPEluc3Bl
Y3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGU+JiBhcHBs
aWNhdGlvbkNhY2hlKQogewotICAgIERvY3VtZW50TG9hZGVyKiBkb2N1bWVudExvYWRlciA9IGFz
c2VydEZyYW1lV2l0aERvY3VtZW50TG9hZGVyKGVycm9yU3RyaW5nLCBmcmFtZUlkKTsKKyAgICBh
dXRvKiBkb2N1bWVudExvYWRlciA9IGFzc2VydEZyYW1lV2l0aERvY3VtZW50TG9hZGVyKGVycm9y
U3RyaW5nLCBmcmFtZUlkKTsKICAgICBpZiAoIWRvY3VtZW50TG9hZGVyKQogICAgICAgICByZXR1
cm47CiAKLSAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdCogaG9zdCA9IGRvY3VtZW50TG9hZGVyLT5h
cHBsaWNhdGlvbkNhY2hlSG9zdCgpOwotICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUlu
Zm8gaW5mbyA9IGhvc3QtPmFwcGxpY2F0aW9uQ2FjaGVJbmZvKCk7Ci0KLSAgICBBcHBsaWNhdGlv
bkNhY2hlSG9zdDo6UmVzb3VyY2VJbmZvTGlzdCByZXNvdXJjZXM7Ci0gICAgaG9zdC0+ZmlsbFJl
c291cmNlTGlzdCgmcmVzb3VyY2VzKTsKLQotICAgIGFwcGxpY2F0aW9uQ2FjaGUgPSBidWlsZE9i
amVjdEZvckFwcGxpY2F0aW9uQ2FjaGUocmVzb3VyY2VzLCBpbmZvKTsKKyAgICBhdXRvJiBob3N0
ID0gZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7CisgICAgYXBwbGljYXRp
b25DYWNoZSA9IGJ1aWxkT2JqZWN0Rm9yQXBwbGljYXRpb25DYWNoZShob3N0LnJlc291cmNlTGlz
dCgpLCBob3N0LmFwcGxpY2F0aW9uQ2FjaGVJbmZvKCkpOwogfQogCi1SZWY8SW5zcGVjdG9yOjpQ
cm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZT4gSW5zcGVjdG9yQXBw
bGljYXRpb25DYWNoZUFnZW50OjpidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGUoY29uc3Qg
QXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mb0xpc3QmIGFwcGxpY2F0aW9uQ2FjaGVS
ZXNvdXJjZXMsIGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8mIGFwcGxpY2F0
aW9uQ2FjaGVJbmZvKQorUmVmPEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6
OkFwcGxpY2F0aW9uQ2FjaGU+IEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6YnVpbGRP
YmplY3RGb3JBcHBsaWNhdGlvbkNhY2hlKGNvbnN0IFZlY3RvcjxBcHBsaWNhdGlvbkNhY2hlSG9z
dDo6UmVzb3VyY2VJbmZvPiYgYXBwbGljYXRpb25DYWNoZVJlc291cmNlcywgY29uc3QgQXBwbGlj
YXRpb25DYWNoZUhvc3Q6OkNhY2hlSW5mbyYgYXBwbGljYXRpb25DYWNoZUluZm8pCiB7CiAgICAg
cmV0dXJuIEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9u
Q2FjaGU6OmNyZWF0ZSgpCi0gICAgICAgIC5zZXRNYW5pZmVzdFVSTChhcHBsaWNhdGlvbkNhY2hl
SW5mby5tX21hbmlmZXN0LnN0cmluZygpKQotICAgICAgICAuc2V0U2l6ZShhcHBsaWNhdGlvbkNh
Y2hlSW5mby5tX3NpemUpCi0gICAgICAgIC5zZXRDcmVhdGlvblRpbWUoYXBwbGljYXRpb25DYWNo
ZUluZm8ubV9jcmVhdGlvblRpbWUpCi0gICAgICAgIC5zZXRVcGRhdGVUaW1lKGFwcGxpY2F0aW9u
Q2FjaGVJbmZvLm1fdXBkYXRlVGltZSkKKyAgICAgICAgLnNldE1hbmlmZXN0VVJMKGFwcGxpY2F0
aW9uQ2FjaGVJbmZvLm1hbmlmZXN0LnN0cmluZygpKQorICAgICAgICAuc2V0U2l6ZShhcHBsaWNh
dGlvbkNhY2hlSW5mby5zaXplKQorICAgICAgICAuc2V0Q3JlYXRpb25UaW1lKGFwcGxpY2F0aW9u
Q2FjaGVJbmZvLmNyZWF0aW9uVGltZSkKKyAgICAgICAgLnNldFVwZGF0ZVRpbWUoYXBwbGljYXRp
b25DYWNoZUluZm8udXBkYXRlVGltZSkKICAgICAgICAgLnNldFJlc291cmNlcyhidWlsZEFycmF5
Rm9yQXBwbGljYXRpb25DYWNoZVJlc291cmNlcyhhcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2VzKSkK
ICAgICAgICAgLnJlbGVhc2UoKTsKIH0KIAotUmVmPEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFycmF5
PEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGVS
ZXNvdXJjZT4+IEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6YnVpbGRBcnJheUZvckFw
cGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMoY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291
cmNlSW5mb0xpc3QmIGFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMpCitSZWY8SW5zcGVjdG9yOjpQ
cm90b2NvbDo6QXJyYXk8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6QXBw
bGljYXRpb25DYWNoZVJlc291cmNlPj4gSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50Ojpi
dWlsZEFycmF5Rm9yQXBwbGljYXRpb25DYWNoZVJlc291cmNlcyhjb25zdCBWZWN0b3I8QXBwbGlj
YXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mbz4mIGFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMp
CiB7Ci0gICAgYXV0byByZXNvdXJjZXMgPSBJbnNwZWN0b3I6OlByb3RvY29sOjpBcnJheTxJbnNw
ZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlUmVzb3Vy
Y2U+OjpjcmVhdGUoKTsKLQotICAgIGZvciAoY29uc3QgYXV0byYgcmVzb3VyY2VJbmZvIDogYXBw
bGljYXRpb25DYWNoZVJlc291cmNlcykKLSAgICAgICAgcmVzb3VyY2VzLT5hZGRJdGVtKGJ1aWxk
T2JqZWN0Rm9yQXBwbGljYXRpb25DYWNoZVJlc291cmNlKHJlc291cmNlSW5mbykpOwotCi0gICAg
cmV0dXJuIHJlc291cmNlczsKKyAgICBhdXRvIHJlc3VsdCA9IEluc3BlY3Rvcjo6UHJvdG9jb2w6
OkFycmF5PEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9u
Q2FjaGVSZXNvdXJjZT46OmNyZWF0ZSgpOworICAgIGZvciAoYXV0byYgaW5mbyA6IGFwcGxpY2F0
aW9uQ2FjaGVSZXNvdXJjZXMpCisgICAgICAgIHJlc3VsdC0+YWRkSXRlbShidWlsZE9iamVjdEZv
ckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZShpbmZvKSk7CisgICAgcmV0dXJuIHJlc3VsdDsKIH0K
IAogUmVmPEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9u
Q2FjaGVSZXNvdXJjZT4gSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZE9iamVj
dEZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZShjb25zdCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6
UmVzb3VyY2VJbmZvJiByZXNvdXJjZUluZm8pCiB7CiAgICAgU3RyaW5nQnVpbGRlciB0eXBlczsK
IAotICAgIGlmIChyZXNvdXJjZUluZm8ubV9pc01hc3RlcikKKyAgICBpZiAocmVzb3VyY2VJbmZv
LmlzTWFzdGVyKQogICAgICAgICB0eXBlcy5hcHBlbmRMaXRlcmFsKCJNYXN0ZXIgIik7CiAKLSAg
ICBpZiAocmVzb3VyY2VJbmZvLm1faXNNYW5pZmVzdCkKKyAgICBpZiAocmVzb3VyY2VJbmZvLmlz
TWFuaWZlc3QpCiAgICAgICAgIHR5cGVzLmFwcGVuZExpdGVyYWwoIk1hbmlmZXN0ICIpOwogCi0g
ICAgaWYgKHJlc291cmNlSW5mby5tX2lzRmFsbGJhY2spCisgICAgaWYgKHJlc291cmNlSW5mby5p
c0ZhbGxiYWNrKQogICAgICAgICB0eXBlcy5hcHBlbmRMaXRlcmFsKCJGYWxsYmFjayAiKTsKIAot
ICAgIGlmIChyZXNvdXJjZUluZm8ubV9pc0ZvcmVpZ24pCisgICAgaWYgKHJlc291cmNlSW5mby5p
c0ZvcmVpZ24pCiAgICAgICAgIHR5cGVzLmFwcGVuZExpdGVyYWwoIkZvcmVpZ24gIik7CiAKLSAg
ICBpZiAocmVzb3VyY2VJbmZvLm1faXNFeHBsaWNpdCkKKyAgICBpZiAocmVzb3VyY2VJbmZvLmlz
RXhwbGljaXQpCiAgICAgICAgIHR5cGVzLmFwcGVuZExpdGVyYWwoIkV4cGxpY2l0ICIpOwogCiAg
ICAgcmV0dXJuIEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0
aW9uQ2FjaGVSZXNvdXJjZTo6Y3JlYXRlKCkKLSAgICAgICAgLnNldFVybChyZXNvdXJjZUluZm8u
bV9yZXNvdXJjZS5zdHJpbmcoKSkKLSAgICAgICAgLnNldFNpemUoc3RhdGljX2Nhc3Q8aW50Pihy
ZXNvdXJjZUluZm8ubV9zaXplKSkKKyAgICAgICAgLnNldFVybChyZXNvdXJjZUluZm8ucmVzb3Vy
Y2Uuc3RyaW5nKCkpCisgICAgICAgIC5zZXRTaXplKHN0YXRpY19jYXN0PGludD4ocmVzb3VyY2VJ
bmZvLnNpemUpKQogICAgICAgICAuc2V0VHlwZSh0eXBlcy50b1N0cmluZygpKQogICAgICAgICAu
cmVsZWFzZSgpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3Bl
Y3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0lu
c3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5oCmluZGV4IGQ1YzU3OWM3ZWFiZTdiMmJhZGM0
NzRiMGY0ODcxNmRkNjk0ZmViNzYuLjQ4NzUyZWZhMGNkNWY2YTc2MmRlNTNkYzJhMTEyZWZmNDY0
ZjcyZmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBs
aWNhdGlvbkNhY2hlQWdlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVj
dG9yQXBwbGljYXRpb25DYWNoZUFnZW50LmgKQEAgLTYyLDggKzYyLDggQEAgcHVibGljOgogICAg
IHZvaWQgZ2V0QXBwbGljYXRpb25DYWNoZUZvckZyYW1lKEVycm9yU3RyaW5nJiwgY29uc3QgU3Ry
aW5nJiBmcmFtZUlkLCBSZWZQdHI8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNo
ZTo6QXBwbGljYXRpb25DYWNoZT4mKSBvdmVycmlkZTsKIAogcHJpdmF0ZToKLSAgICBSZWY8SW5z
cGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZT4gYnVp
bGRPYmplY3RGb3JBcHBsaWNhdGlvbkNhY2hlKGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpS
ZXNvdXJjZUluZm9MaXN0JiwgY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNhY2hlSW5mbyYp
OwotICAgIFJlZjxJbnNwZWN0b3I6OlByb3RvY29sOjpBcnJheTxJbnNwZWN0b3I6OlByb3RvY29s
OjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+PiBidWlsZEFycmF5
Rm9yQXBwbGljYXRpb25DYWNoZVJlc291cmNlcyhjb25zdCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6
UmVzb3VyY2VJbmZvTGlzdCYpOworICAgIFJlZjxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNh
dGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlPiBidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2Fj
aGUoY29uc3QgVmVjdG9yPEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpSZXNvdXJjZUluZm8+JiwgY29u
c3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNhY2hlSW5mbyYpOworICAgIFJlZjxJbnNwZWN0b3I6
OlByb3RvY29sOjpBcnJheTxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpB
cHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+PiBidWlsZEFycmF5Rm9yQXBwbGljYXRpb25DYWNoZVJl
c291cmNlcyhjb25zdCBWZWN0b3I8QXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mbz4m
KTsKICAgICBSZWY8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGlj
YXRpb25DYWNoZVJlc291cmNlPiBidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJj
ZShjb25zdCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6UmVzb3VyY2VJbmZvJik7CiAKICAgICBEb2N1
bWVudExvYWRlciogYXNzZXJ0RnJhbWVXaXRoRG9jdW1lbnRMb2FkZXIoRXJyb3JTdHJpbmcmLCBj
b25zdCBTdHJpbmcmIGZyYW1lSWQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcAppbmRleCAyZTQzMzc5NmE2YWYzYjExYjkx
ZDdjYjA2MjFhMTg0N2I1ZmMyNTdhLi5kNjhjNTIyZWZjZTAyY2ZlZDU5YThmMDg1OWY0NTRlMWM4
YzJjYTgxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uLmNwcApAQCAtMSw2ICsxLDYgQEAKIC8qCiAqIENvcHlyaWdodCAoQykg
MjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotKiBDb3B5cmlnaHQgKEMpIDIw
MTQsIDIwMTUgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorKiBDb3B5cmlnaHQgKEMp
IDIwMTQtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAqCiAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAogKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMgYXJlCkBAIC0xMDczLDEwICsxMDczLDEwIEBAIHZvaWQgSW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjpuZXR3b3JrU3RhdGVDaGFuZ2VkSW1wbChJbnN0cnVtZW50aW5nQWdl
bnRzJiBpbnN0CiAgICAgICAgIGFwcGxpY2F0aW9uQ2FjaGVBZ2VudC0+bmV0d29ya1N0YXRlQ2hh
bmdlZCgpOwogfQogCi12b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6dXBkYXRlQXBwbGlj
YXRpb25DYWNoZVN0YXR1c0ltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0Fn
ZW50cywgRnJhbWUqIGZyYW1lKQordm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OnVwZGF0
ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXNJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGluc3RydW1l
bnRpbmdBZ2VudHMsIEZyYW1lJiBmcmFtZSkKIHsKLSAgICBpZiAoSW5zcGVjdG9yQXBwbGljYXRp
b25DYWNoZUFnZW50KiBhcHBsaWNhdGlvbkNhY2hlQWdlbnQgPSBpbnN0cnVtZW50aW5nQWdlbnRz
Lmluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudCgpKQotICAgICAgICBhcHBsaWNhdGlvbkNh
Y2hlQWdlbnQtPnVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXMoZnJhbWUpOworICAgIGlmIChh
dXRvKiBhcHBsaWNhdGlvbkNhY2hlQWdlbnQgPSBpbnN0cnVtZW50aW5nQWdlbnRzLmluc3BlY3Rv
ckFwcGxpY2F0aW9uQ2FjaGVBZ2VudCgpKQorICAgICAgICBhcHBsaWNhdGlvbkNhY2hlQWdlbnQt
PnVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXMoJmZyYW1lKTsKIH0KIAogYm9vbCBJbnNwZWN0
b3JJbnN0cnVtZW50YXRpb246OmNvbnNvbGVBZ2VudEVuYWJsZWQoU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaAppbmRleCA5YjYwMDEwNGRhMmYxZGQ1
ZWQxMDJiYmY5NDVhNmY1YWQ0OTk3ZjQyLi4yNDVjZGM4ODc1MmQwODUxZTU3MDQ0YmI3MjMzNWI2
YTA4MjRhYWZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
ckluc3RydW1lbnRhdGlvbi5oCkBAIC00MDcsNyArNDA3LDcgQEAgcHJpdmF0ZToKICNlbmRpZgog
CiAgICAgc3RhdGljIHZvaWQgbmV0d29ya1N0YXRlQ2hhbmdlZEltcGwoSW5zdHJ1bWVudGluZ0Fn
ZW50cyYpOwotICAgIHN0YXRpYyB2b2lkIHVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXNJbXBs
KEluc3RydW1lbnRpbmdBZ2VudHMmLCBGcmFtZSopOworICAgIHN0YXRpYyB2b2lkIHVwZGF0ZUFw
cGxpY2F0aW9uQ2FjaGVTdGF0dXNJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBGcmFtZSYpOwog
CiAgICAgc3RhdGljIHZvaWQgbGF5ZXJUcmVlRGlkQ2hhbmdlSW1wbChJbnN0cnVtZW50aW5nQWdl
bnRzJik7CiAgICAgc3RhdGljIHZvaWQgcmVuZGVyTGF5ZXJEZXN0cm95ZWRJbXBsKEluc3RydW1l
bnRpbmdBZ2VudHMmLCBjb25zdCBSZW5kZXJMYXllciYpOwpAQCAtMTE4MSw4ICsxMTgxLDggQEAg
aW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpuZXR3b3JrU3RhdGVDaGFuZ2Vk
KFBhZ2UmIHBhZ2UpCiBpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OnVwZGF0
ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXMoRnJhbWUqIGZyYW1lKQogewogICAgIEZBU1RfUkVUVVJO
X0lGX05PX0ZST05URU5EUyh2b2lkKCkpOwotICAgIGlmIChJbnN0cnVtZW50aW5nQWdlbnRzKiBp
bnN0cnVtZW50aW5nQWdlbnRzID0gaW5zdHJ1bWVudGluZ0FnZW50c0ZvckZyYW1lKGZyYW1lKSkK
LSAgICAgICAgdXBkYXRlQXBwbGljYXRpb25DYWNoZVN0YXR1c0ltcGwoKmluc3RydW1lbnRpbmdB
Z2VudHMsIGZyYW1lKTsKKyAgICBpZiAoYXV0byogaW5zdHJ1bWVudGluZ0FnZW50cyA9IGluc3Ry
dW1lbnRpbmdBZ2VudHNGb3JGcmFtZShmcmFtZSkpCisgICAgICAgIHVwZGF0ZUFwcGxpY2F0aW9u
Q2FjaGVTdGF0dXNJbXBsKCppbnN0cnVtZW50aW5nQWdlbnRzLCAqZnJhbWUpOwogfQogCiBpbmxp
bmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmFkZE1lc3NhZ2VUb0NvbnNvbGUoUGFn
ZSYgcGFnZSwgc3RkOjp1bmlxdWVfcHRyPEluc3BlY3Rvcjo6Q29uc29sZU1lc3NhZ2U+IG1lc3Nh
Z2UpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3Bw
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcAppbmRleCA5YjM4YzNi
MzYyNzkwNWUxYmVhYTM5ZjU1YmUzZGJjNjljMzc3YWU5Li5lZTY1OWNiNWY5Mzk1OTA3NjdlYzk4
NGE2MTcxZmQ1MzkwZTU0ODFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9j
dW1lbnRMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRl
ci5jcHAKQEAgLTEyOSwzMCArMTI5LDE2IEBAIHN0YXRpYyBib29sIGFyZUFsbExvYWRlcnNQYWdl
Q2FjaGVBY2NlcHRhYmxlKGNvbnN0IFJlc291cmNlTG9hZGVyTWFwJiBsb2FkZXJzKQogICAgIHJl
dHVybiB0cnVlOwogfQogCi1Eb2N1bWVudExvYWRlcjo6RG9jdW1lbnRMb2FkZXIoY29uc3QgUmVz
b3VyY2VSZXF1ZXN0JiByZXEsIGNvbnN0IFN1YnN0aXR1dGVEYXRhJiBzdWJzdGl0dXRlRGF0YSkK
LSAgICA6IG1fZGVmZXJNYWluUmVzb3VyY2VEYXRhTG9hZCh0cnVlKQotICAgICwgbV9mcmFtZShu
dWxscHRyKQotICAgICwgbV9jYWNoZWRSZXNvdXJjZUxvYWRlcihDYWNoZWRSZXNvdXJjZUxvYWRl
cjo6Y3JlYXRlKHRoaXMpKQorRG9jdW1lbnRMb2FkZXI6OkRvY3VtZW50TG9hZGVyKGNvbnN0IFJl
c291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgU3Vic3RpdHV0ZURhdGEmIHN1YnN0aXR1dGVE
YXRhKQorICAgIDogbV9jYWNoZWRSZXNvdXJjZUxvYWRlcihDYWNoZWRSZXNvdXJjZUxvYWRlcjo6
Y3JlYXRlKHRoaXMpKQogICAgICwgbV93cml0ZXIobV9mcmFtZSkKLSAgICAsIG1fb3JpZ2luYWxS
ZXF1ZXN0KHJlcSkKKyAgICAsIG1fb3JpZ2luYWxSZXF1ZXN0KHJlcXVlc3QpCiAgICAgLCBtX3N1
YnN0aXR1dGVEYXRhKHN1YnN0aXR1dGVEYXRhKQotICAgICwgbV9vcmlnaW5hbFJlcXVlc3RDb3B5
KHJlcSkKLSAgICAsIG1fcmVxdWVzdChyZXEpCisgICAgLCBtX29yaWdpbmFsUmVxdWVzdENvcHko
cmVxdWVzdCkKKyAgICAsIG1fcmVxdWVzdChyZXF1ZXN0KQogICAgICwgbV9vcmlnaW5hbFN1YnN0
aXR1dGVEYXRhV2FzVmFsaWQoc3Vic3RpdHV0ZURhdGEuaXNWYWxpZCgpKQotICAgICwgbV9jb21t
aXR0ZWQoZmFsc2UpCi0gICAgLCBtX2lzU3RvcHBpbmcoZmFsc2UpCi0gICAgLCBtX2dvdEZpcnN0
Qnl0ZShmYWxzZSkKLSAgICAsIG1faXNDbGllbnRSZWRpcmVjdChmYWxzZSkKLSAgICAsIG1faXNM
b2FkaW5nTXVsdGlwYXJ0Q29udGVudChmYWxzZSkKLSAgICAsIG1fd2FzT25sb2FkRGlzcGF0Y2hl
ZChmYWxzZSkKLSAgICAsIG1fc3RvcFJlY29yZGluZ1Jlc3BvbnNlcyhmYWxzZSkKICAgICAsIG1f
c3Vic3RpdHV0ZVJlc291cmNlRGVsaXZlcnlUaW1lcigqdGhpcywgJkRvY3VtZW50TG9hZGVyOjpz
dWJzdGl0dXRlUmVzb3VyY2VEZWxpdmVyeVRpbWVyRmlyZWQpCi0gICAgLCBtX2RpZENyZWF0ZUds
b2JhbEhpc3RvcnlFbnRyeShmYWxzZSkKLSAgICAsIG1fbG9hZGluZ01haW5SZXNvdXJjZShmYWxz
ZSkKLSAgICAsIG1fdGltZU9mTGFzdERhdGFSZWNlaXZlZCgwLjApCi0gICAgLCBtX2lkZW50aWZp
ZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyKDApCiAgICAgLCBtX2RhdGFMb2FkVGltZXIo
KnRoaXMsICZEb2N1bWVudExvYWRlcjo6aGFuZGxlU3Vic3RpdHV0ZURhdGFMb2FkTm93KQotICAg
ICwgbV9zdWJyZXNvdXJjZUxvYWRlcnNBcmVQYWdlQ2FjaGVBY2NlcHRhYmxlKGZhbHNlKQogICAg
ICwgbV9hcHBsaWNhdGlvbkNhY2hlSG9zdChzdGQ6Om1ha2VfdW5pcXVlPEFwcGxpY2F0aW9uQ2Fj
aGVIb3N0PigqdGhpcykpCiB7CiB9CkBAIC0xNjYsNyArMTUyLDkgQEAgRnJhbWVMb2FkZXIqIERv
Y3VtZW50TG9hZGVyOjpmcmFtZUxvYWRlcigpIGNvbnN0CiAKIFN1YnJlc291cmNlTG9hZGVyKiBE
b2N1bWVudExvYWRlcjo6bWFpblJlc291cmNlTG9hZGVyKCkgY29uc3QKIHsKLSAgICByZXR1cm4g
bV9tYWluUmVzb3VyY2UgPyBtX21haW5SZXNvdXJjZS0+bG9hZGVyKCkgOiAwOworICAgIGlmICgh
bV9tYWluUmVzb3VyY2UpCisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIHJldHVybiBtX21h
aW5SZXNvdXJjZS0+bG9hZGVyKCk7CiB9CiAKIERvY3VtZW50TG9hZGVyOjp+RG9jdW1lbnRMb2Fk
ZXIoKQpAQCAtMTc5LDcgKzE2Nyw3IEBAIERvY3VtZW50TG9hZGVyOjp+RG9jdW1lbnRMb2FkZXIo
KQogICAgIGlmIChtX2ljb25EYXRhQ2FsbGJhY2spCiAgICAgICAgIG1faWNvbkRhdGFDYWxsYmFj
ay0+aW52YWxpZGF0ZSgpOwogICAgIG1fY2FjaGVkUmVzb3VyY2VMb2FkZXItPmNsZWFyRG9jdW1l
bnRMb2FkZXIoKTsKLSAgICAKKwogICAgIGNsZWFyTWFpblJlc291cmNlKCk7CiB9CiAKQEAgLTE5
OSwzMSArMTg3LDYgQEAgRG9jdW1lbnQqIERvY3VtZW50TG9hZGVyOjpkb2N1bWVudCgpIGNvbnN0
CiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLWNvbnN0IFJlc291cmNlUmVxdWVzdCYgRG9jdW1l
bnRMb2FkZXI6Om9yaWdpbmFsUmVxdWVzdCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fb3JpZ2lu
YWxSZXF1ZXN0OwotfQotCi1jb25zdCBSZXNvdXJjZVJlcXVlc3QmIERvY3VtZW50TG9hZGVyOjpv
cmlnaW5hbFJlcXVlc3RDb3B5KCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9vcmlnaW5hbFJlcXVl
c3RDb3B5OwotfQotCi1jb25zdCBSZXNvdXJjZVJlcXVlc3QmIERvY3VtZW50TG9hZGVyOjpyZXF1
ZXN0KCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9yZXF1ZXN0OwotfQotCi1SZXNvdXJjZVJlcXVl
c3QmIERvY3VtZW50TG9hZGVyOjpyZXF1ZXN0KCkKLXsKLSAgICByZXR1cm4gbV9yZXF1ZXN0Owot
fQotCi1jb25zdCBVUkwmIERvY3VtZW50TG9hZGVyOjp1cmwoKSBjb25zdAotewotICAgIHJldHVy
biByZXF1ZXN0KCkudXJsKCk7Ci19Ci0KIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnJlcGxhY2VSZXF1
ZXN0VVJMRm9yU2FtZURvY3VtZW50TmF2aWdhdGlvbihjb25zdCBVUkwmIHVybCkKIHsKICAgICBt
X29yaWdpbmFsUmVxdWVzdENvcHkuc2V0VVJMKHVybCk7CkBAIC0zMTksNyArMjgyLDcgQEAgdm9p
ZCBEb2N1bWVudExvYWRlcjo6c3RvcExvYWRpbmcoKQogICAgIGNhbmNlbEFsbChtX211bHRpcGFy
dFN1YnJlc291cmNlTG9hZGVycyk7CiAKICAgICAvLyBBcHBjYWNoZSB1c2VzIFJlc291cmNlSGFu
ZGxlIGRpcmVjdGx5LCBEb2N1bWVudExvYWRlciBkb2Vzbid0IGNvdW50IHRoZXNlIGxvYWRzLgot
ICAgIG1fYXBwbGljYXRpb25DYWNoZUhvc3QtPnN0b3BMb2FkaW5nSW5GcmFtZShtX2ZyYW1lKTsK
KyAgICBtX2FwcGxpY2F0aW9uQ2FjaGVIb3N0LT5zdG9wTG9hZGluZ0luRnJhbWUoKm1fZnJhbWUp
OwogICAgIAogI2lmIEVOQUJMRShXRUJfQVJDSElWRSkgfHwgRU5BQkxFKE1IVE1MKQogICAgIGNs
ZWFyQXJjaGl2ZVJlc291cmNlcygpOwpAQCAtNjAyLDcgKzU2NSw3IEBAIHZvaWQgRG9jdW1lbnRM
b2FkZXI6OndpbGxTZW5kUmVxdWVzdChSZXNvdXJjZVJlcXVlc3QmIG5ld1JlcXVlc3QsIGNvbnN0
IFJlc291cmNlCiAKICAgICBBU1NFUlQoIW1fd2FpdGluZ0Zvck5hdmlnYXRpb25Qb2xpY3kpOwog
ICAgIG1fd2FpdGluZ0Zvck5hdmlnYXRpb25Qb2xpY3kgPSB0cnVlOwotICAgIGZyYW1lTG9hZGVy
KCktPnBvbGljeUNoZWNrZXIoKS5jaGVja05hdmlnYXRpb25Qb2xpY3kobmV3UmVxdWVzdCwgZGlk
UmVjZWl2ZVJlZGlyZWN0UmVzcG9uc2UsIFt0aGlzXShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJl
cXVlc3QsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwgYm9vbCBzaG91bGRDb250aW51ZSkgeworICAg
IGZyYW1lTG9hZGVyKCktPnBvbGljeUNoZWNrZXIoKS5jaGVja05hdmlnYXRpb25Qb2xpY3kobmV3
UmVxdWVzdCwgZGlkUmVjZWl2ZVJlZGlyZWN0UmVzcG9uc2UsIFt0aGlzXSAoY29uc3QgUmVzb3Vy
Y2VSZXF1ZXN0JiByZXF1ZXN0LCBGb3JtU3RhdGUqLCBib29sIHNob3VsZENvbnRpbnVlKSB7CiAg
ICAgICAgIGNvbnRpbnVlQWZ0ZXJOYXZpZ2F0aW9uUG9saWN5KHJlcXVlc3QsIHNob3VsZENvbnRp
bnVlKTsKICAgICB9KTsKIH0KQEAgLTkwMCwxMiArODYzLDggQEAgdm9pZCBEb2N1bWVudExvYWRl
cjo6Y29tbWl0RGF0YShjb25zdCBjaGFyKiBieXRlcywgc2l6ZV90IGxlbmd0aCkKICAgICAgICAg
aWYgKGZyYW1lTG9hZGVyKCktPnN0YXRlTWFjaGluZSgpLmNyZWF0aW5nSW5pdGlhbEVtcHR5RG9j
dW1lbnQoKSkKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgCi0jaWYgRU5BQkxFKE1IVE1M
KQotICAgICAgICAvLyBUaGUgb3JpZ2luIGlzIHRoZSBNSFRNTCBmaWxlLCB3ZSBuZWVkIHRvIHNl
dCB0aGUgYmFzZSBVUkwgdG8gdGhlIGRvY3VtZW50IGVuY29kZWQgaW4gdGhlIE1IVE1MIHNvCi0g
ICAgICAgIC8vIHJlbGF0aXZlIFVSTHMgYXJlIHJlc29sdmVkIHByb3Blcmx5LgotICAgICAgICBp
ZiAobV9hcmNoaXZlICYmIG1fYXJjaGl2ZS0+dHlwZSgpID09IEFyY2hpdmU6Ok1IVE1MKQorICAg
ICAgICBpZiAobV9hcmNoaXZlICYmIG1fYXJjaGl2ZS0+c2hvdWxkT3ZlcnJpZGVCYXNlVVJMKCkp
CiAgICAgICAgICAgICBtX2ZyYW1lLT5kb2N1bWVudCgpLT5zZXRCYXNlVVJMT3ZlcnJpZGUobV9h
cmNoaXZlLT5tYWluUmVzb3VyY2UoKS0+dXJsKCkpOwotI2VuZGlmCiAKICAgICAgICAgLy8gQ2Fs
bCByZWNlaXZlZEZpcnN0RGF0YSgpIGV4YWN0bHkgb25jZSBwZXIgbG9hZC4gV2Ugc2hvdWxkIG9u
bHkgcmVhY2ggdGhpcyBwb2ludCBtdWx0aXBsZSB0aW1lcwogICAgICAgICAvLyBmb3IgbXVsdGlw
YXJ0IGxvYWRzLCBhbmQgRnJhbWVMb2FkZXI6OmlzUmVwbGFjaW5nKCkgd2lsbCBiZSB0cnVlIGFm
dGVyIHRoZSBmaXJzdCB0aW1lLgpAQCAtOTIxLDEwICs4ODAsOCBAQCB2b2lkIERvY3VtZW50TG9h
ZGVyOjpjb21taXREYXRhKGNvbnN0IGNoYXIqIGJ5dGVzLCBzaXplX3QgbGVuZ3RoKQogICAgICAg
ICBpZiAob3ZlcnJpZGVFbmNvZGluZygpLmlzTnVsbCgpKSB7CiAgICAgICAgICAgICB1c2VyQ2hv
c2VuID0gZmFsc2U7CiAgICAgICAgICAgICBlbmNvZGluZyA9IHJlc3BvbnNlKCkudGV4dEVuY29k
aW5nTmFtZSgpOwotI2lmIEVOQUJMRShXRUJfQVJDSElWRSkKLSAgICAgICAgICAgIGlmIChtX2Fy
Y2hpdmUgJiYgbV9hcmNoaXZlLT50eXBlKCkgPT0gQXJjaGl2ZTo6V2ViQXJjaGl2ZSkKKyAgICAg
ICAgICAgIGlmIChtX2FyY2hpdmUgJiYgbV9hcmNoaXZlLT5zaG91bGRVc2VNYWluUmVzb3VyY2VF
bmNvZGluZygpKQogICAgICAgICAgICAgICAgIGVuY29kaW5nID0gbV9hcmNoaXZlLT5tYWluUmVz
b3VyY2UoKS0+dGV4dEVuY29kaW5nKCk7Ci0jZW5kaWYKICAgICAgICAgfSBlbHNlIHsKICAgICAg
ICAgICAgIHVzZXJDaG9zZW4gPSB0cnVlOwogICAgICAgICAgICAgZW5jb2RpbmcgPSBvdmVycmlk
ZUVuY29kaW5nKCk7CkBAIC0xMDgzLDE1ICsxMDQwLDE2IEBAIGJvb2wgRG9jdW1lbnRMb2FkZXI6
OmlzTG9hZGluZ0luQVBJU2Vuc2UoKSBjb25zdAogICAgIGlmIChmcmFtZUxvYWRlcigpLT5zdGF0
ZSgpICE9IEZyYW1lU3RhdGVDb21wbGV0ZSkgewogICAgICAgICBpZiAobV9mcmFtZS0+c2V0dGlu
Z3MoKS5uZWVkc0lzTG9hZGluZ0luQVBJU2Vuc2VRdWlyaygpICYmICFtX3N1YnJlc291cmNlTG9h
ZGVycy5pc0VtcHR5KCkpCiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICAKLSAgICAgICAg
RG9jdW1lbnQqIGRvYyA9IG1fZnJhbWUtPmRvY3VtZW50KCk7Ci0gICAgICAgIGlmICgoaXNMb2Fk
aW5nTWFpblJlc291cmNlKCkgfHwgIW1fZnJhbWUtPmRvY3VtZW50KCktPmxvYWRFdmVudEZpbmlz
aGVkKCkpICYmIGlzTG9hZGluZygpKQorCisgICAgICAgIEFTU0VSVChtX2ZyYW1lLT5kb2N1bWVu
dCgpKTsKKyAgICAgICAgYXV0byYgZG9jdW1lbnQgPSAqbV9mcmFtZS0+ZG9jdW1lbnQoKTsKKyAg
ICAgICAgaWYgKChpc0xvYWRpbmdNYWluUmVzb3VyY2UoKSB8fCAhZG9jdW1lbnQubG9hZEV2ZW50
RmluaXNoZWQoKSkgJiYgaXNMb2FkaW5nKCkpCiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAg
ICAgICAgaWYgKG1fY2FjaGVkUmVzb3VyY2VMb2FkZXItPnJlcXVlc3RDb3VudCgpKQogICAgICAg
ICAgICAgcmV0dXJuIHRydWU7Ci0gICAgICAgIGlmIChkb2MtPnByb2Nlc3NpbmdMb2FkRXZlbnQo
KSkKKyAgICAgICAgaWYgKGRvY3VtZW50LnByb2Nlc3NpbmdMb2FkRXZlbnQoKSkKICAgICAgICAg
ICAgIHJldHVybiB0cnVlOwotICAgICAgICBpZiAoZG9jLT5oYXNBY3RpdmVQYXJzZXIoKSkKKyAg
ICAgICAgaWYgKGRvY3VtZW50Lmhhc0FjdGl2ZVBhcnNlcigpKQogICAgICAgICAgICAgcmV0dXJu
IHRydWU7CiAgICAgfQogICAgIHJldHVybiBmcmFtZUxvYWRlcigpLT5zdWJmcmFtZUlzTG9hZGlu
ZygpOwpAQCAtMTEwMiw0MCArMTA2MCwzNSBAQCBib29sIERvY3VtZW50TG9hZGVyOjptYXliZUNy
ZWF0ZUFyY2hpdmUoKQogI2lmICFFTkFCTEUoV0VCX0FSQ0hJVkUpICYmICFFTkFCTEUoTUhUTUwp
CiAgICAgcmV0dXJuIGZhbHNlOwogI2Vsc2UKLSAgICAKICAgICAvLyBHaXZlIHRoZSBhcmNoaXZl
IG1hY2hpbmVyeSBhIGNyYWNrIGF0IHRoaXMgZG9jdW1lbnQuIElmIHRoZSBNSU1FIHR5cGUgaXMg
bm90IGFuIGFyY2hpdmUgdHlwZSwgaXQgd2lsbCByZXR1cm4gMC4KICAgICBtX2FyY2hpdmUgPSBB
cmNoaXZlRmFjdG9yeTo6Y3JlYXRlKG1fcmVzcG9uc2UudXJsKCksIG1haW5SZXNvdXJjZURhdGEo
KS5nZXQoKSwgbV9yZXNwb25zZS5taW1lVHlwZSgpKTsKICAgICBpZiAoIW1fYXJjaGl2ZSkKICAg
ICAgICAgcmV0dXJuIGZhbHNlOwogICAgIAotICAgIGFkZEFsbEFyY2hpdmVSZXNvdXJjZXMobV9h
cmNoaXZlLmdldCgpKTsKLSAgICBBcmNoaXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSA9IG1fYXJj
aGl2ZS0+bWFpblJlc291cmNlKCk7Ci0gICAgbV9wYXJzZWRBcmNoaXZlRGF0YSA9ICZtYWluUmVz
b3VyY2UtPmRhdGEoKTsKLSAgICBtX3dyaXRlci5zZXRNSU1FVHlwZShtYWluUmVzb3VyY2UtPm1p
bWVUeXBlKCkpOwotICAgIAorICAgIGFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoKm1fYXJjaGl2ZSk7
CisgICAgQVNTRVJUKG1fYXJjaGl2ZS0+bWFpblJlc291cmNlKCkpOworICAgIGF1dG8mIG1haW5S
ZXNvdXJjZSA9ICptX2FyY2hpdmUtPm1haW5SZXNvdXJjZSgpOworICAgIG1fcGFyc2VkQXJjaGl2
ZURhdGEgPSAmbWFpblJlc291cmNlLmRhdGEoKTsKKyAgICBtX3dyaXRlci5zZXRNSU1FVHlwZSht
YWluUmVzb3VyY2UubWltZVR5cGUoKSk7CisKICAgICBBU1NFUlQobV9mcmFtZS0+ZG9jdW1lbnQo
KSk7Ci0gICAgY29tbWl0RGF0YShtYWluUmVzb3VyY2UtPmRhdGEoKS5kYXRhKCksIG1haW5SZXNv
dXJjZS0+ZGF0YSgpLnNpemUoKSk7CisgICAgY29tbWl0RGF0YShtYWluUmVzb3VyY2UuZGF0YSgp
LmRhdGEoKSwgbWFpblJlc291cmNlLmRhdGEoKS5zaXplKCkpOwogICAgIHJldHVybiB0cnVlOwot
I2VuZGlmIC8vICFFTkFCTEUoV0VCX0FSQ0hJVkUpICYmICFFTkFCTEUoTUhUTUwpCisjZW5kaWYK
IH0KIAogI2lmIEVOQUJMRShXRUJfQVJDSElWRSkgfHwgRU5BQkxFKE1IVE1MKQogCi12b2lkIERv
Y3VtZW50TG9hZGVyOjpzZXRBcmNoaXZlKFBhc3NSZWZQdHI8QXJjaGl2ZT4gYXJjaGl2ZSkKK3Zv
aWQgRG9jdW1lbnRMb2FkZXI6OnNldEFyY2hpdmUoUmVmPEFyY2hpdmU+JiYgYXJjaGl2ZSkKIHsK
LSAgICBtX2FyY2hpdmUgPSBhcmNoaXZlOwotICAgIGFkZEFsbEFyY2hpdmVSZXNvdXJjZXMobV9h
cmNoaXZlLmdldCgpKTsKKyAgICBtX2FyY2hpdmUgPSBXVEZNb3ZlKGFyY2hpdmUpOworICAgIGFk
ZEFsbEFyY2hpdmVSZXNvdXJjZXMoKm1fYXJjaGl2ZSk7CiB9CiAKLXZvaWQgRG9jdW1lbnRMb2Fk
ZXI6OmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoQXJjaGl2ZSogYXJjaGl2ZSkKK3ZvaWQgRG9jdW1l
bnRMb2FkZXI6OmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoQXJjaGl2ZSYgYXJjaGl2ZSkKIHsKICAg
ICBpZiAoIW1fYXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbikKICAgICAgICAgbV9hcmNoaXZlUmVz
b3VyY2VDb2xsZWN0aW9uID0gc3RkOjptYWtlX3VuaXF1ZTxBcmNoaXZlUmVzb3VyY2VDb2xsZWN0
aW9uPigpOwotICAgICAgICAKLSAgICBBU1NFUlQoYXJjaGl2ZSk7Ci0gICAgaWYgKCFhcmNoaXZl
KQotICAgICAgICByZXR1cm47Ci0gICAgICAgIAogICAgIG1fYXJjaGl2ZVJlc291cmNlQ29sbGVj
dGlvbi0+YWRkQWxsUmVzb3VyY2VzKGFyY2hpdmUpOwogfQogCkBAIC0xMTQ1LDEzICsxMDk4LDEy
IEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6OmFkZEFyY2hpdmVSZXNvdXJjZShSZWY8QXJjaGl2ZVJl
c291cmNlPiYmIHJlc291cmNlKQogewogICAgIGlmICghbV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0
aW9uKQogICAgICAgICBtX2FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24gPSBzdGQ6Om1ha2VfdW5p
cXVlPEFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24+KCk7Ci0gICAgICAgIAogICAgIG1fYXJjaGl2
ZVJlc291cmNlQ29sbGVjdGlvbi0+YWRkUmVzb3VyY2UoV1RGTW92ZShyZXNvdXJjZSkpOwogfQog
Ci1QYXNzUmVmUHRyPEFyY2hpdmU+IERvY3VtZW50TG9hZGVyOjpwb3BBcmNoaXZlRm9yU3ViZnJh
bWUoY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IFVSTCYgdXJsKQorUmVmUHRyPEFyY2hp
dmU+IERvY3VtZW50TG9hZGVyOjpwb3BBcmNoaXZlRm9yU3ViZnJhbWUoY29uc3QgU3RyaW5nJiBm
cmFtZU5hbWUsIGNvbnN0IFVSTCYgdXJsKQogewotICAgIHJldHVybiBtX2FyY2hpdmVSZXNvdXJj
ZUNvbGxlY3Rpb24gPyBtX2FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24tPnBvcFN1YmZyYW1lQXJj
aGl2ZShmcmFtZU5hbWUsIHVybCkgOiBQYXNzUmVmUHRyPEFyY2hpdmU+KG51bGxwdHIpOworICAg
IHJldHVybiBtX2FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24gPyBtX2FyY2hpdmVSZXNvdXJjZUNv
bGxlY3Rpb24tPnBvcFN1YmZyYW1lQXJjaGl2ZShmcmFtZU5hbWUsIHVybCkgOiBudWxscHRyOwog
fQogCiB2b2lkIERvY3VtZW50TG9hZGVyOjpjbGVhckFyY2hpdmVSZXNvdXJjZXMoKQpAQCAtMTE3
MSw3ICsxMTIzLDcgQEAgQXJjaGl2ZVJlc291cmNlKiBEb2N1bWVudExvYWRlcjo6YXJjaGl2ZVJl
c291cmNlRm9yVVJMKGNvbnN0IFVSTCYgdXJsKSBjb25zdAogewogICAgIGlmICghbV9hcmNoaXZl
UmVzb3VyY2VDb2xsZWN0aW9uKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICBBcmNoaXZl
UmVzb3VyY2UqIHJlc291cmNlID0gbV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uLT5hcmNoaXZl
UmVzb3VyY2VGb3JVUkwodXJsKTsKKyAgICBhdXRvKiByZXNvdXJjZSA9IG1fYXJjaGl2ZVJlc291
cmNlQ29sbGVjdGlvbi0+YXJjaGl2ZVJlc291cmNlRm9yVVJMKHVybCk7CiAgICAgaWYgKCFyZXNv
dXJjZSB8fCByZXNvdXJjZS0+c2hvdWxkSWdub3JlV2hlblVuYXJjaGl2aW5nKCkpCiAgICAgICAg
IHJldHVybiBudWxscHRyOwogICAgIHJldHVybiByZXNvdXJjZTsKQEAgLTExODIsMTcgKzExMzQs
MTYgQEAgUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gRG9jdW1lbnRMb2FkZXI6Om1haW5SZXNvdXJj
ZSgpIGNvbnN0CiAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZGF0YSA9IG1haW5SZXNvdXJjZURh
dGEoKTsKICAgICBpZiAoIWRhdGEpCiAgICAgICAgIGRhdGEgPSBTaGFyZWRCdWZmZXI6OmNyZWF0
ZSgpOwotICAgICAgICAKICAgICBhdXRvJiByZXNwb25zZSA9IHRoaXMtPnJlc3BvbnNlKCk7CiAg
ICAgcmV0dXJuIEFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKFdURk1vdmUoZGF0YSksIHJlc3BvbnNl
LnVybCgpLCByZXNwb25zZS5taW1lVHlwZSgpLCByZXNwb25zZS50ZXh0RW5jb2RpbmdOYW1lKCks
IGZyYW1lKCktPnRyZWUoKS51bmlxdWVOYW1lKCkpOwogfQogCi1QYXNzUmVmUHRyPEFyY2hpdmVS
ZXNvdXJjZT4gRG9jdW1lbnRMb2FkZXI6OnN1YnJlc291cmNlKGNvbnN0IFVSTCYgdXJsKSBjb25z
dAorUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gRG9jdW1lbnRMb2FkZXI6OnN1YnJlc291cmNlKGNv
bnN0IFVSTCYgdXJsKSBjb25zdAogewogICAgIGlmICghaXNDb21taXR0ZWQoKSkKICAgICAgICAg
cmV0dXJuIG51bGxwdHI7CiAgICAgCi0gICAgQ2FjaGVkUmVzb3VyY2UqIHJlc291cmNlID0gbV9j
YWNoZWRSZXNvdXJjZUxvYWRlci0+Y2FjaGVkUmVzb3VyY2UodXJsKTsKKyAgICBhdXRvKiByZXNv
dXJjZSA9IG1fY2FjaGVkUmVzb3VyY2VMb2FkZXItPmNhY2hlZFJlc291cmNlKHVybCk7CiAgICAg
aWYgKCFyZXNvdXJjZSB8fCAhcmVzb3VyY2UtPmlzTG9hZGVkKCkpCiAgICAgICAgIHJldHVybiBh
cmNoaXZlUmVzb3VyY2VGb3JVUkwodXJsKTsKIApAQCAtMTIwNiwxOCArMTE1NywxNiBAQCBQYXNz
UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gRG9jdW1lbnRMb2FkZXI6OnN1YnJlc291cmNlKGNvbnN0
IFVSTCYgdXJsKSBjb25zdAogICAgIHJldHVybiBBcmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShkYXRh
LCB1cmwsIHJlc291cmNlLT5yZXNwb25zZSgpKTsKIH0KIAotVmVjdG9yPFJlZlB0cjxBcmNoaXZl
UmVzb3VyY2U+PiBEb2N1bWVudExvYWRlcjo6c3VicmVzb3VyY2VzKCkgY29uc3QKK1ZlY3RvcjxS
ZWY8QXJjaGl2ZVJlc291cmNlPj4gRG9jdW1lbnRMb2FkZXI6OnN1YnJlc291cmNlcygpIGNvbnN0
CiB7CiAgICAgaWYgKCFpc0NvbW1pdHRlZCgpKQogICAgICAgICByZXR1cm4geyB9OwogCi0gICAg
VmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+PiBzdWJyZXNvdXJjZXM7Ci0KLSAgICBmb3Ig
KGF1dG8mIGNhY2hlZFJlc291cmNlSGFuZGxlIDogbV9jYWNoZWRSZXNvdXJjZUxvYWRlci0+YWxs
Q2FjaGVkUmVzb3VyY2VzKCkudmFsdWVzKCkpIHsKLSAgICAgICAgaWYgKFJlZlB0cjxBcmNoaXZl
UmVzb3VyY2U+IHN1YnJlc291cmNlID0gdGhpcy0+c3VicmVzb3VyY2UoVVJMKFBhcnNlZFVSTFN0
cmluZywgY2FjaGVkUmVzb3VyY2VIYW5kbGUtPnVybCgpKSkpCi0gICAgICAgICAgICBzdWJyZXNv
dXJjZXMuYXBwZW5kKFdURk1vdmUoc3VicmVzb3VyY2UpKTsKKyAgICBWZWN0b3I8UmVmPEFyY2hp
dmVSZXNvdXJjZT4+IHN1YnJlc291cmNlczsKKyAgICBmb3IgKGF1dG8mIGhhbmRsZSA6IG1fY2Fj
aGVkUmVzb3VyY2VMb2FkZXItPmFsbENhY2hlZFJlc291cmNlcygpLnZhbHVlcygpKSB7CisgICAg
ICAgIGlmIChhdXRvIHN1YnJlc291cmNlID0gdGhpcy0+c3VicmVzb3VyY2UoeyBQYXJzZWRVUkxT
dHJpbmcsIGhhbmRsZS0+dXJsKCkgfSkpCisgICAgICAgICAgICBzdWJyZXNvdXJjZXMuYXBwZW5k
KHN1YnJlc291cmNlLnJlbGVhc2VOb25OdWxsKCkpOwogICAgIH0KLQogICAgIHJldHVybiBzdWJy
ZXNvdXJjZXM7CiB9CiAKQEAgLTEyMjUsOSArMTE3NCwxMSBAQCB2b2lkIERvY3VtZW50TG9hZGVy
OjpkZWxpdmVyU3Vic3RpdHV0ZVJlc291cmNlc0FmdGVyRGVsYXkoKQogewogICAgIGlmIChtX3Bl
bmRpbmdTdWJzdGl0dXRlUmVzb3VyY2VzLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwotICAg
IEFTU0VSVChtX2ZyYW1lICYmIG1fZnJhbWUtPnBhZ2UoKSk7CisgICAgQVNTRVJUKG1fZnJhbWUp
OworICAgIEFTU0VSVChtX2ZyYW1lLT5wYWdlKCkpOwogICAgIGlmIChtX2ZyYW1lLT5wYWdlKCkt
PmRlZmVyc0xvYWRpbmcoKSkKICAgICAgICAgcmV0dXJuOworCiAgICAgaWYgKCFtX3N1YnN0aXR1
dGVSZXNvdXJjZURlbGl2ZXJ5VGltZXIuaXNBY3RpdmUoKSkKICAgICAgICAgbV9zdWJzdGl0dXRl
UmVzb3VyY2VEZWxpdmVyeVRpbWVyLnN0YXJ0T25lU2hvdCgwKTsKIH0KQEAgLTEyMzYsMTggKzEx
ODcsMTUgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6c3Vic3RpdHV0ZVJlc291cmNlRGVsaXZlcnlU
aW1lckZpcmVkKCkKIHsKICAgICBpZiAobV9wZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlcy5pc0Vt
cHR5KCkpCiAgICAgICAgIHJldHVybjsKLSAgICBBU1NFUlQobV9mcmFtZSAmJiBtX2ZyYW1lLT5w
YWdlKCkpOworICAgIEFTU0VSVChtX2ZyYW1lKTsKKyAgICBBU1NFUlQobV9mcmFtZS0+cGFnZSgp
KTsKICAgICBpZiAobV9mcmFtZS0+cGFnZSgpLT5kZWZlcnNMb2FkaW5nKCkpCiAgICAgICAgIHJl
dHVybjsKIAotICAgIFN1YnN0aXR1dGVSZXNvdXJjZU1hcCBjb3B5OwotICAgIGNvcHkuc3dhcCht
X3BlbmRpbmdTdWJzdGl0dXRlUmVzb3VyY2VzKTsKLQotICAgIGZvciAoYXV0byYgZW50cnkgOiBj
b3B5KSB7Ci0gICAgICAgIGF1dG8mIGxvYWRlciA9IGVudHJ5LmtleTsKLSAgICAgICAgU3Vic3Rp
dHV0ZVJlc291cmNlKiByZXNvdXJjZSA9IGVudHJ5LnZhbHVlLmdldCgpOwotCi0gICAgICAgIGlm
IChyZXNvdXJjZSkKKyAgICBhdXRvIHBlbmRpbmdTdWJzdGl0dXRlUmVzb3VyY2VzID0gV1RGTW92
ZShtX3BlbmRpbmdTdWJzdGl0dXRlUmVzb3VyY2VzKTsKKyAgICBmb3IgKGF1dG8mIHBlbmRpbmdT
dWJzdGl0dXRlUmVzb3VyY2UgOiBwZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlcykgeworICAgICAg
ICBhdXRvJiBsb2FkZXIgPSBwZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlLmtleTsKKyAgICAgICAg
aWYgKGF1dG8mIHJlc291cmNlID0gcGVuZGluZ1N1YnN0aXR1dGVSZXNvdXJjZS52YWx1ZSkKICAg
ICAgICAgICAgIHJlc291cmNlLT5kZWxpdmVyKCpsb2FkZXIpOwogICAgICAgICBlbHNlIHsKICAg
ICAgICAgICAgIC8vIEEgbnVsbCByZXNvdXJjZSBtZWFucyB0aGF0IHdlIHNob3VsZCBmYWlsIHRo
ZSBsb2FkLgpAQCAtMTI1OCwxMCArMTIwNiwxMiBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpzdWJz
dGl0dXRlUmVzb3VyY2VEZWxpdmVyeVRpbWVyRmlyZWQoKQogfQogCiAjaWZuZGVmIE5ERUJVRwor
CiBib29sIERvY3VtZW50TG9hZGVyOjppc1N1YnN0aXR1dGVMb2FkUGVuZGluZyhSZXNvdXJjZUxv
YWRlciogbG9hZGVyKSBjb25zdAogewogICAgIHJldHVybiBtX3BlbmRpbmdTdWJzdGl0dXRlUmVz
b3VyY2VzLmNvbnRhaW5zKGxvYWRlcik7CiB9CisKICNlbmRpZgogCiB2b2lkIERvY3VtZW50TG9h
ZGVyOjpjYW5jZWxQZW5kaW5nU3Vic3RpdHV0ZUxvYWQoUmVzb3VyY2VMb2FkZXIqIGxvYWRlcikK
QEAgLTEyNzQsOSArMTIyNCwxMCBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpjYW5jZWxQZW5kaW5n
U3Vic3RpdHV0ZUxvYWQoUmVzb3VyY2VMb2FkZXIqIGxvYWRlcikKIH0KIAogI2lmIEVOQUJMRShX
RUJfQVJDSElWRSkgfHwgRU5BQkxFKE1IVE1MKQorCiBib29sIERvY3VtZW50TG9hZGVyOjpzY2hl
ZHVsZUFyY2hpdmVMb2FkKFJlc291cmNlTG9hZGVyJiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUmVx
dWVzdCYgcmVxdWVzdCkKIHsKLSAgICBpZiAoQXJjaGl2ZVJlc291cmNlKiByZXNvdXJjZSA9IGFy
Y2hpdmVSZXNvdXJjZUZvclVSTChyZXF1ZXN0LnVybCgpKSkgeworICAgIGlmIChhdXRvKiByZXNv
dXJjZSA9IGFyY2hpdmVSZXNvdXJjZUZvclVSTChyZXF1ZXN0LnVybCgpKSkgewogICAgICAgICBz
Y2hlZHVsZVN1YnN0aXR1dGVSZXNvdXJjZUxvYWQobG9hZGVyLCAqcmVzb3VyY2UpOwogICAgICAg
ICByZXR1cm4gdHJ1ZTsKICAgICB9CkBAIC0xMjg0LDIxICsxMjM1LDE5IEBAIGJvb2wgRG9jdW1l
bnRMb2FkZXI6OnNjaGVkdWxlQXJjaGl2ZUxvYWQoUmVzb3VyY2VMb2FkZXImIGxvYWRlciwgY29u
c3QgUmVzb3VyY2VSCiAgICAgaWYgKCFtX2FyY2hpdmUpCiAgICAgICAgIHJldHVybiBmYWxzZTsK
IAotICAgIHN3aXRjaCAobV9hcmNoaXZlLT50eXBlKCkpIHsKICNpZiBFTkFCTEUoV0VCX0FSQ0hJ
VkUpCi0gICAgY2FzZSBBcmNoaXZlOjpXZWJBcmNoaXZlOgotICAgICAgICAvLyBXZWJBcmNoaXZl
RGVidWdNb2RlIG1lYW5zIHdlIGZhaWwgbG9hZHMgaW5zdGVhZCBvZiB0cnlpbmcgdG8gZmV0Y2gg
dGhlbSBmcm9tIHRoZSBuZXR3b3JrIGlmIHRoZXkncmUgbm90IGluIHRoZSBhcmNoaXZlLgotICAg
ICAgICByZXR1cm4gbV9mcmFtZS0+c2V0dGluZ3MoKS53ZWJBcmNoaXZlRGVidWdNb2RlRW5hYmxl
ZCgpICYmIEFyY2hpdmVGYWN0b3J5Ojppc0FyY2hpdmVNaW1lVHlwZShyZXNwb25zZU1JTUVUeXBl
KCkpOwotI2VuZGlmCi0jaWYgRU5BQkxFKE1IVE1MKQotICAgIGNhc2UgQXJjaGl2ZTo6TUhUTUw6
Ci0gICAgICAgIHJldHVybiB0cnVlOyAvLyBBbHdheXMgZmFpbCB0aGUgbG9hZCBmb3IgcmVzb3Vy
Y2VzIG5vdCBpbmNsdWRlZCBpbiB0aGUgTUhUTUwuCisgICAgLy8gVGhlIGlkZWEgb2YgV2ViQXJj
aGl2ZURlYnVnTW9kZSBpcyB0aGF0IHdlIHNob3VsZCBmYWlsIGluc3RlYWQgb2YgdHJ5aW5nIHRv
IGZldGNoIGZyb20gdGhlIG5ldHdvcmsuCisgICAgLy8gUmV0dXJuaW5nIHRydWUgZW5zdXJlcyB0
aGUgY2FsbGVyIHdpbGwgbm90IHRyeSB0byBmZXRjaCBmcm9tIHRoZSBuZXR3b3JrLgorICAgIGlm
IChtX2ZyYW1lLT5zZXR0aW5ncygpLndlYkFyY2hpdmVEZWJ1Z01vZGVFbmFibGVkKCkgJiYgcmVz
cG9uc2VNSU1FVHlwZSgpID09ICJhcHBsaWNhdGlvbi94LXdlYmFyY2hpdmUiKQorICAgICAgICBy
ZXR1cm4gdHJ1ZTsKICNlbmRpZgotICAgIGRlZmF1bHQ6Ci0gICAgICAgIHJldHVybiBmYWxzZTsK
LSAgICB9CisKKyAgICAvLyBJZiB3ZSB3YW50IHRvIGxvYWQgZnJvbSB0aGUgYXJjaGl2ZSBvbmx5
LCB0aGVuIHdlIHNob3VsZCBhbHdheXMgcmV0dXJuIHRydWUgc28gdGhhdCB0aGUgY2FsbGVyCisg
ICAgLy8gZG9lcyBub3QgdHJ5IHRvIGZldGNoIGZvcm0gdGhlIG5ldHdvcmsuCisgICAgcmV0dXJu
IG1fYXJjaGl2ZS0+c2hvdWxkTG9hZEZyb21BcmNoaXZlT25seSgpOwogfQotI2VuZGlmIC8vIEVO
QUJMRShXRUJfQVJDSElWRSkKKworI2VuZGlmCiAKIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnNjaGVk
dWxlU3Vic3RpdHV0ZVJlc291cmNlTG9hZChSZXNvdXJjZUxvYWRlciYgbG9hZGVyLCBTdWJzdGl0
dXRlUmVzb3VyY2UmIHJlc291cmNlKQogewpAQCAtMTMwNiwxMCArMTI1NSwxMCBAQCB2b2lkIERv
Y3VtZW50TG9hZGVyOjpzY2hlZHVsZVN1YnN0aXR1dGVSZXNvdXJjZUxvYWQoUmVzb3VyY2VMb2Fk
ZXImIGxvYWRlciwgU3VicwogICAgIGRlbGl2ZXJTdWJzdGl0dXRlUmVzb3VyY2VzQWZ0ZXJEZWxh
eSgpOwogfQogCi12b2lkIERvY3VtZW50TG9hZGVyOjphZGRSZXNwb25zZShjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiByKQordm9pZCBEb2N1bWVudExvYWRlcjo6YWRkUmVzcG9uc2UoY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgaWYgKCFtX3N0b3BSZWNvcmRpbmdSZXNw
b25zZXMpCi0gICAgICAgIG1fcmVzcG9uc2VzLmFwcGVuZChyKTsKKyAgICAgICAgbV9yZXNwb25z
ZXMuYXBwZW5kKHJlc3BvbnNlKTsKIH0KIAogdm9pZCBEb2N1bWVudExvYWRlcjo6c3RvcFJlY29y
ZGluZ1Jlc3BvbnNlcygpCkBAIC0xMzQ0LDIxICsxMjkzLDExIEBAIGJvb2wgRG9jdW1lbnRMb2Fk
ZXI6OnVybEZvckhpc3RvcnlSZWZsZWN0c0ZhaWx1cmUoKSBjb25zdAogICAgIHJldHVybiBtX3N1
YnN0aXR1dGVEYXRhLmlzVmFsaWQoKSB8fCBtX3Jlc3BvbnNlLmh0dHBTdGF0dXNDb2RlKCkgPj0g
NDAwOwogfQogCi1jb25zdCBVUkwmIERvY3VtZW50TG9hZGVyOjpvcmlnaW5hbFVSTCgpIGNvbnN0
Ci17Ci0gICAgcmV0dXJuIG1fb3JpZ2luYWxSZXF1ZXN0Q29weS51cmwoKTsKLX0KLQotY29uc3Qg
VVJMJiBEb2N1bWVudExvYWRlcjo6cmVzcG9uc2VVUkwoKSBjb25zdAotewotICAgIHJldHVybiBt
X3Jlc3BvbnNlLnVybCgpOwotfQotCiBVUkwgRG9jdW1lbnRMb2FkZXI6OmRvY3VtZW50VVJMKCkg
Y29uc3QKIHsKICAgICBVUkwgdXJsID0gc3Vic3RpdHV0ZURhdGEoKS5yZXNwb25zZSgpLnVybCgp
OwogI2lmIEVOQUJMRShXRUJfQVJDSElWRSkKLSAgICBpZiAodXJsLmlzRW1wdHkoKSAmJiBtX2Fy
Y2hpdmUgJiYgbV9hcmNoaXZlLT50eXBlKCkgPT0gQXJjaGl2ZTo6V2ViQXJjaGl2ZSkKKyAgICBp
ZiAodXJsLmlzRW1wdHkoKSAmJiBtX2FyY2hpdmUgJiYgbV9hcmNoaXZlLT5zaG91bGRVc2VNYWlu
UmVzb3VyY2VVUkwoKSkKICAgICAgICAgdXJsID0gbV9hcmNoaXZlLT5tYWluUmVzb3VyY2UoKS0+
dXJsKCk7CiAjZW5kaWYKICAgICBpZiAodXJsLmlzRW1wdHkoKSkKQEAgLTEzNjgsMjggKzEzMDcs
MTUgQEAgVVJMIERvY3VtZW50TG9hZGVyOjpkb2N1bWVudFVSTCgpIGNvbnN0CiAgICAgcmV0dXJu
IHVybDsKIH0KIAotY29uc3QgU3RyaW5nJiBEb2N1bWVudExvYWRlcjo6cmVzcG9uc2VNSU1FVHlw
ZSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fcmVzcG9uc2UubWltZVR5cGUoKTsKLX0KLQotY29u
c3QgU3RyaW5nJiBEb2N1bWVudExvYWRlcjo6Y3VycmVudENvbnRlbnRUeXBlKCkgY29uc3QKLXsK
LSAgICByZXR1cm4gbV93cml0ZXIubWltZVR5cGUoKTsKLX0KLQogI2lmIFBMQVRGT1JNKElPUykK
KwogLy8gRklYTUU6IFRoaXMgbWV0aG9kIHNlZW1zIHRvIHZpb2xhdGUgdGhlIGVuY2Fwc3VsYXRp
b24gb2YgdGhpcyBjbGFzcy4KIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnNldFJlc3BvbnNlTUlNRVR5
cGUoY29uc3QgU3RyaW5nJiByZXNwb25zZU1pbWVUeXBlKQogewogICAgIG1fcmVzcG9uc2Uuc2V0
TWltZVR5cGUocmVzcG9uc2VNaW1lVHlwZSk7CiB9Ci0jZW5kaWYKIAotY29uc3QgVVJMJiBEb2N1
bWVudExvYWRlcjo6dW5yZWFjaGFibGVVUkwoKSBjb25zdAotewotICAgIHJldHVybiBtX3N1YnN0
aXR1dGVEYXRhLmZhaWxpbmdVUkwoKTsKLX0KKyNlbmRpZgogCiB2b2lkIERvY3VtZW50TG9hZGVy
OjpzZXREZWZlcnNMb2FkaW5nKGJvb2wgZGVmZXJzKQogewpAQCAtMTY4Miw3ICsxNjA4LDcgQEAg
dm9pZCBEb2N1bWVudExvYWRlcjo6Z2V0SWNvbkxvYWREZWNpc2lvbkZvckljb25VUkwoY29uc3Qg
U3RyaW5nJiB1cmxTdHJpbmcpCiAgICAgaWYgKG1faWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrKQog
ICAgICAgICBtX2ljb25Mb2FkRGVjaXNpb25DYWxsYmFjay0+aW52YWxpZGF0ZSgpOwogICAgIG1f
aWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrID0gSWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrOjpjcmVh
dGUodGhpcywgaWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrKTsKLSAgICBpY29uRGF0YWJhc2UoKS5s
b2FkRGVjaXNpb25Gb3JJY29uVVJMKHVybFN0cmluZywgbV9pY29uTG9hZERlY2lzaW9uQ2FsbGJh
Y2spOworICAgIGljb25EYXRhYmFzZSgpLmxvYWREZWNpc2lvbkZvckljb25VUkwodXJsU3RyaW5n
LCAqbV9pY29uTG9hZERlY2lzaW9uQ2FsbGJhY2spOwogfQogCiB2b2lkIERvY3VtZW50TG9hZGVy
Ojpjb250aW51ZUljb25Mb2FkV2l0aERlY2lzaW9uKEljb25Mb2FkRGVjaXNpb24gZGVjaXNpb24p
CkBAIC0xNzAzLDcgKzE2MjksNyBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpnZXRJY29uRGF0YUZv
ckljb25VUkwoY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcpCiAgICAgaWYgKG1faWNvbkRhdGFDYWxs
YmFjaykKICAgICAgICAgbV9pY29uRGF0YUNhbGxiYWNrLT5pbnZhbGlkYXRlKCk7CiAgICAgbV9p
Y29uRGF0YUNhbGxiYWNrID0gSWNvbkRhdGFDYWxsYmFjazo6Y3JlYXRlKHRoaXMsIGljb25EYXRh
Q2FsbGJhY2spOwotICAgIGljb25EYXRhYmFzZSgpLmljb25EYXRhRm9ySWNvblVSTCh1cmxTdHJp
bmcsIG1faWNvbkRhdGFDYWxsYmFjayk7CisgICAgaWNvbkRhdGFiYXNlKCkuaWNvbkRhdGFGb3JJ
Y29uVVJMKHVybFN0cmluZywgKm1faWNvbkRhdGFDYWxsYmFjayk7CiB9CiAKIHZvaWQgRG9jdW1l
bnRMb2FkZXI6OnN0YXJ0SWNvbkxvYWRpbmcoKQpAQCAtMTc0OSw3ICsxNjc1LDcgQEAgdm9pZCBE
b2N1bWVudExvYWRlcjo6ZmluaXNoZWRMb2FkaW5nSWNvbihJY29uTG9hZGVyJiBsb2FkZXIsIFNo
YXJlZEJ1ZmZlciogYnVmZmUKIHZvaWQgRG9jdW1lbnRMb2FkZXI6OmRpc3BhdGNoT25sb2FkRXZl
bnRzKCkKIHsKICAgICBtX3dhc09ubG9hZERpc3BhdGNoZWQgPSB0cnVlOwotICAgIGFwcGxpY2F0
aW9uQ2FjaGVIb3N0KCktPnN0b3BEZWZlcnJpbmdFdmVudHMoKTsKKyAgICBtX2FwcGxpY2F0aW9u
Q2FjaGVIb3N0LT5zdG9wRGVmZXJyaW5nRXZlbnRzKCk7CiB9CiAKIHZvaWQgRG9jdW1lbnRMb2Fk
ZXI6OnNldFRyaWdnZXJpbmdBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgYWN0aW9uKQpA
QCAtMTc4OSwyMyArMTcxNSwxOCBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjphZGRQZW5kaW5nQ29u
dGVudEV4dGVuc2lvbkRpc3BsYXlOb25lU2VsZWN0b3IoY29uc3QgU3RyaW5nJgogfQogI2VuZGlm
CiAKLSNpZiBFTkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCi1Db250ZW50RmlsdGVyKiBEb2N1bWVu
dExvYWRlcjo6Y29udGVudEZpbHRlcigpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fY29udGVudEZp
bHRlci5nZXQoKTsKLX0KLSNlbmRpZgotCiBib29sIERvY3VtZW50TG9hZGVyOjppc0Fsd2F5c09u
TG9nZ2luZ0FsbG93ZWQoKSBjb25zdAogewotICAgIHJldHVybiBtX2ZyYW1lID8gbV9mcmFtZS0+
aXNBbHdheXNPbkxvZ2dpbmdBbGxvd2VkKCkgOiB0cnVlOworICAgIHJldHVybiAhbV9mcmFtZSB8
fCBtX2ZyYW1lLT5pc0Fsd2F5c09uTG9nZ2luZ0FsbG93ZWQoKTsKIH0KIAogI2lmIFVTRShRVUlD
S19MT09LKQorCiB2b2lkIERvY3VtZW50TG9hZGVyOjpzZXRRdWlja0xvb2tIYW5kbGUoc3RkOjp1
bmlxdWVfcHRyPFF1aWNrTG9va0hhbmRsZT4gcXVpY2tMb29rSGFuZGxlKQogewogICAgIG1fcXVp
Y2tMb29rSGFuZGxlID0gV1RGTW92ZShxdWlja0xvb2tIYW5kbGUpOwogfQorCiAjZW5kaWYKIAog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0RvY3VtZW50TG9hZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIu
aAppbmRleCBkNzBiMzliODZmODJjMDcyM2QzMmZhNmU4MTU2NTkyNDg3ZTY2MDkyLi44N2U0ZWI3
NjNiYWVhMWRkNjU4NTM0ZDgyZjk0NzlhZjBjMjg1NWVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
RG9jdW1lbnRMb2FkZXIuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MDYtMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMp
IDIwMDYtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQg
KEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKQEAgLTc2LDggKzc2LDcgQEAgY2xhc3MgU2hhcmVkQnVmZmVyOwogY2xhc3MgU3VicmVzb3Vy
Y2VMb2FkZXI7CiBjbGFzcyBTdWJzdGl0dXRlUmVzb3VyY2U7CiAKLXR5cGVkZWYgSGFzaE1hcDx1
bnNpZ25lZCBsb25nLCBSZWZQdHI8UmVzb3VyY2VMb2FkZXI+PiBSZXNvdXJjZUxvYWRlck1hcDsK
LXR5cGVkZWYgVmVjdG9yPFJlc291cmNlUmVzcG9uc2U+IFJlc3BvbnNlVmVjdG9yOwordXNpbmcg
UmVzb3VyY2VMb2FkZXJNYXAgPSBIYXNoTWFwPHVuc2lnbmVkIGxvbmcsIFJlZlB0cjxSZXNvdXJj
ZUxvYWRlcj4+OwogCiBjbGFzcyBEb2N1bWVudExvYWRlciA6IHB1YmxpYyBSZWZDb3VudGVkPERv
Y3VtZW50TG9hZGVyPiwgcHJpdmF0ZSBDYWNoZWRSYXdSZXNvdXJjZUNsaWVudCB7CiAgICAgV1RG
X01BS0VfRkFTVF9BTExPQ0FURUQ7CkBAIC0xNTAsMTQgKzE0OSwxNSBAQCBwdWJsaWM6CiAjZW5k
aWYKIAogI2lmIEVOQUJMRShXRUJfQVJDSElWRSkgfHwgRU5BQkxFKE1IVE1MKQotICAgIHZvaWQg
c2V0QXJjaGl2ZShQYXNzUmVmUHRyPEFyY2hpdmU+KTsKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lk
IGFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoQXJjaGl2ZSopOworICAgIHZvaWQgc2V0QXJjaGl2ZShS
ZWY8QXJjaGl2ZT4mJik7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBhZGRBbGxBcmNoaXZlUmVz
b3VyY2VzKEFyY2hpdmUmKTsKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGFkZEFyY2hpdmVSZXNv
dXJjZShSZWY8QXJjaGl2ZVJlc291cmNlPiYmKTsKLSAgICBQYXNzUmVmUHRyPEFyY2hpdmU+IHBv
cEFyY2hpdmVGb3JTdWJmcmFtZShjb25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgY29uc3QgVVJMJik7
CisgICAgUmVmUHRyPEFyY2hpdmU+IHBvcEFyY2hpdmVGb3JTdWJmcmFtZShjb25zdCBTdHJpbmcm
IGZyYW1lTmFtZSwgY29uc3QgVVJMJik7CiAgICAgV0VCQ09SRV9FWFBPUlQgU2hhcmVkQnVmZmVy
KiBwYXJzZWRBcmNoaXZlRGF0YSgpIGNvbnN0OwogCiAgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBz
Y2hlZHVsZUFyY2hpdmVMb2FkKFJlc291cmNlTG9hZGVyJiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0
Jik7CiAjZW5kaWYKKwogICAgIHZvaWQgc2NoZWR1bGVTdWJzdGl0dXRlUmVzb3VyY2VMb2FkKFJl
c291cmNlTG9hZGVyJiwgU3Vic3RpdHV0ZVJlc291cmNlJik7CiAKICAgICAvLyBSZXR1cm4gdGhl
IEFyY2hpdmVSZXNvdXJjZSBmb3IgdGhlIFVSTCBvbmx5IHdoZW4gbG9hZGluZyBhbiBBcmNoaXZl
CkBAIC0xNjYsOSArMTY2LDEwIEBAIHB1YmxpYzoKICAgICBXRUJDT1JFX0VYUE9SVCBSZWZQdHI8
QXJjaGl2ZVJlc291cmNlPiBtYWluUmVzb3VyY2UoKSBjb25zdDsKIAogICAgIC8vIFJldHVybiBh
biBBcmNoaXZlUmVzb3VyY2UgZm9yIHRoZSBVUkwsIGVpdGhlciBjcmVhdGluZyBmcm9tIGxpdmUg
ZGF0YSBvcgotICAgIC8vIHB1bGxpbmcgZnJvbSB0aGUgQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlv
bgotICAgIFdFQkNPUkVfRVhQT1JUIFBhc3NSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBzdWJyZXNv
dXJjZShjb25zdCBVUkwmKSBjb25zdDsKLSAgICBXRUJDT1JFX0VYUE9SVCBWZWN0b3I8UmVmUHRy
PEFyY2hpdmVSZXNvdXJjZT4+IHN1YnJlc291cmNlcygpIGNvbnN0OworICAgIC8vIHB1bGxpbmcg
ZnJvbSB0aGUgQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi4KKyAgICBXRUJDT1JFX0VYUE9SVCBS
ZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBzdWJyZXNvdXJjZShjb25zdCBVUkwmKSBjb25zdDsKKwor
ICAgIFdFQkNPUkVfRVhQT1JUIFZlY3RvcjxSZWY8QXJjaGl2ZVJlc291cmNlPj4gc3VicmVzb3Vy
Y2VzKCkgY29uc3Q7CiAKICNpZm5kZWYgTkRFQlVHCiAgICAgYm9vbCBpc1N1YnN0aXR1dGVMb2Fk
UGVuZGluZyhSZXNvdXJjZUxvYWRlciopIGNvbnN0OwpAQCAtMTc2LDcgKzE3Nyw3IEBAIHB1Ymxp
YzoKICAgICB2b2lkIGNhbmNlbFBlbmRpbmdTdWJzdGl0dXRlTG9hZChSZXNvdXJjZUxvYWRlciop
OyAgIAogICAgIAogICAgIHZvaWQgYWRkUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYp
OwotICAgIGNvbnN0IFJlc3BvbnNlVmVjdG9yJiByZXNwb25zZXMoKSBjb25zdCB7IHJldHVybiBt
X3Jlc3BvbnNlczsgfQorICAgIGNvbnN0IFZlY3RvcjxSZXNvdXJjZVJlc3BvbnNlPiYgcmVzcG9u
c2VzKCkgY29uc3QgeyByZXR1cm4gbV9yZXNwb25zZXM7IH0KIAogICAgIGNvbnN0IE5hdmlnYXRp
b25BY3Rpb24mIHRyaWdnZXJpbmdBY3Rpb24oKSBjb25zdCB7IHJldHVybiBtX3RyaWdnZXJpbmdB
Y3Rpb247IH0KICAgICB2b2lkIHNldFRyaWdnZXJpbmdBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFj
dGlvbiYpOwpAQCAtMjQwLDE3ICsyNDEsNyBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHNldERlZmVy
TWFpblJlc291cmNlRGF0YUxvYWQoYm9vbCBkZWZlcikgeyBtX2RlZmVyTWFpblJlc291cmNlRGF0
YUxvYWQgPSBkZWZlcjsgfQogICAgIAotICAgIHZvaWQgZGlkVGVsbENsaWVudEFib3V0TG9hZChj
b25zdCBTdHJpbmcmIHVybCkKLSAgICB7IAotI2lmICFQTEFURk9STShDT0NPQSkKLSAgICAgICAg
Ly8gRG9uJ3QgaW5jbHVkZSBkYXRhIHVybHMgaGVyZSwgYXMgaWYgYSBsb3Qgb2YgZGF0YSBpcyBs
b2FkZWQKLSAgICAgICAgLy8gdGhhdCB3YXksIHdlIGhvbGQgb24gdG8gdGhlIChsYXJnZSkgdXJs
IHN0cmluZyBmb3IgdG9vIGxvbmcuCi0gICAgICAgIGlmIChwcm90b2NvbElzKHVybCwgImRhdGEi
KSkKLSAgICAgICAgICAgIHJldHVybjsKLSNlbmRpZgotICAgICAgICBpZiAoIXVybC5pc0VtcHR5
KCkpCi0gICAgICAgICAgICBtX3Jlc291cmNlc0NsaWVudEtub3dzQWJvdXQuYWRkKHVybCk7Ci0g
ICAgfQorICAgIHZvaWQgZGlkVGVsbENsaWVudEFib3V0TG9hZChjb25zdCBTdHJpbmcmIHVybCk7
CiAgICAgYm9vbCBoYXZlVG9sZENsaWVudEFib3V0TG9hZChjb25zdCBTdHJpbmcmIHVybCkgeyBy
ZXR1cm4gbV9yZXNvdXJjZXNDbGllbnRLbm93c0Fib3V0LmNvbnRhaW5zKHVybCk7IH0KICAgICB2
b2lkIHJlY29yZE1lbW9yeUNhY2hlTG9hZEZvckZ1dHVyZUNsaWVudE5vdGlmaWNhdGlvbihjb25z
dCBSZXNvdXJjZVJlcXVlc3QmKTsKICAgICB2b2lkIHRha2VNZW1vcnlDYWNoZUxvYWRzRm9yQ2xp
ZW50Tm90aWZpY2F0aW9uKFZlY3RvcjxSZXNvdXJjZVJlcXVlc3Q+JiBsb2Fkcyk7CkBAIC0yNTgs
MTEgKzI0OSwxMSBAQCBwdWJsaWM6CiAgICAgTG9hZFRpbWluZyYgdGltaW5nKCkgeyByZXR1cm4g
bV9sb2FkVGltaW5nOyB9CiAgICAgdm9pZCByZXNldFRpbWluZygpIHsgbV9sb2FkVGltaW5nID0g
TG9hZFRpbWluZygpOyB9CiAKLSAgICAvLyBUaGUgV2ViS2l0IGxheWVyIGNhbGxzIHRoaXMgZnVu
Y3Rpb24gd2hlbiBpdCdzIHJlYWR5IGZvciB0aGUgZGF0YSB0bwotICAgIC8vIGFjdHVhbGx5IGJl
IGFkZGVkIHRvIHRoZSBkb2N1bWVudC4KKyAgICAvLyBUaGUgV2ViS2l0IGxheWVyIGNhbGxzIHRo
aXMgZnVuY3Rpb24gd2hlbiBpdCdzIHJlYWR5IGZvciB0aGUgZGF0YSB0byBhY3R1YWxseSBiZSBh
ZGRlZCB0byB0aGUgZG9jdW1lbnQuCiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBjb21taXREYXRh
KGNvbnN0IGNoYXIqIGJ5dGVzLCBzaXplX3QgbGVuZ3RoKTsKIAotICAgIEFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KiBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpIGNvbnN0IHsgcmV0dXJuIG1fYXBwbGljYXRp
b25DYWNoZUhvc3QuZ2V0KCk7IH0KKyAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdCYgYXBwbGljYXRp
b25DYWNoZUhvc3QoKSBjb25zdDsKKyAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdCogYXBwbGljYXRp
b25DYWNoZUhvc3RVbmxlc3NCZWluZ0Rlc3Ryb3llZCgpIGNvbnN0OwogCiAgICAgdm9pZCBjaGVj
a0xvYWRDb21wbGV0ZSgpOwogCkBAIC0yOTcsNyArMjg4LDcgQEAgcHJvdGVjdGVkOgogCiAgICAg
V0VCQ09SRV9FWFBPUlQgdmlydHVhbCB2b2lkIGF0dGFjaFRvRnJhbWUoKTsKIAotICAgIGJvb2wg
bV9kZWZlck1haW5SZXNvdXJjZURhdGFMb2FkOworICAgIGJvb2wgbV9kZWZlck1haW5SZXNvdXJj
ZURhdGFMb2FkIHsgdHJ1ZSB9OwogCiBwcml2YXRlOgogICAgIERvY3VtZW50KiBkb2N1bWVudCgp
IGNvbnN0OwpAQCAtMzU4LDcgKzM0OSw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBjYW5jZWxQb2xp
Y3lDaGVja0lmTmVlZGVkKCk7CiAgICAgdm9pZCBiZWNvbWVNYWluUmVzb3VyY2VDbGllbnQoKTsK
IAotICAgIEZyYW1lKiBtX2ZyYW1lOworICAgIEZyYW1lKiBtX2ZyYW1lIHsgbnVsbHB0ciB9Owog
ICAgIFJlZjxDYWNoZWRSZXNvdXJjZUxvYWRlcj4gbV9jYWNoZWRSZXNvdXJjZUxvYWRlcjsKIAog
ICAgIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFJhd1Jlc291cmNlPiBtX21haW5SZXNvdXJj
ZTsKQEAgLTM5MCwxNSArMzgxLDE1IEBAIHByaXZhdGU6CiAgICAgUmVzb3VyY2VFcnJvciBtX21h
aW5Eb2N1bWVudEVycm9yOyAgICAKIAogICAgIGJvb2wgbV9vcmlnaW5hbFN1YnN0aXR1dGVEYXRh
V2FzVmFsaWQ7Ci0gICAgYm9vbCBtX2NvbW1pdHRlZDsKLSAgICBib29sIG1faXNTdG9wcGluZzsK
LSAgICBib29sIG1fZ290Rmlyc3RCeXRlOwotICAgIGJvb2wgbV9pc0NsaWVudFJlZGlyZWN0Owot
ICAgIGJvb2wgbV9pc0xvYWRpbmdNdWx0aXBhcnRDb250ZW50OworICAgIGJvb2wgbV9jb21taXR0
ZWQgeyBmYWxzZSB9OworICAgIGJvb2wgbV9pc1N0b3BwaW5nIHsgZmFsc2UgfTsKKyAgICBib29s
IG1fZ290Rmlyc3RCeXRlIHsgZmFsc2UgfTsKKyAgICBib29sIG1faXNDbGllbnRSZWRpcmVjdCB7
IGZhbHNlIH07CisgICAgYm9vbCBtX2lzTG9hZGluZ011bHRpcGFydENvbnRlbnQgeyBmYWxzZSB9
OwogCiAgICAgLy8gRklYTUU6IERvY3VtZW50OjptX3Byb2Nlc3NpbmdMb2FkRXZlbnQgYW5kIERv
Y3VtZW50TG9hZGVyOjptX3dhc09ubG9hZERpc3BhdGNoZWQgYXJlIHJvdWdobHkgdGhlIHNhbWUK
ICAgICAvLyBhbmQgc2hvdWxkIGJlIG1lcmdlZC4KLSAgICBib29sIG1fd2FzT25sb2FkRGlzcGF0
Y2hlZDsKKyAgICBib29sIG1fd2FzT25sb2FkRGlzcGF0Y2hlZCB7IGZhbHNlIH07CiAKICAgICBT
dHJpbmdXaXRoRGlyZWN0aW9uIG1fcGFnZVRpdGxlOwogCkBAIC00MTUsOCArNDA2LDggQEAgcHJp
dmF0ZToKICAgICAvLyBXZSByZXRhaW4gYWxsIHRoZSByZWNlaXZlZCByZXNwb25zZXMgc28gd2Ug
Y2FuIHBsYXkgYmFjayB0aGUKICAgICAvLyBXZWJSZXNvdXJjZUxvYWREZWxlZ2F0ZSBtZXNzYWdl
cyBpZiB0aGUgaXRlbSBpcyBsb2FkZWQgZnJvbSB0aGUKICAgICAvLyBwYWdlIGNhY2hlLgotICAg
IFJlc3BvbnNlVmVjdG9yIG1fcmVzcG9uc2VzOwotICAgIGJvb2wgbV9zdG9wUmVjb3JkaW5nUmVz
cG9uc2VzOworICAgIFZlY3RvcjxSZXNvdXJjZVJlc3BvbnNlPiBtX3Jlc3BvbnNlczsKKyAgICBi
b29sIG1fc3RvcFJlY29yZGluZ1Jlc3BvbnNlcyB7IGZhbHNlIH07CiAgICAgCiAgICAgdHlwZWRl
ZiBIYXNoTWFwPFJlZlB0cjxSZXNvdXJjZUxvYWRlcj4sIFJlZlB0cjxTdWJzdGl0dXRlUmVzb3Vy
Y2U+PiBTdWJzdGl0dXRlUmVzb3VyY2VNYXA7CiAgICAgU3Vic3RpdHV0ZVJlc291cmNlTWFwIG1f
cGVuZGluZ1N1YnN0aXR1dGVSZXNvdXJjZXM7CkBAIC00MzIsMTMgKzQyMywxMyBAQCBwcml2YXRl
OgogICAgIFZlY3RvcjxSZXNvdXJjZVJlcXVlc3Q+IG1fcmVzb3VyY2VzTG9hZGVkRnJvbU1lbW9y
eUNhY2hlRm9yQ2xpZW50Tm90aWZpY2F0aW9uOwogICAgIAogICAgIFN0cmluZyBtX2NsaWVudFJl
ZGlyZWN0U291cmNlRm9ySGlzdG9yeTsKLSAgICBib29sIG1fZGlkQ3JlYXRlR2xvYmFsSGlzdG9y
eUVudHJ5OworICAgIGJvb2wgbV9kaWRDcmVhdGVHbG9iYWxIaXN0b3J5RW50cnkgeyBmYWxzZSB9
OwogCi0gICAgYm9vbCBtX2xvYWRpbmdNYWluUmVzb3VyY2U7CisgICAgYm9vbCBtX2xvYWRpbmdN
YWluUmVzb3VyY2UgeyBmYWxzZSB9OwogICAgIExvYWRUaW1pbmcgbV9sb2FkVGltaW5nOwogCi0g
ICAgZG91YmxlIG1fdGltZU9mTGFzdERhdGFSZWNlaXZlZDsKLSAgICB1bnNpZ25lZCBsb25nIG1f
aWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXI7CisgICAgZG91YmxlIG1fdGlt
ZU9mTGFzdERhdGFSZWNlaXZlZCB7IDAgfTsKKyAgICB1bnNpZ25lZCBsb25nIG1faWRlbnRpZmll
ckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgeyAwIH07CiAKICAgICBEb2N1bWVudExvYWRl
clRpbWVyIG1fZGF0YUxvYWRUaW1lcjsKICAgICBib29sIG1fd2FpdGluZ0ZvckNvbnRlbnRQb2xp
Y3kgeyBmYWxzZSB9OwpAQCAtNDUyLDcgKzQ0Myw3IEBAIHByaXZhdGU6CiAgICAgSGFzaE1hcDx1
aW50NjRfdCwgTGlua0ljb24+IG1faWNvbnNQZW5kaW5nTG9hZERlY2lzaW9uOwogICAgIEhhc2hN
YXA8c3RkOjp1bmlxdWVfcHRyPEljb25Mb2FkZXI+LCB1aW50NjRfdD4gbV9pY29uTG9hZGVyczsK
IAotICAgIGJvb2wgbV9zdWJyZXNvdXJjZUxvYWRlcnNBcmVQYWdlQ2FjaGVBY2NlcHRhYmxlOwor
ICAgIGJvb2wgbV9zdWJyZXNvdXJjZUxvYWRlcnNBcmVQYWdlQ2FjaGVBY2NlcHRhYmxlIHsgZmFs
c2UgfTsKICAgICBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5IG1fc2hvdWxkT3BlbkV4dGVy
bmFsVVJMc1BvbGljeSB7IFNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3k6OlNob3VsZE5vdEFs
bG93IH07CiAKICAgICBzdGQ6OnVuaXF1ZV9wdHI8QXBwbGljYXRpb25DYWNoZUhvc3Q+IG1fYXBw
bGljYXRpb25DYWNoZUhvc3Q7CkBAIC00ODcsNCArNDc4LDg3IEBAIGlubGluZSB2b2lkIERvY3Vt
ZW50TG9hZGVyOjp0YWtlTWVtb3J5Q2FjaGVMb2Fkc0ZvckNsaWVudE5vdGlmaWNhdGlvbihWZWN0
b3I8UmVzCiAgICAgbV9yZXNvdXJjZXNMb2FkZWRGcm9tTWVtb3J5Q2FjaGVGb3JDbGllbnROb3Rp
ZmljYXRpb24uY2xlYXIoKTsKIH0KIAoraW5saW5lIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgRG9j
dW1lbnRMb2FkZXI6Om9yaWdpbmFsUmVxdWVzdCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fb3Jp
Z2luYWxSZXF1ZXN0OworfQorCitpbmxpbmUgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiBEb2N1bWVu
dExvYWRlcjo6b3JpZ2luYWxSZXF1ZXN0Q29weSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fb3Jp
Z2luYWxSZXF1ZXN0Q29weTsKK30KKworaW5saW5lIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgRG9j
dW1lbnRMb2FkZXI6OnJlcXVlc3QoKSBjb25zdAoreworICAgIHJldHVybiBtX3JlcXVlc3Q7Cit9
CisKK2lubGluZSBSZXNvdXJjZVJlcXVlc3QmIERvY3VtZW50TG9hZGVyOjpyZXF1ZXN0KCkKK3sK
KyAgICByZXR1cm4gbV9yZXF1ZXN0OworfQorCitpbmxpbmUgY29uc3QgVVJMJiBEb2N1bWVudExv
YWRlcjo6dXJsKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9yZXF1ZXN0LnVybCgpOworfQorCitp
bmxpbmUgY29uc3QgVVJMJiBEb2N1bWVudExvYWRlcjo6b3JpZ2luYWxVUkwoKSBjb25zdAorewor
ICAgIHJldHVybiBtX29yaWdpbmFsUmVxdWVzdENvcHkudXJsKCk7Cit9CisKK2lubGluZSBjb25z
dCBVUkwmIERvY3VtZW50TG9hZGVyOjpyZXNwb25zZVVSTCgpIGNvbnN0Cit7CisgICAgcmV0dXJu
IG1fcmVzcG9uc2UudXJsKCk7Cit9CisKK2lubGluZSBjb25zdCBTdHJpbmcmIERvY3VtZW50TG9h
ZGVyOjpyZXNwb25zZU1JTUVUeXBlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9yZXNwb25zZS5t
aW1lVHlwZSgpOworfQorCitpbmxpbmUgY29uc3QgU3RyaW5nJiBEb2N1bWVudExvYWRlcjo6Y3Vy
cmVudENvbnRlbnRUeXBlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV93cml0ZXIubWltZVR5cGUo
KTsKK30KKworaW5saW5lIGNvbnN0IFVSTCYgRG9jdW1lbnRMb2FkZXI6OnVucmVhY2hhYmxlVVJM
KCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9zdWJzdGl0dXRlRGF0YS5mYWlsaW5nVVJMKCk7Cit9
CisKK2lubGluZSBBcHBsaWNhdGlvbkNhY2hlSG9zdCYgRG9jdW1lbnRMb2FkZXI6OmFwcGxpY2F0
aW9uQ2FjaGVIb3N0KCkgY29uc3QKK3sKKyAgICAvLyBGb3IgYSBzaG9ydCB0aW1lIHdoaWxlIHRo
ZSBkb2N1bWVudCBsb2FkZXIgaXMgYmVpbmcgZGVzdHJveWVkLCBtX2FwcGxpY2F0aW9uQ2FjaGVI
b3N0IGlzIG51bGwuCisgICAgLy8gSXQncyBub3QgYWNjZXB0YWJsZSB0byBjYWxsIHRoaXMgZnVu
Y3Rpb24gZHVyaW5nIHRoYXQgdGltZS4KKyAgICBBU1NFUlQobV9hcHBsaWNhdGlvbkNhY2hlSG9z
dCk7CisgICAgcmV0dXJuICptX2FwcGxpY2F0aW9uQ2FjaGVIb3N0OworfQorCitpbmxpbmUgQXBw
bGljYXRpb25DYWNoZUhvc3QqIERvY3VtZW50TG9hZGVyOjphcHBsaWNhdGlvbkNhY2hlSG9zdFVu
bGVzc0JlaW5nRGVzdHJveWVkKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9hcHBsaWNhdGlvbkNh
Y2hlSG9zdC5nZXQoKTsKK30KKworI2lmIEVOQUJMRShDT05URU5UX0ZJTFRFUklORykKKworaW5s
aW5lIENvbnRlbnRGaWx0ZXIqIERvY3VtZW50TG9hZGVyOjpjb250ZW50RmlsdGVyKCkgY29uc3QK
K3sKKyAgICByZXR1cm4gbV9jb250ZW50RmlsdGVyLmdldCgpOworfQorCisjZW5kaWYKKworaW5s
aW5lIHZvaWQgRG9jdW1lbnRMb2FkZXI6OmRpZFRlbGxDbGllbnRBYm91dExvYWQoY29uc3QgU3Ry
aW5nJiB1cmwpCit7CisjaWYgIVBMQVRGT1JNKENPQ09BKQorICAgIC8vIERvbid0IGluY2x1ZGUg
ZGF0YSBVUkxzIGhlcmUsIGFzIGlmIGEgbG90IG9mIGRhdGEgaXMgbG9hZGVkIHRoYXQgd2F5LCB3
ZSBob2xkIG9uIHRvIHRoZSAobGFyZ2UpIFVSTCBzdHJpbmcgZm9yIHRvbyBsb25nLgorICAgIGlm
IChwcm90b2NvbElzKHVybCwgImRhdGEiKSkKKyAgICAgICAgcmV0dXJuOworI2VuZGlmCisgICAg
aWYgKCF1cmwuaXNFbXB0eSgpKQorICAgICAgICBtX3Jlc291cmNlc0NsaWVudEtub3dzQWJvdXQu
YWRkKHVybCk7Cit9CisKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0
eUNsaWVudHMuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5jcHAKaW5k
ZXggZTBmNmU1YjNlMzRhOGExZThkMzE0OWMwNDJlMWRhMGEzNzNkNGRhOS4uZWVmYzRhYTgzODMx
MDQ0NmU5MjFkNGYxNzI5NTgyZTgyNGM4YTVmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL0VtcHR5Q2xpZW50cy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5
Q2xpZW50cy5jcHAKQEAgLTQ2LDYgKzQ2LDcgQEAKICNpbmNsdWRlICJIVE1MRm9ybUVsZW1lbnQu
aCIKICNpbmNsdWRlICJJblByb2Nlc3NJREJTZXJ2ZXIuaCIKICNpbmNsdWRlICJJbnNwZWN0b3JD
bGllbnQuaCIKKyNpbmNsdWRlICJOZXR3b3JrU3RvcmFnZVNlc3Npb24uaCIKICNpbmNsdWRlICJQ
YWdlLmgiCiAjaW5jbHVkZSAiUGFnZUNvbmZpZ3VyYXRpb24uaCIKICNpbmNsdWRlICJQYXltZW50
Q29vcmRpbmF0b3JDbGllbnQuaCIKQEAgLTE3MSw4ICsxNzIsOCBAQCBwcml2YXRlOgogICAgIHZv
aWQgcmVxdWVzdENhbmRpZGF0ZXNGb3JTZWxlY3Rpb24oY29uc3QgVmlzaWJsZVNlbGVjdGlvbiYp
IGZpbmFsIHsgfQogICAgIHZvaWQgaGFuZGxlQWNjZXB0ZWRDYW5kaWRhdGVXaXRoU29mdFNwYWNl
cyhUZXh0Q2hlY2tpbmdSZXN1bHQpIGZpbmFsIHsgfQogCi0gICAgdm9pZCByZWdpc3RlclVuZG9T
dGVwKFBhc3NSZWZQdHI8VW5kb1N0ZXA+KSBmaW5hbDsKLSAgICB2b2lkIHJlZ2lzdGVyUmVkb1N0
ZXAoUGFzc1JlZlB0cjxVbmRvU3RlcD4pIGZpbmFsOworICAgIHZvaWQgcmVnaXN0ZXJVbmRvU3Rl
cChVbmRvU3RlcCYpIGZpbmFsOworICAgIHZvaWQgcmVnaXN0ZXJSZWRvU3RlcChVbmRvU3RlcCYp
IGZpbmFsOwogICAgIHZvaWQgY2xlYXJVbmRvUmVkb09wZXJhdGlvbnMoKSBmaW5hbCB7IH0KIAog
ICAgIGJvb2wgY2FuQ29weUN1dChGcmFtZSosIGJvb2wgZGVmYXVsdFZhbHVlKSBjb25zdCBmaW5h
bCB7IHJldHVybiBkZWZhdWx0VmFsdWU7IH0KQEAgLTMzMSwxNCArMzMyLDE0IEBAIGNsYXNzIEVt
cHR5RnJhbWVMb2FkZXJDbGllbnQgZmluYWwgOiBwdWJsaWMgRnJhbWVMb2FkZXJDbGllbnQgewog
ICAgIHZvaWQgZGlzcGF0Y2hTaG93KCkgZmluYWwgeyB9CiAKICAgICB2b2lkIGRpc3BhdGNoRGVj
aWRlUG9saWN5Rm9yUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFJlc291
cmNlUmVxdWVzdCYsIEZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFsIHsgfQotICAgIHZvaWQgZGlz
cGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlv
biYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwgY29uc3Qg
U3RyaW5nJiwgRnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7Ci0gICAgdm9pZCBkaXNwYXRjaERl
Y2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNv
bnN0IFJlc291cmNlUmVxdWVzdCYsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwgRnJhbWVQb2xpY3lG
dW5jdGlvbikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRv
d0FjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jiwg
Rm9ybVN0YXRlKiwgY29uc3QgU3RyaW5nJiwgRnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7Cisg
ICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgTmF2
aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIEZvcm1TdGF0ZSosIEZyYW1l
UG9saWN5RnVuY3Rpb24pIGZpbmFsOwogICAgIHZvaWQgY2FuY2VsUG9saWN5Q2hlY2soKSBmaW5h
bCB7IH0KIAogICAgIHZvaWQgZGlzcGF0Y2hVbmFibGVUb0ltcGxlbWVudFBvbGljeShjb25zdCBS
ZXNvdXJjZUVycm9yJikgZmluYWwgeyB9CiAKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRTdWJt
aXRFdmVudChQYXNzUmVmUHRyPEZvcm1TdGF0ZT4pIGZpbmFsOwotICAgIHZvaWQgZGlzcGF0Y2hX
aWxsU3VibWl0Rm9ybShQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIEZyYW1lUG9saWN5RnVuY3Rpb24p
IGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJlZjxGb3JtU3Rh
dGU+JiYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShGb3JtU3RhdGUm
LCBGcmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsKIAogICAgIHZvaWQgcmV2ZXJ0VG9Qcm92aXNp
b25hbFN0YXRlKERvY3VtZW50TG9hZGVyKikgZmluYWwgeyB9CiAgICAgdm9pZCBzZXRNYWluRG9j
dW1lbnRFcnJvcihEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlRXJyb3ImKSBmaW5hbCB7
IH0KQEAgLTQxMCwxMCArNDExLDEwIEBAIGNsYXNzIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQgZmlu
YWwgOiBwdWJsaWMgRnJhbWVMb2FkZXJDbGllbnQgewogICAgIHZvaWQgZGlkRGlzcGxheUluc2Vj
dXJlQ29udGVudCgpIGZpbmFsIHsgfQogICAgIHZvaWQgZGlkUnVuSW5zZWN1cmVDb250ZW50KFNl
Y3VyaXR5T3JpZ2luKiwgY29uc3QgVVJMJikgZmluYWwgeyB9CiAgICAgdm9pZCBkaWREZXRlY3RY
U1MoY29uc3QgVVJMJiwgYm9vbCkgZmluYWwgeyB9Ci0gICAgUmVmUHRyPEZyYW1lPiBjcmVhdGVG
cmFtZShjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmLCBIVE1MRnJhbWVPd25lckVsZW1lbnQqLCBj
b25zdCBTdHJpbmcmLCBib29sLCBpbnQsIGludCkgZmluYWw7Ci0gICAgUmVmUHRyPFdpZGdldD4g
Y3JlYXRlUGx1Z2luKGNvbnN0IEludFNpemUmLCBIVE1MUGx1Z0luRWxlbWVudCosIGNvbnN0IFVS
TCYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBT
dHJpbmcmLCBib29sKSBmaW5hbDsKKyAgICBSZWZQdHI8RnJhbWU+IGNyZWF0ZUZyYW1lKGNvbnN0
IFVSTCYsIGNvbnN0IFN0cmluZyYsIEhUTUxGcmFtZU93bmVyRWxlbWVudCYsIGNvbnN0IFN0cmlu
ZyYsIGJvb2wsIGludCwgaW50KSBmaW5hbDsKKyAgICBSZWZQdHI8V2lkZ2V0PiBjcmVhdGVQbHVn
aW4oY29uc3QgSW50U2l6ZSYsIEhUTUxQbHVnSW5FbGVtZW50JiwgY29uc3QgVVJMJiwgY29uc3Qg
VmVjdG9yPFN0cmluZz4mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFN0cmluZyYsIGJv
b2wpIGZpbmFsOwogICAgIHZvaWQgcmVjcmVhdGVQbHVnaW4oV2lkZ2V0KikgZmluYWw7Ci0gICAg
UGFzc1JlZlB0cjxXaWRnZXQ+IGNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYs
IEhUTUxBcHBsZXRFbGVtZW50KiwgY29uc3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBj
b25zdCBWZWN0b3I8U3RyaW5nPiYpIGZpbmFsOworICAgIFJlZlB0cjxXaWRnZXQ+IGNyZWF0ZUph
dmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYsIEhUTUxBcHBsZXRFbGVtZW50JiwgY29uc3Qg
VVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYpIGZpbmFs
OwogCiAgICAgT2JqZWN0Q29udGVudFR5cGUgb2JqZWN0Q29udGVudFR5cGUoY29uc3QgVVJMJiwg
Y29uc3QgU3RyaW5nJikgZmluYWwgeyByZXR1cm4gT2JqZWN0Q29udGVudFR5cGU6Ok5vbmU7IH0K
ICAgICBTdHJpbmcgb3ZlcnJpZGVNZWRpYVR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiB7IH07
IH0KQEAgLTQzMiwxNiArNDMzLDM3IEBAIGNsYXNzIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQgZmlu
YWwgOiBwdWJsaWMgRnJhbWVMb2FkZXJDbGllbnQgewogICAgIGJvb2wgc2hvdWxkQ2FjaGVSZXNw
b25zZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmLCBjb25zdCB1bnNpZ25lZCBjaGFyKiwgdW5zaWduZWQgbG9uZyBsb25nKSBmaW5hbCB7IHJl
dHVybiB0cnVlOyB9CiAjZW5kaWYKIAotICAgIFBhc3NSZWZQdHI8RnJhbWVOZXR3b3JraW5nQ29u
dGV4dD4gY3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKSBmaW5hbDsKKyAgICBSZWY8RnJhbWVOZXR3
b3JraW5nQ29udGV4dD4gY3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKSBmaW5hbDsKIAogI2lmIEVO
QUJMRShSRVFVRVNUX0FVVE9DT01QTEVURSkKLSAgICB2b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxl
dGUoUGFzc1JlZlB0cjxGb3JtU3RhdGU+KSBmaW5hbCB7IH0KKyAgICB2b2lkIGRpZFJlcXVlc3RB
dXRvY29tcGxldGUoUmVmPEZvcm1TdGF0ZT4mJikgZmluYWwgeyB9CiAjZW5kaWYKIAogICAgIGJv
b2wgaXNFbXB0eUZyYW1lTG9hZGVyQ2xpZW50KCkgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQogICAg
IHZvaWQgcHJlZmV0Y2hETlMoY29uc3QgU3RyaW5nJikgZmluYWwgeyB9CiB9OwogCitjbGFzcyBF
bXB0eUZyYW1lTmV0d29ya2luZ0NvbnRleHQgZmluYWwgOiBwdWJsaWMgRnJhbWVOZXR3b3JraW5n
Q29udGV4dCB7CitwdWJsaWM6CisgICAgc3RhdGljIFJlZjxFbXB0eUZyYW1lTmV0d29ya2luZ0Nv
bnRleHQ+IGNyZWF0ZSgpIHsgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRW1wdHlGcmFtZU5ldHdvcmtp
bmdDb250ZXh0KTsgfQorCitwcml2YXRlOgorICAgIEVtcHR5RnJhbWVOZXR3b3JraW5nQ29udGV4
dCgpOworCisgICAgYm9vbCBzaG91bGRDbGVhclJlZmVycmVyT25IVFRQU1RvSFRUUFJlZGlyZWN0
KCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQorICAgIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgc3Rv
cmFnZVNlc3Npb24oKSBjb25zdCBmaW5hbCB7IHJldHVybiBOZXR3b3JrU3RvcmFnZVNlc3Npb246
OmRlZmF1bHRTdG9yYWdlU2Vzc2lvbigpOyB9CisKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICBi
b29sIGxvY2FsRmlsZUNvbnRlbnRTbmlmZmluZ0VuYWJsZWQoKSBjb25zdCB7IHJldHVybiBmYWxz
ZTsgfQorICAgIFNjaGVkdWxlUGFpckhhc2hTZXQqIHNjaGVkdWxlZFJ1bkxvb3BQYWlycygpIGNv
bnN0IHsgcmV0dXJuIG51bGxwdHI7IH0KKyAgICBSZXRhaW5QdHI8Q0ZEYXRhUmVmPiBzb3VyY2VB
cHBsaWNhdGlvbkF1ZGl0RGF0YSgpIGNvbnN0IHsgcmV0dXJuIG51bGxwdHI7IH07CisjZW5kaWYK
KworI2lmIFBMQVRGT1JNKENPQ09BKSB8fCBQTEFURk9STShXSU4pCisgICAgUmVzb3VyY2VFcnJv
ciBibG9ja2VkRXJyb3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JikgY29uc3QgZmluYWwgeyByZXR1
cm4geyB9OyB9CisjZW5kaWYKK307CisKIGNsYXNzIEVtcHR5SW5zcGVjdG9yQ2xpZW50IGZpbmFs
IDogcHVibGljIEluc3BlY3RvckNsaWVudCB7CiAgICAgdm9pZCBpbnNwZWN0ZWRQYWdlRGVzdHJv
eWVkKCkgZmluYWwgeyB9CiAgICAgSW5zcGVjdG9yOjpGcm9udGVuZENoYW5uZWwqIG9wZW5Mb2Nh
bEZyb250ZW5kKEluc3BlY3RvckNvbnRyb2xsZXIqKSBmaW5hbCB7IHJldHVybiBudWxscHRyOyB9
CkBAIC01NjksMjMgKzU5MSwyMyBAQCBzdGQ6OnVuaXF1ZV9wdHI8Q29sb3JDaG9vc2VyPiBFbXB0
eUNocm9tZUNsaWVudDo6Y3JlYXRlQ29sb3JDaG9vc2VyKENvbG9yQ2hvb3NlcgogCiAjZW5kaWYK
IAotdm9pZCBFbXB0eUNocm9tZUNsaWVudDo6cnVuT3BlblBhbmVsKEZyYW1lKiwgUGFzc1JlZlB0
cjxGaWxlQ2hvb3Nlcj4pCit2b2lkIEVtcHR5Q2hyb21lQ2xpZW50OjpydW5PcGVuUGFuZWwoRnJh
bWUmLCBGaWxlQ2hvb3NlciYpCiB7CiB9CiAKLXZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFj
dGlvbiYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwgY29u
c3QgU3RyaW5nJiwgRnJhbWVQb2xpY3lGdW5jdGlvbikKK3ZvaWQgRW1wdHlGcmFtZUxvYWRlckNs
aWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdh
dGlvbkFjdGlvbiYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIEZvcm1TdGF0ZSosIGNvbnN0IFN0
cmluZyYsIEZyYW1lUG9saWN5RnVuY3Rpb24pCiB7CiB9CiAKLXZvaWQgRW1wdHlGcmFtZUxvYWRl
ckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5h
dmlnYXRpb25BY3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPEZvcm1T
dGF0ZT4sIEZyYW1lUG9saWN5RnVuY3Rpb24pCit2b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0aW9u
QWN0aW9uJiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgRm9ybVN0YXRlKiwgRnJhbWVQb2xpY3lG
dW5jdGlvbikKIHsKIH0KIAotdm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdp
bGxTZW5kU3VibWl0RXZlbnQoUGFzc1JlZlB0cjxGb3JtU3RhdGU+KQordm9pZCBFbXB0eUZyYW1l
TG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoUmVmPEZvcm1TdGF0ZT4m
JikKIHsKIH0KIAotdm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTdWJt
aXRGb3JtKFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwgRnJhbWVQb2xpY3lGdW5jdGlvbikKK3ZvaWQg
RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShGb3JtU3RhdGUm
LCBGcmFtZVBvbGljeUZ1bmN0aW9uKQogewogfQogCkBAIC01OTQsMTIgKzYxNiwxMiBAQCBSZWY8
RG9jdW1lbnRMb2FkZXI+IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZURvY3VtZW50TG9h
ZGVyKGNvbnN0IFJlc291cmNlUgogICAgIHJldHVybiBEb2N1bWVudExvYWRlcjo6Y3JlYXRlKHJl
cXVlc3QsIHN1YnN0aXR1dGVEYXRhKTsKIH0KIAotUmVmUHRyPEZyYW1lPiBFbXB0eUZyYW1lTG9h
ZGVyQ2xpZW50OjpjcmVhdGVGcmFtZShjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmLCBIVE1MRnJh
bWVPd25lckVsZW1lbnQqLCBjb25zdCBTdHJpbmcmLCBib29sLCBpbnQsIGludCkKK1JlZlB0cjxG
cmFtZT4gRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlRnJhbWUoY29uc3QgVVJMJiwgY29u
c3QgU3RyaW5nJiwgSFRNTEZyYW1lT3duZXJFbGVtZW50JiwgY29uc3QgU3RyaW5nJiwgYm9vbCwg
aW50LCBpbnQpCiB7CiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLVJlZlB0cjxXaWRnZXQ+IEVt
cHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiwgSFRNTFBs
dWdJbkVsZW1lbnQqLCBjb25zdCBVUkwmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFZl
Y3RvcjxTdHJpbmc+JiwgY29uc3QgU3RyaW5nJiwgYm9vbCkKK1JlZlB0cjxXaWRnZXQ+IEVtcHR5
RnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiwgSFRNTFBsdWdJ
bkVsZW1lbnQmLCBjb25zdCBVUkwmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFZlY3Rv
cjxTdHJpbmc+JiwgY29uc3QgU3RyaW5nJiwgYm9vbCkKIHsKICAgICByZXR1cm4gbnVsbHB0cjsK
IH0KQEAgLTYwOCwyNSArNjMwLDMwIEBAIHZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6cmVj
cmVhdGVQbHVnaW4oV2lkZ2V0KikKIHsKIH0KIAotUGFzc1JlZlB0cjxXaWRnZXQ+IEVtcHR5RnJh
bWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYsIEhU
TUxBcHBsZXRFbGVtZW50KiwgY29uc3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25z
dCBWZWN0b3I8U3RyaW5nPiYpCitSZWZQdHI8V2lkZ2V0PiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50
OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmLCBIVE1MQXBwbGV0RWxlbWVu
dCYsIGNvbnN0IFVSTCYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFN0cmlu
Zz4mKQogewogICAgIHJldHVybiBudWxscHRyOwogfQogCi1QYXNzUmVmUHRyPEZyYW1lTmV0d29y
a2luZ0NvbnRleHQ+IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtpbmdDb250
ZXh0KCkKK2lubGluZSBFbXB0eUZyYW1lTmV0d29ya2luZ0NvbnRleHQ6OkVtcHR5RnJhbWVOZXR3
b3JraW5nQ29udGV4dCgpCisgICAgOiBGcmFtZU5ldHdvcmtpbmdDb250ZXh0IHsgbnVsbHB0ciB9
Cit7Cit9CisKK1JlZjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBFbXB0eUZyYW1lTG9hZGVyQ2xp
ZW50OjpjcmVhdGVOZXR3b3JraW5nQ29udGV4dCgpCiB7Ci0gICAgcmV0dXJuIFBhc3NSZWZQdHI8
RnJhbWVOZXR3b3JraW5nQ29udGV4dD4oKTsKKyAgICByZXR1cm4gRW1wdHlGcmFtZU5ldHdvcmtp
bmdDb250ZXh0OjpjcmVhdGUoKTsKIH0KIAogdm9pZCBFbXB0eUVkaXRvckNsaWVudDo6RW1wdHlU
ZXh0Q2hlY2tlckNsaWVudDo6cmVxdWVzdENoZWNraW5nT2ZTdHJpbmcoVGV4dENoZWNraW5nUmVx
dWVzdCYsIGNvbnN0IFZpc2libGVTZWxlY3Rpb24mKQogewogfQogCi12b2lkIEVtcHR5RWRpdG9y
Q2xpZW50OjpyZWdpc3RlclVuZG9TdGVwKFBhc3NSZWZQdHI8VW5kb1N0ZXA+KQordm9pZCBFbXB0
eUVkaXRvckNsaWVudDo6cmVnaXN0ZXJVbmRvU3RlcChVbmRvU3RlcCYpCiB7CiB9CiAKLXZvaWQg
RW1wdHlFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyUmVkb1N0ZXAoUGFzc1JlZlB0cjxVbmRvU3RlcD4p
Cit2b2lkIEVtcHR5RWRpdG9yQ2xpZW50OjpyZWdpc3RlclJlZG9TdGVwKFVuZG9TdGVwJikKIHsK
IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5oIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5oCmluZGV4IDFhMWQ1M2MzNzQwOGFi
OTljNjBkZjBlMmY3ZDgyYTQxYzFhZWQ2NjkuLjhmMjUyYmE3OTJmNzExOTdkMDkxMDkyNmM4NDBh
MjkwODVhZDEwMzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVu
dHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmgKQEAgLTEzOCw3
ICsxMzgsNyBAQCBjbGFzcyBFbXB0eUNocm9tZUNsaWVudCA6IHB1YmxpYyBDaHJvbWVDbGllbnQg
ewogICAgIHN0ZDo6dW5pcXVlX3B0cjxDb2xvckNob29zZXI+IGNyZWF0ZUNvbG9yQ2hvb3NlcihD
b2xvckNob29zZXJDbGllbnQqLCBjb25zdCBDb2xvciYpIGZpbmFsOwogI2VuZGlmCiAKLSAgICB2
b2lkIHJ1bk9wZW5QYW5lbChGcmFtZSosIFBhc3NSZWZQdHI8RmlsZUNob29zZXI+KSBmaW5hbDsK
KyAgICB2b2lkIHJ1bk9wZW5QYW5lbChGcmFtZSYsIEZpbGVDaG9vc2VyJikgZmluYWw7CiAgICAg
dm9pZCBsb2FkSWNvbkZvckZpbGVzKGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgRmlsZUljb25Mb2Fk
ZXImKSBmaW5hbCB7IH0KIAogICAgIHZvaWQgZWxlbWVudERpZEZvY3VzKGNvbnN0IE5vZGUqKSBm
aW5hbCB7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3RhdGUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdGF0ZS5jcHAKaW5kZXggMzUxMGI4MDI1ZGRm
YzM1MTYzOGUwMzA2MDZmYWQ2MDQ1Y2M5NTE5Ni4uNWU4OTZlN2Y4NTJmOTZlMjU0MGVkOGQ0ZDE1
MTc2MmI2YjQwZDkxMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdGF0
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdGF0ZS5jcHAKQEAgLTEsNSAr
MSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA2LCAyMDA5IEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNi0yMDE3IEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMzQs
MTcgKzM0LDE3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotaW5saW5lIEZvcm1TdGF0ZTo6
Rm9ybVN0YXRlKFBhc3NSZWZQdHI8SFRNTEZvcm1FbGVtZW50PiBmb3JtLCBTdHJpbmdQYWlyVmVj
dG9yJiB0ZXh0RmllbGRWYWx1ZXNUb0Fkb3B0LCBQYXNzUmVmUHRyPERvY3VtZW50PiBzb3VyY2VE
b2N1bWVudCwgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikKK2lu
bGluZSBGb3JtU3RhdGU6OkZvcm1TdGF0ZShIVE1MRm9ybUVsZW1lbnQmIGZvcm0sIFN0cmluZ1Bh
aXJWZWN0b3ImJiB0ZXh0RmllbGRWYWx1ZXMsIERvY3VtZW50JiBzb3VyY2VEb2N1bWVudCwgRm9y
bVN1Ym1pc3Npb25UcmlnZ2VyIGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikKICAgICA6IG1fZm9ybShm
b3JtKQorICAgICwgbV90ZXh0RmllbGRWYWx1ZXMoV1RGTW92ZSh0ZXh0RmllbGRWYWx1ZXMpKQog
ICAgICwgbV9zb3VyY2VEb2N1bWVudChzb3VyY2VEb2N1bWVudCkKICAgICAsIG1fZm9ybVN1Ym1p
c3Npb25UcmlnZ2VyKGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikKIHsKLSAgICBtX3RleHRGaWVsZFZh
bHVlcy5zd2FwKHRleHRGaWVsZFZhbHVlc1RvQWRvcHQpOwogfQogCi1SZWY8Rm9ybVN0YXRlPiBG
b3JtU3RhdGU6OmNyZWF0ZShQYXNzUmVmUHRyPEhUTUxGb3JtRWxlbWVudD4gZm9ybSwgU3RyaW5n
UGFpclZlY3RvciYgdGV4dEZpZWxkVmFsdWVzVG9BZG9wdCwgUGFzc1JlZlB0cjxEb2N1bWVudD4g
c291cmNlRG9jdW1lbnQsIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciBmb3JtU3VibWlzc2lvblRyaWdn
ZXIpCitSZWY8Rm9ybVN0YXRlPiBGb3JtU3RhdGU6OmNyZWF0ZShIVE1MRm9ybUVsZW1lbnQmIGZv
cm0sIFN0cmluZ1BhaXJWZWN0b3ImJiB0ZXh0RmllbGRWYWx1ZXMsIERvY3VtZW50JiBzb3VyY2VE
b2N1bWVudCwgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikKIHsK
LSAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGb3JtU3RhdGUoZm9ybSwgdGV4dEZpZWxkVmFsdWVz
VG9BZG9wdCwgc291cmNlRG9jdW1lbnQsIGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikpOworICAgIHJl
dHVybiBhZG9wdFJlZigqbmV3IEZvcm1TdGF0ZShmb3JtLCBXVEZNb3ZlKHRleHRGaWVsZFZhbHVl
cyksIHNvdXJjZURvY3VtZW50LCBmb3JtU3VibWlzc2lvblRyaWdnZXIpKTsKIH0KIAogfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdGF0ZS5oIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0Zvcm1TdGF0ZS5oCmluZGV4IDk1MDQwZjljMjhkNDc5M2JiMTVmOGZmMzdhMGI2
MjRkMjhiZDhjZjcuLjJkZWRkMDliZTUyYjBhZmM5NzAyODNhMTE0Y2NmMDM0ZjdiNjVmYWYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3RhdGUuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvRm9ybVN0YXRlLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJp
Z2h0IChDKSAyMDA2LCAyMDA5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENv
cHlyaWdodCAoQykgMjAwNi0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAq
CiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMjgsMzcgKzI4LDMzIEBACiAKICNwcmFn
bWEgb25jZQogCi0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KICNpbmNsdWRlIDx3dGYvdGV4
dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi0gICAgY2xhc3MgRG9jdW1l
bnQ7Ci0gICAgY2xhc3MgSFRNTEZvcm1FbGVtZW50OworY2xhc3MgRG9jdW1lbnQ7CitjbGFzcyBI
VE1MRm9ybUVsZW1lbnQ7CiAKLSAgICBlbnVtIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciB7Ci0gICAg
ICAgIFN1Ym1pdHRlZEJ5SmF2YVNjcmlwdCwKLSAgICAgICAgTm90U3VibWl0dGVkQnlKYXZhU2Ny
aXB0Ci0gICAgfTsKLSAgICAKLSAgICB0eXBlZGVmIFZlY3RvcjxzdGQ6OnBhaXI8U3RyaW5nLCBT
dHJpbmc+PiBTdHJpbmdQYWlyVmVjdG9yOworZW51bSBGb3JtU3VibWlzc2lvblRyaWdnZXIgeyBT
dWJtaXR0ZWRCeUphdmFTY3JpcHQsIE5vdFN1Ym1pdHRlZEJ5SmF2YVNjcmlwdCB9OwogCi0gICAg
Y2xhc3MgRm9ybVN0YXRlIDogcHVibGljIFJlZkNvdW50ZWQ8Rm9ybVN0YXRlPiB7Ci0gICAgcHVi
bGljOgotICAgICAgICBzdGF0aWMgUmVmPEZvcm1TdGF0ZT4gY3JlYXRlKFBhc3NSZWZQdHI8SFRN
TEZvcm1FbGVtZW50PiwgU3RyaW5nUGFpclZlY3RvciYgdGV4dEZpZWxkVmFsdWVzVG9BZG9wdCwg
UGFzc1JlZlB0cjxEb2N1bWVudD4sIEZvcm1TdWJtaXNzaW9uVHJpZ2dlcik7Cit1c2luZyBTdHJp
bmdQYWlyVmVjdG9yID0gVmVjdG9yPHN0ZDo6cGFpcjxTdHJpbmcsIFN0cmluZz4+OwogCi0gICAg
ICAgIEhUTUxGb3JtRWxlbWVudCogZm9ybSgpIGNvbnN0IHsgcmV0dXJuIG1fZm9ybS5nZXQoKTsg
fQotICAgICAgICBjb25zdCBTdHJpbmdQYWlyVmVjdG9yJiB0ZXh0RmllbGRWYWx1ZXMoKSBjb25z
dCB7IHJldHVybiBtX3RleHRGaWVsZFZhbHVlczsgfQotICAgICAgICBEb2N1bWVudCogc291cmNl
RG9jdW1lbnQoKSBjb25zdCB7IHJldHVybiBtX3NvdXJjZURvY3VtZW50LmdldCgpOyB9Ci0gICAg
ICAgIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciBmb3JtU3VibWlzc2lvblRyaWdnZXIoKSBjb25zdCB7
IHJldHVybiBtX2Zvcm1TdWJtaXNzaW9uVHJpZ2dlcjsgfQorY2xhc3MgRm9ybVN0YXRlIDogcHVi
bGljIFJlZkNvdW50ZWQ8Rm9ybVN0YXRlPiB7CitwdWJsaWM6CisgICAgc3RhdGljIFJlZjxGb3Jt
U3RhdGU+IGNyZWF0ZShIVE1MRm9ybUVsZW1lbnQmLCBTdHJpbmdQYWlyVmVjdG9yJiYgdGV4dEZp
ZWxkVmFsdWVzLCBEb2N1bWVudCYsIEZvcm1TdWJtaXNzaW9uVHJpZ2dlcik7CiAKLSAgICBwcml2
YXRlOgotICAgICAgICBGb3JtU3RhdGUoUGFzc1JlZlB0cjxIVE1MRm9ybUVsZW1lbnQ+LCBTdHJp
bmdQYWlyVmVjdG9yJiB0ZXh0RmllbGRWYWx1ZXNUb0Fkb3B0LCBQYXNzUmVmUHRyPERvY3VtZW50
PiwgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyKTsKKyAgICBIVE1MRm9ybUVsZW1lbnQmIGZvcm0oKSBj
b25zdCB7IHJldHVybiBtX2Zvcm07IH0KKyAgICBjb25zdCBTdHJpbmdQYWlyVmVjdG9yJiB0ZXh0
RmllbGRWYWx1ZXMoKSBjb25zdCB7IHJldHVybiBtX3RleHRGaWVsZFZhbHVlczsgfQorICAgIERv
Y3VtZW50JiBzb3VyY2VEb2N1bWVudCgpIGNvbnN0IHsgcmV0dXJuIG1fc291cmNlRG9jdW1lbnQ7
IH0KKyAgICBGb3JtU3VibWlzc2lvblRyaWdnZXIgZm9ybVN1Ym1pc3Npb25UcmlnZ2VyKCkgY29u
c3QgeyByZXR1cm4gbV9mb3JtU3VibWlzc2lvblRyaWdnZXI7IH0KIAotICAgICAgICBSZWZQdHI8
SFRNTEZvcm1FbGVtZW50PiBtX2Zvcm07Ci0gICAgICAgIFN0cmluZ1BhaXJWZWN0b3IgbV90ZXh0
RmllbGRWYWx1ZXM7Ci0gICAgICAgIFJlZlB0cjxEb2N1bWVudD4gbV9zb3VyY2VEb2N1bWVudDsK
LSAgICAgICAgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIG1fZm9ybVN1Ym1pc3Npb25UcmlnZ2VyOwot
ICAgIH07Citwcml2YXRlOgorICAgIEZvcm1TdGF0ZShIVE1MRm9ybUVsZW1lbnQmLCBTdHJpbmdQ
YWlyVmVjdG9yJiYgdGV4dEZpZWxkVmFsdWVzLCBEb2N1bWVudCYsIEZvcm1TdWJtaXNzaW9uVHJp
Z2dlcik7CisKKyAgICBSZWY8SFRNTEZvcm1FbGVtZW50PiBtX2Zvcm07CisgICAgU3RyaW5nUGFp
clZlY3RvciBtX3RleHRGaWVsZFZhbHVlczsKKyAgICBSZWY8RG9jdW1lbnQ+IG1fc291cmNlRG9j
dW1lbnQ7CisgICAgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIG1fZm9ybVN1Ym1pc3Npb25UcmlnZ2Vy
OworfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0Zvcm1TdWJtaXNzaW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3Jt
U3VibWlzc2lvbi5jcHAKaW5kZXggMjBhYWY0YzRjNzI3YWY2OTJiNzk4ZTI2OTY1ZmI5NDA0Nzg2
YzliMi4uNzcwNzM0M2M1YzIzNzU5Nzk3YmJjYmYwNDE1MzkyMzAzNzlmNzljOSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdWJtaXNzaW9uLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvRm9ybVN1Ym1pc3Npb24uY3BwCkBAIC0xMDYsNyArMTA2LDcgQEAgdm9p
ZCBGb3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6dXBkYXRlRW5jb2RpbmdUeXBlKGNvbnN0IFN0
cmluZyYgdHlwZSkKIAogRm9ybVN1Ym1pc3Npb246Ok1ldGhvZCBGb3JtU3VibWlzc2lvbjo6QXR0
cmlidXRlczo6cGFyc2VNZXRob2RUeXBlKGNvbnN0IFN0cmluZyYgdHlwZSkKIHsKLSAgICByZXR1
cm4gZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2UodHlwZSwgInBvc3QiKSA/IEZvcm1TdWJt
aXNzaW9uOjpQb3N0TWV0aG9kIDogRm9ybVN1Ym1pc3Npb246OkdldE1ldGhvZDsKKyAgICByZXR1
cm4gZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2UodHlwZSwgInBvc3QiKSA/IEZvcm1TdWJt
aXNzaW9uOjpNZXRob2Q6OlBvc3QgOiBGb3JtU3VibWlzc2lvbjo6TWV0aG9kOjpHZXQ7CiB9CiAK
IHZvaWQgRm9ybVN1Ym1pc3Npb246OkF0dHJpYnV0ZXM6OnVwZGF0ZU1ldGhvZFR5cGUoY29uc3Qg
U3RyaW5nJiB0eXBlKQpAQCAtMTE0LDI0ICsxMTQsMTMgQEAgdm9pZCBGb3JtU3VibWlzc2lvbjo6
QXR0cmlidXRlczo6dXBkYXRlTWV0aG9kVHlwZShjb25zdCBTdHJpbmcmIHR5cGUpCiAgICAgbV9t
ZXRob2QgPSBwYXJzZU1ldGhvZFR5cGUodHlwZSk7CiB9CiAKLXZvaWQgRm9ybVN1Ym1pc3Npb246
OkF0dHJpYnV0ZXM6OmNvcHlGcm9tKGNvbnN0IEF0dHJpYnV0ZXMmIG90aGVyKQotewotICAgIG1f
bWV0aG9kID0gb3RoZXIubV9tZXRob2Q7Ci0gICAgbV9pc011bHRpUGFydEZvcm0gPSBvdGhlci5t
X2lzTXVsdGlQYXJ0Rm9ybTsKLQotICAgIG1fYWN0aW9uID0gb3RoZXIubV9hY3Rpb247Ci0gICAg
bV90YXJnZXQgPSBvdGhlci5tX3RhcmdldDsKLSAgICBtX2VuY29kaW5nVHlwZSA9IG90aGVyLm1f
ZW5jb2RpbmdUeXBlOwotICAgIG1fYWNjZXB0Q2hhcnNldCA9IG90aGVyLm1fYWNjZXB0Q2hhcnNl
dDsKLX0KLQotaW5saW5lIEZvcm1TdWJtaXNzaW9uOjpGb3JtU3VibWlzc2lvbihNZXRob2QgbWV0
aG9kLCBjb25zdCBVUkwmIGFjdGlvbiwgY29uc3QgU3RyaW5nJiB0YXJnZXQsIGNvbnN0IFN0cmlu
ZyYgY29udGVudFR5cGUsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiBzdGF0ZSwgUGFzc1JlZlB0cjxG
b3JtRGF0YT4gZGF0YSwgY29uc3QgU3RyaW5nJiBib3VuZGFyeSwgTG9ja0hpc3RvcnkgbG9ja0hp
c3RvcnksIFBhc3NSZWZQdHI8RXZlbnQ+IGV2ZW50KQoraW5saW5lIEZvcm1TdWJtaXNzaW9uOjpG
b3JtU3VibWlzc2lvbihNZXRob2QgbWV0aG9kLCBjb25zdCBVUkwmIGFjdGlvbiwgY29uc3QgU3Ry
aW5nJiB0YXJnZXQsIGNvbnN0IFN0cmluZyYgY29udGVudFR5cGUsIFJlZjxGb3JtU3RhdGU+JiYg
c3RhdGUsIFJlZjxGb3JtRGF0YT4mJiBkYXRhLCBjb25zdCBTdHJpbmcmIGJvdW5kYXJ5LCBMb2Nr
SGlzdG9yeSBsb2NrSGlzdG9yeSwgRXZlbnQqIGV2ZW50KQogICAgIDogbV9tZXRob2QobWV0aG9k
KQogICAgICwgbV9hY3Rpb24oYWN0aW9uKQogICAgICwgbV90YXJnZXQodGFyZ2V0KQogICAgICwg
bV9jb250ZW50VHlwZShjb250ZW50VHlwZSkKLSAgICAsIG1fZm9ybVN0YXRlKHN0YXRlKQotICAg
ICwgbV9mb3JtRGF0YShkYXRhKQorICAgICwgbV9mb3JtU3RhdGUoV1RGTW92ZShzdGF0ZSkpCisg
ICAgLCBtX2Zvcm1EYXRhKFdURk1vdmUoZGF0YSkpCiAgICAgLCBtX2JvdW5kYXJ5KGJvdW5kYXJ5
KQogICAgICwgbV9sb2NrSGlzdG9yeShsb2NrSGlzdG9yeSkKICAgICAsIG1fZXZlbnQoZXZlbnQp
CkBAIC0xNTUsMTAgKzE0NCw4IEBAIHN0YXRpYyBUZXh0RW5jb2RpbmcgZW5jb2RpbmdGcm9tQWNj
ZXB0Q2hhcnNldChjb25zdCBTdHJpbmcmIGFjY2VwdENoYXJzZXQsIERvY3VtCiAgICAgcmV0dXJu
IGRvY3VtZW50LnRleHRFbmNvZGluZygpOwogfQogCi1SZWY8Rm9ybVN1Ym1pc3Npb24+IEZvcm1T
dWJtaXNzaW9uOjpjcmVhdGUoSFRNTEZvcm1FbGVtZW50KiBmb3JtLCBjb25zdCBBdHRyaWJ1dGVz
JiBhdHRyaWJ1dGVzLCBQYXNzUmVmUHRyPEV2ZW50PiBldmVudCwgTG9ja0hpc3RvcnkgbG9ja0hp
c3RvcnksIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciB0cmlnZ2VyKQorUmVmPEZvcm1TdWJtaXNzaW9u
PiBGb3JtU3VibWlzc2lvbjo6Y3JlYXRlKEhUTUxGb3JtRWxlbWVudCYgZm9ybSwgY29uc3QgQXR0
cmlidXRlcyYgYXR0cmlidXRlcywgRXZlbnQqIGV2ZW50LCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9y
eSwgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIHRyaWdnZXIpCiB7Ci0gICAgQVNTRVJUKGZvcm0pOwot
CiAgICAgSFRNTEZvcm1Db250cm9sRWxlbWVudCogc3VibWl0QnV0dG9uID0gbnVsbHB0cjsKICAg
ICBpZiAoZXZlbnQgJiYgZXZlbnQtPnRhcmdldCgpKSB7CiAgICAgICAgIGZvciAoTm9kZSogbm9k
ZSA9IGV2ZW50LT50YXJnZXQoKS0+dG9Ob2RlKCk7IG5vZGU7IG5vZGUgPSBub2RlLT5wYXJlbnRO
b2RlKCkpIHsKQEAgLTE2OSw4ICsxNTYsNyBAQCBSZWY8Rm9ybVN1Ym1pc3Npb24+IEZvcm1TdWJt
aXNzaW9uOjpjcmVhdGUoSFRNTEZvcm1FbGVtZW50KiBmb3JtLCBjb25zdCBBdHRyaWJ1dAogICAg
ICAgICB9CiAgICAgfQogCi0gICAgRm9ybVN1Ym1pc3Npb246OkF0dHJpYnV0ZXMgY29waWVkQXR0
cmlidXRlczsKLSAgICBjb3BpZWRBdHRyaWJ1dGVzLmNvcHlGcm9tKGF0dHJpYnV0ZXMpOworICAg
IGF1dG8gY29waWVkQXR0cmlidXRlcyA9IGF0dHJpYnV0ZXM7CiAgICAgaWYgKHN1Ym1pdEJ1dHRv
bikgewogICAgICAgICBBdG9taWNTdHJpbmcgYXR0cmlidXRlVmFsdWU7CiAgICAgICAgIGlmICgh
KGF0dHJpYnV0ZVZhbHVlID0gc3VibWl0QnV0dG9uLT5hdHRyaWJ1dGVXaXRob3V0U3luY2hyb25p
emF0aW9uKGZvcm1hY3Rpb25BdHRyKSkuaXNOdWxsKCkpCkBAIC0xODMsMTUgKzE2OSwxNSBAQCBS
ZWY8Rm9ybVN1Ym1pc3Npb24+IEZvcm1TdWJtaXNzaW9uOjpjcmVhdGUoSFRNTEZvcm1FbGVtZW50
KiBmb3JtLCBjb25zdCBBdHRyaWJ1dAogICAgICAgICAgICAgY29waWVkQXR0cmlidXRlcy5zZXRU
YXJnZXQoYXR0cmlidXRlVmFsdWUpOwogICAgIH0KICAgICAKLSAgICBEb2N1bWVudCYgZG9jdW1l
bnQgPSBmb3JtLT5kb2N1bWVudCgpOwotICAgIFVSTCBhY3Rpb25VUkwgPSBkb2N1bWVudC5jb21w
bGV0ZVVSTChjb3BpZWRBdHRyaWJ1dGVzLmFjdGlvbigpLmlzRW1wdHkoKSA/IGRvY3VtZW50LnVy
bCgpLnN0cmluZygpIDogY29waWVkQXR0cmlidXRlcy5hY3Rpb24oKSk7CisgICAgYXV0byYgZG9j
dW1lbnQgPSBmb3JtLmRvY3VtZW50KCk7CisgICAgYXV0byBhY3Rpb25VUkwgPSBkb2N1bWVudC5j
b21wbGV0ZVVSTChjb3BpZWRBdHRyaWJ1dGVzLmFjdGlvbigpLmlzRW1wdHkoKSA/IGRvY3VtZW50
LnVybCgpLnN0cmluZygpIDogY29waWVkQXR0cmlidXRlcy5hY3Rpb24oKSk7CiAgICAgYm9vbCBp
c01haWx0b0Zvcm0gPSBhY3Rpb25VUkwucHJvdG9jb2xJcygibWFpbHRvIik7CiAgICAgYm9vbCBp
c011bHRpUGFydEZvcm0gPSBmYWxzZTsKLSAgICBTdHJpbmcgZW5jb2RpbmdUeXBlID0gY29waWVk
QXR0cmlidXRlcy5lbmNvZGluZ1R5cGUoKTsKKyAgICBhdXRvIGVuY29kaW5nVHlwZSA9IGNvcGll
ZEF0dHJpYnV0ZXMuZW5jb2RpbmdUeXBlKCk7CiAKICAgICBkb2N1bWVudC5jb250ZW50U2VjdXJp
dHlQb2xpY3koKS0+dXBncmFkZUluc2VjdXJlUmVxdWVzdElmTmVlZGVkKGFjdGlvblVSTCwgQ29u
dGVudFNlY3VyaXR5UG9saWN5OjpJbnNlY3VyZVJlcXVlc3RUeXBlOjpGb3JtU3VibWlzc2lvbik7
CiAKLSAgICBpZiAoY29waWVkQXR0cmlidXRlcy5tZXRob2QoKSA9PSBQb3N0TWV0aG9kKSB7Cisg
ICAgaWYgKGNvcGllZEF0dHJpYnV0ZXMubWV0aG9kKCkgPT0gTWV0aG9kOjpQb3N0KSB7CiAgICAg
ICAgIGlzTXVsdGlQYXJ0Rm9ybSA9IGNvcGllZEF0dHJpYnV0ZXMuaXNNdWx0aVBhcnRGb3JtKCk7
CiAgICAgICAgIGlmIChpc011bHRpUGFydEZvcm0gJiYgaXNNYWlsdG9Gb3JtKSB7CiAgICAgICAg
ICAgICBlbmNvZGluZ1R5cGUgPSAiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIjsK
QEAgLTE5OSwxOSArMTg1LDE5IEBAIFJlZjxGb3JtU3VibWlzc2lvbj4gRm9ybVN1Ym1pc3Npb246
OmNyZWF0ZShIVE1MRm9ybUVsZW1lbnQqIGZvcm0sIGNvbnN0IEF0dHJpYnV0CiAgICAgICAgIH0K
ICAgICB9CiAKLSAgICBUZXh0RW5jb2RpbmcgZGF0YUVuY29kaW5nID0gaXNNYWlsdG9Gb3JtID8g
VVRGOEVuY29kaW5nKCkgOiBlbmNvZGluZ0Zyb21BY2NlcHRDaGFyc2V0KGNvcGllZEF0dHJpYnV0
ZXMuYWNjZXB0Q2hhcnNldCgpLCBkb2N1bWVudCk7Ci0gICAgUmVmUHRyPERPTUZvcm1EYXRhPiBk
b21Gb3JtRGF0YSA9IERPTUZvcm1EYXRhOjpjcmVhdGUoZGF0YUVuY29kaW5nLmVuY29kaW5nRm9y
Rm9ybVN1Ym1pc3Npb24oKSk7Ci0gICAgVmVjdG9yPHN0ZDo6cGFpcjxTdHJpbmcsIFN0cmluZz4+
IGZvcm1WYWx1ZXM7CisgICAgYXV0byBkYXRhRW5jb2RpbmcgPSBpc01haWx0b0Zvcm0gPyBVVEY4
RW5jb2RpbmcoKSA6IGVuY29kaW5nRnJvbUFjY2VwdENoYXJzZXQoY29waWVkQXR0cmlidXRlcy5h
Y2NlcHRDaGFyc2V0KCksIGRvY3VtZW50KTsKKyAgICBhdXRvIGRvbUZvcm1EYXRhID0gRE9NRm9y
bURhdGE6OmNyZWF0ZShkYXRhRW5jb2RpbmcuZW5jb2RpbmdGb3JGb3JtU3VibWlzc2lvbigpKTsK
KyAgICBTdHJpbmdQYWlyVmVjdG9yIGZvcm1WYWx1ZXM7CiAKICAgICBib29sIGNvbnRhaW5zUGFz
c3dvcmREYXRhID0gZmFsc2U7Ci0gICAgZm9yIChhdXRvJiBjb250cm9sIDogZm9ybS0+YXNzb2Np
YXRlZEVsZW1lbnRzKCkpIHsKLSAgICAgICAgSFRNTEVsZW1lbnQmIGVsZW1lbnQgPSBjb250cm9s
LT5hc0hUTUxFbGVtZW50KCk7CisgICAgZm9yIChhdXRvJiBjb250cm9sIDogZm9ybS5hc3NvY2lh
dGVkRWxlbWVudHMoKSkgeworICAgICAgICBhdXRvJiBlbGVtZW50ID0gY29udHJvbC0+YXNIVE1M
RWxlbWVudCgpOwogICAgICAgICBpZiAoIWVsZW1lbnQuaXNEaXNhYmxlZEZvcm1Db250cm9sKCkp
Ci0gICAgICAgICAgICBjb250cm9sLT5hcHBlbmRGb3JtRGF0YSgqZG9tRm9ybURhdGEsIGlzTXVs
dGlQYXJ0Rm9ybSk7CisgICAgICAgICAgICBjb250cm9sLT5hcHBlbmRGb3JtRGF0YShkb21Gb3Jt
RGF0YSwgaXNNdWx0aVBhcnRGb3JtKTsKICAgICAgICAgaWYgKGlzPEhUTUxJbnB1dEVsZW1lbnQ+
KGVsZW1lbnQpKSB7Ci0gICAgICAgICAgICBIVE1MSW5wdXRFbGVtZW50JiBpbnB1dCA9IGRvd25j
YXN0PEhUTUxJbnB1dEVsZW1lbnQ+KGVsZW1lbnQpOworICAgICAgICAgICAgYXV0byYgaW5wdXQg
PSBkb3duY2FzdDxIVE1MSW5wdXRFbGVtZW50PihlbGVtZW50KTsKICAgICAgICAgICAgIGlmIChp
bnB1dC5pc1RleHRGaWVsZCgpKSB7Ci0gICAgICAgICAgICAgICAgZm9ybVZhbHVlcy5hcHBlbmQo
c3RkOjpwYWlyPFN0cmluZywgU3RyaW5nPihpbnB1dC5uYW1lKCkuc3RyaW5nKCksIGlucHV0LnZh
bHVlKCkpKTsKKyAgICAgICAgICAgICAgICBmb3JtVmFsdWVzLmFwcGVuZCh7IGlucHV0Lm5hbWUo
KS5zdHJpbmcoKSwgaW5wdXQudmFsdWUoKSB9KTsKICAgICAgICAgICAgICAgICBpbnB1dC5hZGRT
ZWFyY2hSZXN1bHQoKTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGlmIChpbnB1dC5pc1Bh
c3N3b3JkRmllbGQoKSAmJiAhaW5wdXQudmFsdWUoKS5pc0VtcHR5KCkpCkBAIC0yMjMsMTEgKzIw
OSwxMSBAQCBSZWY8Rm9ybVN1Ym1pc3Npb24+IEZvcm1TdWJtaXNzaW9uOjpjcmVhdGUoSFRNTEZv
cm1FbGVtZW50KiBmb3JtLCBjb25zdCBBdHRyaWJ1dAogICAgIFN0cmluZyBib3VuZGFyeTsKIAog
ICAgIGlmIChpc011bHRpUGFydEZvcm0pIHsKLSAgICAgICAgZm9ybURhdGEgPSBGb3JtRGF0YTo6
Y3JlYXRlTXVsdGlQYXJ0KCooc3RhdGljX2Nhc3Q8Rm9ybURhdGFMaXN0Kj4oZG9tRm9ybURhdGEu
Z2V0KCkpKSwgZG9tRm9ybURhdGEtPmVuY29kaW5nKCksICZkb2N1bWVudCk7CisgICAgICAgIGZv
cm1EYXRhID0gRm9ybURhdGE6OmNyZWF0ZU11bHRpUGFydChkb21Gb3JtRGF0YSwgZG9tRm9ybURh
dGEtPmVuY29kaW5nKCksICZkb2N1bWVudCk7CiAgICAgICAgIGJvdW5kYXJ5ID0gZm9ybURhdGEt
PmJvdW5kYXJ5KCkuZGF0YSgpOwogICAgIH0gZWxzZSB7Ci0gICAgICAgIGZvcm1EYXRhID0gRm9y
bURhdGE6OmNyZWF0ZSgqKHN0YXRpY19jYXN0PEZvcm1EYXRhTGlzdCo+KGRvbUZvcm1EYXRhLmdl
dCgpKSksIGRvbUZvcm1EYXRhLT5lbmNvZGluZygpLCBhdHRyaWJ1dGVzLm1ldGhvZCgpID09IEdl
dE1ldGhvZCA/IEZvcm1EYXRhOjpGb3JtVVJMRW5jb2RlZCA6IEZvcm1EYXRhOjpwYXJzZUVuY29k
aW5nVHlwZShlbmNvZGluZ1R5cGUpKTsKLSAgICAgICAgaWYgKGNvcGllZEF0dHJpYnV0ZXMubWV0
aG9kKCkgPT0gUG9zdE1ldGhvZCAmJiBpc01haWx0b0Zvcm0pIHsKKyAgICAgICAgZm9ybURhdGEg
PSBGb3JtRGF0YTo6Y3JlYXRlKGRvbUZvcm1EYXRhLCBkb21Gb3JtRGF0YS0+ZW5jb2RpbmcoKSwg
YXR0cmlidXRlcy5tZXRob2QoKSA9PSBNZXRob2Q6OkdldCA/IEZvcm1EYXRhOjpGb3JtVVJMRW5j
b2RlZCA6IEZvcm1EYXRhOjpwYXJzZUVuY29kaW5nVHlwZShlbmNvZGluZ1R5cGUpKTsKKyAgICAg
ICAgaWYgKGNvcGllZEF0dHJpYnV0ZXMubWV0aG9kKCkgPT0gTWV0aG9kOjpQb3N0ICYmIGlzTWFp
bHRvRm9ybSkgewogICAgICAgICAgICAgLy8gQ29udmVydCB0aGUgZm9ybSBkYXRhIGludG8gYSBz
dHJpbmcgdGhhdCB3ZSBwdXQgaW50byB0aGUgVVJMLgogICAgICAgICAgICAgYXBwZW5kTWFpbHRv
UG9zdEZvcm1EYXRhVG9VUkwoYWN0aW9uVVJMLCAqZm9ybURhdGEsIGVuY29kaW5nVHlwZSk7CiAg
ICAgICAgICAgICBmb3JtRGF0YSA9IEZvcm1EYXRhOjpjcmVhdGUoKTsKQEAgLTIzNiwxNCArMjIy
LDE3IEBAIFJlZjxGb3JtU3VibWlzc2lvbj4gRm9ybVN1Ym1pc3Npb246OmNyZWF0ZShIVE1MRm9y
bUVsZW1lbnQqIGZvcm0sIGNvbnN0IEF0dHJpYnV0CiAKICAgICBmb3JtRGF0YS0+c2V0SWRlbnRp
ZmllcihnZW5lcmF0ZUZvcm1EYXRhSWRlbnRpZmllcigpKTsKICAgICBmb3JtRGF0YS0+c2V0Q29u
dGFpbnNQYXNzd29yZERhdGEoY29udGFpbnNQYXNzd29yZERhdGEpOworCiAgICAgU3RyaW5nIHRh
cmdldE9yQmFzZVRhcmdldCA9IGNvcGllZEF0dHJpYnV0ZXMudGFyZ2V0KCkuaXNFbXB0eSgpID8g
ZG9jdW1lbnQuYmFzZVRhcmdldCgpIDogY29waWVkQXR0cmlidXRlcy50YXJnZXQoKTsKLSAgICBh
dXRvIGZvcm1TdGF0ZSA9IEZvcm1TdGF0ZTo6Y3JlYXRlKGZvcm0sIGZvcm1WYWx1ZXMsICZkb2N1
bWVudCwgdHJpZ2dlcik7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRm9ybVN1Ym1pc3Npb24o
Y29waWVkQXR0cmlidXRlcy5tZXRob2QoKSwgYWN0aW9uVVJMLCB0YXJnZXRPckJhc2VUYXJnZXQs
IGVuY29kaW5nVHlwZSwgV1RGTW92ZShmb3JtU3RhdGUpLCBXVEZNb3ZlKGZvcm1EYXRhKSwgYm91
bmRhcnksIGxvY2tIaXN0b3J5LCBldmVudCkpOworCisgICAgYXV0byBmb3JtU3RhdGUgPSBGb3Jt
U3RhdGU6OmNyZWF0ZShmb3JtLCBXVEZNb3ZlKGZvcm1WYWx1ZXMpLCBkb2N1bWVudCwgdHJpZ2dl
cik7CisKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGb3JtU3VibWlzc2lvbihjb3BpZWRBdHRy
aWJ1dGVzLm1ldGhvZCgpLCBhY3Rpb25VUkwsIHRhcmdldE9yQmFzZVRhcmdldCwgZW5jb2RpbmdU
eXBlLCBXVEZNb3ZlKGZvcm1TdGF0ZSksIGZvcm1EYXRhLnJlbGVhc2VOb25OdWxsKCksIGJvdW5k
YXJ5LCBsb2NrSGlzdG9yeSwgZXZlbnQpKTsKIH0KIAogVVJMIEZvcm1TdWJtaXNzaW9uOjpyZXF1
ZXN0VVJMKCkgY29uc3QKIHsKLSAgICBpZiAobV9tZXRob2QgPT0gRm9ybVN1Ym1pc3Npb246OlBv
c3RNZXRob2QpCisgICAgaWYgKG1fbWV0aG9kID09IE1ldGhvZDo6UG9zdCkKICAgICAgICAgcmV0
dXJuIG1fYWN0aW9uOwogCiAgICAgVVJMIHJlcXVlc3RVUkwobV9hY3Rpb24pOwpAQCAtMjU5LDcg
KzI0OCw3IEBAIHZvaWQgRm9ybVN1Ym1pc3Npb246OnBvcHVsYXRlRnJhbWVMb2FkUmVxdWVzdChG
cmFtZUxvYWRSZXF1ZXN0JiBmcmFtZVJlcXVlc3QpCiAgICAgaWYgKCFtX3JlZmVycmVyLmlzRW1w
dHkoKSkKICAgICAgICAgZnJhbWVSZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLnNldEhUVFBSZWZl
cnJlcihtX3JlZmVycmVyKTsKIAotICAgIGlmIChtX21ldGhvZCA9PSBGb3JtU3VibWlzc2lvbjo6
UG9zdE1ldGhvZCkgeworICAgIGlmIChtX21ldGhvZCA9PSBNZXRob2Q6OlBvc3QpIHsKICAgICAg
ICAgZnJhbWVSZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLnNldEhUVFBNZXRob2QoIlBPU1QiKTsK
ICAgICAgICAgZnJhbWVSZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLnNldEhUVFBCb2R5KG1fZm9y
bURhdGEuY29weVJlZigpKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zv
cm1TdWJtaXNzaW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN1Ym1pc3Npb24uaApp
bmRleCA0MWIzN2UwNjQyYjE4YTgwZTE2NGYwNTY2YmVmODhkMmQxMGU3ZWY4Li4yNTI0MTJjMGMw
MmIzOWJkOWU4YjQ1MWFjNzUzNWE0NTczNTQ3NmEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvRm9ybVN1Ym1pc3Npb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9y
bVN1Ym1pc3Npb24uaApAQCAtMzYsMzEgKzM2LDIxIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAotY2xhc3MgRG9jdW1lbnQ7CiBjbGFzcyBFdmVudDsKIGNsYXNzIEZvcm1EYXRhOworCiBzdHJ1
Y3QgRnJhbWVMb2FkUmVxdWVzdDsKLWNsYXNzIEhUTUxGb3JtRWxlbWVudDsKLWNsYXNzIFRleHRF
bmNvZGluZzsKIAogY2xhc3MgRm9ybVN1Ym1pc3Npb24gOiBwdWJsaWMgUmVmQ291bnRlZDxGb3Jt
U3VibWlzc2lvbj4gewogcHVibGljOgotICAgIGVudW0gTWV0aG9kIHsgR2V0TWV0aG9kLCBQb3N0
TWV0aG9kIH07CisgICAgZW51bSBjbGFzcyBNZXRob2QgeyBHZXQsIFBvc3QgfTsKIAogICAgIGNs
YXNzIEF0dHJpYnV0ZXMgewotICAgICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShBdHRyaWJ1dGVz
KTsKICAgICBwdWJsaWM6Ci0gICAgICAgIEF0dHJpYnV0ZXMoKQotICAgICAgICAgICAgOiBtX21l
dGhvZChHZXRNZXRob2QpCi0gICAgICAgICAgICAsIG1faXNNdWx0aVBhcnRGb3JtKGZhbHNlKQot
ICAgICAgICAgICAgLCBtX2VuY29kaW5nVHlwZSgiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxl
bmNvZGVkIikKLSAgICAgICAgewotICAgICAgICB9Ci0KICAgICAgICAgTWV0aG9kIG1ldGhvZCgp
IGNvbnN0IHsgcmV0dXJuIG1fbWV0aG9kOyB9CiAgICAgICAgIHN0YXRpYyBNZXRob2QgcGFyc2VN
ZXRob2RUeXBlKGNvbnN0IFN0cmluZyYpOwogICAgICAgICB2b2lkIHVwZGF0ZU1ldGhvZFR5cGUo
Y29uc3QgU3RyaW5nJik7Ci0gICAgICAgIHN0YXRpYyBTdHJpbmcgbWV0aG9kU3RyaW5nKE1ldGhv
ZCBtZXRob2QpIHsgcmV0dXJuIG1ldGhvZCA9PSBQb3N0TWV0aG9kID8gInBvc3QiIDogImdldCI7
IH0KKyAgICAgICAgc3RhdGljIEFTQ0lJTGl0ZXJhbCBtZXRob2RTdHJpbmcoTWV0aG9kIG1ldGhv
ZCkgeyByZXR1cm4gQVNDSUlMaXRlcmFsIHsgbWV0aG9kID09IE1ldGhvZDo6UG9zdCA/ICJwb3N0
IiA6ICJnZXQiIH07IH0KIAogICAgICAgICBjb25zdCBTdHJpbmcmIGFjdGlvbigpIGNvbnN0IHsg
cmV0dXJuIG1fYWN0aW9uOyB9CiAgICAgICAgIHZvaWQgcGFyc2VBY3Rpb24oY29uc3QgU3RyaW5n
Jik7CkBAIC03Niw1MCArNjYsNDYgQEAgcHVibGljOgogICAgICAgICBjb25zdCBTdHJpbmcmIGFj
Y2VwdENoYXJzZXQoKSBjb25zdCB7IHJldHVybiBtX2FjY2VwdENoYXJzZXQ7IH0KICAgICAgICAg
dm9pZCBzZXRBY2NlcHRDaGFyc2V0KGNvbnN0IFN0cmluZyYgdmFsdWUpIHsgbV9hY2NlcHRDaGFy
c2V0ID0gdmFsdWU7IH0KIAotICAgICAgICB2b2lkIGNvcHlGcm9tKGNvbnN0IEF0dHJpYnV0ZXMm
KTsKLQogICAgIHByaXZhdGU6Ci0gICAgICAgIE1ldGhvZCBtX21ldGhvZDsKLSAgICAgICAgYm9v
bCBtX2lzTXVsdGlQYXJ0Rm9ybTsKLQorICAgICAgICBNZXRob2QgbV9tZXRob2QgeyBNZXRob2Q6
OkdldCB9OworICAgICAgICBib29sIG1faXNNdWx0aVBhcnRGb3JtIHsgZmFsc2UgfTsKICAgICAg
ICAgU3RyaW5nIG1fYWN0aW9uOwogICAgICAgICBTdHJpbmcgbV90YXJnZXQ7Ci0gICAgICAgIFN0
cmluZyBtX2VuY29kaW5nVHlwZTsKKyAgICAgICAgU3RyaW5nIG1fZW5jb2RpbmdUeXBlIHsgQVND
SUlMaXRlcmFsIHsgImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIgfSB9OwogICAg
ICAgICBTdHJpbmcgbV9hY2NlcHRDaGFyc2V0OwogICAgIH07CiAKLSAgICBzdGF0aWMgUmVmPEZv
cm1TdWJtaXNzaW9uPiBjcmVhdGUoSFRNTEZvcm1FbGVtZW50KiwgY29uc3QgQXR0cmlidXRlcyYs
IFBhc3NSZWZQdHI8RXZlbnQ+IGV2ZW50LCBMb2NrSGlzdG9yeSwgRm9ybVN1Ym1pc3Npb25Ucmln
Z2VyKTsKKyAgICBzdGF0aWMgUmVmPEZvcm1TdWJtaXNzaW9uPiBjcmVhdGUoSFRNTEZvcm1FbGVt
ZW50JiwgY29uc3QgQXR0cmlidXRlcyYsIEV2ZW50KiwgTG9ja0hpc3RvcnksIEZvcm1TdWJtaXNz
aW9uVHJpZ2dlcik7CiAKICAgICB2b2lkIHBvcHVsYXRlRnJhbWVMb2FkUmVxdWVzdChGcmFtZUxv
YWRSZXF1ZXN0Jik7Ci0gICAgCiAgICAgVVJMIHJlcXVlc3RVUkwoKSBjb25zdDsKIAogICAgIE1l
dGhvZCBtZXRob2QoKSBjb25zdCB7IHJldHVybiBtX21ldGhvZDsgfQogICAgIGNvbnN0IFVSTCYg
YWN0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9hY3Rpb247IH0KICAgICBjb25zdCBTdHJpbmcmIHRh
cmdldCgpIGNvbnN0IHsgcmV0dXJuIG1fdGFyZ2V0OyB9Ci0gICAgdm9pZCBjbGVhclRhcmdldCgp
IHsgbV90YXJnZXQgPSBTdHJpbmcoKTsgfQogICAgIGNvbnN0IFN0cmluZyYgY29udGVudFR5cGUo
KSBjb25zdCB7IHJldHVybiBtX2NvbnRlbnRUeXBlOyB9Ci0gICAgRm9ybVN0YXRlKiBzdGF0ZSgp
IGNvbnN0IHsgcmV0dXJuIG1fZm9ybVN0YXRlLmdldCgpOyB9Ci0gICAgRm9ybURhdGEqIGRhdGEo
KSBjb25zdCB7IHJldHVybiBtX2Zvcm1EYXRhLmdldCgpOyB9CisgICAgRm9ybVN0YXRlJiBzdGF0
ZSgpIGNvbnN0IHsgcmV0dXJuIG1fZm9ybVN0YXRlOyB9CisgICAgRm9ybURhdGEmIGRhdGEoKSBj
b25zdCB7IHJldHVybiBtX2Zvcm1EYXRhOyB9CiAgICAgY29uc3QgU3RyaW5nIGJvdW5kYXJ5KCkg
Y29uc3QgeyByZXR1cm4gbV9ib3VuZGFyeTsgfQogICAgIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5
KCkgY29uc3QgeyByZXR1cm4gbV9sb2NrSGlzdG9yeTsgfQogICAgIEV2ZW50KiBldmVudCgpIGNv
bnN0IHsgcmV0dXJuIG1fZXZlbnQuZ2V0KCk7IH0KLQogICAgIGNvbnN0IFN0cmluZyYgcmVmZXJy
ZXIoKSBjb25zdCB7IHJldHVybiBtX3JlZmVycmVyOyB9Ci0gICAgdm9pZCBzZXRSZWZlcnJlcihj
b25zdCBTdHJpbmcmIHJlZmVycmVyKSB7IG1fcmVmZXJyZXIgPSByZWZlcnJlcjsgfQogICAgIGNv
bnN0IFN0cmluZyYgb3JpZ2luKCkgY29uc3QgeyByZXR1cm4gbV9vcmlnaW47IH0KKworICAgIHZv
aWQgY2xlYXJUYXJnZXQoKSB7IG1fdGFyZ2V0ID0geyB9OyB9CisgICAgdm9pZCBzZXRSZWZlcnJl
cihjb25zdCBTdHJpbmcmIHJlZmVycmVyKSB7IG1fcmVmZXJyZXIgPSByZWZlcnJlcjsgfQogICAg
IHZvaWQgc2V0T3JpZ2luKGNvbnN0IFN0cmluZyYgb3JpZ2luKSB7IG1fb3JpZ2luID0gb3JpZ2lu
OyB9CiAKIHByaXZhdGU6Ci0gICAgRm9ybVN1Ym1pc3Npb24oTWV0aG9kLCBjb25zdCBVUkwmIGFj
dGlvbiwgY29uc3QgU3RyaW5nJiB0YXJnZXQsIGNvbnN0IFN0cmluZyYgY29udGVudFR5cGUsIFBh
c3NSZWZQdHI8Rm9ybVN0YXRlPiwgUGFzc1JlZlB0cjxGb3JtRGF0YT4sIGNvbnN0IFN0cmluZyYg
Ym91bmRhcnksIExvY2tIaXN0b3J5LCBQYXNzUmVmUHRyPEV2ZW50Pik7CisgICAgRm9ybVN1Ym1p
c3Npb24oTWV0aG9kLCBjb25zdCBVUkwmIGFjdGlvbiwgY29uc3QgU3RyaW5nJiB0YXJnZXQsIGNv
bnN0IFN0cmluZyYgY29udGVudFR5cGUsIFJlZjxGb3JtU3RhdGU+JiYsIFJlZjxGb3JtRGF0YT4m
JiwgY29uc3QgU3RyaW5nJiBib3VuZGFyeSwgTG9ja0hpc3RvcnksIEV2ZW50Kik7CiAKICAgICAv
LyBGSVhNRTogSG9sZCBhbiBpbnN0YW5jZSBvZiBBdHRyaWJ1dGVzIGluc3RlYWQgb2YgaW5kaXZp
ZHVhbCBtZW1iZXJzLgogICAgIE1ldGhvZCBtX21ldGhvZDsKICAgICBVUkwgbV9hY3Rpb247CiAg
ICAgU3RyaW5nIG1fdGFyZ2V0OwogICAgIFN0cmluZyBtX2NvbnRlbnRUeXBlOwotICAgIFJlZlB0
cjxGb3JtU3RhdGU+IG1fZm9ybVN0YXRlOwotICAgIFJlZlB0cjxGb3JtRGF0YT4gbV9mb3JtRGF0
YTsKKyAgICBSZWY8Rm9ybVN0YXRlPiBtX2Zvcm1TdGF0ZTsKKyAgICBSZWY8Rm9ybURhdGE+IG1f
Zm9ybURhdGE7CiAgICAgU3RyaW5nIG1fYm91bmRhcnk7CiAgICAgTG9ja0hpc3RvcnkgbV9sb2Nr
SGlzdG9yeTsKICAgICBSZWZQdHI8RXZlbnQ+IG1fZXZlbnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zy
YW1lTG9hZGVyLmNwcAppbmRleCA0Y2ZlYmVmMTFmYmVkMzczODkxMTFiMmIxYjQ0ZjhlNmZkNzQ0
MzQzLi5lNWNjODk1NWQzNmQ0YjA5ODQ0NTc1MjVkNzkxZGRjMjNjYTM5MmI0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAKQEAgLTM2NiwxNyArMzY2LDE1IEBAIHZvaWQgRnJh
bWVMb2FkZXI6OnVybFNlbGVjdGVkKGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmIHBhc3NlZFJlcXVl
c3QsIEV2ZW50KiB0cmlnCiAKIHZvaWQgRnJhbWVMb2FkZXI6OnN1Ym1pdEZvcm0oUmVmPEZvcm1T
dWJtaXNzaW9uPiYmIHN1Ym1pc3Npb24pCiB7Ci0gICAgQVNTRVJUKHN1Ym1pc3Npb24tPm1ldGhv
ZCgpID09IEZvcm1TdWJtaXNzaW9uOjpQb3N0TWV0aG9kIHx8IHN1Ym1pc3Npb24tPm1ldGhvZCgp
ID09IEZvcm1TdWJtaXNzaW9uOjpHZXRNZXRob2QpOworICAgIEFTU0VSVChzdWJtaXNzaW9uLT5t
ZXRob2QoKSA9PSBGb3JtU3VibWlzc2lvbjo6TWV0aG9kOjpQb3N0IHx8IHN1Ym1pc3Npb24tPm1l
dGhvZCgpID09IEZvcm1TdWJtaXNzaW9uOjpNZXRob2Q6OkdldCk7CiAKICAgICAvLyBGSVhNRTog
RmluZCBhIGdvb2Qgc3BvdCBmb3IgdGhlc2UuCi0gICAgQVNTRVJUKHN1Ym1pc3Npb24tPmRhdGEo
KSk7Ci0gICAgQVNTRVJUKHN1Ym1pc3Npb24tPnN0YXRlKCkpOwotICAgIEFTU0VSVCghc3VibWlz
c2lvbi0+c3RhdGUoKS0+c291cmNlRG9jdW1lbnQoKS0+ZnJhbWUoKSB8fCBzdWJtaXNzaW9uLT5z
dGF0ZSgpLT5zb3VyY2VEb2N1bWVudCgpLT5mcmFtZSgpID09ICZtX2ZyYW1lKTsKKyAgICBBU1NF
UlQoIXN1Ym1pc3Npb24tPnN0YXRlKCkuc291cmNlRG9jdW1lbnQoKS5mcmFtZSgpIHx8IHN1Ym1p
c3Npb24tPnN0YXRlKCkuc291cmNlRG9jdW1lbnQoKS5mcmFtZSgpID09ICZtX2ZyYW1lKTsKIAog
ICAgIGlmICghbV9mcmFtZS5wYWdlKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGlmIChzdWJt
aXNzaW9uLT5zdGF0ZSgpLT5zb3VyY2VEb2N1bWVudCgpLT5wYWdlQ2FjaGVTdGF0ZSgpICE9IERv
Y3VtZW50OjpOb3RJblBhZ2VDYWNoZSkKKyAgICBpZiAoc3VibWlzc2lvbi0+c3RhdGUoKS5zb3Vy
Y2VEb2N1bWVudCgpLnBhZ2VDYWNoZVN0YXRlKCkgIT0gRG9jdW1lbnQ6Ok5vdEluUGFnZUNhY2hl
KQogICAgICAgICByZXR1cm47CiAKICAgICBpZiAoc3VibWlzc2lvbi0+YWN0aW9uKCkuaXNFbXB0
eSgpKQpAQCAtMzk4LDEyICszOTYsMTIgQEAgdm9pZCBGcmFtZUxvYWRlcjo6c3VibWl0Rm9ybShS
ZWY8Rm9ybVN1Ym1pc3Npb24+JiYgc3VibWlzc2lvbikKICAgICAgICAgcmV0dXJuOwogICAgIH0K
IAotICAgIEZyYW1lKiB0YXJnZXRGcmFtZSA9IGZpbmRGcmFtZUZvck5hdmlnYXRpb24oc3VibWlz
c2lvbi0+dGFyZ2V0KCksIHN1Ym1pc3Npb24tPnN0YXRlKCktPnNvdXJjZURvY3VtZW50KCkpOwor
ICAgIEZyYW1lKiB0YXJnZXRGcmFtZSA9IGZpbmRGcmFtZUZvck5hdmlnYXRpb24oc3VibWlzc2lv
bi0+dGFyZ2V0KCksICZzdWJtaXNzaW9uLT5zdGF0ZSgpLnNvdXJjZURvY3VtZW50KCkpOwogICAg
IGlmICghdGFyZ2V0RnJhbWUpIHsKICAgICAgICAgaWYgKCFET01XaW5kb3c6OmFsbG93UG9wVXAo
Jm1fZnJhbWUpICYmICFTY3JpcHRDb250cm9sbGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSkK
ICAgICAgICAgICAgIHJldHVybjsKIAotICAgICAgICAvLyBGSVhNRTogdGFyZ2V0RnJhbWUgY2Fu
IGJlIDAgZm9yIHR3byBkaXN0aW5jdCByZWFzb25zOgorICAgICAgICAvLyBGSVhNRTogdGFyZ2V0
RnJhbWUgY2FuIGJlIG51bGwgZm9yIHR3byBkaXN0aW5jdCByZWFzb25zOgogICAgICAgICAvLyAx
LiBUaGUgZnJhbWUgd2FzIG5vdCBmb3VuZCBieSBuYW1lLCBzbyB3ZSBzaG91bGQgdHJ5IG9wZW5p
bmcgYSBuZXcgd2luZG93LgogICAgICAgICAvLyAyLiBUaGUgZnJhbWUgd2FzIGZvdW5kLCBidXQg
bmF2aWdhdGluZyBpdCB3YXMgbm90IGFsbG93ZWQsIGUuZy4gYnkgSFRNTDUgc2FuZGJveCBvciBi
eSBvcmlnaW4gY2hlY2tzLgogICAgICAgICAvLyBDb250aW51aW5nIGZvcm0gc3VibWlzc2lvbiBt
YWtlcyBubyBzZW5zZSBpbiB0aGUgbGF0dGVyIGNhc2UuCkBAIC00MzQsNyArNDMyLDcgQEAgdm9p
ZCBGcmFtZUxvYWRlcjo6c3VibWl0Rm9ybShSZWY8Rm9ybVN1Ym1pc3Npb24+JiYgc3VibWlzc2lv
bikKICAgICAgICAgbV9zdWJtaXR0ZWRGb3JtVVJMID0gc3VibWlzc2lvbi0+cmVxdWVzdFVSTCgp
OwogICAgIH0KIAotICAgIHN1Ym1pc3Npb24tPmRhdGEoKS0+Z2VuZXJhdGVGaWxlcyhtX2ZyYW1l
LmRvY3VtZW50KCkpOworICAgIHN1Ym1pc3Npb24tPmRhdGEoKS5nZW5lcmF0ZUZpbGVzKG1fZnJh
bWUuZG9jdW1lbnQoKSk7CiAgICAgc3VibWlzc2lvbi0+c2V0UmVmZXJyZXIob3V0Z29pbmdSZWZl
cnJlcigpKTsKICAgICBzdWJtaXNzaW9uLT5zZXRPcmlnaW4ob3V0Z29pbmdPcmlnaW4oKSk7CiAK
QEAgLTY2MCwyMCArNjU4LDE4IEBAIHZvaWQgRnJhbWVMb2FkZXI6OnJlY2VpdmVkRmlyc3REYXRh
KCkKICAgICBpZiAoIW1fZG9jdW1lbnRMb2FkZXIpCiAgICAgICAgIHJldHVybjsKIAorICAgIEFT
U0VSVChtX2ZyYW1lLmRvY3VtZW50KCkpOworICAgIGF1dG8mIGRvY3VtZW50ID0gKm1fZnJhbWUu
ZG9jdW1lbnQoKTsKKwogICAgIGRvdWJsZSBkZWxheTsKICAgICBTdHJpbmcgdXJsU3RyaW5nOwog
ICAgIGlmICghcGFyc2VIVFRQUmVmcmVzaChtX2RvY3VtZW50TG9hZGVyLT5yZXNwb25zZSgpLmh0
dHBIZWFkZXJGaWVsZChIVFRQSGVhZGVyTmFtZTo6UmVmcmVzaCksIGRlbGF5LCB1cmxTdHJpbmcp
KQogICAgICAgICByZXR1cm47Ci0gICAgVVJMIGNvbXBsZXRlZFVSTDsKLSAgICBpZiAodXJsU3Ry
aW5nLmlzRW1wdHkoKSkKLSAgICAgICAgY29tcGxldGVkVVJMID0gbV9mcmFtZS5kb2N1bWVudCgp
LT51cmwoKTsKLSAgICBlbHNlCi0gICAgICAgIGNvbXBsZXRlZFVSTCA9IG1fZnJhbWUuZG9jdW1l
bnQoKS0+Y29tcGxldGVVUkwodXJsU3RyaW5nKTsKLQorICAgIGF1dG8gY29tcGxldGVkVVJMID0g
dXJsU3RyaW5nLmlzRW1wdHkoKSA/IGRvY3VtZW50LnVybCgpIDogZG9jdW1lbnQuY29tcGxldGVV
UkwodXJsU3RyaW5nKTsKICAgICBpZiAoIXByb3RvY29sSXNKYXZhU2NyaXB0KGNvbXBsZXRlZFVS
TCkpCi0gICAgICAgIG1fZnJhbWUubmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlUmVkaXJl
Y3QobV9mcmFtZS5kb2N1bWVudCgpLCBkZWxheSwgY29tcGxldGVkVVJMKTsKKyAgICAgICAgbV9m
cmFtZS5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVSZWRpcmVjdChkb2N1bWVudCwgZGVs
YXksIGNvbXBsZXRlZFVSTCk7CiAgICAgZWxzZSB7Ci0gICAgICAgIFN0cmluZyBtZXNzYWdlID0g
IlJlZnVzZWQgdG8gcmVmcmVzaCAiICsgbV9mcmFtZS5kb2N1bWVudCgpLT51cmwoKS5zdHJpbmdD
ZW50ZXJFbGxpcHNpemVkVG9MZW5ndGgoKSArICIgdG8gYSBqYXZhc2NyaXB0OiBVUkwiOworICAg
ICAgICBhdXRvIG1lc3NhZ2UgPSAiUmVmdXNlZCB0byByZWZyZXNoICIgKyBkb2N1bWVudC51cmwo
KS5zdHJpbmdDZW50ZXJFbGxpcHNpemVkVG9MZW5ndGgoKSArICIgdG8gYSBqYXZhc2NyaXB0OiBV
UkwiOwogICAgICAgICBtX2ZyYW1lLmRvY3VtZW50KCktPmFkZENvbnNvbGVNZXNzYWdlKE1lc3Nh
Z2VTb3VyY2U6OlNlY3VyaXR5LCBNZXNzYWdlTGV2ZWw6OkVycm9yLCBtZXNzYWdlKTsKICAgICB9
CiB9CkBAIC0xMTM5LDcgKzExMzUsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpsb2FkRnJhbWVSZXF1
ZXN0KGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmIHJlcXVlc3QsIEV2ZW50KiBldmVudAogICAgICAg
ICB8fCBldmVudC0+dGFyZ2V0KCktPnRvTm9kZSgpLT5kb2N1bWVudCgpLnBhZ2VDYWNoZVN0YXRl
KCkgPT0gRG9jdW1lbnQ6Ok5vdEluUGFnZUNhY2hlKTsKIAogICAgIC8vIFByb3RlY3QgZnJhbWUg
ZnJvbSBnZXR0aW5nIGJsb3duIGF3YXkgaW5zaWRlIGRpc3BhdGNoQmVmb3JlTG9hZEV2ZW50IGlu
IGxvYWRXaXRoRG9jdW1lbnRMb2FkZXIuCi0gICAgUmVmPEZyYW1lPiBwcm90ZWN0KG1fZnJhbWUp
OworICAgIGF1dG8gcHJvdGVjdEZyYW1lID0gbWFrZVJlZihtX2ZyYW1lKTsKIAogICAgIFVSTCB1
cmwgPSByZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLnVybCgpOwogCkBAIC0xMTcyLDcgKzExNjgs
NyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpsb2FkRnJhbWVSZXF1ZXN0KGNvbnN0IEZyYW1lTG9hZFJl
cXVlc3QmIHJlcXVlc3QsIEV2ZW50KiBldmVudAogCiAgICAgLy8gRklYTUU6IEl0J3MgcG9zc2li
bGUgdGhpcyB0YXJnZXRGcmFtZSB3aWxsIG5vdCBiZSB0aGUgc2FtZSBmcmFtZSB0aGF0IHdhcyB0
YXJnZXRlZCBieSB0aGUgYWN0dWFsCiAgICAgLy8gbG9hZCBpZiBmcmFtZSBuYW1lcyBoYXZlIGNo
YW5nZWQuCi0gICAgRnJhbWUqIHNvdXJjZUZyYW1lID0gZm9ybVN0YXRlID8gZm9ybVN0YXRlLT5z
b3VyY2VEb2N1bWVudCgpLT5mcmFtZSgpIDogJm1fZnJhbWU7CisgICAgRnJhbWUqIHNvdXJjZUZy
YW1lID0gZm9ybVN0YXRlID8gZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLmZyYW1lKCkgOiAm
bV9mcmFtZTsKICAgICBpZiAoIXNvdXJjZUZyYW1lKQogICAgICAgICBzb3VyY2VGcmFtZSA9ICZt
X2ZyYW1lOwogICAgIEZyYW1lKiB0YXJnZXRGcmFtZSA9IHNvdXJjZUZyYW1lLT5sb2FkZXIoKS5m
aW5kRnJhbWVGb3JOYXZpZ2F0aW9uKHJlcXVlc3QuZnJhbWVOYW1lKCkpOwpAQCAtMTI1Niw3ICsx
MjUyLDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6bG9hZFVSTChjb25zdCBGcmFtZUxvYWRSZXF1ZXN0
JiBmcmFtZUxvYWRSZXF1ZXN0LCBjb25zdCBTdHJpbmcKICAgICAgICAgb2xkRG9jdW1lbnRMb2Fk
ZXItPnNldExhc3RDaGVja2VkUmVxdWVzdChSZXNvdXJjZVJlcXVlc3QoKSk7CiAgICAgICAgIHBv
bGljeUNoZWNrZXIoKS5zdG9wQ2hlY2soKTsKICAgICAgICAgcG9saWN5Q2hlY2tlcigpLnNldExv
YWRUeXBlKG5ld0xvYWRUeXBlKTsKLSAgICAgICAgcG9saWN5Q2hlY2tlcigpLmNoZWNrTmF2aWdh
dGlvblBvbGljeShyZXF1ZXN0LCBmYWxzZSAvKiBkaWRSZWNlaXZlUmVkaXJlY3RSZXNwb25zZSAq
Lywgb2xkRG9jdW1lbnRMb2FkZXIuZ2V0KCksIGZvcm1TdGF0ZSwgW3RoaXNdKGNvbnN0IFJlc291
cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiwgYm9vbCBzaG91bGRDb250aW51ZSkgewor
ICAgICAgICBwb2xpY3lDaGVja2VyKCkuY2hlY2tOYXZpZ2F0aW9uUG9saWN5KHJlcXVlc3QsIGZh
bHNlIC8qIGRpZFJlY2VpdmVSZWRpcmVjdFJlc3BvbnNlICovLCBvbGREb2N1bWVudExvYWRlci5n
ZXQoKSwgZm9ybVN0YXRlLCBbdGhpc10gKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwg
Rm9ybVN0YXRlKiwgYm9vbCBzaG91bGRDb250aW51ZSkgewogICAgICAgICAgICAgY29udGludWVG
cmFnbWVudFNjcm9sbEFmdGVyTmF2aWdhdGlvblBvbGljeShyZXF1ZXN0LCBzaG91bGRDb250aW51
ZSk7CiAgICAgICAgIH0pOwogICAgICAgICByZXR1cm47CkBAIC0xNDUyLDcgKzE0NDgsNyBAQCB2
b2lkIEZyYW1lTG9hZGVyOjpsb2FkV2l0aERvY3VtZW50TG9hZGVyKERvY3VtZW50TG9hZGVyKiBs
b2FkZXIsIEZyYW1lTG9hZFR5cGUgdAogICAgICAgICBvbGREb2N1bWVudExvYWRlci0+c2V0VHJp
Z2dlcmluZ0FjdGlvbihhY3Rpb24pOwogICAgICAgICBvbGREb2N1bWVudExvYWRlci0+c2V0TGFz
dENoZWNrZWRSZXF1ZXN0KFJlc291cmNlUmVxdWVzdCgpKTsKICAgICAgICAgcG9saWN5Q2hlY2tl
cigpLnN0b3BDaGVjaygpOwotICAgICAgICBwb2xpY3lDaGVja2VyKCkuY2hlY2tOYXZpZ2F0aW9u
UG9saWN5KGxvYWRlci0+cmVxdWVzdCgpLCBmYWxzZSAvKiBkaWRSZWNlaXZlUmVkaXJlY3RSZXNw
b25zZSAqLywgb2xkRG9jdW1lbnRMb2FkZXIuZ2V0KCksIGZvcm1TdGF0ZSwgW3RoaXNdKGNvbnN0
IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiwgYm9vbCBzaG91bGRDb250aW51
ZSkgeworICAgICAgICBwb2xpY3lDaGVja2VyKCkuY2hlY2tOYXZpZ2F0aW9uUG9saWN5KGxvYWRl
ci0+cmVxdWVzdCgpLCBmYWxzZSAvKiBkaWRSZWNlaXZlUmVkaXJlY3RSZXNwb25zZSAqLywgb2xk
RG9jdW1lbnRMb2FkZXIuZ2V0KCksIGZvcm1TdGF0ZSwgW3RoaXNdIChjb25zdCBSZXNvdXJjZVJl
cXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSosIGJvb2wgc2hvdWxkQ29udGludWUpIHsKICAgICAg
ICAgICAgIGNvbnRpbnVlRnJhZ21lbnRTY3JvbGxBZnRlck5hdmlnYXRpb25Qb2xpY3kocmVxdWVz
dCwgc2hvdWxkQ29udGludWUpOwogICAgICAgICB9KTsKICAgICAgICAgcmV0dXJuOwpAQCAtMTQ3
OSw3ICsxNDc1LDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6bG9hZFdpdGhEb2N1bWVudExvYWRlcihE
b2N1bWVudExvYWRlciogbG9hZGVyLCBGcmFtZUxvYWRUeXBlIHQKICAgICAgICAgfQogICAgIH0K
IAotICAgIHBvbGljeUNoZWNrZXIoKS5jaGVja05hdmlnYXRpb25Qb2xpY3kobG9hZGVyLT5yZXF1
ZXN0KCksIGZhbHNlIC8qIGRpZFJlY2VpdmVSZWRpcmVjdFJlc3BvbnNlICovLCBsb2FkZXIsIGZv
cm1TdGF0ZSwgW3RoaXMsIGFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTF0oY29uc3QgUmVzb3Vy
Y2VSZXF1ZXN0JiByZXF1ZXN0LCBGb3JtU3RhdGUqIGZvcm1TdGF0ZSwgYm9vbCBzaG91bGRDb250
aW51ZSkgeworICAgIHBvbGljeUNoZWNrZXIoKS5jaGVja05hdmlnYXRpb25Qb2xpY3kobG9hZGVy
LT5yZXF1ZXN0KCksIGZhbHNlIC8qIGRpZFJlY2VpdmVSZWRpcmVjdFJlc3BvbnNlICovLCBsb2Fk
ZXIsIGZvcm1TdGF0ZSwgW3RoaXMsIGFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTF0gKGNvbnN0
IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIGJvb2wgc2hv
dWxkQ29udGludWUpIHsKICAgICAgICAgY29udGludWVMb2FkQWZ0ZXJOYXZpZ2F0aW9uUG9saWN5
KHJlcXVlc3QsIGZvcm1TdGF0ZSwgc2hvdWxkQ29udGludWUsIGFsbG93TmF2aWdhdGlvblRvSW52
YWxpZFVSTCk7CiAgICAgfSk7CiB9CkBAIC0yNzExLDcgKzI3MDcsNyBAQCB2b2lkIEZyYW1lTG9h
ZGVyOjpsb2FkUG9zdFJlcXVlc3QoY29uc3QgRnJhbWVMb2FkUmVxdWVzdCYgcmVxdWVzdCwgY29u
c3QgU3RyaW5nJgogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAKLSAgICAgICAgcG9s
aWN5Q2hlY2tlcigpLmNoZWNrTmV3V2luZG93UG9saWN5KGFjdGlvbiwgd29ya2luZ1Jlc291cmNl
UmVxdWVzdCwgV1RGTW92ZShmb3JtU3RhdGUpLCBmcmFtZU5hbWUsIFt0aGlzLCBhbGxvd05hdmln
YXRpb25Ub0ludmFsaWRVUkwsIG9wZW5lclBvbGljeV0oY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiBy
ZXF1ZXN0LCBGb3JtU3RhdGUqIGZvcm1TdGF0ZSwgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNv
bnN0IE5hdmlnYXRpb25BY3Rpb24mIGFjdGlvbiwgYm9vbCBzaG91bGRDb250aW51ZSkgeworICAg
ICAgICBwb2xpY3lDaGVja2VyKCkuY2hlY2tOZXdXaW5kb3dQb2xpY3koYWN0aW9uLCB3b3JraW5n
UmVzb3VyY2VSZXF1ZXN0LCBXVEZNb3ZlKGZvcm1TdGF0ZSksIGZyYW1lTmFtZSwgW3RoaXMsIGFs
bG93TmF2aWdhdGlvblRvSW52YWxpZFVSTCwgb3BlbmVyUG9saWN5XSAoY29uc3QgUmVzb3VyY2VS
ZXF1ZXN0JiByZXF1ZXN0LCBGb3JtU3RhdGUqIGZvcm1TdGF0ZSwgY29uc3QgU3RyaW5nJiBmcmFt
ZU5hbWUsIGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIGFjdGlvbiwgYm9vbCBzaG91bGRDb250aW51
ZSkgewogICAgICAgICAgICAgY29udGludWVMb2FkQWZ0ZXJOZXdXaW5kb3dQb2xpY3kocmVxdWVz
dCwgZm9ybVN0YXRlLCBmcmFtZU5hbWUsIGFjdGlvbiwgc2hvdWxkQ29udGludWUsIGFsbG93TmF2
aWdhdGlvblRvSW52YWxpZFVSTCwgb3BlbmVyUG9saWN5KTsKICAgICAgICAgfSk7CiAgICAgICAg
IHJldHVybjsKQEAgLTI3NjksMTEgKzI3NjUsMTEgQEAgdW5zaWduZWQgbG9uZyBGcmFtZUxvYWRl
cjo6bG9hZFJlc291cmNlU3luY2hyb25vdXNseShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXUK
ICAgICBpZiAoZXJyb3IuaXNOdWxsKCkpIHsKICAgICAgICAgQVNTRVJUKCFuZXdSZXF1ZXN0Lmlz
TnVsbCgpKTsKIAotICAgICAgICBpZiAoIWRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KCktPm1heWJlTG9hZFN5bmNocm9ub3VzbHkobmV3UmVxdWVzdCwgZXJyb3IsIHJlc3Bv
bnNlLCBkYXRhKSkgeworICAgICAgICBpZiAoIWRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9u
Q2FjaGVIb3N0KCkubWF5YmVMb2FkU3luY2hyb25vdXNseShuZXdSZXF1ZXN0LCBlcnJvciwgcmVz
cG9uc2UsIGRhdGEpKSB7CiAgICAgICAgICAgICBWZWN0b3I8Y2hhcj4gYnVmZmVyOwogICAgICAg
ICAgICAgcGxhdGZvcm1TdHJhdGVnaWVzKCktPmxvYWRlclN0cmF0ZWd5KCktPmxvYWRSZXNvdXJj
ZVN5bmNocm9ub3VzbHkobmV0d29ya2luZ0NvbnRleHQoKSwgaWRlbnRpZmllciwgbmV3UmVxdWVz
dCwgc3RvcmVkQ3JlZGVudGlhbHMsIGNsaWVudENyZWRlbnRpYWxQb2xpY3ksIGVycm9yLCByZXNw
b25zZSwgYnVmZmVyKTsKICAgICAgICAgICAgIGRhdGEgPSBTaGFyZWRCdWZmZXI6OmFkb3B0VmVj
dG9yKGJ1ZmZlcik7Ci0gICAgICAgICAgICBkb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNh
Y2hlSG9zdCgpLT5tYXliZUxvYWRGYWxsYmFja1N5bmNocm9ub3VzbHkobmV3UmVxdWVzdCwgZXJy
b3IsIHJlc3BvbnNlLCBkYXRhKTsKKyAgICAgICAgICAgIGRvY3VtZW50TG9hZGVyKCktPmFwcGxp
Y2F0aW9uQ2FjaGVIb3N0KCkubWF5YmVMb2FkRmFsbGJhY2tTeW5jaHJvbm91c2x5KG5ld1JlcXVl
c3QsIGVycm9yLCByZXNwb25zZSwgZGF0YSk7CiAgICAgICAgICAgICBSZXNvdXJjZUxvYWRPYnNl
cnZlcjo6c2hhcmVkT2JzZXJ2ZXIoKS5sb2dTdWJyZXNvdXJjZUxvYWRpbmcoJm1fZnJhbWUsIG5l
d1JlcXVlc3QsIHJlc3BvbnNlKTsKICAgICAgICAgfQogICAgIH0KQEAgLTMxMDgsNyArMzEwNCw3
IEBAIHZvaWQgRnJhbWVMb2FkZXI6OmNvbnRpbnVlTG9hZEFmdGVyTmF2aWdhdGlvblBvbGljeShj
b25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAg
ICBtX2NsaWVudC5kaXNwYXRjaFdpbGxTdWJtaXRGb3JtKGZvcm1TdGF0ZSwgW3RoaXNdKFBvbGlj
eUFjdGlvbiBhY3Rpb24pIHsKKyAgICBtX2NsaWVudC5kaXNwYXRjaFdpbGxTdWJtaXRGb3JtKCpm
b3JtU3RhdGUsIFt0aGlzXSAoUG9saWN5QWN0aW9uIGFjdGlvbikgewogICAgICAgICBwb2xpY3lD
aGVja2VyKCkuY29udGludWVMb2FkQWZ0ZXJXaWxsU3VibWl0Rm9ybShhY3Rpb24pOwogICAgIH0p
OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50
LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaAppbmRleCBkMTNi
MGEwNzlkZTk5ZjM4NzcwNTUyNDc4YTdmYmIzMjA4OGQ5Y2Y1Li40YjU1N2ZjNzdkYTZiNjRmNzU0
MmIyYjQwMDExNDhiYWM0MjRiNmU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
RnJhbWVMb2FkZXJDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2Fk
ZXJDbGllbnQuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAx
NiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYt
MjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIw
MTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKQEAg
LTE3NywxNCArMTc3LDE0IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hTaG93
KCkgPSAwOwogCiAgICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yUmVzcG9u
c2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIEZyYW1l
UG9saWN5RnVuY3Rpb24pID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xp
Y3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJlc291
cmNlUmVxdWVzdCYsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwgY29uc3QgU3RyaW5nJiBmcmFtZU5h
bWUsIEZyYW1lUG9saWN5RnVuY3Rpb24pID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hE
ZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mLCBj
b25zdCBSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIEZyYW1lUG9saWN5
RnVuY3Rpb24pID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JO
ZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJlc291cmNlUmVx
dWVzdCYsIEZvcm1TdGF0ZSosIGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBGcmFtZVBvbGljeUZ1
bmN0aW9uKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2
aWdhdGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgUmVzb3VyY2VSZXF1
ZXN0JiwgRm9ybVN0YXRlKiwgRnJhbWVQb2xpY3lGdW5jdGlvbikgPSAwOwogICAgIHZpcnR1YWwg
dm9pZCBjYW5jZWxQb2xpY3lDaGVjaygpID0gMDsKIAogICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRj
aFVuYWJsZVRvSW1wbGVtZW50UG9saWN5KGNvbnN0IFJlc291cmNlRXJyb3ImKSA9IDA7CiAKLSAg
ICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFBhc3NSZWZQdHI8Rm9y
bVN0YXRlPikgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKFBh
c3NSZWZQdHI8Rm9ybVN0YXRlPiwgRnJhbWVQb2xpY3lGdW5jdGlvbikgPSAwOworICAgIHZpcnR1
YWwgdm9pZCBkaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoUmVmPEZvcm1TdGF0ZT4mJikgPSAw
OworICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKEZvcm1TdGF0ZSYsIEZy
YW1lUG9saWN5RnVuY3Rpb24pID0gMDsKIAogICAgIHZpcnR1YWwgdm9pZCByZXZlcnRUb1Byb3Zp
c2lvbmFsU3RhdGUoRG9jdW1lbnRMb2FkZXIqKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNldE1h
aW5Eb2N1bWVudEVycm9yKERvY3VtZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VFcnJvciYpID0g
MDsKQEAgLTI3MiwxMiArMjcyLDEyIEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIGJvb2wgY2FuQ2Fj
aGVQYWdlKCkgY29uc3QgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBjb252ZXJ0TWFpblJlc291cmNl
TG9hZFRvRG93bmxvYWQoRG9jdW1lbnRMb2FkZXIqLCBTZXNzaW9uSUQsIGNvbnN0IFJlc291cmNl
UmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSA9IDA7CiAKLSAgICB2aXJ0dWFsIFJl
ZlB0cjxGcmFtZT4gY3JlYXRlRnJhbWUoY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiBuYW1lLCBI
VE1MRnJhbWVPd25lckVsZW1lbnQqLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBib29sIGFsbG93
c1Njcm9sbGluZywgaW50IG1hcmdpbldpZHRoLCBpbnQgbWFyZ2luSGVpZ2h0KSA9IDA7Ci0gICAg
dmlydHVhbCBSZWZQdHI8V2lkZ2V0PiBjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYsIEhUTUxQ
bHVnSW5FbGVtZW50KiwgY29uc3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBW
ZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFN0cmluZyYsIGJvb2wgbG9hZE1hbnVhbGx5KSA9IDA7Cisg
ICAgdmlydHVhbCBSZWZQdHI8RnJhbWU+IGNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYsIGNvbnN0IFN0
cmluZyYgbmFtZSwgSFRNTEZyYW1lT3duZXJFbGVtZW50JiwgY29uc3QgU3RyaW5nJiByZWZlcnJl
ciwgYm9vbCBhbGxvd3NTY3JvbGxpbmcsIGludCBtYXJnaW5XaWR0aCwgaW50IG1hcmdpbkhlaWdo
dCkgPSAwOworICAgIHZpcnR1YWwgUmVmUHRyPFdpZGdldD4gY3JlYXRlUGx1Z2luKGNvbnN0IElu
dFNpemUmLCBIVE1MUGx1Z0luRWxlbWVudCYsIGNvbnN0IFVSTCYsIGNvbnN0IFZlY3RvcjxTdHJp
bmc+JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBTdHJpbmcmLCBib29sIGxvYWRNYW51
YWxseSkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCByZWNyZWF0ZVBsdWdpbihXaWRnZXQqKSA9IDA7
CiAgICAgdmlydHVhbCB2b2lkIHJlZGlyZWN0RGF0YVRvUGx1Z2luKFdpZGdldCogcGx1Z2luV2lk
Z2V0KSA9IDA7CiAKLSAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8V2lkZ2V0PiBjcmVhdGVKYXZhQXBw
bGV0V2lkZ2V0KGNvbnN0IEludFNpemUmLCBIVE1MQXBwbGV0RWxlbWVudCosIGNvbnN0IFVSTCYg
YmFzZVVSTCwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxT
dHJpbmc+JiBwYXJhbVZhbHVlcykgPSAwOworICAgIHZpcnR1YWwgUmVmUHRyPFdpZGdldD4gY3Jl
YXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXplJiwgSFRNTEFwcGxldEVsZW1lbnQmLCBj
b25zdCBVUkwmIGJhc2VVUkwsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25z
dCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpID0gMDsKIAogICAgIHZpcnR1YWwgdm9pZCBk
aXNwYXRjaERpZEZhaWxUb1N0YXJ0UGx1Z2luKGNvbnN0IFBsdWdpblZpZXdCYXNlKikgY29uc3Qg
eyB9CiAKQEAgLTI5NCw2ICsyOTQsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBOU0NhY2hlZFVS
TFJlc3BvbnNlKiB3aWxsQ2FjaGVSZXNwb25zZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25zZSopIGNvbnN0ID0gMDsKICAgICB2aXJ0
dWFsIE5TRGljdGlvbmFyeSAqZGF0YURldGVjdGlvbkNvbnRleHQoKSB7IHJldHVybiBudWxscHRy
OyB9CiAjZW5kaWYKKwogI2lmIFBMQVRGT1JNKFdJTikgJiYgVVNFKENGVVJMQ09OTkVDVElPTikK
ICAgICAvLyBGSVhNRTogV2luZG93cyBzaG91bGQgdXNlIHdpbGxDYWNoZVJlc3BvbnNlIC0gPGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NzI1Nz4uCiAgICAgdmlydHVh
bCBib29sIHNob3VsZENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBjb25zdCB1bnNpZ25lZCBjaGFy
KiBkYXRhLCB1bnNpZ25lZCBsb25nIGxvbmcgbGVuZ3RoKSA9IDA7CkBAIC0zMDksMTAgKzMxMCwx
MCBAQCBwdWJsaWM6CiAgICAgLy8gQ2xpZW50cyB0aGF0IGdlbmVyYWxseSBkaXNhbGxvdyB1bml2
ZXJzYWwgYWNjZXNzIGNhbiBtYWtlIGV4Y2VwdGlvbnMgZm9yIHBhcnRpY3VsYXIgVVJMcy4KICAg
ICB2aXJ0dWFsIGJvb2wgc2hvdWxkRm9yY2VVbml2ZXJzYWxBY2Nlc3NGcm9tTG9jYWxVUkwoY29u
c3QgVVJMJikgeyByZXR1cm4gZmFsc2U7IH0KIAotICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxGcmFt
ZU5ldHdvcmtpbmdDb250ZXh0PiBjcmVhdGVOZXR3b3JraW5nQ29udGV4dCgpID0gMDsKKyAgICB2
aXJ0dWFsIFJlZjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBjcmVhdGVOZXR3b3JraW5nQ29udGV4
dCgpID0gMDsKIAogI2lmIEVOQUJMRShSRVFVRVNUX0FVVE9DT01QTEVURSkKLSAgICB2aXJ0dWFs
IHZvaWQgZGlkUmVxdWVzdEF1dG9jb21wbGV0ZShQYXNzUmVmUHRyPEZvcm1TdGF0ZT4pID0gMDsK
KyAgICB2aXJ0dWFsIHZvaWQgZGlkUmVxdWVzdEF1dG9jb21wbGV0ZShSZWY8Rm9ybVN0YXRlPiYm
KSA9IDA7CiAjZW5kaWYKIAogICAgIHZpcnR1YWwgYm9vbCBzaG91bGRQYWludEJyb2tlbkltYWdl
KGNvbnN0IFVSTCYpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9IaXN0b3J5Q29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvSGlzdG9yeUNvbnRyb2xsZXIuY3BwCmluZGV4IDI5NWI5NGExYTU1NWIyYTI4ZTc1MDM2YzZi
MWQwMjU3MDcyOTk3Y2MuLjI2YTRiMzM5NmQxZTg3YTAwNjNlMGI0YzBjYTA2NjkyMjA0YTkzNzAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9IaXN0b3J5Q29udHJvbGxlci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmNwcApAQCAtODQ2
LDcgKzg0Niw3IEBAIHZvaWQgSGlzdG9yeUNvbnRyb2xsZXI6OnVwZGF0ZUN1cnJlbnRJdGVtKCkK
ICAgICB9CiB9CiAKLXZvaWQgSGlzdG9yeUNvbnRyb2xsZXI6OnB1c2hTdGF0ZShQYXNzUmVmUHRy
PFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gc3RhdGVPYmplY3QsIGNvbnN0IFN0cmluZyYgdGl0bGUs
IGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nKQordm9pZCBIaXN0b3J5Q29udHJvbGxlcjo6cHVzaFN0
YXRlKFJlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+JiYgc3RhdGVPYmplY3QsIGNvbnN0IFN0
cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nKQogewogICAgIGlmICghbV9jdXJy
ZW50SXRlbSkKICAgICAgICAgcmV0dXJuOwpAQCAtODYwLDcgKzg2MCw3IEBAIHZvaWQgSGlzdG9y
eUNvbnRyb2xsZXI6OnB1c2hTdGF0ZShQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4g
c3RhdGVPYmplY3QsCiAgICAgLy8gT3ZlcnJpZGUgZGF0YSBpbiB0aGUgY3VycmVudCBpdGVtIChj
cmVhdGVkIGJ5IGNyZWF0ZUl0ZW1UcmVlKSB0byByZWZsZWN0CiAgICAgLy8gdGhlIHB1c2hTdGF0
ZSgpIGFyZ3VtZW50cy4KICAgICBtX2N1cnJlbnRJdGVtLT5zZXRUaXRsZSh0aXRsZSk7Ci0gICAg
bV9jdXJyZW50SXRlbS0+c2V0U3RhdGVPYmplY3Qoc3RhdGVPYmplY3QpOworICAgIG1fY3VycmVu
dEl0ZW0tPnNldFN0YXRlT2JqZWN0KFdURk1vdmUoc3RhdGVPYmplY3QpKTsKICAgICBtX2N1cnJl
bnRJdGVtLT5zZXRVUkxTdHJpbmcodXJsU3RyaW5nKTsKIAogICAgIExPRyhIaXN0b3J5LCAiSGlz
dG9yeUNvbnRyb2xsZXIgJXAgcHVzaFN0YXRlOiBBZGRpbmcgdG9wIGl0ZW0gJXAsIHNldHRpbmcg
dXJsIG9mIGN1cnJlbnQgaXRlbSAlcCB0byAlcyIsIHRoaXMsIHRvcEl0ZW0ucHRyKCksIG1fY3Vy
cmVudEl0ZW0uZ2V0KCksIHVybFN0cmluZy5hc2NpaSgpLmRhdGEoKSk7CkBAIC04NzQsNyArODc0
LDcgQEAgdm9pZCBIaXN0b3J5Q29udHJvbGxlcjo6cHVzaFN0YXRlKFBhc3NSZWZQdHI8U2VyaWFs
aXplZFNjcmlwdFZhbHVlPiBzdGF0ZU9iamVjdCwKICAgICBtX2ZyYW1lLmxvYWRlcigpLmNsaWVu
dCgpLnVwZGF0ZUdsb2JhbEhpc3RvcnkoKTsKIH0KIAotdm9pZCBIaXN0b3J5Q29udHJvbGxlcjo6
cmVwbGFjZVN0YXRlKFBhc3NSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiBzdGF0ZU9iamVj
dCwgY29uc3QgU3RyaW5nJiB0aXRsZSwgY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcpCit2b2lkIEhp
c3RvcnlDb250cm9sbGVyOjpyZXBsYWNlU3RhdGUoUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1
ZT4mJiBzdGF0ZU9iamVjdCwgY29uc3QgU3RyaW5nJiB0aXRsZSwgY29uc3QgU3RyaW5nJiB1cmxT
dHJpbmcpCiB7CiAgICAgaWYgKCFtX2N1cnJlbnRJdGVtKQogICAgICAgICByZXR1cm47CkBAIC04
ODQsNyArODg0LDcgQEAgdm9pZCBIaXN0b3J5Q29udHJvbGxlcjo6cmVwbGFjZVN0YXRlKFBhc3NS
ZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiBzdGF0ZU9iamUKICAgICBpZiAoIXVybFN0cmlu
Zy5pc0VtcHR5KCkpCiAgICAgICAgIG1fY3VycmVudEl0ZW0tPnNldFVSTFN0cmluZyh1cmxTdHJp
bmcpOwogICAgIG1fY3VycmVudEl0ZW0tPnNldFRpdGxlKHRpdGxlKTsKLSAgICBtX2N1cnJlbnRJ
dGVtLT5zZXRTdGF0ZU9iamVjdChzdGF0ZU9iamVjdCk7CisgICAgbV9jdXJyZW50SXRlbS0+c2V0
U3RhdGVPYmplY3QoV1RGTW92ZShzdGF0ZU9iamVjdCkpOwogICAgIG1fY3VycmVudEl0ZW0tPnNl
dEZvcm1EYXRhKG51bGxwdHIpOwogICAgIG1fY3VycmVudEl0ZW0tPnNldEZvcm1Db250ZW50VHlw
ZShTdHJpbmcoKSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9IaXN0b3J5
Q29udHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmgK
aW5kZXggMTBmZjFmMTRhMzNlZjc2YjkwYmZkMTNkNDY1MjhjNzg3NWY1ZWJkNS4uM2QyNWUyODli
MjJmYjFmOTk2M2Y2ZGZiMzM0Nzg5NTgxZDA5MjcwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0hpc3RvcnlDb250cm9sbGVyLmgKQEAgLTg0LDggKzg0LDggQEAgcHVibGljOgogICAgIEhpc3Rv
cnlJdGVtKiBwcm92aXNpb25hbEl0ZW0oKSBjb25zdCB7IHJldHVybiBtX3Byb3Zpc2lvbmFsSXRl
bS5nZXQoKTsgfQogICAgIHZvaWQgc2V0UHJvdmlzaW9uYWxJdGVtKEhpc3RvcnlJdGVtKik7CiAK
LSAgICB2b2lkIHB1c2hTdGF0ZShQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4sIGNv
bnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgdXJsKTsKLSAgICB2b2lkIHJlcGxhY2VT
dGF0ZShQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4sIGNvbnN0IFN0cmluZyYgdGl0
bGUsIGNvbnN0IFN0cmluZyYgdXJsKTsKKyAgICB2b2lkIHB1c2hTdGF0ZShSZWZQdHI8U2VyaWFs
aXplZFNjcmlwdFZhbHVlPiYmLCBjb25zdCBTdHJpbmcmIHRpdGxlLCBjb25zdCBTdHJpbmcmIHVy
bCk7CisgICAgdm9pZCByZXBsYWNlU3RhdGUoUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4m
JiwgY29uc3QgU3RyaW5nJiB0aXRsZSwgY29uc3QgU3RyaW5nJiB1cmwpOwogCiAgICAgdm9pZCBz
ZXREZWZlcnNMb2FkaW5nKGJvb2wpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvSW1hZ2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ltYWdlTG9hZGVyLmNw
cAppbmRleCBhNTNhZjExYmI5ZjkzYmEyYTgxMjNkYjFhODEwZjM4ODc5OTZmZGM1Li4xYjJmYzFi
YjQ5N2M3ZDQ5MTlkMTljNjM5YWMwZWY3MjhlY2UwNzkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvSW1hZ2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9J
bWFnZUxvYWRlci5jcHAKQEAgLTE3OCw3ICsxNzgsNyBAQCB2b2lkIEltYWdlTG9hZGVyOjp1cGRh
dGVGcm9tRWxlbWVudCgpCiAgICAgICAgIG9wdGlvbnMuc2FtZU9yaWdpbkRhdGFVUkxGbGFnID0g
U2FtZU9yaWdpbkRhdGFVUkxGbGFnOjpTZXQ7CiAKICAgICAgICAgQ2FjaGVkUmVzb3VyY2VSZXF1
ZXN0IHJlcXVlc3QoUmVzb3VyY2VSZXF1ZXN0KGRvY3VtZW50LmNvbXBsZXRlVVJMKHNvdXJjZVVS
SShhdHRyKSkpLCBvcHRpb25zKTsKLSAgICAgICAgcmVxdWVzdC5zZXRJbml0aWF0b3IoJmVsZW1l
bnQoKSk7CisgICAgICAgIHJlcXVlc3Quc2V0SW5pdGlhdG9yKGVsZW1lbnQoKSk7CiAKICAgICAg
ICAgcmVxdWVzdC5zZXRBc1BvdGVudGlhbGx5Q3Jvc3NPcmlnaW4oZWxlbWVudCgpLmF0dHJpYnV0
ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24oSFRNTE5hbWVzOjpjcm9zc29yaWdpbkF0dHIpLCBkb2N1
bWVudCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uU2No
ZWR1bGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmNw
cAppbmRleCA3ZWZmYWQ3ZmExYzVhYTM0NDZlYWMwMDI5NjE4ZjEyYmI1NzViNGU1Li41Njk3NzUz
MmI4YjEyYmUwOGE2MTljZDNmYjFjMTg3NWQzYjc2ZWIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL05hdmlnYXRpb25TY2hlZHVsZXIuY3BwCkBAIC02OCw2ICs2OCwxNiBAQCBwdWJsaWM6
CiAgICAgICAgICwgbV91c2VyR2VzdHVyZVRvRm9yd2FyZChVc2VyR2VzdHVyZUluZGljYXRvcjo6
Y3VycmVudFVzZXJHZXN0dXJlKCkpCiAgICAgewogICAgIH0KKyAgICBTY2hlZHVsZWROYXZpZ2F0
aW9uKGRvdWJsZSBkZWxheSwgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnksIExvY2tCYWNrRm9yd2Fy
ZExpc3QgbG9ja0JhY2tGb3J3YXJkTGlzdCwgYm9vbCB3YXNEdXJpbmdMb2FkLCBib29sIGlzTG9j
YXRpb25DaGFuZ2UsIFNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgZXh0ZXJuYWxVUkxQb2xp
Y3kpCisgICAgICAgIDogbV9kZWxheShkZWxheSkKKyAgICAgICAgLCBtX2xvY2tIaXN0b3J5KGxv
Y2tIaXN0b3J5KQorICAgICAgICAsIG1fbG9ja0JhY2tGb3J3YXJkTGlzdChsb2NrQmFja0Zvcndh
cmRMaXN0KQorICAgICAgICAsIG1fd2FzRHVyaW5nTG9hZCh3YXNEdXJpbmdMb2FkKQorICAgICAg
ICAsIG1faXNMb2NhdGlvbkNoYW5nZShpc0xvY2F0aW9uQ2hhbmdlKQorICAgICAgICAsIG1fdXNl
ckdlc3R1cmVUb0ZvcndhcmQoVXNlckdlc3R1cmVJbmRpY2F0b3I6OmN1cnJlbnRVc2VyR2VzdHVy
ZSgpKQorICAgICAgICAsIG1fc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeShleHRlcm5hbFVS
TFBvbGljeSkKKyAgICB7CisgICAgfQogICAgIHZpcnR1YWwgflNjaGVkdWxlZE5hdmlnYXRpb24o
KSB7IH0KIAogICAgIHZpcnR1YWwgdm9pZCBmaXJlKEZyYW1lJikgPSAwOwpAQCAtODEsMTIgKzkx
LDExIEBAIHB1YmxpYzoKICAgICBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExp
c3QoKSBjb25zdCB7IHJldHVybiBtX2xvY2tCYWNrRm9yd2FyZExpc3Q7IH0KICAgICBib29sIHdh
c0R1cmluZ0xvYWQoKSBjb25zdCB7IHJldHVybiBtX3dhc0R1cmluZ0xvYWQ7IH0KICAgICBib29s
IGlzTG9jYXRpb25DaGFuZ2UoKSBjb25zdCB7IHJldHVybiBtX2lzTG9jYXRpb25DaGFuZ2U7IH0K
LSAgICBSZWZQdHI8VXNlckdlc3R1cmVUb2tlbj4gdXNlckdlc3R1cmVUb0ZvcndhcmQoKSBjb25z
dCB7IHJldHVybiBtX3VzZXJHZXN0dXJlVG9Gb3J3YXJkOyB9CisgICAgVXNlckdlc3R1cmVUb2tl
biogdXNlckdlc3R1cmVUb0ZvcndhcmQoKSBjb25zdCB7IHJldHVybiBtX3VzZXJHZXN0dXJlVG9G
b3J3YXJkLmdldCgpOyB9CiAKIHByb3RlY3RlZDoKICAgICB2b2lkIGNsZWFyVXNlckdlc3R1cmUo
KSB7IG1fdXNlckdlc3R1cmVUb0ZvcndhcmQgPSBudWxscHRyOyB9Ci0KLSAgICBTaG91bGRPcGVu
RXh0ZXJuYWxVUkxzUG9saWN5IG1fc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSB7IFNob3Vs
ZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3k6OlNob3VsZE5vdEFsbG93IH07CisgICAgU2hvdWxkT3Bl
bkV4dGVybmFsVVJMc1BvbGljeSBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzKCkgY29uc3QgeyByZXR1
cm4gbV9zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5OyB9CiAKIHByaXZhdGU6CiAgICAgZG91
YmxlIG1fZGVsYXk7CkBAIC05NSwxOSArMTA0LDE3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX3dh
c0R1cmluZ0xvYWQ7CiAgICAgYm9vbCBtX2lzTG9jYXRpb25DaGFuZ2U7CiAgICAgUmVmUHRyPFVz
ZXJHZXN0dXJlVG9rZW4+IG1fdXNlckdlc3R1cmVUb0ZvcndhcmQ7CisgICAgU2hvdWxkT3BlbkV4
dGVybmFsVVJMc1BvbGljeSBtX3Nob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgeyBTaG91bGRP
cGVuRXh0ZXJuYWxVUkxzUG9saWN5OjpTaG91bGROb3RBbGxvdyB9OwogfTsKIAogY2xhc3MgU2No
ZWR1bGVkVVJMTmF2aWdhdGlvbiA6IHB1YmxpYyBTY2hlZHVsZWROYXZpZ2F0aW9uIHsKIHByb3Rl
Y3RlZDoKLSAgICBTY2hlZHVsZWRVUkxOYXZpZ2F0aW9uKERvY3VtZW50KiBpbml0aWF0aW5nRG9j
dW1lbnQsIGRvdWJsZSBkZWxheSwgU2VjdXJpdHlPcmlnaW4qIHNlY3VyaXR5T3JpZ2luLCBjb25z
dCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgTG9ja0hpc3RvcnkgbG9ja0hpc3Rv
cnksIExvY2tCYWNrRm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3YXJkTGlzdCwgYm9vbCBkdXJpbmdM
b2FkLCBib29sIGlzTG9jYXRpb25DaGFuZ2UpCi0gICAgICAgIDogU2NoZWR1bGVkTmF2aWdhdGlv
bihkZWxheSwgbG9ja0hpc3RvcnksIGxvY2tCYWNrRm9yd2FyZExpc3QsIGR1cmluZ0xvYWQsIGlz
TG9jYXRpb25DaGFuZ2UpCisgICAgU2NoZWR1bGVkVVJMTmF2aWdhdGlvbihEb2N1bWVudCYgaW5p
dGlhdGluZ0RvY3VtZW50LCBkb3VibGUgZGVsYXksIFNlY3VyaXR5T3JpZ2luKiBzZWN1cml0eU9y
aWdpbiwgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIExvY2tIaXN0b3J5
IGxvY2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QsIGJv
b2wgZHVyaW5nTG9hZCwgYm9vbCBpc0xvY2F0aW9uQ2hhbmdlKQorICAgICAgICA6IFNjaGVkdWxl
ZE5hdmlnYXRpb24oZGVsYXksIGxvY2tIaXN0b3J5LCBsb2NrQmFja0ZvcndhcmRMaXN0LCBkdXJp
bmdMb2FkLCBpc0xvY2F0aW9uQ2hhbmdlLCBpbml0aWF0aW5nRG9jdW1lbnQuc2hvdWxkT3BlbkV4
dGVybmFsVVJMc1BvbGljeVRvUHJvcGFnYXRlKCkpCiAgICAgICAgICwgbV9zZWN1cml0eU9yaWdp
bihzZWN1cml0eU9yaWdpbikKICAgICAgICAgLCBtX3VybCh1cmwpCiAgICAgICAgICwgbV9yZWZl
cnJlcihyZWZlcnJlcikKLSAgICAgICAgLCBtX2hhdmVUb2xkQ2xpZW50KGZhbHNlKQogICAgIHsK
LSAgICAgICAgaWYgKGluaXRpYXRpbmdEb2N1bWVudCkKLSAgICAgICAgICAgIG1fc2hvdWxkT3Bl
bkV4dGVybmFsVVJMc1BvbGljeSA9IGluaXRpYXRpbmdEb2N1bWVudC0+c2hvdWxkT3BlbkV4dGVy
bmFsVVJMc1BvbGljeVRvUHJvcGFnYXRlKCk7CiAgICAgfQogCiAgICAgdm9pZCBmaXJlKEZyYW1l
JiBmcmFtZSkgb3ZlcnJpZGUKQEAgLTExNSw3ICsxMjIsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgICAg
IFVzZXJHZXN0dXJlSW5kaWNhdG9yIGdlc3R1cmVJbmRpY2F0b3IodXNlckdlc3R1cmVUb0Zvcndh
cmQoKSk7CiAKICAgICAgICAgUmVzb3VyY2VSZXF1ZXN0IHJlc291cmNlUmVxdWVzdChtX3VybCwg
bV9yZWZlcnJlciwgVXNlUHJvdG9jb2xDYWNoZVBvbGljeSk7Ci0gICAgICAgIEZyYW1lTG9hZFJl
cXVlc3QgZnJhbWVSZXF1ZXN0KG1fc2VjdXJpdHlPcmlnaW4uZ2V0KCksIHJlc291cmNlUmVxdWVz
dCwgIl9zZWxmIiwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNl
bmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpZZXMsIE5ld0ZyYW1lT3Bl
bmVyUG9saWN5OjpBbGxvdywgbV9zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5KTsKKyAgICAg
ICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFtZVJlcXVlc3QobV9zZWN1cml0eU9yaWdpbi5nZXQoKSwg
cmVzb3VyY2VSZXF1ZXN0LCAiX3NlbGYiLCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRM
aXN0KCksIE1heWJlU2VuZFJlZmVycmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkw6Olll
cywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzKCkp
OwogCiAgICAgICAgIGZyYW1lLmxvYWRlcigpLmNoYW5nZUxvY2F0aW9uKGZyYW1lUmVxdWVzdCk7
CiAgICAgfQpAQCAtMTUyLDEyICsxNTksMTIgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8U2VjdXJp
dHlPcmlnaW4+IG1fc2VjdXJpdHlPcmlnaW47CiAgICAgVVJMIG1fdXJsOwogICAgIFN0cmluZyBt
X3JlZmVycmVyOwotICAgIGJvb2wgbV9oYXZlVG9sZENsaWVudDsKKyAgICBib29sIG1faGF2ZVRv
bGRDbGllbnQgeyBmYWxzZSB9OwogfTsKIAogY2xhc3MgU2NoZWR1bGVkUmVkaXJlY3QgOiBwdWJs
aWMgU2NoZWR1bGVkVVJMTmF2aWdhdGlvbiB7CiBwdWJsaWM6Ci0gICAgU2NoZWR1bGVkUmVkaXJl
Y3QoRG9jdW1lbnQqIGluaXRpYXRpbmdEb2N1bWVudCwgZG91YmxlIGRlbGF5LCBTZWN1cml0eU9y
aWdpbiogc2VjdXJpdHlPcmlnaW4sIGNvbnN0IFVSTCYgdXJsLCBMb2NrSGlzdG9yeSBsb2NrSGlz
dG9yeSwgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0KQorICAgIFNjaGVk
dWxlZFJlZGlyZWN0KERvY3VtZW50JiBpbml0aWF0aW5nRG9jdW1lbnQsIGRvdWJsZSBkZWxheSwg
U2VjdXJpdHlPcmlnaW4qIHNlY3VyaXR5T3JpZ2luLCBjb25zdCBVUkwmIHVybCwgTG9ja0hpc3Rv
cnkgbG9ja0hpc3RvcnksIExvY2tCYWNrRm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3YXJkTGlzdCkK
ICAgICAgICAgOiBTY2hlZHVsZWRVUkxOYXZpZ2F0aW9uKGluaXRpYXRpbmdEb2N1bWVudCwgZGVs
YXksIHNlY3VyaXR5T3JpZ2luLCB1cmwsIFN0cmluZygpLCBsb2NrSGlzdG9yeSwgbG9ja0JhY2tG
b3J3YXJkTGlzdCwgZmFsc2UsIGZhbHNlKQogICAgIHsKICAgICAgICAgY2xlYXJVc2VyR2VzdHVy
ZSgpOwpAQCAtMTczLDcgKzE4MCw3IEBAIHB1YmxpYzoKICAgICAgICAgVXNlckdlc3R1cmVJbmRp
Y2F0b3IgZ2VzdHVyZUluZGljYXRvcih1c2VyR2VzdHVyZVRvRm9yd2FyZCgpKTsKICAgICAgICAg
Ym9vbCByZWZyZXNoID0gZXF1YWxJZ25vcmluZ0ZyYWdtZW50SWRlbnRpZmllcihmcmFtZS5kb2N1
bWVudCgpLT51cmwoKSwgdXJsKCkpOwogICAgICAgICBSZXNvdXJjZVJlcXVlc3QgcmVzb3VyY2VS
ZXF1ZXN0KHVybCgpLCByZWZlcnJlcigpLCByZWZyZXNoID8gUmVsb2FkSWdub3JpbmdDYWNoZURh
dGEgOiBVc2VQcm90b2NvbENhY2hlUG9saWN5KTsKLSAgICAgICAgRnJhbWVMb2FkUmVxdWVzdCBm
cmFtZVJlcXVlc3Qoc2VjdXJpdHlPcmlnaW4oKSwgcmVzb3VyY2VSZXF1ZXN0LCAiX3NlbGYiLCBs
b2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVycmVyLCBB
bGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkw6Ok5vLCBOZXdGcmFtZU9wZW5lclBvbGljeTo6QWxs
b3csIG1fc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSk7CisgICAgICAgIEZyYW1lTG9hZFJl
cXVlc3QgZnJhbWVSZXF1ZXN0KHNlY3VyaXR5T3JpZ2luKCksIHJlc291cmNlUmVxdWVzdCwgIl9z
ZWxmIiwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZl
cnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpObywgTmV3RnJhbWVPcGVuZXJQb2xp
Y3k6OkFsbG93LCBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzKCkpOwogCiAgICAgICAgIGZyYW1lLmxv
YWRlcigpLmNoYW5nZUxvY2F0aW9uKGZyYW1lUmVxdWVzdCk7CiAgICAgfQpAQCAtMTgxLDcgKzE4
OCw3IEBAIHB1YmxpYzoKIAogY2xhc3MgU2NoZWR1bGVkTG9jYXRpb25DaGFuZ2UgOiBwdWJsaWMg
U2NoZWR1bGVkVVJMTmF2aWdhdGlvbiB7CiBwdWJsaWM6Ci0gICAgU2NoZWR1bGVkTG9jYXRpb25D
aGFuZ2UoRG9jdW1lbnQqIGluaXRpYXRpbmdEb2N1bWVudCwgU2VjdXJpdHlPcmlnaW4qIHNlY3Vy
aXR5T3JpZ2luLCBjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgTG9ja0hp
c3RvcnkgbG9ja0hpc3RvcnksIExvY2tCYWNrRm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3YXJkTGlz
dCwgYm9vbCBkdXJpbmdMb2FkKQorICAgIFNjaGVkdWxlZExvY2F0aW9uQ2hhbmdlKERvY3VtZW50
JiBpbml0aWF0aW5nRG9jdW1lbnQsIFNlY3VyaXR5T3JpZ2luKiBzZWN1cml0eU9yaWdpbiwgY29u
c3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIExvY2tIaXN0b3J5IGxvY2tIaXN0
b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QsIGJvb2wgZHVyaW5n
TG9hZCkKICAgICAgICAgOiBTY2hlZHVsZWRVUkxOYXZpZ2F0aW9uKGluaXRpYXRpbmdEb2N1bWVu
dCwgMC4wLCBzZWN1cml0eU9yaWdpbiwgdXJsLCByZWZlcnJlciwgbG9ja0hpc3RvcnksIGxvY2tC
YWNrRm9yd2FyZExpc3QsIGR1cmluZ0xvYWQsIHRydWUpIHsgfQogCiAgICAgdm9pZCBmaXJlKEZy
YW1lJiBmcmFtZSkgb3ZlcnJpZGUKQEAgLTE4OSwxNCArMTk2LDE0IEBAIHB1YmxpYzoKICAgICAg
ICAgVXNlckdlc3R1cmVJbmRpY2F0b3IgZ2VzdHVyZUluZGljYXRvcih1c2VyR2VzdHVyZVRvRm9y
d2FyZCgpKTsKIAogICAgICAgICBSZXNvdXJjZVJlcXVlc3QgcmVzb3VyY2VSZXF1ZXN0KHVybCgp
LCByZWZlcnJlcigpLCBVc2VQcm90b2NvbENhY2hlUG9saWN5KTsKLSAgICAgICAgRnJhbWVMb2Fk
UmVxdWVzdCBmcmFtZVJlcXVlc3Qoc2VjdXJpdHlPcmlnaW4oKSwgcmVzb3VyY2VSZXF1ZXN0LCAi
X3NlbGYiLCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0KCksIE1heWJlU2VuZFJl
ZmVycmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkw6Ok5vLCBOZXdGcmFtZU9wZW5lclBv
bGljeTo6QWxsb3csIG1fc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSk7CisgICAgICAgIEZy
YW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KHNlY3VyaXR5T3JpZ2luKCksIHJlc291cmNlUmVx
dWVzdCwgIl9zZWxmIiwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXli
ZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpObywgTmV3RnJhbWVP
cGVuZXJQb2xpY3k6OkFsbG93LCBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzKCkpOwogICAgICAgICBm
cmFtZS5sb2FkZXIoKS5jaGFuZ2VMb2NhdGlvbihmcmFtZVJlcXVlc3QpOwogICAgIH0KIH07CiAK
IGNsYXNzIFNjaGVkdWxlZFJlZnJlc2ggOiBwdWJsaWMgU2NoZWR1bGVkVVJMTmF2aWdhdGlvbiB7
CiBwdWJsaWM6Ci0gICAgU2NoZWR1bGVkUmVmcmVzaChEb2N1bWVudCogaW5pdGlhdGluZ0RvY3Vt
ZW50LCBTZWN1cml0eU9yaWdpbiogc2VjdXJpdHlPcmlnaW4sIGNvbnN0IFVSTCYgdXJsLCBjb25z
dCBTdHJpbmcmIHJlZmVycmVyKQorICAgIFNjaGVkdWxlZFJlZnJlc2goRG9jdW1lbnQmIGluaXRp
YXRpbmdEb2N1bWVudCwgU2VjdXJpdHlPcmlnaW4qIHNlY3VyaXR5T3JpZ2luLCBjb25zdCBVUkwm
IHVybCwgY29uc3QgU3RyaW5nJiByZWZlcnJlcikKICAgICAgICAgOiBTY2hlZHVsZWRVUkxOYXZp
Z2F0aW9uKGluaXRpYXRpbmdEb2N1bWVudCwgMC4wLCBzZWN1cml0eU9yaWdpbiwgdXJsLCByZWZl
cnJlciwgTG9ja0hpc3Rvcnk6OlllcywgTG9ja0JhY2tGb3J3YXJkTGlzdDo6WWVzLCBmYWxzZSwg
dHJ1ZSkKICAgICB7CiAgICAgfQpAQCAtMjA2LDcgKzIxMyw3IEBAIHB1YmxpYzoKICAgICAgICAg
VXNlckdlc3R1cmVJbmRpY2F0b3IgZ2VzdHVyZUluZGljYXRvcih1c2VyR2VzdHVyZVRvRm9yd2Fy
ZCgpKTsKIAogICAgICAgICBSZXNvdXJjZVJlcXVlc3QgcmVzb3VyY2VSZXF1ZXN0KHVybCgpLCBy
ZWZlcnJlcigpLCBSZWxvYWRJZ25vcmluZ0NhY2hlRGF0YSk7Ci0gICAgICAgIEZyYW1lTG9hZFJl
cXVlc3QgZnJhbWVSZXF1ZXN0KHNlY3VyaXR5T3JpZ2luKCksIHJlc291cmNlUmVxdWVzdCwgIl9z
ZWxmIiwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZl
cnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpZZXMsIE5ld0ZyYW1lT3BlbmVyUG9s
aWN5OjpBbGxvdywgbV9zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5KTsKKyAgICAgICAgRnJh
bWVMb2FkUmVxdWVzdCBmcmFtZVJlcXVlc3Qoc2VjdXJpdHlPcmlnaW4oKSwgcmVzb3VyY2VSZXF1
ZXN0LCAiX3NlbGYiLCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0KCksIE1heWJl
U2VuZFJlZmVycmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkw6OlllcywgTmV3RnJhbWVP
cGVuZXJQb2xpY3k6OkFsbG93LCBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzKCkpOwogICAgICAgICBm
cmFtZS5sb2FkZXIoKS5jaGFuZ2VMb2NhdGlvbihmcmFtZVJlcXVlc3QpOwogICAgIH0KIH07CkBA
IC0yMjYsNyArMjMzLDcgQEAgcHVibGljOgogICAgICAgICBpZiAoIW1faGlzdG9yeVN0ZXBzKSB7
CiAgICAgICAgICAgICAvLyBTcGVjaWFsIGNhc2UgZm9yIGdvKDApIGZyb20gYSBmcmFtZSAtPiBy
ZWxvYWQgb25seSB0aGUgZnJhbWUKICAgICAgICAgICAgIC8vIFRvIGZvbGxvdyBGaXJlZm94IGFu
ZCBJRSdzIGJlaGF2aW9yLCBoaXN0b3J5IHJlbG9hZCBjYW4gb25seSBuYXZpZ2F0ZSB0aGUgc2Vs
ZiBmcmFtZS4KLSAgICAgICAgICAgIGZyYW1lLmxvYWRlcigpLnVybFNlbGVjdGVkKGZyYW1lLmRv
Y3VtZW50KCktPnVybCgpLCAiX3NlbGYiLCAwLCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFja0Zvcndh
cmRMaXN0KCksIE1heWJlU2VuZFJlZmVycmVyLCBtX3Nob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xp
Y3kpOworICAgICAgICAgICAgZnJhbWUubG9hZGVyKCkudXJsU2VsZWN0ZWQoZnJhbWUuZG9jdW1l
bnQoKS0+dXJsKCksICJfc2VsZiIsIDAsIGxvY2tIaXN0b3J5KCksIGxvY2tCYWNrRm9yd2FyZExp
c3QoKSwgTWF5YmVTZW5kUmVmZXJyZXIsIHNob3VsZE9wZW5FeHRlcm5hbFVSTHMoKSk7CiAgICAg
ICAgICAgICByZXR1cm47CiAgICAgICAgIH0KICAgICAgICAgCkBAIC0yNDEsMTUgKzI0OCwxMCBA
QCBwcml2YXRlOgogCiBjbGFzcyBTY2hlZHVsZWRGb3JtU3VibWlzc2lvbiA6IHB1YmxpYyBTY2hl
ZHVsZWROYXZpZ2F0aW9uIHsKIHB1YmxpYzoKLSAgICBTY2hlZHVsZWRGb3JtU3VibWlzc2lvbihQ
YXNzUmVmUHRyPEZvcm1TdWJtaXNzaW9uPiBzdWJtaXNzaW9uLCBMb2NrQmFja0ZvcndhcmRMaXN0
IGxvY2tCYWNrRm9yd2FyZExpc3QsIGJvb2wgZHVyaW5nTG9hZCkKLSAgICAgICAgOiBTY2hlZHVs
ZWROYXZpZ2F0aW9uKDAsIHN1Ym1pc3Npb24tPmxvY2tIaXN0b3J5KCksIGxvY2tCYWNrRm9yd2Fy
ZExpc3QsIGR1cmluZ0xvYWQsIHRydWUpCi0gICAgICAgICwgbV9zdWJtaXNzaW9uKHN1Ym1pc3Np
b24pCi0gICAgICAgICwgbV9oYXZlVG9sZENsaWVudChmYWxzZSkKKyAgICBTY2hlZHVsZWRGb3Jt
U3VibWlzc2lvbihSZWY8Rm9ybVN1Ym1pc3Npb24+JiYgc3VibWlzc2lvbiwgTG9ja0JhY2tGb3J3
YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0LCBib29sIGR1cmluZ0xvYWQpCisgICAgICAgIDog
U2NoZWR1bGVkTmF2aWdhdGlvbigwLCBzdWJtaXNzaW9uLT5sb2NrSGlzdG9yeSgpLCBsb2NrQmFj
a0ZvcndhcmRMaXN0LCBkdXJpbmdMb2FkLCB0cnVlLCBzdWJtaXNzaW9uLT5zdGF0ZSgpLnNvdXJj
ZURvY3VtZW50KCkuc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeVRvUHJvcGFnYXRlKCkpCisg
ICAgICAgICwgbV9zdWJtaXNzaW9uKFdURk1vdmUoc3VibWlzc2lvbikpCiAgICAgewotICAgICAg
ICBBU1NFUlQobV9zdWJtaXNzaW9uLT5zdGF0ZSgpKTsKLQotICAgICAgICBpZiAoRG9jdW1lbnQq
IGRvY3VtZW50ID0gbV9zdWJtaXNzaW9uLT5zdGF0ZSgpLT5zb3VyY2VEb2N1bWVudCgpKQotICAg
ICAgICAgICAgbV9zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5ID0gZG9jdW1lbnQtPnNob3Vs
ZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3lUb1Byb3BhZ2F0ZSgpOwogICAgIH0KIAogICAgIHZvaWQg
ZmlyZShGcmFtZSYgZnJhbWUpIG92ZXJyaWRlCkBAIC0yNjAsMTQgKzI2MiwxNCBAQCBwdWJsaWM6
CiAgICAgICAgIC8vIE5vdyB0aGF0IHRoZSB0aW1lciBoYXMgZmlyZWQsIHdlIG5lZWQgdG8gcmVw
ZWF0IHRoZSBzZWN1cml0eSBjaGVjayB3aGljaCBub3JtYWxseSBpcyBkb25lIHdoZW4KICAgICAg
ICAgLy8gc2VsZWN0aW5nIGEgdGFyZ2V0LCBpbiBjYXNlIGNvbmRpdGlvbnMgaGF2ZSBjaGFuZ2Vk
LiBPdGhlciBjb2RlIHBhdGhzIGF2b2lkIHRoaXMgYnkgdGFyZ2V0aW5nCiAgICAgICAgIC8vIHdp
dGhvdXQgbGVhdmluZyBhIHRpbWUgd2luZG93LiBJZiB3ZSBmYWlsIHRoZSBjaGVjayBqdXN0IHNp
bGVudGx5IGRyb3AgdGhlIGZvcm0gc3VibWlzc2lvbi4KLSAgICAgICAgRG9jdW1lbnQqIHJlcXVl
c3RpbmdEb2N1bWVudCA9IG1fc3VibWlzc2lvbi0+c3RhdGUoKS0+c291cmNlRG9jdW1lbnQoKTsK
LSAgICAgICAgaWYgKCFyZXF1ZXN0aW5nRG9jdW1lbnQtPmNhbk5hdmlnYXRlKCZmcmFtZSkpCisg
ICAgICAgIGF1dG8mIHJlcXVlc3RpbmdEb2N1bWVudCA9IG1fc3VibWlzc2lvbi0+c3RhdGUoKS5z
b3VyY2VEb2N1bWVudCgpOworICAgICAgICBpZiAoIXJlcXVlc3RpbmdEb2N1bWVudC5jYW5OYXZp
Z2F0ZSgmZnJhbWUpKQogICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICBGcmFtZUxvYWRSZXF1
ZXN0IGZyYW1lUmVxdWVzdChyZXF1ZXN0aW5nRG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCksIGxv
Y2tIaXN0b3J5KCksIGxvY2tCYWNrRm9yd2FyZExpc3QoKSwgTWF5YmVTZW5kUmVmZXJyZXIsIEFs
bG93TmF2aWdhdGlvblRvSW52YWxpZFVSTDo6WWVzLCBOZXdGcmFtZU9wZW5lclBvbGljeTo6QWxs
b3csIG1fc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSk7CisgICAgICAgIEZyYW1lTG9hZFJl
cXVlc3QgZnJhbWVSZXF1ZXN0KHJlcXVlc3RpbmdEb2N1bWVudC5zZWN1cml0eU9yaWdpbigpLCBs
b2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVycmVyLCBB
bGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkw6OlllcywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFs
bG93LCBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzKCkpOwogICAgICAgICBtX3N1Ym1pc3Npb24tPnBv
cHVsYXRlRnJhbWVMb2FkUmVxdWVzdChmcmFtZVJlcXVlc3QpOwotICAgICAgICBmcmFtZS5sb2Fk
ZXIoKS5sb2FkRnJhbWVSZXF1ZXN0KGZyYW1lUmVxdWVzdCwgbV9zdWJtaXNzaW9uLT5ldmVudCgp
LCBtX3N1Ym1pc3Npb24tPnN0YXRlKCkpOworICAgICAgICBmcmFtZS5sb2FkZXIoKS5sb2FkRnJh
bWVSZXF1ZXN0KGZyYW1lUmVxdWVzdCwgbV9zdWJtaXNzaW9uLT5ldmVudCgpLCAmbV9zdWJtaXNz
aW9uLT5zdGF0ZSgpKTsKICAgICB9Ci0gICAgCisKICAgICB2b2lkIGRpZFN0YXJ0VGltZXIoRnJh
bWUmIGZyYW1lLCBUaW1lciYgdGltZXIpIG92ZXJyaWRlCiAgICAgewogICAgICAgICBpZiAobV9o
YXZlVG9sZENsaWVudCkKQEAgLTI5Myw4ICsyOTUsOCBAQCBwdWJsaWM6CiAgICAgfQogCiBwcml2
YXRlOgotICAgIFJlZlB0cjxGb3JtU3VibWlzc2lvbj4gbV9zdWJtaXNzaW9uOwotICAgIGJvb2wg
bV9oYXZlVG9sZENsaWVudDsKKyAgICBSZWY8Rm9ybVN1Ym1pc3Npb24+IG1fc3VibWlzc2lvbjsK
KyAgICBib29sIG1faGF2ZVRvbGRDbGllbnQgeyBmYWxzZSB9OwogfTsKIAogY2xhc3MgU2NoZWR1
bGVkUGFnZUJsb2NrIGZpbmFsIDogcHVibGljIFNjaGVkdWxlZE5hdmlnYXRpb24gewpAQCAtMzEz
LDcgKzMxNSw3IEBAIHB1YmxpYzoKICAgICAgICAgU3Vic3RpdHV0ZURhdGEgcmVwbGFjZW1lbnRE
YXRhKFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKCksIG1fb3JpZ2luRG9jdW1lbnQudXJsKCksIHJlcGxh
Y2VtZW50UmVzcG9uc2UsIFN1YnN0aXR1dGVEYXRhOjpTZXNzaW9uSGlzdG9yeVZpc2liaWxpdHk6
OkhpZGRlbik7CiAKICAgICAgICAgUmVzb3VyY2VSZXF1ZXN0IHJlc291cmNlUmVxdWVzdChtX29y
aWdpbkRvY3VtZW50LnVybCgpLCBlbXB0eVN0cmluZygpLCBSZWxvYWRJZ25vcmluZ0NhY2hlRGF0
YSk7Ci0gICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KG1fb3JpZ2luRG9jdW1l
bnQuc2VjdXJpdHlPcmlnaW4oKSwgcmVzb3VyY2VSZXF1ZXN0LCBsb2NrSGlzdG9yeSgpLCBsb2Nr
QmFja0ZvcndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVycmVyLCBBbGxvd05hdmlnYXRpb25Ub0lu
dmFsaWRVUkw6OlllcywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBtX3Nob3VsZE9wZW5F
eHRlcm5hbFVSTHNQb2xpY3kpOworICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1lUmVxdWVz
dChtX29yaWdpbkRvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCksIHJlc291cmNlUmVxdWVzdCwgbG9j
a0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxs
b3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpZZXMsIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxv
dywgc2hvdWxkT3BlbkV4dGVybmFsVVJMcygpKTsKICAgICAgICAgZnJhbWVSZXF1ZXN0LnNldFN1
YnN0aXR1dGVEYXRhKHJlcGxhY2VtZW50RGF0YSk7CiAgICAgICAgIGZyYW1lLmxvYWRlcigpLmxv
YWQoZnJhbWVSZXF1ZXN0KTsKICAgICB9CkBAIC0zNjQsNyArMzY2LDcgQEAgaW5saW5lIGJvb2wg
TmF2aWdhdGlvblNjaGVkdWxlcjo6c2hvdWxkU2NoZWR1bGVOYXZpZ2F0aW9uKGNvbnN0IFVSTCYg
dXJsKSBjb25zdAogICAgIHJldHVybiBOYXZpZ2F0aW9uRGlzYWJsZXJGb3JCZWZvcmVVbmxvYWQ6
OmlzTmF2aWdhdGlvbkFsbG93ZWQoKTsKIH0KIAotdm9pZCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjpz
Y2hlZHVsZVJlZGlyZWN0KERvY3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQsIGRvdWJsZSBkZWxh
eSwgY29uc3QgVVJMJiB1cmwpCit2b2lkIE5hdmlnYXRpb25TY2hlZHVsZXI6OnNjaGVkdWxlUmVk
aXJlY3QoRG9jdW1lbnQmIGluaXRpYXRpbmdEb2N1bWVudCwgZG91YmxlIGRlbGF5LCBjb25zdCBV
UkwmIHVybCkKIHsKICAgICBpZiAoIXNob3VsZFNjaGVkdWxlTmF2aWdhdGlvbih1cmwpKQogICAg
ICAgICByZXR1cm47CkBAIC0zNzUsNyArMzc3LDcgQEAgdm9pZCBOYXZpZ2F0aW9uU2NoZWR1bGVy
OjpzY2hlZHVsZVJlZGlyZWN0KERvY3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQsIGRvdWJsZQog
CiAgICAgLy8gV2Ugd2FudCBhIG5ldyBiYWNrL2ZvcndhcmQgbGlzdCBpdGVtIGlmIHRoZSByZWZy
ZXNoIHRpbWVvdXQgaXMgPiAxIHNlY29uZC4KICAgICBpZiAoIW1fcmVkaXJlY3QgfHwgZGVsYXkg
PD0gbV9yZWRpcmVjdC0+ZGVsYXkoKSkgewotICAgICAgICBMb2NrQmFja0ZvcndhcmRMaXN0IGxv
Y2tCYWNrRm9yd2FyZExpc3QgPSBkZWxheSA8PSAxID8gTG9ja0JhY2tGb3J3YXJkTGlzdDo6WWVz
IDogTG9ja0JhY2tGb3J3YXJkTGlzdDo6Tm87CisgICAgICAgIGF1dG8gbG9ja0JhY2tGb3J3YXJk
TGlzdCA9IGRlbGF5IDw9IDEgPyBMb2NrQmFja0ZvcndhcmRMaXN0OjpZZXMgOiBMb2NrQmFja0Zv
cndhcmRMaXN0OjpObzsKICAgICAgICAgc2NoZWR1bGUoc3RkOjptYWtlX3VuaXF1ZTxTY2hlZHVs
ZWRSZWRpcmVjdD4oaW5pdGlhdGluZ0RvY3VtZW50LCBkZWxheSwgbV9mcmFtZS5kb2N1bWVudCgp
LT5zZWN1cml0eU9yaWdpbigpLCB1cmwsIExvY2tIaXN0b3J5OjpZZXMsIGxvY2tCYWNrRm9yd2Fy
ZExpc3QpKTsKICAgICB9CiB9CkBAIC0zOTgsNyArNDAwLDcgQEAgTG9ja0JhY2tGb3J3YXJkTGlz
dCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjptdXN0TG9ja0JhY2tGb3J3YXJkTGlzdChGcmFtZSYgdGFy
Z2V0RnIKICAgICByZXR1cm4gTG9ja0JhY2tGb3J3YXJkTGlzdDo6Tm87CiB9CiAKLXZvaWQgTmF2
aWdhdGlvblNjaGVkdWxlcjo6c2NoZWR1bGVMb2NhdGlvbkNoYW5nZShEb2N1bWVudCogaW5pdGlh
dGluZ0RvY3VtZW50LCBTZWN1cml0eU9yaWdpbiogc2VjdXJpdHlPcmlnaW4sIGNvbnN0IFVSTCYg
dXJsLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSwgTG9j
a0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0KQordm9pZCBOYXZpZ2F0aW9uU2No
ZWR1bGVyOjpzY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKERvY3VtZW50JiBpbml0aWF0aW5nRG9jdW1l
bnQsIFNlY3VyaXR5T3JpZ2luKiBzZWN1cml0eU9yaWdpbiwgY29uc3QgVVJMJiB1cmwsIGNvbnN0
IFN0cmluZyYgcmVmZXJyZXIsIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBMb2NrQmFja0Zvcndh
cmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QpCiB7CiAgICAgaWYgKCFzaG91bGRTY2hlZHVsZU5h
dmlnYXRpb24odXJsKSkKICAgICAgICAgcmV0dXJuOwpAQCAtNDEyLDEwICs0MTQsNyBAQCB2b2lk
IE5hdmlnYXRpb25TY2hlZHVsZXI6OnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UoRG9jdW1lbnQqIGlu
aXRpYXRpbmdEb2N1bWVudCwgUwogICAgIC8vIGZyYWdtZW50IHBhcnQsIHdlIGRvbid0IG5lZWQg
dG8gc2NoZWR1bGUgdGhlIGxvY2F0aW9uIGNoYW5nZS4KICAgICBpZiAodXJsLmhhc0ZyYWdtZW50
SWRlbnRpZmllcigpICYmIGVxdWFsSWdub3JpbmdGcmFnbWVudElkZW50aWZpZXIobV9mcmFtZS5k
b2N1bWVudCgpLT51cmwoKSwgdXJsKSkgewogICAgICAgICBSZXNvdXJjZVJlcXVlc3QgcmVzb3Vy
Y2VSZXF1ZXN0KG1fZnJhbWUuZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwodXJsKSwgcmVmZXJyZXIs
IFVzZVByb3RvY29sQ2FjaGVQb2xpY3kpOwotICAgICAgICBTaG91bGRPcGVuRXh0ZXJuYWxVUkxz
UG9saWN5IHNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgPSBTaG91bGRPcGVuRXh0ZXJuYWxV
UkxzUG9saWN5OjpTaG91bGROb3RBbGxvdzsKLSAgICAgICAgaWYgKGluaXRpYXRpbmdEb2N1bWVu
dCkKLSAgICAgICAgICAgIHNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgPSBpbml0aWF0aW5n
RG9jdW1lbnQtPnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3lUb1Byb3BhZ2F0ZSgpOwotICAg
ICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1lUmVxdWVzdChzZWN1cml0eU9yaWdpbiwgcmVzb3Vy
Y2VSZXF1ZXN0LCAiX3NlbGYiLCBsb2NrSGlzdG9yeSwgbG9ja0JhY2tGb3J3YXJkTGlzdCwgTWF5
YmVTZW5kUmVmZXJyZXIsIEFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTDo6Tm8sIE5ld0ZyYW1l
T3BlbmVyUG9saWN5OjpBbGxvdywgUmVwbGFjZURvY3VtZW50SWZKYXZhU2NyaXB0VVJMLCBzaG91
bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5KTsKKyAgICAgICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFt
ZVJlcXVlc3Qoc2VjdXJpdHlPcmlnaW4sIHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hp
c3RvcnksIGxvY2tCYWNrRm9yd2FyZExpc3QsIE1heWJlU2VuZFJlZmVycmVyLCBBbGxvd05hdmln
YXRpb25Ub0ludmFsaWRVUkw6Ok5vLCBOZXdGcmFtZU9wZW5lclBvbGljeTo6QWxsb3csIFJlcGxh
Y2VEb2N1bWVudElmSmF2YVNjcmlwdFVSTCwgaW5pdGlhdGluZ0RvY3VtZW50LnNob3VsZE9wZW5F
eHRlcm5hbFVSTHNQb2xpY3lUb1Byb3BhZ2F0ZSgpKTsKICAgICAgICAgbG9hZGVyLmNoYW5nZUxv
Y2F0aW9uKGZyYW1lUmVxdWVzdCk7CiAgICAgICAgIHJldHVybjsKICAgICB9CkBAIC00MjcsNyAr
NDI2LDcgQEAgdm9pZCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjpzY2hlZHVsZUxvY2F0aW9uQ2hhbmdl
KERvY3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQsIFMKICAgICBzY2hlZHVsZShzdGQ6Om1ha2Vf
dW5pcXVlPFNjaGVkdWxlZExvY2F0aW9uQ2hhbmdlPihpbml0aWF0aW5nRG9jdW1lbnQsIHNlY3Vy
aXR5T3JpZ2luLCB1cmwsIHJlZmVycmVyLCBsb2NrSGlzdG9yeSwgbG9ja0JhY2tGb3J3YXJkTGlz
dCwgZHVyaW5nTG9hZCkpOwogfQogCi12b2lkIE5hdmlnYXRpb25TY2hlZHVsZXI6OnNjaGVkdWxl
Rm9ybVN1Ym1pc3Npb24oUGFzc1JlZlB0cjxGb3JtU3VibWlzc2lvbj4gc3VibWlzc2lvbikKK3Zv
aWQgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2NoZWR1bGVGb3JtU3VibWlzc2lvbihSZWY8Rm9ybVN1
Ym1pc3Npb24+JiYgc3VibWlzc2lvbikKIHsKICAgICBBU1NFUlQobV9mcmFtZS5wYWdlKCkpOwog
CkBAIC00NDMsMTQgKzQ0MiwxNCBAQCB2b2lkIE5hdmlnYXRpb25TY2hlZHVsZXI6OnNjaGVkdWxl
Rm9ybVN1Ym1pc3Npb24oUGFzc1JlZlB0cjxGb3JtU3VibWlzc2lvbj4gc3VibQogICAgIC8vIFNl
ZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzIzODMgZm9yIHRoZSBv
cmlnaW5hbCBtb3RpdmF0aW9uIGZvciB0aGlzLgogICAgIExvY2tCYWNrRm9yd2FyZExpc3QgbG9j
a0JhY2tGb3J3YXJkTGlzdCA9IG11c3RMb2NrQmFja0ZvcndhcmRMaXN0KG1fZnJhbWUpOwogICAg
IGlmIChsb2NrQmFja0ZvcndhcmRMaXN0ID09IExvY2tCYWNrRm9yd2FyZExpc3Q6Ok5vCi0gICAg
ICAgICYmIChzdWJtaXNzaW9uLT5zdGF0ZSgpLT5mb3JtU3VibWlzc2lvblRyaWdnZXIoKSA9PSBT
dWJtaXR0ZWRCeUphdmFTY3JpcHQgJiYgbV9mcmFtZS50cmVlKCkucGFyZW50KCkgJiYgIVVzZXJH
ZXN0dXJlSW5kaWNhdG9yOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSkpIHsKKyAgICAgICAgJiYg
KHN1Ym1pc3Npb24tPnN0YXRlKCkuZm9ybVN1Ym1pc3Npb25UcmlnZ2VyKCkgPT0gU3VibWl0dGVk
QnlKYXZhU2NyaXB0ICYmIG1fZnJhbWUudHJlZSgpLnBhcmVudCgpICYmICFVc2VyR2VzdHVyZUlu
ZGljYXRvcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkpKSB7CiAgICAgICAgIGxvY2tCYWNrRm9y
d2FyZExpc3QgPSBMb2NrQmFja0ZvcndhcmRMaXN0OjpZZXM7CiAgICAgfQogICAgIAotICAgIHNj
aGVkdWxlKHN0ZDo6bWFrZV91bmlxdWU8U2NoZWR1bGVkRm9ybVN1Ym1pc3Npb24+KHN1Ym1pc3Np
b24sIGxvY2tCYWNrRm9yd2FyZExpc3QsIGR1cmluZ0xvYWQpKTsKKyAgICBzY2hlZHVsZShzdGQ6
Om1ha2VfdW5pcXVlPFNjaGVkdWxlZEZvcm1TdWJtaXNzaW9uPihXVEZNb3ZlKHN1Ym1pc3Npb24p
LCBsb2NrQmFja0ZvcndhcmRMaXN0LCBkdXJpbmdMb2FkKSk7CiB9CiAKLXZvaWQgTmF2aWdhdGlv
blNjaGVkdWxlcjo6c2NoZWR1bGVSZWZyZXNoKERvY3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQp
Cit2b2lkIE5hdmlnYXRpb25TY2hlZHVsZXI6OnNjaGVkdWxlUmVmcmVzaChEb2N1bWVudCYgaW5p
dGlhdGluZ0RvY3VtZW50KQogewogICAgIGlmICghc2hvdWxkU2NoZWR1bGVOYXZpZ2F0aW9uKCkp
CiAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZp
Z2F0aW9uU2NoZWR1bGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvblNjaGVk
dWxlci5oCmluZGV4IDQ5YzQzYmUyYmIxNWViYTgwNTY1NzY2MTJkMTVkMWFiY2YzMDc3MTcuLjBh
ZTE3MTE0NThjMzc0NmY3NzgxNmZlZDkzNjdiYTQ4YmY2MTZmZDEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL05hdmlnYXRpb25TY2hlZHVsZXIuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMDYtMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CiAgKiBDb3B5cmlnaHQgKEMpIDIwMDgsIDIwMDkgVG9yY2ggTW9iaWxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4gKGh0dHA6Ly93d3cudG9yY2htb2JpbGUuY29tLykKICAqIENvcHlyaWdodCAo
QykgMjAwOSBBZGFtIEJhcnRoLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKQEAgLTY4LDEwICs2
OCwxMCBAQCBwdWJsaWM6CiAgICAgYm9vbCByZWRpcmVjdFNjaGVkdWxlZER1cmluZ0xvYWQoKTsK
ICAgICBib29sIGxvY2F0aW9uQ2hhbmdlUGVuZGluZygpOwogCi0gICAgdm9pZCBzY2hlZHVsZVJl
ZGlyZWN0KERvY3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQsIGRvdWJsZSBkZWxheSwgY29uc3Qg
VVJMJik7Ci0gICAgdm9pZCBzY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKERvY3VtZW50KiBpbml0aWF0
aW5nRG9jdW1lbnQsIFNlY3VyaXR5T3JpZ2luKiwgY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiBy
ZWZlcnJlciwgTG9ja0hpc3RvcnkgPSBMb2NrSGlzdG9yeTo6WWVzLCBMb2NrQmFja0ZvcndhcmRM
aXN0ID0gTG9ja0JhY2tGb3J3YXJkTGlzdDo6WWVzKTsKLSAgICB2b2lkIHNjaGVkdWxlRm9ybVN1
Ym1pc3Npb24oUGFzc1JlZlB0cjxGb3JtU3VibWlzc2lvbj4pOwotICAgIHZvaWQgc2NoZWR1bGVS
ZWZyZXNoKERvY3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQpOworICAgIHZvaWQgc2NoZWR1bGVS
ZWRpcmVjdChEb2N1bWVudCYgaW5pdGlhdGluZ0RvY3VtZW50LCBkb3VibGUgZGVsYXksIGNvbnN0
IFVSTCYpOworICAgIHZvaWQgc2NoZWR1bGVMb2NhdGlvbkNoYW5nZShEb2N1bWVudCYgaW5pdGlh
dGluZ0RvY3VtZW50LCBTZWN1cml0eU9yaWdpbiosIGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYg
cmVmZXJyZXIsIExvY2tIaXN0b3J5ID0gTG9ja0hpc3Rvcnk6OlllcywgTG9ja0JhY2tGb3J3YXJk
TGlzdCA9IExvY2tCYWNrRm9yd2FyZExpc3Q6Olllcyk7CisgICAgdm9pZCBzY2hlZHVsZUZvcm1T
dWJtaXNzaW9uKFJlZjxGb3JtU3VibWlzc2lvbj4mJik7CisgICAgdm9pZCBzY2hlZHVsZVJlZnJl
c2goRG9jdW1lbnQmIGluaXRpYXRpbmdEb2N1bWVudCk7CiAgICAgdm9pZCBzY2hlZHVsZUhpc3Rv
cnlOYXZpZ2F0aW9uKGludCBzdGVwcyk7CiAgICAgdm9pZCBzY2hlZHVsZVBhZ2VCbG9jayhEb2N1
bWVudCYgb3JpZ2luRG9jdW1lbnQpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvUmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9h
ZGVyLmNwcAppbmRleCA5ZTJhYmRhZGNhMTc4MWFkMTA1YzM5NDlmMmYwY2QxMGZlZWFhZDdhLi4z
NjUwZWJiNTg4ZDgwMmE4NjFlMzMwYTFlZDc3MDBhOTUzYzY3ZjQ4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9SZXNvdXJjZUxvYWRlci5jcHAKQEAgLTE5MSw3ICsxOTEsNyBAQCB2b2lkIFJlc291
cmNlTG9hZGVyOjpzdGFydCgpCiAgICAgICAgIHJldHVybjsKICNlbmRpZgogCi0gICAgaWYgKG1f
ZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZFJlc291cmNl
KCp0aGlzLCBtX3JlcXVlc3QsIG1fcmVxdWVzdC51cmwoKSkpCisgICAgaWYgKG1fZG9jdW1lbnRM
b2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWF5YmVMb2FkUmVzb3VyY2UoKnRoaXMsIG1f
cmVxdWVzdCwgbV9yZXF1ZXN0LnVybCgpKSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKG1f
ZGVmZXJzTG9hZGluZykgewpAQCAtNjA3LDcgKzYwNyw3IEBAIFJlc291cmNlRXJyb3IgUmVzb3Vy
Y2VMb2FkZXI6OmNhbm5vdFNob3dVUkxFcnJvcigpCiAKIFJlc291cmNlUmVxdWVzdCBSZXNvdXJj
ZUxvYWRlcjo6d2lsbFNlbmRSZXF1ZXN0KFJlc291cmNlSGFuZGxlKiwgUmVzb3VyY2VSZXF1ZXN0
JiYgcmVxdWVzdCwgUmVzb3VyY2VSZXNwb25zZSYmIHJlZGlyZWN0UmVzcG9uc2UpCiB7Ci0gICAg
aWYgKGRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZEZh
bGxiYWNrRm9yUmVkaXJlY3QodGhpcywgcmVxdWVzdCwgcmVkaXJlY3RSZXNwb25zZSkpCisgICAg
aWYgKGRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWF5YmVMb2FkRmFs
bGJhY2tGb3JSZWRpcmVjdCh0aGlzLCByZXF1ZXN0LCByZWRpcmVjdFJlc3BvbnNlKSkKICAgICAg
ICAgcmV0dXJuIFdURk1vdmUocmVxdWVzdCk7CiAgICAgd2lsbFNlbmRSZXF1ZXN0SW50ZXJuYWwo
cmVxdWVzdCwgcmVkaXJlY3RSZXNwb25zZSk7CiAgICAgcmV0dXJuIFdURk1vdmUocmVxdWVzdCk7
CkBAIC02MjAsNyArNjIwLDcgQEAgdm9pZCBSZXNvdXJjZUxvYWRlcjo6ZGlkU2VuZERhdGEoUmVz
b3VyY2VIYW5kbGUqLCB1bnNpZ25lZCBsb25nIGxvbmcgYnl0ZXNTZW50LAogCiB2b2lkIFJlc291
cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VIYW5kbGUqLCBSZXNvdXJjZVJl
c3BvbnNlJiYgcmVzcG9uc2UpCiB7Ci0gICAgaWYgKGRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0
aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZEZhbGxiYWNrRm9yUmVzcG9uc2UodGhpcywgcmVzcG9u
c2UpKQorICAgIGlmIChkb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLm1h
eWJlTG9hZEZhbGxiYWNrRm9yUmVzcG9uc2UodGhpcywgcmVzcG9uc2UpKQogICAgICAgICByZXR1
cm47CiAgICAgZGlkUmVjZWl2ZVJlc3BvbnNlKHJlc3BvbnNlKTsKIH0KQEAgLTY0Miw3ICs2NDIs
NyBAQCB2b2lkIFJlc291cmNlTG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFuZGxl
KiwgZG91YmxlIGZpbmlzaFRpbWUpCiAKIHZvaWQgUmVzb3VyY2VMb2FkZXI6OmRpZEZhaWwoUmVz
b3VyY2VIYW5kbGUqLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKIHsKLSAgICBpZiAoZG9j
dW1lbnRMb2FkZXIoKS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+bWF5YmVMb2FkRmFsbGJhY2tG
b3JFcnJvcih0aGlzLCBlcnJvcikpCisgICAgaWYgKGRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0
aW9uQ2FjaGVIb3N0KCkubWF5YmVMb2FkRmFsbGJhY2tGb3JFcnJvcih0aGlzLCBlcnJvcikpCiAg
ICAgICAgIHJldHVybjsKICAgICBkaWRGYWlsKGVycm9yKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9TdWJmcmFtZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvU3ViZnJhbWVMb2FkZXIuY3BwCmluZGV4IGFmNmMxNjQ0MmUxZTJlNTMzZjMwMzNmMDA0ZjNm
Nzc5ODgwZjFmMWYuLjAxYWU1M2E4Y2Q2MzBjZWExOTJmYzM1MDhkODQyOTM4YWYyNzg2YTQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJmcmFtZUxvYWRlci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YmZyYW1lTG9hZGVyLmNwcApAQCAtMSw1ICsxLDUgQEAK
IC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDggTm9raWEgQ29ycG9yYXRpb24gYW5kL29y
IGl0cyBzdWJzaWRpYXJ5KC1pZXMpCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDgsIDIwMDkgVG9yY2gg
TW9iaWxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4gKGh0dHA6Ly93d3cudG9yY2htb2JpbGUu
Y29tLykKICAqIENvcHlyaWdodCAoQykgMjAwOCBBbHAgVG9rZXIgPGFscEBhdG9rZXIuY29tPgpA
QCAtMTA5LDIzICsxMDksMjUgQEAgYm9vbCBTdWJmcmFtZUxvYWRlcjo6cmVzb3VyY2VXaWxsVXNl
UGx1Z2luKGNvbnN0IFN0cmluZyYgdXJsLCBjb25zdCBTdHJpbmcmIG1pbWUKIAogYm9vbCBTdWJm
cmFtZUxvYWRlcjo6cGx1Z2luSXNMb2FkYWJsZShjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5n
JiBtaW1lVHlwZSkKIHsKKyAgICBhdXRvKiBkb2N1bWVudCA9IG1fZnJhbWUuZG9jdW1lbnQoKTsK
KwogICAgIGlmIChNSU1FVHlwZVJlZ2lzdHJ5Ojppc0phdmFBcHBsZXRNSU1FVHlwZShtaW1lVHlw
ZSkpIHsKICAgICAgICAgaWYgKCFtX2ZyYW1lLnNldHRpbmdzKCkuaXNKYXZhRW5hYmxlZCgpKQog
ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICBpZiAoZG9jdW1lbnQoKSAmJiBkb2N1
bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5pc0xvY2FsKCkgJiYgIW1fZnJhbWUuc2V0dGluZ3Mo
KS5pc0phdmFFbmFibGVkRm9yTG9jYWxGaWxlcygpKQorICAgICAgICBpZiAoZG9jdW1lbnQgJiYg
ZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCktPmlzTG9jYWwoKSAmJiAhbV9mcmFtZS5zZXR0aW5n
cygpLmlzSmF2YUVuYWJsZWRGb3JMb2NhbEZpbGVzKCkpCiAgICAgICAgICAgICByZXR1cm4gZmFs
c2U7CiAgICAgfQogCi0gICAgaWYgKGRvY3VtZW50KCkpIHsKLSAgICAgICAgaWYgKGRvY3VtZW50
KCktPmlzU2FuZGJveGVkKFNhbmRib3hQbHVnaW5zKSkKKyAgICBpZiAoZG9jdW1lbnQpIHsKKyAg
ICAgICAgaWYgKGRvY3VtZW50LT5pc1NhbmRib3hlZChTYW5kYm94UGx1Z2lucykpCiAgICAgICAg
ICAgICByZXR1cm4gZmFsc2U7CiAKLSAgICAgICAgaWYgKCFkb2N1bWVudCgpLT5zZWN1cml0eU9y
aWdpbigpLT5jYW5EaXNwbGF5KHVybCkpIHsKKyAgICAgICAgaWYgKCFkb2N1bWVudC0+c2VjdXJp
dHlPcmlnaW4oKS0+Y2FuRGlzcGxheSh1cmwpKSB7CiAgICAgICAgICAgICBGcmFtZUxvYWRlcjo6
cmVwb3J0TG9jYWxMb2FkRmFpbGVkKCZtX2ZyYW1lLCB1cmwuc3RyaW5nKCkpOwogICAgICAgICAg
ICAgcmV0dXJuIGZhbHNlOwogICAgICAgICB9CiAKLSAgICAgICAgaWYgKCFtX2ZyYW1lLmxvYWRl
cigpLm1peGVkQ29udGVudENoZWNrZXIoKS5jYW5SdW5JbnNlY3VyZUNvbnRlbnQoZG9jdW1lbnQo
KS0+c2VjdXJpdHlPcmlnaW4oKSwgdXJsKSkKKyAgICAgICAgaWYgKCFtX2ZyYW1lLmxvYWRlcigp
Lm1peGVkQ29udGVudENoZWNrZXIoKS5jYW5SdW5JbnNlY3VyZUNvbnRlbnQoZG9jdW1lbnQtPnNl
Y3VyaXR5T3JpZ2luKCksIHVybCkpCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQog
CkBAIC0yMDYsMTggKzIwOCwyMCBAQCBib29sIFN1YmZyYW1lTG9hZGVyOjpyZXF1ZXN0T2JqZWN0
KEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQmIG93bmVyRWxlbWVudCwgY29uc3QgUwogICAgIGlmICh1
cmwuaXNFbXB0eSgpICYmIG1pbWVUeXBlLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuIGZhbHNl
OwogCisgICAgYXV0byYgZG9jdW1lbnQgPSBvd25lckVsZW1lbnQuZG9jdW1lbnQoKTsKKwogICAg
IFVSTCBjb21wbGV0ZWRVUkw7CiAgICAgaWYgKCF1cmwuaXNFbXB0eSgpKQogICAgICAgICBjb21w
bGV0ZWRVUkwgPSBjb21wbGV0ZVVSTCh1cmwpOwogCi0gICAgZG9jdW1lbnQoKS0+Y29udGVudFNl
Y3VyaXR5UG9saWN5KCktPnVwZ3JhZGVJbnNlY3VyZVJlcXVlc3RJZk5lZWRlZChjb21wbGV0ZWRV
UkwsIENvbnRlbnRTZWN1cml0eVBvbGljeTo6SW5zZWN1cmVSZXF1ZXN0VHlwZTo6TG9hZCk7Cisg
ICAgZG9jdW1lbnQuY29udGVudFNlY3VyaXR5UG9saWN5KCktPnVwZ3JhZGVJbnNlY3VyZVJlcXVl
c3RJZk5lZWRlZChjb21wbGV0ZWRVUkwsIENvbnRlbnRTZWN1cml0eVBvbGljeTo6SW5zZWN1cmVS
ZXF1ZXN0VHlwZTo6TG9hZCk7CiAKICAgICBib29sIGhhc0ZhbGxiYWNrQ29udGVudCA9IGlzPEhU
TUxPYmplY3RFbGVtZW50Pihvd25lckVsZW1lbnQpICYmIGRvd25jYXN0PEhUTUxPYmplY3RFbGVt
ZW50Pihvd25lckVsZW1lbnQpLmhhc0ZhbGxiYWNrQ29udGVudCgpOwogCiAgICAgYm9vbCB1c2VG
YWxsYmFjazsKICAgICBpZiAoc2hvdWxkVXNlUGx1Z2luKGNvbXBsZXRlZFVSTCwgbWltZVR5cGUs
IGhhc0ZhbGxiYWNrQ29udGVudCwgdXNlRmFsbGJhY2spKSB7CiAgICAgICAgIGJvb2wgc3VjY2Vz
cyA9IHJlcXVlc3RQbHVnaW4ob3duZXJFbGVtZW50LCBjb21wbGV0ZWRVUkwsIG1pbWVUeXBlLCBw
YXJhbU5hbWVzLCBwYXJhbVZhbHVlcywgdXNlRmFsbGJhY2spOwotICAgICAgICBsb2dQbHVnaW5S
ZXF1ZXN0KGRvY3VtZW50KCktPnBhZ2UoKSwgbWltZVR5cGUsIGNvbXBsZXRlZFVSTCwgc3VjY2Vz
cyk7CisgICAgICAgIGxvZ1BsdWdpblJlcXVlc3QoZG9jdW1lbnQucGFnZSgpLCBtaW1lVHlwZSwg
Y29tcGxldGVkVVJMLCBzdWNjZXNzKTsKICAgICAgICAgcmV0dXJuIHN1Y2Nlc3M7CiAgICAgfQog
CkBAIC0yMjcsNyArMjMxLDcgQEAgYm9vbCBTdWJmcmFtZUxvYWRlcjo6cmVxdWVzdE9iamVjdChI
VE1MUGx1Z0luSW1hZ2VFbGVtZW50JiBvd25lckVsZW1lbnQsIGNvbnN0IFMKICAgICByZXR1cm4g
bG9hZE9yUmVkaXJlY3RTdWJmcmFtZShvd25lckVsZW1lbnQsIGNvbXBsZXRlZFVSTCwgZnJhbWVO
YW1lLCBMb2NrSGlzdG9yeTo6WWVzLCBMb2NrQmFja0ZvcndhcmRMaXN0OjpZZXMpOwogfQogCi1Q
YXNzUmVmUHRyPFdpZGdldD4gU3ViZnJhbWVMb2FkZXI6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQo
Y29uc3QgSW50U2l6ZSYgc2l6ZSwgSFRNTEFwcGxldEVsZW1lbnQmIGVsZW1lbnQsIGNvbnN0IFZl
Y3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1
ZXMpCitSZWZQdHI8V2lkZ2V0PiBTdWJmcmFtZUxvYWRlcjo6Y3JlYXRlSmF2YUFwcGxldFdpZGdl
dChjb25zdCBJbnRTaXplJiBzaXplLCBIVE1MQXBwbGV0RWxlbWVudCYgZWxlbWVudCwgY29uc3Qg
VmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZh
bHVlcykKIHsKICAgICBTdHJpbmcgYmFzZVVSTFN0cmluZzsKICAgICBTdHJpbmcgY29kZUJhc2VV
UkxTdHJpbmc7CkBAIC0yNTYsMTQgKzI2MCwxNCBAQCBQYXNzUmVmUHRyPFdpZGdldD4gU3ViZnJh
bWVMb2FkZXI6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYgc2l6ZSwgSAog
ICAgIH0KIAogICAgIGlmIChiYXNlVVJMU3RyaW5nLmlzRW1wdHkoKSkKLSAgICAgICAgYmFzZVVS
TFN0cmluZyA9IG1fZnJhbWUuZG9jdW1lbnQoKS0+YmFzZVVSTCgpLnN0cmluZygpOworICAgICAg
ICBiYXNlVVJMU3RyaW5nID0gZWxlbWVudC5kb2N1bWVudCgpLmJhc2VVUkwoKS5zdHJpbmcoKTsK
ICAgICBVUkwgYmFzZVVSTCA9IGNvbXBsZXRlVVJMKGJhc2VVUkxTdHJpbmcpOwogCiAgICAgUmVm
UHRyPFdpZGdldD4gd2lkZ2V0OwogICAgIGlmIChhbGxvd1BsdWdpbnMoKSkKLSAgICAgICAgd2lk
Z2V0ID0gbV9mcmFtZS5sb2FkZXIoKS5jbGllbnQoKS5jcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KHNp
emUsICZlbGVtZW50LCBiYXNlVVJMLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcyk7CisgICAgICAg
IHdpZGdldCA9IG1fZnJhbWUubG9hZGVyKCkuY2xpZW50KCkuY3JlYXRlSmF2YUFwcGxldFdpZGdl
dChzaXplLCBlbGVtZW50LCBiYXNlVVJMLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcyk7CiAKLSAg
ICBsb2dQbHVnaW5SZXF1ZXN0KGRvY3VtZW50KCktPnBhZ2UoKSwgZWxlbWVudC5zZXJ2aWNlVHlw
ZSgpLCBTdHJpbmcoKSwgd2lkZ2V0KTsKKyAgICBsb2dQbHVnaW5SZXF1ZXN0KG1fZnJhbWUucGFn
ZSgpLCBlbGVtZW50LnNlcnZpY2VUeXBlKCksIFN0cmluZygpLCB3aWRnZXQpOwogCiAgICAgaWYg
KCF3aWRnZXQpIHsKICAgICAgICAgUmVuZGVyRW1iZWRkZWRPYmplY3QqIHJlbmRlcmVyID0gZWxl
bWVudC5yZW5kZXJFbWJlZGRlZE9iamVjdCgpOwpAQCAtMjc3LDE2ICsyODEsMTggQEAgUGFzc1Jl
ZlB0cjxXaWRnZXQ+IFN1YmZyYW1lTG9hZGVyOjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0
IEludFNpemUmIHNpemUsIEgKICAgICByZXR1cm4gd2lkZ2V0OwogfQogCi1GcmFtZSogU3ViZnJh
bWVMb2FkZXI6OmxvYWRPclJlZGlyZWN0U3ViZnJhbWUoSFRNTEZyYW1lT3duZXJFbGVtZW50JiBv
d25lckVsZW1lbnQsIGNvbnN0IFVSTCYgcmVxdWVzdFVybCwgY29uc3QgQXRvbWljU3RyaW5nJiBm
cmFtZU5hbWUsIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxv
Y2tCYWNrRm9yd2FyZExpc3QpCitGcmFtZSogU3ViZnJhbWVMb2FkZXI6OmxvYWRPclJlZGlyZWN0
U3ViZnJhbWUoSFRNTEZyYW1lT3duZXJFbGVtZW50JiBvd25lckVsZW1lbnQsIGNvbnN0IFVSTCYg
cmVxdWVzdFVSTCwgY29uc3QgQXRvbWljU3RyaW5nJiBmcmFtZU5hbWUsIExvY2tIaXN0b3J5IGxv
Y2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QpCiB7Ci0g
ICAgVVJMIHVybCA9IHJlcXVlc3RVcmw7Ci0gICAgb3duZXJFbGVtZW50LmRvY3VtZW50KCkuY29u
dGVudFNlY3VyaXR5UG9saWN5KCktPnVwZ3JhZGVJbnNlY3VyZVJlcXVlc3RJZk5lZWRlZCh1cmws
IENvbnRlbnRTZWN1cml0eVBvbGljeTo6SW5zZWN1cmVSZXF1ZXN0VHlwZTo6TG9hZCk7CisgICAg
YXV0byYgaW5pdGlhdGluZ0RvY3VtZW50ID0gb3duZXJFbGVtZW50LmRvY3VtZW50KCk7CisKKyAg
ICBVUkwgdXBncmFkZWRSZXF1ZXN0VVJMID0gcmVxdWVzdFVSTDsKKyAgICBpbml0aWF0aW5nRG9j
dW1lbnQuY29udGVudFNlY3VyaXR5UG9saWN5KCktPnVwZ3JhZGVJbnNlY3VyZVJlcXVlc3RJZk5l
ZWRlZCh1cGdyYWRlZFJlcXVlc3RVUkwsIENvbnRlbnRTZWN1cml0eVBvbGljeTo6SW5zZWN1cmVS
ZXF1ZXN0VHlwZTo6TG9hZCk7CiAKLSAgICBGcmFtZSogZnJhbWUgPSBvd25lckVsZW1lbnQuY29u
dGVudEZyYW1lKCk7CisgICAgYXV0byogZnJhbWUgPSBvd25lckVsZW1lbnQuY29udGVudEZyYW1l
KCk7CiAgICAgaWYgKGZyYW1lKQotICAgICAgICBmcmFtZS0+bmF2aWdhdGlvblNjaGVkdWxlcigp
LnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UobV9mcmFtZS5kb2N1bWVudCgpLCBtX2ZyYW1lLmRvY3Vt
ZW50KCktPnNlY3VyaXR5T3JpZ2luKCksIHVybCwgbV9mcmFtZS5sb2FkZXIoKS5vdXRnb2luZ1Jl
ZmVycmVyKCksIGxvY2tIaXN0b3J5LCBsb2NrQmFja0ZvcndhcmRMaXN0KTsKKyAgICAgICAgZnJh
bWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKGluaXRpYXRp
bmdEb2N1bWVudCwgaW5pdGlhdGluZ0RvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCksIHVwZ3JhZGVk
UmVxdWVzdFVSTCwgbV9mcmFtZS5sb2FkZXIoKS5vdXRnb2luZ1JlZmVycmVyKCksIGxvY2tIaXN0
b3J5LCBsb2NrQmFja0ZvcndhcmRMaXN0KTsKICAgICBlbHNlCi0gICAgICAgIGZyYW1lID0gbG9h
ZFN1YmZyYW1lKG93bmVyRWxlbWVudCwgdXJsLCBmcmFtZU5hbWUsIG1fZnJhbWUubG9hZGVyKCku
b3V0Z29pbmdSZWZlcnJlcigpKTsKKyAgICAgICAgZnJhbWUgPSBsb2FkU3ViZnJhbWUob3duZXJF
bGVtZW50LCB1cGdyYWRlZFJlcXVlc3RVUkwsIGZyYW1lTmFtZSwgbV9mcmFtZS5sb2FkZXIoKS5v
dXRnb2luZ1JlZmVycmVyKCkpOwogCiAgICAgaWYgKCFmcmFtZSkKICAgICAgICAgcmV0dXJuIG51
bGxwdHI7CkBAIC0zMDMsMTMgKzMwOSwxNSBAQCBGcmFtZSogU3ViZnJhbWVMb2FkZXI6OmxvYWRT
dWJmcmFtZShIVE1MRnJhbWVPd25lckVsZW1lbnQmIG93bmVyRWxlbWVudCwgY29uc3QgVQogICAg
IGludCBtYXJnaW5XaWR0aCA9IC0xOwogICAgIGludCBtYXJnaW5IZWlnaHQgPSAtMTsKICAgICBp
ZiAoaXM8SFRNTEZyYW1lRWxlbWVudEJhc2U+KG93bmVyRWxlbWVudCkpIHsKLSAgICAgICAgSFRN
TEZyYW1lRWxlbWVudEJhc2UmIGZyYW1lRWxlbWVudEJhc2UgPSBkb3duY2FzdDxIVE1MRnJhbWVF
bGVtZW50QmFzZT4ob3duZXJFbGVtZW50KTsKKyAgICAgICAgYXV0byYgZnJhbWVFbGVtZW50QmFz
ZSA9IGRvd25jYXN0PEhUTUxGcmFtZUVsZW1lbnRCYXNlPihvd25lckVsZW1lbnQpOwogICAgICAg
ICBhbGxvd3NTY3JvbGxpbmcgPSBmcmFtZUVsZW1lbnRCYXNlLnNjcm9sbGluZ01vZGUoKSAhPSBT
Y3JvbGxiYXJBbHdheXNPZmY7CiAgICAgICAgIG1hcmdpbldpZHRoID0gZnJhbWVFbGVtZW50QmFz
ZS5tYXJnaW5XaWR0aCgpOwogICAgICAgICBtYXJnaW5IZWlnaHQgPSBmcmFtZUVsZW1lbnRCYXNl
Lm1hcmdpbkhlaWdodCgpOwogICAgIH0KIAotICAgIGlmICghb3duZXJFbGVtZW50LmRvY3VtZW50
KCkuc2VjdXJpdHlPcmlnaW4oKS0+Y2FuRGlzcGxheSh1cmwpKSB7CisgICAgYXV0byBkb2N1bWVu
dCA9IG1ha2VSZWYob3duZXJFbGVtZW50LmRvY3VtZW50KCkpOworCisgICAgaWYgKCFkb2N1bWVu
dC0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuRGlzcGxheSh1cmwpKSB7CiAgICAgICAgIEZyYW1lTG9h
ZGVyOjpyZXBvcnRMb2NhbExvYWRGYWlsZWQoJm1fZnJhbWUsIHVybC5zdHJpbmcoKSk7CiAgICAg
ICAgIHJldHVybiBudWxscHRyOwogICAgIH0KQEAgLTMxNywyMCArMzI1LDIwIEBAIEZyYW1lKiBT
dWJmcmFtZUxvYWRlcjo6bG9hZFN1YmZyYW1lKEhUTUxGcmFtZU93bmVyRWxlbWVudCYgb3duZXJF
bGVtZW50LCBjb25zdCBVCiAgICAgaWYgKCFTdWJmcmFtZUxvYWRpbmdEaXNhYmxlcjo6Y2FuTG9h
ZEZyYW1lKG93bmVyRWxlbWVudCkpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgU3Ry
aW5nIHJlZmVycmVyVG9Vc2UgPSBTZWN1cml0eVBvbGljeTo6Z2VuZXJhdGVSZWZlcnJlckhlYWRl
cihvd25lckVsZW1lbnQuZG9jdW1lbnQoKS5yZWZlcnJlclBvbGljeSgpLCB1cmwsIHJlZmVycmVy
KTsKKyAgICBTdHJpbmcgcmVmZXJyZXJUb1VzZSA9IFNlY3VyaXR5UG9saWN5OjpnZW5lcmF0ZVJl
ZmVycmVySGVhZGVyKGRvY3VtZW50LT5yZWZlcnJlclBvbGljeSgpLCB1cmwsIHJlZmVycmVyKTsK
IAogICAgIC8vIFByZXZlbnQgaW5pdGlhbCBlbXB0eSBkb2N1bWVudCBsb2FkIGZyb20gdHJpZ2dl
cmluZyBsb2FkIGV2ZW50cy4KLSAgICBtX2ZyYW1lLmRvY3VtZW50KCktPmluY3JlbWVudExvYWRF
dmVudERlbGF5Q291bnQoKTsKKyAgICBkb2N1bWVudC0+aW5jcmVtZW50TG9hZEV2ZW50RGVsYXlD
b3VudCgpOwogCi0gICAgUmVmUHRyPEZyYW1lPiBmcmFtZSA9IG1fZnJhbWUubG9hZGVyKCkuY2xp
ZW50KCkuY3JlYXRlRnJhbWUodXJsLCBuYW1lLCAmb3duZXJFbGVtZW50LCByZWZlcnJlclRvVXNl
LCBhbGxvd3NTY3JvbGxpbmcsIG1hcmdpbldpZHRoLCBtYXJnaW5IZWlnaHQpOworICAgIGF1dG8g
ZnJhbWUgPSBtX2ZyYW1lLmxvYWRlcigpLmNsaWVudCgpLmNyZWF0ZUZyYW1lKHVybCwgbmFtZSwg
b3duZXJFbGVtZW50LCByZWZlcnJlclRvVXNlLCBhbGxvd3NTY3JvbGxpbmcsIG1hcmdpbldpZHRo
LCBtYXJnaW5IZWlnaHQpOwogCi0gICAgbV9mcmFtZS5kb2N1bWVudCgpLT5kZWNyZW1lbnRMb2Fk
RXZlbnREZWxheUNvdW50KCk7CisgICAgZG9jdW1lbnQtPmRlY3JlbWVudExvYWRFdmVudERlbGF5
Q291bnQoKTsKIAogICAgIGlmICghZnJhbWUpICB7CiAgICAgICAgIG1fZnJhbWUubG9hZGVyKCku
Y2hlY2tDYWxsSW1wbGljaXRDbG9zZSgpOwogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICB9
Ci0gICAgCisKICAgICAvLyBBbGwgbmV3IGZyYW1lcyB3aWxsIGhhdmUgbV9pc0NvbXBsZXRlIHNl
dCB0byB0cnVlIGF0IHRoaXMgcG9pbnQgZHVlIHRvIHN5bmNocm9ub3VzbHkgbG9hZGluZwogICAg
IC8vIGFuIGVtcHR5IGRvY3VtZW50IGluIEZyYW1lTG9hZGVyOjppbml0KCkuIEJ1dCBtYW55IGZy
YW1lcyB3aWxsIG5vdyBiZSBzdGFydGluZyBhbgogICAgIC8vIGFzeW5jaHJvbm91cyBsb2FkIG9m
IHVybCwgc28gd2Ugc2V0IG1faXNDb21wbGV0ZSB0byBmYWxzZSBhbmQgdGhlbiBjaGVjayBpZiB0
aGUgbG9hZCBpcwpAQCAtMzQwLDEyICszNDgsMTIgQEAgRnJhbWUqIFN1YmZyYW1lTG9hZGVyOjps
b2FkU3ViZnJhbWUoSFRNTEZyYW1lT3duZXJFbGVtZW50JiBvd25lckVsZW1lbnQsIGNvbnN0IFUK
ICAgICBmcmFtZS0+bG9hZGVyKCkuc3RhcnRlZCgpOwogICAgCiAgICAgYXV0byogcmVuZGVyZXIg
PSBvd25lckVsZW1lbnQucmVuZGVyZXIoKTsKLSAgICBGcmFtZVZpZXcqIHZpZXcgPSBmcmFtZS0+
dmlldygpOworICAgIGF1dG8qIHZpZXcgPSBmcmFtZS0+dmlldygpOwogICAgIGlmIChpczxSZW5k
ZXJXaWRnZXQ+KHJlbmRlcmVyKSAmJiB2aWV3KQogICAgICAgICBkb3duY2FzdDxSZW5kZXJXaWRn
ZXQ+KCpyZW5kZXJlcikuc2V0V2lkZ2V0KHZpZXcpOwotICAgIAorCiAgICAgbV9mcmFtZS5sb2Fk
ZXIoKS5jaGVja0NhbGxJbXBsaWNpdENsb3NlKCk7Ci0gICAgCisKICAgICAvLyBTb21lIGxvYWRz
IGFyZSBwZXJmb3JtZWQgc3luY2hyb25vdXNseSAoZS5nLiwgYWJvdXQ6YmxhbmsgYW5kIGxvYWRz
CiAgICAgLy8gY2FuY2VsbGVkIGJ5IHJldHVybmluZyBhIG51bGwgUmVzb3VyY2VSZXF1ZXN0IGZy
b20gcmVxdWVzdEZyb21EZWxlZ2F0ZSkuCiAgICAgLy8gSW4gdGhlc2UgY2FzZXMsIHRoZSBzeW5j
aHJvbm91cyBsb2FkIHdvdWxkIGhhdmUgZmluaXNoZWQKQEAgLTM4MSwxNyArMzg5LDE0IEBAIGJv
b2wgU3ViZnJhbWVMb2FkZXI6OnNob3VsZFVzZVBsdWdpbihjb25zdCBVUkwmIHVybCwgY29uc3Qg
U3RyaW5nJiBtaW1lVHlwZSwgYm9vCiAgICAgcmV0dXJuIG9iamVjdFR5cGUgPT0gT2JqZWN0Q29u
dGVudFR5cGU6Ok5vbmUgfHwgb2JqZWN0VHlwZSA9PSBPYmplY3RDb250ZW50VHlwZTo6UGx1Z0lu
OwogfQogCi1Eb2N1bWVudCogU3ViZnJhbWVMb2FkZXI6OmRvY3VtZW50KCkgY29uc3QKLXsKLSAg
ICByZXR1cm4gbV9mcmFtZS5kb2N1bWVudCgpOwotfQotCiBib29sIFN1YmZyYW1lTG9hZGVyOjps
b2FkUGx1Z2luKEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQmIHBsdWdpbkVsZW1lbnQsIGNvbnN0IFVS
TCYgdXJsLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFy
YW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzLCBib29sIHVzZUZhbGxi
YWNrKQogewogICAgIGlmICh1c2VGYWxsYmFjaykKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0g
ICAgUmVuZGVyRW1iZWRkZWRPYmplY3QqIHJlbmRlcmVyID0gcGx1Z2luRWxlbWVudC5yZW5kZXJF
bWJlZGRlZE9iamVjdCgpOworICAgIGF1dG8mIGRvY3VtZW50ID0gcGx1Z2luRWxlbWVudC5kb2N1
bWVudCgpOworICAgIGF1dG8qIHJlbmRlcmVyID0gcGx1Z2luRWxlbWVudC5yZW5kZXJFbWJlZGRl
ZE9iamVjdCgpOworCiAgICAgLy8gRklYTUU6IFRoaXMgY29kZSBzaG91bGQgbm90IGRlcGVuZCBv
biByZW5kZXJlciEKICAgICBpZiAoIXJlbmRlcmVyKQogICAgICAgICByZXR1cm4gZmFsc2U7CkBA
IC0zOTksMTcgKzQwNCwxOSBAQCBib29sIFN1YmZyYW1lTG9hZGVyOjpsb2FkUGx1Z2luKEhUTUxQ
bHVnSW5JbWFnZUVsZW1lbnQmIHBsdWdpbkVsZW1lbnQsIGNvbnN0IFVSTAogICAgIHBsdWdpbkVs
ZW1lbnQuc3ViZnJhbWVMb2FkZXJXaWxsQ3JlYXRlUGx1Z0luKHVybCk7CiAKICAgICBJbnRTaXpl
IGNvbnRlbnRTaXplID0gcm91bmRlZEludFNpemUoTGF5b3V0U2l6ZShyZW5kZXJlci0+Y29udGVu
dFdpZHRoKCksIHJlbmRlcmVyLT5jb250ZW50SGVpZ2h0KCkpKTsKLSAgICBib29sIGxvYWRNYW51
YWxseSA9IGlzPFBsdWdpbkRvY3VtZW50PigqZG9jdW1lbnQoKSkgJiYgIW1fY29udGFpbnNQbHVn
aW5zICYmIGRvd25jYXN0PFBsdWdpbkRvY3VtZW50PigqZG9jdW1lbnQoKSkuc2hvdWxkTG9hZFBs
dWdpbk1hbnVhbGx5KCk7CisgICAgYm9vbCBsb2FkTWFudWFsbHkgPSBpczxQbHVnaW5Eb2N1bWVu
dD4oZG9jdW1lbnQpICYmICFtX2NvbnRhaW5zUGx1Z2lucyAmJiBkb3duY2FzdDxQbHVnaW5Eb2N1
bWVudD4oZG9jdW1lbnQpLnNob3VsZExvYWRQbHVnaW5NYW51YWxseSgpOwogCiAjaWYgUExBVEZP
Uk0oSU9TKQogICAgIC8vIE9uIGlPUywgd2Ugb25seSB0ZWxsIHRoZSBwbHVnaW4gdG8gYmUgaW4g
ZnVsbCBwYWdlIG1vZGUgaWYgdGhlIGNvbnRhaW5pbmcgcGx1Z2luIGRvY3VtZW50IGlzIHRoZSB0
b3AgbGV2ZWwgZG9jdW1lbnQuCi0gICAgaWYgKGRvY3VtZW50KCktPm93bmVyRWxlbWVudCgpKQor
ICAgIGlmIChkb2N1bWVudC5vd25lckVsZW1lbnQoKSkKICAgICAgICAgbG9hZE1hbnVhbGx5ID0g
ZmFsc2U7CiAjZW5kaWYKIAotICAgIFdlYWtQdHI8UmVuZGVyV2lkZ2V0PiB3ZWFrUmVuZGVyZXIg
PSByZW5kZXJlci0+Y3JlYXRlV2Vha1B0cigpOwotICAgIC8vIGNyZWF0ZVBsdWdpbiAqbWF5KiBj
YXVzZSB0aGlzIHJlbmRlcmVyIHRvIGRpc2FwcGVhciBmcm9tIHVuZGVybmVhdGguCi0gICAgUmVm
UHRyPFdpZGdldD4gd2lkZ2V0ID0gbV9mcmFtZS5sb2FkZXIoKS5jbGllbnQoKS5jcmVhdGVQbHVn
aW4oY29udGVudFNpemUsICZwbHVnaW5FbGVtZW50LCB1cmwsIHBhcmFtTmFtZXMsIHBhcmFtVmFs
dWVzLCBtaW1lVHlwZSwgbG9hZE1hbnVhbGx5KTsKKyAgICBhdXRvIHdlYWtSZW5kZXJlciA9IHJl
bmRlcmVyLT5jcmVhdGVXZWFrUHRyKCk7CisKKyAgICBhdXRvIHdpZGdldCA9IG1fZnJhbWUubG9h
ZGVyKCkuY2xpZW50KCkuY3JlYXRlUGx1Z2luKGNvbnRlbnRTaXplLCBwbHVnaW5FbGVtZW50LCB1
cmwsIHBhcmFtTmFtZXMsIHBhcmFtVmFsdWVzLCBtaW1lVHlwZSwgbG9hZE1hbnVhbGx5KTsKKwor
ICAgIC8vIFRoZSBjYWxsIHRvIGNyZWF0ZVBsdWdpbiAqbWF5KiBjYXVzZSB0aGlzIHJlbmRlcmVy
IHRvIGRpc2FwcGVhciBmcm9tIHVuZGVybmVhdGguCiAgICAgaWYgKCF3ZWFrUmVuZGVyZXIpCiAg
ICAgICAgIHJldHVybiBmYWxzZTsKIApAQCAtNDMzLDkgKzQ0MCw3IEBAIFVSTCBTdWJmcmFtZUxv
YWRlcjo6Y29tcGxldGVVUkwoY29uc3QgU3RyaW5nJiB1cmwpIGNvbnN0CiAKIGJvb2wgU3ViZnJh
bWVMb2FkZXI6OnNob3VsZENvbnZlcnRJbnZhbGlkVVJMc1RvQmxhbmsoKSBjb25zdAogewotICAg
IGlmIChTZXR0aW5ncyogc2V0dGluZ3MgPSBkb2N1bWVudCgpID8gZG9jdW1lbnQoKS0+c2V0dGlu
Z3MoKSA6IG51bGxwdHIpCi0gICAgICAgIHJldHVybiBzZXR0aW5ncy0+c2hvdWxkQ29udmVydElu
dmFsaWRVUkxzVG9CbGFuaygpOwotICAgIHJldHVybiB0cnVlOworICAgIHJldHVybiBtX2ZyYW1l
LnNldHRpbmdzKCkuc2hvdWxkQ29udmVydEludmFsaWRVUkxzVG9CbGFuaygpOwogfQogCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3Vi
ZnJhbWVMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJmcmFtZUxvYWRlci5oCmlu
ZGV4IDk1MTM5NzRiODE3MDVhZWM2NWQxNTUwMjMzOTM1ZDRhNTQyM2I3ODUuLjEyYmY3NzE3ZTc0
MzIzNWNjYzdkYTdkY2NjMzM3ZDQyNjkyYWE5NjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9TdWJmcmFtZUxvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJm
cmFtZUxvYWRlci5oCkBAIC02MSw3ICs2MSw3IEBAIHB1YmxpYzoKICAgICBib29sIHJlcXVlc3RP
YmplY3QoSFRNTFBsdWdJbkltYWdlRWxlbWVudCYsIGNvbnN0IFN0cmluZyYgdXJsLCBjb25zdCBB
dG9taWNTdHJpbmcmIGZyYW1lTmFtZSwKICAgICAgICAgY29uc3QgU3RyaW5nJiBzZXJ2aWNlVHlw
ZSwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+
JiBwYXJhbVZhbHVlcyk7CiAKLSAgICBQYXNzUmVmUHRyPFdpZGdldD4gY3JlYXRlSmF2YUFwcGxl
dFdpZGdldChjb25zdCBJbnRTaXplJiwgSFRNTEFwcGxldEVsZW1lbnQmLCBjb25zdCBWZWN0b3I8
U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKTsK
KyAgICBSZWZQdHI8V2lkZ2V0PiBjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUm
LCBIVE1MQXBwbGV0RWxlbWVudCYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBj
b25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpOwogCiAgICAgV0VCQ09SRV9FWFBPUlQg
Ym9vbCBhbGxvd1BsdWdpbnMoKTsKIApAQCAtNzgsMTQgKzc4LDEyIEBAIHByaXZhdGU6CiAgICAg
Ym9vbCBzaG91bGRVc2VQbHVnaW4oY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwg
Ym9vbCBoYXNGYWxsYmFjaywgYm9vbCYgdXNlRmFsbGJhY2spOwogICAgIGJvb2wgcGx1Z2luSXNM
b2FkYWJsZShjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlKTsKIAotICAgIERvY3Vt
ZW50KiBkb2N1bWVudCgpIGNvbnN0OworICAgIFVSTCBjb21wbGV0ZVVSTChjb25zdCBTdHJpbmcm
KSBjb25zdDsKIAogICAgIGJvb2wgc2hvdWxkQ29udmVydEludmFsaWRVUkxzVG9CbGFuaygpIGNv
bnN0OwogCiAgICAgYm9vbCBtX2NvbnRhaW5zUGx1Z2luczsKICAgICBGcmFtZSYgbV9mcmFtZTsK
LQotICAgIFVSTCBjb21wbGV0ZVVSTChjb25zdCBTdHJpbmcmKSBjb25zdDsKIH07CiAKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJy
ZXNvdXJjZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2Fk
ZXIuY3BwCmluZGV4IGI2YTYzNDEwZDNlYzY2Zjk1ZTY2MTA1YWFkZjdjMzMyZjliNDQxYTYuLjZl
OTdmYTQ5MWY0MmJhNGNlNTI5MjY1OTE5YjM2YjgzZjUzMWMzNTcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL1N1YnJlc291cmNlTG9hZGVyLmNwcApAQCAtMjU2LDYgKzI1Niw3IEBAIHZvaWQg
U3VicmVzb3VyY2VMb2FkZXI6OmRpZFNlbmREYXRhKHVuc2lnbmVkIGxvbmcgbG9uZyBieXRlc1Nl
bnQsIHVuc2lnbmVkIGxvbmcKIH0KIAogI2lmIFVTRShRVUlDS19MT09LKQorCiBib29sIFN1YnJl
c291cmNlTG9hZGVyOjpzaG91bGRDcmVhdGVRdWlja0xvb2tIYW5kbGVGb3JSZXNwb25zZShjb25z
dCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkgY29uc3QKIHsKICAgICBpZiAobV9yZXNvdXJj
ZS0+dHlwZSgpICE9IENhY2hlZFJlc291cmNlOjpNYWluUmVzb3VyY2UpCkBAIC0yNjYsNiArMjY3
LDcgQEAgYm9vbCBTdWJyZXNvdXJjZUxvYWRlcjo6c2hvdWxkQ3JlYXRlUXVpY2tMb29rSGFuZGxl
Rm9yUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXMKIAogICAgIHJldHVybiBRdWlja0xvb2tIYW5k
bGU6OnNob3VsZENyZWF0ZUZvck1JTUVUeXBlKHJlc3BvbnNlLm1pbWVUeXBlKCkpOwogfQorCiAj
ZW5kaWYKIAogdm9pZCBTdWJyZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGUuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGUuY3BwCmluZGV4IDZmODJlMWRjNzk2YTk2MDIw
OTFiZDY4MmM5NzQ3YzI0OGI5NTRhZDEuLjYwMDljY2E3NzJmZTJiY2E3NjAyYzczMTQ2NzhmZTRh
MjQ4YjU5YmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBs
aWNhdGlvbkNhY2hlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBw
bGljYXRpb25DYWNoZS5jcHAKQEAgLTQzLDE3ICs0MywxMyBAQCBzdGF0aWMgaW5saW5lIGJvb2wg
ZmFsbGJhY2tVUkxMb25nZXJUaGFuKGNvbnN0IHN0ZDo6cGFpcjxVUkwsIFVSTD4mIGxocywgY29u
c3QgcwogfQogCiBBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlKCkKLSAgICA6IG1f
Z3JvdXAobnVsbHB0cikKLSAgICAsIG1fbWFuaWZlc3QobnVsbHB0cikKLSAgICAsIG1fZXN0aW1h
dGVkU2l6ZUluU3RvcmFnZSgwKQotICAgICwgbV9zdG9yYWdlSUQoMCkKIHsKIH0KIAogQXBwbGlj
YXRpb25DYWNoZTo6fkFwcGxpY2F0aW9uQ2FjaGUoKQogewogICAgIGlmIChtX2dyb3VwKQotICAg
ICAgICBtX2dyb3VwLT5jYWNoZURlc3Ryb3llZCh0aGlzKTsKKyAgICAgICAgbV9ncm91cC0+Y2Fj
aGVEZXN0cm95ZWQoKnRoaXMpOwogfQogICAgIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlOjpzZXRH
cm91cChBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwKQpAQCAtNjQsNTcgKzYwLDM5IEBAIHZv
aWQgQXBwbGljYXRpb25DYWNoZTo6c2V0R3JvdXAoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91
cCkKIAogYm9vbCBBcHBsaWNhdGlvbkNhY2hlOjppc0NvbXBsZXRlKCkKIHsKLSAgICByZXR1cm4g
bV9ncm91cCAmJiBtX2dyb3VwLT5jYWNoZUlzQ29tcGxldGUodGhpcyk7CisgICAgcmV0dXJuIG1f
Z3JvdXAgJiYgbV9ncm91cC0+Y2FjaGVJc0NvbXBsZXRlKCp0aGlzKTsKIH0KIAotdm9pZCBBcHBs
aWNhdGlvbkNhY2hlOjpzZXRNYW5pZmVzdFJlc291cmNlKFBhc3NSZWZQdHI8QXBwbGljYXRpb25D
YWNoZVJlc291cmNlPiBtYW5pZmVzdCkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZTo6c2V0TWFuaWZl
c3RSZXNvdXJjZShSZWY8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiYmIG1hbmlmZXN0KQogewot
ICAgIEFTU0VSVChtYW5pZmVzdCk7CiAgICAgQVNTRVJUKCFtX21hbmlmZXN0KTsKICAgICBBU1NF
UlQobWFuaWZlc3QtPnR5cGUoKSAmIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6TWFuaWZlc3Qp
OwotICAgIAotICAgIG1fbWFuaWZlc3QgPSBtYW5pZmVzdC5nZXQoKTsKLSAgICAKLSAgICBhZGRS
ZXNvdXJjZShtYW5pZmVzdCk7CisKKyAgICBtX21hbmlmZXN0ID0gbWFuaWZlc3QucHRyKCk7CisK
KyAgICBhZGRSZXNvdXJjZShXVEZNb3ZlKG1hbmlmZXN0KSk7CiB9CiAgICAgCi12b2lkIEFwcGxp
Y2F0aW9uQ2FjaGU6OmFkZFJlc291cmNlKFBhc3NSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291
cmNlPiByZXNvdXJjZSkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZTo6YWRkUmVzb3VyY2UoUmVmPEFw
cGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4mJiByZXNvdXJjZSkKIHsKLSAgICBBU1NFUlQocmVzb3Vy
Y2UpOwotICAgIAotICAgIGNvbnN0IFN0cmluZyYgdXJsID0gcmVzb3VyY2UtPnVybCgpOwotICAg
IAorICAgIGF1dG8mIHVybCA9IHJlc291cmNlLT51cmwoKTsKKworICAgIEFTU0VSVCghVVJMKFBh
cnNlZFVSTFN0cmluZywgdXJsKS5oYXNGcmFnbWVudElkZW50aWZpZXIoKSk7CiAgICAgQVNTRVJU
KCFtX3Jlc291cmNlcy5jb250YWlucyh1cmwpKTsKLSAgICAKKwogICAgIGlmIChtX3N0b3JhZ2VJ
RCkgewogICAgICAgICBBU1NFUlQoIXJlc291cmNlLT5zdG9yYWdlSUQoKSk7CiAgICAgICAgIEFT
U0VSVChyZXNvdXJjZS0+dHlwZSgpICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIp
OwotICAgICAgICAKKwogICAgICAgICAvLyBBZGQgdGhlIHJlc291cmNlIHRvIHRoZSBzdG9yYWdl
LgotICAgICAgICBtX2dyb3VwLT5zdG9yYWdlKCkuc3RvcmUocmVzb3VyY2UuZ2V0KCksIHRoaXMp
OworICAgICAgICBtX2dyb3VwLT5zdG9yYWdlKCkuc3RvcmUocmVzb3VyY2UucHRyKCksIHRoaXMp
OwogICAgIH0KIAogICAgIG1fZXN0aW1hdGVkU2l6ZUluU3RvcmFnZSArPSByZXNvdXJjZS0+ZXN0
aW1hdGVkU2l6ZUluU3RvcmFnZSgpOwogCi0gICAgbV9yZXNvdXJjZXMuc2V0KHVybCwgcmVzb3Vy
Y2UpOworICAgIG1fcmVzb3VyY2VzLnNldCh1cmwsIFdURk1vdmUocmVzb3VyY2UpKTsKIH0KIAot
dW5zaWduZWQgQXBwbGljYXRpb25DYWNoZTo6cmVtb3ZlUmVzb3VyY2UoY29uc3QgU3RyaW5nJiB1
cmwpCi17Ci0gICAgSGFzaE1hcDxTdHJpbmcsIFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hlUmVzb3Vy
Y2U+Pjo6aXRlcmF0b3IgaXQgPSBtX3Jlc291cmNlcy5maW5kKHVybCk7Ci0gICAgaWYgKGl0ID09
IG1fcmVzb3VyY2VzLmVuZCgpKQotICAgICAgICByZXR1cm4gMDsKLQotICAgIC8vIFRoZSByZXNv
dXJjZSBleGlzdHMsIGdldCBpdHMgdHlwZSBzbyB3ZSBjYW4gcmV0dXJuIGl0LgotICAgIHVuc2ln
bmVkIHR5cGUgPSBpdC0+dmFsdWUtPnR5cGUoKTsKLQotICAgIG1fZXN0aW1hdGVkU2l6ZUluU3Rv
cmFnZSAtPSBpdC0+dmFsdWUtPmVzdGltYXRlZFNpemVJblN0b3JhZ2UoKTsKLQotICAgIG1fcmVz
b3VyY2VzLnJlbW92ZShpdCk7Ci0KLSAgICByZXR1cm4gdHlwZTsKLX0gICAgCi0gICAgCiBBcHBs
aWNhdGlvbkNhY2hlUmVzb3VyY2UqIEFwcGxpY2F0aW9uQ2FjaGU6OnJlc291cmNlRm9yVVJMKGNv
bnN0IFN0cmluZyYgdXJsKQogewogICAgIEFTU0VSVCghVVJMKFBhcnNlZFVSTFN0cmluZywgdXJs
KS5oYXNGcmFnbWVudElkZW50aWZpZXIoKSk7CkBAIC0xMzMsOSArMTExLDcgQEAgQXBwbGljYXRp
b25DYWNoZVJlc291cmNlKiBBcHBsaWNhdGlvbkNhY2hlOjpyZXNvdXJjZUZvclJlcXVlc3QoY29u
c3QgUmVzb3VyY2VSZXEKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKICAgICBVUkwgdXJsKHJl
cXVlc3QudXJsKCkpOwotICAgIGlmICh1cmwuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkpCi0gICAg
ICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKLQorICAgIHVybC5yZW1vdmVGcmFn
bWVudElkZW50aWZpZXIoKTsKICAgICByZXR1cm4gcmVzb3VyY2VGb3JVUkwodXJsKTsKIH0KIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2Fj
aGUuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlLmgK
aW5kZXggNzYxNzY2MjBmY2Q2ZmEzOWFkMmE1YzM5NjFiYWMyM2IxN2E3YzAyNS4uOWE0NThjNzEw
YzRhZDAxOWIxMzVmZjE0NjcwMDZkZjgwOTQ4MTdmYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGUuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZS5oCkBAIC0xLDUgKzEsNSBAQAogLyoK
LSAqIENvcHlyaWdodCAoQykgMjAwOCBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisg
KiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxNyBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQu
CiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTI2LDM1ICsyNiwyOCBAQAogI3By
YWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgotI2luY2x1ZGUgPHd0Zi9IYXNo
U2V0Lmg+Ci0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KLSNpbmNsdWRlIDx3dGYvUmVmQ291
bnRlZC5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0hhc2guaD4KLSNpbmNsdWRlIDx3dGYv
dGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBBcHBsaWNh
dGlvbkNhY2hlR3JvdXA7CiBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U7Ci1jbGFzcyBE
b2N1bWVudExvYWRlcjsKIGNsYXNzIFVSTDsKIGNsYXNzIFJlc291cmNlUmVxdWVzdDsKLWNsYXNz
IFNlY3VyaXR5T3JpZ2luOwogCi10eXBlZGVmIFZlY3RvcjxzdGQ6OnBhaXI8VVJMLCBVUkw+PiBG
YWxsYmFja1VSTFZlY3RvcjsKK3VzaW5nIEZhbGxiYWNrVVJMVmVjdG9yID0gVmVjdG9yPHN0ZDo6
cGFpcjxVUkwsIFVSTD4+OwogCiBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlIDogcHVibGljIFJlZkNv
dW50ZWQ8QXBwbGljYXRpb25DYWNoZT4gewogcHVibGljOgogICAgIHN0YXRpYyBSZWY8QXBwbGlj
YXRpb25DYWNoZT4gY3JlYXRlKCkgeyByZXR1cm4gYWRvcHRSZWYoKm5ldyBBcHBsaWNhdGlvbkNh
Y2hlKTsgfQotICAgIAorCiAgICAgfkFwcGxpY2F0aW9uQ2FjaGUoKTsKIAotICAgIHZvaWQgYWRk
UmVzb3VyY2UoUGFzc1JlZlB0cjxBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+IHJlc291cmNlKTsK
LSAgICB1bnNpZ25lZCByZW1vdmVSZXNvdXJjZShjb25zdCBTdHJpbmcmIHVybCk7Ci0gICAgCi0g
ICAgdm9pZCBzZXRNYW5pZmVzdFJlc291cmNlKFBhc3NSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJl
c291cmNlPiBtYW5pZmVzdCk7CisgICAgdm9pZCBhZGRSZXNvdXJjZShSZWY8QXBwbGljYXRpb25D
YWNoZVJlc291cmNlPiYmKTsKKworICAgIHZvaWQgc2V0TWFuaWZlc3RSZXNvdXJjZShSZWY8QXBw
bGljYXRpb25DYWNoZVJlc291cmNlPiYmKTsKICAgICBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2Uq
IG1hbmlmZXN0UmVzb3VyY2UoKSBjb25zdCB7IHJldHVybiBtX21hbmlmZXN0OyB9Ci0gICAgCisK
ICAgICB2b2lkIHNldEdyb3VwKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCopOwogICAgIEFwcGxpY2F0
aW9uQ2FjaGVHcm91cCogZ3JvdXAoKSBjb25zdCB7IHJldHVybiBtX2dyb3VwOyB9CiAKQEAgLTcy
LDM5ICs2NSwzOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRGYWxsYmFja1VSTHMoY29uc3QgRmFs
bGJhY2tVUkxWZWN0b3ImKTsKICAgICBjb25zdCBGYWxsYmFja1VSTFZlY3RvciYgZmFsbGJhY2tV
UkxzKCkgY29uc3QgeyByZXR1cm4gbV9mYWxsYmFja1VSTHM7IH0KICAgICBib29sIHVybE1hdGNo
ZXNGYWxsYmFja05hbWVzcGFjZShjb25zdCBVUkwmLCBVUkwqIGZhbGxiYWNrVVJMID0gbnVsbHB0
cik7Ci0gICAgCisKICNpZm5kZWYgTkRFQlVHCiAgICAgdm9pZCBkdW1wKCk7CiAjZW5kaWYKIAot
ICAgIHR5cGVkZWYgSGFzaE1hcDxTdHJpbmcsIFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hlUmVzb3Vy
Y2U+PiBSZXNvdXJjZU1hcDsKKyAgICB1c2luZyBSZXNvdXJjZU1hcCA9IEhhc2hNYXA8U3RyaW5n
LCBSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPj47CiAgICAgY29uc3QgUmVzb3VyY2VN
YXAmIHJlc291cmNlcygpIGNvbnN0IHsgcmV0dXJuIG1fcmVzb3VyY2VzOyB9Ci0gICAgCisKICAg
ICB2b2lkIHNldFN0b3JhZ2VJRCh1bnNpZ25lZCBzdG9yYWdlSUQpIHsgbV9zdG9yYWdlSUQgPSBz
dG9yYWdlSUQ7IH0KICAgICB1bnNpZ25lZCBzdG9yYWdlSUQoKSBjb25zdCB7IHJldHVybiBtX3N0
b3JhZ2VJRDsgfQogICAgIHZvaWQgY2xlYXJTdG9yYWdlSUQoKTsKLSAgICAKKwogICAgIHN0YXRp
YyBib29sIHJlcXVlc3RJc0hUVFBPckhUVFBTR2V0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYpOwog
CiAgICAgaW50NjRfdCBlc3RpbWF0ZWRTaXplSW5TdG9yYWdlKCkgY29uc3QgeyByZXR1cm4gbV9l
c3RpbWF0ZWRTaXplSW5TdG9yYWdlOyB9CiAKIHByaXZhdGU6CiAgICAgQXBwbGljYXRpb25DYWNo
ZSgpOwotICAgIAotICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogbV9ncm91cDsKKworICAgIEFw
cGxpY2F0aW9uQ2FjaGVHcm91cCogbV9ncm91cCB7IG51bGxwdHIgfTsKICAgICBSZXNvdXJjZU1h
cCBtX3Jlc291cmNlczsKLSAgICBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqIG1fbWFuaWZlc3Q7
CisgICAgQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiBtX21hbmlmZXN0IHsgbnVsbHB0ciB9Owog
Ci0gICAgYm9vbCBtX2FsbG93QWxsTmV0d29ya1JlcXVlc3RzOworICAgIGJvb2wgbV9hbGxvd0Fs
bE5ldHdvcmtSZXF1ZXN0cyB7IGZhbHNlIH07CiAgICAgVmVjdG9yPFVSTD4gbV9vbmxpbmVXaGl0
ZWxpc3Q7CiAgICAgRmFsbGJhY2tVUkxWZWN0b3IgbV9mYWxsYmFja1VSTHM7CiAKICAgICAvLyBU
aGUgdG90YWwgc2l6ZSBvZiB0aGUgcmVzb3VyY2VzIGJlbG9uZ2luZyB0byB0aGlzIEFwcGxpY2F0
aW9uIENhY2hlIGluc3RhbmNlLgotICAgIC8vIFRoaXMgaXMgYW4gZXN0aW1hdGlvbiBvZiB0aGUg
c2l6ZSB0aGlzIEFwcGxpY2F0aW9uIENhY2hlIG9jY3VwaWVzIGluIHRoZQotICAgIC8vIGRhdGFi
YXNlIGZpbGUuCi0gICAgaW50NjRfdCBtX2VzdGltYXRlZFNpemVJblN0b3JhZ2U7CisgICAgLy8g
VGhpcyBpcyBhbiBlc3RpbWF0aW9uIG9mIHRoZSBzaXplIHRoaXMgQXBwbGljYXRpb24gQ2FjaGUg
b2NjdXBpZXMgaW4gdGhlIGRhdGFiYXNlIGZpbGUuCisgICAgaW50NjRfdCBtX2VzdGltYXRlZFNp
emVJblN0b3JhZ2UgeyAwIH07CiAKLSAgICB1bnNpZ25lZCBtX3N0b3JhZ2VJRDsKKyAgICB1bnNp
Z25lZCBtX3N0b3JhZ2VJRCB7IDAgfTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hl
R3JvdXAuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2Fj
aGVHcm91cC5jcHAKaW5kZXggODZlOWE1YTg4NDkwN2NkZDNkNDZhZmNjZGUwM2Y4ZDNmYTA5ODUz
YS4uOTg4MWIyNWU1YWNiMGZlOTY0MjVmNjdhZGIzNDMxODQxNDdiZTA4ZiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91
cC5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA4LCAyMDA5LCAy
MDEwIEFwcGxlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAw
OC0yMDE3IEFwcGxlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
ICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucwpAQCAtMzQsNiArMzQsNyBAQAogI2luY2x1ZGUgIkNocm9tZUNsaWVudC5o
IgogI2luY2x1ZGUgIkRPTUFwcGxpY2F0aW9uQ2FjaGUuaCIKICNpbmNsdWRlICJEb2N1bWVudExv
YWRlci5oIgorI2luY2x1ZGUgIkV2ZW50TmFtZXMuaCIKICNpbmNsdWRlICJGcmFtZS5oIgogI2lu
Y2x1ZGUgIkZyYW1lTG9hZGVyLmgiCiAjaW5jbHVkZSAiRnJhbWVMb2FkZXJDbGllbnQuaCIKQEAg
LTU0LDE3ICs1NSw3IEBAIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6QXBwbGljYXRpb25DYWNoZUdy
b3VwKFJlZjxBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZT4mJiBzdG9yCiAgICAgOiBtX3N0b3JhZ2Uo
V1RGTW92ZShzdG9yYWdlKSkKICAgICAsIG1fbWFuaWZlc3RVUkwobWFuaWZlc3RVUkwpCiAgICAg
LCBtX29yaWdpbihTZWN1cml0eU9yaWdpbjo6Y3JlYXRlKG1hbmlmZXN0VVJMKSkKLSAgICAsIG1f
dXBkYXRlU3RhdHVzKElkbGUpCi0gICAgLCBtX2Rvd25sb2FkaW5nUGVuZGluZ01hc3RlclJlc291
cmNlTG9hZGVyc0NvdW50KDApCi0gICAgLCBtX3Byb2dyZXNzVG90YWwoMCkKLSAgICAsIG1fcHJv
Z3Jlc3NEb25lKDApCi0gICAgLCBtX2ZyYW1lKG51bGxwdHIpCi0gICAgLCBtX3N0b3JhZ2VJRCgw
KQotICAgICwgbV9pc09ic29sZXRlKGZhbHNlKQotICAgICwgbV9jb21wbGV0aW9uVHlwZShOb25l
KQotICAgICwgbV9jYWxsZWRSZWFjaGVkTWF4QXBwQ2FjaGVTaXplKGZhbHNlKQogICAgICwgbV9h
dmFpbGFibGVTcGFjZUluUXVvdGEoQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OnVua25vd25RdW90
YSgpKQotICAgICwgbV9vcmlnaW5RdW90YUV4Y2VlZGVkUHJldmlvdXNseShmYWxzZSkKIHsKIH0K
IApAQCAtNzIsMTAgKzYzLDEwIEBAIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6fkFwcGxpY2F0aW9u
Q2FjaGVHcm91cCgpCiB7CiAgICAgQVNTRVJUKCFtX25ld2VzdENhY2hlKTsKICAgICBBU1NFUlQo
bV9jYWNoZXMuaXNFbXB0eSgpKTsKLSAgICAKKwogICAgIHN0b3BMb2FkaW5nKCk7CiAKLSAgICBt
X3N0b3JhZ2UtPmNhY2hlR3JvdXBEZXN0cm95ZWQodGhpcyk7CisgICAgbV9zdG9yYWdlLT5jYWNo
ZUdyb3VwRGVzdHJveWVkKCp0aGlzKTsKIH0KICAgICAKIEFwcGxpY2F0aW9uQ2FjaGUqIEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cDo6Y2FjaGVGb3JNYWluUmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVl
c3QmIHJlcXVlc3QsIERvY3VtZW50TG9hZGVyKiBkb2N1bWVudExvYWRlcikKQEAgLTg0LDIxICs3
NSwyMCBAQCBBcHBsaWNhdGlvbkNhY2hlKiBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNhY2hlRm9y
TWFpblJlcXVlc3QoY29uc3QgUmVzb3VyY2VSZXF1ZQogICAgICAgICByZXR1cm4gbnVsbHB0cjsK
IAogICAgIFVSTCB1cmwocmVxdWVzdC51cmwoKSk7Ci0gICAgaWYgKHVybC5oYXNGcmFnbWVudElk
ZW50aWZpZXIoKSkKLSAgICAgICAgdXJsLnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpOworICAg
IHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKIAogICAgIGF1dG8qIHBhZ2UgPSBkb2N1
bWVudExvYWRlci0+ZnJhbWUoKSA/IGRvY3VtZW50TG9hZGVyLT5mcmFtZSgpLT5wYWdlKCkgOiBu
dWxscHRyOwogICAgIGlmICghcGFnZSB8fCBwYWdlLT51c2VzRXBoZW1lcmFsU2Vzc2lvbigpKQog
ICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAotICAgIGlmIChBcHBsaWNhdGlvbkNhY2hlR3JvdXAq
IGdyb3VwID0gcGFnZS0+YXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKS5jYWNoZUdyb3VwRm9yVVJM
KHVybCkpIHsKLSAgICAgICAgQVNTRVJUKGdyb3VwLT5uZXdlc3RDYWNoZSgpKTsKLSAgICAgICAg
QVNTRVJUKCFncm91cC0+aXNPYnNvbGV0ZSgpKTsKLSAgICAgICAgCi0gICAgICAgIHJldHVybiBn
cm91cC0+bmV3ZXN0Q2FjaGUoKTsKLSAgICB9Ci0gICAgCi0gICAgcmV0dXJuIG51bGxwdHI7Cisg
ICAgYXV0byogZ3JvdXAgPSBwYWdlLT5hcHBsaWNhdGlvbkNhY2hlU3RvcmFnZSgpLmNhY2hlR3Jv
dXBGb3JVUkwodXJsKTsKKyAgICBpZiAoIWdyb3VwKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsK
KworICAgIEFTU0VSVChncm91cC0+bmV3ZXN0Q2FjaGUoKSk7CisgICAgQVNTRVJUKCFncm91cC0+
aXNPYnNvbGV0ZSgpKTsKKworICAgIHJldHVybiBncm91cC0+bmV3ZXN0Q2FjaGUoKTsKIH0KICAg
ICAKIEFwcGxpY2F0aW9uQ2FjaGUqIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZmFsbGJhY2tDYWNo
ZUZvck1haW5SZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRG9jdW1lbnRM
b2FkZXIqIGRvY3VtZW50TG9hZGVyKQpAQCAtMTA2LDgxICs5Niw4NyBAQCBBcHBsaWNhdGlvbkNh
Y2hlKiBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmZhbGxiYWNrQ2FjaGVGb3JNYWluUmVxdWVzdChj
b25zdCBSZXNvdQogICAgIGlmICghQXBwbGljYXRpb25DYWNoZTo6cmVxdWVzdElzSFRUUE9ySFRU
UFNHZXQocmVxdWVzdCkpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgVVJMIHVybChy
ZXF1ZXN0LnVybCgpKTsKLSAgICBpZiAodXJsLmhhc0ZyYWdtZW50SWRlbnRpZmllcigpKQotICAg
ICAgICB1cmwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CisgICAgYXV0byogZnJhbWUgPSBk
b2N1bWVudExvYWRlci0+ZnJhbWUoKTsKKyAgICBpZiAoIWZyYW1lKQorICAgICAgICByZXR1cm4g
bnVsbHB0cjsKIAotICAgIGF1dG8qIHBhZ2UgPSBkb2N1bWVudExvYWRlci0+ZnJhbWUoKSA/IGRv
Y3VtZW50TG9hZGVyLT5mcmFtZSgpLT5wYWdlKCkgOiBudWxscHRyOworICAgIGF1dG8qIHBhZ2Ug
PSBmcmFtZS0+cGFnZSgpOwogICAgIGlmICghcGFnZSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7
CiAKLSAgICBpZiAoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCA9IHBhZ2UtPmFwcGxpY2F0
aW9uQ2FjaGVTdG9yYWdlKCkuZmFsbGJhY2tDYWNoZUdyb3VwRm9yVVJMKHVybCkpIHsKLSAgICAg
ICAgQVNTRVJUKGdyb3VwLT5uZXdlc3RDYWNoZSgpKTsKLSAgICAgICAgQVNTRVJUKCFncm91cC0+
aXNPYnNvbGV0ZSgpKTsKKyAgICBVUkwgdXJsKHJlcXVlc3QudXJsKCkpOworICAgIHVybC5yZW1v
dmVGcmFnbWVudElkZW50aWZpZXIoKTsKIAotICAgICAgICByZXR1cm4gZ3JvdXAtPm5ld2VzdENh
Y2hlKCk7Ci0gICAgfQotICAgIAotICAgIHJldHVybiBudWxscHRyOworICAgIGF1dG8qIGdyb3Vw
ID0gcGFnZS0+YXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKS5mYWxsYmFja0NhY2hlR3JvdXBGb3JV
UkwodXJsKTsKKyAgICBpZiAoIWdyb3VwKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAg
IEFTU0VSVChncm91cC0+bmV3ZXN0Q2FjaGUoKSk7CisgICAgQVNTRVJUKCFncm91cC0+aXNPYnNv
bGV0ZSgpKTsKKworICAgIHJldHVybiBncm91cC0+bmV3ZXN0Q2FjaGUoKTsKIH0KIAotdm9pZCBB
cHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVjdENhY2hlKEZyYW1lKiBmcmFtZSwgY29uc3QgVVJM
JiBwYXNzZWRNYW5pZmVzdFVSTCkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZWxlY3RD
YWNoZShGcmFtZSYgZnJhbWUsIGNvbnN0IFVSTCYgcGFzc2VkTWFuaWZlc3RVUkwpCiB7Ci0gICAg
QVNTRVJUKGZyYW1lICYmIGZyYW1lLT5wYWdlKCkpOwotICAgIAotICAgIGlmICghZnJhbWUtPnNl
dHRpbmdzKCkub2ZmbGluZVdlYkFwcGxpY2F0aW9uQ2FjaGVFbmFibGVkKCkpCisgICAgQVNTRVJU
KGZyYW1lLmRvY3VtZW50KCkpOworICAgIEFTU0VSVChmcmFtZS5wYWdlKCkpOworICAgIEFTU0VS
VChmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKTsKKworICAgIGlmICghZnJhbWUuc2V0
dGluZ3MoKS5vZmZsaW5lV2ViQXBwbGljYXRpb25DYWNoZUVuYWJsZWQoKSkKICAgICAgICAgcmV0
dXJuOwotICAgIAotICAgIERvY3VtZW50TG9hZGVyKiBkb2N1bWVudExvYWRlciA9IGZyYW1lLT5s
b2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwotICAgIEFTU0VSVCghZG9jdW1lbnRMb2FkZXItPmFw
cGxpY2F0aW9uQ2FjaGVIb3N0KCktPmFwcGxpY2F0aW9uQ2FjaGUoKSk7CisKKyAgICBhdXRvJiBk
b2N1bWVudExvYWRlciA9ICpmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOworICAgIEFT
U0VSVCghZG9jdW1lbnRMb2FkZXIuYXBwbGljYXRpb25DYWNoZUhvc3QoKS5hcHBsaWNhdGlvbkNh
Y2hlKCkpOwogCiAgICAgaWYgKHBhc3NlZE1hbmlmZXN0VVJMLmlzTnVsbCgpKSB7Ci0gICAgICAg
IHNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0VVJMKGZyYW1lKTsgICAgICAgIAorICAgICAgICBz
ZWxlY3RDYWNoZVdpdGhvdXRNYW5pZmVzdFVSTChmcmFtZSk7CiAgICAgICAgIHJldHVybjsKICAg
ICB9CiAKICAgICAvLyBEb24ndCBhY2Nlc3MgYW55dGhpbmcgb24gZGlzayBpZiBwcml2YXRlIGJy
b3dzaW5nIGlzIGVuYWJsZWQuCi0gICAgaWYgKGZyYW1lLT5wYWdlKCktPnVzZXNFcGhlbWVyYWxT
ZXNzaW9uKCkgfHwgIWZyYW1lLT5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5jYW5BY2Nl
c3NBcHBsaWNhdGlvbkNhY2hlKGZyYW1lLT50cmVlKCkudG9wKCkuZG9jdW1lbnQoKS0+c2VjdXJp
dHlPcmlnaW4oKSkpIHsKLSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hl
SG9zdDo6Q0hFQ0tJTkdfRVZFTlQsIGRvY3VtZW50TG9hZGVyKTsKLSAgICAgICAgcG9zdExpc3Rl
bmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RVJST1JfRVZFTlQsIGRvY3VtZW50TG9hZGVy
KTsKKyAgICBpZiAoZnJhbWUucGFnZSgpLT51c2VzRXBoZW1lcmFsU2Vzc2lvbigpIHx8ICFmcmFt
ZS5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5jYW5BY2Nlc3NBcHBsaWNhdGlvbkNhY2hl
KGZyYW1lLnRyZWUoKS50b3AoKS5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpKSkgeworICAg
ICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5jaGVja2luZ0V2ZW50LCBkb2N1bWVu
dExvYWRlcik7CisgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmVycm9yRXZl
bnQsIGRvY3VtZW50TG9hZGVyKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAogICAgIFVSTCBt
YW5pZmVzdFVSTChwYXNzZWRNYW5pZmVzdFVSTCk7Ci0gICAgaWYgKG1hbmlmZXN0VVJMLmhhc0Zy
YWdtZW50SWRlbnRpZmllcigpKQotICAgICAgICBtYW5pZmVzdFVSTC5yZW1vdmVGcmFnbWVudElk
ZW50aWZpZXIoKTsKKyAgICBtYW5pZmVzdFVSTC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsK
IAotICAgIEFwcGxpY2F0aW9uQ2FjaGUqIG1haW5SZXNvdXJjZUNhY2hlID0gZG9jdW1lbnRMb2Fk
ZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1haW5SZXNvdXJjZUFwcGxpY2F0aW9uQ2FjaGUo
KTsKKyAgICBhdXRvKiBtYWluUmVzb3VyY2VDYWNoZSA9IGRvY3VtZW50TG9hZGVyLmFwcGxpY2F0
aW9uQ2FjaGVIb3N0KCkubWFpblJlc291cmNlQXBwbGljYXRpb25DYWNoZSgpOwogICAgIAogICAg
IGlmIChtYWluUmVzb3VyY2VDYWNoZSkgeworICAgICAgICBBU1NFUlQobWFpblJlc291cmNlQ2Fj
aGUtPmdyb3VwKCkpOwogICAgICAgICBpZiAobWFuaWZlc3RVUkwgPT0gbWFpblJlc291cmNlQ2Fj
aGUtPmdyb3VwKCktPm1fbWFuaWZlc3RVUkwpIHsKICAgICAgICAgICAgIC8vIFRoZSBjYWNoZSBt
YXkgaGF2ZSBnb3R0ZW4gb2Jzb2xldGVkIGFmdGVyIHdlJ3ZlIGxvYWRlZCBmcm9tIGl0LCBidXQg
YmVmb3JlIHdlIHBhcnNlZCB0aGUgZG9jdW1lbnQgYW5kIHNhdyBjYWNoZSBtYW5pZmVzdC4KICAg
ICAgICAgICAgIGlmIChtYWluUmVzb3VyY2VDYWNoZS0+Z3JvdXAoKS0+aXNPYnNvbGV0ZSgpKQog
ICAgICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgICAgIG1haW5SZXNvdXJjZUNhY2hlLT5n
cm91cCgpLT5hc3NvY2lhdGVEb2N1bWVudExvYWRlcldpdGhDYWNoZShkb2N1bWVudExvYWRlciwg
bWFpblJlc291cmNlQ2FjaGUpOworICAgICAgICAgICAgbWFpblJlc291cmNlQ2FjaGUtPmdyb3Vw
KCktPmFzc29jaWF0ZURvY3VtZW50TG9hZGVyV2l0aENhY2hlKCZkb2N1bWVudExvYWRlciwgbWFp
blJlc291cmNlQ2FjaGUpOwogICAgICAgICAgICAgbWFpblJlc291cmNlQ2FjaGUtPmdyb3VwKCkt
PnVwZGF0ZShmcmFtZSwgQXBwbGljYXRpb25DYWNoZVVwZGF0ZVdpdGhCcm93c2luZ0NvbnRleHQp
OwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgLy8gVGhlIG1haW4gcmVzb3VyY2Ugd2Fz
IGxvYWRlZCBmcm9tIGNhY2hlLCBzbyB0aGUgY2FjaGUgbXVzdCBoYXZlIGFuIGVudHJ5IGZvciBp
dC4gTWFyayBpdCBhcyBmb3JlaWduLgotICAgICAgICAgICAgVVJMIHJlc291cmNlVVJMKGRvY3Vt
ZW50TG9hZGVyLT5yZXNwb25zZVVSTCgpKTsKLSAgICAgICAgICAgIGlmIChyZXNvdXJjZVVSTC5o
YXNGcmFnbWVudElkZW50aWZpZXIoKSkKLSAgICAgICAgICAgICAgICByZXNvdXJjZVVSTC5yZW1v
dmVGcmFnbWVudElkZW50aWZpZXIoKTsKLSAgICAgICAgICAgIEFwcGxpY2F0aW9uQ2FjaGVSZXNv
dXJjZSogcmVzb3VyY2UgPSBtYWluUmVzb3VyY2VDYWNoZS0+cmVzb3VyY2VGb3JVUkwocmVzb3Vy
Y2VVUkwpOwotICAgICAgICAgICAgYm9vbCBpblN0b3JhZ2UgPSByZXNvdXJjZS0+c3RvcmFnZUlE
KCk7Ci0gICAgICAgICAgICByZXNvdXJjZS0+YWRkVHlwZShBcHBsaWNhdGlvbkNhY2hlUmVzb3Vy
Y2U6OkZvcmVpZ24pOworICAgICAgICAgICAgVVJMIHJlc291cmNlVVJMIHsgZG9jdW1lbnRMb2Fk
ZXIucmVzcG9uc2VVUkwoKSB9OworICAgICAgICAgICAgcmVzb3VyY2VVUkwucmVtb3ZlRnJhZ21l
bnRJZGVudGlmaWVyKCk7CisKKyAgICAgICAgICAgIEFTU0VSVChtYWluUmVzb3VyY2VDYWNoZS0+
cmVzb3VyY2VGb3JVUkwocmVzb3VyY2VVUkwpKTsKKyAgICAgICAgICAgIGF1dG8mIHJlc291cmNl
ID0gKm1haW5SZXNvdXJjZUNhY2hlLT5yZXNvdXJjZUZvclVSTChyZXNvdXJjZVVSTCk7CisKKyAg
ICAgICAgICAgIGJvb2wgaW5TdG9yYWdlID0gcmVzb3VyY2Uuc3RvcmFnZUlEKCk7CisgICAgICAg
ICAgICByZXNvdXJjZS5hZGRUeXBlKEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6Rm9yZWlnbik7
CiAgICAgICAgICAgICBpZiAoaW5TdG9yYWdlKQotICAgICAgICAgICAgICAgIGZyYW1lLT5wYWdl
KCktPmFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlKCkuc3RvcmVVcGRhdGVkVHlwZShyZXNvdXJjZSwg
bWFpblJlc291cmNlQ2FjaGUpOworICAgICAgICAgICAgICAgIGZyYW1lLnBhZ2UoKS0+YXBwbGlj
YXRpb25DYWNoZVN0b3JhZ2UoKS5zdG9yZVVwZGF0ZWRUeXBlKCZyZXNvdXJjZSwgbWFpblJlc291
cmNlQ2FjaGUpOwogCiAgICAgICAgICAgICAvLyBSZXN0YXJ0IHRoZSBjdXJyZW50IG5hdmlnYXRp
b24gZnJvbSB0aGUgdG9wIG9mIHRoZSBuYXZpZ2F0aW9uIGFsZ29yaXRobSwgdW5kb2luZyBhbnkg
Y2hhbmdlcyB0aGF0IHdlcmUgbWFkZQogICAgICAgICAgICAgLy8gYXMgcGFydCBvZiB0aGUgaW5p
dGlhbCBsb2FkLgogICAgICAgICAgICAgLy8gVGhlIG5hdmlnYXRpb24gd2lsbCBub3QgcmVzdWx0
IGluIHRoZSBzYW1lIHJlc291cmNlIGJlaW5nIGxvYWRlZCwgYmVjYXVzZSAiZm9yZWlnbiIgZW50
cmllcyBhcmUgbmV2ZXIgcGlja2VkIGR1cmluZyBuYXZpZ2F0aW9uLgotICAgICAgICAgICAgZnJh
bWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKGZyYW1lLT5k
b2N1bWVudCgpLCBmcmFtZS0+ZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSwgZG9jdW1lbnRM
b2FkZXItPnVybCgpLCBmcmFtZS0+bG9hZGVyKCkucmVmZXJyZXIoKSk7CisgICAgICAgICAgICBm
cmFtZS5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZSgqZnJhbWUu
ZG9jdW1lbnQoKSwgZnJhbWUuZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSwgZG9jdW1lbnRM
b2FkZXIudXJsKCksIGZyYW1lLmxvYWRlcigpLnJlZmVycmVyKCkpOwogICAgICAgICB9Ci0gICAg
ICAgIAogICAgICAgICByZXR1cm47CiAgICAgfQotICAgIAorCiAgICAgLy8gVGhlIHJlc291cmNl
IHdhcyBsb2FkZWQgZnJvbSB0aGUgbmV0d29yaywgY2hlY2sgaWYgaXQgaXMgYSBIVFRQL0hUVFBT
IEdFVC4gICAgCi0gICAgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0ID0gZnJhbWUtPmxv
YWRlcigpLmFjdGl2ZURvY3VtZW50TG9hZGVyKCktPnJlcXVlc3QoKTsKKyAgICBhdXRvJiByZXF1
ZXN0ID0gZnJhbWUubG9hZGVyKCkuYWN0aXZlRG9jdW1lbnRMb2FkZXIoKS0+cmVxdWVzdCgpOwog
CiAgICAgaWYgKCFBcHBsaWNhdGlvbkNhY2hlOjpyZXF1ZXN0SXNIVFRQT3JIVFRQU0dldChyZXF1
ZXN0KSkKICAgICAgICAgcmV0dXJuOwpAQCAtMTg5LDQ2ICsxODUsNDggQEAgdm9pZCBBcHBsaWNh
dGlvbkNhY2hlR3JvdXA6OnNlbGVjdENhY2hlKEZyYW1lKiBmcmFtZSwgY29uc3QgVVJMJiBwYXNz
ZWRNYW5pZmVzdFUKICAgICBpZiAoIXByb3RvY29sSG9zdEFuZFBvcnRBcmVFcXVhbChtYW5pZmVz
dFVSTCwgcmVxdWVzdC51cmwoKSkpCiAgICAgICAgIHJldHVybjsKIAotICAgIEFwcGxpY2F0aW9u
Q2FjaGVHcm91cCogZ3JvdXAgPSBmcmFtZS0+cGFnZSgpLT5hcHBsaWNhdGlvbkNhY2hlU3RvcmFn
ZSgpLmZpbmRPckNyZWF0ZUNhY2hlR3JvdXAobWFuaWZlc3RVUkwpOworICAgIGF1dG8mIGdyb3Vw
ID0gKmZyYW1lLnBhZ2UoKS0+YXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKS5maW5kT3JDcmVhdGVD
YWNoZUdyb3VwKG1hbmlmZXN0VVJMKTsKIAotICAgIGRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlv
bkNhY2hlSG9zdCgpLT5zZXRDYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoZ3JvdXApOwot
ICAgIGdyb3VwLT5tX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMuYWRkKGRvY3VtZW50TG9h
ZGVyKTsKLSAgICBncm91cC0+bV9kb3dubG9hZGluZ1BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRl
cnNDb3VudCsrOworICAgIGRvY3VtZW50TG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2V0
Q2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKCZncm91cCk7CisgICAgZ3JvdXAubV9wZW5k
aW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLmFkZCgmZG9jdW1lbnRMb2FkZXIpOworICAgIGdyb3Vw
Lm1fZG93bmxvYWRpbmdQZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzQ291bnQrKzsKIAotICAg
IEFTU0VSVCghZ3JvdXAtPm1fY2FjaGVCZWluZ1VwZGF0ZWQgfHwgZ3JvdXAtPm1fdXBkYXRlU3Rh
dHVzICE9IElkbGUpOwotICAgIGdyb3VwLT51cGRhdGUoZnJhbWUsIEFwcGxpY2F0aW9uQ2FjaGVV
cGRhdGVXaXRoQnJvd3NpbmdDb250ZXh0KTsKKyAgICBBU1NFUlQoIWdyb3VwLm1fY2FjaGVCZWlu
Z1VwZGF0ZWQgfHwgZ3JvdXAubV91cGRhdGVTdGF0dXMgIT0gSWRsZSk7CisgICAgZ3JvdXAudXBk
YXRlKGZyYW1lLCBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlV2l0aEJyb3dzaW5nQ29udGV4dCk7CiB9
CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZWxlY3RDYWNoZVdpdGhvdXRNYW5pZmVz
dFVSTChGcmFtZSogZnJhbWUpCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c2VsZWN0Q2Fj
aGVXaXRob3V0TWFuaWZlc3RVUkwoRnJhbWUmIGZyYW1lKQogewotICAgIGlmICghZnJhbWUtPnNl
dHRpbmdzKCkub2ZmbGluZVdlYkFwcGxpY2F0aW9uQ2FjaGVFbmFibGVkKCkpCisgICAgaWYgKCFm
cmFtZS5zZXR0aW5ncygpLm9mZmxpbmVXZWJBcHBsaWNhdGlvbkNhY2hlRW5hYmxlZCgpKQogICAg
ICAgICByZXR1cm47CiAKLSAgICBEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIgPSBmcmFt
ZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKLSAgICBBU1NFUlQoIWRvY3VtZW50TG9hZGVy
LT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5hcHBsaWNhdGlvbkNhY2hlKCkpOworICAgIEFTU0VS
VChmcmFtZS5kb2N1bWVudCgpKTsKKyAgICBBU1NFUlQoZnJhbWUucGFnZSgpKTsKKyAgICBBU1NF
UlQoZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSk7CisgICAgYXV0byYgZG9jdW1lbnRM
b2FkZXIgPSAqZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKKyAgICBBU1NFUlQoIWRv
Y3VtZW50TG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuYXBwbGljYXRpb25DYWNoZSgpKTsK
IAogICAgIC8vIERvbid0IGFjY2VzcyBhbnl0aGluZyBvbiBkaXNrIGlmIHByaXZhdGUgYnJvd3Np
bmcgaXMgZW5hYmxlZC4KLSAgICBpZiAoZnJhbWUtPnBhZ2UoKS0+dXNlc0VwaGVtZXJhbFNlc3Np
b24oKSB8fCAhZnJhbWUtPmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPmNhbkFjY2Vzc0Fw
cGxpY2F0aW9uQ2FjaGUoZnJhbWUtPnRyZWUoKS50b3AoKS5kb2N1bWVudCgpLT5zZWN1cml0eU9y
aWdpbigpKSkgewotICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0
OjpDSEVDS0lOR19FVkVOVCwgZG9jdW1lbnRMb2FkZXIpOwotICAgICAgICBwb3N0TGlzdGVuZXJU
YXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFUlJPUl9FVkVOVCwgZG9jdW1lbnRMb2FkZXIpOwor
ICAgIGlmIChmcmFtZS5wYWdlKCktPnVzZXNFcGhlbWVyYWxTZXNzaW9uKCkgfHwgIWZyYW1lLmRv
Y3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPmNhbkFjY2Vzc0FwcGxpY2F0aW9uQ2FjaGUoZnJh
bWUudHJlZSgpLnRvcCgpLmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCkpKSB7CisgICAgICAg
IHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmNoZWNraW5nRXZlbnQsIGRvY3VtZW50TG9h
ZGVyKTsKKyAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkuZXJyb3JFdmVudCwg
ZG9jdW1lbnRMb2FkZXIpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgQXBwbGljYXRp
b25DYWNoZSogbWFpblJlc291cmNlQ2FjaGUgPSBkb2N1bWVudExvYWRlci0+YXBwbGljYXRpb25D
YWNoZUhvc3QoKS0+bWFpblJlc291cmNlQXBwbGljYXRpb25DYWNoZSgpOwotCi0gICAgaWYgKG1h
aW5SZXNvdXJjZUNhY2hlKSB7Ci0gICAgICAgIG1haW5SZXNvdXJjZUNhY2hlLT5ncm91cCgpLT5h
c3NvY2lhdGVEb2N1bWVudExvYWRlcldpdGhDYWNoZShkb2N1bWVudExvYWRlciwgbWFpblJlc291
cmNlQ2FjaGUpOwotICAgICAgICBtYWluUmVzb3VyY2VDYWNoZS0+Z3JvdXAoKS0+dXBkYXRlKGZy
YW1lLCBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlV2l0aEJyb3dzaW5nQ29udGV4dCk7CisgICAgaWYg
KGF1dG8qIG1haW5SZXNvdXJjZUNhY2hlID0gZG9jdW1lbnRMb2FkZXIuYXBwbGljYXRpb25DYWNo
ZUhvc3QoKS5tYWluUmVzb3VyY2VBcHBsaWNhdGlvbkNhY2hlKCkpIHsKKyAgICAgICAgQVNTRVJU
KG1haW5SZXNvdXJjZUNhY2hlLT5ncm91cCgpKTsKKyAgICAgICAgYXV0byYgZ3JvdXAgPSAqbWFp
blJlc291cmNlQ2FjaGUtPmdyb3VwKCk7CisgICAgICAgIGdyb3VwLmFzc29jaWF0ZURvY3VtZW50
TG9hZGVyV2l0aENhY2hlKCZkb2N1bWVudExvYWRlciwgbWFpblJlc291cmNlQ2FjaGUpOworICAg
ICAgICBncm91cC51cGRhdGUoZnJhbWUsIEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVXaXRoQnJvd3Np
bmdDb250ZXh0KTsKICAgICB9CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpmaW5p
c2hlZExvYWRpbmdNYWluUmVzb3VyY2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlcikKK3ZvaWQgQXBw
bGljYXRpb25DYWNoZUdyb3VwOjpmaW5pc2hlZExvYWRpbmdNYWluUmVzb3VyY2UoRG9jdW1lbnRM
b2FkZXImIGxvYWRlcikKIHsKLSAgICBBU1NFUlQobV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2Fk
ZXJzLmNvbnRhaW5zKGxvYWRlcikpOworICAgIEFTU0VSVChtX3BlbmRpbmdNYXN0ZXJSZXNvdXJj
ZUxvYWRlcnMuY29udGFpbnMoJmxvYWRlcikpOwogICAgIEFTU0VSVChtX2NvbXBsZXRpb25UeXBl
ID09IE5vbmUgfHwgbV9wZW5kaW5nRW50cmllcy5pc0VtcHR5KCkpOwotICAgIFVSTCB1cmwgPSBs
b2FkZXItPnVybCgpOwotICAgIGlmICh1cmwuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkpCi0gICAg
ICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKKyAgICBVUkwgdXJsID0gbG9hZGVy
LnVybCgpOworICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKIAogICAgIHN3aXRj
aCAobV9jb21wbGV0aW9uVHlwZSkgewogICAgIGNhc2UgTm9uZToKQEAgLTIzNiwzNCArMjM0LDMy
IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpmaW5pc2hlZExvYWRpbmdNYWluUmVzb3Vy
Y2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlcikKICAgICAgICAgcmV0dXJuOwogICAgIGNhc2UgTm9V
cGRhdGU6CiAgICAgICAgIEFTU0VSVCghbV9jYWNoZUJlaW5nVXBkYXRlZCk7Ci0gICAgICAgIGFz
c29jaWF0ZURvY3VtZW50TG9hZGVyV2l0aENhY2hlKGxvYWRlciwgbV9uZXdlc3RDYWNoZS5nZXQo
KSk7Ci0KLSAgICAgICAgaWYgKEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSogcmVzb3VyY2UgPSBt
X25ld2VzdENhY2hlLT5yZXNvdXJjZUZvclVSTCh1cmwpKSB7CisgICAgICAgIGFzc29jaWF0ZURv
Y3VtZW50TG9hZGVyV2l0aENhY2hlKCZsb2FkZXIsIG1fbmV3ZXN0Q2FjaGUuZ2V0KCkpOworICAg
ICAgICBpZiAoYXV0byogcmVzb3VyY2UgPSBtX25ld2VzdENhY2hlLT5yZXNvdXJjZUZvclVSTCh1
cmwpKSB7CiAgICAgICAgICAgICBpZiAoIShyZXNvdXJjZS0+dHlwZSgpICYgQXBwbGljYXRpb25D
YWNoZVJlc291cmNlOjpNYXN0ZXIpKSB7CiAgICAgICAgICAgICAgICAgcmVzb3VyY2UtPmFkZFR5
cGUoQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIpOwogICAgICAgICAgICAgICAgIEFT
U0VSVCghcmVzb3VyY2UtPnN0b3JhZ2VJRCgpKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfSBl
bHNlCi0gICAgICAgICAgICBtX25ld2VzdENhY2hlLT5hZGRSZXNvdXJjZShBcHBsaWNhdGlvbkNh
Y2hlUmVzb3VyY2U6OmNyZWF0ZSh1cmwsIGxvYWRlci0+cmVzcG9uc2UoKSwgQXBwbGljYXRpb25D
YWNoZVJlc291cmNlOjpNYXN0ZXIsIGxvYWRlci0+bWFpblJlc291cmNlRGF0YSgpKSk7CisgICAg
ICAgICAgICBtX25ld2VzdENhY2hlLT5hZGRSZXNvdXJjZShBcHBsaWNhdGlvbkNhY2hlUmVzb3Vy
Y2U6OmNyZWF0ZSh1cmwsIGxvYWRlci5yZXNwb25zZSgpLCBBcHBsaWNhdGlvbkNhY2hlUmVzb3Vy
Y2U6Ok1hc3RlciwgbG9hZGVyLm1haW5SZXNvdXJjZURhdGEoKSkpOwogICAgICAgICBicmVhazsK
ICAgICBjYXNlIEZhaWx1cmU6CiAgICAgICAgIC8vIENhY2hlIHVwZGF0ZSBoYXMgYmVlbiBhIGZh
aWx1cmUsIHNvIHRoZXJlIGlzIG5vIHJlYXNvbiB0byBrZWVwIHRoZSBkb2N1bWVudCBhc3NvY2lh
dGVkIHdpdGggdGhlIGluY29tcGxldGUgY2FjaGUKICAgICAgICAgLy8gKGl0cyBtYWluIHJlc291
cmNlIHdhcyBub3QgY2FjaGVkIHlldCwgc28gaXQgaXMgbGlrZWx5IHRoYXQgdGhlIGFwcGxpY2F0
aW9uIGNoYW5nZWQgc2lnbmlmaWNhbnRseSBzZXJ2ZXItc2lkZSkuCiAgICAgICAgIEFTU0VSVCgh
bV9jYWNoZUJlaW5nVXBkYXRlZCk7IC8vIEFscmVhZHkgY2xlYXJlZCBvdXQgYnkgc3RvcExvYWRp
bmcoKS4KLSAgICAgICAgbG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5zZXRBcHBsaWNh
dGlvbkNhY2hlKG51bGxwdHIpOyAvLyBXaWxsIHVuc2V0IGNhbmRpZGF0ZSwgdG9vLgotICAgICAg
ICBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMucmVtb3ZlKGxvYWRlcik7Ci0gICAgICAgIHBv
c3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkVSUk9SX0VWRU5ULCBsb2FkZXIp
OworICAgICAgICBsb2FkZXIuYXBwbGljYXRpb25DYWNoZUhvc3QoKS5zZXRBcHBsaWNhdGlvbkNh
Y2hlKG51bGxwdHIpOyAvLyBXaWxsIHVuc2V0IGNhbmRpZGF0ZSwgdG9vLgorICAgICAgICBtX2Fz
c29jaWF0ZWREb2N1bWVudExvYWRlcnMucmVtb3ZlKCZsb2FkZXIpOworICAgICAgICBwb3N0TGlz
dGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBsb2FkZXIpOwogICAgICAgICBicmVh
azsKICAgICBjYXNlIENvbXBsZXRlZDoKLSAgICAgICAgQVNTRVJUKG1fYXNzb2NpYXRlZERvY3Vt
ZW50TG9hZGVycy5jb250YWlucyhsb2FkZXIpKTsKLQotICAgICAgICBpZiAoQXBwbGljYXRpb25D
YWNoZVJlc291cmNlKiByZXNvdXJjZSA9IG1fY2FjaGVCZWluZ1VwZGF0ZWQtPnJlc291cmNlRm9y
VVJMKHVybCkpIHsKKyAgICAgICAgQVNTRVJUKG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycy5j
b250YWlucygmbG9hZGVyKSk7CisgICAgICAgIGlmIChhdXRvKiByZXNvdXJjZSA9IG1fY2FjaGVC
ZWluZ1VwZGF0ZWQtPnJlc291cmNlRm9yVVJMKHVybCkpIHsKICAgICAgICAgICAgIGlmICghKHJl
c291cmNlLT50eXBlKCkgJiBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6Ok1hc3RlcikpIHsKICAg
ICAgICAgICAgICAgICByZXNvdXJjZS0+YWRkVHlwZShBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6
Ok1hc3Rlcik7CiAgICAgICAgICAgICAgICAgQVNTRVJUKCFyZXNvdXJjZS0+c3RvcmFnZUlEKCkp
OwogICAgICAgICAgICAgfQogICAgICAgICB9IGVsc2UKLSAgICAgICAgICAgIG1fY2FjaGVCZWlu
Z1VwZGF0ZWQtPmFkZFJlc291cmNlKEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6Y3JlYXRlKHVy
bCwgbG9hZGVyLT5yZXNwb25zZSgpLCBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6Ok1hc3Rlciwg
bG9hZGVyLT5tYWluUmVzb3VyY2VEYXRhKCkpKTsKKyAgICAgICAgICAgIG1fY2FjaGVCZWluZ1Vw
ZGF0ZWQtPmFkZFJlc291cmNlKEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6Y3JlYXRlKHVybCwg
bG9hZGVyLnJlc3BvbnNlKCksIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6TWFzdGVyLCBsb2Fk
ZXIubWFpblJlc291cmNlRGF0YSgpKSk7CiAgICAgICAgIC8vIFRoZSAiY2FjaGVkIiBldmVudCB3
aWxsIGJlIHBvc3RlZCB0byBhbGwgYXNzb2NpYXRlZCBkb2N1bWVudHMgb25jZSB1cGRhdGUgaXMg
Y29tcGxldGUuCiAgICAgICAgIGJyZWFrOwogICAgIH0KQEAgLTI3Myw5ICsyNjksOSBAQCB2b2lk
IEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKERvY3Vt
ZW50TG9hZGVyKiBsb2FkZXIpCiAgICAgY2hlY2tJZkxvYWRJc0NvbXBsZXRlKCk7CiB9CiAKLXZv
aWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKERvY3Vt
ZW50TG9hZGVyKiBsb2FkZXIpCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZmFpbGVkTG9h
ZGluZ01haW5SZXNvdXJjZShEb2N1bWVudExvYWRlciYgbG9hZGVyKQogewotICAgIEFTU0VSVCht
X3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMuY29udGFpbnMobG9hZGVyKSk7CisgICAgQVNT
RVJUKG1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5jb250YWlucygmbG9hZGVyKSk7CiAg
ICAgQVNTRVJUKG1fY29tcGxldGlvblR5cGUgPT0gTm9uZSB8fCBtX3BlbmRpbmdFbnRyaWVzLmlz
RW1wdHkoKSk7CiAKICAgICBzd2l0Y2ggKG1fY29tcGxldGlvblR5cGUpIHsKQEAgLTI4NCwzMiAr
MjgwLDI3IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpmYWlsZWRMb2FkaW5nTWFpblJl
c291cmNlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCiAgICAgICAgIHJldHVybjsKICAgICBjYXNl
IE5vVXBkYXRlOgogICAgICAgICBBU1NFUlQoIW1fY2FjaGVCZWluZ1VwZGF0ZWQpOwotCiAgICAg
ICAgIC8vIFRoZSBtYW5pZmVzdCBkaWRuJ3QgY2hhbmdlLCBhbmQgd2UgaGF2ZSBhIHJlbGV2YW50
IGNhY2hlIC0gYnV0IHRoZSBtYWluIHJlc291cmNlIGRvd25sb2FkIGZhaWxlZCBtaWQtd2F5LCBz
byBpdCBjYW5ub3QgYmUgc3RvcmVkIHRvIHRoZSBjYWNoZSwKICAgICAgICAgLy8gYW5kIHRoZSBs
b2FkZXIgZG9lcyBub3QgZ2V0IGFzc29jaWF0ZWQgdG8gaXQuIElmIHRoZXJlIGFyZSBvdGhlciBt
YWluIHJlc291cmNlcyBiZWluZyBkb3dubG9hZGVkIGZvciB0aGlzIGNhY2hlIGdyb3VwLCB0aGV5
IG1heSBzdGlsbCBzdWNjZWVkLgotICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9u
Q2FjaGVIb3N0OjpFUlJPUl9FVkVOVCwgbG9hZGVyKTsKLQorICAgICAgICBwb3N0TGlzdGVuZXJU
YXNrKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBsb2FkZXIpOwogICAgICAgICBicmVhazsKICAg
ICBjYXNlIEZhaWx1cmU6CiAgICAgICAgIC8vIENhY2hlIHVwZGF0ZSBmYWlsZWQsIHRvby4KICAg
ICAgICAgQVNTRVJUKCFtX2NhY2hlQmVpbmdVcGRhdGVkKTsgLy8gQWxyZWFkeSBjbGVhcmVkIG91
dCBieSBzdG9wTG9hZGluZygpLgotICAgICAgICBBU1NFUlQoIWxvYWRlci0+YXBwbGljYXRpb25D
YWNoZUhvc3QoKS0+YXBwbGljYXRpb25DYWNoZSgpIHx8IGxvYWRlci0+YXBwbGljYXRpb25DYWNo
ZUhvc3QoKS0+YXBwbGljYXRpb25DYWNoZSgpLT5ncm91cCgpID09IHRoaXMpOwotCi0gICAgICAg
IGxvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+c2V0QXBwbGljYXRpb25DYWNoZShudWxs
cHRyKTsgLy8gV2lsbCB1bnNldCBjYW5kaWRhdGUsIHRvby4KLSAgICAgICAgbV9hc3NvY2lhdGVk
RG9jdW1lbnRMb2FkZXJzLnJlbW92ZShsb2FkZXIpOwotICAgICAgICBwb3N0TGlzdGVuZXJUYXNr
KEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFUlJPUl9FVkVOVCwgbG9hZGVyKTsKKyAgICAgICAgQVNT
RVJUKCFsb2FkZXIuYXBwbGljYXRpb25DYWNoZUhvc3QoKS5hcHBsaWNhdGlvbkNhY2hlKCkgfHwg
bG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuYXBwbGljYXRpb25DYWNoZSgpLT5ncm91cCgp
ID09IHRoaXMpOworICAgICAgICBsb2FkZXIuYXBwbGljYXRpb25DYWNoZUhvc3QoKS5zZXRBcHBs
aWNhdGlvbkNhY2hlKG51bGxwdHIpOyAvLyBXaWxsIHVuc2V0IGNhbmRpZGF0ZSwgdG9vLgorICAg
ICAgICBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMucmVtb3ZlKCZsb2FkZXIpOworICAgICAg
ICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBsb2FkZXIpOwogICAg
ICAgICBicmVhazsKICAgICBjYXNlIENvbXBsZXRlZDoKICAgICAgICAgLy8gVGhlIGNhY2hlIG1h
bmlmZXN0IGRpZG4ndCBsaXN0IHRoaXMgbWFpbiByZXNvdXJjZSwgYW5kIGFsbCBjYWNoZSBlbnRy
aWVzIHdlcmUgYWxyZWFkeSB1cGRhdGVkIHN1Y2Nlc3NmdWxseSAtIGJ1dCB0aGUgbWFpbiByZXNv
dXJjZSBmYWlsZWQgdG8gbG9hZCwKICAgICAgICAgLy8gc28gaXQgY2Fubm90IGJlIHN0b3JlZCB0
byB0aGUgY2FjaGUuIElmIHRoZXJlIGFyZSBvdGhlciBtYWluIHJlc291cmNlcyBiZWluZyBkb3du
bG9hZGVkIGZvciB0aGlzIGNhY2hlIGdyb3VwLCB0aGV5IG1heSBzdGlsbCBzdWNjZWVkLgotICAg
ICAgICBBU1NFUlQobV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzLmNvbnRhaW5zKGxvYWRlcikp
OwotICAgICAgICBBU1NFUlQobG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5hcHBsaWNh
dGlvbkNhY2hlKCkgPT0gbV9jYWNoZUJlaW5nVXBkYXRlZCk7Ci0gICAgICAgIEFTU0VSVCghbG9h
ZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3Jv
dXAoKSk7Ci0gICAgICAgIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycy5yZW1vdmUobG9hZGVy
KTsKLSAgICAgICAgbG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5zZXRBcHBsaWNhdGlv
bkNhY2hlKG51bGxwdHIpOwotCi0gICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25D
YWNoZUhvc3Q6OkVSUk9SX0VWRU5ULCBsb2FkZXIpOwotCisgICAgICAgIEFTU0VSVChtX2Fzc29j
aWF0ZWREb2N1bWVudExvYWRlcnMuY29udGFpbnMoJmxvYWRlcikpOworICAgICAgICBBU1NFUlQo
bG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuYXBwbGljYXRpb25DYWNoZSgpID09IG1fY2Fj
aGVCZWluZ1VwZGF0ZWQpOworICAgICAgICBBU1NFUlQoIWxvYWRlci5hcHBsaWNhdGlvbkNhY2hl
SG9zdCgpLmNhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCgpKTsKKyAgICAgICAgbV9hc3Nv
Y2lhdGVkRG9jdW1lbnRMb2FkZXJzLnJlbW92ZSgmbG9hZGVyKTsKKyAgICAgICAgbG9hZGVyLmFw
cGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2V0QXBwbGljYXRpb25DYWNoZShudWxscHRyKTsKKyAgICAg
ICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkuZXJyb3JFdmVudCwgbG9hZGVyKTsKICAg
ICAgICAgYnJlYWs7CiAgICAgfQogCkBAIC0zNDYsMTIgKzMzNywxMiBAQCB2b2lkIEFwcGxpY2F0
aW9uQ2FjaGVHcm91cDo6c3RvcExvYWRpbmcoKQogICAgIG1fcGVuZGluZ0VudHJpZXMuY2xlYXIo
KTsKIH0gICAgCiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpkaXNhc3NvY2lhdGVEb2N1
bWVudExvYWRlcihEb2N1bWVudExvYWRlciogbG9hZGVyKQordm9pZCBBcHBsaWNhdGlvbkNhY2hl
R3JvdXA6OmRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKERvY3VtZW50TG9hZGVyJiBsb2FkZXIp
CiB7Ci0gICAgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzLnJlbW92ZShsb2FkZXIpOwotICAg
IG1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5yZW1vdmUobG9hZGVyKTsKKyAgICBtX2Fz
c29jaWF0ZWREb2N1bWVudExvYWRlcnMucmVtb3ZlKCZsb2FkZXIpOworICAgIG1fcGVuZGluZ01h
c3RlclJlc291cmNlTG9hZGVycy5yZW1vdmUoJmxvYWRlcik7CiAKLSAgICBpZiAoYXV0byogaG9z
dCA9IGxvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKSkKKyAgICBpZiAoYXV0byogaG9zdCA9
IGxvYWRlci5hcHBsaWNhdGlvbkNhY2hlSG9zdFVubGVzc0JlaW5nRGVzdHJveWVkKCkpCiAgICAg
ICAgIGhvc3QtPnNldEFwcGxpY2F0aW9uQ2FjaGUobnVsbHB0cik7IC8vIFdpbGwgc2V0IGNhbmRp
ZGF0ZSBncm91cCB0byBudWxsLCB0b28uCiAKICAgICBpZiAoIW1fYXNzb2NpYXRlZERvY3VtZW50
TG9hZGVycy5pc0VtcHR5KCkgfHwgIW1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5pc0Vt
cHR5KCkpCkBAIC0zNzIsMjYgKzM2MywyNiBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6
ZGlzYXNzb2NpYXRlRG9jdW1lbnRMb2FkZXIoRG9jdW1lbnRMb2FkZXIqIGxvYWRlcikKICAgICBt
X25ld2VzdENhY2hlID0gbnVsbHB0cjsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
OmNhY2hlRGVzdHJveWVkKEFwcGxpY2F0aW9uQ2FjaGUqIGNhY2hlKQordm9pZCBBcHBsaWNhdGlv
bkNhY2hlR3JvdXA6OmNhY2hlRGVzdHJveWVkKEFwcGxpY2F0aW9uQ2FjaGUmIGNhY2hlKQogewot
ICAgIGlmIChtX2NhY2hlcy5yZW1vdmUoY2FjaGUpICYmIG1fY2FjaGVzLmlzRW1wdHkoKSkgewor
ICAgIGlmIChtX2NhY2hlcy5yZW1vdmUoJmNhY2hlKSAmJiBtX2NhY2hlcy5pc0VtcHR5KCkpIHsK
ICAgICAgICAgQVNTRVJUKG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycy5pc0VtcHR5KCkpOwog
ICAgICAgICBBU1NFUlQobV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLmlzRW1wdHkoKSk7
CiAgICAgICAgIGRlbGV0ZSB0aGlzOwogICAgIH0KIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hl
R3JvdXA6OnN0b3BMb2FkaW5nSW5GcmFtZShGcmFtZSogZnJhbWUpCit2b2lkIEFwcGxpY2F0aW9u
Q2FjaGVHcm91cDo6c3RvcExvYWRpbmdJbkZyYW1lKEZyYW1lJiBmcmFtZSkKIHsKLSAgICBpZiAo
ZnJhbWUgIT0gbV9mcmFtZSkKKyAgICBpZiAoJmZyYW1lICE9IG1fZnJhbWUpCiAgICAgICAgIHJl
dHVybjsKIAogICAgIGNhY2hlVXBkYXRlRmFpbGVkKCk7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25D
YWNoZUdyb3VwOjpzZXROZXdlc3RDYWNoZShQYXNzUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+IG5l
d2VzdENhY2hlKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNldE5ld2VzdENhY2hlKFJl
ZjxBcHBsaWNhdGlvbkNhY2hlPiYmIG5ld2VzdENhY2hlKQogewotICAgIG1fbmV3ZXN0Q2FjaGUg
PSBuZXdlc3RDYWNoZTsKKyAgICBtX25ld2VzdENhY2hlID0gV1RGTW92ZShuZXdlc3RDYWNoZSk7
CiAKICAgICBtX2NhY2hlcy5hZGQobV9uZXdlc3RDYWNoZS5nZXQoKSk7CiAgICAgbV9uZXdlc3RD
YWNoZS0+c2V0R3JvdXAodGhpcyk7CkBAIC00MDMsNDAgKzM5NCw0MyBAQCB2b2lkIEFwcGxpY2F0
aW9uQ2FjaGVHcm91cDo6bWFrZU9ic29sZXRlKCkKICAgICAgICAgcmV0dXJuOwogCiAgICAgbV9p
c09ic29sZXRlID0gdHJ1ZTsKLSAgICBtX3N0b3JhZ2UtPmNhY2hlR3JvdXBNYWRlT2Jzb2xldGUo
dGhpcyk7CisgICAgbV9zdG9yYWdlLT5jYWNoZUdyb3VwTWFkZU9ic29sZXRlKCp0aGlzKTsKICAg
ICBBU1NFUlQoIW1fc3RvcmFnZUlEKTsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
OnVwZGF0ZShGcmFtZSogZnJhbWUsIEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVPcHRpb24gdXBkYXRl
T3B0aW9uKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnVwZGF0ZShGcmFtZSYgZnJhbWUs
IEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVPcHRpb24gdXBkYXRlT3B0aW9uKQogeworICAgIEFTU0VS
VChmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKTsKKyAgICBhdXRvJiBkb2N1bWVudExv
YWRlciA9ICpmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOworCiAgICAgaWYgKG1fdXBk
YXRlU3RhdHVzID09IENoZWNraW5nIHx8IG1fdXBkYXRlU3RhdHVzID09IERvd25sb2FkaW5nKSB7
CiAgICAgICAgIGlmICh1cGRhdGVPcHRpb24gPT0gQXBwbGljYXRpb25DYWNoZVVwZGF0ZVdpdGhC
cm93c2luZ0NvbnRleHQpIHsKLSAgICAgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRp
b25DYWNoZUhvc3Q6OkNIRUNLSU5HX0VWRU5ULCBmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2Fk
ZXIoKSk7CisgICAgICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5jaGVja2lu
Z0V2ZW50LCBkb2N1bWVudExvYWRlcik7CiAgICAgICAgICAgICBpZiAobV91cGRhdGVTdGF0dXMg
PT0gRG93bmxvYWRpbmcpCi0gICAgICAgICAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNh
dGlvbkNhY2hlSG9zdDo6RE9XTkxPQURJTkdfRVZFTlQsIGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVu
dExvYWRlcigpKTsKKyAgICAgICAgICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMo
KS5kb3dubG9hZGluZ0V2ZW50LCBkb2N1bWVudExvYWRlcik7CiAgICAgICAgIH0KICAgICAgICAg
cmV0dXJuOwogICAgIH0KIAogICAgIC8vIERvbid0IGFjY2VzcyBhbnl0aGluZyBvbiBkaXNrIGlm
IHByaXZhdGUgYnJvd3NpbmcgaXMgZW5hYmxlZC4KLSAgICBpZiAoZnJhbWUtPnBhZ2UoKS0+dXNl
c0VwaGVtZXJhbFNlc3Npb24oKSB8fCAhZnJhbWUtPmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2lu
KCktPmNhbkFjY2Vzc0FwcGxpY2F0aW9uQ2FjaGUoZnJhbWUtPnRyZWUoKS50b3AoKS5kb2N1bWVu
dCgpLT5zZWN1cml0eU9yaWdpbigpKSkgeworICAgIGlmIChmcmFtZS5wYWdlKCktPnVzZXNFcGhl
bWVyYWxTZXNzaW9uKCkgfHwgIWZyYW1lLmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPmNh
bkFjY2Vzc0FwcGxpY2F0aW9uQ2FjaGUoZnJhbWUudHJlZSgpLnRvcCgpLmRvY3VtZW50KCktPnNl
Y3VyaXR5T3JpZ2luKCkpKSB7CiAgICAgICAgIEFTU0VSVChtX3BlbmRpbmdNYXN0ZXJSZXNvdXJj
ZUxvYWRlcnMuaXNFbXB0eSgpKTsKICAgICAgICAgQVNTRVJUKG1fcGVuZGluZ0VudHJpZXMuaXNF
bXB0eSgpKTsKICAgICAgICAgQVNTRVJUKCFtX2NhY2hlQmVpbmdVcGRhdGVkKTsKLSAgICAgICAg
cG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q0hFQ0tJTkdfRVZFTlQsIGZy
YW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKTsKLSAgICAgICAgcG9zdExpc3RlbmVyVGFz
ayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RVJST1JfRVZFTlQsIGZyYW1lLT5sb2FkZXIoKS5kb2N1
bWVudExvYWRlcigpKTsKKyAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkuY2hl
Y2tpbmdFdmVudCwgZG9jdW1lbnRMb2FkZXIpOworICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2
ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBkb2N1bWVudExvYWRlcik7CiAgICAgICAgIHJldHVybjsK
ICAgICB9CiAKICAgICBBU1NFUlQoIW1fZnJhbWUpOwotICAgIG1fZnJhbWUgPSBmcmFtZTsKKyAg
ICBtX2ZyYW1lID0gJmZyYW1lOwogCiAgICAgc2V0VXBkYXRlU3RhdHVzKENoZWNraW5nKTsKIAot
ICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNIRUNLSU5HX0VWRU5U
LCBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOworICAgIHBvc3RMaXN0ZW5lclRhc2soZXZl
bnROYW1lcygpLmNoZWNraW5nRXZlbnQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CiAg
ICAgaWYgKCFtX25ld2VzdENhY2hlKSB7CiAgICAgICAgIEFTU0VSVCh1cGRhdGVPcHRpb24gPT0g
QXBwbGljYXRpb25DYWNoZVVwZGF0ZVdpdGhCcm93c2luZ0NvbnRleHQpOwotICAgICAgICBwb3N0
TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDSEVDS0lOR19FVkVOVCwgZnJhbWUt
PmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkpOworICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2
ZW50TmFtZXMoKS5jaGVja2luZ0V2ZW50LCBkb2N1bWVudExvYWRlcik7CiAgICAgfQogICAgIAog
ICAgIEFTU0VSVCghbV9tYW5pZmVzdEhhbmRsZSk7CkBAIC00NDksNyArNDQzLDcgQEAgdm9pZCBB
cHBsaWNhdGlvbkNhY2hlR3JvdXA6OnVwZGF0ZShGcmFtZSogZnJhbWUsIEFwcGxpY2F0aW9uQ2Fj
aGVVcGRhdGVPcHRpb24gdXAKICAgICBtX21hbmlmZXN0SGFuZGxlID0gY3JlYXRlUmVzb3VyY2VI
YW5kbGUobV9tYW5pZmVzdFVSTCwgbV9uZXdlc3RDYWNoZSA/IG1fbmV3ZXN0Q2FjaGUtPm1hbmlm
ZXN0UmVzb3VyY2UoKSA6IDApOwogfQogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6YWJv
cnQoRnJhbWUqIGZyYW1lKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFib3J0KEZyYW1l
JiBmcmFtZSkKIHsKICAgICBpZiAobV91cGRhdGVTdGF0dXMgPT0gSWRsZSkKICAgICAgICAgcmV0
dXJuOwpAQCAtNDU4LDcgKzQ1Miw3IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjphYm9y
dChGcmFtZSogZnJhbWUpCiAgICAgaWYgKG1fY29tcGxldGlvblR5cGUgIT0gTm9uZSkKICAgICAg
ICAgcmV0dXJuOwogCi0gICAgZnJhbWUtPmRvY3VtZW50KCktPmFkZENvbnNvbGVNZXNzYWdlKE1l
c3NhZ2VTb3VyY2U6OkFwcENhY2hlLCBNZXNzYWdlTGV2ZWw6OkRlYnVnLCBBU0NJSUxpdGVyYWwo
IkFwcGxpY2F0aW9uIENhY2hlIGRvd25sb2FkIHByb2Nlc3Mgd2FzIGFib3J0ZWQuIikpOworICAg
IGZyYW1lLmRvY3VtZW50KCktPmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OkFwcENh
Y2hlLCBNZXNzYWdlTGV2ZWw6OkRlYnVnLCBBU0NJSUxpdGVyYWwoIkFwcGxpY2F0aW9uIENhY2hl
IGRvd25sb2FkIHByb2Nlc3Mgd2FzIGFib3J0ZWQuIikpOwogICAgIGNhY2hlVXBkYXRlRmFpbGVk
KCk7CiB9CiAKQEAgLTUwMiw4ICs0OTYsNyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6
ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlSGFuZGxlKiBoYW5kbGUsIFJlc291cmNlUgogICAg
IEFTU0VSVChoYW5kbGUgPT0gbV9jdXJyZW50SGFuZGxlKTsKIAogICAgIFVSTCB1cmwoaGFuZGxl
LT5maXJzdFJlcXVlc3QoKS51cmwoKSk7Ci0gICAgaWYgKHVybC5oYXNGcmFnbWVudElkZW50aWZp
ZXIoKSkKLSAgICAgICAgdXJsLnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpOworICAgIHVybC5y
ZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKICAgICAKICAgICBBU1NFUlQoIW1fY3VycmVudFJl
c291cmNlKTsKICAgICBBU1NFUlQobV9wZW5kaW5nRW50cmllcy5jb250YWlucyh1cmwpKTsKQEAg
LTU5Myw3ICs1ODYsNyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZGlkRmluaXNoTG9h
ZGluZyhSZXNvdXJjZUhhbmRsZSogaGFuZGxlLCBkb3VibGUgZmluaQogICAgIAogICAgIEFTU0VS
VChtX2NhY2hlQmVpbmdVcGRhdGVkKTsKIAotICAgIG1fY2FjaGVCZWluZ1VwZGF0ZWQtPmFkZFJl
c291cmNlKFdURk1vdmUobV9jdXJyZW50UmVzb3VyY2UpKTsKKyAgICBtX2NhY2hlQmVpbmdVcGRh
dGVkLT5hZGRSZXNvdXJjZShtX2N1cnJlbnRSZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAg
ICBtX2N1cnJlbnRIYW5kbGUgPSBudWxscHRyOwogCiAgICAgLy8gV2hpbGUgZG93bmxvYWRpbmcg
Y2hlY2sgdG8gc2VlIGlmIHdlIGhhdmUgZXhjZWVkZWQgdGhlIGF2YWlsYWJsZSBxdW90YS4KQEAg
LTYyNiw4ICs2MTksNyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZGlkRmFpbChSZXNv
dXJjZUhhbmRsZSogaGFuZGxlLCBjb25zdCBSZXNvdXJjZUVycm9yJgogCiAgICAgdW5zaWduZWQg
dHlwZSA9IG1fY3VycmVudFJlc291cmNlID8gbV9jdXJyZW50UmVzb3VyY2UtPnR5cGUoKSA6IG1f
cGVuZGluZ0VudHJpZXMuZ2V0KGhhbmRsZS0+Zmlyc3RSZXF1ZXN0KCkudXJsKCkpOwogICAgIFVS
TCB1cmwoaGFuZGxlLT5maXJzdFJlcXVlc3QoKS51cmwoKSk7Ci0gICAgaWYgKHVybC5oYXNGcmFn
bWVudElkZW50aWZpZXIoKSkKLSAgICAgICAgdXJsLnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigp
OworICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKIAogICAgIEFTU0VSVCghbV9j
dXJyZW50UmVzb3VyY2UgfHwgIW1fcGVuZGluZ0VudHJpZXMuY29udGFpbnModXJsKSk7CiAgICAg
bV9jdXJyZW50UmVzb3VyY2UgPSBudWxscHRyOwpAQCAtNzM0LDcgKzcyNiw3IEBAIHZvaWQgQXBw
bGljYXRpb25DYWNoZUdyb3VwOjpkaWRGaW5pc2hMb2FkaW5nTWFuaWZlc3QoKQogICAgIC8vIFdl
IGhhdmUgdGhlIG1hbmlmZXN0LCBub3cgZG93bmxvYWQgdGhlIHJlc291cmNlcy4KICAgICBzZXRV
cGRhdGVTdGF0dXMoRG93bmxvYWRpbmcpOwogICAgIAotICAgIHBvc3RMaXN0ZW5lclRhc2soQXBw
bGljYXRpb25DYWNoZUhvc3Q6OkRPV05MT0FESU5HX0VWRU5ULCBtX2Fzc29jaWF0ZWREb2N1bWVu
dExvYWRlcnMpOworICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmRvd25sb2FkaW5n
RXZlbnQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CiAKICAgICBBU1NFUlQobV9wZW5k
aW5nRW50cmllcy5pc0VtcHR5KCkpOwogCkBAIC04MDIsOCArNzk0LDggQEAgdm9pZCBBcHBsaWNh
dGlvbkNhY2hlR3JvdXA6Om1hbmlmZXN0Tm90Rm91bmQoKQogewogICAgIG1ha2VPYnNvbGV0ZSgp
OwogCi0gICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6T0JTT0xFVEVf
RVZFTlQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7Ci0gICAgcG9zdExpc3RlbmVyVGFz
ayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RVJST1JfRVZFTlQsIG1fcGVuZGluZ01hc3RlclJlc291
cmNlTG9hZGVycyk7CisgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkub2Jzb2xldGVF
dmVudCwgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsKKyAgICBwb3N0TGlzdGVuZXJUYXNr
KGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMp
OwogCiAgICAgc3RvcExvYWRpbmcoKTsKIApAQCAtODEzLDE2ICs4MDUsMTYgQEAgdm9pZCBBcHBs
aWNhdGlvbkNhY2hlR3JvdXA6Om1hbmlmZXN0Tm90Rm91bmQoKQogICAgIHdoaWxlICghbV9wZW5k
aW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLmlzRW1wdHkoKSkgewogICAgICAgICBIYXNoU2V0PERv
Y3VtZW50TG9hZGVyKj46Oml0ZXJhdG9yIGl0ID0gbV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2Fk
ZXJzLmJlZ2luKCk7CiAgICAgICAgIAotICAgICAgICBBU1NFUlQoKCppdCktPmFwcGxpY2F0aW9u
Q2FjaGVIb3N0KCktPmNhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCgpID09IHRoaXMpOwot
ICAgICAgICBBU1NFUlQoISgqaXQpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5hcHBsaWNhdGlv
bkNhY2hlKCkpOwotICAgICAgICAoKml0KS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+c2V0Q2Fu
ZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKG51bGxwdHIpOworICAgICAgICBBU1NFUlQoKCpp
dCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3Vw
KCkgPT0gdGhpcyk7CisgICAgICAgIEFTU0VSVCghKCppdCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCkuYXBwbGljYXRpb25DYWNoZSgpKTsKKyAgICAgICAgKCppdCktPmFwcGxpY2F0aW9uQ2FjaGVI
b3N0KCkuc2V0Q2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKG51bGxwdHIpOwogICAgICAg
ICBtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMucmVtb3ZlKGl0KTsKICAgICB9CiAKICAg
ICBtX2Rvd25sb2FkaW5nUGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVyc0NvdW50ID0gMDsKICAg
ICBzZXRVcGRhdGVTdGF0dXMoSWRsZSk7ICAgIAogICAgIG1fZnJhbWUgPSBudWxscHRyOwotICAg
IAorCiAgICAgaWYgKG1fY2FjaGVzLmlzRW1wdHkoKSkgewogICAgICAgICBBU1NFUlQobV9hc3Nv
Y2lhdGVkRG9jdW1lbnRMb2FkZXJzLmlzRW1wdHkoKSk7CiAgICAgICAgIEFTU0VSVCghbV9jYWNo
ZUJlaW5nVXBkYXRlZCk7CkBAIC04NDksMTMgKzg0MSwxMyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2Fj
aGVHcm91cDo6Y2hlY2tJZkxvYWRJc0NvbXBsZXRlKCkKIAogICAgICAgICAvLyBUaGUgc3RvcmFn
ZSBjb3VsZCBoYXZlIGJlZW4gbWFudWFsbHkgZW1wdGllZCBieSB0aGUgdXNlci4KICAgICAgICAg
aWYgKCFtX3N0b3JhZ2VJRCkKLSAgICAgICAgICAgIG1fc3RvcmFnZS0+c3RvcmVOZXdlc3RDYWNo
ZSh0aGlzKTsKKyAgICAgICAgICAgIG1fc3RvcmFnZS0+c3RvcmVOZXdlc3RDYWNoZSgqdGhpcyk7
CiAKLSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Tk9VUERB
VEVfRVZFTlQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CisgICAgICAgIHBvc3RMaXN0
ZW5lclRhc2soZXZlbnROYW1lcygpLm5vdXBkYXRlRXZlbnQsIG1fYXNzb2NpYXRlZERvY3VtZW50
TG9hZGVycyk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgRmFpbHVyZToKICAgICAgICAgQVNT
RVJUKCFtX2NhY2hlQmVpbmdVcGRhdGVkKTsKLSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6RVJST1JfRVZFTlQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVy
cyk7CisgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmVycm9yRXZlbnQsIG1f
YXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CiAgICAgICAgIGlmIChtX2NhY2hlcy5pc0VtcHR5
KCkpIHsKICAgICAgICAgICAgIEFTU0VSVChtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMuaXNF
bXB0eSgpKTsKICAgICAgICAgICAgIGRlbGV0ZSB0aGlzOwpAQCAtODY3LDcgKzg1OSw3IEBAIHZv
aWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpjaGVja0lmTG9hZElzQ29tcGxldGUoKQogCiAgICAg
ICAgIEFTU0VSVChtX2NhY2hlQmVpbmdVcGRhdGVkKTsKICAgICAgICAgaWYgKG1fbWFuaWZlc3RS
ZXNvdXJjZSkKLSAgICAgICAgICAgIG1fY2FjaGVCZWluZ1VwZGF0ZWQtPnNldE1hbmlmZXN0UmVz
b3VyY2UoV1RGTW92ZShtX21hbmlmZXN0UmVzb3VyY2UpKTsKKyAgICAgICAgICAgIG1fY2FjaGVC
ZWluZ1VwZGF0ZWQtPnNldE1hbmlmZXN0UmVzb3VyY2UobV9tYW5pZmVzdFJlc291cmNlLnJlbGVh
c2VOb25OdWxsKCkpOwogICAgICAgICBlbHNlIHsKICAgICAgICAgICAgIC8vIFdlIGNhbiBnZXQg
aGVyZSBhcyBhIHJlc3VsdCBvZiByZXRyeWluZyB0aGUgQ29tcGxldGUgc3RlcCwgZm9sbG93aW5n
CiAgICAgICAgICAgICAvLyBhIGZhaWx1cmUgb2YgdGhlIGNhY2hlIHN0b3JhZ2UgdG8gc2F2ZSB0
aGUgbmV3ZXN0IGNhY2hlIGR1ZSB0byBoaXR0aW5nCkBAIC04ODcsMTggKzg3OSwxOCBAQCB2b2lk
IEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6Y2hlY2tJZkxvYWRJc0NvbXBsZXRlKCkKICAgICAgICAg
ICAgIGRpZFJlYWNoT3JpZ2luUXVvdGEodG90YWxTcGFjZU5lZWRlZCk7CiAKICAgICAgICAgQXBw
bGljYXRpb25DYWNoZVN0b3JhZ2U6OkZhaWx1cmVSZWFzb24gZmFpbHVyZVJlYXNvbjsKLSAgICAg
ICAgc2V0TmV3ZXN0Q2FjaGUoV1RGTW92ZShtX2NhY2hlQmVpbmdVcGRhdGVkKSk7Ci0gICAgICAg
IGlmIChtX3N0b3JhZ2UtPnN0b3JlTmV3ZXN0Q2FjaGUodGhpcywgb2xkTmV3ZXN0Q2FjaGUuZ2V0
KCksIGZhaWx1cmVSZWFzb24pKSB7CisgICAgICAgIHNldE5ld2VzdENhY2hlKG1fY2FjaGVCZWlu
Z1VwZGF0ZWQucmVsZWFzZU5vbk51bGwoKSk7CisgICAgICAgIGlmIChtX3N0b3JhZ2UtPnN0b3Jl
TmV3ZXN0Q2FjaGUoKnRoaXMsIG9sZE5ld2VzdENhY2hlLmdldCgpLCBmYWlsdXJlUmVhc29uKSkg
ewogICAgICAgICAgICAgLy8gTmV3IGNhY2hlIHN0b3JlZCwgbm93IHJlbW92ZSB0aGUgb2xkIGNh
Y2hlLgogICAgICAgICAgICAgaWYgKG9sZE5ld2VzdENhY2hlKQogICAgICAgICAgICAgICAgIG1f
c3RvcmFnZS0+cmVtb3ZlKG9sZE5ld2VzdENhY2hlLmdldCgpKTsKIAogICAgICAgICAgICAgLy8g
RmlyZSB0aGUgZmluYWwgcHJvZ3Jlc3MgZXZlbnQuCiAgICAgICAgICAgICBBU1NFUlQobV9wcm9n
cmVzc0RvbmUgPT0gbV9wcm9ncmVzc1RvdGFsKTsKLSAgICAgICAgICAgIHBvc3RMaXN0ZW5lclRh
c2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OlBST0dSRVNTX0VWRU5ULCBtX3Byb2dyZXNzVG90YWws
IG1fcHJvZ3Jlc3NEb25lLCBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOworICAgICAgICAg
ICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkucHJvZ3Jlc3NFdmVudCwgbV9wcm9ncmVz
c1RvdGFsLCBtX3Byb2dyZXNzRG9uZSwgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsKIAog
ICAgICAgICAgICAgLy8gRmlyZSB0aGUgc3VjY2VzcyBldmVudC4KLSAgICAgICAgICAgIHBvc3RM
aXN0ZW5lclRhc2soaXNVcGdyYWRlQXR0ZW1wdCA/IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpVUERB
VEVSRUFEWV9FVkVOVCA6IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDQUNIRURfRVZFTlQsIG1fYXNz
b2NpYXRlZERvY3VtZW50TG9hZGVycyk7CisgICAgICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGlz
VXBncmFkZUF0dGVtcHQgPyBldmVudE5hbWVzKCkudXBkYXRlcmVhZHlFdmVudCA6IGV2ZW50TmFt
ZXMoKS5jYWNoZWRFdmVudCwgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsKICAgICAgICAg
ICAgIC8vIEl0IGlzIGNsZWFyIHRoYXQgdGhlIG9yaWdpbiBxdW90YSB3YXMgbm90IHJlYWNoZWQs
IHNvIGNsZWFyIHRoZSBmbGFnIGlmIGl0IHdhcyBzZXQuCiAgICAgICAgICAgICBtX29yaWdpblF1
b3RhRXhjZWVkZWRQcmV2aW91c2x5ID0gZmFsc2U7CiAgICAgICAgIH0gZWxzZSB7CkBAIC05MTks
MTAgKzkxMSw4IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpjaGVja0lmTG9hZElzQ29t
cGxldGUoKQogCiAgICAgICAgICAgICAgICAgLy8gU2F2ZSBhIHJlZmVyZW5jZSB0byB0aGUgbmV3
IGNhY2hlLgogICAgICAgICAgICAgICAgIG1fY2FjaGVCZWluZ1VwZGF0ZWQgPSBXVEZNb3ZlKG1f
bmV3ZXN0Q2FjaGUpOwotICAgICAgICAgICAgICAgIGlmIChvbGROZXdlc3RDYWNoZSkgewotICAg
ICAgICAgICAgICAgICAgICAvLyBSZWluc3RhdGUgdGhlIG9sZE5ld2VzdENhY2hlLgotICAgICAg
ICAgICAgICAgICAgICBzZXROZXdlc3RDYWNoZShXVEZNb3ZlKG9sZE5ld2VzdENhY2hlKSk7Ci0g
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGlmIChvbGROZXdlc3RDYWNoZSkKKyAg
ICAgICAgICAgICAgICAgICAgc2V0TmV3ZXN0Q2FjaGUob2xkTmV3ZXN0Q2FjaGUucmVsZWFzZU5v
bk51bGwoKSk7CiAgICAgICAgICAgICAgICAgc2NoZWR1bGVSZWFjaGVkTWF4QXBwQ2FjaGVTaXpl
Q2FsbGJhY2soKTsKICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICB9CkBAIC05
MzAsNyArOTIwLDcgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNoZWNrSWZMb2FkSXND
b21wbGV0ZSgpCiAgICAgICAgICAgICAvLyBSdW4gdGhlICJjYWNoZSBmYWlsdXJlIHN0ZXBzIgog
ICAgICAgICAgICAgLy8gRmlyZSB0aGUgZXJyb3IgZXZlbnRzIHRvIGFsbCBwZW5kaW5nIG1hc3Rl
ciBlbnRyaWVzLCBhcyB3ZWxsIGFueSBvdGhlciBjYWNoZSBob3N0cwogICAgICAgICAgICAgLy8g
Y3VycmVudGx5IGFzc29jaWF0ZWQgd2l0aCBhIGNhY2hlIGluIHRoaXMgZ3JvdXAuCi0gICAgICAg
ICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFUlJPUl9FVkVOVCwg
bV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsKKyAgICAgICAgICAgIHBvc3RMaXN0ZW5lclRh
c2soZXZlbnROYW1lcygpLmVycm9yRXZlbnQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7
CiAgICAgICAgICAgICAvLyBEaXNhc3NvY2lhdGUgdGhlIHBlbmRpbmcgbWFzdGVyIGVudHJpZXMg
ZnJvbSB0aGUgZmFpbGVkIG5ldyBjYWNoZS4gTm90ZSB0aGF0CiAgICAgICAgICAgICAvLyBhbGwg
b3RoZXIgbG9hZGVycyBpbiB0aGUgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzIGFyZSBzdGls
bCBhc3NvY2lhdGVkIHdpdGgKICAgICAgICAgICAgIC8vIHNvbWUgb3RoZXIgY2FjaGUgaW4gdGhp
cyBncm91cC4gVGhleSBhcmUgbm90IGFzc29jaWF0ZWQgd2l0aCB0aGUgZmFpbGVkIG5ldyBjYWNo
ZS4KQEAgLTkzOSwxMiArOTI5LDEyIEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpjaGVj
a0lmTG9hZElzQ29tcGxldGUoKQogICAgICAgICAgICAgVmVjdG9yPERvY3VtZW50TG9hZGVyKj4g
bG9hZGVyczsKICAgICAgICAgICAgIGNvcHlUb1ZlY3RvcihtX3BlbmRpbmdNYXN0ZXJSZXNvdXJj
ZUxvYWRlcnMsIGxvYWRlcnMpOwogICAgICAgICAgICAgZm9yIChhdXRvJiBsb2FkZXIgOiBsb2Fk
ZXJzKQotICAgICAgICAgICAgICAgIGRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKGxvYWRlcik7
IC8vIFRoaXMgY2FuIGRlbGV0ZSB0aGlzIGdyb3VwLgorICAgICAgICAgICAgICAgIGRpc2Fzc29j
aWF0ZURvY3VtZW50TG9hZGVyKCpsb2FkZXIpOyAvLyBUaGlzIGNhbiBkZWxldGUgdGhpcyBncm91
cC4KIAogICAgICAgICAgICAgLy8gUmVpbnN0YXRlIHRoZSBvbGROZXdlc3RDYWNoZSwgaWYgdGhl
cmUgd2FzIG9uZS4KICAgICAgICAgICAgIGlmIChvbGROZXdlc3RDYWNoZSkgewogICAgICAgICAg
ICAgICAgIC8vIFRoaXMgd2lsbCBkaXNjYXJkIHRoZSBmYWlsZWQgbmV3IGNhY2hlLgotICAgICAg
ICAgICAgICAgIHNldE5ld2VzdENhY2hlKFdURk1vdmUob2xkTmV3ZXN0Q2FjaGUpKTsKKyAgICAg
ICAgICAgICAgICBzZXROZXdlc3RDYWNoZShvbGROZXdlc3RDYWNoZS5yZWxlYXNlTm9uTnVsbCgp
KTsKICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgLy8gV2UgbXVzdCBoYXZl
IGJlZW4gZGVsZXRlZCBieSB0aGUgbGFzdCBjYWxsIHRvIGRpc2Fzc29jaWF0ZURvY3VtZW50TG9h
ZGVyKCkuCiAgICAgICAgICAgICAgICAgcmV0dXJuOwpAQCAtOTczLDE0ICs5NjMsMTMgQEAgdm9p
ZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnN0YXJ0TG9hZGluZ0VudHJ5KCkKICAgICAgICAgcmV0
dXJuOwogICAgIH0KICAgICAKLSAgICBFbnRyeU1hcDo6Y29uc3RfaXRlcmF0b3IgaXQgPSBtX3Bl
bmRpbmdFbnRyaWVzLmJlZ2luKCk7CisgICAgYXV0byBmaXJzdFBlbmRpbmdFbnRyeVVSTCA9IG1f
cGVuZGluZ0VudHJpZXMuYmVnaW4oKS0+a2V5OwogCi0gICAgcG9zdExpc3RlbmVyVGFzayhBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6UFJPR1JFU1NfRVZFTlQsIG1fcHJvZ3Jlc3NUb3RhbCwgbV9wcm9n
cmVzc0RvbmUsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CisgICAgcG9zdExpc3RlbmVy
VGFzayhldmVudE5hbWVzKCkucHJvZ3Jlc3NFdmVudCwgbV9wcm9ncmVzc1RvdGFsLCBtX3Byb2dy
ZXNzRG9uZSwgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsKICAgICBtX3Byb2dyZXNzRG9u
ZSsrOwogCiAgICAgQVNTRVJUKCFtX2N1cnJlbnRIYW5kbGUpOwotICAgIAotICAgIG1fY3VycmVu
dEhhbmRsZSA9IGNyZWF0ZVJlc291cmNlSGFuZGxlKFVSTChQYXJzZWRVUkxTdHJpbmcsIGl0LT5r
ZXkpLCBtX25ld2VzdENhY2hlID8gbV9uZXdlc3RDYWNoZS0+cmVzb3VyY2VGb3JVUkwoaXQtPmtl
eSkgOiAwKTsKKyAgICBtX2N1cnJlbnRIYW5kbGUgPSBjcmVhdGVSZXNvdXJjZUhhbmRsZShVUkwo
UGFyc2VkVVJMU3RyaW5nLCBmaXJzdFBlbmRpbmdFbnRyeVVSTCksIG1fbmV3ZXN0Q2FjaGUgPyBt
X25ld2VzdENhY2hlLT5yZXNvdXJjZUZvclVSTChmaXJzdFBlbmRpbmdFbnRyeVVSTCkgOiAwKTsK
IH0KIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRlbGl2ZXJEZWxheWVkTWFpblJlc291
cmNlcygpCkBAIC05ODgsMTkgKzk3NywxNSBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6
ZGVsaXZlckRlbGF5ZWRNYWluUmVzb3VyY2VzKCkKICAgICAvLyBOZWVkIHRvIGNvcHkgbG9hZGVy
cywgYmVjYXVzZSB0aGUgY2FjaGUgZ3JvdXAgbWF5IGJlIGRlc3Ryb3llZCBhdCB0aGUgZW5kIG9m
IGl0ZXJhdGlvbi4KICAgICBWZWN0b3I8RG9jdW1lbnRMb2FkZXIqPiBsb2FkZXJzOwogICAgIGNv
cHlUb1ZlY3RvcihtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMsIGxvYWRlcnMpOwotICAg
IHNpemVfdCBjb3VudCA9IGxvYWRlcnMuc2l6ZSgpOwotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBp
ICE9IGNvdW50OyArK2kpIHsKLSAgICAgICAgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciA9IGxvYWRl
cnNbaV07CisgICAgZm9yIChhdXRvKiBsb2FkZXIgOiBsb2FkZXJzKSB7CiAgICAgICAgIGlmIChs
b2FkZXItPmlzTG9hZGluZ01haW5SZXNvdXJjZSgpKQogICAgICAgICAgICAgY29udGludWU7Ci0K
LSAgICAgICAgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IgPSBsb2FkZXItPm1haW5Eb2N1bWVu
dEVycm9yKCk7Ci0gICAgICAgIGlmIChlcnJvci5pc051bGwoKSkKLSAgICAgICAgICAgIGZpbmlz
aGVkTG9hZGluZ01haW5SZXNvdXJjZShsb2FkZXIpOworICAgICAgICBpZiAobG9hZGVyLT5tYWlu
RG9jdW1lbnRFcnJvcigpLmlzTnVsbCgpKQorICAgICAgICAgICAgZmluaXNoZWRMb2FkaW5nTWFp
blJlc291cmNlKCpsb2FkZXIpOwogICAgICAgICBlbHNlCi0gICAgICAgICAgICBmYWlsZWRMb2Fk
aW5nTWFpblJlc291cmNlKGxvYWRlcik7CisgICAgICAgICAgICBmYWlsZWRMb2FkaW5nTWFpblJl
c291cmNlKCpsb2FkZXIpOwogICAgIH0KLSAgICBpZiAoIWNvdW50KQorICAgIGlmIChsb2FkZXJz
LmlzRW1wdHkoKSkKICAgICAgICAgY2hlY2tJZkxvYWRJc0NvbXBsZXRlKCk7CiB9CiAKQEAgLTEw
MDgsMTMgKzk5MywxMiBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6YWRkRW50cnkoY29u
c3QgU3RyaW5nJiB1cmwsIHVuc2lnbmVkIHR5cGUpCiB7CiAgICAgQVNTRVJUKG1fY2FjaGVCZWlu
Z1VwZGF0ZWQpOwogICAgIEFTU0VSVCghVVJMKFBhcnNlZFVSTFN0cmluZywgdXJsKS5oYXNGcmFn
bWVudElkZW50aWZpZXIoKSk7Ci0gICAgCisKICAgICAvLyBEb24ndCBhZGQgdGhlIFVSTCBpZiB3
ZSBhbHJlYWR5IGhhdmUgYW4gbWFzdGVyIHJlc291cmNlIGluIHRoZSBjYWNoZQogICAgIC8vIChp
LmUuLCB0aGUgbWFpbiByZXNvdXJjZSBmaW5pc2hlZCBsb2FkaW5nIGJlZm9yZSB0aGUgbWFuaWZl
c3QpLgotICAgIGlmIChBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqIHJlc291cmNlID0gbV9jYWNo
ZUJlaW5nVXBkYXRlZC0+cmVzb3VyY2VGb3JVUkwodXJsKSkgeworICAgIGlmIChhdXRvKiByZXNv
dXJjZSA9IG1fY2FjaGVCZWluZ1VwZGF0ZWQtPnJlc291cmNlRm9yVVJMKHVybCkpIHsKICAgICAg
ICAgQVNTRVJUKHJlc291cmNlLT50eXBlKCkgJiBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6Ok1h
c3Rlcik7CiAgICAgICAgIEFTU0VSVCghbV9mcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIo
KS0+aXNMb2FkaW5nTWFpblJlc291cmNlKCkpOwotICAgIAogICAgICAgICByZXNvdXJjZS0+YWRk
VHlwZSh0eXBlKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTEwMjUsMTEgKzEwMDksOCBA
QCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6YWRkRW50cnkoY29uc3QgU3RyaW5nJiB1cmws
IHVuc2lnbmVkIHR5cGUpCiAgICAgICAgIG1fbWFuaWZlc3RSZXNvdXJjZS0+YWRkVHlwZSh0eXBl
KTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KLSAgICAKLSAgICBFbnRyeU1hcDo6QWRkUmVzdWx0
IHJlc3VsdCA9IG1fcGVuZGluZ0VudHJpZXMuYWRkKHVybCwgdHlwZSk7Ci0gICAgCi0gICAgaWYg
KCFyZXN1bHQuaXNOZXdFbnRyeSkKLSAgICAgICAgcmVzdWx0Lml0ZXJhdG9yLT52YWx1ZSB8PSB0
eXBlOworCisgICAgbV9wZW5kaW5nRW50cmllcy5hZGQodXJsLCB0eXBlKS5pdGVyYXRvci0+dmFs
dWUgfD0gdHlwZTsKIH0KIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFzc29jaWF0ZURv
Y3VtZW50TG9hZGVyV2l0aENhY2hlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIEFwcGxpY2F0aW9u
Q2FjaGUqIGNhY2hlKQpAQCAtMTA0MCw2MyArMTAyMSw2MyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2Fj
aGVHcm91cDo6YXNzb2NpYXRlRG9jdW1lbnRMb2FkZXJXaXRoQ2FjaGUoRG9jdW1lbnRMb2FkZXIq
IGxvYQogCiAgICAgQVNTRVJUKCFtX2lzT2Jzb2xldGUpOwogCi0gICAgbG9hZGVyLT5hcHBsaWNh
dGlvbkNhY2hlSG9zdCgpLT5zZXRBcHBsaWNhdGlvbkNhY2hlKGNhY2hlKTsKKyAgICBsb2FkZXIt
PmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2V0QXBwbGljYXRpb25DYWNoZShjYWNoZSk7CiAKICAg
ICBBU1NFUlQoIW1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycy5jb250YWlucyhsb2FkZXIpKTsK
ICAgICBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMuYWRkKGxvYWRlcik7CiB9CiAKLWNsYXNz
IENocm9tZUNsaWVudENhbGxiYWNrVGltZXI6IHB1YmxpYyBUaW1lckJhc2UgeworY2xhc3MgQ2hy
b21lQ2xpZW50Q2FsbGJhY2tUaW1lciBmaW5hbCA6IHB1YmxpYyBUaW1lckJhc2UgewogcHVibGlj
OgotICAgIENocm9tZUNsaWVudENhbGxiYWNrVGltZXIoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBj
YWNoZUdyb3VwKQotICAgICAgICA6IG1fY2FjaGVHcm91cChjYWNoZUdyb3VwKQorICAgIENocm9t
ZUNsaWVudENhbGxiYWNrVGltZXIoQXBwbGljYXRpb25DYWNoZUdyb3VwJiBncm91cCkKKyAgICAg
ICAgOiBtX2dyb3VwKGdyb3VwKQogICAgIHsKICAgICB9CiAKIHByaXZhdGU6Ci0gICAgdm9pZCBm
aXJlZCgpIG92ZXJyaWRlCisgICAgdm9pZCBmaXJlZCgpIGZpbmFsCiAgICAgewotICAgICAgICBt
X2NhY2hlR3JvdXAtPmRpZFJlYWNoTWF4QXBwQ2FjaGVTaXplKCk7CisgICAgICAgIG1fZ3JvdXAu
ZGlkUmVhY2hNYXhBcHBDYWNoZVNpemUoKTsKICAgICAgICAgZGVsZXRlIHRoaXM7CiAgICAgfQot
ICAgIC8vIE5vdGUgdGhhdCB0aGVyZSBpcyBubyBuZWVkIHRvIHVzZSBhIFJlZlB0ciBoZXJlLiBU
aGUgQXBwbGljYXRpb25DYWNoZUdyb3VwIGluc3RhbmNlIGlzIGd1YXJhbnRlZWQKLSAgICAvLyB0
byBiZSBhbGl2ZSB3aGVuIHRoZSB0aW1lciBmaXJlcyBzaW5jZSBpbnZva2luZyB0aGUgQ2hyb21l
Q2xpZW50IGNhbGxiYWNrIGlzIHBhcnQgb2YgaXRzIG5vcm1hbAorCisgICAgLy8gTm90ZSB0aGF0
IHRoZXJlIGlzIG5vIG5lZWQgdG8gdXNlIGEgUmVmIGhlcmUuIFRoZSBBcHBsaWNhdGlvbkNhY2hl
R3JvdXAgaW5zdGFuY2UgaXMgZ3VhcmFudGVlZAorICAgIC8vIHRvIGJlIGFsaXZlIHdoZW4gdGhl
IHRpbWVyIGZpcmVzIHNpbmNlIGludm9raW5nIHRoZSBjYWxsYmFjayBpcyBwYXJ0IG9mIGl0cyBu
b3JtYWwKICAgICAvLyB1cGRhdGUgbWFjaGluZXJ5IGFuZCBub3RoaW5nIGNhbiB5ZXQgY2F1c2Ug
aXQgdG8gZ2V0IGRlbGV0ZWQuCi0gICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBtX2NhY2hlR3Jv
dXA7CisgICAgQXBwbGljYXRpb25DYWNoZUdyb3VwJiBtX2dyb3VwOwogfTsKIAogdm9pZCBBcHBs
aWNhdGlvbkNhY2hlR3JvdXA6OnNjaGVkdWxlUmVhY2hlZE1heEFwcENhY2hlU2l6ZUNhbGxiYWNr
KCkKIHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwotICAgIENocm9tZUNsaWVudENhbGxi
YWNrVGltZXIqIHRpbWVyID0gbmV3IENocm9tZUNsaWVudENhbGxiYWNrVGltZXIodGhpcyk7Cisg
ICAgYXV0byogdGltZXIgPSBuZXcgQ2hyb21lQ2xpZW50Q2FsbGJhY2tUaW1lcigqdGhpcyk7CiAg
ICAgdGltZXItPnN0YXJ0T25lU2hvdCgwKTsKICAgICAvLyBUaGUgdGltZXIgd2lsbCBkZWxldGUg
aXRzZWxmIG9uY2UgaXQgZmlyZXMuCiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpw
b3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFdmVudElEIGV2ZW50SUQsIGlu
dCBwcm9ncmVzc1RvdGFsLCBpbnQgcHJvZ3Jlc3NEb25lLCBjb25zdCBIYXNoU2V0PERvY3VtZW50
TG9hZGVyKj4mIGxvYWRlclNldCkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpwb3N0TGlz
dGVuZXJUYXNrKGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBpbnQgcHJvZ3Jlc3NUb3Rh
bCwgaW50IHByb2dyZXNzRG9uZSwgY29uc3QgSGFzaFNldDxEb2N1bWVudExvYWRlcio+JiBsb2Fk
ZXJTZXQpCiB7CiAgICAgZm9yIChhdXRvJiBsb2FkZXIgOiBsb2FkZXJTZXQpCi0gICAgICAgIHBv
c3RMaXN0ZW5lclRhc2soZXZlbnRJRCwgcHJvZ3Jlc3NUb3RhbCwgcHJvZ3Jlc3NEb25lLCBsb2Fk
ZXIpOworICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50VHlwZSwgcHJvZ3Jlc3NUb3RhbCwg
cHJvZ3Jlc3NEb25lLCAqbG9hZGVyKTsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
OnBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkV2ZW50SUQgZXZlbnRJRCwg
aW50IHByb2dyZXNzVG90YWwsIGludCBwcm9ncmVzc0RvbmUsIERvY3VtZW50TG9hZGVyKiBsb2Fk
ZXIpCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6cG9zdExpc3RlbmVyVGFzayhjb25zdCBB
dG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgaW50IHByb2dyZXNzVG90YWwsIGludCBwcm9ncmVzc0Rv
bmUsIERvY3VtZW50TG9hZGVyJiBsb2FkZXIpCiB7Ci0gICAgRnJhbWUqIGZyYW1lID0gbG9hZGVy
LT5mcmFtZSgpOworICAgIGF1dG8qIGZyYW1lID0gbG9hZGVyLmZyYW1lKCk7CiAgICAgaWYgKCFm
cmFtZSkKICAgICAgICAgcmV0dXJuOwogICAgIAotICAgIEFTU0VSVChmcmFtZS0+bG9hZGVyKCku
ZG9jdW1lbnRMb2FkZXIoKSA9PSBsb2FkZXIpOworICAgIEFTU0VSVChmcmFtZS0+bG9hZGVyKCku
ZG9jdW1lbnRMb2FkZXIoKSA9PSAmbG9hZGVyKTsKIAotICAgIFJlZlB0cjxEb2N1bWVudExvYWRl
cj4gbG9hZGVyUHJvdGVjdG9yKGxvYWRlcik7Ci0gICAgZnJhbWUtPmRvY3VtZW50KCktPnBvc3RU
YXNrKFtsb2FkZXJQcm90ZWN0b3IsIGV2ZW50SUQsIHByb2dyZXNzVG90YWwsIHByb2dyZXNzRG9u
ZV0gKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQpIHsKKyAgICBSZWZQdHI8RG9jdW1l
bnRMb2FkZXI+IHByb3RlY3RlZExvYWRlcigmbG9hZGVyKTsKKyAgICBmcmFtZS0+ZG9jdW1lbnQo
KS0+cG9zdFRhc2soW3Byb3RlY3RlZExvYWRlciwgJmV2ZW50VHlwZSwgcHJvZ3Jlc3NUb3RhbCwg
cHJvZ3Jlc3NEb25lXSAoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCkgewogICAgICAg
ICBBU1NFUlRfVU5VU0VEKGNvbnRleHQsIGNvbnRleHQuaXNEb2N1bWVudCgpKTsKLSAgICAgICAg
RnJhbWUqIGZyYW1lID0gbG9hZGVyUHJvdGVjdG9yLT5mcmFtZSgpOworICAgICAgICBhdXRvKiBm
cmFtZSA9IHByb3RlY3RlZExvYWRlci0+ZnJhbWUoKTsKICAgICAgICAgaWYgKCFmcmFtZSkKICAg
ICAgICAgICAgIHJldHVybjsKIAotICAgICAgICBBU1NFUlQoZnJhbWUtPmxvYWRlcigpLmRvY3Vt
ZW50TG9hZGVyKCkgPT0gbG9hZGVyUHJvdGVjdG9yKTsKLQotICAgICAgICBsb2FkZXJQcm90ZWN0
b3ItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm5vdGlmeURPTUFwcGxpY2F0aW9uQ2FjaGUoZXZl
bnRJRCwgcHJvZ3Jlc3NUb3RhbCwgcHJvZ3Jlc3NEb25lKTsKKyAgICAgICAgQVNTRVJUKGZyYW1l
LT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpID09IHByb3RlY3RlZExvYWRlcik7CisgICAgICAg
IHByb3RlY3RlZExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS5ub3RpZnlET01BcHBsaWNh
dGlvbkNhY2hlKGV2ZW50VHlwZSwgcHJvZ3Jlc3NUb3RhbCwgcHJvZ3Jlc3NEb25lKTsKICAgICB9
KTsKIH0KIApAQCAtMTEwOCw4ICsxMDg5LDcgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
OnNldFVwZGF0ZVN0YXR1cyhVcGRhdGVTdGF0dXMgc3RhdHVzKQogdm9pZCBBcHBsaWNhdGlvbkNh
Y2hlR3JvdXA6OmNsZWFyU3RvcmFnZUlEKCkKIHsKICAgICBtX3N0b3JhZ2VJRCA9IDA7Ci0gICAg
Ci0gICAgZm9yIChjb25zdCBhdXRvJiBjYWNoZSA6IG1fY2FjaGVzKQorICAgIGZvciAoYXV0byYg
Y2FjaGUgOiBtX2NhY2hlcykKICAgICAgICAgY2FjaGUtPmNsZWFyU3RvcmFnZUlEKCk7CiB9CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNh
Y2hlR3JvdXAuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNh
Y2hlR3JvdXAuaAppbmRleCBiMDY0NGM0NmM4NjY5MWNhOGQwMDkzNTU3NjhmYjU4OTE2ZGY3OWIx
Li5mYzg1MWRhN2NmYThjNDMzMmY2ODVlYTI5MTIyZTM3ZDRkYjdhYWEyIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5o
CkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCwgMjAwOSwgMjAxMCBB
cHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAx
NyBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKQEAgLTQ5LDggKzQ5LDkgQEAgZW51bSBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlT3B0
aW9uIHsKICAgICBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlV2l0aG91dEJyb3dzaW5nQ29udGV4dAog
fTsKIAotY2xhc3MgQXBwbGljYXRpb25DYWNoZUdyb3VwIDogUmVzb3VyY2VIYW5kbGVDbGllbnQg
ewotICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCk7IFdURl9N
QUtFX0ZBU1RfQUxMT0NBVEVEOworY2xhc3MgQXBwbGljYXRpb25DYWNoZUdyb3VwIGZpbmFsIDog
cHJpdmF0ZSBSZXNvdXJjZUhhbmRsZUNsaWVudCB7CisgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUo
QXBwbGljYXRpb25DYWNoZUdyb3VwKTsKKyAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKIHB1
YmxpYzoKICAgICBleHBsaWNpdCBBcHBsaWNhdGlvbkNhY2hlR3JvdXAoUmVmPEFwcGxpY2F0aW9u
Q2FjaGVTdG9yYWdlPiYmLCBjb25zdCBVUkwmIG1hbmlmZXN0VVJMKTsKICAgICB2aXJ0dWFsIH5B
cHBsaWNhdGlvbkNhY2hlR3JvdXAoKTsKQEAgLTYwLDggKzYxLDggQEAgcHVibGljOgogICAgIHN0
YXRpYyBBcHBsaWNhdGlvbkNhY2hlKiBjYWNoZUZvck1haW5SZXF1ZXN0KGNvbnN0IFJlc291cmNl
UmVxdWVzdCYsIERvY3VtZW50TG9hZGVyKik7CiAgICAgc3RhdGljIEFwcGxpY2F0aW9uQ2FjaGUq
IGZhbGxiYWNrQ2FjaGVGb3JNYWluUmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBEb2N1
bWVudExvYWRlciopOwogICAgIAotICAgIHN0YXRpYyB2b2lkIHNlbGVjdENhY2hlKEZyYW1lKiwg
Y29uc3QgVVJMJiBtYW5pZmVzdFVSTCk7Ci0gICAgc3RhdGljIHZvaWQgc2VsZWN0Q2FjaGVXaXRo
b3V0TWFuaWZlc3RVUkwoRnJhbWUqKTsKKyAgICBzdGF0aWMgdm9pZCBzZWxlY3RDYWNoZShGcmFt
ZSYsIGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwpOworICAgIHN0YXRpYyB2b2lkIHNlbGVjdENhY2hl
V2l0aG91dE1hbmlmZXN0VVJMKEZyYW1lJik7CiAKICAgICBBcHBsaWNhdGlvbkNhY2hlU3RvcmFn
ZSYgc3RvcmFnZSgpIHsgcmV0dXJuIG1fc3RvcmFnZTsgfQogICAgIGNvbnN0IFVSTCYgbWFuaWZl
c3RVUkwoKSBjb25zdCB7IHJldHVybiBtX21hbmlmZXN0VVJMOyB9CkBAIC03MywzMSArNzQsMzEg
QEAgcHVibGljOgogICAgIHVuc2lnbmVkIHN0b3JhZ2VJRCgpIGNvbnN0IHsgcmV0dXJuIG1fc3Rv
cmFnZUlEOyB9CiAgICAgdm9pZCBjbGVhclN0b3JhZ2VJRCgpOwogICAgIAotICAgIHZvaWQgdXBk
YXRlKEZyYW1lKiwgQXBwbGljYXRpb25DYWNoZVVwZGF0ZU9wdGlvbik7IC8vIEZJWE1FOiBGcmFt
ZSBzaG91bGQgbm90IGJlIG5lZWRlZCB3aGVuIHVwZGF0aW5nIHdpdGhvdXQgYnJvd3NpbmcgY29u
dGV4dC4KLSAgICB2b2lkIGNhY2hlRGVzdHJveWVkKEFwcGxpY2F0aW9uQ2FjaGUqKTsKKyAgICB2
b2lkIHVwZGF0ZShGcmFtZSYsIEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVPcHRpb24pOyAvLyBGSVhN
RTogRnJhbWUgc2hvdWxkIG5vdCBiZSBuZWVkZWQgd2hlbiB1cGRhdGluZyB3aXRob3V0IGJyb3dz
aW5nIGNvbnRleHQuCisgICAgdm9pZCBjYWNoZURlc3Ryb3llZChBcHBsaWNhdGlvbkNhY2hlJik7
CiAgICAgCi0gICAgdm9pZCBhYm9ydChGcmFtZSopOworICAgIHZvaWQgYWJvcnQoRnJhbWUmKTsK
IAotICAgIGJvb2wgY2FjaGVJc0NvbXBsZXRlKEFwcGxpY2F0aW9uQ2FjaGUqIGNhY2hlKSB7IHJl
dHVybiBtX2NhY2hlcy5jb250YWlucyhjYWNoZSk7IH0KKyAgICBib29sIGNhY2hlSXNDb21wbGV0
ZShBcHBsaWNhdGlvbkNhY2hlJiBjYWNoZSkgeyByZXR1cm4gbV9jYWNoZXMuY29udGFpbnMoJmNh
Y2hlKTsgfQogCi0gICAgdm9pZCBzdG9wTG9hZGluZ0luRnJhbWUoRnJhbWUqKTsKKyAgICB2b2lk
IHN0b3BMb2FkaW5nSW5GcmFtZShGcmFtZSYpOwogCiAgICAgQXBwbGljYXRpb25DYWNoZSogbmV3
ZXN0Q2FjaGUoKSBjb25zdCB7IHJldHVybiBtX25ld2VzdENhY2hlLmdldCgpOyB9Ci0gICAgdm9p
ZCBzZXROZXdlc3RDYWNoZShQYXNzUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+KTsKKyAgICB2b2lk
IHNldE5ld2VzdENhY2hlKFJlZjxBcHBsaWNhdGlvbkNhY2hlPiYmKTsKIAogICAgIHZvaWQgbWFr
ZU9ic29sZXRlKCk7CiAgICAgYm9vbCBpc09ic29sZXRlKCkgY29uc3QgeyByZXR1cm4gbV9pc09i
c29sZXRlOyB9CiAKLSAgICB2b2lkIGZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZShEb2N1bWVu
dExvYWRlciopOwotICAgIHZvaWQgZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZShEb2N1bWVudExv
YWRlciopOworICAgIHZvaWQgZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKERvY3VtZW50TG9h
ZGVyJik7CisgICAgdm9pZCBmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKERvY3VtZW50TG9hZGVy
Jik7CiAKLSAgICB2b2lkIGRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKERvY3VtZW50TG9hZGVy
Kik7CisgICAgdm9pZCBkaXNhc3NvY2lhdGVEb2N1bWVudExvYWRlcihEb2N1bWVudExvYWRlciYp
OwogCiBwcml2YXRlOgotICAgIHN0YXRpYyB2b2lkIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRp
b25DYWNoZUhvc3Q6OkV2ZW50SUQgaWQsIGNvbnN0IEhhc2hTZXQ8RG9jdW1lbnRMb2FkZXIqPiYg
c2V0KSB7IHBvc3RMaXN0ZW5lclRhc2soaWQsIDAsIDAsIHNldCk7IH0KLSAgICBzdGF0aWMgdm9p
ZCBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFdmVudElEIGlkLCBEb2N1
bWVudExvYWRlciogbG9hZGVyKSAgeyBwb3N0TGlzdGVuZXJUYXNrKGlkLCAwLCAwLCBsb2FkZXIp
OyB9Ci0gICAgc3RhdGljIHZvaWQgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9z
dDo6RXZlbnRJRCwgaW50IHByb2dyZXNzVG90YWwsIGludCBwcm9ncmVzc0RvbmUsIGNvbnN0IEhh
c2hTZXQ8RG9jdW1lbnRMb2FkZXIqPiYpOwotICAgIHN0YXRpYyB2b2lkIHBvc3RMaXN0ZW5lclRh
c2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkV2ZW50SUQsIGludCBwcm9ncmVzc1RvdGFsLCBpbnQg
cHJvZ3Jlc3NEb25lLCBEb2N1bWVudExvYWRlciopOworICAgIHN0YXRpYyB2b2lkIHBvc3RMaXN0
ZW5lclRhc2soY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGNvbnN0IEhhc2hTZXQ8RG9j
dW1lbnRMb2FkZXIqPiYgc2V0KSB7IHBvc3RMaXN0ZW5lclRhc2soZXZlbnRUeXBlLCAwLCAwLCBz
ZXQpOyB9CisgICAgc3RhdGljIHZvaWQgcG9zdExpc3RlbmVyVGFzayhjb25zdCBBdG9taWNTdHJp
bmcmIGV2ZW50VHlwZSwgRG9jdW1lbnRMb2FkZXImIGxvYWRlcikgIHsgcG9zdExpc3RlbmVyVGFz
ayhldmVudFR5cGUsIDAsIDAsIGxvYWRlcik7IH0KKyAgICBzdGF0aWMgdm9pZCBwb3N0TGlzdGVu
ZXJUYXNrKGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBpbnQgcHJvZ3Jlc3NUb3RhbCwg
aW50IHByb2dyZXNzRG9uZSwgY29uc3QgSGFzaFNldDxEb2N1bWVudExvYWRlcio+Jik7CisgICAg
c3RhdGljIHZvaWQgcG9zdExpc3RlbmVyVGFzayhjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlw
ZSwgaW50IHByb2dyZXNzVG90YWwsIGludCBwcm9ncmVzc0RvbmUsIERvY3VtZW50TG9hZGVyJik7
CiAKICAgICB2b2lkIHNjaGVkdWxlUmVhY2hlZE1heEFwcENhY2hlU2l6ZUNhbGxiYWNrKCk7CiAK
QEAgLTEzNSw3ICsxMzYsNyBAQCBwcml2YXRlOgogCiAgICAgVVJMIG1fbWFuaWZlc3RVUkw7CiAg
ICAgUmVmUHRyPFNlY3VyaXR5T3JpZ2luPiBtX29yaWdpbjsKLSAgICBVcGRhdGVTdGF0dXMgbV91
cGRhdGVTdGF0dXM7CisgICAgVXBkYXRlU3RhdHVzIG1fdXBkYXRlU3RhdHVzIHsgSWRsZSB9Owog
ICAgIAogICAgIC8vIFRoaXMgaXMgdGhlIG5ld2VzdCBjb21wbGV0ZSBjYWNoZSBpbiB0aGUgZ3Jv
dXAuCiAgICAgUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+IG1fbmV3ZXN0Q2FjaGU7CkBAIC0xNTAs
MjYgKzE1MSwyNSBAQCBwcml2YXRlOgogICAgIC8vIExpc3Qgb2YgcGVuZGluZyBtYXN0ZXIgZW50
cmllcywgdXNlZCBkdXJpbmcgdGhlIHVwZGF0ZSBwcm9jZXNzIHRvIGVuc3VyZSB0aGF0IG5ldyBt
YXN0ZXIgZW50cmllcyBhcmUgY2FjaGVkLgogICAgIEhhc2hTZXQ8RG9jdW1lbnRMb2FkZXIqPiBt
X3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnM7CiAgICAgLy8gSG93IG1hbnkgb2YgdGhlIGFi
b3ZlIHBlbmRpbmcgbWFzdGVyIGVudHJpZXMgaGF2ZSBub3QgeWV0IGZpbmlzaGVkIGRvd25sb2Fk
aW5nLgotICAgIGludCBtX2Rvd25sb2FkaW5nUGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVyc0Nv
dW50OworICAgIGludCBtX2Rvd25sb2FkaW5nUGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVyc0Nv
dW50IHsgMCB9OwogICAgIAogICAgIC8vIFRoZXNlIGFyZSBhbGwgdGhlIGRvY3VtZW50IGxvYWRl
cnMgdGhhdCBhcmUgYXNzb2NpYXRlZCB3aXRoIGEgY2FjaGUgaW4gdGhpcyBncm91cC4KICAgICBI
YXNoU2V0PERvY3VtZW50TG9hZGVyKj4gbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzOwogCiAg
ICAgLy8gVGhlIFVSTHMgYW5kIHR5cGVzIG9mIHBlbmRpbmcgY2FjaGUgZW50cmllcy4KLSAgICB0
eXBlZGVmIEhhc2hNYXA8U3RyaW5nLCB1bnNpZ25lZD4gRW50cnlNYXA7Ci0gICAgRW50cnlNYXAg
bV9wZW5kaW5nRW50cmllczsKKyAgICBIYXNoTWFwPFN0cmluZywgdW5zaWduZWQ+IG1fcGVuZGlu
Z0VudHJpZXM7CiAgICAgCiAgICAgLy8gVGhlIHRvdGFsIG51bWJlciBvZiBpdGVtcyB0byBiZSBw
cm9jZXNzZWQgdG8gdXBkYXRlIHRoZSBjYWNoZSBncm91cCBhbmQgdGhlIG51bWJlciB0aGF0IGhh
dmUgYmVlbiBkb25lLgotICAgIGludCBtX3Byb2dyZXNzVG90YWw7Ci0gICAgaW50IG1fcHJvZ3Jl
c3NEb25lOworICAgIGludCBtX3Byb2dyZXNzVG90YWwgeyAwIH07CisgICAgaW50IG1fcHJvZ3Jl
c3NEb25lIHsgMCB9OwogCiAgICAgLy8gRnJhbWUgdXNlZCBmb3IgZmV0Y2hpbmcgcmVzb3VyY2Vz
IHdoZW4gdXBkYXRpbmcuCiAgICAgLy8gRklYTUU6IEFuIHVwZGF0ZSBzdGFydGVkIGJ5IGEgcGFy
dGljdWxhciBmcmFtZSBzaG91bGQgbm90IHN0b3AgaWYgaXQgaXMgZGVzdHJveWVkLCBidXQgdGhl
cmUgYXJlIG90aGVyIGZyYW1lcyBhc3NvY2lhdGVkIHdpdGggdGhlIHNhbWUgY2FjaGUgZ3JvdXAu
Ci0gICAgRnJhbWUqIG1fZnJhbWU7CisgICAgRnJhbWUqIG1fZnJhbWUgeyBudWxscHRyIH07CiAg
IAogICAgIC8vIEFuIG9ic29sZXRlIGNhY2hlIGdyb3VwIGlzIG5ldmVyIHN0b3JlZCwgYnV0IHRo
ZSBvcHBvc2l0ZSBpcyBub3QgdHJ1ZSAtIHN0b3JpbmcgbWF5IGZhaWwgZm9yIG11bHRpcGxlIHJl
YXNvbnMsIHN1Y2ggYXMgZXhjZWVkaW5nIGRpc2sgcXVvdGEuCi0gICAgdW5zaWduZWQgbV9zdG9y
YWdlSUQ7Ci0gICAgYm9vbCBtX2lzT2Jzb2xldGU7CisgICAgdW5zaWduZWQgbV9zdG9yYWdlSUQg
eyAwIH07CisgICAgYm9vbCBtX2lzT2Jzb2xldGUgeyBmYWxzZSB9OwogCiAgICAgLy8gRHVyaW5n
IHVwZGF0ZSwgdGhpcyBpcyB1c2VkIHRvIGhhbmRsZSBhc3luY2hyb25vdXNseSBhcnJpdmluZyBy
ZXN1bHRzLgogICAgIGVudW0gQ29tcGxldGlvblR5cGUgewpAQCAtMTc4LDEyICsxNzgsMTIgQEAg
cHJpdmF0ZToKICAgICAgICAgRmFpbHVyZSwKICAgICAgICAgQ29tcGxldGVkCiAgICAgfTsKLSAg
ICBDb21wbGV0aW9uVHlwZSBtX2NvbXBsZXRpb25UeXBlOworICAgIENvbXBsZXRpb25UeXBlIG1f
Y29tcGxldGlvblR5cGUgeyBOb25lIH07CiAKICAgICAvLyBUaGlzIGZsYWcgaXMgc2V0IGltbWVk
aWF0ZWx5IGFmdGVyIHRoZSBDaHJvbWVDbGllbnQ6OnJlYWNoZWRNYXhBcHBDYWNoZVNpemUoKSBj
YWxsYmFjayBpcyBpbnZva2VkIGFzIGEgcmVzdWx0IG9mIHRoZSBzdG9yYWdlIGxheWVyIGZhaWxp
bmcgdG8gc2F2ZSBhIGNhY2hlCiAgICAgLy8gZHVlIHRvIHJlYWNoaW5nIHRoZSBtYXhpbXVtIHNp
emUgb2YgdGhlIGFwcGxpY2F0aW9uIGNhY2hlIGRhdGFiYXNlIGZpbGUuIFRoaXMgZmxhZyBpcyB1
c2VkIGJ5IEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6Y2hlY2tJZkxvYWRJc0NvbXBsZXRlKCkgdG8g
ZGVjaWRlCiAgICAgLy8gdGhlIGNvdXJzZSBvZiBhY3Rpb24gaW4gY2FzZSBvZiB0aGlzIGZhaWx1
cmUgKGkuZS4gY2FsbCB0aGUgQ2hyb21lQ2xpZW50IGNhbGxiYWNrIG9yIHJ1biB0aGUgZmFpbHVy
ZSBzdGVwcykuCi0gICAgYm9vbCBtX2NhbGxlZFJlYWNoZWRNYXhBcHBDYWNoZVNpemU7CisgICAg
Ym9vbCBtX2NhbGxlZFJlYWNoZWRNYXhBcHBDYWNoZVNpemUgeyBmYWxzZSB9OwogICAgIAogICAg
IFJlZlB0cjxSZXNvdXJjZUhhbmRsZT4gbV9jdXJyZW50SGFuZGxlOwogICAgIFJlZlB0cjxBcHBs
aWNhdGlvbkNhY2hlUmVzb3VyY2U+IG1fY3VycmVudFJlc291cmNlOwpAQCAtMTkzLDcgKzE5Myw3
IEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPFJlc291cmNlSGFuZGxlPiBtX21hbmlmZXN0SGFuZGxl
OwogCiAgICAgaW50NjRfdCBtX2F2YWlsYWJsZVNwYWNlSW5RdW90YTsKLSAgICBib29sIG1fb3Jp
Z2luUXVvdGFFeGNlZWRlZFByZXZpb3VzbHk7CisgICAgYm9vbCBtX29yaWdpblF1b3RhRXhjZWVk
ZWRQcmV2aW91c2x5IHsgZmFsc2UgfTsKIAogICAgIGZyaWVuZCBjbGFzcyBDaHJvbWVDbGllbnRD
YWxsYmFja1RpbWVyOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBj
YWNoZS9BcHBsaWNhdGlvbkNhY2hlSG9zdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBw
Y2FjaGUvQXBwbGljYXRpb25DYWNoZUhvc3QuY3BwCmluZGV4IDdmNTAwNGM5ODlmOTllM2VlNzVl
ZjVkOWZjNjU5ZmVhNWQ0ZWM4M2IuLjkxMTQ2OTljODdmZjg1YzIxM2UwZGRhYTM4ZTM2ODZjNTVk
YmJhOGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNh
dGlvbkNhY2hlSG9zdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0Fw
cGxpY2F0aW9uQ2FjaGVIb3N0LmNwcApAQCAtMzIsNiArMzIsNyBAQAogI2luY2x1ZGUgIkNvbnRl
bnRTZWN1cml0eVBvbGljeS5oIgogI2luY2x1ZGUgIkRvY3VtZW50TG9hZGVyLmgiCiAjaW5jbHVk
ZSAiRE9NQXBwbGljYXRpb25DYWNoZS5oIgorI2luY2x1ZGUgIkV2ZW50TmFtZXMuaCIKICNpbmNs
dWRlICJGaWxlU3lzdGVtLmgiCiAjaW5jbHVkZSAiRnJhbWUuaCIKICNpbmNsdWRlICJGcmFtZUxv
YWRlci5oIgpAQCAtNDgsMzEgKzQ5LDI5IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0OjpBcHBsaWNhdGlvbkNhY2hlSG9zdChEb2N1bWVudExvYWRlciYgZG9j
dW1lbnRMb2FkZXIpCi0gICAgOiBtX2RvbUFwcGxpY2F0aW9uQ2FjaGUobnVsbHB0cikKLSAgICAs
IG1fZG9jdW1lbnRMb2FkZXIoZG9jdW1lbnRMb2FkZXIpCi0gICAgLCBtX2RlZmVyc0V2ZW50cyh0
cnVlKQotICAgICwgbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAobnVsbHB0cikKKyAg
ICA6IG1fZG9jdW1lbnRMb2FkZXIoZG9jdW1lbnRMb2FkZXIpCiB7CiB9CiAKIEFwcGxpY2F0aW9u
Q2FjaGVIb3N0Ojp+QXBwbGljYXRpb25DYWNoZUhvc3QoKQogewogICAgIEFTU0VSVCghbV9hcHBs
aWNhdGlvbkNhY2hlIHx8ICFtX2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCB8fCBtX2Fw
cGxpY2F0aW9uQ2FjaGUtPmdyb3VwKCkgPT0gbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3Jv
dXApOwotCiAgICAgaWYgKG1fYXBwbGljYXRpb25DYWNoZSkKLSAgICAgICAgbV9hcHBsaWNhdGlv
bkNhY2hlLT5ncm91cCgpLT5kaXNhc3NvY2lhdGVEb2N1bWVudExvYWRlcigmbV9kb2N1bWVudExv
YWRlcik7CisgICAgICAgIG1fYXBwbGljYXRpb25DYWNoZS0+Z3JvdXAoKS0+ZGlzYXNzb2NpYXRl
RG9jdW1lbnRMb2FkZXIobV9kb2N1bWVudExvYWRlcik7CiAgICAgZWxzZSBpZiAobV9jYW5kaWRh
dGVBcHBsaWNhdGlvbkNhY2hlR3JvdXApCi0gICAgICAgIG1fY2FuZGlkYXRlQXBwbGljYXRpb25D
YWNoZUdyb3VwLT5kaXNhc3NvY2lhdGVEb2N1bWVudExvYWRlcigmbV9kb2N1bWVudExvYWRlcik7
CisgICAgICAgIG1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwLT5kaXNhc3NvY2lhdGVE
b2N1bWVudExvYWRlcihtX2RvY3VtZW50TG9hZGVyKTsKIH0KIAogdm9pZCBBcHBsaWNhdGlvbkNh
Y2hlSG9zdDo6c2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3QoKQogewotICAgIEFwcGxpY2F0aW9u
Q2FjaGVHcm91cDo6c2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3RVUkwobV9kb2N1bWVudExvYWRl
ci5mcmFtZSgpKTsKKyAgICBBU1NFUlQobV9kb2N1bWVudExvYWRlci5mcmFtZSgpKTsKKyAgICBB
cHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0VVJMKCptX2Rv
Y3VtZW50TG9hZGVyLmZyYW1lKCkpOwogfQogCiB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojpz
ZWxlY3RDYWNoZVdpdGhNYW5pZmVzdChjb25zdCBVUkwmIG1hbmlmZXN0VVJMKQogewotICAgIEFw
cGxpY2F0aW9uQ2FjaGVHcm91cDo6c2VsZWN0Q2FjaGUobV9kb2N1bWVudExvYWRlci5mcmFtZSgp
LCBtYW5pZmVzdFVSTCk7CisgICAgQVNTRVJUKG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUoKSk7Cisg
ICAgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZWxlY3RDYWNoZSgqbV9kb2N1bWVudExvYWRlci5m
cmFtZSgpLCBtYW5pZmVzdFVSTCk7CiB9CiAKIHZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6Om1h
eWJlTG9hZE1haW5SZXNvdXJjZShSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFN1YnN0aXR1dGVE
YXRhJiBzdWJzdGl0dXRlRGF0YSkKQEAgLTE0MCwxMiArMTM5LDExIEBAIGJvb2wgQXBwbGljYXRp
b25DYWNoZUhvc3Q6Om1heWJlTG9hZEZhbGxiYWNrRm9yTWFpbkVycm9yKGNvbnN0IFJlc291cmNl
UmVxdWVzdCYKIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWFpblJlc291cmNlRGF0YVJl
Y2VpdmVkKGNvbnN0IGNoYXIqLCBpbnQsIGxvbmcgbG9uZywgYm9vbCkKIHsKLSAgICAvLyBUaGlz
IG1ldGhvZCBpcyBoZXJlIHRvIGZhY2lsaXRhdGUgYWx0ZXJuYXRlIGltcGxlbWV0YXRpb25zIG9m
IHRoaXMgaW50ZXJmYWNlIGJ5IHRoZSBob3N0IGJyb3dzZXIuCiB9CiAKIHZvaWQgQXBwbGljYXRp
b25DYWNoZUhvc3Q6OmZhaWxlZExvYWRpbmdNYWluUmVzb3VyY2UoKQogewotICAgIEFwcGxpY2F0
aW9uQ2FjaGVHcm91cCogZ3JvdXAgPSBtX2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cDsK
KyAgICBhdXRvKiBncm91cCA9IG1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwOwogICAg
IGlmICghZ3JvdXAgJiYgbV9hcHBsaWNhdGlvbkNhY2hlKSB7CiAgICAgICAgIGlmIChtYWluUmVz
b3VyY2VBcHBsaWNhdGlvbkNhY2hlKCkpIHsKICAgICAgICAgICAgIC8vIEV2ZW4gd2hlbiB0aGUg
bWFpbiByZXNvdXJjZSBpcyBiZWluZyBsb2FkZWQgZnJvbSBhbiBhcHBsaWNhdGlvbiBjYWNoZSwg
bG9hZGluZyBjYW4gZmFpbCBpZiBhYm9ydGVkLgpAQCAtMTU1LDE3ICsxNTMsMTcgQEAgdm9pZCBB
cHBsaWNhdGlvbkNhY2hlSG9zdDo6ZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZSgpCiAgICAgfQog
ICAgIAogICAgIGlmIChncm91cCkKLSAgICAgICAgZ3JvdXAtPmZhaWxlZExvYWRpbmdNYWluUmVz
b3VyY2UoJm1fZG9jdW1lbnRMb2FkZXIpOworICAgICAgICBncm91cC0+ZmFpbGVkTG9hZGluZ01h
aW5SZXNvdXJjZShtX2RvY3VtZW50TG9hZGVyKTsKIH0KIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hl
SG9zdDo6ZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKCkKIHsKLSAgICBBcHBsaWNhdGlvbkNh
Y2hlR3JvdXAqIGdyb3VwID0gY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKCk7CisgICAg
YXV0byogZ3JvdXAgPSBjYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKTsKICAgICBpZiAo
IWdyb3VwICYmIGFwcGxpY2F0aW9uQ2FjaGUoKSAmJiAhbWFpblJlc291cmNlQXBwbGljYXRpb25D
YWNoZSgpKQogICAgICAgICBncm91cCA9IGFwcGxpY2F0aW9uQ2FjaGUoKS0+Z3JvdXAoKTsKICAg
ICAKICAgICBpZiAoZ3JvdXApCi0gICAgICAgIGdyb3VwLT5maW5pc2hlZExvYWRpbmdNYWluUmVz
b3VyY2UoJm1fZG9jdW1lbnRMb2FkZXIpOworICAgICAgICBncm91cC0+ZmluaXNoZWRMb2FkaW5n
TWFpblJlc291cmNlKG1fZG9jdW1lbnRMb2FkZXIpOwogfQogCiBib29sIEFwcGxpY2F0aW9uQ2Fj
aGVIb3N0OjptYXliZUxvYWRSZXNvdXJjZShSZXNvdXJjZUxvYWRlciYgbG9hZGVyLCBjb25zdCBS
ZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFVSTCYgb3JpZ2luYWxVUkwpCkBAIC0xODYs
MTcgKzE4NCwxOSBAQCBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjptYXliZUxvYWRSZXNvdXJj
ZShSZXNvdXJjZUxvYWRlciYgbG9hZGVyLCBjb25zdCBSZXNvdQogCiBib29sIEFwcGxpY2F0aW9u
Q2FjaGVIb3N0OjptYXliZUxvYWRGYWxsYmFja0ZvclJlZGlyZWN0KFJlc291cmNlTG9hZGVyKiBy
ZXNvdXJjZUxvYWRlciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKQogewotICAgIGlmICghcmVkaXJlY3RSZXNwb25zZS5p
c051bGwoKSAmJiAhcHJvdG9jb2xIb3N0QW5kUG9ydEFyZUVxdWFsKHJlcXVlc3QudXJsKCksIHJl
ZGlyZWN0UmVzcG9uc2UudXJsKCkpKQorICAgIGlmICghcmVkaXJlY3RSZXNwb25zZS5pc051bGwo
KSAmJiAhcHJvdG9jb2xIb3N0QW5kUG9ydEFyZUVxdWFsKHJlcXVlc3QudXJsKCksIHJlZGlyZWN0
UmVzcG9uc2UudXJsKCkpKSB7CiAgICAgICAgIGlmIChzY2hlZHVsZUxvYWRGYWxsYmFja1Jlc291
cmNlRnJvbUFwcGxpY2F0aW9uQ2FjaGUocmVzb3VyY2VMb2FkZXIpKQogICAgICAgICAgICAgcmV0
dXJuIHRydWU7CisgICAgfQogICAgIHJldHVybiBmYWxzZTsKIH0KIAogYm9vbCBBcHBsaWNhdGlv
bkNhY2hlSG9zdDo6bWF5YmVMb2FkRmFsbGJhY2tGb3JSZXNwb25zZShSZXNvdXJjZUxvYWRlciog
cmVzb3VyY2VMb2FkZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewotICAg
IGlmIChyZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpIC8gMTAwID09IDQgfHwgcmVzcG9uc2UuaHR0
cFN0YXR1c0NvZGUoKSAvIDEwMCA9PSA1KQorICAgIGlmIChyZXNwb25zZS5odHRwU3RhdHVzQ29k
ZSgpIC8gMTAwID09IDQgfHwgcmVzcG9uc2UuaHR0cFN0YXR1c0NvZGUoKSAvIDEwMCA9PSA1KSB7
CiAgICAgICAgIGlmIChzY2hlZHVsZUxvYWRGYWxsYmFja1Jlc291cmNlRnJvbUFwcGxpY2F0aW9u
Q2FjaGUocmVzb3VyY2VMb2FkZXIpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQog
ICAgIHJldHVybiBmYWxzZTsKIH0KIApAQCAtMjIwLDExICsyMjAsOSBAQCBVUkwgQXBwbGljYXRp
b25DYWNoZUhvc3Q6OmNyZWF0ZUZpbGVVUkwoY29uc3QgU3RyaW5nJiBwYXRoKQogICAgIC8vIGFw
cCBjYWNoZSBtZWRpYSBmaWxlcyBhcmUgYWx3YXlzIGNyZWF0ZWQgd2l0aCBlbmNvZGVGb3JGaWxl
TmFtZShjcmVhdGVDYW5vbmljYWxVVUlEU3RyaW5nKCkpLgogCiAjaWYgVVNFKENGKSAmJiBQTEFU
Rk9STShXSU4pCi0gICAgUmV0YWluUHRyPENGVVJMUmVmPiBjZlVSTCA9IGFkb3B0Q0YoQ0ZVUkxD
cmVhdGVXaXRoRmlsZVN5c3RlbVBhdGgoMCwgcGF0aC5jcmVhdGVDRlN0cmluZygpLmdldCgpLCBr
Q0ZVUkxXaW5kb3dzUGF0aFN0eWxlLCBmYWxzZSkpOwotICAgIFVSTCB1cmwoY2ZVUkwuZ2V0KCkp
OworICAgIFVSTCB1cmwoYWRvcHRDRihDRlVSTENyZWF0ZVdpdGhGaWxlU3lzdGVtUGF0aCgwLCBw
YXRoLmNyZWF0ZUNGU3RyaW5nKCkuZ2V0KCksIGtDRlVSTFdpbmRvd3NQYXRoU3R5bGUsIGZhbHNl
KSkuZ2V0KCkpOwogI2Vsc2UKICAgICBVUkwgdXJsOwotCiAgICAgdXJsLnNldFByb3RvY29sKEFT
Q0lJTGl0ZXJhbCgiZmlsZSIpKTsKICAgICB1cmwuc2V0UGF0aChwYXRoKTsKICNlbmRpZgpAQCAt
MjQ2LDcgKzI0NCw3IEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZUhvc3Q6Om1heWJlTG9hZFN5bmNo
cm9ub3VzbHkoUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBSZXNvCiAgICAgaWYgKCFzaG91bGRM
b2FkUmVzb3VyY2VGcm9tQXBwbGljYXRpb25DYWNoZShyZXF1ZXN0LCByZXNvdXJjZSkpCiAgICAg
ICAgIHJldHVybiBmYWxzZTsKIAotICAgIFJlZlB0cjxTaGFyZWRCdWZmZXI+IHJlc3BvbnNlRGF0
YSA9IHJlc291cmNlID8gYnVmZmVyRnJvbVJlc291cmNlKCpyZXNvdXJjZSkgOiBudWxscHRyOwor
ICAgIGF1dG8gcmVzcG9uc2VEYXRhID0gcmVzb3VyY2UgPyBidWZmZXJGcm9tUmVzb3VyY2UoKnJl
c291cmNlKSA6IG51bGxwdHI7CiAgICAgaWYgKCFyZXNwb25zZURhdGEpIHsKICAgICAgICAgZXJy
b3IgPSBtX2RvY3VtZW50TG9hZGVyLmZyYW1lTG9hZGVyKCktPmNsaWVudCgpLmNhbm5vdFNob3dV
UkxFcnJvcihyZXF1ZXN0KTsKICAgICAgICAgcmV0dXJuIHRydWU7CkBAIC0yODYsMjAgKzI4NCwy
MSBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpzZXRET01BcHBsaWNhdGlvbkNhY2hlKERP
TUFwcGxpY2F0aW9uQ2FjaGUqIGRvbUFwcGxpYwogICAgIG1fZG9tQXBwbGljYXRpb25DYWNoZSA9
IGRvbUFwcGxpY2F0aW9uQ2FjaGU7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6Om5v
dGlmeURPTUFwcGxpY2F0aW9uQ2FjaGUoRXZlbnRJRCBpZCwgaW50IHRvdGFsLCBpbnQgZG9uZSkK
K3ZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6Om5vdGlmeURPTUFwcGxpY2F0aW9uQ2FjaGUoY29u
c3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGludCB0b3RhbCwgaW50IGRvbmUpCiB7Ci0gICAg
aWYgKGlkICE9IFBST0dSRVNTX0VWRU5UKQorICAgIGlmIChldmVudFR5cGUgIT0gZXZlbnROYW1l
cygpLnByb2dyZXNzRXZlbnQpCiAgICAgICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6dXBk
YXRlQXBwbGljYXRpb25DYWNoZVN0YXR1cyhtX2RvY3VtZW50TG9hZGVyLmZyYW1lKCkpOwogCiAg
ICAgaWYgKG1fZGVmZXJzRXZlbnRzKSB7CiAgICAgICAgIC8vIEV2ZW50IGRpc3BhdGNoaW5nIGlz
IGRlZmVycmVkIHVudGlsIGRvY3VtZW50Lm9ubG9hZCBoYXMgZmlyZWQuCi0gICAgICAgIG1fZGVm
ZXJyZWRFdmVudHMuYXBwZW5kKERlZmVycmVkRXZlbnQoaWQsIHRvdGFsLCBkb25lKSk7CisgICAg
ICAgIG1fZGVmZXJyZWRFdmVudHMuYXBwZW5kKHsgZXZlbnRUeXBlLCB0b3RhbCwgZG9uZSB9KTsK
ICAgICAgICAgcmV0dXJuOwogICAgIH0KLSAgICBkaXNwYXRjaERPTUV2ZW50KGlkLCB0b3RhbCwg
ZG9uZSk7CisKKyAgICBkaXNwYXRjaERPTUV2ZW50KGV2ZW50VHlwZSwgdG90YWwsIGRvbmUpOwog
fQogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpzdG9wTG9hZGluZ0luRnJhbWUoRnJhbWUq
IGZyYW1lKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c3RvcExvYWRpbmdJbkZyYW1lKEZy
YW1lJiBmcmFtZSkKIHsKICAgICBBU1NFUlQoIW1fYXBwbGljYXRpb25DYWNoZSB8fCAhbV9jYW5k
aWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAgfHwgbV9hcHBsaWNhdGlvbkNhY2hlLT5ncm91cCgp
ID09IG1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKTsKIApAQCAtMzEyLDUzICszMTEs
NjggQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c3RvcExvYWRpbmdJbkZyYW1lKEZyYW1l
KiBmcmFtZSkKIHZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OnN0b3BEZWZlcnJpbmdFdmVudHMo
KQogewogICAgIFJlZjxEb2N1bWVudExvYWRlcj4gcHJvdGVjdChtX2RvY3VtZW50TG9hZGVyKTsK
LSAgICBmb3IgKGF1dG8mIGV2ZW50IDogbV9kZWZlcnJlZEV2ZW50cykKLSAgICAgICAgZGlzcGF0
Y2hET01FdmVudChldmVudC5ldmVudElELCBldmVudC5wcm9ncmVzc1RvdGFsLCBldmVudC5wcm9n
cmVzc0RvbmUpOworCisgICAgLy8gTm90ZSwgZG8gbm90IGNhY2hlIHRoZSBzaXplIGluIGEgbG9j
YWwgdmFyaWFibGUuCisgICAgLy8gVGhpcyBjb2RlIG5lZWRzIHRvIHByb3Blcmx5IGhhbmRsZSB0
aGUgY2FzZSB3aGVyZSBtb3JlIGV2ZW50cyBhcmUgYWRkZWQgdG8KKyAgICAvLyBtX2RlZmVycmVk
RXZlbnRzIHdoaWxlIGl0ZXJhdGluZyBpdC4gVGhpcyBpcyB3aHkgd2UgZG9uJ3QgdXNlIGEgbW9k
ZXJuIGZvciBsb29wLgorICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9kZWZlcnJlZEV2ZW50
cy5zaXplKCk7ICsraSkgeworICAgICAgICBhdXRvJiBldmVudCA9IG1fZGVmZXJyZWRFdmVudHNb
aV07CisgICAgICAgIGRpc3BhdGNoRE9NRXZlbnQoZXZlbnQuZXZlbnRUeXBlLCBldmVudC5wcm9n
cmVzc1RvdGFsLCBldmVudC5wcm9ncmVzc0RvbmUpOworICAgIH0KKwogICAgIG1fZGVmZXJyZWRF
dmVudHMuY2xlYXIoKTsKICAgICBtX2RlZmVyc0V2ZW50cyA9IGZhbHNlOwogfQogCi12b2lkIEFw
cGxpY2F0aW9uQ2FjaGVIb3N0OjpmaWxsUmVzb3VyY2VMaXN0KFJlc291cmNlSW5mb0xpc3QqIHJl
c291cmNlcykKK1ZlY3RvcjxBcHBsaWNhdGlvbkNhY2hlSG9zdDo6UmVzb3VyY2VJbmZvPiBBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6cmVzb3VyY2VMaXN0KCkKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hl
KiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKTsKKyAgICBWZWN0b3I8UmVzb3VyY2VJbmZvPiBy
ZXN1bHQ7CisKKyAgICBhdXRvKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKTsKICAgICBpZiAo
IWNhY2hlIHx8ICFjYWNoZS0+aXNDb21wbGV0ZSgpKQotICAgICAgICByZXR1cm47CisgICAgICAg
IHJldHVybiByZXN1bHQ7CiAKLSAgICBmb3IgKGNvbnN0IGF1dG8mIHVybEFuZFJlc291cmNlIDog
Y2FjaGUtPnJlc291cmNlcygpKSB7Ci0gICAgICAgIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSog
cmVzb3VyY2UgPSB1cmxBbmRSZXNvdXJjZS52YWx1ZS5nZXQoKTsKKyAgICByZXN1bHQucmVzZXJ2
ZUluaXRpYWxDYXBhY2l0eShjYWNoZS0+cmVzb3VyY2VzKCkuc2l6ZSgpKTsKIAotICAgICAgICB1
bnNpZ25lZCB0eXBlID0gcmVzb3VyY2UtPnR5cGUoKTsKKyAgICBmb3IgKGF1dG8mIHVybEFuZFJl
c291cmNlIDogY2FjaGUtPnJlc291cmNlcygpKSB7CisgICAgICAgIEFTU0VSVCh1cmxBbmRSZXNv
dXJjZS52YWx1ZSk7CisgICAgICAgIGF1dG8mIHJlc291cmNlID0gKnVybEFuZFJlc291cmNlLnZh
bHVlOworCisgICAgICAgIHVuc2lnbmVkIHR5cGUgPSByZXNvdXJjZS50eXBlKCk7CiAgICAgICAg
IGJvb2wgaXNNYXN0ZXIgPSB0eXBlICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXI7
CiAgICAgICAgIGJvb2wgaXNNYW5pZmVzdCA9IHR5cGUgJiBBcHBsaWNhdGlvbkNhY2hlUmVzb3Vy
Y2U6Ok1hbmlmZXN0OwogICAgICAgICBib29sIGlzRXhwbGljaXQgPSB0eXBlICYgQXBwbGljYXRp
b25DYWNoZVJlc291cmNlOjpFeHBsaWNpdDsKICAgICAgICAgYm9vbCBpc0ZvcmVpZ24gPSB0eXBl
ICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpGb3JlaWduOwogICAgICAgICBib29sIGlzRmFs
bGJhY2sgPSB0eXBlICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpGYWxsYmFjazsKIAotICAg
ICAgICByZXNvdXJjZXMtPmFwcGVuZChSZXNvdXJjZUluZm8ocmVzb3VyY2UtPnVybCgpLCBpc01h
c3RlciwgaXNNYW5pZmVzdCwgaXNGYWxsYmFjaywgaXNGb3JlaWduLCBpc0V4cGxpY2l0LCByZXNv
dXJjZS0+ZXN0aW1hdGVkU2l6ZUluU3RvcmFnZSgpKSk7CisgICAgICAgIHJlc3VsdC51bmNoZWNr
ZWRBcHBlbmQoeyByZXNvdXJjZS51cmwoKSwgaXNNYXN0ZXIsIGlzTWFuaWZlc3QsIGlzRmFsbGJh
Y2ssIGlzRm9yZWlnbiwgaXNFeHBsaWNpdCwgcmVzb3VyY2UuZXN0aW1hdGVkU2l6ZUluU3RvcmFn
ZSgpIH0pOwogICAgIH0KKworICAgIHJldHVybiByZXN1bHQ7CiB9CiAKIEFwcGxpY2F0aW9uQ2Fj
aGVIb3N0OjpDYWNoZUluZm8gQXBwbGljYXRpb25DYWNoZUhvc3Q6OmFwcGxpY2F0aW9uQ2FjaGVJ
bmZvKCkKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUo
KTsKKyAgICBhdXRvKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKTsKICAgICBpZiAoIWNhY2hl
IHx8ICFjYWNoZS0+aXNDb21wbGV0ZSgpKQotICAgICAgICByZXR1cm4gQ2FjaGVJbmZvKFVSTCgp
LCAwLCAwLCAwKTsKKyAgICAgICAgcmV0dXJuIHsgeyB9LCAwLCAwLCAwIH07CiAKICAgICAvLyBG
SVhNRTogQWRkICJDcmVhdGlvbiBUaW1lIiBhbmQgIlVwZGF0ZSBUaW1lIiB0byBBcHBsaWNhdGlv
biBDYWNoZXMuCi0gICAgcmV0dXJuIENhY2hlSW5mbyhjYWNoZS0+bWFuaWZlc3RSZXNvdXJjZSgp
LT51cmwoKSwgMCwgMCwgY2FjaGUtPmVzdGltYXRlZFNpemVJblN0b3JhZ2UoKSk7CisgICAgcmV0
dXJuIHsgY2FjaGUtPm1hbmlmZXN0UmVzb3VyY2UoKS0+dXJsKCksIDAsIDAsIGNhY2hlLT5lc3Rp
bWF0ZWRTaXplSW5TdG9yYWdlKCkgfTsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6
ZGlzcGF0Y2hET01FdmVudChFdmVudElEIGlkLCBpbnQgdG90YWwsIGludCBkb25lKQorc3RhdGlj
IFJlZjxFdmVudD4gY3JlYXRlQXBwbGljYXRpb25DYWNoZUV2ZW50KGNvbnN0IEF0b21pY1N0cmlu
ZyYgZXZlbnRUeXBlLCBpbnQgdG90YWwsIGludCBkb25lKQogewotICAgIGlmIChtX2RvbUFwcGxp
Y2F0aW9uQ2FjaGUpIHsKLSAgICAgICAgY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUgPSBE
T01BcHBsaWNhdGlvbkNhY2hlOjp0b0V2ZW50VHlwZShpZCk7Ci0gICAgICAgIFJlZlB0cjxFdmVu
dD4gZXZlbnQ7Ci0gICAgICAgIGlmIChpZCA9PSBQUk9HUkVTU19FVkVOVCkKLSAgICAgICAgICAg
IGV2ZW50ID0gUHJvZ3Jlc3NFdmVudDo6Y3JlYXRlKGV2ZW50VHlwZSwgdHJ1ZSwgZG9uZSwgdG90
YWwpOwotICAgICAgICBlbHNlCi0gICAgICAgICAgICBldmVudCA9IEV2ZW50OjpjcmVhdGUoZXZl
bnRUeXBlLCBmYWxzZSwgZmFsc2UpOwotICAgICAgICBtX2RvbUFwcGxpY2F0aW9uQ2FjaGUtPmRp
c3BhdGNoRXZlbnQoKmV2ZW50KTsKLSAgICB9CisgICAgaWYgKGV2ZW50VHlwZSA9PSBldmVudE5h
bWVzKCkucHJvZ3Jlc3NFdmVudCkKKyAgICAgICAgcmV0dXJuIFByb2dyZXNzRXZlbnQ6OmNyZWF0
ZShldmVudFR5cGUsIHRydWUsIGRvbmUsIHRvdGFsKTsKKyAgICByZXR1cm4gRXZlbnQ6OmNyZWF0
ZShldmVudFR5cGUsIGZhbHNlLCBmYWxzZSk7Cit9CisKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUhv
c3Q6OmRpc3BhdGNoRE9NRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGludCB0
b3RhbCwgaW50IGRvbmUpCit7CisgICAgaWYgKCFtX2RvbUFwcGxpY2F0aW9uQ2FjaGUpCisgICAg
ICAgIHJldHVybjsKKyAgICBtX2RvbUFwcGxpY2F0aW9uQ2FjaGUtPmRpc3BhdGNoRXZlbnQoY3Jl
YXRlQXBwbGljYXRpb25DYWNoZUV2ZW50KGV2ZW50VHlwZSwgdG90YWwsIGRvbmUpKTsKIH0KIAog
dm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c2V0Q2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdy
b3VwKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXApCkBAIC0zNjcsMjUgKzM4MSwyNCBAQCB2
b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpzZXRDYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3Jv
dXAoQXBwbGljYXRpb25DYWNoZUdybwogICAgIG1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdy
b3VwID0gZ3JvdXA7CiB9CiAgICAgCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpzZXRBcHBs
aWNhdGlvbkNhY2hlKFBhc3NSZWZQdHI8QXBwbGljYXRpb25DYWNoZT4gYXBwbGljYXRpb25DYWNo
ZSkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OnNldEFwcGxpY2F0aW9uQ2FjaGUoUmVmUHRy
PEFwcGxpY2F0aW9uQ2FjaGU+JiYgYXBwbGljYXRpb25DYWNoZSkKIHsKICAgICBpZiAobV9jYW5k
aWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXApIHsKICAgICAgICAgQVNTRVJUKCFtX2FwcGxpY2F0
aW9uQ2FjaGUpOwogICAgICAgICBtX2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCA9IG51
bGxwdHI7CiAgICAgfQotCi0gICAgbV9hcHBsaWNhdGlvbkNhY2hlID0gYXBwbGljYXRpb25DYWNo
ZTsKKyAgICBtX2FwcGxpY2F0aW9uQ2FjaGUgPSBXVEZNb3ZlKGFwcGxpY2F0aW9uQ2FjaGUpOwog
fQogCiBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpzaG91bGRMb2FkUmVzb3VyY2VGcm9tQXBw
bGljYXRpb25DYWNoZShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIG9yaWdpbmFsUmVxdWVzdCwgQXBw
bGljYXRpb25DYWNoZVJlc291cmNlKiYgcmVzb3VyY2UpCiB7Ci0gICAgQXBwbGljYXRpb25DYWNo
ZSogY2FjaGUgPSBhcHBsaWNhdGlvbkNhY2hlKCk7CisgICAgYXV0byogY2FjaGUgPSBhcHBsaWNh
dGlvbkNhY2hlKCk7CiAgICAgaWYgKCFjYWNoZSB8fCAhY2FjaGUtPmlzQ29tcGxldGUoKSkKICAg
ICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3Qob3JpZ2lu
YWxSZXF1ZXN0KTsKLSAgICBpZiAoRnJhbWUqIGxvYWRlckZyYW1lID0gbV9kb2N1bWVudExvYWRl
ci5mcmFtZSgpKSB7Ci0gICAgICAgIGlmIChEb2N1bWVudCogZG9jdW1lbnQgPSBsb2FkZXJGcmFt
ZS0+ZG9jdW1lbnQoKSkKKyAgICBpZiAoYXV0byogbG9hZGVyRnJhbWUgPSBtX2RvY3VtZW50TG9h
ZGVyLmZyYW1lKCkpIHsKKyAgICAgICAgaWYgKGF1dG8qIGRvY3VtZW50ID0gbG9hZGVyRnJhbWUt
PmRvY3VtZW50KCkpCiAgICAgICAgICAgICBkb2N1bWVudC0+Y29udGVudFNlY3VyaXR5UG9saWN5
KCktPnVwZ3JhZGVJbnNlY3VyZVJlcXVlc3RJZk5lZWRlZChyZXF1ZXN0LCBDb250ZW50U2VjdXJp
dHlQb2xpY3k6Okluc2VjdXJlUmVxdWVzdFR5cGU6OkxvYWQpOwogICAgIH0KICAgICAKQEAgLTQz
MCw3ICs0NDMsNiBAQCBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpnZXRBcHBsaWNhdGlvbkNh
Y2hlRmFsbGJhY2tSZXNvdXJjZShjb25zdCBSZXNvdXJjZVJlcQogCiAgICAgcmVzb3VyY2UgPSBj
YWNoZS0+cmVzb3VyY2VGb3JVUkwoZmFsbGJhY2tVUkwpOwogICAgIEFTU0VSVChyZXNvdXJjZSk7
Ci0KICAgICByZXR1cm4gdHJ1ZTsKIH0KIApAQCAtNDQ0LDMwICs0NTYsMjcgQEAgYm9vbCBBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6c2NoZWR1bGVMb2FkRmFsbGJhY2tSZXNvdXJjZUZyb21BcHBsaWNh
dGlvbkNhY2hlKFJlc28KICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgbG9hZGVyLT53aWxs
U3dpdGNoVG9TdWJzdGl0dXRlUmVzb3VyY2UoKTsKLQogICAgIG1fZG9jdW1lbnRMb2FkZXIuc2No
ZWR1bGVTdWJzdGl0dXRlUmVzb3VyY2VMb2FkKCpsb2FkZXIsICpyZXNvdXJjZSk7Ci0KICAgICBy
ZXR1cm4gdHJ1ZTsKIH0KIAogQXBwbGljYXRpb25DYWNoZUhvc3Q6OlN0YXR1cyBBcHBsaWNhdGlv
bkNhY2hlSG9zdDo6c3RhdHVzKCkgY29uc3QKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlKiBjYWNo
ZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKTsgICAgCisgICAgYXV0byogY2FjaGUgPSBhcHBsaWNhdGlv
bkNhY2hlKCk7CiAgICAgaWYgKCFjYWNoZSkKICAgICAgICAgcmV0dXJuIFVOQ0FDSEVEOwogCiAg
ICAgc3dpdGNoIChjYWNoZS0+Z3JvdXAoKS0+dXBkYXRlU3RhdHVzKCkpIHsKLSAgICAgICAgY2Fz
ZSBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OkNoZWNraW5nOgotICAgICAgICAgICAgcmV0dXJuIENI
RUNLSU5HOwotICAgICAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6RG93bmxvYWRpbmc6
Ci0gICAgICAgICAgICByZXR1cm4gRE9XTkxPQURJTkc7Ci0gICAgICAgIGNhc2UgQXBwbGljYXRp
b25DYWNoZUdyb3VwOjpJZGxlOiB7Ci0gICAgICAgICAgICBpZiAoY2FjaGUtPmdyb3VwKCktPmlz
T2Jzb2xldGUoKSkKLSAgICAgICAgICAgICAgICByZXR1cm4gT0JTT0xFVEU7Ci0gICAgICAgICAg
ICBpZiAoY2FjaGUgIT0gY2FjaGUtPmdyb3VwKCktPm5ld2VzdENhY2hlKCkpCi0gICAgICAgICAg
ICAgICAgcmV0dXJuIFVQREFURVJFQURZOwotICAgICAgICAgICAgcmV0dXJuIElETEU7Ci0gICAg
ICAgIH0KKyAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6Q2hlY2tpbmc6CisgICAgICAg
IHJldHVybiBDSEVDS0lORzsKKyAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6RG93bmxv
YWRpbmc6CisgICAgICAgIHJldHVybiBET1dOTE9BRElORzsKKyAgICBjYXNlIEFwcGxpY2F0aW9u
Q2FjaGVHcm91cDo6SWRsZToKKyAgICAgICAgaWYgKGNhY2hlLT5ncm91cCgpLT5pc09ic29sZXRl
KCkpCisgICAgICAgICAgICByZXR1cm4gT0JTT0xFVEU7CisgICAgICAgIGlmIChjYWNoZSAhPSBj
YWNoZS0+Z3JvdXAoKS0+bmV3ZXN0Q2FjaGUoKSkKKyAgICAgICAgICAgIHJldHVybiBVUERBVEVS
RUFEWTsKKyAgICAgICAgcmV0dXJuIElETEU7CiAgICAgfQogCiAgICAgQVNTRVJUX05PVF9SRUFD
SEVEKCk7CkBAIC00NzYsMjcgKzQ4NSwzMCBAQCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6U3RhdHVz
IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpzdGF0dXMoKSBjb25zdAogCiBib29sIEFwcGxpY2F0aW9u
Q2FjaGVIb3N0Ojp1cGRhdGUoKQogewotICAgIEFwcGxpY2F0aW9uQ2FjaGUqIGNhY2hlID0gYXBw
bGljYXRpb25DYWNoZSgpOworICAgIGF1dG8qIGNhY2hlID0gYXBwbGljYXRpb25DYWNoZSgpOwog
ICAgIGlmICghY2FjaGUpCiAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBjYWNoZS0+Z3JvdXAo
KS0+dXBkYXRlKG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUoKSwgQXBwbGljYXRpb25DYWNoZVVwZGF0
ZVdpdGhvdXRCcm93c2luZ0NvbnRleHQpOworICAgIGF1dG8qIGZyYW1lID0gbV9kb2N1bWVudExv
YWRlci5mcmFtZSgpOworICAgIGlmICghZnJhbWUpCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAg
ICBjYWNoZS0+Z3JvdXAoKS0+dXBkYXRlKCpmcmFtZSwgQXBwbGljYXRpb25DYWNoZVVwZGF0ZVdp
dGhvdXRCcm93c2luZ0NvbnRleHQpOwogICAgIHJldHVybiB0cnVlOwogfQogCiBib29sIEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0Ojpzd2FwQ2FjaGUoKQogewotICAgIEFwcGxpY2F0aW9uQ2FjaGUqIGNh
Y2hlID0gYXBwbGljYXRpb25DYWNoZSgpOworICAgIGF1dG8qIGNhY2hlID0gYXBwbGljYXRpb25D
YWNoZSgpOwogICAgIGlmICghY2FjaGUpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIC8v
IElmIHRoZSBncm91cCBvZiBhcHBsaWNhdGlvbiBjYWNoZXMgdG8gd2hpY2ggY2FjaGUgYmVsb25n
cyBoYXMgdGhlIGxpZmVjeWNsZSBzdGF0dXMgb2Jzb2xldGUsIHVuYXNzb2NpYXRlIGRvY3VtZW50
IGZyb20gY2FjaGUuCiAgICAgaWYgKGNhY2hlLT5ncm91cCgpLT5pc09ic29sZXRlKCkpIHsKLSAg
ICAgICAgY2FjaGUtPmdyb3VwKCktPmRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKCZtX2RvY3Vt
ZW50TG9hZGVyKTsKKyAgICAgICAgY2FjaGUtPmdyb3VwKCktPmRpc2Fzc29jaWF0ZURvY3VtZW50
TG9hZGVyKG1fZG9jdW1lbnRMb2FkZXIpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAK
ICAgICAvLyBJZiB0aGVyZSBpcyBubyBuZXdlciBjYWNoZSwgcmFpc2UgYW4gSU5WQUxJRF9TVEFU
RV9FUlIgZXhjZXB0aW9uLgotICAgIEFwcGxpY2F0aW9uQ2FjaGUqIG5ld2VzdENhY2hlID0gY2Fj
aGUtPmdyb3VwKCktPm5ld2VzdENhY2hlKCk7CisgICAgYXV0byogbmV3ZXN0Q2FjaGUgPSBjYWNo
ZS0+Z3JvdXAoKS0+bmV3ZXN0Q2FjaGUoKTsKICAgICBpZiAoY2FjaGUgPT0gbmV3ZXN0Q2FjaGUp
CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAKQEAgLTUwOCwxNCArNTIwLDEzIEBAIGJvb2wg
QXBwbGljYXRpb25DYWNoZUhvc3Q6OnN3YXBDYWNoZSgpCiAKIHZvaWQgQXBwbGljYXRpb25DYWNo
ZUhvc3Q6OmFib3J0KCkKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGNhY2hlR3JvdXAg
PSBjYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKTsKLSAgICBpZiAoY2FjaGVHcm91cCkK
LSAgICAgICAgY2FjaGVHcm91cC0+YWJvcnQobV9kb2N1bWVudExvYWRlci5mcmFtZSgpKTsKLSAg
ICBlbHNlIHsKLSAgICAgICAgQXBwbGljYXRpb25DYWNoZSogY2FjaGUgPSBhcHBsaWNhdGlvbkNh
Y2hlKCk7Ci0gICAgICAgIGlmIChjYWNoZSkKLSAgICAgICAgICAgIGNhY2hlLT5ncm91cCgpLT5h
Ym9ydChtX2RvY3VtZW50TG9hZGVyLmZyYW1lKCkpOwotICAgIH0KKyAgICBhdXRvKiBmcmFtZSA9
IG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUoKTsKKyAgICBpZiAoIWZyYW1lKQorICAgICAgICByZXR1
cm47CisgICAgaWYgKGF1dG8qIGNhY2hlR3JvdXAgPSBjYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hl
R3JvdXAoKSkKKyAgICAgICAgY2FjaGVHcm91cC0+YWJvcnQoKmZyYW1lKTsKKyAgICBlbHNlIGlm
IChhdXRvKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKSkKKyAgICAgICAgY2FjaGUtPmdyb3Vw
KCktPmFib3J0KCpmcmFtZSk7CiB9CiAKIGJvb2wgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmlzQXBw
bGljYXRpb25DYWNoZUVuYWJsZWQoKQpAQCAtNTI1LDE1ICs1MzYsMTIgQEAgYm9vbCBBcHBsaWNh
dGlvbkNhY2hlSG9zdDo6aXNBcHBsaWNhdGlvbkNhY2hlRW5hYmxlZCgpCiAKIGJvb2wgQXBwbGlj
YXRpb25DYWNoZUhvc3Q6OmlzQXBwbGljYXRpb25DYWNoZUJsb2NrZWRGb3JSZXF1ZXN0KGNvbnN0
IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKIHsKLSAgICBGcmFtZSogZnJhbWUgPSBtX2RvY3Vt
ZW50TG9hZGVyLmZyYW1lKCk7CisgICAgYXV0byogZnJhbWUgPSBtX2RvY3VtZW50TG9hZGVyLmZy
YW1lKCk7CiAgICAgaWYgKCFmcmFtZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwotCiAgICAgaWYg
KGZyYW1lLT5pc01haW5GcmFtZSgpKQogICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICBSZWY8
U2VjdXJpdHlPcmlnaW4+IG9yaWdpbihTZWN1cml0eU9yaWdpbjo6Y3JlYXRlKHJlcXVlc3QudXJs
KCkpKTsKLSAgICByZXR1cm4gIW9yaWdpbi5nZXQoKS5jYW5BY2Nlc3NBcHBsaWNhdGlvbkNhY2hl
KGZyYW1lLT5kb2N1bWVudCgpLT50b3BPcmlnaW4oKSk7CisgICAgcmV0dXJuICFTZWN1cml0eU9y
aWdpbjo6Y3JlYXRlKHJlcXVlc3QudXJsKCkpLT5jYW5BY2Nlc3NBcHBsaWNhdGlvbkNhY2hlKGZy
YW1lLT5kb2N1bWVudCgpLT50b3BPcmlnaW4oKSk7CiB9CiAKIH0gIC8vIG5hbWVzcGFjZSBXZWJD
b3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRp
b25DYWNoZUhvc3QuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlv
bkNhY2hlSG9zdC5oCmluZGV4IGM5NWIyM2IyODc0ODI3OTYwNzU4ZjMyODA2N2IxZGZiYWViODc4
YmEuLjJiZmRjNjJmOTM5OGQwMGY0Y2IxZTkxYjg2ZDdmMzZjODUzYjc3ODIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlSG9zdC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlSG9zdC5o
CkBAIC0xLDYgKzEsNyBAQAogLyoKLSAqIENvcHlyaWdodCAoYykgMjAwOSwgR29vZ2xlIEluYy4g
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAKKyAqIENvcHlyaWdodCAoYykgMjAwOSwgR29vZ2xl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoYykgMjAxNyBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMg
YXJlCiAgKiBtZXQ6CkBAIC0zMCwxNjUgKzMxLDEzNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lu
Y2x1ZGUgIlBsYXRmb3JtRXhwb3J0TWFjcm9zLmgiCiAjaW5jbHVkZSAiVVJMLmgiCiAjaW5jbHVk
ZSA8d3RmL0RlcXVlLmg+Ci0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KLSNpbmNsdWRlIDx3
dGYvUmVmUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgogCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7Ci0gICAgY2xhc3MgRE9NQXBwbGljYXRpb25DYWNoZTsKLSAgICBjbGFzcyBEb2N1bWVudExv
YWRlcjsKLSAgICBjbGFzcyBGcmFtZTsKLSAgICBjbGFzcyBSZXNvdXJjZUVycm9yOwotICAgIGNs
YXNzIFJlc291cmNlTG9hZGVyOwotICAgIGNsYXNzIFJlc291cmNlUmVxdWVzdDsKLSAgICBjbGFz
cyBSZXNvdXJjZVJlc3BvbnNlOwotICAgIGNsYXNzIFNoYXJlZEJ1ZmZlcjsKLSAgICBjbGFzcyBT
dWJzdGl0dXRlRGF0YTsKLSAgICBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlOwotICAgIGNsYXNzIEFw
cGxpY2F0aW9uQ2FjaGVHcm91cDsKLSAgICBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U7
Ci0gICAgY2xhc3MgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U7Ci0KLSAgICBjbGFzcyBBcHBsaWNh
dGlvbkNhY2hlSG9zdCB7Ci0gICAgICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKEFwcGxpY2F0aW9u
Q2FjaGVIb3N0KTsgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7Ci0gICAgcHVibGljOgotICAgICAg
ICAvLyBUaGUgU3RhdHVzIG51bWVyaWMgdmFsdWVzIGFyZSBzcGVjaWZpZWQgaW4gdGhlIEhUTUw1
IHNwZWMuCi0gICAgICAgIGVudW0gU3RhdHVzIHsKLSAgICAgICAgICAgIFVOQ0FDSEVEID0gMCwK
LSAgICAgICAgICAgIElETEUgPSAxLAotICAgICAgICAgICAgQ0hFQ0tJTkcgPSAyLAotICAgICAg
ICAgICAgRE9XTkxPQURJTkcgPSAzLAotICAgICAgICAgICAgVVBEQVRFUkVBRFkgPSA0LAotICAg
ICAgICAgICAgT0JTT0xFVEUgPSA1Ci0gICAgICAgIH07Ci0KLSAgICAgICAgZW51bSBFdmVudElE
IHsKLSAgICAgICAgICAgIENIRUNLSU5HX0VWRU5UID0gMCwKLSAgICAgICAgICAgIEVSUk9SX0VW
RU5ULAotICAgICAgICAgICAgTk9VUERBVEVfRVZFTlQsCi0gICAgICAgICAgICBET1dOTE9BRElO
R19FVkVOVCwKLSAgICAgICAgICAgIFBST0dSRVNTX0VWRU5ULAotICAgICAgICAgICAgVVBEQVRF
UkVBRFlfRVZFTlQsCi0gICAgICAgICAgICBDQUNIRURfRVZFTlQsCi0gICAgICAgICAgICBPQlNP
TEVURV9FVkVOVCAgLy8gTXVzdCByZW1haW4gdGhlIGxhc3QgdmFsdWUsIHRoaXMgaXMgdXNlZCB0
byBzaXplIGFycmF5cy4KLSAgICAgICAgfTsKLQotICAgICAgICBzdHJ1Y3QgQ2FjaGVJbmZvIHsK
LSAgICAgICAgICAgIENhY2hlSW5mbyhjb25zdCBVUkwmIG1hbmlmZXN0LCBkb3VibGUgY3JlYXRp
b25UaW1lLCBkb3VibGUgdXBkYXRlVGltZSwgbG9uZyBsb25nIHNpemUpCi0gICAgICAgICAgICAg
ICAgOiBtX21hbmlmZXN0KG1hbmlmZXN0KQotICAgICAgICAgICAgICAgICwgbV9jcmVhdGlvblRp
bWUoY3JlYXRpb25UaW1lKQotICAgICAgICAgICAgICAgICwgbV91cGRhdGVUaW1lKHVwZGF0ZVRp
bWUpCi0gICAgICAgICAgICAgICAgLCBtX3NpemUoc2l6ZSkgeyB9Ci0gICAgICAgICAgICBVUkwg
bV9tYW5pZmVzdDsKLSAgICAgICAgICAgIGRvdWJsZSBtX2NyZWF0aW9uVGltZTsKLSAgICAgICAg
ICAgIGRvdWJsZSBtX3VwZGF0ZVRpbWU7Ci0gICAgICAgICAgICBsb25nIGxvbmcgbV9zaXplOwot
ICAgICAgICB9OwotCi0gICAgICAgIHN0cnVjdCBSZXNvdXJjZUluZm8gewotICAgICAgICAgICAg
UmVzb3VyY2VJbmZvKGNvbnN0IFVSTCYgcmVzb3VyY2UsIGJvb2wgaXNNYXN0ZXIsIGJvb2wgaXNN
YW5pZmVzdCwgYm9vbCBpc0ZhbGxiYWNrLCBib29sIGlzRm9yZWlnbiwgYm9vbCBpc0V4cGxpY2l0
LCBsb25nIGxvbmcgc2l6ZSkKLSAgICAgICAgICAgICAgICA6IG1fcmVzb3VyY2UocmVzb3VyY2Up
Ci0gICAgICAgICAgICAgICAgLCBtX2lzTWFzdGVyKGlzTWFzdGVyKQotICAgICAgICAgICAgICAg
ICwgbV9pc01hbmlmZXN0KGlzTWFuaWZlc3QpCi0gICAgICAgICAgICAgICAgLCBtX2lzRmFsbGJh
Y2soaXNGYWxsYmFjaykKLSAgICAgICAgICAgICAgICAsIG1faXNGb3JlaWduKGlzRm9yZWlnbikK
LSAgICAgICAgICAgICAgICAsIG1faXNFeHBsaWNpdChpc0V4cGxpY2l0KQotICAgICAgICAgICAg
ICAgICwgbV9zaXplKHNpemUpIHsgfQotICAgICAgICAgICAgVVJMIG1fcmVzb3VyY2U7Ci0gICAg
ICAgICAgICBib29sIG1faXNNYXN0ZXI7Ci0gICAgICAgICAgICBib29sIG1faXNNYW5pZmVzdDsK
LSAgICAgICAgICAgIGJvb2wgbV9pc0ZhbGxiYWNrOwotICAgICAgICAgICAgYm9vbCBtX2lzRm9y
ZWlnbjsKLSAgICAgICAgICAgIGJvb2wgbV9pc0V4cGxpY2l0OwotICAgICAgICAgICAgbG9uZyBs
b25nIG1fc2l6ZTsKLSAgICAgICAgfTsKLQotICAgICAgICB0eXBlZGVmIFZlY3RvcjxSZXNvdXJj
ZUluZm8+IFJlc291cmNlSW5mb0xpc3Q7Ci0KLSAgICAgICAgZXhwbGljaXQgQXBwbGljYXRpb25D
YWNoZUhvc3QoRG9jdW1lbnRMb2FkZXImKTsKLSAgICAgICAgfkFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCk7Ci0KLSAgICAgICAgc3RhdGljIFVSTCBjcmVhdGVGaWxlVVJMKGNvbnN0IFN0cmluZyYpOwot
Ci0gICAgICAgIHZvaWQgc2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3QoKTsKLSAgICAgICAgdm9p
ZCBzZWxlY3RDYWNoZVdpdGhNYW5pZmVzdChjb25zdCBVUkwmIG1hbmlmZXN0VVJMKTsKLQotICAg
ICAgICB2b2lkIG1heWJlTG9hZE1haW5SZXNvdXJjZShSZXNvdXJjZVJlcXVlc3QmLCBTdWJzdGl0
dXRlRGF0YSYpOwotICAgICAgICB2b2lkIG1heWJlTG9hZE1haW5SZXNvdXJjZUZvclJlZGlyZWN0
KFJlc291cmNlUmVxdWVzdCYsIFN1YnN0aXR1dGVEYXRhJik7Ci0gICAgICAgIGJvb2wgbWF5YmVM
b2FkRmFsbGJhY2tGb3JNYWluUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3Qg
UmVzb3VyY2VSZXNwb25zZSYpOwotICAgICAgICB2b2lkIG1haW5SZXNvdXJjZURhdGFSZWNlaXZl
ZChjb25zdCBjaGFyKiBkYXRhLCBpbnQgbGVuZ3RoLCBsb25nIGxvbmcgZW5jb2RlZERhdGFMZW5n
dGgsIGJvb2wgYWxsQXRPbmNlKTsKLSAgICAgICAgdm9pZCBmaW5pc2hlZExvYWRpbmdNYWluUmVz
b3VyY2UoKTsKLSAgICAgICAgdm9pZCBmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKCk7Ci0KLSAg
ICAgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBtYXliZUxvYWRSZXNvdXJjZShSZXNvdXJjZUxvYWRl
ciYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFVSTCYgb3JpZ2luYWxVUkwpOwotICAg
ICAgICBXRUJDT1JFX0VYUE9SVCBib29sIG1heWJlTG9hZEZhbGxiYWNrRm9yUmVkaXJlY3QoUmVz
b3VyY2VMb2FkZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7
Ci0gICAgICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgbWF5YmVMb2FkRmFsbGJhY2tGb3JSZXNwb25z
ZShSZXNvdXJjZUxvYWRlciosIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICAgICAgV0VC
Q09SRV9FWFBPUlQgYm9vbCBtYXliZUxvYWRGYWxsYmFja0ZvckVycm9yKFJlc291cmNlTG9hZGVy
KiwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwotCi0gICAgICAgIGJvb2wgbWF5YmVMb2FkU3luY2hy
b25vdXNseShSZXNvdXJjZVJlcXVlc3QmLCBSZXNvdXJjZUVycm9yJiwgUmVzb3VyY2VSZXNwb25z
ZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+Jik7Ci0gICAgICAgIHZvaWQgbWF5YmVMb2FkRmFsbGJh
Y2tTeW5jaHJvbm91c2x5KGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIFJlc291cmNlRXJyb3ImLCBS
ZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4mKTsKLQotICAgICAgICBib29s
IGNhbkNhY2hlSW5QYWdlQ2FjaGUoKTsKLQotICAgICAgICBTdGF0dXMgc3RhdHVzKCkgY29uc3Q7
ICAKLSAgICAgICAgYm9vbCB1cGRhdGUoKTsKLSAgICAgICAgYm9vbCBzd2FwQ2FjaGUoKTsKLSAg
ICAgICAgdm9pZCBhYm9ydCgpOwotCi0gICAgICAgIHZvaWQgc2V0RE9NQXBwbGljYXRpb25DYWNo
ZShET01BcHBsaWNhdGlvbkNhY2hlKik7Ci0gICAgICAgIHZvaWQgbm90aWZ5RE9NQXBwbGljYXRp
b25DYWNoZShFdmVudElELCBpbnQgcHJvZ3Jlc3NUb3RhbCwgaW50IHByb2dyZXNzRG9uZSk7Ci0K
LSAgICAgICAgdm9pZCBzdG9wTG9hZGluZ0luRnJhbWUoRnJhbWUqKTsKLQotICAgICAgICB2b2lk
IHN0b3BEZWZlcnJpbmdFdmVudHMoKTsgLy8gQWxzbyByYWlzZXMgdGhlIGV2ZW50cyB0aGF0IGhh
dmUgYmVlbiBxdWV1ZWQgdXAuCi0KLSAgICAgICAgdm9pZCBmaWxsUmVzb3VyY2VMaXN0KFJlc291
cmNlSW5mb0xpc3QqKTsKLSAgICAgICAgQ2FjaGVJbmZvIGFwcGxpY2F0aW9uQ2FjaGVJbmZvKCk7
Ci0KLSAgICAgICAgYm9vbCBzaG91bGRMb2FkUmVzb3VyY2VGcm9tQXBwbGljYXRpb25DYWNoZShj
b25zdCBSZXNvdXJjZVJlcXVlc3QmLCBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqJik7Ci0gICAg
ICAgIGJvb2wgZ2V0QXBwbGljYXRpb25DYWNoZUZhbGxiYWNrUmVzb3VyY2UoY29uc3QgUmVzb3Vy
Y2VSZXF1ZXN0JiwgQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiYsIEFwcGxpY2F0aW9uQ2FjaGUq
ID0gbnVsbHB0cik7Ci0KLSAgICBwcml2YXRlOgotICAgICAgICBib29sIGlzQXBwbGljYXRpb25D
YWNoZUVuYWJsZWQoKTsKLSAgICAgICAgYm9vbCBpc0FwcGxpY2F0aW9uQ2FjaGVCbG9ja2VkRm9y
UmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmKTsKLQotICAgICAgICBzdHJ1Y3QgRGVmZXJy
ZWRFdmVudCB7Ci0gICAgICAgICAgICBFdmVudElEIGV2ZW50SUQ7Ci0gICAgICAgICAgICBpbnQg
cHJvZ3Jlc3NUb3RhbDsKLSAgICAgICAgICAgIGludCBwcm9ncmVzc0RvbmU7Ci0gICAgICAgICAg
ICBEZWZlcnJlZEV2ZW50KEV2ZW50SUQgaWQsIGludCB0b3RhbCwgaW50IGRvbmUpIDogZXZlbnRJ
RChpZCksIHByb2dyZXNzVG90YWwodG90YWwpLCBwcm9ncmVzc0RvbmUoZG9uZSkgeyB9Ci0gICAg
ICAgIH07Ci0KLSAgICAgICAgRE9NQXBwbGljYXRpb25DYWNoZSogbV9kb21BcHBsaWNhdGlvbkNh
Y2hlOwotICAgICAgICBEb2N1bWVudExvYWRlciYgbV9kb2N1bWVudExvYWRlcjsKLSAgICAgICAg
Ym9vbCBtX2RlZmVyc0V2ZW50czsgLy8gRXZlbnRzIGFyZSBkZWZlcnJlZCB1bnRpbCBhZnRlciBk
b2N1bWVudCBvbmxvYWQuCi0gICAgICAgIFZlY3RvcjxEZWZlcnJlZEV2ZW50PiBtX2RlZmVycmVk
RXZlbnRzOwotCi0gICAgICAgIHZvaWQgZGlzcGF0Y2hET01FdmVudChFdmVudElELCBpbnQgcHJv
Z3Jlc3NUb3RhbCwgaW50IHByb2dyZXNzRG9uZSk7Ci0KLSAgICAgICAgZnJpZW5kIGNsYXNzIEFw
cGxpY2F0aW9uQ2FjaGVHcm91cDsKLSAgICAgICAgZnJpZW5kIGNsYXNzIEFwcGxpY2F0aW9uQ2Fj
aGVTdG9yYWdlOwotCi0gICAgICAgIGJvb2wgc2NoZWR1bGVMb2FkRmFsbGJhY2tSZXNvdXJjZUZy
b21BcHBsaWNhdGlvbkNhY2hlKFJlc291cmNlTG9hZGVyKiwgQXBwbGljYXRpb25DYWNoZSogPSBu
dWxscHRyKTsKLSAgICAgICAgdm9pZCBzZXRDYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAo
QXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCk7Ci0gICAgICAgIEFwcGxpY2F0aW9uQ2FjaGVH
cm91cCogY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKCkgY29uc3QgeyByZXR1cm4gbV9j
YW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXA7IH0KLSAgICAgICAgdm9pZCBzZXRBcHBsaWNh
dGlvbkNhY2hlKFBhc3NSZWZQdHI8QXBwbGljYXRpb25DYWNoZT4gYXBwbGljYXRpb25DYWNoZSk7
Ci0gICAgICAgIEFwcGxpY2F0aW9uQ2FjaGUqIGFwcGxpY2F0aW9uQ2FjaGUoKSBjb25zdCB7IHJl
dHVybiBtX2FwcGxpY2F0aW9uQ2FjaGUuZ2V0KCk7IH0KLSAgICAgICAgQXBwbGljYXRpb25DYWNo
ZSogbWFpblJlc291cmNlQXBwbGljYXRpb25DYWNoZSgpIGNvbnN0IHsgcmV0dXJuIG1fbWFpblJl
c291cmNlQXBwbGljYXRpb25DYWNoZS5nZXQoKTsgfQotICAgICAgICBib29sIG1heWJlTG9hZEZh
bGxiYWNrRm9yTWFpbkVycm9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNl
RXJyb3ImKTsKLQotICAgICAgICAvLyBUaGUgYXBwbGljYXRpb24gY2FjaGUgdGhhdCB0aGUgZG9j
dW1lbnQgbG9hZGVyIGlzIGFzc29jaWF0ZWQgd2l0aCAoaWYgYW55KS4KLSAgICAgICAgUmVmUHRy
PEFwcGxpY2F0aW9uQ2FjaGU+IG1fYXBwbGljYXRpb25DYWNoZTsKLQotICAgICAgICAvLyBCZWZv
cmUgYW4gYXBwbGljYXRpb24gY2FjaGUgaGFzIGZpbmlzaGVkIGxvYWRpbmcsIHRoaXMgd2lsbCBi
ZSB0aGUgY2FuZGlkYXRlIGFwcGxpY2F0aW9uCi0gICAgICAgIC8vIGdyb3VwIHRoYXQgdGhlIGRv
Y3VtZW50IGxvYWRlciBpcyBhc3NvY2lhdGVkIHdpdGguCi0gICAgICAgIEFwcGxpY2F0aW9uQ2Fj
aGVHcm91cCogbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXA7Ci0KLSAgICAgICAgLy8g
VGhpcyBpcyB0aGUgYXBwbGljYXRpb24gY2FjaGUgdGhlIG1haW4gcmVzb3VyY2Ugd2FzIGxvYWRl
ZCBmcm9tIChpZiBhbnkpLgotICAgICAgICBSZWZQdHI8QXBwbGljYXRpb25DYWNoZT4gbV9tYWlu
UmVzb3VyY2VBcHBsaWNhdGlvbkNhY2hlOworCitjbGFzcyBBcHBsaWNhdGlvbkNhY2hlOworY2xh
c3MgQXBwbGljYXRpb25DYWNoZUdyb3VwOworY2xhc3MgQXBwbGljYXRpb25DYWNoZVJlc291cmNl
OworY2xhc3MgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U7CitjbGFzcyBET01BcHBsaWNhdGlvbkNh
Y2hlOworY2xhc3MgRG9jdW1lbnRMb2FkZXI7CitjbGFzcyBGcmFtZTsKK2NsYXNzIFJlc291cmNl
RXJyb3I7CitjbGFzcyBSZXNvdXJjZUxvYWRlcjsKK2NsYXNzIFJlc291cmNlUmVxdWVzdDsKK2Ns
YXNzIFJlc291cmNlUmVzcG9uc2U7CitjbGFzcyBTaGFyZWRCdWZmZXI7CitjbGFzcyBTdWJzdGl0
dXRlRGF0YTsKKworY2xhc3MgQXBwbGljYXRpb25DYWNoZUhvc3QgeworICAgIFdURl9NQUtFX05P
TkNPUFlBQkxFKEFwcGxpY2F0aW9uQ2FjaGVIb3N0KTsgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7
CitwdWJsaWM6CisgICAgLy8gVGhlIFN0YXR1cyBudW1lcmljIHZhbHVlcyBhcmUgc3BlY2lmaWVk
IGluIHRoZSBIVE1MNSBzcGVjLgorICAgIGVudW0gU3RhdHVzIHsKKyAgICAgICAgVU5DQUNIRUQg
PSAwLAorICAgICAgICBJRExFID0gMSwKKyAgICAgICAgQ0hFQ0tJTkcgPSAyLAorICAgICAgICBE
T1dOTE9BRElORyA9IDMsCisgICAgICAgIFVQREFURVJFQURZID0gNCwKKyAgICAgICAgT0JTT0xF
VEUgPSA1CisgICAgfTsKKworICAgIHN0cnVjdCBDYWNoZUluZm8geworICAgICAgICBVUkwgbWFu
aWZlc3Q7CisgICAgICAgIGRvdWJsZSBjcmVhdGlvblRpbWU7CisgICAgICAgIGRvdWJsZSB1cGRh
dGVUaW1lOworICAgICAgICBsb25nIGxvbmcgc2l6ZTsKKyAgICB9OworCisgICAgc3RydWN0IFJl
c291cmNlSW5mbyB7CisgICAgICAgIFVSTCByZXNvdXJjZTsKKyAgICAgICAgYm9vbCBpc01hc3Rl
cjsKKyAgICAgICAgYm9vbCBpc01hbmlmZXN0OworICAgICAgICBib29sIGlzRmFsbGJhY2s7Cisg
ICAgICAgIGJvb2wgaXNGb3JlaWduOworICAgICAgICBib29sIGlzRXhwbGljaXQ7CisgICAgICAg
IGxvbmcgbG9uZyBzaXplOworICAgIH07CisKKyAgICBleHBsaWNpdCBBcHBsaWNhdGlvbkNhY2hl
SG9zdChEb2N1bWVudExvYWRlciYpOworICAgIH5BcHBsaWNhdGlvbkNhY2hlSG9zdCgpOworCisg
ICAgc3RhdGljIFVSTCBjcmVhdGVGaWxlVVJMKGNvbnN0IFN0cmluZyYpOworCisgICAgdm9pZCBz
ZWxlY3RDYWNoZVdpdGhvdXRNYW5pZmVzdCgpOworICAgIHZvaWQgc2VsZWN0Q2FjaGVXaXRoTWFu
aWZlc3QoY29uc3QgVVJMJiBtYW5pZmVzdFVSTCk7CisKKyAgICB2b2lkIG1heWJlTG9hZE1haW5S
ZXNvdXJjZShSZXNvdXJjZVJlcXVlc3QmLCBTdWJzdGl0dXRlRGF0YSYpOworICAgIHZvaWQgbWF5
YmVMb2FkTWFpblJlc291cmNlRm9yUmVkaXJlY3QoUmVzb3VyY2VSZXF1ZXN0JiwgU3Vic3RpdHV0
ZURhdGEmKTsKKyAgICBib29sIG1heWJlTG9hZEZhbGxiYWNrRm9yTWFpblJlc3BvbnNlKGNvbnN0
IFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKKyAgICB2b2lkIG1h
aW5SZXNvdXJjZURhdGFSZWNlaXZlZChjb25zdCBjaGFyKiBkYXRhLCBpbnQgbGVuZ3RoLCBsb25n
IGxvbmcgZW5jb2RlZERhdGFMZW5ndGgsIGJvb2wgYWxsQXRPbmNlKTsKKyAgICB2b2lkIGZpbmlz
aGVkTG9hZGluZ01haW5SZXNvdXJjZSgpOworICAgIHZvaWQgZmFpbGVkTG9hZGluZ01haW5SZXNv
dXJjZSgpOworCisgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBtYXliZUxvYWRSZXNvdXJjZShSZXNv
dXJjZUxvYWRlciYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFVSTCYgb3JpZ2luYWxV
UkwpOworICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgbWF5YmVMb2FkRmFsbGJhY2tGb3JSZWRpcmVj
dChSZXNvdXJjZUxvYWRlciosIFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmKTsKKyAgICBXRUJDT1JFX0VYUE9SVCBib29sIG1heWJlTG9hZEZhbGxiYWNrRm9yUmVzcG9u
c2UoUmVzb3VyY2VMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CisgICAgV0VCQ09S
RV9FWFBPUlQgYm9vbCBtYXliZUxvYWRGYWxsYmFja0ZvckVycm9yKFJlc291cmNlTG9hZGVyKiwg
Y29uc3QgUmVzb3VyY2VFcnJvciYpOworCisgICAgYm9vbCBtYXliZUxvYWRTeW5jaHJvbm91c2x5
KFJlc291cmNlUmVxdWVzdCYsIFJlc291cmNlRXJyb3ImLCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVm
UHRyPFNoYXJlZEJ1ZmZlcj4mKTsKKyAgICB2b2lkIG1heWJlTG9hZEZhbGxiYWNrU3luY2hyb25v
dXNseShjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBSZXNvdXJjZUVycm9yJiwgUmVzb3VyY2VSZXNw
b25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+Jik7CisKKyAgICBib29sIGNhbkNhY2hlSW5QYWdl
Q2FjaGUoKTsKKworICAgIFN0YXR1cyBzdGF0dXMoKSBjb25zdDsKKyAgICBib29sIHVwZGF0ZSgp
OworICAgIGJvb2wgc3dhcENhY2hlKCk7CisgICAgdm9pZCBhYm9ydCgpOworCisgICAgdm9pZCBz
ZXRET01BcHBsaWNhdGlvbkNhY2hlKERPTUFwcGxpY2F0aW9uQ2FjaGUqKTsKKyAgICB2b2lkIG5v
dGlmeURPTUFwcGxpY2F0aW9uQ2FjaGUoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGlu
dCBwcm9ncmVzc1RvdGFsLCBpbnQgcHJvZ3Jlc3NEb25lKTsKKworICAgIHZvaWQgc3RvcExvYWRp
bmdJbkZyYW1lKEZyYW1lJik7CisKKyAgICB2b2lkIHN0b3BEZWZlcnJpbmdFdmVudHMoKTsgLy8g
QWxzbyByYWlzZXMgdGhlIGV2ZW50cyB0aGF0IGhhdmUgYmVlbiBxdWV1ZWQgdXAuCisKKyAgICBW
ZWN0b3I8UmVzb3VyY2VJbmZvPiByZXNvdXJjZUxpc3QoKTsKKyAgICBDYWNoZUluZm8gYXBwbGlj
YXRpb25DYWNoZUluZm8oKTsKKworICAgIGJvb2wgc2hvdWxkTG9hZFJlc291cmNlRnJvbUFwcGxp
Y2F0aW9uQ2FjaGUoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgQXBwbGljYXRpb25DYWNoZVJlc291
cmNlKiYpOworICAgIGJvb2wgZ2V0QXBwbGljYXRpb25DYWNoZUZhbGxiYWNrUmVzb3VyY2UoY29u
c3QgUmVzb3VyY2VSZXF1ZXN0JiwgQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiYsIEFwcGxpY2F0
aW9uQ2FjaGUqID0gbnVsbHB0cik7CisKK3ByaXZhdGU6CisgICAgZnJpZW5kIGNsYXNzIEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cDsKKworICAgIHN0cnVjdCBEZWZlcnJlZEV2ZW50IHsKKyAgICAgICAg
QXRvbWljU3RyaW5nIGV2ZW50VHlwZTsKKyAgICAgICAgaW50IHByb2dyZXNzVG90YWw7CisgICAg
ICAgIGludCBwcm9ncmVzc0RvbmU7CiAgICAgfTsKIAorICAgIGJvb2wgaXNBcHBsaWNhdGlvbkNh
Y2hlRW5hYmxlZCgpOworICAgIGJvb2wgaXNBcHBsaWNhdGlvbkNhY2hlQmxvY2tlZEZvclJlcXVl
c3QoY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7CisKKyAgICB2b2lkIGRpc3BhdGNoRE9NRXZlbnQo
Y29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGludCBwcm9ncmVzc1RvdGFsLCBpbnQgcHJv
Z3Jlc3NEb25lKTsKKworICAgIGJvb2wgc2NoZWR1bGVMb2FkRmFsbGJhY2tSZXNvdXJjZUZyb21B
cHBsaWNhdGlvbkNhY2hlKFJlc291cmNlTG9hZGVyKiwgQXBwbGljYXRpb25DYWNoZSogPSBudWxs
cHRyKTsKKyAgICB2b2lkIHNldENhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cChBcHBsaWNh
dGlvbkNhY2hlR3JvdXAqKTsKKyAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGNhbmRpZGF0ZUFw
cGxpY2F0aW9uQ2FjaGVHcm91cCgpIGNvbnN0IHsgcmV0dXJuIG1fY2FuZGlkYXRlQXBwbGljYXRp
b25DYWNoZUdyb3VwOyB9CisgICAgdm9pZCBzZXRBcHBsaWNhdGlvbkNhY2hlKFJlZlB0cjxBcHBs
aWNhdGlvbkNhY2hlPiYmKTsKKyAgICBBcHBsaWNhdGlvbkNhY2hlKiBhcHBsaWNhdGlvbkNhY2hl
KCkgY29uc3QgeyByZXR1cm4gbV9hcHBsaWNhdGlvbkNhY2hlLmdldCgpOyB9CisgICAgQXBwbGlj
YXRpb25DYWNoZSogbWFpblJlc291cmNlQXBwbGljYXRpb25DYWNoZSgpIGNvbnN0IHsgcmV0dXJu
IG1fbWFpblJlc291cmNlQXBwbGljYXRpb25DYWNoZS5nZXQoKTsgfQorICAgIGJvb2wgbWF5YmVM
b2FkRmFsbGJhY2tGb3JNYWluRXJyb3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVz
b3VyY2VFcnJvciYpOworCisgICAgRE9NQXBwbGljYXRpb25DYWNoZSogbV9kb21BcHBsaWNhdGlv
bkNhY2hlIHsgbnVsbHB0ciB9OworICAgIERvY3VtZW50TG9hZGVyJiBtX2RvY3VtZW50TG9hZGVy
OworCisgICAgYm9vbCBtX2RlZmVyc0V2ZW50cyB7IHRydWUgfTsgLy8gRXZlbnRzIGFyZSBkZWZl
cnJlZCB1bnRpbCBhZnRlciBkb2N1bWVudCBvbmxvYWQuCisgICAgVmVjdG9yPERlZmVycmVkRXZl
bnQ+IG1fZGVmZXJyZWRFdmVudHM7CisKKyAgICAvLyBUaGUgYXBwbGljYXRpb24gY2FjaGUgdGhh
dCB0aGUgZG9jdW1lbnQgbG9hZGVyIGlzIGFzc29jaWF0ZWQgd2l0aCAoaWYgYW55KS4KKyAgICBS
ZWZQdHI8QXBwbGljYXRpb25DYWNoZT4gbV9hcHBsaWNhdGlvbkNhY2hlOworCisgICAgLy8gQmVm
b3JlIGFuIGFwcGxpY2F0aW9uIGNhY2hlIGhhcyBmaW5pc2hlZCBsb2FkaW5nLCB0aGlzIHdpbGwg
YmUgdGhlIGNhbmRpZGF0ZSBhcHBsaWNhdGlvbgorICAgIC8vIGdyb3VwIHRoYXQgdGhlIGRvY3Vt
ZW50IGxvYWRlciBpcyBhc3NvY2lhdGVkIHdpdGguCisgICAgQXBwbGljYXRpb25DYWNoZUdyb3Vw
KiBtX2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCB7IG51bGxwdHIgfTsKKworICAgIC8v
IFRoaXMgaXMgdGhlIGFwcGxpY2F0aW9uIGNhY2hlIHRoZSBtYWluIHJlc291cmNlIHdhcyBsb2Fk
ZWQgZnJvbSAoaWYgYW55KS4KKyAgICBSZWZQdHI8QXBwbGljYXRpb25DYWNoZT4gbV9tYWluUmVz
b3VyY2VBcHBsaWNhdGlvbkNhY2hlOworfTsKKwogfSAgLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hl
U3RvcmFnZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25D
YWNoZVN0b3JhZ2UuY3BwCmluZGV4IGRmMTAzZTRhMmI4ZWI0NTU4M2UwZWE5MzY1N2ZkZTZjODYx
MDQ5MDYuLmY0ZmE5NWI1MTdlYzc3OTE2MjRmYzBmMjVhNjU2YjBjMDk0NDE0NzcgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFn
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2Fj
aGVTdG9yYWdlLmNwcApAQCAtMTI2LDM2ICsxMjYsMzIgQEAgQXBwbGljYXRpb25DYWNoZUdyb3Vw
KiBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6bG9hZENhY2hlR3JvdXAoY29uc3QgVVJMJiBtYW5p
ZmUKICAgICBpZiAoIWNhY2hlKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICAgICAgCi0g
ICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCA9IG5ldyBBcHBsaWNhdGlvbkNhY2hlR3Jv
dXAoKnRoaXMsIG1hbmlmZXN0VVJMKTsKLSAgICAgIAotICAgIGdyb3VwLT5zZXRTdG9yYWdlSUQo
c3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHN0YXRlbWVudC5nZXRDb2x1bW5JbnQ2NCgwKSkpOwotICAg
IGdyb3VwLT5zZXROZXdlc3RDYWNoZShXVEZNb3ZlKGNhY2hlKSk7Ci0KLSAgICByZXR1cm4gZ3Jv
dXA7CisgICAgYXV0byYgZ3JvdXAgPSAqbmV3IEFwcGxpY2F0aW9uQ2FjaGVHcm91cCgqdGhpcywg
bWFuaWZlc3RVUkwpOworICAgIGdyb3VwLnNldFN0b3JhZ2VJRChzdGF0aWNfY2FzdDx1bnNpZ25l
ZD4oc3RhdGVtZW50LmdldENvbHVtbkludDY0KDApKSk7CisgICAgZ3JvdXAuc2V0TmV3ZXN0Q2Fj
aGUoY2FjaGUucmVsZWFzZU5vbk51bGwoKSk7CisgICAgcmV0dXJuICZncm91cDsKIH0gICAgCiAK
IEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmZpbmRPckNy
ZWF0ZUNhY2hlR3JvdXAoY29uc3QgVVJMJiBtYW5pZmVzdFVSTCkKIHsKICAgICBBU1NFUlQoIW1h
bmlmZXN0VVJMLmhhc0ZyYWdtZW50SWRlbnRpZmllcigpKTsKIAotICAgIENhY2hlR3JvdXBNYXA6
OkFkZFJlc3VsdCByZXN1bHQgPSBtX2NhY2hlc0luTWVtb3J5LmFkZChtYW5pZmVzdFVSTCwgbnVs
bHB0cik7Ci0gICAgCisgICAgYXV0byByZXN1bHQgPSBtX2NhY2hlc0luTWVtb3J5LmFkZChtYW5p
ZmVzdFVSTCwgbnVsbHB0cik7CiAgICAgaWYgKCFyZXN1bHQuaXNOZXdFbnRyeSkgewogICAgICAg
ICBBU1NFUlQocmVzdWx0Lml0ZXJhdG9yLT52YWx1ZSk7CiAgICAgICAgIHJldHVybiByZXN1bHQu
aXRlcmF0b3ItPnZhbHVlOwogICAgIH0KIAogICAgIC8vIExvb2sgdXAgdGhlIGdyb3VwIGluIHRo
ZSBkYXRhYmFzZQotICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAgPSBsb2FkQ2FjaGVH
cm91cChtYW5pZmVzdFVSTCk7CisgICAgYXV0byogZ3JvdXAgPSBsb2FkQ2FjaGVHcm91cChtYW5p
ZmVzdFVSTCk7CiAgICAgCiAgICAgLy8gSWYgdGhlIGdyb3VwIHdhcyBub3QgZm91bmQgd2UgbmVl
ZCB0byBjcmVhdGUgaXQKICAgICBpZiAoIWdyb3VwKSB7CiAgICAgICAgIGdyb3VwID0gbmV3IEFw
cGxpY2F0aW9uQ2FjaGVHcm91cCgqdGhpcywgbWFuaWZlc3RVUkwpOwogICAgICAgICBtX2NhY2hl
SG9zdFNldC5hZGQodXJsSG9zdEhhc2gobWFuaWZlc3RVUkwpKTsKICAgICB9Ci0gICAgCisKICAg
ICByZXN1bHQuaXRlcmF0b3ItPnZhbHVlID0gZ3JvdXA7Ci0gICAgCiAgICAgcmV0dXJuIGdyb3Vw
OwogfQogCkBAIC0yNDQsMjAgKzI0MCwxOCBAQCBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIEFwcGxp
Y2F0aW9uQ2FjaGVTdG9yYWdlOjpjYWNoZUdyb3VwRm9yVVJMKGNvbnN0IFVSTCYgdXJsKQogICAg
ICAgICBpZiAoIWNhY2hlKQogICAgICAgICAgICAgY29udGludWU7CiAKLSAgICAgICAgQXBwbGlj
YXRpb25DYWNoZVJlc291cmNlKiByZXNvdXJjZSA9IGNhY2hlLT5yZXNvdXJjZUZvclVSTCh1cmwp
OworICAgICAgICBhdXRvKiByZXNvdXJjZSA9IGNhY2hlLT5yZXNvdXJjZUZvclVSTCh1cmwpOwog
ICAgICAgICBpZiAoIXJlc291cmNlKQogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIGlm
IChyZXNvdXJjZS0+dHlwZSgpICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpGb3JlaWduKQog
ICAgICAgICAgICAgY29udGludWU7CiAKLSAgICAgICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBn
cm91cCA9IG5ldyBBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKnRoaXMsIG1hbmlmZXN0VVJMKTsKLSAg
ICAgICAgCi0gICAgICAgIGdyb3VwLT5zZXRTdG9yYWdlSUQoc3RhdGljX2Nhc3Q8dW5zaWduZWQ+
KHN0YXRlbWVudC5nZXRDb2x1bW5JbnQ2NCgwKSkpOwotICAgICAgICBncm91cC0+c2V0TmV3ZXN0
Q2FjaGUoV1RGTW92ZShjYWNoZSkpOwotICAgICAgICAKLSAgICAgICAgbV9jYWNoZXNJbk1lbW9y
eS5zZXQoZ3JvdXAtPm1hbmlmZXN0VVJMKCksIGdyb3VwKTsKLSAgICAgICAgCi0gICAgICAgIHJl
dHVybiBncm91cDsKKyAgICAgICAgYXV0byYgZ3JvdXAgPSAqbmV3IEFwcGxpY2F0aW9uQ2FjaGVH
cm91cCgqdGhpcywgbWFuaWZlc3RVUkwpOworICAgICAgICBncm91cC5zZXRTdG9yYWdlSUQoc3Rh
dGljX2Nhc3Q8dW5zaWduZWQ+KHN0YXRlbWVudC5nZXRDb2x1bW5JbnQ2NCgwKSkpOworICAgICAg
ICBncm91cC5zZXROZXdlc3RDYWNoZShjYWNoZS5yZWxlYXNlTm9uTnVsbCgpKTsKKyAgICAgICAg
bV9jYWNoZXNJbk1lbW9yeS5zZXQoZ3JvdXAubWFuaWZlc3RVUkwoKSwgJmdyb3VwKTsKKworICAg
ICAgICByZXR1cm4gJmdyb3VwOwogICAgIH0KIAogICAgIGlmIChyZXN1bHQgIT0gU1FMSVRFX0RP
TkUpCkBAIC0zMjAsMTQgKzMxNCwxMyBAQCBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIEFwcGxpY2F0
aW9uQ2FjaGVTdG9yYWdlOjpmYWxsYmFja0NhY2hlR3JvdXBGb3JVUkwoY29uc3QgVQogICAgICAg
ICBpZiAoY2FjaGUtPnJlc291cmNlRm9yVVJMKGZhbGxiYWNrVVJMKS0+dHlwZSgpICYgQXBwbGlj
YXRpb25DYWNoZVJlc291cmNlOjpGb3JlaWduKQogICAgICAgICAgICAgY29udGludWU7CiAKLSAg
ICAgICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCA9IG5ldyBBcHBsaWNhdGlvbkNhY2hl
R3JvdXAoKnRoaXMsIG1hbmlmZXN0VVJMKTsKLSAgICAgICAgCi0gICAgICAgIGdyb3VwLT5zZXRT
dG9yYWdlSUQoc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHN0YXRlbWVudC5nZXRDb2x1bW5JbnQ2NCgw
KSkpOwotICAgICAgICBncm91cC0+c2V0TmV3ZXN0Q2FjaGUoV1RGTW92ZShjYWNoZSkpOwotICAg
ICAgICAKLSAgICAgICAgbV9jYWNoZXNJbk1lbW9yeS5zZXQoZ3JvdXAtPm1hbmlmZXN0VVJMKCks
IGdyb3VwKTsKLSAgICAgICAgCi0gICAgICAgIHJldHVybiBncm91cDsKKyAgICAgICAgYXV0byYg
Z3JvdXAgPSAqbmV3IEFwcGxpY2F0aW9uQ2FjaGVHcm91cCgqdGhpcywgbWFuaWZlc3RVUkwpOwor
ICAgICAgICBncm91cC5zZXRTdG9yYWdlSUQoc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHN0YXRlbWVu
dC5nZXRDb2x1bW5JbnQ2NCgwKSkpOworICAgICAgICBncm91cC5zZXROZXdlc3RDYWNoZShjYWNo
ZS5yZWxlYXNlTm9uTnVsbCgpKTsKKworICAgICAgICBtX2NhY2hlc0luTWVtb3J5LnNldChncm91
cC5tYW5pZmVzdFVSTCgpLCAmZ3JvdXApOworCisgICAgICAgIHJldHVybiAmZ3JvdXA7CiAgICAg
fQogCiAgICAgaWYgKHJlc3VsdCAhPSBTUUxJVEVfRE9ORSkKQEAgLTMzNiwzMyArMzI5LDMzIEBA
IEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmZhbGxiYWNr
Q2FjaGVHcm91cEZvclVSTChjb25zdCBVCiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLXZvaWQg
QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmNhY2hlR3JvdXBEZXN0cm95ZWQoQXBwbGljYXRpb25D
YWNoZUdyb3VwKiBncm91cCkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmNhY2hlR3Jv
dXBEZXN0cm95ZWQoQXBwbGljYXRpb25DYWNoZUdyb3VwJiBncm91cCkKIHsKLSAgICBpZiAoZ3Jv
dXAtPmlzT2Jzb2xldGUoKSkgewotICAgICAgICBBU1NFUlQoIWdyb3VwLT5zdG9yYWdlSUQoKSk7
Ci0gICAgICAgIEFTU0VSVChtX2NhY2hlc0luTWVtb3J5LmdldChncm91cC0+bWFuaWZlc3RVUkwo
KSkgIT0gZ3JvdXApOworICAgIGlmIChncm91cC5pc09ic29sZXRlKCkpIHsKKyAgICAgICAgQVNT
RVJUKCFncm91cC5zdG9yYWdlSUQoKSk7CisgICAgICAgIEFTU0VSVChtX2NhY2hlc0luTWVtb3J5
LmdldChncm91cC5tYW5pZmVzdFVSTCgpKSAhPSAmZ3JvdXApOwogICAgICAgICByZXR1cm47CiAg
ICAgfQogCi0gICAgQVNTRVJUKG1fY2FjaGVzSW5NZW1vcnkuZ2V0KGdyb3VwLT5tYW5pZmVzdFVS
TCgpKSA9PSBncm91cCk7CisgICAgQVNTRVJUKG1fY2FjaGVzSW5NZW1vcnkuZ2V0KGdyb3VwLm1h
bmlmZXN0VVJMKCkpID09ICZncm91cCk7CiAKLSAgICBtX2NhY2hlc0luTWVtb3J5LnJlbW92ZShn
cm91cC0+bWFuaWZlc3RVUkwoKSk7CisgICAgbV9jYWNoZXNJbk1lbW9yeS5yZW1vdmUoZ3JvdXAu
bWFuaWZlc3RVUkwoKSk7CiAgICAgCiAgICAgLy8gSWYgdGhlIGNhY2hlIGdyb3VwIGlzIGhhbGYt
Y3JlYXRlZCwgd2UgZG9uJ3Qgd2FudCBpdCBpbiB0aGUgc2F2ZWQgc2V0IChhcyBpdCBpcyBub3Qg
c3RvcmVkIGluIGRhdGFiYXNlKS4KLSAgICBpZiAoIWdyb3VwLT5zdG9yYWdlSUQoKSkKLSAgICAg
ICAgbV9jYWNoZUhvc3RTZXQucmVtb3ZlKHVybEhvc3RIYXNoKGdyb3VwLT5tYW5pZmVzdFVSTCgp
KSk7CisgICAgaWYgKCFncm91cC5zdG9yYWdlSUQoKSkKKyAgICAgICAgbV9jYWNoZUhvc3RTZXQu
cmVtb3ZlKHVybEhvc3RIYXNoKGdyb3VwLm1hbmlmZXN0VVJMKCkpKTsKIH0KIAotdm9pZCBBcHBs
aWNhdGlvbkNhY2hlU3RvcmFnZTo6Y2FjaGVHcm91cE1hZGVPYnNvbGV0ZShBcHBsaWNhdGlvbkNh
Y2hlR3JvdXAqIGdyb3VwKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6Y2FjaGVHcm91
cE1hZGVPYnNvbGV0ZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAmIGdyb3VwKQogewotICAgIEFTU0VS
VChtX2NhY2hlc0luTWVtb3J5LmdldChncm91cC0+bWFuaWZlc3RVUkwoKSkgPT0gZ3JvdXApOwot
ICAgIEFTU0VSVChtX2NhY2hlSG9zdFNldC5jb250YWlucyh1cmxIb3N0SGFzaChncm91cC0+bWFu
aWZlc3RVUkwoKSkpKTsKKyAgICBBU1NFUlQobV9jYWNoZXNJbk1lbW9yeS5nZXQoZ3JvdXAubWFu
aWZlc3RVUkwoKSkgPT0gJmdyb3VwKTsKKyAgICBBU1NFUlQobV9jYWNoZUhvc3RTZXQuY29udGFp
bnModXJsSG9zdEhhc2goZ3JvdXAubWFuaWZlc3RVUkwoKSkpKTsKIAotICAgIGlmIChBcHBsaWNh
dGlvbkNhY2hlKiBuZXdlc3RDYWNoZSA9IGdyb3VwLT5uZXdlc3RDYWNoZSgpKQorICAgIGlmIChh
dXRvKiBuZXdlc3RDYWNoZSA9IGdyb3VwLm5ld2VzdENhY2hlKCkpCiAgICAgICAgIHJlbW92ZShu
ZXdlc3RDYWNoZSk7CiAKLSAgICBtX2NhY2hlc0luTWVtb3J5LnJlbW92ZShncm91cC0+bWFuaWZl
c3RVUkwoKSk7Ci0gICAgbV9jYWNoZUhvc3RTZXQucmVtb3ZlKHVybEhvc3RIYXNoKGdyb3VwLT5t
YW5pZmVzdFVSTCgpKSk7CisgICAgbV9jYWNoZXNJbk1lbW9yeS5yZW1vdmUoZ3JvdXAubWFuaWZl
c3RVUkwoKSk7CisgICAgbV9jYWNoZUhvc3RTZXQucmVtb3ZlKHVybEhvc3RIYXNoKGdyb3VwLm1h
bmlmZXN0VVJMKCkpKTsKIH0KIAogY29uc3QgU3RyaW5nJiBBcHBsaWNhdGlvbkNhY2hlU3RvcmFn
ZTo6Y2FjaGVEaXJlY3RvcnkoKSBjb25zdApAQCAtOTk2LDcgKzk4OSw3IEBAIGJvb2wgQXBwbGlj
YXRpb25DYWNoZVN0b3JhZ2U6OmNoZWNrT3JpZ2luUXVvdGEoQXBwbGljYXRpb25DYWNoZUdyb3Vw
KiBncm91cCwgQXBwCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLWJvb2wgQXBwbGljYXRpb25DYWNo
ZVN0b3JhZ2U6OnN0b3JlTmV3ZXN0Q2FjaGUoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCwg
QXBwbGljYXRpb25DYWNoZSogb2xkQ2FjaGUsIEZhaWx1cmVSZWFzb24mIGZhaWx1cmVSZWFzb24p
Citib29sIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpzdG9yZU5ld2VzdENhY2hlKEFwcGxpY2F0
aW9uQ2FjaGVHcm91cCYgZ3JvdXAsIEFwcGxpY2F0aW9uQ2FjaGUqIG9sZENhY2hlLCBGYWlsdXJl
UmVhc29uJiBmYWlsdXJlUmVhc29uKQogewogICAgIG9wZW5EYXRhYmFzZSh0cnVlKTsKIApAQCAt
MTAxMiwyNCArMTAwNSwyNCBAQCBib29sIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpzdG9yZU5l
d2VzdENhY2hlKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAsIEFwcAogCiAgICAgLy8gQ2hl
Y2sgaWYgdGhpcyB3b3VsZCByZWFjaCB0aGUgcGVyLW9yaWdpbiBxdW90YS4KICAgICBpbnQ2NF90
IHRvdGFsU3BhY2VOZWVkZWRJZ25vcmVkOwotICAgIGlmICghY2hlY2tPcmlnaW5RdW90YShncm91
cCwgb2xkQ2FjaGUsIGdyb3VwLT5uZXdlc3RDYWNoZSgpLCB0b3RhbFNwYWNlTmVlZGVkSWdub3Jl
ZCkpIHsKKyAgICBpZiAoIWNoZWNrT3JpZ2luUXVvdGEoJmdyb3VwLCBvbGRDYWNoZSwgZ3JvdXAu
bmV3ZXN0Q2FjaGUoKSwgdG90YWxTcGFjZU5lZWRlZElnbm9yZWQpKSB7CiAgICAgICAgIGZhaWx1
cmVSZWFzb24gPSBPcmlnaW5RdW90YVJlYWNoZWQ7CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAg
ICB9CiAKICAgICBHcm91cFN0b3JhZ2VJREpvdXJuYWwgZ3JvdXBTdG9yYWdlSURKb3VybmFsOwot
ICAgIGlmICghZ3JvdXAtPnN0b3JhZ2VJRCgpKSB7CisgICAgaWYgKCFncm91cC5zdG9yYWdlSUQo
KSkgewogICAgICAgICAvLyBTdG9yZSB0aGUgZ3JvdXAKLSAgICAgICAgaWYgKCFzdG9yZShncm91
cCwgJmdyb3VwU3RvcmFnZUlESm91cm5hbCkpIHsKKyAgICAgICAgaWYgKCFzdG9yZSgmZ3JvdXAs
ICZncm91cFN0b3JhZ2VJREpvdXJuYWwpKSB7CiAgICAgICAgICAgICBjaGVja0Zvck1heFNpemVS
ZWFjaGVkKCk7CiAgICAgICAgICAgICBmYWlsdXJlUmVhc29uID0gaXNNYXhpbXVtU2l6ZVJlYWNo
ZWQoKSA/IFRvdGFsUXVvdGFSZWFjaGVkIDogRGlza09yT3BlcmF0aW9uRmFpbHVyZTsKICAgICAg
ICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgfQogICAgIH0KICAgICAKLSAgICBBU1NFUlQo
Z3JvdXAtPm5ld2VzdENhY2hlKCkpOwotICAgIEFTU0VSVCghZ3JvdXAtPmlzT2Jzb2xldGUoKSk7
Ci0gICAgQVNTRVJUKCFncm91cC0+bmV3ZXN0Q2FjaGUoKS0+c3RvcmFnZUlEKCkpOworICAgIEFT
U0VSVChncm91cC5uZXdlc3RDYWNoZSgpKTsKKyAgICBBU1NFUlQoIWdyb3VwLmlzT2Jzb2xldGUo
KSk7CisgICAgQVNTRVJUKCFncm91cC5uZXdlc3RDYWNoZSgpLT5zdG9yYWdlSUQoKSk7CiAgICAg
CiAgICAgLy8gTG9nIHRoZSBzdG9yYWdlSUQgY2hhbmdlcyB0byB0aGUgaW4tbWVtb3J5IHJlc291
cmNlIG9iamVjdHMuIFRoZSBqb3VybmFsCiAgICAgLy8gb2JqZWN0IHdpbGwgcm9sbCB0aGVtIGJh
Y2sgYXV0b21hdGljYWxseSBpbiBjYXNlIGEgZGF0YWJhc2Ugb3BlcmF0aW9uCkBAIC0xMDM3LDcg
KzEwMzAsNyBAQCBib29sIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpzdG9yZU5ld2VzdENhY2hl
KEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAsIEFwcAogICAgIFJlc291cmNlU3RvcmFnZUlE
Sm91cm5hbCByZXNvdXJjZVN0b3JhZ2VJREpvdXJuYWw7CiAKICAgICAvLyBTdG9yZSB0aGUgbmV3
ZXN0IGNhY2hlCi0gICAgaWYgKCFzdG9yZShncm91cC0+bmV3ZXN0Q2FjaGUoKSwgJnJlc291cmNl
U3RvcmFnZUlESm91cm5hbCkpIHsKKyAgICBpZiAoIXN0b3JlKGdyb3VwLm5ld2VzdENhY2hlKCks
ICZyZXNvdXJjZVN0b3JhZ2VJREpvdXJuYWwpKSB7CiAgICAgICAgIGNoZWNrRm9yTWF4U2l6ZVJl
YWNoZWQoKTsKICAgICAgICAgZmFpbHVyZVJlYXNvbiA9IGlzTWF4aW11bVNpemVSZWFjaGVkKCkg
PyBUb3RhbFF1b3RhUmVhY2hlZCA6IERpc2tPck9wZXJhdGlvbkZhaWx1cmU7CiAgICAgICAgIHJl
dHVybiBmYWxzZTsKQEAgLTEwNTEsOCArMTA0NCw4IEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZVN0
b3JhZ2U6OnN0b3JlTmV3ZXN0Q2FjaGUoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCwgQXBw
CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9CiAgICAgCi0gICAgc3RhdGVtZW50LmJpbmRJ
bnQ2NCgxLCBncm91cC0+bmV3ZXN0Q2FjaGUoKS0+c3RvcmFnZUlEKCkpOwotICAgIHN0YXRlbWVu
dC5iaW5kSW50NjQoMiwgZ3JvdXAtPnN0b3JhZ2VJRCgpKTsKKyAgICBzdGF0ZW1lbnQuYmluZElu
dDY0KDEsIGdyb3VwLm5ld2VzdENhY2hlKCktPnN0b3JhZ2VJRCgpKTsKKyAgICBzdGF0ZW1lbnQu
YmluZEludDY0KDIsIGdyb3VwLnN0b3JhZ2VJRCgpKTsKICAgICAKICAgICBpZiAoIWV4ZWN1dGVT
dGF0ZW1lbnQoc3RhdGVtZW50KSkgewogICAgICAgICBmYWlsdXJlUmVhc29uID0gRGlza09yT3Bl
cmF0aW9uRmFpbHVyZTsKQEAgLTEwNjUsMjIgKzEwNTgsMjQgQEAgYm9vbCBBcHBsaWNhdGlvbkNh
Y2hlU3RvcmFnZTo6c3RvcmVOZXdlc3RDYWNoZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3Vw
LCBBcHAKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotYm9vbCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFn
ZTo6c3RvcmVOZXdlc3RDYWNoZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwKQorYm9vbCBB
cHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6c3RvcmVOZXdlc3RDYWNoZShBcHBsaWNhdGlvbkNhY2hl
R3JvdXAmIGdyb3VwKQogewogICAgIC8vIElnbm9yZSB0aGUgcmVhc29uIGZvciBmYWlsaW5nLCBq
dXN0IGF0dGVtcHQgdGhlIHN0b3JlLgogICAgIEZhaWx1cmVSZWFzb24gaWdub3JlZEZhaWx1cmVS
ZWFzb247Ci0gICAgcmV0dXJuIHN0b3JlTmV3ZXN0Q2FjaGUoZ3JvdXAsIDAsIGlnbm9yZWRGYWls
dXJlUmVhc29uKTsKKyAgICByZXR1cm4gc3RvcmVOZXdlc3RDYWNoZShncm91cCwgbnVsbHB0ciwg
aWdub3JlZEZhaWx1cmVSZWFzb24pOwogfQogCi10ZW1wbGF0ZSA8dHlwZW5hbWUgQ2hhcmFjdGVy
VHlwZT4KLXN0YXRpYyBpbmxpbmUgdm9pZCBwYXJzZUhlYWRlcihjb25zdCBDaGFyYWN0ZXJUeXBl
KiBoZWFkZXIsIHNpemVfdCBoZWFkZXJMZW5ndGgsIFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNl
KQordGVtcGxhdGU8dHlwZW5hbWUgQ2hhcmFjdGVyVHlwZT4KK3N0YXRpYyBpbmxpbmUgdm9pZCBw
YXJzZUhlYWRlcihjb25zdCBDaGFyYWN0ZXJUeXBlKiBoZWFkZXIsIHVuc2lnbmVkIGhlYWRlckxl
bmd0aCwgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7Ci0gICAgc2l6ZV90IHBvcyA9IGZp
bmQoaGVhZGVyLCBoZWFkZXJMZW5ndGgsICc6Jyk7Ci0gICAgQVNTRVJUKHBvcyAhPSBub3RGb3Vu
ZCk7Ci0gICAgCi0gICAgU3RyaW5nIGhlYWRlck5hbWUgPSBBdG9taWNTdHJpbmcoaGVhZGVyLCBw
b3MpOwotICAgIFN0cmluZyBoZWFkZXJWYWx1ZSA9IFN0cmluZyhoZWFkZXIgKyBwb3MgKyAxLCBo
ZWFkZXJMZW5ndGggLSBwb3MgLSAxKTsKLSAgICAKKyAgICBBU1NFUlQoZmluZChoZWFkZXIsIGhl
YWRlckxlbmd0aCwgJzonKSAhPSBub3RGb3VuZCk7CisgICAgdW5zaWduZWQgY29sb25Qb3NpdGlv
biA9IGZpbmQoaGVhZGVyLCBoZWFkZXJMZW5ndGgsICc6Jyk7CisKKyAgICAvLyBTYXZlIG1lbW9y
eSBieSBwdXR0aW5nIHRoZSBoZWFkZXIgbmFtZXMgaW50byBhdG9taWMgc3RyaW5ncyBzbyBlYWNo
IGlzIHN0b3JlZCBvbmx5IG9uY2UsCisgICAgLy8gZXZlbiB0aG91Z2ggdGhlIHNldEhUVFBIZWFk
ZXJGaWVsZCBmdW5jdGlvbiBkb2VzIG5vdCByZXF1aXJlIGFuIGF0b21pYyBzdHJpbmcuCisgICAg
QXRvbWljU3RyaW5nIGhlYWRlck5hbWUgeyBoZWFkZXIsIGNvbG9uUG9zaXRpb24gfTsKKyAgICBT
dHJpbmcgaGVhZGVyVmFsdWUgeyBoZWFkZXIgKyBjb2xvblBvc2l0aW9uICsgMSwgaGVhZGVyTGVu
Z3RoIC0gY29sb25Qb3NpdGlvbiAtIDEgfTsKKwogICAgIHJlc3BvbnNlLnNldEhUVFBIZWFkZXJG
aWVsZChoZWFkZXJOYW1lLCBoZWFkZXJWYWx1ZSk7CiB9CiAKQEAgLTExMDcsNyArMTEwMiw3IEBA
IHN0YXRpYyBpbmxpbmUgdm9pZCBwYXJzZUhlYWRlcnMoY29uc3QgU3RyaW5nJiBoZWFkZXJzLCBS
ZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zCiAgICAgfQogfQogICAgIAotUGFzc1JlZlB0cjxBcHBs
aWNhdGlvbkNhY2hlPiBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6bG9hZENhY2hlKHVuc2lnbmVk
IHN0b3JhZ2VJRCkKK1JlZlB0cjxBcHBsaWNhdGlvbkNhY2hlPiBBcHBsaWNhdGlvbkNhY2hlU3Rv
cmFnZTo6bG9hZENhY2hlKHVuc2lnbmVkIHN0b3JhZ2VJRCkKIHsKICAgICBBU1NFUlQoU1FMaXRl
RGF0YWJhc2VUcmFja2VyOjpoYXNUcmFuc2FjdGlvbkluUHJvZ3Jlc3MoKSk7CiAgICAgU1FMaXRl
U3RhdGVtZW50IGNhY2hlU3RhdGVtZW50KG1fZGF0YWJhc2UsCkBAIC0xNDA4LDEwICsxNDAzLDEx
IEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmRlbGV0ZUNhY2hlR3JvdXAoY29uc3Qg
U3RyaW5nJiBtYW5pZmVzdFVSTCkKICAgICBTUUxpdGVUcmFuc2FjdGlvbkluUHJvZ3Jlc3NBdXRv
Q291bnRlciB0cmFuc2FjdGlvbkNvdW50ZXI7CiAKICAgICBTUUxpdGVUcmFuc2FjdGlvbiBkZWxl
dGVUcmFuc2FjdGlvbihtX2RhdGFiYXNlKTsKKwogICAgIC8vIENoZWNrIHRvIHNlZSBpZiB0aGUg
Z3JvdXAgaXMgaW4gbWVtb3J5LgotICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAgPSBt
X2NhY2hlc0luTWVtb3J5LmdldChtYW5pZmVzdFVSTCk7CisgICAgYXV0byogZ3JvdXAgPSBtX2Nh
Y2hlc0luTWVtb3J5LmdldChtYW5pZmVzdFVSTCk7CiAgICAgaWYgKGdyb3VwKQotICAgICAgICBj
YWNoZUdyb3VwTWFkZU9ic29sZXRlKGdyb3VwKTsKKyAgICAgICAgY2FjaGVHcm91cE1hZGVPYnNv
bGV0ZSgqZ3JvdXApOwogICAgIGVsc2UgewogICAgICAgICAvLyBUaGUgY2FjaGUgZ3JvdXAgaXMg
bm90IGluIG1lbW9yeSwgc28gcmVtb3ZlIGl0IGZyb20gdGhlIGRpc2suCiAgICAgICAgIG9wZW5E
YXRhYmFzZShmYWxzZSk7CkBAIC0xNDI0LDkgKzE0MjAsOSBAQCBib29sIEFwcGxpY2F0aW9uQ2Fj
aGVTdG9yYWdlOjpkZWxldGVDYWNoZUdyb3VwKGNvbnN0IFN0cmluZyYgbWFuaWZlc3RVUkwpCiAg
ICAgfQogCiAgICAgZGVsZXRlVHJhbnNhY3Rpb24uY29tbWl0KCk7Ci0gICAgCisKICAgICBjaGVj
a0ZvckRlbGV0ZWRSZXNvdXJjZXMoKTsKLSAgICAKKwogICAgIHJldHVybiB0cnVlOwogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNo
ZVN0b3JhZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNh
Y2hlU3RvcmFnZS5oCmluZGV4IGU0OGU4NjY3MzUzNjJkOTQ3N2E4YTI1MTAwM2NjODYxNTA1Mjdk
MTYuLjlmYTI5MmVlNTBmYWVlODljMzVjODYxYThmOTlmYTE2ZjkwNTQ3NmQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3Rv
cmFnZS5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCwgMjAxMCwg
MjAxMSBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIw
MDgtMjAxNyBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKQEAgLTQxLDcgKzQxLDcgQEAgY2xhc3MgQXBwbGljYXRpb25DYWNoZVJl
c291cmNlOwogY2xhc3MgVVJMOwogY2xhc3MgU2VjdXJpdHlPcmlnaW47CiBjbGFzcyBTaGFyZWRC
dWZmZXI7Ci10ZW1wbGF0ZSA8Y2xhc3MgVD4gY2xhc3MgU3RvcmFnZUlESm91cm5hbDsKK3RlbXBs
YXRlPHR5cGVuYW1lPiBjbGFzcyBTdG9yYWdlSURKb3VybmFsOwogCiBjbGFzcyBBcHBsaWNhdGlv
bkNhY2hlU3RvcmFnZSA6IHB1YmxpYyBSZWZDb3VudGVkPEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdl
PiB7CiBwdWJsaWM6CkBAIC03MywxOSArNzMsMTkgQEAgcHVibGljOgogCiAgICAgQXBwbGljYXRp
b25DYWNoZUdyb3VwKiBmaW5kT3JDcmVhdGVDYWNoZUdyb3VwKGNvbnN0IFVSTCYgbWFuaWZlc3RV
UkwpOwogICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZmluZEluTWVtb3J5Q2FjaGVHcm91cChj
b25zdCBVUkwmIG1hbmlmZXN0VVJMKSBjb25zdDsKLSAgICB2b2lkIGNhY2hlR3JvdXBEZXN0cm95
ZWQoQXBwbGljYXRpb25DYWNoZUdyb3VwKik7Ci0gICAgdm9pZCBjYWNoZUdyb3VwTWFkZU9ic29s
ZXRlKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCopOwotICAgICAgICAKLSAgICBib29sIHN0b3JlTmV3
ZXN0Q2FjaGUoQXBwbGljYXRpb25DYWNoZUdyb3VwKiwgQXBwbGljYXRpb25DYWNoZSogb2xkQ2Fj
aGUsIEZhaWx1cmVSZWFzb24mIGZhaWx1cmVSZWFzb24pOwotICAgIGJvb2wgc3RvcmVOZXdlc3RD
YWNoZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAqKTsgLy8gVXBkYXRlcyB0aGUgY2FjaGUgZ3JvdXAs
IGJ1dCBkb2Vzbid0IHJlbW92ZSBvbGQgY2FjaGUuCisgICAgdm9pZCBjYWNoZUdyb3VwRGVzdHJv
eWVkKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCYpOworICAgIHZvaWQgY2FjaGVHcm91cE1hZGVPYnNv
bGV0ZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAmKTsKKworICAgIGJvb2wgc3RvcmVOZXdlc3RDYWNo
ZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAmLCBBcHBsaWNhdGlvbkNhY2hlKiBvbGRDYWNoZSwgRmFp
bHVyZVJlYXNvbiYpOworICAgIGJvb2wgc3RvcmVOZXdlc3RDYWNoZShBcHBsaWNhdGlvbkNhY2hl
R3JvdXAmKTsgLy8gVXBkYXRlcyB0aGUgY2FjaGUgZ3JvdXAsIGJ1dCBkb2Vzbid0IHJlbW92ZSBv
bGQgY2FjaGUuCiAgICAgYm9vbCBzdG9yZShBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqLCBBcHBs
aWNhdGlvbkNhY2hlKik7CiAgICAgYm9vbCBzdG9yZVVwZGF0ZWRUeXBlKEFwcGxpY2F0aW9uQ2Fj
aGVSZXNvdXJjZSosIEFwcGxpY2F0aW9uQ2FjaGUqKTsKIAogICAgIC8vIFJlbW92ZXMgdGhlIGdy
b3VwIGlmIHRoZSBjYWNoZSB0byBiZSByZW1vdmVkIGlzIHRoZSBuZXdlc3Qgb25lIChzbywgc3Rv
cmVOZXdlc3RDYWNoZSgpIG5lZWRzIHRvIGJlIGNhbGxlZCBiZWZvcmVoYW5kIHdoZW4gdXBkYXRp
bmcpLgogICAgIHZvaWQgcmVtb3ZlKEFwcGxpY2F0aW9uQ2FjaGUqKTsKLSAgICAKKwogICAgIFdF
QkNPUkVfRVhQT1JUIHZvaWQgZW1wdHkoKTsKLSAgICAKKwogICAgIGJvb2wgZ2V0TWFuaWZlc3RV
UkxzKFZlY3RvcjxVUkw+KiB1cmxzKTsKICAgICBib29sIGNhY2hlR3JvdXBTaXplKGNvbnN0IFN0
cmluZyYgbWFuaWZlc3RVUkwsIGludDY0X3QqIHNpemUpOwogICAgIGJvb2wgZGVsZXRlQ2FjaGVH
cm91cChjb25zdCBTdHJpbmcmIG1hbmlmZXN0VVJMKTsKQEAgLTEwNSwxNCArMTA1LDE1IEBAIHB1
YmxpYzoKIAogICAgIHN0YXRpYyBpbnQ2NF90IHVua25vd25RdW90YSgpIHsgcmV0dXJuIC0xOyB9
CiAgICAgc3RhdGljIGludDY0X3Qgbm9RdW90YSgpIHsgcmV0dXJuIHN0ZDo6bnVtZXJpY19saW1p
dHM8aW50NjRfdD46Om1heCgpOyB9CisKIHByaXZhdGU6CiAgICAgQXBwbGljYXRpb25DYWNoZVN0
b3JhZ2UoY29uc3QgU3RyaW5nJiBjYWNoZURpcmVjdG9yeSwgY29uc3QgU3RyaW5nJiBmbGF0Rmls
ZVN1YmRpcmVjdG9yeU5hbWUpOwogCi0gICAgUGFzc1JlZlB0cjxBcHBsaWNhdGlvbkNhY2hlPiBs
b2FkQ2FjaGUodW5zaWduZWQgc3RvcmFnZUlEKTsKKyAgICBSZWZQdHI8QXBwbGljYXRpb25DYWNo
ZT4gbG9hZENhY2hlKHVuc2lnbmVkIHN0b3JhZ2VJRCk7CiAgICAgQXBwbGljYXRpb25DYWNoZUdy
b3VwKiBsb2FkQ2FjaGVHcm91cChjb25zdCBVUkwmIG1hbmlmZXN0VVJMKTsKICAgICAKLSAgICB0
eXBlZGVmIFN0b3JhZ2VJREpvdXJuYWw8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiBSZXNvdXJj
ZVN0b3JhZ2VJREpvdXJuYWw7Ci0gICAgdHlwZWRlZiBTdG9yYWdlSURKb3VybmFsPEFwcGxpY2F0
aW9uQ2FjaGVHcm91cD4gR3JvdXBTdG9yYWdlSURKb3VybmFsOworICAgIHVzaW5nIFJlc291cmNl
U3RvcmFnZUlESm91cm5hbCA9IFN0b3JhZ2VJREpvdXJuYWw8QXBwbGljYXRpb25DYWNoZVJlc291
cmNlPjsKKyAgICB1c2luZyBHcm91cFN0b3JhZ2VJREpvdXJuYWwgPSBTdG9yYWdlSURKb3VybmFs
PEFwcGxpY2F0aW9uQ2FjaGVHcm91cD47CiAKICAgICBib29sIHN0b3JlKEFwcGxpY2F0aW9uQ2Fj
aGVHcm91cCosIEdyb3VwU3RvcmFnZUlESm91cm5hbCopOwogICAgIGJvb2wgc3RvcmUoQXBwbGlj
YXRpb25DYWNoZSosIFJlc291cmNlU3RvcmFnZUlESm91cm5hbCopOwpAQCAtMTUyLDggKzE1Myw3
IEBAIHByaXZhdGU6CiAgICAgLy8gd2Uga2VlcCBhIGhhc2ggc2V0IG9mIHRoZSBob3N0cyBvZiB0
aGUgbWFuaWZlc3QgVVJMcyBvZiBhbGwgbm9uLW9ic29sZXRlIGNhY2hlIGdyb3Vwcy4KICAgICBI
YXNoQ291bnRlZFNldDx1bnNpZ25lZCwgQWxyZWFkeUhhc2hlZD4gbV9jYWNoZUhvc3RTZXQ7CiAg
ICAgCi0gICAgdHlwZWRlZiBIYXNoTWFwPFN0cmluZywgQXBwbGljYXRpb25DYWNoZUdyb3VwKj4g
Q2FjaGVHcm91cE1hcDsKLSAgICBDYWNoZUdyb3VwTWFwIG1fY2FjaGVzSW5NZW1vcnk7IC8vIEV4
Y2x1ZGVzIG9ic29sZXRlIGNhY2hlIGdyb3Vwcy4KKyAgICBIYXNoTWFwPFN0cmluZywgQXBwbGlj
YXRpb25DYWNoZUdyb3VwKj4gbV9jYWNoZXNJbk1lbW9yeTsgLy8gRXhjbHVkZXMgb2Jzb2xldGUg
Y2FjaGUgZ3JvdXBzLgogCiAgICAgZnJpZW5kIGNsYXNzIFdURjo6TmV2ZXJEZXN0cm95ZWQ8QXBw
bGljYXRpb25DYWNoZVN0b3JhZ2U+OwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9hcHBjYWNoZS9ET01BcHBsaWNhdGlvbkNhY2hlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9hcHBjYWNoZS9ET01BcHBsaWNhdGlvbkNhY2hlLmNwcAppbmRleCA0ZDBlZWYyMjRjMGFi
ZDE4OTE1YjM2M2UxNTFlMDAwNDVkMDk4OTFjLi5lZDhmYWQ4ZjY5NjEwYTczZWY1ZGYxYTc3ZTM3
Y2VmMmVhNDQ1ZjAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUv
RE9NQXBwbGljYXRpb25DYWNoZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNh
Y2hlL0RPTUFwcGxpY2F0aW9uQ2FjaGUuY3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHly
aWdodCAoQykgMjAwOCwgMjAwOSBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisgKiBD
b3B5cmlnaHQgKEMpIDIwMDgtMjAxNyBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAg
KgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTI5LDExMSArMjksODQgQEAKICNpbmNs
dWRlICJBcHBsaWNhdGlvbkNhY2hlSG9zdC5oIgogI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5j
bHVkZSAiRG9jdW1lbnRMb2FkZXIuaCIKLSNpbmNsdWRlICJFdmVudC5oIgotI2luY2x1ZGUgIkV2
ZW50TGlzdGVuZXIuaCIKLSNpbmNsdWRlICJFdmVudE5hbWVzLmgiCiAjaW5jbHVkZSAiRXhjZXB0
aW9uQ29kZS5oIgogI2luY2x1ZGUgIkZyYW1lLmgiCi0jaW5jbHVkZSAiRnJhbWVMb2FkZXIuaCIK
IAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1ET01BcHBsaWNhdGlvbkNhY2hlOjpET01BcHBsaWNh
dGlvbkNhY2hlKEZyYW1lKiBmcmFtZSkKLSAgICA6IERPTVdpbmRvd1Byb3BlcnR5KGZyYW1lKQor
RE9NQXBwbGljYXRpb25DYWNoZTo6RE9NQXBwbGljYXRpb25DYWNoZShGcmFtZSYgZnJhbWUpCisg
ICAgOiBET01XaW5kb3dQcm9wZXJ0eSgmZnJhbWUpCiB7Ci0gICAgQXBwbGljYXRpb25DYWNoZUhv
c3QqIGNhY2hlSG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7Ci0gICAgaWYgKGNhY2hlSG9z
dCkKLSAgICAgICAgY2FjaGVIb3N0LT5zZXRET01BcHBsaWNhdGlvbkNhY2hlKHRoaXMpOworICAg
IGlmIChhdXRvKiBob3N0ID0gYXBwbGljYXRpb25DYWNoZUhvc3QoKSkKKyAgICAgICAgaG9zdC0+
c2V0RE9NQXBwbGljYXRpb25DYWNoZSh0aGlzKTsKIH0KIAogdm9pZCBET01BcHBsaWNhdGlvbkNh
Y2hlOjpkaXNjb25uZWN0RnJhbWVGb3JEb2N1bWVudFN1c3BlbnNpb24oKQogewotICAgIGlmIChB
cHBsaWNhdGlvbkNhY2hlSG9zdCogY2FjaGVIb3N0ID0gYXBwbGljYXRpb25DYWNoZUhvc3QoKSkK
LSAgICAgICAgY2FjaGVIb3N0LT5zZXRET01BcHBsaWNhdGlvbkNhY2hlKG51bGxwdHIpOworICAg
IGlmIChhdXRvKiBob3N0ID0gYXBwbGljYXRpb25DYWNoZUhvc3QoKSkKKyAgICAgICAgaG9zdC0+
c2V0RE9NQXBwbGljYXRpb25DYWNoZShudWxscHRyKTsKICAgICBET01XaW5kb3dQcm9wZXJ0eTo6
ZGlzY29ubmVjdEZyYW1lRm9yRG9jdW1lbnRTdXNwZW5zaW9uKCk7CiB9CiAKIHZvaWQgRE9NQXBw
bGljYXRpb25DYWNoZTo6cmVjb25uZWN0RnJhbWVGcm9tRG9jdW1lbnRTdXNwZW5zaW9uKEZyYW1l
KiBmcmFtZSkKIHsKICAgICBET01XaW5kb3dQcm9wZXJ0eTo6cmVjb25uZWN0RnJhbWVGcm9tRG9j
dW1lbnRTdXNwZW5zaW9uKGZyYW1lKTsKLSAgICBpZiAoQXBwbGljYXRpb25DYWNoZUhvc3QqIGNh
Y2hlSG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkpCi0gICAgICAgIGNhY2hlSG9zdC0+c2V0
RE9NQXBwbGljYXRpb25DYWNoZSh0aGlzKTsKKyAgICBpZiAoYXV0byogaG9zdCA9IGFwcGxpY2F0
aW9uQ2FjaGVIb3N0KCkpCisgICAgICAgIGhvc3QtPnNldERPTUFwcGxpY2F0aW9uQ2FjaGUodGhp
cyk7CiB9CiAKIHZvaWQgRE9NQXBwbGljYXRpb25DYWNoZTo6d2lsbERlc3Ryb3lHbG9iYWxPYmpl
Y3RJbkZyYW1lKCkKIHsKLSAgICBpZiAoQXBwbGljYXRpb25DYWNoZUhvc3QqIGNhY2hlSG9zdCA9
IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkpCi0gICAgICAgIGNhY2hlSG9zdC0+c2V0RE9NQXBwbGlj
YXRpb25DYWNoZShudWxscHRyKTsKKyAgICBpZiAoYXV0byogaG9zdCA9IGFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KCkpCisgICAgICAgIGhvc3QtPnNldERPTUFwcGxpY2F0aW9uQ2FjaGUobnVsbHB0cik7
CiAgICAgRE9NV2luZG93UHJvcGVydHk6OndpbGxEZXN0cm95R2xvYmFsT2JqZWN0SW5GcmFtZSgp
OwogfQogCiBBcHBsaWNhdGlvbkNhY2hlSG9zdCogRE9NQXBwbGljYXRpb25DYWNoZTo6YXBwbGlj
YXRpb25DYWNoZUhvc3QoKSBjb25zdAogewotICAgIGlmICghbV9mcmFtZSB8fCAhbV9mcmFtZS0+
bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSkKKyAgICBpZiAoIW1fZnJhbWUpCiAgICAgICAgIHJl
dHVybiBudWxscHRyOwotICAgIHJldHVybiBtX2ZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRl
cigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpOworICAgIGF1dG8qIGRvY3VtZW50TG9hZGVyID0g
bV9mcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKKyAgICBpZiAoIWRvY3VtZW50TG9h
ZGVyKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICByZXR1cm4gJmRvY3VtZW50TG9hZGVy
LT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpOwogfQogCiB1bnNpZ25lZCBzaG9ydCBET01BcHBsaWNh
dGlvbkNhY2hlOjpzdGF0dXMoKSBjb25zdAogewotICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0KiBj
YWNoZUhvc3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpOwotICAgIGlmICghY2FjaGVIb3N0KQor
ICAgIGF1dG8qIGhvc3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpOworICAgIGlmICghaG9zdCkK
ICAgICAgICAgcmV0dXJuIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpVTkNBQ0hFRDsKLSAgICByZXR1
cm4gY2FjaGVIb3N0LT5zdGF0dXMoKTsKKyAgICByZXR1cm4gaG9zdC0+c3RhdHVzKCk7CiB9CiAK
IEV4Y2VwdGlvbk9yPHZvaWQ+IERPTUFwcGxpY2F0aW9uQ2FjaGU6OnVwZGF0ZSgpCiB7Ci0gICAg
YXV0byogY2FjaGVIb3N0ID0gYXBwbGljYXRpb25DYWNoZUhvc3QoKTsKLSAgICBpZiAoIWNhY2hl
SG9zdCB8fCAhY2FjaGVIb3N0LT51cGRhdGUoKSkKKyAgICBhdXRvKiBob3N0ID0gYXBwbGljYXRp
b25DYWNoZUhvc3QoKTsKKyAgICBpZiAoIWhvc3QgfHwgIWhvc3QtPnVwZGF0ZSgpKQogICAgICAg
ICByZXR1cm4gRXhjZXB0aW9uIHsgSU5WQUxJRF9TVEFURV9FUlIgfTsKICAgICByZXR1cm4geyB9
OwogfQogCiBFeGNlcHRpb25Pcjx2b2lkPiBET01BcHBsaWNhdGlvbkNhY2hlOjpzd2FwQ2FjaGUo
KQogewotICAgIGF1dG8qIGNhY2hlSG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7Ci0gICAg
aWYgKCFjYWNoZUhvc3QgfHwgIWNhY2hlSG9zdC0+c3dhcENhY2hlKCkpCisgICAgYXV0byogaG9z
dCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7CisgICAgaWYgKCFob3N0IHx8ICFob3N0LT5zd2Fw
Q2FjaGUoKSkKICAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IElOVkFMSURfU1RBVEVfRVJSIH07
CiAgICAgcmV0dXJuIHsgfTsKIH0KIAogdm9pZCBET01BcHBsaWNhdGlvbkNhY2hlOjphYm9ydCgp
CiB7Ci0gICAgQXBwbGljYXRpb25DYWNoZUhvc3QqIGNhY2hlSG9zdCA9IGFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KCk7Ci0gICAgaWYgKGNhY2hlSG9zdCkKLSAgICAgICAgY2FjaGVIb3N0LT5hYm9ydCgp
OworICAgIGlmIChhdXRvKiBob3N0ID0gYXBwbGljYXRpb25DYWNoZUhvc3QoKSkKKyAgICAgICAg
aG9zdC0+YWJvcnQoKTsKIH0KIAogU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogRE9NQXBwbGljYXRp
b25DYWNoZTo6c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNvbnN0CiB7Ci0gICAgaWYgKG1fZnJh
bWUpCi0gICAgICAgIHJldHVybiBtX2ZyYW1lLT5kb2N1bWVudCgpOwotICAgIHJldHVybiBudWxs
cHRyOwotfQotCi1jb25zdCBBdG9taWNTdHJpbmcmIERPTUFwcGxpY2F0aW9uQ2FjaGU6OnRvRXZl
bnRUeXBlKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFdmVudElEIGlkKQotewotICAgIHN3aXRjaCAo
aWQpIHsKLSAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDSEVDS0lOR19FVkVOVDoKLSAg
ICAgICAgcmV0dXJuIGV2ZW50TmFtZXMoKS5jaGVja2luZ0V2ZW50OwotICAgIGNhc2UgQXBwbGlj
YXRpb25DYWNoZUhvc3Q6OkVSUk9SX0VWRU5UOgotICAgICAgICByZXR1cm4gZXZlbnROYW1lcygp
LmVycm9yRXZlbnQ7Ci0gICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Tk9VUERBVEVfRVZF
TlQ6Ci0gICAgICAgIHJldHVybiBldmVudE5hbWVzKCkubm91cGRhdGVFdmVudDsKLSAgICBjYXNl
IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpET1dOTE9BRElOR19FVkVOVDoKLSAgICAgICAgcmV0dXJu
IGV2ZW50TmFtZXMoKS5kb3dubG9hZGluZ0V2ZW50OwotICAgIGNhc2UgQXBwbGljYXRpb25DYWNo
ZUhvc3Q6OlBST0dSRVNTX0VWRU5UOgotICAgICAgICByZXR1cm4gZXZlbnROYW1lcygpLnByb2dy
ZXNzRXZlbnQ7Ci0gICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6VVBEQVRFUkVBRFlfRVZF
TlQ6Ci0gICAgICAgIHJldHVybiBldmVudE5hbWVzKCkudXBkYXRlcmVhZHlFdmVudDsKLSAgICBj
YXNlIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDQUNIRURfRVZFTlQ6Ci0gICAgICAgIHJldHVybiBl
dmVudE5hbWVzKCkuY2FjaGVkRXZlbnQ7Ci0gICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6
T0JTT0xFVEVfRVZFTlQ6ICAgICAgICAgICAgCi0gICAgICAgIHJldHVybiBldmVudE5hbWVzKCku
b2Jzb2xldGVFdmVudDsKLSAgICB9Ci0gICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgcmV0
dXJuIGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50OworICAgIGlmICghbV9mcmFtZSkKKyAgICAgICAg
cmV0dXJuIG51bGxwdHI7CisgICAgcmV0dXJuIG1fZnJhbWUtPmRvY3VtZW50KCk7CiB9CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9h
cHBjYWNoZS9ET01BcHBsaWNhdGlvbkNhY2hlLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBw
Y2FjaGUvRE9NQXBwbGljYXRpb25DYWNoZS5oCmluZGV4IDNmMjBkOGMyYjc1MTk3MzJmYWExZjdk
MGVlMGY5MDRhOTc4NTAxOWQuLmNmNmQyYTlkOTlmNzA2OGMwNmNjMmY0YTI3MTExZTJkY2RjMWU2
NzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9ET01BcHBsaWNh
dGlvbkNhY2hlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0RPTUFwcGxp
Y2F0aW9uQ2FjaGUuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDgs
IDIwMDkgQXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAy
MDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgogICoKICAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCkBAIC0yNSw0NiArMjUsMzkgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNp
bmNsdWRlICJBcHBsaWNhdGlvbkNhY2hlSG9zdC5oIgogI2luY2x1ZGUgIkRPTVdpbmRvd1Byb3Bl
cnR5LmgiCiAjaW5jbHVkZSAiRXZlbnRUYXJnZXQuaCIKLSNpbmNsdWRlICJFeGNlcHRpb25Pci5o
IgotI2luY2x1ZGUgIlNjcmlwdFdyYXBwYWJsZS5oIgotI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+
Ci0jaW5jbHVkZSA8d3RmL3RleHQvQXRvbWljU3RyaW5nSGFzaC5oPgogCiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAKK2NsYXNzIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OwogY2xhc3MgRnJhbWU7Ci1jbGFz
cyBVUkw7CiAKIGNsYXNzIERPTUFwcGxpY2F0aW9uQ2FjaGUgZmluYWwgOiBwdWJsaWMgUmVmQ291
bnRlZDxET01BcHBsaWNhdGlvbkNhY2hlPiwgcHVibGljIEV2ZW50VGFyZ2V0V2l0aElubGluZURh
dGEsIHB1YmxpYyBET01XaW5kb3dQcm9wZXJ0eSB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFJlZjxE
T01BcHBsaWNhdGlvbkNhY2hlPiBjcmVhdGUoRnJhbWUqIGZyYW1lKSB7IHJldHVybiBhZG9wdFJl
ZigqbmV3IERPTUFwcGxpY2F0aW9uQ2FjaGUoZnJhbWUpKTsgfQorICAgIHN0YXRpYyBSZWY8RE9N
QXBwbGljYXRpb25DYWNoZT4gY3JlYXRlKEZyYW1lJiBmcmFtZSkgeyByZXR1cm4gYWRvcHRSZWYo
Km5ldyBET01BcHBsaWNhdGlvbkNhY2hlKGZyYW1lKSk7IH0KICAgICB2aXJ0dWFsIH5ET01BcHBs
aWNhdGlvbkNhY2hlKCkgeyBBU1NFUlQoIW1fZnJhbWUpOyB9CiAKLSAgICB2b2lkIGRpc2Nvbm5l
Y3RGcmFtZUZvckRvY3VtZW50U3VzcGVuc2lvbigpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVjb25u
ZWN0RnJhbWVGcm9tRG9jdW1lbnRTdXNwZW5zaW9uKEZyYW1lKikgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCB3aWxsRGVzdHJveUdsb2JhbE9iamVjdEluRnJhbWUoKSBvdmVycmlkZTsKLQogICAgIHVuc2ln
bmVkIHNob3J0IHN0YXR1cygpIGNvbnN0OwogICAgIEV4Y2VwdGlvbk9yPHZvaWQ+IHVwZGF0ZSgp
OwogICAgIEV4Y2VwdGlvbk9yPHZvaWQ+IHN3YXBDYWNoZSgpOwogICAgIHZvaWQgYWJvcnQoKTsK
IAotICAgIHVzaW5nIFJlZkNvdW50ZWQ8RE9NQXBwbGljYXRpb25DYWNoZT46OnJlZjsKLSAgICB1
c2luZyBSZWZDb3VudGVkPERPTUFwcGxpY2F0aW9uQ2FjaGU+OjpkZXJlZjsKKyAgICB1c2luZyBS
ZWZDb3VudGVkOjpyZWY7CisgICAgdXNpbmcgUmVmQ291bnRlZDo6ZGVyZWY7CiAKLSAgICBFdmVu
dFRhcmdldEludGVyZmFjZSBldmVudFRhcmdldEludGVyZmFjZSgpIGNvbnN0IG92ZXJyaWRlIHsg
cmV0dXJuIERPTUFwcGxpY2F0aW9uQ2FjaGVFdmVudFRhcmdldEludGVyZmFjZVR5cGU7IH0KLSAg
ICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29uc3Qg
b3ZlcnJpZGU7Citwcml2YXRlOgorICAgIGV4cGxpY2l0IERPTUFwcGxpY2F0aW9uQ2FjaGUoRnJh
bWUmKTsKIAotICAgIHN0YXRpYyBjb25zdCBBdG9taWNTdHJpbmcmIHRvRXZlbnRUeXBlKEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0OjpFdmVudElEIGlkKTsKKyAgICB2b2lkIHJlZkV2ZW50VGFyZ2V0KCkg
ZmluYWwgeyByZWYoKTsgfQorICAgIHZvaWQgZGVyZWZFdmVudFRhcmdldCgpIGZpbmFsIHsgZGVy
ZWYoKTsgfQogCi1wcml2YXRlOgotICAgIGV4cGxpY2l0IERPTUFwcGxpY2F0aW9uQ2FjaGUoRnJh
bWUqKTsKKyAgICBFdmVudFRhcmdldEludGVyZmFjZSBldmVudFRhcmdldEludGVyZmFjZSgpIGNv
bnN0IGZpbmFsIHsgcmV0dXJuIERPTUFwcGxpY2F0aW9uQ2FjaGVFdmVudFRhcmdldEludGVyZmFj
ZVR5cGU7IH0KKyAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250
ZXh0KCkgY29uc3QgZmluYWw7CiAKLSAgICB2b2lkIHJlZkV2ZW50VGFyZ2V0KCkgb3ZlcnJpZGUg
eyByZWYoKTsgfQotICAgIHZvaWQgZGVyZWZFdmVudFRhcmdldCgpIG92ZXJyaWRlIHsgZGVyZWYo
KTsgfQorICAgIHZvaWQgZGlzY29ubmVjdEZyYW1lRm9yRG9jdW1lbnRTdXNwZW5zaW9uKCkgZmlu
YWw7CisgICAgdm9pZCByZWNvbm5lY3RGcmFtZUZyb21Eb2N1bWVudFN1c3BlbnNpb24oRnJhbWUq
KSBmaW5hbDsKKyAgICB2b2lkIHdpbGxEZXN0cm95R2xvYmFsT2JqZWN0SW5GcmFtZSgpIGZpbmFs
OwogCiAgICAgQXBwbGljYXRpb25DYWNoZUhvc3QqIGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkgY29u
c3Q7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL01hbmlm
ZXN0UGFyc2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9NYW5pZmVzdFBh
cnNlci5jcHAKaW5kZXggNjAxMTQxZDZmZjY2NDY1NTQ2YjgxYzI0YTBmYThiOWI5MWRjNGM5NS4u
NWMxNTEzNTlkZTk4M2E4MWE3NTYwNTNiYmVjZGNmYjg5YjQ1ODI2NyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL01hbmlmZXN0UGFyc2VyLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvTWFuaWZlc3RQYXJzZXIuY3BwCkBAIC0xMTksOCAr
MTE5LDcgQEAgYm9vbCBwYXJzZU1hbmlmZXN0KGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwsIGNvbnN0
IGNoYXIqIGRhdGEsIGludCBsZW5ndGgsIE1hbmlmZXMKICAgICAgICAgICAgIGlmICghdXJsLmlz
VmFsaWQoKSkKICAgICAgICAgICAgICAgICBjb250aW51ZTsKIAotICAgICAgICAgICAgaWYgKHVy
bC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSkKLSAgICAgICAgICAgICAgICB1cmwucmVtb3ZlRnJh
Z21lbnRJZGVudGlmaWVyKCk7CisgICAgICAgICAgICB1cmwucmVtb3ZlRnJhZ21lbnRJZGVudGlm
aWVyKCk7CiAgICAgICAgICAgICAKICAgICAgICAgICAgIGlmICghZXF1YWxJZ25vcmluZ0FTQ0lJ
Q2FzZSh1cmwucHJvdG9jb2woKSwgbWFuaWZlc3RVUkwucHJvdG9jb2woKSkpCiAgICAgICAgICAg
ICAgICAgY29udGludWU7CkBAIC0xNTAsOCArMTQ5LDcgQEAgYm9vbCBwYXJzZU1hbmlmZXN0KGNv
bnN0IFVSTCYgbWFuaWZlc3RVUkwsIGNvbnN0IGNoYXIqIGRhdGEsIGludCBsZW5ndGgsIE1hbmlm
ZXMKICAgICAgICAgICAgIFVSTCBuYW1lc3BhY2VVUkwobWFuaWZlc3RVUkwsIGxpbmUuc3Vic3Ry
aW5nKDAsIHAgLSB1cGNvbnZlcnRlZExpbmVDaGFyYWN0ZXJzKSk7CiAgICAgICAgICAgICBpZiAo
IW5hbWVzcGFjZVVSTC5pc1ZhbGlkKCkpCiAgICAgICAgICAgICAgICAgY29udGludWU7Ci0gICAg
ICAgICAgICBpZiAobmFtZXNwYWNlVVJMLmhhc0ZyYWdtZW50SWRlbnRpZmllcigpKQotICAgICAg
ICAgICAgICAgIG5hbWVzcGFjZVVSTC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKKyAgICAg
ICAgICAgIG5hbWVzcGFjZVVSTC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKIAogICAgICAg
ICAgICAgaWYgKCFwcm90b2NvbEhvc3RBbmRQb3J0QXJlRXF1YWwobWFuaWZlc3RVUkwsIG5hbWVz
cGFjZVVSTCkpCiAgICAgICAgICAgICAgICAgY29udGludWU7CkBAIC0xNjgsOCArMTY2LDcgQEAg
Ym9vbCBwYXJzZU1hbmlmZXN0KGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwsIGNvbnN0IGNoYXIqIGRh
dGEsIGludCBsZW5ndGgsIE1hbmlmZXMKICAgICAgICAgICAgIFVSTCBmYWxsYmFja1VSTChtYW5p
ZmVzdFVSTCwgU3RyaW5nKGZhbGxiYWNrU3RhcnQsIHAgLSBmYWxsYmFja1N0YXJ0KSk7CiAgICAg
ICAgICAgICBpZiAoIWZhbGxiYWNrVVJMLmlzVmFsaWQoKSkKICAgICAgICAgICAgICAgICBjb250
aW51ZTsKLSAgICAgICAgICAgIGlmIChmYWxsYmFja1VSTC5oYXNGcmFnbWVudElkZW50aWZpZXIo
KSkKLSAgICAgICAgICAgICAgICBmYWxsYmFja1VSTC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIo
KTsKKyAgICAgICAgICAgIGZhbGxiYWNrVVJMLnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpOwog
CiAgICAgICAgICAgICBpZiAoIXByb3RvY29sSG9zdEFuZFBvcnRBcmVFcXVhbChtYW5pZmVzdFVS
TCwgZmFsbGJhY2tVUkwpKQogICAgICAgICAgICAgICAgIGNvbnRpbnVlOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL01hbmlmZXN0UGFyc2VyLmggYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvTWFuaWZlc3RQYXJzZXIuaAppbmRleCA2NjEyYzAwZjc5
NTE3ZDg2ZGFjZTQzOTcxYjM1ZjdiMGExNmZhNjc1Li5iMjgyNDllYmU0N2Y1ZDY2ZDJlMjE0NjM5
NzMxMDZmMTBjYzJiZjU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2Fj
aGUvTWFuaWZlc3RQYXJzZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUv
TWFuaWZlc3RQYXJzZXIuaApAQCAtMjYsMTggKzI2LDE5IEBACiAjcHJhZ21hIG9uY2UKIAogI2lu
Y2x1ZGUgIkFwcGxpY2F0aW9uQ2FjaGUuaCIKKyNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgogCiBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKLSAgICBjbGFzcyBVUkw7CitjbGFzcyBVUkw7CiAKLSAgICBz
dHJ1Y3QgTWFuaWZlc3QgewotICAgICAgICBWZWN0b3I8VVJMPiBvbmxpbmVXaGl0ZWxpc3RlZFVS
THM7Ci0gICAgICAgIEhhc2hTZXQ8U3RyaW5nPiBleHBsaWNpdFVSTHM7Ci0gICAgICAgIEZhbGxi
YWNrVVJMVmVjdG9yIGZhbGxiYWNrVVJMczsKLSAgICAgICAgYm9vbCBhbGxvd0FsbE5ldHdvcmtS
ZXF1ZXN0czsgLy8gV2lsZGNhcmQgZm91bmQgaW4gTkVUV09SSyBzZWN0aW9uLgotICAgIH07Citz
dHJ1Y3QgTWFuaWZlc3QgeworICAgIFZlY3RvcjxVUkw+IG9ubGluZVdoaXRlbGlzdGVkVVJMczsK
KyAgICBIYXNoU2V0PFN0cmluZz4gZXhwbGljaXRVUkxzOworICAgIEZhbGxiYWNrVVJMVmVjdG9y
IGZhbGxiYWNrVVJMczsKKyAgICBib29sIGFsbG93QWxsTmV0d29ya1JlcXVlc3RzOyAvLyBXaWxk
Y2FyZCBmb3VuZCBpbiBORVRXT1JLIHNlY3Rpb24uCit9OwogCi0gICAgYm9vbCBwYXJzZU1hbmlm
ZXN0KGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwsIGNvbnN0IGNoYXIqIGRhdGEsIGludCBsZW5ndGgs
IE1hbmlmZXN0Jik7Citib29sIHBhcnNlTWFuaWZlc3QoY29uc3QgVVJMJiBtYW5pZmVzdFVSTCwg
Y29uc3QgY2hhciogZGF0YSwgaW50IGxlbmd0aCwgTWFuaWZlc3QmKTsKIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJj
aGl2ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmNwcAppbmRl
eCBlODlhNDk5ZGY0MDQ0NmMzMjYwYmJmZjFiMjhkZTBkOWFkOTc3YTBlLi41ZTA1YmUyMmM3ZDRl
YTdmMTIyYmE0MTE3ODY5M2YyNWVkMmUwZWRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJj
aGl2ZS9BcmNoaXZlLmNwcApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MDggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4
LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAog
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCkBAIC0zNywxNyArMzcsMTcgQEAgQXJjaGl2ZTo6fkFyY2hpdmUoKQogCiB2
b2lkIEFyY2hpdmU6OmNsZWFyQWxsU3ViZnJhbWVBcmNoaXZlcygpCiB7Ci0gICAgVmVjdG9yPFJl
ZlB0cjxBcmNoaXZlPj4gY2xlYXJlZEFyY2hpdmVzOwotICAgIGNsZWFyQWxsU3ViZnJhbWVBcmNo
aXZlc0ltcGwoJmNsZWFyZWRBcmNoaXZlcyk7CisgICAgSGFzaFNldDxBcmNoaXZlKj4gY2xlYXJl
ZEFyY2hpdmVzOworICAgIGNsZWFyZWRBcmNoaXZlcy5hZGQodGhpcyk7CisgICAgY2xlYXJBbGxT
dWJmcmFtZUFyY2hpdmVzKGNsZWFyZWRBcmNoaXZlcyk7CiB9CiAKLXZvaWQgQXJjaGl2ZTo6Y2xl
YXJBbGxTdWJmcmFtZUFyY2hpdmVzSW1wbChWZWN0b3I8UmVmUHRyPEFyY2hpdmU+PiogY2xlYXJl
ZEFyY2hpdmVzKQordm9pZCBBcmNoaXZlOjpjbGVhckFsbFN1YmZyYW1lQXJjaGl2ZXMoSGFzaFNl
dDxBcmNoaXZlKj4mIGNsZWFyZWRBcmNoaXZlcykKIHsKKyAgICBBU1NFUlQoY2xlYXJlZEFyY2hp
dmVzLmNvbnRhaW5zKHRoaXMpKTsKICAgICBmb3IgKGF1dG8mIGFyY2hpdmUgOiBtX3N1YmZyYW1l
QXJjaGl2ZXMpIHsKLSAgICAgICAgaWYgKCFjbGVhcmVkQXJjaGl2ZXMtPmNvbnRhaW5zKGFyY2hp
dmUpKSB7Ci0gICAgICAgICAgICBjbGVhcmVkQXJjaGl2ZXMtPmFwcGVuZChhcmNoaXZlKTsKLSAg
ICAgICAgICAgIGFyY2hpdmUtPmNsZWFyQWxsU3ViZnJhbWVBcmNoaXZlc0ltcGwoY2xlYXJlZEFy
Y2hpdmVzKTsKLSAgICAgICAgfQorICAgICAgICBpZiAoY2xlYXJlZEFyY2hpdmVzLmFkZChhcmNo
aXZlLnB0cigpKSkKKyAgICAgICAgICAgIGFyY2hpdmUtPmNsZWFyQWxsU3ViZnJhbWVBcmNoaXZl
cyhjbGVhcmVkQXJjaGl2ZXMpOwogICAgIH0KICAgICBtX3N1YmZyYW1lQXJjaGl2ZXMuY2xlYXIo
KTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmUu
aCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmUuaAppbmRleCBmMjA2NTQ5
MzIyNDIzYTdmYjI0MDBkZTU4YzlmNGExOTIyZGRhZWU3Li5mZjc0Y2UyODMxYWE0ZDI3MzU0MmYx
MmQ5OTM3ODI0NTE2MDJlM2M3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJj
aGl2ZS9BcmNoaXZlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2
ZS5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxNyBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
QEAgLTI5LDQxICsyOSwzOCBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJBcmNoaXZlUmVz
b3VyY2UuaCIKLQotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1Jl
ZkNvdW50ZWQuaD4KLSNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1ZlY3Rv
ci5oPgorI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAog
Y2xhc3MgQXJjaGl2ZSA6IHB1YmxpYyBSZWZDb3VudGVkPEFyY2hpdmU+IHsKIHB1YmxpYzoKLSAg
ICBlbnVtIFR5cGUgewotICAgICAgV2ViQXJjaGl2ZSwKLSAgICAgIE1IVE1MCi0gICAgfTsKICAg
ICB2aXJ0dWFsIH5BcmNoaXZlKCk7Ci0gICAgdmlydHVhbCBUeXBlIHR5cGUoKSBjb25zdCA9IDA7
CisKKyAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkTG9hZEZyb21BcmNoaXZlT25seSgpIGNvbnN0ID0g
MDsKKyAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkT3ZlcnJpZGVCYXNlVVJMKCkgY29uc3QgPSAwOwor
ICAgIHZpcnR1YWwgYm9vbCBzaG91bGRVc2VNYWluUmVzb3VyY2VFbmNvZGluZygpIGNvbnN0ID0g
MDsKKyAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkVXNlTWFpblJlc291cmNlVVJMKCkgY29uc3QgPSAw
OworCiAgICAgQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3VyY2UoKSB7IHJldHVybiBtX21haW5S
ZXNvdXJjZS5nZXQoKTsgfQotICAgIGNvbnN0IFZlY3RvcjxSZWZQdHI8QXJjaGl2ZVJlc291cmNl
Pj4mIHN1YnJlc291cmNlcygpIGNvbnN0IHsgcmV0dXJuIG1fc3VicmVzb3VyY2VzOyB9Ci0gICAg
Y29uc3QgVmVjdG9yPFJlZlB0cjxBcmNoaXZlPj4mIHN1YmZyYW1lQXJjaGl2ZXMoKSBjb25zdCB7
IHJldHVybiBtX3N1YmZyYW1lQXJjaGl2ZXM7IH0KKyAgICBjb25zdCBWZWN0b3I8UmVmPEFyY2hp
dmVSZXNvdXJjZT4+JiBzdWJyZXNvdXJjZXMoKSBjb25zdCB7IHJldHVybiBtX3N1YnJlc291cmNl
czsgfQorICAgIGNvbnN0IFZlY3RvcjxSZWY8QXJjaGl2ZT4+JiBzdWJmcmFtZUFyY2hpdmVzKCkg
Y29uc3QgeyByZXR1cm4gbV9zdWJmcmFtZUFyY2hpdmVzOyB9CiAKIHByb3RlY3RlZDoKICAgICAv
LyBUaGVzZSBtZXRob2RzIGFyZSBtZWFudCBmb3Igc3ViY2xhc3NlcyBmb3IgZGlmZmVyZW50IGFy
Y2hpdmUgdHlwZXMgdG8gYWRkIHJlc291cmNlcyBpbiB0byB0aGUgYXJjaGl2ZSwKICAgICAvLyBh
bmQgc2hvdWxkIG5vdCBiZSBleHBvc2VkIGFzIGFyY2hpdmVzIHNob3VsZCBiZSBpbW11dGFibGUg
dG8gY2xpZW50cwotICAgIHZvaWQgc2V0TWFpblJlc291cmNlKFBhc3NSZWZQdHI8QXJjaGl2ZVJl
c291cmNlPiBtYWluUmVzb3VyY2UpIHsgbV9tYWluUmVzb3VyY2UgPSBtYWluUmVzb3VyY2U7IH0K
LSAgICB2b2lkIGFkZFN1YnJlc291cmNlKFBhc3NSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBzdWJS
ZXNvdXJjZSkgeyBtX3N1YnJlc291cmNlcy5hcHBlbmQoc3ViUmVzb3VyY2UpOyB9Ci0gICAgdm9p
ZCBhZGRTdWJmcmFtZUFyY2hpdmUoUGFzc1JlZlB0cjxBcmNoaXZlPiBzdWJmcmFtZUFyY2hpdmUp
IHsgbV9zdWJmcmFtZUFyY2hpdmVzLmFwcGVuZChzdWJmcmFtZUFyY2hpdmUpOyB9CisgICAgdm9p
ZCBzZXRNYWluUmVzb3VyY2UoUmVmPEFyY2hpdmVSZXNvdXJjZT4mJiBtYWluUmVzb3VyY2UpIHsg
bV9tYWluUmVzb3VyY2UgPSBXVEZNb3ZlKG1haW5SZXNvdXJjZSk7IH0KKyAgICB2b2lkIGFkZFN1
YnJlc291cmNlKFJlZjxBcmNoaXZlUmVzb3VyY2U+JiYgcmVzb3VyY2UpIHsgbV9zdWJyZXNvdXJj
ZXMuYXBwZW5kKFdURk1vdmUocmVzb3VyY2UpKTsgfQorICAgIHZvaWQgYWRkU3ViZnJhbWVBcmNo
aXZlKFJlZjxBcmNoaXZlPiYmIHN1YmZyYW1lQXJjaGl2ZSkgeyBtX3N1YmZyYW1lQXJjaGl2ZXMu
YXBwZW5kKFdURk1vdmUoc3ViZnJhbWVBcmNoaXZlKSk7IH0KIAogICAgIHZvaWQgY2xlYXJBbGxT
dWJmcmFtZUFyY2hpdmVzKCk7CiAKIHByaXZhdGU6Ci0gICAgdm9pZCBjbGVhckFsbFN1YmZyYW1l
QXJjaGl2ZXNJbXBsKFZlY3RvcjxSZWZQdHI8QXJjaGl2ZT4+KiBjbGVhcmVkQXJjaGl2ZXMpOwor
ICAgIHZvaWQgY2xlYXJBbGxTdWJmcmFtZUFyY2hpdmVzKEhhc2hTZXQ8QXJjaGl2ZSo+Jik7CiAK
ICAgICBSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBtX21haW5SZXNvdXJjZTsKLSAgICBWZWN0b3I8
UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+IG1fc3VicmVzb3VyY2VzOwotICAgIFZlY3RvcjxSZWZQ
dHI8QXJjaGl2ZT4+IG1fc3ViZnJhbWVBcmNoaXZlczsKKyAgICBWZWN0b3I8UmVmPEFyY2hpdmVS
ZXNvdXJjZT4+IG1fc3VicmVzb3VyY2VzOworICAgIFZlY3RvcjxSZWY8QXJjaGl2ZT4+IG1fc3Vi
ZnJhbWVBcmNoaXZlczsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmVGYWN0b3J5LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmVGYWN0b3J5LmNwcAppbmRleCA5MGI2Nzk5
NTE1NmRiMDhlZTRiZTQ3NTQ4NzVhZGU1Y2ZhMzYyZDljLi40MTdhYzQ3YTczNmNlNjViMjIzM2Mx
ZmNiNTYyZGY3MTZlYjZhYmIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJj
aGl2ZS9BcmNoaXZlRmFjdG9yeS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hp
dmUvQXJjaGl2ZUZhY3RvcnkuY3BwCkBAIC00OSwzMSArNDksMzMgQEAgbmFtZXNwYWNlIFdlYkNv
cmUgewogdHlwZWRlZiBSZWZQdHI8QXJjaGl2ZT4gUmF3RGF0YUNyZWF0aW9uRnVuY3Rpb24oY29u
c3QgVVJMJiwgU2hhcmVkQnVmZmVyJik7CiB0eXBlZGVmIEhhc2hNYXA8U3RyaW5nLCBSYXdEYXRh
Q3JlYXRpb25GdW5jdGlvbiosIEFTQ0lJQ2FzZUluc2Vuc2l0aXZlSGFzaD4gQXJjaGl2ZU1JTUVU
eXBlc01hcDsKIAotLy8gVGhlIGNyZWF0ZSBmdW5jdGlvbnMgaW4gdGhlIGFyY2hpdmUgY2xhc3Nl
cyByZXR1cm4gUGFzc1JlZlB0ciB0byBjb25jcmV0ZSBzdWJjbGFzc2VzCisvLyBUaGUgY3JlYXRl
IGZ1bmN0aW9ucyBpbiB0aGUgYXJjaGl2ZSBjbGFzc2VzIHJldHVybiBSZWZQdHIgdG8gY29uY3Jl
dGUgc3ViY2xhc3NlcwogLy8gb2YgQXJjaGl2ZS4gVGhpcyBhZGFwdG9yIG1ha2VzIHRoZSBmdW5j
dGlvbnMgaGF2ZSBhIHVuaWZvcm0gcmV0dXJuIHR5cGUuCi10ZW1wbGF0ZSA8dHlwZW5hbWUgQXJj
aGl2ZUNsYXNzPiBzdGF0aWMgUmVmUHRyPEFyY2hpdmU+IGFyY2hpdmVGYWN0b3J5Q3JlYXRlKGNv
bnN0IFVSTCYgdXJsLCBTaGFyZWRCdWZmZXImIGJ1ZmZlcikKK3RlbXBsYXRlPHR5cGVuYW1lIEFy
Y2hpdmVDbGFzcz4gc3RhdGljIFJlZlB0cjxBcmNoaXZlPiBhcmNoaXZlRmFjdG9yeUNyZWF0ZShj
b25zdCBVUkwmIHVybCwgU2hhcmVkQnVmZmVyJiBidWZmZXIpCiB7CiAgICAgcmV0dXJuIEFyY2hp
dmVDbGFzczo6Y3JlYXRlKHVybCwgYnVmZmVyKTsKIH0KIAotc3RhdGljIEFyY2hpdmVNSU1FVHlw
ZXNNYXAmIGFyY2hpdmVNSU1FVHlwZXMoKQorc3RhdGljIEFyY2hpdmVNSU1FVHlwZXNNYXAgY3Jl
YXRlQXJjaGl2ZU1JTUVUeXBlc01hcCgpCiB7Ci0gICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPEFy
Y2hpdmVNSU1FVHlwZXNNYXA+IG1pbWVUeXBlczsKLSAgICBzdGF0aWMgYm9vbCBpbml0aWFsaXpl
ZCA9IGZhbHNlOwotCi0gICAgaWYgKGluaXRpYWxpemVkKQotICAgICAgICByZXR1cm4gbWltZVR5
cGVzOworICAgIEFyY2hpdmVNSU1FVHlwZXNNYXAgbWFwOwogCiAjaWYgRU5BQkxFKFdFQl9BUkNI
SVZFKSAmJiBVU0UoQ0YpCi0gICAgbWltZVR5cGVzLmdldCgpLnNldCgiYXBwbGljYXRpb24veC13
ZWJhcmNoaXZlIiwgYXJjaGl2ZUZhY3RvcnlDcmVhdGU8TGVnYWN5V2ViQXJjaGl2ZT4pOworICAg
IG1hcC5hZGQoQVNDSUlMaXRlcmFsIHsgImFwcGxpY2F0aW9uL3gtd2ViYXJjaGl2ZSIgfSwgYXJj
aGl2ZUZhY3RvcnlDcmVhdGU8TGVnYWN5V2ViQXJjaGl2ZT4pOwogI2VuZGlmCisKICNpZiBFTkFC
TEUoTUhUTUwpCi0gICAgbWltZVR5cGVzLmdldCgpLnNldCgibXVsdGlwYXJ0L3JlbGF0ZWQiLCBh
cmNoaXZlRmFjdG9yeUNyZWF0ZTxNSFRNTEFyY2hpdmU+KTsKLSAgICBtaW1lVHlwZXMuZ2V0KCku
c2V0KCJhcHBsaWNhdGlvbi94LW1pbWVhcmNoaXZlIiwgYXJjaGl2ZUZhY3RvcnlDcmVhdGU8TUhU
TUxBcmNoaXZlPik7CisgICAgbWFwLmFkZChBU0NJSUxpdGVyYWwgeyAibXVsdGlwYXJ0L3JlbGF0
ZWQiIH0sIGFyY2hpdmVGYWN0b3J5Q3JlYXRlPE1IVE1MQXJjaGl2ZT4pOworICAgIG1hcC5hZGQo
QVNDSUlMaXRlcmFsIHsgImFwcGxpY2F0aW9uL3gtbWltZWFyY2hpdmUiIH0sIGFyY2hpdmVGYWN0
b3J5Q3JlYXRlPE1IVE1MQXJjaGl2ZT4pOwogI2VuZGlmCiAKLSAgICBpbml0aWFsaXplZCA9IHRy
dWU7Ci0gICAgcmV0dXJuIG1pbWVUeXBlczsKKyAgICByZXR1cm4gbWFwOworfQorCitzdGF0aWMg
QXJjaGl2ZU1JTUVUeXBlc01hcCYgYXJjaGl2ZU1JTUVUeXBlcygpCit7CisgICAgc3RhdGljIE5l
dmVyRGVzdHJveWVkPEFyY2hpdmVNSU1FVHlwZXNNYXA+IG1hcCA9IGNyZWF0ZUFyY2hpdmVNSU1F
VHlwZXNNYXAoKTsKKyAgICByZXR1cm4gbWFwOwogfQogCiBib29sIEFyY2hpdmVGYWN0b3J5Ojpp
c0FyY2hpdmVNaW1lVHlwZShjb25zdCBTdHJpbmcmIG1pbWVUeXBlKQpAQCAtODMsMTAgKzg1LDE0
IEBAIGJvb2wgQXJjaGl2ZUZhY3Rvcnk6OmlzQXJjaGl2ZU1pbWVUeXBlKGNvbnN0IFN0cmluZyYg
bWltZVR5cGUpCiAKIFJlZlB0cjxBcmNoaXZlPiBBcmNoaXZlRmFjdG9yeTo6Y3JlYXRlKGNvbnN0
IFVSTCYgdXJsLCBTaGFyZWRCdWZmZXIqIGRhdGEsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUpCiB7
Ci0gICAgUmF3RGF0YUNyZWF0aW9uRnVuY3Rpb24qIGZ1bmN0aW9uID0gbWltZVR5cGUuaXNFbXB0
eSgpID8gMCA6IGFyY2hpdmVNSU1FVHlwZXMoKS5nZXQobWltZVR5cGUpOwogICAgIGlmICghZGF0
YSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgcmV0dXJuIGZ1bmN0aW9uID8gZnVuY3Rp
b24odXJsLCAqZGF0YSkgOiBSZWZQdHI8QXJjaGl2ZT4obnVsbHB0cik7CisgICAgaWYgKG1pbWVU
eXBlLmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgYXV0byogZnVuY3Rp
b24gPSBhcmNoaXZlTUlNRVR5cGVzKCkuZ2V0KG1pbWVUeXBlKTsKKyAgICBpZiAoIWZ1bmN0aW9u
KQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICByZXR1cm4gZnVuY3Rpb24odXJsLCAqZGF0
YSk7CiB9CiAKIHZvaWQgQXJjaGl2ZUZhY3Rvcnk6OnJlZ2lzdGVyS25vd25BcmNoaXZlTUlNRVR5
cGVzKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmVS
ZXNvdXJjZUNvbGxlY3Rpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJj
aGl2ZVJlc291cmNlQ29sbGVjdGlvbi5jcHAKaW5kZXggOThmNmMxZTJmYTFkNGE1MDkxMzAwZDU4
NzgwNDQyMTFkOGY3YjIzYi4uYTM3MDVlYzc3YWQyNjMxZTU5NjhkODVhY2U5N2RmMGZkMTU3YzFl
YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291
cmNlQ29sbGVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJj
aGl2ZVJlc291cmNlQ29sbGVjdGlvbi5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJp
Z2h0IChDKSAyMDA4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdo
dCAoQykgMjAwOC0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMjksMzEgKzI5LDIzIEBACiAjaW5jbHVkZSAiY29u
ZmlnLmgiCiAjaW5jbHVkZSAiQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5oIgogCi1uYW1lc3Bh
Y2UgV2ViQ29yZSB7CisjaW5jbHVkZSAiQXJjaGl2ZS5oIgogCi1BcmNoaXZlUmVzb3VyY2VDb2xs
ZWN0aW9uOjpBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uKCkKLXsKLX0KK25hbWVzcGFjZSBXZWJD
b3JlIHsKIAotdm9pZCBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uOjphZGRBbGxSZXNvdXJjZXMo
QXJjaGl2ZSogYXJjaGl2ZSkKK3ZvaWQgQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbjo6YWRkQWxs
UmVzb3VyY2VzKEFyY2hpdmUmIGFyY2hpdmUpCiB7Ci0gICAgQVNTRVJUKGFyY2hpdmUpOwotICAg
IGlmICghYXJjaGl2ZSkKLSAgICAgICAgcmV0dXJuOworICAgIGZvciAoYXV0byYgc3VicmVzb3Vy
Y2UgOiBhcmNoaXZlLnN1YnJlc291cmNlcygpKQorICAgICAgICBtX3N1YnJlc291cmNlcy5zZXQo
c3VicmVzb3VyY2UtPnVybCgpLCBzdWJyZXNvdXJjZS5wdHIoKSk7CiAKLSAgICBmb3IgKGF1dG8m
IHN1YnJlc291cmNlIDogYXJjaGl2ZS0+c3VicmVzb3VyY2VzKCkpCi0gICAgICAgIG1fc3VicmVz
b3VyY2VzLnNldChzdWJyZXNvdXJjZS0+dXJsKCksIHN1YnJlc291cmNlLmdldCgpKTsKLQotICAg
IGZvciAoYXV0byYgc3ViZnJhbWVBcmNoaXZlIDogYXJjaGl2ZS0+c3ViZnJhbWVBcmNoaXZlcygp
KSB7CisgICAgZm9yIChhdXRvJiBzdWJmcmFtZUFyY2hpdmUgOiBhcmNoaXZlLnN1YmZyYW1lQXJj
aGl2ZXMoKSkgewogICAgICAgICBBU1NFUlQoc3ViZnJhbWVBcmNoaXZlLT5tYWluUmVzb3VyY2Uo
KSk7Ci0KLSAgICAgICAgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUgPSBzdWJmcmFtZUFyY2hpdmUt
Pm1haW5SZXNvdXJjZSgpLT5mcmFtZU5hbWUoKTsKLSAgICAgICAgaWYgKCFmcmFtZU5hbWUuaXNO
dWxsKCkpCi0gICAgICAgICAgICBtX3N1YmZyYW1lcy5zZXQoZnJhbWVOYW1lLCBzdWJmcmFtZUFy
Y2hpdmUuZ2V0KCkpOwotICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIC8vIEluIHRoZSBNSFRN
TCBjYXNlLCBmcmFtZXMgZG9uJ3QgaGF2ZSBhIG5hbWUgc28gd2UgdXNlIHRoZSBVUkwgaW5zdGVh
ZC4KLSAgICAgICAgICAgIG1fc3ViZnJhbWVzLnNldChzdWJmcmFtZUFyY2hpdmUtPm1haW5SZXNv
dXJjZSgpLT51cmwoKS5zdHJpbmcoKSwgc3ViZnJhbWVBcmNoaXZlLmdldCgpKTsKKyAgICAgICAg
YXV0byBmcmFtZU5hbWUgPSBzdWJmcmFtZUFyY2hpdmUtPm1haW5SZXNvdXJjZSgpLT5mcmFtZU5h
bWUoKTsKKyAgICAgICAgaWYgKGZyYW1lTmFtZS5pc051bGwoKSkgeworICAgICAgICAgICAgLy8g
SW4gdGhlIE1IVE1MIGNhc2UsIGZyYW1lcyBkb24ndCBoYXZlIGEgbmFtZSwgc28gd2UgdXNlIHRo
ZSBVUkwgaW5zdGVhZC4KKyAgICAgICAgICAgIGZyYW1lTmFtZSA9IHN1YmZyYW1lQXJjaGl2ZS0+
bWFpblJlc291cmNlKCktPnVybCgpLnN0cmluZygpOwogICAgICAgICB9CisgICAgICAgIG1fc3Vi
ZnJhbWVzLnNldChmcmFtZU5hbWUsIHN1YmZyYW1lQXJjaGl2ZS5wdHIoKSk7CiAgICAgfQogfQog
CkBAIC02MSwyNSArNTMsMTkgQEAgdm9pZCBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uOjphZGRB
bGxSZXNvdXJjZXMoQXJjaGl2ZSogYXJjaGl2ZSkKIC8vIENhbiB3ZSBjaGFuZ2UgdGhlIGRlc2ln
biBpbiBhIG1hbm5lciB0aGF0IHdpbGwgbGV0IHVzIGRlcHJlY2F0ZSB0aGF0IEFQSSB3aXRob3V0
IHJlZHVjaW5nIGZ1bmN0aW9uYWxpdHkgb2YgdGhvc2UgYXBwcz8KIHZvaWQgQXJjaGl2ZVJlc291
cmNlQ29sbGVjdGlvbjo6YWRkUmVzb3VyY2UoUmVmPEFyY2hpdmVSZXNvdXJjZT4mJiByZXNvdXJj
ZSkKIHsKLSAgICBjb25zdCBVUkwmIHVybCA9IHJlc291cmNlLT51cmwoKTsKKyAgICBhdXRvJiB1
cmwgPSByZXNvdXJjZS0+dXJsKCk7CiAgICAgbV9zdWJyZXNvdXJjZXMuc2V0KHVybCwgV1RGTW92
ZShyZXNvdXJjZSkpOwogfQogCiBBcmNoaXZlUmVzb3VyY2UqIEFyY2hpdmVSZXNvdXJjZUNvbGxl
Y3Rpb246OmFyY2hpdmVSZXNvdXJjZUZvclVSTChjb25zdCBVUkwmIHVybCkKIHsKLSAgICBBcmNo
aXZlUmVzb3VyY2UqIHJlc291cmNlID0gbV9zdWJyZXNvdXJjZXMuZ2V0KHVybCk7Ci0gICAgaWYg
KCFyZXNvdXJjZSkKLSAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgICAgIAotICAgIHJldHVy
biByZXNvdXJjZTsKKyAgICByZXR1cm4gbV9zdWJyZXNvdXJjZXMuZ2V0KHVybCk7CiB9CiAKLVBh
c3NSZWZQdHI8QXJjaGl2ZT4gQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbjo6cG9wU3ViZnJhbWVB
cmNoaXZlKGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBjb25zdCBVUkwmIHVybCkKK1JlZlB0cjxB
cmNoaXZlPiBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uOjpwb3BTdWJmcmFtZUFyY2hpdmUoY29u
c3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IFVSTCYgdXJsKQogewotICAgIGF1dG8gYXJjaGl2
ZSA9IG1fc3ViZnJhbWVzLnRha2UoZnJhbWVOYW1lKTsKLSAgICBpZiAoYXJjaGl2ZSkKLSAgICAg
ICAgcmV0dXJuIFdURk1vdmUoYXJjaGl2ZSk7Ci0KKyAgICBpZiAoYXV0byBhcmNoaXZlID0gbV9z
dWJmcmFtZXMudGFrZShmcmFtZU5hbWUpKQorICAgICAgICByZXR1cm4gYXJjaGl2ZTsKICAgICBy
ZXR1cm4gbV9zdWJmcmFtZXMudGFrZSh1cmwuc3RyaW5nKCkpOwogfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9u
LmgKaW5kZXggNWM2MjBiNTFmMzFlNjM4MmQ3ZWYxY2MyNDhiOTMyMGY1NmM4OTdhNy4uMzdkZjY4
YjM2NmNmZjg1MzliOTVjODIzZjJlOTEyNGQzNWVhOTkzOCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24uaApA
QCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDggQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0y
OCwyNCArMjgsMjkgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpbmNsdWRlICJBcmNoaXZlLmgiCi0j
aW5jbHVkZSAiQXJjaGl2ZVJlc291cmNlLmgiCi0jaW5jbHVkZSAiVVJMLmgiCisjaW5jbHVkZSA8
d3RmL0ZvcndhcmQuaD4KICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgotI2luY2x1ZGUgPHd0Zi90
ZXh0L1dURlN0cmluZy5oPgorI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgorI2luY2x1ZGUg
PHd0Zi90ZXh0L1N0cmluZ0hhc2guaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitjbGFzcyBB
cmNoaXZlOworY2xhc3MgQXJjaGl2ZVJlc291cmNlOworY2xhc3MgVVJMOworCiBjbGFzcyBBcmNo
aXZlUmVzb3VyY2VDb2xsZWN0aW9uIHsKLSAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShBcmNoaXZl
UmVzb3VyY2VDb2xsZWN0aW9uKTsgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CisgICAgV1RGX01B
S0VfTk9OQ09QWUFCTEUoQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbik7CisgICAgV1RGX01BS0Vf
RkFTVF9BTExPQ0FURUQ7CisKIHB1YmxpYzoKLSAgICBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9u
KCk7CisgICAgQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbigpID0gZGVmYXVsdDsKIAogICAgIHZv
aWQgYWRkUmVzb3VyY2UoUmVmPEFyY2hpdmVSZXNvdXJjZT4mJik7Ci0gICAgdm9pZCBhZGRBbGxS
ZXNvdXJjZXMoQXJjaGl2ZSopOworICAgIHZvaWQgYWRkQWxsUmVzb3VyY2VzKEFyY2hpdmUmKTsK
ICAgICAKICAgICBXRUJDT1JFX0VYUE9SVCBBcmNoaXZlUmVzb3VyY2UqIGFyY2hpdmVSZXNvdXJj
ZUZvclVSTChjb25zdCBVUkwmKTsKLSAgICBQYXNzUmVmUHRyPEFyY2hpdmU+IHBvcFN1YmZyYW1l
QXJjaGl2ZShjb25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgY29uc3QgVVJMJik7CisgICAgUmVmUHRy
PEFyY2hpdmU+IHBvcFN1YmZyYW1lQXJjaGl2ZShjb25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgY29u
c3QgVVJMJik7CiAgICAgCiBwcml2YXRlOiAgICAKICAgICBIYXNoTWFwPFN0cmluZywgUmVmUHRy
PEFyY2hpdmVSZXNvdXJjZT4+IG1fc3VicmVzb3VyY2VzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2FyY2hpdmUvY2YvTGVnYWN5V2ViQXJjaGl2ZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvYXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNoaXZlLmNwcAppbmRleCBlMDQ5MDYz
MDA4MWEwMTJhNDMzMzI2YmUyNDIzMTgyN2RkZmNlOTcxLi4zOWQ4MzUyMDZjNzEwMWVlNGMxOTBj
NDI4ZjRiY2VkYjUzMTMzMWFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJj
aGl2ZS9jZi9MZWdhY3lXZWJBcmNoaXZlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
YXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNoaXZlLmNwcApAQCAtODAsMTggKzgwLDE2IEBAIFJldGFp
blB0cjxDRkRpY3Rpb25hcnlSZWY+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVByb3BlcnR5TGlz
dFJlcHJlc2VudGF0aW9uKEFyCiAgICAgICAgIENGRGljdGlvbmFyeVNldFZhbHVlKHByb3BlcnR5
TGlzdC5nZXQoKSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlTUlNRVR5cGVLZXksIDApOwogICAg
ICAgICByZXR1cm4gcHJvcGVydHlMaXN0OwogICAgIH0KLSAgICAKLSAgICBSZXRhaW5QdHI8Q0ZN
dXRhYmxlRGljdGlvbmFyeVJlZj4gcHJvcGVydHlMaXN0ID0gYWRvcHRDRihDRkRpY3Rpb25hcnlD
cmVhdGVNdXRhYmxlKDAsIDYsIDAsICZrQ0ZUeXBlRGljdGlvbmFyeVZhbHVlQ2FsbEJhY2tzKSk7
Ci0gICAgCisKKyAgICBhdXRvIHByb3BlcnR5TGlzdCA9IGFkb3B0Q0YoQ0ZEaWN0aW9uYXJ5Q3Jl
YXRlTXV0YWJsZSgwLCA2LCAwLCAma0NGVHlwZURpY3Rpb25hcnlWYWx1ZUNhbGxCYWNrcykpOwor
CiAgICAgLy8gUmVzb3VyY2UgZGF0YSBjYW4gYmUgZW1wdHksIGJ1dCBtdXN0IGJlIHJlcHJlc2Vu
dGVkIGJ5IGFuIGVtcHR5IENGRGF0YVJlZgotICAgIFNoYXJlZEJ1ZmZlciYgZGF0YSA9IHJlc291
cmNlLT5kYXRhKCk7Ci0gICAgUmV0YWluUHRyPENGRGF0YVJlZj4gY2ZEYXRhOwotICAgIGNmRGF0
YSA9IGRhdGEuY3JlYXRlQ0ZEYXRhKCk7CisgICAgYXV0byYgZGF0YSA9IHJlc291cmNlLT5kYXRh
KCk7CisKKyAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShwcm9wZXJ0eUxpc3QuZ2V0KCksIExlZ2Fj
eVdlYkFyY2hpdmVSZXNvdXJjZURhdGFLZXksIGRhdGEuY3JlYXRlQ0ZEYXRhKCkuZ2V0KCkpOwog
Ci0gICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJvcGVydHlMaXN0LmdldCgpLCBMZWdhY3lXZWJB
cmNoaXZlUmVzb3VyY2VEYXRhS2V5LCBjZkRhdGEuZ2V0KCkpOwotICAgIAogICAgIC8vIFJlc291
cmNlIFVSTCBjYW5ub3QgYmUgbnVsbAotICAgIGlmIChSZXRhaW5QdHI8Q0ZTdHJpbmdSZWY+IGNm
VVJMID0gcmVzb3VyY2UtPnVybCgpLnN0cmluZygpLmNyZWF0ZUNGU3RyaW5nKCkpCisgICAgaWYg
KGF1dG8gY2ZVUkwgPSByZXNvdXJjZS0+dXJsKCkuc3RyaW5nKCkuY3JlYXRlQ0ZTdHJpbmcoKSkK
ICAgICAgICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJvcGVydHlMaXN0LmdldCgpLCBMZWdhY3lX
ZWJBcmNoaXZlUmVzb3VyY2VVUkxLZXksIGNmVVJMLmdldCgpKTsKICAgICBlbHNlIHsKICAgICAg
ICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIE5VTEwgcmVzb3VyY2UgVVJMIGlz
IGludmFsaWQgLSByZXR1cm5pbmcgbnVsbCBwcm9wZXJ0eSBsaXN0Iik7CkBAIC05OSw0MiArOTcs
NDEgQEAgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRl
UHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24oQXIKICAgICB9CiAKICAgICAvLyBGcmFtZU5hbWUg
c2hvdWxkIGJlIGxlZnQgb3V0IGlmIGVtcHR5IGZvciBzdWJyZXNvdXJjZXMsIGJ1dCBhbHdheXMg
aW5jbHVkZWQgZm9yIG1haW4gcmVzb3VyY2VzCi0gICAgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUo
cmVzb3VyY2UtPmZyYW1lTmFtZSgpKTsKKyAgICBhdXRvJiBmcmFtZU5hbWUgPSByZXNvdXJjZS0+
ZnJhbWVOYW1lKCk7CiAgICAgaWYgKCFmcmFtZU5hbWUuaXNFbXB0eSgpIHx8IGlzTWFpblJlc291
cmNlKQogICAgICAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShwcm9wZXJ0eUxpc3QuZ2V0KCksIExl
Z2FjeVdlYkFyY2hpdmVSZXNvdXJjZUZyYW1lTmFtZUtleSwgZnJhbWVOYW1lLmNyZWF0ZUNGU3Ry
aW5nKCkuZ2V0KCkpOwotICAgIAorCiAgICAgLy8gU2V0IE1JTUVUeXBlLCBUZXh0RW5jb2RpbmdO
YW1lLCBhbmQgUmVzb3VyY2VSZXNwb25zZSBvbmx5IGlmIHRoZXkgYWN0dWFsbHkgZXhpc3QKLSAg
ICBjb25zdCBTdHJpbmcmIG1pbWVUeXBlKHJlc291cmNlLT5taW1lVHlwZSgpKTsKKyAgICBhdXRv
JiBtaW1lVHlwZSA9IHJlc291cmNlLT5taW1lVHlwZSgpOwogICAgIGlmICghbWltZVR5cGUuaXNF
bXB0eSgpKQogICAgICAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShwcm9wZXJ0eUxpc3QuZ2V0KCks
IExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZU1JTUVUeXBlS2V5LCBtaW1lVHlwZS5jcmVhdGVDRlN0
cmluZygpLmdldCgpKTsKLSAgICAKLSAgICBjb25zdCBTdHJpbmcmIHRleHRFbmNvZGluZyhyZXNv
dXJjZS0+dGV4dEVuY29kaW5nKCkpOworCisgICAgYXV0byYgdGV4dEVuY29kaW5nID0gcmVzb3Vy
Y2UtPnRleHRFbmNvZGluZygpOwogICAgIGlmICghdGV4dEVuY29kaW5nLmlzRW1wdHkoKSkKICAg
ICAgICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJvcGVydHlMaXN0LmdldCgpLCBMZWdhY3lXZWJB
cmNoaXZlUmVzb3VyY2VUZXh0RW5jb2RpbmdOYW1lS2V5LCB0ZXh0RW5jb2RpbmcuY3JlYXRlQ0ZT
dHJpbmcoKS5nZXQoKSk7CiAKICAgICAvLyBEb24ndCBpbmNsdWRlIHRoZSByZXNvdXJjZSByZXNw
b25zZSBmb3IgdGhlIG1haW4gcmVzb3VyY2UKICAgICBpZiAoIWlzTWFpblJlc291cmNlKSB7Ci0g
ICAgICAgIFJldGFpblB0cjxDRkRhdGFSZWY+IHJlc291cmNlUmVzcG9uc2VEYXRhID0gY3JlYXRl
UHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24ocmVzb3VyY2UtPnJlc3BvbnNlKCkpOwotICAgICAg
ICBpZiAocmVzb3VyY2VSZXNwb25zZURhdGEpCisgICAgICAgIGlmIChhdXRvIHJlc291cmNlUmVz
cG9uc2VEYXRhID0gY3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24ocmVzb3VyY2UtPnJl
c3BvbnNlKCkpKQogICAgICAgICAgICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJvcGVydHlMaXN0
LmdldCgpLCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VSZXNwb25zZUtleSwgcmVzb3VyY2VSZXNw
b25zZURhdGEuZ2V0KCkpOyAgICAKICAgICB9CiAgICAgCiAgICAgcmV0dXJuIHByb3BlcnR5TGlz
dDsKIH0KIAotUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3Jl
YXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24oQXJjaGl2ZSogYXJjaGl2ZSkKK1JldGFpblB0
cjxDRkRpY3Rpb25hcnlSZWY+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVByb3BlcnR5TGlzdFJl
cHJlc2VudGF0aW9uKEFyY2hpdmUmIGFyY2hpdmUpCiB7Ci0gICAgUmV0YWluUHRyPENGTXV0YWJs
ZURpY3Rpb25hcnlSZWY+IHByb3BlcnR5TGlzdCA9IGFkb3B0Q0YoQ0ZEaWN0aW9uYXJ5Q3JlYXRl
TXV0YWJsZSgwLCAzLCAwLCAma0NGVHlwZURpY3Rpb25hcnlWYWx1ZUNhbGxCYWNrcykpOwotICAg
IAotICAgIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IG1haW5SZXNvdXJjZURpY3QgPSBjcmVh
dGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihhcmNoaXZlLT5tYWluUmVzb3VyY2UoKSwgTWFp
blJlc291cmNlKTsKKyAgICBhdXRvIHByb3BlcnR5TGlzdCA9IGFkb3B0Q0YoQ0ZEaWN0aW9uYXJ5
Q3JlYXRlTXV0YWJsZSgwLCAzLCAwLCAma0NGVHlwZURpY3Rpb25hcnlWYWx1ZUNhbGxCYWNrcykp
OworCisgICAgYXV0byBtYWluUmVzb3VyY2VEaWN0ID0gY3JlYXRlUHJvcGVydHlMaXN0UmVwcmVz
ZW50YXRpb24oYXJjaGl2ZS5tYWluUmVzb3VyY2UoKSwgTWFpblJlc291cmNlKTsKICAgICBBU1NF
UlQobWFpblJlc291cmNlRGljdCk7CiAgICAgaWYgKCFtYWluUmVzb3VyY2VEaWN0KQogICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKICAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShwcm9wZXJ0eUxpc3Qu
Z2V0KCksIExlZ2FjeVdlYkFyY2hpdmVNYWluUmVzb3VyY2VLZXksIG1haW5SZXNvdXJjZURpY3Qu
Z2V0KCkpOwogCi0gICAgUmV0YWluUHRyPENGTXV0YWJsZUFycmF5UmVmPiBzdWJyZXNvdXJjZXNB
cnJheSA9IGFkb3B0Q0YoQ0ZBcnJheUNyZWF0ZU11dGFibGUoMCwgYXJjaGl2ZS0+c3VicmVzb3Vy
Y2VzKCkuc2l6ZSgpLCAma0NGVHlwZUFycmF5Q2FsbEJhY2tzKSk7Ci0gICAgZm9yIChhdXRvJiBy
ZXNvdXJjZSA6IGFyY2hpdmUtPnN1YnJlc291cmNlcygpKSB7Ci0gICAgICAgIGlmIChSZXRhaW5Q
dHI8Q0ZEaWN0aW9uYXJ5UmVmPiBzdWJyZXNvdXJjZSA9IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJl
c2VudGF0aW9uKHJlc291cmNlLmdldCgpLCBTdWJyZXNvdXJjZSkpCisgICAgYXV0byBzdWJyZXNv
dXJjZXNBcnJheSA9IGFkb3B0Q0YoQ0ZBcnJheUNyZWF0ZU11dGFibGUoMCwgYXJjaGl2ZS5zdWJy
ZXNvdXJjZXMoKS5zaXplKCksICZrQ0ZUeXBlQXJyYXlDYWxsQmFja3MpKTsKKyAgICBmb3IgKGF1
dG8mIHJlc291cmNlIDogYXJjaGl2ZS5zdWJyZXNvdXJjZXMoKSkgeworICAgICAgICBpZiAoYXV0
byBzdWJyZXNvdXJjZSA9IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKHJlc291cmNl
LnB0cigpLCBTdWJyZXNvdXJjZSkpCiAgICAgICAgICAgICBDRkFycmF5QXBwZW5kVmFsdWUoc3Vi
cmVzb3VyY2VzQXJyYXkuZ2V0KCksIHN1YnJlc291cmNlLmdldCgpKTsKICAgICAgICAgZWxzZQog
ICAgICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIEZhaWxlZCB0byBj
cmVhdGUgcHJvcGVydHkgbGlzdCBmb3Igc3VicmVzb3VyY2UiKTsKQEAgLTE0Miw5ICsxMzksOSBA
QCBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVQcm9w
ZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihBcgogICAgIGlmIChDRkFycmF5R2V0Q291bnQoc3VicmVz
b3VyY2VzQXJyYXkuZ2V0KCkpKQogICAgICAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShwcm9wZXJ0
eUxpc3QuZ2V0KCksIExlZ2FjeVdlYkFyY2hpdmVTdWJyZXNvdXJjZXNLZXksIHN1YnJlc291cmNl
c0FycmF5LmdldCgpKTsKIAotICAgIFJldGFpblB0cjxDRk11dGFibGVBcnJheVJlZj4gc3ViZnJh
bWVzQXJyYXkgPSBhZG9wdENGKENGQXJyYXlDcmVhdGVNdXRhYmxlKDAsIGFyY2hpdmUtPnN1YmZy
YW1lQXJjaGl2ZXMoKS5zaXplKCksICZrQ0ZUeXBlQXJyYXlDYWxsQmFja3MpKTsKLSAgICBmb3Ig
KGF1dG8mIHN1YmZyYW1lIDogYXJjaGl2ZS0+c3ViZnJhbWVBcmNoaXZlcygpKSB7Ci0gICAgICAg
IGlmIChSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBzdWJmcmFtZUFyY2hpdmUgPSBjcmVhdGVQ
cm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihzdWJmcmFtZS5nZXQoKSkpCisgICAgYXV0byBzdWJm
cmFtZXNBcnJheSA9IGFkb3B0Q0YoQ0ZBcnJheUNyZWF0ZU11dGFibGUoMCwgYXJjaGl2ZS5zdWJm
cmFtZUFyY2hpdmVzKCkuc2l6ZSgpLCAma0NGVHlwZUFycmF5Q2FsbEJhY2tzKSk7CisgICAgZm9y
IChhdXRvJiBzdWJmcmFtZSA6IGFyY2hpdmUuc3ViZnJhbWVBcmNoaXZlcygpKSB7CisgICAgICAg
IGlmIChhdXRvIHN1YmZyYW1lQXJjaGl2ZSA9IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0
aW9uKHN1YmZyYW1lLmdldCgpKSkKICAgICAgICAgICAgIENGQXJyYXlBcHBlbmRWYWx1ZShzdWJm
cmFtZXNBcnJheS5nZXQoKSwgc3ViZnJhbWVBcmNoaXZlLmdldCgpKTsKICAgICAgICAgZWxzZQog
ICAgICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIEZhaWxlZCB0byBj
cmVhdGUgcHJvcGVydHkgbGlzdCBmb3Igc3ViZnJhbWUgYXJjaGl2ZSIpOwpAQCAtMTYwLDEzICsx
NTcsMTMgQEAgUmVzb3VyY2VSZXNwb25zZSBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVSZXNvdXJj
ZVJlc3BvbnNlRnJvbVByb3BlcnR5TGlzdERhdGEoQ0YKICAgICBBU1NFUlQoZGF0YSk7CiAgICAg
aWYgKCFkYXRhKQogICAgICAgICByZXR1cm4gUmVzb3VyY2VSZXNwb25zZSgpOwotICAgIAorCiAg
ICAgLy8gSWYgdGhlIFJlc291cmNlUmVzcG9uc2VWZXJzaW9uIChwYXNzZWQgaW4gYXMgcmVzcG9u
c2VEYXRhVHlwZSkgZXhpc3RzIGF0IGFsbCwgdGhpcyBpcyBhICJuZXciIHdlYiBhcmNoaXZlIHRo
YXQgd2UKICAgICAvLyBjYW4gcGFyc2Ugd2VsbCBpbiBhIGNyb3NzIHBsYXRmb3JtIG1hbm5lciBJ
ZiBpdCBkb2Vzbid0IGV4aXN0LCB3ZSB3aWxsIGFzc3VtZSB0aGlzIGlzIGFuICJvbGQiIHdlYiBh
cmNoaXZlIHdpdGgsCiAgICAgLy8gTlNVUkxSZXNwb25zZSBvYmplY3RzIGluIGl0IGFuZCBwYXJz
ZSB0aGUgUmVzb3VyY2VSZXNwb25zZSBhcyBzdWNoLgogICAgIGlmICghcmVzcG9uc2VEYXRhVHlw
ZSkKICAgICAgICAgcmV0dXJuIGNyZWF0ZVJlc291cmNlUmVzcG9uc2VGcm9tTWFjQXJjaGl2ZWRE
YXRhKGRhdGEpOwotICAgICAgICAKKwogICAgIC8vIEZJWE1FOiBQYXJzZSB0aGUgIm5ldyIgZm9y
bWF0IHRoYXQgdGhlIGFib3ZlIGNvbW1lbnQgcmVmZXJlbmNlcyBoZXJlLiBUaGlzIGZvcm1hdCBk
b2Vzbid0IGV4aXN0IHlldC4KICAgICByZXR1cm4gUmVzb3VyY2VSZXNwb25zZSgpOwogfQpAQCAt
MTc2LDQ3ICsxNzMsNDYgQEAgUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gTGVnYWN5V2ViQXJjaGl2
ZTo6Y3JlYXRlUmVzb3VyY2UoQ0ZEaWN0aW9uYXJ5UmVmIGRpY3Rpb24KICAgICBBU1NFUlQoZGlj
dGlvbmFyeSk7CiAgICAgaWYgKCFkaWN0aW9uYXJ5KQogICAgICAgICByZXR1cm4gbnVsbHB0cjsK
LSAgICAgICAgCi0gICAgQ0ZEYXRhUmVmIHJlc291cmNlRGF0YSA9IHN0YXRpY19jYXN0PENGRGF0
YVJlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVJl
c291cmNlRGF0YUtleSkpOworCisgICAgYXV0byByZXNvdXJjZURhdGEgPSBzdGF0aWNfY2FzdDxD
RkRhdGFSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hp
dmVSZXNvdXJjZURhdGFLZXkpKTsKICAgICBpZiAocmVzb3VyY2VEYXRhICYmIENGR2V0VHlwZUlE
KHJlc291cmNlRGF0YSkgIT0gQ0ZEYXRhR2V0VHlwZUlEKCkpIHsKICAgICAgICAgTE9HKEFyY2hp
dmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIFJlc291cmNlIGRhdGEgaXMgbm90IG9mIHR5cGUgQ0ZE
YXRhLCBjYW5ub3QgY3JlYXRlIGludmFsaWQgcmVzb3VyY2UiKTsKICAgICAgICAgcmV0dXJuIG51
bGxwdHI7CiAgICAgfQotICAgIAotICAgIENGU3RyaW5nUmVmIGZyYW1lTmFtZSA9IHN0YXRpY19j
YXN0PENGU3RyaW5nUmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBMZWdhY3lX
ZWJBcmNoaXZlUmVzb3VyY2VGcmFtZU5hbWVLZXkpKTsKKworICAgIGF1dG8gZnJhbWVOYW1lID0g
c3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnks
IExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZUZyYW1lTmFtZUtleSkpOwogICAgIGlmIChmcmFtZU5h
bWUgJiYgQ0ZHZXRUeXBlSUQoZnJhbWVOYW1lKSAhPSBDRlN0cmluZ0dldFR5cGVJRCgpKSB7CiAg
ICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBGcmFtZSBuYW1lIGlzIG5v
dCBvZiB0eXBlIENGU3RyaW5nLCBjYW5ub3QgY3JlYXRlIGludmFsaWQgcmVzb3VyY2UiKTsKICAg
ICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQotICAgIAotICAgIENGU3RyaW5nUmVmIG1pbWVU
eXBlID0gc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rp
b25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZU1JTUVUeXBlS2V5KSk7CisKKyAgICBhdXRv
IG1pbWVUeXBlID0gc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVl
KGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZU1JTUVUeXBlS2V5KSk7CiAgICAg
aWYgKG1pbWVUeXBlICYmIENGR2V0VHlwZUlEKG1pbWVUeXBlKSAhPSBDRlN0cmluZ0dldFR5cGVJ
RCgpKSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBNSU1FIHR5
cGUgaXMgbm90IG9mIHR5cGUgQ0ZTdHJpbmcsIGNhbm5vdCBjcmVhdGUgaW52YWxpZCByZXNvdXJj
ZSIpOwogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICB9Ci0gICAgCi0gICAgQ0ZTdHJpbmdS
ZWYgdXJsID0gc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRp
Y3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZVVSTEtleSkpOworCisgICAgYXV0byB1
cmwgPSBzdGF0aWNfY2FzdDxDRlN0cmluZ1JlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUoZGljdGlv
bmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlVVJMS2V5KSk7CiAgICAgaWYgKHVybCAmJiBD
RkdldFR5cGVJRCh1cmwpICE9IENGU3RyaW5nR2V0VHlwZUlEKCkpIHsKICAgICAgICAgTE9HKEFy
Y2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIFVSTCBpcyBub3Qgb2YgdHlwZSBDRlN0cmluZywg
Y2Fubm90IGNyZWF0ZSBpbnZhbGlkIHJlc291cmNlIik7CiAgICAgICAgIHJldHVybiBudWxscHRy
OwogICAgIH0KLSAgICAKLSAgICBDRlN0cmluZ1JlZiB0ZXh0RW5jb2RpbmcgPSBzdGF0aWNfY2Fz
dDxDRlN0cmluZ1JlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2Vi
QXJjaGl2ZVJlc291cmNlVGV4dEVuY29kaW5nTmFtZUtleSkpOworCisgICAgYXV0byB0ZXh0RW5j
b2RpbmcgPSBzdGF0aWNfY2FzdDxDRlN0cmluZ1JlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUoZGlj
dGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlVGV4dEVuY29kaW5nTmFtZUtleSkpOwog
ICAgIGlmICh0ZXh0RW5jb2RpbmcgJiYgQ0ZHZXRUeXBlSUQodGV4dEVuY29kaW5nKSAhPSBDRlN0
cmluZ0dldFR5cGVJRCgpKSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hp
dmUgLSBUZXh0IGVuY29kaW5nIGlzIG5vdCBvZiB0eXBlIENGU3RyaW5nLCBjYW5ub3QgY3JlYXRl
IGludmFsaWQgcmVzb3VyY2UiKTsKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQogCiAg
ICAgUmVzb3VyY2VSZXNwb25zZSByZXNwb25zZTsKLSAgICAKLSAgICBDRkRhdGFSZWYgcmVzb3Vy
Y2VSZXNwb25zZURhdGEgPSBzdGF0aWNfY2FzdDxDRkRhdGFSZWY+KENGRGljdGlvbmFyeUdldFZh
bHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZVJlc3BvbnNlS2V5KSk7Ci0g
ICAgaWYgKHJlc291cmNlUmVzcG9uc2VEYXRhKSB7CisKKyAgICBpZiAoYXV0byByZXNvdXJjZVJl
c3BvbnNlRGF0YSA9IHN0YXRpY19jYXN0PENGRGF0YVJlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUo
ZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlUmVzcG9uc2VLZXkpKSkgewogICAg
ICAgICBpZiAoQ0ZHZXRUeXBlSUQocmVzb3VyY2VSZXNwb25zZURhdGEpICE9IENGRGF0YUdldFR5
cGVJRCgpKSB7CiAgICAgICAgICAgICBMT0coQXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZlIC0g
UmVzb3VyY2UgcmVzcG9uc2UgZGF0YSBpcyBub3Qgb2YgdHlwZSBDRkRhdGEsIGNhbm5vdCBjcmVh
dGUgaW52YWxpZCByZXNvdXJjZSIpOwogICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAg
ICAgIH0KICAgICAgICAgCi0gICAgICAgIENGU3RyaW5nUmVmIHJlc291cmNlUmVzcG9uc2VWZXJz
aW9uID0gc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rp
b25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZVJlc3BvbnNlVmVyc2lvbktleSkpOworICAg
ICAgICBhdXRvIHJlc291cmNlUmVzcG9uc2VWZXJzaW9uID0gc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdS
ZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNv
dXJjZVJlc3BvbnNlVmVyc2lvbktleSkpOwogICAgICAgICBpZiAocmVzb3VyY2VSZXNwb25zZVZl
cnNpb24gJiYgQ0ZHZXRUeXBlSUQocmVzb3VyY2VSZXNwb25zZVZlcnNpb24pICE9IENGU3RyaW5n
R2V0VHlwZUlEKCkpIHsKICAgICAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hp
dmUgLSBSZXNvdXJjZSByZXNwb25zZSB2ZXJzaW9uIGlzIG5vdCBvZiB0eXBlIENGU3RyaW5nLCBj
YW5ub3QgY3JlYXRlIGludmFsaWQgcmVzb3VyY2UiKTsKICAgICAgICAgICAgIHJldHVybiBudWxs
cHRyOwpAQCAtMjI0LDcgKzIyMCw3IEBAIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IExlZ2FjeVdl
YkFyY2hpdmU6OmNyZWF0ZVJlc291cmNlKENGRGljdGlvbmFyeVJlZiBkaWN0aW9uCiAgICAgICAg
IAogICAgICAgICByZXNwb25zZSA9IGNyZWF0ZVJlc291cmNlUmVzcG9uc2VGcm9tUHJvcGVydHlM
aXN0RGF0YShyZXNvdXJjZVJlc3BvbnNlRGF0YSwgcmVzb3VyY2VSZXNwb25zZVZlcnNpb24pOwog
ICAgIH0KLSAgICAKKwogICAgIHJldHVybiBBcmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShTaGFyZWRC
dWZmZXI6OndyYXBDRkRhdGEocmVzb3VyY2VEYXRhKSwgVVJMKFVSTCgpLCB1cmwpLCBtaW1lVHlw
ZSwgdGV4dEVuY29kaW5nLCBmcmFtZU5hbWUsIHJlc3BvbnNlKTsKIH0KIApAQCAtMjMzLDIxICsy
MjksMTkgQEAgUmVmPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZSgp
CiAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgTGVnYWN5V2ViQXJjaGl2ZSk7CiB9CiAKLVJlZlB0
cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoUmVmUHRyPEFyY2hp
dmVSZXNvdXJjZT4mJiBtYWluUmVzb3VyY2UsIFZlY3RvcjxSZWZQdHI8QXJjaGl2ZVJlc291cmNl
Pj4mJiBzdWJyZXNvdXJjZXMsIFZlY3RvcjxSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4+JiYgc3Vi
ZnJhbWVBcmNoaXZlcykKK1JlZjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpj
cmVhdGUoUmVmPEFyY2hpdmVSZXNvdXJjZT4mJiBtYWluUmVzb3VyY2UsIFZlY3RvcjxSZWY8QXJj
aGl2ZVJlc291cmNlPj4mJiBzdWJyZXNvdXJjZXMsIFZlY3RvcjxSZWY8TGVnYWN5V2ViQXJjaGl2
ZT4+JiYgc3ViZnJhbWVBcmNoaXZlcykKIHsKLSAgICBpZiAoIW1haW5SZXNvdXJjZSkKLSAgICAg
ICAgcmV0dXJuIG51bGxwdHI7Ci0KICAgICBhdXRvIGFyY2hpdmUgPSBjcmVhdGUoKTsKKwogICAg
IGFyY2hpdmUtPnNldE1haW5SZXNvdXJjZShXVEZNb3ZlKG1haW5SZXNvdXJjZSkpOwotICAgIAor
CiAgICAgZm9yIChhdXRvJiBzdWJyZXNvdXJjZSA6IHN1YnJlc291cmNlcykKICAgICAgICAgYXJj
aGl2ZS0+YWRkU3VicmVzb3VyY2UoV1RGTW92ZShzdWJyZXNvdXJjZSkpOwogCiAgICAgZm9yIChh
dXRvJiBzdWJmcmFtZUFyY2hpdmUgOiBzdWJmcmFtZUFyY2hpdmVzKQogICAgICAgICBhcmNoaXZl
LT5hZGRTdWJmcmFtZUFyY2hpdmUoV1RGTW92ZShzdWJmcmFtZUFyY2hpdmUpKTsKIAotICAgIHJl
dHVybiBXVEZNb3ZlKGFyY2hpdmUpOworICAgIHJldHVybiBhcmNoaXZlOwogfQogCiBSZWZQdHI8
TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFNoYXJlZEJ1ZmZlciYg
ZGF0YSkKQEAgLTMwNyw0OCArMzAxLDUwIEBAIGJvb2wgTGVnYWN5V2ViQXJjaGl2ZTo6ZXh0cmFj
dChDRkRpY3Rpb25hcnlSZWYgZGljdGlvbmFyeSkKICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVn
YWN5V2ViQXJjaGl2ZSAtIE1haW4gcmVzb3VyY2UgaXMgbm90IHRoZSBleHBlY3RlZCBDRkRpY3Rp
b25hcnksIGFib3J0aW5nIGludmFsaWQgV2ViQXJjaGl2ZSIpOwogICAgICAgICByZXR1cm4gZmFs
c2U7CiAgICAgfQotICAgIAotICAgIHNldE1haW5SZXNvdXJjZShjcmVhdGVSZXNvdXJjZShtYWlu
UmVzb3VyY2VEaWN0KSk7Ci0gICAgaWYgKCFtYWluUmVzb3VyY2UoKSkgeworCisgICAgYXV0byBt
YWluUmVzb3VyY2UgPSBjcmVhdGVSZXNvdXJjZShtYWluUmVzb3VyY2VEaWN0KTsKKyAgICBpZiAo
IW1haW5SZXNvdXJjZSkgewogICAgICAgICBMT0coQXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZl
IC0gRmFpbGVkIHRvIHBhcnNlIG1haW4gcmVzb3VyY2UgZnJvbSBDRkRpY3Rpb25hcnkgb3IgbWFp
biByZXNvdXJjZSBkb2VzIG5vdCBleGlzdCwgYWJvcnRpbmcgaW52YWxpZCBXZWJBcmNoaXZlIik7
CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9Ci0gICAgCi0gICAgaWYgKG1haW5SZXNvdXJj
ZSgpLT5taW1lVHlwZSgpLmlzTnVsbCgpKSB7CisKKyAgICBpZiAobWFpblJlc291cmNlLT5taW1l
VHlwZSgpLmlzTnVsbCgpKSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hp
dmUgLSBNYWluIHJlc291cmNlIE1JTUUgdHlwZSBpcyByZXF1aXJlZCwgYnV0IHdhcyBudWxsLiIp
OwogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQotICAgIAotICAgIENGQXJyYXlSZWYgc3Vi
cmVzb3VyY2VBcnJheSA9IHN0YXRpY19jYXN0PENGQXJyYXlSZWY+KENGRGljdGlvbmFyeUdldFZh
bHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVTdWJyZXNvdXJjZXNLZXkpKTsKKworICAg
IHNldE1haW5SZXNvdXJjZShtYWluUmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSk7CisKKyAgICBh
dXRvIHN1YnJlc291cmNlQXJyYXkgPSBzdGF0aWNfY2FzdDxDRkFycmF5UmVmPihDRkRpY3Rpb25h
cnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBMZWdhY3lXZWJBcmNoaXZlU3VicmVzb3VyY2VzS2V5KSk7
CiAgICAgaWYgKHN1YnJlc291cmNlQXJyYXkgJiYgQ0ZHZXRUeXBlSUQoc3VicmVzb3VyY2VBcnJh
eSkgIT0gQ0ZBcnJheUdldFR5cGVJRCgpKSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2Fj
eVdlYkFyY2hpdmUgLSBTdWJyZXNvdXJjZXMgaXMgbm90IHRoZSBleHBlY3RlZCBBcnJheSwgYWJv
cnRpbmcgaW52YWxpZCBXZWJBcmNoaXZlIik7CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9
Ci0gICAgCisKICAgICBpZiAoc3VicmVzb3VyY2VBcnJheSkgewotICAgICAgICBDRkluZGV4IGNv
dW50ID0gQ0ZBcnJheUdldENvdW50KHN1YnJlc291cmNlQXJyYXkpOworICAgICAgICBhdXRvIGNv
dW50ID0gQ0ZBcnJheUdldENvdW50KHN1YnJlc291cmNlQXJyYXkpOwogICAgICAgICBmb3IgKENG
SW5kZXggaSA9IDA7IGkgPCBjb3VudDsgKytpKSB7Ci0gICAgICAgICAgICBDRkRpY3Rpb25hcnlS
ZWYgc3VicmVzb3VyY2VEaWN0ID0gc3RhdGljX2Nhc3Q8Q0ZEaWN0aW9uYXJ5UmVmPihDRkFycmF5
R2V0VmFsdWVBdEluZGV4KHN1YnJlc291cmNlQXJyYXksIGkpKTsKKyAgICAgICAgICAgIGF1dG8g
c3VicmVzb3VyY2VEaWN0ID0gc3RhdGljX2Nhc3Q8Q0ZEaWN0aW9uYXJ5UmVmPihDRkFycmF5R2V0
VmFsdWVBdEluZGV4KHN1YnJlc291cmNlQXJyYXksIGkpKTsKICAgICAgICAgICAgIGlmIChDRkdl
dFR5cGVJRChzdWJyZXNvdXJjZURpY3QpICE9IENGRGljdGlvbmFyeUdldFR5cGVJRCgpKSB7CiAg
ICAgICAgICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIFN1YnJlc291
cmNlIGlzIG5vdCBleHBlY3RlZCBDRkRpY3Rpb25hcnksIGFib3J0aW5nIGludmFsaWQgV2ViQXJj
aGl2ZSIpOwogICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgIH0KICAg
ICAgICAgICAgIAogICAgICAgICAgICAgaWYgKGF1dG8gc3VicmVzb3VyY2UgPSBjcmVhdGVSZXNv
dXJjZShzdWJyZXNvdXJjZURpY3QpKQotICAgICAgICAgICAgICAgIGFkZFN1YnJlc291cmNlKFdU
Rk1vdmUoc3VicmVzb3VyY2UpKTsKKyAgICAgICAgICAgICAgICBhZGRTdWJyZXNvdXJjZShzdWJy
ZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICAgICAgfQogICAgIH0KLSAgICAKLSAgICBD
RkFycmF5UmVmIHN1YmZyYW1lQXJyYXkgPSBzdGF0aWNfY2FzdDxDRkFycmF5UmVmPihDRkRpY3Rp
b25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBMZWdhY3lXZWJBcmNoaXZlU3ViZnJhbWVBcmNoaXZl
c0tleSkpOworCisgICAgYXV0byBzdWJmcmFtZUFycmF5ID0gc3RhdGljX2Nhc3Q8Q0ZBcnJheVJl
Zj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVN1YmZy
YW1lQXJjaGl2ZXNLZXkpKTsKICAgICBpZiAoc3ViZnJhbWVBcnJheSAmJiBDRkdldFR5cGVJRChz
dWJmcmFtZUFycmF5KSAhPSBDRkFycmF5R2V0VHlwZUlEKCkpIHsKICAgICAgICAgTE9HKEFyY2hp
dmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIFN1YmZyYW1lIGFyY2hpdmVzIGlzIG5vdCB0aGUgZXhw
ZWN0ZWQgQXJyYXksIGFib3J0aW5nIGludmFsaWQgV2ViQXJjaGl2ZSIpOwogICAgICAgICByZXR1
cm4gZmFsc2U7CiAgICAgfQotICAgIAorCiAgICAgaWYgKHN1YmZyYW1lQXJyYXkpIHsKLSAgICAg
ICAgQ0ZJbmRleCBjb3VudCA9IENGQXJyYXlHZXRDb3VudChzdWJmcmFtZUFycmF5KTsKKyAgICAg
ICAgYXV0byBjb3VudCA9IENGQXJyYXlHZXRDb3VudChzdWJmcmFtZUFycmF5KTsKICAgICAgICAg
Zm9yIChDRkluZGV4IGkgPSAwOyBpIDwgY291bnQ7ICsraSkgewotICAgICAgICAgICAgQ0ZEaWN0
aW9uYXJ5UmVmIHN1YmZyYW1lRGljdCA9IHN0YXRpY19jYXN0PENGRGljdGlvbmFyeVJlZj4oQ0ZB
cnJheUdldFZhbHVlQXRJbmRleChzdWJmcmFtZUFycmF5LCBpKSk7CisgICAgICAgICAgICBhdXRv
IHN1YmZyYW1lRGljdCA9IHN0YXRpY19jYXN0PENGRGljdGlvbmFyeVJlZj4oQ0ZBcnJheUdldFZh
bHVlQXRJbmRleChzdWJmcmFtZUFycmF5LCBpKSk7CiAgICAgICAgICAgICBpZiAoQ0ZHZXRUeXBl
SUQoc3ViZnJhbWVEaWN0KSAhPSBDRkRpY3Rpb25hcnlHZXRUeXBlSUQoKSkgewogICAgICAgICAg
ICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBTdWJmcmFtZSBhcnJheSBp
cyBub3QgZXhwZWN0ZWQgQ0ZEaWN0aW9uYXJ5LCBhYm9ydGluZyBpbnZhbGlkIFdlYkFyY2hpdmUi
KTsKICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CkBAIC0zNjUsMjYgKzM2MSwyMSBAQCBi
b29sIExlZ2FjeVdlYkFyY2hpdmU6OmV4dHJhY3QoQ0ZEaWN0aW9uYXJ5UmVmIGRpY3Rpb25hcnkp
CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLUFyY2hpdmU6OlR5cGUgTGVnYWN5V2ViQXJjaGl2ZTo6
dHlwZSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIEFyY2hpdmU6OldlYkFyY2hpdmU7Ci19Ci0gICAg
CiBSZXRhaW5QdHI8Q0ZEYXRhUmVmPiBMZWdhY3lXZWJBcmNoaXZlOjpyYXdEYXRhUmVwcmVzZW50
YXRpb24oKQogewotICAgIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IHByb3BlcnR5TGlzdCA9
IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKHRoaXMpOworICAgIGF1dG8gcHJvcGVy
dHlMaXN0ID0gY3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24oKnRoaXMpOwogICAgIEFT
U0VSVChwcm9wZXJ0eUxpc3QpOwogICAgIGlmICghcHJvcGVydHlMaXN0KSB7CiAgICAgICAgIExP
RyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBGYWlsZWQgdG8gY3JlYXRlIHByb3BlcnR5
IGxpc3QgZm9yIGFyY2hpdmUsIHJldHVybmluZyBubyBkYXRhIik7CiAgICAgICAgIHJldHVybiBu
dWxscHRyOwogICAgIH0KIAotICAgIFJldGFpblB0cjxDRldyaXRlU3RyZWFtUmVmPiBzdHJlYW0g
PSBhZG9wdENGKENGV3JpdGVTdHJlYW1DcmVhdGVXaXRoQWxsb2NhdGVkQnVmZmVycygwLCAwKSk7
CisgICAgYXV0byBzdHJlYW0gPSBhZG9wdENGKENGV3JpdGVTdHJlYW1DcmVhdGVXaXRoQWxsb2Nh
dGVkQnVmZmVycygwLCAwKSk7CiAKICAgICBDRldyaXRlU3RyZWFtT3BlbihzdHJlYW0uZ2V0KCkp
OwogICAgIENGUHJvcGVydHlMaXN0V3JpdGUocHJvcGVydHlMaXN0LmdldCgpLCBzdHJlYW0uZ2V0
KCksIGtDRlByb3BlcnR5TGlzdEJpbmFyeUZvcm1hdF92MV8wLCAwLCAwKTsKIAotICAgIFJldGFp
blB0cjxDRkRhdGFSZWY+IHBsaXN0RGF0YSA9IGFkb3B0Q0Yoc3RhdGljX2Nhc3Q8Q0ZEYXRhUmVm
PihDRldyaXRlU3RyZWFtQ29weVByb3BlcnR5KHN0cmVhbS5nZXQoKSwga0NGU3RyZWFtUHJvcGVy
dHlEYXRhV3JpdHRlbikpKTsKKyAgICBhdXRvIHBsaXN0RGF0YSA9IGFkb3B0Q0Yoc3RhdGljX2Nh
c3Q8Q0ZEYXRhUmVmPihDRldyaXRlU3RyZWFtQ29weVByb3BlcnR5KHN0cmVhbS5nZXQoKSwga0NG
U3RyZWFtUHJvcGVydHlEYXRhV3JpdHRlbikpKTsKICAgICBBU1NFUlQocGxpc3REYXRhKTsKIAog
ICAgIENGV3JpdGVTdHJlYW1DbG9zZShzdHJlYW0uZ2V0KCkpOwpAQCAtNDMyLDcgKzQyMyw3IEBA
IFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoTm9kZSYg
bm9kZSwgc3RkOjpmdW5jdGlvbjxib29sCiAKICAgICBWZWN0b3I8Tm9kZSo+IG5vZGVMaXN0Owog
ICAgIFN0cmluZyBtYXJrdXBTdHJpbmcgPSBjcmVhdGVNYXJrdXAobm9kZSwgSW5jbHVkZU5vZGUs
ICZub2RlTGlzdCwgRG9Ob3RSZXNvbHZlVVJMcywgdGFnTmFtZXNUb0ZpbHRlci5nZXQoKSk7Ci0g
ICAgTm9kZTo6Tm9kZVR5cGUgbm9kZVR5cGUgPSBub2RlLm5vZGVUeXBlKCk7CisgICAgYXV0byBu
b2RlVHlwZSA9IG5vZGUubm9kZVR5cGUoKTsKICAgICBpZiAobm9kZVR5cGUgIT0gTm9kZTo6RE9D
VU1FTlRfTk9ERSAmJiBub2RlVHlwZSAhPSBOb2RlOjpET0NVTUVOVF9UWVBFX05PREUpCiAgICAg
ICAgIG1hcmt1cFN0cmluZyA9IGRvY3VtZW50VHlwZVN0cmluZyhub2RlLmRvY3VtZW50KCkpICsg
bWFya3VwU3RyaW5nOwogCkBAIC00NDEsMjAgKzQzMiwyMSBAQCBSZWZQdHI8TGVnYWN5V2ViQXJj
aGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKE5vZGUmIG5vZGUsIHN0ZDo6ZnVuY3Rpb248
Ym9vbAogCiBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRl
KEZyYW1lJiBmcmFtZSkKIHsKLSAgICBEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIgPSBm
cmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwotCisgICAgYXV0byogZG9jdW1lbnRMb2Fk
ZXIgPSBmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwogICAgIGlmICghZG9jdW1lbnRM
b2FkZXIpCiAgICAgICAgIHJldHVybiBudWxscHRyOwotICAgICAgICAKLSAgICBWZWN0b3I8UmVm
UHRyPExlZ2FjeVdlYkFyY2hpdmU+PiBzdWJmcmFtZUFyY2hpdmVzOwotICAgIAorCisgICAgYXV0
byBtYWluUmVzb3VyY2UgPSBkb2N1bWVudExvYWRlci0+bWFpblJlc291cmNlKCk7CisgICAgaWYg
KCFtYWluUmVzb3VyY2UpCisgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgVmVjdG9yPFJl
ZjxMZWdhY3lXZWJBcmNoaXZlPj4gc3ViZnJhbWVBcmNoaXZlczsKICAgICBmb3IgKHVuc2lnbmVk
IGkgPSAwOyBpIDwgZnJhbWUudHJlZSgpLmNoaWxkQ291bnQoKTsgKytpKSB7Ci0gICAgICAgIGlm
IChSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gY2hpbGRGcmFtZUFyY2hpdmUgPSBjcmVhdGUoKmZy
YW1lLnRyZWUoKS5jaGlsZChpKSkpCi0gICAgICAgICAgICBzdWJmcmFtZUFyY2hpdmVzLmFwcGVu
ZChXVEZNb3ZlKGNoaWxkRnJhbWVBcmNoaXZlKSk7CisgICAgICAgIGlmIChhdXRvIGNoaWxkRnJh
bWVBcmNoaXZlID0gY3JlYXRlKCpmcmFtZS50cmVlKCkuY2hpbGQoaSkpKQorICAgICAgICAgICAg
c3ViZnJhbWVBcmNoaXZlcy5hcHBlbmQoY2hpbGRGcmFtZUFyY2hpdmUucmVsZWFzZU5vbk51bGwo
KSk7CiAgICAgfQogCi0gICAgYXV0byBzdWJyZXNvdXJjZXMgPSBkb2N1bWVudExvYWRlci0+c3Vi
cmVzb3VyY2VzKCk7Ci0gICAgcmV0dXJuIGNyZWF0ZShkb2N1bWVudExvYWRlci0+bWFpblJlc291
cmNlKCksIFdURk1vdmUoc3VicmVzb3VyY2VzKSwgV1RGTW92ZShzdWJmcmFtZUFyY2hpdmVzKSk7
CisgICAgcmV0dXJuIGNyZWF0ZShtYWluUmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSwgZG9jdW1l
bnRMb2FkZXItPnN1YnJlc291cmNlcygpLCBXVEZNb3ZlKHN1YmZyYW1lQXJjaGl2ZXMpKTsKIH0K
IAogUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShSYW5n
ZSogcmFuZ2UpCkBAIC00NjIsMjIgKzQ1NCwyMCBAQCBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4g
TGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFJhbmdlKiByYW5nZSkKICAgICBpZiAoIXJhbmdlKQog
ICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICAgICAgCi0gICAgRG9jdW1lbnQmIGRvY3VtZW50
ID0gcmFuZ2UtPnN0YXJ0Q29udGFpbmVyKCkuZG9jdW1lbnQoKTsKLQotICAgIEZyYW1lKiBmcmFt
ZSA9IGRvY3VtZW50LmZyYW1lKCk7CisgICAgYXV0byYgZG9jdW1lbnQgPSByYW5nZS0+c3RhcnRD
b250YWluZXIoKS5kb2N1bWVudCgpOworICAgIGF1dG8qIGZyYW1lID0gZG9jdW1lbnQuZnJhbWUo
KTsKICAgICBpZiAoIWZyYW1lKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICAKLSAgICAv
LyBGSVhNRTogVGhpcyBpcyBhbHdheXMgImZvciBpbnRlcmNoYW5nZSIuIElzIHRoYXQgcmlnaHQ/
IFNlZSB0aGUgcHJldmlvdXMgbWV0aG9kLgorCisgICAgLy8gRklYTUU6IFRoaXMgaXMgYWx3YXlz
ICJmb3IgaW50ZXJjaGFuZ2UiLiBJcyB0aGF0IHJpZ2h0PwogICAgIFZlY3RvcjxOb2RlKj4gbm9k
ZUxpc3Q7CiAgICAgU3RyaW5nIG1hcmt1cFN0cmluZyA9IGRvY3VtZW50VHlwZVN0cmluZyhkb2N1
bWVudCkgKyBjcmVhdGVNYXJrdXAoKnJhbmdlLCAmbm9kZUxpc3QsIEFubm90YXRlRm9ySW50ZXJj
aGFuZ2UpOwotCiAgICAgcmV0dXJuIGNyZWF0ZShtYXJrdXBTdHJpbmcsICpmcmFtZSwgbm9kZUxp
c3QsIG51bGxwdHIpOwogfQogCiBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJj
aGl2ZTo6Y3JlYXRlKGNvbnN0IFN0cmluZyYgbWFya3VwU3RyaW5nLCBGcmFtZSYgZnJhbWUsIGNv
bnN0IFZlY3RvcjxOb2RlKj4mIG5vZGVzLCBzdGQ6OmZ1bmN0aW9uPGJvb2wgKEZyYW1lJik+IGZy
YW1lRmlsdGVyKQogewotICAgIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlID0gZnJh
bWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKS0+cmVzcG9uc2UoKTsKKyAgICBhdXRvJiByZXNw
b25zZSA9IGZyYW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCktPnJlc3BvbnNlKCk7CiAgICAg
VVJMIHJlc3BvbnNlVVJMID0gcmVzcG9uc2UudXJsKCk7CiAgICAgCiAgICAgLy8gaXQncyBwb3Nz
aWJsZSB0byBoYXZlIGEgcmVzcG9uc2Ugd2l0aG91dCBhIFVSTCBoZXJlCkBAIC00ODUsNDIgKzQ3
NSw0MSBAQCBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRl
KGNvbnN0IFN0cmluZyYgbWFya3VwU3RyaW5nLCBGcgogICAgIGlmIChyZXNwb25zZVVSTC5pc051
bGwoKSkKICAgICAgICAgcmVzcG9uc2VVUkwgPSBVUkwoUGFyc2VkVVJMU3RyaW5nLCBlbXB0eVN0
cmluZygpKTsKIAotICAgIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IG1haW5SZXNvdXJjZSA9IEFy
Y2hpdmVSZXNvdXJjZTo6Y3JlYXRlKHV0ZjhCdWZmZXIobWFya3VwU3RyaW5nKSwgcmVzcG9uc2VV
UkwsIHJlc3BvbnNlLm1pbWVUeXBlKCksICJVVEYtOCIsIGZyYW1lLnRyZWUoKS51bmlxdWVOYW1l
KCkpOworICAgIGF1dG8gbWFpblJlc291cmNlID0gQXJjaGl2ZVJlc291cmNlOjpjcmVhdGUodXRm
OEJ1ZmZlcihtYXJrdXBTdHJpbmcpLCByZXNwb25zZVVSTCwgcmVzcG9uc2UubWltZVR5cGUoKSwg
IlVURi04IiwgZnJhbWUudHJlZSgpLnVuaXF1ZU5hbWUoKSk7CiAgICAgaWYgKCFtYWluUmVzb3Vy
Y2UpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgVmVjdG9yPFJlZlB0cjxMZWdhY3lX
ZWJBcmNoaXZlPj4gc3ViZnJhbWVBcmNoaXZlczsKLSAgICBWZWN0b3I8UmVmUHRyPEFyY2hpdmVS
ZXNvdXJjZT4+IHN1YnJlc291cmNlczsKKyAgICBWZWN0b3I8UmVmPExlZ2FjeVdlYkFyY2hpdmU+
PiBzdWJmcmFtZUFyY2hpdmVzOworICAgIFZlY3RvcjxSZWY8QXJjaGl2ZVJlc291cmNlPj4gc3Vi
cmVzb3VyY2VzOwogICAgIEhhc2hTZXQ8VVJMPiB1bmlxdWVTdWJyZXNvdXJjZXM7CiAKLSAgICBz
aXplX3Qgbm9kZXNTaXplID0gbm9kZXMuc2l6ZSgpOyAgICAKLSAgICBmb3IgKHNpemVfdCBpID0g
MDsgaSA8IG5vZGVzU2l6ZTsgKytpKSB7Ci0gICAgICAgIE5vZGUmIG5vZGUgPSAqbm9kZXNbaV07
CisgICAgZm9yIChhdXRvJiBub2RlUHRyIDogbm9kZXMpIHsKKyAgICAgICAgTm9kZSYgbm9kZSA9
ICpub2RlUHRyOwogICAgICAgICBGcmFtZSogY2hpbGRGcmFtZTsKICAgICAgICAgaWYgKChpczxI
VE1MRnJhbWVFbGVtZW50QmFzZT4obm9kZSkgfHwgaXM8SFRNTE9iamVjdEVsZW1lbnQ+KG5vZGUp
KQogICAgICAgICAgICAgJiYgKGNoaWxkRnJhbWUgPSBkb3duY2FzdDxIVE1MRnJhbWVPd25lckVs
ZW1lbnQ+KG5vZGUpLmNvbnRlbnRGcmFtZSgpKSkgewogICAgICAgICAgICAgaWYgKGZyYW1lRmls
dGVyICYmICFmcmFtZUZpbHRlcigqY2hpbGRGcmFtZSkpCiAgICAgICAgICAgICAgICAgY29udGlu
dWU7Ci0gICAgICAgICAgICAgICAgCi0gICAgICAgICAgICBpZiAoUmVmUHRyPExlZ2FjeVdlYkFy
Y2hpdmU+IHN1YmZyYW1lQXJjaGl2ZSA9IGNyZWF0ZSgqY2hpbGRGcmFtZS0+ZG9jdW1lbnQoKSwg
ZnJhbWVGaWx0ZXIpKQotICAgICAgICAgICAgICAgIHN1YmZyYW1lQXJjaGl2ZXMuYXBwZW5kKFdU
Rk1vdmUoc3ViZnJhbWVBcmNoaXZlKSk7CisgICAgICAgICAgICBpZiAoYXV0byBzdWJmcmFtZUFy
Y2hpdmUgPSBjcmVhdGUoKmNoaWxkRnJhbWUtPmRvY3VtZW50KCksIGZyYW1lRmlsdGVyKSkKKyAg
ICAgICAgICAgICAgICBzdWJmcmFtZUFyY2hpdmVzLmFwcGVuZChzdWJmcmFtZUFyY2hpdmUucmVs
ZWFzZU5vbk51bGwoKSk7CiAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgTE9HX0VS
Uk9SKCJVbmFibGVkIHRvIGFyY2hpdmUgc3ViZnJhbWUgJXMiLCBjaGlsZEZyYW1lLT50cmVlKCku
dW5pcXVlTmFtZSgpLnN0cmluZygpLnV0ZjgoKS5kYXRhKCkpOwogCiAgICAgICAgIH0gZWxzZSB7
CiAgICAgICAgICAgICBMaXN0SGFzaFNldDxVUkw+IHN1YnJlc291cmNlVVJMczsKICAgICAgICAg
ICAgIG5vZGUuZ2V0U3VicmVzb3VyY2VVUkxzKHN1YnJlc291cmNlVVJMcyk7Ci0gICAgICAgICAg
ICAKLSAgICAgICAgICAgIERvY3VtZW50TG9hZGVyKiBkb2N1bWVudExvYWRlciA9IGZyYW1lLmxv
YWRlcigpLmRvY3VtZW50TG9hZGVyKCk7CiAKLSAgICAgICAgICAgIGZvciAoY29uc3QgYXV0byYg
c3VicmVzb3VyY2VVUkwgOiBzdWJyZXNvdXJjZVVSTHMpIHsKKyAgICAgICAgICAgIEFTU0VSVChm
cmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKTsKKyAgICAgICAgICAgIGF1dG8mIGRvY3Vt
ZW50TG9hZGVyID0gKmZyYW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCk7CisKKyAgICAgICAg
ICAgIGZvciAoYXV0byYgc3VicmVzb3VyY2VVUkwgOiBzdWJyZXNvdXJjZVVSTHMpIHsKICAgICAg
ICAgICAgICAgICBpZiAodW5pcXVlU3VicmVzb3VyY2VzLmNvbnRhaW5zKHN1YnJlc291cmNlVVJM
KSkKICAgICAgICAgICAgICAgICAgICAgY29udGludWU7CiAKICAgICAgICAgICAgICAgICB1bmlx
dWVTdWJyZXNvdXJjZXMuYWRkKHN1YnJlc291cmNlVVJMKTsKIAotICAgICAgICAgICAgICAgIGlm
IChSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiByZXNvdXJjZSA9IGRvY3VtZW50TG9hZGVyLT5zdWJy
ZXNvdXJjZShzdWJyZXNvdXJjZVVSTCkpIHsKLSAgICAgICAgICAgICAgICAgICAgc3VicmVzb3Vy
Y2VzLmFwcGVuZChXVEZNb3ZlKHJlc291cmNlKSk7CisgICAgICAgICAgICAgICAgaWYgKGF1dG8g
cmVzb3VyY2UgPSBkb2N1bWVudExvYWRlci5zdWJyZXNvdXJjZShzdWJyZXNvdXJjZVVSTCkpIHsK
KyAgICAgICAgICAgICAgICAgICAgc3VicmVzb3VyY2VzLmFwcGVuZChyZXNvdXJjZS5yZWxlYXNl
Tm9uTnVsbCgpKTsKICAgICAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAg
ICAgfQogCkBAIC01MjgsMTAgKzUxNyw5IEBAIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdh
Y3lXZWJBcmNoaXZlOjpjcmVhdGUoY29uc3QgU3RyaW5nJiBtYXJrdXBTdHJpbmcsIEZyCiAjaWYg
RU5BQkxFKENBQ0hFX1BBUlRJVElPTklORykKICAgICAgICAgICAgICAgICByZXF1ZXN0LnNldERv
bWFpbkZvckNhY2hlUGFydGl0aW9uKGZyYW1lLmRvY3VtZW50KCktPnRvcE9yaWdpbigpLT5kb21h
aW5Gb3JDYWNoZVBhcnRpdGlvbigpKTsKICNlbmRpZgotICAgICAgICAgICAgICAgIENhY2hlZFJl
c291cmNlKiBjYWNoZWRSZXNvdXJjZSA9IE1lbW9yeUNhY2hlOjpzaW5nbGV0b24oKS5yZXNvdXJj
ZUZvclJlcXVlc3QocmVxdWVzdCwgZnJhbWUucGFnZSgpLT5zZXNzaW9uSUQoKSk7Ci0gICAgICAg
ICAgICAgICAgaWYgKGNhY2hlZFJlc291cmNlKSB7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChS
ZWZQdHI8QXJjaGl2ZVJlc291cmNlPiByZXNvdXJjZSA9IEFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRl
KGNhY2hlZFJlc291cmNlLT5yZXNvdXJjZUJ1ZmZlcigpLCBzdWJyZXNvdXJjZVVSTCwgY2FjaGVk
UmVzb3VyY2UtPnJlc3BvbnNlKCkpKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBzdWJyZXNv
dXJjZXMuYXBwZW5kKFdURk1vdmUocmVzb3VyY2UpKTsKKyAgICAgICAgICAgICAgICBpZiAoYXV0
byogY2FjaGVkUmVzb3VyY2UgPSBNZW1vcnlDYWNoZTo6c2luZ2xldG9uKCkucmVzb3VyY2VGb3JS
ZXF1ZXN0KHJlcXVlc3QsIGZyYW1lLnBhZ2UoKS0+c2Vzc2lvbklEKCkpKSB7CisgICAgICAgICAg
ICAgICAgICAgIGlmIChhdXRvIHJlc291cmNlID0gQXJjaGl2ZVJlc291cmNlOjpjcmVhdGUoY2Fj
aGVkUmVzb3VyY2UtPnJlc291cmNlQnVmZmVyKCksIHN1YnJlc291cmNlVVJMLCBjYWNoZWRSZXNv
dXJjZS0+cmVzcG9uc2UoKSkpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHN1YnJlc291cmNl
cy5hcHBlbmQocmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSk7CiAgICAgICAgICAgICAgICAgICAg
ICAgICBjb250aW51ZTsKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIH0K
QEAgLTU0MywxNyArNTMxLDE3IEBAIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJB
cmNoaXZlOjpjcmVhdGUoY29uc3QgU3RyaW5nJiBtYXJrdXBTdHJpbmcsIEZyCiAgICAgfQogCiAg
ICAgLy8gQWRkIGZhdmljb24gaWYgb25lIGV4aXN0cyBmb3IgdGhpcyBwYWdlLCBpZiB3ZSBhcmUg
YXJjaGl2aW5nIHRoZSBlbnRpcmUgcGFnZS4KLSAgICBpZiAobm9kZXNTaXplICYmIG5vZGVzWzBd
LT5pc0RvY3VtZW50Tm9kZSgpICYmIGljb25EYXRhYmFzZSgpLmlzRW5hYmxlZCgpKSB7Ci0gICAg
ICAgIGNvbnN0IFN0cmluZyYgaWNvblVSTCA9IGljb25EYXRhYmFzZSgpLnN5bmNocm9ub3VzSWNv
blVSTEZvclBhZ2VVUkwocmVzcG9uc2VVUkwpOworICAgIGlmICghbm9kZXMuaXNFbXB0eSgpICYm
IG5vZGVzWzBdLT5pc0RvY3VtZW50Tm9kZSgpICYmIGljb25EYXRhYmFzZSgpLmlzRW5hYmxlZCgp
KSB7CisgICAgICAgIGF1dG8gaWNvblVSTCA9IGljb25EYXRhYmFzZSgpLnN5bmNocm9ub3VzSWNv
blVSTEZvclBhZ2VVUkwocmVzcG9uc2VVUkwpOwogICAgICAgICBpZiAoIWljb25VUkwuaXNFbXB0
eSgpICYmIGljb25EYXRhYmFzZSgpLnN5bmNocm9ub3VzSWNvbkRhdGFLbm93bkZvckljb25VUkwo
aWNvblVSTCkpIHsKLSAgICAgICAgICAgIGlmIChJbWFnZSogaWNvbkltYWdlID0gaWNvbkRhdGFi
YXNlKCkuc3luY2hyb25vdXNJY29uRm9yUGFnZVVSTChyZXNwb25zZVVSTCwgSW50U2l6ZSgxNiwg
MTYpKSkgeworICAgICAgICAgICAgaWYgKGF1dG8qIGljb25JbWFnZSA9IGljb25EYXRhYmFzZSgp
LnN5bmNocm9ub3VzSWNvbkZvclBhZ2VVUkwocmVzcG9uc2VVUkwsIEludFNpemUoMTYsIDE2KSkp
IHsKICAgICAgICAgICAgICAgICBpZiAoYXV0byByZXNvdXJjZSA9IEFyY2hpdmVSZXNvdXJjZTo6
Y3JlYXRlKGljb25JbWFnZS0+ZGF0YSgpLCBVUkwoUGFyc2VkVVJMU3RyaW5nLCBpY29uVVJMKSwg
ImltYWdlL3gtaWNvbiIsICIiLCAiIikpCi0gICAgICAgICAgICAgICAgICAgIHN1YnJlc291cmNl
cy5hcHBlbmQoV1RGTW92ZShyZXNvdXJjZSkpOworICAgICAgICAgICAgICAgICAgICBzdWJyZXNv
dXJjZXMuYXBwZW5kKHJlc291cmNlLnJlbGVhc2VOb25OdWxsKCkpOwogICAgICAgICAgICAgfQog
ICAgICAgICB9CiAgICAgfQogCi0gICAgcmV0dXJuIGNyZWF0ZShXVEZNb3ZlKG1haW5SZXNvdXJj
ZSksIFdURk1vdmUoc3VicmVzb3VyY2VzKSwgV1RGTW92ZShzdWJmcmFtZUFyY2hpdmVzKSk7Cisg
ICAgcmV0dXJuIGNyZWF0ZShtYWluUmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSwgV1RGTW92ZShz
dWJyZXNvdXJjZXMpLCBXVEZNb3ZlKHN1YmZyYW1lQXJjaGl2ZXMpKTsKIH0KIAogUmVmUHRyPExl
Z2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZUZyb21TZWxlY3Rpb24oRnJh
bWUqIGZyYW1lKQpAQCAtNTYxLDcgKzU0OSw3IEBAIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBM
ZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVGcm9tU2VsZWN0aW9uKEZyYW1lKiBmcmFtZSkKICAgICBp
ZiAoIWZyYW1lKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAotICAgIERvY3VtZW50KiBkb2N1
bWVudCA9IGZyYW1lLT5kb2N1bWVudCgpOworICAgIGF1dG8qIGRvY3VtZW50ID0gZnJhbWUtPmRv
Y3VtZW50KCk7CiAgICAgaWYgKCFkb2N1bWVudCkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAK
QEAgLTU2OSwxMiArNTU3LDEwIEBAIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJB
cmNoaXZlOjpjcmVhdGVGcm9tU2VsZWN0aW9uKEZyYW1lKiBmcmFtZSkKICAgICBidWlsZGVyLmFw
cGVuZChkb2N1bWVudFR5cGVTdHJpbmcoKmRvY3VtZW50KSk7CiAKICAgICBWZWN0b3I8Tm9kZSo+
IG5vZGVMaXN0OwotICAgIFJlZlB0cjxSYW5nZT4gc2VsZWN0aW9uUmFuZ2UgPSBmcmFtZS0+c2Vs
ZWN0aW9uKCkudG9Ob3JtYWxpemVkUmFuZ2UoKTsKLSAgICBpZiAoc2VsZWN0aW9uUmFuZ2UpCisg
ICAgaWYgKGF1dG8gc2VsZWN0aW9uUmFuZ2UgPSBmcmFtZS0+c2VsZWN0aW9uKCkudG9Ob3JtYWxp
emVkUmFuZ2UoKSkKICAgICAgICAgYnVpbGRlci5hcHBlbmQoY3JlYXRlTWFya3VwKCpzZWxlY3Rp
b25SYW5nZSwgJm5vZGVMaXN0LCBBbm5vdGF0ZUZvckludGVyY2hhbmdlKSk7CiAKLSAgICBTdHJp
bmcgbWFya3VwU3RyaW5nID0gYnVpbGRlci50b1N0cmluZygpOwotICAgIFJlZlB0cjxMZWdhY3lX
ZWJBcmNoaXZlPiBhcmNoaXZlID0gY3JlYXRlKG1hcmt1cFN0cmluZywgKmZyYW1lLCBub2RlTGlz
dCwgbnVsbHB0cik7CisgICAgYXV0byBhcmNoaXZlID0gY3JlYXRlKGJ1aWxkZXIudG9TdHJpbmco
KSwgKmZyYW1lLCBub2RlTGlzdCwgbnVsbHB0cik7CiAgICAgCiAgICAgaWYgKCFkb2N1bWVudC0+
aXNGcmFtZVNldCgpKQogICAgICAgICByZXR1cm4gYXJjaGl2ZTsKQEAgLTU4NCw3ICs1NzAsMTEg
QEAgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZUZyb21T
ZWxlY3Rpb24oRnJhbWUqIGZyYW1lKQogICAgIFN0cmluZyBpZnJhbWVNYXJrdXAgPSAiPGlmcmFt
ZSBmcmFtZWJvcmRlcj1cIm5vXCIgbWFyZ2lud2lkdGg9XCIwXCIgbWFyZ2luaGVpZ2h0PVwiMFwi
IHdpZHRoPVwiOTglJVwiIGhlaWdodD1cIjk4JSVcIiBzcmM9XCIiICsgZnJhbWUtPmxvYWRlcigp
LmRvY3VtZW50TG9hZGVyKCktPnJlc3BvbnNlKCkudXJsKCkuc3RyaW5nKCkgKyAiXCI+PC9pZnJh
bWU+IjsKICAgICBhdXRvIGlmcmFtZVJlc291cmNlID0gQXJjaGl2ZVJlc291cmNlOjpjcmVhdGUo
dXRmOEJ1ZmZlcihpZnJhbWVNYXJrdXApLCBibGFua1VSTCgpLCAidGV4dC9odG1sIiwgIlVURi04
IiwgU3RyaW5nKCkpOwogCi0gICAgcmV0dXJuIGNyZWF0ZShXVEZNb3ZlKGlmcmFtZVJlc291cmNl
KSwgVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+PigpLCBWZWN0b3I8UmVmUHRyPExlZ2Fj
eVdlYkFyY2hpdmU+PiB7IGFyY2hpdmUgfSk7CisgICAgVmVjdG9yPFJlZjxMZWdhY3lXZWJBcmNo
aXZlPj4gc3ViZnJhbWVBcmNoaXZlczsKKyAgICBzdWJmcmFtZUFyY2hpdmVzLnJlc2VydmVJbml0
aWFsQ2FwYWNpdHkoMSk7CisgICAgc3ViZnJhbWVBcmNoaXZlcy51bmNoZWNrZWRBcHBlbmQoYXJj
aGl2ZS5yZWxlYXNlTm9uTnVsbCgpKTsKKworICAgIHJldHVybiBjcmVhdGUoaWZyYW1lUmVzb3Vy
Y2UucmVsZWFzZU5vbk51bGwoKSwgeyB9LCBXVEZNb3ZlKHN1YmZyYW1lQXJjaGl2ZXMpKTsKIH0K
IAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvY2YvTGVnYWN5
V2ViQXJjaGl2ZS5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvY2YvTGVnYWN5V2Vi
QXJjaGl2ZS5oCmluZGV4IDM1ZGRmM2MyYTU5YzA4NjMzYmRkOWIyMTM0N2IzNmY4ZDI3NjJjMWEu
LjQ0NjdkMGQ2YTAzZTA4MDNhZTZiYTc1NjM5NzZlYmU1MjJhMTQ5OGEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL2NmL0xlZ2FjeVdlYkFyY2hpdmUuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNoaXZlLmgKQEAgLTM3
LDIzICszNywyNiBAQCBjbGFzcyBGcmFtZTsKIGNsYXNzIE5vZGU7CiBjbGFzcyBSYW5nZTsKIAot
Y2xhc3MgTGVnYWN5V2ViQXJjaGl2ZSA6IHB1YmxpYyBBcmNoaXZlIHsKK2NsYXNzIExlZ2FjeVdl
YkFyY2hpdmUgZmluYWwgOiBwdWJsaWMgQXJjaGl2ZSB7CiBwdWJsaWM6CiAgICAgV0VCQ09SRV9F
WFBPUlQgc3RhdGljIFJlZjxMZWdhY3lXZWJBcmNoaXZlPiBjcmVhdGUoKTsKICAgICBXRUJDT1JF
X0VYUE9SVCBzdGF0aWMgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IGNyZWF0ZShTaGFyZWRCdWZm
ZXImKTsKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+
IGNyZWF0ZShjb25zdCBVUkwmLCBTaGFyZWRCdWZmZXImKTsKLSAgICBXRUJDT1JFX0VYUE9SVCBz
dGF0aWMgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IGNyZWF0ZShSZWZQdHI8QXJjaGl2ZVJlc291
cmNlPiYmIG1haW5SZXNvdXJjZSwgVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+PiYmIHN1
YnJlc291cmNlcywgVmVjdG9yPFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPj4mJiBzdWJmcmFtZUFy
Y2hpdmVzKTsKKyAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmPExlZ2FjeVdlYkFyY2hpdmU+
IGNyZWF0ZShSZWY8QXJjaGl2ZVJlc291cmNlPiYmIG1haW5SZXNvdXJjZSwgVmVjdG9yPFJlZjxB
cmNoaXZlUmVzb3VyY2U+PiYmIHN1YnJlc291cmNlcywgVmVjdG9yPFJlZjxMZWdhY3lXZWJBcmNo
aXZlPj4mJiBzdWJmcmFtZUFyY2hpdmVzKTsKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVm
UHRyPExlZ2FjeVdlYkFyY2hpdmU+IGNyZWF0ZShOb2RlJiwgc3RkOjpmdW5jdGlvbjxib29sKEZy
YW1lJik+IGZyYW1lRmlsdGVyID0gbnVsbHB0cik7CiAgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGlj
IFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBjcmVhdGUoRnJhbWUmKTsKICAgICBXRUJDT1JFX0VY
UE9SVCBzdGF0aWMgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IGNyZWF0ZUZyb21TZWxlY3Rpb24o
RnJhbWUqKTsKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmUHRyPExlZ2FjeVdlYkFyY2hp
dmU+IGNyZWF0ZShSYW5nZSopOwogCi0gICAgVHlwZSB0eXBlKCkgY29uc3Qgb3ZlcnJpZGU7Ci0K
ICAgICBXRUJDT1JFX0VYUE9SVCBSZXRhaW5QdHI8Q0ZEYXRhUmVmPiByYXdEYXRhUmVwcmVzZW50
YXRpb24oKTsKIAogcHJpdmF0ZToKLSAgICBMZWdhY3lXZWJBcmNoaXZlKCkgeyB9CisgICAgTGVn
YWN5V2ViQXJjaGl2ZSgpID0gZGVmYXVsdDsKKworICAgIGJvb2wgc2hvdWxkTG9hZEZyb21BcmNo
aXZlT25seSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIGZhbHNlOyB9CisgICAgYm9vbCBzaG91bGRP
dmVycmlkZUJhc2VVUkwoKSBjb25zdCBmaW5hbCB7IHJldHVybiBmYWxzZTsgfQorICAgIGJvb2wg
c2hvdWxkVXNlTWFpblJlc291cmNlRW5jb2RpbmcoKSBjb25zdCBmaW5hbCB7IHJldHVybiB0cnVl
OyB9CisgICAgYm9vbCBzaG91bGRVc2VNYWluUmVzb3VyY2VVUkwoKSBjb25zdCBmaW5hbCB7IHJl
dHVybiB0cnVlOyB9CiAKICAgICBlbnVtIE1haW5SZXNvdXJjZVN0YXR1cyB7IFN1YnJlc291cmNl
LCBNYWluUmVzb3VyY2UgfTsKIApAQCAtNjIsNyArNjUsNyBAQCBwcml2YXRlOgogICAgIHN0YXRp
YyBSZXNvdXJjZVJlc3BvbnNlIGNyZWF0ZVJlc291cmNlUmVzcG9uc2VGcm9tTWFjQXJjaGl2ZWRE
YXRhKENGRGF0YVJlZik7CiAgICAgc3RhdGljIFJlc291cmNlUmVzcG9uc2UgY3JlYXRlUmVzb3Vy
Y2VSZXNwb25zZUZyb21Qcm9wZXJ0eUxpc3REYXRhKENGRGF0YVJlZiwgQ0ZTdHJpbmdSZWYgcmVz
cG9uc2VEYXRhVHlwZSk7CiAgICAgc3RhdGljIFJldGFpblB0cjxDRkRhdGFSZWY+IGNyZWF0ZVBy
b3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICBz
dGF0aWMgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gY3JlYXRlUHJvcGVydHlMaXN0UmVwcmVz
ZW50YXRpb24oQXJjaGl2ZSopOworICAgIHN0YXRpYyBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVm
PiBjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihBcmNoaXZlJik7CiAgICAgc3RhdGlj
IFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0
aW9uKEFyY2hpdmVSZXNvdXJjZSosIE1haW5SZXNvdXJjZVN0YXR1cyk7CiAKICAgICBib29sIGV4
dHJhY3QoQ0ZEaWN0aW9uYXJ5UmVmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9hcmNoaXZlL21odG1sL01IVE1MQXJjaGl2ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
YXJjaGl2ZS9taHRtbC9NSFRNTEFyY2hpdmUuY3BwCmluZGV4IGUxZjNhZDA2YTVmN2YyYjgwNTUz
MTA0NWRhNGI4NmMyZDNjODJkZDMuLmE5MjFiMDVlODQ2YTA1YTVhZmNlNjMwM2FhMThmOGJmMzA3
MDlkYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL21odG1sL01I
VE1MQXJjaGl2ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvbWh0bWwv
TUhUTUxBcmNoaXZlLmNwcApAQCAtMTIyLDE1ICsxMjIsMTUgQEAgUmVmUHRyPE1IVE1MQXJjaGl2
ZT4gTUhUTUxBcmNoaXZlOjpjcmVhdGUoY29uc3QgVVJMJiB1cmwsIFNoYXJlZEJ1ZmZlciYgZGF0
YSkKICAgICAgICAgUmVmUHRyPE1IVE1MQXJjaGl2ZT4gYXJjaGl2ZSA9IHBhcnNlci5mcmFtZUF0
KGkpOwogICAgICAgICBmb3IgKHNpemVfdCBqID0gMTsgaiA8IHBhcnNlci5mcmFtZUNvdW50KCk7
ICsraikgewogICAgICAgICAgICAgaWYgKGkgIT0gaikKLSAgICAgICAgICAgICAgICBhcmNoaXZl
LT5hZGRTdWJmcmFtZUFyY2hpdmUocGFyc2VyLmZyYW1lQXQoaikpOworICAgICAgICAgICAgICAg
IGFyY2hpdmUtPmFkZFN1YmZyYW1lQXJjaGl2ZSgqcGFyc2VyLmZyYW1lQXQoaikpOwogICAgICAg
ICB9CiAgICAgICAgIGZvciAoc2l6ZV90IGogPSAwOyBqIDwgcGFyc2VyLnN1YlJlc291cmNlQ291
bnQoKTsgKytqKQotICAgICAgICAgICAgYXJjaGl2ZS0+YWRkU3VicmVzb3VyY2UocGFyc2VyLnN1
YlJlc291cmNlQXQoaikpOworICAgICAgICAgICAgYXJjaGl2ZS0+YWRkU3VicmVzb3VyY2UoKnBh
cnNlci5zdWJSZXNvdXJjZUF0KGopKTsKICAgICB9CiAgICAgcmV0dXJuIG1haW5BcmNoaXZlOwog
fQogCi1QYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gTUhUTUxBcmNoaXZlOjpnZW5lcmF0ZU1IVE1M
RGF0YShQYWdlKiBwYWdlKQorUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gTUhUTUxBcmNoaXZlOjpnZW5l
cmF0ZU1IVE1MRGF0YShQYWdlKiBwYWdlKQogewogICAgIFZlY3RvcjxQYWdlU2VyaWFsaXplcjo6
UmVzb3VyY2U+IHJlc291cmNlczsKICAgICBQYWdlU2VyaWFsaXplciBwYWdlU2VyaWFsaXplcigm
cmVzb3VyY2VzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL21o
dG1sL01IVE1MQXJjaGl2ZS5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvbWh0bWwv
TUhUTUxBcmNoaXZlLmgKaW5kZXggY2EyMDAwMzc5YmRmNDEyZjRlNDEyNGVhZjIxYWJhNjZhMTVl
MzRiMi4uODUyNDY1OWFhYjIyMGRlMDc1YzY3N2FiNzBmMTlhY2NjODgxOGRmZiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvbWh0bWwvTUhUTUxBcmNoaXZlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvbWh0bWwvTUhUTUxBcmNoaXZlLmgKQEAg
LTQwLDIyICs0MCwyNCBAQCBjbGFzcyBNSFRNTFBhcnNlcjsKIGNsYXNzIFBhZ2U7CiBjbGFzcyBT
aGFyZWRCdWZmZXI7CiAKLWNsYXNzIE1IVE1MQXJjaGl2ZSA6IHB1YmxpYyBBcmNoaXZlIHsKK2Ns
YXNzIE1IVE1MQXJjaGl2ZSBmaW5hbCA6IHB1YmxpYyBBcmNoaXZlIHsKIHB1YmxpYzoKLSAgICBU
eXBlIHR5cGUoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBNSFRNTDsgfQotCiAgICAgc3RhdGlj
IFJlZjxNSFRNTEFyY2hpdmU+IGNyZWF0ZSgpOwogICAgIHN0YXRpYyBSZWZQdHI8TUhUTUxBcmNo
aXZlPiBjcmVhdGUoY29uc3QgVVJMJiwgU2hhcmVkQnVmZmVyJik7CiAKLSAgICBzdGF0aWMgUGFz
c1JlZlB0cjxTaGFyZWRCdWZmZXI+IGdlbmVyYXRlTUhUTUxEYXRhKFBhZ2UqKTsKKyAgICBzdGF0
aWMgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZ2VuZXJhdGVNSFRNTERhdGEoUGFnZSopOwogCiAgICAg
dmlydHVhbCB+TUhUTUxBcmNoaXZlKCk7CiAKIHByaXZhdGU6Ci0gICAgc3RhdGljIFBhc3NSZWZQ
dHI8U2hhcmVkQnVmZmVyPiBnZW5lcmF0ZU1IVE1MRGF0YShQYWdlKiwgYm9vbCB1c2VCaW5hcnlF
bmNvZGluZyk7Ci0KICAgICBmcmllbmQgY2xhc3MgTUhUTUxQYXJzZXI7CisKICAgICBNSFRNTEFy
Y2hpdmUoKTsKKworICAgIGJvb2wgc2hvdWxkTG9hZEZyb21BcmNoaXZlT25seSgpIGNvbnN0IGZp
bmFsIHsgcmV0dXJuIHRydWU7IH0KKyAgICBib29sIHNob3VsZE92ZXJyaWRlQmFzZVVSTCgpIGNv
bnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KKyAgICBib29sIHNob3VsZFVzZU1haW5SZXNvdXJj
ZUVuY29kaW5nKCkgY29uc3QgZmluYWwgeyByZXR1cm4gZmFsc2U7IH0KKyAgICBib29sIHNob3Vs
ZFVzZU1haW5SZXNvdXJjZVVSTCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIGZhbHNlOyB9CiB9Owog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvYXJjaGl2ZS9taHRtbC9NSFRNTFBhcnNlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
YXJjaGl2ZS9taHRtbC9NSFRNTFBhcnNlci5jcHAKaW5kZXggZjhhMDdlZGRhYTZhODMzMDA2YWUw
MDY4MGM5N2ZkNzA5MWM2ZDljYS4uYjA0MTRlYmM5NjE1NWIxNWJhMTRjNmYzZDU4ODk1ZjZmMzI3
MDJhMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvbWh0bWwvTUhU
TUxQYXJzZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL21odG1sL01I
VE1MUGFyc2VyLmNwcApAQCAtNzUsNyArNzUsNyBAQCBSZWZQdHI8TUhUTUxBcmNoaXZlPiBNSFRN
TFBhcnNlcjo6cGFyc2VBcmNoaXZlV2l0aEhlYWRlcihNSU1FSGVhZGVyKiBoZWFkZXIpCiAgICAg
ICAgIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IHJlc291cmNlID0gcGFyc2VOZXh0UGFydCgqaGVh
ZGVyLCBTdHJpbmcoKSwgU3RyaW5nKCksIGVuZE9mQXJjaGl2ZVJlYWNoZWQpOwogICAgICAgICBp
ZiAoIXJlc291cmNlKQogICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgICAgIGFyY2hp
dmUtPnNldE1haW5SZXNvdXJjZShyZXNvdXJjZSk7CisgICAgICAgIGFyY2hpdmUtPnNldE1haW5S
ZXNvdXJjZShyZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICAgICAgcmV0dXJuIGFyY2hp
dmU7CiAgICAgfQogCkBAIC0xMDEsNyArMTAxLDcgQEAgUmVmUHRyPE1IVE1MQXJjaGl2ZT4gTUhU
TUxQYXJzZXI6OnBhcnNlQXJjaGl2ZVdpdGhIZWFkZXIoTUlNRUhlYWRlciogaGVhZGVyKQogICAg
ICAgICAgICAgLy8gVGhlIHRvcC1mcmFtZSBpcyB0aGUgZmlyc3QgZnJhbWUgZm91bmQsIHJlZ2Fy
ZGxlc3Mgb2YgdGhlIG5lc3RpbmcgbGV2ZWwuCiAgICAgICAgICAgICBpZiAoc3ViZnJhbWVBcmNo
aXZlLT5tYWluUmVzb3VyY2UoKSkKICAgICAgICAgICAgICAgICBhZGRSZXNvdXJjZVRvQXJjaGl2
ZShzdWJmcmFtZUFyY2hpdmUtPm1haW5SZXNvdXJjZSgpLCBhcmNoaXZlLmdldCgpKTsKLSAgICAg
ICAgICAgIGFyY2hpdmUtPmFkZFN1YmZyYW1lQXJjaGl2ZShzdWJmcmFtZUFyY2hpdmUpOworICAg
ICAgICAgICAgYXJjaGl2ZS0+YWRkU3ViZnJhbWVBcmNoaXZlKHN1YmZyYW1lQXJjaGl2ZS5yZWxl
YXNlTm9uTnVsbCgpKTsKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICB9CiAKQEAgLTEy
NiwxMyArMTI2LDEzIEBAIHZvaWQgTUhUTUxQYXJzZXI6OmFkZFJlc291cmNlVG9BcmNoaXZlKEFy
Y2hpdmVSZXNvdXJjZSogcmVzb3VyY2UsIE1IVE1MQXJjaGl2ZSoKIAogICAgIC8vIFRoZSBmaXJz
dCBkb2N1bWVudCBzdWl0YWJsZSByZXNvdXJjZSBpcyB0aGUgbWFpbiBmcmFtZS4KICAgICBpZiAo
IWFyY2hpdmUtPm1haW5SZXNvdXJjZSgpKSB7Ci0gICAgICAgIGFyY2hpdmUtPnNldE1haW5SZXNv
dXJjZShyZXNvdXJjZSk7CisgICAgICAgIGFyY2hpdmUtPnNldE1haW5SZXNvdXJjZSgqcmVzb3Vy
Y2UpOwogICAgICAgICBtX2ZyYW1lcy5hcHBlbmQoYXJjaGl2ZSk7CiAgICAgICAgIHJldHVybjsK
ICAgICB9CiAKICAgICBSZWZQdHI8TUhUTUxBcmNoaXZlPiBzdWJmcmFtZSA9IE1IVE1MQXJjaGl2
ZTo6Y3JlYXRlKCk7Ci0gICAgc3ViZnJhbWUtPnNldE1haW5SZXNvdXJjZShyZXNvdXJjZSk7Cisg
ICAgc3ViZnJhbWUtPnNldE1haW5SZXNvdXJjZSgqcmVzb3VyY2UpOwogICAgIG1fZnJhbWVzLmFw
cGVuZChzdWJmcmFtZSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9j
YWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNo
ZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmNwcAppbmRleCA4YmYwNjkxYWM0OTY2NTUxOGNmYThhYjVl
OTExMDUwN2RlZDc3MDY5Li5hZjQwY2MyMDRhZDA0N2Y4NWMyMzQxN2NiY2U3ZjE5N2UzYmU2MjQx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVT
aGVldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZENTU1N0eWxl
U2hlZXQuY3BwCkBAIC0zLDcgKzMsNyBAQAogICAgIENvcHlyaWdodCAoQykgMjAwMSBEaXJrIE11
ZWxsZXIgKG11ZWxsZXJAa2RlLm9yZykKICAgICBDb3B5cmlnaHQgKEMpIDIwMDIgV2FsZG8gQmFz
dGlhbiAoYmFzdGlhbkBrZGUub3JnKQogICAgIENvcHlyaWdodCAoQykgMjAwNiBTYW11ZWwgV2Vp
bmlnIChzYW0ud2VpbmlnQGdtYWlsLmNvbSkKLSAgICBDb3B5cmlnaHQgKEMpIDIwMDQsIDIwMDUs
IDIwMDYgQXBwbGUgSW5jLgorICAgIENvcHlyaWdodCAoQykgMjAwNC0yMDE3IEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KIAogICAgIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJl
OyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICAgICBtb2RpZnkgaXQgdW5kZXIgdGhl
IHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYwpAQCAtMTksOSArMTksNiBA
QAogICAgIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIu
ICBJZiBub3QsIHdyaXRlIHRvCiAgICAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5j
LiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKICAgICBCb3N0b24sIE1BIDAyMTEw
LTEzMDEsIFVTQS4KLQotICAgIFRoaXMgY2xhc3MgcHJvdmlkZXMgYWxsIGZ1bmN0aW9uYWxpdHkg
bmVlZGVkIGZvciBsb2FkaW5nIGltYWdlcywgc3R5bGUgc2hlZXRzIGFuZCBodG1sCi0gICAgcGFn
ZXMgZnJvbSB0aGUgd2ViLiBJdCBoYXMgYSBtZW1vcnkgY2FjaGUgZm9yIHRoZXNlIG9iamVjdHMu
CiAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCkBAIC0xNTYsNyArMTUzLDcgQEAgdm9pZCBDYWNo
ZWRDU1NTdHlsZVNoZWV0OjpkZXN0cm95RGVjb2RlZERhdGEoKQogICAgIHNldERlY29kZWRTaXpl
KDApOwogfQogCi1QYXNzUmVmUHRyPFN0eWxlU2hlZXRDb250ZW50cz4gQ2FjaGVkQ1NTU3R5bGVT
aGVldDo6cmVzdG9yZVBhcnNlZFN0eWxlU2hlZXQoY29uc3QgQ1NTUGFyc2VyQ29udGV4dCYgY29u
dGV4dCwgQ2FjaGVQb2xpY3kgY2FjaGVQb2xpY3kpCitSZWZQdHI8U3R5bGVTaGVldENvbnRlbnRz
PiBDYWNoZWRDU1NTdHlsZVNoZWV0OjpyZXN0b3JlUGFyc2VkU3R5bGVTaGVldChjb25zdCBDU1NQ
YXJzZXJDb250ZXh0JiBjb250ZXh0LCBDYWNoZVBvbGljeSBjYWNoZVBvbGljeSkKIHsKICAgICBp
ZiAoIW1fcGFyc2VkU3R5bGVTaGVldENhY2hlKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKQEAg
LTE4MCw3ICsxNzcsNyBAQCBQYXNzUmVmUHRyPFN0eWxlU2hlZXRDb250ZW50cz4gQ2FjaGVkQ1NT
U3R5bGVTaGVldDo6cmVzdG9yZVBhcnNlZFN0eWxlU2hlZXQoY29ucwogCiB2b2lkIENhY2hlZENT
U1N0eWxlU2hlZXQ6OnNhdmVQYXJzZWRTdHlsZVNoZWV0KFJlZjxTdHlsZVNoZWV0Q29udGVudHM+
JiYgc2hlZXQpCiB7Ci0gICAgQVNTRVJUKHNoZWV0LmdldCgpLmlzQ2FjaGVhYmxlKCkpOworICAg
IEFTU0VSVChzaGVldC0+aXNDYWNoZWFibGUoKSk7CiAKICAgICBpZiAobV9wYXJzZWRTdHlsZVNo
ZWV0Q2FjaGUpCiAgICAgICAgIG1fcGFyc2VkU3R5bGVTaGVldENhY2hlLT5yZW1vdmVkRnJvbU1l
bW9yeUNhY2hlKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2Fj
aGVkQ1NTU3R5bGVTaGVldC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZENT
U1N0eWxlU2hlZXQuaAppbmRleCAzYzhhZTI4ZGQyN2FlZjgwYWUyZGVlYjRhMzM2ZTc0ODU0ZTdl
ZjBjLi5jMzNhYTJlNDA4NTUzOGJjN2I0NTZmNDE2MzljMmNjMTg3OWY4NzRlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmgKQEAgLTIs
NyArMiw3IEBACiAgICAgQ29weXJpZ2h0IChDKSAxOTk4IExhcnMgS25vbGwgKGtub2xsQG1waS1o
ZC5tcGcuZGUpCiAgICAgQ29weXJpZ2h0IChDKSAyMDAxIERpcmsgTXVlbGxlciA8bXVlbGxlckBr
ZGUub3JnPgogICAgIENvcHlyaWdodCAoQykgMjAwNiBTYW11ZWwgV2VpbmlnIChzYW0ud2Vpbmln
QGdtYWlsLmNvbSkKLSAgICBDb3B5cmlnaHQgKEMpIDIwMDQsIDIwMDUsIDIwMDYsIDIwMDcsIDIw
MDggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICAgIENvcHlyaWdodCAoQykgMjAw
NC0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KIAogICAgIFRoaXMgbGlicmFy
eSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICAgICBt
b2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1Ymxp
YwpAQCAtMTgsOSArMTgsNiBAQAogICAgIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhl
IGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCiAgICAgdGhlIEZyZWUgU29mdHdh
cmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKICAg
ICBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KLQotICAgIFRoaXMgY2xhc3MgcHJvdmlkZXMg
YWxsIGZ1bmN0aW9uYWxpdHkgbmVlZGVkIGZvciBsb2FkaW5nIGltYWdlcywgc3R5bGUgc2hlZXRz
IGFuZCBodG1sCi0gICAgcGFnZXMgZnJvbSB0aGUgd2ViLiBJdCBoYXMgYSBtZW1vcnkgY2FjaGUg
Zm9yIHRoZXNlIG9iamVjdHMuCiAqLwogCiAjcHJhZ21hIG9uY2UKQEAgLTI5LDQ0ICsyNiw0NCBA
QAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLSAgICBjbGFzcyBDYWNoZWRSZXNvdXJjZUNsaWVu
dDsKLSAgICBjbGFzcyBTdHlsZVNoZWV0Q29udGVudHM7Ci0gICAgY2xhc3MgVGV4dFJlc291cmNl
RGVjb2RlcjsKLSAgICBzdHJ1Y3QgQ1NTUGFyc2VyQ29udGV4dDsKK2NsYXNzIFN0eWxlU2hlZXRD
b250ZW50czsKK2NsYXNzIFRleHRSZXNvdXJjZURlY29kZXI7CisKK3N0cnVjdCBDU1NQYXJzZXJD
b250ZXh0OwogCi0gICAgY2xhc3MgQ2FjaGVkQ1NTU3R5bGVTaGVldCBmaW5hbCA6IHB1YmxpYyBD
YWNoZWRSZXNvdXJjZSB7Ci0gICAgcHVibGljOgotICAgICAgICBDYWNoZWRDU1NTdHlsZVNoZWV0
KENhY2hlZFJlc291cmNlUmVxdWVzdCYmLCBTZXNzaW9uSUQpOwotICAgICAgICB2aXJ0dWFsIH5D
YWNoZWRDU1NTdHlsZVNoZWV0KCk7CitjbGFzcyBDYWNoZWRDU1NTdHlsZVNoZWV0IGZpbmFsIDog
cHVibGljIENhY2hlZFJlc291cmNlIHsKK3B1YmxpYzoKKyAgICBDYWNoZWRDU1NTdHlsZVNoZWV0
KENhY2hlZFJlc291cmNlUmVxdWVzdCYmLCBTZXNzaW9uSUQpOworICAgIHZpcnR1YWwgfkNhY2hl
ZENTU1N0eWxlU2hlZXQoKTsKIAotICAgICAgICBlbnVtIGNsYXNzIE1JTUVUeXBlQ2hlY2sgeyBT
dHJpY3QsIExheCB9OwotICAgICAgICBjb25zdCBTdHJpbmcgc2hlZXRUZXh0KE1JTUVUeXBlQ2hl
Y2sgPSBNSU1FVHlwZUNoZWNrOjpTdHJpY3QsIGJvb2wqIGhhc1ZhbGlkTUlNRVR5cGUgPSBudWxs
cHRyKSBjb25zdDsKKyAgICBlbnVtIGNsYXNzIE1JTUVUeXBlQ2hlY2sgeyBTdHJpY3QsIExheCB9
OworICAgIGNvbnN0IFN0cmluZyBzaGVldFRleHQoTUlNRVR5cGVDaGVjayA9IE1JTUVUeXBlQ2hl
Y2s6OlN0cmljdCwgYm9vbCogaGFzVmFsaWRNSU1FVHlwZSA9IG51bGxwdHIpIGNvbnN0OwogCi0g
ICAgICAgIFBhc3NSZWZQdHI8U3R5bGVTaGVldENvbnRlbnRzPiByZXN0b3JlUGFyc2VkU3R5bGVT
aGVldChjb25zdCBDU1NQYXJzZXJDb250ZXh0JiwgQ2FjaGVQb2xpY3kpOwotICAgICAgICB2b2lk
IHNhdmVQYXJzZWRTdHlsZVNoZWV0KFJlZjxTdHlsZVNoZWV0Q29udGVudHM+JiYpOworICAgIFJl
ZlB0cjxTdHlsZVNoZWV0Q29udGVudHM+IHJlc3RvcmVQYXJzZWRTdHlsZVNoZWV0KGNvbnN0IENT
U1BhcnNlckNvbnRleHQmLCBDYWNoZVBvbGljeSk7CisgICAgdm9pZCBzYXZlUGFyc2VkU3R5bGVT
aGVldChSZWY8U3R5bGVTaGVldENvbnRlbnRzPiYmKTsKIAotICAgIHByaXZhdGU6Ci0gICAgICAg
IGJvb2wgY2FuVXNlU2hlZXQoTUlNRVR5cGVDaGVjaywgYm9vbCogaGFzVmFsaWRNSU1FVHlwZSkg
Y29uc3Q7Ci0gICAgICAgIGJvb2wgbWF5VHJ5UmVwbGFjZUVuY29kZWREYXRhKCkgY29uc3QgZmlu
YWwgeyByZXR1cm4gdHJ1ZTsgfQorcHJpdmF0ZToKKyAgICBib29sIGNhblVzZVNoZWV0KE1JTUVU
eXBlQ2hlY2ssIGJvb2wqIGhhc1ZhbGlkTUlNRVR5cGUpIGNvbnN0OworICAgIGJvb2wgbWF5VHJ5
UmVwbGFjZUVuY29kZWREYXRhKCkgY29uc3QgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQogCi0gICAg
ICAgIHZvaWQgZGlkQWRkQ2xpZW50KENhY2hlZFJlc291cmNlQ2xpZW50JikgZmluYWw7CisgICAg
dm9pZCBkaWRBZGRDbGllbnQoQ2FjaGVkUmVzb3VyY2VDbGllbnQmKSBmaW5hbDsKIAotICAgICAg
ICB2b2lkIHNldEVuY29kaW5nKGNvbnN0IFN0cmluZyYpIGZpbmFsOwotICAgICAgICBTdHJpbmcg
ZW5jb2RpbmcoKSBjb25zdCBmaW5hbDsKLSAgICAgICAgY29uc3QgVGV4dFJlc291cmNlRGVjb2Rl
ciogdGV4dFJlc291cmNlRGVjb2RlcigpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fZGVjb2Rlci5n
ZXQoKTsgfQotICAgICAgICB2b2lkIGZpbmlzaExvYWRpbmcoU2hhcmVkQnVmZmVyKikgZmluYWw7
Ci0gICAgICAgIHZvaWQgZGVzdHJveURlY29kZWREYXRhKCkgZmluYWw7CisgICAgdm9pZCBzZXRF
bmNvZGluZyhjb25zdCBTdHJpbmcmKSBmaW5hbDsKKyAgICBTdHJpbmcgZW5jb2RpbmcoKSBjb25z
dCBmaW5hbDsKKyAgICBjb25zdCBUZXh0UmVzb3VyY2VEZWNvZGVyKiB0ZXh0UmVzb3VyY2VEZWNv
ZGVyKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9kZWNvZGVyLmdldCgpOyB9CisgICAgdm9pZCBm
aW5pc2hMb2FkaW5nKFNoYXJlZEJ1ZmZlciopIGZpbmFsOworICAgIHZvaWQgZGVzdHJveURlY29k
ZWREYXRhKCkgZmluYWw7CiAKLSAgICAgICAgdm9pZCBzZXRCb2R5RGF0YUZyb20oY29uc3QgQ2Fj
aGVkUmVzb3VyY2UmKSBmaW5hbDsKKyAgICB2b2lkIHNldEJvZHlEYXRhRnJvbShjb25zdCBDYWNo
ZWRSZXNvdXJjZSYpIGZpbmFsOwogCi0gICAgcHJvdGVjdGVkOgotICAgICAgICB2b2lkIGNoZWNr
Tm90aWZ5KCkgZmluYWw7Citwcm90ZWN0ZWQ6CisgICAgdm9pZCBjaGVja05vdGlmeSgpIGZpbmFs
OwogCi0gICAgICAgIFJlZlB0cjxUZXh0UmVzb3VyY2VEZWNvZGVyPiBtX2RlY29kZXI7Ci0gICAg
ICAgIFN0cmluZyBtX2RlY29kZWRTaGVldFRleHQ7CisgICAgUmVmUHRyPFRleHRSZXNvdXJjZURl
Y29kZXI+IG1fZGVjb2RlcjsKKyAgICBTdHJpbmcgbV9kZWNvZGVkU2hlZXRUZXh0OwogCi0gICAg
ICAgIFJlZlB0cjxTdHlsZVNoZWV0Q29udGVudHM+IG1fcGFyc2VkU3R5bGVTaGVldENhY2hlOwot
ICAgIH07CisgICAgUmVmUHRyPFN0eWxlU2hlZXRDb250ZW50cz4gbV9wYXJzZWRTdHlsZVNoZWV0
Q2FjaGU7Cit9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3QuY3BwIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdC5jcHAKaW5kZXggNDcz
YWNkNTlmMDM0YTExMmJlZTY0MzUxNWQ2Y2IyOWI1YjUwMTU0Yi4uNmQwYzIyMTE5YWUzNGIxY2Qw
NGZhM2YxMGE1MzQ2ZWY2MWIwNjI1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdC5jcHAKQEAgLTU5LDE1ICs1OSwxNyBAQCBT
dHJpbmcgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0OjpzcGxpdEZyYWdtZW50SWRlbnRpZmllckZyb21S
ZXF1ZXN0VVJMKFJlc291cmNlUmVxdQogICAgIHJldHVybiBmcmFnbWVudElkZW50aWZpZXI7CiB9
CiAKLXZvaWQgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0OjpzZXRJbml0aWF0b3IoUGFzc1JlZlB0cjxF
bGVtZW50PiBlbGVtZW50KQordm9pZCBDYWNoZWRSZXNvdXJjZVJlcXVlc3Q6OnNldEluaXRpYXRv
cihFbGVtZW50JiBlbGVtZW50KQogewotICAgIEFTU0VSVCghbV9pbml0aWF0b3JFbGVtZW50ICYm
IG1faW5pdGlhdG9yTmFtZS5pc0VtcHR5KCkpOwotICAgIG1faW5pdGlhdG9yRWxlbWVudCA9IGVs
ZW1lbnQ7CisgICAgQVNTRVJUKCFtX2luaXRpYXRvckVsZW1lbnQpOworICAgIEFTU0VSVChtX2lu
aXRpYXRvck5hbWUuaXNFbXB0eSgpKTsKKyAgICBtX2luaXRpYXRvckVsZW1lbnQgPSAmZWxlbWVu
dDsKIH0KIAogdm9pZCBDYWNoZWRSZXNvdXJjZVJlcXVlc3Q6OnNldEluaXRpYXRvcihjb25zdCBB
dG9taWNTdHJpbmcmIG5hbWUpCiB7Ci0gICAgQVNTRVJUKCFtX2luaXRpYXRvckVsZW1lbnQgJiYg
bV9pbml0aWF0b3JOYW1lLmlzRW1wdHkoKSk7CisgICAgQVNTRVJUKCFtX2luaXRpYXRvckVsZW1l
bnQpOworICAgIEFTU0VSVChtX2luaXRpYXRvck5hbWUuaXNFbXB0eSgpKTsKICAgICBtX2luaXRp
YXRvck5hbWUgPSBuYW1lOwogfQogCkBAIC0yMDksMTAgKzIxMSwxMiBAQCB2b2lkIENhY2hlZFJl
c291cmNlUmVxdWVzdDo6cmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVySWZOZWVkZWQoKQogfQogCiAj
aWYgRU5BQkxFKENPTlRFTlRfRVhURU5TSU9OUykKKwogdm9pZCBDYWNoZWRSZXNvdXJjZVJlcXVl
c3Q6OmFwcGx5QmxvY2tlZFN0YXR1cyhjb25zdCBDb250ZW50RXh0ZW5zaW9uczo6QmxvY2tlZFN0
YXR1cyYgYmxvY2tlZFN0YXR1cykKIHsKICAgICBDb250ZW50RXh0ZW5zaW9uczo6YXBwbHlCbG9j
a2VkU3RhdHVzVG9SZXF1ZXN0KGJsb2NrZWRTdGF0dXMsIG1fcmVzb3VyY2VSZXF1ZXN0KTsKIH0K
KwogI2VuZGlmCiAKIHZvaWQgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0Ojp1cGRhdGVSZWZlcnJlck9y
aWdpbkFuZFVzZXJBZ2VudEhlYWRlcnMoRnJhbWVMb2FkZXImIGZyYW1lTG9hZGVyLCBSZWZlcnJl
clBvbGljeSBkZWZhdWx0UG9saWN5KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Nh
Y2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdC5oCmluZGV4IDBlOGE0YzNmYjkzYmU1MTMyOTRkNGYw
NDVlOTllZjlhZTcxMDc2MDAuLmVlZWQxYTFmZmY0NTZmMmZjMzEzNjJiY2U0YWM2ZmZjODI3ZGZi
NjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJj
ZVJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3Vy
Y2VSZXF1ZXN0LmgKQEAgLTU4LDcgKzU4LDcgQEAgcHVibGljOgogICAgIGNvbnN0IFJlc291cmNl
TG9hZGVyT3B0aW9ucyYgb3B0aW9ucygpIGNvbnN0IHsgcmV0dXJuIG1fb3B0aW9uczsgfQogICAg
IHZvaWQgc2V0T3B0aW9ucyhjb25zdCBSZXNvdXJjZUxvYWRlck9wdGlvbnMmIG9wdGlvbnMpIHsg
bV9vcHRpb25zID0gb3B0aW9uczsgfQogICAgIGNvbnN0IHN0ZDo6b3B0aW9uYWw8UmVzb3VyY2VM
b2FkUHJpb3JpdHk+JiBwcmlvcml0eSgpIGNvbnN0IHsgcmV0dXJuIG1fcHJpb3JpdHk7IH0KLSAg
ICB2b2lkIHNldEluaXRpYXRvcihQYXNzUmVmUHRyPEVsZW1lbnQ+KTsKKyAgICB2b2lkIHNldElu
aXRpYXRvcihFbGVtZW50Jik7CiAgICAgdm9pZCBzZXRJbml0aWF0b3IoY29uc3QgQXRvbWljU3Ry
aW5nJiBuYW1lKTsKICAgICBjb25zdCBBdG9taWNTdHJpbmcmIGluaXRpYXRvck5hbWUoKSBjb25z
dDsKICAgICBib29sIGFsbG93c0NhY2hpbmcoKSBjb25zdCB7IHJldHVybiBtX29wdGlvbnMuY2Fj
aGluZ1BvbGljeSA9PSBDYWNoaW5nUG9saWN5OjpBbGxvd0NhY2hpbmc7IH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jb2NvYS9EaXNrQ2FjaGVNb25pdG9yLmggYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvci5oCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCA4NWRhZWM3MGEyMDljNzJkZWM5NmIyZGFmY2I0Yzc3NThkYmNlMjdkLi4w
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9jb2NvYS9EaXNrQ2FjaGVNb25pdG9yLmgKKysrIC9kZXYvbnVsbApAQCAtMSw2
MiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE0IEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoK
LSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywKLSAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4K
LSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI3ByYWdtYSBvbmNlCi0KLSNpbmNsdWRlICJSZXNvdXJj
ZVJlcXVlc3QuaCIKLSNpbmNsdWRlICJTZXNzaW9uSUQuaCIKLSNpbmNsdWRlIDx3dGYvUGFzc1Jl
ZlB0ci5oPgotCi10eXBlZGVmIGNvbnN0IHN0cnVjdCBfQ0ZDYWNoZWRVUkxSZXNwb25zZSogQ0ZD
YWNoZWRVUkxSZXNwb25zZVJlZjsKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBTaGFy
ZWRCdWZmZXI7Ci0KLWNsYXNzIERpc2tDYWNoZU1vbml0b3IgewotcHVibGljOgotICAgIHN0YXRp
YyB2b2lkIG1vbml0b3JGaWxlQmFja2luZ1N0b3JlQ3JlYXRpb24oY29uc3QgUmVzb3VyY2VSZXF1
ZXN0JiwgU2Vzc2lvbklELCBDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKTsKLSAgICBzdGF0aWMgUGFz
c1JlZlB0cjxTaGFyZWRCdWZmZXI+IHRyeUdldEZpbGVCYWNrZWRTaGFyZWRCdWZmZXJGcm9tQ0ZV
UkxDYWNoZWRSZXNwb25zZShDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKTsKLSAgICB2aXJ0dWFsIH5E
aXNrQ2FjaGVNb25pdG9yKCkgeyB9Ci0KLXByb3RlY3RlZDoKLSAgICBEaXNrQ2FjaGVNb25pdG9y
KGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIFNlc3Npb25JRCwgQ0ZDYWNoZWRVUkxSZXNwb25zZVJl
Zik7Ci0KLSAgICB2aXJ0dWFsIHZvaWQgcmVzb3VyY2VCZWNhbWVGaWxlQmFja2VkKFBhc3NSZWZQ
dHI8U2hhcmVkQnVmZmVyPik7Ci0KLSAgICBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlc291cmNl
UmVxdWVzdCgpIGNvbnN0IHsgcmV0dXJuIG1fcmVzb3VyY2VSZXF1ZXN0OyB9Ci0gICAgU2Vzc2lv
bklEIHNlc3Npb25JRCgpIGNvbnN0IHsgcmV0dXJuIG1fc2Vzc2lvbklEOyB9Ci0KLXByaXZhdGU6
Ci0gICAgUmVzb3VyY2VSZXF1ZXN0IG1fcmVzb3VyY2VSZXF1ZXN0OwotICAgIFNlc3Npb25JRCBt
X3Nlc3Npb25JRDsKLX07Ci0KLSNpZiAoUExBVEZPUk0oSU9TKSAmJiBfX0lQSE9ORV9PU19WRVJT
SU9OX01JTl9SRVFVSVJFRCA8IDgwMDAwKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19Y
X1ZFUlNJT05fTUlOX1JFUVVJUkVEIDwgMTA5MCkKLXZvaWQgRGlza0NhY2hlTW9uaXRvcjo6bW9u
aXRvckZpbGVCYWNraW5nU3RvcmVDcmVhdGlvbihjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBTZXNz
aW9uSUQsIENGQ2FjaGVkVVJMUmVzcG9uc2VSZWYpIHsgfQotUGFzc1JlZlB0cjxTaGFyZWRCdWZm
ZXI+IERpc2tDYWNoZU1vbml0b3I6OnRyeUdldEZpbGVCYWNrZWRTaGFyZWRCdWZmZXJGcm9tQ0ZV
UkxDYWNoZWRSZXNwb25zZShDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKSB7IHJldHVybiBudWxscHRy
OyB9Ci0jZW5kaWYKLQotfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvckNvY29hLmggYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvckNvY29hLmgKaW5kZXggMTg2YzM0YWY5
N2ZiZWViMzhmNjQzZDQxNzI3ZjE0OGY1MTZhYWE2ZC4uNjMwNGYxZjA2ZWQwMWFjMGRjZmY4ZDNk
YjNiNjUxNzdmMWY3OTIxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NvY29h
L0Rpc2tDYWNoZU1vbml0b3JDb2NvYS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jb2Nv
YS9EaXNrQ2FjaGVNb25pdG9yQ29jb2EuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmln
aHQgKEMpIDIwMTQgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0
IChDKSAyMDE0LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yNyw3ICsyNyw2IEBACiAKICNpbmNsdWRlICJSZXNv
dXJjZVJlcXVlc3QuaCIKICNpbmNsdWRlICJTZXNzaW9uSUQuaCIKLSNpbmNsdWRlIDx3dGYvUGFz
c1JlZlB0ci5oPgogCiB0eXBlZGVmIGNvbnN0IHN0cnVjdCBfQ0ZDYWNoZWRVUkxSZXNwb25zZSog
Q0ZDYWNoZWRVUkxSZXNwb25zZVJlZjsKIApAQCAtMzUsMjEgKzM0LDE5IEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogY2xhc3MgU2hhcmVkQnVmZmVyOwogCi1jbGFzcyBXRUJDT1JFX0VYUE9SVCBE
aXNrQ2FjaGVNb25pdG9yIHsKK2NsYXNzIERpc2tDYWNoZU1vbml0b3IgewogcHVibGljOgogICAg
IHN0YXRpYyB2b2lkIG1vbml0b3JGaWxlQmFja2luZ1N0b3JlQ3JlYXRpb24oY29uc3QgUmVzb3Vy
Y2VSZXF1ZXN0JiwgU2Vzc2lvbklELCBDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKTsKLSAgICBzdGF0
aWMgUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IHRyeUdldEZpbGVCYWNrZWRTaGFyZWRCdWZmZXJG
cm9tQ0ZVUkxDYWNoZWRSZXNwb25zZShDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKTsKLSAgICB2aXJ0
dWFsIH5EaXNrQ2FjaGVNb25pdG9yKCkgeyB9CisgICAgc3RhdGljIFJlZlB0cjxTaGFyZWRCdWZm
ZXI+IHRyeUdldEZpbGVCYWNrZWRTaGFyZWRCdWZmZXJGcm9tQ0ZVUkxDYWNoZWRSZXNwb25zZShD
RkNhY2hlZFVSTFJlc3BvbnNlUmVmKTsKIAotcHJvdGVjdGVkOgotICAgIFdFQkNPUkVfRVhQT1JU
IERpc2tDYWNoZU1vbml0b3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgU2Vzc2lvbklELCBDRkNh
Y2hlZFVSTFJlc3BvbnNlUmVmKTsKK3ByaXZhdGU6CisgICAgRGlza0NhY2hlTW9uaXRvcihjb25z
dCBSZXNvdXJjZVJlcXVlc3QmLCBTZXNzaW9uSUQsIENGQ2FjaGVkVVJMUmVzcG9uc2VSZWYpOwog
Ci0gICAgdmlydHVhbCB2b2lkIHJlc291cmNlQmVjYW1lRmlsZUJhY2tlZChTaGFyZWRCdWZmZXIm
KTsKKyAgICB2b2lkIHJlc291cmNlQmVjYW1lRmlsZUJhY2tlZChTaGFyZWRCdWZmZXImKTsKIAog
ICAgIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVzb3VyY2VSZXF1ZXN0KCkgY29uc3QgeyByZXR1
cm4gbV9yZXNvdXJjZVJlcXVlc3Q7IH0KICAgICBTZXNzaW9uSUQgc2Vzc2lvbklEKCkgY29uc3Qg
eyByZXR1cm4gbV9zZXNzaW9uSUQ7IH0KIAotcHJpdmF0ZToKICAgICBSZXNvdXJjZVJlcXVlc3Qg
bV9yZXNvdXJjZVJlcXVlc3Q7CiAgICAgU2Vzc2lvbklEIG1fc2Vzc2lvbklEOwogfTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jb2NvYS9EaXNrQ2FjaGVNb25pdG9yQ29jb2Eu
bW0gYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvckNvY29hLm1t
CmluZGV4IDY4NTgwMzYwYjhlYmNkY2FjYThhM2U5Mzg0OThhMTk3NTUyZGMxNmEuLjZhYzQ1YTE2
ZmU5NmMzOGE3MjkyOGMxOWM1NWRjMWVlM2NjZWFhNGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9jb2NvYS9EaXNrQ2FjaGVNb25pdG9yQ29jb2EubW0KKysrIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2NvY29hL0Rpc2tDYWNoZU1vbml0b3JDb2NvYS5tbQpAQCAtMjksMTEgKzI5
LDggQEAKICNpbXBvcnQgIkNGTmV0d29ya1NQSS5oIgogI2ltcG9ydCAiQ2FjaGVkUmVzb3VyY2Uu
aCIKICNpbXBvcnQgIk1lbW9yeUNhY2hlLmgiCi0jaW1wb3J0ICJSZXNvdXJjZVJlcXVlc3QuaCIK
LSNpbXBvcnQgIlNlc3Npb25JRC5oIgogI2ltcG9ydCAiU2hhcmVkQnVmZmVyLmgiCiAjaW1wb3J0
IDx3dGYvTWFpblRocmVhZC5oPgotI2ltcG9ydCA8d3RmL1Bhc3NSZWZQdHIuaD4KICNpbXBvcnQg
PHd0Zi9SZWZQdHIuaD4KIAogI2lmIFVTRShXRUJfVEhSRUFEKQpAQCAtNDUsOSArNDIsOSBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAvLyBUaGUgbWF4aW11bSBudW1iZXIgb2Ygc2Vjb25kcyB3ZSds
bCB0cnkgdG8gd2FpdCBmb3IgYSByZXNvdXJjZSB0byBiZSBkaXNrIGNhY2hlZCBiZWZvcmUgd2Ug
Zm9yZ2V0IHRoZSByZXF1ZXN0Lgogc3RhdGljIGNvbnN0IGRvdWJsZSBkaXNrQ2FjaGVNb25pdG9y
VGltZW91dCA9IDIwOwogCi1QYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gRGlza0NhY2hlTW9uaXRv
cjo6dHJ5R2V0RmlsZUJhY2tlZFNoYXJlZEJ1ZmZlckZyb21DRlVSTENhY2hlZFJlc3BvbnNlKENG
Q2FjaGVkVVJMUmVzcG9uc2VSZWYgY2FjaGVkUmVzcG9uc2UpCitSZWZQdHI8U2hhcmVkQnVmZmVy
PiBEaXNrQ2FjaGVNb25pdG9yOjp0cnlHZXRGaWxlQmFja2VkU2hhcmVkQnVmZmVyRnJvbUNGVVJM
Q2FjaGVkUmVzcG9uc2UoQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZiBjYWNoZWRSZXNwb25zZSkKIHsK
LSAgICBDRkRhdGFSZWYgZGF0YSA9IF9DRkNhY2hlZFVSTFJlc3BvbnNlR2V0TWVtTWFwcGVkRGF0
YShjYWNoZWRSZXNwb25zZSk7CisgICAgYXV0byBkYXRhID0gX0NGQ2FjaGVkVVJMUmVzcG9uc2VH
ZXRNZW1NYXBwZWREYXRhKGNhY2hlZFJlc3BvbnNlKTsKICAgICBpZiAoIWRhdGEpCiAgICAgICAg
IHJldHVybiBudWxscHRyOwogCkBAIC04Nyw4ICs4NCw3IEBAIERpc2tDYWNoZU1vbml0b3I6OkRp
c2tDYWNoZU1vbml0b3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBTZXNzaW9uSUQg
c2VzCiAgICAgZGlzcGF0Y2hfYWZ0ZXIoZGlzcGF0Y2hfdGltZShESVNQQVRDSF9USU1FX05PVywg
TlNFQ19QRVJfU0VDICogZGlza0NhY2hlTW9uaXRvclRpbWVvdXQpLCBkaXNwYXRjaF9nZXRfbWFp
bl9xdWV1ZSgpLCBjYW5jZWxNb25pdG9yQmxvY2tUb1J1bik7CiAKICAgICAvLyBTZXQgdXAgdGhl
IGRpc2sgY2FjaGluZyBjYWxsYmFjayB0byBjcmVhdGUgdGhlIFNoYXJlYWJsZVJlc291cmNlIGFu
ZCBzZW5kIGl0IHRvIHRoZSBXZWJQcm9jZXNzLgotICAgIENGQ2FjaGVkVVJMUmVzcG9uc2VDYWxs
QmFja0Jsb2NrIGJsb2NrID0gXihDRkNhY2hlZFVSTFJlc3BvbnNlUmVmIGNhY2hlZFJlc3BvbnNl
KQotICAgIHsKKyAgICBhdXRvIGJsb2NrID0gXihDRkNhY2hlZFVSTFJlc3BvbnNlUmVmIGNhY2hl
ZFJlc3BvbnNlKSB7CiAgICAgICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CiAgICAgICAgIC8v
IElmIHRoZSBtb25pdG9yIGlzbid0IHRoZXJlIHRoZW4gaXQgdGltZWQgb3V0IGJlZm9yZSB0aGlz
IHJlc291cmNlIHdhcyBjYWNoZWQgdG8gZGlzay4KICAgICAgICAgaWYgKCFyYXdNb25pdG9yKQpA
QCAtOTcsNyArOTMsNyBAQCBEaXNrQ2FjaGVNb25pdG9yOjpEaXNrQ2FjaGVNb25pdG9yKGNvbnN0
IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgU2Vzc2lvbklEIHNlcwogICAgICAgICBhdXRvIG1v
bml0b3IgPSBzdGQ6OnVuaXF1ZV9wdHI8RGlza0NhY2hlTW9uaXRvcj4ocmF3TW9uaXRvcik7IC8v
IEJhbGFuY2VkIGJ5ICJuZXcgRGlza0NhY2hlTW9uaXRvciIgaW4gbW9uaXRvckZpbGVCYWNraW5n
U3RvcmVDcmVhdGlvbi4KICAgICAgICAgcmF3TW9uaXRvciA9IG51bGxwdHI7CiAKLSAgICAgICAg
UmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZmlsZUJhY2tlZEJ1ZmZlciA9IERpc2tDYWNoZU1vbml0b3I6
OnRyeUdldEZpbGVCYWNrZWRTaGFyZWRCdWZmZXJGcm9tQ0ZVUkxDYWNoZWRSZXNwb25zZShjYWNo
ZWRSZXNwb25zZSk7CisgICAgICAgIGF1dG8gZmlsZUJhY2tlZEJ1ZmZlciA9IERpc2tDYWNoZU1v
bml0b3I6OnRyeUdldEZpbGVCYWNrZWRTaGFyZWRCdWZmZXJGcm9tQ0ZVUkxDYWNoZWRSZXNwb25z
ZShjYWNoZWRSZXNwb25zZSk7CiAgICAgICAgIGlmICghZmlsZUJhY2tlZEJ1ZmZlcikKICAgICAg
ICAgICAgIHJldHVybjsKIApAQCAtMTA1LDggKzEwMSw3IEBAIERpc2tDYWNoZU1vbml0b3I6OkRp
c2tDYWNoZU1vbml0b3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBTZXNzaW9uSUQg
c2VzCiAgICAgfTsKIAogI2lmIFVTRShXRUJfVEhSRUFEKQotICAgIENGQ2FjaGVkVVJMUmVzcG9u
c2VDYWxsQmFja0Jsb2NrIGJsb2NrVG9SdW4gPSBeKENGQ2FjaGVkVVJMUmVzcG9uc2VSZWYgcmVz
cG9uc2UpCi0gICAgeworICAgIGF1dG8gYmxvY2tUb1J1biA9IF4oQ0ZDYWNoZWRVUkxSZXNwb25z
ZVJlZiByZXNwb25zZSkgewogICAgICAgICBDRlJldGFpbihyZXNwb25zZSk7CiAgICAgICAgIFdl
YlRocmVhZFJ1biheewogICAgICAgICAgICAgYmxvY2socmVzcG9uc2UpOwpAQCAtMTE0LDE0ICsx
MDksMTQgQEAgRGlza0NhY2hlTW9uaXRvcjo6RGlza0NhY2hlTW9uaXRvcihjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmIHJlcXVlc3QsIFNlc3Npb25JRCBzZXMKICAgICAgICAgfSk7CiAgICAgfTsKICNl
bHNlCi0gICAgQ0ZDYWNoZWRVUkxSZXNwb25zZUNhbGxCYWNrQmxvY2sgYmxvY2tUb1J1biA9IGJs
b2NrOworICAgIGF1dG8gYmxvY2tUb1J1biA9IGJsb2NrOwogI2VuZGlmCiAgICAgX0NGQ2FjaGVk
VVJMUmVzcG9uc2VTZXRCZWNhbWVGaWxlQmFja2VkQ2FsbEJhY2tCbG9jayhjYWNoZWRSZXNwb25z
ZSwgYmxvY2tUb1J1biwgZGlzcGF0Y2hfZ2V0X21haW5fcXVldWUoKSk7CiB9CiAKIHZvaWQgRGlz
a0NhY2hlTW9uaXRvcjo6cmVzb3VyY2VCZWNhbWVGaWxlQmFja2VkKFNoYXJlZEJ1ZmZlciYgZmls
ZUJhY2tlZEJ1ZmZlcikKIHsKLSAgICBDYWNoZWRSZXNvdXJjZSogcmVzb3VyY2UgPSBNZW1vcnlD
YWNoZTo6c2luZ2xldG9uKCkucmVzb3VyY2VGb3JSZXF1ZXN0KG1fcmVzb3VyY2VSZXF1ZXN0LCBt
X3Nlc3Npb25JRCk7CisgICAgYXV0byogcmVzb3VyY2UgPSBNZW1vcnlDYWNoZTo6c2luZ2xldG9u
KCkucmVzb3VyY2VGb3JSZXF1ZXN0KG1fcmVzb3VyY2VSZXF1ZXN0LCBtX3Nlc3Npb25JRCk7CiAg
ICAgaWYgKCFyZXNvdXJjZSkKICAgICAgICAgcmV0dXJuOwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2ljb24vSWNvbkRhdGFiYXNlLmNwcAppbmRleCBlZTQzN2U4NjI4ZWJmNGU4NjMyN2NjNzcw
MzBmNWY2OTRlMzBiYjJkLi5kY2NlMGE1YzNjZDgxNmNjODQ3YmM3YWZlMmJhMjE2N2FjZDA4ODBj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2UuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL0ljb25EYXRhYmFzZS5jcHAKQEAgLTUz
Myw3ICs1MzMsNyBAQCB2b2lkIEljb25EYXRhYmFzZTo6cGVyZm9ybVJlbGVhc2VJY29uRm9yUGFn
ZVVSTChjb25zdCBTdHJpbmcmIHBhZ2VVUkxPcmlnaW5hbCwgaQogICAgIGRlbGV0ZSBwYWdlUmVj
b3JkOwogfQogCi12b2lkIEljb25EYXRhYmFzZTo6c2V0SWNvbkRhdGFGb3JJY29uVVJMKFBhc3NS
ZWZQdHI8U2hhcmVkQnVmZmVyPiBkYXRhT3JpZ2luYWwsIGNvbnN0IFN0cmluZyYgaWNvblVSTE9y
aWdpbmFsKQordm9pZCBJY29uRGF0YWJhc2U6OnNldEljb25EYXRhRm9ySWNvblVSTChTaGFyZWRC
dWZmZXIqIGRhdGFPcmlnaW5hbCwgY29uc3QgU3RyaW5nJiBpY29uVVJMT3JpZ2luYWwpCiB7ICAg
IAogICAgIEFTU0VSVF9OT1RfU1lOQ19USFJFQUQoKTsKICAgICAKQEAgLTU0Miw3ICs1NDIsNyBA
QCB2b2lkIEljb25EYXRhYmFzZTo6c2V0SWNvbkRhdGFGb3JJY29uVVJMKFBhc3NSZWZQdHI8U2hh
cmVkQnVmZmVyPiBkYXRhT3JpZ2luYWwsCiAgICAgaWYgKCFpc09wZW4oKSB8fCBpY29uVVJMT3Jp
Z2luYWwuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm47CiAgICAgCi0gICAgUmVmUHRyPFNoYXJl
ZEJ1ZmZlcj4gZGF0YSA9IGRhdGFPcmlnaW5hbCA/IGRhdGFPcmlnaW5hbC0+Y29weSgpIDogUGFz
c1JlZlB0cjxTaGFyZWRCdWZmZXI+KG51bGxwdHIpOworICAgIGF1dG8gZGF0YSA9IGRhdGFPcmln
aW5hbCA/IFJlZlB0cjxTaGFyZWRCdWZmZXI+IHsgZGF0YU9yaWdpbmFsLT5jb3B5KCkgfSA6IG51
bGxwdHI7CiAgICAgU3RyaW5nIGljb25VUkwgPSBpY29uVVJMT3JpZ2luYWwuaXNvbGF0ZWRDb3B5
KCk7CiAgICAgCiAgICAgVmVjdG9yPFN0cmluZz4gcGFnZVVSTHM7CkBAIC04ODUsMTggKzg4NSwx
NyBAQCBTdHJpbmcgSWNvbkRhdGFiYXNlOjpkZWZhdWx0RGF0YWJhc2VGaWxlbmFtZSgpCiB9CiAK
IC8vIFVubGlrZSBnZXRPckNyZWF0ZVBhZ2VVUkxSZWNvcmQoKSwgZ2V0T3JDcmVhdGVJY29uUmVj
b3JkKCkgZG9lcyBub3QgbWFyayB0aGUgaWNvbiBhcyAiaW50ZXJlc3RlZCBpbiBpbXBvcnQiCi1Q
YXNzUmVmUHRyPEljb25SZWNvcmQ+IEljb25EYXRhYmFzZTo6Z2V0T3JDcmVhdGVJY29uUmVjb3Jk
KGNvbnN0IFN0cmluZyYgaWNvblVSTCkKK1JlZjxJY29uUmVjb3JkPiBJY29uRGF0YWJhc2U6Omdl
dE9yQ3JlYXRlSWNvblJlY29yZChjb25zdCBTdHJpbmcmIGljb25VUkwpCiB7CiAgICAgLy8gQ2xp
ZW50cyBvZiBnZXRPckNyZWF0ZUljb25SZWNvcmQoKSBhcmUgcmVxdWlyZWQgdG8gYWNxdWlyZSB0
aGUgbV91cmxBbmRJY29uTG9jayBiZWZvcmUgY2FsbGluZyB0aGlzIG1ldGhvZAogICAgIEFTU0VS
VCghbV91cmxBbmRJY29uTG9jay50cnlMb2NrKCkpOwogCi0gICAgaWYgKEljb25SZWNvcmQqIGlj
b24gPSBtX2ljb25VUkxUb1JlY29yZE1hcC5nZXQoaWNvblVSTCkpCi0gICAgICAgIHJldHVybiBp
Y29uOworICAgIGlmIChhdXRvKiBpY29uID0gbV9pY29uVVJMVG9SZWNvcmRNYXAuZ2V0KGljb25V
UkwpKQorICAgICAgICByZXR1cm4gKmljb247CiAKICAgICBhdXRvIG5ld0ljb24gPSBJY29uUmVj
b3JkOjpjcmVhdGUoaWNvblVSTCk7CiAgICAgbV9pY29uVVJMVG9SZWNvcmRNYXAuc2V0KGljb25V
UkwsIG5ld0ljb24ucHRyKCkpOwotCi0gICAgcmV0dXJuIFdURk1vdmUobmV3SWNvbik7CisgICAg
cmV0dXJuIG5ld0ljb247CiB9CiAKIC8vIFRoaXMgbWV0aG9kIHJldHJpZXZlcyB0aGUgZXhpc3Rp
bmcgUGFnZVVSTFJlY29yZCwgb3IgY3JlYXRlcyBhIG5ldyBvbmUgYW5kIG1hcmtzIGl0IGFzICJp
bnRlcmVzdGVkIGluIHRoZSBpbXBvcnQiIGZvciBsYXRlciBub3RpZmljYXRpb24KQEAgLTE5MTcs
NyArMTkxNiw3IEBAIGludDY0X3QgSWNvbkRhdGFiYXNlOjphZGRJY29uVVJMVG9TUUxEYXRhYmFz
ZShjb25zdCBTdHJpbmcmIGljb25VUkwpCiAgICAgcmV0dXJuIGljb25JRDsKIH0KIAotUGFzc1Jl
ZlB0cjxTaGFyZWRCdWZmZXI+IEljb25EYXRhYmFzZTo6Z2V0SW1hZ2VEYXRhRm9ySWNvblVSTEZy
b21TUUxEYXRhYmFzZShjb25zdCBTdHJpbmcmIGljb25VUkwpCitSZWZQdHI8U2hhcmVkQnVmZmVy
PiBJY29uRGF0YWJhc2U6OmdldEltYWdlRGF0YUZvckljb25VUkxGcm9tU1FMRGF0YWJhc2UoY29u
c3QgU3RyaW5nJiBpY29uVVJMKQogewogICAgIEFTU0VSVF9JQ09OX1NZTkNfVEhSRUFEKCk7CiAg
ICAgCkBAIC0xOTM2LDcgKzE5MzUsNyBAQCBQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gSWNvbkRh
dGFiYXNlOjpnZXRJbWFnZURhdGFGb3JJY29uVVJMRnJvbVNRTERhdGFiYXNlKGNvbgogCiAgICAg
bV9nZXRJbWFnZURhdGFGb3JJY29uVVJMU3RhdGVtZW50LT5yZXNldCgpOwogICAgIAotICAgIHJl
dHVybiBXVEZNb3ZlKGltYWdlRGF0YSk7CisgICAgcmV0dXJuIGltYWdlRGF0YTsKIH0KIAogdm9p
ZCBJY29uRGF0YWJhc2U6OnJlbW92ZUljb25Gcm9tU1FMRGF0YWJhc2UoY29uc3QgU3RyaW5nJiBp
Y29uVVJMKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkRhdGFi
YXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2UuaAppbmRleCBk
NWQ0NTJjZWZkMzdjMGFjZTgxMmFkYTM1MDM0NzBhZTYyOGQ3YzllLi4wNjFhZjRhMTI1NTc3MWRl
MTFhMzJmNTY4M2MwZWZkYTU5MjkzYjlkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvaWNvbi9JY29uRGF0YWJhc2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9J
Y29uRGF0YWJhc2UuaApAQCAtNDUsNiArNDUsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAvLyBE
dW1teSB2ZXJzaW9uIG9mIEljb25EYXRhYmFzZSB0aGF0IGRvZXMgbm90aGluZy4KIGNsYXNzIElj
b25EYXRhYmFzZSBmaW5hbCA6IHB1YmxpYyBJY29uRGF0YWJhc2VCYXNlIHsKICAgICBXVEZfTUFL
RV9GQVNUX0FMTE9DQVRFRDsKKwogcHVibGljOgogICAgIHN0YXRpYyB2b2lkIGRlbGF5RGF0YWJh
c2VDbGVhbnVwKCkgeyB9CiAgICAgc3RhdGljIHZvaWQgYWxsb3dEYXRhYmFzZUNsZWFudXAoKSB7
IH0KQEAgLTcwLDMyICs3MSwzMiBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgSWNvbkRh
dGFiYXNlKCk7CiAgICAgfkljb25EYXRhYmFzZSgpOwogCi0gICAgV0VCQ09SRV9FWFBPUlQgdm9p
ZCBzZXRDbGllbnQoSWNvbkRhdGFiYXNlQ2xpZW50Kikgb3ZlcnJpZGU7CisgICAgV0VCQ09SRV9F
WFBPUlQgdm9pZCBzZXRDbGllbnQoSWNvbkRhdGFiYXNlQ2xpZW50KikgZmluYWw7CiAKLSAgICBX
RUJDT1JFX0VYUE9SVCBib29sIG9wZW4oY29uc3QgU3RyaW5nJiBkaXJlY3RvcnksIGNvbnN0IFN0
cmluZyYgZmlsZW5hbWUpIG92ZXJyaWRlOwotICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgY2xvc2Uo
KSBvdmVycmlkZTsKKyAgICBXRUJDT1JFX0VYUE9SVCBib29sIG9wZW4oY29uc3QgU3RyaW5nJiBk
aXJlY3RvcnksIGNvbnN0IFN0cmluZyYgZmlsZW5hbWUpIGZpbmFsOworICAgIFdFQkNPUkVfRVhQ
T1JUIHZvaWQgY2xvc2UoKSBmaW5hbDsKICAgICAgICAgICAgIAotICAgIFdFQkNPUkVfRVhQT1JU
IHZvaWQgcmVtb3ZlQWxsSWNvbnMoKSBvdmVycmlkZTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lk
IHJlbW92ZUFsbEljb25zKCkgZmluYWw7CiAKICAgICB2b2lkIHJlYWRJY29uRm9yUGFnZVVSTEZy
b21EaXNrKGNvbnN0IFN0cmluZyYpOwogCi0gICAgV0VCQ09SRV9FWFBPUlQgSW1hZ2UqIGRlZmF1
bHRJY29uKGNvbnN0IEludFNpemUmKSBvdmVycmlkZTsKKyAgICBXRUJDT1JFX0VYUE9SVCBJbWFn
ZSogZGVmYXVsdEljb24oY29uc3QgSW50U2l6ZSYpIGZpbmFsOwogCi0gICAgV0VCQ09SRV9FWFBP
UlQgdm9pZCByZXRhaW5JY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmKSBvdmVycmlkZTsKLSAg
ICBXRUJDT1JFX0VYUE9SVCB2b2lkIHJlbGVhc2VJY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcm
KSBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldEljb25EYXRhRm9ySWNvblVS
TChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZGF0YSwgY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7
Ci0gICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRJY29uVVJMRm9yUGFnZVVSTChjb25zdCBTdHJp
bmcmIGljb25VUkwsIGNvbnN0IFN0cmluZyYgcGFnZVVSTCkgb3ZlcnJpZGU7CisgICAgV0VCQ09S
RV9FWFBPUlQgdm9pZCByZXRhaW5JY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmKSBmaW5hbDsK
KyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHJlbGVhc2VJY29uRm9yUGFnZVVSTChjb25zdCBTdHJp
bmcmKSBmaW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldEljb25EYXRhRm9ySWNvblVS
TChTaGFyZWRCdWZmZXIqIGRhdGEsIGNvbnN0IFN0cmluZyYgaWNvblVSTCkgZmluYWw7CisgICAg
V0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRJY29uVVJMRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIGlj
b25VUkwsIGNvbnN0IFN0cmluZyYgcGFnZVVSTCkgZmluYWw7CiAKLSAgICBXRUJDT1JFX0VYUE9S
VCBJbWFnZSogc3luY2hyb25vdXNJY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmLCBjb25zdCBJ
bnRTaXplJikgb3ZlcnJpZGU7Ci0gICAgTmF0aXZlSW1hZ2VQdHIgc3luY2hyb25vdXNOYXRpdmVJ
Y29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIHBhZ2VVUkxPcmlnaW5hbCwgY29uc3QgSW50U2l6
ZSYpIG92ZXJyaWRlOwotICAgIFdFQkNPUkVfRVhQT1JUIFN0cmluZyBzeW5jaHJvbm91c0ljb25V
UkxGb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAgIGJvb2wgc3luY2hyb25v
dXNJY29uRGF0YUtub3duRm9ySWNvblVSTChjb25zdCBTdHJpbmcmKSBvdmVycmlkZTsKLSAgICBX
RUJDT1JFX0VYUE9SVCBJY29uTG9hZERlY2lzaW9uIHN5bmNocm9ub3VzTG9hZERlY2lzaW9uRm9y
SWNvblVSTChjb25zdCBTdHJpbmcmLCBEb2N1bWVudExvYWRlciopIG92ZXJyaWRlOworICAgIFdF
QkNPUkVfRVhQT1JUIEltYWdlKiBzeW5jaHJvbm91c0ljb25Gb3JQYWdlVVJMKGNvbnN0IFN0cmlu
ZyYsIGNvbnN0IEludFNpemUmKSBmaW5hbDsKKyAgICBOYXRpdmVJbWFnZVB0ciBzeW5jaHJvbm91
c05hdGl2ZUljb25Gb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYgcGFnZVVSTE9yaWdpbmFsLCBjb25z
dCBJbnRTaXplJikgZmluYWw7CisgICAgV0VCQ09SRV9FWFBPUlQgU3RyaW5nIHN5bmNocm9ub3Vz
SWNvblVSTEZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikgZmluYWw7CisgICAgYm9vbCBzeW5jaHJv
bm91c0ljb25EYXRhS25vd25Gb3JJY29uVVJMKGNvbnN0IFN0cmluZyYpIGZpbmFsOworICAgIFdF
QkNPUkVfRVhQT1JUIEljb25Mb2FkRGVjaXNpb24gc3luY2hyb25vdXNMb2FkRGVjaXNpb25Gb3JJ
Y29uVVJMKGNvbnN0IFN0cmluZyYsIERvY3VtZW50TG9hZGVyKikgZmluYWw7CiAKLSAgICBXRUJD
T1JFX0VYUE9SVCB2b2lkIHNldEVuYWJsZWQoYm9vbCkgb3ZlcnJpZGU7Ci0gICAgV0VCQ09SRV9F
WFBPUlQgYm9vbCBpc0VuYWJsZWQoKSBjb25zdCBvdmVycmlkZTsKKyAgICBXRUJDT1JFX0VYUE9S
VCB2b2lkIHNldEVuYWJsZWQoYm9vbCk7CisgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBpc0VuYWJs
ZWQoKSBjb25zdCBmaW5hbDsKIAotICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0UHJpdmF0ZUJy
b3dzaW5nRW5hYmxlZChib29sIGZsYWcpIG92ZXJyaWRlOworICAgIFdFQkNPUkVfRVhQT1JUIHZv
aWQgc2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZChib29sIGZsYWcpIGZpbmFsOwogICAgIGJvb2wg
aXNQcml2YXRlQnJvd3NpbmdFbmFibGVkKCkgY29uc3Q7CiAKICAgICBXRUJDT1JFX0VYUE9SVCBz
dGF0aWMgdm9pZCBkZWxheURhdGFiYXNlQ2xlYW51cCgpOwpAQCAtMTAzLDEwICsxMDQsMTAgQEAg
cHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyB2b2lkIGNoZWNrSW50ZWdyaXR5QmVm
b3JlT3BlbmluZygpOwogCiAgICAgLy8gU3VwcG9ydCBmb3IgV2ViQ29yZVN0YXRpc3RpY3MgaW4g
V2ViS2l0Ci0gICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90IHBhZ2VVUkxNYXBwaW5nQ291bnQoKSBv
dmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCBzaXplX3QgcmV0YWluZWRQYWdlVVJMQ291bnQo
KSBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCBzaXplX3QgaWNvblJlY29yZENvdW50KCkg
b3ZlcnJpZGU7Ci0gICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90IGljb25SZWNvcmRDb3VudFdpdGhE
YXRhKCkgb3ZlcnJpZGU7CisgICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90IHBhZ2VVUkxNYXBwaW5n
Q291bnQoKSBmaW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCBzaXplX3QgcmV0YWluZWRQYWdlVVJM
Q291bnQoKSBmaW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCBzaXplX3QgaWNvblJlY29yZENvdW50
KCkgZmluYWw7CisgICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90IGljb25SZWNvcmRDb3VudFdpdGhE
YXRhKCkgZmluYWw7CiAKIHByaXZhdGU6CiAgICAgZnJpZW5kIEljb25EYXRhYmFzZUJhc2UmIGlj
b25EYXRhYmFzZSgpOwpAQCAtMTMwLDEyICsxMzEsMTIgQEAgcHJpdmF0ZToKIAogLy8gKioqIEFu
eSBUaHJlYWQgKioqCiBwdWJsaWM6Ci0gICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBpc09wZW4oKSBj
b25zdCBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCBTdHJpbmcgZGF0YWJhc2VQYXRoKCkg
Y29uc3Qgb3ZlcnJpZGU7CisgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBpc09wZW4oKSBjb25zdCBm
aW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCBTdHJpbmcgZGF0YWJhc2VQYXRoKCkgY29uc3QgZmlu
YWw7CiAgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFN0cmluZyBkZWZhdWx0RGF0YWJhc2VGaWxl
bmFtZSgpOwogCiBwcml2YXRlOgotICAgIFBhc3NSZWZQdHI8SWNvblJlY29yZD4gZ2V0T3JDcmVh
dGVJY29uUmVjb3JkKGNvbnN0IFN0cmluZyYgaWNvblVSTCk7CisgICAgUmVmPEljb25SZWNvcmQ+
IGdldE9yQ3JlYXRlSWNvblJlY29yZChjb25zdCBTdHJpbmcmIGljb25VUkwpOwogICAgIFBhZ2VV
UkxSZWNvcmQqIGdldE9yQ3JlYXRlUGFnZVVSTFJlY29yZChjb25zdCBTdHJpbmcmIHBhZ2VVUkwp
OwogICAgIAogICAgIGJvb2wgbV9pc0VuYWJsZWQ7CkBAIC0xNzgsNyArMTc5LDcgQEAgcHJpdmF0
ZToKIAogLy8gKioqIFN5bmMgVGhyZWFkIE9ubHkgKioqCiBwdWJsaWM6Ci0gICAgV0VCQ09SRV9F
WFBPUlQgYm9vbCBzaG91bGRTdG9wVGhyZWFkQWN0aXZpdHkoKSBjb25zdCBvdmVycmlkZTsKKyAg
ICBXRUJDT1JFX0VYUE9SVCBib29sIHNob3VsZFN0b3BUaHJlYWRBY3Rpdml0eSgpIGNvbnN0IGZp
bmFsOwogCiBwcml2YXRlOiAgICAKICAgICBzdGF0aWMgdm9pZCBpY29uRGF0YWJhc2VTeW5jVGhy
ZWFkU3RhcnQodm9pZCAqKTsKQEAgLTIxMyw3ICsyMTQsNyBAQCBwcml2YXRlOgogICAgIHZvaWQg
cmVtb3ZlUGFnZVVSTEZyb21TUUxEYXRhYmFzZShjb25zdCBTdHJpbmcmIHBhZ2VVUkwpOwogICAg
IGludDY0X3QgZ2V0SWNvbklERm9ySWNvblVSTEZyb21TUUxEYXRhYmFzZShjb25zdCBTdHJpbmcm
IGljb25VUkwpOwogICAgIGludDY0X3QgYWRkSWNvblVSTFRvU1FMRGF0YWJhc2UoY29uc3QgU3Ry
aW5nJik7Ci0gICAgUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGdldEltYWdlRGF0YUZvckljb25V
UkxGcm9tU1FMRGF0YWJhc2UoY29uc3QgU3RyaW5nJiBpY29uVVJMKTsKKyAgICBSZWZQdHI8U2hh
cmVkQnVmZmVyPiBnZXRJbWFnZURhdGFGb3JJY29uVVJMRnJvbVNRTERhdGFiYXNlKGNvbnN0IFN0
cmluZyYgaWNvblVSTCk7CiAgICAgdm9pZCByZW1vdmVJY29uRnJvbVNRTERhdGFiYXNlKGNvbnN0
IFN0cmluZyYgaWNvblVSTCk7CiAgICAgdm9pZCB3cml0ZUljb25TbmFwc2hvdFRvU1FMRGF0YWJh
c2UoY29uc3QgSWNvblNuYXBzaG90Jik7ICAgIAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2VCYXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
aWNvbi9JY29uRGF0YWJhc2VCYXNlLmgKaW5kZXggOTg2ZDRkOTZmNTcyN2Y0NmExZjJlODc1MDM5
ZTZjODYwMzJmNjM4MS4uZDQwNTFiOTM2YzcxMGZjMjljNzFkNTJlNDcyN2JhODViMGFlYjk5NyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlQmFzZS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL0ljb25EYXRhYmFzZUJhc2UuaApAQCAt
MjgsNyArMjgsNiBAQAogI2luY2x1ZGUgIk5hdGl2ZUltYWdlLmgiCiAjaW5jbHVkZSA8d3RmL0Zv
cndhcmQuaD4KICNpbmNsdWRlIDx3dGYvTm9uY29weWFibGUuaD4KLSNpbmNsdWRlIDx3dGYvUGFz
c1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKQEAgLTM5LDExICszOCw3IEBAIGNsYXNzIEltYWdlOwogY2xhc3MgSW50U2l6ZTsKIGNs
YXNzIFNoYXJlZEJ1ZmZlcjsKIAotZW51bSBJY29uTG9hZERlY2lzaW9uIHsKLSAgICBJY29uTG9h
ZFllcywKLSAgICBJY29uTG9hZE5vLAotICAgIEljb25Mb2FkVW5rbm93bgotfTsKK2VudW0gSWNv
bkxvYWREZWNpc2lvbiB7IEljb25Mb2FkWWVzLCBJY29uTG9hZE5vLCBJY29uTG9hZFVua25vd24g
fTsKIAogY2xhc3MgQ2FsbGJhY2tCYXNlIDogcHVibGljIFJlZkNvdW50ZWQ8Q2FsbGJhY2tCYXNl
PiB7CiBwdWJsaWM6CkBAIC0xMzQsNyArMTI5LDcgQEAgcHVibGljOgogICAgICAgICBtX2NhbGxi
YWNrKHJlc3VsdCwgY29udGV4dCgpKTsKICAgICAgICAgbV9jYWxsYmFjayA9IG51bGxwdHI7CiAg
ICAgfQotICAgIAorCiAgICAgdm9pZCBpbnZhbGlkYXRlKCkKICAgICB7CiAgICAgICAgIG1fY2Fs
bGJhY2sgPSBudWxscHRyOwpAQCAtMTUxLDI2ICsxNDYsMjIgQEAgcHJpdmF0ZToKICAgICBDYWxs
YmFja0Z1bmN0aW9uIG1fY2FsbGJhY2s7CiB9OwogCi10eXBlZGVmIEVudW1DYWxsYmFjazxJY29u
TG9hZERlY2lzaW9uPiBJY29uTG9hZERlY2lzaW9uQ2FsbGJhY2s7Ci10eXBlZGVmIE9iamVjdENh
bGxiYWNrPFNoYXJlZEJ1ZmZlcio+IEljb25EYXRhQ2FsbGJhY2s7Cit1c2luZyBJY29uTG9hZERl
Y2lzaW9uQ2FsbGJhY2sgPSBFbnVtQ2FsbGJhY2s8SWNvbkxvYWREZWNpc2lvbj47Cit1c2luZyBJ
Y29uRGF0YUNhbGxiYWNrID0gT2JqZWN0Q2FsbGJhY2s8U2hhcmVkQnVmZmVyKj47CiAKIGNsYXNz
IFdFQkNPUkVfRVhQT1JUIEljb25EYXRhYmFzZUJhc2UgewogICAgIFdURl9NQUtFX05PTkNPUFlB
QkxFKEljb25EYXRhYmFzZUJhc2UpOwogCi1wcm90ZWN0ZWQ6Ci0gICAgSWNvbkRhdGFiYXNlQmFz
ZSgpIHsgfQotCiBwdWJsaWM6CiAgICAgdmlydHVhbCB+SWNvbkRhdGFiYXNlQmFzZSgpIHsgfQog
Ci0gICAgLy8gVXNlZCBpbnRlcm5hbGx5IGJ5IFdlYkNvcmUKICAgICB2aXJ0dWFsIGJvb2wgaXNF
bmFibGVkKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KLSAgICAgICAgCisKICAgICB2aXJ0dWFs
IHZvaWQgcmV0YWluSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikgeyB9CiAgICAgdmlydHVh
bCB2b2lkIHJlbGVhc2VJY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmKSB7IH0KIAotICAgIHZp
cnR1YWwgdm9pZCBzZXRJY29uVVJMRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmLCBjb25zdCBTdHJp
bmcmKSB7IH0KLSAgICB2aXJ0dWFsIHZvaWQgc2V0SWNvbkRhdGFGb3JJY29uVVJMKFBhc3NSZWZQ
dHI8U2hhcmVkQnVmZmVyPiwgY29uc3QgU3RyaW5nJikgeyB9CisgICAgdmlydHVhbCB2b2lkIHNl
dEljb25VUkxGb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYgLyppY29uVVJMKi8sIGNvbnN0IFN0cmlu
ZyYgLypwYWdlVVJMKi8pIHsgfQorICAgIHZpcnR1YWwgdm9pZCBzZXRJY29uRGF0YUZvckljb25V
UkwoU2hhcmVkQnVmZmVyKiwgY29uc3QgU3RyaW5nJiAvKmljb25VUkwqLykgeyB9CiAKICAgICAv
LyBTeW5jaHJvbm91cyBjYWxscyB1c2VkIGludGVybmFsbHkgYnkgV2ViQ29yZS4KICAgICAvLyBV
c2FnZSBzaG91bGQgYmUgcmVwbGFjZWQgYnkgYXN5bmNocm9ub3VzIGNhbGxzLgpAQCAtMTgyLDEy
ICsxNzMsMTIgQEAgcHVibGljOgogCiAgICAgLy8gQXN5bmNocm9ub3VzIGNhbGxzIHdlIHNob3Vs
ZCB1c2UgdG8gcmVwbGFjZSB0aGUgYWJvdmUgd2hlbiBzdXBwb3J0ZWQuCiAgICAgdmlydHVhbCBi
b29sIHN1cHBvcnRzQXN5bmNocm9ub3VzTW9kZSgpIHsgcmV0dXJuIGZhbHNlOyB9Ci0gICAgdmly
dHVhbCB2b2lkIGxvYWREZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5nJiwgUGFzc1JlZlB0
cjxJY29uTG9hZERlY2lzaW9uQ2FsbGJhY2s+KSB7IH0KLSAgICB2aXJ0dWFsIHZvaWQgaWNvbkRh
dGFGb3JJY29uVVJMKGNvbnN0IFN0cmluZyYsIFBhc3NSZWZQdHI8SWNvbkRhdGFDYWxsYmFjaz4p
IHsgfQotICAgIAorICAgIHZpcnR1YWwgdm9pZCBsb2FkRGVjaXNpb25Gb3JJY29uVVJMKGNvbnN0
IFN0cmluZyYsIEljb25Mb2FkRGVjaXNpb25DYWxsYmFjayYpIHsgfQorICAgIHZpcnR1YWwgdm9p
ZCBpY29uRGF0YUZvckljb25VUkwoY29uc3QgU3RyaW5nJiwgSWNvbkRhdGFDYWxsYmFjayYpIHsg
fQogCiAgICAgLy8gVXNlZCB3aXRoaW4gb25lIG9yIG1vcmUgV2ViS2l0IHBvcnRzLgogICAgIC8v
IFdlIHNob3VsZCB0cnkgdG8gcmVtb3ZlIHRoZXNlIGRlcGVuZGVuY2llcyBmcm9tIHRoZSBJY29u
RGF0YWJhc2VCYXNlIGNsYXNzLgorCiAgICAgdmlydHVhbCB2b2lkIHNldEVuYWJsZWQoYm9vbCkg
eyB9CiAKICAgICB2aXJ0dWFsIEltYWdlKiBkZWZhdWx0SWNvbihjb25zdCBJbnRTaXplJikgeyBy
ZXR1cm4gbnVsbHB0cjsgfQpAQCAtMjA1LDEwICsxOTYsMTIgQEAgcHVibGljOgogCiAgICAgdmly
dHVhbCB2b2lkIHNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQoYm9vbCkgeyB9CiAgICAgdmlydHVh
bCB2b2lkIHNldENsaWVudChJY29uRGF0YWJhc2VDbGllbnQqKSB7IH0KLSAgICAKKwogICAgIHZp
cnR1YWwgYm9vbCBpc09wZW4oKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogICAgIHZpcnR1YWwg
U3RyaW5nIGRhdGFiYXNlUGF0aCgpIGNvbnN0OwogCitwcm90ZWN0ZWQ6CisgICAgSWNvbkRhdGFi
YXNlQmFzZSgpID0gZGVmYXVsdDsKIH07CiAKIC8vIEZ1bmN0aW9ucyB0byBnZXQvc2V0IHRoZSBn
bG9iYWwgaWNvbiBkYXRhYmFzZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9p
Y29uL1BhZ2VVUkxSZWNvcmQuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vUGFnZVVS
TFJlY29yZC5jcHAKaW5kZXggZjhiMjMxNGNmMTE4Y2I5ZDg2OGMxNDBkOGI4MmVhMTM1NDFkYjhi
MC4uOTlkZGVkOGYyMDVmM2FhYmY0ZWNmODBkMDc1YWFjODVmOTYyOTFiYSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vUGFnZVVSTFJlY29yZC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2ljb24vUGFnZVVSTFJlY29yZC5jcHAKQEAgLTM1LDI5ICszNSwyOSBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFBhZ2VVUkxSZWNvcmQ6OlBhZ2VVUkxSZWNvcmQoY29u
c3QgU3RyaW5nJiBwYWdlVVJMKQogICAgIDogbV9wYWdlVVJMKHBhZ2VVUkwpCi0gICAgLCBtX3Jl
dGFpbkNvdW50KDApCiB7CiB9CiAKIFBhZ2VVUkxSZWNvcmQ6On5QYWdlVVJMUmVjb3JkKCkKIHsK
LSAgICBzZXRJY29uUmVjb3JkKG51bGxwdHIpOworICAgIGlmIChtX2ljb25SZWNvcmQpCisgICAg
ICAgIG1faWNvblJlY29yZC0+bV9yZXRhaW5pbmdQYWdlVVJMcy5yZW1vdmUobV9wYWdlVVJMKTsK
IH0KIAotdm9pZCBQYWdlVVJMUmVjb3JkOjpzZXRJY29uUmVjb3JkKFBhc3NSZWZQdHI8SWNvblJl
Y29yZD4gaWNvbikKK3ZvaWQgUGFnZVVSTFJlY29yZDo6c2V0SWNvblJlY29yZChSZWZQdHI8SWNv
blJlY29yZD4mJiBpY29uKQogewogICAgIGlmIChtX2ljb25SZWNvcmQpCiAgICAgICAgIG1faWNv
blJlY29yZC0+bV9yZXRhaW5pbmdQYWdlVVJMcy5yZW1vdmUobV9wYWdlVVJMKTsKLSAgICAgICAg
Ci0gICAgbV9pY29uUmVjb3JkID0gaWNvbjsKLSAgICAKKworICAgIG1faWNvblJlY29yZCA9IFdU
Rk1vdmUoaWNvbik7CisKICAgICBpZiAobV9pY29uUmVjb3JkKQogICAgICAgICBtX2ljb25SZWNv
cmQtPm1fcmV0YWluaW5nUGFnZVVSTHMuYWRkKG1fcGFnZVVSTCk7CiB9CiAgICAgCiBQYWdlVVJM
U25hcHNob3QgUGFnZVVSTFJlY29yZDo6c25hcHNob3QoYm9vbCBmb3JEZWxldGlvbikgY29uc3Qg
CiB7Ci0gICAgcmV0dXJuIFBhZ2VVUkxTbmFwc2hvdChtX3BhZ2VVUkwsIChtX2ljb25SZWNvcmQg
JiYgIWZvckRlbGV0aW9uKSA/IG1faWNvblJlY29yZC0+aWNvblVSTCgpIDogU3RyaW5nKCkpOwor
ICAgIHJldHVybiB7IG1fcGFnZVVSTCwgKG1faWNvblJlY29yZCAmJiAhZm9yRGVsZXRpb24pID8g
bV9pY29uUmVjb3JkLT5pY29uVVJMKCkgOiBTdHJpbmcoKSB9OwogfQogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9QYWdlVVJM
UmVjb3JkLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9QYWdlVVJMUmVjb3JkLmgKaW5k
ZXggZWZlZDM0NTBjNTJkNzkwNDNmM2JiNjJmNzBmMjZmM2ZkZmNlY2IzZC4uMTg5ODc1ZTMyZDhh
NzRkZTQxN2Q1OWUxNmJkNDBjYTc4YTkyMGU4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2ljb24vUGFnZVVSTFJlY29yZC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9p
Y29uL1BhZ2VVUkxSZWNvcmQuaApAQCAtNjEsNyArNjEsNyBAQCBwdWJsaWM6CiAKICAgICBpbmxp
bmUgU3RyaW5nIHVybCgpIGNvbnN0IHsgcmV0dXJuIG1fcGFnZVVSTDsgfQogICAgIAotICAgIHZv
aWQgc2V0SWNvblJlY29yZChQYXNzUmVmUHRyPEljb25SZWNvcmQ+KTsKKyAgICB2b2lkIHNldElj
b25SZWNvcmQoUmVmUHRyPEljb25SZWNvcmQ+JiYpOwogICAgIEljb25SZWNvcmQqIGljb25SZWNv
cmQoKSB7IHJldHVybiBtX2ljb25SZWNvcmQuZ2V0KCk7IH0KIAogICAgIFBhZ2VVUkxTbmFwc2hv
dCBzbmFwc2hvdChib29sIGZvckRlbGV0aW9uID0gZmFsc2UpIGNvbnN0OwpAQCAtODIsMTIgKzgy
LDEyIEBAIHB1YmxpYzoKICAgICAgICAgcmV0dXJuIG1fcmV0YWluQ291bnQgPiAwOwogICAgIH0K
IAotICAgIGlubGluZSBpbnQgcmV0YWluQ291bnQoKSBjb25zdCB7IHJldHVybiBtX3JldGFpbkNv
dW50OyB9CisgICAgaW50IHJldGFpbkNvdW50KCkgY29uc3QgeyByZXR1cm4gbV9yZXRhaW5Db3Vu
dDsgfQogCiBwcml2YXRlOgogICAgIFN0cmluZyBtX3BhZ2VVUkw7CiAgICAgUmVmUHRyPEljb25S
ZWNvcmQ+IG1faWNvblJlY29yZDsKLSAgICBpbnQgbV9yZXRhaW5Db3VudDsKKyAgICBpbnQgbV9y
ZXRhaW5Db3VudCB7IDAgfTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pb3MvUXVpY2tMb29rLmggYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvaW9zL1F1aWNrTG9vay5oCmluZGV4IDU1M2NlZDUyNTY1ZjlhYjZkNDAzODhjMTM2
ZTUzYTdlNjllNGM3NjEuLjZmZDFjYzY4ZWI2ZDRmMThhZTgxZTU3MzE3N2I3NmE1ZGE0NGQ1YTAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pb3MvUXVpY2tMb29rLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2lvcy9RdWlja0xvb2suaApAQCAtODQsNyArODQsNyBAQCBw
dWJsaWM6CiAKICAgICBXRUJDT1JFX0VYUE9SVCBOU1VSTFJlc3BvbnNlICpuc1Jlc3BvbnNlKCk7
CiAKLSAgICB2b2lkIHNldENsaWVudChQYXNzUmVmUHRyPFF1aWNrTG9va0hhbmRsZUNsaWVudD4g
Y2xpZW50KSB7IG1fY2xpZW50ID0gY2xpZW50OyB9CisgICAgdm9pZCBzZXRDbGllbnQoUmVmPFF1
aWNrTG9va0hhbmRsZUNsaWVudD4mJiBjbGllbnQpIHsgbV9jbGllbnQgPSBXVEZNb3ZlKGNsaWVu
dCk7IH0KIAogICAgIFdFQkNPUkVfRVhQT1JUIFN0cmluZyBwcmV2aWV3RmlsZU5hbWUoKSBjb25z
dDsKICAgICBXRUJDT1JFX0VYUE9SVCBTdHJpbmcgcHJldmlld1VUSSgpIGNvbnN0OwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2lvcy9RdWlja0xvb2subW0gYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvaW9zL1F1aWNrTG9vay5tbQppbmRleCBkMTQyMTQ3NjdjYjU3YWMzMDJjYjFl
YjFiNTY3MjIwMzQ1Mjc3ZjNiLi4yODRkNDJlMWZmNTI0OGRkNGMzYjI2NmNiODRiOTI0ZWMzNWI3
NDIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaW9zL1F1aWNrTG9vay5tbQor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaW9zL1F1aWNrTG9vay5tbQpAQCAtMTg5LDEzICsx
ODksMTMgQEAgQGVuZAogCiBAaW1wbGVtZW50YXRpb24gV2ViUmVzb3VyY2VMb2FkZXJRdWlja0xv
b2tEZWxlZ2F0ZQogCi0tIChpZClpbml0V2l0aFJlc291cmNlTG9hZGVyOihQYXNzUmVmUHRyPFJl
c291cmNlTG9hZGVyPilyZXNvdXJjZUxvYWRlcgorLSAoaWQpaW5pdFdpdGhSZXNvdXJjZUxvYWRl
cjooUmVzb3VyY2VMb2FkZXImKXJlc291cmNlTG9hZGVyCiB7CiAgICAgc2VsZiA9IFtzdXBlciBp
bml0XTsKICAgICBpZiAoIXNlbGYpCiAgICAgICAgIHJldHVybiBuaWw7CiAKLSAgICBfcmVzb3Vy
Y2VMb2FkZXIgPSByZXNvdXJjZUxvYWRlcjsKKyAgICBfcmVzb3VyY2VMb2FkZXIgPSAmcmVzb3Vy
Y2VMb2FkZXI7CiAgICAgcmV0dXJuIHNlbGY7CiB9CiAKQEAgLTMzMSw3ICszMzEsNyBAQCBzdGQ6
OnVuaXF1ZV9wdHI8UXVpY2tMb29rSGFuZGxlPiBRdWlja0xvb2tIYW5kbGU6OmNyZWF0ZShSZXNv
dXJjZUxvYWRlciYgbG9hZGVyLAogewogICAgIEFTU0VSVChzaG91bGRDcmVhdGVGb3JNSU1FVHlw
ZShyZXNwb25zZS5taW1lVHlwZSgpKSk7CiAKLSAgICBSZXRhaW5QdHI8V2ViUmVzb3VyY2VMb2Fk
ZXJRdWlja0xvb2tEZWxlZ2F0ZT4gZGVsZWdhdGUgPSBhZG9wdE5TKFtbV2ViUmVzb3VyY2VMb2Fk
ZXJRdWlja0xvb2tEZWxlZ2F0ZSBhbGxvY10gaW5pdFdpdGhSZXNvdXJjZUxvYWRlcjombG9hZGVy
XSk7CisgICAgUmV0YWluUHRyPFdlYlJlc291cmNlTG9hZGVyUXVpY2tMb29rRGVsZWdhdGU+IGRl
bGVnYXRlID0gYWRvcHROUyhbW1dlYlJlc291cmNlTG9hZGVyUXVpY2tMb29rRGVsZWdhdGUgYWxs
b2NdIGluaXRXaXRoUmVzb3VyY2VMb2FkZXI6bG9hZGVyXSk7CiAgICAgc3RkOjp1bmlxdWVfcHRy
PFF1aWNrTG9va0hhbmRsZT4gcXVpY2tMb29rSGFuZGxlKG5ldyBRdWlja0xvb2tIYW5kbGUoW2xv
YWRlci5vcmlnaW5hbFJlcXVlc3QoKS5uc1VSTFJlcXVlc3QoRG9Ob3RVcGRhdGVIVFRQQm9keSkg
VVJMXSwgcmVzcG9uc2UubnNVUkxSZXNwb25zZSgpLCBkZWxlZ2F0ZS5nZXQoKSkpOwogICAgIFtk
ZWxlZ2F0ZSBzZXRRdWlja0xvb2tIYW5kbGU6cXVpY2tMb29rSGFuZGxlLmdldCgpXTsKICAgICBs
b2FkZXIuZGlkQ3JlYXRlUXVpY2tMb29rSGFuZGxlKCpxdWlja0xvb2tIYW5kbGUpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9DaHJvbWUuY3BwCmluZGV4IGQwMTViYTQ1YTMzYWViY2UxNzI5ZDNiOTliMjU1ZjU0NTMwMWU3
NmEuLjFlYzY2ZTk5MTBmNTU2NDllZTYwYjlmNmRjMjkwZjEzMzI0MGFkNGQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21lLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L0Nocm9tZS5jcHAKQEAgLTQzMiw3ICs0MzIsNyBAQCBzdGQ6OnVuaXF1ZV9wdHI8Q29sb3JDaG9v
c2VyPiBDaHJvbWU6OmNyZWF0ZUNvbG9yQ2hvb3NlcihDb2xvckNob29zZXJDbGllbnQqIGNsaQog
fQogI2VuZGlmCiAKLXZvaWQgQ2hyb21lOjpydW5PcGVuUGFuZWwoRnJhbWUqIGZyYW1lLCBQYXNz
UmVmUHRyPEZpbGVDaG9vc2VyPiBmaWxlQ2hvb3NlcikKK3ZvaWQgQ2hyb21lOjpydW5PcGVuUGFu
ZWwoRnJhbWUmIGZyYW1lLCBGaWxlQ2hvb3NlciYgZmlsZUNob29zZXIpCiB7CiAgICAgbm90aWZ5
UG9wdXBPcGVuaW5nT2JzZXJ2ZXJzKCk7CiAgICAgbV9jbGllbnQucnVuT3BlblBhbmVsKGZyYW1l
LCBmaWxlQ2hvb3Nlcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZS5o
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWUuaAppbmRleCBmMjM4NjBhMmJkYWYzYzI5M2Uw
MTkzYzJjYTQ5MmJhNmE4OGY3YzUyLi5iNTBmNzg3M2YxMDQ5ZTA2MTZkNzIzOTgwMTNkMzE0NjI3
NGIzZjc0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZS5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21lLmgKQEAgLTE1Niw3ICsxNTYsNyBAQCBwdWJsaWM6CiAg
ICAgc3RkOjp1bmlxdWVfcHRyPENvbG9yQ2hvb3Nlcj4gY3JlYXRlQ29sb3JDaG9vc2VyKENvbG9y
Q2hvb3NlckNsaWVudCosIGNvbnN0IENvbG9yJiBpbml0aWFsQ29sb3IpOwogI2VuZGlmCiAKLSAg
ICB2b2lkIHJ1bk9wZW5QYW5lbChGcmFtZSosIFBhc3NSZWZQdHI8RmlsZUNob29zZXI+KTsKKyAg
ICB2b2lkIHJ1bk9wZW5QYW5lbChGcmFtZSYsIEZpbGVDaG9vc2VyJik7CiAgICAgdm9pZCBsb2Fk
SWNvbkZvckZpbGVzKGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgRmlsZUljb25Mb2FkZXImKTsKIAog
ICAgIHZvaWQgZGlzcGF0Y2hWaWV3cG9ydFByb3BlcnRpZXNEaWRDaGFuZ2UoY29uc3QgVmlld3Bv
cnRBcmd1bWVudHMmKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hy
b21lQ2xpZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZUNsaWVudC5oCmluZGV4IGEw
OWZlM2NiMzBiYTNkODE4YzE0ZDFkMThlZDY1MzVlMWZlMzg4MTUuLjg2ODI2ZTU5NTA4OWYyNGMy
NWIyNzg2YzFmNGU5ODIyZGM0NGRlZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
Q2hyb21lQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWVDbGllbnQuaApA
QCAtMjczLDcgKzI3Myw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHN0ZDo6dW5pcXVlX3B0cjxD
b2xvckNob29zZXI+IGNyZWF0ZUNvbG9yQ2hvb3NlcihDb2xvckNob29zZXJDbGllbnQqLCBjb25z
dCBDb2xvciYpID0gMDsKICNlbmRpZgogCi0gICAgdmlydHVhbCB2b2lkIHJ1bk9wZW5QYW5lbChG
cmFtZSosIFBhc3NSZWZQdHI8RmlsZUNob29zZXI+KSA9IDA7CisgICAgdmlydHVhbCB2b2lkIHJ1
bk9wZW5QYW5lbChGcmFtZSYsIEZpbGVDaG9vc2VyJikgPSAwOwogICAgIC8vIEFzeW5jaHJvbm91
cyByZXF1ZXN0IHRvIGxvYWQgYW4gaWNvbiBmb3Igc3BlY2lmaWVkIGZpbGVuYW1lcy4KICAgICB2
aXJ0dWFsIHZvaWQgbG9hZEljb25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8U3RyaW5nPiYsIEZpbGVJ
Y29uTG9hZGVyJikgPSAwOwogICAgICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvRE9NV2luZG93LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcAppbmRl
eCA2YTI3YjJjMjliZDJmZTQ0MWEyMDgyMmQ0ZDlkNWRiNTc5ZWE3NzZkLi45ZjdhNmFjNTAxYTM2
Yjg0Y2RiNTcxNGEyZGMyNGViZjcyZGFiNTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL0RPTVdpbmRvdy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuY3Bw
CkBAIC03NzMsNyArNzczLDcgQEAgRE9NQXBwbGljYXRpb25DYWNoZSogRE9NV2luZG93OjphcHBs
aWNhdGlvbkNhY2hlKCkgY29uc3QKICAgICBpZiAoIWlzQ3VycmVudGx5RGlzcGxheWVkSW5GcmFt
ZSgpKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICBpZiAoIW1fYXBwbGljYXRpb25DYWNo
ZSkKLSAgICAgICAgbV9hcHBsaWNhdGlvbkNhY2hlID0gRE9NQXBwbGljYXRpb25DYWNoZTo6Y3Jl
YXRlKG1fZnJhbWUpOworICAgICAgICBtX2FwcGxpY2F0aW9uQ2FjaGUgPSBET01BcHBsaWNhdGlv
bkNhY2hlOjpjcmVhdGUoKm1fZnJhbWUpOwogICAgIHJldHVybiBtX2FwcGxpY2F0aW9uQ2FjaGUu
Z2V0KCk7CiB9CiAKQEAgLTIwODcsNyArMjA4Nyw3IEBAIHZvaWQgRE9NV2luZG93OjpzZXRMb2Nh
dGlvbihET01XaW5kb3cmIGFjdGl2ZVdpbmRvdywgRE9NV2luZG93JiBmaXJzdFdpbmRvdywgY29u
CiAgICAgLy8gV2Ugd2FudCBhIG5ldyBoaXN0b3J5IGl0ZW0gaWYgd2UgYXJlIHByb2Nlc3Npbmcg
YSB1c2VyIGdlc3R1cmUuCiAgICAgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnkgPSAobG9ja2luZyAh
PSBMb2NrSGlzdG9yeUJhc2VkT25HZXN0dXJlU3RhdGUgfHwgIVNjcmlwdENvbnRyb2xsZXI6OnBy
b2Nlc3NpbmdVc2VyR2VzdHVyZSgpKSA/IExvY2tIaXN0b3J5OjpZZXMgOiBMb2NrSGlzdG9yeTo6
Tm87CiAgICAgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0ID0gKGxvY2tp
bmcgIT0gTG9ja0hpc3RvcnlCYXNlZE9uR2VzdHVyZVN0YXRlKSA/IExvY2tCYWNrRm9yd2FyZExp
c3Q6OlllcyA6IExvY2tCYWNrRm9yd2FyZExpc3Q6Ok5vOwotICAgIG1fZnJhbWUtPm5hdmlnYXRp
b25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKGFjdGl2ZURvY3VtZW50LCBhY3Rp
dmVEb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKSwKKyAgICBtX2ZyYW1lLT5uYXZpZ2F0aW9uU2No
ZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZSgqYWN0aXZlRG9jdW1lbnQsIGFjdGl2ZURv
Y3VtZW50LT5zZWN1cml0eU9yaWdpbigpLAogICAgICAgICAvLyBGSVhNRTogV2hhdCBpZiBhY3Rp
dmVEb2N1bWVudCgpLT5mcmFtZSgpIGlzIDA/CiAgICAgICAgIGNvbXBsZXRlZFVSTCwgYWN0aXZl
RG9jdW1lbnQtPmZyYW1lKCktPmxvYWRlcigpLm91dGdvaW5nUmVmZXJyZXIoKSwKICAgICAgICAg
bG9ja0hpc3RvcnksIGxvY2tCYWNrRm9yd2FyZExpc3QpOwpAQCAtMjIxMyw3ICsyMjEzLDcgQEAg
UmVmUHRyPEZyYW1lPiBET01XaW5kb3c6OmNyZWF0ZVdpbmRvdyhjb25zdCBTdHJpbmcmIHVybFN0
cmluZywgY29uc3QgQXRvbWljU3RyaW4KICAgICAgICAgbmV3RnJhbWUtPmxvYWRlcigpLmNoYW5n
ZUxvY2F0aW9uKGZyYW1lUmVxdWVzdCk7CiAgICAgfSBlbHNlIGlmICghdXJsU3RyaW5nLmlzRW1w
dHkoKSkgewogICAgICAgICBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSA9IFNjcmlwdENvbnRyb2xs
ZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpID8gTG9ja0hpc3Rvcnk6Ok5vIDogTG9ja0hpc3Rv
cnk6OlllczsKLSAgICAgICAgbmV3RnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVs
ZUxvY2F0aW9uQ2hhbmdlKGFjdGl2ZVdpbmRvdy5kb2N1bWVudCgpLCBhY3RpdmVXaW5kb3cuZG9j
dW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSwgY29tcGxldGVkVVJMLCByZWZlcnJlciwgbG9ja0hp
c3RvcnksIExvY2tCYWNrRm9yd2FyZExpc3Q6Ok5vKTsKKyAgICAgICAgbmV3RnJhbWUtPm5hdmln
YXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKCphY3RpdmVXaW5kb3cuZG9j
dW1lbnQoKSwgYWN0aXZlV2luZG93LmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCksIGNvbXBs
ZXRlZFVSTCwgcmVmZXJyZXIsIGxvY2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0OjpObyk7
CiAgICAgfQogCiAgICAgLy8gTmF2aWdhdGluZyB0aGUgbmV3IGZyYW1lIGNvdWxkIHJlc3VsdCBp
biBpdCBiZWluZyBkZXRhY2hlZCBmcm9tIGl0cyBwYWdlIGJ5IGEgbmF2aWdhdGlvbiBwb2xpY3kg
ZGVsZWdhdGUuCkBAIC0yMjIzLDI4ICsyMjIzLDI2IEBAIFJlZlB0cjxGcmFtZT4gRE9NV2luZG93
OjpjcmVhdGVXaW5kb3coY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcsIGNvbnN0IEF0b21pY1N0cmlu
CiAgICAgcmV0dXJuIG5ld0ZyYW1lOwogfQogCi1SZWZQdHI8RE9NV2luZG93PiBET01XaW5kb3c6
Om9wZW4oY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcsIGNvbnN0IEF0b21pY1N0cmluZyYgZnJhbWVO
YW1lLCBjb25zdCBTdHJpbmcmIHdpbmRvd0ZlYXR1cmVzU3RyaW5nLAotICAgIERPTVdpbmRvdyYg
YWN0aXZlV2luZG93LCBET01XaW5kb3cmIGZpcnN0V2luZG93KQorUmVmUHRyPERPTVdpbmRvdz4g
RE9NV2luZG93OjpvcGVuKGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nLCBjb25zdCBBdG9taWNTdHJp
bmcmIGZyYW1lTmFtZSwgY29uc3QgU3RyaW5nJiB3aW5kb3dGZWF0dXJlc1N0cmluZywgRE9NV2lu
ZG93JiBhY3RpdmVXaW5kb3csIERPTVdpbmRvdyYgZmlyc3RXaW5kb3cpCiB7CiAgICAgaWYgKCFp
c0N1cnJlbnRseURpc3BsYXllZEluRnJhbWUoKSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAK
LSAgICBEb2N1bWVudCogYWN0aXZlRG9jdW1lbnQgPSBhY3RpdmVXaW5kb3cuZG9jdW1lbnQoKTsK
KyAgICBhdXRvKiBhY3RpdmVEb2N1bWVudCA9IGFjdGl2ZVdpbmRvdy5kb2N1bWVudCgpOwogICAg
IGlmICghYWN0aXZlRG9jdW1lbnQpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgRnJh
bWUqIGZpcnN0RnJhbWUgPSBmaXJzdFdpbmRvdy5mcmFtZSgpOworICAgIGF1dG8qIGZpcnN0RnJh
bWUgPSBmaXJzdFdpbmRvdy5mcmFtZSgpOwogICAgIGlmICghZmlyc3RGcmFtZSkKICAgICAgICAg
cmV0dXJuIG51bGxwdHI7CiAKICNpZiBFTkFCTEUoQ09OVEVOVF9FWFRFTlNJT05TKQogICAgIGlm
IChmaXJzdEZyYW1lLT5kb2N1bWVudCgpCi0gICAgICAgICYmIGZpcnN0RnJhbWUtPm1haW5GcmFt
ZSgpLnBhZ2UoKQorICAgICAgICAmJiBmaXJzdEZyYW1lLT5wYWdlKCkKICAgICAgICAgJiYgZmly
c3RGcmFtZS0+bWFpbkZyYW1lKCkuZG9jdW1lbnQoKQogICAgICAgICAmJiBmaXJzdEZyYW1lLT5t
YWluRnJhbWUoKS5kb2N1bWVudCgpLT5sb2FkZXIoKSkgewotICAgICAgICBSZXNvdXJjZUxvYWRJ
bmZvIHJlc291cmNlTG9hZEluZm8gPSB7IGZpcnN0RnJhbWUtPmRvY3VtZW50KCktPmNvbXBsZXRl
VVJMKHVybFN0cmluZyksIGZpcnN0RnJhbWUtPm1haW5GcmFtZSgpLmRvY3VtZW50KCktPnVybCgp
LCBSZXNvdXJjZVR5cGU6OlBvcHVwIH07Ci0gICAgICAgIFZlY3RvcjxDb250ZW50RXh0ZW5zaW9u
czo6QWN0aW9uPiBhY3Rpb25zID0gZmlyc3RGcmFtZS0+bWFpbkZyYW1lKCkucGFnZSgpLT51c2Vy
Q29udGVudFByb3ZpZGVyKCkuYWN0aW9uc0ZvclJlc291cmNlTG9hZChyZXNvdXJjZUxvYWRJbmZv
LCAqZmlyc3RGcmFtZS0+bWFpbkZyYW1lKCkuZG9jdW1lbnQoKS0+bG9hZGVyKCkpOwotICAgICAg
ICBmb3IgKGNvbnN0IENvbnRlbnRFeHRlbnNpb25zOjpBY3Rpb24mIGFjdGlvbiA6IGFjdGlvbnMp
IHsKKyAgICAgICAgUmVzb3VyY2VMb2FkSW5mbyByZXNvdXJjZUxvYWRJbmZvIHsgZmlyc3RGcmFt
ZS0+ZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwodXJsU3RyaW5nKSwgZmlyc3RGcmFtZS0+bWFpbkZy
YW1lKCkuZG9jdW1lbnQoKS0+dXJsKCksIFJlc291cmNlVHlwZTo6UG9wdXAgfTsKKyAgICAgICAg
Zm9yIChhdXRvJiBhY3Rpb24gOiBmaXJzdEZyYW1lLT5wYWdlKCktPnVzZXJDb250ZW50UHJvdmlk
ZXIoKS5hY3Rpb25zRm9yUmVzb3VyY2VMb2FkKHJlc291cmNlTG9hZEluZm8sICpmaXJzdEZyYW1l
LT5tYWluRnJhbWUoKS5kb2N1bWVudCgpLT5sb2FkZXIoKSkpIHsKICAgICAgICAgICAgIGlmIChh
Y3Rpb24udHlwZSgpID09IENvbnRlbnRFeHRlbnNpb25zOjpBY3Rpb25UeXBlOjpCbG9ja0xvYWQp
CiAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgICAgIH0KQEAgLTIyODQsNyAr
MjI4Miw3IEBAIFJlZlB0cjxET01XaW5kb3c+IERPTVdpbmRvdzo6b3Blbihjb25zdCBTdHJpbmcm
IHVybFN0cmluZywgY29uc3QgQXRvbWljU3RyaW5nJiBmCiAgICAgICAgIC8vIEZvciB3aGF0ZXZl
ciByZWFzb24sIEZpcmVmb3ggdXNlcyB0aGUgZmlyc3Qgd2luZG93IHJhdGhlciB0aGFuIHRoZSBh
Y3RpdmUgd2luZG93IHRvCiAgICAgICAgIC8vIGRldGVybWluZSB0aGUgb3V0Z29pbmcgcmVmZXJy
ZXIuIFdlIHJlcGxpY2F0ZSB0aGF0IGJlaGF2aW9yIGhlcmUuCiAgICAgICAgIExvY2tIaXN0b3J5
IGxvY2tIaXN0b3J5ID0gU2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkg
PyBMb2NrSGlzdG9yeTo6Tm8gOiBMb2NrSGlzdG9yeTo6WWVzOwotICAgICAgICB0YXJnZXRGcmFt
ZS0+bmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UoYWN0aXZlRG9j
dW1lbnQsIGFjdGl2ZURvY3VtZW50LT5zZWN1cml0eU9yaWdpbigpLCBjb21wbGV0ZWRVUkwsIGZp
cnN0RnJhbWUtPmxvYWRlcigpLm91dGdvaW5nUmVmZXJyZXIoKSwKKyAgICAgICAgdGFyZ2V0RnJh
bWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKCphY3RpdmVE
b2N1bWVudCwgYWN0aXZlRG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCksIGNvbXBsZXRlZFVSTCwg
Zmlyc3RGcmFtZS0+bG9hZGVyKCkub3V0Z29pbmdSZWZlcnJlcigpLAogICAgICAgICAgICAgbG9j
a0hpc3RvcnksIExvY2tCYWNrRm9yd2FyZExpc3Q6Ok5vKTsKICAgICAgICAgcmV0dXJuIHRhcmdl
dEZyYW1lLT5kb2N1bWVudCgpLT5kb21XaW5kb3coKTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0VkaXRvckNsaWVudC5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FZGl0
b3JDbGllbnQuaAppbmRleCBlYjFhNDJlMmVlZDAzYTUxNGQxMjM2MDhiY2U3M2I0ZTJkNTY3ODBh
Li5mNDEzMjEwOWY2NDkzYzMwNTgyYTk4OTE5MmM4ZGIzNTU5OTk3ODRjIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL0VkaXRvckNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvRWRpdG9yQ2xpZW50LmgKQEAgLTEwNCw4ICsxMDQsOCBAQCBwdWJsaWM6CiAgICAgdmlydHVh
bCB2b2lkIGRpc2NhcmRlZENvbXBvc2l0aW9uKEZyYW1lKikgPSAwOwogICAgIHZpcnR1YWwgdm9p
ZCBjYW5jZWxlZENvbXBvc2l0aW9uKCkgPSAwOwogCi0gICAgdmlydHVhbCB2b2lkIHJlZ2lzdGVy
VW5kb1N0ZXAoUGFzc1JlZlB0cjxVbmRvU3RlcD4pID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgcmVn
aXN0ZXJSZWRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPikgPSAwOworICAgIHZpcnR1YWwgdm9p
ZCByZWdpc3RlclVuZG9TdGVwKFVuZG9TdGVwJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCByZWdp
c3RlclJlZG9TdGVwKFVuZG9TdGVwJikgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBjbGVhclVuZG9S
ZWRvT3BlcmF0aW9ucygpID0gMDsKIAogICAgIHZpcnR1YWwgYm9vbCBjYW5Db3B5Q3V0KEZyYW1l
KiwgYm9vbCBkZWZhdWx0VmFsdWUpIGNvbnN0ID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvSGlzdG9yeS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0hpc3RvcnkuY3BwCmlu
ZGV4IDFkNDU0MmI4N2VhNjEyNTBhODRiZDdjZDkxNjcyZDVlYWZiMzg0ZGYuLjYzZWQzZDAwN2Vi
ZWQxYTgyMzkwYmFlMTk4NzViMzUyNzY5ZmU4ZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvSGlzdG9yeS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9IaXN0b3J5LmNwcApA
QCAtMjA3LDEwICsyMDcsMTAgQEAgRXhjZXB0aW9uT3I8dm9pZD4gSGlzdG9yeTo6c3RhdGVPYmpl
Y3RBZGRlZChSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiYmIGRhdGEKICAgICAgICAgbV9m
cmFtZS0+ZG9jdW1lbnQoKS0+dXBkYXRlVVJMRm9yUHVzaE9yUmVwbGFjZVN0YXRlKGZ1bGxVUkwp
OwogCiAgICAgaWYgKHN0YXRlT2JqZWN0VHlwZSA9PSBTdGF0ZU9iamVjdFR5cGU6OlB1c2gpIHsK
LSAgICAgICAgbV9mcmFtZS0+bG9hZGVyKCkuaGlzdG9yeSgpLnB1c2hTdGF0ZShkYXRhLCB0aXRs
ZSwgZnVsbFVSTC5zdHJpbmcoKSk7CisgICAgICAgIG1fZnJhbWUtPmxvYWRlcigpLmhpc3Rvcnko
KS5wdXNoU3RhdGUoV1RGTW92ZShkYXRhKSwgdGl0bGUsIGZ1bGxVUkwuc3RyaW5nKCkpOwogICAg
ICAgICBtX2ZyYW1lLT5sb2FkZXIoKS5jbGllbnQoKS5kaXNwYXRjaERpZFB1c2hTdGF0ZVdpdGhp
blBhZ2UoKTsKICAgICB9IGVsc2UgaWYgKHN0YXRlT2JqZWN0VHlwZSA9PSBTdGF0ZU9iamVjdFR5
cGU6OlJlcGxhY2UpIHsKLSAgICAgICAgbV9mcmFtZS0+bG9hZGVyKCkuaGlzdG9yeSgpLnJlcGxh
Y2VTdGF0ZShkYXRhLCB0aXRsZSwgZnVsbFVSTC5zdHJpbmcoKSk7CisgICAgICAgIG1fZnJhbWUt
PmxvYWRlcigpLmhpc3RvcnkoKS5yZXBsYWNlU3RhdGUoV1RGTW92ZShkYXRhKSwgdGl0bGUsIGZ1
bGxVUkwuc3RyaW5nKCkpOwogICAgICAgICBtX2ZyYW1lLT5sb2FkZXIoKS5jbGllbnQoKS5kaXNw
YXRjaERpZFJlcGxhY2VTdGF0ZVdpdGhpblBhZ2UoKTsKICAgICB9CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvTG9jYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Mb2Nh
dGlvbi5jcHAKaW5kZXggOGQ4MzlkMTNhOTE5ODBlMWEwMjhkYmM1ODBiYmJmMWQzNjZkNDU2Zi4u
YmRiNTQ4YjBiNzg5MzRhYzYyYzE3MWU2OWY3ZjEyOTNiZmZhNDI3NiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGFnZS9Mb2NhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9M
b2NhdGlvbi5jcHAKQEAgLTIyMSw5ICsyMjEsMTAgQEAgdm9pZCBMb2NhdGlvbjo6c2V0SGFzaChE
T01XaW5kb3cmIGFjdGl2ZVdpbmRvdywgRE9NV2luZG93JiBmaXJzdFdpbmRvdywgY29uc3QgU3QK
IHsKICAgICBpZiAoIW1fZnJhbWUpCiAgICAgICAgIHJldHVybjsKLSAgICBVUkwgdXJsID0gbV9m
cmFtZS0+ZG9jdW1lbnQoKS0+dXJsKCk7Ci0gICAgU3RyaW5nIG9sZEZyYWdtZW50SWRlbnRpZmll
ciA9IHVybC5mcmFnbWVudElkZW50aWZpZXIoKTsKLSAgICBTdHJpbmcgbmV3RnJhZ21lbnRJZGVu
dGlmaWVyID0gaGFzaDsKKyAgICBBU1NFUlQobV9mcmFtZS0+ZG9jdW1lbnQoKSk7CisgICAgYXV0
byB1cmwgPSBtX2ZyYW1lLT5kb2N1bWVudCgpLT51cmwoKTsKKyAgICBhdXRvIG9sZEZyYWdtZW50
SWRlbnRpZmllciA9IHVybC5mcmFnbWVudElkZW50aWZpZXIoKTsKKyAgICBhdXRvIG5ld0ZyYWdt
ZW50SWRlbnRpZmllciA9IGhhc2g7CiAgICAgaWYgKGhhc2hbMF0gPT0gJyMnKQogICAgICAgICBu
ZXdGcmFnbWVudElkZW50aWZpZXIgPSBoYXNoLnN1YnN0cmluZygxKTsKICAgICB1cmwuc2V0RnJh
Z21lbnRJZGVudGlmaWVyKG5ld0ZyYWdtZW50SWRlbnRpZmllcik7CkBAIC0yNDYsNyArMjQ3LDkg
QEAgdm9pZCBMb2NhdGlvbjo6cmVwbGFjZShET01XaW5kb3cmIGFjdGl2ZVdpbmRvdywgRE9NV2lu
ZG93JiBmaXJzdFdpbmRvdywgY29uc3QgU3QKIHsKICAgICBpZiAoIW1fZnJhbWUpCiAgICAgICAg
IHJldHVybjsKLSAgICAvLyBOb3RlOiBXZSBjYWxsIERPTVdpbmRvdzo6c2V0TG9jYXRpb24gZGly
ZWN0bHkgaGVyZSBiZWNhdXNlIHJlcGxhY2UoKSBhbHdheXMgb3BlcmF0ZXMgb24gdGhlIGN1cnJl
bnQgZnJhbWUuCisgICAgQVNTRVJUKG1fZnJhbWUtPmRvY3VtZW50KCkpOworICAgIEFTU0VSVCht
X2ZyYW1lLT5kb2N1bWVudCgpLT5kb21XaW5kb3coKSk7CisgICAgLy8gV2UgY2FsbCBET01XaW5k
b3c6OnNldExvY2F0aW9uIGRpcmVjdGx5IGhlcmUgYmVjYXVzZSByZXBsYWNlKCkgYWx3YXlzIG9w
ZXJhdGVzIG9uIHRoZSBjdXJyZW50IGZyYW1lLgogICAgIG1fZnJhbWUtPmRvY3VtZW50KCktPmRv
bVdpbmRvdygpLT5zZXRMb2NhdGlvbihhY3RpdmVXaW5kb3csIGZpcnN0V2luZG93LCB1cmwsIExv
Y2tIaXN0b3J5QW5kQmFja0ZvcndhcmRMaXN0KTsKIH0KIApAQCAtMjU0LDI2ICsyNTcsMzggQEAg
dm9pZCBMb2NhdGlvbjo6cmVsb2FkKERPTVdpbmRvdyYgYWN0aXZlV2luZG93KQogewogICAgIGlm
ICghbV9mcmFtZSkKICAgICAgICAgcmV0dXJuOworCisgICAgQVNTRVJUKGFjdGl2ZVdpbmRvdy5k
b2N1bWVudCgpKTsKKyAgICBBU1NFUlQobV9mcmFtZS0+ZG9jdW1lbnQoKSk7CisgICAgQVNTRVJU
KG1fZnJhbWUtPmRvY3VtZW50KCktPmRvbVdpbmRvdygpKTsKKworICAgIGF1dG8mIGFjdGl2ZURv
Y3VtZW50ID0gKmFjdGl2ZVdpbmRvdy5kb2N1bWVudCgpOworICAgIGF1dG8mIHRhcmdldERvY3Vt
ZW50ID0gKm1fZnJhbWUtPmRvY3VtZW50KCk7CisKICAgICAvLyBGSVhNRTogSXQncyBub3QgY2xl
YXIgdGhpcyBjcm9zcy1vcmlnaW4gc2VjdXJpdHkgY2hlY2sgaXMgdmFsdWFibGUuCiAgICAgLy8g
V2UgYWxsb3cgb25lIHBhZ2UgdG8gY2hhbmdlIHRoZSBsb2NhdGlvbiBvZiBhbm90aGVyLiBXaHkg
YmxvY2sgYXR0ZW1wdHMgdG8gcmVsb2FkPwogICAgIC8vIE90aGVyIGxvY2F0aW9uIG9wZXJhdGlv
bnMgc2ltcGx5IGJsb2NrIHVzZSBvZiBKYXZhU2NyaXB0IFVSTHMgY3Jvc3Mgb3JpZ2luLgotICAg
IERPTVdpbmRvdyogdGFyZ2V0V2luZG93ID0gbV9mcmFtZS0+ZG9jdW1lbnQoKS0+ZG9tV2luZG93
KCk7Ci0gICAgaWYgKCFhY3RpdmVXaW5kb3cuZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+
Y2FuQWNjZXNzKG1fZnJhbWUtPmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCkpKSB7Ci0gICAg
ICAgIHRhcmdldFdpbmRvdy0+cHJpbnRFcnJvck1lc3NhZ2UodGFyZ2V0V2luZG93LT5jcm9zc0Rv
bWFpbkFjY2Vzc0Vycm9yTWVzc2FnZShhY3RpdmVXaW5kb3cpKTsKKyAgICBpZiAoIWFjdGl2ZURv
Y3VtZW50LnNlY3VyaXR5T3JpZ2luKCktPmNhbkFjY2Vzcyh0YXJnZXREb2N1bWVudC5zZWN1cml0
eU9yaWdpbigpKSkgeworICAgICAgICBhdXRvJiB0YXJnZXRXaW5kb3cgPSAqdGFyZ2V0RG9jdW1l
bnQuZG9tV2luZG93KCk7CisgICAgICAgIHRhcmdldFdpbmRvdy5wcmludEVycm9yTWVzc2FnZSh0
YXJnZXRXaW5kb3cuY3Jvc3NEb21haW5BY2Nlc3NFcnJvck1lc3NhZ2UoYWN0aXZlV2luZG93KSk7
CiAgICAgICAgIHJldHVybjsKICAgICB9Ci0gICAgaWYgKHByb3RvY29sSXNKYXZhU2NyaXB0KG1f
ZnJhbWUtPmRvY3VtZW50KCktPnVybCgpKSkKKworICAgIGlmIChwcm90b2NvbElzSmF2YVNjcmlw
dCh0YXJnZXREb2N1bWVudC51cmwoKSkpCiAgICAgICAgIHJldHVybjsKLSAgICBtX2ZyYW1lLT5u
YXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVSZWZyZXNoKGFjdGl2ZVdpbmRvdy5kb2N1bWVu
dCgpKTsKKworICAgIG1fZnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZVJlZnJl
c2goYWN0aXZlRG9jdW1lbnQpOwogfQogCiB2b2lkIExvY2F0aW9uOjpzZXRMb2NhdGlvbihET01X
aW5kb3cmIGFjdGl2ZVdpbmRvdywgRE9NV2luZG93JiBmaXJzdFdpbmRvdywgY29uc3QgU3RyaW5n
JiB1cmwpCiB7CiAgICAgQVNTRVJUKG1fZnJhbWUpOwotICAgIEZyYW1lKiBmcmFtZSA9IG1fZnJh
bWUtPmxvYWRlcigpLmZpbmRGcmFtZUZvck5hdmlnYXRpb24oU3RyaW5nKCksIGFjdGl2ZVdpbmRv
dy5kb2N1bWVudCgpKTsKLSAgICBpZiAoIWZyYW1lKQorICAgIGF1dG8qIHRhcmdldEZyYW1lID0g
bV9mcmFtZS0+bG9hZGVyKCkuZmluZEZyYW1lRm9yTmF2aWdhdGlvbih7IH0sIGFjdGl2ZVdpbmRv
dy5kb2N1bWVudCgpKTsKKyAgICBpZiAoIXRhcmdldEZyYW1lKQogICAgICAgICByZXR1cm47Ci0g
ICAgZnJhbWUtPmRvY3VtZW50KCktPmRvbVdpbmRvdygpLT5zZXRMb2NhdGlvbihhY3RpdmVXaW5k
b3csIGZpcnN0V2luZG93LCB1cmwpOworICAgIEFTU0VSVCh0YXJnZXRGcmFtZS0+ZG9jdW1lbnQo
KSk7CisgICAgQVNTRVJUKHRhcmdldEZyYW1lLT5kb2N1bWVudCgpLT5kb21XaW5kb3coKSk7Cisg
ICAgdGFyZ2V0RnJhbWUtPmRvY3VtZW50KCktPmRvbVdpbmRvdygpLT5zZXRMb2NhdGlvbihhY3Rp
dmVXaW5kb3csIGZpcnN0V2luZG93LCB1cmwpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9VUkwuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vVVJMLmNwcAppbmRleCBlNzBhMGY3YjgzZTllMmY4NDU0Y2QxMWY1YTY0
OTg2MWEwMjYzODkzLi41ZWZiODVhMzAzNGVlM2VlZDAwYmFmZGNmMGU2ODMyMjY1MDc3OGExIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9VUkwuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL1VSTC5jcHAKQEAgLTExMjYsMTcgKzExMjYsMTcgQEAgdm9pZCBVUkw6
OnNldFBhc3MoY29uc3QgU3RyaW5nJiBwYXNzd29yZCkKICAgICB9CiB9CiAKLXZvaWQgVVJMOjpz
ZXRGcmFnbWVudElkZW50aWZpZXIoY29uc3QgU3RyaW5nJiBzKQordm9pZCBVUkw6OnNldEZyYWdt
ZW50SWRlbnRpZmllcihTdHJpbmdWaWV3IGlkZW50aWZpZXIpCiB7CiAgICAgaWYgKCFtX2lzVmFs
aWQpCiAgICAgICAgIHJldHVybjsKIAotICAgIC8vIEZJWE1FOiBOb24tQVNDSUkgY2hhcmFjdGVy
cyBtdXN0IGJlIGVuY29kZWQgYW5kIGVzY2FwZWQgdG8gbWF0Y2ggcGFyc2UoKSBleHBlY3RhdGlv
bnMuCi0gICAgaWYgKFVSTFBhcnNlcjo6ZW5hYmxlZCgpKSB7Ci0gICAgICAgIFVSTFBhcnNlciBw
YXJzZXIobWFrZVN0cmluZyhtX3N0cmluZy5sZWZ0KG1fcXVlcnlFbmQpLCAiIyIsIHMpKTsKLSAg
ICAgICAgKnRoaXMgPSBwYXJzZXIucmVzdWx0KCk7Ci0gICAgfSBlbHNlCi0gICAgICAgIHBhcnNl
KG1fc3RyaW5nLmxlZnQobV9xdWVyeUVuZCkgKyAiIyIgKyBzKTsKKyAgICAvLyBGSVhNRTogT3B0
aW1pemUgdGhlIGNhc2Ugd2hlcmUgdGhlIGlkZW50aWZpZXIgYWxyZWFkeSBoYXBwZW5zIHRvIGJl
IGVxdWFsIHRvIHdoYXQgd2FzIHBhc3NlZD8KKyAgICAvLyBGSVhNRTogSXMgaXQgY29ycmVjdCB0
byBkbyB0aGlzIHdpdGhvdXQgZW5jb2RpbmcgYW5kIGVzY2FwaW5nIG5vbi1BU0NJSSBjaGFyYWN0
ZXJzPworICAgIGlmIChVUkxQYXJzZXI6OmVuYWJsZWQoKSkKKyAgICAgICAgKnRoaXMgPSBVUkxQ
YXJzZXIgeyBtYWtlU3RyaW5nKFN0cmluZ1ZpZXcgeyBtX3N0cmluZyB9LnN1YnN0cmluZygwLCBt
X3F1ZXJ5RW5kKSwgJyMnLCBpZGVudGlmaWVyKSB9LnJlc3VsdCgpOworICAgIGVsc2UKKyAgICAg
ICAgcGFyc2UobV9zdHJpbmcubGVmdChtX3F1ZXJ5RW5kKSArICIjIiArIGlkZW50aWZpZXIpOwog
fQogCiB2b2lkIFVSTDo6cmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL1VSTC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVVJM
LmgKaW5kZXggNWFiZjA1ZmU3YzYzNzRmZDU1MmE4MDFkYzc4ZGEyZGI2YTZjY2VmZS4uYjJjMjNk
ZTQxMTc4NDAwMDIwNDMzZDNiMzRiZDY3YzE2YTU0NWRkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vVVJMLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVVJMLmgK
QEAgLTE1OCw3ICsxNTgsNyBAQCBwdWJsaWM6CiAgICAgLy8gVVJMICh3aXRoIG5vdGhpbmcgYWZ0
ZXIgaXQpLiBUbyBjbGVhciB0aGUgcXVlcnksIHBhc3MgYSBudWxsIHN0cmluZy4KICAgICB2b2lk
IHNldFF1ZXJ5KGNvbnN0IFN0cmluZyYpOwogCi0gICAgdm9pZCBzZXRGcmFnbWVudElkZW50aWZp
ZXIoY29uc3QgU3RyaW5nJik7CisgICAgdm9pZCBzZXRGcmFnbWVudElkZW50aWZpZXIoU3RyaW5n
Vmlldyk7CiAgICAgdm9pZCByZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKIAogICAgIFdFQkNP
UkVfRVhQT1JUIGZyaWVuZCBib29sIGVxdWFsSWdub3JpbmdGcmFnbWVudElkZW50aWZpZXIoY29u
c3QgVVJMJiwgY29uc3QgVVJMJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZXBsYXkv
UmVwbGF5SW5wdXREaXNwYXRjaE1ldGhvZHMuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVwbGF5L1Jl
cGxheUlucHV0RGlzcGF0Y2hNZXRob2RzLmNwcAppbmRleCA4NDc1MmEyMzJmZWE2ZTM5ZWM1NzYx
NDJmZTM1NzBjMWJjM2QyNDE2Li43ZjNjMzAwM2MxNTJhZWMwODJmYTk3ZjYwMjZmNzg2ZmE5MmNm
NGI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZXBsYXkvUmVwbGF5SW5wdXREaXNwYXRj
aE1ldGhvZHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlcGxheS9SZXBsYXlJbnB1dERpc3Bh
dGNoTWV0aG9kcy5jcHAKQEAgLTUwLDggKzUwLDkgQEAgdm9pZCBFbmRTZWdtZW50U2VudGluZWw6
OmRpc3BhdGNoKFJlcGxheUNvbnRyb2xsZXImKQogLy8gTmF2aWdhdGlvbiBpbnB1dHMuCiB2b2lk
IEluaXRpYWxOYXZpZ2F0aW9uOjpkaXNwYXRjaChSZXBsYXlDb250cm9sbGVyJiBjb250cm9sbGVy
KQogewotICAgIEZyYW1lJiBmcmFtZSA9IGNvbnRyb2xsZXIucGFnZSgpLm1haW5GcmFtZSgpOwot
ICAgIGZyYW1lLm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKGZy
YW1lLmRvY3VtZW50KCksIG1fc2VjdXJpdHlPcmlnaW4uZ2V0KCksIG1fdXJsLCBtX3JlZmVycmVy
KTsKKyAgICBhdXRvJiBmcmFtZSA9IGNvbnRyb2xsZXIucGFnZSgpLm1haW5GcmFtZSgpOworICAg
IEFTU0VSVChmcmFtZS5kb2N1bWVudCgpKTsKKyAgICBmcmFtZS5uYXZpZ2F0aW9uU2NoZWR1bGVy
KCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZSgqZnJhbWUuZG9jdW1lbnQoKSwgbV9zZWN1cml0eU9y
aWdpbi5nZXQoKSwgbV91cmwsIG1fcmVmZXJyZXIpOwogfQogCiB2b2lkIEhhbmRsZUtleVByZXNz
OjpkaXNwYXRjaChSZXBsYXlDb250cm9sbGVyJiBjb250cm9sbGVyKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvc3ZnL1NWR0ZFSW1hZ2VFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N2
Zy9TVkdGRUltYWdlRWxlbWVudC5jcHAKaW5kZXggMGIzMjcxMGI2ZmE5ZDQzM2ZiODJhYTkxMTZi
MjBkNjgxOGQ1YWZiMi4uYzJjZDZmNjViMzBiN2EwYmVmNDQ3OGQ1YWM0NzA5ZWQ5Y2ZkMjFhMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZFSW1hZ2VFbGVtZW50LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRkVJbWFnZUVsZW1lbnQuY3BwCkBAIC04OCw3ICs4OCw3
IEBAIHZvaWQgU1ZHRkVJbWFnZUVsZW1lbnQ6OnJlcXVlc3RJbWFnZVJlc291cmNlKCkKICAgICBv
cHRpb25zLmNvbnRlbnRTZWN1cml0eVBvbGljeUltcG9zaXRpb24gPSBpc0luVXNlckFnZW50U2hh
ZG93VHJlZSgpID8gQ29udGVudFNlY3VyaXR5UG9saWN5SW1wb3NpdGlvbjo6U2tpcFBvbGljeUNo
ZWNrIDogQ29udGVudFNlY3VyaXR5UG9saWN5SW1wb3NpdGlvbjo6RG9Qb2xpY3lDaGVjazsKIAog
ICAgIENhY2hlZFJlc291cmNlUmVxdWVzdCByZXF1ZXN0KFJlc291cmNlUmVxdWVzdChkb2N1bWVu
dCgpLmNvbXBsZXRlVVJMKGhyZWYoKSkpLCBvcHRpb25zKTsKLSAgICByZXF1ZXN0LnNldEluaXRp
YXRvcih0aGlzKTsKKyAgICByZXF1ZXN0LnNldEluaXRpYXRvcigqdGhpcyk7CiAgICAgbV9jYWNo
ZWRJbWFnZSA9IGRvY3VtZW50KCkuY2FjaGVkUmVzb3VyY2VMb2FkZXIoKS5yZXF1ZXN0SW1hZ2Uo
V1RGTW92ZShyZXF1ZXN0KSk7CiAKICAgICBpZiAobV9jYWNoZWRJbWFnZSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGb250RmFjZVVyaUVsZW1lbnQuY3BwIGIvU291cmNlL1dl
YkNvcmUvc3ZnL1NWR0ZvbnRGYWNlVXJpRWxlbWVudC5jcHAKaW5kZXggMzU2NmFjNDY1MzI5Zjdm
YTFjZDQ0NmVmMTdhMzY1ZDc1ZWY2ZjI0My4uNTZkNWU2M2MzYzE1YWFmNmY1ZjZlOWI2OTk0YTkw
ZTZmZDYyMjM0NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvbnRGYWNlVXJp
RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvbnRGYWNlVXJpRWxlbWVu
dC5jcHAKQEAgLTEwNSw3ICsxMDUsNyBAQCB2b2lkIFNWR0ZvbnRGYWNlVXJpRWxlbWVudDo6bG9h
ZEZvbnQoKQogCiAgICAgICAgIENhY2hlZFJlc291cmNlTG9hZGVyJiBjYWNoZWRSZXNvdXJjZUxv
YWRlciA9IGRvY3VtZW50KCkuY2FjaGVkUmVzb3VyY2VMb2FkZXIoKTsKICAgICAgICAgQ2FjaGVk
UmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QoUmVzb3VyY2VSZXF1ZXN0KGRvY3VtZW50KCkuY29tcGxl
dGVVUkwoaHJlZikpLCBvcHRpb25zKTsKLSAgICAgICAgcmVxdWVzdC5zZXRJbml0aWF0b3IodGhp
cyk7CisgICAgICAgIHJlcXVlc3Quc2V0SW5pdGlhdG9yKCp0aGlzKTsKICAgICAgICAgbV9jYWNo
ZWRGb250ID0gY2FjaGVkUmVzb3VyY2VMb2FkZXIucmVxdWVzdEZvbnQoV1RGTW92ZShyZXF1ZXN0
KSwgaXNTVkdGb250VGFyZ2V0KCp0aGlzKSk7CiAgICAgICAgIGlmIChtX2NhY2hlZEZvbnQpIHsK
ICAgICAgICAgICAgIG1fY2FjaGVkRm9udC0+YWRkQ2xpZW50KCp0aGlzKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdVc2VFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N2
Zy9TVkdVc2VFbGVtZW50LmNwcAppbmRleCA4ZjUwMDk5MmY1NWViMjY1NjFhNThmYmMxNTliNjIz
MTI3YjE1ODY3Li5lNmI0ZWY2OTczZjM2MmFiOGRmZjU2ZTkzMDkxZGI5ZGZkOGYyMTkyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVXNlRWxlbWVudC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvc3ZnL1NWR1VzZUVsZW1lbnQuY3BwCkBAIC01NzIsNyArNTcyLDcgQEAgdm9pZCBT
VkdVc2VFbGVtZW50Ojp1cGRhdGVFeHRlcm5hbERvY3VtZW50KCkKICAgICAgICAgb3B0aW9ucy5j
b250ZW50U2VjdXJpdHlQb2xpY3lJbXBvc2l0aW9uID0gaXNJblVzZXJBZ2VudFNoYWRvd1RyZWUo
KSA/IENvbnRlbnRTZWN1cml0eVBvbGljeUltcG9zaXRpb246OlNraXBQb2xpY3lDaGVjayA6IENv
bnRlbnRTZWN1cml0eVBvbGljeUltcG9zaXRpb246OkRvUG9saWN5Q2hlY2s7CiAgICAgICAgIG9w
dGlvbnMubW9kZSA9IEZldGNoT3B0aW9uczo6TW9kZTo6U2FtZU9yaWdpbjsKICAgICAgICAgQ2Fj
aGVkUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QgeyBSZXNvdXJjZVJlcXVlc3QgeyBleHRlcm5hbERv
Y3VtZW50VVJMIH0sIG9wdGlvbnMgfTsKLSAgICAgICAgcmVxdWVzdC5zZXRJbml0aWF0b3IodGhp
cyk7CisgICAgICAgIHJlcXVlc3Quc2V0SW5pdGlhdG9yKCp0aGlzKTsKICAgICAgICAgbV9leHRl
cm5hbERvY3VtZW50ID0gZG9jdW1lbnQoKS5jYWNoZWRSZXNvdXJjZUxvYWRlcigpLnJlcXVlc3RT
VkdEb2N1bWVudChXVEZNb3ZlKHJlcXVlc3QpKTsKICAgICAgICAgaWYgKG1fZXh0ZXJuYWxEb2N1
bWVudCkKICAgICAgICAgICAgIG1fZXh0ZXJuYWxEb2N1bWVudC0+YWRkQ2xpZW50KCp0aGlzKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvaW9zL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNs
aWVudElPUy5oIGIvU291cmNlL1dlYktpdC9pb3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xp
ZW50SU9TLmgKaW5kZXggNjNmNDMwNGEwMzYyZTUzMzUxYzk2ZDBkN2VkMDdkOTFiMGEwNmY5NC4u
NmNkNzAzZDg3M2JkODY1OTgwMDNlMzEzZTJlNGQ4MmRkYjg2MDc4MSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9pb3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50SU9TLmgKKysrIGIv
U291cmNlL1dlYktpdC9pb3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50SU9TLmgKQEAg
LTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA4LCAyMDA5IEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOC0yMDE3IEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpA
QCAtMjQsNzMgKzI0LDc3IEBACiAgKi8KIAogI2lmIFBMQVRGT1JNKElPUykKKwogI2ltcG9ydCAi
V2ViQ2hyb21lQ2xpZW50LmgiCiAKLWNsYXNzIFdlYkNocm9tZUNsaWVudElPUyA6IHB1YmxpYyBX
ZWJDaHJvbWVDbGllbnQgeworY2xhc3MgV2ViQ2hyb21lQ2xpZW50SU9TIGZpbmFsIDogcHVibGlj
IFdlYkNocm9tZUNsaWVudCB7CiBwdWJsaWM6Ci0gICAgV2ViQ2hyb21lQ2xpZW50SU9TKFdlYlZp
ZXcgKndlYlZpZXcpCisgICAgV2ViQ2hyb21lQ2xpZW50SU9TKFdlYlZpZXcqIHdlYlZpZXcpCiAg
ICAgICAgIDogV2ViQ2hyb21lQ2xpZW50KHdlYlZpZXcpCi0gICAgICAgICwgbV9mb3JtTm90aWZp
Y2F0aW9uU3VwcHJlc3Npb25zKDApIHsgfQotICAgIAotICAgIHZvaWQgc2V0V2luZG93UmVjdChj
b25zdCBXZWJDb3JlOjpGbG9hdFJlY3QmKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpGbG9hdFJl
Y3Qgd2luZG93UmVjdCgpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0U3RhdHVzYmFyVGV4dChjb25z
dCBXVEY6OlN0cmluZyYpIG92ZXJyaWRlIHsgfQorICAgIHsKKyAgICB9CisKK3ByaXZhdGU6Cisg
ICAgdm9pZCBzZXRXaW5kb3dSZWN0KGNvbnN0IFdlYkNvcmU6OkZsb2F0UmVjdCYpIGZpbmFsOwor
ICAgIFdlYkNvcmU6OkZsb2F0UmVjdCB3aW5kb3dSZWN0KCkgZmluYWw7CisgICAgdm9pZCBzZXRT
dGF0dXNiYXJUZXh0KGNvbnN0IFdURjo6U3RyaW5nJikgZmluYWwgeyB9CiAKLSAgICB2b2lkIGZv
Y3VzKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCB0YWtlRm9jdXMoV2ViQ29yZTo6Rm9jdXNEaXJlY3Rp
b24pIG92ZXJyaWRlIHsgfQorICAgIHZvaWQgZm9jdXMoKSBmaW5hbDsKKyAgICB2b2lkIHRha2VG
b2N1cyhXZWJDb3JlOjpGb2N1c0RpcmVjdGlvbikgZmluYWwgeyB9CiAKLSAgICB2b2lkIHJ1bkph
dmFTY3JpcHRBbGVydChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdURjo6U3RyaW5nJikgb3ZlcnJp
ZGU7Ci0gICAgYm9vbCBydW5KYXZhU2NyaXB0Q29uZmlybShXZWJDb3JlOjpGcmFtZSosIGNvbnN0
IFdURjo6U3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBydW5KYXZhU2NyaXB0UHJvbXB0KFdl
YkNvcmU6OkZyYW1lKiwgY29uc3QgV1RGOjpTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFdURjo6U3Ry
aW5nJiBkZWZhdWx0VmFsdWUsIFdURjo6U3RyaW5nJiByZXN1bHQpIG92ZXJyaWRlOworICAgIHZv
aWQgcnVuSmF2YVNjcmlwdEFsZXJ0KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV1RGOjpTdHJpbmcm
KSBmaW5hbDsKKyAgICBib29sIHJ1bkphdmFTY3JpcHRDb25maXJtKFdlYkNvcmU6OkZyYW1lKiwg
Y29uc3QgV1RGOjpTdHJpbmcmKSBmaW5hbDsKKyAgICBib29sIHJ1bkphdmFTY3JpcHRQcm9tcHQo
V2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXVEY6OlN0cmluZyYgbWVzc2FnZSwgY29uc3QgV1RGOjpT
dHJpbmcmIGRlZmF1bHRWYWx1ZSwgV1RGOjpTdHJpbmcmIHJlc3VsdCkgZmluYWw7CiAKLSAgICB2
b2lkIHJ1bk9wZW5QYW5lbChXZWJDb3JlOjpGcmFtZSosIFBhc3NSZWZQdHI8V2ViQ29yZTo6Rmls
ZUNob29zZXI+KSBvdmVycmlkZTsKKyAgICB2b2lkIHJ1bk9wZW5QYW5lbChXZWJDb3JlOjpGcmFt
ZSYsIFdlYkNvcmU6OkZpbGVDaG9vc2VyJikgZmluYWw7CiAKICNpZiBFTkFCTEUoVE9VQ0hfRVZF
TlRTKQotICAgIHZvaWQgZGlkUHJldmVudERlZmF1bHRGb3JFdmVudCgpIG92ZXJyaWRlOworICAg
IHZvaWQgZGlkUHJldmVudERlZmF1bHRGb3JFdmVudCgpIGZpbmFsOwogI2VuZGlmCi0gICAgdm9p
ZCBkaWRSZWNlaXZlTW9iaWxlRG9jVHlwZShib29sKSBvdmVycmlkZTsKLSAgICB2b2lkIHNldE5l
ZWRzU2Nyb2xsTm90aWZpY2F0aW9ucyhXZWJDb3JlOjpGcmFtZSosIGJvb2wpIG92ZXJyaWRlOwot
ICAgIHZvaWQgb2JzZXJ2ZWRDb250ZW50Q2hhbmdlKFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBjbGVhckNvbnRlbnRDaGFuZ2VPYnNlcnZlcnMoV2ViQ29yZTo6RnJhbWUqKSBv
dmVycmlkZTsKLSAgICBXZWJDb3JlOjpGbG9hdFNpemUgc2NyZWVuU2l6ZSgpIGNvbnN0IG92ZXJy
aWRlOwotICAgIFdlYkNvcmU6OkZsb2F0U2l6ZSBhdmFpbGFibGVTY3JlZW5TaXplKCkgY29uc3Qg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFZpZXdwb3J0UHJvcGVydGllc0RpZENoYW5nZShj
b25zdCBXZWJDb3JlOjpWaWV3cG9ydEFyZ3VtZW50cyYpIGNvbnN0IG92ZXJyaWRlOwotICAgIHZv
aWQgbm90aWZ5UmV2ZWFsZWRTZWxlY3Rpb25CeVNjcm9sbGluZ0ZyYW1lKFdlYkNvcmU6OkZyYW1l
Kikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBpc1N0b3BwaW5nKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBk
aWRMYXlvdXQoTGF5b3V0VHlwZSkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRTdGFydE92ZXJmbG93
U2Nyb2xsKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRFbmRPdmVyZmxvd1Njcm9sbCgpIG92ZXJy
aWRlOwotCi0gICAgdm9pZCBzdXBwcmVzc0Zvcm1Ob3RpZmljYXRpb25zKCkgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCByZXN0b3JlRm9ybU5vdGlmaWNhdGlvbnMoKSBvdmVycmlkZTsKKworICAgIHZvaWQg
ZGlkUmVjZWl2ZU1vYmlsZURvY1R5cGUoYm9vbCkgZmluYWw7CisgICAgdm9pZCBzZXROZWVkc1Nj
cm9sbE5vdGlmaWNhdGlvbnMoV2ViQ29yZTo6RnJhbWUqLCBib29sKSBmaW5hbDsKKyAgICB2b2lk
IG9ic2VydmVkQ29udGVudENoYW5nZShXZWJDb3JlOjpGcmFtZSopIGZpbmFsOworICAgIHZvaWQg
Y2xlYXJDb250ZW50Q2hhbmdlT2JzZXJ2ZXJzKFdlYkNvcmU6OkZyYW1lKikgZmluYWw7CisgICAg
V2ViQ29yZTo6RmxvYXRTaXplIHNjcmVlblNpemUoKSBjb25zdCBmaW5hbDsKKyAgICBXZWJDb3Jl
OjpGbG9hdFNpemUgYXZhaWxhYmxlU2NyZWVuU2l6ZSgpIGNvbnN0IGZpbmFsOworICAgIHZvaWQg
ZGlzcGF0Y2hWaWV3cG9ydFByb3BlcnRpZXNEaWRDaGFuZ2UoY29uc3QgV2ViQ29yZTo6Vmlld3Bv
cnRBcmd1bWVudHMmKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIG5vdGlmeVJldmVhbGVkU2VsZWN0
aW9uQnlTY3JvbGxpbmdGcmFtZShXZWJDb3JlOjpGcmFtZSopIGZpbmFsOworICAgIGJvb2wgaXNT
dG9wcGluZygpIGZpbmFsOworICAgIHZvaWQgZGlkTGF5b3V0KExheW91dFR5cGUpIGZpbmFsOwor
ICAgIHZvaWQgZGlkU3RhcnRPdmVyZmxvd1Njcm9sbCgpIGZpbmFsOworICAgIHZvaWQgZGlkRW5k
T3ZlcmZsb3dTY3JvbGwoKSBmaW5hbDsKKworICAgIHZvaWQgc3VwcHJlc3NGb3JtTm90aWZpY2F0
aW9ucygpIGZpbmFsOworICAgIHZvaWQgcmVzdG9yZUZvcm1Ob3RpZmljYXRpb25zKCkgZmluYWw7
CiAgICAgCi0gICAgdm9pZCBlbGVtZW50RGlkRm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9kZSopIG92
ZXJyaWRlOwotICAgIHZvaWQgZWxlbWVudERpZEJsdXIoY29uc3QgV2ViQ29yZTo6Tm9kZSopIG92
ZXJyaWRlOworICAgIHZvaWQgZWxlbWVudERpZEZvY3VzKGNvbnN0IFdlYkNvcmU6Ok5vZGUqKSBm
aW5hbDsKKyAgICB2b2lkIGVsZW1lbnREaWRCbHVyKGNvbnN0IFdlYkNvcmU6Ok5vZGUqKSBmaW5h
bDsKIAotICAgIHZvaWQgYXR0YWNoUm9vdEdyYXBoaWNzTGF5ZXIoV2ViQ29yZTo6RnJhbWUqLCBX
ZWJDb3JlOjpHcmFwaGljc0xheWVyKikgb3ZlcnJpZGU7CisgICAgdm9pZCBhdHRhY2hSb290R3Jh
cGhpY3NMYXllcihXZWJDb3JlOjpGcmFtZSosIFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXIqKSBmaW5h
bDsKIAotICAgIHZvaWQgZGlkRmx1c2hDb21wb3NpdGluZ0xheWVycygpIG92ZXJyaWRlOworICAg
IHZvaWQgZGlkRmx1c2hDb21wb3NpdGluZ0xheWVycygpIGZpbmFsOwogCi0gICAgdm9pZCB1cGRh
dGVWaWV3cG9ydENvbnN0cmFpbmVkTGF5ZXJzKEhhc2hNYXA8UGxhdGZvcm1MYXllciosIHN0ZDo6
dW5pcXVlX3B0cjxXZWJDb3JlOjpWaWV3cG9ydENvbnN0cmFpbnRzPj4mLCBIYXNoTWFwPFBsYXRm
b3JtTGF5ZXIqLCBQbGF0Zm9ybUxheWVyKj4mKSBvdmVycmlkZTsKKyAgICB2b2lkIHVwZGF0ZVZp
ZXdwb3J0Q29uc3RyYWluZWRMYXllcnMoSGFzaE1hcDxQbGF0Zm9ybUxheWVyKiwgc3RkOjp1bmlx
dWVfcHRyPFdlYkNvcmU6OlZpZXdwb3J0Q29uc3RyYWludHM+PiYsIEhhc2hNYXA8UGxhdGZvcm1M
YXllciosIFBsYXRmb3JtTGF5ZXIqPiYpIGZpbmFsOwogCi0gICAgYm9vbCBmZXRjaEN1c3RvbUZp
eGVkUG9zaXRpb25MYXlvdXRSZWN0KFdlYkNvcmU6OkludFJlY3QmKSBvdmVycmlkZTsKLSAgICB2
b2lkIGFkZE9yVXBkYXRlU2Nyb2xsaW5nTGF5ZXIoV2ViQ29yZTo6Tm9kZSosIFBsYXRmb3JtTGF5
ZXIqLCBQbGF0Zm9ybUxheWVyKiwgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIGJvb2wgYWxsb3dI
b3Jpem9udGFsU2Nyb2xsYmFyLCBib29sIGFsbG93VmVydGljYWxTY3JvbGxiYXIpIG92ZXJyaWRl
OwotICAgIHZvaWQgcmVtb3ZlU2Nyb2xsaW5nTGF5ZXIoV2ViQ29yZTo6Tm9kZSosIFBsYXRmb3Jt
TGF5ZXIqLCBQbGF0Zm9ybUxheWVyKikgb3ZlcnJpZGU7CisgICAgYm9vbCBmZXRjaEN1c3RvbUZp
eGVkUG9zaXRpb25MYXlvdXRSZWN0KFdlYkNvcmU6OkludFJlY3QmKSBmaW5hbDsKKyAgICB2b2lk
IGFkZE9yVXBkYXRlU2Nyb2xsaW5nTGF5ZXIoV2ViQ29yZTo6Tm9kZSosIFBsYXRmb3JtTGF5ZXIq
LCBQbGF0Zm9ybUxheWVyKiwgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIGJvb2wgYWxsb3dIb3Jp
em9udGFsU2Nyb2xsYmFyLCBib29sIGFsbG93VmVydGljYWxTY3JvbGxiYXIpIGZpbmFsOworICAg
IHZvaWQgcmVtb3ZlU2Nyb2xsaW5nTGF5ZXIoV2ViQ29yZTo6Tm9kZSosIFBsYXRmb3JtTGF5ZXIq
LCBQbGF0Zm9ybUxheWVyKikgZmluYWw7CiAKLSAgICBib29sIHNlbGVjdEl0ZW1Xcml0aW5nRGly
ZWN0aW9uSXNOYXR1cmFsKCkgb3ZlcnJpZGU7Ci0gICAgYm9vbCBzZWxlY3RJdGVtQWxpZ25tZW50
Rm9sbG93c01lbnVXcml0aW5nRGlyZWN0aW9uKCkgb3ZlcnJpZGU7Ci0gICAgUmVmUHRyPFdlYkNv
cmU6OlBvcHVwTWVudT4gY3JlYXRlUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCop
IGNvbnN0IG92ZXJyaWRlOwotICAgIFJlZlB0cjxXZWJDb3JlOjpTZWFyY2hQb3B1cE1lbnU+IGNy
ZWF0ZVNlYXJjaFBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1lbnVDbGllbnQqKSBjb25zdCBvdmVy
cmlkZTsKKyAgICBib29sIHNlbGVjdEl0ZW1Xcml0aW5nRGlyZWN0aW9uSXNOYXR1cmFsKCkgZmlu
YWw7CisgICAgYm9vbCBzZWxlY3RJdGVtQWxpZ25tZW50Rm9sbG93c01lbnVXcml0aW5nRGlyZWN0
aW9uKCkgZmluYWw7CisgICAgUmVmUHRyPFdlYkNvcmU6OlBvcHVwTWVudT4gY3JlYXRlUG9wdXBN
ZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCopIGNvbnN0IGZpbmFsOworICAgIFJlZlB0cjxX
ZWJDb3JlOjpTZWFyY2hQb3B1cE1lbnU+IGNyZWF0ZVNlYXJjaFBvcHVwTWVudShXZWJDb3JlOjpQ
b3B1cE1lbnVDbGllbnQqKSBjb25zdCBmaW5hbDsKIAotICAgIHZvaWQgd2ViQXBwT3JpZW50YXRp
b25zVXBkYXRlZCgpIG92ZXJyaWRlOwotICAgIHZvaWQgZm9jdXNlZEVsZW1lbnRDaGFuZ2VkKFdl
YkNvcmU6OkVsZW1lbnQqKSBvdmVycmlkZTsKLSAgICB2b2lkIHNob3dQbGF5YmFja1RhcmdldFBp
Y2tlcihib29sIGhhc1ZpZGVvKSBvdmVycmlkZTsKKyAgICB2b2lkIHdlYkFwcE9yaWVudGF0aW9u
c1VwZGF0ZWQoKSBmaW5hbDsKKyAgICB2b2lkIGZvY3VzZWRFbGVtZW50Q2hhbmdlZChXZWJDb3Jl
OjpFbGVtZW50KikgZmluYWw7CisgICAgdm9pZCBzaG93UGxheWJhY2tUYXJnZXRQaWNrZXIoYm9v
bCBoYXNWaWRlbykgZmluYWw7CiAKICNpZiBFTkFCTEUoT1JJRU5UQVRJT05fRVZFTlRTKQotICAg
IGludCBkZXZpY2VPcmllbnRhdGlvbigpIGNvbnN0IG92ZXJyaWRlOworICAgIGludCBkZXZpY2VP
cmllbnRhdGlvbigpIGNvbnN0IGZpbmFsOwogI2VuZGlmCiAKLXByaXZhdGU6Ci0gICAgaW50IG1f
Zm9ybU5vdGlmaWNhdGlvblN1cHByZXNzaW9uczsKKyAgICBpbnQgbV9mb3JtTm90aWZpY2F0aW9u
U3VwcHJlc3Npb25zIHsgMCB9OwogfTsKKwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L2lvcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnRJT1MubW0gYi9Tb3VyY2UvV2Vi
S2l0L2lvcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnRJT1MubW0KaW5kZXggMTFmODRl
YjlmOTNkN2RmMWM4MmViODQyNTI0NGE2YWMxZDgyYzBlYy4uNGY0NzMwZWNhOWRkNzNlMzAwZDVl
NTMzZGJhY2NiYzI4ZGZjOWUzOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9pb3MvV2ViQ29y
ZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50SU9TLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvaW9zL1dl
YkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudElPUy5tbQpAQCAtMSw1ICsxLDUgQEAKIC8qCi0g
KiBDb3B5cmlnaHQgKEMpIDIwMDgsIDIwMDkgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yMyw5ICsyMywxMCBAQAog
ICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZiBQTEFURk9STShJ
T1MpCiAjaW1wb3J0ICJXZWJDaHJvbWVDbGllbnRJT1MuaCIKIAorI2lmIFBMQVRGT1JNKElPUykK
KwogI2ltcG9ydCAiRE9NTm9kZUludGVybmFsLmgiCiAjaW1wb3J0ICJQb3B1cE1lbnVJT1MuaCIK
ICNpbXBvcnQgIlNlYXJjaFBvcHVwTWVudUlPUy5oIgpAQCAtNDMsOSArNDQsNiBAQAogI2ltcG9y
dCAiV2ViVmlldy5oIgogI2ltcG9ydCAiV2ViVmlld0ludGVybmFsLmgiCiAjaW1wb3J0ICJXZWJW
aWV3UHJpdmF0ZS5oIgotCi0jaW1wb3J0IDx3dGYvSGFzaE1hcC5oPgotI2ltcG9ydCA8d3RmL1Jl
ZlB0ci5oPgogI2ltcG9ydCA8V2ViQ29yZS9GaWxlQ2hvb3Nlci5oPgogI2ltcG9ydCA8V2ViQ29y
ZS9GbG9hdFJlY3QuaD4KICNpbXBvcnQgPFdlYkNvcmUvRnJhbWUuaD4KQEAgLTYxLDYgKzU5LDgg
QEAKICNpbXBvcnQgPFdlYkNvcmUvU2Nyb2xsaW5nQ29uc3RyYWludHMuaD4KICNpbXBvcnQgPFdl
YkNvcmUvV0FLV2luZG93Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVUaHJlYWRNZXNzYWdl
Lmg+CisjaW1wb3J0IDx3dGYvSGFzaE1hcC5oPgorI2ltcG9ydCA8d3RmL1JlZlB0ci5oPgogCiBO
U1N0cmluZyAqIGNvbnN0IFdlYk9wZW5QYW5lbENvbmZpZ3VyYXRpb25BbGxvd011bHRpcGxlRmls
ZXNLZXkgPSBAIldlYk9wZW5QYW5lbENvbmZpZ3VyYXRpb25BbGxvd011bHRpcGxlRmlsZXNLZXki
OwogTlNTdHJpbmcgKiBjb25zdCBXZWJPcGVuUGFuZWxDb25maWd1cmF0aW9uTWVkaWFDYXB0dXJl
VHlwZUtleSA9IEAiV2ViT3BlblBhbmVsQ29uZmlndXJhdGlvbk1lZGlhQ2FwdHVyZVR5cGVLZXki
OwpAQCAtNjksOSArNjksMTAgQEAgTlNTdHJpbmcgKiBjb25zdCBXZWJPcGVuUGFuZWxDb25maWd1
cmF0aW9uTWltZVR5cGVzS2V5ID0gQCJXZWJPcGVuUGFuZWxDb25maWd1cmEKIHVzaW5nIG5hbWVz
cGFjZSBXZWJDb3JlOwogCiAjaWYgRU5BQkxFKE1FRElBX0NBUFRVUkUpCi1zdGF0aWMgV2ViTWVk
aWFDYXB0dXJlVHlwZSB3ZWJNZWRpYUNhcHR1cmVUeXBlKE1lZGlhQ2FwdHVyZVR5cGUgbWVkaWFD
YXB0dXJlVHlwZSkKKworc3RhdGljIFdlYk1lZGlhQ2FwdHVyZVR5cGUgd2ViTWVkaWFDYXB0dXJl
VHlwZShNZWRpYUNhcHR1cmVUeXBlIHR5cGUpCiB7Ci0gICAgc3dpdGNoIChtZWRpYUNhcHR1cmVU
eXBlKSB7CisgICAgc3dpdGNoICh0eXBlKSB7CiAgICAgY2FzZSBNZWRpYUNhcHR1cmVUeXBlTm9u
ZToKICAgICAgICAgcmV0dXJuIFdlYk1lZGlhQ2FwdHVyZVR5cGVOb25lOwogICAgIGNhc2UgTWVk
aWFDYXB0dXJlVHlwZVVzZXI6CkBAIC04Myw2ICs4NCw3IEBAIHN0YXRpYyBXZWJNZWRpYUNhcHR1
cmVUeXBlIHdlYk1lZGlhQ2FwdHVyZVR5cGUoTWVkaWFDYXB0dXJlVHlwZSBtZWRpYUNhcHR1cmVU
eXBlCiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgcmV0dXJuIFdlYk1lZGlhQ2FwdHVy
ZVR5cGVOb25lOwogfQorCiAjZW5kaWYKIAogdm9pZCBXZWJDaHJvbWVDbGllbnRJT1M6OnNldFdp
bmRvd1JlY3QoY29uc3QgV2ViQ29yZTo6RmxvYXRSZWN0JiByKQpAQCAtMTI0LDE4ICsxMjYsMTUg
QEAgYm9vbCBXZWJDaHJvbWVDbGllbnRJT1M6OnJ1bkphdmFTY3JpcHRQcm9tcHQoRnJhbWUqIGZy
YW1lLCBjb25zdCBXVEY6OlN0cmluZyYgcHIKICAgICByZXR1cm4gIXJlc3VsdC5pc051bGwoKTsK
IH0KIAotdm9pZCBXZWJDaHJvbWVDbGllbnRJT1M6OnJ1bk9wZW5QYW5lbChGcmFtZSosIFBhc3NS
ZWZQdHI8RmlsZUNob29zZXI+IGNob29zZXIpCit2b2lkIFdlYkNocm9tZUNsaWVudElPUzo6cnVu
T3BlblBhbmVsKEZyYW1lJiwgRmlsZUNob29zZXImIGNob29zZXIpCiB7Ci0gICAgY29uc3QgRmls
ZUNob29zZXJTZXR0aW5ncyYgc2V0dGluZ3MgPSBjaG9vc2VyLT5zZXR0aW5ncygpOworICAgIGF1
dG8mIHNldHRpbmdzID0gY2hvb3Nlci5zZXR0aW5ncygpOwogICAgIEJPT0wgYWxsb3dNdWx0aXBs
ZUZpbGVzID0gc2V0dGluZ3MuYWxsb3dzTXVsdGlwbGVGaWxlczsKLSAgICBWZWN0b3I8U3RyaW5n
PiBhY2NlcHRNSU1FVHlwZXMgPSBzZXR0aW5ncy5hY2NlcHRNSU1FVHlwZXM7Ci0gICAgV2ViT3Bl
blBhbmVsUmVzdWx0TGlzdGVuZXIgKmxpc3RlbmVyID0gW1tXZWJPcGVuUGFuZWxSZXN1bHRMaXN0
ZW5lciBhbGxvY10gaW5pdFdpdGhDaG9vc2VyOmNob29zZXJdOworICAgIFdlYk9wZW5QYW5lbFJl
c3VsdExpc3RlbmVyICpsaXN0ZW5lciA9IFtbV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIgYWxs
b2NdIGluaXRXaXRoQ2hvb3NlcjomY2hvb3Nlcl07CiAKLSAgICAvLyBDb252ZXJ0IHRoZSBhY2Nl
cHQgYXR0cmlidXRlIHN0cmluZyBpbnRvIGEgbGlzdCBvZiBNSU1FIHR5cGVzLgotICAgIHNpemVf
dCBudW1NSU1FVHlwZXMgPSBhY2NlcHRNSU1FVHlwZXMuc2l6ZSgpOwotICAgIE5TTXV0YWJsZUFy
cmF5ICptaW1lVHlwZXMgPSBbTlNNdXRhYmxlQXJyYXkgYXJyYXlXaXRoQ2FwYWNpdHk6bnVtTUlN
RVR5cGVzXTsKLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG51bU1JTUVUeXBlczsgKytpKQot
ICAgICAgICBbbWltZVR5cGVzIGFkZE9iamVjdDphY2NlcHRNSU1FVHlwZXNbaV1dOworICAgIE5T
TXV0YWJsZUFycmF5ICptaW1lVHlwZXMgPSBbTlNNdXRhYmxlQXJyYXkgYXJyYXlXaXRoQ2FwYWNp
dHk6c2V0dGluZ3MuYWNjZXB0TUlNRVR5cGVzLnNpemUoKV07CisgICAgZm9yIChhdXRvJiB0eXBl
IDogc2V0dGluZ3MuYWNjZXB0TUlNRVR5cGVzKQorICAgICAgICBbbWltZVR5cGVzIGFkZE9iamVj
dDp0eXBlXTsKIAogICAgIFdlYk1lZGlhQ2FwdHVyZVR5cGUgY2FwdHVyZVR5cGUgPSBXZWJNZWRp
YUNhcHR1cmVUeXBlTm9uZTsKICNpZiBFTkFCTEUoTUVESUFfQ0FQVFVSRSkKQEAgLTE1OCwxMCAr
MTU3LDEyIEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50SU9TOjpydW5PcGVuUGFuZWwoRnJhbWUqLCBQ
YXNzUmVmUHRyPEZpbGVDaG9vc2VyPiBjaG9vc2VyKQogfQogCiAjaWYgRU5BQkxFKElPU19UT1VD
SF9FVkVOVFMpCisKIHZvaWQgV2ViQ2hyb21lQ2xpZW50SU9TOjpkaWRQcmV2ZW50RGVmYXVsdEZv
ckV2ZW50KCkKIHsKICAgICBbW3dlYlZpZXcoKSBfVUlLaXREZWxlZ2F0ZUZvcndhcmRlcl0gd2Vi
Vmlld0RpZFByZXZlbnREZWZhdWx0Rm9yRXZlbnQ6d2ViVmlldygpXTsKIH0KKwogI2VuZGlmCiAK
IHZvaWQgV2ViQ2hyb21lQ2xpZW50SU9TOjpkaWRSZWNlaXZlTW9iaWxlRG9jVHlwZShib29sIGlz
TW9iaWxlRG9jdHlwZSkKQEAgLTM1NSwxMCArMzU2LDEyIEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50
SU9TOjpzaG93UGxheWJhY2tUYXJnZXRQaWNrZXIoYm9vbCBoYXNWaWRlbykKIH0KIAogI2lmIEVO
QUJMRShPUklFTlRBVElPTl9FVkVOVFMpCisKIGludCBXZWJDaHJvbWVDbGllbnRJT1M6OmRldmlj
ZU9yaWVudGF0aW9uKCkgY29uc3QKIHsKICAgICByZXR1cm4gW1t3ZWJWaWV3KCkgX1VJS2l0RGVs
ZWdhdGVGb3J3YXJkZXJdIGRldmljZU9yaWVudGF0aW9uXTsKIH0KKwogI2VuZGlmCiAKICNlbmRp
ZiAvLyBQTEFURk9STShJT1MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3Jl
U3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaCBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBw
b3J0L1dlYkNocm9tZUNsaWVudC5oCmluZGV4IDQ4YWJlMzA4YThmZWY3NWFmODY4NmUxZTUzYTgz
Yzg3MjFmODI3ZjkuLmY0ZjA5NmM1ZDY0NzNlYmM2ZTdhYmQ1ODNiNmRmZWY0YWFhNGQxNTkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVu
dC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVu
dC5oCkBAIC0zMywxMzAgKzMzLDEzOCBAQAogCiBAY2xhc3MgV2ViVmlldzsKIAorLy8gRklYTUU6
IFRoaXMgY2xhc3MgaXMgdXNlZCBhcyBhIGNvbmNyZXRlIGNsYXNzIG9uIE1hYywgYnV0IG9uIGlP
UyB0aGlzIGlzIGFuIGFic3RyYWN0CisvLyBiYXNlIGNsYXNzIG9mIHRoZSBjb25jcmV0ZSBjbGFz
cywgV2ViQ2hyb21lQ2xpZW50SU9TLiBCZWNhdXNlIG9mIHRoYXQsIHRoaXMgY2xhc3MgYW5kCisv
LyBtYW55IG9mIGl0cyBmdW5jdGlvbnMgYXJlIG5vdCBtYXJrZWQgZmluYWwuIFRoYXQgaXMgbWVz
c3kgd2F5IHRvIG9yZ2FuaXplIHRoaW5ncy4KIGNsYXNzIFdlYkNocm9tZUNsaWVudCA6IHB1Ymxp
YyBXZWJDb3JlOjpDaHJvbWVDbGllbnQgewogcHVibGljOgogICAgIFdlYkNocm9tZUNsaWVudChX
ZWJWaWV3Kik7Ci0gICAgCi0gICAgdm9pZCBjaHJvbWVEZXN0cm95ZWQoKSBvdmVycmlkZTsKLSAg
ICAKKworICAgIFdlYlZpZXcqIHdlYlZpZXcoKSBjb25zdCB7IHJldHVybiBtX3dlYlZpZXc7IH0K
KworcHJpdmF0ZToKKyAgICB2b2lkIGNocm9tZURlc3Ryb3llZCgpIGZpbmFsOworCiAgICAgdm9p
ZCBzZXRXaW5kb3dSZWN0KGNvbnN0IFdlYkNvcmU6OkZsb2F0UmVjdCYpIG92ZXJyaWRlOwogICAg
IFdlYkNvcmU6OkZsb2F0UmVjdCB3aW5kb3dSZWN0KCkgb3ZlcnJpZGU7CiAKLSAgICBXZWJDb3Jl
OjpGbG9hdFJlY3QgcGFnZVJlY3QoKSBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpGbG9hdFJlY3Qg
cGFnZVJlY3QoKSBmaW5hbDsKIAogICAgIHZvaWQgZm9jdXMoKSBvdmVycmlkZTsKLSAgICB2b2lk
IHVuZm9jdXMoKSBvdmVycmlkZTsKLSAgICAKLSAgICBib29sIGNhblRha2VGb2N1cyhXZWJDb3Jl
OjpGb2N1c0RpcmVjdGlvbikgb3ZlcnJpZGU7CisgICAgdm9pZCB1bmZvY3VzKCkgZmluYWw7CisK
KyAgICBib29sIGNhblRha2VGb2N1cyhXZWJDb3JlOjpGb2N1c0RpcmVjdGlvbikgZmluYWw7CiAg
ICAgdm9pZCB0YWtlRm9jdXMoV2ViQ29yZTo6Rm9jdXNEaXJlY3Rpb24pIG92ZXJyaWRlOwogCiAg
ICAgdm9pZCBmb2N1c2VkRWxlbWVudENoYW5nZWQoV2ViQ29yZTo6RWxlbWVudCopIG92ZXJyaWRl
OwotICAgIHZvaWQgZm9jdXNlZEZyYW1lQ2hhbmdlZChXZWJDb3JlOjpGcmFtZSopIG92ZXJyaWRl
OwotCi0gICAgV2ViQ29yZTo6UGFnZSogY3JlYXRlV2luZG93KFdlYkNvcmU6OkZyYW1lKiwgY29u
c3QgV2ViQ29yZTo6RnJhbWVMb2FkUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OldpbmRvd0ZlYXR1
cmVzJiwgY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYpIG92ZXJyaWRlOwotICAgIHZv
aWQgc2hvdygpIG92ZXJyaWRlOwotCi0gICAgYm9vbCBjYW5SdW5Nb2RhbCgpIG92ZXJyaWRlOwot
ICAgIHZvaWQgcnVuTW9kYWwoKSBvdmVycmlkZTsKLQotICAgIHZvaWQgc2V0VG9vbGJhcnNWaXNp
YmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJvb2wgdG9vbGJhcnNWaXNpYmxlKCkgb3ZlcnJpZGU7
Ci0gICAgCi0gICAgdm9pZCBzZXRTdGF0dXNiYXJWaXNpYmxlKGJvb2wpIG92ZXJyaWRlOwotICAg
IGJvb2wgc3RhdHVzYmFyVmlzaWJsZSgpIG92ZXJyaWRlOwotICAgIAotICAgIHZvaWQgc2V0U2Ny
b2xsYmFyc1Zpc2libGUoYm9vbCkgb3ZlcnJpZGU7Ci0gICAgYm9vbCBzY3JvbGxiYXJzVmlzaWJs
ZSgpIG92ZXJyaWRlOwotICAgIAotICAgIHZvaWQgc2V0TWVudWJhclZpc2libGUoYm9vbCkgb3Zl
cnJpZGU7Ci0gICAgYm9vbCBtZW51YmFyVmlzaWJsZSgpIG92ZXJyaWRlOwotICAgIAotICAgIHZv
aWQgc2V0UmVzaXphYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIAotICAgIHZvaWQgYWRkTWVzc2Fn
ZVRvQ29uc29sZShKU0M6Ok1lc3NhZ2VTb3VyY2UsIEpTQzo6TWVzc2FnZUxldmVsLCBjb25zdCBX
VEY6OlN0cmluZyYgbWVzc2FnZSwgdW5zaWduZWQgbGluZU51bWJlciwgdW5zaWduZWQgY29sdW1u
TnVtYmVyLCBjb25zdCBXVEY6OlN0cmluZyYgc291cmNlVVJMKSBvdmVycmlkZTsKLQotICAgIGJv
b2wgY2FuUnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsKCkgb3ZlcnJpZGU7Ci0gICAgYm9vbCBy
dW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoY29uc3QgV1RGOjpTdHJpbmcmIG1lc3NhZ2UsIFdl
YkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7Ci0KLSAgICB2b2lkIGNsb3NlV2luZG93U29vbigpIG92
ZXJyaWRlOworICAgIHZvaWQgZm9jdXNlZEZyYW1lQ2hhbmdlZChXZWJDb3JlOjpGcmFtZSopIGZp
bmFsOworCisgICAgV2ViQ29yZTo6UGFnZSogY3JlYXRlV2luZG93KFdlYkNvcmU6OkZyYW1lKiwg
Y29uc3QgV2ViQ29yZTo6RnJhbWVMb2FkUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OldpbmRvd0Zl
YXR1cmVzJiwgY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYpIGZpbmFsOworICAgIHZv
aWQgc2hvdygpIGZpbmFsOworCisgICAgYm9vbCBjYW5SdW5Nb2RhbCgpIGZpbmFsOworICAgIHZv
aWQgcnVuTW9kYWwoKSBmaW5hbDsKKworICAgIHZvaWQgc2V0VG9vbGJhcnNWaXNpYmxlKGJvb2wp
IGZpbmFsOworICAgIGJvb2wgdG9vbGJhcnNWaXNpYmxlKCkgZmluYWw7CisKKyAgICB2b2lkIHNl
dFN0YXR1c2JhclZpc2libGUoYm9vbCkgZmluYWw7CisgICAgYm9vbCBzdGF0dXNiYXJWaXNpYmxl
KCkgZmluYWw7CisKKyAgICB2b2lkIHNldFNjcm9sbGJhcnNWaXNpYmxlKGJvb2wpIGZpbmFsOwor
ICAgIGJvb2wgc2Nyb2xsYmFyc1Zpc2libGUoKSBmaW5hbDsKKworICAgIHZvaWQgc2V0TWVudWJh
clZpc2libGUoYm9vbCkgZmluYWw7CisgICAgYm9vbCBtZW51YmFyVmlzaWJsZSgpIGZpbmFsOwor
CisgICAgdm9pZCBzZXRSZXNpemFibGUoYm9vbCkgZmluYWw7CisKKyAgICB2b2lkIGFkZE1lc3Nh
Z2VUb0NvbnNvbGUoSlNDOjpNZXNzYWdlU291cmNlLCBKU0M6Ok1lc3NhZ2VMZXZlbCwgY29uc3Qg
V1RGOjpTdHJpbmcmIG1lc3NhZ2UsIHVuc2lnbmVkIGxpbmVOdW1iZXIsIHVuc2lnbmVkIGNvbHVt
bk51bWJlciwgY29uc3QgV1RGOjpTdHJpbmcmIHNvdXJjZVVSTCkgZmluYWw7CisKKyAgICBib29s
IGNhblJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbCgpIGZpbmFsOworICAgIGJvb2wgcnVuQmVm
b3JlVW5sb2FkQ29uZmlybVBhbmVsKGNvbnN0IFdURjo6U3RyaW5nJiBtZXNzYWdlLCBXZWJDb3Jl
OjpGcmFtZSopIGZpbmFsOworCisgICAgdm9pZCBjbG9zZVdpbmRvd1Nvb24oKSBmaW5hbDsKIAog
ICAgIHZvaWQgcnVuSmF2YVNjcmlwdEFsZXJ0KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV1RGOjpT
dHJpbmcmKSBvdmVycmlkZTsKICAgICBib29sIHJ1bkphdmFTY3JpcHRDb25maXJtKFdlYkNvcmU6
OkZyYW1lKiwgY29uc3QgV1RGOjpTdHJpbmcmKSBvdmVycmlkZTsKICAgICBib29sIHJ1bkphdmFT
Y3JpcHRQcm9tcHQoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXVEY6OlN0cmluZyYgbWVzc2FnZSwg
Y29uc3QgV1RGOjpTdHJpbmcmIGRlZmF1bHRWYWx1ZSwgV1RGOjpTdHJpbmcmIHJlc3VsdCkgb3Zl
cnJpZGU7CiAKLSAgICBib29sIHN1cHBvcnRzSW1tZWRpYXRlSW52YWxpZGF0aW9uKCkgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCBpbnZhbGlkYXRlUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYp
IG92ZXJyaWRlOwotICAgIHZvaWQgaW52YWxpZGF0ZUNvbnRlbnRzQW5kUm9vdFZpZXcoY29uc3Qg
V2ViQ29yZTo6SW50UmVjdCYpIG92ZXJyaWRlOwotICAgIHZvaWQgaW52YWxpZGF0ZUNvbnRlbnRz
Rm9yU2xvd1Njcm9sbChjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jikgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBzY3JvbGwoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgc2Nyb2xsRGVsdGEsIGNvbnN0IFdlYkNv
cmU6OkludFJlY3QmIHJlY3RUb1Njcm9sbCwgY29uc3QgV2ViQ29yZTo6SW50UmVjdCYgY2xpcFJl
Y3QpIG92ZXJyaWRlOworICAgIGJvb2wgc3VwcG9ydHNJbW1lZGlhdGVJbnZhbGlkYXRpb24oKSBm
aW5hbDsKKyAgICB2b2lkIGludmFsaWRhdGVSb290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRSZWN0
JikgZmluYWw7CisgICAgdm9pZCBpbnZhbGlkYXRlQ29udGVudHNBbmRSb290Vmlldyhjb25zdCBX
ZWJDb3JlOjpJbnRSZWN0JikgZmluYWw7CisgICAgdm9pZCBpbnZhbGlkYXRlQ29udGVudHNGb3JT
bG93U2Nyb2xsKGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBmaW5hbDsKKyAgICB2b2lkIHNjcm9s
bChjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBzY3JvbGxEZWx0YSwgY29uc3QgV2ViQ29yZTo6SW50
UmVjdCYgcmVjdFRvU2Nyb2xsLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiBjbGlwUmVjdCkgZmlu
YWw7CisKKyAgICBXZWJDb3JlOjpJbnRQb2ludCBzY3JlZW5Ub1Jvb3RWaWV3KGNvbnN0IFdlYkNv
cmU6OkludFBvaW50JikgY29uc3QgZmluYWw7CisgICAgV2ViQ29yZTo6SW50UmVjdCByb290Vmll
d1RvU2NyZWVuKGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBjb25zdCBmaW5hbDsKIAotICAgIFdl
YkNvcmU6OkludFBvaW50IHNjcmVlblRvUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQm
KSBjb25zdCBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpJbnRSZWN0IHJvb3RWaWV3VG9TY3JlZW4o
Y29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGNvbnN0IG92ZXJyaWRlOwogI2lmIFBMQVRGT1JNKElP
UykKLSAgICBXZWJDb3JlOjpJbnRQb2ludCBhY2Nlc3NpYmlsaXR5U2NyZWVuVG9Sb290Vmlldyhj
b25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIGNvbnN0IG92ZXJyaWRlOwotICAgIFdlYkNvcmU6Oklu
dFJlY3Qgcm9vdFZpZXdUb0FjY2Vzc2liaWxpdHlTY3JlZW4oY29uc3QgV2ViQ29yZTo6SW50UmVj
dCYpIGNvbnN0IG92ZXJyaWRlOworICAgIFdlYkNvcmU6OkludFBvaW50IGFjY2Vzc2liaWxpdHlT
Y3JlZW5Ub1Jvb3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFBvaW50JikgY29uc3QgZmluYWw7Cisg
ICAgV2ViQ29yZTo6SW50UmVjdCByb290Vmlld1RvQWNjZXNzaWJpbGl0eVNjcmVlbihjb25zdCBX
ZWJDb3JlOjpJbnRSZWN0JikgY29uc3QgZmluYWw7CiAjZW5kaWYKLSAgICBQbGF0Zm9ybVBhZ2VD
bGllbnQgcGxhdGZvcm1QYWdlQ2xpZW50KCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCBjb250
ZW50c1NpemVDaGFuZ2VkKFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYp
IGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQgc2Nyb2xsUmVjdEludG9WaWV3KGNvbnN0IFdlYkNv
cmU6OkludFJlY3QmKSBjb25zdCBvdmVycmlkZTsKLSAgICAKKworICAgIFBsYXRmb3JtUGFnZUNs
aWVudCBwbGF0Zm9ybVBhZ2VDbGllbnQoKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIGNvbnRlbnRz
U2l6ZUNoYW5nZWQoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXZWJDb3JlOjpJbnRTaXplJikgY29u
c3QgZmluYWw7CisgICAgdm9pZCBzY3JvbGxSZWN0SW50b1ZpZXcoY29uc3QgV2ViQ29yZTo6SW50
UmVjdCYpIGNvbnN0IGZpbmFsOworCiAgICAgdm9pZCBzZXRTdGF0dXNiYXJUZXh0KGNvbnN0IFdU
Rjo6U3RyaW5nJikgb3ZlcnJpZGU7CiAKLSAgICB2b2lkIHNjcm9sbGJhcnNNb2RlRGlkQ2hhbmdl
KCkgY29uc3Qgb3ZlcnJpZGUgeyB9Ci0gICAgYm9vbCBzaG91bGRVbmF2YWlsYWJsZVBsdWdpbk1l
c3NhZ2VCZUJ1dHRvbihXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2luVW5hdmFp
bGFiaWxpdHlSZWFzb24pIGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQgdW5hdmFpbGFibGVQbHVn
aW5CdXR0b25DbGlja2VkKFdlYkNvcmU6OkVsZW1lbnQqLCBXZWJDb3JlOjpSZW5kZXJFbWJlZGRl
ZE9iamVjdDo6UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24pIGNvbnN0IG92ZXJyaWRlOwotICAg
IHZvaWQgbW91c2VEaWRNb3ZlT3ZlckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6SGl0VGVzdFJlc3Vs
dCYsIHVuc2lnbmVkIG1vZGlmaWVyRmxhZ3MpIG92ZXJyaWRlOworICAgIHZvaWQgc2Nyb2xsYmFy
c01vZGVEaWRDaGFuZ2UoKSBjb25zdCBmaW5hbCB7IH0KKyAgICBib29sIHNob3VsZFVuYXZhaWxh
YmxlUGx1Z2luTWVzc2FnZUJlQnV0dG9uKFdlYkNvcmU6OlJlbmRlckVtYmVkZGVkT2JqZWN0OjpQ
bHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbikgY29uc3QgZmluYWw7CisgICAgdm9pZCB1bmF2YWls
YWJsZVBsdWdpbkJ1dHRvbkNsaWNrZWQoV2ViQ29yZTo6RWxlbWVudCosIFdlYkNvcmU6OlJlbmRl
ckVtYmVkZGVkT2JqZWN0OjpQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbikgY29uc3QgZmluYWw7
CisgICAgdm9pZCBtb3VzZURpZE1vdmVPdmVyRWxlbWVudChjb25zdCBXZWJDb3JlOjpIaXRUZXN0
UmVzdWx0JiwgdW5zaWduZWQgbW9kaWZpZXJGbGFncykgZmluYWw7CiAKLSAgICB2b2lkIHNldFRv
b2xUaXAoY29uc3QgV1RGOjpTdHJpbmcmLCBXZWJDb3JlOjpUZXh0RGlyZWN0aW9uKSBvdmVycmlk
ZTsKKyAgICB2b2lkIHNldFRvb2xUaXAoY29uc3QgV1RGOjpTdHJpbmcmLCBXZWJDb3JlOjpUZXh0
RGlyZWN0aW9uKSBmaW5hbDsKIAotICAgIHZvaWQgcHJpbnQoV2ViQ29yZTo6RnJhbWUqKSBvdmVy
cmlkZTsKLSAgICB2b2lkIGV4Y2VlZGVkRGF0YWJhc2VRdW90YShXZWJDb3JlOjpGcmFtZSosIGNv
bnN0IFdURjo6U3RyaW5nJiBkYXRhYmFzZU5hbWUsIFdlYkNvcmU6OkRhdGFiYXNlRGV0YWlscykg
b3ZlcnJpZGU7Ci0gICAgdm9pZCByZWFjaGVkTWF4QXBwQ2FjaGVTaXplKGludDY0X3Qgc3BhY2VO
ZWVkZWQpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVhY2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5R
dW90YShXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiosIGludDY0X3QgdG90YWxTcGFjZU5lZWRlZCkg
b3ZlcnJpZGU7CisgICAgdm9pZCBwcmludChXZWJDb3JlOjpGcmFtZSopIGZpbmFsOworICAgIHZv
aWQgZXhjZWVkZWREYXRhYmFzZVF1b3RhKFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV1RGOjpTdHJp
bmcmIGRhdGFiYXNlTmFtZSwgV2ViQ29yZTo6RGF0YWJhc2VEZXRhaWxzKSBmaW5hbDsKKyAgICB2
b2lkIHJlYWNoZWRNYXhBcHBDYWNoZVNpemUoaW50NjRfdCBzcGFjZU5lZWRlZCkgZmluYWw7Cisg
ICAgdm9pZCByZWFjaGVkQXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3RhKFdlYkNvcmU6OlNlY3Vy
aXR5T3JpZ2luKiwgaW50NjRfdCB0b3RhbFNwYWNlTmVlZGVkKSBmaW5hbDsKIAogI2lmIEVOQUJM
RShEQVNIQk9BUkRfU1VQUE9SVCkKLSAgICB2b2lkIGFubm90YXRlZFJlZ2lvbnNDaGFuZ2VkKCkg
b3ZlcnJpZGU7CisgICAgdm9pZCBhbm5vdGF0ZWRSZWdpb25zQ2hhbmdlZCgpIGZpbmFsOwogI2Vu
ZGlmCiAKLSAgICB2b2lkIHJ1bk9wZW5QYW5lbChXZWJDb3JlOjpGcmFtZSosIFBhc3NSZWZQdHI8
V2ViQ29yZTo6RmlsZUNob29zZXI+KSBvdmVycmlkZTsKLSAgICB2b2lkIGxvYWRJY29uRm9yRmls
ZXMoY29uc3QgVmVjdG9yPFdURjo6U3RyaW5nPiYsIFdlYkNvcmU6OkZpbGVJY29uTG9hZGVyJikg
b3ZlcnJpZGU7CisgICAgdm9pZCBydW5PcGVuUGFuZWwoV2ViQ29yZTo6RnJhbWUmLCBXZWJDb3Jl
OjpGaWxlQ2hvb3NlciYpIG92ZXJyaWRlOworICAgIHZvaWQgbG9hZEljb25Gb3JGaWxlcyhjb25z
dCBWZWN0b3I8V1RGOjpTdHJpbmc+JiwgV2ViQ29yZTo6RmlsZUljb25Mb2FkZXImKSBmaW5hbDsK
IAogI2lmICFQTEFURk9STShJT1MpCi0gICAgdm9pZCBzZXRDdXJzb3IoY29uc3QgV2ViQ29yZTo6
Q3Vyc29yJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRDdXJzb3JIaWRkZW5VbnRpbE1vdXNlTW92
ZXMoYm9vbCkgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRDdXJzb3IoY29uc3QgV2ViQ29yZTo6Q3Vy
c29yJikgZmluYWw7CisgICAgdm9pZCBzZXRDdXJzb3JIaWRkZW5VbnRpbE1vdXNlTW92ZXMoYm9v
bCkgZmluYWw7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShJTlBVVF9UWVBFX0NPTE9SKQotICAgIHN0
ZDo6dW5pcXVlX3B0cjxXZWJDb3JlOjpDb2xvckNob29zZXI+IGNyZWF0ZUNvbG9yQ2hvb3NlcihX
ZWJDb3JlOjpDb2xvckNob29zZXJDbGllbnQqLCBjb25zdCBXZWJDb3JlOjpDb2xvciYpIG92ZXJy
aWRlOworICAgIHN0ZDo6dW5pcXVlX3B0cjxXZWJDb3JlOjpDb2xvckNob29zZXI+IGNyZWF0ZUNv
bG9yQ2hvb3NlcihXZWJDb3JlOjpDb2xvckNob29zZXJDbGllbnQqLCBjb25zdCBXZWJDb3JlOjpD
b2xvciYpIGZpbmFsOwogI2VuZGlmCi0gICAgCisKICNpZiBFTkFCTEUoUE9JTlRFUl9MT0NLKQot
ICAgIGJvb2wgcmVxdWVzdFBvaW50ZXJMb2NrKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCByZXF1ZXN0
UG9pbnRlclVubG9jaygpIG92ZXJyaWRlOworICAgIGJvb2wgcmVxdWVzdFBvaW50ZXJMb2NrKCkg
ZmluYWw7CisgICAgdm9pZCByZXF1ZXN0UG9pbnRlclVubG9jaygpIGZpbmFsOwogI2VuZGlmCiAK
LSAgICBXZWJDb3JlOjpLZXlib2FyZFVJTW9kZSBrZXlib2FyZFVJTW9kZSgpIG92ZXJyaWRlOwor
ICAgIFdlYkNvcmU6OktleWJvYXJkVUlNb2RlIGtleWJvYXJkVUlNb2RlKCkgZmluYWw7CisKKyAg
ICBOU1Jlc3BvbmRlciAqZmlyc3RSZXNwb25kZXIoKSBmaW5hbDsKKyAgICB2b2lkIG1ha2VGaXJz
dFJlc3BvbmRlcihOU1Jlc3BvbmRlciAqKSBmaW5hbDsKIAotICAgIE5TUmVzcG9uZGVyICpmaXJz
dFJlc3BvbmRlcigpIG92ZXJyaWRlOwotICAgIHZvaWQgbWFrZUZpcnN0UmVzcG9uZGVyKE5TUmVz
cG9uZGVyICopIG92ZXJyaWRlOworICAgIHZvaWQgZW5hYmxlU3VkZGVuVGVybWluYXRpb24oKSBm
aW5hbDsKKyAgICB2b2lkIGRpc2FibGVTdWRkZW5UZXJtaW5hdGlvbigpIGZpbmFsOwogCi0gICAg
dm9pZCBlbmFibGVTdWRkZW5UZXJtaW5hdGlvbigpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzYWJs
ZVN1ZGRlblRlcm1pbmF0aW9uKCkgb3ZlcnJpZGU7Ci0gICAgCi0gICAgYm9vbCBzaG91bGRSZXBs
YWNlV2l0aEdlbmVyYXRlZEZpbGVGb3JVcGxvYWQoY29uc3QgV1RGOjpTdHJpbmcmIHBhdGgsIFdU
Rjo6U3RyaW5nICZnZW5lcmF0ZWRGaWxlbmFtZSkgb3ZlcnJpZGU7Ci0gICAgV1RGOjpTdHJpbmcg
Z2VuZXJhdGVSZXBsYWNlbWVudEZpbGUoY29uc3QgV1RGOjpTdHJpbmcmIHBhdGgpIG92ZXJyaWRl
OworICAgIGJvb2wgc2hvdWxkUmVwbGFjZVdpdGhHZW5lcmF0ZWRGaWxlRm9yVXBsb2FkKGNvbnN0
IFdURjo6U3RyaW5nJiBwYXRoLCBXVEY6OlN0cmluZyAmZ2VuZXJhdGVkRmlsZW5hbWUpIGZpbmFs
OworICAgIFdURjo6U3RyaW5nIGdlbmVyYXRlUmVwbGFjZW1lbnRGaWxlKGNvbnN0IFdURjo6U3Ry
aW5nJiBwYXRoKSBmaW5hbDsKIAogICAgIHZvaWQgZWxlbWVudERpZEZvY3VzKGNvbnN0IFdlYkNv
cmU6Ok5vZGUqKSBvdmVycmlkZTsKICAgICB2b2lkIGVsZW1lbnREaWRCbHVyKGNvbnN0IFdlYkNv
cmU6Ok5vZGUqKSBvdmVycmlkZTsKIAotICAgIGJvb2wgc2hvdWxkUGFpbnRFbnRpcmVDb250ZW50
cygpIGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkUGFpbnRFbnRpcmVDb250ZW50cygp
IGNvbnN0IGZpbmFsOwogCiAgICAgdm9pZCBhdHRhY2hSb290R3JhcGhpY3NMYXllcihXZWJDb3Jl
OjpGcmFtZSosIFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXIqKSBvdmVycmlkZTsKLSAgICB2b2lkIGF0
dGFjaFZpZXdPdmVybGF5R3JhcGhpY3NMYXllcihXZWJDb3JlOjpGcmFtZSosIFdlYkNvcmU6Okdy
YXBoaWNzTGF5ZXIqKSBvdmVycmlkZTsKLSAgICB2b2lkIHNldE5lZWRzT25lU2hvdERyYXdpbmdT
eW5jaHJvbml6YXRpb24oKSBvdmVycmlkZTsKLSAgICB2b2lkIHNjaGVkdWxlQ29tcG9zaXRpbmdM
YXllckZsdXNoKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBhdHRhY2hWaWV3T3ZlcmxheUdyYXBoaWNz
TGF5ZXIoV2ViQ29yZTo6RnJhbWUqLCBXZWJDb3JlOjpHcmFwaGljc0xheWVyKikgZmluYWw7Cisg
ICAgdm9pZCBzZXROZWVkc09uZVNob3REcmF3aW5nU3luY2hyb25pemF0aW9uKCkgZmluYWw7Cisg
ICAgdm9pZCBzY2hlZHVsZUNvbXBvc2l0aW5nTGF5ZXJGbHVzaCgpIGZpbmFsOwogCi0gICAgQ29t
cG9zaXRpbmdUcmlnZ2VyRmxhZ3MgYWxsb3dlZENvbXBvc2l0aW5nVHJpZ2dlcnMoKSBjb25zdCBv
dmVycmlkZQorICAgIENvbXBvc2l0aW5nVHJpZ2dlckZsYWdzIGFsbG93ZWRDb21wb3NpdGluZ1Ry
aWdnZXJzKCkgY29uc3QgZmluYWwKICAgICB7CiAgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxD
b21wb3NpdGluZ1RyaWdnZXJGbGFncz4oCiAgICAgICAgICAgICBUaHJlZURUcmFuc2Zvcm1Ucmln
Z2VyIHwKQEAgLTE2OSw1MiArMTc3LDQ5IEBAIHB1YmxpYzoKICAgICAgICAgICAgIEFuaW1hdGlv
blRyaWdnZXIpOwogICAgIH0KIAotI2lmIEVOQUJMRShWSURFTykKLSNpZiBQTEFURk9STShNQUMp
ICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKLSAgICB2b2lkIHNldFVwUGxheWJh
Y2tDb250cm9sc01hbmFnZXIoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudCYpIG92ZXJyaWRlOwot
ICAgIHZvaWQgY2xlYXJQbGF5YmFja0NvbnRyb2xzTWFuYWdlcigpIG92ZXJyaWRlOworI2lmIEVO
QUJMRShWSURFTykgJiYgUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9O
X01PREUpCisgICAgdm9pZCBzZXRVcFBsYXliYWNrQ29udHJvbHNNYW5hZ2VyKFdlYkNvcmU6OkhU
TUxNZWRpYUVsZW1lbnQmKSBmaW5hbDsKKyAgICB2b2lkIGNsZWFyUGxheWJhY2tDb250cm9sc01h
bmFnZXIoKSBmaW5hbDsKICNlbmRpZgogCi0gICAgYm9vbCBzdXBwb3J0c1ZpZGVvRnVsbHNjcmVl
bihXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIG92
ZXJyaWRlOwotICAgIHZvaWQgZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoV2Vi
Q29yZTo6SFRNTFZpZGVvRWxlbWVudCYsIFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6
VmlkZW9GdWxsc2NyZWVuTW9kZSkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBleGl0VmlkZW9GdWxsc2Ny
ZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmKSBvdmVycmlkZTsK
KyNpZiBFTkFCTEUoVklERU8pCisgICAgYm9vbCBzdXBwb3J0c1ZpZGVvRnVsbHNjcmVlbihXZWJD
b3JlOjpIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIGZpbmFsOwor
ICAgIHZvaWQgZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRN
TFZpZGVvRWxlbWVudCYsIFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxs
c2NyZWVuTW9kZSkgZmluYWw7CisgICAgdm9pZCBleGl0VmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9F
bGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmKSBmaW5hbDsKICNlbmRpZgotICAgIAor
CiAjaWYgRU5BQkxFKEZVTExTQ1JFRU5fQVBJKQotICAgIGJvb2wgc3VwcG9ydHNGdWxsU2NyZWVu
Rm9yRWxlbWVudChjb25zdCBXZWJDb3JlOjpFbGVtZW50KiwgYm9vbCB3aXRoS2V5Ym9hcmQpIG92
ZXJyaWRlOwotICAgIHZvaWQgZW50ZXJGdWxsU2NyZWVuRm9yRWxlbWVudChXZWJDb3JlOjpFbGVt
ZW50Kikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBleGl0RnVsbFNjcmVlbkZvckVsZW1lbnQoV2ViQ29y
ZTo6RWxlbWVudCopIG92ZXJyaWRlOworICAgIGJvb2wgc3VwcG9ydHNGdWxsU2NyZWVuRm9yRWxl
bWVudChjb25zdCBXZWJDb3JlOjpFbGVtZW50KiwgYm9vbCB3aXRoS2V5Ym9hcmQpIGZpbmFsOwor
ICAgIHZvaWQgZW50ZXJGdWxsU2NyZWVuRm9yRWxlbWVudChXZWJDb3JlOjpFbGVtZW50KikgZmlu
YWw7CisgICAgdm9pZCBleGl0RnVsbFNjcmVlbkZvckVsZW1lbnQoV2ViQ29yZTo6RWxlbWVudCop
IGZpbmFsOwogI2VuZGlmCiAKICAgICBib29sIHNlbGVjdEl0ZW1Xcml0aW5nRGlyZWN0aW9uSXNO
YXR1cmFsKCkgb3ZlcnJpZGU7CiAgICAgYm9vbCBzZWxlY3RJdGVtQWxpZ25tZW50Rm9sbG93c01l
bnVXcml0aW5nRGlyZWN0aW9uKCkgb3ZlcnJpZGU7Ci0gICAgYm9vbCBoYXNPcGVuZWRQb3B1cCgp
IGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wgaGFzT3BlbmVkUG9wdXAoKSBjb25zdCBmaW5hbDsK
ICAgICBSZWZQdHI8V2ViQ29yZTo6UG9wdXBNZW51PiBjcmVhdGVQb3B1cE1lbnUoV2ViQ29yZTo6
UG9wdXBNZW51Q2xpZW50KikgY29uc3Qgb3ZlcnJpZGU7CiAgICAgUmVmUHRyPFdlYkNvcmU6OlNl
YXJjaFBvcHVwTWVudT4gY3JlYXRlU2VhcmNoUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNs
aWVudCopIGNvbnN0IG92ZXJyaWRlOwogCi0gICAgdm9pZCB3aGVlbEV2ZW50SGFuZGxlcnNDaGFu
Z2VkKGJvb2wpIG92ZXJyaWRlIHsgfQorICAgIHZvaWQgd2hlZWxFdmVudEhhbmRsZXJzQ2hhbmdl
ZChib29sKSBmaW5hbCB7IH0KIAogI2lmIEVOQUJMRShTVUJUTEVfQ1JZUFRPKQotICAgIGJvb2wg
d3JhcENyeXB0b0tleShjb25zdCBWZWN0b3I8dWludDhfdD4mLCBWZWN0b3I8dWludDhfdD4mKSBj
b25zdCBvdmVycmlkZTsKLSAgICBib29sIHVud3JhcENyeXB0b0tleShjb25zdCBWZWN0b3I8dWlu
dDhfdD4mLCBWZWN0b3I8dWludDhfdD4mKSBjb25zdCBvdmVycmlkZTsKKyAgICBib29sIHdyYXBD
cnlwdG9LZXkoY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiwgVmVjdG9yPHVpbnQ4X3Q+JikgY29uc3Qg
ZmluYWw7CisgICAgYm9vbCB1bndyYXBDcnlwdG9LZXkoY29uc3QgVmVjdG9yPHVpbnQ4X3Q+Jiwg
VmVjdG9yPHVpbnQ4X3Q+JikgY29uc3QgZmluYWw7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShTRVJW
SUNFX0NPTlRST0xTKQotICAgIHZvaWQgaGFuZGxlU2VsZWN0aW9uU2VydmljZUNsaWNrKFdlYkNv
cmU6OkZyYW1lU2VsZWN0aW9uJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHRlbGVwaG9uZU51bWJl
cnMsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50Jikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBoYXNSZWxl
dmFudFNlbGVjdGlvblNlcnZpY2VzKGJvb2wgaXNUZXh0T25seSkgY29uc3Qgb3ZlcnJpZGU7Cisg
ICAgdm9pZCBoYW5kbGVTZWxlY3Rpb25TZXJ2aWNlQ2xpY2soV2ViQ29yZTo6RnJhbWVTZWxlY3Rp
b24mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgdGVsZXBob25lTnVtYmVycywgY29uc3QgV2ViQ29y
ZTo6SW50UG9pbnQmKSBmaW5hbDsKKyAgICBib29sIGhhc1JlbGV2YW50U2VsZWN0aW9uU2Vydmlj
ZXMoYm9vbCBpc1RleHRPbmx5KSBjb25zdCBmaW5hbDsKICNlbmRpZgogCi0gICAgV2ViVmlldyog
d2ViVmlldygpIGNvbnN0IHsgcmV0dXJuIG1fd2ViVmlldzsgfQotCiAjaWYgRU5BQkxFKFdJUkVM
RVNTX1BMQVlCQUNLX1RBUkdFVCkgJiYgIVBMQVRGT1JNKElPUykKLSAgICB2b2lkIGFkZFBsYXli
YWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2NF90IC8qY29udGV4dElkKi8pIG92ZXJyaWRlOwot
ICAgIHZvaWQgcmVtb3ZlUGxheWJhY2tUYXJnZXRQaWNrZXJDbGllbnQodWludDY0X3QgLypjb250
ZXh0SWQqLykgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzaG93UGxheWJhY2tUYXJnZXRQaWNrZXIodWlu
dDY0X3QgLypjb250ZXh0SWQqLywgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmLCBib29sIC8qIGhh
c1ZpZGVvICovKSBvdmVycmlkZTsKLSAgICB2b2lkIHBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50
U3RhdGVEaWRDaGFuZ2UodWludDY0X3QgLypjb250ZXh0SWQqLywgV2ViQ29yZTo6TWVkaWFQcm9k
dWNlcjo6TWVkaWFTdGF0ZUZsYWdzKSBvdmVycmlkZTsKLSAgICB2b2lkIHNldE1vY2tNZWRpYVBs
YXliYWNrVGFyZ2V0UGlja2VyRW5hYmxlZChib29sKSBvdmVycmlkZTsKLSAgICB2b2lkIHNldE1v
Y2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyU3RhdGUoY29uc3QgU3RyaW5nJiwgV2ViQ29yZTo6
TWVkaWFQbGF5YmFja1RhcmdldENvbnRleHQ6OlN0YXRlKSBvdmVycmlkZTsKKyAgICB2b2lkIGFk
ZFBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2NF90IC8qY29udGV4dElkKi8pIGZpbmFs
OworICAgIHZvaWQgcmVtb3ZlUGxheWJhY2tUYXJnZXRQaWNrZXJDbGllbnQodWludDY0X3QgLypj
b250ZXh0SWQqLykgZmluYWw7CisgICAgdm9pZCBzaG93UGxheWJhY2tUYXJnZXRQaWNrZXIodWlu
dDY0X3QgLypjb250ZXh0SWQqLywgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmLCBib29sIC8qIGhh
c1ZpZGVvICovKSBmaW5hbDsKKyAgICB2b2lkIHBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50U3Rh
dGVEaWRDaGFuZ2UodWludDY0X3QgLypjb250ZXh0SWQqLywgV2ViQ29yZTo6TWVkaWFQcm9kdWNl
cjo6TWVkaWFTdGF0ZUZsYWdzKSBmaW5hbDsKKyAgICB2b2lkIHNldE1vY2tNZWRpYVBsYXliYWNr
VGFyZ2V0UGlja2VyRW5hYmxlZChib29sKSBmaW5hbDsKKyAgICB2b2lkIHNldE1vY2tNZWRpYVBs
YXliYWNrVGFyZ2V0UGlja2VyU3RhdGUoY29uc3QgU3RyaW5nJiwgV2ViQ29yZTo6TWVkaWFQbGF5
YmFja1RhcmdldENvbnRleHQ6OlN0YXRlKSBmaW5hbDsKICNlbmRpZgogCi1wcml2YXRlOgogICAg
IFdlYlZpZXcgKm1fd2ViVmlldzsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9X
ZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJD
b3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQubW0KaW5kZXggZDdlYzhjYjFiNDZhYjc4MThlMGRl
MjI0MTI2Y2FhNWEwNjVkYTI5MS4uYTUyYTQ2MDFjMTY0N2RlNDVkNDA5OTU3YTgxMzJhMjNkMWEz
NjA2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hy
b21lQ2xpZW50Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkNo
cm9tZUNsaWVudC5tbQpAQCAtNzQxLDEwICs3NDEsMTAgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6
OnJlcXVlc3RQb2ludGVyVW5sb2NrKCkKIH0KICNlbmRpZgogCi12b2lkIFdlYkNocm9tZUNsaWVu
dDo6cnVuT3BlblBhbmVsKEZyYW1lKiwgUGFzc1JlZlB0cjxGaWxlQ2hvb3Nlcj4gY2hvb3NlcikK
K3ZvaWQgV2ViQ2hyb21lQ2xpZW50OjpydW5PcGVuUGFuZWwoRnJhbWUmLCBGaWxlQ2hvb3NlciYg
Y2hvb3NlcikKIHsKICAgICBCRUdJTl9CTE9DS19PQkpDX0VYQ0VQVElPTlM7Ci0gICAgQk9PTCBh
bGxvd011bHRpcGxlRmlsZXMgPSBjaG9vc2VyLT5zZXR0aW5ncygpLmFsbG93c011bHRpcGxlRmls
ZXM7CisgICAgQk9PTCBhbGxvd011bHRpcGxlRmlsZXMgPSBjaG9vc2VyLnNldHRpbmdzKCkuYWxs
b3dzTXVsdGlwbGVGaWxlczsKICAgICBXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lciAqbGlzdGVu
ZXIgPSBbW1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyIGFsbG9jXSBpbml0V2l0aENob29zZXI6
Y2hvb3Nlcl07CiAgICAgaWQgZGVsZWdhdGUgPSBbbV93ZWJWaWV3IFVJRGVsZWdhdGVdOwogICAg
IGlmIChbZGVsZWdhdGUgcmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxlY3Rvcih3ZWJWaWV3OnJ1bk9w
ZW5QYW5lbEZvckZpbGVCdXR0b25XaXRoUmVzdWx0TGlzdGVuZXI6YWxsb3dNdWx0aXBsZUZpbGVz
OildKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRWRp
dG9yQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JD
bGllbnQuaAppbmRleCAzYjM1ZDRkMjExMGY0OWYxYzQ5M2ZlYWNjZDA4NDczOGI4MjM4YWY5Li44
ODIxNTMxMDRjNTAwOWU1ZTdlYTBhZTdmOTA4YjM3NmM3MGNmN2M1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuaApAQCAtMTE1LDgg
KzExNSw4IEBAIHByaXZhdGU6CiAgICAgdm9pZCBkaXNjYXJkZWRDb21wb3NpdGlvbihXZWJDb3Jl
OjpGcmFtZSopIGZpbmFsOwogICAgIHZvaWQgY2FuY2VsZWRDb21wb3NpdGlvbigpIGZpbmFsOwog
Ci0gICAgdm9pZCByZWdpc3RlclVuZG9TdGVwKFBhc3NSZWZQdHI8V2ViQ29yZTo6VW5kb1N0ZXA+
KSBmaW5hbDsKLSAgICB2b2lkIHJlZ2lzdGVyUmVkb1N0ZXAoUGFzc1JlZlB0cjxXZWJDb3JlOjpV
bmRvU3RlcD4pIGZpbmFsOworICAgIHZvaWQgcmVnaXN0ZXJVbmRvU3RlcChXZWJDb3JlOjpVbmRv
U3RlcCYpIGZpbmFsOworICAgIHZvaWQgcmVnaXN0ZXJSZWRvU3RlcChXZWJDb3JlOjpVbmRvU3Rl
cCYpIGZpbmFsOwogICAgIHZvaWQgY2xlYXJVbmRvUmVkb09wZXJhdGlvbnMoKSBmaW5hbDsKIAog
ICAgIGJvb2wgY2FuQ29weUN1dChXZWJDb3JlOjpGcmFtZSosIGJvb2wgZGVmYXVsdFZhbHVlKSBj
b25zdCBmaW5hbDsKQEAgLTE3NCw3ICsxNzQsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgaGFuZGxl
QWNjZXB0ZWRDYW5kaWRhdGVXaXRoU29mdFNwYWNlcyhXZWJDb3JlOjpUZXh0Q2hlY2tpbmdSZXN1
bHQpIGZpbmFsOwogI2VuZGlmCiAKLSAgICB2b2lkIHJlZ2lzdGVyVW5kb09yUmVkb1N0ZXAoUGFz
c1JlZlB0cjxXZWJDb3JlOjpVbmRvU3RlcD4sIGJvb2wgaXNSZWRvKTsKKyAgICB2b2lkIHJlZ2lz
dGVyVW5kb09yUmVkb1N0ZXAoV2ViQ29yZTo6VW5kb1N0ZXAmLCBib29sIGlzUmVkbyk7CiAKICAg
ICBXZWJWaWV3ICptX3dlYlZpZXc7CiAgICAgUmV0YWluUHRyPFdlYkVkaXRvclVuZG9UYXJnZXQ+
IG1fdW5kb1RhcmdldDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBw
b3J0L1dlYkVkaXRvckNsaWVudC5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0
L1dlYkVkaXRvckNsaWVudC5tbQppbmRleCA3ZjlmNDE3YWQxYzQzYTg2YWEyNWQyMTQ4ZTU0Njk1
ZTFkYjcwMjhlLi5mMzhhOWYwY2RjMmQ0OTUwZGQwNjQ2ZDcwMzhmOGM1YTMzM2UwNDg2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQu
bW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50
Lm1tCkBAIC0xMTksOCArMTE5LDggQEAgQGludGVyZmFjZSBXZWJVbmRvU3RlcCA6IE5TT2JqZWN0
CiAgICAgUmVmUHRyPFVuZG9TdGVwPiBtX3N0ZXA7ICAgCiB9CiAKLSsgKFdlYlVuZG9TdGVwICop
c3RlcFdpdGhVbmRvU3RlcDooUGFzc1JlZlB0cjxVbmRvU3RlcD4pc3RlcDsKLS0gKFVuZG9TdGVw
ICopc3RlcDsKKysgKFdlYlVuZG9TdGVwICopc3RlcFdpdGhVbmRvU3RlcDooVW5kb1N0ZXAmKXN0
ZXA7CistIChVbmRvU3RlcCYpc3RlcDsKIAogQGVuZAogCkBAIC0xMzUsMTMgKzEzNSwxMiBAQCAr
ICh2b2lkKWluaXRpYWxpemUKICNlbmRpZgogfQogCi0tIChpZClpbml0V2l0aFVuZG9TdGVwOihQ
YXNzUmVmUHRyPFVuZG9TdGVwPilzdGVwCistIChpZClpbml0V2l0aFVuZG9TdGVwOihVbmRvU3Rl
cCYpc3RlcAogewotICAgIEFTU0VSVChzdGVwKTsKICAgICBzZWxmID0gW3N1cGVyIGluaXRdOwog
ICAgIGlmICghc2VsZikKICAgICAgICAgcmV0dXJuIG5pbDsKLSAgICBtX3N0ZXAgPSBzdGVwOwor
ICAgIG1fc3RlcCA9ICZzdGVwOwogICAgIHJldHVybiBzZWxmOwogfQogCkBAIC0xNTMsMTQgKzE1
MiwxNCBAQCAtICh2b2lkKWRlYWxsb2MKICAgICBbc3VwZXIgZGVhbGxvY107CiB9CiAKLSsgKFdl
YlVuZG9TdGVwICopc3RlcFdpdGhVbmRvU3RlcDooUGFzc1JlZlB0cjxVbmRvU3RlcD4pc3RlcAor
KyAoV2ViVW5kb1N0ZXAgKilzdGVwV2l0aFVuZG9TdGVwOihVbmRvU3RlcCYpc3RlcAogewogICAg
IHJldHVybiBbW1tXZWJVbmRvU3RlcCBhbGxvY10gaW5pdFdpdGhVbmRvU3RlcDpzdGVwXSBhdXRv
cmVsZWFzZV07CiB9CiAKLS0gKFVuZG9TdGVwICopc3RlcAorLSAoVW5kb1N0ZXAmKXN0ZXAKIHsK
LSAgICByZXR1cm4gbV9zdGVwLmdldCgpOworICAgIHJldHVybiAqbV9zdGVwOwogfQogCiBAZW5k
CkBAIC0xNzcsMTMgKzE3NiwxMyBAQCBAaW1wbGVtZW50YXRpb24gV2ViRWRpdG9yVW5kb1Rhcmdl
dAogLSAodm9pZCl1bmRvRWRpdGluZzooaWQpYXJnCiB7CiAgICAgQVNTRVJUKFthcmcgaXNLaW5k
T2ZDbGFzczpbV2ViVW5kb1N0ZXAgY2xhc3NdXSk7Ci0gICAgW2FyZyBzdGVwXS0+dW5hcHBseSgp
OworICAgIFthcmcgc3RlcF0udW5hcHBseSgpOwogfQogCiAtICh2b2lkKXJlZG9FZGl0aW5nOihp
ZClhcmcKIHsKICAgICBBU1NFUlQoW2FyZyBpc0tpbmRPZkNsYXNzOltXZWJVbmRvU3RlcCBjbGFz
c11dKTsKLSAgICBbYXJnIHN0ZXBdLT5yZWFwcGx5KCk7CisgICAgW2FyZyBzdGVwXS5yZWFwcGx5
KCk7CiB9CiAKIEBlbmQKQEAgLTY0MiwxMCArNjQxLDggQEAgc3RhdGljIE5TU3RyaW5nKiB1bmRv
TmFtZUZvckVkaXRBY3Rpb24oRWRpdEFjdGlvbiBlZGl0QWN0aW9uKQogICAgIHJldHVybiBuaWw7
CiB9CiAKLXZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9PclJlZG9TdGVwKFBhc3NS
ZWZQdHI8VW5kb1N0ZXA+IHN0ZXAsIGJvb2wgaXNSZWRvKQordm9pZCBXZWJFZGl0b3JDbGllbnQ6
OnJlZ2lzdGVyVW5kb09yUmVkb1N0ZXAoVW5kb1N0ZXAmIHN0ZXAsIGJvb2wgaXNSZWRvKQogewot
ICAgIEFTU0VSVChzdGVwKTsKLSAgICAKICAgICBOU1VuZG9NYW5hZ2VyICp1bmRvTWFuYWdlciA9
IFttX3dlYlZpZXcgdW5kb01hbmFnZXJdOwogCiAjaWYgUExBVEZPUk0oSU9TKQpAQCAtNjU2LDcg
KzY1Myw3IEBAIHZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9PclJlZG9TdGVwKFBh
c3NSZWZQdHI8VW5kb1N0ZXA+IHN0ZXAsIGJvb2wgaXNSCiAgICAgICAgIHJldHVybjsKICNlbmRp
ZgogCi0gICAgTlNTdHJpbmcgKmFjdGlvbk5hbWUgPSB1bmRvTmFtZUZvckVkaXRBY3Rpb24oc3Rl
cC0+ZWRpdGluZ0FjdGlvbigpKTsKKyAgICBOU1N0cmluZyAqYWN0aW9uTmFtZSA9IHVuZG9OYW1l
Rm9yRWRpdEFjdGlvbihzdGVwLmVkaXRpbmdBY3Rpb24oKSk7CiAgICAgV2ViVW5kb1N0ZXAgKndl
YkVudHJ5ID0gW1dlYlVuZG9TdGVwIHN0ZXBXaXRoVW5kb1N0ZXA6c3RlcF07CiAgICAgW3VuZG9N
YW5hZ2VyIHJlZ2lzdGVyVW5kb1dpdGhUYXJnZXQ6bV91bmRvVGFyZ2V0LmdldCgpIHNlbGVjdG9y
Oihpc1JlZG8gPyBAc2VsZWN0b3IocmVkb0VkaXRpbmc6KSA6IEBzZWxlY3Rvcih1bmRvRWRpdGlu
ZzopKSBvYmplY3Q6d2ViRW50cnldOwogICAgIGlmIChhY3Rpb25OYW1lKQpAQCAtNjg0LDEyICs2
ODEsMTIgQEAgdm9pZCBXZWJFZGl0b3JDbGllbnQ6OnVwZGF0ZUVkaXRvclN0YXRlQWZ0ZXJMYXlv
dXRJZkVkaXRhYmlsaXR5Q2hhbmdlZCgpCiAgICAgICAgIFttX3dlYlZpZXcgdXBkYXRlVG91Y2hC
YXJdOwogfQogCi12b2lkIFdlYkVkaXRvckNsaWVudDo6cmVnaXN0ZXJVbmRvU3RlcChQYXNzUmVm
UHRyPFVuZG9TdGVwPiBjbWQpCit2b2lkIFdlYkVkaXRvckNsaWVudDo6cmVnaXN0ZXJVbmRvU3Rl
cChVbmRvU3RlcCYgY21kKQogewogICAgIHJlZ2lzdGVyVW5kb09yUmVkb1N0ZXAoY21kLCBmYWxz
ZSk7CiB9CiAKLXZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclJlZG9TdGVwKFBhc3NSZWZQ
dHI8VW5kb1N0ZXA+IGNtZCkKK3ZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclJlZG9TdGVw
KFVuZG9TdGVwJiBjbWQpCiB7CiAgICAgcmVnaXN0ZXJVbmRvT3JSZWRvU3RlcChjbWQsIHRydWUp
OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJh
bWVMb2FkZXJDbGllbnQuaCBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZy
YW1lTG9hZGVyQ2xpZW50LmgKaW5kZXggYTExZmI4OGJkYmQ5MWJhZDhmZDhkZjlmZDI5MmY4MjU4
OGZjNDVmNi4uYmZiZDJmNzgzNmY2NDhiODA3MGFjNzQzZjJlYWM4MzZhNWM5NjkxMiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGll
bnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRl
ckNsaWVudC5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNi0yMDE2
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNi0y
MDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwpAQCAtNTgsMjAyICs1OCwyMDIgQEAgcHVibGljOgogICAgIFdlYkZyYW1lKiB3
ZWJGcmFtZSgpIGNvbnN0IHsgcmV0dXJuIG1fd2ViRnJhbWUuZ2V0KCk7IH0KIAogcHJpdmF0ZToK
LSAgICB2b2lkIGZyYW1lTG9hZGVyRGVzdHJveWVkKCkgb3ZlcnJpZGU7Ci0gICAgYm9vbCBoYXNX
ZWJWaWV3KCkgY29uc3Qgb3ZlcnJpZGU7IC8vIG1haW5seSBmb3IgYXNzZXJ0aW9ucworICAgIHZv
aWQgZnJhbWVMb2FkZXJEZXN0cm95ZWQoKSBmaW5hbDsKKyAgICBib29sIGhhc1dlYlZpZXcoKSBj
b25zdCBmaW5hbDsgLy8gbWFpbmx5IGZvciBhc3NlcnRpb25zCiAKLSAgICB2b2lkIG1ha2VSZXBy
ZXNlbnRhdGlvbihXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIG92ZXJyaWRlOwotICAgIGJvb2wg
aGFzSFRNTFZpZXcoKSBjb25zdCBvdmVycmlkZTsKKyAgICB2b2lkIG1ha2VSZXByZXNlbnRhdGlv
bihXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIGZpbmFsOworICAgIGJvb2wgaGFzSFRNTFZpZXco
KSBjb25zdCBmaW5hbDsKICNpZiBQTEFURk9STShJT1MpCi0gICAgYm9vbCBmb3JjZUxheW91dE9u
UmVzdG9yZUZyb21QYWdlQ2FjaGUoKSBvdmVycmlkZTsKKyAgICBib29sIGZvcmNlTGF5b3V0T25S
ZXN0b3JlRnJvbVBhZ2VDYWNoZSgpIGZpbmFsOwogI2VuZGlmCi0gICAgdm9pZCBmb3JjZUxheW91
dEZvck5vbkhUTUwoKSBvdmVycmlkZTsKKyAgICB2b2lkIGZvcmNlTGF5b3V0Rm9yTm9uSFRNTCgp
IGZpbmFsOwogCi0gICAgdm9pZCBzZXRDb3BpZXNPblNjcm9sbCgpIG92ZXJyaWRlOworICAgIHZv
aWQgc2V0Q29waWVzT25TY3JvbGwoKSBmaW5hbDsKIAotICAgIHZvaWQgZGV0YWNoZWRGcm9tUGFy
ZW50MigpIG92ZXJyaWRlOwotICAgIHZvaWQgZGV0YWNoZWRGcm9tUGFyZW50MygpIG92ZXJyaWRl
OworICAgIHZvaWQgZGV0YWNoZWRGcm9tUGFyZW50MigpIGZpbmFsOworICAgIHZvaWQgZGV0YWNo
ZWRGcm9tUGFyZW50MygpIGZpbmFsOwogCi0gICAgdm9pZCBjb252ZXJ0TWFpblJlc291cmNlTG9h
ZFRvRG93bmxvYWQoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpTZXNzaW9uSUQs
IGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVzcG9uc2UmKSBvdmVycmlkZTsKKyAgICB2b2lkIGNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9E
b3dubG9hZChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlNlc3Npb25JRCwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNw
b25zZSYpIGZpbmFsOwogCi0gICAgdm9pZCBhc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVz
dCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7CisgICAgdm9pZCBhc3NpZ25J
ZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIFdlYkNv
cmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmlu
YWw7CiAKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKSBv
dmVycmlkZTsKLSAgICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBvdmVycmlkZTsKLSAgICB2
b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpB
dXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hXaWxs
U2VuZFJlcXVlc3QoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpIGZpbmFsOworICAgIGJvb2wgc2hvdWxkVXNlQ3Jl
ZGVudGlhbFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRp
b25DaGFsbGVuZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIGNvbnN0IFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikgZmluYWw7CiAj
aWYgVVNFKFBST1RFQ1RJT05fU1BBQ0VfQVVUSF9DQUxMQkFDSykKLSAgICBib29sIGNhbkF1dGhl
bnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlByb3RlY3Rpb25TcGFjZSYp
IG92ZXJyaWRlOworICAgIGJvb2wgY2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFj
ZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29u
c3QgV2ViQ29yZTo6UHJvdGVjdGlvblNwYWNlJikgZmluYWw7CiAjZW5kaWYKIAogI2lmIFBMQVRG
T1JNKElPUykKLSAgICBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBjb25uZWN0aW9uUHJvcGVy
dGllcyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikg
b3ZlcnJpZGU7CisgICAgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gY29ubmVjdGlvblByb3Bl
cnRpZXMoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIp
IGZpbmFsOwogI2VuZGlmCiAKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERp
ZFJlY2VpdmVDb250ZW50TGVuZ3RoKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNw
YXRjaERpZEZpbmlzaExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVz
cG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2b2lkIGRpc3Bh
dGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNp
Z25lZCBsb25nIGlkZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoKSBmaW5hbDsKKyAgICB2b2lkIGRp
c3BhdGNoRGlkRmluaXNoTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllcikgZmluYWw7CiAjaWYgRU5BQkxFKERBVEFfREVURUNUSU9OKQotICAg
IHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hEYXRhRGV0ZWN0aW9uKE5TQXJyYXkgKmRldGVjdGlvblJl
c3VsdHMpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hEYXRhRGV0ZWN0aW9u
KE5TQXJyYXkgKmRldGVjdGlvblJlc3VsdHMpIGZpbmFsOwogI2VuZGlmCi0gICAgdm9pZCBkaXNw
YXRjaERpZEZhaWxMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7Ci0K
LSAgICBOU0NhY2hlZFVSTFJlc3BvbnNlKiB3aWxsQ2FjaGVSZXNwb25zZShXZWJDb3JlOjpEb2N1
bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25z
ZSopIGNvbnN0IG92ZXJyaWRlOwotCi0gICAgdm9pZCBkaXNwYXRjaERpZERpc3BhdGNoT25sb2Fk
RXZlbnRzKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVTZXJ2ZXJSZWRp
cmVjdEZvclByb3Zpc2lvbmFsTG9hZCgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRD
YW5jZWxDbGllbnRSZWRpcmVjdCgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hXaWxsUGVy
Zm9ybUNsaWVudFJlZGlyZWN0KGNvbnN0IFdlYkNvcmU6OlVSTCYsIGRvdWJsZSBpbnRlcnZhbCwg
ZG91YmxlIGZpcmVEYXRlKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkQ2hhbmdlTG9j
YXRpb25XaXRoaW5QYWdlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFB1c2hTdGF0
ZVdpdGhpblBhZ2UoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVwbGFjZVN0YXRl
V2l0aGluUGFnZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRQb3BTdGF0ZVdpdGhp
blBhZ2UoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbExvYWRpbmcoV2ViQ29y
ZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKKworICAgIE5TQ2FjaGVkVVJMUmVzcG9uc2UqIHdp
bGxDYWNoZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBOU0NhY2hlZFVSTFJlc3BvbnNlKikgY29uc3QgZmluYWw7CisKKyAgICB2b2lk
IGRpc3BhdGNoRGlkRGlzcGF0Y2hPbmxvYWRFdmVudHMoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3Bh
dGNoRGlkUmVjZWl2ZVNlcnZlclJlZGlyZWN0Rm9yUHJvdmlzaW9uYWxMb2FkKCkgZmluYWw7Cisg
ICAgdm9pZCBkaXNwYXRjaERpZENhbmNlbENsaWVudFJlZGlyZWN0KCkgZmluYWw7CisgICAgdm9p
ZCBkaXNwYXRjaFdpbGxQZXJmb3JtQ2xpZW50UmVkaXJlY3QoY29uc3QgV2ViQ29yZTo6VVJMJiwg
ZG91YmxlIGludGVydmFsLCBkb3VibGUgZmlyZURhdGUpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0
Y2hEaWRDaGFuZ2VMb2NhdGlvbldpdGhpblBhZ2UoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNo
RGlkUHVzaFN0YXRlV2l0aGluUGFnZSgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZXBs
YWNlU3RhdGVXaXRoaW5QYWdlKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFBvcFN0YXRl
V2l0aGluUGFnZSgpIGZpbmFsOwogICAgIAotICAgIHZvaWQgZGlzcGF0Y2hXaWxsQ2xvc2UoKSBv
dmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUljb24oKSBvdmVycmlkZTsKLSAg
ICB2b2lkIGRpc3BhdGNoRGlkU3RhcnRQcm92aXNpb25hbExvYWQoKSBvdmVycmlkZTsKLSAgICB2
b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVRpdGxlKGNvbnN0IFdlYkNvcmU6OlN0cmluZ1dpdGhEaXJl
Y3Rpb24mKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkQ29tbWl0TG9hZChzdGQ6Om9w
dGlvbmFsPFdlYkNvcmU6Okhhc0luc2VjdXJlQ29udGVudD4pIG92ZXJyaWRlOwotICAgIHZvaWQg
ZGlzcGF0Y2hEaWRGYWlsUHJvdmlzaW9uYWxMb2FkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJy
b3ImKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbExvYWQoY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hE
b2N1bWVudExvYWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZCgp
IG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWFjaExheW91dE1pbGVzdG9uZShXZWJD
b3JlOjpMYXlvdXRNaWxlc3RvbmVzKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbENs
b3NlKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVJY29uKCkgZmluYWw7Cisg
ICAgdm9pZCBkaXNwYXRjaERpZFN0YXJ0UHJvdmlzaW9uYWxMb2FkKCkgZmluYWw7CisgICAgdm9p
ZCBkaXNwYXRjaERpZFJlY2VpdmVUaXRsZShjb25zdCBXZWJDb3JlOjpTdHJpbmdXaXRoRGlyZWN0
aW9uJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZENvbW1pdExvYWQoc3RkOjpvcHRpb25h
bDxXZWJDb3JlOjpIYXNJbnNlY3VyZUNvbnRlbnQ+KSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNo
RGlkRmFpbFByb3Zpc2lvbmFsTG9hZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmlu
YWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
RXJyb3ImKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoRG9jdW1lbnRMb2FkKCkg
ZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWQoKSBmaW5hbDsKKyAgICB2b2lk
IGRpc3BhdGNoRGlkUmVhY2hMYXlvdXRNaWxlc3RvbmUoV2ViQ29yZTo6TGF5b3V0TWlsZXN0b25l
cykgZmluYWw7CiAKLSAgICBXZWJDb3JlOjpGcmFtZSogZGlzcGF0Y2hDcmVhdGVQYWdlKGNvbnN0
IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNo
U2hvdygpIG92ZXJyaWRlOworICAgIFdlYkNvcmU6OkZyYW1lKiBkaXNwYXRjaENyZWF0ZVBhZ2Uo
Y29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0
Y2hTaG93KCkgZmluYWw7CiAKLSAgICB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yUmVzcG9u
c2UoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlUmVxdWVzdCYsIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOwotICAg
IHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgV2ViQ29y
ZTo6TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFBh
c3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0YXRlPiwgY29uc3QgV1RGOjpTdHJpbmcmIGZyYW1lTmFt
ZSwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNw
YXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgV2ViQ29yZTo6TmF2aWdh
dGlvbkFjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFBhc3NSZWZQdHI8
V2ViQ29yZTo6Rm9ybVN0YXRlPiwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCBjYW5jZWxQb2xpY3lDaGVjaygpIG92ZXJyaWRlOworICAgIHZvaWQgZGlz
cGF0Y2hEZWNpZGVQb2xpY3lGb3JSZXNwb25zZShjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3Bv
bnNlJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgV2ViQ29yZTo6RnJhbWVQb2xp
Y3lGdW5jdGlvbikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dp
bmRvd0FjdGlvbihjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0JiwgV2ViQ29yZTo6Rm9ybVN0YXRlKiwgY29uc3QgV1RGOjpTdHJp
bmcmIGZyYW1lTmFtZSwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7CisgICAg
dm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgV2ViQ29y
ZTo6TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFdl
YkNvcmU6OkZvcm1TdGF0ZSosIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFsOwor
ICAgIHZvaWQgY2FuY2VsUG9saWN5Q2hlY2soKSBmaW5hbDsKIAotICAgIHZvaWQgZGlzcGF0Y2hV
bmFibGVUb0ltcGxlbWVudFBvbGljeShjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgb3Zl
cnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaFVuYWJsZVRvSW1wbGVtZW50UG9saWN5KGNvbnN0IFdl
YkNvcmU6OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKIAotICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2Vu
ZFN1Ym1pdEV2ZW50KFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0YXRlPikgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0
YXRlPiwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgb3ZlcnJpZGU7CisgICAgdm9pZCBk
aXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoUmVmPFdlYkNvcmU6OkZvcm1TdGF0ZT4mJikgZmlu
YWw7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKFdlYkNvcmU6OkZvcm1TdGF0ZSYs
IFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFsOwogCi0gICAgdm9pZCByZXZlcnRU
b1Byb3Zpc2lvbmFsU3RhdGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBvdmVycmlkZTsKLSAg
ICB2b2lkIHNldE1haW5Eb2N1bWVudEVycm9yKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwotICAgIGJvb2wgZGlzcGF0Y2hE
aWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2FjaGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJl
c3BvbnNlJiwgaW50IGxlbmd0aCkgb3ZlcnJpZGU7CisgICAgdm9pZCByZXZlcnRUb1Byb3Zpc2lv
bmFsU3RhdGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBmaW5hbDsKKyAgICB2b2lkIHNldE1h
aW5Eb2N1bWVudEVycm9yKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VFcnJvciYpIGZpbmFsOworICAgIGJvb2wgZGlzcGF0Y2hEaWRMb2FkUmVzb3VyY2VG
cm9tTWVtb3J5Q2FjaGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgaW50IGxl
bmd0aCkgZmluYWw7CiAKLSAgICB2b2lkIHNldE1haW5GcmFtZURvY3VtZW50UmVhZHkoYm9vbCkg
b3ZlcnJpZGU7CisgICAgdm9pZCBzZXRNYWluRnJhbWVEb2N1bWVudFJlYWR5KGJvb2wpIGZpbmFs
OwogCi0gICAgdm9pZCBzdGFydERvd25sb2FkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYsIGNvbnN0IFN0cmluZyYgc3VnZ2VzdGVkTmFtZSA9IFN0cmluZygpKSBvdmVycmlkZTsKKyAg
ICB2b2lkIHN0YXJ0RG93bmxvYWQoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29u
c3QgU3RyaW5nJiBzdWdnZXN0ZWROYW1lID0gU3RyaW5nKCkpIGZpbmFsOwogCi0gICAgdm9pZCB3
aWxsQ2hhbmdlVGl0bGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBvdmVycmlkZTsKLSAgICB2
b2lkIGRpZENoYW5nZVRpdGxlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgb3ZlcnJpZGU7Cisg
ICAgdm9pZCB3aWxsQ2hhbmdlVGl0bGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBmaW5hbDsK
KyAgICB2b2lkIGRpZENoYW5nZVRpdGxlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgZmluYWw7
CiAKLSAgICB2b2lkIHdpbGxSZXBsYWNlTXVsdGlwYXJ0Q29udGVudCgpIG92ZXJyaWRlIHsgfQot
ICAgIHZvaWQgZGlkUmVwbGFjZU11bHRpcGFydENvbnRlbnQoKSBvdmVycmlkZTsKKyAgICB2b2lk
IHdpbGxSZXBsYWNlTXVsdGlwYXJ0Q29udGVudCgpIGZpbmFsIHsgfQorICAgIHZvaWQgZGlkUmVw
bGFjZU11bHRpcGFydENvbnRlbnQoKSBmaW5hbDsKIAotICAgIHZvaWQgY29tbWl0dGVkTG9hZChX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IGNoYXIqLCBpbnQpIG92ZXJyaWRlOwotICAg
IHZvaWQgZmluaXNoZWRMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgb3ZlcnJpZGU7
Ci0gICAgdm9pZCB1cGRhdGVHbG9iYWxIaXN0b3J5KCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCB1cGRh
dGVHbG9iYWxIaXN0b3J5UmVkaXJlY3RMaW5rcygpIG92ZXJyaWRlOworICAgIHZvaWQgY29tbWl0
dGVkTG9hZChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IGNoYXIqLCBpbnQpIGZpbmFs
OworICAgIHZvaWQgZmluaXNoZWRMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgZmlu
YWw7CisgICAgdm9pZCB1cGRhdGVHbG9iYWxIaXN0b3J5KCkgZmluYWw7CisgICAgdm9pZCB1cGRh
dGVHbG9iYWxIaXN0b3J5UmVkaXJlY3RMaW5rcygpIGZpbmFsOwogCi0gICAgYm9vbCBzaG91bGRH
b1RvSGlzdG9yeUl0ZW0oV2ViQ29yZTo6SGlzdG9yeUl0ZW0qKSBjb25zdCBvdmVycmlkZTsKLSAg
ICB2b2lkIHVwZGF0ZUdsb2JhbEhpc3RvcnlJdGVtRm9yUGFnZSgpIG92ZXJyaWRlOworICAgIGJv
b2wgc2hvdWxkR29Ub0hpc3RvcnlJdGVtKFdlYkNvcmU6Okhpc3RvcnlJdGVtKikgY29uc3QgZmlu
YWw7CisgICAgdm9pZCB1cGRhdGVHbG9iYWxIaXN0b3J5SXRlbUZvclBhZ2UoKSBmaW5hbDsKIAot
ICAgIHZvaWQgZGlkRGlzcGxheUluc2VjdXJlQ29udGVudCgpIG92ZXJyaWRlOwotICAgIHZvaWQg
ZGlkUnVuSW5zZWN1cmVDb250ZW50KFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luKiwgY29uc3QgV2Vi
Q29yZTo6VVJMJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWREZXRlY3RYU1MoY29uc3QgV2ViQ29y
ZTo6VVJMJiwgYm9vbCBkaWRCbG9ja0VudGlyZVBhZ2UpIG92ZXJyaWRlOworICAgIHZvaWQgZGlk
RGlzcGxheUluc2VjdXJlQ29udGVudCgpIGZpbmFsOworICAgIHZvaWQgZGlkUnVuSW5zZWN1cmVD
b250ZW50KFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luKiwgY29uc3QgV2ViQ29yZTo6VVJMJikgZmlu
YWw7CisgICAgdm9pZCBkaWREZXRlY3RYU1MoY29uc3QgV2ViQ29yZTo6VVJMJiwgYm9vbCBkaWRC
bG9ja0VudGlyZVBhZ2UpIGZpbmFsOwogCi0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBjYW5j
ZWxsZWRFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKLSAg
ICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGJsb2NrZWRFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGJsb2Nr
ZWRCeUNvbnRlbnRCbG9ja2VyRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikg
b3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBjYW5ub3RTaG93VVJMRXJyb3Io
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6
UmVzb3VyY2VFcnJvciBpbnRlcnJ1cHRlZEZvclBvbGljeUNoYW5nZUVycm9yKGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRlOworICAgIFdlYkNvcmU6OlJlc291cmNlRXJy
b3IgY2FuY2VsbGVkRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7
CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkRXJyb3IoY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9j
a2VkQnlDb250ZW50QmxvY2tlckVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYp
IGZpbmFsOworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgY2Fubm90U2hvd1VSTEVycm9yKGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOworICAgIFdlYkNvcmU6OlJlc291
cmNlRXJyb3IgaW50ZXJydXB0ZWRGb3JQb2xpY3lDaGFuZ2VFcnJvcihjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKICNpZiBFTkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCi0g
ICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkQnlDb250ZW50RmlsdGVyRXJyb3IoY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6UmVz
b3VyY2VFcnJvciBibG9ja2VkQnlDb250ZW50RmlsdGVyRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0JikgZmluYWw7CiAjZW5kaWYKIAotICAgIFdlYkNvcmU6OlJlc291cmNlRXJy
b3IgY2Fubm90U2hvd01JTUVUeXBlRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25z
ZSYpIG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgZmlsZURvZXNOb3RFeGlz
dEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKLSAgICBX
ZWJDb3JlOjpSZXNvdXJjZUVycm9yIHBsdWdpbldpbGxIYW5kbGVMb2FkRXJyb3IoY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOworICAgIFdlYkNvcmU6OlJlc291cmNl
RXJyb3IgY2Fubm90U2hvd01JTUVUeXBlRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNw
b25zZSYpIGZpbmFsOworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgZmlsZURvZXNOb3RFeGlz
dEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICBXZWJD
b3JlOjpSZXNvdXJjZUVycm9yIHBsdWdpbldpbGxIYW5kbGVMb2FkRXJyb3IoY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOwogCi0gICAgYm9vbCBzaG91bGRGYWxsQmFjayhj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRG
YWxsQmFjayhjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmluYWw7CiAKLSAgICBXVEY6
OlN0cmluZyB1c2VyQWdlbnQoY29uc3QgV2ViQ29yZTo6VVJMJikgb3ZlcnJpZGU7CisgICAgV1RG
OjpTdHJpbmcgdXNlckFnZW50KGNvbnN0IFdlYkNvcmU6OlVSTCYpIGZpbmFsOwogICAgIAotICAg
IHZvaWQgc2F2ZVBsYXRmb3JtRGF0YVRvQ2FjaGVkRnJhbWUoV2ViQ29yZTo6Q2FjaGVkRnJhbWUq
KSBvdmVycmlkZTsKLSAgICB2b2lkIHRyYW5zaXRpb25Ub0NvbW1pdHRlZEZyb21DYWNoZWRGcmFt
ZShXZWJDb3JlOjpDYWNoZWRGcmFtZSopIG92ZXJyaWRlOworICAgIHZvaWQgc2F2ZVBsYXRmb3Jt
RGF0YVRvQ2FjaGVkRnJhbWUoV2ViQ29yZTo6Q2FjaGVkRnJhbWUqKSBmaW5hbDsKKyAgICB2b2lk
IHRyYW5zaXRpb25Ub0NvbW1pdHRlZEZyb21DYWNoZWRGcmFtZShXZWJDb3JlOjpDYWNoZWRGcmFt
ZSopIGZpbmFsOwogI2lmIFBMQVRGT1JNKElPUykKLSAgICB2b2lkIGRpZFJlc3RvcmVGcmFtZUhp
ZXJhcmNoeUZvckNhY2hlZEZyYW1lKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRSZXN0b3JlRnJh
bWVIaWVyYXJjaHlGb3JDYWNoZWRGcmFtZSgpIGZpbmFsOwogI2VuZGlmCi0gICAgdm9pZCB0cmFu
c2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdlKCkgb3ZlcnJpZGU7CisgICAgdm9pZCB0cmFuc2l0
aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdlKCkgZmluYWw7CiAKLSAgICB2b2lkIGRpZFNhdmVUb1Bh
Z2VDYWNoZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkUmVzdG9yZUZyb21QYWdlQ2FjaGUoKSBv
dmVycmlkZTsKKyAgICB2b2lkIGRpZFNhdmVUb1BhZ2VDYWNoZSgpIGZpbmFsOworICAgIHZvaWQg
ZGlkUmVzdG9yZUZyb21QYWdlQ2FjaGUoKSBmaW5hbDsKIAotICAgIHZvaWQgZGlzcGF0Y2hEaWRC
ZWNvbWVGcmFtZXNldChib29sKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGlkQmVjb21l
RnJhbWVzZXQoYm9vbCkgZmluYWw7CiAKLSAgICBib29sIGNhbkhhbmRsZVJlcXVlc3QoY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgYm9vbCBjYW5T
aG93TUlNRVR5cGUoY29uc3QgV1RGOjpTdHJpbmcmIE1JTUVUeXBlKSBjb25zdCBvdmVycmlkZTsK
LSAgICBib29sIGNhblNob3dNSU1FVHlwZUFzSFRNTChjb25zdCBXVEY6OlN0cmluZyYgTUlNRVR5
cGUpIGNvbnN0IG92ZXJyaWRlOwotICAgIGJvb2wgcmVwcmVzZW50YXRpb25FeGlzdHNGb3JVUkxT
Y2hlbWUoY29uc3QgV1RGOjpTdHJpbmcmIFVSTFNjaGVtZSkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAg
V1RGOjpTdHJpbmcgZ2VuZXJhdGVkTUlNRVR5cGVGb3JVUkxTY2hlbWUoY29uc3QgV1RGOjpTdHJp
bmcmIFVSTFNjaGVtZSkgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBjYW5IYW5kbGVSZXF1ZXN0
KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGNvbnN0IGZpbmFsOworICAgIGJvb2wg
Y2FuU2hvd01JTUVUeXBlKGNvbnN0IFdURjo6U3RyaW5nJiBNSU1FVHlwZSkgY29uc3QgZmluYWw7
CisgICAgYm9vbCBjYW5TaG93TUlNRVR5cGVBc0hUTUwoY29uc3QgV1RGOjpTdHJpbmcmIE1JTUVU
eXBlKSBjb25zdCBmaW5hbDsKKyAgICBib29sIHJlcHJlc2VudGF0aW9uRXhpc3RzRm9yVVJMU2No
ZW1lKGNvbnN0IFdURjo6U3RyaW5nJiBVUkxTY2hlbWUpIGNvbnN0IGZpbmFsOworICAgIFdURjo6
U3RyaW5nIGdlbmVyYXRlZE1JTUVUeXBlRm9yVVJMU2NoZW1lKGNvbnN0IFdURjo6U3RyaW5nJiBV
UkxTY2hlbWUpIGNvbnN0IGZpbmFsOwogCi0gICAgdm9pZCBmcmFtZUxvYWRDb21wbGV0ZWQoKSBv
dmVycmlkZTsKLSAgICB2b2lkIHNhdmVWaWV3U3RhdGVUb0l0ZW0oV2ViQ29yZTo6SGlzdG9yeUl0
ZW0mKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlc3RvcmVWaWV3U3RhdGUoKSBvdmVycmlkZTsKLSAg
ICB2b2lkIHByb3Zpc2lvbmFsTG9hZFN0YXJ0ZWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZEZp
bmlzaExvYWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIHByZXBhcmVGb3JEYXRhU291cmNlUmVwbGFj
ZW1lbnQoKSBvdmVycmlkZTsKLSAgICBSZWY8V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI+IGNyZWF0
ZURvY3VtZW50TG9hZGVyKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdl
YkNvcmU6OlN1YnN0aXR1dGVEYXRhJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCB1cGRhdGVDYWNoZWRE
b2N1bWVudExvYWRlcihXZWJDb3JlOjpEb2N1bWVudExvYWRlciYpIG92ZXJyaWRlIHsgfQorICAg
IHZvaWQgZnJhbWVMb2FkQ29tcGxldGVkKCkgZmluYWw7CisgICAgdm9pZCBzYXZlVmlld1N0YXRl
VG9JdGVtKFdlYkNvcmU6Okhpc3RvcnlJdGVtJikgZmluYWw7CisgICAgdm9pZCByZXN0b3JlVmll
d1N0YXRlKCkgZmluYWw7CisgICAgdm9pZCBwcm92aXNpb25hbExvYWRTdGFydGVkKCkgZmluYWw7
CisgICAgdm9pZCBkaWRGaW5pc2hMb2FkKCkgZmluYWw7CisgICAgdm9pZCBwcmVwYXJlRm9yRGF0
YVNvdXJjZVJlcGxhY2VtZW50KCkgZmluYWw7CisgICAgUmVmPFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyPiBjcmVhdGVEb2N1bWVudExvYWRlcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qm
LCBjb25zdCBXZWJDb3JlOjpTdWJzdGl0dXRlRGF0YSYpIGZpbmFsOworICAgIHZvaWQgdXBkYXRl
Q2FjaGVkRG9jdW1lbnRMb2FkZXIoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXImKSBmaW5hbCB7IH0K
IAotICAgIHZvaWQgc2V0VGl0bGUoY29uc3QgV2ViQ29yZTo6U3RyaW5nV2l0aERpcmVjdGlvbiYs
IGNvbnN0IFdlYkNvcmU6OlVSTCYpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0VGl0bGUoY29uc3Qg
V2ViQ29yZTo6U3RyaW5nV2l0aERpcmVjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlVSTCYpIGZpbmFs
OwogCi0gICAgUmVmUHRyPFdlYkNvcmU6OkZyYW1lPiBjcmVhdGVGcmFtZShjb25zdCBXZWJDb3Jl
OjpVUkwmLCBjb25zdCBXVEY6OlN0cmluZyYgbmFtZSwgV2ViQ29yZTo6SFRNTEZyYW1lT3duZXJF
bGVtZW50KiwKLSAgICAgICAgY29uc3QgV1RGOjpTdHJpbmcmIHJlZmVycmVyLCBib29sIGFsbG93
c1Njcm9sbGluZywgaW50IG1hcmdpbldpZHRoLCBpbnQgbWFyZ2luSGVpZ2h0KSBvdmVycmlkZTsK
LSAgICBSZWZQdHI8V2ViQ29yZTo6V2lkZ2V0PiBjcmVhdGVQbHVnaW4oY29uc3QgV2ViQ29yZTo6
SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50KiwgY29uc3QgV2ViQ29yZTo6VVJM
JiwgY29uc3QgVmVjdG9yPFdURjo6U3RyaW5nPiYsCi0gICAgICAgIGNvbnN0IFZlY3RvcjxXVEY6
OlN0cmluZz4mLCBjb25zdCBXVEY6OlN0cmluZyYsIGJvb2wpIG92ZXJyaWRlOwotICAgIHZvaWQg
cmVjcmVhdGVQbHVnaW4oV2ViQ29yZTo6V2lkZ2V0Kikgb3ZlcnJpZGU7Ci0gICAgdm9pZCByZWRp
cmVjdERhdGFUb1BsdWdpbihXZWJDb3JlOjpXaWRnZXQqIHBsdWdpbldpZGdldCkgb3ZlcnJpZGU7
CisgICAgUmVmUHRyPFdlYkNvcmU6OkZyYW1lPiBjcmVhdGVGcmFtZShjb25zdCBXZWJDb3JlOjpV
UkwmLCBjb25zdCBXVEY6OlN0cmluZyYgbmFtZSwgV2ViQ29yZTo6SFRNTEZyYW1lT3duZXJFbGVt
ZW50JiwKKyAgICAgICAgY29uc3QgV1RGOjpTdHJpbmcmIHJlZmVycmVyLCBib29sIGFsbG93c1Nj
cm9sbGluZywgaW50IG1hcmdpbldpZHRoLCBpbnQgbWFyZ2luSGVpZ2h0KSBmaW5hbDsKKyAgICBS
ZWZQdHI8V2ViQ29yZTo6V2lkZ2V0PiBjcmVhdGVQbHVnaW4oY29uc3QgV2ViQ29yZTo6SW50U2l6
ZSYsIFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50JiwgY29uc3QgV2ViQ29yZTo6VVJMJiwKKyAg
ICAgICAgY29uc3QgVmVjdG9yPFdURjo6U3RyaW5nPiYsIGNvbnN0IFZlY3RvcjxXVEY6OlN0cmlu
Zz4mLCBjb25zdCBXVEY6OlN0cmluZyYsIGJvb2wpIGZpbmFsOworICAgIHZvaWQgcmVjcmVhdGVQ
bHVnaW4oV2ViQ29yZTo6V2lkZ2V0KikgZmluYWw7CisgICAgdm9pZCByZWRpcmVjdERhdGFUb1Bs
dWdpbihXZWJDb3JlOjpXaWRnZXQqIHBsdWdpbldpZGdldCkgZmluYWw7CiAKICNpZiBFTkFCTEUo
V0VCR0wpCi0gICAgV2ViQ29yZTo6V2ViR0xMb2FkUG9saWN5IHdlYkdMUG9saWN5Rm9yVVJMKGNv
bnN0IFN0cmluZyYpIGNvbnN0IG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OldlYkdMTG9hZFBvbGlj
eSByZXNvbHZlV2ViR0xQb2xpY3lGb3JVUkwoY29uc3QgU3RyaW5nJikgY29uc3Qgb3ZlcnJpZGU7
Ci0jZW5kaWYgLy8gRU5BQkxFKFdFQkdMKQorICAgIFdlYkNvcmU6OldlYkdMTG9hZFBvbGljeSB3
ZWJHTFBvbGljeUZvclVSTChjb25zdCBTdHJpbmcmKSBjb25zdCBmaW5hbDsKKyAgICBXZWJDb3Jl
OjpXZWJHTExvYWRQb2xpY3kgcmVzb2x2ZVdlYkdMUG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYp
IGNvbnN0IGZpbmFsOworI2VuZGlmCiAKLSAgICBQYXNzUmVmUHRyPFdlYkNvcmU6OldpZGdldD4g
Y3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBXZWJDb3JlOjpJbnRTaXplJiwgV2ViQ29yZTo6
SFRNTEFwcGxldEVsZW1lbnQqLCBjb25zdCBXZWJDb3JlOjpVUkwmIGJhc2VVUkwsCi0gICAgICAg
IGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxXVEY6
OlN0cmluZz4mIHBhcmFtVmFsdWVzKSBvdmVycmlkZTsKKyAgICBSZWZQdHI8V2ViQ29yZTo6V2lk
Z2V0PiBjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IFdlYkNvcmU6OkludFNpemUmLCBXZWJD
b3JlOjpIVE1MQXBwbGV0RWxlbWVudCYsIGNvbnN0IFdlYkNvcmU6OlVSTCYgYmFzZVVSTCwKKyAg
ICAgICAgY29uc3QgVmVjdG9yPFdURjo6U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9y
PFdURjo6U3RyaW5nPiYgcGFyYW1WYWx1ZXMpIGZpbmFsOwogICAgIAotICAgIFdlYkNvcmU6Ok9i
amVjdENvbnRlbnRUeXBlIG9iamVjdENvbnRlbnRUeXBlKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNv
bnN0IFdURjo6U3RyaW5nJiBtaW1lVHlwZSkgb3ZlcnJpZGU7Ci0gICAgV1RGOjpTdHJpbmcgb3Zl
cnJpZGVNZWRpYVR5cGUoKSBjb25zdCBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpPYmplY3RDb250
ZW50VHlwZSBvYmplY3RDb250ZW50VHlwZShjb25zdCBXZWJDb3JlOjpVUkwmLCBjb25zdCBXVEY6
OlN0cmluZyYgbWltZVR5cGUpIGZpbmFsOworICAgIFdURjo6U3RyaW5nIG92ZXJyaWRlTWVkaWFU
eXBlKCkgY29uc3QgZmluYWw7CiAgICAgCi0gICAgdm9pZCBkaXNwYXRjaERpZENsZWFyV2luZG93
T2JqZWN0SW5Xb3JsZChXZWJDb3JlOjpET01XcmFwcGVyV29ybGQmKSBvdmVycmlkZTsKKyAgICB2
b2lkIGRpc3BhdGNoRGlkQ2xlYXJXaW5kb3dPYmplY3RJbldvcmxkKFdlYkNvcmU6OkRPTVdyYXBw
ZXJXb3JsZCYpIGZpbmFsOwogCi0gICAgdm9pZCByZWdpc3RlckZvckljb25Ob3RpZmljYXRpb24o
Ym9vbCBsaXN0ZW4pIG92ZXJyaWRlOworICAgIHZvaWQgcmVnaXN0ZXJGb3JJY29uTm90aWZpY2F0
aW9uKGJvb2wgbGlzdGVuKSBmaW5hbDsKIAogI2lmIFBMQVRGT1JNKElPUykKLSAgICBib29sIHNo
b3VsZExvYWRNZWRpYUVsZW1lbnRVUkwoY29uc3QgV2ViQ29yZTo6VVJMJikgY29uc3Qgb3ZlcnJp
ZGU7CisgICAgYm9vbCBzaG91bGRMb2FkTWVkaWFFbGVtZW50VVJMKGNvbnN0IFdlYkNvcmU6OlVS
TCYpIGNvbnN0IGZpbmFsOwogI2VuZGlmCiAKLSAgICBSZW1vdGVBWE9iamVjdFJlZiBhY2Nlc3Np
YmlsaXR5UmVtb3RlT2JqZWN0KCkgb3ZlcnJpZGUgeyByZXR1cm4gMDsgfQorICAgIFJlbW90ZUFY
T2JqZWN0UmVmIGFjY2Vzc2liaWxpdHlSZW1vdGVPYmplY3QoKSBmaW5hbCB7IHJldHVybiAwOyB9
CiAgICAgCiAgICAgUmV0YWluUHRyPFdlYkZyYW1lUG9saWN5TGlzdGVuZXI+IHNldFVwUG9saWN5
TGlzdGVuZXIoV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbiwgTlNVUkwgKmFwcExpbmtVUkwg
PSBuaWwpOwogCi0gICAgTlNEaWN0aW9uYXJ5ICphY3Rpb25EaWN0aW9uYXJ5KGNvbnN0IFdlYkNv
cmU6Ok5hdmlnYXRpb25BY3Rpb24mLCBQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4pIGNv
bnN0OworICAgIE5TRGljdGlvbmFyeSAqYWN0aW9uRGljdGlvbmFyeShjb25zdCBXZWJDb3JlOjpO
YXZpZ2F0aW9uQWN0aW9uJiwgV2ViQ29yZTo6Rm9ybVN0YXRlKikgY29uc3Q7CiAgICAgCi0gICAg
Ym9vbCBjYW5DYWNoZVBhZ2UoKSBjb25zdCBvdmVycmlkZTsKKyAgICBib29sIGNhbkNhY2hlUGFn
ZSgpIGNvbnN0IGZpbmFsOwogCi0gICAgUGFzc1JlZlB0cjxXZWJDb3JlOjpGcmFtZU5ldHdvcmtp
bmdDb250ZXh0PiBjcmVhdGVOZXR3b3JraW5nQ29udGV4dCgpIG92ZXJyaWRlOworICAgIFJlZjxX
ZWJDb3JlOjpGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBjcmVhdGVOZXR3b3JraW5nQ29udGV4dCgp
IGZpbmFsOwogCiAjaWYgRU5BQkxFKFJFUVVFU1RfQVVUT0NPTVBMRVRFKQotICAgIHZvaWQgZGlk
UmVxdWVzdEF1dG9jb21wbGV0ZShQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4pIG92ZXJy
aWRlIHsgfQorICAgIHZvaWQgZGlkUmVxdWVzdEF1dG9jb21wbGV0ZShSZWY8V2ViQ29yZTo6Rm9y
bVN0YXRlPiYmKSBmaW5hbCB7IH0KICNlbmRpZgogCi0gICAgYm9vbCBzaG91bGRQYWludEJyb2tl
bkltYWdlKGNvbnN0IFdlYkNvcmU6OlVSTCYpIGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wgc2hv
dWxkUGFpbnRCcm9rZW5JbWFnZShjb25zdCBXZWJDb3JlOjpVUkwmKSBjb25zdCBmaW5hbDsKIAog
I2lmIFVTRShRVUlDS19MT09LKQotICAgIHZvaWQgZGlkQ3JlYXRlUXVpY2tMb29rSGFuZGxlKFdl
YkNvcmU6OlF1aWNrTG9va0hhbmRsZSYpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkQ3JlYXRlUXVp
Y2tMb29rSGFuZGxlKFdlYkNvcmU6OlF1aWNrTG9va0hhbmRsZSYpIGZpbmFsOwogI2VuZGlmCiAK
ICNpZiBFTkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCi0gICAgdm9pZCBjb250ZW50RmlsdGVyRGlk
QmxvY2tMb2FkKFdlYkNvcmU6OkNvbnRlbnRGaWx0ZXJVbmJsb2NrSGFuZGxlcikgb3ZlcnJpZGU7
CisgICAgdm9pZCBjb250ZW50RmlsdGVyRGlkQmxvY2tMb2FkKFdlYkNvcmU6OkNvbnRlbnRGaWx0
ZXJVbmJsb2NrSGFuZGxlcikgZmluYWw7CiAjZW5kaWYKIAotICAgIHZvaWQgcHJlZmV0Y2hETlMo
Y29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7CisgICAgdm9pZCBwcmVmZXRjaEROUyhjb25zdCBTdHJp
bmcmKSBmaW5hbDsKIAogICAgIFJldGFpblB0cjxXZWJGcmFtZT4gbV93ZWJGcmFtZTsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJD
bGllbnQubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRl
ckNsaWVudC5tbQppbmRleCA0ZTliMmUyNzJkMmQzOWRhYTgwZGEwY2NhNDNkZDJmYTA5ODljMTA1
Li5hNTQ3M2UzYjhlZTk0YjRjMTk4YmVkYTQzNGE5YzM2MTI1NDQxMjAxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5tbQor
KysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVu
dC5tbQpAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNiBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKQEAgLTEyOCw3ICsxMjgsNyBAQAogI2ltcG9ydCA8cnVudGltZS9Jbml0aWFsaXplVGhy
ZWFkaW5nLmg+CiAjaW1wb3J0IDx3dGYvQmxvY2tPYmpDRXhjZXB0aW9ucy5oPgogI2ltcG9ydCA8
d3RmL01haW5UaHJlYWQuaD4KLSNpbXBvcnQgPHd0Zi9QYXNzUmVmUHRyLmg+CisjaW1wb3J0IDx3
dGYvUmVmLmg+CiAjaW1wb3J0IDx3dGYvUnVuTG9vcC5oPgogI2ltcG9ydCA8d3RmL3RleHQvV1RG
U3RyaW5nLmg+CiAKQEAgLTg4NCw3ICs4ODQsNyBAQCBzdGF0aWMgQk9PTCBzaG91bGRUcnlBcHBM
aW5rKFdlYlZpZXcgKndlYlZpZXcsIGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIGFjdGlvbiwgRgog
I2VuZGlmCiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9s
aWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIGFjdGlvbiwgY29u
c3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4gZm9ybVN0
YXRlLCBjb25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgRnJhbWVQb2xpY3lGdW5jdGlvbiBmdW5jdGlv
bikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3
V2luZG93QWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIGFjdGlvbiwgY29uc3QgUmVzb3Vy
Y2VSZXF1ZXN0JiByZXF1ZXN0LCBGb3JtU3RhdGUqIGZvcm1TdGF0ZSwgY29uc3QgU3RyaW5nJiBm
cmFtZU5hbWUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24pCiB7CiAgICAgV2ViVmlldyAq
d2ViVmlldyA9IGdldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSk7CiAgICAgQk9PTCB0cnlBcHBM
aW5rID0gc2hvdWxkVHJ5QXBwTGluayh3ZWJWaWV3LCBhY3Rpb24sIG51bGxwdHIpOwpAQCAtODk2
LDcgKzg5Niw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9s
aWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IE5hdmlnYXRpCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGRlY2lzaW9uTGlzdGVuZXI6c2V0VXBQb2xpY3lMaXN0ZW5lcihXVEZNb3ZlKGZ1bmN0
aW9uKSwgdHJ5QXBwTGluayA/IChOU1VSTCAqKXJlcXVlc3QudXJsKCkgOiBuaWwpLmdldCgpXTsK
IH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JO
YXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIGFjdGlvbiwgY29uc3QgUmVz
b3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4gZm9ybVN0YXRlLCBG
cmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5hdmlnYXRpb25B
Y3Rpb24mIGFjdGlvbiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBGb3JtU3RhdGUq
IGZvcm1TdGF0ZSwgRnJhbWVQb2xpY3lGdW5jdGlvbiBmdW5jdGlvbikKIHsKICAgICBXZWJWaWV3
ICp3ZWJWaWV3ID0gZ2V0V2ViVmlldyhtX3dlYkZyYW1lLmdldCgpKTsKICAgICBCT09MIHRyeUFw
cExpbmsgPSBzaG91bGRUcnlBcHBMaW5rKHdlYlZpZXcsIGFjdGlvbiwgY29yZShtX3dlYkZyYW1l
LmdldCgpKSk7CkBAIC05MjAsMjkgKzkyMCwyOCBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50
OjpkaXNwYXRjaFVuYWJsZVRvSW1wbGVtZW50UG9saWN5KGNvbnN0IFJlc291cmNlRXJyb3ImCiAg
ICAgW1t3ZWJWaWV3IF9wb2xpY3lEZWxlZ2F0ZUZvcndhcmRlcl0gd2ViVmlldzp3ZWJWaWV3IHVu
YWJsZVRvSW1wbGVtZW50UG9saWN5V2l0aEVycm9yOmVycm9yIGZyYW1lOm1fd2ViRnJhbWUuZ2V0
KCldOyAgICAKIH0KIAotc3RhdGljIE5TRGljdGlvbmFyeSAqbWFrZUZvcm1GaWVsZFZhbHVlc0Rp
Y3Rpb25hcnkoRm9ybVN0YXRlKiBmb3JtU3RhdGUpCitzdGF0aWMgTlNEaWN0aW9uYXJ5ICptYWtl
Rm9ybUZpZWxkVmFsdWVzRGljdGlvbmFyeShGb3JtU3RhdGUmIGZvcm1TdGF0ZSkKIHsKLSAgICBj
b25zdCBTdHJpbmdQYWlyVmVjdG9yJiB0ZXh0RmllbGRWYWx1ZXMgPSBmb3JtU3RhdGUtPnRleHRG
aWVsZFZhbHVlcygpOworICAgIGF1dG8mIHRleHRGaWVsZFZhbHVlcyA9IGZvcm1TdGF0ZS50ZXh0
RmllbGRWYWx1ZXMoKTsKICAgICBzaXplX3Qgc2l6ZSA9IHRleHRGaWVsZFZhbHVlcy5zaXplKCk7
CiAgICAgTlNNdXRhYmxlRGljdGlvbmFyeSAqZGljdGlvbmFyeSA9IFtbTlNNdXRhYmxlRGljdGlv
bmFyeSBhbGxvY10gaW5pdFdpdGhDYXBhY2l0eTpzaXplXTsKLSAgICBmb3IgKHNpemVfdCBpID0g
MDsgaSA8IHNpemU7ICsraSkKLSAgICAgICAgW2RpY3Rpb25hcnkgc2V0T2JqZWN0OnRleHRGaWVs
ZFZhbHVlc1tpXS5zZWNvbmQgZm9yS2V5OnRleHRGaWVsZFZhbHVlc1tpXS5maXJzdF07Ci0KKyAg
ICBmb3IgKGF1dG8mIHZhbHVlIDogdGV4dEZpZWxkVmFsdWVzKQorICAgICAgICBbZGljdGlvbmFy
eSBzZXRPYmplY3Q6dmFsdWUuc2Vjb25kIGZvcktleTp2YWx1ZS5maXJzdF07CiAgICAgcmV0dXJu
IFtkaWN0aW9uYXJ5IGF1dG9yZWxlYXNlXTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVu
dDo6ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0
YXRlPiBmb3JtU3RhdGUpCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxT
ZW5kU3VibWl0RXZlbnQoUmVmPFdlYkNvcmU6OkZvcm1TdGF0ZT4mJiBmb3JtU3RhdGUpCiB7CiAg
ICAgaWQgPFdlYkZvcm1EZWxlZ2F0ZT4gZm9ybURlbGVnYXRlID0gW2dldFdlYlZpZXcobV93ZWJG
cmFtZS5nZXQoKSkgX2Zvcm1EZWxlZ2F0ZV07CiAgICAgaWYgKCFmb3JtRGVsZWdhdGUpCiAgICAg
ICAgIHJldHVybjsKIAotICAgIERPTUhUTUxGb3JtRWxlbWVudCAqZm9ybUVsZW1lbnQgPSBraXQo
Zm9ybVN0YXRlLT5mb3JtKCkpOworICAgIERPTUhUTUxGb3JtRWxlbWVudCAqZm9ybUVsZW1lbnQg
PSBraXQoJmZvcm1TdGF0ZS0+Zm9ybSgpKTsKICAgICBOU0RpY3Rpb25hcnkgKnZhbHVlcyA9IG1h
a2VGb3JtRmllbGRWYWx1ZXNEaWN0aW9uYXJ5KGZvcm1TdGF0ZS5nZXQoKSk7CiAgICAgQ2FsbEZv
cm1EZWxlZ2F0ZShnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkpLCBAc2VsZWN0b3Iod2lsbFNl
bmRTdWJtaXRFdmVudFRvRm9ybTppbkZyYW1lOndpdGhWYWx1ZXM6KSwgZm9ybUVsZW1lbnQsIG1f
d2ViRnJhbWUuZ2V0KCksIHZhbHVlcyk7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0oUGFzc1JlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSwg
RnJhbWVQb2xpY3lGdW5jdGlvbiBmdW5jdGlvbikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0oRm9ybVN0YXRlJiBmb3JtU3RhdGUsIEZyYW1lUG9saWN5
RnVuY3Rpb24gZnVuY3Rpb24pCiB7CiAgICAgaWQgPFdlYkZvcm1EZWxlZ2F0ZT4gZm9ybURlbGVn
YXRlID0gW2dldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSkgX2Zvcm1EZWxlZ2F0ZV07CiAgICAg
aWYgKCFmb3JtRGVsZWdhdGUpIHsKQEAgLTk1MCw4ICs5NDksOCBAQCB2b2lkIFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiBm
b3JtU3RhdAogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgTlNEaWN0aW9uYXJ5ICp2YWx1
ZXMgPSBtYWtlRm9ybUZpZWxkVmFsdWVzRGljdGlvbmFyeShmb3JtU3RhdGUuZ2V0KCkpOwotICAg
IENhbGxGb3JtRGVsZWdhdGUoZ2V0V2ViVmlldyhtX3dlYkZyYW1lLmdldCgpKSwgQHNlbGVjdG9y
KGZyYW1lOnNvdXJjZUZyYW1lOndpbGxTdWJtaXRGb3JtOndpdGhWYWx1ZXM6c3VibWlzc2lvbkxp
c3RlbmVyOiksIG1fd2ViRnJhbWUuZ2V0KCksIGtpdChmb3JtU3RhdGUtPnNvdXJjZURvY3VtZW50
KCktPmZyYW1lKCkpLCBraXQoZm9ybVN0YXRlLT5mb3JtKCkpLCB2YWx1ZXMsIHNldFVwUG9saWN5
TGlzdGVuZXIoV1RGTW92ZShmdW5jdGlvbikpLmdldCgpKTsKKyAgICBOU0RpY3Rpb25hcnkgKnZh
bHVlcyA9IG1ha2VGb3JtRmllbGRWYWx1ZXNEaWN0aW9uYXJ5KGZvcm1TdGF0ZSk7CisgICAgQ2Fs
bEZvcm1EZWxlZ2F0ZShnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkpLCBAc2VsZWN0b3IoZnJh
bWU6c291cmNlRnJhbWU6d2lsbFN1Ym1pdEZvcm06d2l0aFZhbHVlczpzdWJtaXNzaW9uTGlzdGVu
ZXI6KSwgbV93ZWJGcmFtZS5nZXQoKSwga2l0KGZvcm1TdGF0ZS5zb3VyY2VEb2N1bWVudCgpLmZy
YW1lKCkpLCBraXQoJmZvcm1TdGF0ZS5mb3JtKCkpLCB2YWx1ZXMsIHNldFVwUG9saWN5TGlzdGVu
ZXIoV1RGTW92ZShmdW5jdGlvbikpLmdldCgpKTsKIH0KIAogdm9pZCBXZWJGcmFtZUxvYWRlckNs
aWVudDo6cmV2ZXJ0VG9Qcm92aXNpb25hbFN0YXRlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCkBA
IC0xNTUyLDcgKzE1NTEsNyBAQCBzdGF0aWMgY29uc3QgTW91c2VFdmVudCogZmluZE1vdXNlRXZl
bnQoY29uc3QgRXZlbnQqIGV2ZW50KQogICAgIHJldHVybiAwOwogfQogCi1OU0RpY3Rpb25hcnkg
KldlYkZyYW1lTG9hZGVyQ2xpZW50OjphY3Rpb25EaWN0aW9uYXJ5KGNvbnN0IE5hdmlnYXRpb25B
Y3Rpb24mIGFjdGlvbiwgUGFzc1JlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSkgY29uc3QKK05T
RGljdGlvbmFyeSAqV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmFjdGlvbkRpY3Rpb25hcnkoY29uc3Qg
TmF2aWdhdGlvbkFjdGlvbiYgYWN0aW9uLCBGb3JtU3RhdGUqIGZvcm1TdGF0ZSkgY29uc3QKIHsK
ICAgICB1bnNpZ25lZCBtb2RpZmllckZsYWdzID0gMDsKICAgICBjb25zdCBFdmVudCogZXZlbnQg
PSBhY3Rpb24uZXZlbnQoKTsKQEAgLTE1OTMsMTAgKzE1OTIsOCBAQCBOU0RpY3Rpb25hcnkgKldl
YkZyYW1lTG9hZGVyQ2xpZW50OjphY3Rpb25EaWN0aW9uYXJ5KGNvbnN0IE5hdmlnYXRpb25BY3Rp
b24mIGFjdAogICAgICAgICAgICAgW3Jlc3VsdCBzZXRPYmplY3Q6W05TTnVtYmVyIG51bWJlcldp
dGhJbnQ6V2ViQ29yZTo6Tm9CdXR0b25dIGZvcktleTpXZWJBY3Rpb25CdXR0b25LZXldOwogICAg
IH0KIAotICAgIGlmIChmb3JtU3RhdGUpIHsKLSAgICAgICAgQVNTRVJUKGZvcm1TdGF0ZS0+Zm9y
bSgpKTsKLSAgICAgICAgW3Jlc3VsdCBzZXRPYmplY3Q6a2l0KGZvcm1TdGF0ZS0+Zm9ybSgpKSBm
b3JLZXk6V2ViQWN0aW9uRm9ybUtleV07Ci0gICAgfQorICAgIGlmIChmb3JtU3RhdGUpCisgICAg
ICAgIFtyZXN1bHQgc2V0T2JqZWN0OmtpdCgmZm9ybVN0YXRlLT5mb3JtKCkpIGZvcktleTpXZWJB
Y3Rpb25Gb3JtS2V5XTsKIAogICAgIHJldHVybiByZXN1bHQ7CiB9CkBAIC0xNjIyLDcgKzE2MTks
NyBAQCBib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjYW5DYWNoZVBhZ2UoKSBjb25zdAogICAg
IHJldHVybiB0cnVlOwogfQogCi1SZWZQdHI8RnJhbWU+IFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpj
cmVhdGVGcmFtZShjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiBuYW1lLCBIVE1MRnJhbWVP
d25lckVsZW1lbnQqIG93bmVyRWxlbWVudCwKK1JlZlB0cjxGcmFtZT4gV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIG5hbWUsIEhU
TUxGcmFtZU93bmVyRWxlbWVudCYgb3duZXJFbGVtZW50LAogICAgIGNvbnN0IFN0cmluZyYgcmVm
ZXJyZXIsIGJvb2wgYWxsb3dzU2Nyb2xsaW5nLCBpbnQgbWFyZ2luV2lkdGgsIGludCBtYXJnaW5I
ZWlnaHQpCiB7CiAgICAgQkVHSU5fQkxPQ0tfT0JKQ19FWENFUFRJT05TOwpAQCAtMTYzMSw3ICsx
NjI4LDcgQEAgUmVmUHRyPEZyYW1lPiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlRnJhbWUo
Y29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgbmEKICAgICAKICAgICBXZWJGcmFtZVZpZXcg
KmNoaWxkVmlldyA9IFtbV2ViRnJhbWVWaWV3IGFsbG9jXSBpbml0XTsKICAgICAKLSAgICBSZWZQ
dHI8RnJhbWU+IHJlc3VsdCA9IFtXZWJGcmFtZSBfY3JlYXRlU3ViZnJhbWVXaXRoT3duZXJFbGVt
ZW50Om93bmVyRWxlbWVudCBmcmFtZU5hbWU6bmFtZSBmcmFtZVZpZXc6Y2hpbGRWaWV3XTsKKyAg
ICBSZWZQdHI8RnJhbWU+IHJlc3VsdCA9IFtXZWJGcmFtZSBfY3JlYXRlU3ViZnJhbWVXaXRoT3du
ZXJFbGVtZW50OiZvd25lckVsZW1lbnQgZnJhbWVOYW1lOm5hbWUgZnJhbWVWaWV3OmNoaWxkVmll
d107CiAgICAgW2NoaWxkVmlldyByZWxlYXNlXTsKIAogICAgIFdlYkZyYW1lICpuZXdGcmFtZSA9
IGtpdChyZXN1bHQuZ2V0KCkpOwpAQCAtMTkwOSw3ICsxOTA2LDcgQEAgc3RhdGljIGJvb2wgc2hv
dWxkQmxvY2tQbHVnaW4oV2ViQmFzZVBsdWdpblBhY2thZ2UgKnBsdWdpblBhY2thZ2UpCiAjZW5k
aWYKIH0KIAotUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdp
bihjb25zdCBJbnRTaXplJiBzaXplLCBIVE1MUGx1Z0luRWxlbWVudCogZWxlbWVudCwgY29uc3Qg
VVJMJiB1cmwsCitSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlUGx1
Z2luKGNvbnN0IEludFNpemUmIHNpemUsIEhUTUxQbHVnSW5FbGVtZW50JiBlbGVtZW50LCBjb25z
dCBVUkwmIHVybCwKICAgICBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3Qg
VmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlLCBib29s
IGxvYWRNYW51YWxseSkKIHsKICAgICBCRUdJTl9CTE9DS19PQkpDX0VYQ0VQVElPTlM7CkBAIC0x
OTQ4LDcgKzE5NDUsNyBAQCBSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3Jl
YXRlUGx1Z2luKGNvbnN0IEludFNpemUmIHNpemUsIEhUTUxQbHVnSQogICAgICAgICAgICAgYXR0
cmlidXRlcywgV2ViUGx1Z0luQXR0cmlidXRlc0tleSwKICAgICAgICAgICAgIFtOU051bWJlciBu
dW1iZXJXaXRoSW50OmxvYWRNYW51YWxseSA/IFdlYlBsdWdJbk1vZGVGdWxsIDogV2ViUGx1Z0lu
TW9kZUVtYmVkXSwgV2ViUGx1Z0luTW9kZUtleSwKICAgICAgICAgICAgIFtOU051bWJlciBudW1i
ZXJXaXRoQm9vbDohbG9hZE1hbnVhbGx5XSwgV2ViUGx1Z0luU2hvdWxkTG9hZE1haW5SZXNvdXJj
ZUtleSwKLSAgICAgICAgICAgIGtpdChlbGVtZW50KSwgV2ViUGx1Z0luQ29udGFpbmluZ0VsZW1l
bnRLZXksCisgICAgICAgICAgICBraXQoJmVsZW1lbnQpLCBXZWJQbHVnSW5Db250YWluaW5nRWxl
bWVudEtleSwKICAgICAgICAgICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgYmUgcGFzc2luZyBiYXNl
IFVSTCwgc2VlIDxodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzUyMTU+
LgogICAgICAgICAgICAgcGx1Z2luVVJMLCBXZWJQbHVnSW5CYXNlVVJMS2V5LCAvLyBwbHVnaW5V
UkwgbWlnaHQgYmUgbmlsLCBzbyBhZGQgaXQgbGFzdAogICAgICAgICAgICAgbmlsXTsKQEAgLTE5
OTQsMTEgKzE5OTEsMTEgQEAgUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNy
ZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiBzaXplLCBIVE1MUGx1Z0kKICAgICBpZiAocGx1Z2lu
UGFja2FnZSkgewogICAgICAgICBpZiAoc2hvdWxkQmxvY2tQbHVnaW4ocGx1Z2luUGFja2FnZSkp
IHsKICAgICAgICAgICAgIGVycm9yQ29kZSA9IFdlYktpdEVycm9yQmxvY2tlZFBsdWdJblZlcnNp
b247Ci0gICAgICAgICAgICBpZiAoaXM8UmVuZGVyRW1iZWRkZWRPYmplY3Q+KGVsZW1lbnQtPnJl
bmRlcmVyKCkpKQotICAgICAgICAgICAgICAgIGRvd25jYXN0PFJlbmRlckVtYmVkZGVkT2JqZWN0
PigqZWxlbWVudC0+cmVuZGVyZXIoKSkuc2V0UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24oUmVu
ZGVyRW1iZWRkZWRPYmplY3Q6Okluc2VjdXJlUGx1Z2luVmVyc2lvbik7CisgICAgICAgICAgICBp
ZiAoaXM8UmVuZGVyRW1iZWRkZWRPYmplY3Q+KGVsZW1lbnQucmVuZGVyZXIoKSkpCisgICAgICAg
ICAgICAgICAgZG93bmNhc3Q8UmVuZGVyRW1iZWRkZWRPYmplY3Q+KCplbGVtZW50LnJlbmRlcmVy
KCkpLnNldFBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKFJlbmRlckVtYmVkZGVkT2JqZWN0OjpJ
bnNlY3VyZVBsdWdpblZlcnNpb24pOwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgaWYg
KFtwbHVnaW5QYWNrYWdlIGlzS2luZE9mQ2xhc3M6W1dlYlBsdWdpblBhY2thZ2UgY2xhc3NdXSkK
LSAgICAgICAgICAgICAgICB2aWV3ID0gcGx1Z2luVmlldyhtX3dlYkZyYW1lLmdldCgpLCAoV2Vi
UGx1Z2luUGFja2FnZSAqKXBsdWdpblBhY2thZ2UsIGF0dHJpYnV0ZUtleXMsIGtpdChwYXJhbVZh
bHVlcyksIGJhc2VVUkwsIGtpdChlbGVtZW50KSwgbG9hZE1hbnVhbGx5KTsKKyAgICAgICAgICAg
ICAgICB2aWV3ID0gcGx1Z2luVmlldyhtX3dlYkZyYW1lLmdldCgpLCAoV2ViUGx1Z2luUGFja2Fn
ZSAqKXBsdWdpblBhY2thZ2UsIGF0dHJpYnV0ZUtleXMsIGtpdChwYXJhbVZhbHVlcyksIGJhc2VV
UkwsIGtpdCgmZWxlbWVudCksIGxvYWRNYW51YWxseSk7CiAjaWYgRU5BQkxFKE5FVFNDQVBFX1BM
VUdJTl9BUEkpCiAgICAgICAgICAgICBlbHNlIGlmIChbcGx1Z2luUGFja2FnZSBpc0tpbmRPZkNs
YXNzOltXZWJOZXRzY2FwZVBsdWdpblBhY2thZ2UgY2xhc3NdXSkgewogICAgICAgICAgICAgICAg
IFdlYkJhc2VOZXRzY2FwZVBsdWdpblZpZXcgKnBsdWdpblZpZXcgPSBbW1tORVRTQ0FQRV9QTFVH
SU5fVklFVyBhbGxvY10KQEAgLTIwMTAsNyArMjAwNyw3IEBAIFJlZlB0cjxXaWRnZXQ+IFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYgc2l6ZSwgSFRNTFBs
dWdJCiAgICAgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZUtleXM6YXR0cmlidXRlS2V5cwogICAg
ICAgICAgICAgICAgICAgICBhdHRyaWJ1dGVWYWx1ZXM6a2l0KHBhcmFtVmFsdWVzKQogICAgICAg
ICAgICAgICAgICAgICBsb2FkTWFudWFsbHk6bG9hZE1hbnVhbGx5Ci0gICAgICAgICAgICAgICAg
ICAgIGVsZW1lbnQ6ZWxlbWVudF0gYXV0b3JlbGVhc2VdOworICAgICAgICAgICAgICAgICAgICBl
bGVtZW50OiZlbGVtZW50XSBhdXRvcmVsZWFzZV07CiAKICAgICAgICAgICAgICAgICByZXR1cm4g
YWRvcHRSZWYobmV3IE5ldHNjYXBlUGx1Z2luV2lkZ2V0KHBsdWdpblZpZXcpKTsKICAgICAgICAg
ICAgIH0KQEAgLTIwODEsNyArMjA3OCw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnJl
ZGlyZWN0RGF0YVRvUGx1Z2luKFdpZGdldCogcGx1Z2luV2lkZ2V0KQogICAgIEVORF9CTE9DS19P
QkpDX0VYQ0VQVElPTlM7CiB9CiAgICAgCi1QYXNzUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYgc2l6ZSwgSFRN
TEFwcGxldEVsZW1lbnQqIGVsZW1lbnQsIGNvbnN0IFVSTCYgYmFzZVVSTCwgCitSZWZQdHI8V2lk
Z2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJ
bnRTaXplJiBzaXplLCBIVE1MQXBwbGV0RWxlbWVudCYgZWxlbWVudCwgY29uc3QgVVJMJiBiYXNl
VVJMLAogICAgIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8
U3RyaW5nPiYgcGFyYW1WYWx1ZXMpCiB7CiAgICAgQkVHSU5fQkxPQ0tfT0JKQ19FWENFUFRJT05T
OwpAQCAtMjA5OSw4ICsyMDk2LDggQEAgUGFzc1JlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmIHMKICAgICBpZiAo
cGx1Z2luUGFja2FnZSkgewogICAgICAgICBpZiAoc2hvdWxkQmxvY2tQbHVnaW4ocGx1Z2luUGFj
a2FnZSkpIHsKICAgICAgICAgICAgIGVycm9yQ29kZSA9IFdlYktpdEVycm9yQmxvY2tlZFBsdWdJ
blZlcnNpb247Ci0gICAgICAgICAgICBpZiAoaXM8UmVuZGVyRW1iZWRkZWRPYmplY3Q+KGVsZW1l
bnQtPnJlbmRlcmVyKCkpKQotICAgICAgICAgICAgICAgIGRvd25jYXN0PFJlbmRlckVtYmVkZGVk
T2JqZWN0PigqZWxlbWVudC0+cmVuZGVyZXIoKSkuc2V0UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFz
b24oUmVuZGVyRW1iZWRkZWRPYmplY3Q6Okluc2VjdXJlUGx1Z2luVmVyc2lvbik7CisgICAgICAg
ICAgICBpZiAoaXM8UmVuZGVyRW1iZWRkZWRPYmplY3Q+KGVsZW1lbnQucmVuZGVyZXIoKSkpCisg
ICAgICAgICAgICAgICAgZG93bmNhc3Q8UmVuZGVyRW1iZWRkZWRPYmplY3Q+KCplbGVtZW50LnJl
bmRlcmVyKCkpLnNldFBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKFJlbmRlckVtYmVkZGVkT2Jq
ZWN0OjpJbnNlY3VyZVBsdWdpblZlcnNpb24pOwogICAgICAgICB9IGVsc2UgewogI2lmIEVOQUJM
RShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgICAgICAgICAgaWYgKFtwbHVnaW5QYWNrYWdlIGlz
S2luZE9mQ2xhc3M6W1dlYk5ldHNjYXBlUGx1Z2luUGFja2FnZSBjbGFzc11dKSB7CkBAIC0yMTEy
LDcgKzIxMDksNyBAQCBQYXNzUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNy
ZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYgcwogICAgICAgICAgICAgICAgICAg
ICBhdHRyaWJ1dGVLZXlzOmtpdChwYXJhbU5hbWVzKQogICAgICAgICAgICAgICAgICAgICBhdHRy
aWJ1dGVWYWx1ZXM6a2l0KHBhcmFtVmFsdWVzKQogICAgICAgICAgICAgICAgICAgICBsb2FkTWFu
dWFsbHk6Tk8KLSAgICAgICAgICAgICAgICAgICAgZWxlbWVudDplbGVtZW50XSBhdXRvcmVsZWFz
ZV07CisgICAgICAgICAgICAgICAgICAgIGVsZW1lbnQ6JmVsZW1lbnRdIGF1dG9yZWxlYXNlXTsK
ICAgICAgICAgICAgICAgICBpZiAodmlldykKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGFk
b3B0UmVmKG5ldyBOZXRzY2FwZVBsdWdpbldpZGdldChzdGF0aWNfY2FzdDxXZWJCYXNlTmV0c2Nh
cGVQbHVnaW5WaWV3ICo+KHZpZXcpKSk7CiAgICAgICAgICAgICB9CkBAIC0yMjA5LDcgKzIyMDYs
NyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpyZWdpc3RlckZvckljb25Ob3RpZmljYXRp
b24oYm9vbCBsaXN0ZW4pCiAjZW5kaWYKIH0KIAotUGFzc1JlZlB0cjxGcmFtZU5ldHdvcmtpbmdD
b250ZXh0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKQor
UmVmPEZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVO
ZXR3b3JraW5nQ29udGV4dCgpCiB7CiAgICAgcmV0dXJuIFdlYkZyYW1lTmV0d29ya2luZ0NvbnRl
eHQ6OmNyZWF0ZShjb3JlKG1fd2ViRnJhbWUuZ2V0KCkpKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQuaCBi
L1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRl
eHQuaAppbmRleCBiMDhkNTZlMThjOWM4ZWU2NDE4MGEyMTRmNWZiYjBlZGUwNGY1YTRkLi45N2Uw
ZWFkOWYwOGI3ZjM2MTI3OGEzZDc1NmQ2MjhhNWZhZWFhOTE2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0LmgKKysr
IGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVOZXR3b3JraW5nQ29u
dGV4dC5oCkBAIC0yMywxNiArMjMsMTUgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KICAqLwogCi0jaWZuZGVmIFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHRfaAotI2RlZmlu
ZSBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8
V2ViQ29yZS9GcmFtZU5ldHdvcmtpbmdDb250ZXh0Lmg+CiAKIGNsYXNzIFdlYkZyYW1lTmV0d29y
a2luZ0NvbnRleHQgOiBwdWJsaWMgV2ViQ29yZTo6RnJhbWVOZXR3b3JraW5nQ29udGV4dCB7CiBw
dWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8V2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dD4g
Y3JlYXRlKFdlYkNvcmU6OkZyYW1lKiBmcmFtZSkKKyAgICBzdGF0aWMgUmVmPFdlYkZyYW1lTmV0
d29ya2luZ0NvbnRleHQ+IGNyZWF0ZShXZWJDb3JlOjpGcmFtZSogZnJhbWUpCiAgICAgewotICAg
ICAgICByZXR1cm4gYWRvcHRSZWYobmV3IFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQoZnJhbWUp
KTsKKyAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4
dChmcmFtZSkpOwogICAgIH0KIAogICAgIHN0YXRpYyBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNl
c3Npb24mIGVuc3VyZVByaXZhdGVCcm93c2luZ1Nlc3Npb24oKTsKQEAgLTUxLDcgKzUwLDQgQEAg
cHJpdmF0ZToKICAgICBTdHJpbmcgc291cmNlQXBwbGljYXRpb25JZGVudGlmaWVyKCkgY29uc3Qg
b3ZlcnJpZGU7CiAgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkRXJyb3IoY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgY29uc3Qgb3ZlcnJpZGU7CiAgICAgV2ViQ29yZTo6
TmV0d29ya1N0b3JhZ2VTZXNzaW9uJiBzdG9yYWdlU2Vzc2lvbigpIGNvbnN0IG92ZXJyaWRlOwot
CiB9OwotCi0jZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBw
b3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJD
b3JlU3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0Lm1tCmluZGV4IDkzZTc0YmJlNjI4
NGI2M2MyMzIxMjlkMTc0OGUwZDkxNjJkMWExOWMuLmVlZjcwMmM1NmZkMGVkNjdkMzcwZjM0YTY2
OTllMjUzNjcyZDgwNGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBw
b3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMv
V2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dC5tbQpAQCAtNDcsMTYgKzQ3
LDEzIEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogTmV0d29ya1N0b3JhZ2VTZXNzaW9uJiBX
ZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0OjplbnN1cmVQcml2YXRlQnJvd3NpbmdTZXNzaW9uKCkK
IHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwotCiAgICAgTmV0d29ya1N0b3JhZ2VTZXNz
aW9uOjplbnN1cmVQcml2YXRlQnJvd3NpbmdTZXNzaW9uKFNlc3Npb25JRDo6bGVnYWN5UHJpdmF0
ZVNlc3Npb25JRCgpLCBbW05TQnVuZGxlIG1haW5CdW5kbGVdIGJ1bmRsZUlkZW50aWZpZXJdKTsK
LQogICAgIHJldHVybiAqTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpzdG9yYWdlU2Vzc2lvbihTZXNz
aW9uSUQ6OmxlZ2FjeVByaXZhdGVTZXNzaW9uSUQoKSk7CiB9CiAKIHZvaWQgV2ViRnJhbWVOZXR3
b3JraW5nQ29udGV4dDo6ZGVzdHJveVByaXZhdGVCcm93c2luZ1Nlc3Npb24oKQogewogICAgIEFT
U0VSVChpc01haW5UaHJlYWQoKSk7Ci0KICAgICBOZXR3b3JrU3RvcmFnZVNlc3Npb246OmRlc3Ry
b3lTZXNzaW9uKFNlc3Npb25JRDo6bGVnYWN5UHJpdmF0ZVNlc3Npb25JRCgpKTsKIH0KIApAQCAt
NjgsMTkgKzY1LDE5IEBAIGJvb2wgV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dDo6bG9jYWxGaWxl
Q29udGVudFNuaWZmaW5nRW5hYmxlZCgpIGNvbnN0CiBTY2hlZHVsZVBhaXJIYXNoU2V0KiBXZWJG
cmFtZU5ldHdvcmtpbmdDb250ZXh0OjpzY2hlZHVsZWRSdW5Mb29wUGFpcnMoKSBjb25zdAogewog
ICAgIGlmICghZnJhbWUoKSB8fCAhZnJhbWUoKS0+cGFnZSgpKQotICAgICAgICByZXR1cm4gMDsK
KyAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgcmV0dXJuIGZyYW1lKCktPnBhZ2UoKS0+c2No
ZWR1bGVkUnVuTG9vcFBhaXJzKCk7CiB9CiAKIFJldGFpblB0cjxDRkRhdGFSZWY+IFdlYkZyYW1l
TmV0d29ya2luZ0NvbnRleHQ6OnNvdXJjZUFwcGxpY2F0aW9uQXVkaXREYXRhKCkgY29uc3QKIHsK
ICAgICBpZiAoIWZyYW1lKCkgfHwgIWZyYW1lKCktPnBhZ2UoKSkKLSAgICAgICAgcmV0dXJuIDA7
CisgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIAogICAgIFdlYlZpZXcgKndlYnZpZXcgPSBr
aXQoZnJhbWUoKS0+cGFnZSgpKTsKLSAgICAKICAgICBpZiAoIXdlYnZpZXcpCi0gICAgICAgIHJl
dHVybiAwOworICAgICAgICByZXR1cm4gbnVsbHB0cjsKKwogICAgIHJldHVybiByZWludGVycHJl
dF9jYXN0PENGRGF0YVJlZj4od2Vidmlldy5fc291cmNlQXBwbGljYXRpb25BdWRpdERhdGEpOwog
fQogCkBAIC05OCw3ICs5NSw3IEBAIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgV2ViRnJhbWVOZXR3
b3JraW5nQ29udGV4dDo6c3RvcmFnZVNlc3Npb24oKSBjb25zdAogewogICAgIEFTU0VSVChpc01h
aW5UaHJlYWQoKSk7CiAgICAgaWYgKGZyYW1lKCkgJiYgZnJhbWUoKS0+cGFnZSgpLT5zZXNzaW9u
SUQoKS5pc0VwaGVtZXJhbCgpKSB7Ci0gICAgICAgIGlmIChOZXR3b3JrU3RvcmFnZVNlc3Npb24q
IHNlc3Npb24gPSBOZXR3b3JrU3RvcmFnZVNlc3Npb246OnN0b3JhZ2VTZXNzaW9uKFNlc3Npb25J
RDo6bGVnYWN5UHJpdmF0ZVNlc3Npb25JRCgpKSkKKyAgICAgICAgaWYgKGF1dG8qIHNlc3Npb24g
PSBOZXR3b3JrU3RvcmFnZVNlc3Npb246OnN0b3JhZ2VTZXNzaW9uKFNlc3Npb25JRDo6bGVnYWN5
UHJpdmF0ZVNlc3Npb25JRCgpKSkKICAgICAgICAgICAgIHJldHVybiAqc2Vzc2lvbjsKICAgICAg
ICAgLy8gU29tZSByZXF1ZXN0cyBtYXkgc3RpbGwgYmUgY29taW5nIHNob3J0bHkgYmVmb3JlIFdl
YkNvcmUgdXBkYXRlcyB0aGUgc2Vzc2lvbiBJRCBhbmQgYWZ0ZXIgV2ViS2l0IGRlc3Ryb3lzIHRo
ZSBwcml2YXRlIGJyb3dzaW5nIHNlc3Npb24uCiAgICAgICAgIExPR19FUlJPUigiSW52YWxpZCBz
ZXNzaW9uIElELiBQbGVhc2UgZmlsZSBhIGJ1ZyB1bmxlc3MgeW91IGp1c3QgZGlzYWJsZWQgcHJp
dmF0ZSBicm93c2luZywgaW4gd2hpY2ggY2FzZSBpdCdzIGFuIGV4cGVjdGVkIHJhY2UuIik7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJPcGVuUGFuZWxS
ZXN1bHRMaXN0ZW5lci5oIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViT3Bl
blBhbmVsUmVzdWx0TGlzdGVuZXIuaAppbmRleCBhY2M2MmNhZDc0MDFjNTVkZmM3ODA4N2FlYzlm
YmJiNGJhY2MyOTUyLi4wZTQwYWEyZWQyNTkzZDE3NWM1MGQ4ZDA3YTI3YWIwNmRlMWQxZTU2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJPcGVuUGFuZWxS
ZXN1bHRMaXN0ZW5lci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dl
Yk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJp
Z2h0IChDKSAyMDA4IEFwcGxlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmln
aHQgKEMpIDIwMDgtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW1wb3J0
ICJXZWJVSURlbGVnYXRlLmgiCi0jaW1wb3J0IDx3dGYvRm9yd2FyZC5oPgorI2ltcG9ydCA8d3Rm
L1JlZlB0ci5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiBjbGFzcyBGaWxlQ2hvb3NlcjsKQEAg
LTMyLDkgKzMyLDkgQEAgY2xhc3MgRmlsZUNob29zZXI7CiAKIEBpbnRlcmZhY2UgV2ViT3BlblBh
bmVsUmVzdWx0TGlzdGVuZXIgOiBOU09iamVjdCA8V2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXI+
CiB7Ci0gICAgV2ViQ29yZTo6RmlsZUNob29zZXIqIF9jaG9vc2VyOworICAgIFJlZlB0cjxXZWJD
b3JlOjpGaWxlQ2hvb3Nlcj4gX2Nob29zZXI7CiB9CiAKLS0gKGlkKWluaXRXaXRoQ2hvb3Nlcjoo
UGFzc1JlZlB0cjxXZWJDb3JlOjpGaWxlQ2hvb3Nlcj4pY2hvb3NlcjsKKy0gKGlkKWluaXRXaXRo
Q2hvb3NlcjooV2ViQ29yZTo6RmlsZUNob29zZXImKWNob29zZXI7CiAKIEBlbmQKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYk9wZW5QYW5lbFJlc3VsdExp
c3RlbmVyLm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViT3BlblBhbmVs
UmVzdWx0TGlzdGVuZXIubW0KaW5kZXggYjZiZDI2N2JkZWQ4MWE3YjRmODdmZDhjZjNjZGQwMGFj
NDEyYThlYS4uOGIyNTIwOTA3MDNhZTQ3ZDdiYmFmYWE2NWIzMjZmZWVmY2MzMDQ3YiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViT3BlblBhbmVsUmVzdWx0
TGlzdGVuZXIubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViT3Bl
blBhbmVsUmVzdWx0TGlzdGVuZXIubW0KQEAgLTM2LDMwICszNiwxOCBAQCB1c2luZyBuYW1lc3Bh
Y2UgV2ViQ29yZTsKIAogQGltcGxlbWVudGF0aW9uIFdlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVy
CiAKLS0gKGlkKWluaXRXaXRoQ2hvb3NlcjooUGFzc1JlZlB0cjxGaWxlQ2hvb3Nlcj4pY2hvb3Nl
cgorLSAoaWQpaW5pdFdpdGhDaG9vc2VyOihGaWxlQ2hvb3NlciYpY2hvb3NlcgogewogICAgIHNl
bGYgPSBbc3VwZXIgaW5pdF07CiAgICAgaWYgKCFzZWxmKQogICAgICAgICByZXR1cm4gbmlsOwot
ICAgIF9jaG9vc2VyID0gY2hvb3Nlci5sZWFrUmVmKCk7CisgICAgX2Nob29zZXIgPSAmY2hvb3Nl
cjsKICAgICByZXR1cm4gc2VsZjsKIH0KIAotI2lmbmRlZiBOREVCVUcKLS0gKHZvaWQpZGVhbGxv
YwotewotICAgIEFTU0VSVCghX2Nob29zZXIpOwotICAgIFtzdXBlciBkZWFsbG9jXTsKLX0KLSNl
bmRpZgotCiAtICh2b2lkKWNhbmNlbAogewotICAgIEFTU0VSVChfY2hvb3Nlcik7Ci0gICAgaWYg
KCFfY2hvb3NlcikKLSAgICAgICAgcmV0dXJuOwotICAgIF9jaG9vc2VyLT5kZXJlZigpOwotICAg
IF9jaG9vc2VyID0gMDsKKyAgICBfY2hvb3NlciA9IG51bGxwdHI7CiB9CiAKIC0gKHZvaWQpY2hv
b3NlRmlsZW5hbWU6KE5TU3RyaW5nICopZmlsZW5hbWUKQEAgLTY4LDggKzU2LDcgQEAgLSAodm9p
ZCljaG9vc2VGaWxlbmFtZTooTlNTdHJpbmcgKilmaWxlbmFtZQogICAgIGlmICghX2Nob29zZXIp
CiAgICAgICAgIHJldHVybjsKICAgICBfY2hvb3Nlci0+Y2hvb3NlRmlsZShmaWxlbmFtZSk7Ci0g
ICAgX2Nob29zZXItPmRlcmVmKCk7Ci0gICAgX2Nob29zZXIgPSAwOworICAgIF9jaG9vc2VyID0g
bnVsbHB0cjsKIH0KIAogLSAodm9pZCljaG9vc2VGaWxlbmFtZXM6KE5TQXJyYXkgKilmaWxlbmFt
ZXMKQEAgLTgyLDExICs2OSwxMSBAQCAtICh2b2lkKWNob29zZUZpbGVuYW1lczooTlNBcnJheSAq
KWZpbGVuYW1lcwogICAgIGZvciAoTlNVSW50ZWdlciBpID0gMDsgaSA8IGNvdW50OyBpKyspCiAg
ICAgICAgIG5hbWVzW2ldID0gW2ZpbGVuYW1lcyBvYmplY3RBdEluZGV4OmldOwogICAgIF9jaG9v
c2VyLT5jaG9vc2VGaWxlcyhuYW1lcyk7Ci0gICAgX2Nob29zZXItPmRlcmVmKCk7Ci0gICAgX2No
b29zZXIgPSAwOworICAgIF9jaG9vc2VyID0gbnVsbHB0cjsKIH0KIAogI2lmIFBMQVRGT1JNKElP
UykKKwogLSAodm9pZCljaG9vc2VGaWxlbmFtZTooTlNTdHJpbmcgKilmaWxlbmFtZSBkaXNwbGF5
U3RyaW5nOihOU1N0cmluZyAqKWRpc3BsYXlTdHJpbmcgaWNvbkltYWdlOihDR0ltYWdlUmVmKWlt
YWdlUmVmCiB7CiAgICAgW3NlbGYgY2hvb3NlRmlsZW5hbWVzOltOU0FycmF5IGFycmF5V2l0aE9i
amVjdDpmaWxlbmFtZV0gZGlzcGxheVN0cmluZzpkaXNwbGF5U3RyaW5nIGljb25JbWFnZTppbWFn
ZVJlZl07CkBAIC05OCwxOCArODUsMTQgQEAgLSAodm9pZCljaG9vc2VGaWxlbmFtZXM6KE5TQXJy
YXkgKilmaWxlbmFtZXMgZGlzcGxheVN0cmluZzooTlNTdHJpbmcgKilkaXNwbGF5U3QKICAgICBp
ZiAoIV9jaG9vc2VyKQogICAgICAgICByZXR1cm47CiAKLSAgICBSZWZQdHI8SWNvbj4gaWNvbiA9
IEljb246OmNyZWF0ZUljb25Gb3JJbWFnZShpbWFnZVJlZik7Ci0KLSAgICBOU1VJbnRlZ2VyIGNv
dW50ID0gW2ZpbGVuYW1lcyBjb3VudF07Ci0gICAgVmVjdG9yPFN0cmluZz4gbmFtZXMoY291bnQp
OwotICAgIGZvciAoTlNVSW50ZWdlciBpID0gMDsgaSA8IGNvdW50OyArK2kpCi0gICAgICAgIG5h
bWVzW2ldID0gW2ZpbGVuYW1lcyBvYmplY3RBdEluZGV4OmldOwotICAgIF9jaG9vc2VyLT5jaG9v
c2VNZWRpYUZpbGVzKG5hbWVzLCBkaXNwbGF5U3RyaW5nLCBpY29uLmdldCgpKTsKLSAgICAKLSAg
ICAvLyBGSVhNRTogd2Ugc2hvdWxkbid0IGJlIG1hbnVhbGx5IGRlcmVmKCknaW5nIGhlcmUuCi0g
ICAgX2Nob29zZXItPmRlcmVmKCk7CisgICAgVmVjdG9yPFN0cmluZz4gbmFtZXM7CisgICAgbmFt
ZXMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShbZmlsZW5hbWVzIGNvdW50XSk7CisgICAgZm9yIChO
U1N0cmluZyAqZmlsZW5hbWUgaW4gZmlsZW5hbWVzKQorICAgICAgICBuYW1lcy51bmNoZWNrZWRB
cHBlbmQoZmlsZW5hbWUpOworICAgIF9jaG9vc2VyLT5jaG9vc2VNZWRpYUZpbGVzKG5hbWVzLCBk
aXNwbGF5U3RyaW5nLCBJY29uOjpjcmVhdGVJY29uRm9ySW1hZ2UoaW1hZ2VSZWYpLmdldCgpKTsK
ICAgICBfY2hvb3NlciA9IG51bGxwdHI7CiB9CisKICNlbmRpZgogCiBAZW5kCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkFyY2hpdmUubW0gYi9Tb3VyY2UvV2ViS2l0
L21hYy9XZWJWaWV3L1dlYkFyY2hpdmUubW0KaW5kZXggZTk2YzYwN2NmYjg0Yzg1YTFlYmZhYWJk
YzMxY2ViYTA0ZWE1YzNlOC4uZmY3NTQ2ZDg1ZjhhNTVhNTliODBhYWYxN2I1NGU3MmVhNjFmOTY3
OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJBcmNoaXZlLm1tCisr
KyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViQXJjaGl2ZS5tbQpAQCAtMTc0LDI1ICsx
NzQsMTYgQEAgLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoTWFpblJlc291cmNlOihXZWJSZXNvdXJj
ZSAqKW1haW5SZXNvdXJjZSBzdWJyZXNvdXJjZXM6KE4KICAgICAgICAgW3NlbGYgcmVsZWFzZV07
CiAgICAgICAgIHJldHVybiBuaWw7CiAgICAgfQotICAgIAotICAgIFJlZlB0cjxBcmNoaXZlUmVz
b3VyY2U+IGNvcmVNYWluUmVzb3VyY2UgPSBtYWluUmVzb3VyY2UgPyBbbWFpblJlc291cmNlIF9j
b3JlUmVzb3VyY2VdIDogbnVsbHB0cjsKIAotICAgIFZlY3RvcjxSZWZQdHI8QXJjaGl2ZVJlc291
cmNlPj4gY29yZVJlc291cmNlczsKKyAgICBWZWN0b3I8UmVmPEFyY2hpdmVSZXNvdXJjZT4+IGNv
cmVSZXNvdXJjZXM7CiAgICAgZm9yIChXZWJSZXNvdXJjZSAqc3VicmVzb3VyY2UgaW4gc3VicmVz
b3VyY2VzKQogICAgICAgICBjb3JlUmVzb3VyY2VzLmFwcGVuZChbc3VicmVzb3VyY2UgX2NvcmVS
ZXNvdXJjZV0pOwogCi0gICAgVmVjdG9yPFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPj4gY29yZUFy
Y2hpdmVzOworICAgIFZlY3RvcjxSZWY8TGVnYWN5V2ViQXJjaGl2ZT4+IGNvcmVBcmNoaXZlczsK
ICAgICBmb3IgKFdlYkFyY2hpdmUgKnN1YmZyYW1lQXJjaGl2ZSBpbiBzdWJmcmFtZUFyY2hpdmVz
KQotICAgICAgICBjb3JlQXJjaGl2ZXMuYXBwZW5kKFtzdWJmcmFtZUFyY2hpdmUtPl9wcml2YXRl
IGNvcmVBcmNoaXZlXSk7Ci0KLSAgICBhdXRvIGNvcmVBcmNoaXZlID0gTGVnYWN5V2ViQXJjaGl2
ZTo6Y3JlYXRlKFdURk1vdmUoY29yZU1haW5SZXNvdXJjZSksIFdURk1vdmUoY29yZVJlc291cmNl
cyksIFdURk1vdmUoY29yZUFyY2hpdmVzKSk7Ci0gICAgaWYgKCFjb3JlQXJjaGl2ZSkgewotICAg
ICAgICBbc2VsZiByZWxlYXNlXTsKLSAgICAgICAgcmV0dXJuIG5pbDsKLSAgICB9Ci0KLSAgICBb
X3ByaXZhdGUgc2V0Q29yZUFyY2hpdmU6V1RGTW92ZShjb3JlQXJjaGl2ZSldOworICAgICAgICBj
b3JlQXJjaGl2ZXMuYXBwZW5kKCpbc3ViZnJhbWVBcmNoaXZlLT5fcHJpdmF0ZSBjb3JlQXJjaGl2
ZV0pOwogCisgICAgW19wcml2YXRlIHNldENvcmVBcmNoaXZlOkxlZ2FjeVdlYkFyY2hpdmU6OmNy
ZWF0ZShbbWFpblJlc291cmNlIF9jb3JlUmVzb3VyY2VdLCBXVEZNb3ZlKGNvcmVSZXNvdXJjZXMp
LCBXVEZNb3ZlKGNvcmVBcmNoaXZlcykpXTsKICAgICByZXR1cm4gc2VsZjsKIH0KIApAQCAtMjc1
LDkgKzI2NiwxMCBAQCAtIChXZWJSZXNvdXJjZSAqKW1haW5SZXNvdXJjZQogICAgIC8vIEN1cnJl
bnRseSBmcm9tIFdlYktpdCBBUEkgcGVyc3BlY3RpdmUsIFdlYkFyY2hpdmVzIGFyZSBlbnRpcmVs
eSBpbW11dGFibGUgb25jZSBjcmVhdGVkCiAgICAgLy8gSWYgdGhleSBldmVyIGJlY29tZSBtdXRh
YmxlLCB3ZSdsbCBuZWVkIHRvIHJldGhpbmsgdGhpcy4gCiAgICAgaWYgKCFfcHJpdmF0ZS0+Y2Fj
aGVkTWFpblJlc291cmNlKSB7Ci0gICAgICAgIExlZ2FjeVdlYkFyY2hpdmUqIGNvcmVBcmNoaXZl
ID0gW19wcml2YXRlIGNvcmVBcmNoaXZlXTsKLSAgICAgICAgaWYgKGNvcmVBcmNoaXZlKQotICAg
ICAgICAgICAgX3ByaXZhdGUtPmNhY2hlZE1haW5SZXNvdXJjZSA9IFtbV2ViUmVzb3VyY2UgYWxs
b2NdIF9pbml0V2l0aENvcmVSZXNvdXJjZTpjb3JlQXJjaGl2ZS0+bWFpblJlc291cmNlKCldOwor
ICAgICAgICBpZiAoYXV0byogY29yZUFyY2hpdmUgPSBbX3ByaXZhdGUgY29yZUFyY2hpdmVdKSB7
CisgICAgICAgICAgICBpZiAoYXV0byogbWFpblJlc291cmNlID0gY29yZUFyY2hpdmUtPm1haW5S
ZXNvdXJjZSgpKQorICAgICAgICAgICAgICAgIF9wcml2YXRlLT5jYWNoZWRNYWluUmVzb3VyY2Ug
PSBbW1dlYlJlc291cmNlIGFsbG9jXSBfaW5pdFdpdGhDb3JlUmVzb3VyY2U6Km1haW5SZXNvdXJj
ZV07CisgICAgICAgIH0KICAgICB9CiAgICAgCiAgICAgcmV0dXJuIFtbX3ByaXZhdGUtPmNhY2hl
ZE1haW5SZXNvdXJjZSByZXRhaW5dIGF1dG9yZWxlYXNlXTsKQEAgLTI5NCwxMiArMjg2LDExIEBA
IC0gKE5TQXJyYXkgKilzdWJyZXNvdXJjZXMKICAgICAgICAgaWYgKCFjb3JlQXJjaGl2ZSkKICAg
ICAgICAgICAgIF9wcml2YXRlLT5jYWNoZWRTdWJyZXNvdXJjZXMgPSBbW05TQXJyYXkgYWxsb2Nd
IGluaXRdOwogICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIGNvbnN0IFZlY3RvcjxSZWZQdHI8
QXJjaGl2ZVJlc291cmNlPj4mIHN1YnJlc291cmNlcyhjb3JlQXJjaGl2ZS0+c3VicmVzb3VyY2Vz
KCkpOworICAgICAgICAgICAgYXV0byYgc3VicmVzb3VyY2VzID0gY29yZUFyY2hpdmUtPnN1YnJl
c291cmNlcygpOwogICAgICAgICAgICAgTlNNdXRhYmxlQXJyYXkgKm11dGFibGVBcnJheSA9IFtb
TlNNdXRhYmxlQXJyYXkgYWxsb2NdIGluaXRXaXRoQ2FwYWNpdHk6c3VicmVzb3VyY2VzLnNpemUo
KV07CiAgICAgICAgICAgICBfcHJpdmF0ZS0+Y2FjaGVkU3VicmVzb3VyY2VzID0gbXV0YWJsZUFy
cmF5OwotICAgICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IHN1YnJlc291cmNlcy5z
aXplKCk7ICsraSkgewotICAgICAgICAgICAgICAgIFdlYlJlc291cmNlICpyZXNvdXJjZSA9IFtb
V2ViUmVzb3VyY2UgYWxsb2NdIF9pbml0V2l0aENvcmVSZXNvdXJjZTpzdWJyZXNvdXJjZXNbaV0u
Z2V0KCldOwotICAgICAgICAgICAgICAgIGlmIChyZXNvdXJjZSkgeworICAgICAgICAgICAgZm9y
IChhdXRvJiBzdWJyZXNvdXJjZSA6IHN1YnJlc291cmNlcykgeworICAgICAgICAgICAgICAgIGlm
IChXZWJSZXNvdXJjZSAqcmVzb3VyY2UgPSBbW1dlYlJlc291cmNlIGFsbG9jXSBfaW5pdFdpdGhD
b3JlUmVzb3VyY2U6c3VicmVzb3VyY2UuZ2V0KCldKSB7CiAgICAgICAgICAgICAgICAgICAgIFtt
dXRhYmxlQXJyYXkgYWRkT2JqZWN0OnJlc291cmNlXTsKICAgICAgICAgICAgICAgICAgICAgW3Jl
c291cmNlIHJlbGVhc2VdOwogICAgICAgICAgICAgICAgIH0KQEAgLTMxOCwxNSArMzA5LDE1IEBA
IC0gKE5TQXJyYXkgKilzdWJmcmFtZUFyY2hpdmVzCiAgICAgLy8gQ3VycmVudGx5IGZyb20gV2Vi
S2l0IEFQSSBwZXJzcGVjdGl2ZSwgV2ViQXJjaGl2ZXMgYXJlIGVudGlyZWx5IGltbXV0YWJsZSBv
bmNlIGNyZWF0ZWQKICAgICAvLyBJZiB0aGV5IGV2ZXIgYmVjb21lIG11dGFibGUsIHdlJ2xsIG5l
ZWQgdG8gcmV0aGluayB0aGlzLiAgCiAgICAgaWYgKCFfcHJpdmF0ZS0+Y2FjaGVkU3ViZnJhbWVB
cmNoaXZlcykgewotICAgICAgICBMZWdhY3lXZWJBcmNoaXZlKiBjb3JlQXJjaGl2ZSA9IFtfcHJp
dmF0ZSBjb3JlQXJjaGl2ZV07CisgICAgICAgIGF1dG8qIGNvcmVBcmNoaXZlID0gW19wcml2YXRl
IGNvcmVBcmNoaXZlXTsKICAgICAgICAgaWYgKCFjb3JlQXJjaGl2ZSkKICAgICAgICAgICAgIF9w
cml2YXRlLT5jYWNoZWRTdWJmcmFtZUFyY2hpdmVzID0gW1tOU0FycmF5IGFsbG9jXSBpbml0XTsK
ICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICBjb25zdCBWZWN0b3I8UmVmUHRyPEFyY2hpdmU+
PiYgc3ViZnJhbWVBcmNoaXZlcyhjb3JlQXJjaGl2ZS0+c3ViZnJhbWVBcmNoaXZlcygpKTsKLSAg
ICAgICAgICAgIE5TTXV0YWJsZUFycmF5ICptdXRhYmxlQXJyYXkgPSBbW05TTXV0YWJsZUFycmF5
IGFsbG9jXSBpbml0V2l0aENhcGFjaXR5OnN1YmZyYW1lQXJjaGl2ZXMuc2l6ZSgpXTsKKyAgICAg
ICAgICAgIGF1dG8mIHN1YmZyYW1lQXJjaGl2ZXMgPSBjb3JlQXJjaGl2ZS0+c3ViZnJhbWVBcmNo
aXZlcygpOworICAgICAgICAgICAgYXV0byBtdXRhYmxlQXJyYXkgPSBbW05TTXV0YWJsZUFycmF5
IGFsbG9jXSBpbml0V2l0aENhcGFjaXR5OnN1YmZyYW1lQXJjaGl2ZXMuc2l6ZSgpXTsKICAgICAg
ICAgICAgIF9wcml2YXRlLT5jYWNoZWRTdWJmcmFtZUFyY2hpdmVzID0gbXV0YWJsZUFycmF5Owog
ICAgICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IHN1YmZyYW1lQXJjaGl2ZXMuc2l6
ZSgpOyArK2kpIHsKLSAgICAgICAgICAgICAgICBXZWJBcmNoaXZlICphcmNoaXZlID0gW1tXZWJB
cmNoaXZlIGFsbG9jXSBfaW5pdFdpdGhDb3JlTGVnYWN5V2ViQXJjaGl2ZTooTGVnYWN5V2ViQXJj
aGl2ZSAqKXN1YmZyYW1lQXJjaGl2ZXNbaV0uZ2V0KCldOworICAgICAgICAgICAgICAgIFdlYkFy
Y2hpdmUgKmFyY2hpdmUgPSBbW1dlYkFyY2hpdmUgYWxsb2NdIF9pbml0V2l0aENvcmVMZWdhY3lX
ZWJBcmNoaXZlOihMZWdhY3lXZWJBcmNoaXZlICopc3ViZnJhbWVBcmNoaXZlc1tpXS5wdHIoKV07
CiAgICAgICAgICAgICAgICAgW211dGFibGVBcnJheSBhZGRPYmplY3Q6YXJjaGl2ZV07CiAgICAg
ICAgICAgICAgICAgW2FyY2hpdmUgcmVsZWFzZV07CiAgICAgICAgICAgICB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkRhdGFTb3VyY2UubW0gYi9Tb3VyY2UvV2Vi
S2l0L21hYy9XZWJWaWV3L1dlYkRhdGFTb3VyY2UubW0KaW5kZXggNjA2NDcyMmE1NjM2MTQ4NTg0
MmNmNTdmZDkzMGY3NTU4OGQ2ZThmNi4uMThjZjlmN2RiNGM2Mzg3ODQ3MTcwODkyOGJhYjg5NThh
NDc5MjcwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJEYXRhU291
cmNlLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViRGF0YVNvdXJjZS5tbQpA
QCAtMTY2LDI1ICsxNjYsMjIgQEAgLSAoTlNFcnJvciAqKV9tYWluRG9jdW1lbnRFcnJvcgogCiAt
ICh2b2lkKV9hZGRTdWJmcmFtZUFyY2hpdmVzOihOU0FycmF5ICopc3ViZnJhbWVBcmNoaXZlcwog
ewotICAgIC8vIEZJWE1FOiBUaGlzIFNQSSBpcyBwb29yLCBwb29yIGRlc2lnbi4gIENhbiB3ZSBj
b21lIHVwIHdpdGggYW5vdGhlciBzb2x1dGlvbiBmb3IgdGhvc2Ugd2hvIG5lZWQgaXQ/Ci0gICAg
TlNFbnVtZXJhdG9yICplbnVtZXJhdG9yID0gW3N1YmZyYW1lQXJjaGl2ZXMgb2JqZWN0RW51bWVy
YXRvcl07Ci0gICAgV2ViQXJjaGl2ZSAqYXJjaGl2ZTsKLSAgICB3aGlsZSAoKGFyY2hpdmUgPSBb
ZW51bWVyYXRvciBuZXh0T2JqZWN0XSkgIT0gbmlsKQotICAgICAgICB0b1ByaXZhdGUoX3ByaXZh
dGUpLT5sb2FkZXItPmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoW2FyY2hpdmUgX2NvcmVMZWdhY3lX
ZWJBcmNoaXZlXSk7CisgICAgLy8gRklYTUU6IFRoaXMgU1BJIGlzIHBvb3IsIHBvb3IgZGVzaWdu
LiBDYW4gd2UgY29tZSB1cCB3aXRoIGFub3RoZXIgc29sdXRpb24gZm9yIHRob3NlIHdobyBuZWVk
IGl0PworICAgIGZvciAoV2ViQXJjaGl2ZSAqYXJjaGl2ZSBpbiBzdWJmcmFtZUFyY2hpdmVzKQor
ICAgICAgICB0b1ByaXZhdGUoX3ByaXZhdGUpLT5sb2FkZXItPmFkZEFsbEFyY2hpdmVSZXNvdXJj
ZXMoKlthcmNoaXZlIF9jb3JlTGVnYWN5V2ViQXJjaGl2ZV0pOwogfQogCiAjaWYgIVBMQVRGT1JN
KElPUykKKwogLSAoTlNGaWxlV3JhcHBlciAqKV9maWxlV3JhcHBlckZvclVSTDooTlNVUkwgKilV
UkwKIHsKICAgICBpZiAoW1VSTCBpc0ZpbGVVUkxdKQogICAgICAgICByZXR1cm4gW1tbTlNGaWxl
V3JhcHBlciBhbGxvY10gaW5pdFdpdGhVUkw6W1VSTCBVUkxCeVJlc29sdmluZ1N5bWxpbmtzSW5Q
YXRoXSBvcHRpb25zOjAgZXJyb3I6bnVsbHB0cl0gYXV0b3JlbGVhc2VdOwogCi0gICAgV2ViUmVz
b3VyY2UgKnJlc291cmNlID0gW3NlbGYgc3VicmVzb3VyY2VGb3JVUkw6VVJMXTsKLSAgICBpZiAo
cmVzb3VyY2UpCisgICAgaWYgKGF1dG8gcmVzb3VyY2UgPSBbc2VsZiBzdWJyZXNvdXJjZUZvclVS
TDpVUkxdKQogICAgICAgICByZXR1cm4gW3Jlc291cmNlIF9maWxlV3JhcHBlclJlcHJlc2VudGF0
aW9uXTsKLSAgICAKLSAgICBOU0NhY2hlZFVSTFJlc3BvbnNlICpjYWNoZWRSZXNwb25zZSA9IFtb
c2VsZiBfd2ViVmlld10gX2NhY2hlZFJlc3BvbnNlRm9yVVJMOlVSTF07Ci0gICAgaWYgKGNhY2hl
ZFJlc3BvbnNlKSB7CisKKyAgICBpZiAoYXV0byBjYWNoZWRSZXNwb25zZSA9IFtbc2VsZiBfd2Vi
Vmlld10gX2NhY2hlZFJlc3BvbnNlRm9yVVJMOlVSTF0pIHsKICAgICAgICAgTlNGaWxlV3JhcHBl
ciAqd3JhcHBlciA9IFtbW05TRmlsZVdyYXBwZXIgYWxsb2NdIGluaXRSZWd1bGFyRmlsZVdpdGhD
b250ZW50czpbY2FjaGVkUmVzcG9uc2UgZGF0YV1dIGF1dG9yZWxlYXNlXTsKICAgICAgICAgW3dy
YXBwZXIgc2V0UHJlZmVycmVkRmlsZW5hbWU6W1tjYWNoZWRSZXNwb25zZSByZXNwb25zZV0gc3Vn
Z2VzdGVkRmlsZW5hbWVdXTsKICAgICAgICAgcmV0dXJuIHdyYXBwZXI7CkBAIC0xOTIsNiArMTg5
LDcgQEAgLSAoTlNGaWxlV3JhcHBlciAqKV9maWxlV3JhcHBlckZvclVSTDooTlNVUkwgKilVUkwK
ICAgICAKICAgICByZXR1cm4gbmlsOwogfQorCiAjZW5kaWYKIAogLSAoTlNTdHJpbmcgKilfcmVz
cG9uc2VNSU1FVHlwZQpAQCAtMzA1LDkgKzMwMywxMCBAQCAtIChET01Eb2N1bWVudEZyYWdtZW50
ICopX2RvY3VtZW50RnJhZ21lbnRXaXRoQXJjaGl2ZTooV2ViQXJjaGl2ZSAqKWFyY2hpdmUKICAg
ICAgICAgTlNTdHJpbmcgKk1JTUVUeXBlID0gW21haW5SZXNvdXJjZSBNSU1FVHlwZV07CiAgICAg
ICAgIGlmIChbV2ViVmlldyBjYW5TaG93TUlNRVR5cGVBc0hUTUw6TUlNRVR5cGVdKSB7CiAgICAg
ICAgICAgICBOU1N0cmluZyAqbWFya3VwU3RyaW5nID0gW1tOU1N0cmluZyBhbGxvY10gaW5pdFdp
dGhEYXRhOlttYWluUmVzb3VyY2UgZGF0YV0gZW5jb2Rpbmc6TlNVVEY4U3RyaW5nRW5jb2Rpbmdd
OworCiAgICAgICAgICAgICAvLyBGSVhNRTogc2VlbXMgcG9vciBmb3JtIHRvIGRvIHRoaXMgYXMg
YSBzaWRlIGVmZmVjdCBvZiBnZXR0aW5nIGEgZG9jdW1lbnQgZnJhZ21lbnQKICAgICAgICAgICAg
IGlmICh0b1ByaXZhdGUoX3ByaXZhdGUpLT5sb2FkZXIpCi0gICAgICAgICAgICAgICAgdG9Qcml2
YXRlKF9wcml2YXRlKS0+bG9hZGVyLT5hZGRBbGxBcmNoaXZlUmVzb3VyY2VzKFthcmNoaXZlIF9j
b3JlTGVnYWN5V2ViQXJjaGl2ZV0pOworICAgICAgICAgICAgICAgIHRvUHJpdmF0ZShfcHJpdmF0
ZSktPmxvYWRlci0+YWRkQWxsQXJjaGl2ZVJlc291cmNlcygqW2FyY2hpdmUgX2NvcmVMZWdhY3lX
ZWJBcmNoaXZlXSk7CiAKICAgICAgICAgICAgIERPTURvY3VtZW50RnJhZ21lbnQgKmZyYWdtZW50
ID0gW1tzZWxmIHdlYkZyYW1lXSBfZG9jdW1lbnRGcmFnbWVudFdpdGhNYXJrdXBTdHJpbmc6bWFy
a3VwU3RyaW5nIGJhc2VVUkxTdHJpbmc6W1ttYWluUmVzb3VyY2UgVVJMXSBfd2ViX29yaWdpbmFs
RGF0YUFzU3RyaW5nXV07CiAgICAgICAgICAgICBbbWFya3VwU3RyaW5nIHJlbGVhc2VdOwpAQCAt
MzI0LDcgKzMyMyw3IEBAIC0gKERPTURvY3VtZW50RnJhZ21lbnQgKilfZG9jdW1lbnRGcmFnbWVu
dFdpdGhJbWFnZVJlc291cmNlOihXZWJSZXNvdXJjZSAqKXJlc291CiB7CiAgICAgRE9NRWxlbWVu
dCAqaW1hZ2VFbGVtZW50ID0gW3NlbGYgX2ltYWdlRWxlbWVudFdpdGhJbWFnZVJlc291cmNlOnJl
c291cmNlXTsKICAgICBpZiAoIWltYWdlRWxlbWVudCkKLSAgICAgICAgcmV0dXJuIDA7CisgICAg
ICAgIHJldHVybiBuaWw7CiAgICAgRE9NRG9jdW1lbnRGcmFnbWVudCAqZnJhZ21lbnQgPSBbW1tz
ZWxmIHdlYkZyYW1lXSBET01Eb2N1bWVudF0gY3JlYXRlRG9jdW1lbnRGcmFnbWVudF07CiAgICAg
W2ZyYWdtZW50IGFwcGVuZENoaWxkOmltYWdlRWxlbWVudF07CiAgICAgcmV0dXJuIGZyYWdtZW50
OwpAQCAtNTE5LDMyICs1MTgsMzEgQEAgLSAoV2ViQXJjaGl2ZSAqKXdlYkFyY2hpdmUKIC0gKFdl
YlJlc291cmNlICopbWFpblJlc291cmNlCiB7CiAgICAgYXV0byBjb3JlUmVzb3VyY2UgPSB0b1By
aXZhdGUoX3ByaXZhdGUpLT5sb2FkZXItPm1haW5SZXNvdXJjZSgpOwotICAgIHJldHVybiBbW1tX
ZWJSZXNvdXJjZSBhbGxvY10gX2luaXRXaXRoQ29yZVJlc291cmNlOldURk1vdmUoY29yZVJlc291
cmNlKV0gYXV0b3JlbGVhc2VdOworICAgIGlmICghY29yZVJlc291cmNlKQorICAgICAgICByZXR1
cm4gbmlsOworICAgIHJldHVybiBbW1tXZWJSZXNvdXJjZSBhbGxvY10gX2luaXRXaXRoQ29yZVJl
c291cmNlOmNvcmVSZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpXSBhdXRvcmVsZWFzZV07CiB9CiAK
IC0gKE5TQXJyYXkgKilzdWJyZXNvdXJjZXMKIHsKICAgICBhdXRvIGNvcmVTdWJyZXNvdXJjZXMg
PSB0b1ByaXZhdGUoX3ByaXZhdGUpLT5sb2FkZXItPnN1YnJlc291cmNlcygpOwotCiAgICAgYXV0
byBzdWJyZXNvdXJjZXMgPSBhZG9wdE5TKFtbTlNNdXRhYmxlQXJyYXkgYWxsb2NdIGluaXRXaXRo
Q2FwYWNpdHk6Y29yZVN1YnJlc291cmNlcy5zaXplKCldKTsKLSAgICBmb3IgKGNvbnN0IGF1dG8m
IGNvcmVTdWJyZXNvdXJjZSA6IGNvcmVTdWJyZXNvdXJjZXMpIHsKLSAgICAgICAgaWYgKGF1dG8g
cmVzb3VyY2UgPSBhZG9wdE5TKFtbV2ViUmVzb3VyY2UgYWxsb2NdIF9pbml0V2l0aENvcmVSZXNv
dXJjZTpjb3JlU3VicmVzb3VyY2VdKSkKKyAgICBmb3IgKGF1dG8mIGNvcmVTdWJyZXNvdXJjZSA6
IGNvcmVTdWJyZXNvdXJjZXMpIHsKKyAgICAgICAgaWYgKGF1dG8gcmVzb3VyY2UgPSBhZG9wdE5T
KFtbV2ViUmVzb3VyY2UgYWxsb2NdIF9pbml0V2l0aENvcmVSZXNvdXJjZTpjb3JlU3VicmVzb3Vy
Y2UuY29weVJlZigpXSkpCiAgICAgICAgICAgICBbc3VicmVzb3VyY2VzIGFkZE9iamVjdDpyZXNv
dXJjZS5nZXQoKV07CiAgICAgfQotCiAgICAgcmV0dXJuIHN1YnJlc291cmNlcy5hdXRvcmVsZWFz
ZSgpOwogfQogCiAtIChXZWJSZXNvdXJjZSAqKXN1YnJlc291cmNlRm9yVVJMOihOU1VSTCAqKVVS
TAogewotICAgIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IHN1YnJlc291cmNlID0gdG9Qcml2YXRl
KF9wcml2YXRlKS0+bG9hZGVyLT5zdWJyZXNvdXJjZShVUkwpOwotICAgIAotICAgIHJldHVybiBz
dWJyZXNvdXJjZSA/IFtbW1dlYlJlc291cmNlIGFsbG9jXSBfaW5pdFdpdGhDb3JlUmVzb3VyY2U6
c3VicmVzb3VyY2UuZ2V0KCldIGF1dG9yZWxlYXNlXSA6IG5pbDsKKyAgICBhdXRvIHN1YnJlc291
cmNlID0gdG9Qcml2YXRlKF9wcml2YXRlKS0+bG9hZGVyLT5zdWJyZXNvdXJjZShVUkwpOworICAg
IHJldHVybiBzdWJyZXNvdXJjZSA/IFtbW1dlYlJlc291cmNlIGFsbG9jXSBfaW5pdFdpdGhDb3Jl
UmVzb3VyY2U6c3VicmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKV0gYXV0b3JlbGVhc2VdIDogbmls
OwogfQogCiAtICh2b2lkKWFkZFN1YnJlc291cmNlOihXZWJSZXNvdXJjZSAqKXN1YnJlc291cmNl
CiB7ICAgIAotICAgIHRvUHJpdmF0ZShfcHJpdmF0ZSktPmxvYWRlci0+YWRkQXJjaGl2ZVJlc291
cmNlKCpbc3VicmVzb3VyY2UgX2NvcmVSZXNvdXJjZV0pOworICAgIHRvUHJpdmF0ZShfcHJpdmF0
ZSktPmxvYWRlci0+YWRkQXJjaGl2ZVJlc291cmNlKFtzdWJyZXNvdXJjZSBfY29yZVJlc291cmNl
XSk7CiB9CiAKIEBlbmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2Vi
UmVzb3VyY2UubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlJlc291cmNlLm1tCmlu
ZGV4IGU1ZDhmZDRhZmJkNGQyZmFjOWNkMzkyMTkxNmE0OWI4ZjE3MzVlZjYuLmIzYmI3NWJhOWQx
OGRjNjkwOGFiZWU5YzJkY2IwNjY1YjExNGFmYjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
bWFjL1dlYlZpZXcvV2ViUmVzb3VyY2UubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmll
dy9XZWJSZXNvdXJjZS5tbQpAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MDUsIDIwMDYsIDIwMDcsIDIwMDggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICog
Q29weXJpZ2h0IChDKSAyMDA1LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgog
ICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC01Nyw5ICs1Nyw5IEBAIHN0YXRpYyBO
U1N0cmluZyAqIGNvbnN0IFdlYlJlc291cmNlUmVzcG9uc2VLZXkgPSAgICAgICAgICBAIldlYlJl
c291cmNlUmVzcG9uc2UiCiAKIEBpbnRlcmZhY2UgV2ViUmVzb3VyY2VQcml2YXRlIDogTlNPYmpl
Y3QgewogQHB1YmxpYwotICAgIEFyY2hpdmVSZXNvdXJjZSogY29yZVJlc291cmNlOworICAgIFJl
ZlB0cjxBcmNoaXZlUmVzb3VyY2U+IGNvcmVSZXNvdXJjZTsKIH0KLS0gKGluc3RhbmNldHlwZSlp
bml0V2l0aENvcmVSZXNvdXJjZTooUGFzc1JlZlB0cjxBcmNoaXZlUmVzb3VyY2U+KWNvcmVSZXNv
dXJjZTsKKy0gKGluc3RhbmNldHlwZSlpbml0V2l0aENvcmVSZXNvdXJjZTooUmVmPEFyY2hpdmVS
ZXNvdXJjZT4mJiljb3JlUmVzb3VyY2U7CiBAZW5kCiAKIEBpbXBsZW1lbnRhdGlvbiBXZWJSZXNv
dXJjZVByaXZhdGUKQEAgLTc4LDEzICs3OCwxMiBAQCAtIChpbnN0YW5jZXR5cGUpaW5pdAogICAg
IHJldHVybiBbc3VwZXIgaW5pdF07CiB9CiAKLS0gKGluc3RhbmNldHlwZSlpbml0V2l0aENvcmVS
ZXNvdXJjZTooUGFzc1JlZlB0cjxBcmNoaXZlUmVzb3VyY2U+KXBhc3NlZFJlc291cmNlCistIChp
bnN0YW5jZXR5cGUpaW5pdFdpdGhDb3JlUmVzb3VyY2U6KFJlZjxBcmNoaXZlUmVzb3VyY2U+JiYp
cGFzc2VkUmVzb3VyY2UKIHsKICAgICBzZWxmID0gW3N1cGVyIGluaXRdOwogICAgIGlmICghc2Vs
ZikKICAgICAgICAgcmV0dXJuIG5pbDsKLSAgICAvLyBBY3F1aXJlIHRoZSBQYXNzUmVmUHRyPD4n
cyByZWYgYXMgb3VyIG93biBtYW51YWwgcmVmCi0gICAgY29yZVJlc291cmNlID0gcGFzc2VkUmVz
b3VyY2UubGVha1JlZigpOworICAgIGNvcmVSZXNvdXJjZSA9IFdURk1vdmUocGFzc2VkUmVzb3Vy
Y2UpOwogICAgIHJldHVybiBzZWxmOwogfQogCkBAIC05Miw5ICs5MSw2IEBAIC0gKHZvaWQpZGVh
bGxvYwogewogICAgIGlmIChXZWJDb3JlT2JqQ1NjaGVkdWxlRGVhbGxvY2F0ZU9uTWFpblRocmVh
ZChbV2ViUmVzb3VyY2VQcml2YXRlIGNsYXNzXSwgc2VsZikpCiAgICAgICAgIHJldHVybjsKLQot
ICAgIGlmIChjb3JlUmVzb3VyY2UpCi0gICAgICAgIGNvcmVSZXNvdXJjZS0+ZGVyZWYoKTsKICAg
ICBbc3VwZXIgZGVhbGxvY107CiB9CiAKQEAgLTE1MywxNCArMTQ5LDE5IEBAIC0gKGluc3RhbmNl
dHlwZSlpbml0V2l0aENvZGVyOihOU0NvZGVyICopZGVjb2RlcgogICAgICAgICByZXR1cm4gbmls
OwogICAgIH0KIAotICAgIF9wcml2YXRlID0gW1tXZWJSZXNvdXJjZVByaXZhdGUgYWxsb2NdIGlu
aXRXaXRoQ29yZVJlc291cmNlOkFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKFNoYXJlZEJ1ZmZlcjo6
d3JhcE5TRGF0YShkYXRhKSwgdXJsLCBtaW1lVHlwZSwgdGV4dEVuY29kaW5nLCBmcmFtZU5hbWUs
IHJlc3BvbnNlKV07CisgICAgYXV0byBjb3JlUmVzb3VyY2UgPSBBcmNoaXZlUmVzb3VyY2U6OmNy
ZWF0ZShTaGFyZWRCdWZmZXI6OndyYXBOU0RhdGEoZGF0YSksIHVybCwgbWltZVR5cGUsIHRleHRF
bmNvZGluZywgZnJhbWVOYW1lLCByZXNwb25zZSk7CisgICAgaWYgKCFjb3JlUmVzb3VyY2UpIHsK
KyAgICAgICAgW3NlbGYgcmVsZWFzZV07CisgICAgICAgIHJldHVybiBuaWw7CisgICAgfQogCisg
ICAgX3ByaXZhdGUgPSBbW1dlYlJlc291cmNlUHJpdmF0ZSBhbGxvY10gaW5pdFdpdGhDb3JlUmVz
b3VyY2U6Y29yZVJlc291cmNlLnJlbGVhc2VOb25OdWxsKCldOwogICAgIHJldHVybiBzZWxmOwog
fQogCiAtICh2b2lkKWVuY29kZVdpdGhDb2RlcjooTlNDb2RlciAqKWVuY29kZXIKIHsKLSAgICBB
cmNoaXZlUmVzb3VyY2UgKnJlc291cmNlID0gX3ByaXZhdGUtPmNvcmVSZXNvdXJjZTsKKyAgICBh
dXRvKiByZXNvdXJjZSA9IF9wcml2YXRlLT5jb3JlUmVzb3VyY2UuZ2V0KCk7CiAgICAgCiAgICAg
TlNEYXRhICpkYXRhID0gbmlsOwogICAgIE5TVVJMICp1cmwgPSBuaWw7CkBAIC0yMDksOCArMjEw
LDcgQEAgLSAoTlNVUkwgKilVUkwKIAogICAgIGlmICghX3ByaXZhdGUtPmNvcmVSZXNvdXJjZSkK
ICAgICAgICAgcmV0dXJuIG5pbDsKLSAgICBOU1VSTCAqdXJsID0gX3ByaXZhdGUtPmNvcmVSZXNv
dXJjZS0+dXJsKCk7Ci0gICAgcmV0dXJuIHVybDsKKyAgICByZXR1cm4gX3ByaXZhdGUtPmNvcmVS
ZXNvdXJjZS0+dXJsKCk7CiB9CiAKIC0gKE5TU3RyaW5nICopTUlNRVR5cGUKQEAgLTI1MiwyMiAr
MjUyLDE5IEBAIEBlbmQKIAogQGltcGxlbWVudGF0aW9uIFdlYlJlc291cmNlIChXZWJSZXNvdXJj
ZUludGVybmFsKQogCi0tIChpZClfaW5pdFdpdGhDb3JlUmVzb3VyY2U6KFBhc3NSZWZQdHI8QXJj
aGl2ZVJlc291cmNlPiljb3JlUmVzb3VyY2UKKy0gKGlkKV9pbml0V2l0aENvcmVSZXNvdXJjZToo
UmVmPEFyY2hpdmVSZXNvdXJjZT4mJiljb3JlUmVzb3VyY2UKIHsKICAgICBzZWxmID0gW3N1cGVy
IGluaXRdOwogICAgIGlmICghc2VsZikKICAgICAgICAgcmV0dXJuIG5pbDsKLSAgICAgICAgICAg
IAotICAgIEFTU0VSVChjb3JlUmVzb3VyY2UpOwotICAgIAotICAgIF9wcml2YXRlID0gW1tXZWJS
ZXNvdXJjZVByaXZhdGUgYWxsb2NdIGluaXRXaXRoQ29yZVJlc291cmNlOmNvcmVSZXNvdXJjZV07
Ci0gICAgICAgICAgICAKKworICAgIF9wcml2YXRlID0gW1tXZWJSZXNvdXJjZVByaXZhdGUgYWxs
b2NdIGluaXRXaXRoQ29yZVJlc291cmNlOldURk1vdmUoY29yZVJlc291cmNlKV07CiAgICAgcmV0
dXJuIHNlbGY7CiB9CiAKLS0gKFdlYkNvcmU6OkFyY2hpdmVSZXNvdXJjZSAqKV9jb3JlUmVzb3Vy
Y2UKKy0gKFdlYkNvcmU6OkFyY2hpdmVSZXNvdXJjZSYpX2NvcmVSZXNvdXJjZQogewotICAgIHJl
dHVybiBfcHJpdmF0ZS0+Y29yZVJlc291cmNlOworICAgIHJldHVybiAqX3ByaXZhdGUtPmNvcmVS
ZXNvdXJjZTsKIH0KIAogQGVuZApAQCAtMzA0LDggKzMwMSwxMyBAQCAtIChpZClfaW5pdFdpdGhE
YXRhOihOU0RhdGEgKilkYXRhCiAgICAgICAgIHJldHVybiBuaWw7CiAgICAgfQogCi0gICAgX3By
aXZhdGUgPSBbW1dlYlJlc291cmNlUHJpdmF0ZSBhbGxvY10gaW5pdFdpdGhDb3JlUmVzb3VyY2U6
QXJjaGl2ZVJlc291cmNlOjpjcmVhdGUoU2hhcmVkQnVmZmVyOjp3cmFwTlNEYXRhKGNvcHlEYXRh
ID8gW1tkYXRhIGNvcHldIGF1dG9yZWxlYXNlXSA6IGRhdGEpLCBVUkwsIE1JTUVUeXBlLCB0ZXh0
RW5jb2RpbmdOYW1lLCBmcmFtZU5hbWUsIHJlc3BvbnNlKV07CisgICAgYXV0byBjb3JlUmVzb3Vy
Y2UgPSBBcmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShTaGFyZWRCdWZmZXI6OndyYXBOU0RhdGEoY29w
eURhdGEgPyBbW2RhdGEgY29weV0gYXV0b3JlbGVhc2VdIDogZGF0YSksIFVSTCwgTUlNRVR5cGUs
IHRleHRFbmNvZGluZ05hbWUsIGZyYW1lTmFtZSwgcmVzcG9uc2UpOworICAgIGlmICghY29yZVJl
c291cmNlKSB7CisgICAgICAgIFtzZWxmIHJlbGVhc2VdOworICAgICAgICByZXR1cm4gbmlsOwor
ICAgIH0KIAorICAgIF9wcml2YXRlID0gW1tXZWJSZXNvdXJjZVByaXZhdGUgYWxsb2NdIGluaXRX
aXRoQ29yZVJlc291cmNlOmNvcmVSZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpXTsKICAgICByZXR1
cm4gc2VsZjsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJS
ZXNvdXJjZUludGVybmFsLmggYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlJlc291cmNl
SW50ZXJuYWwuaAppbmRleCAyZjQ2OTEyZThiZThkM2IzOTJjZjU3MzkyZjA3OWRhYjlkODA5ZTI1
Li44MGM5NzZlYjZiMzY1NGZjMWM2ODhjMmE5NmI4M2JkYjdhZjc3MjUxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlJlc291cmNlSW50ZXJuYWwuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlJlc291cmNlSW50ZXJuYWwuaApAQCAtMSw1ICsxLDUg
QEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yNywxMyArMjcsMTMg
QEAKICAqLwogCiAjaW1wb3J0ICJXZWJSZXNvdXJjZVByaXZhdGUuaCIKLSNpbXBvcnQgPHd0Zi9Q
YXNzUmVmUHRyLmg+CisjaW1wb3J0IDx3dGYvUmVmLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
ICAgICBjbGFzcyBBcmNoaXZlUmVzb3VyY2U7CiB9CiAKIEBpbnRlcmZhY2UgV2ViUmVzb3VyY2Ug
KFdlYlJlc291cmNlSW50ZXJuYWwpCi0tIChpZClfaW5pdFdpdGhDb3JlUmVzb3VyY2U6KFBhc3NS
ZWZQdHI8V2ViQ29yZTo6QXJjaGl2ZVJlc291cmNlPiljb3JlUmVzb3VyY2U7Ci0tIChXZWJDb3Jl
OjpBcmNoaXZlUmVzb3VyY2UqKV9jb3JlUmVzb3VyY2U7CistIChpZClfaW5pdFdpdGhDb3JlUmVz
b3VyY2U6KFJlZjxXZWJDb3JlOjpBcmNoaXZlUmVzb3VyY2U+JiYpY29yZVJlc291cmNlOworLSAo
V2ViQ29yZTo6QXJjaGl2ZVJlc291cmNlJilfY29yZVJlc291cmNlOwogQGVuZApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSVdlYkFyY2hpdmUuaCBiL1NvdXJjZS9XZWJLaXQy
L1NoYXJlZC9BUElXZWJBcmNoaXZlLmgKaW5kZXggZDk2YjU5NmRhYmZiZTkwNjhhYzUzNDEwNjg3
YmZhMmQxODYxOGIyMy4uODM3NTc3N2RiODBmZTA3ZWFjODM0OTMwMzNiZDE4NjRhYmFjN2E3MSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSVdlYkFyY2hpdmUuaAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJV2ViQXJjaGl2ZS5oCkBAIC0yOSw3ICsyOSw2IEBACiAj
aWYgUExBVEZPUk0oQ09DT0EpCiAKICNpbmNsdWRlICJBUElPYmplY3QuaCIKLSNpbmNsdWRlIDx3
dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KIAogbmFtZXNwYWNlIEFQ
SSB7CkBAIC01MCw5ICs0OSw5IEBAIGNsYXNzIFdlYkFyY2hpdmUgOiBwdWJsaWMgQVBJOjpPYmpl
Y3RJbXBsPEFQSTo6T2JqZWN0OjpUeXBlOjpXZWJBcmNoaXZlPiB7CiBwdWJsaWM6CiAgICAgdmly
dHVhbCB+V2ViQXJjaGl2ZSgpOwogCi0gICAgc3RhdGljIFJlZjxXZWJBcmNoaXZlPiBjcmVhdGUo
V2ViQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3VyY2UsIFBhc3NSZWZQdHI8QVBJOjpBcnJheT4g
c3VicmVzb3VyY2VzLCBQYXNzUmVmUHRyPEFQSTo6QXJyYXk+IHN1YmZyYW1lQXJjaGl2ZXMpOwor
ICAgIHN0YXRpYyBSZWY8V2ViQXJjaGl2ZT4gY3JlYXRlKFdlYkFyY2hpdmVSZXNvdXJjZSogbWFp
blJlc291cmNlLCBSZWZQdHI8QVBJOjpBcnJheT4mJiBzdWJyZXNvdXJjZXMsIFJlZlB0cjxBUEk6
OkFycmF5PiYmIHN1YmZyYW1lQXJjaGl2ZXMpOwogICAgIHN0YXRpYyBSZWY8V2ViQXJjaGl2ZT4g
Y3JlYXRlKEFQSTo6RGF0YSopOwotICAgIHN0YXRpYyBSZWY8V2ViQXJjaGl2ZT4gY3JlYXRlKFBh
c3NSZWZQdHI8V2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZT4pOworICAgIHN0YXRpYyBSZWY8V2Vi
QXJjaGl2ZT4gY3JlYXRlKFJlZlB0cjxXZWJDb3JlOjpMZWdhY3lXZWJBcmNoaXZlPiYmKTsKICAg
ICBzdGF0aWMgUmVmPFdlYkFyY2hpdmU+IGNyZWF0ZShXZWJDb3JlOjpSYW5nZSopOwogCiAgICAg
V2ViQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3VyY2UoKTsKQEAgLTY0LDkgKzYzLDkgQEAgcHVi
bGljOgogICAgIFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hpdmUqIGNvcmVMZWdhY3lXZWJBcmNoaXZl
KCk7CiAKIHByaXZhdGU6Ci0gICAgV2ViQXJjaGl2ZShXZWJBcmNoaXZlUmVzb3VyY2UqIG1haW5S
ZXNvdXJjZSwgUGFzc1JlZlB0cjxBUEk6OkFycmF5PiBzdWJyZXNvdXJjZXMsIFBhc3NSZWZQdHI8
QVBJOjpBcnJheT4gc3ViZnJhbWVBcmNoaXZlcyk7CisgICAgV2ViQXJjaGl2ZShXZWJBcmNoaXZl
UmVzb3VyY2UqIG1haW5SZXNvdXJjZSwgUmVmUHRyPEFQSTo6QXJyYXk+JiYgc3VicmVzb3VyY2Vz
LCBSZWZQdHI8QVBJOjpBcnJheT4mJiBzdWJmcmFtZUFyY2hpdmVzKTsKICAgICBXZWJBcmNoaXZl
KEFQSTo6RGF0YSopOwotICAgIFdlYkFyY2hpdmUoUGFzc1JlZlB0cjxXZWJDb3JlOjpMZWdhY3lX
ZWJBcmNoaXZlPik7CisgICAgV2ViQXJjaGl2ZShSZWZQdHI8V2ViQ29yZTo6TGVnYWN5V2ViQXJj
aGl2ZT4mJik7CiAKICAgICBSZWZQdHI8V2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZT4gbV9sZWdh
Y3lXZWJBcmNoaXZlOwogICAgIFJlZlB0cjxXZWJBcmNoaXZlUmVzb3VyY2U+IG1fY2FjaGVkTWFp
blJlc291cmNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSVdlYkFyY2hp
dmUubW0gYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJV2ViQXJjaGl2ZS5tbQppbmRleCA5Mjkw
M2IzNDdhNDlmY2VjZmE2YzM1YzU5ZTJmNmQ2OTE2ZDk4MmU5Li5mMmYwZmUwMTcxZjllMzMzMTQ0
N2QzNmQwYTQ3YzZkYmUwMWEyMzJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
QVBJV2ViQXJjaGl2ZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJV2ViQXJjaGl2
ZS5tbQpAQCAtMzgsOSArMzgsOSBAQCB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogbmFtZXNw
YWNlIEFQSSB7CiAKLVJlZjxXZWJBcmNoaXZlPiBXZWJBcmNoaXZlOjpjcmVhdGUoV2ViQXJjaGl2
ZVJlc291cmNlKiBtYWluUmVzb3VyY2UsIFBhc3NSZWZQdHI8QVBJOjpBcnJheT4gc3VicmVzb3Vy
Y2VzLCBQYXNzUmVmUHRyPEFQSTo6QXJyYXk+IHN1YmZyYW1lQXJjaGl2ZXMpCitSZWY8V2ViQXJj
aGl2ZT4gV2ViQXJjaGl2ZTo6Y3JlYXRlKFdlYkFyY2hpdmVSZXNvdXJjZSogbWFpblJlc291cmNl
LCBSZWZQdHI8QVBJOjpBcnJheT4mJiBzdWJyZXNvdXJjZXMsIFJlZlB0cjxBUEk6OkFycmF5PiYm
IHN1YmZyYW1lQXJjaGl2ZXMpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgV2ViQXJjaGl2
ZShtYWluUmVzb3VyY2UsIHN1YnJlc291cmNlcywgc3ViZnJhbWVBcmNoaXZlcykpOworICAgIHJl
dHVybiBhZG9wdFJlZigqbmV3IFdlYkFyY2hpdmUobWFpblJlc291cmNlLCBXVEZNb3ZlKHN1YnJl
c291cmNlcyksIFdURk1vdmUoc3ViZnJhbWVBcmNoaXZlcykpKTsKIH0KIAogUmVmPFdlYkFyY2hp
dmU+IFdlYkFyY2hpdmU6OmNyZWF0ZShBUEk6OkRhdGEqIGRhdGEpCkBAIC00OCw5ICs0OCw5IEBA
IFJlZjxXZWJBcmNoaXZlPiBXZWJBcmNoaXZlOjpjcmVhdGUoQVBJOjpEYXRhKiBkYXRhKQogICAg
IHJldHVybiBhZG9wdFJlZigqbmV3IFdlYkFyY2hpdmUoZGF0YSkpOwogfQogCi1SZWY8V2ViQXJj
aGl2ZT4gV2ViQXJjaGl2ZTo6Y3JlYXRlKFBhc3NSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gbGVn
YWN5V2ViQXJjaGl2ZSkKK1JlZjxXZWJBcmNoaXZlPiBXZWJBcmNoaXZlOjpjcmVhdGUoUmVmUHRy
PExlZ2FjeVdlYkFyY2hpdmU+JiYgbGVnYWN5V2ViQXJjaGl2ZSkKIHsKLSAgICByZXR1cm4gYWRv
cHRSZWYoKm5ldyBXZWJBcmNoaXZlKGxlZ2FjeVdlYkFyY2hpdmUpKTsKKyAgICByZXR1cm4gYWRv
cHRSZWYoKm5ldyBXZWJBcmNoaXZlKGxlZ2FjeVdlYkFyY2hpdmUucmVsZWFzZU5vbk51bGwoKSkp
OwogfQogCiBSZWY8V2ViQXJjaGl2ZT4gV2ViQXJjaGl2ZTo6Y3JlYXRlKFJhbmdlKiByYW5nZSkK
QEAgLTU4LDMxICs1OCwzMiBAQCBSZWY8V2ViQXJjaGl2ZT4gV2ViQXJjaGl2ZTo6Y3JlYXRlKFJh
bmdlKiByYW5nZSkKICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBXZWJBcmNoaXZlKExlZ2FjeVdl
YkFyY2hpdmU6OmNyZWF0ZShyYW5nZSkpKTsKIH0KIAotV2ViQXJjaGl2ZTo6V2ViQXJjaGl2ZShX
ZWJBcmNoaXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSwgUGFzc1JlZlB0cjxBUEk6OkFycmF5PiBz
dWJyZXNvdXJjZXMsIFBhc3NSZWZQdHI8QVBJOjpBcnJheT4gc3ViZnJhbWVBcmNoaXZlcykKK1dl
YkFyY2hpdmU6OldlYkFyY2hpdmUoV2ViQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3VyY2UsIFJl
ZlB0cjxBUEk6OkFycmF5PiYmIHN1YnJlc291cmNlcywgUmVmUHRyPEFQSTo6QXJyYXk+JiYgc3Vi
ZnJhbWVBcmNoaXZlcykKICAgICA6IG1fY2FjaGVkTWFpblJlc291cmNlKG1haW5SZXNvdXJjZSkK
ICAgICAsIG1fY2FjaGVkU3VicmVzb3VyY2VzKHN1YnJlc291cmNlcykKICAgICAsIG1fY2FjaGVk
U3ViZnJhbWVBcmNoaXZlcyhzdWJmcmFtZUFyY2hpdmVzKQogewotICAgIFJlZlB0cjxBcmNoaXZl
UmVzb3VyY2U+IGNvcmVNYWluUmVzb3VyY2UgPSBtX2NhY2hlZE1haW5SZXNvdXJjZS0+Y29yZUFy
Y2hpdmVSZXNvdXJjZSgpOworICAgIGF1dG8gY29yZU1haW5SZXNvdXJjZSA9IG1fY2FjaGVkTWFp
blJlc291cmNlLT5jb3JlQXJjaGl2ZVJlc291cmNlKCk7CiAKLSAgICBWZWN0b3I8UmVmUHRyPEFy
Y2hpdmVSZXNvdXJjZT4+IGNvcmVBcmNoaXZlUmVzb3VyY2VzOworICAgIFZlY3RvcjxSZWY8QXJj
aGl2ZVJlc291cmNlPj4gY29yZUFyY2hpdmVSZXNvdXJjZXM7CiAgICAgY29yZUFyY2hpdmVSZXNv
dXJjZXMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShtX2NhY2hlZFN1YnJlc291cmNlcy0+c2l6ZSgp
KTsKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1fY2FjaGVkU3VicmVzb3VyY2VzLT5zaXpl
KCk7ICsraSkgewotICAgICAgICBSZWZQdHI8V2ViQXJjaGl2ZVJlc291cmNlPiByZXNvdXJjZSA9
IG1fY2FjaGVkU3VicmVzb3VyY2VzLT5hdDxXZWJBcmNoaXZlUmVzb3VyY2U+KGkpOworICAgICAg
ICBhdXRvIHJlc291cmNlID0gbV9jYWNoZWRTdWJyZXNvdXJjZXMtPmF0PFdlYkFyY2hpdmVSZXNv
dXJjZT4oaSk7CiAgICAgICAgIEFTU0VSVChyZXNvdXJjZSk7Ci0gICAgICAgIGNvcmVBcmNoaXZl
UmVzb3VyY2VzLnVuY2hlY2tlZEFwcGVuZChyZXNvdXJjZS0+Y29yZUFyY2hpdmVSZXNvdXJjZSgp
KTsKKyAgICAgICAgQVNTRVJUKHJlc291cmNlLT5jb3JlQXJjaGl2ZVJlc291cmNlKCkpOworICAg
ICAgICBjb3JlQXJjaGl2ZVJlc291cmNlcy51bmNoZWNrZWRBcHBlbmQoKnJlc291cmNlLT5jb3Jl
QXJjaGl2ZVJlc291cmNlKCkpOwogICAgIH0KIAotICAgIFZlY3RvcjxSZWZQdHI8TGVnYWN5V2Vi
QXJjaGl2ZT4+IGNvcmVTdWJmcmFtZUxlZ2FjeVdlYkFyY2hpdmVzOworICAgIFZlY3RvcjxSZWY8
TGVnYWN5V2ViQXJjaGl2ZT4+IGNvcmVTdWJmcmFtZUxlZ2FjeVdlYkFyY2hpdmVzOwogICAgIGNv
cmVTdWJmcmFtZUxlZ2FjeVdlYkFyY2hpdmVzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobV9jYWNo
ZWRTdWJmcmFtZUFyY2hpdmVzLT5zaXplKCkpOwotCiAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkg
PCBtX2NhY2hlZFN1YmZyYW1lQXJjaGl2ZXMtPnNpemUoKTsgKytpKSB7Ci0gICAgICAgIFJlZlB0
cjxXZWJBcmNoaXZlPiBzdWJmcmFtZVdlYkFyY2hpdmUgPSBtX2NhY2hlZFN1YmZyYW1lQXJjaGl2
ZXMtPmF0PFdlYkFyY2hpdmU+KGkpOworICAgICAgICBhdXRvIHN1YmZyYW1lV2ViQXJjaGl2ZSA9
IG1fY2FjaGVkU3ViZnJhbWVBcmNoaXZlcy0+YXQ8V2ViQXJjaGl2ZT4oaSk7CiAgICAgICAgIEFT
U0VSVChzdWJmcmFtZVdlYkFyY2hpdmUpOwotICAgICAgICBjb3JlU3ViZnJhbWVMZWdhY3lXZWJB
cmNoaXZlcy51bmNoZWNrZWRBcHBlbmQoc3ViZnJhbWVXZWJBcmNoaXZlLT5jb3JlTGVnYWN5V2Vi
QXJjaGl2ZSgpKTsKKyAgICAgICAgQVNTRVJUKHN1YmZyYW1lV2ViQXJjaGl2ZS0+Y29yZUxlZ2Fj
eVdlYkFyY2hpdmUoKSk7CisgICAgICAgIGNvcmVTdWJmcmFtZUxlZ2FjeVdlYkFyY2hpdmVzLnVu
Y2hlY2tlZEFwcGVuZCgqc3ViZnJhbWVXZWJBcmNoaXZlLT5jb3JlTGVnYWN5V2ViQXJjaGl2ZSgp
KTsKICAgICB9CiAKLSAgICBtX2xlZ2FjeVdlYkFyY2hpdmUgPSBMZWdhY3lXZWJBcmNoaXZlOjpj
cmVhdGUoV1RGTW92ZShjb3JlTWFpblJlc291cmNlKSwgV1RGTW92ZShjb3JlQXJjaGl2ZVJlc291
cmNlcyksIFdURk1vdmUoY29yZVN1YmZyYW1lTGVnYWN5V2ViQXJjaGl2ZXMpKTsKKyAgICBtX2xl
Z2FjeVdlYkFyY2hpdmUgPSBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoKmNvcmVNYWluUmVzb3Vy
Y2UsIFdURk1vdmUoY29yZUFyY2hpdmVSZXNvdXJjZXMpLCBXVEZNb3ZlKGNvcmVTdWJmcmFtZUxl
Z2FjeVdlYkFyY2hpdmVzKSk7CiB9CiAKIFdlYkFyY2hpdmU6OldlYkFyY2hpdmUoQVBJOjpEYXRh
KiBkYXRhKQpAQCAtOTAsNyArOTEsNyBAQCBXZWJBcmNoaXZlOjpXZWJBcmNoaXZlKEFQSTo6RGF0
YSogZGF0YSkKICAgICBtX2xlZ2FjeVdlYkFyY2hpdmUgPSBMZWdhY3lXZWJBcmNoaXZlOjpjcmVh
dGUoU2hhcmVkQnVmZmVyOjpjcmVhdGUoZGF0YS0+Ynl0ZXMoKSwgZGF0YS0+c2l6ZSgpKS5nZXQo
KSk7CiB9CiAKLVdlYkFyY2hpdmU6OldlYkFyY2hpdmUoUGFzc1JlZlB0cjxMZWdhY3lXZWJBcmNo
aXZlPiBsZWdhY3lXZWJBcmNoaXZlKQorV2ViQXJjaGl2ZTo6V2ViQXJjaGl2ZShSZWZQdHI8TGVn
YWN5V2ViQXJjaGl2ZT4mJiBsZWdhY3lXZWJBcmNoaXZlKQogICAgIDogbV9sZWdhY3lXZWJBcmNo
aXZlKGxlZ2FjeVdlYkFyY2hpdmUpCiB7CiB9CkBAIC0xMTEsMTAgKzExMiw4IEBAIEFQSTo6QXJy
YXkqIFdlYkFyY2hpdmU6OnN1YnJlc291cmNlcygpCiAgICAgaWYgKCFtX2NhY2hlZFN1YnJlc291
cmNlcykgewogICAgICAgICBWZWN0b3I8UmVmUHRyPEFQSTo6T2JqZWN0Pj4gc3VicmVzb3VyY2Vz
OwogICAgICAgICBzdWJyZXNvdXJjZXMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShtX2xlZ2FjeVdl
YkFyY2hpdmUtPnN1YnJlc291cmNlcygpLnNpemUoKSk7Ci0KLSAgICAgICAgZm9yIChjb25zdCBh
dXRvJiBzdWJyZXNvdXJjZSA6IG1fbGVnYWN5V2ViQXJjaGl2ZS0+c3VicmVzb3VyY2VzKCkpCi0g
ICAgICAgICAgICBzdWJyZXNvdXJjZXMudW5jaGVja2VkQXBwZW5kKFdlYkFyY2hpdmVSZXNvdXJj
ZTo6Y3JlYXRlKHN1YnJlc291cmNlKSk7Ci0KKyAgICAgICAgZm9yIChhdXRvJiBzdWJyZXNvdXJj
ZSA6IG1fbGVnYWN5V2ViQXJjaGl2ZS0+c3VicmVzb3VyY2VzKCkpCisgICAgICAgICAgICBzdWJy
ZXNvdXJjZXMudW5jaGVja2VkQXBwZW5kKFdlYkFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKHN1YnJl
c291cmNlLnB0cigpKSk7CiAgICAgICAgIG1fY2FjaGVkU3VicmVzb3VyY2VzID0gQVBJOjpBcnJh
eTo6Y3JlYXRlKFdURk1vdmUoc3VicmVzb3VyY2VzKSk7CiAgICAgfQogCkBAIC0xMjYsMTAgKzEy
NSw4IEBAIEFQSTo6QXJyYXkqIFdlYkFyY2hpdmU6OnN1YmZyYW1lQXJjaGl2ZXMoKQogICAgIGlm
ICghbV9jYWNoZWRTdWJmcmFtZUFyY2hpdmVzKSB7CiAgICAgICAgIFZlY3RvcjxSZWZQdHI8QVBJ
OjpPYmplY3Q+PiBzdWJmcmFtZVdlYkFyY2hpdmVzOwogICAgICAgICBzdWJmcmFtZVdlYkFyY2hp
dmVzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobV9sZWdhY3lXZWJBcmNoaXZlLT5zdWJmcmFtZUFy
Y2hpdmVzKCkuc2l6ZSgpKTsKLQotICAgICAgICBmb3IgKGNvbnN0IGF1dG8mIHN1YmZyYW1lQXJj
aGl2ZSA6IG1fbGVnYWN5V2ViQXJjaGl2ZS0+c3ViZnJhbWVBcmNoaXZlcygpKQotICAgICAgICAg
ICAgc3ViZnJhbWVXZWJBcmNoaXZlcy51bmNoZWNrZWRBcHBlbmQoV2ViQXJjaGl2ZTo6Y3JlYXRl
KHN0YXRpY19jYXN0PExlZ2FjeVdlYkFyY2hpdmUqPihzdWJmcmFtZUFyY2hpdmUuZ2V0KCkpKSk7
Ci0KKyAgICAgICAgZm9yIChhdXRvJiBzdWJmcmFtZUFyY2hpdmUgOiBtX2xlZ2FjeVdlYkFyY2hp
dmUtPnN1YmZyYW1lQXJjaGl2ZXMoKSkKKyAgICAgICAgICAgIHN1YmZyYW1lV2ViQXJjaGl2ZXMu
dW5jaGVja2VkQXBwZW5kKFdlYkFyY2hpdmU6OmNyZWF0ZShzdGF0aWNfY2FzdDxMZWdhY3lXZWJB
cmNoaXZlKj4oc3ViZnJhbWVBcmNoaXZlLnB0cigpKSkpOwogICAgICAgICBtX2NhY2hlZFN1YmZy
YW1lQXJjaGl2ZXMgPSBBUEk6OkFycmF5OjpjcmVhdGUoV1RGTW92ZShzdWJmcmFtZVdlYkFyY2hp
dmVzKSk7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvVGV4dENo
ZWNrZXJTdGF0ZS5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1RleHRDaGVja2VyU3RhdGUuaApp
bmRleCBiY2M5ZmVjY2NjYjJmNjliNzY3OTg0Njg1MTljZDQyYjAzN2NhMmRkLi5jZTY2ZjEwMjUw
MjNhYWRlZjg4ZDM1Nzg2Nzg5OTg2MTA5YjJjY2ZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9TaGFyZWQvVGV4dENoZWNrZXJTdGF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9U
ZXh0Q2hlY2tlclN0YXRlLmgKQEAgLTIzLDIzICsyMywyMiBAQAogICogVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgVGV4dENoZWNrZXJTdGF0ZV9oCi0jZGVm
aW5lIFRleHRDaGVja2VyU3RhdGVfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJBcmd1bWVu
dENvZGVycy5oIgogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogc3RydWN0IFRleHRDaGVja2VyU3Rh
dGUgewotICAgIGJvb2wgaXNDb250aW51b3VzU3BlbGxDaGVja2luZ0VuYWJsZWQ7Ci0gICAgYm9v
bCBpc0dyYW1tYXJDaGVja2luZ0VuYWJsZWQ7CisgICAgYm9vbCBpc0NvbnRpbnVvdXNTcGVsbENo
ZWNraW5nRW5hYmxlZCB7IGZhbHNlIH07CisgICAgYm9vbCBpc0dyYW1tYXJDaGVja2luZ0VuYWJs
ZWQgeyBmYWxzZSB9OwogCiAjaWYgVVNFKEFQUEtJVCkKLSAgICBib29sIGlzQXV0b21hdGljU3Bl
bGxpbmdDb3JyZWN0aW9uRW5hYmxlZDsKLSAgICBib29sIGlzQXV0b21hdGljUXVvdGVTdWJzdGl0
dXRpb25FbmFibGVkOwotICAgIGJvb2wgaXNBdXRvbWF0aWNEYXNoU3Vic3RpdHV0aW9uRW5hYmxl
ZDsKLSAgICBib29sIGlzQXV0b21hdGljTGlua0RldGVjdGlvbkVuYWJsZWQ7Ci0gICAgYm9vbCBp
c0F1dG9tYXRpY1RleHRSZXBsYWNlbWVudEVuYWJsZWQ7CisgICAgYm9vbCBpc0F1dG9tYXRpY1Nw
ZWxsaW5nQ29ycmVjdGlvbkVuYWJsZWQgeyBmYWxzZSB9OworICAgIGJvb2wgaXNBdXRvbWF0aWNR
dW90ZVN1YnN0aXR1dGlvbkVuYWJsZWQgeyBmYWxzZSB9OworICAgIGJvb2wgaXNBdXRvbWF0aWNE
YXNoU3Vic3RpdHV0aW9uRW5hYmxlZCB7IGZhbHNlIH07CisgICAgYm9vbCBpc0F1dG9tYXRpY0xp
bmtEZXRlY3Rpb25FbmFibGVkIHsgZmFsc2UgfTsKKyAgICBib29sIGlzQXV0b21hdGljVGV4dFJl
cGxhY2VtZW50RW5hYmxlZCB7IGZhbHNlIH07CiAjZW5kaWYKIH07CiAKQEAgLTQ4LDUgKzQ3LDMg
QEAgc3RydWN0IFRleHRDaGVja2VyU3RhdGUgewogbmFtZXNwYWNlIElQQyB7CiB0ZW1wbGF0ZTw+
IHN0cnVjdCBBcmd1bWVudENvZGVyPFdlYktpdDo6VGV4dENoZWNrZXJTdGF0ZT4gOiBTaW1wbGVB
cmd1bWVudENvZGVyPFdlYktpdDo6VGV4dENoZWNrZXJTdGF0ZT4geyB9OwogfTsKLQotI2VuZGlm
IC8vIFRleHRDaGVja2VyU3RhdGVfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL1dlYkljb25EYXRhYmFzZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViSWNv
bkRhdGFiYXNlLmNwcAppbmRleCA1NmY1ZGExYTIwMTNhMDlhNjlhNWZiZWEyNGZlNGE2YmJiYjBh
MDA0Li44OTJjMDVmZGFjZjRiMzNhYzg1YzZjNDU1ZDU4M2E0ZTg3OWZiYmYyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViSWNvbkRhdGFiYXNlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViSWNvbkRhdGFiYXNlLmNwcApAQCAtMTMwLDcgKzEzMCw3
IEBAIHZvaWQgV2ViSWNvbkRhdGFiYXNlOjpzZXRJY29uRGF0YUZvckljb25VUkwoY29uc3QgSVBD
OjpEYXRhUmVmZXJlbmNlJiBpY29uRGF0YSwKICAgICBMT0coSWNvbkRhdGFiYXNlLCAiV0syIFVJ
UHJvY2VzcyBzZXR0aW5nIGljb24gZGF0YSAoJWkgYnl0ZXMpIGZvciBwYWdlIFVSTCAlcyIsIChp
bnQpaWNvbkRhdGEuc2l6ZSgpLCBpY29uVVJMLmFzY2lpKCkuZGF0YSgpKTsKICAgICBpZiAoIW1f
aWNvbkRhdGFiYXNlSW1wbCkKICAgICAgICAgcmV0dXJuOwotICAgIG1faWNvbkRhdGFiYXNlSW1w
bC0+c2V0SWNvbkRhdGFGb3JJY29uVVJMKFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKGljb25EYXRhLmRh
dGEoKSwgaWNvbkRhdGEuc2l6ZSgpKSwgaWNvblVSTCk7CisgICAgbV9pY29uRGF0YWJhc2VJbXBs
LT5zZXRJY29uRGF0YUZvckljb25VUkwoU2hhcmVkQnVmZmVyOjpjcmVhdGUoaWNvbkRhdGEuZGF0
YSgpLCBpY29uRGF0YS5zaXplKCkpLnB0cigpLCBpY29uVVJMKTsKIH0KIAogdm9pZCBXZWJJY29u
RGF0YWJhc2U6OnN5bmNocm9ub3VzSWNvbkRhdGFGb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYsIElQ
Qzo6RGF0YVJlZmVyZW5jZSYgaWNvbkRhdGEpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvV2ViUGFnZVByb3h5LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFn
ZVByb3h5LmgKaW5kZXggNzU4YzIzOTU5ODUwNTI0Mzk4NmMwNzM3NTE0OWMzZWVlYjEzNzI4Ni4u
NDYwNmRmMTE0YWQ3Nzc0ZTQzNzk0MGU0ZmMwOTg3YTlmMWFkZjZhZSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaApAQCAtMTg2LDcgKzE4Niw2IEBAIGNsYXNzIFBhZ2VD
bGllbnQ7CiBjbGFzcyBSZW1vdGVMYXllclRyZWVTY3JvbGxpbmdQZXJmb3JtYW5jZURhdGE7CiBj
bGFzcyBSZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbjsKIGNsYXNzIFJlbW90ZVNjcm9sbGluZ0Nv
b3JkaW5hdG9yUHJveHk7Ci1jbGFzcyBTdHJpbmdQYWlyVmVjdG9yOwogY2xhc3MgVXNlckRhdGE7
CiBjbGFzcyBWaWV3U25hcHNob3Q7CiBjbGFzcyBWaXNpdGVkTGlua1N0b3JlOwpAQCAtMjA2LDEx
ICsyMDUsMTIgQEAgY2xhc3MgV2ViUHJvY2Vzc1Byb3h5OwogY2xhc3MgV2ViVXNlckNvbnRlbnRD
b250cm9sbGVyUHJveHk7CiBjbGFzcyBXZWJXaGVlbEV2ZW50OwogY2xhc3MgV2Vic2l0ZURhdGFT
dG9yZTsKK2NsYXNzIEdhbWVwYWREYXRhOworCiBzdHJ1Y3QgQXR0cmlidXRlZFN0cmluZzsKIHN0
cnVjdCBDb2xvclNwYWNlRGF0YTsKIHN0cnVjdCBFZGl0aW5nUmFuZ2U7CiBzdHJ1Y3QgRWRpdG9y
U3RhdGU7Ci1jbGFzcyBHYW1lcGFkRGF0YTsKIHN0cnVjdCBJbnRlcmFjdGlvbkluZm9ybWF0aW9u
UmVxdWVzdDsKIHN0cnVjdCBMb2FkUGFyYW1ldGVyczsKIHN0cnVjdCBQbGF0Zm9ybVBvcHVwTWVu
dURhdGE7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0ljb25EYXRhYmFz
ZS9XZWJJY29uRGF0YWJhc2VQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0lj
b25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5jcHAKaW5kZXggMzNmZTU4N2U0MTU3NjM4
NDAwMzMxNTA5ZDhmN2IyNTNjNzMzZTg5ZC4uNTQyZWRkZDZkYzA5YjNiYWMxNDdlODNlMWNiNzY0
NTk4OTg5N2IzNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JY29uRGF0
YWJhc2UvV2ViSWNvbkRhdGFiYXNlUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvSWNvbkRhdGFiYXNlL1dlYkljb25EYXRhYmFzZVByb3h5LmNwcApAQCAtNDIsMTEgKzQy
LDEwIEBAIFdlYkljb25EYXRhYmFzZVByb3h5Ojp+V2ViSWNvbkRhdGFiYXNlUHJveHkoKQogewog
fQogCi1XZWJJY29uRGF0YWJhc2VQcm94eTo6V2ViSWNvbkRhdGFiYXNlUHJveHkoV2ViUHJvY2Vz
cyogcHJvY2VzcykKLSAgICA6IG1faXNFbmFibGVkKGZhbHNlKQotICAgICwgbV9wcm9jZXNzKHBy
b2Nlc3MpCitXZWJJY29uRGF0YWJhc2VQcm94eTo6V2ViSWNvbkRhdGFiYXNlUHJveHkoV2ViUHJv
Y2VzcyYgcHJvY2VzcykKKyAgICA6IG1fcHJvY2Vzcyhwcm9jZXNzKQogewotICAgIG1fcHJvY2Vz
cy0+YWRkTWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpXZWJJY29uRGF0YWJhc2VQcm94eTo6bWVz
c2FnZVJlY2VpdmVyTmFtZSgpLCAqdGhpcyk7CisgICAgbV9wcm9jZXNzLmFkZE1lc3NhZ2VSZWNl
aXZlcihNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlUHJveHk6Om1lc3NhZ2VSZWNlaXZlck5hbWUo
KSwgKnRoaXMpOwogfQogCiBib29sIFdlYkljb25EYXRhYmFzZVByb3h5Ojppc0VuYWJsZWQoKSBj
b25zdApAQCAtNjUsMTggKzY0LDE4IEBAIHZvaWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnNldEVu
YWJsZWQoYm9vbCBlbmFibGVkKQogCiB2b2lkIFdlYkljb25EYXRhYmFzZVByb3h5OjpyZXRhaW5J
Y29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIHBhZ2VVUkwpCiB7Ci0gICAgbV9wcm9jZXNzLT5w
YXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpXZWJQcm9jZXNzUHJveHk6
OlJldGFpbkljb25Gb3JQYWdlVVJMKHBhZ2VVUkwpLCAwKTsKKyAgICBtX3Byb2Nlc3MucGFyZW50
UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViUHJvY2Vzc1Byb3h5OjpSZXRh
aW5JY29uRm9yUGFnZVVSTChwYWdlVVJMKSwgMCk7CiB9CiAKIHZvaWQgV2ViSWNvbkRhdGFiYXNl
UHJveHk6OnJlbGVhc2VJY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIHBhZ2VVUkwpCiB7Ci0g
ICAgbV9wcm9jZXNzLT5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpX
ZWJQcm9jZXNzUHJveHk6OlJlbGVhc2VJY29uRm9yUGFnZVVSTChwYWdlVVJMKSwgMCk7CisgICAg
bV9wcm9jZXNzLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmQoTWVzc2FnZXM6OldlYlBy
b2Nlc3NQcm94eTo6UmVsZWFzZUljb25Gb3JQYWdlVVJMKHBhZ2VVUkwpLCAwKTsKIH0KIAogSW1h
Z2UqIFdlYkljb25EYXRhYmFzZVByb3h5OjpzeW5jaHJvbm91c0ljb25Gb3JQYWdlVVJMKGNvbnN0
IFN0cmluZyYgcGFnZVVSTCwgY29uc3QgSW50U2l6ZSYgLypzaXplKi8pCiB7CiAgICAgSVBDOjpE
YXRhUmVmZXJlbmNlIHJlc3VsdDsKLSAgICBpZiAoIW1fcHJvY2Vzcy0+cGFyZW50UHJvY2Vzc0Nv
bm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYkljb25EYXRhYmFzZTo6U3luY2hyb25v
dXNJY29uRGF0YUZvclBhZ2VVUkwocGFnZVVSTCksIE1lc3NhZ2VzOjpXZWJJY29uRGF0YWJhc2U6
OlN5bmNocm9ub3VzSWNvbkRhdGFGb3JQYWdlVVJMOjpSZXBseShyZXN1bHQpLCAwKSkKKyAgICBp
ZiAoIW1fcHJvY2Vzcy5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdl
czo6V2ViSWNvbkRhdGFiYXNlOjpTeW5jaHJvbm91c0ljb25EYXRhRm9yUGFnZVVSTChwYWdlVVJM
KSwgTWVzc2FnZXM6OldlYkljb25EYXRhYmFzZTo6U3luY2hyb25vdXNJY29uRGF0YUZvclBhZ2VV
Ukw6OlJlcGx5KHJlc3VsdCksIDApKQogICAgICAgICByZXR1cm4gMDsKICAgICAKICAgICAvLyBG
SVhNRTogUmV0dXJuIEltYWdlIGNyZWF0ZWQgd2l0aCB0aGUgYWJvdmUgZGF0YS4KQEAgLTExMCwz
NCArMTA5LDMyIEBAIGJvb2wgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnN1cHBvcnRzQXN5bmNocm9u
b3VzTW9kZSgpCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLXZvaWQgV2ViSWNvbkRhdGFiYXNlUHJv
eHk6OmxvYWREZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5nJiBpY29uVVJMLCBQYXNzUmVm
UHRyPFdlYkNvcmU6Okljb25Mb2FkRGVjaXNpb25DYWxsYmFjaz4gY2FsbGJhY2spCit2b2lkIFdl
Ykljb25EYXRhYmFzZVByb3h5Ojpsb2FkRGVjaXNpb25Gb3JJY29uVVJMKGNvbnN0IFN0cmluZyYg
aWNvblVSTCwgV2ViQ29yZTo6SWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrJiBjYWxsYmFjaykKIHsK
LSAgICB1aW50NjRfdCBpZCA9IGNhbGxiYWNrLT5jYWxsYmFja0lEKCk7Ci0gICAgbV9pY29uTG9h
ZERlY2lzaW9uQ2FsbGJhY2tzLmFkZChpZCwgY2FsbGJhY2spOwotICAgIAotICAgIG1fcHJvY2Vz
cy0+cGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViSWNvbkRhdGFi
YXNlOjpHZXRMb2FkRGVjaXNpb25Gb3JJY29uVVJMKGljb25VUkwsIGlkKSwgMCk7CisgICAgdWlu
dDY0X3QgaWQgPSBjYWxsYmFjay5jYWxsYmFja0lEKCk7CisgICAgbV9pY29uTG9hZERlY2lzaW9u
Q2FsbGJhY2tzLmFkZChpZCwgJmNhbGxiYWNrKTsKKyAgICBtX3Byb2Nlc3MucGFyZW50UHJvY2Vz
c0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpHZXRMb2FkRGVj
aXNpb25Gb3JJY29uVVJMKGljb25VUkwsIGlkKSwgMCk7CiB9CiAKIHZvaWQgV2ViSWNvbkRhdGFi
YXNlUHJveHk6OnJlY2VpdmVkSWNvbkxvYWREZWNpc2lvbihpbnQgZGVjaXNpb24sIHVpbnQ2NF90
IGNhbGxiYWNrSUQpCiB7Ci0gICAgUmVmUHRyPFdlYkNvcmU6Okljb25Mb2FkRGVjaXNpb25DYWxs
YmFjaz4gY2FsbGJhY2sgPSBtX2ljb25Mb2FkRGVjaXNpb25DYWxsYmFja3MudGFrZShjYWxsYmFj
a0lEKTsKLSAgICBpZiAoY2FsbGJhY2spCisgICAgaWYgKGF1dG8gY2FsbGJhY2sgPSBtX2ljb25M
b2FkRGVjaXNpb25DYWxsYmFja3MudGFrZShjYWxsYmFja0lEKSkKICAgICAgICAgY2FsbGJhY2st
PnBlcmZvcm1DYWxsYmFjayhzdGF0aWNfY2FzdDxXZWJDb3JlOjpJY29uTG9hZERlY2lzaW9uPihk
ZWNpc2lvbikpOwogfQogCi12b2lkIFdlYkljb25EYXRhYmFzZVByb3h5OjppY29uRGF0YUZvcklj
b25VUkwoY29uc3QgU3RyaW5nJiAvKmljb25VUkwqLywgUGFzc1JlZlB0cjxXZWJDb3JlOjpJY29u
RGF0YUNhbGxiYWNrPikKK3ZvaWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6Omljb25EYXRhRm9ySWNv
blVSTChjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpJY29uRGF0YUNhbGxiYWNrJikKIHsKIH0KIAog
dm9pZCBXZWJJY29uRGF0YWJhc2VQcm94eTo6c2V0SWNvblVSTEZvclBhZ2VVUkwoY29uc3QgU3Ry
aW5nJiBpY29uVVJMLCBjb25zdCBTdHJpbmcmIHBhZ2VVUkwpCiB7Ci0gICAgbV9wcm9jZXNzLT5w
YXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpXZWJJY29uRGF0YWJhc2U6
OlNldEljb25VUkxGb3JQYWdlVVJMKGljb25VUkwsIHBhZ2VVUkwpLCAwKTsKKyAgICBtX3Byb2Nl
c3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViSWNvbkRhdGFi
YXNlOjpTZXRJY29uVVJMRm9yUGFnZVVSTChpY29uVVJMLCBwYWdlVVJMKSwgMCk7CiB9CiAKLXZv
aWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnNldEljb25EYXRhRm9ySWNvblVSTChQYXNzUmVmUHRy
PFNoYXJlZEJ1ZmZlcj4gaWNvbkRhdGEsIGNvbnN0IFN0cmluZyYgaWNvblVSTCkKK3ZvaWQgV2Vi
SWNvbkRhdGFiYXNlUHJveHk6OnNldEljb25EYXRhRm9ySWNvblVSTChTaGFyZWRCdWZmZXIqIGlj
b25EYXRhLCBjb25zdCBTdHJpbmcmIGljb25VUkwpCiB7Ci0gICAgSVBDOjpEYXRhUmVmZXJlbmNl
IGRhdGEocmVpbnRlcnByZXRfY2FzdDxjb25zdCB1aW50OF90Kj4oaWNvbkRhdGEgPyBpY29uRGF0
YS0+ZGF0YSgpIDogMCksIGljb25EYXRhID8gaWNvbkRhdGEtPnNpemUoKSA6IDApOwotICAgIG1f
cHJvY2Vzcy0+cGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViSWNv
bkRhdGFiYXNlOjpTZXRJY29uRGF0YUZvckljb25VUkwoZGF0YSwgaWNvblVSTCksIDApOworICAg
IElQQzo6RGF0YVJlZmVyZW5jZSBkYXRhKHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgdWludDhfdCo+
KGljb25EYXRhID8gaWNvbkRhdGEtPmRhdGEoKSA6IG51bGxwdHIpLCBpY29uRGF0YSA/IGljb25E
YXRhLT5zaXplKCkgOiAwKTsKKyAgICBtX3Byb2Nlc3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24o
KS0+c2VuZChNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpTZXRJY29uRGF0YUZvckljb25VUkwo
ZGF0YSwgaWNvblVSTCksIDApOwogfQogCiB2b2lkIFdlYkljb25EYXRhYmFzZVByb3h5Ojp1cmxJ
bXBvcnRGaW5pc2hlZCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0lj
b25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9JY29uRGF0YWJhc2UvV2ViSWNvbkRhdGFiYXNlUHJveHkuaAppbmRleCA2MmEwNmMzZjk0
ZjdkN2UwOTc2MzViNTJiNzhjNDMzOGViM2NhOGJkLi5iZGY4ZDRjZjYzYWJlOWNlYTNkMmFjMTk4
MWU5MDZlYjY2MWY1YTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0lj
b25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvSWNvbkRhdGFiYXNlL1dlYkljb25EYXRhYmFzZVByb3h5LmgKQEAgLTIzLDggKzIz
LDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVm
IFdlYkljb25EYXRhYmFzZVByb3h5X2gKLSNkZWZpbmUgV2ViSWNvbkRhdGFiYXNlUHJveHlfaAor
I3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJBUElPYmplY3QuaCIKICNpbmNsdWRlICJNZXNzYWdl
UmVjZWl2ZXIuaCIKQEAgLTM3LDQzICszNiw0MSBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIAogY2xh
c3MgV2ViUHJvY2VzczsKIAotY2xhc3MgV2ViSWNvbkRhdGFiYXNlUHJveHkgOiBwdWJsaWMgV2Vi
Q29yZTo6SWNvbkRhdGFiYXNlQmFzZSwgcHJpdmF0ZSBJUEM6Ok1lc3NhZ2VSZWNlaXZlciB7Citj
bGFzcyBXZWJJY29uRGF0YWJhc2VQcm94eSBmaW5hbCA6IHB1YmxpYyBXZWJDb3JlOjpJY29uRGF0
YWJhc2VCYXNlLCBwcml2YXRlIElQQzo6TWVzc2FnZVJlY2VpdmVyIHsKIHB1YmxpYzoKLSAgICBl
eHBsaWNpdCBXZWJJY29uRGF0YWJhc2VQcm94eShXZWJQcm9jZXNzKik7CisgICAgZXhwbGljaXQg
V2ViSWNvbkRhdGFiYXNlUHJveHkoV2ViUHJvY2VzcyYpOwogICAgIHZpcnR1YWwgfldlYkljb25E
YXRhYmFzZVByb3h5KCk7CiAKLSAgICBib29sIGlzRW5hYmxlZCgpIGNvbnN0IG92ZXJyaWRlOwot
ICAgIHZvaWQgc2V0RW5hYmxlZChib29sKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldEVuYWJsZWQo
Ym9vbCkgZmluYWw7CiAKLSAgICB2b2lkIHJldGFpbkljb25Gb3JQYWdlVVJMKGNvbnN0IFN0cmlu
ZyYpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVsZWFzZUljb25Gb3JQYWdlVVJMKGNvbnN0IFN0cmlu
ZyYpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0SWNvblVSTEZvclBhZ2VVUkwoY29uc3QgU3RyaW5n
JiwgY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRJY29uRGF0YUZvckljb25V
UkwoUGFzc1JlZlB0cjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+LCBjb25zdCBTdHJpbmcmKSBvdmVy
cmlkZTsKK3ByaXZhdGU6CisgICAgYm9vbCBpc0VuYWJsZWQoKSBjb25zdCBmaW5hbDsKKworICAg
IHZvaWQgcmV0YWluSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikgZmluYWw7CisgICAgdm9p
ZCByZWxlYXNlSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikgZmluYWw7CisgICAgdm9pZCBz
ZXRJY29uVVJMRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmLCBjb25zdCBTdHJpbmcmKSBmaW5hbDsK
KyAgICB2b2lkIHNldEljb25EYXRhRm9ySWNvblVSTChXZWJDb3JlOjpTaGFyZWRCdWZmZXIqLCBj
b25zdCBTdHJpbmcmKSBmaW5hbDsKIAotICAgIFN0cmluZyBzeW5jaHJvbm91c0ljb25VUkxGb3JQ
YWdlVVJMKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAgIGJvb2wgc3luY2hyb25vdXNJY29u
RGF0YUtub3duRm9ySWNvblVSTChjb25zdCBTdHJpbmcmKSBvdmVycmlkZTsKLSAgICBXZWJDb3Jl
OjpJY29uTG9hZERlY2lzaW9uIHN5bmNocm9ub3VzTG9hZERlY2lzaW9uRm9ySWNvblVSTChjb25z
dCBTdHJpbmcmLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIG92ZXJyaWRlOwotICAgIFdlYkNv
cmU6OkltYWdlKiBzeW5jaHJvbm91c0ljb25Gb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYsIGNvbnN0
IFdlYkNvcmU6OkludFNpemUmKSBvdmVycmlkZTsKKyAgICBTdHJpbmcgc3luY2hyb25vdXNJY29u
VVJMRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmKSBmaW5hbDsKKyAgICBib29sIHN5bmNocm9ub3Vz
SWNvbkRhdGFLbm93bkZvckljb25VUkwoY29uc3QgU3RyaW5nJikgZmluYWw7CisgICAgV2ViQ29y
ZTo6SWNvbkxvYWREZWNpc2lvbiBzeW5jaHJvbm91c0xvYWREZWNpc2lvbkZvckljb25VUkwoY29u
c3QgU3RyaW5nJiwgV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBmaW5hbDsKKyAgICBXZWJDb3Jl
OjpJbWFnZSogc3luY2hyb25vdXNJY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmLCBjb25zdCBX
ZWJDb3JlOjpJbnRTaXplJikgZmluYWw7CiAgICAgCi0gICAgLy8gQXN5bmNocm9ub3VzIGNhbGxz
IHdlIHNob3VsZCB1c2UgdG8gcmVwbGFjZSB0aGUgYWJvdmUgd2hlbiBzdXBwb3J0ZWQuCi0gICAg
Ym9vbCBzdXBwb3J0c0FzeW5jaHJvbm91c01vZGUoKSBvdmVycmlkZTsKLSAgICB2b2lkIGxvYWRE
ZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5nJiwgUGFzc1JlZlB0cjxXZWJDb3JlOjpJY29u
TG9hZERlY2lzaW9uQ2FsbGJhY2s+KSBvdmVycmlkZTsKKyAgICBib29sIHN1cHBvcnRzQXN5bmNo
cm9ub3VzTW9kZSgpIGZpbmFsOworICAgIHZvaWQgbG9hZERlY2lzaW9uRm9ySWNvblVSTChjb25z
dCBTdHJpbmcmLCBXZWJDb3JlOjpJY29uTG9hZERlY2lzaW9uQ2FsbGJhY2smKSBmaW5hbDsKICAg
ICB2b2lkIHJlY2VpdmVkSWNvbkxvYWREZWNpc2lvbihpbnQgZGVjaXNpb24sIHVpbnQ2NF90IGNh
bGxiYWNrSUQpOwotICAgIHZvaWQgaWNvbkRhdGFGb3JJY29uVVJMKGNvbnN0IFN0cmluZyYsIFBh
c3NSZWZQdHI8V2ViQ29yZTo6SWNvbkRhdGFDYWxsYmFjaz4pIG92ZXJyaWRlOworICAgIHZvaWQg
aWNvbkRhdGFGb3JJY29uVVJMKGNvbnN0IFN0cmluZyYsIFdlYkNvcmU6Okljb25EYXRhQ2FsbGJh
Y2smKSBmaW5hbDsKIAotcHJpdmF0ZToKICAgICAvLyBJUEM6Ok1lc3NhZ2VSZWNlaXZlcgotICAg
IHZvaWQgZGlkUmVjZWl2ZU1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiwgSVBDOjpEZWNvZGVyJikg
b3ZlcnJpZGU7CisgICAgdm9pZCBkaWRSZWNlaXZlTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJ
UEM6OkRlY29kZXImKSBmaW5hbDsKICAgICAKICAgICAvLyBDYWxsYmFja3MgZnJvbSB0aGUgVUlQ
cm9jZXNzCiAgICAgdm9pZCB1cmxJbXBvcnRGaW5pc2hlZCgpOwogCi0gICAgYm9vbCBtX2lzRW5h
YmxlZDsKLSAgICBXZWJQcm9jZXNzKiBtX3Byb2Nlc3M7CisgICAgYm9vbCBtX2lzRW5hYmxlZCB7
IGZhbHNlIH07CisgICAgV2ViUHJvY2VzcyYgbV9wcm9jZXNzOwogICAgIAogICAgIEhhc2hNYXA8
dWludDY0X3QsIFJlZlB0cjxXZWJDb3JlOjpJY29uTG9hZERlY2lzaW9uQ2FsbGJhY2s+PiBtX2lj
b25Mb2FkRGVjaXNpb25DYWxsYmFja3M7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKLQot
I2VuZGlmIC8vIFdlYkljb25EYXRhYmFzZVByb3h5X2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0
aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0
ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uLmNwcAppbmRleCAxOTYzYTFhMDI2NTUzOTEwYzJlZGM2
YTY0N2EzOWRhOTllMmI4MTIxLi4zNTY5ZmQ4NzViZTg2Yzk1ODZmMGVlN2IyNTAwMTNjOTdjM2M1
M2RlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxl
L0luamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rpb24u
Y3BwCkBAIC0xMDIsNyArMTAyLDcgQEAgUmVmPEluamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlv
bj4gSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uOjpjcmVhdGUoV2ViRnIKICAgICByZXR1
cm4gYWRvcHRSZWYoKm5ldyBJbmplY3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rpb24oZnJhbWUsIGFj
dGlvbiwgZm9ybVN0YXRlKSk7CiB9CiAKLUluamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbjo6
SW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uKFdlYkZyYW1lKiBmcmFtZSwgY29uc3QgTmF2
aWdhdGlvbkFjdGlvbiYgbmF2aWdhdGlvbkFjdGlvbiwgUGFzc1JlZlB0cjxGb3JtU3RhdGU+IHBy
cEZvcm1TdGF0ZSkKK0luamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbjo6SW5qZWN0ZWRCdW5k
bGVOYXZpZ2F0aW9uQWN0aW9uKFdlYkZyYW1lKiBmcmFtZSwgY29uc3QgTmF2aWdhdGlvbkFjdGlv
biYgbmF2aWdhdGlvbkFjdGlvbiwgUGFzc1JlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSkKICAg
ICA6IG1fbmF2aWdhdGlvblR5cGUobmF2aWdhdGlvbkFjdGlvbi50eXBlKCkpCiAgICAgLCBtX21v
ZGlmaWVycyhtb2RpZmllcnNGb3JOYXZpZ2F0aW9uQWN0aW9uKG5hdmlnYXRpb25BY3Rpb24pKQog
ICAgICwgbV9tb3VzZUJ1dHRvbihXZWJNb3VzZUV2ZW50OjpOb0J1dHRvbikKQEAgLTExNiwxMSAr
MTE2LDggQEAgSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uOjpJbmplY3RlZEJ1bmRsZU5h
dmlnYXRpb25BY3Rpb24oV2ViRnJhbWUqIGZyYW1lLAogICAgICAgICBtX3N5bnRoZXRpY0NsaWNr
VHlwZSA9IHN5bnRoZXRpY0NsaWNrVHlwZUZvck5hdmlnYXRpb25BY3Rpb24obmF2aWdhdGlvbkFj
dGlvbik7CiAgICAgfQogCi0gICAgUmVmUHRyPEZvcm1TdGF0ZT4gZm9ybVN0YXRlID0gcHJwRm9y
bVN0YXRlOwotICAgIGlmIChmb3JtU3RhdGUpIHsKLSAgICAgICAgQVNTRVJUKGZvcm1TdGF0ZS0+
Zm9ybSgpKTsKLSAgICAgICAgbV9mb3JtRWxlbWVudCAgID0gSW5qZWN0ZWRCdW5kbGVOb2RlSGFu
ZGxlOjpnZXRPckNyZWF0ZShmb3JtU3RhdGUtPmZvcm0oKSk7Ci0gICAgfQorICAgIGlmIChmb3Jt
U3RhdGUpCisgICAgICAgIG1fZm9ybUVsZW1lbnQgPSBJbmplY3RlZEJ1bmRsZU5vZGVIYW5kbGU6
OmdldE9yQ3JlYXRlKGZvcm1TdGF0ZS0+Zm9ybSgpKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2Vi
S2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9h
ZGVyU3RyYXRlZ3kuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYkxv
YWRlclN0cmF0ZWd5LmNwcAppbmRleCAxMjEwMjUxZjU0ZDdmMjU1NjVmODliZWY1NDQ3YmMxZDQ4
YWFhNmQ1Li4zNjFmOWUyY2FiODI5ZDgzMjUwMGYzYTY0MTU0NTA1NmExOTA0MGNhIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3ku
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJh
dGVneS5jcHAKQEAgLTE2Myw3ICsxNjMsNyBAQCB2b2lkIFdlYkxvYWRlclN0cmF0ZWd5OjpzY2hl
ZHVsZUxvYWQoUmVzb3VyY2VMb2FkZXImIHJlc291cmNlTG9hZGVyLCBDYWNoZWRSZXNvdQogICAg
IH0KICNlbmRpZgogCi0gICAgaWYgKHJlc291cmNlTG9hZGVyLmRvY3VtZW50TG9hZGVyKCktPmFw
cGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZFJlc291cmNlKHJlc291cmNlTG9hZGVyLCBy
ZXNvdXJjZUxvYWRlci5yZXF1ZXN0KCksIHJlc291cmNlTG9hZGVyLnJlcXVlc3QoKS51cmwoKSkp
IHsKKyAgICBpZiAocmVzb3VyY2VMb2FkZXIuZG9jdW1lbnRMb2FkZXIoKS0+YXBwbGljYXRpb25D
YWNoZUhvc3QoKS5tYXliZUxvYWRSZXNvdXJjZShyZXNvdXJjZUxvYWRlciwgcmVzb3VyY2VMb2Fk
ZXIucmVxdWVzdCgpLCByZXNvdXJjZUxvYWRlci5yZXF1ZXN0KCkudXJsKCkpKSB7CiAgICAgICAg
IExPRyhOZXR3b3JrU2NoZWR1bGluZywgIihXZWJQcm9jZXNzKSBXZWJMb2FkZXJTdHJhdGVneTo6
c2NoZWR1bGVMb2FkLCB1cmwgJyVzJyB3aWxsIGJlIGxvYWRlZCBmcm9tIGFwcGxpY2F0aW9uIGNh
Y2hlLiIsIHJlc291cmNlTG9hZGVyLnVybCgpLnN0cmluZygpLnV0ZjgoKS5kYXRhKCkpOwogICAg
ICAgICBSRUxFQVNFX0xPR19JRl9BTExPV0VEKHJlc291cmNlTG9hZGVyLCAic2NoZWR1bGVMb2Fk
OiBVUkwgd2lsbCBiZSBsb2FkZWQgZnJvbSBhcHBsaWNhdGlvbiBjYWNoZSAoZnJhbWUgPSAlcCwg
cmVzb3VyY2VJRCA9ICUiIFBSSXU2NCAiKSIsIHJlc291cmNlTG9hZGVyLmZyYW1lKCksIGlkZW50
aWZpZXIpOwogICAgICAgICBtX3dlYlJlc291cmNlTG9hZGVycy5zZXQoaWRlbnRpZmllciwgV2Vi
UmVzb3VyY2VMb2FkZXI6OmNyZWF0ZShyZXNvdXJjZUxvYWRlciwgdHJhY2tpbmdQYXJhbWV0ZXJz
KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVz
b3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYlJl
c291cmNlTG9hZGVyLmNwcAppbmRleCA3MzhiMWRjYzMzOTM3MjY5NjhhNjJjNTczYzM4Mjg4ZDk3
ZjdiM2QxLi4zOGE4ODJiYjhmNGU5MTAyNjBiOWU1MmQ4ZTU1ZGMxMTllZDBiMzE4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUxv
YWRlci5jcHAKQEAgLTg3LDcgKzg3LDcgQEAgdm9pZCBXZWJSZXNvdXJjZUxvYWRlcjo6d2lsbFNl
bmRSZXF1ZXN0KFJlc291cmNlUmVxdWVzdCYmIHByb3Bvc2VkUmVxdWVzdCwgUmVzb3UKIAogICAg
IFJlZlB0cjxXZWJSZXNvdXJjZUxvYWRlcj4gcHJvdGVjdGVkVGhpcyh0aGlzKTsKIAotICAgIGlm
IChtX2NvcmVMb2FkZXItPmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkt
Pm1heWJlTG9hZEZhbGxiYWNrRm9yUmVkaXJlY3QobV9jb3JlTG9hZGVyLmdldCgpLCBwcm9wb3Nl
ZFJlcXVlc3QsIHJlZGlyZWN0UmVzcG9uc2UpKQorICAgIGlmIChtX2NvcmVMb2FkZXItPmRvY3Vt
ZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWF5YmVMb2FkRmFsbGJhY2tGb3JS
ZWRpcmVjdChtX2NvcmVMb2FkZXIuZ2V0KCksIHByb3Bvc2VkUmVxdWVzdCwgcmVkaXJlY3RSZXNw
b25zZSkpCiAgICAgICAgIHJldHVybjsKIAogICAgIG1fY29yZUxvYWRlci0+d2lsbFNlbmRSZXF1
ZXN0KFdURk1vdmUocHJvcG9zZWRSZXF1ZXN0KSwgcmVkaXJlY3RSZXNwb25zZSwgW3Byb3RlY3Rl
ZFRoaXNdKFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QpIHsKQEAgLTExMCw3ICsxMTAsNyBAQCB2
b2lkIFdlYlJlc291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYgcmVzcG9uc2UsIGJvbwogCiAgICAgUmVmPFdlYlJlc291cmNlTG9hZGVyPiBwcm90
ZWN0KCp0aGlzKTsKIAotICAgIGlmIChtX2NvcmVMb2FkZXItPmRvY3VtZW50TG9hZGVyKCktPmFw
cGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZEZhbGxiYWNrRm9yUmVzcG9uc2UobV9jb3Jl
TG9hZGVyLmdldCgpLCByZXNwb25zZSkpCisgICAgaWYgKG1fY29yZUxvYWRlci0+ZG9jdW1lbnRM
b2FkZXIoKS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS5tYXliZUxvYWRGYWxsYmFja0ZvclJlc3Bv
bnNlKG1fY29yZUxvYWRlci5nZXQoKSwgcmVzcG9uc2UpKQogICAgICAgICByZXR1cm47CiAKICAg
ICBtX2NvcmVMb2FkZXItPmRpZFJlY2VpdmVSZXNwb25zZShyZXNwb25zZSk7CkBAIC0xNDgsNyAr
MTQ4LDcgQEAgdm9pZCBXZWJSZXNvdXJjZUxvYWRlcjo6ZGlkRmFpbFJlc291cmNlTG9hZChjb25z
dCBSZXNvdXJjZUVycm9yJiBlcnJvcikKICAgICBMT0coTmV0d29yaywgIihXZWJQcm9jZXNzKSBX
ZWJSZXNvdXJjZUxvYWRlcjo6ZGlkRmFpbFJlc291cmNlTG9hZCBmb3IgJyVzJyIsIG1fY29yZUxv
YWRlci0+dXJsKCkuc3RyaW5nKCkubGF0aW4xKCkuZGF0YSgpKTsKICAgICBSRUxFQVNFX0xPR19J
Rl9BTExPV0VEKCJkaWRGYWlsUmVzb3VyY2VMb2FkOiAocGFnZUlEID0gJSIgUFJJdTY0ICIsIGZy
YW1lSUQgPSAlIiBQUkl1NjQgIiwgcmVzb3VyY2VJRCA9ICUiIFBSSXU2NCAiKSIsIG1fdHJhY2tp
bmdQYXJhbWV0ZXJzLnBhZ2VJRCwgbV90cmFja2luZ1BhcmFtZXRlcnMuZnJhbWVJRCwgbV90cmFj
a2luZ1BhcmFtZXRlcnMucmVzb3VyY2VJRCk7CiAKLSAgICBpZiAobV9jb3JlTG9hZGVyLT5kb2N1
bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5tYXliZUxvYWRGYWxsYmFja0Zv
ckVycm9yKG1fY29yZUxvYWRlci5nZXQoKSwgZXJyb3IpKQorICAgIGlmIChtX2NvcmVMb2FkZXIt
PmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWF5YmVMb2FkRmFsbGJh
Y2tGb3JFcnJvcihtX2NvcmVMb2FkZXIuZ2V0KCksIGVycm9yKSkKICAgICAgICAgcmV0dXJuOwog
ICAgIG1fY29yZUxvYWRlci0+ZGlkRmFpbChlcnJvcik7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5jcHAgYi9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5jcHAKaW5kZXggYWMxZGFhYmFkMDYzYTQ5
NjI2YjM3ZTA0MDJlOWViZjU0OTJkM2IxYi4uNzg4NjI2ODU5YTY4NjUxNDY1YmMxNzFmYTFhYjBi
MmI1MmFmODczMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5z
L1BsdWdpblZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9Q
bHVnaW5WaWV3LmNwcApAQCAtMTg1LDIzICsxODUsMTkgQEAgc3RhdGljIFN0cmluZyBidWlsZEhU
VFBIZWFkZXJzKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBsb25nIGxvbmcmIGV4
cGUKICAgICBpZiAoIXJlc3BvbnNlLmlzSFRUUCgpKQogICAgICAgICByZXR1cm4gU3RyaW5nKCk7
CiAKLSAgICBTdHJpbmdCdWlsZGVyIHN0cmluZ0J1aWxkZXI7Ci0gICAgCi0gICAgU3RyaW5nIHN0
YXR1c0xpbmUgPSBTdHJpbmc6OmZvcm1hdCgiSFRUUCAlZCAiLCByZXNwb25zZS5odHRwU3RhdHVz
Q29kZSgpKTsKLSAgICBzdHJpbmdCdWlsZGVyLmFwcGVuZChzdGF0dXNMaW5lKTsKLSAgICBzdHJp
bmdCdWlsZGVyLmFwcGVuZChyZXNwb25zZS5odHRwU3RhdHVzVGV4dCgpKTsKLSAgICBzdHJpbmdC
dWlsZGVyLmFwcGVuZCgnXG4nKTsKLSAgICAKLSAgICBIVFRQSGVhZGVyTWFwOjpjb25zdF9pdGVy
YXRvciBlbmQgPSByZXNwb25zZS5odHRwSGVhZGVyRmllbGRzKCkuZW5kKCk7Ci0gICAgZm9yIChI
VFRQSGVhZGVyTWFwOjpjb25zdF9pdGVyYXRvciBpdCA9IHJlc3BvbnNlLmh0dHBIZWFkZXJGaWVs
ZHMoKS5iZWdpbigpOyBpdCAhPSBlbmQ7ICsraXQpIHsKLSAgICAgICAgc3RyaW5nQnVpbGRlci5h
cHBlbmQoaXQtPmtleSk7Ci0gICAgICAgIHN0cmluZ0J1aWxkZXIuYXBwZW5kTGl0ZXJhbCgiOiAi
KTsKLSAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmQoaXQtPnZhbHVlKTsKLSAgICAgICAgc3Ry
aW5nQnVpbGRlci5hcHBlbmQoJ1xuJyk7CisgICAgU3RyaW5nQnVpbGRlciBoZWFkZXI7CisgICAg
aGVhZGVyLmFwcGVuZExpdGVyYWwoIkhUVFAgIik7CisgICAgaGVhZGVyLmFwcGVuZE51bWJlcihy
ZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpKTsKKyAgICBoZWFkZXIuYXBwZW5kKCcgJyk7CisgICAg
aGVhZGVyLmFwcGVuZChyZXNwb25zZS5odHRwU3RhdHVzVGV4dCgpKTsKKyAgICBoZWFkZXIuYXBw
ZW5kKCdcbicpOworICAgIGZvciAoYXV0byYgZmllbGQgOiByZXNwb25zZS5odHRwSGVhZGVyRmll
bGRzKCkpIHsKKyAgICAgICAgaGVhZGVyLmFwcGVuZChmaWVsZC5rZXkpOworICAgICAgICBoZWFk
ZXIuYXBwZW5kTGl0ZXJhbCgiOiAiKTsKKyAgICAgICAgaGVhZGVyLmFwcGVuZChmaWVsZC52YWx1
ZSk7CisgICAgICAgIGhlYWRlci5hcHBlbmQoJ1xuJyk7CiAgICAgfQotICAgIAotICAgIFN0cmlu
ZyBoZWFkZXJzID0gc3RyaW5nQnVpbGRlci50b1N0cmluZygpOwotICAgIAorCiAgICAgLy8gSWYg
dGhlIGNvbnRlbnQgaXMgZW5jb2RlZCAobW9zdCBsaWtlbHkgY29tcHJlc3NlZCksIHRoZW4gZG9u
J3Qgc2VuZCBpdHMgbGVuZ3RoIHRvIHRoZSBwbHVnaW4sCiAgICAgLy8gd2hpY2ggaXMgb25seSBp
bnRlcmVzdGVkIGluIHRoZSBkZWNvZGVkIGxlbmd0aCwgbm90IHlldCBrbm93biBhdCB0aGUgbW9t
ZW50LgogICAgIC8vIDxyZGFyOi8vcHJvYmxlbS80NDcwNTk5PiB0cmFja3MgYSByZXF1ZXN0IGZv
ciAtW05TVVJMUmVzcG9uc2UgZXhwZWN0ZWRDb250ZW50TGVuZ3RoXSB0byBpbmNvcnBvcmF0ZSB0
aGlzIGxvZ2ljLgpAQCAtMjA5LDcgKzIwNSw3IEBAIHN0YXRpYyBTdHJpbmcgYnVpbGRIVFRQSGVh
ZGVycyhjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgbG9uZyBsb25nJiBleHBlCiAg
ICAgaWYgKCFjb250ZW50RW5jb2RpbmcuaXNOdWxsKCkgJiYgY29udGVudEVuY29kaW5nICE9ICJp
ZGVudGl0eSIpCiAgICAgICAgIGV4cGVjdGVkQ29udGVudExlbmd0aCA9IC0xOwogCi0gICAgcmV0
dXJuIGhlYWRlcnM7CisgICAgcmV0dXJuIGhlYWRlci50b1N0cmluZygpOwogfQogCiBzdGF0aWMg
dWludDMyX3QgbGFzdE1vZGlmaWVkRGF0ZU1TKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3Bv
bnNlKQpAQCAtMjkyLDM3ICsyODgsMTkgQEAgc3RhdGljIGlubGluZSBXZWJQYWdlKiB3ZWJQYWdl
KEhUTUxQbHVnSW5FbGVtZW50KiBwbHVnaW5FbGVtZW50KQogICAgIHJldHVybiB3ZWJGcmFtZS0+
cGFnZSgpOwogfQogCi1SZWY8UGx1Z2luVmlldz4gUGx1Z2luVmlldzo6Y3JlYXRlKFBhc3NSZWZQ
dHI8SFRNTFBsdWdJbkVsZW1lbnQ+IHBsdWdpbkVsZW1lbnQsIFBhc3NSZWZQdHI8UGx1Z2luPiBw
bHVnaW4sIGNvbnN0IFBsdWdpbjo6UGFyYW1ldGVycyYgcGFyYW1ldGVycykKK1JlZjxQbHVnaW5W
aWV3PiBQbHVnaW5WaWV3OjpjcmVhdGUoSFRNTFBsdWdJbkVsZW1lbnQmIHBsdWdpbkVsZW1lbnQs
IFJlZjxQbHVnaW4+JiYgcGx1Z2luLCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmIHBhcmFtZXRl
cnMpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgUGx1Z2luVmlldyhwbHVnaW5FbGVtZW50
LCBwbHVnaW4sIHBhcmFtZXRlcnMpKTsKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBQbHVnaW5W
aWV3KHBsdWdpbkVsZW1lbnQsIFdURk1vdmUocGx1Z2luKSwgcGFyYW1ldGVycykpOwogfQogCi1Q
bHVnaW5WaWV3OjpQbHVnaW5WaWV3KFBhc3NSZWZQdHI8SFRNTFBsdWdJbkVsZW1lbnQ+IHBsdWdp
bkVsZW1lbnQsIFBhc3NSZWZQdHI8UGx1Z2luPiBwbHVnaW4sIGNvbnN0IFBsdWdpbjo6UGFyYW1l
dGVycyYgcGFyYW1ldGVycykKK1BsdWdpblZpZXc6OlBsdWdpblZpZXcoSFRNTFBsdWdJbkVsZW1l
bnQmIHBsdWdpbkVsZW1lbnQsIFJlZjxQbHVnaW4+JiYgcGx1Z2luLCBjb25zdCBQbHVnaW46OlBh
cmFtZXRlcnMmIHBhcmFtZXRlcnMpCiAgICAgOiBQbHVnaW5WaWV3QmFzZSgwKQotICAgICwgbV9w
bHVnaW5FbGVtZW50KHBsdWdpbkVsZW1lbnQpCi0gICAgLCBtX3BsdWdpbihwbHVnaW4pCisgICAg
LCBtX3BsdWdpbkVsZW1lbnQoJnBsdWdpbkVsZW1lbnQpCisgICAgLCBtX3BsdWdpbihXVEZNb3Zl
KHBsdWdpbikpCiAgICAgLCBtX3dlYlBhZ2Uod2ViUGFnZShtX3BsdWdpbkVsZW1lbnQuZ2V0KCkp
KQogICAgICwgbV9wYXJhbWV0ZXJzKHBhcmFtZXRlcnMpCi0gICAgLCBtX2lzSW5pdGlhbGl6ZWQo
ZmFsc2UpCi0gICAgLCBtX2lzV2FpdGluZ0ZvclN5bmNocm9ub3VzSW5pdGlhbGl6YXRpb24oZmFs
c2UpCi0gICAgLCBtX2lzV2FpdGluZ1VudGlsTWVkaWFDYW5TdGFydChmYWxzZSkKLSAgICAsIG1f
aXNCZWluZ0Rlc3Ryb3llZChmYWxzZSkKLSAgICAsIG1fcGx1Z2luUHJvY2Vzc0hhc0NyYXNoZWQo
ZmFsc2UpCi0jaWYgRU5BQkxFKFBSSU1BUllfU05BUFNIT1RURURfUExVR0lOX0hFVVJJU1RJQykK
LSAgICAsIG1fZGlkUGx1Z0luU3RhcnRPZmZTY3JlZW4oZmFsc2UpCi0jZW5kaWYKICAgICAsIG1f
cGVuZGluZ1VSTFJlcXVlc3RzVGltZXIoUnVuTG9vcDo6bWFpbigpLCB0aGlzLCAmUGx1Z2luVmll
dzo6cGVuZGluZ1VSTFJlcXVlc3RzVGltZXJGaXJlZCkKLSNpZiBFTkFCTEUoTkVUU0NBUEVfUExV
R0lOX0FQSSkKLSAgICAsIG1fbnBSdW50aW1lT2JqZWN0TWFwKHRoaXMpCi0jZW5kaWYKLSAgICAs
IG1fbWFudWFsU3RyZWFtU3RhdGUoU3RyZWFtU3RhdGVJbml0aWFsKQogICAgICwgbV9wbHVnaW5T
bmFwc2hvdFRpbWVyKCp0aGlzLCAmUGx1Z2luVmlldzo6cGx1Z2luU25hcHNob3RUaW1lckZpcmVk
LCBwbHVnaW5TbmFwc2hvdFRpbWVyRGVsYXkpCi0jaWYgRU5BQkxFKFBSSU1BUllfU05BUFNIT1RU
RURfUExVR0lOX0hFVVJJU1RJQykgfHwgUExBVEZPUk0oQ09DT0EpCi0gICAgLCBtX2NvdW50U25h
cHNob3RSZXRyaWVzKDApCi0jZW5kaWYKLSAgICAsIG1fZGlkUmVjZWl2ZVVzZXJJbnRlcmFjdGlv
bihmYWxzZSkKLSAgICAsIG1fcGFnZVNjYWxlRmFjdG9yKDEpCi0gICAgLCBtX3BsdWdpbklzUGxh
eWluZ0F1ZGlvKGZhbHNlKQogewogICAgIG1fd2ViUGFnZS0+YWRkUGx1Z2luVmlldyh0aGlzKTsK
IH0KQEAgLTM3NCw3ICszNTIsNyBAQCB2b2lkIFBsdWdpblZpZXc6OmRlc3Ryb3lQbHVnaW5BbmRS
ZXNldCgpCiAgICAgY2FuY2VsQWxsU3RyZWFtcygpOwogfQogCi12b2lkIFBsdWdpblZpZXc6OnJl
Y3JlYXRlQW5kSW5pdGlhbGl6ZShQYXNzUmVmUHRyPFBsdWdpbj4gcGx1Z2luKQordm9pZCBQbHVn
aW5WaWV3OjpyZWNyZWF0ZUFuZEluaXRpYWxpemUoUmVmPFBsdWdpbj4mJiBwbHVnaW4pCiB7CiAg
ICAgaWYgKG1fcGx1Z2luKSB7CiAgICAgICAgIGlmIChtX3BsdWdpblNuYXBzaG90VGltZXIuaXNB
Y3RpdmUoKSkKQEAgLTM4MiwxMyArMzYwLDEyIEBAIHZvaWQgUGx1Z2luVmlldzo6cmVjcmVhdGVB
bmRJbml0aWFsaXplKFBhc3NSZWZQdHI8UGx1Z2luPiBwbHVnaW4pCiAgICAgICAgIGRlc3Ryb3lQ
bHVnaW5BbmRSZXNldCgpOwogICAgIH0KIAotICAgIC8vIFJlc2V0IG1lbWJlciB2YXJpYWJsZXMg
dG8gaW5pdGlhbCB2YWx1ZXMuCi0gICAgbV9wbHVnaW4gPSBwbHVnaW47CisgICAgbV9wbHVnaW4g
PSBXVEZNb3ZlKHBsdWdpbik7CiAgICAgbV9pc0luaXRpYWxpemVkID0gZmFsc2U7CiAgICAgbV9p
c1dhaXRpbmdGb3JTeW5jaHJvbm91c0luaXRpYWxpemF0aW9uID0gZmFsc2U7CiAgICAgbV9pc1dh
aXRpbmdVbnRpbE1lZGlhQ2FuU3RhcnQgPSBmYWxzZTsKICAgICBtX2lzQmVpbmdEZXN0cm95ZWQg
PSBmYWxzZTsKLSAgICBtX21hbnVhbFN0cmVhbVN0YXRlID0gU3RyZWFtU3RhdGVJbml0aWFsOwor
ICAgIG1fbWFudWFsU3RyZWFtU3RhdGUgPSBNYW51YWxTdHJlYW1TdGF0ZTo6SW5pdGlhbDsKICAg
ICBtX3RyYW5zaWVudFBhaW50aW5nU25hcHNob3QgPSBudWxscHRyOwogCiAgICAgaW5pdGlhbGl6
ZVBsdWdpbigpOwpAQCAtNDIxLDggKzM5OCw4IEBAIHZvaWQgUGx1Z2luVmlldzo6bWFudWFsTG9h
ZERpZFJlY2VpdmVSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKICAg
ICAgICAgcmV0dXJuOwogCiAgICAgaWYgKCFtX2lzSW5pdGlhbGl6ZWQpIHsKLSAgICAgICAgQVNT
RVJUKG1fbWFudWFsU3RyZWFtU3RhdGUgPT0gU3RyZWFtU3RhdGVJbml0aWFsKTsKLSAgICAgICAg
bV9tYW51YWxTdHJlYW1TdGF0ZSA9IFN0cmVhbVN0YXRlSGFzUmVjZWl2ZWRSZXNwb25zZTsKKyAg
ICAgICAgQVNTRVJUKG1fbWFudWFsU3RyZWFtU3RhdGUgPT0gTWFudWFsU3RyZWFtU3RhdGU6Oklu
aXRpYWwpOworICAgICAgICBtX21hbnVhbFN0cmVhbVN0YXRlID0gTWFudWFsU3RyZWFtU3RhdGU6
Okhhc1JlY2VpdmVkUmVzcG9uc2U7CiAgICAgICAgIG1fbWFudWFsU3RyZWFtUmVzcG9uc2UgPSBy
ZXNwb25zZTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTQ0OCw3ICs0MjUsNyBAQCB2b2lk
IFBsdWdpblZpZXc6Om1hbnVhbExvYWREaWRSZWNlaXZlRGF0YShjb25zdCBjaGFyKiBieXRlcywg
aW50IGxlbmd0aCkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKCFtX2lzSW5pdGlhbGl6ZWQp
IHsKLSAgICAgICAgQVNTRVJUKG1fbWFudWFsU3RyZWFtU3RhdGUgPT0gU3RyZWFtU3RhdGVIYXNS
ZWNlaXZlZFJlc3BvbnNlKTsKKyAgICAgICAgQVNTRVJUKG1fbWFudWFsU3RyZWFtU3RhdGUgPT0g
TWFudWFsU3RyZWFtU3RhdGU6Okhhc1JlY2VpdmVkUmVzcG9uc2UpOwogICAgICAgICBpZiAoIW1f
bWFudWFsU3RyZWFtRGF0YSkKICAgICAgICAgICAgIG1fbWFudWFsU3RyZWFtRGF0YSA9IFNoYXJl
ZEJ1ZmZlcjo6Y3JlYXRlKCk7CiAKQEAgLTQ2Niw4ICs0NDMsOCBAQCB2b2lkIFBsdWdpblZpZXc6
Om1hbnVhbExvYWREaWRGaW5pc2hMb2FkaW5nKCkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYg
KCFtX2lzSW5pdGlhbGl6ZWQpIHsKLSAgICAgICAgQVNTRVJUKG1fbWFudWFsU3RyZWFtU3RhdGUg
PT0gU3RyZWFtU3RhdGVIYXNSZWNlaXZlZFJlc3BvbnNlKTsKLSAgICAgICAgbV9tYW51YWxTdHJl
YW1TdGF0ZSA9IFN0cmVhbVN0YXRlRmluaXNoZWQ7CisgICAgICAgIEFTU0VSVChtX21hbnVhbFN0
cmVhbVN0YXRlID09IE1hbnVhbFN0cmVhbVN0YXRlOjpIYXNSZWNlaXZlZFJlc3BvbnNlKTsKKyAg
ICAgICAgbV9tYW51YWxTdHJlYW1TdGF0ZSA9IE1hbnVhbFN0cmVhbVN0YXRlOjpGaW5pc2hlZDsK
ICAgICAgICAgcmV0dXJuOwogICAgIH0KIApAQCAtNDgxLDcgKzQ1OCw3IEBAIHZvaWQgUGx1Z2lu
Vmlldzo6bWFudWFsTG9hZERpZEZhaWwoY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCiAgICAg
ICAgIHJldHVybjsKIAogICAgIGlmICghbV9pc0luaXRpYWxpemVkKSB7Ci0gICAgICAgIG1fbWFu
dWFsU3RyZWFtU3RhdGUgPSBTdHJlYW1TdGF0ZUZpbmlzaGVkOworICAgICAgICBtX21hbnVhbFN0
cmVhbVN0YXRlID0gTWFudWFsU3RyZWFtU3RhdGU6OkZpbmlzaGVkOwogICAgICAgICBtX21hbnVh
bFN0cmVhbUVycm9yID0gZXJyb3I7CiAgICAgICAgIG1fbWFudWFsU3RyZWFtRGF0YSA9IG51bGxw
dHI7CiAgICAgICAgIHJldHVybjsKQEAgLTEwMDcsNyArOTg0LDcgQEAgdm9pZCBQbHVnaW5WaWV3
Ojp3aWxsRGV0YXRjaFJlbmRlcmVyKCkKICAgICBtX3BsdWdpbi0+d2lsbERldGF0Y2hSZW5kZXJl
cigpOwogfQogCi1QYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gUGx1Z2luVmlldzo6bGl2ZVJlc291
cmNlRGF0YSgpIGNvbnN0CitSZWZQdHI8U2hhcmVkQnVmZmVyPiBQbHVnaW5WaWV3OjpsaXZlUmVz
b3VyY2VEYXRhKCkgY29uc3QKIHsKICAgICBpZiAoIW1faXNJbml0aWFsaXplZCB8fCAhbV9wbHVn
aW4pCiAgICAgICAgIHJldHVybiAwOwpAQCAtMTMwOCwxMiArMTI4NSwxMiBAQCB2b2lkIFBsdWdp
blZpZXc6OmNhbmNlbEFsbFN0cmVhbXMoKQogCiB2b2lkIFBsdWdpblZpZXc6OnJlZGVsaXZlck1h
bnVhbFN0cmVhbSgpCiB7Ci0gICAgaWYgKG1fbWFudWFsU3RyZWFtU3RhdGUgPT0gU3RyZWFtU3Rh
dGVJbml0aWFsKSB7CisgICAgaWYgKG1fbWFudWFsU3RyZWFtU3RhdGUgPT0gTWFudWFsU3RyZWFt
U3RhdGU6OkluaXRpYWwpIHsKICAgICAgICAgLy8gTm90aGluZyB0byBkby4KICAgICAgICAgcmV0
dXJuOwogICAgIH0KIAotICAgIGlmIChtX21hbnVhbFN0cmVhbVN0YXRlID09IFN0cmVhbVN0YXRl
RmFpbGVkKSB7CisgICAgaWYgKG1fbWFudWFsU3RyZWFtU3RhdGUgPT0gTWFudWFsU3RyZWFtU3Rh
dGU6OkZhaWxlZCkgewogICAgICAgICBtYW51YWxMb2FkRGlkRmFpbChtX21hbnVhbFN0cmVhbUVy
cm9yKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTEzMzQsNyArMTMxMSw3IEBAIHZvaWQg
UGx1Z2luVmlldzo6cmVkZWxpdmVyTWFudWFsU3RyZWFtKCkKICAgICAgICAgbV9tYW51YWxTdHJl
YW1EYXRhID0gbnVsbHB0cjsKICAgICB9CiAKLSAgICBpZiAobV9tYW51YWxTdHJlYW1TdGF0ZSA9
PSBTdHJlYW1TdGF0ZUZpbmlzaGVkKQorICAgIGlmIChtX21hbnVhbFN0cmVhbVN0YXRlID09IE1h
bnVhbFN0cmVhbVN0YXRlOjpGaW5pc2hlZCkKICAgICAgICAgbWFudWFsTG9hZERpZEZpbmlzaExv
YWRpbmcoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVn
aW5zL1BsdWdpblZpZXcuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9QbHVn
aW5WaWV3LmgKaW5kZXggMDA3NTgzYzQzZDAzOGI5ZmFjYzJlZGI3M2QzYTEyNWI0YmNkYTQ4My4u
MzhiZTYyMWI4MWFmNjlhNjM3MzczNjJhY2IyMDE3ZWQzNzgwNzU4NSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5oCkBAIC02NCw5ICs2NCw5IEBA
IGNsYXNzIFdlYkV2ZW50OwogCiBjbGFzcyBQbHVnaW5WaWV3IDogcHVibGljIFdlYkNvcmU6OlBs
dWdpblZpZXdCYXNlLCBwdWJsaWMgUGx1Z2luQ29udHJvbGxlciwgcHJpdmF0ZSBXZWJDb3JlOjpN
ZWRpYUNhblN0YXJ0TGlzdGVuZXIsIHByaXZhdGUgV2ViRnJhbWU6OkxvYWRMaXN0ZW5lciwgcHJp
dmF0ZSBXZWJDb3JlOjpNZWRpYVByb2R1Y2VyIHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUmVmPFBs
dWdpblZpZXc+IGNyZWF0ZShQYXNzUmVmUHRyPFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50Piwg
UGFzc1JlZlB0cjxQbHVnaW4+LCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmKTsKKyAgICBzdGF0
aWMgUmVmPFBsdWdpblZpZXc+IGNyZWF0ZShXZWJDb3JlOjpIVE1MUGx1Z0luRWxlbWVudCYsIFJl
ZjxQbHVnaW4+JiYsIGNvbnN0IFBsdWdpbjo6UGFyYW1ldGVycyYpOwogCi0gICAgdm9pZCByZWNy
ZWF0ZUFuZEluaXRpYWxpemUoUGFzc1JlZlB0cjxQbHVnaW4+KTsKKyAgICB2b2lkIHJlY3JlYXRl
QW5kSW5pdGlhbGl6ZShSZWY8UGx1Z2luPiYmKTsKIAogICAgIFdlYkNvcmU6OkZyYW1lKiBmcmFt
ZSgpIGNvbnN0OwogCkBAIC0xMTIsMTMgKzExMiwxMyBAQCBwdWJsaWM6CiAKICAgICBib29sIHNo
b3VsZEFsbG93U2NyaXB0aW5nKCk7CiAKLSAgICBQYXNzUmVmUHRyPFdlYkNvcmU6OlNoYXJlZEJ1
ZmZlcj4gbGl2ZVJlc291cmNlRGF0YSgpIGNvbnN0OworICAgIFJlZlB0cjxXZWJDb3JlOjpTaGFy
ZWRCdWZmZXI+IGxpdmVSZXNvdXJjZURhdGEoKSBjb25zdDsKICAgICBib29sIHBlcmZvcm1EaWN0
aW9uYXJ5TG9va3VwQXRMb2NhdGlvbihjb25zdCBXZWJDb3JlOjpGbG9hdFBvaW50Jik7CiAgICAg
U3RyaW5nIGdldFNlbGVjdGlvbkZvcldvcmRBdFBvaW50KGNvbnN0IFdlYkNvcmU6OkZsb2F0UG9p
bnQmKSBjb25zdDsKICAgICBib29sIGV4aXN0aW5nU2VsZWN0aW9uQ29udGFpbnNQb2ludChjb25z
dCBXZWJDb3JlOjpGbG9hdFBvaW50JikgY29uc3Q7CiAKIHByaXZhdGU6Ci0gICAgUGx1Z2luVmll
dyhQYXNzUmVmUHRyPFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50PiwgUGFzc1JlZlB0cjxQbHVn
aW4+LCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpOworICAgIFBsdWdpblZp
ZXcoV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQmLCBSZWY8UGx1Z2luPiYmLCBjb25zdCBQbHVn
aW46OlBhcmFtZXRlcnMmKTsKICAgICB2aXJ0dWFsIH5QbHVnaW5WaWV3KCk7CiAKICAgICB2b2lk
IGluaXRpYWxpemVQbHVnaW4oKTsKQEAgLTI0NCwxNCArMjQ0LDE0IEBAIHByaXZhdGU6CiAgICAg
V2ViUGFnZSogbV93ZWJQYWdlOwogICAgIFBsdWdpbjo6UGFyYW1ldGVycyBtX3BhcmFtZXRlcnM7
CiAKLSAgICBib29sIG1faXNJbml0aWFsaXplZDsKLSAgICBib29sIG1faXNXYWl0aW5nRm9yU3lu
Y2hyb25vdXNJbml0aWFsaXphdGlvbjsKLSAgICBib29sIG1faXNXYWl0aW5nVW50aWxNZWRpYUNh
blN0YXJ0OwotICAgIGJvb2wgbV9pc0JlaW5nRGVzdHJveWVkOwotICAgIGJvb2wgbV9wbHVnaW5Q
cm9jZXNzSGFzQ3Jhc2hlZDsKKyAgICBib29sIG1faXNJbml0aWFsaXplZCB7IGZhbHNlIH07Cisg
ICAgYm9vbCBtX2lzV2FpdGluZ0ZvclN5bmNocm9ub3VzSW5pdGlhbGl6YXRpb24geyBmYWxzZSB9
OworICAgIGJvb2wgbV9pc1dhaXRpbmdVbnRpbE1lZGlhQ2FuU3RhcnQgeyBmYWxzZSB9OworICAg
IGJvb2wgbV9pc0JlaW5nRGVzdHJveWVkIHsgZmFsc2UgfTsKKyAgICBib29sIG1fcGx1Z2luUHJv
Y2Vzc0hhc0NyYXNoZWQgeyBmYWxzZSB9OwogCiAjaWYgRU5BQkxFKFBSSU1BUllfU05BUFNIT1RU
RURfUExVR0lOX0hFVVJJU1RJQykKLSAgICBib29sIG1fZGlkUGx1Z0luU3RhcnRPZmZTY3JlZW47
CisgICAgYm9vbCBtX2RpZFBsdWdJblN0YXJ0T2ZmU2NyZWVuIHsgZmFsc2UgfTsKICNlbmRpZgog
CiAgICAgLy8gUGVuZGluZyBVUkxSZXF1ZXN0cyB0aGF0IHRoZSBwbHVnLWluIGhhcyBtYWRlLgpA
QCAtMjY3LDE4ICsyNjcsMTMgQEAgcHJpdmF0ZToKIAogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVH
SU5fQVBJKQogICAgIC8vIEEgbWFwIG9mIGFsbCByZWxhdGVkIE5QT2JqZWN0cyBmb3IgdGhpcyBw
bHVnLWluIHZpZXcuCi0gICAgTlBSdW50aW1lT2JqZWN0TWFwIG1fbnBSdW50aW1lT2JqZWN0TWFw
OworICAgIE5QUnVudGltZU9iamVjdE1hcCBtX25wUnVudGltZU9iamVjdE1hcCB7IHRoaXMgfTsK
ICNlbmRpZgogCiAgICAgLy8gVGhlIG1hbnVhbCBzdHJlYW0gc3RhdGUuIFRoaXMgaXMgdXNlZCBz
byB3ZSBjYW4gZGVsaXZlciBhIG1hbnVhbCBzdHJlYW0gdG8gYSBwbHVnLWluCiAgICAgLy8gd2hl
biBpdCBpcyBpbml0aWFsaXplZC4KLSAgICBlbnVtIE1hbnVhbFN0cmVhbVN0YXRlIHsKLSAgICAg
ICAgU3RyZWFtU3RhdGVJbml0aWFsLAotICAgICAgICBTdHJlYW1TdGF0ZUhhc1JlY2VpdmVkUmVz
cG9uc2UsCi0gICAgICAgIFN0cmVhbVN0YXRlRmluaXNoZWQsCi0gICAgICAgIFN0cmVhbVN0YXRl
RmFpbGVkCi0gICAgfTsKLSAgICBNYW51YWxTdHJlYW1TdGF0ZSBtX21hbnVhbFN0cmVhbVN0YXRl
OworICAgIGVudW0gY2xhc3MgTWFudWFsU3RyZWFtU3RhdGUgeyBJbml0aWFsLCBIYXNSZWNlaXZl
ZFJlc3BvbnNlLCBGaW5pc2hlZCwgRmFpbGVkIH07CisgICAgTWFudWFsU3RyZWFtU3RhdGUgbV9t
YW51YWxTdHJlYW1TdGF0ZSB7IE1hbnVhbFN0cmVhbVN0YXRlOjpJbml0aWFsIH07CiAKICAgICBX
ZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIG1fbWFudWFsU3RyZWFtUmVzcG9uc2U7CiAgICAgV2Vi
Q29yZTo6UmVzb3VyY2VFcnJvciBtX21hbnVhbFN0cmVhbUVycm9yOwpAQCAtMjg5LDEzICsyODQs
MTMgQEAgcHJpdmF0ZToKICAgICAvLyBUaGlzIHRpbWVyIGlzIHVzZWQgd2hlbiBwbHVnaW4gc25h
cHNob3R0aW5nIGlzIGVuYWJsZWQsIHRvIGNhcHR1cmUgYSBwbHVnaW4gcGxhY2Vob2xkZXIuCiAg
ICAgV2ViQ29yZTo6RGVmZXJyYWJsZU9uZVNob3RUaW1lciBtX3BsdWdpblNuYXBzaG90VGltZXI7
CiAjaWYgRU5BQkxFKFBSSU1BUllfU05BUFNIT1RURURfUExVR0lOX0hFVVJJU1RJQykgfHwgUExB
VEZPUk0oQ09DT0EpCi0gICAgdW5zaWduZWQgbV9jb3VudFNuYXBzaG90UmV0cmllczsKKyAgICB1
bnNpZ25lZCBtX2NvdW50U25hcHNob3RSZXRyaWVzIHsgMCB9OwogI2VuZGlmCi0gICAgYm9vbCBt
X2RpZFJlY2VpdmVVc2VySW50ZXJhY3Rpb247CisgICAgYm9vbCBtX2RpZFJlY2VpdmVVc2VySW50
ZXJhY3Rpb24geyBmYWxzZSB9OwogCi0gICAgZG91YmxlIG1fcGFnZVNjYWxlRmFjdG9yOworICAg
IGRvdWJsZSBtX3BhZ2VTY2FsZUZhY3RvciB7IDEgfTsKIAotICAgIGJvb2wgbV9wbHVnaW5Jc1Bs
YXlpbmdBdWRpbzsKKyAgICBib29sIG1fcGx1Z2luSXNQbGF5aW5nQXVkaW8geyBmYWxzZSB9Owog
fTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAgYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAKaW5kZXgg
ZGMzZmVkNWM5YmJmZTMwYzhiZDIwYWVlOWU5YjAxZDgyZGZlNGZlOC4uM2Q3MmM2NzMxNzZlMGQw
MWNmNTMzYTNjYzM1OWU5YmIwYWMyNWE2YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcApAQCAt
MTAzLDIwICsxMDMsMjAgQEAgc3RhdGljIGRvdWJsZSBhcmVhKFdlYkZyYW1lKiBmcmFtZSkKIH0K
IAogCi1zdGF0aWMgV2ViRnJhbWUqIGZpbmRMYXJnZXN0RnJhbWVJbkZyYW1lU2V0KFdlYlBhZ2Uq
IHBhZ2UpCitzdGF0aWMgV2ViRnJhbWUqIGZpbmRMYXJnZXN0RnJhbWVJbkZyYW1lU2V0KFdlYlBh
Z2UmIHBhZ2UpCiB7CiAgICAgLy8gQXBwcm94aW1hdGUgd2hhdCBhIHVzZXIgY291bGQgY29uc2lk
ZXIgYSBkZWZhdWx0IHRhcmdldCBmcmFtZSBmb3IgYXBwbGljYXRpb24gbWVudSBvcGVyYXRpb25z
LgogCi0gICAgV2ViRnJhbWUqIG1haW5GcmFtZSA9IHBhZ2UtPm1haW5XZWJGcmFtZSgpOworICAg
IFdlYkZyYW1lKiBtYWluRnJhbWUgPSBwYWdlLm1haW5XZWJGcmFtZSgpOwogICAgIGlmICghbWFp
bkZyYW1lIHx8ICFtYWluRnJhbWUtPmlzRnJhbWVTZXQoKSkKLSAgICAgICAgcmV0dXJuIDA7Cisg
ICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgV2ViRnJhbWUqIGxhcmdlc3RTb0ZhciA9IDA7
CisgICAgV2ViRnJhbWUqIGxhcmdlc3RTb0ZhciA9IG51bGxwdHI7CiAKICAgICBSZWY8QVBJOjpB
cnJheT4gZnJhbWVDaGlsZHJlbiA9IG1haW5GcmFtZS0+Y2hpbGRGcmFtZXMoKTsKICAgICBzaXpl
X3QgY291bnQgPSBmcmFtZUNoaWxkcmVuLT5zaXplKCk7CiAgICAgZm9yIChzaXplX3QgaSA9IDA7
IGkgPCBjb3VudDsgKytpKSB7Ci0gICAgICAgIFdlYkZyYW1lKiBjaGlsZEZyYW1lID0gZnJhbWVD
aGlsZHJlbi0+YXQ8V2ViRnJhbWU+KGkpOworICAgICAgICBhdXRvKiBjaGlsZEZyYW1lID0gZnJh
bWVDaGlsZHJlbi0+YXQ8V2ViRnJhbWU+KGkpOwogICAgICAgICBpZiAoIWxhcmdlc3RTb0ZhciB8
fCBhcmVhKGNoaWxkRnJhbWUpID4gYXJlYShsYXJnZXN0U29GYXIpKQogICAgICAgICAgICAgbGFy
Z2VzdFNvRmFyID0gY2hpbGRGcmFtZTsKICAgICB9CkBAIC0xMjQsNiArMTI0LDE1IEBAIHN0YXRp
YyBXZWJGcmFtZSogZmluZExhcmdlc3RGcmFtZUluRnJhbWVTZXQoV2ViUGFnZSogcGFnZSkKICAg
ICByZXR1cm4gbGFyZ2VzdFNvRmFyOwogfQogCitXZWJDaHJvbWVDbGllbnQ6OldlYkNocm9tZUNs
aWVudChXZWJQYWdlJiBwYWdlKQorICAgIDogbV9wYWdlKHBhZ2UpCit7Cit9CisKK2lubGluZSBX
ZWJDaHJvbWVDbGllbnQ6On5XZWJDaHJvbWVDbGllbnQoKQoreworfQorCiB2b2lkIFdlYkNocm9t
ZUNsaWVudDo6Y2hyb21lRGVzdHJveWVkKCkKIHsKICAgICBkZWxldGUgdGhpczsKQEAgLTEzMSw3
ICsxNDAsNyBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y2hyb21lRGVzdHJveWVkKCkKIAogdm9p
ZCBXZWJDaHJvbWVDbGllbnQ6OnNldFdpbmRvd1JlY3QoY29uc3QgRmxvYXRSZWN0JiB3aW5kb3dG
cmFtZSkKIHsKLSAgICBtX3BhZ2UtPnNlbmRTZXRXaW5kb3dGcmFtZSh3aW5kb3dGcmFtZSk7Cisg
ICAgbV9wYWdlLnNlbmRTZXRXaW5kb3dGcmFtZSh3aW5kb3dGcmFtZSk7CiB9CiAKIEZsb2F0UmVj
dCBXZWJDaHJvbWVDbGllbnQ6OndpbmRvd1JlY3QoKQpAQCAtMTQwLDEzICsxNDksMTMgQEAgRmxv
YXRSZWN0IFdlYkNocm9tZUNsaWVudDo6d2luZG93UmVjdCgpCiAgICAgcmV0dXJuIEZsb2F0UmVj
dCgpOwogI2Vsc2UKICNpZiBQTEFURk9STShNQUMpCi0gICAgaWYgKG1fcGFnZS0+aGFzQ2FjaGVk
V2luZG93RnJhbWUoKSkKLSAgICAgICAgcmV0dXJuIG1fcGFnZS0+d2luZG93RnJhbWVJblVuZmxp
cHBlZFNjcmVlbkNvb3JkaW5hdGVzKCk7CisgICAgaWYgKG1fcGFnZS5oYXNDYWNoZWRXaW5kb3dG
cmFtZSgpKQorICAgICAgICByZXR1cm4gbV9wYWdlLndpbmRvd0ZyYW1lSW5VbmZsaXBwZWRTY3Jl
ZW5Db29yZGluYXRlcygpOwogI2VuZGlmCiAKICAgICBGbG9hdFJlY3QgbmV3V2luZG93RnJhbWU7
CiAKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0
aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFdpbmRvd0ZyYW1lKCks
IE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFdpbmRvd0ZyYW1lOjpSZXBseShuZXdXaW5kb3dG
cmFtZSksIG1fcGFnZS0+cGFnZUlEKCkpKQorICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9u
KCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6R2V0V2luZG93RnJhbWUoKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0V2luZG93
RnJhbWU6OlJlcGx5KG5ld1dpbmRvd0ZyYW1lKSwgbV9wYWdlLnBhZ2VJRCgpKSkKICAgICAgICAg
cmV0dXJuIEZsb2F0UmVjdCgpOwogCiAgICAgcmV0dXJuIG5ld1dpbmRvd0ZyYW1lOwpAQCAtMTU1
LDMzICsxNjQsMzMgQEAgRmxvYXRSZWN0IFdlYkNocm9tZUNsaWVudDo6d2luZG93UmVjdCgpCiAK
IEZsb2F0UmVjdCBXZWJDaHJvbWVDbGllbnQ6OnBhZ2VSZWN0KCkKIHsKLSAgICByZXR1cm4gRmxv
YXRSZWN0KEZsb2F0UG9pbnQoKSwgbV9wYWdlLT5zaXplKCkpOworICAgIHJldHVybiBGbG9hdFJl
Y3QoRmxvYXRQb2ludCgpLCBtX3BhZ2Uuc2l6ZSgpKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGll
bnQ6OmZvY3VzKCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6
U2V0Rm9jdXModHJ1ZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OlNldEZvY3VzKHRydWUpKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnVuZm9jdXMoKQog
ewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRGb2N1cyhmYWxz
ZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldEZvY3VzKGZh
bHNlKSk7CiB9CiAKICNpZiBQTEFURk9STShDT0NPQSkKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpl
bGVtZW50RGlkRm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9kZSogbm9kZSkKIHsKLSAgICBtX3BhZ2Ut
PmVsZW1lbnREaWRGb2N1cyhjb25zdF9jYXN0PFdlYkNvcmU6Ok5vZGUqPihub2RlKSk7CisgICAg
bV9wYWdlLmVsZW1lbnREaWRGb2N1cyhjb25zdF9jYXN0PFdlYkNvcmU6Ok5vZGUqPihub2RlKSk7
CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjplbGVtZW50RGlkQmx1cihjb25zdCBXZWJDb3Jl
OjpOb2RlKiBub2RlKQogewotICAgIG1fcGFnZS0+ZWxlbWVudERpZEJsdXIoY29uc3RfY2FzdDxX
ZWJDb3JlOjpOb2RlKj4obm9kZSkpOworICAgIG1fcGFnZS5lbGVtZW50RGlkQmx1cihjb25zdF9j
YXN0PFdlYkNvcmU6Ok5vZGUqPihub2RlKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpt
YWtlRmlyc3RSZXNwb25kZXIoKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFn
ZVByb3h5OjpNYWtlRmlyc3RSZXNwb25kZXIoKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6TWFrZUZpcnN0UmVzcG9uZGVyKCkpOwogfSAgICAKICNlbmRpZiAgICAK
IApAQCAtMTkzLDcgKzIwMiw3IEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpjYW5UYWtlRm9jdXMo
Rm9jdXNEaXJlY3Rpb24pCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojp0YWtlRm9jdXMoRm9jdXNE
aXJlY3Rpb24gZGlyZWN0aW9uKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFn
ZVByb3h5OjpUYWtlRm9jdXMoZGlyZWN0aW9uKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6VGFrZUZvY3VzKGRpcmVjdGlvbikpOwogfQogCiB2b2lkIFdlYkNocm9t
ZUNsaWVudDo6Zm9jdXNlZEVsZW1lbnRDaGFuZ2VkKEVsZW1lbnQqIGVsZW1lbnQpCkBAIC0yMDcs
MTQgKzIxNiwxNCBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6Zm9jdXNlZEVsZW1lbnRDaGFuZ2Vk
KEVsZW1lbnQqIGVsZW1lbnQpCiAKICAgICBXZWJGcmFtZSogd2ViRnJhbWUgPSBXZWJGcmFtZTo6
ZnJvbUNvcmVGcmFtZSgqZWxlbWVudC0+ZG9jdW1lbnQoKS5mcmFtZSgpKTsKICAgICBBU1NFUlQo
d2ViRnJhbWUpOwotICAgIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCkuZGlkRm9j
dXNUZXh0RmllbGQobV9wYWdlLCAmaW5wdXRFbGVtZW50LCB3ZWJGcmFtZSk7CisgICAgbV9wYWdl
LmluamVjdGVkQnVuZGxlRm9ybUNsaWVudCgpLmRpZEZvY3VzVGV4dEZpZWxkKCZtX3BhZ2UsICZp
bnB1dEVsZW1lbnQsIHdlYkZyYW1lKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmZvY3Vz
ZWRGcmFtZUNoYW5nZWQoRnJhbWUqIGZyYW1lKQogewogICAgIFdlYkZyYW1lKiB3ZWJGcmFtZSA9
IGZyYW1lID8gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZyYW1lKSA6IG51bGxwdHI7CiAKLSAg
ICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5k
KE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZvY3VzZWRGcmFtZUNoYW5nZWQod2ViRnJhbWUgPyB3
ZWJGcmFtZS0+ZnJhbWVJRCgpIDogMCksIG1fcGFnZS0+cGFnZUlEKCkpOworICAgIFdlYlByb2Nl
c3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmQoTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6Rm9jdXNlZEZyYW1lQ2hhbmdlZCh3ZWJGcmFtZSA/IHdlYkZyYW1lLT5m
cmFtZUlEKCkgOiAwKSwgbV9wYWdlLnBhZ2VJRCgpKTsKIH0KIAogUGFnZSogV2ViQ2hyb21lQ2xp
ZW50OjpjcmVhdGVXaW5kb3coRnJhbWUqIGZyYW1lLCBjb25zdCBGcmFtZUxvYWRSZXF1ZXN0JiBy
ZXF1ZXN0LCBjb25zdCBXaW5kb3dGZWF0dXJlcyYgd2luZG93RmVhdHVyZXMsIGNvbnN0IE5hdmln
YXRpb25BY3Rpb24mIG5hdmlnYXRpb25BY3Rpb24pCkBAIC0yMzQsMTMgKzI0MywxMyBAQCBQYWdl
KiBXZWJDaHJvbWVDbGllbnQ6OmNyZWF0ZVdpbmRvdyhGcmFtZSogZnJhbWUsIGNvbnN0IEZyYW1l
TG9hZFJlcXVlc3QmIHJlcXVlcwogICAgIG5hdmlnYXRpb25BY3Rpb25EYXRhLm1vdXNlQnV0dG9u
ID0gSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uOjptb3VzZUJ1dHRvbkZvck5hdmlnYXRp
b25BY3Rpb24obmF2aWdhdGlvbkFjdGlvbik7CiAgICAgbmF2aWdhdGlvbkFjdGlvbkRhdGEuc3lu
dGhldGljQ2xpY2tUeXBlID0gSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uOjpzeW50aGV0
aWNDbGlja1R5cGVGb3JOYXZpZ2F0aW9uQWN0aW9uKG5hdmlnYXRpb25BY3Rpb24pOwogICAgIG5h
dmlnYXRpb25BY3Rpb25EYXRhLnVzZXJHZXN0dXJlVG9rZW5JZGVudGlmaWVyID0gd2ViUHJvY2Vz
cy51c2VyR2VzdHVyZVRva2VuSWRlbnRpZmllcihuYXZpZ2F0aW9uQWN0aW9uLnVzZXJHZXN0dXJl
VG9rZW4oKSk7Ci0gICAgbmF2aWdhdGlvbkFjdGlvbkRhdGEuY2FuSGFuZGxlUmVxdWVzdCA9IG1f
cGFnZS0+Y2FuSGFuZGxlUmVxdWVzdChyZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpKTsKKyAgICBu
YXZpZ2F0aW9uQWN0aW9uRGF0YS5jYW5IYW5kbGVSZXF1ZXN0ID0gbV9wYWdlLmNhbkhhbmRsZVJl
cXVlc3QocmVxdWVzdC5yZXNvdXJjZVJlcXVlc3QoKSk7CiAgICAgbmF2aWdhdGlvbkFjdGlvbkRh
dGEuc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSA9IG5hdmlnYXRpb25BY3Rpb24uc2hvdWxk
T3BlbkV4dGVybmFsVVJMc1BvbGljeSgpOwogICAgIG5hdmlnYXRpb25BY3Rpb25EYXRhLmRvd25s
b2FkQXR0cmlidXRlID0gbmF2aWdhdGlvbkFjdGlvbi5kb3dubG9hZEF0dHJpYnV0ZSgpOwogCiAg
ICAgdWludDY0X3QgbmV3UGFnZUlEID0gMDsKICAgICBXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJz
IHBhcmFtZXRlcnM7Ci0gICAgaWYgKCF3ZWJQcm9jZXNzLnBhcmVudFByb2Nlc3NDb25uZWN0aW9u
KCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkNyZWF0ZU5ld1BhZ2Uod2ViRnJh
bWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tRnJhbWUoZnJhbWUpLCByZXF1
ZXN0LnJlc291cmNlUmVxdWVzdCgpLCB3aW5kb3dGZWF0dXJlcywgbmF2aWdhdGlvbkFjdGlvbkRh
dGEpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpDcmVhdGVOZXdQYWdlOjpSZXBseShuZXdQYWdl
SUQsIHBhcmFtZXRlcnMpLCBtX3BhZ2UtPnBhZ2VJRCgpKSkKKyAgICBpZiAoIXdlYlByb2Nlc3Mu
cGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94
eTo6Q3JlYXRlTmV3UGFnZSh3ZWJGcmFtZS0+ZnJhbWVJRCgpLCBTZWN1cml0eU9yaWdpbkRhdGE6
OmZyb21GcmFtZShmcmFtZSksIHJlcXVlc3QucmVzb3VyY2VSZXF1ZXN0KCksIHdpbmRvd0ZlYXR1
cmVzLCBuYXZpZ2F0aW9uQWN0aW9uRGF0YSksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkNyZWF0
ZU5ld1BhZ2U6OlJlcGx5KG5ld1BhZ2VJRCwgcGFyYW1ldGVycyksIG1fcGFnZS5wYWdlSUQoKSkp
CiAgICAgICAgIHJldHVybiBudWxscHRyOwogCiAgICAgaWYgKCFuZXdQYWdlSUQpCkBAIC0yNTIs
MzIgKzI2MSwzMiBAQCBQYWdlKiBXZWJDaHJvbWVDbGllbnQ6OmNyZWF0ZVdpbmRvdyhGcmFtZSog
ZnJhbWUsIGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmIHJlcXVlcwogCiB2b2lkIFdlYkNocm9tZUNs
aWVudDo6c2hvdygpCiB7Ci0gICAgbV9wYWdlLT5zaG93KCk7CisgICAgbV9wYWdlLnNob3coKTsK
IH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OmNhblJ1bk1vZGFsKCkKIHsKLSAgICByZXR1cm4g
bV9wYWdlLT5jYW5SdW5Nb2RhbCgpOworICAgIHJldHVybiBtX3BhZ2UuY2FuUnVuTW9kYWwoKTsK
IH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJ1bk1vZGFsKCkKIHsKLSAgICBtX3BhZ2UtPnJ1
bk1vZGFsKCk7CisgICAgbV9wYWdlLnJ1bk1vZGFsKCk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xp
ZW50OjpzZXRUb29sYmFyc1Zpc2libGUoYm9vbCB0b29sYmFyc0FyZVZpc2libGUpCiB7Ci0gICAg
bV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldFRvb2xiYXJzQXJlVmlzaWJs
ZSh0b29sYmFyc0FyZVZpc2libGUpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFn
ZVByb3h5OjpTZXRUb29sYmFyc0FyZVZpc2libGUodG9vbGJhcnNBcmVWaXNpYmxlKSk7CiB9CiAK
IGJvb2wgV2ViQ2hyb21lQ2xpZW50Ojp0b29sYmFyc1Zpc2libGUoKQogewotICAgIEFQSTo6SW5q
ZWN0ZWRCdW5kbGU6OlBhZ2VVSUNsaWVudDo6VUlFbGVtZW50VmlzaWJpbGl0eSB0b29sYmFyc1Zp
c2liaWxpdHkgPSBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS50b29sYmFyc0FyZVZp
c2libGUobV9wYWdlKTsKKyAgICBBUEk6OkluamVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ6OlVJ
RWxlbWVudFZpc2liaWxpdHkgdG9vbGJhcnNWaXNpYmlsaXR5ID0gbV9wYWdlLmluamVjdGVkQnVu
ZGxlVUlDbGllbnQoKS50b29sYmFyc0FyZVZpc2libGUoJm1fcGFnZSk7CiAgICAgaWYgKHRvb2xi
YXJzVmlzaWJpbGl0eSAhPSBBUEk6OkluamVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ6OlVJRWxl
bWVudFZpc2liaWxpdHk6OlVua25vd24pCiAgICAgICAgIHJldHVybiB0b29sYmFyc1Zpc2liaWxp
dHkgPT0gQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmls
aXR5OjpWaXNpYmxlOwogICAgIAogICAgIGJvb2wgdG9vbGJhcnNBcmVWaXNpYmxlID0gdHJ1ZTsK
LSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9u
KCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFRvb2xiYXJzQXJlVmlzaWJs
ZSgpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRUb29sYmFyc0FyZVZpc2libGU6OlJlcGx5
KHRvb2xiYXJzQXJlVmlzaWJsZSksIG1fcGFnZS0+cGFnZUlEKCkpKQorICAgIGlmICghV2ViUHJv
Y2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0VG9vbGJhcnNBcmVWaXNpYmxlKCksIE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OkdldFRvb2xiYXJzQXJlVmlzaWJsZTo6UmVwbHkodG9vbGJhcnNBcmVWaXNp
YmxlKSwgbV9wYWdlLnBhZ2VJRCgpKSkKICAgICAgICAgcmV0dXJuIHRydWU7CiAKICAgICByZXR1
cm4gdG9vbGJhcnNBcmVWaXNpYmxlOwpAQCAtMjg1LDE3ICsyOTQsMTcgQEAgYm9vbCBXZWJDaHJv
bWVDbGllbnQ6OnRvb2xiYXJzVmlzaWJsZSgpCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRT
dGF0dXNiYXJWaXNpYmxlKGJvb2wgc3RhdHVzQmFySXNWaXNpYmxlKQogewotICAgIG1fcGFnZS0+
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRTdGF0dXNCYXJJc1Zpc2libGUoc3RhdHVz
QmFySXNWaXNpYmxlKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6
U2V0U3RhdHVzQmFySXNWaXNpYmxlKHN0YXR1c0JhcklzVmlzaWJsZSkpOwogfQogCiBib29sIFdl
YkNocm9tZUNsaWVudDo6c3RhdHVzYmFyVmlzaWJsZSgpCiB7Ci0gICAgQVBJOjpJbmplY3RlZEJ1
bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5IHN0YXR1c2JhclZpc2liaWxp
dHkgPSBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5zdGF0dXNCYXJJc1Zpc2libGUo
bV9wYWdlKTsKKyAgICBBUEk6OkluamVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVu
dFZpc2liaWxpdHkgc3RhdHVzYmFyVmlzaWJpbGl0eSA9IG1fcGFnZS5pbmplY3RlZEJ1bmRsZVVJ
Q2xpZW50KCkuc3RhdHVzQmFySXNWaXNpYmxlKCZtX3BhZ2UpOwogICAgIGlmIChzdGF0dXNiYXJW
aXNpYmlsaXR5ICE9IEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VVSUNsaWVudDo6VUlFbGVtZW50
VmlzaWJpbGl0eTo6VW5rbm93bikKICAgICAgICAgcmV0dXJuIHN0YXR1c2JhclZpc2liaWxpdHkg
PT0gQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5
OjpWaXNpYmxlOwogCiAgICAgYm9vbCBzdGF0dXNCYXJJc1Zpc2libGUgPSB0cnVlOwotICAgIGlm
ICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2Vu
ZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0U3RhdHVzQmFySXNWaXNpYmxlKCksIE1l
c3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFN0YXR1c0JhcklzVmlzaWJsZTo6UmVwbHkoc3RhdHVz
QmFySXNWaXNpYmxlKSwgbV9wYWdlLT5wYWdlSUQoKSkpCisgICAgaWYgKCFXZWJQcm9jZXNzOjpz
aW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6
V2ViUGFnZVByb3h5OjpHZXRTdGF0dXNCYXJJc1Zpc2libGUoKSwgTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6R2V0U3RhdHVzQmFySXNWaXNpYmxlOjpSZXBseShzdGF0dXNCYXJJc1Zpc2libGUpLCBt
X3BhZ2UucGFnZUlEKCkpKQogICAgICAgICByZXR1cm4gdHJ1ZTsKIAogICAgIHJldHVybiBzdGF0
dXNCYXJJc1Zpc2libGU7CkBAIC0zMTQsMTcgKzMyMywxNyBAQCBib29sIFdlYkNocm9tZUNsaWVu
dDo6c2Nyb2xsYmFyc1Zpc2libGUoKQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0TWVudWJh
clZpc2libGUoYm9vbCBtZW51QmFyVmlzaWJsZSkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2Fn
ZXM6OldlYlBhZ2VQcm94eTo6U2V0TWVudUJhcklzVmlzaWJsZShtZW51QmFyVmlzaWJsZSkpOwor
ICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldE1lbnVCYXJJc1Zpc2li
bGUobWVudUJhclZpc2libGUpKTsKIH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6Om1lbnViYXJW
aXNpYmxlKCkKIHsKLSAgICBBUEk6OkluamVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ6OlVJRWxl
bWVudFZpc2liaWxpdHkgbWVudWJhclZpc2liaWxpdHkgPSBtX3BhZ2UtPmluamVjdGVkQnVuZGxl
VUlDbGllbnQoKS5tZW51QmFySXNWaXNpYmxlKG1fcGFnZSk7CisgICAgQVBJOjpJbmplY3RlZEJ1
bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5IG1lbnViYXJWaXNpYmlsaXR5
ID0gbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5tZW51QmFySXNWaXNpYmxlKCZtX3Bh
Z2UpOwogICAgIGlmIChtZW51YmFyVmlzaWJpbGl0eSAhPSBBUEk6OkluamVjdGVkQnVuZGxlOjpQ
YWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHk6OlVua25vd24pCiAgICAgICAgIHJldHVy
biBtZW51YmFyVmlzaWJpbGl0eSA9PSBBUEk6OkluamVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ6
OlVJRWxlbWVudFZpc2liaWxpdHk6OlZpc2libGU7CiAgICAgCiAgICAgYm9vbCBtZW51QmFySXNW
aXNpYmxlID0gdHJ1ZTsKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFBy
b2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldE1l
bnVCYXJJc1Zpc2libGUoKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0TWVudUJhcklzVmlz
aWJsZTo6UmVwbHkobWVudUJhcklzVmlzaWJsZSksIG1fcGFnZS0+cGFnZUlEKCkpKQorICAgIGlm
ICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2Vu
ZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0TWVudUJhcklzVmlzaWJsZSgpLCBNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpHZXRNZW51QmFySXNWaXNpYmxlOjpSZXBseShtZW51QmFySXNW
aXNpYmxlKSwgbV9wYWdlLnBhZ2VJRCgpKSkKICAgICAgICAgcmV0dXJuIHRydWU7CiAKICAgICBy
ZXR1cm4gbWVudUJhcklzVmlzaWJsZTsKQEAgLTMzMiwxOCArMzQxLDE4IEBAIGJvb2wgV2ViQ2hy
b21lQ2xpZW50OjptZW51YmFyVmlzaWJsZSgpCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRS
ZXNpemFibGUoYm9vbCByZXNpemFibGUpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OlNldElzUmVzaXphYmxlKHJlc2l6YWJsZSkpOworICAgIG1fcGFnZS5zZW5k
KE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldElzUmVzaXphYmxlKHJlc2l6YWJsZSkpOwogfQog
CiB2b2lkIFdlYkNocm9tZUNsaWVudDo6YWRkTWVzc2FnZVRvQ29uc29sZShNZXNzYWdlU291cmNl
IHNvdXJjZSwgTWVzc2FnZUxldmVsIGxldmVsLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIHVuc2ln
bmVkIGxpbmVOdW1iZXIsIHVuc2lnbmVkIGNvbHVtbk51bWJlciwgY29uc3QgU3RyaW5nJiBzb3Vy
Y2VJRCkKIHsKICAgICAvLyBOb3RpZnkgdGhlIGJ1bmRsZSBjbGllbnQuCi0gICAgbV9wYWdlLT5p
bmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkud2lsbEFkZE1lc3NhZ2VUb0NvbnNvbGUobV9wYWdlLCBz
b3VyY2UsIGxldmVsLCBtZXNzYWdlLCBsaW5lTnVtYmVyLCBjb2x1bW5OdW1iZXIsIHNvdXJjZUlE
KTsKKyAgICBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLndpbGxBZGRNZXNzYWdlVG9D
b25zb2xlKCZtX3BhZ2UsIHNvdXJjZSwgbGV2ZWwsIG1lc3NhZ2UsIGxpbmVOdW1iZXIsIGNvbHVt
bk51bWJlciwgc291cmNlSUQpOwogfQogCiBib29sIFdlYkNocm9tZUNsaWVudDo6Y2FuUnVuQmVm
b3JlVW5sb2FkQ29uZmlybVBhbmVsKCkKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5jYW5SdW5CZWZv
cmVVbmxvYWRDb25maXJtUGFuZWwoKTsKKyAgICByZXR1cm4gbV9wYWdlLmNhblJ1bkJlZm9yZVVu
bG9hZENvbmZpcm1QYW5lbCgpOwogfQogCiBib29sIFdlYkNocm9tZUNsaWVudDo6cnVuQmVmb3Jl
VW5sb2FkQ29uZmlybVBhbmVsKGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgRnJhbWUqIGZyYW1lKQpA
QCAtMzU0LDcgKzM2Myw3IEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpydW5CZWZvcmVVbmxvYWRD
b25maXJtUGFuZWwoY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBGcmFtZSoKIAogICAgIEhhbmdEZXRl
Y3Rpb25EaXNhYmxlciBoYW5nRGV0ZWN0aW9uRGlzYWJsZXI7CiAKLSAgICBpZiAoIVdlYlByb2Nl
c3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OlJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbChtZXNzYWdlLCB3
ZWJGcmFtZS0+ZnJhbWVJRCgpKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuQmVmb3JlVW5s
b2FkQ29uZmlybVBhbmVsOjpSZXBseShzaG91bGRDbG9zZSksIG1fcGFnZS0+cGFnZUlEKCksIFNl
Y29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246OkluZm9ybVBsYXRmb3JtUHJv
Y2Vzc1dpbGxTdXNwZW5kKSkKKyAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVu
dFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJ1
bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbChtZXNzYWdlLCB3ZWJGcmFtZS0+ZnJhbWVJRCgpKSwg
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsOjpSZXBs
eShzaG91bGRDbG9zZSksIG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBD
OjpTZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpKQogICAg
ICAgICByZXR1cm4gZmFsc2U7CiAKICAgICByZXR1cm4gc2hvdWxkQ2xvc2U7CkBAIC0zNjksMTQg
KzM3OCwxNCBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y2xvc2VXaW5kb3dTb29uKCkKICAgICAv
LyBhIGNsb3NlIGV4ZWN1dGUgc3luY2hyb25vdXNseSBhcyBwYXJ0IG9mIHdpbmRvdy5jbG9zZSwg
YnV0IG90aGVyIHBhcnRzCiAgICAgLy8gbGF0ZXIgb24uCiAKLSAgICBtX3BhZ2UtPmNvcmVQYWdl
KCktPnNldEdyb3VwTmFtZShTdHJpbmcoKSk7CisgICAgbV9wYWdlLmNvcmVQYWdlKCktPnNldEdy
b3VwTmFtZShTdHJpbmcoKSk7CiAKLSAgICBpZiAoV2ViRnJhbWUqIGZyYW1lID0gbV9wYWdlLT5t
YWluV2ViRnJhbWUoKSkgeworICAgIGlmIChXZWJGcmFtZSogZnJhbWUgPSBtX3BhZ2UubWFpbldl
YkZyYW1lKCkpIHsKICAgICAgICAgaWYgKEZyYW1lKiBjb3JlRnJhbWUgPSBmcmFtZS0+Y29yZUZy
YW1lKCkpCiAgICAgICAgICAgICBjb3JlRnJhbWUtPmxvYWRlcigpLnN0b3BGb3JVc2VyQ2FuY2Vs
KCk7CiAgICAgfQogCi0gICAgbV9wYWdlLT5zZW5kQ2xvc2UoKTsKKyAgICBtX3BhZ2Uuc2VuZENs
b3NlKCk7CiB9CiAKIHN0YXRpYyBib29sIHNob3VsZFN1cHByZXNzSmF2YVNjcmlwdERpYWxvZ3Mo
RnJhbWUmIGZyYW1lKQpAQCAtMzk2LDExICs0MDUsMTEgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6
OnJ1bkphdmFTY3JpcHRBbGVydChGcmFtZSogZnJhbWUsIGNvbnN0IFN0cmluZyYgYWxlcnRUZXh0
KQogICAgIEFTU0VSVCh3ZWJGcmFtZSk7CiAKICAgICAvLyBOb3RpZnkgdGhlIGJ1bmRsZSBjbGll
bnQuCi0gICAgbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkud2lsbFJ1bkphdmFTY3Jp
cHRBbGVydChtX3BhZ2UsIGFsZXJ0VGV4dCwgd2ViRnJhbWUpOworICAgIG1fcGFnZS5pbmplY3Rl
ZEJ1bmRsZVVJQ2xpZW50KCkud2lsbFJ1bkphdmFTY3JpcHRBbGVydCgmbV9wYWdlLCBhbGVydFRl
eHQsIHdlYkZyYW1lKTsKIAogICAgIEhhbmdEZXRlY3Rpb25EaXNhYmxlciBoYW5nRGV0ZWN0aW9u
RGlzYWJsZXI7CiAKLSAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29u
bmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2NyaXB0
QWxlcnQod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tRnJhbWUo
ZnJhbWUpLCBhbGVydFRleHQpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2NyaXB0
QWxlcnQ6OlJlcGx5KCksIG1fcGFnZS0+cGFnZUlEKCksIFNlY29uZHM6OmluZmluaXR5KCksIElQ
Qzo6U2VuZFN5bmNPcHRpb246OkluZm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKTsKKyAg
ICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5k
U3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2NyaXB0QWxlcnQod2ViRnJhbWUt
PmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tRnJhbWUoZnJhbWUpLCBhbGVydFRl
eHQpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2NyaXB0QWxlcnQ6OlJlcGx5KCks
IG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBDOjpTZW5kU3luY09wdGlv
bjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpOwogfQogCiBib29sIFdlYkNocm9t
ZUNsaWVudDo6cnVuSmF2YVNjcmlwdENvbmZpcm0oRnJhbWUqIGZyYW1lLCBjb25zdCBTdHJpbmcm
IG1lc3NhZ2UpCkBAIC00MTIsMTIgKzQyMSwxMiBAQCBib29sIFdlYkNocm9tZUNsaWVudDo6cnVu
SmF2YVNjcmlwdENvbmZpcm0oRnJhbWUqIGZyYW1lLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UpCiAg
ICAgQVNTRVJUKHdlYkZyYW1lKTsKIAogICAgIC8vIE5vdGlmeSB0aGUgYnVuZGxlIGNsaWVudC4K
LSAgICBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS53aWxsUnVuSmF2YVNjcmlwdENv
bmZpcm0obV9wYWdlLCBtZXNzYWdlLCB3ZWJGcmFtZSk7CisgICAgbV9wYWdlLmluamVjdGVkQnVu
ZGxlVUlDbGllbnQoKS53aWxsUnVuSmF2YVNjcmlwdENvbmZpcm0oJm1fcGFnZSwgbWVzc2FnZSwg
d2ViRnJhbWUpOwogCiAgICAgSGFuZ0RldGVjdGlvbkRpc2FibGVyIGhhbmdEZXRlY3Rpb25EaXNh
YmxlcjsKIAogICAgIGJvb2wgcmVzdWx0ID0gZmFsc2U7Ci0gICAgaWYgKCFXZWJQcm9jZXNzOjpz
aW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6
V2ViUGFnZVByb3h5OjpSdW5KYXZhU2NyaXB0Q29uZmlybSh3ZWJGcmFtZS0+ZnJhbWVJRCgpLCBT
ZWN1cml0eU9yaWdpbkRhdGE6OmZyb21GcmFtZShmcmFtZSksIG1lc3NhZ2UpLCBNZXNzYWdlczo6
V2ViUGFnZVByb3h5OjpSdW5KYXZhU2NyaXB0Q29uZmlybTo6UmVwbHkocmVzdWx0KSwgbV9wYWdl
LT5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBDOjpTZW5kU3luY09wdGlvbjo6SW5m
b3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpKQorICAgIGlmICghV2ViUHJvY2Vzczo6c2lu
Z2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6Oldl
YlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdENvbmZpcm0od2ViRnJhbWUtPmZyYW1lSUQoKSwgU2Vj
dXJpdHlPcmlnaW5EYXRhOjpmcm9tRnJhbWUoZnJhbWUpLCBtZXNzYWdlKSwgTWVzc2FnZXM6Oldl
YlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdENvbmZpcm06OlJlcGx5KHJlc3VsdCksIG1fcGFnZS5w
YWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBDOjpTZW5kU3luY09wdGlvbjo6SW5mb3Jt
UGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAg
ICByZXR1cm4gcmVzdWx0OwpAQCAtNDMyLDExICs0NDEsMTEgQEAgYm9vbCBXZWJDaHJvbWVDbGll
bnQ6OnJ1bkphdmFTY3JpcHRQcm9tcHQoRnJhbWUqIGZyYW1lLCBjb25zdCBTdHJpbmcmIG1lc3Nh
Z2UsIGMKICAgICBBU1NFUlQod2ViRnJhbWUpOwogCiAgICAgLy8gTm90aWZ5IHRoZSBidW5kbGUg
Y2xpZW50LgotICAgIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLndpbGxSdW5KYXZh
U2NyaXB0UHJvbXB0KG1fcGFnZSwgbWVzc2FnZSwgZGVmYXVsdFZhbHVlLCB3ZWJGcmFtZSk7Cisg
ICAgbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS53aWxsUnVuSmF2YVNjcmlwdFByb21w
dCgmbV9wYWdlLCBtZXNzYWdlLCBkZWZhdWx0VmFsdWUsIHdlYkZyYW1lKTsKIAogICAgIEhhbmdE
ZXRlY3Rpb25EaXNhYmxlciBoYW5nRGV0ZWN0aW9uRGlzYWJsZXI7CiAKLSAgICBpZiAoIVdlYlBy
b2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1l
c3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJ1bkphdmFTY3JpcHRQcm9tcHQod2ViRnJhbWUtPmZyYW1l
SUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tRnJhbWUoZnJhbWUpLCBtZXNzYWdlLCBkZWZh
dWx0VmFsdWUpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2NyaXB0UHJvbXB0OjpS
ZXBseShyZXN1bHQpLCBtX3BhZ2UtPnBhZ2VJRCgpLCBTZWNvbmRzOjppbmZpbml0eSgpLCBJUEM6
OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0Zm9ybVByb2Nlc3NXaWxsU3VzcGVuZCkpCisgICAg
aWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5z
ZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2NyaXB0UHJvbXB0KHdlYkZy
YW1lLT5mcmFtZUlEKCksIFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbUZyYW1lKGZyYW1lKSwgbWVz
c2FnZSwgZGVmYXVsdFZhbHVlKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlw
dFByb21wdDo6UmVwbHkocmVzdWx0KSwgbV9wYWdlLnBhZ2VJRCgpLCBTZWNvbmRzOjppbmZpbml0
eSgpLCBJUEM6OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0Zm9ybVByb2Nlc3NXaWxsU3VzcGVu
ZCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIHJldHVybiAhcmVzdWx0LmlzTnVsbCgp
OwpAQCAtNDQ1LDI3ICs0NTQsMjkgQEAgYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnJ1bkphdmFTY3Jp
cHRQcm9tcHQoRnJhbWUqIGZyYW1lLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIGMKIHZvaWQgV2Vi
Q2hyb21lQ2xpZW50OjpzZXRTdGF0dXNiYXJUZXh0KGNvbnN0IFN0cmluZyYgc3RhdHVzYmFyVGV4
dCkKIHsKICAgICAvLyBOb3RpZnkgdGhlIGJ1bmRsZSBjbGllbnQuCi0gICAgbV9wYWdlLT5pbmpl
Y3RlZEJ1bmRsZVVJQ2xpZW50KCkud2lsbFNldFN0YXR1c2JhclRleHQobV9wYWdlLCBzdGF0dXNi
YXJUZXh0KTsKKyAgICBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLndpbGxTZXRTdGF0
dXNiYXJUZXh0KCZtX3BhZ2UsIHN0YXR1c2JhclRleHQpOwogCi0gICAgbV9wYWdlLT5zZW5kKE1l
c3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldFN0YXR1c1RleHQoc3RhdHVzYmFyVGV4dCkpOworICAg
IG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldFN0YXR1c1RleHQoc3RhdHVz
YmFyVGV4dCkpOwogfQogCiBLZXlib2FyZFVJTW9kZSBXZWJDaHJvbWVDbGllbnQ6OmtleWJvYXJk
VUlNb2RlKCkKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5rZXlib2FyZFVJTW9kZSgpOworICAgIHJl
dHVybiBtX3BhZ2Uua2V5Ym9hcmRVSU1vZGUoKTsKIH0KIAogI2lmIEVOQUJMRShQT0lOVEVSX0xP
Q0spCisKIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpyZXF1ZXN0UG9pbnRlckxvY2soKQogewotICAg
IG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZXF1ZXN0UG9pbnRlckxvY2so
KSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UmVxdWVzdFBvaW50
ZXJMb2NrKCkpOwogICAgIHJldHVybiB0cnVlOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6
cmVxdWVzdFBvaW50ZXJVbmxvY2soKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2Vi
UGFnZVByb3h5OjpSZXF1ZXN0UG9pbnRlclVubG9jaygpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpSZXF1ZXN0UG9pbnRlclVubG9jaygpKTsKIH0KKwogI2VuZGlm
CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjppbnZhbGlkYXRlUm9vdFZpZXcoY29uc3QgSW50UmVj
dCYpCkBAIC00NzUsNjEgKzQ4Niw2MSBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6aW52YWxpZGF0
ZVJvb3RWaWV3KGNvbnN0IEludFJlY3QmKQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6aW52YWxp
ZGF0ZUNvbnRlbnRzQW5kUm9vdFZpZXcoY29uc3QgSW50UmVjdCYgcmVjdCkKIHsKLSAgICBpZiAo
RG9jdW1lbnQqIGRvY3VtZW50ID0gbV9wYWdlLT5jb3JlUGFnZSgpLT5tYWluRnJhbWUoKS5kb2N1
bWVudCgpKSB7CisgICAgaWYgKERvY3VtZW50KiBkb2N1bWVudCA9IG1fcGFnZS5jb3JlUGFnZSgp
LT5tYWluRnJhbWUoKS5kb2N1bWVudCgpKSB7CiAgICAgICAgIGlmIChkb2N1bWVudC0+cHJpbnRp
bmcoKSkKICAgICAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBtX3BhZ2UtPmRyYXdpbmdB
cmVhKCktPnNldE5lZWRzRGlzcGxheUluUmVjdChyZWN0KTsKKyAgICBtX3BhZ2UuZHJhd2luZ0Fy
ZWEoKS0+c2V0TmVlZHNEaXNwbGF5SW5SZWN0KHJlY3QpOwogfQogCiB2b2lkIFdlYkNocm9tZUNs
aWVudDo6aW52YWxpZGF0ZUNvbnRlbnRzRm9yU2xvd1Njcm9sbChjb25zdCBJbnRSZWN0JiByZWN0
KQogewotICAgIGlmIChEb2N1bWVudCogZG9jdW1lbnQgPSBtX3BhZ2UtPmNvcmVQYWdlKCktPm1h
aW5GcmFtZSgpLmRvY3VtZW50KCkpIHsKKyAgICBpZiAoRG9jdW1lbnQqIGRvY3VtZW50ID0gbV9w
YWdlLmNvcmVQYWdlKCktPm1haW5GcmFtZSgpLmRvY3VtZW50KCkpIHsKICAgICAgICAgaWYgKGRv
Y3VtZW50LT5wcmludGluZygpKQogICAgICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIG1f
cGFnZS0+cGFnZURpZFNjcm9sbCgpOworICAgIG1fcGFnZS5wYWdlRGlkU2Nyb2xsKCk7CiAjaWYg
VVNFKENPT1JESU5BVEVEX0dSQVBISUNTKQotICAgIG1fcGFnZS0+ZHJhd2luZ0FyZWEoKS0+c2Ny
b2xsKHJlY3QsIEludFNpemUoKSk7CisgICAgbV9wYWdlLmRyYXdpbmdBcmVhKCktPnNjcm9sbChy
ZWN0LCBJbnRTaXplKCkpOwogI2Vsc2UKLSAgICBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPnNldE5l
ZWRzRGlzcGxheUluUmVjdChyZWN0KTsKKyAgICBtX3BhZ2UuZHJhd2luZ0FyZWEoKS0+c2V0TmVl
ZHNEaXNwbGF5SW5SZWN0KHJlY3QpOwogI2VuZGlmCiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50
OjpzY3JvbGwoY29uc3QgSW50U2l6ZSYgc2Nyb2xsRGVsdGEsIGNvbnN0IEludFJlY3QmIHNjcm9s
bFJlY3QsIGNvbnN0IEludFJlY3QmIGNsaXBSZWN0KQogewotICAgIG1fcGFnZS0+cGFnZURpZFNj
cm9sbCgpOwotICAgIG1fcGFnZS0+ZHJhd2luZ0FyZWEoKS0+c2Nyb2xsKGludGVyc2VjdGlvbihz
Y3JvbGxSZWN0LCBjbGlwUmVjdCksIHNjcm9sbERlbHRhKTsKKyAgICBtX3BhZ2UucGFnZURpZFNj
cm9sbCgpOworICAgIG1fcGFnZS5kcmF3aW5nQXJlYSgpLT5zY3JvbGwoaW50ZXJzZWN0aW9uKHNj
cm9sbFJlY3QsIGNsaXBSZWN0KSwgc2Nyb2xsRGVsdGEpOwogfQogCiAjaWYgVVNFKENPT1JESU5B
VEVEX0dSQVBISUNTKQogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmRlbGVnYXRlZFNjcm9sbFJlcXVl
c3RlZChjb25zdCBJbnRQb2ludCYgc2Nyb2xsT2Zmc2V0KQogewotICAgIG1fcGFnZS0+cGFnZURp
ZFJlcXVlc3RTY3JvbGwoc2Nyb2xsT2Zmc2V0KTsKKyAgICBtX3BhZ2UucGFnZURpZFJlcXVlc3RT
Y3JvbGwoc2Nyb2xsT2Zmc2V0KTsKIH0KICNlbmRpZgogCiBJbnRQb2ludCBXZWJDaHJvbWVDbGll
bnQ6OnNjcmVlblRvUm9vdFZpZXcoY29uc3QgSW50UG9pbnQmIHBvaW50KSBjb25zdAogewotICAg
IHJldHVybiBtX3BhZ2UtPnNjcmVlblRvUm9vdFZpZXcocG9pbnQpOworICAgIHJldHVybiBtX3Bh
Z2Uuc2NyZWVuVG9Sb290Vmlldyhwb2ludCk7CiB9CiAKIEludFJlY3QgV2ViQ2hyb21lQ2xpZW50
Ojpyb290Vmlld1RvU2NyZWVuKGNvbnN0IEludFJlY3QmIHJlY3QpIGNvbnN0CiB7Ci0gICAgcmV0
dXJuIG1fcGFnZS0+cm9vdFZpZXdUb1NjcmVlbihyZWN0KTsKKyAgICByZXR1cm4gbV9wYWdlLnJv
b3RWaWV3VG9TY3JlZW4ocmVjdCk7CiB9CiAgICAgCiAjaWYgUExBVEZPUk0oSU9TKQogSW50UG9p
bnQgV2ViQ2hyb21lQ2xpZW50OjphY2Nlc3NpYmlsaXR5U2NyZWVuVG9Sb290Vmlldyhjb25zdCBJ
bnRQb2ludCYgcG9pbnQpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+YWNjZXNzaWJpbGl0
eVNjcmVlblRvUm9vdFZpZXcocG9pbnQpOworICAgIHJldHVybiBtX3BhZ2UuYWNjZXNzaWJpbGl0
eVNjcmVlblRvUm9vdFZpZXcocG9pbnQpOwogfQogCiBJbnRSZWN0IFdlYkNocm9tZUNsaWVudDo6
cm9vdFZpZXdUb0FjY2Vzc2liaWxpdHlTY3JlZW4oY29uc3QgSW50UmVjdCYgcmVjdCkgY29uc3QK
IHsKLSAgICByZXR1cm4gbV9wYWdlLT5yb290Vmlld1RvQWNjZXNzaWJpbGl0eVNjcmVlbihyZWN0
KTsKKyAgICByZXR1cm4gbV9wYWdlLnJvb3RWaWV3VG9BY2Nlc3NpYmlsaXR5U2NyZWVuKHJlY3Qp
OwogfQogI2VuZGlmCiAKQEAgLTU0MSwyMCArNTUyLDIwIEBAIFBsYXRmb3JtUGFnZUNsaWVudCBX
ZWJDaHJvbWVDbGllbnQ6OnBsYXRmb3JtUGFnZUNsaWVudCgpIGNvbnN0CiAKIHZvaWQgV2ViQ2hy
b21lQ2xpZW50Ojpjb250ZW50c1NpemVDaGFuZ2VkKEZyYW1lKiBmcmFtZSwgY29uc3QgSW50U2l6
ZSYgc2l6ZSkgY29uc3QKIHsKLSAgICBpZiAoIW1fcGFnZS0+Y29yZVBhZ2UoKS0+c2V0dGluZ3Mo
KS5mcmFtZUZsYXR0ZW5pbmdFbmFibGVkKCkpIHsKKyAgICBpZiAoIW1fcGFnZS5jb3JlUGFnZSgp
LT5zZXR0aW5ncygpLmZyYW1lRmxhdHRlbmluZ0VuYWJsZWQoKSkgewogICAgICAgICBXZWJGcmFt
ZSogbGFyZ2VzdEZyYW1lID0gZmluZExhcmdlc3RGcmFtZUluRnJhbWVTZXQobV9wYWdlKTsKICAg
ICAgICAgaWYgKGxhcmdlc3RGcmFtZSAhPSBtX2NhY2hlZEZyYW1lU2V0TGFyZ2VzdEZyYW1lLmdl
dCgpKSB7CiAgICAgICAgICAgICBtX2NhY2hlZEZyYW1lU2V0TGFyZ2VzdEZyYW1lID0gbGFyZ2Vz
dEZyYW1lOwotICAgICAgICAgICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OkZyYW1lU2V0TGFyZ2VzdEZyYW1lQ2hhbmdlZChsYXJnZXN0RnJhbWUgPyBsYXJnZXN0RnJhbWUt
PmZyYW1lSUQoKSA6IDApKTsKKyAgICAgICAgICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OkZyYW1lU2V0TGFyZ2VzdEZyYW1lQ2hhbmdlZChsYXJnZXN0RnJhbWUgPyBsYXJn
ZXN0RnJhbWUtPmZyYW1lSUQoKSA6IDApKTsKICAgICAgICAgfQogICAgIH0KIAogICAgIGlmICgm
ZnJhbWUtPnBhZ2UoKS0+bWFpbkZyYW1lKCkgIT0gZnJhbWUpCiAgICAgICAgIHJldHVybjsKIAot
ICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRDaGFuZ2VDb250ZW50
U2l6ZShzaXplKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RGlk
Q2hhbmdlQ29udGVudFNpemUoc2l6ZSkpOwogCi0gICAgbV9wYWdlLT5kcmF3aW5nQXJlYSgpLT5t
YWluRnJhbWVDb250ZW50U2l6ZUNoYW5nZWQoc2l6ZSk7CisgICAgbV9wYWdlLmRyYXdpbmdBcmVh
KCktPm1haW5GcmFtZUNvbnRlbnRTaXplQ2hhbmdlZChzaXplKTsKIAogICAgIEZyYW1lVmlldyog
ZnJhbWVWaWV3ID0gZnJhbWUtPnZpZXcoKTsKICAgICBpZiAoZnJhbWVWaWV3ICYmICFmcmFtZVZp
ZXctPmRlbGVnYXRlc1Njcm9sbGluZygpKSAgewpAQCAtNTYyLDcgKzU3Myw3IEBAIHZvaWQgV2Vi
Q2hyb21lQ2xpZW50Ojpjb250ZW50c1NpemVDaGFuZ2VkKEZyYW1lKiBmcmFtZSwgY29uc3QgSW50
U2l6ZSYgc2l6ZSkgY29uCiAgICAgICAgIGJvb2wgaGFzVmVydGljYWxTY3JvbGxiYXIgPSBmcmFt
ZVZpZXctPnZlcnRpY2FsU2Nyb2xsYmFyKCk7CiAKICAgICAgICAgaWYgKGhhc0hvcml6b250YWxT
Y3JvbGxiYXIgIT0gbV9jYWNoZWRNYWluRnJhbWVIYXNIb3Jpem9udGFsU2Nyb2xsYmFyIHx8IGhh
c1ZlcnRpY2FsU2Nyb2xsYmFyICE9IG1fY2FjaGVkTWFpbkZyYW1lSGFzVmVydGljYWxTY3JvbGxi
YXIpIHsKLSAgICAgICAgICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpE
aWRDaGFuZ2VTY3JvbGxiYXJzRm9yTWFpbkZyYW1lKGhhc0hvcml6b250YWxTY3JvbGxiYXIsIGhh
c1ZlcnRpY2FsU2Nyb2xsYmFyKSk7CisgICAgICAgICAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6
V2ViUGFnZVByb3h5OjpEaWRDaGFuZ2VTY3JvbGxiYXJzRm9yTWFpbkZyYW1lKGhhc0hvcml6b250
YWxTY3JvbGxiYXIsIGhhc1ZlcnRpY2FsU2Nyb2xsYmFyKSk7CiAKICAgICAgICAgICAgIG1fY2Fj
aGVkTWFpbkZyYW1lSGFzSG9yaXpvbnRhbFNjcm9sbGJhciA9IGhhc0hvcml6b250YWxTY3JvbGxi
YXI7CiAgICAgICAgICAgICBtX2NhY2hlZE1haW5GcmFtZUhhc1ZlcnRpY2FsU2Nyb2xsYmFyID0g
aGFzVmVydGljYWxTY3JvbGxiYXI7CkBAIC02MDMsMTIgKzYxNCwxMiBAQCB2b2lkIFdlYkNocm9t
ZUNsaWVudDo6dW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2VkKEVsZW1lbnQqIGVsZW1lbnQs
IFJlbmRlckVtYgogICAgIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQqIHBsdWdpbkVsZW1lbnQgPSBz
dGF0aWNfY2FzdDxIVE1MUGx1Z0luSW1hZ2VFbGVtZW50Kj4oZWxlbWVudCk7CiAKICAgICBTdHJp
bmcgZnJhbWVVUkxTdHJpbmcgPSBwbHVnaW5FbGVtZW50LT5kb2N1bWVudCgpLmZyYW1lKCktPmxv
YWRlcigpLmRvY3VtZW50TG9hZGVyKCktPnJlc3BvbnNlVVJMKCkuc3RyaW5nKCk7Ci0gICAgU3Ry
aW5nIHBhZ2VVUkxTdHJpbmcgPSBtX3BhZ2UtPm1haW5GcmFtZSgpLT5sb2FkZXIoKS5kb2N1bWVu
dExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOworICAgIFN0cmluZyBwYWdlVVJMU3Ry
aW5nID0gbV9wYWdlLm1haW5GcmFtZSgpLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5yZXNw
b25zZVVSTCgpLnN0cmluZygpOwogICAgIFN0cmluZyBwbHVnaW5VUkxTdHJpbmcgPSBwbHVnaW5F
bGVtZW50LT5kb2N1bWVudCgpLmNvbXBsZXRlVVJMKHBsdWdpbkVsZW1lbnQtPnVybCgpKS5zdHJp
bmcoKTsKICAgICBVUkwgcGx1Z2luc3BhZ2VBdHRyaWJ1dGVVUkwgPSBlbGVtZW50LT5kb2N1bWVu
dCgpLmNvbXBsZXRlVVJMKHN0cmlwTGVhZGluZ0FuZFRyYWlsaW5nSFRNTFNwYWNlcyhwbHVnaW5F
bGVtZW50LT5nZXRBdHRyaWJ1dGUocGx1Z2luc3BhZ2VBdHRyKSkpOwogICAgIGlmICghcGx1Z2lu
c3BhZ2VBdHRyaWJ1dGVVUkwucHJvdG9jb2xJc0luSFRUUEZhbWlseSgpKQogICAgICAgICBwbHVn
aW5zcGFnZUF0dHJpYnV0ZVVSTCA9IFVSTCgpOwotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6
V2ViUGFnZVByb3h5OjpVbmF2YWlsYWJsZVBsdWdpbkJ1dHRvbkNsaWNrZWQocGx1Z2luVW5hdmFp
bGFiaWxpdHlSZWFzb24sIHBsdWdpbkVsZW1lbnQtPnNlcnZpY2VUeXBlKCksIHBsdWdpblVSTFN0
cmluZywgcGx1Z2luc3BhZ2VBdHRyaWJ1dGVVUkwuc3RyaW5nKCksIGZyYW1lVVJMU3RyaW5nLCBw
YWdlVVJMU3RyaW5nKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6
VW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2VkKHBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29u
LCBwbHVnaW5FbGVtZW50LT5zZXJ2aWNlVHlwZSgpLCBwbHVnaW5VUkxTdHJpbmcsIHBsdWdpbnNw
YWdlQXR0cmlidXRlVVJMLnN0cmluZygpLCBmcmFtZVVSTFN0cmluZywgcGFnZVVSTFN0cmluZykp
OwogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0oZWxlbWVudCk7CiAgICAgVU5VU0VEX1BBUkFNKHBs
dWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKTsKQEAgLTYyNSwxMSArNjM2LDExIEBAIHZvaWQgV2Vi
Q2hyb21lQ2xpZW50Ojptb3VzZURpZE1vdmVPdmVyRWxlbWVudChjb25zdCBIaXRUZXN0UmVzdWx0
JiBoaXRUZXN0UmVzdWx0CiAgICAgUmVmUHRyPEFQSTo6T2JqZWN0PiB1c2VyRGF0YTsKIAogICAg
IC8vIE5vdGlmeSB0aGUgYnVuZGxlIGNsaWVudC4KLSAgICBtX3BhZ2UtPmluamVjdGVkQnVuZGxl
VUlDbGllbnQoKS5tb3VzZURpZE1vdmVPdmVyRWxlbWVudChtX3BhZ2UsIGhpdFRlc3RSZXN1bHQs
IHN0YXRpY19jYXN0PFdlYkV2ZW50OjpNb2RpZmllcnM+KG1vZGlmaWVyRmxhZ3MpLCB1c2VyRGF0
YSk7CisgICAgbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5tb3VzZURpZE1vdmVPdmVy
RWxlbWVudCgmbV9wYWdlLCBoaXRUZXN0UmVzdWx0LCBzdGF0aWNfY2FzdDxXZWJFdmVudDo6TW9k
aWZpZXJzPihtb2RpZmllckZsYWdzKSwgdXNlckRhdGEpOwogCiAgICAgLy8gTm90aWZ5IHRoZSBV
SVByb2Nlc3MuCiAgICAgV2ViSGl0VGVzdFJlc3VsdERhdGEgd2ViSGl0VGVzdFJlc3VsdERhdGEo
aGl0VGVzdFJlc3VsdCk7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
Ok1vdXNlRGlkTW92ZU92ZXJFbGVtZW50KHdlYkhpdFRlc3RSZXN1bHREYXRhLCBtb2RpZmllckZs
YWdzLCBVc2VyRGF0YShXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS50cmFuc2Zvcm1PYmplY3RzVG9I
YW5kbGVzKHVzZXJEYXRhLmdldCgpKS5nZXQoKSkpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdl
czo6V2ViUGFnZVByb3h5OjpNb3VzZURpZE1vdmVPdmVyRWxlbWVudCh3ZWJIaXRUZXN0UmVzdWx0
RGF0YSwgbW9kaWZpZXJGbGFncywgVXNlckRhdGEoV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkudHJh
bnNmb3JtT2JqZWN0c1RvSGFuZGxlcyh1c2VyRGF0YS5nZXQoKSkuZ2V0KCkpKSk7CiB9CiAKIHZv
aWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRUb29sVGlwKGNvbnN0IFN0cmluZyYgdG9vbFRpcCwgVGV4
dERpcmVjdGlvbikKQEAgLTY0MCw3ICs2NTEsNyBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0
VG9vbFRpcChjb25zdCBTdHJpbmcmIHRvb2xUaXAsIFRleHREaXJlY3Rpb24pCiAgICAgICAgIHJl
dHVybjsKICAgICBtX2NhY2hlZFRvb2xUaXAgPSB0b29sVGlwOwogCi0gICAgbV9wYWdlLT5zZW5k
KE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldFRvb2xUaXAobV9jYWNoZWRUb29sVGlwKSk7Cisg
ICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0VG9vbFRpcChtX2NhY2hl
ZFRvb2xUaXApKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnByaW50KEZyYW1lKiBmcmFt
ZSkKQEAgLTY2OCw3ICs2NzksNyBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6cHJpbnQoRnJhbWUq
IGZyYW1lKQogICAgIH0KICNlbmRpZgogCi0gICAgbV9wYWdlLT5zZW5kU3luYyhNZXNzYWdlczo6
V2ViUGFnZVByb3h5OjpQcmludEZyYW1lKHdlYkZyYW1lLT5mcmFtZUlEKCkpLCBNZXNzYWdlczo6
V2ViUGFnZVByb3h5OjpQcmludEZyYW1lOjpSZXBseSgpLCBTZWNvbmRzOjppbmZpbml0eSgpLCBJ
UEM6OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0Zm9ybVByb2Nlc3NXaWxsU3VzcGVuZCk7Cisg
ICAgbV9wYWdlLnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlByaW50RnJhbWUod2Vi
RnJhbWUtPmZyYW1lSUQoKSksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlByaW50RnJhbWU6OlJl
cGx5KCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246OkluZm9ybVBs
YXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmV4
Y2VlZGVkRGF0YWJhc2VRdW90YShGcmFtZSogZnJhbWUsIGNvbnN0IFN0cmluZyYgZGF0YWJhc2VO
YW1lLCBEYXRhYmFzZURldGFpbHMgZGV0YWlscykKQEAgLTY4NiwxMiArNjk3LDEyIEBAIHZvaWQg
V2ViQ2hyb21lQ2xpZW50OjpleGNlZWRlZERhdGFiYXNlUXVvdGEoRnJhbWUqIGZyYW1lLCBjb25z
dCBTdHJpbmcmIGRhdGFiYXNlCiAgICAgYXV0byBjdXJyZW50T3JpZ2luVXNhZ2UgPSB0cmFja2Vy
LnVzYWdlKG9yaWdpbkRhdGEpOwogICAgIHVpbnQ2NF90IG5ld1F1b3RhID0gMDsKICAgICBSZWZQ
dHI8QVBJOjpTZWN1cml0eU9yaWdpbj4gc2VjdXJpdHlPcmlnaW4gPSBBUEk6OlNlY3VyaXR5T3Jp
Z2luOjpjcmVhdGUoV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tRGF0YWJhc2VJZGVu
dGlmaWVyKFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbVNlY3VyaXR5T3JpZ2luKCpv
cmlnaW4pLmRhdGFiYXNlSWRlbnRpZmllcigpKS0+c2VjdXJpdHlPcmlnaW4oKSk7Ci0gICAgbmV3
UXVvdGEgPSBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5kaWRFeGNlZWREYXRhYmFz
ZVF1b3RhKG1fcGFnZSwgc2VjdXJpdHlPcmlnaW4uZ2V0KCksIGRhdGFiYXNlTmFtZSwgZGV0YWls
cy5kaXNwbGF5TmFtZSgpLCBjdXJyZW50UXVvdGEsIGN1cnJlbnRPcmlnaW5Vc2FnZSwgZGV0YWls
cy5jdXJyZW50VXNhZ2UoKSwgZGV0YWlscy5leHBlY3RlZFVzYWdlKCkpOworICAgIG5ld1F1b3Rh
ID0gbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5kaWRFeGNlZWREYXRhYmFzZVF1b3Rh
KCZtX3BhZ2UsIHNlY3VyaXR5T3JpZ2luLmdldCgpLCBkYXRhYmFzZU5hbWUsIGRldGFpbHMuZGlz
cGxheU5hbWUoKSwgY3VycmVudFF1b3RhLCBjdXJyZW50T3JpZ2luVXNhZ2UsIGRldGFpbHMuY3Vy
cmVudFVzYWdlKCksIGRldGFpbHMuZXhwZWN0ZWRVc2FnZSgpKTsKIAogICAgIGlmICghbmV3UXVv
dGEpIHsKICAgICAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5l
Y3Rpb24oKS0+c2VuZFN5bmMoCiAgICAgICAgICAgICBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpF
eGNlZWRlZERhdGFiYXNlUXVvdGEod2ViRnJhbWUtPmZyYW1lSUQoKSwgV2ViQ29yZTo6U2VjdXJp
dHlPcmlnaW5EYXRhOjpmcm9tU2VjdXJpdHlPcmlnaW4oKm9yaWdpbikuZGF0YWJhc2VJZGVudGlm
aWVyKCksIGRhdGFiYXNlTmFtZSwgZGV0YWlscy5kaXNwbGF5TmFtZSgpLCBjdXJyZW50UXVvdGEs
IGN1cnJlbnRPcmlnaW5Vc2FnZSwgZGV0YWlscy5jdXJyZW50VXNhZ2UoKSwgZGV0YWlscy5leHBl
Y3RlZFVzYWdlKCkpLAotICAgICAgICAgICAgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RXhjZWVk
ZWREYXRhYmFzZVF1b3RhOjpSZXBseShuZXdRdW90YSksIG1fcGFnZS0+cGFnZUlEKCksIFNlY29u
ZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246OkluZm9ybVBsYXRmb3JtUHJvY2Vz
c1dpbGxTdXNwZW5kKTsKKyAgICAgICAgICAgIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkV4Y2Vl
ZGVkRGF0YWJhc2VRdW90YTo6UmVwbHkobmV3UXVvdGEpLCBtX3BhZ2UucGFnZUlEKCksIFNlY29u
ZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246OkluZm9ybVBsYXRmb3JtUHJvY2Vz
c1dpbGxTdXNwZW5kKTsKICAgICB9CiAKICAgICB0cmFja2VyLnNldFF1b3RhKG9yaWdpbkRhdGEs
IG5ld1F1b3RhKTsKQEAgLTcwNSwxMCArNzE2LDEwIEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpy
ZWFjaGVkTWF4QXBwQ2FjaGVTaXplKGludDY0X3QpCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6cmVh
Y2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YShTZWN1cml0eU9yaWdpbiogb3JpZ2luLCBp
bnQ2NF90IHRvdGFsQnl0ZXNOZWVkZWQpCiB7CiAgICAgUmVmUHRyPEFQSTo6U2VjdXJpdHlPcmln
aW4+IHNlY3VyaXR5T3JpZ2luID0gQVBJOjpTZWN1cml0eU9yaWdpbjo6Y3JlYXRlRnJvbVN0cmlu
ZyhvcmlnaW4tPnRvU3RyaW5nKCkpOwotICAgIGlmIChtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlD
bGllbnQoKS5kaWRSZWFjaEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YShtX3BhZ2UsIHNlY3Vy
aXR5T3JpZ2luLmdldCgpLCB0b3RhbEJ5dGVzTmVlZGVkKSkKKyAgICBpZiAobV9wYWdlLmluamVj
dGVkQnVuZGxlVUlDbGllbnQoKS5kaWRSZWFjaEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YSgm
bV9wYWdlLCBzZWN1cml0eU9yaWdpbi5nZXQoKSwgdG90YWxCeXRlc05lZWRlZCkpCiAgICAgICAg
IHJldHVybjsKIAotICAgIGF1dG8mIGNhY2hlU3RvcmFnZSA9IG1fcGFnZS0+Y29yZVBhZ2UoKS0+
YXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKTsKKyAgICBhdXRvJiBjYWNoZVN0b3JhZ2UgPSBtX3Bh
Z2UuY29yZVBhZ2UoKS0+YXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKTsKICAgICBpbnQ2NF90IGN1
cnJlbnRRdW90YSA9IDA7CiAgICAgaWYgKCFjYWNoZVN0b3JhZ2UuY2FsY3VsYXRlUXVvdGFGb3JP
cmlnaW4ob3JpZ2luLCBjdXJyZW50UXVvdGEpKQogICAgICAgICByZXR1cm47CkBAIC03MTYsNyAr
NzI3LDcgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3Jp
Z2luUXVvdGEoU2VjdXJpdHlPcmlnaW4qIG9yaWdpbiwKICAgICB1aW50NjRfdCBuZXdRdW90YSA9
IDA7CiAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24o
KS0+c2VuZFN5bmMoCiAgICAgICAgIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJlYWNoZWRBcHBs
aWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9t
U2VjdXJpdHlPcmlnaW4oKm9yaWdpbikuZGF0YWJhc2VJZGVudGlmaWVyKCksIGN1cnJlbnRRdW90
YSwgdG90YWxCeXRlc05lZWRlZCksCi0gICAgICAgIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJl
YWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGE6OlJlcGx5KG5ld1F1b3RhKSwgbV9wYWdl
LT5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBDOjpTZW5kU3luY09wdGlvbjo6SW5m
b3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpOworICAgICAgICBNZXNzYWdlczo6V2ViUGFn
ZVByb3h5OjpSZWFjaGVkQXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3RhOjpSZXBseShuZXdRdW90
YSksIG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBDOjpTZW5kU3luY09w
dGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpOwogCiAgICAgY2FjaGVTdG9y
YWdlLnN0b3JlVXBkYXRlZFF1b3RhRm9yT3JpZ2luKG9yaWdpbiwgbmV3UXVvdGEpOwogfQpAQCAt
NzMwLDM1ICs3NDEsMzIgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmFubm90YXRlZFJlZ2lvbnND
aGFuZ2VkKCkKIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnNob3VsZFJlcGxhY2VXaXRoR2VuZXJh
dGVkRmlsZUZvclVwbG9hZChjb25zdCBTdHJpbmcmIHBhdGgsIFN0cmluZyYgZ2VuZXJhdGVkRmls
ZW5hbWUpCiB7Ci0gICAgZ2VuZXJhdGVkRmlsZW5hbWUgPSBtX3BhZ2UtPmluamVjdGVkQnVuZGxl
VUlDbGllbnQoKS5zaG91bGRHZW5lcmF0ZUZpbGVGb3JVcGxvYWQobV9wYWdlLCBwYXRoKTsKKyAg
ICBnZW5lcmF0ZWRGaWxlbmFtZSA9IG1fcGFnZS5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkuc2hv
dWxkR2VuZXJhdGVGaWxlRm9yVXBsb2FkKCZtX3BhZ2UsIHBhdGgpOwogICAgIHJldHVybiAhZ2Vu
ZXJhdGVkRmlsZW5hbWUuaXNOdWxsKCk7CiB9CiAKIFN0cmluZyBXZWJDaHJvbWVDbGllbnQ6Omdl
bmVyYXRlUmVwbGFjZW1lbnRGaWxlKGNvbnN0IFN0cmluZyYgcGF0aCkKIHsKLSAgICByZXR1cm4g
bV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkuZ2VuZXJhdGVGaWxlRm9yVXBsb2FkKG1f
cGFnZSwgcGF0aCk7CisgICAgcmV0dXJuIG1fcGFnZS5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCku
Z2VuZXJhdGVGaWxlRm9yVXBsb2FkKCZtX3BhZ2UsIHBhdGgpOwogfQogCiAjaWYgRU5BQkxFKElO
UFVUX1RZUEVfQ09MT1IpCiBzdGQ6OnVuaXF1ZV9wdHI8Q29sb3JDaG9vc2VyPiBXZWJDaHJvbWVD
bGllbnQ6OmNyZWF0ZUNvbG9yQ2hvb3NlcihDb2xvckNob29zZXJDbGllbnQqIGNsaWVudCwgY29u
c3QgQ29sb3ImIGluaXRpYWxDb2xvcikKIHsKLSAgICByZXR1cm4gc3RkOjptYWtlX3VuaXF1ZTxX
ZWJDb2xvckNob29zZXI+KG1fcGFnZSwgY2xpZW50LCBpbml0aWFsQ29sb3IpOworICAgIHJldHVy
biBzdGQ6Om1ha2VfdW5pcXVlPFdlYkNvbG9yQ2hvb3Nlcj4oJm1fcGFnZSwgY2xpZW50LCBpbml0
aWFsQ29sb3IpOwogfQogI2VuZGlmCiAKLXZvaWQgV2ViQ2hyb21lQ2xpZW50OjpydW5PcGVuUGFu
ZWwoRnJhbWUqIGZyYW1lLCBQYXNzUmVmUHRyPEZpbGVDaG9vc2VyPiBwcnBGaWxlQ2hvb3NlcikK
K3ZvaWQgV2ViQ2hyb21lQ2xpZW50OjpydW5PcGVuUGFuZWwoRnJhbWUmIGZyYW1lLCBGaWxlQ2hv
b3NlciYgZmlsZUNob29zZXIpCiB7Ci0gICAgaWYgKG1fcGFnZS0+YWN0aXZlT3BlblBhbmVsUmVz
dWx0TGlzdGVuZXIoKSkKKyAgICBpZiAobV9wYWdlLmFjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3Rl
bmVyKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIFJlZlB0cjxGaWxlQ2hvb3Nlcj4gZmlsZUNo
b29zZXIgPSBwcnBGaWxlQ2hvb3NlcjsKKyAgICBtX3BhZ2Uuc2V0QWN0aXZlT3BlblBhbmVsUmVz
dWx0TGlzdGVuZXIoV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXI6OmNyZWF0ZSgmbV9wYWdlLCAm
ZmlsZUNob29zZXIpKTsKIAotICAgIG1fcGFnZS0+c2V0QWN0aXZlT3BlblBhbmVsUmVzdWx0TGlz
dGVuZXIoV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXI6OmNyZWF0ZShtX3BhZ2UsIGZpbGVDaG9v
c2VyLmdldCgpKSk7Ci0KLSAgICBXZWJGcmFtZSogd2ViRnJhbWUgPSBXZWJGcmFtZTo6ZnJvbUNv
cmVGcmFtZSgqZnJhbWUpOworICAgIGF1dG8qIHdlYkZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3Jl
RnJhbWUoZnJhbWUpOwogICAgIEFTU0VSVCh3ZWJGcmFtZSk7Ci0KLSAgICBtX3BhZ2UtPnNlbmQo
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuT3BlblBhbmVsKHdlYkZyYW1lLT5mcmFtZUlEKCks
IFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbUZyYW1lKGZyYW1lKSwgZmlsZUNob29zZXItPnNldHRp
bmdzKCkpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5PcGVu
UGFuZWwod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tRnJhbWUo
JmZyYW1lKSwgZmlsZUNob29zZXIuc2V0dGluZ3MoKSkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNs
aWVudDo6bG9hZEljb25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8U3RyaW5nPiYgZmlsZW5hbWVzLCBG
aWxlSWNvbkxvYWRlciYgbG9hZGVyKQpAQCAtNzY3LDM0ICs3NzUsMzggQEAgdm9pZCBXZWJDaHJv
bWVDbGllbnQ6OmxvYWRJY29uRm9yRmlsZXMoY29uc3QgVmVjdG9yPFN0cmluZz4mIGZpbGVuYW1l
cywgRmlsZUljb24KIH0KIAogI2lmICFQTEFURk9STShJT1MpCisKIHZvaWQgV2ViQ2hyb21lQ2xp
ZW50OjpzZXRDdXJzb3IoY29uc3QgV2ViQ29yZTo6Q3Vyc29yJiBjdXJzb3IpCiB7Ci0gICAgbV9w
YWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldEN1cnNvcihjdXJzb3IpKTsKKyAg
ICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRDdXJzb3IoY3Vyc29yKSk7
CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRDdXJzb3JIaWRkZW5VbnRpbE1vdXNlTW92
ZXMoYm9vbCBoaWRkZW5VbnRpbE1vdXNlTW92ZXMpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OlNldEN1cnNvckhpZGRlblVudGlsTW91c2VNb3ZlcyhoaWRkZW5V
bnRpbE1vdXNlTW92ZXMpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjpTZXRDdXJzb3JIaWRkZW5VbnRpbE1vdXNlTW92ZXMoaGlkZGVuVW50aWxNb3VzZU1vdmVzKSk7
CiB9CisKICNlbmRpZgogCiAjaWYgRU5BQkxFKFJFUVVFU1RfQU5JTUFUSU9OX0ZSQU1FKSAmJiAh
VVNFKFJFUVVFU1RfQU5JTUFUSU9OX0ZSQU1FX1RJTUVSKQorCiB2b2lkIFdlYkNocm9tZUNsaWVu
dDo6c2NoZWR1bGVBbmltYXRpb24oKQogewogI2lmIFVTRShDT09SRElOQVRFRF9HUkFQSElDUykK
LSAgICBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPmxheWVyVHJlZUhvc3QoKS0+c2NoZWR1bGVBbmlt
YXRpb24oKTsKKyAgICBtX3BhZ2UuZHJhd2luZ0FyZWEoKS0+bGF5ZXJUcmVlSG9zdCgpLT5zY2hl
ZHVsZUFuaW1hdGlvbigpOwogI2VuZGlmCiB9CisKICNlbmRpZgogCiB2b2lkIFdlYkNocm9tZUNs
aWVudDo6ZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xzKGNvbnN0IFZlY3RvcjxSZWZQdHI8V2ViQ29y
ZTo6RWxlbWVudD4+JiBlbGVtZW50cykKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5pbmplY3RlZEJ1
bmRsZUZvcm1DbGllbnQoKS5kaWRBc3NvY2lhdGVGb3JtQ29udHJvbHMobV9wYWdlLCBlbGVtZW50
cyk7CisgICAgcmV0dXJuIG1fcGFnZS5pbmplY3RlZEJ1bmRsZUZvcm1DbGllbnQoKS5kaWRBc3Nv
Y2lhdGVGb3JtQ29udHJvbHMoJm1fcGFnZSwgZWxlbWVudHMpOwogfQogCiBib29sIFdlYkNocm9t
ZUNsaWVudDo6c2hvdWxkTm90aWZ5T25Gb3JtQ2hhbmdlcygpCiB7Ci0gICAgcmV0dXJuIG1fcGFn
ZS0+aW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCkuc2hvdWxkTm90aWZ5T25Gb3JtQ2hhbmdlcyht
X3BhZ2UpOworICAgIHJldHVybiBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCkuc2hv
dWxkTm90aWZ5T25Gb3JtQ2hhbmdlcygmbV9wYWdlKTsKIH0KIAogYm9vbCBXZWJDaHJvbWVDbGll
bnQ6OnNlbGVjdEl0ZW1Xcml0aW5nRGlyZWN0aW9uSXNOYXR1cmFsKCkKQEAgLTgxOSwzOSArODMx
LDQxIEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpoYXNPcGVuZWRQb3B1cCgpIGNvbnN0CiAKIFJl
ZlB0cjxXZWJDb3JlOjpQb3B1cE1lbnU+IFdlYkNocm9tZUNsaWVudDo6Y3JlYXRlUG9wdXBNZW51
KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCogY2xpZW50KSBjb25zdAogewotICAgIHJldHVybiBX
ZWJQb3B1cE1lbnU6OmNyZWF0ZShtX3BhZ2UsIGNsaWVudCk7CisgICAgcmV0dXJuIFdlYlBvcHVw
TWVudTo6Y3JlYXRlKCZtX3BhZ2UsIGNsaWVudCk7CiB9CiAKIFJlZlB0cjxXZWJDb3JlOjpTZWFy
Y2hQb3B1cE1lbnU+IFdlYkNocm9tZUNsaWVudDo6Y3JlYXRlU2VhcmNoUG9wdXBNZW51KFdlYkNv
cmU6OlBvcHVwTWVudUNsaWVudCogY2xpZW50KSBjb25zdAogewotICAgIHJldHVybiBXZWJTZWFy
Y2hQb3B1cE1lbnU6OmNyZWF0ZShtX3BhZ2UsIGNsaWVudCk7CisgICAgcmV0dXJuIFdlYlNlYXJj
aFBvcHVwTWVudTo6Y3JlYXRlKCZtX3BhZ2UsIGNsaWVudCk7CiB9CiAKIEdyYXBoaWNzTGF5ZXJG
YWN0b3J5KiBXZWJDaHJvbWVDbGllbnQ6OmdyYXBoaWNzTGF5ZXJGYWN0b3J5KCkgY29uc3QKIHsK
LSAgICBpZiAoYXV0byBkcmF3aW5nQXJlYSA9IG1fcGFnZS0+ZHJhd2luZ0FyZWEoKSkKKyAgICBp
ZiAoYXV0byBkcmF3aW5nQXJlYSA9IG1fcGFnZS5kcmF3aW5nQXJlYSgpKQogICAgICAgICByZXR1
cm4gZHJhd2luZ0FyZWEtPmdyYXBoaWNzTGF5ZXJGYWN0b3J5KCk7CiAgICAgcmV0dXJuIG51bGxw
dHI7CiB9CiAKICNpZiBVU0UoUkVRVUVTVF9BTklNQVRJT05fRlJBTUVfRElTUExBWV9NT05JVE9S
KQorCiBSZWZQdHI8V2ViQ29yZTo6RGlzcGxheVJlZnJlc2hNb25pdG9yPiBXZWJDaHJvbWVDbGll
bnQ6OmNyZWF0ZURpc3BsYXlSZWZyZXNoTW9uaXRvcihQbGF0Zm9ybURpc3BsYXlJRCBkaXNwbGF5
SUQpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+ZHJhd2luZ0FyZWEoKS0+Y3JlYXRlRGlz
cGxheVJlZnJlc2hNb25pdG9yKGRpc3BsYXlJRCk7CisgICAgcmV0dXJuIG1fcGFnZS5kcmF3aW5n
QXJlYSgpLT5jcmVhdGVEaXNwbGF5UmVmcmVzaE1vbml0b3IoZGlzcGxheUlEKTsKIH0KKwogI2Vu
ZGlmCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjphdHRhY2hSb290R3JhcGhpY3NMYXllcihGcmFt
ZSosIEdyYXBoaWNzTGF5ZXIqIGxheWVyKQogewogICAgIGlmIChsYXllcikKLSAgICAgICAgbV9w
YWdlLT5lbnRlckFjY2VsZXJhdGVkQ29tcG9zaXRpbmdNb2RlKGxheWVyKTsKKyAgICAgICAgbV9w
YWdlLmVudGVyQWNjZWxlcmF0ZWRDb21wb3NpdGluZ01vZGUobGF5ZXIpOwogICAgIGVsc2UKLSAg
ICAgICAgbV9wYWdlLT5leGl0QWNjZWxlcmF0ZWRDb21wb3NpdGluZ01vZGUoKTsKKyAgICAgICAg
bV9wYWdlLmV4aXRBY2NlbGVyYXRlZENvbXBvc2l0aW5nTW9kZSgpOwogfQogCiB2b2lkIFdlYkNo
cm9tZUNsaWVudDo6YXR0YWNoVmlld092ZXJsYXlHcmFwaGljc0xheWVyKEZyYW1lKiBmcmFtZSwg
R3JhcGhpY3NMYXllciogZ3JhcGhpY3NMYXllcikKIHsKLSAgICBpZiAoYXV0byBkcmF3aW5nQXJl
YSA9IG1fcGFnZS0+ZHJhd2luZ0FyZWEoKSkKKyAgICBpZiAoYXV0byBkcmF3aW5nQXJlYSA9IG1f
cGFnZS5kcmF3aW5nQXJlYSgpKQogICAgICAgICBkcmF3aW5nQXJlYS0+YXR0YWNoVmlld092ZXJs
YXlHcmFwaGljc0xheWVyKGZyYW1lLCBncmFwaGljc0xheWVyKTsKIH0KIApAQCAtODYyLDEyOCAr
ODc2LDEzNiBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0TmVlZHNPbmVTaG90RHJhd2luZ1N5
bmNocm9uaXphdGlvbigpCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzY2hlZHVsZUNvbXBvc2l0
aW5nTGF5ZXJGbHVzaCgpCiB7Ci0gICAgaWYgKG1fcGFnZS0+ZHJhd2luZ0FyZWEoKSkKLSAgICAg
ICAgbV9wYWdlLT5kcmF3aW5nQXJlYSgpLT5zY2hlZHVsZUNvbXBvc2l0aW5nTGF5ZXJGbHVzaCgp
OworICAgIGlmIChtX3BhZ2UuZHJhd2luZ0FyZWEoKSkKKyAgICAgICAgbV9wYWdlLmRyYXdpbmdB
cmVhKCktPnNjaGVkdWxlQ29tcG9zaXRpbmdMYXllckZsdXNoKCk7CiB9CiAKIGJvb2wgV2ViQ2hy
b21lQ2xpZW50OjphZGp1c3RMYXllckZsdXNoVGhyb3R0bGluZyhXZWJDb3JlOjpMYXllckZsdXNo
VGhyb3R0bGVTdGF0ZTo6RmxhZ3MgZmxhZ3MpCiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+ZHJhd2lu
Z0FyZWEoKSAmJiBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPmFkanVzdExheWVyRmx1c2hUaHJvdHRs
aW5nKGZsYWdzKTsKKyAgICByZXR1cm4gbV9wYWdlLmRyYXdpbmdBcmVhKCkgJiYgbV9wYWdlLmRy
YXdpbmdBcmVhKCktPmFkanVzdExheWVyRmx1c2hUaHJvdHRsaW5nKGZsYWdzKTsKIH0KIAogYm9v
bCBXZWJDaHJvbWVDbGllbnQ6OmxheWVyVHJlZVN0YXRlSXNGcm96ZW4oKSBjb25zdAogewotICAg
IGlmIChtX3BhZ2UtPmRyYXdpbmdBcmVhKCkpCi0gICAgICAgIHJldHVybiBtX3BhZ2UtPmRyYXdp
bmdBcmVhKCktPmxheWVyVHJlZVN0YXRlSXNGcm96ZW4oKTsKKyAgICBpZiAobV9wYWdlLmRyYXdp
bmdBcmVhKCkpCisgICAgICAgIHJldHVybiBtX3BhZ2UuZHJhd2luZ0FyZWEoKS0+bGF5ZXJUcmVl
U3RhdGVJc0Zyb3plbigpOwogCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCiAjaWYgRU5BQkxFKEFT
WU5DX1NDUk9MTElORykKKwogUGFzc1JlZlB0cjxTY3JvbGxpbmdDb29yZGluYXRvcj4gV2ViQ2hy
b21lQ2xpZW50OjpjcmVhdGVTY3JvbGxpbmdDb29yZGluYXRvcihQYWdlKiBwYWdlKSBjb25zdAog
ewotICAgIEFTU0VSVChtX3BhZ2UtPmNvcmVQYWdlKCkgPT0gcGFnZSk7Ci0gICAgaWYgKG1fcGFn
ZS0+ZHJhd2luZ0FyZWEoKS0+dHlwZSgpID09IERyYXdpbmdBcmVhVHlwZVJlbW90ZUxheWVyVHJl
ZSkKLSAgICAgICAgcmV0dXJuIFJlbW90ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yOjpjcmVhdGUobV9w
YWdlKTsKLQotICAgIHJldHVybiAwOworICAgIEFTU0VSVChtX3BhZ2UuY29yZVBhZ2UoKSA9PSBw
YWdlKTsKKyAgICBpZiAobV9wYWdlLmRyYXdpbmdBcmVhKCktPnR5cGUoKSAhPSBEcmF3aW5nQXJl
YVR5cGVSZW1vdGVMYXllclRyZWUpCisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIHJldHVy
biBSZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvcjo6Y3JlYXRlKCZtX3BhZ2UpOwogfQorCiAjZW5k
aWYKIAogI2lmIChQTEFURk9STShJT1MpICYmIEhBVkUoQVZLSVQpKSB8fCAoUExBVEZPUk0oTUFD
KSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpKQorCiBib29sIFdlYkNocm9tZUNs
aWVudDo6c3VwcG9ydHNWaWRlb0Z1bGxzY3JlZW4oV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVu
dW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIG1vZGUpCiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+dmlk
ZW9GdWxsc2NyZWVuTWFuYWdlcigpLnN1cHBvcnRzVmlkZW9GdWxsc2NyZWVuKG1vZGUpOworICAg
IHJldHVybiBtX3BhZ2UudmlkZW9GdWxsc2NyZWVuTWFuYWdlcigpLnN1cHBvcnRzVmlkZW9GdWxs
c2NyZWVuKG1vZGUpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0VXBQbGF5YmFja0Nv
bnRyb2xzTWFuYWdlcihXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50JiBtZWRpYUVsZW1lbnQpCiB7
Ci0gICAgbV9wYWdlLT5wbGF5YmFja1Nlc3Npb25NYW5hZ2VyKCkuc2V0VXBQbGF5YmFja0NvbnRy
b2xzTWFuYWdlcihtZWRpYUVsZW1lbnQpOworICAgIG1fcGFnZS5wbGF5YmFja1Nlc3Npb25NYW5h
Z2VyKCkuc2V0VXBQbGF5YmFja0NvbnRyb2xzTWFuYWdlcihtZWRpYUVsZW1lbnQpOwogfQogCiB2
b2lkIFdlYkNocm9tZUNsaWVudDo6Y2xlYXJQbGF5YmFja0NvbnRyb2xzTWFuYWdlcigpCiB7Ci0g
ICAgbV9wYWdlLT5wbGF5YmFja1Nlc3Npb25NYW5hZ2VyKCkuY2xlYXJQbGF5YmFja0NvbnRyb2xz
TWFuYWdlcigpOworICAgIG1fcGFnZS5wbGF5YmFja1Nlc3Npb25NYW5hZ2VyKCkuY2xlYXJQbGF5
YmFja0NvbnRyb2xzTWFuYWdlcigpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZW50ZXJW
aWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCYg
dmlkZW9FbGVtZW50LCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNj
cmVlbk1vZGUgbW9kZSkKIHsKICAgICBBU1NFUlQobW9kZSAhPSBIVE1MTWVkaWFFbGVtZW50RW51
bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGVOb25lKTsKLSAgICBtX3BhZ2UtPnZpZGVvRnVsbHNjcmVl
bk1hbmFnZXIoKS5lbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudCh2aWRlb0VsZW1l
bnQsIG1vZGUpOworICAgIG1fcGFnZS52aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyKCkuZW50ZXJWaWRl
b0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQodmlkZW9FbGVtZW50LCBtb2RlKTsKIH0KIAogdm9p
ZCBXZWJDaHJvbWVDbGllbnQ6OmV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoV2Vi
Q29yZTo6SFRNTFZpZGVvRWxlbWVudCYgdmlkZW9FbGVtZW50KQogewotICAgIG1fcGFnZS0+dmlk
ZW9GdWxsc2NyZWVuTWFuYWdlcigpLmV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQo
dmlkZW9FbGVtZW50KTsKKyAgICBtX3BhZ2UudmlkZW9GdWxsc2NyZWVuTWFuYWdlcigpLmV4aXRW
aWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQodmlkZW9FbGVtZW50KTsKIH0KIAorI2VuZGlm
CisKICNpZiBQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkK
Kwogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmV4aXRWaWRlb0Z1bGxzY3JlZW5Ub01vZGVXaXRob3V0
QW5pbWF0aW9uKFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmIHZpZGVvRWxlbWVudCwgSFRNTE1l
ZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIHRhcmdldE1vZGUpCiB7Ci0gICAg
bV9wYWdlLT52aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyKCkuZXhpdFZpZGVvRnVsbHNjcmVlblRvTW9k
ZVdpdGhvdXRBbmltYXRpb24odmlkZW9FbGVtZW50LCB0YXJnZXRNb2RlKTsKKyAgICBtX3BhZ2Uu
dmlkZW9GdWxsc2NyZWVuTWFuYWdlcigpLmV4aXRWaWRlb0Z1bGxzY3JlZW5Ub01vZGVXaXRob3V0
QW5pbWF0aW9uKHZpZGVvRWxlbWVudCwgdGFyZ2V0TW9kZSk7CiB9Ci0jZW5kaWYKIAogI2VuZGlm
Ci0gICAgCisKICNpZiBFTkFCTEUoRlVMTFNDUkVFTl9BUEkpCisKIGJvb2wgV2ViQ2hyb21lQ2xp
ZW50OjpzdXBwb3J0c0Z1bGxTY3JlZW5Gb3JFbGVtZW50KGNvbnN0IFdlYkNvcmU6OkVsZW1lbnQq
LCBib29sIHdpdGhLZXlib2FyZCkKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5mdWxsU2NyZWVuTWFu
YWdlcigpLT5zdXBwb3J0c0Z1bGxTY3JlZW4od2l0aEtleWJvYXJkKTsKKyAgICByZXR1cm4gbV9w
YWdlLmZ1bGxTY3JlZW5NYW5hZ2VyKCktPnN1cHBvcnRzRnVsbFNjcmVlbih3aXRoS2V5Ym9hcmQp
OwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZW50ZXJGdWxsU2NyZWVuRm9yRWxlbWVudChX
ZWJDb3JlOjpFbGVtZW50KiBlbGVtZW50KQogewotICAgIG1fcGFnZS0+ZnVsbFNjcmVlbk1hbmFn
ZXIoKS0+ZW50ZXJGdWxsU2NyZWVuRm9yRWxlbWVudChlbGVtZW50KTsKKyAgICBtX3BhZ2UuZnVs
bFNjcmVlbk1hbmFnZXIoKS0+ZW50ZXJGdWxsU2NyZWVuRm9yRWxlbWVudChlbGVtZW50KTsKIH0K
IAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmV4aXRGdWxsU2NyZWVuRm9yRWxlbWVudChXZWJDb3Jl
OjpFbGVtZW50KiBlbGVtZW50KQogewotICAgIG1fcGFnZS0+ZnVsbFNjcmVlbk1hbmFnZXIoKS0+
ZXhpdEZ1bGxTY3JlZW5Gb3JFbGVtZW50KGVsZW1lbnQpOworICAgIG1fcGFnZS5mdWxsU2NyZWVu
TWFuYWdlcigpLT5leGl0RnVsbFNjcmVlbkZvckVsZW1lbnQoZWxlbWVudCk7CiB9CisKICNlbmRp
ZgogCiAjaWYgUExBVEZPUk0oSU9TKQorCiBGbG9hdFNpemUgV2ViQ2hyb21lQ2xpZW50OjpzY3Jl
ZW5TaXplKCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5zY3JlZW5TaXplKCk7CisgICAg
cmV0dXJuIG1fcGFnZS5zY3JlZW5TaXplKCk7CiB9CiAKIEZsb2F0U2l6ZSBXZWJDaHJvbWVDbGll
bnQ6OmF2YWlsYWJsZVNjcmVlblNpemUoKSBjb25zdAogewotICAgIHJldHVybiBtX3BhZ2UtPmF2
YWlsYWJsZVNjcmVlblNpemUoKTsKKyAgICByZXR1cm4gbV9wYWdlLmF2YWlsYWJsZVNjcmVlblNp
emUoKTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpkaXNwYXRjaFZpZXdw
b3J0UHJvcGVydGllc0RpZENoYW5nZShjb25zdCBWaWV3cG9ydEFyZ3VtZW50cyYgdmlld3BvcnRB
cmd1bWVudHMpIGNvbnN0CiB7Ci0gICAgbV9wYWdlLT52aWV3cG9ydFByb3BlcnRpZXNEaWRDaGFu
Z2Uodmlld3BvcnRBcmd1bWVudHMpOworICAgIG1fcGFnZS52aWV3cG9ydFByb3BlcnRpZXNEaWRD
aGFuZ2Uodmlld3BvcnRBcmd1bWVudHMpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6bm90
aWZ5U2Nyb2xsZXJUaHVtYklzVmlzaWJsZUluUmVjdChjb25zdCBJbnRSZWN0JiBzY3JvbGxlclRo
dW1iKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpOb3RpZnlT
Y3JvbGxlclRodW1iSXNWaXNpYmxlSW5SZWN0KHNjcm9sbGVyVGh1bWIpKTsKKyAgICBtX3BhZ2Uu
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpOb3RpZnlTY3JvbGxlclRodW1iSXNWaXNpYmxl
SW5SZWN0KHNjcm9sbGVyVGh1bWIpKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJlY29t
bWVuZGVkU2Nyb2xsYmFyU3R5bGVEaWRDaGFuZ2UoU2Nyb2xsYmFyU3R5bGUgbmV3U3R5bGUpCiB7
Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJlY29tbWVuZGVkU2Ny
b2xsYmFyU3R5bGVEaWRDaGFuZ2Uoc3RhdGljX2Nhc3Q8aW50MzJfdD4obmV3U3R5bGUpKSk7Cisg
ICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UmVjb21tZW5kZWRTY3JvbGxi
YXJTdHlsZURpZENoYW5nZShzdGF0aWNfY2FzdDxpbnQzMl90PihuZXdTdHlsZSkpKTsKIH0KIAog
c3RkOjpvcHRpb25hbDxTY3JvbGxiYXJPdmVybGF5U3R5bGU+IFdlYkNocm9tZUNsaWVudDo6cHJl
ZmVycmVkU2Nyb2xsYmFyT3ZlcmxheVN0eWxlKCkKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5zY3Jv
bGxiYXJPdmVybGF5U3R5bGUoKTsgCisgICAgcmV0dXJuIG1fcGFnZS5zY3JvbGxiYXJPdmVybGF5
U3R5bGUoKTsKIH0KIAogQ29sb3IgV2ViQ2hyb21lQ2xpZW50Ojp1bmRlcmxheUNvbG9yKCkgY29u
c3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT51bmRlcmxheUNvbG9yKCk7CisgICAgcmV0dXJuIG1f
cGFnZS51bmRlcmxheUNvbG9yKCk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpwYWdlRXh0
ZW5kZWRCYWNrZ3JvdW5kQ29sb3JEaWRDaGFuZ2UoQ29sb3IgYmFja2dyb3VuZENvbG9yKSBjb25z
dAogewogI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oRUZMKQotICAgIG1fcGFnZS0+c2Vu
ZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQYWdlRXh0ZW5kZWRCYWNrZ3JvdW5kQ29sb3JEaWRD
aGFuZ2UoYmFja2dyb3VuZENvbG9yKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6UGFnZUV4dGVuZGVkQmFja2dyb3VuZENvbG9yRGlkQ2hhbmdlKGJhY2tncm91bmRD
b2xvcikpOwogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0oYmFja2dyb3VuZENvbG9yKTsKICNlbmRp
ZgpAQCAtOTkxLDQzICsxMDEzLDQzIEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpwYWdlRXh0ZW5k
ZWRCYWNrZ3JvdW5kQ29sb3JEaWRDaGFuZ2UoQ29sb3IgYmFja2dyb3VuZENvbG9yCiAKIHZvaWQg
V2ViQ2hyb21lQ2xpZW50Ojp3aGVlbEV2ZW50SGFuZGxlcnNDaGFuZ2VkKGJvb2wgaGFzSGFuZGxl
cnMpCiB7Ci0gICAgbV9wYWdlLT53aGVlbEV2ZW50SGFuZGxlcnNDaGFuZ2VkKGhhc0hhbmRsZXJz
KTsKKyAgICBtX3BhZ2Uud2hlZWxFdmVudEhhbmRsZXJzQ2hhbmdlZChoYXNIYW5kbGVycyk7CiB9
CiAKIFN0cmluZyBXZWJDaHJvbWVDbGllbnQ6OnBsdWdJblN0YXJ0TGFiZWxUaXRsZShjb25zdCBT
dHJpbmcmIG1pbWVUeXBlKSBjb25zdAogewotICAgIHJldHVybiBtX3BhZ2UtPmluamVjdGVkQnVu
ZGxlVUlDbGllbnQoKS5wbHVnSW5TdGFydExhYmVsVGl0bGUobWltZVR5cGUpOworICAgIHJldHVy
biBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLnBsdWdJblN0YXJ0TGFiZWxUaXRsZSht
aW1lVHlwZSk7CiB9CiAKIFN0cmluZyBXZWJDaHJvbWVDbGllbnQ6OnBsdWdJblN0YXJ0TGFiZWxT
dWJ0aXRsZShjb25zdCBTdHJpbmcmIG1pbWVUeXBlKSBjb25zdAogewotICAgIHJldHVybiBtX3Bh
Z2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5wbHVnSW5TdGFydExhYmVsU3VidGl0bGUobWlt
ZVR5cGUpOworICAgIHJldHVybiBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLnBsdWdJ
blN0YXJ0TGFiZWxTdWJ0aXRsZShtaW1lVHlwZSk7CiB9CiAKIFN0cmluZyBXZWJDaHJvbWVDbGll
bnQ6OnBsdWdJbkV4dHJhU3R5bGVTaGVldCgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+
aW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLnBsdWdJbkV4dHJhU3R5bGVTaGVldCgpOworICAgIHJl
dHVybiBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLnBsdWdJbkV4dHJhU3R5bGVTaGVl
dCgpOwogfQogCiBTdHJpbmcgV2ViQ2hyb21lQ2xpZW50OjpwbHVnSW5FeHRyYVNjcmlwdCgpIGNv
bnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLnBsdWdJ
bkV4dHJhU2NyaXB0KCk7CisgICAgcmV0dXJuIG1fcGFnZS5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50
KCkucGx1Z0luRXh0cmFTY3JpcHQoKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmVuYWJs
ZVN1ZGRlblRlcm1pbmF0aW9uKCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBy
b2Nlc3NQcm94eTo6RW5hYmxlU3VkZGVuVGVybWluYXRpb24oKSk7CisgICAgbV9wYWdlLnNlbmQo
TWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6RW5hYmxlU3VkZGVuVGVybWluYXRpb24oKSk7CiB9
CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpkaXNhYmxlU3VkZGVuVGVybWluYXRpb24oKQogewot
ICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUHJvY2Vzc1Byb3h5OjpEaXNhYmxlU3VkZGVu
VGVybWluYXRpb24oKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlByb2Nlc3NQcm94
eTo6RGlzYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVu
dDo6ZGlkQWRkSGVhZGVyTGF5ZXIoR3JhcGhpY3NMYXllciogaGVhZGVyUGFyZW50KQogewogI2lm
IEVOQUJMRShSVUJCRVJfQkFORElORykKLSAgICBpZiAoUGFnZUJhbm5lciogYmFubmVyID0gbV9w
YWdlLT5oZWFkZXJQYWdlQmFubmVyKCkpCisgICAgaWYgKFBhZ2VCYW5uZXIqIGJhbm5lciA9IG1f
cGFnZS5oZWFkZXJQYWdlQmFubmVyKCkpCiAgICAgICAgIGJhbm5lci0+ZGlkQWRkUGFyZW50TGF5
ZXIoaGVhZGVyUGFyZW50KTsKICNlbHNlCiAgICAgVU5VU0VEX1BBUkFNKGhlYWRlclBhcmVudCk7
CkBAIC0xMDM3LDcgKzEwNTksNyBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZGlkQWRkSGVhZGVy
TGF5ZXIoR3JhcGhpY3NMYXllciogaGVhZGVyUGFyZW50KQogdm9pZCBXZWJDaHJvbWVDbGllbnQ6
OmRpZEFkZEZvb3RlckxheWVyKEdyYXBoaWNzTGF5ZXIqIGZvb3RlclBhcmVudCkKIHsKICNpZiBF
TkFCTEUoUlVCQkVSX0JBTkRJTkcpCi0gICAgaWYgKFBhZ2VCYW5uZXIqIGJhbm5lciA9IG1fcGFn
ZS0+Zm9vdGVyUGFnZUJhbm5lcigpKQorICAgIGlmIChQYWdlQmFubmVyKiBiYW5uZXIgPSBtX3Bh
Z2UuZm9vdGVyUGFnZUJhbm5lcigpKQogICAgICAgICBiYW5uZXItPmRpZEFkZFBhcmVudExheWVy
KGZvb3RlclBhcmVudCk7CiAjZWxzZQogICAgIFVOVVNFRF9QQVJBTShmb290ZXJQYXJlbnQpOwpA
QCAtMTA0NiwzNiArMTA2OCwzOSBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZGlkQWRkRm9vdGVy
TGF5ZXIoR3JhcGhpY3NMYXllciogZm9vdGVyUGFyZW50KQogCiBib29sIFdlYkNocm9tZUNsaWVu
dDo6c2hvdWxkVXNlVGlsZWRCYWNraW5nRm9yRnJhbWVWaWV3KGNvbnN0IEZyYW1lVmlldyogZnJh
bWVWaWV3KSBjb25zdAogewotICAgIHJldHVybiBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPnNob3Vs
ZFVzZVRpbGVkQmFja2luZ0ZvckZyYW1lVmlldyhmcmFtZVZpZXcpOworICAgIHJldHVybiBtX3Bh
Z2UuZHJhd2luZ0FyZWEoKS0+c2hvdWxkVXNlVGlsZWRCYWNraW5nRm9yRnJhbWVWaWV3KGZyYW1l
Vmlldyk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojppc1BsYXlpbmdNZWRpYURpZENoYW5n
ZShXZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpNZWRpYVN0YXRlRmxhZ3Mgc3RhdGUsIHVpbnQ2NF90
IHNvdXJjZUVsZW1lbnRJRCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6SXNQbGF5aW5nTWVkaWFEaWRDaGFuZ2Uoc3RhdGUsIHNvdXJjZUVsZW1lbnRJRCkpOwor
ICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OklzUGxheWluZ01lZGlhRGlk
Q2hhbmdlKHN0YXRlLCBzb3VyY2VFbGVtZW50SUQpKTsKIH0KIAogI2lmIEVOQUJMRShNRURJQV9T
RVNTSU9OKQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6aGFzTWVkaWFTZXNzaW9uV2l0aEFjdGl2
ZU1lZGlhRWxlbWVudHNEaWRDaGFuZ2UoYm9vbCBzdGF0ZSkKIHsKLSAgICBtX3BhZ2UtPnNlbmQo
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6SGFzTWVkaWFTZXNzaW9uV2l0aEFjdGl2ZU1lZGlhRWxl
bWVudHNEaWRDaGFuZ2Uoc3RhdGUpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFn
ZVByb3h5OjpIYXNNZWRpYVNlc3Npb25XaXRoQWN0aXZlTWVkaWFFbGVtZW50c0RpZENoYW5nZShz
dGF0ZSkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6bWVkaWFTZXNzaW9uTWV0YWRhdGFE
aWRDaGFuZ2UoY29uc3QgV2ViQ29yZTo6TWVkaWFTZXNzaW9uTWV0YWRhdGEmIG1ldGFkYXRhKQog
ewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpNZWRpYVNlc3Npb25N
ZXRhZGF0YURpZENoYW5nZShtZXRhZGF0YSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6Ok1lZGlhU2Vzc2lvbk1ldGFkYXRhRGlkQ2hhbmdlKG1ldGFkYXRhKSk7CiB9
CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpmb2N1c2VkQ29udGVudE1lZGlhRWxlbWVudERpZENo
YW5nZSh1aW50NjRfdCBlbGVtZW50SUQpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OkZvY3VzZWRDb250ZW50TWVkaWFFbGVtZW50RGlkQ2hhbmdlKGVsZW1lbnRJ
RCkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZvY3VzZWRDb250
ZW50TWVkaWFFbGVtZW50RGlkQ2hhbmdlKGVsZW1lbnRJRCkpOwogfQorCiAjZW5kaWYKIAogI2lm
IEVOQUJMRShTVUJUTEVfQ1JZUFRPKQorCiBib29sIFdlYkNocm9tZUNsaWVudDo6d3JhcENyeXB0
b0tleShjb25zdCBWZWN0b3I8dWludDhfdD4mIGtleSwgVmVjdG9yPHVpbnQ4X3Q+JiB3cmFwcGVk
S2V5KSBjb25zdAogewogICAgIGJvb2wgc3VjY2VlZGVkOwotICAgIGlmICghV2ViUHJvY2Vzczo6
c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6V3JhcENyeXB0b0tleShrZXkpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjpXcmFwQ3J5cHRvS2V5OjpSZXBseShzdWNjZWVkZWQsIHdyYXBwZWRLZXkpLCBtX3BhZ2UtPnBh
Z2VJRCgpKSkKKyAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3ND
b25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OldyYXBDcnlwdG9L
ZXkoa2V5KSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6V3JhcENyeXB0b0tleTo6UmVwbHkoc3Vj
Y2VlZGVkLCB3cmFwcGVkS2V5KSwgbV9wYWdlLnBhZ2VJRCgpKSkKICAgICAgICAgcmV0dXJuIGZh
bHNlOwogICAgIHJldHVybiBzdWNjZWVkZWQ7CiB9CkBAIC0xMDgzLDM0ICsxMTA4LDM5IEBAIGJv
b2wgV2ViQ2hyb21lQ2xpZW50Ojp3cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90PiYg
a2V5LCBWZWN0b3I8dWludDhfdD4mCiBib29sIFdlYkNocm9tZUNsaWVudDo6dW53cmFwQ3J5cHRv
S2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90PiYgd3JhcHBlZEtleSwgVmVjdG9yPHVpbnQ4X3Q+JiBr
ZXkpIGNvbnN0CiB7CiAgICAgYm9vbCBzdWNjZWVkZWQ7Ci0gICAgaWYgKCFXZWJQcm9jZXNzOjpz
aW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6
V2ViUGFnZVByb3h5OjpVbndyYXBDcnlwdG9LZXkod3JhcHBlZEtleSksIE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OlVud3JhcENyeXB0b0tleTo6UmVwbHkoc3VjY2VlZGVkLCBrZXkpLCBtX3BhZ2Ut
PnBhZ2VJRCgpKSkKKyAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nl
c3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlVud3JhcENy
eXB0b0tleSh3cmFwcGVkS2V5KSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6VW53cmFwQ3J5cHRv
S2V5OjpSZXBseShzdWNjZWVkZWQsIGtleSksIG1fcGFnZS5wYWdlSUQoKSkpCiAgICAgICAgIHJl
dHVybiBmYWxzZTsKICAgICByZXR1cm4gc3VjY2VlZGVkOwogfQorCiAjZW5kaWYKIAogI2lmIEVO
QUJMRShURUxFUEhPTkVfTlVNQkVSX0RFVEVDVElPTikgJiYgUExBVEZPUk0oTUFDKQorCiB2b2lk
IFdlYkNocm9tZUNsaWVudDo6aGFuZGxlVGVsZXBob25lTnVtYmVyQ2xpY2soY29uc3QgU3RyaW5n
JiBudW1iZXIsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBwb2ludCkKIHsKLSAgICBtX3BhZ2Ut
PmhhbmRsZVRlbGVwaG9uZU51bWJlckNsaWNrKG51bWJlciwgcG9pbnQpOworICAgIG1fcGFnZS5o
YW5kbGVUZWxlcGhvbmVOdW1iZXJDbGljayhudW1iZXIsIHBvaW50KTsKIH0KKwogI2VuZGlmCiAK
ICNpZiBFTkFCTEUoU0VSVklDRV9DT05UUk9MUykKKwogdm9pZCBXZWJDaHJvbWVDbGllbnQ6Omhh
bmRsZVNlbGVjdGlvblNlcnZpY2VDbGljayhXZWJDb3JlOjpGcmFtZVNlbGVjdGlvbiYgc2VsZWN0
aW9uLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgdGVsZXBob25lTnVtYmVycywgY29uc3QgV2ViQ29y
ZTo6SW50UG9pbnQmIHBvaW50KQogewotICAgIG1fcGFnZS0+aGFuZGxlU2VsZWN0aW9uU2Vydmlj
ZUNsaWNrKHNlbGVjdGlvbiwgdGVsZXBob25lTnVtYmVycywgcG9pbnQpOworICAgIG1fcGFnZS5o
YW5kbGVTZWxlY3Rpb25TZXJ2aWNlQ2xpY2soc2VsZWN0aW9uLCB0ZWxlcGhvbmVOdW1iZXJzLCBw
b2ludCk7CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpoYXNSZWxldmFudFNlbGVjdGlvblNl
cnZpY2VzKGJvb2wgaXNUZXh0T25seSkgY29uc3QKIHsKICAgICByZXR1cm4gKGlzVGV4dE9ubHkg
JiYgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuaGFzU2VsZWN0aW9uU2VydmljZXMoKSkgfHwgV2Vi
UHJvY2Vzczo6c2luZ2xldG9uKCkuaGFzUmljaENvbnRlbnRTZXJ2aWNlcygpOwogfQorCiAjZW5k
aWYKIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnNob3VsZERpc3BhdGNoRmFrZU1vdXNlTW92ZUV2
ZW50cygpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+c2hvdWxkRGlzcGF0Y2hGYWtlTW91
c2VNb3ZlRXZlbnRzKCk7CisgICAgcmV0dXJuIG1fcGFnZS5zaG91bGREaXNwYXRjaEZha2VNb3Vz
ZU1vdmVFdmVudHMoKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmhhbmRsZUF1dG9GaWxs
QnV0dG9uQ2xpY2soSFRNTElucHV0RWxlbWVudCYgaW5wdXRFbGVtZW50KQpAQCAtMTExOSw2NCAr
MTE0OSw2NSBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6aGFuZGxlQXV0b0ZpbGxCdXR0b25DbGlj
ayhIVE1MSW5wdXRFbGVtZW50JiBpbnB1dEVsZW1lbnQpCiAKICAgICAvLyBOb3RpZnkgdGhlIGJ1
bmRsZSBjbGllbnQuCiAgICAgYXV0byBub2RlSGFuZGxlID0gSW5qZWN0ZWRCdW5kbGVOb2RlSGFu
ZGxlOjpnZXRPckNyZWF0ZShpbnB1dEVsZW1lbnQpOwotICAgIG1fcGFnZS0+aW5qZWN0ZWRCdW5k
bGVVSUNsaWVudCgpLmRpZENsaWNrQXV0b0ZpbGxCdXR0b24oKm1fcGFnZSwgbm9kZUhhbmRsZS5n
ZXQoKSwgdXNlckRhdGEpOworICAgIG1fcGFnZS5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkuZGlk
Q2xpY2tBdXRvRmlsbEJ1dHRvbihtX3BhZ2UsIG5vZGVIYW5kbGUuZ2V0KCksIHVzZXJEYXRhKTsK
IAogICAgIC8vIE5vdGlmeSB0aGUgVUlQcm9jZXNzLgotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdl
czo6V2ViUGFnZVByb3h5OjpIYW5kbGVBdXRvRmlsbEJ1dHRvbkNsaWNrKFVzZXJEYXRhKFdlYlBy
b2Nlc3M6OnNpbmdsZXRvbigpLnRyYW5zZm9ybU9iamVjdHNUb0hhbmRsZXModXNlckRhdGEuZ2V0
KCkpLmdldCgpKSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6Okhh
bmRsZUF1dG9GaWxsQnV0dG9uQ2xpY2soVXNlckRhdGEoV2ViUHJvY2Vzczo6c2luZ2xldG9uKCku
dHJhbnNmb3JtT2JqZWN0c1RvSGFuZGxlcyh1c2VyRGF0YS5nZXQoKSkuZ2V0KCkpKSk7CiB9CiAK
ICNpZiBFTkFCTEUoV0lSRUxFU1NfUExBWUJBQ0tfVEFSR0VUKSAmJiAhUExBVEZPUk0oSU9TKQor
CiB2b2lkIFdlYkNocm9tZUNsaWVudDo6YWRkUGxheWJhY2tUYXJnZXRQaWNrZXJDbGllbnQodWlu
dDY0X3QgY29udGV4dElkKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpBZGRQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudChjb250ZXh0SWQpKTsKKyAgICBtX3Bh
Z2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpBZGRQbGF5YmFja1RhcmdldFBpY2tlckNs
aWVudChjb250ZXh0SWQpKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJlbW92ZVBsYXli
YWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2NF90IGNvbnRleHRJZCkKIHsKLSAgICBtX3BhZ2Ut
PnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UmVtb3ZlUGxheWJhY2tUYXJnZXRQaWNrZXJD
bGllbnQoY29udGV4dElkKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94
eTo6UmVtb3ZlUGxheWJhY2tUYXJnZXRQaWNrZXJDbGllbnQoY29udGV4dElkKSk7CiB9CiAKLQog
dm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNob3dQbGF5YmFja1RhcmdldFBpY2tlcih1aW50NjRfdCBj
b250ZXh0SWQsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBwb3NpdGlvbiwgYm9vbCBpc1ZpZGVv
KQogewotICAgIEZyYW1lVmlldyogZnJhbWVWaWV3ID0gbV9wYWdlLT5tYWluRnJhbWUoKS0+dmll
dygpOworICAgIEZyYW1lVmlldyogZnJhbWVWaWV3ID0gbV9wYWdlLm1haW5GcmFtZSgpLT52aWV3
KCk7CiAgICAgRmxvYXRSZWN0IHJlY3QoZnJhbWVWaWV3LT5jb250ZW50c1RvUm9vdFZpZXcoZnJh
bWVWaWV3LT53aW5kb3dUb0NvbnRlbnRzKHBvc2l0aW9uKSksIEZsb2F0U2l6ZSgpKTsKLSAgICBt
X3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2hvd1BsYXliYWNrVGFyZ2V0UGlj
a2VyKGNvbnRleHRJZCwgcmVjdCwgaXNWaWRlbykpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6OlNob3dQbGF5YmFja1RhcmdldFBpY2tlcihjb250ZXh0SWQsIHJlY3Qs
IGlzVmlkZW8pKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnBsYXliYWNrVGFyZ2V0UGlj
a2VyQ2xpZW50U3RhdGVEaWRDaGFuZ2UodWludDY0X3QgY29udGV4dElkLCBXZWJDb3JlOjpNZWRp
YVByb2R1Y2VyOjpNZWRpYVN0YXRlRmxhZ3Mgc3RhdGUpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1l
c3NhZ2VzOjpXZWJQYWdlUHJveHk6OlBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50U3RhdGVEaWRD
aGFuZ2UoY29udGV4dElkLCBzdGF0ZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OlBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50U3RhdGVEaWRDaGFuZ2UoY29udGV4
dElkLCBzdGF0ZSkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0TW9ja01lZGlhUGxh
eWJhY2tUYXJnZXRQaWNrZXJFbmFibGVkKGJvb2wgZW5hYmxlZCkKIHsKLSAgICBtX3BhZ2UtPnNl
bmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0TW9ja01lZGlhUGxheWJhY2tUYXJnZXRQaWNr
ZXJFbmFibGVkKGVuYWJsZWQpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpTZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVuYWJsZWQoZW5hYmxlZCkpOwog
fQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0TW9ja01lZGlhUGxheWJhY2tUYXJnZXRQaWNr
ZXJTdGF0ZShjb25zdCBTdHJpbmcmIG5hbWUsIFdlYkNvcmU6Ok1lZGlhUGxheWJhY2tUYXJnZXRD
b250ZXh0OjpTdGF0ZSBzdGF0ZSkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6U2V0TW9ja01lZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJTdGF0ZShuYW1lLCBzdGF0
ZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldE1vY2tNZWRp
YVBsYXliYWNrVGFyZ2V0UGlja2VyU3RhdGUobmFtZSwgc3RhdGUpKTsKIH0KKwogI2VuZGlmCiAK
IHZvaWQgV2ViQ2hyb21lQ2xpZW50OjppbWFnZU9yTWVkaWFEb2N1bWVudFNpemVDaGFuZ2VkKGNv
bnN0IFdlYkNvcmU6OkludFNpemUmIG5ld1NpemUpCiB7Ci0gICAgbV9wYWdlLT5pbWFnZU9yTWVk
aWFEb2N1bWVudFNpemVDaGFuZ2VkKG5ld1NpemUpOworICAgIG1fcGFnZS5pbWFnZU9yTWVkaWFE
b2N1bWVudFNpemVDaGFuZ2VkKG5ld1NpemUpOwogfQogCi0jaWYgRU5BQkxFKFZJREVPKQotI2lm
IFVTRShHU1RSRUFNRVIpCisjaWYgRU5BQkxFKFZJREVPKSAmJiBVU0UoR1NUUkVBTUVSKQorCiB2
b2lkIFdlYkNocm9tZUNsaWVudDo6cmVxdWVzdEluc3RhbGxNaXNzaW5nTWVkaWFQbHVnaW5zKGNv
bnN0IFN0cmluZyYgZGV0YWlscywgY29uc3QgU3RyaW5nJiBkZXNjcmlwdGlvbiwgV2ViQ29yZTo6
TWVkaWFQbGF5ZXJSZXF1ZXN0SW5zdGFsbE1pc3NpbmdQbHVnaW5zQ2FsbGJhY2smIGNhbGxiYWNr
KQogewotICAgIG1fcGFnZS0+cmVxdWVzdEluc3RhbGxNaXNzaW5nTWVkaWFQbHVnaW5zKGRldGFp
bHMsIGRlc2NyaXB0aW9uLCBjYWxsYmFjayk7CisgICAgbV9wYWdlLnJlcXVlc3RJbnN0YWxsTWlz
c2luZ01lZGlhUGx1Z2lucyhkZXRhaWxzLCBkZXNjcmlwdGlvbiwgY2FsbGJhY2spOwogfQorCiAj
ZW5kaWYKLSNlbmRpZiAvLyBFTkFCTEUoVklERU8pCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpk
aWRJbnZhbGlkYXRlRG9jdW1lbnRNYXJrZXJSZWN0cygpCiB7Ci0gICAgbV9wYWdlLT5maW5kQ29u
dHJvbGxlcigpLmRpZEludmFsaWRhdGVEb2N1bWVudE1hcmtlclJlY3RzKCk7CisgICAgbV9wYWdl
LmZpbmRDb250cm9sbGVyKCkuZGlkSW52YWxpZGF0ZURvY3VtZW50TWFya2VyUmVjdHMoKTsKIH0K
IAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oIGIvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaAppbmRleCBhZjkwYjM4
ZGQ5NWYzMmFmNDhhNDU4N2JhMjdmMmZiYzVkN2Q2YjFkLi5kNGE5OTFiMjc0ODYwZmZjMzJkZjM0
ZTBmMWJjNDczN2FhYjkwZTAwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmgKQEAgLTI2LDE5OCArMjYs
MTk2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaW5jbHVkZSAiV2ViRnJhbWUuaCIKICNpbmNsdWRl
IDxXZWJDb3JlL0Nocm9tZUNsaWVudC5oPgotI2luY2x1ZGUgPFdlYkNvcmUvVmlld3BvcnRBcmd1
bWVudHMuaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdl
YktpdCB7CiAKK2NsYXNzIFdlYkZyYW1lOwogY2xhc3MgV2ViUGFnZTsKIAotY2xhc3MgV2ViQ2hy
b21lQ2xpZW50IDogcHVibGljIFdlYkNvcmU6OkNocm9tZUNsaWVudCB7CitjbGFzcyBXZWJDaHJv
bWVDbGllbnQgZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6Q2hyb21lQ2xpZW50IHsKIHB1YmxpYzoK
LSAgICBXZWJDaHJvbWVDbGllbnQoV2ViUGFnZSogcGFnZSkKLSAgICAgICAgOiBtX2NhY2hlZE1h
aW5GcmFtZUhhc0hvcml6b250YWxTY3JvbGxiYXIoZmFsc2UpCi0gICAgICAgICwgbV9jYWNoZWRN
YWluRnJhbWVIYXNWZXJ0aWNhbFNjcm9sbGJhcihmYWxzZSkKLSAgICAgICAgLCBtX3BhZ2UocGFn
ZSkKLSAgICB7Ci0gICAgfQotICAgIAotICAgIFdlYlBhZ2UqIHBhZ2UoKSBjb25zdCB7IHJldHVy
biBtX3BhZ2U7IH0KKyAgICBXZWJDaHJvbWVDbGllbnQoV2ViUGFnZSYpOwogCi0gICAgdmlydHVh
bCB2b2lkKiB3ZWJWaWV3KCkgY29uc3QgeyByZXR1cm4gMDsgfQorICAgIFdlYlBhZ2UmIHBhZ2Uo
KSBjb25zdCB7IHJldHVybiBtX3BhZ2U7IH0KIAogcHJpdmF0ZToKLSAgICB2b2lkIGNocm9tZURl
c3Ryb3llZCgpIG92ZXJyaWRlOworICAgIH5XZWJDaHJvbWVDbGllbnQoKTsKKworICAgIHZvaWQg
Y2hyb21lRGVzdHJveWVkKCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBzZXRXaW5kb3dSZWN0KGNv
bnN0IFdlYkNvcmU6OkZsb2F0UmVjdCYpIG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OkZsb2F0UmVj
dCB3aW5kb3dSZWN0KCkgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRXaW5kb3dSZWN0KGNvbnN0IFdl
YkNvcmU6OkZsb2F0UmVjdCYpIGZpbmFsOworICAgIFdlYkNvcmU6OkZsb2F0UmVjdCB3aW5kb3dS
ZWN0KCkgZmluYWw7CiAgICAgCi0gICAgV2ViQ29yZTo6RmxvYXRSZWN0IHBhZ2VSZWN0KCkgb3Zl
cnJpZGU7CisgICAgV2ViQ29yZTo6RmxvYXRSZWN0IHBhZ2VSZWN0KCkgZmluYWw7CiAgICAgCi0g
ICAgdm9pZCBmb2N1cygpIG92ZXJyaWRlOwotICAgIHZvaWQgdW5mb2N1cygpIG92ZXJyaWRlOwor
ICAgIHZvaWQgZm9jdXMoKSBmaW5hbDsKKyAgICB2b2lkIHVuZm9jdXMoKSBmaW5hbDsKICAgICAK
LSAgICBib29sIGNhblRha2VGb2N1cyhXZWJDb3JlOjpGb2N1c0RpcmVjdGlvbikgb3ZlcnJpZGU7
Ci0gICAgdm9pZCB0YWtlRm9jdXMoV2ViQ29yZTo6Rm9jdXNEaXJlY3Rpb24pIG92ZXJyaWRlOwor
ICAgIGJvb2wgY2FuVGFrZUZvY3VzKFdlYkNvcmU6OkZvY3VzRGlyZWN0aW9uKSBmaW5hbDsKKyAg
ICB2b2lkIHRha2VGb2N1cyhXZWJDb3JlOjpGb2N1c0RpcmVjdGlvbikgZmluYWw7CiAKLSAgICB2
b2lkIGZvY3VzZWRFbGVtZW50Q2hhbmdlZChXZWJDb3JlOjpFbGVtZW50Kikgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBmb2N1c2VkRnJhbWVDaGFuZ2VkKFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7Cisg
ICAgdm9pZCBmb2N1c2VkRWxlbWVudENoYW5nZWQoV2ViQ29yZTo6RWxlbWVudCopIGZpbmFsOwor
ICAgIHZvaWQgZm9jdXNlZEZyYW1lQ2hhbmdlZChXZWJDb3JlOjpGcmFtZSopIGZpbmFsOwogCiAg
ICAgLy8gVGhlIEZyYW1lIHBvaW50ZXIgcHJvdmlkZXMgdGhlIENocm9tZUNsaWVudCB3aXRoIGNv
bnRleHQgYWJvdXQgd2hpY2gKICAgICAvLyBGcmFtZSB3YW50cyB0byBjcmVhdGUgdGhlIG5ldyBQ
YWdlLiAgQWxzbywgdGhlIG5ld2x5IGNyZWF0ZWQgd2luZG93CiAgICAgLy8gc2hvdWxkIG5vdCBi
ZSBzaG93biB0byB0aGUgdXNlciB1bnRpbCB0aGUgQ2hyb21lQ2xpZW50IG9mIHRoZSBuZXdseQog
ICAgIC8vIGNyZWF0ZWQgUGFnZSBoYXMgaXRzIHNob3cgbWV0aG9kIGNhbGxlZC4KLSAgICBXZWJD
b3JlOjpQYWdlKiBjcmVhdGVXaW5kb3coV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXZWJDb3JlOjpG
cmFtZUxvYWRSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6V2luZG93RmVhdHVyZXMmLCBjb25zdCBX
ZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzaG93KCkgb3Zl
cnJpZGU7CisgICAgV2ViQ29yZTo6UGFnZSogY3JlYXRlV2luZG93KFdlYkNvcmU6OkZyYW1lKiwg
Y29uc3QgV2ViQ29yZTo6RnJhbWVMb2FkUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OldpbmRvd0Zl
YXR1cmVzJiwgY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYpIGZpbmFsOworICAgIHZv
aWQgc2hvdygpIGZpbmFsOwogICAgIAotICAgIGJvb2wgY2FuUnVuTW9kYWwoKSBvdmVycmlkZTsK
LSAgICB2b2lkIHJ1bk1vZGFsKCkgb3ZlcnJpZGU7CisgICAgYm9vbCBjYW5SdW5Nb2RhbCgpIGZp
bmFsOworICAgIHZvaWQgcnVuTW9kYWwoKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHNldFRvb2xi
YXJzVmlzaWJsZShib29sKSBvdmVycmlkZTsKLSAgICBib29sIHRvb2xiYXJzVmlzaWJsZSgpIG92
ZXJyaWRlOworICAgIHZvaWQgc2V0VG9vbGJhcnNWaXNpYmxlKGJvb2wpIGZpbmFsOworICAgIGJv
b2wgdG9vbGJhcnNWaXNpYmxlKCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBzZXRTdGF0dXNiYXJW
aXNpYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJvb2wgc3RhdHVzYmFyVmlzaWJsZSgpIG92ZXJy
aWRlOworICAgIHZvaWQgc2V0U3RhdHVzYmFyVmlzaWJsZShib29sKSBmaW5hbDsKKyAgICBib29s
IHN0YXR1c2JhclZpc2libGUoKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHNldFNjcm9sbGJhcnNW
aXNpYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJvb2wgc2Nyb2xsYmFyc1Zpc2libGUoKSBvdmVy
cmlkZTsKKyAgICB2b2lkIHNldFNjcm9sbGJhcnNWaXNpYmxlKGJvb2wpIGZpbmFsOworICAgIGJv
b2wgc2Nyb2xsYmFyc1Zpc2libGUoKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHNldE1lbnViYXJW
aXNpYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJvb2wgbWVudWJhclZpc2libGUoKSBvdmVycmlk
ZTsKKyAgICB2b2lkIHNldE1lbnViYXJWaXNpYmxlKGJvb2wpIGZpbmFsOworICAgIGJvb2wgbWVu
dWJhclZpc2libGUoKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHNldFJlc2l6YWJsZShib29sKSBv
dmVycmlkZTsKKyAgICB2b2lkIHNldFJlc2l6YWJsZShib29sKSBmaW5hbDsKICAgICAKLSAgICB2
b2lkIGFkZE1lc3NhZ2VUb0NvbnNvbGUoSlNDOjpNZXNzYWdlU291cmNlLCBKU0M6Ok1lc3NhZ2VM
ZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCB1bnNpZ25lZCBsaW5lTnVtYmVyLCB1bnNpZ25l
ZCBjb2x1bW5OdW1iZXIsIGNvbnN0IFN0cmluZyYgc291cmNlSUQpIG92ZXJyaWRlOworICAgIHZv
aWQgYWRkTWVzc2FnZVRvQ29uc29sZShKU0M6Ok1lc3NhZ2VTb3VyY2UsIEpTQzo6TWVzc2FnZUxl
dmVsLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIHVuc2lnbmVkIGxpbmVOdW1iZXIsIHVuc2lnbmVk
IGNvbHVtbk51bWJlciwgY29uc3QgU3RyaW5nJiBzb3VyY2VJRCkgZmluYWw7CiAgICAgCi0gICAg
Ym9vbCBjYW5SdW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoKSBvdmVycmlkZTsKLSAgICBib29s
IHJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbChjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIFdlYkNv
cmU6OkZyYW1lKikgb3ZlcnJpZGU7CisgICAgYm9vbCBjYW5SdW5CZWZvcmVVbmxvYWRDb25maXJt
UGFuZWwoKSBmaW5hbDsKKyAgICBib29sIHJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbChjb25z
dCBTdHJpbmcmIG1lc3NhZ2UsIFdlYkNvcmU6OkZyYW1lKikgZmluYWw7CiAgICAgCi0gICAgdm9p
ZCBjbG9zZVdpbmRvd1Nvb24oKSBvdmVycmlkZTsKKyAgICB2b2lkIGNsb3NlV2luZG93U29vbigp
IGZpbmFsOwogICAgIAotICAgIHZvaWQgcnVuSmF2YVNjcmlwdEFsZXJ0KFdlYkNvcmU6OkZyYW1l
KiwgY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBydW5KYXZhU2NyaXB0Q29uZmly
bShXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAgIGJvb2wgcnVu
SmF2YVNjcmlwdFByb21wdChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwg
Y29uc3QgU3RyaW5nJiBkZWZhdWx0VmFsdWUsIFN0cmluZyYgcmVzdWx0KSBvdmVycmlkZTsKLSAg
ICB2b2lkIHNldFN0YXR1c2JhclRleHQoY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7Ci0KLSAgICBX
ZWJDb3JlOjpLZXlib2FyZFVJTW9kZSBrZXlib2FyZFVJTW9kZSgpIG92ZXJyaWRlOwotCi0gICAg
Ly8gSG9zdFdpbmRvdyBtZW1iZXIgZnVuY3Rpb24gb3ZlcnJpZGVzLgotICAgIHZvaWQgaW52YWxp
ZGF0ZVJvb3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBvdmVycmlkZTsKLSAgICB2b2lk
IGludmFsaWRhdGVDb250ZW50c0FuZFJvb3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBv
dmVycmlkZTsKLSAgICB2b2lkIGludmFsaWRhdGVDb250ZW50c0ZvclNsb3dTY3JvbGwoY29uc3Qg
V2ViQ29yZTo6SW50UmVjdCYpIG92ZXJyaWRlOwotICAgIHZvaWQgc2Nyb2xsKGNvbnN0IFdlYkNv
cmU6OkludFNpemUmIHNjcm9sbERlbHRhLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiBzY3JvbGxS
ZWN0LCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiBjbGlwUmVjdCkgb3ZlcnJpZGU7CisgICAgdm9p
ZCBydW5KYXZhU2NyaXB0QWxlcnQoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBTdHJpbmcmKSBmaW5h
bDsKKyAgICBib29sIHJ1bkphdmFTY3JpcHRDb25maXJtKFdlYkNvcmU6OkZyYW1lKiwgY29uc3Qg
U3RyaW5nJikgZmluYWw7CisgICAgYm9vbCBydW5KYXZhU2NyaXB0UHJvbXB0KFdlYkNvcmU6OkZy
YW1lKiwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjb25zdCBTdHJpbmcmIGRlZmF1bHRWYWx1ZSwg
U3RyaW5nJiByZXN1bHQpIGZpbmFsOworICAgIHZvaWQgc2V0U3RhdHVzYmFyVGV4dChjb25zdCBT
dHJpbmcmKSBmaW5hbDsKKworICAgIFdlYkNvcmU6OktleWJvYXJkVUlNb2RlIGtleWJvYXJkVUlN
b2RlKCkgZmluYWw7CisKKyAgICAvLyBIb3N0V2luZG93IG1lbWJlciBmdW5jdGlvbiBmaW5hbHMu
CisgICAgdm9pZCBpbnZhbGlkYXRlUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGZp
bmFsOworICAgIHZvaWQgaW52YWxpZGF0ZUNvbnRlbnRzQW5kUm9vdFZpZXcoY29uc3QgV2ViQ29y
ZTo6SW50UmVjdCYpIGZpbmFsOworICAgIHZvaWQgaW52YWxpZGF0ZUNvbnRlbnRzRm9yU2xvd1Nj
cm9sbChjb25zdCBXZWJDb3JlOjpJbnRSZWN0JikgZmluYWw7CisgICAgdm9pZCBzY3JvbGwoY29u
c3QgV2ViQ29yZTo6SW50U2l6ZSYgc2Nyb2xsRGVsdGEsIGNvbnN0IFdlYkNvcmU6OkludFJlY3Qm
IHNjcm9sbFJlY3QsIGNvbnN0IFdlYkNvcmU6OkludFJlY3QmIGNsaXBSZWN0KSBmaW5hbDsKKwog
I2lmIFVTRShDT09SRElOQVRFRF9HUkFQSElDUykKLSAgICB2b2lkIGRlbGVnYXRlZFNjcm9sbFJl
cXVlc3RlZChjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYgc2Nyb2xsT2Zmc2V0KSBvdmVycmlkZTsK
KyAgICB2b2lkIGRlbGVnYXRlZFNjcm9sbFJlcXVlc3RlZChjb25zdCBXZWJDb3JlOjpJbnRQb2lu
dCYgc2Nyb2xsT2Zmc2V0KSBmaW5hbDsKICNlbmRpZgotICAgIFdlYkNvcmU6OkludFBvaW50IHNj
cmVlblRvUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKSBjb25zdCBvdmVycmlkZTsK
LSAgICBXZWJDb3JlOjpJbnRSZWN0IHJvb3RWaWV3VG9TY3JlZW4oY29uc3QgV2ViQ29yZTo6SW50
UmVjdCYpIGNvbnN0IG92ZXJyaWRlOworCisgICAgV2ViQ29yZTo6SW50UG9pbnQgc2NyZWVuVG9S
b290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIGNvbnN0IGZpbmFsOworICAgIFdlYkNv
cmU6OkludFJlY3Qgcm9vdFZpZXdUb1NjcmVlbihjb25zdCBXZWJDb3JlOjpJbnRSZWN0JikgY29u
c3QgZmluYWw7CisKICNpZiBQTEFURk9STShJT1MpCi0gICAgV2ViQ29yZTo6SW50UG9pbnQgYWNj
ZXNzaWJpbGl0eVNjcmVlblRvUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKSBjb25z
dCBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpJbnRSZWN0IHJvb3RWaWV3VG9BY2Nlc3NpYmlsaXR5
U2NyZWVuKGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBjb25zdCBvdmVycmlkZTsKKyAgICBXZWJD
b3JlOjpJbnRQb2ludCBhY2Nlc3NpYmlsaXR5U2NyZWVuVG9Sb290Vmlldyhjb25zdCBXZWJDb3Jl
OjpJbnRQb2ludCYpIGNvbnN0IGZpbmFsOworICAgIFdlYkNvcmU6OkludFJlY3Qgcm9vdFZpZXdU
b0FjY2Vzc2liaWxpdHlTY3JlZW4oY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGNvbnN0IGZpbmFs
OwogI2VuZGlmCi0gICAgUGxhdGZvcm1QYWdlQ2xpZW50IHBsYXRmb3JtUGFnZUNsaWVudCgpIGNv
bnN0IG92ZXJyaWRlOwotICAgIHZvaWQgY29udGVudHNTaXplQ2hhbmdlZChXZWJDb3JlOjpGcmFt
ZSosIGNvbnN0IFdlYkNvcmU6OkludFNpemUmKSBjb25zdCBvdmVycmlkZTsKLSAgICB2b2lkIHNj
cm9sbFJlY3RJbnRvVmlldyhjb25zdCBXZWJDb3JlOjpJbnRSZWN0JikgY29uc3Qgb3ZlcnJpZGU7
IC8vIEN1cnJlbnRseSBvbmx5IE1hYyBoYXMgYSBub24gZW1wdHkgaW1wbGVtZW50YXRpb24uCiAK
LSAgICBib29sIHNob3VsZFVuYXZhaWxhYmxlUGx1Z2luTWVzc2FnZUJlQnV0dG9uKFdlYkNvcmU6
OlJlbmRlckVtYmVkZGVkT2JqZWN0OjpQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbikgY29uc3Qg
b3ZlcnJpZGU7Ci0gICAgdm9pZCB1bmF2YWlsYWJsZVBsdWdpbkJ1dHRvbkNsaWNrZWQoV2ViQ29y
ZTo6RWxlbWVudCosIFdlYkNvcmU6OlJlbmRlckVtYmVkZGVkT2JqZWN0OjpQbHVnaW5VbmF2YWls
YWJpbGl0eVJlYXNvbikgY29uc3Qgb3ZlcnJpZGU7CisgICAgUGxhdGZvcm1QYWdlQ2xpZW50IHBs
YXRmb3JtUGFnZUNsaWVudCgpIGNvbnN0IGZpbmFsOworICAgIHZvaWQgY29udGVudHNTaXplQ2hh
bmdlZChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6OkludFNpemUmKSBjb25zdCBmaW5h
bDsKKyAgICB2b2lkIHNjcm9sbFJlY3RJbnRvVmlldyhjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jikg
Y29uc3QgZmluYWw7IC8vIEN1cnJlbnRseSBvbmx5IE1hYyBoYXMgYSBub24gZW1wdHkgaW1wbGVt
ZW50YXRpb24uCiAKLSAgICB2b2lkIHNjcm9sbGJhcnNNb2RlRGlkQ2hhbmdlKCkgY29uc3Qgb3Zl
cnJpZGU7Ci0gICAgdm9pZCBtb3VzZURpZE1vdmVPdmVyRWxlbWVudChjb25zdCBXZWJDb3JlOjpI
aXRUZXN0UmVzdWx0JiwgdW5zaWduZWQgbW9kaWZpZXJGbGFncykgb3ZlcnJpZGU7CisgICAgYm9v
bCBzaG91bGRVbmF2YWlsYWJsZVBsdWdpbk1lc3NhZ2VCZUJ1dHRvbihXZWJDb3JlOjpSZW5kZXJF
bWJlZGRlZE9iamVjdDo6UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24pIGNvbnN0IGZpbmFsOwor
ICAgIHZvaWQgdW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2VkKFdlYkNvcmU6OkVsZW1lbnQq
LCBXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFz
b24pIGNvbnN0IGZpbmFsOwogCi0gICAgdm9pZCBzZXRUb29sVGlwKGNvbnN0IFN0cmluZyYsIFdl
YkNvcmU6OlRleHREaXJlY3Rpb24pIG92ZXJyaWRlOworICAgIHZvaWQgc2Nyb2xsYmFyc01vZGVE
aWRDaGFuZ2UoKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIG1vdXNlRGlkTW92ZU92ZXJFbGVtZW50
KGNvbnN0IFdlYkNvcmU6OkhpdFRlc3RSZXN1bHQmLCB1bnNpZ25lZCBtb2RpZmllckZsYWdzKSBm
aW5hbDsKKworICAgIHZvaWQgc2V0VG9vbFRpcChjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpUZXh0
RGlyZWN0aW9uKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHByaW50KFdlYkNvcmU6OkZyYW1lKikg
b3ZlcnJpZGU7CisgICAgdm9pZCBwcmludChXZWJDb3JlOjpGcmFtZSopIGZpbmFsOwogCi0gICAg
dm9pZCBleGNlZWRlZERhdGFiYXNlUXVvdGEoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBTdHJpbmcm
IGRhdGFiYXNlTmFtZSwgV2ViQ29yZTo6RGF0YWJhc2VEZXRhaWxzKSBvdmVycmlkZTsKKyAgICB2
b2lkIGV4Y2VlZGVkRGF0YWJhc2VRdW90YShXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFN0cmluZyYg
ZGF0YWJhc2VOYW1lLCBXZWJDb3JlOjpEYXRhYmFzZURldGFpbHMpIGZpbmFsOwogCi0gICAgdm9p
ZCByZWFjaGVkTWF4QXBwQ2FjaGVTaXplKGludDY0X3Qgc3BhY2VOZWVkZWQpIG92ZXJyaWRlOwot
ICAgIHZvaWQgcmVhY2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YShXZWJDb3JlOjpTZWN1
cml0eU9yaWdpbiosIGludDY0X3Qgc3BhY2VOZWVkZWQpIG92ZXJyaWRlOworICAgIHZvaWQgcmVh
Y2hlZE1heEFwcENhY2hlU2l6ZShpbnQ2NF90IHNwYWNlTmVlZGVkKSBmaW5hbDsKKyAgICB2b2lk
IHJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoV2ViQ29yZTo6U2VjdXJpdHlPcmln
aW4qLCBpbnQ2NF90IHNwYWNlTmVlZGVkKSBmaW5hbDsKIAogI2lmIEVOQUJMRShEQVNIQk9BUkRf
U1VQUE9SVCkKLSAgICB2b2lkIGFubm90YXRlZFJlZ2lvbnNDaGFuZ2VkKCkgb3ZlcnJpZGU7Cisg
ICAgdm9pZCBhbm5vdGF0ZWRSZWdpb25zQ2hhbmdlZCgpIGZpbmFsOwogI2VuZGlmCiAKLSAgICBi
b29sIHNob3VsZFJlcGxhY2VXaXRoR2VuZXJhdGVkRmlsZUZvclVwbG9hZChjb25zdCBTdHJpbmcm
IHBhdGgsIFN0cmluZyYgZ2VuZXJhdGVkRmlsZW5hbWUpIG92ZXJyaWRlOwotICAgIFN0cmluZyBn
ZW5lcmF0ZVJlcGxhY2VtZW50RmlsZShjb25zdCBTdHJpbmcmIHBhdGgpIG92ZXJyaWRlOworICAg
IGJvb2wgc2hvdWxkUmVwbGFjZVdpdGhHZW5lcmF0ZWRGaWxlRm9yVXBsb2FkKGNvbnN0IFN0cmlu
ZyYgcGF0aCwgU3RyaW5nJiBnZW5lcmF0ZWRGaWxlbmFtZSkgZmluYWw7CisgICAgU3RyaW5nIGdl
bmVyYXRlUmVwbGFjZW1lbnRGaWxlKGNvbnN0IFN0cmluZyYgcGF0aCkgZmluYWw7CiAgICAgCiAj
aWYgRU5BQkxFKElOUFVUX1RZUEVfQ09MT1IpCi0gICAgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6
OkNvbG9yQ2hvb3Nlcj4gY3JlYXRlQ29sb3JDaG9vc2VyKFdlYkNvcmU6OkNvbG9yQ2hvb3NlckNs
aWVudCosIGNvbnN0IFdlYkNvcmU6OkNvbG9yJikgb3ZlcnJpZGU7CisgICAgc3RkOjp1bmlxdWVf
cHRyPFdlYkNvcmU6OkNvbG9yQ2hvb3Nlcj4gY3JlYXRlQ29sb3JDaG9vc2VyKFdlYkNvcmU6OkNv
bG9yQ2hvb3NlckNsaWVudCosIGNvbnN0IFdlYkNvcmU6OkNvbG9yJikgZmluYWw7CiAjZW5kaWYK
IAogI2lmIEVOQUJMRShJT1NfVE9VQ0hfRVZFTlRTKQotICAgIHZvaWQgZGlkUHJldmVudERlZmF1
bHRGb3JFdmVudCgpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkUHJldmVudERlZmF1bHRGb3JFdmVu
dCgpIGZpbmFsOwogI2VuZGlmCiAKICNpZiBQTEFURk9STShJT1MpCi0gICAgdm9pZCBkaWRSZWNl
aXZlTW9iaWxlRG9jVHlwZShib29sKSBvdmVycmlkZTsKLSAgICB2b2lkIHNldE5lZWRzU2Nyb2xs
Tm90aWZpY2F0aW9ucyhXZWJDb3JlOjpGcmFtZSosIGJvb2wpIG92ZXJyaWRlOwotICAgIHZvaWQg
b2JzZXJ2ZWRDb250ZW50Q2hhbmdlKFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBjbGVhckNvbnRlbnRDaGFuZ2VPYnNlcnZlcnMoV2ViQ29yZTo6RnJhbWUqKSBvdmVycmlkZTsK
LSAgICB2b2lkIG5vdGlmeVJldmVhbGVkU2VsZWN0aW9uQnlTY3JvbGxpbmdGcmFtZShXZWJDb3Jl
OjpGcmFtZSopIG92ZXJyaWRlOwotICAgIGJvb2wgaXNTdG9wcGluZygpIG92ZXJyaWRlOwotCi0g
ICAgdm9pZCBkaWRMYXlvdXQoTGF5b3V0VHlwZSA9IE5vcm1hbExheW91dCkgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBkaWRTdGFydE92ZXJmbG93U2Nyb2xsKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRF
bmRPdmVyZmxvd1Njcm9sbCgpIG92ZXJyaWRlOwotICAgIGJvb2wgaGFzU3RhYmxlUGFnZVNjYWxl
RmFjdG9yKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRSZWNlaXZlTW9iaWxlRG9jVHlw
ZShib29sKSBmaW5hbDsKKyAgICB2b2lkIHNldE5lZWRzU2Nyb2xsTm90aWZpY2F0aW9ucyhXZWJD
b3JlOjpGcmFtZSosIGJvb2wpIGZpbmFsOworICAgIHZvaWQgb2JzZXJ2ZWRDb250ZW50Q2hhbmdl
KFdlYkNvcmU6OkZyYW1lKikgZmluYWw7CisgICAgdm9pZCBjbGVhckNvbnRlbnRDaGFuZ2VPYnNl
cnZlcnMoV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKKyAgICB2b2lkIG5vdGlmeVJldmVhbGVkU2Vs
ZWN0aW9uQnlTY3JvbGxpbmdGcmFtZShXZWJDb3JlOjpGcmFtZSopIGZpbmFsOworICAgIGJvb2wg
aXNTdG9wcGluZygpIGZpbmFsOworCisgICAgdm9pZCBkaWRMYXlvdXQoTGF5b3V0VHlwZSA9IE5v
cm1hbExheW91dCkgZmluYWw7CisgICAgdm9pZCBkaWRTdGFydE92ZXJmbG93U2Nyb2xsKCkgZmlu
YWw7CisgICAgdm9pZCBkaWRFbmRPdmVyZmxvd1Njcm9sbCgpIGZpbmFsOworICAgIGJvb2wgaGFz
U3RhYmxlUGFnZVNjYWxlRmFjdG9yKCkgY29uc3QgZmluYWw7CiAKICAgICAvLyBGSVhNRTogU2Vl
IDxyZGFyOi8vcHJvYmxlbS81OTc1NTU5PgotICAgIHZvaWQgc3VwcHJlc3NGb3JtTm90aWZpY2F0
aW9ucygpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVzdG9yZUZvcm1Ob3RpZmljYXRpb25zKCkgb3Zl
cnJpZGU7CisgICAgdm9pZCBzdXBwcmVzc0Zvcm1Ob3RpZmljYXRpb25zKCkgZmluYWw7CisgICAg
dm9pZCByZXN0b3JlRm9ybU5vdGlmaWNhdGlvbnMoKSBmaW5hbDsKIAotICAgIHZvaWQgYWRkT3JV
cGRhdGVTY3JvbGxpbmdMYXllcihXZWJDb3JlOjpOb2RlKiwgUGxhdGZvcm1MYXllciogc2Nyb2xs
aW5nTGF5ZXIsIFBsYXRmb3JtTGF5ZXIqIGNvbnRlbnRzTGF5ZXIsIGNvbnN0IFdlYkNvcmU6Oklu
dFNpemUmIHNjcm9sbFNpemUsIGJvb2wgYWxsb3dIb3Jpem9udGFsU2Nyb2xsYmFyLCBib29sIGFs
bG93VmVydGljYWxTY3JvbGxiYXIpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVtb3ZlU2Nyb2xsaW5n
TGF5ZXIoV2ViQ29yZTo6Tm9kZSosIFBsYXRmb3JtTGF5ZXIqIHNjcm9sbGluZ0xheWVyLCBQbGF0
Zm9ybUxheWVyKiBjb250ZW50c0xheWVyKSBvdmVycmlkZTsKKyAgICB2b2lkIGFkZE9yVXBkYXRl
U2Nyb2xsaW5nTGF5ZXIoV2ViQ29yZTo6Tm9kZSosIFBsYXRmb3JtTGF5ZXIqIHNjcm9sbGluZ0xh
eWVyLCBQbGF0Zm9ybUxheWVyKiBjb250ZW50c0xheWVyLCBjb25zdCBXZWJDb3JlOjpJbnRTaXpl
JiBzY3JvbGxTaXplLCBib29sIGFsbG93SG9yaXpvbnRhbFNjcm9sbGJhciwgYm9vbCBhbGxvd1Zl
cnRpY2FsU2Nyb2xsYmFyKSBmaW5hbDsKKyAgICB2b2lkIHJlbW92ZVNjcm9sbGluZ0xheWVyKFdl
YkNvcmU6Ok5vZGUqLCBQbGF0Zm9ybUxheWVyKiBzY3JvbGxpbmdMYXllciwgUGxhdGZvcm1MYXll
ciogY29udGVudHNMYXllcikgZmluYWw7CiAKLSAgICB2b2lkIHdlYkFwcE9yaWVudGF0aW9uc1Vw
ZGF0ZWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIHNob3dQbGF5YmFja1RhcmdldFBpY2tlcihib29s
IGhhc1ZpZGVvKSBvdmVycmlkZTsKKyAgICB2b2lkIHdlYkFwcE9yaWVudGF0aW9uc1VwZGF0ZWQo
KSBmaW5hbDsKKyAgICB2b2lkIHNob3dQbGF5YmFja1RhcmdldFBpY2tlcihib29sIGhhc1ZpZGVv
KSBmaW5hbDsKIAotICAgIFNlY29uZHMgZXZlbnRUaHJvdHRsaW5nRGVsYXkoKSBvdmVycmlkZTsK
KyAgICBTZWNvbmRzIGV2ZW50VGhyb3R0bGluZ0RlbGF5KCkgZmluYWw7CiAjZW5kaWYKIAogI2lm
IEVOQUJMRShPUklFTlRBVElPTl9FVkVOVFMpCi0gICAgaW50IGRldmljZU9yaWVudGF0aW9uKCkg
Y29uc3Qgb3ZlcnJpZGU7CisgICAgaW50IGRldmljZU9yaWVudGF0aW9uKCkgY29uc3QgZmluYWw7
CiAjZW5kaWYKIAotICAgIHZvaWQgcnVuT3BlblBhbmVsKFdlYkNvcmU6OkZyYW1lKiwgUGFzc1Jl
ZlB0cjxXZWJDb3JlOjpGaWxlQ2hvb3Nlcj4pIG92ZXJyaWRlOwotICAgIHZvaWQgbG9hZEljb25G
b3JGaWxlcyhjb25zdCBWZWN0b3I8U3RyaW5nPiYsIFdlYkNvcmU6OkZpbGVJY29uTG9hZGVyJikg
b3ZlcnJpZGU7CisgICAgdm9pZCBydW5PcGVuUGFuZWwoV2ViQ29yZTo6RnJhbWUmLCBXZWJDb3Jl
OjpGaWxlQ2hvb3NlciYpIGZpbmFsOworICAgIHZvaWQgbG9hZEljb25Gb3JGaWxlcyhjb25zdCBW
ZWN0b3I8U3RyaW5nPiYsIFdlYkNvcmU6OkZpbGVJY29uTG9hZGVyJikgZmluYWw7CiAKICNpZiAh
UExBVEZPUk0oSU9TKQotICAgIHZvaWQgc2V0Q3Vyc29yKGNvbnN0IFdlYkNvcmU6OkN1cnNvciYp
IG92ZXJyaWRlOwotICAgIHZvaWQgc2V0Q3Vyc29ySGlkZGVuVW50aWxNb3VzZU1vdmVzKGJvb2wp
IG92ZXJyaWRlOworICAgIHZvaWQgc2V0Q3Vyc29yKGNvbnN0IFdlYkNvcmU6OkN1cnNvciYpIGZp
bmFsOworICAgIHZvaWQgc2V0Q3Vyc29ySGlkZGVuVW50aWxNb3VzZU1vdmVzKGJvb2wpIGZpbmFs
OwogI2VuZGlmCisKICNpZiBFTkFCTEUoUkVRVUVTVF9BTklNQVRJT05fRlJBTUUpICYmICFVU0Uo
UkVRVUVTVF9BTklNQVRJT05fRlJBTUVfVElNRVIpCi0gICAgdm9pZCBzY2hlZHVsZUFuaW1hdGlv
bigpIG92ZXJyaWRlOworICAgIHZvaWQgc2NoZWR1bGVBbmltYXRpb24oKSBmaW5hbDsKICNlbmRp
ZgogICAgIAogI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCi0gICAgYm9vbCByZXF1ZXN0UG9pbnRl
ckxvY2soKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlcXVlc3RQb2ludGVyVW5sb2NrKCkgb3ZlcnJp
ZGU7CisgICAgYm9vbCByZXF1ZXN0UG9pbnRlckxvY2soKSBmaW5hbDsKKyAgICB2b2lkIHJlcXVl
c3RQb2ludGVyVW5sb2NrKCkgZmluYWw7CiAjZW5kaWYKIAotICAgIHZvaWQgZGlkQXNzb2NpYXRl
Rm9ybUNvbnRyb2xzKGNvbnN0IFZlY3RvcjxSZWZQdHI8V2ViQ29yZTo6RWxlbWVudD4+Jikgb3Zl
cnJpZGU7Ci0gICAgYm9vbCBzaG91bGROb3RpZnlPbkZvcm1DaGFuZ2VzKCkgb3ZlcnJpZGU7Cisg
ICAgdm9pZCBkaWRBc3NvY2lhdGVGb3JtQ29udHJvbHMoY29uc3QgVmVjdG9yPFJlZlB0cjxXZWJD
b3JlOjpFbGVtZW50Pj4mKSBmaW5hbDsKKyAgICBib29sIHNob3VsZE5vdGlmeU9uRm9ybUNoYW5n
ZXMoKSBmaW5hbDsKIAotICAgIGJvb2wgc2VsZWN0SXRlbVdyaXRpbmdEaXJlY3Rpb25Jc05hdHVy
YWwoKSBvdmVycmlkZTsKLSAgICBib29sIHNlbGVjdEl0ZW1BbGlnbm1lbnRGb2xsb3dzTWVudVdy
aXRpbmdEaXJlY3Rpb24oKSBvdmVycmlkZTsKLSAgICBib29sIGhhc09wZW5lZFBvcHVwKCkgY29u
c3Qgb3ZlcnJpZGU7Ci0gICAgUmVmUHRyPFdlYkNvcmU6OlBvcHVwTWVudT4gY3JlYXRlUG9wdXBN
ZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCopIGNvbnN0IG92ZXJyaWRlOwotICAgIFJlZlB0
cjxXZWJDb3JlOjpTZWFyY2hQb3B1cE1lbnU+IGNyZWF0ZVNlYXJjaFBvcHVwTWVudShXZWJDb3Jl
OjpQb3B1cE1lbnVDbGllbnQqKSBjb25zdCBvdmVycmlkZTsKKyAgICBib29sIHNlbGVjdEl0ZW1X
cml0aW5nRGlyZWN0aW9uSXNOYXR1cmFsKCkgZmluYWw7CisgICAgYm9vbCBzZWxlY3RJdGVtQWxp
Z25tZW50Rm9sbG93c01lbnVXcml0aW5nRGlyZWN0aW9uKCkgZmluYWw7CisgICAgYm9vbCBoYXNP
cGVuZWRQb3B1cCgpIGNvbnN0IGZpbmFsOworICAgIFJlZlB0cjxXZWJDb3JlOjpQb3B1cE1lbnU+
IGNyZWF0ZVBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1lbnVDbGllbnQqKSBjb25zdCBmaW5hbDsK
KyAgICBSZWZQdHI8V2ViQ29yZTo6U2VhcmNoUG9wdXBNZW51PiBjcmVhdGVTZWFyY2hQb3B1cE1l
bnUoV2ViQ29yZTo6UG9wdXBNZW51Q2xpZW50KikgY29uc3QgZmluYWw7CiAKLSAgICBXZWJDb3Jl
OjpHcmFwaGljc0xheWVyRmFjdG9yeSogZ3JhcGhpY3NMYXllckZhY3RvcnkoKSBjb25zdCBvdmVy
cmlkZTsKLSAgICB2b2lkIGF0dGFjaFJvb3RHcmFwaGljc0xheWVyKFdlYkNvcmU6OkZyYW1lKiwg
V2ViQ29yZTo6R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOwotICAgIHZvaWQgYXR0YWNoVmlld092
ZXJsYXlHcmFwaGljc0xheWVyKFdlYkNvcmU6OkZyYW1lKiwgV2ViQ29yZTo6R3JhcGhpY3NMYXll
ciopIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0TmVlZHNPbmVTaG90RHJhd2luZ1N5bmNocm9uaXph
dGlvbigpIG92ZXJyaWRlOwotICAgIHZvaWQgc2NoZWR1bGVDb21wb3NpdGluZ0xheWVyRmx1c2go
KSBvdmVycmlkZTsKLSAgICBib29sIGFkanVzdExheWVyRmx1c2hUaHJvdHRsaW5nKFdlYkNvcmU6
OkxheWVyRmx1c2hUaHJvdHRsZVN0YXRlOjpGbGFncykgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6
R3JhcGhpY3NMYXllckZhY3RvcnkqIGdyYXBoaWNzTGF5ZXJGYWN0b3J5KCkgY29uc3QgZmluYWw7
CisgICAgdm9pZCBhdHRhY2hSb290R3JhcGhpY3NMYXllcihXZWJDb3JlOjpGcmFtZSosIFdlYkNv
cmU6OkdyYXBoaWNzTGF5ZXIqKSBmaW5hbDsKKyAgICB2b2lkIGF0dGFjaFZpZXdPdmVybGF5R3Jh
cGhpY3NMYXllcihXZWJDb3JlOjpGcmFtZSosIFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXIqKSBmaW5h
bDsKKyAgICB2b2lkIHNldE5lZWRzT25lU2hvdERyYXdpbmdTeW5jaHJvbml6YXRpb24oKSBmaW5h
bDsKKyAgICB2b2lkIHNjaGVkdWxlQ29tcG9zaXRpbmdMYXllckZsdXNoKCkgZmluYWw7CisgICAg
Ym9vbCBhZGp1c3RMYXllckZsdXNoVGhyb3R0bGluZyhXZWJDb3JlOjpMYXllckZsdXNoVGhyb3R0
bGVTdGF0ZTo6RmxhZ3MpIGZpbmFsOwogCiAjaWYgVVNFKFJFUVVFU1RfQU5JTUFUSU9OX0ZSQU1F
X0RJU1BMQVlfTU9OSVRPUikKLSAgICBSZWZQdHI8V2ViQ29yZTo6RGlzcGxheVJlZnJlc2hNb25p
dG9yPiBjcmVhdGVEaXNwbGF5UmVmcmVzaE1vbml0b3IoV2ViQ29yZTo6UGxhdGZvcm1EaXNwbGF5
SUQpIGNvbnN0IG92ZXJyaWRlOworICAgIFJlZlB0cjxXZWJDb3JlOjpEaXNwbGF5UmVmcmVzaE1v
bml0b3I+IGNyZWF0ZURpc3BsYXlSZWZyZXNoTW9uaXRvcihXZWJDb3JlOjpQbGF0Zm9ybURpc3Bs
YXlJRCkgY29uc3QgZmluYWw7CiAjZW5kaWYKIAotICAgIENvbXBvc2l0aW5nVHJpZ2dlckZsYWdz
IGFsbG93ZWRDb21wb3NpdGluZ1RyaWdnZXJzKCkgY29uc3Qgb3ZlcnJpZGUKKyAgICBDb21wb3Np
dGluZ1RyaWdnZXJGbGFncyBhbGxvd2VkQ29tcG9zaXRpbmdUcmlnZ2VycygpIGNvbnN0IGZpbmFs
CiAgICAgewogICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8Q29tcG9zaXRpbmdUcmlnZ2VyRmxh
Z3M+KAogICAgICAgICAgICAgVGhyZWVEVHJhbnNmb3JtVHJpZ2dlciB8CkBAIC0yMzAsMTE5ICsy
MjgsMTIxIEBAIHByaXZhdGU6CiAgICAgICAgICAgICBBbmltYXRpb25UcmlnZ2VyKTsKICAgICB9
CiAKLSAgICBib29sIGxheWVyVHJlZVN0YXRlSXNGcm96ZW4oKSBjb25zdCBvdmVycmlkZTsKKyAg
ICBib29sIGxheWVyVHJlZVN0YXRlSXNGcm96ZW4oKSBjb25zdCBmaW5hbDsKIAogI2lmIEVOQUJM
RShBU1lOQ19TQ1JPTExJTkcpCi0gICAgUGFzc1JlZlB0cjxXZWJDb3JlOjpTY3JvbGxpbmdDb29y
ZGluYXRvcj4gY3JlYXRlU2Nyb2xsaW5nQ29vcmRpbmF0b3IoV2ViQ29yZTo6UGFnZSopIGNvbnN0
IG92ZXJyaWRlOworICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6U2Nyb2xsaW5nQ29vcmRpbmF0b3I+
IGNyZWF0ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yKFdlYkNvcmU6OlBhZ2UqKSBjb25zdCBmaW5hbDsK
ICNlbmRpZgogCiAjaWYgUExBVEZPUk0oSU9TKQotICAgIHZvaWQgZWxlbWVudERpZFJlZm9jdXMo
Y29uc3QgV2ViQ29yZTo6Tm9kZSopIG92ZXJyaWRlOworICAgIHZvaWQgZWxlbWVudERpZFJlZm9j
dXMoY29uc3QgV2ViQ29yZTo6Tm9kZSopIGZpbmFsOwogI2VuZGlmCiAKICNpZiAoUExBVEZPUk0o
SU9TKSAmJiBIQVZFKEFWS0lUKSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BS
RVNFTlRBVElPTl9NT0RFKSkKLSAgICBib29sIHN1cHBvcnRzVmlkZW9GdWxsc2NyZWVuKFdlYkNv
cmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZSkgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBzZXRVcFBsYXliYWNrQ29udHJvbHNNYW5hZ2VyKFdlYkNvcmU6OkhUTUxNZWRp
YUVsZW1lbnQmKSBvdmVycmlkZTsKLSAgICB2b2lkIGNsZWFyUGxheWJhY2tDb250cm9sc01hbmFn
ZXIoKSBvdmVycmlkZTsKLSAgICB2b2lkIGVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVt
ZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmLCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50
RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIG92ZXJyaWRlOwotICAgIHZvaWQgZXhpdFZpZGVv
RnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50Jikgb3Zl
cnJpZGU7Ci0jaWYgUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01P
REUpCi0gICAgdm9pZCBleGl0VmlkZW9GdWxsc2NyZWVuVG9Nb2RlV2l0aG91dEFuaW1hdGlvbihX
ZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50JiwgV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1z
OjpWaWRlb0Z1bGxzY3JlZW5Nb2RlKSBvdmVycmlkZTsKKyAgICBib29sIHN1cHBvcnRzVmlkZW9G
dWxsc2NyZWVuKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVu
TW9kZSkgZmluYWw7CisgICAgdm9pZCBzZXRVcFBsYXliYWNrQ29udHJvbHNNYW5hZ2VyKFdlYkNv
cmU6OkhUTUxNZWRpYUVsZW1lbnQmKSBmaW5hbDsKKyAgICB2b2lkIGNsZWFyUGxheWJhY2tDb250
cm9sc01hbmFnZXIoKSBmaW5hbDsKKyAgICB2b2lkIGVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlk
ZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmLCBXZWJDb3JlOjpIVE1MTWVkaWFF
bGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIGZpbmFsOworICAgIHZvaWQgZXhpdFZp
ZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50Jikg
ZmluYWw7CiAjZW5kaWYKKworI2lmIFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNF
TlRBVElPTl9NT0RFKQorICAgIHZvaWQgZXhpdFZpZGVvRnVsbHNjcmVlblRvTW9kZVdpdGhvdXRB
bmltYXRpb24oV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCYsIFdlYkNvcmU6OkhUTUxNZWRpYUVs
ZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZSkgZmluYWw7CiAjZW5kaWYKIAogI2lmIEVO
QUJMRShGVUxMU0NSRUVOX0FQSSkKLSAgICBib29sIHN1cHBvcnRzRnVsbFNjcmVlbkZvckVsZW1l
bnQoY29uc3QgV2ViQ29yZTo6RWxlbWVudCosIGJvb2wgd2l0aEtleWJvYXJkKSBvdmVycmlkZTsK
LSAgICB2b2lkIGVudGVyRnVsbFNjcmVlbkZvckVsZW1lbnQoV2ViQ29yZTo6RWxlbWVudCopIG92
ZXJyaWRlOwotICAgIHZvaWQgZXhpdEZ1bGxTY3JlZW5Gb3JFbGVtZW50KFdlYkNvcmU6OkVsZW1l
bnQqKSBvdmVycmlkZTsKKyAgICBib29sIHN1cHBvcnRzRnVsbFNjcmVlbkZvckVsZW1lbnQoY29u
c3QgV2ViQ29yZTo6RWxlbWVudCosIGJvb2wgd2l0aEtleWJvYXJkKSBmaW5hbDsKKyAgICB2b2lk
IGVudGVyRnVsbFNjcmVlbkZvckVsZW1lbnQoV2ViQ29yZTo6RWxlbWVudCopIGZpbmFsOworICAg
IHZvaWQgZXhpdEZ1bGxTY3JlZW5Gb3JFbGVtZW50KFdlYkNvcmU6OkVsZW1lbnQqKSBmaW5hbDsK
ICNlbmRpZgogCiAjaWYgUExBVEZPUk0oQ09DT0EpCi0gICAgdm9pZCBlbGVtZW50RGlkRm9jdXMo
Y29uc3QgV2ViQ29yZTo6Tm9kZSopIG92ZXJyaWRlOwotICAgIHZvaWQgZWxlbWVudERpZEJsdXIo
Y29uc3QgV2ViQ29yZTo6Tm9kZSopIG92ZXJyaWRlOworICAgIHZvaWQgZWxlbWVudERpZEZvY3Vz
KGNvbnN0IFdlYkNvcmU6Ok5vZGUqKSBmaW5hbDsKKyAgICB2b2lkIGVsZW1lbnREaWRCbHVyKGNv
bnN0IFdlYkNvcmU6Ok5vZGUqKSBmaW5hbDsKIAotICAgIHZvaWQgbWFrZUZpcnN0UmVzcG9uZGVy
KCkgb3ZlcnJpZGU7CisgICAgdm9pZCBtYWtlRmlyc3RSZXNwb25kZXIoKSBmaW5hbDsKICNlbmRp
ZgogCi0gICAgdm9pZCBlbmFibGVTdWRkZW5UZXJtaW5hdGlvbigpIG92ZXJyaWRlOwotICAgIHZv
aWQgZGlzYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBlbmFibGVT
dWRkZW5UZXJtaW5hdGlvbigpIGZpbmFsOworICAgIHZvaWQgZGlzYWJsZVN1ZGRlblRlcm1pbmF0
aW9uKCkgZmluYWw7CiAKICNpZiBQTEFURk9STShJT1MpCi0gICAgV2ViQ29yZTo6RmxvYXRTaXpl
IHNjcmVlblNpemUoKSBjb25zdCBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpGbG9hdFNpemUgYXZh
aWxhYmxlU2NyZWVuU2l6ZSgpIGNvbnN0IG92ZXJyaWRlOworICAgIFdlYkNvcmU6OkZsb2F0U2l6
ZSBzY3JlZW5TaXplKCkgY29uc3QgZmluYWw7CisgICAgV2ViQ29yZTo6RmxvYXRTaXplIGF2YWls
YWJsZVNjcmVlblNpemUoKSBjb25zdCBmaW5hbDsKICNlbmRpZgotICAgIHZvaWQgZGlzcGF0Y2hW
aWV3cG9ydFByb3BlcnRpZXNEaWRDaGFuZ2UoY29uc3QgV2ViQ29yZTo6Vmlld3BvcnRBcmd1bWVu
dHMmKSBjb25zdCBvdmVycmlkZTsKIAotICAgIHZvaWQgbm90aWZ5U2Nyb2xsZXJUaHVtYklzVmlz
aWJsZUluUmVjdChjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBy
ZWNvbW1lbmRlZFNjcm9sbGJhclN0eWxlRGlkQ2hhbmdlKFdlYkNvcmU6OlNjcm9sbGJhclN0eWxl
IG5ld1N0eWxlKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoVmlld3BvcnRQcm9wZXJ0aWVz
RGlkQ2hhbmdlKGNvbnN0IFdlYkNvcmU6OlZpZXdwb3J0QXJndW1lbnRzJikgY29uc3QgZmluYWw7
CiAKLSAgICBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlNjcm9sbGJhck92ZXJsYXlTdHlsZT4gcHJl
ZmVycmVkU2Nyb2xsYmFyT3ZlcmxheVN0eWxlKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBub3RpZnlT
Y3JvbGxlclRodW1iSXNWaXNpYmxlSW5SZWN0KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBmaW5h
bDsKKyAgICB2b2lkIHJlY29tbWVuZGVkU2Nyb2xsYmFyU3R5bGVEaWRDaGFuZ2UoV2ViQ29yZTo6
U2Nyb2xsYmFyU3R5bGUgbmV3U3R5bGUpIGZpbmFsOwogCi0gICAgV2ViQ29yZTo6Q29sb3IgdW5k
ZXJsYXlDb2xvcigpIGNvbnN0IG92ZXJyaWRlOworICAgIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6
U2Nyb2xsYmFyT3ZlcmxheVN0eWxlPiBwcmVmZXJyZWRTY3JvbGxiYXJPdmVybGF5U3R5bGUoKSBm
aW5hbDsKIAotICAgIHZvaWQgcGFnZUV4dGVuZGVkQmFja2dyb3VuZENvbG9yRGlkQ2hhbmdlKFdl
YkNvcmU6OkNvbG9yKSBjb25zdCBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpDb2xvciB1bmRlcmxh
eUNvbG9yKCkgY29uc3QgZmluYWw7CisKKyAgICB2b2lkIHBhZ2VFeHRlbmRlZEJhY2tncm91bmRD
b2xvckRpZENoYW5nZShXZWJDb3JlOjpDb2xvcikgY29uc3QgZmluYWw7CiAgICAgCi0gICAgdm9p
ZCB3aGVlbEV2ZW50SGFuZGxlcnNDaGFuZ2VkKGJvb2wpIG92ZXJyaWRlOworICAgIHZvaWQgd2hl
ZWxFdmVudEhhbmRsZXJzQ2hhbmdlZChib29sKSBmaW5hbDsKIAotICAgIFN0cmluZyBwbHVnSW5T
dGFydExhYmVsVGl0bGUoY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkgY29uc3Qgb3ZlcnJpZGU7Ci0g
ICAgU3RyaW5nIHBsdWdJblN0YXJ0TGFiZWxTdWJ0aXRsZShjb25zdCBTdHJpbmcmIG1pbWVUeXBl
KSBjb25zdCBvdmVycmlkZTsKLSAgICBTdHJpbmcgcGx1Z0luRXh0cmFTdHlsZVNoZWV0KCkgY29u
c3Qgb3ZlcnJpZGU7Ci0gICAgU3RyaW5nIHBsdWdJbkV4dHJhU2NyaXB0KCkgY29uc3Qgb3ZlcnJp
ZGU7CisgICAgU3RyaW5nIHBsdWdJblN0YXJ0TGFiZWxUaXRsZShjb25zdCBTdHJpbmcmIG1pbWVU
eXBlKSBjb25zdCBmaW5hbDsKKyAgICBTdHJpbmcgcGx1Z0luU3RhcnRMYWJlbFN1YnRpdGxlKGNv
bnN0IFN0cmluZyYgbWltZVR5cGUpIGNvbnN0IGZpbmFsOworICAgIFN0cmluZyBwbHVnSW5FeHRy
YVN0eWxlU2hlZXQoKSBjb25zdCBmaW5hbDsKKyAgICBTdHJpbmcgcGx1Z0luRXh0cmFTY3JpcHQo
KSBjb25zdCBmaW5hbDsKIAotICAgIHZvaWQgZGlkQWRkSGVhZGVyTGF5ZXIoV2ViQ29yZTo6R3Jh
cGhpY3NMYXllciopIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkQWRkRm9vdGVyTGF5ZXIoV2ViQ29y
ZTo6R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOworICAgIHZvaWQgZGlkQWRkSGVhZGVyTGF5ZXIo
V2ViQ29yZTo6R3JhcGhpY3NMYXllciopIGZpbmFsOworICAgIHZvaWQgZGlkQWRkRm9vdGVyTGF5
ZXIoV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIGZpbmFsOwogCi0gICAgYm9vbCBzaG91bGRVc2VU
aWxlZEJhY2tpbmdGb3JGcmFtZVZpZXcoY29uc3QgV2ViQ29yZTo6RnJhbWVWaWV3KikgY29uc3Qg
b3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRVc2VUaWxlZEJhY2tpbmdGb3JGcmFtZVZpZXcoY29u
c3QgV2ViQ29yZTo6RnJhbWVWaWV3KikgY29uc3QgZmluYWw7CiAKLSAgICB2b2lkIGlzUGxheWlu
Z01lZGlhRGlkQ2hhbmdlKFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncywg
dWludDY0X3QpIG92ZXJyaWRlOworICAgIHZvaWQgaXNQbGF5aW5nTWVkaWFEaWRDaGFuZ2UoV2Vi
Q29yZTo6TWVkaWFQcm9kdWNlcjo6TWVkaWFTdGF0ZUZsYWdzLCB1aW50NjRfdCkgZmluYWw7CiAK
ICNpZiBFTkFCTEUoTUVESUFfU0VTU0lPTikKLSAgICB2b2lkIGhhc01lZGlhU2Vzc2lvbldpdGhB
Y3RpdmVNZWRpYUVsZW1lbnRzRGlkQ2hhbmdlKGJvb2wpIG92ZXJyaWRlOwotICAgIHZvaWQgbWVk
aWFTZXNzaW9uTWV0YWRhdGFEaWRDaGFuZ2UoY29uc3QgV2ViQ29yZTo6TWVkaWFTZXNzaW9uTWV0
YWRhdGEmKSBvdmVycmlkZTsKLSAgICB2b2lkIGZvY3VzZWRDb250ZW50TWVkaWFFbGVtZW50RGlk
Q2hhbmdlKHVpbnQ2NF90KSBvdmVycmlkZTsKKyAgICB2b2lkIGhhc01lZGlhU2Vzc2lvbldpdGhB
Y3RpdmVNZWRpYUVsZW1lbnRzRGlkQ2hhbmdlKGJvb2wpIGZpbmFsOworICAgIHZvaWQgbWVkaWFT
ZXNzaW9uTWV0YWRhdGFEaWRDaGFuZ2UoY29uc3QgV2ViQ29yZTo6TWVkaWFTZXNzaW9uTWV0YWRh
dGEmKSBmaW5hbDsKKyAgICB2b2lkIGZvY3VzZWRDb250ZW50TWVkaWFFbGVtZW50RGlkQ2hhbmdl
KHVpbnQ2NF90KSBmaW5hbDsKICNlbmRpZgogCiAjaWYgRU5BQkxFKFNVQlRMRV9DUllQVE8pCi0g
ICAgYm9vbCB3cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90PiYsIFZlY3Rvcjx1aW50
OF90PiYpIGNvbnN0IG92ZXJyaWRlOwotICAgIGJvb2wgdW53cmFwQ3J5cHRvS2V5KGNvbnN0IFZl
Y3Rvcjx1aW50OF90PiYsIFZlY3Rvcjx1aW50OF90PiYpIGNvbnN0IG92ZXJyaWRlOworICAgIGJv
b2wgd3JhcENyeXB0b0tleShjb25zdCBWZWN0b3I8dWludDhfdD4mLCBWZWN0b3I8dWludDhfdD4m
KSBjb25zdCBmaW5hbDsKKyAgICBib29sIHVud3JhcENyeXB0b0tleShjb25zdCBWZWN0b3I8dWlu
dDhfdD4mLCBWZWN0b3I8dWludDhfdD4mKSBjb25zdCBmaW5hbDsKICNlbmRpZgogCiAjaWYgRU5B
QkxFKFRFTEVQSE9ORV9OVU1CRVJfREVURUNUSU9OKSAmJiBQTEFURk9STShNQUMpCi0gICAgdm9p
ZCBoYW5kbGVUZWxlcGhvbmVOdW1iZXJDbGljayhjb25zdCBTdHJpbmcmIG51bWJlciwgY29uc3Qg
V2ViQ29yZTo6SW50UG9pbnQmKSBvdmVycmlkZTsKKyAgICB2b2lkIGhhbmRsZVRlbGVwaG9uZU51
bWJlckNsaWNrKGNvbnN0IFN0cmluZyYgbnVtYmVyLCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYp
IGZpbmFsOwogI2VuZGlmCisKICNpZiBFTkFCTEUoU0VSVklDRV9DT05UUk9MUykKLSAgICB2b2lk
IGhhbmRsZVNlbGVjdGlvblNlcnZpY2VDbGljayhXZWJDb3JlOjpGcmFtZVNlbGVjdGlvbiYsIGNv
bnN0IFZlY3RvcjxTdHJpbmc+JiB0ZWxlcGhvbmVOdW1iZXJzLCBjb25zdCBXZWJDb3JlOjpJbnRQ
b2ludCYpIG92ZXJyaWRlOwotICAgIGJvb2wgaGFzUmVsZXZhbnRTZWxlY3Rpb25TZXJ2aWNlcyhi
b29sIGlzVGV4dE9ubHkpIGNvbnN0IG92ZXJyaWRlOworICAgIHZvaWQgaGFuZGxlU2VsZWN0aW9u
U2VydmljZUNsaWNrKFdlYkNvcmU6OkZyYW1lU2VsZWN0aW9uJiwgY29uc3QgVmVjdG9yPFN0cmlu
Zz4mIHRlbGVwaG9uZU51bWJlcnMsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JikgZmluYWw7Cisg
ICAgYm9vbCBoYXNSZWxldmFudFNlbGVjdGlvblNlcnZpY2VzKGJvb2wgaXNUZXh0T25seSkgY29u
c3QgZmluYWw7CiAjZW5kaWYKIAotICAgIGJvb2wgc2hvdWxkRGlzcGF0Y2hGYWtlTW91c2VNb3Zl
RXZlbnRzKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGREaXNwYXRjaEZha2VNb3Vz
ZU1vdmVFdmVudHMoKSBjb25zdCBmaW5hbDsKIAotICAgIHZvaWQgaGFuZGxlQXV0b0ZpbGxCdXR0
b25DbGljayhXZWJDb3JlOjpIVE1MSW5wdXRFbGVtZW50Jikgb3ZlcnJpZGU7CisgICAgdm9pZCBo
YW5kbGVBdXRvRmlsbEJ1dHRvbkNsaWNrKFdlYkNvcmU6OkhUTUxJbnB1dEVsZW1lbnQmKSBmaW5h
bDsKIAogI2lmIEVOQUJMRShXSVJFTEVTU19QTEFZQkFDS19UQVJHRVQpICYmICFQTEFURk9STShJ
T1MpCi0gICAgdm9pZCBhZGRQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudCh1aW50NjRfdCAvKmNv
bnRleHRJZCovKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlbW92ZVBsYXliYWNrVGFyZ2V0UGlja2Vy
Q2xpZW50KHVpbnQ2NF90IC8qY29udGV4dElkKi8pIG92ZXJyaWRlOwotICAgIHZvaWQgc2hvd1Bs
YXliYWNrVGFyZ2V0UGlja2VyKHVpbnQ2NF90IGNvbnRleHRJZCwgY29uc3QgV2ViQ29yZTo6SW50
UG9pbnQmLCBib29sKSBvdmVycmlkZTsKLSAgICB2b2lkIHBsYXliYWNrVGFyZ2V0UGlja2VyQ2xp
ZW50U3RhdGVEaWRDaGFuZ2UodWludDY0X3QsIFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6Ok1lZGlh
U3RhdGVGbGFncykgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1Rhcmdl
dFBpY2tlckVuYWJsZWQoYm9vbCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5
YmFja1RhcmdldFBpY2tlclN0YXRlKGNvbnN0IFN0cmluZyYsIFdlYkNvcmU6Ok1lZGlhUGxheWJh
Y2tUYXJnZXRDb250ZXh0OjpTdGF0ZSkgb3ZlcnJpZGU7CisgICAgdm9pZCBhZGRQbGF5YmFja1Rh
cmdldFBpY2tlckNsaWVudCh1aW50NjRfdCAvKmNvbnRleHRJZCovKSBmaW5hbDsKKyAgICB2b2lk
IHJlbW92ZVBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2NF90IC8qY29udGV4dElkKi8p
IGZpbmFsOworICAgIHZvaWQgc2hvd1BsYXliYWNrVGFyZ2V0UGlja2VyKHVpbnQ2NF90IGNvbnRl
eHRJZCwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmLCBib29sKSBmaW5hbDsKKyAgICB2b2lkIHBs
YXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50U3RhdGVEaWRDaGFuZ2UodWludDY0X3QsIFdlYkNvcmU6
Ok1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncykgZmluYWw7CisgICAgdm9pZCBzZXRNb2Nr
TWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVuYWJsZWQoYm9vbCkgZmluYWw7CisgICAgdm9pZCBz
ZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlclN0YXRlKGNvbnN0IFN0cmluZyYsIFdlYkNv
cmU6Ok1lZGlhUGxheWJhY2tUYXJnZXRDb250ZXh0OjpTdGF0ZSkgZmluYWw7CiAjZW5kaWYKIAot
ICAgIHZvaWQgaW1hZ2VPck1lZGlhRG9jdW1lbnRTaXplQ2hhbmdlZChjb25zdCBXZWJDb3JlOjpJ
bnRTaXplJikgb3ZlcnJpZGU7Ci0jaWYgRU5BQkxFKFZJREVPKQotI2lmIFVTRShHU1RSRUFNRVIp
Ci0gICAgdm9pZCByZXF1ZXN0SW5zdGFsbE1pc3NpbmdNZWRpYVBsdWdpbnMoY29uc3QgU3RyaW5n
JiAvKmRldGFpbHMqLywgY29uc3QgU3RyaW5nJiAvKmRlc2NyaXB0aW9uKi8sIFdlYkNvcmU6Ok1l
ZGlhUGxheWVyUmVxdWVzdEluc3RhbGxNaXNzaW5nUGx1Z2luc0NhbGxiYWNrJikgb3ZlcnJpZGU7
Ci0jZW5kaWYKKyAgICB2b2lkIGltYWdlT3JNZWRpYURvY3VtZW50U2l6ZUNoYW5nZWQoY29uc3Qg
V2ViQ29yZTo6SW50U2l6ZSYpIGZpbmFsOworCisjaWYgRU5BQkxFKFZJREVPKSAmJiBVU0UoR1NU
UkVBTUVSKQorICAgIHZvaWQgcmVxdWVzdEluc3RhbGxNaXNzaW5nTWVkaWFQbHVnaW5zKGNvbnN0
IFN0cmluZyYgLypkZXRhaWxzKi8sIGNvbnN0IFN0cmluZyYgLypkZXNjcmlwdGlvbiovLCBXZWJD
b3JlOjpNZWRpYVBsYXllclJlcXVlc3RJbnN0YWxsTWlzc2luZ1BsdWdpbnNDYWxsYmFjayYpIGZp
bmFsOwogI2VuZGlmCiAKLSAgICB2b2lkIGRpZEludmFsaWRhdGVEb2N1bWVudE1hcmtlclJlY3Rz
KCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRJbnZhbGlkYXRlRG9jdW1lbnRNYXJrZXJSZWN0cygp
IGZpbmFsOwogCiAgICAgU3RyaW5nIG1fY2FjaGVkVG9vbFRpcDsKICAgICBtdXRhYmxlIFJlZlB0
cjxXZWJGcmFtZT4gbV9jYWNoZWRGcmFtZVNldExhcmdlc3RGcmFtZTsKLSAgICBtdXRhYmxlIGJv
b2wgbV9jYWNoZWRNYWluRnJhbWVIYXNIb3Jpem9udGFsU2Nyb2xsYmFyOwotICAgIG11dGFibGUg
Ym9vbCBtX2NhY2hlZE1haW5GcmFtZUhhc1ZlcnRpY2FsU2Nyb2xsYmFyOworICAgIG11dGFibGUg
Ym9vbCBtX2NhY2hlZE1haW5GcmFtZUhhc0hvcml6b250YWxTY3JvbGxiYXIgeyBmYWxzZSB9Owor
ICAgIG11dGFibGUgYm9vbCBtX2NhY2hlZE1haW5GcmFtZUhhc1ZlcnRpY2FsU2Nyb2xsYmFyIHsg
ZmFsc2UgfTsKIAotICAgIFdlYlBhZ2UqIG1fcGFnZTsKKyAgICBXZWJQYWdlJiBtX3BhZ2U7CiB9
OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmNwcCBiL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmNwcAppbmRleCA1
NGIyN2I0NDA0ODUyNjllNWU4N2Y4MmQwZmI1MDJhMWYwMjJhYzMzLi44YjgwNzU1MmM0MTE0NTI2
MjQ4ODAzODNmOWQzMmFiYWEwNzZiZWZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5jcHAKKysrIGIvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuY3BwCkBAIC0y
MzgsMjEgKzIzOCwyMSBAQCB2b2lkIFdlYkVkaXRvckNsaWVudDo6Z2V0Q2xpZW50UGFzdGVib2Fy
ZERhdGFGb3JSYW5nZShSYW5nZSogcmFuZ2UsIFZlY3RvcjxTdHJpbgogICAgIG1fcGFnZS0+aW5q
ZWN0ZWRCdW5kbGVFZGl0b3JDbGllbnQoKS5nZXRQYXN0ZWJvYXJkRGF0YUZvclJhbmdlKCptX3Bh
Z2UsIHJhbmdlLCBwYXN0ZWJvYXJkVHlwZXMsIHBhc3RlYm9hcmREYXRhKTsKIH0KIAotdm9pZCBX
ZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb1N0ZXAoUGFzc1JlZlB0cjxVbmRvU3RlcD4gc3Rl
cCkKK3ZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9TdGVwKFVuZG9TdGVwJiBzdGVw
KQogewogICAgIC8vIEZJWE1FOiBBZGQgYXNzZXJ0aW9uIHRoYXQgdGhlIGNvbW1hbmQgYmVpbmcg
cmVhcHBsaWVkIGlzIHRoZSBzYW1lIGNvbW1hbmQgdGhhdCBpcwogICAgIC8vIGJlaW5nIHBhc3Nl
ZCB0byB1cy4KICAgICBpZiAobV9wYWdlLT5pc0luUmVkbygpKQogICAgICAgICByZXR1cm47CiAK
LSAgICBSZWZQdHI8V2ViVW5kb1N0ZXA+IHdlYlN0ZXAgPSBXZWJVbmRvU3RlcDo6Y3JlYXRlKHN0
ZXApOwotICAgIG1fcGFnZS0+YWRkV2ViVW5kb1N0ZXAod2ViU3RlcC0+c3RlcElEKCksIHdlYlN0
ZXAuZ2V0KCkpOwotICAgIHVpbnQzMl90IGVkaXRBY3Rpb24gPSBzdGF0aWNfY2FzdDx1aW50MzJf
dD4od2ViU3RlcC0+c3RlcCgpLT5lZGl0aW5nQWN0aW9uKCkpOworICAgIGF1dG8gd2ViU3RlcCA9
IFdlYlVuZG9TdGVwOjpjcmVhdGUoJnN0ZXApOworICAgIGF1dG8gZWRpdEFjdGlvbiA9IHN0YXRp
Y19jYXN0PHVpbnQzMl90Pih3ZWJTdGVwLT5zdGVwKCktPmVkaXRpbmdBY3Rpb24oKSk7CiAKKyAg
ICBtX3BhZ2UtPmFkZFdlYlVuZG9TdGVwKHdlYlN0ZXAtPnN0ZXBJRCgpLCB3ZWJTdGVwLnB0cigp
KTsKICAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UmVnaXN0ZXJFZGl0
Q29tbWFuZEZvclVuZG8od2ViU3RlcC0+c3RlcElEKCksIGVkaXRBY3Rpb24pKTsKIH0KIAotdm9p
ZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyUmVkb1N0ZXAoUGFzc1JlZlB0cjxVbmRvU3RlcD4p
Cit2b2lkIFdlYkVkaXRvckNsaWVudDo6cmVnaXN0ZXJSZWRvU3RlcChVbmRvU3RlcCYpCiB7CiB9
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
V2ViRWRpdG9yQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L1dlYkVkaXRvckNsaWVudC5oCmluZGV4IDhkODE3NGRjOTEzYWY1ZTJjYjMwMTgwNzQyMDVh
ZDk1ODE5NjRhNjAuLmNlMmJjYzQ3MTg4NGFlZTFkOWRhNWMyZGE3YzVjNzhiNmVmODU0ZWMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRp
dG9yQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9XZWJFZGl0b3JDbGllbnQuaApAQCAtNzEsOCArNzEsOCBAQCBwcml2YXRlOgogICAgIHZvaWQg
ZGlkV3JpdGVTZWxlY3Rpb25Ub1Bhc3RlYm9hcmQoKSBmaW5hbDsKICAgICB2b2lkIGdldENsaWVu
dFBhc3RlYm9hcmREYXRhRm9yUmFuZ2UoV2ViQ29yZTo6UmFuZ2UqLCBWZWN0b3I8U3RyaW5nPiYg
cGFzdGVib2FyZFR5cGVzLCBWZWN0b3I8UmVmUHRyPFdlYkNvcmU6OlNoYXJlZEJ1ZmZlcj4+JiBw
YXN0ZWJvYXJkRGF0YSkgZmluYWw7CiAgICAgCi0gICAgdm9pZCByZWdpc3RlclVuZG9TdGVwKFBh
c3NSZWZQdHI8V2ViQ29yZTo6VW5kb1N0ZXA+KSBmaW5hbDsKLSAgICB2b2lkIHJlZ2lzdGVyUmVk
b1N0ZXAoUGFzc1JlZlB0cjxXZWJDb3JlOjpVbmRvU3RlcD4pIGZpbmFsOworICAgIHZvaWQgcmVn
aXN0ZXJVbmRvU3RlcChXZWJDb3JlOjpVbmRvU3RlcCYpIGZpbmFsOworICAgIHZvaWQgcmVnaXN0
ZXJSZWRvU3RlcChXZWJDb3JlOjpVbmRvU3RlcCYpIGZpbmFsOwogICAgIHZvaWQgY2xlYXJVbmRv
UmVkb09wZXJhdGlvbnMoKSBmaW5hbDsKIAogICAgIGJvb2wgY2FuQ29weUN1dChXZWJDb3JlOjpG
cmFtZSosIGJvb2wgZGVmYXVsdFZhbHVlKSBjb25zdCBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQu
Y3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxv
YWRlckNsaWVudC5jcHAKaW5kZXggZjE3NzVjNjg2ZjhmNDA2NTA4Njg1MzUyNWUwMGYxZGQyYjEz
MWJkZi4uOGE3NTk0ZTAxM2IyMzE3YTNhMzI3YmFiZDQ0OTJmOTM0ZTIwMWRiZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRl
ckNsaWVudC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKQEAgLTcwMSw3ICs3MDEsNyBAQCB2b2lkIFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvclJlc3BvbnNlKGNvbnN0IFJl
c291cmNlUmVzcG9ucwogICAgICAgICBtX2ZyYW1lLT5kaWRSZWNlaXZlUG9saWN5RGVjaXNpb24o
bGlzdGVuZXJJRCwgc3RhdGljX2Nhc3Q8UG9saWN5QWN0aW9uPihwb2xpY3lBY3Rpb24pLCAwLCBk
b3dubG9hZElEKTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNp
ZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgbmF2aWdh
dGlvbkFjdGlvbiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBQYXNzUmVmUHRyPEZv
cm1TdGF0ZT4gZm9ybVN0YXRlLCBjb25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgRnJhbWVQb2xpY3lG
dW5jdGlvbiBmdW5jdGlvbikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVj
aWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIG5hdmln
YXRpb25BY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBm
b3JtU3RhdGUsIGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1
bmN0aW9uKQogewogICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7CiAgICAg
aWYgKCF3ZWJQYWdlKSB7CkBAIC03MzcsNyArNzM3LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNs
aWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdh
dGkKICAgICB3ZWJQYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkRlY2lkZVBvbGlj
eUZvck5ld1dpbmRvd0FjdGlvbihtX2ZyYW1lLT5mcmFtZUlEKCksIFNlY3VyaXR5T3JpZ2luRGF0
YTo6ZnJvbUZyYW1lKGNvcmVGcmFtZSksIG5hdmlnYXRpb25BY3Rpb25EYXRhLCByZXF1ZXN0LCBm
cmFtZU5hbWUsIGxpc3RlbmVySUQsIFVzZXJEYXRhKFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnRy
YW5zZm9ybU9iamVjdHNUb0hhbmRsZXModXNlckRhdGEuZ2V0KCkpLmdldCgpKSkpOwogfQogCi12
b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRp
b25BY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgbmF2aWdhdGlvbkFjdGlvbiwgY29uc3Qg
UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4gcHJwRm9ybVN0
YXRlLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQordm9pZCBXZWJGcmFtZUxvYWRlckNs
aWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5hdmln
YXRpb25BY3Rpb24mIG5hdmlnYXRpb25BY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVx
dWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24p
CiB7CiAgICAgV2ViUGFnZSogd2ViUGFnZSA9IG1fZnJhbWUtPnBhZ2UoKTsKICAgICBpZiAoIXdl
YlBhZ2UpIHsKQEAgLTc1Miw3ICs3NTIsNiBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpk
aXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdAogICAg
IH0KIAogICAgIFJlZlB0cjxBUEk6Ok9iamVjdD4gdXNlckRhdGE7Ci0gICAgUmVmUHRyPEZvcm1T
dGF0ZT4gZm9ybVN0YXRlID0gcHJwRm9ybVN0YXRlOwogCiAgICAgUmVmUHRyPEluamVjdGVkQnVu
ZGxlTmF2aWdhdGlvbkFjdGlvbj4gYWN0aW9uID0gSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0
aW9uOjpjcmVhdGUobV9mcmFtZSwgbmF2aWdhdGlvbkFjdGlvbiwgZm9ybVN0YXRlKTsKIApAQCAt
NzgyLDcgKzc4MSw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRl
UG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0CiAgICAgY2FzZSBOYXZpZ2F0
aW9uVHlwZTo6Rm9ybVN1Ym1pdHRlZDoKICAgICBjYXNlIE5hdmlnYXRpb25UeXBlOjpGb3JtUmVz
dWJtaXR0ZWQ6CiAgICAgICAgIGlmIChmb3JtU3RhdGUpCi0gICAgICAgICAgICBvcmlnaW5hdGlu
Z0ZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZvcm1TdGF0ZS0+c291cmNlRG9jdW1l
bnQoKS0+ZnJhbWUoKSk7CisgICAgICAgICAgICBvcmlnaW5hdGluZ0ZyYW1lID0gV2ViRnJhbWU6
OmZyb21Db3JlRnJhbWUoKmZvcm1TdGF0ZS0+c291cmNlRG9jdW1lbnQoKS5mcmFtZSgpKTsKICAg
ICAgICAgYnJlYWs7CiAgICAgY2FzZSBOYXZpZ2F0aW9uVHlwZTo6QmFja0ZvcndhcmQ6CiAgICAg
Y2FzZSBOYXZpZ2F0aW9uVHlwZTo6UmVsb2FkOgpAQCAtODQzLDQwICs4NDIsMzYgQEAgdm9pZCBX
ZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hVbmFibGVUb0ltcGxlbWVudFBvbGljeShjb25z
dCBSZXNvdXJjZUVycm9yJgogICAgIHdlYlBhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94
eTo6VW5hYmxlVG9JbXBsZW1lbnRQb2xpY3kobV9mcmFtZS0+ZnJhbWVJRCgpLCBlcnJvciwgVXNl
ckRhdGEoV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkudHJhbnNmb3JtT2JqZWN0c1RvSGFuZGxlcyh1
c2VyRGF0YS5nZXQoKSkuZ2V0KCkpKSk7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChQYXNzUmVmUHRyPEZvcm1TdGF0ZT4gcHJwRm9y
bVN0YXRlKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1p
dEV2ZW50KFJlZjxGb3JtU3RhdGU+JiYgZm9ybVN0YXRlKQogewotICAgIFdlYlBhZ2UqIHdlYlBh
Z2UgPSBtX2ZyYW1lLT5wYWdlKCk7CisgICAgYXV0byogd2ViUGFnZSA9IG1fZnJhbWUtPnBhZ2Uo
KTsKICAgICBpZiAoIXdlYlBhZ2UpCiAgICAgICAgIHJldHVybjsKIAotICAgIFJlZlB0cjxGb3Jt
U3RhdGU+IGZvcm1TdGF0ZSA9IHBycEZvcm1TdGF0ZTsKLSAgICBIVE1MRm9ybUVsZW1lbnQqIGZv
cm0gPSBmb3JtU3RhdGUtPmZvcm0oKTsKKyAgICBhdXRvJiBmb3JtID0gZm9ybVN0YXRlLT5mb3Jt
KCk7CiAKLSAgICBXZWJGcmFtZSogc291cmNlRnJhbWUgPSBXZWJGcmFtZTo6ZnJvbUNvcmVGcmFt
ZSgqZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLT5mcmFtZSgpKTsKKyAgICBBU1NFUlQoZm9y
bVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLmZyYW1lKCkpOworICAgIGF1dG8qIHNvdXJjZUZyYW1l
ID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZvcm1TdGF0ZS0+c291cmNlRG9jdW1lbnQoKS5m
cmFtZSgpKTsKICAgICBBU1NFUlQoc291cmNlRnJhbWUpOwogCi0gICAgd2ViUGFnZS0+aW5qZWN0
ZWRCdW5kbGVGb3JtQ2xpZW50KCkud2lsbFNlbmRTdWJtaXRFdmVudCh3ZWJQYWdlLCBmb3JtLCBt
X2ZyYW1lLCBzb3VyY2VGcmFtZSwgZm9ybVN0YXRlLT50ZXh0RmllbGRWYWx1ZXMoKSk7CisgICAg
d2ViUGFnZS0+aW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCkud2lsbFNlbmRTdWJtaXRFdmVudCh3
ZWJQYWdlLCAmZm9ybSwgbV9mcmFtZSwgc291cmNlRnJhbWUsIGZvcm1TdGF0ZS0+dGV4dEZpZWxk
VmFsdWVzKCkpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxT
dWJtaXRGb3JtKFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiBwcnBGb3JtU3RhdGUsIEZyYW1lUG9saWN5
RnVuY3Rpb24gZnVuY3Rpb24pCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdp
bGxTdWJtaXRGb3JtKEZvcm1TdGF0ZSYgZm9ybVN0YXRlLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1
bmN0aW9uKQogewogICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7CiAgICAg
aWYgKCF3ZWJQYWdlKQogICAgICAgICByZXR1cm47CiAKLSAgICAvLyBGSVhNRTogUGFzcyBtb3Jl
IG9mIHRoZSBmb3JtIHN0YXRlLgotICAgIFJlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSA9IHBy
cEZvcm1TdGF0ZTsKLSAgICAKLSAgICBIVE1MRm9ybUVsZW1lbnQqIGZvcm0gPSBmb3JtU3RhdGUt
PmZvcm0oKTsKKyAgICBhdXRvJiBmb3JtID0gZm9ybVN0YXRlLmZvcm0oKTsKIAotICAgIFdlYkZy
YW1lKiBzb3VyY2VGcmFtZSA9IFdlYkZyYW1lOjpmcm9tQ29yZUZyYW1lKCpmb3JtU3RhdGUtPnNv
dXJjZURvY3VtZW50KCktPmZyYW1lKCkpOworICAgIGF1dG8qIHNvdXJjZUZyYW1lID0gV2ViRnJh
bWU6OmZyb21Db3JlRnJhbWUoKmZvcm1TdGF0ZS5zb3VyY2VEb2N1bWVudCgpLmZyYW1lKCkpOwog
ICAgIEFTU0VSVChzb3VyY2VGcmFtZSk7CiAKLSAgICBjb25zdCBWZWN0b3I8c3RkOjpwYWlyPFN0
cmluZywgU3RyaW5nPj4mIHZhbHVlcyA9IGZvcm1TdGF0ZS0+dGV4dEZpZWxkVmFsdWVzKCk7Cisg
ICAgYXV0byYgdmFsdWVzID0gZm9ybVN0YXRlLnRleHRGaWVsZFZhbHVlcygpOwogCiAgICAgUmVm
UHRyPEFQSTo6T2JqZWN0PiB1c2VyRGF0YTsKLSAgICB3ZWJQYWdlLT5pbmplY3RlZEJ1bmRsZUZv
cm1DbGllbnQoKS53aWxsU3VibWl0Rm9ybSh3ZWJQYWdlLCBmb3JtLCBtX2ZyYW1lLCBzb3VyY2VG
cmFtZSwgdmFsdWVzLCB1c2VyRGF0YSk7Ci0KKyAgICB3ZWJQYWdlLT5pbmplY3RlZEJ1bmRsZUZv
cm1DbGllbnQoKS53aWxsU3VibWl0Rm9ybSh3ZWJQYWdlLCAmZm9ybSwgbV9mcmFtZSwgc291cmNl
RnJhbWUsIHZhbHVlcywgdXNlckRhdGEpOwogCiAgICAgdWludDY0X3QgbGlzdGVuZXJJRCA9IG1f
ZnJhbWUtPnNldFVwUG9saWN5TGlzdGVuZXIoV1RGTW92ZShmdW5jdGlvbikpOwogCkBAIC0xNDAw
LDE0ICsxMzk1LDEzIEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNvbnZlcnRNYWluUmVz
b3VyY2VMb2FkVG9Eb3dubG9hZChEb2N1bWVudExvYWRlciAqZG9jCiAgICAgbV9mcmFtZS0+Y29u
dmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKGRvY3VtZW50TG9hZGVyLCBzZXNzaW9uSUQs
IHJlcXVlc3QsIHJlc3BvbnNlKTsKIH0KIAotUmVmUHRyPEZyYW1lPiBXZWJGcmFtZUxvYWRlckNs
aWVudDo6Y3JlYXRlRnJhbWUoY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgbmFtZSwgSFRN
TEZyYW1lT3duZXJFbGVtZW50KiBvd25lckVsZW1lbnQsCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgYm9v
bCAvKmFsbG93c1Njcm9sbGluZyovLCBpbnQgLyptYXJnaW5XaWR0aCovLCBpbnQgLyptYXJnaW5I
ZWlnaHQqLykKK1JlZlB0cjxGcmFtZT4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1l
KGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIG5hbWUsIEhUTUxGcmFtZU93bmVyRWxlbWVu
dCYgb3duZXJFbGVtZW50LAorICAgIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIGJvb2wgLyphbGxv
d3NTY3JvbGxpbmcqLywgaW50IC8qbWFyZ2luV2lkdGgqLywgaW50IC8qbWFyZ2luSGVpZ2h0Ki8p
CiB7Ci0gICAgV2ViUGFnZSogd2ViUGFnZSA9IG1fZnJhbWUtPnBhZ2UoKTsKKyAgICBhdXRvKiB3
ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpOwogCi0gICAgUmVmUHRyPFdlYkZyYW1lPiBzdWJmcmFt
ZSA9IFdlYkZyYW1lOjpjcmVhdGVTdWJmcmFtZSh3ZWJQYWdlLCBuYW1lLCBvd25lckVsZW1lbnQp
OwotCi0gICAgRnJhbWUqIGNvcmVTdWJmcmFtZSA9IHN1YmZyYW1lLT5jb3JlRnJhbWUoKTsKKyAg
ICBhdXRvIHN1YmZyYW1lID0gV2ViRnJhbWU6OmNyZWF0ZVN1YmZyYW1lKHdlYlBhZ2UsIG5hbWUs
ICZvd25lckVsZW1lbnQpOworICAgIGF1dG8qIGNvcmVTdWJmcmFtZSA9IHN1YmZyYW1lLT5jb3Jl
RnJhbWUoKTsKICAgICBpZiAoIWNvcmVTdWJmcmFtZSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7
CiAKQEAgLTE0MjcsNyArMTQyMSw3IEBAIFJlZlB0cjxGcmFtZT4gV2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIG5hCiAgICAgcmV0
dXJuIGNvcmVTdWJmcmFtZTsKIH0KIAotUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiwgSFRNTFBsdWdJbkVsZW1lbnQqIHBsdWdp
bkVsZW1lbnQsIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1l
cywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzLCBjb25zdCBTdHJpbmcmIG1pbWVU
eXBlLCBib29sIGxvYWRNYW51YWxseSkKK1JlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xp
ZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYsIEhUTUxQbHVnSW5FbGVtZW50JiBwbHVn
aW5FbGVtZW50LCBjb25zdCBVUkwmIHVybCwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFt
ZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcywgY29uc3QgU3RyaW5nJiBtaW1l
VHlwZSwgYm9vbCBsb2FkTWFudWFsbHkpCiB7CiAgICAgQVNTRVJUKHBhcmFtTmFtZXMuc2l6ZSgp
ID09IHBhcmFtVmFsdWVzLnNpemUoKSk7CiAgICAgQVNTRVJUKG1fZnJhbWUtPnBhZ2UoKSk7CkBA
IC0xNDQ0LDExICsxNDM4LDExIEBAIFJlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50
OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYsIEhUTUxQbHVnSW5FbGVtCiAjZW5kaWYKIAog
I2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQotICAgIGF1dG8gcGx1Z2luID0gbV9mcmFt
ZS0+cGFnZSgpLT5jcmVhdGVQbHVnaW4obV9mcmFtZSwgcGx1Z2luRWxlbWVudCwgcGFyYW1ldGVy
cywgcGFyYW1ldGVycy5taW1lVHlwZSk7CisgICAgYXV0byBwbHVnaW4gPSBtX2ZyYW1lLT5wYWdl
KCktPmNyZWF0ZVBsdWdpbihtX2ZyYW1lLCAmcGx1Z2luRWxlbWVudCwgcGFyYW1ldGVycywgcGFy
YW1ldGVycy5taW1lVHlwZSk7CiAgICAgaWYgKCFwbHVnaW4pCiAgICAgICAgIHJldHVybiBudWxs
cHRyOwogCi0gICAgcmV0dXJuIFBsdWdpblZpZXc6OmNyZWF0ZShwbHVnaW5FbGVtZW50LCBXVEZN
b3ZlKHBsdWdpbiksIHBhcmFtZXRlcnMpOworICAgIHJldHVybiBQbHVnaW5WaWV3OjpjcmVhdGUo
cGx1Z2luRWxlbWVudCwgcGx1Z2luLnJlbGVhc2VOb25OdWxsKCksIHBhcmFtZXRlcnMpOwogI2Vs
c2UKICAgICBVTlVTRURfUEFSQU0ocGx1Z2luRWxlbWVudCk7CiAgICAgcmV0dXJuIG51bGxwdHI7
CkBAIC0xNDU4LDEzICsxNDUyLDE0IEBAIFJlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xp
ZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYsIEhUTUxQbHVnSW5FbGVtCiB2b2lkIFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpyZWNyZWF0ZVBsdWdpbihXaWRnZXQqIHdpZGdldCkKIHsKICNp
ZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKLSAgICBBU1NFUlQod2lkZ2V0ICYmIHdpZGdl
dC0+aXNQbHVnaW5WaWV3QmFzZSgpKTsKKyAgICBBU1NFUlQod2lkZ2V0KTsKKyAgICBBU1NFUlQo
d2lkZ2V0LT5pc1BsdWdpblZpZXdCYXNlKCkpOwogICAgIEFTU0VSVChtX2ZyYW1lLT5wYWdlKCkp
OwogCi0gICAgUGx1Z2luVmlldyogcGx1Z2luVmlldyA9IHN0YXRpY19jYXN0PFBsdWdpblZpZXcq
Pih3aWRnZXQpOworICAgIGF1dG8mIHBsdWdpblZpZXcgPSBzdGF0aWNfY2FzdDxQbHVnaW5WaWV3
Jj4oKndpZGdldCk7CiAgICAgU3RyaW5nIG5ld01JTUVUeXBlOwotICAgIGF1dG8gcGx1Z2luID0g
bV9mcmFtZS0+cGFnZSgpLT5jcmVhdGVQbHVnaW4obV9mcmFtZSwgcGx1Z2luVmlldy0+cGx1Z2lu
RWxlbWVudCgpLCBwbHVnaW5WaWV3LT5pbml0aWFsUGFyYW1ldGVycygpLCBuZXdNSU1FVHlwZSk7
Ci0gICAgcGx1Z2luVmlldy0+cmVjcmVhdGVBbmRJbml0aWFsaXplKFdURk1vdmUocGx1Z2luKSk7
CisgICAgYXV0byBwbHVnaW4gPSBtX2ZyYW1lLT5wYWdlKCktPmNyZWF0ZVBsdWdpbihtX2ZyYW1l
LCBwbHVnaW5WaWV3LnBsdWdpbkVsZW1lbnQoKSwgcGx1Z2luVmlldy5pbml0aWFsUGFyYW1ldGVy
cygpLCBuZXdNSU1FVHlwZSk7CisgICAgcGx1Z2luVmlldy5yZWNyZWF0ZUFuZEluaXRpYWxpemUo
cGx1Z2luLnJlbGVhc2VOb25OdWxsKCkpOwogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0od2lkZ2V0
KTsKICNlbmRpZgpAQCAtMTQ3Nyw5ICsxNDcyLDEwIEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGll
bnQ6OnJlZGlyZWN0RGF0YVRvUGx1Z2luKFdpZGdldCogcGx1Z2luV2lkZ2V0KQogfQogCiAjaWYg
RU5BQkxFKFdFQkdMKQorCiBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OndlYkdMUG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYgdXJsKSBjb25zdAogewotICAg
IGlmIChXZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpKQorICAgIGlmIChhdXRvKiB3
ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpKQogICAgICAgICByZXR1cm4gd2ViUGFnZS0+d2ViR0xQ
b2xpY3lGb3JVUkwobV9mcmFtZSwgdXJsKTsKIAogICAgIHJldHVybiBXZWJHTEFsbG93Q3JlYXRp
b247CkBAIC0xNDg3LDMxICsxNDgzLDMyIEBAIFdlYkNvcmU6OldlYkdMTG9hZFBvbGljeSBXZWJG
cmFtZUxvYWRlckNsaWVudDo6d2ViR0xQb2xpY3lGb3JVUkwoY29uc3QgU3RyaW5nJiB1CiAKIFdl
YkNvcmU6OldlYkdMTG9hZFBvbGljeSBXZWJGcmFtZUxvYWRlckNsaWVudDo6cmVzb2x2ZVdlYkdM
UG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYgdXJsKSBjb25zdAogewotICAgIGlmIChXZWJQYWdl
KiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpKQorICAgIGlmIChhdXRvKiB3ZWJQYWdlID0gbV9m
cmFtZS0+cGFnZSgpKQogICAgICAgICByZXR1cm4gd2ViUGFnZS0+cmVzb2x2ZVdlYkdMUG9saWN5
Rm9yVVJMKG1fZnJhbWUsIHVybCk7CiAKICAgICByZXR1cm4gV2ViR0xBbGxvd0NyZWF0aW9uOwog
fQotI2VuZGlmIC8vIEVOQUJMRShXRUJHTCkKIAotUGFzc1JlZlB0cjxXaWRnZXQ+IFdlYkZyYW1l
TG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmIHBsdWdp
blNpemUsIEhUTUxBcHBsZXRFbGVtZW50KiBhcHBsZXRFbGVtZW50LCBjb25zdCBVUkwmLCBjb25z
dCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFt
VmFsdWVzKQorI2VuZGlmCisKK1JlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpj
cmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmIHBsdWdpblNpemUsIEhUTUxBcHBs
ZXRFbGVtZW50JiBhcHBsZXRFbGVtZW50LCBjb25zdCBVUkwmLCBjb25zdCBWZWN0b3I8U3RyaW5n
PiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKQogewogI2lm
IEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQotICAgIGF1dG8gcGx1Z2luID0gY3JlYXRlUGx1
Z2luKHBsdWdpblNpemUsIGFwcGxldEVsZW1lbnQsIFVSTCgpLCBwYXJhbU5hbWVzLCBwYXJhbVZh
bHVlcywgYXBwbGV0RWxlbWVudC0+c2VydmljZVR5cGUoKSwgZmFsc2UpOworICAgIGF1dG8gcGx1
Z2luID0gY3JlYXRlUGx1Z2luKHBsdWdpblNpemUsIGFwcGxldEVsZW1lbnQsIFVSTCgpLCBwYXJh
bU5hbWVzLCBwYXJhbVZhbHVlcywgYXBwbGV0RWxlbWVudC5zZXJ2aWNlVHlwZSgpLCBmYWxzZSk7
CiAgICAgaWYgKCFwbHVnaW4pIHsKLSAgICAgICAgaWYgKFdlYlBhZ2UqIHdlYlBhZ2UgPSBtX2Zy
YW1lLT5wYWdlKCkpIHsKLSAgICAgICAgICAgIFN0cmluZyBmcmFtZVVSTFN0cmluZyA9IG1fZnJh
bWUtPmNvcmVGcmFtZSgpLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgp
LnN0cmluZygpOwotICAgICAgICAgICAgU3RyaW5nIHBhZ2VVUkxTdHJpbmcgPSB3ZWJQYWdlLT5j
b3JlUGFnZSgpLT5tYWluRnJhbWUoKS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5yZXNwb25z
ZVVSTCgpLnN0cmluZygpOwotICAgICAgICAgICAgd2ViUGFnZS0+c2VuZChNZXNzYWdlczo6V2Vi
UGFnZVByb3h5OjpEaWRGYWlsVG9Jbml0aWFsaXplUGx1Z2luKGFwcGxldEVsZW1lbnQtPnNlcnZp
Y2VUeXBlKCksIGZyYW1lVVJMU3RyaW5nLCBwYWdlVVJMU3RyaW5nKSk7CisgICAgICAgIGlmIChh
dXRvKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpKSB7CisgICAgICAgICAgICBhdXRvIGZyYW1l
VVJMU3RyaW5nID0gbV9mcmFtZS0+Y29yZUZyYW1lKCktPmxvYWRlcigpLmRvY3VtZW50TG9hZGVy
KCktPnJlc3BvbnNlVVJMKCkuc3RyaW5nKCk7CisgICAgICAgICAgICBhdXRvIHBhZ2VVUkxTdHJp
bmcgPSB3ZWJQYWdlLT5jb3JlUGFnZSgpLT5tYWluRnJhbWUoKS5sb2FkZXIoKS5kb2N1bWVudExv
YWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOworICAgICAgICAgICAgd2ViUGFnZS0+c2Vu
ZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRGYWlsVG9Jbml0aWFsaXplUGx1Z2luKGFwcGxl
dEVsZW1lbnQuc2VydmljZVR5cGUoKSwgZnJhbWVVUkxTdHJpbmcsIHBhZ2VVUkxTdHJpbmcpKTsK
ICAgICAgICAgfQogICAgIH0KLSAgICByZXR1cm4gV1RGTW92ZShwbHVnaW4pOworICAgIHJldHVy
biBwbHVnaW47CiAjZWxzZQogICAgIFVOVVNFRF9QQVJBTShwbHVnaW5TaXplKTsKICAgICBVTlVT
RURfUEFSQU0oYXBwbGV0RWxlbWVudCk7CiAgICAgVU5VU0VEX1BBUkFNKHBhcmFtTmFtZXMpOwog
ICAgIFVOVVNFRF9QQVJBTShwYXJhbVZhbHVlcyk7Ci0gICAgcmV0dXJuIDA7CisgICAgcmV0dXJu
IG51bGxwdHI7CiAjZW5kaWYKIH0KIApAQCAtMTcxNywxMyArMTcxNCwxMyBAQCBib29sIFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpzaG91bGRGb3JjZVVuaXZlcnNhbEFjY2Vzc0Zyb21Mb2NhbFVSTChj
b25zdCBXZWJDb3JlOgogICAgIHJldHVybiB3ZWJQYWdlLT5pbmplY3RlZEJ1bmRsZUxvYWRlckNs
aWVudCgpLnNob3VsZEZvcmNlVW5pdmVyc2FsQWNjZXNzRnJvbUxvY2FsVVJMKHdlYlBhZ2UsIHVy
bC5zdHJpbmcoKSk7CiB9CiAKLVBhc3NSZWZQdHI8RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkKK1JlZjxGcmFtZU5l
dHdvcmtpbmdDb250ZXh0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlTmV0d29ya2luZ0Nv
bnRleHQoKQogewotICAgIGF1dG8gY29udGV4dCA9IFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQ6
OmNyZWF0ZShtX2ZyYW1lKTsKLSAgICByZXR1cm4gV1RGTW92ZShjb250ZXh0KTsKKyAgICByZXR1
cm4gV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dDo6Y3JlYXRlKG1fZnJhbWUpOwogfQogCiAjaWYg
RU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQorCiB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpj
b250ZW50RmlsdGVyRGlkQmxvY2tMb2FkKFdlYkNvcmU6OkNvbnRlbnRGaWx0ZXJVbmJsb2NrSGFu
ZGxlciB1bmJsb2NrSGFuZGxlcikKIHsKICAgICBpZiAoIXVuYmxvY2tIYW5kbGVyLm5lZWRzVUlQ
cm9jZXNzKCkpIHsKQEAgLTE3MzQsMTIgKzE3MzEsMTUgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNs
aWVudDo6Y29udGVudEZpbHRlckRpZEJsb2NrTG9hZChXZWJDb3JlOjpDb250ZW50RmlsdGVyVW5i
bG8KICAgICBpZiAoV2ViUGFnZSogd2ViUGFnZSB7IG1fZnJhbWUtPnBhZ2UoKSB9KQogICAgICAg
ICB3ZWJQYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkNvbnRlbnRGaWx0ZXJEaWRC
bG9ja0xvYWRGb3JGcmFtZSh1bmJsb2NrSGFuZGxlciwgbV9mcmFtZS0+ZnJhbWVJRCgpKSk7CiB9
CisKICNlbmRpZgogCiAjaWYgRU5BQkxFKFJFUVVFU1RfQVVUT0NPTVBMRVRFKQotdm9pZCBXZWJG
cmFtZUxvYWRlckNsaWVudDo6ZGlkUmVxdWVzdEF1dG9jb21wbGV0ZShQYXNzUmVmUHRyPFdlYkNv
cmU6OkZvcm1TdGF0ZT4pCisKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpZFJlcXVlc3RB
dXRvY29tcGxldGUoUmVmPFdlYkNvcmU6OkZvcm1TdGF0ZT4mJikKIHsKIH0KKwogI2VuZGlmCiAK
IHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnByZWZldGNoRE5TKGNvbnN0IFN0cmluZyYgaG9z
dG5hbWUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKaW5kZXggZGIyZjk0OTE0MDcyNDA3
NzczYmQwODZmN2Y4YjlhY2QwN2VlYTc0Ni4uMGI4MjliNGEyOTA3Yzg0ZTg5MTYwYzE4N2UzOGRl
NGFmOTNhNTE5OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3Jl
U3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaApAQCAtMzYsNyArMzYs
NyBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIGNsYXNzIFBsdWdpblZpZXc7CiBjbGFzcyBXZWJGcmFt
ZTsKICAgICAKLWNsYXNzIFdlYkZyYW1lTG9hZGVyQ2xpZW50IDogcHVibGljIFdlYkNvcmU6OkZy
YW1lTG9hZGVyQ2xpZW50IHsKK2NsYXNzIFdlYkZyYW1lTG9hZGVyQ2xpZW50IGZpbmFsIDogcHVi
bGljIFdlYkNvcmU6OkZyYW1lTG9hZGVyQ2xpZW50IHsKIHB1YmxpYzoKICAgICBXZWJGcmFtZUxv
YWRlckNsaWVudCgpOwogICAgIH5XZWJGcmFtZUxvYWRlckNsaWVudCgpOwpAQCAtNDksMjE3ICs0
OSwyMTYgQEAgcHVibGljOgogICAgIHZvaWQgc2V0VXNlSWNvbkxvYWRpbmdDbGllbnQoYm9vbCB1
c2VJY29uTG9hZGluZ0NsaWVudCkgeyBtX3VzZUljb25Mb2FkaW5nQ2xpZW50ID0gdXNlSWNvbkxv
YWRpbmdDbGllbnQ7IH0KIAogcHJpdmF0ZToKLSAgICB2b2lkIGZyYW1lTG9hZGVyRGVzdHJveWVk
KCkgb3ZlcnJpZGU7CisgICAgdm9pZCBmcmFtZUxvYWRlckRlc3Ryb3llZCgpIGZpbmFsOwogCi0g
ICAgYm9vbCBoYXNIVE1MVmlldygpIGNvbnN0IG92ZXJyaWRlOwotICAgIGJvb2wgaGFzV2ViVmll
dygpIGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wgaGFzSFRNTFZpZXcoKSBjb25zdCBmaW5hbDsK
KyAgICBib29sIGhhc1dlYlZpZXcoKSBjb25zdCBmaW5hbDsKICAgICAKLSAgICB2b2lkIG1ha2VS
ZXByZXNlbnRhdGlvbihXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIG92ZXJyaWRlOworICAgIHZv
aWQgbWFrZVJlcHJlc2VudGF0aW9uKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgZmluYWw7CiAj
aWYgUExBVEZPUk0oSU9TKQotICAgIGJvb2wgZm9yY2VMYXlvdXRPblJlc3RvcmVGcm9tUGFnZUNh
Y2hlKCkgb3ZlcnJpZGU7CisgICAgYm9vbCBmb3JjZUxheW91dE9uUmVzdG9yZUZyb21QYWdlQ2Fj
aGUoKSBmaW5hbDsKICNlbmRpZgotICAgIHZvaWQgZm9yY2VMYXlvdXRGb3JOb25IVE1MKCkgb3Zl
cnJpZGU7CisgICAgdm9pZCBmb3JjZUxheW91dEZvck5vbkhUTUwoKSBmaW5hbDsKICAgICAKLSAg
ICB2b2lkIHNldENvcGllc09uU2Nyb2xsKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRDb3BpZXNP
blNjcm9sbCgpIGZpbmFsOwogICAgIAotICAgIHZvaWQgZGV0YWNoZWRGcm9tUGFyZW50MigpIG92
ZXJyaWRlOwotICAgIHZvaWQgZGV0YWNoZWRGcm9tUGFyZW50MygpIG92ZXJyaWRlOworICAgIHZv
aWQgZGV0YWNoZWRGcm9tUGFyZW50MigpIGZpbmFsOworICAgIHZvaWQgZGV0YWNoZWRGcm9tUGFy
ZW50MygpIGZpbmFsOwogICAgIAotICAgIHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJl
cXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlcios
IGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRlOworICAgIHZvaWQgYXNz
aWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYp
IGZpbmFsOwogICAgIAotICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291
cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVz
cG9uc2UpIG92ZXJyaWRlOwotICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIG92ZXJyaWRl
OwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdl
YkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNw
YXRjaFdpbGxTZW5kUmVxdWVzdChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkgZmluYWw7CisgICAgYm9vbCBzaG91
bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllcikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVBdXRo
ZW50aWNhdGlvbkNoYWxsZW5nZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKSBm
aW5hbDsKICNpZiBVU0UoUFJPVEVDVElPTl9TUEFDRV9BVVRIX0NBTExCQUNLKQotICAgIGJvb2wg
Y2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShXZWJDb3JlOjpEb2N1bWVudExv
YWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UHJvdGVjdGlv
blNwYWNlJikgb3ZlcnJpZGU7CisgICAgYm9vbCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVj
dGlvblNwYWNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyLCBjb25zdCBXZWJDb3JlOjpQcm90ZWN0aW9uU3BhY2UmKSBmaW5hbDsKICNlbmRpZgogI2lm
IFBMQVRGT1JNKElPUykKLSAgICBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBjb25uZWN0aW9u
UHJvcGVydGllcyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRp
Zmllcikgb3ZlcnJpZGU7CisgICAgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gY29ubmVjdGlv
blByb3BlcnRpZXMoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIpIGZpbmFsOwogI2VuZGlmCi0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25z
ZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0
Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllciwgaW50IGRhdGFMZW5ndGgpIG92ZXJyaWRlOwotICAgIHZvaWQg
ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbExv
YWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKLSAgICBib29sIGRpc3Bh
dGNoRGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
KiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXNwb25zZSYsIGludCBsZW5ndGgpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hEaWRS
ZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2
b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoKSBmaW5hbDsKKyAg
ICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlcios
IHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZh
aWxMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmluYWw7CisgICAgYm9vbCBkaXNw
YXRjaERpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShXZWJDb3JlOjpEb2N1bWVudExvYWRl
ciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlUmVzcG9uc2UmLCBpbnQgbGVuZ3RoKSBmaW5hbDsKICNpZiBFTkFCTEUoREFUQV9ERVRFQ1RJ
T04pCi0gICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaERhdGFEZXRlY3Rpb24oTlNBcnJheSAqZGV0
ZWN0aW9uUmVzdWx0cykgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaERhdGFE
ZXRlY3Rpb24oTlNBcnJheSAqZGV0ZWN0aW9uUmVzdWx0cykgZmluYWw7CiAjZW5kaWYKICAgICAK
LSAgICB2b2lkIGRpc3BhdGNoRGlkRGlzcGF0Y2hPbmxvYWRFdmVudHMoKSBvdmVycmlkZTsKLSAg
ICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVNlcnZlclJlZGlyZWN0Rm9yUHJvdmlzaW9uYWxMb2Fk
KCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZENoYW5nZVByb3Zpc2lvbmFsVVJMKCkg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZENhbmNlbENsaWVudFJlZGlyZWN0KCkgb3Zl
cnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxQZXJmb3JtQ2xpZW50UmVkaXJlY3QoY29uc3Qg
V2ViQ29yZTo6VVJMJiwgZG91YmxlIGludGVydmFsLCBkb3VibGUgZmlyZURhdGUpIG92ZXJyaWRl
OwotICAgIHZvaWQgZGlzcGF0Y2hEaWRDaGFuZ2VMb2NhdGlvbldpdGhpblBhZ2UoKSBvdmVycmlk
ZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUHVzaFN0YXRlV2l0aGluUGFnZSgpIG92ZXJyaWRlOwot
ICAgIHZvaWQgZGlzcGF0Y2hEaWRSZXBsYWNlU3RhdGVXaXRoaW5QYWdlKCkgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBkaXNwYXRjaERpZFBvcFN0YXRlV2l0aGluUGFnZSgpIG92ZXJyaWRlOwotICAgIHZv
aWQgZGlzcGF0Y2hXaWxsQ2xvc2UoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVj
ZWl2ZUljb24oKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkU3RhcnRQcm92aXNpb25h
bExvYWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVRpdGxlKGNvbnN0
IFdlYkNvcmU6OlN0cmluZ1dpdGhEaXJlY3Rpb24mKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3Bh
dGNoRGlkQ29tbWl0TG9hZChzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6Okhhc0luc2VjdXJlQ29udGVu
dD4pIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsUHJvdmlzaW9uYWxMb2FkKGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNo
RGlkRmFpbExvYWQoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwotICAg
IHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hEb2N1bWVudExvYWQoKSBvdmVycmlkZTsKLSAgICB2b2lk
IGRpc3BhdGNoRGlkRmluaXNoTG9hZCgpIG92ZXJyaWRlOwotCi0gICAgdm9pZCBkaXNwYXRjaERp
ZFJlYWNoTGF5b3V0TWlsZXN0b25lKFdlYkNvcmU6OkxheW91dE1pbGVzdG9uZXMpIG92ZXJyaWRl
OwotICAgIHZvaWQgZGlzcGF0Y2hEaWRMYXlvdXQoKSBvdmVycmlkZTsKLQotICAgIFdlYkNvcmU6
OkZyYW1lKiBkaXNwYXRjaENyZWF0ZVBhZ2UoY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlv
biYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hTaG93KCkgb3ZlcnJpZGU7CisgICAgdm9p
ZCBkaXNwYXRjaERpZERpc3BhdGNoT25sb2FkRXZlbnRzKCkgZmluYWw7CisgICAgdm9pZCBkaXNw
YXRjaERpZFJlY2VpdmVTZXJ2ZXJSZWRpcmVjdEZvclByb3Zpc2lvbmFsTG9hZCgpIGZpbmFsOwor
ICAgIHZvaWQgZGlzcGF0Y2hEaWRDaGFuZ2VQcm92aXNpb25hbFVSTCgpIGZpbmFsOworICAgIHZv
aWQgZGlzcGF0Y2hEaWRDYW5jZWxDbGllbnRSZWRpcmVjdCgpIGZpbmFsOworICAgIHZvaWQgZGlz
cGF0Y2hXaWxsUGVyZm9ybUNsaWVudFJlZGlyZWN0KGNvbnN0IFdlYkNvcmU6OlVSTCYsIGRvdWJs
ZSBpbnRlcnZhbCwgZG91YmxlIGZpcmVEYXRlKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlk
Q2hhbmdlTG9jYXRpb25XaXRoaW5QYWdlKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFB1
c2hTdGF0ZVdpdGhpblBhZ2UoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVwbGFjZVN0
YXRlV2l0aGluUGFnZSgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRQb3BTdGF0ZVdpdGhp
blBhZ2UoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbENsb3NlKCkgZmluYWw7CisgICAg
dm9pZCBkaXNwYXRjaERpZFJlY2VpdmVJY29uKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERp
ZFN0YXJ0UHJvdmlzaW9uYWxMb2FkKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2Vp
dmVUaXRsZShjb25zdCBXZWJDb3JlOjpTdHJpbmdXaXRoRGlyZWN0aW9uJikgZmluYWw7CisgICAg
dm9pZCBkaXNwYXRjaERpZENvbW1pdExvYWQoc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpIYXNJbnNl
Y3VyZUNvbnRlbnQ+KSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbFByb3Zpc2lvbmFs
TG9hZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmluYWw7CisgICAgdm9pZCBkaXNw
YXRjaERpZEZhaWxMb2FkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKKyAg
ICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoRG9jdW1lbnRMb2FkKCkgZmluYWw7CisgICAgdm9pZCBk
aXNwYXRjaERpZEZpbmlzaExvYWQoKSBmaW5hbDsKKworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWFj
aExheW91dE1pbGVzdG9uZShXZWJDb3JlOjpMYXlvdXRNaWxlc3RvbmVzKSBmaW5hbDsKKyAgICB2
b2lkIGRpc3BhdGNoRGlkTGF5b3V0KCkgZmluYWw7CisKKyAgICBXZWJDb3JlOjpGcmFtZSogZGlz
cGF0Y2hDcmVhdGVQYWdlKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mKSBmaW5hbDsK
KyAgICB2b2lkIGRpc3BhdGNoU2hvdygpIGZpbmFsOwogICAgIAotICAgIHZvaWQgZGlzcGF0Y2hE
ZWNpZGVQb2xpY3lGb3JSZXNwb25zZShjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwg
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5j
dGlvbikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRv
d0FjdGlvbihjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0JiwgUGFzc1JlZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+LCBjb25zdCBT
dHJpbmcmIGZyYW1lTmFtZSwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3Qg
V2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYsIFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0YXRlPiwgV2ViQ29yZTo6RnJhbWVQb2xpY3lG
dW5jdGlvbikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBjYW5jZWxQb2xpY3lDaGVjaygpIG92ZXJyaWRl
OworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JSZXNwb25zZShjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgV2Vi
Q29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERlY2lk
ZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9u
JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgV2ViQ29yZTo6Rm9ybVN0YXRlKiwg
Y29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIGZp
bmFsOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNv
bnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QmLCBXZWJDb3JlOjpGb3JtU3RhdGUqLCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9u
KSBmaW5hbDsKKyAgICB2b2lkIGNhbmNlbFBvbGljeUNoZWNrKCkgZmluYWw7CiAgICAgCi0gICAg
dm9pZCBkaXNwYXRjaFVuYWJsZVRvSW1wbGVtZW50UG9saWN5KGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlRXJyb3ImKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoVW5hYmxlVG9JbXBsZW1lbnRQ
b2xpY3koY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIGZpbmFsOwogICAgIAotICAgIHZv
aWQgZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0
YXRlPikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKFBhc3NSZWZQ
dHI8V2ViQ29yZTo6Rm9ybVN0YXRlPiwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgb3Zl
cnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoUmVmPFdlYkNvcmU6
OkZvcm1TdGF0ZT4mJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKFdl
YkNvcmU6OkZvcm1TdGF0ZSYsIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFsOwog
ICAgIAotICAgIHZvaWQgcmV2ZXJ0VG9Qcm92aXNpb25hbFN0YXRlKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRNYWluRG9jdW1lbnRFcnJvcihXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlk
ZTsKKyAgICB2b2lkIHJldmVydFRvUHJvdmlzaW9uYWxTdGF0ZShXZWJDb3JlOjpEb2N1bWVudExv
YWRlciopIGZpbmFsOworICAgIHZvaWQgc2V0TWFpbkRvY3VtZW50RXJyb3IoV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmluYWw7CiAgICAg
Ci0gICAgdm9pZCBzZXRNYWluRnJhbWVEb2N1bWVudFJlYWR5KGJvb2wpIG92ZXJyaWRlOworICAg
IHZvaWQgc2V0TWFpbkZyYW1lRG9jdW1lbnRSZWFkeShib29sKSBmaW5hbDsKICAgICAKLSAgICB2
b2lkIHN0YXJ0RG93bmxvYWQoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3Qg
U3RyaW5nJiBzdWdnZXN0ZWROYW1lID0gU3RyaW5nKCkpIG92ZXJyaWRlOworICAgIHZvaWQgc3Rh
cnREb3dubG9hZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBTdHJpbmcm
IHN1Z2dlc3RlZE5hbWUgPSBTdHJpbmcoKSkgZmluYWw7CiAgICAgCi0gICAgdm9pZCB3aWxsQ2hh
bmdlVGl0bGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBvdmVycmlkZTsKLSAgICB2b2lkIGRp
ZENoYW5nZVRpdGxlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgb3ZlcnJpZGU7CisgICAgdm9p
ZCB3aWxsQ2hhbmdlVGl0bGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBmaW5hbDsKKyAgICB2
b2lkIGRpZENoYW5nZVRpdGxlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgZmluYWw7CiAKLSAg
ICB2b2lkIHdpbGxSZXBsYWNlTXVsdGlwYXJ0Q29udGVudCgpIG92ZXJyaWRlOwotICAgIHZvaWQg
ZGlkUmVwbGFjZU11bHRpcGFydENvbnRlbnQoKSBvdmVycmlkZTsKKyAgICB2b2lkIHdpbGxSZXBs
YWNlTXVsdGlwYXJ0Q29udGVudCgpIGZpbmFsOworICAgIHZvaWQgZGlkUmVwbGFjZU11bHRpcGFy
dENvbnRlbnQoKSBmaW5hbDsKIAotICAgIHZvaWQgY29tbWl0dGVkTG9hZChXZWJDb3JlOjpEb2N1
bWVudExvYWRlciosIGNvbnN0IGNoYXIqLCBpbnQpIG92ZXJyaWRlOwotICAgIHZvaWQgZmluaXNo
ZWRMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgb3ZlcnJpZGU7CisgICAgdm9pZCBj
b21taXR0ZWRMb2FkKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgY2hhciosIGludCkg
ZmluYWw7CisgICAgdm9pZCBmaW5pc2hlZExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIq
KSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHVwZGF0ZUdsb2JhbEhpc3RvcnkoKSBvdmVycmlkZTsK
LSAgICB2b2lkIHVwZGF0ZUdsb2JhbEhpc3RvcnlSZWRpcmVjdExpbmtzKCkgb3ZlcnJpZGU7Cisg
ICAgdm9pZCB1cGRhdGVHbG9iYWxIaXN0b3J5KCkgZmluYWw7CisgICAgdm9pZCB1cGRhdGVHbG9i
YWxIaXN0b3J5UmVkaXJlY3RMaW5rcygpIGZpbmFsOwogICAgIAotICAgIGJvb2wgc2hvdWxkR29U
b0hpc3RvcnlJdGVtKFdlYkNvcmU6Okhpc3RvcnlJdGVtKikgY29uc3Qgb3ZlcnJpZGU7CisgICAg
Ym9vbCBzaG91bGRHb1RvSGlzdG9yeUl0ZW0oV2ViQ29yZTo6SGlzdG9yeUl0ZW0qKSBjb25zdCBm
aW5hbDsKIAotICAgIHZvaWQgZGlkRGlzcGxheUluc2VjdXJlQ29udGVudCgpIG92ZXJyaWRlOwot
ICAgIHZvaWQgZGlkUnVuSW5zZWN1cmVDb250ZW50KFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luKiwg
Y29uc3QgV2ViQ29yZTo6VVJMJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWREZXRlY3RYU1MoY29u
c3QgV2ViQ29yZTo6VVJMJiwgYm9vbCBkaWRCbG9ja0VudGlyZVBhZ2UpIG92ZXJyaWRlOworICAg
IHZvaWQgZGlkRGlzcGxheUluc2VjdXJlQ29udGVudCgpIGZpbmFsOworICAgIHZvaWQgZGlkUnVu
SW5zZWN1cmVDb250ZW50KFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luKiwgY29uc3QgV2ViQ29yZTo6
VVJMJikgZmluYWw7CisgICAgdm9pZCBkaWREZXRlY3RYU1MoY29uc3QgV2ViQ29yZTo6VVJMJiwg
Ym9vbCBkaWRCbG9ja0VudGlyZVBhZ2UpIGZpbmFsOwogCi0gICAgV2ViQ29yZTo6UmVzb3VyY2VF
cnJvciBjYW5jZWxsZWRFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVy
cmlkZTsKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGJsb2NrZWRFcnJvcihjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVy
cm9yIGJsb2NrZWRCeUNvbnRlbnRCbG9ja2VyRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VS
ZXF1ZXN0Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBjYW5ub3RTaG93
VVJMRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7Ci0gICAg
V2ViQ29yZTo6UmVzb3VyY2VFcnJvciBpbnRlcnJ1cHRlZEZvclBvbGljeUNoYW5nZUVycm9yKGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRlOworICAgIFdlYkNvcmU6OlJl
c291cmNlRXJyb3IgY2FuY2VsbGVkRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
JikgZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkRXJyb3IoY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VF
cnJvciBibG9ja2VkQnlDb250ZW50QmxvY2tlckVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYpIGZpbmFsOworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgY2Fubm90U2hvd1VS
TEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOworICAgIFdlYkNv
cmU6OlJlc291cmNlRXJyb3IgaW50ZXJydXB0ZWRGb3JQb2xpY3lDaGFuZ2VFcnJvcihjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKICNpZiBFTkFCTEUoQ09OVEVOVF9GSUxU
RVJJTkcpCi0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkQnlDb250ZW50RmlsdGVy
RXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7CisgICAgV2Vi
Q29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkQnlDb250ZW50RmlsdGVyRXJyb3IoY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CiAjZW5kaWYKICAgICAKLSAgICBXZWJDb3Jl
OjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dNSU1FVHlwZUVycm9yKGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGZp
bGVEb2VzTm90RXhpc3RFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgb3Zl
cnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBwbHVnaW5XaWxsSGFuZGxlTG9hZEVy
cm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKKyAgICBXZWJD
b3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dNSU1FVHlwZUVycm9yKGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGZp
bGVEb2VzTm90RXhpc3RFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgZmlu
YWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBwbHVnaW5XaWxsSGFuZGxlTG9hZEVycm9y
KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKICAgICAKLSAgICBib29s
IHNob3VsZEZhbGxCYWNrKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsK
KyAgICBib29sIHNob3VsZEZhbGxCYWNrKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBm
aW5hbDsKICAgICAKLSAgICBib29sIGNhbkhhbmRsZVJlcXVlc3QoY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0JikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgYm9vbCBjYW5TaG93TUlNRVR5cGUo
Y29uc3QgU3RyaW5nJiBNSU1FVHlwZSkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgYm9vbCBjYW5TaG93
TUlNRVR5cGVBc0hUTUwoY29uc3QgU3RyaW5nJiBNSU1FVHlwZSkgY29uc3Qgb3ZlcnJpZGU7Ci0g
ICAgYm9vbCByZXByZXNlbnRhdGlvbkV4aXN0c0ZvclVSTFNjaGVtZShjb25zdCBTdHJpbmcmIFVS
TFNjaGVtZSkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgU3RyaW5nIGdlbmVyYXRlZE1JTUVUeXBlRm9y
VVJMU2NoZW1lKGNvbnN0IFN0cmluZyYgVVJMU2NoZW1lKSBjb25zdCBvdmVycmlkZTsKKyAgICBi
b29sIGNhbkhhbmRsZVJlcXVlc3QoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgY29u
c3QgZmluYWw7CisgICAgYm9vbCBjYW5TaG93TUlNRVR5cGUoY29uc3QgU3RyaW5nJiBNSU1FVHlw
ZSkgY29uc3QgZmluYWw7CisgICAgYm9vbCBjYW5TaG93TUlNRVR5cGVBc0hUTUwoY29uc3QgU3Ry
aW5nJiBNSU1FVHlwZSkgY29uc3QgZmluYWw7CisgICAgYm9vbCByZXByZXNlbnRhdGlvbkV4aXN0
c0ZvclVSTFNjaGVtZShjb25zdCBTdHJpbmcmIFVSTFNjaGVtZSkgY29uc3QgZmluYWw7CisgICAg
U3RyaW5nIGdlbmVyYXRlZE1JTUVUeXBlRm9yVVJMU2NoZW1lKGNvbnN0IFN0cmluZyYgVVJMU2No
ZW1lKSBjb25zdCBmaW5hbDsKICAgICAKLSAgICB2b2lkIGZyYW1lTG9hZENvbXBsZXRlZCgpIG92
ZXJyaWRlOwotICAgIHZvaWQgc2F2ZVZpZXdTdGF0ZVRvSXRlbShXZWJDb3JlOjpIaXN0b3J5SXRl
bSYpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVzdG9yZVZpZXdTdGF0ZSgpIG92ZXJyaWRlOwotICAg
IHZvaWQgcHJvdmlzaW9uYWxMb2FkU3RhcnRlZCgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkRmlu
aXNoTG9hZCgpIG92ZXJyaWRlOwotICAgIHZvaWQgcHJlcGFyZUZvckRhdGFTb3VyY2VSZXBsYWNl
bWVudCgpIG92ZXJyaWRlOworICAgIHZvaWQgZnJhbWVMb2FkQ29tcGxldGVkKCkgZmluYWw7Cisg
ICAgdm9pZCBzYXZlVmlld1N0YXRlVG9JdGVtKFdlYkNvcmU6Okhpc3RvcnlJdGVtJikgZmluYWw7
CisgICAgdm9pZCByZXN0b3JlVmlld1N0YXRlKCkgZmluYWw7CisgICAgdm9pZCBwcm92aXNpb25h
bExvYWRTdGFydGVkKCkgZmluYWw7CisgICAgdm9pZCBkaWRGaW5pc2hMb2FkKCkgZmluYWw7Cisg
ICAgdm9pZCBwcmVwYXJlRm9yRGF0YVNvdXJjZVJlcGxhY2VtZW50KCkgZmluYWw7CiAgICAgCi0g
ICAgUmVmPFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyPiBjcmVhdGVEb2N1bWVudExvYWRlcihjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpTdWJzdGl0dXRlRGF0
YSYpIG92ZXJyaWRlOwotICAgIHZvaWQgdXBkYXRlQ2FjaGVkRG9jdW1lbnRMb2FkZXIoV2ViQ29y
ZTo6RG9jdW1lbnRMb2FkZXImKSBvdmVycmlkZTsKKyAgICBSZWY8V2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXI+IGNyZWF0ZURvY3VtZW50TG9hZGVyKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYsIGNvbnN0IFdlYkNvcmU6OlN1YnN0aXR1dGVEYXRhJikgZmluYWw7CisgICAgdm9pZCB1cGRh
dGVDYWNoZWREb2N1bWVudExvYWRlcihXZWJDb3JlOjpEb2N1bWVudExvYWRlciYpIGZpbmFsOwog
Ci0gICAgdm9pZCBzZXRUaXRsZShjb25zdCBXZWJDb3JlOjpTdHJpbmdXaXRoRGlyZWN0aW9uJiwg
Y29uc3QgV2ViQ29yZTo6VVJMJikgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRUaXRsZShjb25zdCBX
ZWJDb3JlOjpTdHJpbmdXaXRoRGlyZWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6VVJMJikgZmluYWw7
CiAgICAgCi0gICAgU3RyaW5nIHVzZXJBZ2VudChjb25zdCBXZWJDb3JlOjpVUkwmKSBvdmVycmlk
ZTsKKyAgICBTdHJpbmcgdXNlckFnZW50KGNvbnN0IFdlYkNvcmU6OlVSTCYpIGZpbmFsOwogICAg
IAotICAgIHZvaWQgc2F2ZVBsYXRmb3JtRGF0YVRvQ2FjaGVkRnJhbWUoV2ViQ29yZTo6Q2FjaGVk
RnJhbWUqKSBvdmVycmlkZTsKLSAgICB2b2lkIHRyYW5zaXRpb25Ub0NvbW1pdHRlZEZyb21DYWNo
ZWRGcmFtZShXZWJDb3JlOjpDYWNoZWRGcmFtZSopIG92ZXJyaWRlOworICAgIHZvaWQgc2F2ZVBs
YXRmb3JtRGF0YVRvQ2FjaGVkRnJhbWUoV2ViQ29yZTo6Q2FjaGVkRnJhbWUqKSBmaW5hbDsKKyAg
ICB2b2lkIHRyYW5zaXRpb25Ub0NvbW1pdHRlZEZyb21DYWNoZWRGcmFtZShXZWJDb3JlOjpDYWNo
ZWRGcmFtZSopIGZpbmFsOwogI2lmIFBMQVRGT1JNKElPUykKLSAgICB2b2lkIGRpZFJlc3RvcmVG
cmFtZUhpZXJhcmNoeUZvckNhY2hlZEZyYW1lKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRSZXN0
b3JlRnJhbWVIaWVyYXJjaHlGb3JDYWNoZWRGcmFtZSgpIGZpbmFsOwogI2VuZGlmCi0gICAgdm9p
ZCB0cmFuc2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdlKCkgb3ZlcnJpZGU7CisgICAgdm9pZCB0
cmFuc2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdlKCkgZmluYWw7CiAKLSAgICB2b2lkIGRpZFNh
dmVUb1BhZ2VDYWNoZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkUmVzdG9yZUZyb21QYWdlQ2Fj
aGUoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZFNhdmVUb1BhZ2VDYWNoZSgpIGZpbmFsOworICAg
IHZvaWQgZGlkUmVzdG9yZUZyb21QYWdlQ2FjaGUoKSBmaW5hbDsKIAotICAgIHZvaWQgZGlzcGF0
Y2hEaWRCZWNvbWVGcmFtZXNldChib29sKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGlk
QmVjb21lRnJhbWVzZXQoYm9vbCkgZmluYWw7CiAKLSAgICBib29sIGNhbkNhY2hlUGFnZSgpIGNv
bnN0IG92ZXJyaWRlOwotICAgIHZvaWQgY29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2Fk
KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6U2Vzc2lvbklELCBjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikg
b3ZlcnJpZGU7CisgICAgYm9vbCBjYW5DYWNoZVBhZ2UoKSBjb25zdCBmaW5hbDsKKyAgICB2b2lk
IGNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZChXZWJDb3JlOjpEb2N1bWVudExvYWRl
ciosIFdlYkNvcmU6OlNlc3Npb25JRCwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jiwg
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOwogCi0gICAgUmVmUHRyPFdl
YkNvcmU6OkZyYW1lPiBjcmVhdGVGcmFtZShjb25zdCBXZWJDb3JlOjpVUkwmLCBjb25zdCBTdHJp
bmcmIG5hbWUsIFdlYkNvcmU6OkhUTUxGcmFtZU93bmVyRWxlbWVudCosCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBib29s
IGFsbG93c1Njcm9sbGluZywgaW50IG1hcmdpbldpZHRoLCBpbnQgbWFyZ2luSGVpZ2h0KSBvdmVy
cmlkZTsKLSAgICAKLSAgICBSZWZQdHI8V2ViQ29yZTo6V2lkZ2V0PiBjcmVhdGVQbHVnaW4oY29u
c3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50KiwgY29uc3Qg
V2ViQ29yZTo6VVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBWZWN0b3I8U3RyaW5n
PiYsIGNvbnN0IFN0cmluZyYsIGJvb2wgbG9hZE1hbnVhbGx5KSBvdmVycmlkZTsKLSAgICB2b2lk
IHJlY3JlYXRlUGx1Z2luKFdlYkNvcmU6OldpZGdldCopIG92ZXJyaWRlOwotICAgIHZvaWQgcmVk
aXJlY3REYXRhVG9QbHVnaW4oV2ViQ29yZTo6V2lkZ2V0KiBwbHVnaW5XaWRnZXQpIG92ZXJyaWRl
OworICAgIFJlZlB0cjxXZWJDb3JlOjpGcmFtZT4gY3JlYXRlRnJhbWUoY29uc3QgV2ViQ29yZTo6
VVJMJiwgY29uc3QgU3RyaW5nJiBuYW1lLCBXZWJDb3JlOjpIVE1MRnJhbWVPd25lckVsZW1lbnQm
LCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBib29sIGFsbG93c1Njcm9sbGluZywgaW50IG1hcmdp
bldpZHRoLCBpbnQgbWFyZ2luSGVpZ2h0KSBmaW5hbDsKKworICAgIFJlZlB0cjxXZWJDb3JlOjpX
aWRnZXQ+IGNyZWF0ZVBsdWdpbihjb25zdCBXZWJDb3JlOjpJbnRTaXplJiwgV2ViQ29yZTo6SFRN
TFBsdWdJbkVsZW1lbnQmLCBjb25zdCBXZWJDb3JlOjpVUkwmLCBjb25zdCBWZWN0b3I8U3RyaW5n
PiYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgU3RyaW5nJiwgYm9vbCBsb2FkTWFudWFs
bHkpIGZpbmFsOworICAgIHZvaWQgcmVjcmVhdGVQbHVnaW4oV2ViQ29yZTo6V2lkZ2V0KikgZmlu
YWw7CisgICAgdm9pZCByZWRpcmVjdERhdGFUb1BsdWdpbihXZWJDb3JlOjpXaWRnZXQqIHBsdWdp
bldpZGdldCkgZmluYWw7CiAgICAgCiAjaWYgRU5BQkxFKFdFQkdMKQotICAgIFdlYkNvcmU6Oldl
YkdMTG9hZFBvbGljeSB3ZWJHTFBvbGljeUZvclVSTChjb25zdCBTdHJpbmcmKSBjb25zdCBvdmVy
cmlkZTsKLSAgICBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgcmVzb2x2ZVdlYkdMUG9saWN5Rm9y
VVJMKGNvbnN0IFN0cmluZyYpIGNvbnN0IG92ZXJyaWRlOworICAgIFdlYkNvcmU6OldlYkdMTG9h
ZFBvbGljeSB3ZWJHTFBvbGljeUZvclVSTChjb25zdCBTdHJpbmcmKSBjb25zdCBmaW5hbDsKKyAg
ICBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgcmVzb2x2ZVdlYkdMUG9saWN5Rm9yVVJMKGNvbnN0
IFN0cmluZyYpIGNvbnN0IGZpbmFsOwogI2VuZGlmIC8vIEVOQUJMRShXRUJHTCkKIAotICAgIFBh
c3NSZWZQdHI8V2ViQ29yZTo6V2lkZ2V0PiBjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IFdl
YkNvcmU6OkludFNpemUmLCBXZWJDb3JlOjpIVE1MQXBwbGV0RWxlbWVudCosIGNvbnN0IFdlYkNv
cmU6OlVSTCYgYmFzZVVSTCwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0
IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykgb3ZlcnJpZGU7CisgICAgUmVmUHRyPFdlYkNv
cmU6OldpZGdldD4gY3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBXZWJDb3JlOjpJbnRTaXpl
JiwgV2ViQ29yZTo6SFRNTEFwcGxldEVsZW1lbnQmLCBjb25zdCBXZWJDb3JlOjpVUkwmIGJhc2VV
UkwsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5n
PiYgcGFyYW1WYWx1ZXMpIGZpbmFsOwogICAgIAotICAgIFdlYkNvcmU6Ok9iamVjdENvbnRlbnRU
eXBlIG9iamVjdENvbnRlbnRUeXBlKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNvbnN0IFN0cmluZyYg
bWltZVR5cGUpIG92ZXJyaWRlOwotICAgIFN0cmluZyBvdmVycmlkZU1lZGlhVHlwZSgpIGNvbnN0
IG92ZXJyaWRlOworICAgIFdlYkNvcmU6Ok9iamVjdENvbnRlbnRUeXBlIG9iamVjdENvbnRlbnRU
eXBlKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUpIGZpbmFsOwor
ICAgIFN0cmluZyBvdmVycmlkZU1lZGlhVHlwZSgpIGNvbnN0IGZpbmFsOwogCi0gICAgdm9pZCBk
aXNwYXRjaERpZENsZWFyV2luZG93T2JqZWN0SW5Xb3JsZChXZWJDb3JlOjpET01XcmFwcGVyV29y
bGQmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGlkQ2xlYXJXaW5kb3dPYmplY3RJbldv
cmxkKFdlYkNvcmU6OkRPTVdyYXBwZXJXb3JsZCYpIGZpbmFsOwogICAgIAotICAgIHZvaWQgZGlz
cGF0Y2hHbG9iYWxPYmplY3RBdmFpbGFibGUoV2ViQ29yZTo6RE9NV3JhcHBlcldvcmxkJikgb3Zl
cnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxEaXNjb25uZWN0RE9NV2luZG93RXh0ZW5zaW9u
RnJvbUdsb2JhbE9iamVjdChXZWJDb3JlOjpET01XaW5kb3dFeHRlbnNpb24qKSBvdmVycmlkZTsK
LSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjb25uZWN0RE9NV2luZG93RXh0ZW5zaW9uVG9HbG9iYWxP
YmplY3QoV2ViQ29yZTo6RE9NV2luZG93RXh0ZW5zaW9uKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBk
aXNwYXRjaFdpbGxEZXN0cm95R2xvYmFsT2JqZWN0Rm9yRE9NV2luZG93RXh0ZW5zaW9uKFdlYkNv
cmU6OkRPTVdpbmRvd0V4dGVuc2lvbiopIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hHbG9i
YWxPYmplY3RBdmFpbGFibGUoV2ViQ29yZTo6RE9NV3JhcHBlcldvcmxkJikgZmluYWw7CisgICAg
dm9pZCBkaXNwYXRjaFdpbGxEaXNjb25uZWN0RE9NV2luZG93RXh0ZW5zaW9uRnJvbUdsb2JhbE9i
amVjdChXZWJDb3JlOjpET01XaW5kb3dFeHRlbnNpb24qKSBmaW5hbDsKKyAgICB2b2lkIGRpc3Bh
dGNoRGlkUmVjb25uZWN0RE9NV2luZG93RXh0ZW5zaW9uVG9HbG9iYWxPYmplY3QoV2ViQ29yZTo6
RE9NV2luZG93RXh0ZW5zaW9uKikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxEZXN0cm95
R2xvYmFsT2JqZWN0Rm9yRE9NV2luZG93RXh0ZW5zaW9uKFdlYkNvcmU6OkRPTVdpbmRvd0V4dGVu
c2lvbiopIGZpbmFsOwogCi0gICAgdm9pZCByZWdpc3RlckZvckljb25Ob3RpZmljYXRpb24oYm9v
bCBsaXN0ZW4gPSB0cnVlKSBvdmVycmlkZTsKKyAgICB2b2lkIHJlZ2lzdGVyRm9ySWNvbk5vdGlm
aWNhdGlvbihib29sIGxpc3RlbiA9IHRydWUpIGZpbmFsOwogICAgIAogI2lmIFBMQVRGT1JNKENP
Q09BKQotICAgIFJlbW90ZUFYT2JqZWN0UmVmIGFjY2Vzc2liaWxpdHlSZW1vdGVPYmplY3QoKSBv
dmVycmlkZTsKKyAgICBSZW1vdGVBWE9iamVjdFJlZiBhY2Nlc3NpYmlsaXR5UmVtb3RlT2JqZWN0
KCkgZmluYWw7CiAgICAgCi0gICAgTlNDYWNoZWRVUkxSZXNwb25zZSogd2lsbENhY2hlUmVzcG9u
c2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIE5T
Q2FjaGVkVVJMUmVzcG9uc2UqKSBjb25zdCBvdmVycmlkZTsKKyAgICBOU0NhY2hlZFVSTFJlc3Bv
bnNlKiB3aWxsQ2FjaGVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25zZSopIGNvbnN0IGZpbmFsOwogCi0g
ICAgTlNEaWN0aW9uYXJ5ICpkYXRhRGV0ZWN0aW9uQ29udGV4dCgpIG92ZXJyaWRlOworICAgIE5T
RGljdGlvbmFyeSAqZGF0YURldGVjdGlvbkNvbnRleHQoKSBmaW5hbDsKICNlbmRpZgogCi0gICAg
Ym9vbCBzaG91bGRBbHdheXNVc2VQbHVnaW5Eb2N1bWVudChjb25zdCBTdHJpbmcmIC8qbWltZVR5
cGUqLykgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRBbHdheXNVc2VQbHVnaW5Eb2N1
bWVudChjb25zdCBTdHJpbmcmIC8qbWltZVR5cGUqLykgY29uc3QgZmluYWw7CiAKLSAgICB2b2lk
IGRpZENoYW5nZVNjcm9sbE9mZnNldCgpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkQ2hhbmdlU2Ny
b2xsT2Zmc2V0KCkgZmluYWw7CiAKLSAgICBib29sIGFsbG93U2NyaXB0KGJvb2wgZW5hYmxlZFBl
clNldHRpbmdzKSBvdmVycmlkZTsKKyAgICBib29sIGFsbG93U2NyaXB0KGJvb2wgZW5hYmxlZFBl
clNldHRpbmdzKSBmaW5hbDsKIAotICAgIGJvb2wgc2hvdWxkRm9yY2VVbml2ZXJzYWxBY2Nlc3NG
cm9tTG9jYWxVUkwoY29uc3QgV2ViQ29yZTo6VVJMJikgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91
bGRGb3JjZVVuaXZlcnNhbEFjY2Vzc0Zyb21Mb2NhbFVSTChjb25zdCBXZWJDb3JlOjpVUkwmKSBm
aW5hbDsKIAotICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6RnJhbWVOZXR3b3JraW5nQ29udGV4dD4g
Y3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKSBvdmVycmlkZTsKKyAgICBSZWY8V2ViQ29yZTo6RnJh
bWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKSBmaW5hbDsKIAog
I2lmIEVOQUJMRShSRVFVRVNUX0FVVE9DT01QTEVURSkKLSAgICB2b2lkIGRpZFJlcXVlc3RBdXRv
Y29tcGxldGUoUGFzc1JlZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+KSBvdmVycmlkZTsKKyAgICB2
b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxldGUoUmVmPFdlYkNvcmU6OkZvcm1TdGF0ZT4mJikgZmlu
YWw7CiAjZW5kaWYKIAotICAgIHZvaWQgZm9yY2VQYWdlVHJhbnNpdGlvbklmTmVlZGVkKCkgb3Zl
cnJpZGU7CisgICAgdm9pZCBmb3JjZVBhZ2VUcmFuc2l0aW9uSWZOZWVkZWQoKSBmaW5hbDsKIAog
I2lmIFVTRShRVUlDS19MT09LKQotICAgIHZvaWQgZGlkQ3JlYXRlUXVpY2tMb29rSGFuZGxlKFdl
YkNvcmU6OlF1aWNrTG9va0hhbmRsZSYpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkQ3JlYXRlUXVp
Y2tMb29rSGFuZGxlKFdlYkNvcmU6OlF1aWNrTG9va0hhbmRsZSYpIGZpbmFsOwogI2VuZGlmCiAK
ICNpZiBFTkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCi0gICAgdm9pZCBjb250ZW50RmlsdGVyRGlk
QmxvY2tMb2FkKFdlYkNvcmU6OkNvbnRlbnRGaWx0ZXJVbmJsb2NrSGFuZGxlcikgb3ZlcnJpZGU7
CisgICAgdm9pZCBjb250ZW50RmlsdGVyRGlkQmxvY2tMb2FkKFdlYkNvcmU6OkNvbnRlbnRGaWx0
ZXJVbmJsb2NrSGFuZGxlcikgZmluYWw7CiAjZW5kaWYKIAotICAgIHZvaWQgcHJlZmV0Y2hETlMo
Y29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7CisgICAgdm9pZCBwcmVmZXRjaEROUyhjb25zdCBTdHJp
bmcmKSBmaW5hbDsKIAotICAgIHZvaWQgZGlkUmVzdG9yZVNjcm9sbFBvc2l0aW9uKCkgb3ZlcnJp
ZGU7CisgICAgdm9pZCBkaWRSZXN0b3JlU2Nyb2xsUG9zaXRpb24oKSBmaW5hbDsKIAotICAgIGJv
b2wgdXNlSWNvbkxvYWRpbmdDbGllbnQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGdldExvYWREZWNp
c2lvbkZvckljb24oY29uc3QgV2ViQ29yZTo6TGlua0ljb24mLCB1aW50NjRfdCBjYWxsYmFja0lE
KSBvdmVycmlkZTsKLSAgICB2b2lkIGZpbmlzaGVkTG9hZGluZ0ljb24odWludDY0X3QgbG9hZElk
ZW50aWZpZXIsIFdlYkNvcmU6OlNoYXJlZEJ1ZmZlciopIG92ZXJyaWRlOworICAgIGJvb2wgdXNl
SWNvbkxvYWRpbmdDbGllbnQoKSBmaW5hbDsKKyAgICB2b2lkIGdldExvYWREZWNpc2lvbkZvcklj
b24oY29uc3QgV2ViQ29yZTo6TGlua0ljb24mLCB1aW50NjRfdCBjYWxsYmFja0lEKSBmaW5hbDsK
KyAgICB2b2lkIGZpbmlzaGVkTG9hZGluZ0ljb24odWludDY0X3QgbG9hZElkZW50aWZpZXIsIFdl
YkNvcmU6OlNoYXJlZEJ1ZmZlciopIGZpbmFsOwogCiAgICAgV2ViRnJhbWUqIG1fZnJhbWU7CiAg
ICAgUmVmUHRyPFBsdWdpblZpZXc+IG1fcGx1Z2luVmlldzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAppbmRleCBlOTRmODdhOWRkZjc5YWMzNDBkZmUw
MTVkZDZiNWUzMmE0YWVkYjI4Li5jNTAyYzYyN2UyOTJiYmU1MzUyMmE5YTc3NDMyMjA3YjE4MGUx
NmExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFn
ZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3Bw
CkBAIC0zNDIsNyArMzQyLDcgQEAgV2ViUGFnZTo6V2ViUGFnZSh1aW50NjRfdCBwYWdlSUQsIGNv
bnN0IFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpCiAjZW5kaWYKIAogICAg
IFBhZ2VDb25maWd1cmF0aW9uIHBhZ2VDb25maWd1cmF0aW9uKG1ha2VVbmlxdWVSZWY8V2ViRWRp
dG9yQ2xpZW50Pih0aGlzKSwgV2ViU29ja2V0UHJvdmlkZXI6OmNyZWF0ZSgpKTsKLSAgICBwYWdl
Q29uZmlndXJhdGlvbi5jaHJvbWVDbGllbnQgPSBuZXcgV2ViQ2hyb21lQ2xpZW50KHRoaXMpOwor
ICAgIHBhZ2VDb25maWd1cmF0aW9uLmNocm9tZUNsaWVudCA9IG5ldyBXZWJDaHJvbWVDbGllbnQo
KnRoaXMpOwogI2lmIEVOQUJMRShDT05URVhUX01FTlVTKQogICAgIHBhZ2VDb25maWd1cmF0aW9u
LmNvbnRleHRNZW51Q2xpZW50ID0gbmV3IFdlYkNvbnRleHRNZW51Q2xpZW50KHRoaXMpOwogI2Vu
ZGlmCkBAIC02OTgsNyArNjk4LDggQEAgdm9pZCBXZWJQYWdlOjppbml0aWFsaXplSW5qZWN0ZWRC
dW5kbGVEaWFnbm9zdGljTG9nZ2luZ0NsaWVudChXS0J1bmRsZVBhZ2VEaWFnbm8KIH0KIAogI2lm
IEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQotUGFzc1JlZlB0cjxQbHVnaW4+IFdlYlBhZ2U6
OmNyZWF0ZVBsdWdpbihXZWJGcmFtZSogZnJhbWUsIEhUTUxQbHVnSW5FbGVtZW50KiBwbHVnaW5F
bGVtZW50LCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmIHBhcmFtZXRlcnMsIFN0cmluZyYgbmV3
TUlNRVR5cGUpCisKK1JlZlB0cjxQbHVnaW4+IFdlYlBhZ2U6OmNyZWF0ZVBsdWdpbihXZWJGcmFt
ZSogZnJhbWUsIEhUTUxQbHVnSW5FbGVtZW50KiBwbHVnaW5FbGVtZW50LCBjb25zdCBQbHVnaW46
OlBhcmFtZXRlcnMmIHBhcmFtZXRlcnMsIFN0cmluZyYgbmV3TUlNRVR5cGUpCiB7CiAgICAgU3Ry
aW5nIGZyYW1lVVJMU3RyaW5nID0gZnJhbWUtPmNvcmVGcmFtZSgpLT5sb2FkZXIoKS5kb2N1bWVu
dExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwogICAgIFN0cmluZyBwYWdlVVJMU3Ry
aW5nID0gbV9wYWdlLT5tYWluRnJhbWUoKS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5yZXNw
b25zZVVSTCgpLnN0cmluZygpOwpAQCAtMTMyNSw3ICsxMzI2LDcgQEAgdm9pZCBXZWJQYWdlOjps
YXlvdXRJZk5lZWRlZCgpCiAKIFdlYlBhZ2UqIFdlYlBhZ2U6OmZyb21Db3JlUGFnZShQYWdlKiBw
YWdlKQogewotICAgIHJldHVybiBzdGF0aWNfY2FzdDxXZWJDaHJvbWVDbGllbnQmPihwYWdlLT5j
aHJvbWUoKS5jbGllbnQoKSkucGFnZSgpOworICAgIHJldHVybiAmc3RhdGljX2Nhc3Q8V2ViQ2hy
b21lQ2xpZW50Jj4ocGFnZS0+Y2hyb21lKCkuY2xpZW50KCkpLnBhZ2UoKTsKIH0KIAogdm9pZCBX
ZWJQYWdlOjpzZXRTaXplKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIHZpZXdTaXplKQpAQCAtMTc5
MSw3ICsxNzkyLDggQEAgdm9pZCBXZWJQYWdlOjpwb3N0SW5qZWN0ZWRCdW5kbGVNZXNzYWdlKGNv
bnN0IFN0cmluZyYgbWVzc2FnZU5hbWUsIGNvbnN0IFVzZXJEYXQKIH0KIAogI2lmICFQTEFURk9S
TShJT1MpCi12b2lkIFdlYlBhZ2U6OnNldEhlYWRlclBhZ2VCYW5uZXIoUGFzc1JlZlB0cjxQYWdl
QmFubmVyPiBwYWdlQmFubmVyKQorCit2b2lkIFdlYlBhZ2U6OnNldEhlYWRlclBhZ2VCYW5uZXIo
UGFnZUJhbm5lciogcGFnZUJhbm5lcikKIHsKICAgICBpZiAobV9oZWFkZXJCYW5uZXIpCiAgICAg
ICAgIG1faGVhZGVyQmFubmVyLT5kZXRhY2hGcm9tUGFnZSgpOwpAQCAtMTgwNyw3ICsxODA5LDcg
QEAgUGFnZUJhbm5lciogV2ViUGFnZTo6aGVhZGVyUGFnZUJhbm5lcigpCiAgICAgcmV0dXJuIG1f
aGVhZGVyQmFubmVyLmdldCgpOwogfQogCi12b2lkIFdlYlBhZ2U6OnNldEZvb3RlclBhZ2VCYW5u
ZXIoUGFzc1JlZlB0cjxQYWdlQmFubmVyPiBwYWdlQmFubmVyKQordm9pZCBXZWJQYWdlOjpzZXRG
b290ZXJQYWdlQmFubmVyKFBhZ2VCYW5uZXIqIHBhZ2VCYW5uZXIpCiB7CiAgICAgaWYgKG1fZm9v
dGVyQmFubmVyKQogICAgICAgICBtX2Zvb3RlckJhbm5lci0+ZGV0YWNoRnJvbVBhZ2UoKTsKQEAg
LTM1NzUsNiArMzU3Nyw3IEBAIHZvaWQgV2ViUGFnZTo6c2V0QWN0aXZlUG9wdXBNZW51KFdlYlBv
cHVwTWVudSogbWVudSkKIH0KIAogI2lmIEVOQUJMRShJTlBVVF9UWVBFX0NPTE9SKQorCiB2b2lk
IFdlYlBhZ2U6OnNldEFjdGl2ZUNvbG9yQ2hvb3NlcihXZWJDb2xvckNob29zZXIqIGNvbG9yQ2hv
b3NlcikKIHsKICAgICBtX2FjdGl2ZUNvbG9yQ2hvb3NlciA9IGNvbG9yQ2hvb3NlcjsKQEAgLTM1
ODksMTEgKzM1OTIsMTIgQEAgdm9pZCBXZWJQYWdlOjpkaWRDaG9vc2VDb2xvcihjb25zdCBXZWJD
b3JlOjpDb2xvciYgY29sb3IpCiB7CiAgICAgbV9hY3RpdmVDb2xvckNob29zZXItPmRpZENob29z
ZUNvbG9yKGNvbG9yKTsKIH0KKwogI2VuZGlmCiAKLXZvaWQgV2ViUGFnZTo6c2V0QWN0aXZlT3Bl
blBhbmVsUmVzdWx0TGlzdGVuZXIoUGFzc1JlZlB0cjxXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5l
cj4gb3BlblBhbmVsUmVzdWx0TGlzdGVuZXIpCit2b2lkIFdlYlBhZ2U6OnNldEFjdGl2ZU9wZW5Q
YW5lbFJlc3VsdExpc3RlbmVyKFJlZjxXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcj4mJiBvcGVu
UGFuZWxSZXN1bHRMaXN0ZW5lcikKIHsKLSAgICBtX2FjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3Rl
bmVyID0gb3BlblBhbmVsUmVzdWx0TGlzdGVuZXI7CisgICAgbV9hY3RpdmVPcGVuUGFuZWxSZXN1
bHRMaXN0ZW5lciA9IFdURk1vdmUob3BlblBhbmVsUmVzdWx0TGlzdGVuZXIpOwogfQogCiBib29s
IFdlYlBhZ2U6OmZpbmRTdHJpbmdGcm9tSW5qZWN0ZWRCdW5kbGUoY29uc3QgU3RyaW5nJiB0YXJn
ZXQsIEZpbmRPcHRpb25zIG9wdGlvbnMpCkBAIC01NDA4LDExICs1NDEyLDExIEBAIGJvb2wgV2Vi
UGFnZTo6cGx1Z0luSXNQcmltYXJ5U2l6ZShXZWJDb3JlOjpIVE1MUGx1Z0luSW1hZ2VFbGVtZW50
JiBwbHVnSW5JbWFnZUVsCiAKICNlbmRpZiAvLyBFTkFCTEUoUFJJTUFSWV9TTkFQU0hPVFRFRF9Q
TFVHSU5fSEVVUklTVElDKQogCi1QYXNzUmVmUHRyPFJhbmdlPiBXZWJQYWdlOjpjdXJyZW50U2Vs
ZWN0aW9uQXNSYW5nZSgpCitSZWZQdHI8UmFuZ2U+IFdlYlBhZ2U6OmN1cnJlbnRTZWxlY3Rpb25B
c1JhbmdlKCkKIHsKLSAgICBGcmFtZSogZnJhbWUgPSBmcmFtZVdpdGhTZWxlY3Rpb24obV9wYWdl
LmdldCgpKTsKKyAgICBhdXRvKiBmcmFtZSA9IGZyYW1lV2l0aFNlbGVjdGlvbihtX3BhZ2UuZ2V0
KCkpOwogICAgIGlmICghZnJhbWUpCi0gICAgICAgIHJldHVybiAwOworICAgICAgICByZXR1cm4g
bnVsbHB0cjsKIAogICAgIHJldHVybiBmcmFtZS0+c2VsZWN0aW9uKCkudG9Ob3JtYWxpemVkUmFu
Z2UoKTsKIH0KQEAgLTU1MTIsNyArNTUxNiw3IEBAIHZvaWQgV2ViUGFnZTo6Z2V0U2FtcGxpbmdQ
cm9maWxlck91dHB1dCh1aW50NjRfdCBjYWxsYmFja0lEKQogI2VuZGlmCiB9CiAKLVBhc3NSZWZQ
dHI8V2ViQ29yZTo6UmFuZ2U+IFdlYlBhZ2U6OnJhbmdlRnJvbUVkaXRpbmdSYW5nZShXZWJDb3Jl
OjpGcmFtZSYgZnJhbWUsIGNvbnN0IEVkaXRpbmdSYW5nZSYgcmFuZ2UsIEVkaXRpbmdSYW5nZUlz
UmVsYXRpdmVUbyBlZGl0aW5nUmFuZ2VJc1JlbGF0aXZlVG8pCitSZWZQdHI8V2ViQ29yZTo6UmFu
Z2U+IFdlYlBhZ2U6OnJhbmdlRnJvbUVkaXRpbmdSYW5nZShXZWJDb3JlOjpGcmFtZSYgZnJhbWUs
IGNvbnN0IEVkaXRpbmdSYW5nZSYgcmFuZ2UsIEVkaXRpbmdSYW5nZUlzUmVsYXRpdmVUbyBlZGl0
aW5nUmFuZ2VJc1JlbGF0aXZlVG8pCiB7CiAgICAgQVNTRVJUKHJhbmdlLmxvY2F0aW9uICE9IG5v
dEZvdW5kKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlBhZ2UuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgK
aW5kZXggODFjZTc1MWY4ZWJkMWQ4ZTBlMGI3ZGNhNWZmMDdiYjczZDNkMjE2NS4uYjY1ZDkzYmM3
YWVjZWM2ZDc4Mjk0YmYxZWNiYjY1OGE4ZjU5OGIyNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCkBAIC03NCw3ICs3NCw2IEBACiAjaW5jbHVkZSA8bWVt
b3J5PgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAjaW5jbHVkZSA8d3RmL01vbm90b25pY1Rp
bWUuaD4KLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIu
aD4KICNpbmNsdWRlIDx3dGYvUnVuTG9vcC5oPgogI2luY2x1ZGUgPHd0Zi9TZWNvbmRzLmg+CkBA
IC0zMTQsNyArMzEzLDcgQEAgcHVibGljOgogI2VuZGlmCiAKICAgICBXZWJPcGVuUGFuZWxSZXN1
bHRMaXN0ZW5lciogYWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIoKSBjb25zdCB7IHJldHVy
biBtX2FjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLmdldCgpOyB9Ci0gICAgdm9pZCBzZXRB
Y3RpdmVPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcihQYXNzUmVmUHRyPFdlYk9wZW5QYW5lbFJlc3Vs
dExpc3RlbmVyPik7CisgICAgdm9pZCBzZXRBY3RpdmVPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcihS
ZWY8V2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXI+JiYpOwogCiAgICAgdm9pZCBkaWRSZWNlaXZl
TWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXImKSBvdmVycmlkZTsKICAgICB2
b2lkIGRpZFJlY2VpdmVTeW5jTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXIm
LCBzdGQ6OnVuaXF1ZV9wdHI8SVBDOjpFbmNvZGVyPiYpIG92ZXJyaWRlOwpAQCAtMzU1LDE2ICsz
NTQsMTYgQEAgcHVibGljOgogICAgIFdlYkNvcmU6Ok1haW5GcmFtZSogbWFpbkZyYW1lKCkgY29u
c3Q7IC8vIE1heSByZXR1cm4gMC4KICAgICBXZWJDb3JlOjpGcmFtZVZpZXcqIG1haW5GcmFtZVZp
ZXcoKSBjb25zdDsgLy8gTWF5IHJldHVybiAwLgogCi0gICAgUGFzc1JlZlB0cjxXZWJDb3JlOjpS
YW5nZT4gY3VycmVudFNlbGVjdGlvbkFzUmFuZ2UoKTsKKyAgICBSZWZQdHI8V2ViQ29yZTo6UmFu
Z2U+IGN1cnJlbnRTZWxlY3Rpb25Bc1JhbmdlKCk7CiAKICNpZiBFTkFCTEUoTkVUU0NBUEVfUExV
R0lOX0FQSSkKLSAgICBQYXNzUmVmUHRyPFBsdWdpbj4gY3JlYXRlUGx1Z2luKFdlYkZyYW1lKiwg
V2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQqLCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmLCBT
dHJpbmcmIG5ld01JTUVUeXBlKTsKKyAgICBSZWZQdHI8UGx1Z2luPiBjcmVhdGVQbHVnaW4oV2Vi
RnJhbWUqLCBXZWJDb3JlOjpIVE1MUGx1Z0luRWxlbWVudCosIGNvbnN0IFBsdWdpbjo6UGFyYW1l
dGVycyYsIFN0cmluZyYgbmV3TUlNRVR5cGUpOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoV0VCR0wp
CiAgICAgV2ViQ29yZTo6V2ViR0xMb2FkUG9saWN5IHdlYkdMUG9saWN5Rm9yVVJMKFdlYkZyYW1l
KiwgY29uc3QgU3RyaW5nJik7CiAgICAgV2ViQ29yZTo6V2ViR0xMb2FkUG9saWN5IHJlc29sdmVX
ZWJHTFBvbGljeUZvclVSTChXZWJGcmFtZSosIGNvbnN0IFN0cmluZyYpOwotI2VuZGlmIC8vIEVO
QUJMRShXRUJHTCkKKyNlbmRpZgogICAgIAogICAgIGVudW0gY2xhc3MgSW5jbHVkZVBvc3RMYXlv
dXREYXRhSGludCB7IE5vLCBZZXMgfTsKICAgICBFZGl0b3JTdGF0ZSBlZGl0b3JTdGF0ZShJbmNs
dWRlUG9zdExheW91dERhdGFIaW50ID0gSW5jbHVkZVBvc3RMYXlvdXREYXRhSGludDo6WWVzKSBj
b25zdDsKQEAgLTQ1NSwyMSArNDU0LDIxIEBAIHB1YmxpYzoKIAogICAgIGJvb2wgaGFzQ2FjaGVk
V2luZG93RnJhbWUoKSBjb25zdCB7IHJldHVybiBtX2hhc0NhY2hlZFdpbmRvd0ZyYW1lOyB9CiAK
LSNpZiAhUExBVEZPUk0oSU9TKQotICAgIHZvaWQgc2V0VG9wT3ZlcmhhbmdJbWFnZShQYXNzUmVm
UHRyPFdlYkltYWdlPik7Ci0gICAgdm9pZCBzZXRCb3R0b21PdmVyaGFuZ0ltYWdlKFBhc3NSZWZQ
dHI8V2ViSW1hZ2U+KTsKLSNlbmRpZiAvLyAhUExBVEZPUk0oSU9TKQotCiAgICAgdm9pZCB1cGRh
dGVIZWFkZXJBbmRGb290ZXJMYXllcnNGb3JEZXZpY2VTY2FsZUNoYW5nZShmbG9hdCBzY2FsZUZh
Y3Rvcik7Ci0jZW5kaWYgLy8gUExBVEZPUk0oQ09DT0EpCisjZW5kaWYKKworI2lmIFBMQVRGT1JN
KE1BQykKKyAgICB2b2lkIHNldFRvcE92ZXJoYW5nSW1hZ2UoV2ViSW1hZ2UqKTsKKyAgICB2b2lk
IHNldEJvdHRvbU92ZXJoYW5nSW1hZ2UoV2ViSW1hZ2UqKTsKKyNlbmRpZgogCiAgICAgYm9vbCB3
aW5kb3dJc0ZvY3VzZWQoKSBjb25zdDsKICAgICBib29sIHdpbmRvd0FuZFdlYlBhZ2VBcmVGb2N1
c2VkKCkgY29uc3Q7CiAKICNpZiAhUExBVEZPUk0oSU9TKQotICAgIHZvaWQgc2V0SGVhZGVyUGFn
ZUJhbm5lcihQYXNzUmVmUHRyPFBhZ2VCYW5uZXI+KTsKKyAgICB2b2lkIHNldEhlYWRlclBhZ2VC
YW5uZXIoUGFnZUJhbm5lciopOwogICAgIFBhZ2VCYW5uZXIqIGhlYWRlclBhZ2VCYW5uZXIoKTsK
LSAgICB2b2lkIHNldEZvb3RlclBhZ2VCYW5uZXIoUGFzc1JlZlB0cjxQYWdlQmFubmVyPik7Cisg
ICAgdm9pZCBzZXRGb290ZXJQYWdlQmFubmVyKFBhZ2VCYW5uZXIqKTsKICAgICBQYWdlQmFubmVy
KiBmb290ZXJQYWdlQmFubmVyKCk7CiAKICAgICB2b2lkIGhpZGVQYWdlQmFubmVycygpOwpAQCAt
NDc3LDcgKzQ3Niw3IEBAIHB1YmxpYzoKICAgICAKICAgICB2b2lkIHNldEhlYWRlckJhbm5lckhl
aWdodEZvclRlc3RpbmcoaW50KTsKICAgICB2b2lkIHNldEZvb3RlckJhbm5lckhlaWdodEZvclRl
c3RpbmcoaW50KTsKLSNlbmRpZiAvLyAhUExBVEZPUk0oSU9TKQorI2VuZGlmCiAKICAgICBXZWJD
b3JlOjpJbnRQb2ludCBzY3JlZW5Ub1Jvb3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFBvaW50Jik7
CiAgICAgV2ViQ29yZTo6SW50UmVjdCByb290Vmlld1RvU2NyZWVuKGNvbnN0IFdlYkNvcmU6Oklu
dFJlY3QmKTsKQEAgLTYyMSw3ICs2MjAsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBoYXNMb2NhbERh
dGFGb3JVUkwoY29uc3QgV2ViQ29yZTo6VVJMJik7CiAgICAgU3RyaW5nIGNhY2hlZFJlc3BvbnNl
TUlNRVR5cGVGb3JVUkwoY29uc3QgV2ViQ29yZTo6VVJMJik7CiAgICAgU3RyaW5nIGNhY2hlZFN1
Z2dlc3RlZEZpbGVuYW1lRm9yVVJMKGNvbnN0IFdlYkNvcmU6OlVSTCYpOwotICAgIFBhc3NSZWZQ
dHI8V2ViQ29yZTo6U2hhcmVkQnVmZmVyPiBjYWNoZWRSZXNwb25zZURhdGFGb3JVUkwoY29uc3Qg
V2ViQ29yZTo6VVJMJik7CisgICAgUmVmUHRyPFdlYkNvcmU6OlNoYXJlZEJ1ZmZlcj4gY2FjaGVk
UmVzcG9uc2VEYXRhRm9yVVJMKGNvbnN0IFdlYkNvcmU6OlVSTCYpOwogCiAgICAgc3RhdGljIGJv
b2wgY2FuSGFuZGxlUmVxdWVzdChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKTsKIApA
QCAtMTAxNiw5ICsxMDE1LDExIEBAIHByaXZhdGU6CiAgICAgYm9vbCBzaG91bGRTd2l0Y2hUb0Js
b2NrTW9kZUZvckhhbmRsZShjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYgaGFuZGxlUG9pbnQsIFNl
bGVjdGlvbkhhbmRsZVBvc2l0aW9uKTsKICAgICBSZWZQdHI8V2ViQ29yZTo6UmFuZ2U+IHN3aXRj
aFRvQmxvY2tTZWxlY3Rpb25BdFBvaW50KGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiwgU2VsZWN0
aW9uSGFuZGxlUG9zaXRpb24pOwogI2VuZGlmCisKICNpZiAhUExBVEZPUk0oQ09DT0EpCiAgICAg
c3RhdGljIGNvbnN0IGNoYXIqIGludGVycHJldEtleUV2ZW50KGNvbnN0IFdlYkNvcmU6OktleWJv
YXJkRXZlbnQqKTsKICNlbmRpZgorCiAgICAgYm9vbCBwZXJmb3JtRGVmYXVsdEJlaGF2aW9yRm9y
S2V5RXZlbnQoY29uc3QgV2ViS2V5Ym9hcmRFdmVudCYpOwogCiAjaWYgUExBVEZPUk0oTUFDKQpA
QCAtMTIwNiw3ICsxMjA3LDcgQEAgcHJpdmF0ZToKICAgICBzdGF0aWMgUGx1Z2luVmlldyogZm9j
dXNlZFBsdWdpblZpZXdGb3JGcmFtZShXZWJDb3JlOjpGcmFtZSYpOwogICAgIHN0YXRpYyBQbHVn
aW5WaWV3KiBwbHVnaW5WaWV3Rm9yRnJhbWUoV2ViQ29yZTo6RnJhbWUqKTsKIAotICAgIHN0YXRp
YyBQYXNzUmVmUHRyPFdlYkNvcmU6OlJhbmdlPiByYW5nZUZyb21FZGl0aW5nUmFuZ2UoV2ViQ29y
ZTo6RnJhbWUmLCBjb25zdCBFZGl0aW5nUmFuZ2UmLCBFZGl0aW5nUmFuZ2VJc1JlbGF0aXZlVG8g
PSBFZGl0aW5nUmFuZ2VJc1JlbGF0aXZlVG86OkVkaXRhYmxlUm9vdCk7CisgICAgc3RhdGljIFJl
ZlB0cjxXZWJDb3JlOjpSYW5nZT4gcmFuZ2VGcm9tRWRpdGluZ1JhbmdlKFdlYkNvcmU6OkZyYW1l
JiwgY29uc3QgRWRpdGluZ1JhbmdlJiwgRWRpdGluZ1JhbmdlSXNSZWxhdGl2ZVRvID0gRWRpdGlu
Z1JhbmdlSXNSZWxhdGl2ZVRvOjpFZGl0YWJsZVJvb3QpOwogCiAgICAgdm9pZCByZXBvcnRVc2Vk
RmVhdHVyZXMoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQ
YWdlL21hYy9XZWJQYWdlTWFjLm1tIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdl
L21hYy9XZWJQYWdlTWFjLm1tCmluZGV4IGY3ZWI4ZDcwYzZkNjI4ZTZlYmQzNzlhNjI4OTZmNDEy
YTVjYmJlNWEuLjE2Y2M3MzRiZWNjNWE2NmJkNzg5ODJkMTk5ODQyNTRhMTI3YWJjZjYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvV2ViUGFnZU1hYy5t
bQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1dlYlBhZ2VNYWMu
bW0KQEAgLTcyNCw3ICs3MjQsNyBAQCBTdHJpbmcgV2ViUGFnZTo6Y2FjaGVkUmVzcG9uc2VNSU1F
VHlwZUZvclVSTChjb25zdCBVUkwmIHVybCkKICAgICByZXR1cm4gW1tjYWNoZWRSZXNwb25zZUZv
clVSTCh0aGlzLCB1cmwpIHJlc3BvbnNlXSBNSU1FVHlwZV07CiB9CiAKLVBhc3NSZWZQdHI8U2hh
cmVkQnVmZmVyPiBXZWJQYWdlOjpjYWNoZWRSZXNwb25zZURhdGFGb3JVUkwoY29uc3QgVVJMJiB1
cmwpCitSZWZQdHI8U2hhcmVkQnVmZmVyPiBXZWJQYWdlOjpjYWNoZWRSZXNwb25zZURhdGFGb3JV
UkwoY29uc3QgVVJMJiB1cmwpCiB7CiAgICAgcmV0dXJuIFNoYXJlZEJ1ZmZlcjo6d3JhcE5TRGF0
YShbY2FjaGVkUmVzcG9uc2VGb3JVUkwodGhpcywgdXJsKSBkYXRhXSk7CiB9CkBAIC03NzMsMzcg
Kzc3MywzMyBAQCB2b2lkIFdlYlBhZ2U6OmFjY2VwdHNGaXJzdE1vdXNlKGludCBldmVudE51bWJl
ciwgY29uc3QgV2ViS2l0OjpXZWJNb3VzZUV2ZW50JiBldgogICAgICAgICByZXN1bHQgPSAhIWhp
dFJlc3VsdC5zY3JvbGxiYXIoKTsKIH0KIAotdm9pZCBXZWJQYWdlOjpzZXRUb3BPdmVyaGFuZ0lt
YWdlKFBhc3NSZWZQdHI8V2ViSW1hZ2U+IGltYWdlKQordm9pZCBXZWJQYWdlOjpzZXRUb3BPdmVy
aGFuZ0ltYWdlKFdlYkltYWdlKiBpbWFnZSkKIHsKLSAgICBGcmFtZVZpZXcqIGZyYW1lVmlldyA9
IG1fbWFpbkZyYW1lLT5jb3JlRnJhbWUoKS0+dmlldygpOworICAgIGF1dG8qIGZyYW1lVmlldyA9
IG1fbWFpbkZyYW1lLT5jb3JlRnJhbWUoKS0+dmlldygpOwogICAgIGlmICghZnJhbWVWaWV3KQog
ICAgICAgICByZXR1cm47CiAKLSAgICBHcmFwaGljc0xheWVyKiBsYXllciA9IGZyYW1lVmlldy0+
c2V0V2FudHNMYXllckZvclRvcE92ZXJIYW5nQXJlYShpbWFnZS5nZXQoKSk7CisgICAgYXV0byog
bGF5ZXIgPSBmcmFtZVZpZXctPnNldFdhbnRzTGF5ZXJGb3JUb3BPdmVySGFuZ0FyZWEoaW1hZ2Up
OwogICAgIGlmICghbGF5ZXIpCiAgICAgICAgIHJldHVybjsKIAogICAgIGxheWVyLT5zZXRTaXpl
KGltYWdlLT5zaXplKCkpOwogICAgIGxheWVyLT5zZXRQb3NpdGlvbihGbG9hdFBvaW50KDAsIC1p
bWFnZS0+c2l6ZSgpLmhlaWdodCgpKSk7Ci0KLSAgICBSZXRhaW5QdHI8Q0dJbWFnZVJlZj4gY2dJ
bWFnZSA9IGltYWdlLT5iaXRtYXAoKS5tYWtlQ0dJbWFnZUNvcHkoKTsKLSAgICBsYXllci0+cGxh
dGZvcm1MYXllcigpLmNvbnRlbnRzID0gKGlkKWNnSW1hZ2UuZ2V0KCk7CisgICAgbGF5ZXItPnBs
YXRmb3JtTGF5ZXIoKS5jb250ZW50cyA9IChpZClpbWFnZS0+Yml0bWFwKCkubWFrZUNHSW1hZ2VD
b3B5KCkuZ2V0KCk7CiB9CiAKLXZvaWQgV2ViUGFnZTo6c2V0Qm90dG9tT3ZlcmhhbmdJbWFnZShQ
YXNzUmVmUHRyPFdlYkltYWdlPiBpbWFnZSkKK3ZvaWQgV2ViUGFnZTo6c2V0Qm90dG9tT3Zlcmhh
bmdJbWFnZShXZWJJbWFnZSogaW1hZ2UpCiB7Ci0gICAgRnJhbWVWaWV3KiBmcmFtZVZpZXcgPSBt
X21haW5GcmFtZS0+Y29yZUZyYW1lKCktPnZpZXcoKTsKKyAgICBhdXRvKiBmcmFtZVZpZXcgPSBt
X21haW5GcmFtZS0+Y29yZUZyYW1lKCktPnZpZXcoKTsKICAgICBpZiAoIWZyYW1lVmlldykKICAg
ICAgICAgcmV0dXJuOwogCi0gICAgR3JhcGhpY3NMYXllciogbGF5ZXIgPSBmcmFtZVZpZXctPnNl
dFdhbnRzTGF5ZXJGb3JCb3R0b21PdmVySGFuZ0FyZWEoaW1hZ2UuZ2V0KCkpOworICAgIGF1dG8q
IGxheWVyID0gZnJhbWVWaWV3LT5zZXRXYW50c0xheWVyRm9yQm90dG9tT3ZlckhhbmdBcmVhKGlt
YWdlKTsKICAgICBpZiAoIWxheWVyKQogICAgICAgICByZXR1cm47CiAKICAgICBsYXllci0+c2V0
U2l6ZShpbWFnZS0+c2l6ZSgpKTsKLSAgICAKLSAgICBSZXRhaW5QdHI8Q0dJbWFnZVJlZj4gY2dJ
bWFnZSA9IGltYWdlLT5iaXRtYXAoKS5tYWtlQ0dJbWFnZUNvcHkoKTsKLSAgICBsYXllci0+cGxh
dGZvcm1MYXllcigpLmNvbnRlbnRzID0gKGlkKWNnSW1hZ2UuZ2V0KCk7CisgICAgbGF5ZXItPnBs
YXRmb3JtTGF5ZXIoKS5jb250ZW50cyA9IChpZClpbWFnZS0+Yml0bWFwKCkubWFrZUNHSW1hZ2VD
b3B5KCkuZ2V0KCk7CiB9CiAKIHZvaWQgV2ViUGFnZTo6dXBkYXRlSGVhZGVyQW5kRm9vdGVyTGF5
ZXJzRm9yRGV2aWNlU2NhbGVDaGFuZ2UoZmxvYXQgc2NhbGVGYWN0b3IpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwIGIvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcAppbmRleCBjMTI4MDE4MzAzNTYwMjJhYmYzMGY4Nzg3
Mzc5NmMzNTNkZTNiYmY0Li4zZTVjYmFkYWIyNDQ0Mjg2MDUwMTM3MDJlOTM0NTAyM2YxNjBiMjky
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAKQEAgLTE1OCwyMiAr
MTU4LDEyIEBAIFdlYlByb2Nlc3M6OldlYlByb2Nlc3MoKQogI2lmIFBMQVRGT1JNKElPUykKICAg
ICAsIG1fdmlld1VwZGF0ZURpc3BhdGNoZXIoVmlld1VwZGF0ZURpc3BhdGNoZXI6OmNyZWF0ZSgp
KQogI2VuZGlmCi0gICAgLCBtX2luRGlkQ2xvc2UoZmFsc2UpCi0gICAgLCBtX2hhc1NldENhY2hl
TW9kZWwoZmFsc2UpCi0gICAgLCBtX2NhY2hlTW9kZWwoQ2FjaGVNb2RlbERvY3VtZW50Vmlld2Vy
KQotICAgICwgbV9mdWxsS2V5Ym9hcmRBY2Nlc3NFbmFibGVkKGZhbHNlKQotICAgICwgbV90ZXh0
Q2hlY2tlclN0YXRlKCkKLSAgICAsIG1faWNvbkRhdGFiYXNlUHJveHkoKm5ldyBXZWJJY29uRGF0
YWJhc2VQcm94eSh0aGlzKSkKKyAgICAsIG1faWNvbkRhdGFiYXNlUHJveHkoKm5ldyBXZWJJY29u
RGF0YWJhc2VQcm94eSgqdGhpcykpCiAgICAgLCBtX3dlYkxvYWRlclN0cmF0ZWd5KCpuZXcgV2Vi
TG9hZGVyU3RyYXRlZ3kpCiAgICAgLCBtX2Ruc1ByZWZldGNoSHlzdGVyZXJpcyhbdGhpc10oSHlz
dGVyZXNpc1N0YXRlIHN0YXRlKSB7IGlmIChzdGF0ZSA9PSBIeXN0ZXJlc2lzU3RhdGU6OlN0b3Bw
ZWQpIG1fZG5zUHJlZmV0Y2hlZEhvc3RzLmNsZWFyKCk7IH0pCiAjaWYgRU5BQkxFKE5FVFNDQVBF
X1BMVUdJTl9BUEkpCiAgICAgLCBtX3BsdWdpblByb2Nlc3NDb25uZWN0aW9uTWFuYWdlcihQbHVn
aW5Qcm9jZXNzQ29ubmVjdGlvbk1hbmFnZXI6OmNyZWF0ZSgpKQogI2VuZGlmCi0jaWYgRU5BQkxF
KFNFUlZJQ0VfQ09OVFJPTFMpCi0gICAgLCBtX2hhc0ltYWdlU2VydmljZXMoZmFsc2UpCi0gICAg
LCBtX2hhc1NlbGVjdGlvblNlcnZpY2VzKGZhbHNlKQotICAgICwgbV9oYXNSaWNoQ29udGVudFNl
cnZpY2VzKGZhbHNlKQotI2VuZGlmCiAgICAgLCBtX25vblZpc2libGVQcm9jZXNzQ2xlYW51cFRp
bWVyKCp0aGlzLCAmV2ViUHJvY2Vzczo6bm9uVmlzaWJsZVByb2Nlc3NDbGVhbnVwVGltZXJGaXJl
ZCkKICAgICAsIG1fc3RhdGlzdGljc0NoYW5nZWRUaW1lcigqdGhpcywgJldlYlByb2Nlc3M6OnN0
YXRpc3RpY3NDaGFuZ2VkVGltZXJGaXJlZCkKICNpZiBQTEFURk9STShJT1MpCkBAIC0xOTQsOSAr
MTg0LDExIEBAIFdlYlByb2Nlc3M6OldlYlByb2Nlc3MoKQogI2lmIEVOQUJMRShOT1RJRklDQVRJ
T05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCiAgICAgYWRkU3VwcGxlbWVudDxX
ZWJOb3RpZmljYXRpb25NYW5hZ2VyPigpOwogI2VuZGlmCisKICNpZiBFTkFCTEUoTEVHQUNZX0VO
Q1JZUFRFRF9NRURJQSkKICAgICBhZGRTdXBwbGVtZW50PFdlYk1lZGlhS2V5U3RvcmFnZU1hbmFn
ZXI+KCk7CiAjZW5kaWYKKwogICAgIG1fcGx1Z0luQXV0b1N0YXJ0T3JpZ2luSGFzaGVzLmFkZChT
ZXNzaW9uSUQ6OmRlZmF1bHRTZXNzaW9uSUQoKSwgSGFzaE1hcDx1bnNpZ25lZCwgZG91YmxlPigp
KTsKIAogI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpAQCAtMjA3LDcgKzE5OSw2IEBAIFdl
YlByb2Nlc3M6OldlYlByb2Nlc3MoKQogICAgIG1fcmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3Jh
Z2UtPnNldE5vdGlmaWNhdGlvbkNhbGxiYWNrKFt0aGlzXSB7CiAgICAgICAgIGlmIChtX3N0YXRp
c3RpY3NDaGFuZ2VkVGltZXIuaXNBY3RpdmUoKSkKICAgICAgICAgICAgIHJldHVybjsKLSAgICAg
ICAgCiAgICAgICAgIG1fc3RhdGlzdGljc0NoYW5nZWRUaW1lci5zdGFydE9uZVNob3Qoc3RkOjpj
aHJvbm86OnNlY29uZHMoNSkpOwogICAgIH0pOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlByb2Nlc3MuaAppbmRleCAyMjhmMDQ2MTFkYjE4MGJiZmRlN2Y0ZDliNWYyMTNmZGI2M2NjOWUy
Li4zNTQ0NjRhODFlNDBiMGRlNGVmY2FjYWQ1ZmI4NjRhYTkzNzAzMTNlIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaAorKysgYi9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaApAQCAtMjMsOCArMjMsNyBAQAogICogVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV2ViUHJvY2Vzc19oCi0jZGVm
aW5lIFdlYlByb2Nlc3NfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJDYWNoZU1vZGVsLmgi
CiAjaW5jbHVkZSAiQ2hpbGRQcm9jZXNzLmgiCkBAIC0zNDYsMjAgKzM0NSwyMCBAQCBwcml2YXRl
OgogICAgIFJlZlB0cjxWaWV3VXBkYXRlRGlzcGF0Y2hlcj4gbV92aWV3VXBkYXRlRGlzcGF0Y2hl
cjsKICNlbmRpZgogCi0gICAgYm9vbCBtX2luRGlkQ2xvc2U7CisgICAgYm9vbCBtX2luRGlkQ2xv
c2UgeyBmYWxzZSB9OwogCiAgICAgSGFzaE1hcDxXZWJDb3JlOjpTZXNzaW9uSUQsIEhhc2hNYXA8
dW5zaWduZWQsIGRvdWJsZT4+IG1fcGx1Z0luQXV0b1N0YXJ0T3JpZ2luSGFzaGVzOwogICAgIEhh
c2hTZXQ8U3RyaW5nPiBtX3BsdWdJbkF1dG9TdGFydE9yaWdpbnM7CiAKLSAgICBib29sIG1faGFz
U2V0Q2FjaGVNb2RlbDsKLSAgICBDYWNoZU1vZGVsIG1fY2FjaGVNb2RlbDsKKyAgICBib29sIG1f
aGFzU2V0Q2FjaGVNb2RlbCB7IGZhbHNlIH07CisgICAgQ2FjaGVNb2RlbCBtX2NhY2hlTW9kZWwg
eyBDYWNoZU1vZGVsRG9jdW1lbnRWaWV3ZXIgfTsKIAogI2lmIFBMQVRGT1JNKENPQ09BKQogICAg
IFdlYkNvcmU6Ok1hY2hTZW5kUmlnaHQgbV9jb21wb3NpdGluZ1JlbmRlclNlcnZlclBvcnQ7CiAg
ICAgcGlkX3QgbV9wcmVzZW50ZXJBcHBsaWNhdGlvblBpZDsKICNlbmRpZgogCi0gICAgYm9vbCBt
X2Z1bGxLZXlib2FyZEFjY2Vzc0VuYWJsZWQ7CisgICAgYm9vbCBtX2Z1bGxLZXlib2FyZEFjY2Vz
c0VuYWJsZWQgeyBmYWxzZSB9OwogCiAgICAgSGFzaE1hcDx1aW50NjRfdCwgV2ViRnJhbWUqPiBt
X2ZyYW1lTWFwOwogCkBAIC0zODgsOSArMzg3LDkgQEAgcHJpdmF0ZToKICNlbmRpZgogCiAjaWYg
RU5BQkxFKFNFUlZJQ0VfQ09OVFJPTFMpCi0gICAgYm9vbCBtX2hhc0ltYWdlU2VydmljZXM7Ci0g
ICAgYm9vbCBtX2hhc1NlbGVjdGlvblNlcnZpY2VzOwotICAgIGJvb2wgbV9oYXNSaWNoQ29udGVu
dFNlcnZpY2VzOworICAgIGJvb2wgbV9oYXNJbWFnZVNlcnZpY2VzIHsgZmFsc2UgfTsKKyAgICBi
b29sIG1faGFzU2VsZWN0aW9uU2VydmljZXMgeyBmYWxzZSB9OworICAgIGJvb2wgbV9oYXNSaWNo
Q29udGVudFNlcnZpY2VzIHsgZmFsc2UgfTsKICNlbmRpZgogCiAgICAgSGFzaFNldDx1aW50NjRf
dD4gbV9wYWdlc0luV2luZG93czsKQEAgLTQxNiw1ICs0MTUsMyBAQCBwcml2YXRlOgogfTsKIAog
fSAvLyBuYW1lc3BhY2UgV2ViS2l0Ci0KLSNlbmRpZiAvLyBXZWJQcm9jZXNzX2gK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>298905</attachid>
            <date>2017-01-15 11:08:20 -0800</date>
            <delta_ts>2017-01-15 12:18:27 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-167055-20170115110634.patch</filename>
            <type>text/plain</type>
            <size>659115</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEwNzc4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzVmMGY0ODU2MzhlNDBj
YjlmMGQ2ODYxMGM4NTdjODQ4ODNhOTNhOS4uYzgwOTFlMjg4ZWFiMjU4M2I1ZGVkNmFjOTViYmU5
ZjJkNjY2NDhhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxNCBAQAorMjAxNy0wMS0xNSAgRGFy
aW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIFBhc3NSZWZQdHIg
ZnJvbSAibG9hZGVyIiBkaXJlY3Rvcnkgb2YgV2ViQ29yZQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY3MDU1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6RG9jdW1lbnQ6OnByb2Nlc3NIdHRwRXF1aXYpOiBQYXNzIGEgcmVmZXJlbmNlLgor
ICAgICAgICAqIGVkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6RWRpdENvbW1hbmRDb21wb3NpdGlvbjo6dW5hcHBseSk6IERpdHRvLgorICAgICAgICAo
V2ViQ29yZTo6RWRpdENvbW1hbmRDb21wb3NpdGlvbjo6cmVhcHBseSk6IERpdHRvLgorICAgICAg
ICAoV2ViQ29yZTo6Q29tcG9zaXRlRWRpdENvbW1hbmQ6OmVuc3VyZUNvbXBvc2l0aW9uKTogUmV0
dXJuIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6Q29tcG9zaXRlRWRpdENvbW1hbmQ6
OmFwcGx5Q29tbWFuZFRvQ29tcG9zaXRlKTogVXNlIGEgcmVmZXJlbmNlLgorICAgICAgICAqIGVk
aXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuaDogVXBkYXRlZCBmb3IgYWJvdmUgY2hhbmdlcy4K
KworICAgICAgICAqIGVkaXRpbmcvRWRpdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRv
cjo6dW5hcHBsaWVkRWRpdGluZyk6IFRha2UgYSByZWZlcmVuY2UgaW5zdGVhZCBvZiBhIFBhc3NS
ZWZQdHIuCisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OnJlYXBwbGllZEVkaXRpbmcpOiBEaXR0
by4KKyAgICAgICAgKiBlZGl0aW5nL0VkaXRvci5oOiBVcGRhdGVkIGZvciBhYm92ZSBjaGFuZ2Vz
LiBBbHNvIGNoYW5nZWQgdGhlCisgICAgICAgIEZyYWdtZW50QW5kUmVzb3VyY2VzIHJlc291cmNl
cyB2ZWN0b3IgdG8gaG9sZCBSZWYgaW5zdGVhZCBvZiBSZWZQdHIuCisKKyAgICAgICAgKiBlZGl0
aW5nL2lvcy9FZGl0b3JJT1MubW06CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OldlYkNvbnRl
bnRSZWFkZXI6OnJlYWRXZWJBcmNoaXZlKTogUGFzcyBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdl
YkNvcmU6OkVkaXRvcjo6Y3JlYXRlRnJhZ21lbnRBbmRBZGRSZXNvdXJjZXMpOiBVcGRhdGVkIGZv
ciBjaGFuZ2UgdG8KKyAgICAgICAgRnJhZ21lbnRBbmRSZXNvdXJjZXMuCisKKyAgICAgICAgKiBl
ZGl0aW5nL21hYy9FZGl0b3JNYWMubW06CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OldlYkNv
bnRlbnRSZWFkZXI6OnJlYWRXZWJBcmNoaXZlKTogUGFzcyBhIHJlZmVyZW5jZS4KKyAgICAgICAg
KFdlYkNvcmU6OkVkaXRvcjo6Y3JlYXRlRnJhZ21lbnRBbmRBZGRSZXNvdXJjZXMpOiBVcGRhdGVk
IGZvciBjaGFuZ2UgdG8KKyAgICAgICAgRnJhZ21lbnRBbmRSZXNvdXJjZXMuCisKKyAgICAgICAg
KiBoaXN0b3J5L1BhZ2VDYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpjYW5DYWNoZUZyYW1l
KTogVXNlIGEgcmVmZXJlbmNlLgorCisgICAgICAgICogaHRtbC9GaWxlSW5wdXRUeXBlLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkZpbGVJbnB1dFR5cGU6OmhhbmRsZURPTUFjdGl2YXRlRXZlbnQp
OiBQYXNzIHJlZmVyZW5jZXMuCisKKyAgICAgICAgKiBodG1sL0hUTUxGb3JtQ29udHJvbEVsZW1l
bnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEZvcm1Db250cm9sRWxlbWVudDo6Zm9ybU1l
dGhvZCk6IFVzZSBhdXRvLgorCisgICAgICAgICogaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6SFRNTEZvcm1FbGVtZW50OjpwcmVwYXJlRm9yU3VibWlzc2lvbik6
IFVwZGF0ZWQgdG8gdXNlIGEgcmV0dXJuCisgICAgICAgIHZhbHVlcyBmb3IgdGV4dEZpZWxkVmFs
dWVzIGludHNlYWQgb2YgYW4gb3V0IGFyZ3VtZW50IHdpdGggZ2V0VGV4dEZpZWxkVmFsdWVzLgor
ICAgICAgICAoV2ViQ29yZTo6SFRNTEZvcm1FbGVtZW50Ojp0ZXh0RmllbGRWYWx1ZXMpOiBSZW5h
bWVkIGZyb20gZ2V0VGV4dEZpZWxkVmFsdWVzCisgICAgICAgIGFuZCBjaGFuZ2VkIHRvIHVzZSBh
IHJldHVybiB2YWx1ZSBpbnN0ZWFkIG9mIGFuIG91dCBhcmd1bWVudC4KKyAgICAgICAgKFdlYkNv
cmU6OkhUTUxGb3JtRWxlbWVudDo6c3VibWl0KTogUGFzcyBhIHJlZmVyZW5jZS4KKyAgICAgICAg
KFdlYkNvcmU6OkhUTUxGb3JtRWxlbWVudDo6cmVxdWVzdEF1dG9jb21wbGV0ZSk6IFBhc3MgYSBS
ZWYmJi4KKyAgICAgICAgKiBodG1sL0hUTUxGb3JtRWxlbWVudC5oOiBVcGRhdGVkIGZvciBhYm92
ZSBjaGFuZ2VzLgorCisgICAgICAgICogaHRtbC9IVE1MSHRtbEVsZW1lbnQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTEh0bWxFbGVtZW50OjppbnNlcnRlZEJ5UGFyc2VyKTogVXNlIGEgcmVm
ZXJlbmNlLgorCisgICAgICAgICogaHRtbC9IVE1MTGlua0VsZW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTExpbmtFbGVtZW50Ojpwcm9jZXNzKTogUGFzcyBhIHJlZmVyZW5jZS4KKyAg
ICAgICAgKFdlYkNvcmU6OkhUTUxMaW5rRWxlbWVudDo6c2V0Q1NTU3R5bGVTaGVldCk6IFVzZSBh
dXRvLgorCisgICAgICAgICogaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OmxvYWRSZXNvdXJjZSk6IFVzZSBhIHJlZmVyZW5jZS4K
KworICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50Ojp1cGRh
dGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzKTogVXNlIGEgcmVmZXJlbmNlLAorICAgICAgICBhbHNv
IHVwZGF0ZSBmb3Igc3RydWN0LXN0eWxlIG1lbWJlciBuYW1lcyB3aXRob3UgbV8gcHJlZml4Lgor
ICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpnZXRGcmFt
ZXNXaXRoTWFuaWZlc3RzKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JBcHBs
aWNhdGlvbkNhY2hlQWdlbnQ6OmdldE1hbmlmZXN0Rm9yRnJhbWUpOiBEaXR0by4KKyAgICAgICAg
KFdlYkNvcmU6Okluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6Z2V0QXBwbGljYXRpb25D
YWNoZUZvckZyYW1lKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JBcHBsaWNh
dGlvbkNhY2hlQWdlbnQ6OmJ1aWxkT2JqZWN0Rm9yQXBwbGljYXRpb25DYWNoZSk6IERpdHRvLgor
ICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZEFy
cmF5Rm9yQXBwbGljYXRpb25DYWNoZVJlc291cmNlcyk6IERpdHRvLgorICAgICAgICAoV2ViQ29y
ZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZE9iamVjdEZvckFwcGxpY2F0
aW9uQ2FjaGVSZXNvdXJjZSk6IERpdHRvLgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JB
cHBsaWNhdGlvbkNhY2hlQWdlbnQuaDogVXBkYXRlZCBmb3IgYWJvdmUgY2hhbmdlcy4KKworICAg
ICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp1cGRhdGVBcHBsaWNhdGlvbkNhY2hl
U3RhdHVzSW1wbCk6IFRha2UgYSByZWZlcmVuY2UuCisgICAgICAgICogaW5zcGVjdG9yL0luc3Bl
Y3Rvckluc3RydW1lbnRhdGlvbi5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAg
KiBsb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXI6OkRvY3VtZW50TG9hZGVyKTogTW92ZSBtdWNoIGluaXRpYWxpemF0aW9uIHRvIGNsYXNz
IGRlZmluaXRpb24uCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6b3JpZ2luYWxS
ZXF1ZXN0KTogTW92ZWQgdG8gaGVhZGVyIHRvIG1ha2UgaXQgaW5saW5lLgorICAgICAgICAoV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXI6Om9yaWdpbmFsUmVxdWVzdENvcHkpOiBEaXR0by4KKyAgICAg
ICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpyZXF1ZXN0KTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6dXJsKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpE
b2N1bWVudExvYWRlcjo6c3RvcExvYWRpbmcpOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAo
V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OndpbGxTZW5kUmVxdWVzdCk6IFVwZGF0ZWQgdG8gdGFr
ZSBhIHJhdyBwb2ludGVyIGluc3RlYWQgb2YgYQorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAg
ICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmNvbW1pdERhdGEpOiBDYWxsIHNob3VsZFVzZU1h
aW5SZXNvdXJjZUVuY29kaW5nIGluc3RlYWQgb2YKKyAgICAgICAgc3BlY2lhbCBjYXNpbmcgV2Vi
QXJjaGl2ZS4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjptYXliZUNyZWF0ZUFy
Y2hpdmUpOiBQYXNzIHJlZmVyZW5jZXMuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRl
cjo6c2V0QXJjaGl2ZSk6IFRha2UgUmVmJiYgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAg
ICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMpOiBUYWtl
IGEgcmVmZXJlbmNlIGluc3RlYWQKKyAgICAgICAgb2YgYSBwb2ludGVyLgorICAgICAgICAoV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXI6OnBvcEFyY2hpdmVGb3JTdWJmcmFtZSk6IFJldHVybiBSZWZQ
dHIgaW5zdGVhZCBvZgorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXI6OnN1YnJlc291cmNlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpEb2N1
bWVudExvYWRlcjo6c3VicmVzb3VyY2VzKTogUmV0dXJuIGEgVmVjdG9yPFJlZj4gaW5zdGVhZCBv
ZiBhCisgICAgICAgIFZlY3RvcjxSZWZQdHI+LgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXI6OnN1YnN0aXR1dGVSZXNvdXJjZURlbGl2ZXJ5VGltZXJGaXJlZCk6IFVzZSBtb3ZlCisg
ICAgICAgIGluc3RlYWQgb2Ygc3dhcC4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
OjpzY2hlZHVsZUFyY2hpdmVMb2FkKTogVXNlIHNob3VsZExvYWRGcm9tQXJjaGl2ZU9ubHkKKyAg
ICAgICAgaW5zdGVhZCBvZiBhIHNwZWNpYWwgY2FzZSBmb3IgZWFjaCB0eXBlIG9mIGFyY2hpdmUu
CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6b3JpZ2luYWxVUkwpOiBNb3ZlZCB0
byBoZWFkZXIgdG8gbWFrZSBpdCBpbmxpbmUuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExv
YWRlcjo6cmVzcG9uc2VVUkwpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyOjpkb2N1bWVudFVSTCk6IENhbGwgc2hvdWxkVXNlTWFpblJlc291cmNlVVJMIGluc3RlYWQg
b2YKKyAgICAgICAgc3BlY2lhbCBjYXNpbmcgV2ViQXJjaGl2ZS4KKyAgICAgICAgKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyOjpyZXNwb25zZU1JTUVUeXBlKTogTW92ZWQgdG8gaGVhZGVyIHRvIG1h
a2UgaXQgaW5saW5lLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmN1cnJlbnRD
b250ZW50VHlwZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmNv
bnRlbnRGaWx0ZXIpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpn
ZXRJY29uTG9hZERlY2lzaW9uRm9ySWNvblVSTCk6IFBhc3MgYSByZWZlcmVuY2UuCisgICAgICAg
IChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6Z2V0SWNvbkRhdGFGb3JJY29uVVJMKTogRGl0dG8u
CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6ZGlzcGF0Y2hPbmxvYWRFdmVudHMp
OiBVc2UgYSByZWZlcmVuY2UuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6dW5y
ZWFjaGFibGVVUkwpOiBNb3ZlZCB0byBoZWFkZXIgdG8gbWFrZSBpdCBpbmxpbmUuCisgICAgICAg
ICogbG9hZGVyL0RvY3VtZW50TG9hZGVyLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAg
ICAgICAqIGxvYWRlci9FbXB0eUNsaWVudHMuY3BwOiBVcGRhdGVkIGZvciBjaGFuZ2VzIHRvIGNs
aWVudCBpbnRlcmZhY2VzLgorICAgICAgICAqIGxvYWRlci9FbXB0eUNsaWVudHMuaDogRGl0dG8u
CisKKyAgICAgICAgKiBsb2FkZXIvRm9ybVN0YXRlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZv
cm1TdGF0ZTo6Rm9ybVN0YXRlKTogVGFrZSByZWZlcmVuY2VzIGluc3RlYWQgb2YgUGFzc1JlZlB0
ciwgYWxzbworICAgICAgICB0YWtlIFZlY3RvciYmIGluc3RlYWQgb2YgVmVjdG9yJiB3aGVuIHdl
IHdhbnQgdG8gdGFrZSBvd25lcnNoaXAgYW5kIHVzZSBtb3ZlCisgICAgICAgIGluc3RlYWQgb2Yg
c3dhcCB0byBkbyB0aGF0LgorICAgICAgICAoV2ViQ29yZTo6Rm9ybVN0YXRlOjpjcmVhdGUpOiBE
aXR0by4KKyAgICAgICAgKiBsb2FkZXIvRm9ybVN0YXRlLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92
ZS4gQWxzbyBjaGFuZ2VkIHJldHVybiB2YWx1ZXMgdG8gYmUKKyAgICAgICAgcmVmZXJlbmNlcyBp
bnN0ZWFkIG9mIHBvaW50ZXJzIGFuZCBtZW1iZXJzIHRvIGJlIFJlZiBpbnN0ZWFkIG9mIFJlZlB0
ci4KKworICAgICAgICAqIGxvYWRlci9Gb3JtU3VibWlzc2lvbi5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpGb3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6cGFyc2VNZXRob2RUeXBlKTogVXBkYXRl
ZCBmb3IgY2hhbmdlCisgICAgICAgIHRvIHRoZSBNZXRob2QgZW51bWVyYXRpb24uCisgICAgICAg
IChXZWJDb3JlOjpGb3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6Y29weUZyb20pOiBEZWxldGVk
LgorICAgICAgICAoV2ViQ29yZTo6Rm9ybVN1Ym1pc3Npb246OkZvcm1TdWJtaXNzaW9uKTogVXNl
IFJlZiYmIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYkNvcmU6OkZvcm1TdWJt
aXNzaW9uOjpjcmVhdGUpOiBVc2UgcmVmZXJlbmNlIGluc3RlYWQgb2YgcG9pbnRlciBhbmQKKyAg
ICAgICAgcmF3IHBvaW50ZXIgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLiBBbHNvIGNvcHkgYXR0cmli
dXRlcyB1c2luZyBjb3B5IGNvbnN0cnVjdG9yCisgICAgICAgIGluc3RlYWQgb2YgYW4gZXhwbGlj
aXQgY29weUZyb20gZnVuY3Rpb24uCisgICAgICAgIChXZWJDb3JlOjpGb3JtU3VibWlzc2lvbjo6
cmVxdWVzdFVSTCk6IFVwZGF0ZWQgZm9yIGNoYW5nZSB0byB0aGUgTWV0aG9kCisgICAgICAgIGVu
dW1lcmF0aW9uLgorICAgICAgICAoV2ViQ29yZTo6Rm9ybVN1Ym1pc3Npb246OnBvcHVsYXRlRnJh
bWVMb2FkUmVxdWVzdCk6IERpdHRvLgorICAgICAgICAqIGxvYWRlci9Gb3JtU3VibWlzc2lvbi5o
OiBVcGRhdGVkIGZvciB0aGUgYWJvdmUgY2hhbmdlcy4gTWFkZSB0aGUgQXR0cmlidXRlcworICAg
ICAgICBjbGFzcyBjb3B5YWJsZSwgc2luY2Ugd2UgY29weSBpdC4gQ2hhbmdlZCBzb21lIGZ1bmN0
aW9ucyB0byByZXR1cm4gcmVmZXJlbmNlcworICAgICAgICBpbnN0ZWFkIG9mIHBvaW50ZXJzIGFu
ZCB1c2UgUmVmIGluc3RlYWQgb2YgUmVmUHRyIGZvciBkYXRhIG1lbWJlcnMuCisKKyAgICAgICAg
KiBsb2FkZXIvRnJhbWVMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6
OnN1Ym1pdEZvcm0pOiBVcGRhdGVkIGZvciBjaGFuZ2VzIHRvIEZvcm1TdWJtaXNzaW9uCisgICAg
ICAgIGFuZCBGb3JtU3RhdGUuCisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6cmVjZWl2
ZWRGaXJzdERhdGEpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2Fk
RnJhbWVSZXF1ZXN0KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6bG9h
ZFJlc291cmNlU3luY2hyb25vdXNseSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVM
b2FkZXI6OmNvbnRpbnVlTG9hZEFmdGVyTmF2aWdhdGlvblBvbGljeSk6IERpdHRvLgorCisgICAg
ICAgICogbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50Lmg6IFVzZSByZWZlcmVuY2VzLCBwb2ludGVy
cywgUmVmUHRyLCBhbmQgUmVmCisgICAgICAgIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4gUmVtb3Zl
ZCB1bnVzZWQgZW1wdHkgZGlzcGF0Y2hEaWRGYWlsVG9TdGFydFBsdWdpbi4KKworICAgICAgICAq
IGxvYWRlci9IaXN0b3J5Q29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5
Q29udHJvbGxlcjo6cHVzaFN0YXRlKTogVGFrZSBSZWZQdHImJiBpbnN0ZWFkIG9mIFBhc3NSZWZQ
dHIuCisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5Q29udHJvbGxlcjo6cmVwbGFjZVN0YXRlKTog
RGl0dG8uCisgICAgICAgICogbG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmg6IFVwZGF0ZWQgZm9y
IHRoZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRlci9JbWFnZUxvYWRlci5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpJbWFnZUxvYWRlcjo6dXBkYXRlRnJvbUVsZW1lbnQpOiBQYXNzIGEgcmVmZXJl
bmNlLgorCisgICAgICAgICogbG9hZGVyL05hdmlnYXRpb25TY2hlZHVsZXIuY3BwOiBVc2UgcmVm
ZXJuY2VzIGFuZCBSZWYmJiBpbnN0ZWFkIG9mCisgICAgICAgIHBvaW50ZXJzIGFuZCBQYXNzUmVm
UHRyLgorICAgICAgICAoV2ViQ29yZTo6U2NoZWR1bGVkTmF2aWdhdGlvbjo6U2NoZWR1bGVkTmF2
aWdhdGlvbik6IEFkZGVkIGFuIG92ZXJsb2FkCisgICAgICAgIHRoYXQgc2VzdHMgbV9zaG91bGRP
cGVuRXh0ZXJuYWxVUkxzUG9saWN5LgorICAgICAgICAqIGxvYWRlci9OYXZpZ2F0aW9uU2NoZWR1
bGVyLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRlci9SZXNvdXJj
ZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcjo6c3RhcnQpOiBV
c2UgYW5kIHBhc3MgcmVmZXJlbmNlcy4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
Ojp3aWxsU2VuZFJlcXVlc3QpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291
cmNlTG9hZGVyOjpkaWRGYWlsKTogRGl0dG8uCisKKyAgICAgICAgKiBsb2FkZXIvU3ViZnJhbWVM
b2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OmNyZWF0ZUphdmFB
cHBsZXRXaWRnZXQpOiBSZXR1cm4gUmVmUHRyIGluc3RlYWQKKyAgICAgICAgb2YgUGFzc1JlZlB0
ci4gUGFzcyByZWZlcmVuY2VzIGluc3RlYWQgb2YgcG9pbnRlcnMuCisgICAgICAgIChXZWJDb3Jl
OjpTdWJmcmFtZUxvYWRlcjo6bG9hZE9yUmVkaXJlY3RTdWJmcmFtZSk6IERpdHRvLgorICAgICAg
ICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OmxvYWRTdWJmcmFtZSk6IERpdHRvLgorICAgICAg
ICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OmRvY3VtZW50KTogRGVsZXRlZC4gVGhpcyB3YXMg
bmV2ZXIgcmVhbGx5IHRoZQorICAgICAgICBjb3JyZWN0IGlkaW9tIGZvciBnZXR0aW5nIHRoZSBh
cHByb3ByaWF0ZSBkb2N1bWVudDsgaGlkaW5nIHRoZSBkZXBlbmRlbmN5CisgICAgICAgIG9uIG1f
ZnJhbWUgd2Fzbid0IHBhaW5nIG9mZi4KKyAgICAgICAgKFdlYkNvcmU6OlN1YmZyYW1lTG9hZGVy
Ojpsb2FkUGx1Z2luKTogUGFzcyByZWZlcmVuY2UgaW5zdGVhZCBvZiBwb2ludGVyLgorICAgICAg
ICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OnNob3VsZENvbnZlcnRJbnZhbGlkVVJMc1RvQmxh
bmspOiBFbGltaW5hdGVkCisgICAgICAgIHVubmVlZGVkIG51bGwgY2hlY2tpbmcgYW5kIGNvbXBs
ZXhpdHkgZHVlIHRvIGdvaW5nIHRocm91Z2ggdGhlIGRvY3VtZW50CisgICAgICAgIGluc3RlYWQg
b2YgdGhlIGZyYW1lIGZvciB0aGlzIGNoZWNrLgorICAgICAgICAqIGxvYWRlci9TdWJmcmFtZUxv
YWRlci5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIvYXBwY2Fj
aGUvQXBwbGljYXRpb25DYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNh
Y2hlOjpBcHBsaWNhdGlvbkNhY2hlKTogTW92ZWQgZGF0YSBtZW1iZXIKKyAgICAgICAgaW5pdGlh
bGl6YXRpb24gdG8gdGhlIGNsYXNzIGRlZmluaXRpb24uCisgICAgICAgIChXZWJDb3JlOjpBcHBs
aWNhdGlvbkNhY2hlOjp+QXBwbGljYXRpb25DYWNoZSk6IFBhc3MgYSByZWZlcmVuY2UgaW5zdGVh
ZAorICAgICAgICBvZiBhIHBvaW50ZXIuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNh
Y2hlOjppc0NvbXBsZXRlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNh
Y2hlOjpzZXRNYW5pZmVzdFJlc291cmNlKTogVGFrZSBSZWYmJiBpbnN0ZWFkIG9mCisgICAgICAg
IFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlOjphZGRSZXNv
dXJjZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZTo6cmVtb3Zl
UmVzb3VyY2UpOiBEZWxldGVkLiBXYXMgdW51c2VkLgorICAgICAgICAqIGxvYWRlci9hcHBjYWNo
ZS9BcHBsaWNhdGlvbkNhY2hlLmg6IFVwZGF0ZWQgZm9yIGFib3ZlIGNoYW5nZXMuCisKKyAgICAg
ICAgKiBsb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6QXBwbGljYXRpb25DYWNoZUdyb3VwKTog
TW92ZWQgbW9zdAorICAgICAgICBtZW1iZXIgaW5pdGlhbGl6YXRpb24gdG8gdGhlIGNsYXNzIGRl
ZmluaXRpb24uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6On5BcHBs
aWNhdGlvbkNhY2hlR3JvdXApOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6
QXBwbGljYXRpb25DYWNoZUdyb3VwOjpjYWNoZUZvck1haW5SZXF1ZXN0KTogUmVtb3ZlZAorICAg
ICAgICB1bm5lY2Vzc2FyeSBwcmVmbGlnaHQgZm9yIHJlbW92ZUZyYWdtZW50SWRlbnRpZmllciwg
d2hpY2ggZWZmaWNpZW50bHkKKyAgICAgICAgZG9lcyBub3RoaW5nIGlmIHRoZXJlIGlzIG5vIGlk
ZW50aWZpZXIuIFVzZSBlYXJseSByZXR1cm4uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlv
bkNhY2hlR3JvdXA6OmZhbGxiYWNrQ2FjaGVGb3JNYWluUmVxdWVzdCk6IE1vcmUgb2YKKyAgICAg
ICAgdGhlIHNhbWUuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNl
bGVjdENhY2hlKTogRGl0dG8sIGFsc28gdGFrZSBhIHJlZmVyZW5jZSwKKyAgICAgICAgYW5kIHVz
ZSBldmVudCBuYW1lcyBpbnN0ZWFkIG9mIGEgc3BlY2lhbCBlbnVtZXJhdGlvbiB0byBwb2FzdCBl
dmVudHMuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVjdENh
Y2hlV2l0aG91dE1hbmlmZXN0VVJMKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNh
dGlvbkNhY2hlR3JvdXA6OmZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZSk6IERpdHRvLgorICAg
ICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpmYWlsZWRMb2FkaW5nTWFpblJl
c291cmNlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
OmRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpB
cHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNhY2hlRGVzdHJveWVkKTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnN0b3BMb2FkaW5nSW5GcmFtZSk6IERpdHRv
LgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZXROZXdlc3RDYWNo
ZSk6IFVzZSBSZWYmJiBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIuCisgICAgICAgIChX
ZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6Om1ha2VPYnNvbGV0ZSk6IE1vcmUgb2YgdGhl
IHNhbWUuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnVwZGF0ZSk6
IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjphYm9ydCk6
IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpkaWRSZWNl
aXZlUmVzcG9uc2UpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVH
cm91cDo6ZGlkRmluaXNoTG9hZGluZyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGlj
YXRpb25DYWNoZUdyb3VwOjpkaWRGYWlsKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBs
aWNhdGlvbkNhY2hlR3JvdXA6OmRpZEZpbmlzaExvYWRpbmdNYW5pZmVzdCk6IERpdHRvLgorICAg
ICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjptYW5pZmVzdE5vdEZvdW5kKTog
RGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNoZWNrSWZM
b2FkSXNDb21wbGV0ZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNo
ZUdyb3VwOjpzdGFydExvYWRpbmdFbnRyeSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBw
bGljYXRpb25DYWNoZUdyb3VwOjpkZWxpdmVyRGVsYXllZE1haW5SZXNvdXJjZXMpOiBVc2UgYSBt
b2Rlcm4KKyAgICAgICAgZm9yIGxvb3AuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNh
Y2hlR3JvdXA6OmFkZEVudHJ5KTogVXNlIGF1dG8gYW5kIHNpbXBsaWZ5IGxvZ2ljCisgICAgICAg
IGZvciBhZGRpbmcuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFz
c29jaWF0ZURvY3VtZW50TG9hZGVyV2l0aENhY2hlKTogVXBkYXRlIHNpbmNlCisgICAgICAgIGZ1
bmN0aW9uIHJlc3VsdCBpcyBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0
aW9uQ2FjaGVHcm91cDo6c2NoZWR1bGVSZWFjaGVkTWF4QXBwQ2FjaGVTaXplQ2FsbGJhY2spOgor
ICAgICAgICBVc2UgYXV0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVHcm91
cDo6cG9zdExpc3RlbmVyVGFzayk6IFRha2UgZXZlbnQgdHlwZSBpbnN0ZWFkIG9mCisgICAgICAg
IHRha2luZyBhIHNwZWNpYWwgZW51bWVyYXRpb24uCisgICAgICAgICogbG9hZGVyL2FwcGNhY2hl
L0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAg
ICAgKiBsb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUhvc3QuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhvc3Q6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0KTogTW92
ZSBtb3N0IG1lbWJlcgorICAgICAgICBpbml0aWFsaXphdGlvbiB0byB0aGUgY2xhc3MgZGVmaW5p
dGlvbi4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojp+QXBwbGljYXRp
b25DYWNoZUhvc3QpOiBVc2UgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRp
b25DYWNoZUhvc3Q6OnNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0KTogRGl0dG8uCisgICAgICAg
IChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c2VsZWN0Q2FjaGVXaXRoTWFuaWZlc3Qp
OiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0OjptYWluUmVz
b3VyY2VEYXRhUmVjZWl2ZWQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9u
Q2FjaGVIb3N0OjpmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6ZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNl
KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWF5YmVM
b2FkRmFsbGJhY2tGb3JSZWRpcmVjdCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGlj
YXRpb25DYWNoZUhvc3Q6Om1heWJlTG9hZEZhbGxiYWNrRm9yUmVzcG9uc2UpOiBEaXR0by4KKyAg
ICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpjcmVhdGVGaWxlVVJMKTogRGl0
dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWF5YmVMb2FkU3lu
Y2hyb25vdXNseSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhv
c3Q6Om5vdGlmeURPTUFwcGxpY2F0aW9uQ2FjaGUpOiBUYWtlIGV2ZW50CisgICAgICAgIHR5cGUg
aW5zdGVhZCBvZiBzcGVjaWFsIGVudW1lcmF0aW9uLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGlj
YXRpb25DYWNoZUhvc3Q6OnN0b3BMb2FkaW5nSW5GcmFtZSk6IFVzZSByZWZlcmVuY2UuCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c3RvcERlZmVycmluZ0V2ZW50cyk6
IFVwZGF0ZWQgdG8gdXNlCisgICAgICAgIGV2ZW50IHR5cGVzIGluc3RlYWQgb2Ygc3BlY2lhbCBl
bnVtZXJhdGlvbiBhbmQgYWxzbyByZXBhaXJlZCBwb3NzaWJsZQorICAgICAgICBlZGdlIGNhc2Ug
d2hlcmUgY29kZSBpbiBldmVudCBoYW5kbGVyIHNvbWVob3cgdHJpZ2dlcnMgYWRkaXRpb25hbCBl
dmVudHMuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6cmVzb3VyY2VM
aXN0KTogUmVuYW1lZCBmcm9tIGZpbGxSZXNvdXJjZUxpc3QKKyAgICAgICAgYW5kIGNoYW5nZWQg
dG8gcmV0dXJuIGEgdmVjdG9yIGluc3RlYWQgb2YgcG9wdWxhdGluZyBvbmUuCisgICAgICAgIChX
ZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6YXBwbGljYXRpb25DYWNoZUluZm8pOiBUd2Vh
ayBjb2Rpbmcgc3R5bGUgYSBiaXQuCisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVBcHBsaWNhdGlv
bkNhY2hlRXZlbnQpOiBGYWN0b3JlZCB0aGlzIGhlbHBlciBvdXQgb2YKKyAgICAgICAgZGlzcGF0
Y2hET01FdmVudCBzbyB3ZSBjYW4gdXNlIFJlZiBpbnN0ZWFkIG9mIFJlZlB0ci4KKyAgICAgICAg
KFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpkaXNwYXRjaERPTUV2ZW50KTogVXBkYXRl
ZCB0byByZWNlbnQgZXZlbnQgdHlwZQorICAgICAgICByYXRoZXIgdGhhbiByZWNlaXZpbmcgYW4g
ZXZlbnQgaWQgYW5kIG1hcHBpbmcgaXQgdG8gYSB0eXBlLgorICAgICAgICAoV2ViQ29yZTo6QXBw
bGljYXRpb25DYWNoZUhvc3Q6OnNldEFwcGxpY2F0aW9uQ2FjaGUpOiBUYWtlIFJlZlB0ciYmIGlu
c3RlYWQgb2YKKyAgICAgICAgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0
aW9uQ2FjaGVIb3N0Ojp1cGRhdGUpOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29y
ZTo6QXBwbGljYXRpb25DYWNoZUhvc3Q6OnN3YXBDYWNoZSk6IERpdHRvLgorICAgICAgICAoV2Vi
Q29yZTo6QXBwbGljYXRpb25DYWNoZUhvc3Q6OmFib3J0KTogRGl0dG8uCisgICAgICAgICogbG9h
ZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVIb3N0Lmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92
ZS4KKworICAgICAgICAqIGxvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6bG9hZENhY2hl
R3JvdXApOiBQYXNzIGEgUmVmIGluc3RlYWQgb2YgUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6
QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmNhY2hlR3JvdXBGb3JVUkwpOiBEaXR0by4KKyAgICAg
ICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpmYWxsYmFja0NhY2hlR3JvdXBG
b3JVUkwpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdl
OjpjYWNoZUdyb3VwRGVzdHJveWVkKTogVGFrZSBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYkNv
cmU6OkFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpjYWNoZUdyb3VwTWFkZU9ic29sZXRlKTogRGl0
dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6c3RvcmVOZXdl
c3RDYWNoZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZVN0b3Jh
Z2U6OmxvYWRDYWNoZSk6IFJldHVybiBSZWZQdHIgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAg
ICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmRlbGV0ZUNhY2hlR3JvdXAp
OiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAqIGxvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlv
bkNhY2hlU3RvcmFnZS5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2Fk
ZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25DYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpE
T01BcHBsaWNhdGlvbkNhY2hlOjpET01BcHBsaWNhdGlvbkNhY2hlKTogVGFrZSBhIHJlZmVyZW5j
ZS4KKyAgICAgICAgKFdlYkNvcmU6OkRPTUFwcGxpY2F0aW9uQ2FjaGU6OnRvRXZlbnRUeXBlKTog
RGVsZXRlZC4KKyAgICAgICAgKiBsb2FkZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25DYWNoZS5o
OiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuIE1hZGUgbW9zdAorICAgICAgICBtZW1iZXJzIHByaXZh
dGUuCisKKyAgICAgICAgKiBsb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkFyY2hpdmU6OmNsZWFyQWxsU3ViZnJhbWVBcmNoaXZlcyk6IFVzZSBhIHNldCBmb3Ig
dGhlIGxvZ2ljIHRoYXQKKyAgICAgICAgcHJldmVudHMgdXMgZnJvbSB3YWxraW5nIHRoZSBzYW1l
IGFyY2hpdmUgbW9yZSB0aGFuIG9uY2UsIHJhdGhlciB0aGFuIHVzaW5nCisgICAgICAgIGEgdmVj
dG9yLiBMZWZ0IGl0IHJlY3Vyc2l2ZSwgdGhvdWdoLgorICAgICAgICAqIGxvYWRlci9hcmNoaXZl
L0FyY2hpdmUuaDogR2l0IHJpZCBvZiB0aGUgdHlwZSBmdW5jdGlvbiwgcmVwbGFjaW5nIGl0IHdp
dGgKKyAgICAgICAgdGhyZWUgZnVuY3Rpb25zIGZvciB0aGUgZm91ciBkaWZmZXJlbnQgcG9saWNp
ZXMgd2UgY3VycmVudGx5IGhhdmUgYWJvdXQgdGhlCisgICAgICAgIGRpZmZlcmVudCBhcmNoaXZl
IHR5cGVzLiBDaGFuZ2VkIGZ1bmN0aW9ucyB0byB0YWtlIFJlZiYmIGluc3RlYWQgb2YgUGFzc1Jl
ZlB0cgorICAgICAgICBhbmQgcmV0dXJuIGNvbnN0IFZlY3RvcjxSZWY+JiBpbnN0ZWFkIG9mIGNv
bnN0IFZlY3RvcjxSZWZQdHI+JiwgY2hhbmdpbmcgdGhlCisgICAgICAgIGRhdGEgbWVtYmVycyB0
byBtYXRjaC4KKworICAgICAgICAqIGxvYWRlci9hcmNoaXZlL0FyY2hpdmVGYWN0b3J5LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZUFyY2hpdmVNSU1FVHlwZXNNYXApOiBGYWN0b3JlZCB0
aGlzIG91dCBvZiB0aGUgYXJjaGl2ZU1JTUVUeXBlcworICAgICAgICBmdW5jdGlvbiBzbyB3ZSBk
b24ndCBuZWVkIGEgYm9vbGVhbi4gQWxzbyB1c2UgQVNDSUlMaXRlcmFsLgorICAgICAgICAoV2Vi
Q29yZTo6YXJjaGl2ZU1JTUVUeXBlcyk6IFVwZGF0ZWQgdG8gc2UgdGhlIGFib3ZlLgorCisgICAg
ICAgICogbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uOjphZGRBbGxSZXNvdXJjZXMp
OiBUYWtlIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6QXJjaGl2ZVJlc291cmNlQ29s
bGVjdGlvbjo6cG9wU3ViZnJhbWVBcmNoaXZlKTogUmV0dXJuIFJlZlB0ciBpbnN0ZWFkCisgICAg
ICAgIG9mIFBhc3NSZWZQdHIuCisgICAgICAgICogbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291
cmNlQ29sbGVjdGlvbi5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2Fk
ZXIvYXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNoaXZlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okxl
Z2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKTogVXNlIGF1
dG8gYW5kCisgICAgICAgIGZld2VyIGxvY2FsIHZhcmlhYmxlcywgbW9yZSByZWZlcmVuY2VzIGZv
ciBhcmd1bWVudCB0eXBlcyBhbmQgcmV0dXJuIHZhbHVlcy4KKyAgICAgICAgKFdlYkNvcmU6Okxl
Z2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVJlc291cmNlUmVzcG9uc2VGcm9tUHJvcGVydHlMaXN0RGF0
YSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlUmVz
b3VyY2UpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0
ZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6ZXh0cmFjdCk6
IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6dHlwZSk6IERlbGV0
ZWQuCisgICAgICAgIChXZWJDb3JlOjpMZWdhY3lXZWJBcmNoaXZlOjpyYXdEYXRhUmVwcmVzZW50
YXRpb24pOiBNb3JlIG9mIHRoZSBzYW1lLgorICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJj
aGl2ZTo6Y3JlYXRlRnJvbVNlbGVjdGlvbik6IERpdHRvLgorICAgICAgICAqIGxvYWRlci9hcmNo
aXZlL2NmL0xlZ2FjeVdlYkFyY2hpdmUuaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLiBBbHNvIG1h
cmtlZCB0aGUKKyAgICAgICAgY2xhc3MgZmluYWwgYW5kIGFkZGVkIG92ZXJyaWRlcyBmb3IgdGhl
IGZvdXIgbmV3IHBvbGljeSBtZW1iZXIgZnVuY3Rpb25zLgorCisgICAgICAgICogbG9hZGVyL2Fy
Y2hpdmUvbWh0bWwvTUhUTUxBcmNoaXZlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1IVE1MQXJj
aGl2ZTo6Y3JlYXRlKTogUGFzcyByZWZlcmVuY2VzLgorICAgICAgICAoV2ViQ29yZTo6TUhUTUxB
cmNoaXZlOjpnZW5lcmF0ZU1IVE1MRGF0YSk6IFJldHVybiBSZWZQdHIgaW5zdGVhZCBvZgorICAg
ICAgICBQYXNzUmVmUHRyLgorICAgICAgICAqIGxvYWRlci9hcmNoaXZlL21odG1sL01IVE1MQXJj
aGl2ZS5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuIEFsc28gbWFya2VkIHRoZQorICAgICAgICBj
bGFzcyBmaW5hbCBhbmQgYWRkZWQgb3ZlcnJpZGVzIGZvciB0aGUgZm91ciBuZXcgcG9saWN5IG1l
bWJlciBmdW5jdGlvbnMuCisKKyAgICAgICAgKiBsb2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRNTFBh
cnNlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNSFRNTFBhcnNlcjo6cGFyc2VBcmNoaXZlV2l0
aEhlYWRlcik6IFBhc3MgUmVmIGluc3RlYWQgb2YgUmVmUHRyCisgICAgICAgIHRvIHNldE1haW5S
ZXNvdXJjZSBhbmQgYWRkU3ViZnJhbWVBcmNoaXZlLgorICAgICAgICAoV2ViQ29yZTo6TUhUTUxQ
YXJzZXI6OmFkZFJlc291cmNlVG9BcmNoaXZlKTogRGl0dG8uCisKKyAgICAgICAgKiBsb2FkZXIv
Y2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRD
U1NTdHlsZVNoZWV0OjpyZXN0b3JlUGFyc2VkU3R5bGVTaGVldCk6IFJldHVybiBSZWZQdHIgaW5z
dGVhZAorICAgICAgICBvZiBQYXNzUmVmUHRyLgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNo
ZWRDU1NTdHlsZVNoZWV0Lmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIGxv
YWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
Q2FjaGVkUmVzb3VyY2VSZXF1ZXN0OjpzZXRJbml0aWF0b3IpOiBUYWtlIGEgcmVmZXJlbmNlIGlu
c3RlYWQgb2YgYQorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAqIGxvYWRlci9jYWNoZS9D
YWNoZWRSZXNvdXJjZVJlcXVlc3QuaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLgorCisgICAgICAg
ICogbG9hZGVyL2NvY29hL0Rpc2tDYWNoZU1vbml0b3IuaDogUmVtb3ZlZC4gVGhpcyBpcyBhIGR1
cGxpY2F0ZSwgdW51c2VkIGNvcHkKKyAgICAgICAgb2YgRGlza0NhY2hlTW9uaXRvckNvY29hLmgu
CisKKyAgICAgICAgKiBsb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvckNvY29hLmg6IFJlbW92
ZWQgdW5uZWVkZWQgZXhwb3J0aW5nIGFuZCB2aXJ0dWFsCisgICAgICAgIG1lbWJlciBmdW5jdGlv
bnMsIG1hZGUgbW9yZSB0aGluZ3MgcHJpdmF0ZSwgYW5kIGNoYW5nZWQgcmV0dXJuIHR5cGUgdG8g
UmVmUHRyCisgICAgICAgIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKiBsb2FkZXIv
Y29jb2EvRGlza0NhY2hlTW9uaXRvckNvY29hLm1tOgorICAgICAgICAoV2ViQ29yZTo6RGlza0Nh
Y2hlTW9uaXRvcjo6dHJ5R2V0RmlsZUJhY2tlZFNoYXJlZEJ1ZmZlckZyb21DRlVSTENhY2hlZFJl
c3BvbnNlKToKKyAgICAgICAgQ2hhbmdlZCByZXR1cm4gdHlwZSB0byBSZWZQdHIgaW5zdGVhZCBv
ZiBQYXNzUmVmUHRyLgorCisgICAgICAgICogbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6Okljb25EYXRhYmFzZTo6c2V0SWNvbkRhdGFGb3JJY29uVVJMKTog
VGFrZSByYXcgcG9pbnRlciBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIuCisgICAgICAg
IChXZWJDb3JlOjpJY29uRGF0YWJhc2U6OmdldE9yQ3JlYXRlSWNvblJlY29yZCk6IFJldHVybiBS
ZWYgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6SWNvbkRhdGFiYXNl
OjpnZXRJbWFnZURhdGFGb3JJY29uVVJMRnJvbVNRTERhdGFiYXNlKTogUmV0dXJuIFJlZlB0cgor
ICAgICAgICBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgICogbG9hZGVyL2ljb24vSWNv
bkRhdGFiYXNlLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4gQWxzbyBtYXJrZWQgZnVuY3Rpb25z
IGZpbmFsCisgICAgICAgIGluc3RlYWQgb2Ygb3ZlcnJpZGUuCisgICAgICAgICogbG9hZGVyL2lj
b24vSWNvbkRhdGFiYXNlQmFzZS5oOiBEaXR0by4KKworICAgICAgICAqIGxvYWRlci9pY29uL1Bh
Z2VVUkxSZWNvcmQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGFnZVVSTFJlY29yZDo6UGFnZVVS
TFJlY29yZCk6IE1vdmVkIGluaXRpYWxpemF0aW9uIHRvIHRoZSBoZWFkZXIuCisgICAgICAgIChX
ZWJDb3JlOjpQYWdlVVJMUmVjb3JkOjp+UGFnZVVSTFJlY29yZCk6IFdyb3RlIGNvZGUgaGVyZSBp
bnN0ZWFkIG9mIGNhbGxpbmcKKyAgICAgICAgc2V0SWNvblJlY29yZChudWxscHRyKS4KKyAgICAg
ICAgKFdlYkNvcmU6OlBhZ2VVUkxSZWNvcmQ6OnNldEljb25SZWNvcmQpOiBUYWtlIFJlZlB0ciYm
IGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKiBsb2FkZXIvaWNvbi9QYWdlVVJMUmVj
b3JkLmg6IFVwZGF0ZCBmb3IgdGhlIGFib3ZlLgorCisgICAgICAgICogbG9hZGVyL2lvcy9RdWlj
a0xvb2suaDoKKyAgICAgICAgKFdlYkNvcmU6OlF1aWNrTG9va0hhbmRsZTo6c2V0Q2xpZW50KTog
VGFrZSBSZWYmJiBpbnN0ZWFkIG9mIFBhc3NSZUZQdHIuCisgICAgICAgICogbG9hZGVyL2lvcy9R
dWlja0xvb2subW06CisgICAgICAgICgtW1dlYlJlc291cmNlTG9hZGVyUXVpY2tMb29rRGVsZWdh
dGUgaW5pdFdpdGhSZXNvdXJjZUxvYWRlcjpdKTogVGFrZQorICAgICAgICByZWZlcmVuY2UgaW5z
dGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6UXVpY2tMb29rSGFuZGxlOjpj
cmVhdGUpOiBQYXNzIHJlZmVyZW5jZSBpbnN0ZWFkIG9mIHBvaW50ZXIuCisKKyAgICAgICAgKiBw
YWdlL0Nocm9tZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDaHJvbWU6OnJ1bk9wZW5QYW5lbCk6
IFVwZGF0ZWQgdG8gdGFrZSB0d28gcmVmZXJlbmNlcy4KKyAgICAgICAgKiBwYWdlL0Nocm9tZS5o
OiBEaXR0by4KKyAgICAgICAgKiBwYWdlL0Nocm9tZUNsaWVudC5oOiBkaXR0by4KKworICAgICAg
ICAqIHBhZ2UvRE9NV2luZG93LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRPTVdpbmRvdzo6YXBw
bGljYXRpb25DYWNoZSk6IFBhc3MgYSByZWZlcmVuY2UuCisgICAgICAgIChXZWJDb3JlOjpET01X
aW5kb3c6OnNldExvY2F0aW9uKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpET01XaW5kb3c6
OmNyZWF0ZVdpbmRvdyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RE9NV2luZG93OjpvcGVu
KTogRGl0dG8uCisKKyAgICAgICAgKiBwYWdlL0VkaXRvckNsaWVudC5oOiBDaGFuZ2VkIGFyZ3Vt
ZW50cyB0byByZWZlcmVuY2VzIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKworICAgICAgICAqIHBh
Z2UvSGlzdG9yeS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5OjpzdGF0ZU9iamVjdEFk
ZGVkKTogUGFzcyBhbiBydmFsdWUgcmVmZXJlbmNlLgorCisgICAgICAgICogcGFnZS9Mb2NhdGlv
bi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMb2NhdGlvbjo6cmVsb2FkKTogUGFzcyByZWZlcmVu
Y2UgaW5zdGVhZCBvZiBwb2ludGVyLgorICAgICAgICAoV2ViQ29yZTo6TG9jYXRpb246OnNldExv
Y2F0aW9uKTogRGl0dG8uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9VUkwuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6VVJMOjpzZXRGcmFnbWVudElkZW50aWZpZXIpOiBUYWtlIGEgU3RyaW5nVmlldyBy
YXRoZXIgdGhhbgorICAgICAgICBhIFN0cmluZywgd2hpY2ggaXMgbW9yZSBmbGV4aWJsZSBmb3Ig
Y2FsbGVycy4gQWxzbyBlbGltaW5hdGVkIGFuIHVubmVlZGVkCisgICAgICAgIHN0cmluZyBhbGxv
Y2F0aW9uIHdoZW4gdGhlIG9sZCBzdHJpbmcgaGFkIGEgZnJhZ21lbnQgdGhhdCBpcyBiZWluZyBy
ZXBsYWNlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9VUkwuaDogVXBkYXRlZCBmb3IgdGhlIGFib3Zl
LgorCisgICAgICAgICogcmVwbGF5L1JlcGxheUlucHV0RGlzcGF0Y2hNZXRob2RzLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkluaXRpYWxOYXZpZ2F0aW9uOjpkaXNwYXRjaCk6IFBhc3MgcmVmZXJl
bmNlLgorICAgICAgICAqIHN2Zy9TVkdGRUltYWdlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpTVkdGRUltYWdlRWxlbWVudDo6cmVxdWVzdEltYWdlUmVzb3VyY2UpOiBEaXR0by4KKyAg
ICAgICAgKiBzdmcvU1ZHRm9udEZhY2VVcmlFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OlNWR0ZvbnRGYWNlVXJpRWxlbWVudDo6bG9hZEZvbnQpOiBEaXR0by4KKyAgICAgICAgKiBzdmcv
U1ZHVXNlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdVc2VFbGVtZW50Ojp1cGRh
dGVFeHRlcm5hbERvY3VtZW50KTogRGl0dG8uCisKIDIwMTctMDEtMTUgIE15bGVzIEMuIE1heGZp
ZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KIAogICAgICAgICBbQ29jb2FdIFVuaWZ5IEZvbnRQ
bGF0Zm9ybURhdGEncyBoYXNoaW5nIGFuZCBlcXVhbGl0eSBvcGVyYXRvcnMKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvaW9zL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvaW9zL0NoYW5nZUxv
ZwppbmRleCA2MWU4NDI3Zjg2YzBiOWY2MjQzNTZiMDcxZDkxZTExYmI3MjcxYTllLi45MmVkNDU2
ZTg0MjA3NTVkYWNkZDZjZDJmYzBiYjEzMjY5Yjk0MmI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L2lvcy9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9pb3MvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTUgQEAKKzIwMTctMDEtMTUgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgor
CisgICAgICAgIFJlbW92ZSBQYXNzUmVmUHRyIGZyb20gImxvYWRlciIgZGlyZWN0b3J5IG9mIFdl
YkNvcmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2
NzA1NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
V2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50SU9TLmg6IFVwZGF0ZWQgcnVuT3BlblBhbmVs
IHRvIHRha2UgcmVmZXJlbmNlcy4KKyAgICAgICAgTWFkZSBjbGFzcyBmaW5hbCBhbmQgbW9zdCBm
dW5jdGlvbnMgcHJpdmF0ZSBhbmQgZmluYWwuCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2Vi
Q2hyb21lQ2xpZW50SU9TLm1tOgorICAgICAgICAoV2ViQ2hyb21lQ2xpZW50SU9TOjpydW5PcGVu
UGFuZWwpOiBVcGRhdGVkIHRvIHRha2UgcmVmZXJlbmNlcy4KKwogMjAxNi0xMi0zMCAgRGFyaW4g
QWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIFBhc3NSZWZQdHIgdXNl
IGZyb20gdGhlICJkb20iIGRpcmVjdG9yeSwgcmVsYXRlZCBjbGVhbnVwCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cK
aW5kZXggODg2ZDljZWJhODdkNzM2OWVhN2IzMjY5ZjM5ZmFlZTUxZWUyMTg3My4uY2E3MmVhOWNm
MmYwMmIwMDkxMzk0ZjFhMTRjNzRjMzhmZjJmOGY0ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9tYWMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDg5IEBACisyMDE3LTAxLTE1ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKwor
ICAgICAgICBSZW1vdmUgUGFzc1JlZlB0ciBmcm9tICJsb2FkZXIiIGRpcmVjdG9yeSBvZiBXZWJD
b3JlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjcw
NTUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdl
YkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oOiBVcGRhdGVkIGZvciBjaGFuZ2VzIHRvIENo
cm9tZUNsaWVudC4KKyAgICAgICAgQWxzbyBtYWRlIGNsYXNzIGZpbmFsIGFuZCBtb3N0IGZ1bmN0
aW9ucyBwcml2YXRlIGFuZCBmaW5hbC4KKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJDaHJv
bWVDbGllbnQubW06CisgICAgICAgIChXZWJDaHJvbWVDbGllbnQ6OnJ1bk9wZW5QYW5lbCk6IFVw
ZGF0ZWQgdG8gdGFrZSByZWZlcmVuY2VzLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2Vi
RWRpdG9yQ2xpZW50Lmg6IFVwZGF0ZWQgZm9yIGNoYW5nZXMgdG8gRWRpdG9yQ2xpZW50LgorICAg
ICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5tbToKKyAgICAgICAgKC1bV2Vi
VW5kb1N0ZXAgaW5pdFdpdGhVbmRvU3RlcDpdKTogVGFrZSByZWZlcmVuY2UgaW5zdGVhZCBvZiBQ
YXNzUmVmUHRyLgorICAgICAgICAoK1tXZWJVbmRvU3RlcCBzdGVwV2l0aFVuZG9TdGVwOl0pOiBE
aXR0by4KKyAgICAgICAgKC1bV2ViVW5kb1N0ZXAgc3RlcF0pOiBSZXR1cm4gcmVmZXJlbmNlIGlu
c3RlYWQgb2YgcG9pbnRlci4KKyAgICAgICAgKC1bV2ViRWRpdG9yVW5kb1RhcmdldCB1bmRvRWRp
dGluZzpdKTogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLgorICAgICAgICAoLVtXZWJFZGl0b3JVbmRv
VGFyZ2V0IHJlZG9FZGl0aW5nOl0pOiBEaXR0by4KKyAgICAgICAgKFdlYkVkaXRvckNsaWVudDo6
cmVnaXN0ZXJVbmRvT3JSZWRvU3RlcCk6IFRha2UgcmVmZXJlbmNlIGluc3RlYWQgb2YKKyAgICAg
ICAgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYkVkaXRvckNsaWVudDo6cmVnaXN0ZXJVbmRvU3Rl
cCk6IERpdHRvLgorICAgICAgICAoV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclJlZG9TdGVwKTog
RGl0dG8uCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5o
OiBVcGRhdGVkIGZvciBjaGFuZ2VzIHRvCisgICAgICAgIEZyYW1lTG9hZGVyQ2xpZW50LCBtYXJr
ZWQgZnVuY3Rpb25zIGZpbmFsIGluc3RlYWQgb2Ygb3ZlcnJpZGUuCisgICAgICAgICogV2ViQ29y
ZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW06CisgICAgICAgIChXZWJGcmFtZUxvYWRl
ckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24pOiBUYWtlCisg
ICAgICAgIHBvaW50ZXIgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbik6IERp
dHRvLgorICAgICAgICAobWFrZUZvcm1GaWVsZFZhbHVlc0RpY3Rpb25hcnkpOiBUYWtlIGEgcmVm
ZXJlbmNlLgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRT
dWJtaXRFdmVudCk6IFRha2UgUmVmJiYgaW5zdGVhZAorICAgICAgICBvZiBQYXNzUmVmUHRyLgor
ICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0pOiBU
YWtlIGEgcmVmZXJlbmNlIGluc3RlYWQKKyAgICAgICAgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAg
KFdlYkZyYW1lTG9hZGVyQ2xpZW50OjphY3Rpb25EaWN0aW9uYXJ5KTogVGFrZSBhIHBvaW50ZXIg
aW5zdGVhZCBvZiBQYXNzUmVQdHIuCisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3Jl
YXRlRnJhbWUpOiBUYWtlIGEgcmVmZXJlbmNlIGluc3RlYWQgb2YgYSBwb2ludGVyLgorICAgICAg
ICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbik6IERpdHRvLgorICAgICAgICAo
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQpOiBEaXR0by4KKyAg
ICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVOZXR3b3JraW5nQ29udGV4dCk6IERp
dHRvLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4
dC5oOiBVc2UgUmVmIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKiBXZWJDb3JlU3Vw
cG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0Lm1tOiBUd2VhayBzdHlsZSBhIGJpdC4KKwor
ICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLmg6IFRh
a2UgYSByZWZlcmVuY2UgaW5zdGVhZCBvZgorICAgICAgICBQYXNzUmVmUHRyLiBVc2UgUmVmUHRy
IGZvciBjbGFzcyBmaWVsZC4KKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJPcGVuUGFuZWxS
ZXN1bHRMaXN0ZW5lci5tbToKKyAgICAgICAgKC1bV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIg
ZGVhbGxvY10pOiBEZWxldGVkLiBDb21waWxlciB3aWxsIG5vdyBkbyBpdAorICAgICAgICBjb3Jy
ZWN0bHkgd2l0aG91dCB1cyBkZWNsYXJpbmcgYW55dGhpbmcgZXhwbGljaXRseS4KKyAgICAgICAg
KC1bV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIgY2FuY2VsXSk6IEdldCByaWQgb2YgaGFuZC13
cml0dGVuIGRlcmVmIGNvZGUsCisgICAgICAgIGFuZCBsZXQgUmVmUHRyIGRvIHRoZSB3b3JrLgor
ICAgICAgICAoLVtXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lciBjaG9vc2VGaWxlbmFtZTpdKTog
RGl0dG8uCisgICAgICAgICgtW1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyIGNob29zZUZpbGVu
YW1lczpdKTogRGl0dG8uCisgICAgICAgICgtW1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyIGNo
b29zZUZpbGVuYW1lczpkaXNwbGF5U3RyaW5nOmljb25JbWFnZTpdKToKKyAgICAgICAgUmV3cm90
ZSB0byB1c2UgYSBtb2Rlcm4gT2JqZWN0aXZlLUMgZm9yIGxvb3AsIHJlc2VydmVJbml0aWFsQ2Fw
YWNpdHksCisgICAgICAgIGFuZCB1bmNoZWNrZWRBcHBlbmQuCisKKyAgICAgICAgKiBXZWJWaWV3
L1dlYkFyY2hpdmUubW06CisgICAgICAgICgtW1dlYkFyY2hpdmUgaW5pdFdpdGhNYWluUmVzb3Vy
Y2U6c3VicmVzb3VyY2VzOnN1YmZyYW1lQXJjaGl2ZXM6XSk6CisgICAgICAgIFVwZGF0ZWQgZm9y
IGNoYW5nZXMgdG8gTGVnYWN5V2ViQXJjaGl2ZS4KKyAgICAgICAgKC1bV2ViQXJjaGl2ZSBtYWlu
UmVzb3VyY2VdKTogRGl0dG8uCisgICAgICAgICgtW1dlYkFyY2hpdmUgc3VicmVzb3VyY2VzXSk6
IERpdHRvLgorICAgICAgICAoLVtXZWJBcmNoaXZlIHN1YmZyYW1lQXJjaGl2ZXNdKTogRGl0dG8u
CisKKyAgICAgICAgKiBXZWJWaWV3L1dlYkRhdGFTb3VyY2UubW06CisgICAgICAgICgtW1dlYkRh
dGFTb3VyY2UgX2FkZFN1YmZyYW1lQXJjaGl2ZXM6XSk6IFVzZSBhIG1vZGVybiBPYmplY3RpdmUt
QyBmb3IgbG9vcAorICAgICAgICBpbnN0ZWFkIG9mIE5TRW51bWVyYXRvci4KKyAgICAgICAgKC1b
V2ViRGF0YVNvdXJjZSBfZmlsZVdyYXBwZXJGb3JVUkw6XSk6IFVzZSBhdXRvLgorICAgICAgICAo
LVtXZWJEYXRhU291cmNlIF9kb2N1bWVudEZyYWdtZW50V2l0aEFyY2hpdmU6XSk6IFBhc3MgYSBy
ZWZlcmVuY2UuCisgICAgICAgICgtW1dlYkRhdGFTb3VyY2UgbWFpblJlc291cmNlXSk6IERpdHRv
LgorICAgICAgICAoLVtXZWJEYXRhU291cmNlIHN1YnJlc291cmNlc10pOiBEaXR0by4KKyAgICAg
ICAgKC1bV2ViRGF0YVNvdXJjZSBzdWJyZXNvdXJjZUZvclVSTDpdKTogRGl0dG8uCisgICAgICAg
ICgtW1dlYkRhdGFTb3VyY2UgYWRkU3VicmVzb3VyY2U6XSk6IERpdHRvLgorCisgICAgICAgICog
V2ViVmlldy9XZWJSZXNvdXJjZS5tbToKKyAgICAgICAgKC1bV2ViUmVzb3VyY2VQcml2YXRlIGlu
aXRXaXRoQ29yZVJlc291cmNlOl0pOiBUYWtlIFJlZiYmIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4K
KyAgICAgICAgKC1bV2ViUmVzb3VyY2VQcml2YXRlIGRlYWxsb2NdKTogUmVtb3ZlIGV4cGxpY2l0
IGRlcmVmIHNpbmNlIFJlZlB0ciB3aWxsIG5vdyB0YWtlCisgICAgICAgIGNhcmUgb2YgaXQKKyAg
ICAgICAgKC1bV2ViUmVzb3VyY2UgaW5pdFdpdGhDb2RlcjpdKTogUGFzcyBhIHJlZmVyZW5jZS4K
KyAgICAgICAgKC1bV2ViUmVzb3VyY2UgZW5jb2RlV2l0aENvZGVyOl0pOiBVcGRhdGVkIHNpbmNl
IGNvcmVSZXNvdXJjZSBpcyBub3cgUmVmUHRyLgorICAgICAgICAoLVtXZWJSZXNvdXJjZSBfaW5p
dFdpdGhDb3JlUmVzb3VyY2U6XSk6IFRha2UgUmVmJiYgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgor
ICAgICAgICAoLVtXZWJSZXNvdXJjZSBfY29yZVJlc291cmNlXSk6IFJldHVybiByZWZlcmVuY2Ug
cmF0aGVyIHRoYW4gcG9pbnRlci4KKyAgICAgICAgKC1bV2ViUmVzb3VyY2UgX2luaXRXaXRoRGF0
YTpVUkw6TUlNRVR5cGU6dGV4dEVuY29kaW5nTmFtZTpmcmFtZU5hbWU6cmVzcG9uc2U6Y29weURh
dGE6XSk6CisgICAgICAgIEFkZGVkIGNvZGUgdG8gaGFuZGxlIHRoZSBudWxsIGNhc2UgYW5kIHBh
c3MgYSByZWZlcmVuY2UgcmF0aGVyIHRoYW4gYSBwb2ludGVyLgorICAgICAgICAqIFdlYlZpZXcv
V2ViUmVzb3VyY2VJbnRlcm5hbC5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKIDIwMTctMDEt
MTMgIEpvc2VwaCBQZWNvcmFybyAgPHBlY29yYXJvQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1v
dmUgRU5BQkxFKERFVEFJTFNfRUxFTUVOVCkgZ3VhcmRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L3dpbi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cKaW5kZXggY2Q3
ZjY4ZGY1YmY2MTMzZTAyZDIxYzhlYzYyYjljOTJkZTU3MmUwMC4uZTgwOWJjZGZjNzg1ZWExNmZk
ZTI3MmY0Yjk2OWJmNjYxYjY4NTc3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4vQ2hh
bmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBA
CisyMDE3LTAxLTE1ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBS
ZW1vdmUgUGFzc1JlZlB0ciBmcm9tICJsb2FkZXIiIGRpcmVjdG9yeSBvZiBXZWJDb3JlCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjcwNTUKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdlYkNvcmVTdXBw
b3J0L1dlYkNocm9tZUNsaWVudC5jcHA6CisgICAgICAgIChXZWJDaHJvbWVDbGllbnQ6OnJ1bk9w
ZW5QYW5lbCk6IFVwZGF0ZWQgZm9yIGNoYW5nZSB0byBDaHJvbWVDbGllbnQuCisgICAgICAgICog
V2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50Lmg6IERpdHRvLgorCisgICAgICAgICogV2Vi
Q29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwOgorICAgICAgICAoV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKTogVXBk
YXRlZAorICAgICAgICBmb3IgY2hhbmdlIHRvIENocm9tZUNsaWVudC4KKyAgICAgICAgKFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24p
OiBEaXR0by4KKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5k
U3VibWl0RXZlbnQpOiBEaXR0by4KKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNw
YXRjaFdpbGxTdWJtaXRGb3JtKTogRGl0dG8uCisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVu
dDo6Y3JlYXRlRnJhbWUpOiBEaXR0by4gQWxzbyBtZXJnZWQgdHdvIGZ1bmN0aW9ucyBpbnRvCisg
ICAgICAgIG9uZSBiZWNhdXNlIG9uZSB3YXMgcHJpdmF0ZSBhbmQgb25seSBjYWxsZWQgYnkgdGhl
IG90aGVyLgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbik6IERp
dHRvLgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUphdmFBcHBsZXRXaWRn
ZXQpOiBEaXR0by4KKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVOZXR3b3Jr
aW5nQ29udGV4dCk6IERpdHRvLgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9h
ZGVyQ2xpZW50Lmg6IERpdHRvLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVO
ZXR3b3JraW5nQ29udGV4dC5oOgorICAgICAgICAoV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dDo6
Y3JlYXRlKTogUmV0dXJuIGEgUmVmIGluc3RlYWQgb2YgYSBQYXNzUmVmUHRyLgorCiAyMDE3LTAx
LTEyICBKb3NlcGggUGVjb3Jhcm8gIDxwZWNvcmFyb0BhcHBsZS5jb20+CiAKICAgICAgICAgUmVt
b3ZlIHVubmVjZXNzYXJ5IGluY2x1ZGVzIG9mIFBhZ2UuaApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IDdiODkzYjEy
ZGEwNDMzMDU3ZmNiMDJhMzNlOTNhM2NmMTk2ZWE0NWYuLjQ5MTllZTYyN2Y0MmY3Nzg4ZDYzNDM3
NzAwZTAzNDU2ODMxN2VlYTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMjAgQEAKKzIwMTctMDEt
MTUgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgorCisgICAgICAgIFJlbW92ZSBQYXNz
UmVmUHRyIGZyb20gImxvYWRlciIgZGlyZWN0b3J5IG9mIFdlYkNvcmUKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2NzA1NQorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2hhcmVkL0FQSVdlYkFyY2hpdmUu
aDogVXNlIFJlZlB0ciYmIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKiBTaGFyZWQv
QVBJV2ViQXJjaGl2ZS5tbToKKyAgICAgICAgKEFQSTo6V2ViQXJjaGl2ZTo6Y3JlYXRlKTogRGl0
dG8uCisgICAgICAgIChBUEk6OldlYkFyY2hpdmU6OldlYkFyY2hpdmUpOiBEaXR0by4KKyAgICAg
ICAgKEFQSTo6V2ViQXJjaGl2ZTo6c3VicmVzb3VyY2VzKTogRGl0dG8uCisgICAgICAgIChBUEk6
OldlYkFyY2hpdmU6OnN1YmZyYW1lQXJjaGl2ZXMpOiBEaXR0by4KKworICAgICAgICAqIFNoYXJl
ZC9UZXh0Q2hlY2tlclN0YXRlLmg6IEluaXRpYWxpemUgZGF0YSBtZW1iZXJzIHNvIGNsYXNzZXMK
KyAgICAgICAgdXNpbmcgdGhpcyB3b24ndCBoYXZlIHRvIGV4cGxpY2l0bHkgaW5pdGFsaXplIHRo
ZW0uCisKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViSWNvbkRhdGFiYXNlLmNwcDoKKyAgICAgICAg
KFdlYktpdDo6V2ViSWNvbkRhdGFiYXNlOjpzZXRJY29uRGF0YUZvckljb25VUkwpOiBQYXNzIGEg
cmF3CisgICAgICAgIHBvaW50ZXIgdG8gV2ViQ29yZS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9X
ZWJQYWdlUHJveHkuaDogUmVtb3ZlZCBmb3J3YXJkIGRlY2xhcmF0aW9uIG9mCisgICAgICAgIFN0
cmluZ1BhaXJWZWN0b3IsIG5vdCBuZWVkZWQgaGVyZS4KKworICAgICAgICAqIFdlYlByb2Nlc3Mv
SWNvbkRhdGFiYXNlL1dlYkljb25EYXRhYmFzZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6
V2ViSWNvbkRhdGFiYXNlUHJveHk6OldlYkljb25EYXRhYmFzZVByb3h5KTogVGFrZSBhIHJlZmVy
ZW5jZS4KKyAgICAgICAgKFdlYktpdDo6V2ViSWNvbkRhdGFiYXNlUHJveHk6OnJldGFpbkljb25G
b3JQYWdlVVJMKTogVXBkYXRlZCBmb3IgcmVmZXJlbmNlLgorICAgICAgICAoV2ViS2l0OjpXZWJJ
Y29uRGF0YWJhc2VQcm94eTo6cmVsZWFzZUljb25Gb3JQYWdlVVJMKTogRGl0dG8uCisgICAgICAg
IChXZWJLaXQ6OldlYkljb25EYXRhYmFzZVByb3h5OjpzeW5jaHJvbm91c0ljb25Gb3JQYWdlVVJM
KTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkljb25EYXRhYmFzZVByb3h5Ojpsb2FkRGVj
aXNpb25Gb3JJY29uVVJMKTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkljb25EYXRhYmFz
ZVByb3h5OjpyZWNlaXZlZEljb25Mb2FkRGVjaXNpb24pOiBEaXR0by4KKyAgICAgICAgKFdlYktp
dDo6V2ViSWNvbkRhdGFiYXNlUHJveHk6Omljb25EYXRhRm9ySWNvblVSTCk6IERpdHRvLgorICAg
ICAgICAoV2ViS2l0OjpXZWJJY29uRGF0YWJhc2VQcm94eTo6c2V0SWNvblVSTEZvclBhZ2VVUkwp
OiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViSWNvbkRhdGFiYXNlUHJveHk6OnNldEljb25E
YXRhRm9ySWNvblVSTCk6IERpdHRvLgorICAgICAgICAqIFdlYlByb2Nlc3MvSWNvbkRhdGFiYXNl
L1dlYkljb25EYXRhYmFzZVByb3h5Lmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKyAgICAgICAg
TWFya2VkIHRoZSBjbGFzcyBmaW5hbCwgbWFkZSBtb3N0IGZ1bmN0aW9ucyBwcml2YXRlIGFuZCBm
aW5hbC4KKworICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5k
bGVOYXZpZ2F0aW9uQWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYktpdDo6SW5qZWN0ZWRCdW5kbGVO
YXZpZ2F0aW9uQWN0aW9uOjpJbmplY3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rpb24pOgorICAgICAg
ICBSZW1vdmVkIGFzc2VydGlvbiB0aGF0IGEgcG9pbnRlciBpcyBub24tbnVsbCBzaW5jZSB0aGF0
IHBvaW50ZXIgaXMgbm93IGEKKyAgICAgICAgcmVmZXJlbmNlLiBMZWZ0IHVzZSBvZiBQYXNzUmVm
UHRyIGhlcmUgZm9yIG5vdy56CisKKyAgICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9h
ZGVyU3RyYXRlZ3kuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJMb2FkZXJTdHJhdGVneTo6c2No
ZWR1bGVMb2FkKTogVXBkYXRlZCBzaW5jZSBhcHBsaWNhdGlvbiBjYWNoZQorICAgICAgICBob3N0
IGlzIG5vdyBhIHJlZmVyZW5jZSByYXRoZXIgdGhuYSBhIHBvaW50ZXIuCisgICAgICAgICogV2Vi
UHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYktpdDo6
V2ViUmVzb3VyY2VMb2FkZXI6OndpbGxTZW5kUmVxdWVzdCk6IERpdHRvLgorICAgICAgICAoV2Vi
S2l0OjpXZWJSZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKTogRGl0dG8uCisgICAg
ICAgIChXZWJLaXQ6OldlYlJlc291cmNlTG9hZGVyOjpkaWRGYWlsUmVzb3VyY2VMb2FkKTogRGl0
dG8uCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OmJ1aWxkSFRUUEhlYWRlcnMpOiBHb3QgcmlkIG9mIHVubmVlZGVkIHVzZSBv
ZiBTdHJpbmc6OmZvcm1hdC4KKyAgICAgICAgKFdlYktpdDo6UGx1Z2luVmlldzo6Y3JlYXRlKTog
VGFrZSBhIHJlZmVyZW5jZSBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJLaXQ6
OlBsdWdpblZpZXc6OlBsdWdpblZpZXcpOiBEaXR0by4gQWxzbyBtb3ZlZCBtdWNoIG9mIHRoZSBk
YXRhCisgICAgICAgIG1lbWJlciBpbml0aWFsaXphdGlvbiB0byB0aGUgY2xhc3MgZGVmaW5pdGlv
bi4KKyAgICAgICAgKFdlYktpdDo6UGx1Z2luVmlldzo6cmVjcmVhdGVBbmRJbml0aWFsaXplKTog
VGFrZSBSZWYmJiBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJLaXQ6OlBsdWdp
blZpZXc6Om1hbnVhbExvYWREaWRSZWNlaXZlUmVzcG9uc2UpOiBVcGRhdGVkIGZvciBjaGFuZ2Ug
dG8KKyAgICAgICAgTWFudWFsU3RyZWFtU3RhdGUgZW51bWVyYXRpb24uCisgICAgICAgIChXZWJL
aXQ6OlBsdWdpblZpZXc6Om1hbnVhbExvYWREaWRSZWNlaXZlRGF0YSk6IERpdHRvLgorICAgICAg
ICAoV2ViS2l0OjpQbHVnaW5WaWV3OjptYW51YWxMb2FkRGlkRmluaXNoTG9hZGluZyBEaXR0by4p
OgorICAgICAgICAoV2ViS2l0OjpQbHVnaW5WaWV3OjptYW51YWxMb2FkRGlkRmFpbCk6IERpdHRv
LgorICAgICAgICAoV2ViS2l0OjpQbHVnaW5WaWV3OjpsaXZlUmVzb3VyY2VEYXRhKTogUmV0dXJu
IFJlZlB0ciBpbnNlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYktpdDo6UGx1Z2luVmll
dzo6cmVkZWxpdmVyTWFudWFsU3RyZWFtKTogVXBkYXRlZCBmb3IgTWFudWFsU3RyZWFtU3RhdGUu
CisgICAgICAgICogV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuaDogVXBkYXRlZCBmb3Ig
dGhlIGFib3ZlLiBBbHNvIGNoYW5nZWQKKyAgICAgICAgTWFudWFsU3RyZWFtU3RhdGUgaW50byBh
biBlbnVtIGNsYXNzLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJD
aHJvbWVDbGllbnQuY3BwOiBDaGFuZ2VkIG1fcGFnZSB0byBhIHJlZmVyZW5jZS4KKyAgICAgICAg
KFdlYktpdDo6V2ViQ2hyb21lQ2xpZW50OjpydW5PcGVuUGFuZWwpOiBUYWtlIGJvdGggYXJndW1l
bnRzIGFzIHJlZmVyZW5jZXMuCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9X
ZWJDaHJvbWVDbGllbnQuaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLgorCisgICAgICAgICogV2Vi
UHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuY3BwOgorICAgICAgICAoV2Vi
S2l0OjpXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb1N0ZXApOiBUYWtlIHJlZmVyZW5jZSBp
bnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJLaXQ6OldlYkVkaXRvckNsaWVudDo6
cmVnaXN0ZXJSZWRvU3RlcCk6IERpdHRvLgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViRWRpdG9yQ2xpZW50Lmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZQorCisgICAgICAg
ICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHA6Cisg
ICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGlj
eUZvck5ld1dpbmRvd0FjdGlvbik6CisgICAgICAgIFVwZGF0ZWQgZm9yIGNoYW5nZSB0byBGcmFt
ZUxvYWRlckNsaWVudC4KKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRp
c3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbik6IERpdHRvLgorICAgICAgICAo
V2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50
KTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aFdpbGxTdWJtaXRGb3JtKTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVy
Q2xpZW50OjpjcmVhdGVGcmFtZSk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxv
YWRlckNsaWVudDo6Y3JlYXRlUGx1Z2luKTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkZy
YW1lTG9hZGVyQ2xpZW50OjpyZWNyZWF0ZVBsdWdpbik6IERpdHRvLgorICAgICAgICAoV2ViS2l0
OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlSmF2YUFwcGxldFdpZGdldCk6IERpdHRvLgor
ICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlTmV0d29ya2luZ0Nv
bnRleHQpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRp
ZFJlcXVlc3RBdXRvY29tcGxldGUpOiBEaXR0by4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4K
KworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdl
YktpdDo6V2ViUGFnZTo6V2ViUGFnZSk6IFBhc3MgcmVmZXJlbmNlLgorICAgICAgICAoV2ViS2l0
OjpXZWJQYWdlOjpjcmVhdGVQbHVnaW4pOiBSZXR1cm4gUmVmUHRyIGluc3RlYWQgb2YgUGFzc1Jl
ZlB0ci4KKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6ZnJvbUNvcmVQYWdlKTogVXBkYXRlZCBm
b3IgY2hhbmdlIHRvIFdlYkNocm9tZUNsaWVudC4KKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6
c2V0SGVhZGVyUGFnZUJhbm5lcik6IFRha2UgcG9pbnRlciBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIu
CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnNldEZvb3RlclBhZ2VCYW5uZXIpOiBEaXR0by4K
KyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6c2V0QWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVu
ZXIpOiBUYWtlIFJlZiYmIGluc3RlYWQgb2YKKyAgICAgICAgUGFzc1JlZlB0ci4KKyAgICAgICAg
KFdlYktpdDo6V2ViUGFnZTo6Y3VycmVudFNlbGVjdGlvbkFzUmFuZ2UpOiBSZXR1cm4gUmVmUHRy
IGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6cmFuZ2VG
cm9tRWRpdGluZ1JhbmdlKTogRGl0dG8uCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlBhZ2UuaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9X
ZWJQYWdlL2VmbC9XZWJQYWdlRWZsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6Y2Fj
aGVkUmVzcG9uc2VEYXRhRm9yVVJMKTogUmV0dXJuIFJlZlB0ciBpbnN0ZWFkIG9mIFBhc3NSZWZQ
dHIuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvZ3RrL1dlYlBhZ2VHdGsuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpjYWNoZWRSZXNwb25zZURhdGFGb3JVUkwpOiBSZXR1
cm4gUmVmUHRyIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKworICAgICAgICAqIFdlYlByb2Nlc3Mv
V2ViUGFnZS9tYWMvV2ViUGFnZU1hYy5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6Y2Fj
aGVkUmVzcG9uc2VEYXRhRm9yVVJMKTogUmV0dXJuIFJlZlB0ciBpbnN0ZWFkIG9mIFBhc3NSZWZQ
dHIuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnNldFRvcE92ZXJoYW5nSW1hZ2UpOiBUYWtl
IHJhdyBwb2ludGVyIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYktpdDo6V2Vi
UGFnZTo6c2V0Qm90dG9tT3ZlcmhhbmdJbWFnZSk6IERpdHRvLgorCisgICAgICAgICogV2ViUHJv
Y2Vzcy9XZWJQcm9jZXNzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzczo6V2ViUHJv
Y2Vzcyk6IFBhc3MgYSByZWZlcmVuY2UuIE1vdmUgbW9zdCBpbml0aWFsaXphdGlvbiB0bworICAg
ICAgICB0aGUgY2xhc3MgZGVmaW5pdGlvbi4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlByb2Nl
c3MuaDogVXBkYWVkIGZvciB0aGUgYWJvdmUuCisKIDIwMTctMDEtMTQgIFRpbSBIb3J0b24gIDx0
aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIHVudXNlZCBXS1ZpZXcg
aW5pdGlhbGl6ZXIgcGFyYW1ldGVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9j
dW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAppbmRleCA3YWYyNjA4
YzA5NmIyODc5M2Y2M2IyZDFiN2QzOTViNzliNDRmNzljLi4xODllZjFjMTZmMDAxMTRmYmY0N2Ey
NjEzM2JmYzZlZGMwNWRlMTgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1l
bnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKQEAgLTMxNDEsNyAr
MzE0MSw3IEBAIHZvaWQgRG9jdW1lbnQ6OnByb2Nlc3NIdHRwRXF1aXYoY29uc3QgU3RyaW5nJiBl
cXVpdiwgY29uc3QgU3RyaW5nJiBjb250ZW50LCBib29sCiAgICAgICAgICAgICBlbHNlCiAgICAg
ICAgICAgICAgICAgY29tcGxldGVkVVJMID0gY29tcGxldGVVUkwodXJsU3RyaW5nKTsKICAgICAg
ICAgICAgIGlmICghcHJvdG9jb2xJc0phdmFTY3JpcHQoY29tcGxldGVkVVJMKSkKLSAgICAgICAg
ICAgICAgICBmcmFtZS0+bmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlUmVkaXJlY3QodGhp
cywgZGVsYXksIGNvbXBsZXRlZFVSTCk7CisgICAgICAgICAgICAgICAgZnJhbWUtPm5hdmlnYXRp
b25TY2hlZHVsZXIoKS5zY2hlZHVsZVJlZGlyZWN0KCp0aGlzLCBkZWxheSwgY29tcGxldGVkVVJM
KTsKICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgIFN0cmluZyBtZXNzYWdlID0g
IlJlZnVzZWQgdG8gcmVmcmVzaCAiICsgbV91cmwuc3RyaW5nQ2VudGVyRWxsaXBzaXplZFRvTGVu
Z3RoKCkgKyAiIHRvIGEgamF2YXNjcmlwdDogVVJMIjsKICAgICAgICAgICAgICAgICBhZGRDb25z
b2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpTZWN1cml0eSwgTWVzc2FnZUxldmVsOjpFcnJvciwg
bWVzc2FnZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0NvbXBvc2l0ZUVk
aXRDb21tYW5kLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1h
bmQuY3BwCmluZGV4IGNjZTljYWFlYzFhMDFlZTlmNDhiM2FkYTU4MmFmYTJhNzExYzYxODAuLmY3
ZmQ0ODQ4YjdlODM2M2UxZDliMDFlYTM5Nzc4YWJiNWJjOGQ0ODUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuY3BwCkBAIC0yMzksNyArMjM5LDcg
QEAgdm9pZCBFZGl0Q29tbWFuZENvbXBvc2l0aW9uOjp1bmFwcGx5KCkKICAgICBmb3IgKHNpemVf
dCBpID0gc2l6ZTsgaTsgLS1pKQogICAgICAgICBtX2NvbW1hbmRzW2kgLSAxXS0+ZG9VbmFwcGx5
KCk7CiAKLSAgICBmcmFtZS0+ZWRpdG9yKCkudW5hcHBsaWVkRWRpdGluZyh0aGlzKTsKKyAgICBm
cmFtZS0+ZWRpdG9yKCkudW5hcHBsaWVkRWRpdGluZygqdGhpcyk7CiAKICAgICBpZiAoQVhPYmpl
Y3RDYWNoZTo6YWNjZXNzaWJpbGl0eUVuYWJsZWQoKSkKICAgICAgICAgbV9yZXBsYWNlZFRleHQu
cG9zdFRleHRTdGF0ZUNoYW5nZU5vdGlmaWNhdGlvbkZvclVuYXBwbHkobV9kb2N1bWVudC0+ZXhp
c3RpbmdBWE9iamVjdENhY2hlKCkpOwpAQCAtMjY1LDcgKzI2NSw3IEBAIHZvaWQgRWRpdENvbW1h
bmRDb21wb3NpdGlvbjo6cmVhcHBseSgpCiAgICAgZm9yIChhdXRvJiBjb21tYW5kIDogbV9jb21t
YW5kcykKICAgICAgICAgY29tbWFuZC0+ZG9SZWFwcGx5KCk7CiAKLSAgICBmcmFtZS0+ZWRpdG9y
KCkucmVhcHBsaWVkRWRpdGluZyh0aGlzKTsKKyAgICBmcmFtZS0+ZWRpdG9yKCkucmVhcHBsaWVk
RWRpdGluZygqdGhpcyk7CiAKICAgICBpZiAoQVhPYmplY3RDYWNoZTo6YWNjZXNzaWJpbGl0eUVu
YWJsZWQoKSkKICAgICAgICAgbV9yZXBsYWNlZFRleHQucG9zdFRleHRTdGF0ZUNoYW5nZU5vdGlm
aWNhdGlvbkZvclJlYXBwbHkobV9kb2N1bWVudC0+ZXhpc3RpbmdBWE9iamVjdENhY2hlKCkpOwpA
QCAtNDE2LDE0ICs0MTYsMTQgQEAgRWRpdENvbW1hbmRDb21wb3NpdGlvbiogQ29tcG9zaXRlRWRp
dENvbW1hbmQ6OmNvbXBvc2l0aW9uKCkgY29uc3QKICAgICByZXR1cm4gbnVsbHB0cjsKIH0KIAot
RWRpdENvbW1hbmRDb21wb3NpdGlvbiogQ29tcG9zaXRlRWRpdENvbW1hbmQ6OmVuc3VyZUNvbXBv
c2l0aW9uKCkKK0VkaXRDb21tYW5kQ29tcG9zaXRpb24mIENvbXBvc2l0ZUVkaXRDb21tYW5kOjpl
bnN1cmVDb21wb3NpdGlvbigpCiB7Ci0gICAgQ29tcG9zaXRlRWRpdENvbW1hbmQqIGNvbW1hbmQg
PSB0aGlzOwotICAgIHdoaWxlIChjb21tYW5kICYmIGNvbW1hbmQtPnBhcmVudCgpKQotICAgICAg
ICBjb21tYW5kID0gY29tbWFuZC0+cGFyZW50KCk7CisgICAgYXV0byogY29tbWFuZCA9IHRoaXM7
CisgICAgd2hpbGUgKGF1dG8qIHBhcmVudCA9IGNvbW1hbmQtPnBhcmVudCgpKQorICAgICAgICBj
b21tYW5kID0gcGFyZW50OwogICAgIGlmICghY29tbWFuZC0+bV9jb21wb3NpdGlvbikKICAgICAg
ICAgY29tbWFuZC0+bV9jb21wb3NpdGlvbiA9IEVkaXRDb21tYW5kQ29tcG9zaXRpb246OmNyZWF0
ZShkb2N1bWVudCgpLCBzdGFydGluZ1NlbGVjdGlvbigpLCBlbmRpbmdTZWxlY3Rpb24oKSwgZWRp
dGluZ0FjdGlvbigpKTsKLSAgICByZXR1cm4gY29tbWFuZC0+bV9jb21wb3NpdGlvbi5nZXQoKTsK
KyAgICByZXR1cm4gKmNvbW1hbmQtPm1fY29tcG9zaXRpb247CiB9CiAKIGJvb2wgQ29tcG9zaXRl
RWRpdENvbW1hbmQ6OmlzQ3JlYXRlTGlua0NvbW1hbmQoKSBjb25zdApAQCAtNDY1LDcgKzQ2NSw3
IEBAIHZvaWQgQ29tcG9zaXRlRWRpdENvbW1hbmQ6OmFwcGx5Q29tbWFuZFRvQ29tcG9zaXRlKFBh
c3NSZWZQdHI8RWRpdENvbW1hbmQ+IHBycENvCiAgICAgY29tbWFuZC0+ZG9BcHBseSgpOwogICAg
IGlmIChjb21tYW5kLT5pc1NpbXBsZUVkaXRDb21tYW5kKCkpIHsKICAgICAgICAgY29tbWFuZC0+
c2V0UGFyZW50KG51bGxwdHIpOwotICAgICAgICBlbnN1cmVDb21wb3NpdGlvbigpLT5hcHBlbmQo
dG9TaW1wbGVFZGl0Q29tbWFuZChjb21tYW5kLmdldCgpKSk7CisgICAgICAgIGVuc3VyZUNvbXBv
c2l0aW9uKCkuYXBwZW5kKHRvU2ltcGxlRWRpdENvbW1hbmQoY29tbWFuZC5nZXQoKSkpOwogICAg
IH0KICAgICBtX2NvbW1hbmRzLmFwcGVuZChXVEZNb3ZlKGNvbW1hbmQpKTsKIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuaCBiL1NvdXJj
ZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuaAppbmRleCA4NWY0MThmN2Ri
OTE3Y2NmMDE0OGE2Zjc0ZWJjMzhiZWIwNTAzOWIxLi4wMjIxZGM5OTljY2ZlNmZjNTliMTgxYTlm
Zjc4MDk5YjZlMzVmM2I3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0NvbXBv
c2l0ZUVkaXRDb21tYW5kLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9Db21wb3NpdGVF
ZGl0Q29tbWFuZC5oCkBAIC0xMDUsNyArMTA1LDcgQEAgcHVibGljOgogICAgIHZvaWQgYXBwbHko
KTsKICAgICBib29sIGlzRmlyc3RDb21tYW5kKEVkaXRDb21tYW5kKiBjb21tYW5kKSB7IHJldHVy
biAhbV9jb21tYW5kcy5pc0VtcHR5KCkgJiYgbV9jb21tYW5kcy5maXJzdCgpID09IGNvbW1hbmQ7
IH0KICAgICBFZGl0Q29tbWFuZENvbXBvc2l0aW9uKiBjb21wb3NpdGlvbigpIGNvbnN0OwotICAg
IEVkaXRDb21tYW5kQ29tcG9zaXRpb24qIGVuc3VyZUNvbXBvc2l0aW9uKCk7CisgICAgRWRpdENv
bW1hbmRDb21wb3NpdGlvbiYgZW5zdXJlQ29tcG9zaXRpb24oKTsKIAogICAgIHZpcnR1YWwgYm9v
bCBpc0NyZWF0ZUxpbmtDb21tYW5kKCkgY29uc3Q7CiAgICAgdmlydHVhbCBib29sIGlzVHlwaW5n
Q29tbWFuZCgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0
b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCmluZGV4IDA4ZTUzOTE1
Nzc4OGZiNTcxNWZhZWQ5YmNlYzVkNWZlNDNjMTI1ODIuLmZhYzZlNjU1ZjZlYTI1MzkwOWU2YmUw
ZGU0ZTk0MjQ4Y2E4MGE0Y2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRp
dG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5jcHAKQEAgLTk5Niwy
MyArOTk2LDIzIEBAIGJvb2wgRWRpdG9yOjp3aWxsVW5hcHBseUVkaXRpbmcoY29uc3QgRWRpdENv
bW1hbmRDb21wb3NpdGlvbiYgY29tcG9zaXRpb24pIGNvbnN0CiAgICAgcmV0dXJuIGRpc3BhdGNo
QmVmb3JlSW5wdXRFdmVudHMoY29tcG9zaXRpb24uc3RhcnRpbmdSb290RWRpdGFibGVFbGVtZW50
KCksIGNvbXBvc2l0aW9uLmVuZGluZ1Jvb3RFZGl0YWJsZUVsZW1lbnQoKSwgImhpc3RvcnlVbmRv
Iik7CiB9CiAKLXZvaWQgRWRpdG9yOjp1bmFwcGxpZWRFZGl0aW5nKFBhc3NSZWZQdHI8RWRpdENv
bW1hbmRDb21wb3NpdGlvbj4gY21kKQordm9pZCBFZGl0b3I6OnVuYXBwbGllZEVkaXRpbmcoRWRp
dENvbW1hbmRDb21wb3NpdGlvbiYgY29tcG9zaXRpb24pCiB7CiAgICAgZG9jdW1lbnQoKS51cGRh
dGVMYXlvdXQoKTsKIAotICAgIG5vdGlmeVRleHRGcm9tQ29udHJvbHMoY21kLT5zdGFydGluZ1Jv
b3RFZGl0YWJsZUVsZW1lbnQoKSwgY21kLT5lbmRpbmdSb290RWRpdGFibGVFbGVtZW50KCkpOwor
ICAgIG5vdGlmeVRleHRGcm9tQ29udHJvbHMoY29tcG9zaXRpb24uc3RhcnRpbmdSb290RWRpdGFi
bGVFbGVtZW50KCksIGNvbXBvc2l0aW9uLmVuZGluZ1Jvb3RFZGl0YWJsZUVsZW1lbnQoKSk7CiAK
LSAgICBWaXNpYmxlU2VsZWN0aW9uIG5ld1NlbGVjdGlvbihjbWQtPnN0YXJ0aW5nU2VsZWN0aW9u
KCkpOworICAgIFZpc2libGVTZWxlY3Rpb24gbmV3U2VsZWN0aW9uKGNvbXBvc2l0aW9uLnN0YXJ0
aW5nU2VsZWN0aW9uKCkpOwogICAgIGNoYW5nZVNlbGVjdGlvbkFmdGVyQ29tbWFuZChuZXdTZWxl
Y3Rpb24sIEZyYW1lU2VsZWN0aW9uOjpkZWZhdWx0U2V0U2VsZWN0aW9uT3B0aW9ucygpKTsKLSAg
ICBkaXNwYXRjaElucHV0RXZlbnRzKGNtZC0+c3RhcnRpbmdSb290RWRpdGFibGVFbGVtZW50KCks
IGNtZC0+ZW5kaW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCAiaGlzdG9yeVVuZG8iKTsKKyAgICBk
aXNwYXRjaElucHV0RXZlbnRzKGNvbXBvc2l0aW9uLnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVu
dCgpLCBjb21wb3NpdGlvbi5lbmRpbmdSb290RWRpdGFibGVFbGVtZW50KCksICJoaXN0b3J5VW5k
byIpOwogCiAgICAgdXBkYXRlRWRpdG9yVUlOb3dJZlNjaGVkdWxlZCgpOwogCi0gICAgbV9hbHRl
cm5hdGl2ZVRleHRDb250cm9sbGVyLT5yZXNwb25kVG9VbmFwcGxpZWRFZGl0aW5nKGNtZC5nZXQo
KSk7CisgICAgbV9hbHRlcm5hdGl2ZVRleHRDb250cm9sbGVyLT5yZXNwb25kVG9VbmFwcGxpZWRF
ZGl0aW5nKCZjb21wb3NpdGlvbik7CiAKICAgICBtX2xhc3RFZGl0Q29tbWFuZCA9IG51bGxwdHI7
Ci0gICAgaWYgKGNsaWVudCgpKQotICAgICAgICBjbGllbnQoKS0+cmVnaXN0ZXJSZWRvU3RlcChj
bWQpOworICAgIGlmIChhdXRvKiBjbGllbnQgPSB0aGlzLT5jbGllbnQoKSkKKyAgICAgICAgY2xp
ZW50LT5yZWdpc3RlclJlZG9TdGVwKGNvbXBvc2l0aW9uKTsKICAgICByZXNwb25kVG9DaGFuZ2Vk
Q29udGVudHMobmV3U2VsZWN0aW9uKTsKIH0KIApAQCAtMTAyMSwyMSArMTAyMSwyMSBAQCBib29s
IEVkaXRvcjo6d2lsbFJlYXBwbHlFZGl0aW5nKGNvbnN0IEVkaXRDb21tYW5kQ29tcG9zaXRpb24m
IGNvbXBvc2l0aW9uKSBjb25zdAogICAgIHJldHVybiBkaXNwYXRjaEJlZm9yZUlucHV0RXZlbnRz
KGNvbXBvc2l0aW9uLnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCBjb21wb3NpdGlvbi5l
bmRpbmdSb290RWRpdGFibGVFbGVtZW50KCksICJoaXN0b3J5UmVkbyIpOwogfQogCi12b2lkIEVk
aXRvcjo6cmVhcHBsaWVkRWRpdGluZyhQYXNzUmVmUHRyPEVkaXRDb21tYW5kQ29tcG9zaXRpb24+
IGNtZCkKK3ZvaWQgRWRpdG9yOjpyZWFwcGxpZWRFZGl0aW5nKEVkaXRDb21tYW5kQ29tcG9zaXRp
b24mIGNvbXBvc2l0aW9uKQogewogICAgIGRvY3VtZW50KCkudXBkYXRlTGF5b3V0KCk7CiAKLSAg
ICBub3RpZnlUZXh0RnJvbUNvbnRyb2xzKGNtZC0+c3RhcnRpbmdSb290RWRpdGFibGVFbGVtZW50
KCksIGNtZC0+ZW5kaW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpKTsKKyAgICBub3RpZnlUZXh0RnJv
bUNvbnRyb2xzKGNvbXBvc2l0aW9uLnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCBjb21w
b3NpdGlvbi5lbmRpbmdSb290RWRpdGFibGVFbGVtZW50KCkpOwogCi0gICAgVmlzaWJsZVNlbGVj
dGlvbiBuZXdTZWxlY3Rpb24oY21kLT5lbmRpbmdTZWxlY3Rpb24oKSk7CisgICAgVmlzaWJsZVNl
bGVjdGlvbiBuZXdTZWxlY3Rpb24oY29tcG9zaXRpb24uZW5kaW5nU2VsZWN0aW9uKCkpOwogICAg
IGNoYW5nZVNlbGVjdGlvbkFmdGVyQ29tbWFuZChuZXdTZWxlY3Rpb24sIEZyYW1lU2VsZWN0aW9u
OjpkZWZhdWx0U2V0U2VsZWN0aW9uT3B0aW9ucygpKTsKLSAgICBkaXNwYXRjaElucHV0RXZlbnRz
KGNtZC0+c3RhcnRpbmdSb290RWRpdGFibGVFbGVtZW50KCksIGNtZC0+ZW5kaW5nUm9vdEVkaXRh
YmxlRWxlbWVudCgpLCAiaGlzdG9yeVJlZG8iKTsKKyAgICBkaXNwYXRjaElucHV0RXZlbnRzKGNv
bXBvc2l0aW9uLnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCBjb21wb3NpdGlvbi5lbmRp
bmdSb290RWRpdGFibGVFbGVtZW50KCksICJoaXN0b3J5UmVkbyIpOwogICAgIAogICAgIHVwZGF0
ZUVkaXRvclVJTm93SWZTY2hlZHVsZWQoKTsKIAogICAgIG1fbGFzdEVkaXRDb21tYW5kID0gbnVs
bHB0cjsKLSAgICBpZiAoY2xpZW50KCkpCi0gICAgICAgIGNsaWVudCgpLT5yZWdpc3RlclVuZG9T
dGVwKGNtZCk7CisgICAgaWYgKGF1dG8qIGNsaWVudCA9IHRoaXMtPmNsaWVudCgpKQorICAgICAg
ICBjbGllbnQtPnJlZ2lzdGVyVW5kb1N0ZXAoY29tcG9zaXRpb24pOwogICAgIHJlc3BvbmRUb0No
YW5nZWRDb250ZW50cyhuZXdTZWxlY3Rpb24pOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9lZGl0aW5nL0VkaXRvci5oIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuaApp
bmRleCA1NjdjNjViNjQ5MzUxMjdmNjc4ZTczOWM4MDAwODRhYTYzYzdiNTY2Li44MzRmMzFhMGNi
NzFhN2Q5YmI5MjUyMmM1Y2UxNGM0NTk3ZjkxMWM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9lZGl0aW5nL0VkaXRvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmgK
QEAgLTk5LDEwICs5OSwxMiBAQCBlbnVtIGNsYXNzIE1haWxCbG9ja3F1b3RlSGFuZGxpbmcgewog
fTsKIAogI2lmIFBMQVRGT1JNKENPQ09BKQorCiBzdHJ1Y3QgRnJhZ21lbnRBbmRSZXNvdXJjZXMg
ewogICAgIFJlZlB0cjxEb2N1bWVudEZyYWdtZW50PiBmcmFnbWVudDsKLSAgICBWZWN0b3I8UmVm
UHRyPEFyY2hpdmVSZXNvdXJjZT4+IHJlc291cmNlczsKKyAgICBWZWN0b3I8UmVmPEFyY2hpdmVS
ZXNvdXJjZT4+IHJlc291cmNlczsKIH07CisKICNlbmRpZgogCiBjbGFzcyBFZGl0b3IgewpAQCAt
MjA2LDggKzIwOCw4IEBAIHB1YmxpYzoKICAgICBib29sIHdpbGxSZWFwcGx5RWRpdGluZyhjb25z
dCBFZGl0Q29tbWFuZENvbXBvc2l0aW9uJikgY29uc3Q7CiAKICAgICB2b2lkIGFwcGxpZWRFZGl0
aW5nKFBhc3NSZWZQdHI8Q29tcG9zaXRlRWRpdENvbW1hbmQ+KTsKLSAgICB2b2lkIHVuYXBwbGll
ZEVkaXRpbmcoUGFzc1JlZlB0cjxFZGl0Q29tbWFuZENvbXBvc2l0aW9uPik7Ci0gICAgdm9pZCBy
ZWFwcGxpZWRFZGl0aW5nKFBhc3NSZWZQdHI8RWRpdENvbW1hbmRDb21wb3NpdGlvbj4pOworICAg
IHZvaWQgdW5hcHBsaWVkRWRpdGluZyhFZGl0Q29tbWFuZENvbXBvc2l0aW9uJik7CisgICAgdm9p
ZCByZWFwcGxpZWRFZGl0aW5nKEVkaXRDb21tYW5kQ29tcG9zaXRpb24mKTsKICAgICB2b2lkIHVu
YXBwbGllZFNwZWxsQ29ycmVjdGlvbihjb25zdCBWaXNpYmxlU2VsZWN0aW9uJiBzZWxlY3Rpb25P
ZkNvcnJlY3RlZCwgY29uc3QgU3RyaW5nJiBjb3JyZWN0ZWQsIGNvbnN0IFN0cmluZyYgY29ycmVj
dGlvbik7CiAKICAgICAvLyBUaGlzIGlzIG9mZiBieSBkZWZhdWx0LCBzaW5jZSBtb3N0IGVkaXRv
cnMgd2FudCB0aGlzIGJlaGF2aW9yIChvcmlnaW5hbGx5IG1hdGNoZWQgSUUgYnV0IG5vdCBGaXJl
Zm94KS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvaW9zL0VkaXRvcklPUy5t
bSBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvaW9zL0VkaXRvcklPUy5tbQppbmRleCAzYWU3MTU0
NDI4NTkyN2M3YmVlMmIwZTY4Y2NlYWNkYzhlNjhiMGQ4Li4wODlkMjY2MGU0MzRmYzI2OTkwNTc4
NDA1YzUxMDcxNmRhYWNkNjdjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2lv
cy9FZGl0b3JJT1MubW0KKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9pb3MvRWRpdG9ySU9T
Lm1tCkBAIC0yOTAsMjcgKzI5MCwyNSBAQCBib29sIEVkaXRvcjo6V2ViQ29udGVudFJlYWRlcjo6
cmVhZFdlYkFyY2hpdmUoU2hhcmVkQnVmZmVyKiBidWZmZXIpCiAgICAgaWYgKCFidWZmZXIpCiAg
ICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBhcmNo
aXZlID0gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFVSTCgpLCAqYnVmZmVyKTsKKyAgICBhdXRv
IGFyY2hpdmUgPSBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoVVJMKCksICpidWZmZXIpOwogICAg
IGlmICghYXJjaGl2ZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgUmVmUHRyPEFyY2hp
dmVSZXNvdXJjZT4gbWFpblJlc291cmNlID0gYXJjaGl2ZS0+bWFpblJlc291cmNlKCk7CisgICAg
YXV0byogbWFpblJlc291cmNlID0gYXJjaGl2ZS0+bWFpblJlc291cmNlKCk7CiAgICAgaWYgKCFt
YWluUmVzb3VyY2UpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIGNvbnN0IFN0cmluZyYg
dHlwZSA9IG1haW5SZXNvdXJjZS0+bWltZVR5cGUoKTsKLQotICAgIGlmIChmcmFtZS5sb2FkZXIo
KS5jbGllbnQoKS5jYW5TaG93TUlNRVR5cGVBc0hUTUwodHlwZSkpIHsKLSAgICAgICAgLy8gRklY
TUU6IFRoZSBjb2RlIGluIGNyZWF0ZUZyYWdtZW50QW5kQWRkUmVzb3VyY2VzIGNhbGxzIHNldERl
ZmVyc0xvYWRpbmcodHJ1ZSkuIERvbid0IHdlIG5lZWQgdGhhdCBoZXJlPwotICAgICAgICBpZiAo
RG9jdW1lbnRMb2FkZXIqIGxvYWRlciA9IGZyYW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkp
Ci0gICAgICAgICAgICBsb2FkZXItPmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoYXJjaGl2ZS5nZXQo
KSk7CisgICAgYXV0byYgdHlwZSA9IG1haW5SZXNvdXJjZS0+bWltZVR5cGUoKTsKKyAgICBpZiAo
IWZyYW1lLmxvYWRlcigpLmNsaWVudCgpLmNhblNob3dNSU1FVHlwZUFzSFRNTCh0eXBlKSkKKyAg
ICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgICAgIFN0cmluZyBtYXJrdXBTdHJpbmcgPSBTdHJp
bmc6OmZyb21VVEY4KG1haW5SZXNvdXJjZS0+ZGF0YSgpLmRhdGEoKSwgbWFpblJlc291cmNlLT5k
YXRhKCkuc2l6ZSgpKTsKLSAgICAgICAgYWRkRnJhZ21lbnQoY3JlYXRlRnJhZ21lbnRGcm9tTWFy
a3VwKCpmcmFtZS5kb2N1bWVudCgpLCBtYXJrdXBTdHJpbmcsIG1haW5SZXNvdXJjZS0+dXJsKCks
IERpc2FsbG93U2NyaXB0aW5nQW5kUGx1Z2luQ29udGVudCkpOwotICAgICAgICByZXR1cm4gdHJ1
ZTsKLSAgICB9CisgICAgLy8gRklYTUU6IFRoZSBjb2RlIGluIGNyZWF0ZUZyYWdtZW50QW5kQWRk
UmVzb3VyY2VzIGNhbGxzIHNldERlZmVyc0xvYWRpbmcodHJ1ZSkuIERvbid0IHdlIG5lZWQgdGhh
dCBoZXJlPworICAgIGlmIChhdXRvKiBsb2FkZXIgPSBmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExv
YWRlcigpKQorICAgICAgICBsb2FkZXItPmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoKmFyY2hpdmUp
OwogCi0gICAgcmV0dXJuIGZhbHNlOworICAgIGF1dG8gbWFya3VwU3RyaW5nID0gU3RyaW5nOjpm
cm9tVVRGOChtYWluUmVzb3VyY2UtPmRhdGEoKS5kYXRhKCksIG1haW5SZXNvdXJjZS0+ZGF0YSgp
LnNpemUoKSk7CisgICAgYWRkRnJhZ21lbnQoY3JlYXRlRnJhZ21lbnRGcm9tTWFya3VwKCpmcmFt
ZS5kb2N1bWVudCgpLCBtYXJrdXBTdHJpbmcsIG1haW5SZXNvdXJjZS0+dXJsKCksIERpc2FsbG93
U2NyaXB0aW5nQW5kUGx1Z2luQ29udGVudCkpOworICAgIHJldHVybiB0cnVlOwogfQogCiBib29s
IEVkaXRvcjo6V2ViQ29udGVudFJlYWRlcjo6cmVhZEZpbGVuYW1lcyhjb25zdCBWZWN0b3I8U3Ry
aW5nPiYpCkBAIC00NTQsMTEgKzQ1Miw5IEBAIFJlZlB0cjxEb2N1bWVudEZyYWdtZW50PiBFZGl0
b3I6OmNyZWF0ZUZyYWdtZW50QW5kQWRkUmVzb3VyY2VzKE5TQXR0cmlidXRlZFN0cmluCiAKICAg
ICBhdXRvIGZyYWdtZW50QW5kUmVzb3VyY2VzID0gY3JlYXRlRnJhZ21lbnQoc3RyaW5nKTsKIAot
ICAgIGlmIChEb2N1bWVudExvYWRlciogbG9hZGVyID0gbV9mcmFtZS5sb2FkZXIoKS5kb2N1bWVu
dExvYWRlcigpKSB7Ci0gICAgICAgIGZvciAoYXV0byYgcmVzb3VyY2UgOiBmcmFnbWVudEFuZFJl
c291cmNlcy5yZXNvdXJjZXMpIHsKLSAgICAgICAgICAgIGlmIChyZXNvdXJjZSkKLSAgICAgICAg
ICAgICAgICBsb2FkZXItPmFkZEFyY2hpdmVSZXNvdXJjZShyZXNvdXJjZS5yZWxlYXNlTm9uTnVs
bCgpKTsKLSAgICAgICAgfQorICAgIGlmIChhdXRvKiBsb2FkZXIgPSBtX2ZyYW1lLmxvYWRlcigp
LmRvY3VtZW50TG9hZGVyKCkpIHsKKyAgICAgICAgZm9yIChhdXRvJiByZXNvdXJjZSA6IGZyYWdt
ZW50QW5kUmVzb3VyY2VzLnJlc291cmNlcykKKyAgICAgICAgICAgIGxvYWRlci0+YWRkQXJjaGl2
ZVJlc291cmNlKFdURk1vdmUocmVzb3VyY2UpKTsKICAgICB9CiAKICAgICBpZiAod2FzSW1hZ2Vz
RW5hYmxlZCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvbWFjL0VkaXRvck1h
Yy5tbSBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvbWFjL0VkaXRvck1hYy5tbQppbmRleCA3YWI5
ZmY3ZGMwNGRmYmM2ODYwZGFiMTExOTBhNjk3Zjk2NDc3ZGNmLi44ZmU5OTRkZjBiMjYxMTA0MmVk
YmQ4N2U5MmExYmZmYmQ1NzUwNzI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5n
L21hYy9FZGl0b3JNYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9tYWMvRWRpdG9y
TWFjLm1tCkBAIC00MDYsNyArNDA2LDcgQEAgYm9vbCBFZGl0b3I6OldlYkNvbnRlbnRSZWFkZXI6
OnJlYWRXZWJBcmNoaXZlKFNoYXJlZEJ1ZmZlciogYnVmZmVyKQogICAgIGlmICghYnVmZmVyKQog
ICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAgICBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gYXJj
aGl2ZSA9IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShVUkwoKSwgKmJ1ZmZlcik7CisgICAgYXV0
byBhcmNoaXZlID0gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFVSTCgpLCAqYnVmZmVyKTsKICAg
ICBpZiAoIWFyY2hpdmUpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIApAQCAtNDE5LDcgKzQxOSw3
IEBAIGJvb2wgRWRpdG9yOjpXZWJDb250ZW50UmVhZGVyOjpyZWFkV2ViQXJjaGl2ZShTaGFyZWRC
dWZmZXIqIGJ1ZmZlcikKICAgICBpZiAoZnJhbWUubG9hZGVyKCkuY2xpZW50KCkuY2FuU2hvd01J
TUVUeXBlQXNIVE1MKHR5cGUpKSB7CiAgICAgICAgIC8vIEZJWE1FOiBUaGUgY29kZSBpbiBjcmVh
dGVGcmFnbWVudEFuZEFkZFJlc291cmNlcyBjYWxscyBzZXREZWZlcnNMb2FkaW5nKHRydWUpLiBE
b24ndCB3ZSBuZWVkIHRoYXQgaGVyZT8KICAgICAgICAgaWYgKERvY3VtZW50TG9hZGVyKiBsb2Fk
ZXIgPSBmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKQotICAgICAgICAgICAgbG9hZGVy
LT5hZGRBbGxBcmNoaXZlUmVzb3VyY2VzKGFyY2hpdmUuZ2V0KCkpOworICAgICAgICAgICAgbG9h
ZGVyLT5hZGRBbGxBcmNoaXZlUmVzb3VyY2VzKCphcmNoaXZlKTsKIAogICAgICAgICBTdHJpbmcg
bWFya3VwU3RyaW5nID0gU3RyaW5nOjpmcm9tVVRGOChtYWluUmVzb3VyY2UtPmRhdGEoKS5kYXRh
KCksIG1haW5SZXNvdXJjZS0+ZGF0YSgpLnNpemUoKSk7CiAgICAgICAgIGZyYWdtZW50ID0gY3Jl
YXRlRnJhZ21lbnRGcm9tTWFya3VwKCpmcmFtZS5kb2N1bWVudCgpLCBtYXJrdXBTdHJpbmcsIG1h
aW5SZXNvdXJjZS0+dXJsKCksIERpc2FsbG93U2NyaXB0aW5nQW5kUGx1Z2luQ29udGVudCk7CkBA
IC01ODAsMTEgKzU4MCw5IEBAIFJlZlB0cjxEb2N1bWVudEZyYWdtZW50PiBFZGl0b3I6OmNyZWF0
ZUZyYWdtZW50QW5kQWRkUmVzb3VyY2VzKE5TQXR0cmlidXRlZFN0cmluCiAKICAgICBhdXRvIGZy
YWdtZW50QW5kUmVzb3VyY2VzID0gY3JlYXRlRnJhZ21lbnQoc3RyaW5nKTsKIAotICAgIGlmIChE
b2N1bWVudExvYWRlciogbG9hZGVyID0gbV9mcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigp
KSB7Ci0gICAgICAgIGZvciAoYXV0byYgcmVzb3VyY2UgOiBmcmFnbWVudEFuZFJlc291cmNlcy5y
ZXNvdXJjZXMpIHsKLSAgICAgICAgICAgIGlmIChyZXNvdXJjZSkKLSAgICAgICAgICAgICAgICBs
b2FkZXItPmFkZEFyY2hpdmVSZXNvdXJjZShyZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpKTsKLSAg
ICAgICAgfQorICAgIGlmIChhdXRvKiBsb2FkZXIgPSBtX2ZyYW1lLmxvYWRlcigpLmRvY3VtZW50
TG9hZGVyKCkpIHsKKyAgICAgICAgZm9yIChhdXRvJiByZXNvdXJjZSA6IGZyYWdtZW50QW5kUmVz
b3VyY2VzLnJlc291cmNlcykKKyAgICAgICAgICAgIGxvYWRlci0+YWRkQXJjaGl2ZVJlc291cmNl
KFdURk1vdmUocmVzb3VyY2UpKTsKICAgICB9CiAKICAgICBpZiAoIXdhc0RlZmVycmluZ0NhbGxi
YWNrcykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2hpc3RvcnkvUGFnZUNhY2hlLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2hpc3RvcnkvUGFnZUNhY2hlLmNwcAppbmRleCA2ZDAwNDM3ZTE5YTVi
MDg3MmM5NDFmYmJhMzQwMjc4OTg0N2U0NGQwLi5hOGE0OWY5NDAxM2VkMmQwMmJkMjNiZTZhYjMy
ZDljN2MyZWVjYzM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9oaXN0b3J5L1BhZ2VDYWNo
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaGlzdG9yeS9QYWdlQ2FjaGUuY3BwCkBAIC0xNjQs
NyArMTY0LDcgQEAgc3RhdGljIGJvb2wgY2FuQ2FjaGVGcmFtZShGcmFtZSYgZnJhbWUsIERpYWdu
b3N0aWNMb2dnaW5nQ2xpZW50JiBkaWFnbm9zdGljTG9nZ2kKICAgICB9CiAgICAgLy8gRklYTUU6
IFdlIHNob3VsZCBpbnZlc3RpZ2F0aW5nIGNhY2hpbmcgZnJhbWVzIHRoYXQgaGF2ZSBhbiBhc3Nv
Y2lhdGVkCiAgICAgLy8gYXBwbGljYXRpb24gY2FjaGUuIDxyZGFyOi8vcHJvYmxlbS81OTE3ODk5
PiB0cmFja3MgdGhhdCB3b3JrLgotICAgIGlmICghZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9u
Q2FjaGVIb3N0KCktPmNhbkNhY2hlSW5QYWdlQ2FjaGUoKSkgeworICAgIGlmICghZG9jdW1lbnRM
b2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuY2FuQ2FjaGVJblBhZ2VDYWNoZSgpKSB7CiAg
ICAgICAgIFBDTE9HKCIgICAtVGhlIERvY3VtZW50TG9hZGVyIHVzZXMgYW4gYXBwbGljYXRpb24g
Y2FjaGUiKTsKICAgICAgICAgbG9nUGFnZUNhY2hlRmFpbHVyZURpYWdub3N0aWNNZXNzYWdlKGRp
YWdub3N0aWNMb2dnaW5nQ2xpZW50LCBEaWFnbm9zdGljTG9nZ2luZ0tleXM6OmFwcGxpY2F0aW9u
Q2FjaGVLZXkoKSk7CiAgICAgICAgIGlzQ2FjaGVhYmxlID0gZmFsc2U7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0ZpbGVJbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9GaWxlSW5wdXRUeXBlLmNwcAppbmRleCA1N2QwZGMxYzc2M2Q2N2I2YjAyMjhjODYwNTEzZDdm
MWU5YzUzNjNiLi4yOGI2YzA2NjFmNGQzMTI5YjE2NzkzZWFlNDE0YjdiYTJmN2NlYjZiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0ZpbGVJbnB1dFR5cGUuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlwZS5jcHAKQEAgLTE5MSw3ICsxOTEsNyBAQCB2b2lk
IEZpbGVJbnB1dFR5cGU6OmhhbmRsZURPTUFjdGl2YXRlRXZlbnQoRXZlbnQmIGV2ZW50KQogICAg
IGlmICghU2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkpCiAgICAgICAg
IHJldHVybjsKIAotICAgIGlmIChDaHJvbWUqIGNocm9tZSA9IHRoaXMtPmNocm9tZSgpKSB7Cisg
ICAgaWYgKGF1dG8qIGNocm9tZSA9IHRoaXMtPmNocm9tZSgpKSB7CiAgICAgICAgIEZpbGVDaG9v
c2VyU2V0dGluZ3Mgc2V0dGluZ3M7CiAgICAgICAgIEhUTUxJbnB1dEVsZW1lbnQmIGlucHV0ID0g
ZWxlbWVudCgpOwogICAgICAgICBzZXR0aW5ncy5hbGxvd3NNdWx0aXBsZUZpbGVzID0gaW5wdXQu
aGFzQXR0cmlidXRlV2l0aG91dFN5bmNocm9uaXphdGlvbihtdWx0aXBsZUF0dHIpOwpAQCAtMjAx
LDkgKzIwMSw4IEBAIHZvaWQgRmlsZUlucHV0VHlwZTo6aGFuZGxlRE9NQWN0aXZhdGVFdmVudChF
dmVudCYgZXZlbnQpCiAjaWYgRU5BQkxFKE1FRElBX0NBUFRVUkUpCiAgICAgICAgIHNldHRpbmdz
Lm1lZGlhQ2FwdHVyZVR5cGUgPSBpbnB1dC5tZWRpYUNhcHR1cmVUeXBlKCk7CiAjZW5kaWYKLQog
ICAgICAgICBhcHBseUZpbGVDaG9vc2VyU2V0dGluZ3Moc2V0dGluZ3MpOwotICAgICAgICBjaHJv
bWUtPnJ1bk9wZW5QYW5lbChpbnB1dC5kb2N1bWVudCgpLmZyYW1lKCksIG1fZmlsZUNob29zZXIp
OworICAgICAgICBjaHJvbWUtPnJ1bk9wZW5QYW5lbCgqaW5wdXQuZG9jdW1lbnQoKS5mcmFtZSgp
LCAqbV9maWxlQ2hvb3Nlcik7CiAgICAgfQogCiAgICAgZXZlbnQuc2V0RGVmYXVsdEhhbmRsZWQo
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVu
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwCmlu
ZGV4IDJlODcyYWFiYWU2NGIwNDQ4ZDIyMTRlOTYyYmIxNmY2Y2JmOTkwMTIuLmVhOGEzYjMzZTAw
Mjc4MzJkNjcwZjllMDk4N2FjY2E4ZDM2OGJhYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50LmNwcApAQCAtODksNyArODksNyBAQCB2b2lkIEhUTUxG
b3JtQ29udHJvbEVsZW1lbnQ6OnNldEZvcm1FbmN0eXBlKGNvbnN0IFN0cmluZyYgdmFsdWUpCiAK
IFN0cmluZyBIVE1MRm9ybUNvbnRyb2xFbGVtZW50Ojpmb3JtTWV0aG9kKCkgY29uc3QKIHsKLSAg
ICBjb25zdCBBdG9taWNTdHJpbmcmIGZvcm1NZXRob2RBdHRyID0gYXR0cmlidXRlV2l0aG91dFN5
bmNocm9uaXphdGlvbihmb3JtbWV0aG9kQXR0cik7CisgICAgYXV0byYgZm9ybU1ldGhvZEF0dHIg
PSBhdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKGZvcm1tZXRob2RBdHRyKTsKICAgICBp
ZiAoZm9ybU1ldGhvZEF0dHIuaXNOdWxsKCkpCiAgICAgICAgIHJldHVybiBlbXB0eVN0cmluZygp
OwogICAgIHJldHVybiBGb3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6bWV0aG9kU3RyaW5nKEZv
cm1TdWJtaXNzaW9uOjpBdHRyaWJ1dGVzOjpwYXJzZU1ldGhvZFR5cGUoZm9ybU1ldGhvZEF0dHIp
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmNwcAppbmRleCA3NDc1ZjY0ZDI2
ZGViMjU2MDk1ZWRhZDViMWMwNmVmMGVhNWQwMmQ4Li42NDBlMzNlZjNjODk0MmFiOGRkOTExODMw
ZmU2ODBmY2VjYmVlMGJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3Jt
RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3Bw
CkBAIC0yODksMTIgKzI4OSwxMSBAQCB2b2lkIEhUTUxGb3JtRWxlbWVudDo6cHJlcGFyZUZvclN1
Ym1pc3Npb24oRXZlbnQmIGV2ZW50KQogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgU3Ry
aW5nUGFpclZlY3RvciBjb250cm9sTmFtZXNBbmRWYWx1ZXM7Ci0gICAgZ2V0VGV4dEZpZWxkVmFs
dWVzKGNvbnRyb2xOYW1lc0FuZFZhbHVlcyk7Ci0gICAgYXV0byBmb3JtU3RhdGUgPSBGb3JtU3Rh
dGU6OmNyZWF0ZSh0aGlzLCBjb250cm9sTmFtZXNBbmRWYWx1ZXMsICZkb2N1bWVudCgpLCBOb3RT
dWJtaXR0ZWRCeUphdmFTY3JpcHQpOworICAgIGF1dG8gZm9ybVN0YXRlID0gRm9ybVN0YXRlOjpj
cmVhdGUoKnRoaXMsIHRleHRGaWVsZFZhbHVlcygpLCBkb2N1bWVudCgpLCBOb3RTdWJtaXR0ZWRC
eUphdmFTY3JpcHQpOwogICAgIGZyYW1lLT5sb2FkZXIoKS5jbGllbnQoKS5kaXNwYXRjaFdpbGxT
ZW5kU3VibWl0RXZlbnQoV1RGTW92ZShmb3JtU3RhdGUpKTsKIAogICAgIFJlZjxIVE1MRm9ybUVs
ZW1lbnQ+IHByb3RlY3RlZFRoaXMoKnRoaXMpOworCiAgICAgLy8gRXZlbnQgaGFuZGxpbmcgY2Fu
IHJlc3VsdCBpbiBtX3Nob3VsZFN1Ym1pdCBiZWNvbWluZyB0cnVlLCByZWdhcmRsZXNzIG9mIGRp
c3BhdGNoRXZlbnQoKSByZXR1cm4gdmFsdWUuCiAgICAgaWYgKGRpc3BhdGNoRXZlbnQoRXZlbnQ6
OmNyZWF0ZShldmVudE5hbWVzKCkuc3VibWl0RXZlbnQsIHRydWUsIHRydWUpKSkKICAgICAgICAg
bV9zaG91bGRTdWJtaXQgPSB0cnVlOwpAQCAtMzE1LDIwICszMTQsMjAgQEAgdm9pZCBIVE1MRm9y
bUVsZW1lbnQ6OnN1Ym1pdEZyb21KYXZhU2NyaXB0KCkKICAgICBzdWJtaXQoMCwgZmFsc2UsIFNj
cmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpLCBTdWJtaXR0ZWRCeUphdmFT
Y3JpcHQpOwogfQogCi12b2lkIEhUTUxGb3JtRWxlbWVudDo6Z2V0VGV4dEZpZWxkVmFsdWVzKFN0
cmluZ1BhaXJWZWN0b3ImIGZpZWxkTmFtZXNBbmRWYWx1ZXMpIGNvbnN0CitTdHJpbmdQYWlyVmVj
dG9yIEhUTUxGb3JtRWxlbWVudDo6dGV4dEZpZWxkVmFsdWVzKCkgY29uc3QKIHsKLSAgICBBU1NF
UlRfQVJHKGZpZWxkTmFtZXNBbmRWYWx1ZXMsIGZpZWxkTmFtZXNBbmRWYWx1ZXMuaXNFbXB0eSgp
KTsKLQotICAgIGZpZWxkTmFtZXNBbmRWYWx1ZXMucmVzZXJ2ZUNhcGFjaXR5KG1fYXNzb2NpYXRl
ZEVsZW1lbnRzLnNpemUoKSk7CisgICAgU3RyaW5nUGFpclZlY3RvciByZXN1bHQ7CisgICAgcmVz
dWx0LnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobV9hc3NvY2lhdGVkRWxlbWVudHMuc2l6ZSgpKTsK
ICAgICBmb3IgKGF1dG8mIGFzc29jaWF0ZWRFbGVtZW50IDogbV9hc3NvY2lhdGVkRWxlbWVudHMp
IHsKLSAgICAgICAgSFRNTEVsZW1lbnQmIGVsZW1lbnQgPSBhc3NvY2lhdGVkRWxlbWVudC0+YXNI
VE1MRWxlbWVudCgpOworICAgICAgICBhdXRvJiBlbGVtZW50ID0gYXNzb2NpYXRlZEVsZW1lbnQt
PmFzSFRNTEVsZW1lbnQoKTsKICAgICAgICAgaWYgKCFpczxIVE1MSW5wdXRFbGVtZW50PihlbGVt
ZW50KSkKICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICBIVE1MSW5wdXRFbGVtZW50JiBp
bnB1dCA9IGRvd25jYXN0PEhUTUxJbnB1dEVsZW1lbnQ+KGVsZW1lbnQpOworICAgICAgICBhdXRv
JiBpbnB1dCA9IGRvd25jYXN0PEhUTUxJbnB1dEVsZW1lbnQ+KGVsZW1lbnQpOwogICAgICAgICBp
ZiAoIWlucHV0LmlzVGV4dEZpZWxkKCkpCiAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAg
ZmllbGROYW1lc0FuZFZhbHVlcy5hcHBlbmQoc3RkOjptYWtlX3BhaXIoaW5wdXQubmFtZSgpLnN0
cmluZygpLCBpbnB1dC52YWx1ZSgpKSk7CisgICAgICAgIHJlc3VsdC51bmNoZWNrZWRBcHBlbmQo
eyBpbnB1dC5uYW1lKCkuc3RyaW5nKCksIGlucHV0LnZhbHVlKCkgfSk7CiAgICAgfQorICAgIHJl
dHVybiByZXN1bHQ7CiB9CiAKIHZvaWQgSFRNTEZvcm1FbGVtZW50OjpzdWJtaXQoRXZlbnQqIGV2
ZW50LCBib29sIGFjdGl2YXRlU3VibWl0QnV0dG9uLCBib29sIHByb2Nlc3NpbmdVc2VyR2VzdHVy
ZSwgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikKQEAgLTM2NCw5
ICszNjMsMTAgQEAgdm9pZCBIVE1MRm9ybUVsZW1lbnQ6OnN1Ym1pdChFdmVudCogZXZlbnQsIGJv
b2wgYWN0aXZhdGVTdWJtaXRCdXR0b24sIGJvb2wgcHJvY2UKICAgICBpZiAobmVlZEJ1dHRvbkFj
dGl2YXRpb24gJiYgZmlyc3RTdWNjZXNzZnVsU3VibWl0QnV0dG9uKQogICAgICAgICBmaXJzdFN1
Y2Nlc3NmdWxTdWJtaXRCdXR0b24tPnNldEFjdGl2YXRlZFN1Ym1pdCh0cnVlKTsKIAotICAgIExv
Y2tIaXN0b3J5IGxvY2tIaXN0b3J5ID0gcHJvY2Vzc2luZ1VzZXJHZXN0dXJlID8gTG9ja0hpc3Rv
cnk6Ok5vIDogTG9ja0hpc3Rvcnk6OlllczsKLSAgICBSZWY8SFRNTEZvcm1FbGVtZW50PiBwcm90
ZWN0ZWRUaGlzKCp0aGlzKTsgLy8gRm9ybSBzdWJtaXNzaW9uIGNhbiBleGVjdXRlIGFyYml0YXJ5
IEphdmFTY3JpcHQuCi0gICAgZnJhbWUtPmxvYWRlcigpLnN1Ym1pdEZvcm0oRm9ybVN1Ym1pc3Np
b246OmNyZWF0ZSh0aGlzLCBtX2F0dHJpYnV0ZXMsIGV2ZW50LCBsb2NrSGlzdG9yeSwgZm9ybVN1
Ym1pc3Npb25UcmlnZ2VyKSk7CisgICAgYXV0byBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhp
cyk7IC8vIEZvcm0gc3VibWlzc2lvbiBjYW4gZXhlY3V0ZSBhcmJpdGFyeSBKYXZhU2NyaXB0Lgor
CisgICAgYXV0byBzaG91bGRMb2NrSGlzdG9yeSA9IHByb2Nlc3NpbmdVc2VyR2VzdHVyZSA/IExv
Y2tIaXN0b3J5OjpObyA6IExvY2tIaXN0b3J5OjpZZXM7CisgICAgZnJhbWUtPmxvYWRlcigpLnN1
Ym1pdEZvcm0oRm9ybVN1Ym1pc3Npb246OmNyZWF0ZSgqdGhpcywgbV9hdHRyaWJ1dGVzLCBldmVu
dCwgc2hvdWxkTG9ja0hpc3RvcnksIGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikpOwogCiAgICAgaWYg
KG5lZWRCdXR0b25BY3RpdmF0aW9uICYmIGZpcnN0U3VjY2Vzc2Z1bFN1Ym1pdEJ1dHRvbikKICAg
ICAgICAgZmlyc3RTdWNjZXNzZnVsU3VibWl0QnV0dG9uLT5zZXRBY3RpdmF0ZWRTdWJtaXQoZmFs
c2UpOwpAQCAtNDM5LDggKzQzOSw4IEBAIHZvaWQgSFRNTEZvcm1FbGVtZW50OjpyZXF1ZXN0QXV0
b2NvbXBsZXRlKCkKICAgICBTdHJpbmdQYWlyVmVjdG9yIGNvbnRyb2xOYW1lc0FuZFZhbHVlczsK
ICAgICBnZXRUZXh0RmllbGRWYWx1ZXMoY29udHJvbE5hbWVzQW5kVmFsdWVzKTsKIAotICAgIFJl
ZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSA9IEZvcm1TdGF0ZTo6Y3JlYXRlKHRoaXMsIGNvbnRy
b2xOYW1lc0FuZFZhbHVlcywgJmRvY3VtZW50KCksIFN1Ym1pdHRlZEJ5SmF2YVNjcmlwdCk7Ci0g
ICAgZnJhbWUtPmxvYWRlcigpLmNsaWVudCgpLmRpZFJlcXVlc3RBdXRvY29tcGxldGUoZm9ybVN0
YXRlLnJlbGVhc2UoKSk7CisgICAgYXV0byBmb3JtU3RhdGUgPSBGb3JtU3RhdGU6OmNyZWF0ZSh0
aGlzLCBjb250cm9sTmFtZXNBbmRWYWx1ZXMsICZkb2N1bWVudCgpLCBTdWJtaXR0ZWRCeUphdmFT
Y3JpcHQpOworICAgIGZyYW1lLT5sb2FkZXIoKS5jbGllbnQoKS5kaWRSZXF1ZXN0QXV0b2NvbXBs
ZXRlKFdURk1vdmUoZm9ybVN0YXRlKSk7CiB9CiAKIHZvaWQgSFRNTEZvcm1FbGVtZW50OjpmaW5p
c2hSZXF1ZXN0QXV0b2NvbXBsZXRlKEF1dG9jb21wbGV0ZVJlc3VsdCByZXN1bHQpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5oIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuaAppbmRleCBiYjUxNzk4OTc2ZTNmNjY0M2Q4YmE0YTc1
YTdiMTAzZTcyMDYyMzk3Li41ZGUxOTVlYjk2MTVjZWE2MmU1YTIxY2JmMDQ5Yjk3OWFiMjcxYjI1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmgKQEAgLTEyOCw3ICsxMjgsNyBA
QCBwdWJsaWM6CiAgICAgY29uc3QgVmVjdG9yPEZvcm1Bc3NvY2lhdGVkRWxlbWVudCo+JiBhc3Nv
Y2lhdGVkRWxlbWVudHMoKSBjb25zdCB7IHJldHVybiBtX2Fzc29jaWF0ZWRFbGVtZW50czsgfQog
ICAgIGNvbnN0IFZlY3RvcjxIVE1MSW1hZ2VFbGVtZW50Kj4mIGltYWdlRWxlbWVudHMoKSBjb25z
dCB7IHJldHVybiBtX2ltYWdlRWxlbWVudHM7IH0KIAotICAgIHZvaWQgZ2V0VGV4dEZpZWxkVmFs
dWVzKFN0cmluZ1BhaXJWZWN0b3ImIGZpZWxkTmFtZXNBbmRWYWx1ZXMpIGNvbnN0OworICAgIFN0
cmluZ1BhaXJWZWN0b3IgdGV4dEZpZWxkVmFsdWVzKCkgY29uc3Q7CiAKICAgICBzdGF0aWMgSFRN
TEZvcm1FbGVtZW50KiBmaW5kQ2xvc2VzdEZvcm1BbmNlc3Rvcihjb25zdCBFbGVtZW50Jik7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEh0bWxFbGVtZW50LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTEh0bWxFbGVtZW50LmNwcAppbmRleCA1ODQ2ZjU2NDE5OGE5
ZDlmZmUwMjMyZWJlMTVjMWZkNTBhZjMxOWM4Li40OWY4MzcyNTQzYzE5YmRkOGExYmNkZmQzM2M1
NTM1NmY2ODZmNTU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxIdG1sRWxl
bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSHRtbEVsZW1lbnQuY3BwCkBA
IC02NiwxNSArNjYsMTUgQEAgdm9pZCBIVE1MSHRtbEVsZW1lbnQ6Omluc2VydGVkQnlQYXJzZXIo
KQogICAgIGlmICghZG9jdW1lbnQoKS5mcmFtZSgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBE
b2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIgPSBkb2N1bWVudCgpLmZyYW1lKCktPmxvYWRl
cigpLmRvY3VtZW50TG9hZGVyKCk7CisgICAgYXV0byogZG9jdW1lbnRMb2FkZXIgPSBkb2N1bWVu
dCgpLmZyYW1lKCktPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCk7CiAgICAgaWYgKCFkb2N1bWVu
dExvYWRlcikKICAgICAgICAgcmV0dXJuOwogCi0gICAgY29uc3QgQXRvbWljU3RyaW5nJiBtYW5p
ZmVzdCA9IGF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24obWFuaWZlc3RBdHRyKTsKKyAg
ICBhdXRvJiBtYW5pZmVzdCA9IGF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24obWFuaWZl
c3RBdHRyKTsKICAgICBpZiAobWFuaWZlc3QuaXNFbXB0eSgpKQotICAgICAgICBkb2N1bWVudExv
YWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+c2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3Qo
KTsKKyAgICAgICAgZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2VsZWN0
Q2FjaGVXaXRob3V0TWFuaWZlc3QoKTsKICAgICBlbHNlCi0gICAgICAgIGRvY3VtZW50TG9hZGVy
LT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5zZWxlY3RDYWNoZVdpdGhNYW5pZmVzdChkb2N1bWVu
dCgpLmNvbXBsZXRlVVJMKG1hbmlmZXN0KSk7CisgICAgICAgIGRvY3VtZW50TG9hZGVyLT5hcHBs
aWNhdGlvbkNhY2hlSG9zdCgpLnNlbGVjdENhY2hlV2l0aE1hbmlmZXN0KGRvY3VtZW50KCkuY29t
cGxldGVVUkwobWFuaWZlc3QpKTsKIH0KIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MTGlua0VsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGlua0Vs
ZW1lbnQuY3BwCmluZGV4IGQ3NzdhMzkzNzFjY2ZkOGMzM2EzZmU4MDk2MDdlMjg5YjJlNDk5NTEu
LjQ5NmFlZDZlYmU3NTk4NGI2YjIzMTE1ZWU3ZTMwMzBkOTg2OGRiZTAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTExpbmtFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxMaW5rRWxlbWVudC5jcHAKQEAgLTI2Nyw3ICsyNjcsNyBAQCB2b2lkIEhUTUxM
aW5rRWxlbWVudDo6cHJvY2VzcygpCiAgICAgICAgIGlmICghaXNBY3RpdmUpCiAgICAgICAgICAg
ICBwcmlvcml0eSA9IFJlc291cmNlTG9hZFByaW9yaXR5OjpWZXJ5TG93OwogICAgICAgICBDYWNo
ZWRSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCh1cmwsIENhY2hlZFJlc291cmNlTG9hZGVyOjpkZWZh
dWx0Q2FjaGVkUmVzb3VyY2VPcHRpb25zKCksIHByaW9yaXR5LCBXVEZNb3ZlKGNoYXJzZXQpKTsK
LSAgICAgICAgcmVxdWVzdC5zZXRJbml0aWF0b3IodGhpcyk7CisgICAgICAgIHJlcXVlc3Quc2V0
SW5pdGlhdG9yKCp0aGlzKTsKIAogICAgICAgICBpZiAoZG9jdW1lbnQoKS5jb250ZW50U2VjdXJp
dHlQb2xpY3koKS0+YWxsb3dTdHlsZVdpdGhOb25jZShhdHRyaWJ1dGVXaXRob3V0U3luY2hyb25p
emF0aW9uKEhUTUxOYW1lczo6bm9uY2VBdHRyKSkpIHsKICAgICAgICAgICAgIFJlc291cmNlTG9h
ZGVyT3B0aW9ucyBvcHRpb25zID0gQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OmRlZmF1bHRDYWNoZWRS
ZXNvdXJjZU9wdGlvbnMoKTsKQEAgLTM2Nyw3ICszNjcsNyBAQCB2b2lkIEhUTUxMaW5rRWxlbWVu
dDo6c2V0Q1NTU3R5bGVTaGVldChjb25zdCBTdHJpbmcmIGhyZWYsIGNvbnN0IFVSTCYgYmFzZVVS
TCwgYwogICAgIENTU1BhcnNlckNvbnRleHQgcGFyc2VyQ29udGV4dChkb2N1bWVudCgpLCBiYXNl
VVJMLCBjaGFyc2V0KTsKICAgICBhdXRvIGNhY2hlUG9saWN5ID0gZnJhbWUtPmxvYWRlcigpLnN1
YnJlc291cmNlQ2FjaGVQb2xpY3koKTsKIAotICAgIGlmIChSZWZQdHI8U3R5bGVTaGVldENvbnRl
bnRzPiByZXN0b3JlZFNoZWV0ID0gY29uc3RfY2FzdDxDYWNoZWRDU1NTdHlsZVNoZWV0Kj4oY2Fj
aGVkU3R5bGVTaGVldCktPnJlc3RvcmVQYXJzZWRTdHlsZVNoZWV0KHBhcnNlckNvbnRleHQsIGNh
Y2hlUG9saWN5KSkgeworICAgIGlmIChhdXRvIHJlc3RvcmVkU2hlZXQgPSBjb25zdF9jYXN0PENh
Y2hlZENTU1N0eWxlU2hlZXQqPihjYWNoZWRTdHlsZVNoZWV0KS0+cmVzdG9yZVBhcnNlZFN0eWxl
U2hlZXQocGFyc2VyQ29udGV4dCwgY2FjaGVQb2xpY3kpKSB7CiAgICAgICAgIEFTU0VSVChyZXN0
b3JlZFNoZWV0LT5pc0NhY2hlYWJsZSgpKTsKICAgICAgICAgQVNTRVJUKCFyZXN0b3JlZFNoZWV0
LT5pc0xvYWRpbmcoKSk7CiAgICAgICAgIGluaXRpYWxpemVTdHlsZVNoZWV0KHJlc3RvcmVkU2hl
ZXQucmVsZWFzZU5vbk51bGwoKSwgKmNhY2hlZFN0eWxlU2hlZXQpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKaW5kZXggM2E5YzRmNTE5OGYxZjI2MDQzODE3ODlhODQ5
ZjNhOWY1ZDJiZjAxOS4uZjRkZDU0ZTU4N2E1ZTY5ODhhOGY4NDk1NzIyMzE4OTY4NzFhZjczYSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCkBAIC0xNDI4LDExICsx
NDI4LDggQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50Ojpsb2FkUmVzb3VyY2UoY29uc3QgVVJMJiBp
bml0aWFsVVJMLCBDb250ZW50VHlwZSYgY29udGVudFQKICAgICB9CiAKICNpZiBFTkFCTEUoQ09O
VEVOVF9FWFRFTlNJT05TKQotICAgIERvY3VtZW50TG9hZGVyKiBkb2N1bWVudExvYWRlciA9IGZy
YW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwotCi0gICAgaWYgKGRvY3VtZW50TG9hZGVy
KSB7Ci0gICAgICAgIGF1dG8gYmxvY2tlZFN0YXR1cyA9IHBhZ2UtPnVzZXJDb250ZW50UHJvdmlk
ZXIoKS5wcm9jZXNzQ29udGVudEV4dGVuc2lvblJ1bGVzRm9yTG9hZCh1cmwsIFJlc291cmNlVHlw
ZTo6TWVkaWEsICpkb2N1bWVudExvYWRlcik7Ci0gICAgICAgIGlmIChibG9ja2VkU3RhdHVzLmJs
b2NrZWRMb2FkKSB7CisgICAgaWYgKGF1dG8qIGRvY3VtZW50TG9hZGVyID0gZnJhbWUtPmxvYWRl
cigpLmRvY3VtZW50TG9hZGVyKCkpIHsKKyAgICAgICAgaWYgKHBhZ2UtPnVzZXJDb250ZW50UHJv
dmlkZXIoKS5wcm9jZXNzQ29udGVudEV4dGVuc2lvblJ1bGVzRm9yTG9hZCh1cmwsIFJlc291cmNl
VHlwZTo6TWVkaWEsICpkb2N1bWVudExvYWRlcikuYmxvY2tlZExvYWQpIHsKICAgICAgICAgICAg
IG1lZGlhTG9hZGluZ0ZhaWxlZChNZWRpYVBsYXllcjo6Rm9ybWF0RXJyb3IpOwogICAgICAgICAg
ICAgcmV0dXJuOwogICAgICAgICB9CkBAIC0xNDQyLDExICsxNDM5LDkgQEAgdm9pZCBIVE1MTWVk
aWFFbGVtZW50Ojpsb2FkUmVzb3VyY2UoY29uc3QgVVJMJiBpbml0aWFsVVJMLCBDb250ZW50VHlw
ZSYgY29udGVudFQKICAgICAvLyBUaGUgcmVzb3VyY2UgZmV0Y2ggYWxnb3JpdGhtIAogICAgIG1f
bmV0d29ya1N0YXRlID0gTkVUV09SS19MT0FESU5HOwogCi0gICAgLy8gSWYgdGhlIHVybCBzaG91
bGQgYmUgbG9hZGVkIGZyb20gdGhlIGFwcGxpY2F0aW9uIGNhY2hlLCBwYXNzIHRoZSB1cmwgb2Yg
dGhlIGNhY2hlZCBmaWxlCi0gICAgLy8gdG8gdGhlIG1lZGlhIGVuZ2luZS4KLSAgICBBcHBsaWNh
dGlvbkNhY2hlSG9zdCogY2FjaGVIb3N0ID0gZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVy
KCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7CisgICAgLy8gSWYgdGhlIFVSTCBzaG91bGQgYmUg
bG9hZGVkIGZyb20gdGhlIGFwcGxpY2F0aW9uIGNhY2hlLCBwYXNzIHRoZSBVUkwgb2YgdGhlIGNh
Y2hlZCBmaWxlIHRvIHRoZSBtZWRpYSBlbmdpbmUuCiAgICAgQXBwbGljYXRpb25DYWNoZVJlc291
cmNlKiByZXNvdXJjZSA9IG51bGxwdHI7Ci0gICAgaWYgKGNhY2hlSG9zdCAmJiBjYWNoZUhvc3Qt
PnNob3VsZExvYWRSZXNvdXJjZUZyb21BcHBsaWNhdGlvbkNhY2hlKFJlc291cmNlUmVxdWVzdCh1
cmwpLCByZXNvdXJjZSkpIHsKKyAgICBpZiAoZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVy
KCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2hvdWxkTG9hZFJlc291cmNlRnJvbUFwcGxpY2F0
aW9uQ2FjaGUoUmVzb3VyY2VSZXF1ZXN0KHVybCksIHJlc291cmNlKSkgewogICAgICAgICAvLyBS
ZXNvdXJjZXMgdGhhdCBhcmUgbm90IHByZXNlbnQgaW4gdGhlIG1hbmlmZXN0IHdpbGwgYWx3YXlz
IGZhaWwgdG8gbG9hZCAoYXQgbGVhc3QsIGFmdGVyIHRoZQogICAgICAgICAvLyBjYWNoZSBoYXMg
YmVlbiBwcmltZWQgdGhlIGZpcnN0IHRpbWUpLCBtYWtpbmcgdGhlIHRlc3Rpbmcgb2Ygb2ZmbGlu
ZSBhcHBsaWNhdGlvbnMgc2ltcGxlci4KICAgICAgICAgaWYgKCFyZXNvdXJjZSB8fCByZXNvdXJj
ZS0+cGF0aCgpLmlzRW1wdHkoKSkgewpAQCAtMTQ2MCw3ICsxNDU1LDcgQEAgdm9pZCBIVE1MTWVk
aWFFbGVtZW50Ojpsb2FkUmVzb3VyY2UoY29uc3QgVVJMJiBpbml0aWFsVVJMLCBDb250ZW50VHlw
ZSYgY29udGVudFQKIAogICAgIG1fZmlyc3RUaW1lUGxheWluZyA9IHRydWU7CiAKLSAgICAvLyBT
ZXQgbV9jdXJyZW50U3JjICpiZWZvcmUqIGNoYW5naW5nIHRvIHRoZSBjYWNoZSB1cmwsIHRoZSBm
YWN0IHRoYXQgd2UgYXJlIGxvYWRpbmcgZnJvbSB0aGUgYXBwCisgICAgLy8gU2V0IG1fY3VycmVu
dFNyYyAqYmVmb3JlKiBjaGFuZ2luZyB0byB0aGUgY2FjaGUgVVJMLCB0aGUgZmFjdCB0aGF0IHdl
IGFyZSBsb2FkaW5nIGZyb20gdGhlIGFwcAogICAgIC8vIGNhY2hlIGlzIGFuIGludGVybmFsIGRl
dGFpbCBub3QgZXhwb3NlZCB0aHJvdWdoIHRoZSBtZWRpYSBlbGVtZW50IEFQSS4KICAgICBtX2N1
cnJlbnRTcmMgPSB1cmw7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5jcHAKaW5kZXggZmY0ZmYzMWNjMTlm
NDkzNGQwNGIyMjk3Zjc2ZWI5NDU4ODQ4NWQyMi4uNmUzOWJjZGFkMGQ4NGYwNDI3YTkyYzI3MTBm
ZmNmMmYxZTBiMDBjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3Bl
Y3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5jcHAKQEAgLTY4LDE2ICs2OCwxNyBA
QCB2b2lkIEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6ZW5hYmxlKEVycm9yU3RyaW5n
JikKIAogdm9pZCBJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6OnVwZGF0ZUFwcGxpY2F0
aW9uQ2FjaGVTdGF0dXMoRnJhbWUqIGZyYW1lKQogewotICAgIERvY3VtZW50TG9hZGVyKiBkb2N1
bWVudExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOworICAgIGlmICgh
ZnJhbWUpCisgICAgICAgIHJldHVybjsKKyAgICBhdXRvKiBkb2N1bWVudExvYWRlciA9IGZyYW1l
LT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwogICAgIGlmICghZG9jdW1lbnRMb2FkZXIpCiAg
ICAgICAgIHJldHVybjsKIAotICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0KiBob3N0ID0gZG9jdW1l
bnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7Ci0gICAgQXBwbGljYXRpb25DYWNoZUhv
c3Q6OlN0YXR1cyBzdGF0dXMgPSBob3N0LT5zdGF0dXMoKTsKLSAgICBBcHBsaWNhdGlvbkNhY2hl
SG9zdDo6Q2FjaGVJbmZvIGluZm8gPSBob3N0LT5hcHBsaWNhdGlvbkNhY2hlSW5mbygpOworICAg
IGF1dG8mIGhvc3QgPSBkb2N1bWVudExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKTsKKyAg
ICBpbnQgc3RhdHVzID0gaG9zdC5zdGF0dXMoKTsKKyAgICBhdXRvIG1hbmlmZXN0VVJMID0gaG9z
dC5hcHBsaWNhdGlvbkNhY2hlSW5mbygpLm1hbmlmZXN0LnN0cmluZygpOwogCi0gICAgU3RyaW5n
IG1hbmlmZXN0VVJMID0gaW5mby5tX21hbmlmZXN0LnN0cmluZygpOwotICAgIG1fZnJvbnRlbmRE
aXNwYXRjaGVyLT5hcHBsaWNhdGlvbkNhY2hlU3RhdHVzVXBkYXRlZChtX3BhZ2VBZ2VudC0+ZnJh
bWVJZChmcmFtZSksIG1hbmlmZXN0VVJMLCBzdGF0aWNfY2FzdDxpbnQ+KHN0YXR1cykpOworICAg
IG1fZnJvbnRlbmREaXNwYXRjaGVyLT5hcHBsaWNhdGlvbkNhY2hlU3RhdHVzVXBkYXRlZChtX3Bh
Z2VBZ2VudC0+ZnJhbWVJZChmcmFtZSksIG1hbmlmZXN0VVJMLCBzdGF0dXMpOwogfQogCiB2b2lk
IEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6bmV0d29ya1N0YXRlQ2hhbmdlZCgpCkBA
IC05MSwyMCArOTIsMTggQEAgdm9pZCBJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6Omdl
dEZyYW1lc1dpdGhNYW5pZmVzdHMoRXJyb3JTdHJpbmcmLCBSZWZQdHIKICAgICByZXN1bHQgPSBJ
bnNwZWN0b3I6OlByb3RvY29sOjpBcnJheTxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlv
bkNhY2hlOjpGcmFtZVdpdGhNYW5pZmVzdD46OmNyZWF0ZSgpOwogCiAgICAgZm9yIChGcmFtZSog
ZnJhbWUgPSAmbV9wYWdlQWdlbnQtPm1haW5GcmFtZSgpOyBmcmFtZTsgZnJhbWUgPSBmcmFtZS0+
dHJlZSgpLnRyYXZlcnNlTmV4dCgpKSB7Ci0gICAgICAgIERvY3VtZW50TG9hZGVyKiBkb2N1bWVu
dExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOworICAgICAgICBhdXRv
KiBkb2N1bWVudExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwogICAg
ICAgICBpZiAoIWRvY3VtZW50TG9hZGVyKQogICAgICAgICAgICAgY29udGludWU7CiAKLSAgICAg
ICAgQXBwbGljYXRpb25DYWNoZUhvc3QqIGhvc3QgPSBkb2N1bWVudExvYWRlci0+YXBwbGljYXRp
b25DYWNoZUhvc3QoKTsKLSAgICAgICAgQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNhY2hlSW5mbyBp
bmZvID0gaG9zdC0+YXBwbGljYXRpb25DYWNoZUluZm8oKTsKLSAgICAgICAgU3RyaW5nIG1hbmlm
ZXN0VVJMID0gaW5mby5tX21hbmlmZXN0LnN0cmluZygpOworICAgICAgICBhdXRvJiBob3N0ID0g
ZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7CisgICAgICAgIFN0cmluZyBt
YW5pZmVzdFVSTCA9IGhvc3QuYXBwbGljYXRpb25DYWNoZUluZm8oKS5tYW5pZmVzdC5zdHJpbmco
KTsKICAgICAgICAgaWYgKCFtYW5pZmVzdFVSTC5pc0VtcHR5KCkpIHsKLSAgICAgICAgICAgIFJl
ZjxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpGcmFtZVdpdGhNYW5pZmVz
dD4gdmFsdWUgPSBJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpGcmFtZVdp
dGhNYW5pZmVzdDo6Y3JlYXRlKCkKKyAgICAgICAgICAgIHJlc3VsdC0+YWRkSXRlbShJbnNwZWN0
b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpGcmFtZVdpdGhNYW5pZmVzdDo6Y3JlYXRl
KCkKICAgICAgICAgICAgICAgICAuc2V0RnJhbWVJZChtX3BhZ2VBZ2VudC0+ZnJhbWVJZChmcmFt
ZSkpCiAgICAgICAgICAgICAgICAgLnNldE1hbmlmZXN0VVJMKG1hbmlmZXN0VVJMKQotICAgICAg
ICAgICAgICAgIC5zZXRTdGF0dXMoc3RhdGljX2Nhc3Q8aW50Pihob3N0LT5zdGF0dXMoKSkpCi0g
ICAgICAgICAgICAgICAgLnJlbGVhc2UoKTsKLSAgICAgICAgICAgIHJlc3VsdC0+YWRkSXRlbShX
VEZNb3ZlKHZhbHVlKSk7CisgICAgICAgICAgICAgICAgLnNldFN0YXR1cyhzdGF0aWNfY2FzdDxp
bnQ+KGhvc3Quc3RhdHVzKCkpKQorICAgICAgICAgICAgICAgIC5yZWxlYXNlKCkpOwogICAgICAg
ICB9CiAgICAgfQogfQpAQCAtMTI0LDY4ICsxMjMsNjAgQEAgdm9pZCBJbnNwZWN0b3JBcHBsaWNh
dGlvbkNhY2hlQWdlbnQ6OmdldE1hbmlmZXN0Rm9yRnJhbWUoRXJyb3JTdHJpbmcmIGVycm9yU3Ry
aW4KICAgICBpZiAoIWRvY3VtZW50TG9hZGVyKQogICAgICAgICByZXR1cm47CiAKLSAgICBBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6Q2FjaGVJbmZvIGluZm8gPSBkb2N1bWVudExvYWRlci0+YXBwbGlj
YXRpb25DYWNoZUhvc3QoKS0+YXBwbGljYXRpb25DYWNoZUluZm8oKTsKLSAgICAqbWFuaWZlc3RV
UkwgPSBpbmZvLm1fbWFuaWZlc3Quc3RyaW5nKCk7CisgICAgKm1hbmlmZXN0VVJMID0gZG9jdW1l
bnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuYXBwbGljYXRpb25DYWNoZUluZm8oKS5t
YW5pZmVzdC5zdHJpbmcoKTsKIH0KIAogdm9pZCBJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdl
bnQ6OmdldEFwcGxpY2F0aW9uQ2FjaGVGb3JGcmFtZShFcnJvclN0cmluZyYgZXJyb3JTdHJpbmcs
IGNvbnN0IFN0cmluZyYgZnJhbWVJZCwgUmVmUHRyPEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxp
Y2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGU+JiBhcHBsaWNhdGlvbkNhY2hlKQogewotICAg
IERvY3VtZW50TG9hZGVyKiBkb2N1bWVudExvYWRlciA9IGFzc2VydEZyYW1lV2l0aERvY3VtZW50
TG9hZGVyKGVycm9yU3RyaW5nLCBmcmFtZUlkKTsKKyAgICBhdXRvKiBkb2N1bWVudExvYWRlciA9
IGFzc2VydEZyYW1lV2l0aERvY3VtZW50TG9hZGVyKGVycm9yU3RyaW5nLCBmcmFtZUlkKTsKICAg
ICBpZiAoIWRvY3VtZW50TG9hZGVyKQogICAgICAgICByZXR1cm47CiAKLSAgICBBcHBsaWNhdGlv
bkNhY2hlSG9zdCogaG9zdCA9IGRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgp
OwotICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8gaW5mbyA9IGhvc3QtPmFwcGxp
Y2F0aW9uQ2FjaGVJbmZvKCk7Ci0KLSAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6UmVzb3VyY2VJ
bmZvTGlzdCByZXNvdXJjZXM7Ci0gICAgaG9zdC0+ZmlsbFJlc291cmNlTGlzdCgmcmVzb3VyY2Vz
KTsKLQotICAgIGFwcGxpY2F0aW9uQ2FjaGUgPSBidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2Fj
aGUocmVzb3VyY2VzLCBpbmZvKTsKKyAgICBhdXRvJiBob3N0ID0gZG9jdW1lbnRMb2FkZXItPmFw
cGxpY2F0aW9uQ2FjaGVIb3N0KCk7CisgICAgYXBwbGljYXRpb25DYWNoZSA9IGJ1aWxkT2JqZWN0
Rm9yQXBwbGljYXRpb25DYWNoZShob3N0LnJlc291cmNlTGlzdCgpLCBob3N0LmFwcGxpY2F0aW9u
Q2FjaGVJbmZvKCkpOwogfQogCi1SZWY8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25D
YWNoZTo6QXBwbGljYXRpb25DYWNoZT4gSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50Ojpi
dWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGUoY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6
OlJlc291cmNlSW5mb0xpc3QmIGFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMsIGNvbnN0IEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8mIGFwcGxpY2F0aW9uQ2FjaGVJbmZvKQorUmVmPElu
c3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGU+IElu
c3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6YnVpbGRPYmplY3RGb3JBcHBsaWNhdGlvbkNh
Y2hlKGNvbnN0IFZlY3RvcjxBcHBsaWNhdGlvbkNhY2hlSG9zdDo6UmVzb3VyY2VJbmZvPiYgYXBw
bGljYXRpb25DYWNoZVJlc291cmNlcywgY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNhY2hl
SW5mbyYgYXBwbGljYXRpb25DYWNoZUluZm8pCiB7CiAgICAgcmV0dXJuIEluc3BlY3Rvcjo6UHJv
dG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGU6OmNyZWF0ZSgpCi0gICAg
ICAgIC5zZXRNYW5pZmVzdFVSTChhcHBsaWNhdGlvbkNhY2hlSW5mby5tX21hbmlmZXN0LnN0cmlu
ZygpKQotICAgICAgICAuc2V0U2l6ZShhcHBsaWNhdGlvbkNhY2hlSW5mby5tX3NpemUpCi0gICAg
ICAgIC5zZXRDcmVhdGlvblRpbWUoYXBwbGljYXRpb25DYWNoZUluZm8ubV9jcmVhdGlvblRpbWUp
Ci0gICAgICAgIC5zZXRVcGRhdGVUaW1lKGFwcGxpY2F0aW9uQ2FjaGVJbmZvLm1fdXBkYXRlVGlt
ZSkKKyAgICAgICAgLnNldE1hbmlmZXN0VVJMKGFwcGxpY2F0aW9uQ2FjaGVJbmZvLm1hbmlmZXN0
LnN0cmluZygpKQorICAgICAgICAuc2V0U2l6ZShhcHBsaWNhdGlvbkNhY2hlSW5mby5zaXplKQor
ICAgICAgICAuc2V0Q3JlYXRpb25UaW1lKGFwcGxpY2F0aW9uQ2FjaGVJbmZvLmNyZWF0aW9uVGlt
ZSkKKyAgICAgICAgLnNldFVwZGF0ZVRpbWUoYXBwbGljYXRpb25DYWNoZUluZm8udXBkYXRlVGlt
ZSkKICAgICAgICAgLnNldFJlc291cmNlcyhidWlsZEFycmF5Rm9yQXBwbGljYXRpb25DYWNoZVJl
c291cmNlcyhhcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2VzKSkKICAgICAgICAgLnJlbGVhc2UoKTsK
IH0KIAotUmVmPEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFycmF5PEluc3BlY3Rvcjo6UHJvdG9jb2w6
OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4+IEluc3BlY3RvckFw
cGxpY2F0aW9uQ2FjaGVBZ2VudDo6YnVpbGRBcnJheUZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJj
ZXMoY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mb0xpc3QmIGFwcGxpY2F0
aW9uQ2FjaGVSZXNvdXJjZXMpCitSZWY8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXJyYXk8SW5zcGVj
dG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZVJlc291cmNl
Pj4gSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZEFycmF5Rm9yQXBwbGljYXRp
b25DYWNoZVJlc291cmNlcyhjb25zdCBWZWN0b3I8QXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291
cmNlSW5mbz4mIGFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMpCiB7Ci0gICAgYXV0byByZXNvdXJj
ZXMgPSBJbnNwZWN0b3I6OlByb3RvY29sOjpBcnJheTxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBs
aWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+OjpjcmVhdGUoKTsKLQotICAg
IGZvciAoY29uc3QgYXV0byYgcmVzb3VyY2VJbmZvIDogYXBwbGljYXRpb25DYWNoZVJlc291cmNl
cykKLSAgICAgICAgcmVzb3VyY2VzLT5hZGRJdGVtKGJ1aWxkT2JqZWN0Rm9yQXBwbGljYXRpb25D
YWNoZVJlc291cmNlKHJlc291cmNlSW5mbykpOwotCi0gICAgcmV0dXJuIHJlc291cmNlczsKKyAg
ICBhdXRvIHJlc3VsdCA9IEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFycmF5PEluc3BlY3Rvcjo6UHJv
dG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT46OmNyZWF0
ZSgpOworICAgIGZvciAoYXV0byYgaW5mbyA6IGFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMpCisg
ICAgICAgIHJlc3VsdC0+YWRkSXRlbShidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGVSZXNv
dXJjZShpbmZvKSk7CisgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAogUmVmPEluc3BlY3Rvcjo6UHJv
dG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4gSW5zcGVj
dG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGVS
ZXNvdXJjZShjb25zdCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6UmVzb3VyY2VJbmZvJiByZXNvdXJj
ZUluZm8pCiB7CiAgICAgU3RyaW5nQnVpbGRlciB0eXBlczsKIAotICAgIGlmIChyZXNvdXJjZUlu
Zm8ubV9pc01hc3RlcikKKyAgICBpZiAocmVzb3VyY2VJbmZvLmlzTWFzdGVyKQogICAgICAgICB0
eXBlcy5hcHBlbmRMaXRlcmFsKCJNYXN0ZXIgIik7CiAKLSAgICBpZiAocmVzb3VyY2VJbmZvLm1f
aXNNYW5pZmVzdCkKKyAgICBpZiAocmVzb3VyY2VJbmZvLmlzTWFuaWZlc3QpCiAgICAgICAgIHR5
cGVzLmFwcGVuZExpdGVyYWwoIk1hbmlmZXN0ICIpOwogCi0gICAgaWYgKHJlc291cmNlSW5mby5t
X2lzRmFsbGJhY2spCisgICAgaWYgKHJlc291cmNlSW5mby5pc0ZhbGxiYWNrKQogICAgICAgICB0
eXBlcy5hcHBlbmRMaXRlcmFsKCJGYWxsYmFjayAiKTsKIAotICAgIGlmIChyZXNvdXJjZUluZm8u
bV9pc0ZvcmVpZ24pCisgICAgaWYgKHJlc291cmNlSW5mby5pc0ZvcmVpZ24pCiAgICAgICAgIHR5
cGVzLmFwcGVuZExpdGVyYWwoIkZvcmVpZ24gIik7CiAKLSAgICBpZiAocmVzb3VyY2VJbmZvLm1f
aXNFeHBsaWNpdCkKKyAgICBpZiAocmVzb3VyY2VJbmZvLmlzRXhwbGljaXQpCiAgICAgICAgIHR5
cGVzLmFwcGVuZExpdGVyYWwoIkV4cGxpY2l0ICIpOwogCiAgICAgcmV0dXJuIEluc3BlY3Rvcjo6
UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6Y3Jl
YXRlKCkKLSAgICAgICAgLnNldFVybChyZXNvdXJjZUluZm8ubV9yZXNvdXJjZS5zdHJpbmcoKSkK
LSAgICAgICAgLnNldFNpemUoc3RhdGljX2Nhc3Q8aW50PihyZXNvdXJjZUluZm8ubV9zaXplKSkK
KyAgICAgICAgLnNldFVybChyZXNvdXJjZUluZm8ucmVzb3VyY2Uuc3RyaW5nKCkpCisgICAgICAg
IC5zZXRTaXplKHN0YXRpY19jYXN0PGludD4ocmVzb3VyY2VJbmZvLnNpemUpKQogICAgICAgICAu
c2V0VHlwZSh0eXBlcy50b1N0cmluZygpKQogICAgICAgICAucmVsZWFzZSgpOwogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVB
Z2VudC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2Fj
aGVBZ2VudC5oCmluZGV4IGQ1YzU3OWM3ZWFiZTdiMmJhZGM0NzRiMGY0ODcxNmRkNjk0ZmViNzYu
LjQ4NzUyZWZhMGNkNWY2YTc2MmRlNTNkYzJhMTEyZWZmNDY0ZjcyZmIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFn
ZW50LmgKQEAgLTYyLDggKzYyLDggQEAgcHVibGljOgogICAgIHZvaWQgZ2V0QXBwbGljYXRpb25D
YWNoZUZvckZyYW1lKEVycm9yU3RyaW5nJiwgY29uc3QgU3RyaW5nJiBmcmFtZUlkLCBSZWZQdHI8
SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZT4m
KSBvdmVycmlkZTsKIAogcHJpdmF0ZToKLSAgICBSZWY8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBw
bGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZT4gYnVpbGRPYmplY3RGb3JBcHBsaWNhdGlv
bkNhY2hlKGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpSZXNvdXJjZUluZm9MaXN0JiwgY29u
c3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNhY2hlSW5mbyYpOwotICAgIFJlZjxJbnNwZWN0b3I6
OlByb3RvY29sOjpBcnJheTxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpB
cHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+PiBidWlsZEFycmF5Rm9yQXBwbGljYXRpb25DYWNoZVJl
c291cmNlcyhjb25zdCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6UmVzb3VyY2VJbmZvTGlzdCYpOwor
ICAgIFJlZjxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlv
bkNhY2hlPiBidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGUoY29uc3QgVmVjdG9yPEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0OjpSZXNvdXJjZUluZm8+JiwgY29uc3QgQXBwbGljYXRpb25DYWNoZUhv
c3Q6OkNhY2hlSW5mbyYpOworICAgIFJlZjxJbnNwZWN0b3I6OlByb3RvY29sOjpBcnJheTxJbnNw
ZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlUmVzb3Vy
Y2U+PiBidWlsZEFycmF5Rm9yQXBwbGljYXRpb25DYWNoZVJlc291cmNlcyhjb25zdCBWZWN0b3I8
QXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mbz4mKTsKICAgICBSZWY8SW5zcGVjdG9y
OjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiBi
dWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZShjb25zdCBBcHBsaWNhdGlvbkNh
Y2hlSG9zdDo6UmVzb3VyY2VJbmZvJik7CiAKICAgICBEb2N1bWVudExvYWRlciogYXNzZXJ0RnJh
bWVXaXRoRG9jdW1lbnRMb2FkZXIoRXJyb3JTdHJpbmcmLCBjb25zdCBTdHJpbmcmIGZyYW1lSWQp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1l
bnRhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uLmNwcAppbmRleCAyZTQzMzc5NmE2YWYzYjExYjkxZDdjYjA2MjFhMTg0N2I1ZmMyNTdh
Li5kNjhjNTIyZWZjZTAyY2ZlZDU5YThmMDg1OWY0NTRlMWM4YzJjYTgxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcApA
QCAtMSw2ICsxLDYgQEAKIC8qCiAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgotKiBDb3B5cmlnaHQgKEMpIDIwMTQsIDIwMTUgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorKiBDb3B5cmlnaHQgKEMpIDIwMTQtMjAxNyBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAqCiAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCkBA
IC0xMDczLDEwICsxMDczLDEwIEBAIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpuZXR3
b3JrU3RhdGVDaGFuZ2VkSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiBpbnN0CiAgICAgICAgIGFw
cGxpY2F0aW9uQ2FjaGVBZ2VudC0+bmV0d29ya1N0YXRlQ2hhbmdlZCgpOwogfQogCi12b2lkIElu
c3BlY3Rvckluc3RydW1lbnRhdGlvbjo6dXBkYXRlQXBwbGljYXRpb25DYWNoZVN0YXR1c0ltcGwo
SW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgRnJhbWUqIGZyYW1lKQor
dm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OnVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0
dXNJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRpbmdBZ2VudHMsIEZyYW1lJiBm
cmFtZSkKIHsKLSAgICBpZiAoSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50KiBhcHBsaWNh
dGlvbkNhY2hlQWdlbnQgPSBpbnN0cnVtZW50aW5nQWdlbnRzLmluc3BlY3RvckFwcGxpY2F0aW9u
Q2FjaGVBZ2VudCgpKQotICAgICAgICBhcHBsaWNhdGlvbkNhY2hlQWdlbnQtPnVwZGF0ZUFwcGxp
Y2F0aW9uQ2FjaGVTdGF0dXMoZnJhbWUpOworICAgIGlmIChhdXRvKiBhcHBsaWNhdGlvbkNhY2hl
QWdlbnQgPSBpbnN0cnVtZW50aW5nQWdlbnRzLmluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2Vu
dCgpKQorICAgICAgICBhcHBsaWNhdGlvbkNhY2hlQWdlbnQtPnVwZGF0ZUFwcGxpY2F0aW9uQ2Fj
aGVTdGF0dXMoJmZyYW1lKTsKIH0KIAogYm9vbCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmNv
bnNvbGVBZ2VudEVuYWJsZWQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9u
Q29udGV4dCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJ
bnN0cnVtZW50YXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0
cnVtZW50YXRpb24uaAppbmRleCA5YjYwMDEwNGRhMmYxZGQ1ZWQxMDJiYmY5NDVhNmY1YWQ0OTk3
ZjQyLi4yNDVjZGM4ODc1MmQwODUxZTU3MDQ0YmI3MjMzNWI2YTA4MjRhYWZkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oCkBA
IC00MDcsNyArNDA3LDcgQEAgcHJpdmF0ZToKICNlbmRpZgogCiAgICAgc3RhdGljIHZvaWQgbmV0
d29ya1N0YXRlQ2hhbmdlZEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYpOwotICAgIHN0YXRpYyB2
b2lkIHVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXNJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMm
LCBGcmFtZSopOworICAgIHN0YXRpYyB2b2lkIHVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXNJ
bXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBGcmFtZSYpOwogCiAgICAgc3RhdGljIHZvaWQgbGF5
ZXJUcmVlRGlkQ2hhbmdlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJik7CiAgICAgc3RhdGljIHZv
aWQgcmVuZGVyTGF5ZXJEZXN0cm95ZWRJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBjb25zdCBS
ZW5kZXJMYXllciYpOwpAQCAtMTE4MSw4ICsxMTgxLDggQEAgaW5saW5lIHZvaWQgSW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjpuZXR3b3JrU3RhdGVDaGFuZ2VkKFBhZ2UmIHBhZ2UpCiBpbmxpbmUg
dm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OnVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0
dXMoRnJhbWUqIGZyYW1lKQogewogICAgIEZBU1RfUkVUVVJOX0lGX05PX0ZST05URU5EUyh2b2lk
KCkpOwotICAgIGlmIChJbnN0cnVtZW50aW5nQWdlbnRzKiBpbnN0cnVtZW50aW5nQWdlbnRzID0g
aW5zdHJ1bWVudGluZ0FnZW50c0ZvckZyYW1lKGZyYW1lKSkKLSAgICAgICAgdXBkYXRlQXBwbGlj
YXRpb25DYWNoZVN0YXR1c0ltcGwoKmluc3RydW1lbnRpbmdBZ2VudHMsIGZyYW1lKTsKKyAgICBp
ZiAoYXV0byogaW5zdHJ1bWVudGluZ0FnZW50cyA9IGluc3RydW1lbnRpbmdBZ2VudHNGb3JGcmFt
ZShmcmFtZSkpCisgICAgICAgIHVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXNJbXBsKCppbnN0
cnVtZW50aW5nQWdlbnRzLCAqZnJhbWUpOwogfQogCiBpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0
cnVtZW50YXRpb246OmFkZE1lc3NhZ2VUb0NvbnNvbGUoUGFnZSYgcGFnZSwgc3RkOjp1bmlxdWVf
cHRyPEluc3BlY3Rvcjo6Q29uc29sZU1lc3NhZ2U+IG1lc3NhZ2UpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0RvY3VtZW50TG9hZGVyLmNwcAppbmRleCA5YjM4YzNiMzYyNzkwNWUxYmVhYTM5ZjU1YmUz
ZGJjNjljMzc3YWU5Li5lZTY1OWNiNWY5Mzk1OTA3NjdlYzk4NGE2MTcxZmQ1MzkwZTU0ODFlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5jcHAKQEAgLTEyOSwzMCArMTI5
LDE2IEBAIHN0YXRpYyBib29sIGFyZUFsbExvYWRlcnNQYWdlQ2FjaGVBY2NlcHRhYmxlKGNvbnN0
IFJlc291cmNlTG9hZGVyTWFwJiBsb2FkZXJzKQogICAgIHJldHVybiB0cnVlOwogfQogCi1Eb2N1
bWVudExvYWRlcjo6RG9jdW1lbnRMb2FkZXIoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXEsIGNv
bnN0IFN1YnN0aXR1dGVEYXRhJiBzdWJzdGl0dXRlRGF0YSkKLSAgICA6IG1fZGVmZXJNYWluUmVz
b3VyY2VEYXRhTG9hZCh0cnVlKQotICAgICwgbV9mcmFtZShudWxscHRyKQotICAgICwgbV9jYWNo
ZWRSZXNvdXJjZUxvYWRlcihDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Y3JlYXRlKHRoaXMpKQorRG9j
dW1lbnRMb2FkZXI6OkRvY3VtZW50TG9hZGVyKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVz
dCwgY29uc3QgU3Vic3RpdHV0ZURhdGEmIHN1YnN0aXR1dGVEYXRhKQorICAgIDogbV9jYWNoZWRS
ZXNvdXJjZUxvYWRlcihDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Y3JlYXRlKHRoaXMpKQogICAgICwg
bV93cml0ZXIobV9mcmFtZSkKLSAgICAsIG1fb3JpZ2luYWxSZXF1ZXN0KHJlcSkKKyAgICAsIG1f
b3JpZ2luYWxSZXF1ZXN0KHJlcXVlc3QpCiAgICAgLCBtX3N1YnN0aXR1dGVEYXRhKHN1YnN0aXR1
dGVEYXRhKQotICAgICwgbV9vcmlnaW5hbFJlcXVlc3RDb3B5KHJlcSkKLSAgICAsIG1fcmVxdWVz
dChyZXEpCisgICAgLCBtX29yaWdpbmFsUmVxdWVzdENvcHkocmVxdWVzdCkKKyAgICAsIG1fcmVx
dWVzdChyZXF1ZXN0KQogICAgICwgbV9vcmlnaW5hbFN1YnN0aXR1dGVEYXRhV2FzVmFsaWQoc3Vi
c3RpdHV0ZURhdGEuaXNWYWxpZCgpKQotICAgICwgbV9jb21taXR0ZWQoZmFsc2UpCi0gICAgLCBt
X2lzU3RvcHBpbmcoZmFsc2UpCi0gICAgLCBtX2dvdEZpcnN0Qnl0ZShmYWxzZSkKLSAgICAsIG1f
aXNDbGllbnRSZWRpcmVjdChmYWxzZSkKLSAgICAsIG1faXNMb2FkaW5nTXVsdGlwYXJ0Q29udGVu
dChmYWxzZSkKLSAgICAsIG1fd2FzT25sb2FkRGlzcGF0Y2hlZChmYWxzZSkKLSAgICAsIG1fc3Rv
cFJlY29yZGluZ1Jlc3BvbnNlcyhmYWxzZSkKICAgICAsIG1fc3Vic3RpdHV0ZVJlc291cmNlRGVs
aXZlcnlUaW1lcigqdGhpcywgJkRvY3VtZW50TG9hZGVyOjpzdWJzdGl0dXRlUmVzb3VyY2VEZWxp
dmVyeVRpbWVyRmlyZWQpCi0gICAgLCBtX2RpZENyZWF0ZUdsb2JhbEhpc3RvcnlFbnRyeShmYWxz
ZSkKLSAgICAsIG1fbG9hZGluZ01haW5SZXNvdXJjZShmYWxzZSkKLSAgICAsIG1fdGltZU9mTGFz
dERhdGFSZWNlaXZlZCgwLjApCi0gICAgLCBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291
cmNlTG9hZGVyKDApCiAgICAgLCBtX2RhdGFMb2FkVGltZXIoKnRoaXMsICZEb2N1bWVudExvYWRl
cjo6aGFuZGxlU3Vic3RpdHV0ZURhdGFMb2FkTm93KQotICAgICwgbV9zdWJyZXNvdXJjZUxvYWRl
cnNBcmVQYWdlQ2FjaGVBY2NlcHRhYmxlKGZhbHNlKQogICAgICwgbV9hcHBsaWNhdGlvbkNhY2hl
SG9zdChzdGQ6Om1ha2VfdW5pcXVlPEFwcGxpY2F0aW9uQ2FjaGVIb3N0PigqdGhpcykpCiB7CiB9
CkBAIC0xNjYsNyArMTUyLDkgQEAgRnJhbWVMb2FkZXIqIERvY3VtZW50TG9hZGVyOjpmcmFtZUxv
YWRlcigpIGNvbnN0CiAKIFN1YnJlc291cmNlTG9hZGVyKiBEb2N1bWVudExvYWRlcjo6bWFpblJl
c291cmNlTG9hZGVyKCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9tYWluUmVzb3VyY2UgPyBtX21h
aW5SZXNvdXJjZS0+bG9hZGVyKCkgOiAwOworICAgIGlmICghbV9tYWluUmVzb3VyY2UpCisgICAg
ICAgIHJldHVybiBudWxscHRyOworICAgIHJldHVybiBtX21haW5SZXNvdXJjZS0+bG9hZGVyKCk7
CiB9CiAKIERvY3VtZW50TG9hZGVyOjp+RG9jdW1lbnRMb2FkZXIoKQpAQCAtMTc5LDcgKzE2Nyw3
IEBAIERvY3VtZW50TG9hZGVyOjp+RG9jdW1lbnRMb2FkZXIoKQogICAgIGlmIChtX2ljb25EYXRh
Q2FsbGJhY2spCiAgICAgICAgIG1faWNvbkRhdGFDYWxsYmFjay0+aW52YWxpZGF0ZSgpOwogICAg
IG1fY2FjaGVkUmVzb3VyY2VMb2FkZXItPmNsZWFyRG9jdW1lbnRMb2FkZXIoKTsKLSAgICAKKwog
ICAgIGNsZWFyTWFpblJlc291cmNlKCk7CiB9CiAKQEAgLTE5OSwzMSArMTg3LDYgQEAgRG9jdW1l
bnQqIERvY3VtZW50TG9hZGVyOjpkb2N1bWVudCgpIGNvbnN0CiAgICAgcmV0dXJuIG51bGxwdHI7
CiB9CiAKLWNvbnN0IFJlc291cmNlUmVxdWVzdCYgRG9jdW1lbnRMb2FkZXI6Om9yaWdpbmFsUmVx
dWVzdCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fb3JpZ2luYWxSZXF1ZXN0OwotfQotCi1jb25z
dCBSZXNvdXJjZVJlcXVlc3QmIERvY3VtZW50TG9hZGVyOjpvcmlnaW5hbFJlcXVlc3RDb3B5KCkg
Y29uc3QKLXsKLSAgICByZXR1cm4gbV9vcmlnaW5hbFJlcXVlc3RDb3B5OwotfQotCi1jb25zdCBS
ZXNvdXJjZVJlcXVlc3QmIERvY3VtZW50TG9hZGVyOjpyZXF1ZXN0KCkgY29uc3QKLXsKLSAgICBy
ZXR1cm4gbV9yZXF1ZXN0OwotfQotCi1SZXNvdXJjZVJlcXVlc3QmIERvY3VtZW50TG9hZGVyOjpy
ZXF1ZXN0KCkKLXsKLSAgICByZXR1cm4gbV9yZXF1ZXN0OwotfQotCi1jb25zdCBVUkwmIERvY3Vt
ZW50TG9hZGVyOjp1cmwoKSBjb25zdAotewotICAgIHJldHVybiByZXF1ZXN0KCkudXJsKCk7Ci19
Ci0KIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnJlcGxhY2VSZXF1ZXN0VVJMRm9yU2FtZURvY3VtZW50
TmF2aWdhdGlvbihjb25zdCBVUkwmIHVybCkKIHsKICAgICBtX29yaWdpbmFsUmVxdWVzdENvcHku
c2V0VVJMKHVybCk7CkBAIC0zMTksNyArMjgyLDcgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6c3Rv
cExvYWRpbmcoKQogICAgIGNhbmNlbEFsbChtX211bHRpcGFydFN1YnJlc291cmNlTG9hZGVycyk7
CiAKICAgICAvLyBBcHBjYWNoZSB1c2VzIFJlc291cmNlSGFuZGxlIGRpcmVjdGx5LCBEb2N1bWVu
dExvYWRlciBkb2Vzbid0IGNvdW50IHRoZXNlIGxvYWRzLgotICAgIG1fYXBwbGljYXRpb25DYWNo
ZUhvc3QtPnN0b3BMb2FkaW5nSW5GcmFtZShtX2ZyYW1lKTsKKyAgICBtX2FwcGxpY2F0aW9uQ2Fj
aGVIb3N0LT5zdG9wTG9hZGluZ0luRnJhbWUoKm1fZnJhbWUpOwogICAgIAogI2lmIEVOQUJMRShX
RUJfQVJDSElWRSkgfHwgRU5BQkxFKE1IVE1MKQogICAgIGNsZWFyQXJjaGl2ZVJlc291cmNlcygp
OwpAQCAtNjAyLDcgKzU2NSw3IEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6OndpbGxTZW5kUmVxdWVz
dChSZXNvdXJjZVJlcXVlc3QmIG5ld1JlcXVlc3QsIGNvbnN0IFJlc291cmNlCiAKICAgICBBU1NF
UlQoIW1fd2FpdGluZ0Zvck5hdmlnYXRpb25Qb2xpY3kpOwogICAgIG1fd2FpdGluZ0Zvck5hdmln
YXRpb25Qb2xpY3kgPSB0cnVlOwotICAgIGZyYW1lTG9hZGVyKCktPnBvbGljeUNoZWNrZXIoKS5j
aGVja05hdmlnYXRpb25Qb2xpY3kobmV3UmVxdWVzdCwgZGlkUmVjZWl2ZVJlZGlyZWN0UmVzcG9u
c2UsIFt0aGlzXShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFBhc3NSZWZQdHI8Rm9y
bVN0YXRlPiwgYm9vbCBzaG91bGRDb250aW51ZSkgeworICAgIGZyYW1lTG9hZGVyKCktPnBvbGlj
eUNoZWNrZXIoKS5jaGVja05hdmlnYXRpb25Qb2xpY3kobmV3UmVxdWVzdCwgZGlkUmVjZWl2ZVJl
ZGlyZWN0UmVzcG9uc2UsIFt0aGlzXSAoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBG
b3JtU3RhdGUqLCBib29sIHNob3VsZENvbnRpbnVlKSB7CiAgICAgICAgIGNvbnRpbnVlQWZ0ZXJO
YXZpZ2F0aW9uUG9saWN5KHJlcXVlc3QsIHNob3VsZENvbnRpbnVlKTsKICAgICB9KTsKIH0KQEAg
LTkwMCwxMiArODYzLDggQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6Y29tbWl0RGF0YShjb25zdCBj
aGFyKiBieXRlcywgc2l6ZV90IGxlbmd0aCkKICAgICAgICAgaWYgKGZyYW1lTG9hZGVyKCktPnN0
YXRlTWFjaGluZSgpLmNyZWF0aW5nSW5pdGlhbEVtcHR5RG9jdW1lbnQoKSkKICAgICAgICAgICAg
IHJldHVybjsKICAgICAgICAgCi0jaWYgRU5BQkxFKE1IVE1MKQotICAgICAgICAvLyBUaGUgb3Jp
Z2luIGlzIHRoZSBNSFRNTCBmaWxlLCB3ZSBuZWVkIHRvIHNldCB0aGUgYmFzZSBVUkwgdG8gdGhl
IGRvY3VtZW50IGVuY29kZWQgaW4gdGhlIE1IVE1MIHNvCi0gICAgICAgIC8vIHJlbGF0aXZlIFVS
THMgYXJlIHJlc29sdmVkIHByb3Blcmx5LgotICAgICAgICBpZiAobV9hcmNoaXZlICYmIG1fYXJj
aGl2ZS0+dHlwZSgpID09IEFyY2hpdmU6Ok1IVE1MKQorICAgICAgICBpZiAobV9hcmNoaXZlICYm
IG1fYXJjaGl2ZS0+c2hvdWxkT3ZlcnJpZGVCYXNlVVJMKCkpCiAgICAgICAgICAgICBtX2ZyYW1l
LT5kb2N1bWVudCgpLT5zZXRCYXNlVVJMT3ZlcnJpZGUobV9hcmNoaXZlLT5tYWluUmVzb3VyY2Uo
KS0+dXJsKCkpOwotI2VuZGlmCiAKICAgICAgICAgLy8gQ2FsbCByZWNlaXZlZEZpcnN0RGF0YSgp
IGV4YWN0bHkgb25jZSBwZXIgbG9hZC4gV2Ugc2hvdWxkIG9ubHkgcmVhY2ggdGhpcyBwb2ludCBt
dWx0aXBsZSB0aW1lcwogICAgICAgICAvLyBmb3IgbXVsdGlwYXJ0IGxvYWRzLCBhbmQgRnJhbWVM
b2FkZXI6OmlzUmVwbGFjaW5nKCkgd2lsbCBiZSB0cnVlIGFmdGVyIHRoZSBmaXJzdCB0aW1lLgpA
QCAtOTIxLDEwICs4ODAsOCBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpjb21taXREYXRhKGNvbnN0
IGNoYXIqIGJ5dGVzLCBzaXplX3QgbGVuZ3RoKQogICAgICAgICBpZiAob3ZlcnJpZGVFbmNvZGlu
ZygpLmlzTnVsbCgpKSB7CiAgICAgICAgICAgICB1c2VyQ2hvc2VuID0gZmFsc2U7CiAgICAgICAg
ICAgICBlbmNvZGluZyA9IHJlc3BvbnNlKCkudGV4dEVuY29kaW5nTmFtZSgpOwotI2lmIEVOQUJM
RShXRUJfQVJDSElWRSkKLSAgICAgICAgICAgIGlmIChtX2FyY2hpdmUgJiYgbV9hcmNoaXZlLT50
eXBlKCkgPT0gQXJjaGl2ZTo6V2ViQXJjaGl2ZSkKKyAgICAgICAgICAgIGlmIChtX2FyY2hpdmUg
JiYgbV9hcmNoaXZlLT5zaG91bGRVc2VNYWluUmVzb3VyY2VFbmNvZGluZygpKQogICAgICAgICAg
ICAgICAgIGVuY29kaW5nID0gbV9hcmNoaXZlLT5tYWluUmVzb3VyY2UoKS0+dGV4dEVuY29kaW5n
KCk7Ci0jZW5kaWYKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIHVzZXJDaG9zZW4gPSB0
cnVlOwogICAgICAgICAgICAgZW5jb2RpbmcgPSBvdmVycmlkZUVuY29kaW5nKCk7CkBAIC0xMDgz
LDE1ICsxMDQwLDE2IEBAIGJvb2wgRG9jdW1lbnRMb2FkZXI6OmlzTG9hZGluZ0luQVBJU2Vuc2Uo
KSBjb25zdAogICAgIGlmIChmcmFtZUxvYWRlcigpLT5zdGF0ZSgpICE9IEZyYW1lU3RhdGVDb21w
bGV0ZSkgewogICAgICAgICBpZiAobV9mcmFtZS0+c2V0dGluZ3MoKS5uZWVkc0lzTG9hZGluZ0lu
QVBJU2Vuc2VRdWlyaygpICYmICFtX3N1YnJlc291cmNlTG9hZGVycy5pc0VtcHR5KCkpCiAgICAg
ICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICAKLSAgICAgICAgRG9jdW1lbnQqIGRvYyA9IG1fZnJh
bWUtPmRvY3VtZW50KCk7Ci0gICAgICAgIGlmICgoaXNMb2FkaW5nTWFpblJlc291cmNlKCkgfHwg
IW1fZnJhbWUtPmRvY3VtZW50KCktPmxvYWRFdmVudEZpbmlzaGVkKCkpICYmIGlzTG9hZGluZygp
KQorCisgICAgICAgIEFTU0VSVChtX2ZyYW1lLT5kb2N1bWVudCgpKTsKKyAgICAgICAgYXV0byYg
ZG9jdW1lbnQgPSAqbV9mcmFtZS0+ZG9jdW1lbnQoKTsKKyAgICAgICAgaWYgKChpc0xvYWRpbmdN
YWluUmVzb3VyY2UoKSB8fCAhZG9jdW1lbnQubG9hZEV2ZW50RmluaXNoZWQoKSkgJiYgaXNMb2Fk
aW5nKCkpCiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgaWYgKG1fY2FjaGVkUmVz
b3VyY2VMb2FkZXItPnJlcXVlc3RDb3VudCgpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0g
ICAgICAgIGlmIChkb2MtPnByb2Nlc3NpbmdMb2FkRXZlbnQoKSkKKyAgICAgICAgaWYgKGRvY3Vt
ZW50LnByb2Nlc3NpbmdMb2FkRXZlbnQoKSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAg
ICAgICBpZiAoZG9jLT5oYXNBY3RpdmVQYXJzZXIoKSkKKyAgICAgICAgaWYgKGRvY3VtZW50Lmhh
c0FjdGl2ZVBhcnNlcigpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQogICAgIHJl
dHVybiBmcmFtZUxvYWRlcigpLT5zdWJmcmFtZUlzTG9hZGluZygpOwpAQCAtMTEwMiw0MCArMTA2
MCwzNSBAQCBib29sIERvY3VtZW50TG9hZGVyOjptYXliZUNyZWF0ZUFyY2hpdmUoKQogI2lmICFF
TkFCTEUoV0VCX0FSQ0hJVkUpICYmICFFTkFCTEUoTUhUTUwpCiAgICAgcmV0dXJuIGZhbHNlOwog
I2Vsc2UKLSAgICAKICAgICAvLyBHaXZlIHRoZSBhcmNoaXZlIG1hY2hpbmVyeSBhIGNyYWNrIGF0
IHRoaXMgZG9jdW1lbnQuIElmIHRoZSBNSU1FIHR5cGUgaXMgbm90IGFuIGFyY2hpdmUgdHlwZSwg
aXQgd2lsbCByZXR1cm4gMC4KICAgICBtX2FyY2hpdmUgPSBBcmNoaXZlRmFjdG9yeTo6Y3JlYXRl
KG1fcmVzcG9uc2UudXJsKCksIG1haW5SZXNvdXJjZURhdGEoKS5nZXQoKSwgbV9yZXNwb25zZS5t
aW1lVHlwZSgpKTsKICAgICBpZiAoIW1fYXJjaGl2ZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwog
ICAgIAotICAgIGFkZEFsbEFyY2hpdmVSZXNvdXJjZXMobV9hcmNoaXZlLmdldCgpKTsKLSAgICBB
cmNoaXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSA9IG1fYXJjaGl2ZS0+bWFpblJlc291cmNlKCk7
Ci0gICAgbV9wYXJzZWRBcmNoaXZlRGF0YSA9ICZtYWluUmVzb3VyY2UtPmRhdGEoKTsKLSAgICBt
X3dyaXRlci5zZXRNSU1FVHlwZShtYWluUmVzb3VyY2UtPm1pbWVUeXBlKCkpOwotICAgIAorICAg
IGFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoKm1fYXJjaGl2ZSk7CisgICAgQVNTRVJUKG1fYXJjaGl2
ZS0+bWFpblJlc291cmNlKCkpOworICAgIGF1dG8mIG1haW5SZXNvdXJjZSA9ICptX2FyY2hpdmUt
Pm1haW5SZXNvdXJjZSgpOworICAgIG1fcGFyc2VkQXJjaGl2ZURhdGEgPSAmbWFpblJlc291cmNl
LmRhdGEoKTsKKyAgICBtX3dyaXRlci5zZXRNSU1FVHlwZShtYWluUmVzb3VyY2UubWltZVR5cGUo
KSk7CisKICAgICBBU1NFUlQobV9mcmFtZS0+ZG9jdW1lbnQoKSk7Ci0gICAgY29tbWl0RGF0YSht
YWluUmVzb3VyY2UtPmRhdGEoKS5kYXRhKCksIG1haW5SZXNvdXJjZS0+ZGF0YSgpLnNpemUoKSk7
CisgICAgY29tbWl0RGF0YShtYWluUmVzb3VyY2UuZGF0YSgpLmRhdGEoKSwgbWFpblJlc291cmNl
LmRhdGEoKS5zaXplKCkpOwogICAgIHJldHVybiB0cnVlOwotI2VuZGlmIC8vICFFTkFCTEUoV0VC
X0FSQ0hJVkUpICYmICFFTkFCTEUoTUhUTUwpCisjZW5kaWYKIH0KIAogI2lmIEVOQUJMRShXRUJf
QVJDSElWRSkgfHwgRU5BQkxFKE1IVE1MKQogCi12b2lkIERvY3VtZW50TG9hZGVyOjpzZXRBcmNo
aXZlKFBhc3NSZWZQdHI8QXJjaGl2ZT4gYXJjaGl2ZSkKK3ZvaWQgRG9jdW1lbnRMb2FkZXI6OnNl
dEFyY2hpdmUoUmVmPEFyY2hpdmU+JiYgYXJjaGl2ZSkKIHsKLSAgICBtX2FyY2hpdmUgPSBhcmNo
aXZlOwotICAgIGFkZEFsbEFyY2hpdmVSZXNvdXJjZXMobV9hcmNoaXZlLmdldCgpKTsKKyAgICBt
X2FyY2hpdmUgPSBXVEZNb3ZlKGFyY2hpdmUpOworICAgIGFkZEFsbEFyY2hpdmVSZXNvdXJjZXMo
Km1fYXJjaGl2ZSk7CiB9CiAKLXZvaWQgRG9jdW1lbnRMb2FkZXI6OmFkZEFsbEFyY2hpdmVSZXNv
dXJjZXMoQXJjaGl2ZSogYXJjaGl2ZSkKK3ZvaWQgRG9jdW1lbnRMb2FkZXI6OmFkZEFsbEFyY2hp
dmVSZXNvdXJjZXMoQXJjaGl2ZSYgYXJjaGl2ZSkKIHsKICAgICBpZiAoIW1fYXJjaGl2ZVJlc291
cmNlQ29sbGVjdGlvbikKICAgICAgICAgbV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uID0gc3Rk
OjptYWtlX3VuaXF1ZTxBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uPigpOwotICAgICAgICAKLSAg
ICBBU1NFUlQoYXJjaGl2ZSk7Ci0gICAgaWYgKCFhcmNoaXZlKQotICAgICAgICByZXR1cm47Ci0g
ICAgICAgIAogICAgIG1fYXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi0+YWRkQWxsUmVzb3VyY2Vz
KGFyY2hpdmUpOwogfQogCkBAIC0xMTQ1LDEzICsxMDk4LDEyIEBAIHZvaWQgRG9jdW1lbnRMb2Fk
ZXI6OmFkZEFyY2hpdmVSZXNvdXJjZShSZWY8QXJjaGl2ZVJlc291cmNlPiYmIHJlc291cmNlKQog
ewogICAgIGlmICghbV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uKQogICAgICAgICBtX2FyY2hp
dmVSZXNvdXJjZUNvbGxlY3Rpb24gPSBzdGQ6Om1ha2VfdW5pcXVlPEFyY2hpdmVSZXNvdXJjZUNv
bGxlY3Rpb24+KCk7Ci0gICAgICAgIAogICAgIG1fYXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi0+
YWRkUmVzb3VyY2UoV1RGTW92ZShyZXNvdXJjZSkpOwogfQogCi1QYXNzUmVmUHRyPEFyY2hpdmU+
IERvY3VtZW50TG9hZGVyOjpwb3BBcmNoaXZlRm9yU3ViZnJhbWUoY29uc3QgU3RyaW5nJiBmcmFt
ZU5hbWUsIGNvbnN0IFVSTCYgdXJsKQorUmVmUHRyPEFyY2hpdmU+IERvY3VtZW50TG9hZGVyOjpw
b3BBcmNoaXZlRm9yU3ViZnJhbWUoY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IFVSTCYg
dXJsKQogewotICAgIHJldHVybiBtX2FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24gPyBtX2FyY2hp
dmVSZXNvdXJjZUNvbGxlY3Rpb24tPnBvcFN1YmZyYW1lQXJjaGl2ZShmcmFtZU5hbWUsIHVybCkg
OiBQYXNzUmVmUHRyPEFyY2hpdmU+KG51bGxwdHIpOworICAgIHJldHVybiBtX2FyY2hpdmVSZXNv
dXJjZUNvbGxlY3Rpb24gPyBtX2FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24tPnBvcFN1YmZyYW1l
QXJjaGl2ZShmcmFtZU5hbWUsIHVybCkgOiBudWxscHRyOwogfQogCiB2b2lkIERvY3VtZW50TG9h
ZGVyOjpjbGVhckFyY2hpdmVSZXNvdXJjZXMoKQpAQCAtMTE3MSw3ICsxMTIzLDcgQEAgQXJjaGl2
ZVJlc291cmNlKiBEb2N1bWVudExvYWRlcjo6YXJjaGl2ZVJlc291cmNlRm9yVVJMKGNvbnN0IFVS
TCYgdXJsKSBjb25zdAogewogICAgIGlmICghbV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uKQog
ICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICBBcmNoaXZlUmVzb3VyY2UqIHJlc291cmNlID0g
bV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uLT5hcmNoaXZlUmVzb3VyY2VGb3JVUkwodXJsKTsK
KyAgICBhdXRvKiByZXNvdXJjZSA9IG1fYXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi0+YXJjaGl2
ZVJlc291cmNlRm9yVVJMKHVybCk7CiAgICAgaWYgKCFyZXNvdXJjZSB8fCByZXNvdXJjZS0+c2hv
dWxkSWdub3JlV2hlblVuYXJjaGl2aW5nKCkpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAg
IHJldHVybiByZXNvdXJjZTsKQEAgLTExODIsMTcgKzExMzQsMTYgQEAgUmVmUHRyPEFyY2hpdmVS
ZXNvdXJjZT4gRG9jdW1lbnRMb2FkZXI6Om1haW5SZXNvdXJjZSgpIGNvbnN0CiAgICAgUmVmUHRy
PFNoYXJlZEJ1ZmZlcj4gZGF0YSA9IG1haW5SZXNvdXJjZURhdGEoKTsKICAgICBpZiAoIWRhdGEp
CiAgICAgICAgIGRhdGEgPSBTaGFyZWRCdWZmZXI6OmNyZWF0ZSgpOwotICAgICAgICAKICAgICBh
dXRvJiByZXNwb25zZSA9IHRoaXMtPnJlc3BvbnNlKCk7CiAgICAgcmV0dXJuIEFyY2hpdmVSZXNv
dXJjZTo6Y3JlYXRlKFdURk1vdmUoZGF0YSksIHJlc3BvbnNlLnVybCgpLCByZXNwb25zZS5taW1l
VHlwZSgpLCByZXNwb25zZS50ZXh0RW5jb2RpbmdOYW1lKCksIGZyYW1lKCktPnRyZWUoKS51bmlx
dWVOYW1lKCkpOwogfQogCi1QYXNzUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gRG9jdW1lbnRMb2Fk
ZXI6OnN1YnJlc291cmNlKGNvbnN0IFVSTCYgdXJsKSBjb25zdAorUmVmUHRyPEFyY2hpdmVSZXNv
dXJjZT4gRG9jdW1lbnRMb2FkZXI6OnN1YnJlc291cmNlKGNvbnN0IFVSTCYgdXJsKSBjb25zdAog
ewogICAgIGlmICghaXNDb21taXR0ZWQoKSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAg
Ci0gICAgQ2FjaGVkUmVzb3VyY2UqIHJlc291cmNlID0gbV9jYWNoZWRSZXNvdXJjZUxvYWRlci0+
Y2FjaGVkUmVzb3VyY2UodXJsKTsKKyAgICBhdXRvKiByZXNvdXJjZSA9IG1fY2FjaGVkUmVzb3Vy
Y2VMb2FkZXItPmNhY2hlZFJlc291cmNlKHVybCk7CiAgICAgaWYgKCFyZXNvdXJjZSB8fCAhcmVz
b3VyY2UtPmlzTG9hZGVkKCkpCiAgICAgICAgIHJldHVybiBhcmNoaXZlUmVzb3VyY2VGb3JVUkwo
dXJsKTsKIApAQCAtMTIwNiwxOCArMTE1NywxNiBAQCBQYXNzUmVmUHRyPEFyY2hpdmVSZXNvdXJj
ZT4gRG9jdW1lbnRMb2FkZXI6OnN1YnJlc291cmNlKGNvbnN0IFVSTCYgdXJsKSBjb25zdAogICAg
IHJldHVybiBBcmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShkYXRhLCB1cmwsIHJlc291cmNlLT5yZXNw
b25zZSgpKTsKIH0KIAotVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+PiBEb2N1bWVudExv
YWRlcjo6c3VicmVzb3VyY2VzKCkgY29uc3QKK1ZlY3RvcjxSZWY8QXJjaGl2ZVJlc291cmNlPj4g
RG9jdW1lbnRMb2FkZXI6OnN1YnJlc291cmNlcygpIGNvbnN0CiB7CiAgICAgaWYgKCFpc0NvbW1p
dHRlZCgpKQogICAgICAgICByZXR1cm4geyB9OwogCi0gICAgVmVjdG9yPFJlZlB0cjxBcmNoaXZl
UmVzb3VyY2U+PiBzdWJyZXNvdXJjZXM7Ci0KLSAgICBmb3IgKGF1dG8mIGNhY2hlZFJlc291cmNl
SGFuZGxlIDogbV9jYWNoZWRSZXNvdXJjZUxvYWRlci0+YWxsQ2FjaGVkUmVzb3VyY2VzKCkudmFs
dWVzKCkpIHsKLSAgICAgICAgaWYgKFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IHN1YnJlc291cmNl
ID0gdGhpcy0+c3VicmVzb3VyY2UoVVJMKFBhcnNlZFVSTFN0cmluZywgY2FjaGVkUmVzb3VyY2VI
YW5kbGUtPnVybCgpKSkpCi0gICAgICAgICAgICBzdWJyZXNvdXJjZXMuYXBwZW5kKFdURk1vdmUo
c3VicmVzb3VyY2UpKTsKKyAgICBWZWN0b3I8UmVmPEFyY2hpdmVSZXNvdXJjZT4+IHN1YnJlc291
cmNlczsKKyAgICBmb3IgKGF1dG8mIGhhbmRsZSA6IG1fY2FjaGVkUmVzb3VyY2VMb2FkZXItPmFs
bENhY2hlZFJlc291cmNlcygpLnZhbHVlcygpKSB7CisgICAgICAgIGlmIChhdXRvIHN1YnJlc291
cmNlID0gdGhpcy0+c3VicmVzb3VyY2UoeyBQYXJzZWRVUkxTdHJpbmcsIGhhbmRsZS0+dXJsKCkg
fSkpCisgICAgICAgICAgICBzdWJyZXNvdXJjZXMuYXBwZW5kKHN1YnJlc291cmNlLnJlbGVhc2VO
b25OdWxsKCkpOwogICAgIH0KLQogICAgIHJldHVybiBzdWJyZXNvdXJjZXM7CiB9CiAKQEAgLTEy
MjUsOSArMTE3NCwxMSBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpkZWxpdmVyU3Vic3RpdHV0ZVJl
c291cmNlc0FmdGVyRGVsYXkoKQogewogICAgIGlmIChtX3BlbmRpbmdTdWJzdGl0dXRlUmVzb3Vy
Y2VzLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwotICAgIEFTU0VSVChtX2ZyYW1lICYmIG1f
ZnJhbWUtPnBhZ2UoKSk7CisgICAgQVNTRVJUKG1fZnJhbWUpOworICAgIEFTU0VSVChtX2ZyYW1l
LT5wYWdlKCkpOwogICAgIGlmIChtX2ZyYW1lLT5wYWdlKCktPmRlZmVyc0xvYWRpbmcoKSkKICAg
ICAgICAgcmV0dXJuOworCiAgICAgaWYgKCFtX3N1YnN0aXR1dGVSZXNvdXJjZURlbGl2ZXJ5VGlt
ZXIuaXNBY3RpdmUoKSkKICAgICAgICAgbV9zdWJzdGl0dXRlUmVzb3VyY2VEZWxpdmVyeVRpbWVy
LnN0YXJ0T25lU2hvdCgwKTsKIH0KQEAgLTEyMzYsMTggKzExODcsMTUgQEAgdm9pZCBEb2N1bWVu
dExvYWRlcjo6c3Vic3RpdHV0ZVJlc291cmNlRGVsaXZlcnlUaW1lckZpcmVkKCkKIHsKICAgICBp
ZiAobV9wZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlcy5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVy
bjsKLSAgICBBU1NFUlQobV9mcmFtZSAmJiBtX2ZyYW1lLT5wYWdlKCkpOworICAgIEFTU0VSVCht
X2ZyYW1lKTsKKyAgICBBU1NFUlQobV9mcmFtZS0+cGFnZSgpKTsKICAgICBpZiAobV9mcmFtZS0+
cGFnZSgpLT5kZWZlcnNMb2FkaW5nKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIFN1YnN0aXR1
dGVSZXNvdXJjZU1hcCBjb3B5OwotICAgIGNvcHkuc3dhcChtX3BlbmRpbmdTdWJzdGl0dXRlUmVz
b3VyY2VzKTsKLQotICAgIGZvciAoYXV0byYgZW50cnkgOiBjb3B5KSB7Ci0gICAgICAgIGF1dG8m
IGxvYWRlciA9IGVudHJ5LmtleTsKLSAgICAgICAgU3Vic3RpdHV0ZVJlc291cmNlKiByZXNvdXJj
ZSA9IGVudHJ5LnZhbHVlLmdldCgpOwotCi0gICAgICAgIGlmIChyZXNvdXJjZSkKKyAgICBhdXRv
IHBlbmRpbmdTdWJzdGl0dXRlUmVzb3VyY2VzID0gV1RGTW92ZShtX3BlbmRpbmdTdWJzdGl0dXRl
UmVzb3VyY2VzKTsKKyAgICBmb3IgKGF1dG8mIHBlbmRpbmdTdWJzdGl0dXRlUmVzb3VyY2UgOiBw
ZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlcykgeworICAgICAgICBhdXRvJiBsb2FkZXIgPSBwZW5k
aW5nU3Vic3RpdHV0ZVJlc291cmNlLmtleTsKKyAgICAgICAgaWYgKGF1dG8mIHJlc291cmNlID0g
cGVuZGluZ1N1YnN0aXR1dGVSZXNvdXJjZS52YWx1ZSkKICAgICAgICAgICAgIHJlc291cmNlLT5k
ZWxpdmVyKCpsb2FkZXIpOwogICAgICAgICBlbHNlIHsKICAgICAgICAgICAgIC8vIEEgbnVsbCBy
ZXNvdXJjZSBtZWFucyB0aGF0IHdlIHNob3VsZCBmYWlsIHRoZSBsb2FkLgpAQCAtMTI1OCwxMCAr
MTIwNiwxMiBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpzdWJzdGl0dXRlUmVzb3VyY2VEZWxpdmVy
eVRpbWVyRmlyZWQoKQogfQogCiAjaWZuZGVmIE5ERUJVRworCiBib29sIERvY3VtZW50TG9hZGVy
Ojppc1N1YnN0aXR1dGVMb2FkUGVuZGluZyhSZXNvdXJjZUxvYWRlciogbG9hZGVyKSBjb25zdAog
ewogICAgIHJldHVybiBtX3BlbmRpbmdTdWJzdGl0dXRlUmVzb3VyY2VzLmNvbnRhaW5zKGxvYWRl
cik7CiB9CisKICNlbmRpZgogCiB2b2lkIERvY3VtZW50TG9hZGVyOjpjYW5jZWxQZW5kaW5nU3Vi
c3RpdHV0ZUxvYWQoUmVzb3VyY2VMb2FkZXIqIGxvYWRlcikKQEAgLTEyNzQsOSArMTIyNCwxMCBA
QCB2b2lkIERvY3VtZW50TG9hZGVyOjpjYW5jZWxQZW5kaW5nU3Vic3RpdHV0ZUxvYWQoUmVzb3Vy
Y2VMb2FkZXIqIGxvYWRlcikKIH0KIAogI2lmIEVOQUJMRShXRUJfQVJDSElWRSkgfHwgRU5BQkxF
KE1IVE1MKQorCiBib29sIERvY3VtZW50TG9hZGVyOjpzY2hlZHVsZUFyY2hpdmVMb2FkKFJlc291
cmNlTG9hZGVyJiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKIHsKLSAg
ICBpZiAoQXJjaGl2ZVJlc291cmNlKiByZXNvdXJjZSA9IGFyY2hpdmVSZXNvdXJjZUZvclVSTChy
ZXF1ZXN0LnVybCgpKSkgeworICAgIGlmIChhdXRvKiByZXNvdXJjZSA9IGFyY2hpdmVSZXNvdXJj
ZUZvclVSTChyZXF1ZXN0LnVybCgpKSkgewogICAgICAgICBzY2hlZHVsZVN1YnN0aXR1dGVSZXNv
dXJjZUxvYWQobG9hZGVyLCAqcmVzb3VyY2UpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9
CkBAIC0xMjg0LDIxICsxMjM1LDE5IEBAIGJvb2wgRG9jdW1lbnRMb2FkZXI6OnNjaGVkdWxlQXJj
aGl2ZUxvYWQoUmVzb3VyY2VMb2FkZXImIGxvYWRlciwgY29uc3QgUmVzb3VyY2VSCiAgICAgaWYg
KCFtX2FyY2hpdmUpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIHN3aXRjaCAobV9hcmNo
aXZlLT50eXBlKCkpIHsKICNpZiBFTkFCTEUoV0VCX0FSQ0hJVkUpCi0gICAgY2FzZSBBcmNoaXZl
OjpXZWJBcmNoaXZlOgotICAgICAgICAvLyBXZWJBcmNoaXZlRGVidWdNb2RlIG1lYW5zIHdlIGZh
aWwgbG9hZHMgaW5zdGVhZCBvZiB0cnlpbmcgdG8gZmV0Y2ggdGhlbSBmcm9tIHRoZSBuZXR3b3Jr
IGlmIHRoZXkncmUgbm90IGluIHRoZSBhcmNoaXZlLgotICAgICAgICByZXR1cm4gbV9mcmFtZS0+
c2V0dGluZ3MoKS53ZWJBcmNoaXZlRGVidWdNb2RlRW5hYmxlZCgpICYmIEFyY2hpdmVGYWN0b3J5
Ojppc0FyY2hpdmVNaW1lVHlwZShyZXNwb25zZU1JTUVUeXBlKCkpOwotI2VuZGlmCi0jaWYgRU5B
QkxFKE1IVE1MKQotICAgIGNhc2UgQXJjaGl2ZTo6TUhUTUw6Ci0gICAgICAgIHJldHVybiB0cnVl
OyAvLyBBbHdheXMgZmFpbCB0aGUgbG9hZCBmb3IgcmVzb3VyY2VzIG5vdCBpbmNsdWRlZCBpbiB0
aGUgTUhUTUwuCisgICAgLy8gVGhlIGlkZWEgb2YgV2ViQXJjaGl2ZURlYnVnTW9kZSBpcyB0aGF0
IHdlIHNob3VsZCBmYWlsIGluc3RlYWQgb2YgdHJ5aW5nIHRvIGZldGNoIGZyb20gdGhlIG5ldHdv
cmsuCisgICAgLy8gUmV0dXJuaW5nIHRydWUgZW5zdXJlcyB0aGUgY2FsbGVyIHdpbGwgbm90IHRy
eSB0byBmZXRjaCBmcm9tIHRoZSBuZXR3b3JrLgorICAgIGlmIChtX2ZyYW1lLT5zZXR0aW5ncygp
LndlYkFyY2hpdmVEZWJ1Z01vZGVFbmFibGVkKCkgJiYgcmVzcG9uc2VNSU1FVHlwZSgpID09ICJh
cHBsaWNhdGlvbi94LXdlYmFyY2hpdmUiKQorICAgICAgICByZXR1cm4gdHJ1ZTsKICNlbmRpZgot
ICAgIGRlZmF1bHQ6Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICB9CisKKyAgICAvLyBJZiB3
ZSB3YW50IHRvIGxvYWQgZnJvbSB0aGUgYXJjaGl2ZSBvbmx5LCB0aGVuIHdlIHNob3VsZCBhbHdh
eXMgcmV0dXJuIHRydWUgc28gdGhhdCB0aGUgY2FsbGVyCisgICAgLy8gZG9lcyBub3QgdHJ5IHRv
IGZldGNoIGZvcm0gdGhlIG5ldHdvcmsuCisgICAgcmV0dXJuIG1fYXJjaGl2ZS0+c2hvdWxkTG9h
ZEZyb21BcmNoaXZlT25seSgpOwogfQotI2VuZGlmIC8vIEVOQUJMRShXRUJfQVJDSElWRSkKKwor
I2VuZGlmCiAKIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnNjaGVkdWxlU3Vic3RpdHV0ZVJlc291cmNl
TG9hZChSZXNvdXJjZUxvYWRlciYgbG9hZGVyLCBTdWJzdGl0dXRlUmVzb3VyY2UmIHJlc291cmNl
KQogewpAQCAtMTMwNiwxMCArMTI1NSwxMCBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpzY2hlZHVs
ZVN1YnN0aXR1dGVSZXNvdXJjZUxvYWQoUmVzb3VyY2VMb2FkZXImIGxvYWRlciwgU3VicwogICAg
IGRlbGl2ZXJTdWJzdGl0dXRlUmVzb3VyY2VzQWZ0ZXJEZWxheSgpOwogfQogCi12b2lkIERvY3Vt
ZW50TG9hZGVyOjphZGRSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByKQordm9pZCBE
b2N1bWVudExvYWRlcjo6YWRkUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9u
c2UpCiB7CiAgICAgaWYgKCFtX3N0b3BSZWNvcmRpbmdSZXNwb25zZXMpCi0gICAgICAgIG1fcmVz
cG9uc2VzLmFwcGVuZChyKTsKKyAgICAgICAgbV9yZXNwb25zZXMuYXBwZW5kKHJlc3BvbnNlKTsK
IH0KIAogdm9pZCBEb2N1bWVudExvYWRlcjo6c3RvcFJlY29yZGluZ1Jlc3BvbnNlcygpCkBAIC0x
MzQ0LDIxICsxMjkzLDExIEBAIGJvb2wgRG9jdW1lbnRMb2FkZXI6OnVybEZvckhpc3RvcnlSZWZs
ZWN0c0ZhaWx1cmUoKSBjb25zdAogICAgIHJldHVybiBtX3N1YnN0aXR1dGVEYXRhLmlzVmFsaWQo
KSB8fCBtX3Jlc3BvbnNlLmh0dHBTdGF0dXNDb2RlKCkgPj0gNDAwOwogfQogCi1jb25zdCBVUkwm
IERvY3VtZW50TG9hZGVyOjpvcmlnaW5hbFVSTCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fb3Jp
Z2luYWxSZXF1ZXN0Q29weS51cmwoKTsKLX0KLQotY29uc3QgVVJMJiBEb2N1bWVudExvYWRlcjo6
cmVzcG9uc2VVUkwoKSBjb25zdAotewotICAgIHJldHVybiBtX3Jlc3BvbnNlLnVybCgpOwotfQot
CiBVUkwgRG9jdW1lbnRMb2FkZXI6OmRvY3VtZW50VVJMKCkgY29uc3QKIHsKICAgICBVUkwgdXJs
ID0gc3Vic3RpdHV0ZURhdGEoKS5yZXNwb25zZSgpLnVybCgpOwogI2lmIEVOQUJMRShXRUJfQVJD
SElWRSkKLSAgICBpZiAodXJsLmlzRW1wdHkoKSAmJiBtX2FyY2hpdmUgJiYgbV9hcmNoaXZlLT50
eXBlKCkgPT0gQXJjaGl2ZTo6V2ViQXJjaGl2ZSkKKyAgICBpZiAodXJsLmlzRW1wdHkoKSAmJiBt
X2FyY2hpdmUgJiYgbV9hcmNoaXZlLT5zaG91bGRVc2VNYWluUmVzb3VyY2VVUkwoKSkKICAgICAg
ICAgdXJsID0gbV9hcmNoaXZlLT5tYWluUmVzb3VyY2UoKS0+dXJsKCk7CiAjZW5kaWYKICAgICBp
ZiAodXJsLmlzRW1wdHkoKSkKQEAgLTEzNjgsMjggKzEzMDcsMTUgQEAgVVJMIERvY3VtZW50TG9h
ZGVyOjpkb2N1bWVudFVSTCgpIGNvbnN0CiAgICAgcmV0dXJuIHVybDsKIH0KIAotY29uc3QgU3Ry
aW5nJiBEb2N1bWVudExvYWRlcjo6cmVzcG9uc2VNSU1FVHlwZSgpIGNvbnN0Ci17Ci0gICAgcmV0
dXJuIG1fcmVzcG9uc2UubWltZVR5cGUoKTsKLX0KLQotY29uc3QgU3RyaW5nJiBEb2N1bWVudExv
YWRlcjo6Y3VycmVudENvbnRlbnRUeXBlKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV93cml0ZXIu
bWltZVR5cGUoKTsKLX0KLQogI2lmIFBMQVRGT1JNKElPUykKKwogLy8gRklYTUU6IFRoaXMgbWV0
aG9kIHNlZW1zIHRvIHZpb2xhdGUgdGhlIGVuY2Fwc3VsYXRpb24gb2YgdGhpcyBjbGFzcy4KIHZv
aWQgRG9jdW1lbnRMb2FkZXI6OnNldFJlc3BvbnNlTUlNRVR5cGUoY29uc3QgU3RyaW5nJiByZXNw
b25zZU1pbWVUeXBlKQogewogICAgIG1fcmVzcG9uc2Uuc2V0TWltZVR5cGUocmVzcG9uc2VNaW1l
VHlwZSk7CiB9Ci0jZW5kaWYKIAotY29uc3QgVVJMJiBEb2N1bWVudExvYWRlcjo6dW5yZWFjaGFi
bGVVUkwoKSBjb25zdAotewotICAgIHJldHVybiBtX3N1YnN0aXR1dGVEYXRhLmZhaWxpbmdVUkwo
KTsKLX0KKyNlbmRpZgogCiB2b2lkIERvY3VtZW50TG9hZGVyOjpzZXREZWZlcnNMb2FkaW5nKGJv
b2wgZGVmZXJzKQogewpAQCAtMTY4Miw3ICsxNjA4LDcgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6
Z2V0SWNvbkxvYWREZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcpCiAg
ICAgaWYgKG1faWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrKQogICAgICAgICBtX2ljb25Mb2FkRGVj
aXNpb25DYWxsYmFjay0+aW52YWxpZGF0ZSgpOwogICAgIG1faWNvbkxvYWREZWNpc2lvbkNhbGxi
YWNrID0gSWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrOjpjcmVhdGUodGhpcywgaWNvbkxvYWREZWNp
c2lvbkNhbGxiYWNrKTsKLSAgICBpY29uRGF0YWJhc2UoKS5sb2FkRGVjaXNpb25Gb3JJY29uVVJM
KHVybFN0cmluZywgbV9pY29uTG9hZERlY2lzaW9uQ2FsbGJhY2spOworICAgIGljb25EYXRhYmFz
ZSgpLmxvYWREZWNpc2lvbkZvckljb25VUkwodXJsU3RyaW5nLCAqbV9pY29uTG9hZERlY2lzaW9u
Q2FsbGJhY2spOwogfQogCiB2b2lkIERvY3VtZW50TG9hZGVyOjpjb250aW51ZUljb25Mb2FkV2l0
aERlY2lzaW9uKEljb25Mb2FkRGVjaXNpb24gZGVjaXNpb24pCkBAIC0xNzAzLDcgKzE2MjksNyBA
QCB2b2lkIERvY3VtZW50TG9hZGVyOjpnZXRJY29uRGF0YUZvckljb25VUkwoY29uc3QgU3RyaW5n
JiB1cmxTdHJpbmcpCiAgICAgaWYgKG1faWNvbkRhdGFDYWxsYmFjaykKICAgICAgICAgbV9pY29u
RGF0YUNhbGxiYWNrLT5pbnZhbGlkYXRlKCk7CiAgICAgbV9pY29uRGF0YUNhbGxiYWNrID0gSWNv
bkRhdGFDYWxsYmFjazo6Y3JlYXRlKHRoaXMsIGljb25EYXRhQ2FsbGJhY2spOwotICAgIGljb25E
YXRhYmFzZSgpLmljb25EYXRhRm9ySWNvblVSTCh1cmxTdHJpbmcsIG1faWNvbkRhdGFDYWxsYmFj
ayk7CisgICAgaWNvbkRhdGFiYXNlKCkuaWNvbkRhdGFGb3JJY29uVVJMKHVybFN0cmluZywgKm1f
aWNvbkRhdGFDYWxsYmFjayk7CiB9CiAKIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnN0YXJ0SWNvbkxv
YWRpbmcoKQpAQCAtMTc0OSw3ICsxNjc1LDcgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6ZmluaXNo
ZWRMb2FkaW5nSWNvbihJY29uTG9hZGVyJiBsb2FkZXIsIFNoYXJlZEJ1ZmZlciogYnVmZmUKIHZv
aWQgRG9jdW1lbnRMb2FkZXI6OmRpc3BhdGNoT25sb2FkRXZlbnRzKCkKIHsKICAgICBtX3dhc09u
bG9hZERpc3BhdGNoZWQgPSB0cnVlOwotICAgIGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPnN0b3BE
ZWZlcnJpbmdFdmVudHMoKTsKKyAgICBtX2FwcGxpY2F0aW9uQ2FjaGVIb3N0LT5zdG9wRGVmZXJy
aW5nRXZlbnRzKCk7CiB9CiAKIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnNldFRyaWdnZXJpbmdBY3Rp
b24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgYWN0aW9uKQpAQCAtMTc4OSwyMyArMTcxNSwxOCBA
QCB2b2lkIERvY3VtZW50TG9hZGVyOjphZGRQZW5kaW5nQ29udGVudEV4dGVuc2lvbkRpc3BsYXlO
b25lU2VsZWN0b3IoY29uc3QgU3RyaW5nJgogfQogI2VuZGlmCiAKLSNpZiBFTkFCTEUoQ09OVEVO
VF9GSUxURVJJTkcpCi1Db250ZW50RmlsdGVyKiBEb2N1bWVudExvYWRlcjo6Y29udGVudEZpbHRl
cigpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fY29udGVudEZpbHRlci5nZXQoKTsKLX0KLSNlbmRp
ZgotCiBib29sIERvY3VtZW50TG9hZGVyOjppc0Fsd2F5c09uTG9nZ2luZ0FsbG93ZWQoKSBjb25z
dAogewotICAgIHJldHVybiBtX2ZyYW1lID8gbV9mcmFtZS0+aXNBbHdheXNPbkxvZ2dpbmdBbGxv
d2VkKCkgOiB0cnVlOworICAgIHJldHVybiAhbV9mcmFtZSB8fCBtX2ZyYW1lLT5pc0Fsd2F5c09u
TG9nZ2luZ0FsbG93ZWQoKTsKIH0KIAogI2lmIFVTRShRVUlDS19MT09LKQorCiB2b2lkIERvY3Vt
ZW50TG9hZGVyOjpzZXRRdWlja0xvb2tIYW5kbGUoc3RkOjp1bmlxdWVfcHRyPFF1aWNrTG9va0hh
bmRsZT4gcXVpY2tMb29rSGFuZGxlKQogewogICAgIG1fcXVpY2tMb29rSGFuZGxlID0gV1RGTW92
ZShxdWlja0xvb2tIYW5kbGUpOwogfQorCiAjZW5kaWYKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmggYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuaAppbmRleCBkNzBiMzliODZmODJj
MDcyM2QzMmZhNmU4MTU2NTkyNDg3ZTY2MDkyLi44N2U0ZWI3NjNiYWVhMWRkNjU4NTM0ZDgyZjk0
NzlhZjBjMjg1NWVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRM
b2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuaApAQCAt
MSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNiBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKQEAgLTc2LDggKzc2LDcgQEAg
Y2xhc3MgU2hhcmVkQnVmZmVyOwogY2xhc3MgU3VicmVzb3VyY2VMb2FkZXI7CiBjbGFzcyBTdWJz
dGl0dXRlUmVzb3VyY2U7CiAKLXR5cGVkZWYgSGFzaE1hcDx1bnNpZ25lZCBsb25nLCBSZWZQdHI8
UmVzb3VyY2VMb2FkZXI+PiBSZXNvdXJjZUxvYWRlck1hcDsKLXR5cGVkZWYgVmVjdG9yPFJlc291
cmNlUmVzcG9uc2U+IFJlc3BvbnNlVmVjdG9yOwordXNpbmcgUmVzb3VyY2VMb2FkZXJNYXAgPSBI
YXNoTWFwPHVuc2lnbmVkIGxvbmcsIFJlZlB0cjxSZXNvdXJjZUxvYWRlcj4+OwogCiBjbGFzcyBE
b2N1bWVudExvYWRlciA6IHB1YmxpYyBSZWZDb3VudGVkPERvY3VtZW50TG9hZGVyPiwgcHJpdmF0
ZSBDYWNoZWRSYXdSZXNvdXJjZUNsaWVudCB7CiAgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7
CkBAIC0xNTAsMTQgKzE0OSwxNSBAQCBwdWJsaWM6CiAjZW5kaWYKIAogI2lmIEVOQUJMRShXRUJf
QVJDSElWRSkgfHwgRU5BQkxFKE1IVE1MKQotICAgIHZvaWQgc2V0QXJjaGl2ZShQYXNzUmVmUHRy
PEFyY2hpdmU+KTsKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGFkZEFsbEFyY2hpdmVSZXNvdXJj
ZXMoQXJjaGl2ZSopOworICAgIHZvaWQgc2V0QXJjaGl2ZShSZWY8QXJjaGl2ZT4mJik7CisgICAg
V0VCQ09SRV9FWFBPUlQgdm9pZCBhZGRBbGxBcmNoaXZlUmVzb3VyY2VzKEFyY2hpdmUmKTsKICAg
ICBXRUJDT1JFX0VYUE9SVCB2b2lkIGFkZEFyY2hpdmVSZXNvdXJjZShSZWY8QXJjaGl2ZVJlc291
cmNlPiYmKTsKLSAgICBQYXNzUmVmUHRyPEFyY2hpdmU+IHBvcEFyY2hpdmVGb3JTdWJmcmFtZShj
b25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgY29uc3QgVVJMJik7CisgICAgUmVmUHRyPEFyY2hpdmU+
IHBvcEFyY2hpdmVGb3JTdWJmcmFtZShjb25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgY29uc3QgVVJM
Jik7CiAgICAgV0VCQ09SRV9FWFBPUlQgU2hhcmVkQnVmZmVyKiBwYXJzZWRBcmNoaXZlRGF0YSgp
IGNvbnN0OwogCiAgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBzY2hlZHVsZUFyY2hpdmVMb2FkKFJl
c291cmNlTG9hZGVyJiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7CiAjZW5kaWYKKwogICAgIHZv
aWQgc2NoZWR1bGVTdWJzdGl0dXRlUmVzb3VyY2VMb2FkKFJlc291cmNlTG9hZGVyJiwgU3Vic3Rp
dHV0ZVJlc291cmNlJik7CiAKICAgICAvLyBSZXR1cm4gdGhlIEFyY2hpdmVSZXNvdXJjZSBmb3Ig
dGhlIFVSTCBvbmx5IHdoZW4gbG9hZGluZyBhbiBBcmNoaXZlCkBAIC0xNjYsOSArMTY2LDEwIEBA
IHB1YmxpYzoKICAgICBXRUJDT1JFX0VYUE9SVCBSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBtYWlu
UmVzb3VyY2UoKSBjb25zdDsKIAogICAgIC8vIFJldHVybiBhbiBBcmNoaXZlUmVzb3VyY2UgZm9y
IHRoZSBVUkwsIGVpdGhlciBjcmVhdGluZyBmcm9tIGxpdmUgZGF0YSBvcgotICAgIC8vIHB1bGxp
bmcgZnJvbSB0aGUgQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbgotICAgIFdFQkNPUkVfRVhQT1JU
IFBhc3NSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBzdWJyZXNvdXJjZShjb25zdCBVUkwmKSBjb25z
dDsKLSAgICBXRUJDT1JFX0VYUE9SVCBWZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+IHN1
YnJlc291cmNlcygpIGNvbnN0OworICAgIC8vIHB1bGxpbmcgZnJvbSB0aGUgQXJjaGl2ZVJlc291
cmNlQ29sbGVjdGlvbi4KKyAgICBXRUJDT1JFX0VYUE9SVCBSZWZQdHI8QXJjaGl2ZVJlc291cmNl
PiBzdWJyZXNvdXJjZShjb25zdCBVUkwmKSBjb25zdDsKKworICAgIFdFQkNPUkVfRVhQT1JUIFZl
Y3RvcjxSZWY8QXJjaGl2ZVJlc291cmNlPj4gc3VicmVzb3VyY2VzKCkgY29uc3Q7CiAKICNpZm5k
ZWYgTkRFQlVHCiAgICAgYm9vbCBpc1N1YnN0aXR1dGVMb2FkUGVuZGluZyhSZXNvdXJjZUxvYWRl
ciopIGNvbnN0OwpAQCAtMTc2LDcgKzE3Nyw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGNhbmNlbFBl
bmRpbmdTdWJzdGl0dXRlTG9hZChSZXNvdXJjZUxvYWRlciopOyAgIAogICAgIAogICAgIHZvaWQg
YWRkUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwotICAgIGNvbnN0IFJlc3BvbnNl
VmVjdG9yJiByZXNwb25zZXMoKSBjb25zdCB7IHJldHVybiBtX3Jlc3BvbnNlczsgfQorICAgIGNv
bnN0IFZlY3RvcjxSZXNvdXJjZVJlc3BvbnNlPiYgcmVzcG9uc2VzKCkgY29uc3QgeyByZXR1cm4g
bV9yZXNwb25zZXM7IH0KIAogICAgIGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIHRyaWdnZXJpbmdB
Y3Rpb24oKSBjb25zdCB7IHJldHVybiBtX3RyaWdnZXJpbmdBY3Rpb247IH0KICAgICB2b2lkIHNl
dFRyaWdnZXJpbmdBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYpOwpAQCAtMjQwLDE3ICsy
NDEsNyBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHNldERlZmVyTWFpblJlc291cmNlRGF0YUxvYWQo
Ym9vbCBkZWZlcikgeyBtX2RlZmVyTWFpblJlc291cmNlRGF0YUxvYWQgPSBkZWZlcjsgfQogICAg
IAotICAgIHZvaWQgZGlkVGVsbENsaWVudEFib3V0TG9hZChjb25zdCBTdHJpbmcmIHVybCkKLSAg
ICB7IAotI2lmICFQTEFURk9STShDT0NPQSkKLSAgICAgICAgLy8gRG9uJ3QgaW5jbHVkZSBkYXRh
IHVybHMgaGVyZSwgYXMgaWYgYSBsb3Qgb2YgZGF0YSBpcyBsb2FkZWQKLSAgICAgICAgLy8gdGhh
dCB3YXksIHdlIGhvbGQgb24gdG8gdGhlIChsYXJnZSkgdXJsIHN0cmluZyBmb3IgdG9vIGxvbmcu
Ci0gICAgICAgIGlmIChwcm90b2NvbElzKHVybCwgImRhdGEiKSkKLSAgICAgICAgICAgIHJldHVy
bjsKLSNlbmRpZgotICAgICAgICBpZiAoIXVybC5pc0VtcHR5KCkpCi0gICAgICAgICAgICBtX3Jl
c291cmNlc0NsaWVudEtub3dzQWJvdXQuYWRkKHVybCk7Ci0gICAgfQorICAgIHZvaWQgZGlkVGVs
bENsaWVudEFib3V0TG9hZChjb25zdCBTdHJpbmcmIHVybCk7CiAgICAgYm9vbCBoYXZlVG9sZENs
aWVudEFib3V0TG9hZChjb25zdCBTdHJpbmcmIHVybCkgeyByZXR1cm4gbV9yZXNvdXJjZXNDbGll
bnRLbm93c0Fib3V0LmNvbnRhaW5zKHVybCk7IH0KICAgICB2b2lkIHJlY29yZE1lbW9yeUNhY2hl
TG9hZEZvckZ1dHVyZUNsaWVudE5vdGlmaWNhdGlvbihjb25zdCBSZXNvdXJjZVJlcXVlc3QmKTsK
ICAgICB2b2lkIHRha2VNZW1vcnlDYWNoZUxvYWRzRm9yQ2xpZW50Tm90aWZpY2F0aW9uKFZlY3Rv
cjxSZXNvdXJjZVJlcXVlc3Q+JiBsb2Fkcyk7CkBAIC0yNTgsMTEgKzI0OSwxMSBAQCBwdWJsaWM6
CiAgICAgTG9hZFRpbWluZyYgdGltaW5nKCkgeyByZXR1cm4gbV9sb2FkVGltaW5nOyB9CiAgICAg
dm9pZCByZXNldFRpbWluZygpIHsgbV9sb2FkVGltaW5nID0gTG9hZFRpbWluZygpOyB9CiAKLSAg
ICAvLyBUaGUgV2ViS2l0IGxheWVyIGNhbGxzIHRoaXMgZnVuY3Rpb24gd2hlbiBpdCdzIHJlYWR5
IGZvciB0aGUgZGF0YSB0bwotICAgIC8vIGFjdHVhbGx5IGJlIGFkZGVkIHRvIHRoZSBkb2N1bWVu
dC4KKyAgICAvLyBUaGUgV2ViS2l0IGxheWVyIGNhbGxzIHRoaXMgZnVuY3Rpb24gd2hlbiBpdCdz
IHJlYWR5IGZvciB0aGUgZGF0YSB0byBhY3R1YWxseSBiZSBhZGRlZCB0byB0aGUgZG9jdW1lbnQu
CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBjb21taXREYXRhKGNvbnN0IGNoYXIqIGJ5dGVzLCBz
aXplX3QgbGVuZ3RoKTsKIAotICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0KiBhcHBsaWNhdGlvbkNh
Y2hlSG9zdCgpIGNvbnN0IHsgcmV0dXJuIG1fYXBwbGljYXRpb25DYWNoZUhvc3QuZ2V0KCk7IH0K
KyAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdCYgYXBwbGljYXRpb25DYWNoZUhvc3QoKSBjb25zdDsK
KyAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdCogYXBwbGljYXRpb25DYWNoZUhvc3RVbmxlc3NCZWlu
Z0Rlc3Ryb3llZCgpIGNvbnN0OwogCiAgICAgdm9pZCBjaGVja0xvYWRDb21wbGV0ZSgpOwogCkBA
IC0yOTcsNyArMjg4LDcgQEAgcHJvdGVjdGVkOgogCiAgICAgV0VCQ09SRV9FWFBPUlQgdmlydHVh
bCB2b2lkIGF0dGFjaFRvRnJhbWUoKTsKIAotICAgIGJvb2wgbV9kZWZlck1haW5SZXNvdXJjZURh
dGFMb2FkOworICAgIGJvb2wgbV9kZWZlck1haW5SZXNvdXJjZURhdGFMb2FkIHsgdHJ1ZSB9Owog
CiBwcml2YXRlOgogICAgIERvY3VtZW50KiBkb2N1bWVudCgpIGNvbnN0OwpAQCAtMzU4LDcgKzM0
OSw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBjYW5jZWxQb2xpY3lDaGVja0lmTmVlZGVkKCk7CiAg
ICAgdm9pZCBiZWNvbWVNYWluUmVzb3VyY2VDbGllbnQoKTsKIAotICAgIEZyYW1lKiBtX2ZyYW1l
OworICAgIEZyYW1lKiBtX2ZyYW1lIHsgbnVsbHB0ciB9OwogICAgIFJlZjxDYWNoZWRSZXNvdXJj
ZUxvYWRlcj4gbV9jYWNoZWRSZXNvdXJjZUxvYWRlcjsKIAogICAgIENhY2hlZFJlc291cmNlSGFu
ZGxlPENhY2hlZFJhd1Jlc291cmNlPiBtX21haW5SZXNvdXJjZTsKQEAgLTM5MCwxNSArMzgxLDE1
IEBAIHByaXZhdGU6CiAgICAgUmVzb3VyY2VFcnJvciBtX21haW5Eb2N1bWVudEVycm9yOyAgICAK
IAogICAgIGJvb2wgbV9vcmlnaW5hbFN1YnN0aXR1dGVEYXRhV2FzVmFsaWQ7Ci0gICAgYm9vbCBt
X2NvbW1pdHRlZDsKLSAgICBib29sIG1faXNTdG9wcGluZzsKLSAgICBib29sIG1fZ290Rmlyc3RC
eXRlOwotICAgIGJvb2wgbV9pc0NsaWVudFJlZGlyZWN0OwotICAgIGJvb2wgbV9pc0xvYWRpbmdN
dWx0aXBhcnRDb250ZW50OworICAgIGJvb2wgbV9jb21taXR0ZWQgeyBmYWxzZSB9OworICAgIGJv
b2wgbV9pc1N0b3BwaW5nIHsgZmFsc2UgfTsKKyAgICBib29sIG1fZ290Rmlyc3RCeXRlIHsgZmFs
c2UgfTsKKyAgICBib29sIG1faXNDbGllbnRSZWRpcmVjdCB7IGZhbHNlIH07CisgICAgYm9vbCBt
X2lzTG9hZGluZ011bHRpcGFydENvbnRlbnQgeyBmYWxzZSB9OwogCiAgICAgLy8gRklYTUU6IERv
Y3VtZW50OjptX3Byb2Nlc3NpbmdMb2FkRXZlbnQgYW5kIERvY3VtZW50TG9hZGVyOjptX3dhc09u
bG9hZERpc3BhdGNoZWQgYXJlIHJvdWdobHkgdGhlIHNhbWUKICAgICAvLyBhbmQgc2hvdWxkIGJl
IG1lcmdlZC4KLSAgICBib29sIG1fd2FzT25sb2FkRGlzcGF0Y2hlZDsKKyAgICBib29sIG1fd2Fz
T25sb2FkRGlzcGF0Y2hlZCB7IGZhbHNlIH07CiAKICAgICBTdHJpbmdXaXRoRGlyZWN0aW9uIG1f
cGFnZVRpdGxlOwogCkBAIC00MTUsOCArNDA2LDggQEAgcHJpdmF0ZToKICAgICAvLyBXZSByZXRh
aW4gYWxsIHRoZSByZWNlaXZlZCByZXNwb25zZXMgc28gd2UgY2FuIHBsYXkgYmFjayB0aGUKICAg
ICAvLyBXZWJSZXNvdXJjZUxvYWREZWxlZ2F0ZSBtZXNzYWdlcyBpZiB0aGUgaXRlbSBpcyBsb2Fk
ZWQgZnJvbSB0aGUKICAgICAvLyBwYWdlIGNhY2hlLgotICAgIFJlc3BvbnNlVmVjdG9yIG1fcmVz
cG9uc2VzOwotICAgIGJvb2wgbV9zdG9wUmVjb3JkaW5nUmVzcG9uc2VzOworICAgIFZlY3RvcjxS
ZXNvdXJjZVJlc3BvbnNlPiBtX3Jlc3BvbnNlczsKKyAgICBib29sIG1fc3RvcFJlY29yZGluZ1Jl
c3BvbnNlcyB7IGZhbHNlIH07CiAgICAgCiAgICAgdHlwZWRlZiBIYXNoTWFwPFJlZlB0cjxSZXNv
dXJjZUxvYWRlcj4sIFJlZlB0cjxTdWJzdGl0dXRlUmVzb3VyY2U+PiBTdWJzdGl0dXRlUmVzb3Vy
Y2VNYXA7CiAgICAgU3Vic3RpdHV0ZVJlc291cmNlTWFwIG1fcGVuZGluZ1N1YnN0aXR1dGVSZXNv
dXJjZXM7CkBAIC00MzIsMTMgKzQyMywxMyBAQCBwcml2YXRlOgogICAgIFZlY3RvcjxSZXNvdXJj
ZVJlcXVlc3Q+IG1fcmVzb3VyY2VzTG9hZGVkRnJvbU1lbW9yeUNhY2hlRm9yQ2xpZW50Tm90aWZp
Y2F0aW9uOwogICAgIAogICAgIFN0cmluZyBtX2NsaWVudFJlZGlyZWN0U291cmNlRm9ySGlzdG9y
eTsKLSAgICBib29sIG1fZGlkQ3JlYXRlR2xvYmFsSGlzdG9yeUVudHJ5OworICAgIGJvb2wgbV9k
aWRDcmVhdGVHbG9iYWxIaXN0b3J5RW50cnkgeyBmYWxzZSB9OwogCi0gICAgYm9vbCBtX2xvYWRp
bmdNYWluUmVzb3VyY2U7CisgICAgYm9vbCBtX2xvYWRpbmdNYWluUmVzb3VyY2UgeyBmYWxzZSB9
OwogICAgIExvYWRUaW1pbmcgbV9sb2FkVGltaW5nOwogCi0gICAgZG91YmxlIG1fdGltZU9mTGFz
dERhdGFSZWNlaXZlZDsKLSAgICB1bnNpZ25lZCBsb25nIG1faWRlbnRpZmllckZvckxvYWRXaXRo
b3V0UmVzb3VyY2VMb2FkZXI7CisgICAgZG91YmxlIG1fdGltZU9mTGFzdERhdGFSZWNlaXZlZCB7
IDAgfTsKKyAgICB1bnNpZ25lZCBsb25nIG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3Vy
Y2VMb2FkZXIgeyAwIH07CiAKICAgICBEb2N1bWVudExvYWRlclRpbWVyIG1fZGF0YUxvYWRUaW1l
cjsKICAgICBib29sIG1fd2FpdGluZ0ZvckNvbnRlbnRQb2xpY3kgeyBmYWxzZSB9OwpAQCAtNDUy
LDcgKzQ0Myw3IEBAIHByaXZhdGU6CiAgICAgSGFzaE1hcDx1aW50NjRfdCwgTGlua0ljb24+IG1f
aWNvbnNQZW5kaW5nTG9hZERlY2lzaW9uOwogICAgIEhhc2hNYXA8c3RkOjp1bmlxdWVfcHRyPElj
b25Mb2FkZXI+LCB1aW50NjRfdD4gbV9pY29uTG9hZGVyczsKIAotICAgIGJvb2wgbV9zdWJyZXNv
dXJjZUxvYWRlcnNBcmVQYWdlQ2FjaGVBY2NlcHRhYmxlOworICAgIGJvb2wgbV9zdWJyZXNvdXJj
ZUxvYWRlcnNBcmVQYWdlQ2FjaGVBY2NlcHRhYmxlIHsgZmFsc2UgfTsKICAgICBTaG91bGRPcGVu
RXh0ZXJuYWxVUkxzUG9saWN5IG1fc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSB7IFNob3Vs
ZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3k6OlNob3VsZE5vdEFsbG93IH07CiAKICAgICBzdGQ6OnVu
aXF1ZV9wdHI8QXBwbGljYXRpb25DYWNoZUhvc3Q+IG1fYXBwbGljYXRpb25DYWNoZUhvc3Q7CkBA
IC00ODcsNCArNDc4LDg3IEBAIGlubGluZSB2b2lkIERvY3VtZW50TG9hZGVyOjp0YWtlTWVtb3J5
Q2FjaGVMb2Fkc0ZvckNsaWVudE5vdGlmaWNhdGlvbihWZWN0b3I8UmVzCiAgICAgbV9yZXNvdXJj
ZXNMb2FkZWRGcm9tTWVtb3J5Q2FjaGVGb3JDbGllbnROb3RpZmljYXRpb24uY2xlYXIoKTsKIH0K
IAoraW5saW5lIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgRG9jdW1lbnRMb2FkZXI6Om9yaWdpbmFs
UmVxdWVzdCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fb3JpZ2luYWxSZXF1ZXN0OworfQorCitp
bmxpbmUgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiBEb2N1bWVudExvYWRlcjo6b3JpZ2luYWxSZXF1
ZXN0Q29weSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fb3JpZ2luYWxSZXF1ZXN0Q29weTsKK30K
KworaW5saW5lIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgRG9jdW1lbnRMb2FkZXI6OnJlcXVlc3Qo
KSBjb25zdAoreworICAgIHJldHVybiBtX3JlcXVlc3Q7Cit9CisKK2lubGluZSBSZXNvdXJjZVJl
cXVlc3QmIERvY3VtZW50TG9hZGVyOjpyZXF1ZXN0KCkKK3sKKyAgICByZXR1cm4gbV9yZXF1ZXN0
OworfQorCitpbmxpbmUgY29uc3QgVVJMJiBEb2N1bWVudExvYWRlcjo6dXJsKCkgY29uc3QKK3sK
KyAgICByZXR1cm4gbV9yZXF1ZXN0LnVybCgpOworfQorCitpbmxpbmUgY29uc3QgVVJMJiBEb2N1
bWVudExvYWRlcjo6b3JpZ2luYWxVUkwoKSBjb25zdAoreworICAgIHJldHVybiBtX29yaWdpbmFs
UmVxdWVzdENvcHkudXJsKCk7Cit9CisKK2lubGluZSBjb25zdCBVUkwmIERvY3VtZW50TG9hZGVy
OjpyZXNwb25zZVVSTCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fcmVzcG9uc2UudXJsKCk7Cit9
CisKK2lubGluZSBjb25zdCBTdHJpbmcmIERvY3VtZW50TG9hZGVyOjpyZXNwb25zZU1JTUVUeXBl
KCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9yZXNwb25zZS5taW1lVHlwZSgpOworfQorCitpbmxp
bmUgY29uc3QgU3RyaW5nJiBEb2N1bWVudExvYWRlcjo6Y3VycmVudENvbnRlbnRUeXBlKCkgY29u
c3QKK3sKKyAgICByZXR1cm4gbV93cml0ZXIubWltZVR5cGUoKTsKK30KKworaW5saW5lIGNvbnN0
IFVSTCYgRG9jdW1lbnRMb2FkZXI6OnVucmVhY2hhYmxlVVJMKCkgY29uc3QKK3sKKyAgICByZXR1
cm4gbV9zdWJzdGl0dXRlRGF0YS5mYWlsaW5nVVJMKCk7Cit9CisKK2lubGluZSBBcHBsaWNhdGlv
bkNhY2hlSG9zdCYgRG9jdW1lbnRMb2FkZXI6OmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkgY29uc3QK
K3sKKyAgICAvLyBGb3IgYSBzaG9ydCB0aW1lIHdoaWxlIHRoZSBkb2N1bWVudCBsb2FkZXIgaXMg
YmVpbmcgZGVzdHJveWVkLCBtX2FwcGxpY2F0aW9uQ2FjaGVIb3N0IGlzIG51bGwuCisgICAgLy8g
SXQncyBub3QgYWNjZXB0YWJsZSB0byBjYWxsIHRoaXMgZnVuY3Rpb24gZHVyaW5nIHRoYXQgdGlt
ZS4KKyAgICBBU1NFUlQobV9hcHBsaWNhdGlvbkNhY2hlSG9zdCk7CisgICAgcmV0dXJuICptX2Fw
cGxpY2F0aW9uQ2FjaGVIb3N0OworfQorCitpbmxpbmUgQXBwbGljYXRpb25DYWNoZUhvc3QqIERv
Y3VtZW50TG9hZGVyOjphcHBsaWNhdGlvbkNhY2hlSG9zdFVubGVzc0JlaW5nRGVzdHJveWVkKCkg
Y29uc3QKK3sKKyAgICByZXR1cm4gbV9hcHBsaWNhdGlvbkNhY2hlSG9zdC5nZXQoKTsKK30KKwor
I2lmIEVOQUJMRShDT05URU5UX0ZJTFRFUklORykKKworaW5saW5lIENvbnRlbnRGaWx0ZXIqIERv
Y3VtZW50TG9hZGVyOjpjb250ZW50RmlsdGVyKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9jb250
ZW50RmlsdGVyLmdldCgpOworfQorCisjZW5kaWYKKworaW5saW5lIHZvaWQgRG9jdW1lbnRMb2Fk
ZXI6OmRpZFRlbGxDbGllbnRBYm91dExvYWQoY29uc3QgU3RyaW5nJiB1cmwpCit7CisjaWYgIVBM
QVRGT1JNKENPQ09BKQorICAgIC8vIERvbid0IGluY2x1ZGUgZGF0YSBVUkxzIGhlcmUsIGFzIGlm
IGEgbG90IG9mIGRhdGEgaXMgbG9hZGVkIHRoYXQgd2F5LCB3ZSBob2xkIG9uIHRvIHRoZSAobGFy
Z2UpIFVSTCBzdHJpbmcgZm9yIHRvbyBsb25nLgorICAgIGlmIChwcm90b2NvbElzKHVybCwgImRh
dGEiKSkKKyAgICAgICAgcmV0dXJuOworI2VuZGlmCisgICAgaWYgKCF1cmwuaXNFbXB0eSgpKQor
ICAgICAgICBtX3Jlc291cmNlc0NsaWVudEtub3dzQWJvdXQuYWRkKHVybCk7Cit9CisKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuY3BwIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5jcHAKaW5kZXggZTBmNmU1YjNlMzRhOGExZThk
MzE0OWMwNDJlMWRhMGEzNzNkNGRhOS4uZWVmYzRhYTgzODMxMDQ0NmU5MjFkNGYxNzI5NTgyZTgy
NGM4YTVmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5jcHAKQEAgLTQ2LDYg
KzQ2LDcgQEAKICNpbmNsdWRlICJIVE1MRm9ybUVsZW1lbnQuaCIKICNpbmNsdWRlICJJblByb2Nl
c3NJREJTZXJ2ZXIuaCIKICNpbmNsdWRlICJJbnNwZWN0b3JDbGllbnQuaCIKKyNpbmNsdWRlICJO
ZXR3b3JrU3RvcmFnZVNlc3Npb24uaCIKICNpbmNsdWRlICJQYWdlLmgiCiAjaW5jbHVkZSAiUGFn
ZUNvbmZpZ3VyYXRpb24uaCIKICNpbmNsdWRlICJQYXltZW50Q29vcmRpbmF0b3JDbGllbnQuaCIK
QEAgLTE3MSw4ICsxNzIsOCBAQCBwcml2YXRlOgogICAgIHZvaWQgcmVxdWVzdENhbmRpZGF0ZXNG
b3JTZWxlY3Rpb24oY29uc3QgVmlzaWJsZVNlbGVjdGlvbiYpIGZpbmFsIHsgfQogICAgIHZvaWQg
aGFuZGxlQWNjZXB0ZWRDYW5kaWRhdGVXaXRoU29mdFNwYWNlcyhUZXh0Q2hlY2tpbmdSZXN1bHQp
IGZpbmFsIHsgfQogCi0gICAgdm9pZCByZWdpc3RlclVuZG9TdGVwKFBhc3NSZWZQdHI8VW5kb1N0
ZXA+KSBmaW5hbDsKLSAgICB2b2lkIHJlZ2lzdGVyUmVkb1N0ZXAoUGFzc1JlZlB0cjxVbmRvU3Rl
cD4pIGZpbmFsOworICAgIHZvaWQgcmVnaXN0ZXJVbmRvU3RlcChVbmRvU3RlcCYpIGZpbmFsOwor
ICAgIHZvaWQgcmVnaXN0ZXJSZWRvU3RlcChVbmRvU3RlcCYpIGZpbmFsOwogICAgIHZvaWQgY2xl
YXJVbmRvUmVkb09wZXJhdGlvbnMoKSBmaW5hbCB7IH0KIAogICAgIGJvb2wgY2FuQ29weUN1dChG
cmFtZSosIGJvb2wgZGVmYXVsdFZhbHVlKSBjb25zdCBmaW5hbCB7IHJldHVybiBkZWZhdWx0VmFs
dWU7IH0KQEAgLTMzMSwxNCArMzMyLDE0IEBAIGNsYXNzIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQg
ZmluYWwgOiBwdWJsaWMgRnJhbWVMb2FkZXJDbGllbnQgewogICAgIHZvaWQgZGlzcGF0Y2hTaG93
KCkgZmluYWwgeyB9CiAKICAgICB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yUmVzcG9uc2Uo
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIEZyYW1lUG9s
aWN5RnVuY3Rpb24pIGZpbmFsIHsgfQotICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JO
ZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJlc291cmNlUmVx
dWVzdCYsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwgY29uc3QgU3RyaW5nJiwgRnJhbWVQb2xpY3lG
dW5jdGlvbikgZmluYWw7Ci0gICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRp
b25BY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYs
IFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwgRnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7CisgICAg
dm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBOYXZpZ2F0
aW9uQWN0aW9uJiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgRm9ybVN0YXRlKiwgY29uc3QgU3Ry
aW5nJiwgRnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERlY2lk
ZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0
IFJlc291cmNlUmVxdWVzdCYsIEZvcm1TdGF0ZSosIEZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFs
OwogICAgIHZvaWQgY2FuY2VsUG9saWN5Q2hlY2soKSBmaW5hbCB7IH0KIAogICAgIHZvaWQgZGlz
cGF0Y2hVbmFibGVUb0ltcGxlbWVudFBvbGljeShjb25zdCBSZXNvdXJjZUVycm9yJikgZmluYWwg
eyB9CiAKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChQYXNzUmVmUHRyPEZv
cm1TdGF0ZT4pIGZpbmFsOwotICAgIHZvaWQgZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShQYXNzUmVm
UHRyPEZvcm1TdGF0ZT4sIEZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFsOworICAgIHZvaWQgZGlz
cGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJlZjxGb3JtU3RhdGU+JiYpIGZpbmFsOworICAgIHZv
aWQgZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShGb3JtU3RhdGUmLCBGcmFtZVBvbGljeUZ1bmN0aW9u
KSBmaW5hbDsKIAogICAgIHZvaWQgcmV2ZXJ0VG9Qcm92aXNpb25hbFN0YXRlKERvY3VtZW50TG9h
ZGVyKikgZmluYWwgeyB9CiAgICAgdm9pZCBzZXRNYWluRG9jdW1lbnRFcnJvcihEb2N1bWVudExv
YWRlciosIGNvbnN0IFJlc291cmNlRXJyb3ImKSBmaW5hbCB7IH0KQEAgLTQxMCwxMCArNDExLDEw
IEBAIGNsYXNzIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQgZmluYWwgOiBwdWJsaWMgRnJhbWVMb2Fk
ZXJDbGllbnQgewogICAgIHZvaWQgZGlkRGlzcGxheUluc2VjdXJlQ29udGVudCgpIGZpbmFsIHsg
fQogICAgIHZvaWQgZGlkUnVuSW5zZWN1cmVDb250ZW50KFNlY3VyaXR5T3JpZ2luKiwgY29uc3Qg
VVJMJikgZmluYWwgeyB9CiAgICAgdm9pZCBkaWREZXRlY3RYU1MoY29uc3QgVVJMJiwgYm9vbCkg
ZmluYWwgeyB9Ci0gICAgUmVmUHRyPEZyYW1lPiBjcmVhdGVGcmFtZShjb25zdCBVUkwmLCBjb25z
dCBTdHJpbmcmLCBIVE1MRnJhbWVPd25lckVsZW1lbnQqLCBjb25zdCBTdHJpbmcmLCBib29sLCBp
bnQsIGludCkgZmluYWw7Ci0gICAgUmVmUHRyPFdpZGdldD4gY3JlYXRlUGx1Z2luKGNvbnN0IElu
dFNpemUmLCBIVE1MUGx1Z0luRWxlbWVudCosIGNvbnN0IFVSTCYsIGNvbnN0IFZlY3RvcjxTdHJp
bmc+JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBTdHJpbmcmLCBib29sKSBmaW5hbDsK
KyAgICBSZWZQdHI8RnJhbWU+IGNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYs
IEhUTUxGcmFtZU93bmVyRWxlbWVudCYsIGNvbnN0IFN0cmluZyYsIGJvb2wsIGludCwgaW50KSBm
aW5hbDsKKyAgICBSZWZQdHI8V2lkZ2V0PiBjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYsIEhU
TUxQbHVnSW5FbGVtZW50JiwgY29uc3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25z
dCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFN0cmluZyYsIGJvb2wpIGZpbmFsOwogICAgIHZvaWQg
cmVjcmVhdGVQbHVnaW4oV2lkZ2V0KikgZmluYWw7Ci0gICAgUGFzc1JlZlB0cjxXaWRnZXQ+IGNy
ZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYsIEhUTUxBcHBsZXRFbGVtZW50Kiwg
Y29uc3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYp
IGZpbmFsOworICAgIFJlZlB0cjxXaWRnZXQ+IGNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3Qg
SW50U2l6ZSYsIEhUTUxBcHBsZXRFbGVtZW50JiwgY29uc3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0
cmluZz4mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYpIGZpbmFsOwogCiAgICAgT2JqZWN0Q29udGVu
dFR5cGUgb2JqZWN0Q29udGVudFR5cGUoY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJikgZmluYWwg
eyByZXR1cm4gT2JqZWN0Q29udGVudFR5cGU6Ok5vbmU7IH0KICAgICBTdHJpbmcgb3ZlcnJpZGVN
ZWRpYVR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiB7IH07IH0KQEAgLTQzMiwxNiArNDMzLDM3
IEBAIGNsYXNzIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQgZmluYWwgOiBwdWJsaWMgRnJhbWVMb2Fk
ZXJDbGllbnQgewogICAgIGJvb2wgc2hvdWxkQ2FjaGVSZXNwb25zZShEb2N1bWVudExvYWRlcios
IHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBjb25zdCB1bnNpZ25lZCBj
aGFyKiwgdW5zaWduZWQgbG9uZyBsb25nKSBmaW5hbCB7IHJldHVybiB0cnVlOyB9CiAjZW5kaWYK
IAotICAgIFBhc3NSZWZQdHI8RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRlTmV0d29ya2lu
Z0NvbnRleHQoKSBmaW5hbDsKKyAgICBSZWY8RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRl
TmV0d29ya2luZ0NvbnRleHQoKSBmaW5hbDsKIAogI2lmIEVOQUJMRShSRVFVRVNUX0FVVE9DT01Q
TEVURSkKLSAgICB2b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxldGUoUGFzc1JlZlB0cjxGb3JtU3Rh
dGU+KSBmaW5hbCB7IH0KKyAgICB2b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxldGUoUmVmPEZvcm1T
dGF0ZT4mJikgZmluYWwgeyB9CiAjZW5kaWYKIAogICAgIGJvb2wgaXNFbXB0eUZyYW1lTG9hZGVy
Q2xpZW50KCkgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQogICAgIHZvaWQgcHJlZmV0Y2hETlMoY29u
c3QgU3RyaW5nJikgZmluYWwgeyB9CiB9OwogCitjbGFzcyBFbXB0eUZyYW1lTmV0d29ya2luZ0Nv
bnRleHQgZmluYWwgOiBwdWJsaWMgRnJhbWVOZXR3b3JraW5nQ29udGV4dCB7CitwdWJsaWM6Cisg
ICAgc3RhdGljIFJlZjxFbXB0eUZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZSgpIHsgcmV0
dXJuIGFkb3B0UmVmKCpuZXcgRW1wdHlGcmFtZU5ldHdvcmtpbmdDb250ZXh0KTsgfQorCitwcml2
YXRlOgorICAgIEVtcHR5RnJhbWVOZXR3b3JraW5nQ29udGV4dCgpOworCisgICAgYm9vbCBzaG91
bGRDbGVhclJlZmVycmVyT25IVFRQU1RvSFRUUFJlZGlyZWN0KCkgY29uc3QgeyByZXR1cm4gdHJ1
ZTsgfQorICAgIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgc3RvcmFnZVNlc3Npb24oKSBjb25zdCBm
aW5hbCB7IHJldHVybiBOZXR3b3JrU3RvcmFnZVNlc3Npb246OmRlZmF1bHRTdG9yYWdlU2Vzc2lv
bigpOyB9CisKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICBib29sIGxvY2FsRmlsZUNvbnRlbnRT
bmlmZmluZ0VuYWJsZWQoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQorICAgIFNjaGVkdWxlUGFp
ckhhc2hTZXQqIHNjaGVkdWxlZFJ1bkxvb3BQYWlycygpIGNvbnN0IHsgcmV0dXJuIG51bGxwdHI7
IH0KKyAgICBSZXRhaW5QdHI8Q0ZEYXRhUmVmPiBzb3VyY2VBcHBsaWNhdGlvbkF1ZGl0RGF0YSgp
IGNvbnN0IHsgcmV0dXJuIG51bGxwdHI7IH07CisjZW5kaWYKKworI2lmIFBMQVRGT1JNKENPQ09B
KSB8fCBQTEFURk9STShXSU4pCisgICAgUmVzb3VyY2VFcnJvciBibG9ja2VkRXJyb3IoY29uc3Qg
UmVzb3VyY2VSZXF1ZXN0JikgY29uc3QgZmluYWwgeyByZXR1cm4geyB9OyB9CisjZW5kaWYKK307
CisKIGNsYXNzIEVtcHR5SW5zcGVjdG9yQ2xpZW50IGZpbmFsIDogcHVibGljIEluc3BlY3RvckNs
aWVudCB7CiAgICAgdm9pZCBpbnNwZWN0ZWRQYWdlRGVzdHJveWVkKCkgZmluYWwgeyB9CiAgICAg
SW5zcGVjdG9yOjpGcm9udGVuZENoYW5uZWwqIG9wZW5Mb2NhbEZyb250ZW5kKEluc3BlY3RvckNv
bnRyb2xsZXIqKSBmaW5hbCB7IHJldHVybiBudWxscHRyOyB9CkBAIC01NjksMjMgKzU5MSwyMyBA
QCBzdGQ6OnVuaXF1ZV9wdHI8Q29sb3JDaG9vc2VyPiBFbXB0eUNocm9tZUNsaWVudDo6Y3JlYXRl
Q29sb3JDaG9vc2VyKENvbG9yQ2hvb3NlcgogCiAjZW5kaWYKIAotdm9pZCBFbXB0eUNocm9tZUNs
aWVudDo6cnVuT3BlblBhbmVsKEZyYW1lKiwgUGFzc1JlZlB0cjxGaWxlQ2hvb3Nlcj4pCit2b2lk
IEVtcHR5Q2hyb21lQ2xpZW50OjpydW5PcGVuUGFuZWwoRnJhbWUmLCBGaWxlQ2hvb3NlciYpCiB7
CiB9CiAKLXZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lG
b3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJlc291cmNl
UmVxdWVzdCYsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwgY29uc3QgU3RyaW5nJiwgRnJhbWVQb2xp
Y3lGdW5jdGlvbikKK3ZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQ
b2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJl
c291cmNlUmVxdWVzdCYsIEZvcm1TdGF0ZSosIGNvbnN0IFN0cmluZyYsIEZyYW1lUG9saWN5RnVu
Y3Rpb24pCiB7CiB9CiAKLXZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNp
ZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mLCBjb25z
dCBSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIEZyYW1lUG9saWN5RnVu
Y3Rpb24pCit2b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5
Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgUmVzb3Vy
Y2VSZXF1ZXN0JiwgRm9ybVN0YXRlKiwgRnJhbWVQb2xpY3lGdW5jdGlvbikKIHsKIH0KIAotdm9p
ZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoUGFz
c1JlZlB0cjxGb3JtU3RhdGU+KQordm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aFdpbGxTZW5kU3VibWl0RXZlbnQoUmVmPEZvcm1TdGF0ZT4mJikKIHsKIH0KIAotdm9pZCBFbXB0
eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKFBhc3NSZWZQdHI8Rm9y
bVN0YXRlPiwgRnJhbWVQb2xpY3lGdW5jdGlvbikKK3ZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVu
dDo6ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShGb3JtU3RhdGUmLCBGcmFtZVBvbGljeUZ1bmN0aW9u
KQogewogfQogCkBAIC01OTQsMTIgKzYxNiwxMiBAQCBSZWY8RG9jdW1lbnRMb2FkZXI+IEVtcHR5
RnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZURvY3VtZW50TG9hZGVyKGNvbnN0IFJlc291cmNlUgog
ICAgIHJldHVybiBEb2N1bWVudExvYWRlcjo6Y3JlYXRlKHJlcXVlc3QsIHN1YnN0aXR1dGVEYXRh
KTsKIH0KIAotUmVmUHRyPEZyYW1lPiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVGcmFt
ZShjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmLCBIVE1MRnJhbWVPd25lckVsZW1lbnQqLCBjb25z
dCBTdHJpbmcmLCBib29sLCBpbnQsIGludCkKK1JlZlB0cjxGcmFtZT4gRW1wdHlGcmFtZUxvYWRl
ckNsaWVudDo6Y3JlYXRlRnJhbWUoY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiwgSFRNTEZyYW1l
T3duZXJFbGVtZW50JiwgY29uc3QgU3RyaW5nJiwgYm9vbCwgaW50LCBpbnQpCiB7CiAgICAgcmV0
dXJuIG51bGxwdHI7CiB9CiAKLVJlZlB0cjxXaWRnZXQ+IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6
OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiwgSFRNTFBsdWdJbkVsZW1lbnQqLCBjb25zdCBV
UkwmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3Qg
U3RyaW5nJiwgYm9vbCkKK1JlZlB0cjxXaWRnZXQ+IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNy
ZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiwgSFRNTFBsdWdJbkVsZW1lbnQmLCBjb25zdCBVUkwm
LCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgU3Ry
aW5nJiwgYm9vbCkKIHsKICAgICByZXR1cm4gbnVsbHB0cjsKIH0KQEAgLTYwOCwyNSArNjMwLDMw
IEBAIHZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6cmVjcmVhdGVQbHVnaW4oV2lkZ2V0KikK
IHsKIH0KIAotUGFzc1JlZlB0cjxXaWRnZXQ+IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0
ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYsIEhUTUxBcHBsZXRFbGVtZW50KiwgY29u
c3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYpCitS
ZWZQdHI8V2lkZ2V0PiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lk
Z2V0KGNvbnN0IEludFNpemUmLCBIVE1MQXBwbGV0RWxlbWVudCYsIGNvbnN0IFVSTCYsIGNvbnN0
IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mKQogewogICAgIHJldHVybiBu
dWxscHRyOwogfQogCi1QYXNzUmVmUHRyPEZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IEVtcHR5RnJh
bWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkKK2lubGluZSBFbXB0eUZy
YW1lTmV0d29ya2luZ0NvbnRleHQ6OkVtcHR5RnJhbWVOZXR3b3JraW5nQ29udGV4dCgpCisgICAg
OiBGcmFtZU5ldHdvcmtpbmdDb250ZXh0IHsgbnVsbHB0ciB9Cit7Cit9CisKK1JlZjxGcmFtZU5l
dHdvcmtpbmdDb250ZXh0PiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVOZXR3b3JraW5n
Q29udGV4dCgpCiB7Ci0gICAgcmV0dXJuIFBhc3NSZWZQdHI8RnJhbWVOZXR3b3JraW5nQ29udGV4
dD4oKTsKKyAgICByZXR1cm4gRW1wdHlGcmFtZU5ldHdvcmtpbmdDb250ZXh0OjpjcmVhdGUoKTsK
IH0KIAogdm9pZCBFbXB0eUVkaXRvckNsaWVudDo6RW1wdHlUZXh0Q2hlY2tlckNsaWVudDo6cmVx
dWVzdENoZWNraW5nT2ZTdHJpbmcoVGV4dENoZWNraW5nUmVxdWVzdCYsIGNvbnN0IFZpc2libGVT
ZWxlY3Rpb24mKQogewogfQogCi12b2lkIEVtcHR5RWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9T
dGVwKFBhc3NSZWZQdHI8VW5kb1N0ZXA+KQordm9pZCBFbXB0eUVkaXRvckNsaWVudDo6cmVnaXN0
ZXJVbmRvU3RlcChVbmRvU3RlcCYpCiB7CiB9CiAKLXZvaWQgRW1wdHlFZGl0b3JDbGllbnQ6OnJl
Z2lzdGVyUmVkb1N0ZXAoUGFzc1JlZlB0cjxVbmRvU3RlcD4pCit2b2lkIEVtcHR5RWRpdG9yQ2xp
ZW50OjpyZWdpc3RlclJlZG9TdGVwKFVuZG9TdGVwJikKIHsKIH0KIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0VtcHR5Q2xpZW50cy5oCmluZGV4IDFhMWQ1M2MzNzQwOGFiOTljNjBkZjBlMmY3ZDgyYTQxYzFh
ZWQ2NjkuLjhmMjUyYmE3OTJmNzExOTdkMDkxMDkyNmM4NDBhMjkwODVhZDEwMzkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmgKQEAgLTEzOCw3ICsxMzgsNyBAQCBjbGFzcyBFbXB0
eUNocm9tZUNsaWVudCA6IHB1YmxpYyBDaHJvbWVDbGllbnQgewogICAgIHN0ZDo6dW5pcXVlX3B0
cjxDb2xvckNob29zZXI+IGNyZWF0ZUNvbG9yQ2hvb3NlcihDb2xvckNob29zZXJDbGllbnQqLCBj
b25zdCBDb2xvciYpIGZpbmFsOwogI2VuZGlmCiAKLSAgICB2b2lkIHJ1bk9wZW5QYW5lbChGcmFt
ZSosIFBhc3NSZWZQdHI8RmlsZUNob29zZXI+KSBmaW5hbDsKKyAgICB2b2lkIHJ1bk9wZW5QYW5l
bChGcmFtZSYsIEZpbGVDaG9vc2VyJikgZmluYWw7CiAgICAgdm9pZCBsb2FkSWNvbkZvckZpbGVz
KGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgRmlsZUljb25Mb2FkZXImKSBmaW5hbCB7IH0KIAogICAg
IHZvaWQgZWxlbWVudERpZEZvY3VzKGNvbnN0IE5vZGUqKSBmaW5hbCB7IH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3RhdGUuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0Zvcm1TdGF0ZS5jcHAKaW5kZXggMzUxMGI4MDI1ZGRmYzM1MTYzOGUwMzA2MDZmYWQ2MDQ1
Y2M5NTE5Ni4uNWU4OTZlN2Y4NTJmOTZlMjU0MGVkOGQ0ZDE1MTc2MmI2YjQwZDkxMyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdGF0ZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL0Zvcm1TdGF0ZS5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJp
Z2h0IChDKSAyMDA2LCAyMDA5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENv
cHlyaWdodCAoQykgMjAwNi0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAq
CiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMzQsMTcgKzM0LDE3IEBACiAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAotaW5saW5lIEZvcm1TdGF0ZTo6Rm9ybVN0YXRlKFBhc3NSZWZQdHI8
SFRNTEZvcm1FbGVtZW50PiBmb3JtLCBTdHJpbmdQYWlyVmVjdG9yJiB0ZXh0RmllbGRWYWx1ZXNU
b0Fkb3B0LCBQYXNzUmVmUHRyPERvY3VtZW50PiBzb3VyY2VEb2N1bWVudCwgRm9ybVN1Ym1pc3Np
b25UcmlnZ2VyIGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikKK2lubGluZSBGb3JtU3RhdGU6OkZvcm1T
dGF0ZShIVE1MRm9ybUVsZW1lbnQmIGZvcm0sIFN0cmluZ1BhaXJWZWN0b3ImJiB0ZXh0RmllbGRW
YWx1ZXMsIERvY3VtZW50JiBzb3VyY2VEb2N1bWVudCwgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIGZv
cm1TdWJtaXNzaW9uVHJpZ2dlcikKICAgICA6IG1fZm9ybShmb3JtKQorICAgICwgbV90ZXh0Rmll
bGRWYWx1ZXMoV1RGTW92ZSh0ZXh0RmllbGRWYWx1ZXMpKQogICAgICwgbV9zb3VyY2VEb2N1bWVu
dChzb3VyY2VEb2N1bWVudCkKICAgICAsIG1fZm9ybVN1Ym1pc3Npb25UcmlnZ2VyKGZvcm1TdWJt
aXNzaW9uVHJpZ2dlcikKIHsKLSAgICBtX3RleHRGaWVsZFZhbHVlcy5zd2FwKHRleHRGaWVsZFZh
bHVlc1RvQWRvcHQpOwogfQogCi1SZWY8Rm9ybVN0YXRlPiBGb3JtU3RhdGU6OmNyZWF0ZShQYXNz
UmVmUHRyPEhUTUxGb3JtRWxlbWVudD4gZm9ybSwgU3RyaW5nUGFpclZlY3RvciYgdGV4dEZpZWxk
VmFsdWVzVG9BZG9wdCwgUGFzc1JlZlB0cjxEb2N1bWVudD4gc291cmNlRG9jdW1lbnQsIEZvcm1T
dWJtaXNzaW9uVHJpZ2dlciBmb3JtU3VibWlzc2lvblRyaWdnZXIpCitSZWY8Rm9ybVN0YXRlPiBG
b3JtU3RhdGU6OmNyZWF0ZShIVE1MRm9ybUVsZW1lbnQmIGZvcm0sIFN0cmluZ1BhaXJWZWN0b3Im
JiB0ZXh0RmllbGRWYWx1ZXMsIERvY3VtZW50JiBzb3VyY2VEb2N1bWVudCwgRm9ybVN1Ym1pc3Np
b25UcmlnZ2VyIGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikKIHsKLSAgICByZXR1cm4gYWRvcHRSZWYo
Km5ldyBGb3JtU3RhdGUoZm9ybSwgdGV4dEZpZWxkVmFsdWVzVG9BZG9wdCwgc291cmNlRG9jdW1l
bnQsIGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikpOworICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEZv
cm1TdGF0ZShmb3JtLCBXVEZNb3ZlKHRleHRGaWVsZFZhbHVlcyksIHNvdXJjZURvY3VtZW50LCBm
b3JtU3VibWlzc2lvblRyaWdnZXIpKTsKIH0KIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0Zvcm1TdGF0ZS5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdGF0ZS5o
CmluZGV4IDk1MDQwZjljMjhkNDc5M2JiMTVmOGZmMzdhMGI2MjRkMjhiZDhjZjcuLjJkZWRkMDli
ZTUyYjBhZmM5NzAyODNhMTE0Y2NmMDM0ZjdiNjVmYWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9Gb3JtU3RhdGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN0
YXRlLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA2LCAyMDA5IEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNi0yMDE3
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucwpAQCAtMjgsMzcgKzI4LDMzIEBACiAKICNwcmFnbWEgb25jZQogCi0jaW5jbHVkZSA8
d3RmL1JlZkNvdW50ZWQuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFt
ZXNwYWNlIFdlYkNvcmUgewogCi0gICAgY2xhc3MgRG9jdW1lbnQ7Ci0gICAgY2xhc3MgSFRNTEZv
cm1FbGVtZW50OworY2xhc3MgRG9jdW1lbnQ7CitjbGFzcyBIVE1MRm9ybUVsZW1lbnQ7CiAKLSAg
ICBlbnVtIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciB7Ci0gICAgICAgIFN1Ym1pdHRlZEJ5SmF2YVNj
cmlwdCwKLSAgICAgICAgTm90U3VibWl0dGVkQnlKYXZhU2NyaXB0Ci0gICAgfTsKLSAgICAKLSAg
ICB0eXBlZGVmIFZlY3RvcjxzdGQ6OnBhaXI8U3RyaW5nLCBTdHJpbmc+PiBTdHJpbmdQYWlyVmVj
dG9yOworZW51bSBGb3JtU3VibWlzc2lvblRyaWdnZXIgeyBTdWJtaXR0ZWRCeUphdmFTY3JpcHQs
IE5vdFN1Ym1pdHRlZEJ5SmF2YVNjcmlwdCB9OwogCi0gICAgY2xhc3MgRm9ybVN0YXRlIDogcHVi
bGljIFJlZkNvdW50ZWQ8Rm9ybVN0YXRlPiB7Ci0gICAgcHVibGljOgotICAgICAgICBzdGF0aWMg
UmVmPEZvcm1TdGF0ZT4gY3JlYXRlKFBhc3NSZWZQdHI8SFRNTEZvcm1FbGVtZW50PiwgU3RyaW5n
UGFpclZlY3RvciYgdGV4dEZpZWxkVmFsdWVzVG9BZG9wdCwgUGFzc1JlZlB0cjxEb2N1bWVudD4s
IEZvcm1TdWJtaXNzaW9uVHJpZ2dlcik7Cit1c2luZyBTdHJpbmdQYWlyVmVjdG9yID0gVmVjdG9y
PHN0ZDo6cGFpcjxTdHJpbmcsIFN0cmluZz4+OwogCi0gICAgICAgIEhUTUxGb3JtRWxlbWVudCog
Zm9ybSgpIGNvbnN0IHsgcmV0dXJuIG1fZm9ybS5nZXQoKTsgfQotICAgICAgICBjb25zdCBTdHJp
bmdQYWlyVmVjdG9yJiB0ZXh0RmllbGRWYWx1ZXMoKSBjb25zdCB7IHJldHVybiBtX3RleHRGaWVs
ZFZhbHVlczsgfQotICAgICAgICBEb2N1bWVudCogc291cmNlRG9jdW1lbnQoKSBjb25zdCB7IHJl
dHVybiBtX3NvdXJjZURvY3VtZW50LmdldCgpOyB9Ci0gICAgICAgIEZvcm1TdWJtaXNzaW9uVHJp
Z2dlciBmb3JtU3VibWlzc2lvblRyaWdnZXIoKSBjb25zdCB7IHJldHVybiBtX2Zvcm1TdWJtaXNz
aW9uVHJpZ2dlcjsgfQorY2xhc3MgRm9ybVN0YXRlIDogcHVibGljIFJlZkNvdW50ZWQ8Rm9ybVN0
YXRlPiB7CitwdWJsaWM6CisgICAgc3RhdGljIFJlZjxGb3JtU3RhdGU+IGNyZWF0ZShIVE1MRm9y
bUVsZW1lbnQmLCBTdHJpbmdQYWlyVmVjdG9yJiYgdGV4dEZpZWxkVmFsdWVzLCBEb2N1bWVudCYs
IEZvcm1TdWJtaXNzaW9uVHJpZ2dlcik7CiAKLSAgICBwcml2YXRlOgotICAgICAgICBGb3JtU3Rh
dGUoUGFzc1JlZlB0cjxIVE1MRm9ybUVsZW1lbnQ+LCBTdHJpbmdQYWlyVmVjdG9yJiB0ZXh0Rmll
bGRWYWx1ZXNUb0Fkb3B0LCBQYXNzUmVmUHRyPERvY3VtZW50PiwgRm9ybVN1Ym1pc3Npb25Ucmln
Z2VyKTsKKyAgICBIVE1MRm9ybUVsZW1lbnQmIGZvcm0oKSBjb25zdCB7IHJldHVybiBtX2Zvcm07
IH0KKyAgICBjb25zdCBTdHJpbmdQYWlyVmVjdG9yJiB0ZXh0RmllbGRWYWx1ZXMoKSBjb25zdCB7
IHJldHVybiBtX3RleHRGaWVsZFZhbHVlczsgfQorICAgIERvY3VtZW50JiBzb3VyY2VEb2N1bWVu
dCgpIGNvbnN0IHsgcmV0dXJuIG1fc291cmNlRG9jdW1lbnQ7IH0KKyAgICBGb3JtU3VibWlzc2lv
blRyaWdnZXIgZm9ybVN1Ym1pc3Npb25UcmlnZ2VyKCkgY29uc3QgeyByZXR1cm4gbV9mb3JtU3Vi
bWlzc2lvblRyaWdnZXI7IH0KIAotICAgICAgICBSZWZQdHI8SFRNTEZvcm1FbGVtZW50PiBtX2Zv
cm07Ci0gICAgICAgIFN0cmluZ1BhaXJWZWN0b3IgbV90ZXh0RmllbGRWYWx1ZXM7Ci0gICAgICAg
IFJlZlB0cjxEb2N1bWVudD4gbV9zb3VyY2VEb2N1bWVudDsKLSAgICAgICAgRm9ybVN1Ym1pc3Np
b25UcmlnZ2VyIG1fZm9ybVN1Ym1pc3Npb25UcmlnZ2VyOwotICAgIH07Citwcml2YXRlOgorICAg
IEZvcm1TdGF0ZShIVE1MRm9ybUVsZW1lbnQmLCBTdHJpbmdQYWlyVmVjdG9yJiYgdGV4dEZpZWxk
VmFsdWVzLCBEb2N1bWVudCYsIEZvcm1TdWJtaXNzaW9uVHJpZ2dlcik7CisKKyAgICBSZWY8SFRN
TEZvcm1FbGVtZW50PiBtX2Zvcm07CisgICAgU3RyaW5nUGFpclZlY3RvciBtX3RleHRGaWVsZFZh
bHVlczsKKyAgICBSZWY8RG9jdW1lbnQ+IG1fc291cmNlRG9jdW1lbnQ7CisgICAgRm9ybVN1Ym1p
c3Npb25UcmlnZ2VyIG1fZm9ybVN1Ym1pc3Npb25UcmlnZ2VyOworfTsKIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdWJtaXNz
aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3VibWlzc2lvbi5jcHAKaW5kZXgg
MjBhYWY0YzRjNzI3YWY2OTJiNzk4ZTI2OTY1ZmI5NDA0Nzg2YzliMi4uNzcwNzM0M2M1YzIzNzU5
Nzk3YmJjYmYwNDE1MzkyMzAzNzlmNzljOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0Zvcm1TdWJtaXNzaW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN1
Ym1pc3Npb24uY3BwCkBAIC0xMDYsNyArMTA2LDcgQEAgdm9pZCBGb3JtU3VibWlzc2lvbjo6QXR0
cmlidXRlczo6dXBkYXRlRW5jb2RpbmdUeXBlKGNvbnN0IFN0cmluZyYgdHlwZSkKIAogRm9ybVN1
Ym1pc3Npb246Ok1ldGhvZCBGb3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6cGFyc2VNZXRob2RU
eXBlKGNvbnN0IFN0cmluZyYgdHlwZSkKIHsKLSAgICByZXR1cm4gZXF1YWxMZXR0ZXJzSWdub3Jp
bmdBU0NJSUNhc2UodHlwZSwgInBvc3QiKSA/IEZvcm1TdWJtaXNzaW9uOjpQb3N0TWV0aG9kIDog
Rm9ybVN1Ym1pc3Npb246OkdldE1ldGhvZDsKKyAgICByZXR1cm4gZXF1YWxMZXR0ZXJzSWdub3Jp
bmdBU0NJSUNhc2UodHlwZSwgInBvc3QiKSA/IEZvcm1TdWJtaXNzaW9uOjpNZXRob2Q6OlBvc3Qg
OiBGb3JtU3VibWlzc2lvbjo6TWV0aG9kOjpHZXQ7CiB9CiAKIHZvaWQgRm9ybVN1Ym1pc3Npb246
OkF0dHJpYnV0ZXM6OnVwZGF0ZU1ldGhvZFR5cGUoY29uc3QgU3RyaW5nJiB0eXBlKQpAQCAtMTE0
LDI0ICsxMTQsMTMgQEAgdm9pZCBGb3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6dXBkYXRlTWV0
aG9kVHlwZShjb25zdCBTdHJpbmcmIHR5cGUpCiAgICAgbV9tZXRob2QgPSBwYXJzZU1ldGhvZFR5
cGUodHlwZSk7CiB9CiAKLXZvaWQgRm9ybVN1Ym1pc3Npb246OkF0dHJpYnV0ZXM6OmNvcHlGcm9t
KGNvbnN0IEF0dHJpYnV0ZXMmIG90aGVyKQotewotICAgIG1fbWV0aG9kID0gb3RoZXIubV9tZXRo
b2Q7Ci0gICAgbV9pc011bHRpUGFydEZvcm0gPSBvdGhlci5tX2lzTXVsdGlQYXJ0Rm9ybTsKLQot
ICAgIG1fYWN0aW9uID0gb3RoZXIubV9hY3Rpb247Ci0gICAgbV90YXJnZXQgPSBvdGhlci5tX3Rh
cmdldDsKLSAgICBtX2VuY29kaW5nVHlwZSA9IG90aGVyLm1fZW5jb2RpbmdUeXBlOwotICAgIG1f
YWNjZXB0Q2hhcnNldCA9IG90aGVyLm1fYWNjZXB0Q2hhcnNldDsKLX0KLQotaW5saW5lIEZvcm1T
dWJtaXNzaW9uOjpGb3JtU3VibWlzc2lvbihNZXRob2QgbWV0aG9kLCBjb25zdCBVUkwmIGFjdGlv
biwgY29uc3QgU3RyaW5nJiB0YXJnZXQsIGNvbnN0IFN0cmluZyYgY29udGVudFR5cGUsIFBhc3NS
ZWZQdHI8Rm9ybVN0YXRlPiBzdGF0ZSwgUGFzc1JlZlB0cjxGb3JtRGF0YT4gZGF0YSwgY29uc3Qg
U3RyaW5nJiBib3VuZGFyeSwgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnksIFBhc3NSZWZQdHI8RXZl
bnQ+IGV2ZW50KQoraW5saW5lIEZvcm1TdWJtaXNzaW9uOjpGb3JtU3VibWlzc2lvbihNZXRob2Qg
bWV0aG9kLCBjb25zdCBVUkwmIGFjdGlvbiwgY29uc3QgU3RyaW5nJiB0YXJnZXQsIGNvbnN0IFN0
cmluZyYgY29udGVudFR5cGUsIFJlZjxGb3JtU3RhdGU+JiYgc3RhdGUsIFJlZjxGb3JtRGF0YT4m
JiBkYXRhLCBjb25zdCBTdHJpbmcmIGJvdW5kYXJ5LCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSwg
RXZlbnQqIGV2ZW50KQogICAgIDogbV9tZXRob2QobWV0aG9kKQogICAgICwgbV9hY3Rpb24oYWN0
aW9uKQogICAgICwgbV90YXJnZXQodGFyZ2V0KQogICAgICwgbV9jb250ZW50VHlwZShjb250ZW50
VHlwZSkKLSAgICAsIG1fZm9ybVN0YXRlKHN0YXRlKQotICAgICwgbV9mb3JtRGF0YShkYXRhKQor
ICAgICwgbV9mb3JtU3RhdGUoV1RGTW92ZShzdGF0ZSkpCisgICAgLCBtX2Zvcm1EYXRhKFdURk1v
dmUoZGF0YSkpCiAgICAgLCBtX2JvdW5kYXJ5KGJvdW5kYXJ5KQogICAgICwgbV9sb2NrSGlzdG9y
eShsb2NrSGlzdG9yeSkKICAgICAsIG1fZXZlbnQoZXZlbnQpCkBAIC0xNTUsMTAgKzE0NCw4IEBA
IHN0YXRpYyBUZXh0RW5jb2RpbmcgZW5jb2RpbmdGcm9tQWNjZXB0Q2hhcnNldChjb25zdCBTdHJp
bmcmIGFjY2VwdENoYXJzZXQsIERvY3VtCiAgICAgcmV0dXJuIGRvY3VtZW50LnRleHRFbmNvZGlu
ZygpOwogfQogCi1SZWY8Rm9ybVN1Ym1pc3Npb24+IEZvcm1TdWJtaXNzaW9uOjpjcmVhdGUoSFRN
TEZvcm1FbGVtZW50KiBmb3JtLCBjb25zdCBBdHRyaWJ1dGVzJiBhdHRyaWJ1dGVzLCBQYXNzUmVm
UHRyPEV2ZW50PiBldmVudCwgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnksIEZvcm1TdWJtaXNzaW9u
VHJpZ2dlciB0cmlnZ2VyKQorUmVmPEZvcm1TdWJtaXNzaW9uPiBGb3JtU3VibWlzc2lvbjo6Y3Jl
YXRlKEhUTUxGb3JtRWxlbWVudCYgZm9ybSwgY29uc3QgQXR0cmlidXRlcyYgYXR0cmlidXRlcywg
RXZlbnQqIGV2ZW50LCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSwgRm9ybVN1Ym1pc3Npb25Ucmln
Z2VyIHRyaWdnZXIpCiB7Ci0gICAgQVNTRVJUKGZvcm0pOwotCiAgICAgSFRNTEZvcm1Db250cm9s
RWxlbWVudCogc3VibWl0QnV0dG9uID0gbnVsbHB0cjsKICAgICBpZiAoZXZlbnQgJiYgZXZlbnQt
PnRhcmdldCgpKSB7CiAgICAgICAgIGZvciAoTm9kZSogbm9kZSA9IGV2ZW50LT50YXJnZXQoKS0+
dG9Ob2RlKCk7IG5vZGU7IG5vZGUgPSBub2RlLT5wYXJlbnROb2RlKCkpIHsKQEAgLTE2OSw4ICsx
NTYsNyBAQCBSZWY8Rm9ybVN1Ym1pc3Npb24+IEZvcm1TdWJtaXNzaW9uOjpjcmVhdGUoSFRNTEZv
cm1FbGVtZW50KiBmb3JtLCBjb25zdCBBdHRyaWJ1dAogICAgICAgICB9CiAgICAgfQogCi0gICAg
Rm9ybVN1Ym1pc3Npb246OkF0dHJpYnV0ZXMgY29waWVkQXR0cmlidXRlczsKLSAgICBjb3BpZWRB
dHRyaWJ1dGVzLmNvcHlGcm9tKGF0dHJpYnV0ZXMpOworICAgIGF1dG8gY29waWVkQXR0cmlidXRl
cyA9IGF0dHJpYnV0ZXM7CiAgICAgaWYgKHN1Ym1pdEJ1dHRvbikgewogICAgICAgICBBdG9taWNT
dHJpbmcgYXR0cmlidXRlVmFsdWU7CiAgICAgICAgIGlmICghKGF0dHJpYnV0ZVZhbHVlID0gc3Vi
bWl0QnV0dG9uLT5hdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKGZvcm1hY3Rpb25BdHRy
KSkuaXNOdWxsKCkpCkBAIC0xODMsMTUgKzE2OSwxNSBAQCBSZWY8Rm9ybVN1Ym1pc3Npb24+IEZv
cm1TdWJtaXNzaW9uOjpjcmVhdGUoSFRNTEZvcm1FbGVtZW50KiBmb3JtLCBjb25zdCBBdHRyaWJ1
dAogICAgICAgICAgICAgY29waWVkQXR0cmlidXRlcy5zZXRUYXJnZXQoYXR0cmlidXRlVmFsdWUp
OwogICAgIH0KICAgICAKLSAgICBEb2N1bWVudCYgZG9jdW1lbnQgPSBmb3JtLT5kb2N1bWVudCgp
OwotICAgIFVSTCBhY3Rpb25VUkwgPSBkb2N1bWVudC5jb21wbGV0ZVVSTChjb3BpZWRBdHRyaWJ1
dGVzLmFjdGlvbigpLmlzRW1wdHkoKSA/IGRvY3VtZW50LnVybCgpLnN0cmluZygpIDogY29waWVk
QXR0cmlidXRlcy5hY3Rpb24oKSk7CisgICAgYXV0byYgZG9jdW1lbnQgPSBmb3JtLmRvY3VtZW50
KCk7CisgICAgYXV0byBhY3Rpb25VUkwgPSBkb2N1bWVudC5jb21wbGV0ZVVSTChjb3BpZWRBdHRy
aWJ1dGVzLmFjdGlvbigpLmlzRW1wdHkoKSA/IGRvY3VtZW50LnVybCgpLnN0cmluZygpIDogY29w
aWVkQXR0cmlidXRlcy5hY3Rpb24oKSk7CiAgICAgYm9vbCBpc01haWx0b0Zvcm0gPSBhY3Rpb25V
UkwucHJvdG9jb2xJcygibWFpbHRvIik7CiAgICAgYm9vbCBpc011bHRpUGFydEZvcm0gPSBmYWxz
ZTsKLSAgICBTdHJpbmcgZW5jb2RpbmdUeXBlID0gY29waWVkQXR0cmlidXRlcy5lbmNvZGluZ1R5
cGUoKTsKKyAgICBhdXRvIGVuY29kaW5nVHlwZSA9IGNvcGllZEF0dHJpYnV0ZXMuZW5jb2RpbmdU
eXBlKCk7CiAKICAgICBkb2N1bWVudC5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+dXBncmFkZUlu
c2VjdXJlUmVxdWVzdElmTmVlZGVkKGFjdGlvblVSTCwgQ29udGVudFNlY3VyaXR5UG9saWN5OjpJ
bnNlY3VyZVJlcXVlc3RUeXBlOjpGb3JtU3VibWlzc2lvbik7CiAKLSAgICBpZiAoY29waWVkQXR0
cmlidXRlcy5tZXRob2QoKSA9PSBQb3N0TWV0aG9kKSB7CisgICAgaWYgKGNvcGllZEF0dHJpYnV0
ZXMubWV0aG9kKCkgPT0gTWV0aG9kOjpQb3N0KSB7CiAgICAgICAgIGlzTXVsdGlQYXJ0Rm9ybSA9
IGNvcGllZEF0dHJpYnV0ZXMuaXNNdWx0aVBhcnRGb3JtKCk7CiAgICAgICAgIGlmIChpc011bHRp
UGFydEZvcm0gJiYgaXNNYWlsdG9Gb3JtKSB7CiAgICAgICAgICAgICBlbmNvZGluZ1R5cGUgPSAi
YXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIjsKQEAgLTE5OSwxOSArMTg1LDE5IEBA
IFJlZjxGb3JtU3VibWlzc2lvbj4gRm9ybVN1Ym1pc3Npb246OmNyZWF0ZShIVE1MRm9ybUVsZW1l
bnQqIGZvcm0sIGNvbnN0IEF0dHJpYnV0CiAgICAgICAgIH0KICAgICB9CiAKLSAgICBUZXh0RW5j
b2RpbmcgZGF0YUVuY29kaW5nID0gaXNNYWlsdG9Gb3JtID8gVVRGOEVuY29kaW5nKCkgOiBlbmNv
ZGluZ0Zyb21BY2NlcHRDaGFyc2V0KGNvcGllZEF0dHJpYnV0ZXMuYWNjZXB0Q2hhcnNldCgpLCBk
b2N1bWVudCk7Ci0gICAgUmVmUHRyPERPTUZvcm1EYXRhPiBkb21Gb3JtRGF0YSA9IERPTUZvcm1E
YXRhOjpjcmVhdGUoZGF0YUVuY29kaW5nLmVuY29kaW5nRm9yRm9ybVN1Ym1pc3Npb24oKSk7Ci0g
ICAgVmVjdG9yPHN0ZDo6cGFpcjxTdHJpbmcsIFN0cmluZz4+IGZvcm1WYWx1ZXM7CisgICAgYXV0
byBkYXRhRW5jb2RpbmcgPSBpc01haWx0b0Zvcm0gPyBVVEY4RW5jb2RpbmcoKSA6IGVuY29kaW5n
RnJvbUFjY2VwdENoYXJzZXQoY29waWVkQXR0cmlidXRlcy5hY2NlcHRDaGFyc2V0KCksIGRvY3Vt
ZW50KTsKKyAgICBhdXRvIGRvbUZvcm1EYXRhID0gRE9NRm9ybURhdGE6OmNyZWF0ZShkYXRhRW5j
b2RpbmcuZW5jb2RpbmdGb3JGb3JtU3VibWlzc2lvbigpKTsKKyAgICBTdHJpbmdQYWlyVmVjdG9y
IGZvcm1WYWx1ZXM7CiAKICAgICBib29sIGNvbnRhaW5zUGFzc3dvcmREYXRhID0gZmFsc2U7Ci0g
ICAgZm9yIChhdXRvJiBjb250cm9sIDogZm9ybS0+YXNzb2NpYXRlZEVsZW1lbnRzKCkpIHsKLSAg
ICAgICAgSFRNTEVsZW1lbnQmIGVsZW1lbnQgPSBjb250cm9sLT5hc0hUTUxFbGVtZW50KCk7Cisg
ICAgZm9yIChhdXRvJiBjb250cm9sIDogZm9ybS5hc3NvY2lhdGVkRWxlbWVudHMoKSkgeworICAg
ICAgICBhdXRvJiBlbGVtZW50ID0gY29udHJvbC0+YXNIVE1MRWxlbWVudCgpOwogICAgICAgICBp
ZiAoIWVsZW1lbnQuaXNEaXNhYmxlZEZvcm1Db250cm9sKCkpCi0gICAgICAgICAgICBjb250cm9s
LT5hcHBlbmRGb3JtRGF0YSgqZG9tRm9ybURhdGEsIGlzTXVsdGlQYXJ0Rm9ybSk7CisgICAgICAg
ICAgICBjb250cm9sLT5hcHBlbmRGb3JtRGF0YShkb21Gb3JtRGF0YSwgaXNNdWx0aVBhcnRGb3Jt
KTsKICAgICAgICAgaWYgKGlzPEhUTUxJbnB1dEVsZW1lbnQ+KGVsZW1lbnQpKSB7Ci0gICAgICAg
ICAgICBIVE1MSW5wdXRFbGVtZW50JiBpbnB1dCA9IGRvd25jYXN0PEhUTUxJbnB1dEVsZW1lbnQ+
KGVsZW1lbnQpOworICAgICAgICAgICAgYXV0byYgaW5wdXQgPSBkb3duY2FzdDxIVE1MSW5wdXRF
bGVtZW50PihlbGVtZW50KTsKICAgICAgICAgICAgIGlmIChpbnB1dC5pc1RleHRGaWVsZCgpKSB7
Ci0gICAgICAgICAgICAgICAgZm9ybVZhbHVlcy5hcHBlbmQoc3RkOjpwYWlyPFN0cmluZywgU3Ry
aW5nPihpbnB1dC5uYW1lKCkuc3RyaW5nKCksIGlucHV0LnZhbHVlKCkpKTsKKyAgICAgICAgICAg
ICAgICBmb3JtVmFsdWVzLmFwcGVuZCh7IGlucHV0Lm5hbWUoKS5zdHJpbmcoKSwgaW5wdXQudmFs
dWUoKSB9KTsKICAgICAgICAgICAgICAgICBpbnB1dC5hZGRTZWFyY2hSZXN1bHQoKTsKICAgICAg
ICAgICAgIH0KICAgICAgICAgICAgIGlmIChpbnB1dC5pc1Bhc3N3b3JkRmllbGQoKSAmJiAhaW5w
dXQudmFsdWUoKS5pc0VtcHR5KCkpCkBAIC0yMjMsMTEgKzIwOSwxMSBAQCBSZWY8Rm9ybVN1Ym1p
c3Npb24+IEZvcm1TdWJtaXNzaW9uOjpjcmVhdGUoSFRNTEZvcm1FbGVtZW50KiBmb3JtLCBjb25z
dCBBdHRyaWJ1dAogICAgIFN0cmluZyBib3VuZGFyeTsKIAogICAgIGlmIChpc011bHRpUGFydEZv
cm0pIHsKLSAgICAgICAgZm9ybURhdGEgPSBGb3JtRGF0YTo6Y3JlYXRlTXVsdGlQYXJ0KCooc3Rh
dGljX2Nhc3Q8Rm9ybURhdGFMaXN0Kj4oZG9tRm9ybURhdGEuZ2V0KCkpKSwgZG9tRm9ybURhdGEt
PmVuY29kaW5nKCksICZkb2N1bWVudCk7CisgICAgICAgIGZvcm1EYXRhID0gRm9ybURhdGE6OmNy
ZWF0ZU11bHRpUGFydChkb21Gb3JtRGF0YSwgZG9tRm9ybURhdGEtPmVuY29kaW5nKCksICZkb2N1
bWVudCk7CiAgICAgICAgIGJvdW5kYXJ5ID0gZm9ybURhdGEtPmJvdW5kYXJ5KCkuZGF0YSgpOwog
ICAgIH0gZWxzZSB7Ci0gICAgICAgIGZvcm1EYXRhID0gRm9ybURhdGE6OmNyZWF0ZSgqKHN0YXRp
Y19jYXN0PEZvcm1EYXRhTGlzdCo+KGRvbUZvcm1EYXRhLmdldCgpKSksIGRvbUZvcm1EYXRhLT5l
bmNvZGluZygpLCBhdHRyaWJ1dGVzLm1ldGhvZCgpID09IEdldE1ldGhvZCA/IEZvcm1EYXRhOjpG
b3JtVVJMRW5jb2RlZCA6IEZvcm1EYXRhOjpwYXJzZUVuY29kaW5nVHlwZShlbmNvZGluZ1R5cGUp
KTsKLSAgICAgICAgaWYgKGNvcGllZEF0dHJpYnV0ZXMubWV0aG9kKCkgPT0gUG9zdE1ldGhvZCAm
JiBpc01haWx0b0Zvcm0pIHsKKyAgICAgICAgZm9ybURhdGEgPSBGb3JtRGF0YTo6Y3JlYXRlKGRv
bUZvcm1EYXRhLCBkb21Gb3JtRGF0YS0+ZW5jb2RpbmcoKSwgYXR0cmlidXRlcy5tZXRob2QoKSA9
PSBNZXRob2Q6OkdldCA/IEZvcm1EYXRhOjpGb3JtVVJMRW5jb2RlZCA6IEZvcm1EYXRhOjpwYXJz
ZUVuY29kaW5nVHlwZShlbmNvZGluZ1R5cGUpKTsKKyAgICAgICAgaWYgKGNvcGllZEF0dHJpYnV0
ZXMubWV0aG9kKCkgPT0gTWV0aG9kOjpQb3N0ICYmIGlzTWFpbHRvRm9ybSkgewogICAgICAgICAg
ICAgLy8gQ29udmVydCB0aGUgZm9ybSBkYXRhIGludG8gYSBzdHJpbmcgdGhhdCB3ZSBwdXQgaW50
byB0aGUgVVJMLgogICAgICAgICAgICAgYXBwZW5kTWFpbHRvUG9zdEZvcm1EYXRhVG9VUkwoYWN0
aW9uVVJMLCAqZm9ybURhdGEsIGVuY29kaW5nVHlwZSk7CiAgICAgICAgICAgICBmb3JtRGF0YSA9
IEZvcm1EYXRhOjpjcmVhdGUoKTsKQEAgLTIzNiwxNCArMjIyLDE3IEBAIFJlZjxGb3JtU3VibWlz
c2lvbj4gRm9ybVN1Ym1pc3Npb246OmNyZWF0ZShIVE1MRm9ybUVsZW1lbnQqIGZvcm0sIGNvbnN0
IEF0dHJpYnV0CiAKICAgICBmb3JtRGF0YS0+c2V0SWRlbnRpZmllcihnZW5lcmF0ZUZvcm1EYXRh
SWRlbnRpZmllcigpKTsKICAgICBmb3JtRGF0YS0+c2V0Q29udGFpbnNQYXNzd29yZERhdGEoY29u
dGFpbnNQYXNzd29yZERhdGEpOworCiAgICAgU3RyaW5nIHRhcmdldE9yQmFzZVRhcmdldCA9IGNv
cGllZEF0dHJpYnV0ZXMudGFyZ2V0KCkuaXNFbXB0eSgpID8gZG9jdW1lbnQuYmFzZVRhcmdldCgp
IDogY29waWVkQXR0cmlidXRlcy50YXJnZXQoKTsKLSAgICBhdXRvIGZvcm1TdGF0ZSA9IEZvcm1T
dGF0ZTo6Y3JlYXRlKGZvcm0sIGZvcm1WYWx1ZXMsICZkb2N1bWVudCwgdHJpZ2dlcik7Ci0gICAg
cmV0dXJuIGFkb3B0UmVmKCpuZXcgRm9ybVN1Ym1pc3Npb24oY29waWVkQXR0cmlidXRlcy5tZXRo
b2QoKSwgYWN0aW9uVVJMLCB0YXJnZXRPckJhc2VUYXJnZXQsIGVuY29kaW5nVHlwZSwgV1RGTW92
ZShmb3JtU3RhdGUpLCBXVEZNb3ZlKGZvcm1EYXRhKSwgYm91bmRhcnksIGxvY2tIaXN0b3J5LCBl
dmVudCkpOworCisgICAgYXV0byBmb3JtU3RhdGUgPSBGb3JtU3RhdGU6OmNyZWF0ZShmb3JtLCBX
VEZNb3ZlKGZvcm1WYWx1ZXMpLCBkb2N1bWVudCwgdHJpZ2dlcik7CisKKyAgICByZXR1cm4gYWRv
cHRSZWYoKm5ldyBGb3JtU3VibWlzc2lvbihjb3BpZWRBdHRyaWJ1dGVzLm1ldGhvZCgpLCBhY3Rp
b25VUkwsIHRhcmdldE9yQmFzZVRhcmdldCwgZW5jb2RpbmdUeXBlLCBXVEZNb3ZlKGZvcm1TdGF0
ZSksIGZvcm1EYXRhLnJlbGVhc2VOb25OdWxsKCksIGJvdW5kYXJ5LCBsb2NrSGlzdG9yeSwgZXZl
bnQpKTsKIH0KIAogVVJMIEZvcm1TdWJtaXNzaW9uOjpyZXF1ZXN0VVJMKCkgY29uc3QKIHsKLSAg
ICBpZiAobV9tZXRob2QgPT0gRm9ybVN1Ym1pc3Npb246OlBvc3RNZXRob2QpCisgICAgaWYgKG1f
bWV0aG9kID09IE1ldGhvZDo6UG9zdCkKICAgICAgICAgcmV0dXJuIG1fYWN0aW9uOwogCiAgICAg
VVJMIHJlcXVlc3RVUkwobV9hY3Rpb24pOwpAQCAtMjU5LDcgKzI0OCw3IEBAIHZvaWQgRm9ybVN1
Ym1pc3Npb246OnBvcHVsYXRlRnJhbWVMb2FkUmVxdWVzdChGcmFtZUxvYWRSZXF1ZXN0JiBmcmFt
ZVJlcXVlc3QpCiAgICAgaWYgKCFtX3JlZmVycmVyLmlzRW1wdHkoKSkKICAgICAgICAgZnJhbWVS
ZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLnNldEhUVFBSZWZlcnJlcihtX3JlZmVycmVyKTsKIAot
ICAgIGlmIChtX21ldGhvZCA9PSBGb3JtU3VibWlzc2lvbjo6UG9zdE1ldGhvZCkgeworICAgIGlm
IChtX21ldGhvZCA9PSBNZXRob2Q6OlBvc3QpIHsKICAgICAgICAgZnJhbWVSZXF1ZXN0LnJlc291
cmNlUmVxdWVzdCgpLnNldEhUVFBNZXRob2QoIlBPU1QiKTsKICAgICAgICAgZnJhbWVSZXF1ZXN0
LnJlc291cmNlUmVxdWVzdCgpLnNldEhUVFBCb2R5KG1fZm9ybURhdGEuY29weVJlZigpKTsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdWJtaXNzaW9uLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN1Ym1pc3Npb24uaAppbmRleCA0MWIzN2UwNjQyYjE4YTgw
ZTE2NGYwNTY2YmVmODhkMmQxMGU3ZWY4Li4yNTI0MTJjMGMwMmIzOWJkOWU4YjQ1MWFjNzUzNWE0
NTczNTQ3NmEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN1Ym1pc3Np
b24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN1Ym1pc3Npb24uaApAQCAtMzYs
MzEgKzM2LDIxIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgRG9jdW1lbnQ7CiBj
bGFzcyBFdmVudDsKIGNsYXNzIEZvcm1EYXRhOworCiBzdHJ1Y3QgRnJhbWVMb2FkUmVxdWVzdDsK
LWNsYXNzIEhUTUxGb3JtRWxlbWVudDsKLWNsYXNzIFRleHRFbmNvZGluZzsKIAogY2xhc3MgRm9y
bVN1Ym1pc3Npb24gOiBwdWJsaWMgUmVmQ291bnRlZDxGb3JtU3VibWlzc2lvbj4gewogcHVibGlj
OgotICAgIGVudW0gTWV0aG9kIHsgR2V0TWV0aG9kLCBQb3N0TWV0aG9kIH07CisgICAgZW51bSBj
bGFzcyBNZXRob2QgeyBHZXQsIFBvc3QgfTsKIAogICAgIGNsYXNzIEF0dHJpYnV0ZXMgewotICAg
ICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShBdHRyaWJ1dGVzKTsKICAgICBwdWJsaWM6Ci0gICAg
ICAgIEF0dHJpYnV0ZXMoKQotICAgICAgICAgICAgOiBtX21ldGhvZChHZXRNZXRob2QpCi0gICAg
ICAgICAgICAsIG1faXNNdWx0aVBhcnRGb3JtKGZhbHNlKQotICAgICAgICAgICAgLCBtX2VuY29k
aW5nVHlwZSgiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIikKLSAgICAgICAgewot
ICAgICAgICB9Ci0KICAgICAgICAgTWV0aG9kIG1ldGhvZCgpIGNvbnN0IHsgcmV0dXJuIG1fbWV0
aG9kOyB9CiAgICAgICAgIHN0YXRpYyBNZXRob2QgcGFyc2VNZXRob2RUeXBlKGNvbnN0IFN0cmlu
ZyYpOwogICAgICAgICB2b2lkIHVwZGF0ZU1ldGhvZFR5cGUoY29uc3QgU3RyaW5nJik7Ci0gICAg
ICAgIHN0YXRpYyBTdHJpbmcgbWV0aG9kU3RyaW5nKE1ldGhvZCBtZXRob2QpIHsgcmV0dXJuIG1l
dGhvZCA9PSBQb3N0TWV0aG9kID8gInBvc3QiIDogImdldCI7IH0KKyAgICAgICAgc3RhdGljIEFT
Q0lJTGl0ZXJhbCBtZXRob2RTdHJpbmcoTWV0aG9kIG1ldGhvZCkgeyByZXR1cm4gQVNDSUlMaXRl
cmFsIHsgbWV0aG9kID09IE1ldGhvZDo6UG9zdCA/ICJwb3N0IiA6ICJnZXQiIH07IH0KIAogICAg
ICAgICBjb25zdCBTdHJpbmcmIGFjdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fYWN0aW9uOyB9CiAg
ICAgICAgIHZvaWQgcGFyc2VBY3Rpb24oY29uc3QgU3RyaW5nJik7CkBAIC03Niw1MCArNjYsNDYg
QEAgcHVibGljOgogICAgICAgICBjb25zdCBTdHJpbmcmIGFjY2VwdENoYXJzZXQoKSBjb25zdCB7
IHJldHVybiBtX2FjY2VwdENoYXJzZXQ7IH0KICAgICAgICAgdm9pZCBzZXRBY2NlcHRDaGFyc2V0
KGNvbnN0IFN0cmluZyYgdmFsdWUpIHsgbV9hY2NlcHRDaGFyc2V0ID0gdmFsdWU7IH0KIAotICAg
ICAgICB2b2lkIGNvcHlGcm9tKGNvbnN0IEF0dHJpYnV0ZXMmKTsKLQogICAgIHByaXZhdGU6Ci0g
ICAgICAgIE1ldGhvZCBtX21ldGhvZDsKLSAgICAgICAgYm9vbCBtX2lzTXVsdGlQYXJ0Rm9ybTsK
LQorICAgICAgICBNZXRob2QgbV9tZXRob2QgeyBNZXRob2Q6OkdldCB9OworICAgICAgICBib29s
IG1faXNNdWx0aVBhcnRGb3JtIHsgZmFsc2UgfTsKICAgICAgICAgU3RyaW5nIG1fYWN0aW9uOwog
ICAgICAgICBTdHJpbmcgbV90YXJnZXQ7Ci0gICAgICAgIFN0cmluZyBtX2VuY29kaW5nVHlwZTsK
KyAgICAgICAgU3RyaW5nIG1fZW5jb2RpbmdUeXBlIHsgQVNDSUlMaXRlcmFsIHsgImFwcGxpY2F0
aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIgfSB9OwogICAgICAgICBTdHJpbmcgbV9hY2NlcHRD
aGFyc2V0OwogICAgIH07CiAKLSAgICBzdGF0aWMgUmVmPEZvcm1TdWJtaXNzaW9uPiBjcmVhdGUo
SFRNTEZvcm1FbGVtZW50KiwgY29uc3QgQXR0cmlidXRlcyYsIFBhc3NSZWZQdHI8RXZlbnQ+IGV2
ZW50LCBMb2NrSGlzdG9yeSwgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyKTsKKyAgICBzdGF0aWMgUmVm
PEZvcm1TdWJtaXNzaW9uPiBjcmVhdGUoSFRNTEZvcm1FbGVtZW50JiwgY29uc3QgQXR0cmlidXRl
cyYsIEV2ZW50KiwgTG9ja0hpc3RvcnksIEZvcm1TdWJtaXNzaW9uVHJpZ2dlcik7CiAKICAgICB2
b2lkIHBvcHVsYXRlRnJhbWVMb2FkUmVxdWVzdChGcmFtZUxvYWRSZXF1ZXN0Jik7Ci0gICAgCiAg
ICAgVVJMIHJlcXVlc3RVUkwoKSBjb25zdDsKIAogICAgIE1ldGhvZCBtZXRob2QoKSBjb25zdCB7
IHJldHVybiBtX21ldGhvZDsgfQogICAgIGNvbnN0IFVSTCYgYWN0aW9uKCkgY29uc3QgeyByZXR1
cm4gbV9hY3Rpb247IH0KICAgICBjb25zdCBTdHJpbmcmIHRhcmdldCgpIGNvbnN0IHsgcmV0dXJu
IG1fdGFyZ2V0OyB9Ci0gICAgdm9pZCBjbGVhclRhcmdldCgpIHsgbV90YXJnZXQgPSBTdHJpbmco
KTsgfQogICAgIGNvbnN0IFN0cmluZyYgY29udGVudFR5cGUoKSBjb25zdCB7IHJldHVybiBtX2Nv
bnRlbnRUeXBlOyB9Ci0gICAgRm9ybVN0YXRlKiBzdGF0ZSgpIGNvbnN0IHsgcmV0dXJuIG1fZm9y
bVN0YXRlLmdldCgpOyB9Ci0gICAgRm9ybURhdGEqIGRhdGEoKSBjb25zdCB7IHJldHVybiBtX2Zv
cm1EYXRhLmdldCgpOyB9CisgICAgRm9ybVN0YXRlJiBzdGF0ZSgpIGNvbnN0IHsgcmV0dXJuIG1f
Zm9ybVN0YXRlOyB9CisgICAgRm9ybURhdGEmIGRhdGEoKSBjb25zdCB7IHJldHVybiBtX2Zvcm1E
YXRhOyB9CiAgICAgY29uc3QgU3RyaW5nIGJvdW5kYXJ5KCkgY29uc3QgeyByZXR1cm4gbV9ib3Vu
ZGFyeTsgfQogICAgIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5KCkgY29uc3QgeyByZXR1cm4gbV9s
b2NrSGlzdG9yeTsgfQogICAgIEV2ZW50KiBldmVudCgpIGNvbnN0IHsgcmV0dXJuIG1fZXZlbnQu
Z2V0KCk7IH0KLQogICAgIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIoKSBjb25zdCB7IHJldHVybiBt
X3JlZmVycmVyOyB9Ci0gICAgdm9pZCBzZXRSZWZlcnJlcihjb25zdCBTdHJpbmcmIHJlZmVycmVy
KSB7IG1fcmVmZXJyZXIgPSByZWZlcnJlcjsgfQogICAgIGNvbnN0IFN0cmluZyYgb3JpZ2luKCkg
Y29uc3QgeyByZXR1cm4gbV9vcmlnaW47IH0KKworICAgIHZvaWQgY2xlYXJUYXJnZXQoKSB7IG1f
dGFyZ2V0ID0geyB9OyB9CisgICAgdm9pZCBzZXRSZWZlcnJlcihjb25zdCBTdHJpbmcmIHJlZmVy
cmVyKSB7IG1fcmVmZXJyZXIgPSByZWZlcnJlcjsgfQogICAgIHZvaWQgc2V0T3JpZ2luKGNvbnN0
IFN0cmluZyYgb3JpZ2luKSB7IG1fb3JpZ2luID0gb3JpZ2luOyB9CiAKIHByaXZhdGU6Ci0gICAg
Rm9ybVN1Ym1pc3Npb24oTWV0aG9kLCBjb25zdCBVUkwmIGFjdGlvbiwgY29uc3QgU3RyaW5nJiB0
YXJnZXQsIGNvbnN0IFN0cmluZyYgY29udGVudFR5cGUsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwg
UGFzc1JlZlB0cjxGb3JtRGF0YT4sIGNvbnN0IFN0cmluZyYgYm91bmRhcnksIExvY2tIaXN0b3J5
LCBQYXNzUmVmUHRyPEV2ZW50Pik7CisgICAgRm9ybVN1Ym1pc3Npb24oTWV0aG9kLCBjb25zdCBV
UkwmIGFjdGlvbiwgY29uc3QgU3RyaW5nJiB0YXJnZXQsIGNvbnN0IFN0cmluZyYgY29udGVudFR5
cGUsIFJlZjxGb3JtU3RhdGU+JiYsIFJlZjxGb3JtRGF0YT4mJiwgY29uc3QgU3RyaW5nJiBib3Vu
ZGFyeSwgTG9ja0hpc3RvcnksIEV2ZW50Kik7CiAKICAgICAvLyBGSVhNRTogSG9sZCBhbiBpbnN0
YW5jZSBvZiBBdHRyaWJ1dGVzIGluc3RlYWQgb2YgaW5kaXZpZHVhbCBtZW1iZXJzLgogICAgIE1l
dGhvZCBtX21ldGhvZDsKICAgICBVUkwgbV9hY3Rpb247CiAgICAgU3RyaW5nIG1fdGFyZ2V0Owog
ICAgIFN0cmluZyBtX2NvbnRlbnRUeXBlOwotICAgIFJlZlB0cjxGb3JtU3RhdGU+IG1fZm9ybVN0
YXRlOwotICAgIFJlZlB0cjxGb3JtRGF0YT4gbV9mb3JtRGF0YTsKKyAgICBSZWY8Rm9ybVN0YXRl
PiBtX2Zvcm1TdGF0ZTsKKyAgICBSZWY8Rm9ybURhdGE+IG1fZm9ybURhdGE7CiAgICAgU3RyaW5n
IG1fYm91bmRhcnk7CiAgICAgTG9ja0hpc3RvcnkgbV9sb2NrSGlzdG9yeTsKICAgICBSZWZQdHI8
RXZlbnQ+IG1fZXZlbnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVM
b2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcAppbmRleCA0
Y2ZlYmVmMTFmYmVkMzczODkxMTFiMmIxYjQ0ZjhlNmZkNzQ0MzQzLi5lNWNjODk1NWQzNmQ0YjA5
ODQ0NTc1MjVkNzkxZGRjMjNjYTM5MmI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvRnJhbWVMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRl
ci5jcHAKQEAgLTM2NiwxNyArMzY2LDE1IEBAIHZvaWQgRnJhbWVMb2FkZXI6OnVybFNlbGVjdGVk
KGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmIHBhc3NlZFJlcXVlc3QsIEV2ZW50KiB0cmlnCiAKIHZv
aWQgRnJhbWVMb2FkZXI6OnN1Ym1pdEZvcm0oUmVmPEZvcm1TdWJtaXNzaW9uPiYmIHN1Ym1pc3Np
b24pCiB7Ci0gICAgQVNTRVJUKHN1Ym1pc3Npb24tPm1ldGhvZCgpID09IEZvcm1TdWJtaXNzaW9u
OjpQb3N0TWV0aG9kIHx8IHN1Ym1pc3Npb24tPm1ldGhvZCgpID09IEZvcm1TdWJtaXNzaW9uOjpH
ZXRNZXRob2QpOworICAgIEFTU0VSVChzdWJtaXNzaW9uLT5tZXRob2QoKSA9PSBGb3JtU3VibWlz
c2lvbjo6TWV0aG9kOjpQb3N0IHx8IHN1Ym1pc3Npb24tPm1ldGhvZCgpID09IEZvcm1TdWJtaXNz
aW9uOjpNZXRob2Q6OkdldCk7CiAKICAgICAvLyBGSVhNRTogRmluZCBhIGdvb2Qgc3BvdCBmb3Ig
dGhlc2UuCi0gICAgQVNTRVJUKHN1Ym1pc3Npb24tPmRhdGEoKSk7Ci0gICAgQVNTRVJUKHN1Ym1p
c3Npb24tPnN0YXRlKCkpOwotICAgIEFTU0VSVCghc3VibWlzc2lvbi0+c3RhdGUoKS0+c291cmNl
RG9jdW1lbnQoKS0+ZnJhbWUoKSB8fCBzdWJtaXNzaW9uLT5zdGF0ZSgpLT5zb3VyY2VEb2N1bWVu
dCgpLT5mcmFtZSgpID09ICZtX2ZyYW1lKTsKKyAgICBBU1NFUlQoIXN1Ym1pc3Npb24tPnN0YXRl
KCkuc291cmNlRG9jdW1lbnQoKS5mcmFtZSgpIHx8IHN1Ym1pc3Npb24tPnN0YXRlKCkuc291cmNl
RG9jdW1lbnQoKS5mcmFtZSgpID09ICZtX2ZyYW1lKTsKIAogICAgIGlmICghbV9mcmFtZS5wYWdl
KCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGlmIChzdWJtaXNzaW9uLT5zdGF0ZSgpLT5zb3Vy
Y2VEb2N1bWVudCgpLT5wYWdlQ2FjaGVTdGF0ZSgpICE9IERvY3VtZW50OjpOb3RJblBhZ2VDYWNo
ZSkKKyAgICBpZiAoc3VibWlzc2lvbi0+c3RhdGUoKS5zb3VyY2VEb2N1bWVudCgpLnBhZ2VDYWNo
ZVN0YXRlKCkgIT0gRG9jdW1lbnQ6Ok5vdEluUGFnZUNhY2hlKQogICAgICAgICByZXR1cm47CiAK
ICAgICBpZiAoc3VibWlzc2lvbi0+YWN0aW9uKCkuaXNFbXB0eSgpKQpAQCAtMzk4LDEyICszOTYs
MTIgQEAgdm9pZCBGcmFtZUxvYWRlcjo6c3VibWl0Rm9ybShSZWY8Rm9ybVN1Ym1pc3Npb24+JiYg
c3VibWlzc2lvbikKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIEZyYW1lKiB0YXJnZXRG
cmFtZSA9IGZpbmRGcmFtZUZvck5hdmlnYXRpb24oc3VibWlzc2lvbi0+dGFyZ2V0KCksIHN1Ym1p
c3Npb24tPnN0YXRlKCktPnNvdXJjZURvY3VtZW50KCkpOworICAgIEZyYW1lKiB0YXJnZXRGcmFt
ZSA9IGZpbmRGcmFtZUZvck5hdmlnYXRpb24oc3VibWlzc2lvbi0+dGFyZ2V0KCksICZzdWJtaXNz
aW9uLT5zdGF0ZSgpLnNvdXJjZURvY3VtZW50KCkpOwogICAgIGlmICghdGFyZ2V0RnJhbWUpIHsK
ICAgICAgICAgaWYgKCFET01XaW5kb3c6OmFsbG93UG9wVXAoJm1fZnJhbWUpICYmICFTY3JpcHRD
b250cm9sbGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSkKICAgICAgICAgICAgIHJldHVybjsK
IAotICAgICAgICAvLyBGSVhNRTogdGFyZ2V0RnJhbWUgY2FuIGJlIDAgZm9yIHR3byBkaXN0aW5j
dCByZWFzb25zOgorICAgICAgICAvLyBGSVhNRTogdGFyZ2V0RnJhbWUgY2FuIGJlIG51bGwgZm9y
IHR3byBkaXN0aW5jdCByZWFzb25zOgogICAgICAgICAvLyAxLiBUaGUgZnJhbWUgd2FzIG5vdCBm
b3VuZCBieSBuYW1lLCBzbyB3ZSBzaG91bGQgdHJ5IG9wZW5pbmcgYSBuZXcgd2luZG93LgogICAg
ICAgICAvLyAyLiBUaGUgZnJhbWUgd2FzIGZvdW5kLCBidXQgbmF2aWdhdGluZyBpdCB3YXMgbm90
IGFsbG93ZWQsIGUuZy4gYnkgSFRNTDUgc2FuZGJveCBvciBieSBvcmlnaW4gY2hlY2tzLgogICAg
ICAgICAvLyBDb250aW51aW5nIGZvcm0gc3VibWlzc2lvbiBtYWtlcyBubyBzZW5zZSBpbiB0aGUg
bGF0dGVyIGNhc2UuCkBAIC00MzQsNyArNDMyLDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6c3VibWl0
Rm9ybShSZWY8Rm9ybVN1Ym1pc3Npb24+JiYgc3VibWlzc2lvbikKICAgICAgICAgbV9zdWJtaXR0
ZWRGb3JtVVJMID0gc3VibWlzc2lvbi0+cmVxdWVzdFVSTCgpOwogICAgIH0KIAotICAgIHN1Ym1p
c3Npb24tPmRhdGEoKS0+Z2VuZXJhdGVGaWxlcyhtX2ZyYW1lLmRvY3VtZW50KCkpOworICAgIHN1
Ym1pc3Npb24tPmRhdGEoKS5nZW5lcmF0ZUZpbGVzKG1fZnJhbWUuZG9jdW1lbnQoKSk7CiAgICAg
c3VibWlzc2lvbi0+c2V0UmVmZXJyZXIob3V0Z29pbmdSZWZlcnJlcigpKTsKICAgICBzdWJtaXNz
aW9uLT5zZXRPcmlnaW4ob3V0Z29pbmdPcmlnaW4oKSk7CiAKQEAgLTY2MCwyMCArNjU4LDE4IEBA
IHZvaWQgRnJhbWVMb2FkZXI6OnJlY2VpdmVkRmlyc3REYXRhKCkKICAgICBpZiAoIW1fZG9jdW1l
bnRMb2FkZXIpCiAgICAgICAgIHJldHVybjsKIAorICAgIEFTU0VSVChtX2ZyYW1lLmRvY3VtZW50
KCkpOworICAgIGF1dG8mIGRvY3VtZW50ID0gKm1fZnJhbWUuZG9jdW1lbnQoKTsKKwogICAgIGRv
dWJsZSBkZWxheTsKICAgICBTdHJpbmcgdXJsU3RyaW5nOwogICAgIGlmICghcGFyc2VIVFRQUmVm
cmVzaChtX2RvY3VtZW50TG9hZGVyLT5yZXNwb25zZSgpLmh0dHBIZWFkZXJGaWVsZChIVFRQSGVh
ZGVyTmFtZTo6UmVmcmVzaCksIGRlbGF5LCB1cmxTdHJpbmcpKQogICAgICAgICByZXR1cm47Ci0g
ICAgVVJMIGNvbXBsZXRlZFVSTDsKLSAgICBpZiAodXJsU3RyaW5nLmlzRW1wdHkoKSkKLSAgICAg
ICAgY29tcGxldGVkVVJMID0gbV9mcmFtZS5kb2N1bWVudCgpLT51cmwoKTsKLSAgICBlbHNlCi0g
ICAgICAgIGNvbXBsZXRlZFVSTCA9IG1fZnJhbWUuZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwodXJs
U3RyaW5nKTsKLQorICAgIGF1dG8gY29tcGxldGVkVVJMID0gdXJsU3RyaW5nLmlzRW1wdHkoKSA/
IGRvY3VtZW50LnVybCgpIDogZG9jdW1lbnQuY29tcGxldGVVUkwodXJsU3RyaW5nKTsKICAgICBp
ZiAoIXByb3RvY29sSXNKYXZhU2NyaXB0KGNvbXBsZXRlZFVSTCkpCi0gICAgICAgIG1fZnJhbWUu
bmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlUmVkaXJlY3QobV9mcmFtZS5kb2N1bWVudCgp
LCBkZWxheSwgY29tcGxldGVkVVJMKTsKKyAgICAgICAgbV9mcmFtZS5uYXZpZ2F0aW9uU2NoZWR1
bGVyKCkuc2NoZWR1bGVSZWRpcmVjdChkb2N1bWVudCwgZGVsYXksIGNvbXBsZXRlZFVSTCk7CiAg
ICAgZWxzZSB7Ci0gICAgICAgIFN0cmluZyBtZXNzYWdlID0gIlJlZnVzZWQgdG8gcmVmcmVzaCAi
ICsgbV9mcmFtZS5kb2N1bWVudCgpLT51cmwoKS5zdHJpbmdDZW50ZXJFbGxpcHNpemVkVG9MZW5n
dGgoKSArICIgdG8gYSBqYXZhc2NyaXB0OiBVUkwiOworICAgICAgICBhdXRvIG1lc3NhZ2UgPSAi
UmVmdXNlZCB0byByZWZyZXNoICIgKyBkb2N1bWVudC51cmwoKS5zdHJpbmdDZW50ZXJFbGxpcHNp
emVkVG9MZW5ndGgoKSArICIgdG8gYSBqYXZhc2NyaXB0OiBVUkwiOwogICAgICAgICBtX2ZyYW1l
LmRvY3VtZW50KCktPmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OlNlY3VyaXR5LCBN
ZXNzYWdlTGV2ZWw6OkVycm9yLCBtZXNzYWdlKTsKICAgICB9CiB9CkBAIC0xMTM5LDcgKzExMzUs
NyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpsb2FkRnJhbWVSZXF1ZXN0KGNvbnN0IEZyYW1lTG9hZFJl
cXVlc3QmIHJlcXVlc3QsIEV2ZW50KiBldmVudAogICAgICAgICB8fCBldmVudC0+dGFyZ2V0KCkt
PnRvTm9kZSgpLT5kb2N1bWVudCgpLnBhZ2VDYWNoZVN0YXRlKCkgPT0gRG9jdW1lbnQ6Ok5vdElu
UGFnZUNhY2hlKTsKIAogICAgIC8vIFByb3RlY3QgZnJhbWUgZnJvbSBnZXR0aW5nIGJsb3duIGF3
YXkgaW5zaWRlIGRpc3BhdGNoQmVmb3JlTG9hZEV2ZW50IGluIGxvYWRXaXRoRG9jdW1lbnRMb2Fk
ZXIuCi0gICAgUmVmPEZyYW1lPiBwcm90ZWN0KG1fZnJhbWUpOworICAgIGF1dG8gcHJvdGVjdEZy
YW1lID0gbWFrZVJlZihtX2ZyYW1lKTsKIAogICAgIFVSTCB1cmwgPSByZXF1ZXN0LnJlc291cmNl
UmVxdWVzdCgpLnVybCgpOwogCkBAIC0xMTcyLDcgKzExNjgsNyBAQCB2b2lkIEZyYW1lTG9hZGVy
Ojpsb2FkRnJhbWVSZXF1ZXN0KGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmIHJlcXVlc3QsIEV2ZW50
KiBldmVudAogCiAgICAgLy8gRklYTUU6IEl0J3MgcG9zc2libGUgdGhpcyB0YXJnZXRGcmFtZSB3
aWxsIG5vdCBiZSB0aGUgc2FtZSBmcmFtZSB0aGF0IHdhcyB0YXJnZXRlZCBieSB0aGUgYWN0dWFs
CiAgICAgLy8gbG9hZCBpZiBmcmFtZSBuYW1lcyBoYXZlIGNoYW5nZWQuCi0gICAgRnJhbWUqIHNv
dXJjZUZyYW1lID0gZm9ybVN0YXRlID8gZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLT5mcmFt
ZSgpIDogJm1fZnJhbWU7CisgICAgRnJhbWUqIHNvdXJjZUZyYW1lID0gZm9ybVN0YXRlID8gZm9y
bVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLmZyYW1lKCkgOiAmbV9mcmFtZTsKICAgICBpZiAoIXNv
dXJjZUZyYW1lKQogICAgICAgICBzb3VyY2VGcmFtZSA9ICZtX2ZyYW1lOwogICAgIEZyYW1lKiB0
YXJnZXRGcmFtZSA9IHNvdXJjZUZyYW1lLT5sb2FkZXIoKS5maW5kRnJhbWVGb3JOYXZpZ2F0aW9u
KHJlcXVlc3QuZnJhbWVOYW1lKCkpOwpAQCAtMTI1Niw3ICsxMjUyLDcgQEAgdm9pZCBGcmFtZUxv
YWRlcjo6bG9hZFVSTChjb25zdCBGcmFtZUxvYWRSZXF1ZXN0JiBmcmFtZUxvYWRSZXF1ZXN0LCBj
b25zdCBTdHJpbmcKICAgICAgICAgb2xkRG9jdW1lbnRMb2FkZXItPnNldExhc3RDaGVja2VkUmVx
dWVzdChSZXNvdXJjZVJlcXVlc3QoKSk7CiAgICAgICAgIHBvbGljeUNoZWNrZXIoKS5zdG9wQ2hl
Y2soKTsKICAgICAgICAgcG9saWN5Q2hlY2tlcigpLnNldExvYWRUeXBlKG5ld0xvYWRUeXBlKTsK
LSAgICAgICAgcG9saWN5Q2hlY2tlcigpLmNoZWNrTmF2aWdhdGlvblBvbGljeShyZXF1ZXN0LCBm
YWxzZSAvKiBkaWRSZWNlaXZlUmVkaXJlY3RSZXNwb25zZSAqLywgb2xkRG9jdW1lbnRMb2FkZXIu
Z2V0KCksIGZvcm1TdGF0ZSwgW3RoaXNdKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwg
Rm9ybVN0YXRlKiwgYm9vbCBzaG91bGRDb250aW51ZSkgeworICAgICAgICBwb2xpY3lDaGVja2Vy
KCkuY2hlY2tOYXZpZ2F0aW9uUG9saWN5KHJlcXVlc3QsIGZhbHNlIC8qIGRpZFJlY2VpdmVSZWRp
cmVjdFJlc3BvbnNlICovLCBvbGREb2N1bWVudExvYWRlci5nZXQoKSwgZm9ybVN0YXRlLCBbdGhp
c10gKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiwgYm9vbCBzaG91
bGRDb250aW51ZSkgewogICAgICAgICAgICAgY29udGludWVGcmFnbWVudFNjcm9sbEFmdGVyTmF2
aWdhdGlvblBvbGljeShyZXF1ZXN0LCBzaG91bGRDb250aW51ZSk7CiAgICAgICAgIH0pOwogICAg
ICAgICByZXR1cm47CkBAIC0xNDUyLDcgKzE0NDgsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpsb2Fk
V2l0aERvY3VtZW50TG9hZGVyKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIEZyYW1lTG9hZFR5cGUg
dAogICAgICAgICBvbGREb2N1bWVudExvYWRlci0+c2V0VHJpZ2dlcmluZ0FjdGlvbihhY3Rpb24p
OwogICAgICAgICBvbGREb2N1bWVudExvYWRlci0+c2V0TGFzdENoZWNrZWRSZXF1ZXN0KFJlc291
cmNlUmVxdWVzdCgpKTsKICAgICAgICAgcG9saWN5Q2hlY2tlcigpLnN0b3BDaGVjaygpOwotICAg
ICAgICBwb2xpY3lDaGVja2VyKCkuY2hlY2tOYXZpZ2F0aW9uUG9saWN5KGxvYWRlci0+cmVxdWVz
dCgpLCBmYWxzZSAvKiBkaWRSZWNlaXZlUmVkaXJlY3RSZXNwb25zZSAqLywgb2xkRG9jdW1lbnRM
b2FkZXIuZ2V0KCksIGZvcm1TdGF0ZSwgW3RoaXNdKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVx
dWVzdCwgRm9ybVN0YXRlKiwgYm9vbCBzaG91bGRDb250aW51ZSkgeworICAgICAgICBwb2xpY3lD
aGVja2VyKCkuY2hlY2tOYXZpZ2F0aW9uUG9saWN5KGxvYWRlci0+cmVxdWVzdCgpLCBmYWxzZSAv
KiBkaWRSZWNlaXZlUmVkaXJlY3RSZXNwb25zZSAqLywgb2xkRG9jdW1lbnRMb2FkZXIuZ2V0KCks
IGZvcm1TdGF0ZSwgW3RoaXNdIChjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1T
dGF0ZSosIGJvb2wgc2hvdWxkQ29udGludWUpIHsKICAgICAgICAgICAgIGNvbnRpbnVlRnJhZ21l
bnRTY3JvbGxBZnRlck5hdmlnYXRpb25Qb2xpY3kocmVxdWVzdCwgc2hvdWxkQ29udGludWUpOwog
ICAgICAgICB9KTsKICAgICAgICAgcmV0dXJuOwpAQCAtMTQ3OSw3ICsxNDc1LDcgQEAgdm9pZCBG
cmFtZUxvYWRlcjo6bG9hZFdpdGhEb2N1bWVudExvYWRlcihEb2N1bWVudExvYWRlciogbG9hZGVy
LCBGcmFtZUxvYWRUeXBlIHQKICAgICAgICAgfQogICAgIH0KIAotICAgIHBvbGljeUNoZWNrZXIo
KS5jaGVja05hdmlnYXRpb25Qb2xpY3kobG9hZGVyLT5yZXF1ZXN0KCksIGZhbHNlIC8qIGRpZFJl
Y2VpdmVSZWRpcmVjdFJlc3BvbnNlICovLCBsb2FkZXIsIGZvcm1TdGF0ZSwgW3RoaXMsIGFsbG93
TmF2aWdhdGlvblRvSW52YWxpZFVSTF0oY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBG
b3JtU3RhdGUqIGZvcm1TdGF0ZSwgYm9vbCBzaG91bGRDb250aW51ZSkgeworICAgIHBvbGljeUNo
ZWNrZXIoKS5jaGVja05hdmlnYXRpb25Qb2xpY3kobG9hZGVyLT5yZXF1ZXN0KCksIGZhbHNlIC8q
IGRpZFJlY2VpdmVSZWRpcmVjdFJlc3BvbnNlICovLCBsb2FkZXIsIGZvcm1TdGF0ZSwgW3RoaXMs
IGFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTF0gKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVx
dWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIGJvb2wgc2hvdWxkQ29udGludWUpIHsKICAgICAg
ICAgY29udGludWVMb2FkQWZ0ZXJOYXZpZ2F0aW9uUG9saWN5KHJlcXVlc3QsIGZvcm1TdGF0ZSwg
c2hvdWxkQ29udGludWUsIGFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTCk7CiAgICAgfSk7CiB9
CkBAIC0yNzExLDcgKzI3MDcsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpsb2FkUG9zdFJlcXVlc3Qo
Y29uc3QgRnJhbWVMb2FkUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgU3RyaW5nJgogICAgICAgICAg
ICAgcmV0dXJuOwogICAgICAgICB9CiAKLSAgICAgICAgcG9saWN5Q2hlY2tlcigpLmNoZWNrTmV3
V2luZG93UG9saWN5KGFjdGlvbiwgd29ya2luZ1Jlc291cmNlUmVxdWVzdCwgV1RGTW92ZShmb3Jt
U3RhdGUpLCBmcmFtZU5hbWUsIFt0aGlzLCBhbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkwsIG9w
ZW5lclBvbGljeV0oY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBGb3JtU3RhdGUqIGZv
cm1TdGF0ZSwgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IE5hdmlnYXRpb25BY3Rpb24m
IGFjdGlvbiwgYm9vbCBzaG91bGRDb250aW51ZSkgeworICAgICAgICBwb2xpY3lDaGVja2VyKCku
Y2hlY2tOZXdXaW5kb3dQb2xpY3koYWN0aW9uLCB3b3JraW5nUmVzb3VyY2VSZXF1ZXN0LCBXVEZN
b3ZlKGZvcm1TdGF0ZSksIGZyYW1lTmFtZSwgW3RoaXMsIGFsbG93TmF2aWdhdGlvblRvSW52YWxp
ZFVSTCwgb3BlbmVyUG9saWN5XSAoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBGb3Jt
U3RhdGUqIGZvcm1TdGF0ZSwgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IE5hdmlnYXRp
b25BY3Rpb24mIGFjdGlvbiwgYm9vbCBzaG91bGRDb250aW51ZSkgewogICAgICAgICAgICAgY29u
dGludWVMb2FkQWZ0ZXJOZXdXaW5kb3dQb2xpY3kocmVxdWVzdCwgZm9ybVN0YXRlLCBmcmFtZU5h
bWUsIGFjdGlvbiwgc2hvdWxkQ29udGludWUsIGFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTCwg
b3BlbmVyUG9saWN5KTsKICAgICAgICAgfSk7CiAgICAgICAgIHJldHVybjsKQEAgLTI3NjksMTEg
KzI3NjUsMTEgQEAgdW5zaWduZWQgbG9uZyBGcmFtZUxvYWRlcjo6bG9hZFJlc291cmNlU3luY2hy
b25vdXNseShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXUKICAgICBpZiAoZXJyb3IuaXNOdWxs
KCkpIHsKICAgICAgICAgQVNTRVJUKCFuZXdSZXF1ZXN0LmlzTnVsbCgpKTsKIAotICAgICAgICBp
ZiAoIWRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZFN5
bmNocm9ub3VzbHkobmV3UmVxdWVzdCwgZXJyb3IsIHJlc3BvbnNlLCBkYXRhKSkgeworICAgICAg
ICBpZiAoIWRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWF5YmVMb2Fk
U3luY2hyb25vdXNseShuZXdSZXF1ZXN0LCBlcnJvciwgcmVzcG9uc2UsIGRhdGEpKSB7CiAgICAg
ICAgICAgICBWZWN0b3I8Y2hhcj4gYnVmZmVyOwogICAgICAgICAgICAgcGxhdGZvcm1TdHJhdGVn
aWVzKCktPmxvYWRlclN0cmF0ZWd5KCktPmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkobmV0d29y
a2luZ0NvbnRleHQoKSwgaWRlbnRpZmllciwgbmV3UmVxdWVzdCwgc3RvcmVkQ3JlZGVudGlhbHMs
IGNsaWVudENyZWRlbnRpYWxQb2xpY3ksIGVycm9yLCByZXNwb25zZSwgYnVmZmVyKTsKICAgICAg
ICAgICAgIGRhdGEgPSBTaGFyZWRCdWZmZXI6OmFkb3B0VmVjdG9yKGJ1ZmZlcik7Ci0gICAgICAg
ICAgICBkb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5tYXliZUxvYWRG
YWxsYmFja1N5bmNocm9ub3VzbHkobmV3UmVxdWVzdCwgZXJyb3IsIHJlc3BvbnNlLCBkYXRhKTsK
KyAgICAgICAgICAgIGRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWF5
YmVMb2FkRmFsbGJhY2tTeW5jaHJvbm91c2x5KG5ld1JlcXVlc3QsIGVycm9yLCByZXNwb25zZSwg
ZGF0YSk7CiAgICAgICAgICAgICBSZXNvdXJjZUxvYWRPYnNlcnZlcjo6c2hhcmVkT2JzZXJ2ZXIo
KS5sb2dTdWJyZXNvdXJjZUxvYWRpbmcoJm1fZnJhbWUsIG5ld1JlcXVlc3QsIHJlc3BvbnNlKTsK
ICAgICAgICAgfQogICAgIH0KQEAgLTMxMDgsNyArMzEwNCw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6
OmNvbnRpbnVlTG9hZEFmdGVyTmF2aWdhdGlvblBvbGljeShjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
IHJlcXVlCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBtX2NsaWVudC5kaXNwYXRjaFdp
bGxTdWJtaXRGb3JtKGZvcm1TdGF0ZSwgW3RoaXNdKFBvbGljeUFjdGlvbiBhY3Rpb24pIHsKKyAg
ICBtX2NsaWVudC5kaXNwYXRjaFdpbGxTdWJtaXRGb3JtKCpmb3JtU3RhdGUsIFt0aGlzXSAoUG9s
aWN5QWN0aW9uIGFjdGlvbikgewogICAgICAgICBwb2xpY3lDaGVja2VyKCkuY29udGludWVMb2Fk
QWZ0ZXJXaWxsU3VibWl0Rm9ybShhY3Rpb24pOwogICAgIH0pOwogfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaAppbmRleCBkMTNiMGEwNzlkZTk5ZjM4NzcwNTUyNDc4
YTdmYmIzMjA4OGQ5Y2Y1Li5hODA5NDdiZTdmZGMyMDBlYjBjMjEyMGEzMGM2ZDk0OTUwNzkxNjhh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaApAQCAtMSw1ICsx
LDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKQEAgLTE3NywxNCArMTc3LDE0IEBAIHB1
YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hTaG93KCkgPSAwOwogCiAgICAgdmlydHVh
bCB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIEZyYW1lUG9saWN5RnVuY3Rpb24pID0gMDsK
LSAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24o
Y29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIFBhc3NSZWZQ
dHI8Rm9ybVN0YXRlPiwgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIEZyYW1lUG9saWN5RnVuY3Rp
b24pID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0
aW9uQWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
LCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIEZyYW1lUG9saWN5RnVuY3Rpb24pID0gMDsKKyAgICB2
aXJ0dWFsIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3Qg
TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIEZvcm1TdGF0ZSosIGNv
bnN0IFN0cmluZyYgZnJhbWVOYW1lLCBGcmFtZVBvbGljeUZ1bmN0aW9uKSA9IDA7CisgICAgdmly
dHVhbCB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBO
YXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgRm9ybVN0YXRlKiwgRnJh
bWVQb2xpY3lGdW5jdGlvbikgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBjYW5jZWxQb2xpY3lDaGVj
aygpID0gMDsKIAogICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaFVuYWJsZVRvSW1wbGVtZW50UG9s
aWN5KGNvbnN0IFJlc291cmNlRXJyb3ImKSA9IDA7CiAKLSAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0
Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFBhc3NSZWZQdHI8Rm9ybVN0YXRlPikgPSAwOwotICAgIHZp
cnR1YWwgdm9pZCBkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwg
RnJhbWVQb2xpY3lGdW5jdGlvbikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaFdpbGxT
ZW5kU3VibWl0RXZlbnQoUmVmPEZvcm1TdGF0ZT4mJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBk
aXNwYXRjaFdpbGxTdWJtaXRGb3JtKEZvcm1TdGF0ZSYsIEZyYW1lUG9saWN5RnVuY3Rpb24pID0g
MDsKIAogICAgIHZpcnR1YWwgdm9pZCByZXZlcnRUb1Byb3Zpc2lvbmFsU3RhdGUoRG9jdW1lbnRM
b2FkZXIqKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNldE1haW5Eb2N1bWVudEVycm9yKERvY3Vt
ZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VFcnJvciYpID0gMDsKQEAgLTI3MiwxNCArMjcyLDEy
IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIGJvb2wgY2FuQ2FjaGVQYWdlKCkgY29uc3QgPSAwOwog
ICAgIHZpcnR1YWwgdm9pZCBjb252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxvYWQoRG9jdW1l
bnRMb2FkZXIqLCBTZXNzaW9uSUQsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmKSA9IDA7CiAKLSAgICB2aXJ0dWFsIFJlZlB0cjxGcmFtZT4gY3JlYXRlRnJh
bWUoY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiBuYW1lLCBIVE1MRnJhbWVPd25lckVsZW1lbnQq
LCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBib29sIGFsbG93c1Njcm9sbGluZywgaW50IG1hcmdp
bldpZHRoLCBpbnQgbWFyZ2luSGVpZ2h0KSA9IDA7Ci0gICAgdmlydHVhbCBSZWZQdHI8V2lkZ2V0
PiBjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYsIEhUTUxQbHVnSW5FbGVtZW50KiwgY29uc3Qg
VVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0
IFN0cmluZyYsIGJvb2wgbG9hZE1hbnVhbGx5KSA9IDA7CisgICAgdmlydHVhbCBSZWZQdHI8RnJh
bWU+IGNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgbmFtZSwgSFRNTEZyYW1l
T3duZXJFbGVtZW50JiwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgYm9vbCBhbGxvd3NTY3JvbGxp
bmcsIGludCBtYXJnaW5XaWR0aCwgaW50IG1hcmdpbkhlaWdodCkgPSAwOworICAgIHZpcnR1YWwg
UmVmUHRyPFdpZGdldD4gY3JlYXRlUGx1Z2luKGNvbnN0IEludFNpemUmLCBIVE1MUGx1Z0luRWxl
bWVudCYsIGNvbnN0IFVSTCYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFN0
cmluZz4mLCBjb25zdCBTdHJpbmcmLCBib29sIGxvYWRNYW51YWxseSkgPSAwOwogICAgIHZpcnR1
YWwgdm9pZCByZWNyZWF0ZVBsdWdpbihXaWRnZXQqKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHJl
ZGlyZWN0RGF0YVRvUGx1Z2luKFdpZGdldCogcGx1Z2luV2lkZ2V0KSA9IDA7CiAKLSAgICB2aXJ0
dWFsIFBhc3NSZWZQdHI8V2lkZ2V0PiBjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNp
emUmLCBIVE1MQXBwbGV0RWxlbWVudCosIGNvbnN0IFVSTCYgYmFzZVVSTCwgY29uc3QgVmVjdG9y
PFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykg
PSAwOwotCi0gICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoRGlkRmFpbFRvU3RhcnRQbHVnaW4oY29u
c3QgUGx1Z2luVmlld0Jhc2UqKSBjb25zdCB7IH0KKyAgICB2aXJ0dWFsIFJlZlB0cjxXaWRnZXQ+
IGNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYsIEhUTUxBcHBsZXRFbGVtZW50
JiwgY29uc3QgVVJMJiBiYXNlVVJMLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywg
Y29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKSA9IDA7CiAKICAgICB2aXJ0dWFsIE9i
amVjdENvbnRlbnRUeXBlIG9iamVjdENvbnRlbnRUeXBlKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmlu
ZyYgbWltZVR5cGUpID0gMDsKICAgICB2aXJ0dWFsIFN0cmluZyBvdmVycmlkZU1lZGlhVHlwZSgp
IGNvbnN0ID0gMDsKQEAgLTI5NCw2ICsyOTIsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBOU0Nh
Y2hlZFVSTFJlc3BvbnNlKiB3aWxsQ2FjaGVSZXNwb25zZShEb2N1bWVudExvYWRlciosIHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25zZSopIGNvbnN0ID0gMDsKICAg
ICB2aXJ0dWFsIE5TRGljdGlvbmFyeSAqZGF0YURldGVjdGlvbkNvbnRleHQoKSB7IHJldHVybiBu
dWxscHRyOyB9CiAjZW5kaWYKKwogI2lmIFBMQVRGT1JNKFdJTikgJiYgVVNFKENGVVJMQ09OTkVD
VElPTikKICAgICAvLyBGSVhNRTogV2luZG93cyBzaG91bGQgdXNlIHdpbGxDYWNoZVJlc3BvbnNl
IC0gPGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NzI1Nz4uCiAgICAg
dmlydHVhbCBib29sIHNob3VsZENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBjb25zdCB1bnNpZ25l
ZCBjaGFyKiBkYXRhLCB1bnNpZ25lZCBsb25nIGxvbmcgbGVuZ3RoKSA9IDA7CkBAIC0zMDksMTAg
KzMwOCwxMCBAQCBwdWJsaWM6CiAgICAgLy8gQ2xpZW50cyB0aGF0IGdlbmVyYWxseSBkaXNhbGxv
dyB1bml2ZXJzYWwgYWNjZXNzIGNhbiBtYWtlIGV4Y2VwdGlvbnMgZm9yIHBhcnRpY3VsYXIgVVJM
cy4KICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkRm9yY2VVbml2ZXJzYWxBY2Nlc3NGcm9tTG9jYWxV
UkwoY29uc3QgVVJMJikgeyByZXR1cm4gZmFsc2U7IH0KIAotICAgIHZpcnR1YWwgUGFzc1JlZlB0
cjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBjcmVhdGVOZXR3b3JraW5nQ29udGV4dCgpID0gMDsK
KyAgICB2aXJ0dWFsIFJlZjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBjcmVhdGVOZXR3b3JraW5n
Q29udGV4dCgpID0gMDsKIAogI2lmIEVOQUJMRShSRVFVRVNUX0FVVE9DT01QTEVURSkKLSAgICB2
aXJ0dWFsIHZvaWQgZGlkUmVxdWVzdEF1dG9jb21wbGV0ZShQYXNzUmVmUHRyPEZvcm1TdGF0ZT4p
ID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZGlkUmVxdWVzdEF1dG9jb21wbGV0ZShSZWY8Rm9ybVN0
YXRlPiYmKSA9IDA7CiAjZW5kaWYKIAogICAgIHZpcnR1YWwgYm9vbCBzaG91bGRQYWludEJyb2tl
bkltYWdlKGNvbnN0IFVSTCYpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9IaXN0b3J5Q29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvSGlzdG9yeUNvbnRyb2xsZXIuY3BwCmluZGV4IDI5NWI5NGExYTU1NWIyYTI4ZTc1
MDM2YzZiMWQwMjU3MDcyOTk3Y2MuLjI2YTRiMzM5NmQxZTg3YTAwNjNlMGI0YzBjYTA2NjkyMjA0
YTkzNzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9IaXN0b3J5Q29udHJvbGxl
ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmNwcApA
QCAtODQ2LDcgKzg0Niw3IEBAIHZvaWQgSGlzdG9yeUNvbnRyb2xsZXI6OnVwZGF0ZUN1cnJlbnRJ
dGVtKCkKICAgICB9CiB9CiAKLXZvaWQgSGlzdG9yeUNvbnRyb2xsZXI6OnB1c2hTdGF0ZShQYXNz
UmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gc3RhdGVPYmplY3QsIGNvbnN0IFN0cmluZyYg
dGl0bGUsIGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nKQordm9pZCBIaXN0b3J5Q29udHJvbGxlcjo6
cHVzaFN0YXRlKFJlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+JiYgc3RhdGVPYmplY3QsIGNv
bnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nKQogewogICAgIGlmICgh
bV9jdXJyZW50SXRlbSkKICAgICAgICAgcmV0dXJuOwpAQCAtODYwLDcgKzg2MCw3IEBAIHZvaWQg
SGlzdG9yeUNvbnRyb2xsZXI6OnB1c2hTdGF0ZShQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRW
YWx1ZT4gc3RhdGVPYmplY3QsCiAgICAgLy8gT3ZlcnJpZGUgZGF0YSBpbiB0aGUgY3VycmVudCBp
dGVtIChjcmVhdGVkIGJ5IGNyZWF0ZUl0ZW1UcmVlKSB0byByZWZsZWN0CiAgICAgLy8gdGhlIHB1
c2hTdGF0ZSgpIGFyZ3VtZW50cy4KICAgICBtX2N1cnJlbnRJdGVtLT5zZXRUaXRsZSh0aXRsZSk7
Ci0gICAgbV9jdXJyZW50SXRlbS0+c2V0U3RhdGVPYmplY3Qoc3RhdGVPYmplY3QpOworICAgIG1f
Y3VycmVudEl0ZW0tPnNldFN0YXRlT2JqZWN0KFdURk1vdmUoc3RhdGVPYmplY3QpKTsKICAgICBt
X2N1cnJlbnRJdGVtLT5zZXRVUkxTdHJpbmcodXJsU3RyaW5nKTsKIAogICAgIExPRyhIaXN0b3J5
LCAiSGlzdG9yeUNvbnRyb2xsZXIgJXAgcHVzaFN0YXRlOiBBZGRpbmcgdG9wIGl0ZW0gJXAsIHNl
dHRpbmcgdXJsIG9mIGN1cnJlbnQgaXRlbSAlcCB0byAlcyIsIHRoaXMsIHRvcEl0ZW0ucHRyKCks
IG1fY3VycmVudEl0ZW0uZ2V0KCksIHVybFN0cmluZy5hc2NpaSgpLmRhdGEoKSk7CkBAIC04NzQs
NyArODc0LDcgQEAgdm9pZCBIaXN0b3J5Q29udHJvbGxlcjo6cHVzaFN0YXRlKFBhc3NSZWZQdHI8
U2VyaWFsaXplZFNjcmlwdFZhbHVlPiBzdGF0ZU9iamVjdCwKICAgICBtX2ZyYW1lLmxvYWRlcigp
LmNsaWVudCgpLnVwZGF0ZUdsb2JhbEhpc3RvcnkoKTsKIH0KIAotdm9pZCBIaXN0b3J5Q29udHJv
bGxlcjo6cmVwbGFjZVN0YXRlKFBhc3NSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiBzdGF0
ZU9iamVjdCwgY29uc3QgU3RyaW5nJiB0aXRsZSwgY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcpCit2
b2lkIEhpc3RvcnlDb250cm9sbGVyOjpyZXBsYWNlU3RhdGUoUmVmUHRyPFNlcmlhbGl6ZWRTY3Jp
cHRWYWx1ZT4mJiBzdGF0ZU9iamVjdCwgY29uc3QgU3RyaW5nJiB0aXRsZSwgY29uc3QgU3RyaW5n
JiB1cmxTdHJpbmcpCiB7CiAgICAgaWYgKCFtX2N1cnJlbnRJdGVtKQogICAgICAgICByZXR1cm47
CkBAIC04ODQsNyArODg0LDcgQEAgdm9pZCBIaXN0b3J5Q29udHJvbGxlcjo6cmVwbGFjZVN0YXRl
KFBhc3NSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiBzdGF0ZU9iamUKICAgICBpZiAoIXVy
bFN0cmluZy5pc0VtcHR5KCkpCiAgICAgICAgIG1fY3VycmVudEl0ZW0tPnNldFVSTFN0cmluZyh1
cmxTdHJpbmcpOwogICAgIG1fY3VycmVudEl0ZW0tPnNldFRpdGxlKHRpdGxlKTsKLSAgICBtX2N1
cnJlbnRJdGVtLT5zZXRTdGF0ZU9iamVjdChzdGF0ZU9iamVjdCk7CisgICAgbV9jdXJyZW50SXRl
bS0+c2V0U3RhdGVPYmplY3QoV1RGTW92ZShzdGF0ZU9iamVjdCkpOwogICAgIG1fY3VycmVudEl0
ZW0tPnNldEZvcm1EYXRhKG51bGxwdHIpOwogICAgIG1fY3VycmVudEl0ZW0tPnNldEZvcm1Db250
ZW50VHlwZShTdHJpbmcoKSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9I
aXN0b3J5Q29udHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0hpc3RvcnlDb250cm9s
bGVyLmgKaW5kZXggMTBmZjFmMTRhMzNlZjc2YjkwYmZkMTNkNDY1MjhjNzg3NWY1ZWJkNS4uM2Qy
NWUyODliMjJmYjFmOTk2M2Y2ZGZiMzM0Nzg5NTgxZDA5MjcwMSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmgKQEAgLTg0LDggKzg0LDggQEAgcHVibGljOgogICAg
IEhpc3RvcnlJdGVtKiBwcm92aXNpb25hbEl0ZW0oKSBjb25zdCB7IHJldHVybiBtX3Byb3Zpc2lv
bmFsSXRlbS5nZXQoKTsgfQogICAgIHZvaWQgc2V0UHJvdmlzaW9uYWxJdGVtKEhpc3RvcnlJdGVt
Kik7CiAKLSAgICB2b2lkIHB1c2hTdGF0ZShQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1
ZT4sIGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgdXJsKTsKLSAgICB2b2lkIHJl
cGxhY2VTdGF0ZShQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4sIGNvbnN0IFN0cmlu
ZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgdXJsKTsKKyAgICB2b2lkIHB1c2hTdGF0ZShSZWZQdHI8
U2VyaWFsaXplZFNjcmlwdFZhbHVlPiYmLCBjb25zdCBTdHJpbmcmIHRpdGxlLCBjb25zdCBTdHJp
bmcmIHVybCk7CisgICAgdm9pZCByZXBsYWNlU3RhdGUoUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRW
YWx1ZT4mJiwgY29uc3QgU3RyaW5nJiB0aXRsZSwgY29uc3QgU3RyaW5nJiB1cmwpOwogCiAgICAg
dm9pZCBzZXREZWZlcnNMb2FkaW5nKGJvb2wpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvSW1hZ2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ltYWdlTG9h
ZGVyLmNwcAppbmRleCBhNTNhZjExYmI5ZjkzYmEyYTgxMjNkYjFhODEwZjM4ODc5OTZmZGM1Li4x
YjJmYzFiYjQ5N2M3ZDQ5MTlkMTljNjM5YWMwZWY3MjhlY2UwNzkzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvSW1hZ2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9JbWFnZUxvYWRlci5jcHAKQEAgLTE3OCw3ICsxNzgsNyBAQCB2b2lkIEltYWdlTG9hZGVy
Ojp1cGRhdGVGcm9tRWxlbWVudCgpCiAgICAgICAgIG9wdGlvbnMuc2FtZU9yaWdpbkRhdGFVUkxG
bGFnID0gU2FtZU9yaWdpbkRhdGFVUkxGbGFnOjpTZXQ7CiAKICAgICAgICAgQ2FjaGVkUmVzb3Vy
Y2VSZXF1ZXN0IHJlcXVlc3QoUmVzb3VyY2VSZXF1ZXN0KGRvY3VtZW50LmNvbXBsZXRlVVJMKHNv
dXJjZVVSSShhdHRyKSkpLCBvcHRpb25zKTsKLSAgICAgICAgcmVxdWVzdC5zZXRJbml0aWF0b3Io
JmVsZW1lbnQoKSk7CisgICAgICAgIHJlcXVlc3Quc2V0SW5pdGlhdG9yKGVsZW1lbnQoKSk7CiAK
ICAgICAgICAgcmVxdWVzdC5zZXRBc1BvdGVudGlhbGx5Q3Jvc3NPcmlnaW4oZWxlbWVudCgpLmF0
dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24oSFRNTE5hbWVzOjpjcm9zc29yaWdpbkF0dHIp
LCBkb2N1bWVudCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0
aW9uU2NoZWR1bGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uU2NoZWR1
bGVyLmNwcAppbmRleCA3ZWZmYWQ3ZmExYzVhYTM0NDZlYWMwMDI5NjE4ZjEyYmI1NzViNGU1Li41
Njk3NzUzMmI4YjEyYmUwOGE2MTljZDNmYjFjMTg3NWQzYjc2ZWIxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL05hdmlnYXRpb25TY2hlZHVsZXIuY3BwCkBAIC02OCw2ICs2OCwxNiBAQCBw
dWJsaWM6CiAgICAgICAgICwgbV91c2VyR2VzdHVyZVRvRm9yd2FyZChVc2VyR2VzdHVyZUluZGlj
YXRvcjo6Y3VycmVudFVzZXJHZXN0dXJlKCkpCiAgICAgewogICAgIH0KKyAgICBTY2hlZHVsZWRO
YXZpZ2F0aW9uKGRvdWJsZSBkZWxheSwgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnksIExvY2tCYWNr
Rm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3YXJkTGlzdCwgYm9vbCB3YXNEdXJpbmdMb2FkLCBib29s
IGlzTG9jYXRpb25DaGFuZ2UsIFNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgZXh0ZXJuYWxV
UkxQb2xpY3kpCisgICAgICAgIDogbV9kZWxheShkZWxheSkKKyAgICAgICAgLCBtX2xvY2tIaXN0
b3J5KGxvY2tIaXN0b3J5KQorICAgICAgICAsIG1fbG9ja0JhY2tGb3J3YXJkTGlzdChsb2NrQmFj
a0ZvcndhcmRMaXN0KQorICAgICAgICAsIG1fd2FzRHVyaW5nTG9hZCh3YXNEdXJpbmdMb2FkKQor
ICAgICAgICAsIG1faXNMb2NhdGlvbkNoYW5nZShpc0xvY2F0aW9uQ2hhbmdlKQorICAgICAgICAs
IG1fdXNlckdlc3R1cmVUb0ZvcndhcmQoVXNlckdlc3R1cmVJbmRpY2F0b3I6OmN1cnJlbnRVc2Vy
R2VzdHVyZSgpKQorICAgICAgICAsIG1fc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeShleHRl
cm5hbFVSTFBvbGljeSkKKyAgICB7CisgICAgfQogICAgIHZpcnR1YWwgflNjaGVkdWxlZE5hdmln
YXRpb24oKSB7IH0KIAogICAgIHZpcnR1YWwgdm9pZCBmaXJlKEZyYW1lJikgPSAwOwpAQCAtODEs
MTIgKzkxLDExIEBAIHB1YmxpYzoKICAgICBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9y
d2FyZExpc3QoKSBjb25zdCB7IHJldHVybiBtX2xvY2tCYWNrRm9yd2FyZExpc3Q7IH0KICAgICBi
b29sIHdhc0R1cmluZ0xvYWQoKSBjb25zdCB7IHJldHVybiBtX3dhc0R1cmluZ0xvYWQ7IH0KICAg
ICBib29sIGlzTG9jYXRpb25DaGFuZ2UoKSBjb25zdCB7IHJldHVybiBtX2lzTG9jYXRpb25DaGFu
Z2U7IH0KLSAgICBSZWZQdHI8VXNlckdlc3R1cmVUb2tlbj4gdXNlckdlc3R1cmVUb0ZvcndhcmQo
KSBjb25zdCB7IHJldHVybiBtX3VzZXJHZXN0dXJlVG9Gb3J3YXJkOyB9CisgICAgVXNlckdlc3R1
cmVUb2tlbiogdXNlckdlc3R1cmVUb0ZvcndhcmQoKSBjb25zdCB7IHJldHVybiBtX3VzZXJHZXN0
dXJlVG9Gb3J3YXJkLmdldCgpOyB9CiAKIHByb3RlY3RlZDoKICAgICB2b2lkIGNsZWFyVXNlckdl
c3R1cmUoKSB7IG1fdXNlckdlc3R1cmVUb0ZvcndhcmQgPSBudWxscHRyOyB9Ci0KLSAgICBTaG91
bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5IG1fc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSB7
IFNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3k6OlNob3VsZE5vdEFsbG93IH07CisgICAgU2hv
dWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzKCkgY29uc3Qg
eyByZXR1cm4gbV9zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5OyB9CiAKIHByaXZhdGU6CiAg
ICAgZG91YmxlIG1fZGVsYXk7CkBAIC05NSwxOSArMTA0LDE3IEBAIHByaXZhdGU6CiAgICAgYm9v
bCBtX3dhc0R1cmluZ0xvYWQ7CiAgICAgYm9vbCBtX2lzTG9jYXRpb25DaGFuZ2U7CiAgICAgUmVm
UHRyPFVzZXJHZXN0dXJlVG9rZW4+IG1fdXNlckdlc3R1cmVUb0ZvcndhcmQ7CisgICAgU2hvdWxk
T3BlbkV4dGVybmFsVVJMc1BvbGljeSBtX3Nob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgeyBT
aG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5OjpTaG91bGROb3RBbGxvdyB9OwogfTsKIAogY2xh
c3MgU2NoZWR1bGVkVVJMTmF2aWdhdGlvbiA6IHB1YmxpYyBTY2hlZHVsZWROYXZpZ2F0aW9uIHsK
IHByb3RlY3RlZDoKLSAgICBTY2hlZHVsZWRVUkxOYXZpZ2F0aW9uKERvY3VtZW50KiBpbml0aWF0
aW5nRG9jdW1lbnQsIGRvdWJsZSBkZWxheSwgU2VjdXJpdHlPcmlnaW4qIHNlY3VyaXR5T3JpZ2lu
LCBjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgTG9ja0hpc3RvcnkgbG9j
a0hpc3RvcnksIExvY2tCYWNrRm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3YXJkTGlzdCwgYm9vbCBk
dXJpbmdMb2FkLCBib29sIGlzTG9jYXRpb25DaGFuZ2UpCi0gICAgICAgIDogU2NoZWR1bGVkTmF2
aWdhdGlvbihkZWxheSwgbG9ja0hpc3RvcnksIGxvY2tCYWNrRm9yd2FyZExpc3QsIGR1cmluZ0xv
YWQsIGlzTG9jYXRpb25DaGFuZ2UpCisgICAgU2NoZWR1bGVkVVJMTmF2aWdhdGlvbihEb2N1bWVu
dCYgaW5pdGlhdGluZ0RvY3VtZW50LCBkb3VibGUgZGVsYXksIFNlY3VyaXR5T3JpZ2luKiBzZWN1
cml0eU9yaWdpbiwgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIExvY2tI
aXN0b3J5IGxvY2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExp
c3QsIGJvb2wgZHVyaW5nTG9hZCwgYm9vbCBpc0xvY2F0aW9uQ2hhbmdlKQorICAgICAgICA6IFNj
aGVkdWxlZE5hdmlnYXRpb24oZGVsYXksIGxvY2tIaXN0b3J5LCBsb2NrQmFja0ZvcndhcmRMaXN0
LCBkdXJpbmdMb2FkLCBpc0xvY2F0aW9uQ2hhbmdlLCBpbml0aWF0aW5nRG9jdW1lbnQuc2hvdWxk
T3BlbkV4dGVybmFsVVJMc1BvbGljeVRvUHJvcGFnYXRlKCkpCiAgICAgICAgICwgbV9zZWN1cml0
eU9yaWdpbihzZWN1cml0eU9yaWdpbikKICAgICAgICAgLCBtX3VybCh1cmwpCiAgICAgICAgICwg
bV9yZWZlcnJlcihyZWZlcnJlcikKLSAgICAgICAgLCBtX2hhdmVUb2xkQ2xpZW50KGZhbHNlKQog
ICAgIHsKLSAgICAgICAgaWYgKGluaXRpYXRpbmdEb2N1bWVudCkKLSAgICAgICAgICAgIG1fc2hv
dWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSA9IGluaXRpYXRpbmdEb2N1bWVudC0+c2hvdWxkT3Bl
bkV4dGVybmFsVVJMc1BvbGljeVRvUHJvcGFnYXRlKCk7CiAgICAgfQogCiAgICAgdm9pZCBmaXJl
KEZyYW1lJiBmcmFtZSkgb3ZlcnJpZGUKQEAgLTExNSw3ICsxMjIsNyBAQCBwcm90ZWN0ZWQ6CiAg
ICAgICAgIFVzZXJHZXN0dXJlSW5kaWNhdG9yIGdlc3R1cmVJbmRpY2F0b3IodXNlckdlc3R1cmVU
b0ZvcndhcmQoKSk7CiAKICAgICAgICAgUmVzb3VyY2VSZXF1ZXN0IHJlc291cmNlUmVxdWVzdCht
X3VybCwgbV9yZWZlcnJlciwgVXNlUHJvdG9jb2xDYWNoZVBvbGljeSk7Ci0gICAgICAgIEZyYW1l
TG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KG1fc2VjdXJpdHlPcmlnaW4uZ2V0KCksIHJlc291cmNl
UmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBN
YXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpZZXMsIE5ld0Zy
YW1lT3BlbmVyUG9saWN5OjpBbGxvdywgbV9zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5KTsK
KyAgICAgICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFtZVJlcXVlc3QobV9zZWN1cml0eU9yaWdpbi5n
ZXQoKSwgcmVzb3VyY2VSZXF1ZXN0LCAiX3NlbGYiLCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFja0Zv
cndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVycmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFsaWRV
Ukw6OlllcywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBzaG91bGRPcGVuRXh0ZXJuYWxV
UkxzKCkpOwogCiAgICAgICAgIGZyYW1lLmxvYWRlcigpLmNoYW5nZUxvY2F0aW9uKGZyYW1lUmVx
dWVzdCk7CiAgICAgfQpAQCAtMTUyLDEyICsxNTksMTIgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8
U2VjdXJpdHlPcmlnaW4+IG1fc2VjdXJpdHlPcmlnaW47CiAgICAgVVJMIG1fdXJsOwogICAgIFN0
cmluZyBtX3JlZmVycmVyOwotICAgIGJvb2wgbV9oYXZlVG9sZENsaWVudDsKKyAgICBib29sIG1f
aGF2ZVRvbGRDbGllbnQgeyBmYWxzZSB9OwogfTsKIAogY2xhc3MgU2NoZWR1bGVkUmVkaXJlY3Qg
OiBwdWJsaWMgU2NoZWR1bGVkVVJMTmF2aWdhdGlvbiB7CiBwdWJsaWM6Ci0gICAgU2NoZWR1bGVk
UmVkaXJlY3QoRG9jdW1lbnQqIGluaXRpYXRpbmdEb2N1bWVudCwgZG91YmxlIGRlbGF5LCBTZWN1
cml0eU9yaWdpbiogc2VjdXJpdHlPcmlnaW4sIGNvbnN0IFVSTCYgdXJsLCBMb2NrSGlzdG9yeSBs
b2NrSGlzdG9yeSwgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0KQorICAg
IFNjaGVkdWxlZFJlZGlyZWN0KERvY3VtZW50JiBpbml0aWF0aW5nRG9jdW1lbnQsIGRvdWJsZSBk
ZWxheSwgU2VjdXJpdHlPcmlnaW4qIHNlY3VyaXR5T3JpZ2luLCBjb25zdCBVUkwmIHVybCwgTG9j
a0hpc3RvcnkgbG9ja0hpc3RvcnksIExvY2tCYWNrRm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3YXJk
TGlzdCkKICAgICAgICAgOiBTY2hlZHVsZWRVUkxOYXZpZ2F0aW9uKGluaXRpYXRpbmdEb2N1bWVu
dCwgZGVsYXksIHNlY3VyaXR5T3JpZ2luLCB1cmwsIFN0cmluZygpLCBsb2NrSGlzdG9yeSwgbG9j
a0JhY2tGb3J3YXJkTGlzdCwgZmFsc2UsIGZhbHNlKQogICAgIHsKICAgICAgICAgY2xlYXJVc2Vy
R2VzdHVyZSgpOwpAQCAtMTczLDcgKzE4MCw3IEBAIHB1YmxpYzoKICAgICAgICAgVXNlckdlc3R1
cmVJbmRpY2F0b3IgZ2VzdHVyZUluZGljYXRvcih1c2VyR2VzdHVyZVRvRm9yd2FyZCgpKTsKICAg
ICAgICAgYm9vbCByZWZyZXNoID0gZXF1YWxJZ25vcmluZ0ZyYWdtZW50SWRlbnRpZmllcihmcmFt
ZS5kb2N1bWVudCgpLT51cmwoKSwgdXJsKCkpOwogICAgICAgICBSZXNvdXJjZVJlcXVlc3QgcmVz
b3VyY2VSZXF1ZXN0KHVybCgpLCByZWZlcnJlcigpLCByZWZyZXNoID8gUmVsb2FkSWdub3JpbmdD
YWNoZURhdGEgOiBVc2VQcm90b2NvbENhY2hlUG9saWN5KTsKLSAgICAgICAgRnJhbWVMb2FkUmVx
dWVzdCBmcmFtZVJlcXVlc3Qoc2VjdXJpdHlPcmlnaW4oKSwgcmVzb3VyY2VSZXF1ZXN0LCAiX3Nl
bGYiLCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVy
cmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkw6Ok5vLCBOZXdGcmFtZU9wZW5lclBvbGlj
eTo6QWxsb3csIG1fc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSk7CisgICAgICAgIEZyYW1l
TG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KHNlY3VyaXR5T3JpZ2luKCksIHJlc291cmNlUmVxdWVz
dCwgIl9zZWxmIiwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNl
bmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpObywgTmV3RnJhbWVPcGVu
ZXJQb2xpY3k6OkFsbG93LCBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzKCkpOwogCiAgICAgICAgIGZy
YW1lLmxvYWRlcigpLmNoYW5nZUxvY2F0aW9uKGZyYW1lUmVxdWVzdCk7CiAgICAgfQpAQCAtMTgx
LDcgKzE4OCw3IEBAIHB1YmxpYzoKIAogY2xhc3MgU2NoZWR1bGVkTG9jYXRpb25DaGFuZ2UgOiBw
dWJsaWMgU2NoZWR1bGVkVVJMTmF2aWdhdGlvbiB7CiBwdWJsaWM6Ci0gICAgU2NoZWR1bGVkTG9j
YXRpb25DaGFuZ2UoRG9jdW1lbnQqIGluaXRpYXRpbmdEb2N1bWVudCwgU2VjdXJpdHlPcmlnaW4q
IHNlY3VyaXR5T3JpZ2luLCBjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwg
TG9ja0hpc3RvcnkgbG9ja0hpc3RvcnksIExvY2tCYWNrRm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3
YXJkTGlzdCwgYm9vbCBkdXJpbmdMb2FkKQorICAgIFNjaGVkdWxlZExvY2F0aW9uQ2hhbmdlKERv
Y3VtZW50JiBpbml0aWF0aW5nRG9jdW1lbnQsIFNlY3VyaXR5T3JpZ2luKiBzZWN1cml0eU9yaWdp
biwgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIExvY2tIaXN0b3J5IGxv
Y2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QsIGJvb2wg
ZHVyaW5nTG9hZCkKICAgICAgICAgOiBTY2hlZHVsZWRVUkxOYXZpZ2F0aW9uKGluaXRpYXRpbmdE
b2N1bWVudCwgMC4wLCBzZWN1cml0eU9yaWdpbiwgdXJsLCByZWZlcnJlciwgbG9ja0hpc3Rvcnks
IGxvY2tCYWNrRm9yd2FyZExpc3QsIGR1cmluZ0xvYWQsIHRydWUpIHsgfQogCiAgICAgdm9pZCBm
aXJlKEZyYW1lJiBmcmFtZSkgb3ZlcnJpZGUKQEAgLTE4OSwxNCArMTk2LDE0IEBAIHB1YmxpYzoK
ICAgICAgICAgVXNlckdlc3R1cmVJbmRpY2F0b3IgZ2VzdHVyZUluZGljYXRvcih1c2VyR2VzdHVy
ZVRvRm9yd2FyZCgpKTsKIAogICAgICAgICBSZXNvdXJjZVJlcXVlc3QgcmVzb3VyY2VSZXF1ZXN0
KHVybCgpLCByZWZlcnJlcigpLCBVc2VQcm90b2NvbENhY2hlUG9saWN5KTsKLSAgICAgICAgRnJh
bWVMb2FkUmVxdWVzdCBmcmFtZVJlcXVlc3Qoc2VjdXJpdHlPcmlnaW4oKSwgcmVzb3VyY2VSZXF1
ZXN0LCAiX3NlbGYiLCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0KCksIE1heWJl
U2VuZFJlZmVycmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkw6Ok5vLCBOZXdGcmFtZU9w
ZW5lclBvbGljeTo6QWxsb3csIG1fc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSk7CisgICAg
ICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KHNlY3VyaXR5T3JpZ2luKCksIHJlc291
cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgp
LCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpObywgTmV3
RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzKCkpOwogICAg
ICAgICBmcmFtZS5sb2FkZXIoKS5jaGFuZ2VMb2NhdGlvbihmcmFtZVJlcXVlc3QpOwogICAgIH0K
IH07CiAKIGNsYXNzIFNjaGVkdWxlZFJlZnJlc2ggOiBwdWJsaWMgU2NoZWR1bGVkVVJMTmF2aWdh
dGlvbiB7CiBwdWJsaWM6Ci0gICAgU2NoZWR1bGVkUmVmcmVzaChEb2N1bWVudCogaW5pdGlhdGlu
Z0RvY3VtZW50LCBTZWN1cml0eU9yaWdpbiogc2VjdXJpdHlPcmlnaW4sIGNvbnN0IFVSTCYgdXJs
LCBjb25zdCBTdHJpbmcmIHJlZmVycmVyKQorICAgIFNjaGVkdWxlZFJlZnJlc2goRG9jdW1lbnQm
IGluaXRpYXRpbmdEb2N1bWVudCwgU2VjdXJpdHlPcmlnaW4qIHNlY3VyaXR5T3JpZ2luLCBjb25z
dCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiByZWZlcnJlcikKICAgICAgICAgOiBTY2hlZHVsZWRV
UkxOYXZpZ2F0aW9uKGluaXRpYXRpbmdEb2N1bWVudCwgMC4wLCBzZWN1cml0eU9yaWdpbiwgdXJs
LCByZWZlcnJlciwgTG9ja0hpc3Rvcnk6OlllcywgTG9ja0JhY2tGb3J3YXJkTGlzdDo6WWVzLCBm
YWxzZSwgdHJ1ZSkKICAgICB7CiAgICAgfQpAQCAtMjA2LDcgKzIxMyw3IEBAIHB1YmxpYzoKICAg
ICAgICAgVXNlckdlc3R1cmVJbmRpY2F0b3IgZ2VzdHVyZUluZGljYXRvcih1c2VyR2VzdHVyZVRv
Rm9yd2FyZCgpKTsKIAogICAgICAgICBSZXNvdXJjZVJlcXVlc3QgcmVzb3VyY2VSZXF1ZXN0KHVy
bCgpLCByZWZlcnJlcigpLCBSZWxvYWRJZ25vcmluZ0NhY2hlRGF0YSk7Ci0gICAgICAgIEZyYW1l
TG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KHNlY3VyaXR5T3JpZ2luKCksIHJlc291cmNlUmVxdWVz
dCwgIl9zZWxmIiwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNl
bmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpZZXMsIE5ld0ZyYW1lT3Bl
bmVyUG9saWN5OjpBbGxvdywgbV9zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5KTsKKyAgICAg
ICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFtZVJlcXVlc3Qoc2VjdXJpdHlPcmlnaW4oKSwgcmVzb3Vy
Y2VSZXF1ZXN0LCAiX3NlbGYiLCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0KCks
IE1heWJlU2VuZFJlZmVycmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkw6OlllcywgTmV3
RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzKCkpOwogICAg
ICAgICBmcmFtZS5sb2FkZXIoKS5jaGFuZ2VMb2NhdGlvbihmcmFtZVJlcXVlc3QpOwogICAgIH0K
IH07CkBAIC0yMjYsNyArMjMzLDcgQEAgcHVibGljOgogICAgICAgICBpZiAoIW1faGlzdG9yeVN0
ZXBzKSB7CiAgICAgICAgICAgICAvLyBTcGVjaWFsIGNhc2UgZm9yIGdvKDApIGZyb20gYSBmcmFt
ZSAtPiByZWxvYWQgb25seSB0aGUgZnJhbWUKICAgICAgICAgICAgIC8vIFRvIGZvbGxvdyBGaXJl
Zm94IGFuZCBJRSdzIGJlaGF2aW9yLCBoaXN0b3J5IHJlbG9hZCBjYW4gb25seSBuYXZpZ2F0ZSB0
aGUgc2VsZiBmcmFtZS4KLSAgICAgICAgICAgIGZyYW1lLmxvYWRlcigpLnVybFNlbGVjdGVkKGZy
YW1lLmRvY3VtZW50KCktPnVybCgpLCAiX3NlbGYiLCAwLCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFj
a0ZvcndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVycmVyLCBtX3Nob3VsZE9wZW5FeHRlcm5hbFVS
THNQb2xpY3kpOworICAgICAgICAgICAgZnJhbWUubG9hZGVyKCkudXJsU2VsZWN0ZWQoZnJhbWUu
ZG9jdW1lbnQoKS0+dXJsKCksICJfc2VsZiIsIDAsIGxvY2tIaXN0b3J5KCksIGxvY2tCYWNrRm9y
d2FyZExpc3QoKSwgTWF5YmVTZW5kUmVmZXJyZXIsIHNob3VsZE9wZW5FeHRlcm5hbFVSTHMoKSk7
CiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0KICAgICAgICAgCkBAIC0yNDEsMTUgKzI0
OCwxMCBAQCBwcml2YXRlOgogCiBjbGFzcyBTY2hlZHVsZWRGb3JtU3VibWlzc2lvbiA6IHB1Ymxp
YyBTY2hlZHVsZWROYXZpZ2F0aW9uIHsKIHB1YmxpYzoKLSAgICBTY2hlZHVsZWRGb3JtU3VibWlz
c2lvbihQYXNzUmVmUHRyPEZvcm1TdWJtaXNzaW9uPiBzdWJtaXNzaW9uLCBMb2NrQmFja0Zvcndh
cmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QsIGJvb2wgZHVyaW5nTG9hZCkKLSAgICAgICAgOiBT
Y2hlZHVsZWROYXZpZ2F0aW9uKDAsIHN1Ym1pc3Npb24tPmxvY2tIaXN0b3J5KCksIGxvY2tCYWNr
Rm9yd2FyZExpc3QsIGR1cmluZ0xvYWQsIHRydWUpCi0gICAgICAgICwgbV9zdWJtaXNzaW9uKHN1
Ym1pc3Npb24pCi0gICAgICAgICwgbV9oYXZlVG9sZENsaWVudChmYWxzZSkKKyAgICBTY2hlZHVs
ZWRGb3JtU3VibWlzc2lvbihSZWY8Rm9ybVN1Ym1pc3Npb24+JiYgc3VibWlzc2lvbiwgTG9ja0Jh
Y2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0LCBib29sIGR1cmluZ0xvYWQpCisgICAg
ICAgIDogU2NoZWR1bGVkTmF2aWdhdGlvbigwLCBzdWJtaXNzaW9uLT5sb2NrSGlzdG9yeSgpLCBs
b2NrQmFja0ZvcndhcmRMaXN0LCBkdXJpbmdMb2FkLCB0cnVlLCBzdWJtaXNzaW9uLT5zdGF0ZSgp
LnNvdXJjZURvY3VtZW50KCkuc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeVRvUHJvcGFnYXRl
KCkpCisgICAgICAgICwgbV9zdWJtaXNzaW9uKFdURk1vdmUoc3VibWlzc2lvbikpCiAgICAgewot
ICAgICAgICBBU1NFUlQobV9zdWJtaXNzaW9uLT5zdGF0ZSgpKTsKLQotICAgICAgICBpZiAoRG9j
dW1lbnQqIGRvY3VtZW50ID0gbV9zdWJtaXNzaW9uLT5zdGF0ZSgpLT5zb3VyY2VEb2N1bWVudCgp
KQotICAgICAgICAgICAgbV9zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5ID0gZG9jdW1lbnQt
PnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3lUb1Byb3BhZ2F0ZSgpOwogICAgIH0KIAogICAg
IHZvaWQgZmlyZShGcmFtZSYgZnJhbWUpIG92ZXJyaWRlCkBAIC0yNjAsMTQgKzI2MiwxNCBAQCBw
dWJsaWM6CiAgICAgICAgIC8vIE5vdyB0aGF0IHRoZSB0aW1lciBoYXMgZmlyZWQsIHdlIG5lZWQg
dG8gcmVwZWF0IHRoZSBzZWN1cml0eSBjaGVjayB3aGljaCBub3JtYWxseSBpcyBkb25lIHdoZW4K
ICAgICAgICAgLy8gc2VsZWN0aW5nIGEgdGFyZ2V0LCBpbiBjYXNlIGNvbmRpdGlvbnMgaGF2ZSBj
aGFuZ2VkLiBPdGhlciBjb2RlIHBhdGhzIGF2b2lkIHRoaXMgYnkgdGFyZ2V0aW5nCiAgICAgICAg
IC8vIHdpdGhvdXQgbGVhdmluZyBhIHRpbWUgd2luZG93LiBJZiB3ZSBmYWlsIHRoZSBjaGVjayBq
dXN0IHNpbGVudGx5IGRyb3AgdGhlIGZvcm0gc3VibWlzc2lvbi4KLSAgICAgICAgRG9jdW1lbnQq
IHJlcXVlc3RpbmdEb2N1bWVudCA9IG1fc3VibWlzc2lvbi0+c3RhdGUoKS0+c291cmNlRG9jdW1l
bnQoKTsKLSAgICAgICAgaWYgKCFyZXF1ZXN0aW5nRG9jdW1lbnQtPmNhbk5hdmlnYXRlKCZmcmFt
ZSkpCisgICAgICAgIGF1dG8mIHJlcXVlc3RpbmdEb2N1bWVudCA9IG1fc3VibWlzc2lvbi0+c3Rh
dGUoKS5zb3VyY2VEb2N1bWVudCgpOworICAgICAgICBpZiAoIXJlcXVlc3RpbmdEb2N1bWVudC5j
YW5OYXZpZ2F0ZSgmZnJhbWUpKQogICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICBGcmFtZUxv
YWRSZXF1ZXN0IGZyYW1lUmVxdWVzdChyZXF1ZXN0aW5nRG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2lu
KCksIGxvY2tIaXN0b3J5KCksIGxvY2tCYWNrRm9yd2FyZExpc3QoKSwgTWF5YmVTZW5kUmVmZXJy
ZXIsIEFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTDo6WWVzLCBOZXdGcmFtZU9wZW5lclBvbGlj
eTo6QWxsb3csIG1fc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSk7CisgICAgICAgIEZyYW1l
TG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KHJlcXVlc3RpbmdEb2N1bWVudC5zZWN1cml0eU9yaWdp
bigpLCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVy
cmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkw6OlllcywgTmV3RnJhbWVPcGVuZXJQb2xp
Y3k6OkFsbG93LCBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzKCkpOwogICAgICAgICBtX3N1Ym1pc3Np
b24tPnBvcHVsYXRlRnJhbWVMb2FkUmVxdWVzdChmcmFtZVJlcXVlc3QpOwotICAgICAgICBmcmFt
ZS5sb2FkZXIoKS5sb2FkRnJhbWVSZXF1ZXN0KGZyYW1lUmVxdWVzdCwgbV9zdWJtaXNzaW9uLT5l
dmVudCgpLCBtX3N1Ym1pc3Npb24tPnN0YXRlKCkpOworICAgICAgICBmcmFtZS5sb2FkZXIoKS5s
b2FkRnJhbWVSZXF1ZXN0KGZyYW1lUmVxdWVzdCwgbV9zdWJtaXNzaW9uLT5ldmVudCgpLCAmbV9z
dWJtaXNzaW9uLT5zdGF0ZSgpKTsKICAgICB9Ci0gICAgCisKICAgICB2b2lkIGRpZFN0YXJ0VGlt
ZXIoRnJhbWUmIGZyYW1lLCBUaW1lciYgdGltZXIpIG92ZXJyaWRlCiAgICAgewogICAgICAgICBp
ZiAobV9oYXZlVG9sZENsaWVudCkKQEAgLTI5Myw4ICsyOTUsOCBAQCBwdWJsaWM6CiAgICAgfQog
CiBwcml2YXRlOgotICAgIFJlZlB0cjxGb3JtU3VibWlzc2lvbj4gbV9zdWJtaXNzaW9uOwotICAg
IGJvb2wgbV9oYXZlVG9sZENsaWVudDsKKyAgICBSZWY8Rm9ybVN1Ym1pc3Npb24+IG1fc3VibWlz
c2lvbjsKKyAgICBib29sIG1faGF2ZVRvbGRDbGllbnQgeyBmYWxzZSB9OwogfTsKIAogY2xhc3Mg
U2NoZWR1bGVkUGFnZUJsb2NrIGZpbmFsIDogcHVibGljIFNjaGVkdWxlZE5hdmlnYXRpb24gewpA
QCAtMzEzLDcgKzMxNSw3IEBAIHB1YmxpYzoKICAgICAgICAgU3Vic3RpdHV0ZURhdGEgcmVwbGFj
ZW1lbnREYXRhKFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKCksIG1fb3JpZ2luRG9jdW1lbnQudXJsKCks
IHJlcGxhY2VtZW50UmVzcG9uc2UsIFN1YnN0aXR1dGVEYXRhOjpTZXNzaW9uSGlzdG9yeVZpc2li
aWxpdHk6OkhpZGRlbik7CiAKICAgICAgICAgUmVzb3VyY2VSZXF1ZXN0IHJlc291cmNlUmVxdWVz
dChtX29yaWdpbkRvY3VtZW50LnVybCgpLCBlbXB0eVN0cmluZygpLCBSZWxvYWRJZ25vcmluZ0Nh
Y2hlRGF0YSk7Ci0gICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KG1fb3JpZ2lu
RG9jdW1lbnQuc2VjdXJpdHlPcmlnaW4oKSwgcmVzb3VyY2VSZXF1ZXN0LCBsb2NrSGlzdG9yeSgp
LCBsb2NrQmFja0ZvcndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVycmVyLCBBbGxvd05hdmlnYXRp
b25Ub0ludmFsaWRVUkw6OlllcywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBtX3Nob3Vs
ZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kpOworICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1l
UmVxdWVzdChtX29yaWdpbkRvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCksIHJlc291cmNlUmVxdWVz
dCwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJl
ciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpZZXMsIE5ld0ZyYW1lT3BlbmVyUG9saWN5
OjpBbGxvdywgc2hvdWxkT3BlbkV4dGVybmFsVVJMcygpKTsKICAgICAgICAgZnJhbWVSZXF1ZXN0
LnNldFN1YnN0aXR1dGVEYXRhKHJlcGxhY2VtZW50RGF0YSk7CiAgICAgICAgIGZyYW1lLmxvYWRl
cigpLmxvYWQoZnJhbWVSZXF1ZXN0KTsKICAgICB9CkBAIC0zNjQsNyArMzY2LDcgQEAgaW5saW5l
IGJvb2wgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2hvdWxkU2NoZWR1bGVOYXZpZ2F0aW9uKGNvbnN0
IFVSTCYgdXJsKSBjb25zdAogICAgIHJldHVybiBOYXZpZ2F0aW9uRGlzYWJsZXJGb3JCZWZvcmVV
bmxvYWQ6OmlzTmF2aWdhdGlvbkFsbG93ZWQoKTsKIH0KIAotdm9pZCBOYXZpZ2F0aW9uU2NoZWR1
bGVyOjpzY2hlZHVsZVJlZGlyZWN0KERvY3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQsIGRvdWJs
ZSBkZWxheSwgY29uc3QgVVJMJiB1cmwpCit2b2lkIE5hdmlnYXRpb25TY2hlZHVsZXI6OnNjaGVk
dWxlUmVkaXJlY3QoRG9jdW1lbnQmIGluaXRpYXRpbmdEb2N1bWVudCwgZG91YmxlIGRlbGF5LCBj
b25zdCBVUkwmIHVybCkKIHsKICAgICBpZiAoIXNob3VsZFNjaGVkdWxlTmF2aWdhdGlvbih1cmwp
KQogICAgICAgICByZXR1cm47CkBAIC0zNzUsNyArMzc3LDcgQEAgdm9pZCBOYXZpZ2F0aW9uU2No
ZWR1bGVyOjpzY2hlZHVsZVJlZGlyZWN0KERvY3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQsIGRv
dWJsZQogCiAgICAgLy8gV2Ugd2FudCBhIG5ldyBiYWNrL2ZvcndhcmQgbGlzdCBpdGVtIGlmIHRo
ZSByZWZyZXNoIHRpbWVvdXQgaXMgPiAxIHNlY29uZC4KICAgICBpZiAoIW1fcmVkaXJlY3QgfHwg
ZGVsYXkgPD0gbV9yZWRpcmVjdC0+ZGVsYXkoKSkgewotICAgICAgICBMb2NrQmFja0ZvcndhcmRM
aXN0IGxvY2tCYWNrRm9yd2FyZExpc3QgPSBkZWxheSA8PSAxID8gTG9ja0JhY2tGb3J3YXJkTGlz
dDo6WWVzIDogTG9ja0JhY2tGb3J3YXJkTGlzdDo6Tm87CisgICAgICAgIGF1dG8gbG9ja0JhY2tG
b3J3YXJkTGlzdCA9IGRlbGF5IDw9IDEgPyBMb2NrQmFja0ZvcndhcmRMaXN0OjpZZXMgOiBMb2Nr
QmFja0ZvcndhcmRMaXN0OjpObzsKICAgICAgICAgc2NoZWR1bGUoc3RkOjptYWtlX3VuaXF1ZTxT
Y2hlZHVsZWRSZWRpcmVjdD4oaW5pdGlhdGluZ0RvY3VtZW50LCBkZWxheSwgbV9mcmFtZS5kb2N1
bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLCB1cmwsIExvY2tIaXN0b3J5OjpZZXMsIGxvY2tCYWNr
Rm9yd2FyZExpc3QpKTsKICAgICB9CiB9CkBAIC0zOTgsNyArNDAwLDcgQEAgTG9ja0JhY2tGb3J3
YXJkTGlzdCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjptdXN0TG9ja0JhY2tGb3J3YXJkTGlzdChGcmFt
ZSYgdGFyZ2V0RnIKICAgICByZXR1cm4gTG9ja0JhY2tGb3J3YXJkTGlzdDo6Tm87CiB9CiAKLXZv
aWQgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2NoZWR1bGVMb2NhdGlvbkNoYW5nZShEb2N1bWVudCog
aW5pdGlhdGluZ0RvY3VtZW50LCBTZWN1cml0eU9yaWdpbiogc2VjdXJpdHlPcmlnaW4sIGNvbnN0
IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9y
eSwgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0KQordm9pZCBOYXZpZ2F0
aW9uU2NoZWR1bGVyOjpzY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKERvY3VtZW50JiBpbml0aWF0aW5n
RG9jdW1lbnQsIFNlY3VyaXR5T3JpZ2luKiBzZWN1cml0eU9yaWdpbiwgY29uc3QgVVJMJiB1cmws
IGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBMb2NrQmFj
a0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QpCiB7CiAgICAgaWYgKCFzaG91bGRTY2hl
ZHVsZU5hdmlnYXRpb24odXJsKSkKICAgICAgICAgcmV0dXJuOwpAQCAtNDEyLDEwICs0MTQsNyBA
QCB2b2lkIE5hdmlnYXRpb25TY2hlZHVsZXI6OnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UoRG9jdW1l
bnQqIGluaXRpYXRpbmdEb2N1bWVudCwgUwogICAgIC8vIGZyYWdtZW50IHBhcnQsIHdlIGRvbid0
IG5lZWQgdG8gc2NoZWR1bGUgdGhlIGxvY2F0aW9uIGNoYW5nZS4KICAgICBpZiAodXJsLmhhc0Zy
YWdtZW50SWRlbnRpZmllcigpICYmIGVxdWFsSWdub3JpbmdGcmFnbWVudElkZW50aWZpZXIobV9m
cmFtZS5kb2N1bWVudCgpLT51cmwoKSwgdXJsKSkgewogICAgICAgICBSZXNvdXJjZVJlcXVlc3Qg
cmVzb3VyY2VSZXF1ZXN0KG1fZnJhbWUuZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwodXJsKSwgcmVm
ZXJyZXIsIFVzZVByb3RvY29sQ2FjaGVQb2xpY3kpOwotICAgICAgICBTaG91bGRPcGVuRXh0ZXJu
YWxVUkxzUG9saWN5IHNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgPSBTaG91bGRPcGVuRXh0
ZXJuYWxVUkxzUG9saWN5OjpTaG91bGROb3RBbGxvdzsKLSAgICAgICAgaWYgKGluaXRpYXRpbmdE
b2N1bWVudCkKLSAgICAgICAgICAgIHNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgPSBpbml0
aWF0aW5nRG9jdW1lbnQtPnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3lUb1Byb3BhZ2F0ZSgp
OwotICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1lUmVxdWVzdChzZWN1cml0eU9yaWdpbiwg
cmVzb3VyY2VSZXF1ZXN0LCAiX3NlbGYiLCBsb2NrSGlzdG9yeSwgbG9ja0JhY2tGb3J3YXJkTGlz
dCwgTWF5YmVTZW5kUmVmZXJyZXIsIEFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTDo6Tm8sIE5l
d0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxvdywgUmVwbGFjZURvY3VtZW50SWZKYXZhU2NyaXB0VVJM
LCBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5KTsKKyAgICAgICAgRnJhbWVMb2FkUmVxdWVz
dCBmcmFtZVJlcXVlc3Qoc2VjdXJpdHlPcmlnaW4sIHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwg
bG9ja0hpc3RvcnksIGxvY2tCYWNrRm9yd2FyZExpc3QsIE1heWJlU2VuZFJlZmVycmVyLCBBbGxv
d05hdmlnYXRpb25Ub0ludmFsaWRVUkw6Ok5vLCBOZXdGcmFtZU9wZW5lclBvbGljeTo6QWxsb3cs
IFJlcGxhY2VEb2N1bWVudElmSmF2YVNjcmlwdFVSTCwgaW5pdGlhdGluZ0RvY3VtZW50LnNob3Vs
ZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3lUb1Byb3BhZ2F0ZSgpKTsKICAgICAgICAgbG9hZGVyLmNo
YW5nZUxvY2F0aW9uKGZyYW1lUmVxdWVzdCk7CiAgICAgICAgIHJldHVybjsKICAgICB9CkBAIC00
MjcsNyArNDI2LDcgQEAgdm9pZCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjpzY2hlZHVsZUxvY2F0aW9u
Q2hhbmdlKERvY3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQsIFMKICAgICBzY2hlZHVsZShzdGQ6
Om1ha2VfdW5pcXVlPFNjaGVkdWxlZExvY2F0aW9uQ2hhbmdlPihpbml0aWF0aW5nRG9jdW1lbnQs
IHNlY3VyaXR5T3JpZ2luLCB1cmwsIHJlZmVycmVyLCBsb2NrSGlzdG9yeSwgbG9ja0JhY2tGb3J3
YXJkTGlzdCwgZHVyaW5nTG9hZCkpOwogfQogCi12b2lkIE5hdmlnYXRpb25TY2hlZHVsZXI6OnNj
aGVkdWxlRm9ybVN1Ym1pc3Npb24oUGFzc1JlZlB0cjxGb3JtU3VibWlzc2lvbj4gc3VibWlzc2lv
bikKK3ZvaWQgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2NoZWR1bGVGb3JtU3VibWlzc2lvbihSZWY8
Rm9ybVN1Ym1pc3Npb24+JiYgc3VibWlzc2lvbikKIHsKICAgICBBU1NFUlQobV9mcmFtZS5wYWdl
KCkpOwogCkBAIC00NDMsMTQgKzQ0MiwxNCBAQCB2b2lkIE5hdmlnYXRpb25TY2hlZHVsZXI6OnNj
aGVkdWxlRm9ybVN1Ym1pc3Npb24oUGFzc1JlZlB0cjxGb3JtU3VibWlzc2lvbj4gc3VibQogICAg
IC8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzIzODMgZm9y
IHRoZSBvcmlnaW5hbCBtb3RpdmF0aW9uIGZvciB0aGlzLgogICAgIExvY2tCYWNrRm9yd2FyZExp
c3QgbG9ja0JhY2tGb3J3YXJkTGlzdCA9IG11c3RMb2NrQmFja0ZvcndhcmRMaXN0KG1fZnJhbWUp
OwogICAgIGlmIChsb2NrQmFja0ZvcndhcmRMaXN0ID09IExvY2tCYWNrRm9yd2FyZExpc3Q6Ok5v
Ci0gICAgICAgICYmIChzdWJtaXNzaW9uLT5zdGF0ZSgpLT5mb3JtU3VibWlzc2lvblRyaWdnZXIo
KSA9PSBTdWJtaXR0ZWRCeUphdmFTY3JpcHQgJiYgbV9mcmFtZS50cmVlKCkucGFyZW50KCkgJiYg
IVVzZXJHZXN0dXJlSW5kaWNhdG9yOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSkpIHsKKyAgICAg
ICAgJiYgKHN1Ym1pc3Npb24tPnN0YXRlKCkuZm9ybVN1Ym1pc3Npb25UcmlnZ2VyKCkgPT0gU3Vi
bWl0dGVkQnlKYXZhU2NyaXB0ICYmIG1fZnJhbWUudHJlZSgpLnBhcmVudCgpICYmICFVc2VyR2Vz
dHVyZUluZGljYXRvcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkpKSB7CiAgICAgICAgIGxvY2tC
YWNrRm9yd2FyZExpc3QgPSBMb2NrQmFja0ZvcndhcmRMaXN0OjpZZXM7CiAgICAgfQogICAgIAot
ICAgIHNjaGVkdWxlKHN0ZDo6bWFrZV91bmlxdWU8U2NoZWR1bGVkRm9ybVN1Ym1pc3Npb24+KHN1
Ym1pc3Npb24sIGxvY2tCYWNrRm9yd2FyZExpc3QsIGR1cmluZ0xvYWQpKTsKKyAgICBzY2hlZHVs
ZShzdGQ6Om1ha2VfdW5pcXVlPFNjaGVkdWxlZEZvcm1TdWJtaXNzaW9uPihXVEZNb3ZlKHN1Ym1p
c3Npb24pLCBsb2NrQmFja0ZvcndhcmRMaXN0LCBkdXJpbmdMb2FkKSk7CiB9CiAKLXZvaWQgTmF2
aWdhdGlvblNjaGVkdWxlcjo6c2NoZWR1bGVSZWZyZXNoKERvY3VtZW50KiBpbml0aWF0aW5nRG9j
dW1lbnQpCit2b2lkIE5hdmlnYXRpb25TY2hlZHVsZXI6OnNjaGVkdWxlUmVmcmVzaChEb2N1bWVu
dCYgaW5pdGlhdGluZ0RvY3VtZW50KQogewogICAgIGlmICghc2hvdWxkU2NoZWR1bGVOYXZpZ2F0
aW9uKCkpCiAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlv
blNjaGVkdWxlci5oCmluZGV4IDQ5YzQzYmUyYmIxNWViYTgwNTY1NzY2MTJkMTVkMWFiY2YzMDc3
MTcuLjBhZTE3MTE0NThjMzc0NmY3NzgxNmZlZDkzNjdiYTQ4YmY2MTZmZDEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL05hdmlnYXRpb25TY2hlZHVsZXIuaApAQCAtMSw1ICsxLDUgQEAKIC8q
Ci0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDgsIDIwMDkgVG9yY2ggTW9iaWxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4gKGh0dHA6Ly93d3cudG9yY2htb2JpbGUuY29tLykKICAqIENvcHly
aWdodCAoQykgMjAwOSBBZGFtIEJhcnRoLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKQEAgLTY4
LDEwICs2OCwxMCBAQCBwdWJsaWM6CiAgICAgYm9vbCByZWRpcmVjdFNjaGVkdWxlZER1cmluZ0xv
YWQoKTsKICAgICBib29sIGxvY2F0aW9uQ2hhbmdlUGVuZGluZygpOwogCi0gICAgdm9pZCBzY2hl
ZHVsZVJlZGlyZWN0KERvY3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQsIGRvdWJsZSBkZWxheSwg
Y29uc3QgVVJMJik7Ci0gICAgdm9pZCBzY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKERvY3VtZW50KiBp
bml0aWF0aW5nRG9jdW1lbnQsIFNlY3VyaXR5T3JpZ2luKiwgY29uc3QgVVJMJiwgY29uc3QgU3Ry
aW5nJiByZWZlcnJlciwgTG9ja0hpc3RvcnkgPSBMb2NrSGlzdG9yeTo6WWVzLCBMb2NrQmFja0Zv
cndhcmRMaXN0ID0gTG9ja0JhY2tGb3J3YXJkTGlzdDo6WWVzKTsKLSAgICB2b2lkIHNjaGVkdWxl
Rm9ybVN1Ym1pc3Npb24oUGFzc1JlZlB0cjxGb3JtU3VibWlzc2lvbj4pOwotICAgIHZvaWQgc2No
ZWR1bGVSZWZyZXNoKERvY3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQpOworICAgIHZvaWQgc2No
ZWR1bGVSZWRpcmVjdChEb2N1bWVudCYgaW5pdGlhdGluZ0RvY3VtZW50LCBkb3VibGUgZGVsYXks
IGNvbnN0IFVSTCYpOworICAgIHZvaWQgc2NoZWR1bGVMb2NhdGlvbkNoYW5nZShEb2N1bWVudCYg
aW5pdGlhdGluZ0RvY3VtZW50LCBTZWN1cml0eU9yaWdpbiosIGNvbnN0IFVSTCYsIGNvbnN0IFN0
cmluZyYgcmVmZXJyZXIsIExvY2tIaXN0b3J5ID0gTG9ja0hpc3Rvcnk6OlllcywgTG9ja0JhY2tG
b3J3YXJkTGlzdCA9IExvY2tCYWNrRm9yd2FyZExpc3Q6Olllcyk7CisgICAgdm9pZCBzY2hlZHVs
ZUZvcm1TdWJtaXNzaW9uKFJlZjxGb3JtU3VibWlzc2lvbj4mJik7CisgICAgdm9pZCBzY2hlZHVs
ZVJlZnJlc2goRG9jdW1lbnQmIGluaXRpYXRpbmdEb2N1bWVudCk7CiAgICAgdm9pZCBzY2hlZHVs
ZUhpc3RvcnlOYXZpZ2F0aW9uKGludCBzdGVwcyk7CiAgICAgdm9pZCBzY2hlZHVsZVBhZ2VCbG9j
ayhEb2N1bWVudCYgb3JpZ2luRG9jdW1lbnQpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291
cmNlTG9hZGVyLmNwcAppbmRleCA5ZTJhYmRhZGNhMTc4MWFkMTA1YzM5NDlmMmYwY2QxMGZlZWFh
ZDdhLi4zNjUwZWJiNTg4ZDgwMmE4NjFlMzMwYTFlZDc3MDBhOTUzYzY3ZjQ4IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5jcHAKQEAgLTE5MSw3ICsxOTEsNyBAQCB2b2lk
IFJlc291cmNlTG9hZGVyOjpzdGFydCgpCiAgICAgICAgIHJldHVybjsKICNlbmRpZgogCi0gICAg
aWYgKG1fZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZFJl
c291cmNlKCp0aGlzLCBtX3JlcXVlc3QsIG1fcmVxdWVzdC51cmwoKSkpCisgICAgaWYgKG1fZG9j
dW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWF5YmVMb2FkUmVzb3VyY2UoKnRo
aXMsIG1fcmVxdWVzdCwgbV9yZXF1ZXN0LnVybCgpKSkKICAgICAgICAgcmV0dXJuOwogCiAgICAg
aWYgKG1fZGVmZXJzTG9hZGluZykgewpAQCAtNjA3LDcgKzYwNyw3IEBAIFJlc291cmNlRXJyb3Ig
UmVzb3VyY2VMb2FkZXI6OmNhbm5vdFNob3dVUkxFcnJvcigpCiAKIFJlc291cmNlUmVxdWVzdCBS
ZXNvdXJjZUxvYWRlcjo6d2lsbFNlbmRSZXF1ZXN0KFJlc291cmNlSGFuZGxlKiwgUmVzb3VyY2VS
ZXF1ZXN0JiYgcmVxdWVzdCwgUmVzb3VyY2VSZXNwb25zZSYmIHJlZGlyZWN0UmVzcG9uc2UpCiB7
Ci0gICAgaWYgKGRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJl
TG9hZEZhbGxiYWNrRm9yUmVkaXJlY3QodGhpcywgcmVxdWVzdCwgcmVkaXJlY3RSZXNwb25zZSkp
CisgICAgaWYgKGRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWF5YmVM
b2FkRmFsbGJhY2tGb3JSZWRpcmVjdCh0aGlzLCByZXF1ZXN0LCByZWRpcmVjdFJlc3BvbnNlKSkK
ICAgICAgICAgcmV0dXJuIFdURk1vdmUocmVxdWVzdCk7CiAgICAgd2lsbFNlbmRSZXF1ZXN0SW50
ZXJuYWwocmVxdWVzdCwgcmVkaXJlY3RSZXNwb25zZSk7CiAgICAgcmV0dXJuIFdURk1vdmUocmVx
dWVzdCk7CkBAIC02MjAsNyArNjIwLDcgQEAgdm9pZCBSZXNvdXJjZUxvYWRlcjo6ZGlkU2VuZERh
dGEoUmVzb3VyY2VIYW5kbGUqLCB1bnNpZ25lZCBsb25nIGxvbmcgYnl0ZXNTZW50LAogCiB2b2lk
IFJlc291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VIYW5kbGUqLCBSZXNv
dXJjZVJlc3BvbnNlJiYgcmVzcG9uc2UpCiB7Ci0gICAgaWYgKGRvY3VtZW50TG9hZGVyKCktPmFw
cGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZEZhbGxiYWNrRm9yUmVzcG9uc2UodGhpcywg
cmVzcG9uc2UpKQorICAgIGlmIChkb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9z
dCgpLm1heWJlTG9hZEZhbGxiYWNrRm9yUmVzcG9uc2UodGhpcywgcmVzcG9uc2UpKQogICAgICAg
ICByZXR1cm47CiAgICAgZGlkUmVjZWl2ZVJlc3BvbnNlKHJlc3BvbnNlKTsKIH0KQEAgLTY0Miw3
ICs2NDIsNyBAQCB2b2lkIFJlc291cmNlTG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNl
SGFuZGxlKiwgZG91YmxlIGZpbmlzaFRpbWUpCiAKIHZvaWQgUmVzb3VyY2VMb2FkZXI6OmRpZEZh
aWwoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKIHsKLSAgICBp
ZiAoZG9jdW1lbnRMb2FkZXIoKS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+bWF5YmVMb2FkRmFs
bGJhY2tGb3JFcnJvcih0aGlzLCBlcnJvcikpCisgICAgaWYgKGRvY3VtZW50TG9hZGVyKCktPmFw
cGxpY2F0aW9uQ2FjaGVIb3N0KCkubWF5YmVMb2FkRmFsbGJhY2tGb3JFcnJvcih0aGlzLCBlcnJv
cikpCiAgICAgICAgIHJldHVybjsKICAgICBkaWRGYWlsKGVycm9yKTsKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJmcmFtZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvU3ViZnJhbWVMb2FkZXIuY3BwCmluZGV4IGFmNmMxNjQ0MmUxZTJlNTMzZjMwMzNm
MDA0ZjNmNzc5ODgwZjFmMWYuLjAxYWU1M2E4Y2Q2MzBjZWExOTJmYzM1MDhkODQyOTM4YWYyNzg2
YTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJmcmFtZUxvYWRlci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YmZyYW1lTG9hZGVyLmNwcApAQCAtMSw1ICsx
LDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDggTm9raWEgQ29ycG9yYXRpb24g
YW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDgsIDIwMDkg
VG9yY2ggTW9iaWxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4gKGh0dHA6Ly93d3cudG9yY2ht
b2JpbGUuY29tLykKICAqIENvcHlyaWdodCAoQykgMjAwOCBBbHAgVG9rZXIgPGFscEBhdG9rZXIu
Y29tPgpAQCAtMTA5LDIzICsxMDksMjUgQEAgYm9vbCBTdWJmcmFtZUxvYWRlcjo6cmVzb3VyY2VX
aWxsVXNlUGx1Z2luKGNvbnN0IFN0cmluZyYgdXJsLCBjb25zdCBTdHJpbmcmIG1pbWUKIAogYm9v
bCBTdWJmcmFtZUxvYWRlcjo6cGx1Z2luSXNMb2FkYWJsZShjb25zdCBVUkwmIHVybCwgY29uc3Qg
U3RyaW5nJiBtaW1lVHlwZSkKIHsKKyAgICBhdXRvKiBkb2N1bWVudCA9IG1fZnJhbWUuZG9jdW1l
bnQoKTsKKwogICAgIGlmIChNSU1FVHlwZVJlZ2lzdHJ5Ojppc0phdmFBcHBsZXRNSU1FVHlwZSht
aW1lVHlwZSkpIHsKICAgICAgICAgaWYgKCFtX2ZyYW1lLnNldHRpbmdzKCkuaXNKYXZhRW5hYmxl
ZCgpKQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICBpZiAoZG9jdW1lbnQoKSAm
JiBkb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5pc0xvY2FsKCkgJiYgIW1fZnJhbWUuc2V0
dGluZ3MoKS5pc0phdmFFbmFibGVkRm9yTG9jYWxGaWxlcygpKQorICAgICAgICBpZiAoZG9jdW1l
bnQgJiYgZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCktPmlzTG9jYWwoKSAmJiAhbV9mcmFtZS5z
ZXR0aW5ncygpLmlzSmF2YUVuYWJsZWRGb3JMb2NhbEZpbGVzKCkpCiAgICAgICAgICAgICByZXR1
cm4gZmFsc2U7CiAgICAgfQogCi0gICAgaWYgKGRvY3VtZW50KCkpIHsKLSAgICAgICAgaWYgKGRv
Y3VtZW50KCktPmlzU2FuZGJveGVkKFNhbmRib3hQbHVnaW5zKSkKKyAgICBpZiAoZG9jdW1lbnQp
IHsKKyAgICAgICAgaWYgKGRvY3VtZW50LT5pc1NhbmRib3hlZChTYW5kYm94UGx1Z2lucykpCiAg
ICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAgICAgICAgaWYgKCFkb2N1bWVudCgpLT5zZWN1
cml0eU9yaWdpbigpLT5jYW5EaXNwbGF5KHVybCkpIHsKKyAgICAgICAgaWYgKCFkb2N1bWVudC0+
c2VjdXJpdHlPcmlnaW4oKS0+Y2FuRGlzcGxheSh1cmwpKSB7CiAgICAgICAgICAgICBGcmFtZUxv
YWRlcjo6cmVwb3J0TG9jYWxMb2FkRmFpbGVkKCZtX2ZyYW1lLCB1cmwuc3RyaW5nKCkpOwogICAg
ICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICB9CiAKLSAgICAgICAgaWYgKCFtX2ZyYW1l
LmxvYWRlcigpLm1peGVkQ29udGVudENoZWNrZXIoKS5jYW5SdW5JbnNlY3VyZUNvbnRlbnQoZG9j
dW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSwgdXJsKSkKKyAgICAgICAgaWYgKCFtX2ZyYW1lLmxv
YWRlcigpLm1peGVkQ29udGVudENoZWNrZXIoKS5jYW5SdW5JbnNlY3VyZUNvbnRlbnQoZG9jdW1l
bnQtPnNlY3VyaXR5T3JpZ2luKCksIHVybCkpCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAg
ICAgfQogCkBAIC0yMDYsMTggKzIwOCwyMCBAQCBib29sIFN1YmZyYW1lTG9hZGVyOjpyZXF1ZXN0
T2JqZWN0KEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQmIG93bmVyRWxlbWVudCwgY29uc3QgUwogICAg
IGlmICh1cmwuaXNFbXB0eSgpICYmIG1pbWVUeXBlLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJu
IGZhbHNlOwogCisgICAgYXV0byYgZG9jdW1lbnQgPSBvd25lckVsZW1lbnQuZG9jdW1lbnQoKTsK
KwogICAgIFVSTCBjb21wbGV0ZWRVUkw7CiAgICAgaWYgKCF1cmwuaXNFbXB0eSgpKQogICAgICAg
ICBjb21wbGV0ZWRVUkwgPSBjb21wbGV0ZVVSTCh1cmwpOwogCi0gICAgZG9jdW1lbnQoKS0+Y29u
dGVudFNlY3VyaXR5UG9saWN5KCktPnVwZ3JhZGVJbnNlY3VyZVJlcXVlc3RJZk5lZWRlZChjb21w
bGV0ZWRVUkwsIENvbnRlbnRTZWN1cml0eVBvbGljeTo6SW5zZWN1cmVSZXF1ZXN0VHlwZTo6TG9h
ZCk7CisgICAgZG9jdW1lbnQuY29udGVudFNlY3VyaXR5UG9saWN5KCktPnVwZ3JhZGVJbnNlY3Vy
ZVJlcXVlc3RJZk5lZWRlZChjb21wbGV0ZWRVUkwsIENvbnRlbnRTZWN1cml0eVBvbGljeTo6SW5z
ZWN1cmVSZXF1ZXN0VHlwZTo6TG9hZCk7CiAKICAgICBib29sIGhhc0ZhbGxiYWNrQ29udGVudCA9
IGlzPEhUTUxPYmplY3RFbGVtZW50Pihvd25lckVsZW1lbnQpICYmIGRvd25jYXN0PEhUTUxPYmpl
Y3RFbGVtZW50Pihvd25lckVsZW1lbnQpLmhhc0ZhbGxiYWNrQ29udGVudCgpOwogCiAgICAgYm9v
bCB1c2VGYWxsYmFjazsKICAgICBpZiAoc2hvdWxkVXNlUGx1Z2luKGNvbXBsZXRlZFVSTCwgbWlt
ZVR5cGUsIGhhc0ZhbGxiYWNrQ29udGVudCwgdXNlRmFsbGJhY2spKSB7CiAgICAgICAgIGJvb2wg
c3VjY2VzcyA9IHJlcXVlc3RQbHVnaW4ob3duZXJFbGVtZW50LCBjb21wbGV0ZWRVUkwsIG1pbWVU
eXBlLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcywgdXNlRmFsbGJhY2spOwotICAgICAgICBsb2dQ
bHVnaW5SZXF1ZXN0KGRvY3VtZW50KCktPnBhZ2UoKSwgbWltZVR5cGUsIGNvbXBsZXRlZFVSTCwg
c3VjY2Vzcyk7CisgICAgICAgIGxvZ1BsdWdpblJlcXVlc3QoZG9jdW1lbnQucGFnZSgpLCBtaW1l
VHlwZSwgY29tcGxldGVkVVJMLCBzdWNjZXNzKTsKICAgICAgICAgcmV0dXJuIHN1Y2Nlc3M7CiAg
ICAgfQogCkBAIC0yMjcsNyArMjMxLDcgQEAgYm9vbCBTdWJmcmFtZUxvYWRlcjo6cmVxdWVzdE9i
amVjdChIVE1MUGx1Z0luSW1hZ2VFbGVtZW50JiBvd25lckVsZW1lbnQsIGNvbnN0IFMKICAgICBy
ZXR1cm4gbG9hZE9yUmVkaXJlY3RTdWJmcmFtZShvd25lckVsZW1lbnQsIGNvbXBsZXRlZFVSTCwg
ZnJhbWVOYW1lLCBMb2NrSGlzdG9yeTo6WWVzLCBMb2NrQmFja0ZvcndhcmRMaXN0OjpZZXMpOwog
fQogCi1QYXNzUmVmUHRyPFdpZGdldD4gU3ViZnJhbWVMb2FkZXI6OmNyZWF0ZUphdmFBcHBsZXRX
aWRnZXQoY29uc3QgSW50U2l6ZSYgc2l6ZSwgSFRNTEFwcGxldEVsZW1lbnQmIGVsZW1lbnQsIGNv
bnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFy
YW1WYWx1ZXMpCitSZWZQdHI8V2lkZ2V0PiBTdWJmcmFtZUxvYWRlcjo6Y3JlYXRlSmF2YUFwcGxl
dFdpZGdldChjb25zdCBJbnRTaXplJiBzaXplLCBIVE1MQXBwbGV0RWxlbWVudCYgZWxlbWVudCwg
Y29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBw
YXJhbVZhbHVlcykKIHsKICAgICBTdHJpbmcgYmFzZVVSTFN0cmluZzsKICAgICBTdHJpbmcgY29k
ZUJhc2VVUkxTdHJpbmc7CkBAIC0yNTYsMTQgKzI2MCwxNCBAQCBQYXNzUmVmUHRyPFdpZGdldD4g
U3ViZnJhbWVMb2FkZXI6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYgc2l6
ZSwgSAogICAgIH0KIAogICAgIGlmIChiYXNlVVJMU3RyaW5nLmlzRW1wdHkoKSkKLSAgICAgICAg
YmFzZVVSTFN0cmluZyA9IG1fZnJhbWUuZG9jdW1lbnQoKS0+YmFzZVVSTCgpLnN0cmluZygpOwor
ICAgICAgICBiYXNlVVJMU3RyaW5nID0gZWxlbWVudC5kb2N1bWVudCgpLmJhc2VVUkwoKS5zdHJp
bmcoKTsKICAgICBVUkwgYmFzZVVSTCA9IGNvbXBsZXRlVVJMKGJhc2VVUkxTdHJpbmcpOwogCiAg
ICAgUmVmUHRyPFdpZGdldD4gd2lkZ2V0OwogICAgIGlmIChhbGxvd1BsdWdpbnMoKSkKLSAgICAg
ICAgd2lkZ2V0ID0gbV9mcmFtZS5sb2FkZXIoKS5jbGllbnQoKS5jcmVhdGVKYXZhQXBwbGV0V2lk
Z2V0KHNpemUsICZlbGVtZW50LCBiYXNlVVJMLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcyk7Cisg
ICAgICAgIHdpZGdldCA9IG1fZnJhbWUubG9hZGVyKCkuY2xpZW50KCkuY3JlYXRlSmF2YUFwcGxl
dFdpZGdldChzaXplLCBlbGVtZW50LCBiYXNlVVJMLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcyk7
CiAKLSAgICBsb2dQbHVnaW5SZXF1ZXN0KGRvY3VtZW50KCktPnBhZ2UoKSwgZWxlbWVudC5zZXJ2
aWNlVHlwZSgpLCBTdHJpbmcoKSwgd2lkZ2V0KTsKKyAgICBsb2dQbHVnaW5SZXF1ZXN0KG1fZnJh
bWUucGFnZSgpLCBlbGVtZW50LnNlcnZpY2VUeXBlKCksIFN0cmluZygpLCB3aWRnZXQpOwogCiAg
ICAgaWYgKCF3aWRnZXQpIHsKICAgICAgICAgUmVuZGVyRW1iZWRkZWRPYmplY3QqIHJlbmRlcmVy
ID0gZWxlbWVudC5yZW5kZXJFbWJlZGRlZE9iamVjdCgpOwpAQCAtMjc3LDE2ICsyODEsMTggQEAg
UGFzc1JlZlB0cjxXaWRnZXQ+IFN1YmZyYW1lTG9hZGVyOjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0
KGNvbnN0IEludFNpemUmIHNpemUsIEgKICAgICByZXR1cm4gd2lkZ2V0OwogfQogCi1GcmFtZSog
U3ViZnJhbWVMb2FkZXI6OmxvYWRPclJlZGlyZWN0U3ViZnJhbWUoSFRNTEZyYW1lT3duZXJFbGVt
ZW50JiBvd25lckVsZW1lbnQsIGNvbnN0IFVSTCYgcmVxdWVzdFVybCwgY29uc3QgQXRvbWljU3Ry
aW5nJiBmcmFtZU5hbWUsIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRM
aXN0IGxvY2tCYWNrRm9yd2FyZExpc3QpCitGcmFtZSogU3ViZnJhbWVMb2FkZXI6OmxvYWRPclJl
ZGlyZWN0U3ViZnJhbWUoSFRNTEZyYW1lT3duZXJFbGVtZW50JiBvd25lckVsZW1lbnQsIGNvbnN0
IFVSTCYgcmVxdWVzdFVSTCwgY29uc3QgQXRvbWljU3RyaW5nJiBmcmFtZU5hbWUsIExvY2tIaXN0
b3J5IGxvY2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3Qp
CiB7Ci0gICAgVVJMIHVybCA9IHJlcXVlc3RVcmw7Ci0gICAgb3duZXJFbGVtZW50LmRvY3VtZW50
KCkuY29udGVudFNlY3VyaXR5UG9saWN5KCktPnVwZ3JhZGVJbnNlY3VyZVJlcXVlc3RJZk5lZWRl
ZCh1cmwsIENvbnRlbnRTZWN1cml0eVBvbGljeTo6SW5zZWN1cmVSZXF1ZXN0VHlwZTo6TG9hZCk7
CisgICAgYXV0byYgaW5pdGlhdGluZ0RvY3VtZW50ID0gb3duZXJFbGVtZW50LmRvY3VtZW50KCk7
CisKKyAgICBVUkwgdXBncmFkZWRSZXF1ZXN0VVJMID0gcmVxdWVzdFVSTDsKKyAgICBpbml0aWF0
aW5nRG9jdW1lbnQuY29udGVudFNlY3VyaXR5UG9saWN5KCktPnVwZ3JhZGVJbnNlY3VyZVJlcXVl
c3RJZk5lZWRlZCh1cGdyYWRlZFJlcXVlc3RVUkwsIENvbnRlbnRTZWN1cml0eVBvbGljeTo6SW5z
ZWN1cmVSZXF1ZXN0VHlwZTo6TG9hZCk7CiAKLSAgICBGcmFtZSogZnJhbWUgPSBvd25lckVsZW1l
bnQuY29udGVudEZyYW1lKCk7CisgICAgYXV0byogZnJhbWUgPSBvd25lckVsZW1lbnQuY29udGVu
dEZyYW1lKCk7CiAgICAgaWYgKGZyYW1lKQotICAgICAgICBmcmFtZS0+bmF2aWdhdGlvblNjaGVk
dWxlcigpLnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UobV9mcmFtZS5kb2N1bWVudCgpLCBtX2ZyYW1l
LmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCksIHVybCwgbV9mcmFtZS5sb2FkZXIoKS5vdXRn
b2luZ1JlZmVycmVyKCksIGxvY2tIaXN0b3J5LCBsb2NrQmFja0ZvcndhcmRMaXN0KTsKKyAgICAg
ICAgZnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKGlu
aXRpYXRpbmdEb2N1bWVudCwgaW5pdGlhdGluZ0RvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCksIHVw
Z3JhZGVkUmVxdWVzdFVSTCwgbV9mcmFtZS5sb2FkZXIoKS5vdXRnb2luZ1JlZmVycmVyKCksIGxv
Y2tIaXN0b3J5LCBsb2NrQmFja0ZvcndhcmRMaXN0KTsKICAgICBlbHNlCi0gICAgICAgIGZyYW1l
ID0gbG9hZFN1YmZyYW1lKG93bmVyRWxlbWVudCwgdXJsLCBmcmFtZU5hbWUsIG1fZnJhbWUubG9h
ZGVyKCkub3V0Z29pbmdSZWZlcnJlcigpKTsKKyAgICAgICAgZnJhbWUgPSBsb2FkU3ViZnJhbWUo
b3duZXJFbGVtZW50LCB1cGdyYWRlZFJlcXVlc3RVUkwsIGZyYW1lTmFtZSwgbV9mcmFtZS5sb2Fk
ZXIoKS5vdXRnb2luZ1JlZmVycmVyKCkpOwogCiAgICAgaWYgKCFmcmFtZSkKICAgICAgICAgcmV0
dXJuIG51bGxwdHI7CkBAIC0zMDMsMTMgKzMwOSwxNSBAQCBGcmFtZSogU3ViZnJhbWVMb2FkZXI6
OmxvYWRTdWJmcmFtZShIVE1MRnJhbWVPd25lckVsZW1lbnQmIG93bmVyRWxlbWVudCwgY29uc3Qg
VQogICAgIGludCBtYXJnaW5XaWR0aCA9IC0xOwogICAgIGludCBtYXJnaW5IZWlnaHQgPSAtMTsK
ICAgICBpZiAoaXM8SFRNTEZyYW1lRWxlbWVudEJhc2U+KG93bmVyRWxlbWVudCkpIHsKLSAgICAg
ICAgSFRNTEZyYW1lRWxlbWVudEJhc2UmIGZyYW1lRWxlbWVudEJhc2UgPSBkb3duY2FzdDxIVE1M
RnJhbWVFbGVtZW50QmFzZT4ob3duZXJFbGVtZW50KTsKKyAgICAgICAgYXV0byYgZnJhbWVFbGVt
ZW50QmFzZSA9IGRvd25jYXN0PEhUTUxGcmFtZUVsZW1lbnRCYXNlPihvd25lckVsZW1lbnQpOwog
ICAgICAgICBhbGxvd3NTY3JvbGxpbmcgPSBmcmFtZUVsZW1lbnRCYXNlLnNjcm9sbGluZ01vZGUo
KSAhPSBTY3JvbGxiYXJBbHdheXNPZmY7CiAgICAgICAgIG1hcmdpbldpZHRoID0gZnJhbWVFbGVt
ZW50QmFzZS5tYXJnaW5XaWR0aCgpOwogICAgICAgICBtYXJnaW5IZWlnaHQgPSBmcmFtZUVsZW1l
bnRCYXNlLm1hcmdpbkhlaWdodCgpOwogICAgIH0KIAotICAgIGlmICghb3duZXJFbGVtZW50LmRv
Y3VtZW50KCkuc2VjdXJpdHlPcmlnaW4oKS0+Y2FuRGlzcGxheSh1cmwpKSB7CisgICAgYXV0byBk
b2N1bWVudCA9IG1ha2VSZWYob3duZXJFbGVtZW50LmRvY3VtZW50KCkpOworCisgICAgaWYgKCFk
b2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuRGlzcGxheSh1cmwpKSB7CiAgICAgICAgIEZy
YW1lTG9hZGVyOjpyZXBvcnRMb2NhbExvYWRGYWlsZWQoJm1fZnJhbWUsIHVybC5zdHJpbmcoKSk7
CiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIH0KQEAgLTMxNywyMCArMzI1LDIwIEBAIEZy
YW1lKiBTdWJmcmFtZUxvYWRlcjo6bG9hZFN1YmZyYW1lKEhUTUxGcmFtZU93bmVyRWxlbWVudCYg
b3duZXJFbGVtZW50LCBjb25zdCBVCiAgICAgaWYgKCFTdWJmcmFtZUxvYWRpbmdEaXNhYmxlcjo6
Y2FuTG9hZEZyYW1lKG93bmVyRWxlbWVudCkpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCi0g
ICAgU3RyaW5nIHJlZmVycmVyVG9Vc2UgPSBTZWN1cml0eVBvbGljeTo6Z2VuZXJhdGVSZWZlcnJl
ckhlYWRlcihvd25lckVsZW1lbnQuZG9jdW1lbnQoKS5yZWZlcnJlclBvbGljeSgpLCB1cmwsIHJl
ZmVycmVyKTsKKyAgICBTdHJpbmcgcmVmZXJyZXJUb1VzZSA9IFNlY3VyaXR5UG9saWN5OjpnZW5l
cmF0ZVJlZmVycmVySGVhZGVyKGRvY3VtZW50LT5yZWZlcnJlclBvbGljeSgpLCB1cmwsIHJlZmVy
cmVyKTsKIAogICAgIC8vIFByZXZlbnQgaW5pdGlhbCBlbXB0eSBkb2N1bWVudCBsb2FkIGZyb20g
dHJpZ2dlcmluZyBsb2FkIGV2ZW50cy4KLSAgICBtX2ZyYW1lLmRvY3VtZW50KCktPmluY3JlbWVu
dExvYWRFdmVudERlbGF5Q291bnQoKTsKKyAgICBkb2N1bWVudC0+aW5jcmVtZW50TG9hZEV2ZW50
RGVsYXlDb3VudCgpOwogCi0gICAgUmVmUHRyPEZyYW1lPiBmcmFtZSA9IG1fZnJhbWUubG9hZGVy
KCkuY2xpZW50KCkuY3JlYXRlRnJhbWUodXJsLCBuYW1lLCAmb3duZXJFbGVtZW50LCByZWZlcnJl
clRvVXNlLCBhbGxvd3NTY3JvbGxpbmcsIG1hcmdpbldpZHRoLCBtYXJnaW5IZWlnaHQpOworICAg
IGF1dG8gZnJhbWUgPSBtX2ZyYW1lLmxvYWRlcigpLmNsaWVudCgpLmNyZWF0ZUZyYW1lKHVybCwg
bmFtZSwgb3duZXJFbGVtZW50LCByZWZlcnJlclRvVXNlLCBhbGxvd3NTY3JvbGxpbmcsIG1hcmdp
bldpZHRoLCBtYXJnaW5IZWlnaHQpOwogCi0gICAgbV9mcmFtZS5kb2N1bWVudCgpLT5kZWNyZW1l
bnRMb2FkRXZlbnREZWxheUNvdW50KCk7CisgICAgZG9jdW1lbnQtPmRlY3JlbWVudExvYWRFdmVu
dERlbGF5Q291bnQoKTsKIAogICAgIGlmICghZnJhbWUpICB7CiAgICAgICAgIG1fZnJhbWUubG9h
ZGVyKCkuY2hlY2tDYWxsSW1wbGljaXRDbG9zZSgpOwogICAgICAgICByZXR1cm4gbnVsbHB0cjsK
ICAgICB9Ci0gICAgCisKICAgICAvLyBBbGwgbmV3IGZyYW1lcyB3aWxsIGhhdmUgbV9pc0NvbXBs
ZXRlIHNldCB0byB0cnVlIGF0IHRoaXMgcG9pbnQgZHVlIHRvIHN5bmNocm9ub3VzbHkgbG9hZGlu
ZwogICAgIC8vIGFuIGVtcHR5IGRvY3VtZW50IGluIEZyYW1lTG9hZGVyOjppbml0KCkuIEJ1dCBt
YW55IGZyYW1lcyB3aWxsIG5vdyBiZSBzdGFydGluZyBhbgogICAgIC8vIGFzeW5jaHJvbm91cyBs
b2FkIG9mIHVybCwgc28gd2Ugc2V0IG1faXNDb21wbGV0ZSB0byBmYWxzZSBhbmQgdGhlbiBjaGVj
ayBpZiB0aGUgbG9hZCBpcwpAQCAtMzQwLDEyICszNDgsMTIgQEAgRnJhbWUqIFN1YmZyYW1lTG9h
ZGVyOjpsb2FkU3ViZnJhbWUoSFRNTEZyYW1lT3duZXJFbGVtZW50JiBvd25lckVsZW1lbnQsIGNv
bnN0IFUKICAgICBmcmFtZS0+bG9hZGVyKCkuc3RhcnRlZCgpOwogICAgCiAgICAgYXV0byogcmVu
ZGVyZXIgPSBvd25lckVsZW1lbnQucmVuZGVyZXIoKTsKLSAgICBGcmFtZVZpZXcqIHZpZXcgPSBm
cmFtZS0+dmlldygpOworICAgIGF1dG8qIHZpZXcgPSBmcmFtZS0+dmlldygpOwogICAgIGlmIChp
czxSZW5kZXJXaWRnZXQ+KHJlbmRlcmVyKSAmJiB2aWV3KQogICAgICAgICBkb3duY2FzdDxSZW5k
ZXJXaWRnZXQ+KCpyZW5kZXJlcikuc2V0V2lkZ2V0KHZpZXcpOwotICAgIAorCiAgICAgbV9mcmFt
ZS5sb2FkZXIoKS5jaGVja0NhbGxJbXBsaWNpdENsb3NlKCk7Ci0gICAgCisKICAgICAvLyBTb21l
IGxvYWRzIGFyZSBwZXJmb3JtZWQgc3luY2hyb25vdXNseSAoZS5nLiwgYWJvdXQ6YmxhbmsgYW5k
IGxvYWRzCiAgICAgLy8gY2FuY2VsbGVkIGJ5IHJldHVybmluZyBhIG51bGwgUmVzb3VyY2VSZXF1
ZXN0IGZyb20gcmVxdWVzdEZyb21EZWxlZ2F0ZSkuCiAgICAgLy8gSW4gdGhlc2UgY2FzZXMsIHRo
ZSBzeW5jaHJvbm91cyBsb2FkIHdvdWxkIGhhdmUgZmluaXNoZWQKQEAgLTM4MSwxNyArMzg5LDE0
IEBAIGJvb2wgU3ViZnJhbWVMb2FkZXI6OnNob3VsZFVzZVBsdWdpbihjb25zdCBVUkwmIHVybCwg
Y29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgYm9vCiAgICAgcmV0dXJuIG9iamVjdFR5cGUgPT0gT2Jq
ZWN0Q29udGVudFR5cGU6Ok5vbmUgfHwgb2JqZWN0VHlwZSA9PSBPYmplY3RDb250ZW50VHlwZTo6
UGx1Z0luOwogfQogCi1Eb2N1bWVudCogU3ViZnJhbWVMb2FkZXI6OmRvY3VtZW50KCkgY29uc3QK
LXsKLSAgICByZXR1cm4gbV9mcmFtZS5kb2N1bWVudCgpOwotfQotCiBib29sIFN1YmZyYW1lTG9h
ZGVyOjpsb2FkUGx1Z2luKEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQmIHBsdWdpbkVsZW1lbnQsIGNv
bnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlLCBjb25zdCBWZWN0b3I8U3RyaW5n
PiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzLCBib29sIHVz
ZUZhbGxiYWNrKQogewogICAgIGlmICh1c2VGYWxsYmFjaykKICAgICAgICAgcmV0dXJuIGZhbHNl
OwogCi0gICAgUmVuZGVyRW1iZWRkZWRPYmplY3QqIHJlbmRlcmVyID0gcGx1Z2luRWxlbWVudC5y
ZW5kZXJFbWJlZGRlZE9iamVjdCgpOworICAgIGF1dG8mIGRvY3VtZW50ID0gcGx1Z2luRWxlbWVu
dC5kb2N1bWVudCgpOworICAgIGF1dG8qIHJlbmRlcmVyID0gcGx1Z2luRWxlbWVudC5yZW5kZXJF
bWJlZGRlZE9iamVjdCgpOworCiAgICAgLy8gRklYTUU6IFRoaXMgY29kZSBzaG91bGQgbm90IGRl
cGVuZCBvbiByZW5kZXJlciEKICAgICBpZiAoIXJlbmRlcmVyKQogICAgICAgICByZXR1cm4gZmFs
c2U7CkBAIC0zOTksMTcgKzQwNCwxOSBAQCBib29sIFN1YmZyYW1lTG9hZGVyOjpsb2FkUGx1Z2lu
KEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQmIHBsdWdpbkVsZW1lbnQsIGNvbnN0IFVSTAogICAgIHBs
dWdpbkVsZW1lbnQuc3ViZnJhbWVMb2FkZXJXaWxsQ3JlYXRlUGx1Z0luKHVybCk7CiAKICAgICBJ
bnRTaXplIGNvbnRlbnRTaXplID0gcm91bmRlZEludFNpemUoTGF5b3V0U2l6ZShyZW5kZXJlci0+
Y29udGVudFdpZHRoKCksIHJlbmRlcmVyLT5jb250ZW50SGVpZ2h0KCkpKTsKLSAgICBib29sIGxv
YWRNYW51YWxseSA9IGlzPFBsdWdpbkRvY3VtZW50PigqZG9jdW1lbnQoKSkgJiYgIW1fY29udGFp
bnNQbHVnaW5zICYmIGRvd25jYXN0PFBsdWdpbkRvY3VtZW50PigqZG9jdW1lbnQoKSkuc2hvdWxk
TG9hZFBsdWdpbk1hbnVhbGx5KCk7CisgICAgYm9vbCBsb2FkTWFudWFsbHkgPSBpczxQbHVnaW5E
b2N1bWVudD4oZG9jdW1lbnQpICYmICFtX2NvbnRhaW5zUGx1Z2lucyAmJiBkb3duY2FzdDxQbHVn
aW5Eb2N1bWVudD4oZG9jdW1lbnQpLnNob3VsZExvYWRQbHVnaW5NYW51YWxseSgpOwogCiAjaWYg
UExBVEZPUk0oSU9TKQogICAgIC8vIE9uIGlPUywgd2Ugb25seSB0ZWxsIHRoZSBwbHVnaW4gdG8g
YmUgaW4gZnVsbCBwYWdlIG1vZGUgaWYgdGhlIGNvbnRhaW5pbmcgcGx1Z2luIGRvY3VtZW50IGlz
IHRoZSB0b3AgbGV2ZWwgZG9jdW1lbnQuCi0gICAgaWYgKGRvY3VtZW50KCktPm93bmVyRWxlbWVu
dCgpKQorICAgIGlmIChkb2N1bWVudC5vd25lckVsZW1lbnQoKSkKICAgICAgICAgbG9hZE1hbnVh
bGx5ID0gZmFsc2U7CiAjZW5kaWYKIAotICAgIFdlYWtQdHI8UmVuZGVyV2lkZ2V0PiB3ZWFrUmVu
ZGVyZXIgPSByZW5kZXJlci0+Y3JlYXRlV2Vha1B0cigpOwotICAgIC8vIGNyZWF0ZVBsdWdpbiAq
bWF5KiBjYXVzZSB0aGlzIHJlbmRlcmVyIHRvIGRpc2FwcGVhciBmcm9tIHVuZGVybmVhdGguCi0g
ICAgUmVmUHRyPFdpZGdldD4gd2lkZ2V0ID0gbV9mcmFtZS5sb2FkZXIoKS5jbGllbnQoKS5jcmVh
dGVQbHVnaW4oY29udGVudFNpemUsICZwbHVnaW5FbGVtZW50LCB1cmwsIHBhcmFtTmFtZXMsIHBh
cmFtVmFsdWVzLCBtaW1lVHlwZSwgbG9hZE1hbnVhbGx5KTsKKyAgICBhdXRvIHdlYWtSZW5kZXJl
ciA9IHJlbmRlcmVyLT5jcmVhdGVXZWFrUHRyKCk7CisKKyAgICBhdXRvIHdpZGdldCA9IG1fZnJh
bWUubG9hZGVyKCkuY2xpZW50KCkuY3JlYXRlUGx1Z2luKGNvbnRlbnRTaXplLCBwbHVnaW5FbGVt
ZW50LCB1cmwsIHBhcmFtTmFtZXMsIHBhcmFtVmFsdWVzLCBtaW1lVHlwZSwgbG9hZE1hbnVhbGx5
KTsKKworICAgIC8vIFRoZSBjYWxsIHRvIGNyZWF0ZVBsdWdpbiAqbWF5KiBjYXVzZSB0aGlzIHJl
bmRlcmVyIHRvIGRpc2FwcGVhciBmcm9tIHVuZGVybmVhdGguCiAgICAgaWYgKCF3ZWFrUmVuZGVy
ZXIpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIApAQCAtNDMzLDkgKzQ0MCw3IEBAIFVSTCBTdWJm
cmFtZUxvYWRlcjo6Y29tcGxldGVVUkwoY29uc3QgU3RyaW5nJiB1cmwpIGNvbnN0CiAKIGJvb2wg
U3ViZnJhbWVMb2FkZXI6OnNob3VsZENvbnZlcnRJbnZhbGlkVVJMc1RvQmxhbmsoKSBjb25zdAog
ewotICAgIGlmIChTZXR0aW5ncyogc2V0dGluZ3MgPSBkb2N1bWVudCgpID8gZG9jdW1lbnQoKS0+
c2V0dGluZ3MoKSA6IG51bGxwdHIpCi0gICAgICAgIHJldHVybiBzZXR0aW5ncy0+c2hvdWxkQ29u
dmVydEludmFsaWRVUkxzVG9CbGFuaygpOwotICAgIHJldHVybiB0cnVlOworICAgIHJldHVybiBt
X2ZyYW1lLnNldHRpbmdzKCkuc2hvdWxkQ29udmVydEludmFsaWRVUkxzVG9CbGFuaygpOwogfQog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvU3ViZnJhbWVMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJmcmFtZUxvYWRl
ci5oCmluZGV4IDk1MTM5NzRiODE3MDVhZWM2NWQxNTUwMjMzOTM1ZDRhNTQyM2I3ODUuLjEyYmY3
NzE3ZTc0MzIzNWNjYzdkYTdkY2NjMzM3ZDQyNjkyYWE5NjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9TdWJmcmFtZUxvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9TdWJmcmFtZUxvYWRlci5oCkBAIC02MSw3ICs2MSw3IEBAIHB1YmxpYzoKICAgICBib29sIHJl
cXVlc3RPYmplY3QoSFRNTFBsdWdJbkltYWdlRWxlbWVudCYsIGNvbnN0IFN0cmluZyYgdXJsLCBj
b25zdCBBdG9taWNTdHJpbmcmIGZyYW1lTmFtZSwKICAgICAgICAgY29uc3QgU3RyaW5nJiBzZXJ2
aWNlVHlwZSwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxT
dHJpbmc+JiBwYXJhbVZhbHVlcyk7CiAKLSAgICBQYXNzUmVmUHRyPFdpZGdldD4gY3JlYXRlSmF2
YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXplJiwgSFRNTEFwcGxldEVsZW1lbnQmLCBjb25zdCBW
ZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFs
dWVzKTsKKyAgICBSZWZQdHI8V2lkZ2V0PiBjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IElu
dFNpemUmLCBIVE1MQXBwbGV0RWxlbWVudCYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5h
bWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpOwogCiAgICAgV0VCQ09SRV9F
WFBPUlQgYm9vbCBhbGxvd1BsdWdpbnMoKTsKIApAQCAtNzgsMTQgKzc4LDEyIEBAIHByaXZhdGU6
CiAgICAgYm9vbCBzaG91bGRVc2VQbHVnaW4oY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiBtaW1l
VHlwZSwgYm9vbCBoYXNGYWxsYmFjaywgYm9vbCYgdXNlRmFsbGJhY2spOwogICAgIGJvb2wgcGx1
Z2luSXNMb2FkYWJsZShjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlKTsKIAotICAg
IERvY3VtZW50KiBkb2N1bWVudCgpIGNvbnN0OworICAgIFVSTCBjb21wbGV0ZVVSTChjb25zdCBT
dHJpbmcmKSBjb25zdDsKIAogICAgIGJvb2wgc2hvdWxkQ29udmVydEludmFsaWRVUkxzVG9CbGFu
aygpIGNvbnN0OwogCiAgICAgYm9vbCBtX2NvbnRhaW5zUGx1Z2luczsKICAgICBGcmFtZSYgbV9m
cmFtZTsKLQotICAgIFVSTCBjb21wbGV0ZVVSTChjb25zdCBTdHJpbmcmKSBjb25zdDsKIH07CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9TdWJyZXNvdXJjZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3VicmVzb3Vy
Y2VMb2FkZXIuY3BwCmluZGV4IGI2YTYzNDEwZDNlYzY2Zjk1ZTY2MTA1YWFkZjdjMzMyZjliNDQx
YTYuLjZlOTdmYTQ5MWY0MmJhNGNlNTI5MjY1OTE5YjM2YjgzZjUzMWMzNTcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL1N1YnJlc291cmNlTG9hZGVyLmNwcApAQCAtMjU2LDYgKzI1Niw3IEBA
IHZvaWQgU3VicmVzb3VyY2VMb2FkZXI6OmRpZFNlbmREYXRhKHVuc2lnbmVkIGxvbmcgbG9uZyBi
eXRlc1NlbnQsIHVuc2lnbmVkIGxvbmcKIH0KIAogI2lmIFVTRShRVUlDS19MT09LKQorCiBib29s
IFN1YnJlc291cmNlTG9hZGVyOjpzaG91bGRDcmVhdGVRdWlja0xvb2tIYW5kbGVGb3JSZXNwb25z
ZShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkgY29uc3QKIHsKICAgICBpZiAobV9y
ZXNvdXJjZS0+dHlwZSgpICE9IENhY2hlZFJlc291cmNlOjpNYWluUmVzb3VyY2UpCkBAIC0yNjYs
NiArMjY3LDcgQEAgYm9vbCBTdWJyZXNvdXJjZUxvYWRlcjo6c2hvdWxkQ3JlYXRlUXVpY2tMb29r
SGFuZGxlRm9yUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXMKIAogICAgIHJldHVybiBRdWlja0xv
b2tIYW5kbGU6OnNob3VsZENyZWF0ZUZvck1JTUVUeXBlKHJlc3BvbnNlLm1pbWVUeXBlKCkpOwog
fQorCiAjZW5kaWYKIAogdm9pZCBTdWJyZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNl
KGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGUuY3BwIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGUuY3BwCmluZGV4IDZmODJlMWRjNzk2
YTk2MDIwOTFiZDY4MmM5NzQ3YzI0OGI5NTRhZDEuLjYwMDljY2E3NzJmZTJiY2E3NjAyYzczMTQ2
NzhmZTRhMjQ4YjU5YmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNo
ZS9BcHBsaWNhdGlvbkNhY2hlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2Fj
aGUvQXBwbGljYXRpb25DYWNoZS5jcHAKQEAgLTQzLDE3ICs0MywxMyBAQCBzdGF0aWMgaW5saW5l
IGJvb2wgZmFsbGJhY2tVUkxMb25nZXJUaGFuKGNvbnN0IHN0ZDo6cGFpcjxVUkwsIFVSTD4mIGxo
cywgY29uc3QgcwogfQogCiBBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlKCkKLSAg
ICA6IG1fZ3JvdXAobnVsbHB0cikKLSAgICAsIG1fbWFuaWZlc3QobnVsbHB0cikKLSAgICAsIG1f
ZXN0aW1hdGVkU2l6ZUluU3RvcmFnZSgwKQotICAgICwgbV9zdG9yYWdlSUQoMCkKIHsKIH0KIAog
QXBwbGljYXRpb25DYWNoZTo6fkFwcGxpY2F0aW9uQ2FjaGUoKQogewogICAgIGlmIChtX2dyb3Vw
KQotICAgICAgICBtX2dyb3VwLT5jYWNoZURlc3Ryb3llZCh0aGlzKTsKKyAgICAgICAgbV9ncm91
cC0+Y2FjaGVEZXN0cm95ZWQoKnRoaXMpOwogfQogICAgIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hl
OjpzZXRHcm91cChBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwKQpAQCAtNjQsNTcgKzYwLDM5
IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZTo6c2V0R3JvdXAoQXBwbGljYXRpb25DYWNoZUdyb3Vw
KiBncm91cCkKIAogYm9vbCBBcHBsaWNhdGlvbkNhY2hlOjppc0NvbXBsZXRlKCkKIHsKLSAgICBy
ZXR1cm4gbV9ncm91cCAmJiBtX2dyb3VwLT5jYWNoZUlzQ29tcGxldGUodGhpcyk7CisgICAgcmV0
dXJuIG1fZ3JvdXAgJiYgbV9ncm91cC0+Y2FjaGVJc0NvbXBsZXRlKCp0aGlzKTsKIH0KIAotdm9p
ZCBBcHBsaWNhdGlvbkNhY2hlOjpzZXRNYW5pZmVzdFJlc291cmNlKFBhc3NSZWZQdHI8QXBwbGlj
YXRpb25DYWNoZVJlc291cmNlPiBtYW5pZmVzdCkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZTo6c2V0
TWFuaWZlc3RSZXNvdXJjZShSZWY8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiYmIG1hbmlmZXN0
KQogewotICAgIEFTU0VSVChtYW5pZmVzdCk7CiAgICAgQVNTRVJUKCFtX21hbmlmZXN0KTsKICAg
ICBBU1NFUlQobWFuaWZlc3QtPnR5cGUoKSAmIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6TWFu
aWZlc3QpOwotICAgIAotICAgIG1fbWFuaWZlc3QgPSBtYW5pZmVzdC5nZXQoKTsKLSAgICAKLSAg
ICBhZGRSZXNvdXJjZShtYW5pZmVzdCk7CisKKyAgICBtX21hbmlmZXN0ID0gbWFuaWZlc3QucHRy
KCk7CisKKyAgICBhZGRSZXNvdXJjZShXVEZNb3ZlKG1hbmlmZXN0KSk7CiB9CiAgICAgCi12b2lk
IEFwcGxpY2F0aW9uQ2FjaGU6OmFkZFJlc291cmNlKFBhc3NSZWZQdHI8QXBwbGljYXRpb25DYWNo
ZVJlc291cmNlPiByZXNvdXJjZSkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZTo6YWRkUmVzb3VyY2Uo
UmVmPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4mJiByZXNvdXJjZSkKIHsKLSAgICBBU1NFUlQo
cmVzb3VyY2UpOwotICAgIAotICAgIGNvbnN0IFN0cmluZyYgdXJsID0gcmVzb3VyY2UtPnVybCgp
OwotICAgIAorICAgIGF1dG8mIHVybCA9IHJlc291cmNlLT51cmwoKTsKKworICAgIEFTU0VSVCgh
VVJMKFBhcnNlZFVSTFN0cmluZywgdXJsKS5oYXNGcmFnbWVudElkZW50aWZpZXIoKSk7CiAgICAg
QVNTRVJUKCFtX3Jlc291cmNlcy5jb250YWlucyh1cmwpKTsKLSAgICAKKwogICAgIGlmIChtX3N0
b3JhZ2VJRCkgewogICAgICAgICBBU1NFUlQoIXJlc291cmNlLT5zdG9yYWdlSUQoKSk7CiAgICAg
ICAgIEFTU0VSVChyZXNvdXJjZS0+dHlwZSgpICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpN
YXN0ZXIpOwotICAgICAgICAKKwogICAgICAgICAvLyBBZGQgdGhlIHJlc291cmNlIHRvIHRoZSBz
dG9yYWdlLgotICAgICAgICBtX2dyb3VwLT5zdG9yYWdlKCkuc3RvcmUocmVzb3VyY2UuZ2V0KCks
IHRoaXMpOworICAgICAgICBtX2dyb3VwLT5zdG9yYWdlKCkuc3RvcmUocmVzb3VyY2UucHRyKCks
IHRoaXMpOwogICAgIH0KIAogICAgIG1fZXN0aW1hdGVkU2l6ZUluU3RvcmFnZSArPSByZXNvdXJj
ZS0+ZXN0aW1hdGVkU2l6ZUluU3RvcmFnZSgpOwogCi0gICAgbV9yZXNvdXJjZXMuc2V0KHVybCwg
cmVzb3VyY2UpOworICAgIG1fcmVzb3VyY2VzLnNldCh1cmwsIFdURk1vdmUocmVzb3VyY2UpKTsK
IH0KIAotdW5zaWduZWQgQXBwbGljYXRpb25DYWNoZTo6cmVtb3ZlUmVzb3VyY2UoY29uc3QgU3Ry
aW5nJiB1cmwpCi17Ci0gICAgSGFzaE1hcDxTdHJpbmcsIFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hl
UmVzb3VyY2U+Pjo6aXRlcmF0b3IgaXQgPSBtX3Jlc291cmNlcy5maW5kKHVybCk7Ci0gICAgaWYg
KGl0ID09IG1fcmVzb3VyY2VzLmVuZCgpKQotICAgICAgICByZXR1cm4gMDsKLQotICAgIC8vIFRo
ZSByZXNvdXJjZSBleGlzdHMsIGdldCBpdHMgdHlwZSBzbyB3ZSBjYW4gcmV0dXJuIGl0LgotICAg
IHVuc2lnbmVkIHR5cGUgPSBpdC0+dmFsdWUtPnR5cGUoKTsKLQotICAgIG1fZXN0aW1hdGVkU2l6
ZUluU3RvcmFnZSAtPSBpdC0+dmFsdWUtPmVzdGltYXRlZFNpemVJblN0b3JhZ2UoKTsKLQotICAg
IG1fcmVzb3VyY2VzLnJlbW92ZShpdCk7Ci0KLSAgICByZXR1cm4gdHlwZTsKLX0gICAgCi0gICAg
CiBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqIEFwcGxpY2F0aW9uQ2FjaGU6OnJlc291cmNlRm9y
VVJMKGNvbnN0IFN0cmluZyYgdXJsKQogewogICAgIEFTU0VSVCghVVJMKFBhcnNlZFVSTFN0cmlu
ZywgdXJsKS5oYXNGcmFnbWVudElkZW50aWZpZXIoKSk7CkBAIC0xMzMsOSArMTExLDcgQEAgQXBw
bGljYXRpb25DYWNoZVJlc291cmNlKiBBcHBsaWNhdGlvbkNhY2hlOjpyZXNvdXJjZUZvclJlcXVl
c3QoY29uc3QgUmVzb3VyY2VSZXEKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKICAgICBVUkwg
dXJsKHJlcXVlc3QudXJsKCkpOwotICAgIGlmICh1cmwuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkp
Ci0gICAgICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKLQorICAgIHVybC5yZW1v
dmVGcmFnbWVudElkZW50aWZpZXIoKTsKICAgICByZXR1cm4gcmVzb3VyY2VGb3JVUkwodXJsKTsK
IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0
aW9uQ2FjaGUuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNh
Y2hlLmgKaW5kZXggNzYxNzY2MjBmY2Q2ZmEzOWFkMmE1YzM5NjFiYWMyM2IxN2E3YzAyNS4uOWE0
NThjNzEwYzRhZDAxOWIxMzVmZjE0NjcwMDZkZjgwOTQ4MTdmYSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGUuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZS5oCkBAIC0xLDUgKzEsNSBA
QAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2
ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxNyBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVz
ZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTI2LDM1ICsyNiwyOCBA
QAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgotI2luY2x1ZGUgPHd0
Zi9IYXNoU2V0Lmg+Ci0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KLSNpbmNsdWRlIDx3dGYv
UmVmQ291bnRlZC5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0hhc2guaD4KLSNpbmNsdWRl
IDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBB
cHBsaWNhdGlvbkNhY2hlR3JvdXA7CiBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U7Ci1j
bGFzcyBEb2N1bWVudExvYWRlcjsKIGNsYXNzIFVSTDsKIGNsYXNzIFJlc291cmNlUmVxdWVzdDsK
LWNsYXNzIFNlY3VyaXR5T3JpZ2luOwogCi10eXBlZGVmIFZlY3RvcjxzdGQ6OnBhaXI8VVJMLCBV
Ukw+PiBGYWxsYmFja1VSTFZlY3RvcjsKK3VzaW5nIEZhbGxiYWNrVVJMVmVjdG9yID0gVmVjdG9y
PHN0ZDo6cGFpcjxVUkwsIFVSTD4+OwogCiBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlIDogcHVibGlj
IFJlZkNvdW50ZWQ8QXBwbGljYXRpb25DYWNoZT4gewogcHVibGljOgogICAgIHN0YXRpYyBSZWY8
QXBwbGljYXRpb25DYWNoZT4gY3JlYXRlKCkgeyByZXR1cm4gYWRvcHRSZWYoKm5ldyBBcHBsaWNh
dGlvbkNhY2hlKTsgfQotICAgIAorCiAgICAgfkFwcGxpY2F0aW9uQ2FjaGUoKTsKIAotICAgIHZv
aWQgYWRkUmVzb3VyY2UoUGFzc1JlZlB0cjxBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+IHJlc291
cmNlKTsKLSAgICB1bnNpZ25lZCByZW1vdmVSZXNvdXJjZShjb25zdCBTdHJpbmcmIHVybCk7Ci0g
ICAgCi0gICAgdm9pZCBzZXRNYW5pZmVzdFJlc291cmNlKFBhc3NSZWZQdHI8QXBwbGljYXRpb25D
YWNoZVJlc291cmNlPiBtYW5pZmVzdCk7CisgICAgdm9pZCBhZGRSZXNvdXJjZShSZWY8QXBwbGlj
YXRpb25DYWNoZVJlc291cmNlPiYmKTsKKworICAgIHZvaWQgc2V0TWFuaWZlc3RSZXNvdXJjZShS
ZWY8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiYmKTsKICAgICBBcHBsaWNhdGlvbkNhY2hlUmVz
b3VyY2UqIG1hbmlmZXN0UmVzb3VyY2UoKSBjb25zdCB7IHJldHVybiBtX21hbmlmZXN0OyB9Ci0g
ICAgCisKICAgICB2b2lkIHNldEdyb3VwKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCopOwogICAgIEFw
cGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAoKSBjb25zdCB7IHJldHVybiBtX2dyb3VwOyB9CiAK
QEAgLTcyLDM5ICs2NSwzOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRGYWxsYmFja1VSTHMoY29u
c3QgRmFsbGJhY2tVUkxWZWN0b3ImKTsKICAgICBjb25zdCBGYWxsYmFja1VSTFZlY3RvciYgZmFs
bGJhY2tVUkxzKCkgY29uc3QgeyByZXR1cm4gbV9mYWxsYmFja1VSTHM7IH0KICAgICBib29sIHVy
bE1hdGNoZXNGYWxsYmFja05hbWVzcGFjZShjb25zdCBVUkwmLCBVUkwqIGZhbGxiYWNrVVJMID0g
bnVsbHB0cik7Ci0gICAgCisKICNpZm5kZWYgTkRFQlVHCiAgICAgdm9pZCBkdW1wKCk7CiAjZW5k
aWYKIAotICAgIHR5cGVkZWYgSGFzaE1hcDxTdHJpbmcsIFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hl
UmVzb3VyY2U+PiBSZXNvdXJjZU1hcDsKKyAgICB1c2luZyBSZXNvdXJjZU1hcCA9IEhhc2hNYXA8
U3RyaW5nLCBSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPj47CiAgICAgY29uc3QgUmVz
b3VyY2VNYXAmIHJlc291cmNlcygpIGNvbnN0IHsgcmV0dXJuIG1fcmVzb3VyY2VzOyB9Ci0gICAg
CisKICAgICB2b2lkIHNldFN0b3JhZ2VJRCh1bnNpZ25lZCBzdG9yYWdlSUQpIHsgbV9zdG9yYWdl
SUQgPSBzdG9yYWdlSUQ7IH0KICAgICB1bnNpZ25lZCBzdG9yYWdlSUQoKSBjb25zdCB7IHJldHVy
biBtX3N0b3JhZ2VJRDsgfQogICAgIHZvaWQgY2xlYXJTdG9yYWdlSUQoKTsKLSAgICAKKwogICAg
IHN0YXRpYyBib29sIHJlcXVlc3RJc0hUVFBPckhUVFBTR2V0KGNvbnN0IFJlc291cmNlUmVxdWVz
dCYpOwogCiAgICAgaW50NjRfdCBlc3RpbWF0ZWRTaXplSW5TdG9yYWdlKCkgY29uc3QgeyByZXR1
cm4gbV9lc3RpbWF0ZWRTaXplSW5TdG9yYWdlOyB9CiAKIHByaXZhdGU6CiAgICAgQXBwbGljYXRp
b25DYWNoZSgpOwotICAgIAotICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogbV9ncm91cDsKKwor
ICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogbV9ncm91cCB7IG51bGxwdHIgfTsKICAgICBSZXNv
dXJjZU1hcCBtX3Jlc291cmNlczsKLSAgICBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqIG1fbWFu
aWZlc3Q7CisgICAgQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiBtX21hbmlmZXN0IHsgbnVsbHB0
ciB9OwogCi0gICAgYm9vbCBtX2FsbG93QWxsTmV0d29ya1JlcXVlc3RzOworICAgIGJvb2wgbV9h
bGxvd0FsbE5ldHdvcmtSZXF1ZXN0cyB7IGZhbHNlIH07CiAgICAgVmVjdG9yPFVSTD4gbV9vbmxp
bmVXaGl0ZWxpc3Q7CiAgICAgRmFsbGJhY2tVUkxWZWN0b3IgbV9mYWxsYmFja1VSTHM7CiAKICAg
ICAvLyBUaGUgdG90YWwgc2l6ZSBvZiB0aGUgcmVzb3VyY2VzIGJlbG9uZ2luZyB0byB0aGlzIEFw
cGxpY2F0aW9uIENhY2hlIGluc3RhbmNlLgotICAgIC8vIFRoaXMgaXMgYW4gZXN0aW1hdGlvbiBv
ZiB0aGUgc2l6ZSB0aGlzIEFwcGxpY2F0aW9uIENhY2hlIG9jY3VwaWVzIGluIHRoZQotICAgIC8v
IGRhdGFiYXNlIGZpbGUuCi0gICAgaW50NjRfdCBtX2VzdGltYXRlZFNpemVJblN0b3JhZ2U7Cisg
ICAgLy8gVGhpcyBpcyBhbiBlc3RpbWF0aW9uIG9mIHRoZSBzaXplIHRoaXMgQXBwbGljYXRpb24g
Q2FjaGUgb2NjdXBpZXMgaW4gdGhlIGRhdGFiYXNlIGZpbGUuCisgICAgaW50NjRfdCBtX2VzdGlt
YXRlZFNpemVJblN0b3JhZ2UgeyAwIH07CiAKLSAgICB1bnNpZ25lZCBtX3N0b3JhZ2VJRDsKKyAg
ICB1bnNpZ25lZCBtX3N0b3JhZ2VJRCB7IDAgfTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlv
bkNhY2hlR3JvdXAuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0
aW9uQ2FjaGVHcm91cC5jcHAKaW5kZXggODZlOWE1YTg4NDkwN2NkZDNkNDZhZmNjZGUwM2Y4ZDNm
YTA5ODUzYS4uOTg4MWIyNWU1YWNiMGZlOTY0MjVmNjdhZGIzNDMxODQxNDdiZTA4ZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91
cC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2Fj
aGVHcm91cC5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA4LCAy
MDA5LCAyMDEwIEFwcGxlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyAqIENvcHlyaWdodCAo
QykgMjAwOC0yMDE3IEFwcGxlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAqCiAgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMzQsNiArMzQsNyBAQAogI2luY2x1ZGUgIkNocm9tZUNs
aWVudC5oIgogI2luY2x1ZGUgIkRPTUFwcGxpY2F0aW9uQ2FjaGUuaCIKICNpbmNsdWRlICJEb2N1
bWVudExvYWRlci5oIgorI2luY2x1ZGUgIkV2ZW50TmFtZXMuaCIKICNpbmNsdWRlICJGcmFtZS5o
IgogI2luY2x1ZGUgIkZyYW1lTG9hZGVyLmgiCiAjaW5jbHVkZSAiRnJhbWVMb2FkZXJDbGllbnQu
aCIKQEAgLTU0LDE3ICs1NSw3IEBAIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6QXBwbGljYXRpb25D
YWNoZUdyb3VwKFJlZjxBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZT4mJiBzdG9yCiAgICAgOiBtX3N0
b3JhZ2UoV1RGTW92ZShzdG9yYWdlKSkKICAgICAsIG1fbWFuaWZlc3RVUkwobWFuaWZlc3RVUkwp
CiAgICAgLCBtX29yaWdpbihTZWN1cml0eU9yaWdpbjo6Y3JlYXRlKG1hbmlmZXN0VVJMKSkKLSAg
ICAsIG1fdXBkYXRlU3RhdHVzKElkbGUpCi0gICAgLCBtX2Rvd25sb2FkaW5nUGVuZGluZ01hc3Rl
clJlc291cmNlTG9hZGVyc0NvdW50KDApCi0gICAgLCBtX3Byb2dyZXNzVG90YWwoMCkKLSAgICAs
IG1fcHJvZ3Jlc3NEb25lKDApCi0gICAgLCBtX2ZyYW1lKG51bGxwdHIpCi0gICAgLCBtX3N0b3Jh
Z2VJRCgwKQotICAgICwgbV9pc09ic29sZXRlKGZhbHNlKQotICAgICwgbV9jb21wbGV0aW9uVHlw
ZShOb25lKQotICAgICwgbV9jYWxsZWRSZWFjaGVkTWF4QXBwQ2FjaGVTaXplKGZhbHNlKQogICAg
ICwgbV9hdmFpbGFibGVTcGFjZUluUXVvdGEoQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OnVua25v
d25RdW90YSgpKQotICAgICwgbV9vcmlnaW5RdW90YUV4Y2VlZGVkUHJldmlvdXNseShmYWxzZSkK
IHsKIH0KIApAQCAtNzIsMTAgKzYzLDEwIEBAIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6fkFwcGxp
Y2F0aW9uQ2FjaGVHcm91cCgpCiB7CiAgICAgQVNTRVJUKCFtX25ld2VzdENhY2hlKTsKICAgICBB
U1NFUlQobV9jYWNoZXMuaXNFbXB0eSgpKTsKLSAgICAKKwogICAgIHN0b3BMb2FkaW5nKCk7CiAK
LSAgICBtX3N0b3JhZ2UtPmNhY2hlR3JvdXBEZXN0cm95ZWQodGhpcyk7CisgICAgbV9zdG9yYWdl
LT5jYWNoZUdyb3VwRGVzdHJveWVkKCp0aGlzKTsKIH0KICAgICAKIEFwcGxpY2F0aW9uQ2FjaGUq
IEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6Y2FjaGVGb3JNYWluUmVxdWVzdChjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmIHJlcXVlc3QsIERvY3VtZW50TG9hZGVyKiBkb2N1bWVudExvYWRlcikKQEAgLTg0
LDIxICs3NSwyMCBAQCBBcHBsaWNhdGlvbkNhY2hlKiBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNh
Y2hlRm9yTWFpblJlcXVlc3QoY29uc3QgUmVzb3VyY2VSZXF1ZQogICAgICAgICByZXR1cm4gbnVs
bHB0cjsKIAogICAgIFVSTCB1cmwocmVxdWVzdC51cmwoKSk7Ci0gICAgaWYgKHVybC5oYXNGcmFn
bWVudElkZW50aWZpZXIoKSkKLSAgICAgICAgdXJsLnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigp
OworICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKIAogICAgIGF1dG8qIHBhZ2Ug
PSBkb2N1bWVudExvYWRlci0+ZnJhbWUoKSA/IGRvY3VtZW50TG9hZGVyLT5mcmFtZSgpLT5wYWdl
KCkgOiBudWxscHRyOwogICAgIGlmICghcGFnZSB8fCBwYWdlLT51c2VzRXBoZW1lcmFsU2Vzc2lv
bigpKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAotICAgIGlmIChBcHBsaWNhdGlvbkNhY2hl
R3JvdXAqIGdyb3VwID0gcGFnZS0+YXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKS5jYWNoZUdyb3Vw
Rm9yVVJMKHVybCkpIHsKLSAgICAgICAgQVNTRVJUKGdyb3VwLT5uZXdlc3RDYWNoZSgpKTsKLSAg
ICAgICAgQVNTRVJUKCFncm91cC0+aXNPYnNvbGV0ZSgpKTsKLSAgICAgICAgCi0gICAgICAgIHJl
dHVybiBncm91cC0+bmV3ZXN0Q2FjaGUoKTsKLSAgICB9Ci0gICAgCi0gICAgcmV0dXJuIG51bGxw
dHI7CisgICAgYXV0byogZ3JvdXAgPSBwYWdlLT5hcHBsaWNhdGlvbkNhY2hlU3RvcmFnZSgpLmNh
Y2hlR3JvdXBGb3JVUkwodXJsKTsKKyAgICBpZiAoIWdyb3VwKQorICAgICAgICByZXR1cm4gbnVs
bHB0cjsKKworICAgIEFTU0VSVChncm91cC0+bmV3ZXN0Q2FjaGUoKSk7CisgICAgQVNTRVJUKCFn
cm91cC0+aXNPYnNvbGV0ZSgpKTsKKworICAgIHJldHVybiBncm91cC0+bmV3ZXN0Q2FjaGUoKTsK
IH0KICAgICAKIEFwcGxpY2F0aW9uQ2FjaGUqIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZmFsbGJh
Y2tDYWNoZUZvck1haW5SZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRG9j
dW1lbnRMb2FkZXIqIGRvY3VtZW50TG9hZGVyKQpAQCAtMTA2LDgxICs5Niw4NyBAQCBBcHBsaWNh
dGlvbkNhY2hlKiBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmZhbGxiYWNrQ2FjaGVGb3JNYWluUmVx
dWVzdChjb25zdCBSZXNvdQogICAgIGlmICghQXBwbGljYXRpb25DYWNoZTo6cmVxdWVzdElzSFRU
UE9ySFRUUFNHZXQocmVxdWVzdCkpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgVVJM
IHVybChyZXF1ZXN0LnVybCgpKTsKLSAgICBpZiAodXJsLmhhc0ZyYWdtZW50SWRlbnRpZmllcigp
KQotICAgICAgICB1cmwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CisgICAgYXV0byogZnJh
bWUgPSBkb2N1bWVudExvYWRlci0+ZnJhbWUoKTsKKyAgICBpZiAoIWZyYW1lKQorICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKIAotICAgIGF1dG8qIHBhZ2UgPSBkb2N1bWVudExvYWRlci0+ZnJhbWUo
KSA/IGRvY3VtZW50TG9hZGVyLT5mcmFtZSgpLT5wYWdlKCkgOiBudWxscHRyOworICAgIGF1dG8q
IHBhZ2UgPSBmcmFtZS0+cGFnZSgpOwogICAgIGlmICghcGFnZSkKICAgICAgICAgcmV0dXJuIG51
bGxwdHI7CiAKLSAgICBpZiAoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCA9IHBhZ2UtPmFw
cGxpY2F0aW9uQ2FjaGVTdG9yYWdlKCkuZmFsbGJhY2tDYWNoZUdyb3VwRm9yVVJMKHVybCkpIHsK
LSAgICAgICAgQVNTRVJUKGdyb3VwLT5uZXdlc3RDYWNoZSgpKTsKLSAgICAgICAgQVNTRVJUKCFn
cm91cC0+aXNPYnNvbGV0ZSgpKTsKKyAgICBVUkwgdXJsKHJlcXVlc3QudXJsKCkpOworICAgIHVy
bC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKIAotICAgICAgICByZXR1cm4gZ3JvdXAtPm5l
d2VzdENhY2hlKCk7Ci0gICAgfQotICAgIAotICAgIHJldHVybiBudWxscHRyOworICAgIGF1dG8q
IGdyb3VwID0gcGFnZS0+YXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKS5mYWxsYmFja0NhY2hlR3Jv
dXBGb3JVUkwodXJsKTsKKyAgICBpZiAoIWdyb3VwKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsK
KworICAgIEFTU0VSVChncm91cC0+bmV3ZXN0Q2FjaGUoKSk7CisgICAgQVNTRVJUKCFncm91cC0+
aXNPYnNvbGV0ZSgpKTsKKworICAgIHJldHVybiBncm91cC0+bmV3ZXN0Q2FjaGUoKTsKIH0KIAot
dm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVjdENhY2hlKEZyYW1lKiBmcmFtZSwgY29u
c3QgVVJMJiBwYXNzZWRNYW5pZmVzdFVSTCkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpz
ZWxlY3RDYWNoZShGcmFtZSYgZnJhbWUsIGNvbnN0IFVSTCYgcGFzc2VkTWFuaWZlc3RVUkwpCiB7
Ci0gICAgQVNTRVJUKGZyYW1lICYmIGZyYW1lLT5wYWdlKCkpOwotICAgIAotICAgIGlmICghZnJh
bWUtPnNldHRpbmdzKCkub2ZmbGluZVdlYkFwcGxpY2F0aW9uQ2FjaGVFbmFibGVkKCkpCisgICAg
QVNTRVJUKGZyYW1lLmRvY3VtZW50KCkpOworICAgIEFTU0VSVChmcmFtZS5wYWdlKCkpOworICAg
IEFTU0VSVChmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKTsKKworICAgIGlmICghZnJh
bWUuc2V0dGluZ3MoKS5vZmZsaW5lV2ViQXBwbGljYXRpb25DYWNoZUVuYWJsZWQoKSkKICAgICAg
ICAgcmV0dXJuOwotICAgIAotICAgIERvY3VtZW50TG9hZGVyKiBkb2N1bWVudExvYWRlciA9IGZy
YW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwotICAgIEFTU0VSVCghZG9jdW1lbnRMb2Fk
ZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPmFwcGxpY2F0aW9uQ2FjaGUoKSk7CisKKyAgICBh
dXRvJiBkb2N1bWVudExvYWRlciA9ICpmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwor
ICAgIEFTU0VSVCghZG9jdW1lbnRMb2FkZXIuYXBwbGljYXRpb25DYWNoZUhvc3QoKS5hcHBsaWNh
dGlvbkNhY2hlKCkpOwogCiAgICAgaWYgKHBhc3NlZE1hbmlmZXN0VVJMLmlzTnVsbCgpKSB7Ci0g
ICAgICAgIHNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0VVJMKGZyYW1lKTsgICAgICAgIAorICAg
ICAgICBzZWxlY3RDYWNoZVdpdGhvdXRNYW5pZmVzdFVSTChmcmFtZSk7CiAgICAgICAgIHJldHVy
bjsKICAgICB9CiAKICAgICAvLyBEb24ndCBhY2Nlc3MgYW55dGhpbmcgb24gZGlzayBpZiBwcml2
YXRlIGJyb3dzaW5nIGlzIGVuYWJsZWQuCi0gICAgaWYgKGZyYW1lLT5wYWdlKCktPnVzZXNFcGhl
bWVyYWxTZXNzaW9uKCkgfHwgIWZyYW1lLT5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5j
YW5BY2Nlc3NBcHBsaWNhdGlvbkNhY2hlKGZyYW1lLT50cmVlKCkudG9wKCkuZG9jdW1lbnQoKS0+
c2VjdXJpdHlPcmlnaW4oKSkpIHsKLSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlv
bkNhY2hlSG9zdDo6Q0hFQ0tJTkdfRVZFTlQsIGRvY3VtZW50TG9hZGVyKTsKLSAgICAgICAgcG9z
dExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RVJST1JfRVZFTlQsIGRvY3VtZW50
TG9hZGVyKTsKKyAgICBpZiAoZnJhbWUucGFnZSgpLT51c2VzRXBoZW1lcmFsU2Vzc2lvbigpIHx8
ICFmcmFtZS5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5jYW5BY2Nlc3NBcHBsaWNhdGlv
bkNhY2hlKGZyYW1lLnRyZWUoKS50b3AoKS5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpKSkg
eworICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5jaGVja2luZ0V2ZW50LCBk
b2N1bWVudExvYWRlcik7CisgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmVy
cm9yRXZlbnQsIGRvY3VtZW50TG9hZGVyKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAogICAg
IFVSTCBtYW5pZmVzdFVSTChwYXNzZWRNYW5pZmVzdFVSTCk7Ci0gICAgaWYgKG1hbmlmZXN0VVJM
Lmhhc0ZyYWdtZW50SWRlbnRpZmllcigpKQotICAgICAgICBtYW5pZmVzdFVSTC5yZW1vdmVGcmFn
bWVudElkZW50aWZpZXIoKTsKKyAgICBtYW5pZmVzdFVSTC5yZW1vdmVGcmFnbWVudElkZW50aWZp
ZXIoKTsKIAotICAgIEFwcGxpY2F0aW9uQ2FjaGUqIG1haW5SZXNvdXJjZUNhY2hlID0gZG9jdW1l
bnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1haW5SZXNvdXJjZUFwcGxpY2F0aW9u
Q2FjaGUoKTsKKyAgICBhdXRvKiBtYWluUmVzb3VyY2VDYWNoZSA9IGRvY3VtZW50TG9hZGVyLmFw
cGxpY2F0aW9uQ2FjaGVIb3N0KCkubWFpblJlc291cmNlQXBwbGljYXRpb25DYWNoZSgpOwogICAg
IAogICAgIGlmIChtYWluUmVzb3VyY2VDYWNoZSkgeworICAgICAgICBBU1NFUlQobWFpblJlc291
cmNlQ2FjaGUtPmdyb3VwKCkpOwogICAgICAgICBpZiAobWFuaWZlc3RVUkwgPT0gbWFpblJlc291
cmNlQ2FjaGUtPmdyb3VwKCktPm1fbWFuaWZlc3RVUkwpIHsKICAgICAgICAgICAgIC8vIFRoZSBj
YWNoZSBtYXkgaGF2ZSBnb3R0ZW4gb2Jzb2xldGVkIGFmdGVyIHdlJ3ZlIGxvYWRlZCBmcm9tIGl0
LCBidXQgYmVmb3JlIHdlIHBhcnNlZCB0aGUgZG9jdW1lbnQgYW5kIHNhdyBjYWNoZSBtYW5pZmVz
dC4KICAgICAgICAgICAgIGlmIChtYWluUmVzb3VyY2VDYWNoZS0+Z3JvdXAoKS0+aXNPYnNvbGV0
ZSgpKQogICAgICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgICAgIG1haW5SZXNvdXJjZUNh
Y2hlLT5ncm91cCgpLT5hc3NvY2lhdGVEb2N1bWVudExvYWRlcldpdGhDYWNoZShkb2N1bWVudExv
YWRlciwgbWFpblJlc291cmNlQ2FjaGUpOworICAgICAgICAgICAgbWFpblJlc291cmNlQ2FjaGUt
Pmdyb3VwKCktPmFzc29jaWF0ZURvY3VtZW50TG9hZGVyV2l0aENhY2hlKCZkb2N1bWVudExvYWRl
ciwgbWFpblJlc291cmNlQ2FjaGUpOwogICAgICAgICAgICAgbWFpblJlc291cmNlQ2FjaGUtPmdy
b3VwKCktPnVwZGF0ZShmcmFtZSwgQXBwbGljYXRpb25DYWNoZVVwZGF0ZVdpdGhCcm93c2luZ0Nv
bnRleHQpOwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgLy8gVGhlIG1haW4gcmVzb3Vy
Y2Ugd2FzIGxvYWRlZCBmcm9tIGNhY2hlLCBzbyB0aGUgY2FjaGUgbXVzdCBoYXZlIGFuIGVudHJ5
IGZvciBpdC4gTWFyayBpdCBhcyBmb3JlaWduLgotICAgICAgICAgICAgVVJMIHJlc291cmNlVVJM
KGRvY3VtZW50TG9hZGVyLT5yZXNwb25zZVVSTCgpKTsKLSAgICAgICAgICAgIGlmIChyZXNvdXJj
ZVVSTC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSkKLSAgICAgICAgICAgICAgICByZXNvdXJjZVVS
TC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKLSAgICAgICAgICAgIEFwcGxpY2F0aW9uQ2Fj
aGVSZXNvdXJjZSogcmVzb3VyY2UgPSBtYWluUmVzb3VyY2VDYWNoZS0+cmVzb3VyY2VGb3JVUkwo
cmVzb3VyY2VVUkwpOwotICAgICAgICAgICAgYm9vbCBpblN0b3JhZ2UgPSByZXNvdXJjZS0+c3Rv
cmFnZUlEKCk7Ci0gICAgICAgICAgICByZXNvdXJjZS0+YWRkVHlwZShBcHBsaWNhdGlvbkNhY2hl
UmVzb3VyY2U6OkZvcmVpZ24pOworICAgICAgICAgICAgVVJMIHJlc291cmNlVVJMIHsgZG9jdW1l
bnRMb2FkZXIucmVzcG9uc2VVUkwoKSB9OworICAgICAgICAgICAgcmVzb3VyY2VVUkwucmVtb3Zl
RnJhZ21lbnRJZGVudGlmaWVyKCk7CisKKyAgICAgICAgICAgIEFTU0VSVChtYWluUmVzb3VyY2VD
YWNoZS0+cmVzb3VyY2VGb3JVUkwocmVzb3VyY2VVUkwpKTsKKyAgICAgICAgICAgIGF1dG8mIHJl
c291cmNlID0gKm1haW5SZXNvdXJjZUNhY2hlLT5yZXNvdXJjZUZvclVSTChyZXNvdXJjZVVSTCk7
CisKKyAgICAgICAgICAgIGJvb2wgaW5TdG9yYWdlID0gcmVzb3VyY2Uuc3RvcmFnZUlEKCk7Cisg
ICAgICAgICAgICByZXNvdXJjZS5hZGRUeXBlKEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6Rm9y
ZWlnbik7CiAgICAgICAgICAgICBpZiAoaW5TdG9yYWdlKQotICAgICAgICAgICAgICAgIGZyYW1l
LT5wYWdlKCktPmFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlKCkuc3RvcmVVcGRhdGVkVHlwZShyZXNv
dXJjZSwgbWFpblJlc291cmNlQ2FjaGUpOworICAgICAgICAgICAgICAgIGZyYW1lLnBhZ2UoKS0+
YXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKS5zdG9yZVVwZGF0ZWRUeXBlKCZyZXNvdXJjZSwgbWFp
blJlc291cmNlQ2FjaGUpOwogCiAgICAgICAgICAgICAvLyBSZXN0YXJ0IHRoZSBjdXJyZW50IG5h
dmlnYXRpb24gZnJvbSB0aGUgdG9wIG9mIHRoZSBuYXZpZ2F0aW9uIGFsZ29yaXRobSwgdW5kb2lu
ZyBhbnkgY2hhbmdlcyB0aGF0IHdlcmUgbWFkZQogICAgICAgICAgICAgLy8gYXMgcGFydCBvZiB0
aGUgaW5pdGlhbCBsb2FkLgogICAgICAgICAgICAgLy8gVGhlIG5hdmlnYXRpb24gd2lsbCBub3Qg
cmVzdWx0IGluIHRoZSBzYW1lIHJlc291cmNlIGJlaW5nIGxvYWRlZCwgYmVjYXVzZSAiZm9yZWln
biIgZW50cmllcyBhcmUgbmV2ZXIgcGlja2VkIGR1cmluZyBuYXZpZ2F0aW9uLgotICAgICAgICAg
ICAgZnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKGZy
YW1lLT5kb2N1bWVudCgpLCBmcmFtZS0+ZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSwgZG9j
dW1lbnRMb2FkZXItPnVybCgpLCBmcmFtZS0+bG9hZGVyKCkucmVmZXJyZXIoKSk7CisgICAgICAg
ICAgICBmcmFtZS5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZSgq
ZnJhbWUuZG9jdW1lbnQoKSwgZnJhbWUuZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSwgZG9j
dW1lbnRMb2FkZXIudXJsKCksIGZyYW1lLmxvYWRlcigpLnJlZmVycmVyKCkpOwogICAgICAgICB9
Ci0gICAgICAgIAogICAgICAgICByZXR1cm47CiAgICAgfQotICAgIAorCiAgICAgLy8gVGhlIHJl
c291cmNlIHdhcyBsb2FkZWQgZnJvbSB0aGUgbmV0d29yaywgY2hlY2sgaWYgaXQgaXMgYSBIVFRQ
L0hUVFBTIEdFVC4gICAgCi0gICAgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0ID0gZnJh
bWUtPmxvYWRlcigpLmFjdGl2ZURvY3VtZW50TG9hZGVyKCktPnJlcXVlc3QoKTsKKyAgICBhdXRv
JiByZXF1ZXN0ID0gZnJhbWUubG9hZGVyKCkuYWN0aXZlRG9jdW1lbnRMb2FkZXIoKS0+cmVxdWVz
dCgpOwogCiAgICAgaWYgKCFBcHBsaWNhdGlvbkNhY2hlOjpyZXF1ZXN0SXNIVFRQT3JIVFRQU0dl
dChyZXF1ZXN0KSkKICAgICAgICAgcmV0dXJuOwpAQCAtMTg5LDQ2ICsxODUsNDggQEAgdm9pZCBB
cHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVjdENhY2hlKEZyYW1lKiBmcmFtZSwgY29uc3QgVVJM
JiBwYXNzZWRNYW5pZmVzdFUKICAgICBpZiAoIXByb3RvY29sSG9zdEFuZFBvcnRBcmVFcXVhbCht
YW5pZmVzdFVSTCwgcmVxdWVzdC51cmwoKSkpCiAgICAgICAgIHJldHVybjsKIAotICAgIEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAgPSBmcmFtZS0+cGFnZSgpLT5hcHBsaWNhdGlvbkNhY2hl
U3RvcmFnZSgpLmZpbmRPckNyZWF0ZUNhY2hlR3JvdXAobWFuaWZlc3RVUkwpOworICAgIGF1dG8m
IGdyb3VwID0gKmZyYW1lLnBhZ2UoKS0+YXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKS5maW5kT3JD
cmVhdGVDYWNoZUdyb3VwKG1hbmlmZXN0VVJMKTsKIAotICAgIGRvY3VtZW50TG9hZGVyLT5hcHBs
aWNhdGlvbkNhY2hlSG9zdCgpLT5zZXRDYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoZ3Jv
dXApOwotICAgIGdyb3VwLT5tX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMuYWRkKGRvY3Vt
ZW50TG9hZGVyKTsKLSAgICBncm91cC0+bV9kb3dubG9hZGluZ1BlbmRpbmdNYXN0ZXJSZXNvdXJj
ZUxvYWRlcnNDb3VudCsrOworICAgIGRvY3VtZW50TG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCkuc2V0Q2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKCZncm91cCk7CisgICAgZ3JvdXAu
bV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLmFkZCgmZG9jdW1lbnRMb2FkZXIpOworICAg
IGdyb3VwLm1fZG93bmxvYWRpbmdQZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzQ291bnQrKzsK
IAotICAgIEFTU0VSVCghZ3JvdXAtPm1fY2FjaGVCZWluZ1VwZGF0ZWQgfHwgZ3JvdXAtPm1fdXBk
YXRlU3RhdHVzICE9IElkbGUpOwotICAgIGdyb3VwLT51cGRhdGUoZnJhbWUsIEFwcGxpY2F0aW9u
Q2FjaGVVcGRhdGVXaXRoQnJvd3NpbmdDb250ZXh0KTsKKyAgICBBU1NFUlQoIWdyb3VwLm1fY2Fj
aGVCZWluZ1VwZGF0ZWQgfHwgZ3JvdXAubV91cGRhdGVTdGF0dXMgIT0gSWRsZSk7CisgICAgZ3Jv
dXAudXBkYXRlKGZyYW1lLCBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlV2l0aEJyb3dzaW5nQ29udGV4
dCk7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZWxlY3RDYWNoZVdpdGhvdXRN
YW5pZmVzdFVSTChGcmFtZSogZnJhbWUpCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c2Vs
ZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3RVUkwoRnJhbWUmIGZyYW1lKQogewotICAgIGlmICghZnJh
bWUtPnNldHRpbmdzKCkub2ZmbGluZVdlYkFwcGxpY2F0aW9uQ2FjaGVFbmFibGVkKCkpCisgICAg
aWYgKCFmcmFtZS5zZXR0aW5ncygpLm9mZmxpbmVXZWJBcHBsaWNhdGlvbkNhY2hlRW5hYmxlZCgp
KQogICAgICAgICByZXR1cm47CiAKLSAgICBEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIg
PSBmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKLSAgICBBU1NFUlQoIWRvY3VtZW50
TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5hcHBsaWNhdGlvbkNhY2hlKCkpOworICAg
IEFTU0VSVChmcmFtZS5kb2N1bWVudCgpKTsKKyAgICBBU1NFUlQoZnJhbWUucGFnZSgpKTsKKyAg
ICBBU1NFUlQoZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSk7CisgICAgYXV0byYgZG9j
dW1lbnRMb2FkZXIgPSAqZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKKyAgICBBU1NF
UlQoIWRvY3VtZW50TG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuYXBwbGljYXRpb25DYWNo
ZSgpKTsKIAogICAgIC8vIERvbid0IGFjY2VzcyBhbnl0aGluZyBvbiBkaXNrIGlmIHByaXZhdGUg
YnJvd3NpbmcgaXMgZW5hYmxlZC4KLSAgICBpZiAoZnJhbWUtPnBhZ2UoKS0+dXNlc0VwaGVtZXJh
bFNlc3Npb24oKSB8fCAhZnJhbWUtPmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPmNhbkFj
Y2Vzc0FwcGxpY2F0aW9uQ2FjaGUoZnJhbWUtPnRyZWUoKS50b3AoKS5kb2N1bWVudCgpLT5zZWN1
cml0eU9yaWdpbigpKSkgewotICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2Fj
aGVIb3N0OjpDSEVDS0lOR19FVkVOVCwgZG9jdW1lbnRMb2FkZXIpOwotICAgICAgICBwb3N0TGlz
dGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFUlJPUl9FVkVOVCwgZG9jdW1lbnRMb2Fk
ZXIpOworICAgIGlmIChmcmFtZS5wYWdlKCktPnVzZXNFcGhlbWVyYWxTZXNzaW9uKCkgfHwgIWZy
YW1lLmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPmNhbkFjY2Vzc0FwcGxpY2F0aW9uQ2Fj
aGUoZnJhbWUudHJlZSgpLnRvcCgpLmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCkpKSB7Cisg
ICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmNoZWNraW5nRXZlbnQsIGRvY3Vt
ZW50TG9hZGVyKTsKKyAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkuZXJyb3JF
dmVudCwgZG9jdW1lbnRMb2FkZXIpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgQXBw
bGljYXRpb25DYWNoZSogbWFpblJlc291cmNlQ2FjaGUgPSBkb2N1bWVudExvYWRlci0+YXBwbGlj
YXRpb25DYWNoZUhvc3QoKS0+bWFpblJlc291cmNlQXBwbGljYXRpb25DYWNoZSgpOwotCi0gICAg
aWYgKG1haW5SZXNvdXJjZUNhY2hlKSB7Ci0gICAgICAgIG1haW5SZXNvdXJjZUNhY2hlLT5ncm91
cCgpLT5hc3NvY2lhdGVEb2N1bWVudExvYWRlcldpdGhDYWNoZShkb2N1bWVudExvYWRlciwgbWFp
blJlc291cmNlQ2FjaGUpOwotICAgICAgICBtYWluUmVzb3VyY2VDYWNoZS0+Z3JvdXAoKS0+dXBk
YXRlKGZyYW1lLCBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlV2l0aEJyb3dzaW5nQ29udGV4dCk7Cisg
ICAgaWYgKGF1dG8qIG1haW5SZXNvdXJjZUNhY2hlID0gZG9jdW1lbnRMb2FkZXIuYXBwbGljYXRp
b25DYWNoZUhvc3QoKS5tYWluUmVzb3VyY2VBcHBsaWNhdGlvbkNhY2hlKCkpIHsKKyAgICAgICAg
QVNTRVJUKG1haW5SZXNvdXJjZUNhY2hlLT5ncm91cCgpKTsKKyAgICAgICAgYXV0byYgZ3JvdXAg
PSAqbWFpblJlc291cmNlQ2FjaGUtPmdyb3VwKCk7CisgICAgICAgIGdyb3VwLmFzc29jaWF0ZURv
Y3VtZW50TG9hZGVyV2l0aENhY2hlKCZkb2N1bWVudExvYWRlciwgbWFpblJlc291cmNlQ2FjaGUp
OworICAgICAgICBncm91cC51cGRhdGUoZnJhbWUsIEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVXaXRo
QnJvd3NpbmdDb250ZXh0KTsKICAgICB9CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3Vw
OjpmaW5pc2hlZExvYWRpbmdNYWluUmVzb3VyY2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlcikKK3Zv
aWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpmaW5pc2hlZExvYWRpbmdNYWluUmVzb3VyY2UoRG9j
dW1lbnRMb2FkZXImIGxvYWRlcikKIHsKLSAgICBBU1NFUlQobV9wZW5kaW5nTWFzdGVyUmVzb3Vy
Y2VMb2FkZXJzLmNvbnRhaW5zKGxvYWRlcikpOworICAgIEFTU0VSVChtX3BlbmRpbmdNYXN0ZXJS
ZXNvdXJjZUxvYWRlcnMuY29udGFpbnMoJmxvYWRlcikpOwogICAgIEFTU0VSVChtX2NvbXBsZXRp
b25UeXBlID09IE5vbmUgfHwgbV9wZW5kaW5nRW50cmllcy5pc0VtcHR5KCkpOwotICAgIFVSTCB1
cmwgPSBsb2FkZXItPnVybCgpOwotICAgIGlmICh1cmwuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkp
Ci0gICAgICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKKyAgICBVUkwgdXJsID0g
bG9hZGVyLnVybCgpOworICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKIAogICAg
IHN3aXRjaCAobV9jb21wbGV0aW9uVHlwZSkgewogICAgIGNhc2UgTm9uZToKQEAgLTIzNiwzNCAr
MjM0LDMyIEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpmaW5pc2hlZExvYWRpbmdNYWlu
UmVzb3VyY2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlcikKICAgICAgICAgcmV0dXJuOwogICAgIGNh
c2UgTm9VcGRhdGU6CiAgICAgICAgIEFTU0VSVCghbV9jYWNoZUJlaW5nVXBkYXRlZCk7Ci0gICAg
ICAgIGFzc29jaWF0ZURvY3VtZW50TG9hZGVyV2l0aENhY2hlKGxvYWRlciwgbV9uZXdlc3RDYWNo
ZS5nZXQoKSk7Ci0KLSAgICAgICAgaWYgKEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSogcmVzb3Vy
Y2UgPSBtX25ld2VzdENhY2hlLT5yZXNvdXJjZUZvclVSTCh1cmwpKSB7CisgICAgICAgIGFzc29j
aWF0ZURvY3VtZW50TG9hZGVyV2l0aENhY2hlKCZsb2FkZXIsIG1fbmV3ZXN0Q2FjaGUuZ2V0KCkp
OworICAgICAgICBpZiAoYXV0byogcmVzb3VyY2UgPSBtX25ld2VzdENhY2hlLT5yZXNvdXJjZUZv
clVSTCh1cmwpKSB7CiAgICAgICAgICAgICBpZiAoIShyZXNvdXJjZS0+dHlwZSgpICYgQXBwbGlj
YXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIpKSB7CiAgICAgICAgICAgICAgICAgcmVzb3VyY2Ut
PmFkZFR5cGUoQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIpOwogICAgICAgICAgICAg
ICAgIEFTU0VSVCghcmVzb3VyY2UtPnN0b3JhZ2VJRCgpKTsKICAgICAgICAgICAgIH0KICAgICAg
ICAgfSBlbHNlCi0gICAgICAgICAgICBtX25ld2VzdENhY2hlLT5hZGRSZXNvdXJjZShBcHBsaWNh
dGlvbkNhY2hlUmVzb3VyY2U6OmNyZWF0ZSh1cmwsIGxvYWRlci0+cmVzcG9uc2UoKSwgQXBwbGlj
YXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIsIGxvYWRlci0+bWFpblJlc291cmNlRGF0YSgpKSk7
CisgICAgICAgICAgICBtX25ld2VzdENhY2hlLT5hZGRSZXNvdXJjZShBcHBsaWNhdGlvbkNhY2hl
UmVzb3VyY2U6OmNyZWF0ZSh1cmwsIGxvYWRlci5yZXNwb25zZSgpLCBBcHBsaWNhdGlvbkNhY2hl
UmVzb3VyY2U6Ok1hc3RlciwgbG9hZGVyLm1haW5SZXNvdXJjZURhdGEoKSkpOwogICAgICAgICBi
cmVhazsKICAgICBjYXNlIEZhaWx1cmU6CiAgICAgICAgIC8vIENhY2hlIHVwZGF0ZSBoYXMgYmVl
biBhIGZhaWx1cmUsIHNvIHRoZXJlIGlzIG5vIHJlYXNvbiB0byBrZWVwIHRoZSBkb2N1bWVudCBh
c3NvY2lhdGVkIHdpdGggdGhlIGluY29tcGxldGUgY2FjaGUKICAgICAgICAgLy8gKGl0cyBtYWlu
IHJlc291cmNlIHdhcyBub3QgY2FjaGVkIHlldCwgc28gaXQgaXMgbGlrZWx5IHRoYXQgdGhlIGFw
cGxpY2F0aW9uIGNoYW5nZWQgc2lnbmlmaWNhbnRseSBzZXJ2ZXItc2lkZSkuCiAgICAgICAgIEFT
U0VSVCghbV9jYWNoZUJlaW5nVXBkYXRlZCk7IC8vIEFscmVhZHkgY2xlYXJlZCBvdXQgYnkgc3Rv
cExvYWRpbmcoKS4KLSAgICAgICAgbG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5zZXRB
cHBsaWNhdGlvbkNhY2hlKG51bGxwdHIpOyAvLyBXaWxsIHVuc2V0IGNhbmRpZGF0ZSwgdG9vLgot
ICAgICAgICBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMucmVtb3ZlKGxvYWRlcik7Ci0gICAg
ICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkVSUk9SX0VWRU5ULCBs
b2FkZXIpOworICAgICAgICBsb2FkZXIuYXBwbGljYXRpb25DYWNoZUhvc3QoKS5zZXRBcHBsaWNh
dGlvbkNhY2hlKG51bGxwdHIpOyAvLyBXaWxsIHVuc2V0IGNhbmRpZGF0ZSwgdG9vLgorICAgICAg
ICBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMucmVtb3ZlKCZsb2FkZXIpOworICAgICAgICBw
b3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBsb2FkZXIpOwogICAgICAg
ICBicmVhazsKICAgICBjYXNlIENvbXBsZXRlZDoKLSAgICAgICAgQVNTRVJUKG1fYXNzb2NpYXRl
ZERvY3VtZW50TG9hZGVycy5jb250YWlucyhsb2FkZXIpKTsKLQotICAgICAgICBpZiAoQXBwbGlj
YXRpb25DYWNoZVJlc291cmNlKiByZXNvdXJjZSA9IG1fY2FjaGVCZWluZ1VwZGF0ZWQtPnJlc291
cmNlRm9yVVJMKHVybCkpIHsKKyAgICAgICAgQVNTRVJUKG1fYXNzb2NpYXRlZERvY3VtZW50TG9h
ZGVycy5jb250YWlucygmbG9hZGVyKSk7CisgICAgICAgIGlmIChhdXRvKiByZXNvdXJjZSA9IG1f
Y2FjaGVCZWluZ1VwZGF0ZWQtPnJlc291cmNlRm9yVVJMKHVybCkpIHsKICAgICAgICAgICAgIGlm
ICghKHJlc291cmNlLT50eXBlKCkgJiBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6Ok1hc3Rlcikp
IHsKICAgICAgICAgICAgICAgICByZXNvdXJjZS0+YWRkVHlwZShBcHBsaWNhdGlvbkNhY2hlUmVz
b3VyY2U6Ok1hc3Rlcik7CiAgICAgICAgICAgICAgICAgQVNTRVJUKCFyZXNvdXJjZS0+c3RvcmFn
ZUlEKCkpOwogICAgICAgICAgICAgfQogICAgICAgICB9IGVsc2UKLSAgICAgICAgICAgIG1fY2Fj
aGVCZWluZ1VwZGF0ZWQtPmFkZFJlc291cmNlKEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6Y3Jl
YXRlKHVybCwgbG9hZGVyLT5yZXNwb25zZSgpLCBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6Ok1h
c3RlciwgbG9hZGVyLT5tYWluUmVzb3VyY2VEYXRhKCkpKTsKKyAgICAgICAgICAgIG1fY2FjaGVC
ZWluZ1VwZGF0ZWQtPmFkZFJlc291cmNlKEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6Y3JlYXRl
KHVybCwgbG9hZGVyLnJlc3BvbnNlKCksIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6TWFzdGVy
LCBsb2FkZXIubWFpblJlc291cmNlRGF0YSgpKSk7CiAgICAgICAgIC8vIFRoZSAiY2FjaGVkIiBl
dmVudCB3aWxsIGJlIHBvc3RlZCB0byBhbGwgYXNzb2NpYXRlZCBkb2N1bWVudHMgb25jZSB1cGRh
dGUgaXMgY29tcGxldGUuCiAgICAgICAgIGJyZWFrOwogICAgIH0KQEAgLTI3Myw5ICsyNjksOSBA
QCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNl
KERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCiAgICAgY2hlY2tJZkxvYWRJc0NvbXBsZXRlKCk7CiB9
CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpmYWlsZWRMb2FkaW5nTWFpblJlc291cmNl
KERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZmFp
bGVkTG9hZGluZ01haW5SZXNvdXJjZShEb2N1bWVudExvYWRlciYgbG9hZGVyKQogewotICAgIEFT
U0VSVChtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMuY29udGFpbnMobG9hZGVyKSk7Cisg
ICAgQVNTRVJUKG1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5jb250YWlucygmbG9hZGVy
KSk7CiAgICAgQVNTRVJUKG1fY29tcGxldGlvblR5cGUgPT0gTm9uZSB8fCBtX3BlbmRpbmdFbnRy
aWVzLmlzRW1wdHkoKSk7CiAKICAgICBzd2l0Y2ggKG1fY29tcGxldGlvblR5cGUpIHsKQEAgLTI4
NCwzMiArMjgwLDI3IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpmYWlsZWRMb2FkaW5n
TWFpblJlc291cmNlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCiAgICAgICAgIHJldHVybjsKICAg
ICBjYXNlIE5vVXBkYXRlOgogICAgICAgICBBU1NFUlQoIW1fY2FjaGVCZWluZ1VwZGF0ZWQpOwot
CiAgICAgICAgIC8vIFRoZSBtYW5pZmVzdCBkaWRuJ3QgY2hhbmdlLCBhbmQgd2UgaGF2ZSBhIHJl
bGV2YW50IGNhY2hlIC0gYnV0IHRoZSBtYWluIHJlc291cmNlIGRvd25sb2FkIGZhaWxlZCBtaWQt
d2F5LCBzbyBpdCBjYW5ub3QgYmUgc3RvcmVkIHRvIHRoZSBjYWNoZSwKICAgICAgICAgLy8gYW5k
IHRoZSBsb2FkZXIgZG9lcyBub3QgZ2V0IGFzc29jaWF0ZWQgdG8gaXQuIElmIHRoZXJlIGFyZSBv
dGhlciBtYWluIHJlc291cmNlcyBiZWluZyBkb3dubG9hZGVkIGZvciB0aGlzIGNhY2hlIGdyb3Vw
LCB0aGV5IG1heSBzdGlsbCBzdWNjZWVkLgotICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0OjpFUlJPUl9FVkVOVCwgbG9hZGVyKTsKLQorICAgICAgICBwb3N0TGlz
dGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBsb2FkZXIpOwogICAgICAgICBicmVh
azsKICAgICBjYXNlIEZhaWx1cmU6CiAgICAgICAgIC8vIENhY2hlIHVwZGF0ZSBmYWlsZWQsIHRv
by4KICAgICAgICAgQVNTRVJUKCFtX2NhY2hlQmVpbmdVcGRhdGVkKTsgLy8gQWxyZWFkeSBjbGVh
cmVkIG91dCBieSBzdG9wTG9hZGluZygpLgotICAgICAgICBBU1NFUlQoIWxvYWRlci0+YXBwbGlj
YXRpb25DYWNoZUhvc3QoKS0+YXBwbGljYXRpb25DYWNoZSgpIHx8IGxvYWRlci0+YXBwbGljYXRp
b25DYWNoZUhvc3QoKS0+YXBwbGljYXRpb25DYWNoZSgpLT5ncm91cCgpID09IHRoaXMpOwotCi0g
ICAgICAgIGxvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+c2V0QXBwbGljYXRpb25DYWNo
ZShudWxscHRyKTsgLy8gV2lsbCB1bnNldCBjYW5kaWRhdGUsIHRvby4KLSAgICAgICAgbV9hc3Nv
Y2lhdGVkRG9jdW1lbnRMb2FkZXJzLnJlbW92ZShsb2FkZXIpOwotICAgICAgICBwb3N0TGlzdGVu
ZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFUlJPUl9FVkVOVCwgbG9hZGVyKTsKKyAgICAg
ICAgQVNTRVJUKCFsb2FkZXIuYXBwbGljYXRpb25DYWNoZUhvc3QoKS5hcHBsaWNhdGlvbkNhY2hl
KCkgfHwgbG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuYXBwbGljYXRpb25DYWNoZSgpLT5n
cm91cCgpID09IHRoaXMpOworICAgICAgICBsb2FkZXIuYXBwbGljYXRpb25DYWNoZUhvc3QoKS5z
ZXRBcHBsaWNhdGlvbkNhY2hlKG51bGxwdHIpOyAvLyBXaWxsIHVuc2V0IGNhbmRpZGF0ZSwgdG9v
LgorICAgICAgICBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMucmVtb3ZlKCZsb2FkZXIpOwor
ICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBsb2FkZXIp
OwogICAgICAgICBicmVhazsKICAgICBjYXNlIENvbXBsZXRlZDoKICAgICAgICAgLy8gVGhlIGNh
Y2hlIG1hbmlmZXN0IGRpZG4ndCBsaXN0IHRoaXMgbWFpbiByZXNvdXJjZSwgYW5kIGFsbCBjYWNo
ZSBlbnRyaWVzIHdlcmUgYWxyZWFkeSB1cGRhdGVkIHN1Y2Nlc3NmdWxseSAtIGJ1dCB0aGUgbWFp
biByZXNvdXJjZSBmYWlsZWQgdG8gbG9hZCwKICAgICAgICAgLy8gc28gaXQgY2Fubm90IGJlIHN0
b3JlZCB0byB0aGUgY2FjaGUuIElmIHRoZXJlIGFyZSBvdGhlciBtYWluIHJlc291cmNlcyBiZWlu
ZyBkb3dubG9hZGVkIGZvciB0aGlzIGNhY2hlIGdyb3VwLCB0aGV5IG1heSBzdGlsbCBzdWNjZWVk
LgotICAgICAgICBBU1NFUlQobV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzLmNvbnRhaW5zKGxv
YWRlcikpOwotICAgICAgICBBU1NFUlQobG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5h
cHBsaWNhdGlvbkNhY2hlKCkgPT0gbV9jYWNoZUJlaW5nVXBkYXRlZCk7Ci0gICAgICAgIEFTU0VS
VCghbG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5jYW5kaWRhdGVBcHBsaWNhdGlvbkNh
Y2hlR3JvdXAoKSk7Ci0gICAgICAgIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycy5yZW1vdmUo
bG9hZGVyKTsKLSAgICAgICAgbG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5zZXRBcHBs
aWNhdGlvbkNhY2hlKG51bGxwdHIpOwotCi0gICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGlj
YXRpb25DYWNoZUhvc3Q6OkVSUk9SX0VWRU5ULCBsb2FkZXIpOwotCisgICAgICAgIEFTU0VSVCht
X2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMuY29udGFpbnMoJmxvYWRlcikpOworICAgICAgICBB
U1NFUlQobG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuYXBwbGljYXRpb25DYWNoZSgpID09
IG1fY2FjaGVCZWluZ1VwZGF0ZWQpOworICAgICAgICBBU1NFUlQoIWxvYWRlci5hcHBsaWNhdGlv
bkNhY2hlSG9zdCgpLmNhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCgpKTsKKyAgICAgICAg
bV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzLnJlbW92ZSgmbG9hZGVyKTsKKyAgICAgICAgbG9h
ZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2V0QXBwbGljYXRpb25DYWNoZShudWxscHRyKTsK
KyAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkuZXJyb3JFdmVudCwgbG9hZGVy
KTsKICAgICAgICAgYnJlYWs7CiAgICAgfQogCkBAIC0zNDYsMTIgKzMzNywxMiBAQCB2b2lkIEFw
cGxpY2F0aW9uQ2FjaGVHcm91cDo6c3RvcExvYWRpbmcoKQogICAgIG1fcGVuZGluZ0VudHJpZXMu
Y2xlYXIoKTsKIH0gICAgCiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpkaXNhc3NvY2lh
dGVEb2N1bWVudExvYWRlcihEb2N1bWVudExvYWRlciogbG9hZGVyKQordm9pZCBBcHBsaWNhdGlv
bkNhY2hlR3JvdXA6OmRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKERvY3VtZW50TG9hZGVyJiBs
b2FkZXIpCiB7Ci0gICAgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzLnJlbW92ZShsb2FkZXIp
OwotICAgIG1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5yZW1vdmUobG9hZGVyKTsKKyAg
ICBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMucmVtb3ZlKCZsb2FkZXIpOworICAgIG1fcGVu
ZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5yZW1vdmUoJmxvYWRlcik7CiAKLSAgICBpZiAoYXV0
byogaG9zdCA9IGxvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKSkKKyAgICBpZiAoYXV0byog
aG9zdCA9IGxvYWRlci5hcHBsaWNhdGlvbkNhY2hlSG9zdFVubGVzc0JlaW5nRGVzdHJveWVkKCkp
CiAgICAgICAgIGhvc3QtPnNldEFwcGxpY2F0aW9uQ2FjaGUobnVsbHB0cik7IC8vIFdpbGwgc2V0
IGNhbmRpZGF0ZSBncm91cCB0byBudWxsLCB0b28uCiAKICAgICBpZiAoIW1fYXNzb2NpYXRlZERv
Y3VtZW50TG9hZGVycy5pc0VtcHR5KCkgfHwgIW1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVy
cy5pc0VtcHR5KCkpCkBAIC0zNzIsMjYgKzM2MywyNiBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVH
cm91cDo6ZGlzYXNzb2NpYXRlRG9jdW1lbnRMb2FkZXIoRG9jdW1lbnRMb2FkZXIqIGxvYWRlcikK
ICAgICBtX25ld2VzdENhY2hlID0gbnVsbHB0cjsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hl
R3JvdXA6OmNhY2hlRGVzdHJveWVkKEFwcGxpY2F0aW9uQ2FjaGUqIGNhY2hlKQordm9pZCBBcHBs
aWNhdGlvbkNhY2hlR3JvdXA6OmNhY2hlRGVzdHJveWVkKEFwcGxpY2F0aW9uQ2FjaGUmIGNhY2hl
KQogewotICAgIGlmIChtX2NhY2hlcy5yZW1vdmUoY2FjaGUpICYmIG1fY2FjaGVzLmlzRW1wdHko
KSkgeworICAgIGlmIChtX2NhY2hlcy5yZW1vdmUoJmNhY2hlKSAmJiBtX2NhY2hlcy5pc0VtcHR5
KCkpIHsKICAgICAgICAgQVNTRVJUKG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycy5pc0VtcHR5
KCkpOwogICAgICAgICBBU1NFUlQobV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLmlzRW1w
dHkoKSk7CiAgICAgICAgIGRlbGV0ZSB0aGlzOwogICAgIH0KIH0KIAotdm9pZCBBcHBsaWNhdGlv
bkNhY2hlR3JvdXA6OnN0b3BMb2FkaW5nSW5GcmFtZShGcmFtZSogZnJhbWUpCit2b2lkIEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cDo6c3RvcExvYWRpbmdJbkZyYW1lKEZyYW1lJiBmcmFtZSkKIHsKLSAg
ICBpZiAoZnJhbWUgIT0gbV9mcmFtZSkKKyAgICBpZiAoJmZyYW1lICE9IG1fZnJhbWUpCiAgICAg
ICAgIHJldHVybjsKIAogICAgIGNhY2hlVXBkYXRlRmFpbGVkKCk7CiB9CiAKLXZvaWQgQXBwbGlj
YXRpb25DYWNoZUdyb3VwOjpzZXROZXdlc3RDYWNoZShQYXNzUmVmUHRyPEFwcGxpY2F0aW9uQ2Fj
aGU+IG5ld2VzdENhY2hlKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNldE5ld2VzdENh
Y2hlKFJlZjxBcHBsaWNhdGlvbkNhY2hlPiYmIG5ld2VzdENhY2hlKQogewotICAgIG1fbmV3ZXN0
Q2FjaGUgPSBuZXdlc3RDYWNoZTsKKyAgICBtX25ld2VzdENhY2hlID0gV1RGTW92ZShuZXdlc3RD
YWNoZSk7CiAKICAgICBtX2NhY2hlcy5hZGQobV9uZXdlc3RDYWNoZS5nZXQoKSk7CiAgICAgbV9u
ZXdlc3RDYWNoZS0+c2V0R3JvdXAodGhpcyk7CkBAIC00MDMsNDAgKzM5NCw0MyBAQCB2b2lkIEFw
cGxpY2F0aW9uQ2FjaGVHcm91cDo6bWFrZU9ic29sZXRlKCkKICAgICAgICAgcmV0dXJuOwogCiAg
ICAgbV9pc09ic29sZXRlID0gdHJ1ZTsKLSAgICBtX3N0b3JhZ2UtPmNhY2hlR3JvdXBNYWRlT2Jz
b2xldGUodGhpcyk7CisgICAgbV9zdG9yYWdlLT5jYWNoZUdyb3VwTWFkZU9ic29sZXRlKCp0aGlz
KTsKICAgICBBU1NFUlQoIW1fc3RvcmFnZUlEKTsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hl
R3JvdXA6OnVwZGF0ZShGcmFtZSogZnJhbWUsIEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVPcHRpb24g
dXBkYXRlT3B0aW9uKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnVwZGF0ZShGcmFtZSYg
ZnJhbWUsIEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVPcHRpb24gdXBkYXRlT3B0aW9uKQogeworICAg
IEFTU0VSVChmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKTsKKyAgICBhdXRvJiBkb2N1
bWVudExvYWRlciA9ICpmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOworCiAgICAgaWYg
KG1fdXBkYXRlU3RhdHVzID09IENoZWNraW5nIHx8IG1fdXBkYXRlU3RhdHVzID09IERvd25sb2Fk
aW5nKSB7CiAgICAgICAgIGlmICh1cGRhdGVPcHRpb24gPT0gQXBwbGljYXRpb25DYWNoZVVwZGF0
ZVdpdGhCcm93c2luZ0NvbnRleHQpIHsKLSAgICAgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBw
bGljYXRpb25DYWNoZUhvc3Q6OkNIRUNLSU5HX0VWRU5ULCBmcmFtZS0+bG9hZGVyKCkuZG9jdW1l
bnRMb2FkZXIoKSk7CisgICAgICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5j
aGVja2luZ0V2ZW50LCBkb2N1bWVudExvYWRlcik7CiAgICAgICAgICAgICBpZiAobV91cGRhdGVT
dGF0dXMgPT0gRG93bmxvYWRpbmcpCi0gICAgICAgICAgICAgICAgcG9zdExpc3RlbmVyVGFzayhB
cHBsaWNhdGlvbkNhY2hlSG9zdDo6RE9XTkxPQURJTkdfRVZFTlQsIGZyYW1lLT5sb2FkZXIoKS5k
b2N1bWVudExvYWRlcigpKTsKKyAgICAgICAgICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50
TmFtZXMoKS5kb3dubG9hZGluZ0V2ZW50LCBkb2N1bWVudExvYWRlcik7CiAgICAgICAgIH0KICAg
ICAgICAgcmV0dXJuOwogICAgIH0KIAogICAgIC8vIERvbid0IGFjY2VzcyBhbnl0aGluZyBvbiBk
aXNrIGlmIHByaXZhdGUgYnJvd3NpbmcgaXMgZW5hYmxlZC4KLSAgICBpZiAoZnJhbWUtPnBhZ2Uo
KS0+dXNlc0VwaGVtZXJhbFNlc3Npb24oKSB8fCAhZnJhbWUtPmRvY3VtZW50KCktPnNlY3VyaXR5
T3JpZ2luKCktPmNhbkFjY2Vzc0FwcGxpY2F0aW9uQ2FjaGUoZnJhbWUtPnRyZWUoKS50b3AoKS5k
b2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpKSkgeworICAgIGlmIChmcmFtZS5wYWdlKCktPnVz
ZXNFcGhlbWVyYWxTZXNzaW9uKCkgfHwgIWZyYW1lLmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2lu
KCktPmNhbkFjY2Vzc0FwcGxpY2F0aW9uQ2FjaGUoZnJhbWUudHJlZSgpLnRvcCgpLmRvY3VtZW50
KCktPnNlY3VyaXR5T3JpZ2luKCkpKSB7CiAgICAgICAgIEFTU0VSVChtX3BlbmRpbmdNYXN0ZXJS
ZXNvdXJjZUxvYWRlcnMuaXNFbXB0eSgpKTsKICAgICAgICAgQVNTRVJUKG1fcGVuZGluZ0VudHJp
ZXMuaXNFbXB0eSgpKTsKICAgICAgICAgQVNTRVJUKCFtX2NhY2hlQmVpbmdVcGRhdGVkKTsKLSAg
ICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q0hFQ0tJTkdfRVZF
TlQsIGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKTsKLSAgICAgICAgcG9zdExpc3Rl
bmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RVJST1JfRVZFTlQsIGZyYW1lLT5sb2FkZXIo
KS5kb2N1bWVudExvYWRlcigpKTsKKyAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVz
KCkuY2hlY2tpbmdFdmVudCwgZG9jdW1lbnRMb2FkZXIpOworICAgICAgICBwb3N0TGlzdGVuZXJU
YXNrKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBkb2N1bWVudExvYWRlcik7CiAgICAgICAgIHJl
dHVybjsKICAgICB9CiAKICAgICBBU1NFUlQoIW1fZnJhbWUpOwotICAgIG1fZnJhbWUgPSBmcmFt
ZTsKKyAgICBtX2ZyYW1lID0gJmZyYW1lOwogCiAgICAgc2V0VXBkYXRlU3RhdHVzKENoZWNraW5n
KTsKIAotICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNIRUNLSU5H
X0VWRU5ULCBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOworICAgIHBvc3RMaXN0ZW5lclRh
c2soZXZlbnROYW1lcygpLmNoZWNraW5nRXZlbnQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVy
cyk7CiAgICAgaWYgKCFtX25ld2VzdENhY2hlKSB7CiAgICAgICAgIEFTU0VSVCh1cGRhdGVPcHRp
b24gPT0gQXBwbGljYXRpb25DYWNoZVVwZGF0ZVdpdGhCcm93c2luZ0NvbnRleHQpOwotICAgICAg
ICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDSEVDS0lOR19FVkVOVCwg
ZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkpOworICAgICAgICBwb3N0TGlzdGVuZXJU
YXNrKGV2ZW50TmFtZXMoKS5jaGVja2luZ0V2ZW50LCBkb2N1bWVudExvYWRlcik7CiAgICAgfQog
ICAgIAogICAgIEFTU0VSVCghbV9tYW5pZmVzdEhhbmRsZSk7CkBAIC00NDksNyArNDQzLDcgQEAg
dm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnVwZGF0ZShGcmFtZSogZnJhbWUsIEFwcGxpY2F0
aW9uQ2FjaGVVcGRhdGVPcHRpb24gdXAKICAgICBtX21hbmlmZXN0SGFuZGxlID0gY3JlYXRlUmVz
b3VyY2VIYW5kbGUobV9tYW5pZmVzdFVSTCwgbV9uZXdlc3RDYWNoZSA/IG1fbmV3ZXN0Q2FjaGUt
Pm1hbmlmZXN0UmVzb3VyY2UoKSA6IDApOwogfQogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91
cDo6YWJvcnQoRnJhbWUqIGZyYW1lKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFib3J0
KEZyYW1lJiBmcmFtZSkKIHsKICAgICBpZiAobV91cGRhdGVTdGF0dXMgPT0gSWRsZSkKICAgICAg
ICAgcmV0dXJuOwpAQCAtNDU4LDcgKzQ1Miw3IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3Vw
OjphYm9ydChGcmFtZSogZnJhbWUpCiAgICAgaWYgKG1fY29tcGxldGlvblR5cGUgIT0gTm9uZSkK
ICAgICAgICAgcmV0dXJuOwogCi0gICAgZnJhbWUtPmRvY3VtZW50KCktPmFkZENvbnNvbGVNZXNz
YWdlKE1lc3NhZ2VTb3VyY2U6OkFwcENhY2hlLCBNZXNzYWdlTGV2ZWw6OkRlYnVnLCBBU0NJSUxp
dGVyYWwoIkFwcGxpY2F0aW9uIENhY2hlIGRvd25sb2FkIHByb2Nlc3Mgd2FzIGFib3J0ZWQuIikp
OworICAgIGZyYW1lLmRvY3VtZW50KCktPmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6
OkFwcENhY2hlLCBNZXNzYWdlTGV2ZWw6OkRlYnVnLCBBU0NJSUxpdGVyYWwoIkFwcGxpY2F0aW9u
IENhY2hlIGRvd25sb2FkIHByb2Nlc3Mgd2FzIGFib3J0ZWQuIikpOwogICAgIGNhY2hlVXBkYXRl
RmFpbGVkKCk7CiB9CiAKQEAgLTUwMiw4ICs0OTYsNyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVH
cm91cDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlSGFuZGxlKiBoYW5kbGUsIFJlc291cmNl
UgogICAgIEFTU0VSVChoYW5kbGUgPT0gbV9jdXJyZW50SGFuZGxlKTsKIAogICAgIFVSTCB1cmwo
aGFuZGxlLT5maXJzdFJlcXVlc3QoKS51cmwoKSk7Ci0gICAgaWYgKHVybC5oYXNGcmFnbWVudElk
ZW50aWZpZXIoKSkKLSAgICAgICAgdXJsLnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpOworICAg
IHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKICAgICAKICAgICBBU1NFUlQoIW1fY3Vy
cmVudFJlc291cmNlKTsKICAgICBBU1NFUlQobV9wZW5kaW5nRW50cmllcy5jb250YWlucyh1cmwp
KTsKQEAgLTU5Myw3ICs1ODYsNyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZGlkRmlu
aXNoTG9hZGluZyhSZXNvdXJjZUhhbmRsZSogaGFuZGxlLCBkb3VibGUgZmluaQogICAgIAogICAg
IEFTU0VSVChtX2NhY2hlQmVpbmdVcGRhdGVkKTsKIAotICAgIG1fY2FjaGVCZWluZ1VwZGF0ZWQt
PmFkZFJlc291cmNlKFdURk1vdmUobV9jdXJyZW50UmVzb3VyY2UpKTsKKyAgICBtX2NhY2hlQmVp
bmdVcGRhdGVkLT5hZGRSZXNvdXJjZShtX2N1cnJlbnRSZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgp
KTsKICAgICBtX2N1cnJlbnRIYW5kbGUgPSBudWxscHRyOwogCiAgICAgLy8gV2hpbGUgZG93bmxv
YWRpbmcgY2hlY2sgdG8gc2VlIGlmIHdlIGhhdmUgZXhjZWVkZWQgdGhlIGF2YWlsYWJsZSBxdW90
YS4KQEAgLTYyNiw4ICs2MTksNyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZGlkRmFp
bChSZXNvdXJjZUhhbmRsZSogaGFuZGxlLCBjb25zdCBSZXNvdXJjZUVycm9yJgogCiAgICAgdW5z
aWduZWQgdHlwZSA9IG1fY3VycmVudFJlc291cmNlID8gbV9jdXJyZW50UmVzb3VyY2UtPnR5cGUo
KSA6IG1fcGVuZGluZ0VudHJpZXMuZ2V0KGhhbmRsZS0+Zmlyc3RSZXF1ZXN0KCkudXJsKCkpOwog
ICAgIFVSTCB1cmwoaGFuZGxlLT5maXJzdFJlcXVlc3QoKS51cmwoKSk7Ci0gICAgaWYgKHVybC5o
YXNGcmFnbWVudElkZW50aWZpZXIoKSkKLSAgICAgICAgdXJsLnJlbW92ZUZyYWdtZW50SWRlbnRp
ZmllcigpOworICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKIAogICAgIEFTU0VS
VCghbV9jdXJyZW50UmVzb3VyY2UgfHwgIW1fcGVuZGluZ0VudHJpZXMuY29udGFpbnModXJsKSk7
CiAgICAgbV9jdXJyZW50UmVzb3VyY2UgPSBudWxscHRyOwpAQCAtNzM0LDcgKzcyNiw3IEBAIHZv
aWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpkaWRGaW5pc2hMb2FkaW5nTWFuaWZlc3QoKQogICAg
IC8vIFdlIGhhdmUgdGhlIG1hbmlmZXN0LCBub3cgZG93bmxvYWQgdGhlIHJlc291cmNlcy4KICAg
ICBzZXRVcGRhdGVTdGF0dXMoRG93bmxvYWRpbmcpOwogICAgIAotICAgIHBvc3RMaXN0ZW5lclRh
c2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkRPV05MT0FESU5HX0VWRU5ULCBtX2Fzc29jaWF0ZWRE
b2N1bWVudExvYWRlcnMpOworICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmRvd25s
b2FkaW5nRXZlbnQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CiAKICAgICBBU1NFUlQo
bV9wZW5kaW5nRW50cmllcy5pc0VtcHR5KCkpOwogCkBAIC04MDIsOCArNzk0LDggQEAgdm9pZCBB
cHBsaWNhdGlvbkNhY2hlR3JvdXA6Om1hbmlmZXN0Tm90Rm91bmQoKQogewogICAgIG1ha2VPYnNv
bGV0ZSgpOwogCi0gICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6T0JT
T0xFVEVfRVZFTlQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7Ci0gICAgcG9zdExpc3Rl
bmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RVJST1JfRVZFTlQsIG1fcGVuZGluZ01hc3Rl
clJlc291cmNlTG9hZGVycyk7CisgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkub2Jz
b2xldGVFdmVudCwgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsKKyAgICBwb3N0TGlzdGVu
ZXJUYXNrKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxv
YWRlcnMpOwogCiAgICAgc3RvcExvYWRpbmcoKTsKIApAQCAtODEzLDE2ICs4MDUsMTYgQEAgdm9p
ZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6Om1hbmlmZXN0Tm90Rm91bmQoKQogICAgIHdoaWxlICgh
bV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLmlzRW1wdHkoKSkgewogICAgICAgICBIYXNo
U2V0PERvY3VtZW50TG9hZGVyKj46Oml0ZXJhdG9yIGl0ID0gbV9wZW5kaW5nTWFzdGVyUmVzb3Vy
Y2VMb2FkZXJzLmJlZ2luKCk7CiAgICAgICAgIAotICAgICAgICBBU1NFUlQoKCppdCktPmFwcGxp
Y2F0aW9uQ2FjaGVIb3N0KCktPmNhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCgpID09IHRo
aXMpOwotICAgICAgICBBU1NFUlQoISgqaXQpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5hcHBs
aWNhdGlvbkNhY2hlKCkpOwotICAgICAgICAoKml0KS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+
c2V0Q2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKG51bGxwdHIpOworICAgICAgICBBU1NF
UlQoKCppdCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuY2FuZGlkYXRlQXBwbGljYXRpb25DYWNo
ZUdyb3VwKCkgPT0gdGhpcyk7CisgICAgICAgIEFTU0VSVCghKCppdCktPmFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KCkuYXBwbGljYXRpb25DYWNoZSgpKTsKKyAgICAgICAgKCppdCktPmFwcGxpY2F0aW9u
Q2FjaGVIb3N0KCkuc2V0Q2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKG51bGxwdHIpOwog
ICAgICAgICBtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMucmVtb3ZlKGl0KTsKICAgICB9
CiAKICAgICBtX2Rvd25sb2FkaW5nUGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVyc0NvdW50ID0g
MDsKICAgICBzZXRVcGRhdGVTdGF0dXMoSWRsZSk7ICAgIAogICAgIG1fZnJhbWUgPSBudWxscHRy
OwotICAgIAorCiAgICAgaWYgKG1fY2FjaGVzLmlzRW1wdHkoKSkgewogICAgICAgICBBU1NFUlQo
bV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzLmlzRW1wdHkoKSk7CiAgICAgICAgIEFTU0VSVCgh
bV9jYWNoZUJlaW5nVXBkYXRlZCk7CkBAIC04NDksMTMgKzg0MSwxMyBAQCB2b2lkIEFwcGxpY2F0
aW9uQ2FjaGVHcm91cDo6Y2hlY2tJZkxvYWRJc0NvbXBsZXRlKCkKIAogICAgICAgICAvLyBUaGUg
c3RvcmFnZSBjb3VsZCBoYXZlIGJlZW4gbWFudWFsbHkgZW1wdGllZCBieSB0aGUgdXNlci4KICAg
ICAgICAgaWYgKCFtX3N0b3JhZ2VJRCkKLSAgICAgICAgICAgIG1fc3RvcmFnZS0+c3RvcmVOZXdl
c3RDYWNoZSh0aGlzKTsKKyAgICAgICAgICAgIG1fc3RvcmFnZS0+c3RvcmVOZXdlc3RDYWNoZSgq
dGhpcyk7CiAKLSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6
Tk9VUERBVEVfRVZFTlQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CisgICAgICAgIHBv
c3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLm5vdXBkYXRlRXZlbnQsIG1fYXNzb2NpYXRlZERv
Y3VtZW50TG9hZGVycyk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgRmFpbHVyZToKICAgICAg
ICAgQVNTRVJUKCFtX2NhY2hlQmVpbmdVcGRhdGVkKTsKLSAgICAgICAgcG9zdExpc3RlbmVyVGFz
ayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RVJST1JfRVZFTlQsIG1fYXNzb2NpYXRlZERvY3VtZW50
TG9hZGVycyk7CisgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmVycm9yRXZl
bnQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CiAgICAgICAgIGlmIChtX2NhY2hlcy5p
c0VtcHR5KCkpIHsKICAgICAgICAgICAgIEFTU0VSVChtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRl
cnMuaXNFbXB0eSgpKTsKICAgICAgICAgICAgIGRlbGV0ZSB0aGlzOwpAQCAtODY3LDcgKzg1OSw3
IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpjaGVja0lmTG9hZElzQ29tcGxldGUoKQog
CiAgICAgICAgIEFTU0VSVChtX2NhY2hlQmVpbmdVcGRhdGVkKTsKICAgICAgICAgaWYgKG1fbWFu
aWZlc3RSZXNvdXJjZSkKLSAgICAgICAgICAgIG1fY2FjaGVCZWluZ1VwZGF0ZWQtPnNldE1hbmlm
ZXN0UmVzb3VyY2UoV1RGTW92ZShtX21hbmlmZXN0UmVzb3VyY2UpKTsKKyAgICAgICAgICAgIG1f
Y2FjaGVCZWluZ1VwZGF0ZWQtPnNldE1hbmlmZXN0UmVzb3VyY2UobV9tYW5pZmVzdFJlc291cmNl
LnJlbGVhc2VOb25OdWxsKCkpOwogICAgICAgICBlbHNlIHsKICAgICAgICAgICAgIC8vIFdlIGNh
biBnZXQgaGVyZSBhcyBhIHJlc3VsdCBvZiByZXRyeWluZyB0aGUgQ29tcGxldGUgc3RlcCwgZm9s
bG93aW5nCiAgICAgICAgICAgICAvLyBhIGZhaWx1cmUgb2YgdGhlIGNhY2hlIHN0b3JhZ2UgdG8g
c2F2ZSB0aGUgbmV3ZXN0IGNhY2hlIGR1ZSB0byBoaXR0aW5nCkBAIC04ODcsMTggKzg3OSwxOCBA
QCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6Y2hlY2tJZkxvYWRJc0NvbXBsZXRlKCkKICAg
ICAgICAgICAgIGRpZFJlYWNoT3JpZ2luUXVvdGEodG90YWxTcGFjZU5lZWRlZCk7CiAKICAgICAg
ICAgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OkZhaWx1cmVSZWFzb24gZmFpbHVyZVJlYXNvbjsK
LSAgICAgICAgc2V0TmV3ZXN0Q2FjaGUoV1RGTW92ZShtX2NhY2hlQmVpbmdVcGRhdGVkKSk7Ci0g
ICAgICAgIGlmIChtX3N0b3JhZ2UtPnN0b3JlTmV3ZXN0Q2FjaGUodGhpcywgb2xkTmV3ZXN0Q2Fj
aGUuZ2V0KCksIGZhaWx1cmVSZWFzb24pKSB7CisgICAgICAgIHNldE5ld2VzdENhY2hlKG1fY2Fj
aGVCZWluZ1VwZGF0ZWQucmVsZWFzZU5vbk51bGwoKSk7CisgICAgICAgIGlmIChtX3N0b3JhZ2Ut
PnN0b3JlTmV3ZXN0Q2FjaGUoKnRoaXMsIG9sZE5ld2VzdENhY2hlLmdldCgpLCBmYWlsdXJlUmVh
c29uKSkgewogICAgICAgICAgICAgLy8gTmV3IGNhY2hlIHN0b3JlZCwgbm93IHJlbW92ZSB0aGUg
b2xkIGNhY2hlLgogICAgICAgICAgICAgaWYgKG9sZE5ld2VzdENhY2hlKQogICAgICAgICAgICAg
ICAgIG1fc3RvcmFnZS0+cmVtb3ZlKG9sZE5ld2VzdENhY2hlLmdldCgpKTsKIAogICAgICAgICAg
ICAgLy8gRmlyZSB0aGUgZmluYWwgcHJvZ3Jlc3MgZXZlbnQuCiAgICAgICAgICAgICBBU1NFUlQo
bV9wcm9ncmVzc0RvbmUgPT0gbV9wcm9ncmVzc1RvdGFsKTsKLSAgICAgICAgICAgIHBvc3RMaXN0
ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OlBST0dSRVNTX0VWRU5ULCBtX3Byb2dyZXNz
VG90YWwsIG1fcHJvZ3Jlc3NEb25lLCBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOworICAg
ICAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkucHJvZ3Jlc3NFdmVudCwgbV9w
cm9ncmVzc1RvdGFsLCBtX3Byb2dyZXNzRG9uZSwgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJz
KTsKIAogICAgICAgICAgICAgLy8gRmlyZSB0aGUgc3VjY2VzcyBldmVudC4KLSAgICAgICAgICAg
IHBvc3RMaXN0ZW5lclRhc2soaXNVcGdyYWRlQXR0ZW1wdCA/IEFwcGxpY2F0aW9uQ2FjaGVIb3N0
OjpVUERBVEVSRUFEWV9FVkVOVCA6IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDQUNIRURfRVZFTlQs
IG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CisgICAgICAgICAgICBwb3N0TGlzdGVuZXJU
YXNrKGlzVXBncmFkZUF0dGVtcHQgPyBldmVudE5hbWVzKCkudXBkYXRlcmVhZHlFdmVudCA6IGV2
ZW50TmFtZXMoKS5jYWNoZWRFdmVudCwgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsKICAg
ICAgICAgICAgIC8vIEl0IGlzIGNsZWFyIHRoYXQgdGhlIG9yaWdpbiBxdW90YSB3YXMgbm90IHJl
YWNoZWQsIHNvIGNsZWFyIHRoZSBmbGFnIGlmIGl0IHdhcyBzZXQuCiAgICAgICAgICAgICBtX29y
aWdpblF1b3RhRXhjZWVkZWRQcmV2aW91c2x5ID0gZmFsc2U7CiAgICAgICAgIH0gZWxzZSB7CkBA
IC05MTksMTAgKzkxMSw4IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpjaGVja0lmTG9h
ZElzQ29tcGxldGUoKQogCiAgICAgICAgICAgICAgICAgLy8gU2F2ZSBhIHJlZmVyZW5jZSB0byB0
aGUgbmV3IGNhY2hlLgogICAgICAgICAgICAgICAgIG1fY2FjaGVCZWluZ1VwZGF0ZWQgPSBXVEZN
b3ZlKG1fbmV3ZXN0Q2FjaGUpOwotICAgICAgICAgICAgICAgIGlmIChvbGROZXdlc3RDYWNoZSkg
ewotICAgICAgICAgICAgICAgICAgICAvLyBSZWluc3RhdGUgdGhlIG9sZE5ld2VzdENhY2hlLgot
ICAgICAgICAgICAgICAgICAgICBzZXROZXdlc3RDYWNoZShXVEZNb3ZlKG9sZE5ld2VzdENhY2hl
KSk7Ci0gICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGlmIChvbGROZXdlc3RDYWNo
ZSkKKyAgICAgICAgICAgICAgICAgICAgc2V0TmV3ZXN0Q2FjaGUob2xkTmV3ZXN0Q2FjaGUucmVs
ZWFzZU5vbk51bGwoKSk7CiAgICAgICAgICAgICAgICAgc2NoZWR1bGVSZWFjaGVkTWF4QXBwQ2Fj
aGVTaXplQ2FsbGJhY2soKTsKICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICB9
CkBAIC05MzAsNyArOTIwLDcgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNoZWNrSWZM
b2FkSXNDb21wbGV0ZSgpCiAgICAgICAgICAgICAvLyBSdW4gdGhlICJjYWNoZSBmYWlsdXJlIHN0
ZXBzIgogICAgICAgICAgICAgLy8gRmlyZSB0aGUgZXJyb3IgZXZlbnRzIHRvIGFsbCBwZW5kaW5n
IG1hc3RlciBlbnRyaWVzLCBhcyB3ZWxsIGFueSBvdGhlciBjYWNoZSBob3N0cwogICAgICAgICAg
ICAgLy8gY3VycmVudGx5IGFzc29jaWF0ZWQgd2l0aCBhIGNhY2hlIGluIHRoaXMgZ3JvdXAuCi0g
ICAgICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFUlJPUl9F
VkVOVCwgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsKKyAgICAgICAgICAgIHBvc3RMaXN0
ZW5lclRhc2soZXZlbnROYW1lcygpLmVycm9yRXZlbnQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9h
ZGVycyk7CiAgICAgICAgICAgICAvLyBEaXNhc3NvY2lhdGUgdGhlIHBlbmRpbmcgbWFzdGVyIGVu
dHJpZXMgZnJvbSB0aGUgZmFpbGVkIG5ldyBjYWNoZS4gTm90ZSB0aGF0CiAgICAgICAgICAgICAv
LyBhbGwgb3RoZXIgbG9hZGVycyBpbiB0aGUgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzIGFy
ZSBzdGlsbCBhc3NvY2lhdGVkIHdpdGgKICAgICAgICAgICAgIC8vIHNvbWUgb3RoZXIgY2FjaGUg
aW4gdGhpcyBncm91cC4gVGhleSBhcmUgbm90IGFzc29jaWF0ZWQgd2l0aCB0aGUgZmFpbGVkIG5l
dyBjYWNoZS4KQEAgLTkzOSwxMiArOTI5LDEyIEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3Vw
OjpjaGVja0lmTG9hZElzQ29tcGxldGUoKQogICAgICAgICAgICAgVmVjdG9yPERvY3VtZW50TG9h
ZGVyKj4gbG9hZGVyczsKICAgICAgICAgICAgIGNvcHlUb1ZlY3RvcihtX3BlbmRpbmdNYXN0ZXJS
ZXNvdXJjZUxvYWRlcnMsIGxvYWRlcnMpOwogICAgICAgICAgICAgZm9yIChhdXRvJiBsb2FkZXIg
OiBsb2FkZXJzKQotICAgICAgICAgICAgICAgIGRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKGxv
YWRlcik7IC8vIFRoaXMgY2FuIGRlbGV0ZSB0aGlzIGdyb3VwLgorICAgICAgICAgICAgICAgIGRp
c2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKCpsb2FkZXIpOyAvLyBUaGlzIGNhbiBkZWxldGUgdGhp
cyBncm91cC4KIAogICAgICAgICAgICAgLy8gUmVpbnN0YXRlIHRoZSBvbGROZXdlc3RDYWNoZSwg
aWYgdGhlcmUgd2FzIG9uZS4KICAgICAgICAgICAgIGlmIChvbGROZXdlc3RDYWNoZSkgewogICAg
ICAgICAgICAgICAgIC8vIFRoaXMgd2lsbCBkaXNjYXJkIHRoZSBmYWlsZWQgbmV3IGNhY2hlLgot
ICAgICAgICAgICAgICAgIHNldE5ld2VzdENhY2hlKFdURk1vdmUob2xkTmV3ZXN0Q2FjaGUpKTsK
KyAgICAgICAgICAgICAgICBzZXROZXdlc3RDYWNoZShvbGROZXdlc3RDYWNoZS5yZWxlYXNlTm9u
TnVsbCgpKTsKICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgLy8gV2UgbXVz
dCBoYXZlIGJlZW4gZGVsZXRlZCBieSB0aGUgbGFzdCBjYWxsIHRvIGRpc2Fzc29jaWF0ZURvY3Vt
ZW50TG9hZGVyKCkuCiAgICAgICAgICAgICAgICAgcmV0dXJuOwpAQCAtOTczLDE0ICs5NjMsMTMg
QEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnN0YXJ0TG9hZGluZ0VudHJ5KCkKICAgICAg
ICAgcmV0dXJuOwogICAgIH0KICAgICAKLSAgICBFbnRyeU1hcDo6Y29uc3RfaXRlcmF0b3IgaXQg
PSBtX3BlbmRpbmdFbnRyaWVzLmJlZ2luKCk7CisgICAgYXV0byBmaXJzdFBlbmRpbmdFbnRyeVVS
TCA9IG1fcGVuZGluZ0VudHJpZXMuYmVnaW4oKS0+a2V5OwogCi0gICAgcG9zdExpc3RlbmVyVGFz
ayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6UFJPR1JFU1NfRVZFTlQsIG1fcHJvZ3Jlc3NUb3RhbCwg
bV9wcm9ncmVzc0RvbmUsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CisgICAgcG9zdExp
c3RlbmVyVGFzayhldmVudE5hbWVzKCkucHJvZ3Jlc3NFdmVudCwgbV9wcm9ncmVzc1RvdGFsLCBt
X3Byb2dyZXNzRG9uZSwgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsKICAgICBtX3Byb2dy
ZXNzRG9uZSsrOwogCiAgICAgQVNTRVJUKCFtX2N1cnJlbnRIYW5kbGUpOwotICAgIAotICAgIG1f
Y3VycmVudEhhbmRsZSA9IGNyZWF0ZVJlc291cmNlSGFuZGxlKFVSTChQYXJzZWRVUkxTdHJpbmcs
IGl0LT5rZXkpLCBtX25ld2VzdENhY2hlID8gbV9uZXdlc3RDYWNoZS0+cmVzb3VyY2VGb3JVUkwo
aXQtPmtleSkgOiAwKTsKKyAgICBtX2N1cnJlbnRIYW5kbGUgPSBjcmVhdGVSZXNvdXJjZUhhbmRs
ZShVUkwoUGFyc2VkVVJMU3RyaW5nLCBmaXJzdFBlbmRpbmdFbnRyeVVSTCksIG1fbmV3ZXN0Q2Fj
aGUgPyBtX25ld2VzdENhY2hlLT5yZXNvdXJjZUZvclVSTChmaXJzdFBlbmRpbmdFbnRyeVVSTCkg
OiAwKTsKIH0KIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRlbGl2ZXJEZWxheWVkTWFp
blJlc291cmNlcygpCkBAIC05ODgsMTkgKzk3NywxNSBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVH
cm91cDo6ZGVsaXZlckRlbGF5ZWRNYWluUmVzb3VyY2VzKCkKICAgICAvLyBOZWVkIHRvIGNvcHkg
bG9hZGVycywgYmVjYXVzZSB0aGUgY2FjaGUgZ3JvdXAgbWF5IGJlIGRlc3Ryb3llZCBhdCB0aGUg
ZW5kIG9mIGl0ZXJhdGlvbi4KICAgICBWZWN0b3I8RG9jdW1lbnRMb2FkZXIqPiBsb2FkZXJzOwog
ICAgIGNvcHlUb1ZlY3RvcihtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMsIGxvYWRlcnMp
OwotICAgIHNpemVfdCBjb3VudCA9IGxvYWRlcnMuc2l6ZSgpOwotICAgIGZvciAoc2l6ZV90IGkg
PSAwOyBpICE9IGNvdW50OyArK2kpIHsKLSAgICAgICAgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciA9
IGxvYWRlcnNbaV07CisgICAgZm9yIChhdXRvKiBsb2FkZXIgOiBsb2FkZXJzKSB7CiAgICAgICAg
IGlmIChsb2FkZXItPmlzTG9hZGluZ01haW5SZXNvdXJjZSgpKQogICAgICAgICAgICAgY29udGlu
dWU7Ci0KLSAgICAgICAgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IgPSBsb2FkZXItPm1haW5E
b2N1bWVudEVycm9yKCk7Ci0gICAgICAgIGlmIChlcnJvci5pc051bGwoKSkKLSAgICAgICAgICAg
IGZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZShsb2FkZXIpOworICAgICAgICBpZiAobG9hZGVy
LT5tYWluRG9jdW1lbnRFcnJvcigpLmlzTnVsbCgpKQorICAgICAgICAgICAgZmluaXNoZWRMb2Fk
aW5nTWFpblJlc291cmNlKCpsb2FkZXIpOwogICAgICAgICBlbHNlCi0gICAgICAgICAgICBmYWls
ZWRMb2FkaW5nTWFpblJlc291cmNlKGxvYWRlcik7CisgICAgICAgICAgICBmYWlsZWRMb2FkaW5n
TWFpblJlc291cmNlKCpsb2FkZXIpOwogICAgIH0KLSAgICBpZiAoIWNvdW50KQorICAgIGlmIChs
b2FkZXJzLmlzRW1wdHkoKSkKICAgICAgICAgY2hlY2tJZkxvYWRJc0NvbXBsZXRlKCk7CiB9CiAK
QEAgLTEwMDgsMTMgKzk5MywxMiBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6YWRkRW50
cnkoY29uc3QgU3RyaW5nJiB1cmwsIHVuc2lnbmVkIHR5cGUpCiB7CiAgICAgQVNTRVJUKG1fY2Fj
aGVCZWluZ1VwZGF0ZWQpOwogICAgIEFTU0VSVCghVVJMKFBhcnNlZFVSTFN0cmluZywgdXJsKS5o
YXNGcmFnbWVudElkZW50aWZpZXIoKSk7Ci0gICAgCisKICAgICAvLyBEb24ndCBhZGQgdGhlIFVS
TCBpZiB3ZSBhbHJlYWR5IGhhdmUgYW4gbWFzdGVyIHJlc291cmNlIGluIHRoZSBjYWNoZQogICAg
IC8vIChpLmUuLCB0aGUgbWFpbiByZXNvdXJjZSBmaW5pc2hlZCBsb2FkaW5nIGJlZm9yZSB0aGUg
bWFuaWZlc3QpLgotICAgIGlmIChBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqIHJlc291cmNlID0g
bV9jYWNoZUJlaW5nVXBkYXRlZC0+cmVzb3VyY2VGb3JVUkwodXJsKSkgeworICAgIGlmIChhdXRv
KiByZXNvdXJjZSA9IG1fY2FjaGVCZWluZ1VwZGF0ZWQtPnJlc291cmNlRm9yVVJMKHVybCkpIHsK
ICAgICAgICAgQVNTRVJUKHJlc291cmNlLT50eXBlKCkgJiBBcHBsaWNhdGlvbkNhY2hlUmVzb3Vy
Y2U6Ok1hc3Rlcik7CiAgICAgICAgIEFTU0VSVCghbV9mcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRM
b2FkZXIoKS0+aXNMb2FkaW5nTWFpblJlc291cmNlKCkpOwotICAgIAogICAgICAgICByZXNvdXJj
ZS0+YWRkVHlwZSh0eXBlKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTEwMjUsMTEgKzEw
MDksOCBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6YWRkRW50cnkoY29uc3QgU3RyaW5n
JiB1cmwsIHVuc2lnbmVkIHR5cGUpCiAgICAgICAgIG1fbWFuaWZlc3RSZXNvdXJjZS0+YWRkVHlw
ZSh0eXBlKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KLSAgICAKLSAgICBFbnRyeU1hcDo6QWRk
UmVzdWx0IHJlc3VsdCA9IG1fcGVuZGluZ0VudHJpZXMuYWRkKHVybCwgdHlwZSk7Ci0gICAgCi0g
ICAgaWYgKCFyZXN1bHQuaXNOZXdFbnRyeSkKLSAgICAgICAgcmVzdWx0Lml0ZXJhdG9yLT52YWx1
ZSB8PSB0eXBlOworCisgICAgbV9wZW5kaW5nRW50cmllcy5hZGQodXJsLCB0eXBlKS5pdGVyYXRv
ci0+dmFsdWUgfD0gdHlwZTsKIH0KIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFzc29j
aWF0ZURvY3VtZW50TG9hZGVyV2l0aENhY2hlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIEFwcGxp
Y2F0aW9uQ2FjaGUqIGNhY2hlKQpAQCAtMTA0MCw2MyArMTAyMSw2MyBAQCB2b2lkIEFwcGxpY2F0
aW9uQ2FjaGVHcm91cDo6YXNzb2NpYXRlRG9jdW1lbnRMb2FkZXJXaXRoQ2FjaGUoRG9jdW1lbnRM
b2FkZXIqIGxvYQogCiAgICAgQVNTRVJUKCFtX2lzT2Jzb2xldGUpOwogCi0gICAgbG9hZGVyLT5h
cHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5zZXRBcHBsaWNhdGlvbkNhY2hlKGNhY2hlKTsKKyAgICBs
b2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2V0QXBwbGljYXRpb25DYWNoZShjYWNoZSk7
CiAKICAgICBBU1NFUlQoIW1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycy5jb250YWlucyhsb2Fk
ZXIpKTsKICAgICBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMuYWRkKGxvYWRlcik7CiB9CiAK
LWNsYXNzIENocm9tZUNsaWVudENhbGxiYWNrVGltZXI6IHB1YmxpYyBUaW1lckJhc2UgeworY2xh
c3MgQ2hyb21lQ2xpZW50Q2FsbGJhY2tUaW1lciBmaW5hbCA6IHB1YmxpYyBUaW1lckJhc2Ugewog
cHVibGljOgotICAgIENocm9tZUNsaWVudENhbGxiYWNrVGltZXIoQXBwbGljYXRpb25DYWNoZUdy
b3VwKiBjYWNoZUdyb3VwKQotICAgICAgICA6IG1fY2FjaGVHcm91cChjYWNoZUdyb3VwKQorICAg
IENocm9tZUNsaWVudENhbGxiYWNrVGltZXIoQXBwbGljYXRpb25DYWNoZUdyb3VwJiBncm91cCkK
KyAgICAgICAgOiBtX2dyb3VwKGdyb3VwKQogICAgIHsKICAgICB9CiAKIHByaXZhdGU6Ci0gICAg
dm9pZCBmaXJlZCgpIG92ZXJyaWRlCisgICAgdm9pZCBmaXJlZCgpIGZpbmFsCiAgICAgewotICAg
ICAgICBtX2NhY2hlR3JvdXAtPmRpZFJlYWNoTWF4QXBwQ2FjaGVTaXplKCk7CisgICAgICAgIG1f
Z3JvdXAuZGlkUmVhY2hNYXhBcHBDYWNoZVNpemUoKTsKICAgICAgICAgZGVsZXRlIHRoaXM7CiAg
ICAgfQotICAgIC8vIE5vdGUgdGhhdCB0aGVyZSBpcyBubyBuZWVkIHRvIHVzZSBhIFJlZlB0ciBo
ZXJlLiBUaGUgQXBwbGljYXRpb25DYWNoZUdyb3VwIGluc3RhbmNlIGlzIGd1YXJhbnRlZWQKLSAg
ICAvLyB0byBiZSBhbGl2ZSB3aGVuIHRoZSB0aW1lciBmaXJlcyBzaW5jZSBpbnZva2luZyB0aGUg
Q2hyb21lQ2xpZW50IGNhbGxiYWNrIGlzIHBhcnQgb2YgaXRzIG5vcm1hbAorCisgICAgLy8gTm90
ZSB0aGF0IHRoZXJlIGlzIG5vIG5lZWQgdG8gdXNlIGEgUmVmIGhlcmUuIFRoZSBBcHBsaWNhdGlv
bkNhY2hlR3JvdXAgaW5zdGFuY2UgaXMgZ3VhcmFudGVlZAorICAgIC8vIHRvIGJlIGFsaXZlIHdo
ZW4gdGhlIHRpbWVyIGZpcmVzIHNpbmNlIGludm9raW5nIHRoZSBjYWxsYmFjayBpcyBwYXJ0IG9m
IGl0cyBub3JtYWwKICAgICAvLyB1cGRhdGUgbWFjaGluZXJ5IGFuZCBub3RoaW5nIGNhbiB5ZXQg
Y2F1c2UgaXQgdG8gZ2V0IGRlbGV0ZWQuCi0gICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBtX2Nh
Y2hlR3JvdXA7CisgICAgQXBwbGljYXRpb25DYWNoZUdyb3VwJiBtX2dyb3VwOwogfTsKIAogdm9p
ZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNjaGVkdWxlUmVhY2hlZE1heEFwcENhY2hlU2l6ZUNh
bGxiYWNrKCkKIHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwotICAgIENocm9tZUNsaWVu
dENhbGxiYWNrVGltZXIqIHRpbWVyID0gbmV3IENocm9tZUNsaWVudENhbGxiYWNrVGltZXIodGhp
cyk7CisgICAgYXV0byogdGltZXIgPSBuZXcgQ2hyb21lQ2xpZW50Q2FsbGJhY2tUaW1lcigqdGhp
cyk7CiAgICAgdGltZXItPnN0YXJ0T25lU2hvdCgwKTsKICAgICAvLyBUaGUgdGltZXIgd2lsbCBk
ZWxldGUgaXRzZWxmIG9uY2UgaXQgZmlyZXMuCiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdy
b3VwOjpwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFdmVudElEIGV2ZW50
SUQsIGludCBwcm9ncmVzc1RvdGFsLCBpbnQgcHJvZ3Jlc3NEb25lLCBjb25zdCBIYXNoU2V0PERv
Y3VtZW50TG9hZGVyKj4mIGxvYWRlclNldCkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpw
b3N0TGlzdGVuZXJUYXNrKGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBpbnQgcHJvZ3Jl
c3NUb3RhbCwgaW50IHByb2dyZXNzRG9uZSwgY29uc3QgSGFzaFNldDxEb2N1bWVudExvYWRlcio+
JiBsb2FkZXJTZXQpCiB7CiAgICAgZm9yIChhdXRvJiBsb2FkZXIgOiBsb2FkZXJTZXQpCi0gICAg
ICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnRJRCwgcHJvZ3Jlc3NUb3RhbCwgcHJvZ3Jlc3NEb25l
LCBsb2FkZXIpOworICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50VHlwZSwgcHJvZ3Jlc3NU
b3RhbCwgcHJvZ3Jlc3NEb25lLCAqbG9hZGVyKTsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hl
R3JvdXA6OnBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkV2ZW50SUQgZXZl
bnRJRCwgaW50IHByb2dyZXNzVG90YWwsIGludCBwcm9ncmVzc0RvbmUsIERvY3VtZW50TG9hZGVy
KiBsb2FkZXIpCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6cG9zdExpc3RlbmVyVGFzayhj
b25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgaW50IHByb2dyZXNzVG90YWwsIGludCBwcm9n
cmVzc0RvbmUsIERvY3VtZW50TG9hZGVyJiBsb2FkZXIpCiB7Ci0gICAgRnJhbWUqIGZyYW1lID0g
bG9hZGVyLT5mcmFtZSgpOworICAgIGF1dG8qIGZyYW1lID0gbG9hZGVyLmZyYW1lKCk7CiAgICAg
aWYgKCFmcmFtZSkKICAgICAgICAgcmV0dXJuOwogICAgIAotICAgIEFTU0VSVChmcmFtZS0+bG9h
ZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSA9PSBsb2FkZXIpOworICAgIEFTU0VSVChmcmFtZS0+bG9h
ZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSA9PSAmbG9hZGVyKTsKIAotICAgIFJlZlB0cjxEb2N1bWVu
dExvYWRlcj4gbG9hZGVyUHJvdGVjdG9yKGxvYWRlcik7Ci0gICAgZnJhbWUtPmRvY3VtZW50KCkt
PnBvc3RUYXNrKFtsb2FkZXJQcm90ZWN0b3IsIGV2ZW50SUQsIHByb2dyZXNzVG90YWwsIHByb2dy
ZXNzRG9uZV0gKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQpIHsKKyAgICBSZWZQdHI8
RG9jdW1lbnRMb2FkZXI+IHByb3RlY3RlZExvYWRlcigmbG9hZGVyKTsKKyAgICBmcmFtZS0+ZG9j
dW1lbnQoKS0+cG9zdFRhc2soW3Byb3RlY3RlZExvYWRlciwgJmV2ZW50VHlwZSwgcHJvZ3Jlc3NU
b3RhbCwgcHJvZ3Jlc3NEb25lXSAoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCkgewog
ICAgICAgICBBU1NFUlRfVU5VU0VEKGNvbnRleHQsIGNvbnRleHQuaXNEb2N1bWVudCgpKTsKLSAg
ICAgICAgRnJhbWUqIGZyYW1lID0gbG9hZGVyUHJvdGVjdG9yLT5mcmFtZSgpOworICAgICAgICBh
dXRvKiBmcmFtZSA9IHByb3RlY3RlZExvYWRlci0+ZnJhbWUoKTsKICAgICAgICAgaWYgKCFmcmFt
ZSkKICAgICAgICAgICAgIHJldHVybjsKIAotICAgICAgICBBU1NFUlQoZnJhbWUtPmxvYWRlcigp
LmRvY3VtZW50TG9hZGVyKCkgPT0gbG9hZGVyUHJvdGVjdG9yKTsKLQotICAgICAgICBsb2FkZXJQ
cm90ZWN0b3ItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm5vdGlmeURPTUFwcGxpY2F0aW9uQ2Fj
aGUoZXZlbnRJRCwgcHJvZ3Jlc3NUb3RhbCwgcHJvZ3Jlc3NEb25lKTsKKyAgICAgICAgQVNTRVJU
KGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpID09IHByb3RlY3RlZExvYWRlcik7Cisg
ICAgICAgIHByb3RlY3RlZExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS5ub3RpZnlET01B
cHBsaWNhdGlvbkNhY2hlKGV2ZW50VHlwZSwgcHJvZ3Jlc3NUb3RhbCwgcHJvZ3Jlc3NEb25lKTsK
ICAgICB9KTsKIH0KIApAQCAtMTEwOCw4ICsxMDg5LDcgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hl
R3JvdXA6OnNldFVwZGF0ZVN0YXR1cyhVcGRhdGVTdGF0dXMgc3RhdHVzKQogdm9pZCBBcHBsaWNh
dGlvbkNhY2hlR3JvdXA6OmNsZWFyU3RvcmFnZUlEKCkKIHsKICAgICBtX3N0b3JhZ2VJRCA9IDA7
Ci0gICAgCi0gICAgZm9yIChjb25zdCBhdXRvJiBjYWNoZSA6IG1fY2FjaGVzKQorICAgIGZvciAo
YXV0byYgY2FjaGUgOiBtX2NhY2hlcykKICAgICAgICAgY2FjaGUtPmNsZWFyU3RvcmFnZUlEKCk7
CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNh
dGlvbkNhY2hlR3JvdXAuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNh
dGlvbkNhY2hlR3JvdXAuaAppbmRleCBiMDY0NGM0NmM4NjY5MWNhOGQwMDkzNTU3NjhmYjU4OTE2
ZGY3OWIxLi5mYzg1MWRhN2NmYThjNDMzMmY2ODVlYTI5MTIyZTM3ZDRkYjdhYWEyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3Vw
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVH
cm91cC5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCwgMjAwOSwg
MjAxMCBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIw
MDgtMjAxNyBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKQEAgLTQ5LDggKzQ5LDkgQEAgZW51bSBBcHBsaWNhdGlvbkNhY2hlVXBk
YXRlT3B0aW9uIHsKICAgICBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlV2l0aG91dEJyb3dzaW5nQ29u
dGV4dAogfTsKIAotY2xhc3MgQXBwbGljYXRpb25DYWNoZUdyb3VwIDogUmVzb3VyY2VIYW5kbGVD
bGllbnQgewotICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCk7
IFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworY2xhc3MgQXBwbGljYXRpb25DYWNoZUdyb3VwIGZp
bmFsIDogcHJpdmF0ZSBSZXNvdXJjZUhhbmRsZUNsaWVudCB7CisgICAgV1RGX01BS0VfTk9OQ09Q
WUFCTEUoQXBwbGljYXRpb25DYWNoZUdyb3VwKTsKKyAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRF
RDsKIHB1YmxpYzoKICAgICBleHBsaWNpdCBBcHBsaWNhdGlvbkNhY2hlR3JvdXAoUmVmPEFwcGxp
Y2F0aW9uQ2FjaGVTdG9yYWdlPiYmLCBjb25zdCBVUkwmIG1hbmlmZXN0VVJMKTsKICAgICB2aXJ0
dWFsIH5BcHBsaWNhdGlvbkNhY2hlR3JvdXAoKTsKQEAgLTYwLDggKzYxLDggQEAgcHVibGljOgog
ICAgIHN0YXRpYyBBcHBsaWNhdGlvbkNhY2hlKiBjYWNoZUZvck1haW5SZXF1ZXN0KGNvbnN0IFJl
c291cmNlUmVxdWVzdCYsIERvY3VtZW50TG9hZGVyKik7CiAgICAgc3RhdGljIEFwcGxpY2F0aW9u
Q2FjaGUqIGZhbGxiYWNrQ2FjaGVGb3JNYWluUmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
LCBEb2N1bWVudExvYWRlciopOwogICAgIAotICAgIHN0YXRpYyB2b2lkIHNlbGVjdENhY2hlKEZy
YW1lKiwgY29uc3QgVVJMJiBtYW5pZmVzdFVSTCk7Ci0gICAgc3RhdGljIHZvaWQgc2VsZWN0Q2Fj
aGVXaXRob3V0TWFuaWZlc3RVUkwoRnJhbWUqKTsKKyAgICBzdGF0aWMgdm9pZCBzZWxlY3RDYWNo
ZShGcmFtZSYsIGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwpOworICAgIHN0YXRpYyB2b2lkIHNlbGVj
dENhY2hlV2l0aG91dE1hbmlmZXN0VVJMKEZyYW1lJik7CiAKICAgICBBcHBsaWNhdGlvbkNhY2hl
U3RvcmFnZSYgc3RvcmFnZSgpIHsgcmV0dXJuIG1fc3RvcmFnZTsgfQogICAgIGNvbnN0IFVSTCYg
bWFuaWZlc3RVUkwoKSBjb25zdCB7IHJldHVybiBtX21hbmlmZXN0VVJMOyB9CkBAIC03MywzMSAr
NzQsMzEgQEAgcHVibGljOgogICAgIHVuc2lnbmVkIHN0b3JhZ2VJRCgpIGNvbnN0IHsgcmV0dXJu
IG1fc3RvcmFnZUlEOyB9CiAgICAgdm9pZCBjbGVhclN0b3JhZ2VJRCgpOwogICAgIAotICAgIHZv
aWQgdXBkYXRlKEZyYW1lKiwgQXBwbGljYXRpb25DYWNoZVVwZGF0ZU9wdGlvbik7IC8vIEZJWE1F
OiBGcmFtZSBzaG91bGQgbm90IGJlIG5lZWRlZCB3aGVuIHVwZGF0aW5nIHdpdGhvdXQgYnJvd3Np
bmcgY29udGV4dC4KLSAgICB2b2lkIGNhY2hlRGVzdHJveWVkKEFwcGxpY2F0aW9uQ2FjaGUqKTsK
KyAgICB2b2lkIHVwZGF0ZShGcmFtZSYsIEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVPcHRpb24pOyAv
LyBGSVhNRTogRnJhbWUgc2hvdWxkIG5vdCBiZSBuZWVkZWQgd2hlbiB1cGRhdGluZyB3aXRob3V0
IGJyb3dzaW5nIGNvbnRleHQuCisgICAgdm9pZCBjYWNoZURlc3Ryb3llZChBcHBsaWNhdGlvbkNh
Y2hlJik7CiAgICAgCi0gICAgdm9pZCBhYm9ydChGcmFtZSopOworICAgIHZvaWQgYWJvcnQoRnJh
bWUmKTsKIAotICAgIGJvb2wgY2FjaGVJc0NvbXBsZXRlKEFwcGxpY2F0aW9uQ2FjaGUqIGNhY2hl
KSB7IHJldHVybiBtX2NhY2hlcy5jb250YWlucyhjYWNoZSk7IH0KKyAgICBib29sIGNhY2hlSXND
b21wbGV0ZShBcHBsaWNhdGlvbkNhY2hlJiBjYWNoZSkgeyByZXR1cm4gbV9jYWNoZXMuY29udGFp
bnMoJmNhY2hlKTsgfQogCi0gICAgdm9pZCBzdG9wTG9hZGluZ0luRnJhbWUoRnJhbWUqKTsKKyAg
ICB2b2lkIHN0b3BMb2FkaW5nSW5GcmFtZShGcmFtZSYpOwogCiAgICAgQXBwbGljYXRpb25DYWNo
ZSogbmV3ZXN0Q2FjaGUoKSBjb25zdCB7IHJldHVybiBtX25ld2VzdENhY2hlLmdldCgpOyB9Ci0g
ICAgdm9pZCBzZXROZXdlc3RDYWNoZShQYXNzUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+KTsKKyAg
ICB2b2lkIHNldE5ld2VzdENhY2hlKFJlZjxBcHBsaWNhdGlvbkNhY2hlPiYmKTsKIAogICAgIHZv
aWQgbWFrZU9ic29sZXRlKCk7CiAgICAgYm9vbCBpc09ic29sZXRlKCkgY29uc3QgeyByZXR1cm4g
bV9pc09ic29sZXRlOyB9CiAKLSAgICB2b2lkIGZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZShE
b2N1bWVudExvYWRlciopOwotICAgIHZvaWQgZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZShEb2N1
bWVudExvYWRlciopOworICAgIHZvaWQgZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKERvY3Vt
ZW50TG9hZGVyJik7CisgICAgdm9pZCBmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKERvY3VtZW50
TG9hZGVyJik7CiAKLSAgICB2b2lkIGRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKERvY3VtZW50
TG9hZGVyKik7CisgICAgdm9pZCBkaXNhc3NvY2lhdGVEb2N1bWVudExvYWRlcihEb2N1bWVudExv
YWRlciYpOwogCiBwcml2YXRlOgotICAgIHN0YXRpYyB2b2lkIHBvc3RMaXN0ZW5lclRhc2soQXBw
bGljYXRpb25DYWNoZUhvc3Q6OkV2ZW50SUQgaWQsIGNvbnN0IEhhc2hTZXQ8RG9jdW1lbnRMb2Fk
ZXIqPiYgc2V0KSB7IHBvc3RMaXN0ZW5lclRhc2soaWQsIDAsIDAsIHNldCk7IH0KLSAgICBzdGF0
aWMgdm9pZCBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFdmVudElEIGlk
LCBEb2N1bWVudExvYWRlciogbG9hZGVyKSAgeyBwb3N0TGlzdGVuZXJUYXNrKGlkLCAwLCAwLCBs
b2FkZXIpOyB9Ci0gICAgc3RhdGljIHZvaWQgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNh
Y2hlSG9zdDo6RXZlbnRJRCwgaW50IHByb2dyZXNzVG90YWwsIGludCBwcm9ncmVzc0RvbmUsIGNv
bnN0IEhhc2hTZXQ8RG9jdW1lbnRMb2FkZXIqPiYpOwotICAgIHN0YXRpYyB2b2lkIHBvc3RMaXN0
ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkV2ZW50SUQsIGludCBwcm9ncmVzc1RvdGFs
LCBpbnQgcHJvZ3Jlc3NEb25lLCBEb2N1bWVudExvYWRlciopOworICAgIHN0YXRpYyB2b2lkIHBv
c3RMaXN0ZW5lclRhc2soY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGNvbnN0IEhhc2hT
ZXQ8RG9jdW1lbnRMb2FkZXIqPiYgc2V0KSB7IHBvc3RMaXN0ZW5lclRhc2soZXZlbnRUeXBlLCAw
LCAwLCBzZXQpOyB9CisgICAgc3RhdGljIHZvaWQgcG9zdExpc3RlbmVyVGFzayhjb25zdCBBdG9t
aWNTdHJpbmcmIGV2ZW50VHlwZSwgRG9jdW1lbnRMb2FkZXImIGxvYWRlcikgIHsgcG9zdExpc3Rl
bmVyVGFzayhldmVudFR5cGUsIDAsIDAsIGxvYWRlcik7IH0KKyAgICBzdGF0aWMgdm9pZCBwb3N0
TGlzdGVuZXJUYXNrKGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBpbnQgcHJvZ3Jlc3NU
b3RhbCwgaW50IHByb2dyZXNzRG9uZSwgY29uc3QgSGFzaFNldDxEb2N1bWVudExvYWRlcio+Jik7
CisgICAgc3RhdGljIHZvaWQgcG9zdExpc3RlbmVyVGFzayhjb25zdCBBdG9taWNTdHJpbmcmIGV2
ZW50VHlwZSwgaW50IHByb2dyZXNzVG90YWwsIGludCBwcm9ncmVzc0RvbmUsIERvY3VtZW50TG9h
ZGVyJik7CiAKICAgICB2b2lkIHNjaGVkdWxlUmVhY2hlZE1heEFwcENhY2hlU2l6ZUNhbGxiYWNr
KCk7CiAKQEAgLTEzNSw3ICsxMzYsNyBAQCBwcml2YXRlOgogCiAgICAgVVJMIG1fbWFuaWZlc3RV
Ukw7CiAgICAgUmVmUHRyPFNlY3VyaXR5T3JpZ2luPiBtX29yaWdpbjsKLSAgICBVcGRhdGVTdGF0
dXMgbV91cGRhdGVTdGF0dXM7CisgICAgVXBkYXRlU3RhdHVzIG1fdXBkYXRlU3RhdHVzIHsgSWRs
ZSB9OwogICAgIAogICAgIC8vIFRoaXMgaXMgdGhlIG5ld2VzdCBjb21wbGV0ZSBjYWNoZSBpbiB0
aGUgZ3JvdXAuCiAgICAgUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+IG1fbmV3ZXN0Q2FjaGU7CkBA
IC0xNTAsMjYgKzE1MSwyNSBAQCBwcml2YXRlOgogICAgIC8vIExpc3Qgb2YgcGVuZGluZyBtYXN0
ZXIgZW50cmllcywgdXNlZCBkdXJpbmcgdGhlIHVwZGF0ZSBwcm9jZXNzIHRvIGVuc3VyZSB0aGF0
IG5ldyBtYXN0ZXIgZW50cmllcyBhcmUgY2FjaGVkLgogICAgIEhhc2hTZXQ8RG9jdW1lbnRMb2Fk
ZXIqPiBtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnM7CiAgICAgLy8gSG93IG1hbnkgb2Yg
dGhlIGFib3ZlIHBlbmRpbmcgbWFzdGVyIGVudHJpZXMgaGF2ZSBub3QgeWV0IGZpbmlzaGVkIGRv
d25sb2FkaW5nLgotICAgIGludCBtX2Rvd25sb2FkaW5nUGVuZGluZ01hc3RlclJlc291cmNlTG9h
ZGVyc0NvdW50OworICAgIGludCBtX2Rvd25sb2FkaW5nUGVuZGluZ01hc3RlclJlc291cmNlTG9h
ZGVyc0NvdW50IHsgMCB9OwogICAgIAogICAgIC8vIFRoZXNlIGFyZSBhbGwgdGhlIGRvY3VtZW50
IGxvYWRlcnMgdGhhdCBhcmUgYXNzb2NpYXRlZCB3aXRoIGEgY2FjaGUgaW4gdGhpcyBncm91cC4K
ICAgICBIYXNoU2V0PERvY3VtZW50TG9hZGVyKj4gbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJz
OwogCiAgICAgLy8gVGhlIFVSTHMgYW5kIHR5cGVzIG9mIHBlbmRpbmcgY2FjaGUgZW50cmllcy4K
LSAgICB0eXBlZGVmIEhhc2hNYXA8U3RyaW5nLCB1bnNpZ25lZD4gRW50cnlNYXA7Ci0gICAgRW50
cnlNYXAgbV9wZW5kaW5nRW50cmllczsKKyAgICBIYXNoTWFwPFN0cmluZywgdW5zaWduZWQ+IG1f
cGVuZGluZ0VudHJpZXM7CiAgICAgCiAgICAgLy8gVGhlIHRvdGFsIG51bWJlciBvZiBpdGVtcyB0
byBiZSBwcm9jZXNzZWQgdG8gdXBkYXRlIHRoZSBjYWNoZSBncm91cCBhbmQgdGhlIG51bWJlciB0
aGF0IGhhdmUgYmVlbiBkb25lLgotICAgIGludCBtX3Byb2dyZXNzVG90YWw7Ci0gICAgaW50IG1f
cHJvZ3Jlc3NEb25lOworICAgIGludCBtX3Byb2dyZXNzVG90YWwgeyAwIH07CisgICAgaW50IG1f
cHJvZ3Jlc3NEb25lIHsgMCB9OwogCiAgICAgLy8gRnJhbWUgdXNlZCBmb3IgZmV0Y2hpbmcgcmVz
b3VyY2VzIHdoZW4gdXBkYXRpbmcuCiAgICAgLy8gRklYTUU6IEFuIHVwZGF0ZSBzdGFydGVkIGJ5
IGEgcGFydGljdWxhciBmcmFtZSBzaG91bGQgbm90IHN0b3AgaWYgaXQgaXMgZGVzdHJveWVkLCBi
dXQgdGhlcmUgYXJlIG90aGVyIGZyYW1lcyBhc3NvY2lhdGVkIHdpdGggdGhlIHNhbWUgY2FjaGUg
Z3JvdXAuCi0gICAgRnJhbWUqIG1fZnJhbWU7CisgICAgRnJhbWUqIG1fZnJhbWUgeyBudWxscHRy
IH07CiAgIAogICAgIC8vIEFuIG9ic29sZXRlIGNhY2hlIGdyb3VwIGlzIG5ldmVyIHN0b3JlZCwg
YnV0IHRoZSBvcHBvc2l0ZSBpcyBub3QgdHJ1ZSAtIHN0b3JpbmcgbWF5IGZhaWwgZm9yIG11bHRp
cGxlIHJlYXNvbnMsIHN1Y2ggYXMgZXhjZWVkaW5nIGRpc2sgcXVvdGEuCi0gICAgdW5zaWduZWQg
bV9zdG9yYWdlSUQ7Ci0gICAgYm9vbCBtX2lzT2Jzb2xldGU7CisgICAgdW5zaWduZWQgbV9zdG9y
YWdlSUQgeyAwIH07CisgICAgYm9vbCBtX2lzT2Jzb2xldGUgeyBmYWxzZSB9OwogCiAgICAgLy8g
RHVyaW5nIHVwZGF0ZSwgdGhpcyBpcyB1c2VkIHRvIGhhbmRsZSBhc3luY2hyb25vdXNseSBhcnJp
dmluZyByZXN1bHRzLgogICAgIGVudW0gQ29tcGxldGlvblR5cGUgewpAQCAtMTc4LDEyICsxNzgs
MTIgQEAgcHJpdmF0ZToKICAgICAgICAgRmFpbHVyZSwKICAgICAgICAgQ29tcGxldGVkCiAgICAg
fTsKLSAgICBDb21wbGV0aW9uVHlwZSBtX2NvbXBsZXRpb25UeXBlOworICAgIENvbXBsZXRpb25U
eXBlIG1fY29tcGxldGlvblR5cGUgeyBOb25lIH07CiAKICAgICAvLyBUaGlzIGZsYWcgaXMgc2V0
IGltbWVkaWF0ZWx5IGFmdGVyIHRoZSBDaHJvbWVDbGllbnQ6OnJlYWNoZWRNYXhBcHBDYWNoZVNp
emUoKSBjYWxsYmFjayBpcyBpbnZva2VkIGFzIGEgcmVzdWx0IG9mIHRoZSBzdG9yYWdlIGxheWVy
IGZhaWxpbmcgdG8gc2F2ZSBhIGNhY2hlCiAgICAgLy8gZHVlIHRvIHJlYWNoaW5nIHRoZSBtYXhp
bXVtIHNpemUgb2YgdGhlIGFwcGxpY2F0aW9uIGNhY2hlIGRhdGFiYXNlIGZpbGUuIFRoaXMgZmxh
ZyBpcyB1c2VkIGJ5IEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6Y2hlY2tJZkxvYWRJc0NvbXBsZXRl
KCkgdG8gZGVjaWRlCiAgICAgLy8gdGhlIGNvdXJzZSBvZiBhY3Rpb24gaW4gY2FzZSBvZiB0aGlz
IGZhaWx1cmUgKGkuZS4gY2FsbCB0aGUgQ2hyb21lQ2xpZW50IGNhbGxiYWNrIG9yIHJ1biB0aGUg
ZmFpbHVyZSBzdGVwcykuCi0gICAgYm9vbCBtX2NhbGxlZFJlYWNoZWRNYXhBcHBDYWNoZVNpemU7
CisgICAgYm9vbCBtX2NhbGxlZFJlYWNoZWRNYXhBcHBDYWNoZVNpemUgeyBmYWxzZSB9OwogICAg
IAogICAgIFJlZlB0cjxSZXNvdXJjZUhhbmRsZT4gbV9jdXJyZW50SGFuZGxlOwogICAgIFJlZlB0
cjxBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+IG1fY3VycmVudFJlc291cmNlOwpAQCAtMTkzLDcg
KzE5Myw3IEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPFJlc291cmNlSGFuZGxlPiBtX21hbmlmZXN0
SGFuZGxlOwogCiAgICAgaW50NjRfdCBtX2F2YWlsYWJsZVNwYWNlSW5RdW90YTsKLSAgICBib29s
IG1fb3JpZ2luUXVvdGFFeGNlZWRlZFByZXZpb3VzbHk7CisgICAgYm9vbCBtX29yaWdpblF1b3Rh
RXhjZWVkZWRQcmV2aW91c2x5IHsgZmFsc2UgfTsKIAogICAgIGZyaWVuZCBjbGFzcyBDaHJvbWVD
bGllbnRDYWxsYmFja1RpbWVyOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlSG9zdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUhvc3QuY3BwCmluZGV4IDdmNTAwNGM5ODlmOTll
M2VlNzVlZjVkOWZjNjU5ZmVhNWQ0ZWM4M2IuLjkxMTQ2OTljODdmZjg1YzIxM2UwZGRhYTM4ZTM2
ODZjNTVkYmJhOGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9B
cHBsaWNhdGlvbkNhY2hlSG9zdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNh
Y2hlL0FwcGxpY2F0aW9uQ2FjaGVIb3N0LmNwcApAQCAtMzIsNiArMzIsNyBAQAogI2luY2x1ZGUg
IkNvbnRlbnRTZWN1cml0eVBvbGljeS5oIgogI2luY2x1ZGUgIkRvY3VtZW50TG9hZGVyLmgiCiAj
aW5jbHVkZSAiRE9NQXBwbGljYXRpb25DYWNoZS5oIgorI2luY2x1ZGUgIkV2ZW50TmFtZXMuaCIK
ICNpbmNsdWRlICJGaWxlU3lzdGVtLmgiCiAjaW5jbHVkZSAiRnJhbWUuaCIKICNpbmNsdWRlICJG
cmFtZUxvYWRlci5oIgpAQCAtNDgsMzEgKzQ5LDI5IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpBcHBsaWNhdGlvbkNhY2hlSG9zdChEb2N1bWVudExvYWRl
ciYgZG9jdW1lbnRMb2FkZXIpCi0gICAgOiBtX2RvbUFwcGxpY2F0aW9uQ2FjaGUobnVsbHB0cikK
LSAgICAsIG1fZG9jdW1lbnRMb2FkZXIoZG9jdW1lbnRMb2FkZXIpCi0gICAgLCBtX2RlZmVyc0V2
ZW50cyh0cnVlKQotICAgICwgbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAobnVsbHB0
cikKKyAgICA6IG1fZG9jdW1lbnRMb2FkZXIoZG9jdW1lbnRMb2FkZXIpCiB7CiB9CiAKIEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0Ojp+QXBwbGljYXRpb25DYWNoZUhvc3QoKQogewogICAgIEFTU0VSVCgh
bV9hcHBsaWNhdGlvbkNhY2hlIHx8ICFtX2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCB8
fCBtX2FwcGxpY2F0aW9uQ2FjaGUtPmdyb3VwKCkgPT0gbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNh
Y2hlR3JvdXApOwotCiAgICAgaWYgKG1fYXBwbGljYXRpb25DYWNoZSkKLSAgICAgICAgbV9hcHBs
aWNhdGlvbkNhY2hlLT5ncm91cCgpLT5kaXNhc3NvY2lhdGVEb2N1bWVudExvYWRlcigmbV9kb2N1
bWVudExvYWRlcik7CisgICAgICAgIG1fYXBwbGljYXRpb25DYWNoZS0+Z3JvdXAoKS0+ZGlzYXNz
b2NpYXRlRG9jdW1lbnRMb2FkZXIobV9kb2N1bWVudExvYWRlcik7CiAgICAgZWxzZSBpZiAobV9j
YW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXApCi0gICAgICAgIG1fY2FuZGlkYXRlQXBwbGlj
YXRpb25DYWNoZUdyb3VwLT5kaXNhc3NvY2lhdGVEb2N1bWVudExvYWRlcigmbV9kb2N1bWVudExv
YWRlcik7CisgICAgICAgIG1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwLT5kaXNhc3Nv
Y2lhdGVEb2N1bWVudExvYWRlcihtX2RvY3VtZW50TG9hZGVyKTsKIH0KIAogdm9pZCBBcHBsaWNh
dGlvbkNhY2hlSG9zdDo6c2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3QoKQogewotICAgIEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cDo6c2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3RVUkwobV9kb2N1bWVu
dExvYWRlci5mcmFtZSgpKTsKKyAgICBBU1NFUlQobV9kb2N1bWVudExvYWRlci5mcmFtZSgpKTsK
KyAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0VVJM
KCptX2RvY3VtZW50TG9hZGVyLmZyYW1lKCkpOwogfQogCiB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVI
b3N0OjpzZWxlY3RDYWNoZVdpdGhNYW5pZmVzdChjb25zdCBVUkwmIG1hbmlmZXN0VVJMKQogewot
ICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c2VsZWN0Q2FjaGUobV9kb2N1bWVudExvYWRlci5m
cmFtZSgpLCBtYW5pZmVzdFVSTCk7CisgICAgQVNTRVJUKG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUo
KSk7CisgICAgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZWxlY3RDYWNoZSgqbV9kb2N1bWVudExv
YWRlci5mcmFtZSgpLCBtYW5pZmVzdFVSTCk7CiB9CiAKIHZvaWQgQXBwbGljYXRpb25DYWNoZUhv
c3Q6Om1heWJlTG9hZE1haW5SZXNvdXJjZShSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFN1YnN0
aXR1dGVEYXRhJiBzdWJzdGl0dXRlRGF0YSkKQEAgLTE0MCwxMiArMTM5LDExIEBAIGJvb2wgQXBw
bGljYXRpb25DYWNoZUhvc3Q6Om1heWJlTG9hZEZhbGxiYWNrRm9yTWFpbkVycm9yKGNvbnN0IFJl
c291cmNlUmVxdWVzdCYKIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWFpblJlc291cmNl
RGF0YVJlY2VpdmVkKGNvbnN0IGNoYXIqLCBpbnQsIGxvbmcgbG9uZywgYm9vbCkKIHsKLSAgICAv
LyBUaGlzIG1ldGhvZCBpcyBoZXJlIHRvIGZhY2lsaXRhdGUgYWx0ZXJuYXRlIGltcGxlbWV0YXRp
b25zIG9mIHRoaXMgaW50ZXJmYWNlIGJ5IHRoZSBob3N0IGJyb3dzZXIuCiB9CiAKIHZvaWQgQXBw
bGljYXRpb25DYWNoZUhvc3Q6OmZhaWxlZExvYWRpbmdNYWluUmVzb3VyY2UoKQogewotICAgIEFw
cGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAgPSBtX2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVH
cm91cDsKKyAgICBhdXRvKiBncm91cCA9IG1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3Vw
OwogICAgIGlmICghZ3JvdXAgJiYgbV9hcHBsaWNhdGlvbkNhY2hlKSB7CiAgICAgICAgIGlmICht
YWluUmVzb3VyY2VBcHBsaWNhdGlvbkNhY2hlKCkpIHsKICAgICAgICAgICAgIC8vIEV2ZW4gd2hl
biB0aGUgbWFpbiByZXNvdXJjZSBpcyBiZWluZyBsb2FkZWQgZnJvbSBhbiBhcHBsaWNhdGlvbiBj
YWNoZSwgbG9hZGluZyBjYW4gZmFpbCBpZiBhYm9ydGVkLgpAQCAtMTU1LDE3ICsxNTMsMTcgQEAg
dm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6ZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZSgpCiAg
ICAgfQogICAgIAogICAgIGlmIChncm91cCkKLSAgICAgICAgZ3JvdXAtPmZhaWxlZExvYWRpbmdN
YWluUmVzb3VyY2UoJm1fZG9jdW1lbnRMb2FkZXIpOworICAgICAgICBncm91cC0+ZmFpbGVkTG9h
ZGluZ01haW5SZXNvdXJjZShtX2RvY3VtZW50TG9hZGVyKTsKIH0KIAogdm9pZCBBcHBsaWNhdGlv
bkNhY2hlSG9zdDo6ZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKCkKIHsKLSAgICBBcHBsaWNh
dGlvbkNhY2hlR3JvdXAqIGdyb3VwID0gY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKCk7
CisgICAgYXV0byogZ3JvdXAgPSBjYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKTsKICAg
ICBpZiAoIWdyb3VwICYmIGFwcGxpY2F0aW9uQ2FjaGUoKSAmJiAhbWFpblJlc291cmNlQXBwbGlj
YXRpb25DYWNoZSgpKQogICAgICAgICBncm91cCA9IGFwcGxpY2F0aW9uQ2FjaGUoKS0+Z3JvdXAo
KTsKICAgICAKICAgICBpZiAoZ3JvdXApCi0gICAgICAgIGdyb3VwLT5maW5pc2hlZExvYWRpbmdN
YWluUmVzb3VyY2UoJm1fZG9jdW1lbnRMb2FkZXIpOworICAgICAgICBncm91cC0+ZmluaXNoZWRM
b2FkaW5nTWFpblJlc291cmNlKG1fZG9jdW1lbnRMb2FkZXIpOwogfQogCiBib29sIEFwcGxpY2F0
aW9uQ2FjaGVIb3N0OjptYXliZUxvYWRSZXNvdXJjZShSZXNvdXJjZUxvYWRlciYgbG9hZGVyLCBj
b25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFVSTCYgb3JpZ2luYWxVUkwpCkBA
IC0xODYsMTcgKzE4NCwxOSBAQCBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjptYXliZUxvYWRS
ZXNvdXJjZShSZXNvdXJjZUxvYWRlciYgbG9hZGVyLCBjb25zdCBSZXNvdQogCiBib29sIEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0OjptYXliZUxvYWRGYWxsYmFja0ZvclJlZGlyZWN0KFJlc291cmNlTG9h
ZGVyKiByZXNvdXJjZUxvYWRlciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKQogewotICAgIGlmICghcmVkaXJlY3RSZXNw
b25zZS5pc051bGwoKSAmJiAhcHJvdG9jb2xIb3N0QW5kUG9ydEFyZUVxdWFsKHJlcXVlc3QudXJs
KCksIHJlZGlyZWN0UmVzcG9uc2UudXJsKCkpKQorICAgIGlmICghcmVkaXJlY3RSZXNwb25zZS5p
c051bGwoKSAmJiAhcHJvdG9jb2xIb3N0QW5kUG9ydEFyZUVxdWFsKHJlcXVlc3QudXJsKCksIHJl
ZGlyZWN0UmVzcG9uc2UudXJsKCkpKSB7CiAgICAgICAgIGlmIChzY2hlZHVsZUxvYWRGYWxsYmFj
a1Jlc291cmNlRnJvbUFwcGxpY2F0aW9uQ2FjaGUocmVzb3VyY2VMb2FkZXIpKQogICAgICAgICAg
ICAgcmV0dXJuIHRydWU7CisgICAgfQogICAgIHJldHVybiBmYWxzZTsKIH0KIAogYm9vbCBBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6bWF5YmVMb2FkRmFsbGJhY2tGb3JSZXNwb25zZShSZXNvdXJjZUxv
YWRlciogcmVzb3VyY2VMb2FkZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQog
ewotICAgIGlmIChyZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpIC8gMTAwID09IDQgfHwgcmVzcG9u
c2UuaHR0cFN0YXR1c0NvZGUoKSAvIDEwMCA9PSA1KQorICAgIGlmIChyZXNwb25zZS5odHRwU3Rh
dHVzQ29kZSgpIC8gMTAwID09IDQgfHwgcmVzcG9uc2UuaHR0cFN0YXR1c0NvZGUoKSAvIDEwMCA9
PSA1KSB7CiAgICAgICAgIGlmIChzY2hlZHVsZUxvYWRGYWxsYmFja1Jlc291cmNlRnJvbUFwcGxp
Y2F0aW9uQ2FjaGUocmVzb3VyY2VMb2FkZXIpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7Cisg
ICAgfQogICAgIHJldHVybiBmYWxzZTsKIH0KIApAQCAtMjIwLDExICsyMjAsOSBAQCBVUkwgQXBw
bGljYXRpb25DYWNoZUhvc3Q6OmNyZWF0ZUZpbGVVUkwoY29uc3QgU3RyaW5nJiBwYXRoKQogICAg
IC8vIGFwcCBjYWNoZSBtZWRpYSBmaWxlcyBhcmUgYWx3YXlzIGNyZWF0ZWQgd2l0aCBlbmNvZGVG
b3JGaWxlTmFtZShjcmVhdGVDYW5vbmljYWxVVUlEU3RyaW5nKCkpLgogCiAjaWYgVVNFKENGKSAm
JiBQTEFURk9STShXSU4pCi0gICAgUmV0YWluUHRyPENGVVJMUmVmPiBjZlVSTCA9IGFkb3B0Q0Yo
Q0ZVUkxDcmVhdGVXaXRoRmlsZVN5c3RlbVBhdGgoMCwgcGF0aC5jcmVhdGVDRlN0cmluZygpLmdl
dCgpLCBrQ0ZVUkxXaW5kb3dzUGF0aFN0eWxlLCBmYWxzZSkpOwotICAgIFVSTCB1cmwoY2ZVUkwu
Z2V0KCkpOworICAgIFVSTCB1cmwoYWRvcHRDRihDRlVSTENyZWF0ZVdpdGhGaWxlU3lzdGVtUGF0
aCgwLCBwYXRoLmNyZWF0ZUNGU3RyaW5nKCkuZ2V0KCksIGtDRlVSTFdpbmRvd3NQYXRoU3R5bGUs
IGZhbHNlKSkuZ2V0KCkpOwogI2Vsc2UKICAgICBVUkwgdXJsOwotCiAgICAgdXJsLnNldFByb3Rv
Y29sKEFTQ0lJTGl0ZXJhbCgiZmlsZSIpKTsKICAgICB1cmwuc2V0UGF0aChwYXRoKTsKICNlbmRp
ZgpAQCAtMjQ2LDcgKzI0NCw3IEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZUhvc3Q6Om1heWJlTG9h
ZFN5bmNocm9ub3VzbHkoUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBSZXNvCiAgICAgaWYgKCFz
aG91bGRMb2FkUmVzb3VyY2VGcm9tQXBwbGljYXRpb25DYWNoZShyZXF1ZXN0LCByZXNvdXJjZSkp
CiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIFJlZlB0cjxTaGFyZWRCdWZmZXI+IHJlc3Bv
bnNlRGF0YSA9IHJlc291cmNlID8gYnVmZmVyRnJvbVJlc291cmNlKCpyZXNvdXJjZSkgOiBudWxs
cHRyOworICAgIGF1dG8gcmVzcG9uc2VEYXRhID0gcmVzb3VyY2UgPyBidWZmZXJGcm9tUmVzb3Vy
Y2UoKnJlc291cmNlKSA6IG51bGxwdHI7CiAgICAgaWYgKCFyZXNwb25zZURhdGEpIHsKICAgICAg
ICAgZXJyb3IgPSBtX2RvY3VtZW50TG9hZGVyLmZyYW1lTG9hZGVyKCktPmNsaWVudCgpLmNhbm5v
dFNob3dVUkxFcnJvcihyZXF1ZXN0KTsKICAgICAgICAgcmV0dXJuIHRydWU7CkBAIC0yODYsMjAg
KzI4NCwyMSBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpzZXRET01BcHBsaWNhdGlvbkNh
Y2hlKERPTUFwcGxpY2F0aW9uQ2FjaGUqIGRvbUFwcGxpYwogICAgIG1fZG9tQXBwbGljYXRpb25D
YWNoZSA9IGRvbUFwcGxpY2F0aW9uQ2FjaGU7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUhv
c3Q6Om5vdGlmeURPTUFwcGxpY2F0aW9uQ2FjaGUoRXZlbnRJRCBpZCwgaW50IHRvdGFsLCBpbnQg
ZG9uZSkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6Om5vdGlmeURPTUFwcGxpY2F0aW9uQ2Fj
aGUoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGludCB0b3RhbCwgaW50IGRvbmUpCiB7
Ci0gICAgaWYgKGlkICE9IFBST0dSRVNTX0VWRU5UKQorICAgIGlmIChldmVudFR5cGUgIT0gZXZl
bnROYW1lcygpLnByb2dyZXNzRXZlbnQpCiAgICAgICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlv
bjo6dXBkYXRlQXBwbGljYXRpb25DYWNoZVN0YXR1cyhtX2RvY3VtZW50TG9hZGVyLmZyYW1lKCkp
OwogCiAgICAgaWYgKG1fZGVmZXJzRXZlbnRzKSB7CiAgICAgICAgIC8vIEV2ZW50IGRpc3BhdGNo
aW5nIGlzIGRlZmVycmVkIHVudGlsIGRvY3VtZW50Lm9ubG9hZCBoYXMgZmlyZWQuCi0gICAgICAg
IG1fZGVmZXJyZWRFdmVudHMuYXBwZW5kKERlZmVycmVkRXZlbnQoaWQsIHRvdGFsLCBkb25lKSk7
CisgICAgICAgIG1fZGVmZXJyZWRFdmVudHMuYXBwZW5kKHsgZXZlbnRUeXBlLCB0b3RhbCwgZG9u
ZSB9KTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KLSAgICBkaXNwYXRjaERPTUV2ZW50KGlkLCB0
b3RhbCwgZG9uZSk7CisKKyAgICBkaXNwYXRjaERPTUV2ZW50KGV2ZW50VHlwZSwgdG90YWwsIGRv
bmUpOwogfQogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpzdG9wTG9hZGluZ0luRnJhbWUo
RnJhbWUqIGZyYW1lKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c3RvcExvYWRpbmdJbkZy
YW1lKEZyYW1lJiBmcmFtZSkKIHsKICAgICBBU1NFUlQoIW1fYXBwbGljYXRpb25DYWNoZSB8fCAh
bV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAgfHwgbV9hcHBsaWNhdGlvbkNhY2hlLT5n
cm91cCgpID09IG1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKTsKIApAQCAtMzEyLDUz
ICszMTEsNjggQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c3RvcExvYWRpbmdJbkZyYW1l
KEZyYW1lKiBmcmFtZSkKIHZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OnN0b3BEZWZlcnJpbmdF
dmVudHMoKQogewogICAgIFJlZjxEb2N1bWVudExvYWRlcj4gcHJvdGVjdChtX2RvY3VtZW50TG9h
ZGVyKTsKLSAgICBmb3IgKGF1dG8mIGV2ZW50IDogbV9kZWZlcnJlZEV2ZW50cykKLSAgICAgICAg
ZGlzcGF0Y2hET01FdmVudChldmVudC5ldmVudElELCBldmVudC5wcm9ncmVzc1RvdGFsLCBldmVu
dC5wcm9ncmVzc0RvbmUpOworCisgICAgLy8gTm90ZSwgZG8gbm90IGNhY2hlIHRoZSBzaXplIGlu
IGEgbG9jYWwgdmFyaWFibGUuCisgICAgLy8gVGhpcyBjb2RlIG5lZWRzIHRvIHByb3Blcmx5IGhh
bmRsZSB0aGUgY2FzZSB3aGVyZSBtb3JlIGV2ZW50cyBhcmUgYWRkZWQgdG8KKyAgICAvLyBtX2Rl
ZmVycmVkRXZlbnRzIHdoaWxlIGl0ZXJhdGluZyBpdC4gVGhpcyBpcyB3aHkgd2UgZG9uJ3QgdXNl
IGEgbW9kZXJuIGZvciBsb29wLgorICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9kZWZlcnJl
ZEV2ZW50cy5zaXplKCk7ICsraSkgeworICAgICAgICBhdXRvJiBldmVudCA9IG1fZGVmZXJyZWRF
dmVudHNbaV07CisgICAgICAgIGRpc3BhdGNoRE9NRXZlbnQoZXZlbnQuZXZlbnRUeXBlLCBldmVu
dC5wcm9ncmVzc1RvdGFsLCBldmVudC5wcm9ncmVzc0RvbmUpOworICAgIH0KKwogICAgIG1fZGVm
ZXJyZWRFdmVudHMuY2xlYXIoKTsKICAgICBtX2RlZmVyc0V2ZW50cyA9IGZhbHNlOwogfQogCi12
b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpmaWxsUmVzb3VyY2VMaXN0KFJlc291cmNlSW5mb0xp
c3QqIHJlc291cmNlcykKK1ZlY3RvcjxBcHBsaWNhdGlvbkNhY2hlSG9zdDo6UmVzb3VyY2VJbmZv
PiBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6cmVzb3VyY2VMaXN0KCkKIHsKLSAgICBBcHBsaWNhdGlv
bkNhY2hlKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKTsKKyAgICBWZWN0b3I8UmVzb3VyY2VJ
bmZvPiByZXN1bHQ7CisKKyAgICBhdXRvKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKTsKICAg
ICBpZiAoIWNhY2hlIHx8ICFjYWNoZS0+aXNDb21wbGV0ZSgpKQotICAgICAgICByZXR1cm47Cisg
ICAgICAgIHJldHVybiByZXN1bHQ7CiAKLSAgICBmb3IgKGNvbnN0IGF1dG8mIHVybEFuZFJlc291
cmNlIDogY2FjaGUtPnJlc291cmNlcygpKSB7Ci0gICAgICAgIEFwcGxpY2F0aW9uQ2FjaGVSZXNv
dXJjZSogcmVzb3VyY2UgPSB1cmxBbmRSZXNvdXJjZS52YWx1ZS5nZXQoKTsKKyAgICByZXN1bHQu
cmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShjYWNoZS0+cmVzb3VyY2VzKCkuc2l6ZSgpKTsKIAotICAg
ICAgICB1bnNpZ25lZCB0eXBlID0gcmVzb3VyY2UtPnR5cGUoKTsKKyAgICBmb3IgKGF1dG8mIHVy
bEFuZFJlc291cmNlIDogY2FjaGUtPnJlc291cmNlcygpKSB7CisgICAgICAgIEFTU0VSVCh1cmxB
bmRSZXNvdXJjZS52YWx1ZSk7CisgICAgICAgIGF1dG8mIHJlc291cmNlID0gKnVybEFuZFJlc291
cmNlLnZhbHVlOworCisgICAgICAgIHVuc2lnbmVkIHR5cGUgPSByZXNvdXJjZS50eXBlKCk7CiAg
ICAgICAgIGJvb2wgaXNNYXN0ZXIgPSB0eXBlICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpN
YXN0ZXI7CiAgICAgICAgIGJvb2wgaXNNYW5pZmVzdCA9IHR5cGUgJiBBcHBsaWNhdGlvbkNhY2hl
UmVzb3VyY2U6Ok1hbmlmZXN0OwogICAgICAgICBib29sIGlzRXhwbGljaXQgPSB0eXBlICYgQXBw
bGljYXRpb25DYWNoZVJlc291cmNlOjpFeHBsaWNpdDsKICAgICAgICAgYm9vbCBpc0ZvcmVpZ24g
PSB0eXBlICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpGb3JlaWduOwogICAgICAgICBib29s
IGlzRmFsbGJhY2sgPSB0eXBlICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpGYWxsYmFjazsK
IAotICAgICAgICByZXNvdXJjZXMtPmFwcGVuZChSZXNvdXJjZUluZm8ocmVzb3VyY2UtPnVybCgp
LCBpc01hc3RlciwgaXNNYW5pZmVzdCwgaXNGYWxsYmFjaywgaXNGb3JlaWduLCBpc0V4cGxpY2l0
LCByZXNvdXJjZS0+ZXN0aW1hdGVkU2l6ZUluU3RvcmFnZSgpKSk7CisgICAgICAgIHJlc3VsdC51
bmNoZWNrZWRBcHBlbmQoeyByZXNvdXJjZS51cmwoKSwgaXNNYXN0ZXIsIGlzTWFuaWZlc3QsIGlz
RmFsbGJhY2ssIGlzRm9yZWlnbiwgaXNFeHBsaWNpdCwgcmVzb3VyY2UuZXN0aW1hdGVkU2l6ZUlu
U3RvcmFnZSgpIH0pOwogICAgIH0KKworICAgIHJldHVybiByZXN1bHQ7CiB9CiAKIEFwcGxpY2F0
aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8gQXBwbGljYXRpb25DYWNoZUhvc3Q6OmFwcGxpY2F0aW9u
Q2FjaGVJbmZvKCkKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlKiBjYWNoZSA9IGFwcGxpY2F0aW9u
Q2FjaGUoKTsKKyAgICBhdXRvKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKTsKICAgICBpZiAo
IWNhY2hlIHx8ICFjYWNoZS0+aXNDb21wbGV0ZSgpKQotICAgICAgICByZXR1cm4gQ2FjaGVJbmZv
KFVSTCgpLCAwLCAwLCAwKTsKKyAgICAgICAgcmV0dXJuIHsgeyB9LCAwLCAwLCAwIH07CiAKICAg
ICAvLyBGSVhNRTogQWRkICJDcmVhdGlvbiBUaW1lIiBhbmQgIlVwZGF0ZSBUaW1lIiB0byBBcHBs
aWNhdGlvbiBDYWNoZXMuCi0gICAgcmV0dXJuIENhY2hlSW5mbyhjYWNoZS0+bWFuaWZlc3RSZXNv
dXJjZSgpLT51cmwoKSwgMCwgMCwgY2FjaGUtPmVzdGltYXRlZFNpemVJblN0b3JhZ2UoKSk7Cisg
ICAgcmV0dXJuIHsgY2FjaGUtPm1hbmlmZXN0UmVzb3VyY2UoKS0+dXJsKCksIDAsIDAsIGNhY2hl
LT5lc3RpbWF0ZWRTaXplSW5TdG9yYWdlKCkgfTsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hl
SG9zdDo6ZGlzcGF0Y2hET01FdmVudChFdmVudElEIGlkLCBpbnQgdG90YWwsIGludCBkb25lKQor
c3RhdGljIFJlZjxFdmVudD4gY3JlYXRlQXBwbGljYXRpb25DYWNoZUV2ZW50KGNvbnN0IEF0b21p
Y1N0cmluZyYgZXZlbnRUeXBlLCBpbnQgdG90YWwsIGludCBkb25lKQogewotICAgIGlmIChtX2Rv
bUFwcGxpY2F0aW9uQ2FjaGUpIHsKLSAgICAgICAgY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5
cGUgPSBET01BcHBsaWNhdGlvbkNhY2hlOjp0b0V2ZW50VHlwZShpZCk7Ci0gICAgICAgIFJlZlB0
cjxFdmVudD4gZXZlbnQ7Ci0gICAgICAgIGlmIChpZCA9PSBQUk9HUkVTU19FVkVOVCkKLSAgICAg
ICAgICAgIGV2ZW50ID0gUHJvZ3Jlc3NFdmVudDo6Y3JlYXRlKGV2ZW50VHlwZSwgdHJ1ZSwgZG9u
ZSwgdG90YWwpOwotICAgICAgICBlbHNlCi0gICAgICAgICAgICBldmVudCA9IEV2ZW50OjpjcmVh
dGUoZXZlbnRUeXBlLCBmYWxzZSwgZmFsc2UpOwotICAgICAgICBtX2RvbUFwcGxpY2F0aW9uQ2Fj
aGUtPmRpc3BhdGNoRXZlbnQoKmV2ZW50KTsKLSAgICB9CisgICAgaWYgKGV2ZW50VHlwZSA9PSBl
dmVudE5hbWVzKCkucHJvZ3Jlc3NFdmVudCkKKyAgICAgICAgcmV0dXJuIFByb2dyZXNzRXZlbnQ6
OmNyZWF0ZShldmVudFR5cGUsIHRydWUsIGRvbmUsIHRvdGFsKTsKKyAgICByZXR1cm4gRXZlbnQ6
OmNyZWF0ZShldmVudFR5cGUsIGZhbHNlLCBmYWxzZSk7Cit9CisKK3ZvaWQgQXBwbGljYXRpb25D
YWNoZUhvc3Q6OmRpc3BhdGNoRE9NRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUs
IGludCB0b3RhbCwgaW50IGRvbmUpCit7CisgICAgaWYgKCFtX2RvbUFwcGxpY2F0aW9uQ2FjaGUp
CisgICAgICAgIHJldHVybjsKKyAgICBtX2RvbUFwcGxpY2F0aW9uQ2FjaGUtPmRpc3BhdGNoRXZl
bnQoY3JlYXRlQXBwbGljYXRpb25DYWNoZUV2ZW50KGV2ZW50VHlwZSwgdG90YWwsIGRvbmUpKTsK
IH0KIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c2V0Q2FuZGlkYXRlQXBwbGljYXRpb25D
YWNoZUdyb3VwKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXApCkBAIC0zNjcsMjUgKzM4MSwy
NCBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpzZXRDYW5kaWRhdGVBcHBsaWNhdGlvbkNh
Y2hlR3JvdXAoQXBwbGljYXRpb25DYWNoZUdybwogICAgIG1fY2FuZGlkYXRlQXBwbGljYXRpb25D
YWNoZUdyb3VwID0gZ3JvdXA7CiB9CiAgICAgCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojpz
ZXRBcHBsaWNhdGlvbkNhY2hlKFBhc3NSZWZQdHI8QXBwbGljYXRpb25DYWNoZT4gYXBwbGljYXRp
b25DYWNoZSkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OnNldEFwcGxpY2F0aW9uQ2FjaGUo
UmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+JiYgYXBwbGljYXRpb25DYWNoZSkKIHsKICAgICBpZiAo
bV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXApIHsKICAgICAgICAgQVNTRVJUKCFtX2Fw
cGxpY2F0aW9uQ2FjaGUpOwogICAgICAgICBtX2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91
cCA9IG51bGxwdHI7CiAgICAgfQotCi0gICAgbV9hcHBsaWNhdGlvbkNhY2hlID0gYXBwbGljYXRp
b25DYWNoZTsKKyAgICBtX2FwcGxpY2F0aW9uQ2FjaGUgPSBXVEZNb3ZlKGFwcGxpY2F0aW9uQ2Fj
aGUpOwogfQogCiBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpzaG91bGRMb2FkUmVzb3VyY2VG
cm9tQXBwbGljYXRpb25DYWNoZShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIG9yaWdpbmFsUmVxdWVz
dCwgQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiYgcmVzb3VyY2UpCiB7Ci0gICAgQXBwbGljYXRp
b25DYWNoZSogY2FjaGUgPSBhcHBsaWNhdGlvbkNhY2hlKCk7CisgICAgYXV0byogY2FjaGUgPSBh
cHBsaWNhdGlvbkNhY2hlKCk7CiAgICAgaWYgKCFjYWNoZSB8fCAhY2FjaGUtPmlzQ29tcGxldGUo
KSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3Qo
b3JpZ2luYWxSZXF1ZXN0KTsKLSAgICBpZiAoRnJhbWUqIGxvYWRlckZyYW1lID0gbV9kb2N1bWVu
dExvYWRlci5mcmFtZSgpKSB7Ci0gICAgICAgIGlmIChEb2N1bWVudCogZG9jdW1lbnQgPSBsb2Fk
ZXJGcmFtZS0+ZG9jdW1lbnQoKSkKKyAgICBpZiAoYXV0byogbG9hZGVyRnJhbWUgPSBtX2RvY3Vt
ZW50TG9hZGVyLmZyYW1lKCkpIHsKKyAgICAgICAgaWYgKGF1dG8qIGRvY3VtZW50ID0gbG9hZGVy
RnJhbWUtPmRvY3VtZW50KCkpCiAgICAgICAgICAgICBkb2N1bWVudC0+Y29udGVudFNlY3VyaXR5
UG9saWN5KCktPnVwZ3JhZGVJbnNlY3VyZVJlcXVlc3RJZk5lZWRlZChyZXF1ZXN0LCBDb250ZW50
U2VjdXJpdHlQb2xpY3k6Okluc2VjdXJlUmVxdWVzdFR5cGU6OkxvYWQpOwogICAgIH0KICAgICAK
QEAgLTQzMCw3ICs0NDMsNiBAQCBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpnZXRBcHBsaWNh
dGlvbkNhY2hlRmFsbGJhY2tSZXNvdXJjZShjb25zdCBSZXNvdXJjZVJlcQogCiAgICAgcmVzb3Vy
Y2UgPSBjYWNoZS0+cmVzb3VyY2VGb3JVUkwoZmFsbGJhY2tVUkwpOwogICAgIEFTU0VSVChyZXNv
dXJjZSk7Ci0KICAgICByZXR1cm4gdHJ1ZTsKIH0KIApAQCAtNDQ0LDMwICs0NTYsMjcgQEAgYm9v
bCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c2NoZWR1bGVMb2FkRmFsbGJhY2tSZXNvdXJjZUZyb21B
cHBsaWNhdGlvbkNhY2hlKFJlc28KICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgbG9hZGVy
LT53aWxsU3dpdGNoVG9TdWJzdGl0dXRlUmVzb3VyY2UoKTsKLQogICAgIG1fZG9jdW1lbnRMb2Fk
ZXIuc2NoZWR1bGVTdWJzdGl0dXRlUmVzb3VyY2VMb2FkKCpsb2FkZXIsICpyZXNvdXJjZSk7Ci0K
ICAgICByZXR1cm4gdHJ1ZTsKIH0KIAogQXBwbGljYXRpb25DYWNoZUhvc3Q6OlN0YXR1cyBBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6c3RhdHVzKCkgY29uc3QKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hl
KiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKTsgICAgCisgICAgYXV0byogY2FjaGUgPSBhcHBs
aWNhdGlvbkNhY2hlKCk7CiAgICAgaWYgKCFjYWNoZSkKICAgICAgICAgcmV0dXJuIFVOQ0FDSEVE
OwogCiAgICAgc3dpdGNoIChjYWNoZS0+Z3JvdXAoKS0+dXBkYXRlU3RhdHVzKCkpIHsKLSAgICAg
ICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OkNoZWNraW5nOgotICAgICAgICAgICAgcmV0
dXJuIENIRUNLSU5HOwotICAgICAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6RG93bmxv
YWRpbmc6Ci0gICAgICAgICAgICByZXR1cm4gRE9XTkxPQURJTkc7Ci0gICAgICAgIGNhc2UgQXBw
bGljYXRpb25DYWNoZUdyb3VwOjpJZGxlOiB7Ci0gICAgICAgICAgICBpZiAoY2FjaGUtPmdyb3Vw
KCktPmlzT2Jzb2xldGUoKSkKLSAgICAgICAgICAgICAgICByZXR1cm4gT0JTT0xFVEU7Ci0gICAg
ICAgICAgICBpZiAoY2FjaGUgIT0gY2FjaGUtPmdyb3VwKCktPm5ld2VzdENhY2hlKCkpCi0gICAg
ICAgICAgICAgICAgcmV0dXJuIFVQREFURVJFQURZOwotICAgICAgICAgICAgcmV0dXJuIElETEU7
Ci0gICAgICAgIH0KKyAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6Q2hlY2tpbmc6Cisg
ICAgICAgIHJldHVybiBDSEVDS0lORzsKKyAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6
RG93bmxvYWRpbmc6CisgICAgICAgIHJldHVybiBET1dOTE9BRElORzsKKyAgICBjYXNlIEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cDo6SWRsZToKKyAgICAgICAgaWYgKGNhY2hlLT5ncm91cCgpLT5pc09i
c29sZXRlKCkpCisgICAgICAgICAgICByZXR1cm4gT0JTT0xFVEU7CisgICAgICAgIGlmIChjYWNo
ZSAhPSBjYWNoZS0+Z3JvdXAoKS0+bmV3ZXN0Q2FjaGUoKSkKKyAgICAgICAgICAgIHJldHVybiBV
UERBVEVSRUFEWTsKKyAgICAgICAgcmV0dXJuIElETEU7CiAgICAgfQogCiAgICAgQVNTRVJUX05P
VF9SRUFDSEVEKCk7CkBAIC00NzYsMjcgKzQ4NSwzMCBAQCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6
U3RhdHVzIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpzdGF0dXMoKSBjb25zdAogCiBib29sIEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0Ojp1cGRhdGUoKQogewotICAgIEFwcGxpY2F0aW9uQ2FjaGUqIGNhY2hl
ID0gYXBwbGljYXRpb25DYWNoZSgpOworICAgIGF1dG8qIGNhY2hlID0gYXBwbGljYXRpb25DYWNo
ZSgpOwogICAgIGlmICghY2FjaGUpCiAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBjYWNoZS0+
Z3JvdXAoKS0+dXBkYXRlKG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUoKSwgQXBwbGljYXRpb25DYWNo
ZVVwZGF0ZVdpdGhvdXRCcm93c2luZ0NvbnRleHQpOworICAgIGF1dG8qIGZyYW1lID0gbV9kb2N1
bWVudExvYWRlci5mcmFtZSgpOworICAgIGlmICghZnJhbWUpCisgICAgICAgIHJldHVybiBmYWxz
ZTsKKyAgICBjYWNoZS0+Z3JvdXAoKS0+dXBkYXRlKCpmcmFtZSwgQXBwbGljYXRpb25DYWNoZVVw
ZGF0ZVdpdGhvdXRCcm93c2luZ0NvbnRleHQpOwogICAgIHJldHVybiB0cnVlOwogfQogCiBib29s
IEFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojpzd2FwQ2FjaGUoKQogewotICAgIEFwcGxpY2F0aW9uQ2Fj
aGUqIGNhY2hlID0gYXBwbGljYXRpb25DYWNoZSgpOworICAgIGF1dG8qIGNhY2hlID0gYXBwbGlj
YXRpb25DYWNoZSgpOwogICAgIGlmICghY2FjaGUpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAog
ICAgIC8vIElmIHRoZSBncm91cCBvZiBhcHBsaWNhdGlvbiBjYWNoZXMgdG8gd2hpY2ggY2FjaGUg
YmVsb25ncyBoYXMgdGhlIGxpZmVjeWNsZSBzdGF0dXMgb2Jzb2xldGUsIHVuYXNzb2NpYXRlIGRv
Y3VtZW50IGZyb20gY2FjaGUuCiAgICAgaWYgKGNhY2hlLT5ncm91cCgpLT5pc09ic29sZXRlKCkp
IHsKLSAgICAgICAgY2FjaGUtPmdyb3VwKCktPmRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKCZt
X2RvY3VtZW50TG9hZGVyKTsKKyAgICAgICAgY2FjaGUtPmdyb3VwKCktPmRpc2Fzc29jaWF0ZURv
Y3VtZW50TG9hZGVyKG1fZG9jdW1lbnRMb2FkZXIpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAg
ICB9CiAKICAgICAvLyBJZiB0aGVyZSBpcyBubyBuZXdlciBjYWNoZSwgcmFpc2UgYW4gSU5WQUxJ
RF9TVEFURV9FUlIgZXhjZXB0aW9uLgotICAgIEFwcGxpY2F0aW9uQ2FjaGUqIG5ld2VzdENhY2hl
ID0gY2FjaGUtPmdyb3VwKCktPm5ld2VzdENhY2hlKCk7CisgICAgYXV0byogbmV3ZXN0Q2FjaGUg
PSBjYWNoZS0+Z3JvdXAoKS0+bmV3ZXN0Q2FjaGUoKTsKICAgICBpZiAoY2FjaGUgPT0gbmV3ZXN0
Q2FjaGUpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAKQEAgLTUwOCwxNCArNTIwLDEzIEBA
IGJvb2wgQXBwbGljYXRpb25DYWNoZUhvc3Q6OnN3YXBDYWNoZSgpCiAKIHZvaWQgQXBwbGljYXRp
b25DYWNoZUhvc3Q6OmFib3J0KCkKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGNhY2hl
R3JvdXAgPSBjYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKTsKLSAgICBpZiAoY2FjaGVH
cm91cCkKLSAgICAgICAgY2FjaGVHcm91cC0+YWJvcnQobV9kb2N1bWVudExvYWRlci5mcmFtZSgp
KTsKLSAgICBlbHNlIHsKLSAgICAgICAgQXBwbGljYXRpb25DYWNoZSogY2FjaGUgPSBhcHBsaWNh
dGlvbkNhY2hlKCk7Ci0gICAgICAgIGlmIChjYWNoZSkKLSAgICAgICAgICAgIGNhY2hlLT5ncm91
cCgpLT5hYm9ydChtX2RvY3VtZW50TG9hZGVyLmZyYW1lKCkpOwotICAgIH0KKyAgICBhdXRvKiBm
cmFtZSA9IG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUoKTsKKyAgICBpZiAoIWZyYW1lKQorICAgICAg
ICByZXR1cm47CisgICAgaWYgKGF1dG8qIGNhY2hlR3JvdXAgPSBjYW5kaWRhdGVBcHBsaWNhdGlv
bkNhY2hlR3JvdXAoKSkKKyAgICAgICAgY2FjaGVHcm91cC0+YWJvcnQoKmZyYW1lKTsKKyAgICBl
bHNlIGlmIChhdXRvKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKSkKKyAgICAgICAgY2FjaGUt
Pmdyb3VwKCktPmFib3J0KCpmcmFtZSk7CiB9CiAKIGJvb2wgQXBwbGljYXRpb25DYWNoZUhvc3Q6
OmlzQXBwbGljYXRpb25DYWNoZUVuYWJsZWQoKQpAQCAtNTI1LDE1ICs1MzYsMTIgQEAgYm9vbCBB
cHBsaWNhdGlvbkNhY2hlSG9zdDo6aXNBcHBsaWNhdGlvbkNhY2hlRW5hYmxlZCgpCiAKIGJvb2wg
QXBwbGljYXRpb25DYWNoZUhvc3Q6OmlzQXBwbGljYXRpb25DYWNoZUJsb2NrZWRGb3JSZXF1ZXN0
KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKIHsKLSAgICBGcmFtZSogZnJhbWUgPSBt
X2RvY3VtZW50TG9hZGVyLmZyYW1lKCk7CisgICAgYXV0byogZnJhbWUgPSBtX2RvY3VtZW50TG9h
ZGVyLmZyYW1lKCk7CiAgICAgaWYgKCFmcmFtZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwotCiAg
ICAgaWYgKGZyYW1lLT5pc01haW5GcmFtZSgpKQogICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAg
ICBSZWY8U2VjdXJpdHlPcmlnaW4+IG9yaWdpbihTZWN1cml0eU9yaWdpbjo6Y3JlYXRlKHJlcXVl
c3QudXJsKCkpKTsKLSAgICByZXR1cm4gIW9yaWdpbi5nZXQoKS5jYW5BY2Nlc3NBcHBsaWNhdGlv
bkNhY2hlKGZyYW1lLT5kb2N1bWVudCgpLT50b3BPcmlnaW4oKSk7CisgICAgcmV0dXJuICFTZWN1
cml0eU9yaWdpbjo6Y3JlYXRlKHJlcXVlc3QudXJsKCkpLT5jYW5BY2Nlc3NBcHBsaWNhdGlvbkNh
Y2hlKGZyYW1lLT5kb2N1bWVudCgpLT50b3BPcmlnaW4oKSk7CiB9CiAKIH0gIC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBw
bGljYXRpb25DYWNoZUhvc3QuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBs
aWNhdGlvbkNhY2hlSG9zdC5oCmluZGV4IGM5NWIyM2IyODc0ODI3OTYwNzU4ZjMyODA2N2IxZGZi
YWViODc4YmEuLjJiZmRjNjJmOTM5OGQwMGY0Y2IxZTkxYjg2ZDdmMzZjODUzYjc3ODIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlSG9z
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hl
SG9zdC5oCkBAIC0xLDYgKzEsNyBAQAogLyoKLSAqIENvcHlyaWdodCAoYykgMjAwOSwgR29vZ2xl
IEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAKKyAqIENvcHlyaWdodCAoYykgMjAwOSwg
R29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoYykgMjAxNyBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgogICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMgYXJlCiAgKiBtZXQ6CkBAIC0zMCwxNjUgKzMxLDEzNiBAQAogCiAjcHJhZ21hIG9uY2UK
IAotI2luY2x1ZGUgIlBsYXRmb3JtRXhwb3J0TWFjcm9zLmgiCiAjaW5jbHVkZSAiVVJMLmgiCiAj
aW5jbHVkZSA8d3RmL0RlcXVlLmg+Ci0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KLSNpbmNs
dWRlIDx3dGYvUmVmUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgogCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7Ci0gICAgY2xhc3MgRE9NQXBwbGljYXRpb25DYWNoZTsKLSAgICBjbGFzcyBEb2N1
bWVudExvYWRlcjsKLSAgICBjbGFzcyBGcmFtZTsKLSAgICBjbGFzcyBSZXNvdXJjZUVycm9yOwot
ICAgIGNsYXNzIFJlc291cmNlTG9hZGVyOwotICAgIGNsYXNzIFJlc291cmNlUmVxdWVzdDsKLSAg
ICBjbGFzcyBSZXNvdXJjZVJlc3BvbnNlOwotICAgIGNsYXNzIFNoYXJlZEJ1ZmZlcjsKLSAgICBj
bGFzcyBTdWJzdGl0dXRlRGF0YTsKLSAgICBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlOwotICAgIGNs
YXNzIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDsKLSAgICBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlUmVz
b3VyY2U7Ci0gICAgY2xhc3MgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U7Ci0KLSAgICBjbGFzcyBB
cHBsaWNhdGlvbkNhY2hlSG9zdCB7Ci0gICAgICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0KTsgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7Ci0gICAgcHVibGljOgot
ICAgICAgICAvLyBUaGUgU3RhdHVzIG51bWVyaWMgdmFsdWVzIGFyZSBzcGVjaWZpZWQgaW4gdGhl
IEhUTUw1IHNwZWMuCi0gICAgICAgIGVudW0gU3RhdHVzIHsKLSAgICAgICAgICAgIFVOQ0FDSEVE
ID0gMCwKLSAgICAgICAgICAgIElETEUgPSAxLAotICAgICAgICAgICAgQ0hFQ0tJTkcgPSAyLAot
ICAgICAgICAgICAgRE9XTkxPQURJTkcgPSAzLAotICAgICAgICAgICAgVVBEQVRFUkVBRFkgPSA0
LAotICAgICAgICAgICAgT0JTT0xFVEUgPSA1Ci0gICAgICAgIH07Ci0KLSAgICAgICAgZW51bSBF
dmVudElEIHsKLSAgICAgICAgICAgIENIRUNLSU5HX0VWRU5UID0gMCwKLSAgICAgICAgICAgIEVS
Uk9SX0VWRU5ULAotICAgICAgICAgICAgTk9VUERBVEVfRVZFTlQsCi0gICAgICAgICAgICBET1dO
TE9BRElOR19FVkVOVCwKLSAgICAgICAgICAgIFBST0dSRVNTX0VWRU5ULAotICAgICAgICAgICAg
VVBEQVRFUkVBRFlfRVZFTlQsCi0gICAgICAgICAgICBDQUNIRURfRVZFTlQsCi0gICAgICAgICAg
ICBPQlNPTEVURV9FVkVOVCAgLy8gTXVzdCByZW1haW4gdGhlIGxhc3QgdmFsdWUsIHRoaXMgaXMg
dXNlZCB0byBzaXplIGFycmF5cy4KLSAgICAgICAgfTsKLQotICAgICAgICBzdHJ1Y3QgQ2FjaGVJ
bmZvIHsKLSAgICAgICAgICAgIENhY2hlSW5mbyhjb25zdCBVUkwmIG1hbmlmZXN0LCBkb3VibGUg
Y3JlYXRpb25UaW1lLCBkb3VibGUgdXBkYXRlVGltZSwgbG9uZyBsb25nIHNpemUpCi0gICAgICAg
ICAgICAgICAgOiBtX21hbmlmZXN0KG1hbmlmZXN0KQotICAgICAgICAgICAgICAgICwgbV9jcmVh
dGlvblRpbWUoY3JlYXRpb25UaW1lKQotICAgICAgICAgICAgICAgICwgbV91cGRhdGVUaW1lKHVw
ZGF0ZVRpbWUpCi0gICAgICAgICAgICAgICAgLCBtX3NpemUoc2l6ZSkgeyB9Ci0gICAgICAgICAg
ICBVUkwgbV9tYW5pZmVzdDsKLSAgICAgICAgICAgIGRvdWJsZSBtX2NyZWF0aW9uVGltZTsKLSAg
ICAgICAgICAgIGRvdWJsZSBtX3VwZGF0ZVRpbWU7Ci0gICAgICAgICAgICBsb25nIGxvbmcgbV9z
aXplOwotICAgICAgICB9OwotCi0gICAgICAgIHN0cnVjdCBSZXNvdXJjZUluZm8gewotICAgICAg
ICAgICAgUmVzb3VyY2VJbmZvKGNvbnN0IFVSTCYgcmVzb3VyY2UsIGJvb2wgaXNNYXN0ZXIsIGJv
b2wgaXNNYW5pZmVzdCwgYm9vbCBpc0ZhbGxiYWNrLCBib29sIGlzRm9yZWlnbiwgYm9vbCBpc0V4
cGxpY2l0LCBsb25nIGxvbmcgc2l6ZSkKLSAgICAgICAgICAgICAgICA6IG1fcmVzb3VyY2UocmVz
b3VyY2UpCi0gICAgICAgICAgICAgICAgLCBtX2lzTWFzdGVyKGlzTWFzdGVyKQotICAgICAgICAg
ICAgICAgICwgbV9pc01hbmlmZXN0KGlzTWFuaWZlc3QpCi0gICAgICAgICAgICAgICAgLCBtX2lz
RmFsbGJhY2soaXNGYWxsYmFjaykKLSAgICAgICAgICAgICAgICAsIG1faXNGb3JlaWduKGlzRm9y
ZWlnbikKLSAgICAgICAgICAgICAgICAsIG1faXNFeHBsaWNpdChpc0V4cGxpY2l0KQotICAgICAg
ICAgICAgICAgICwgbV9zaXplKHNpemUpIHsgfQotICAgICAgICAgICAgVVJMIG1fcmVzb3VyY2U7
Ci0gICAgICAgICAgICBib29sIG1faXNNYXN0ZXI7Ci0gICAgICAgICAgICBib29sIG1faXNNYW5p
ZmVzdDsKLSAgICAgICAgICAgIGJvb2wgbV9pc0ZhbGxiYWNrOwotICAgICAgICAgICAgYm9vbCBt
X2lzRm9yZWlnbjsKLSAgICAgICAgICAgIGJvb2wgbV9pc0V4cGxpY2l0OwotICAgICAgICAgICAg
bG9uZyBsb25nIG1fc2l6ZTsKLSAgICAgICAgfTsKLQotICAgICAgICB0eXBlZGVmIFZlY3RvcjxS
ZXNvdXJjZUluZm8+IFJlc291cmNlSW5mb0xpc3Q7Ci0KLSAgICAgICAgZXhwbGljaXQgQXBwbGlj
YXRpb25DYWNoZUhvc3QoRG9jdW1lbnRMb2FkZXImKTsKLSAgICAgICAgfkFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KCk7Ci0KLSAgICAgICAgc3RhdGljIFVSTCBjcmVhdGVGaWxlVVJMKGNvbnN0IFN0cmlu
ZyYpOwotCi0gICAgICAgIHZvaWQgc2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3QoKTsKLSAgICAg
ICAgdm9pZCBzZWxlY3RDYWNoZVdpdGhNYW5pZmVzdChjb25zdCBVUkwmIG1hbmlmZXN0VVJMKTsK
LQotICAgICAgICB2b2lkIG1heWJlTG9hZE1haW5SZXNvdXJjZShSZXNvdXJjZVJlcXVlc3QmLCBT
dWJzdGl0dXRlRGF0YSYpOwotICAgICAgICB2b2lkIG1heWJlTG9hZE1haW5SZXNvdXJjZUZvclJl
ZGlyZWN0KFJlc291cmNlUmVxdWVzdCYsIFN1YnN0aXR1dGVEYXRhJik7Ci0gICAgICAgIGJvb2wg
bWF5YmVMb2FkRmFsbGJhY2tGb3JNYWluUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jiwg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwotICAgICAgICB2b2lkIG1haW5SZXNvdXJjZURhdGFS
ZWNlaXZlZChjb25zdCBjaGFyKiBkYXRhLCBpbnQgbGVuZ3RoLCBsb25nIGxvbmcgZW5jb2RlZERh
dGFMZW5ndGgsIGJvb2wgYWxsQXRPbmNlKTsKLSAgICAgICAgdm9pZCBmaW5pc2hlZExvYWRpbmdN
YWluUmVzb3VyY2UoKTsKLSAgICAgICAgdm9pZCBmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKCk7
Ci0KLSAgICAgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBtYXliZUxvYWRSZXNvdXJjZShSZXNvdXJj
ZUxvYWRlciYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFVSTCYgb3JpZ2luYWxVUkwp
OwotICAgICAgICBXRUJDT1JFX0VYUE9SVCBib29sIG1heWJlTG9hZEZhbGxiYWNrRm9yUmVkaXJl
Y3QoUmVzb3VyY2VMb2FkZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJik7Ci0gICAgICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgbWF5YmVMb2FkRmFsbGJhY2tGb3JS
ZXNwb25zZShSZXNvdXJjZUxvYWRlciosIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICAg
ICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBtYXliZUxvYWRGYWxsYmFja0ZvckVycm9yKFJlc291cmNl
TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwotCi0gICAgICAgIGJvb2wgbWF5YmVMb2Fk
U3luY2hyb25vdXNseShSZXNvdXJjZVJlcXVlc3QmLCBSZXNvdXJjZUVycm9yJiwgUmVzb3VyY2VS
ZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+Jik7Ci0gICAgICAgIHZvaWQgbWF5YmVMb2Fk
RmFsbGJhY2tTeW5jaHJvbm91c2x5KGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIFJlc291cmNlRXJy
b3ImLCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4mKTsKLQotICAgICAg
ICBib29sIGNhbkNhY2hlSW5QYWdlQ2FjaGUoKTsKLQotICAgICAgICBTdGF0dXMgc3RhdHVzKCkg
Y29uc3Q7ICAKLSAgICAgICAgYm9vbCB1cGRhdGUoKTsKLSAgICAgICAgYm9vbCBzd2FwQ2FjaGUo
KTsKLSAgICAgICAgdm9pZCBhYm9ydCgpOwotCi0gICAgICAgIHZvaWQgc2V0RE9NQXBwbGljYXRp
b25DYWNoZShET01BcHBsaWNhdGlvbkNhY2hlKik7Ci0gICAgICAgIHZvaWQgbm90aWZ5RE9NQXBw
bGljYXRpb25DYWNoZShFdmVudElELCBpbnQgcHJvZ3Jlc3NUb3RhbCwgaW50IHByb2dyZXNzRG9u
ZSk7Ci0KLSAgICAgICAgdm9pZCBzdG9wTG9hZGluZ0luRnJhbWUoRnJhbWUqKTsKLQotICAgICAg
ICB2b2lkIHN0b3BEZWZlcnJpbmdFdmVudHMoKTsgLy8gQWxzbyByYWlzZXMgdGhlIGV2ZW50cyB0
aGF0IGhhdmUgYmVlbiBxdWV1ZWQgdXAuCi0KLSAgICAgICAgdm9pZCBmaWxsUmVzb3VyY2VMaXN0
KFJlc291cmNlSW5mb0xpc3QqKTsKLSAgICAgICAgQ2FjaGVJbmZvIGFwcGxpY2F0aW9uQ2FjaGVJ
bmZvKCk7Ci0KLSAgICAgICAgYm9vbCBzaG91bGRMb2FkUmVzb3VyY2VGcm9tQXBwbGljYXRpb25D
YWNoZShjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqJik7
Ci0gICAgICAgIGJvb2wgZ2V0QXBwbGljYXRpb25DYWNoZUZhbGxiYWNrUmVzb3VyY2UoY29uc3Qg
UmVzb3VyY2VSZXF1ZXN0JiwgQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiYsIEFwcGxpY2F0aW9u
Q2FjaGUqID0gbnVsbHB0cik7Ci0KLSAgICBwcml2YXRlOgotICAgICAgICBib29sIGlzQXBwbGlj
YXRpb25DYWNoZUVuYWJsZWQoKTsKLSAgICAgICAgYm9vbCBpc0FwcGxpY2F0aW9uQ2FjaGVCbG9j
a2VkRm9yUmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmKTsKLQotICAgICAgICBzdHJ1Y3Qg
RGVmZXJyZWRFdmVudCB7Ci0gICAgICAgICAgICBFdmVudElEIGV2ZW50SUQ7Ci0gICAgICAgICAg
ICBpbnQgcHJvZ3Jlc3NUb3RhbDsKLSAgICAgICAgICAgIGludCBwcm9ncmVzc0RvbmU7Ci0gICAg
ICAgICAgICBEZWZlcnJlZEV2ZW50KEV2ZW50SUQgaWQsIGludCB0b3RhbCwgaW50IGRvbmUpIDog
ZXZlbnRJRChpZCksIHByb2dyZXNzVG90YWwodG90YWwpLCBwcm9ncmVzc0RvbmUoZG9uZSkgeyB9
Ci0gICAgICAgIH07Ci0KLSAgICAgICAgRE9NQXBwbGljYXRpb25DYWNoZSogbV9kb21BcHBsaWNh
dGlvbkNhY2hlOwotICAgICAgICBEb2N1bWVudExvYWRlciYgbV9kb2N1bWVudExvYWRlcjsKLSAg
ICAgICAgYm9vbCBtX2RlZmVyc0V2ZW50czsgLy8gRXZlbnRzIGFyZSBkZWZlcnJlZCB1bnRpbCBh
ZnRlciBkb2N1bWVudCBvbmxvYWQuCi0gICAgICAgIFZlY3RvcjxEZWZlcnJlZEV2ZW50PiBtX2Rl
ZmVycmVkRXZlbnRzOwotCi0gICAgICAgIHZvaWQgZGlzcGF0Y2hET01FdmVudChFdmVudElELCBp
bnQgcHJvZ3Jlc3NUb3RhbCwgaW50IHByb2dyZXNzRG9uZSk7Ci0KLSAgICAgICAgZnJpZW5kIGNs
YXNzIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDsKLSAgICAgICAgZnJpZW5kIGNsYXNzIEFwcGxpY2F0
aW9uQ2FjaGVTdG9yYWdlOwotCi0gICAgICAgIGJvb2wgc2NoZWR1bGVMb2FkRmFsbGJhY2tSZXNv
dXJjZUZyb21BcHBsaWNhdGlvbkNhY2hlKFJlc291cmNlTG9hZGVyKiwgQXBwbGljYXRpb25DYWNo
ZSogPSBudWxscHRyKTsKLSAgICAgICAgdm9pZCBzZXRDYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hl
R3JvdXAoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCk7Ci0gICAgICAgIEFwcGxpY2F0aW9u
Q2FjaGVHcm91cCogY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKCkgY29uc3QgeyByZXR1
cm4gbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXA7IH0KLSAgICAgICAgdm9pZCBzZXRB
cHBsaWNhdGlvbkNhY2hlKFBhc3NSZWZQdHI8QXBwbGljYXRpb25DYWNoZT4gYXBwbGljYXRpb25D
YWNoZSk7Ci0gICAgICAgIEFwcGxpY2F0aW9uQ2FjaGUqIGFwcGxpY2F0aW9uQ2FjaGUoKSBjb25z
dCB7IHJldHVybiBtX2FwcGxpY2F0aW9uQ2FjaGUuZ2V0KCk7IH0KLSAgICAgICAgQXBwbGljYXRp
b25DYWNoZSogbWFpblJlc291cmNlQXBwbGljYXRpb25DYWNoZSgpIGNvbnN0IHsgcmV0dXJuIG1f
bWFpblJlc291cmNlQXBwbGljYXRpb25DYWNoZS5nZXQoKTsgfQotICAgICAgICBib29sIG1heWJl
TG9hZEZhbGxiYWNrRm9yTWFpbkVycm9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJl
c291cmNlRXJyb3ImKTsKLQotICAgICAgICAvLyBUaGUgYXBwbGljYXRpb24gY2FjaGUgdGhhdCB0
aGUgZG9jdW1lbnQgbG9hZGVyIGlzIGFzc29jaWF0ZWQgd2l0aCAoaWYgYW55KS4KLSAgICAgICAg
UmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+IG1fYXBwbGljYXRpb25DYWNoZTsKLQotICAgICAgICAv
LyBCZWZvcmUgYW4gYXBwbGljYXRpb24gY2FjaGUgaGFzIGZpbmlzaGVkIGxvYWRpbmcsIHRoaXMg
d2lsbCBiZSB0aGUgY2FuZGlkYXRlIGFwcGxpY2F0aW9uCi0gICAgICAgIC8vIGdyb3VwIHRoYXQg
dGhlIGRvY3VtZW50IGxvYWRlciBpcyBhc3NvY2lhdGVkIHdpdGguCi0gICAgICAgIEFwcGxpY2F0
aW9uQ2FjaGVHcm91cCogbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXA7Ci0KLSAgICAg
ICAgLy8gVGhpcyBpcyB0aGUgYXBwbGljYXRpb24gY2FjaGUgdGhlIG1haW4gcmVzb3VyY2Ugd2Fz
IGxvYWRlZCBmcm9tIChpZiBhbnkpLgotICAgICAgICBSZWZQdHI8QXBwbGljYXRpb25DYWNoZT4g
bV9tYWluUmVzb3VyY2VBcHBsaWNhdGlvbkNhY2hlOworCitjbGFzcyBBcHBsaWNhdGlvbkNhY2hl
OworY2xhc3MgQXBwbGljYXRpb25DYWNoZUdyb3VwOworY2xhc3MgQXBwbGljYXRpb25DYWNoZVJl
c291cmNlOworY2xhc3MgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U7CitjbGFzcyBET01BcHBsaWNh
dGlvbkNhY2hlOworY2xhc3MgRG9jdW1lbnRMb2FkZXI7CitjbGFzcyBGcmFtZTsKK2NsYXNzIFJl
c291cmNlRXJyb3I7CitjbGFzcyBSZXNvdXJjZUxvYWRlcjsKK2NsYXNzIFJlc291cmNlUmVxdWVz
dDsKK2NsYXNzIFJlc291cmNlUmVzcG9uc2U7CitjbGFzcyBTaGFyZWRCdWZmZXI7CitjbGFzcyBT
dWJzdGl0dXRlRGF0YTsKKworY2xhc3MgQXBwbGljYXRpb25DYWNoZUhvc3QgeworICAgIFdURl9N
QUtFX05PTkNPUFlBQkxFKEFwcGxpY2F0aW9uQ2FjaGVIb3N0KTsgV1RGX01BS0VfRkFTVF9BTExP
Q0FURUQ7CitwdWJsaWM6CisgICAgLy8gVGhlIFN0YXR1cyBudW1lcmljIHZhbHVlcyBhcmUgc3Bl
Y2lmaWVkIGluIHRoZSBIVE1MNSBzcGVjLgorICAgIGVudW0gU3RhdHVzIHsKKyAgICAgICAgVU5D
QUNIRUQgPSAwLAorICAgICAgICBJRExFID0gMSwKKyAgICAgICAgQ0hFQ0tJTkcgPSAyLAorICAg
ICAgICBET1dOTE9BRElORyA9IDMsCisgICAgICAgIFVQREFURVJFQURZID0gNCwKKyAgICAgICAg
T0JTT0xFVEUgPSA1CisgICAgfTsKKworICAgIHN0cnVjdCBDYWNoZUluZm8geworICAgICAgICBV
UkwgbWFuaWZlc3Q7CisgICAgICAgIGRvdWJsZSBjcmVhdGlvblRpbWU7CisgICAgICAgIGRvdWJs
ZSB1cGRhdGVUaW1lOworICAgICAgICBsb25nIGxvbmcgc2l6ZTsKKyAgICB9OworCisgICAgc3Ry
dWN0IFJlc291cmNlSW5mbyB7CisgICAgICAgIFVSTCByZXNvdXJjZTsKKyAgICAgICAgYm9vbCBp
c01hc3RlcjsKKyAgICAgICAgYm9vbCBpc01hbmlmZXN0OworICAgICAgICBib29sIGlzRmFsbGJh
Y2s7CisgICAgICAgIGJvb2wgaXNGb3JlaWduOworICAgICAgICBib29sIGlzRXhwbGljaXQ7Cisg
ICAgICAgIGxvbmcgbG9uZyBzaXplOworICAgIH07CisKKyAgICBleHBsaWNpdCBBcHBsaWNhdGlv
bkNhY2hlSG9zdChEb2N1bWVudExvYWRlciYpOworICAgIH5BcHBsaWNhdGlvbkNhY2hlSG9zdCgp
OworCisgICAgc3RhdGljIFVSTCBjcmVhdGVGaWxlVVJMKGNvbnN0IFN0cmluZyYpOworCisgICAg
dm9pZCBzZWxlY3RDYWNoZVdpdGhvdXRNYW5pZmVzdCgpOworICAgIHZvaWQgc2VsZWN0Q2FjaGVX
aXRoTWFuaWZlc3QoY29uc3QgVVJMJiBtYW5pZmVzdFVSTCk7CisKKyAgICB2b2lkIG1heWJlTG9h
ZE1haW5SZXNvdXJjZShSZXNvdXJjZVJlcXVlc3QmLCBTdWJzdGl0dXRlRGF0YSYpOworICAgIHZv
aWQgbWF5YmVMb2FkTWFpblJlc291cmNlRm9yUmVkaXJlY3QoUmVzb3VyY2VSZXF1ZXN0JiwgU3Vi
c3RpdHV0ZURhdGEmKTsKKyAgICBib29sIG1heWJlTG9hZEZhbGxiYWNrRm9yTWFpblJlc3BvbnNl
KGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKKyAgICB2
b2lkIG1haW5SZXNvdXJjZURhdGFSZWNlaXZlZChjb25zdCBjaGFyKiBkYXRhLCBpbnQgbGVuZ3Ro
LCBsb25nIGxvbmcgZW5jb2RlZERhdGFMZW5ndGgsIGJvb2wgYWxsQXRPbmNlKTsKKyAgICB2b2lk
IGZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZSgpOworICAgIHZvaWQgZmFpbGVkTG9hZGluZ01h
aW5SZXNvdXJjZSgpOworCisgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBtYXliZUxvYWRSZXNvdXJj
ZShSZXNvdXJjZUxvYWRlciYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFVSTCYgb3Jp
Z2luYWxVUkwpOworICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgbWF5YmVMb2FkRmFsbGJhY2tGb3JS
ZWRpcmVjdChSZXNvdXJjZUxvYWRlciosIFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmKTsKKyAgICBXRUJDT1JFX0VYUE9SVCBib29sIG1heWJlTG9hZEZhbGxiYWNrRm9y
UmVzcG9uc2UoUmVzb3VyY2VMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CisgICAg
V0VCQ09SRV9FWFBPUlQgYm9vbCBtYXliZUxvYWRGYWxsYmFja0ZvckVycm9yKFJlc291cmNlTG9h
ZGVyKiwgY29uc3QgUmVzb3VyY2VFcnJvciYpOworCisgICAgYm9vbCBtYXliZUxvYWRTeW5jaHJv
bm91c2x5KFJlc291cmNlUmVxdWVzdCYsIFJlc291cmNlRXJyb3ImLCBSZXNvdXJjZVJlc3BvbnNl
JiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4mKTsKKyAgICB2b2lkIG1heWJlTG9hZEZhbGxiYWNrU3lu
Y2hyb25vdXNseShjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBSZXNvdXJjZUVycm9yJiwgUmVzb3Vy
Y2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+Jik7CisKKyAgICBib29sIGNhbkNhY2hl
SW5QYWdlQ2FjaGUoKTsKKworICAgIFN0YXR1cyBzdGF0dXMoKSBjb25zdDsKKyAgICBib29sIHVw
ZGF0ZSgpOworICAgIGJvb2wgc3dhcENhY2hlKCk7CisgICAgdm9pZCBhYm9ydCgpOworCisgICAg
dm9pZCBzZXRET01BcHBsaWNhdGlvbkNhY2hlKERPTUFwcGxpY2F0aW9uQ2FjaGUqKTsKKyAgICB2
b2lkIG5vdGlmeURPTUFwcGxpY2F0aW9uQ2FjaGUoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5
cGUsIGludCBwcm9ncmVzc1RvdGFsLCBpbnQgcHJvZ3Jlc3NEb25lKTsKKworICAgIHZvaWQgc3Rv
cExvYWRpbmdJbkZyYW1lKEZyYW1lJik7CisKKyAgICB2b2lkIHN0b3BEZWZlcnJpbmdFdmVudHMo
KTsgLy8gQWxzbyByYWlzZXMgdGhlIGV2ZW50cyB0aGF0IGhhdmUgYmVlbiBxdWV1ZWQgdXAuCisK
KyAgICBWZWN0b3I8UmVzb3VyY2VJbmZvPiByZXNvdXJjZUxpc3QoKTsKKyAgICBDYWNoZUluZm8g
YXBwbGljYXRpb25DYWNoZUluZm8oKTsKKworICAgIGJvb2wgc2hvdWxkTG9hZFJlc291cmNlRnJv
bUFwcGxpY2F0aW9uQ2FjaGUoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgQXBwbGljYXRpb25DYWNo
ZVJlc291cmNlKiYpOworICAgIGJvb2wgZ2V0QXBwbGljYXRpb25DYWNoZUZhbGxiYWNrUmVzb3Vy
Y2UoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiYsIEFw
cGxpY2F0aW9uQ2FjaGUqID0gbnVsbHB0cik7CisKK3ByaXZhdGU6CisgICAgZnJpZW5kIGNsYXNz
IEFwcGxpY2F0aW9uQ2FjaGVHcm91cDsKKworICAgIHN0cnVjdCBEZWZlcnJlZEV2ZW50IHsKKyAg
ICAgICAgQXRvbWljU3RyaW5nIGV2ZW50VHlwZTsKKyAgICAgICAgaW50IHByb2dyZXNzVG90YWw7
CisgICAgICAgIGludCBwcm9ncmVzc0RvbmU7CiAgICAgfTsKIAorICAgIGJvb2wgaXNBcHBsaWNh
dGlvbkNhY2hlRW5hYmxlZCgpOworICAgIGJvb2wgaXNBcHBsaWNhdGlvbkNhY2hlQmxvY2tlZEZv
clJlcXVlc3QoY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7CisKKyAgICB2b2lkIGRpc3BhdGNoRE9N
RXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGludCBwcm9ncmVzc1RvdGFsLCBp
bnQgcHJvZ3Jlc3NEb25lKTsKKworICAgIGJvb2wgc2NoZWR1bGVMb2FkRmFsbGJhY2tSZXNvdXJj
ZUZyb21BcHBsaWNhdGlvbkNhY2hlKFJlc291cmNlTG9hZGVyKiwgQXBwbGljYXRpb25DYWNoZSog
PSBudWxscHRyKTsKKyAgICB2b2lkIHNldENhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cChB
cHBsaWNhdGlvbkNhY2hlR3JvdXAqKTsKKyAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGNhbmRp
ZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCgpIGNvbnN0IHsgcmV0dXJuIG1fY2FuZGlkYXRlQXBw
bGljYXRpb25DYWNoZUdyb3VwOyB9CisgICAgdm9pZCBzZXRBcHBsaWNhdGlvbkNhY2hlKFJlZlB0
cjxBcHBsaWNhdGlvbkNhY2hlPiYmKTsKKyAgICBBcHBsaWNhdGlvbkNhY2hlKiBhcHBsaWNhdGlv
bkNhY2hlKCkgY29uc3QgeyByZXR1cm4gbV9hcHBsaWNhdGlvbkNhY2hlLmdldCgpOyB9CisgICAg
QXBwbGljYXRpb25DYWNoZSogbWFpblJlc291cmNlQXBwbGljYXRpb25DYWNoZSgpIGNvbnN0IHsg
cmV0dXJuIG1fbWFpblJlc291cmNlQXBwbGljYXRpb25DYWNoZS5nZXQoKTsgfQorICAgIGJvb2wg
bWF5YmVMb2FkRmFsbGJhY2tGb3JNYWluRXJyb3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgY29u
c3QgUmVzb3VyY2VFcnJvciYpOworCisgICAgRE9NQXBwbGljYXRpb25DYWNoZSogbV9kb21BcHBs
aWNhdGlvbkNhY2hlIHsgbnVsbHB0ciB9OworICAgIERvY3VtZW50TG9hZGVyJiBtX2RvY3VtZW50
TG9hZGVyOworCisgICAgYm9vbCBtX2RlZmVyc0V2ZW50cyB7IHRydWUgfTsgLy8gRXZlbnRzIGFy
ZSBkZWZlcnJlZCB1bnRpbCBhZnRlciBkb2N1bWVudCBvbmxvYWQuCisgICAgVmVjdG9yPERlZmVy
cmVkRXZlbnQ+IG1fZGVmZXJyZWRFdmVudHM7CisKKyAgICAvLyBUaGUgYXBwbGljYXRpb24gY2Fj
aGUgdGhhdCB0aGUgZG9jdW1lbnQgbG9hZGVyIGlzIGFzc29jaWF0ZWQgd2l0aCAoaWYgYW55KS4K
KyAgICBSZWZQdHI8QXBwbGljYXRpb25DYWNoZT4gbV9hcHBsaWNhdGlvbkNhY2hlOworCisgICAg
Ly8gQmVmb3JlIGFuIGFwcGxpY2F0aW9uIGNhY2hlIGhhcyBmaW5pc2hlZCBsb2FkaW5nLCB0aGlz
IHdpbGwgYmUgdGhlIGNhbmRpZGF0ZSBhcHBsaWNhdGlvbgorICAgIC8vIGdyb3VwIHRoYXQgdGhl
IGRvY3VtZW50IGxvYWRlciBpcyBhc3NvY2lhdGVkIHdpdGguCisgICAgQXBwbGljYXRpb25DYWNo
ZUdyb3VwKiBtX2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCB7IG51bGxwdHIgfTsKKwor
ICAgIC8vIFRoaXMgaXMgdGhlIGFwcGxpY2F0aW9uIGNhY2hlIHRoZSBtYWluIHJlc291cmNlIHdh
cyBsb2FkZWQgZnJvbSAoaWYgYW55KS4KKyAgICBSZWZQdHI8QXBwbGljYXRpb25DYWNoZT4gbV9t
YWluUmVzb3VyY2VBcHBsaWNhdGlvbkNhY2hlOworfTsKKwogfSAgLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlv
bkNhY2hlU3RvcmFnZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGlj
YXRpb25DYWNoZVN0b3JhZ2UuY3BwCmluZGV4IGRmMTAzZTRhMmI4ZWI0NTU4M2UwZWE5MzY1N2Zk
ZTZjODYxMDQ5MDYuLmY0ZmE5NWI1MTdlYzc3OTE2MjRmYzBmMjVhNjU2YjBjMDk0NDE0NzcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hl
U3RvcmFnZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0
aW9uQ2FjaGVTdG9yYWdlLmNwcApAQCAtMTI2LDM2ICsxMjYsMzIgQEAgQXBwbGljYXRpb25DYWNo
ZUdyb3VwKiBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6bG9hZENhY2hlR3JvdXAoY29uc3QgVVJM
JiBtYW5pZmUKICAgICBpZiAoIWNhY2hlKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICAg
ICAgCi0gICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCA9IG5ldyBBcHBsaWNhdGlvbkNh
Y2hlR3JvdXAoKnRoaXMsIG1hbmlmZXN0VVJMKTsKLSAgICAgIAotICAgIGdyb3VwLT5zZXRTdG9y
YWdlSUQoc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHN0YXRlbWVudC5nZXRDb2x1bW5JbnQ2NCgwKSkp
OwotICAgIGdyb3VwLT5zZXROZXdlc3RDYWNoZShXVEZNb3ZlKGNhY2hlKSk7Ci0KLSAgICByZXR1
cm4gZ3JvdXA7CisgICAgYXV0byYgZ3JvdXAgPSAqbmV3IEFwcGxpY2F0aW9uQ2FjaGVHcm91cCgq
dGhpcywgbWFuaWZlc3RVUkwpOworICAgIGdyb3VwLnNldFN0b3JhZ2VJRChzdGF0aWNfY2FzdDx1
bnNpZ25lZD4oc3RhdGVtZW50LmdldENvbHVtbkludDY0KDApKSk7CisgICAgZ3JvdXAuc2V0TmV3
ZXN0Q2FjaGUoY2FjaGUucmVsZWFzZU5vbk51bGwoKSk7CisgICAgcmV0dXJuICZncm91cDsKIH0g
ICAgCiAKIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmZp
bmRPckNyZWF0ZUNhY2hlR3JvdXAoY29uc3QgVVJMJiBtYW5pZmVzdFVSTCkKIHsKICAgICBBU1NF
UlQoIW1hbmlmZXN0VVJMLmhhc0ZyYWdtZW50SWRlbnRpZmllcigpKTsKIAotICAgIENhY2hlR3Jv
dXBNYXA6OkFkZFJlc3VsdCByZXN1bHQgPSBtX2NhY2hlc0luTWVtb3J5LmFkZChtYW5pZmVzdFVS
TCwgbnVsbHB0cik7Ci0gICAgCisgICAgYXV0byByZXN1bHQgPSBtX2NhY2hlc0luTWVtb3J5LmFk
ZChtYW5pZmVzdFVSTCwgbnVsbHB0cik7CiAgICAgaWYgKCFyZXN1bHQuaXNOZXdFbnRyeSkgewog
ICAgICAgICBBU1NFUlQocmVzdWx0Lml0ZXJhdG9yLT52YWx1ZSk7CiAgICAgICAgIHJldHVybiBy
ZXN1bHQuaXRlcmF0b3ItPnZhbHVlOwogICAgIH0KIAogICAgIC8vIExvb2sgdXAgdGhlIGdyb3Vw
IGluIHRoZSBkYXRhYmFzZQotICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAgPSBsb2Fk
Q2FjaGVHcm91cChtYW5pZmVzdFVSTCk7CisgICAgYXV0byogZ3JvdXAgPSBsb2FkQ2FjaGVHcm91
cChtYW5pZmVzdFVSTCk7CiAgICAgCiAgICAgLy8gSWYgdGhlIGdyb3VwIHdhcyBub3QgZm91bmQg
d2UgbmVlZCB0byBjcmVhdGUgaXQKICAgICBpZiAoIWdyb3VwKSB7CiAgICAgICAgIGdyb3VwID0g
bmV3IEFwcGxpY2F0aW9uQ2FjaGVHcm91cCgqdGhpcywgbWFuaWZlc3RVUkwpOwogICAgICAgICBt
X2NhY2hlSG9zdFNldC5hZGQodXJsSG9zdEhhc2gobWFuaWZlc3RVUkwpKTsKICAgICB9Ci0gICAg
CisKICAgICByZXN1bHQuaXRlcmF0b3ItPnZhbHVlID0gZ3JvdXA7Ci0gICAgCiAgICAgcmV0dXJu
IGdyb3VwOwogfQogCkBAIC0yNDQsMjAgKzI0MCwxOCBAQCBBcHBsaWNhdGlvbkNhY2hlR3JvdXAq
IEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpjYWNoZUdyb3VwRm9yVVJMKGNvbnN0IFVSTCYgdXJs
KQogICAgICAgICBpZiAoIWNhY2hlKQogICAgICAgICAgICAgY29udGludWU7CiAKLSAgICAgICAg
QXBwbGljYXRpb25DYWNoZVJlc291cmNlKiByZXNvdXJjZSA9IGNhY2hlLT5yZXNvdXJjZUZvclVS
TCh1cmwpOworICAgICAgICBhdXRvKiByZXNvdXJjZSA9IGNhY2hlLT5yZXNvdXJjZUZvclVSTCh1
cmwpOwogICAgICAgICBpZiAoIXJlc291cmNlKQogICAgICAgICAgICAgY29udGludWU7CiAgICAg
ICAgIGlmIChyZXNvdXJjZS0+dHlwZSgpICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpGb3Jl
aWduKQogICAgICAgICAgICAgY29udGludWU7CiAKLSAgICAgICAgQXBwbGljYXRpb25DYWNoZUdy
b3VwKiBncm91cCA9IG5ldyBBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKnRoaXMsIG1hbmlmZXN0VVJM
KTsKLSAgICAgICAgCi0gICAgICAgIGdyb3VwLT5zZXRTdG9yYWdlSUQoc3RhdGljX2Nhc3Q8dW5z
aWduZWQ+KHN0YXRlbWVudC5nZXRDb2x1bW5JbnQ2NCgwKSkpOwotICAgICAgICBncm91cC0+c2V0
TmV3ZXN0Q2FjaGUoV1RGTW92ZShjYWNoZSkpOwotICAgICAgICAKLSAgICAgICAgbV9jYWNoZXNJ
bk1lbW9yeS5zZXQoZ3JvdXAtPm1hbmlmZXN0VVJMKCksIGdyb3VwKTsKLSAgICAgICAgCi0gICAg
ICAgIHJldHVybiBncm91cDsKKyAgICAgICAgYXV0byYgZ3JvdXAgPSAqbmV3IEFwcGxpY2F0aW9u
Q2FjaGVHcm91cCgqdGhpcywgbWFuaWZlc3RVUkwpOworICAgICAgICBncm91cC5zZXRTdG9yYWdl
SUQoc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHN0YXRlbWVudC5nZXRDb2x1bW5JbnQ2NCgwKSkpOwor
ICAgICAgICBncm91cC5zZXROZXdlc3RDYWNoZShjYWNoZS5yZWxlYXNlTm9uTnVsbCgpKTsKKyAg
ICAgICAgbV9jYWNoZXNJbk1lbW9yeS5zZXQoZ3JvdXAubWFuaWZlc3RVUkwoKSwgJmdyb3VwKTsK
KworICAgICAgICByZXR1cm4gJmdyb3VwOwogICAgIH0KIAogICAgIGlmIChyZXN1bHQgIT0gU1FM
SVRFX0RPTkUpCkBAIC0zMjAsMTQgKzMxNCwxMyBAQCBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIEFw
cGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpmYWxsYmFja0NhY2hlR3JvdXBGb3JVUkwoY29uc3QgVQog
ICAgICAgICBpZiAoY2FjaGUtPnJlc291cmNlRm9yVVJMKGZhbGxiYWNrVVJMKS0+dHlwZSgpICYg
QXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpGb3JlaWduKQogICAgICAgICAgICAgY29udGludWU7
CiAKLSAgICAgICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCA9IG5ldyBBcHBsaWNhdGlv
bkNhY2hlR3JvdXAoKnRoaXMsIG1hbmlmZXN0VVJMKTsKLSAgICAgICAgCi0gICAgICAgIGdyb3Vw
LT5zZXRTdG9yYWdlSUQoc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHN0YXRlbWVudC5nZXRDb2x1bW5J
bnQ2NCgwKSkpOwotICAgICAgICBncm91cC0+c2V0TmV3ZXN0Q2FjaGUoV1RGTW92ZShjYWNoZSkp
OwotICAgICAgICAKLSAgICAgICAgbV9jYWNoZXNJbk1lbW9yeS5zZXQoZ3JvdXAtPm1hbmlmZXN0
VVJMKCksIGdyb3VwKTsKLSAgICAgICAgCi0gICAgICAgIHJldHVybiBncm91cDsKKyAgICAgICAg
YXV0byYgZ3JvdXAgPSAqbmV3IEFwcGxpY2F0aW9uQ2FjaGVHcm91cCgqdGhpcywgbWFuaWZlc3RV
UkwpOworICAgICAgICBncm91cC5zZXRTdG9yYWdlSUQoc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHN0
YXRlbWVudC5nZXRDb2x1bW5JbnQ2NCgwKSkpOworICAgICAgICBncm91cC5zZXROZXdlc3RDYWNo
ZShjYWNoZS5yZWxlYXNlTm9uTnVsbCgpKTsKKworICAgICAgICBtX2NhY2hlc0luTWVtb3J5LnNl
dChncm91cC5tYW5pZmVzdFVSTCgpLCAmZ3JvdXApOworCisgICAgICAgIHJldHVybiAmZ3JvdXA7
CiAgICAgfQogCiAgICAgaWYgKHJlc3VsdCAhPSBTUUxJVEVfRE9ORSkKQEAgLTMzNiwzMyArMzI5
LDMzIEBAIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmZh
bGxiYWNrQ2FjaGVHcm91cEZvclVSTChjb25zdCBVCiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAK
LXZvaWQgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmNhY2hlR3JvdXBEZXN0cm95ZWQoQXBwbGlj
YXRpb25DYWNoZUdyb3VwKiBncm91cCkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmNh
Y2hlR3JvdXBEZXN0cm95ZWQoQXBwbGljYXRpb25DYWNoZUdyb3VwJiBncm91cCkKIHsKLSAgICBp
ZiAoZ3JvdXAtPmlzT2Jzb2xldGUoKSkgewotICAgICAgICBBU1NFUlQoIWdyb3VwLT5zdG9yYWdl
SUQoKSk7Ci0gICAgICAgIEFTU0VSVChtX2NhY2hlc0luTWVtb3J5LmdldChncm91cC0+bWFuaWZl
c3RVUkwoKSkgIT0gZ3JvdXApOworICAgIGlmIChncm91cC5pc09ic29sZXRlKCkpIHsKKyAgICAg
ICAgQVNTRVJUKCFncm91cC5zdG9yYWdlSUQoKSk7CisgICAgICAgIEFTU0VSVChtX2NhY2hlc0lu
TWVtb3J5LmdldChncm91cC5tYW5pZmVzdFVSTCgpKSAhPSAmZ3JvdXApOwogICAgICAgICByZXR1
cm47CiAgICAgfQogCi0gICAgQVNTRVJUKG1fY2FjaGVzSW5NZW1vcnkuZ2V0KGdyb3VwLT5tYW5p
ZmVzdFVSTCgpKSA9PSBncm91cCk7CisgICAgQVNTRVJUKG1fY2FjaGVzSW5NZW1vcnkuZ2V0KGdy
b3VwLm1hbmlmZXN0VVJMKCkpID09ICZncm91cCk7CiAKLSAgICBtX2NhY2hlc0luTWVtb3J5LnJl
bW92ZShncm91cC0+bWFuaWZlc3RVUkwoKSk7CisgICAgbV9jYWNoZXNJbk1lbW9yeS5yZW1vdmUo
Z3JvdXAubWFuaWZlc3RVUkwoKSk7CiAgICAgCiAgICAgLy8gSWYgdGhlIGNhY2hlIGdyb3VwIGlz
IGhhbGYtY3JlYXRlZCwgd2UgZG9uJ3Qgd2FudCBpdCBpbiB0aGUgc2F2ZWQgc2V0IChhcyBpdCBp
cyBub3Qgc3RvcmVkIGluIGRhdGFiYXNlKS4KLSAgICBpZiAoIWdyb3VwLT5zdG9yYWdlSUQoKSkK
LSAgICAgICAgbV9jYWNoZUhvc3RTZXQucmVtb3ZlKHVybEhvc3RIYXNoKGdyb3VwLT5tYW5pZmVz
dFVSTCgpKSk7CisgICAgaWYgKCFncm91cC5zdG9yYWdlSUQoKSkKKyAgICAgICAgbV9jYWNoZUhv
c3RTZXQucmVtb3ZlKHVybEhvc3RIYXNoKGdyb3VwLm1hbmlmZXN0VVJMKCkpKTsKIH0KIAotdm9p
ZCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6Y2FjaGVHcm91cE1hZGVPYnNvbGV0ZShBcHBsaWNh
dGlvbkNhY2hlR3JvdXAqIGdyb3VwKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6Y2Fj
aGVHcm91cE1hZGVPYnNvbGV0ZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAmIGdyb3VwKQogewotICAg
IEFTU0VSVChtX2NhY2hlc0luTWVtb3J5LmdldChncm91cC0+bWFuaWZlc3RVUkwoKSkgPT0gZ3Jv
dXApOwotICAgIEFTU0VSVChtX2NhY2hlSG9zdFNldC5jb250YWlucyh1cmxIb3N0SGFzaChncm91
cC0+bWFuaWZlc3RVUkwoKSkpKTsKKyAgICBBU1NFUlQobV9jYWNoZXNJbk1lbW9yeS5nZXQoZ3Jv
dXAubWFuaWZlc3RVUkwoKSkgPT0gJmdyb3VwKTsKKyAgICBBU1NFUlQobV9jYWNoZUhvc3RTZXQu
Y29udGFpbnModXJsSG9zdEhhc2goZ3JvdXAubWFuaWZlc3RVUkwoKSkpKTsKIAotICAgIGlmIChB
cHBsaWNhdGlvbkNhY2hlKiBuZXdlc3RDYWNoZSA9IGdyb3VwLT5uZXdlc3RDYWNoZSgpKQorICAg
IGlmIChhdXRvKiBuZXdlc3RDYWNoZSA9IGdyb3VwLm5ld2VzdENhY2hlKCkpCiAgICAgICAgIHJl
bW92ZShuZXdlc3RDYWNoZSk7CiAKLSAgICBtX2NhY2hlc0luTWVtb3J5LnJlbW92ZShncm91cC0+
bWFuaWZlc3RVUkwoKSk7Ci0gICAgbV9jYWNoZUhvc3RTZXQucmVtb3ZlKHVybEhvc3RIYXNoKGdy
b3VwLT5tYW5pZmVzdFVSTCgpKSk7CisgICAgbV9jYWNoZXNJbk1lbW9yeS5yZW1vdmUoZ3JvdXAu
bWFuaWZlc3RVUkwoKSk7CisgICAgbV9jYWNoZUhvc3RTZXQucmVtb3ZlKHVybEhvc3RIYXNoKGdy
b3VwLm1hbmlmZXN0VVJMKCkpKTsKIH0KIAogY29uc3QgU3RyaW5nJiBBcHBsaWNhdGlvbkNhY2hl
U3RvcmFnZTo6Y2FjaGVEaXJlY3RvcnkoKSBjb25zdApAQCAtOTk2LDcgKzk4OSw3IEBAIGJvb2wg
QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmNoZWNrT3JpZ2luUXVvdGEoQXBwbGljYXRpb25DYWNo
ZUdyb3VwKiBncm91cCwgQXBwCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLWJvb2wgQXBwbGljYXRp
b25DYWNoZVN0b3JhZ2U6OnN0b3JlTmV3ZXN0Q2FjaGUoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBn
cm91cCwgQXBwbGljYXRpb25DYWNoZSogb2xkQ2FjaGUsIEZhaWx1cmVSZWFzb24mIGZhaWx1cmVS
ZWFzb24pCitib29sIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpzdG9yZU5ld2VzdENhY2hlKEFw
cGxpY2F0aW9uQ2FjaGVHcm91cCYgZ3JvdXAsIEFwcGxpY2F0aW9uQ2FjaGUqIG9sZENhY2hlLCBG
YWlsdXJlUmVhc29uJiBmYWlsdXJlUmVhc29uKQogewogICAgIG9wZW5EYXRhYmFzZSh0cnVlKTsK
IApAQCAtMTAxMiwyNCArMTAwNSwyNCBAQCBib29sIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpz
dG9yZU5ld2VzdENhY2hlKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAsIEFwcAogCiAgICAg
Ly8gQ2hlY2sgaWYgdGhpcyB3b3VsZCByZWFjaCB0aGUgcGVyLW9yaWdpbiBxdW90YS4KICAgICBp
bnQ2NF90IHRvdGFsU3BhY2VOZWVkZWRJZ25vcmVkOwotICAgIGlmICghY2hlY2tPcmlnaW5RdW90
YShncm91cCwgb2xkQ2FjaGUsIGdyb3VwLT5uZXdlc3RDYWNoZSgpLCB0b3RhbFNwYWNlTmVlZGVk
SWdub3JlZCkpIHsKKyAgICBpZiAoIWNoZWNrT3JpZ2luUXVvdGEoJmdyb3VwLCBvbGRDYWNoZSwg
Z3JvdXAubmV3ZXN0Q2FjaGUoKSwgdG90YWxTcGFjZU5lZWRlZElnbm9yZWQpKSB7CiAgICAgICAg
IGZhaWx1cmVSZWFzb24gPSBPcmlnaW5RdW90YVJlYWNoZWQ7CiAgICAgICAgIHJldHVybiBmYWxz
ZTsKICAgICB9CiAKICAgICBHcm91cFN0b3JhZ2VJREpvdXJuYWwgZ3JvdXBTdG9yYWdlSURKb3Vy
bmFsOwotICAgIGlmICghZ3JvdXAtPnN0b3JhZ2VJRCgpKSB7CisgICAgaWYgKCFncm91cC5zdG9y
YWdlSUQoKSkgewogICAgICAgICAvLyBTdG9yZSB0aGUgZ3JvdXAKLSAgICAgICAgaWYgKCFzdG9y
ZShncm91cCwgJmdyb3VwU3RvcmFnZUlESm91cm5hbCkpIHsKKyAgICAgICAgaWYgKCFzdG9yZSgm
Z3JvdXAsICZncm91cFN0b3JhZ2VJREpvdXJuYWwpKSB7CiAgICAgICAgICAgICBjaGVja0Zvck1h
eFNpemVSZWFjaGVkKCk7CiAgICAgICAgICAgICBmYWlsdXJlUmVhc29uID0gaXNNYXhpbXVtU2l6
ZVJlYWNoZWQoKSA/IFRvdGFsUXVvdGFSZWFjaGVkIDogRGlza09yT3BlcmF0aW9uRmFpbHVyZTsK
ICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgfQogICAgIH0KICAgICAKLSAgICBB
U1NFUlQoZ3JvdXAtPm5ld2VzdENhY2hlKCkpOwotICAgIEFTU0VSVCghZ3JvdXAtPmlzT2Jzb2xl
dGUoKSk7Ci0gICAgQVNTRVJUKCFncm91cC0+bmV3ZXN0Q2FjaGUoKS0+c3RvcmFnZUlEKCkpOwor
ICAgIEFTU0VSVChncm91cC5uZXdlc3RDYWNoZSgpKTsKKyAgICBBU1NFUlQoIWdyb3VwLmlzT2Jz
b2xldGUoKSk7CisgICAgQVNTRVJUKCFncm91cC5uZXdlc3RDYWNoZSgpLT5zdG9yYWdlSUQoKSk7
CiAgICAgCiAgICAgLy8gTG9nIHRoZSBzdG9yYWdlSUQgY2hhbmdlcyB0byB0aGUgaW4tbWVtb3J5
IHJlc291cmNlIG9iamVjdHMuIFRoZSBqb3VybmFsCiAgICAgLy8gb2JqZWN0IHdpbGwgcm9sbCB0
aGVtIGJhY2sgYXV0b21hdGljYWxseSBpbiBjYXNlIGEgZGF0YWJhc2Ugb3BlcmF0aW9uCkBAIC0x
MDM3LDcgKzEwMzAsNyBAQCBib29sIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpzdG9yZU5ld2Vz
dENhY2hlKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAsIEFwcAogICAgIFJlc291cmNlU3Rv
cmFnZUlESm91cm5hbCByZXNvdXJjZVN0b3JhZ2VJREpvdXJuYWw7CiAKICAgICAvLyBTdG9yZSB0
aGUgbmV3ZXN0IGNhY2hlCi0gICAgaWYgKCFzdG9yZShncm91cC0+bmV3ZXN0Q2FjaGUoKSwgJnJl
c291cmNlU3RvcmFnZUlESm91cm5hbCkpIHsKKyAgICBpZiAoIXN0b3JlKGdyb3VwLm5ld2VzdENh
Y2hlKCksICZyZXNvdXJjZVN0b3JhZ2VJREpvdXJuYWwpKSB7CiAgICAgICAgIGNoZWNrRm9yTWF4
U2l6ZVJlYWNoZWQoKTsKICAgICAgICAgZmFpbHVyZVJlYXNvbiA9IGlzTWF4aW11bVNpemVSZWFj
aGVkKCkgPyBUb3RhbFF1b3RhUmVhY2hlZCA6IERpc2tPck9wZXJhdGlvbkZhaWx1cmU7CiAgICAg
ICAgIHJldHVybiBmYWxzZTsKQEAgLTEwNTEsOCArMTA0NCw4IEBAIGJvb2wgQXBwbGljYXRpb25D
YWNoZVN0b3JhZ2U6OnN0b3JlTmV3ZXN0Q2FjaGUoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91
cCwgQXBwCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9CiAgICAgCi0gICAgc3RhdGVtZW50
LmJpbmRJbnQ2NCgxLCBncm91cC0+bmV3ZXN0Q2FjaGUoKS0+c3RvcmFnZUlEKCkpOwotICAgIHN0
YXRlbWVudC5iaW5kSW50NjQoMiwgZ3JvdXAtPnN0b3JhZ2VJRCgpKTsKKyAgICBzdGF0ZW1lbnQu
YmluZEludDY0KDEsIGdyb3VwLm5ld2VzdENhY2hlKCktPnN0b3JhZ2VJRCgpKTsKKyAgICBzdGF0
ZW1lbnQuYmluZEludDY0KDIsIGdyb3VwLnN0b3JhZ2VJRCgpKTsKICAgICAKICAgICBpZiAoIWV4
ZWN1dGVTdGF0ZW1lbnQoc3RhdGVtZW50KSkgewogICAgICAgICBmYWlsdXJlUmVhc29uID0gRGlz
a09yT3BlcmF0aW9uRmFpbHVyZTsKQEAgLTEwNjUsMjIgKzEwNTgsMjQgQEAgYm9vbCBBcHBsaWNh
dGlvbkNhY2hlU3RvcmFnZTo6c3RvcmVOZXdlc3RDYWNoZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAq
IGdyb3VwLCBBcHAKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotYm9vbCBBcHBsaWNhdGlvbkNhY2hl
U3RvcmFnZTo6c3RvcmVOZXdlc3RDYWNoZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwKQor
Ym9vbCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6c3RvcmVOZXdlc3RDYWNoZShBcHBsaWNhdGlv
bkNhY2hlR3JvdXAmIGdyb3VwKQogewogICAgIC8vIElnbm9yZSB0aGUgcmVhc29uIGZvciBmYWls
aW5nLCBqdXN0IGF0dGVtcHQgdGhlIHN0b3JlLgogICAgIEZhaWx1cmVSZWFzb24gaWdub3JlZEZh
aWx1cmVSZWFzb247Ci0gICAgcmV0dXJuIHN0b3JlTmV3ZXN0Q2FjaGUoZ3JvdXAsIDAsIGlnbm9y
ZWRGYWlsdXJlUmVhc29uKTsKKyAgICByZXR1cm4gc3RvcmVOZXdlc3RDYWNoZShncm91cCwgbnVs
bHB0ciwgaWdub3JlZEZhaWx1cmVSZWFzb24pOwogfQogCi10ZW1wbGF0ZSA8dHlwZW5hbWUgQ2hh
cmFjdGVyVHlwZT4KLXN0YXRpYyBpbmxpbmUgdm9pZCBwYXJzZUhlYWRlcihjb25zdCBDaGFyYWN0
ZXJUeXBlKiBoZWFkZXIsIHNpemVfdCBoZWFkZXJMZW5ndGgsIFJlc291cmNlUmVzcG9uc2UmIHJl
c3BvbnNlKQordGVtcGxhdGU8dHlwZW5hbWUgQ2hhcmFjdGVyVHlwZT4KK3N0YXRpYyBpbmxpbmUg
dm9pZCBwYXJzZUhlYWRlcihjb25zdCBDaGFyYWN0ZXJUeXBlKiBoZWFkZXIsIHVuc2lnbmVkIGhl
YWRlckxlbmd0aCwgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7Ci0gICAgc2l6ZV90IHBv
cyA9IGZpbmQoaGVhZGVyLCBoZWFkZXJMZW5ndGgsICc6Jyk7Ci0gICAgQVNTRVJUKHBvcyAhPSBu
b3RGb3VuZCk7Ci0gICAgCi0gICAgU3RyaW5nIGhlYWRlck5hbWUgPSBBdG9taWNTdHJpbmcoaGVh
ZGVyLCBwb3MpOwotICAgIFN0cmluZyBoZWFkZXJWYWx1ZSA9IFN0cmluZyhoZWFkZXIgKyBwb3Mg
KyAxLCBoZWFkZXJMZW5ndGggLSBwb3MgLSAxKTsKLSAgICAKKyAgICBBU1NFUlQoZmluZChoZWFk
ZXIsIGhlYWRlckxlbmd0aCwgJzonKSAhPSBub3RGb3VuZCk7CisgICAgdW5zaWduZWQgY29sb25Q
b3NpdGlvbiA9IGZpbmQoaGVhZGVyLCBoZWFkZXJMZW5ndGgsICc6Jyk7CisKKyAgICAvLyBTYXZl
IG1lbW9yeSBieSBwdXR0aW5nIHRoZSBoZWFkZXIgbmFtZXMgaW50byBhdG9taWMgc3RyaW5ncyBz
byBlYWNoIGlzIHN0b3JlZCBvbmx5IG9uY2UsCisgICAgLy8gZXZlbiB0aG91Z2ggdGhlIHNldEhU
VFBIZWFkZXJGaWVsZCBmdW5jdGlvbiBkb2VzIG5vdCByZXF1aXJlIGFuIGF0b21pYyBzdHJpbmcu
CisgICAgQXRvbWljU3RyaW5nIGhlYWRlck5hbWUgeyBoZWFkZXIsIGNvbG9uUG9zaXRpb24gfTsK
KyAgICBTdHJpbmcgaGVhZGVyVmFsdWUgeyBoZWFkZXIgKyBjb2xvblBvc2l0aW9uICsgMSwgaGVh
ZGVyTGVuZ3RoIC0gY29sb25Qb3NpdGlvbiAtIDEgfTsKKwogICAgIHJlc3BvbnNlLnNldEhUVFBI
ZWFkZXJGaWVsZChoZWFkZXJOYW1lLCBoZWFkZXJWYWx1ZSk7CiB9CiAKQEAgLTExMDcsNyArMTEw
Miw3IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBwYXJzZUhlYWRlcnMoY29uc3QgU3RyaW5nJiBoZWFk
ZXJzLCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zCiAgICAgfQogfQogICAgIAotUGFzc1JlZlB0
cjxBcHBsaWNhdGlvbkNhY2hlPiBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6bG9hZENhY2hlKHVu
c2lnbmVkIHN0b3JhZ2VJRCkKK1JlZlB0cjxBcHBsaWNhdGlvbkNhY2hlPiBBcHBsaWNhdGlvbkNh
Y2hlU3RvcmFnZTo6bG9hZENhY2hlKHVuc2lnbmVkIHN0b3JhZ2VJRCkKIHsKICAgICBBU1NFUlQo
U1FMaXRlRGF0YWJhc2VUcmFja2VyOjpoYXNUcmFuc2FjdGlvbkluUHJvZ3Jlc3MoKSk7CiAgICAg
U1FMaXRlU3RhdGVtZW50IGNhY2hlU3RhdGVtZW50KG1fZGF0YWJhc2UsCkBAIC0xNDA4LDEwICsx
NDAzLDExIEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmRlbGV0ZUNhY2hlR3JvdXAo
Y29uc3QgU3RyaW5nJiBtYW5pZmVzdFVSTCkKICAgICBTUUxpdGVUcmFuc2FjdGlvbkluUHJvZ3Jl
c3NBdXRvQ291bnRlciB0cmFuc2FjdGlvbkNvdW50ZXI7CiAKICAgICBTUUxpdGVUcmFuc2FjdGlv
biBkZWxldGVUcmFuc2FjdGlvbihtX2RhdGFiYXNlKTsKKwogICAgIC8vIENoZWNrIHRvIHNlZSBp
ZiB0aGUgZ3JvdXAgaXMgaW4gbWVtb3J5LgotICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3Jv
dXAgPSBtX2NhY2hlc0luTWVtb3J5LmdldChtYW5pZmVzdFVSTCk7CisgICAgYXV0byogZ3JvdXAg
PSBtX2NhY2hlc0luTWVtb3J5LmdldChtYW5pZmVzdFVSTCk7CiAgICAgaWYgKGdyb3VwKQotICAg
ICAgICBjYWNoZUdyb3VwTWFkZU9ic29sZXRlKGdyb3VwKTsKKyAgICAgICAgY2FjaGVHcm91cE1h
ZGVPYnNvbGV0ZSgqZ3JvdXApOwogICAgIGVsc2UgewogICAgICAgICAvLyBUaGUgY2FjaGUgZ3Jv
dXAgaXMgbm90IGluIG1lbW9yeSwgc28gcmVtb3ZlIGl0IGZyb20gdGhlIGRpc2suCiAgICAgICAg
IG9wZW5EYXRhYmFzZShmYWxzZSk7CkBAIC0xNDI0LDkgKzE0MjAsOSBAQCBib29sIEFwcGxpY2F0
aW9uQ2FjaGVTdG9yYWdlOjpkZWxldGVDYWNoZUdyb3VwKGNvbnN0IFN0cmluZyYgbWFuaWZlc3RV
UkwpCiAgICAgfQogCiAgICAgZGVsZXRlVHJhbnNhY3Rpb24uY29tbWl0KCk7Ci0gICAgCisKICAg
ICBjaGVja0ZvckRlbGV0ZWRSZXNvdXJjZXMoKTsKLSAgICAKKwogICAgIHJldHVybiB0cnVlOwog
fQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRp
b25DYWNoZVN0b3JhZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNh
dGlvbkNhY2hlU3RvcmFnZS5oCmluZGV4IGU0OGU4NjY3MzUzNjJkOTQ3N2E4YTI1MTAwM2NjODYx
NTA1MjdkMTYuLjlmYTI5MmVlNTBmYWVlODljMzVjODYxYThmOTlmYTE2ZjkwNTQ3NmQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3Rv
cmFnZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNh
Y2hlU3RvcmFnZS5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCwg
MjAxMCwgMjAxMSBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQg
KEMpIDIwMDgtMjAxNyBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgKgogICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTQxLDcgKzQxLDcgQEAgY2xhc3MgQXBwbGljYXRpb25D
YWNoZVJlc291cmNlOwogY2xhc3MgVVJMOwogY2xhc3MgU2VjdXJpdHlPcmlnaW47CiBjbGFzcyBT
aGFyZWRCdWZmZXI7Ci10ZW1wbGF0ZSA8Y2xhc3MgVD4gY2xhc3MgU3RvcmFnZUlESm91cm5hbDsK
K3RlbXBsYXRlPHR5cGVuYW1lPiBjbGFzcyBTdG9yYWdlSURKb3VybmFsOwogCiBjbGFzcyBBcHBs
aWNhdGlvbkNhY2hlU3RvcmFnZSA6IHB1YmxpYyBSZWZDb3VudGVkPEFwcGxpY2F0aW9uQ2FjaGVT
dG9yYWdlPiB7CiBwdWJsaWM6CkBAIC03MywxOSArNzMsMTkgQEAgcHVibGljOgogCiAgICAgQXBw
bGljYXRpb25DYWNoZUdyb3VwKiBmaW5kT3JDcmVhdGVDYWNoZUdyb3VwKGNvbnN0IFVSTCYgbWFu
aWZlc3RVUkwpOwogICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZmluZEluTWVtb3J5Q2FjaGVH
cm91cChjb25zdCBVUkwmIG1hbmlmZXN0VVJMKSBjb25zdDsKLSAgICB2b2lkIGNhY2hlR3JvdXBE
ZXN0cm95ZWQoQXBwbGljYXRpb25DYWNoZUdyb3VwKik7Ci0gICAgdm9pZCBjYWNoZUdyb3VwTWFk
ZU9ic29sZXRlKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCopOwotICAgICAgICAKLSAgICBib29sIHN0
b3JlTmV3ZXN0Q2FjaGUoQXBwbGljYXRpb25DYWNoZUdyb3VwKiwgQXBwbGljYXRpb25DYWNoZSog
b2xkQ2FjaGUsIEZhaWx1cmVSZWFzb24mIGZhaWx1cmVSZWFzb24pOwotICAgIGJvb2wgc3RvcmVO
ZXdlc3RDYWNoZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAqKTsgLy8gVXBkYXRlcyB0aGUgY2FjaGUg
Z3JvdXAsIGJ1dCBkb2Vzbid0IHJlbW92ZSBvbGQgY2FjaGUuCisgICAgdm9pZCBjYWNoZUdyb3Vw
RGVzdHJveWVkKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCYpOworICAgIHZvaWQgY2FjaGVHcm91cE1h
ZGVPYnNvbGV0ZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAmKTsKKworICAgIGJvb2wgc3RvcmVOZXdl
c3RDYWNoZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAmLCBBcHBsaWNhdGlvbkNhY2hlKiBvbGRDYWNo
ZSwgRmFpbHVyZVJlYXNvbiYpOworICAgIGJvb2wgc3RvcmVOZXdlc3RDYWNoZShBcHBsaWNhdGlv
bkNhY2hlR3JvdXAmKTsgLy8gVXBkYXRlcyB0aGUgY2FjaGUgZ3JvdXAsIGJ1dCBkb2Vzbid0IHJl
bW92ZSBvbGQgY2FjaGUuCiAgICAgYm9vbCBzdG9yZShBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2Uq
LCBBcHBsaWNhdGlvbkNhY2hlKik7CiAgICAgYm9vbCBzdG9yZVVwZGF0ZWRUeXBlKEFwcGxpY2F0
aW9uQ2FjaGVSZXNvdXJjZSosIEFwcGxpY2F0aW9uQ2FjaGUqKTsKIAogICAgIC8vIFJlbW92ZXMg
dGhlIGdyb3VwIGlmIHRoZSBjYWNoZSB0byBiZSByZW1vdmVkIGlzIHRoZSBuZXdlc3Qgb25lIChz
bywgc3RvcmVOZXdlc3RDYWNoZSgpIG5lZWRzIHRvIGJlIGNhbGxlZCBiZWZvcmVoYW5kIHdoZW4g
dXBkYXRpbmcpLgogICAgIHZvaWQgcmVtb3ZlKEFwcGxpY2F0aW9uQ2FjaGUqKTsKLSAgICAKKwog
ICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgZW1wdHkoKTsKLSAgICAKKwogICAgIGJvb2wgZ2V0TWFu
aWZlc3RVUkxzKFZlY3RvcjxVUkw+KiB1cmxzKTsKICAgICBib29sIGNhY2hlR3JvdXBTaXplKGNv
bnN0IFN0cmluZyYgbWFuaWZlc3RVUkwsIGludDY0X3QqIHNpemUpOwogICAgIGJvb2wgZGVsZXRl
Q2FjaGVHcm91cChjb25zdCBTdHJpbmcmIG1hbmlmZXN0VVJMKTsKQEAgLTEwNSwxNCArMTA1LDE1
IEBAIHB1YmxpYzoKIAogICAgIHN0YXRpYyBpbnQ2NF90IHVua25vd25RdW90YSgpIHsgcmV0dXJu
IC0xOyB9CiAgICAgc3RhdGljIGludDY0X3Qgbm9RdW90YSgpIHsgcmV0dXJuIHN0ZDo6bnVtZXJp
Y19saW1pdHM8aW50NjRfdD46Om1heCgpOyB9CisKIHByaXZhdGU6CiAgICAgQXBwbGljYXRpb25D
YWNoZVN0b3JhZ2UoY29uc3QgU3RyaW5nJiBjYWNoZURpcmVjdG9yeSwgY29uc3QgU3RyaW5nJiBm
bGF0RmlsZVN1YmRpcmVjdG9yeU5hbWUpOwogCi0gICAgUGFzc1JlZlB0cjxBcHBsaWNhdGlvbkNh
Y2hlPiBsb2FkQ2FjaGUodW5zaWduZWQgc3RvcmFnZUlEKTsKKyAgICBSZWZQdHI8QXBwbGljYXRp
b25DYWNoZT4gbG9hZENhY2hlKHVuc2lnbmVkIHN0b3JhZ2VJRCk7CiAgICAgQXBwbGljYXRpb25D
YWNoZUdyb3VwKiBsb2FkQ2FjaGVHcm91cChjb25zdCBVUkwmIG1hbmlmZXN0VVJMKTsKICAgICAK
LSAgICB0eXBlZGVmIFN0b3JhZ2VJREpvdXJuYWw8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiBS
ZXNvdXJjZVN0b3JhZ2VJREpvdXJuYWw7Ci0gICAgdHlwZWRlZiBTdG9yYWdlSURKb3VybmFsPEFw
cGxpY2F0aW9uQ2FjaGVHcm91cD4gR3JvdXBTdG9yYWdlSURKb3VybmFsOworICAgIHVzaW5nIFJl
c291cmNlU3RvcmFnZUlESm91cm5hbCA9IFN0b3JhZ2VJREpvdXJuYWw8QXBwbGljYXRpb25DYWNo
ZVJlc291cmNlPjsKKyAgICB1c2luZyBHcm91cFN0b3JhZ2VJREpvdXJuYWwgPSBTdG9yYWdlSURK
b3VybmFsPEFwcGxpY2F0aW9uQ2FjaGVHcm91cD47CiAKICAgICBib29sIHN0b3JlKEFwcGxpY2F0
aW9uQ2FjaGVHcm91cCosIEdyb3VwU3RvcmFnZUlESm91cm5hbCopOwogICAgIGJvb2wgc3RvcmUo
QXBwbGljYXRpb25DYWNoZSosIFJlc291cmNlU3RvcmFnZUlESm91cm5hbCopOwpAQCAtMTUyLDgg
KzE1Myw3IEBAIHByaXZhdGU6CiAgICAgLy8gd2Uga2VlcCBhIGhhc2ggc2V0IG9mIHRoZSBob3N0
cyBvZiB0aGUgbWFuaWZlc3QgVVJMcyBvZiBhbGwgbm9uLW9ic29sZXRlIGNhY2hlIGdyb3Vwcy4K
ICAgICBIYXNoQ291bnRlZFNldDx1bnNpZ25lZCwgQWxyZWFkeUhhc2hlZD4gbV9jYWNoZUhvc3RT
ZXQ7CiAgICAgCi0gICAgdHlwZWRlZiBIYXNoTWFwPFN0cmluZywgQXBwbGljYXRpb25DYWNoZUdy
b3VwKj4gQ2FjaGVHcm91cE1hcDsKLSAgICBDYWNoZUdyb3VwTWFwIG1fY2FjaGVzSW5NZW1vcnk7
IC8vIEV4Y2x1ZGVzIG9ic29sZXRlIGNhY2hlIGdyb3Vwcy4KKyAgICBIYXNoTWFwPFN0cmluZywg
QXBwbGljYXRpb25DYWNoZUdyb3VwKj4gbV9jYWNoZXNJbk1lbW9yeTsgLy8gRXhjbHVkZXMgb2Jz
b2xldGUgY2FjaGUgZ3JvdXBzLgogCiAgICAgZnJpZW5kIGNsYXNzIFdURjo6TmV2ZXJEZXN0cm95
ZWQ8QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U+OwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9hcHBjYWNoZS9ET01BcHBsaWNhdGlvbkNhY2hlLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9hcHBjYWNoZS9ET01BcHBsaWNhdGlvbkNhY2hlLmNwcAppbmRleCA0ZDBlZWYy
MjRjMGFiZDE4OTE1YjM2M2UxNTFlMDAwNDVkMDk4OTFjLi5lZDhmYWQ4ZjY5NjEwYTczZWY1ZGYx
YTc3ZTM3Y2VmMmVhNDQ1ZjAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBw
Y2FjaGUvRE9NQXBwbGljYXRpb25DYWNoZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2FwcGNhY2hlL0RPTUFwcGxpY2F0aW9uQ2FjaGUuY3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAq
IENvcHlyaWdodCAoQykgMjAwOCwgMjAwOSBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQu
CisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxNyBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2
ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTI5LDExMSArMjksODQgQEAK
ICNpbmNsdWRlICJBcHBsaWNhdGlvbkNhY2hlSG9zdC5oIgogI2luY2x1ZGUgIkRvY3VtZW50Lmgi
CiAjaW5jbHVkZSAiRG9jdW1lbnRMb2FkZXIuaCIKLSNpbmNsdWRlICJFdmVudC5oIgotI2luY2x1
ZGUgIkV2ZW50TGlzdGVuZXIuaCIKLSNpbmNsdWRlICJFdmVudE5hbWVzLmgiCiAjaW5jbHVkZSAi
RXhjZXB0aW9uQ29kZS5oIgogI2luY2x1ZGUgIkZyYW1lLmgiCi0jaW5jbHVkZSAiRnJhbWVMb2Fk
ZXIuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1ET01BcHBsaWNhdGlvbkNhY2hlOjpET01B
cHBsaWNhdGlvbkNhY2hlKEZyYW1lKiBmcmFtZSkKLSAgICA6IERPTVdpbmRvd1Byb3BlcnR5KGZy
YW1lKQorRE9NQXBwbGljYXRpb25DYWNoZTo6RE9NQXBwbGljYXRpb25DYWNoZShGcmFtZSYgZnJh
bWUpCisgICAgOiBET01XaW5kb3dQcm9wZXJ0eSgmZnJhbWUpCiB7Ci0gICAgQXBwbGljYXRpb25D
YWNoZUhvc3QqIGNhY2hlSG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7Ci0gICAgaWYgKGNh
Y2hlSG9zdCkKLSAgICAgICAgY2FjaGVIb3N0LT5zZXRET01BcHBsaWNhdGlvbkNhY2hlKHRoaXMp
OworICAgIGlmIChhdXRvKiBob3N0ID0gYXBwbGljYXRpb25DYWNoZUhvc3QoKSkKKyAgICAgICAg
aG9zdC0+c2V0RE9NQXBwbGljYXRpb25DYWNoZSh0aGlzKTsKIH0KIAogdm9pZCBET01BcHBsaWNh
dGlvbkNhY2hlOjpkaXNjb25uZWN0RnJhbWVGb3JEb2N1bWVudFN1c3BlbnNpb24oKQogewotICAg
IGlmIChBcHBsaWNhdGlvbkNhY2hlSG9zdCogY2FjaGVIb3N0ID0gYXBwbGljYXRpb25DYWNoZUhv
c3QoKSkKLSAgICAgICAgY2FjaGVIb3N0LT5zZXRET01BcHBsaWNhdGlvbkNhY2hlKG51bGxwdHIp
OworICAgIGlmIChhdXRvKiBob3N0ID0gYXBwbGljYXRpb25DYWNoZUhvc3QoKSkKKyAgICAgICAg
aG9zdC0+c2V0RE9NQXBwbGljYXRpb25DYWNoZShudWxscHRyKTsKICAgICBET01XaW5kb3dQcm9w
ZXJ0eTo6ZGlzY29ubmVjdEZyYW1lRm9yRG9jdW1lbnRTdXNwZW5zaW9uKCk7CiB9CiAKIHZvaWQg
RE9NQXBwbGljYXRpb25DYWNoZTo6cmVjb25uZWN0RnJhbWVGcm9tRG9jdW1lbnRTdXNwZW5zaW9u
KEZyYW1lKiBmcmFtZSkKIHsKICAgICBET01XaW5kb3dQcm9wZXJ0eTo6cmVjb25uZWN0RnJhbWVG
cm9tRG9jdW1lbnRTdXNwZW5zaW9uKGZyYW1lKTsKLSAgICBpZiAoQXBwbGljYXRpb25DYWNoZUhv
c3QqIGNhY2hlSG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkpCi0gICAgICAgIGNhY2hlSG9z
dC0+c2V0RE9NQXBwbGljYXRpb25DYWNoZSh0aGlzKTsKKyAgICBpZiAoYXV0byogaG9zdCA9IGFw
cGxpY2F0aW9uQ2FjaGVIb3N0KCkpCisgICAgICAgIGhvc3QtPnNldERPTUFwcGxpY2F0aW9uQ2Fj
aGUodGhpcyk7CiB9CiAKIHZvaWQgRE9NQXBwbGljYXRpb25DYWNoZTo6d2lsbERlc3Ryb3lHbG9i
YWxPYmplY3RJbkZyYW1lKCkKIHsKLSAgICBpZiAoQXBwbGljYXRpb25DYWNoZUhvc3QqIGNhY2hl
SG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkpCi0gICAgICAgIGNhY2hlSG9zdC0+c2V0RE9N
QXBwbGljYXRpb25DYWNoZShudWxscHRyKTsKKyAgICBpZiAoYXV0byogaG9zdCA9IGFwcGxpY2F0
aW9uQ2FjaGVIb3N0KCkpCisgICAgICAgIGhvc3QtPnNldERPTUFwcGxpY2F0aW9uQ2FjaGUobnVs
bHB0cik7CiAgICAgRE9NV2luZG93UHJvcGVydHk6OndpbGxEZXN0cm95R2xvYmFsT2JqZWN0SW5G
cmFtZSgpOwogfQogCiBBcHBsaWNhdGlvbkNhY2hlSG9zdCogRE9NQXBwbGljYXRpb25DYWNoZTo6
YXBwbGljYXRpb25DYWNoZUhvc3QoKSBjb25zdAogewotICAgIGlmICghbV9mcmFtZSB8fCAhbV9m
cmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSkKKyAgICBpZiAoIW1fZnJhbWUpCiAgICAg
ICAgIHJldHVybiBudWxscHRyOwotICAgIHJldHVybiBtX2ZyYW1lLT5sb2FkZXIoKS5kb2N1bWVu
dExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpOworICAgIGF1dG8qIGRvY3VtZW50TG9h
ZGVyID0gbV9mcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKKyAgICBpZiAoIWRvY3Vt
ZW50TG9hZGVyKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICByZXR1cm4gJmRvY3VtZW50
TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpOwogfQogCiB1bnNpZ25lZCBzaG9ydCBET01B
cHBsaWNhdGlvbkNhY2hlOjpzdGF0dXMoKSBjb25zdAogewotICAgIEFwcGxpY2F0aW9uQ2FjaGVI
b3N0KiBjYWNoZUhvc3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpOwotICAgIGlmICghY2FjaGVI
b3N0KQorICAgIGF1dG8qIGhvc3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpOworICAgIGlmICgh
aG9zdCkKICAgICAgICAgcmV0dXJuIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpVTkNBQ0hFRDsKLSAg
ICByZXR1cm4gY2FjaGVIb3N0LT5zdGF0dXMoKTsKKyAgICByZXR1cm4gaG9zdC0+c3RhdHVzKCk7
CiB9CiAKIEV4Y2VwdGlvbk9yPHZvaWQ+IERPTUFwcGxpY2F0aW9uQ2FjaGU6OnVwZGF0ZSgpCiB7
Ci0gICAgYXV0byogY2FjaGVIb3N0ID0gYXBwbGljYXRpb25DYWNoZUhvc3QoKTsKLSAgICBpZiAo
IWNhY2hlSG9zdCB8fCAhY2FjaGVIb3N0LT51cGRhdGUoKSkKKyAgICBhdXRvKiBob3N0ID0gYXBw
bGljYXRpb25DYWNoZUhvc3QoKTsKKyAgICBpZiAoIWhvc3QgfHwgIWhvc3QtPnVwZGF0ZSgpKQog
ICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSU5WQUxJRF9TVEFURV9FUlIgfTsKICAgICByZXR1
cm4geyB9OwogfQogCiBFeGNlcHRpb25Pcjx2b2lkPiBET01BcHBsaWNhdGlvbkNhY2hlOjpzd2Fw
Q2FjaGUoKQogewotICAgIGF1dG8qIGNhY2hlSG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7
Ci0gICAgaWYgKCFjYWNoZUhvc3QgfHwgIWNhY2hlSG9zdC0+c3dhcENhY2hlKCkpCisgICAgYXV0
byogaG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7CisgICAgaWYgKCFob3N0IHx8ICFob3N0
LT5zd2FwQ2FjaGUoKSkKICAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IElOVkFMSURfU1RBVEVf
RVJSIH07CiAgICAgcmV0dXJuIHsgfTsKIH0KIAogdm9pZCBET01BcHBsaWNhdGlvbkNhY2hlOjph
Ym9ydCgpCiB7Ci0gICAgQXBwbGljYXRpb25DYWNoZUhvc3QqIGNhY2hlSG9zdCA9IGFwcGxpY2F0
aW9uQ2FjaGVIb3N0KCk7Ci0gICAgaWYgKGNhY2hlSG9zdCkKLSAgICAgICAgY2FjaGVIb3N0LT5h
Ym9ydCgpOworICAgIGlmIChhdXRvKiBob3N0ID0gYXBwbGljYXRpb25DYWNoZUhvc3QoKSkKKyAg
ICAgICAgaG9zdC0+YWJvcnQoKTsKIH0KIAogU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogRE9NQXBw
bGljYXRpb25DYWNoZTo6c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNvbnN0CiB7Ci0gICAgaWYg
KG1fZnJhbWUpCi0gICAgICAgIHJldHVybiBtX2ZyYW1lLT5kb2N1bWVudCgpOwotICAgIHJldHVy
biBudWxscHRyOwotfQotCi1jb25zdCBBdG9taWNTdHJpbmcmIERPTUFwcGxpY2F0aW9uQ2FjaGU6
OnRvRXZlbnRUeXBlKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFdmVudElEIGlkKQotewotICAgIHN3
aXRjaCAoaWQpIHsKLSAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDSEVDS0lOR19FVkVO
VDoKLSAgICAgICAgcmV0dXJuIGV2ZW50TmFtZXMoKS5jaGVja2luZ0V2ZW50OwotICAgIGNhc2Ug
QXBwbGljYXRpb25DYWNoZUhvc3Q6OkVSUk9SX0VWRU5UOgotICAgICAgICByZXR1cm4gZXZlbnRO
YW1lcygpLmVycm9yRXZlbnQ7Ci0gICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Tk9VUERB
VEVfRVZFTlQ6Ci0gICAgICAgIHJldHVybiBldmVudE5hbWVzKCkubm91cGRhdGVFdmVudDsKLSAg
ICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpET1dOTE9BRElOR19FVkVOVDoKLSAgICAgICAg
cmV0dXJuIGV2ZW50TmFtZXMoKS5kb3dubG9hZGluZ0V2ZW50OwotICAgIGNhc2UgQXBwbGljYXRp
b25DYWNoZUhvc3Q6OlBST0dSRVNTX0VWRU5UOgotICAgICAgICByZXR1cm4gZXZlbnROYW1lcygp
LnByb2dyZXNzRXZlbnQ7Ci0gICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6VVBEQVRFUkVB
RFlfRVZFTlQ6Ci0gICAgICAgIHJldHVybiBldmVudE5hbWVzKCkudXBkYXRlcmVhZHlFdmVudDsK
LSAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDQUNIRURfRVZFTlQ6Ci0gICAgICAgIHJl
dHVybiBldmVudE5hbWVzKCkuY2FjaGVkRXZlbnQ7Ci0gICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hl
SG9zdDo6T0JTT0xFVEVfRVZFTlQ6ICAgICAgICAgICAgCi0gICAgICAgIHJldHVybiBldmVudE5h
bWVzKCkub2Jzb2xldGVFdmVudDsKLSAgICB9Ci0gICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0g
ICAgcmV0dXJuIGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50OworICAgIGlmICghbV9mcmFtZSkKKyAg
ICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgcmV0dXJuIG1fZnJhbWUtPmRvY3VtZW50KCk7CiB9
CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9hcHBjYWNoZS9ET01BcHBsaWNhdGlvbkNhY2hlLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25DYWNoZS5oCmluZGV4IDNmMjBkOGMyYjc1MTk3MzJm
YWExZjdkMGVlMGY5MDRhOTc4NTAxOWQuLmNmNmQyYTlkOTlmNzA2OGMwNmNjMmY0YTI3MTExZTJk
Y2RjMWU2NzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9ET01B
cHBsaWNhdGlvbkNhY2hlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0RP
TUFwcGxpY2F0aW9uQ2FjaGUuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMp
IDIwMDgsIDIwMDkgQXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgorICogQ29weXJpZ2h0
IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgogICoKICAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yNSw0NiArMjUsMzkgQEAKIAogI3ByYWdtYSBvbmNl
CiAKLSNpbmNsdWRlICJBcHBsaWNhdGlvbkNhY2hlSG9zdC5oIgogI2luY2x1ZGUgIkRPTVdpbmRv
d1Byb3BlcnR5LmgiCiAjaW5jbHVkZSAiRXZlbnRUYXJnZXQuaCIKLSNpbmNsdWRlICJFeGNlcHRp
b25Pci5oIgotI2luY2x1ZGUgIlNjcmlwdFdyYXBwYWJsZS5oIgotI2luY2x1ZGUgPHd0Zi9IYXNo
TWFwLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvQXRvbWljU3RyaW5nSGFzaC5oPgogCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKK2NsYXNzIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OwogY2xhc3MgRnJhbWU7
Ci1jbGFzcyBVUkw7CiAKIGNsYXNzIERPTUFwcGxpY2F0aW9uQ2FjaGUgZmluYWwgOiBwdWJsaWMg
UmVmQ291bnRlZDxET01BcHBsaWNhdGlvbkNhY2hlPiwgcHVibGljIEV2ZW50VGFyZ2V0V2l0aElu
bGluZURhdGEsIHB1YmxpYyBET01XaW5kb3dQcm9wZXJ0eSB7CiBwdWJsaWM6Ci0gICAgc3RhdGlj
IFJlZjxET01BcHBsaWNhdGlvbkNhY2hlPiBjcmVhdGUoRnJhbWUqIGZyYW1lKSB7IHJldHVybiBh
ZG9wdFJlZigqbmV3IERPTUFwcGxpY2F0aW9uQ2FjaGUoZnJhbWUpKTsgfQorICAgIHN0YXRpYyBS
ZWY8RE9NQXBwbGljYXRpb25DYWNoZT4gY3JlYXRlKEZyYW1lJiBmcmFtZSkgeyByZXR1cm4gYWRv
cHRSZWYoKm5ldyBET01BcHBsaWNhdGlvbkNhY2hlKGZyYW1lKSk7IH0KICAgICB2aXJ0dWFsIH5E
T01BcHBsaWNhdGlvbkNhY2hlKCkgeyBBU1NFUlQoIW1fZnJhbWUpOyB9CiAKLSAgICB2b2lkIGRp
c2Nvbm5lY3RGcmFtZUZvckRvY3VtZW50U3VzcGVuc2lvbigpIG92ZXJyaWRlOwotICAgIHZvaWQg
cmVjb25uZWN0RnJhbWVGcm9tRG9jdW1lbnRTdXNwZW5zaW9uKEZyYW1lKikgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCB3aWxsRGVzdHJveUdsb2JhbE9iamVjdEluRnJhbWUoKSBvdmVycmlkZTsKLQogICAg
IHVuc2lnbmVkIHNob3J0IHN0YXR1cygpIGNvbnN0OwogICAgIEV4Y2VwdGlvbk9yPHZvaWQ+IHVw
ZGF0ZSgpOwogICAgIEV4Y2VwdGlvbk9yPHZvaWQ+IHN3YXBDYWNoZSgpOwogICAgIHZvaWQgYWJv
cnQoKTsKIAotICAgIHVzaW5nIFJlZkNvdW50ZWQ8RE9NQXBwbGljYXRpb25DYWNoZT46OnJlZjsK
LSAgICB1c2luZyBSZWZDb3VudGVkPERPTUFwcGxpY2F0aW9uQ2FjaGU+OjpkZXJlZjsKKyAgICB1
c2luZyBSZWZDb3VudGVkOjpyZWY7CisgICAgdXNpbmcgUmVmQ291bnRlZDo6ZGVyZWY7CiAKLSAg
ICBFdmVudFRhcmdldEludGVyZmFjZSBldmVudFRhcmdldEludGVyZmFjZSgpIGNvbnN0IG92ZXJy
aWRlIHsgcmV0dXJuIERPTUFwcGxpY2F0aW9uQ2FjaGVFdmVudFRhcmdldEludGVyZmFjZVR5cGU7
IH0KLSAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkg
Y29uc3Qgb3ZlcnJpZGU7Citwcml2YXRlOgorICAgIGV4cGxpY2l0IERPTUFwcGxpY2F0aW9uQ2Fj
aGUoRnJhbWUmKTsKIAotICAgIHN0YXRpYyBjb25zdCBBdG9taWNTdHJpbmcmIHRvRXZlbnRUeXBl
KEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFdmVudElEIGlkKTsKKyAgICB2b2lkIHJlZkV2ZW50VGFy
Z2V0KCkgZmluYWwgeyByZWYoKTsgfQorICAgIHZvaWQgZGVyZWZFdmVudFRhcmdldCgpIGZpbmFs
IHsgZGVyZWYoKTsgfQogCi1wcml2YXRlOgotICAgIGV4cGxpY2l0IERPTUFwcGxpY2F0aW9uQ2Fj
aGUoRnJhbWUqKTsKKyAgICBFdmVudFRhcmdldEludGVyZmFjZSBldmVudFRhcmdldEludGVyZmFj
ZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIERPTUFwcGxpY2F0aW9uQ2FjaGVFdmVudFRhcmdldElu
dGVyZmFjZVR5cGU7IH0KKyAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVjdXRp
b25Db250ZXh0KCkgY29uc3QgZmluYWw7CiAKLSAgICB2b2lkIHJlZkV2ZW50VGFyZ2V0KCkgb3Zl
cnJpZGUgeyByZWYoKTsgfQotICAgIHZvaWQgZGVyZWZFdmVudFRhcmdldCgpIG92ZXJyaWRlIHsg
ZGVyZWYoKTsgfQorICAgIHZvaWQgZGlzY29ubmVjdEZyYW1lRm9yRG9jdW1lbnRTdXNwZW5zaW9u
KCkgZmluYWw7CisgICAgdm9pZCByZWNvbm5lY3RGcmFtZUZyb21Eb2N1bWVudFN1c3BlbnNpb24o
RnJhbWUqKSBmaW5hbDsKKyAgICB2b2lkIHdpbGxEZXN0cm95R2xvYmFsT2JqZWN0SW5GcmFtZSgp
IGZpbmFsOwogCiAgICAgQXBwbGljYXRpb25DYWNoZUhvc3QqIGFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCkgY29uc3Q7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hl
L01hbmlmZXN0UGFyc2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9NYW5p
ZmVzdFBhcnNlci5jcHAKaW5kZXggNjAxMTQxZDZmZjY2NDY1NTQ2YjgxYzI0YTBmYThiOWI5MWRj
NGM5NS4uNWMxNTEzNTlkZTk4M2E4MWE3NTYwNTNiYmVjZGNmYjg5YjQ1ODI2NyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL01hbmlmZXN0UGFyc2VyLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvTWFuaWZlc3RQYXJzZXIuY3BwCkBAIC0x
MTksOCArMTE5LDcgQEAgYm9vbCBwYXJzZU1hbmlmZXN0KGNvbnN0IFVSTCYgbWFuaWZlc3RVUkws
IGNvbnN0IGNoYXIqIGRhdGEsIGludCBsZW5ndGgsIE1hbmlmZXMKICAgICAgICAgICAgIGlmICgh
dXJsLmlzVmFsaWQoKSkKICAgICAgICAgICAgICAgICBjb250aW51ZTsKIAotICAgICAgICAgICAg
aWYgKHVybC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSkKLSAgICAgICAgICAgICAgICB1cmwucmVt
b3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CisgICAgICAgICAgICB1cmwucmVtb3ZlRnJhZ21lbnRJ
ZGVudGlmaWVyKCk7CiAgICAgICAgICAgICAKICAgICAgICAgICAgIGlmICghZXF1YWxJZ25vcmlu
Z0FTQ0lJQ2FzZSh1cmwucHJvdG9jb2woKSwgbWFuaWZlc3RVUkwucHJvdG9jb2woKSkpCiAgICAg
ICAgICAgICAgICAgY29udGludWU7CkBAIC0xNTAsOCArMTQ5LDcgQEAgYm9vbCBwYXJzZU1hbmlm
ZXN0KGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwsIGNvbnN0IGNoYXIqIGRhdGEsIGludCBsZW5ndGgs
IE1hbmlmZXMKICAgICAgICAgICAgIFVSTCBuYW1lc3BhY2VVUkwobWFuaWZlc3RVUkwsIGxpbmUu
c3Vic3RyaW5nKDAsIHAgLSB1cGNvbnZlcnRlZExpbmVDaGFyYWN0ZXJzKSk7CiAgICAgICAgICAg
ICBpZiAoIW5hbWVzcGFjZVVSTC5pc1ZhbGlkKCkpCiAgICAgICAgICAgICAgICAgY29udGludWU7
Ci0gICAgICAgICAgICBpZiAobmFtZXNwYWNlVVJMLmhhc0ZyYWdtZW50SWRlbnRpZmllcigpKQot
ICAgICAgICAgICAgICAgIG5hbWVzcGFjZVVSTC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsK
KyAgICAgICAgICAgIG5hbWVzcGFjZVVSTC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKIAog
ICAgICAgICAgICAgaWYgKCFwcm90b2NvbEhvc3RBbmRQb3J0QXJlRXF1YWwobWFuaWZlc3RVUkws
IG5hbWVzcGFjZVVSTCkpCiAgICAgICAgICAgICAgICAgY29udGludWU7CkBAIC0xNjgsOCArMTY2
LDcgQEAgYm9vbCBwYXJzZU1hbmlmZXN0KGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwsIGNvbnN0IGNo
YXIqIGRhdGEsIGludCBsZW5ndGgsIE1hbmlmZXMKICAgICAgICAgICAgIFVSTCBmYWxsYmFja1VS
TChtYW5pZmVzdFVSTCwgU3RyaW5nKGZhbGxiYWNrU3RhcnQsIHAgLSBmYWxsYmFja1N0YXJ0KSk7
CiAgICAgICAgICAgICBpZiAoIWZhbGxiYWNrVVJMLmlzVmFsaWQoKSkKICAgICAgICAgICAgICAg
ICBjb250aW51ZTsKLSAgICAgICAgICAgIGlmIChmYWxsYmFja1VSTC5oYXNGcmFnbWVudElkZW50
aWZpZXIoKSkKLSAgICAgICAgICAgICAgICBmYWxsYmFja1VSTC5yZW1vdmVGcmFnbWVudElkZW50
aWZpZXIoKTsKKyAgICAgICAgICAgIGZhbGxiYWNrVVJMLnJlbW92ZUZyYWdtZW50SWRlbnRpZmll
cigpOwogCiAgICAgICAgICAgICBpZiAoIXByb3RvY29sSG9zdEFuZFBvcnRBcmVFcXVhbChtYW5p
ZmVzdFVSTCwgZmFsbGJhY2tVUkwpKQogICAgICAgICAgICAgICAgIGNvbnRpbnVlOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL01hbmlmZXN0UGFyc2VyLmggYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvTWFuaWZlc3RQYXJzZXIuaAppbmRleCA2NjEy
YzAwZjc5NTE3ZDg2ZGFjZTQzOTcxYjM1ZjdiMGExNmZhNjc1Li5iMjgyNDllYmU0N2Y1ZDY2ZDJl
MjE0NjM5NzMxMDZmMTBjYzJiZjU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
YXBwY2FjaGUvTWFuaWZlc3RQYXJzZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBw
Y2FjaGUvTWFuaWZlc3RQYXJzZXIuaApAQCAtMjYsMTggKzI2LDE5IEBACiAjcHJhZ21hIG9uY2UK
IAogI2luY2x1ZGUgIkFwcGxpY2F0aW9uQ2FjaGUuaCIKKyNpbmNsdWRlIDx3dGYvSGFzaFNldC5o
PgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLSAgICBjbGFzcyBVUkw7CitjbGFzcyBVUkw7CiAK
LSAgICBzdHJ1Y3QgTWFuaWZlc3QgewotICAgICAgICBWZWN0b3I8VVJMPiBvbmxpbmVXaGl0ZWxp
c3RlZFVSTHM7Ci0gICAgICAgIEhhc2hTZXQ8U3RyaW5nPiBleHBsaWNpdFVSTHM7Ci0gICAgICAg
IEZhbGxiYWNrVVJMVmVjdG9yIGZhbGxiYWNrVVJMczsKLSAgICAgICAgYm9vbCBhbGxvd0FsbE5l
dHdvcmtSZXF1ZXN0czsgLy8gV2lsZGNhcmQgZm91bmQgaW4gTkVUV09SSyBzZWN0aW9uLgotICAg
IH07CitzdHJ1Y3QgTWFuaWZlc3QgeworICAgIFZlY3RvcjxVUkw+IG9ubGluZVdoaXRlbGlzdGVk
VVJMczsKKyAgICBIYXNoU2V0PFN0cmluZz4gZXhwbGljaXRVUkxzOworICAgIEZhbGxiYWNrVVJM
VmVjdG9yIGZhbGxiYWNrVVJMczsKKyAgICBib29sIGFsbG93QWxsTmV0d29ya1JlcXVlc3RzOyAv
LyBXaWxkY2FyZCBmb3VuZCBpbiBORVRXT1JLIHNlY3Rpb24uCit9OwogCi0gICAgYm9vbCBwYXJz
ZU1hbmlmZXN0KGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwsIGNvbnN0IGNoYXIqIGRhdGEsIGludCBs
ZW5ndGgsIE1hbmlmZXN0Jik7Citib29sIHBhcnNlTWFuaWZlc3QoY29uc3QgVVJMJiBtYW5pZmVz
dFVSTCwgY29uc3QgY2hhciogZGF0YSwgaW50IGxlbmd0aCwgTWFuaWZlc3QmKTsKIAogfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hp
dmUvQXJjaGl2ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmNw
cAppbmRleCBlODlhNDk5ZGY0MDQ0NmMzMjYwYmJmZjFiMjhkZTBkOWFkOTc3YTBlLi41ZTA1YmUy
MmM3ZDRlYTdmMTIyYmE0MTE3ODY5M2YyNWVkMmUwZWRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvYXJjaGl2ZS9BcmNoaXZlLmNwcApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQg
KEMpIDIwMDggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChD
KSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCkBAIC0zNywxNyArMzcsMTcgQEAgQXJjaGl2ZTo6fkFyY2hpdmUo
KQogCiB2b2lkIEFyY2hpdmU6OmNsZWFyQWxsU3ViZnJhbWVBcmNoaXZlcygpCiB7Ci0gICAgVmVj
dG9yPFJlZlB0cjxBcmNoaXZlPj4gY2xlYXJlZEFyY2hpdmVzOwotICAgIGNsZWFyQWxsU3ViZnJh
bWVBcmNoaXZlc0ltcGwoJmNsZWFyZWRBcmNoaXZlcyk7CisgICAgSGFzaFNldDxBcmNoaXZlKj4g
Y2xlYXJlZEFyY2hpdmVzOworICAgIGNsZWFyZWRBcmNoaXZlcy5hZGQodGhpcyk7CisgICAgY2xl
YXJBbGxTdWJmcmFtZUFyY2hpdmVzKGNsZWFyZWRBcmNoaXZlcyk7CiB9CiAKLXZvaWQgQXJjaGl2
ZTo6Y2xlYXJBbGxTdWJmcmFtZUFyY2hpdmVzSW1wbChWZWN0b3I8UmVmUHRyPEFyY2hpdmU+Piog
Y2xlYXJlZEFyY2hpdmVzKQordm9pZCBBcmNoaXZlOjpjbGVhckFsbFN1YmZyYW1lQXJjaGl2ZXMo
SGFzaFNldDxBcmNoaXZlKj4mIGNsZWFyZWRBcmNoaXZlcykKIHsKKyAgICBBU1NFUlQoY2xlYXJl
ZEFyY2hpdmVzLmNvbnRhaW5zKHRoaXMpKTsKICAgICBmb3IgKGF1dG8mIGFyY2hpdmUgOiBtX3N1
YmZyYW1lQXJjaGl2ZXMpIHsKLSAgICAgICAgaWYgKCFjbGVhcmVkQXJjaGl2ZXMtPmNvbnRhaW5z
KGFyY2hpdmUpKSB7Ci0gICAgICAgICAgICBjbGVhcmVkQXJjaGl2ZXMtPmFwcGVuZChhcmNoaXZl
KTsKLSAgICAgICAgICAgIGFyY2hpdmUtPmNsZWFyQWxsU3ViZnJhbWVBcmNoaXZlc0ltcGwoY2xl
YXJlZEFyY2hpdmVzKTsKLSAgICAgICAgfQorICAgICAgICBpZiAoY2xlYXJlZEFyY2hpdmVzLmFk
ZChhcmNoaXZlLnB0cigpKSkKKyAgICAgICAgICAgIGFyY2hpdmUtPmNsZWFyQWxsU3ViZnJhbWVB
cmNoaXZlcyhjbGVhcmVkQXJjaGl2ZXMpOwogICAgIH0KICAgICBtX3N1YmZyYW1lQXJjaGl2ZXMu
Y2xlYXIoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0Fy
Y2hpdmUuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmUuaAppbmRleCBm
MjA2NTQ5MzIyNDIzYTdmYjI0MDBkZTU4YzlmNGExOTIyZGRhZWU3Li5mZjc0Y2UyODMxYWE0ZDI3
MzU0MmYxMmQ5OTM3ODI0NTE2MDJlM2M3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvYXJjaGl2ZS9BcmNoaXZlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUv
QXJjaGl2ZS5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxNyBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKQEAgLTI5LDQxICsyOSwzOCBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJBcmNo
aXZlUmVzb3VyY2UuaCIKLQotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVkZSA8
d3RmL1JlZkNvdW50ZWQuaD4KLSNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3Rm
L1ZlY3Rvci5oPgorI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAogY2xhc3MgQXJjaGl2ZSA6IHB1YmxpYyBSZWZDb3VudGVkPEFyY2hpdmU+IHsKIHB1Ymxp
YzoKLSAgICBlbnVtIFR5cGUgewotICAgICAgV2ViQXJjaGl2ZSwKLSAgICAgIE1IVE1MCi0gICAg
fTsKICAgICB2aXJ0dWFsIH5BcmNoaXZlKCk7Ci0gICAgdmlydHVhbCBUeXBlIHR5cGUoKSBjb25z
dCA9IDA7CisKKyAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkTG9hZEZyb21BcmNoaXZlT25seSgpIGNv
bnN0ID0gMDsKKyAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkT3ZlcnJpZGVCYXNlVVJMKCkgY29uc3Qg
PSAwOworICAgIHZpcnR1YWwgYm9vbCBzaG91bGRVc2VNYWluUmVzb3VyY2VFbmNvZGluZygpIGNv
bnN0ID0gMDsKKyAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkVXNlTWFpblJlc291cmNlVVJMKCkgY29u
c3QgPSAwOworCiAgICAgQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3VyY2UoKSB7IHJldHVybiBt
X21haW5SZXNvdXJjZS5nZXQoKTsgfQotICAgIGNvbnN0IFZlY3RvcjxSZWZQdHI8QXJjaGl2ZVJl
c291cmNlPj4mIHN1YnJlc291cmNlcygpIGNvbnN0IHsgcmV0dXJuIG1fc3VicmVzb3VyY2VzOyB9
Ci0gICAgY29uc3QgVmVjdG9yPFJlZlB0cjxBcmNoaXZlPj4mIHN1YmZyYW1lQXJjaGl2ZXMoKSBj
b25zdCB7IHJldHVybiBtX3N1YmZyYW1lQXJjaGl2ZXM7IH0KKyAgICBjb25zdCBWZWN0b3I8UmVm
PEFyY2hpdmVSZXNvdXJjZT4+JiBzdWJyZXNvdXJjZXMoKSBjb25zdCB7IHJldHVybiBtX3N1YnJl
c291cmNlczsgfQorICAgIGNvbnN0IFZlY3RvcjxSZWY8QXJjaGl2ZT4+JiBzdWJmcmFtZUFyY2hp
dmVzKCkgY29uc3QgeyByZXR1cm4gbV9zdWJmcmFtZUFyY2hpdmVzOyB9CiAKIHByb3RlY3RlZDoK
ICAgICAvLyBUaGVzZSBtZXRob2RzIGFyZSBtZWFudCBmb3Igc3ViY2xhc3NlcyBmb3IgZGlmZmVy
ZW50IGFyY2hpdmUgdHlwZXMgdG8gYWRkIHJlc291cmNlcyBpbiB0byB0aGUgYXJjaGl2ZSwKICAg
ICAvLyBhbmQgc2hvdWxkIG5vdCBiZSBleHBvc2VkIGFzIGFyY2hpdmVzIHNob3VsZCBiZSBpbW11
dGFibGUgdG8gY2xpZW50cwotICAgIHZvaWQgc2V0TWFpblJlc291cmNlKFBhc3NSZWZQdHI8QXJj
aGl2ZVJlc291cmNlPiBtYWluUmVzb3VyY2UpIHsgbV9tYWluUmVzb3VyY2UgPSBtYWluUmVzb3Vy
Y2U7IH0KLSAgICB2b2lkIGFkZFN1YnJlc291cmNlKFBhc3NSZWZQdHI8QXJjaGl2ZVJlc291cmNl
PiBzdWJSZXNvdXJjZSkgeyBtX3N1YnJlc291cmNlcy5hcHBlbmQoc3ViUmVzb3VyY2UpOyB9Ci0g
ICAgdm9pZCBhZGRTdWJmcmFtZUFyY2hpdmUoUGFzc1JlZlB0cjxBcmNoaXZlPiBzdWJmcmFtZUFy
Y2hpdmUpIHsgbV9zdWJmcmFtZUFyY2hpdmVzLmFwcGVuZChzdWJmcmFtZUFyY2hpdmUpOyB9Cisg
ICAgdm9pZCBzZXRNYWluUmVzb3VyY2UoUmVmPEFyY2hpdmVSZXNvdXJjZT4mJiBtYWluUmVzb3Vy
Y2UpIHsgbV9tYWluUmVzb3VyY2UgPSBXVEZNb3ZlKG1haW5SZXNvdXJjZSk7IH0KKyAgICB2b2lk
IGFkZFN1YnJlc291cmNlKFJlZjxBcmNoaXZlUmVzb3VyY2U+JiYgcmVzb3VyY2UpIHsgbV9zdWJy
ZXNvdXJjZXMuYXBwZW5kKFdURk1vdmUocmVzb3VyY2UpKTsgfQorICAgIHZvaWQgYWRkU3ViZnJh
bWVBcmNoaXZlKFJlZjxBcmNoaXZlPiYmIHN1YmZyYW1lQXJjaGl2ZSkgeyBtX3N1YmZyYW1lQXJj
aGl2ZXMuYXBwZW5kKFdURk1vdmUoc3ViZnJhbWVBcmNoaXZlKSk7IH0KIAogICAgIHZvaWQgY2xl
YXJBbGxTdWJmcmFtZUFyY2hpdmVzKCk7CiAKIHByaXZhdGU6Ci0gICAgdm9pZCBjbGVhckFsbFN1
YmZyYW1lQXJjaGl2ZXNJbXBsKFZlY3RvcjxSZWZQdHI8QXJjaGl2ZT4+KiBjbGVhcmVkQXJjaGl2
ZXMpOworICAgIHZvaWQgY2xlYXJBbGxTdWJmcmFtZUFyY2hpdmVzKEhhc2hTZXQ8QXJjaGl2ZSo+
Jik7CiAKICAgICBSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBtX21haW5SZXNvdXJjZTsKLSAgICBW
ZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+IG1fc3VicmVzb3VyY2VzOwotICAgIFZlY3Rv
cjxSZWZQdHI8QXJjaGl2ZT4+IG1fc3ViZnJhbWVBcmNoaXZlczsKKyAgICBWZWN0b3I8UmVmPEFy
Y2hpdmVSZXNvdXJjZT4+IG1fc3VicmVzb3VyY2VzOworICAgIFZlY3RvcjxSZWY8QXJjaGl2ZT4+
IG1fc3ViZnJhbWVBcmNoaXZlczsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmVGYWN0b3J5LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmVGYWN0b3J5LmNwcAppbmRleCA5
MGI2Nzk5NTE1NmRiMDhlZTRiZTQ3NTQ4NzVhZGU1Y2ZhMzYyZDljLi40MTdhYzQ3YTczNmNlNjVi
MjIzM2MxZmNiNTYyZGY3MTZlYjZhYmIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvYXJjaGl2ZS9BcmNoaXZlRmFjdG9yeS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2FyY2hpdmUvQXJjaGl2ZUZhY3RvcnkuY3BwCkBAIC00OSwzMSArNDksMzMgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogdHlwZWRlZiBSZWZQdHI8QXJjaGl2ZT4gUmF3RGF0YUNyZWF0aW9uRnVuY3Rp
b24oY29uc3QgVVJMJiwgU2hhcmVkQnVmZmVyJik7CiB0eXBlZGVmIEhhc2hNYXA8U3RyaW5nLCBS
YXdEYXRhQ3JlYXRpb25GdW5jdGlvbiosIEFTQ0lJQ2FzZUluc2Vuc2l0aXZlSGFzaD4gQXJjaGl2
ZU1JTUVUeXBlc01hcDsKIAotLy8gVGhlIGNyZWF0ZSBmdW5jdGlvbnMgaW4gdGhlIGFyY2hpdmUg
Y2xhc3NlcyByZXR1cm4gUGFzc1JlZlB0ciB0byBjb25jcmV0ZSBzdWJjbGFzc2VzCisvLyBUaGUg
Y3JlYXRlIGZ1bmN0aW9ucyBpbiB0aGUgYXJjaGl2ZSBjbGFzc2VzIHJldHVybiBSZWZQdHIgdG8g
Y29uY3JldGUgc3ViY2xhc3NlcwogLy8gb2YgQXJjaGl2ZS4gVGhpcyBhZGFwdG9yIG1ha2VzIHRo
ZSBmdW5jdGlvbnMgaGF2ZSBhIHVuaWZvcm0gcmV0dXJuIHR5cGUuCi10ZW1wbGF0ZSA8dHlwZW5h
bWUgQXJjaGl2ZUNsYXNzPiBzdGF0aWMgUmVmUHRyPEFyY2hpdmU+IGFyY2hpdmVGYWN0b3J5Q3Jl
YXRlKGNvbnN0IFVSTCYgdXJsLCBTaGFyZWRCdWZmZXImIGJ1ZmZlcikKK3RlbXBsYXRlPHR5cGVu
YW1lIEFyY2hpdmVDbGFzcz4gc3RhdGljIFJlZlB0cjxBcmNoaXZlPiBhcmNoaXZlRmFjdG9yeUNy
ZWF0ZShjb25zdCBVUkwmIHVybCwgU2hhcmVkQnVmZmVyJiBidWZmZXIpCiB7CiAgICAgcmV0dXJu
IEFyY2hpdmVDbGFzczo6Y3JlYXRlKHVybCwgYnVmZmVyKTsKIH0KIAotc3RhdGljIEFyY2hpdmVN
SU1FVHlwZXNNYXAmIGFyY2hpdmVNSU1FVHlwZXMoKQorc3RhdGljIEFyY2hpdmVNSU1FVHlwZXNN
YXAgY3JlYXRlQXJjaGl2ZU1JTUVUeXBlc01hcCgpCiB7Ci0gICAgc3RhdGljIE5ldmVyRGVzdHJv
eWVkPEFyY2hpdmVNSU1FVHlwZXNNYXA+IG1pbWVUeXBlczsKLSAgICBzdGF0aWMgYm9vbCBpbml0
aWFsaXplZCA9IGZhbHNlOwotCi0gICAgaWYgKGluaXRpYWxpemVkKQotICAgICAgICByZXR1cm4g
bWltZVR5cGVzOworICAgIEFyY2hpdmVNSU1FVHlwZXNNYXAgbWFwOwogCiAjaWYgRU5BQkxFKFdF
Ql9BUkNISVZFKSAmJiBVU0UoQ0YpCi0gICAgbWltZVR5cGVzLmdldCgpLnNldCgiYXBwbGljYXRp
b24veC13ZWJhcmNoaXZlIiwgYXJjaGl2ZUZhY3RvcnlDcmVhdGU8TGVnYWN5V2ViQXJjaGl2ZT4p
OworICAgIG1hcC5hZGQoQVNDSUlMaXRlcmFsIHsgImFwcGxpY2F0aW9uL3gtd2ViYXJjaGl2ZSIg
fSwgYXJjaGl2ZUZhY3RvcnlDcmVhdGU8TGVnYWN5V2ViQXJjaGl2ZT4pOwogI2VuZGlmCisKICNp
ZiBFTkFCTEUoTUhUTUwpCi0gICAgbWltZVR5cGVzLmdldCgpLnNldCgibXVsdGlwYXJ0L3JlbGF0
ZWQiLCBhcmNoaXZlRmFjdG9yeUNyZWF0ZTxNSFRNTEFyY2hpdmU+KTsKLSAgICBtaW1lVHlwZXMu
Z2V0KCkuc2V0KCJhcHBsaWNhdGlvbi94LW1pbWVhcmNoaXZlIiwgYXJjaGl2ZUZhY3RvcnlDcmVh
dGU8TUhUTUxBcmNoaXZlPik7CisgICAgbWFwLmFkZChBU0NJSUxpdGVyYWwgeyAibXVsdGlwYXJ0
L3JlbGF0ZWQiIH0sIGFyY2hpdmVGYWN0b3J5Q3JlYXRlPE1IVE1MQXJjaGl2ZT4pOworICAgIG1h
cC5hZGQoQVNDSUlMaXRlcmFsIHsgImFwcGxpY2F0aW9uL3gtbWltZWFyY2hpdmUiIH0sIGFyY2hp
dmVGYWN0b3J5Q3JlYXRlPE1IVE1MQXJjaGl2ZT4pOwogI2VuZGlmCiAKLSAgICBpbml0aWFsaXpl
ZCA9IHRydWU7Ci0gICAgcmV0dXJuIG1pbWVUeXBlczsKKyAgICByZXR1cm4gbWFwOworfQorCitz
dGF0aWMgQXJjaGl2ZU1JTUVUeXBlc01hcCYgYXJjaGl2ZU1JTUVUeXBlcygpCit7CisgICAgc3Rh
dGljIE5ldmVyRGVzdHJveWVkPEFyY2hpdmVNSU1FVHlwZXNNYXA+IG1hcCA9IGNyZWF0ZUFyY2hp
dmVNSU1FVHlwZXNNYXAoKTsKKyAgICByZXR1cm4gbWFwOwogfQogCiBib29sIEFyY2hpdmVGYWN0
b3J5Ojppc0FyY2hpdmVNaW1lVHlwZShjb25zdCBTdHJpbmcmIG1pbWVUeXBlKQpAQCAtODMsMTAg
Kzg1LDE0IEBAIGJvb2wgQXJjaGl2ZUZhY3Rvcnk6OmlzQXJjaGl2ZU1pbWVUeXBlKGNvbnN0IFN0
cmluZyYgbWltZVR5cGUpCiAKIFJlZlB0cjxBcmNoaXZlPiBBcmNoaXZlRmFjdG9yeTo6Y3JlYXRl
KGNvbnN0IFVSTCYgdXJsLCBTaGFyZWRCdWZmZXIqIGRhdGEsIGNvbnN0IFN0cmluZyYgbWltZVR5
cGUpCiB7Ci0gICAgUmF3RGF0YUNyZWF0aW9uRnVuY3Rpb24qIGZ1bmN0aW9uID0gbWltZVR5cGUu
aXNFbXB0eSgpID8gMCA6IGFyY2hpdmVNSU1FVHlwZXMoKS5nZXQobWltZVR5cGUpOwogICAgIGlm
ICghZGF0YSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgcmV0dXJuIGZ1bmN0aW9uID8g
ZnVuY3Rpb24odXJsLCAqZGF0YSkgOiBSZWZQdHI8QXJjaGl2ZT4obnVsbHB0cik7CisgICAgaWYg
KG1pbWVUeXBlLmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgYXV0byog
ZnVuY3Rpb24gPSBhcmNoaXZlTUlNRVR5cGVzKCkuZ2V0KG1pbWVUeXBlKTsKKyAgICBpZiAoIWZ1
bmN0aW9uKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICByZXR1cm4gZnVuY3Rpb24odXJs
LCAqZGF0YSk7CiB9CiAKIHZvaWQgQXJjaGl2ZUZhY3Rvcnk6OnJlZ2lzdGVyS25vd25BcmNoaXZl
TUlNRVR5cGVzKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0Fy
Y2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hp
dmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5jcHAKaW5kZXggOThmNmMxZTJmYTFkNGE1MDkx
MzAwZDU4NzgwNDQyMTFkOGY3YjIzYi4uYTM3MDVlYzc3YWQyNjMxZTU5NjhkODVhY2U5N2RmMGZk
MTU3YzFlYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2
ZVJlc291cmNlQ29sbGVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hp
dmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICog
Q29weXJpZ2h0IChDKSAyMDA4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENv
cHlyaWdodCAoQykgMjAwOC0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAq
CiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMjksMzEgKzI5LDIzIEBACiAjaW5jbHVk
ZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5oIgogCi1u
YW1lc3BhY2UgV2ViQ29yZSB7CisjaW5jbHVkZSAiQXJjaGl2ZS5oIgogCi1BcmNoaXZlUmVzb3Vy
Y2VDb2xsZWN0aW9uOjpBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uKCkKLXsKLX0KK25hbWVzcGFj
ZSBXZWJDb3JlIHsKIAotdm9pZCBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uOjphZGRBbGxSZXNv
dXJjZXMoQXJjaGl2ZSogYXJjaGl2ZSkKK3ZvaWQgQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbjo6
YWRkQWxsUmVzb3VyY2VzKEFyY2hpdmUmIGFyY2hpdmUpCiB7Ci0gICAgQVNTRVJUKGFyY2hpdmUp
OwotICAgIGlmICghYXJjaGl2ZSkKLSAgICAgICAgcmV0dXJuOworICAgIGZvciAoYXV0byYgc3Vi
cmVzb3VyY2UgOiBhcmNoaXZlLnN1YnJlc291cmNlcygpKQorICAgICAgICBtX3N1YnJlc291cmNl
cy5zZXQoc3VicmVzb3VyY2UtPnVybCgpLCBzdWJyZXNvdXJjZS5wdHIoKSk7CiAKLSAgICBmb3Ig
KGF1dG8mIHN1YnJlc291cmNlIDogYXJjaGl2ZS0+c3VicmVzb3VyY2VzKCkpCi0gICAgICAgIG1f
c3VicmVzb3VyY2VzLnNldChzdWJyZXNvdXJjZS0+dXJsKCksIHN1YnJlc291cmNlLmdldCgpKTsK
LQotICAgIGZvciAoYXV0byYgc3ViZnJhbWVBcmNoaXZlIDogYXJjaGl2ZS0+c3ViZnJhbWVBcmNo
aXZlcygpKSB7CisgICAgZm9yIChhdXRvJiBzdWJmcmFtZUFyY2hpdmUgOiBhcmNoaXZlLnN1YmZy
YW1lQXJjaGl2ZXMoKSkgewogICAgICAgICBBU1NFUlQoc3ViZnJhbWVBcmNoaXZlLT5tYWluUmVz
b3VyY2UoKSk7Ci0KLSAgICAgICAgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUgPSBzdWJmcmFtZUFy
Y2hpdmUtPm1haW5SZXNvdXJjZSgpLT5mcmFtZU5hbWUoKTsKLSAgICAgICAgaWYgKCFmcmFtZU5h
bWUuaXNOdWxsKCkpCi0gICAgICAgICAgICBtX3N1YmZyYW1lcy5zZXQoZnJhbWVOYW1lLCBzdWJm
cmFtZUFyY2hpdmUuZ2V0KCkpOwotICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIC8vIEluIHRo
ZSBNSFRNTCBjYXNlLCBmcmFtZXMgZG9uJ3QgaGF2ZSBhIG5hbWUgc28gd2UgdXNlIHRoZSBVUkwg
aW5zdGVhZC4KLSAgICAgICAgICAgIG1fc3ViZnJhbWVzLnNldChzdWJmcmFtZUFyY2hpdmUtPm1h
aW5SZXNvdXJjZSgpLT51cmwoKS5zdHJpbmcoKSwgc3ViZnJhbWVBcmNoaXZlLmdldCgpKTsKKyAg
ICAgICAgYXV0byBmcmFtZU5hbWUgPSBzdWJmcmFtZUFyY2hpdmUtPm1haW5SZXNvdXJjZSgpLT5m
cmFtZU5hbWUoKTsKKyAgICAgICAgaWYgKGZyYW1lTmFtZS5pc051bGwoKSkgeworICAgICAgICAg
ICAgLy8gSW4gdGhlIE1IVE1MIGNhc2UsIGZyYW1lcyBkb24ndCBoYXZlIGEgbmFtZSwgc28gd2Ug
dXNlIHRoZSBVUkwgaW5zdGVhZC4KKyAgICAgICAgICAgIGZyYW1lTmFtZSA9IHN1YmZyYW1lQXJj
aGl2ZS0+bWFpblJlc291cmNlKCktPnVybCgpLnN0cmluZygpOwogICAgICAgICB9CisgICAgICAg
IG1fc3ViZnJhbWVzLnNldChmcmFtZU5hbWUsIHN1YmZyYW1lQXJjaGl2ZS5wdHIoKSk7CiAgICAg
fQogfQogCkBAIC02MSwyNSArNTMsMTkgQEAgdm9pZCBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9u
OjphZGRBbGxSZXNvdXJjZXMoQXJjaGl2ZSogYXJjaGl2ZSkKIC8vIENhbiB3ZSBjaGFuZ2UgdGhl
IGRlc2lnbiBpbiBhIG1hbm5lciB0aGF0IHdpbGwgbGV0IHVzIGRlcHJlY2F0ZSB0aGF0IEFQSSB3
aXRob3V0IHJlZHVjaW5nIGZ1bmN0aW9uYWxpdHkgb2YgdGhvc2UgYXBwcz8KIHZvaWQgQXJjaGl2
ZVJlc291cmNlQ29sbGVjdGlvbjo6YWRkUmVzb3VyY2UoUmVmPEFyY2hpdmVSZXNvdXJjZT4mJiBy
ZXNvdXJjZSkKIHsKLSAgICBjb25zdCBVUkwmIHVybCA9IHJlc291cmNlLT51cmwoKTsKKyAgICBh
dXRvJiB1cmwgPSByZXNvdXJjZS0+dXJsKCk7CiAgICAgbV9zdWJyZXNvdXJjZXMuc2V0KHVybCwg
V1RGTW92ZShyZXNvdXJjZSkpOwogfQogCiBBcmNoaXZlUmVzb3VyY2UqIEFyY2hpdmVSZXNvdXJj
ZUNvbGxlY3Rpb246OmFyY2hpdmVSZXNvdXJjZUZvclVSTChjb25zdCBVUkwmIHVybCkKIHsKLSAg
ICBBcmNoaXZlUmVzb3VyY2UqIHJlc291cmNlID0gbV9zdWJyZXNvdXJjZXMuZ2V0KHVybCk7Ci0g
ICAgaWYgKCFyZXNvdXJjZSkKLSAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgICAgIAotICAg
IHJldHVybiByZXNvdXJjZTsKKyAgICByZXR1cm4gbV9zdWJyZXNvdXJjZXMuZ2V0KHVybCk7CiB9
CiAKLVBhc3NSZWZQdHI8QXJjaGl2ZT4gQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbjo6cG9wU3Vi
ZnJhbWVBcmNoaXZlKGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBjb25zdCBVUkwmIHVybCkKK1Jl
ZlB0cjxBcmNoaXZlPiBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uOjpwb3BTdWJmcmFtZUFyY2hp
dmUoY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IFVSTCYgdXJsKQogewotICAgIGF1dG8g
YXJjaGl2ZSA9IG1fc3ViZnJhbWVzLnRha2UoZnJhbWVOYW1lKTsKLSAgICBpZiAoYXJjaGl2ZSkK
LSAgICAgICAgcmV0dXJuIFdURk1vdmUoYXJjaGl2ZSk7Ci0KKyAgICBpZiAoYXV0byBhcmNoaXZl
ID0gbV9zdWJmcmFtZXMudGFrZShmcmFtZU5hbWUpKQorICAgICAgICByZXR1cm4gYXJjaGl2ZTsK
ICAgICByZXR1cm4gbV9zdWJmcmFtZXMudGFrZSh1cmwuc3RyaW5nKCkpOwogfQogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlUmVzb3VyY2VDb2xsZWN0
aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlUmVzb3VyY2VDb2xs
ZWN0aW9uLmgKaW5kZXggNWM2MjBiNTFmMzFlNjM4MmQ3ZWYxY2MyNDhiOTMyMGY1NmM4OTdhNy4u
MzdkZjY4YjM2NmNmZjg1MzliOTVjODIzZjJlOTEyNGQzNWVhOTkzOCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rp
b24uaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDggQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CkBAIC0yOCwyNCArMjgsMjkgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpbmNsdWRlICJBcmNoaXZl
LmgiCi0jaW5jbHVkZSAiQXJjaGl2ZVJlc291cmNlLmgiCi0jaW5jbHVkZSAiVVJMLmgiCisjaW5j
bHVkZSA8d3RmL0ZvcndhcmQuaD4KICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgotI2luY2x1ZGUg
PHd0Zi90ZXh0L1dURlN0cmluZy5oPgorI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgorI2lu
Y2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0hhc2guaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitj
bGFzcyBBcmNoaXZlOworY2xhc3MgQXJjaGl2ZVJlc291cmNlOworY2xhc3MgVVJMOworCiBjbGFz
cyBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uIHsKLSAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShB
cmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uKTsgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CisgICAg
V1RGX01BS0VfTk9OQ09QWUFCTEUoQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbik7CisgICAgV1RG
X01BS0VfRkFTVF9BTExPQ0FURUQ7CisKIHB1YmxpYzoKLSAgICBBcmNoaXZlUmVzb3VyY2VDb2xs
ZWN0aW9uKCk7CisgICAgQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbigpID0gZGVmYXVsdDsKIAog
ICAgIHZvaWQgYWRkUmVzb3VyY2UoUmVmPEFyY2hpdmVSZXNvdXJjZT4mJik7Ci0gICAgdm9pZCBh
ZGRBbGxSZXNvdXJjZXMoQXJjaGl2ZSopOworICAgIHZvaWQgYWRkQWxsUmVzb3VyY2VzKEFyY2hp
dmUmKTsKICAgICAKICAgICBXRUJDT1JFX0VYUE9SVCBBcmNoaXZlUmVzb3VyY2UqIGFyY2hpdmVS
ZXNvdXJjZUZvclVSTChjb25zdCBVUkwmKTsKLSAgICBQYXNzUmVmUHRyPEFyY2hpdmU+IHBvcFN1
YmZyYW1lQXJjaGl2ZShjb25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgY29uc3QgVVJMJik7CisgICAg
UmVmUHRyPEFyY2hpdmU+IHBvcFN1YmZyYW1lQXJjaGl2ZShjb25zdCBTdHJpbmcmIGZyYW1lTmFt
ZSwgY29uc3QgVVJMJik7CiAgICAgCiBwcml2YXRlOiAgICAKICAgICBIYXNoTWFwPFN0cmluZywg
UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+IG1fc3VicmVzb3VyY2VzOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvY2YvTGVnYWN5V2ViQXJjaGl2ZS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNoaXZlLmNwcAppbmRleCBl
MDQ5MDYzMDA4MWEwMTJhNDMzMzI2YmUyNDIzMTgyN2RkZmNlOTcxLi4zOWQ4MzUyMDZjNzEwMWVl
NGMxOTBjNDI4ZjRiY2VkYjUzMTMzMWFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvYXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNoaXZlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvYXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNoaXZlLmNwcApAQCAtODAsMTggKzgwLDE2IEBA
IFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVByb3Bl
cnR5TGlzdFJlcHJlc2VudGF0aW9uKEFyCiAgICAgICAgIENGRGljdGlvbmFyeVNldFZhbHVlKHBy
b3BlcnR5TGlzdC5nZXQoKSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlTUlNRVR5cGVLZXksIDAp
OwogICAgICAgICByZXR1cm4gcHJvcGVydHlMaXN0OwogICAgIH0KLSAgICAKLSAgICBSZXRhaW5Q
dHI8Q0ZNdXRhYmxlRGljdGlvbmFyeVJlZj4gcHJvcGVydHlMaXN0ID0gYWRvcHRDRihDRkRpY3Rp
b25hcnlDcmVhdGVNdXRhYmxlKDAsIDYsIDAsICZrQ0ZUeXBlRGljdGlvbmFyeVZhbHVlQ2FsbEJh
Y2tzKSk7Ci0gICAgCisKKyAgICBhdXRvIHByb3BlcnR5TGlzdCA9IGFkb3B0Q0YoQ0ZEaWN0aW9u
YXJ5Q3JlYXRlTXV0YWJsZSgwLCA2LCAwLCAma0NGVHlwZURpY3Rpb25hcnlWYWx1ZUNhbGxCYWNr
cykpOworCiAgICAgLy8gUmVzb3VyY2UgZGF0YSBjYW4gYmUgZW1wdHksIGJ1dCBtdXN0IGJlIHJl
cHJlc2VudGVkIGJ5IGFuIGVtcHR5IENGRGF0YVJlZgotICAgIFNoYXJlZEJ1ZmZlciYgZGF0YSA9
IHJlc291cmNlLT5kYXRhKCk7Ci0gICAgUmV0YWluUHRyPENGRGF0YVJlZj4gY2ZEYXRhOwotICAg
IGNmRGF0YSA9IGRhdGEuY3JlYXRlQ0ZEYXRhKCk7CisgICAgYXV0byYgZGF0YSA9IHJlc291cmNl
LT5kYXRhKCk7CisKKyAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShwcm9wZXJ0eUxpc3QuZ2V0KCks
IExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZURhdGFLZXksIGRhdGEuY3JlYXRlQ0ZEYXRhKCkuZ2V0
KCkpOwogCi0gICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJvcGVydHlMaXN0LmdldCgpLCBMZWdh
Y3lXZWJBcmNoaXZlUmVzb3VyY2VEYXRhS2V5LCBjZkRhdGEuZ2V0KCkpOwotICAgIAogICAgIC8v
IFJlc291cmNlIFVSTCBjYW5ub3QgYmUgbnVsbAotICAgIGlmIChSZXRhaW5QdHI8Q0ZTdHJpbmdS
ZWY+IGNmVVJMID0gcmVzb3VyY2UtPnVybCgpLnN0cmluZygpLmNyZWF0ZUNGU3RyaW5nKCkpCisg
ICAgaWYgKGF1dG8gY2ZVUkwgPSByZXNvdXJjZS0+dXJsKCkuc3RyaW5nKCkuY3JlYXRlQ0ZTdHJp
bmcoKSkKICAgICAgICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJvcGVydHlMaXN0LmdldCgpLCBM
ZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VVUkxLZXksIGNmVVJMLmdldCgpKTsKICAgICBlbHNlIHsK
ICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIE5VTEwgcmVzb3VyY2Ug
VVJMIGlzIGludmFsaWQgLSByZXR1cm5pbmcgbnVsbCBwcm9wZXJ0eSBsaXN0Iik7CkBAIC05OSw0
MiArOTcsNDEgQEAgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gTGVnYWN5V2ViQXJjaGl2ZTo6
Y3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24oQXIKICAgICB9CiAKICAgICAvLyBGcmFt
ZU5hbWUgc2hvdWxkIGJlIGxlZnQgb3V0IGlmIGVtcHR5IGZvciBzdWJyZXNvdXJjZXMsIGJ1dCBh
bHdheXMgaW5jbHVkZWQgZm9yIG1haW4gcmVzb3VyY2VzCi0gICAgY29uc3QgU3RyaW5nJiBmcmFt
ZU5hbWUocmVzb3VyY2UtPmZyYW1lTmFtZSgpKTsKKyAgICBhdXRvJiBmcmFtZU5hbWUgPSByZXNv
dXJjZS0+ZnJhbWVOYW1lKCk7CiAgICAgaWYgKCFmcmFtZU5hbWUuaXNFbXB0eSgpIHx8IGlzTWFp
blJlc291cmNlKQogICAgICAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShwcm9wZXJ0eUxpc3QuZ2V0
KCksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZUZyYW1lTmFtZUtleSwgZnJhbWVOYW1lLmNyZWF0
ZUNGU3RyaW5nKCkuZ2V0KCkpOwotICAgIAorCiAgICAgLy8gU2V0IE1JTUVUeXBlLCBUZXh0RW5j
b2RpbmdOYW1lLCBhbmQgUmVzb3VyY2VSZXNwb25zZSBvbmx5IGlmIHRoZXkgYWN0dWFsbHkgZXhp
c3QKLSAgICBjb25zdCBTdHJpbmcmIG1pbWVUeXBlKHJlc291cmNlLT5taW1lVHlwZSgpKTsKKyAg
ICBhdXRvJiBtaW1lVHlwZSA9IHJlc291cmNlLT5taW1lVHlwZSgpOwogICAgIGlmICghbWltZVR5
cGUuaXNFbXB0eSgpKQogICAgICAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShwcm9wZXJ0eUxpc3Qu
Z2V0KCksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZU1JTUVUeXBlS2V5LCBtaW1lVHlwZS5jcmVh
dGVDRlN0cmluZygpLmdldCgpKTsKLSAgICAKLSAgICBjb25zdCBTdHJpbmcmIHRleHRFbmNvZGlu
ZyhyZXNvdXJjZS0+dGV4dEVuY29kaW5nKCkpOworCisgICAgYXV0byYgdGV4dEVuY29kaW5nID0g
cmVzb3VyY2UtPnRleHRFbmNvZGluZygpOwogICAgIGlmICghdGV4dEVuY29kaW5nLmlzRW1wdHko
KSkKICAgICAgICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJvcGVydHlMaXN0LmdldCgpLCBMZWdh
Y3lXZWJBcmNoaXZlUmVzb3VyY2VUZXh0RW5jb2RpbmdOYW1lS2V5LCB0ZXh0RW5jb2RpbmcuY3Jl
YXRlQ0ZTdHJpbmcoKS5nZXQoKSk7CiAKICAgICAvLyBEb24ndCBpbmNsdWRlIHRoZSByZXNvdXJj
ZSByZXNwb25zZSBmb3IgdGhlIG1haW4gcmVzb3VyY2UKICAgICBpZiAoIWlzTWFpblJlc291cmNl
KSB7Ci0gICAgICAgIFJldGFpblB0cjxDRkRhdGFSZWY+IHJlc291cmNlUmVzcG9uc2VEYXRhID0g
Y3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24ocmVzb3VyY2UtPnJlc3BvbnNlKCkpOwot
ICAgICAgICBpZiAocmVzb3VyY2VSZXNwb25zZURhdGEpCisgICAgICAgIGlmIChhdXRvIHJlc291
cmNlUmVzcG9uc2VEYXRhID0gY3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24ocmVzb3Vy
Y2UtPnJlc3BvbnNlKCkpKQogICAgICAgICAgICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJvcGVy
dHlMaXN0LmdldCgpLCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VSZXNwb25zZUtleSwgcmVzb3Vy
Y2VSZXNwb25zZURhdGEuZ2V0KCkpOyAgICAKICAgICB9CiAgICAgCiAgICAgcmV0dXJuIHByb3Bl
cnR5TGlzdDsKIH0KIAotUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gTGVnYWN5V2ViQXJjaGl2
ZTo6Y3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24oQXJjaGl2ZSogYXJjaGl2ZSkKK1Jl
dGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVByb3BlcnR5
TGlzdFJlcHJlc2VudGF0aW9uKEFyY2hpdmUmIGFyY2hpdmUpCiB7Ci0gICAgUmV0YWluUHRyPENG
TXV0YWJsZURpY3Rpb25hcnlSZWY+IHByb3BlcnR5TGlzdCA9IGFkb3B0Q0YoQ0ZEaWN0aW9uYXJ5
Q3JlYXRlTXV0YWJsZSgwLCAzLCAwLCAma0NGVHlwZURpY3Rpb25hcnlWYWx1ZUNhbGxCYWNrcykp
OwotICAgIAotICAgIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IG1haW5SZXNvdXJjZURpY3Qg
PSBjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihhcmNoaXZlLT5tYWluUmVzb3VyY2Uo
KSwgTWFpblJlc291cmNlKTsKKyAgICBhdXRvIHByb3BlcnR5TGlzdCA9IGFkb3B0Q0YoQ0ZEaWN0
aW9uYXJ5Q3JlYXRlTXV0YWJsZSgwLCAzLCAwLCAma0NGVHlwZURpY3Rpb25hcnlWYWx1ZUNhbGxC
YWNrcykpOworCisgICAgYXV0byBtYWluUmVzb3VyY2VEaWN0ID0gY3JlYXRlUHJvcGVydHlMaXN0
UmVwcmVzZW50YXRpb24oYXJjaGl2ZS5tYWluUmVzb3VyY2UoKSwgTWFpblJlc291cmNlKTsKICAg
ICBBU1NFUlQobWFpblJlc291cmNlRGljdCk7CiAgICAgaWYgKCFtYWluUmVzb3VyY2VEaWN0KQog
ICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShwcm9wZXJ0
eUxpc3QuZ2V0KCksIExlZ2FjeVdlYkFyY2hpdmVNYWluUmVzb3VyY2VLZXksIG1haW5SZXNvdXJj
ZURpY3QuZ2V0KCkpOwogCi0gICAgUmV0YWluUHRyPENGTXV0YWJsZUFycmF5UmVmPiBzdWJyZXNv
dXJjZXNBcnJheSA9IGFkb3B0Q0YoQ0ZBcnJheUNyZWF0ZU11dGFibGUoMCwgYXJjaGl2ZS0+c3Vi
cmVzb3VyY2VzKCkuc2l6ZSgpLCAma0NGVHlwZUFycmF5Q2FsbEJhY2tzKSk7Ci0gICAgZm9yIChh
dXRvJiByZXNvdXJjZSA6IGFyY2hpdmUtPnN1YnJlc291cmNlcygpKSB7Ci0gICAgICAgIGlmIChS
ZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBzdWJyZXNvdXJjZSA9IGNyZWF0ZVByb3BlcnR5TGlz
dFJlcHJlc2VudGF0aW9uKHJlc291cmNlLmdldCgpLCBTdWJyZXNvdXJjZSkpCisgICAgYXV0byBz
dWJyZXNvdXJjZXNBcnJheSA9IGFkb3B0Q0YoQ0ZBcnJheUNyZWF0ZU11dGFibGUoMCwgYXJjaGl2
ZS5zdWJyZXNvdXJjZXMoKS5zaXplKCksICZrQ0ZUeXBlQXJyYXlDYWxsQmFja3MpKTsKKyAgICBm
b3IgKGF1dG8mIHJlc291cmNlIDogYXJjaGl2ZS5zdWJyZXNvdXJjZXMoKSkgeworICAgICAgICBp
ZiAoYXV0byBzdWJyZXNvdXJjZSA9IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKHJl
c291cmNlLnB0cigpLCBTdWJyZXNvdXJjZSkpCiAgICAgICAgICAgICBDRkFycmF5QXBwZW5kVmFs
dWUoc3VicmVzb3VyY2VzQXJyYXkuZ2V0KCksIHN1YnJlc291cmNlLmdldCgpKTsKICAgICAgICAg
ZWxzZQogICAgICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIEZhaWxl
ZCB0byBjcmVhdGUgcHJvcGVydHkgbGlzdCBmb3Igc3VicmVzb3VyY2UiKTsKQEAgLTE0Miw5ICsx
MzksOSBAQCBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVh
dGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihBcgogICAgIGlmIChDRkFycmF5R2V0Q291bnQo
c3VicmVzb3VyY2VzQXJyYXkuZ2V0KCkpKQogICAgICAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShw
cm9wZXJ0eUxpc3QuZ2V0KCksIExlZ2FjeVdlYkFyY2hpdmVTdWJyZXNvdXJjZXNLZXksIHN1YnJl
c291cmNlc0FycmF5LmdldCgpKTsKIAotICAgIFJldGFpblB0cjxDRk11dGFibGVBcnJheVJlZj4g
c3ViZnJhbWVzQXJyYXkgPSBhZG9wdENGKENGQXJyYXlDcmVhdGVNdXRhYmxlKDAsIGFyY2hpdmUt
PnN1YmZyYW1lQXJjaGl2ZXMoKS5zaXplKCksICZrQ0ZUeXBlQXJyYXlDYWxsQmFja3MpKTsKLSAg
ICBmb3IgKGF1dG8mIHN1YmZyYW1lIDogYXJjaGl2ZS0+c3ViZnJhbWVBcmNoaXZlcygpKSB7Ci0g
ICAgICAgIGlmIChSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBzdWJmcmFtZUFyY2hpdmUgPSBj
cmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihzdWJmcmFtZS5nZXQoKSkpCisgICAgYXV0
byBzdWJmcmFtZXNBcnJheSA9IGFkb3B0Q0YoQ0ZBcnJheUNyZWF0ZU11dGFibGUoMCwgYXJjaGl2
ZS5zdWJmcmFtZUFyY2hpdmVzKCkuc2l6ZSgpLCAma0NGVHlwZUFycmF5Q2FsbEJhY2tzKSk7Cisg
ICAgZm9yIChhdXRvJiBzdWJmcmFtZSA6IGFyY2hpdmUuc3ViZnJhbWVBcmNoaXZlcygpKSB7Cisg
ICAgICAgIGlmIChhdXRvIHN1YmZyYW1lQXJjaGl2ZSA9IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJl
c2VudGF0aW9uKHN1YmZyYW1lLmdldCgpKSkKICAgICAgICAgICAgIENGQXJyYXlBcHBlbmRWYWx1
ZShzdWJmcmFtZXNBcnJheS5nZXQoKSwgc3ViZnJhbWVBcmNoaXZlLmdldCgpKTsKICAgICAgICAg
ZWxzZQogICAgICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIEZhaWxl
ZCB0byBjcmVhdGUgcHJvcGVydHkgbGlzdCBmb3Igc3ViZnJhbWUgYXJjaGl2ZSIpOwpAQCAtMTYw
LDEzICsxNTcsMTMgQEAgUmVzb3VyY2VSZXNwb25zZSBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVS
ZXNvdXJjZVJlc3BvbnNlRnJvbVByb3BlcnR5TGlzdERhdGEoQ0YKICAgICBBU1NFUlQoZGF0YSk7
CiAgICAgaWYgKCFkYXRhKQogICAgICAgICByZXR1cm4gUmVzb3VyY2VSZXNwb25zZSgpOwotICAg
IAorCiAgICAgLy8gSWYgdGhlIFJlc291cmNlUmVzcG9uc2VWZXJzaW9uIChwYXNzZWQgaW4gYXMg
cmVzcG9uc2VEYXRhVHlwZSkgZXhpc3RzIGF0IGFsbCwgdGhpcyBpcyBhICJuZXciIHdlYiBhcmNo
aXZlIHRoYXQgd2UKICAgICAvLyBjYW4gcGFyc2Ugd2VsbCBpbiBhIGNyb3NzIHBsYXRmb3JtIG1h
bm5lciBJZiBpdCBkb2Vzbid0IGV4aXN0LCB3ZSB3aWxsIGFzc3VtZSB0aGlzIGlzIGFuICJvbGQi
IHdlYiBhcmNoaXZlIHdpdGgsCiAgICAgLy8gTlNVUkxSZXNwb25zZSBvYmplY3RzIGluIGl0IGFu
ZCBwYXJzZSB0aGUgUmVzb3VyY2VSZXNwb25zZSBhcyBzdWNoLgogICAgIGlmICghcmVzcG9uc2VE
YXRhVHlwZSkKICAgICAgICAgcmV0dXJuIGNyZWF0ZVJlc291cmNlUmVzcG9uc2VGcm9tTWFjQXJj
aGl2ZWREYXRhKGRhdGEpOwotICAgICAgICAKKwogICAgIC8vIEZJWE1FOiBQYXJzZSB0aGUgIm5l
dyIgZm9ybWF0IHRoYXQgdGhlIGFib3ZlIGNvbW1lbnQgcmVmZXJlbmNlcyBoZXJlLiBUaGlzIGZv
cm1hdCBkb2Vzbid0IGV4aXN0IHlldC4KICAgICByZXR1cm4gUmVzb3VyY2VSZXNwb25zZSgpOwog
fQpAQCAtMTc2LDQ3ICsxNzMsNDYgQEAgUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gTGVnYWN5V2Vi
QXJjaGl2ZTo6Y3JlYXRlUmVzb3VyY2UoQ0ZEaWN0aW9uYXJ5UmVmIGRpY3Rpb24KICAgICBBU1NF
UlQoZGljdGlvbmFyeSk7CiAgICAgaWYgKCFkaWN0aW9uYXJ5KQogICAgICAgICByZXR1cm4gbnVs
bHB0cjsKLSAgICAgICAgCi0gICAgQ0ZEYXRhUmVmIHJlc291cmNlRGF0YSA9IHN0YXRpY19jYXN0
PENGRGF0YVJlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJj
aGl2ZVJlc291cmNlRGF0YUtleSkpOworCisgICAgYXV0byByZXNvdXJjZURhdGEgPSBzdGF0aWNf
Y2FzdDxDRkRhdGFSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdl
YkFyY2hpdmVSZXNvdXJjZURhdGFLZXkpKTsKICAgICBpZiAocmVzb3VyY2VEYXRhICYmIENGR2V0
VHlwZUlEKHJlc291cmNlRGF0YSkgIT0gQ0ZEYXRhR2V0VHlwZUlEKCkpIHsKICAgICAgICAgTE9H
KEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIFJlc291cmNlIGRhdGEgaXMgbm90IG9mIHR5
cGUgQ0ZEYXRhLCBjYW5ub3QgY3JlYXRlIGludmFsaWQgcmVzb3VyY2UiKTsKICAgICAgICAgcmV0
dXJuIG51bGxwdHI7CiAgICAgfQotICAgIAotICAgIENGU3RyaW5nUmVmIGZyYW1lTmFtZSA9IHN0
YXRpY19jYXN0PENGU3RyaW5nUmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBM
ZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VGcmFtZU5hbWVLZXkpKTsKKworICAgIGF1dG8gZnJhbWVO
YW1lID0gc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rp
b25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZUZyYW1lTmFtZUtleSkpOwogICAgIGlmIChm
cmFtZU5hbWUgJiYgQ0ZHZXRUeXBlSUQoZnJhbWVOYW1lKSAhPSBDRlN0cmluZ0dldFR5cGVJRCgp
KSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBGcmFtZSBuYW1l
IGlzIG5vdCBvZiB0eXBlIENGU3RyaW5nLCBjYW5ub3QgY3JlYXRlIGludmFsaWQgcmVzb3VyY2Ui
KTsKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQotICAgIAotICAgIENGU3RyaW5nUmVm
IG1pbWVUeXBlID0gc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVl
KGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZU1JTUVUeXBlS2V5KSk7CisKKyAg
ICBhdXRvIG1pbWVUeXBlID0gc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFyeUdl
dFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZU1JTUVUeXBlS2V5KSk7
CiAgICAgaWYgKG1pbWVUeXBlICYmIENGR2V0VHlwZUlEKG1pbWVUeXBlKSAhPSBDRlN0cmluZ0dl
dFR5cGVJRCgpKSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBN
SU1FIHR5cGUgaXMgbm90IG9mIHR5cGUgQ0ZTdHJpbmcsIGNhbm5vdCBjcmVhdGUgaW52YWxpZCBy
ZXNvdXJjZSIpOwogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICB9Ci0gICAgCi0gICAgQ0ZT
dHJpbmdSZWYgdXJsID0gc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZh
bHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZVVSTEtleSkpOworCisgICAg
YXV0byB1cmwgPSBzdGF0aWNfY2FzdDxDRlN0cmluZ1JlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUo
ZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlVVJMS2V5KSk7CiAgICAgaWYgKHVy
bCAmJiBDRkdldFR5cGVJRCh1cmwpICE9IENGU3RyaW5nR2V0VHlwZUlEKCkpIHsKICAgICAgICAg
TE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIFVSTCBpcyBub3Qgb2YgdHlwZSBDRlN0
cmluZywgY2Fubm90IGNyZWF0ZSBpbnZhbGlkIHJlc291cmNlIik7CiAgICAgICAgIHJldHVybiBu
dWxscHRyOwogICAgIH0KLSAgICAKLSAgICBDRlN0cmluZ1JlZiB0ZXh0RW5jb2RpbmcgPSBzdGF0
aWNfY2FzdDxDRlN0cmluZ1JlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVn
YWN5V2ViQXJjaGl2ZVJlc291cmNlVGV4dEVuY29kaW5nTmFtZUtleSkpOworCisgICAgYXV0byB0
ZXh0RW5jb2RpbmcgPSBzdGF0aWNfY2FzdDxDRlN0cmluZ1JlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFs
dWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlVGV4dEVuY29kaW5nTmFtZUtl
eSkpOwogICAgIGlmICh0ZXh0RW5jb2RpbmcgJiYgQ0ZHZXRUeXBlSUQodGV4dEVuY29kaW5nKSAh
PSBDRlN0cmluZ0dldFR5cGVJRCgpKSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdl
YkFyY2hpdmUgLSBUZXh0IGVuY29kaW5nIGlzIG5vdCBvZiB0eXBlIENGU3RyaW5nLCBjYW5ub3Qg
Y3JlYXRlIGludmFsaWQgcmVzb3VyY2UiKTsKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAg
fQogCiAgICAgUmVzb3VyY2VSZXNwb25zZSByZXNwb25zZTsKLSAgICAKLSAgICBDRkRhdGFSZWYg
cmVzb3VyY2VSZXNwb25zZURhdGEgPSBzdGF0aWNfY2FzdDxDRkRhdGFSZWY+KENGRGljdGlvbmFy
eUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZVJlc3BvbnNlS2V5
KSk7Ci0gICAgaWYgKHJlc291cmNlUmVzcG9uc2VEYXRhKSB7CisKKyAgICBpZiAoYXV0byByZXNv
dXJjZVJlc3BvbnNlRGF0YSA9IHN0YXRpY19jYXN0PENGRGF0YVJlZj4oQ0ZEaWN0aW9uYXJ5R2V0
VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlUmVzcG9uc2VLZXkpKSkg
ewogICAgICAgICBpZiAoQ0ZHZXRUeXBlSUQocmVzb3VyY2VSZXNwb25zZURhdGEpICE9IENGRGF0
YUdldFR5cGVJRCgpKSB7CiAgICAgICAgICAgICBMT0coQXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNo
aXZlIC0gUmVzb3VyY2UgcmVzcG9uc2UgZGF0YSBpcyBub3Qgb2YgdHlwZSBDRkRhdGEsIGNhbm5v
dCBjcmVhdGUgaW52YWxpZCByZXNvdXJjZSIpOwogICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7
CiAgICAgICAgIH0KICAgICAgICAgCi0gICAgICAgIENGU3RyaW5nUmVmIHJlc291cmNlUmVzcG9u
c2VWZXJzaW9uID0gc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVl
KGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZVJlc3BvbnNlVmVyc2lvbktleSkp
OworICAgICAgICBhdXRvIHJlc291cmNlUmVzcG9uc2VWZXJzaW9uID0gc3RhdGljX2Nhc3Q8Q0ZT
dHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hp
dmVSZXNvdXJjZVJlc3BvbnNlVmVyc2lvbktleSkpOwogICAgICAgICBpZiAocmVzb3VyY2VSZXNw
b25zZVZlcnNpb24gJiYgQ0ZHZXRUeXBlSUQocmVzb3VyY2VSZXNwb25zZVZlcnNpb24pICE9IENG
U3RyaW5nR2V0VHlwZUlEKCkpIHsKICAgICAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdl
YkFyY2hpdmUgLSBSZXNvdXJjZSByZXNwb25zZSB2ZXJzaW9uIGlzIG5vdCBvZiB0eXBlIENGU3Ry
aW5nLCBjYW5ub3QgY3JlYXRlIGludmFsaWQgcmVzb3VyY2UiKTsKICAgICAgICAgICAgIHJldHVy
biBudWxscHRyOwpAQCAtMjI0LDcgKzIyMCw3IEBAIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IExl
Z2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVJlc291cmNlKENGRGljdGlvbmFyeVJlZiBkaWN0aW9uCiAg
ICAgICAgIAogICAgICAgICByZXNwb25zZSA9IGNyZWF0ZVJlc291cmNlUmVzcG9uc2VGcm9tUHJv
cGVydHlMaXN0RGF0YShyZXNvdXJjZVJlc3BvbnNlRGF0YSwgcmVzb3VyY2VSZXNwb25zZVZlcnNp
b24pOwogICAgIH0KLSAgICAKKwogICAgIHJldHVybiBBcmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShT
aGFyZWRCdWZmZXI6OndyYXBDRkRhdGEocmVzb3VyY2VEYXRhKSwgVVJMKFVSTCgpLCB1cmwpLCBt
aW1lVHlwZSwgdGV4dEVuY29kaW5nLCBmcmFtZU5hbWUsIHJlc3BvbnNlKTsKIH0KIApAQCAtMjMz
LDIxICsyMjksMTkgQEAgUmVmPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNy
ZWF0ZSgpCiAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgTGVnYWN5V2ViQXJjaGl2ZSk7CiB9CiAK
LVJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoUmVmUHRy
PEFyY2hpdmVSZXNvdXJjZT4mJiBtYWluUmVzb3VyY2UsIFZlY3RvcjxSZWZQdHI8QXJjaGl2ZVJl
c291cmNlPj4mJiBzdWJyZXNvdXJjZXMsIFZlY3RvcjxSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4+
JiYgc3ViZnJhbWVBcmNoaXZlcykKK1JlZjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNo
aXZlOjpjcmVhdGUoUmVmPEFyY2hpdmVSZXNvdXJjZT4mJiBtYWluUmVzb3VyY2UsIFZlY3RvcjxS
ZWY8QXJjaGl2ZVJlc291cmNlPj4mJiBzdWJyZXNvdXJjZXMsIFZlY3RvcjxSZWY8TGVnYWN5V2Vi
QXJjaGl2ZT4+JiYgc3ViZnJhbWVBcmNoaXZlcykKIHsKLSAgICBpZiAoIW1haW5SZXNvdXJjZSkK
LSAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0KICAgICBhdXRvIGFyY2hpdmUgPSBjcmVhdGUoKTsK
KwogICAgIGFyY2hpdmUtPnNldE1haW5SZXNvdXJjZShXVEZNb3ZlKG1haW5SZXNvdXJjZSkpOwot
ICAgIAorCiAgICAgZm9yIChhdXRvJiBzdWJyZXNvdXJjZSA6IHN1YnJlc291cmNlcykKICAgICAg
ICAgYXJjaGl2ZS0+YWRkU3VicmVzb3VyY2UoV1RGTW92ZShzdWJyZXNvdXJjZSkpOwogCiAgICAg
Zm9yIChhdXRvJiBzdWJmcmFtZUFyY2hpdmUgOiBzdWJmcmFtZUFyY2hpdmVzKQogICAgICAgICBh
cmNoaXZlLT5hZGRTdWJmcmFtZUFyY2hpdmUoV1RGTW92ZShzdWJmcmFtZUFyY2hpdmUpKTsKIAot
ICAgIHJldHVybiBXVEZNb3ZlKGFyY2hpdmUpOworICAgIHJldHVybiBhcmNoaXZlOwogfQogCiBS
ZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFNoYXJlZEJ1
ZmZlciYgZGF0YSkKQEAgLTMwNyw0OCArMzAxLDUwIEBAIGJvb2wgTGVnYWN5V2ViQXJjaGl2ZTo6
ZXh0cmFjdChDRkRpY3Rpb25hcnlSZWYgZGljdGlvbmFyeSkKICAgICAgICAgTE9HKEFyY2hpdmVz
LCAiTGVnYWN5V2ViQXJjaGl2ZSAtIE1haW4gcmVzb3VyY2UgaXMgbm90IHRoZSBleHBlY3RlZCBD
RkRpY3Rpb25hcnksIGFib3J0aW5nIGludmFsaWQgV2ViQXJjaGl2ZSIpOwogICAgICAgICByZXR1
cm4gZmFsc2U7CiAgICAgfQotICAgIAotICAgIHNldE1haW5SZXNvdXJjZShjcmVhdGVSZXNvdXJj
ZShtYWluUmVzb3VyY2VEaWN0KSk7Ci0gICAgaWYgKCFtYWluUmVzb3VyY2UoKSkgeworCisgICAg
YXV0byBtYWluUmVzb3VyY2UgPSBjcmVhdGVSZXNvdXJjZShtYWluUmVzb3VyY2VEaWN0KTsKKyAg
ICBpZiAoIW1haW5SZXNvdXJjZSkgewogICAgICAgICBMT0coQXJjaGl2ZXMsICJMZWdhY3lXZWJB
cmNoaXZlIC0gRmFpbGVkIHRvIHBhcnNlIG1haW4gcmVzb3VyY2UgZnJvbSBDRkRpY3Rpb25hcnkg
b3IgbWFpbiByZXNvdXJjZSBkb2VzIG5vdCBleGlzdCwgYWJvcnRpbmcgaW52YWxpZCBXZWJBcmNo
aXZlIik7CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9Ci0gICAgCi0gICAgaWYgKG1haW5S
ZXNvdXJjZSgpLT5taW1lVHlwZSgpLmlzTnVsbCgpKSB7CisKKyAgICBpZiAobWFpblJlc291cmNl
LT5taW1lVHlwZSgpLmlzTnVsbCgpKSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdl
YkFyY2hpdmUgLSBNYWluIHJlc291cmNlIE1JTUUgdHlwZSBpcyByZXF1aXJlZCwgYnV0IHdhcyBu
dWxsLiIpOwogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQotICAgIAotICAgIENGQXJyYXlS
ZWYgc3VicmVzb3VyY2VBcnJheSA9IHN0YXRpY19jYXN0PENGQXJyYXlSZWY+KENGRGljdGlvbmFy
eUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVTdWJyZXNvdXJjZXNLZXkpKTsK
KworICAgIHNldE1haW5SZXNvdXJjZShtYWluUmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSk7CisK
KyAgICBhdXRvIHN1YnJlc291cmNlQXJyYXkgPSBzdGF0aWNfY2FzdDxDRkFycmF5UmVmPihDRkRp
Y3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBMZWdhY3lXZWJBcmNoaXZlU3VicmVzb3VyY2Vz
S2V5KSk7CiAgICAgaWYgKHN1YnJlc291cmNlQXJyYXkgJiYgQ0ZHZXRUeXBlSUQoc3VicmVzb3Vy
Y2VBcnJheSkgIT0gQ0ZBcnJheUdldFR5cGVJRCgpKSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywg
IkxlZ2FjeVdlYkFyY2hpdmUgLSBTdWJyZXNvdXJjZXMgaXMgbm90IHRoZSBleHBlY3RlZCBBcnJh
eSwgYWJvcnRpbmcgaW52YWxpZCBXZWJBcmNoaXZlIik7CiAgICAgICAgIHJldHVybiBmYWxzZTsK
ICAgICB9Ci0gICAgCisKICAgICBpZiAoc3VicmVzb3VyY2VBcnJheSkgewotICAgICAgICBDRklu
ZGV4IGNvdW50ID0gQ0ZBcnJheUdldENvdW50KHN1YnJlc291cmNlQXJyYXkpOworICAgICAgICBh
dXRvIGNvdW50ID0gQ0ZBcnJheUdldENvdW50KHN1YnJlc291cmNlQXJyYXkpOwogICAgICAgICBm
b3IgKENGSW5kZXggaSA9IDA7IGkgPCBjb3VudDsgKytpKSB7Ci0gICAgICAgICAgICBDRkRpY3Rp
b25hcnlSZWYgc3VicmVzb3VyY2VEaWN0ID0gc3RhdGljX2Nhc3Q8Q0ZEaWN0aW9uYXJ5UmVmPihD
RkFycmF5R2V0VmFsdWVBdEluZGV4KHN1YnJlc291cmNlQXJyYXksIGkpKTsKKyAgICAgICAgICAg
IGF1dG8gc3VicmVzb3VyY2VEaWN0ID0gc3RhdGljX2Nhc3Q8Q0ZEaWN0aW9uYXJ5UmVmPihDRkFy
cmF5R2V0VmFsdWVBdEluZGV4KHN1YnJlc291cmNlQXJyYXksIGkpKTsKICAgICAgICAgICAgIGlm
IChDRkdldFR5cGVJRChzdWJyZXNvdXJjZURpY3QpICE9IENGRGljdGlvbmFyeUdldFR5cGVJRCgp
KSB7CiAgICAgICAgICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIFN1
YnJlc291cmNlIGlzIG5vdCBleHBlY3RlZCBDRkRpY3Rpb25hcnksIGFib3J0aW5nIGludmFsaWQg
V2ViQXJjaGl2ZSIpOwogICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAg
IH0KICAgICAgICAgICAgIAogICAgICAgICAgICAgaWYgKGF1dG8gc3VicmVzb3VyY2UgPSBjcmVh
dGVSZXNvdXJjZShzdWJyZXNvdXJjZURpY3QpKQotICAgICAgICAgICAgICAgIGFkZFN1YnJlc291
cmNlKFdURk1vdmUoc3VicmVzb3VyY2UpKTsKKyAgICAgICAgICAgICAgICBhZGRTdWJyZXNvdXJj
ZShzdWJyZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICAgICAgfQogICAgIH0KLSAgICAK
LSAgICBDRkFycmF5UmVmIHN1YmZyYW1lQXJyYXkgPSBzdGF0aWNfY2FzdDxDRkFycmF5UmVmPihD
RkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBMZWdhY3lXZWJBcmNoaXZlU3ViZnJhbWVB
cmNoaXZlc0tleSkpOworCisgICAgYXV0byBzdWJmcmFtZUFycmF5ID0gc3RhdGljX2Nhc3Q8Q0ZB
cnJheVJlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2
ZVN1YmZyYW1lQXJjaGl2ZXNLZXkpKTsKICAgICBpZiAoc3ViZnJhbWVBcnJheSAmJiBDRkdldFR5
cGVJRChzdWJmcmFtZUFycmF5KSAhPSBDRkFycmF5R2V0VHlwZUlEKCkpIHsKICAgICAgICAgTE9H
KEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIFN1YmZyYW1lIGFyY2hpdmVzIGlzIG5vdCB0
aGUgZXhwZWN0ZWQgQXJyYXksIGFib3J0aW5nIGludmFsaWQgV2ViQXJjaGl2ZSIpOwogICAgICAg
ICByZXR1cm4gZmFsc2U7CiAgICAgfQotICAgIAorCiAgICAgaWYgKHN1YmZyYW1lQXJyYXkpIHsK
LSAgICAgICAgQ0ZJbmRleCBjb3VudCA9IENGQXJyYXlHZXRDb3VudChzdWJmcmFtZUFycmF5KTsK
KyAgICAgICAgYXV0byBjb3VudCA9IENGQXJyYXlHZXRDb3VudChzdWJmcmFtZUFycmF5KTsKICAg
ICAgICAgZm9yIChDRkluZGV4IGkgPSAwOyBpIDwgY291bnQ7ICsraSkgewotICAgICAgICAgICAg
Q0ZEaWN0aW9uYXJ5UmVmIHN1YmZyYW1lRGljdCA9IHN0YXRpY19jYXN0PENGRGljdGlvbmFyeVJl
Zj4oQ0ZBcnJheUdldFZhbHVlQXRJbmRleChzdWJmcmFtZUFycmF5LCBpKSk7CisgICAgICAgICAg
ICBhdXRvIHN1YmZyYW1lRGljdCA9IHN0YXRpY19jYXN0PENGRGljdGlvbmFyeVJlZj4oQ0ZBcnJh
eUdldFZhbHVlQXRJbmRleChzdWJmcmFtZUFycmF5LCBpKSk7CiAgICAgICAgICAgICBpZiAoQ0ZH
ZXRUeXBlSUQoc3ViZnJhbWVEaWN0KSAhPSBDRkRpY3Rpb25hcnlHZXRUeXBlSUQoKSkgewogICAg
ICAgICAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBTdWJmcmFtZSBh
cnJheSBpcyBub3QgZXhwZWN0ZWQgQ0ZEaWN0aW9uYXJ5LCBhYm9ydGluZyBpbnZhbGlkIFdlYkFy
Y2hpdmUiKTsKICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CkBAIC0zNjUsMjYgKzM2MSwy
MSBAQCBib29sIExlZ2FjeVdlYkFyY2hpdmU6OmV4dHJhY3QoQ0ZEaWN0aW9uYXJ5UmVmIGRpY3Rp
b25hcnkpCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLUFyY2hpdmU6OlR5cGUgTGVnYWN5V2ViQXJj
aGl2ZTo6dHlwZSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIEFyY2hpdmU6OldlYkFyY2hpdmU7Ci19
Ci0gICAgCiBSZXRhaW5QdHI8Q0ZEYXRhUmVmPiBMZWdhY3lXZWJBcmNoaXZlOjpyYXdEYXRhUmVw
cmVzZW50YXRpb24oKQogewotICAgIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IHByb3BlcnR5
TGlzdCA9IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKHRoaXMpOworICAgIGF1dG8g
cHJvcGVydHlMaXN0ID0gY3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24oKnRoaXMpOwog
ICAgIEFTU0VSVChwcm9wZXJ0eUxpc3QpOwogICAgIGlmICghcHJvcGVydHlMaXN0KSB7CiAgICAg
ICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBGYWlsZWQgdG8gY3JlYXRlIHBy
b3BlcnR5IGxpc3QgZm9yIGFyY2hpdmUsIHJldHVybmluZyBubyBkYXRhIik7CiAgICAgICAgIHJl
dHVybiBudWxscHRyOwogICAgIH0KIAotICAgIFJldGFpblB0cjxDRldyaXRlU3RyZWFtUmVmPiBz
dHJlYW0gPSBhZG9wdENGKENGV3JpdGVTdHJlYW1DcmVhdGVXaXRoQWxsb2NhdGVkQnVmZmVycygw
LCAwKSk7CisgICAgYXV0byBzdHJlYW0gPSBhZG9wdENGKENGV3JpdGVTdHJlYW1DcmVhdGVXaXRo
QWxsb2NhdGVkQnVmZmVycygwLCAwKSk7CiAKICAgICBDRldyaXRlU3RyZWFtT3BlbihzdHJlYW0u
Z2V0KCkpOwogICAgIENGUHJvcGVydHlMaXN0V3JpdGUocHJvcGVydHlMaXN0LmdldCgpLCBzdHJl
YW0uZ2V0KCksIGtDRlByb3BlcnR5TGlzdEJpbmFyeUZvcm1hdF92MV8wLCAwLCAwKTsKIAotICAg
IFJldGFpblB0cjxDRkRhdGFSZWY+IHBsaXN0RGF0YSA9IGFkb3B0Q0Yoc3RhdGljX2Nhc3Q8Q0ZE
YXRhUmVmPihDRldyaXRlU3RyZWFtQ29weVByb3BlcnR5KHN0cmVhbS5nZXQoKSwga0NGU3RyZWFt
UHJvcGVydHlEYXRhV3JpdHRlbikpKTsKKyAgICBhdXRvIHBsaXN0RGF0YSA9IGFkb3B0Q0Yoc3Rh
dGljX2Nhc3Q8Q0ZEYXRhUmVmPihDRldyaXRlU3RyZWFtQ29weVByb3BlcnR5KHN0cmVhbS5nZXQo
KSwga0NGU3RyZWFtUHJvcGVydHlEYXRhV3JpdHRlbikpKTsKICAgICBBU1NFUlQocGxpc3REYXRh
KTsKIAogICAgIENGV3JpdGVTdHJlYW1DbG9zZShzdHJlYW0uZ2V0KCkpOwpAQCAtNDMyLDcgKzQy
Myw3IEBAIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUo
Tm9kZSYgbm9kZSwgc3RkOjpmdW5jdGlvbjxib29sCiAKICAgICBWZWN0b3I8Tm9kZSo+IG5vZGVM
aXN0OwogICAgIFN0cmluZyBtYXJrdXBTdHJpbmcgPSBjcmVhdGVNYXJrdXAobm9kZSwgSW5jbHVk
ZU5vZGUsICZub2RlTGlzdCwgRG9Ob3RSZXNvbHZlVVJMcywgdGFnTmFtZXNUb0ZpbHRlci5nZXQo
KSk7Ci0gICAgTm9kZTo6Tm9kZVR5cGUgbm9kZVR5cGUgPSBub2RlLm5vZGVUeXBlKCk7CisgICAg
YXV0byBub2RlVHlwZSA9IG5vZGUubm9kZVR5cGUoKTsKICAgICBpZiAobm9kZVR5cGUgIT0gTm9k
ZTo6RE9DVU1FTlRfTk9ERSAmJiBub2RlVHlwZSAhPSBOb2RlOjpET0NVTUVOVF9UWVBFX05PREUp
CiAgICAgICAgIG1hcmt1cFN0cmluZyA9IGRvY3VtZW50VHlwZVN0cmluZyhub2RlLmRvY3VtZW50
KCkpICsgbWFya3VwU3RyaW5nOwogCkBAIC00NDEsMjAgKzQzMiwyMSBAQCBSZWZQdHI8TGVnYWN5
V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKE5vZGUmIG5vZGUsIHN0ZDo6ZnVu
Y3Rpb248Ym9vbAogCiBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6
Y3JlYXRlKEZyYW1lJiBmcmFtZSkKIHsKLSAgICBEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2Fk
ZXIgPSBmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwotCisgICAgYXV0byogZG9jdW1l
bnRMb2FkZXIgPSBmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwogICAgIGlmICghZG9j
dW1lbnRMb2FkZXIpCiAgICAgICAgIHJldHVybiBudWxscHRyOwotICAgICAgICAKLSAgICBWZWN0
b3I8UmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+PiBzdWJmcmFtZUFyY2hpdmVzOwotICAgIAorCisg
ICAgYXV0byBtYWluUmVzb3VyY2UgPSBkb2N1bWVudExvYWRlci0+bWFpblJlc291cmNlKCk7Cisg
ICAgaWYgKCFtYWluUmVzb3VyY2UpCisgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgVmVj
dG9yPFJlZjxMZWdhY3lXZWJBcmNoaXZlPj4gc3ViZnJhbWVBcmNoaXZlczsKICAgICBmb3IgKHVu
c2lnbmVkIGkgPSAwOyBpIDwgZnJhbWUudHJlZSgpLmNoaWxkQ291bnQoKTsgKytpKSB7Ci0gICAg
ICAgIGlmIChSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gY2hpbGRGcmFtZUFyY2hpdmUgPSBjcmVh
dGUoKmZyYW1lLnRyZWUoKS5jaGlsZChpKSkpCi0gICAgICAgICAgICBzdWJmcmFtZUFyY2hpdmVz
LmFwcGVuZChXVEZNb3ZlKGNoaWxkRnJhbWVBcmNoaXZlKSk7CisgICAgICAgIGlmIChhdXRvIGNo
aWxkRnJhbWVBcmNoaXZlID0gY3JlYXRlKCpmcmFtZS50cmVlKCkuY2hpbGQoaSkpKQorICAgICAg
ICAgICAgc3ViZnJhbWVBcmNoaXZlcy5hcHBlbmQoY2hpbGRGcmFtZUFyY2hpdmUucmVsZWFzZU5v
bk51bGwoKSk7CiAgICAgfQogCi0gICAgYXV0byBzdWJyZXNvdXJjZXMgPSBkb2N1bWVudExvYWRl
ci0+c3VicmVzb3VyY2VzKCk7Ci0gICAgcmV0dXJuIGNyZWF0ZShkb2N1bWVudExvYWRlci0+bWFp
blJlc291cmNlKCksIFdURk1vdmUoc3VicmVzb3VyY2VzKSwgV1RGTW92ZShzdWJmcmFtZUFyY2hp
dmVzKSk7CisgICAgcmV0dXJuIGNyZWF0ZShtYWluUmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSwg
ZG9jdW1lbnRMb2FkZXItPnN1YnJlc291cmNlcygpLCBXVEZNb3ZlKHN1YmZyYW1lQXJjaGl2ZXMp
KTsKIH0KIAogUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0
ZShSYW5nZSogcmFuZ2UpCkBAIC00NjIsMjIgKzQ1NCwyMCBAQCBSZWZQdHI8TGVnYWN5V2ViQXJj
aGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFJhbmdlKiByYW5nZSkKICAgICBpZiAoIXJh
bmdlKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICAgICAgCi0gICAgRG9jdW1lbnQmIGRv
Y3VtZW50ID0gcmFuZ2UtPnN0YXJ0Q29udGFpbmVyKCkuZG9jdW1lbnQoKTsKLQotICAgIEZyYW1l
KiBmcmFtZSA9IGRvY3VtZW50LmZyYW1lKCk7CisgICAgYXV0byYgZG9jdW1lbnQgPSByYW5nZS0+
c3RhcnRDb250YWluZXIoKS5kb2N1bWVudCgpOworICAgIGF1dG8qIGZyYW1lID0gZG9jdW1lbnQu
ZnJhbWUoKTsKICAgICBpZiAoIWZyYW1lKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICAK
LSAgICAvLyBGSVhNRTogVGhpcyBpcyBhbHdheXMgImZvciBpbnRlcmNoYW5nZSIuIElzIHRoYXQg
cmlnaHQ/IFNlZSB0aGUgcHJldmlvdXMgbWV0aG9kLgorCisgICAgLy8gRklYTUU6IFRoaXMgaXMg
YWx3YXlzICJmb3IgaW50ZXJjaGFuZ2UiLiBJcyB0aGF0IHJpZ2h0PwogICAgIFZlY3RvcjxOb2Rl
Kj4gbm9kZUxpc3Q7CiAgICAgU3RyaW5nIG1hcmt1cFN0cmluZyA9IGRvY3VtZW50VHlwZVN0cmlu
Zyhkb2N1bWVudCkgKyBjcmVhdGVNYXJrdXAoKnJhbmdlLCAmbm9kZUxpc3QsIEFubm90YXRlRm9y
SW50ZXJjaGFuZ2UpOwotCiAgICAgcmV0dXJuIGNyZWF0ZShtYXJrdXBTdHJpbmcsICpmcmFtZSwg
bm9kZUxpc3QsIG51bGxwdHIpOwogfQogCiBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5
V2ViQXJjaGl2ZTo6Y3JlYXRlKGNvbnN0IFN0cmluZyYgbWFya3VwU3RyaW5nLCBGcmFtZSYgZnJh
bWUsIGNvbnN0IFZlY3RvcjxOb2RlKj4mIG5vZGVzLCBzdGQ6OmZ1bmN0aW9uPGJvb2wgKEZyYW1l
Jik+IGZyYW1lRmlsdGVyKQogewotICAgIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNl
ID0gZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKS0+cmVzcG9uc2UoKTsKKyAgICBhdXRv
JiByZXNwb25zZSA9IGZyYW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCktPnJlc3BvbnNlKCk7
CiAgICAgVVJMIHJlc3BvbnNlVVJMID0gcmVzcG9uc2UudXJsKCk7CiAgICAgCiAgICAgLy8gaXQn
cyBwb3NzaWJsZSB0byBoYXZlIGEgcmVzcG9uc2Ugd2l0aG91dCBhIFVSTCBoZXJlCkBAIC00ODUs
NDIgKzQ3NSw0MSBAQCBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6
Y3JlYXRlKGNvbnN0IFN0cmluZyYgbWFya3VwU3RyaW5nLCBGcgogICAgIGlmIChyZXNwb25zZVVS
TC5pc051bGwoKSkKICAgICAgICAgcmVzcG9uc2VVUkwgPSBVUkwoUGFyc2VkVVJMU3RyaW5nLCBl
bXB0eVN0cmluZygpKTsKIAotICAgIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IG1haW5SZXNvdXJj
ZSA9IEFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKHV0ZjhCdWZmZXIobWFya3VwU3RyaW5nKSwgcmVz
cG9uc2VVUkwsIHJlc3BvbnNlLm1pbWVUeXBlKCksICJVVEYtOCIsIGZyYW1lLnRyZWUoKS51bmlx
dWVOYW1lKCkpOworICAgIGF1dG8gbWFpblJlc291cmNlID0gQXJjaGl2ZVJlc291cmNlOjpjcmVh
dGUodXRmOEJ1ZmZlcihtYXJrdXBTdHJpbmcpLCByZXNwb25zZVVSTCwgcmVzcG9uc2UubWltZVR5
cGUoKSwgIlVURi04IiwgZnJhbWUudHJlZSgpLnVuaXF1ZU5hbWUoKSk7CiAgICAgaWYgKCFtYWlu
UmVzb3VyY2UpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgVmVjdG9yPFJlZlB0cjxM
ZWdhY3lXZWJBcmNoaXZlPj4gc3ViZnJhbWVBcmNoaXZlczsKLSAgICBWZWN0b3I8UmVmUHRyPEFy
Y2hpdmVSZXNvdXJjZT4+IHN1YnJlc291cmNlczsKKyAgICBWZWN0b3I8UmVmPExlZ2FjeVdlYkFy
Y2hpdmU+PiBzdWJmcmFtZUFyY2hpdmVzOworICAgIFZlY3RvcjxSZWY8QXJjaGl2ZVJlc291cmNl
Pj4gc3VicmVzb3VyY2VzOwogICAgIEhhc2hTZXQ8VVJMPiB1bmlxdWVTdWJyZXNvdXJjZXM7CiAK
LSAgICBzaXplX3Qgbm9kZXNTaXplID0gbm9kZXMuc2l6ZSgpOyAgICAKLSAgICBmb3IgKHNpemVf
dCBpID0gMDsgaSA8IG5vZGVzU2l6ZTsgKytpKSB7Ci0gICAgICAgIE5vZGUmIG5vZGUgPSAqbm9k
ZXNbaV07CisgICAgZm9yIChhdXRvJiBub2RlUHRyIDogbm9kZXMpIHsKKyAgICAgICAgTm9kZSYg
bm9kZSA9ICpub2RlUHRyOwogICAgICAgICBGcmFtZSogY2hpbGRGcmFtZTsKICAgICAgICAgaWYg
KChpczxIVE1MRnJhbWVFbGVtZW50QmFzZT4obm9kZSkgfHwgaXM8SFRNTE9iamVjdEVsZW1lbnQ+
KG5vZGUpKQogICAgICAgICAgICAgJiYgKGNoaWxkRnJhbWUgPSBkb3duY2FzdDxIVE1MRnJhbWVP
d25lckVsZW1lbnQ+KG5vZGUpLmNvbnRlbnRGcmFtZSgpKSkgewogICAgICAgICAgICAgaWYgKGZy
YW1lRmlsdGVyICYmICFmcmFtZUZpbHRlcigqY2hpbGRGcmFtZSkpCiAgICAgICAgICAgICAgICAg
Y29udGludWU7Ci0gICAgICAgICAgICAgICAgCi0gICAgICAgICAgICBpZiAoUmVmUHRyPExlZ2Fj
eVdlYkFyY2hpdmU+IHN1YmZyYW1lQXJjaGl2ZSA9IGNyZWF0ZSgqY2hpbGRGcmFtZS0+ZG9jdW1l
bnQoKSwgZnJhbWVGaWx0ZXIpKQotICAgICAgICAgICAgICAgIHN1YmZyYW1lQXJjaGl2ZXMuYXBw
ZW5kKFdURk1vdmUoc3ViZnJhbWVBcmNoaXZlKSk7CisgICAgICAgICAgICBpZiAoYXV0byBzdWJm
cmFtZUFyY2hpdmUgPSBjcmVhdGUoKmNoaWxkRnJhbWUtPmRvY3VtZW50KCksIGZyYW1lRmlsdGVy
KSkKKyAgICAgICAgICAgICAgICBzdWJmcmFtZUFyY2hpdmVzLmFwcGVuZChzdWJmcmFtZUFyY2hp
dmUucmVsZWFzZU5vbk51bGwoKSk7CiAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAg
TE9HX0VSUk9SKCJVbmFibGVkIHRvIGFyY2hpdmUgc3ViZnJhbWUgJXMiLCBjaGlsZEZyYW1lLT50
cmVlKCkudW5pcXVlTmFtZSgpLnN0cmluZygpLnV0ZjgoKS5kYXRhKCkpOwogCiAgICAgICAgIH0g
ZWxzZSB7CiAgICAgICAgICAgICBMaXN0SGFzaFNldDxVUkw+IHN1YnJlc291cmNlVVJMczsKICAg
ICAgICAgICAgIG5vZGUuZ2V0U3VicmVzb3VyY2VVUkxzKHN1YnJlc291cmNlVVJMcyk7Ci0gICAg
ICAgICAgICAKLSAgICAgICAgICAgIERvY3VtZW50TG9hZGVyKiBkb2N1bWVudExvYWRlciA9IGZy
YW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCk7CiAKLSAgICAgICAgICAgIGZvciAoY29uc3Qg
YXV0byYgc3VicmVzb3VyY2VVUkwgOiBzdWJyZXNvdXJjZVVSTHMpIHsKKyAgICAgICAgICAgIEFT
U0VSVChmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKTsKKyAgICAgICAgICAgIGF1dG8m
IGRvY3VtZW50TG9hZGVyID0gKmZyYW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCk7CisKKyAg
ICAgICAgICAgIGZvciAoYXV0byYgc3VicmVzb3VyY2VVUkwgOiBzdWJyZXNvdXJjZVVSTHMpIHsK
ICAgICAgICAgICAgICAgICBpZiAodW5pcXVlU3VicmVzb3VyY2VzLmNvbnRhaW5zKHN1YnJlc291
cmNlVVJMKSkKICAgICAgICAgICAgICAgICAgICAgY29udGludWU7CiAKICAgICAgICAgICAgICAg
ICB1bmlxdWVTdWJyZXNvdXJjZXMuYWRkKHN1YnJlc291cmNlVVJMKTsKIAotICAgICAgICAgICAg
ICAgIGlmIChSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiByZXNvdXJjZSA9IGRvY3VtZW50TG9hZGVy
LT5zdWJyZXNvdXJjZShzdWJyZXNvdXJjZVVSTCkpIHsKLSAgICAgICAgICAgICAgICAgICAgc3Vi
cmVzb3VyY2VzLmFwcGVuZChXVEZNb3ZlKHJlc291cmNlKSk7CisgICAgICAgICAgICAgICAgaWYg
KGF1dG8gcmVzb3VyY2UgPSBkb2N1bWVudExvYWRlci5zdWJyZXNvdXJjZShzdWJyZXNvdXJjZVVS
TCkpIHsKKyAgICAgICAgICAgICAgICAgICAgc3VicmVzb3VyY2VzLmFwcGVuZChyZXNvdXJjZS5y
ZWxlYXNlTm9uTnVsbCgpKTsKICAgICAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAg
ICAgICAgICAgfQogCkBAIC01MjgsMTAgKzUxNyw5IEBAIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZl
PiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoY29uc3QgU3RyaW5nJiBtYXJrdXBTdHJpbmcsIEZy
CiAjaWYgRU5BQkxFKENBQ0hFX1BBUlRJVElPTklORykKICAgICAgICAgICAgICAgICByZXF1ZXN0
LnNldERvbWFpbkZvckNhY2hlUGFydGl0aW9uKGZyYW1lLmRvY3VtZW50KCktPnRvcE9yaWdpbigp
LT5kb21haW5Gb3JDYWNoZVBhcnRpdGlvbigpKTsKICNlbmRpZgotICAgICAgICAgICAgICAgIENh
Y2hlZFJlc291cmNlKiBjYWNoZWRSZXNvdXJjZSA9IE1lbW9yeUNhY2hlOjpzaW5nbGV0b24oKS5y
ZXNvdXJjZUZvclJlcXVlc3QocmVxdWVzdCwgZnJhbWUucGFnZSgpLT5zZXNzaW9uSUQoKSk7Ci0g
ICAgICAgICAgICAgICAgaWYgKGNhY2hlZFJlc291cmNlKSB7Ci0gICAgICAgICAgICAgICAgICAg
IGlmIChSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiByZXNvdXJjZSA9IEFyY2hpdmVSZXNvdXJjZTo6
Y3JlYXRlKGNhY2hlZFJlc291cmNlLT5yZXNvdXJjZUJ1ZmZlcigpLCBzdWJyZXNvdXJjZVVSTCwg
Y2FjaGVkUmVzb3VyY2UtPnJlc3BvbnNlKCkpKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBz
dWJyZXNvdXJjZXMuYXBwZW5kKFdURk1vdmUocmVzb3VyY2UpKTsKKyAgICAgICAgICAgICAgICBp
ZiAoYXV0byogY2FjaGVkUmVzb3VyY2UgPSBNZW1vcnlDYWNoZTo6c2luZ2xldG9uKCkucmVzb3Vy
Y2VGb3JSZXF1ZXN0KHJlcXVlc3QsIGZyYW1lLnBhZ2UoKS0+c2Vzc2lvbklEKCkpKSB7CisgICAg
ICAgICAgICAgICAgICAgIGlmIChhdXRvIHJlc291cmNlID0gQXJjaGl2ZVJlc291cmNlOjpjcmVh
dGUoY2FjaGVkUmVzb3VyY2UtPnJlc291cmNlQnVmZmVyKCksIHN1YnJlc291cmNlVVJMLCBjYWNo
ZWRSZXNvdXJjZS0+cmVzcG9uc2UoKSkpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHN1YnJl
c291cmNlcy5hcHBlbmQocmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSk7CiAgICAgICAgICAgICAg
ICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAg
ICAgIH0KQEAgLTU0MywxNyArNTMxLDE3IEBAIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdh
Y3lXZWJBcmNoaXZlOjpjcmVhdGUoY29uc3QgU3RyaW5nJiBtYXJrdXBTdHJpbmcsIEZyCiAgICAg
fQogCiAgICAgLy8gQWRkIGZhdmljb24gaWYgb25lIGV4aXN0cyBmb3IgdGhpcyBwYWdlLCBpZiB3
ZSBhcmUgYXJjaGl2aW5nIHRoZSBlbnRpcmUgcGFnZS4KLSAgICBpZiAobm9kZXNTaXplICYmIG5v
ZGVzWzBdLT5pc0RvY3VtZW50Tm9kZSgpICYmIGljb25EYXRhYmFzZSgpLmlzRW5hYmxlZCgpKSB7
Ci0gICAgICAgIGNvbnN0IFN0cmluZyYgaWNvblVSTCA9IGljb25EYXRhYmFzZSgpLnN5bmNocm9u
b3VzSWNvblVSTEZvclBhZ2VVUkwocmVzcG9uc2VVUkwpOworICAgIGlmICghbm9kZXMuaXNFbXB0
eSgpICYmIG5vZGVzWzBdLT5pc0RvY3VtZW50Tm9kZSgpICYmIGljb25EYXRhYmFzZSgpLmlzRW5h
YmxlZCgpKSB7CisgICAgICAgIGF1dG8gaWNvblVSTCA9IGljb25EYXRhYmFzZSgpLnN5bmNocm9u
b3VzSWNvblVSTEZvclBhZ2VVUkwocmVzcG9uc2VVUkwpOwogICAgICAgICBpZiAoIWljb25VUkwu
aXNFbXB0eSgpICYmIGljb25EYXRhYmFzZSgpLnN5bmNocm9ub3VzSWNvbkRhdGFLbm93bkZvcklj
b25VUkwoaWNvblVSTCkpIHsKLSAgICAgICAgICAgIGlmIChJbWFnZSogaWNvbkltYWdlID0gaWNv
bkRhdGFiYXNlKCkuc3luY2hyb25vdXNJY29uRm9yUGFnZVVSTChyZXNwb25zZVVSTCwgSW50U2l6
ZSgxNiwgMTYpKSkgeworICAgICAgICAgICAgaWYgKGF1dG8qIGljb25JbWFnZSA9IGljb25EYXRh
YmFzZSgpLnN5bmNocm9ub3VzSWNvbkZvclBhZ2VVUkwocmVzcG9uc2VVUkwsIEludFNpemUoMTYs
IDE2KSkpIHsKICAgICAgICAgICAgICAgICBpZiAoYXV0byByZXNvdXJjZSA9IEFyY2hpdmVSZXNv
dXJjZTo6Y3JlYXRlKGljb25JbWFnZS0+ZGF0YSgpLCBVUkwoUGFyc2VkVVJMU3RyaW5nLCBpY29u
VVJMKSwgImltYWdlL3gtaWNvbiIsICIiLCAiIikpCi0gICAgICAgICAgICAgICAgICAgIHN1YnJl
c291cmNlcy5hcHBlbmQoV1RGTW92ZShyZXNvdXJjZSkpOworICAgICAgICAgICAgICAgICAgICBz
dWJyZXNvdXJjZXMuYXBwZW5kKHJlc291cmNlLnJlbGVhc2VOb25OdWxsKCkpOwogICAgICAgICAg
ICAgfQogICAgICAgICB9CiAgICAgfQogCi0gICAgcmV0dXJuIGNyZWF0ZShXVEZNb3ZlKG1haW5S
ZXNvdXJjZSksIFdURk1vdmUoc3VicmVzb3VyY2VzKSwgV1RGTW92ZShzdWJmcmFtZUFyY2hpdmVz
KSk7CisgICAgcmV0dXJuIGNyZWF0ZShtYWluUmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSwgV1RG
TW92ZShzdWJyZXNvdXJjZXMpLCBXVEZNb3ZlKHN1YmZyYW1lQXJjaGl2ZXMpKTsKIH0KIAogUmVm
UHRyPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZUZyb21TZWxlY3Rp
b24oRnJhbWUqIGZyYW1lKQpAQCAtNTYxLDcgKzU0OSw3IEBAIFJlZlB0cjxMZWdhY3lXZWJBcmNo
aXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVGcm9tU2VsZWN0aW9uKEZyYW1lKiBmcmFtZSkK
ICAgICBpZiAoIWZyYW1lKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAotICAgIERvY3VtZW50
KiBkb2N1bWVudCA9IGZyYW1lLT5kb2N1bWVudCgpOworICAgIGF1dG8qIGRvY3VtZW50ID0gZnJh
bWUtPmRvY3VtZW50KCk7CiAgICAgaWYgKCFkb2N1bWVudCkKICAgICAgICAgcmV0dXJuIG51bGxw
dHI7CiAKQEAgLTU2OSwxMiArNTU3LDEwIEBAIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdh
Y3lXZWJBcmNoaXZlOjpjcmVhdGVGcm9tU2VsZWN0aW9uKEZyYW1lKiBmcmFtZSkKICAgICBidWls
ZGVyLmFwcGVuZChkb2N1bWVudFR5cGVTdHJpbmcoKmRvY3VtZW50KSk7CiAKICAgICBWZWN0b3I8
Tm9kZSo+IG5vZGVMaXN0OwotICAgIFJlZlB0cjxSYW5nZT4gc2VsZWN0aW9uUmFuZ2UgPSBmcmFt
ZS0+c2VsZWN0aW9uKCkudG9Ob3JtYWxpemVkUmFuZ2UoKTsKLSAgICBpZiAoc2VsZWN0aW9uUmFu
Z2UpCisgICAgaWYgKGF1dG8gc2VsZWN0aW9uUmFuZ2UgPSBmcmFtZS0+c2VsZWN0aW9uKCkudG9O
b3JtYWxpemVkUmFuZ2UoKSkKICAgICAgICAgYnVpbGRlci5hcHBlbmQoY3JlYXRlTWFya3VwKCpz
ZWxlY3Rpb25SYW5nZSwgJm5vZGVMaXN0LCBBbm5vdGF0ZUZvckludGVyY2hhbmdlKSk7CiAKLSAg
ICBTdHJpbmcgbWFya3VwU3RyaW5nID0gYnVpbGRlci50b1N0cmluZygpOwotICAgIFJlZlB0cjxM
ZWdhY3lXZWJBcmNoaXZlPiBhcmNoaXZlID0gY3JlYXRlKG1hcmt1cFN0cmluZywgKmZyYW1lLCBu
b2RlTGlzdCwgbnVsbHB0cik7CisgICAgYXV0byBhcmNoaXZlID0gY3JlYXRlKGJ1aWxkZXIudG9T
dHJpbmcoKSwgKmZyYW1lLCBub2RlTGlzdCwgbnVsbHB0cik7CiAgICAgCiAgICAgaWYgKCFkb2N1
bWVudC0+aXNGcmFtZVNldCgpKQogICAgICAgICByZXR1cm4gYXJjaGl2ZTsKQEAgLTU4NCw3ICs1
NzAsMTEgQEAgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0
ZUZyb21TZWxlY3Rpb24oRnJhbWUqIGZyYW1lKQogICAgIFN0cmluZyBpZnJhbWVNYXJrdXAgPSAi
PGlmcmFtZSBmcmFtZWJvcmRlcj1cIm5vXCIgbWFyZ2lud2lkdGg9XCIwXCIgbWFyZ2luaGVpZ2h0
PVwiMFwiIHdpZHRoPVwiOTglJVwiIGhlaWdodD1cIjk4JSVcIiBzcmM9XCIiICsgZnJhbWUtPmxv
YWRlcigpLmRvY3VtZW50TG9hZGVyKCktPnJlc3BvbnNlKCkudXJsKCkuc3RyaW5nKCkgKyAiXCI+
PC9pZnJhbWU+IjsKICAgICBhdXRvIGlmcmFtZVJlc291cmNlID0gQXJjaGl2ZVJlc291cmNlOjpj
cmVhdGUodXRmOEJ1ZmZlcihpZnJhbWVNYXJrdXApLCBibGFua1VSTCgpLCAidGV4dC9odG1sIiwg
IlVURi04IiwgU3RyaW5nKCkpOwogCi0gICAgcmV0dXJuIGNyZWF0ZShXVEZNb3ZlKGlmcmFtZVJl
c291cmNlKSwgVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+PigpLCBWZWN0b3I8UmVmUHRy
PExlZ2FjeVdlYkFyY2hpdmU+PiB7IGFyY2hpdmUgfSk7CisgICAgVmVjdG9yPFJlZjxMZWdhY3lX
ZWJBcmNoaXZlPj4gc3ViZnJhbWVBcmNoaXZlczsKKyAgICBzdWJmcmFtZUFyY2hpdmVzLnJlc2Vy
dmVJbml0aWFsQ2FwYWNpdHkoMSk7CisgICAgc3ViZnJhbWVBcmNoaXZlcy51bmNoZWNrZWRBcHBl
bmQoYXJjaGl2ZS5yZWxlYXNlTm9uTnVsbCgpKTsKKworICAgIHJldHVybiBjcmVhdGUoaWZyYW1l
UmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSwgeyB9LCBXVEZNb3ZlKHN1YmZyYW1lQXJjaGl2ZXMp
KTsKIH0KIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvY2Yv
TGVnYWN5V2ViQXJjaGl2ZS5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvY2YvTGVn
YWN5V2ViQXJjaGl2ZS5oCmluZGV4IDM1ZGRmM2MyYTU5YzA4NjMzYmRkOWIyMTM0N2IzNmY4ZDI3
NjJjMWEuLjQ0NjdkMGQ2YTAzZTA4MDNhZTZiYTc1NjM5NzZlYmU1MjJhMTQ5OGEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL2NmL0xlZ2FjeVdlYkFyY2hpdmUuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNoaXZlLmgK
QEAgLTM3LDIzICszNywyNiBAQCBjbGFzcyBGcmFtZTsKIGNsYXNzIE5vZGU7CiBjbGFzcyBSYW5n
ZTsKIAotY2xhc3MgTGVnYWN5V2ViQXJjaGl2ZSA6IHB1YmxpYyBBcmNoaXZlIHsKK2NsYXNzIExl
Z2FjeVdlYkFyY2hpdmUgZmluYWwgOiBwdWJsaWMgQXJjaGl2ZSB7CiBwdWJsaWM6CiAgICAgV0VC
Q09SRV9FWFBPUlQgc3RhdGljIFJlZjxMZWdhY3lXZWJBcmNoaXZlPiBjcmVhdGUoKTsKICAgICBX
RUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IGNyZWF0ZShTaGFy
ZWRCdWZmZXImKTsKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmUHRyPExlZ2FjeVdlYkFy
Y2hpdmU+IGNyZWF0ZShjb25zdCBVUkwmLCBTaGFyZWRCdWZmZXImKTsKLSAgICBXRUJDT1JFX0VY
UE9SVCBzdGF0aWMgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IGNyZWF0ZShSZWZQdHI8QXJjaGl2
ZVJlc291cmNlPiYmIG1haW5SZXNvdXJjZSwgVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+
PiYmIHN1YnJlc291cmNlcywgVmVjdG9yPFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPj4mJiBzdWJm
cmFtZUFyY2hpdmVzKTsKKyAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmPExlZ2FjeVdlYkFy
Y2hpdmU+IGNyZWF0ZShSZWY8QXJjaGl2ZVJlc291cmNlPiYmIG1haW5SZXNvdXJjZSwgVmVjdG9y
PFJlZjxBcmNoaXZlUmVzb3VyY2U+PiYmIHN1YnJlc291cmNlcywgVmVjdG9yPFJlZjxMZWdhY3lX
ZWJBcmNoaXZlPj4mJiBzdWJmcmFtZUFyY2hpdmVzKTsKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0
aWMgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IGNyZWF0ZShOb2RlJiwgc3RkOjpmdW5jdGlvbjxi
b29sKEZyYW1lJik+IGZyYW1lRmlsdGVyID0gbnVsbHB0cik7CiAgICAgV0VCQ09SRV9FWFBPUlQg
c3RhdGljIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBjcmVhdGUoRnJhbWUmKTsKICAgICBXRUJD
T1JFX0VYUE9SVCBzdGF0aWMgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IGNyZWF0ZUZyb21TZWxl
Y3Rpb24oRnJhbWUqKTsKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmUHRyPExlZ2FjeVdl
YkFyY2hpdmU+IGNyZWF0ZShSYW5nZSopOwogCi0gICAgVHlwZSB0eXBlKCkgY29uc3Qgb3ZlcnJp
ZGU7Ci0KICAgICBXRUJDT1JFX0VYUE9SVCBSZXRhaW5QdHI8Q0ZEYXRhUmVmPiByYXdEYXRhUmVw
cmVzZW50YXRpb24oKTsKIAogcHJpdmF0ZToKLSAgICBMZWdhY3lXZWJBcmNoaXZlKCkgeyB9Cisg
ICAgTGVnYWN5V2ViQXJjaGl2ZSgpID0gZGVmYXVsdDsKKworICAgIGJvb2wgc2hvdWxkTG9hZEZy
b21BcmNoaXZlT25seSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIGZhbHNlOyB9CisgICAgYm9vbCBz
aG91bGRPdmVycmlkZUJhc2VVUkwoKSBjb25zdCBmaW5hbCB7IHJldHVybiBmYWxzZTsgfQorICAg
IGJvb2wgc2hvdWxkVXNlTWFpblJlc291cmNlRW5jb2RpbmcoKSBjb25zdCBmaW5hbCB7IHJldHVy
biB0cnVlOyB9CisgICAgYm9vbCBzaG91bGRVc2VNYWluUmVzb3VyY2VVUkwoKSBjb25zdCBmaW5h
bCB7IHJldHVybiB0cnVlOyB9CiAKICAgICBlbnVtIE1haW5SZXNvdXJjZVN0YXR1cyB7IFN1YnJl
c291cmNlLCBNYWluUmVzb3VyY2UgfTsKIApAQCAtNjIsNyArNjUsNyBAQCBwcml2YXRlOgogICAg
IHN0YXRpYyBSZXNvdXJjZVJlc3BvbnNlIGNyZWF0ZVJlc291cmNlUmVzcG9uc2VGcm9tTWFjQXJj
aGl2ZWREYXRhKENGRGF0YVJlZik7CiAgICAgc3RhdGljIFJlc291cmNlUmVzcG9uc2UgY3JlYXRl
UmVzb3VyY2VSZXNwb25zZUZyb21Qcm9wZXJ0eUxpc3REYXRhKENGRGF0YVJlZiwgQ0ZTdHJpbmdS
ZWYgcmVzcG9uc2VEYXRhVHlwZSk7CiAgICAgc3RhdGljIFJldGFpblB0cjxDRkRhdGFSZWY+IGNy
ZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsK
LSAgICBzdGF0aWMgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gY3JlYXRlUHJvcGVydHlMaXN0
UmVwcmVzZW50YXRpb24oQXJjaGl2ZSopOworICAgIHN0YXRpYyBSZXRhaW5QdHI8Q0ZEaWN0aW9u
YXJ5UmVmPiBjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihBcmNoaXZlJik7CiAgICAg
c3RhdGljIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJl
c2VudGF0aW9uKEFyY2hpdmVSZXNvdXJjZSosIE1haW5SZXNvdXJjZVN0YXR1cyk7CiAKICAgICBi
b29sIGV4dHJhY3QoQ0ZEaWN0aW9uYXJ5UmVmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9hcmNoaXZlL21odG1sL01IVE1MQXJjaGl2ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRNTEFyY2hpdmUuY3BwCmluZGV4IGUxZjNhZDA2YTVmN2Yy
YjgwNTUzMTA0NWRhNGI4NmMyZDNjODJkZDMuLmE5MjFiMDVlODQ2YTA1YTVhZmNlNjMwM2FhMThm
OGJmMzA3MDlkYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL21o
dG1sL01IVE1MQXJjaGl2ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUv
bWh0bWwvTUhUTUxBcmNoaXZlLmNwcApAQCAtMTIyLDE1ICsxMjIsMTUgQEAgUmVmUHRyPE1IVE1M
QXJjaGl2ZT4gTUhUTUxBcmNoaXZlOjpjcmVhdGUoY29uc3QgVVJMJiB1cmwsIFNoYXJlZEJ1ZmZl
ciYgZGF0YSkKICAgICAgICAgUmVmUHRyPE1IVE1MQXJjaGl2ZT4gYXJjaGl2ZSA9IHBhcnNlci5m
cmFtZUF0KGkpOwogICAgICAgICBmb3IgKHNpemVfdCBqID0gMTsgaiA8IHBhcnNlci5mcmFtZUNv
dW50KCk7ICsraikgewogICAgICAgICAgICAgaWYgKGkgIT0gaikKLSAgICAgICAgICAgICAgICBh
cmNoaXZlLT5hZGRTdWJmcmFtZUFyY2hpdmUocGFyc2VyLmZyYW1lQXQoaikpOworICAgICAgICAg
ICAgICAgIGFyY2hpdmUtPmFkZFN1YmZyYW1lQXJjaGl2ZSgqcGFyc2VyLmZyYW1lQXQoaikpOwog
ICAgICAgICB9CiAgICAgICAgIGZvciAoc2l6ZV90IGogPSAwOyBqIDwgcGFyc2VyLnN1YlJlc291
cmNlQ291bnQoKTsgKytqKQotICAgICAgICAgICAgYXJjaGl2ZS0+YWRkU3VicmVzb3VyY2UocGFy
c2VyLnN1YlJlc291cmNlQXQoaikpOworICAgICAgICAgICAgYXJjaGl2ZS0+YWRkU3VicmVzb3Vy
Y2UoKnBhcnNlci5zdWJSZXNvdXJjZUF0KGopKTsKICAgICB9CiAgICAgcmV0dXJuIG1haW5BcmNo
aXZlOwogfQogCi1QYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gTUhUTUxBcmNoaXZlOjpnZW5lcmF0
ZU1IVE1MRGF0YShQYWdlKiBwYWdlKQorUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gTUhUTUxBcmNoaXZl
OjpnZW5lcmF0ZU1IVE1MRGF0YShQYWdlKiBwYWdlKQogewogICAgIFZlY3RvcjxQYWdlU2VyaWFs
aXplcjo6UmVzb3VyY2U+IHJlc291cmNlczsKICAgICBQYWdlU2VyaWFsaXplciBwYWdlU2VyaWFs
aXplcigmcmVzb3VyY2VzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNo
aXZlL21odG1sL01IVE1MQXJjaGl2ZS5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUv
bWh0bWwvTUhUTUxBcmNoaXZlLmgKaW5kZXggY2EyMDAwMzc5YmRmNDEyZjRlNDEyNGVhZjIxYWJh
NjZhMTVlMzRiMi4uODUyNDY1OWFhYjIyMGRlMDc1YzY3N2FiNzBmMTlhY2NjODgxOGRmZiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvbWh0bWwvTUhUTUxBcmNoaXZl
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvbWh0bWwvTUhUTUxBcmNoaXZl
LmgKQEAgLTQwLDIyICs0MCwyNCBAQCBjbGFzcyBNSFRNTFBhcnNlcjsKIGNsYXNzIFBhZ2U7CiBj
bGFzcyBTaGFyZWRCdWZmZXI7CiAKLWNsYXNzIE1IVE1MQXJjaGl2ZSA6IHB1YmxpYyBBcmNoaXZl
IHsKK2NsYXNzIE1IVE1MQXJjaGl2ZSBmaW5hbCA6IHB1YmxpYyBBcmNoaXZlIHsKIHB1YmxpYzoK
LSAgICBUeXBlIHR5cGUoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBNSFRNTDsgfQotCiAgICAg
c3RhdGljIFJlZjxNSFRNTEFyY2hpdmU+IGNyZWF0ZSgpOwogICAgIHN0YXRpYyBSZWZQdHI8TUhU
TUxBcmNoaXZlPiBjcmVhdGUoY29uc3QgVVJMJiwgU2hhcmVkQnVmZmVyJik7CiAKLSAgICBzdGF0
aWMgUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGdlbmVyYXRlTUhUTUxEYXRhKFBhZ2UqKTsKKyAg
ICBzdGF0aWMgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZ2VuZXJhdGVNSFRNTERhdGEoUGFnZSopOwog
CiAgICAgdmlydHVhbCB+TUhUTUxBcmNoaXZlKCk7CiAKIHByaXZhdGU6Ci0gICAgc3RhdGljIFBh
c3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBnZW5lcmF0ZU1IVE1MRGF0YShQYWdlKiwgYm9vbCB1c2VC
aW5hcnlFbmNvZGluZyk7Ci0KICAgICBmcmllbmQgY2xhc3MgTUhUTUxQYXJzZXI7CisKICAgICBN
SFRNTEFyY2hpdmUoKTsKKworICAgIGJvb2wgc2hvdWxkTG9hZEZyb21BcmNoaXZlT25seSgpIGNv
bnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KKyAgICBib29sIHNob3VsZE92ZXJyaWRlQmFzZVVS
TCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KKyAgICBib29sIHNob3VsZFVzZU1haW5S
ZXNvdXJjZUVuY29kaW5nKCkgY29uc3QgZmluYWwgeyByZXR1cm4gZmFsc2U7IH0KKyAgICBib29s
IHNob3VsZFVzZU1haW5SZXNvdXJjZVVSTCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIGZhbHNlOyB9
CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRNTFBhcnNlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRNTFBhcnNlci5jcHAKaW5kZXggZjhhMDdlZGRhYTZhODMz
MDA2YWUwMDY4MGM5N2ZkNzA5MWM2ZDljYS4uYjA0MTRlYmM5NjE1NWIxNWJhMTRjNmYzZDU4ODk1
ZjZmMzI3MDJhMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvbWh0
bWwvTUhUTUxQYXJzZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL21o
dG1sL01IVE1MUGFyc2VyLmNwcApAQCAtNzUsNyArNzUsNyBAQCBSZWZQdHI8TUhUTUxBcmNoaXZl
PiBNSFRNTFBhcnNlcjo6cGFyc2VBcmNoaXZlV2l0aEhlYWRlcihNSU1FSGVhZGVyKiBoZWFkZXIp
CiAgICAgICAgIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IHJlc291cmNlID0gcGFyc2VOZXh0UGFy
dCgqaGVhZGVyLCBTdHJpbmcoKSwgU3RyaW5nKCksIGVuZE9mQXJjaGl2ZVJlYWNoZWQpOwogICAg
ICAgICBpZiAoIXJlc291cmNlKQogICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgICAg
IGFyY2hpdmUtPnNldE1haW5SZXNvdXJjZShyZXNvdXJjZSk7CisgICAgICAgIGFyY2hpdmUtPnNl
dE1haW5SZXNvdXJjZShyZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICAgICAgcmV0dXJu
IGFyY2hpdmU7CiAgICAgfQogCkBAIC0xMDEsNyArMTAxLDcgQEAgUmVmUHRyPE1IVE1MQXJjaGl2
ZT4gTUhUTUxQYXJzZXI6OnBhcnNlQXJjaGl2ZVdpdGhIZWFkZXIoTUlNRUhlYWRlciogaGVhZGVy
KQogICAgICAgICAgICAgLy8gVGhlIHRvcC1mcmFtZSBpcyB0aGUgZmlyc3QgZnJhbWUgZm91bmQs
IHJlZ2FyZGxlc3Mgb2YgdGhlIG5lc3RpbmcgbGV2ZWwuCiAgICAgICAgICAgICBpZiAoc3ViZnJh
bWVBcmNoaXZlLT5tYWluUmVzb3VyY2UoKSkKICAgICAgICAgICAgICAgICBhZGRSZXNvdXJjZVRv
QXJjaGl2ZShzdWJmcmFtZUFyY2hpdmUtPm1haW5SZXNvdXJjZSgpLCBhcmNoaXZlLmdldCgpKTsK
LSAgICAgICAgICAgIGFyY2hpdmUtPmFkZFN1YmZyYW1lQXJjaGl2ZShzdWJmcmFtZUFyY2hpdmUp
OworICAgICAgICAgICAgYXJjaGl2ZS0+YWRkU3ViZnJhbWVBcmNoaXZlKHN1YmZyYW1lQXJjaGl2
ZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICB9CiAK
QEAgLTEyNiwxMyArMTI2LDEzIEBAIHZvaWQgTUhUTUxQYXJzZXI6OmFkZFJlc291cmNlVG9BcmNo
aXZlKEFyY2hpdmVSZXNvdXJjZSogcmVzb3VyY2UsIE1IVE1MQXJjaGl2ZSoKIAogICAgIC8vIFRo
ZSBmaXJzdCBkb2N1bWVudCBzdWl0YWJsZSByZXNvdXJjZSBpcyB0aGUgbWFpbiBmcmFtZS4KICAg
ICBpZiAoIWFyY2hpdmUtPm1haW5SZXNvdXJjZSgpKSB7Ci0gICAgICAgIGFyY2hpdmUtPnNldE1h
aW5SZXNvdXJjZShyZXNvdXJjZSk7CisgICAgICAgIGFyY2hpdmUtPnNldE1haW5SZXNvdXJjZSgq
cmVzb3VyY2UpOwogICAgICAgICBtX2ZyYW1lcy5hcHBlbmQoYXJjaGl2ZSk7CiAgICAgICAgIHJl
dHVybjsKICAgICB9CiAKICAgICBSZWZQdHI8TUhUTUxBcmNoaXZlPiBzdWJmcmFtZSA9IE1IVE1M
QXJjaGl2ZTo6Y3JlYXRlKCk7Ci0gICAgc3ViZnJhbWUtPnNldE1haW5SZXNvdXJjZShyZXNvdXJj
ZSk7CisgICAgc3ViZnJhbWUtPnNldE1haW5SZXNvdXJjZSgqcmVzb3VyY2UpOwogICAgIG1fZnJh
bWVzLmFwcGVuZChzdWJmcmFtZSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmNwcAppbmRleCA4YmYwNjkxYWM0OTY2NTUxOGNm
YThhYjVlOTExMDUwN2RlZDc3MDY5Li5hZjQwY2MyMDRhZDA0N2Y4NWMyMzQxN2NiY2U3ZjE5N2Uz
YmU2MjQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkQ1NT
U3R5bGVTaGVldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZENT
U1N0eWxlU2hlZXQuY3BwCkBAIC0zLDcgKzMsNyBAQAogICAgIENvcHlyaWdodCAoQykgMjAwMSBE
aXJrIE11ZWxsZXIgKG11ZWxsZXJAa2RlLm9yZykKICAgICBDb3B5cmlnaHQgKEMpIDIwMDIgV2Fs
ZG8gQmFzdGlhbiAoYmFzdGlhbkBrZGUub3JnKQogICAgIENvcHlyaWdodCAoQykgMjAwNiBTYW11
ZWwgV2VpbmlnIChzYW0ud2VpbmlnQGdtYWlsLmNvbSkKLSAgICBDb3B5cmlnaHQgKEMpIDIwMDQs
IDIwMDUsIDIwMDYgQXBwbGUgSW5jLgorICAgIENvcHlyaWdodCAoQykgMjAwNC0yMDE3IEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KIAogICAgIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNv
ZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICAgICBtb2RpZnkgaXQgdW5k
ZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYwpAQCAtMTksOSAr
MTksNiBAQAogICAgIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlO
Ry5MSUIuICBJZiBub3QsIHdyaXRlIHRvCiAgICAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv
biwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKICAgICBCb3N0b24sIE1B
IDAyMTEwLTEzMDEsIFVTQS4KLQotICAgIFRoaXMgY2xhc3MgcHJvdmlkZXMgYWxsIGZ1bmN0aW9u
YWxpdHkgbmVlZGVkIGZvciBsb2FkaW5nIGltYWdlcywgc3R5bGUgc2hlZXRzIGFuZCBodG1sCi0g
ICAgcGFnZXMgZnJvbSB0aGUgd2ViLiBJdCBoYXMgYSBtZW1vcnkgY2FjaGUgZm9yIHRoZXNlIG9i
amVjdHMuCiAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCkBAIC0xNTYsNyArMTUzLDcgQEAgdm9p
ZCBDYWNoZWRDU1NTdHlsZVNoZWV0OjpkZXN0cm95RGVjb2RlZERhdGEoKQogICAgIHNldERlY29k
ZWRTaXplKDApOwogfQogCi1QYXNzUmVmUHRyPFN0eWxlU2hlZXRDb250ZW50cz4gQ2FjaGVkQ1NT
U3R5bGVTaGVldDo6cmVzdG9yZVBhcnNlZFN0eWxlU2hlZXQoY29uc3QgQ1NTUGFyc2VyQ29udGV4
dCYgY29udGV4dCwgQ2FjaGVQb2xpY3kgY2FjaGVQb2xpY3kpCitSZWZQdHI8U3R5bGVTaGVldENv
bnRlbnRzPiBDYWNoZWRDU1NTdHlsZVNoZWV0OjpyZXN0b3JlUGFyc2VkU3R5bGVTaGVldChjb25z
dCBDU1NQYXJzZXJDb250ZXh0JiBjb250ZXh0LCBDYWNoZVBvbGljeSBjYWNoZVBvbGljeSkKIHsK
ICAgICBpZiAoIW1fcGFyc2VkU3R5bGVTaGVldENhY2hlKQogICAgICAgICByZXR1cm4gbnVsbHB0
cjsKQEAgLTE4MCw3ICsxNzcsNyBAQCBQYXNzUmVmUHRyPFN0eWxlU2hlZXRDb250ZW50cz4gQ2Fj
aGVkQ1NTU3R5bGVTaGVldDo6cmVzdG9yZVBhcnNlZFN0eWxlU2hlZXQoY29ucwogCiB2b2lkIENh
Y2hlZENTU1N0eWxlU2hlZXQ6OnNhdmVQYXJzZWRTdHlsZVNoZWV0KFJlZjxTdHlsZVNoZWV0Q29u
dGVudHM+JiYgc2hlZXQpCiB7Ci0gICAgQVNTRVJUKHNoZWV0LmdldCgpLmlzQ2FjaGVhYmxlKCkp
OworICAgIEFTU0VSVChzaGVldC0+aXNDYWNoZWFibGUoKSk7CiAKICAgICBpZiAobV9wYXJzZWRT
dHlsZVNoZWV0Q2FjaGUpCiAgICAgICAgIG1fcGFyc2VkU3R5bGVTaGVldENhY2hlLT5yZW1vdmVk
RnJvbU1lbW9yeUNhY2hlKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2Fj
aGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0Nh
Y2hlZENTU1N0eWxlU2hlZXQuaAppbmRleCAzYzhhZTI4ZGQyN2FlZjgwYWUyZGVlYjRhMzM2ZTc0
ODU0ZTdlZjBjLi5jMzNhYTJlNDA4NTUzOGJjN2I0NTZmNDE2MzljMmNjMTg3OWY4NzRlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmgK
QEAgLTIsNyArMiw3IEBACiAgICAgQ29weXJpZ2h0IChDKSAxOTk4IExhcnMgS25vbGwgKGtub2xs
QG1waS1oZC5tcGcuZGUpCiAgICAgQ29weXJpZ2h0IChDKSAyMDAxIERpcmsgTXVlbGxlciA8bXVl
bGxlckBrZGUub3JnPgogICAgIENvcHlyaWdodCAoQykgMjAwNiBTYW11ZWwgV2VpbmlnIChzYW0u
d2VpbmlnQGdtYWlsLmNvbSkKLSAgICBDb3B5cmlnaHQgKEMpIDIwMDQsIDIwMDUsIDIwMDYsIDIw
MDcsIDIwMDggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICAgIENvcHlyaWdodCAo
QykgMjAwNC0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KIAogICAgIFRoaXMg
bGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IK
ICAgICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFs
IFB1YmxpYwpAQCAtMTgsOSArMTgsNiBAQAogICAgIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBz
ZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCiAgICAgdGhlIEZyZWUg
U29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9v
ciwKICAgICBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KLQotICAgIFRoaXMgY2xhc3MgcHJv
dmlkZXMgYWxsIGZ1bmN0aW9uYWxpdHkgbmVlZGVkIGZvciBsb2FkaW5nIGltYWdlcywgc3R5bGUg
c2hlZXRzIGFuZCBodG1sCi0gICAgcGFnZXMgZnJvbSB0aGUgd2ViLiBJdCBoYXMgYSBtZW1vcnkg
Y2FjaGUgZm9yIHRoZXNlIG9iamVjdHMuCiAqLwogCiAjcHJhZ21hIG9uY2UKQEAgLTI5LDQ0ICsy
Niw0NCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLSAgICBjbGFzcyBDYWNoZWRSZXNvdXJj
ZUNsaWVudDsKLSAgICBjbGFzcyBTdHlsZVNoZWV0Q29udGVudHM7Ci0gICAgY2xhc3MgVGV4dFJl
c291cmNlRGVjb2RlcjsKLSAgICBzdHJ1Y3QgQ1NTUGFyc2VyQ29udGV4dDsKK2NsYXNzIFN0eWxl
U2hlZXRDb250ZW50czsKK2NsYXNzIFRleHRSZXNvdXJjZURlY29kZXI7CisKK3N0cnVjdCBDU1NQ
YXJzZXJDb250ZXh0OwogCi0gICAgY2xhc3MgQ2FjaGVkQ1NTU3R5bGVTaGVldCBmaW5hbCA6IHB1
YmxpYyBDYWNoZWRSZXNvdXJjZSB7Ci0gICAgcHVibGljOgotICAgICAgICBDYWNoZWRDU1NTdHls
ZVNoZWV0KENhY2hlZFJlc291cmNlUmVxdWVzdCYmLCBTZXNzaW9uSUQpOwotICAgICAgICB2aXJ0
dWFsIH5DYWNoZWRDU1NTdHlsZVNoZWV0KCk7CitjbGFzcyBDYWNoZWRDU1NTdHlsZVNoZWV0IGZp
bmFsIDogcHVibGljIENhY2hlZFJlc291cmNlIHsKK3B1YmxpYzoKKyAgICBDYWNoZWRDU1NTdHls
ZVNoZWV0KENhY2hlZFJlc291cmNlUmVxdWVzdCYmLCBTZXNzaW9uSUQpOworICAgIHZpcnR1YWwg
fkNhY2hlZENTU1N0eWxlU2hlZXQoKTsKIAotICAgICAgICBlbnVtIGNsYXNzIE1JTUVUeXBlQ2hl
Y2sgeyBTdHJpY3QsIExheCB9OwotICAgICAgICBjb25zdCBTdHJpbmcgc2hlZXRUZXh0KE1JTUVU
eXBlQ2hlY2sgPSBNSU1FVHlwZUNoZWNrOjpTdHJpY3QsIGJvb2wqIGhhc1ZhbGlkTUlNRVR5cGUg
PSBudWxscHRyKSBjb25zdDsKKyAgICBlbnVtIGNsYXNzIE1JTUVUeXBlQ2hlY2sgeyBTdHJpY3Qs
IExheCB9OworICAgIGNvbnN0IFN0cmluZyBzaGVldFRleHQoTUlNRVR5cGVDaGVjayA9IE1JTUVU
eXBlQ2hlY2s6OlN0cmljdCwgYm9vbCogaGFzVmFsaWRNSU1FVHlwZSA9IG51bGxwdHIpIGNvbnN0
OwogCi0gICAgICAgIFBhc3NSZWZQdHI8U3R5bGVTaGVldENvbnRlbnRzPiByZXN0b3JlUGFyc2Vk
U3R5bGVTaGVldChjb25zdCBDU1NQYXJzZXJDb250ZXh0JiwgQ2FjaGVQb2xpY3kpOwotICAgICAg
ICB2b2lkIHNhdmVQYXJzZWRTdHlsZVNoZWV0KFJlZjxTdHlsZVNoZWV0Q29udGVudHM+JiYpOwor
ICAgIFJlZlB0cjxTdHlsZVNoZWV0Q29udGVudHM+IHJlc3RvcmVQYXJzZWRTdHlsZVNoZWV0KGNv
bnN0IENTU1BhcnNlckNvbnRleHQmLCBDYWNoZVBvbGljeSk7CisgICAgdm9pZCBzYXZlUGFyc2Vk
U3R5bGVTaGVldChSZWY8U3R5bGVTaGVldENvbnRlbnRzPiYmKTsKIAotICAgIHByaXZhdGU6Ci0g
ICAgICAgIGJvb2wgY2FuVXNlU2hlZXQoTUlNRVR5cGVDaGVjaywgYm9vbCogaGFzVmFsaWRNSU1F
VHlwZSkgY29uc3Q7Ci0gICAgICAgIGJvb2wgbWF5VHJ5UmVwbGFjZUVuY29kZWREYXRhKCkgY29u
c3QgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQorcHJpdmF0ZToKKyAgICBib29sIGNhblVzZVNoZWV0
KE1JTUVUeXBlQ2hlY2ssIGJvb2wqIGhhc1ZhbGlkTUlNRVR5cGUpIGNvbnN0OworICAgIGJvb2wg
bWF5VHJ5UmVwbGFjZUVuY29kZWREYXRhKCkgY29uc3QgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQog
Ci0gICAgICAgIHZvaWQgZGlkQWRkQ2xpZW50KENhY2hlZFJlc291cmNlQ2xpZW50JikgZmluYWw7
CisgICAgdm9pZCBkaWRBZGRDbGllbnQoQ2FjaGVkUmVzb3VyY2VDbGllbnQmKSBmaW5hbDsKIAot
ICAgICAgICB2b2lkIHNldEVuY29kaW5nKGNvbnN0IFN0cmluZyYpIGZpbmFsOwotICAgICAgICBT
dHJpbmcgZW5jb2RpbmcoKSBjb25zdCBmaW5hbDsKLSAgICAgICAgY29uc3QgVGV4dFJlc291cmNl
RGVjb2RlciogdGV4dFJlc291cmNlRGVjb2RlcigpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fZGVj
b2Rlci5nZXQoKTsgfQotICAgICAgICB2b2lkIGZpbmlzaExvYWRpbmcoU2hhcmVkQnVmZmVyKikg
ZmluYWw7Ci0gICAgICAgIHZvaWQgZGVzdHJveURlY29kZWREYXRhKCkgZmluYWw7CisgICAgdm9p
ZCBzZXRFbmNvZGluZyhjb25zdCBTdHJpbmcmKSBmaW5hbDsKKyAgICBTdHJpbmcgZW5jb2Rpbmco
KSBjb25zdCBmaW5hbDsKKyAgICBjb25zdCBUZXh0UmVzb3VyY2VEZWNvZGVyKiB0ZXh0UmVzb3Vy
Y2VEZWNvZGVyKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9kZWNvZGVyLmdldCgpOyB9CisgICAg
dm9pZCBmaW5pc2hMb2FkaW5nKFNoYXJlZEJ1ZmZlciopIGZpbmFsOworICAgIHZvaWQgZGVzdHJv
eURlY29kZWREYXRhKCkgZmluYWw7CiAKLSAgICAgICAgdm9pZCBzZXRCb2R5RGF0YUZyb20oY29u
c3QgQ2FjaGVkUmVzb3VyY2UmKSBmaW5hbDsKKyAgICB2b2lkIHNldEJvZHlEYXRhRnJvbShjb25z
dCBDYWNoZWRSZXNvdXJjZSYpIGZpbmFsOwogCi0gICAgcHJvdGVjdGVkOgotICAgICAgICB2b2lk
IGNoZWNrTm90aWZ5KCkgZmluYWw7Citwcm90ZWN0ZWQ6CisgICAgdm9pZCBjaGVja05vdGlmeSgp
IGZpbmFsOwogCi0gICAgICAgIFJlZlB0cjxUZXh0UmVzb3VyY2VEZWNvZGVyPiBtX2RlY29kZXI7
Ci0gICAgICAgIFN0cmluZyBtX2RlY29kZWRTaGVldFRleHQ7CisgICAgUmVmUHRyPFRleHRSZXNv
dXJjZURlY29kZXI+IG1fZGVjb2RlcjsKKyAgICBTdHJpbmcgbV9kZWNvZGVkU2hlZXRUZXh0Owog
Ci0gICAgICAgIFJlZlB0cjxTdHlsZVNoZWV0Q29udGVudHM+IG1fcGFyc2VkU3R5bGVTaGVldENh
Y2hlOwotICAgIH07CisgICAgUmVmUHRyPFN0eWxlU2hlZXRDb250ZW50cz4gbV9wYXJzZWRTdHls
ZVNoZWV0Q2FjaGU7Cit9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3QuY3BwIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdC5jcHAKaW5k
ZXggNDczYWNkNTlmMDM0YTExMmJlZTY0MzUxNWQ2Y2IyOWI1YjUwMTU0Yi4uNmQwYzIyMTE5YWUz
NGIxY2QwNGZhM2YxMGE1MzQ2ZWY2MWIwNjI1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdC5jcHAKQEAgLTU5LDE1ICs1OSwx
NyBAQCBTdHJpbmcgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0OjpzcGxpdEZyYWdtZW50SWRlbnRpZmll
ckZyb21SZXF1ZXN0VVJMKFJlc291cmNlUmVxdQogICAgIHJldHVybiBmcmFnbWVudElkZW50aWZp
ZXI7CiB9CiAKLXZvaWQgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0OjpzZXRJbml0aWF0b3IoUGFzc1Jl
ZlB0cjxFbGVtZW50PiBlbGVtZW50KQordm9pZCBDYWNoZWRSZXNvdXJjZVJlcXVlc3Q6OnNldElu
aXRpYXRvcihFbGVtZW50JiBlbGVtZW50KQogewotICAgIEFTU0VSVCghbV9pbml0aWF0b3JFbGVt
ZW50ICYmIG1faW5pdGlhdG9yTmFtZS5pc0VtcHR5KCkpOwotICAgIG1faW5pdGlhdG9yRWxlbWVu
dCA9IGVsZW1lbnQ7CisgICAgQVNTRVJUKCFtX2luaXRpYXRvckVsZW1lbnQpOworICAgIEFTU0VS
VChtX2luaXRpYXRvck5hbWUuaXNFbXB0eSgpKTsKKyAgICBtX2luaXRpYXRvckVsZW1lbnQgPSAm
ZWxlbWVudDsKIH0KIAogdm9pZCBDYWNoZWRSZXNvdXJjZVJlcXVlc3Q6OnNldEluaXRpYXRvcihj
b25zdCBBdG9taWNTdHJpbmcmIG5hbWUpCiB7Ci0gICAgQVNTRVJUKCFtX2luaXRpYXRvckVsZW1l
bnQgJiYgbV9pbml0aWF0b3JOYW1lLmlzRW1wdHkoKSk7CisgICAgQVNTRVJUKCFtX2luaXRpYXRv
ckVsZW1lbnQpOworICAgIEFTU0VSVChtX2luaXRpYXRvck5hbWUuaXNFbXB0eSgpKTsKICAgICBt
X2luaXRpYXRvck5hbWUgPSBuYW1lOwogfQogCkBAIC0yMDksMTAgKzIxMSwxMiBAQCB2b2lkIENh
Y2hlZFJlc291cmNlUmVxdWVzdDo6cmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVySWZOZWVkZWQoKQog
fQogCiAjaWYgRU5BQkxFKENPTlRFTlRfRVhURU5TSU9OUykKKwogdm9pZCBDYWNoZWRSZXNvdXJj
ZVJlcXVlc3Q6OmFwcGx5QmxvY2tlZFN0YXR1cyhjb25zdCBDb250ZW50RXh0ZW5zaW9uczo6Qmxv
Y2tlZFN0YXR1cyYgYmxvY2tlZFN0YXR1cykKIHsKICAgICBDb250ZW50RXh0ZW5zaW9uczo6YXBw
bHlCbG9ja2VkU3RhdHVzVG9SZXF1ZXN0KGJsb2NrZWRTdGF0dXMsIG1fcmVzb3VyY2VSZXF1ZXN0
KTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0Ojp1cGRhdGVSZWZl
cnJlck9yaWdpbkFuZFVzZXJBZ2VudEhlYWRlcnMoRnJhbWVMb2FkZXImIGZyYW1lTG9hZGVyLCBS
ZWZlcnJlclBvbGljeSBkZWZhdWx0UG9saWN5KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdC5oIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdC5oCmluZGV4IDBlOGE0YzNmYjkzYmU1MTMy
OTRkNGYwNDVlOTllZjlhZTcxMDc2MDAuLmVlZWQxYTFmZmY0NTZmMmZjMzEzNjJiY2U0YWM2ZmZj
ODI3ZGZiNjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRS
ZXNvdXJjZVJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
UmVzb3VyY2VSZXF1ZXN0LmgKQEAgLTU4LDcgKzU4LDcgQEAgcHVibGljOgogICAgIGNvbnN0IFJl
c291cmNlTG9hZGVyT3B0aW9ucyYgb3B0aW9ucygpIGNvbnN0IHsgcmV0dXJuIG1fb3B0aW9uczsg
fQogICAgIHZvaWQgc2V0T3B0aW9ucyhjb25zdCBSZXNvdXJjZUxvYWRlck9wdGlvbnMmIG9wdGlv
bnMpIHsgbV9vcHRpb25zID0gb3B0aW9uczsgfQogICAgIGNvbnN0IHN0ZDo6b3B0aW9uYWw8UmVz
b3VyY2VMb2FkUHJpb3JpdHk+JiBwcmlvcml0eSgpIGNvbnN0IHsgcmV0dXJuIG1fcHJpb3JpdHk7
IH0KLSAgICB2b2lkIHNldEluaXRpYXRvcihQYXNzUmVmUHRyPEVsZW1lbnQ+KTsKKyAgICB2b2lk
IHNldEluaXRpYXRvcihFbGVtZW50Jik7CiAgICAgdm9pZCBzZXRJbml0aWF0b3IoY29uc3QgQXRv
bWljU3RyaW5nJiBuYW1lKTsKICAgICBjb25zdCBBdG9taWNTdHJpbmcmIGluaXRpYXRvck5hbWUo
KSBjb25zdDsKICAgICBib29sIGFsbG93c0NhY2hpbmcoKSBjb25zdCB7IHJldHVybiBtX29wdGlv
bnMuY2FjaGluZ1BvbGljeSA9PSBDYWNoaW5nUG9saWN5OjpBbGxvd0NhY2hpbmc7IH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jb2NvYS9EaXNrQ2FjaGVNb25pdG9yLmggYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvci5oCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCA4NWRhZWM3MGEyMDljNzJkZWM5NmIyZGFmY2I0Yzc3NThkYmNl
MjdkLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9jb2NvYS9EaXNrQ2FjaGVNb25pdG9yLmgKKysrIC9kZXYvbnVsbApA
QCAtMSw2MiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE0IEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJl
IG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKLSAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI3ByYWdtYSBvbmNlCi0KLSNpbmNsdWRlICJS
ZXNvdXJjZVJlcXVlc3QuaCIKLSNpbmNsdWRlICJTZXNzaW9uSUQuaCIKLSNpbmNsdWRlIDx3dGYv
UGFzc1JlZlB0ci5oPgotCi10eXBlZGVmIGNvbnN0IHN0cnVjdCBfQ0ZDYWNoZWRVUkxSZXNwb25z
ZSogQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZjsKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFz
cyBTaGFyZWRCdWZmZXI7Ci0KLWNsYXNzIERpc2tDYWNoZU1vbml0b3IgewotcHVibGljOgotICAg
IHN0YXRpYyB2b2lkIG1vbml0b3JGaWxlQmFja2luZ1N0b3JlQ3JlYXRpb24oY29uc3QgUmVzb3Vy
Y2VSZXF1ZXN0JiwgU2Vzc2lvbklELCBDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKTsKLSAgICBzdGF0
aWMgUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IHRyeUdldEZpbGVCYWNrZWRTaGFyZWRCdWZmZXJG
cm9tQ0ZVUkxDYWNoZWRSZXNwb25zZShDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKTsKLSAgICB2aXJ0
dWFsIH5EaXNrQ2FjaGVNb25pdG9yKCkgeyB9Ci0KLXByb3RlY3RlZDoKLSAgICBEaXNrQ2FjaGVN
b25pdG9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIFNlc3Npb25JRCwgQ0ZDYWNoZWRVUkxSZXNw
b25zZVJlZik7Ci0KLSAgICB2aXJ0dWFsIHZvaWQgcmVzb3VyY2VCZWNhbWVGaWxlQmFja2VkKFBh
c3NSZWZQdHI8U2hhcmVkQnVmZmVyPik7Ci0KLSAgICBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJl
c291cmNlUmVxdWVzdCgpIGNvbnN0IHsgcmV0dXJuIG1fcmVzb3VyY2VSZXF1ZXN0OyB9Ci0gICAg
U2Vzc2lvbklEIHNlc3Npb25JRCgpIGNvbnN0IHsgcmV0dXJuIG1fc2Vzc2lvbklEOyB9Ci0KLXBy
aXZhdGU6Ci0gICAgUmVzb3VyY2VSZXF1ZXN0IG1fcmVzb3VyY2VSZXF1ZXN0OwotICAgIFNlc3Np
b25JRCBtX3Nlc3Npb25JRDsKLX07Ci0KLSNpZiAoUExBVEZPUk0oSU9TKSAmJiBfX0lQSE9ORV9P
U19WRVJTSU9OX01JTl9SRVFVSVJFRCA8IDgwMDAwKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBfX01B
Q19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEIDwgMTA5MCkKLXZvaWQgRGlza0NhY2hlTW9uaXRv
cjo6bW9uaXRvckZpbGVCYWNraW5nU3RvcmVDcmVhdGlvbihjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
LCBTZXNzaW9uSUQsIENGQ2FjaGVkVVJMUmVzcG9uc2VSZWYpIHsgfQotUGFzc1JlZlB0cjxTaGFy
ZWRCdWZmZXI+IERpc2tDYWNoZU1vbml0b3I6OnRyeUdldEZpbGVCYWNrZWRTaGFyZWRCdWZmZXJG
cm9tQ0ZVUkxDYWNoZWRSZXNwb25zZShDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKSB7IHJldHVybiBu
dWxscHRyOyB9Ci0jZW5kaWYKLQotfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvckNvY29hLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvckNvY29hLmgKaW5kZXggMTg2
YzM0YWY5N2ZiZWViMzhmNjQzZDQxNzI3ZjE0OGY1MTZhYWE2ZC4uNjMwNGYxZjA2ZWQwMWFjMGRj
ZmY4ZDNkYjNiNjUxNzdmMWY3OTIxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NvY29hL0Rpc2tDYWNoZU1vbml0b3JDb2NvYS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9jb2NvYS9EaXNrQ2FjaGVNb25pdG9yQ29jb2EuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTQgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29w
eXJpZ2h0IChDKSAyMDE0LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoK
ICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yNyw3ICsyNyw2IEBACiAKICNpbmNsdWRl
ICJSZXNvdXJjZVJlcXVlc3QuaCIKICNpbmNsdWRlICJTZXNzaW9uSUQuaCIKLSNpbmNsdWRlIDx3
dGYvUGFzc1JlZlB0ci5oPgogCiB0eXBlZGVmIGNvbnN0IHN0cnVjdCBfQ0ZDYWNoZWRVUkxSZXNw
b25zZSogQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZjsKIApAQCAtMzUsMjEgKzM0LDE5IEBAIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgU2hhcmVkQnVmZmVyOwogCi1jbGFzcyBXRUJDT1JFX0VY
UE9SVCBEaXNrQ2FjaGVNb25pdG9yIHsKK2NsYXNzIERpc2tDYWNoZU1vbml0b3IgewogcHVibGlj
OgogICAgIHN0YXRpYyB2b2lkIG1vbml0b3JGaWxlQmFja2luZ1N0b3JlQ3JlYXRpb24oY29uc3Qg
UmVzb3VyY2VSZXF1ZXN0JiwgU2Vzc2lvbklELCBDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKTsKLSAg
ICBzdGF0aWMgUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IHRyeUdldEZpbGVCYWNrZWRTaGFyZWRC
dWZmZXJGcm9tQ0ZVUkxDYWNoZWRSZXNwb25zZShDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKTsKLSAg
ICB2aXJ0dWFsIH5EaXNrQ2FjaGVNb25pdG9yKCkgeyB9CisgICAgc3RhdGljIFJlZlB0cjxTaGFy
ZWRCdWZmZXI+IHRyeUdldEZpbGVCYWNrZWRTaGFyZWRCdWZmZXJGcm9tQ0ZVUkxDYWNoZWRSZXNw
b25zZShDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKTsKIAotcHJvdGVjdGVkOgotICAgIFdFQkNPUkVf
RVhQT1JUIERpc2tDYWNoZU1vbml0b3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgU2Vzc2lvbklE
LCBDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKTsKK3ByaXZhdGU6CisgICAgRGlza0NhY2hlTW9uaXRv
cihjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBTZXNzaW9uSUQsIENGQ2FjaGVkVVJMUmVzcG9uc2VS
ZWYpOwogCi0gICAgdmlydHVhbCB2b2lkIHJlc291cmNlQmVjYW1lRmlsZUJhY2tlZChTaGFyZWRC
dWZmZXImKTsKKyAgICB2b2lkIHJlc291cmNlQmVjYW1lRmlsZUJhY2tlZChTaGFyZWRCdWZmZXIm
KTsKIAogICAgIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVzb3VyY2VSZXF1ZXN0KCkgY29uc3Qg
eyByZXR1cm4gbV9yZXNvdXJjZVJlcXVlc3Q7IH0KICAgICBTZXNzaW9uSUQgc2Vzc2lvbklEKCkg
Y29uc3QgeyByZXR1cm4gbV9zZXNzaW9uSUQ7IH0KIAotcHJpdmF0ZToKICAgICBSZXNvdXJjZVJl
cXVlc3QgbV9yZXNvdXJjZVJlcXVlc3Q7CiAgICAgU2Vzc2lvbklEIG1fc2Vzc2lvbklEOwogfTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jb2NvYS9EaXNrQ2FjaGVNb25pdG9y
Q29jb2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvckNv
Y29hLm1tCmluZGV4IDY4NTgwMzYwYjhlYmNkY2FjYThhM2U5Mzg0OThhMTk3NTUyZGMxNmEuLjZh
YzQ1YTE2ZmU5NmMzOGE3MjkyOGMxOWM1NWRjMWVlM2NjZWFhNGUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9jb2NvYS9EaXNrQ2FjaGVNb25pdG9yQ29jb2EubW0KKysrIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NvY29hL0Rpc2tDYWNoZU1vbml0b3JDb2NvYS5tbQpAQCAtMjks
MTEgKzI5LDggQEAKICNpbXBvcnQgIkNGTmV0d29ya1NQSS5oIgogI2ltcG9ydCAiQ2FjaGVkUmVz
b3VyY2UuaCIKICNpbXBvcnQgIk1lbW9yeUNhY2hlLmgiCi0jaW1wb3J0ICJSZXNvdXJjZVJlcXVl
c3QuaCIKLSNpbXBvcnQgIlNlc3Npb25JRC5oIgogI2ltcG9ydCAiU2hhcmVkQnVmZmVyLmgiCiAj
aW1wb3J0IDx3dGYvTWFpblRocmVhZC5oPgotI2ltcG9ydCA8d3RmL1Bhc3NSZWZQdHIuaD4KICNp
bXBvcnQgPHd0Zi9SZWZQdHIuaD4KIAogI2lmIFVTRShXRUJfVEhSRUFEKQpAQCAtNDUsOSArNDIs
OSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAvLyBUaGUgbWF4aW11bSBudW1iZXIgb2Ygc2Vjb25k
cyB3ZSdsbCB0cnkgdG8gd2FpdCBmb3IgYSByZXNvdXJjZSB0byBiZSBkaXNrIGNhY2hlZCBiZWZv
cmUgd2UgZm9yZ2V0IHRoZSByZXF1ZXN0Lgogc3RhdGljIGNvbnN0IGRvdWJsZSBkaXNrQ2FjaGVN
b25pdG9yVGltZW91dCA9IDIwOwogCi1QYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gRGlza0NhY2hl
TW9uaXRvcjo6dHJ5R2V0RmlsZUJhY2tlZFNoYXJlZEJ1ZmZlckZyb21DRlVSTENhY2hlZFJlc3Bv
bnNlKENGQ2FjaGVkVVJMUmVzcG9uc2VSZWYgY2FjaGVkUmVzcG9uc2UpCitSZWZQdHI8U2hhcmVk
QnVmZmVyPiBEaXNrQ2FjaGVNb25pdG9yOjp0cnlHZXRGaWxlQmFja2VkU2hhcmVkQnVmZmVyRnJv
bUNGVVJMQ2FjaGVkUmVzcG9uc2UoQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZiBjYWNoZWRSZXNwb25z
ZSkKIHsKLSAgICBDRkRhdGFSZWYgZGF0YSA9IF9DRkNhY2hlZFVSTFJlc3BvbnNlR2V0TWVtTWFw
cGVkRGF0YShjYWNoZWRSZXNwb25zZSk7CisgICAgYXV0byBkYXRhID0gX0NGQ2FjaGVkVVJMUmVz
cG9uc2VHZXRNZW1NYXBwZWREYXRhKGNhY2hlZFJlc3BvbnNlKTsKICAgICBpZiAoIWRhdGEpCiAg
ICAgICAgIHJldHVybiBudWxscHRyOwogCkBAIC04Nyw4ICs4NCw3IEBAIERpc2tDYWNoZU1vbml0
b3I6OkRpc2tDYWNoZU1vbml0b3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBTZXNz
aW9uSUQgc2VzCiAgICAgZGlzcGF0Y2hfYWZ0ZXIoZGlzcGF0Y2hfdGltZShESVNQQVRDSF9USU1F
X05PVywgTlNFQ19QRVJfU0VDICogZGlza0NhY2hlTW9uaXRvclRpbWVvdXQpLCBkaXNwYXRjaF9n
ZXRfbWFpbl9xdWV1ZSgpLCBjYW5jZWxNb25pdG9yQmxvY2tUb1J1bik7CiAKICAgICAvLyBTZXQg
dXAgdGhlIGRpc2sgY2FjaGluZyBjYWxsYmFjayB0byBjcmVhdGUgdGhlIFNoYXJlYWJsZVJlc291
cmNlIGFuZCBzZW5kIGl0IHRvIHRoZSBXZWJQcm9jZXNzLgotICAgIENGQ2FjaGVkVVJMUmVzcG9u
c2VDYWxsQmFja0Jsb2NrIGJsb2NrID0gXihDRkNhY2hlZFVSTFJlc3BvbnNlUmVmIGNhY2hlZFJl
c3BvbnNlKQotICAgIHsKKyAgICBhdXRvIGJsb2NrID0gXihDRkNhY2hlZFVSTFJlc3BvbnNlUmVm
IGNhY2hlZFJlc3BvbnNlKSB7CiAgICAgICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CiAgICAg
ICAgIC8vIElmIHRoZSBtb25pdG9yIGlzbid0IHRoZXJlIHRoZW4gaXQgdGltZWQgb3V0IGJlZm9y
ZSB0aGlzIHJlc291cmNlIHdhcyBjYWNoZWQgdG8gZGlzay4KICAgICAgICAgaWYgKCFyYXdNb25p
dG9yKQpAQCAtOTcsNyArOTMsNyBAQCBEaXNrQ2FjaGVNb25pdG9yOjpEaXNrQ2FjaGVNb25pdG9y
KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgU2Vzc2lvbklEIHNlcwogICAgICAgICBh
dXRvIG1vbml0b3IgPSBzdGQ6OnVuaXF1ZV9wdHI8RGlza0NhY2hlTW9uaXRvcj4ocmF3TW9uaXRv
cik7IC8vIEJhbGFuY2VkIGJ5ICJuZXcgRGlza0NhY2hlTW9uaXRvciIgaW4gbW9uaXRvckZpbGVC
YWNraW5nU3RvcmVDcmVhdGlvbi4KICAgICAgICAgcmF3TW9uaXRvciA9IG51bGxwdHI7CiAKLSAg
ICAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZmlsZUJhY2tlZEJ1ZmZlciA9IERpc2tDYWNoZU1v
bml0b3I6OnRyeUdldEZpbGVCYWNrZWRTaGFyZWRCdWZmZXJGcm9tQ0ZVUkxDYWNoZWRSZXNwb25z
ZShjYWNoZWRSZXNwb25zZSk7CisgICAgICAgIGF1dG8gZmlsZUJhY2tlZEJ1ZmZlciA9IERpc2tD
YWNoZU1vbml0b3I6OnRyeUdldEZpbGVCYWNrZWRTaGFyZWRCdWZmZXJGcm9tQ0ZVUkxDYWNoZWRS
ZXNwb25zZShjYWNoZWRSZXNwb25zZSk7CiAgICAgICAgIGlmICghZmlsZUJhY2tlZEJ1ZmZlcikK
ICAgICAgICAgICAgIHJldHVybjsKIApAQCAtMTA1LDggKzEwMSw3IEBAIERpc2tDYWNoZU1vbml0
b3I6OkRpc2tDYWNoZU1vbml0b3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBTZXNz
aW9uSUQgc2VzCiAgICAgfTsKIAogI2lmIFVTRShXRUJfVEhSRUFEKQotICAgIENGQ2FjaGVkVVJM
UmVzcG9uc2VDYWxsQmFja0Jsb2NrIGJsb2NrVG9SdW4gPSBeKENGQ2FjaGVkVVJMUmVzcG9uc2VS
ZWYgcmVzcG9uc2UpCi0gICAgeworICAgIGF1dG8gYmxvY2tUb1J1biA9IF4oQ0ZDYWNoZWRVUkxS
ZXNwb25zZVJlZiByZXNwb25zZSkgewogICAgICAgICBDRlJldGFpbihyZXNwb25zZSk7CiAgICAg
ICAgIFdlYlRocmVhZFJ1biheewogICAgICAgICAgICAgYmxvY2socmVzcG9uc2UpOwpAQCAtMTE0
LDE0ICsxMDksMTQgQEAgRGlza0NhY2hlTW9uaXRvcjo6RGlza0NhY2hlTW9uaXRvcihjb25zdCBS
ZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFNlc3Npb25JRCBzZXMKICAgICAgICAgfSk7CiAgICAg
fTsKICNlbHNlCi0gICAgQ0ZDYWNoZWRVUkxSZXNwb25zZUNhbGxCYWNrQmxvY2sgYmxvY2tUb1J1
biA9IGJsb2NrOworICAgIGF1dG8gYmxvY2tUb1J1biA9IGJsb2NrOwogI2VuZGlmCiAgICAgX0NG
Q2FjaGVkVVJMUmVzcG9uc2VTZXRCZWNhbWVGaWxlQmFja2VkQ2FsbEJhY2tCbG9jayhjYWNoZWRS
ZXNwb25zZSwgYmxvY2tUb1J1biwgZGlzcGF0Y2hfZ2V0X21haW5fcXVldWUoKSk7CiB9CiAKIHZv
aWQgRGlza0NhY2hlTW9uaXRvcjo6cmVzb3VyY2VCZWNhbWVGaWxlQmFja2VkKFNoYXJlZEJ1ZmZl
ciYgZmlsZUJhY2tlZEJ1ZmZlcikKIHsKLSAgICBDYWNoZWRSZXNvdXJjZSogcmVzb3VyY2UgPSBN
ZW1vcnlDYWNoZTo6c2luZ2xldG9uKCkucmVzb3VyY2VGb3JSZXF1ZXN0KG1fcmVzb3VyY2VSZXF1
ZXN0LCBtX3Nlc3Npb25JRCk7CisgICAgYXV0byogcmVzb3VyY2UgPSBNZW1vcnlDYWNoZTo6c2lu
Z2xldG9uKCkucmVzb3VyY2VGb3JSZXF1ZXN0KG1fcmVzb3VyY2VSZXF1ZXN0LCBtX3Nlc3Npb25J
RCk7CiAgICAgaWYgKCFyZXNvdXJjZSkKICAgICAgICAgcmV0dXJuOwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2UuY3BwIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmNwcAppbmRleCBlZTQzN2U4NjI4ZWJmNGU4NjMy
N2NjNzcwMzBmNWY2OTRlMzBiYjJkLi5kY2NlMGE1YzNjZDgxNmNjODQ3YmM3YWZlMmJhMjE2N2Fj
ZDA4ODBjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJh
c2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL0ljb25EYXRhYmFzZS5jcHAK
QEAgLTUzMyw3ICs1MzMsNyBAQCB2b2lkIEljb25EYXRhYmFzZTo6cGVyZm9ybVJlbGVhc2VJY29u
Rm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIHBhZ2VVUkxPcmlnaW5hbCwgaQogICAgIGRlbGV0ZSBw
YWdlUmVjb3JkOwogfQogCi12b2lkIEljb25EYXRhYmFzZTo6c2V0SWNvbkRhdGFGb3JJY29uVVJM
KFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBkYXRhT3JpZ2luYWwsIGNvbnN0IFN0cmluZyYgaWNv
blVSTE9yaWdpbmFsKQordm9pZCBJY29uRGF0YWJhc2U6OnNldEljb25EYXRhRm9ySWNvblVSTChT
aGFyZWRCdWZmZXIqIGRhdGFPcmlnaW5hbCwgY29uc3QgU3RyaW5nJiBpY29uVVJMT3JpZ2luYWwp
CiB7ICAgIAogICAgIEFTU0VSVF9OT1RfU1lOQ19USFJFQUQoKTsKICAgICAKQEAgLTU0Miw3ICs1
NDIsNyBAQCB2b2lkIEljb25EYXRhYmFzZTo6c2V0SWNvbkRhdGFGb3JJY29uVVJMKFBhc3NSZWZQ
dHI8U2hhcmVkQnVmZmVyPiBkYXRhT3JpZ2luYWwsCiAgICAgaWYgKCFpc09wZW4oKSB8fCBpY29u
VVJMT3JpZ2luYWwuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm47CiAgICAgCi0gICAgUmVmUHRy
PFNoYXJlZEJ1ZmZlcj4gZGF0YSA9IGRhdGFPcmlnaW5hbCA/IGRhdGFPcmlnaW5hbC0+Y29weSgp
IDogUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+KG51bGxwdHIpOworICAgIGF1dG8gZGF0YSA9IGRh
dGFPcmlnaW5hbCA/IFJlZlB0cjxTaGFyZWRCdWZmZXI+IHsgZGF0YU9yaWdpbmFsLT5jb3B5KCkg
fSA6IG51bGxwdHI7CiAgICAgU3RyaW5nIGljb25VUkwgPSBpY29uVVJMT3JpZ2luYWwuaXNvbGF0
ZWRDb3B5KCk7CiAgICAgCiAgICAgVmVjdG9yPFN0cmluZz4gcGFnZVVSTHM7CkBAIC04ODUsMTgg
Kzg4NSwxNyBAQCBTdHJpbmcgSWNvbkRhdGFiYXNlOjpkZWZhdWx0RGF0YWJhc2VGaWxlbmFtZSgp
CiB9CiAKIC8vIFVubGlrZSBnZXRPckNyZWF0ZVBhZ2VVUkxSZWNvcmQoKSwgZ2V0T3JDcmVhdGVJ
Y29uUmVjb3JkKCkgZG9lcyBub3QgbWFyayB0aGUgaWNvbiBhcyAiaW50ZXJlc3RlZCBpbiBpbXBv
cnQiCi1QYXNzUmVmUHRyPEljb25SZWNvcmQ+IEljb25EYXRhYmFzZTo6Z2V0T3JDcmVhdGVJY29u
UmVjb3JkKGNvbnN0IFN0cmluZyYgaWNvblVSTCkKK1JlZjxJY29uUmVjb3JkPiBJY29uRGF0YWJh
c2U6OmdldE9yQ3JlYXRlSWNvblJlY29yZChjb25zdCBTdHJpbmcmIGljb25VUkwpCiB7CiAgICAg
Ly8gQ2xpZW50cyBvZiBnZXRPckNyZWF0ZUljb25SZWNvcmQoKSBhcmUgcmVxdWlyZWQgdG8gYWNx
dWlyZSB0aGUgbV91cmxBbmRJY29uTG9jayBiZWZvcmUgY2FsbGluZyB0aGlzIG1ldGhvZAogICAg
IEFTU0VSVCghbV91cmxBbmRJY29uTG9jay50cnlMb2NrKCkpOwogCi0gICAgaWYgKEljb25SZWNv
cmQqIGljb24gPSBtX2ljb25VUkxUb1JlY29yZE1hcC5nZXQoaWNvblVSTCkpCi0gICAgICAgIHJl
dHVybiBpY29uOworICAgIGlmIChhdXRvKiBpY29uID0gbV9pY29uVVJMVG9SZWNvcmRNYXAuZ2V0
KGljb25VUkwpKQorICAgICAgICByZXR1cm4gKmljb247CiAKICAgICBhdXRvIG5ld0ljb24gPSBJ
Y29uUmVjb3JkOjpjcmVhdGUoaWNvblVSTCk7CiAgICAgbV9pY29uVVJMVG9SZWNvcmRNYXAuc2V0
KGljb25VUkwsIG5ld0ljb24ucHRyKCkpOwotCi0gICAgcmV0dXJuIFdURk1vdmUobmV3SWNvbik7
CisgICAgcmV0dXJuIG5ld0ljb247CiB9CiAKIC8vIFRoaXMgbWV0aG9kIHJldHJpZXZlcyB0aGUg
ZXhpc3RpbmcgUGFnZVVSTFJlY29yZCwgb3IgY3JlYXRlcyBhIG5ldyBvbmUgYW5kIG1hcmtzIGl0
IGFzICJpbnRlcmVzdGVkIGluIHRoZSBpbXBvcnQiIGZvciBsYXRlciBub3RpZmljYXRpb24KQEAg
LTE5MTcsNyArMTkxNiw3IEBAIGludDY0X3QgSWNvbkRhdGFiYXNlOjphZGRJY29uVVJMVG9TUUxE
YXRhYmFzZShjb25zdCBTdHJpbmcmIGljb25VUkwpCiAgICAgcmV0dXJuIGljb25JRDsKIH0KIAot
UGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IEljb25EYXRhYmFzZTo6Z2V0SW1hZ2VEYXRhRm9ySWNv
blVSTEZyb21TUUxEYXRhYmFzZShjb25zdCBTdHJpbmcmIGljb25VUkwpCitSZWZQdHI8U2hhcmVk
QnVmZmVyPiBJY29uRGF0YWJhc2U6OmdldEltYWdlRGF0YUZvckljb25VUkxGcm9tU1FMRGF0YWJh
c2UoY29uc3QgU3RyaW5nJiBpY29uVVJMKQogewogICAgIEFTU0VSVF9JQ09OX1NZTkNfVEhSRUFE
KCk7CiAgICAgCkBAIC0xOTM2LDcgKzE5MzUsNyBAQCBQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4g
SWNvbkRhdGFiYXNlOjpnZXRJbWFnZURhdGFGb3JJY29uVVJMRnJvbVNRTERhdGFiYXNlKGNvbgog
CiAgICAgbV9nZXRJbWFnZURhdGFGb3JJY29uVVJMU3RhdGVtZW50LT5yZXNldCgpOwogICAgIAot
ICAgIHJldHVybiBXVEZNb3ZlKGltYWdlRGF0YSk7CisgICAgcmV0dXJuIGltYWdlRGF0YTsKIH0K
IAogdm9pZCBJY29uRGF0YWJhc2U6OnJlbW92ZUljb25Gcm9tU1FMRGF0YWJhc2UoY29uc3QgU3Ry
aW5nJiBpY29uVVJMKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNv
bkRhdGFiYXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2UuaApp
bmRleCBkNWQ0NTJjZWZkMzdjMGFjZTgxMmFkYTM1MDM0NzBhZTYyOGQ3YzllLi4wNjFhZjRhMTI1
NTc3MWRlMTFhMzJmNTY4M2MwZWZkYTU5MjkzYjlkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
aWNvbi9JY29uRGF0YWJhc2UuaApAQCAtNDUsNiArNDUsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAvLyBEdW1teSB2ZXJzaW9uIG9mIEljb25EYXRhYmFzZSB0aGF0IGRvZXMgbm90aGluZy4KIGNs
YXNzIEljb25EYXRhYmFzZSBmaW5hbCA6IHB1YmxpYyBJY29uRGF0YWJhc2VCYXNlIHsKICAgICBX
VEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKKwogcHVibGljOgogICAgIHN0YXRpYyB2b2lkIGRlbGF5
RGF0YWJhc2VDbGVhbnVwKCkgeyB9CiAgICAgc3RhdGljIHZvaWQgYWxsb3dEYXRhYmFzZUNsZWFu
dXAoKSB7IH0KQEAgLTcwLDMyICs3MSwzMiBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQg
SWNvbkRhdGFiYXNlKCk7CiAgICAgfkljb25EYXRhYmFzZSgpOwogCi0gICAgV0VCQ09SRV9FWFBP
UlQgdm9pZCBzZXRDbGllbnQoSWNvbkRhdGFiYXNlQ2xpZW50Kikgb3ZlcnJpZGU7CisgICAgV0VC
Q09SRV9FWFBPUlQgdm9pZCBzZXRDbGllbnQoSWNvbkRhdGFiYXNlQ2xpZW50KikgZmluYWw7CiAK
LSAgICBXRUJDT1JFX0VYUE9SVCBib29sIG9wZW4oY29uc3QgU3RyaW5nJiBkaXJlY3RvcnksIGNv
bnN0IFN0cmluZyYgZmlsZW5hbWUpIG92ZXJyaWRlOwotICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQg
Y2xvc2UoKSBvdmVycmlkZTsKKyAgICBXRUJDT1JFX0VYUE9SVCBib29sIG9wZW4oY29uc3QgU3Ry
aW5nJiBkaXJlY3RvcnksIGNvbnN0IFN0cmluZyYgZmlsZW5hbWUpIGZpbmFsOworICAgIFdFQkNP
UkVfRVhQT1JUIHZvaWQgY2xvc2UoKSBmaW5hbDsKICAgICAgICAgICAgIAotICAgIFdFQkNPUkVf
RVhQT1JUIHZvaWQgcmVtb3ZlQWxsSWNvbnMoKSBvdmVycmlkZTsKKyAgICBXRUJDT1JFX0VYUE9S
VCB2b2lkIHJlbW92ZUFsbEljb25zKCkgZmluYWw7CiAKICAgICB2b2lkIHJlYWRJY29uRm9yUGFn
ZVVSTEZyb21EaXNrKGNvbnN0IFN0cmluZyYpOwogCi0gICAgV0VCQ09SRV9FWFBPUlQgSW1hZ2Uq
IGRlZmF1bHRJY29uKGNvbnN0IEludFNpemUmKSBvdmVycmlkZTsKKyAgICBXRUJDT1JFX0VYUE9S
VCBJbWFnZSogZGVmYXVsdEljb24oY29uc3QgSW50U2l6ZSYpIGZpbmFsOwogCi0gICAgV0VCQ09S
RV9FWFBPUlQgdm9pZCByZXRhaW5JY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmKSBvdmVycmlk
ZTsKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHJlbGVhc2VJY29uRm9yUGFnZVVSTChjb25zdCBT
dHJpbmcmKSBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldEljb25EYXRhRm9y
SWNvblVSTChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZGF0YSwgY29uc3QgU3RyaW5nJikgb3Zl
cnJpZGU7Ci0gICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRJY29uVVJMRm9yUGFnZVVSTChjb25z
dCBTdHJpbmcmIGljb25VUkwsIGNvbnN0IFN0cmluZyYgcGFnZVVSTCkgb3ZlcnJpZGU7CisgICAg
V0VCQ09SRV9FWFBPUlQgdm9pZCByZXRhaW5JY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmKSBm
aW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHJlbGVhc2VJY29uRm9yUGFnZVVSTChjb25z
dCBTdHJpbmcmKSBmaW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldEljb25EYXRhRm9y
SWNvblVSTChTaGFyZWRCdWZmZXIqIGRhdGEsIGNvbnN0IFN0cmluZyYgaWNvblVSTCkgZmluYWw7
CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRJY29uVVJMRm9yUGFnZVVSTChjb25zdCBTdHJp
bmcmIGljb25VUkwsIGNvbnN0IFN0cmluZyYgcGFnZVVSTCkgZmluYWw7CiAKLSAgICBXRUJDT1JF
X0VYUE9SVCBJbWFnZSogc3luY2hyb25vdXNJY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmLCBj
b25zdCBJbnRTaXplJikgb3ZlcnJpZGU7Ci0gICAgTmF0aXZlSW1hZ2VQdHIgc3luY2hyb25vdXNO
YXRpdmVJY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIHBhZ2VVUkxPcmlnaW5hbCwgY29uc3Qg
SW50U2l6ZSYpIG92ZXJyaWRlOwotICAgIFdFQkNPUkVfRVhQT1JUIFN0cmluZyBzeW5jaHJvbm91
c0ljb25VUkxGb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAgIGJvb2wgc3lu
Y2hyb25vdXNJY29uRGF0YUtub3duRm9ySWNvblVSTChjb25zdCBTdHJpbmcmKSBvdmVycmlkZTsK
LSAgICBXRUJDT1JFX0VYUE9SVCBJY29uTG9hZERlY2lzaW9uIHN5bmNocm9ub3VzTG9hZERlY2lz
aW9uRm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBEb2N1bWVudExvYWRlciopIG92ZXJyaWRlOwor
ICAgIFdFQkNPUkVfRVhQT1JUIEltYWdlKiBzeW5jaHJvbm91c0ljb25Gb3JQYWdlVVJMKGNvbnN0
IFN0cmluZyYsIGNvbnN0IEludFNpemUmKSBmaW5hbDsKKyAgICBOYXRpdmVJbWFnZVB0ciBzeW5j
aHJvbm91c05hdGl2ZUljb25Gb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYgcGFnZVVSTE9yaWdpbmFs
LCBjb25zdCBJbnRTaXplJikgZmluYWw7CisgICAgV0VCQ09SRV9FWFBPUlQgU3RyaW5nIHN5bmNo
cm9ub3VzSWNvblVSTEZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikgZmluYWw7CisgICAgYm9vbCBz
eW5jaHJvbm91c0ljb25EYXRhS25vd25Gb3JJY29uVVJMKGNvbnN0IFN0cmluZyYpIGZpbmFsOwor
ICAgIFdFQkNPUkVfRVhQT1JUIEljb25Mb2FkRGVjaXNpb24gc3luY2hyb25vdXNMb2FkRGVjaXNp
b25Gb3JJY29uVVJMKGNvbnN0IFN0cmluZyYsIERvY3VtZW50TG9hZGVyKikgZmluYWw7CiAKLSAg
ICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldEVuYWJsZWQoYm9vbCkgb3ZlcnJpZGU7Ci0gICAgV0VC
Q09SRV9FWFBPUlQgYm9vbCBpc0VuYWJsZWQoKSBjb25zdCBvdmVycmlkZTsKKyAgICBXRUJDT1JF
X0VYUE9SVCB2b2lkIHNldEVuYWJsZWQoYm9vbCk7CisgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBp
c0VuYWJsZWQoKSBjb25zdCBmaW5hbDsKIAotICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0UHJp
dmF0ZUJyb3dzaW5nRW5hYmxlZChib29sIGZsYWcpIG92ZXJyaWRlOworICAgIFdFQkNPUkVfRVhQ
T1JUIHZvaWQgc2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZChib29sIGZsYWcpIGZpbmFsOwogICAg
IGJvb2wgaXNQcml2YXRlQnJvd3NpbmdFbmFibGVkKCkgY29uc3Q7CiAKICAgICBXRUJDT1JFX0VY
UE9SVCBzdGF0aWMgdm9pZCBkZWxheURhdGFiYXNlQ2xlYW51cCgpOwpAQCAtMTAzLDEwICsxMDQs
MTAgQEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyB2b2lkIGNoZWNrSW50ZWdy
aXR5QmVmb3JlT3BlbmluZygpOwogCiAgICAgLy8gU3VwcG9ydCBmb3IgV2ViQ29yZVN0YXRpc3Rp
Y3MgaW4gV2ViS2l0Ci0gICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90IHBhZ2VVUkxNYXBwaW5nQ291
bnQoKSBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCBzaXplX3QgcmV0YWluZWRQYWdlVVJM
Q291bnQoKSBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCBzaXplX3QgaWNvblJlY29yZENv
dW50KCkgb3ZlcnJpZGU7Ci0gICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90IGljb25SZWNvcmRDb3Vu
dFdpdGhEYXRhKCkgb3ZlcnJpZGU7CisgICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90IHBhZ2VVUkxN
YXBwaW5nQ291bnQoKSBmaW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCBzaXplX3QgcmV0YWluZWRQ
YWdlVVJMQ291bnQoKSBmaW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCBzaXplX3QgaWNvblJlY29y
ZENvdW50KCkgZmluYWw7CisgICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90IGljb25SZWNvcmRDb3Vu
dFdpdGhEYXRhKCkgZmluYWw7CiAKIHByaXZhdGU6CiAgICAgZnJpZW5kIEljb25EYXRhYmFzZUJh
c2UmIGljb25EYXRhYmFzZSgpOwpAQCAtMTMwLDEyICsxMzEsMTIgQEAgcHJpdmF0ZToKIAogLy8g
KioqIEFueSBUaHJlYWQgKioqCiBwdWJsaWM6Ci0gICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBpc09w
ZW4oKSBjb25zdCBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCBTdHJpbmcgZGF0YWJhc2VQ
YXRoKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBpc09wZW4oKSBj
b25zdCBmaW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCBTdHJpbmcgZGF0YWJhc2VQYXRoKCkgY29u
c3QgZmluYWw7CiAgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFN0cmluZyBkZWZhdWx0RGF0YWJh
c2VGaWxlbmFtZSgpOwogCiBwcml2YXRlOgotICAgIFBhc3NSZWZQdHI8SWNvblJlY29yZD4gZ2V0
T3JDcmVhdGVJY29uUmVjb3JkKGNvbnN0IFN0cmluZyYgaWNvblVSTCk7CisgICAgUmVmPEljb25S
ZWNvcmQ+IGdldE9yQ3JlYXRlSWNvblJlY29yZChjb25zdCBTdHJpbmcmIGljb25VUkwpOwogICAg
IFBhZ2VVUkxSZWNvcmQqIGdldE9yQ3JlYXRlUGFnZVVSTFJlY29yZChjb25zdCBTdHJpbmcmIHBh
Z2VVUkwpOwogICAgIAogICAgIGJvb2wgbV9pc0VuYWJsZWQ7CkBAIC0xNzgsNyArMTc5LDcgQEAg
cHJpdmF0ZToKIAogLy8gKioqIFN5bmMgVGhyZWFkIE9ubHkgKioqCiBwdWJsaWM6Ci0gICAgV0VC
Q09SRV9FWFBPUlQgYm9vbCBzaG91bGRTdG9wVGhyZWFkQWN0aXZpdHkoKSBjb25zdCBvdmVycmlk
ZTsKKyAgICBXRUJDT1JFX0VYUE9SVCBib29sIHNob3VsZFN0b3BUaHJlYWRBY3Rpdml0eSgpIGNv
bnN0IGZpbmFsOwogCiBwcml2YXRlOiAgICAKICAgICBzdGF0aWMgdm9pZCBpY29uRGF0YWJhc2VT
eW5jVGhyZWFkU3RhcnQodm9pZCAqKTsKQEAgLTIxMyw3ICsyMTQsNyBAQCBwcml2YXRlOgogICAg
IHZvaWQgcmVtb3ZlUGFnZVVSTEZyb21TUUxEYXRhYmFzZShjb25zdCBTdHJpbmcmIHBhZ2VVUkwp
OwogICAgIGludDY0X3QgZ2V0SWNvbklERm9ySWNvblVSTEZyb21TUUxEYXRhYmFzZShjb25zdCBT
dHJpbmcmIGljb25VUkwpOwogICAgIGludDY0X3QgYWRkSWNvblVSTFRvU1FMRGF0YWJhc2UoY29u
c3QgU3RyaW5nJik7Ci0gICAgUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGdldEltYWdlRGF0YUZv
ckljb25VUkxGcm9tU1FMRGF0YWJhc2UoY29uc3QgU3RyaW5nJiBpY29uVVJMKTsKKyAgICBSZWZQ
dHI8U2hhcmVkQnVmZmVyPiBnZXRJbWFnZURhdGFGb3JJY29uVVJMRnJvbVNRTERhdGFiYXNlKGNv
bnN0IFN0cmluZyYgaWNvblVSTCk7CiAgICAgdm9pZCByZW1vdmVJY29uRnJvbVNRTERhdGFiYXNl
KGNvbnN0IFN0cmluZyYgaWNvblVSTCk7CiAgICAgdm9pZCB3cml0ZUljb25TbmFwc2hvdFRvU1FM
RGF0YWJhc2UoY29uc3QgSWNvblNuYXBzaG90Jik7ICAgIAogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2VCYXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvaWNvbi9JY29uRGF0YWJhc2VCYXNlLmgKaW5kZXggOTg2ZDRkOTZmNTcyN2Y0NmExZjJl
ODc1MDM5ZTZjODYwMzJmNjM4MS4uZDQwNTFiOTM2YzcxMGZjMjljNzFkNTJlNDcyN2JhODViMGFl
Yjk5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNl
QmFzZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL0ljb25EYXRhYmFzZUJhc2Uu
aApAQCAtMjgsNyArMjgsNiBAQAogI2luY2x1ZGUgIk5hdGl2ZUltYWdlLmgiCiAjaW5jbHVkZSA8
d3RmL0ZvcndhcmQuaD4KICNpbmNsdWRlIDx3dGYvTm9uY29weWFibGUuaD4KLSNpbmNsdWRlIDx3
dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKQEAgLTM5LDExICszOCw3IEBAIGNsYXNzIEltYWdlOwogY2xhc3MgSW50U2l6
ZTsKIGNsYXNzIFNoYXJlZEJ1ZmZlcjsKIAotZW51bSBJY29uTG9hZERlY2lzaW9uIHsKLSAgICBJ
Y29uTG9hZFllcywKLSAgICBJY29uTG9hZE5vLAotICAgIEljb25Mb2FkVW5rbm93bgotfTsKK2Vu
dW0gSWNvbkxvYWREZWNpc2lvbiB7IEljb25Mb2FkWWVzLCBJY29uTG9hZE5vLCBJY29uTG9hZFVu
a25vd24gfTsKIAogY2xhc3MgQ2FsbGJhY2tCYXNlIDogcHVibGljIFJlZkNvdW50ZWQ8Q2FsbGJh
Y2tCYXNlPiB7CiBwdWJsaWM6CkBAIC0xMzQsNyArMTI5LDcgQEAgcHVibGljOgogICAgICAgICBt
X2NhbGxiYWNrKHJlc3VsdCwgY29udGV4dCgpKTsKICAgICAgICAgbV9jYWxsYmFjayA9IG51bGxw
dHI7CiAgICAgfQotICAgIAorCiAgICAgdm9pZCBpbnZhbGlkYXRlKCkKICAgICB7CiAgICAgICAg
IG1fY2FsbGJhY2sgPSBudWxscHRyOwpAQCAtMTUxLDI2ICsxNDYsMjIgQEAgcHJpdmF0ZToKICAg
ICBDYWxsYmFja0Z1bmN0aW9uIG1fY2FsbGJhY2s7CiB9OwogCi10eXBlZGVmIEVudW1DYWxsYmFj
azxJY29uTG9hZERlY2lzaW9uPiBJY29uTG9hZERlY2lzaW9uQ2FsbGJhY2s7Ci10eXBlZGVmIE9i
amVjdENhbGxiYWNrPFNoYXJlZEJ1ZmZlcio+IEljb25EYXRhQ2FsbGJhY2s7Cit1c2luZyBJY29u
TG9hZERlY2lzaW9uQ2FsbGJhY2sgPSBFbnVtQ2FsbGJhY2s8SWNvbkxvYWREZWNpc2lvbj47Cit1
c2luZyBJY29uRGF0YUNhbGxiYWNrID0gT2JqZWN0Q2FsbGJhY2s8U2hhcmVkQnVmZmVyKj47CiAK
IGNsYXNzIFdFQkNPUkVfRVhQT1JUIEljb25EYXRhYmFzZUJhc2UgewogICAgIFdURl9NQUtFX05P
TkNPUFlBQkxFKEljb25EYXRhYmFzZUJhc2UpOwogCi1wcm90ZWN0ZWQ6Ci0gICAgSWNvbkRhdGFi
YXNlQmFzZSgpIHsgfQotCiBwdWJsaWM6CiAgICAgdmlydHVhbCB+SWNvbkRhdGFiYXNlQmFzZSgp
IHsgfQogCi0gICAgLy8gVXNlZCBpbnRlcm5hbGx5IGJ5IFdlYkNvcmUKICAgICB2aXJ0dWFsIGJv
b2wgaXNFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KLSAgICAgICAgCisKICAgICB2
aXJ0dWFsIHZvaWQgcmV0YWluSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikgeyB9CiAgICAg
dmlydHVhbCB2b2lkIHJlbGVhc2VJY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmKSB7IH0KIAot
ICAgIHZpcnR1YWwgdm9pZCBzZXRJY29uVVJMRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmLCBjb25z
dCBTdHJpbmcmKSB7IH0KLSAgICB2aXJ0dWFsIHZvaWQgc2V0SWNvbkRhdGFGb3JJY29uVVJMKFBh
c3NSZWZQdHI8U2hhcmVkQnVmZmVyPiwgY29uc3QgU3RyaW5nJikgeyB9CisgICAgdmlydHVhbCB2
b2lkIHNldEljb25VUkxGb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYgLyppY29uVVJMKi8sIGNvbnN0
IFN0cmluZyYgLypwYWdlVVJMKi8pIHsgfQorICAgIHZpcnR1YWwgdm9pZCBzZXRJY29uRGF0YUZv
ckljb25VUkwoU2hhcmVkQnVmZmVyKiwgY29uc3QgU3RyaW5nJiAvKmljb25VUkwqLykgeyB9CiAK
ICAgICAvLyBTeW5jaHJvbm91cyBjYWxscyB1c2VkIGludGVybmFsbHkgYnkgV2ViQ29yZS4KICAg
ICAvLyBVc2FnZSBzaG91bGQgYmUgcmVwbGFjZWQgYnkgYXN5bmNocm9ub3VzIGNhbGxzLgpAQCAt
MTgyLDEyICsxNzMsMTIgQEAgcHVibGljOgogCiAgICAgLy8gQXN5bmNocm9ub3VzIGNhbGxzIHdl
IHNob3VsZCB1c2UgdG8gcmVwbGFjZSB0aGUgYWJvdmUgd2hlbiBzdXBwb3J0ZWQuCiAgICAgdmly
dHVhbCBib29sIHN1cHBvcnRzQXN5bmNocm9ub3VzTW9kZSgpIHsgcmV0dXJuIGZhbHNlOyB9Ci0g
ICAgdmlydHVhbCB2b2lkIGxvYWREZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5nJiwgUGFz
c1JlZlB0cjxJY29uTG9hZERlY2lzaW9uQ2FsbGJhY2s+KSB7IH0KLSAgICB2aXJ0dWFsIHZvaWQg
aWNvbkRhdGFGb3JJY29uVVJMKGNvbnN0IFN0cmluZyYsIFBhc3NSZWZQdHI8SWNvbkRhdGFDYWxs
YmFjaz4pIHsgfQotICAgIAorICAgIHZpcnR1YWwgdm9pZCBsb2FkRGVjaXNpb25Gb3JJY29uVVJM
KGNvbnN0IFN0cmluZyYsIEljb25Mb2FkRGVjaXNpb25DYWxsYmFjayYpIHsgfQorICAgIHZpcnR1
YWwgdm9pZCBpY29uRGF0YUZvckljb25VUkwoY29uc3QgU3RyaW5nJiwgSWNvbkRhdGFDYWxsYmFj
ayYpIHsgfQogCiAgICAgLy8gVXNlZCB3aXRoaW4gb25lIG9yIG1vcmUgV2ViS2l0IHBvcnRzLgog
ICAgIC8vIFdlIHNob3VsZCB0cnkgdG8gcmVtb3ZlIHRoZXNlIGRlcGVuZGVuY2llcyBmcm9tIHRo
ZSBJY29uRGF0YWJhc2VCYXNlIGNsYXNzLgorCiAgICAgdmlydHVhbCB2b2lkIHNldEVuYWJsZWQo
Ym9vbCkgeyB9CiAKICAgICB2aXJ0dWFsIEltYWdlKiBkZWZhdWx0SWNvbihjb25zdCBJbnRTaXpl
JikgeyByZXR1cm4gbnVsbHB0cjsgfQpAQCAtMjA1LDEwICsxOTYsMTIgQEAgcHVibGljOgogCiAg
ICAgdmlydHVhbCB2b2lkIHNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQoYm9vbCkgeyB9CiAgICAg
dmlydHVhbCB2b2lkIHNldENsaWVudChJY29uRGF0YWJhc2VDbGllbnQqKSB7IH0KLSAgICAKKwog
ICAgIHZpcnR1YWwgYm9vbCBpc09wZW4oKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogICAgIHZp
cnR1YWwgU3RyaW5nIGRhdGFiYXNlUGF0aCgpIGNvbnN0OwogCitwcm90ZWN0ZWQ6CisgICAgSWNv
bkRhdGFiYXNlQmFzZSgpID0gZGVmYXVsdDsKIH07CiAKIC8vIEZ1bmN0aW9ucyB0byBnZXQvc2V0
IHRoZSBnbG9iYWwgaWNvbiBkYXRhYmFzZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9pY29uL1BhZ2VVUkxSZWNvcmQuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24v
UGFnZVVSTFJlY29yZC5jcHAKaW5kZXggZjhiMjMxNGNmMTE4Y2I5ZDg2OGMxNDBkOGI4MmVhMTM1
NDFkYjhiMC4uOTlkZGVkOGYyMDVmM2FhYmY0ZWNmODBkMDc1YWFjODVmOTYyOTFiYSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vUGFnZVVSTFJlY29yZC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vUGFnZVVSTFJlY29yZC5jcHAKQEAgLTM1LDI5ICsz
NSwyOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFBhZ2VVUkxSZWNvcmQ6OlBhZ2VVUkxSZWNv
cmQoY29uc3QgU3RyaW5nJiBwYWdlVVJMKQogICAgIDogbV9wYWdlVVJMKHBhZ2VVUkwpCi0gICAg
LCBtX3JldGFpbkNvdW50KDApCiB7CiB9CiAKIFBhZ2VVUkxSZWNvcmQ6On5QYWdlVVJMUmVjb3Jk
KCkKIHsKLSAgICBzZXRJY29uUmVjb3JkKG51bGxwdHIpOworICAgIGlmIChtX2ljb25SZWNvcmQp
CisgICAgICAgIG1faWNvblJlY29yZC0+bV9yZXRhaW5pbmdQYWdlVVJMcy5yZW1vdmUobV9wYWdl
VVJMKTsKIH0KIAotdm9pZCBQYWdlVVJMUmVjb3JkOjpzZXRJY29uUmVjb3JkKFBhc3NSZWZQdHI8
SWNvblJlY29yZD4gaWNvbikKK3ZvaWQgUGFnZVVSTFJlY29yZDo6c2V0SWNvblJlY29yZChSZWZQ
dHI8SWNvblJlY29yZD4mJiBpY29uKQogewogICAgIGlmIChtX2ljb25SZWNvcmQpCiAgICAgICAg
IG1faWNvblJlY29yZC0+bV9yZXRhaW5pbmdQYWdlVVJMcy5yZW1vdmUobV9wYWdlVVJMKTsKLSAg
ICAgICAgCi0gICAgbV9pY29uUmVjb3JkID0gaWNvbjsKLSAgICAKKworICAgIG1faWNvblJlY29y
ZCA9IFdURk1vdmUoaWNvbik7CisKICAgICBpZiAobV9pY29uUmVjb3JkKQogICAgICAgICBtX2lj
b25SZWNvcmQtPm1fcmV0YWluaW5nUGFnZVVSTHMuYWRkKG1fcGFnZVVSTCk7CiB9CiAgICAgCiBQ
YWdlVVJMU25hcHNob3QgUGFnZVVSTFJlY29yZDo6c25hcHNob3QoYm9vbCBmb3JEZWxldGlvbikg
Y29uc3QgCiB7Ci0gICAgcmV0dXJuIFBhZ2VVUkxTbmFwc2hvdChtX3BhZ2VVUkwsIChtX2ljb25S
ZWNvcmQgJiYgIWZvckRlbGV0aW9uKSA/IG1faWNvblJlY29yZC0+aWNvblVSTCgpIDogU3RyaW5n
KCkpOworICAgIHJldHVybiB7IG1fcGFnZVVSTCwgKG1faWNvblJlY29yZCAmJiAhZm9yRGVsZXRp
b24pID8gbV9pY29uUmVjb3JkLT5pY29uVVJMKCkgOiBTdHJpbmcoKSB9OwogfQogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9Q
YWdlVVJMUmVjb3JkLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9QYWdlVVJMUmVjb3Jk
LmgKaW5kZXggZWZlZDM0NTBjNTJkNzkwNDNmM2JiNjJmNzBmMjZmM2ZkZmNlY2IzZC4uMTg5ODc1
ZTMyZDhhNzRkZTQxN2Q1OWUxNmJkNDBjYTc4YTkyMGU4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2ljb24vUGFnZVVSTFJlY29yZC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9pY29uL1BhZ2VVUkxSZWNvcmQuaApAQCAtNjEsNyArNjEsNyBAQCBwdWJsaWM6CiAKICAg
ICBpbmxpbmUgU3RyaW5nIHVybCgpIGNvbnN0IHsgcmV0dXJuIG1fcGFnZVVSTDsgfQogICAgIAot
ICAgIHZvaWQgc2V0SWNvblJlY29yZChQYXNzUmVmUHRyPEljb25SZWNvcmQ+KTsKKyAgICB2b2lk
IHNldEljb25SZWNvcmQoUmVmUHRyPEljb25SZWNvcmQ+JiYpOwogICAgIEljb25SZWNvcmQqIGlj
b25SZWNvcmQoKSB7IHJldHVybiBtX2ljb25SZWNvcmQuZ2V0KCk7IH0KIAogICAgIFBhZ2VVUkxT
bmFwc2hvdCBzbmFwc2hvdChib29sIGZvckRlbGV0aW9uID0gZmFsc2UpIGNvbnN0OwpAQCAtODIs
MTIgKzgyLDEyIEBAIHB1YmxpYzoKICAgICAgICAgcmV0dXJuIG1fcmV0YWluQ291bnQgPiAwOwog
ICAgIH0KIAotICAgIGlubGluZSBpbnQgcmV0YWluQ291bnQoKSBjb25zdCB7IHJldHVybiBtX3Jl
dGFpbkNvdW50OyB9CisgICAgaW50IHJldGFpbkNvdW50KCkgY29uc3QgeyByZXR1cm4gbV9yZXRh
aW5Db3VudDsgfQogCiBwcml2YXRlOgogICAgIFN0cmluZyBtX3BhZ2VVUkw7CiAgICAgUmVmUHRy
PEljb25SZWNvcmQ+IG1faWNvblJlY29yZDsKLSAgICBpbnQgbV9yZXRhaW5Db3VudDsKKyAgICBp
bnQgbV9yZXRhaW5Db3VudCB7IDAgfTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pb3MvUXVpY2tMb29rLmggYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvaW9zL1F1aWNrTG9vay5oCmluZGV4IDU1M2NlZDUyNTY1ZjlhYjZkNDAz
ODhjMTM2ZTUzYTdlNjllNGM3NjEuLjZmZDFjYzY4ZWI2ZDRmMThhZTgxZTU3MzE3N2I3NmE1ZGE0
NGQ1YTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pb3MvUXVpY2tMb29rLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2lvcy9RdWlja0xvb2suaApAQCAtODQsNyArODQs
NyBAQCBwdWJsaWM6CiAKICAgICBXRUJDT1JFX0VYUE9SVCBOU1VSTFJlc3BvbnNlICpuc1Jlc3Bv
bnNlKCk7CiAKLSAgICB2b2lkIHNldENsaWVudChQYXNzUmVmUHRyPFF1aWNrTG9va0hhbmRsZUNs
aWVudD4gY2xpZW50KSB7IG1fY2xpZW50ID0gY2xpZW50OyB9CisgICAgdm9pZCBzZXRDbGllbnQo
UmVmPFF1aWNrTG9va0hhbmRsZUNsaWVudD4mJiBjbGllbnQpIHsgbV9jbGllbnQgPSBXVEZNb3Zl
KGNsaWVudCk7IH0KIAogICAgIFdFQkNPUkVfRVhQT1JUIFN0cmluZyBwcmV2aWV3RmlsZU5hbWUo
KSBjb25zdDsKICAgICBXRUJDT1JFX0VYUE9SVCBTdHJpbmcgcHJldmlld1VUSSgpIGNvbnN0Owpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2lvcy9RdWlja0xvb2subW0gYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvaW9zL1F1aWNrTG9vay5tbQppbmRleCBkMTQyMTQ3NjdjYjU3YWMz
MDJjYjFlYjFiNTY3MjIwMzQ1Mjc3ZjNiLi4yODRkNDJlMWZmNTI0OGRkNGMzYjI2NmNiODRiOTI0
ZWMzNWI3NDIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaW9zL1F1aWNrTG9v
ay5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaW9zL1F1aWNrTG9vay5tbQpAQCAtMTg5
LDEzICsxODksMTMgQEAgQGVuZAogCiBAaW1wbGVtZW50YXRpb24gV2ViUmVzb3VyY2VMb2FkZXJR
dWlja0xvb2tEZWxlZ2F0ZQogCi0tIChpZClpbml0V2l0aFJlc291cmNlTG9hZGVyOihQYXNzUmVm
UHRyPFJlc291cmNlTG9hZGVyPilyZXNvdXJjZUxvYWRlcgorLSAoaWQpaW5pdFdpdGhSZXNvdXJj
ZUxvYWRlcjooUmVzb3VyY2VMb2FkZXImKXJlc291cmNlTG9hZGVyCiB7CiAgICAgc2VsZiA9IFtz
dXBlciBpbml0XTsKICAgICBpZiAoIXNlbGYpCiAgICAgICAgIHJldHVybiBuaWw7CiAKLSAgICBf
cmVzb3VyY2VMb2FkZXIgPSByZXNvdXJjZUxvYWRlcjsKKyAgICBfcmVzb3VyY2VMb2FkZXIgPSAm
cmVzb3VyY2VMb2FkZXI7CiAgICAgcmV0dXJuIHNlbGY7CiB9CiAKQEAgLTMzMSw3ICszMzEsNyBA
QCBzdGQ6OnVuaXF1ZV9wdHI8UXVpY2tMb29rSGFuZGxlPiBRdWlja0xvb2tIYW5kbGU6OmNyZWF0
ZShSZXNvdXJjZUxvYWRlciYgbG9hZGVyLAogewogICAgIEFTU0VSVChzaG91bGRDcmVhdGVGb3JN
SU1FVHlwZShyZXNwb25zZS5taW1lVHlwZSgpKSk7CiAKLSAgICBSZXRhaW5QdHI8V2ViUmVzb3Vy
Y2VMb2FkZXJRdWlja0xvb2tEZWxlZ2F0ZT4gZGVsZWdhdGUgPSBhZG9wdE5TKFtbV2ViUmVzb3Vy
Y2VMb2FkZXJRdWlja0xvb2tEZWxlZ2F0ZSBhbGxvY10gaW5pdFdpdGhSZXNvdXJjZUxvYWRlcjom
bG9hZGVyXSk7CisgICAgUmV0YWluUHRyPFdlYlJlc291cmNlTG9hZGVyUXVpY2tMb29rRGVsZWdh
dGU+IGRlbGVnYXRlID0gYWRvcHROUyhbW1dlYlJlc291cmNlTG9hZGVyUXVpY2tMb29rRGVsZWdh
dGUgYWxsb2NdIGluaXRXaXRoUmVzb3VyY2VMb2FkZXI6bG9hZGVyXSk7CiAgICAgc3RkOjp1bmlx
dWVfcHRyPFF1aWNrTG9va0hhbmRsZT4gcXVpY2tMb29rSGFuZGxlKG5ldyBRdWlja0xvb2tIYW5k
bGUoW2xvYWRlci5vcmlnaW5hbFJlcXVlc3QoKS5uc1VSTFJlcXVlc3QoRG9Ob3RVcGRhdGVIVFRQ
Qm9keSkgVVJMXSwgcmVzcG9uc2UubnNVUkxSZXNwb25zZSgpLCBkZWxlZ2F0ZS5nZXQoKSkpOwog
ICAgIFtkZWxlZ2F0ZSBzZXRRdWlja0xvb2tIYW5kbGU6cXVpY2tMb29rSGFuZGxlLmdldCgpXTsK
ICAgICBsb2FkZXIuZGlkQ3JlYXRlUXVpY2tMb29rSGFuZGxlKCpxdWlja0xvb2tIYW5kbGUpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWUuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9DaHJvbWUuY3BwCmluZGV4IGQwMTViYTQ1YTMzYWViY2UxNzI5ZDNiOTliMjU1ZjU0
NTMwMWU3NmEuLjFlYzY2ZTk5MTBmNTU2NDllZTYwYjlmNmRjMjkwZjEzMzI0MGFkNGQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21lLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0Nocm9tZS5jcHAKQEAgLTQzMiw3ICs0MzIsNyBAQCBzdGQ6OnVuaXF1ZV9wdHI8Q29s
b3JDaG9vc2VyPiBDaHJvbWU6OmNyZWF0ZUNvbG9yQ2hvb3NlcihDb2xvckNob29zZXJDbGllbnQq
IGNsaQogfQogI2VuZGlmCiAKLXZvaWQgQ2hyb21lOjpydW5PcGVuUGFuZWwoRnJhbWUqIGZyYW1l
LCBQYXNzUmVmUHRyPEZpbGVDaG9vc2VyPiBmaWxlQ2hvb3NlcikKK3ZvaWQgQ2hyb21lOjpydW5P
cGVuUGFuZWwoRnJhbWUmIGZyYW1lLCBGaWxlQ2hvb3NlciYgZmlsZUNob29zZXIpCiB7CiAgICAg
bm90aWZ5UG9wdXBPcGVuaW5nT2JzZXJ2ZXJzKCk7CiAgICAgbV9jbGllbnQucnVuT3BlblBhbmVs
KGZyYW1lLCBmaWxlQ2hvb3Nlcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0No
cm9tZS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWUuaAppbmRleCBmMjM4NjBhMmJkYWYz
YzI5M2UwMTkzYzJjYTQ5MmJhNmE4OGY3YzUyLi5iNTBmNzg3M2YxMDQ5ZTA2MTZkNzIzOTgwMTNk
MzE0NjI3NGIzZjc0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21lLmgKQEAgLTE1Niw3ICsxNTYsNyBAQCBwdWJs
aWM6CiAgICAgc3RkOjp1bmlxdWVfcHRyPENvbG9yQ2hvb3Nlcj4gY3JlYXRlQ29sb3JDaG9vc2Vy
KENvbG9yQ2hvb3NlckNsaWVudCosIGNvbnN0IENvbG9yJiBpbml0aWFsQ29sb3IpOwogI2VuZGlm
CiAKLSAgICB2b2lkIHJ1bk9wZW5QYW5lbChGcmFtZSosIFBhc3NSZWZQdHI8RmlsZUNob29zZXI+
KTsKKyAgICB2b2lkIHJ1bk9wZW5QYW5lbChGcmFtZSYsIEZpbGVDaG9vc2VyJik7CiAgICAgdm9p
ZCBsb2FkSWNvbkZvckZpbGVzKGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgRmlsZUljb25Mb2FkZXIm
KTsKIAogICAgIHZvaWQgZGlzcGF0Y2hWaWV3cG9ydFByb3BlcnRpZXNEaWRDaGFuZ2UoY29uc3Qg
Vmlld3BvcnRBcmd1bWVudHMmKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvQ2hyb21lQ2xpZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZUNsaWVudC5oCmlu
ZGV4IGEwOWZlM2NiMzBiYTNkODE4YzE0ZDFkMThlZDY1MzVlMWZlMzg4MTUuLjg2ODI2ZTU5NTA4
OWYyNGMyNWIyNzg2YzFmNGU5ODIyZGM0NGRlZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvQ2hyb21lQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWVDbGll
bnQuaApAQCAtMjczLDcgKzI3Myw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHN0ZDo6dW5pcXVl
X3B0cjxDb2xvckNob29zZXI+IGNyZWF0ZUNvbG9yQ2hvb3NlcihDb2xvckNob29zZXJDbGllbnQq
LCBjb25zdCBDb2xvciYpID0gMDsKICNlbmRpZgogCi0gICAgdmlydHVhbCB2b2lkIHJ1bk9wZW5Q
YW5lbChGcmFtZSosIFBhc3NSZWZQdHI8RmlsZUNob29zZXI+KSA9IDA7CisgICAgdmlydHVhbCB2
b2lkIHJ1bk9wZW5QYW5lbChGcmFtZSYsIEZpbGVDaG9vc2VyJikgPSAwOwogICAgIC8vIEFzeW5j
aHJvbm91cyByZXF1ZXN0IHRvIGxvYWQgYW4gaWNvbiBmb3Igc3BlY2lmaWVkIGZpbGVuYW1lcy4K
ICAgICB2aXJ0dWFsIHZvaWQgbG9hZEljb25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8U3RyaW5nPiYs
IEZpbGVJY29uTG9hZGVyJikgPSAwOwogICAgICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvRE9NV2luZG93LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNw
cAppbmRleCA2YTI3YjJjMjliZDJmZTQ0MWEyMDgyMmQ0ZDlkNWRiNTc5ZWE3NzZkLi45ZjdhNmFj
NTAxYTM2Yjg0Y2RiNTcxNGEyZGMyNGViZjcyZGFiNTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0RPTVdpbmRvdy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5k
b3cuY3BwCkBAIC03NzMsNyArNzczLDcgQEAgRE9NQXBwbGljYXRpb25DYWNoZSogRE9NV2luZG93
OjphcHBsaWNhdGlvbkNhY2hlKCkgY29uc3QKICAgICBpZiAoIWlzQ3VycmVudGx5RGlzcGxheWVk
SW5GcmFtZSgpKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICBpZiAoIW1fYXBwbGljYXRp
b25DYWNoZSkKLSAgICAgICAgbV9hcHBsaWNhdGlvbkNhY2hlID0gRE9NQXBwbGljYXRpb25DYWNo
ZTo6Y3JlYXRlKG1fZnJhbWUpOworICAgICAgICBtX2FwcGxpY2F0aW9uQ2FjaGUgPSBET01BcHBs
aWNhdGlvbkNhY2hlOjpjcmVhdGUoKm1fZnJhbWUpOwogICAgIHJldHVybiBtX2FwcGxpY2F0aW9u
Q2FjaGUuZ2V0KCk7CiB9CiAKQEAgLTIwODcsNyArMjA4Nyw3IEBAIHZvaWQgRE9NV2luZG93Ojpz
ZXRMb2NhdGlvbihET01XaW5kb3cmIGFjdGl2ZVdpbmRvdywgRE9NV2luZG93JiBmaXJzdFdpbmRv
dywgY29uCiAgICAgLy8gV2Ugd2FudCBhIG5ldyBoaXN0b3J5IGl0ZW0gaWYgd2UgYXJlIHByb2Nl
c3NpbmcgYSB1c2VyIGdlc3R1cmUuCiAgICAgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnkgPSAobG9j
a2luZyAhPSBMb2NrSGlzdG9yeUJhc2VkT25HZXN0dXJlU3RhdGUgfHwgIVNjcmlwdENvbnRyb2xs
ZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpKSA/IExvY2tIaXN0b3J5OjpZZXMgOiBMb2NrSGlz
dG9yeTo6Tm87CiAgICAgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0ID0g
KGxvY2tpbmcgIT0gTG9ja0hpc3RvcnlCYXNlZE9uR2VzdHVyZVN0YXRlKSA/IExvY2tCYWNrRm9y
d2FyZExpc3Q6OlllcyA6IExvY2tCYWNrRm9yd2FyZExpc3Q6Ok5vOwotICAgIG1fZnJhbWUtPm5h
dmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKGFjdGl2ZURvY3VtZW50
LCBhY3RpdmVEb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKSwKKyAgICBtX2ZyYW1lLT5uYXZpZ2F0
aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZSgqYWN0aXZlRG9jdW1lbnQsIGFj
dGl2ZURvY3VtZW50LT5zZWN1cml0eU9yaWdpbigpLAogICAgICAgICAvLyBGSVhNRTogV2hhdCBp
ZiBhY3RpdmVEb2N1bWVudCgpLT5mcmFtZSgpIGlzIDA/CiAgICAgICAgIGNvbXBsZXRlZFVSTCwg
YWN0aXZlRG9jdW1lbnQtPmZyYW1lKCktPmxvYWRlcigpLm91dGdvaW5nUmVmZXJyZXIoKSwKICAg
ICAgICAgbG9ja0hpc3RvcnksIGxvY2tCYWNrRm9yd2FyZExpc3QpOwpAQCAtMjIxMyw3ICsyMjEz
LDcgQEAgUmVmUHRyPEZyYW1lPiBET01XaW5kb3c6OmNyZWF0ZVdpbmRvdyhjb25zdCBTdHJpbmcm
IHVybFN0cmluZywgY29uc3QgQXRvbWljU3RyaW4KICAgICAgICAgbmV3RnJhbWUtPmxvYWRlcigp
LmNoYW5nZUxvY2F0aW9uKGZyYW1lUmVxdWVzdCk7CiAgICAgfSBlbHNlIGlmICghdXJsU3RyaW5n
LmlzRW1wdHkoKSkgewogICAgICAgICBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSA9IFNjcmlwdENv
bnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpID8gTG9ja0hpc3Rvcnk6Ok5vIDogTG9j
a0hpc3Rvcnk6OlllczsKLSAgICAgICAgbmV3RnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5z
Y2hlZHVsZUxvY2F0aW9uQ2hhbmdlKGFjdGl2ZVdpbmRvdy5kb2N1bWVudCgpLCBhY3RpdmVXaW5k
b3cuZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSwgY29tcGxldGVkVVJMLCByZWZlcnJlciwg
bG9ja0hpc3RvcnksIExvY2tCYWNrRm9yd2FyZExpc3Q6Ok5vKTsKKyAgICAgICAgbmV3RnJhbWUt
Pm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKCphY3RpdmVXaW5k
b3cuZG9jdW1lbnQoKSwgYWN0aXZlV2luZG93LmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCks
IGNvbXBsZXRlZFVSTCwgcmVmZXJyZXIsIGxvY2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0
OjpObyk7CiAgICAgfQogCiAgICAgLy8gTmF2aWdhdGluZyB0aGUgbmV3IGZyYW1lIGNvdWxkIHJl
c3VsdCBpbiBpdCBiZWluZyBkZXRhY2hlZCBmcm9tIGl0cyBwYWdlIGJ5IGEgbmF2aWdhdGlvbiBw
b2xpY3kgZGVsZWdhdGUuCkBAIC0yMjIzLDI4ICsyMjIzLDI2IEBAIFJlZlB0cjxGcmFtZT4gRE9N
V2luZG93OjpjcmVhdGVXaW5kb3coY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcsIGNvbnN0IEF0b21p
Y1N0cmluCiAgICAgcmV0dXJuIG5ld0ZyYW1lOwogfQogCi1SZWZQdHI8RE9NV2luZG93PiBET01X
aW5kb3c6Om9wZW4oY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcsIGNvbnN0IEF0b21pY1N0cmluZyYg
ZnJhbWVOYW1lLCBjb25zdCBTdHJpbmcmIHdpbmRvd0ZlYXR1cmVzU3RyaW5nLAotICAgIERPTVdp
bmRvdyYgYWN0aXZlV2luZG93LCBET01XaW5kb3cmIGZpcnN0V2luZG93KQorUmVmUHRyPERPTVdp
bmRvdz4gRE9NV2luZG93OjpvcGVuKGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nLCBjb25zdCBBdG9t
aWNTdHJpbmcmIGZyYW1lTmFtZSwgY29uc3QgU3RyaW5nJiB3aW5kb3dGZWF0dXJlc1N0cmluZywg
RE9NV2luZG93JiBhY3RpdmVXaW5kb3csIERPTVdpbmRvdyYgZmlyc3RXaW5kb3cpCiB7CiAgICAg
aWYgKCFpc0N1cnJlbnRseURpc3BsYXllZEluRnJhbWUoKSkKICAgICAgICAgcmV0dXJuIG51bGxw
dHI7CiAKLSAgICBEb2N1bWVudCogYWN0aXZlRG9jdW1lbnQgPSBhY3RpdmVXaW5kb3cuZG9jdW1l
bnQoKTsKKyAgICBhdXRvKiBhY3RpdmVEb2N1bWVudCA9IGFjdGl2ZVdpbmRvdy5kb2N1bWVudCgp
OwogICAgIGlmICghYWN0aXZlRG9jdW1lbnQpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCi0g
ICAgRnJhbWUqIGZpcnN0RnJhbWUgPSBmaXJzdFdpbmRvdy5mcmFtZSgpOworICAgIGF1dG8qIGZp
cnN0RnJhbWUgPSBmaXJzdFdpbmRvdy5mcmFtZSgpOwogICAgIGlmICghZmlyc3RGcmFtZSkKICAg
ICAgICAgcmV0dXJuIG51bGxwdHI7CiAKICNpZiBFTkFCTEUoQ09OVEVOVF9FWFRFTlNJT05TKQog
ICAgIGlmIChmaXJzdEZyYW1lLT5kb2N1bWVudCgpCi0gICAgICAgICYmIGZpcnN0RnJhbWUtPm1h
aW5GcmFtZSgpLnBhZ2UoKQorICAgICAgICAmJiBmaXJzdEZyYW1lLT5wYWdlKCkKICAgICAgICAg
JiYgZmlyc3RGcmFtZS0+bWFpbkZyYW1lKCkuZG9jdW1lbnQoKQogICAgICAgICAmJiBmaXJzdEZy
YW1lLT5tYWluRnJhbWUoKS5kb2N1bWVudCgpLT5sb2FkZXIoKSkgewotICAgICAgICBSZXNvdXJj
ZUxvYWRJbmZvIHJlc291cmNlTG9hZEluZm8gPSB7IGZpcnN0RnJhbWUtPmRvY3VtZW50KCktPmNv
bXBsZXRlVVJMKHVybFN0cmluZyksIGZpcnN0RnJhbWUtPm1haW5GcmFtZSgpLmRvY3VtZW50KCkt
PnVybCgpLCBSZXNvdXJjZVR5cGU6OlBvcHVwIH07Ci0gICAgICAgIFZlY3RvcjxDb250ZW50RXh0
ZW5zaW9uczo6QWN0aW9uPiBhY3Rpb25zID0gZmlyc3RGcmFtZS0+bWFpbkZyYW1lKCkucGFnZSgp
LT51c2VyQ29udGVudFByb3ZpZGVyKCkuYWN0aW9uc0ZvclJlc291cmNlTG9hZChyZXNvdXJjZUxv
YWRJbmZvLCAqZmlyc3RGcmFtZS0+bWFpbkZyYW1lKCkuZG9jdW1lbnQoKS0+bG9hZGVyKCkpOwot
ICAgICAgICBmb3IgKGNvbnN0IENvbnRlbnRFeHRlbnNpb25zOjpBY3Rpb24mIGFjdGlvbiA6IGFj
dGlvbnMpIHsKKyAgICAgICAgUmVzb3VyY2VMb2FkSW5mbyByZXNvdXJjZUxvYWRJbmZvIHsgZmly
c3RGcmFtZS0+ZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwodXJsU3RyaW5nKSwgZmlyc3RGcmFtZS0+
bWFpbkZyYW1lKCkuZG9jdW1lbnQoKS0+dXJsKCksIFJlc291cmNlVHlwZTo6UG9wdXAgfTsKKyAg
ICAgICAgZm9yIChhdXRvJiBhY3Rpb24gOiBmaXJzdEZyYW1lLT5wYWdlKCktPnVzZXJDb250ZW50
UHJvdmlkZXIoKS5hY3Rpb25zRm9yUmVzb3VyY2VMb2FkKHJlc291cmNlTG9hZEluZm8sICpmaXJz
dEZyYW1lLT5tYWluRnJhbWUoKS5kb2N1bWVudCgpLT5sb2FkZXIoKSkpIHsKICAgICAgICAgICAg
IGlmIChhY3Rpb24udHlwZSgpID09IENvbnRlbnRFeHRlbnNpb25zOjpBY3Rpb25UeXBlOjpCbG9j
a0xvYWQpCiAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgICAgIH0KQEAgLTIy
ODQsNyArMjI4Miw3IEBAIFJlZlB0cjxET01XaW5kb3c+IERPTVdpbmRvdzo6b3Blbihjb25zdCBT
dHJpbmcmIHVybFN0cmluZywgY29uc3QgQXRvbWljU3RyaW5nJiBmCiAgICAgICAgIC8vIEZvciB3
aGF0ZXZlciByZWFzb24sIEZpcmVmb3ggdXNlcyB0aGUgZmlyc3Qgd2luZG93IHJhdGhlciB0aGFu
IHRoZSBhY3RpdmUgd2luZG93IHRvCiAgICAgICAgIC8vIGRldGVybWluZSB0aGUgb3V0Z29pbmcg
cmVmZXJyZXIuIFdlIHJlcGxpY2F0ZSB0aGF0IGJlaGF2aW9yIGhlcmUuCiAgICAgICAgIExvY2tI
aXN0b3J5IGxvY2tIaXN0b3J5ID0gU2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJHZXN0
dXJlKCkgPyBMb2NrSGlzdG9yeTo6Tm8gOiBMb2NrSGlzdG9yeTo6WWVzOwotICAgICAgICB0YXJn
ZXRGcmFtZS0+bmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UoYWN0
aXZlRG9jdW1lbnQsIGFjdGl2ZURvY3VtZW50LT5zZWN1cml0eU9yaWdpbigpLCBjb21wbGV0ZWRV
UkwsIGZpcnN0RnJhbWUtPmxvYWRlcigpLm91dGdvaW5nUmVmZXJyZXIoKSwKKyAgICAgICAgdGFy
Z2V0RnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKCph
Y3RpdmVEb2N1bWVudCwgYWN0aXZlRG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCksIGNvbXBsZXRl
ZFVSTCwgZmlyc3RGcmFtZS0+bG9hZGVyKCkub3V0Z29pbmdSZWZlcnJlcigpLAogICAgICAgICAg
ICAgbG9ja0hpc3RvcnksIExvY2tCYWNrRm9yd2FyZExpc3Q6Ok5vKTsKICAgICAgICAgcmV0dXJu
IHRhcmdldEZyYW1lLT5kb2N1bWVudCgpLT5kb21XaW5kb3coKTsKICAgICB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0VkaXRvckNsaWVudC5oIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9FZGl0b3JDbGllbnQuaAppbmRleCBlYjFhNDJlMmVlZDAzYTUxNGQxMjM2MDhiY2U3M2I0ZTJk
NTY3ODBhLi5mNDEzMjEwOWY2NDkzYzMwNTgyYTk4OTE5MmM4ZGIzNTU5OTk3ODRjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0VkaXRvckNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvRWRpdG9yQ2xpZW50LmgKQEAgLTEwNCw4ICsxMDQsOCBAQCBwdWJsaWM6CiAgICAg
dmlydHVhbCB2b2lkIGRpc2NhcmRlZENvbXBvc2l0aW9uKEZyYW1lKikgPSAwOwogICAgIHZpcnR1
YWwgdm9pZCBjYW5jZWxlZENvbXBvc2l0aW9uKCkgPSAwOwogCi0gICAgdmlydHVhbCB2b2lkIHJl
Z2lzdGVyVW5kb1N0ZXAoUGFzc1JlZlB0cjxVbmRvU3RlcD4pID0gMDsKLSAgICB2aXJ0dWFsIHZv
aWQgcmVnaXN0ZXJSZWRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPikgPSAwOworICAgIHZpcnR1
YWwgdm9pZCByZWdpc3RlclVuZG9TdGVwKFVuZG9TdGVwJikgPSAwOworICAgIHZpcnR1YWwgdm9p
ZCByZWdpc3RlclJlZG9TdGVwKFVuZG9TdGVwJikgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBjbGVh
clVuZG9SZWRvT3BlcmF0aW9ucygpID0gMDsKIAogICAgIHZpcnR1YWwgYm9vbCBjYW5Db3B5Q3V0
KEZyYW1lKiwgYm9vbCBkZWZhdWx0VmFsdWUpIGNvbnN0ID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvSGlzdG9yeS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0hpc3Rvcnku
Y3BwCmluZGV4IDFkNDU0MmI4N2VhNjEyNTBhODRiZDdjZDkxNjcyZDVlYWZiMzg0ZGYuLjYzZWQz
ZDAwN2ViZWQxYTgyMzkwYmFlMTk4NzViMzUyNzY5ZmU4ZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvSGlzdG9yeS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9IaXN0b3J5
LmNwcApAQCAtMjA3LDEwICsyMDcsMTAgQEAgRXhjZXB0aW9uT3I8dm9pZD4gSGlzdG9yeTo6c3Rh
dGVPYmplY3RBZGRlZChSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiYmIGRhdGEKICAgICAg
ICAgbV9mcmFtZS0+ZG9jdW1lbnQoKS0+dXBkYXRlVVJMRm9yUHVzaE9yUmVwbGFjZVN0YXRlKGZ1
bGxVUkwpOwogCiAgICAgaWYgKHN0YXRlT2JqZWN0VHlwZSA9PSBTdGF0ZU9iamVjdFR5cGU6OlB1
c2gpIHsKLSAgICAgICAgbV9mcmFtZS0+bG9hZGVyKCkuaGlzdG9yeSgpLnB1c2hTdGF0ZShkYXRh
LCB0aXRsZSwgZnVsbFVSTC5zdHJpbmcoKSk7CisgICAgICAgIG1fZnJhbWUtPmxvYWRlcigpLmhp
c3RvcnkoKS5wdXNoU3RhdGUoV1RGTW92ZShkYXRhKSwgdGl0bGUsIGZ1bGxVUkwuc3RyaW5nKCkp
OwogICAgICAgICBtX2ZyYW1lLT5sb2FkZXIoKS5jbGllbnQoKS5kaXNwYXRjaERpZFB1c2hTdGF0
ZVdpdGhpblBhZ2UoKTsKICAgICB9IGVsc2UgaWYgKHN0YXRlT2JqZWN0VHlwZSA9PSBTdGF0ZU9i
amVjdFR5cGU6OlJlcGxhY2UpIHsKLSAgICAgICAgbV9mcmFtZS0+bG9hZGVyKCkuaGlzdG9yeSgp
LnJlcGxhY2VTdGF0ZShkYXRhLCB0aXRsZSwgZnVsbFVSTC5zdHJpbmcoKSk7CisgICAgICAgIG1f
ZnJhbWUtPmxvYWRlcigpLmhpc3RvcnkoKS5yZXBsYWNlU3RhdGUoV1RGTW92ZShkYXRhKSwgdGl0
bGUsIGZ1bGxVUkwuc3RyaW5nKCkpOwogICAgICAgICBtX2ZyYW1lLT5sb2FkZXIoKS5jbGllbnQo
KS5kaXNwYXRjaERpZFJlcGxhY2VTdGF0ZVdpdGhpblBhZ2UoKTsKICAgICB9CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTG9jYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9Mb2NhdGlvbi5jcHAKaW5kZXggOGQ4MzlkMTNhOTE5ODBlMWEwMjhkYmM1ODBiYmJmMWQzNjZk
NDU2Zi4uYmRiNTQ4YjBiNzg5MzRhYzYyYzE3MWU2OWY3ZjEyOTNiZmZhNDI3NiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Mb2NhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9Mb2NhdGlvbi5jcHAKQEAgLTIyMSw5ICsyMjEsMTAgQEAgdm9pZCBMb2NhdGlvbjo6c2V0
SGFzaChET01XaW5kb3cmIGFjdGl2ZVdpbmRvdywgRE9NV2luZG93JiBmaXJzdFdpbmRvdywgY29u
c3QgU3QKIHsKICAgICBpZiAoIW1fZnJhbWUpCiAgICAgICAgIHJldHVybjsKLSAgICBVUkwgdXJs
ID0gbV9mcmFtZS0+ZG9jdW1lbnQoKS0+dXJsKCk7Ci0gICAgU3RyaW5nIG9sZEZyYWdtZW50SWRl
bnRpZmllciA9IHVybC5mcmFnbWVudElkZW50aWZpZXIoKTsKLSAgICBTdHJpbmcgbmV3RnJhZ21l
bnRJZGVudGlmaWVyID0gaGFzaDsKKyAgICBBU1NFUlQobV9mcmFtZS0+ZG9jdW1lbnQoKSk7Cisg
ICAgYXV0byB1cmwgPSBtX2ZyYW1lLT5kb2N1bWVudCgpLT51cmwoKTsKKyAgICBhdXRvIG9sZEZy
YWdtZW50SWRlbnRpZmllciA9IHVybC5mcmFnbWVudElkZW50aWZpZXIoKTsKKyAgICBhdXRvIG5l
d0ZyYWdtZW50SWRlbnRpZmllciA9IGhhc2g7CiAgICAgaWYgKGhhc2hbMF0gPT0gJyMnKQogICAg
ICAgICBuZXdGcmFnbWVudElkZW50aWZpZXIgPSBoYXNoLnN1YnN0cmluZygxKTsKICAgICB1cmwu
c2V0RnJhZ21lbnRJZGVudGlmaWVyKG5ld0ZyYWdtZW50SWRlbnRpZmllcik7CkBAIC0yNDYsNyAr
MjQ3LDkgQEAgdm9pZCBMb2NhdGlvbjo6cmVwbGFjZShET01XaW5kb3cmIGFjdGl2ZVdpbmRvdywg
RE9NV2luZG93JiBmaXJzdFdpbmRvdywgY29uc3QgU3QKIHsKICAgICBpZiAoIW1fZnJhbWUpCiAg
ICAgICAgIHJldHVybjsKLSAgICAvLyBOb3RlOiBXZSBjYWxsIERPTVdpbmRvdzo6c2V0TG9jYXRp
b24gZGlyZWN0bHkgaGVyZSBiZWNhdXNlIHJlcGxhY2UoKSBhbHdheXMgb3BlcmF0ZXMgb24gdGhl
IGN1cnJlbnQgZnJhbWUuCisgICAgQVNTRVJUKG1fZnJhbWUtPmRvY3VtZW50KCkpOworICAgIEFT
U0VSVChtX2ZyYW1lLT5kb2N1bWVudCgpLT5kb21XaW5kb3coKSk7CisgICAgLy8gV2UgY2FsbCBE
T01XaW5kb3c6OnNldExvY2F0aW9uIGRpcmVjdGx5IGhlcmUgYmVjYXVzZSByZXBsYWNlKCkgYWx3
YXlzIG9wZXJhdGVzIG9uIHRoZSBjdXJyZW50IGZyYW1lLgogICAgIG1fZnJhbWUtPmRvY3VtZW50
KCktPmRvbVdpbmRvdygpLT5zZXRMb2NhdGlvbihhY3RpdmVXaW5kb3csIGZpcnN0V2luZG93LCB1
cmwsIExvY2tIaXN0b3J5QW5kQmFja0ZvcndhcmRMaXN0KTsKIH0KIApAQCAtMjU0LDI2ICsyNTcs
MzggQEAgdm9pZCBMb2NhdGlvbjo6cmVsb2FkKERPTVdpbmRvdyYgYWN0aXZlV2luZG93KQogewog
ICAgIGlmICghbV9mcmFtZSkKICAgICAgICAgcmV0dXJuOworCisgICAgQVNTRVJUKGFjdGl2ZVdp
bmRvdy5kb2N1bWVudCgpKTsKKyAgICBBU1NFUlQobV9mcmFtZS0+ZG9jdW1lbnQoKSk7CisgICAg
QVNTRVJUKG1fZnJhbWUtPmRvY3VtZW50KCktPmRvbVdpbmRvdygpKTsKKworICAgIGF1dG8mIGFj
dGl2ZURvY3VtZW50ID0gKmFjdGl2ZVdpbmRvdy5kb2N1bWVudCgpOworICAgIGF1dG8mIHRhcmdl
dERvY3VtZW50ID0gKm1fZnJhbWUtPmRvY3VtZW50KCk7CisKICAgICAvLyBGSVhNRTogSXQncyBu
b3QgY2xlYXIgdGhpcyBjcm9zcy1vcmlnaW4gc2VjdXJpdHkgY2hlY2sgaXMgdmFsdWFibGUuCiAg
ICAgLy8gV2UgYWxsb3cgb25lIHBhZ2UgdG8gY2hhbmdlIHRoZSBsb2NhdGlvbiBvZiBhbm90aGVy
LiBXaHkgYmxvY2sgYXR0ZW1wdHMgdG8gcmVsb2FkPwogICAgIC8vIE90aGVyIGxvY2F0aW9uIG9w
ZXJhdGlvbnMgc2ltcGx5IGJsb2NrIHVzZSBvZiBKYXZhU2NyaXB0IFVSTHMgY3Jvc3Mgb3JpZ2lu
LgotICAgIERPTVdpbmRvdyogdGFyZ2V0V2luZG93ID0gbV9mcmFtZS0+ZG9jdW1lbnQoKS0+ZG9t
V2luZG93KCk7Ci0gICAgaWYgKCFhY3RpdmVXaW5kb3cuZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmln
aW4oKS0+Y2FuQWNjZXNzKG1fZnJhbWUtPmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCkpKSB7
Ci0gICAgICAgIHRhcmdldFdpbmRvdy0+cHJpbnRFcnJvck1lc3NhZ2UodGFyZ2V0V2luZG93LT5j
cm9zc0RvbWFpbkFjY2Vzc0Vycm9yTWVzc2FnZShhY3RpdmVXaW5kb3cpKTsKKyAgICBpZiAoIWFj
dGl2ZURvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCktPmNhbkFjY2Vzcyh0YXJnZXREb2N1bWVudC5z
ZWN1cml0eU9yaWdpbigpKSkgeworICAgICAgICBhdXRvJiB0YXJnZXRXaW5kb3cgPSAqdGFyZ2V0
RG9jdW1lbnQuZG9tV2luZG93KCk7CisgICAgICAgIHRhcmdldFdpbmRvdy5wcmludEVycm9yTWVz
c2FnZSh0YXJnZXRXaW5kb3cuY3Jvc3NEb21haW5BY2Nlc3NFcnJvck1lc3NhZ2UoYWN0aXZlV2lu
ZG93KSk7CiAgICAgICAgIHJldHVybjsKICAgICB9Ci0gICAgaWYgKHByb3RvY29sSXNKYXZhU2Ny
aXB0KG1fZnJhbWUtPmRvY3VtZW50KCktPnVybCgpKSkKKworICAgIGlmIChwcm90b2NvbElzSmF2
YVNjcmlwdCh0YXJnZXREb2N1bWVudC51cmwoKSkpCiAgICAgICAgIHJldHVybjsKLSAgICBtX2Zy
YW1lLT5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVSZWZyZXNoKGFjdGl2ZVdpbmRvdy5k
b2N1bWVudCgpKTsKKworICAgIG1fZnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVs
ZVJlZnJlc2goYWN0aXZlRG9jdW1lbnQpOwogfQogCiB2b2lkIExvY2F0aW9uOjpzZXRMb2NhdGlv
bihET01XaW5kb3cmIGFjdGl2ZVdpbmRvdywgRE9NV2luZG93JiBmaXJzdFdpbmRvdywgY29uc3Qg
U3RyaW5nJiB1cmwpCiB7CiAgICAgQVNTRVJUKG1fZnJhbWUpOwotICAgIEZyYW1lKiBmcmFtZSA9
IG1fZnJhbWUtPmxvYWRlcigpLmZpbmRGcmFtZUZvck5hdmlnYXRpb24oU3RyaW5nKCksIGFjdGl2
ZVdpbmRvdy5kb2N1bWVudCgpKTsKLSAgICBpZiAoIWZyYW1lKQorICAgIGF1dG8qIHRhcmdldEZy
YW1lID0gbV9mcmFtZS0+bG9hZGVyKCkuZmluZEZyYW1lRm9yTmF2aWdhdGlvbih7IH0sIGFjdGl2
ZVdpbmRvdy5kb2N1bWVudCgpKTsKKyAgICBpZiAoIXRhcmdldEZyYW1lKQogICAgICAgICByZXR1
cm47Ci0gICAgZnJhbWUtPmRvY3VtZW50KCktPmRvbVdpbmRvdygpLT5zZXRMb2NhdGlvbihhY3Rp
dmVXaW5kb3csIGZpcnN0V2luZG93LCB1cmwpOworICAgIEFTU0VSVCh0YXJnZXRGcmFtZS0+ZG9j
dW1lbnQoKSk7CisgICAgQVNTRVJUKHRhcmdldEZyYW1lLT5kb2N1bWVudCgpLT5kb21XaW5kb3co
KSk7CisgICAgdGFyZ2V0RnJhbWUtPmRvY3VtZW50KCktPmRvbVdpbmRvdygpLT5zZXRMb2NhdGlv
bihhY3RpdmVXaW5kb3csIGZpcnN0V2luZG93LCB1cmwpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9VUkwuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vVVJMLmNwcAppbmRleCBlNzBhMGY3YjgzZTllMmY4NDU0Y2Qx
MWY1YTY0OTg2MWEwMjYzODkzLi41ZWZiODVhMzAzNGVlM2VlZDAwYmFmZGNmMGU2ODMyMjY1MDc3
OGExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9VUkwuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL1VSTC5jcHAKQEAgLTExMjYsMTcgKzExMjYsMTcgQEAgdm9p
ZCBVUkw6OnNldFBhc3MoY29uc3QgU3RyaW5nJiBwYXNzd29yZCkKICAgICB9CiB9CiAKLXZvaWQg
VVJMOjpzZXRGcmFnbWVudElkZW50aWZpZXIoY29uc3QgU3RyaW5nJiBzKQordm9pZCBVUkw6OnNl
dEZyYWdtZW50SWRlbnRpZmllcihTdHJpbmdWaWV3IGlkZW50aWZpZXIpCiB7CiAgICAgaWYgKCFt
X2lzVmFsaWQpCiAgICAgICAgIHJldHVybjsKIAotICAgIC8vIEZJWE1FOiBOb24tQVNDSUkgY2hh
cmFjdGVycyBtdXN0IGJlIGVuY29kZWQgYW5kIGVzY2FwZWQgdG8gbWF0Y2ggcGFyc2UoKSBleHBl
Y3RhdGlvbnMuCi0gICAgaWYgKFVSTFBhcnNlcjo6ZW5hYmxlZCgpKSB7Ci0gICAgICAgIFVSTFBh
cnNlciBwYXJzZXIobWFrZVN0cmluZyhtX3N0cmluZy5sZWZ0KG1fcXVlcnlFbmQpLCAiIyIsIHMp
KTsKLSAgICAgICAgKnRoaXMgPSBwYXJzZXIucmVzdWx0KCk7Ci0gICAgfSBlbHNlCi0gICAgICAg
IHBhcnNlKG1fc3RyaW5nLmxlZnQobV9xdWVyeUVuZCkgKyAiIyIgKyBzKTsKKyAgICAvLyBGSVhN
RTogT3B0aW1pemUgdGhlIGNhc2Ugd2hlcmUgdGhlIGlkZW50aWZpZXIgYWxyZWFkeSBoYXBwZW5z
IHRvIGJlIGVxdWFsIHRvIHdoYXQgd2FzIHBhc3NlZD8KKyAgICAvLyBGSVhNRTogSXMgaXQgY29y
cmVjdCB0byBkbyB0aGlzIHdpdGhvdXQgZW5jb2RpbmcgYW5kIGVzY2FwaW5nIG5vbi1BU0NJSSBj
aGFyYWN0ZXJzPworICAgIGlmIChVUkxQYXJzZXI6OmVuYWJsZWQoKSkKKyAgICAgICAgKnRoaXMg
PSBVUkxQYXJzZXIgeyBtYWtlU3RyaW5nKFN0cmluZ1ZpZXcgeyBtX3N0cmluZyB9LnN1YnN0cmlu
ZygwLCBtX3F1ZXJ5RW5kKSwgJyMnLCBpZGVudGlmaWVyKSB9LnJlc3VsdCgpOworICAgIGVsc2UK
KyAgICAgICAgcGFyc2UobV9zdHJpbmcubGVmdChtX3F1ZXJ5RW5kKSArICIjIiArIGlkZW50aWZp
ZXIpOwogfQogCiB2b2lkIFVSTDo6cmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1VSTC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vVVJMLmgKaW5kZXggNWFiZjA1ZmU3YzYzNzRmZDU1MmE4MDFkYzc4ZGEyZGI2YTZjY2VmZS4u
YjJjMjNkZTQxMTc4NDAwMDIwNDMzZDNiMzRiZDY3YzE2YTU0NWRkMiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vVVJMLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
VVJMLmgKQEAgLTE1OCw3ICsxNTgsNyBAQCBwdWJsaWM6CiAgICAgLy8gVVJMICh3aXRoIG5vdGhp
bmcgYWZ0ZXIgaXQpLiBUbyBjbGVhciB0aGUgcXVlcnksIHBhc3MgYSBudWxsIHN0cmluZy4KICAg
ICB2b2lkIHNldFF1ZXJ5KGNvbnN0IFN0cmluZyYpOwogCi0gICAgdm9pZCBzZXRGcmFnbWVudElk
ZW50aWZpZXIoY29uc3QgU3RyaW5nJik7CisgICAgdm9pZCBzZXRGcmFnbWVudElkZW50aWZpZXIo
U3RyaW5nVmlldyk7CiAgICAgdm9pZCByZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKIAogICAg
IFdFQkNPUkVfRVhQT1JUIGZyaWVuZCBib29sIGVxdWFsSWdub3JpbmdGcmFnbWVudElkZW50aWZp
ZXIoY29uc3QgVVJMJiwgY29uc3QgVVJMJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9y
ZXBsYXkvUmVwbGF5SW5wdXREaXNwYXRjaE1ldGhvZHMuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVw
bGF5L1JlcGxheUlucHV0RGlzcGF0Y2hNZXRob2RzLmNwcAppbmRleCA4NDc1MmEyMzJmZWE2ZTM5
ZWM1NzYxNDJmZTM1NzBjMWJjM2QyNDE2Li43ZjNjMzAwM2MxNTJhZWMwODJmYTk3ZjYwMjZmNzg2
ZmE5MmNmNGI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZXBsYXkvUmVwbGF5SW5wdXRE
aXNwYXRjaE1ldGhvZHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlcGxheS9SZXBsYXlJbnB1
dERpc3BhdGNoTWV0aG9kcy5jcHAKQEAgLTUwLDggKzUwLDkgQEAgdm9pZCBFbmRTZWdtZW50U2Vu
dGluZWw6OmRpc3BhdGNoKFJlcGxheUNvbnRyb2xsZXImKQogLy8gTmF2aWdhdGlvbiBpbnB1dHMu
CiB2b2lkIEluaXRpYWxOYXZpZ2F0aW9uOjpkaXNwYXRjaChSZXBsYXlDb250cm9sbGVyJiBjb250
cm9sbGVyKQogewotICAgIEZyYW1lJiBmcmFtZSA9IGNvbnRyb2xsZXIucGFnZSgpLm1haW5GcmFt
ZSgpOwotICAgIGZyYW1lLm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hh
bmdlKGZyYW1lLmRvY3VtZW50KCksIG1fc2VjdXJpdHlPcmlnaW4uZ2V0KCksIG1fdXJsLCBtX3Jl
ZmVycmVyKTsKKyAgICBhdXRvJiBmcmFtZSA9IGNvbnRyb2xsZXIucGFnZSgpLm1haW5GcmFtZSgp
OworICAgIEFTU0VSVChmcmFtZS5kb2N1bWVudCgpKTsKKyAgICBmcmFtZS5uYXZpZ2F0aW9uU2No
ZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZSgqZnJhbWUuZG9jdW1lbnQoKSwgbV9zZWN1
cml0eU9yaWdpbi5nZXQoKSwgbV91cmwsIG1fcmVmZXJyZXIpOwogfQogCiB2b2lkIEhhbmRsZUtl
eVByZXNzOjpkaXNwYXRjaChSZXBsYXlDb250cm9sbGVyJiBjb250cm9sbGVyKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZFSW1hZ2VFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3N2Zy9TVkdGRUltYWdlRWxlbWVudC5jcHAKaW5kZXggMGIzMjcxMGI2ZmE5ZDQzM2ZiODJh
YTkxMTZiMjBkNjgxOGQ1YWZiMi4uYzJjZDZmNjViMzBiN2EwYmVmNDQ3OGQ1YWM0NzA5ZWQ5Y2Zk
MjFhMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZFSW1hZ2VFbGVtZW50LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRkVJbWFnZUVsZW1lbnQuY3BwCkBAIC04OCw3
ICs4OCw3IEBAIHZvaWQgU1ZHRkVJbWFnZUVsZW1lbnQ6OnJlcXVlc3RJbWFnZVJlc291cmNlKCkK
ICAgICBvcHRpb25zLmNvbnRlbnRTZWN1cml0eVBvbGljeUltcG9zaXRpb24gPSBpc0luVXNlckFn
ZW50U2hhZG93VHJlZSgpID8gQ29udGVudFNlY3VyaXR5UG9saWN5SW1wb3NpdGlvbjo6U2tpcFBv
bGljeUNoZWNrIDogQ29udGVudFNlY3VyaXR5UG9saWN5SW1wb3NpdGlvbjo6RG9Qb2xpY3lDaGVj
azsKIAogICAgIENhY2hlZFJlc291cmNlUmVxdWVzdCByZXF1ZXN0KFJlc291cmNlUmVxdWVzdChk
b2N1bWVudCgpLmNvbXBsZXRlVVJMKGhyZWYoKSkpLCBvcHRpb25zKTsKLSAgICByZXF1ZXN0LnNl
dEluaXRpYXRvcih0aGlzKTsKKyAgICByZXF1ZXN0LnNldEluaXRpYXRvcigqdGhpcyk7CiAgICAg
bV9jYWNoZWRJbWFnZSA9IGRvY3VtZW50KCkuY2FjaGVkUmVzb3VyY2VMb2FkZXIoKS5yZXF1ZXN0
SW1hZ2UoV1RGTW92ZShyZXF1ZXN0KSk7CiAKICAgICBpZiAobV9jYWNoZWRJbWFnZSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGb250RmFjZVVyaUVsZW1lbnQuY3BwIGIvU291
cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvbnRGYWNlVXJpRWxlbWVudC5jcHAKaW5kZXggMzU2NmFjNDY1
MzI5ZjdmYTFjZDQ0NmVmMTdhMzY1ZDc1ZWY2ZjI0My4uNTZkNWU2M2MzYzE1YWFmNmY1ZjZlOWI2
OTk0YTkwZTZmZDYyMjM0NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvbnRG
YWNlVXJpRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvbnRGYWNlVXJp
RWxlbWVudC5jcHAKQEAgLTEwNSw3ICsxMDUsNyBAQCB2b2lkIFNWR0ZvbnRGYWNlVXJpRWxlbWVu
dDo6bG9hZEZvbnQoKQogCiAgICAgICAgIENhY2hlZFJlc291cmNlTG9hZGVyJiBjYWNoZWRSZXNv
dXJjZUxvYWRlciA9IGRvY3VtZW50KCkuY2FjaGVkUmVzb3VyY2VMb2FkZXIoKTsKICAgICAgICAg
Q2FjaGVkUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QoUmVzb3VyY2VSZXF1ZXN0KGRvY3VtZW50KCku
Y29tcGxldGVVUkwoaHJlZikpLCBvcHRpb25zKTsKLSAgICAgICAgcmVxdWVzdC5zZXRJbml0aWF0
b3IodGhpcyk7CisgICAgICAgIHJlcXVlc3Quc2V0SW5pdGlhdG9yKCp0aGlzKTsKICAgICAgICAg
bV9jYWNoZWRGb250ID0gY2FjaGVkUmVzb3VyY2VMb2FkZXIucmVxdWVzdEZvbnQoV1RGTW92ZShy
ZXF1ZXN0KSwgaXNTVkdGb250VGFyZ2V0KCp0aGlzKSk7CiAgICAgICAgIGlmIChtX2NhY2hlZEZv
bnQpIHsKICAgICAgICAgICAgIG1fY2FjaGVkRm9udC0+YWRkQ2xpZW50KCp0aGlzKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdVc2VFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3N2Zy9TVkdVc2VFbGVtZW50LmNwcAppbmRleCA4ZjUwMDk5MmY1NWViMjY1NjFhNThmYmMx
NTliNjIzMTI3YjE1ODY3Li5lNmI0ZWY2OTczZjM2MmFiOGRmZjU2ZTkzMDkxZGI5ZGZkOGYyMTky
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVXNlRWxlbWVudC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvc3ZnL1NWR1VzZUVsZW1lbnQuY3BwCkBAIC01NzIsNyArNTcyLDcgQEAg
dm9pZCBTVkdVc2VFbGVtZW50Ojp1cGRhdGVFeHRlcm5hbERvY3VtZW50KCkKICAgICAgICAgb3B0
aW9ucy5jb250ZW50U2VjdXJpdHlQb2xpY3lJbXBvc2l0aW9uID0gaXNJblVzZXJBZ2VudFNoYWRv
d1RyZWUoKSA/IENvbnRlbnRTZWN1cml0eVBvbGljeUltcG9zaXRpb246OlNraXBQb2xpY3lDaGVj
ayA6IENvbnRlbnRTZWN1cml0eVBvbGljeUltcG9zaXRpb246OkRvUG9saWN5Q2hlY2s7CiAgICAg
ICAgIG9wdGlvbnMubW9kZSA9IEZldGNoT3B0aW9uczo6TW9kZTo6U2FtZU9yaWdpbjsKICAgICAg
ICAgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QgeyBSZXNvdXJjZVJlcXVlc3QgeyBleHRl
cm5hbERvY3VtZW50VVJMIH0sIG9wdGlvbnMgfTsKLSAgICAgICAgcmVxdWVzdC5zZXRJbml0aWF0
b3IodGhpcyk7CisgICAgICAgIHJlcXVlc3Quc2V0SW5pdGlhdG9yKCp0aGlzKTsKICAgICAgICAg
bV9leHRlcm5hbERvY3VtZW50ID0gZG9jdW1lbnQoKS5jYWNoZWRSZXNvdXJjZUxvYWRlcigpLnJl
cXVlc3RTVkdEb2N1bWVudChXVEZNb3ZlKHJlcXVlc3QpKTsKICAgICAgICAgaWYgKG1fZXh0ZXJu
YWxEb2N1bWVudCkKICAgICAgICAgICAgIG1fZXh0ZXJuYWxEb2N1bWVudC0+YWRkQ2xpZW50KCp0
aGlzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvaW9zL1dlYkNvcmVTdXBwb3J0L1dlYkNo
cm9tZUNsaWVudElPUy5oIGIvU291cmNlL1dlYktpdC9pb3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hy
b21lQ2xpZW50SU9TLmgKaW5kZXggNjNmNDMwNGEwMzYyZTUzMzUxYzk2ZDBkN2VkMDdkOTFiMGEw
NmY5NC4uNmNkNzAzZDg3M2JkODY1OTgwMDNlMzEzZTJlNGQ4MmRkYjg2MDc4MSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9pb3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50SU9TLmgK
KysrIGIvU291cmNlL1dlYktpdC9pb3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50SU9T
LmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA4LCAyMDA5IEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOC0yMDE3IEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucwpAQCAtMjQsNzMgKzI0LDc3IEBACiAgKi8KIAogI2lmIFBMQVRGT1JNKElPUykKKwogI2lt
cG9ydCAiV2ViQ2hyb21lQ2xpZW50LmgiCiAKLWNsYXNzIFdlYkNocm9tZUNsaWVudElPUyA6IHB1
YmxpYyBXZWJDaHJvbWVDbGllbnQgeworY2xhc3MgV2ViQ2hyb21lQ2xpZW50SU9TIGZpbmFsIDog
cHVibGljIFdlYkNocm9tZUNsaWVudCB7CiBwdWJsaWM6Ci0gICAgV2ViQ2hyb21lQ2xpZW50SU9T
KFdlYlZpZXcgKndlYlZpZXcpCisgICAgV2ViQ2hyb21lQ2xpZW50SU9TKFdlYlZpZXcqIHdlYlZp
ZXcpCiAgICAgICAgIDogV2ViQ2hyb21lQ2xpZW50KHdlYlZpZXcpCi0gICAgICAgICwgbV9mb3Jt
Tm90aWZpY2F0aW9uU3VwcHJlc3Npb25zKDApIHsgfQotICAgIAotICAgIHZvaWQgc2V0V2luZG93
UmVjdChjb25zdCBXZWJDb3JlOjpGbG9hdFJlY3QmKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpG
bG9hdFJlY3Qgd2luZG93UmVjdCgpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0U3RhdHVzYmFyVGV4
dChjb25zdCBXVEY6OlN0cmluZyYpIG92ZXJyaWRlIHsgfQorICAgIHsKKyAgICB9CisKK3ByaXZh
dGU6CisgICAgdm9pZCBzZXRXaW5kb3dSZWN0KGNvbnN0IFdlYkNvcmU6OkZsb2F0UmVjdCYpIGZp
bmFsOworICAgIFdlYkNvcmU6OkZsb2F0UmVjdCB3aW5kb3dSZWN0KCkgZmluYWw7CisgICAgdm9p
ZCBzZXRTdGF0dXNiYXJUZXh0KGNvbnN0IFdURjo6U3RyaW5nJikgZmluYWwgeyB9CiAKLSAgICB2
b2lkIGZvY3VzKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCB0YWtlRm9jdXMoV2ViQ29yZTo6Rm9jdXNE
aXJlY3Rpb24pIG92ZXJyaWRlIHsgfQorICAgIHZvaWQgZm9jdXMoKSBmaW5hbDsKKyAgICB2b2lk
IHRha2VGb2N1cyhXZWJDb3JlOjpGb2N1c0RpcmVjdGlvbikgZmluYWwgeyB9CiAKLSAgICB2b2lk
IHJ1bkphdmFTY3JpcHRBbGVydChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdURjo6U3RyaW5nJikg
b3ZlcnJpZGU7Ci0gICAgYm9vbCBydW5KYXZhU2NyaXB0Q29uZmlybShXZWJDb3JlOjpGcmFtZSos
IGNvbnN0IFdURjo6U3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBydW5KYXZhU2NyaXB0UHJv
bXB0KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV1RGOjpTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFdU
Rjo6U3RyaW5nJiBkZWZhdWx0VmFsdWUsIFdURjo6U3RyaW5nJiByZXN1bHQpIG92ZXJyaWRlOwor
ICAgIHZvaWQgcnVuSmF2YVNjcmlwdEFsZXJ0KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV1RGOjpT
dHJpbmcmKSBmaW5hbDsKKyAgICBib29sIHJ1bkphdmFTY3JpcHRDb25maXJtKFdlYkNvcmU6OkZy
YW1lKiwgY29uc3QgV1RGOjpTdHJpbmcmKSBmaW5hbDsKKyAgICBib29sIHJ1bkphdmFTY3JpcHRQ
cm9tcHQoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXVEY6OlN0cmluZyYgbWVzc2FnZSwgY29uc3Qg
V1RGOjpTdHJpbmcmIGRlZmF1bHRWYWx1ZSwgV1RGOjpTdHJpbmcmIHJlc3VsdCkgZmluYWw7CiAK
LSAgICB2b2lkIHJ1bk9wZW5QYW5lbChXZWJDb3JlOjpGcmFtZSosIFBhc3NSZWZQdHI8V2ViQ29y
ZTo6RmlsZUNob29zZXI+KSBvdmVycmlkZTsKKyAgICB2b2lkIHJ1bk9wZW5QYW5lbChXZWJDb3Jl
OjpGcmFtZSYsIFdlYkNvcmU6OkZpbGVDaG9vc2VyJikgZmluYWw7CiAKICNpZiBFTkFCTEUoVE9V
Q0hfRVZFTlRTKQotICAgIHZvaWQgZGlkUHJldmVudERlZmF1bHRGb3JFdmVudCgpIG92ZXJyaWRl
OworICAgIHZvaWQgZGlkUHJldmVudERlZmF1bHRGb3JFdmVudCgpIGZpbmFsOwogI2VuZGlmCi0g
ICAgdm9pZCBkaWRSZWNlaXZlTW9iaWxlRG9jVHlwZShib29sKSBvdmVycmlkZTsKLSAgICB2b2lk
IHNldE5lZWRzU2Nyb2xsTm90aWZpY2F0aW9ucyhXZWJDb3JlOjpGcmFtZSosIGJvb2wpIG92ZXJy
aWRlOwotICAgIHZvaWQgb2JzZXJ2ZWRDb250ZW50Q2hhbmdlKFdlYkNvcmU6OkZyYW1lKikgb3Zl
cnJpZGU7Ci0gICAgdm9pZCBjbGVhckNvbnRlbnRDaGFuZ2VPYnNlcnZlcnMoV2ViQ29yZTo6RnJh
bWUqKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpGbG9hdFNpemUgc2NyZWVuU2l6ZSgpIGNvbnN0
IG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OkZsb2F0U2l6ZSBhdmFpbGFibGVTY3JlZW5TaXplKCkg
Y29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFZpZXdwb3J0UHJvcGVydGllc0RpZENo
YW5nZShjb25zdCBXZWJDb3JlOjpWaWV3cG9ydEFyZ3VtZW50cyYpIGNvbnN0IG92ZXJyaWRlOwot
ICAgIHZvaWQgbm90aWZ5UmV2ZWFsZWRTZWxlY3Rpb25CeVNjcm9sbGluZ0ZyYW1lKFdlYkNvcmU6
OkZyYW1lKikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBpc1N0b3BwaW5nKCkgb3ZlcnJpZGU7Ci0gICAg
dm9pZCBkaWRMYXlvdXQoTGF5b3V0VHlwZSkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRTdGFydE92
ZXJmbG93U2Nyb2xsKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRFbmRPdmVyZmxvd1Njcm9sbCgp
IG92ZXJyaWRlOwotCi0gICAgdm9pZCBzdXBwcmVzc0Zvcm1Ob3RpZmljYXRpb25zKCkgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCByZXN0b3JlRm9ybU5vdGlmaWNhdGlvbnMoKSBvdmVycmlkZTsKKworICAg
IHZvaWQgZGlkUmVjZWl2ZU1vYmlsZURvY1R5cGUoYm9vbCkgZmluYWw7CisgICAgdm9pZCBzZXRO
ZWVkc1Njcm9sbE5vdGlmaWNhdGlvbnMoV2ViQ29yZTo6RnJhbWUqLCBib29sKSBmaW5hbDsKKyAg
ICB2b2lkIG9ic2VydmVkQ29udGVudENoYW5nZShXZWJDb3JlOjpGcmFtZSopIGZpbmFsOworICAg
IHZvaWQgY2xlYXJDb250ZW50Q2hhbmdlT2JzZXJ2ZXJzKFdlYkNvcmU6OkZyYW1lKikgZmluYWw7
CisgICAgV2ViQ29yZTo6RmxvYXRTaXplIHNjcmVlblNpemUoKSBjb25zdCBmaW5hbDsKKyAgICBX
ZWJDb3JlOjpGbG9hdFNpemUgYXZhaWxhYmxlU2NyZWVuU2l6ZSgpIGNvbnN0IGZpbmFsOworICAg
IHZvaWQgZGlzcGF0Y2hWaWV3cG9ydFByb3BlcnRpZXNEaWRDaGFuZ2UoY29uc3QgV2ViQ29yZTo6
Vmlld3BvcnRBcmd1bWVudHMmKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIG5vdGlmeVJldmVhbGVk
U2VsZWN0aW9uQnlTY3JvbGxpbmdGcmFtZShXZWJDb3JlOjpGcmFtZSopIGZpbmFsOworICAgIGJv
b2wgaXNTdG9wcGluZygpIGZpbmFsOworICAgIHZvaWQgZGlkTGF5b3V0KExheW91dFR5cGUpIGZp
bmFsOworICAgIHZvaWQgZGlkU3RhcnRPdmVyZmxvd1Njcm9sbCgpIGZpbmFsOworICAgIHZvaWQg
ZGlkRW5kT3ZlcmZsb3dTY3JvbGwoKSBmaW5hbDsKKworICAgIHZvaWQgc3VwcHJlc3NGb3JtTm90
aWZpY2F0aW9ucygpIGZpbmFsOworICAgIHZvaWQgcmVzdG9yZUZvcm1Ob3RpZmljYXRpb25zKCkg
ZmluYWw7CiAgICAgCi0gICAgdm9pZCBlbGVtZW50RGlkRm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9k
ZSopIG92ZXJyaWRlOwotICAgIHZvaWQgZWxlbWVudERpZEJsdXIoY29uc3QgV2ViQ29yZTo6Tm9k
ZSopIG92ZXJyaWRlOworICAgIHZvaWQgZWxlbWVudERpZEZvY3VzKGNvbnN0IFdlYkNvcmU6Ok5v
ZGUqKSBmaW5hbDsKKyAgICB2b2lkIGVsZW1lbnREaWRCbHVyKGNvbnN0IFdlYkNvcmU6Ok5vZGUq
KSBmaW5hbDsKIAotICAgIHZvaWQgYXR0YWNoUm9vdEdyYXBoaWNzTGF5ZXIoV2ViQ29yZTo6RnJh
bWUqLCBXZWJDb3JlOjpHcmFwaGljc0xheWVyKikgb3ZlcnJpZGU7CisgICAgdm9pZCBhdHRhY2hS
b290R3JhcGhpY3NMYXllcihXZWJDb3JlOjpGcmFtZSosIFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXIq
KSBmaW5hbDsKIAotICAgIHZvaWQgZGlkRmx1c2hDb21wb3NpdGluZ0xheWVycygpIG92ZXJyaWRl
OworICAgIHZvaWQgZGlkRmx1c2hDb21wb3NpdGluZ0xheWVycygpIGZpbmFsOwogCi0gICAgdm9p
ZCB1cGRhdGVWaWV3cG9ydENvbnN0cmFpbmVkTGF5ZXJzKEhhc2hNYXA8UGxhdGZvcm1MYXllcios
IHN0ZDo6dW5pcXVlX3B0cjxXZWJDb3JlOjpWaWV3cG9ydENvbnN0cmFpbnRzPj4mLCBIYXNoTWFw
PFBsYXRmb3JtTGF5ZXIqLCBQbGF0Zm9ybUxheWVyKj4mKSBvdmVycmlkZTsKKyAgICB2b2lkIHVw
ZGF0ZVZpZXdwb3J0Q29uc3RyYWluZWRMYXllcnMoSGFzaE1hcDxQbGF0Zm9ybUxheWVyKiwgc3Rk
Ojp1bmlxdWVfcHRyPFdlYkNvcmU6OlZpZXdwb3J0Q29uc3RyYWludHM+PiYsIEhhc2hNYXA8UGxh
dGZvcm1MYXllciosIFBsYXRmb3JtTGF5ZXIqPiYpIGZpbmFsOwogCi0gICAgYm9vbCBmZXRjaEN1
c3RvbUZpeGVkUG9zaXRpb25MYXlvdXRSZWN0KFdlYkNvcmU6OkludFJlY3QmKSBvdmVycmlkZTsK
LSAgICB2b2lkIGFkZE9yVXBkYXRlU2Nyb2xsaW5nTGF5ZXIoV2ViQ29yZTo6Tm9kZSosIFBsYXRm
b3JtTGF5ZXIqLCBQbGF0Zm9ybUxheWVyKiwgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIGJvb2wg
YWxsb3dIb3Jpem9udGFsU2Nyb2xsYmFyLCBib29sIGFsbG93VmVydGljYWxTY3JvbGxiYXIpIG92
ZXJyaWRlOwotICAgIHZvaWQgcmVtb3ZlU2Nyb2xsaW5nTGF5ZXIoV2ViQ29yZTo6Tm9kZSosIFBs
YXRmb3JtTGF5ZXIqLCBQbGF0Zm9ybUxheWVyKikgb3ZlcnJpZGU7CisgICAgYm9vbCBmZXRjaEN1
c3RvbUZpeGVkUG9zaXRpb25MYXlvdXRSZWN0KFdlYkNvcmU6OkludFJlY3QmKSBmaW5hbDsKKyAg
ICB2b2lkIGFkZE9yVXBkYXRlU2Nyb2xsaW5nTGF5ZXIoV2ViQ29yZTo6Tm9kZSosIFBsYXRmb3Jt
TGF5ZXIqLCBQbGF0Zm9ybUxheWVyKiwgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIGJvb2wgYWxs
b3dIb3Jpem9udGFsU2Nyb2xsYmFyLCBib29sIGFsbG93VmVydGljYWxTY3JvbGxiYXIpIGZpbmFs
OworICAgIHZvaWQgcmVtb3ZlU2Nyb2xsaW5nTGF5ZXIoV2ViQ29yZTo6Tm9kZSosIFBsYXRmb3Jt
TGF5ZXIqLCBQbGF0Zm9ybUxheWVyKikgZmluYWw7CiAKLSAgICBib29sIHNlbGVjdEl0ZW1Xcml0
aW5nRGlyZWN0aW9uSXNOYXR1cmFsKCkgb3ZlcnJpZGU7Ci0gICAgYm9vbCBzZWxlY3RJdGVtQWxp
Z25tZW50Rm9sbG93c01lbnVXcml0aW5nRGlyZWN0aW9uKCkgb3ZlcnJpZGU7Ci0gICAgUmVmUHRy
PFdlYkNvcmU6OlBvcHVwTWVudT4gY3JlYXRlUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNs
aWVudCopIGNvbnN0IG92ZXJyaWRlOwotICAgIFJlZlB0cjxXZWJDb3JlOjpTZWFyY2hQb3B1cE1l
bnU+IGNyZWF0ZVNlYXJjaFBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1lbnVDbGllbnQqKSBjb25z
dCBvdmVycmlkZTsKKyAgICBib29sIHNlbGVjdEl0ZW1Xcml0aW5nRGlyZWN0aW9uSXNOYXR1cmFs
KCkgZmluYWw7CisgICAgYm9vbCBzZWxlY3RJdGVtQWxpZ25tZW50Rm9sbG93c01lbnVXcml0aW5n
RGlyZWN0aW9uKCkgZmluYWw7CisgICAgUmVmUHRyPFdlYkNvcmU6OlBvcHVwTWVudT4gY3JlYXRl
UG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCopIGNvbnN0IGZpbmFsOworICAgIFJl
ZlB0cjxXZWJDb3JlOjpTZWFyY2hQb3B1cE1lbnU+IGNyZWF0ZVNlYXJjaFBvcHVwTWVudShXZWJD
b3JlOjpQb3B1cE1lbnVDbGllbnQqKSBjb25zdCBmaW5hbDsKIAotICAgIHZvaWQgd2ViQXBwT3Jp
ZW50YXRpb25zVXBkYXRlZCgpIG92ZXJyaWRlOwotICAgIHZvaWQgZm9jdXNlZEVsZW1lbnRDaGFu
Z2VkKFdlYkNvcmU6OkVsZW1lbnQqKSBvdmVycmlkZTsKLSAgICB2b2lkIHNob3dQbGF5YmFja1Rh
cmdldFBpY2tlcihib29sIGhhc1ZpZGVvKSBvdmVycmlkZTsKKyAgICB2b2lkIHdlYkFwcE9yaWVu
dGF0aW9uc1VwZGF0ZWQoKSBmaW5hbDsKKyAgICB2b2lkIGZvY3VzZWRFbGVtZW50Q2hhbmdlZChX
ZWJDb3JlOjpFbGVtZW50KikgZmluYWw7CisgICAgdm9pZCBzaG93UGxheWJhY2tUYXJnZXRQaWNr
ZXIoYm9vbCBoYXNWaWRlbykgZmluYWw7CiAKICNpZiBFTkFCTEUoT1JJRU5UQVRJT05fRVZFTlRT
KQotICAgIGludCBkZXZpY2VPcmllbnRhdGlvbigpIGNvbnN0IG92ZXJyaWRlOworICAgIGludCBk
ZXZpY2VPcmllbnRhdGlvbigpIGNvbnN0IGZpbmFsOwogI2VuZGlmCiAKLXByaXZhdGU6Ci0gICAg
aW50IG1fZm9ybU5vdGlmaWNhdGlvblN1cHByZXNzaW9uczsKKyAgICBpbnQgbV9mb3JtTm90aWZp
Y2F0aW9uU3VwcHJlc3Npb25zIHsgMCB9OwogfTsKKwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L2lvcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnRJT1MubW0gYi9Tb3Vy
Y2UvV2ViS2l0L2lvcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnRJT1MubW0KaW5kZXgg
MTFmODRlYjlmOTNkN2RmMWM4MmViODQyNTI0NGE2YWMxZDgyYzBlYy4uNTNlOGYwZWJiZTUyODQz
MmEwZjllNGJlNGNmY2Q0MjNmZDczZTAzOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9pb3Mv
V2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50SU9TLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQv
aW9zL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudElPUy5tbQpAQCAtMSw1ICsxLDUgQEAK
IC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDgsIDIwMDkgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yMyw5ICsyMywx
MCBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZiBQTEFU
Rk9STShJT1MpCiAjaW1wb3J0ICJXZWJDaHJvbWVDbGllbnRJT1MuaCIKIAorI2lmIFBMQVRGT1JN
KElPUykKKwogI2ltcG9ydCAiRE9NTm9kZUludGVybmFsLmgiCiAjaW1wb3J0ICJQb3B1cE1lbnVJ
T1MuaCIKICNpbXBvcnQgIlNlYXJjaFBvcHVwTWVudUlPUy5oIgpAQCAtNDMsOSArNDQsNiBAQAog
I2ltcG9ydCAiV2ViVmlldy5oIgogI2ltcG9ydCAiV2ViVmlld0ludGVybmFsLmgiCiAjaW1wb3J0
ICJXZWJWaWV3UHJpdmF0ZS5oIgotCi0jaW1wb3J0IDx3dGYvSGFzaE1hcC5oPgotI2ltcG9ydCA8
d3RmL1JlZlB0ci5oPgogI2ltcG9ydCA8V2ViQ29yZS9GaWxlQ2hvb3Nlci5oPgogI2ltcG9ydCA8
V2ViQ29yZS9GbG9hdFJlY3QuaD4KICNpbXBvcnQgPFdlYkNvcmUvRnJhbWUuaD4KQEAgLTYxLDYg
KzU5LDggQEAKICNpbXBvcnQgPFdlYkNvcmUvU2Nyb2xsaW5nQ29uc3RyYWludHMuaD4KICNpbXBv
cnQgPFdlYkNvcmUvV0FLV2luZG93Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVUaHJlYWRN
ZXNzYWdlLmg+CisjaW1wb3J0IDx3dGYvSGFzaE1hcC5oPgorI2ltcG9ydCA8d3RmL1JlZlB0ci5o
PgogCiBOU1N0cmluZyAqIGNvbnN0IFdlYk9wZW5QYW5lbENvbmZpZ3VyYXRpb25BbGxvd011bHRp
cGxlRmlsZXNLZXkgPSBAIldlYk9wZW5QYW5lbENvbmZpZ3VyYXRpb25BbGxvd011bHRpcGxlRmls
ZXNLZXkiOwogTlNTdHJpbmcgKiBjb25zdCBXZWJPcGVuUGFuZWxDb25maWd1cmF0aW9uTWVkaWFD
YXB0dXJlVHlwZUtleSA9IEAiV2ViT3BlblBhbmVsQ29uZmlndXJhdGlvbk1lZGlhQ2FwdHVyZVR5
cGVLZXkiOwpAQCAtNjksOSArNjksMTAgQEAgTlNTdHJpbmcgKiBjb25zdCBXZWJPcGVuUGFuZWxD
b25maWd1cmF0aW9uTWltZVR5cGVzS2V5ID0gQCJXZWJPcGVuUGFuZWxDb25maWd1cmEKIHVzaW5n
IG5hbWVzcGFjZSBXZWJDb3JlOwogCiAjaWYgRU5BQkxFKE1FRElBX0NBUFRVUkUpCi1zdGF0aWMg
V2ViTWVkaWFDYXB0dXJlVHlwZSB3ZWJNZWRpYUNhcHR1cmVUeXBlKE1lZGlhQ2FwdHVyZVR5cGUg
bWVkaWFDYXB0dXJlVHlwZSkKKworc3RhdGljIFdlYk1lZGlhQ2FwdHVyZVR5cGUgd2ViTWVkaWFD
YXB0dXJlVHlwZShNZWRpYUNhcHR1cmVUeXBlIHR5cGUpCiB7Ci0gICAgc3dpdGNoIChtZWRpYUNh
cHR1cmVUeXBlKSB7CisgICAgc3dpdGNoICh0eXBlKSB7CiAgICAgY2FzZSBNZWRpYUNhcHR1cmVU
eXBlTm9uZToKICAgICAgICAgcmV0dXJuIFdlYk1lZGlhQ2FwdHVyZVR5cGVOb25lOwogICAgIGNh
c2UgTWVkaWFDYXB0dXJlVHlwZVVzZXI6CkBAIC04Myw2ICs4NCw3IEBAIHN0YXRpYyBXZWJNZWRp
YUNhcHR1cmVUeXBlIHdlYk1lZGlhQ2FwdHVyZVR5cGUoTWVkaWFDYXB0dXJlVHlwZSBtZWRpYUNh
cHR1cmVUeXBlCiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgcmV0dXJuIFdlYk1lZGlh
Q2FwdHVyZVR5cGVOb25lOwogfQorCiAjZW5kaWYKIAogdm9pZCBXZWJDaHJvbWVDbGllbnRJT1M6
OnNldFdpbmRvd1JlY3QoY29uc3QgV2ViQ29yZTo6RmxvYXRSZWN0JiByKQpAQCAtMTI0LDE4ICsx
MjYsMTUgQEAgYm9vbCBXZWJDaHJvbWVDbGllbnRJT1M6OnJ1bkphdmFTY3JpcHRQcm9tcHQoRnJh
bWUqIGZyYW1lLCBjb25zdCBXVEY6OlN0cmluZyYgcHIKICAgICByZXR1cm4gIXJlc3VsdC5pc051
bGwoKTsKIH0KIAotdm9pZCBXZWJDaHJvbWVDbGllbnRJT1M6OnJ1bk9wZW5QYW5lbChGcmFtZSos
IFBhc3NSZWZQdHI8RmlsZUNob29zZXI+IGNob29zZXIpCit2b2lkIFdlYkNocm9tZUNsaWVudElP
Uzo6cnVuT3BlblBhbmVsKEZyYW1lJiwgRmlsZUNob29zZXImIGNob29zZXIpCiB7Ci0gICAgY29u
c3QgRmlsZUNob29zZXJTZXR0aW5ncyYgc2V0dGluZ3MgPSBjaG9vc2VyLT5zZXR0aW5ncygpOwor
ICAgIGF1dG8mIHNldHRpbmdzID0gY2hvb3Nlci5zZXR0aW5ncygpOwogICAgIEJPT0wgYWxsb3dN
dWx0aXBsZUZpbGVzID0gc2V0dGluZ3MuYWxsb3dzTXVsdGlwbGVGaWxlczsKLSAgICBWZWN0b3I8
U3RyaW5nPiBhY2NlcHRNSU1FVHlwZXMgPSBzZXR0aW5ncy5hY2NlcHRNSU1FVHlwZXM7CiAgICAg
V2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIgKmxpc3RlbmVyID0gW1tXZWJPcGVuUGFuZWxSZXN1
bHRMaXN0ZW5lciBhbGxvY10gaW5pdFdpdGhDaG9vc2VyOmNob29zZXJdOwogCi0gICAgLy8gQ29u
dmVydCB0aGUgYWNjZXB0IGF0dHJpYnV0ZSBzdHJpbmcgaW50byBhIGxpc3Qgb2YgTUlNRSB0eXBl
cy4KLSAgICBzaXplX3QgbnVtTUlNRVR5cGVzID0gYWNjZXB0TUlNRVR5cGVzLnNpemUoKTsKLSAg
ICBOU011dGFibGVBcnJheSAqbWltZVR5cGVzID0gW05TTXV0YWJsZUFycmF5IGFycmF5V2l0aENh
cGFjaXR5Om51bU1JTUVUeXBlc107Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBudW1NSU1F
VHlwZXM7ICsraSkKLSAgICAgICAgW21pbWVUeXBlcyBhZGRPYmplY3Q6YWNjZXB0TUlNRVR5cGVz
W2ldXTsKKyAgICBOU011dGFibGVBcnJheSAqbWltZVR5cGVzID0gW05TTXV0YWJsZUFycmF5IGFy
cmF5V2l0aENhcGFjaXR5OnNldHRpbmdzLmFjY2VwdE1JTUVUeXBlcy5zaXplKCldOworICAgIGZv
ciAoYXV0byYgdHlwZSA6IHNldHRpbmdzLmFjY2VwdE1JTUVUeXBlcykKKyAgICAgICAgW21pbWVU
eXBlcyBhZGRPYmplY3Q6dHlwZV07CiAKICAgICBXZWJNZWRpYUNhcHR1cmVUeXBlIGNhcHR1cmVU
eXBlID0gV2ViTWVkaWFDYXB0dXJlVHlwZU5vbmU7CiAjaWYgRU5BQkxFKE1FRElBX0NBUFRVUkUp
CkBAIC0xNTgsMTAgKzE1NywxMiBAQCB2b2lkIFdlYkNocm9tZUNsaWVudElPUzo6cnVuT3BlblBh
bmVsKEZyYW1lKiwgUGFzc1JlZlB0cjxGaWxlQ2hvb3Nlcj4gY2hvb3NlcikKIH0KIAogI2lmIEVO
QUJMRShJT1NfVE9VQ0hfRVZFTlRTKQorCiB2b2lkIFdlYkNocm9tZUNsaWVudElPUzo6ZGlkUHJl
dmVudERlZmF1bHRGb3JFdmVudCgpCiB7CiAgICAgW1t3ZWJWaWV3KCkgX1VJS2l0RGVsZWdhdGVG
b3J3YXJkZXJdIHdlYlZpZXdEaWRQcmV2ZW50RGVmYXVsdEZvckV2ZW50OndlYlZpZXcoKV07CiB9
CisKICNlbmRpZgogCiB2b2lkIFdlYkNocm9tZUNsaWVudElPUzo6ZGlkUmVjZWl2ZU1vYmlsZURv
Y1R5cGUoYm9vbCBpc01vYmlsZURvY3R5cGUpCkBAIC0zNTUsMTAgKzM1NiwxMiBAQCB2b2lkIFdl
YkNocm9tZUNsaWVudElPUzo6c2hvd1BsYXliYWNrVGFyZ2V0UGlja2VyKGJvb2wgaGFzVmlkZW8p
CiB9CiAKICNpZiBFTkFCTEUoT1JJRU5UQVRJT05fRVZFTlRTKQorCiBpbnQgV2ViQ2hyb21lQ2xp
ZW50SU9TOjpkZXZpY2VPcmllbnRhdGlvbigpIGNvbnN0CiB7CiAgICAgcmV0dXJuIFtbd2ViVmll
dygpIF9VSUtpdERlbGVnYXRlRm9yd2FyZGVyXSBkZXZpY2VPcmllbnRhdGlvbl07CiB9CisKICNl
bmRpZgogCiAjZW5kaWYgLy8gUExBVEZPUk0oSU9TKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0L21h
Yy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaAppbmRleCA0OGFiZTMwOGE4ZmVmNzVh
Zjg2ODZlMWU1M2E4M2M4NzIxZjgyN2Y5Li5mNGYwOTZjNWQ2NDczZWJjNmU3YWJkNTgzYjZkZmVm
NGFhYTRkMTU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9X
ZWJDaHJvbWVDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9X
ZWJDaHJvbWVDbGllbnQuaApAQCAtMzMsMTMwICszMywxMzggQEAKIAogQGNsYXNzIFdlYlZpZXc7
CiAKKy8vIEZJWE1FOiBUaGlzIGNsYXNzIGlzIHVzZWQgYXMgYSBjb25jcmV0ZSBjbGFzcyBvbiBN
YWMsIGJ1dCBvbiBpT1MgdGhpcyBpcyBhbiBhYnN0cmFjdAorLy8gYmFzZSBjbGFzcyBvZiB0aGUg
Y29uY3JldGUgY2xhc3MsIFdlYkNocm9tZUNsaWVudElPUy4gQmVjYXVzZSBvZiB0aGF0LCB0aGlz
IGNsYXNzIGFuZAorLy8gbWFueSBvZiBpdHMgZnVuY3Rpb25zIGFyZSBub3QgbWFya2VkIGZpbmFs
LiBUaGF0IGlzIG1lc3N5IHdheSB0byBvcmdhbml6ZSB0aGluZ3MuCiBjbGFzcyBXZWJDaHJvbWVD
bGllbnQgOiBwdWJsaWMgV2ViQ29yZTo6Q2hyb21lQ2xpZW50IHsKIHB1YmxpYzoKICAgICBXZWJD
aHJvbWVDbGllbnQoV2ViVmlldyopOwotICAgIAotICAgIHZvaWQgY2hyb21lRGVzdHJveWVkKCkg
b3ZlcnJpZGU7Ci0gICAgCisKKyAgICBXZWJWaWV3KiB3ZWJWaWV3KCkgY29uc3QgeyByZXR1cm4g
bV93ZWJWaWV3OyB9CisKK3ByaXZhdGU6CisgICAgdm9pZCBjaHJvbWVEZXN0cm95ZWQoKSBmaW5h
bDsKKwogICAgIHZvaWQgc2V0V2luZG93UmVjdChjb25zdCBXZWJDb3JlOjpGbG9hdFJlY3QmKSBv
dmVycmlkZTsKICAgICBXZWJDb3JlOjpGbG9hdFJlY3Qgd2luZG93UmVjdCgpIG92ZXJyaWRlOwog
Ci0gICAgV2ViQ29yZTo6RmxvYXRSZWN0IHBhZ2VSZWN0KCkgb3ZlcnJpZGU7CisgICAgV2ViQ29y
ZTo6RmxvYXRSZWN0IHBhZ2VSZWN0KCkgZmluYWw7CiAKICAgICB2b2lkIGZvY3VzKCkgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCB1bmZvY3VzKCkgb3ZlcnJpZGU7Ci0gICAgCi0gICAgYm9vbCBjYW5UYWtl
Rm9jdXMoV2ViQ29yZTo6Rm9jdXNEaXJlY3Rpb24pIG92ZXJyaWRlOworICAgIHZvaWQgdW5mb2N1
cygpIGZpbmFsOworCisgICAgYm9vbCBjYW5UYWtlRm9jdXMoV2ViQ29yZTo6Rm9jdXNEaXJlY3Rp
b24pIGZpbmFsOwogICAgIHZvaWQgdGFrZUZvY3VzKFdlYkNvcmU6OkZvY3VzRGlyZWN0aW9uKSBv
dmVycmlkZTsKIAogICAgIHZvaWQgZm9jdXNlZEVsZW1lbnRDaGFuZ2VkKFdlYkNvcmU6OkVsZW1l
bnQqKSBvdmVycmlkZTsKLSAgICB2b2lkIGZvY3VzZWRGcmFtZUNoYW5nZWQoV2ViQ29yZTo6RnJh
bWUqKSBvdmVycmlkZTsKLQotICAgIFdlYkNvcmU6OlBhZ2UqIGNyZWF0ZVdpbmRvdyhXZWJDb3Jl
OjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6OkZyYW1lTG9hZFJlcXVlc3QmLCBjb25zdCBXZWJDb3Jl
OjpXaW5kb3dGZWF0dXJlcyYsIGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mKSBvdmVy
cmlkZTsKLSAgICB2b2lkIHNob3coKSBvdmVycmlkZTsKLQotICAgIGJvb2wgY2FuUnVuTW9kYWwo
KSBvdmVycmlkZTsKLSAgICB2b2lkIHJ1bk1vZGFsKCkgb3ZlcnJpZGU7Ci0KLSAgICB2b2lkIHNl
dFRvb2xiYXJzVmlzaWJsZShib29sKSBvdmVycmlkZTsKLSAgICBib29sIHRvb2xiYXJzVmlzaWJs
ZSgpIG92ZXJyaWRlOwotICAgIAotICAgIHZvaWQgc2V0U3RhdHVzYmFyVmlzaWJsZShib29sKSBv
dmVycmlkZTsKLSAgICBib29sIHN0YXR1c2JhclZpc2libGUoKSBvdmVycmlkZTsKLSAgICAKLSAg
ICB2b2lkIHNldFNjcm9sbGJhcnNWaXNpYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJvb2wgc2Ny
b2xsYmFyc1Zpc2libGUoKSBvdmVycmlkZTsKLSAgICAKLSAgICB2b2lkIHNldE1lbnViYXJWaXNp
YmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJvb2wgbWVudWJhclZpc2libGUoKSBvdmVycmlkZTsK
LSAgICAKLSAgICB2b2lkIHNldFJlc2l6YWJsZShib29sKSBvdmVycmlkZTsKLSAgICAKLSAgICB2
b2lkIGFkZE1lc3NhZ2VUb0NvbnNvbGUoSlNDOjpNZXNzYWdlU291cmNlLCBKU0M6Ok1lc3NhZ2VM
ZXZlbCwgY29uc3QgV1RGOjpTdHJpbmcmIG1lc3NhZ2UsIHVuc2lnbmVkIGxpbmVOdW1iZXIsIHVu
c2lnbmVkIGNvbHVtbk51bWJlciwgY29uc3QgV1RGOjpTdHJpbmcmIHNvdXJjZVVSTCkgb3ZlcnJp
ZGU7Ci0KLSAgICBib29sIGNhblJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbCgpIG92ZXJyaWRl
OwotICAgIGJvb2wgcnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsKGNvbnN0IFdURjo6U3RyaW5n
JiBtZXNzYWdlLCBXZWJDb3JlOjpGcmFtZSopIG92ZXJyaWRlOwotCi0gICAgdm9pZCBjbG9zZVdp
bmRvd1Nvb24oKSBvdmVycmlkZTsKKyAgICB2b2lkIGZvY3VzZWRGcmFtZUNoYW5nZWQoV2ViQ29y
ZTo6RnJhbWUqKSBmaW5hbDsKKworICAgIFdlYkNvcmU6OlBhZ2UqIGNyZWF0ZVdpbmRvdyhXZWJD
b3JlOjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6OkZyYW1lTG9hZFJlcXVlc3QmLCBjb25zdCBXZWJD
b3JlOjpXaW5kb3dGZWF0dXJlcyYsIGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mKSBm
aW5hbDsKKyAgICB2b2lkIHNob3coKSBmaW5hbDsKKworICAgIGJvb2wgY2FuUnVuTW9kYWwoKSBm
aW5hbDsKKyAgICB2b2lkIHJ1bk1vZGFsKCkgZmluYWw7CisKKyAgICB2b2lkIHNldFRvb2xiYXJz
VmlzaWJsZShib29sKSBmaW5hbDsKKyAgICBib29sIHRvb2xiYXJzVmlzaWJsZSgpIGZpbmFsOwor
CisgICAgdm9pZCBzZXRTdGF0dXNiYXJWaXNpYmxlKGJvb2wpIGZpbmFsOworICAgIGJvb2wgc3Rh
dHVzYmFyVmlzaWJsZSgpIGZpbmFsOworCisgICAgdm9pZCBzZXRTY3JvbGxiYXJzVmlzaWJsZShi
b29sKSBmaW5hbDsKKyAgICBib29sIHNjcm9sbGJhcnNWaXNpYmxlKCkgZmluYWw7CisKKyAgICB2
b2lkIHNldE1lbnViYXJWaXNpYmxlKGJvb2wpIGZpbmFsOworICAgIGJvb2wgbWVudWJhclZpc2li
bGUoKSBmaW5hbDsKKworICAgIHZvaWQgc2V0UmVzaXphYmxlKGJvb2wpIGZpbmFsOworCisgICAg
dm9pZCBhZGRNZXNzYWdlVG9Db25zb2xlKEpTQzo6TWVzc2FnZVNvdXJjZSwgSlNDOjpNZXNzYWdl
TGV2ZWwsIGNvbnN0IFdURjo6U3RyaW5nJiBtZXNzYWdlLCB1bnNpZ25lZCBsaW5lTnVtYmVyLCB1
bnNpZ25lZCBjb2x1bW5OdW1iZXIsIGNvbnN0IFdURjo6U3RyaW5nJiBzb3VyY2VVUkwpIGZpbmFs
OworCisgICAgYm9vbCBjYW5SdW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoKSBmaW5hbDsKKyAg
ICBib29sIHJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbChjb25zdCBXVEY6OlN0cmluZyYgbWVz
c2FnZSwgV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKKworICAgIHZvaWQgY2xvc2VXaW5kb3dTb29u
KCkgZmluYWw7CiAKICAgICB2b2lkIHJ1bkphdmFTY3JpcHRBbGVydChXZWJDb3JlOjpGcmFtZSos
IGNvbnN0IFdURjo6U3RyaW5nJikgb3ZlcnJpZGU7CiAgICAgYm9vbCBydW5KYXZhU2NyaXB0Q29u
ZmlybShXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdURjo6U3RyaW5nJikgb3ZlcnJpZGU7CiAgICAg
Ym9vbCBydW5KYXZhU2NyaXB0UHJvbXB0KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV1RGOjpTdHJp
bmcmIG1lc3NhZ2UsIGNvbnN0IFdURjo6U3RyaW5nJiBkZWZhdWx0VmFsdWUsIFdURjo6U3RyaW5n
JiByZXN1bHQpIG92ZXJyaWRlOwogCi0gICAgYm9vbCBzdXBwb3J0c0ltbWVkaWF0ZUludmFsaWRh
dGlvbigpIG92ZXJyaWRlOwotICAgIHZvaWQgaW52YWxpZGF0ZVJvb3RWaWV3KGNvbnN0IFdlYkNv
cmU6OkludFJlY3QmKSBvdmVycmlkZTsKLSAgICB2b2lkIGludmFsaWRhdGVDb250ZW50c0FuZFJv
b3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBvdmVycmlkZTsKLSAgICB2b2lkIGludmFs
aWRhdGVDb250ZW50c0ZvclNsb3dTY3JvbGwoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIG92ZXJy
aWRlOwotICAgIHZvaWQgc2Nyb2xsKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIHNjcm9sbERlbHRh
LCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiByZWN0VG9TY3JvbGwsIGNvbnN0IFdlYkNvcmU6Oklu
dFJlY3QmIGNsaXBSZWN0KSBvdmVycmlkZTsKKyAgICBib29sIHN1cHBvcnRzSW1tZWRpYXRlSW52
YWxpZGF0aW9uKCkgZmluYWw7CisgICAgdm9pZCBpbnZhbGlkYXRlUm9vdFZpZXcoY29uc3QgV2Vi
Q29yZTo6SW50UmVjdCYpIGZpbmFsOworICAgIHZvaWQgaW52YWxpZGF0ZUNvbnRlbnRzQW5kUm9v
dFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGZpbmFsOworICAgIHZvaWQgaW52YWxpZGF0
ZUNvbnRlbnRzRm9yU2xvd1Njcm9sbChjb25zdCBXZWJDb3JlOjpJbnRSZWN0JikgZmluYWw7Cisg
ICAgdm9pZCBzY3JvbGwoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgc2Nyb2xsRGVsdGEsIGNvbnN0
IFdlYkNvcmU6OkludFJlY3QmIHJlY3RUb1Njcm9sbCwgY29uc3QgV2ViQ29yZTo6SW50UmVjdCYg
Y2xpcFJlY3QpIGZpbmFsOworCisgICAgV2ViQ29yZTo6SW50UG9pbnQgc2NyZWVuVG9Sb290Vmll
dyhjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIGNvbnN0IGZpbmFsOworICAgIFdlYkNvcmU6Oklu
dFJlY3Qgcm9vdFZpZXdUb1NjcmVlbihjb25zdCBXZWJDb3JlOjpJbnRSZWN0JikgY29uc3QgZmlu
YWw7CiAKLSAgICBXZWJDb3JlOjpJbnRQb2ludCBzY3JlZW5Ub1Jvb3RWaWV3KGNvbnN0IFdlYkNv
cmU6OkludFBvaW50JikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6SW50UmVjdCByb290
Vmlld1RvU2NyZWVuKGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBjb25zdCBvdmVycmlkZTsKICNp
ZiBQTEFURk9STShJT1MpCi0gICAgV2ViQ29yZTo6SW50UG9pbnQgYWNjZXNzaWJpbGl0eVNjcmVl
blRvUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKSBjb25zdCBvdmVycmlkZTsKLSAg
ICBXZWJDb3JlOjpJbnRSZWN0IHJvb3RWaWV3VG9BY2Nlc3NpYmlsaXR5U2NyZWVuKGNvbnN0IFdl
YkNvcmU6OkludFJlY3QmKSBjb25zdCBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpJbnRQb2ludCBh
Y2Nlc3NpYmlsaXR5U2NyZWVuVG9Sb290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIGNv
bnN0IGZpbmFsOworICAgIFdlYkNvcmU6OkludFJlY3Qgcm9vdFZpZXdUb0FjY2Vzc2liaWxpdHlT
Y3JlZW4oY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGNvbnN0IGZpbmFsOwogI2VuZGlmCi0gICAg
UGxhdGZvcm1QYWdlQ2xpZW50IHBsYXRmb3JtUGFnZUNsaWVudCgpIGNvbnN0IG92ZXJyaWRlOwot
ICAgIHZvaWQgY29udGVudHNTaXplQ2hhbmdlZChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdlYkNv
cmU6OkludFNpemUmKSBjb25zdCBvdmVycmlkZTsKLSAgICB2b2lkIHNjcm9sbFJlY3RJbnRvVmll
dyhjb25zdCBXZWJDb3JlOjpJbnRSZWN0JikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgCisKKyAgICBQ
bGF0Zm9ybVBhZ2VDbGllbnQgcGxhdGZvcm1QYWdlQ2xpZW50KCkgY29uc3QgZmluYWw7CisgICAg
dm9pZCBjb250ZW50c1NpemVDaGFuZ2VkKFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV2ViQ29yZTo6
SW50U2l6ZSYpIGNvbnN0IGZpbmFsOworICAgIHZvaWQgc2Nyb2xsUmVjdEludG9WaWV3KGNvbnN0
IFdlYkNvcmU6OkludFJlY3QmKSBjb25zdCBmaW5hbDsKKwogICAgIHZvaWQgc2V0U3RhdHVzYmFy
VGV4dChjb25zdCBXVEY6OlN0cmluZyYpIG92ZXJyaWRlOwogCi0gICAgdm9pZCBzY3JvbGxiYXJz
TW9kZURpZENoYW5nZSgpIGNvbnN0IG92ZXJyaWRlIHsgfQotICAgIGJvb2wgc2hvdWxkVW5hdmFp
bGFibGVQbHVnaW5NZXNzYWdlQmVCdXR0b24oV2ViQ29yZTo6UmVuZGVyRW1iZWRkZWRPYmplY3Q6
OlBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKSBjb25zdCBvdmVycmlkZTsKLSAgICB2b2lkIHVu
YXZhaWxhYmxlUGx1Z2luQnV0dG9uQ2xpY2tlZChXZWJDb3JlOjpFbGVtZW50KiwgV2ViQ29yZTo6
UmVuZGVyRW1iZWRkZWRPYmplY3Q6OlBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKSBjb25zdCBv
dmVycmlkZTsKLSAgICB2b2lkIG1vdXNlRGlkTW92ZU92ZXJFbGVtZW50KGNvbnN0IFdlYkNvcmU6
OkhpdFRlc3RSZXN1bHQmLCB1bnNpZ25lZCBtb2RpZmllckZsYWdzKSBvdmVycmlkZTsKKyAgICB2
b2lkIHNjcm9sbGJhcnNNb2RlRGlkQ2hhbmdlKCkgY29uc3QgZmluYWwgeyB9CisgICAgYm9vbCBz
aG91bGRVbmF2YWlsYWJsZVBsdWdpbk1lc3NhZ2VCZUJ1dHRvbihXZWJDb3JlOjpSZW5kZXJFbWJl
ZGRlZE9iamVjdDo6UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24pIGNvbnN0IGZpbmFsOworICAg
IHZvaWQgdW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2VkKFdlYkNvcmU6OkVsZW1lbnQqLCBX
ZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24p
IGNvbnN0IGZpbmFsOworICAgIHZvaWQgbW91c2VEaWRNb3ZlT3ZlckVsZW1lbnQoY29uc3QgV2Vi
Q29yZTo6SGl0VGVzdFJlc3VsdCYsIHVuc2lnbmVkIG1vZGlmaWVyRmxhZ3MpIGZpbmFsOwogCi0g
ICAgdm9pZCBzZXRUb29sVGlwKGNvbnN0IFdURjo6U3RyaW5nJiwgV2ViQ29yZTo6VGV4dERpcmVj
dGlvbikgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRUb29sVGlwKGNvbnN0IFdURjo6U3RyaW5nJiwg
V2ViQ29yZTo6VGV4dERpcmVjdGlvbikgZmluYWw7CiAKLSAgICB2b2lkIHByaW50KFdlYkNvcmU6
OkZyYW1lKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBleGNlZWRlZERhdGFiYXNlUXVvdGEoV2ViQ29y
ZTo6RnJhbWUqLCBjb25zdCBXVEY6OlN0cmluZyYgZGF0YWJhc2VOYW1lLCBXZWJDb3JlOjpEYXRh
YmFzZURldGFpbHMpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVhY2hlZE1heEFwcENhY2hlU2l6ZShp
bnQ2NF90IHNwYWNlTmVlZGVkKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlYWNoZWRBcHBsaWNhdGlv
bkNhY2hlT3JpZ2luUXVvdGEoV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4qLCBpbnQ2NF90IHRvdGFs
U3BhY2VOZWVkZWQpIG92ZXJyaWRlOworICAgIHZvaWQgcHJpbnQoV2ViQ29yZTo6RnJhbWUqKSBm
aW5hbDsKKyAgICB2b2lkIGV4Y2VlZGVkRGF0YWJhc2VRdW90YShXZWJDb3JlOjpGcmFtZSosIGNv
bnN0IFdURjo6U3RyaW5nJiBkYXRhYmFzZU5hbWUsIFdlYkNvcmU6OkRhdGFiYXNlRGV0YWlscykg
ZmluYWw7CisgICAgdm9pZCByZWFjaGVkTWF4QXBwQ2FjaGVTaXplKGludDY0X3Qgc3BhY2VOZWVk
ZWQpIGZpbmFsOworICAgIHZvaWQgcmVhY2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YShX
ZWJDb3JlOjpTZWN1cml0eU9yaWdpbiosIGludDY0X3QgdG90YWxTcGFjZU5lZWRlZCkgZmluYWw7
CiAKICNpZiBFTkFCTEUoREFTSEJPQVJEX1NVUFBPUlQpCi0gICAgdm9pZCBhbm5vdGF0ZWRSZWdp
b25zQ2hhbmdlZCgpIG92ZXJyaWRlOworICAgIHZvaWQgYW5ub3RhdGVkUmVnaW9uc0NoYW5nZWQo
KSBmaW5hbDsKICNlbmRpZgogCi0gICAgdm9pZCBydW5PcGVuUGFuZWwoV2ViQ29yZTo6RnJhbWUq
LCBQYXNzUmVmUHRyPFdlYkNvcmU6OkZpbGVDaG9vc2VyPikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBs
b2FkSWNvbkZvckZpbGVzKGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mLCBXZWJDb3JlOjpGaWxl
SWNvbkxvYWRlciYpIG92ZXJyaWRlOworICAgIHZvaWQgcnVuT3BlblBhbmVsKFdlYkNvcmU6OkZy
YW1lJiwgV2ViQ29yZTo6RmlsZUNob29zZXImKSBvdmVycmlkZTsKKyAgICB2b2lkIGxvYWRJY29u
Rm9yRmlsZXMoY29uc3QgVmVjdG9yPFdURjo6U3RyaW5nPiYsIFdlYkNvcmU6OkZpbGVJY29uTG9h
ZGVyJikgZmluYWw7CiAKICNpZiAhUExBVEZPUk0oSU9TKQotICAgIHZvaWQgc2V0Q3Vyc29yKGNv
bnN0IFdlYkNvcmU6OkN1cnNvciYpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0Q3Vyc29ySGlkZGVu
VW50aWxNb3VzZU1vdmVzKGJvb2wpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0Q3Vyc29yKGNvbnN0
IFdlYkNvcmU6OkN1cnNvciYpIGZpbmFsOworICAgIHZvaWQgc2V0Q3Vyc29ySGlkZGVuVW50aWxN
b3VzZU1vdmVzKGJvb2wpIGZpbmFsOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoSU5QVVRfVFlQRV9D
T0xPUikKLSAgICBzdGQ6OnVuaXF1ZV9wdHI8V2ViQ29yZTo6Q29sb3JDaG9vc2VyPiBjcmVhdGVD
b2xvckNob29zZXIoV2ViQ29yZTo6Q29sb3JDaG9vc2VyQ2xpZW50KiwgY29uc3QgV2ViQ29yZTo6
Q29sb3ImKSBvdmVycmlkZTsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8V2ViQ29yZTo6Q29sb3JDaG9v
c2VyPiBjcmVhdGVDb2xvckNob29zZXIoV2ViQ29yZTo6Q29sb3JDaG9vc2VyQ2xpZW50KiwgY29u
c3QgV2ViQ29yZTo6Q29sb3ImKSBmaW5hbDsKICNlbmRpZgotICAgIAorCiAjaWYgRU5BQkxFKFBP
SU5URVJfTE9DSykKLSAgICBib29sIHJlcXVlc3RQb2ludGVyTG9jaygpIG92ZXJyaWRlOwotICAg
IHZvaWQgcmVxdWVzdFBvaW50ZXJVbmxvY2soKSBvdmVycmlkZTsKKyAgICBib29sIHJlcXVlc3RQ
b2ludGVyTG9jaygpIGZpbmFsOworICAgIHZvaWQgcmVxdWVzdFBvaW50ZXJVbmxvY2soKSBmaW5h
bDsKICNlbmRpZgogCi0gICAgV2ViQ29yZTo6S2V5Ym9hcmRVSU1vZGUga2V5Ym9hcmRVSU1vZGUo
KSBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpLZXlib2FyZFVJTW9kZSBrZXlib2FyZFVJTW9kZSgp
IGZpbmFsOworCisgICAgTlNSZXNwb25kZXIgKmZpcnN0UmVzcG9uZGVyKCkgZmluYWw7CisgICAg
dm9pZCBtYWtlRmlyc3RSZXNwb25kZXIoTlNSZXNwb25kZXIgKikgZmluYWw7CiAKLSAgICBOU1Jl
c3BvbmRlciAqZmlyc3RSZXNwb25kZXIoKSBvdmVycmlkZTsKLSAgICB2b2lkIG1ha2VGaXJzdFJl
c3BvbmRlcihOU1Jlc3BvbmRlciAqKSBvdmVycmlkZTsKKyAgICB2b2lkIGVuYWJsZVN1ZGRlblRl
cm1pbmF0aW9uKCkgZmluYWw7CisgICAgdm9pZCBkaXNhYmxlU3VkZGVuVGVybWluYXRpb24oKSBm
aW5hbDsKIAotICAgIHZvaWQgZW5hYmxlU3VkZGVuVGVybWluYXRpb24oKSBvdmVycmlkZTsKLSAg
ICB2b2lkIGRpc2FibGVTdWRkZW5UZXJtaW5hdGlvbigpIG92ZXJyaWRlOwotICAgIAotICAgIGJv
b2wgc2hvdWxkUmVwbGFjZVdpdGhHZW5lcmF0ZWRGaWxlRm9yVXBsb2FkKGNvbnN0IFdURjo6U3Ry
aW5nJiBwYXRoLCBXVEY6OlN0cmluZyAmZ2VuZXJhdGVkRmlsZW5hbWUpIG92ZXJyaWRlOwotICAg
IFdURjo6U3RyaW5nIGdlbmVyYXRlUmVwbGFjZW1lbnRGaWxlKGNvbnN0IFdURjo6U3RyaW5nJiBw
YXRoKSBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZFJlcGxhY2VXaXRoR2VuZXJhdGVkRmlsZUZv
clVwbG9hZChjb25zdCBXVEY6OlN0cmluZyYgcGF0aCwgV1RGOjpTdHJpbmcgJmdlbmVyYXRlZEZp
bGVuYW1lKSBmaW5hbDsKKyAgICBXVEY6OlN0cmluZyBnZW5lcmF0ZVJlcGxhY2VtZW50RmlsZShj
b25zdCBXVEY6OlN0cmluZyYgcGF0aCkgZmluYWw7CiAKICAgICB2b2lkIGVsZW1lbnREaWRGb2N1
cyhjb25zdCBXZWJDb3JlOjpOb2RlKikgb3ZlcnJpZGU7CiAgICAgdm9pZCBlbGVtZW50RGlkQmx1
cihjb25zdCBXZWJDb3JlOjpOb2RlKikgb3ZlcnJpZGU7CiAKLSAgICBib29sIHNob3VsZFBhaW50
RW50aXJlQ29udGVudHMoKSBjb25zdCBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZFBhaW50RW50
aXJlQ29udGVudHMoKSBjb25zdCBmaW5hbDsKIAogICAgIHZvaWQgYXR0YWNoUm9vdEdyYXBoaWNz
TGF5ZXIoV2ViQ29yZTo6RnJhbWUqLCBXZWJDb3JlOjpHcmFwaGljc0xheWVyKikgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBhdHRhY2hWaWV3T3ZlcmxheUdyYXBoaWNzTGF5ZXIoV2ViQ29yZTo6RnJhbWUq
LCBXZWJDb3JlOjpHcmFwaGljc0xheWVyKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXROZWVkc09u
ZVNob3REcmF3aW5nU3luY2hyb25pemF0aW9uKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzY2hlZHVs
ZUNvbXBvc2l0aW5nTGF5ZXJGbHVzaCgpIG92ZXJyaWRlOworICAgIHZvaWQgYXR0YWNoVmlld092
ZXJsYXlHcmFwaGljc0xheWVyKFdlYkNvcmU6OkZyYW1lKiwgV2ViQ29yZTo6R3JhcGhpY3NMYXll
ciopIGZpbmFsOworICAgIHZvaWQgc2V0TmVlZHNPbmVTaG90RHJhd2luZ1N5bmNocm9uaXphdGlv
bigpIGZpbmFsOworICAgIHZvaWQgc2NoZWR1bGVDb21wb3NpdGluZ0xheWVyRmx1c2goKSBmaW5h
bDsKIAotICAgIENvbXBvc2l0aW5nVHJpZ2dlckZsYWdzIGFsbG93ZWRDb21wb3NpdGluZ1RyaWdn
ZXJzKCkgY29uc3Qgb3ZlcnJpZGUKKyAgICBDb21wb3NpdGluZ1RyaWdnZXJGbGFncyBhbGxvd2Vk
Q29tcG9zaXRpbmdUcmlnZ2VycygpIGNvbnN0IGZpbmFsCiAgICAgewogICAgICAgICByZXR1cm4g
c3RhdGljX2Nhc3Q8Q29tcG9zaXRpbmdUcmlnZ2VyRmxhZ3M+KAogICAgICAgICAgICAgVGhyZWVE
VHJhbnNmb3JtVHJpZ2dlciB8CkBAIC0xNjksNTIgKzE3Nyw0OSBAQCBwdWJsaWM6CiAgICAgICAg
ICAgICBBbmltYXRpb25UcmlnZ2VyKTsKICAgICB9CiAKLSNpZiBFTkFCTEUoVklERU8pCi0jaWYg
UExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCi0gICAgdm9p
ZCBzZXRVcFBsYXliYWNrQ29udHJvbHNNYW5hZ2VyKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQm
KSBvdmVycmlkZTsKLSAgICB2b2lkIGNsZWFyUGxheWJhY2tDb250cm9sc01hbmFnZXIoKSBvdmVy
cmlkZTsKKyNpZiBFTkFCTEUoVklERU8pICYmIFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVP
X1BSRVNFTlRBVElPTl9NT0RFKQorICAgIHZvaWQgc2V0VXBQbGF5YmFja0NvbnRyb2xzTWFuYWdl
cihXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50JikgZmluYWw7CisgICAgdm9pZCBjbGVhclBsYXli
YWNrQ29udHJvbHNNYW5hZ2VyKCkgZmluYWw7CiAjZW5kaWYKIAotICAgIGJvb2wgc3VwcG9ydHNW
aWRlb0Z1bGxzY3JlZW4oV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxz
Y3JlZW5Nb2RlKSBvdmVycmlkZTsKLSAgICB2b2lkIGVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlk
ZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmLCBXZWJDb3JlOjpIVE1MTWVkaWFF
bGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIG92ZXJyaWRlOwotICAgIHZvaWQgZXhp
dFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50
Jikgb3ZlcnJpZGU7CisjaWYgRU5BQkxFKFZJREVPKQorICAgIGJvb2wgc3VwcG9ydHNWaWRlb0Z1
bGxzY3JlZW4oV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5N
b2RlKSBmaW5hbDsKKyAgICB2b2lkIGVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50
KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmLCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50RW51
bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIGZpbmFsOworICAgIHZvaWQgZXhpdFZpZGVvRnVsbHNj
cmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50JikgZmluYWw7CiAj
ZW5kaWYKLSAgICAKKwogI2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQSSkKLSAgICBib29sIHN1cHBv
cnRzRnVsbFNjcmVlbkZvckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6RWxlbWVudCosIGJvb2wgd2l0
aEtleWJvYXJkKSBvdmVycmlkZTsKLSAgICB2b2lkIGVudGVyRnVsbFNjcmVlbkZvckVsZW1lbnQo
V2ViQ29yZTo6RWxlbWVudCopIG92ZXJyaWRlOwotICAgIHZvaWQgZXhpdEZ1bGxTY3JlZW5Gb3JF
bGVtZW50KFdlYkNvcmU6OkVsZW1lbnQqKSBvdmVycmlkZTsKKyAgICBib29sIHN1cHBvcnRzRnVs
bFNjcmVlbkZvckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6RWxlbWVudCosIGJvb2wgd2l0aEtleWJv
YXJkKSBmaW5hbDsKKyAgICB2b2lkIGVudGVyRnVsbFNjcmVlbkZvckVsZW1lbnQoV2ViQ29yZTo6
RWxlbWVudCopIGZpbmFsOworICAgIHZvaWQgZXhpdEZ1bGxTY3JlZW5Gb3JFbGVtZW50KFdlYkNv
cmU6OkVsZW1lbnQqKSBmaW5hbDsKICNlbmRpZgogCiAgICAgYm9vbCBzZWxlY3RJdGVtV3JpdGlu
Z0RpcmVjdGlvbklzTmF0dXJhbCgpIG92ZXJyaWRlOwogICAgIGJvb2wgc2VsZWN0SXRlbUFsaWdu
bWVudEZvbGxvd3NNZW51V3JpdGluZ0RpcmVjdGlvbigpIG92ZXJyaWRlOwotICAgIGJvb2wgaGFz
T3BlbmVkUG9wdXAoKSBjb25zdCBvdmVycmlkZTsKKyAgICBib29sIGhhc09wZW5lZFBvcHVwKCkg
Y29uc3QgZmluYWw7CiAgICAgUmVmUHRyPFdlYkNvcmU6OlBvcHVwTWVudT4gY3JlYXRlUG9wdXBN
ZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCopIGNvbnN0IG92ZXJyaWRlOwogICAgIFJlZlB0
cjxXZWJDb3JlOjpTZWFyY2hQb3B1cE1lbnU+IGNyZWF0ZVNlYXJjaFBvcHVwTWVudShXZWJDb3Jl
OjpQb3B1cE1lbnVDbGllbnQqKSBjb25zdCBvdmVycmlkZTsKIAotICAgIHZvaWQgd2hlZWxFdmVu
dEhhbmRsZXJzQ2hhbmdlZChib29sKSBvdmVycmlkZSB7IH0KKyAgICB2b2lkIHdoZWVsRXZlbnRI
YW5kbGVyc0NoYW5nZWQoYm9vbCkgZmluYWwgeyB9CiAKICNpZiBFTkFCTEUoU1VCVExFX0NSWVBU
TykKLSAgICBib29sIHdyYXBDcnlwdG9LZXkoY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiwgVmVjdG9y
PHVpbnQ4X3Q+JikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgYm9vbCB1bndyYXBDcnlwdG9LZXkoY29u
c3QgVmVjdG9yPHVpbnQ4X3Q+JiwgVmVjdG9yPHVpbnQ4X3Q+JikgY29uc3Qgb3ZlcnJpZGU7Cisg
ICAgYm9vbCB3cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90PiYsIFZlY3Rvcjx1aW50
OF90PiYpIGNvbnN0IGZpbmFsOworICAgIGJvb2wgdW53cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rv
cjx1aW50OF90PiYsIFZlY3Rvcjx1aW50OF90PiYpIGNvbnN0IGZpbmFsOwogI2VuZGlmCiAKICNp
ZiBFTkFCTEUoU0VSVklDRV9DT05UUk9MUykKLSAgICB2b2lkIGhhbmRsZVNlbGVjdGlvblNlcnZp
Y2VDbGljayhXZWJDb3JlOjpGcmFtZVNlbGVjdGlvbiYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiB0
ZWxlcGhvbmVOdW1iZXJzLCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIG92ZXJyaWRlOwotICAg
IGJvb2wgaGFzUmVsZXZhbnRTZWxlY3Rpb25TZXJ2aWNlcyhib29sIGlzVGV4dE9ubHkpIGNvbnN0
IG92ZXJyaWRlOworICAgIHZvaWQgaGFuZGxlU2VsZWN0aW9uU2VydmljZUNsaWNrKFdlYkNvcmU6
OkZyYW1lU2VsZWN0aW9uJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHRlbGVwaG9uZU51bWJlcnMs
IGNvbnN0IFdlYkNvcmU6OkludFBvaW50JikgZmluYWw7CisgICAgYm9vbCBoYXNSZWxldmFudFNl
bGVjdGlvblNlcnZpY2VzKGJvb2wgaXNUZXh0T25seSkgY29uc3QgZmluYWw7CiAjZW5kaWYKIAot
ICAgIFdlYlZpZXcqIHdlYlZpZXcoKSBjb25zdCB7IHJldHVybiBtX3dlYlZpZXc7IH0KLQogI2lm
IEVOQUJMRShXSVJFTEVTU19QTEFZQkFDS19UQVJHRVQpICYmICFQTEFURk9STShJT1MpCi0gICAg
dm9pZCBhZGRQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudCh1aW50NjRfdCAvKmNvbnRleHRJZCov
KSBvdmVycmlkZTsKLSAgICB2b2lkIHJlbW92ZVBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVp
bnQ2NF90IC8qY29udGV4dElkKi8pIG92ZXJyaWRlOwotICAgIHZvaWQgc2hvd1BsYXliYWNrVGFy
Z2V0UGlja2VyKHVpbnQ2NF90IC8qY29udGV4dElkKi8sIGNvbnN0IFdlYkNvcmU6OkludFBvaW50
JiwgYm9vbCAvKiBoYXNWaWRlbyAqLykgb3ZlcnJpZGU7Ci0gICAgdm9pZCBwbGF5YmFja1Rhcmdl
dFBpY2tlckNsaWVudFN0YXRlRGlkQ2hhbmdlKHVpbnQ2NF90IC8qY29udGV4dElkKi8sIFdlYkNv
cmU6Ok1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncykgb3ZlcnJpZGU7Ci0gICAgdm9pZCBz
ZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVuYWJsZWQoYm9vbCkgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlclN0YXRlKGNvbnN0IFN0cmlu
ZyYsIFdlYkNvcmU6Ok1lZGlhUGxheWJhY2tUYXJnZXRDb250ZXh0OjpTdGF0ZSkgb3ZlcnJpZGU7
CisgICAgdm9pZCBhZGRQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudCh1aW50NjRfdCAvKmNvbnRl
eHRJZCovKSBmaW5hbDsKKyAgICB2b2lkIHJlbW92ZVBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50
KHVpbnQ2NF90IC8qY29udGV4dElkKi8pIGZpbmFsOworICAgIHZvaWQgc2hvd1BsYXliYWNrVGFy
Z2V0UGlja2VyKHVpbnQ2NF90IC8qY29udGV4dElkKi8sIGNvbnN0IFdlYkNvcmU6OkludFBvaW50
JiwgYm9vbCAvKiBoYXNWaWRlbyAqLykgZmluYWw7CisgICAgdm9pZCBwbGF5YmFja1RhcmdldFBp
Y2tlckNsaWVudFN0YXRlRGlkQ2hhbmdlKHVpbnQ2NF90IC8qY29udGV4dElkKi8sIFdlYkNvcmU6
Ok1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncykgZmluYWw7CisgICAgdm9pZCBzZXRNb2Nr
TWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVuYWJsZWQoYm9vbCkgZmluYWw7CisgICAgdm9pZCBz
ZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlclN0YXRlKGNvbnN0IFN0cmluZyYsIFdlYkNv
cmU6Ok1lZGlhUGxheWJhY2tUYXJnZXRDb250ZXh0OjpTdGF0ZSkgZmluYWw7CiAjZW5kaWYKIAot
cHJpdmF0ZToKICAgICBXZWJWaWV3ICptX3dlYlZpZXc7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50Lm1tIGIvU291cmNlL1dl
YktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50Lm1tCmluZGV4IGQ3ZWM4Y2Ix
YjQ2YWI3ODE4ZTBkZTIyNDEyNmNhYTVhMDY1ZGEyOTEuLmE1MmE0NjAxYzE2NDdkZTQ1ZDQwOTk1
N2E4MTMyYTIzZDFhMzYwNjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVT
dXBwb3J0L1dlYkNocm9tZUNsaWVudC5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3Jl
U3VwcG9ydC9XZWJDaHJvbWVDbGllbnQubW0KQEAgLTc0MSwxMCArNzQxLDEwIEBAIHZvaWQgV2Vi
Q2hyb21lQ2xpZW50OjpyZXF1ZXN0UG9pbnRlclVubG9jaygpCiB9CiAjZW5kaWYKIAotdm9pZCBX
ZWJDaHJvbWVDbGllbnQ6OnJ1bk9wZW5QYW5lbChGcmFtZSosIFBhc3NSZWZQdHI8RmlsZUNob29z
ZXI+IGNob29zZXIpCit2b2lkIFdlYkNocm9tZUNsaWVudDo6cnVuT3BlblBhbmVsKEZyYW1lJiwg
RmlsZUNob29zZXImIGNob29zZXIpCiB7CiAgICAgQkVHSU5fQkxPQ0tfT0JKQ19FWENFUFRJT05T
OwotICAgIEJPT0wgYWxsb3dNdWx0aXBsZUZpbGVzID0gY2hvb3Nlci0+c2V0dGluZ3MoKS5hbGxv
d3NNdWx0aXBsZUZpbGVzOworICAgIEJPT0wgYWxsb3dNdWx0aXBsZUZpbGVzID0gY2hvb3Nlci5z
ZXR0aW5ncygpLmFsbG93c011bHRpcGxlRmlsZXM7CiAgICAgV2ViT3BlblBhbmVsUmVzdWx0TGlz
dGVuZXIgKmxpc3RlbmVyID0gW1tXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lciBhbGxvY10gaW5p
dFdpdGhDaG9vc2VyOmNob29zZXJdOwogICAgIGlkIGRlbGVnYXRlID0gW21fd2ViVmlldyBVSURl
bGVnYXRlXTsKICAgICBpZiAoW2RlbGVnYXRlIHJlc3BvbmRzVG9TZWxlY3RvcjpAc2VsZWN0b3Io
d2ViVmlldzpydW5PcGVuUGFuZWxGb3JGaWxlQnV0dG9uV2l0aFJlc3VsdExpc3RlbmVyOmFsbG93
TXVsdGlwbGVGaWxlczopXSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVT
dXBwb3J0L1dlYkVkaXRvckNsaWVudC5oIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBv
cnQvV2ViRWRpdG9yQ2xpZW50LmgKaW5kZXggM2IzNWQ0ZDIxMTBmNDlmMWM0OTNmZWFjY2QwODQ3
MzhiODIzOGFmOS4uODgyMTUzMTA0YzUwMDllNWU3ZWEwYWU3ZjkwOGIzNzZjNzBjZjdjNSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50
LmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50
LmgKQEAgLTExNSw4ICsxMTUsOCBAQCBwcml2YXRlOgogICAgIHZvaWQgZGlzY2FyZGVkQ29tcG9z
aXRpb24oV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKICAgICB2b2lkIGNhbmNlbGVkQ29tcG9zaXRp
b24oKSBmaW5hbDsKIAotICAgIHZvaWQgcmVnaXN0ZXJVbmRvU3RlcChQYXNzUmVmUHRyPFdlYkNv
cmU6OlVuZG9TdGVwPikgZmluYWw7Ci0gICAgdm9pZCByZWdpc3RlclJlZG9TdGVwKFBhc3NSZWZQ
dHI8V2ViQ29yZTo6VW5kb1N0ZXA+KSBmaW5hbDsKKyAgICB2b2lkIHJlZ2lzdGVyVW5kb1N0ZXAo
V2ViQ29yZTo6VW5kb1N0ZXAmKSBmaW5hbDsKKyAgICB2b2lkIHJlZ2lzdGVyUmVkb1N0ZXAoV2Vi
Q29yZTo6VW5kb1N0ZXAmKSBmaW5hbDsKICAgICB2b2lkIGNsZWFyVW5kb1JlZG9PcGVyYXRpb25z
KCkgZmluYWw7CiAKICAgICBib29sIGNhbkNvcHlDdXQoV2ViQ29yZTo6RnJhbWUqLCBib29sIGRl
ZmF1bHRWYWx1ZSkgY29uc3QgZmluYWw7CkBAIC0xNzQsNyArMTc0LDcgQEAgcHJpdmF0ZToKICAg
ICB2b2lkIGhhbmRsZUFjY2VwdGVkQ2FuZGlkYXRlV2l0aFNvZnRTcGFjZXMoV2ViQ29yZTo6VGV4
dENoZWNraW5nUmVzdWx0KSBmaW5hbDsKICNlbmRpZgogCi0gICAgdm9pZCByZWdpc3RlclVuZG9P
clJlZG9TdGVwKFBhc3NSZWZQdHI8V2ViQ29yZTo6VW5kb1N0ZXA+LCBib29sIGlzUmVkbyk7Cisg
ICAgdm9pZCByZWdpc3RlclVuZG9PclJlZG9TdGVwKFdlYkNvcmU6OlVuZG9TdGVwJiwgYm9vbCBp
c1JlZG8pOwogCiAgICAgV2ViVmlldyAqbV93ZWJWaWV3OwogICAgIFJldGFpblB0cjxXZWJFZGl0
b3JVbmRvVGFyZ2V0PiBtX3VuZG9UYXJnZXQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21h
Yy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9X
ZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQubW0KaW5kZXggN2Y5ZjQxN2FkMWM0M2E4NmFh
MjVkMjE0OGU1NDY5NWUxZGI3MDI4ZS4uZjM4YTlmMGNkYzJkNDk1MGRkMDY0NmQ3MDM4ZjhjNWEz
MzNlMDQ4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2Vi
RWRpdG9yQ2xpZW50Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dl
YkVkaXRvckNsaWVudC5tbQpAQCAtMTE5LDggKzExOSw4IEBAIEBpbnRlcmZhY2UgV2ViVW5kb1N0
ZXAgOiBOU09iamVjdAogICAgIFJlZlB0cjxVbmRvU3RlcD4gbV9zdGVwOyAgIAogfQogCi0rIChX
ZWJVbmRvU3RlcCAqKXN0ZXBXaXRoVW5kb1N0ZXA6KFBhc3NSZWZQdHI8VW5kb1N0ZXA+KXN0ZXA7
Ci0tIChVbmRvU3RlcCAqKXN0ZXA7CisrIChXZWJVbmRvU3RlcCAqKXN0ZXBXaXRoVW5kb1N0ZXA6
KFVuZG9TdGVwJilzdGVwOworLSAoVW5kb1N0ZXAmKXN0ZXA7CiAKIEBlbmQKIApAQCAtMTM1LDEz
ICsxMzUsMTIgQEAgKyAodm9pZClpbml0aWFsaXplCiAjZW5kaWYKIH0KIAotLSAoaWQpaW5pdFdp
dGhVbmRvU3RlcDooUGFzc1JlZlB0cjxVbmRvU3RlcD4pc3RlcAorLSAoaWQpaW5pdFdpdGhVbmRv
U3RlcDooVW5kb1N0ZXAmKXN0ZXAKIHsKLSAgICBBU1NFUlQoc3RlcCk7CiAgICAgc2VsZiA9IFtz
dXBlciBpbml0XTsKICAgICBpZiAoIXNlbGYpCiAgICAgICAgIHJldHVybiBuaWw7Ci0gICAgbV9z
dGVwID0gc3RlcDsKKyAgICBtX3N0ZXAgPSAmc3RlcDsKICAgICByZXR1cm4gc2VsZjsKIH0KIApA
QCAtMTUzLDE0ICsxNTIsMTQgQEAgLSAodm9pZClkZWFsbG9jCiAgICAgW3N1cGVyIGRlYWxsb2Nd
OwogfQogCi0rIChXZWJVbmRvU3RlcCAqKXN0ZXBXaXRoVW5kb1N0ZXA6KFBhc3NSZWZQdHI8VW5k
b1N0ZXA+KXN0ZXAKKysgKFdlYlVuZG9TdGVwICopc3RlcFdpdGhVbmRvU3RlcDooVW5kb1N0ZXAm
KXN0ZXAKIHsKICAgICByZXR1cm4gW1tbV2ViVW5kb1N0ZXAgYWxsb2NdIGluaXRXaXRoVW5kb1N0
ZXA6c3RlcF0gYXV0b3JlbGVhc2VdOwogfQogCi0tIChVbmRvU3RlcCAqKXN0ZXAKKy0gKFVuZG9T
dGVwJilzdGVwCiB7Ci0gICAgcmV0dXJuIG1fc3RlcC5nZXQoKTsKKyAgICByZXR1cm4gKm1fc3Rl
cDsKIH0KIAogQGVuZApAQCAtMTc3LDEzICsxNzYsMTMgQEAgQGltcGxlbWVudGF0aW9uIFdlYkVk
aXRvclVuZG9UYXJnZXQKIC0gKHZvaWQpdW5kb0VkaXRpbmc6KGlkKWFyZwogewogICAgIEFTU0VS
VChbYXJnIGlzS2luZE9mQ2xhc3M6W1dlYlVuZG9TdGVwIGNsYXNzXV0pOwotICAgIFthcmcgc3Rl
cF0tPnVuYXBwbHkoKTsKKyAgICBbYXJnIHN0ZXBdLnVuYXBwbHkoKTsKIH0KIAogLSAodm9pZCly
ZWRvRWRpdGluZzooaWQpYXJnCiB7CiAgICAgQVNTRVJUKFthcmcgaXNLaW5kT2ZDbGFzczpbV2Vi
VW5kb1N0ZXAgY2xhc3NdXSk7Ci0gICAgW2FyZyBzdGVwXS0+cmVhcHBseSgpOworICAgIFthcmcg
c3RlcF0ucmVhcHBseSgpOwogfQogCiBAZW5kCkBAIC02NDIsMTAgKzY0MSw4IEBAIHN0YXRpYyBO
U1N0cmluZyogdW5kb05hbWVGb3JFZGl0QWN0aW9uKEVkaXRBY3Rpb24gZWRpdEFjdGlvbikKICAg
ICByZXR1cm4gbmlsOwogfQogCi12b2lkIFdlYkVkaXRvckNsaWVudDo6cmVnaXN0ZXJVbmRvT3JS
ZWRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPiBzdGVwLCBib29sIGlzUmVkbykKK3ZvaWQgV2Vi
RWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9PclJlZG9TdGVwKFVuZG9TdGVwJiBzdGVwLCBib29s
IGlzUmVkbykKIHsKLSAgICBBU1NFUlQoc3RlcCk7Ci0gICAgCiAgICAgTlNVbmRvTWFuYWdlciAq
dW5kb01hbmFnZXIgPSBbbV93ZWJWaWV3IHVuZG9NYW5hZ2VyXTsKIAogI2lmIFBMQVRGT1JNKElP
UykKQEAgLTY1Niw3ICs2NTMsNyBAQCB2b2lkIFdlYkVkaXRvckNsaWVudDo6cmVnaXN0ZXJVbmRv
T3JSZWRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPiBzdGVwLCBib29sIGlzUgogICAgICAgICBy
ZXR1cm47CiAjZW5kaWYKIAotICAgIE5TU3RyaW5nICphY3Rpb25OYW1lID0gdW5kb05hbWVGb3JF
ZGl0QWN0aW9uKHN0ZXAtPmVkaXRpbmdBY3Rpb24oKSk7CisgICAgTlNTdHJpbmcgKmFjdGlvbk5h
bWUgPSB1bmRvTmFtZUZvckVkaXRBY3Rpb24oc3RlcC5lZGl0aW5nQWN0aW9uKCkpOwogICAgIFdl
YlVuZG9TdGVwICp3ZWJFbnRyeSA9IFtXZWJVbmRvU3RlcCBzdGVwV2l0aFVuZG9TdGVwOnN0ZXBd
OwogICAgIFt1bmRvTWFuYWdlciByZWdpc3RlclVuZG9XaXRoVGFyZ2V0Om1fdW5kb1RhcmdldC5n
ZXQoKSBzZWxlY3RvcjooaXNSZWRvID8gQHNlbGVjdG9yKHJlZG9FZGl0aW5nOikgOiBAc2VsZWN0
b3IodW5kb0VkaXRpbmc6KSkgb2JqZWN0OndlYkVudHJ5XTsKICAgICBpZiAoYWN0aW9uTmFtZSkK
QEAgLTY4NCwxMiArNjgxLDEyIEBAIHZvaWQgV2ViRWRpdG9yQ2xpZW50Ojp1cGRhdGVFZGl0b3JT
dGF0ZUFmdGVyTGF5b3V0SWZFZGl0YWJpbGl0eUNoYW5nZWQoKQogICAgICAgICBbbV93ZWJWaWV3
IHVwZGF0ZVRvdWNoQmFyXTsKIH0KIAotdm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5k
b1N0ZXAoUGFzc1JlZlB0cjxVbmRvU3RlcD4gY21kKQordm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJl
Z2lzdGVyVW5kb1N0ZXAoVW5kb1N0ZXAmIGNtZCkKIHsKICAgICByZWdpc3RlclVuZG9PclJlZG9T
dGVwKGNtZCwgZmFsc2UpOwogfQogCi12b2lkIFdlYkVkaXRvckNsaWVudDo6cmVnaXN0ZXJSZWRv
U3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPiBjbWQpCit2b2lkIFdlYkVkaXRvckNsaWVudDo6cmVn
aXN0ZXJSZWRvU3RlcChVbmRvU3RlcCYgY21kKQogewogICAgIHJlZ2lzdGVyVW5kb09yUmVkb1N0
ZXAoY21kLCB0cnVlKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVT
dXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3Jl
U3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCmluZGV4IGExMWZiODhiZGJkOTFiYWQ4ZmQ4
ZGY5ZmQyOTJmODI1ODhmYzQ1ZjYuLmJmYmQyZjc4MzZmNjQ4YjgwNzBhYzc0M2YyZWFjODM2YTVj
OTY5MTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZy
YW1lTG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQv
V2ViRnJhbWVMb2FkZXJDbGllbnQuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQg
KEMpIDIwMDYtMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmln
aHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTU4LDIwMiArNTgsMjAyIEBAIHB1YmxpYzoKICAg
ICBXZWJGcmFtZSogd2ViRnJhbWUoKSBjb25zdCB7IHJldHVybiBtX3dlYkZyYW1lLmdldCgpOyB9
CiAKIHByaXZhdGU6Ci0gICAgdm9pZCBmcmFtZUxvYWRlckRlc3Ryb3llZCgpIG92ZXJyaWRlOwot
ICAgIGJvb2wgaGFzV2ViVmlldygpIGNvbnN0IG92ZXJyaWRlOyAvLyBtYWlubHkgZm9yIGFzc2Vy
dGlvbnMKKyAgICB2b2lkIGZyYW1lTG9hZGVyRGVzdHJveWVkKCkgZmluYWw7CisgICAgYm9vbCBo
YXNXZWJWaWV3KCkgY29uc3QgZmluYWw7IC8vIG1haW5seSBmb3IgYXNzZXJ0aW9ucwogCi0gICAg
dm9pZCBtYWtlUmVwcmVzZW50YXRpb24oV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBvdmVycmlk
ZTsKLSAgICBib29sIGhhc0hUTUxWaWV3KCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgdm9pZCBtYWtl
UmVwcmVzZW50YXRpb24oV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBmaW5hbDsKKyAgICBib29s
IGhhc0hUTUxWaWV3KCkgY29uc3QgZmluYWw7CiAjaWYgUExBVEZPUk0oSU9TKQotICAgIGJvb2wg
Zm9yY2VMYXlvdXRPblJlc3RvcmVGcm9tUGFnZUNhY2hlKCkgb3ZlcnJpZGU7CisgICAgYm9vbCBm
b3JjZUxheW91dE9uUmVzdG9yZUZyb21QYWdlQ2FjaGUoKSBmaW5hbDsKICNlbmRpZgotICAgIHZv
aWQgZm9yY2VMYXlvdXRGb3JOb25IVE1MKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBmb3JjZUxheW91
dEZvck5vbkhUTUwoKSBmaW5hbDsKIAotICAgIHZvaWQgc2V0Q29waWVzT25TY3JvbGwoKSBvdmVy
cmlkZTsKKyAgICB2b2lkIHNldENvcGllc09uU2Nyb2xsKCkgZmluYWw7CiAKLSAgICB2b2lkIGRl
dGFjaGVkRnJvbVBhcmVudDIoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRldGFjaGVkRnJvbVBhcmVu
dDMoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRldGFjaGVkRnJvbVBhcmVudDIoKSBmaW5hbDsKKyAg
ICB2b2lkIGRldGFjaGVkRnJvbVBhcmVudDMoKSBmaW5hbDsKIAotICAgIHZvaWQgY29udmVydE1h
aW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29y
ZTo6U2Vzc2lvbklELCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CisgICAgdm9pZCBjb252ZXJ0TWFpblJl
c291cmNlTG9hZFRvRG93bmxvYWQoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpT
ZXNzaW9uSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKIAotICAgIHZvaWQgYXNzaWduSWRlbnRpZmllclRv
SW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVu
dExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRlOworICAg
IHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYpIGZpbmFsOwogCi0gICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChXZWJD
b3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYgcmVkaXJl
Y3RSZXNwb25zZSkgb3ZlcnJpZGU7Ci0gICAgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFn
ZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgb3Zl
cnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5n
ZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29u
c3QgV2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKSBvdmVycmlkZTsKKyAgICB2b2lk
IGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKSBmaW5hbDsKKyAgICBib29s
IHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2
ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpBdXRoZW50aWNhdGlvbkNoYWxsZW5n
ZSYpIGZpbmFsOwogI2lmIFVTRShQUk9URUNUSU9OX1NQQUNFX0FVVEhfQ0FMTEJBQ0spCi0gICAg
Ym9vbCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpQcm90
ZWN0aW9uU3BhY2UmKSBvdmVycmlkZTsKKyAgICBib29sIGNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQ
cm90ZWN0aW9uU3BhY2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlByb3RlY3Rpb25TcGFjZSYpIGZpbmFsOwogI2VuZGlm
CiAKICNpZiBQTEFURk9STShJT1MpCi0gICAgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gY29u
bmVjdGlvblByb3BlcnRpZXMoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIpIG92ZXJyaWRlOworICAgIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IGNv
bm5lY3Rpb25Qcm9wZXJ0aWVzKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyKSBmaW5hbDsKICNlbmRpZgogCi0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2Vp
dmVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOwotICAgIHZv
aWQgZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChXZWJDb3JlOjpEb2N1bWVudExvYWRl
ciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgaW50IGRhdGFMZW5ndGgpIG92ZXJyaWRlOwot
ICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
KiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNo
RGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7Cisg
ICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkgZmluYWw7
CisgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIGZpbmFsOwogI2lmIEVOQUJMRShEQVRBX0RF
VEVDVElPTikKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoRGF0YURldGVjdGlvbihOU0FycmF5
ICpkZXRlY3Rpb25SZXN1bHRzKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNo
RGF0YURldGVjdGlvbihOU0FycmF5ICpkZXRlY3Rpb25SZXN1bHRzKSBmaW5hbDsKICNlbmRpZgot
ICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlcios
IHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYp
IG92ZXJyaWRlOwotCi0gICAgTlNDYWNoZWRVUkxSZXNwb25zZSogd2lsbENhY2hlUmVzcG9uc2Uo
V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIE5TQ2Fj
aGVkVVJMUmVzcG9uc2UqKSBjb25zdCBvdmVycmlkZTsKLQotICAgIHZvaWQgZGlzcGF0Y2hEaWRE
aXNwYXRjaE9ubG9hZEV2ZW50cygpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNl
aXZlU2VydmVyUmVkaXJlY3RGb3JQcm92aXNpb25hbExvYWQoKSBvdmVycmlkZTsKLSAgICB2b2lk
IGRpc3BhdGNoRGlkQ2FuY2VsQ2xpZW50UmVkaXJlY3QoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRp
c3BhdGNoV2lsbFBlcmZvcm1DbGllbnRSZWRpcmVjdChjb25zdCBXZWJDb3JlOjpVUkwmLCBkb3Vi
bGUgaW50ZXJ2YWwsIGRvdWJsZSBmaXJlRGF0ZSkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRj
aERpZENoYW5nZUxvY2F0aW9uV2l0aGluUGFnZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0
Y2hEaWRQdXNoU3RhdGVXaXRoaW5QYWdlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERp
ZFJlcGxhY2VTdGF0ZVdpdGhpblBhZ2UoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlk
UG9wU3RhdGVXaXRoaW5QYWdlKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxM
b2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
LCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmluYWw7CisKKyAgICBOU0NhY2hlZFVS
TFJlc3BvbnNlKiB3aWxsQ2FjaGVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25zZSopIGNvbnN0IGZpbmFs
OworCisgICAgdm9pZCBkaXNwYXRjaERpZERpc3BhdGNoT25sb2FkRXZlbnRzKCkgZmluYWw7Cisg
ICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVTZXJ2ZXJSZWRpcmVjdEZvclByb3Zpc2lvbmFsTG9h
ZCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRDYW5jZWxDbGllbnRSZWRpcmVjdCgpIGZp
bmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsUGVyZm9ybUNsaWVudFJlZGlyZWN0KGNvbnN0IFdl
YkNvcmU6OlVSTCYsIGRvdWJsZSBpbnRlcnZhbCwgZG91YmxlIGZpcmVEYXRlKSBmaW5hbDsKKyAg
ICB2b2lkIGRpc3BhdGNoRGlkQ2hhbmdlTG9jYXRpb25XaXRoaW5QYWdlKCkgZmluYWw7CisgICAg
dm9pZCBkaXNwYXRjaERpZFB1c2hTdGF0ZVdpdGhpblBhZ2UoKSBmaW5hbDsKKyAgICB2b2lkIGRp
c3BhdGNoRGlkUmVwbGFjZVN0YXRlV2l0aGluUGFnZSgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0
Y2hEaWRQb3BTdGF0ZVdpdGhpblBhZ2UoKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIGRpc3BhdGNo
V2lsbENsb3NlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVJY29uKCkg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFN0YXJ0UHJvdmlzaW9uYWxMb2FkKCkgb3Zl
cnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVUaXRsZShjb25zdCBXZWJDb3JlOjpT
dHJpbmdXaXRoRGlyZWN0aW9uJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZENvbW1p
dExvYWQoc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpIYXNJbnNlY3VyZUNvbnRlbnQ+KSBvdmVycmlk
ZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbFByb3Zpc2lvbmFsTG9hZChjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2Fk
KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3Bh
dGNoRGlkRmluaXNoRG9jdW1lbnRMb2FkKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERp
ZEZpbmlzaExvYWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVhY2hMYXlvdXRN
aWxlc3RvbmUoV2ViQ29yZTo6TGF5b3V0TWlsZXN0b25lcykgb3ZlcnJpZGU7CisgICAgdm9pZCBk
aXNwYXRjaFdpbGxDbG9zZSgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlSWNv
bigpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRTdGFydFByb3Zpc2lvbmFsTG9hZCgpIGZp
bmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlVGl0bGUoY29uc3QgV2ViQ29yZTo6U3Ry
aW5nV2l0aERpcmVjdGlvbiYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRDb21taXRMb2Fk
KHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6SGFzSW5zZWN1cmVDb250ZW50PikgZmluYWw7CisgICAg
dm9pZCBkaXNwYXRjaERpZEZhaWxQcm92aXNpb25hbExvYWQoY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VFcnJvciYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZChjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZUVycm9yJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaERv
Y3VtZW50TG9hZCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkKCkgZmlu
YWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlYWNoTGF5b3V0TWlsZXN0b25lKFdlYkNvcmU6Okxh
eW91dE1pbGVzdG9uZXMpIGZpbmFsOwogCi0gICAgV2ViQ29yZTo6RnJhbWUqIGRpc3BhdGNoQ3Jl
YXRlUGFnZShjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJikgb3ZlcnJpZGU7Ci0gICAg
dm9pZCBkaXNwYXRjaFNob3coKSBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpGcmFtZSogZGlzcGF0
Y2hDcmVhdGVQYWdlKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mKSBmaW5hbDsKKyAg
ICB2b2lkIGRpc3BhdGNoU2hvdygpIGZpbmFsOwogCi0gICAgdm9pZCBkaXNwYXRjaERlY2lkZVBv
bGljeUZvclJlc3BvbnNlKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBv
dmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9u
KGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZVJlcXVlc3QmLCBQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4sIGNvbnN0IFdURjo6U3Ry
aW5nJiBmcmFtZU5hbWUsIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOwot
ICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IFdl
YkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qm
LCBQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4sIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVu
Y3Rpb24pIG92ZXJyaWRlOwotICAgIHZvaWQgY2FuY2VsUG9saWN5Q2hlY2soKSBvdmVycmlkZTsK
KyAgICB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UoY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFdlYkNv
cmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQ
b2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYs
IGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFdlYkNvcmU6OkZvcm1TdGF0ZSosIGNv
bnN0IFdURjo6U3RyaW5nJiBmcmFtZU5hbWUsIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24p
IGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9u
KGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZVJlcXVlc3QmLCBXZWJDb3JlOjpGb3JtU3RhdGUqLCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0
aW9uKSBmaW5hbDsKKyAgICB2b2lkIGNhbmNlbFBvbGljeUNoZWNrKCkgZmluYWw7CiAKLSAgICB2
b2lkIGRpc3BhdGNoVW5hYmxlVG9JbXBsZW1lbnRQb2xpY3koY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VFcnJvciYpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hVbmFibGVUb0ltcGxlbWVudFBv
bGljeShjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmluYWw7CiAKLSAgICB2b2lkIGRp
c3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4p
IG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShQYXNzUmVmUHRyPFdl
YkNvcmU6OkZvcm1TdGF0ZT4sIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRl
OworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJlZjxXZWJDb3JlOjpGb3Jt
U3RhdGU+JiYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShXZWJDb3Jl
OjpGb3JtU3RhdGUmLCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsKIAotICAg
IHZvaWQgcmV2ZXJ0VG9Qcm92aXNpb25hbFN0YXRlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRNYWluRG9jdW1lbnRFcnJvcihXZWJDb3JlOjpEb2N1bWVu
dExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKLSAgICBi
b29sIGRpc3BhdGNoRGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VSZXNwb25zZSYsIGludCBsZW5ndGgpIG92ZXJyaWRlOworICAgIHZvaWQgcmV2
ZXJ0VG9Qcm92aXNpb25hbFN0YXRlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgZmluYWw7Cisg
ICAgdm9pZCBzZXRNYWluRG9jdW1lbnRFcnJvcihXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKKyAgICBib29sIGRpc3BhdGNoRGlk
TG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNw
b25zZSYsIGludCBsZW5ndGgpIGZpbmFsOwogCi0gICAgdm9pZCBzZXRNYWluRnJhbWVEb2N1bWVu
dFJlYWR5KGJvb2wpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0TWFpbkZyYW1lRG9jdW1lbnRSZWFk
eShib29sKSBmaW5hbDsKIAotICAgIHZvaWQgc3RhcnREb3dubG9hZChjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBTdHJpbmcmIHN1Z2dlc3RlZE5hbWUgPSBTdHJpbmcoKSkg
b3ZlcnJpZGU7CisgICAgdm9pZCBzdGFydERvd25sb2FkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYsIGNvbnN0IFN0cmluZyYgc3VnZ2VzdGVkTmFtZSA9IFN0cmluZygpKSBmaW5hbDsK
IAotICAgIHZvaWQgd2lsbENoYW5nZVRpdGxlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgb3Zl
cnJpZGU7Ci0gICAgdm9pZCBkaWRDaGFuZ2VUaXRsZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciop
IG92ZXJyaWRlOworICAgIHZvaWQgd2lsbENoYW5nZVRpdGxlKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKikgZmluYWw7CisgICAgdm9pZCBkaWRDaGFuZ2VUaXRsZShXZWJDb3JlOjpEb2N1bWVudExv
YWRlciopIGZpbmFsOwogCi0gICAgdm9pZCB3aWxsUmVwbGFjZU11bHRpcGFydENvbnRlbnQoKSBv
dmVycmlkZSB7IH0KLSAgICB2b2lkIGRpZFJlcGxhY2VNdWx0aXBhcnRDb250ZW50KCkgb3ZlcnJp
ZGU7CisgICAgdm9pZCB3aWxsUmVwbGFjZU11bHRpcGFydENvbnRlbnQoKSBmaW5hbCB7IH0KKyAg
ICB2b2lkIGRpZFJlcGxhY2VNdWx0aXBhcnRDb250ZW50KCkgZmluYWw7CiAKLSAgICB2b2lkIGNv
bW1pdHRlZExvYWQoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBjaGFyKiwgaW50KSBv
dmVycmlkZTsKLSAgICB2b2lkIGZpbmlzaGVkTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRl
ciopIG92ZXJyaWRlOwotICAgIHZvaWQgdXBkYXRlR2xvYmFsSGlzdG9yeSgpIG92ZXJyaWRlOwot
ICAgIHZvaWQgdXBkYXRlR2xvYmFsSGlzdG9yeVJlZGlyZWN0TGlua3MoKSBvdmVycmlkZTsKKyAg
ICB2b2lkIGNvbW1pdHRlZExvYWQoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBjaGFy
KiwgaW50KSBmaW5hbDsKKyAgICB2b2lkIGZpbmlzaGVkTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVu
dExvYWRlciopIGZpbmFsOworICAgIHZvaWQgdXBkYXRlR2xvYmFsSGlzdG9yeSgpIGZpbmFsOwor
ICAgIHZvaWQgdXBkYXRlR2xvYmFsSGlzdG9yeVJlZGlyZWN0TGlua3MoKSBmaW5hbDsKIAotICAg
IGJvb2wgc2hvdWxkR29Ub0hpc3RvcnlJdGVtKFdlYkNvcmU6Okhpc3RvcnlJdGVtKikgY29uc3Qg
b3ZlcnJpZGU7Ci0gICAgdm9pZCB1cGRhdGVHbG9iYWxIaXN0b3J5SXRlbUZvclBhZ2UoKSBvdmVy
cmlkZTsKKyAgICBib29sIHNob3VsZEdvVG9IaXN0b3J5SXRlbShXZWJDb3JlOjpIaXN0b3J5SXRl
bSopIGNvbnN0IGZpbmFsOworICAgIHZvaWQgdXBkYXRlR2xvYmFsSGlzdG9yeUl0ZW1Gb3JQYWdl
KCkgZmluYWw7CiAKLSAgICB2b2lkIGRpZERpc3BsYXlJbnNlY3VyZUNvbnRlbnQoKSBvdmVycmlk
ZTsKLSAgICB2b2lkIGRpZFJ1bkluc2VjdXJlQ29udGVudChXZWJDb3JlOjpTZWN1cml0eU9yaWdp
biosIGNvbnN0IFdlYkNvcmU6OlVSTCYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkRGV0ZWN0WFNT
KGNvbnN0IFdlYkNvcmU6OlVSTCYsIGJvb2wgZGlkQmxvY2tFbnRpcmVQYWdlKSBvdmVycmlkZTsK
KyAgICB2b2lkIGRpZERpc3BsYXlJbnNlY3VyZUNvbnRlbnQoKSBmaW5hbDsKKyAgICB2b2lkIGRp
ZFJ1bkluc2VjdXJlQ29udGVudChXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiosIGNvbnN0IFdlYkNv
cmU6OlVSTCYpIGZpbmFsOworICAgIHZvaWQgZGlkRGV0ZWN0WFNTKGNvbnN0IFdlYkNvcmU6OlVS
TCYsIGJvb2wgZGlkQmxvY2tFbnRpcmVQYWdlKSBmaW5hbDsKIAotICAgIFdlYkNvcmU6OlJlc291
cmNlRXJyb3IgY2FuY2VsbGVkRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikg
b3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkRXJyb3IoY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3Vy
Y2VFcnJvciBibG9ja2VkQnlDb250ZW50QmxvY2tlckVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlUmVxdWVzdCYpIG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgY2Fubm90
U2hvd1VSTEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRlOwot
ICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgaW50ZXJydXB0ZWRGb3JQb2xpY3lDaGFuZ2VFcnJv
cihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKKyAgICBXZWJDb3Jl
OjpSZXNvdXJjZUVycm9yIGNhbmNlbGxlZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVx
dWVzdCYpIGZpbmFsOworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgYmxvY2tlZEVycm9yKGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOworICAgIFdlYkNvcmU6OlJlc291
cmNlRXJyb3IgYmxvY2tlZEJ5Q29udGVudEJsb2NrZXJFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmKSBmaW5hbDsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNo
b3dVUkxFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKKyAgICBX
ZWJDb3JlOjpSZXNvdXJjZUVycm9yIGludGVycnVwdGVkRm9yUG9saWN5Q2hhbmdlRXJyb3IoY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CiAjaWYgRU5BQkxFKENPTlRFTlRf
RklMVEVSSU5HKQotICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgYmxvY2tlZEJ5Q29udGVudEZp
bHRlckVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRlOworICAg
IFdlYkNvcmU6OlJlc291cmNlRXJyb3IgYmxvY2tlZEJ5Q29udGVudEZpbHRlckVycm9yKGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOwogI2VuZGlmCiAKLSAgICBXZWJDb3Jl
OjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dNSU1FVHlwZUVycm9yKGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGZp
bGVEb2VzTm90RXhpc3RFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgb3Zl
cnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBwbHVnaW5XaWxsSGFuZGxlTG9hZEVy
cm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKKyAgICBXZWJD
b3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dNSU1FVHlwZUVycm9yKGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGZp
bGVEb2VzTm90RXhpc3RFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgZmlu
YWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBwbHVnaW5XaWxsSGFuZGxlTG9hZEVycm9y
KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKIAotICAgIGJvb2wgc2hv
dWxkRmFsbEJhY2soY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOworICAg
IGJvb2wgc2hvdWxkRmFsbEJhY2soY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIGZpbmFs
OwogCi0gICAgV1RGOjpTdHJpbmcgdXNlckFnZW50KGNvbnN0IFdlYkNvcmU6OlVSTCYpIG92ZXJy
aWRlOworICAgIFdURjo6U3RyaW5nIHVzZXJBZ2VudChjb25zdCBXZWJDb3JlOjpVUkwmKSBmaW5h
bDsKICAgICAKLSAgICB2b2lkIHNhdmVQbGF0Zm9ybURhdGFUb0NhY2hlZEZyYW1lKFdlYkNvcmU6
OkNhY2hlZEZyYW1lKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCB0cmFuc2l0aW9uVG9Db21taXR0ZWRG
cm9tQ2FjaGVkRnJhbWUoV2ViQ29yZTo6Q2FjaGVkRnJhbWUqKSBvdmVycmlkZTsKKyAgICB2b2lk
IHNhdmVQbGF0Zm9ybURhdGFUb0NhY2hlZEZyYW1lKFdlYkNvcmU6OkNhY2hlZEZyYW1lKikgZmlu
YWw7CisgICAgdm9pZCB0cmFuc2l0aW9uVG9Db21taXR0ZWRGcm9tQ2FjaGVkRnJhbWUoV2ViQ29y
ZTo6Q2FjaGVkRnJhbWUqKSBmaW5hbDsKICNpZiBQTEFURk9STShJT1MpCi0gICAgdm9pZCBkaWRS
ZXN0b3JlRnJhbWVIaWVyYXJjaHlGb3JDYWNoZWRGcmFtZSgpIG92ZXJyaWRlOworICAgIHZvaWQg
ZGlkUmVzdG9yZUZyYW1lSGllcmFyY2h5Rm9yQ2FjaGVkRnJhbWUoKSBmaW5hbDsKICNlbmRpZgot
ICAgIHZvaWQgdHJhbnNpdGlvblRvQ29tbWl0dGVkRm9yTmV3UGFnZSgpIG92ZXJyaWRlOworICAg
IHZvaWQgdHJhbnNpdGlvblRvQ29tbWl0dGVkRm9yTmV3UGFnZSgpIGZpbmFsOwogCi0gICAgdm9p
ZCBkaWRTYXZlVG9QYWdlQ2FjaGUoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZFJlc3RvcmVGcm9t
UGFnZUNhY2hlKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRTYXZlVG9QYWdlQ2FjaGUoKSBmaW5h
bDsKKyAgICB2b2lkIGRpZFJlc3RvcmVGcm9tUGFnZUNhY2hlKCkgZmluYWw7CiAKLSAgICB2b2lk
IGRpc3BhdGNoRGlkQmVjb21lRnJhbWVzZXQoYm9vbCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNw
YXRjaERpZEJlY29tZUZyYW1lc2V0KGJvb2wpIGZpbmFsOwogCi0gICAgYm9vbCBjYW5IYW5kbGVS
ZXF1ZXN0KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGNvbnN0IG92ZXJyaWRlOwot
ICAgIGJvb2wgY2FuU2hvd01JTUVUeXBlKGNvbnN0IFdURjo6U3RyaW5nJiBNSU1FVHlwZSkgY29u
c3Qgb3ZlcnJpZGU7Ci0gICAgYm9vbCBjYW5TaG93TUlNRVR5cGVBc0hUTUwoY29uc3QgV1RGOjpT
dHJpbmcmIE1JTUVUeXBlKSBjb25zdCBvdmVycmlkZTsKLSAgICBib29sIHJlcHJlc2VudGF0aW9u
RXhpc3RzRm9yVVJMU2NoZW1lKGNvbnN0IFdURjo6U3RyaW5nJiBVUkxTY2hlbWUpIGNvbnN0IG92
ZXJyaWRlOwotICAgIFdURjo6U3RyaW5nIGdlbmVyYXRlZE1JTUVUeXBlRm9yVVJMU2NoZW1lKGNv
bnN0IFdURjo6U3RyaW5nJiBVUkxTY2hlbWUpIGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wgY2Fu
SGFuZGxlUmVxdWVzdChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBjb25zdCBmaW5h
bDsKKyAgICBib29sIGNhblNob3dNSU1FVHlwZShjb25zdCBXVEY6OlN0cmluZyYgTUlNRVR5cGUp
IGNvbnN0IGZpbmFsOworICAgIGJvb2wgY2FuU2hvd01JTUVUeXBlQXNIVE1MKGNvbnN0IFdURjo6
U3RyaW5nJiBNSU1FVHlwZSkgY29uc3QgZmluYWw7CisgICAgYm9vbCByZXByZXNlbnRhdGlvbkV4
aXN0c0ZvclVSTFNjaGVtZShjb25zdCBXVEY6OlN0cmluZyYgVVJMU2NoZW1lKSBjb25zdCBmaW5h
bDsKKyAgICBXVEY6OlN0cmluZyBnZW5lcmF0ZWRNSU1FVHlwZUZvclVSTFNjaGVtZShjb25zdCBX
VEY6OlN0cmluZyYgVVJMU2NoZW1lKSBjb25zdCBmaW5hbDsKIAotICAgIHZvaWQgZnJhbWVMb2Fk
Q29tcGxldGVkKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzYXZlVmlld1N0YXRlVG9JdGVtKFdlYkNv
cmU6Okhpc3RvcnlJdGVtJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCByZXN0b3JlVmlld1N0YXRlKCkg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBwcm92aXNpb25hbExvYWRTdGFydGVkKCkgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBkaWRGaW5pc2hMb2FkKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBwcmVwYXJlRm9yRGF0
YVNvdXJjZVJlcGxhY2VtZW50KCkgb3ZlcnJpZGU7Ci0gICAgUmVmPFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyPiBjcmVhdGVEb2N1bWVudExvYWRlcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QmLCBjb25zdCBXZWJDb3JlOjpTdWJzdGl0dXRlRGF0YSYpIG92ZXJyaWRlOwotICAgIHZvaWQg
dXBkYXRlQ2FjaGVkRG9jdW1lbnRMb2FkZXIoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXImKSBvdmVy
cmlkZSB7IH0KKyAgICB2b2lkIGZyYW1lTG9hZENvbXBsZXRlZCgpIGZpbmFsOworICAgIHZvaWQg
c2F2ZVZpZXdTdGF0ZVRvSXRlbShXZWJDb3JlOjpIaXN0b3J5SXRlbSYpIGZpbmFsOworICAgIHZv
aWQgcmVzdG9yZVZpZXdTdGF0ZSgpIGZpbmFsOworICAgIHZvaWQgcHJvdmlzaW9uYWxMb2FkU3Rh
cnRlZCgpIGZpbmFsOworICAgIHZvaWQgZGlkRmluaXNoTG9hZCgpIGZpbmFsOworICAgIHZvaWQg
cHJlcGFyZUZvckRhdGFTb3VyY2VSZXBsYWNlbWVudCgpIGZpbmFsOworICAgIFJlZjxXZWJDb3Jl
OjpEb2N1bWVudExvYWRlcj4gY3JlYXRlRG9jdW1lbnRMb2FkZXIoY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6U3Vic3RpdHV0ZURhdGEmKSBmaW5hbDsKKyAg
ICB2b2lkIHVwZGF0ZUNhY2hlZERvY3VtZW50TG9hZGVyKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
JikgZmluYWwgeyB9CiAKLSAgICB2b2lkIHNldFRpdGxlKGNvbnN0IFdlYkNvcmU6OlN0cmluZ1dp
dGhEaXJlY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpVUkwmKSBvdmVycmlkZTsKKyAgICB2b2lkIHNl
dFRpdGxlKGNvbnN0IFdlYkNvcmU6OlN0cmluZ1dpdGhEaXJlY3Rpb24mLCBjb25zdCBXZWJDb3Jl
OjpVUkwmKSBmaW5hbDsKIAotICAgIFJlZlB0cjxXZWJDb3JlOjpGcmFtZT4gY3JlYXRlRnJhbWUo
Y29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgV1RGOjpTdHJpbmcmIG5hbWUsIFdlYkNvcmU6OkhU
TUxGcmFtZU93bmVyRWxlbWVudCosCi0gICAgICAgIGNvbnN0IFdURjo6U3RyaW5nJiByZWZlcnJl
ciwgYm9vbCBhbGxvd3NTY3JvbGxpbmcsIGludCBtYXJnaW5XaWR0aCwgaW50IG1hcmdpbkhlaWdo
dCkgb3ZlcnJpZGU7Ci0gICAgUmVmUHRyPFdlYkNvcmU6OldpZGdldD4gY3JlYXRlUGx1Z2luKGNv
bnN0IFdlYkNvcmU6OkludFNpemUmLCBXZWJDb3JlOjpIVE1MUGx1Z0luRWxlbWVudCosIGNvbnN0
IFdlYkNvcmU6OlVSTCYsIGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mLAotICAgICAgICBjb25z
dCBWZWN0b3I8V1RGOjpTdHJpbmc+JiwgY29uc3QgV1RGOjpTdHJpbmcmLCBib29sKSBvdmVycmlk
ZTsKLSAgICB2b2lkIHJlY3JlYXRlUGx1Z2luKFdlYkNvcmU6OldpZGdldCopIG92ZXJyaWRlOwot
ICAgIHZvaWQgcmVkaXJlY3REYXRhVG9QbHVnaW4oV2ViQ29yZTo6V2lkZ2V0KiBwbHVnaW5XaWRn
ZXQpIG92ZXJyaWRlOworICAgIFJlZlB0cjxXZWJDb3JlOjpGcmFtZT4gY3JlYXRlRnJhbWUoY29u
c3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgV1RGOjpTdHJpbmcmIG5hbWUsIFdlYkNvcmU6OkhUTUxG
cmFtZU93bmVyRWxlbWVudCYsCisgICAgICAgIGNvbnN0IFdURjo6U3RyaW5nJiByZWZlcnJlciwg
Ym9vbCBhbGxvd3NTY3JvbGxpbmcsIGludCBtYXJnaW5XaWR0aCwgaW50IG1hcmdpbkhlaWdodCkg
ZmluYWw7CisgICAgUmVmUHRyPFdlYkNvcmU6OldpZGdldD4gY3JlYXRlUGx1Z2luKGNvbnN0IFdl
YkNvcmU6OkludFNpemUmLCBXZWJDb3JlOjpIVE1MUGx1Z0luRWxlbWVudCYsIGNvbnN0IFdlYkNv
cmU6OlVSTCYsCisgICAgICAgIGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mLCBjb25zdCBWZWN0
b3I8V1RGOjpTdHJpbmc+JiwgY29uc3QgV1RGOjpTdHJpbmcmLCBib29sKSBmaW5hbDsKKyAgICB2
b2lkIHJlY3JlYXRlUGx1Z2luKFdlYkNvcmU6OldpZGdldCopIGZpbmFsOworICAgIHZvaWQgcmVk
aXJlY3REYXRhVG9QbHVnaW4oV2ViQ29yZTo6V2lkZ2V0KiBwbHVnaW5XaWRnZXQpIGZpbmFsOwog
CiAjaWYgRU5BQkxFKFdFQkdMKQotICAgIFdlYkNvcmU6OldlYkdMTG9hZFBvbGljeSB3ZWJHTFBv
bGljeUZvclVSTChjb25zdCBTdHJpbmcmKSBjb25zdCBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpX
ZWJHTExvYWRQb2xpY3kgcmVzb2x2ZVdlYkdMUG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYpIGNv
bnN0IG92ZXJyaWRlOwotI2VuZGlmIC8vIEVOQUJMRShXRUJHTCkKKyAgICBXZWJDb3JlOjpXZWJH
TExvYWRQb2xpY3kgd2ViR0xQb2xpY3lGb3JVUkwoY29uc3QgU3RyaW5nJikgY29uc3QgZmluYWw7
CisgICAgV2ViQ29yZTo6V2ViR0xMb2FkUG9saWN5IHJlc29sdmVXZWJHTFBvbGljeUZvclVSTChj
b25zdCBTdHJpbmcmKSBjb25zdCBmaW5hbDsKKyNlbmRpZgogCi0gICAgUGFzc1JlZlB0cjxXZWJD
b3JlOjpXaWRnZXQ+IGNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgV2ViQ29yZTo6SW50U2l6
ZSYsIFdlYkNvcmU6OkhUTUxBcHBsZXRFbGVtZW50KiwgY29uc3QgV2ViQ29yZTo6VVJMJiBiYXNl
VVJMLAotICAgICAgICBjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25z
dCBWZWN0b3I8V1RGOjpTdHJpbmc+JiBwYXJhbVZhbHVlcykgb3ZlcnJpZGU7CisgICAgUmVmUHRy
PFdlYkNvcmU6OldpZGdldD4gY3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBXZWJDb3JlOjpJ
bnRTaXplJiwgV2ViQ29yZTo6SFRNTEFwcGxldEVsZW1lbnQmLCBjb25zdCBXZWJDb3JlOjpVUkwm
IGJhc2VVUkwsCisgICAgICAgIGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mIHBhcmFtTmFtZXMs
IGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mIHBhcmFtVmFsdWVzKSBmaW5hbDsKICAgICAKLSAg
ICBXZWJDb3JlOjpPYmplY3RDb250ZW50VHlwZSBvYmplY3RDb250ZW50VHlwZShjb25zdCBXZWJD
b3JlOjpVUkwmLCBjb25zdCBXVEY6OlN0cmluZyYgbWltZVR5cGUpIG92ZXJyaWRlOwotICAgIFdU
Rjo6U3RyaW5nIG92ZXJyaWRlTWVkaWFUeXBlKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgV2ViQ29y
ZTo6T2JqZWN0Q29udGVudFR5cGUgb2JqZWN0Q29udGVudFR5cGUoY29uc3QgV2ViQ29yZTo6VVJM
JiwgY29uc3QgV1RGOjpTdHJpbmcmIG1pbWVUeXBlKSBmaW5hbDsKKyAgICBXVEY6OlN0cmluZyBv
dmVycmlkZU1lZGlhVHlwZSgpIGNvbnN0IGZpbmFsOwogICAgIAotICAgIHZvaWQgZGlzcGF0Y2hE
aWRDbGVhcldpbmRvd09iamVjdEluV29ybGQoV2ViQ29yZTo6RE9NV3JhcHBlcldvcmxkJikgb3Zl
cnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERpZENsZWFyV2luZG93T2JqZWN0SW5Xb3JsZChXZWJD
b3JlOjpET01XcmFwcGVyV29ybGQmKSBmaW5hbDsKIAotICAgIHZvaWQgcmVnaXN0ZXJGb3JJY29u
Tm90aWZpY2F0aW9uKGJvb2wgbGlzdGVuKSBvdmVycmlkZTsKKyAgICB2b2lkIHJlZ2lzdGVyRm9y
SWNvbk5vdGlmaWNhdGlvbihib29sIGxpc3RlbikgZmluYWw7CiAKICNpZiBQTEFURk9STShJT1Mp
Ci0gICAgYm9vbCBzaG91bGRMb2FkTWVkaWFFbGVtZW50VVJMKGNvbnN0IFdlYkNvcmU6OlVSTCYp
IGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkTG9hZE1lZGlhRWxlbWVudFVSTChjb25z
dCBXZWJDb3JlOjpVUkwmKSBjb25zdCBmaW5hbDsKICNlbmRpZgogCi0gICAgUmVtb3RlQVhPYmpl
Y3RSZWYgYWNjZXNzaWJpbGl0eVJlbW90ZU9iamVjdCgpIG92ZXJyaWRlIHsgcmV0dXJuIDA7IH0K
KyAgICBSZW1vdGVBWE9iamVjdFJlZiBhY2Nlc3NpYmlsaXR5UmVtb3RlT2JqZWN0KCkgZmluYWwg
eyByZXR1cm4gMDsgfQogICAgIAogICAgIFJldGFpblB0cjxXZWJGcmFtZVBvbGljeUxpc3RlbmVy
PiBzZXRVcFBvbGljeUxpc3RlbmVyKFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24sIE5TVVJM
ICphcHBMaW5rVVJMID0gbmlsKTsKIAotICAgIE5TRGljdGlvbmFyeSAqYWN0aW9uRGljdGlvbmFy
eShjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJiwgUGFzc1JlZlB0cjxXZWJDb3JlOjpG
b3JtU3RhdGU+KSBjb25zdDsKKyAgICBOU0RpY3Rpb25hcnkgKmFjdGlvbkRpY3Rpb25hcnkoY29u
c3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYsIFdlYkNvcmU6OkZvcm1TdGF0ZSopIGNvbnN0
OwogICAgIAotICAgIGJvb2wgY2FuQ2FjaGVQYWdlKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9v
bCBjYW5DYWNoZVBhZ2UoKSBjb25zdCBmaW5hbDsKIAotICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6
RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKSBvdmVycmlk
ZTsKKyAgICBSZWY8V2ViQ29yZTo6RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRlTmV0d29y
a2luZ0NvbnRleHQoKSBmaW5hbDsKIAogI2lmIEVOQUJMRShSRVFVRVNUX0FVVE9DT01QTEVURSkK
LSAgICB2b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxldGUoUGFzc1JlZlB0cjxXZWJDb3JlOjpGb3Jt
U3RhdGU+KSBvdmVycmlkZSB7IH0KKyAgICB2b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxldGUoUmVm
PFdlYkNvcmU6OkZvcm1TdGF0ZT4mJikgZmluYWwgeyB9CiAjZW5kaWYKIAotICAgIGJvb2wgc2hv
dWxkUGFpbnRCcm9rZW5JbWFnZShjb25zdCBXZWJDb3JlOjpVUkwmKSBjb25zdCBvdmVycmlkZTsK
KyAgICBib29sIHNob3VsZFBhaW50QnJva2VuSW1hZ2UoY29uc3QgV2ViQ29yZTo6VVJMJikgY29u
c3QgZmluYWw7CiAKICNpZiBVU0UoUVVJQ0tfTE9PSykKLSAgICB2b2lkIGRpZENyZWF0ZVF1aWNr
TG9va0hhbmRsZShXZWJDb3JlOjpRdWlja0xvb2tIYW5kbGUmKSBvdmVycmlkZTsKKyAgICB2b2lk
IGRpZENyZWF0ZVF1aWNrTG9va0hhbmRsZShXZWJDb3JlOjpRdWlja0xvb2tIYW5kbGUmKSBmaW5h
bDsKICNlbmRpZgogCiAjaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQotICAgIHZvaWQgY29u
dGVudEZpbHRlckRpZEJsb2NrTG9hZChXZWJDb3JlOjpDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRs
ZXIpIG92ZXJyaWRlOworICAgIHZvaWQgY29udGVudEZpbHRlckRpZEJsb2NrTG9hZChXZWJDb3Jl
OjpDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXIpIGZpbmFsOwogI2VuZGlmCiAKLSAgICB2b2lk
IHByZWZldGNoRE5TKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOworICAgIHZvaWQgcHJlZmV0Y2hE
TlMoY29uc3QgU3RyaW5nJikgZmluYWw7CiAKICAgICBSZXRhaW5QdHI8V2ViRnJhbWU+IG1fd2Vi
RnJhbWU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dl
YkZyYW1lTG9hZGVyQ2xpZW50Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQv
V2ViRnJhbWVMb2FkZXJDbGllbnQubW0KaW5kZXggNGU5YjJlMjcyZDJkMzlkYWE4MGRhMGNjYTQz
ZGQyZmEwOTg5YzEwNS4uYTU0NzNlM2I4ZWU5NGI0YzE5OGJlZGE0MzRhOWMzNjEyNTQ0MTIwMSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2Fk
ZXJDbGllbnQubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJh
bWVMb2FkZXJDbGllbnQubW0KQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAy
MDA2LTIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChD
KSAyMDA2LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCkBAIC0xMjgsNyArMTI4LDcgQEAKICNpbXBvcnQgPHJ1bnRpbWUv
SW5pdGlhbGl6ZVRocmVhZGluZy5oPgogI2ltcG9ydCA8d3RmL0Jsb2NrT2JqQ0V4Y2VwdGlvbnMu
aD4KICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+Ci0jaW1wb3J0IDx3dGYvUGFzc1JlZlB0ci5o
PgorI2ltcG9ydCA8d3RmL1JlZi5oPgogI2ltcG9ydCA8d3RmL1J1bkxvb3AuaD4KICNpbXBvcnQg
PHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC04ODQsNyArODg0LDcgQEAgc3RhdGljIEJPT0wg
c2hvdWxkVHJ5QXBwTGluayhXZWJWaWV3ICp3ZWJWaWV3LCBjb25zdCBOYXZpZ2F0aW9uQWN0aW9u
JiBhY3Rpb24sIEYKICNlbmRpZgogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNw
YXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9u
JiBhY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgUGFzc1JlZlB0cjxGb3Jt
U3RhdGU+IGZvcm1TdGF0ZSwgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIEZyYW1lUG9saWN5RnVu
Y3Rpb24gZnVuY3Rpb24pCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lk
ZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24s
IGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIGNv
bnN0IFN0cmluZyYgZnJhbWVOYW1lLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQogewog
ICAgIFdlYlZpZXcgKndlYlZpZXcgPSBnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkpOwogICAg
IEJPT0wgdHJ5QXBwTGluayA9IHNob3VsZFRyeUFwcExpbmsod2ViVmlldywgYWN0aW9uLCBudWxs
cHRyKTsKQEAgLTg5Niw3ICs4OTYsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNw
YXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBOYXZpZ2F0aQogICAgICAg
ICAgICAgICAgICAgICAgICAgICBkZWNpc2lvbkxpc3RlbmVyOnNldFVwUG9saWN5TGlzdGVuZXIo
V1RGTW92ZShmdW5jdGlvbiksIHRyeUFwcExpbmsgPyAoTlNVUkwgKilyZXF1ZXN0LnVybCgpIDog
bmlsKS5nZXQoKV07CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVj
aWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rp
b24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgUGFzc1JlZlB0cjxGb3JtU3RhdGU+
IGZvcm1TdGF0ZSwgRnJhbWVQb2xpY3lGdW5jdGlvbiBmdW5jdGlvbikKK3ZvaWQgV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25z
dCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVz
dCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24pCiB7
CiAgICAgV2ViVmlldyAqd2ViVmlldyA9IGdldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSk7CiAg
ICAgQk9PTCB0cnlBcHBMaW5rID0gc2hvdWxkVHJ5QXBwTGluayh3ZWJWaWV3LCBhY3Rpb24sIGNv
cmUobV93ZWJGcmFtZS5nZXQoKSkpOwpAQCAtOTIwLDI5ICs5MjAsMjggQEAgdm9pZCBXZWJGcmFt
ZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hVbmFibGVUb0ltcGxlbWVudFBvbGljeShjb25zdCBSZXNv
dXJjZUVycm9yJgogICAgIFtbd2ViVmlldyBfcG9saWN5RGVsZWdhdGVGb3J3YXJkZXJdIHdlYlZp
ZXc6d2ViVmlldyB1bmFibGVUb0ltcGxlbWVudFBvbGljeVdpdGhFcnJvcjplcnJvciBmcmFtZTpt
X3dlYkZyYW1lLmdldCgpXTsgICAgCiB9CiAKLXN0YXRpYyBOU0RpY3Rpb25hcnkgKm1ha2VGb3Jt
RmllbGRWYWx1ZXNEaWN0aW9uYXJ5KEZvcm1TdGF0ZSogZm9ybVN0YXRlKQorc3RhdGljIE5TRGlj
dGlvbmFyeSAqbWFrZUZvcm1GaWVsZFZhbHVlc0RpY3Rpb25hcnkoRm9ybVN0YXRlJiBmb3JtU3Rh
dGUpCiB7Ci0gICAgY29uc3QgU3RyaW5nUGFpclZlY3RvciYgdGV4dEZpZWxkVmFsdWVzID0gZm9y
bVN0YXRlLT50ZXh0RmllbGRWYWx1ZXMoKTsKKyAgICBhdXRvJiB0ZXh0RmllbGRWYWx1ZXMgPSBm
b3JtU3RhdGUudGV4dEZpZWxkVmFsdWVzKCk7CiAgICAgc2l6ZV90IHNpemUgPSB0ZXh0RmllbGRW
YWx1ZXMuc2l6ZSgpOwogICAgIE5TTXV0YWJsZURpY3Rpb25hcnkgKmRpY3Rpb25hcnkgPSBbW05T
TXV0YWJsZURpY3Rpb25hcnkgYWxsb2NdIGluaXRXaXRoQ2FwYWNpdHk6c2l6ZV07Ci0gICAgZm9y
IChzaXplX3QgaSA9IDA7IGkgPCBzaXplOyArK2kpCi0gICAgICAgIFtkaWN0aW9uYXJ5IHNldE9i
amVjdDp0ZXh0RmllbGRWYWx1ZXNbaV0uc2Vjb25kIGZvcktleTp0ZXh0RmllbGRWYWx1ZXNbaV0u
Zmlyc3RdOwotCisgICAgZm9yIChhdXRvJiB2YWx1ZSA6IHRleHRGaWVsZFZhbHVlcykKKyAgICAg
ICAgW2RpY3Rpb25hcnkgc2V0T2JqZWN0OnZhbHVlLnNlY29uZCBmb3JLZXk6dmFsdWUuZmlyc3Rd
OwogICAgIHJldHVybiBbZGljdGlvbmFyeSBhdXRvcmVsZWFzZV07CiB9CiAKLXZvaWQgV2ViRnJh
bWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChQYXNzUmVmUHRyPFdl
YkNvcmU6OkZvcm1TdGF0ZT4gZm9ybVN0YXRlKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJlZjxXZWJDb3JlOjpGb3JtU3RhdGU+JiYgZm9y
bVN0YXRlKQogewogICAgIGlkIDxXZWJGb3JtRGVsZWdhdGU+IGZvcm1EZWxlZ2F0ZSA9IFtnZXRX
ZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkpIF9mb3JtRGVsZWdhdGVdOwogICAgIGlmICghZm9ybURl
bGVnYXRlKQogICAgICAgICByZXR1cm47CiAKLSAgICBET01IVE1MRm9ybUVsZW1lbnQgKmZvcm1F
bGVtZW50ID0ga2l0KGZvcm1TdGF0ZS0+Zm9ybSgpKTsKKyAgICBET01IVE1MRm9ybUVsZW1lbnQg
KmZvcm1FbGVtZW50ID0ga2l0KCZmb3JtU3RhdGUtPmZvcm0oKSk7CiAgICAgTlNEaWN0aW9uYXJ5
ICp2YWx1ZXMgPSBtYWtlRm9ybUZpZWxkVmFsdWVzRGljdGlvbmFyeShmb3JtU3RhdGUuZ2V0KCkp
OwogICAgIENhbGxGb3JtRGVsZWdhdGUoZ2V0V2ViVmlldyhtX3dlYkZyYW1lLmdldCgpKSwgQHNl
bGVjdG9yKHdpbGxTZW5kU3VibWl0RXZlbnRUb0Zvcm06aW5GcmFtZTp3aXRoVmFsdWVzOiksIGZv
cm1FbGVtZW50LCBtX3dlYkZyYW1lLmdldCgpLCB2YWx1ZXMpOwogfQogCi12b2lkIFdlYkZyYW1l
TG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKFBhc3NSZWZQdHI8Rm9ybVN0YXRl
PiBmb3JtU3RhdGUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24pCit2b2lkIFdlYkZyYW1l
TG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKEZvcm1TdGF0ZSYgZm9ybVN0YXRl
LCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQogewogICAgIGlkIDxXZWJGb3JtRGVsZWdh
dGU+IGZvcm1EZWxlZ2F0ZSA9IFtnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkpIF9mb3JtRGVs
ZWdhdGVdOwogICAgIGlmICghZm9ybURlbGVnYXRlKSB7CkBAIC05NTAsOCArOTQ5LDggQEAgdm9p
ZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShQYXNzUmVmUHRy
PEZvcm1TdGF0ZT4gZm9ybVN0YXQKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIE5TRGlj
dGlvbmFyeSAqdmFsdWVzID0gbWFrZUZvcm1GaWVsZFZhbHVlc0RpY3Rpb25hcnkoZm9ybVN0YXRl
LmdldCgpKTsKLSAgICBDYWxsRm9ybURlbGVnYXRlKGdldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQo
KSksIEBzZWxlY3RvcihmcmFtZTpzb3VyY2VGcmFtZTp3aWxsU3VibWl0Rm9ybTp3aXRoVmFsdWVz
OnN1Ym1pc3Npb25MaXN0ZW5lcjopLCBtX3dlYkZyYW1lLmdldCgpLCBraXQoZm9ybVN0YXRlLT5z
b3VyY2VEb2N1bWVudCgpLT5mcmFtZSgpKSwga2l0KGZvcm1TdGF0ZS0+Zm9ybSgpKSwgdmFsdWVz
LCBzZXRVcFBvbGljeUxpc3RlbmVyKFdURk1vdmUoZnVuY3Rpb24pKS5nZXQoKSk7CisgICAgTlNE
aWN0aW9uYXJ5ICp2YWx1ZXMgPSBtYWtlRm9ybUZpZWxkVmFsdWVzRGljdGlvbmFyeShmb3JtU3Rh
dGUpOworICAgIENhbGxGb3JtRGVsZWdhdGUoZ2V0V2ViVmlldyhtX3dlYkZyYW1lLmdldCgpKSwg
QHNlbGVjdG9yKGZyYW1lOnNvdXJjZUZyYW1lOndpbGxTdWJtaXRGb3JtOndpdGhWYWx1ZXM6c3Vi
bWlzc2lvbkxpc3RlbmVyOiksIG1fd2ViRnJhbWUuZ2V0KCksIGtpdChmb3JtU3RhdGUuc291cmNl
RG9jdW1lbnQoKS5mcmFtZSgpKSwga2l0KCZmb3JtU3RhdGUuZm9ybSgpKSwgdmFsdWVzLCBzZXRV
cFBvbGljeUxpc3RlbmVyKFdURk1vdmUoZnVuY3Rpb24pKS5nZXQoKSk7CiB9CiAKIHZvaWQgV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OnJldmVydFRvUHJvdmlzaW9uYWxTdGF0ZShEb2N1bWVudExvYWRl
ciogbG9hZGVyKQpAQCAtMTU1Miw3ICsxNTUxLDcgQEAgc3RhdGljIGNvbnN0IE1vdXNlRXZlbnQq
IGZpbmRNb3VzZUV2ZW50KGNvbnN0IEV2ZW50KiBldmVudCkKICAgICByZXR1cm4gMDsKIH0KIAot
TlNEaWN0aW9uYXJ5ICpXZWJGcmFtZUxvYWRlckNsaWVudDo6YWN0aW9uRGljdGlvbmFyeShjb25z
dCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiBmb3JtU3Rh
dGUpIGNvbnN0CitOU0RpY3Rpb25hcnkgKldlYkZyYW1lTG9hZGVyQ2xpZW50OjphY3Rpb25EaWN0
aW9uYXJ5KGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIGFjdGlvbiwgRm9ybVN0YXRlKiBmb3JtU3Rh
dGUpIGNvbnN0CiB7CiAgICAgdW5zaWduZWQgbW9kaWZpZXJGbGFncyA9IDA7CiAgICAgY29uc3Qg
RXZlbnQqIGV2ZW50ID0gYWN0aW9uLmV2ZW50KCk7CkBAIC0xNTkzLDEwICsxNTkyLDggQEAgTlNE
aWN0aW9uYXJ5ICpXZWJGcmFtZUxvYWRlckNsaWVudDo6YWN0aW9uRGljdGlvbmFyeShjb25zdCBO
YXZpZ2F0aW9uQWN0aW9uJiBhY3QKICAgICAgICAgICAgIFtyZXN1bHQgc2V0T2JqZWN0OltOU051
bWJlciBudW1iZXJXaXRoSW50OldlYkNvcmU6Ok5vQnV0dG9uXSBmb3JLZXk6V2ViQWN0aW9uQnV0
dG9uS2V5XTsKICAgICB9CiAKLSAgICBpZiAoZm9ybVN0YXRlKSB7Ci0gICAgICAgIEFTU0VSVChm
b3JtU3RhdGUtPmZvcm0oKSk7Ci0gICAgICAgIFtyZXN1bHQgc2V0T2JqZWN0OmtpdChmb3JtU3Rh
dGUtPmZvcm0oKSkgZm9yS2V5OldlYkFjdGlvbkZvcm1LZXldOwotICAgIH0KKyAgICBpZiAoZm9y
bVN0YXRlKQorICAgICAgICBbcmVzdWx0IHNldE9iamVjdDpraXQoJmZvcm1TdGF0ZS0+Zm9ybSgp
KSBmb3JLZXk6V2ViQWN0aW9uRm9ybUtleV07CiAKICAgICByZXR1cm4gcmVzdWx0OwogfQpAQCAt
MTYyMiw3ICsxNjE5LDcgQEAgYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y2FuQ2FjaGVQYWdl
KCkgY29uc3QKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotUmVmUHRyPEZyYW1lPiBXZWJGcmFtZUxv
YWRlckNsaWVudDo6Y3JlYXRlRnJhbWUoY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgbmFt
ZSwgSFRNTEZyYW1lT3duZXJFbGVtZW50KiBvd25lckVsZW1lbnQsCitSZWZQdHI8RnJhbWU+IFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVGcmFtZShjb25zdCBVUkwmIHVybCwgY29uc3QgU3Ry
aW5nJiBuYW1lLCBIVE1MRnJhbWVPd25lckVsZW1lbnQmIG93bmVyRWxlbWVudCwKICAgICBjb25z
dCBTdHJpbmcmIHJlZmVycmVyLCBib29sIGFsbG93c1Njcm9sbGluZywgaW50IG1hcmdpbldpZHRo
LCBpbnQgbWFyZ2luSGVpZ2h0KQogewogICAgIEJFR0lOX0JMT0NLX09CSkNfRVhDRVBUSU9OUzsK
QEAgLTE2MzEsNyArMTYyOCw3IEBAIFJlZlB0cjxGcmFtZT4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIG5hCiAgICAgCiAgICAg
V2ViRnJhbWVWaWV3ICpjaGlsZFZpZXcgPSBbW1dlYkZyYW1lVmlldyBhbGxvY10gaW5pdF07CiAg
ICAgCi0gICAgUmVmUHRyPEZyYW1lPiByZXN1bHQgPSBbV2ViRnJhbWUgX2NyZWF0ZVN1YmZyYW1l
V2l0aE93bmVyRWxlbWVudDpvd25lckVsZW1lbnQgZnJhbWVOYW1lOm5hbWUgZnJhbWVWaWV3OmNo
aWxkVmlld107CisgICAgUmVmUHRyPEZyYW1lPiByZXN1bHQgPSBbV2ViRnJhbWUgX2NyZWF0ZVN1
YmZyYW1lV2l0aE93bmVyRWxlbWVudDomb3duZXJFbGVtZW50IGZyYW1lTmFtZTpuYW1lIGZyYW1l
VmlldzpjaGlsZFZpZXddOwogICAgIFtjaGlsZFZpZXcgcmVsZWFzZV07CiAKICAgICBXZWJGcmFt
ZSAqbmV3RnJhbWUgPSBraXQocmVzdWx0LmdldCgpKTsKQEAgLTE5MDksNyArMTkwNiw3IEBAIHN0
YXRpYyBib29sIHNob3VsZEJsb2NrUGx1Z2luKFdlYkJhc2VQbHVnaW5QYWNrYWdlICpwbHVnaW5Q
YWNrYWdlKQogI2VuZGlmCiB9CiAKLVJlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50
OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYgc2l6ZSwgSFRNTFBsdWdJbkVsZW1lbnQqIGVs
ZW1lbnQsIGNvbnN0IFVSTCYgdXJsLAorUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiBzaXplLCBIVE1MUGx1Z0luRWxlbWVudCYg
ZWxlbWVudCwgY29uc3QgVVJMJiB1cmwsCiAgICAgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFt
TmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcywgY29uc3QgU3RyaW5nJiBt
aW1lVHlwZSwgYm9vbCBsb2FkTWFudWFsbHkpCiB7CiAgICAgQkVHSU5fQkxPQ0tfT0JKQ19FWENF
UFRJT05TOwpAQCAtMTk0OCw3ICsxOTQ1LDcgQEAgUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiBzaXplLCBIVE1MUGx1Z0kKICAg
ICAgICAgICAgIGF0dHJpYnV0ZXMsIFdlYlBsdWdJbkF0dHJpYnV0ZXNLZXksCiAgICAgICAgICAg
ICBbTlNOdW1iZXIgbnVtYmVyV2l0aEludDpsb2FkTWFudWFsbHkgPyBXZWJQbHVnSW5Nb2RlRnVs
bCA6IFdlYlBsdWdJbk1vZGVFbWJlZF0sIFdlYlBsdWdJbk1vZGVLZXksCiAgICAgICAgICAgICBb
TlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6IWxvYWRNYW51YWxseV0sIFdlYlBsdWdJblNob3VsZExv
YWRNYWluUmVzb3VyY2VLZXksCi0gICAgICAgICAgICBraXQoZWxlbWVudCksIFdlYlBsdWdJbkNv
bnRhaW5pbmdFbGVtZW50S2V5LAorICAgICAgICAgICAga2l0KCZlbGVtZW50KSwgV2ViUGx1Z0lu
Q29udGFpbmluZ0VsZW1lbnRLZXksCiAgICAgICAgICAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIGJl
IHBhc3NpbmcgYmFzZSBVUkwsIHNlZSA8aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTM1MjE1Pi4KICAgICAgICAgICAgIHBsdWdpblVSTCwgV2ViUGx1Z0luQmFzZVVSTEtl
eSwgLy8gcGx1Z2luVVJMIG1pZ2h0IGJlIG5pbCwgc28gYWRkIGl0IGxhc3QKICAgICAgICAgICAg
IG5pbF07CkBAIC0xOTk0LDExICsxOTkxLDExIEBAIFJlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYgc2l6ZSwgSFRNTFBsdWdJCiAg
ICAgaWYgKHBsdWdpblBhY2thZ2UpIHsKICAgICAgICAgaWYgKHNob3VsZEJsb2NrUGx1Z2luKHBs
dWdpblBhY2thZ2UpKSB7CiAgICAgICAgICAgICBlcnJvckNvZGUgPSBXZWJLaXRFcnJvckJsb2Nr
ZWRQbHVnSW5WZXJzaW9uOwotICAgICAgICAgICAgaWYgKGlzPFJlbmRlckVtYmVkZGVkT2JqZWN0
PihlbGVtZW50LT5yZW5kZXJlcigpKSkKLSAgICAgICAgICAgICAgICBkb3duY2FzdDxSZW5kZXJF
bWJlZGRlZE9iamVjdD4oKmVsZW1lbnQtPnJlbmRlcmVyKCkpLnNldFBsdWdpblVuYXZhaWxhYmls
aXR5UmVhc29uKFJlbmRlckVtYmVkZGVkT2JqZWN0OjpJbnNlY3VyZVBsdWdpblZlcnNpb24pOwor
ICAgICAgICAgICAgaWYgKGlzPFJlbmRlckVtYmVkZGVkT2JqZWN0PihlbGVtZW50LnJlbmRlcmVy
KCkpKQorICAgICAgICAgICAgICAgIGRvd25jYXN0PFJlbmRlckVtYmVkZGVkT2JqZWN0PigqZWxl
bWVudC5yZW5kZXJlcigpKS5zZXRQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbihSZW5kZXJFbWJl
ZGRlZE9iamVjdDo6SW5zZWN1cmVQbHVnaW5WZXJzaW9uKTsKICAgICAgICAgfSBlbHNlIHsKICAg
ICAgICAgICAgIGlmIChbcGx1Z2luUGFja2FnZSBpc0tpbmRPZkNsYXNzOltXZWJQbHVnaW5QYWNr
YWdlIGNsYXNzXV0pCi0gICAgICAgICAgICAgICAgdmlldyA9IHBsdWdpblZpZXcobV93ZWJGcmFt
ZS5nZXQoKSwgKFdlYlBsdWdpblBhY2thZ2UgKilwbHVnaW5QYWNrYWdlLCBhdHRyaWJ1dGVLZXlz
LCBraXQocGFyYW1WYWx1ZXMpLCBiYXNlVVJMLCBraXQoZWxlbWVudCksIGxvYWRNYW51YWxseSk7
CisgICAgICAgICAgICAgICAgdmlldyA9IHBsdWdpblZpZXcobV93ZWJGcmFtZS5nZXQoKSwgKFdl
YlBsdWdpblBhY2thZ2UgKilwbHVnaW5QYWNrYWdlLCBhdHRyaWJ1dGVLZXlzLCBraXQocGFyYW1W
YWx1ZXMpLCBiYXNlVVJMLCBraXQoJmVsZW1lbnQpLCBsb2FkTWFudWFsbHkpOwogI2lmIEVOQUJM
RShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgICAgICAgICAgZWxzZSBpZiAoW3BsdWdpblBhY2th
Z2UgaXNLaW5kT2ZDbGFzczpbV2ViTmV0c2NhcGVQbHVnaW5QYWNrYWdlIGNsYXNzXV0pIHsKICAg
ICAgICAgICAgICAgICBXZWJCYXNlTmV0c2NhcGVQbHVnaW5WaWV3ICpwbHVnaW5WaWV3ID0gW1tb
TkVUU0NBUEVfUExVR0lOX1ZJRVcgYWxsb2NdCkBAIC0yMDEwLDcgKzIwMDcsNyBAQCBSZWZQdHI8
V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlUGx1Z2luKGNvbnN0IEludFNpemUm
IHNpemUsIEhUTUxQbHVnSQogICAgICAgICAgICAgICAgICAgICBhdHRyaWJ1dGVLZXlzOmF0dHJp
YnV0ZUtleXMKICAgICAgICAgICAgICAgICAgICAgYXR0cmlidXRlVmFsdWVzOmtpdChwYXJhbVZh
bHVlcykKICAgICAgICAgICAgICAgICAgICAgbG9hZE1hbnVhbGx5OmxvYWRNYW51YWxseQotICAg
ICAgICAgICAgICAgICAgICBlbGVtZW50OmVsZW1lbnRdIGF1dG9yZWxlYXNlXTsKKyAgICAgICAg
ICAgICAgICAgICAgZWxlbWVudDomZWxlbWVudF0gYXV0b3JlbGVhc2VdOwogCiAgICAgICAgICAg
ICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBOZXRzY2FwZVBsdWdpbldpZGdldChwbHVnaW5WaWV3
KSk7CiAgICAgICAgICAgICB9CkBAIC0yMDgxLDcgKzIwNzgsNyBAQCB2b2lkIFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpyZWRpcmVjdERhdGFUb1BsdWdpbihXaWRnZXQqIHBsdWdpbldpZGdldCkKICAg
ICBFTkRfQkxPQ0tfT0JKQ19FWENFUFRJT05TOwogfQogICAgIAotUGFzc1JlZlB0cjxXaWRnZXQ+
IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNp
emUmIHNpemUsIEhUTUxBcHBsZXRFbGVtZW50KiBlbGVtZW50LCBjb25zdCBVUkwmIGJhc2VVUkws
IAorUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUphdmFBcHBsZXRX
aWRnZXQoY29uc3QgSW50U2l6ZSYgc2l6ZSwgSFRNTEFwcGxldEVsZW1lbnQmIGVsZW1lbnQsIGNv
bnN0IFVSTCYgYmFzZVVSTCwKICAgICBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywg
Y29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKQogewogICAgIEJFR0lOX0JMT0NLX09C
SkNfRVhDRVBUSU9OUzsKQEAgLTIwOTksOCArMjA5Niw4IEBAIFBhc3NSZWZQdHI8V2lkZ2V0PiBX
ZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXpl
JiBzCiAgICAgaWYgKHBsdWdpblBhY2thZ2UpIHsKICAgICAgICAgaWYgKHNob3VsZEJsb2NrUGx1
Z2luKHBsdWdpblBhY2thZ2UpKSB7CiAgICAgICAgICAgICBlcnJvckNvZGUgPSBXZWJLaXRFcnJv
ckJsb2NrZWRQbHVnSW5WZXJzaW9uOwotICAgICAgICAgICAgaWYgKGlzPFJlbmRlckVtYmVkZGVk
T2JqZWN0PihlbGVtZW50LT5yZW5kZXJlcigpKSkKLSAgICAgICAgICAgICAgICBkb3duY2FzdDxS
ZW5kZXJFbWJlZGRlZE9iamVjdD4oKmVsZW1lbnQtPnJlbmRlcmVyKCkpLnNldFBsdWdpblVuYXZh
aWxhYmlsaXR5UmVhc29uKFJlbmRlckVtYmVkZGVkT2JqZWN0OjpJbnNlY3VyZVBsdWdpblZlcnNp
b24pOworICAgICAgICAgICAgaWYgKGlzPFJlbmRlckVtYmVkZGVkT2JqZWN0PihlbGVtZW50LnJl
bmRlcmVyKCkpKQorICAgICAgICAgICAgICAgIGRvd25jYXN0PFJlbmRlckVtYmVkZGVkT2JqZWN0
PigqZWxlbWVudC5yZW5kZXJlcigpKS5zZXRQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbihSZW5k
ZXJFbWJlZGRlZE9iamVjdDo6SW5zZWN1cmVQbHVnaW5WZXJzaW9uKTsKICAgICAgICAgfSBlbHNl
IHsKICNpZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKICAgICAgICAgICAgIGlmIChbcGx1
Z2luUGFja2FnZSBpc0tpbmRPZkNsYXNzOltXZWJOZXRzY2FwZVBsdWdpblBhY2thZ2UgY2xhc3Nd
XSkgewpAQCAtMjExMiw3ICsyMTA5LDcgQEAgUGFzc1JlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmIHMKICAgICAg
ICAgICAgICAgICAgICAgYXR0cmlidXRlS2V5czpraXQocGFyYW1OYW1lcykKICAgICAgICAgICAg
ICAgICAgICAgYXR0cmlidXRlVmFsdWVzOmtpdChwYXJhbVZhbHVlcykKICAgICAgICAgICAgICAg
ICAgICAgbG9hZE1hbnVhbGx5Ok5PCi0gICAgICAgICAgICAgICAgICAgIGVsZW1lbnQ6ZWxlbWVu
dF0gYXV0b3JlbGVhc2VdOworICAgICAgICAgICAgICAgICAgICBlbGVtZW50OiZlbGVtZW50XSBh
dXRvcmVsZWFzZV07CiAgICAgICAgICAgICAgICAgaWYgKHZpZXcpCiAgICAgICAgICAgICAgICAg
ICAgIHJldHVybiBhZG9wdFJlZihuZXcgTmV0c2NhcGVQbHVnaW5XaWRnZXQoc3RhdGljX2Nhc3Q8
V2ViQmFzZU5ldHNjYXBlUGx1Z2luVmlldyAqPih2aWV3KSkpOwogICAgICAgICAgICAgfQpAQCAt
MjIwOSw3ICsyMjA2LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6cmVnaXN0ZXJGb3JJ
Y29uTm90aWZpY2F0aW9uKGJvb2wgbGlzdGVuKQogI2VuZGlmCiB9CiAKLVBhc3NSZWZQdHI8RnJh
bWVOZXR3b3JraW5nQ29udGV4dD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtp
bmdDb250ZXh0KCkKK1JlZjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBXZWJGcmFtZUxvYWRlckNs
aWVudDo6Y3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKQogewogICAgIHJldHVybiBXZWJGcmFtZU5l
dHdvcmtpbmdDb250ZXh0OjpjcmVhdGUoY29yZShtX3dlYkZyYW1lLmdldCgpKSk7CiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtp
bmdDb250ZXh0LmggYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZU5l
dHdvcmtpbmdDb250ZXh0LmgKaW5kZXggYjA4ZDU2ZTE4YzljOGVlNjQxODBhMjE0ZjVmYmIwZWRl
MDRmNWE0ZC4uOTdlMGVhZDlmMDhiN2YzNjEyNzhhM2Q3NTZkNjI4YTVmYWVhYTkxNiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVOZXR3b3JraW5n
Q29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1l
TmV0d29ya2luZ0NvbnRleHQuaApAQCAtMjMsMTYgKzIzLDE1IEBACiAgKiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBXZWJGcmFtZU5ldHdvcmtpbmdDb250
ZXh0X2gKLSNkZWZpbmUgV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dF9oCisjcHJhZ21hIG9uY2UK
IAogI2luY2x1ZGUgPFdlYkNvcmUvRnJhbWVOZXR3b3JraW5nQ29udGV4dC5oPgogCiBjbGFzcyBX
ZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0IDogcHVibGljIFdlYkNvcmU6OkZyYW1lTmV0d29ya2lu
Z0NvbnRleHQgewogcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFdlYkZyYW1lTmV0d29y
a2luZ0NvbnRleHQ+IGNyZWF0ZShXZWJDb3JlOjpGcmFtZSogZnJhbWUpCisgICAgc3RhdGljIFJl
ZjxXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBjcmVhdGUoV2ViQ29yZTo6RnJhbWUqIGZyYW1l
KQogICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBXZWJGcmFtZU5ldHdvcmtpbmdD
b250ZXh0KGZyYW1lKSk7CisgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYkZyYW1lTmV0
d29ya2luZ0NvbnRleHQoZnJhbWUpKTsKICAgICB9CiAKICAgICBzdGF0aWMgV2ViQ29yZTo6TmV0
d29ya1N0b3JhZ2VTZXNzaW9uJiBlbnN1cmVQcml2YXRlQnJvd3NpbmdTZXNzaW9uKCk7CkBAIC01
MSw3ICs1MCw0IEBAIHByaXZhdGU6CiAgICAgU3RyaW5nIHNvdXJjZUFwcGxpY2F0aW9uSWRlbnRp
ZmllcigpIGNvbnN0IG92ZXJyaWRlOwogICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgYmxvY2tl
ZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGNvbnN0IG92ZXJyaWRlOwog
ICAgIFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgc3RvcmFnZVNlc3Npb24oKSBjb25z
dCBvdmVycmlkZTsKLQogfTsKLQotI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21h
Yy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0Lm1tIGIvU291cmNlL1dl
YktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dC5tbQppbmRl
eCA5M2U3NGJiZTYyODRiNjNjMjMyMTI5ZDE3NDhlMGQ5MTYyZDFhMTljLi5lZWY3MDJjNTZmZDBl
ZDY3ZDM3MGYzNGE2Njk5ZTI1MzY3MmQ4MDRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21h
Yy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0Lm1tCisrKyBiL1NvdXJj
ZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQubW0K
QEAgLTQ3LDE2ICs0NywxMyBAQCB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIE5ldHdvcmtTdG9y
YWdlU2Vzc2lvbiYgV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dDo6ZW5zdXJlUHJpdmF0ZUJyb3dz
aW5nU2Vzc2lvbigpCiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKLQogICAgIE5ldHdv
cmtTdG9yYWdlU2Vzc2lvbjo6ZW5zdXJlUHJpdmF0ZUJyb3dzaW5nU2Vzc2lvbihTZXNzaW9uSUQ6
OmxlZ2FjeVByaXZhdGVTZXNzaW9uSUQoKSwgW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBidW5kbGVJ
ZGVudGlmaWVyXSk7Ci0KICAgICByZXR1cm4gKk5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6c3RvcmFn
ZVNlc3Npb24oU2Vzc2lvbklEOjpsZWdhY3lQcml2YXRlU2Vzc2lvbklEKCkpOwogfQogCiB2b2lk
IFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQ6OmRlc3Ryb3lQcml2YXRlQnJvd3NpbmdTZXNzaW9u
KCkKIHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwotCiAgICAgTmV0d29ya1N0b3JhZ2VT
ZXNzaW9uOjpkZXN0cm95U2Vzc2lvbihTZXNzaW9uSUQ6OmxlZ2FjeVByaXZhdGVTZXNzaW9uSUQo
KSk7CiB9CiAKQEAgLTY4LDE5ICs2NSwxOSBAQCBib29sIFdlYkZyYW1lTmV0d29ya2luZ0NvbnRl
eHQ6OmxvY2FsRmlsZUNvbnRlbnRTbmlmZmluZ0VuYWJsZWQoKSBjb25zdAogU2NoZWR1bGVQYWly
SGFzaFNldCogV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dDo6c2NoZWR1bGVkUnVuTG9vcFBhaXJz
KCkgY29uc3QKIHsKICAgICBpZiAoIWZyYW1lKCkgfHwgIWZyYW1lKCktPnBhZ2UoKSkKLSAgICAg
ICAgcmV0dXJuIDA7CisgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIHJldHVybiBmcmFtZSgp
LT5wYWdlKCktPnNjaGVkdWxlZFJ1bkxvb3BQYWlycygpOwogfQogCiBSZXRhaW5QdHI8Q0ZEYXRh
UmVmPiBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0Ojpzb3VyY2VBcHBsaWNhdGlvbkF1ZGl0RGF0
YSgpIGNvbnN0CiB7CiAgICAgaWYgKCFmcmFtZSgpIHx8ICFmcmFtZSgpLT5wYWdlKCkpCi0gICAg
ICAgIHJldHVybiAwOworICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICAKICAgICBXZWJWaWV3
ICp3ZWJ2aWV3ID0ga2l0KGZyYW1lKCktPnBhZ2UoKSk7Ci0gICAgCiAgICAgaWYgKCF3ZWJ2aWV3
KQotICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKICAgICByZXR1
cm4gcmVpbnRlcnByZXRfY2FzdDxDRkRhdGFSZWY+KHdlYnZpZXcuX3NvdXJjZUFwcGxpY2F0aW9u
QXVkaXREYXRhKTsKIH0KIApAQCAtOTgsNyArOTUsNyBAQCBOZXR3b3JrU3RvcmFnZVNlc3Npb24m
IFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQ6OnN0b3JhZ2VTZXNzaW9uKCkgY29uc3QKIHsKICAg
ICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwogICAgIGlmIChmcmFtZSgpICYmIGZyYW1lKCktPnBh
Z2UoKS0+c2Vzc2lvbklEKCkuaXNFcGhlbWVyYWwoKSkgewotICAgICAgICBpZiAoTmV0d29ya1N0
b3JhZ2VTZXNzaW9uKiBzZXNzaW9uID0gTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpzdG9yYWdlU2Vz
c2lvbihTZXNzaW9uSUQ6OmxlZ2FjeVByaXZhdGVTZXNzaW9uSUQoKSkpCisgICAgICAgIGlmIChh
dXRvKiBzZXNzaW9uID0gTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpzdG9yYWdlU2Vzc2lvbihTZXNz
aW9uSUQ6OmxlZ2FjeVByaXZhdGVTZXNzaW9uSUQoKSkpCiAgICAgICAgICAgICByZXR1cm4gKnNl
c3Npb247CiAgICAgICAgIC8vIFNvbWUgcmVxdWVzdHMgbWF5IHN0aWxsIGJlIGNvbWluZyBzaG9y
dGx5IGJlZm9yZSBXZWJDb3JlIHVwZGF0ZXMgdGhlIHNlc3Npb24gSUQgYW5kIGFmdGVyIFdlYktp
dCBkZXN0cm95cyB0aGUgcHJpdmF0ZSBicm93c2luZyBzZXNzaW9uLgogICAgICAgICBMT0dfRVJS
T1IoIkludmFsaWQgc2Vzc2lvbiBJRC4gUGxlYXNlIGZpbGUgYSBidWcgdW5sZXNzIHlvdSBqdXN0
IGRpc2FibGVkIHByaXZhdGUgYnJvd3NpbmcsIGluIHdoaWNoIGNhc2UgaXQncyBhbiBleHBlY3Rl
ZCByYWNlLiIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQv
V2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIuaCBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVT
dXBwb3J0L1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLmgKaW5kZXggYWNjNjJjYWQ3NDAxYzU1
ZGZjNzgwODdhZWM5ZmJiYjRiYWNjMjk1Mi4uMGU0MGFhMmVkMjU5M2QxNzVjNTBkOGQwN2EyN2Fi
MDZkZTFkMWU1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQv
V2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJD
b3JlU3VwcG9ydC9XZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lci5oCkBAIC0xLDUgKzEsNSBAQAog
LyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCBBcHBsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yNCw3ICsyNCw3IEBACiAg
Ki8KIAogI2ltcG9ydCAiV2ViVUlEZWxlZ2F0ZS5oIgotI2ltcG9ydCA8d3RmL0ZvcndhcmQuaD4K
KyNpbXBvcnQgPHd0Zi9SZWZQdHIuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgRmls
ZUNob29zZXI7CkBAIC0zMiw5ICszMiw5IEBAIGNsYXNzIEZpbGVDaG9vc2VyOwogCiBAaW50ZXJm
YWNlIFdlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyIDogTlNPYmplY3QgPFdlYk9wZW5QYW5lbFJl
c3VsdExpc3RlbmVyPgogewotICAgIFdlYkNvcmU6OkZpbGVDaG9vc2VyKiBfY2hvb3NlcjsKKyAg
ICBSZWZQdHI8V2ViQ29yZTo6RmlsZUNob29zZXI+IF9jaG9vc2VyOwogfQogCi0tIChpZClpbml0
V2l0aENob29zZXI6KFBhc3NSZWZQdHI8V2ViQ29yZTo6RmlsZUNob29zZXI+KWNob29zZXI7Cist
IChpZClpbml0V2l0aENob29zZXI6KFdlYkNvcmU6OkZpbGVDaG9vc2VyJiljaG9vc2VyOwogCiBA
ZW5kCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJPcGVu
UGFuZWxSZXN1bHRMaXN0ZW5lci5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0
L1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLm1tCmluZGV4IGI2YmQyNjdiZGVkODFhN2I0Zjg3
ZmQ4Y2YzY2RkMDBhYzQxMmE4ZWEuLjhiMjUyMDkwNzAzYWU0N2Q3YmJhZmFhNjViMzI2ZmVlZmNj
MzA0N2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYk9w
ZW5QYW5lbFJlc3VsdExpc3RlbmVyLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVT
dXBwb3J0L1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLm1tCkBAIC0zNiwzMCArMzYsMTggQEAg
dXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKIEBpbXBsZW1lbnRhdGlvbiBXZWJPcGVuUGFuZWxS
ZXN1bHRMaXN0ZW5lcgogCi0tIChpZClpbml0V2l0aENob29zZXI6KFBhc3NSZWZQdHI8RmlsZUNo
b29zZXI+KWNob29zZXIKKy0gKGlkKWluaXRXaXRoQ2hvb3NlcjooRmlsZUNob29zZXImKWNob29z
ZXIKIHsKICAgICBzZWxmID0gW3N1cGVyIGluaXRdOwogICAgIGlmICghc2VsZikKICAgICAgICAg
cmV0dXJuIG5pbDsKLSAgICBfY2hvb3NlciA9IGNob29zZXIubGVha1JlZigpOworICAgIF9jaG9v
c2VyID0gJmNob29zZXI7CiAgICAgcmV0dXJuIHNlbGY7CiB9CiAKLSNpZm5kZWYgTkRFQlVHCi0t
ICh2b2lkKWRlYWxsb2MKLXsKLSAgICBBU1NFUlQoIV9jaG9vc2VyKTsKLSAgICBbc3VwZXIgZGVh
bGxvY107Ci19Ci0jZW5kaWYKLQogLSAodm9pZCljYW5jZWwKIHsKLSAgICBBU1NFUlQoX2Nob29z
ZXIpOwotICAgIGlmICghX2Nob29zZXIpCi0gICAgICAgIHJldHVybjsKLSAgICBfY2hvb3Nlci0+
ZGVyZWYoKTsKLSAgICBfY2hvb3NlciA9IDA7CisgICAgX2Nob29zZXIgPSBudWxscHRyOwogfQog
CiAtICh2b2lkKWNob29zZUZpbGVuYW1lOihOU1N0cmluZyAqKWZpbGVuYW1lCkBAIC02OCw4ICs1
Niw3IEBAIC0gKHZvaWQpY2hvb3NlRmlsZW5hbWU6KE5TU3RyaW5nICopZmlsZW5hbWUKICAgICBp
ZiAoIV9jaG9vc2VyKQogICAgICAgICByZXR1cm47CiAgICAgX2Nob29zZXItPmNob29zZUZpbGUo
ZmlsZW5hbWUpOwotICAgIF9jaG9vc2VyLT5kZXJlZigpOwotICAgIF9jaG9vc2VyID0gMDsKKyAg
ICBfY2hvb3NlciA9IG51bGxwdHI7CiB9CiAKIC0gKHZvaWQpY2hvb3NlRmlsZW5hbWVzOihOU0Fy
cmF5ICopZmlsZW5hbWVzCkBAIC04MiwxMSArNjksMTEgQEAgLSAodm9pZCljaG9vc2VGaWxlbmFt
ZXM6KE5TQXJyYXkgKilmaWxlbmFtZXMKICAgICBmb3IgKE5TVUludGVnZXIgaSA9IDA7IGkgPCBj
b3VudDsgaSsrKQogICAgICAgICBuYW1lc1tpXSA9IFtmaWxlbmFtZXMgb2JqZWN0QXRJbmRleDpp
XTsKICAgICBfY2hvb3Nlci0+Y2hvb3NlRmlsZXMobmFtZXMpOwotICAgIF9jaG9vc2VyLT5kZXJl
ZigpOwotICAgIF9jaG9vc2VyID0gMDsKKyAgICBfY2hvb3NlciA9IG51bGxwdHI7CiB9CiAKICNp
ZiBQTEFURk9STShJT1MpCisKIC0gKHZvaWQpY2hvb3NlRmlsZW5hbWU6KE5TU3RyaW5nICopZmls
ZW5hbWUgZGlzcGxheVN0cmluZzooTlNTdHJpbmcgKilkaXNwbGF5U3RyaW5nIGljb25JbWFnZToo
Q0dJbWFnZVJlZilpbWFnZVJlZgogewogICAgIFtzZWxmIGNob29zZUZpbGVuYW1lczpbTlNBcnJh
eSBhcnJheVdpdGhPYmplY3Q6ZmlsZW5hbWVdIGRpc3BsYXlTdHJpbmc6ZGlzcGxheVN0cmluZyBp
Y29uSW1hZ2U6aW1hZ2VSZWZdOwpAQCAtOTgsMTggKzg1LDE0IEBAIC0gKHZvaWQpY2hvb3NlRmls
ZW5hbWVzOihOU0FycmF5ICopZmlsZW5hbWVzIGRpc3BsYXlTdHJpbmc6KE5TU3RyaW5nICopZGlz
cGxheVN0CiAgICAgaWYgKCFfY2hvb3NlcikKICAgICAgICAgcmV0dXJuOwogCi0gICAgUmVmUHRy
PEljb24+IGljb24gPSBJY29uOjpjcmVhdGVJY29uRm9ySW1hZ2UoaW1hZ2VSZWYpOwotCi0gICAg
TlNVSW50ZWdlciBjb3VudCA9IFtmaWxlbmFtZXMgY291bnRdOwotICAgIFZlY3RvcjxTdHJpbmc+
IG5hbWVzKGNvdW50KTsKLSAgICBmb3IgKE5TVUludGVnZXIgaSA9IDA7IGkgPCBjb3VudDsgKytp
KQotICAgICAgICBuYW1lc1tpXSA9IFtmaWxlbmFtZXMgb2JqZWN0QXRJbmRleDppXTsKLSAgICBf
Y2hvb3Nlci0+Y2hvb3NlTWVkaWFGaWxlcyhuYW1lcywgZGlzcGxheVN0cmluZywgaWNvbi5nZXQo
KSk7Ci0gICAgCi0gICAgLy8gRklYTUU6IHdlIHNob3VsZG4ndCBiZSBtYW51YWxseSBkZXJlZigp
J2luZyBoZXJlLgotICAgIF9jaG9vc2VyLT5kZXJlZigpOworICAgIFZlY3RvcjxTdHJpbmc+IG5h
bWVzOworICAgIG5hbWVzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkoW2ZpbGVuYW1lcyBjb3VudF0p
OworICAgIGZvciAoTlNTdHJpbmcgKmZpbGVuYW1lIGluIGZpbGVuYW1lcykKKyAgICAgICAgbmFt
ZXMudW5jaGVja2VkQXBwZW5kKGZpbGVuYW1lKTsKKyAgICBfY2hvb3Nlci0+Y2hvb3NlTWVkaWFG
aWxlcyhuYW1lcywgZGlzcGxheVN0cmluZywgSWNvbjo6Y3JlYXRlSWNvbkZvckltYWdlKGltYWdl
UmVmKS5nZXQoKSk7CiAgICAgX2Nob29zZXIgPSBudWxscHRyOwogfQorCiAjZW5kaWYKIAogQGVu
ZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJBcmNoaXZlLm1tIGIv
U291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJBcmNoaXZlLm1tCmluZGV4IGU5NmM2MDdjZmI4
NGM4NWExZWJmYWFiZGMzMWNlYmEwNGVhNWMzZTguLmZmNzU0NmQ4NWY4YTU1YTU5YjgwYWFmMTdi
NTRlNzJlYTYxZjk2NzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2Vi
QXJjaGl2ZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkFyY2hpdmUubW0K
QEAgLTE3NCwyNSArMTc0LDE2IEBAIC0gKGluc3RhbmNldHlwZSlpbml0V2l0aE1haW5SZXNvdXJj
ZTooV2ViUmVzb3VyY2UgKiltYWluUmVzb3VyY2Ugc3VicmVzb3VyY2VzOihOCiAgICAgICAgIFtz
ZWxmIHJlbGVhc2VdOwogICAgICAgICByZXR1cm4gbmlsOwogICAgIH0KLSAgICAKLSAgICBSZWZQ
dHI8QXJjaGl2ZVJlc291cmNlPiBjb3JlTWFpblJlc291cmNlID0gbWFpblJlc291cmNlID8gW21h
aW5SZXNvdXJjZSBfY29yZVJlc291cmNlXSA6IG51bGxwdHI7CiAKLSAgICBWZWN0b3I8UmVmUHRy
PEFyY2hpdmVSZXNvdXJjZT4+IGNvcmVSZXNvdXJjZXM7CisgICAgVmVjdG9yPFJlZjxBcmNoaXZl
UmVzb3VyY2U+PiBjb3JlUmVzb3VyY2VzOwogICAgIGZvciAoV2ViUmVzb3VyY2UgKnN1YnJlc291
cmNlIGluIHN1YnJlc291cmNlcykKICAgICAgICAgY29yZVJlc291cmNlcy5hcHBlbmQoW3N1YnJl
c291cmNlIF9jb3JlUmVzb3VyY2VdKTsKIAotICAgIFZlY3RvcjxSZWZQdHI8TGVnYWN5V2ViQXJj
aGl2ZT4+IGNvcmVBcmNoaXZlczsKKyAgICBWZWN0b3I8UmVmPExlZ2FjeVdlYkFyY2hpdmU+PiBj
b3JlQXJjaGl2ZXM7CiAgICAgZm9yIChXZWJBcmNoaXZlICpzdWJmcmFtZUFyY2hpdmUgaW4gc3Vi
ZnJhbWVBcmNoaXZlcykKLSAgICAgICAgY29yZUFyY2hpdmVzLmFwcGVuZChbc3ViZnJhbWVBcmNo
aXZlLT5fcHJpdmF0ZSBjb3JlQXJjaGl2ZV0pOwotCi0gICAgYXV0byBjb3JlQXJjaGl2ZSA9IExl
Z2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShXVEZNb3ZlKGNvcmVNYWluUmVzb3VyY2UpLCBXVEZNb3Zl
KGNvcmVSZXNvdXJjZXMpLCBXVEZNb3ZlKGNvcmVBcmNoaXZlcykpOwotICAgIGlmICghY29yZUFy
Y2hpdmUpIHsKLSAgICAgICAgW3NlbGYgcmVsZWFzZV07Ci0gICAgICAgIHJldHVybiBuaWw7Ci0g
ICAgfQotCi0gICAgW19wcml2YXRlIHNldENvcmVBcmNoaXZlOldURk1vdmUoY29yZUFyY2hpdmUp
XTsKKyAgICAgICAgY29yZUFyY2hpdmVzLmFwcGVuZCgqW3N1YmZyYW1lQXJjaGl2ZS0+X3ByaXZh
dGUgY29yZUFyY2hpdmVdKTsKIAorICAgIFtfcHJpdmF0ZSBzZXRDb3JlQXJjaGl2ZTpMZWdhY3lX
ZWJBcmNoaXZlOjpjcmVhdGUoW21haW5SZXNvdXJjZSBfY29yZVJlc291cmNlXSwgV1RGTW92ZShj
b3JlUmVzb3VyY2VzKSwgV1RGTW92ZShjb3JlQXJjaGl2ZXMpKV07CiAgICAgcmV0dXJuIHNlbGY7
CiB9CiAKQEAgLTI3NSw5ICsyNjYsMTAgQEAgLSAoV2ViUmVzb3VyY2UgKiltYWluUmVzb3VyY2UK
ICAgICAvLyBDdXJyZW50bHkgZnJvbSBXZWJLaXQgQVBJIHBlcnNwZWN0aXZlLCBXZWJBcmNoaXZl
cyBhcmUgZW50aXJlbHkgaW1tdXRhYmxlIG9uY2UgY3JlYXRlZAogICAgIC8vIElmIHRoZXkgZXZl
ciBiZWNvbWUgbXV0YWJsZSwgd2UnbGwgbmVlZCB0byByZXRoaW5rIHRoaXMuIAogICAgIGlmICgh
X3ByaXZhdGUtPmNhY2hlZE1haW5SZXNvdXJjZSkgewotICAgICAgICBMZWdhY3lXZWJBcmNoaXZl
KiBjb3JlQXJjaGl2ZSA9IFtfcHJpdmF0ZSBjb3JlQXJjaGl2ZV07Ci0gICAgICAgIGlmIChjb3Jl
QXJjaGl2ZSkKLSAgICAgICAgICAgIF9wcml2YXRlLT5jYWNoZWRNYWluUmVzb3VyY2UgPSBbW1dl
YlJlc291cmNlIGFsbG9jXSBfaW5pdFdpdGhDb3JlUmVzb3VyY2U6Y29yZUFyY2hpdmUtPm1haW5S
ZXNvdXJjZSgpXTsKKyAgICAgICAgaWYgKGF1dG8qIGNvcmVBcmNoaXZlID0gW19wcml2YXRlIGNv
cmVBcmNoaXZlXSkgeworICAgICAgICAgICAgaWYgKGF1dG8qIG1haW5SZXNvdXJjZSA9IGNvcmVB
cmNoaXZlLT5tYWluUmVzb3VyY2UoKSkKKyAgICAgICAgICAgICAgICBfcHJpdmF0ZS0+Y2FjaGVk
TWFpblJlc291cmNlID0gW1tXZWJSZXNvdXJjZSBhbGxvY10gX2luaXRXaXRoQ29yZVJlc291cmNl
OiptYWluUmVzb3VyY2VdOworICAgICAgICB9CiAgICAgfQogICAgIAogICAgIHJldHVybiBbW19w
cml2YXRlLT5jYWNoZWRNYWluUmVzb3VyY2UgcmV0YWluXSBhdXRvcmVsZWFzZV07CkBAIC0yOTQs
MTIgKzI4NiwxMSBAQCAtIChOU0FycmF5ICopc3VicmVzb3VyY2VzCiAgICAgICAgIGlmICghY29y
ZUFyY2hpdmUpCiAgICAgICAgICAgICBfcHJpdmF0ZS0+Y2FjaGVkU3VicmVzb3VyY2VzID0gW1tO
U0FycmF5IGFsbG9jXSBpbml0XTsKICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICBjb25zdCBW
ZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+JiBzdWJyZXNvdXJjZXMoY29yZUFyY2hpdmUt
PnN1YnJlc291cmNlcygpKTsKKyAgICAgICAgICAgIGF1dG8mIHN1YnJlc291cmNlcyA9IGNvcmVB
cmNoaXZlLT5zdWJyZXNvdXJjZXMoKTsKICAgICAgICAgICAgIE5TTXV0YWJsZUFycmF5ICptdXRh
YmxlQXJyYXkgPSBbW05TTXV0YWJsZUFycmF5IGFsbG9jXSBpbml0V2l0aENhcGFjaXR5OnN1YnJl
c291cmNlcy5zaXplKCldOwogICAgICAgICAgICAgX3ByaXZhdGUtPmNhY2hlZFN1YnJlc291cmNl
cyA9IG11dGFibGVBcnJheTsKLSAgICAgICAgICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBz
dWJyZXNvdXJjZXMuc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgICAgICAgICBXZWJSZXNvdXJjZSAq
cmVzb3VyY2UgPSBbW1dlYlJlc291cmNlIGFsbG9jXSBfaW5pdFdpdGhDb3JlUmVzb3VyY2U6c3Vi
cmVzb3VyY2VzW2ldLmdldCgpXTsKLSAgICAgICAgICAgICAgICBpZiAocmVzb3VyY2UpIHsKKyAg
ICAgICAgICAgIGZvciAoYXV0byYgc3VicmVzb3VyY2UgOiBzdWJyZXNvdXJjZXMpIHsKKyAgICAg
ICAgICAgICAgICBpZiAoV2ViUmVzb3VyY2UgKnJlc291cmNlID0gW1tXZWJSZXNvdXJjZSBhbGxv
Y10gX2luaXRXaXRoQ29yZVJlc291cmNlOnN1YnJlc291cmNlLmdldCgpXSkgewogICAgICAgICAg
ICAgICAgICAgICBbbXV0YWJsZUFycmF5IGFkZE9iamVjdDpyZXNvdXJjZV07CiAgICAgICAgICAg
ICAgICAgICAgIFtyZXNvdXJjZSByZWxlYXNlXTsKICAgICAgICAgICAgICAgICB9CkBAIC0zMTgs
MTUgKzMwOSwxNSBAQCAtIChOU0FycmF5ICopc3ViZnJhbWVBcmNoaXZlcwogICAgIC8vIEN1cnJl
bnRseSBmcm9tIFdlYktpdCBBUEkgcGVyc3BlY3RpdmUsIFdlYkFyY2hpdmVzIGFyZSBlbnRpcmVs
eSBpbW11dGFibGUgb25jZSBjcmVhdGVkCiAgICAgLy8gSWYgdGhleSBldmVyIGJlY29tZSBtdXRh
YmxlLCB3ZSdsbCBuZWVkIHRvIHJldGhpbmsgdGhpcy4gIAogICAgIGlmICghX3ByaXZhdGUtPmNh
Y2hlZFN1YmZyYW1lQXJjaGl2ZXMpIHsKLSAgICAgICAgTGVnYWN5V2ViQXJjaGl2ZSogY29yZUFy
Y2hpdmUgPSBbX3ByaXZhdGUgY29yZUFyY2hpdmVdOworICAgICAgICBhdXRvKiBjb3JlQXJjaGl2
ZSA9IFtfcHJpdmF0ZSBjb3JlQXJjaGl2ZV07CiAgICAgICAgIGlmICghY29yZUFyY2hpdmUpCiAg
ICAgICAgICAgICBfcHJpdmF0ZS0+Y2FjaGVkU3ViZnJhbWVBcmNoaXZlcyA9IFtbTlNBcnJheSBh
bGxvY10gaW5pdF07CiAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgY29uc3QgVmVjdG9yPFJl
ZlB0cjxBcmNoaXZlPj4mIHN1YmZyYW1lQXJjaGl2ZXMoY29yZUFyY2hpdmUtPnN1YmZyYW1lQXJj
aGl2ZXMoKSk7Ci0gICAgICAgICAgICBOU011dGFibGVBcnJheSAqbXV0YWJsZUFycmF5ID0gW1tO
U011dGFibGVBcnJheSBhbGxvY10gaW5pdFdpdGhDYXBhY2l0eTpzdWJmcmFtZUFyY2hpdmVzLnNp
emUoKV07CisgICAgICAgICAgICBhdXRvJiBzdWJmcmFtZUFyY2hpdmVzID0gY29yZUFyY2hpdmUt
PnN1YmZyYW1lQXJjaGl2ZXMoKTsKKyAgICAgICAgICAgIGF1dG8gbXV0YWJsZUFycmF5ID0gW1tO
U011dGFibGVBcnJheSBhbGxvY10gaW5pdFdpdGhDYXBhY2l0eTpzdWJmcmFtZUFyY2hpdmVzLnNp
emUoKV07CiAgICAgICAgICAgICBfcHJpdmF0ZS0+Y2FjaGVkU3ViZnJhbWVBcmNoaXZlcyA9IG11
dGFibGVBcnJheTsKICAgICAgICAgICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBzdWJmcmFt
ZUFyY2hpdmVzLnNpemUoKTsgKytpKSB7Ci0gICAgICAgICAgICAgICAgV2ViQXJjaGl2ZSAqYXJj
aGl2ZSA9IFtbV2ViQXJjaGl2ZSBhbGxvY10gX2luaXRXaXRoQ29yZUxlZ2FjeVdlYkFyY2hpdmU6
KExlZ2FjeVdlYkFyY2hpdmUgKilzdWJmcmFtZUFyY2hpdmVzW2ldLmdldCgpXTsKKyAgICAgICAg
ICAgICAgICBXZWJBcmNoaXZlICphcmNoaXZlID0gW1tXZWJBcmNoaXZlIGFsbG9jXSBfaW5pdFdp
dGhDb3JlTGVnYWN5V2ViQXJjaGl2ZTooTGVnYWN5V2ViQXJjaGl2ZSAqKXN1YmZyYW1lQXJjaGl2
ZXNbaV0ucHRyKCldOwogICAgICAgICAgICAgICAgIFttdXRhYmxlQXJyYXkgYWRkT2JqZWN0OmFy
Y2hpdmVdOwogICAgICAgICAgICAgICAgIFthcmNoaXZlIHJlbGVhc2VdOwogICAgICAgICAgICAg
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJEYXRhU291cmNlLm1t
IGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJEYXRhU291cmNlLm1tCmluZGV4IDYwNjQ3
MjJhNTYzNjE0ODU4NDJjZjU3ZmQ5MzBmNzU1ODhkNmU4ZjYuLjE4Y2Y5ZjdkYjRjNjM4Nzg0NzE3
MDg5MjhiYWI4OTU4YTQ3OTI3MDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZp
ZXcvV2ViRGF0YVNvdXJjZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkRh
dGFTb3VyY2UubW0KQEAgLTE2NiwyNSArMTY2LDIyIEBAIC0gKE5TRXJyb3IgKilfbWFpbkRvY3Vt
ZW50RXJyb3IKIAogLSAodm9pZClfYWRkU3ViZnJhbWVBcmNoaXZlczooTlNBcnJheSAqKXN1YmZy
YW1lQXJjaGl2ZXMKIHsKLSAgICAvLyBGSVhNRTogVGhpcyBTUEkgaXMgcG9vciwgcG9vciBkZXNp
Z24uICBDYW4gd2UgY29tZSB1cCB3aXRoIGFub3RoZXIgc29sdXRpb24gZm9yIHRob3NlIHdobyBu
ZWVkIGl0PwotICAgIE5TRW51bWVyYXRvciAqZW51bWVyYXRvciA9IFtzdWJmcmFtZUFyY2hpdmVz
IG9iamVjdEVudW1lcmF0b3JdOwotICAgIFdlYkFyY2hpdmUgKmFyY2hpdmU7Ci0gICAgd2hpbGUg
KChhcmNoaXZlID0gW2VudW1lcmF0b3IgbmV4dE9iamVjdF0pICE9IG5pbCkKLSAgICAgICAgdG9Q
cml2YXRlKF9wcml2YXRlKS0+bG9hZGVyLT5hZGRBbGxBcmNoaXZlUmVzb3VyY2VzKFthcmNoaXZl
IF9jb3JlTGVnYWN5V2ViQXJjaGl2ZV0pOworICAgIC8vIEZJWE1FOiBUaGlzIFNQSSBpcyBwb29y
LCBwb29yIGRlc2lnbi4gQ2FuIHdlIGNvbWUgdXAgd2l0aCBhbm90aGVyIHNvbHV0aW9uIGZvciB0
aG9zZSB3aG8gbmVlZCBpdD8KKyAgICBmb3IgKFdlYkFyY2hpdmUgKmFyY2hpdmUgaW4gc3ViZnJh
bWVBcmNoaXZlcykKKyAgICAgICAgdG9Qcml2YXRlKF9wcml2YXRlKS0+bG9hZGVyLT5hZGRBbGxB
cmNoaXZlUmVzb3VyY2VzKCpbYXJjaGl2ZSBfY29yZUxlZ2FjeVdlYkFyY2hpdmVdKTsKIH0KIAog
I2lmICFQTEFURk9STShJT1MpCisKIC0gKE5TRmlsZVdyYXBwZXIgKilfZmlsZVdyYXBwZXJGb3JV
Ukw6KE5TVVJMICopVVJMCiB7CiAgICAgaWYgKFtVUkwgaXNGaWxlVVJMXSkKICAgICAgICAgcmV0
dXJuIFtbW05TRmlsZVdyYXBwZXIgYWxsb2NdIGluaXRXaXRoVVJMOltVUkwgVVJMQnlSZXNvbHZp
bmdTeW1saW5rc0luUGF0aF0gb3B0aW9uczowIGVycm9yOm51bGxwdHJdIGF1dG9yZWxlYXNlXTsK
IAotICAgIFdlYlJlc291cmNlICpyZXNvdXJjZSA9IFtzZWxmIHN1YnJlc291cmNlRm9yVVJMOlVS
TF07Ci0gICAgaWYgKHJlc291cmNlKQorICAgIGlmIChhdXRvIHJlc291cmNlID0gW3NlbGYgc3Vi
cmVzb3VyY2VGb3JVUkw6VVJMXSkKICAgICAgICAgcmV0dXJuIFtyZXNvdXJjZSBfZmlsZVdyYXBw
ZXJSZXByZXNlbnRhdGlvbl07Ci0gICAgCi0gICAgTlNDYWNoZWRVUkxSZXNwb25zZSAqY2FjaGVk
UmVzcG9uc2UgPSBbW3NlbGYgX3dlYlZpZXddIF9jYWNoZWRSZXNwb25zZUZvclVSTDpVUkxdOwot
ICAgIGlmIChjYWNoZWRSZXNwb25zZSkgeworCisgICAgaWYgKGF1dG8gY2FjaGVkUmVzcG9uc2Ug
PSBbW3NlbGYgX3dlYlZpZXddIF9jYWNoZWRSZXNwb25zZUZvclVSTDpVUkxdKSB7CiAgICAgICAg
IE5TRmlsZVdyYXBwZXIgKndyYXBwZXIgPSBbW1tOU0ZpbGVXcmFwcGVyIGFsbG9jXSBpbml0UmVn
dWxhckZpbGVXaXRoQ29udGVudHM6W2NhY2hlZFJlc3BvbnNlIGRhdGFdXSBhdXRvcmVsZWFzZV07
CiAgICAgICAgIFt3cmFwcGVyIHNldFByZWZlcnJlZEZpbGVuYW1lOltbY2FjaGVkUmVzcG9uc2Ug
cmVzcG9uc2VdIHN1Z2dlc3RlZEZpbGVuYW1lXV07CiAgICAgICAgIHJldHVybiB3cmFwcGVyOwpA
QCAtMTkyLDYgKzE4OSw3IEBAIC0gKE5TRmlsZVdyYXBwZXIgKilfZmlsZVdyYXBwZXJGb3JVUkw6
KE5TVVJMICopVVJMCiAgICAgCiAgICAgcmV0dXJuIG5pbDsKIH0KKwogI2VuZGlmCiAKIC0gKE5T
U3RyaW5nICopX3Jlc3BvbnNlTUlNRVR5cGUKQEAgLTMwNSw5ICszMDMsMTAgQEAgLSAoRE9NRG9j
dW1lbnRGcmFnbWVudCAqKV9kb2N1bWVudEZyYWdtZW50V2l0aEFyY2hpdmU6KFdlYkFyY2hpdmUg
KilhcmNoaXZlCiAgICAgICAgIE5TU3RyaW5nICpNSU1FVHlwZSA9IFttYWluUmVzb3VyY2UgTUlN
RVR5cGVdOwogICAgICAgICBpZiAoW1dlYlZpZXcgY2FuU2hvd01JTUVUeXBlQXNIVE1MOk1JTUVU
eXBlXSkgewogICAgICAgICAgICAgTlNTdHJpbmcgKm1hcmt1cFN0cmluZyA9IFtbTlNTdHJpbmcg
YWxsb2NdIGluaXRXaXRoRGF0YTpbbWFpblJlc291cmNlIGRhdGFdIGVuY29kaW5nOk5TVVRGOFN0
cmluZ0VuY29kaW5nXTsKKwogICAgICAgICAgICAgLy8gRklYTUU6IHNlZW1zIHBvb3IgZm9ybSB0
byBkbyB0aGlzIGFzIGEgc2lkZSBlZmZlY3Qgb2YgZ2V0dGluZyBhIGRvY3VtZW50IGZyYWdtZW50
CiAgICAgICAgICAgICBpZiAodG9Qcml2YXRlKF9wcml2YXRlKS0+bG9hZGVyKQotICAgICAgICAg
ICAgICAgIHRvUHJpdmF0ZShfcHJpdmF0ZSktPmxvYWRlci0+YWRkQWxsQXJjaGl2ZVJlc291cmNl
cyhbYXJjaGl2ZSBfY29yZUxlZ2FjeVdlYkFyY2hpdmVdKTsKKyAgICAgICAgICAgICAgICB0b1By
aXZhdGUoX3ByaXZhdGUpLT5sb2FkZXItPmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoKlthcmNoaXZl
IF9jb3JlTGVnYWN5V2ViQXJjaGl2ZV0pOwogCiAgICAgICAgICAgICBET01Eb2N1bWVudEZyYWdt
ZW50ICpmcmFnbWVudCA9IFtbc2VsZiB3ZWJGcmFtZV0gX2RvY3VtZW50RnJhZ21lbnRXaXRoTWFy
a3VwU3RyaW5nOm1hcmt1cFN0cmluZyBiYXNlVVJMU3RyaW5nOltbbWFpblJlc291cmNlIFVSTF0g
X3dlYl9vcmlnaW5hbERhdGFBc1N0cmluZ11dOwogICAgICAgICAgICAgW21hcmt1cFN0cmluZyBy
ZWxlYXNlXTsKQEAgLTMyNCw3ICszMjMsNyBAQCAtIChET01Eb2N1bWVudEZyYWdtZW50ICopX2Rv
Y3VtZW50RnJhZ21lbnRXaXRoSW1hZ2VSZXNvdXJjZTooV2ViUmVzb3VyY2UgKilyZXNvdQogewog
ICAgIERPTUVsZW1lbnQgKmltYWdlRWxlbWVudCA9IFtzZWxmIF9pbWFnZUVsZW1lbnRXaXRoSW1h
Z2VSZXNvdXJjZTpyZXNvdXJjZV07CiAgICAgaWYgKCFpbWFnZUVsZW1lbnQpCi0gICAgICAgIHJl
dHVybiAwOworICAgICAgICByZXR1cm4gbmlsOwogICAgIERPTURvY3VtZW50RnJhZ21lbnQgKmZy
YWdtZW50ID0gW1tbc2VsZiB3ZWJGcmFtZV0gRE9NRG9jdW1lbnRdIGNyZWF0ZURvY3VtZW50RnJh
Z21lbnRdOwogICAgIFtmcmFnbWVudCBhcHBlbmRDaGlsZDppbWFnZUVsZW1lbnRdOwogICAgIHJl
dHVybiBmcmFnbWVudDsKQEAgLTUxOSwzMiArNTE4LDMxIEBAIC0gKFdlYkFyY2hpdmUgKil3ZWJB
cmNoaXZlCiAtIChXZWJSZXNvdXJjZSAqKW1haW5SZXNvdXJjZQogewogICAgIGF1dG8gY29yZVJl
c291cmNlID0gdG9Qcml2YXRlKF9wcml2YXRlKS0+bG9hZGVyLT5tYWluUmVzb3VyY2UoKTsKLSAg
ICByZXR1cm4gW1tbV2ViUmVzb3VyY2UgYWxsb2NdIF9pbml0V2l0aENvcmVSZXNvdXJjZTpXVEZN
b3ZlKGNvcmVSZXNvdXJjZSldIGF1dG9yZWxlYXNlXTsKKyAgICBpZiAoIWNvcmVSZXNvdXJjZSkK
KyAgICAgICAgcmV0dXJuIG5pbDsKKyAgICByZXR1cm4gW1tbV2ViUmVzb3VyY2UgYWxsb2NdIF9p
bml0V2l0aENvcmVSZXNvdXJjZTpjb3JlUmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKV0gYXV0b3Jl
bGVhc2VdOwogfQogCiAtIChOU0FycmF5ICopc3VicmVzb3VyY2VzCiB7CiAgICAgYXV0byBjb3Jl
U3VicmVzb3VyY2VzID0gdG9Qcml2YXRlKF9wcml2YXRlKS0+bG9hZGVyLT5zdWJyZXNvdXJjZXMo
KTsKLQogICAgIGF1dG8gc3VicmVzb3VyY2VzID0gYWRvcHROUyhbW05TTXV0YWJsZUFycmF5IGFs
bG9jXSBpbml0V2l0aENhcGFjaXR5OmNvcmVTdWJyZXNvdXJjZXMuc2l6ZSgpXSk7Ci0gICAgZm9y
IChjb25zdCBhdXRvJiBjb3JlU3VicmVzb3VyY2UgOiBjb3JlU3VicmVzb3VyY2VzKSB7Ci0gICAg
ICAgIGlmIChhdXRvIHJlc291cmNlID0gYWRvcHROUyhbW1dlYlJlc291cmNlIGFsbG9jXSBfaW5p
dFdpdGhDb3JlUmVzb3VyY2U6Y29yZVN1YnJlc291cmNlXSkpCisgICAgZm9yIChhdXRvJiBjb3Jl
U3VicmVzb3VyY2UgOiBjb3JlU3VicmVzb3VyY2VzKSB7CisgICAgICAgIGlmIChhdXRvIHJlc291
cmNlID0gYWRvcHROUyhbW1dlYlJlc291cmNlIGFsbG9jXSBfaW5pdFdpdGhDb3JlUmVzb3VyY2U6
Y29yZVN1YnJlc291cmNlLmNvcHlSZWYoKV0pKQogICAgICAgICAgICAgW3N1YnJlc291cmNlcyBh
ZGRPYmplY3Q6cmVzb3VyY2UuZ2V0KCldOwogICAgIH0KLQogICAgIHJldHVybiBzdWJyZXNvdXJj
ZXMuYXV0b3JlbGVhc2UoKTsKIH0KIAogLSAoV2ViUmVzb3VyY2UgKilzdWJyZXNvdXJjZUZvclVS
TDooTlNVUkwgKilVUkwKIHsKLSAgICBSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBzdWJyZXNvdXJj
ZSA9IHRvUHJpdmF0ZShfcHJpdmF0ZSktPmxvYWRlci0+c3VicmVzb3VyY2UoVVJMKTsKLSAgICAK
LSAgICByZXR1cm4gc3VicmVzb3VyY2UgPyBbW1tXZWJSZXNvdXJjZSBhbGxvY10gX2luaXRXaXRo
Q29yZVJlc291cmNlOnN1YnJlc291cmNlLmdldCgpXSBhdXRvcmVsZWFzZV0gOiBuaWw7CisgICAg
YXV0byBzdWJyZXNvdXJjZSA9IHRvUHJpdmF0ZShfcHJpdmF0ZSktPmxvYWRlci0+c3VicmVzb3Vy
Y2UoVVJMKTsKKyAgICByZXR1cm4gc3VicmVzb3VyY2UgPyBbW1tXZWJSZXNvdXJjZSBhbGxvY10g
X2luaXRXaXRoQ29yZVJlc291cmNlOnN1YnJlc291cmNlLnJlbGVhc2VOb25OdWxsKCldIGF1dG9y
ZWxlYXNlXSA6IG5pbDsKIH0KIAogLSAodm9pZClhZGRTdWJyZXNvdXJjZTooV2ViUmVzb3VyY2Ug
KilzdWJyZXNvdXJjZQogeyAgICAKLSAgICB0b1ByaXZhdGUoX3ByaXZhdGUpLT5sb2FkZXItPmFk
ZEFyY2hpdmVSZXNvdXJjZSgqW3N1YnJlc291cmNlIF9jb3JlUmVzb3VyY2VdKTsKKyAgICB0b1By
aXZhdGUoX3ByaXZhdGUpLT5sb2FkZXItPmFkZEFyY2hpdmVSZXNvdXJjZShbc3VicmVzb3VyY2Ug
X2NvcmVSZXNvdXJjZV0pOwogfQogCiBAZW5kCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21h
Yy9XZWJWaWV3L1dlYlJlc291cmNlLm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJS
ZXNvdXJjZS5tbQppbmRleCBlNWQ4ZmQ0YWZiZDRkMmZhYzljZDM5MjE5MTZhNDliOGYxNzM1ZWY2
Li5iM2JiNzViYTlkMThkYzY5MDhhYmVlOWMyZGNiMDY2NWIxMTRhZmIwIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlJlc291cmNlLm1tCisrKyBiL1NvdXJjZS9XZWJL
aXQvbWFjL1dlYlZpZXcvV2ViUmVzb3VyY2UubW0KQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29w
eXJpZ2h0IChDKSAyMDA1LCAyMDA2LCAyMDA3LCAyMDA4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNS0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtNTcsOSArNTcs
OSBAQCBzdGF0aWMgTlNTdHJpbmcgKiBjb25zdCBXZWJSZXNvdXJjZVJlc3BvbnNlS2V5ID0gICAg
ICAgICAgQCJXZWJSZXNvdXJjZVJlc3BvbnNlIgogCiBAaW50ZXJmYWNlIFdlYlJlc291cmNlUHJp
dmF0ZSA6IE5TT2JqZWN0IHsKIEBwdWJsaWMKLSAgICBBcmNoaXZlUmVzb3VyY2UqIGNvcmVSZXNv
dXJjZTsKKyAgICBSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBjb3JlUmVzb3VyY2U7CiB9Ci0tIChp
bnN0YW5jZXR5cGUpaW5pdFdpdGhDb3JlUmVzb3VyY2U6KFBhc3NSZWZQdHI8QXJjaGl2ZVJlc291
cmNlPiljb3JlUmVzb3VyY2U7CistIChpbnN0YW5jZXR5cGUpaW5pdFdpdGhDb3JlUmVzb3VyY2U6
KFJlZjxBcmNoaXZlUmVzb3VyY2U+JiYpY29yZVJlc291cmNlOwogQGVuZAogCiBAaW1wbGVtZW50
YXRpb24gV2ViUmVzb3VyY2VQcml2YXRlCkBAIC03OCwxMyArNzgsMTIgQEAgLSAoaW5zdGFuY2V0
eXBlKWluaXQKICAgICByZXR1cm4gW3N1cGVyIGluaXRdOwogfQogCi0tIChpbnN0YW5jZXR5cGUp
aW5pdFdpdGhDb3JlUmVzb3VyY2U6KFBhc3NSZWZQdHI8QXJjaGl2ZVJlc291cmNlPilwYXNzZWRS
ZXNvdXJjZQorLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoQ29yZVJlc291cmNlOihSZWY8QXJjaGl2
ZVJlc291cmNlPiYmKXBhc3NlZFJlc291cmNlCiB7CiAgICAgc2VsZiA9IFtzdXBlciBpbml0XTsK
ICAgICBpZiAoIXNlbGYpCiAgICAgICAgIHJldHVybiBuaWw7Ci0gICAgLy8gQWNxdWlyZSB0aGUg
UGFzc1JlZlB0cjw+J3MgcmVmIGFzIG91ciBvd24gbWFudWFsIHJlZgotICAgIGNvcmVSZXNvdXJj
ZSA9IHBhc3NlZFJlc291cmNlLmxlYWtSZWYoKTsKKyAgICBjb3JlUmVzb3VyY2UgPSBXVEZNb3Zl
KHBhc3NlZFJlc291cmNlKTsKICAgICByZXR1cm4gc2VsZjsKIH0KIApAQCAtOTIsOSArOTEsNiBA
QCAtICh2b2lkKWRlYWxsb2MKIHsKICAgICBpZiAoV2ViQ29yZU9iakNTY2hlZHVsZURlYWxsb2Nh
dGVPbk1haW5UaHJlYWQoW1dlYlJlc291cmNlUHJpdmF0ZSBjbGFzc10sIHNlbGYpKQogICAgICAg
ICByZXR1cm47Ci0KLSAgICBpZiAoY29yZVJlc291cmNlKQotICAgICAgICBjb3JlUmVzb3VyY2Ut
PmRlcmVmKCk7CiAgICAgW3N1cGVyIGRlYWxsb2NdOwogfQogCkBAIC0xNTMsMTQgKzE0OSwxOSBA
QCAtIChpbnN0YW5jZXR5cGUpaW5pdFdpdGhDb2RlcjooTlNDb2RlciAqKWRlY29kZXIKICAgICAg
ICAgcmV0dXJuIG5pbDsKICAgICB9CiAKLSAgICBfcHJpdmF0ZSA9IFtbV2ViUmVzb3VyY2VQcml2
YXRlIGFsbG9jXSBpbml0V2l0aENvcmVSZXNvdXJjZTpBcmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShT
aGFyZWRCdWZmZXI6OndyYXBOU0RhdGEoZGF0YSksIHVybCwgbWltZVR5cGUsIHRleHRFbmNvZGlu
ZywgZnJhbWVOYW1lLCByZXNwb25zZSldOworICAgIGF1dG8gY29yZVJlc291cmNlID0gQXJjaGl2
ZVJlc291cmNlOjpjcmVhdGUoU2hhcmVkQnVmZmVyOjp3cmFwTlNEYXRhKGRhdGEpLCB1cmwsIG1p
bWVUeXBlLCB0ZXh0RW5jb2RpbmcsIGZyYW1lTmFtZSwgcmVzcG9uc2UpOworICAgIGlmICghY29y
ZVJlc291cmNlKSB7CisgICAgICAgIFtzZWxmIHJlbGVhc2VdOworICAgICAgICByZXR1cm4gbmls
OworICAgIH0KIAorICAgIF9wcml2YXRlID0gW1tXZWJSZXNvdXJjZVByaXZhdGUgYWxsb2NdIGlu
aXRXaXRoQ29yZVJlc291cmNlOmNvcmVSZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpXTsKICAgICBy
ZXR1cm4gc2VsZjsKIH0KIAogLSAodm9pZCllbmNvZGVXaXRoQ29kZXI6KE5TQ29kZXIgKillbmNv
ZGVyCiB7Ci0gICAgQXJjaGl2ZVJlc291cmNlICpyZXNvdXJjZSA9IF9wcml2YXRlLT5jb3JlUmVz
b3VyY2U7CisgICAgYXV0byogcmVzb3VyY2UgPSBfcHJpdmF0ZS0+Y29yZVJlc291cmNlLmdldCgp
OwogICAgIAogICAgIE5TRGF0YSAqZGF0YSA9IG5pbDsKICAgICBOU1VSTCAqdXJsID0gbmlsOwpA
QCAtMjA5LDggKzIxMCw3IEBAIC0gKE5TVVJMICopVVJMCiAKICAgICBpZiAoIV9wcml2YXRlLT5j
b3JlUmVzb3VyY2UpCiAgICAgICAgIHJldHVybiBuaWw7Ci0gICAgTlNVUkwgKnVybCA9IF9wcml2
YXRlLT5jb3JlUmVzb3VyY2UtPnVybCgpOwotICAgIHJldHVybiB1cmw7CisgICAgcmV0dXJuIF9w
cml2YXRlLT5jb3JlUmVzb3VyY2UtPnVybCgpOwogfQogCiAtIChOU1N0cmluZyAqKU1JTUVUeXBl
CkBAIC0yNTIsMjIgKzI1MiwxOSBAQCBAZW5kCiAKIEBpbXBsZW1lbnRhdGlvbiBXZWJSZXNvdXJj
ZSAoV2ViUmVzb3VyY2VJbnRlcm5hbCkKIAotLSAoaWQpX2luaXRXaXRoQ29yZVJlc291cmNlOihQ
YXNzUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4pY29yZVJlc291cmNlCistIChpZClfaW5pdFdpdGhD
b3JlUmVzb3VyY2U6KFJlZjxBcmNoaXZlUmVzb3VyY2U+JiYpY29yZVJlc291cmNlCiB7CiAgICAg
c2VsZiA9IFtzdXBlciBpbml0XTsKICAgICBpZiAoIXNlbGYpCiAgICAgICAgIHJldHVybiBuaWw7
Ci0gICAgICAgICAgICAKLSAgICBBU1NFUlQoY29yZVJlc291cmNlKTsKLSAgICAKLSAgICBfcHJp
dmF0ZSA9IFtbV2ViUmVzb3VyY2VQcml2YXRlIGFsbG9jXSBpbml0V2l0aENvcmVSZXNvdXJjZTpj
b3JlUmVzb3VyY2VdOwotICAgICAgICAgICAgCisKKyAgICBfcHJpdmF0ZSA9IFtbV2ViUmVzb3Vy
Y2VQcml2YXRlIGFsbG9jXSBpbml0V2l0aENvcmVSZXNvdXJjZTpXVEZNb3ZlKGNvcmVSZXNvdXJj
ZSldOwogICAgIHJldHVybiBzZWxmOwogfQogCi0tIChXZWJDb3JlOjpBcmNoaXZlUmVzb3VyY2Ug
KilfY29yZVJlc291cmNlCistIChXZWJDb3JlOjpBcmNoaXZlUmVzb3VyY2UmKV9jb3JlUmVzb3Vy
Y2UKIHsKLSAgICByZXR1cm4gX3ByaXZhdGUtPmNvcmVSZXNvdXJjZTsKKyAgICByZXR1cm4gKl9w
cml2YXRlLT5jb3JlUmVzb3VyY2U7CiB9CiAKIEBlbmQKQEAgLTMwNCw4ICszMDEsMTMgQEAgLSAo
aWQpX2luaXRXaXRoRGF0YTooTlNEYXRhICopZGF0YQogICAgICAgICByZXR1cm4gbmlsOwogICAg
IH0KIAotICAgIF9wcml2YXRlID0gW1tXZWJSZXNvdXJjZVByaXZhdGUgYWxsb2NdIGluaXRXaXRo
Q29yZVJlc291cmNlOkFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKFNoYXJlZEJ1ZmZlcjo6d3JhcE5T
RGF0YShjb3B5RGF0YSA/IFtbZGF0YSBjb3B5XSBhdXRvcmVsZWFzZV0gOiBkYXRhKSwgVVJMLCBN
SU1FVHlwZSwgdGV4dEVuY29kaW5nTmFtZSwgZnJhbWVOYW1lLCByZXNwb25zZSldOworICAgIGF1
dG8gY29yZVJlc291cmNlID0gQXJjaGl2ZVJlc291cmNlOjpjcmVhdGUoU2hhcmVkQnVmZmVyOjp3
cmFwTlNEYXRhKGNvcHlEYXRhID8gW1tkYXRhIGNvcHldIGF1dG9yZWxlYXNlXSA6IGRhdGEpLCBV
UkwsIE1JTUVUeXBlLCB0ZXh0RW5jb2RpbmdOYW1lLCBmcmFtZU5hbWUsIHJlc3BvbnNlKTsKKyAg
ICBpZiAoIWNvcmVSZXNvdXJjZSkgeworICAgICAgICBbc2VsZiByZWxlYXNlXTsKKyAgICAgICAg
cmV0dXJuIG5pbDsKKyAgICB9CiAKKyAgICBfcHJpdmF0ZSA9IFtbV2ViUmVzb3VyY2VQcml2YXRl
IGFsbG9jXSBpbml0V2l0aENvcmVSZXNvdXJjZTpjb3JlUmVzb3VyY2UucmVsZWFzZU5vbk51bGwo
KV07CiAgICAgcmV0dXJuIHNlbGY7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFj
L1dlYlZpZXcvV2ViUmVzb3VyY2VJbnRlcm5hbC5oIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmll
dy9XZWJSZXNvdXJjZUludGVybmFsLmgKaW5kZXggMmY0NjkxMmU4YmU4ZDNiMzkyY2Y1NzM5MmYw
NzlkYWI5ZDgwOWUyNS4uODBjOTc2ZWI2YjM2NTRmYzFjNjg4YzJhOTZiODNiZGI3YWY3NzI1MSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJSZXNvdXJjZUludGVybmFs
LmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJSZXNvdXJjZUludGVybmFsLmgK
QEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA4IEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOC0yMDE3IEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAt
MjcsMTMgKzI3LDEzIEBACiAgKi8KIAogI2ltcG9ydCAiV2ViUmVzb3VyY2VQcml2YXRlLmgiCi0j
aW1wb3J0IDx3dGYvUGFzc1JlZlB0ci5oPgorI2ltcG9ydCA8d3RmL1JlZi5oPgogCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAgICAgY2xhc3MgQXJjaGl2ZVJlc291cmNlOwogfQogCiBAaW50ZXJmYWNl
IFdlYlJlc291cmNlIChXZWJSZXNvdXJjZUludGVybmFsKQotLSAoaWQpX2luaXRXaXRoQ29yZVJl
c291cmNlOihQYXNzUmVmUHRyPFdlYkNvcmU6OkFyY2hpdmVSZXNvdXJjZT4pY29yZVJlc291cmNl
OwotLSAoV2ViQ29yZTo6QXJjaGl2ZVJlc291cmNlKilfY29yZVJlc291cmNlOworLSAoaWQpX2lu
aXRXaXRoQ29yZVJlc291cmNlOihSZWY8V2ViQ29yZTo6QXJjaGl2ZVJlc291cmNlPiYmKWNvcmVS
ZXNvdXJjZTsKKy0gKFdlYkNvcmU6OkFyY2hpdmVSZXNvdXJjZSYpX2NvcmVSZXNvdXJjZTsKIEBl
bmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9t
ZUNsaWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVD
bGllbnQuY3BwCmluZGV4IGYyNGU2MzM0NDVlNDM1NWIzYjQyOGY5OTg3ZGM0MmY4MTJjMWJmZmMu
LmEzOWQ1ODc1MWI2ZTRiZTgyOGY1ZGQ1MmVmOGQ3YjAyNjUzN2MyZDEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAKKysrIGIv
U291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcApAQCAt
NjE4LDE1ICs2MTgsMTMgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJlYWNoZWRBcHBsaWNhdGlv
bkNhY2hlT3JpZ2luUXVvdGEoU2VjdXJpdHlPcmlnaW4qLCBpbnQ2NF8KICAgICBub3RJbXBsZW1l
bnRlZCgpOwogfQogCi12b2lkIFdlYkNocm9tZUNsaWVudDo6cnVuT3BlblBhbmVsKEZyYW1lKiwg
UGFzc1JlZlB0cjxGaWxlQ2hvb3Nlcj4gcHJwRmlsZUNob29zZXIpCit2b2lkIFdlYkNocm9tZUNs
aWVudDo6cnVuT3BlblBhbmVsKEZyYW1lJiwgRmlsZUNob29zZXImIGZpbGVDaG9vc2VyKQogewot
ICAgIFJlZlB0cjxGaWxlQ2hvb3Nlcj4gZmlsZUNob29zZXIgPSBwcnBGaWxlQ2hvb3NlcjsKLQog
ICAgIEhXTkQgdmlld1dpbmRvdzsKICAgICBpZiAoRkFJTEVEKG1fd2ViVmlldy0+dmlld1dpbmRv
dygmdmlld1dpbmRvdykpKQogICAgICAgICByZXR1cm47CiAKLSAgICBib29sIG11bHRpRmlsZSA9
IGZpbGVDaG9vc2VyLT5zZXR0aW5ncygpLmFsbG93c011bHRpcGxlRmlsZXM7CisgICAgYm9vbCBt
dWx0aUZpbGUgPSBmaWxlQ2hvb3Nlci5zZXR0aW5ncygpLmFsbG93c011bHRpcGxlRmlsZXM7CiAg
ICAgVmVjdG9yPFdDSEFSPiBmaWxlQnVmKG11bHRpRmlsZSA/IG1heEZpbGVQYXRoc0xpc3RTaXpl
IDogTUFYX1BBVEgpOwogCiAgICAgT1BFTkZJTEVOQU1FIG9mbjsKQEAgLTY3NSw3ICs2NzMsNyBA
QCB2b2lkIFdlYkNocm9tZUNsaWVudDo6cnVuT3BlblBhbmVsKEZyYW1lKiwgUGFzc1JlZlB0cjxG
aWxlQ2hvb3Nlcj4gcHJwRmlsZUNob29zZQogICAgICAgICB9IGVsc2UKICAgICAgICAgICAgIGZp
bGVMaXN0LmFwcGVuZChmaWxlKTsKICAgICAgICAgQVNTRVJUKGZpbGVMaXN0LnNpemUoKSk7Ci0g
ICAgICAgIGZpbGVDaG9vc2VyLT5jaG9vc2VGaWxlcyhmaWxlTGlzdCk7CisgICAgICAgIGZpbGVD
aG9vc2VyLmNob29zZUZpbGVzKGZpbGVMaXN0KTsKICAgICB9CiAgICAgLy8gRklYTUU6IFNob3cg
c29tZSBzb3J0IG9mIGVycm9yIGlmIHRvbyBtYW55IGZpbGVzIGFyZSBzZWxlY3RlZCBhbmQgdGhl
IGJ1ZmZlciBpcyB0b28gc21hbGwuICBGb3Igbm93LCB0aGlzIHdpbGwgZmFpbCBzaWxlbnRseS4K
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9t
ZUNsaWVudC5oIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xp
ZW50LmgKaW5kZXggNDkzZGUxNjIzMmNjZGI2MWQ5YWQ4OTMzOGJhOTdjYTYyZTBiMjYyMi4uOTI4
NzJiNDFjMTJmYjMxNWU1NDFlY2JkYjk1ZGJjYjE1NjYyNzJkYyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmgKKysrIGIvU291cmNl
L1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmgKQEAgLTExNSw3ICsx
MTUsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHJlYWNoZWRNYXhBcHBDYWNoZVNpemUo
aW50NjRfdCBzcGFjZU5lZWRlZCk7CiAgICAgdmlydHVhbCB2b2lkIHJlYWNoZWRBcHBsaWNhdGlv
bkNhY2hlT3JpZ2luUXVvdGEoV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4qLCBpbnQ2NF90IHRvdGFs
U3BhY2VOZWVkZWQpOwogCi0gICAgdmlydHVhbCB2b2lkIHJ1bk9wZW5QYW5lbChXZWJDb3JlOjpG
cmFtZSosIFBhc3NSZWZQdHI8V2ViQ29yZTo6RmlsZUNob29zZXI+KTsKKyAgICB2aXJ0dWFsIHZv
aWQgcnVuT3BlblBhbmVsKFdlYkNvcmU6OkZyYW1lJiwgV2ViQ29yZTo6RmlsZUNob29zZXImKTsK
ICAgICB2aXJ0dWFsIHZvaWQgbG9hZEljb25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8V1RGOjpTdHJp
bmc+JiwgV2ViQ29yZTo6RmlsZUljb25Mb2FkZXImKTsKIAogICAgIHZpcnR1YWwgdm9pZCBzZXRD
dXJzb3IoY29uc3QgV2ViQ29yZTo6Q3Vyc29yJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKaW5kZXggZWEy
YmFjYzE0YzdhYmFjYWY1YjhjYjAzNGYxZTNkODUxN2I2NGNhYy4uOGRkMzkyNjdiMmM4N2MzYWU4
YTcxMTE5NzQ5YTY0OGVmYTk3M2E1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4vV2Vi
Q29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
d2luL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcApAQCAtMSw1ICsxLDUg
QEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTUzMyw3ICs1
MzMsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZv
clJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9ucwogICAgIGZ1bmN0aW9uKFBvbGljeVVzZSk7
CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9y
TmV3V2luZG93QWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIGFjdGlvbiwgY29uc3QgUmVz
b3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4gZm9ybVN0YXRlLCBj
b25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgRnJhbWVQb2xpY3lGdW5jdGlvbiBmdW5jdGlvbikKK3Zv
aWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93
QWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIGFjdGlvbiwgY29uc3QgUmVzb3VyY2VSZXF1
ZXN0JiByZXF1ZXN0LCBGb3JtU3RhdGUqIGZvcm1TdGF0ZSwgY29uc3QgU3RyaW5nJiBmcmFtZU5h
bWUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24pCiB7CiAgICAgV2ViVmlldyogd2ViVmll
dyA9IG1fd2ViRnJhbWUtPndlYlZpZXcoKTsKICAgICBGcmFtZSogY29yZUZyYW1lID0gY29yZSht
X3dlYkZyYW1lKTsKQEAgLTU0NCw3ICs1NDQsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50
OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBOYXZpZ2F0aQog
ICAgICAgICBwb2xpY3lEZWxlZ2F0ZSA9IERlZmF1bHRQb2xpY3lEZWxlZ2F0ZTo6c2hhcmVkSW5z
dGFuY2UoKTsKIAogICAgIENPTVB0cjxJV2ViVVJMUmVxdWVzdD4gdXJsUmVxdWVzdChBZG9wdENP
TSwgV2ViTXV0YWJsZVVSTFJlcXVlc3Q6OmNyZWF0ZUluc3RhbmNlKHJlcXVlc3QpKTsKLSAgICBD
T01QdHI8V2ViQWN0aW9uUHJvcGVydHlCYWc+IGFjdGlvbkluZm9ybWF0aW9uKEFkb3B0Q09NLCBX
ZWJBY3Rpb25Qcm9wZXJ0eUJhZzo6Y3JlYXRlSW5zdGFuY2UoYWN0aW9uLCBmb3JtU3RhdGUgPyBm
b3JtU3RhdGUtPmZvcm0oKSA6IDAsIGNvcmVGcmFtZSkpOworICAgIENPTVB0cjxXZWJBY3Rpb25Q
cm9wZXJ0eUJhZz4gYWN0aW9uSW5mb3JtYXRpb24oQWRvcHRDT00sIFdlYkFjdGlvblByb3BlcnR5
QmFnOjpjcmVhdGVJbnN0YW5jZShhY3Rpb24sIGZvcm1TdGF0ZSA/ICZmb3JtU3RhdGUtPmZvcm0o
KSA6IG51bGxwdHIsIGNvcmVGcmFtZSkpOwogCiAgICAgaWYgKFNVQ0NFRURFRChwb2xpY3lEZWxl
Z2F0ZS0+ZGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKHdlYlZpZXcsIGFjdGlvbkluZm9y
bWF0aW9uLmdldCgpLCB1cmxSZXF1ZXN0LmdldCgpLCBCU3RyaW5nKGZyYW1lTmFtZSksIHNldFVw
UG9saWN5TGlzdGVuZXIoZnVuY3Rpb24pLmdldCgpKSkpCiAgICAgICAgIHJldHVybjsKQEAgLTU1
Miw3ICs1NTIsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBv
bGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBOYXZpZ2F0aQogICAgIGZ1bmN0aW9uKFBvbGlj
eVVzZSk7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9s
aWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIGNv
bnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgUGFzc1JlZlB0cjxGb3JtU3RhdGU+IGZvcm1T
dGF0ZSwgRnJhbWVQb2xpY3lGdW5jdGlvbiBmdW5jdGlvbikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZp
Z2F0aW9uQWN0aW9uJiBhY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9y
bVN0YXRlKiBmb3JtU3RhdGUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24pCiB7CiAgICAg
V2ViVmlldyogd2ViVmlldyA9IG1fd2ViRnJhbWUtPndlYlZpZXcoKTsKICAgICBGcmFtZSogY29y
ZUZyYW1lID0gY29yZShtX3dlYkZyYW1lKTsKQEAgLTU2Myw3ICs1NjMsNyBAQCB2b2lkIFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24o
Y29uc3QgTmF2aWdhdAogICAgICAgICBwb2xpY3lEZWxlZ2F0ZSA9IERlZmF1bHRQb2xpY3lEZWxl
Z2F0ZTo6c2hhcmVkSW5zdGFuY2UoKTsKIAogICAgIENPTVB0cjxJV2ViVVJMUmVxdWVzdD4gdXJs
UmVxdWVzdChBZG9wdENPTSwgV2ViTXV0YWJsZVVSTFJlcXVlc3Q6OmNyZWF0ZUluc3RhbmNlKHJl
cXVlc3QpKTsKLSAgICBDT01QdHI8V2ViQWN0aW9uUHJvcGVydHlCYWc+IGFjdGlvbkluZm9ybWF0
aW9uKEFkb3B0Q09NLCBXZWJBY3Rpb25Qcm9wZXJ0eUJhZzo6Y3JlYXRlSW5zdGFuY2UoYWN0aW9u
LCBmb3JtU3RhdGUgPyBmb3JtU3RhdGUtPmZvcm0oKSA6IDAsIGNvcmVGcmFtZSkpOworICAgIENP
TVB0cjxXZWJBY3Rpb25Qcm9wZXJ0eUJhZz4gYWN0aW9uSW5mb3JtYXRpb24oQWRvcHRDT00sIFdl
YkFjdGlvblByb3BlcnR5QmFnOjpjcmVhdGVJbnN0YW5jZShhY3Rpb24sIGZvcm1TdGF0ZSA/ICZm
b3JtU3RhdGUtPmZvcm0oKSA6IG51bGxwdHIsIGNvcmVGcmFtZSkpOwogCiAgICAgaWYgKFNVQ0NF
RURFRChwb2xpY3lEZWxlZ2F0ZS0+ZGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbih3ZWJW
aWV3LCBhY3Rpb25JbmZvcm1hdGlvbi5nZXQoKSwgdXJsUmVxdWVzdC5nZXQoKSwgbV93ZWJGcmFt
ZSwgc2V0VXBQb2xpY3lMaXN0ZW5lcihmdW5jdGlvbikuZ2V0KCkpKSkKICAgICAgICAgcmV0dXJu
OwpAQCAtNTgyLDExICs1ODIsMTEgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0
Y2hVbmFibGVUb0ltcGxlbWVudFBvbGljeShjb25zdCBSZXNvdXJjZUVycm9yJgogICAgIHBvbGlj
eURlbGVnYXRlLT51bmFibGVUb0ltcGxlbWVudFBvbGljeVdpdGhFcnJvcih3ZWJWaWV3LCB3ZWJF
cnJvci5nZXQoKSwgbV93ZWJGcmFtZSk7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0
ZT4pCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZl
bnQoUmVmPFdlYkNvcmU6OkZvcm1TdGF0ZT4mJikKIHsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRl
ckNsaWVudDo6ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShQYXNzUmVmUHRyPEZvcm1TdGF0ZT4gZm9y
bVN0YXRlLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQordm9pZCBXZWJGcmFtZUxvYWRl
ckNsaWVudDo6ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShGb3JtU3RhdGUmIGZvcm1TdGF0ZSwgRnJh
bWVQb2xpY3lGdW5jdGlvbiBmdW5jdGlvbikKIHsKICAgICBXZWJWaWV3KiB3ZWJWaWV3ID0gbV93
ZWJGcmFtZS0+d2ViVmlldygpOwogICAgIEZyYW1lKiBjb3JlRnJhbWUgPSBjb3JlKG1fd2ViRnJh
bWUpOwpAQCAtNTk5LDE3ICs1OTksMTcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hXaWxsU3VibWl0Rm9ybShQYXNzUmVmUHRyPEZvcm1TdGF0ZT4gZm9ybVN0YXQKICAgICAg
ICAgcmV0dXJuOwogICAgIH0KIAotICAgIENPTVB0cjxJRE9NRWxlbWVudD4gZm9ybUVsZW1lbnQo
QWRvcHRDT00sIERPTUVsZW1lbnQ6OmNyZWF0ZUluc3RhbmNlKGZvcm1TdGF0ZS0+Zm9ybSgpKSk7
CisgICAgQ09NUHRyPElET01FbGVtZW50PiBmb3JtRWxlbWVudChBZG9wdENPTSwgRE9NRWxlbWVu
dDo6Y3JlYXRlSW5zdGFuY2UoJmZvcm1TdGF0ZS5mb3JtKCkpKTsKIAogICAgIEhhc2hNYXA8U3Ry
aW5nLCBTdHJpbmc+IGZvcm1WYWx1ZXNNYXA7Ci0gICAgY29uc3QgU3RyaW5nUGFpclZlY3RvciYg
dGV4dEZpZWxkVmFsdWVzID0gZm9ybVN0YXRlLT50ZXh0RmllbGRWYWx1ZXMoKTsKKyAgICBjb25z
dCBTdHJpbmdQYWlyVmVjdG9yJiB0ZXh0RmllbGRWYWx1ZXMgPSBmb3JtU3RhdGUudGV4dEZpZWxk
VmFsdWVzKCk7CiAgICAgc2l6ZV90IHNpemUgPSB0ZXh0RmllbGRWYWx1ZXMuc2l6ZSgpOwogICAg
IGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc2l6ZTsgKytpKQogICAgICAgICBmb3JtVmFsdWVzTWFw
LmFkZCh0ZXh0RmllbGRWYWx1ZXNbaV0uZmlyc3QsIHRleHRGaWVsZFZhbHVlc1tpXS5zZWNvbmQp
OwogCiAgICAgQ09NUHRyPElQcm9wZXJ0eUJhZz4gZm9ybVZhbHVlc1Byb3BlcnR5QmFnKEFkb3B0
Q09NLCBDT01Qcm9wZXJ0eUJhZzxTdHJpbmc+OjpjcmVhdGVJbnN0YW5jZShmb3JtVmFsdWVzTWFw
KSk7CiAKLSAgICBDT01QdHI8V2ViRnJhbWU+IHNvdXJjZUZyYW1lKGtpdChmb3JtU3RhdGUtPnNv
dXJjZURvY3VtZW50KCktPmZyYW1lKCkpKTsKKyAgICBDT01QdHI8V2ViRnJhbWU+IHNvdXJjZUZy
YW1lKGtpdChmb3JtU3RhdGUuc291cmNlRG9jdW1lbnQoKS5mcmFtZSgpKSk7CiAgICAgaWYgKFNV
Q0NFRURFRChmb3JtRGVsZWdhdGUtPndpbGxTdWJtaXRGb3JtKG1fd2ViRnJhbWUsIHNvdXJjZUZy
YW1lLmdldCgpLCBmb3JtRWxlbWVudC5nZXQoKSwgZm9ybVZhbHVlc1Byb3BlcnR5QmFnLmdldCgp
LCBzZXRVcFBvbGljeUxpc3RlbmVyKGZ1bmN0aW9uKS5nZXQoKSkpKQogICAgICAgICByZXR1cm47
CiAKQEAgLTEwMTIsMjMgKzEwMTIsMTUgQEAgYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y2Fu
Q2FjaGVQYWdlKCkgY29uc3QKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotUmVmUHRyPEZyYW1lPiBX
ZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlRnJhbWUoY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0
cmluZyYgbmFtZSwgSFRNTEZyYW1lT3duZXJFbGVtZW50KiBvd25lckVsZW1lbnQsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgYm9vbCAvKmFsbG93
c1Njcm9sbGluZyovLCBpbnQgLyptYXJnaW5XaWR0aCovLCBpbnQgLyptYXJnaW5IZWlnaHQqLykK
LXsKLSAgICBSZWZQdHI8RnJhbWU+IHJlc3VsdCA9IGNyZWF0ZUZyYW1lKHVybCwgbmFtZSwgb3du
ZXJFbGVtZW50LCByZWZlcnJlcik7Ci0gICAgaWYgKCFyZXN1bHQpCi0gICAgICAgIHJldHVybiBu
dWxscHRyOwotICAgIHJldHVybiByZXN1bHQ7Ci19Ci0KLVJlZlB0cjxGcmFtZT4gV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYgVVJMLCBjb25zdCBTdHJpbmcmIG5h
bWUsIEhUTUxGcmFtZU93bmVyRWxlbWVudCogb3duZXJFbGVtZW50LCBjb25zdCBTdHJpbmcmIHJl
ZmVycmVyKQorUmVmUHRyPEZyYW1lPiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlRnJhbWUo
Y29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgbmFtZSwgSFRNTEZyYW1lT3duZXJFbGVtZW50
JiBvd25lckVsZW1lbnQsCisgICAgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgYm9vbCAvKmFsbG93
c1Njcm9sbGluZyovLCBpbnQgLyptYXJnaW5XaWR0aCovLCBpbnQgLyptYXJnaW5IZWlnaHQqLykK
IHsKICAgICBGcmFtZSogY29yZUZyYW1lID0gY29yZShtX3dlYkZyYW1lKTsKICAgICBBU1NFUlQo
Y29yZUZyYW1lKTsKIAogICAgIENPTVB0cjxXZWJGcmFtZT4gd2ViRnJhbWUoQWRvcHRDT00sIFdl
YkZyYW1lOjpjcmVhdGVJbnN0YW5jZSgpKTsKIAotICAgIFJlZlB0cjxGcmFtZT4gY2hpbGRGcmFt
ZSA9IHdlYkZyYW1lLT5jcmVhdGVTdWJmcmFtZVdpdGhPd25lckVsZW1lbnQobV93ZWJGcmFtZS0+
d2ViVmlldygpLCBjb3JlRnJhbWUtPnBhZ2UoKSwgb3duZXJFbGVtZW50KTsKKyAgICBSZWZQdHI8
RnJhbWU+IGNoaWxkRnJhbWUgPSB3ZWJGcmFtZS0+Y3JlYXRlU3ViZnJhbWVXaXRoT3duZXJFbGVt
ZW50KG1fd2ViRnJhbWUtPndlYlZpZXcoKSwgY29yZUZyYW1lLT5wYWdlKCksICZvd25lckVsZW1l
bnQpOwogCiAgICAgY2hpbGRGcmFtZS0+dHJlZSgpLnNldE5hbWUobmFtZSk7CiAgICAgY29yZUZy
YW1lLT50cmVlKCkuYXBwZW5kQ2hpbGQoY2hpbGRGcmFtZSk7CkBAIC0xMTMwLDcgKzExMjIsNyBA
QCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZhaWxUb1N0YXJ0UGx1Z2lu
KGNvbnN0IFBsdWdpblZpZXcqIHBsdWdpbgogICAgIHJlc291cmNlTG9hZERlbGVnYXRlLT5wbHVn
SW5GYWlsZWRXaXRoRXJyb3Iod2ViVmlldywgZXJyb3IuZ2V0KCksIGdldFdlYkRhdGFTb3VyY2Uo
ZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkpKTsKIH0KIAotUmVmUHRyPFdpZGdldD4g
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiBwbHVnaW5T
aXplLCBIVE1MUGx1Z0luRWxlbWVudCogZWxlbWVudCwgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFZl
Y3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1
ZXMsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUsIGJvb2wgbG9hZE1hbnVhbGx5KQorUmVmUHRyPFdp
ZGdldD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiBw
bHVnaW5TaXplLCBIVE1MUGx1Z0luRWxlbWVudCYgZWxlbWVudCwgY29uc3QgVVJMJiB1cmwsIGNv
bnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFy
YW1WYWx1ZXMsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUsIGJvb2wgbG9hZE1hbnVhbGx5KQogewog
ICAgIFdlYlZpZXcqIHdlYlZpZXcgPSBtX3dlYkZyYW1lLT53ZWJWaWV3KCk7CiAKQEAgLTExNDQs
NyArMTEzNiw3IEBAIFJlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQ
bHVnaW4oY29uc3QgSW50U2l6ZSYgcGx1Z2luU2l6ZSwgSFRNCiAgICAgICAgICAgICBmb3IgKHVu
c2lnbmVkIGkgPSAwOyBpIDwgcGFyYW1OYW1lcy5zaXplKCk7IGkrKykgCiAgICAgICAgICAgICAg
ICAgdmlld0FyZ3VtZW50cy5zZXQocGFyYW1OYW1lc1tpXSwgcGFyYW1WYWx1ZXNbaV0pOwogICAg
ICAgICAgICAgQ09NUHRyPElQcm9wZXJ0eUJhZz4gdmlld0FyZ3VtZW50c0JhZyhBZG9wdENPTSwg
Q09NUHJvcGVydHlCYWc8U3RyaW5nPjo6YWRvcHQodmlld0FyZ3VtZW50cykpOwotICAgICAgICAg
ICAgQ09NUHRyPElET01FbGVtZW50PiBjb250YWluaW5nRWxlbWVudChBZG9wdENPTSwgRE9NRWxl
bWVudDo6Y3JlYXRlSW5zdGFuY2UoZWxlbWVudCkpOworICAgICAgICAgICAgQ09NUHRyPElET01F
bGVtZW50PiBjb250YWluaW5nRWxlbWVudChBZG9wdENPTSwgRE9NRWxlbWVudDo6Y3JlYXRlSW5z
dGFuY2UoJmVsZW1lbnQpKTsKIAogICAgICAgICAgICAgSGFzaE1hcDxTdHJpbmcsIENPTVZhcmlh
bnQ+IGFyZ3VtZW50czsKIApAQCAtMTE2MiwxMyArMTE1NCwxMyBAQCBSZWZQdHI8V2lkZ2V0PiBX
ZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlUGx1Z2luKGNvbnN0IEludFNpemUmIHBsdWdpblNp
emUsIEhUTQogICAgICAgICAgICAgICAgIEhSRVNVTFQgaHIgPSB3ZWJWaWV3LT52aWV3V2luZG93
KCZwYXJlbnRXaW5kb3cpOwogICAgICAgICAgICAgICAgIEFTU0VSVChTVUNDRUVERUQoaHIpKTsK
IAotICAgICAgICAgICAgICAgIHJldHVybiBFbWJlZGRlZFdpZGdldDo6Y3JlYXRlKHZpZXcuZ2V0
KCksIGVsZW1lbnQsIHBhcmVudFdpbmRvdywgcGx1Z2luU2l6ZSk7CisgICAgICAgICAgICAgICAg
cmV0dXJuIEVtYmVkZGVkV2lkZ2V0OjpjcmVhdGUodmlldy5nZXQoKSwgJmVsZW1lbnQsIHBhcmVu
dFdpbmRvdywgcGx1Z2luU2l6ZSk7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICB9CiAK
ICAgICBGcmFtZSogZnJhbWUgPSBjb3JlKG1fd2ViRnJhbWUpOwotICAgIFJlZlB0cjxQbHVnaW5W
aWV3PiBwbHVnaW5WaWV3ID0gUGx1Z2luVmlldzo6Y3JlYXRlKGZyYW1lLCBwbHVnaW5TaXplLCBl
bGVtZW50LCB1cmwsIHBhcmFtTmFtZXMsIHBhcmFtVmFsdWVzLCBtaW1lVHlwZSwgbG9hZE1hbnVh
bGx5KTsKKyAgICBSZWZQdHI8UGx1Z2luVmlldz4gcGx1Z2luVmlldyA9IFBsdWdpblZpZXc6OmNy
ZWF0ZShmcmFtZSwgcGx1Z2luU2l6ZSwgJmVsZW1lbnQsIHVybCwgcGFyYW1OYW1lcywgcGFyYW1W
YWx1ZXMsIG1pbWVUeXBlLCBsb2FkTWFudWFsbHkpOwogCiAgICAgaWYgKHBsdWdpblZpZXctPnN0
YXR1cygpID09IFBsdWdpblN0YXR1c0xvYWRlZFN1Y2Nlc3NmdWxseSkKICAgICAgICAgcmV0dXJu
IHBsdWdpblZpZXc7CkBAIC0xMTg3LDkgKzExNzksOSBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xp
ZW50OjpyZWRpcmVjdERhdGFUb1BsdWdpbihXaWRnZXQqIHBsdWdpbldpZGdldCkKICAgICAgICAg
bV9tYW51YWxMb2FkZXIgPSBzdGF0aWNfY2FzdDxFbWJlZGRlZFdpZGdldCo+KHBsdWdpbldpZGdl
dCk7CiB9CiAKLVBhc3NSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRl
SmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXplJiBwbHVnaW5TaXplLCBIVE1MQXBwbGV0RWxl
bWVudCogZWxlbWVudCwgY29uc3QgVVJMJiAvKmJhc2VVUkwqLywgY29uc3QgVmVjdG9yPFN0cmlu
Zz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykKK1Bhc3NS
ZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlSmF2YUFwcGxldFdpZGdl
dChjb25zdCBJbnRTaXplJiBwbHVnaW5TaXplLCBIVE1MQXBwbGV0RWxlbWVudCYgZWxlbWVudCwg
Y29uc3QgVVJMJiAvKmJhc2VVUkwqLywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMs
IGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykKIHsKLSAgICBSZWZQdHI8UGx1Z2lu
Vmlldz4gcGx1Z2luVmlldyA9IFBsdWdpblZpZXc6OmNyZWF0ZShjb3JlKG1fd2ViRnJhbWUpLCBw
bHVnaW5TaXplLCBlbGVtZW50LCBVUkwoKSwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMsICJhcHBs
aWNhdGlvbi94LWphdmEtYXBwbGV0IiwgZmFsc2UpOworICAgIFJlZlB0cjxQbHVnaW5WaWV3PiBw
bHVnaW5WaWV3ID0gUGx1Z2luVmlldzo6Y3JlYXRlKGNvcmUobV93ZWJGcmFtZSksIHBsdWdpblNp
emUsICZlbGVtZW50LCBVUkwoKSwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMsICJhcHBsaWNhdGlv
bi94LWphdmEtYXBwbGV0IiwgZmFsc2UpOwogCiAgICAgLy8gQ2hlY2sgaWYgdGhlIHBsdWdpbiBj
YW4gYmUgbG9hZGVkIHN1Y2Nlc3NmdWxseQogICAgIGlmIChwbHVnaW5WaWV3LT5wbHVnaW4oKSAm
JiBwbHVnaW5WaWV3LT5wbHVnaW4oKS0+bG9hZCgpKQpAQCAtMTI2MCw3ICsxMjUyLDcgQEAgdm9p
ZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6cmVnaXN0ZXJGb3JJY29uTm90aWZpY2F0aW9uKGJvb2wg
bGlzdGVuKQogICAgIG1fd2ViRnJhbWUtPndlYlZpZXcoKS0+cmVnaXN0ZXJGb3JJY29uTm90aWZp
Y2F0aW9uKGxpc3Rlbik7CiB9CiAKLVBhc3NSZWZQdHI8RnJhbWVOZXR3b3JraW5nQ29udGV4dD4g
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkKK1JlZjxGcmFt
ZU5ldHdvcmtpbmdDb250ZXh0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlTmV0d29ya2lu
Z0NvbnRleHQoKQogewogICAgIHJldHVybiBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0OjpjcmVh
dGUoY29yZShtX3dlYkZyYW1lKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9X
ZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oIGIvU291cmNlL1dlYktpdC93aW4v
V2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaAppbmRleCA4Y2E5YjlkZWNkMTlj
ZWM5N2U0YmE3ZDNkNTE2ODY0Y2UxODllZTc4Li5jNzY1NzVjOGNkOWJlZmU1OWYzNDA3NTY2YmE5
MjU3YzFiZDRjMTZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9y
dC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVT
dXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29w
eXJpZ2h0IChDKSAyMDA2LTIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICog
Q29weXJpZ2h0IChDKSAyMDA2LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgog
ICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC00OSw5ICs0OSw5IEBAIHB1YmxpYzoK
ICAgICB2b2lkIHNldFdlYkZyYW1lKFdlYkZyYW1lKiB3ZWJGcmFtZSkgeyBtX3dlYkZyYW1lID0g
d2ViRnJhbWU7IH0KICAgICBXZWJGcmFtZSogd2ViRnJhbWUoKSBjb25zdCB7IHJldHVybiBtX3dl
YkZyYW1lOyB9CiAKLSAgICB2aXJ0dWFsIGJvb2wgaGFzV2ViVmlldygpIGNvbnN0OworICAgIGJv
b2wgaGFzV2ViVmlldygpIGNvbnN0IG92ZXJyaWRlOwogCi0gICAgdmlydHVhbCBQYXNzUmVmUHRy
PFdlYkNvcmU6OkZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0
KCk7CisgICAgUmVmPFdlYkNvcmU6OkZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZU5ldHdv
cmtpbmdDb250ZXh0KCkgb3ZlcnJpZGU7CiAKICAgICB2b2lkIGZyYW1lTG9hZGVyRGVzdHJveWVk
KCkgb3ZlcnJpZGU7CiAgICAgdm9pZCBtYWtlUmVwcmVzZW50YXRpb24oV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXIqKSBvdmVycmlkZTsKQEAgLTYzLDcgKzYzLDcgQEAgcHVibGljOgogICAgIHZvaWQg
ZGV0YWNoZWRGcm9tUGFyZW50MygpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBjb252ZXJ0TWFpblJl
c291cmNlTG9hZFRvRG93bmxvYWQoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpT
ZXNzaW9uSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgYXNzaWduSWRl
bnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpOworICAg
IHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYgcmVk
aXJlY3RSZXNwb25zZSkgb3ZlcnJpZGU7CiAgICAgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3Rv
cmFnZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikg
b3ZlcnJpZGU7CkBAIC03Miw3ICs3Miw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGRpc3BhdGNoRGlk
UmVjZWl2ZUNvbnRlbnRMZW5ndGgoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoKSBvdmVycmlkZTsKICAgICB2b2lkIGRpc3Bh
dGNoRGlkRmluaXNoTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllcikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5n
KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7Ci0gICAgdmlydHVhbCBib29sIHNo
b3VsZENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBjb25zdCB1bnNp
Z25lZCBjaGFyKiBkYXRhLCB1bnNpZ25lZCBsb25nIGxvbmcgbGVuZ3RoKTsKKyAgICBib29sIHNo
b3VsZENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBjb25zdCB1bnNp
Z25lZCBjaGFyKiBkYXRhLCB1bnNpZ25lZCBsb25nIGxvbmcgbGVuZ3RoKSBvdmVycmlkZTsKIAog
ICAgIHZvaWQgZGlzcGF0Y2hEaWREaXNwYXRjaE9ubG9hZEV2ZW50cygpIG92ZXJyaWRlOwogICAg
IHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlU2VydmVyUmVkaXJlY3RGb3JQcm92aXNpb25hbExvYWQo
KSBvdmVycmlkZTsKQEAgLTk0LDE0ICs5NCwxNCBAQCBwdWJsaWM6CiAgICAgdm9pZCBkaXNwYXRj
aERpZFJlYWNoTGF5b3V0TWlsZXN0b25lKFdlYkNvcmU6OkxheW91dE1pbGVzdG9uZXMpIG92ZXJy
aWRlOwogCiAgICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvclJlc3BvbnNlKGNvbnN0IFdl
YkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qm
LCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3Bh
dGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRp
b25BY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPFdl
YkNvcmU6OkZvcm1TdGF0ZT4sIGNvbnN0IFdURjo6U3RyaW5nJiBmcmFtZU5hbWUsIFdlYkNvcmU6
OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQ
b2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24m
LCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPFdlYkNvcmU6OkZv
cm1TdGF0ZT4sIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOworICAgIHZv
aWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgV2ViQ29yZTo6
TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFdlYkNv
cmU6OkZvcm1TdGF0ZSosIGNvbnN0IFdURjo6U3RyaW5nJiBmcmFtZU5hbWUsIFdlYkNvcmU6OkZy
YW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xp
Y3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mLCBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpGb3JtU3RhdGUqLCBXZWJD
b3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBvdmVycmlkZTsKICAgICB2b2lkIGNhbmNlbFBvbGlj
eUNoZWNrKCkgb3ZlcnJpZGU7CiAKICAgICB2b2lkIGRpc3BhdGNoVW5hYmxlVG9JbXBsZW1lbnRQ
b2xpY3koY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwogCi0gICAgdm9p
ZCBkaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoUGFzc1JlZlB0cjxXZWJDb3JlOjpGb3JtU3Rh
dGU+KSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0oUGFzc1JlZlB0
cjxXZWJDb3JlOjpGb3JtU3RhdGU+LCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBvdmVy
cmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChSZWY8V2ViQ29yZTo6
Rm9ybVN0YXRlPiYmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0o
V2ViQ29yZTo6Rm9ybVN0YXRlJiwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgb3ZlcnJp
ZGU7CiAKICAgICB2b2lkIHJldmVydFRvUHJvdmlzaW9uYWxTdGF0ZShXZWJDb3JlOjpEb2N1bWVu
dExvYWRlciopIG92ZXJyaWRlOwogICAgIGJvb2wgZGlzcGF0Y2hEaWRMb2FkUmVzb3VyY2VGcm9t
TWVtb3J5Q2FjaGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgaW50IGxlbmd0
aCkgb3ZlcnJpZGU7CkBAIC0xMTQsOSArMTE0LDkgQEAgcHVibGljOgogCiAgICAgdm9pZCBzdGFy
dERvd25sb2FkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFN0cmluZyYg
c3VnZ2VzdGVkTmFtZSA9IFN0cmluZygpKSBvdmVycmlkZTsKIAotICAgIHZpcnR1YWwgdm9pZCBw
cm9ncmVzc1N0YXJ0ZWQoV2ViQ29yZTo6RnJhbWUmKTsKLSAgICB2aXJ0dWFsIHZvaWQgcHJvZ3Jl
c3NFc3RpbWF0ZUNoYW5nZWQoV2ViQ29yZTo6RnJhbWUmKTsKLSAgICB2aXJ0dWFsIHZvaWQgcHJv
Z3Jlc3NGaW5pc2hlZChXZWJDb3JlOjpGcmFtZSYpOworICAgIHZvaWQgcHJvZ3Jlc3NTdGFydGVk
KFdlYkNvcmU6OkZyYW1lJikgb3ZlcnJpZGU7CisgICAgdm9pZCBwcm9ncmVzc0VzdGltYXRlQ2hh
bmdlZChXZWJDb3JlOjpGcmFtZSYpIG92ZXJyaWRlOworICAgIHZvaWQgcHJvZ3Jlc3NGaW5pc2hl
ZChXZWJDb3JlOjpGcmFtZSYpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBjb21taXR0ZWRMb2FkKFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgY2hhciosIGludCkgb3ZlcnJpZGU7CiAgICAg
dm9pZCBmaW5pc2hlZExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBvdmVycmlkZTsK
QEAgLTE0OSwxMCArMTQ5LDEwIEBAIHB1YmxpYzoKIAogICAgIFdURjo6U3RyaW5nIHVzZXJBZ2Vu
dChjb25zdCBXZWJDb3JlOjpVUkwmKSBvdmVycmlkZTsKIAotICAgIHZpcnR1YWwgUmVmPFdlYkNv
cmU6OkRvY3VtZW50TG9hZGVyPiBjcmVhdGVEb2N1bWVudExvYWRlcihjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpTdWJzdGl0dXRlRGF0YSYpOworICAgIFJl
ZjxXZWJDb3JlOjpEb2N1bWVudExvYWRlcj4gY3JlYXRlRG9jdW1lbnRMb2FkZXIoY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6U3Vic3RpdHV0ZURhdGEmKSBv
dmVycmlkZTsKICAgICB2b2lkIHVwZGF0ZUNhY2hlZERvY3VtZW50TG9hZGVyKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyJikgb3ZlcnJpZGUgeyB9CiAKLSAgICB2aXJ0dWFsIHZvaWQgc2V0VGl0bGUo
Y29uc3QgV2ViQ29yZTo6U3RyaW5nV2l0aERpcmVjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlVSTCYp
OworICAgIHZvaWQgc2V0VGl0bGUoY29uc3QgV2ViQ29yZTo6U3RyaW5nV2l0aERpcmVjdGlvbiYs
IGNvbnN0IFdlYkNvcmU6OlVSTCYpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBzYXZlUGxhdGZvcm1E
YXRhVG9DYWNoZWRGcmFtZShXZWJDb3JlOjpDYWNoZWRGcmFtZSopIG92ZXJyaWRlOwogICAgIHZv
aWQgdHJhbnNpdGlvblRvQ29tbWl0dGVkRnJvbUNhY2hlZEZyYW1lKFdlYkNvcmU6OkNhY2hlZEZy
YW1lKikgb3ZlcnJpZGU7CkBAIC0xNzYsMTUgKzE3NiwxNSBAQCBwdWJsaWM6CiAKICAgICB2b2lk
IGRpc3BhdGNoRGlkQmVjb21lRnJhbWVzZXQoYm9vbCkgb3ZlcnJpZGU7CiAKLSAgICB2aXJ0dWFs
IGJvb2wgY2FuQ2FjaGVQYWdlKCkgY29uc3Q7CisgICAgYm9vbCBjYW5DYWNoZVBhZ2UoKSBjb25z
dCBvdmVycmlkZTsKIAotICAgIFJlZlB0cjxXZWJDb3JlOjpGcmFtZT4gY3JlYXRlRnJhbWUoY29u
c3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgV1RGOjpTdHJpbmcmIG5hbWUsIFdlYkNvcmU6OkhUTUxG
cmFtZU93bmVyRWxlbWVudCosCisgICAgUmVmUHRyPFdlYkNvcmU6OkZyYW1lPiBjcmVhdGVGcmFt
ZShjb25zdCBXZWJDb3JlOjpVUkwmLCBjb25zdCBXVEY6OlN0cmluZyYgbmFtZSwgV2ViQ29yZTo6
SFRNTEZyYW1lT3duZXJFbGVtZW50JiwKICAgICAgICAgY29uc3QgV1RGOjpTdHJpbmcmIHJlZmVy
cmVyLCBib29sIGFsbG93c1Njcm9sbGluZywgaW50IG1hcmdpbldpZHRoLCBpbnQgbWFyZ2luSGVp
Z2h0KSBvdmVycmlkZTsKLSAgICBSZWZQdHI8V2ViQ29yZTo6V2lkZ2V0PiBjcmVhdGVQbHVnaW4o
Y29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50KiwgY29u
c3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgVmVjdG9yPFdURjo6U3RyaW5nPiYsIGNvbnN0IFZlY3Rv
cjxXVEY6OlN0cmluZz4mLCBjb25zdCBXVEY6OlN0cmluZyYsIGJvb2wgbG9hZE1hbnVhbGx5KSBv
dmVycmlkZTsKKyAgICBSZWZQdHI8V2ViQ29yZTo6V2lkZ2V0PiBjcmVhdGVQbHVnaW4oY29uc3Qg
V2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50JiwgY29uc3QgV2Vi
Q29yZTo6VVJMJiwgY29uc3QgVmVjdG9yPFdURjo6U3RyaW5nPiYsIGNvbnN0IFZlY3RvcjxXVEY6
OlN0cmluZz4mLCBjb25zdCBXVEY6OlN0cmluZyYsIGJvb2wgbG9hZE1hbnVhbGx5KSBvdmVycmlk
ZTsKICAgICB2b2lkIHJlY3JlYXRlUGx1Z2luKFdlYkNvcmU6OldpZGdldCopIG92ZXJyaWRlIHsg
fQogICAgIHZvaWQgcmVkaXJlY3REYXRhVG9QbHVnaW4oV2ViQ29yZTo6V2lkZ2V0KiBwbHVnaW5X
aWRnZXQpIG92ZXJyaWRlOwogCi0gICAgUGFzc1JlZlB0cjxXZWJDb3JlOjpXaWRnZXQ+IGNyZWF0
ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxB
cHBsZXRFbGVtZW50KiwgY29uc3QgV2ViQ29yZTo6VVJMJiBiYXNlVVJMLCBjb25zdCBWZWN0b3I8
V1RGOjpTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiBwYXJh
bVZhbHVlcykgb3ZlcnJpZGU7CisgICAgUmVmUHRyPFdlYkNvcmU6OldpZGdldD4gY3JlYXRlSmF2
YUFwcGxldFdpZGdldChjb25zdCBXZWJDb3JlOjpJbnRTaXplJiwgV2ViQ29yZTo6SFRNTEFwcGxl
dEVsZW1lbnQmLCBjb25zdCBXZWJDb3JlOjpVUkwmIGJhc2VVUkwsIGNvbnN0IFZlY3RvcjxXVEY6
OlN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mIHBhcmFtVmFs
dWVzKSBvdmVycmlkZTsKIAogICAgIFdlYkNvcmU6Ok9iamVjdENvbnRlbnRUeXBlIG9iamVjdENv
bnRlbnRUeXBlKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNvbnN0IFdURjo6U3RyaW5nJiBtaW1lVHlw
ZSkgb3ZlcnJpZGU7CiAgICAgV1RGOjpTdHJpbmcgb3ZlcnJpZGVNZWRpYVR5cGUoKSBjb25zdCBv
dmVycmlkZTsKQEAgLTE5NiwyMCArMTk2LDE4IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgcmVnaXN0
ZXJGb3JJY29uTm90aWZpY2F0aW9uKGJvb2wgbGlzdGVuKSBvdmVycmlkZTsKIAotICAgIHZpcnR1
YWwgYm9vbCBzaG91bGRBbHdheXNVc2VQbHVnaW5Eb2N1bWVudChjb25zdCBXVEY6OlN0cmluZyYg
bWltZVR5cGUpIGNvbnN0OwotCi0gICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoRGlkRmFpbFRvU3Rh
cnRQbHVnaW4oY29uc3QgV2ViQ29yZTo6UGx1Z2luVmlldyopIGNvbnN0OworICAgIGJvb2wgc2hv
dWxkQWx3YXlzVXNlUGx1Z2luRG9jdW1lbnQoY29uc3QgV1RGOjpTdHJpbmcmIG1pbWVUeXBlKSBj
b25zdCBvdmVycmlkZTsKIAogICAgIHZvaWQgcHJlZmV0Y2hETlMoY29uc3QgU3RyaW5nJikgb3Zl
cnJpZGU7CiAKLXByb3RlY3RlZDoKLSAgICBjbGFzcyBXZWJGcmFtZVBvbGljeUxpc3RlbmVyUHJp
dmF0ZTsKLSAgICBzdGQ6OnVuaXF1ZV9wdHI8V2ViRnJhbWVQb2xpY3lMaXN0ZW5lclByaXZhdGU+
IG1fcG9saWN5TGlzdGVuZXJQcml2YXRlOwotCiBwcml2YXRlOgotICAgIFJlZlB0cjxXZWJDb3Jl
OjpGcmFtZT4gY3JlYXRlRnJhbWUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgV1RGOjpTdHJp
bmcmIG5hbWUsIFdlYkNvcmU6OkhUTUxGcmFtZU93bmVyRWxlbWVudCosIGNvbnN0IFdURjo6U3Ry
aW5nJiByZWZlcnJlcik7CiAgICAgV2ViSGlzdG9yeSogd2ViSGlzdG9yeSgpIGNvbnN0OwogCisg
ICAgdm9pZCBkaXNwYXRjaERpZEZhaWxUb1N0YXJ0UGx1Z2luKGNvbnN0IFdlYkNvcmU6OlBsdWdp
blZpZXcqKSBjb25zdDsKKworICAgIGNsYXNzIFdlYkZyYW1lUG9saWN5TGlzdGVuZXJQcml2YXRl
OworICAgIHN0ZDo6dW5pcXVlX3B0cjxXZWJGcmFtZVBvbGljeUxpc3RlbmVyUHJpdmF0ZT4gbV9w
b2xpY3lMaXN0ZW5lclByaXZhdGU7CisKICAgICBXZWJGcmFtZSogbV93ZWJGcmFtZTsKIAogICAg
IC8vIFBvaW50cyB0byB0aGUgbWFudWFsIGxvYWRlciB0aGF0IGRhdGEgc2hvdWxkIGJlIHJlZGly
ZWN0ZWQgdG8uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9X
ZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0LmggYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3Vw
cG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0LmgKaW5kZXggZWFjMzA3MjBhYzFhNTRmODY1
MTAxYmZmNTE0MGM3NGRlMGFmYjBmOS4uZmIyYTc4MzVkOGY4NzM5ZDRjMTUwYWI1MjgzZTViN2Qy
MGI1OGVhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2Vi
RnJhbWVOZXR3b3JraW5nQ29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVT
dXBwb3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQuaApAQCAtMjgsOSArMjgsOSBAQAogCiBj
bGFzcyBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0IDogcHVibGljIFdlYkNvcmU6OkZyYW1lTmV0
d29ya2luZ0NvbnRleHQgewogcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFdlYkZyYW1l
TmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZShXZWJDb3JlOjpGcmFtZSogZnJhbWUpCisgICAgc3Rh
dGljIFJlZjxXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBjcmVhdGUoV2ViQ29yZTo6RnJhbWUq
IGZyYW1lKQogICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBXZWJGcmFtZU5ldHdv
cmtpbmdDb250ZXh0KGZyYW1lKSk7CisgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYkZy
YW1lTmV0d29ya2luZ0NvbnRleHQoZnJhbWUpKTsKICAgICB9CiAKICNpZiBVU0UoQ0ZVUkxDT05O
RUNUSU9OKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSVdlYkFyY2hpdmUu
aCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUElXZWJBcmNoaXZlLmgKaW5kZXggZDk2YjU5NmRh
YmZiZTkwNjhhYzUzNDEwNjg3YmZhMmQxODYxOGIyMy4uODM3NTc3N2RiODBmZTA3ZWFjODM0OTMw
MzNiZDE4NjRhYmFjN2E3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSVdl
YkFyY2hpdmUuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJV2ViQXJjaGl2ZS5oCkBA
IC0yOSw3ICsyOSw2IEBACiAjaWYgUExBVEZPUk0oQ09DT0EpCiAKICNpbmNsdWRlICJBUElPYmpl
Y3QuaCIKLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIu
aD4KIAogbmFtZXNwYWNlIEFQSSB7CkBAIC01MCw5ICs0OSw5IEBAIGNsYXNzIFdlYkFyY2hpdmUg
OiBwdWJsaWMgQVBJOjpPYmplY3RJbXBsPEFQSTo6T2JqZWN0OjpUeXBlOjpXZWJBcmNoaXZlPiB7
CiBwdWJsaWM6CiAgICAgdmlydHVhbCB+V2ViQXJjaGl2ZSgpOwogCi0gICAgc3RhdGljIFJlZjxX
ZWJBcmNoaXZlPiBjcmVhdGUoV2ViQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3VyY2UsIFBhc3NS
ZWZQdHI8QVBJOjpBcnJheT4gc3VicmVzb3VyY2VzLCBQYXNzUmVmUHRyPEFQSTo6QXJyYXk+IHN1
YmZyYW1lQXJjaGl2ZXMpOworICAgIHN0YXRpYyBSZWY8V2ViQXJjaGl2ZT4gY3JlYXRlKFdlYkFy
Y2hpdmVSZXNvdXJjZSogbWFpblJlc291cmNlLCBSZWZQdHI8QVBJOjpBcnJheT4mJiBzdWJyZXNv
dXJjZXMsIFJlZlB0cjxBUEk6OkFycmF5PiYmIHN1YmZyYW1lQXJjaGl2ZXMpOwogICAgIHN0YXRp
YyBSZWY8V2ViQXJjaGl2ZT4gY3JlYXRlKEFQSTo6RGF0YSopOwotICAgIHN0YXRpYyBSZWY8V2Vi
QXJjaGl2ZT4gY3JlYXRlKFBhc3NSZWZQdHI8V2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZT4pOwor
ICAgIHN0YXRpYyBSZWY8V2ViQXJjaGl2ZT4gY3JlYXRlKFJlZlB0cjxXZWJDb3JlOjpMZWdhY3lX
ZWJBcmNoaXZlPiYmKTsKICAgICBzdGF0aWMgUmVmPFdlYkFyY2hpdmU+IGNyZWF0ZShXZWJDb3Jl
OjpSYW5nZSopOwogCiAgICAgV2ViQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3VyY2UoKTsKQEAg
LTY0LDkgKzYzLDkgQEAgcHVibGljOgogICAgIFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hpdmUqIGNv
cmVMZWdhY3lXZWJBcmNoaXZlKCk7CiAKIHByaXZhdGU6Ci0gICAgV2ViQXJjaGl2ZShXZWJBcmNo
aXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSwgUGFzc1JlZlB0cjxBUEk6OkFycmF5PiBzdWJyZXNv
dXJjZXMsIFBhc3NSZWZQdHI8QVBJOjpBcnJheT4gc3ViZnJhbWVBcmNoaXZlcyk7CisgICAgV2Vi
QXJjaGl2ZShXZWJBcmNoaXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSwgUmVmUHRyPEFQSTo6QXJy
YXk+JiYgc3VicmVzb3VyY2VzLCBSZWZQdHI8QVBJOjpBcnJheT4mJiBzdWJmcmFtZUFyY2hpdmVz
KTsKICAgICBXZWJBcmNoaXZlKEFQSTo6RGF0YSopOwotICAgIFdlYkFyY2hpdmUoUGFzc1JlZlB0
cjxXZWJDb3JlOjpMZWdhY3lXZWJBcmNoaXZlPik7CisgICAgV2ViQXJjaGl2ZShSZWZQdHI8V2Vi
Q29yZTo6TGVnYWN5V2ViQXJjaGl2ZT4mJik7CiAKICAgICBSZWZQdHI8V2ViQ29yZTo6TGVnYWN5
V2ViQXJjaGl2ZT4gbV9sZWdhY3lXZWJBcmNoaXZlOwogICAgIFJlZlB0cjxXZWJBcmNoaXZlUmVz
b3VyY2U+IG1fY2FjaGVkTWFpblJlc291cmNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
U2hhcmVkL0FQSVdlYkFyY2hpdmUubW0gYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJV2ViQXJj
aGl2ZS5tbQppbmRleCA5MjkwM2IzNDdhNDlmY2VjZmE2YzM1YzU5ZTJmNmQ2OTE2ZDk4MmU5Li5m
MmYwZmUwMTcxZjllMzMzMTQ0N2QzNmQwYTQ3YzZkYmUwMWEyMzJlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9TaGFyZWQvQVBJV2ViQXJjaGl2ZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9T
aGFyZWQvQVBJV2ViQXJjaGl2ZS5tbQpAQCAtMzgsOSArMzgsOSBAQCB1c2luZyBuYW1lc3BhY2Ug
V2ViQ29yZTsKIAogbmFtZXNwYWNlIEFQSSB7CiAKLVJlZjxXZWJBcmNoaXZlPiBXZWJBcmNoaXZl
OjpjcmVhdGUoV2ViQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3VyY2UsIFBhc3NSZWZQdHI8QVBJ
OjpBcnJheT4gc3VicmVzb3VyY2VzLCBQYXNzUmVmUHRyPEFQSTo6QXJyYXk+IHN1YmZyYW1lQXJj
aGl2ZXMpCitSZWY8V2ViQXJjaGl2ZT4gV2ViQXJjaGl2ZTo6Y3JlYXRlKFdlYkFyY2hpdmVSZXNv
dXJjZSogbWFpblJlc291cmNlLCBSZWZQdHI8QVBJOjpBcnJheT4mJiBzdWJyZXNvdXJjZXMsIFJl
ZlB0cjxBUEk6OkFycmF5PiYmIHN1YmZyYW1lQXJjaGl2ZXMpCiB7Ci0gICAgcmV0dXJuIGFkb3B0
UmVmKCpuZXcgV2ViQXJjaGl2ZShtYWluUmVzb3VyY2UsIHN1YnJlc291cmNlcywgc3ViZnJhbWVB
cmNoaXZlcykpOworICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYkFyY2hpdmUobWFpblJlc291
cmNlLCBXVEZNb3ZlKHN1YnJlc291cmNlcyksIFdURk1vdmUoc3ViZnJhbWVBcmNoaXZlcykpKTsK
IH0KIAogUmVmPFdlYkFyY2hpdmU+IFdlYkFyY2hpdmU6OmNyZWF0ZShBUEk6OkRhdGEqIGRhdGEp
CkBAIC00OCw5ICs0OCw5IEBAIFJlZjxXZWJBcmNoaXZlPiBXZWJBcmNoaXZlOjpjcmVhdGUoQVBJ
OjpEYXRhKiBkYXRhKQogICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYkFyY2hpdmUoZGF0YSkp
OwogfQogCi1SZWY8V2ViQXJjaGl2ZT4gV2ViQXJjaGl2ZTo6Y3JlYXRlKFBhc3NSZWZQdHI8TGVn
YWN5V2ViQXJjaGl2ZT4gbGVnYWN5V2ViQXJjaGl2ZSkKK1JlZjxXZWJBcmNoaXZlPiBXZWJBcmNo
aXZlOjpjcmVhdGUoUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+JiYgbGVnYWN5V2ViQXJjaGl2ZSkK
IHsKLSAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBXZWJBcmNoaXZlKGxlZ2FjeVdlYkFyY2hpdmUp
KTsKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBXZWJBcmNoaXZlKGxlZ2FjeVdlYkFyY2hpdmUu
cmVsZWFzZU5vbk51bGwoKSkpOwogfQogCiBSZWY8V2ViQXJjaGl2ZT4gV2ViQXJjaGl2ZTo6Y3Jl
YXRlKFJhbmdlKiByYW5nZSkKQEAgLTU4LDMxICs1OCwzMiBAQCBSZWY8V2ViQXJjaGl2ZT4gV2Vi
QXJjaGl2ZTo6Y3JlYXRlKFJhbmdlKiByYW5nZSkKICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBX
ZWJBcmNoaXZlKExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShyYW5nZSkpKTsKIH0KIAotV2ViQXJj
aGl2ZTo6V2ViQXJjaGl2ZShXZWJBcmNoaXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSwgUGFzc1Jl
ZlB0cjxBUEk6OkFycmF5PiBzdWJyZXNvdXJjZXMsIFBhc3NSZWZQdHI8QVBJOjpBcnJheT4gc3Vi
ZnJhbWVBcmNoaXZlcykKK1dlYkFyY2hpdmU6OldlYkFyY2hpdmUoV2ViQXJjaGl2ZVJlc291cmNl
KiBtYWluUmVzb3VyY2UsIFJlZlB0cjxBUEk6OkFycmF5PiYmIHN1YnJlc291cmNlcywgUmVmUHRy
PEFQSTo6QXJyYXk+JiYgc3ViZnJhbWVBcmNoaXZlcykKICAgICA6IG1fY2FjaGVkTWFpblJlc291
cmNlKG1haW5SZXNvdXJjZSkKICAgICAsIG1fY2FjaGVkU3VicmVzb3VyY2VzKHN1YnJlc291cmNl
cykKICAgICAsIG1fY2FjaGVkU3ViZnJhbWVBcmNoaXZlcyhzdWJmcmFtZUFyY2hpdmVzKQogewot
ICAgIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IGNvcmVNYWluUmVzb3VyY2UgPSBtX2NhY2hlZE1h
aW5SZXNvdXJjZS0+Y29yZUFyY2hpdmVSZXNvdXJjZSgpOworICAgIGF1dG8gY29yZU1haW5SZXNv
dXJjZSA9IG1fY2FjaGVkTWFpblJlc291cmNlLT5jb3JlQXJjaGl2ZVJlc291cmNlKCk7CiAKLSAg
ICBWZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+IGNvcmVBcmNoaXZlUmVzb3VyY2VzOwor
ICAgIFZlY3RvcjxSZWY8QXJjaGl2ZVJlc291cmNlPj4gY29yZUFyY2hpdmVSZXNvdXJjZXM7CiAg
ICAgY29yZUFyY2hpdmVSZXNvdXJjZXMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShtX2NhY2hlZFN1
YnJlc291cmNlcy0+c2l6ZSgpKTsKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1fY2FjaGVk
U3VicmVzb3VyY2VzLT5zaXplKCk7ICsraSkgewotICAgICAgICBSZWZQdHI8V2ViQXJjaGl2ZVJl
c291cmNlPiByZXNvdXJjZSA9IG1fY2FjaGVkU3VicmVzb3VyY2VzLT5hdDxXZWJBcmNoaXZlUmVz
b3VyY2U+KGkpOworICAgICAgICBhdXRvIHJlc291cmNlID0gbV9jYWNoZWRTdWJyZXNvdXJjZXMt
PmF0PFdlYkFyY2hpdmVSZXNvdXJjZT4oaSk7CiAgICAgICAgIEFTU0VSVChyZXNvdXJjZSk7Ci0g
ICAgICAgIGNvcmVBcmNoaXZlUmVzb3VyY2VzLnVuY2hlY2tlZEFwcGVuZChyZXNvdXJjZS0+Y29y
ZUFyY2hpdmVSZXNvdXJjZSgpKTsKKyAgICAgICAgQVNTRVJUKHJlc291cmNlLT5jb3JlQXJjaGl2
ZVJlc291cmNlKCkpOworICAgICAgICBjb3JlQXJjaGl2ZVJlc291cmNlcy51bmNoZWNrZWRBcHBl
bmQoKnJlc291cmNlLT5jb3JlQXJjaGl2ZVJlc291cmNlKCkpOwogICAgIH0KIAotICAgIFZlY3Rv
cjxSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4+IGNvcmVTdWJmcmFtZUxlZ2FjeVdlYkFyY2hpdmVz
OworICAgIFZlY3RvcjxSZWY8TGVnYWN5V2ViQXJjaGl2ZT4+IGNvcmVTdWJmcmFtZUxlZ2FjeVdl
YkFyY2hpdmVzOwogICAgIGNvcmVTdWJmcmFtZUxlZ2FjeVdlYkFyY2hpdmVzLnJlc2VydmVJbml0
aWFsQ2FwYWNpdHkobV9jYWNoZWRTdWJmcmFtZUFyY2hpdmVzLT5zaXplKCkpOwotCiAgICAgZm9y
IChzaXplX3QgaSA9IDA7IGkgPCBtX2NhY2hlZFN1YmZyYW1lQXJjaGl2ZXMtPnNpemUoKTsgKytp
KSB7Ci0gICAgICAgIFJlZlB0cjxXZWJBcmNoaXZlPiBzdWJmcmFtZVdlYkFyY2hpdmUgPSBtX2Nh
Y2hlZFN1YmZyYW1lQXJjaGl2ZXMtPmF0PFdlYkFyY2hpdmU+KGkpOworICAgICAgICBhdXRvIHN1
YmZyYW1lV2ViQXJjaGl2ZSA9IG1fY2FjaGVkU3ViZnJhbWVBcmNoaXZlcy0+YXQ8V2ViQXJjaGl2
ZT4oaSk7CiAgICAgICAgIEFTU0VSVChzdWJmcmFtZVdlYkFyY2hpdmUpOwotICAgICAgICBjb3Jl
U3ViZnJhbWVMZWdhY3lXZWJBcmNoaXZlcy51bmNoZWNrZWRBcHBlbmQoc3ViZnJhbWVXZWJBcmNo
aXZlLT5jb3JlTGVnYWN5V2ViQXJjaGl2ZSgpKTsKKyAgICAgICAgQVNTRVJUKHN1YmZyYW1lV2Vi
QXJjaGl2ZS0+Y29yZUxlZ2FjeVdlYkFyY2hpdmUoKSk7CisgICAgICAgIGNvcmVTdWJmcmFtZUxl
Z2FjeVdlYkFyY2hpdmVzLnVuY2hlY2tlZEFwcGVuZCgqc3ViZnJhbWVXZWJBcmNoaXZlLT5jb3Jl
TGVnYWN5V2ViQXJjaGl2ZSgpKTsKICAgICB9CiAKLSAgICBtX2xlZ2FjeVdlYkFyY2hpdmUgPSBM
ZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoV1RGTW92ZShjb3JlTWFpblJlc291cmNlKSwgV1RGTW92
ZShjb3JlQXJjaGl2ZVJlc291cmNlcyksIFdURk1vdmUoY29yZVN1YmZyYW1lTGVnYWN5V2ViQXJj
aGl2ZXMpKTsKKyAgICBtX2xlZ2FjeVdlYkFyY2hpdmUgPSBMZWdhY3lXZWJBcmNoaXZlOjpjcmVh
dGUoKmNvcmVNYWluUmVzb3VyY2UsIFdURk1vdmUoY29yZUFyY2hpdmVSZXNvdXJjZXMpLCBXVEZN
b3ZlKGNvcmVTdWJmcmFtZUxlZ2FjeVdlYkFyY2hpdmVzKSk7CiB9CiAKIFdlYkFyY2hpdmU6Oldl
YkFyY2hpdmUoQVBJOjpEYXRhKiBkYXRhKQpAQCAtOTAsNyArOTEsNyBAQCBXZWJBcmNoaXZlOjpX
ZWJBcmNoaXZlKEFQSTo6RGF0YSogZGF0YSkKICAgICBtX2xlZ2FjeVdlYkFyY2hpdmUgPSBMZWdh
Y3lXZWJBcmNoaXZlOjpjcmVhdGUoU2hhcmVkQnVmZmVyOjpjcmVhdGUoZGF0YS0+Ynl0ZXMoKSwg
ZGF0YS0+c2l6ZSgpKS5nZXQoKSk7CiB9CiAKLVdlYkFyY2hpdmU6OldlYkFyY2hpdmUoUGFzc1Jl
ZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBsZWdhY3lXZWJBcmNoaXZlKQorV2ViQXJjaGl2ZTo6V2Vi
QXJjaGl2ZShSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4mJiBsZWdhY3lXZWJBcmNoaXZlKQogICAg
IDogbV9sZWdhY3lXZWJBcmNoaXZlKGxlZ2FjeVdlYkFyY2hpdmUpCiB7CiB9CkBAIC0xMTEsMTAg
KzExMiw4IEBAIEFQSTo6QXJyYXkqIFdlYkFyY2hpdmU6OnN1YnJlc291cmNlcygpCiAgICAgaWYg
KCFtX2NhY2hlZFN1YnJlc291cmNlcykgewogICAgICAgICBWZWN0b3I8UmVmUHRyPEFQSTo6T2Jq
ZWN0Pj4gc3VicmVzb3VyY2VzOwogICAgICAgICBzdWJyZXNvdXJjZXMucmVzZXJ2ZUluaXRpYWxD
YXBhY2l0eShtX2xlZ2FjeVdlYkFyY2hpdmUtPnN1YnJlc291cmNlcygpLnNpemUoKSk7Ci0KLSAg
ICAgICAgZm9yIChjb25zdCBhdXRvJiBzdWJyZXNvdXJjZSA6IG1fbGVnYWN5V2ViQXJjaGl2ZS0+
c3VicmVzb3VyY2VzKCkpCi0gICAgICAgICAgICBzdWJyZXNvdXJjZXMudW5jaGVja2VkQXBwZW5k
KFdlYkFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKHN1YnJlc291cmNlKSk7Ci0KKyAgICAgICAgZm9y
IChhdXRvJiBzdWJyZXNvdXJjZSA6IG1fbGVnYWN5V2ViQXJjaGl2ZS0+c3VicmVzb3VyY2VzKCkp
CisgICAgICAgICAgICBzdWJyZXNvdXJjZXMudW5jaGVja2VkQXBwZW5kKFdlYkFyY2hpdmVSZXNv
dXJjZTo6Y3JlYXRlKHN1YnJlc291cmNlLnB0cigpKSk7CiAgICAgICAgIG1fY2FjaGVkU3VicmVz
b3VyY2VzID0gQVBJOjpBcnJheTo6Y3JlYXRlKFdURk1vdmUoc3VicmVzb3VyY2VzKSk7CiAgICAg
fQogCkBAIC0xMjYsMTAgKzEyNSw4IEBAIEFQSTo6QXJyYXkqIFdlYkFyY2hpdmU6OnN1YmZyYW1l
QXJjaGl2ZXMoKQogICAgIGlmICghbV9jYWNoZWRTdWJmcmFtZUFyY2hpdmVzKSB7CiAgICAgICAg
IFZlY3RvcjxSZWZQdHI8QVBJOjpPYmplY3Q+PiBzdWJmcmFtZVdlYkFyY2hpdmVzOwogICAgICAg
ICBzdWJmcmFtZVdlYkFyY2hpdmVzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobV9sZWdhY3lXZWJB
cmNoaXZlLT5zdWJmcmFtZUFyY2hpdmVzKCkuc2l6ZSgpKTsKLQotICAgICAgICBmb3IgKGNvbnN0
IGF1dG8mIHN1YmZyYW1lQXJjaGl2ZSA6IG1fbGVnYWN5V2ViQXJjaGl2ZS0+c3ViZnJhbWVBcmNo
aXZlcygpKQotICAgICAgICAgICAgc3ViZnJhbWVXZWJBcmNoaXZlcy51bmNoZWNrZWRBcHBlbmQo
V2ViQXJjaGl2ZTo6Y3JlYXRlKHN0YXRpY19jYXN0PExlZ2FjeVdlYkFyY2hpdmUqPihzdWJmcmFt
ZUFyY2hpdmUuZ2V0KCkpKSk7Ci0KKyAgICAgICAgZm9yIChhdXRvJiBzdWJmcmFtZUFyY2hpdmUg
OiBtX2xlZ2FjeVdlYkFyY2hpdmUtPnN1YmZyYW1lQXJjaGl2ZXMoKSkKKyAgICAgICAgICAgIHN1
YmZyYW1lV2ViQXJjaGl2ZXMudW5jaGVja2VkQXBwZW5kKFdlYkFyY2hpdmU6OmNyZWF0ZShzdGF0
aWNfY2FzdDxMZWdhY3lXZWJBcmNoaXZlKj4oc3ViZnJhbWVBcmNoaXZlLnB0cigpKSkpOwogICAg
ICAgICBtX2NhY2hlZFN1YmZyYW1lQXJjaGl2ZXMgPSBBUEk6OkFycmF5OjpjcmVhdGUoV1RGTW92
ZShzdWJmcmFtZVdlYkFyY2hpdmVzKSk7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9TaGFyZWQvVGV4dENoZWNrZXJTdGF0ZS5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1Rl
eHRDaGVja2VyU3RhdGUuaAppbmRleCBiY2M5ZmVjY2NjYjJmNjliNzY3OTg0Njg1MTljZDQyYjAz
N2NhMmRkLi5jZTY2ZjEwMjUwMjNhYWRlZjg4ZDM1Nzg2Nzg5OTg2MTA5YjJjY2ZiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvVGV4dENoZWNrZXJTdGF0ZS5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL1NoYXJlZC9UZXh0Q2hlY2tlclN0YXRlLmgKQEAgLTIzLDIzICsyMywyMiBAQAog
ICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgVGV4dENo
ZWNrZXJTdGF0ZV9oCi0jZGVmaW5lIFRleHRDaGVja2VyU3RhdGVfaAorI3ByYWdtYSBvbmNlCiAK
ICNpbmNsdWRlICJBcmd1bWVudENvZGVycy5oIgogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogc3Ry
dWN0IFRleHRDaGVja2VyU3RhdGUgewotICAgIGJvb2wgaXNDb250aW51b3VzU3BlbGxDaGVja2lu
Z0VuYWJsZWQ7Ci0gICAgYm9vbCBpc0dyYW1tYXJDaGVja2luZ0VuYWJsZWQ7CisgICAgYm9vbCBp
c0NvbnRpbnVvdXNTcGVsbENoZWNraW5nRW5hYmxlZCB7IGZhbHNlIH07CisgICAgYm9vbCBpc0dy
YW1tYXJDaGVja2luZ0VuYWJsZWQgeyBmYWxzZSB9OwogCiAjaWYgVVNFKEFQUEtJVCkKLSAgICBi
b29sIGlzQXV0b21hdGljU3BlbGxpbmdDb3JyZWN0aW9uRW5hYmxlZDsKLSAgICBib29sIGlzQXV0
b21hdGljUXVvdGVTdWJzdGl0dXRpb25FbmFibGVkOwotICAgIGJvb2wgaXNBdXRvbWF0aWNEYXNo
U3Vic3RpdHV0aW9uRW5hYmxlZDsKLSAgICBib29sIGlzQXV0b21hdGljTGlua0RldGVjdGlvbkVu
YWJsZWQ7Ci0gICAgYm9vbCBpc0F1dG9tYXRpY1RleHRSZXBsYWNlbWVudEVuYWJsZWQ7CisgICAg
Ym9vbCBpc0F1dG9tYXRpY1NwZWxsaW5nQ29ycmVjdGlvbkVuYWJsZWQgeyBmYWxzZSB9OworICAg
IGJvb2wgaXNBdXRvbWF0aWNRdW90ZVN1YnN0aXR1dGlvbkVuYWJsZWQgeyBmYWxzZSB9OworICAg
IGJvb2wgaXNBdXRvbWF0aWNEYXNoU3Vic3RpdHV0aW9uRW5hYmxlZCB7IGZhbHNlIH07CisgICAg
Ym9vbCBpc0F1dG9tYXRpY0xpbmtEZXRlY3Rpb25FbmFibGVkIHsgZmFsc2UgfTsKKyAgICBib29s
IGlzQXV0b21hdGljVGV4dFJlcGxhY2VtZW50RW5hYmxlZCB7IGZhbHNlIH07CiAjZW5kaWYKIH07
CiAKQEAgLTQ4LDUgKzQ3LDMgQEAgc3RydWN0IFRleHRDaGVja2VyU3RhdGUgewogbmFtZXNwYWNl
IElQQyB7CiB0ZW1wbGF0ZTw+IHN0cnVjdCBBcmd1bWVudENvZGVyPFdlYktpdDo6VGV4dENoZWNr
ZXJTdGF0ZT4gOiBTaW1wbGVBcmd1bWVudENvZGVyPFdlYktpdDo6VGV4dENoZWNrZXJTdGF0ZT4g
eyB9OwogfTsKLQotI2VuZGlmIC8vIFRleHRDaGVja2VyU3RhdGVfaApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkljb25EYXRhYmFzZS5jcHAgYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvV2ViSWNvbkRhdGFiYXNlLmNwcAppbmRleCA1NmY1ZGExYTIwMTNhMDlhNjlh
NWZiZWEyNGZlNGE2YmJiYjBhMDA0Li44OTJjMDVmZGFjZjRiMzNhYzg1YzZjNDU1ZDU4M2E0ZTg3
OWZiYmYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViSWNvbkRhdGFi
YXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViSWNvbkRhdGFiYXNlLmNw
cApAQCAtMTMwLDcgKzEzMCw3IEBAIHZvaWQgV2ViSWNvbkRhdGFiYXNlOjpzZXRJY29uRGF0YUZv
ckljb25VUkwoY29uc3QgSVBDOjpEYXRhUmVmZXJlbmNlJiBpY29uRGF0YSwKICAgICBMT0coSWNv
bkRhdGFiYXNlLCAiV0syIFVJUHJvY2VzcyBzZXR0aW5nIGljb24gZGF0YSAoJWkgYnl0ZXMpIGZv
ciBwYWdlIFVSTCAlcyIsIChpbnQpaWNvbkRhdGEuc2l6ZSgpLCBpY29uVVJMLmFzY2lpKCkuZGF0
YSgpKTsKICAgICBpZiAoIW1faWNvbkRhdGFiYXNlSW1wbCkKICAgICAgICAgcmV0dXJuOwotICAg
IG1faWNvbkRhdGFiYXNlSW1wbC0+c2V0SWNvbkRhdGFGb3JJY29uVVJMKFNoYXJlZEJ1ZmZlcjo6
Y3JlYXRlKGljb25EYXRhLmRhdGEoKSwgaWNvbkRhdGEuc2l6ZSgpKSwgaWNvblVSTCk7CisgICAg
bV9pY29uRGF0YWJhc2VJbXBsLT5zZXRJY29uRGF0YUZvckljb25VUkwoU2hhcmVkQnVmZmVyOjpj
cmVhdGUoaWNvbkRhdGEuZGF0YSgpLCBpY29uRGF0YS5zaXplKCkpLnB0cigpLCBpY29uVVJMKTsK
IH0KIAogdm9pZCBXZWJJY29uRGF0YWJhc2U6OnN5bmNocm9ub3VzSWNvbkRhdGFGb3JQYWdlVVJM
KGNvbnN0IFN0cmluZyYsIElQQzo6RGF0YVJlZmVyZW5jZSYgaWNvbkRhdGEpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmggYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKaW5kZXggNzU4YzIzOTU5ODUwNTI0Mzk4NmMwNzM3
NTE0OWMzZWVlYjEzNzI4Ni4uNDYwNmRmMTE0YWQ3Nzc0ZTQzNzk0MGU0ZmMwOTg3YTlmMWFkZjZh
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaApAQCAtMTg2LDcgKzE4
Niw2IEBAIGNsYXNzIFBhZ2VDbGllbnQ7CiBjbGFzcyBSZW1vdGVMYXllclRyZWVTY3JvbGxpbmdQ
ZXJmb3JtYW5jZURhdGE7CiBjbGFzcyBSZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbjsKIGNsYXNz
IFJlbW90ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yUHJveHk7Ci1jbGFzcyBTdHJpbmdQYWlyVmVjdG9y
OwogY2xhc3MgVXNlckRhdGE7CiBjbGFzcyBWaWV3U25hcHNob3Q7CiBjbGFzcyBWaXNpdGVkTGlu
a1N0b3JlOwpAQCAtMjA2LDExICsyMDUsMTIgQEAgY2xhc3MgV2ViUHJvY2Vzc1Byb3h5OwogY2xh
c3MgV2ViVXNlckNvbnRlbnRDb250cm9sbGVyUHJveHk7CiBjbGFzcyBXZWJXaGVlbEV2ZW50Owog
Y2xhc3MgV2Vic2l0ZURhdGFTdG9yZTsKK2NsYXNzIEdhbWVwYWREYXRhOworCiBzdHJ1Y3QgQXR0
cmlidXRlZFN0cmluZzsKIHN0cnVjdCBDb2xvclNwYWNlRGF0YTsKIHN0cnVjdCBFZGl0aW5nUmFu
Z2U7CiBzdHJ1Y3QgRWRpdG9yU3RhdGU7Ci1jbGFzcyBHYW1lcGFkRGF0YTsKIHN0cnVjdCBJbnRl
cmFjdGlvbkluZm9ybWF0aW9uUmVxdWVzdDsKIHN0cnVjdCBMb2FkUGFyYW1ldGVyczsKIHN0cnVj
dCBQbGF0Zm9ybVBvcHVwTWVudURhdGE7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5jcHAgYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5jcHAKaW5k
ZXggMzNmZTU4N2U0MTU3NjM4NDAwMzMxNTA5ZDhmN2IyNTNjNzMzZTg5ZC4uNTQyZWRkZDZkYzA5
YjNiYWMxNDdlODNlMWNiNzY0NTk4OTg5N2IzNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9JY29uRGF0YWJhc2UvV2ViSWNvbkRhdGFiYXNlUHJveHkuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSWNvbkRhdGFiYXNlL1dlYkljb25EYXRhYmFzZVByb3h5
LmNwcApAQCAtNDIsMTEgKzQyLDEwIEBAIFdlYkljb25EYXRhYmFzZVByb3h5Ojp+V2ViSWNvbkRh
dGFiYXNlUHJveHkoKQogewogfQogCi1XZWJJY29uRGF0YWJhc2VQcm94eTo6V2ViSWNvbkRhdGFi
YXNlUHJveHkoV2ViUHJvY2VzcyogcHJvY2VzcykKLSAgICA6IG1faXNFbmFibGVkKGZhbHNlKQot
ICAgICwgbV9wcm9jZXNzKHByb2Nlc3MpCitXZWJJY29uRGF0YWJhc2VQcm94eTo6V2ViSWNvbkRh
dGFiYXNlUHJveHkoV2ViUHJvY2VzcyYgcHJvY2VzcykKKyAgICA6IG1fcHJvY2Vzcyhwcm9jZXNz
KQogewotICAgIG1fcHJvY2Vzcy0+YWRkTWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpXZWJJY29u
RGF0YWJhc2VQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCAqdGhpcyk7CisgICAgbV9wcm9j
ZXNzLmFkZE1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlUHJveHk6Om1l
c3NhZ2VSZWNlaXZlck5hbWUoKSwgKnRoaXMpOwogfQogCiBib29sIFdlYkljb25EYXRhYmFzZVBy
b3h5Ojppc0VuYWJsZWQoKSBjb25zdApAQCAtNjUsMTggKzY0LDE4IEBAIHZvaWQgV2ViSWNvbkRh
dGFiYXNlUHJveHk6OnNldEVuYWJsZWQoYm9vbCBlbmFibGVkKQogCiB2b2lkIFdlYkljb25EYXRh
YmFzZVByb3h5OjpyZXRhaW5JY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIHBhZ2VVUkwpCiB7
Ci0gICAgbV9wcm9jZXNzLT5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2Vz
OjpXZWJQcm9jZXNzUHJveHk6OlJldGFpbkljb25Gb3JQYWdlVVJMKHBhZ2VVUkwpLCAwKTsKKyAg
ICBtX3Byb2Nlc3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2Vi
UHJvY2Vzc1Byb3h5OjpSZXRhaW5JY29uRm9yUGFnZVVSTChwYWdlVVJMKSwgMCk7CiB9CiAKIHZv
aWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnJlbGVhc2VJY29uRm9yUGFnZVVSTChjb25zdCBTdHJp
bmcmIHBhZ2VVUkwpCiB7Ci0gICAgbV9wcm9jZXNzLT5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigp
LT5zZW5kKE1lc3NhZ2VzOjpXZWJQcm9jZXNzUHJveHk6OlJlbGVhc2VJY29uRm9yUGFnZVVSTChw
YWdlVVJMKSwgMCk7CisgICAgbV9wcm9jZXNzLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNl
bmQoTWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6UmVsZWFzZUljb25Gb3JQYWdlVVJMKHBhZ2VV
UkwpLCAwKTsKIH0KIAogSW1hZ2UqIFdlYkljb25EYXRhYmFzZVByb3h5OjpzeW5jaHJvbm91c0lj
b25Gb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYgcGFnZVVSTCwgY29uc3QgSW50U2l6ZSYgLypzaXpl
Ki8pCiB7CiAgICAgSVBDOjpEYXRhUmVmZXJlbmNlIHJlc3VsdDsKLSAgICBpZiAoIW1fcHJvY2Vz
cy0+cGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYkljb25E
YXRhYmFzZTo6U3luY2hyb25vdXNJY29uRGF0YUZvclBhZ2VVUkwocGFnZVVSTCksIE1lc3NhZ2Vz
OjpXZWJJY29uRGF0YWJhc2U6OlN5bmNocm9ub3VzSWNvbkRhdGFGb3JQYWdlVVJMOjpSZXBseShy
ZXN1bHQpLCAwKSkKKyAgICBpZiAoIW1fcHJvY2Vzcy5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigp
LT5zZW5kU3luYyhNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpTeW5jaHJvbm91c0ljb25EYXRh
Rm9yUGFnZVVSTChwYWdlVVJMKSwgTWVzc2FnZXM6OldlYkljb25EYXRhYmFzZTo6U3luY2hyb25v
dXNJY29uRGF0YUZvclBhZ2VVUkw6OlJlcGx5KHJlc3VsdCksIDApKQogICAgICAgICByZXR1cm4g
MDsKICAgICAKICAgICAvLyBGSVhNRTogUmV0dXJuIEltYWdlIGNyZWF0ZWQgd2l0aCB0aGUgYWJv
dmUgZGF0YS4KQEAgLTExMCwzNCArMTA5LDMyIEBAIGJvb2wgV2ViSWNvbkRhdGFiYXNlUHJveHk6
OnN1cHBvcnRzQXN5bmNocm9ub3VzTW9kZSgpCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLXZvaWQg
V2ViSWNvbkRhdGFiYXNlUHJveHk6OmxvYWREZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5n
JiBpY29uVVJMLCBQYXNzUmVmUHRyPFdlYkNvcmU6Okljb25Mb2FkRGVjaXNpb25DYWxsYmFjaz4g
Y2FsbGJhY2spCit2b2lkIFdlYkljb25EYXRhYmFzZVByb3h5Ojpsb2FkRGVjaXNpb25Gb3JJY29u
VVJMKGNvbnN0IFN0cmluZyYgaWNvblVSTCwgV2ViQ29yZTo6SWNvbkxvYWREZWNpc2lvbkNhbGxi
YWNrJiBjYWxsYmFjaykKIHsKLSAgICB1aW50NjRfdCBpZCA9IGNhbGxiYWNrLT5jYWxsYmFja0lE
KCk7Ci0gICAgbV9pY29uTG9hZERlY2lzaW9uQ2FsbGJhY2tzLmFkZChpZCwgY2FsbGJhY2spOwot
ICAgIAotICAgIG1fcHJvY2Vzcy0+cGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNz
YWdlczo6V2ViSWNvbkRhdGFiYXNlOjpHZXRMb2FkRGVjaXNpb25Gb3JJY29uVVJMKGljb25VUkws
IGlkKSwgMCk7CisgICAgdWludDY0X3QgaWQgPSBjYWxsYmFjay5jYWxsYmFja0lEKCk7CisgICAg
bV9pY29uTG9hZERlY2lzaW9uQ2FsbGJhY2tzLmFkZChpZCwgJmNhbGxiYWNrKTsKKyAgICBtX3By
b2Nlc3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViSWNvbkRh
dGFiYXNlOjpHZXRMb2FkRGVjaXNpb25Gb3JJY29uVVJMKGljb25VUkwsIGlkKSwgMCk7CiB9CiAK
IHZvaWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnJlY2VpdmVkSWNvbkxvYWREZWNpc2lvbihpbnQg
ZGVjaXNpb24sIHVpbnQ2NF90IGNhbGxiYWNrSUQpCiB7Ci0gICAgUmVmUHRyPFdlYkNvcmU6Oklj
b25Mb2FkRGVjaXNpb25DYWxsYmFjaz4gY2FsbGJhY2sgPSBtX2ljb25Mb2FkRGVjaXNpb25DYWxs
YmFja3MudGFrZShjYWxsYmFja0lEKTsKLSAgICBpZiAoY2FsbGJhY2spCisgICAgaWYgKGF1dG8g
Y2FsbGJhY2sgPSBtX2ljb25Mb2FkRGVjaXNpb25DYWxsYmFja3MudGFrZShjYWxsYmFja0lEKSkK
ICAgICAgICAgY2FsbGJhY2stPnBlcmZvcm1DYWxsYmFjayhzdGF0aWNfY2FzdDxXZWJDb3JlOjpJ
Y29uTG9hZERlY2lzaW9uPihkZWNpc2lvbikpOwogfQogCi12b2lkIFdlYkljb25EYXRhYmFzZVBy
b3h5OjppY29uRGF0YUZvckljb25VUkwoY29uc3QgU3RyaW5nJiAvKmljb25VUkwqLywgUGFzc1Jl
ZlB0cjxXZWJDb3JlOjpJY29uRGF0YUNhbGxiYWNrPikKK3ZvaWQgV2ViSWNvbkRhdGFiYXNlUHJv
eHk6Omljb25EYXRhRm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpJY29uRGF0YUNh
bGxiYWNrJikKIHsKIH0KIAogdm9pZCBXZWJJY29uRGF0YWJhc2VQcm94eTo6c2V0SWNvblVSTEZv
clBhZ2VVUkwoY29uc3QgU3RyaW5nJiBpY29uVVJMLCBjb25zdCBTdHJpbmcmIHBhZ2VVUkwpCiB7
Ci0gICAgbV9wcm9jZXNzLT5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2Vz
OjpXZWJJY29uRGF0YWJhc2U6OlNldEljb25VUkxGb3JQYWdlVVJMKGljb25VUkwsIHBhZ2VVUkwp
LCAwKTsKKyAgICBtX3Byb2Nlc3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNz
YWdlczo6V2ViSWNvbkRhdGFiYXNlOjpTZXRJY29uVVJMRm9yUGFnZVVSTChpY29uVVJMLCBwYWdl
VVJMKSwgMCk7CiB9CiAKLXZvaWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnNldEljb25EYXRhRm9y
SWNvblVSTChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaWNvbkRhdGEsIGNvbnN0IFN0cmluZyYg
aWNvblVSTCkKK3ZvaWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnNldEljb25EYXRhRm9ySWNvblVS
TChTaGFyZWRCdWZmZXIqIGljb25EYXRhLCBjb25zdCBTdHJpbmcmIGljb25VUkwpCiB7Ci0gICAg
SVBDOjpEYXRhUmVmZXJlbmNlIGRhdGEocmVpbnRlcnByZXRfY2FzdDxjb25zdCB1aW50OF90Kj4o
aWNvbkRhdGEgPyBpY29uRGF0YS0+ZGF0YSgpIDogMCksIGljb25EYXRhID8gaWNvbkRhdGEtPnNp
emUoKSA6IDApOwotICAgIG1fcHJvY2Vzcy0+cGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2Vu
ZChNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpTZXRJY29uRGF0YUZvckljb25VUkwoZGF0YSwg
aWNvblVSTCksIDApOworICAgIElQQzo6RGF0YVJlZmVyZW5jZSBkYXRhKHJlaW50ZXJwcmV0X2Nh
c3Q8Y29uc3QgdWludDhfdCo+KGljb25EYXRhID8gaWNvbkRhdGEtPmRhdGEoKSA6IG51bGxwdHIp
LCBpY29uRGF0YSA/IGljb25EYXRhLT5zaXplKCkgOiAwKTsKKyAgICBtX3Byb2Nlc3MucGFyZW50
UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpTZXRJ
Y29uRGF0YUZvckljb25VUkwoZGF0YSwgaWNvblVSTCksIDApOwogfQogCiB2b2lkIFdlYkljb25E
YXRhYmFzZVByb3h5Ojp1cmxJbXBvcnRGaW5pc2hlZCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5oIGIvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JY29uRGF0YWJhc2UvV2ViSWNvbkRhdGFiYXNlUHJveHku
aAppbmRleCA2MmEwNmMzZjk0ZjdkN2UwOTc2MzViNTJiNzhjNDMzOGViM2NhOGJkLi5iZGY4ZDRj
ZjYzYWJlOWNlYTNkMmFjMTk4MWU5MDZlYjY2MWY1YTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5oCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSWNvbkRhdGFiYXNlL1dlYkljb25EYXRhYmFzZVBy
b3h5LmgKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KICAqLwogCi0jaWZuZGVmIFdlYkljb25EYXRhYmFzZVByb3h5X2gKLSNkZWZpbmUgV2ViSWNv
bkRhdGFiYXNlUHJveHlfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJBUElPYmplY3QuaCIK
ICNpbmNsdWRlICJNZXNzYWdlUmVjZWl2ZXIuaCIKQEAgLTM3LDQzICszNiw0MSBAQCBuYW1lc3Bh
Y2UgV2ViS2l0IHsKIAogY2xhc3MgV2ViUHJvY2VzczsKIAotY2xhc3MgV2ViSWNvbkRhdGFiYXNl
UHJveHkgOiBwdWJsaWMgV2ViQ29yZTo6SWNvbkRhdGFiYXNlQmFzZSwgcHJpdmF0ZSBJUEM6Ok1l
c3NhZ2VSZWNlaXZlciB7CitjbGFzcyBXZWJJY29uRGF0YWJhc2VQcm94eSBmaW5hbCA6IHB1Ymxp
YyBXZWJDb3JlOjpJY29uRGF0YWJhc2VCYXNlLCBwcml2YXRlIElQQzo6TWVzc2FnZVJlY2VpdmVy
IHsKIHB1YmxpYzoKLSAgICBleHBsaWNpdCBXZWJJY29uRGF0YWJhc2VQcm94eShXZWJQcm9jZXNz
Kik7CisgICAgZXhwbGljaXQgV2ViSWNvbkRhdGFiYXNlUHJveHkoV2ViUHJvY2VzcyYpOwogICAg
IHZpcnR1YWwgfldlYkljb25EYXRhYmFzZVByb3h5KCk7CiAKLSAgICBib29sIGlzRW5hYmxlZCgp
IGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQgc2V0RW5hYmxlZChib29sKSBvdmVycmlkZTsKKyAg
ICB2b2lkIHNldEVuYWJsZWQoYm9vbCkgZmluYWw7CiAKLSAgICB2b2lkIHJldGFpbkljb25Gb3JQ
YWdlVVJMKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVsZWFzZUljb25Gb3JQ
YWdlVVJMKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0SWNvblVSTEZvclBh
Z2VVUkwoY29uc3QgU3RyaW5nJiwgY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBz
ZXRJY29uRGF0YUZvckljb25VUkwoUGFzc1JlZlB0cjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+LCBj
b25zdCBTdHJpbmcmKSBvdmVycmlkZTsKK3ByaXZhdGU6CisgICAgYm9vbCBpc0VuYWJsZWQoKSBj
b25zdCBmaW5hbDsKKworICAgIHZvaWQgcmV0YWluSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5n
JikgZmluYWw7CisgICAgdm9pZCByZWxlYXNlSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikg
ZmluYWw7CisgICAgdm9pZCBzZXRJY29uVVJMRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmLCBjb25z
dCBTdHJpbmcmKSBmaW5hbDsKKyAgICB2b2lkIHNldEljb25EYXRhRm9ySWNvblVSTChXZWJDb3Jl
OjpTaGFyZWRCdWZmZXIqLCBjb25zdCBTdHJpbmcmKSBmaW5hbDsKIAotICAgIFN0cmluZyBzeW5j
aHJvbm91c0ljb25VUkxGb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAgIGJv
b2wgc3luY2hyb25vdXNJY29uRGF0YUtub3duRm9ySWNvblVSTChjb25zdCBTdHJpbmcmKSBvdmVy
cmlkZTsKLSAgICBXZWJDb3JlOjpJY29uTG9hZERlY2lzaW9uIHN5bmNocm9ub3VzTG9hZERlY2lz
aW9uRm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIG92
ZXJyaWRlOwotICAgIFdlYkNvcmU6OkltYWdlKiBzeW5jaHJvbm91c0ljb25Gb3JQYWdlVVJMKGNv
bnN0IFN0cmluZyYsIGNvbnN0IFdlYkNvcmU6OkludFNpemUmKSBvdmVycmlkZTsKKyAgICBTdHJp
bmcgc3luY2hyb25vdXNJY29uVVJMRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmKSBmaW5hbDsKKyAg
ICBib29sIHN5bmNocm9ub3VzSWNvbkRhdGFLbm93bkZvckljb25VUkwoY29uc3QgU3RyaW5nJikg
ZmluYWw7CisgICAgV2ViQ29yZTo6SWNvbkxvYWREZWNpc2lvbiBzeW5jaHJvbm91c0xvYWREZWNp
c2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5nJiwgV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBm
aW5hbDsKKyAgICBXZWJDb3JlOjpJbWFnZSogc3luY2hyb25vdXNJY29uRm9yUGFnZVVSTChjb25z
dCBTdHJpbmcmLCBjb25zdCBXZWJDb3JlOjpJbnRTaXplJikgZmluYWw7CiAgICAgCi0gICAgLy8g
QXN5bmNocm9ub3VzIGNhbGxzIHdlIHNob3VsZCB1c2UgdG8gcmVwbGFjZSB0aGUgYWJvdmUgd2hl
biBzdXBwb3J0ZWQuCi0gICAgYm9vbCBzdXBwb3J0c0FzeW5jaHJvbm91c01vZGUoKSBvdmVycmlk
ZTsKLSAgICB2b2lkIGxvYWREZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5nJiwgUGFzc1Jl
ZlB0cjxXZWJDb3JlOjpJY29uTG9hZERlY2lzaW9uQ2FsbGJhY2s+KSBvdmVycmlkZTsKKyAgICBi
b29sIHN1cHBvcnRzQXN5bmNocm9ub3VzTW9kZSgpIGZpbmFsOworICAgIHZvaWQgbG9hZERlY2lz
aW9uRm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpJY29uTG9hZERlY2lzaW9uQ2Fs
bGJhY2smKSBmaW5hbDsKICAgICB2b2lkIHJlY2VpdmVkSWNvbkxvYWREZWNpc2lvbihpbnQgZGVj
aXNpb24sIHVpbnQ2NF90IGNhbGxiYWNrSUQpOwotICAgIHZvaWQgaWNvbkRhdGFGb3JJY29uVVJM
KGNvbnN0IFN0cmluZyYsIFBhc3NSZWZQdHI8V2ViQ29yZTo6SWNvbkRhdGFDYWxsYmFjaz4pIG92
ZXJyaWRlOworICAgIHZvaWQgaWNvbkRhdGFGb3JJY29uVVJMKGNvbnN0IFN0cmluZyYsIFdlYkNv
cmU6Okljb25EYXRhQ2FsbGJhY2smKSBmaW5hbDsKIAotcHJpdmF0ZToKICAgICAvLyBJUEM6Ok1l
c3NhZ2VSZWNlaXZlcgotICAgIHZvaWQgZGlkUmVjZWl2ZU1lc3NhZ2UoSVBDOjpDb25uZWN0aW9u
JiwgSVBDOjpEZWNvZGVyJikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRSZWNlaXZlTWVzc2FnZShJ
UEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXImKSBmaW5hbDsKICAgICAKICAgICAvLyBDYWxs
YmFja3MgZnJvbSB0aGUgVUlQcm9jZXNzCiAgICAgdm9pZCB1cmxJbXBvcnRGaW5pc2hlZCgpOwog
Ci0gICAgYm9vbCBtX2lzRW5hYmxlZDsKLSAgICBXZWJQcm9jZXNzKiBtX3Byb2Nlc3M7CisgICAg
Ym9vbCBtX2lzRW5hYmxlZCB7IGZhbHNlIH07CisgICAgV2ViUHJvY2VzcyYgbV9wcm9jZXNzOwog
ICAgIAogICAgIEhhc2hNYXA8dWludDY0X3QsIFJlZlB0cjxXZWJDb3JlOjpJY29uTG9hZERlY2lz
aW9uQ2FsbGJhY2s+PiBtX2ljb25Mb2FkRGVjaXNpb25DYWxsYmFja3M7CiB9OwogCiB9IC8vIG5h
bWVzcGFjZSBXZWJLaXQKLQotI2VuZGlmIC8vIFdlYkljb25EYXRhYmFzZVByb3h5X2gKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRC
dW5kbGVOYXZpZ2F0aW9uQWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5q
ZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uLmNwcAppbmRleCAxOTYz
YTFhMDI2NTUzOTEwYzJlZGM2YTY0N2EzOWRhOTllMmI4MTIxLi4zNTY5ZmQ4NzViZTg2Yzk1ODZm
MGVlN2IyNTAwMTNjOTdjM2M1M2RlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbi5jcHAKKysr
IGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRs
ZU5hdmlnYXRpb25BY3Rpb24uY3BwCkBAIC0xMDIsNyArMTAyLDcgQEAgUmVmPEluamVjdGVkQnVu
ZGxlTmF2aWdhdGlvbkFjdGlvbj4gSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uOjpjcmVh
dGUoV2ViRnIKICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBJbmplY3RlZEJ1bmRsZU5hdmlnYXRp
b25BY3Rpb24oZnJhbWUsIGFjdGlvbiwgZm9ybVN0YXRlKSk7CiB9CiAKLUluamVjdGVkQnVuZGxl
TmF2aWdhdGlvbkFjdGlvbjo6SW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uKFdlYkZyYW1l
KiBmcmFtZSwgY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgbmF2aWdhdGlvbkFjdGlvbiwgUGFzc1Jl
ZlB0cjxGb3JtU3RhdGU+IHBycEZvcm1TdGF0ZSkKK0luamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFj
dGlvbjo6SW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uKFdlYkZyYW1lKiBmcmFtZSwgY29u
c3QgTmF2aWdhdGlvbkFjdGlvbiYgbmF2aWdhdGlvbkFjdGlvbiwgUGFzc1JlZlB0cjxGb3JtU3Rh
dGU+IGZvcm1TdGF0ZSkKICAgICA6IG1fbmF2aWdhdGlvblR5cGUobmF2aWdhdGlvbkFjdGlvbi50
eXBlKCkpCiAgICAgLCBtX21vZGlmaWVycyhtb2RpZmllcnNGb3JOYXZpZ2F0aW9uQWN0aW9uKG5h
dmlnYXRpb25BY3Rpb24pKQogICAgICwgbV9tb3VzZUJ1dHRvbihXZWJNb3VzZUV2ZW50OjpOb0J1
dHRvbikKQEAgLTExNiwxMSArMTE2LDggQEAgSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9u
OjpJbmplY3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rpb24oV2ViRnJhbWUqIGZyYW1lLAogICAgICAg
ICBtX3N5bnRoZXRpY0NsaWNrVHlwZSA9IHN5bnRoZXRpY0NsaWNrVHlwZUZvck5hdmlnYXRpb25B
Y3Rpb24obmF2aWdhdGlvbkFjdGlvbik7CiAgICAgfQogCi0gICAgUmVmUHRyPEZvcm1TdGF0ZT4g
Zm9ybVN0YXRlID0gcHJwRm9ybVN0YXRlOwotICAgIGlmIChmb3JtU3RhdGUpIHsKLSAgICAgICAg
QVNTRVJUKGZvcm1TdGF0ZS0+Zm9ybSgpKTsKLSAgICAgICAgbV9mb3JtRWxlbWVudCAgID0gSW5q
ZWN0ZWRCdW5kbGVOb2RlSGFuZGxlOjpnZXRPckNyZWF0ZShmb3JtU3RhdGUtPmZvcm0oKSk7Ci0g
ICAgfQorICAgIGlmIChmb3JtU3RhdGUpCisgICAgICAgIG1fZm9ybUVsZW1lbnQgPSBJbmplY3Rl
ZEJ1bmRsZU5vZGVIYW5kbGU6OmdldE9yQ3JlYXRlKGZvcm1TdGF0ZS0+Zm9ybSgpKTsKIH0KIAog
fSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmNwcAppbmRleCAxMjEwMjUxZjU0ZDdmMjU1
NjVmODliZWY1NDQ3YmMxZDQ4YWFhNmQ1Li4zNjFmOWUyY2FiODI5ZDgzMjUwMGYzYTY0MTU0NTA1
NmExOTA0MGNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL05ldHdvcmsv
V2ViTG9hZGVyU3RyYXRlZ3kuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvTmV0
d29yay9XZWJMb2FkZXJTdHJhdGVneS5jcHAKQEAgLTE2Myw3ICsxNjMsNyBAQCB2b2lkIFdlYkxv
YWRlclN0cmF0ZWd5OjpzY2hlZHVsZUxvYWQoUmVzb3VyY2VMb2FkZXImIHJlc291cmNlTG9hZGVy
LCBDYWNoZWRSZXNvdQogICAgIH0KICNlbmRpZgogCi0gICAgaWYgKHJlc291cmNlTG9hZGVyLmRv
Y3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZFJlc291cmNl
KHJlc291cmNlTG9hZGVyLCByZXNvdXJjZUxvYWRlci5yZXF1ZXN0KCksIHJlc291cmNlTG9hZGVy
LnJlcXVlc3QoKS51cmwoKSkpIHsKKyAgICBpZiAocmVzb3VyY2VMb2FkZXIuZG9jdW1lbnRMb2Fk
ZXIoKS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS5tYXliZUxvYWRSZXNvdXJjZShyZXNvdXJjZUxv
YWRlciwgcmVzb3VyY2VMb2FkZXIucmVxdWVzdCgpLCByZXNvdXJjZUxvYWRlci5yZXF1ZXN0KCku
dXJsKCkpKSB7CiAgICAgICAgIExPRyhOZXR3b3JrU2NoZWR1bGluZywgIihXZWJQcm9jZXNzKSBX
ZWJMb2FkZXJTdHJhdGVneTo6c2NoZWR1bGVMb2FkLCB1cmwgJyVzJyB3aWxsIGJlIGxvYWRlZCBm
cm9tIGFwcGxpY2F0aW9uIGNhY2hlLiIsIHJlc291cmNlTG9hZGVyLnVybCgpLnN0cmluZygpLnV0
ZjgoKS5kYXRhKCkpOwogICAgICAgICBSRUxFQVNFX0xPR19JRl9BTExPV0VEKHJlc291cmNlTG9h
ZGVyLCAic2NoZWR1bGVMb2FkOiBVUkwgd2lsbCBiZSBsb2FkZWQgZnJvbSBhcHBsaWNhdGlvbiBj
YWNoZSAoZnJhbWUgPSAlcCwgcmVzb3VyY2VJRCA9ICUiIFBSSXU2NCAiKSIsIHJlc291cmNlTG9h
ZGVyLmZyYW1lKCksIGlkZW50aWZpZXIpOwogICAgICAgICBtX3dlYlJlc291cmNlTG9hZGVycy5z
ZXQoaWRlbnRpZmllciwgV2ViUmVzb3VyY2VMb2FkZXI6OmNyZWF0ZShyZXNvdXJjZUxvYWRlciwg
dHJhY2tpbmdQYXJhbWV0ZXJzKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlTG9hZGVyLmNwcAppbmRleCA3MzhiMWRjYzMzOTM3MjY5
NjhhNjJjNTczYzM4Mjg4ZDk3ZjdiM2QxLi4zOGE4ODJiYjhmNGU5MTAyNjBiOWU1MmQ4ZTU1ZGMx
MTllZDBiMzE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL05ldHdvcmsv
V2ViUmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvTmV0
d29yay9XZWJSZXNvdXJjZUxvYWRlci5jcHAKQEAgLTg3LDcgKzg3LDcgQEAgdm9pZCBXZWJSZXNv
dXJjZUxvYWRlcjo6d2lsbFNlbmRSZXF1ZXN0KFJlc291cmNlUmVxdWVzdCYmIHByb3Bvc2VkUmVx
dWVzdCwgUmVzb3UKIAogICAgIFJlZlB0cjxXZWJSZXNvdXJjZUxvYWRlcj4gcHJvdGVjdGVkVGhp
cyh0aGlzKTsKIAotICAgIGlmIChtX2NvcmVMb2FkZXItPmRvY3VtZW50TG9hZGVyKCktPmFwcGxp
Y2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZEZhbGxiYWNrRm9yUmVkaXJlY3QobV9jb3JlTG9h
ZGVyLmdldCgpLCBwcm9wb3NlZFJlcXVlc3QsIHJlZGlyZWN0UmVzcG9uc2UpKQorICAgIGlmICht
X2NvcmVMb2FkZXItPmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWF5
YmVMb2FkRmFsbGJhY2tGb3JSZWRpcmVjdChtX2NvcmVMb2FkZXIuZ2V0KCksIHByb3Bvc2VkUmVx
dWVzdCwgcmVkaXJlY3RSZXNwb25zZSkpCiAgICAgICAgIHJldHVybjsKIAogICAgIG1fY29yZUxv
YWRlci0+d2lsbFNlbmRSZXF1ZXN0KFdURk1vdmUocHJvcG9zZWRSZXF1ZXN0KSwgcmVkaXJlY3RS
ZXNwb25zZSwgW3Byb3RlY3RlZFRoaXNdKFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QpIHsKQEAg
LTExMCw3ICsxMTAsNyBAQCB2b2lkIFdlYlJlc291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9u
c2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIGJvbwogCiAgICAgUmVmPFdlYlJl
c291cmNlTG9hZGVyPiBwcm90ZWN0KCp0aGlzKTsKIAotICAgIGlmIChtX2NvcmVMb2FkZXItPmRv
Y3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZEZhbGxiYWNr
Rm9yUmVzcG9uc2UobV9jb3JlTG9hZGVyLmdldCgpLCByZXNwb25zZSkpCisgICAgaWYgKG1fY29y
ZUxvYWRlci0+ZG9jdW1lbnRMb2FkZXIoKS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS5tYXliZUxv
YWRGYWxsYmFja0ZvclJlc3BvbnNlKG1fY29yZUxvYWRlci5nZXQoKSwgcmVzcG9uc2UpKQogICAg
ICAgICByZXR1cm47CiAKICAgICBtX2NvcmVMb2FkZXItPmRpZFJlY2VpdmVSZXNwb25zZShyZXNw
b25zZSk7CkBAIC0xNDgsNyArMTQ4LDcgQEAgdm9pZCBXZWJSZXNvdXJjZUxvYWRlcjo6ZGlkRmFp
bFJlc291cmNlTG9hZChjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKICAgICBMT0coTmV0d29y
aywgIihXZWJQcm9jZXNzKSBXZWJSZXNvdXJjZUxvYWRlcjo6ZGlkRmFpbFJlc291cmNlTG9hZCBm
b3IgJyVzJyIsIG1fY29yZUxvYWRlci0+dXJsKCkuc3RyaW5nKCkubGF0aW4xKCkuZGF0YSgpKTsK
ICAgICBSRUxFQVNFX0xPR19JRl9BTExPV0VEKCJkaWRGYWlsUmVzb3VyY2VMb2FkOiAocGFnZUlE
ID0gJSIgUFJJdTY0ICIsIGZyYW1lSUQgPSAlIiBQUkl1NjQgIiwgcmVzb3VyY2VJRCA9ICUiIFBS
SXU2NCAiKSIsIG1fdHJhY2tpbmdQYXJhbWV0ZXJzLnBhZ2VJRCwgbV90cmFja2luZ1BhcmFtZXRl
cnMuZnJhbWVJRCwgbV90cmFja2luZ1BhcmFtZXRlcnMucmVzb3VyY2VJRCk7CiAKLSAgICBpZiAo
bV9jb3JlTG9hZGVyLT5kb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5t
YXliZUxvYWRGYWxsYmFja0ZvckVycm9yKG1fY29yZUxvYWRlci5nZXQoKSwgZXJyb3IpKQorICAg
IGlmIChtX2NvcmVMb2FkZXItPmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCkubWF5YmVMb2FkRmFsbGJhY2tGb3JFcnJvcihtX2NvcmVMb2FkZXIuZ2V0KCksIGVycm9yKSkK
ICAgICAgICAgcmV0dXJuOwogICAgIG1fY29yZUxvYWRlci0+ZGlkRmFpbChlcnJvcik7CiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5j
cHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5jcHAKaW5k
ZXggYWMxZGFhYmFkMDYzYTQ5NjI2YjM3ZTA0MDJlOWViZjU0OTJkM2IxYi4uNzg4NjI2ODU5YTY4
NjUxNDY1YmMxNzFmYTFhYjBiMmI1MmFmODczMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3LmNwcApAQCAtMTg1LDIzICsxODUsMTkgQEAgc3Rh
dGljIFN0cmluZyBidWlsZEhUVFBIZWFkZXJzKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3Bv
bnNlLCBsb25nIGxvbmcmIGV4cGUKICAgICBpZiAoIXJlc3BvbnNlLmlzSFRUUCgpKQogICAgICAg
ICByZXR1cm4gU3RyaW5nKCk7CiAKLSAgICBTdHJpbmdCdWlsZGVyIHN0cmluZ0J1aWxkZXI7Ci0g
ICAgCi0gICAgU3RyaW5nIHN0YXR1c0xpbmUgPSBTdHJpbmc6OmZvcm1hdCgiSFRUUCAlZCAiLCBy
ZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpKTsKLSAgICBzdHJpbmdCdWlsZGVyLmFwcGVuZChzdGF0
dXNMaW5lKTsKLSAgICBzdHJpbmdCdWlsZGVyLmFwcGVuZChyZXNwb25zZS5odHRwU3RhdHVzVGV4
dCgpKTsKLSAgICBzdHJpbmdCdWlsZGVyLmFwcGVuZCgnXG4nKTsKLSAgICAKLSAgICBIVFRQSGVh
ZGVyTWFwOjpjb25zdF9pdGVyYXRvciBlbmQgPSByZXNwb25zZS5odHRwSGVhZGVyRmllbGRzKCku
ZW5kKCk7Ci0gICAgZm9yIChIVFRQSGVhZGVyTWFwOjpjb25zdF9pdGVyYXRvciBpdCA9IHJlc3Bv
bnNlLmh0dHBIZWFkZXJGaWVsZHMoKS5iZWdpbigpOyBpdCAhPSBlbmQ7ICsraXQpIHsKLSAgICAg
ICAgc3RyaW5nQnVpbGRlci5hcHBlbmQoaXQtPmtleSk7Ci0gICAgICAgIHN0cmluZ0J1aWxkZXIu
YXBwZW5kTGl0ZXJhbCgiOiAiKTsKLSAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmQoaXQtPnZh
bHVlKTsKLSAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmQoJ1xuJyk7CisgICAgU3RyaW5nQnVp
bGRlciBoZWFkZXI7CisgICAgaGVhZGVyLmFwcGVuZExpdGVyYWwoIkhUVFAgIik7CisgICAgaGVh
ZGVyLmFwcGVuZE51bWJlcihyZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpKTsKKyAgICBoZWFkZXIu
YXBwZW5kKCcgJyk7CisgICAgaGVhZGVyLmFwcGVuZChyZXNwb25zZS5odHRwU3RhdHVzVGV4dCgp
KTsKKyAgICBoZWFkZXIuYXBwZW5kKCdcbicpOworICAgIGZvciAoYXV0byYgZmllbGQgOiByZXNw
b25zZS5odHRwSGVhZGVyRmllbGRzKCkpIHsKKyAgICAgICAgaGVhZGVyLmFwcGVuZChmaWVsZC5r
ZXkpOworICAgICAgICBoZWFkZXIuYXBwZW5kTGl0ZXJhbCgiOiAiKTsKKyAgICAgICAgaGVhZGVy
LmFwcGVuZChmaWVsZC52YWx1ZSk7CisgICAgICAgIGhlYWRlci5hcHBlbmQoJ1xuJyk7CiAgICAg
fQotICAgIAotICAgIFN0cmluZyBoZWFkZXJzID0gc3RyaW5nQnVpbGRlci50b1N0cmluZygpOwot
ICAgIAorCiAgICAgLy8gSWYgdGhlIGNvbnRlbnQgaXMgZW5jb2RlZCAobW9zdCBsaWtlbHkgY29t
cHJlc3NlZCksIHRoZW4gZG9uJ3Qgc2VuZCBpdHMgbGVuZ3RoIHRvIHRoZSBwbHVnaW4sCiAgICAg
Ly8gd2hpY2ggaXMgb25seSBpbnRlcmVzdGVkIGluIHRoZSBkZWNvZGVkIGxlbmd0aCwgbm90IHll
dCBrbm93biBhdCB0aGUgbW9tZW50LgogICAgIC8vIDxyZGFyOi8vcHJvYmxlbS80NDcwNTk5PiB0
cmFja3MgYSByZXF1ZXN0IGZvciAtW05TVVJMUmVzcG9uc2UgZXhwZWN0ZWRDb250ZW50TGVuZ3Ro
XSB0byBpbmNvcnBvcmF0ZSB0aGlzIGxvZ2ljLgpAQCAtMjA5LDcgKzIwNSw3IEBAIHN0YXRpYyBT
dHJpbmcgYnVpbGRIVFRQSGVhZGVycyhjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwg
bG9uZyBsb25nJiBleHBlCiAgICAgaWYgKCFjb250ZW50RW5jb2RpbmcuaXNOdWxsKCkgJiYgY29u
dGVudEVuY29kaW5nICE9ICJpZGVudGl0eSIpCiAgICAgICAgIGV4cGVjdGVkQ29udGVudExlbmd0
aCA9IC0xOwogCi0gICAgcmV0dXJuIGhlYWRlcnM7CisgICAgcmV0dXJuIGhlYWRlci50b1N0cmlu
ZygpOwogfQogCiBzdGF0aWMgdWludDMyX3QgbGFzdE1vZGlmaWVkRGF0ZU1TKGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQpAQCAtMjkyLDM3ICsyODgsMTkgQEAgc3RhdGljIGlubGlu
ZSBXZWJQYWdlKiB3ZWJQYWdlKEhUTUxQbHVnSW5FbGVtZW50KiBwbHVnaW5FbGVtZW50KQogICAg
IHJldHVybiB3ZWJGcmFtZS0+cGFnZSgpOwogfQogCi1SZWY8UGx1Z2luVmlldz4gUGx1Z2luVmll
dzo6Y3JlYXRlKFBhc3NSZWZQdHI8SFRNTFBsdWdJbkVsZW1lbnQ+IHBsdWdpbkVsZW1lbnQsIFBh
c3NSZWZQdHI8UGx1Z2luPiBwbHVnaW4sIGNvbnN0IFBsdWdpbjo6UGFyYW1ldGVycyYgcGFyYW1l
dGVycykKK1JlZjxQbHVnaW5WaWV3PiBQbHVnaW5WaWV3OjpjcmVhdGUoSFRNTFBsdWdJbkVsZW1l
bnQmIHBsdWdpbkVsZW1lbnQsIFJlZjxQbHVnaW4+JiYgcGx1Z2luLCBjb25zdCBQbHVnaW46OlBh
cmFtZXRlcnMmIHBhcmFtZXRlcnMpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgUGx1Z2lu
VmlldyhwbHVnaW5FbGVtZW50LCBwbHVnaW4sIHBhcmFtZXRlcnMpKTsKKyAgICByZXR1cm4gYWRv
cHRSZWYoKm5ldyBQbHVnaW5WaWV3KHBsdWdpbkVsZW1lbnQsIFdURk1vdmUocGx1Z2luKSwgcGFy
YW1ldGVycykpOwogfQogCi1QbHVnaW5WaWV3OjpQbHVnaW5WaWV3KFBhc3NSZWZQdHI8SFRNTFBs
dWdJbkVsZW1lbnQ+IHBsdWdpbkVsZW1lbnQsIFBhc3NSZWZQdHI8UGx1Z2luPiBwbHVnaW4sIGNv
bnN0IFBsdWdpbjo6UGFyYW1ldGVycyYgcGFyYW1ldGVycykKK1BsdWdpblZpZXc6OlBsdWdpblZp
ZXcoSFRNTFBsdWdJbkVsZW1lbnQmIHBsdWdpbkVsZW1lbnQsIFJlZjxQbHVnaW4+JiYgcGx1Z2lu
LCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpCiAgICAgOiBQbHVnaW5WaWV3
QmFzZSgwKQotICAgICwgbV9wbHVnaW5FbGVtZW50KHBsdWdpbkVsZW1lbnQpCi0gICAgLCBtX3Bs
dWdpbihwbHVnaW4pCisgICAgLCBtX3BsdWdpbkVsZW1lbnQoJnBsdWdpbkVsZW1lbnQpCisgICAg
LCBtX3BsdWdpbihXVEZNb3ZlKHBsdWdpbikpCiAgICAgLCBtX3dlYlBhZ2Uod2ViUGFnZShtX3Bs
dWdpbkVsZW1lbnQuZ2V0KCkpKQogICAgICwgbV9wYXJhbWV0ZXJzKHBhcmFtZXRlcnMpCi0gICAg
LCBtX2lzSW5pdGlhbGl6ZWQoZmFsc2UpCi0gICAgLCBtX2lzV2FpdGluZ0ZvclN5bmNocm9ub3Vz
SW5pdGlhbGl6YXRpb24oZmFsc2UpCi0gICAgLCBtX2lzV2FpdGluZ1VudGlsTWVkaWFDYW5TdGFy
dChmYWxzZSkKLSAgICAsIG1faXNCZWluZ0Rlc3Ryb3llZChmYWxzZSkKLSAgICAsIG1fcGx1Z2lu
UHJvY2Vzc0hhc0NyYXNoZWQoZmFsc2UpCi0jaWYgRU5BQkxFKFBSSU1BUllfU05BUFNIT1RURURf
UExVR0lOX0hFVVJJU1RJQykKLSAgICAsIG1fZGlkUGx1Z0luU3RhcnRPZmZTY3JlZW4oZmFsc2Up
Ci0jZW5kaWYKICAgICAsIG1fcGVuZGluZ1VSTFJlcXVlc3RzVGltZXIoUnVuTG9vcDo6bWFpbigp
LCB0aGlzLCAmUGx1Z2luVmlldzo6cGVuZGluZ1VSTFJlcXVlc3RzVGltZXJGaXJlZCkKLSNpZiBF
TkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKLSAgICAsIG1fbnBSdW50aW1lT2JqZWN0TWFwKHRo
aXMpCi0jZW5kaWYKLSAgICAsIG1fbWFudWFsU3RyZWFtU3RhdGUoU3RyZWFtU3RhdGVJbml0aWFs
KQogICAgICwgbV9wbHVnaW5TbmFwc2hvdFRpbWVyKCp0aGlzLCAmUGx1Z2luVmlldzo6cGx1Z2lu
U25hcHNob3RUaW1lckZpcmVkLCBwbHVnaW5TbmFwc2hvdFRpbWVyRGVsYXkpCi0jaWYgRU5BQkxF
KFBSSU1BUllfU05BUFNIT1RURURfUExVR0lOX0hFVVJJU1RJQykgfHwgUExBVEZPUk0oQ09DT0Ep
Ci0gICAgLCBtX2NvdW50U25hcHNob3RSZXRyaWVzKDApCi0jZW5kaWYKLSAgICAsIG1fZGlkUmVj
ZWl2ZVVzZXJJbnRlcmFjdGlvbihmYWxzZSkKLSAgICAsIG1fcGFnZVNjYWxlRmFjdG9yKDEpCi0g
ICAgLCBtX3BsdWdpbklzUGxheWluZ0F1ZGlvKGZhbHNlKQogewogICAgIG1fd2ViUGFnZS0+YWRk
UGx1Z2luVmlldyh0aGlzKTsKIH0KQEAgLTM3NCw3ICszNTIsNyBAQCB2b2lkIFBsdWdpblZpZXc6
OmRlc3Ryb3lQbHVnaW5BbmRSZXNldCgpCiAgICAgY2FuY2VsQWxsU3RyZWFtcygpOwogfQogCi12
b2lkIFBsdWdpblZpZXc6OnJlY3JlYXRlQW5kSW5pdGlhbGl6ZShQYXNzUmVmUHRyPFBsdWdpbj4g
cGx1Z2luKQordm9pZCBQbHVnaW5WaWV3OjpyZWNyZWF0ZUFuZEluaXRpYWxpemUoUmVmPFBsdWdp
bj4mJiBwbHVnaW4pCiB7CiAgICAgaWYgKG1fcGx1Z2luKSB7CiAgICAgICAgIGlmIChtX3BsdWdp
blNuYXBzaG90VGltZXIuaXNBY3RpdmUoKSkKQEAgLTM4MiwxMyArMzYwLDEyIEBAIHZvaWQgUGx1
Z2luVmlldzo6cmVjcmVhdGVBbmRJbml0aWFsaXplKFBhc3NSZWZQdHI8UGx1Z2luPiBwbHVnaW4p
CiAgICAgICAgIGRlc3Ryb3lQbHVnaW5BbmRSZXNldCgpOwogICAgIH0KIAotICAgIC8vIFJlc2V0
IG1lbWJlciB2YXJpYWJsZXMgdG8gaW5pdGlhbCB2YWx1ZXMuCi0gICAgbV9wbHVnaW4gPSBwbHVn
aW47CisgICAgbV9wbHVnaW4gPSBXVEZNb3ZlKHBsdWdpbik7CiAgICAgbV9pc0luaXRpYWxpemVk
ID0gZmFsc2U7CiAgICAgbV9pc1dhaXRpbmdGb3JTeW5jaHJvbm91c0luaXRpYWxpemF0aW9uID0g
ZmFsc2U7CiAgICAgbV9pc1dhaXRpbmdVbnRpbE1lZGlhQ2FuU3RhcnQgPSBmYWxzZTsKICAgICBt
X2lzQmVpbmdEZXN0cm95ZWQgPSBmYWxzZTsKLSAgICBtX21hbnVhbFN0cmVhbVN0YXRlID0gU3Ry
ZWFtU3RhdGVJbml0aWFsOworICAgIG1fbWFudWFsU3RyZWFtU3RhdGUgPSBNYW51YWxTdHJlYW1T
dGF0ZTo6SW5pdGlhbDsKICAgICBtX3RyYW5zaWVudFBhaW50aW5nU25hcHNob3QgPSBudWxscHRy
OwogCiAgICAgaW5pdGlhbGl6ZVBsdWdpbigpOwpAQCAtNDIxLDggKzM5OCw4IEBAIHZvaWQgUGx1
Z2luVmlldzo6bWFudWFsTG9hZERpZFJlY2VpdmVSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJiByZXNwb25zZSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKCFtX2lzSW5pdGlhbGl6
ZWQpIHsKLSAgICAgICAgQVNTRVJUKG1fbWFudWFsU3RyZWFtU3RhdGUgPT0gU3RyZWFtU3RhdGVJ
bml0aWFsKTsKLSAgICAgICAgbV9tYW51YWxTdHJlYW1TdGF0ZSA9IFN0cmVhbVN0YXRlSGFzUmVj
ZWl2ZWRSZXNwb25zZTsKKyAgICAgICAgQVNTRVJUKG1fbWFudWFsU3RyZWFtU3RhdGUgPT0gTWFu
dWFsU3RyZWFtU3RhdGU6OkluaXRpYWwpOworICAgICAgICBtX21hbnVhbFN0cmVhbVN0YXRlID0g
TWFudWFsU3RyZWFtU3RhdGU6Okhhc1JlY2VpdmVkUmVzcG9uc2U7CiAgICAgICAgIG1fbWFudWFs
U3RyZWFtUmVzcG9uc2UgPSByZXNwb25zZTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTQ0
OCw3ICs0MjUsNyBAQCB2b2lkIFBsdWdpblZpZXc6Om1hbnVhbExvYWREaWRSZWNlaXZlRGF0YShj
b25zdCBjaGFyKiBieXRlcywgaW50IGxlbmd0aCkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYg
KCFtX2lzSW5pdGlhbGl6ZWQpIHsKLSAgICAgICAgQVNTRVJUKG1fbWFudWFsU3RyZWFtU3RhdGUg
PT0gU3RyZWFtU3RhdGVIYXNSZWNlaXZlZFJlc3BvbnNlKTsKKyAgICAgICAgQVNTRVJUKG1fbWFu
dWFsU3RyZWFtU3RhdGUgPT0gTWFudWFsU3RyZWFtU3RhdGU6Okhhc1JlY2VpdmVkUmVzcG9uc2Up
OwogICAgICAgICBpZiAoIW1fbWFudWFsU3RyZWFtRGF0YSkKICAgICAgICAgICAgIG1fbWFudWFs
U3RyZWFtRGF0YSA9IFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKCk7CiAKQEAgLTQ2Niw4ICs0NDMsOCBA
QCB2b2lkIFBsdWdpblZpZXc6Om1hbnVhbExvYWREaWRGaW5pc2hMb2FkaW5nKCkKICAgICAgICAg
cmV0dXJuOwogCiAgICAgaWYgKCFtX2lzSW5pdGlhbGl6ZWQpIHsKLSAgICAgICAgQVNTRVJUKG1f
bWFudWFsU3RyZWFtU3RhdGUgPT0gU3RyZWFtU3RhdGVIYXNSZWNlaXZlZFJlc3BvbnNlKTsKLSAg
ICAgICAgbV9tYW51YWxTdHJlYW1TdGF0ZSA9IFN0cmVhbVN0YXRlRmluaXNoZWQ7CisgICAgICAg
IEFTU0VSVChtX21hbnVhbFN0cmVhbVN0YXRlID09IE1hbnVhbFN0cmVhbVN0YXRlOjpIYXNSZWNl
aXZlZFJlc3BvbnNlKTsKKyAgICAgICAgbV9tYW51YWxTdHJlYW1TdGF0ZSA9IE1hbnVhbFN0cmVh
bVN0YXRlOjpGaW5pc2hlZDsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIApAQCAtNDgxLDcgKzQ1
OCw3IEBAIHZvaWQgUGx1Z2luVmlldzo6bWFudWFsTG9hZERpZEZhaWwoY29uc3QgUmVzb3VyY2VF
cnJvciYgZXJyb3IpCiAgICAgICAgIHJldHVybjsKIAogICAgIGlmICghbV9pc0luaXRpYWxpemVk
KSB7Ci0gICAgICAgIG1fbWFudWFsU3RyZWFtU3RhdGUgPSBTdHJlYW1TdGF0ZUZpbmlzaGVkOwor
ICAgICAgICBtX21hbnVhbFN0cmVhbVN0YXRlID0gTWFudWFsU3RyZWFtU3RhdGU6OkZpbmlzaGVk
OwogICAgICAgICBtX21hbnVhbFN0cmVhbUVycm9yID0gZXJyb3I7CiAgICAgICAgIG1fbWFudWFs
U3RyZWFtRGF0YSA9IG51bGxwdHI7CiAgICAgICAgIHJldHVybjsKQEAgLTEwMDcsNyArOTg0LDcg
QEAgdm9pZCBQbHVnaW5WaWV3Ojp3aWxsRGV0YXRjaFJlbmRlcmVyKCkKICAgICBtX3BsdWdpbi0+
d2lsbERldGF0Y2hSZW5kZXJlcigpOwogfQogCi1QYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gUGx1
Z2luVmlldzo6bGl2ZVJlc291cmNlRGF0YSgpIGNvbnN0CitSZWZQdHI8U2hhcmVkQnVmZmVyPiBQ
bHVnaW5WaWV3OjpsaXZlUmVzb3VyY2VEYXRhKCkgY29uc3QKIHsKICAgICBpZiAoIW1faXNJbml0
aWFsaXplZCB8fCAhbV9wbHVnaW4pCiAgICAgICAgIHJldHVybiAwOwpAQCAtMTMwOCwxMiArMTI4
NSwxMiBAQCB2b2lkIFBsdWdpblZpZXc6OmNhbmNlbEFsbFN0cmVhbXMoKQogCiB2b2lkIFBsdWdp
blZpZXc6OnJlZGVsaXZlck1hbnVhbFN0cmVhbSgpCiB7Ci0gICAgaWYgKG1fbWFudWFsU3RyZWFt
U3RhdGUgPT0gU3RyZWFtU3RhdGVJbml0aWFsKSB7CisgICAgaWYgKG1fbWFudWFsU3RyZWFtU3Rh
dGUgPT0gTWFudWFsU3RyZWFtU3RhdGU6OkluaXRpYWwpIHsKICAgICAgICAgLy8gTm90aGluZyB0
byBkby4KICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIGlmIChtX21hbnVhbFN0cmVhbVN0
YXRlID09IFN0cmVhbVN0YXRlRmFpbGVkKSB7CisgICAgaWYgKG1fbWFudWFsU3RyZWFtU3RhdGUg
PT0gTWFudWFsU3RyZWFtU3RhdGU6OkZhaWxlZCkgewogICAgICAgICBtYW51YWxMb2FkRGlkRmFp
bChtX21hbnVhbFN0cmVhbUVycm9yKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTEzMzQs
NyArMTMxMSw3IEBAIHZvaWQgUGx1Z2luVmlldzo6cmVkZWxpdmVyTWFudWFsU3RyZWFtKCkKICAg
ICAgICAgbV9tYW51YWxTdHJlYW1EYXRhID0gbnVsbHB0cjsKICAgICB9CiAKLSAgICBpZiAobV9t
YW51YWxTdHJlYW1TdGF0ZSA9PSBTdHJlYW1TdGF0ZUZpbmlzaGVkKQorICAgIGlmIChtX21hbnVh
bFN0cmVhbVN0YXRlID09IE1hbnVhbFN0cmVhbVN0YXRlOjpGaW5pc2hlZCkKICAgICAgICAgbWFu
dWFsTG9hZERpZEZpbmlzaExvYWRpbmcoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3LmgKaW5kZXggMDA3NTgzYzQzZDAzOGI5ZmFjYzJlZGI3
M2QzYTEyNWI0YmNkYTQ4My4uMzhiZTYyMWI4MWFmNjlhNjM3MzczNjJhY2IyMDE3ZWQzNzgwNzU4
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZp
ZXcuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5o
CkBAIC02NCw5ICs2NCw5IEBAIGNsYXNzIFdlYkV2ZW50OwogCiBjbGFzcyBQbHVnaW5WaWV3IDog
cHVibGljIFdlYkNvcmU6OlBsdWdpblZpZXdCYXNlLCBwdWJsaWMgUGx1Z2luQ29udHJvbGxlciwg
cHJpdmF0ZSBXZWJDb3JlOjpNZWRpYUNhblN0YXJ0TGlzdGVuZXIsIHByaXZhdGUgV2ViRnJhbWU6
OkxvYWRMaXN0ZW5lciwgcHJpdmF0ZSBXZWJDb3JlOjpNZWRpYVByb2R1Y2VyIHsKIHB1YmxpYzoK
LSAgICBzdGF0aWMgUmVmPFBsdWdpblZpZXc+IGNyZWF0ZShQYXNzUmVmUHRyPFdlYkNvcmU6OkhU
TUxQbHVnSW5FbGVtZW50PiwgUGFzc1JlZlB0cjxQbHVnaW4+LCBjb25zdCBQbHVnaW46OlBhcmFt
ZXRlcnMmKTsKKyAgICBzdGF0aWMgUmVmPFBsdWdpblZpZXc+IGNyZWF0ZShXZWJDb3JlOjpIVE1M
UGx1Z0luRWxlbWVudCYsIFJlZjxQbHVnaW4+JiYsIGNvbnN0IFBsdWdpbjo6UGFyYW1ldGVycyYp
OwogCi0gICAgdm9pZCByZWNyZWF0ZUFuZEluaXRpYWxpemUoUGFzc1JlZlB0cjxQbHVnaW4+KTsK
KyAgICB2b2lkIHJlY3JlYXRlQW5kSW5pdGlhbGl6ZShSZWY8UGx1Z2luPiYmKTsKIAogICAgIFdl
YkNvcmU6OkZyYW1lKiBmcmFtZSgpIGNvbnN0OwogCkBAIC0xMTIsMTMgKzExMiwxMyBAQCBwdWJs
aWM6CiAKICAgICBib29sIHNob3VsZEFsbG93U2NyaXB0aW5nKCk7CiAKLSAgICBQYXNzUmVmUHRy
PFdlYkNvcmU6OlNoYXJlZEJ1ZmZlcj4gbGl2ZVJlc291cmNlRGF0YSgpIGNvbnN0OworICAgIFJl
ZlB0cjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+IGxpdmVSZXNvdXJjZURhdGEoKSBjb25zdDsKICAg
ICBib29sIHBlcmZvcm1EaWN0aW9uYXJ5TG9va3VwQXRMb2NhdGlvbihjb25zdCBXZWJDb3JlOjpG
bG9hdFBvaW50Jik7CiAgICAgU3RyaW5nIGdldFNlbGVjdGlvbkZvcldvcmRBdFBvaW50KGNvbnN0
IFdlYkNvcmU6OkZsb2F0UG9pbnQmKSBjb25zdDsKICAgICBib29sIGV4aXN0aW5nU2VsZWN0aW9u
Q29udGFpbnNQb2ludChjb25zdCBXZWJDb3JlOjpGbG9hdFBvaW50JikgY29uc3Q7CiAKIHByaXZh
dGU6Ci0gICAgUGx1Z2luVmlldyhQYXNzUmVmUHRyPFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50
PiwgUGFzc1JlZlB0cjxQbHVnaW4+LCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmIHBhcmFtZXRl
cnMpOworICAgIFBsdWdpblZpZXcoV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQmLCBSZWY8UGx1
Z2luPiYmLCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmKTsKICAgICB2aXJ0dWFsIH5QbHVnaW5W
aWV3KCk7CiAKICAgICB2b2lkIGluaXRpYWxpemVQbHVnaW4oKTsKQEAgLTI0NCwxNCArMjQ0LDE0
IEBAIHByaXZhdGU6CiAgICAgV2ViUGFnZSogbV93ZWJQYWdlOwogICAgIFBsdWdpbjo6UGFyYW1l
dGVycyBtX3BhcmFtZXRlcnM7CiAKLSAgICBib29sIG1faXNJbml0aWFsaXplZDsKLSAgICBib29s
IG1faXNXYWl0aW5nRm9yU3luY2hyb25vdXNJbml0aWFsaXphdGlvbjsKLSAgICBib29sIG1faXNX
YWl0aW5nVW50aWxNZWRpYUNhblN0YXJ0OwotICAgIGJvb2wgbV9pc0JlaW5nRGVzdHJveWVkOwot
ICAgIGJvb2wgbV9wbHVnaW5Qcm9jZXNzSGFzQ3Jhc2hlZDsKKyAgICBib29sIG1faXNJbml0aWFs
aXplZCB7IGZhbHNlIH07CisgICAgYm9vbCBtX2lzV2FpdGluZ0ZvclN5bmNocm9ub3VzSW5pdGlh
bGl6YXRpb24geyBmYWxzZSB9OworICAgIGJvb2wgbV9pc1dhaXRpbmdVbnRpbE1lZGlhQ2FuU3Rh
cnQgeyBmYWxzZSB9OworICAgIGJvb2wgbV9pc0JlaW5nRGVzdHJveWVkIHsgZmFsc2UgfTsKKyAg
ICBib29sIG1fcGx1Z2luUHJvY2Vzc0hhc0NyYXNoZWQgeyBmYWxzZSB9OwogCiAjaWYgRU5BQkxF
KFBSSU1BUllfU05BUFNIT1RURURfUExVR0lOX0hFVVJJU1RJQykKLSAgICBib29sIG1fZGlkUGx1
Z0luU3RhcnRPZmZTY3JlZW47CisgICAgYm9vbCBtX2RpZFBsdWdJblN0YXJ0T2ZmU2NyZWVuIHsg
ZmFsc2UgfTsKICNlbmRpZgogCiAgICAgLy8gUGVuZGluZyBVUkxSZXF1ZXN0cyB0aGF0IHRoZSBw
bHVnLWluIGhhcyBtYWRlLgpAQCAtMjY3LDE4ICsyNjcsMTMgQEAgcHJpdmF0ZToKIAogI2lmIEVO
QUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgIC8vIEEgbWFwIG9mIGFsbCByZWxhdGVkIE5Q
T2JqZWN0cyBmb3IgdGhpcyBwbHVnLWluIHZpZXcuCi0gICAgTlBSdW50aW1lT2JqZWN0TWFwIG1f
bnBSdW50aW1lT2JqZWN0TWFwOworICAgIE5QUnVudGltZU9iamVjdE1hcCBtX25wUnVudGltZU9i
amVjdE1hcCB7IHRoaXMgfTsKICNlbmRpZgogCiAgICAgLy8gVGhlIG1hbnVhbCBzdHJlYW0gc3Rh
dGUuIFRoaXMgaXMgdXNlZCBzbyB3ZSBjYW4gZGVsaXZlciBhIG1hbnVhbCBzdHJlYW0gdG8gYSBw
bHVnLWluCiAgICAgLy8gd2hlbiBpdCBpcyBpbml0aWFsaXplZC4KLSAgICBlbnVtIE1hbnVhbFN0
cmVhbVN0YXRlIHsKLSAgICAgICAgU3RyZWFtU3RhdGVJbml0aWFsLAotICAgICAgICBTdHJlYW1T
dGF0ZUhhc1JlY2VpdmVkUmVzcG9uc2UsCi0gICAgICAgIFN0cmVhbVN0YXRlRmluaXNoZWQsCi0g
ICAgICAgIFN0cmVhbVN0YXRlRmFpbGVkCi0gICAgfTsKLSAgICBNYW51YWxTdHJlYW1TdGF0ZSBt
X21hbnVhbFN0cmVhbVN0YXRlOworICAgIGVudW0gY2xhc3MgTWFudWFsU3RyZWFtU3RhdGUgeyBJ
bml0aWFsLCBIYXNSZWNlaXZlZFJlc3BvbnNlLCBGaW5pc2hlZCwgRmFpbGVkIH07CisgICAgTWFu
dWFsU3RyZWFtU3RhdGUgbV9tYW51YWxTdHJlYW1TdGF0ZSB7IE1hbnVhbFN0cmVhbVN0YXRlOjpJ
bml0aWFsIH07CiAKICAgICBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIG1fbWFudWFsU3RyZWFt
UmVzcG9uc2U7CiAgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBtX21hbnVhbFN0cmVhbUVycm9y
OwpAQCAtMjg5LDEzICsyODQsMTMgQEAgcHJpdmF0ZToKICAgICAvLyBUaGlzIHRpbWVyIGlzIHVz
ZWQgd2hlbiBwbHVnaW4gc25hcHNob3R0aW5nIGlzIGVuYWJsZWQsIHRvIGNhcHR1cmUgYSBwbHVn
aW4gcGxhY2Vob2xkZXIuCiAgICAgV2ViQ29yZTo6RGVmZXJyYWJsZU9uZVNob3RUaW1lciBtX3Bs
dWdpblNuYXBzaG90VGltZXI7CiAjaWYgRU5BQkxFKFBSSU1BUllfU05BUFNIT1RURURfUExVR0lO
X0hFVVJJU1RJQykgfHwgUExBVEZPUk0oQ09DT0EpCi0gICAgdW5zaWduZWQgbV9jb3VudFNuYXBz
aG90UmV0cmllczsKKyAgICB1bnNpZ25lZCBtX2NvdW50U25hcHNob3RSZXRyaWVzIHsgMCB9Owog
I2VuZGlmCi0gICAgYm9vbCBtX2RpZFJlY2VpdmVVc2VySW50ZXJhY3Rpb247CisgICAgYm9vbCBt
X2RpZFJlY2VpdmVVc2VySW50ZXJhY3Rpb24geyBmYWxzZSB9OwogCi0gICAgZG91YmxlIG1fcGFn
ZVNjYWxlRmFjdG9yOworICAgIGRvdWJsZSBtX3BhZ2VTY2FsZUZhY3RvciB7IDEgfTsKIAotICAg
IGJvb2wgbV9wbHVnaW5Jc1BsYXlpbmdBdWRpbzsKKyAgICBib29sIG1fcGx1Z2luSXNQbGF5aW5n
QXVkaW8geyBmYWxzZSB9OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVu
dC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9t
ZUNsaWVudC5jcHAKaW5kZXggZGMzZmVkNWM5YmJmZTMwYzhiZDIwYWVlOWU5YjAxZDgyZGZlNGZl
OC4uM2Q3MmM2NzMxNzZlMGQwMWNmNTMzYTNjYzM1OWU5YmIwYWMyNWE2YSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hy
b21lQ2xpZW50LmNwcApAQCAtMTAzLDIwICsxMDMsMjAgQEAgc3RhdGljIGRvdWJsZSBhcmVhKFdl
YkZyYW1lKiBmcmFtZSkKIH0KIAogCi1zdGF0aWMgV2ViRnJhbWUqIGZpbmRMYXJnZXN0RnJhbWVJ
bkZyYW1lU2V0KFdlYlBhZ2UqIHBhZ2UpCitzdGF0aWMgV2ViRnJhbWUqIGZpbmRMYXJnZXN0RnJh
bWVJbkZyYW1lU2V0KFdlYlBhZ2UmIHBhZ2UpCiB7CiAgICAgLy8gQXBwcm94aW1hdGUgd2hhdCBh
IHVzZXIgY291bGQgY29uc2lkZXIgYSBkZWZhdWx0IHRhcmdldCBmcmFtZSBmb3IgYXBwbGljYXRp
b24gbWVudSBvcGVyYXRpb25zLgogCi0gICAgV2ViRnJhbWUqIG1haW5GcmFtZSA9IHBhZ2UtPm1h
aW5XZWJGcmFtZSgpOworICAgIFdlYkZyYW1lKiBtYWluRnJhbWUgPSBwYWdlLm1haW5XZWJGcmFt
ZSgpOwogICAgIGlmICghbWFpbkZyYW1lIHx8ICFtYWluRnJhbWUtPmlzRnJhbWVTZXQoKSkKLSAg
ICAgICAgcmV0dXJuIDA7CisgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgV2ViRnJhbWUq
IGxhcmdlc3RTb0ZhciA9IDA7CisgICAgV2ViRnJhbWUqIGxhcmdlc3RTb0ZhciA9IG51bGxwdHI7
CiAKICAgICBSZWY8QVBJOjpBcnJheT4gZnJhbWVDaGlsZHJlbiA9IG1haW5GcmFtZS0+Y2hpbGRG
cmFtZXMoKTsKICAgICBzaXplX3QgY291bnQgPSBmcmFtZUNoaWxkcmVuLT5zaXplKCk7CiAgICAg
Zm9yIChzaXplX3QgaSA9IDA7IGkgPCBjb3VudDsgKytpKSB7Ci0gICAgICAgIFdlYkZyYW1lKiBj
aGlsZEZyYW1lID0gZnJhbWVDaGlsZHJlbi0+YXQ8V2ViRnJhbWU+KGkpOworICAgICAgICBhdXRv
KiBjaGlsZEZyYW1lID0gZnJhbWVDaGlsZHJlbi0+YXQ8V2ViRnJhbWU+KGkpOwogICAgICAgICBp
ZiAoIWxhcmdlc3RTb0ZhciB8fCBhcmVhKGNoaWxkRnJhbWUpID4gYXJlYShsYXJnZXN0U29GYXIp
KQogICAgICAgICAgICAgbGFyZ2VzdFNvRmFyID0gY2hpbGRGcmFtZTsKICAgICB9CkBAIC0xMjQs
NiArMTI0LDE1IEBAIHN0YXRpYyBXZWJGcmFtZSogZmluZExhcmdlc3RGcmFtZUluRnJhbWVTZXQo
V2ViUGFnZSogcGFnZSkKICAgICByZXR1cm4gbGFyZ2VzdFNvRmFyOwogfQogCitXZWJDaHJvbWVD
bGllbnQ6OldlYkNocm9tZUNsaWVudChXZWJQYWdlJiBwYWdlKQorICAgIDogbV9wYWdlKHBhZ2Up
Cit7Cit9CisKK2lubGluZSBXZWJDaHJvbWVDbGllbnQ6On5XZWJDaHJvbWVDbGllbnQoKQorewor
fQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y2hyb21lRGVzdHJveWVkKCkKIHsKICAgICBkZWxl
dGUgdGhpczsKQEAgLTEzMSw3ICsxNDAsNyBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y2hyb21l
RGVzdHJveWVkKCkKIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNldFdpbmRvd1JlY3QoY29uc3Qg
RmxvYXRSZWN0JiB3aW5kb3dGcmFtZSkKIHsKLSAgICBtX3BhZ2UtPnNlbmRTZXRXaW5kb3dGcmFt
ZSh3aW5kb3dGcmFtZSk7CisgICAgbV9wYWdlLnNlbmRTZXRXaW5kb3dGcmFtZSh3aW5kb3dGcmFt
ZSk7CiB9CiAKIEZsb2F0UmVjdCBXZWJDaHJvbWVDbGllbnQ6OndpbmRvd1JlY3QoKQpAQCAtMTQw
LDEzICsxNDksMTMgQEAgRmxvYXRSZWN0IFdlYkNocm9tZUNsaWVudDo6d2luZG93UmVjdCgpCiAg
ICAgcmV0dXJuIEZsb2F0UmVjdCgpOwogI2Vsc2UKICNpZiBQTEFURk9STShNQUMpCi0gICAgaWYg
KG1fcGFnZS0+aGFzQ2FjaGVkV2luZG93RnJhbWUoKSkKLSAgICAgICAgcmV0dXJuIG1fcGFnZS0+
d2luZG93RnJhbWVJblVuZmxpcHBlZFNjcmVlbkNvb3JkaW5hdGVzKCk7CisgICAgaWYgKG1fcGFn
ZS5oYXNDYWNoZWRXaW5kb3dGcmFtZSgpKQorICAgICAgICByZXR1cm4gbV9wYWdlLndpbmRvd0Zy
YW1lSW5VbmZsaXBwZWRTY3JlZW5Db29yZGluYXRlcygpOwogI2VuZGlmCiAKICAgICBGbG9hdFJl
Y3QgbmV3V2luZG93RnJhbWU7CiAKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBh
cmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OkdldFdpbmRvd0ZyYW1lKCksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFdpbmRvd0ZyYW1l
OjpSZXBseShuZXdXaW5kb3dGcmFtZSksIG1fcGFnZS0+cGFnZUlEKCkpKQorICAgIGlmICghV2Vi
UHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMo
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0V2luZG93RnJhbWUoKSwgTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6R2V0V2luZG93RnJhbWU6OlJlcGx5KG5ld1dpbmRvd0ZyYW1lKSwgbV9wYWdlLnBh
Z2VJRCgpKSkKICAgICAgICAgcmV0dXJuIEZsb2F0UmVjdCgpOwogCiAgICAgcmV0dXJuIG5ld1dp
bmRvd0ZyYW1lOwpAQCAtMTU1LDMzICsxNjQsMzMgQEAgRmxvYXRSZWN0IFdlYkNocm9tZUNsaWVu
dDo6d2luZG93UmVjdCgpCiAKIEZsb2F0UmVjdCBXZWJDaHJvbWVDbGllbnQ6OnBhZ2VSZWN0KCkK
IHsKLSAgICByZXR1cm4gRmxvYXRSZWN0KEZsb2F0UG9pbnQoKSwgbV9wYWdlLT5zaXplKCkpOwor
ICAgIHJldHVybiBGbG9hdFJlY3QoRmxvYXRQb2ludCgpLCBtX3BhZ2Uuc2l6ZSgpKTsKIH0KIAog
dm9pZCBXZWJDaHJvbWVDbGllbnQ6OmZvY3VzKCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2Fn
ZXM6OldlYlBhZ2VQcm94eTo6U2V0Rm9jdXModHJ1ZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OlNldEZvY3VzKHRydWUpKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVD
bGllbnQ6OnVuZm9jdXMoKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpTZXRGb2N1cyhmYWxzZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OlNldEZvY3VzKGZhbHNlKSk7CiB9CiAKICNpZiBQTEFURk9STShDT0NPQSkKIHZvaWQg
V2ViQ2hyb21lQ2xpZW50OjplbGVtZW50RGlkRm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9kZSogbm9k
ZSkKIHsKLSAgICBtX3BhZ2UtPmVsZW1lbnREaWRGb2N1cyhjb25zdF9jYXN0PFdlYkNvcmU6Ok5v
ZGUqPihub2RlKSk7CisgICAgbV9wYWdlLmVsZW1lbnREaWRGb2N1cyhjb25zdF9jYXN0PFdlYkNv
cmU6Ok5vZGUqPihub2RlKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjplbGVtZW50RGlk
Qmx1cihjb25zdCBXZWJDb3JlOjpOb2RlKiBub2RlKQogewotICAgIG1fcGFnZS0+ZWxlbWVudERp
ZEJsdXIoY29uc3RfY2FzdDxXZWJDb3JlOjpOb2RlKj4obm9kZSkpOworICAgIG1fcGFnZS5lbGVt
ZW50RGlkQmx1cihjb25zdF9jYXN0PFdlYkNvcmU6Ok5vZGUqPihub2RlKSk7CiB9CiAKIHZvaWQg
V2ViQ2hyb21lQ2xpZW50OjptYWtlRmlyc3RSZXNwb25kZXIoKQogewotICAgIG1fcGFnZS0+c2Vu
ZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpNYWtlRmlyc3RSZXNwb25kZXIoKSk7CisgICAgbV9w
YWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6TWFrZUZpcnN0UmVzcG9uZGVyKCkpOwog
fSAgICAKICNlbmRpZiAgICAKIApAQCAtMTkzLDcgKzIwMiw3IEBAIGJvb2wgV2ViQ2hyb21lQ2xp
ZW50OjpjYW5UYWtlRm9jdXMoRm9jdXNEaXJlY3Rpb24pCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50
Ojp0YWtlRm9jdXMoRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9uKQogewotICAgIG1fcGFnZS0+c2Vu
ZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpUYWtlRm9jdXMoZGlyZWN0aW9uKSk7CisgICAgbV9w
YWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6VGFrZUZvY3VzKGRpcmVjdGlvbikpOwog
fQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6Zm9jdXNlZEVsZW1lbnRDaGFuZ2VkKEVsZW1lbnQq
IGVsZW1lbnQpCkBAIC0yMDcsMTQgKzIxNiwxNCBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6Zm9j
dXNlZEVsZW1lbnRDaGFuZ2VkKEVsZW1lbnQqIGVsZW1lbnQpCiAKICAgICBXZWJGcmFtZSogd2Vi
RnJhbWUgPSBXZWJGcmFtZTo6ZnJvbUNvcmVGcmFtZSgqZWxlbWVudC0+ZG9jdW1lbnQoKS5mcmFt
ZSgpKTsKICAgICBBU1NFUlQod2ViRnJhbWUpOwotICAgIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVG
b3JtQ2xpZW50KCkuZGlkRm9jdXNUZXh0RmllbGQobV9wYWdlLCAmaW5wdXRFbGVtZW50LCB3ZWJG
cmFtZSk7CisgICAgbV9wYWdlLmluamVjdGVkQnVuZGxlRm9ybUNsaWVudCgpLmRpZEZvY3VzVGV4
dEZpZWxkKCZtX3BhZ2UsICZpbnB1dEVsZW1lbnQsIHdlYkZyYW1lKTsKIH0KIAogdm9pZCBXZWJD
aHJvbWVDbGllbnQ6OmZvY3VzZWRGcmFtZUNoYW5nZWQoRnJhbWUqIGZyYW1lKQogewogICAgIFdl
YkZyYW1lKiB3ZWJGcmFtZSA9IGZyYW1lID8gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZyYW1l
KSA6IG51bGxwdHI7CiAKLSAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNz
Q29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZvY3VzZWRGcmFtZUNo
YW5nZWQod2ViRnJhbWUgPyB3ZWJGcmFtZS0+ZnJhbWVJRCgpIDogMCksIG1fcGFnZS0+cGFnZUlE
KCkpOworICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9u
KCktPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6Rm9jdXNlZEZyYW1lQ2hhbmdlZCh3ZWJG
cmFtZSA/IHdlYkZyYW1lLT5mcmFtZUlEKCkgOiAwKSwgbV9wYWdlLnBhZ2VJRCgpKTsKIH0KIAog
UGFnZSogV2ViQ2hyb21lQ2xpZW50OjpjcmVhdGVXaW5kb3coRnJhbWUqIGZyYW1lLCBjb25zdCBG
cmFtZUxvYWRSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBXaW5kb3dGZWF0dXJlcyYgd2luZG93RmVh
dHVyZXMsIGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIG5hdmlnYXRpb25BY3Rpb24pCkBAIC0yMzQs
MTMgKzI0MywxMyBAQCBQYWdlKiBXZWJDaHJvbWVDbGllbnQ6OmNyZWF0ZVdpbmRvdyhGcmFtZSog
ZnJhbWUsIGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmIHJlcXVlcwogICAgIG5hdmlnYXRpb25BY3Rp
b25EYXRhLm1vdXNlQnV0dG9uID0gSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uOjptb3Vz
ZUJ1dHRvbkZvck5hdmlnYXRpb25BY3Rpb24obmF2aWdhdGlvbkFjdGlvbik7CiAgICAgbmF2aWdh
dGlvbkFjdGlvbkRhdGEuc3ludGhldGljQ2xpY2tUeXBlID0gSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0
aW9uQWN0aW9uOjpzeW50aGV0aWNDbGlja1R5cGVGb3JOYXZpZ2F0aW9uQWN0aW9uKG5hdmlnYXRp
b25BY3Rpb24pOwogICAgIG5hdmlnYXRpb25BY3Rpb25EYXRhLnVzZXJHZXN0dXJlVG9rZW5JZGVu
dGlmaWVyID0gd2ViUHJvY2Vzcy51c2VyR2VzdHVyZVRva2VuSWRlbnRpZmllcihuYXZpZ2F0aW9u
QWN0aW9uLnVzZXJHZXN0dXJlVG9rZW4oKSk7Ci0gICAgbmF2aWdhdGlvbkFjdGlvbkRhdGEuY2Fu
SGFuZGxlUmVxdWVzdCA9IG1fcGFnZS0+Y2FuSGFuZGxlUmVxdWVzdChyZXF1ZXN0LnJlc291cmNl
UmVxdWVzdCgpKTsKKyAgICBuYXZpZ2F0aW9uQWN0aW9uRGF0YS5jYW5IYW5kbGVSZXF1ZXN0ID0g
bV9wYWdlLmNhbkhhbmRsZVJlcXVlc3QocmVxdWVzdC5yZXNvdXJjZVJlcXVlc3QoKSk7CiAgICAg
bmF2aWdhdGlvbkFjdGlvbkRhdGEuc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSA9IG5hdmln
YXRpb25BY3Rpb24uc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSgpOwogICAgIG5hdmlnYXRp
b25BY3Rpb25EYXRhLmRvd25sb2FkQXR0cmlidXRlID0gbmF2aWdhdGlvbkFjdGlvbi5kb3dubG9h
ZEF0dHJpYnV0ZSgpOwogCiAgICAgdWludDY0X3QgbmV3UGFnZUlEID0gMDsKICAgICBXZWJQYWdl
Q3JlYXRpb25QYXJhbWV0ZXJzIHBhcmFtZXRlcnM7Ci0gICAgaWYgKCF3ZWJQcm9jZXNzLnBhcmVu
dFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkNy
ZWF0ZU5ld1BhZ2Uod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9t
RnJhbWUoZnJhbWUpLCByZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLCB3aW5kb3dGZWF0dXJlcywg
bmF2aWdhdGlvbkFjdGlvbkRhdGEpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpDcmVhdGVOZXdQ
YWdlOjpSZXBseShuZXdQYWdlSUQsIHBhcmFtZXRlcnMpLCBtX3BhZ2UtPnBhZ2VJRCgpKSkKKyAg
ICBpZiAoIXdlYlByb2Nlc3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6Q3JlYXRlTmV3UGFnZSh3ZWJGcmFtZS0+ZnJhbWVJRCgpLCBT
ZWN1cml0eU9yaWdpbkRhdGE6OmZyb21GcmFtZShmcmFtZSksIHJlcXVlc3QucmVzb3VyY2VSZXF1
ZXN0KCksIHdpbmRvd0ZlYXR1cmVzLCBuYXZpZ2F0aW9uQWN0aW9uRGF0YSksIE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OkNyZWF0ZU5ld1BhZ2U6OlJlcGx5KG5ld1BhZ2VJRCwgcGFyYW1ldGVycyks
IG1fcGFnZS5wYWdlSUQoKSkpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCiAgICAgaWYgKCFu
ZXdQYWdlSUQpCkBAIC0yNTIsMzIgKzI2MSwzMiBAQCBQYWdlKiBXZWJDaHJvbWVDbGllbnQ6OmNy
ZWF0ZVdpbmRvdyhGcmFtZSogZnJhbWUsIGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmIHJlcXVlcwog
CiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2hvdygpCiB7Ci0gICAgbV9wYWdlLT5zaG93KCk7Cisg
ICAgbV9wYWdlLnNob3coKTsKIH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OmNhblJ1bk1vZGFs
KCkKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5jYW5SdW5Nb2RhbCgpOworICAgIHJldHVybiBtX3Bh
Z2UuY2FuUnVuTW9kYWwoKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJ1bk1vZGFsKCkK
IHsKLSAgICBtX3BhZ2UtPnJ1bk1vZGFsKCk7CisgICAgbV9wYWdlLnJ1bk1vZGFsKCk7CiB9CiAK
IHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRUb29sYmFyc1Zpc2libGUoYm9vbCB0b29sYmFyc0Fy
ZVZpc2libGUpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNl
dFRvb2xiYXJzQXJlVmlzaWJsZSh0b29sYmFyc0FyZVZpc2libGUpKTsKKyAgICBtX3BhZ2Uuc2Vu
ZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRUb29sYmFyc0FyZVZpc2libGUodG9vbGJhcnNB
cmVWaXNpYmxlKSk7CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50Ojp0b29sYmFyc1Zpc2libGUo
KQogewotICAgIEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VVSUNsaWVudDo6VUlFbGVtZW50Vmlz
aWJpbGl0eSB0b29sYmFyc1Zpc2liaWxpdHkgPSBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGll
bnQoKS50b29sYmFyc0FyZVZpc2libGUobV9wYWdlKTsKKyAgICBBUEk6OkluamVjdGVkQnVuZGxl
OjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHkgdG9vbGJhcnNWaXNpYmlsaXR5ID0g
bV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS50b29sYmFyc0FyZVZpc2libGUoJm1fcGFn
ZSk7CiAgICAgaWYgKHRvb2xiYXJzVmlzaWJpbGl0eSAhPSBBUEk6OkluamVjdGVkQnVuZGxlOjpQ
YWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHk6OlVua25vd24pCiAgICAgICAgIHJldHVy
biB0b29sYmFyc1Zpc2liaWxpdHkgPT0gQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50
OjpVSUVsZW1lbnRWaXNpYmlsaXR5OjpWaXNpYmxlOwogICAgIAogICAgIGJvb2wgdG9vbGJhcnNB
cmVWaXNpYmxlID0gdHJ1ZTsKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVu
dFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6Okdl
dFRvb2xiYXJzQXJlVmlzaWJsZSgpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRUb29sYmFy
c0FyZVZpc2libGU6OlJlcGx5KHRvb2xiYXJzQXJlVmlzaWJsZSksIG1fcGFnZS0+cGFnZUlEKCkp
KQorICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rp
b24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0VG9vbGJhcnNBcmVWaXNp
YmxlKCksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFRvb2xiYXJzQXJlVmlzaWJsZTo6UmVw
bHkodG9vbGJhcnNBcmVWaXNpYmxlKSwgbV9wYWdlLnBhZ2VJRCgpKSkKICAgICAgICAgcmV0dXJu
IHRydWU7CiAKICAgICByZXR1cm4gdG9vbGJhcnNBcmVWaXNpYmxlOwpAQCAtMjg1LDE3ICsyOTQs
MTcgQEAgYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnRvb2xiYXJzVmlzaWJsZSgpCiAKIHZvaWQgV2Vi
Q2hyb21lQ2xpZW50OjpzZXRTdGF0dXNiYXJWaXNpYmxlKGJvb2wgc3RhdHVzQmFySXNWaXNpYmxl
KQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRTdGF0dXNC
YXJJc1Zpc2libGUoc3RhdHVzQmFySXNWaXNpYmxlKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2Fn
ZXM6OldlYlBhZ2VQcm94eTo6U2V0U3RhdHVzQmFySXNWaXNpYmxlKHN0YXR1c0JhcklzVmlzaWJs
ZSkpOwogfQogCiBib29sIFdlYkNocm9tZUNsaWVudDo6c3RhdHVzYmFyVmlzaWJsZSgpCiB7Ci0g
ICAgQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5
IHN0YXR1c2JhclZpc2liaWxpdHkgPSBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5z
dGF0dXNCYXJJc1Zpc2libGUobV9wYWdlKTsKKyAgICBBUEk6OkluamVjdGVkQnVuZGxlOjpQYWdl
VUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHkgc3RhdHVzYmFyVmlzaWJpbGl0eSA9IG1fcGFn
ZS5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkuc3RhdHVzQmFySXNWaXNpYmxlKCZtX3BhZ2UpOwog
ICAgIGlmIChzdGF0dXNiYXJWaXNpYmlsaXR5ICE9IEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VV
SUNsaWVudDo6VUlFbGVtZW50VmlzaWJpbGl0eTo6VW5rbm93bikKICAgICAgICAgcmV0dXJuIHN0
YXR1c2JhclZpc2liaWxpdHkgPT0gQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpV
SUVsZW1lbnRWaXNpYmlsaXR5OjpWaXNpYmxlOwogCiAgICAgYm9vbCBzdGF0dXNCYXJJc1Zpc2li
bGUgPSB0cnVlOwotICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vz
c0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0U3RhdHVz
QmFySXNWaXNpYmxlKCksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFN0YXR1c0JhcklzVmlz
aWJsZTo6UmVwbHkoc3RhdHVzQmFySXNWaXNpYmxlKSwgbV9wYWdlLT5wYWdlSUQoKSkpCisgICAg
aWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5z
ZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRTdGF0dXNCYXJJc1Zpc2libGUoKSwg
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0U3RhdHVzQmFySXNWaXNpYmxlOjpSZXBseShzdGF0
dXNCYXJJc1Zpc2libGUpLCBtX3BhZ2UucGFnZUlEKCkpKQogICAgICAgICByZXR1cm4gdHJ1ZTsK
IAogICAgIHJldHVybiBzdGF0dXNCYXJJc1Zpc2libGU7CkBAIC0zMTQsMTcgKzMyMywxNyBAQCBi
b29sIFdlYkNocm9tZUNsaWVudDo6c2Nyb2xsYmFyc1Zpc2libGUoKQogCiB2b2lkIFdlYkNocm9t
ZUNsaWVudDo6c2V0TWVudWJhclZpc2libGUoYm9vbCBtZW51QmFyVmlzaWJsZSkKIHsKLSAgICBt
X3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0TWVudUJhcklzVmlzaWJsZSht
ZW51QmFyVmlzaWJsZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OlNldE1lbnVCYXJJc1Zpc2libGUobWVudUJhclZpc2libGUpKTsKIH0KIAogYm9vbCBXZWJDaHJv
bWVDbGllbnQ6Om1lbnViYXJWaXNpYmxlKCkKIHsKLSAgICBBUEk6OkluamVjdGVkQnVuZGxlOjpQ
YWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHkgbWVudWJhclZpc2liaWxpdHkgPSBtX3Bh
Z2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5tZW51QmFySXNWaXNpYmxlKG1fcGFnZSk7Cisg
ICAgQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5
IG1lbnViYXJWaXNpYmlsaXR5ID0gbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5tZW51
QmFySXNWaXNpYmxlKCZtX3BhZ2UpOwogICAgIGlmIChtZW51YmFyVmlzaWJpbGl0eSAhPSBBUEk6
OkluamVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHk6OlVua25v
d24pCiAgICAgICAgIHJldHVybiBtZW51YmFyVmlzaWJpbGl0eSA9PSBBUEk6OkluamVjdGVkQnVu
ZGxlOjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHk6OlZpc2libGU7CiAgICAgCiAg
ICAgYm9vbCBtZW51QmFySXNWaXNpYmxlID0gdHJ1ZTsKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNp
bmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OkdldE1lbnVCYXJJc1Zpc2libGUoKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94
eTo6R2V0TWVudUJhcklzVmlzaWJsZTo6UmVwbHkobWVudUJhcklzVmlzaWJsZSksIG1fcGFnZS0+
cGFnZUlEKCkpKQorICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vz
c0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0TWVudUJh
cklzVmlzaWJsZSgpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRNZW51QmFySXNWaXNpYmxl
OjpSZXBseShtZW51QmFySXNWaXNpYmxlKSwgbV9wYWdlLnBhZ2VJRCgpKSkKICAgICAgICAgcmV0
dXJuIHRydWU7CiAKICAgICByZXR1cm4gbWVudUJhcklzVmlzaWJsZTsKQEAgLTMzMiwxOCArMzQx
LDE4IEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjptZW51YmFyVmlzaWJsZSgpCiAKIHZvaWQgV2Vi
Q2hyb21lQ2xpZW50OjpzZXRSZXNpemFibGUoYm9vbCByZXNpemFibGUpCiB7Ci0gICAgbV9wYWdl
LT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldElzUmVzaXphYmxlKHJlc2l6YWJsZSkp
OworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldElzUmVzaXphYmxl
KHJlc2l6YWJsZSkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6YWRkTWVzc2FnZVRvQ29u
c29sZShNZXNzYWdlU291cmNlIHNvdXJjZSwgTWVzc2FnZUxldmVsIGxldmVsLCBjb25zdCBTdHJp
bmcmIG1lc3NhZ2UsIHVuc2lnbmVkIGxpbmVOdW1iZXIsIHVuc2lnbmVkIGNvbHVtbk51bWJlciwg
Y29uc3QgU3RyaW5nJiBzb3VyY2VJRCkKIHsKICAgICAvLyBOb3RpZnkgdGhlIGJ1bmRsZSBjbGll
bnQuCi0gICAgbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkud2lsbEFkZE1lc3NhZ2VU
b0NvbnNvbGUobV9wYWdlLCBzb3VyY2UsIGxldmVsLCBtZXNzYWdlLCBsaW5lTnVtYmVyLCBjb2x1
bW5OdW1iZXIsIHNvdXJjZUlEKTsKKyAgICBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgp
LndpbGxBZGRNZXNzYWdlVG9Db25zb2xlKCZtX3BhZ2UsIHNvdXJjZSwgbGV2ZWwsIG1lc3NhZ2Us
IGxpbmVOdW1iZXIsIGNvbHVtbk51bWJlciwgc291cmNlSUQpOwogfQogCiBib29sIFdlYkNocm9t
ZUNsaWVudDo6Y2FuUnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsKCkKIHsKLSAgICByZXR1cm4g
bV9wYWdlLT5jYW5SdW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoKTsKKyAgICByZXR1cm4gbV9w
YWdlLmNhblJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbCgpOwogfQogCiBib29sIFdlYkNocm9t
ZUNsaWVudDo6cnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsKGNvbnN0IFN0cmluZyYgbWVzc2Fn
ZSwgRnJhbWUqIGZyYW1lKQpAQCAtMzU0LDcgKzM2Myw3IEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50
OjpydW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBGcmFt
ZSoKIAogICAgIEhhbmdEZXRlY3Rpb25EaXNhYmxlciBoYW5nRGV0ZWN0aW9uRGlzYWJsZXI7CiAK
LSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9u
KCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJ1bkJlZm9yZVVubG9hZENvbmZp
cm1QYW5lbChtZXNzYWdlLCB3ZWJGcmFtZS0+ZnJhbWVJRCgpKSwgTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6UnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsOjpSZXBseShzaG91bGRDbG9zZSksIG1f
cGFnZS0+cGFnZUlEKCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246
OkluZm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKSkKKyAgICBpZiAoIVdlYlByb2Nlc3M6
OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6OlJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbChtZXNzYWdlLCB3ZWJG
cmFtZS0+ZnJhbWVJRCgpKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuQmVmb3JlVW5sb2Fk
Q29uZmlybVBhbmVsOjpSZXBseShzaG91bGRDbG9zZSksIG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25k
czo6aW5maW5pdHkoKSwgSVBDOjpTZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNz
V2lsbFN1c3BlbmQpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICByZXR1cm4gc2hvdWxk
Q2xvc2U7CkBAIC0zNjksMTQgKzM3OCwxNCBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y2xvc2VX
aW5kb3dTb29uKCkKICAgICAvLyBhIGNsb3NlIGV4ZWN1dGUgc3luY2hyb25vdXNseSBhcyBwYXJ0
IG9mIHdpbmRvdy5jbG9zZSwgYnV0IG90aGVyIHBhcnRzCiAgICAgLy8gbGF0ZXIgb24uCiAKLSAg
ICBtX3BhZ2UtPmNvcmVQYWdlKCktPnNldEdyb3VwTmFtZShTdHJpbmcoKSk7CisgICAgbV9wYWdl
LmNvcmVQYWdlKCktPnNldEdyb3VwTmFtZShTdHJpbmcoKSk7CiAKLSAgICBpZiAoV2ViRnJhbWUq
IGZyYW1lID0gbV9wYWdlLT5tYWluV2ViRnJhbWUoKSkgeworICAgIGlmIChXZWJGcmFtZSogZnJh
bWUgPSBtX3BhZ2UubWFpbldlYkZyYW1lKCkpIHsKICAgICAgICAgaWYgKEZyYW1lKiBjb3JlRnJh
bWUgPSBmcmFtZS0+Y29yZUZyYW1lKCkpCiAgICAgICAgICAgICBjb3JlRnJhbWUtPmxvYWRlcigp
LnN0b3BGb3JVc2VyQ2FuY2VsKCk7CiAgICAgfQogCi0gICAgbV9wYWdlLT5zZW5kQ2xvc2UoKTsK
KyAgICBtX3BhZ2Uuc2VuZENsb3NlKCk7CiB9CiAKIHN0YXRpYyBib29sIHNob3VsZFN1cHByZXNz
SmF2YVNjcmlwdERpYWxvZ3MoRnJhbWUmIGZyYW1lKQpAQCAtMzk2LDExICs0MDUsMTEgQEAgdm9p
ZCBXZWJDaHJvbWVDbGllbnQ6OnJ1bkphdmFTY3JpcHRBbGVydChGcmFtZSogZnJhbWUsIGNvbnN0
IFN0cmluZyYgYWxlcnRUZXh0KQogICAgIEFTU0VSVCh3ZWJGcmFtZSk7CiAKICAgICAvLyBOb3Rp
ZnkgdGhlIGJ1bmRsZSBjbGllbnQuCi0gICAgbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50
KCkud2lsbFJ1bkphdmFTY3JpcHRBbGVydChtX3BhZ2UsIGFsZXJ0VGV4dCwgd2ViRnJhbWUpOwor
ICAgIG1fcGFnZS5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkud2lsbFJ1bkphdmFTY3JpcHRBbGVy
dCgmbV9wYWdlLCBhbGVydFRleHQsIHdlYkZyYW1lKTsKIAogICAgIEhhbmdEZXRlY3Rpb25EaXNh
YmxlciBoYW5nRGV0ZWN0aW9uRGlzYWJsZXI7CiAKLSAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24o
KS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpSdW5KYXZhU2NyaXB0QWxlcnQod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmln
aW5EYXRhOjpmcm9tRnJhbWUoZnJhbWUpLCBhbGVydFRleHQpLCBNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpSdW5KYXZhU2NyaXB0QWxlcnQ6OlJlcGx5KCksIG1fcGFnZS0+cGFnZUlEKCksIFNlY29u
ZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246OkluZm9ybVBsYXRmb3JtUHJvY2Vz
c1dpbGxTdXNwZW5kKTsKKyAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNz
Q29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2Ny
aXB0QWxlcnQod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tRnJh
bWUoZnJhbWUpLCBhbGVydFRleHQpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2Ny
aXB0QWxlcnQ6OlJlcGx5KCksIG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwg
SVBDOjpTZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpOwog
fQogCiBib29sIFdlYkNocm9tZUNsaWVudDo6cnVuSmF2YVNjcmlwdENvbmZpcm0oRnJhbWUqIGZy
YW1lLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UpCkBAIC00MTIsMTIgKzQyMSwxMiBAQCBib29sIFdl
YkNocm9tZUNsaWVudDo6cnVuSmF2YVNjcmlwdENvbmZpcm0oRnJhbWUqIGZyYW1lLCBjb25zdCBT
dHJpbmcmIG1lc3NhZ2UpCiAgICAgQVNTRVJUKHdlYkZyYW1lKTsKIAogICAgIC8vIE5vdGlmeSB0
aGUgYnVuZGxlIGNsaWVudC4KLSAgICBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS53
aWxsUnVuSmF2YVNjcmlwdENvbmZpcm0obV9wYWdlLCBtZXNzYWdlLCB3ZWJGcmFtZSk7CisgICAg
bV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS53aWxsUnVuSmF2YVNjcmlwdENvbmZpcm0o
Jm1fcGFnZSwgbWVzc2FnZSwgd2ViRnJhbWUpOwogCiAgICAgSGFuZ0RldGVjdGlvbkRpc2FibGVy
IGhhbmdEZXRlY3Rpb25EaXNhYmxlcjsKIAogICAgIGJvb2wgcmVzdWx0ID0gZmFsc2U7Ci0gICAg
aWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5z
ZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2NyaXB0Q29uZmlybSh3ZWJG
cmFtZS0+ZnJhbWVJRCgpLCBTZWN1cml0eU9yaWdpbkRhdGE6OmZyb21GcmFtZShmcmFtZSksIG1l
c3NhZ2UpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2NyaXB0Q29uZmlybTo6UmVw
bHkocmVzdWx0KSwgbV9wYWdlLT5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBDOjpT
ZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpKQorICAgIGlm
ICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2Vu
ZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdENvbmZpcm0od2ViRnJh
bWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tRnJhbWUoZnJhbWUpLCBtZXNz
YWdlKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdENvbmZpcm06OlJlcGx5
KHJlc3VsdCksIG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBDOjpTZW5k
U3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpKQogICAgICAgICBy
ZXR1cm4gZmFsc2U7CiAKICAgICByZXR1cm4gcmVzdWx0OwpAQCAtNDMyLDExICs0NDEsMTEgQEAg
Ym9vbCBXZWJDaHJvbWVDbGllbnQ6OnJ1bkphdmFTY3JpcHRQcm9tcHQoRnJhbWUqIGZyYW1lLCBj
b25zdCBTdHJpbmcmIG1lc3NhZ2UsIGMKICAgICBBU1NFUlQod2ViRnJhbWUpOwogCiAgICAgLy8g
Tm90aWZ5IHRoZSBidW5kbGUgY2xpZW50LgotICAgIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVVSUNs
aWVudCgpLndpbGxSdW5KYXZhU2NyaXB0UHJvbXB0KG1fcGFnZSwgbWVzc2FnZSwgZGVmYXVsdFZh
bHVlLCB3ZWJGcmFtZSk7CisgICAgbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS53aWxs
UnVuSmF2YVNjcmlwdFByb21wdCgmbV9wYWdlLCBtZXNzYWdlLCBkZWZhdWx0VmFsdWUsIHdlYkZy
YW1lKTsKIAogICAgIEhhbmdEZXRlY3Rpb25EaXNhYmxlciBoYW5nRGV0ZWN0aW9uRGlzYWJsZXI7
CiAKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0
aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJ1bkphdmFTY3JpcHRQcm9t
cHQod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tRnJhbWUoZnJh
bWUpLCBtZXNzYWdlLCBkZWZhdWx0VmFsdWUpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5K
YXZhU2NyaXB0UHJvbXB0OjpSZXBseShyZXN1bHQpLCBtX3BhZ2UtPnBhZ2VJRCgpLCBTZWNvbmRz
OjppbmZpbml0eSgpLCBJUEM6OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0Zm9ybVByb2Nlc3NX
aWxsU3VzcGVuZCkpCisgICAgaWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9j
ZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZh
U2NyaXB0UHJvbXB0KHdlYkZyYW1lLT5mcmFtZUlEKCksIFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJv
bUZyYW1lKGZyYW1lKSwgbWVzc2FnZSwgZGVmYXVsdFZhbHVlKSwgTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6UnVuSmF2YVNjcmlwdFByb21wdDo6UmVwbHkocmVzdWx0KSwgbV9wYWdlLnBhZ2VJRCgp
LCBTZWNvbmRzOjppbmZpbml0eSgpLCBJUEM6OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0Zm9y
bVByb2Nlc3NXaWxsU3VzcGVuZCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIHJldHVy
biAhcmVzdWx0LmlzTnVsbCgpOwpAQCAtNDQ1LDI3ICs0NTQsMjkgQEAgYm9vbCBXZWJDaHJvbWVD
bGllbnQ6OnJ1bkphdmFTY3JpcHRQcm9tcHQoRnJhbWUqIGZyYW1lLCBjb25zdCBTdHJpbmcmIG1l
c3NhZ2UsIGMKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRTdGF0dXNiYXJUZXh0KGNvbnN0IFN0
cmluZyYgc3RhdHVzYmFyVGV4dCkKIHsKICAgICAvLyBOb3RpZnkgdGhlIGJ1bmRsZSBjbGllbnQu
Ci0gICAgbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkud2lsbFNldFN0YXR1c2JhclRl
eHQobV9wYWdlLCBzdGF0dXNiYXJUZXh0KTsKKyAgICBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNs
aWVudCgpLndpbGxTZXRTdGF0dXNiYXJUZXh0KCZtX3BhZ2UsIHN0YXR1c2JhclRleHQpOwogCi0g
ICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldFN0YXR1c1RleHQoc3Rh
dHVzYmFyVGV4dCkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNl
dFN0YXR1c1RleHQoc3RhdHVzYmFyVGV4dCkpOwogfQogCiBLZXlib2FyZFVJTW9kZSBXZWJDaHJv
bWVDbGllbnQ6OmtleWJvYXJkVUlNb2RlKCkKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5rZXlib2Fy
ZFVJTW9kZSgpOworICAgIHJldHVybiBtX3BhZ2Uua2V5Ym9hcmRVSU1vZGUoKTsKIH0KIAogI2lm
IEVOQUJMRShQT0lOVEVSX0xPQ0spCisKIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpyZXF1ZXN0UG9p
bnRlckxvY2soKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpS
ZXF1ZXN0UG9pbnRlckxvY2soKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6UmVxdWVzdFBvaW50ZXJMb2NrKCkpOwogICAgIHJldHVybiB0cnVlOwogfQogCiB2b2lk
IFdlYkNocm9tZUNsaWVudDo6cmVxdWVzdFBvaW50ZXJVbmxvY2soKQogewotICAgIG1fcGFnZS0+
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZXF1ZXN0UG9pbnRlclVubG9jaygpKTsKKyAg
ICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZXF1ZXN0UG9pbnRlclVubG9j
aygpKTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjppbnZhbGlkYXRlUm9v
dFZpZXcoY29uc3QgSW50UmVjdCYpCkBAIC00NzUsNjEgKzQ4Niw2MSBAQCB2b2lkIFdlYkNocm9t
ZUNsaWVudDo6aW52YWxpZGF0ZVJvb3RWaWV3KGNvbnN0IEludFJlY3QmKQogCiB2b2lkIFdlYkNo
cm9tZUNsaWVudDo6aW52YWxpZGF0ZUNvbnRlbnRzQW5kUm9vdFZpZXcoY29uc3QgSW50UmVjdCYg
cmVjdCkKIHsKLSAgICBpZiAoRG9jdW1lbnQqIGRvY3VtZW50ID0gbV9wYWdlLT5jb3JlUGFnZSgp
LT5tYWluRnJhbWUoKS5kb2N1bWVudCgpKSB7CisgICAgaWYgKERvY3VtZW50KiBkb2N1bWVudCA9
IG1fcGFnZS5jb3JlUGFnZSgpLT5tYWluRnJhbWUoKS5kb2N1bWVudCgpKSB7CiAgICAgICAgIGlm
IChkb2N1bWVudC0+cHJpbnRpbmcoKSkKICAgICAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAg
ICBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPnNldE5lZWRzRGlzcGxheUluUmVjdChyZWN0KTsKKyAg
ICBtX3BhZ2UuZHJhd2luZ0FyZWEoKS0+c2V0TmVlZHNEaXNwbGF5SW5SZWN0KHJlY3QpOwogfQog
CiB2b2lkIFdlYkNocm9tZUNsaWVudDo6aW52YWxpZGF0ZUNvbnRlbnRzRm9yU2xvd1Njcm9sbChj
b25zdCBJbnRSZWN0JiByZWN0KQogewotICAgIGlmIChEb2N1bWVudCogZG9jdW1lbnQgPSBtX3Bh
Z2UtPmNvcmVQYWdlKCktPm1haW5GcmFtZSgpLmRvY3VtZW50KCkpIHsKKyAgICBpZiAoRG9jdW1l
bnQqIGRvY3VtZW50ID0gbV9wYWdlLmNvcmVQYWdlKCktPm1haW5GcmFtZSgpLmRvY3VtZW50KCkp
IHsKICAgICAgICAgaWYgKGRvY3VtZW50LT5wcmludGluZygpKQogICAgICAgICAgICAgcmV0dXJu
OwogICAgIH0KIAotICAgIG1fcGFnZS0+cGFnZURpZFNjcm9sbCgpOworICAgIG1fcGFnZS5wYWdl
RGlkU2Nyb2xsKCk7CiAjaWYgVVNFKENPT1JESU5BVEVEX0dSQVBISUNTKQotICAgIG1fcGFnZS0+
ZHJhd2luZ0FyZWEoKS0+c2Nyb2xsKHJlY3QsIEludFNpemUoKSk7CisgICAgbV9wYWdlLmRyYXdp
bmdBcmVhKCktPnNjcm9sbChyZWN0LCBJbnRTaXplKCkpOwogI2Vsc2UKLSAgICBtX3BhZ2UtPmRy
YXdpbmdBcmVhKCktPnNldE5lZWRzRGlzcGxheUluUmVjdChyZWN0KTsKKyAgICBtX3BhZ2UuZHJh
d2luZ0FyZWEoKS0+c2V0TmVlZHNEaXNwbGF5SW5SZWN0KHJlY3QpOwogI2VuZGlmCiB9CiAKIHZv
aWQgV2ViQ2hyb21lQ2xpZW50OjpzY3JvbGwoY29uc3QgSW50U2l6ZSYgc2Nyb2xsRGVsdGEsIGNv
bnN0IEludFJlY3QmIHNjcm9sbFJlY3QsIGNvbnN0IEludFJlY3QmIGNsaXBSZWN0KQogewotICAg
IG1fcGFnZS0+cGFnZURpZFNjcm9sbCgpOwotICAgIG1fcGFnZS0+ZHJhd2luZ0FyZWEoKS0+c2Ny
b2xsKGludGVyc2VjdGlvbihzY3JvbGxSZWN0LCBjbGlwUmVjdCksIHNjcm9sbERlbHRhKTsKKyAg
ICBtX3BhZ2UucGFnZURpZFNjcm9sbCgpOworICAgIG1fcGFnZS5kcmF3aW5nQXJlYSgpLT5zY3Jv
bGwoaW50ZXJzZWN0aW9uKHNjcm9sbFJlY3QsIGNsaXBSZWN0KSwgc2Nyb2xsRGVsdGEpOwogfQog
CiAjaWYgVVNFKENPT1JESU5BVEVEX0dSQVBISUNTKQogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmRl
bGVnYXRlZFNjcm9sbFJlcXVlc3RlZChjb25zdCBJbnRQb2ludCYgc2Nyb2xsT2Zmc2V0KQogewot
ICAgIG1fcGFnZS0+cGFnZURpZFJlcXVlc3RTY3JvbGwoc2Nyb2xsT2Zmc2V0KTsKKyAgICBtX3Bh
Z2UucGFnZURpZFJlcXVlc3RTY3JvbGwoc2Nyb2xsT2Zmc2V0KTsKIH0KICNlbmRpZgogCiBJbnRQ
b2ludCBXZWJDaHJvbWVDbGllbnQ6OnNjcmVlblRvUm9vdFZpZXcoY29uc3QgSW50UG9pbnQmIHBv
aW50KSBjb25zdAogewotICAgIHJldHVybiBtX3BhZ2UtPnNjcmVlblRvUm9vdFZpZXcocG9pbnQp
OworICAgIHJldHVybiBtX3BhZ2Uuc2NyZWVuVG9Sb290Vmlldyhwb2ludCk7CiB9CiAKIEludFJl
Y3QgV2ViQ2hyb21lQ2xpZW50Ojpyb290Vmlld1RvU2NyZWVuKGNvbnN0IEludFJlY3QmIHJlY3Qp
IGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+cm9vdFZpZXdUb1NjcmVlbihyZWN0KTsKKyAg
ICByZXR1cm4gbV9wYWdlLnJvb3RWaWV3VG9TY3JlZW4ocmVjdCk7CiB9CiAgICAgCiAjaWYgUExB
VEZPUk0oSU9TKQogSW50UG9pbnQgV2ViQ2hyb21lQ2xpZW50OjphY2Nlc3NpYmlsaXR5U2NyZWVu
VG9Sb290Vmlldyhjb25zdCBJbnRQb2ludCYgcG9pbnQpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1f
cGFnZS0+YWNjZXNzaWJpbGl0eVNjcmVlblRvUm9vdFZpZXcocG9pbnQpOworICAgIHJldHVybiBt
X3BhZ2UuYWNjZXNzaWJpbGl0eVNjcmVlblRvUm9vdFZpZXcocG9pbnQpOwogfQogCiBJbnRSZWN0
IFdlYkNocm9tZUNsaWVudDo6cm9vdFZpZXdUb0FjY2Vzc2liaWxpdHlTY3JlZW4oY29uc3QgSW50
UmVjdCYgcmVjdCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5yb290Vmlld1RvQWNjZXNz
aWJpbGl0eVNjcmVlbihyZWN0KTsKKyAgICByZXR1cm4gbV9wYWdlLnJvb3RWaWV3VG9BY2Nlc3Np
YmlsaXR5U2NyZWVuKHJlY3QpOwogfQogI2VuZGlmCiAKQEAgLTU0MSwyMCArNTUyLDIwIEBAIFBs
YXRmb3JtUGFnZUNsaWVudCBXZWJDaHJvbWVDbGllbnQ6OnBsYXRmb3JtUGFnZUNsaWVudCgpIGNv
bnN0CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpjb250ZW50c1NpemVDaGFuZ2VkKEZyYW1lKiBm
cmFtZSwgY29uc3QgSW50U2l6ZSYgc2l6ZSkgY29uc3QKIHsKLSAgICBpZiAoIW1fcGFnZS0+Y29y
ZVBhZ2UoKS0+c2V0dGluZ3MoKS5mcmFtZUZsYXR0ZW5pbmdFbmFibGVkKCkpIHsKKyAgICBpZiAo
IW1fcGFnZS5jb3JlUGFnZSgpLT5zZXR0aW5ncygpLmZyYW1lRmxhdHRlbmluZ0VuYWJsZWQoKSkg
ewogICAgICAgICBXZWJGcmFtZSogbGFyZ2VzdEZyYW1lID0gZmluZExhcmdlc3RGcmFtZUluRnJh
bWVTZXQobV9wYWdlKTsKICAgICAgICAgaWYgKGxhcmdlc3RGcmFtZSAhPSBtX2NhY2hlZEZyYW1l
U2V0TGFyZ2VzdEZyYW1lLmdldCgpKSB7CiAgICAgICAgICAgICBtX2NhY2hlZEZyYW1lU2V0TGFy
Z2VzdEZyYW1lID0gbGFyZ2VzdEZyYW1lOwotICAgICAgICAgICAgbV9wYWdlLT5zZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OkZyYW1lU2V0TGFyZ2VzdEZyYW1lQ2hhbmdlZChsYXJnZXN0RnJh
bWUgPyBsYXJnZXN0RnJhbWUtPmZyYW1lSUQoKSA6IDApKTsKKyAgICAgICAgICAgIG1fcGFnZS5z
ZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZyYW1lU2V0TGFyZ2VzdEZyYW1lQ2hhbmdlZChs
YXJnZXN0RnJhbWUgPyBsYXJnZXN0RnJhbWUtPmZyYW1lSUQoKSA6IDApKTsKICAgICAgICAgfQog
ICAgIH0KIAogICAgIGlmICgmZnJhbWUtPnBhZ2UoKS0+bWFpbkZyYW1lKCkgIT0gZnJhbWUpCiAg
ICAgICAgIHJldHVybjsKIAotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjpEaWRDaGFuZ2VDb250ZW50U2l6ZShzaXplKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6RGlkQ2hhbmdlQ29udGVudFNpemUoc2l6ZSkpOwogCi0gICAgbV9wYWdl
LT5kcmF3aW5nQXJlYSgpLT5tYWluRnJhbWVDb250ZW50U2l6ZUNoYW5nZWQoc2l6ZSk7CisgICAg
bV9wYWdlLmRyYXdpbmdBcmVhKCktPm1haW5GcmFtZUNvbnRlbnRTaXplQ2hhbmdlZChzaXplKTsK
IAogICAgIEZyYW1lVmlldyogZnJhbWVWaWV3ID0gZnJhbWUtPnZpZXcoKTsKICAgICBpZiAoZnJh
bWVWaWV3ICYmICFmcmFtZVZpZXctPmRlbGVnYXRlc1Njcm9sbGluZygpKSAgewpAQCAtNTYyLDcg
KzU3Myw3IEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpjb250ZW50c1NpemVDaGFuZ2VkKEZyYW1l
KiBmcmFtZSwgY29uc3QgSW50U2l6ZSYgc2l6ZSkgY29uCiAgICAgICAgIGJvb2wgaGFzVmVydGlj
YWxTY3JvbGxiYXIgPSBmcmFtZVZpZXctPnZlcnRpY2FsU2Nyb2xsYmFyKCk7CiAKICAgICAgICAg
aWYgKGhhc0hvcml6b250YWxTY3JvbGxiYXIgIT0gbV9jYWNoZWRNYWluRnJhbWVIYXNIb3Jpem9u
dGFsU2Nyb2xsYmFyIHx8IGhhc1ZlcnRpY2FsU2Nyb2xsYmFyICE9IG1fY2FjaGVkTWFpbkZyYW1l
SGFzVmVydGljYWxTY3JvbGxiYXIpIHsKLSAgICAgICAgICAgIG1fcGFnZS0+c2VuZChNZXNzYWdl
czo6V2ViUGFnZVByb3h5OjpEaWRDaGFuZ2VTY3JvbGxiYXJzRm9yTWFpbkZyYW1lKGhhc0hvcml6
b250YWxTY3JvbGxiYXIsIGhhc1ZlcnRpY2FsU2Nyb2xsYmFyKSk7CisgICAgICAgICAgICBtX3Bh
Z2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRDaGFuZ2VTY3JvbGxiYXJzRm9yTWFp
bkZyYW1lKGhhc0hvcml6b250YWxTY3JvbGxiYXIsIGhhc1ZlcnRpY2FsU2Nyb2xsYmFyKSk7CiAK
ICAgICAgICAgICAgIG1fY2FjaGVkTWFpbkZyYW1lSGFzSG9yaXpvbnRhbFNjcm9sbGJhciA9IGhh
c0hvcml6b250YWxTY3JvbGxiYXI7CiAgICAgICAgICAgICBtX2NhY2hlZE1haW5GcmFtZUhhc1Zl
cnRpY2FsU2Nyb2xsYmFyID0gaGFzVmVydGljYWxTY3JvbGxiYXI7CkBAIC02MDMsMTIgKzYxNCwx
MiBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6dW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2Vk
KEVsZW1lbnQqIGVsZW1lbnQsIFJlbmRlckVtYgogICAgIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQq
IHBsdWdpbkVsZW1lbnQgPSBzdGF0aWNfY2FzdDxIVE1MUGx1Z0luSW1hZ2VFbGVtZW50Kj4oZWxl
bWVudCk7CiAKICAgICBTdHJpbmcgZnJhbWVVUkxTdHJpbmcgPSBwbHVnaW5FbGVtZW50LT5kb2N1
bWVudCgpLmZyYW1lKCktPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCktPnJlc3BvbnNlVVJMKCku
c3RyaW5nKCk7Ci0gICAgU3RyaW5nIHBhZ2VVUkxTdHJpbmcgPSBtX3BhZ2UtPm1haW5GcmFtZSgp
LT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOworICAg
IFN0cmluZyBwYWdlVVJMU3RyaW5nID0gbV9wYWdlLm1haW5GcmFtZSgpLT5sb2FkZXIoKS5kb2N1
bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwogICAgIFN0cmluZyBwbHVnaW5V
UkxTdHJpbmcgPSBwbHVnaW5FbGVtZW50LT5kb2N1bWVudCgpLmNvbXBsZXRlVVJMKHBsdWdpbkVs
ZW1lbnQtPnVybCgpKS5zdHJpbmcoKTsKICAgICBVUkwgcGx1Z2luc3BhZ2VBdHRyaWJ1dGVVUkwg
PSBlbGVtZW50LT5kb2N1bWVudCgpLmNvbXBsZXRlVVJMKHN0cmlwTGVhZGluZ0FuZFRyYWlsaW5n
SFRNTFNwYWNlcyhwbHVnaW5FbGVtZW50LT5nZXRBdHRyaWJ1dGUocGx1Z2luc3BhZ2VBdHRyKSkp
OwogICAgIGlmICghcGx1Z2luc3BhZ2VBdHRyaWJ1dGVVUkwucHJvdG9jb2xJc0luSFRUUEZhbWls
eSgpKQogICAgICAgICBwbHVnaW5zcGFnZUF0dHJpYnV0ZVVSTCA9IFVSTCgpOwotICAgIG1fcGFn
ZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpVbmF2YWlsYWJsZVBsdWdpbkJ1dHRvbkNs
aWNrZWQocGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24sIHBsdWdpbkVsZW1lbnQtPnNlcnZpY2VU
eXBlKCksIHBsdWdpblVSTFN0cmluZywgcGx1Z2luc3BhZ2VBdHRyaWJ1dGVVUkwuc3RyaW5nKCks
IGZyYW1lVVJMU3RyaW5nLCBwYWdlVVJMU3RyaW5nKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2Fn
ZXM6OldlYlBhZ2VQcm94eTo6VW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2VkKHBsdWdpblVu
YXZhaWxhYmlsaXR5UmVhc29uLCBwbHVnaW5FbGVtZW50LT5zZXJ2aWNlVHlwZSgpLCBwbHVnaW5V
UkxTdHJpbmcsIHBsdWdpbnNwYWdlQXR0cmlidXRlVVJMLnN0cmluZygpLCBmcmFtZVVSTFN0cmlu
ZywgcGFnZVVSTFN0cmluZykpOwogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0oZWxlbWVudCk7CiAg
ICAgVU5VU0VEX1BBUkFNKHBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKTsKQEAgLTYyNSwxMSAr
NjM2LDExIEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojptb3VzZURpZE1vdmVPdmVyRWxlbWVudChj
b25zdCBIaXRUZXN0UmVzdWx0JiBoaXRUZXN0UmVzdWx0CiAgICAgUmVmUHRyPEFQSTo6T2JqZWN0
PiB1c2VyRGF0YTsKIAogICAgIC8vIE5vdGlmeSB0aGUgYnVuZGxlIGNsaWVudC4KLSAgICBtX3Bh
Z2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5tb3VzZURpZE1vdmVPdmVyRWxlbWVudChtX3Bh
Z2UsIGhpdFRlc3RSZXN1bHQsIHN0YXRpY19jYXN0PFdlYkV2ZW50OjpNb2RpZmllcnM+KG1vZGlm
aWVyRmxhZ3MpLCB1c2VyRGF0YSk7CisgICAgbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQo
KS5tb3VzZURpZE1vdmVPdmVyRWxlbWVudCgmbV9wYWdlLCBoaXRUZXN0UmVzdWx0LCBzdGF0aWNf
Y2FzdDxXZWJFdmVudDo6TW9kaWZpZXJzPihtb2RpZmllckZsYWdzKSwgdXNlckRhdGEpOwogCiAg
ICAgLy8gTm90aWZ5IHRoZSBVSVByb2Nlc3MuCiAgICAgV2ViSGl0VGVzdFJlc3VsdERhdGEgd2Vi
SGl0VGVzdFJlc3VsdERhdGEoaGl0VGVzdFJlc3VsdCk7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6Ok1vdXNlRGlkTW92ZU92ZXJFbGVtZW50KHdlYkhpdFRlc3RSZXN1
bHREYXRhLCBtb2RpZmllckZsYWdzLCBVc2VyRGF0YShXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS50
cmFuc2Zvcm1PYmplY3RzVG9IYW5kbGVzKHVzZXJEYXRhLmdldCgpKS5nZXQoKSkpKTsKKyAgICBt
X3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpNb3VzZURpZE1vdmVPdmVyRWxlbWVu
dCh3ZWJIaXRUZXN0UmVzdWx0RGF0YSwgbW9kaWZpZXJGbGFncywgVXNlckRhdGEoV2ViUHJvY2Vz
czo6c2luZ2xldG9uKCkudHJhbnNmb3JtT2JqZWN0c1RvSGFuZGxlcyh1c2VyRGF0YS5nZXQoKSku
Z2V0KCkpKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRUb29sVGlwKGNvbnN0IFN0
cmluZyYgdG9vbFRpcCwgVGV4dERpcmVjdGlvbikKQEAgLTY0MCw3ICs2NTEsNyBAQCB2b2lkIFdl
YkNocm9tZUNsaWVudDo6c2V0VG9vbFRpcChjb25zdCBTdHJpbmcmIHRvb2xUaXAsIFRleHREaXJl
Y3Rpb24pCiAgICAgICAgIHJldHVybjsKICAgICBtX2NhY2hlZFRvb2xUaXAgPSB0b29sVGlwOwog
Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldFRvb2xUaXAobV9j
YWNoZWRUb29sVGlwKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6
U2V0VG9vbFRpcChtX2NhY2hlZFRvb2xUaXApKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6
OnByaW50KEZyYW1lKiBmcmFtZSkKQEAgLTY2OCw3ICs2NzksNyBAQCB2b2lkIFdlYkNocm9tZUNs
aWVudDo6cHJpbnQoRnJhbWUqIGZyYW1lKQogICAgIH0KICNlbmRpZgogCi0gICAgbV9wYWdlLT5z
ZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQcmludEZyYW1lKHdlYkZyYW1lLT5mcmFt
ZUlEKCkpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQcmludEZyYW1lOjpSZXBseSgpLCBTZWNv
bmRzOjppbmZpbml0eSgpLCBJUEM6OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0Zm9ybVByb2Nl
c3NXaWxsU3VzcGVuZCk7CisgICAgbV9wYWdlLnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OlByaW50RnJhbWUod2ViRnJhbWUtPmZyYW1lSUQoKSksIE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OlByaW50RnJhbWU6OlJlcGx5KCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5
bmNPcHRpb246OkluZm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKTsKIH0KIAogdm9pZCBX
ZWJDaHJvbWVDbGllbnQ6OmV4Y2VlZGVkRGF0YWJhc2VRdW90YShGcmFtZSogZnJhbWUsIGNvbnN0
IFN0cmluZyYgZGF0YWJhc2VOYW1lLCBEYXRhYmFzZURldGFpbHMgZGV0YWlscykKQEAgLTY4Niwx
MiArNjk3LDEyIEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpleGNlZWRlZERhdGFiYXNlUXVvdGEo
RnJhbWUqIGZyYW1lLCBjb25zdCBTdHJpbmcmIGRhdGFiYXNlCiAgICAgYXV0byBjdXJyZW50T3Jp
Z2luVXNhZ2UgPSB0cmFja2VyLnVzYWdlKG9yaWdpbkRhdGEpOwogICAgIHVpbnQ2NF90IG5ld1F1
b3RhID0gMDsKICAgICBSZWZQdHI8QVBJOjpTZWN1cml0eU9yaWdpbj4gc2VjdXJpdHlPcmlnaW4g
PSBBUEk6OlNlY3VyaXR5T3JpZ2luOjpjcmVhdGUoV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRh
Ojpmcm9tRGF0YWJhc2VJZGVudGlmaWVyKFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJv
bVNlY3VyaXR5T3JpZ2luKCpvcmlnaW4pLmRhdGFiYXNlSWRlbnRpZmllcigpKS0+c2VjdXJpdHlP
cmlnaW4oKSk7Ci0gICAgbmV3UXVvdGEgPSBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQo
KS5kaWRFeGNlZWREYXRhYmFzZVF1b3RhKG1fcGFnZSwgc2VjdXJpdHlPcmlnaW4uZ2V0KCksIGRh
dGFiYXNlTmFtZSwgZGV0YWlscy5kaXNwbGF5TmFtZSgpLCBjdXJyZW50UXVvdGEsIGN1cnJlbnRP
cmlnaW5Vc2FnZSwgZGV0YWlscy5jdXJyZW50VXNhZ2UoKSwgZGV0YWlscy5leHBlY3RlZFVzYWdl
KCkpOworICAgIG5ld1F1b3RhID0gbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5kaWRF
eGNlZWREYXRhYmFzZVF1b3RhKCZtX3BhZ2UsIHNlY3VyaXR5T3JpZ2luLmdldCgpLCBkYXRhYmFz
ZU5hbWUsIGRldGFpbHMuZGlzcGxheU5hbWUoKSwgY3VycmVudFF1b3RhLCBjdXJyZW50T3JpZ2lu
VXNhZ2UsIGRldGFpbHMuY3VycmVudFVzYWdlKCksIGRldGFpbHMuZXhwZWN0ZWRVc2FnZSgpKTsK
IAogICAgIGlmICghbmV3UXVvdGEpIHsKICAgICAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCku
cGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoCiAgICAgICAgICAgICBNZXNzYWdl
czo6V2ViUGFnZVByb3h5OjpFeGNlZWRlZERhdGFiYXNlUXVvdGEod2ViRnJhbWUtPmZyYW1lSUQo
KSwgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tU2VjdXJpdHlPcmlnaW4oKm9yaWdp
bikuZGF0YWJhc2VJZGVudGlmaWVyKCksIGRhdGFiYXNlTmFtZSwgZGV0YWlscy5kaXNwbGF5TmFt
ZSgpLCBjdXJyZW50UXVvdGEsIGN1cnJlbnRPcmlnaW5Vc2FnZSwgZGV0YWlscy5jdXJyZW50VXNh
Z2UoKSwgZGV0YWlscy5leHBlY3RlZFVzYWdlKCkpLAotICAgICAgICAgICAgTWVzc2FnZXM6Oldl
YlBhZ2VQcm94eTo6RXhjZWVkZWREYXRhYmFzZVF1b3RhOjpSZXBseShuZXdRdW90YSksIG1fcGFn
ZS0+cGFnZUlEKCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246Oklu
Zm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKTsKKyAgICAgICAgICAgIE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OkV4Y2VlZGVkRGF0YWJhc2VRdW90YTo6UmVwbHkobmV3UXVvdGEpLCBtX3Bh
Z2UucGFnZUlEKCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246Oklu
Zm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKTsKICAgICB9CiAKICAgICB0cmFja2VyLnNl
dFF1b3RhKG9yaWdpbkRhdGEsIG5ld1F1b3RhKTsKQEAgLTcwNSwxMCArNzE2LDEwIEBAIHZvaWQg
V2ViQ2hyb21lQ2xpZW50OjpyZWFjaGVkTWF4QXBwQ2FjaGVTaXplKGludDY0X3QpCiB2b2lkIFdl
YkNocm9tZUNsaWVudDo6cmVhY2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YShTZWN1cml0
eU9yaWdpbiogb3JpZ2luLCBpbnQ2NF90IHRvdGFsQnl0ZXNOZWVkZWQpCiB7CiAgICAgUmVmUHRy
PEFQSTo6U2VjdXJpdHlPcmlnaW4+IHNlY3VyaXR5T3JpZ2luID0gQVBJOjpTZWN1cml0eU9yaWdp
bjo6Y3JlYXRlRnJvbVN0cmluZyhvcmlnaW4tPnRvU3RyaW5nKCkpOwotICAgIGlmIChtX3BhZ2Ut
PmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5kaWRSZWFjaEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5R
dW90YShtX3BhZ2UsIHNlY3VyaXR5T3JpZ2luLmdldCgpLCB0b3RhbEJ5dGVzTmVlZGVkKSkKKyAg
ICBpZiAobV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5kaWRSZWFjaEFwcGxpY2F0aW9u
Q2FjaGVPcmlnaW5RdW90YSgmbV9wYWdlLCBzZWN1cml0eU9yaWdpbi5nZXQoKSwgdG90YWxCeXRl
c05lZWRlZCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGF1dG8mIGNhY2hlU3RvcmFnZSA9IG1f
cGFnZS0+Y29yZVBhZ2UoKS0+YXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKTsKKyAgICBhdXRvJiBj
YWNoZVN0b3JhZ2UgPSBtX3BhZ2UuY29yZVBhZ2UoKS0+YXBwbGljYXRpb25DYWNoZVN0b3JhZ2Uo
KTsKICAgICBpbnQ2NF90IGN1cnJlbnRRdW90YSA9IDA7CiAgICAgaWYgKCFjYWNoZVN0b3JhZ2Uu
Y2FsY3VsYXRlUXVvdGFGb3JPcmlnaW4ob3JpZ2luLCBjdXJyZW50UXVvdGEpKQogICAgICAgICBy
ZXR1cm47CkBAIC03MTYsNyArNzI3LDcgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJlYWNoZWRB
cHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoU2VjdXJpdHlPcmlnaW4qIG9yaWdpbiwKICAgICB1
aW50NjRfdCBuZXdRdW90YSA9IDA7CiAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50
UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoCiAgICAgICAgIE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OlJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoV2ViQ29yZTo6U2VjdXJp
dHlPcmlnaW5EYXRhOjpmcm9tU2VjdXJpdHlPcmlnaW4oKm9yaWdpbikuZGF0YWJhc2VJZGVudGlm
aWVyKCksIGN1cnJlbnRRdW90YSwgdG90YWxCeXRlc05lZWRlZCksCi0gICAgICAgIE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6OlJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGE6OlJlcGx5
KG5ld1F1b3RhKSwgbV9wYWdlLT5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBDOjpT
ZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpOworICAgICAg
ICBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZWFjaGVkQXBwbGljYXRpb25DYWNoZU9yaWdpblF1
b3RhOjpSZXBseShuZXdRdW90YSksIG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHko
KSwgSVBDOjpTZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQp
OwogCiAgICAgY2FjaGVTdG9yYWdlLnN0b3JlVXBkYXRlZFF1b3RhRm9yT3JpZ2luKG9yaWdpbiwg
bmV3UXVvdGEpOwogfQpAQCAtNzMwLDM1ICs3NDEsMzIgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6
OmFubm90YXRlZFJlZ2lvbnNDaGFuZ2VkKCkKIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnNob3Vs
ZFJlcGxhY2VXaXRoR2VuZXJhdGVkRmlsZUZvclVwbG9hZChjb25zdCBTdHJpbmcmIHBhdGgsIFN0
cmluZyYgZ2VuZXJhdGVkRmlsZW5hbWUpCiB7Ci0gICAgZ2VuZXJhdGVkRmlsZW5hbWUgPSBtX3Bh
Z2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5zaG91bGRHZW5lcmF0ZUZpbGVGb3JVcGxvYWQo
bV9wYWdlLCBwYXRoKTsKKyAgICBnZW5lcmF0ZWRGaWxlbmFtZSA9IG1fcGFnZS5pbmplY3RlZEJ1
bmRsZVVJQ2xpZW50KCkuc2hvdWxkR2VuZXJhdGVGaWxlRm9yVXBsb2FkKCZtX3BhZ2UsIHBhdGgp
OwogICAgIHJldHVybiAhZ2VuZXJhdGVkRmlsZW5hbWUuaXNOdWxsKCk7CiB9CiAKIFN0cmluZyBX
ZWJDaHJvbWVDbGllbnQ6OmdlbmVyYXRlUmVwbGFjZW1lbnRGaWxlKGNvbnN0IFN0cmluZyYgcGF0
aCkKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkuZ2VuZXJh
dGVGaWxlRm9yVXBsb2FkKG1fcGFnZSwgcGF0aCk7CisgICAgcmV0dXJuIG1fcGFnZS5pbmplY3Rl
ZEJ1bmRsZVVJQ2xpZW50KCkuZ2VuZXJhdGVGaWxlRm9yVXBsb2FkKCZtX3BhZ2UsIHBhdGgpOwog
fQogCiAjaWYgRU5BQkxFKElOUFVUX1RZUEVfQ09MT1IpCiBzdGQ6OnVuaXF1ZV9wdHI8Q29sb3JD
aG9vc2VyPiBXZWJDaHJvbWVDbGllbnQ6OmNyZWF0ZUNvbG9yQ2hvb3NlcihDb2xvckNob29zZXJD
bGllbnQqIGNsaWVudCwgY29uc3QgQ29sb3ImIGluaXRpYWxDb2xvcikKIHsKLSAgICByZXR1cm4g
c3RkOjptYWtlX3VuaXF1ZTxXZWJDb2xvckNob29zZXI+KG1fcGFnZSwgY2xpZW50LCBpbml0aWFs
Q29sb3IpOworICAgIHJldHVybiBzdGQ6Om1ha2VfdW5pcXVlPFdlYkNvbG9yQ2hvb3Nlcj4oJm1f
cGFnZSwgY2xpZW50LCBpbml0aWFsQ29sb3IpOwogfQogI2VuZGlmCiAKLXZvaWQgV2ViQ2hyb21l
Q2xpZW50OjpydW5PcGVuUGFuZWwoRnJhbWUqIGZyYW1lLCBQYXNzUmVmUHRyPEZpbGVDaG9vc2Vy
PiBwcnBGaWxlQ2hvb3NlcikKK3ZvaWQgV2ViQ2hyb21lQ2xpZW50OjpydW5PcGVuUGFuZWwoRnJh
bWUmIGZyYW1lLCBGaWxlQ2hvb3NlciYgZmlsZUNob29zZXIpCiB7Ci0gICAgaWYgKG1fcGFnZS0+
YWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIoKSkKKyAgICBpZiAobV9wYWdlLmFjdGl2ZU9w
ZW5QYW5lbFJlc3VsdExpc3RlbmVyKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIFJlZlB0cjxG
aWxlQ2hvb3Nlcj4gZmlsZUNob29zZXIgPSBwcnBGaWxlQ2hvb3NlcjsKKyAgICBtX3BhZ2Uuc2V0
QWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIoV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXI6
OmNyZWF0ZSgmbV9wYWdlLCAmZmlsZUNob29zZXIpKTsKIAotICAgIG1fcGFnZS0+c2V0QWN0aXZl
T3BlblBhbmVsUmVzdWx0TGlzdGVuZXIoV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXI6OmNyZWF0
ZShtX3BhZ2UsIGZpbGVDaG9vc2VyLmdldCgpKSk7Ci0KLSAgICBXZWJGcmFtZSogd2ViRnJhbWUg
PSBXZWJGcmFtZTo6ZnJvbUNvcmVGcmFtZSgqZnJhbWUpOworICAgIGF1dG8qIHdlYkZyYW1lID0g
V2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoZnJhbWUpOwogICAgIEFTU0VSVCh3ZWJGcmFtZSk7Ci0K
LSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuT3BlblBhbmVsKHdl
YkZyYW1lLT5mcmFtZUlEKCksIFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbUZyYW1lKGZyYW1lKSwg
ZmlsZUNob29zZXItPnNldHRpbmdzKCkpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2Vi
UGFnZVByb3h5OjpSdW5PcGVuUGFuZWwod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmln
aW5EYXRhOjpmcm9tRnJhbWUoJmZyYW1lKSwgZmlsZUNob29zZXIuc2V0dGluZ3MoKSkpOwogfQog
CiB2b2lkIFdlYkNocm9tZUNsaWVudDo6bG9hZEljb25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8U3Ry
aW5nPiYgZmlsZW5hbWVzLCBGaWxlSWNvbkxvYWRlciYgbG9hZGVyKQpAQCAtNzY3LDM0ICs3NzUs
MzggQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmxvYWRJY29uRm9yRmlsZXMoY29uc3QgVmVjdG9y
PFN0cmluZz4mIGZpbGVuYW1lcywgRmlsZUljb24KIH0KIAogI2lmICFQTEFURk9STShJT1MpCisK
IHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRDdXJzb3IoY29uc3QgV2ViQ29yZTo6Q3Vyc29yJiBj
dXJzb3IpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldEN1
cnNvcihjdXJzb3IpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpT
ZXRDdXJzb3IoY3Vyc29yKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRDdXJzb3JI
aWRkZW5VbnRpbE1vdXNlTW92ZXMoYm9vbCBoaWRkZW5VbnRpbE1vdXNlTW92ZXMpCiB7Ci0gICAg
bV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldEN1cnNvckhpZGRlblVudGls
TW91c2VNb3ZlcyhoaWRkZW5VbnRpbE1vdXNlTW92ZXMpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpTZXRDdXJzb3JIaWRkZW5VbnRpbE1vdXNlTW92ZXMoaGlkZGVu
VW50aWxNb3VzZU1vdmVzKSk7CiB9CisKICNlbmRpZgogCiAjaWYgRU5BQkxFKFJFUVVFU1RfQU5J
TUFUSU9OX0ZSQU1FKSAmJiAhVVNFKFJFUVVFU1RfQU5JTUFUSU9OX0ZSQU1FX1RJTUVSKQorCiB2
b2lkIFdlYkNocm9tZUNsaWVudDo6c2NoZWR1bGVBbmltYXRpb24oKQogewogI2lmIFVTRShDT09S
RElOQVRFRF9HUkFQSElDUykKLSAgICBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPmxheWVyVHJlZUhv
c3QoKS0+c2NoZWR1bGVBbmltYXRpb24oKTsKKyAgICBtX3BhZ2UuZHJhd2luZ0FyZWEoKS0+bGF5
ZXJUcmVlSG9zdCgpLT5zY2hlZHVsZUFuaW1hdGlvbigpOwogI2VuZGlmCiB9CisKICNlbmRpZgog
CiB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xzKGNvbnN0IFZl
Y3RvcjxSZWZQdHI8V2ViQ29yZTo6RWxlbWVudD4+JiBlbGVtZW50cykKIHsKLSAgICByZXR1cm4g
bV9wYWdlLT5pbmplY3RlZEJ1bmRsZUZvcm1DbGllbnQoKS5kaWRBc3NvY2lhdGVGb3JtQ29udHJv
bHMobV9wYWdlLCBlbGVtZW50cyk7CisgICAgcmV0dXJuIG1fcGFnZS5pbmplY3RlZEJ1bmRsZUZv
cm1DbGllbnQoKS5kaWRBc3NvY2lhdGVGb3JtQ29udHJvbHMoJm1fcGFnZSwgZWxlbWVudHMpOwog
fQogCiBib29sIFdlYkNocm9tZUNsaWVudDo6c2hvdWxkTm90aWZ5T25Gb3JtQ2hhbmdlcygpCiB7
Ci0gICAgcmV0dXJuIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCkuc2hvdWxkTm90
aWZ5T25Gb3JtQ2hhbmdlcyhtX3BhZ2UpOworICAgIHJldHVybiBtX3BhZ2UuaW5qZWN0ZWRCdW5k
bGVGb3JtQ2xpZW50KCkuc2hvdWxkTm90aWZ5T25Gb3JtQ2hhbmdlcygmbV9wYWdlKTsKIH0KIAog
Ym9vbCBXZWJDaHJvbWVDbGllbnQ6OnNlbGVjdEl0ZW1Xcml0aW5nRGlyZWN0aW9uSXNOYXR1cmFs
KCkKQEAgLTgxOSwzOSArODMxLDQxIEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpoYXNPcGVuZWRQ
b3B1cCgpIGNvbnN0CiAKIFJlZlB0cjxXZWJDb3JlOjpQb3B1cE1lbnU+IFdlYkNocm9tZUNsaWVu
dDo6Y3JlYXRlUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCogY2xpZW50KSBjb25z
dAogewotICAgIHJldHVybiBXZWJQb3B1cE1lbnU6OmNyZWF0ZShtX3BhZ2UsIGNsaWVudCk7Cisg
ICAgcmV0dXJuIFdlYlBvcHVwTWVudTo6Y3JlYXRlKCZtX3BhZ2UsIGNsaWVudCk7CiB9CiAKIFJl
ZlB0cjxXZWJDb3JlOjpTZWFyY2hQb3B1cE1lbnU+IFdlYkNocm9tZUNsaWVudDo6Y3JlYXRlU2Vh
cmNoUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCogY2xpZW50KSBjb25zdAogewot
ICAgIHJldHVybiBXZWJTZWFyY2hQb3B1cE1lbnU6OmNyZWF0ZShtX3BhZ2UsIGNsaWVudCk7Cisg
ICAgcmV0dXJuIFdlYlNlYXJjaFBvcHVwTWVudTo6Y3JlYXRlKCZtX3BhZ2UsIGNsaWVudCk7CiB9
CiAKIEdyYXBoaWNzTGF5ZXJGYWN0b3J5KiBXZWJDaHJvbWVDbGllbnQ6OmdyYXBoaWNzTGF5ZXJG
YWN0b3J5KCkgY29uc3QKIHsKLSAgICBpZiAoYXV0byBkcmF3aW5nQXJlYSA9IG1fcGFnZS0+ZHJh
d2luZ0FyZWEoKSkKKyAgICBpZiAoYXV0byBkcmF3aW5nQXJlYSA9IG1fcGFnZS5kcmF3aW5nQXJl
YSgpKQogICAgICAgICByZXR1cm4gZHJhd2luZ0FyZWEtPmdyYXBoaWNzTGF5ZXJGYWN0b3J5KCk7
CiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKICNpZiBVU0UoUkVRVUVTVF9BTklNQVRJT05fRlJB
TUVfRElTUExBWV9NT05JVE9SKQorCiBSZWZQdHI8V2ViQ29yZTo6RGlzcGxheVJlZnJlc2hNb25p
dG9yPiBXZWJDaHJvbWVDbGllbnQ6OmNyZWF0ZURpc3BsYXlSZWZyZXNoTW9uaXRvcihQbGF0Zm9y
bURpc3BsYXlJRCBkaXNwbGF5SUQpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+ZHJhd2lu
Z0FyZWEoKS0+Y3JlYXRlRGlzcGxheVJlZnJlc2hNb25pdG9yKGRpc3BsYXlJRCk7CisgICAgcmV0
dXJuIG1fcGFnZS5kcmF3aW5nQXJlYSgpLT5jcmVhdGVEaXNwbGF5UmVmcmVzaE1vbml0b3IoZGlz
cGxheUlEKTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjphdHRhY2hSb290
R3JhcGhpY3NMYXllcihGcmFtZSosIEdyYXBoaWNzTGF5ZXIqIGxheWVyKQogewogICAgIGlmIChs
YXllcikKLSAgICAgICAgbV9wYWdlLT5lbnRlckFjY2VsZXJhdGVkQ29tcG9zaXRpbmdNb2RlKGxh
eWVyKTsKKyAgICAgICAgbV9wYWdlLmVudGVyQWNjZWxlcmF0ZWRDb21wb3NpdGluZ01vZGUobGF5
ZXIpOwogICAgIGVsc2UKLSAgICAgICAgbV9wYWdlLT5leGl0QWNjZWxlcmF0ZWRDb21wb3NpdGlu
Z01vZGUoKTsKKyAgICAgICAgbV9wYWdlLmV4aXRBY2NlbGVyYXRlZENvbXBvc2l0aW5nTW9kZSgp
OwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6YXR0YWNoVmlld092ZXJsYXlHcmFwaGljc0xh
eWVyKEZyYW1lKiBmcmFtZSwgR3JhcGhpY3NMYXllciogZ3JhcGhpY3NMYXllcikKIHsKLSAgICBp
ZiAoYXV0byBkcmF3aW5nQXJlYSA9IG1fcGFnZS0+ZHJhd2luZ0FyZWEoKSkKKyAgICBpZiAoYXV0
byBkcmF3aW5nQXJlYSA9IG1fcGFnZS5kcmF3aW5nQXJlYSgpKQogICAgICAgICBkcmF3aW5nQXJl
YS0+YXR0YWNoVmlld092ZXJsYXlHcmFwaGljc0xheWVyKGZyYW1lLCBncmFwaGljc0xheWVyKTsK
IH0KIApAQCAtODYyLDEyOCArODc2LDEzNiBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0TmVl
ZHNPbmVTaG90RHJhd2luZ1N5bmNocm9uaXphdGlvbigpCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50
OjpzY2hlZHVsZUNvbXBvc2l0aW5nTGF5ZXJGbHVzaCgpCiB7Ci0gICAgaWYgKG1fcGFnZS0+ZHJh
d2luZ0FyZWEoKSkKLSAgICAgICAgbV9wYWdlLT5kcmF3aW5nQXJlYSgpLT5zY2hlZHVsZUNvbXBv
c2l0aW5nTGF5ZXJGbHVzaCgpOworICAgIGlmIChtX3BhZ2UuZHJhd2luZ0FyZWEoKSkKKyAgICAg
ICAgbV9wYWdlLmRyYXdpbmdBcmVhKCktPnNjaGVkdWxlQ29tcG9zaXRpbmdMYXllckZsdXNoKCk7
CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjphZGp1c3RMYXllckZsdXNoVGhyb3R0bGluZyhX
ZWJDb3JlOjpMYXllckZsdXNoVGhyb3R0bGVTdGF0ZTo6RmxhZ3MgZmxhZ3MpCiB7Ci0gICAgcmV0
dXJuIG1fcGFnZS0+ZHJhd2luZ0FyZWEoKSAmJiBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPmFkanVz
dExheWVyRmx1c2hUaHJvdHRsaW5nKGZsYWdzKTsKKyAgICByZXR1cm4gbV9wYWdlLmRyYXdpbmdB
cmVhKCkgJiYgbV9wYWdlLmRyYXdpbmdBcmVhKCktPmFkanVzdExheWVyRmx1c2hUaHJvdHRsaW5n
KGZsYWdzKTsKIH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OmxheWVyVHJlZVN0YXRlSXNGcm96
ZW4oKSBjb25zdAogewotICAgIGlmIChtX3BhZ2UtPmRyYXdpbmdBcmVhKCkpCi0gICAgICAgIHJl
dHVybiBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPmxheWVyVHJlZVN0YXRlSXNGcm96ZW4oKTsKKyAg
ICBpZiAobV9wYWdlLmRyYXdpbmdBcmVhKCkpCisgICAgICAgIHJldHVybiBtX3BhZ2UuZHJhd2lu
Z0FyZWEoKS0+bGF5ZXJUcmVlU3RhdGVJc0Zyb3plbigpOwogCiAgICAgcmV0dXJuIGZhbHNlOwog
fQogCiAjaWYgRU5BQkxFKEFTWU5DX1NDUk9MTElORykKKwogUGFzc1JlZlB0cjxTY3JvbGxpbmdD
b29yZGluYXRvcj4gV2ViQ2hyb21lQ2xpZW50OjpjcmVhdGVTY3JvbGxpbmdDb29yZGluYXRvcihQ
YWdlKiBwYWdlKSBjb25zdAogewotICAgIEFTU0VSVChtX3BhZ2UtPmNvcmVQYWdlKCkgPT0gcGFn
ZSk7Ci0gICAgaWYgKG1fcGFnZS0+ZHJhd2luZ0FyZWEoKS0+dHlwZSgpID09IERyYXdpbmdBcmVh
VHlwZVJlbW90ZUxheWVyVHJlZSkKLSAgICAgICAgcmV0dXJuIFJlbW90ZVNjcm9sbGluZ0Nvb3Jk
aW5hdG9yOjpjcmVhdGUobV9wYWdlKTsKLQotICAgIHJldHVybiAwOworICAgIEFTU0VSVChtX3Bh
Z2UuY29yZVBhZ2UoKSA9PSBwYWdlKTsKKyAgICBpZiAobV9wYWdlLmRyYXdpbmdBcmVhKCktPnR5
cGUoKSAhPSBEcmF3aW5nQXJlYVR5cGVSZW1vdGVMYXllclRyZWUpCisgICAgICAgIHJldHVybiBu
dWxscHRyOworICAgIHJldHVybiBSZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvcjo6Y3JlYXRlKCZt
X3BhZ2UpOwogfQorCiAjZW5kaWYKIAogI2lmIChQTEFURk9STShJT1MpICYmIEhBVkUoQVZLSVQp
KSB8fCAoUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpKQor
CiBib29sIFdlYkNocm9tZUNsaWVudDo6c3VwcG9ydHNWaWRlb0Z1bGxzY3JlZW4oV2ViQ29yZTo6
SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIG1vZGUpCiB7Ci0gICAg
cmV0dXJuIG1fcGFnZS0+dmlkZW9GdWxsc2NyZWVuTWFuYWdlcigpLnN1cHBvcnRzVmlkZW9GdWxs
c2NyZWVuKG1vZGUpOworICAgIHJldHVybiBtX3BhZ2UudmlkZW9GdWxsc2NyZWVuTWFuYWdlcigp
LnN1cHBvcnRzVmlkZW9GdWxsc2NyZWVuKG1vZGUpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVu
dDo6c2V0VXBQbGF5YmFja0NvbnRyb2xzTWFuYWdlcihXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50
JiBtZWRpYUVsZW1lbnQpCiB7Ci0gICAgbV9wYWdlLT5wbGF5YmFja1Nlc3Npb25NYW5hZ2VyKCku
c2V0VXBQbGF5YmFja0NvbnRyb2xzTWFuYWdlcihtZWRpYUVsZW1lbnQpOworICAgIG1fcGFnZS5w
bGF5YmFja1Nlc3Npb25NYW5hZ2VyKCkuc2V0VXBQbGF5YmFja0NvbnRyb2xzTWFuYWdlcihtZWRp
YUVsZW1lbnQpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y2xlYXJQbGF5YmFja0NvbnRy
b2xzTWFuYWdlcigpCiB7Ci0gICAgbV9wYWdlLT5wbGF5YmFja1Nlc3Npb25NYW5hZ2VyKCkuY2xl
YXJQbGF5YmFja0NvbnRyb2xzTWFuYWdlcigpOworICAgIG1fcGFnZS5wbGF5YmFja1Nlc3Npb25N
YW5hZ2VyKCkuY2xlYXJQbGF5YmFja0NvbnRyb2xzTWFuYWdlcigpOwogfQogCiB2b2lkIFdlYkNo
cm9tZUNsaWVudDo6ZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6
SFRNTFZpZGVvRWxlbWVudCYgdmlkZW9FbGVtZW50LCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50
RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUgbW9kZSkKIHsKICAgICBBU1NFUlQobW9kZSAhPSBI
VE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGVOb25lKTsKLSAgICBtX3Bh
Z2UtPnZpZGVvRnVsbHNjcmVlbk1hbmFnZXIoKS5lbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVv
RWxlbWVudCh2aWRlb0VsZW1lbnQsIG1vZGUpOworICAgIG1fcGFnZS52aWRlb0Z1bGxzY3JlZW5N
YW5hZ2VyKCkuZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQodmlkZW9FbGVtZW50
LCBtb2RlKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmV4aXRWaWRlb0Z1bGxzY3JlZW5G
b3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCYgdmlkZW9FbGVtZW50KQog
ewotICAgIG1fcGFnZS0+dmlkZW9GdWxsc2NyZWVuTWFuYWdlcigpLmV4aXRWaWRlb0Z1bGxzY3Jl
ZW5Gb3JWaWRlb0VsZW1lbnQodmlkZW9FbGVtZW50KTsKKyAgICBtX3BhZ2UudmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlcigpLmV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQodmlkZW9FbGVt
ZW50KTsKIH0KIAorI2VuZGlmCisKICNpZiBQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19Q
UkVTRU5UQVRJT05fTU9ERSkKKwogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmV4aXRWaWRlb0Z1bGxz
Y3JlZW5Ub01vZGVXaXRob3V0QW5pbWF0aW9uKFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmIHZp
ZGVvRWxlbWVudCwgSFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIHRh
cmdldE1vZGUpCiB7Ci0gICAgbV9wYWdlLT52aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyKCkuZXhpdFZp
ZGVvRnVsbHNjcmVlblRvTW9kZVdpdGhvdXRBbmltYXRpb24odmlkZW9FbGVtZW50LCB0YXJnZXRN
b2RlKTsKKyAgICBtX3BhZ2UudmlkZW9GdWxsc2NyZWVuTWFuYWdlcigpLmV4aXRWaWRlb0Z1bGxz
Y3JlZW5Ub01vZGVXaXRob3V0QW5pbWF0aW9uKHZpZGVvRWxlbWVudCwgdGFyZ2V0TW9kZSk7CiB9
Ci0jZW5kaWYKIAogI2VuZGlmCi0gICAgCisKICNpZiBFTkFCTEUoRlVMTFNDUkVFTl9BUEkpCisK
IGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpzdXBwb3J0c0Z1bGxTY3JlZW5Gb3JFbGVtZW50KGNvbnN0
IFdlYkNvcmU6OkVsZW1lbnQqLCBib29sIHdpdGhLZXlib2FyZCkKIHsKLSAgICByZXR1cm4gbV9w
YWdlLT5mdWxsU2NyZWVuTWFuYWdlcigpLT5zdXBwb3J0c0Z1bGxTY3JlZW4od2l0aEtleWJvYXJk
KTsKKyAgICByZXR1cm4gbV9wYWdlLmZ1bGxTY3JlZW5NYW5hZ2VyKCktPnN1cHBvcnRzRnVsbFNj
cmVlbih3aXRoS2V5Ym9hcmQpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZW50ZXJGdWxs
U2NyZWVuRm9yRWxlbWVudChXZWJDb3JlOjpFbGVtZW50KiBlbGVtZW50KQogewotICAgIG1fcGFn
ZS0+ZnVsbFNjcmVlbk1hbmFnZXIoKS0+ZW50ZXJGdWxsU2NyZWVuRm9yRWxlbWVudChlbGVtZW50
KTsKKyAgICBtX3BhZ2UuZnVsbFNjcmVlbk1hbmFnZXIoKS0+ZW50ZXJGdWxsU2NyZWVuRm9yRWxl
bWVudChlbGVtZW50KTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmV4aXRGdWxsU2NyZWVu
Rm9yRWxlbWVudChXZWJDb3JlOjpFbGVtZW50KiBlbGVtZW50KQogewotICAgIG1fcGFnZS0+ZnVs
bFNjcmVlbk1hbmFnZXIoKS0+ZXhpdEZ1bGxTY3JlZW5Gb3JFbGVtZW50KGVsZW1lbnQpOworICAg
IG1fcGFnZS5mdWxsU2NyZWVuTWFuYWdlcigpLT5leGl0RnVsbFNjcmVlbkZvckVsZW1lbnQoZWxl
bWVudCk7CiB9CisKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oSU9TKQorCiBGbG9hdFNpemUgV2Vi
Q2hyb21lQ2xpZW50OjpzY3JlZW5TaXplKCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5z
Y3JlZW5TaXplKCk7CisgICAgcmV0dXJuIG1fcGFnZS5zY3JlZW5TaXplKCk7CiB9CiAKIEZsb2F0
U2l6ZSBXZWJDaHJvbWVDbGllbnQ6OmF2YWlsYWJsZVNjcmVlblNpemUoKSBjb25zdAogewotICAg
IHJldHVybiBtX3BhZ2UtPmF2YWlsYWJsZVNjcmVlblNpemUoKTsKKyAgICByZXR1cm4gbV9wYWdl
LmF2YWlsYWJsZVNjcmVlblNpemUoKTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViQ2hyb21lQ2xp
ZW50OjpkaXNwYXRjaFZpZXdwb3J0UHJvcGVydGllc0RpZENoYW5nZShjb25zdCBWaWV3cG9ydEFy
Z3VtZW50cyYgdmlld3BvcnRBcmd1bWVudHMpIGNvbnN0CiB7Ci0gICAgbV9wYWdlLT52aWV3cG9y
dFByb3BlcnRpZXNEaWRDaGFuZ2Uodmlld3BvcnRBcmd1bWVudHMpOworICAgIG1fcGFnZS52aWV3
cG9ydFByb3BlcnRpZXNEaWRDaGFuZ2Uodmlld3BvcnRBcmd1bWVudHMpOwogfQogCiB2b2lkIFdl
YkNocm9tZUNsaWVudDo6bm90aWZ5U2Nyb2xsZXJUaHVtYklzVmlzaWJsZUluUmVjdChjb25zdCBJ
bnRSZWN0JiBzY3JvbGxlclRodW1iKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2Vi
UGFnZVByb3h5OjpOb3RpZnlTY3JvbGxlclRodW1iSXNWaXNpYmxlSW5SZWN0KHNjcm9sbGVyVGh1
bWIpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpOb3RpZnlTY3Jv
bGxlclRodW1iSXNWaXNpYmxlSW5SZWN0KHNjcm9sbGVyVGh1bWIpKTsKIH0KIAogdm9pZCBXZWJD
aHJvbWVDbGllbnQ6OnJlY29tbWVuZGVkU2Nyb2xsYmFyU3R5bGVEaWRDaGFuZ2UoU2Nyb2xsYmFy
U3R5bGUgbmV3U3R5bGUpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OlJlY29tbWVuZGVkU2Nyb2xsYmFyU3R5bGVEaWRDaGFuZ2Uoc3RhdGljX2Nhc3Q8aW50MzJf
dD4obmV3U3R5bGUpKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6
UmVjb21tZW5kZWRTY3JvbGxiYXJTdHlsZURpZENoYW5nZShzdGF0aWNfY2FzdDxpbnQzMl90Pihu
ZXdTdHlsZSkpKTsKIH0KIAogc3RkOjpvcHRpb25hbDxTY3JvbGxiYXJPdmVybGF5U3R5bGU+IFdl
YkNocm9tZUNsaWVudDo6cHJlZmVycmVkU2Nyb2xsYmFyT3ZlcmxheVN0eWxlKCkKIHsKLSAgICBy
ZXR1cm4gbV9wYWdlLT5zY3JvbGxiYXJPdmVybGF5U3R5bGUoKTsgCisgICAgcmV0dXJuIG1fcGFn
ZS5zY3JvbGxiYXJPdmVybGF5U3R5bGUoKTsKIH0KIAogQ29sb3IgV2ViQ2hyb21lQ2xpZW50Ojp1
bmRlcmxheUNvbG9yKCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT51bmRlcmxheUNvbG9y
KCk7CisgICAgcmV0dXJuIG1fcGFnZS51bmRlcmxheUNvbG9yKCk7CiB9CiAKIHZvaWQgV2ViQ2hy
b21lQ2xpZW50OjpwYWdlRXh0ZW5kZWRCYWNrZ3JvdW5kQ29sb3JEaWRDaGFuZ2UoQ29sb3IgYmFj
a2dyb3VuZENvbG9yKSBjb25zdAogewogI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oRUZM
KQotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQYWdlRXh0ZW5kZWRC
YWNrZ3JvdW5kQ29sb3JEaWRDaGFuZ2UoYmFja2dyb3VuZENvbG9yKSk7CisgICAgbV9wYWdlLnNl
bmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UGFnZUV4dGVuZGVkQmFja2dyb3VuZENvbG9yRGlk
Q2hhbmdlKGJhY2tncm91bmRDb2xvcikpOwogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0oYmFja2dy
b3VuZENvbG9yKTsKICNlbmRpZgpAQCAtOTkxLDQzICsxMDEzLDQzIEBAIHZvaWQgV2ViQ2hyb21l
Q2xpZW50OjpwYWdlRXh0ZW5kZWRCYWNrZ3JvdW5kQ29sb3JEaWRDaGFuZ2UoQ29sb3IgYmFja2dy
b3VuZENvbG9yCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojp3aGVlbEV2ZW50SGFuZGxlcnNDaGFu
Z2VkKGJvb2wgaGFzSGFuZGxlcnMpCiB7Ci0gICAgbV9wYWdlLT53aGVlbEV2ZW50SGFuZGxlcnND
aGFuZ2VkKGhhc0hhbmRsZXJzKTsKKyAgICBtX3BhZ2Uud2hlZWxFdmVudEhhbmRsZXJzQ2hhbmdl
ZChoYXNIYW5kbGVycyk7CiB9CiAKIFN0cmluZyBXZWJDaHJvbWVDbGllbnQ6OnBsdWdJblN0YXJ0
TGFiZWxUaXRsZShjb25zdCBTdHJpbmcmIG1pbWVUeXBlKSBjb25zdAogewotICAgIHJldHVybiBt
X3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5wbHVnSW5TdGFydExhYmVsVGl0bGUobWlt
ZVR5cGUpOworICAgIHJldHVybiBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLnBsdWdJ
blN0YXJ0TGFiZWxUaXRsZShtaW1lVHlwZSk7CiB9CiAKIFN0cmluZyBXZWJDaHJvbWVDbGllbnQ6
OnBsdWdJblN0YXJ0TGFiZWxTdWJ0aXRsZShjb25zdCBTdHJpbmcmIG1pbWVUeXBlKSBjb25zdAog
ewotICAgIHJldHVybiBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5wbHVnSW5TdGFy
dExhYmVsU3VidGl0bGUobWltZVR5cGUpOworICAgIHJldHVybiBtX3BhZ2UuaW5qZWN0ZWRCdW5k
bGVVSUNsaWVudCgpLnBsdWdJblN0YXJ0TGFiZWxTdWJ0aXRsZShtaW1lVHlwZSk7CiB9CiAKIFN0
cmluZyBXZWJDaHJvbWVDbGllbnQ6OnBsdWdJbkV4dHJhU3R5bGVTaGVldCgpIGNvbnN0CiB7Ci0g
ICAgcmV0dXJuIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLnBsdWdJbkV4dHJhU3R5
bGVTaGVldCgpOworICAgIHJldHVybiBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLnBs
dWdJbkV4dHJhU3R5bGVTaGVldCgpOwogfQogCiBTdHJpbmcgV2ViQ2hyb21lQ2xpZW50OjpwbHVn
SW5FeHRyYVNjcmlwdCgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+aW5qZWN0ZWRCdW5k
bGVVSUNsaWVudCgpLnBsdWdJbkV4dHJhU2NyaXB0KCk7CisgICAgcmV0dXJuIG1fcGFnZS5pbmpl
Y3RlZEJ1bmRsZVVJQ2xpZW50KCkucGx1Z0luRXh0cmFTY3JpcHQoKTsKIH0KIAogdm9pZCBXZWJD
aHJvbWVDbGllbnQ6OmVuYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkKIHsKLSAgICBtX3BhZ2UtPnNl
bmQoTWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6RW5hYmxlU3VkZGVuVGVybWluYXRpb24oKSk7
CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6RW5hYmxlU3VkZGVu
VGVybWluYXRpb24oKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpkaXNhYmxlU3VkZGVu
VGVybWluYXRpb24oKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUHJvY2Vzc1By
b3h5OjpEaXNhYmxlU3VkZGVuVGVybWluYXRpb24oKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2Fn
ZXM6OldlYlByb2Nlc3NQcm94eTo6RGlzYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkpOwogfQogCiB2
b2lkIFdlYkNocm9tZUNsaWVudDo6ZGlkQWRkSGVhZGVyTGF5ZXIoR3JhcGhpY3NMYXllciogaGVh
ZGVyUGFyZW50KQogewogI2lmIEVOQUJMRShSVUJCRVJfQkFORElORykKLSAgICBpZiAoUGFnZUJh
bm5lciogYmFubmVyID0gbV9wYWdlLT5oZWFkZXJQYWdlQmFubmVyKCkpCisgICAgaWYgKFBhZ2VC
YW5uZXIqIGJhbm5lciA9IG1fcGFnZS5oZWFkZXJQYWdlQmFubmVyKCkpCiAgICAgICAgIGJhbm5l
ci0+ZGlkQWRkUGFyZW50TGF5ZXIoaGVhZGVyUGFyZW50KTsKICNlbHNlCiAgICAgVU5VU0VEX1BB
UkFNKGhlYWRlclBhcmVudCk7CkBAIC0xMDM3LDcgKzEwNTksNyBAQCB2b2lkIFdlYkNocm9tZUNs
aWVudDo6ZGlkQWRkSGVhZGVyTGF5ZXIoR3JhcGhpY3NMYXllciogaGVhZGVyUGFyZW50KQogdm9p
ZCBXZWJDaHJvbWVDbGllbnQ6OmRpZEFkZEZvb3RlckxheWVyKEdyYXBoaWNzTGF5ZXIqIGZvb3Rl
clBhcmVudCkKIHsKICNpZiBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpCi0gICAgaWYgKFBhZ2VCYW5u
ZXIqIGJhbm5lciA9IG1fcGFnZS0+Zm9vdGVyUGFnZUJhbm5lcigpKQorICAgIGlmIChQYWdlQmFu
bmVyKiBiYW5uZXIgPSBtX3BhZ2UuZm9vdGVyUGFnZUJhbm5lcigpKQogICAgICAgICBiYW5uZXIt
PmRpZEFkZFBhcmVudExheWVyKGZvb3RlclBhcmVudCk7CiAjZWxzZQogICAgIFVOVVNFRF9QQVJB
TShmb290ZXJQYXJlbnQpOwpAQCAtMTA0NiwzNiArMTA2OCwzOSBAQCB2b2lkIFdlYkNocm9tZUNs
aWVudDo6ZGlkQWRkRm9vdGVyTGF5ZXIoR3JhcGhpY3NMYXllciogZm9vdGVyUGFyZW50KQogCiBi
b29sIFdlYkNocm9tZUNsaWVudDo6c2hvdWxkVXNlVGlsZWRCYWNraW5nRm9yRnJhbWVWaWV3KGNv
bnN0IEZyYW1lVmlldyogZnJhbWVWaWV3KSBjb25zdAogewotICAgIHJldHVybiBtX3BhZ2UtPmRy
YXdpbmdBcmVhKCktPnNob3VsZFVzZVRpbGVkQmFja2luZ0ZvckZyYW1lVmlldyhmcmFtZVZpZXcp
OworICAgIHJldHVybiBtX3BhZ2UuZHJhd2luZ0FyZWEoKS0+c2hvdWxkVXNlVGlsZWRCYWNraW5n
Rm9yRnJhbWVWaWV3KGZyYW1lVmlldyk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojppc1Bs
YXlpbmdNZWRpYURpZENoYW5nZShXZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpNZWRpYVN0YXRlRmxh
Z3Mgc3RhdGUsIHVpbnQ2NF90IHNvdXJjZUVsZW1lbnRJRCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQo
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6SXNQbGF5aW5nTWVkaWFEaWRDaGFuZ2Uoc3RhdGUsIHNv
dXJjZUVsZW1lbnRJRCkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OklzUGxheWluZ01lZGlhRGlkQ2hhbmdlKHN0YXRlLCBzb3VyY2VFbGVtZW50SUQpKTsKIH0KIAog
I2lmIEVOQUJMRShNRURJQV9TRVNTSU9OKQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6aGFzTWVk
aWFTZXNzaW9uV2l0aEFjdGl2ZU1lZGlhRWxlbWVudHNEaWRDaGFuZ2UoYm9vbCBzdGF0ZSkKIHsK
LSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6SGFzTWVkaWFTZXNzaW9u
V2l0aEFjdGl2ZU1lZGlhRWxlbWVudHNEaWRDaGFuZ2Uoc3RhdGUpKTsKKyAgICBtX3BhZ2Uuc2Vu
ZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpIYXNNZWRpYVNlc3Npb25XaXRoQWN0aXZlTWVkaWFF
bGVtZW50c0RpZENoYW5nZShzdGF0ZSkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6bWVk
aWFTZXNzaW9uTWV0YWRhdGFEaWRDaGFuZ2UoY29uc3QgV2ViQ29yZTo6TWVkaWFTZXNzaW9uTWV0
YWRhdGEmIG1ldGFkYXRhKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpNZWRpYVNlc3Npb25NZXRhZGF0YURpZENoYW5nZShtZXRhZGF0YSkpOworICAgIG1fcGFn
ZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6Ok1lZGlhU2Vzc2lvbk1ldGFkYXRhRGlkQ2hh
bmdlKG1ldGFkYXRhKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpmb2N1c2VkQ29udGVu
dE1lZGlhRWxlbWVudERpZENoYW5nZSh1aW50NjRfdCBlbGVtZW50SUQpCiB7Ci0gICAgbV9wYWdl
LT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZvY3VzZWRDb250ZW50TWVkaWFFbGVtZW50
RGlkQ2hhbmdlKGVsZW1lbnRJRCkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OkZvY3VzZWRDb250ZW50TWVkaWFFbGVtZW50RGlkQ2hhbmdlKGVsZW1lbnRJRCkpOwog
fQorCiAjZW5kaWYKIAogI2lmIEVOQUJMRShTVUJUTEVfQ1JZUFRPKQorCiBib29sIFdlYkNocm9t
ZUNsaWVudDo6d3JhcENyeXB0b0tleShjb25zdCBWZWN0b3I8dWludDhfdD4mIGtleSwgVmVjdG9y
PHVpbnQ4X3Q+JiB3cmFwcGVkS2V5KSBjb25zdAogewogICAgIGJvb2wgc3VjY2VlZGVkOwotICAg
IGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+
c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6V3JhcENyeXB0b0tleShrZXkpLCBNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpXcmFwQ3J5cHRvS2V5OjpSZXBseShzdWNjZWVkZWQsIHdyYXBw
ZWRLZXkpLCBtX3BhZ2UtPnBhZ2VJRCgpKSkKKyAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRv
bigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OldyYXBDcnlwdG9LZXkoa2V5KSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6V3JhcENy
eXB0b0tleTo6UmVwbHkoc3VjY2VlZGVkLCB3cmFwcGVkS2V5KSwgbV9wYWdlLnBhZ2VJRCgpKSkK
ICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIHJldHVybiBzdWNjZWVkZWQ7CiB9CkBAIC0xMDgz
LDM0ICsxMTA4LDM5IEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50Ojp3cmFwQ3J5cHRvS2V5KGNvbnN0
IFZlY3Rvcjx1aW50OF90PiYga2V5LCBWZWN0b3I8dWludDhfdD4mCiBib29sIFdlYkNocm9tZUNs
aWVudDo6dW53cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90PiYgd3JhcHBlZEtleSwg
VmVjdG9yPHVpbnQ4X3Q+JiBrZXkpIGNvbnN0CiB7CiAgICAgYm9vbCBzdWNjZWVkZWQ7Ci0gICAg
aWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5z
ZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpVbndyYXBDcnlwdG9LZXkod3JhcHBlZEtl
eSksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlVud3JhcENyeXB0b0tleTo6UmVwbHkoc3VjY2Vl
ZGVkLCBrZXkpLCBtX3BhZ2UtPnBhZ2VJRCgpKSkKKyAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmds
ZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OlVud3JhcENyeXB0b0tleSh3cmFwcGVkS2V5KSwgTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6VW53cmFwQ3J5cHRvS2V5OjpSZXBseShzdWNjZWVkZWQsIGtleSksIG1fcGFnZS5wYWdl
SUQoKSkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICByZXR1cm4gc3VjY2VlZGVkOwogfQor
CiAjZW5kaWYKIAogI2lmIEVOQUJMRShURUxFUEhPTkVfTlVNQkVSX0RFVEVDVElPTikgJiYgUExB
VEZPUk0oTUFDKQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6aGFuZGxlVGVsZXBob25lTnVtYmVy
Q2xpY2soY29uc3QgU3RyaW5nJiBudW1iZXIsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBwb2lu
dCkKIHsKLSAgICBtX3BhZ2UtPmhhbmRsZVRlbGVwaG9uZU51bWJlckNsaWNrKG51bWJlciwgcG9p
bnQpOworICAgIG1fcGFnZS5oYW5kbGVUZWxlcGhvbmVOdW1iZXJDbGljayhudW1iZXIsIHBvaW50
KTsKIH0KKwogI2VuZGlmCiAKICNpZiBFTkFCTEUoU0VSVklDRV9DT05UUk9MUykKKwogdm9pZCBX
ZWJDaHJvbWVDbGllbnQ6OmhhbmRsZVNlbGVjdGlvblNlcnZpY2VDbGljayhXZWJDb3JlOjpGcmFt
ZVNlbGVjdGlvbiYgc2VsZWN0aW9uLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgdGVsZXBob25lTnVt
YmVycywgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIHBvaW50KQogewotICAgIG1fcGFnZS0+aGFu
ZGxlU2VsZWN0aW9uU2VydmljZUNsaWNrKHNlbGVjdGlvbiwgdGVsZXBob25lTnVtYmVycywgcG9p
bnQpOworICAgIG1fcGFnZS5oYW5kbGVTZWxlY3Rpb25TZXJ2aWNlQ2xpY2soc2VsZWN0aW9uLCB0
ZWxlcGhvbmVOdW1iZXJzLCBwb2ludCk7CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpoYXNS
ZWxldmFudFNlbGVjdGlvblNlcnZpY2VzKGJvb2wgaXNUZXh0T25seSkgY29uc3QKIHsKICAgICBy
ZXR1cm4gKGlzVGV4dE9ubHkgJiYgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuaGFzU2VsZWN0aW9u
U2VydmljZXMoKSkgfHwgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuaGFzUmljaENvbnRlbnRTZXJ2
aWNlcygpOwogfQorCiAjZW5kaWYKIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnNob3VsZERpc3Bh
dGNoRmFrZU1vdXNlTW92ZUV2ZW50cygpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+c2hv
dWxkRGlzcGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKCk7CisgICAgcmV0dXJuIG1fcGFnZS5zaG91
bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHMoKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGll
bnQ6OmhhbmRsZUF1dG9GaWxsQnV0dG9uQ2xpY2soSFRNTElucHV0RWxlbWVudCYgaW5wdXRFbGVt
ZW50KQpAQCAtMTExOSw2NCArMTE0OSw2NSBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6aGFuZGxl
QXV0b0ZpbGxCdXR0b25DbGljayhIVE1MSW5wdXRFbGVtZW50JiBpbnB1dEVsZW1lbnQpCiAKICAg
ICAvLyBOb3RpZnkgdGhlIGJ1bmRsZSBjbGllbnQuCiAgICAgYXV0byBub2RlSGFuZGxlID0gSW5q
ZWN0ZWRCdW5kbGVOb2RlSGFuZGxlOjpnZXRPckNyZWF0ZShpbnB1dEVsZW1lbnQpOwotICAgIG1f
cGFnZS0+aW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLmRpZENsaWNrQXV0b0ZpbGxCdXR0b24oKm1f
cGFnZSwgbm9kZUhhbmRsZS5nZXQoKSwgdXNlckRhdGEpOworICAgIG1fcGFnZS5pbmplY3RlZEJ1
bmRsZVVJQ2xpZW50KCkuZGlkQ2xpY2tBdXRvRmlsbEJ1dHRvbihtX3BhZ2UsIG5vZGVIYW5kbGUu
Z2V0KCksIHVzZXJEYXRhKTsKIAogICAgIC8vIE5vdGlmeSB0aGUgVUlQcm9jZXNzLgotICAgIG1f
cGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpIYW5kbGVBdXRvRmlsbEJ1dHRvbkNs
aWNrKFVzZXJEYXRhKFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnRyYW5zZm9ybU9iamVjdHNUb0hh
bmRsZXModXNlckRhdGEuZ2V0KCkpLmdldCgpKSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6OkhhbmRsZUF1dG9GaWxsQnV0dG9uQ2xpY2soVXNlckRhdGEoV2ViUHJv
Y2Vzczo6c2luZ2xldG9uKCkudHJhbnNmb3JtT2JqZWN0c1RvSGFuZGxlcyh1c2VyRGF0YS5nZXQo
KSkuZ2V0KCkpKSk7CiB9CiAKICNpZiBFTkFCTEUoV0lSRUxFU1NfUExBWUJBQ0tfVEFSR0VUKSAm
JiAhUExBVEZPUk0oSU9TKQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6YWRkUGxheWJhY2tUYXJn
ZXRQaWNrZXJDbGllbnQodWludDY0X3QgY29udGV4dElkKQogewotICAgIG1fcGFnZS0+c2VuZChN
ZXNzYWdlczo6V2ViUGFnZVByb3h5OjpBZGRQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudChjb250
ZXh0SWQpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpBZGRQbGF5
YmFja1RhcmdldFBpY2tlckNsaWVudChjb250ZXh0SWQpKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVD
bGllbnQ6OnJlbW92ZVBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2NF90IGNvbnRleHRJ
ZCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UmVtb3ZlUGxh
eWJhY2tUYXJnZXRQaWNrZXJDbGllbnQoY29udGV4dElkKSk7CisgICAgbV9wYWdlLnNlbmQoTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6UmVtb3ZlUGxheWJhY2tUYXJnZXRQaWNrZXJDbGllbnQoY29u
dGV4dElkKSk7CiB9CiAKLQogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNob3dQbGF5YmFja1Rhcmdl
dFBpY2tlcih1aW50NjRfdCBjb250ZXh0SWQsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBwb3Np
dGlvbiwgYm9vbCBpc1ZpZGVvKQogewotICAgIEZyYW1lVmlldyogZnJhbWVWaWV3ID0gbV9wYWdl
LT5tYWluRnJhbWUoKS0+dmlldygpOworICAgIEZyYW1lVmlldyogZnJhbWVWaWV3ID0gbV9wYWdl
Lm1haW5GcmFtZSgpLT52aWV3KCk7CiAgICAgRmxvYXRSZWN0IHJlY3QoZnJhbWVWaWV3LT5jb250
ZW50c1RvUm9vdFZpZXcoZnJhbWVWaWV3LT53aW5kb3dUb0NvbnRlbnRzKHBvc2l0aW9uKSksIEZs
b2F0U2l6ZSgpKTsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2hv
d1BsYXliYWNrVGFyZ2V0UGlja2VyKGNvbnRleHRJZCwgcmVjdCwgaXNWaWRlbykpOworICAgIG1f
cGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNob3dQbGF5YmFja1RhcmdldFBpY2tl
cihjb250ZXh0SWQsIHJlY3QsIGlzVmlkZW8pKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6
OnBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50U3RhdGVEaWRDaGFuZ2UodWludDY0X3QgY29udGV4
dElkLCBXZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpNZWRpYVN0YXRlRmxhZ3Mgc3RhdGUpCiB7Ci0g
ICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlBsYXliYWNrVGFyZ2V0UGlj
a2VyQ2xpZW50U3RhdGVEaWRDaGFuZ2UoY29udGV4dElkLCBzdGF0ZSkpOworICAgIG1fcGFnZS5z
ZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50U3Rh
dGVEaWRDaGFuZ2UoY29udGV4dElkLCBzdGF0ZSkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVu
dDo6c2V0TW9ja01lZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJFbmFibGVkKGJvb2wgZW5hYmxlZCkK
IHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0TW9ja01lZGlh
UGxheWJhY2tUYXJnZXRQaWNrZXJFbmFibGVkKGVuYWJsZWQpKTsKKyAgICBtX3BhZ2Uuc2VuZChN
ZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVu
YWJsZWQoZW5hYmxlZCkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0TW9ja01lZGlh
UGxheWJhY2tUYXJnZXRQaWNrZXJTdGF0ZShjb25zdCBTdHJpbmcmIG5hbWUsIFdlYkNvcmU6Ok1l
ZGlhUGxheWJhY2tUYXJnZXRDb250ZXh0OjpTdGF0ZSBzdGF0ZSkKIHsKLSAgICBtX3BhZ2UtPnNl
bmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0TW9ja01lZGlhUGxheWJhY2tUYXJnZXRQaWNr
ZXJTdGF0ZShuYW1lLCBzdGF0ZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OlNldE1vY2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyU3RhdGUobmFtZSwgc3RhdGUp
KTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjppbWFnZU9yTWVkaWFEb2N1
bWVudFNpemVDaGFuZ2VkKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIG5ld1NpemUpCiB7Ci0gICAg
bV9wYWdlLT5pbWFnZU9yTWVkaWFEb2N1bWVudFNpemVDaGFuZ2VkKG5ld1NpemUpOworICAgIG1f
cGFnZS5pbWFnZU9yTWVkaWFEb2N1bWVudFNpemVDaGFuZ2VkKG5ld1NpemUpOwogfQogCi0jaWYg
RU5BQkxFKFZJREVPKQotI2lmIFVTRShHU1RSRUFNRVIpCisjaWYgRU5BQkxFKFZJREVPKSAmJiBV
U0UoR1NUUkVBTUVSKQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6cmVxdWVzdEluc3RhbGxNaXNz
aW5nTWVkaWFQbHVnaW5zKGNvbnN0IFN0cmluZyYgZGV0YWlscywgY29uc3QgU3RyaW5nJiBkZXNj
cmlwdGlvbiwgV2ViQ29yZTo6TWVkaWFQbGF5ZXJSZXF1ZXN0SW5zdGFsbE1pc3NpbmdQbHVnaW5z
Q2FsbGJhY2smIGNhbGxiYWNrKQogewotICAgIG1fcGFnZS0+cmVxdWVzdEluc3RhbGxNaXNzaW5n
TWVkaWFQbHVnaW5zKGRldGFpbHMsIGRlc2NyaXB0aW9uLCBjYWxsYmFjayk7CisgICAgbV9wYWdl
LnJlcXVlc3RJbnN0YWxsTWlzc2luZ01lZGlhUGx1Z2lucyhkZXRhaWxzLCBkZXNjcmlwdGlvbiwg
Y2FsbGJhY2spOwogfQorCiAjZW5kaWYKLSNlbmRpZiAvLyBFTkFCTEUoVklERU8pCiAKIHZvaWQg
V2ViQ2hyb21lQ2xpZW50OjpkaWRJbnZhbGlkYXRlRG9jdW1lbnRNYXJrZXJSZWN0cygpCiB7Ci0g
ICAgbV9wYWdlLT5maW5kQ29udHJvbGxlcigpLmRpZEludmFsaWRhdGVEb2N1bWVudE1hcmtlclJl
Y3RzKCk7CisgICAgbV9wYWdlLmZpbmRDb250cm9sbGVyKCkuZGlkSW52YWxpZGF0ZURvY3VtZW50
TWFya2VyUmVjdHMoKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5o
IGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGll
bnQuaAppbmRleCBhZjkwYjM4ZGQ5NWYzMmFmNDhhNDU4N2JhMjdmMmZiYzVkN2Q2YjFkLi5kNGE5
OTFiMjc0ODYwZmZjMzJkZjM0ZTBmMWJjNDczN2FhYjkwZTAwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50
LmgKQEAgLTI2LDE5OCArMjYsMTk2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaW5jbHVkZSAiV2Vi
RnJhbWUuaCIKICNpbmNsdWRlIDxXZWJDb3JlL0Nocm9tZUNsaWVudC5oPgotI2luY2x1ZGUgPFdl
YkNvcmUvVmlld3BvcnRBcmd1bWVudHMuaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcu
aD4KIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKK2NsYXNzIFdlYkZyYW1lOwogY2xhc3MgV2ViUGFn
ZTsKIAotY2xhc3MgV2ViQ2hyb21lQ2xpZW50IDogcHVibGljIFdlYkNvcmU6OkNocm9tZUNsaWVu
dCB7CitjbGFzcyBXZWJDaHJvbWVDbGllbnQgZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6Q2hyb21l
Q2xpZW50IHsKIHB1YmxpYzoKLSAgICBXZWJDaHJvbWVDbGllbnQoV2ViUGFnZSogcGFnZSkKLSAg
ICAgICAgOiBtX2NhY2hlZE1haW5GcmFtZUhhc0hvcml6b250YWxTY3JvbGxiYXIoZmFsc2UpCi0g
ICAgICAgICwgbV9jYWNoZWRNYWluRnJhbWVIYXNWZXJ0aWNhbFNjcm9sbGJhcihmYWxzZSkKLSAg
ICAgICAgLCBtX3BhZ2UocGFnZSkKLSAgICB7Ci0gICAgfQotICAgIAotICAgIFdlYlBhZ2UqIHBh
Z2UoKSBjb25zdCB7IHJldHVybiBtX3BhZ2U7IH0KKyAgICBXZWJDaHJvbWVDbGllbnQoV2ViUGFn
ZSYpOwogCi0gICAgdmlydHVhbCB2b2lkKiB3ZWJWaWV3KCkgY29uc3QgeyByZXR1cm4gMDsgfQor
ICAgIFdlYlBhZ2UmIHBhZ2UoKSBjb25zdCB7IHJldHVybiBtX3BhZ2U7IH0KIAogcHJpdmF0ZToK
LSAgICB2b2lkIGNocm9tZURlc3Ryb3llZCgpIG92ZXJyaWRlOworICAgIH5XZWJDaHJvbWVDbGll
bnQoKTsKKworICAgIHZvaWQgY2hyb21lRGVzdHJveWVkKCkgZmluYWw7CiAgICAgCi0gICAgdm9p
ZCBzZXRXaW5kb3dSZWN0KGNvbnN0IFdlYkNvcmU6OkZsb2F0UmVjdCYpIG92ZXJyaWRlOwotICAg
IFdlYkNvcmU6OkZsb2F0UmVjdCB3aW5kb3dSZWN0KCkgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRX
aW5kb3dSZWN0KGNvbnN0IFdlYkNvcmU6OkZsb2F0UmVjdCYpIGZpbmFsOworICAgIFdlYkNvcmU6
OkZsb2F0UmVjdCB3aW5kb3dSZWN0KCkgZmluYWw7CiAgICAgCi0gICAgV2ViQ29yZTo6RmxvYXRS
ZWN0IHBhZ2VSZWN0KCkgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6RmxvYXRSZWN0IHBhZ2VSZWN0
KCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBmb2N1cygpIG92ZXJyaWRlOwotICAgIHZvaWQgdW5m
b2N1cygpIG92ZXJyaWRlOworICAgIHZvaWQgZm9jdXMoKSBmaW5hbDsKKyAgICB2b2lkIHVuZm9j
dXMoKSBmaW5hbDsKICAgICAKLSAgICBib29sIGNhblRha2VGb2N1cyhXZWJDb3JlOjpGb2N1c0Rp
cmVjdGlvbikgb3ZlcnJpZGU7Ci0gICAgdm9pZCB0YWtlRm9jdXMoV2ViQ29yZTo6Rm9jdXNEaXJl
Y3Rpb24pIG92ZXJyaWRlOworICAgIGJvb2wgY2FuVGFrZUZvY3VzKFdlYkNvcmU6OkZvY3VzRGly
ZWN0aW9uKSBmaW5hbDsKKyAgICB2b2lkIHRha2VGb2N1cyhXZWJDb3JlOjpGb2N1c0RpcmVjdGlv
bikgZmluYWw7CiAKLSAgICB2b2lkIGZvY3VzZWRFbGVtZW50Q2hhbmdlZChXZWJDb3JlOjpFbGVt
ZW50Kikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBmb2N1c2VkRnJhbWVDaGFuZ2VkKFdlYkNvcmU6OkZy
YW1lKikgb3ZlcnJpZGU7CisgICAgdm9pZCBmb2N1c2VkRWxlbWVudENoYW5nZWQoV2ViQ29yZTo6
RWxlbWVudCopIGZpbmFsOworICAgIHZvaWQgZm9jdXNlZEZyYW1lQ2hhbmdlZChXZWJDb3JlOjpG
cmFtZSopIGZpbmFsOwogCiAgICAgLy8gVGhlIEZyYW1lIHBvaW50ZXIgcHJvdmlkZXMgdGhlIENo
cm9tZUNsaWVudCB3aXRoIGNvbnRleHQgYWJvdXQgd2hpY2gKICAgICAvLyBGcmFtZSB3YW50cyB0
byBjcmVhdGUgdGhlIG5ldyBQYWdlLiAgQWxzbywgdGhlIG5ld2x5IGNyZWF0ZWQgd2luZG93CiAg
ICAgLy8gc2hvdWxkIG5vdCBiZSBzaG93biB0byB0aGUgdXNlciB1bnRpbCB0aGUgQ2hyb21lQ2xp
ZW50IG9mIHRoZSBuZXdseQogICAgIC8vIGNyZWF0ZWQgUGFnZSBoYXMgaXRzIHNob3cgbWV0aG9k
IGNhbGxlZC4KLSAgICBXZWJDb3JlOjpQYWdlKiBjcmVhdGVXaW5kb3coV2ViQ29yZTo6RnJhbWUq
LCBjb25zdCBXZWJDb3JlOjpGcmFtZUxvYWRSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6V2luZG93
RmVhdHVyZXMmLCBjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJikgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBzaG93KCkgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6UGFnZSogY3JlYXRlV2luZG93
KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV2ViQ29yZTo6RnJhbWVMb2FkUmVxdWVzdCYsIGNvbnN0
IFdlYkNvcmU6OldpbmRvd0ZlYXR1cmVzJiwgY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlv
biYpIGZpbmFsOworICAgIHZvaWQgc2hvdygpIGZpbmFsOwogICAgIAotICAgIGJvb2wgY2FuUnVu
TW9kYWwoKSBvdmVycmlkZTsKLSAgICB2b2lkIHJ1bk1vZGFsKCkgb3ZlcnJpZGU7CisgICAgYm9v
bCBjYW5SdW5Nb2RhbCgpIGZpbmFsOworICAgIHZvaWQgcnVuTW9kYWwoKSBmaW5hbDsKICAgICAK
LSAgICB2b2lkIHNldFRvb2xiYXJzVmlzaWJsZShib29sKSBvdmVycmlkZTsKLSAgICBib29sIHRv
b2xiYXJzVmlzaWJsZSgpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0VG9vbGJhcnNWaXNpYmxlKGJv
b2wpIGZpbmFsOworICAgIGJvb2wgdG9vbGJhcnNWaXNpYmxlKCkgZmluYWw7CiAgICAgCi0gICAg
dm9pZCBzZXRTdGF0dXNiYXJWaXNpYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJvb2wgc3RhdHVz
YmFyVmlzaWJsZSgpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0U3RhdHVzYmFyVmlzaWJsZShib29s
KSBmaW5hbDsKKyAgICBib29sIHN0YXR1c2JhclZpc2libGUoKSBmaW5hbDsKICAgICAKLSAgICB2
b2lkIHNldFNjcm9sbGJhcnNWaXNpYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJvb2wgc2Nyb2xs
YmFyc1Zpc2libGUoKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldFNjcm9sbGJhcnNWaXNpYmxlKGJv
b2wpIGZpbmFsOworICAgIGJvb2wgc2Nyb2xsYmFyc1Zpc2libGUoKSBmaW5hbDsKICAgICAKLSAg
ICB2b2lkIHNldE1lbnViYXJWaXNpYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJvb2wgbWVudWJh
clZpc2libGUoKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldE1lbnViYXJWaXNpYmxlKGJvb2wpIGZp
bmFsOworICAgIGJvb2wgbWVudWJhclZpc2libGUoKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHNl
dFJlc2l6YWJsZShib29sKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldFJlc2l6YWJsZShib29sKSBm
aW5hbDsKICAgICAKLSAgICB2b2lkIGFkZE1lc3NhZ2VUb0NvbnNvbGUoSlNDOjpNZXNzYWdlU291
cmNlLCBKU0M6Ok1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCB1bnNpZ25lZCBs
aW5lTnVtYmVyLCB1bnNpZ25lZCBjb2x1bW5OdW1iZXIsIGNvbnN0IFN0cmluZyYgc291cmNlSUQp
IG92ZXJyaWRlOworICAgIHZvaWQgYWRkTWVzc2FnZVRvQ29uc29sZShKU0M6Ok1lc3NhZ2VTb3Vy
Y2UsIEpTQzo6TWVzc2FnZUxldmVsLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIHVuc2lnbmVkIGxp
bmVOdW1iZXIsIHVuc2lnbmVkIGNvbHVtbk51bWJlciwgY29uc3QgU3RyaW5nJiBzb3VyY2VJRCkg
ZmluYWw7CiAgICAgCi0gICAgYm9vbCBjYW5SdW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoKSBv
dmVycmlkZTsKLSAgICBib29sIHJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbChjb25zdCBTdHJp
bmcmIG1lc3NhZ2UsIFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7CisgICAgYm9vbCBjYW5SdW5C
ZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoKSBmaW5hbDsKKyAgICBib29sIHJ1bkJlZm9yZVVubG9h
ZENvbmZpcm1QYW5lbChjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIFdlYkNvcmU6OkZyYW1lKikgZmlu
YWw7CiAgICAgCi0gICAgdm9pZCBjbG9zZVdpbmRvd1Nvb24oKSBvdmVycmlkZTsKKyAgICB2b2lk
IGNsb3NlV2luZG93U29vbigpIGZpbmFsOwogICAgIAotICAgIHZvaWQgcnVuSmF2YVNjcmlwdEFs
ZXJ0KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBy
dW5KYXZhU2NyaXB0Q29uZmlybShXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFN0cmluZyYpIG92ZXJy
aWRlOwotICAgIGJvb2wgcnVuSmF2YVNjcmlwdFByb21wdChXZWJDb3JlOjpGcmFtZSosIGNvbnN0
IFN0cmluZyYgbWVzc2FnZSwgY29uc3QgU3RyaW5nJiBkZWZhdWx0VmFsdWUsIFN0cmluZyYgcmVz
dWx0KSBvdmVycmlkZTsKLSAgICB2b2lkIHNldFN0YXR1c2JhclRleHQoY29uc3QgU3RyaW5nJikg
b3ZlcnJpZGU7Ci0KLSAgICBXZWJDb3JlOjpLZXlib2FyZFVJTW9kZSBrZXlib2FyZFVJTW9kZSgp
IG92ZXJyaWRlOwotCi0gICAgLy8gSG9zdFdpbmRvdyBtZW1iZXIgZnVuY3Rpb24gb3ZlcnJpZGVz
LgotICAgIHZvaWQgaW52YWxpZGF0ZVJvb3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBv
dmVycmlkZTsKLSAgICB2b2lkIGludmFsaWRhdGVDb250ZW50c0FuZFJvb3RWaWV3KGNvbnN0IFdl
YkNvcmU6OkludFJlY3QmKSBvdmVycmlkZTsKLSAgICB2b2lkIGludmFsaWRhdGVDb250ZW50c0Zv
clNsb3dTY3JvbGwoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIG92ZXJyaWRlOwotICAgIHZvaWQg
c2Nyb2xsKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIHNjcm9sbERlbHRhLCBjb25zdCBXZWJDb3Jl
OjpJbnRSZWN0JiBzY3JvbGxSZWN0LCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiBjbGlwUmVjdCkg
b3ZlcnJpZGU7CisgICAgdm9pZCBydW5KYXZhU2NyaXB0QWxlcnQoV2ViQ29yZTo6RnJhbWUqLCBj
b25zdCBTdHJpbmcmKSBmaW5hbDsKKyAgICBib29sIHJ1bkphdmFTY3JpcHRDb25maXJtKFdlYkNv
cmU6OkZyYW1lKiwgY29uc3QgU3RyaW5nJikgZmluYWw7CisgICAgYm9vbCBydW5KYXZhU2NyaXB0
UHJvbXB0KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjb25zdCBTdHJp
bmcmIGRlZmF1bHRWYWx1ZSwgU3RyaW5nJiByZXN1bHQpIGZpbmFsOworICAgIHZvaWQgc2V0U3Rh
dHVzYmFyVGV4dChjb25zdCBTdHJpbmcmKSBmaW5hbDsKKworICAgIFdlYkNvcmU6OktleWJvYXJk
VUlNb2RlIGtleWJvYXJkVUlNb2RlKCkgZmluYWw7CisKKyAgICAvLyBIb3N0V2luZG93IG1lbWJl
ciBmdW5jdGlvbiBmaW5hbHMuCisgICAgdm9pZCBpbnZhbGlkYXRlUm9vdFZpZXcoY29uc3QgV2Vi
Q29yZTo6SW50UmVjdCYpIGZpbmFsOworICAgIHZvaWQgaW52YWxpZGF0ZUNvbnRlbnRzQW5kUm9v
dFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGZpbmFsOworICAgIHZvaWQgaW52YWxpZGF0
ZUNvbnRlbnRzRm9yU2xvd1Njcm9sbChjb25zdCBXZWJDb3JlOjpJbnRSZWN0JikgZmluYWw7Cisg
ICAgdm9pZCBzY3JvbGwoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgc2Nyb2xsRGVsdGEsIGNvbnN0
IFdlYkNvcmU6OkludFJlY3QmIHNjcm9sbFJlY3QsIGNvbnN0IFdlYkNvcmU6OkludFJlY3QmIGNs
aXBSZWN0KSBmaW5hbDsKKwogI2lmIFVTRShDT09SRElOQVRFRF9HUkFQSElDUykKLSAgICB2b2lk
IGRlbGVnYXRlZFNjcm9sbFJlcXVlc3RlZChjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYgc2Nyb2xs
T2Zmc2V0KSBvdmVycmlkZTsKKyAgICB2b2lkIGRlbGVnYXRlZFNjcm9sbFJlcXVlc3RlZChjb25z
dCBXZWJDb3JlOjpJbnRQb2ludCYgc2Nyb2xsT2Zmc2V0KSBmaW5hbDsKICNlbmRpZgotICAgIFdl
YkNvcmU6OkludFBvaW50IHNjcmVlblRvUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQm
KSBjb25zdCBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpJbnRSZWN0IHJvb3RWaWV3VG9TY3JlZW4o
Y29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGNvbnN0IG92ZXJyaWRlOworCisgICAgV2ViQ29yZTo6
SW50UG9pbnQgc2NyZWVuVG9Sb290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIGNvbnN0
IGZpbmFsOworICAgIFdlYkNvcmU6OkludFJlY3Qgcm9vdFZpZXdUb1NjcmVlbihjb25zdCBXZWJD
b3JlOjpJbnRSZWN0JikgY29uc3QgZmluYWw7CisKICNpZiBQTEFURk9STShJT1MpCi0gICAgV2Vi
Q29yZTo6SW50UG9pbnQgYWNjZXNzaWJpbGl0eVNjcmVlblRvUm9vdFZpZXcoY29uc3QgV2ViQ29y
ZTo6SW50UG9pbnQmKSBjb25zdCBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpJbnRSZWN0IHJvb3RW
aWV3VG9BY2Nlc3NpYmlsaXR5U2NyZWVuKGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBjb25zdCBv
dmVycmlkZTsKKyAgICBXZWJDb3JlOjpJbnRQb2ludCBhY2Nlc3NpYmlsaXR5U2NyZWVuVG9Sb290
Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIGNvbnN0IGZpbmFsOworICAgIFdlYkNvcmU6
OkludFJlY3Qgcm9vdFZpZXdUb0FjY2Vzc2liaWxpdHlTY3JlZW4oY29uc3QgV2ViQ29yZTo6SW50
UmVjdCYpIGNvbnN0IGZpbmFsOwogI2VuZGlmCi0gICAgUGxhdGZvcm1QYWdlQ2xpZW50IHBsYXRm
b3JtUGFnZUNsaWVudCgpIGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQgY29udGVudHNTaXplQ2hh
bmdlZChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6OkludFNpemUmKSBjb25zdCBvdmVy
cmlkZTsKLSAgICB2b2lkIHNjcm9sbFJlY3RJbnRvVmlldyhjb25zdCBXZWJDb3JlOjpJbnRSZWN0
JikgY29uc3Qgb3ZlcnJpZGU7IC8vIEN1cnJlbnRseSBvbmx5IE1hYyBoYXMgYSBub24gZW1wdHkg
aW1wbGVtZW50YXRpb24uCiAKLSAgICBib29sIHNob3VsZFVuYXZhaWxhYmxlUGx1Z2luTWVzc2Fn
ZUJlQnV0dG9uKFdlYkNvcmU6OlJlbmRlckVtYmVkZGVkT2JqZWN0OjpQbHVnaW5VbmF2YWlsYWJp
bGl0eVJlYXNvbikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCB1bmF2YWlsYWJsZVBsdWdpbkJ1
dHRvbkNsaWNrZWQoV2ViQ29yZTo6RWxlbWVudCosIFdlYkNvcmU6OlJlbmRlckVtYmVkZGVkT2Jq
ZWN0OjpQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbikgY29uc3Qgb3ZlcnJpZGU7CisgICAgUGxh
dGZvcm1QYWdlQ2xpZW50IHBsYXRmb3JtUGFnZUNsaWVudCgpIGNvbnN0IGZpbmFsOworICAgIHZv
aWQgY29udGVudHNTaXplQ2hhbmdlZChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6Oklu
dFNpemUmKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIHNjcm9sbFJlY3RJbnRvVmlldyhjb25zdCBX
ZWJDb3JlOjpJbnRSZWN0JikgY29uc3QgZmluYWw7IC8vIEN1cnJlbnRseSBvbmx5IE1hYyBoYXMg
YSBub24gZW1wdHkgaW1wbGVtZW50YXRpb24uCiAKLSAgICB2b2lkIHNjcm9sbGJhcnNNb2RlRGlk
Q2hhbmdlKCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCBtb3VzZURpZE1vdmVPdmVyRWxlbWVu
dChjb25zdCBXZWJDb3JlOjpIaXRUZXN0UmVzdWx0JiwgdW5zaWduZWQgbW9kaWZpZXJGbGFncykg
b3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRVbmF2YWlsYWJsZVBsdWdpbk1lc3NhZ2VCZUJ1dHRv
bihXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFz
b24pIGNvbnN0IGZpbmFsOworICAgIHZvaWQgdW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2Vk
KFdlYkNvcmU6OkVsZW1lbnQqLCBXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2lu
VW5hdmFpbGFiaWxpdHlSZWFzb24pIGNvbnN0IGZpbmFsOwogCi0gICAgdm9pZCBzZXRUb29sVGlw
KGNvbnN0IFN0cmluZyYsIFdlYkNvcmU6OlRleHREaXJlY3Rpb24pIG92ZXJyaWRlOworICAgIHZv
aWQgc2Nyb2xsYmFyc01vZGVEaWRDaGFuZ2UoKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIG1vdXNl
RGlkTW92ZU92ZXJFbGVtZW50KGNvbnN0IFdlYkNvcmU6OkhpdFRlc3RSZXN1bHQmLCB1bnNpZ25l
ZCBtb2RpZmllckZsYWdzKSBmaW5hbDsKKworICAgIHZvaWQgc2V0VG9vbFRpcChjb25zdCBTdHJp
bmcmLCBXZWJDb3JlOjpUZXh0RGlyZWN0aW9uKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHByaW50
KFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7CisgICAgdm9pZCBwcmludChXZWJDb3JlOjpGcmFt
ZSopIGZpbmFsOwogCi0gICAgdm9pZCBleGNlZWRlZERhdGFiYXNlUXVvdGEoV2ViQ29yZTo6RnJh
bWUqLCBjb25zdCBTdHJpbmcmIGRhdGFiYXNlTmFtZSwgV2ViQ29yZTo6RGF0YWJhc2VEZXRhaWxz
KSBvdmVycmlkZTsKKyAgICB2b2lkIGV4Y2VlZGVkRGF0YWJhc2VRdW90YShXZWJDb3JlOjpGcmFt
ZSosIGNvbnN0IFN0cmluZyYgZGF0YWJhc2VOYW1lLCBXZWJDb3JlOjpEYXRhYmFzZURldGFpbHMp
IGZpbmFsOwogCi0gICAgdm9pZCByZWFjaGVkTWF4QXBwQ2FjaGVTaXplKGludDY0X3Qgc3BhY2VO
ZWVkZWQpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVhY2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5R
dW90YShXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiosIGludDY0X3Qgc3BhY2VOZWVkZWQpIG92ZXJy
aWRlOworICAgIHZvaWQgcmVhY2hlZE1heEFwcENhY2hlU2l6ZShpbnQ2NF90IHNwYWNlTmVlZGVk
KSBmaW5hbDsKKyAgICB2b2lkIHJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoV2Vi
Q29yZTo6U2VjdXJpdHlPcmlnaW4qLCBpbnQ2NF90IHNwYWNlTmVlZGVkKSBmaW5hbDsKIAogI2lm
IEVOQUJMRShEQVNIQk9BUkRfU1VQUE9SVCkKLSAgICB2b2lkIGFubm90YXRlZFJlZ2lvbnNDaGFu
Z2VkKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBhbm5vdGF0ZWRSZWdpb25zQ2hhbmdlZCgpIGZpbmFs
OwogI2VuZGlmCiAKLSAgICBib29sIHNob3VsZFJlcGxhY2VXaXRoR2VuZXJhdGVkRmlsZUZvclVw
bG9hZChjb25zdCBTdHJpbmcmIHBhdGgsIFN0cmluZyYgZ2VuZXJhdGVkRmlsZW5hbWUpIG92ZXJy
aWRlOwotICAgIFN0cmluZyBnZW5lcmF0ZVJlcGxhY2VtZW50RmlsZShjb25zdCBTdHJpbmcmIHBh
dGgpIG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkUmVwbGFjZVdpdGhHZW5lcmF0ZWRGaWxlRm9y
VXBsb2FkKGNvbnN0IFN0cmluZyYgcGF0aCwgU3RyaW5nJiBnZW5lcmF0ZWRGaWxlbmFtZSkgZmlu
YWw7CisgICAgU3RyaW5nIGdlbmVyYXRlUmVwbGFjZW1lbnRGaWxlKGNvbnN0IFN0cmluZyYgcGF0
aCkgZmluYWw7CiAgICAgCiAjaWYgRU5BQkxFKElOUFVUX1RZUEVfQ09MT1IpCi0gICAgc3RkOjp1
bmlxdWVfcHRyPFdlYkNvcmU6OkNvbG9yQ2hvb3Nlcj4gY3JlYXRlQ29sb3JDaG9vc2VyKFdlYkNv
cmU6OkNvbG9yQ2hvb3NlckNsaWVudCosIGNvbnN0IFdlYkNvcmU6OkNvbG9yJikgb3ZlcnJpZGU7
CisgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6OkNvbG9yQ2hvb3Nlcj4gY3JlYXRlQ29sb3JD
aG9vc2VyKFdlYkNvcmU6OkNvbG9yQ2hvb3NlckNsaWVudCosIGNvbnN0IFdlYkNvcmU6OkNvbG9y
JikgZmluYWw7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShJT1NfVE9VQ0hfRVZFTlRTKQotICAgIHZv
aWQgZGlkUHJldmVudERlZmF1bHRGb3JFdmVudCgpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkUHJl
dmVudERlZmF1bHRGb3JFdmVudCgpIGZpbmFsOwogI2VuZGlmCiAKICNpZiBQTEFURk9STShJT1Mp
Ci0gICAgdm9pZCBkaWRSZWNlaXZlTW9iaWxlRG9jVHlwZShib29sKSBvdmVycmlkZTsKLSAgICB2
b2lkIHNldE5lZWRzU2Nyb2xsTm90aWZpY2F0aW9ucyhXZWJDb3JlOjpGcmFtZSosIGJvb2wpIG92
ZXJyaWRlOwotICAgIHZvaWQgb2JzZXJ2ZWRDb250ZW50Q2hhbmdlKFdlYkNvcmU6OkZyYW1lKikg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBjbGVhckNvbnRlbnRDaGFuZ2VPYnNlcnZlcnMoV2ViQ29yZTo6
RnJhbWUqKSBvdmVycmlkZTsKLSAgICB2b2lkIG5vdGlmeVJldmVhbGVkU2VsZWN0aW9uQnlTY3Jv
bGxpbmdGcmFtZShXZWJDb3JlOjpGcmFtZSopIG92ZXJyaWRlOwotICAgIGJvb2wgaXNTdG9wcGlu
ZygpIG92ZXJyaWRlOwotCi0gICAgdm9pZCBkaWRMYXlvdXQoTGF5b3V0VHlwZSA9IE5vcm1hbExh
eW91dCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRTdGFydE92ZXJmbG93U2Nyb2xsKCkgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCBkaWRFbmRPdmVyZmxvd1Njcm9sbCgpIG92ZXJyaWRlOwotICAgIGJvb2wg
aGFzU3RhYmxlUGFnZVNjYWxlRmFjdG9yKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRS
ZWNlaXZlTW9iaWxlRG9jVHlwZShib29sKSBmaW5hbDsKKyAgICB2b2lkIHNldE5lZWRzU2Nyb2xs
Tm90aWZpY2F0aW9ucyhXZWJDb3JlOjpGcmFtZSosIGJvb2wpIGZpbmFsOworICAgIHZvaWQgb2Jz
ZXJ2ZWRDb250ZW50Q2hhbmdlKFdlYkNvcmU6OkZyYW1lKikgZmluYWw7CisgICAgdm9pZCBjbGVh
ckNvbnRlbnRDaGFuZ2VPYnNlcnZlcnMoV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKKyAgICB2b2lk
IG5vdGlmeVJldmVhbGVkU2VsZWN0aW9uQnlTY3JvbGxpbmdGcmFtZShXZWJDb3JlOjpGcmFtZSop
IGZpbmFsOworICAgIGJvb2wgaXNTdG9wcGluZygpIGZpbmFsOworCisgICAgdm9pZCBkaWRMYXlv
dXQoTGF5b3V0VHlwZSA9IE5vcm1hbExheW91dCkgZmluYWw7CisgICAgdm9pZCBkaWRTdGFydE92
ZXJmbG93U2Nyb2xsKCkgZmluYWw7CisgICAgdm9pZCBkaWRFbmRPdmVyZmxvd1Njcm9sbCgpIGZp
bmFsOworICAgIGJvb2wgaGFzU3RhYmxlUGFnZVNjYWxlRmFjdG9yKCkgY29uc3QgZmluYWw7CiAK
ICAgICAvLyBGSVhNRTogU2VlIDxyZGFyOi8vcHJvYmxlbS81OTc1NTU5PgotICAgIHZvaWQgc3Vw
cHJlc3NGb3JtTm90aWZpY2F0aW9ucygpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVzdG9yZUZvcm1O
b3RpZmljYXRpb25zKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBzdXBwcmVzc0Zvcm1Ob3RpZmljYXRp
b25zKCkgZmluYWw7CisgICAgdm9pZCByZXN0b3JlRm9ybU5vdGlmaWNhdGlvbnMoKSBmaW5hbDsK
IAotICAgIHZvaWQgYWRkT3JVcGRhdGVTY3JvbGxpbmdMYXllcihXZWJDb3JlOjpOb2RlKiwgUGxh
dGZvcm1MYXllciogc2Nyb2xsaW5nTGF5ZXIsIFBsYXRmb3JtTGF5ZXIqIGNvbnRlbnRzTGF5ZXIs
IGNvbnN0IFdlYkNvcmU6OkludFNpemUmIHNjcm9sbFNpemUsIGJvb2wgYWxsb3dIb3Jpem9udGFs
U2Nyb2xsYmFyLCBib29sIGFsbG93VmVydGljYWxTY3JvbGxiYXIpIG92ZXJyaWRlOwotICAgIHZv
aWQgcmVtb3ZlU2Nyb2xsaW5nTGF5ZXIoV2ViQ29yZTo6Tm9kZSosIFBsYXRmb3JtTGF5ZXIqIHNj
cm9sbGluZ0xheWVyLCBQbGF0Zm9ybUxheWVyKiBjb250ZW50c0xheWVyKSBvdmVycmlkZTsKKyAg
ICB2b2lkIGFkZE9yVXBkYXRlU2Nyb2xsaW5nTGF5ZXIoV2ViQ29yZTo6Tm9kZSosIFBsYXRmb3Jt
TGF5ZXIqIHNjcm9sbGluZ0xheWVyLCBQbGF0Zm9ybUxheWVyKiBjb250ZW50c0xheWVyLCBjb25z
dCBXZWJDb3JlOjpJbnRTaXplJiBzY3JvbGxTaXplLCBib29sIGFsbG93SG9yaXpvbnRhbFNjcm9s
bGJhciwgYm9vbCBhbGxvd1ZlcnRpY2FsU2Nyb2xsYmFyKSBmaW5hbDsKKyAgICB2b2lkIHJlbW92
ZVNjcm9sbGluZ0xheWVyKFdlYkNvcmU6Ok5vZGUqLCBQbGF0Zm9ybUxheWVyKiBzY3JvbGxpbmdM
YXllciwgUGxhdGZvcm1MYXllciogY29udGVudHNMYXllcikgZmluYWw7CiAKLSAgICB2b2lkIHdl
YkFwcE9yaWVudGF0aW9uc1VwZGF0ZWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIHNob3dQbGF5YmFj
a1RhcmdldFBpY2tlcihib29sIGhhc1ZpZGVvKSBvdmVycmlkZTsKKyAgICB2b2lkIHdlYkFwcE9y
aWVudGF0aW9uc1VwZGF0ZWQoKSBmaW5hbDsKKyAgICB2b2lkIHNob3dQbGF5YmFja1RhcmdldFBp
Y2tlcihib29sIGhhc1ZpZGVvKSBmaW5hbDsKIAotICAgIFNlY29uZHMgZXZlbnRUaHJvdHRsaW5n
RGVsYXkoKSBvdmVycmlkZTsKKyAgICBTZWNvbmRzIGV2ZW50VGhyb3R0bGluZ0RlbGF5KCkgZmlu
YWw7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShPUklFTlRBVElPTl9FVkVOVFMpCi0gICAgaW50IGRl
dmljZU9yaWVudGF0aW9uKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgaW50IGRldmljZU9yaWVudGF0
aW9uKCkgY29uc3QgZmluYWw7CiAjZW5kaWYKIAotICAgIHZvaWQgcnVuT3BlblBhbmVsKFdlYkNv
cmU6OkZyYW1lKiwgUGFzc1JlZlB0cjxXZWJDb3JlOjpGaWxlQ2hvb3Nlcj4pIG92ZXJyaWRlOwot
ICAgIHZvaWQgbG9hZEljb25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8U3RyaW5nPiYsIFdlYkNvcmU6
OkZpbGVJY29uTG9hZGVyJikgb3ZlcnJpZGU7CisgICAgdm9pZCBydW5PcGVuUGFuZWwoV2ViQ29y
ZTo6RnJhbWUmLCBXZWJDb3JlOjpGaWxlQ2hvb3NlciYpIGZpbmFsOworICAgIHZvaWQgbG9hZElj
b25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8U3RyaW5nPiYsIFdlYkNvcmU6OkZpbGVJY29uTG9hZGVy
JikgZmluYWw7CiAKICNpZiAhUExBVEZPUk0oSU9TKQotICAgIHZvaWQgc2V0Q3Vyc29yKGNvbnN0
IFdlYkNvcmU6OkN1cnNvciYpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0Q3Vyc29ySGlkZGVuVW50
aWxNb3VzZU1vdmVzKGJvb2wpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0Q3Vyc29yKGNvbnN0IFdl
YkNvcmU6OkN1cnNvciYpIGZpbmFsOworICAgIHZvaWQgc2V0Q3Vyc29ySGlkZGVuVW50aWxNb3Vz
ZU1vdmVzKGJvb2wpIGZpbmFsOwogI2VuZGlmCisKICNpZiBFTkFCTEUoUkVRVUVTVF9BTklNQVRJ
T05fRlJBTUUpICYmICFVU0UoUkVRVUVTVF9BTklNQVRJT05fRlJBTUVfVElNRVIpCi0gICAgdm9p
ZCBzY2hlZHVsZUFuaW1hdGlvbigpIG92ZXJyaWRlOworICAgIHZvaWQgc2NoZWR1bGVBbmltYXRp
b24oKSBmaW5hbDsKICNlbmRpZgogICAgIAogI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCi0gICAg
Ym9vbCByZXF1ZXN0UG9pbnRlckxvY2soKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlcXVlc3RQb2lu
dGVyVW5sb2NrKCkgb3ZlcnJpZGU7CisgICAgYm9vbCByZXF1ZXN0UG9pbnRlckxvY2soKSBmaW5h
bDsKKyAgICB2b2lkIHJlcXVlc3RQb2ludGVyVW5sb2NrKCkgZmluYWw7CiAjZW5kaWYKIAotICAg
IHZvaWQgZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xzKGNvbnN0IFZlY3RvcjxSZWZQdHI8V2ViQ29y
ZTo6RWxlbWVudD4+Jikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBzaG91bGROb3RpZnlPbkZvcm1DaGFu
Z2VzKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRBc3NvY2lhdGVGb3JtQ29udHJvbHMoY29uc3Qg
VmVjdG9yPFJlZlB0cjxXZWJDb3JlOjpFbGVtZW50Pj4mKSBmaW5hbDsKKyAgICBib29sIHNob3Vs
ZE5vdGlmeU9uRm9ybUNoYW5nZXMoKSBmaW5hbDsKIAotICAgIGJvb2wgc2VsZWN0SXRlbVdyaXRp
bmdEaXJlY3Rpb25Jc05hdHVyYWwoKSBvdmVycmlkZTsKLSAgICBib29sIHNlbGVjdEl0ZW1BbGln
bm1lbnRGb2xsb3dzTWVudVdyaXRpbmdEaXJlY3Rpb24oKSBvdmVycmlkZTsKLSAgICBib29sIGhh
c09wZW5lZFBvcHVwKCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgUmVmUHRyPFdlYkNvcmU6OlBvcHVw
TWVudT4gY3JlYXRlUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCopIGNvbnN0IG92
ZXJyaWRlOwotICAgIFJlZlB0cjxXZWJDb3JlOjpTZWFyY2hQb3B1cE1lbnU+IGNyZWF0ZVNlYXJj
aFBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1lbnVDbGllbnQqKSBjb25zdCBvdmVycmlkZTsKKyAg
ICBib29sIHNlbGVjdEl0ZW1Xcml0aW5nRGlyZWN0aW9uSXNOYXR1cmFsKCkgZmluYWw7CisgICAg
Ym9vbCBzZWxlY3RJdGVtQWxpZ25tZW50Rm9sbG93c01lbnVXcml0aW5nRGlyZWN0aW9uKCkgZmlu
YWw7CisgICAgYm9vbCBoYXNPcGVuZWRQb3B1cCgpIGNvbnN0IGZpbmFsOworICAgIFJlZlB0cjxX
ZWJDb3JlOjpQb3B1cE1lbnU+IGNyZWF0ZVBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1lbnVDbGll
bnQqKSBjb25zdCBmaW5hbDsKKyAgICBSZWZQdHI8V2ViQ29yZTo6U2VhcmNoUG9wdXBNZW51PiBj
cmVhdGVTZWFyY2hQb3B1cE1lbnUoV2ViQ29yZTo6UG9wdXBNZW51Q2xpZW50KikgY29uc3QgZmlu
YWw7CiAKLSAgICBXZWJDb3JlOjpHcmFwaGljc0xheWVyRmFjdG9yeSogZ3JhcGhpY3NMYXllckZh
Y3RvcnkoKSBjb25zdCBvdmVycmlkZTsKLSAgICB2b2lkIGF0dGFjaFJvb3RHcmFwaGljc0xheWVy
KFdlYkNvcmU6OkZyYW1lKiwgV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOwotICAg
IHZvaWQgYXR0YWNoVmlld092ZXJsYXlHcmFwaGljc0xheWVyKFdlYkNvcmU6OkZyYW1lKiwgV2Vi
Q29yZTo6R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0TmVlZHNPbmVTaG90
RHJhd2luZ1N5bmNocm9uaXphdGlvbigpIG92ZXJyaWRlOwotICAgIHZvaWQgc2NoZWR1bGVDb21w
b3NpdGluZ0xheWVyRmx1c2goKSBvdmVycmlkZTsKLSAgICBib29sIGFkanVzdExheWVyRmx1c2hU
aHJvdHRsaW5nKFdlYkNvcmU6OkxheWVyRmx1c2hUaHJvdHRsZVN0YXRlOjpGbGFncykgb3ZlcnJp
ZGU7CisgICAgV2ViQ29yZTo6R3JhcGhpY3NMYXllckZhY3RvcnkqIGdyYXBoaWNzTGF5ZXJGYWN0
b3J5KCkgY29uc3QgZmluYWw7CisgICAgdm9pZCBhdHRhY2hSb290R3JhcGhpY3NMYXllcihXZWJD
b3JlOjpGcmFtZSosIFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXIqKSBmaW5hbDsKKyAgICB2b2lkIGF0
dGFjaFZpZXdPdmVybGF5R3JhcGhpY3NMYXllcihXZWJDb3JlOjpGcmFtZSosIFdlYkNvcmU6Okdy
YXBoaWNzTGF5ZXIqKSBmaW5hbDsKKyAgICB2b2lkIHNldE5lZWRzT25lU2hvdERyYXdpbmdTeW5j
aHJvbml6YXRpb24oKSBmaW5hbDsKKyAgICB2b2lkIHNjaGVkdWxlQ29tcG9zaXRpbmdMYXllckZs
dXNoKCkgZmluYWw7CisgICAgYm9vbCBhZGp1c3RMYXllckZsdXNoVGhyb3R0bGluZyhXZWJDb3Jl
OjpMYXllckZsdXNoVGhyb3R0bGVTdGF0ZTo6RmxhZ3MpIGZpbmFsOwogCiAjaWYgVVNFKFJFUVVF
U1RfQU5JTUFUSU9OX0ZSQU1FX0RJU1BMQVlfTU9OSVRPUikKLSAgICBSZWZQdHI8V2ViQ29yZTo6
RGlzcGxheVJlZnJlc2hNb25pdG9yPiBjcmVhdGVEaXNwbGF5UmVmcmVzaE1vbml0b3IoV2ViQ29y
ZTo6UGxhdGZvcm1EaXNwbGF5SUQpIGNvbnN0IG92ZXJyaWRlOworICAgIFJlZlB0cjxXZWJDb3Jl
OjpEaXNwbGF5UmVmcmVzaE1vbml0b3I+IGNyZWF0ZURpc3BsYXlSZWZyZXNoTW9uaXRvcihXZWJD
b3JlOjpQbGF0Zm9ybURpc3BsYXlJRCkgY29uc3QgZmluYWw7CiAjZW5kaWYKIAotICAgIENvbXBv
c2l0aW5nVHJpZ2dlckZsYWdzIGFsbG93ZWRDb21wb3NpdGluZ1RyaWdnZXJzKCkgY29uc3Qgb3Zl
cnJpZGUKKyAgICBDb21wb3NpdGluZ1RyaWdnZXJGbGFncyBhbGxvd2VkQ29tcG9zaXRpbmdUcmln
Z2VycygpIGNvbnN0IGZpbmFsCiAgICAgewogICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8Q29t
cG9zaXRpbmdUcmlnZ2VyRmxhZ3M+KAogICAgICAgICAgICAgVGhyZWVEVHJhbnNmb3JtVHJpZ2dl
ciB8CkBAIC0yMzAsMTE5ICsyMjgsMTIxIEBAIHByaXZhdGU6CiAgICAgICAgICAgICBBbmltYXRp
b25UcmlnZ2VyKTsKICAgICB9CiAKLSAgICBib29sIGxheWVyVHJlZVN0YXRlSXNGcm96ZW4oKSBj
b25zdCBvdmVycmlkZTsKKyAgICBib29sIGxheWVyVHJlZVN0YXRlSXNGcm96ZW4oKSBjb25zdCBm
aW5hbDsKIAogI2lmIEVOQUJMRShBU1lOQ19TQ1JPTExJTkcpCi0gICAgUGFzc1JlZlB0cjxXZWJD
b3JlOjpTY3JvbGxpbmdDb29yZGluYXRvcj4gY3JlYXRlU2Nyb2xsaW5nQ29vcmRpbmF0b3IoV2Vi
Q29yZTo6UGFnZSopIGNvbnN0IG92ZXJyaWRlOworICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6U2Ny
b2xsaW5nQ29vcmRpbmF0b3I+IGNyZWF0ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yKFdlYkNvcmU6OlBh
Z2UqKSBjb25zdCBmaW5hbDsKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oSU9TKQotICAgIHZvaWQg
ZWxlbWVudERpZFJlZm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9kZSopIG92ZXJyaWRlOworICAgIHZv
aWQgZWxlbWVudERpZFJlZm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9kZSopIGZpbmFsOwogI2VuZGlm
CiAKICNpZiAoUExBVEZPUk0oSU9TKSAmJiBIQVZFKEFWS0lUKSkgfHwgKFBMQVRGT1JNKE1BQykg
JiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSkKLSAgICBib29sIHN1cHBvcnRzVmlk
ZW9GdWxsc2NyZWVuKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2Ny
ZWVuTW9kZSkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRVcFBsYXliYWNrQ29udHJvbHNNYW5hZ2Vy
KFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQmKSBvdmVycmlkZTsKLSAgICB2b2lkIGNsZWFyUGxh
eWJhY2tDb250cm9sc01hbmFnZXIoKSBvdmVycmlkZTsKLSAgICB2b2lkIGVudGVyVmlkZW9GdWxs
c2NyZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmLCBXZWJDb3Jl
OjpIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIG92ZXJyaWRlOwot
ICAgIHZvaWQgZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1M
VmlkZW9FbGVtZW50Jikgb3ZlcnJpZGU7Ci0jaWYgUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklE
RU9fUFJFU0VOVEFUSU9OX01PREUpCi0gICAgdm9pZCBleGl0VmlkZW9GdWxsc2NyZWVuVG9Nb2Rl
V2l0aG91dEFuaW1hdGlvbihXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50JiwgV2ViQ29yZTo6SFRN
TE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlKSBvdmVycmlkZTsKKyAgICBi
b29sIHN1cHBvcnRzVmlkZW9GdWxsc2NyZWVuKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVt
czo6VmlkZW9GdWxsc2NyZWVuTW9kZSkgZmluYWw7CisgICAgdm9pZCBzZXRVcFBsYXliYWNrQ29u
dHJvbHNNYW5hZ2VyKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQmKSBmaW5hbDsKKyAgICB2b2lk
IGNsZWFyUGxheWJhY2tDb250cm9sc01hbmFnZXIoKSBmaW5hbDsKKyAgICB2b2lkIGVudGVyVmlk
ZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmLCBX
ZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIGZpbmFs
OworICAgIHZvaWQgZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpI
VE1MVmlkZW9FbGVtZW50JikgZmluYWw7CiAjZW5kaWYKKworI2lmIFBMQVRGT1JNKE1BQykgJiYg
RU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQorICAgIHZvaWQgZXhpdFZpZGVvRnVsbHNj
cmVlblRvTW9kZVdpdGhvdXRBbmltYXRpb24oV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCYsIFdl
YkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZSkgZmluYWw7
CiAjZW5kaWYKIAogI2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQSSkKLSAgICBib29sIHN1cHBvcnRz
RnVsbFNjcmVlbkZvckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6RWxlbWVudCosIGJvb2wgd2l0aEtl
eWJvYXJkKSBvdmVycmlkZTsKLSAgICB2b2lkIGVudGVyRnVsbFNjcmVlbkZvckVsZW1lbnQoV2Vi
Q29yZTo6RWxlbWVudCopIG92ZXJyaWRlOwotICAgIHZvaWQgZXhpdEZ1bGxTY3JlZW5Gb3JFbGVt
ZW50KFdlYkNvcmU6OkVsZW1lbnQqKSBvdmVycmlkZTsKKyAgICBib29sIHN1cHBvcnRzRnVsbFNj
cmVlbkZvckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6RWxlbWVudCosIGJvb2wgd2l0aEtleWJvYXJk
KSBmaW5hbDsKKyAgICB2b2lkIGVudGVyRnVsbFNjcmVlbkZvckVsZW1lbnQoV2ViQ29yZTo6RWxl
bWVudCopIGZpbmFsOworICAgIHZvaWQgZXhpdEZ1bGxTY3JlZW5Gb3JFbGVtZW50KFdlYkNvcmU6
OkVsZW1lbnQqKSBmaW5hbDsKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oQ09DT0EpCi0gICAgdm9p
ZCBlbGVtZW50RGlkRm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9kZSopIG92ZXJyaWRlOwotICAgIHZv
aWQgZWxlbWVudERpZEJsdXIoY29uc3QgV2ViQ29yZTo6Tm9kZSopIG92ZXJyaWRlOworICAgIHZv
aWQgZWxlbWVudERpZEZvY3VzKGNvbnN0IFdlYkNvcmU6Ok5vZGUqKSBmaW5hbDsKKyAgICB2b2lk
IGVsZW1lbnREaWRCbHVyKGNvbnN0IFdlYkNvcmU6Ok5vZGUqKSBmaW5hbDsKIAotICAgIHZvaWQg
bWFrZUZpcnN0UmVzcG9uZGVyKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBtYWtlRmlyc3RSZXNwb25k
ZXIoKSBmaW5hbDsKICNlbmRpZgogCi0gICAgdm9pZCBlbmFibGVTdWRkZW5UZXJtaW5hdGlvbigp
IG92ZXJyaWRlOwotICAgIHZvaWQgZGlzYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkgb3ZlcnJpZGU7
CisgICAgdm9pZCBlbmFibGVTdWRkZW5UZXJtaW5hdGlvbigpIGZpbmFsOworICAgIHZvaWQgZGlz
YWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkgZmluYWw7CiAKICNpZiBQTEFURk9STShJT1MpCi0gICAg
V2ViQ29yZTo6RmxvYXRTaXplIHNjcmVlblNpemUoKSBjb25zdCBvdmVycmlkZTsKLSAgICBXZWJD
b3JlOjpGbG9hdFNpemUgYXZhaWxhYmxlU2NyZWVuU2l6ZSgpIGNvbnN0IG92ZXJyaWRlOworICAg
IFdlYkNvcmU6OkZsb2F0U2l6ZSBzY3JlZW5TaXplKCkgY29uc3QgZmluYWw7CisgICAgV2ViQ29y
ZTo6RmxvYXRTaXplIGF2YWlsYWJsZVNjcmVlblNpemUoKSBjb25zdCBmaW5hbDsKICNlbmRpZgot
ICAgIHZvaWQgZGlzcGF0Y2hWaWV3cG9ydFByb3BlcnRpZXNEaWRDaGFuZ2UoY29uc3QgV2ViQ29y
ZTo6Vmlld3BvcnRBcmd1bWVudHMmKSBjb25zdCBvdmVycmlkZTsKIAotICAgIHZvaWQgbm90aWZ5
U2Nyb2xsZXJUaHVtYklzVmlzaWJsZUluUmVjdChjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jikgb3Zl
cnJpZGU7Ci0gICAgdm9pZCByZWNvbW1lbmRlZFNjcm9sbGJhclN0eWxlRGlkQ2hhbmdlKFdlYkNv
cmU6OlNjcm9sbGJhclN0eWxlIG5ld1N0eWxlKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNo
Vmlld3BvcnRQcm9wZXJ0aWVzRGlkQ2hhbmdlKGNvbnN0IFdlYkNvcmU6OlZpZXdwb3J0QXJndW1l
bnRzJikgY29uc3QgZmluYWw7CiAKLSAgICBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlNjcm9sbGJh
ck92ZXJsYXlTdHlsZT4gcHJlZmVycmVkU2Nyb2xsYmFyT3ZlcmxheVN0eWxlKCkgb3ZlcnJpZGU7
CisgICAgdm9pZCBub3RpZnlTY3JvbGxlclRodW1iSXNWaXNpYmxlSW5SZWN0KGNvbnN0IFdlYkNv
cmU6OkludFJlY3QmKSBmaW5hbDsKKyAgICB2b2lkIHJlY29tbWVuZGVkU2Nyb2xsYmFyU3R5bGVE
aWRDaGFuZ2UoV2ViQ29yZTo6U2Nyb2xsYmFyU3R5bGUgbmV3U3R5bGUpIGZpbmFsOwogCi0gICAg
V2ViQ29yZTo6Q29sb3IgdW5kZXJsYXlDb2xvcigpIGNvbnN0IG92ZXJyaWRlOworICAgIHN0ZDo6
b3B0aW9uYWw8V2ViQ29yZTo6U2Nyb2xsYmFyT3ZlcmxheVN0eWxlPiBwcmVmZXJyZWRTY3JvbGxi
YXJPdmVybGF5U3R5bGUoKSBmaW5hbDsKIAotICAgIHZvaWQgcGFnZUV4dGVuZGVkQmFja2dyb3Vu
ZENvbG9yRGlkQ2hhbmdlKFdlYkNvcmU6OkNvbG9yKSBjb25zdCBvdmVycmlkZTsKKyAgICBXZWJD
b3JlOjpDb2xvciB1bmRlcmxheUNvbG9yKCkgY29uc3QgZmluYWw7CisKKyAgICB2b2lkIHBhZ2VF
eHRlbmRlZEJhY2tncm91bmRDb2xvckRpZENoYW5nZShXZWJDb3JlOjpDb2xvcikgY29uc3QgZmlu
YWw7CiAgICAgCi0gICAgdm9pZCB3aGVlbEV2ZW50SGFuZGxlcnNDaGFuZ2VkKGJvb2wpIG92ZXJy
aWRlOworICAgIHZvaWQgd2hlZWxFdmVudEhhbmRsZXJzQ2hhbmdlZChib29sKSBmaW5hbDsKIAot
ICAgIFN0cmluZyBwbHVnSW5TdGFydExhYmVsVGl0bGUoY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkg
Y29uc3Qgb3ZlcnJpZGU7Ci0gICAgU3RyaW5nIHBsdWdJblN0YXJ0TGFiZWxTdWJ0aXRsZShjb25z
dCBTdHJpbmcmIG1pbWVUeXBlKSBjb25zdCBvdmVycmlkZTsKLSAgICBTdHJpbmcgcGx1Z0luRXh0
cmFTdHlsZVNoZWV0KCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgU3RyaW5nIHBsdWdJbkV4dHJhU2Ny
aXB0KCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgU3RyaW5nIHBsdWdJblN0YXJ0TGFiZWxUaXRsZShj
b25zdCBTdHJpbmcmIG1pbWVUeXBlKSBjb25zdCBmaW5hbDsKKyAgICBTdHJpbmcgcGx1Z0luU3Rh
cnRMYWJlbFN1YnRpdGxlKGNvbnN0IFN0cmluZyYgbWltZVR5cGUpIGNvbnN0IGZpbmFsOworICAg
IFN0cmluZyBwbHVnSW5FeHRyYVN0eWxlU2hlZXQoKSBjb25zdCBmaW5hbDsKKyAgICBTdHJpbmcg
cGx1Z0luRXh0cmFTY3JpcHQoKSBjb25zdCBmaW5hbDsKIAotICAgIHZvaWQgZGlkQWRkSGVhZGVy
TGF5ZXIoV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkQWRk
Rm9vdGVyTGF5ZXIoV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOworICAgIHZvaWQg
ZGlkQWRkSGVhZGVyTGF5ZXIoV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIGZpbmFsOworICAgIHZv
aWQgZGlkQWRkRm9vdGVyTGF5ZXIoV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIGZpbmFsOwogCi0g
ICAgYm9vbCBzaG91bGRVc2VUaWxlZEJhY2tpbmdGb3JGcmFtZVZpZXcoY29uc3QgV2ViQ29yZTo6
RnJhbWVWaWV3KikgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRVc2VUaWxlZEJhY2tp
bmdGb3JGcmFtZVZpZXcoY29uc3QgV2ViQ29yZTo6RnJhbWVWaWV3KikgY29uc3QgZmluYWw7CiAK
LSAgICB2b2lkIGlzUGxheWluZ01lZGlhRGlkQ2hhbmdlKFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6
Ok1lZGlhU3RhdGVGbGFncywgdWludDY0X3QpIG92ZXJyaWRlOworICAgIHZvaWQgaXNQbGF5aW5n
TWVkaWFEaWRDaGFuZ2UoV2ViQ29yZTo6TWVkaWFQcm9kdWNlcjo6TWVkaWFTdGF0ZUZsYWdzLCB1
aW50NjRfdCkgZmluYWw7CiAKICNpZiBFTkFCTEUoTUVESUFfU0VTU0lPTikKLSAgICB2b2lkIGhh
c01lZGlhU2Vzc2lvbldpdGhBY3RpdmVNZWRpYUVsZW1lbnRzRGlkQ2hhbmdlKGJvb2wpIG92ZXJy
aWRlOwotICAgIHZvaWQgbWVkaWFTZXNzaW9uTWV0YWRhdGFEaWRDaGFuZ2UoY29uc3QgV2ViQ29y
ZTo6TWVkaWFTZXNzaW9uTWV0YWRhdGEmKSBvdmVycmlkZTsKLSAgICB2b2lkIGZvY3VzZWRDb250
ZW50TWVkaWFFbGVtZW50RGlkQ2hhbmdlKHVpbnQ2NF90KSBvdmVycmlkZTsKKyAgICB2b2lkIGhh
c01lZGlhU2Vzc2lvbldpdGhBY3RpdmVNZWRpYUVsZW1lbnRzRGlkQ2hhbmdlKGJvb2wpIGZpbmFs
OworICAgIHZvaWQgbWVkaWFTZXNzaW9uTWV0YWRhdGFEaWRDaGFuZ2UoY29uc3QgV2ViQ29yZTo6
TWVkaWFTZXNzaW9uTWV0YWRhdGEmKSBmaW5hbDsKKyAgICB2b2lkIGZvY3VzZWRDb250ZW50TWVk
aWFFbGVtZW50RGlkQ2hhbmdlKHVpbnQ2NF90KSBmaW5hbDsKICNlbmRpZgogCiAjaWYgRU5BQkxF
KFNVQlRMRV9DUllQVE8pCi0gICAgYm9vbCB3cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50
OF90PiYsIFZlY3Rvcjx1aW50OF90PiYpIGNvbnN0IG92ZXJyaWRlOwotICAgIGJvb2wgdW53cmFw
Q3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90PiYsIFZlY3Rvcjx1aW50OF90PiYpIGNvbnN0
IG92ZXJyaWRlOworICAgIGJvb2wgd3JhcENyeXB0b0tleShjb25zdCBWZWN0b3I8dWludDhfdD4m
LCBWZWN0b3I8dWludDhfdD4mKSBjb25zdCBmaW5hbDsKKyAgICBib29sIHVud3JhcENyeXB0b0tl
eShjb25zdCBWZWN0b3I8dWludDhfdD4mLCBWZWN0b3I8dWludDhfdD4mKSBjb25zdCBmaW5hbDsK
ICNlbmRpZgogCiAjaWYgRU5BQkxFKFRFTEVQSE9ORV9OVU1CRVJfREVURUNUSU9OKSAmJiBQTEFU
Rk9STShNQUMpCi0gICAgdm9pZCBoYW5kbGVUZWxlcGhvbmVOdW1iZXJDbGljayhjb25zdCBTdHJp
bmcmIG51bWJlciwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKSBvdmVycmlkZTsKKyAgICB2b2lk
IGhhbmRsZVRlbGVwaG9uZU51bWJlckNsaWNrKGNvbnN0IFN0cmluZyYgbnVtYmVyLCBjb25zdCBX
ZWJDb3JlOjpJbnRQb2ludCYpIGZpbmFsOwogI2VuZGlmCisKICNpZiBFTkFCTEUoU0VSVklDRV9D
T05UUk9MUykKLSAgICB2b2lkIGhhbmRsZVNlbGVjdGlvblNlcnZpY2VDbGljayhXZWJDb3JlOjpG
cmFtZVNlbGVjdGlvbiYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiB0ZWxlcGhvbmVOdW1iZXJzLCBj
b25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIG92ZXJyaWRlOwotICAgIGJvb2wgaGFzUmVsZXZhbnRT
ZWxlY3Rpb25TZXJ2aWNlcyhib29sIGlzVGV4dE9ubHkpIGNvbnN0IG92ZXJyaWRlOworICAgIHZv
aWQgaGFuZGxlU2VsZWN0aW9uU2VydmljZUNsaWNrKFdlYkNvcmU6OkZyYW1lU2VsZWN0aW9uJiwg
Y29uc3QgVmVjdG9yPFN0cmluZz4mIHRlbGVwaG9uZU51bWJlcnMsIGNvbnN0IFdlYkNvcmU6Oklu
dFBvaW50JikgZmluYWw7CisgICAgYm9vbCBoYXNSZWxldmFudFNlbGVjdGlvblNlcnZpY2VzKGJv
b2wgaXNUZXh0T25seSkgY29uc3QgZmluYWw7CiAjZW5kaWYKIAotICAgIGJvb2wgc2hvdWxkRGlz
cGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91
bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHMoKSBjb25zdCBmaW5hbDsKIAotICAgIHZvaWQg
aGFuZGxlQXV0b0ZpbGxCdXR0b25DbGljayhXZWJDb3JlOjpIVE1MSW5wdXRFbGVtZW50Jikgb3Zl
cnJpZGU7CisgICAgdm9pZCBoYW5kbGVBdXRvRmlsbEJ1dHRvbkNsaWNrKFdlYkNvcmU6OkhUTUxJ
bnB1dEVsZW1lbnQmKSBmaW5hbDsKIAogI2lmIEVOQUJMRShXSVJFTEVTU19QTEFZQkFDS19UQVJH
RVQpICYmICFQTEFURk9STShJT1MpCi0gICAgdm9pZCBhZGRQbGF5YmFja1RhcmdldFBpY2tlckNs
aWVudCh1aW50NjRfdCAvKmNvbnRleHRJZCovKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlbW92ZVBs
YXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2NF90IC8qY29udGV4dElkKi8pIG92ZXJyaWRl
OwotICAgIHZvaWQgc2hvd1BsYXliYWNrVGFyZ2V0UGlja2VyKHVpbnQ2NF90IGNvbnRleHRJZCwg
Y29uc3QgV2ViQ29yZTo6SW50UG9pbnQmLCBib29sKSBvdmVycmlkZTsKLSAgICB2b2lkIHBsYXli
YWNrVGFyZ2V0UGlja2VyQ2xpZW50U3RhdGVEaWRDaGFuZ2UodWludDY0X3QsIFdlYkNvcmU6Ok1l
ZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncykgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRNb2Nr
TWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVuYWJsZWQoYm9vbCkgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlclN0YXRlKGNvbnN0IFN0cmluZyYsIFdl
YkNvcmU6Ok1lZGlhUGxheWJhY2tUYXJnZXRDb250ZXh0OjpTdGF0ZSkgb3ZlcnJpZGU7CisgICAg
dm9pZCBhZGRQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudCh1aW50NjRfdCAvKmNvbnRleHRJZCov
KSBmaW5hbDsKKyAgICB2b2lkIHJlbW92ZVBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2
NF90IC8qY29udGV4dElkKi8pIGZpbmFsOworICAgIHZvaWQgc2hvd1BsYXliYWNrVGFyZ2V0UGlj
a2VyKHVpbnQ2NF90IGNvbnRleHRJZCwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmLCBib29sKSBm
aW5hbDsKKyAgICB2b2lkIHBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50U3RhdGVEaWRDaGFuZ2Uo
dWludDY0X3QsIFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncykgZmluYWw7
CisgICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVuYWJsZWQoYm9vbCkg
ZmluYWw7CisgICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlclN0YXRlKGNv
bnN0IFN0cmluZyYsIFdlYkNvcmU6Ok1lZGlhUGxheWJhY2tUYXJnZXRDb250ZXh0OjpTdGF0ZSkg
ZmluYWw7CiAjZW5kaWYKIAotICAgIHZvaWQgaW1hZ2VPck1lZGlhRG9jdW1lbnRTaXplQ2hhbmdl
ZChjb25zdCBXZWJDb3JlOjpJbnRTaXplJikgb3ZlcnJpZGU7Ci0jaWYgRU5BQkxFKFZJREVPKQot
I2lmIFVTRShHU1RSRUFNRVIpCi0gICAgdm9pZCByZXF1ZXN0SW5zdGFsbE1pc3NpbmdNZWRpYVBs
dWdpbnMoY29uc3QgU3RyaW5nJiAvKmRldGFpbHMqLywgY29uc3QgU3RyaW5nJiAvKmRlc2NyaXB0
aW9uKi8sIFdlYkNvcmU6Ok1lZGlhUGxheWVyUmVxdWVzdEluc3RhbGxNaXNzaW5nUGx1Z2luc0Nh
bGxiYWNrJikgb3ZlcnJpZGU7Ci0jZW5kaWYKKyAgICB2b2lkIGltYWdlT3JNZWRpYURvY3VtZW50
U2l6ZUNoYW5nZWQoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYpIGZpbmFsOworCisjaWYgRU5BQkxF
KFZJREVPKSAmJiBVU0UoR1NUUkVBTUVSKQorICAgIHZvaWQgcmVxdWVzdEluc3RhbGxNaXNzaW5n
TWVkaWFQbHVnaW5zKGNvbnN0IFN0cmluZyYgLypkZXRhaWxzKi8sIGNvbnN0IFN0cmluZyYgLypk
ZXNjcmlwdGlvbiovLCBXZWJDb3JlOjpNZWRpYVBsYXllclJlcXVlc3RJbnN0YWxsTWlzc2luZ1Bs
dWdpbnNDYWxsYmFjayYpIGZpbmFsOwogI2VuZGlmCiAKLSAgICB2b2lkIGRpZEludmFsaWRhdGVE
b2N1bWVudE1hcmtlclJlY3RzKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRJbnZhbGlkYXRlRG9j
dW1lbnRNYXJrZXJSZWN0cygpIGZpbmFsOwogCiAgICAgU3RyaW5nIG1fY2FjaGVkVG9vbFRpcDsK
ICAgICBtdXRhYmxlIFJlZlB0cjxXZWJGcmFtZT4gbV9jYWNoZWRGcmFtZVNldExhcmdlc3RGcmFt
ZTsKLSAgICBtdXRhYmxlIGJvb2wgbV9jYWNoZWRNYWluRnJhbWVIYXNIb3Jpem9udGFsU2Nyb2xs
YmFyOwotICAgIG11dGFibGUgYm9vbCBtX2NhY2hlZE1haW5GcmFtZUhhc1ZlcnRpY2FsU2Nyb2xs
YmFyOworICAgIG11dGFibGUgYm9vbCBtX2NhY2hlZE1haW5GcmFtZUhhc0hvcml6b250YWxTY3Jv
bGxiYXIgeyBmYWxzZSB9OworICAgIG11dGFibGUgYm9vbCBtX2NhY2hlZE1haW5GcmFtZUhhc1Zl
cnRpY2FsU2Nyb2xsYmFyIHsgZmFsc2UgfTsKIAotICAgIFdlYlBhZ2UqIG1fcGFnZTsKKyAgICBX
ZWJQYWdlJiBtX3BhZ2U7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50
LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9y
Q2xpZW50LmNwcAppbmRleCA1NGIyN2I0NDA0ODUyNjllNWU4N2Y4MmQwZmI1MDJhMWYwMjJhYzMz
Li44YjgwNzU1MmM0MTE0NTI2MjQ4ODAzODNmOWQzMmFiYWEwNzZiZWZiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5j
cHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0
b3JDbGllbnQuY3BwCkBAIC0yMzgsMjEgKzIzOCwyMSBAQCB2b2lkIFdlYkVkaXRvckNsaWVudDo6
Z2V0Q2xpZW50UGFzdGVib2FyZERhdGFGb3JSYW5nZShSYW5nZSogcmFuZ2UsIFZlY3RvcjxTdHJp
bgogICAgIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVFZGl0b3JDbGllbnQoKS5nZXRQYXN0ZWJvYXJk
RGF0YUZvclJhbmdlKCptX3BhZ2UsIHJhbmdlLCBwYXN0ZWJvYXJkVHlwZXMsIHBhc3RlYm9hcmRE
YXRhKTsKIH0KIAotdm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb1N0ZXAoUGFzc1Jl
ZlB0cjxVbmRvU3RlcD4gc3RlcCkKK3ZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9T
dGVwKFVuZG9TdGVwJiBzdGVwKQogewogICAgIC8vIEZJWE1FOiBBZGQgYXNzZXJ0aW9uIHRoYXQg
dGhlIGNvbW1hbmQgYmVpbmcgcmVhcHBsaWVkIGlzIHRoZSBzYW1lIGNvbW1hbmQgdGhhdCBpcwog
ICAgIC8vIGJlaW5nIHBhc3NlZCB0byB1cy4KICAgICBpZiAobV9wYWdlLT5pc0luUmVkbygpKQog
ICAgICAgICByZXR1cm47CiAKLSAgICBSZWZQdHI8V2ViVW5kb1N0ZXA+IHdlYlN0ZXAgPSBXZWJV
bmRvU3RlcDo6Y3JlYXRlKHN0ZXApOwotICAgIG1fcGFnZS0+YWRkV2ViVW5kb1N0ZXAod2ViU3Rl
cC0+c3RlcElEKCksIHdlYlN0ZXAuZ2V0KCkpOwotICAgIHVpbnQzMl90IGVkaXRBY3Rpb24gPSBz
dGF0aWNfY2FzdDx1aW50MzJfdD4od2ViU3RlcC0+c3RlcCgpLT5lZGl0aW5nQWN0aW9uKCkpOwor
ICAgIGF1dG8gd2ViU3RlcCA9IFdlYlVuZG9TdGVwOjpjcmVhdGUoJnN0ZXApOworICAgIGF1dG8g
ZWRpdEFjdGlvbiA9IHN0YXRpY19jYXN0PHVpbnQzMl90Pih3ZWJTdGVwLT5zdGVwKCktPmVkaXRp
bmdBY3Rpb24oKSk7CiAKKyAgICBtX3BhZ2UtPmFkZFdlYlVuZG9TdGVwKHdlYlN0ZXAtPnN0ZXBJ
RCgpLCB3ZWJTdGVwLnB0cigpKTsKICAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6UmVnaXN0ZXJFZGl0Q29tbWFuZEZvclVuZG8od2ViU3RlcC0+c3RlcElEKCksIGVkaXRB
Y3Rpb24pKTsKIH0KIAotdm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyUmVkb1N0ZXAoUGFz
c1JlZlB0cjxVbmRvU3RlcD4pCit2b2lkIFdlYkVkaXRvckNsaWVudDo6cmVnaXN0ZXJSZWRvU3Rl
cChVbmRvU3RlcCYpCiB7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oCmluZGV4IDhkODE3NGRjOTEz
YWY1ZTJjYjMwMTgwNzQyMDVhZDk1ODE5NjRhNjAuLmNlMmJjYzQ3MTg4NGFlZTFkOWRhNWMyZGE3
YzVjNzhiNmVmODU0ZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
Q29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuaApAQCAtNzEsOCArNzEsOCBAQCBw
cml2YXRlOgogICAgIHZvaWQgZGlkV3JpdGVTZWxlY3Rpb25Ub1Bhc3RlYm9hcmQoKSBmaW5hbDsK
ICAgICB2b2lkIGdldENsaWVudFBhc3RlYm9hcmREYXRhRm9yUmFuZ2UoV2ViQ29yZTo6UmFuZ2Uq
LCBWZWN0b3I8U3RyaW5nPiYgcGFzdGVib2FyZFR5cGVzLCBWZWN0b3I8UmVmUHRyPFdlYkNvcmU6
OlNoYXJlZEJ1ZmZlcj4+JiBwYXN0ZWJvYXJkRGF0YSkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBy
ZWdpc3RlclVuZG9TdGVwKFBhc3NSZWZQdHI8V2ViQ29yZTo6VW5kb1N0ZXA+KSBmaW5hbDsKLSAg
ICB2b2lkIHJlZ2lzdGVyUmVkb1N0ZXAoUGFzc1JlZlB0cjxXZWJDb3JlOjpVbmRvU3RlcD4pIGZp
bmFsOworICAgIHZvaWQgcmVnaXN0ZXJVbmRvU3RlcChXZWJDb3JlOjpVbmRvU3RlcCYpIGZpbmFs
OworICAgIHZvaWQgcmVnaXN0ZXJSZWRvU3RlcChXZWJDb3JlOjpVbmRvU3RlcCYpIGZpbmFsOwog
ICAgIHZvaWQgY2xlYXJVbmRvUmVkb09wZXJhdGlvbnMoKSBmaW5hbDsKIAogICAgIGJvb2wgY2Fu
Q29weUN1dChXZWJDb3JlOjpGcmFtZSosIGJvb2wgZGVmYXVsdFZhbHVlKSBjb25zdCBmaW5hbDsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2Vi
RnJhbWVMb2FkZXJDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3Jl
U3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKaW5kZXggZjE3NzVjNjg2ZjhmNDA2NTA4
Njg1MzUyNWUwMGYxZGQyYjEzMWJkZi4uOGE3NTk0ZTAxM2IyMzE3YTNhMzI3YmFiZDQ0OTJmOTM0
ZTIwMWRiZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3Vw
cG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKQEAgLTcwMSw3ICs3
MDEsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZv
clJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9ucwogICAgICAgICBtX2ZyYW1lLT5kaWRSZWNl
aXZlUG9saWN5RGVjaXNpb24obGlzdGVuZXJJRCwgc3RhdGljX2Nhc3Q8UG9saWN5QWN0aW9uPihw
b2xpY3lBY3Rpb24pLCAwLCBkb3dubG9hZElEKTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNs
aWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdh
dGlvbkFjdGlvbiYgbmF2aWdhdGlvbkFjdGlvbiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1
ZXN0LCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4gZm9ybVN0YXRlLCBjb25zdCBTdHJpbmcmIGZyYW1l
TmFtZSwgRnJhbWVQb2xpY3lGdW5jdGlvbiBmdW5jdGlvbikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IE5hdmln
YXRpb25BY3Rpb24mIG5hdmlnYXRpb25BY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVx
dWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBGcmFt
ZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQogewogICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBtX2Zy
YW1lLT5wYWdlKCk7CiAgICAgaWYgKCF3ZWJQYWdlKSB7CkBAIC03MzcsNyArNzM3LDcgQEAgdm9p
ZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dB
Y3Rpb24oY29uc3QgTmF2aWdhdGkKICAgICB3ZWJQYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OkRlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihtX2ZyYW1lLT5mcmFtZUlEKCks
IFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbUZyYW1lKGNvcmVGcmFtZSksIG5hdmlnYXRpb25BY3Rp
b25EYXRhLCByZXF1ZXN0LCBmcmFtZU5hbWUsIGxpc3RlbmVySUQsIFVzZXJEYXRhKFdlYlByb2Nl
c3M6OnNpbmdsZXRvbigpLnRyYW5zZm9ybU9iamVjdHNUb0hhbmRsZXModXNlckRhdGEuZ2V0KCkp
LmdldCgpKSkpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lk
ZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgbmF2aWdh
dGlvbkFjdGlvbiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBQYXNzUmVmUHRyPEZv
cm1TdGF0ZT4gcHJwRm9ybVN0YXRlLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQordm9p
ZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9u
QWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIG5hdmlnYXRpb25BY3Rpb24sIGNvbnN0IFJl
c291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIEZyYW1lUG9saWN5
RnVuY3Rpb24gZnVuY3Rpb24pCiB7CiAgICAgV2ViUGFnZSogd2ViUGFnZSA9IG1fZnJhbWUtPnBh
Z2UoKTsKICAgICBpZiAoIXdlYlBhZ2UpIHsKQEAgLTc1Miw3ICs3NTIsNiBAQCB2b2lkIFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24o
Y29uc3QgTmF2aWdhdAogICAgIH0KIAogICAgIFJlZlB0cjxBUEk6Ok9iamVjdD4gdXNlckRhdGE7
Ci0gICAgUmVmUHRyPEZvcm1TdGF0ZT4gZm9ybVN0YXRlID0gcHJwRm9ybVN0YXRlOwogCiAgICAg
UmVmUHRyPEluamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbj4gYWN0aW9uID0gSW5qZWN0ZWRC
dW5kbGVOYXZpZ2F0aW9uQWN0aW9uOjpjcmVhdGUobV9mcmFtZSwgbmF2aWdhdGlvbkFjdGlvbiwg
Zm9ybVN0YXRlKTsKIApAQCAtNzgyLDcgKzc4MSw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0
CiAgICAgY2FzZSBOYXZpZ2F0aW9uVHlwZTo6Rm9ybVN1Ym1pdHRlZDoKICAgICBjYXNlIE5hdmln
YXRpb25UeXBlOjpGb3JtUmVzdWJtaXR0ZWQ6CiAgICAgICAgIGlmIChmb3JtU3RhdGUpCi0gICAg
ICAgICAgICBvcmlnaW5hdGluZ0ZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZvcm1T
dGF0ZS0+c291cmNlRG9jdW1lbnQoKS0+ZnJhbWUoKSk7CisgICAgICAgICAgICBvcmlnaW5hdGlu
Z0ZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZvcm1TdGF0ZS0+c291cmNlRG9jdW1l
bnQoKS5mcmFtZSgpKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBOYXZpZ2F0aW9uVHlwZTo6
QmFja0ZvcndhcmQ6CiAgICAgY2FzZSBOYXZpZ2F0aW9uVHlwZTo6UmVsb2FkOgpAQCAtODQzLDQw
ICs4NDIsMzYgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hVbmFibGVUb0lt
cGxlbWVudFBvbGljeShjb25zdCBSZXNvdXJjZUVycm9yJgogICAgIHdlYlBhZ2UtPnNlbmQoTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6VW5hYmxlVG9JbXBsZW1lbnRQb2xpY3kobV9mcmFtZS0+ZnJh
bWVJRCgpLCBlcnJvciwgVXNlckRhdGEoV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkudHJhbnNmb3Jt
T2JqZWN0c1RvSGFuZGxlcyh1c2VyRGF0YS5nZXQoKSkuZ2V0KCkpKSk7CiB9CiAKLXZvaWQgV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChQYXNzUmVmUHRy
PEZvcm1TdGF0ZT4gcHJwRm9ybVN0YXRlKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJlZjxGb3JtU3RhdGU+JiYgZm9ybVN0YXRlKQogewot
ICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7CisgICAgYXV0byogd2ViUGFn
ZSA9IG1fZnJhbWUtPnBhZ2UoKTsKICAgICBpZiAoIXdlYlBhZ2UpCiAgICAgICAgIHJldHVybjsK
IAotICAgIFJlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSA9IHBycEZvcm1TdGF0ZTsKLSAgICBI
VE1MRm9ybUVsZW1lbnQqIGZvcm0gPSBmb3JtU3RhdGUtPmZvcm0oKTsKKyAgICBhdXRvJiBmb3Jt
ID0gZm9ybVN0YXRlLT5mb3JtKCk7CiAKLSAgICBXZWJGcmFtZSogc291cmNlRnJhbWUgPSBXZWJG
cmFtZTo6ZnJvbUNvcmVGcmFtZSgqZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLT5mcmFtZSgp
KTsKKyAgICBBU1NFUlQoZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLmZyYW1lKCkpOworICAg
IGF1dG8qIHNvdXJjZUZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZvcm1TdGF0ZS0+
c291cmNlRG9jdW1lbnQoKS5mcmFtZSgpKTsKICAgICBBU1NFUlQoc291cmNlRnJhbWUpOwogCi0g
ICAgd2ViUGFnZS0+aW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCkud2lsbFNlbmRTdWJtaXRFdmVu
dCh3ZWJQYWdlLCBmb3JtLCBtX2ZyYW1lLCBzb3VyY2VGcmFtZSwgZm9ybVN0YXRlLT50ZXh0Rmll
bGRWYWx1ZXMoKSk7CisgICAgd2ViUGFnZS0+aW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCkud2ls
bFNlbmRTdWJtaXRFdmVudCh3ZWJQYWdlLCAmZm9ybSwgbV9mcmFtZSwgc291cmNlRnJhbWUsIGZv
cm1TdGF0ZS0+dGV4dEZpZWxkVmFsdWVzKCkpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xp
ZW50OjpkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiBwcnBGb3Jt
U3RhdGUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24pCit2b2lkIFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKEZvcm1TdGF0ZSYgZm9ybVN0YXRlLCBGcmFt
ZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQogewogICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBtX2Zy
YW1lLT5wYWdlKCk7CiAgICAgaWYgKCF3ZWJQYWdlKQogICAgICAgICByZXR1cm47CiAKLSAgICAv
LyBGSVhNRTogUGFzcyBtb3JlIG9mIHRoZSBmb3JtIHN0YXRlLgotICAgIFJlZlB0cjxGb3JtU3Rh
dGU+IGZvcm1TdGF0ZSA9IHBycEZvcm1TdGF0ZTsKLSAgICAKLSAgICBIVE1MRm9ybUVsZW1lbnQq
IGZvcm0gPSBmb3JtU3RhdGUtPmZvcm0oKTsKKyAgICBhdXRvJiBmb3JtID0gZm9ybVN0YXRlLmZv
cm0oKTsKIAotICAgIFdlYkZyYW1lKiBzb3VyY2VGcmFtZSA9IFdlYkZyYW1lOjpmcm9tQ29yZUZy
YW1lKCpmb3JtU3RhdGUtPnNvdXJjZURvY3VtZW50KCktPmZyYW1lKCkpOworICAgIGF1dG8qIHNv
dXJjZUZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZvcm1TdGF0ZS5zb3VyY2VEb2N1
bWVudCgpLmZyYW1lKCkpOwogICAgIEFTU0VSVChzb3VyY2VGcmFtZSk7CiAKLSAgICBjb25zdCBW
ZWN0b3I8c3RkOjpwYWlyPFN0cmluZywgU3RyaW5nPj4mIHZhbHVlcyA9IGZvcm1TdGF0ZS0+dGV4
dEZpZWxkVmFsdWVzKCk7CisgICAgYXV0byYgdmFsdWVzID0gZm9ybVN0YXRlLnRleHRGaWVsZFZh
bHVlcygpOwogCiAgICAgUmVmUHRyPEFQSTo6T2JqZWN0PiB1c2VyRGF0YTsKLSAgICB3ZWJQYWdl
LT5pbmplY3RlZEJ1bmRsZUZvcm1DbGllbnQoKS53aWxsU3VibWl0Rm9ybSh3ZWJQYWdlLCBmb3Jt
LCBtX2ZyYW1lLCBzb3VyY2VGcmFtZSwgdmFsdWVzLCB1c2VyRGF0YSk7Ci0KKyAgICB3ZWJQYWdl
LT5pbmplY3RlZEJ1bmRsZUZvcm1DbGllbnQoKS53aWxsU3VibWl0Rm9ybSh3ZWJQYWdlLCAmZm9y
bSwgbV9mcmFtZSwgc291cmNlRnJhbWUsIHZhbHVlcywgdXNlckRhdGEpOwogCiAgICAgdWludDY0
X3QgbGlzdGVuZXJJRCA9IG1fZnJhbWUtPnNldFVwUG9saWN5TGlzdGVuZXIoV1RGTW92ZShmdW5j
dGlvbikpOwogCkBAIC0xNDAwLDE0ICsxMzk1LDEzIEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZChEb2N1bWVudExvYWRlciAqZG9j
CiAgICAgbV9mcmFtZS0+Y29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKGRvY3VtZW50
TG9hZGVyLCBzZXNzaW9uSUQsIHJlcXVlc3QsIHJlc3BvbnNlKTsKIH0KIAotUmVmUHRyPEZyYW1l
PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlRnJhbWUoY29uc3QgVVJMJiB1cmwsIGNvbnN0
IFN0cmluZyYgbmFtZSwgSFRNTEZyYW1lT3duZXJFbGVtZW50KiBvd25lckVsZW1lbnQsCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgU3Ry
aW5nJiByZWZlcnJlciwgYm9vbCAvKmFsbG93c1Njcm9sbGluZyovLCBpbnQgLyptYXJnaW5XaWR0
aCovLCBpbnQgLyptYXJnaW5IZWlnaHQqLykKK1JlZlB0cjxGcmFtZT4gV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIG5hbWUsIEhU
TUxGcmFtZU93bmVyRWxlbWVudCYgb3duZXJFbGVtZW50LAorICAgIGNvbnN0IFN0cmluZyYgcmVm
ZXJyZXIsIGJvb2wgLyphbGxvd3NTY3JvbGxpbmcqLywgaW50IC8qbWFyZ2luV2lkdGgqLywgaW50
IC8qbWFyZ2luSGVpZ2h0Ki8pCiB7Ci0gICAgV2ViUGFnZSogd2ViUGFnZSA9IG1fZnJhbWUtPnBh
Z2UoKTsKKyAgICBhdXRvKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpOwogCi0gICAgUmVmUHRy
PFdlYkZyYW1lPiBzdWJmcmFtZSA9IFdlYkZyYW1lOjpjcmVhdGVTdWJmcmFtZSh3ZWJQYWdlLCBu
YW1lLCBvd25lckVsZW1lbnQpOwotCi0gICAgRnJhbWUqIGNvcmVTdWJmcmFtZSA9IHN1YmZyYW1l
LT5jb3JlRnJhbWUoKTsKKyAgICBhdXRvIHN1YmZyYW1lID0gV2ViRnJhbWU6OmNyZWF0ZVN1YmZy
YW1lKHdlYlBhZ2UsIG5hbWUsICZvd25lckVsZW1lbnQpOworICAgIGF1dG8qIGNvcmVTdWJmcmFt
ZSA9IHN1YmZyYW1lLT5jb3JlRnJhbWUoKTsKICAgICBpZiAoIWNvcmVTdWJmcmFtZSkKICAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CiAKQEAgLTE0MjcsNyArMTQyMSw3IEBAIFJlZlB0cjxGcmFtZT4g
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBT
dHJpbmcmIG5hCiAgICAgcmV0dXJuIGNvcmVTdWJmcmFtZTsKIH0KIAotUmVmUHRyPFdpZGdldD4g
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiwgSFRNTFBs
dWdJbkVsZW1lbnQqIHBsdWdpbkVsZW1lbnQsIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBWZWN0b3I8
U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzLCBj
b25zdCBTdHJpbmcmIG1pbWVUeXBlLCBib29sIGxvYWRNYW51YWxseSkKK1JlZlB0cjxXaWRnZXQ+
IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYsIEhUTUxQ
bHVnSW5FbGVtZW50JiBwbHVnaW5FbGVtZW50LCBjb25zdCBVUkwmIHVybCwgY29uc3QgVmVjdG9y
PFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcywg
Y29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgYm9vbCBsb2FkTWFudWFsbHkpCiB7CiAgICAgQVNTRVJU
KHBhcmFtTmFtZXMuc2l6ZSgpID09IHBhcmFtVmFsdWVzLnNpemUoKSk7CiAgICAgQVNTRVJUKG1f
ZnJhbWUtPnBhZ2UoKSk7CkBAIC0xNDQ0LDExICsxNDM4LDExIEBAIFJlZlB0cjxXaWRnZXQ+IFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYsIEhUTUxQbHVn
SW5FbGVtCiAjZW5kaWYKIAogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQotICAgIGF1
dG8gcGx1Z2luID0gbV9mcmFtZS0+cGFnZSgpLT5jcmVhdGVQbHVnaW4obV9mcmFtZSwgcGx1Z2lu
RWxlbWVudCwgcGFyYW1ldGVycywgcGFyYW1ldGVycy5taW1lVHlwZSk7CisgICAgYXV0byBwbHVn
aW4gPSBtX2ZyYW1lLT5wYWdlKCktPmNyZWF0ZVBsdWdpbihtX2ZyYW1lLCAmcGx1Z2luRWxlbWVu
dCwgcGFyYW1ldGVycywgcGFyYW1ldGVycy5taW1lVHlwZSk7CiAgICAgaWYgKCFwbHVnaW4pCiAg
ICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgcmV0dXJuIFBsdWdpblZpZXc6OmNyZWF0ZShw
bHVnaW5FbGVtZW50LCBXVEZNb3ZlKHBsdWdpbiksIHBhcmFtZXRlcnMpOworICAgIHJldHVybiBQ
bHVnaW5WaWV3OjpjcmVhdGUocGx1Z2luRWxlbWVudCwgcGx1Z2luLnJlbGVhc2VOb25OdWxsKCks
IHBhcmFtZXRlcnMpOwogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0ocGx1Z2luRWxlbWVudCk7CiAg
ICAgcmV0dXJuIG51bGxwdHI7CkBAIC0xNDU4LDEzICsxNDUyLDE0IEBAIFJlZlB0cjxXaWRnZXQ+
IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYsIEhUTUxQ
bHVnSW5FbGVtCiB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpyZWNyZWF0ZVBsdWdpbihXaWRn
ZXQqIHdpZGdldCkKIHsKICNpZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKLSAgICBBU1NF
UlQod2lkZ2V0ICYmIHdpZGdldC0+aXNQbHVnaW5WaWV3QmFzZSgpKTsKKyAgICBBU1NFUlQod2lk
Z2V0KTsKKyAgICBBU1NFUlQod2lkZ2V0LT5pc1BsdWdpblZpZXdCYXNlKCkpOwogICAgIEFTU0VS
VChtX2ZyYW1lLT5wYWdlKCkpOwogCi0gICAgUGx1Z2luVmlldyogcGx1Z2luVmlldyA9IHN0YXRp
Y19jYXN0PFBsdWdpblZpZXcqPih3aWRnZXQpOworICAgIGF1dG8mIHBsdWdpblZpZXcgPSBzdGF0
aWNfY2FzdDxQbHVnaW5WaWV3Jj4oKndpZGdldCk7CiAgICAgU3RyaW5nIG5ld01JTUVUeXBlOwot
ICAgIGF1dG8gcGx1Z2luID0gbV9mcmFtZS0+cGFnZSgpLT5jcmVhdGVQbHVnaW4obV9mcmFtZSwg
cGx1Z2luVmlldy0+cGx1Z2luRWxlbWVudCgpLCBwbHVnaW5WaWV3LT5pbml0aWFsUGFyYW1ldGVy
cygpLCBuZXdNSU1FVHlwZSk7Ci0gICAgcGx1Z2luVmlldy0+cmVjcmVhdGVBbmRJbml0aWFsaXpl
KFdURk1vdmUocGx1Z2luKSk7CisgICAgYXV0byBwbHVnaW4gPSBtX2ZyYW1lLT5wYWdlKCktPmNy
ZWF0ZVBsdWdpbihtX2ZyYW1lLCBwbHVnaW5WaWV3LnBsdWdpbkVsZW1lbnQoKSwgcGx1Z2luVmll
dy5pbml0aWFsUGFyYW1ldGVycygpLCBuZXdNSU1FVHlwZSk7CisgICAgcGx1Z2luVmlldy5yZWNy
ZWF0ZUFuZEluaXRpYWxpemUocGx1Z2luLnJlbGVhc2VOb25OdWxsKCkpOwogI2Vsc2UKICAgICBV
TlVTRURfUEFSQU0od2lkZ2V0KTsKICNlbmRpZgpAQCAtMTQ3Nyw5ICsxNDcyLDEwIEBAIHZvaWQg
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OnJlZGlyZWN0RGF0YVRvUGx1Z2luKFdpZGdldCogcGx1Z2lu
V2lkZ2V0KQogfQogCiAjaWYgRU5BQkxFKFdFQkdMKQorCiBXZWJDb3JlOjpXZWJHTExvYWRQb2xp
Y3kgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OndlYkdMUG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYg
dXJsKSBjb25zdAogewotICAgIGlmIChXZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgp
KQorICAgIGlmIChhdXRvKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpKQogICAgICAgICByZXR1
cm4gd2ViUGFnZS0+d2ViR0xQb2xpY3lGb3JVUkwobV9mcmFtZSwgdXJsKTsKIAogICAgIHJldHVy
biBXZWJHTEFsbG93Q3JlYXRpb247CkBAIC0xNDg3LDMxICsxNDgzLDMyIEBAIFdlYkNvcmU6Oldl
YkdMTG9hZFBvbGljeSBXZWJGcmFtZUxvYWRlckNsaWVudDo6d2ViR0xQb2xpY3lGb3JVUkwoY29u
c3QgU3RyaW5nJiB1CiAKIFdlYkNvcmU6OldlYkdMTG9hZFBvbGljeSBXZWJGcmFtZUxvYWRlckNs
aWVudDo6cmVzb2x2ZVdlYkdMUG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYgdXJsKSBjb25zdAog
ewotICAgIGlmIChXZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpKQorICAgIGlmIChh
dXRvKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpKQogICAgICAgICByZXR1cm4gd2ViUGFnZS0+
cmVzb2x2ZVdlYkdMUG9saWN5Rm9yVVJMKG1fZnJhbWUsIHVybCk7CiAKICAgICByZXR1cm4gV2Vi
R0xBbGxvd0NyZWF0aW9uOwogfQotI2VuZGlmIC8vIEVOQUJMRShXRUJHTCkKIAotUGFzc1JlZlB0
cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNv
bnN0IEludFNpemUmIHBsdWdpblNpemUsIEhUTUxBcHBsZXRFbGVtZW50KiBhcHBsZXRFbGVtZW50
LCBjb25zdCBVUkwmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVj
dG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKQorI2VuZGlmCisKK1JlZlB0cjxXaWRnZXQ+IFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmIHBs
dWdpblNpemUsIEhUTUxBcHBsZXRFbGVtZW50JiBhcHBsZXRFbGVtZW50LCBjb25zdCBVUkwmLCBj
b25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBh
cmFtVmFsdWVzKQogewogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQotICAgIGF1dG8g
cGx1Z2luID0gY3JlYXRlUGx1Z2luKHBsdWdpblNpemUsIGFwcGxldEVsZW1lbnQsIFVSTCgpLCBw
YXJhbU5hbWVzLCBwYXJhbVZhbHVlcywgYXBwbGV0RWxlbWVudC0+c2VydmljZVR5cGUoKSwgZmFs
c2UpOworICAgIGF1dG8gcGx1Z2luID0gY3JlYXRlUGx1Z2luKHBsdWdpblNpemUsIGFwcGxldEVs
ZW1lbnQsIFVSTCgpLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcywgYXBwbGV0RWxlbWVudC5zZXJ2
aWNlVHlwZSgpLCBmYWxzZSk7CiAgICAgaWYgKCFwbHVnaW4pIHsKLSAgICAgICAgaWYgKFdlYlBh
Z2UqIHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCkpIHsKLSAgICAgICAgICAgIFN0cmluZyBmcmFt
ZVVSTFN0cmluZyA9IG1fZnJhbWUtPmNvcmVGcmFtZSgpLT5sb2FkZXIoKS5kb2N1bWVudExvYWRl
cigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwotICAgICAgICAgICAgU3RyaW5nIHBhZ2VVUkxT
dHJpbmcgPSB3ZWJQYWdlLT5jb3JlUGFnZSgpLT5tYWluRnJhbWUoKS5sb2FkZXIoKS5kb2N1bWVu
dExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwotICAgICAgICAgICAgd2ViUGFnZS0+
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRGYWlsVG9Jbml0aWFsaXplUGx1Z2luKGFw
cGxldEVsZW1lbnQtPnNlcnZpY2VUeXBlKCksIGZyYW1lVVJMU3RyaW5nLCBwYWdlVVJMU3RyaW5n
KSk7CisgICAgICAgIGlmIChhdXRvKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpKSB7CisgICAg
ICAgICAgICBhdXRvIGZyYW1lVVJMU3RyaW5nID0gbV9mcmFtZS0+Y29yZUZyYW1lKCktPmxvYWRl
cigpLmRvY3VtZW50TG9hZGVyKCktPnJlc3BvbnNlVVJMKCkuc3RyaW5nKCk7CisgICAgICAgICAg
ICBhdXRvIHBhZ2VVUkxTdHJpbmcgPSB3ZWJQYWdlLT5jb3JlUGFnZSgpLT5tYWluRnJhbWUoKS5s
b2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOworICAgICAg
ICAgICAgd2ViUGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRGYWlsVG9Jbml0
aWFsaXplUGx1Z2luKGFwcGxldEVsZW1lbnQuc2VydmljZVR5cGUoKSwgZnJhbWVVUkxTdHJpbmcs
IHBhZ2VVUkxTdHJpbmcpKTsKICAgICAgICAgfQogICAgIH0KLSAgICByZXR1cm4gV1RGTW92ZShw
bHVnaW4pOworICAgIHJldHVybiBwbHVnaW47CiAjZWxzZQogICAgIFVOVVNFRF9QQVJBTShwbHVn
aW5TaXplKTsKICAgICBVTlVTRURfUEFSQU0oYXBwbGV0RWxlbWVudCk7CiAgICAgVU5VU0VEX1BB
UkFNKHBhcmFtTmFtZXMpOwogICAgIFVOVVNFRF9QQVJBTShwYXJhbVZhbHVlcyk7Ci0gICAgcmV0
dXJuIDA7CisgICAgcmV0dXJuIG51bGxwdHI7CiAjZW5kaWYKIH0KIApAQCAtMTcxNywxMyArMTcx
NCwxMyBAQCBib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRGb3JjZVVuaXZlcnNhbEFj
Y2Vzc0Zyb21Mb2NhbFVSTChjb25zdCBXZWJDb3JlOgogICAgIHJldHVybiB3ZWJQYWdlLT5pbmpl
Y3RlZEJ1bmRsZUxvYWRlckNsaWVudCgpLnNob3VsZEZvcmNlVW5pdmVyc2FsQWNjZXNzRnJvbUxv
Y2FsVVJMKHdlYlBhZ2UsIHVybC5zdHJpbmcoKSk7CiB9CiAKLVBhc3NSZWZQdHI8RnJhbWVOZXR3
b3JraW5nQ29udGV4dD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtpbmdDb250
ZXh0KCkKK1JlZjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6
Y3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKQogewotICAgIGF1dG8gY29udGV4dCA9IFdlYkZyYW1l
TmV0d29ya2luZ0NvbnRleHQ6OmNyZWF0ZShtX2ZyYW1lKTsKLSAgICByZXR1cm4gV1RGTW92ZShj
b250ZXh0KTsKKyAgICByZXR1cm4gV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dDo6Y3JlYXRlKG1f
ZnJhbWUpOwogfQogCiAjaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQorCiB2b2lkIFdlYkZy
YW1lTG9hZGVyQ2xpZW50Ojpjb250ZW50RmlsdGVyRGlkQmxvY2tMb2FkKFdlYkNvcmU6OkNvbnRl
bnRGaWx0ZXJVbmJsb2NrSGFuZGxlciB1bmJsb2NrSGFuZGxlcikKIHsKICAgICBpZiAoIXVuYmxv
Y2tIYW5kbGVyLm5lZWRzVUlQcm9jZXNzKCkpIHsKQEAgLTE3MzQsMTIgKzE3MzEsMTUgQEAgdm9p
ZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y29udGVudEZpbHRlckRpZEJsb2NrTG9hZChXZWJDb3Jl
OjpDb250ZW50RmlsdGVyVW5ibG8KICAgICBpZiAoV2ViUGFnZSogd2ViUGFnZSB7IG1fZnJhbWUt
PnBhZ2UoKSB9KQogICAgICAgICB3ZWJQYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OkNvbnRlbnRGaWx0ZXJEaWRCbG9ja0xvYWRGb3JGcmFtZSh1bmJsb2NrSGFuZGxlciwgbV9mcmFt
ZS0+ZnJhbWVJRCgpKSk7CiB9CisKICNlbmRpZgogCiAjaWYgRU5BQkxFKFJFUVVFU1RfQVVUT0NP
TVBMRVRFKQotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlkUmVxdWVzdEF1dG9jb21wbGV0
ZShQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4pCisKK3ZvaWQgV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmRpZFJlcXVlc3RBdXRvY29tcGxldGUoUmVmPFdlYkNvcmU6OkZvcm1TdGF0ZT4mJikK
IHsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnByZWZldGNoRE5T
KGNvbnN0IFN0cmluZyYgaG9zdG5hbWUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKaW5k
ZXggZGIyZjk0OTE0MDcyNDA3NzczYmQwODZmN2Y4YjlhY2QwN2VlYTc0Ni4uMGI4MjliNGEyOTA3
Yzg0ZTg5MTYwYzE4N2UzOGRlNGFmOTNhNTE5OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGll
bnQuaApAQCAtMzYsNyArMzYsNyBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIGNsYXNzIFBsdWdpblZp
ZXc7CiBjbGFzcyBXZWJGcmFtZTsKICAgICAKLWNsYXNzIFdlYkZyYW1lTG9hZGVyQ2xpZW50IDog
cHVibGljIFdlYkNvcmU6OkZyYW1lTG9hZGVyQ2xpZW50IHsKK2NsYXNzIFdlYkZyYW1lTG9hZGVy
Q2xpZW50IGZpbmFsIDogcHVibGljIFdlYkNvcmU6OkZyYW1lTG9hZGVyQ2xpZW50IHsKIHB1Ymxp
YzoKICAgICBXZWJGcmFtZUxvYWRlckNsaWVudCgpOwogICAgIH5XZWJGcmFtZUxvYWRlckNsaWVu
dCgpOwpAQCAtNDksMjE3ICs0OSwyMTYgQEAgcHVibGljOgogICAgIHZvaWQgc2V0VXNlSWNvbkxv
YWRpbmdDbGllbnQoYm9vbCB1c2VJY29uTG9hZGluZ0NsaWVudCkgeyBtX3VzZUljb25Mb2FkaW5n
Q2xpZW50ID0gdXNlSWNvbkxvYWRpbmdDbGllbnQ7IH0KIAogcHJpdmF0ZToKLSAgICB2b2lkIGZy
YW1lTG9hZGVyRGVzdHJveWVkKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBmcmFtZUxvYWRlckRlc3Ry
b3llZCgpIGZpbmFsOwogCi0gICAgYm9vbCBoYXNIVE1MVmlldygpIGNvbnN0IG92ZXJyaWRlOwot
ICAgIGJvb2wgaGFzV2ViVmlldygpIGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wgaGFzSFRNTFZp
ZXcoKSBjb25zdCBmaW5hbDsKKyAgICBib29sIGhhc1dlYlZpZXcoKSBjb25zdCBmaW5hbDsKICAg
ICAKLSAgICB2b2lkIG1ha2VSZXByZXNlbnRhdGlvbihXZWJDb3JlOjpEb2N1bWVudExvYWRlciop
IG92ZXJyaWRlOworICAgIHZvaWQgbWFrZVJlcHJlc2VudGF0aW9uKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKikgZmluYWw7CiAjaWYgUExBVEZPUk0oSU9TKQotICAgIGJvb2wgZm9yY2VMYXlvdXRP
blJlc3RvcmVGcm9tUGFnZUNhY2hlKCkgb3ZlcnJpZGU7CisgICAgYm9vbCBmb3JjZUxheW91dE9u
UmVzdG9yZUZyb21QYWdlQ2FjaGUoKSBmaW5hbDsKICNlbmRpZgotICAgIHZvaWQgZm9yY2VMYXlv
dXRGb3JOb25IVE1MKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBmb3JjZUxheW91dEZvck5vbkhUTUwo
KSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHNldENvcGllc09uU2Nyb2xsKCkgb3ZlcnJpZGU7Cisg
ICAgdm9pZCBzZXRDb3BpZXNPblNjcm9sbCgpIGZpbmFsOwogICAgIAotICAgIHZvaWQgZGV0YWNo
ZWRGcm9tUGFyZW50MigpIG92ZXJyaWRlOwotICAgIHZvaWQgZGV0YWNoZWRGcm9tUGFyZW50Mygp
IG92ZXJyaWRlOworICAgIHZvaWQgZGV0YWNoZWRGcm9tUGFyZW50MigpIGZpbmFsOworICAgIHZv
aWQgZGV0YWNoZWRGcm9tUGFyZW50MygpIGZpbmFsOwogICAgIAotICAgIHZvaWQgYXNzaWduSWRl
bnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJy
aWRlOworICAgIHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOwogICAgIAotICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2Vu
ZFJlcXVlc3QoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVz
cG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpIG92ZXJyaWRlOwotICAgIGJvb2wgc2hvdWxkVXNlQ3Jl
ZGVudGlhbFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGlj
YXRpb25DaGFsbGVuZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikgb3ZlcnJp
ZGU7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChXZWJDb3JlOjpEb2N1bWVudExv
YWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkgZmlu
YWw7CisgICAgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1bWVu
dExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgZmluYWw7CisgICAgdm9pZCBkaXNw
YXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShXZWJDb3JlOjpEb2N1bWVudExv
YWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6QXV0aGVudGlj
YXRpb25DaGFsbGVuZ2UmKSBmaW5hbDsKICNpZiBVU0UoUFJPVEVDVElPTl9TUEFDRV9BVVRIX0NB
TExCQUNLKQotICAgIGJvb2wgY2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3Qg
V2ViQ29yZTo6UHJvdGVjdGlvblNwYWNlJikgb3ZlcnJpZGU7CisgICAgYm9vbCBjYW5BdXRoZW50
aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpQcm90ZWN0aW9uU3BhY2UmKSBm
aW5hbDsKICNlbmRpZgogI2lmIFBMQVRGT1JNKElPUykKLSAgICBSZXRhaW5QdHI8Q0ZEaWN0aW9u
YXJ5UmVmPiBjb25uZWN0aW9uUHJvcGVydGllcyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllcikgb3ZlcnJpZGU7CisgICAgUmV0YWluUHRyPENGRGljdGlv
bmFyeVJlZj4gY29ubmVjdGlvblByb3BlcnRpZXMoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIGZpbmFsOwogI2VuZGlmCi0gICAgdm9pZCBkaXNwYXRj
aERpZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRl
OwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChXZWJDb3JlOjpEb2N1
bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgaW50IGRhdGFMZW5ndGgpIG92
ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBvdmVycmlkZTsKLSAgICB2b2lk
IGRpc3BhdGNoRGlkRmFpbExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlk
ZTsKLSAgICBib29sIGRpc3BhdGNoRGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlKFdlYkNv
cmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGludCBsZW5ndGgpIG92ZXJyaWRlOworICAg
IHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIq
LCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2UmKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGludCBkYXRh
TGVuZ3RoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgZmluYWw7CisgICAg
dm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmlu
YWw7CisgICAgYm9vbCBkaXNwYXRjaERpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShXZWJD
b3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBpbnQgbGVuZ3RoKSBmaW5hbDsKICNpZiBF
TkFCTEUoREFUQV9ERVRFQ1RJT04pCi0gICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaERhdGFEZXRl
Y3Rpb24oTlNBcnJheSAqZGV0ZWN0aW9uUmVzdWx0cykgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNw
YXRjaERpZEZpbmlzaERhdGFEZXRlY3Rpb24oTlNBcnJheSAqZGV0ZWN0aW9uUmVzdWx0cykgZmlu
YWw7CiAjZW5kaWYKICAgICAKLSAgICB2b2lkIGRpc3BhdGNoRGlkRGlzcGF0Y2hPbmxvYWRFdmVu
dHMoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVNlcnZlclJlZGlyZWN0
Rm9yUHJvdmlzaW9uYWxMb2FkKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZENoYW5n
ZVByb3Zpc2lvbmFsVVJMKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZENhbmNlbENs
aWVudFJlZGlyZWN0KCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxQZXJmb3JtQ2xp
ZW50UmVkaXJlY3QoY29uc3QgV2ViQ29yZTo6VVJMJiwgZG91YmxlIGludGVydmFsLCBkb3VibGUg
ZmlyZURhdGUpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRDaGFuZ2VMb2NhdGlvbldp
dGhpblBhZ2UoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUHVzaFN0YXRlV2l0aGlu
UGFnZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZXBsYWNlU3RhdGVXaXRoaW5Q
YWdlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFBvcFN0YXRlV2l0aGluUGFnZSgp
IG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hXaWxsQ2xvc2UoKSBvdmVycmlkZTsKLSAgICB2
b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUljb24oKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNo
RGlkU3RhcnRQcm92aXNpb25hbExvYWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlk
UmVjZWl2ZVRpdGxlKGNvbnN0IFdlYkNvcmU6OlN0cmluZ1dpdGhEaXJlY3Rpb24mKSBvdmVycmlk
ZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkQ29tbWl0TG9hZChzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6
Okhhc0luc2VjdXJlQ29udGVudD4pIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWls
UHJvdmlzaW9uYWxMb2FkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsK
LSAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbExvYWQoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJv
ciYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hEb2N1bWVudExvYWQoKSBv
dmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZCgpIG92ZXJyaWRlOwotCi0g
ICAgdm9pZCBkaXNwYXRjaERpZFJlYWNoTGF5b3V0TWlsZXN0b25lKFdlYkNvcmU6OkxheW91dE1p
bGVzdG9uZXMpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRMYXlvdXQoKSBvdmVycmlk
ZTsKLQotICAgIFdlYkNvcmU6OkZyYW1lKiBkaXNwYXRjaENyZWF0ZVBhZ2UoY29uc3QgV2ViQ29y
ZTo6TmF2aWdhdGlvbkFjdGlvbiYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hTaG93KCkg
b3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERpZERpc3BhdGNoT25sb2FkRXZlbnRzKCkgZmlu
YWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVTZXJ2ZXJSZWRpcmVjdEZvclByb3Zpc2lv
bmFsTG9hZCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRDaGFuZ2VQcm92aXNpb25hbFVS
TCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRDYW5jZWxDbGllbnRSZWRpcmVjdCgpIGZp
bmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsUGVyZm9ybUNsaWVudFJlZGlyZWN0KGNvbnN0IFdl
YkNvcmU6OlVSTCYsIGRvdWJsZSBpbnRlcnZhbCwgZG91YmxlIGZpcmVEYXRlKSBmaW5hbDsKKyAg
ICB2b2lkIGRpc3BhdGNoRGlkQ2hhbmdlTG9jYXRpb25XaXRoaW5QYWdlKCkgZmluYWw7CisgICAg
dm9pZCBkaXNwYXRjaERpZFB1c2hTdGF0ZVdpdGhpblBhZ2UoKSBmaW5hbDsKKyAgICB2b2lkIGRp
c3BhdGNoRGlkUmVwbGFjZVN0YXRlV2l0aGluUGFnZSgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0
Y2hEaWRQb3BTdGF0ZVdpdGhpblBhZ2UoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbENs
b3NlKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVJY29uKCkgZmluYWw7Cisg
ICAgdm9pZCBkaXNwYXRjaERpZFN0YXJ0UHJvdmlzaW9uYWxMb2FkKCkgZmluYWw7CisgICAgdm9p
ZCBkaXNwYXRjaERpZFJlY2VpdmVUaXRsZShjb25zdCBXZWJDb3JlOjpTdHJpbmdXaXRoRGlyZWN0
aW9uJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZENvbW1pdExvYWQoc3RkOjpvcHRpb25h
bDxXZWJDb3JlOjpIYXNJbnNlY3VyZUNvbnRlbnQ+KSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNo
RGlkRmFpbFByb3Zpc2lvbmFsTG9hZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmlu
YWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
RXJyb3ImKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoRG9jdW1lbnRMb2FkKCkg
ZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWQoKSBmaW5hbDsKKworICAgIHZv
aWQgZGlzcGF0Y2hEaWRSZWFjaExheW91dE1pbGVzdG9uZShXZWJDb3JlOjpMYXlvdXRNaWxlc3Rv
bmVzKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkTGF5b3V0KCkgZmluYWw7CisKKyAgICBX
ZWJDb3JlOjpGcmFtZSogZGlzcGF0Y2hDcmVhdGVQYWdlKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRp
b25BY3Rpb24mKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoU2hvdygpIGZpbmFsOwogICAgIAot
ICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JSZXNwb25zZShjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgV2ViQ29y
ZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERlY2lk
ZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9u
JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgUGFzc1JlZlB0cjxXZWJDb3JlOjpG
b3JtU3RhdGU+LCBjb25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgV2ViQ29yZTo6RnJhbWVQb2xpY3lG
dW5jdGlvbikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmln
YXRpb25BY3Rpb24oY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYsIFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0YXRlPiwgV2Vi
Q29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBjYW5jZWxQb2xp
Y3lDaGVjaygpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JSZXNw
b25zZShjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0JiwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7CisgICAg
dm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBXZWJDb3Jl
OjpOYXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgV2Vi
Q29yZTo6Rm9ybVN0YXRlKiwgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIFdlYkNvcmU6OkZyYW1l
UG9saWN5RnVuY3Rpb24pIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JO
YXZpZ2F0aW9uQWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpGb3JtU3RhdGUqLCBXZWJDb3JlOjpG
cmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsKKyAgICB2b2lkIGNhbmNlbFBvbGljeUNoZWNrKCkg
ZmluYWw7CiAgICAgCi0gICAgdm9pZCBkaXNwYXRjaFVuYWJsZVRvSW1wbGVtZW50UG9saWN5KGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNo
VW5hYmxlVG9JbXBsZW1lbnRQb2xpY3koY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIGZp
bmFsOwogICAgIAotICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFBhc3NSZWZQ
dHI8V2ViQ29yZTo6Rm9ybVN0YXRlPikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxT
dWJtaXRGb3JtKFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0YXRlPiwgV2ViQ29yZTo6RnJhbWVQ
b2xpY3lGdW5jdGlvbikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5kU3VibWl0
RXZlbnQoUmVmPFdlYkNvcmU6OkZvcm1TdGF0ZT4mJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRj
aFdpbGxTdWJtaXRGb3JtKFdlYkNvcmU6OkZvcm1TdGF0ZSYsIFdlYkNvcmU6OkZyYW1lUG9saWN5
RnVuY3Rpb24pIGZpbmFsOwogICAgIAotICAgIHZvaWQgcmV2ZXJ0VG9Qcm92aXNpb25hbFN0YXRl
KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRNYWluRG9j
dW1lbnRFcnJvcihXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlRXJyb3ImKSBvdmVycmlkZTsKKyAgICB2b2lkIHJldmVydFRvUHJvdmlzaW9uYWxTdGF0ZShX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciopIGZpbmFsOworICAgIHZvaWQgc2V0TWFpbkRvY3VtZW50
RXJyb3IoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVy
cm9yJikgZmluYWw7CiAgICAgCi0gICAgdm9pZCBzZXRNYWluRnJhbWVEb2N1bWVudFJlYWR5KGJv
b2wpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0TWFpbkZyYW1lRG9jdW1lbnRSZWFkeShib29sKSBm
aW5hbDsKICAgICAKLSAgICB2b2lkIHN0YXJ0RG93bmxvYWQoY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0JiwgY29uc3QgU3RyaW5nJiBzdWdnZXN0ZWROYW1lID0gU3RyaW5nKCkpIG92ZXJy
aWRlOworICAgIHZvaWQgc3RhcnREb3dubG9hZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QmLCBjb25zdCBTdHJpbmcmIHN1Z2dlc3RlZE5hbWUgPSBTdHJpbmcoKSkgZmluYWw7CiAgICAg
Ci0gICAgdm9pZCB3aWxsQ2hhbmdlVGl0bGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBvdmVy
cmlkZTsKLSAgICB2b2lkIGRpZENoYW5nZVRpdGxlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikg
b3ZlcnJpZGU7CisgICAgdm9pZCB3aWxsQ2hhbmdlVGl0bGUoV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXIqKSBmaW5hbDsKKyAgICB2b2lkIGRpZENoYW5nZVRpdGxlKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKikgZmluYWw7CiAKLSAgICB2b2lkIHdpbGxSZXBsYWNlTXVsdGlwYXJ0Q29udGVudCgpIG92
ZXJyaWRlOwotICAgIHZvaWQgZGlkUmVwbGFjZU11bHRpcGFydENvbnRlbnQoKSBvdmVycmlkZTsK
KyAgICB2b2lkIHdpbGxSZXBsYWNlTXVsdGlwYXJ0Q29udGVudCgpIGZpbmFsOworICAgIHZvaWQg
ZGlkUmVwbGFjZU11bHRpcGFydENvbnRlbnQoKSBmaW5hbDsKIAotICAgIHZvaWQgY29tbWl0dGVk
TG9hZChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IGNoYXIqLCBpbnQpIG92ZXJyaWRl
OwotICAgIHZvaWQgZmluaXNoZWRMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgb3Zl
cnJpZGU7CisgICAgdm9pZCBjb21taXR0ZWRMb2FkKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwg
Y29uc3QgY2hhciosIGludCkgZmluYWw7CisgICAgdm9pZCBmaW5pc2hlZExvYWRpbmcoV2ViQ29y
ZTo6RG9jdW1lbnRMb2FkZXIqKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHVwZGF0ZUdsb2JhbEhp
c3RvcnkoKSBvdmVycmlkZTsKLSAgICB2b2lkIHVwZGF0ZUdsb2JhbEhpc3RvcnlSZWRpcmVjdExp
bmtzKCkgb3ZlcnJpZGU7CisgICAgdm9pZCB1cGRhdGVHbG9iYWxIaXN0b3J5KCkgZmluYWw7Cisg
ICAgdm9pZCB1cGRhdGVHbG9iYWxIaXN0b3J5UmVkaXJlY3RMaW5rcygpIGZpbmFsOwogICAgIAot
ICAgIGJvb2wgc2hvdWxkR29Ub0hpc3RvcnlJdGVtKFdlYkNvcmU6Okhpc3RvcnlJdGVtKikgY29u
c3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRHb1RvSGlzdG9yeUl0ZW0oV2ViQ29yZTo6SGlz
dG9yeUl0ZW0qKSBjb25zdCBmaW5hbDsKIAotICAgIHZvaWQgZGlkRGlzcGxheUluc2VjdXJlQ29u
dGVudCgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkUnVuSW5zZWN1cmVDb250ZW50KFdlYkNvcmU6
OlNlY3VyaXR5T3JpZ2luKiwgY29uc3QgV2ViQ29yZTo6VVJMJikgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBkaWREZXRlY3RYU1MoY29uc3QgV2ViQ29yZTo6VVJMJiwgYm9vbCBkaWRCbG9ja0VudGlyZVBh
Z2UpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkRGlzcGxheUluc2VjdXJlQ29udGVudCgpIGZpbmFs
OworICAgIHZvaWQgZGlkUnVuSW5zZWN1cmVDb250ZW50KFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2lu
KiwgY29uc3QgV2ViQ29yZTo6VVJMJikgZmluYWw7CisgICAgdm9pZCBkaWREZXRlY3RYU1MoY29u
c3QgV2ViQ29yZTo6VVJMJiwgYm9vbCBkaWRCbG9ja0VudGlyZVBhZ2UpIGZpbmFsOwogCi0gICAg
V2ViQ29yZTo6UmVzb3VyY2VFcnJvciBjYW5jZWxsZWRFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGJsb2Nr
ZWRFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKLSAgICBX
ZWJDb3JlOjpSZXNvdXJjZUVycm9yIGJsb2NrZWRCeUNvbnRlbnRCbG9ja2VyRXJyb3IoY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3Vy
Y2VFcnJvciBjYW5ub3RTaG93VVJMRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBpbnRlcnJ1cHRlZEZvclBv
bGljeUNoYW5nZUVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRl
OworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgY2FuY2VsbGVkRXJyb3IoY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBi
bG9ja2VkRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CisgICAg
V2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkQnlDb250ZW50QmxvY2tlckVycm9yKGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOworICAgIFdlYkNvcmU6OlJlc291cmNl
RXJyb3IgY2Fubm90U2hvd1VSTEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYp
IGZpbmFsOworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgaW50ZXJydXB0ZWRGb3JQb2xpY3lD
aGFuZ2VFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKICNpZiBF
TkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCi0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9j
a2VkQnlDb250ZW50RmlsdGVyRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikg
b3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkQnlDb250ZW50Rmls
dGVyRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CiAjZW5kaWYK
ICAgICAKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dNSU1FVHlwZUVycm9y
KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKLSAgICBXZWJDb3Jl
OjpSZXNvdXJjZUVycm9yIGZpbGVEb2VzTm90RXhpc3RFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBwbHVn
aW5XaWxsSGFuZGxlTG9hZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBv
dmVycmlkZTsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dNSU1FVHlwZUVy
cm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICBXZWJDb3Jl
OjpSZXNvdXJjZUVycm9yIGZpbGVEb2VzTm90RXhpc3RFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlc3BvbnNlJikgZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBwbHVnaW5X
aWxsSGFuZGxlTG9hZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5h
bDsKICAgICAKLSAgICBib29sIHNob3VsZEZhbGxCYWNrKGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
RXJyb3ImKSBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZEZhbGxCYWNrKGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKICAgICAKLSAgICBib29sIGNhbkhhbmRsZVJlcXVlc3Qo
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgYm9v
bCBjYW5TaG93TUlNRVR5cGUoY29uc3QgU3RyaW5nJiBNSU1FVHlwZSkgY29uc3Qgb3ZlcnJpZGU7
Ci0gICAgYm9vbCBjYW5TaG93TUlNRVR5cGVBc0hUTUwoY29uc3QgU3RyaW5nJiBNSU1FVHlwZSkg
Y29uc3Qgb3ZlcnJpZGU7Ci0gICAgYm9vbCByZXByZXNlbnRhdGlvbkV4aXN0c0ZvclVSTFNjaGVt
ZShjb25zdCBTdHJpbmcmIFVSTFNjaGVtZSkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgU3RyaW5nIGdl
bmVyYXRlZE1JTUVUeXBlRm9yVVJMU2NoZW1lKGNvbnN0IFN0cmluZyYgVVJMU2NoZW1lKSBjb25z
dCBvdmVycmlkZTsKKyAgICBib29sIGNhbkhhbmRsZVJlcXVlc3QoY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0JikgY29uc3QgZmluYWw7CisgICAgYm9vbCBjYW5TaG93TUlNRVR5cGUoY29u
c3QgU3RyaW5nJiBNSU1FVHlwZSkgY29uc3QgZmluYWw7CisgICAgYm9vbCBjYW5TaG93TUlNRVR5
cGVBc0hUTUwoY29uc3QgU3RyaW5nJiBNSU1FVHlwZSkgY29uc3QgZmluYWw7CisgICAgYm9vbCBy
ZXByZXNlbnRhdGlvbkV4aXN0c0ZvclVSTFNjaGVtZShjb25zdCBTdHJpbmcmIFVSTFNjaGVtZSkg
Y29uc3QgZmluYWw7CisgICAgU3RyaW5nIGdlbmVyYXRlZE1JTUVUeXBlRm9yVVJMU2NoZW1lKGNv
bnN0IFN0cmluZyYgVVJMU2NoZW1lKSBjb25zdCBmaW5hbDsKICAgICAKLSAgICB2b2lkIGZyYW1l
TG9hZENvbXBsZXRlZCgpIG92ZXJyaWRlOwotICAgIHZvaWQgc2F2ZVZpZXdTdGF0ZVRvSXRlbShX
ZWJDb3JlOjpIaXN0b3J5SXRlbSYpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVzdG9yZVZpZXdTdGF0
ZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgcHJvdmlzaW9uYWxMb2FkU3RhcnRlZCgpIG92ZXJyaWRl
OwotICAgIHZvaWQgZGlkRmluaXNoTG9hZCgpIG92ZXJyaWRlOwotICAgIHZvaWQgcHJlcGFyZUZv
ckRhdGFTb3VyY2VSZXBsYWNlbWVudCgpIG92ZXJyaWRlOworICAgIHZvaWQgZnJhbWVMb2FkQ29t
cGxldGVkKCkgZmluYWw7CisgICAgdm9pZCBzYXZlVmlld1N0YXRlVG9JdGVtKFdlYkNvcmU6Okhp
c3RvcnlJdGVtJikgZmluYWw7CisgICAgdm9pZCByZXN0b3JlVmlld1N0YXRlKCkgZmluYWw7Cisg
ICAgdm9pZCBwcm92aXNpb25hbExvYWRTdGFydGVkKCkgZmluYWw7CisgICAgdm9pZCBkaWRGaW5p
c2hMb2FkKCkgZmluYWw7CisgICAgdm9pZCBwcmVwYXJlRm9yRGF0YVNvdXJjZVJlcGxhY2VtZW50
KCkgZmluYWw7CiAgICAgCi0gICAgUmVmPFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyPiBjcmVhdGVE
b2N1bWVudExvYWRlcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJD
b3JlOjpTdWJzdGl0dXRlRGF0YSYpIG92ZXJyaWRlOwotICAgIHZvaWQgdXBkYXRlQ2FjaGVkRG9j
dW1lbnRMb2FkZXIoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXImKSBvdmVycmlkZTsKKyAgICBSZWY8
V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI+IGNyZWF0ZURvY3VtZW50TG9hZGVyKGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlN1YnN0aXR1dGVEYXRhJikgZmlu
YWw7CisgICAgdm9pZCB1cGRhdGVDYWNoZWREb2N1bWVudExvYWRlcihXZWJDb3JlOjpEb2N1bWVu
dExvYWRlciYpIGZpbmFsOwogCi0gICAgdm9pZCBzZXRUaXRsZShjb25zdCBXZWJDb3JlOjpTdHJp
bmdXaXRoRGlyZWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6VVJMJikgb3ZlcnJpZGU7CisgICAgdm9p
ZCBzZXRUaXRsZShjb25zdCBXZWJDb3JlOjpTdHJpbmdXaXRoRGlyZWN0aW9uJiwgY29uc3QgV2Vi
Q29yZTo6VVJMJikgZmluYWw7CiAgICAgCi0gICAgU3RyaW5nIHVzZXJBZ2VudChjb25zdCBXZWJD
b3JlOjpVUkwmKSBvdmVycmlkZTsKKyAgICBTdHJpbmcgdXNlckFnZW50KGNvbnN0IFdlYkNvcmU6
OlVSTCYpIGZpbmFsOwogICAgIAotICAgIHZvaWQgc2F2ZVBsYXRmb3JtRGF0YVRvQ2FjaGVkRnJh
bWUoV2ViQ29yZTo6Q2FjaGVkRnJhbWUqKSBvdmVycmlkZTsKLSAgICB2b2lkIHRyYW5zaXRpb25U
b0NvbW1pdHRlZEZyb21DYWNoZWRGcmFtZShXZWJDb3JlOjpDYWNoZWRGcmFtZSopIG92ZXJyaWRl
OworICAgIHZvaWQgc2F2ZVBsYXRmb3JtRGF0YVRvQ2FjaGVkRnJhbWUoV2ViQ29yZTo6Q2FjaGVk
RnJhbWUqKSBmaW5hbDsKKyAgICB2b2lkIHRyYW5zaXRpb25Ub0NvbW1pdHRlZEZyb21DYWNoZWRG
cmFtZShXZWJDb3JlOjpDYWNoZWRGcmFtZSopIGZpbmFsOwogI2lmIFBMQVRGT1JNKElPUykKLSAg
ICB2b2lkIGRpZFJlc3RvcmVGcmFtZUhpZXJhcmNoeUZvckNhY2hlZEZyYW1lKCkgb3ZlcnJpZGU7
CisgICAgdm9pZCBkaWRSZXN0b3JlRnJhbWVIaWVyYXJjaHlGb3JDYWNoZWRGcmFtZSgpIGZpbmFs
OwogI2VuZGlmCi0gICAgdm9pZCB0cmFuc2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdlKCkgb3Zl
cnJpZGU7CisgICAgdm9pZCB0cmFuc2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdlKCkgZmluYWw7
CiAKLSAgICB2b2lkIGRpZFNhdmVUb1BhZ2VDYWNoZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlk
UmVzdG9yZUZyb21QYWdlQ2FjaGUoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZFNhdmVUb1BhZ2VD
YWNoZSgpIGZpbmFsOworICAgIHZvaWQgZGlkUmVzdG9yZUZyb21QYWdlQ2FjaGUoKSBmaW5hbDsK
IAotICAgIHZvaWQgZGlzcGF0Y2hEaWRCZWNvbWVGcmFtZXNldChib29sKSBvdmVycmlkZTsKKyAg
ICB2b2lkIGRpc3BhdGNoRGlkQmVjb21lRnJhbWVzZXQoYm9vbCkgZmluYWw7CiAKLSAgICBib29s
IGNhbkNhY2hlUGFnZSgpIGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQgY29udmVydE1haW5SZXNv
dXJjZUxvYWRUb0Rvd25sb2FkKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6U2Vz
c2lvbklELCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CisgICAgYm9vbCBjYW5DYWNoZVBhZ2UoKSBjb25z
dCBmaW5hbDsKKyAgICB2b2lkIGNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZChXZWJD
b3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlNlc3Npb25JRCwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFs
OwogCi0gICAgUmVmUHRyPFdlYkNvcmU6OkZyYW1lPiBjcmVhdGVGcmFtZShjb25zdCBXZWJDb3Jl
OjpVUkwmLCBjb25zdCBTdHJpbmcmIG5hbWUsIFdlYkNvcmU6OkhUTUxGcmFtZU93bmVyRWxlbWVu
dCosCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBTdHJp
bmcmIHJlZmVycmVyLCBib29sIGFsbG93c1Njcm9sbGluZywgaW50IG1hcmdpbldpZHRoLCBpbnQg
bWFyZ2luSGVpZ2h0KSBvdmVycmlkZTsKLSAgICAKLSAgICBSZWZQdHI8V2ViQ29yZTo6V2lkZ2V0
PiBjcmVhdGVQbHVnaW4oY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxQbHVn
SW5FbGVtZW50KiwgY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBj
b25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFN0cmluZyYsIGJvb2wgbG9hZE1hbnVhbGx5KSBv
dmVycmlkZTsKLSAgICB2b2lkIHJlY3JlYXRlUGx1Z2luKFdlYkNvcmU6OldpZGdldCopIG92ZXJy
aWRlOwotICAgIHZvaWQgcmVkaXJlY3REYXRhVG9QbHVnaW4oV2ViQ29yZTo6V2lkZ2V0KiBwbHVn
aW5XaWRnZXQpIG92ZXJyaWRlOworICAgIFJlZlB0cjxXZWJDb3JlOjpGcmFtZT4gY3JlYXRlRnJh
bWUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgU3RyaW5nJiBuYW1lLCBXZWJDb3JlOjpIVE1M
RnJhbWVPd25lckVsZW1lbnQmLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBib29sIGFsbG93c1Nj
cm9sbGluZywgaW50IG1hcmdpbldpZHRoLCBpbnQgbWFyZ2luSGVpZ2h0KSBmaW5hbDsKKworICAg
IFJlZlB0cjxXZWJDb3JlOjpXaWRnZXQ+IGNyZWF0ZVBsdWdpbihjb25zdCBXZWJDb3JlOjpJbnRT
aXplJiwgV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQmLCBjb25zdCBXZWJDb3JlOjpVUkwmLCBj
b25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgU3RyaW5n
JiwgYm9vbCBsb2FkTWFudWFsbHkpIGZpbmFsOworICAgIHZvaWQgcmVjcmVhdGVQbHVnaW4oV2Vi
Q29yZTo6V2lkZ2V0KikgZmluYWw7CisgICAgdm9pZCByZWRpcmVjdERhdGFUb1BsdWdpbihXZWJD
b3JlOjpXaWRnZXQqIHBsdWdpbldpZGdldCkgZmluYWw7CiAgICAgCiAjaWYgRU5BQkxFKFdFQkdM
KQotICAgIFdlYkNvcmU6OldlYkdMTG9hZFBvbGljeSB3ZWJHTFBvbGljeUZvclVSTChjb25zdCBT
dHJpbmcmKSBjb25zdCBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgcmVz
b2x2ZVdlYkdMUG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYpIGNvbnN0IG92ZXJyaWRlOworICAg
IFdlYkNvcmU6OldlYkdMTG9hZFBvbGljeSB3ZWJHTFBvbGljeUZvclVSTChjb25zdCBTdHJpbmcm
KSBjb25zdCBmaW5hbDsKKyAgICBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgcmVzb2x2ZVdlYkdM
UG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYpIGNvbnN0IGZpbmFsOwogI2VuZGlmIC8vIEVOQUJM
RShXRUJHTCkKIAotICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6V2lkZ2V0PiBjcmVhdGVKYXZhQXBw
bGV0V2lkZ2V0KGNvbnN0IFdlYkNvcmU6OkludFNpemUmLCBXZWJDb3JlOjpIVE1MQXBwbGV0RWxl
bWVudCosIGNvbnN0IFdlYkNvcmU6OlVSTCYgYmFzZVVSTCwgY29uc3QgVmVjdG9yPFN0cmluZz4m
IHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykgb3ZlcnJpZGU7
CisgICAgUmVmUHRyPFdlYkNvcmU6OldpZGdldD4gY3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25z
dCBXZWJDb3JlOjpJbnRTaXplJiwgV2ViQ29yZTo6SFRNTEFwcGxldEVsZW1lbnQmLCBjb25zdCBX
ZWJDb3JlOjpVUkwmIGJhc2VVUkwsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBj
b25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpIGZpbmFsOwogICAgIAotICAgIFdlYkNv
cmU6Ok9iamVjdENvbnRlbnRUeXBlIG9iamVjdENvbnRlbnRUeXBlKGNvbnN0IFdlYkNvcmU6OlVS
TCYsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUpIG92ZXJyaWRlOwotICAgIFN0cmluZyBvdmVycmlk
ZU1lZGlhVHlwZSgpIGNvbnN0IG92ZXJyaWRlOworICAgIFdlYkNvcmU6Ok9iamVjdENvbnRlbnRU
eXBlIG9iamVjdENvbnRlbnRUeXBlKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNvbnN0IFN0cmluZyYg
bWltZVR5cGUpIGZpbmFsOworICAgIFN0cmluZyBvdmVycmlkZU1lZGlhVHlwZSgpIGNvbnN0IGZp
bmFsOwogCi0gICAgdm9pZCBkaXNwYXRjaERpZENsZWFyV2luZG93T2JqZWN0SW5Xb3JsZChXZWJD
b3JlOjpET01XcmFwcGVyV29ybGQmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGlkQ2xl
YXJXaW5kb3dPYmplY3RJbldvcmxkKFdlYkNvcmU6OkRPTVdyYXBwZXJXb3JsZCYpIGZpbmFsOwog
ICAgIAotICAgIHZvaWQgZGlzcGF0Y2hHbG9iYWxPYmplY3RBdmFpbGFibGUoV2ViQ29yZTo6RE9N
V3JhcHBlcldvcmxkJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxEaXNjb25uZWN0
RE9NV2luZG93RXh0ZW5zaW9uRnJvbUdsb2JhbE9iamVjdChXZWJDb3JlOjpET01XaW5kb3dFeHRl
bnNpb24qKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjb25uZWN0RE9NV2luZG93
RXh0ZW5zaW9uVG9HbG9iYWxPYmplY3QoV2ViQ29yZTo6RE9NV2luZG93RXh0ZW5zaW9uKikgb3Zl
cnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxEZXN0cm95R2xvYmFsT2JqZWN0Rm9yRE9NV2lu
ZG93RXh0ZW5zaW9uKFdlYkNvcmU6OkRPTVdpbmRvd0V4dGVuc2lvbiopIG92ZXJyaWRlOworICAg
IHZvaWQgZGlzcGF0Y2hHbG9iYWxPYmplY3RBdmFpbGFibGUoV2ViQ29yZTo6RE9NV3JhcHBlcldv
cmxkJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxEaXNjb25uZWN0RE9NV2luZG93RXh0
ZW5zaW9uRnJvbUdsb2JhbE9iamVjdChXZWJDb3JlOjpET01XaW5kb3dFeHRlbnNpb24qKSBmaW5h
bDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjb25uZWN0RE9NV2luZG93RXh0ZW5zaW9uVG9HbG9i
YWxPYmplY3QoV2ViQ29yZTo6RE9NV2luZG93RXh0ZW5zaW9uKikgZmluYWw7CisgICAgdm9pZCBk
aXNwYXRjaFdpbGxEZXN0cm95R2xvYmFsT2JqZWN0Rm9yRE9NV2luZG93RXh0ZW5zaW9uKFdlYkNv
cmU6OkRPTVdpbmRvd0V4dGVuc2lvbiopIGZpbmFsOwogCi0gICAgdm9pZCByZWdpc3RlckZvcklj
b25Ob3RpZmljYXRpb24oYm9vbCBsaXN0ZW4gPSB0cnVlKSBvdmVycmlkZTsKKyAgICB2b2lkIHJl
Z2lzdGVyRm9ySWNvbk5vdGlmaWNhdGlvbihib29sIGxpc3RlbiA9IHRydWUpIGZpbmFsOwogICAg
IAogI2lmIFBMQVRGT1JNKENPQ09BKQotICAgIFJlbW90ZUFYT2JqZWN0UmVmIGFjY2Vzc2liaWxp
dHlSZW1vdGVPYmplY3QoKSBvdmVycmlkZTsKKyAgICBSZW1vdGVBWE9iamVjdFJlZiBhY2Nlc3Np
YmlsaXR5UmVtb3RlT2JqZWN0KCkgZmluYWw7CiAgICAgCi0gICAgTlNDYWNoZWRVUkxSZXNwb25z
ZSogd2lsbENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2UqKSBjb25zdCBvdmVycmlkZTsKKyAg
ICBOU0NhY2hlZFVSTFJlc3BvbnNlKiB3aWxsQ2FjaGVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVu
dExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25zZSop
IGNvbnN0IGZpbmFsOwogCi0gICAgTlNEaWN0aW9uYXJ5ICpkYXRhRGV0ZWN0aW9uQ29udGV4dCgp
IG92ZXJyaWRlOworICAgIE5TRGljdGlvbmFyeSAqZGF0YURldGVjdGlvbkNvbnRleHQoKSBmaW5h
bDsKICNlbmRpZgogCi0gICAgYm9vbCBzaG91bGRBbHdheXNVc2VQbHVnaW5Eb2N1bWVudChjb25z
dCBTdHJpbmcmIC8qbWltZVR5cGUqLykgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRB
bHdheXNVc2VQbHVnaW5Eb2N1bWVudChjb25zdCBTdHJpbmcmIC8qbWltZVR5cGUqLykgY29uc3Qg
ZmluYWw7CiAKLSAgICB2b2lkIGRpZENoYW5nZVNjcm9sbE9mZnNldCgpIG92ZXJyaWRlOworICAg
IHZvaWQgZGlkQ2hhbmdlU2Nyb2xsT2Zmc2V0KCkgZmluYWw7CiAKLSAgICBib29sIGFsbG93U2Ny
aXB0KGJvb2wgZW5hYmxlZFBlclNldHRpbmdzKSBvdmVycmlkZTsKKyAgICBib29sIGFsbG93U2Ny
aXB0KGJvb2wgZW5hYmxlZFBlclNldHRpbmdzKSBmaW5hbDsKIAotICAgIGJvb2wgc2hvdWxkRm9y
Y2VVbml2ZXJzYWxBY2Nlc3NGcm9tTG9jYWxVUkwoY29uc3QgV2ViQ29yZTo6VVJMJikgb3ZlcnJp
ZGU7CisgICAgYm9vbCBzaG91bGRGb3JjZVVuaXZlcnNhbEFjY2Vzc0Zyb21Mb2NhbFVSTChjb25z
dCBXZWJDb3JlOjpVUkwmKSBmaW5hbDsKIAotICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6RnJhbWVO
ZXR3b3JraW5nQ29udGV4dD4gY3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKSBvdmVycmlkZTsKKyAg
ICBSZWY8V2ViQ29yZTo6RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRlTmV0d29ya2luZ0Nv
bnRleHQoKSBmaW5hbDsKIAogI2lmIEVOQUJMRShSRVFVRVNUX0FVVE9DT01QTEVURSkKLSAgICB2
b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxldGUoUGFzc1JlZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+
KSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxldGUoUmVmPFdlYkNvcmU6
OkZvcm1TdGF0ZT4mJikgZmluYWw7CiAjZW5kaWYKIAotICAgIHZvaWQgZm9yY2VQYWdlVHJhbnNp
dGlvbklmTmVlZGVkKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBmb3JjZVBhZ2VUcmFuc2l0aW9uSWZO
ZWVkZWQoKSBmaW5hbDsKIAogI2lmIFVTRShRVUlDS19MT09LKQotICAgIHZvaWQgZGlkQ3JlYXRl
UXVpY2tMb29rSGFuZGxlKFdlYkNvcmU6OlF1aWNrTG9va0hhbmRsZSYpIG92ZXJyaWRlOworICAg
IHZvaWQgZGlkQ3JlYXRlUXVpY2tMb29rSGFuZGxlKFdlYkNvcmU6OlF1aWNrTG9va0hhbmRsZSYp
IGZpbmFsOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCi0gICAgdm9p
ZCBjb250ZW50RmlsdGVyRGlkQmxvY2tMb2FkKFdlYkNvcmU6OkNvbnRlbnRGaWx0ZXJVbmJsb2Nr
SGFuZGxlcikgb3ZlcnJpZGU7CisgICAgdm9pZCBjb250ZW50RmlsdGVyRGlkQmxvY2tMb2FkKFdl
YkNvcmU6OkNvbnRlbnRGaWx0ZXJVbmJsb2NrSGFuZGxlcikgZmluYWw7CiAjZW5kaWYKIAotICAg
IHZvaWQgcHJlZmV0Y2hETlMoY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7CisgICAgdm9pZCBwcmVm
ZXRjaEROUyhjb25zdCBTdHJpbmcmKSBmaW5hbDsKIAotICAgIHZvaWQgZGlkUmVzdG9yZVNjcm9s
bFBvc2l0aW9uKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRSZXN0b3JlU2Nyb2xsUG9zaXRpb24o
KSBmaW5hbDsKIAotICAgIGJvb2wgdXNlSWNvbkxvYWRpbmdDbGllbnQoKSBvdmVycmlkZTsKLSAg
ICB2b2lkIGdldExvYWREZWNpc2lvbkZvckljb24oY29uc3QgV2ViQ29yZTo6TGlua0ljb24mLCB1
aW50NjRfdCBjYWxsYmFja0lEKSBvdmVycmlkZTsKLSAgICB2b2lkIGZpbmlzaGVkTG9hZGluZ0lj
b24odWludDY0X3QgbG9hZElkZW50aWZpZXIsIFdlYkNvcmU6OlNoYXJlZEJ1ZmZlciopIG92ZXJy
aWRlOworICAgIGJvb2wgdXNlSWNvbkxvYWRpbmdDbGllbnQoKSBmaW5hbDsKKyAgICB2b2lkIGdl
dExvYWREZWNpc2lvbkZvckljb24oY29uc3QgV2ViQ29yZTo6TGlua0ljb24mLCB1aW50NjRfdCBj
YWxsYmFja0lEKSBmaW5hbDsKKyAgICB2b2lkIGZpbmlzaGVkTG9hZGluZ0ljb24odWludDY0X3Qg
bG9hZElkZW50aWZpZXIsIFdlYkNvcmU6OlNoYXJlZEJ1ZmZlciopIGZpbmFsOwogCiAgICAgV2Vi
RnJhbWUqIG1fZnJhbWU7CiAgICAgUmVmUHRyPFBsdWdpblZpZXc+IG1fcGx1Z2luVmlldzsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcCBi
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAppbmRleCBlOTRm
ODdhOWRkZjc5YWMzNDBkZmUwMTVkZDZiNWUzMmE0YWVkYjI4Li5jNTAyYzYyN2UyOTJiYmU1MzUy
MmE5YTc3NDMyMjA3YjE4MGUxNmExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJQYWdlL1dlYlBhZ2UuY3BwCkBAIC0zNDIsNyArMzQyLDcgQEAgV2ViUGFnZTo6V2ViUGFnZSh1
aW50NjRfdCBwYWdlSUQsIGNvbnN0IFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMmIHBhcmFtZXRl
cnMpCiAjZW5kaWYKIAogICAgIFBhZ2VDb25maWd1cmF0aW9uIHBhZ2VDb25maWd1cmF0aW9uKG1h
a2VVbmlxdWVSZWY8V2ViRWRpdG9yQ2xpZW50Pih0aGlzKSwgV2ViU29ja2V0UHJvdmlkZXI6OmNy
ZWF0ZSgpKTsKLSAgICBwYWdlQ29uZmlndXJhdGlvbi5jaHJvbWVDbGllbnQgPSBuZXcgV2ViQ2hy
b21lQ2xpZW50KHRoaXMpOworICAgIHBhZ2VDb25maWd1cmF0aW9uLmNocm9tZUNsaWVudCA9IG5l
dyBXZWJDaHJvbWVDbGllbnQoKnRoaXMpOwogI2lmIEVOQUJMRShDT05URVhUX01FTlVTKQogICAg
IHBhZ2VDb25maWd1cmF0aW9uLmNvbnRleHRNZW51Q2xpZW50ID0gbmV3IFdlYkNvbnRleHRNZW51
Q2xpZW50KHRoaXMpOwogI2VuZGlmCkBAIC02OTgsNyArNjk4LDggQEAgdm9pZCBXZWJQYWdlOjpp
bml0aWFsaXplSW5qZWN0ZWRCdW5kbGVEaWFnbm9zdGljTG9nZ2luZ0NsaWVudChXS0J1bmRsZVBh
Z2VEaWFnbm8KIH0KIAogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQotUGFzc1JlZlB0
cjxQbHVnaW4+IFdlYlBhZ2U6OmNyZWF0ZVBsdWdpbihXZWJGcmFtZSogZnJhbWUsIEhUTUxQbHVn
SW5FbGVtZW50KiBwbHVnaW5FbGVtZW50LCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmIHBhcmFt
ZXRlcnMsIFN0cmluZyYgbmV3TUlNRVR5cGUpCisKK1JlZlB0cjxQbHVnaW4+IFdlYlBhZ2U6OmNy
ZWF0ZVBsdWdpbihXZWJGcmFtZSogZnJhbWUsIEhUTUxQbHVnSW5FbGVtZW50KiBwbHVnaW5FbGVt
ZW50LCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmIHBhcmFtZXRlcnMsIFN0cmluZyYgbmV3TUlN
RVR5cGUpCiB7CiAgICAgU3RyaW5nIGZyYW1lVVJMU3RyaW5nID0gZnJhbWUtPmNvcmVGcmFtZSgp
LT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwogICAg
IFN0cmluZyBwYWdlVVJMU3RyaW5nID0gbV9wYWdlLT5tYWluRnJhbWUoKS5sb2FkZXIoKS5kb2N1
bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwpAQCAtMTMyNSw3ICsxMzI2LDcg
QEAgdm9pZCBXZWJQYWdlOjpsYXlvdXRJZk5lZWRlZCgpCiAKIFdlYlBhZ2UqIFdlYlBhZ2U6OmZy
b21Db3JlUGFnZShQYWdlKiBwYWdlKQogewotICAgIHJldHVybiBzdGF0aWNfY2FzdDxXZWJDaHJv
bWVDbGllbnQmPihwYWdlLT5jaHJvbWUoKS5jbGllbnQoKSkucGFnZSgpOworICAgIHJldHVybiAm
c3RhdGljX2Nhc3Q8V2ViQ2hyb21lQ2xpZW50Jj4ocGFnZS0+Y2hyb21lKCkuY2xpZW50KCkpLnBh
Z2UoKTsKIH0KIAogdm9pZCBXZWJQYWdlOjpzZXRTaXplKGNvbnN0IFdlYkNvcmU6OkludFNpemUm
IHZpZXdTaXplKQpAQCAtMTc5MSw3ICsxNzkyLDggQEAgdm9pZCBXZWJQYWdlOjpwb3N0SW5qZWN0
ZWRCdW5kbGVNZXNzYWdlKGNvbnN0IFN0cmluZyYgbWVzc2FnZU5hbWUsIGNvbnN0IFVzZXJEYXQK
IH0KIAogI2lmICFQTEFURk9STShJT1MpCi12b2lkIFdlYlBhZ2U6OnNldEhlYWRlclBhZ2VCYW5u
ZXIoUGFzc1JlZlB0cjxQYWdlQmFubmVyPiBwYWdlQmFubmVyKQorCit2b2lkIFdlYlBhZ2U6OnNl
dEhlYWRlclBhZ2VCYW5uZXIoUGFnZUJhbm5lciogcGFnZUJhbm5lcikKIHsKICAgICBpZiAobV9o
ZWFkZXJCYW5uZXIpCiAgICAgICAgIG1faGVhZGVyQmFubmVyLT5kZXRhY2hGcm9tUGFnZSgpOwpA
QCAtMTgwNyw3ICsxODA5LDcgQEAgUGFnZUJhbm5lciogV2ViUGFnZTo6aGVhZGVyUGFnZUJhbm5l
cigpCiAgICAgcmV0dXJuIG1faGVhZGVyQmFubmVyLmdldCgpOwogfQogCi12b2lkIFdlYlBhZ2U6
OnNldEZvb3RlclBhZ2VCYW5uZXIoUGFzc1JlZlB0cjxQYWdlQmFubmVyPiBwYWdlQmFubmVyKQor
dm9pZCBXZWJQYWdlOjpzZXRGb290ZXJQYWdlQmFubmVyKFBhZ2VCYW5uZXIqIHBhZ2VCYW5uZXIp
CiB7CiAgICAgaWYgKG1fZm9vdGVyQmFubmVyKQogICAgICAgICBtX2Zvb3RlckJhbm5lci0+ZGV0
YWNoRnJvbVBhZ2UoKTsKQEAgLTM1NzUsNiArMzU3Nyw3IEBAIHZvaWQgV2ViUGFnZTo6c2V0QWN0
aXZlUG9wdXBNZW51KFdlYlBvcHVwTWVudSogbWVudSkKIH0KIAogI2lmIEVOQUJMRShJTlBVVF9U
WVBFX0NPTE9SKQorCiB2b2lkIFdlYlBhZ2U6OnNldEFjdGl2ZUNvbG9yQ2hvb3NlcihXZWJDb2xv
ckNob29zZXIqIGNvbG9yQ2hvb3NlcikKIHsKICAgICBtX2FjdGl2ZUNvbG9yQ2hvb3NlciA9IGNv
bG9yQ2hvb3NlcjsKQEAgLTM1ODksMTEgKzM1OTIsMTIgQEAgdm9pZCBXZWJQYWdlOjpkaWRDaG9v
c2VDb2xvcihjb25zdCBXZWJDb3JlOjpDb2xvciYgY29sb3IpCiB7CiAgICAgbV9hY3RpdmVDb2xv
ckNob29zZXItPmRpZENob29zZUNvbG9yKGNvbG9yKTsKIH0KKwogI2VuZGlmCiAKLXZvaWQgV2Vi
UGFnZTo6c2V0QWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIoUGFzc1JlZlB0cjxXZWJPcGVu
UGFuZWxSZXN1bHRMaXN0ZW5lcj4gb3BlblBhbmVsUmVzdWx0TGlzdGVuZXIpCit2b2lkIFdlYlBh
Z2U6OnNldEFjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyKFJlZjxXZWJPcGVuUGFuZWxSZXN1
bHRMaXN0ZW5lcj4mJiBvcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcikKIHsKLSAgICBtX2FjdGl2ZU9w
ZW5QYW5lbFJlc3VsdExpc3RlbmVyID0gb3BlblBhbmVsUmVzdWx0TGlzdGVuZXI7CisgICAgbV9h
Y3RpdmVPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lciA9IFdURk1vdmUob3BlblBhbmVsUmVzdWx0TGlz
dGVuZXIpOwogfQogCiBib29sIFdlYlBhZ2U6OmZpbmRTdHJpbmdGcm9tSW5qZWN0ZWRCdW5kbGUo
Y29uc3QgU3RyaW5nJiB0YXJnZXQsIEZpbmRPcHRpb25zIG9wdGlvbnMpCkBAIC01NDA4LDExICs1
NDEyLDExIEBAIGJvb2wgV2ViUGFnZTo6cGx1Z0luSXNQcmltYXJ5U2l6ZShXZWJDb3JlOjpIVE1M
UGx1Z0luSW1hZ2VFbGVtZW50JiBwbHVnSW5JbWFnZUVsCiAKICNlbmRpZiAvLyBFTkFCTEUoUFJJ
TUFSWV9TTkFQU0hPVFRFRF9QTFVHSU5fSEVVUklTVElDKQogCi1QYXNzUmVmUHRyPFJhbmdlPiBX
ZWJQYWdlOjpjdXJyZW50U2VsZWN0aW9uQXNSYW5nZSgpCitSZWZQdHI8UmFuZ2U+IFdlYlBhZ2U6
OmN1cnJlbnRTZWxlY3Rpb25Bc1JhbmdlKCkKIHsKLSAgICBGcmFtZSogZnJhbWUgPSBmcmFtZVdp
dGhTZWxlY3Rpb24obV9wYWdlLmdldCgpKTsKKyAgICBhdXRvKiBmcmFtZSA9IGZyYW1lV2l0aFNl
bGVjdGlvbihtX3BhZ2UuZ2V0KCkpOwogICAgIGlmICghZnJhbWUpCi0gICAgICAgIHJldHVybiAw
OworICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAogICAgIHJldHVybiBmcmFtZS0+c2VsZWN0aW9u
KCkudG9Ob3JtYWxpemVkUmFuZ2UoKTsKIH0KQEAgLTU1MTIsNyArNTUxNiw3IEBAIHZvaWQgV2Vi
UGFnZTo6Z2V0U2FtcGxpbmdQcm9maWxlck91dHB1dCh1aW50NjRfdCBjYWxsYmFja0lEKQogI2Vu
ZGlmCiB9CiAKLVBhc3NSZWZQdHI8V2ViQ29yZTo6UmFuZ2U+IFdlYlBhZ2U6OnJhbmdlRnJvbUVk
aXRpbmdSYW5nZShXZWJDb3JlOjpGcmFtZSYgZnJhbWUsIGNvbnN0IEVkaXRpbmdSYW5nZSYgcmFu
Z2UsIEVkaXRpbmdSYW5nZUlzUmVsYXRpdmVUbyBlZGl0aW5nUmFuZ2VJc1JlbGF0aXZlVG8pCitS
ZWZQdHI8V2ViQ29yZTo6UmFuZ2U+IFdlYlBhZ2U6OnJhbmdlRnJvbUVkaXRpbmdSYW5nZShXZWJD
b3JlOjpGcmFtZSYgZnJhbWUsIGNvbnN0IEVkaXRpbmdSYW5nZSYgcmFuZ2UsIEVkaXRpbmdSYW5n
ZUlzUmVsYXRpdmVUbyBlZGl0aW5nUmFuZ2VJc1JlbGF0aXZlVG8pCiB7CiAgICAgQVNTRVJUKHJh
bmdlLmxvY2F0aW9uICE9IG5vdEZvdW5kKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJQYWdlLmgKaW5kZXggODFjZTc1MWY4ZWJkMWQ4ZTBlMGI3ZGNhNWZmMDdiYjcz
ZDNkMjE2NS4uYjY1ZDkzYmM3YWVjZWM2ZDc4Mjk0YmYxZWNiYjY1OGE4ZjU5OGIyNiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCkBAIC03NCw3ICs3NCw2
IEBACiAjaW5jbHVkZSA8bWVtb3J5PgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAjaW5jbHVk
ZSA8d3RmL01vbm90b25pY1RpbWUuaD4KLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2lu
Y2x1ZGUgPHd0Zi9SZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvUnVuTG9vcC5oPgogI2luY2x1ZGUg
PHd0Zi9TZWNvbmRzLmg+CkBAIC0zMTQsNyArMzEzLDcgQEAgcHVibGljOgogI2VuZGlmCiAKICAg
ICBXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lciogYWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVu
ZXIoKSBjb25zdCB7IHJldHVybiBtX2FjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLmdldCgp
OyB9Ci0gICAgdm9pZCBzZXRBY3RpdmVPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcihQYXNzUmVmUHRy
PFdlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyPik7CisgICAgdm9pZCBzZXRBY3RpdmVPcGVuUGFu
ZWxSZXN1bHRMaXN0ZW5lcihSZWY8V2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXI+JiYpOwogCiAg
ICAgdm9pZCBkaWRSZWNlaXZlTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXIm
KSBvdmVycmlkZTsKICAgICB2b2lkIGRpZFJlY2VpdmVTeW5jTWVzc2FnZShJUEM6OkNvbm5lY3Rp
b24mLCBJUEM6OkRlY29kZXImLCBzdGQ6OnVuaXF1ZV9wdHI8SVBDOjpFbmNvZGVyPiYpIG92ZXJy
aWRlOwpAQCAtMzU1LDE2ICszNTQsMTYgQEAgcHVibGljOgogICAgIFdlYkNvcmU6Ok1haW5GcmFt
ZSogbWFpbkZyYW1lKCkgY29uc3Q7IC8vIE1heSByZXR1cm4gMC4KICAgICBXZWJDb3JlOjpGcmFt
ZVZpZXcqIG1haW5GcmFtZVZpZXcoKSBjb25zdDsgLy8gTWF5IHJldHVybiAwLgogCi0gICAgUGFz
c1JlZlB0cjxXZWJDb3JlOjpSYW5nZT4gY3VycmVudFNlbGVjdGlvbkFzUmFuZ2UoKTsKKyAgICBS
ZWZQdHI8V2ViQ29yZTo6UmFuZ2U+IGN1cnJlbnRTZWxlY3Rpb25Bc1JhbmdlKCk7CiAKICNpZiBF
TkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKLSAgICBQYXNzUmVmUHRyPFBsdWdpbj4gY3JlYXRl
UGx1Z2luKFdlYkZyYW1lKiwgV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQqLCBjb25zdCBQbHVn
aW46OlBhcmFtZXRlcnMmLCBTdHJpbmcmIG5ld01JTUVUeXBlKTsKKyAgICBSZWZQdHI8UGx1Z2lu
PiBjcmVhdGVQbHVnaW4oV2ViRnJhbWUqLCBXZWJDb3JlOjpIVE1MUGx1Z0luRWxlbWVudCosIGNv
bnN0IFBsdWdpbjo6UGFyYW1ldGVycyYsIFN0cmluZyYgbmV3TUlNRVR5cGUpOwogI2VuZGlmCiAK
ICNpZiBFTkFCTEUoV0VCR0wpCiAgICAgV2ViQ29yZTo6V2ViR0xMb2FkUG9saWN5IHdlYkdMUG9s
aWN5Rm9yVVJMKFdlYkZyYW1lKiwgY29uc3QgU3RyaW5nJik7CiAgICAgV2ViQ29yZTo6V2ViR0xM
b2FkUG9saWN5IHJlc29sdmVXZWJHTFBvbGljeUZvclVSTChXZWJGcmFtZSosIGNvbnN0IFN0cmlu
ZyYpOwotI2VuZGlmIC8vIEVOQUJMRShXRUJHTCkKKyNlbmRpZgogICAgIAogICAgIGVudW0gY2xh
c3MgSW5jbHVkZVBvc3RMYXlvdXREYXRhSGludCB7IE5vLCBZZXMgfTsKICAgICBFZGl0b3JTdGF0
ZSBlZGl0b3JTdGF0ZShJbmNsdWRlUG9zdExheW91dERhdGFIaW50ID0gSW5jbHVkZVBvc3RMYXlv
dXREYXRhSGludDo6WWVzKSBjb25zdDsKQEAgLTQ1NSwyMSArNDU0LDIxIEBAIHB1YmxpYzoKIAog
ICAgIGJvb2wgaGFzQ2FjaGVkV2luZG93RnJhbWUoKSBjb25zdCB7IHJldHVybiBtX2hhc0NhY2hl
ZFdpbmRvd0ZyYW1lOyB9CiAKLSNpZiAhUExBVEZPUk0oSU9TKQotICAgIHZvaWQgc2V0VG9wT3Zl
cmhhbmdJbWFnZShQYXNzUmVmUHRyPFdlYkltYWdlPik7Ci0gICAgdm9pZCBzZXRCb3R0b21PdmVy
aGFuZ0ltYWdlKFBhc3NSZWZQdHI8V2ViSW1hZ2U+KTsKLSNlbmRpZiAvLyAhUExBVEZPUk0oSU9T
KQotCiAgICAgdm9pZCB1cGRhdGVIZWFkZXJBbmRGb290ZXJMYXllcnNGb3JEZXZpY2VTY2FsZUNo
YW5nZShmbG9hdCBzY2FsZUZhY3Rvcik7Ci0jZW5kaWYgLy8gUExBVEZPUk0oQ09DT0EpCisjZW5k
aWYKKworI2lmIFBMQVRGT1JNKE1BQykKKyAgICB2b2lkIHNldFRvcE92ZXJoYW5nSW1hZ2UoV2Vi
SW1hZ2UqKTsKKyAgICB2b2lkIHNldEJvdHRvbU92ZXJoYW5nSW1hZ2UoV2ViSW1hZ2UqKTsKKyNl
bmRpZgogCiAgICAgYm9vbCB3aW5kb3dJc0ZvY3VzZWQoKSBjb25zdDsKICAgICBib29sIHdpbmRv
d0FuZFdlYlBhZ2VBcmVGb2N1c2VkKCkgY29uc3Q7CiAKICNpZiAhUExBVEZPUk0oSU9TKQotICAg
IHZvaWQgc2V0SGVhZGVyUGFnZUJhbm5lcihQYXNzUmVmUHRyPFBhZ2VCYW5uZXI+KTsKKyAgICB2
b2lkIHNldEhlYWRlclBhZ2VCYW5uZXIoUGFnZUJhbm5lciopOwogICAgIFBhZ2VCYW5uZXIqIGhl
YWRlclBhZ2VCYW5uZXIoKTsKLSAgICB2b2lkIHNldEZvb3RlclBhZ2VCYW5uZXIoUGFzc1JlZlB0
cjxQYWdlQmFubmVyPik7CisgICAgdm9pZCBzZXRGb290ZXJQYWdlQmFubmVyKFBhZ2VCYW5uZXIq
KTsKICAgICBQYWdlQmFubmVyKiBmb290ZXJQYWdlQmFubmVyKCk7CiAKICAgICB2b2lkIGhpZGVQ
YWdlQmFubmVycygpOwpAQCAtNDc3LDcgKzQ3Niw3IEBAIHB1YmxpYzoKICAgICAKICAgICB2b2lk
IHNldEhlYWRlckJhbm5lckhlaWdodEZvclRlc3RpbmcoaW50KTsKICAgICB2b2lkIHNldEZvb3Rl
ckJhbm5lckhlaWdodEZvclRlc3RpbmcoaW50KTsKLSNlbmRpZiAvLyAhUExBVEZPUk0oSU9TKQor
I2VuZGlmCiAKICAgICBXZWJDb3JlOjpJbnRQb2ludCBzY3JlZW5Ub1Jvb3RWaWV3KGNvbnN0IFdl
YkNvcmU6OkludFBvaW50Jik7CiAgICAgV2ViQ29yZTo6SW50UmVjdCByb290Vmlld1RvU2NyZWVu
KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKTsKQEAgLTYyMSw3ICs2MjAsNyBAQCBwdWJsaWM6CiAg
ICAgYm9vbCBoYXNMb2NhbERhdGFGb3JVUkwoY29uc3QgV2ViQ29yZTo6VVJMJik7CiAgICAgU3Ry
aW5nIGNhY2hlZFJlc3BvbnNlTUlNRVR5cGVGb3JVUkwoY29uc3QgV2ViQ29yZTo6VVJMJik7CiAg
ICAgU3RyaW5nIGNhY2hlZFN1Z2dlc3RlZEZpbGVuYW1lRm9yVVJMKGNvbnN0IFdlYkNvcmU6OlVS
TCYpOwotICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6U2hhcmVkQnVmZmVyPiBjYWNoZWRSZXNwb25z
ZURhdGFGb3JVUkwoY29uc3QgV2ViQ29yZTo6VVJMJik7CisgICAgUmVmUHRyPFdlYkNvcmU6OlNo
YXJlZEJ1ZmZlcj4gY2FjaGVkUmVzcG9uc2VEYXRhRm9yVVJMKGNvbnN0IFdlYkNvcmU6OlVSTCYp
OwogCiAgICAgc3RhdGljIGJvb2wgY2FuSGFuZGxlUmVxdWVzdChjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmKTsKIApAQCAtMTAxNiw5ICsxMDE1LDExIEBAIHByaXZhdGU6CiAgICAgYm9v
bCBzaG91bGRTd2l0Y2hUb0Jsb2NrTW9kZUZvckhhbmRsZShjb25zdCBXZWJDb3JlOjpJbnRQb2lu
dCYgaGFuZGxlUG9pbnQsIFNlbGVjdGlvbkhhbmRsZVBvc2l0aW9uKTsKICAgICBSZWZQdHI8V2Vi
Q29yZTo6UmFuZ2U+IHN3aXRjaFRvQmxvY2tTZWxlY3Rpb25BdFBvaW50KGNvbnN0IFdlYkNvcmU6
OkludFBvaW50JiwgU2VsZWN0aW9uSGFuZGxlUG9zaXRpb24pOwogI2VuZGlmCisKICNpZiAhUExB
VEZPUk0oQ09DT0EpCiAgICAgc3RhdGljIGNvbnN0IGNoYXIqIGludGVycHJldEtleUV2ZW50KGNv
bnN0IFdlYkNvcmU6OktleWJvYXJkRXZlbnQqKTsKICNlbmRpZgorCiAgICAgYm9vbCBwZXJmb3Jt
RGVmYXVsdEJlaGF2aW9yRm9yS2V5RXZlbnQoY29uc3QgV2ViS2V5Ym9hcmRFdmVudCYpOwogCiAj
aWYgUExBVEZPUk0oTUFDKQpAQCAtMTIwNiw3ICsxMjA3LDcgQEAgcHJpdmF0ZToKICAgICBzdGF0
aWMgUGx1Z2luVmlldyogZm9jdXNlZFBsdWdpblZpZXdGb3JGcmFtZShXZWJDb3JlOjpGcmFtZSYp
OwogICAgIHN0YXRpYyBQbHVnaW5WaWV3KiBwbHVnaW5WaWV3Rm9yRnJhbWUoV2ViQ29yZTo6RnJh
bWUqKTsKIAotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFdlYkNvcmU6OlJhbmdlPiByYW5nZUZyb21F
ZGl0aW5nUmFuZ2UoV2ViQ29yZTo6RnJhbWUmLCBjb25zdCBFZGl0aW5nUmFuZ2UmLCBFZGl0aW5n
UmFuZ2VJc1JlbGF0aXZlVG8gPSBFZGl0aW5nUmFuZ2VJc1JlbGF0aXZlVG86OkVkaXRhYmxlUm9v
dCk7CisgICAgc3RhdGljIFJlZlB0cjxXZWJDb3JlOjpSYW5nZT4gcmFuZ2VGcm9tRWRpdGluZ1Jh
bmdlKFdlYkNvcmU6OkZyYW1lJiwgY29uc3QgRWRpdGluZ1JhbmdlJiwgRWRpdGluZ1JhbmdlSXNS
ZWxhdGl2ZVRvID0gRWRpdGluZ1JhbmdlSXNSZWxhdGl2ZVRvOjpFZGl0YWJsZVJvb3QpOwogCiAg
ICAgdm9pZCByZXBvcnRVc2VkRmVhdHVyZXMoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQYWdlL2VmbC9XZWJQYWdlRWZsLmNwcCBiL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvV2ViUGFnZS9lZmwvV2ViUGFnZUVmbC5jcHAKaW5kZXggMTVhMWRjZWExMTJj
MmU3MTNiZDMxM2NmNjdiYWMzNjE2ZDZiMzA3Yy4uZDIxZWQ4YjBhN2Q4MzNmMGViN2NjZGE2ZTk1
MTVjYTczYjFiYmVmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQ
YWdlL2VmbC9XZWJQYWdlRWZsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvZWZsL1dlYlBhZ2VFZmwuY3BwCkBAIC0xNTcsNyArMTU3LDcgQEAgU3RyaW5nIFdlYlBh
Z2U6OmNhY2hlZFN1Z2dlc3RlZEZpbGVuYW1lRm9yVVJMKGNvbnN0IFVSTCYpCiAgICAgcmV0dXJu
IFN0cmluZygpOwogfQogCi1QYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gV2ViUGFnZTo6Y2FjaGVk
UmVzcG9uc2VEYXRhRm9yVVJMKGNvbnN0IFVSTCYpCitSZWZQdHI8U2hhcmVkQnVmZmVyPiBXZWJQ
YWdlOjpjYWNoZWRSZXNwb25zZURhdGFGb3JVUkwoY29uc3QgVVJMJikKIHsKICAgICBub3RJbXBs
ZW1lbnRlZCgpOwogICAgIHJldHVybiAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJQYWdlL2d0ay9XZWJQYWdlR3RrLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViUGFnZS9ndGsvV2ViUGFnZUd0ay5jcHAKaW5kZXggZDc2NjY4MDQzMDJlNTI3ZTQ3
ZjI0Yjk5ODJkZGVkNjQ5YzBhNWQyMy4uZjBlMzRlZmRjMzNiNjg2ZTdiNzE0ZTA4MTA2NjMzZGEy
OGM4ZWQ4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL2d0
ay9XZWJQYWdlR3RrLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2Uv
Z3RrL1dlYlBhZ2VHdGsuY3BwCkBAIC0xODUsMTMgKzE4NSwxMiBAQCBTdHJpbmcgV2ViUGFnZTo6
Y2FjaGVkU3VnZ2VzdGVkRmlsZW5hbWVGb3JVUkwoY29uc3QgVVJMJikKICAgICByZXR1cm4gU3Ry
aW5nKCk7CiB9CiAKLVBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBXZWJQYWdlOjpjYWNoZWRSZXNw
b25zZURhdGFGb3JVUkwoY29uc3QgVVJMJikKK1JlZlB0cjxTaGFyZWRCdWZmZXI+IFdlYlBhZ2U6
OmNhY2hlZFJlc3BvbnNlRGF0YUZvclVSTChjb25zdCBVUkwmKQogewogICAgIG5vdEltcGxlbWVu
dGVkKCk7CiAgICAgcmV0dXJuIDA7CiB9CiAKLQogU3RyaW5nIFdlYlBhZ2U6OnBsYXRmb3JtVXNl
ckFnZW50KGNvbnN0IFVSTCYgdXJsKSBjb25zdAogewogICAgIGlmICh1cmwuaXNOdWxsKCkgfHwg
IW1fcGFnZS0+c2V0dGluZ3MoKS5uZWVkc1NpdGVTcGVjaWZpY1F1aXJrcygpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9XZWJQYWdlTWFjLm1tIGIv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9XZWJQYWdlTWFjLm1tCmluZGV4
IGY3ZWI4ZDcwYzZkNjI4ZTZlYmQzNzlhNjI4OTZmNDEyYTVjYmJlNWEuLjE2Y2M3MzRiZWNjNWE2
NmJkNzg5ODJkMTk5ODQyNTRhMTI3YWJjZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViUGFnZS9tYWMvV2ViUGFnZU1hYy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1dlYlBhZ2VNYWMubW0KQEAgLTcyNCw3ICs3MjQsNyBAQCBT
dHJpbmcgV2ViUGFnZTo6Y2FjaGVkUmVzcG9uc2VNSU1FVHlwZUZvclVSTChjb25zdCBVUkwmIHVy
bCkKICAgICByZXR1cm4gW1tjYWNoZWRSZXNwb25zZUZvclVSTCh0aGlzLCB1cmwpIHJlc3BvbnNl
XSBNSU1FVHlwZV07CiB9CiAKLVBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBXZWJQYWdlOjpjYWNo
ZWRSZXNwb25zZURhdGFGb3JVUkwoY29uc3QgVVJMJiB1cmwpCitSZWZQdHI8U2hhcmVkQnVmZmVy
PiBXZWJQYWdlOjpjYWNoZWRSZXNwb25zZURhdGFGb3JVUkwoY29uc3QgVVJMJiB1cmwpCiB7CiAg
ICAgcmV0dXJuIFNoYXJlZEJ1ZmZlcjo6d3JhcE5TRGF0YShbY2FjaGVkUmVzcG9uc2VGb3JVUkwo
dGhpcywgdXJsKSBkYXRhXSk7CiB9CkBAIC03NzMsMzcgKzc3MywzMyBAQCB2b2lkIFdlYlBhZ2U6
OmFjY2VwdHNGaXJzdE1vdXNlKGludCBldmVudE51bWJlciwgY29uc3QgV2ViS2l0OjpXZWJNb3Vz
ZUV2ZW50JiBldgogICAgICAgICByZXN1bHQgPSAhIWhpdFJlc3VsdC5zY3JvbGxiYXIoKTsKIH0K
IAotdm9pZCBXZWJQYWdlOjpzZXRUb3BPdmVyaGFuZ0ltYWdlKFBhc3NSZWZQdHI8V2ViSW1hZ2U+
IGltYWdlKQordm9pZCBXZWJQYWdlOjpzZXRUb3BPdmVyaGFuZ0ltYWdlKFdlYkltYWdlKiBpbWFn
ZSkKIHsKLSAgICBGcmFtZVZpZXcqIGZyYW1lVmlldyA9IG1fbWFpbkZyYW1lLT5jb3JlRnJhbWUo
KS0+dmlldygpOworICAgIGF1dG8qIGZyYW1lVmlldyA9IG1fbWFpbkZyYW1lLT5jb3JlRnJhbWUo
KS0+dmlldygpOwogICAgIGlmICghZnJhbWVWaWV3KQogICAgICAgICByZXR1cm47CiAKLSAgICBH
cmFwaGljc0xheWVyKiBsYXllciA9IGZyYW1lVmlldy0+c2V0V2FudHNMYXllckZvclRvcE92ZXJI
YW5nQXJlYShpbWFnZS5nZXQoKSk7CisgICAgYXV0byogbGF5ZXIgPSBmcmFtZVZpZXctPnNldFdh
bnRzTGF5ZXJGb3JUb3BPdmVySGFuZ0FyZWEoaW1hZ2UpOwogICAgIGlmICghbGF5ZXIpCiAgICAg
ICAgIHJldHVybjsKIAogICAgIGxheWVyLT5zZXRTaXplKGltYWdlLT5zaXplKCkpOwogICAgIGxh
eWVyLT5zZXRQb3NpdGlvbihGbG9hdFBvaW50KDAsIC1pbWFnZS0+c2l6ZSgpLmhlaWdodCgpKSk7
Ci0KLSAgICBSZXRhaW5QdHI8Q0dJbWFnZVJlZj4gY2dJbWFnZSA9IGltYWdlLT5iaXRtYXAoKS5t
YWtlQ0dJbWFnZUNvcHkoKTsKLSAgICBsYXllci0+cGxhdGZvcm1MYXllcigpLmNvbnRlbnRzID0g
KGlkKWNnSW1hZ2UuZ2V0KCk7CisgICAgbGF5ZXItPnBsYXRmb3JtTGF5ZXIoKS5jb250ZW50cyA9
IChpZClpbWFnZS0+Yml0bWFwKCkubWFrZUNHSW1hZ2VDb3B5KCkuZ2V0KCk7CiB9CiAKLXZvaWQg
V2ViUGFnZTo6c2V0Qm90dG9tT3ZlcmhhbmdJbWFnZShQYXNzUmVmUHRyPFdlYkltYWdlPiBpbWFn
ZSkKK3ZvaWQgV2ViUGFnZTo6c2V0Qm90dG9tT3ZlcmhhbmdJbWFnZShXZWJJbWFnZSogaW1hZ2Up
CiB7Ci0gICAgRnJhbWVWaWV3KiBmcmFtZVZpZXcgPSBtX21haW5GcmFtZS0+Y29yZUZyYW1lKCkt
PnZpZXcoKTsKKyAgICBhdXRvKiBmcmFtZVZpZXcgPSBtX21haW5GcmFtZS0+Y29yZUZyYW1lKCkt
PnZpZXcoKTsKICAgICBpZiAoIWZyYW1lVmlldykKICAgICAgICAgcmV0dXJuOwogCi0gICAgR3Jh
cGhpY3NMYXllciogbGF5ZXIgPSBmcmFtZVZpZXctPnNldFdhbnRzTGF5ZXJGb3JCb3R0b21PdmVy
SGFuZ0FyZWEoaW1hZ2UuZ2V0KCkpOworICAgIGF1dG8qIGxheWVyID0gZnJhbWVWaWV3LT5zZXRX
YW50c0xheWVyRm9yQm90dG9tT3ZlckhhbmdBcmVhKGltYWdlKTsKICAgICBpZiAoIWxheWVyKQog
ICAgICAgICByZXR1cm47CiAKICAgICBsYXllci0+c2V0U2l6ZShpbWFnZS0+c2l6ZSgpKTsKLSAg
ICAKLSAgICBSZXRhaW5QdHI8Q0dJbWFnZVJlZj4gY2dJbWFnZSA9IGltYWdlLT5iaXRtYXAoKS5t
YWtlQ0dJbWFnZUNvcHkoKTsKLSAgICBsYXllci0+cGxhdGZvcm1MYXllcigpLmNvbnRlbnRzID0g
KGlkKWNnSW1hZ2UuZ2V0KCk7CisgICAgbGF5ZXItPnBsYXRmb3JtTGF5ZXIoKS5jb250ZW50cyA9
IChpZClpbWFnZS0+Yml0bWFwKCkubWFrZUNHSW1hZ2VDb3B5KCkuZ2V0KCk7CiB9CiAKIHZvaWQg
V2ViUGFnZTo6dXBkYXRlSGVhZGVyQW5kRm9vdGVyTGF5ZXJzRm9yRGV2aWNlU2NhbGVDaGFuZ2Uo
ZmxvYXQgc2NhbGVGYWN0b3IpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYlByb2Nlc3MuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNw
cAppbmRleCBjMTI4MDE4MzAzNTYwMjJhYmYzMGY4Nzg3Mzc5NmMzNTNkZTNiYmY0Li4zZTVjYmFk
YWIyNDQ0Mjg2MDUwMTM3MDJlOTM0NTAyM2YxNjBiMjkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViUHJvY2Vzcy5jcHAKQEAgLTE1OCwyMiArMTU4LDEyIEBAIFdlYlByb2Nlc3M6Oldl
YlByb2Nlc3MoKQogI2lmIFBMQVRGT1JNKElPUykKICAgICAsIG1fdmlld1VwZGF0ZURpc3BhdGNo
ZXIoVmlld1VwZGF0ZURpc3BhdGNoZXI6OmNyZWF0ZSgpKQogI2VuZGlmCi0gICAgLCBtX2luRGlk
Q2xvc2UoZmFsc2UpCi0gICAgLCBtX2hhc1NldENhY2hlTW9kZWwoZmFsc2UpCi0gICAgLCBtX2Nh
Y2hlTW9kZWwoQ2FjaGVNb2RlbERvY3VtZW50Vmlld2VyKQotICAgICwgbV9mdWxsS2V5Ym9hcmRB
Y2Nlc3NFbmFibGVkKGZhbHNlKQotICAgICwgbV90ZXh0Q2hlY2tlclN0YXRlKCkKLSAgICAsIG1f
aWNvbkRhdGFiYXNlUHJveHkoKm5ldyBXZWJJY29uRGF0YWJhc2VQcm94eSh0aGlzKSkKKyAgICAs
IG1faWNvbkRhdGFiYXNlUHJveHkoKm5ldyBXZWJJY29uRGF0YWJhc2VQcm94eSgqdGhpcykpCiAg
ICAgLCBtX3dlYkxvYWRlclN0cmF0ZWd5KCpuZXcgV2ViTG9hZGVyU3RyYXRlZ3kpCiAgICAgLCBt
X2Ruc1ByZWZldGNoSHlzdGVyZXJpcyhbdGhpc10oSHlzdGVyZXNpc1N0YXRlIHN0YXRlKSB7IGlm
IChzdGF0ZSA9PSBIeXN0ZXJlc2lzU3RhdGU6OlN0b3BwZWQpIG1fZG5zUHJlZmV0Y2hlZEhvc3Rz
LmNsZWFyKCk7IH0pCiAjaWYgRU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCiAgICAgLCBtX3Bs
dWdpblByb2Nlc3NDb25uZWN0aW9uTWFuYWdlcihQbHVnaW5Qcm9jZXNzQ29ubmVjdGlvbk1hbmFn
ZXI6OmNyZWF0ZSgpKQogI2VuZGlmCi0jaWYgRU5BQkxFKFNFUlZJQ0VfQ09OVFJPTFMpCi0gICAg
LCBtX2hhc0ltYWdlU2VydmljZXMoZmFsc2UpCi0gICAgLCBtX2hhc1NlbGVjdGlvblNlcnZpY2Vz
KGZhbHNlKQotICAgICwgbV9oYXNSaWNoQ29udGVudFNlcnZpY2VzKGZhbHNlKQotI2VuZGlmCiAg
ICAgLCBtX25vblZpc2libGVQcm9jZXNzQ2xlYW51cFRpbWVyKCp0aGlzLCAmV2ViUHJvY2Vzczo6
bm9uVmlzaWJsZVByb2Nlc3NDbGVhbnVwVGltZXJGaXJlZCkKICAgICAsIG1fc3RhdGlzdGljc0No
YW5nZWRUaW1lcigqdGhpcywgJldlYlByb2Nlc3M6OnN0YXRpc3RpY3NDaGFuZ2VkVGltZXJGaXJl
ZCkKICNpZiBQTEFURk9STShJT1MpCkBAIC0xOTQsOSArMTg0LDExIEBAIFdlYlByb2Nlc3M6Oldl
YlByb2Nlc3MoKQogI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05P
VElGSUNBVElPTlMpCiAgICAgYWRkU3VwcGxlbWVudDxXZWJOb3RpZmljYXRpb25NYW5hZ2VyPigp
OwogI2VuZGlmCisKICNpZiBFTkFCTEUoTEVHQUNZX0VOQ1JZUFRFRF9NRURJQSkKICAgICBhZGRT
dXBwbGVtZW50PFdlYk1lZGlhS2V5U3RvcmFnZU1hbmFnZXI+KCk7CiAjZW5kaWYKKwogICAgIG1f
cGx1Z0luQXV0b1N0YXJ0T3JpZ2luSGFzaGVzLmFkZChTZXNzaW9uSUQ6OmRlZmF1bHRTZXNzaW9u
SUQoKSwgSGFzaE1hcDx1bnNpZ25lZCwgZG91YmxlPigpKTsKIAogI2lmIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKQpAQCAtMjA3LDcgKzE5OSw2IEBAIFdlYlByb2Nlc3M6OldlYlByb2Nlc3MoKQog
ICAgIG1fcmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JhZ2UtPnNldE5vdGlmaWNhdGlvbkNhbGxi
YWNrKFt0aGlzXSB7CiAgICAgICAgIGlmIChtX3N0YXRpc3RpY3NDaGFuZ2VkVGltZXIuaXNBY3Rp
dmUoKSkKICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgCiAgICAgICAgIG1fc3RhdGlzdGlj
c0NoYW5nZWRUaW1lci5zdGFydE9uZVNob3Qoc3RkOjpjaHJvbm86OnNlY29uZHMoNSkpOwogICAg
IH0pOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNz
LmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaAppbmRleCAyMjhmMDQ2
MTFkYjE4MGJiZmRlN2Y0ZDliNWYyMTNmZGI2M2NjOWUyLi4zNTQ0NjRhODFlNDBiMGRlNGVmY2Fj
YWQ1ZmI4NjRhYTkzNzAzMTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYlByb2Nlc3MuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3Mu
aApAQCAtMjMsOCArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgog
ICovCiAKLSNpZm5kZWYgV2ViUHJvY2Vzc19oCi0jZGVmaW5lIFdlYlByb2Nlc3NfaAorI3ByYWdt
YSBvbmNlCiAKICNpbmNsdWRlICJDYWNoZU1vZGVsLmgiCiAjaW5jbHVkZSAiQ2hpbGRQcm9jZXNz
LmgiCkBAIC0zNDYsMjAgKzM0NSwyMCBAQCBwcml2YXRlOgogICAgIFJlZlB0cjxWaWV3VXBkYXRl
RGlzcGF0Y2hlcj4gbV92aWV3VXBkYXRlRGlzcGF0Y2hlcjsKICNlbmRpZgogCi0gICAgYm9vbCBt
X2luRGlkQ2xvc2U7CisgICAgYm9vbCBtX2luRGlkQ2xvc2UgeyBmYWxzZSB9OwogCiAgICAgSGFz
aE1hcDxXZWJDb3JlOjpTZXNzaW9uSUQsIEhhc2hNYXA8dW5zaWduZWQsIGRvdWJsZT4+IG1fcGx1
Z0luQXV0b1N0YXJ0T3JpZ2luSGFzaGVzOwogICAgIEhhc2hTZXQ8U3RyaW5nPiBtX3BsdWdJbkF1
dG9TdGFydE9yaWdpbnM7CiAKLSAgICBib29sIG1faGFzU2V0Q2FjaGVNb2RlbDsKLSAgICBDYWNo
ZU1vZGVsIG1fY2FjaGVNb2RlbDsKKyAgICBib29sIG1faGFzU2V0Q2FjaGVNb2RlbCB7IGZhbHNl
IH07CisgICAgQ2FjaGVNb2RlbCBtX2NhY2hlTW9kZWwgeyBDYWNoZU1vZGVsRG9jdW1lbnRWaWV3
ZXIgfTsKIAogI2lmIFBMQVRGT1JNKENPQ09BKQogICAgIFdlYkNvcmU6Ok1hY2hTZW5kUmlnaHQg
bV9jb21wb3NpdGluZ1JlbmRlclNlcnZlclBvcnQ7CiAgICAgcGlkX3QgbV9wcmVzZW50ZXJBcHBs
aWNhdGlvblBpZDsKICNlbmRpZgogCi0gICAgYm9vbCBtX2Z1bGxLZXlib2FyZEFjY2Vzc0VuYWJs
ZWQ7CisgICAgYm9vbCBtX2Z1bGxLZXlib2FyZEFjY2Vzc0VuYWJsZWQgeyBmYWxzZSB9OwogCiAg
ICAgSGFzaE1hcDx1aW50NjRfdCwgV2ViRnJhbWUqPiBtX2ZyYW1lTWFwOwogCkBAIC0zODgsOSAr
Mzg3LDkgQEAgcHJpdmF0ZToKICNlbmRpZgogCiAjaWYgRU5BQkxFKFNFUlZJQ0VfQ09OVFJPTFMp
Ci0gICAgYm9vbCBtX2hhc0ltYWdlU2VydmljZXM7Ci0gICAgYm9vbCBtX2hhc1NlbGVjdGlvblNl
cnZpY2VzOwotICAgIGJvb2wgbV9oYXNSaWNoQ29udGVudFNlcnZpY2VzOworICAgIGJvb2wgbV9o
YXNJbWFnZVNlcnZpY2VzIHsgZmFsc2UgfTsKKyAgICBib29sIG1faGFzU2VsZWN0aW9uU2Vydmlj
ZXMgeyBmYWxzZSB9OworICAgIGJvb2wgbV9oYXNSaWNoQ29udGVudFNlcnZpY2VzIHsgZmFsc2Ug
fTsKICNlbmRpZgogCiAgICAgSGFzaFNldDx1aW50NjRfdD4gbV9wYWdlc0luV2luZG93czsKQEAg
LTQxNiw1ICs0MTUsMyBAQCBwcml2YXRlOgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0Ci0K
LSNlbmRpZiAvLyBXZWJQcm9jZXNzX2gK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>298919</attachid>
            <date>2017-01-15 12:18:32 -0800</date>
            <delta_ts>2017-01-15 12:28:00 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-167055-20170115121646.patch</filename>
            <type>text/plain</type>
            <size>672453</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEwNzc4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzVmMGY0ODU2MzhlNDBj
YjlmMGQ2ODYxMGM4NTdjODQ4ODNhOTNhOS4uYzgwOTFlMjg4ZWFiMjU4M2I1ZGVkNmFjOTViYmU5
ZjJkNjY2NDhhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxNCBAQAorMjAxNy0wMS0xNSAgRGFy
aW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIFBhc3NSZWZQdHIg
ZnJvbSAibG9hZGVyIiBkaXJlY3Rvcnkgb2YgV2ViQ29yZQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY3MDU1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6RG9jdW1lbnQ6OnByb2Nlc3NIdHRwRXF1aXYpOiBQYXNzIGEgcmVmZXJlbmNlLgor
ICAgICAgICAqIGVkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6RWRpdENvbW1hbmRDb21wb3NpdGlvbjo6dW5hcHBseSk6IERpdHRvLgorICAgICAgICAo
V2ViQ29yZTo6RWRpdENvbW1hbmRDb21wb3NpdGlvbjo6cmVhcHBseSk6IERpdHRvLgorICAgICAg
ICAoV2ViQ29yZTo6Q29tcG9zaXRlRWRpdENvbW1hbmQ6OmVuc3VyZUNvbXBvc2l0aW9uKTogUmV0
dXJuIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6Q29tcG9zaXRlRWRpdENvbW1hbmQ6
OmFwcGx5Q29tbWFuZFRvQ29tcG9zaXRlKTogVXNlIGEgcmVmZXJlbmNlLgorICAgICAgICAqIGVk
aXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuaDogVXBkYXRlZCBmb3IgYWJvdmUgY2hhbmdlcy4K
KworICAgICAgICAqIGVkaXRpbmcvRWRpdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRv
cjo6dW5hcHBsaWVkRWRpdGluZyk6IFRha2UgYSByZWZlcmVuY2UgaW5zdGVhZCBvZiBhIFBhc3NS
ZWZQdHIuCisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OnJlYXBwbGllZEVkaXRpbmcpOiBEaXR0
by4KKyAgICAgICAgKiBlZGl0aW5nL0VkaXRvci5oOiBVcGRhdGVkIGZvciBhYm92ZSBjaGFuZ2Vz
LiBBbHNvIGNoYW5nZWQgdGhlCisgICAgICAgIEZyYWdtZW50QW5kUmVzb3VyY2VzIHJlc291cmNl
cyB2ZWN0b3IgdG8gaG9sZCBSZWYgaW5zdGVhZCBvZiBSZWZQdHIuCisKKyAgICAgICAgKiBlZGl0
aW5nL2lvcy9FZGl0b3JJT1MubW06CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OldlYkNvbnRl
bnRSZWFkZXI6OnJlYWRXZWJBcmNoaXZlKTogUGFzcyBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdl
YkNvcmU6OkVkaXRvcjo6Y3JlYXRlRnJhZ21lbnRBbmRBZGRSZXNvdXJjZXMpOiBVcGRhdGVkIGZv
ciBjaGFuZ2UgdG8KKyAgICAgICAgRnJhZ21lbnRBbmRSZXNvdXJjZXMuCisKKyAgICAgICAgKiBl
ZGl0aW5nL21hYy9FZGl0b3JNYWMubW06CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OldlYkNv
bnRlbnRSZWFkZXI6OnJlYWRXZWJBcmNoaXZlKTogUGFzcyBhIHJlZmVyZW5jZS4KKyAgICAgICAg
KFdlYkNvcmU6OkVkaXRvcjo6Y3JlYXRlRnJhZ21lbnRBbmRBZGRSZXNvdXJjZXMpOiBVcGRhdGVk
IGZvciBjaGFuZ2UgdG8KKyAgICAgICAgRnJhZ21lbnRBbmRSZXNvdXJjZXMuCisKKyAgICAgICAg
KiBoaXN0b3J5L1BhZ2VDYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpjYW5DYWNoZUZyYW1l
KTogVXNlIGEgcmVmZXJlbmNlLgorCisgICAgICAgICogaHRtbC9GaWxlSW5wdXRUeXBlLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkZpbGVJbnB1dFR5cGU6OmhhbmRsZURPTUFjdGl2YXRlRXZlbnQp
OiBQYXNzIHJlZmVyZW5jZXMuCisKKyAgICAgICAgKiBodG1sL0hUTUxGb3JtQ29udHJvbEVsZW1l
bnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEZvcm1Db250cm9sRWxlbWVudDo6Zm9ybU1l
dGhvZCk6IFVzZSBhdXRvLgorCisgICAgICAgICogaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6SFRNTEZvcm1FbGVtZW50OjpwcmVwYXJlRm9yU3VibWlzc2lvbik6
IFVwZGF0ZWQgdG8gdXNlIGEgcmV0dXJuCisgICAgICAgIHZhbHVlcyBmb3IgdGV4dEZpZWxkVmFs
dWVzIGludHNlYWQgb2YgYW4gb3V0IGFyZ3VtZW50IHdpdGggZ2V0VGV4dEZpZWxkVmFsdWVzLgor
ICAgICAgICAoV2ViQ29yZTo6SFRNTEZvcm1FbGVtZW50Ojp0ZXh0RmllbGRWYWx1ZXMpOiBSZW5h
bWVkIGZyb20gZ2V0VGV4dEZpZWxkVmFsdWVzCisgICAgICAgIGFuZCBjaGFuZ2VkIHRvIHVzZSBh
IHJldHVybiB2YWx1ZSBpbnN0ZWFkIG9mIGFuIG91dCBhcmd1bWVudC4KKyAgICAgICAgKFdlYkNv
cmU6OkhUTUxGb3JtRWxlbWVudDo6c3VibWl0KTogUGFzcyBhIHJlZmVyZW5jZS4KKyAgICAgICAg
KFdlYkNvcmU6OkhUTUxGb3JtRWxlbWVudDo6cmVxdWVzdEF1dG9jb21wbGV0ZSk6IFBhc3MgYSBS
ZWYmJi4KKyAgICAgICAgKiBodG1sL0hUTUxGb3JtRWxlbWVudC5oOiBVcGRhdGVkIGZvciBhYm92
ZSBjaGFuZ2VzLgorCisgICAgICAgICogaHRtbC9IVE1MSHRtbEVsZW1lbnQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTEh0bWxFbGVtZW50OjppbnNlcnRlZEJ5UGFyc2VyKTogVXNlIGEgcmVm
ZXJlbmNlLgorCisgICAgICAgICogaHRtbC9IVE1MTGlua0VsZW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTExpbmtFbGVtZW50Ojpwcm9jZXNzKTogUGFzcyBhIHJlZmVyZW5jZS4KKyAg
ICAgICAgKFdlYkNvcmU6OkhUTUxMaW5rRWxlbWVudDo6c2V0Q1NTU3R5bGVTaGVldCk6IFVzZSBh
dXRvLgorCisgICAgICAgICogaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OmxvYWRSZXNvdXJjZSk6IFVzZSBhIHJlZmVyZW5jZS4K
KworICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50Ojp1cGRh
dGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzKTogVXNlIGEgcmVmZXJlbmNlLAorICAgICAgICBhbHNv
IHVwZGF0ZSBmb3Igc3RydWN0LXN0eWxlIG1lbWJlciBuYW1lcyB3aXRob3UgbV8gcHJlZml4Lgor
ICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpnZXRGcmFt
ZXNXaXRoTWFuaWZlc3RzKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JBcHBs
aWNhdGlvbkNhY2hlQWdlbnQ6OmdldE1hbmlmZXN0Rm9yRnJhbWUpOiBEaXR0by4KKyAgICAgICAg
KFdlYkNvcmU6Okluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6Z2V0QXBwbGljYXRpb25D
YWNoZUZvckZyYW1lKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JBcHBsaWNh
dGlvbkNhY2hlQWdlbnQ6OmJ1aWxkT2JqZWN0Rm9yQXBwbGljYXRpb25DYWNoZSk6IERpdHRvLgor
ICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZEFy
cmF5Rm9yQXBwbGljYXRpb25DYWNoZVJlc291cmNlcyk6IERpdHRvLgorICAgICAgICAoV2ViQ29y
ZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZE9iamVjdEZvckFwcGxpY2F0
aW9uQ2FjaGVSZXNvdXJjZSk6IERpdHRvLgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JB
cHBsaWNhdGlvbkNhY2hlQWdlbnQuaDogVXBkYXRlZCBmb3IgYWJvdmUgY2hhbmdlcy4KKworICAg
ICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp1cGRhdGVBcHBsaWNhdGlvbkNhY2hl
U3RhdHVzSW1wbCk6IFRha2UgYSByZWZlcmVuY2UuCisgICAgICAgICogaW5zcGVjdG9yL0luc3Bl
Y3Rvckluc3RydW1lbnRhdGlvbi5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAg
KiBsb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXI6OkRvY3VtZW50TG9hZGVyKTogTW92ZSBtdWNoIGluaXRpYWxpemF0aW9uIHRvIGNsYXNz
IGRlZmluaXRpb24uCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6b3JpZ2luYWxS
ZXF1ZXN0KTogTW92ZWQgdG8gaGVhZGVyIHRvIG1ha2UgaXQgaW5saW5lLgorICAgICAgICAoV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXI6Om9yaWdpbmFsUmVxdWVzdENvcHkpOiBEaXR0by4KKyAgICAg
ICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpyZXF1ZXN0KTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6dXJsKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpE
b2N1bWVudExvYWRlcjo6c3RvcExvYWRpbmcpOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAo
V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OndpbGxTZW5kUmVxdWVzdCk6IFVwZGF0ZWQgdG8gdGFr
ZSBhIHJhdyBwb2ludGVyIGluc3RlYWQgb2YgYQorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAg
ICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmNvbW1pdERhdGEpOiBDYWxsIHNob3VsZFVzZU1h
aW5SZXNvdXJjZUVuY29kaW5nIGluc3RlYWQgb2YKKyAgICAgICAgc3BlY2lhbCBjYXNpbmcgV2Vi
QXJjaGl2ZS4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjptYXliZUNyZWF0ZUFy
Y2hpdmUpOiBQYXNzIHJlZmVyZW5jZXMuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRl
cjo6c2V0QXJjaGl2ZSk6IFRha2UgUmVmJiYgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAg
ICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMpOiBUYWtl
IGEgcmVmZXJlbmNlIGluc3RlYWQKKyAgICAgICAgb2YgYSBwb2ludGVyLgorICAgICAgICAoV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXI6OnBvcEFyY2hpdmVGb3JTdWJmcmFtZSk6IFJldHVybiBSZWZQ
dHIgaW5zdGVhZCBvZgorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXI6OnN1YnJlc291cmNlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpEb2N1
bWVudExvYWRlcjo6c3VicmVzb3VyY2VzKTogUmV0dXJuIGEgVmVjdG9yPFJlZj4gaW5zdGVhZCBv
ZiBhCisgICAgICAgIFZlY3RvcjxSZWZQdHI+LgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXI6OnN1YnN0aXR1dGVSZXNvdXJjZURlbGl2ZXJ5VGltZXJGaXJlZCk6IFVzZSBtb3ZlCisg
ICAgICAgIGluc3RlYWQgb2Ygc3dhcC4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
OjpzY2hlZHVsZUFyY2hpdmVMb2FkKTogVXNlIHNob3VsZExvYWRGcm9tQXJjaGl2ZU9ubHkKKyAg
ICAgICAgaW5zdGVhZCBvZiBhIHNwZWNpYWwgY2FzZSBmb3IgZWFjaCB0eXBlIG9mIGFyY2hpdmUu
CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6b3JpZ2luYWxVUkwpOiBNb3ZlZCB0
byBoZWFkZXIgdG8gbWFrZSBpdCBpbmxpbmUuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExv
YWRlcjo6cmVzcG9uc2VVUkwpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyOjpkb2N1bWVudFVSTCk6IENhbGwgc2hvdWxkVXNlTWFpblJlc291cmNlVVJMIGluc3RlYWQg
b2YKKyAgICAgICAgc3BlY2lhbCBjYXNpbmcgV2ViQXJjaGl2ZS4KKyAgICAgICAgKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyOjpyZXNwb25zZU1JTUVUeXBlKTogTW92ZWQgdG8gaGVhZGVyIHRvIG1h
a2UgaXQgaW5saW5lLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmN1cnJlbnRD
b250ZW50VHlwZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmNv
bnRlbnRGaWx0ZXIpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpn
ZXRJY29uTG9hZERlY2lzaW9uRm9ySWNvblVSTCk6IFBhc3MgYSByZWZlcmVuY2UuCisgICAgICAg
IChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6Z2V0SWNvbkRhdGFGb3JJY29uVVJMKTogRGl0dG8u
CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6ZGlzcGF0Y2hPbmxvYWRFdmVudHMp
OiBVc2UgYSByZWZlcmVuY2UuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6dW5y
ZWFjaGFibGVVUkwpOiBNb3ZlZCB0byBoZWFkZXIgdG8gbWFrZSBpdCBpbmxpbmUuCisgICAgICAg
ICogbG9hZGVyL0RvY3VtZW50TG9hZGVyLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAg
ICAgICAqIGxvYWRlci9FbXB0eUNsaWVudHMuY3BwOiBVcGRhdGVkIGZvciBjaGFuZ2VzIHRvIGNs
aWVudCBpbnRlcmZhY2VzLgorICAgICAgICAqIGxvYWRlci9FbXB0eUNsaWVudHMuaDogRGl0dG8u
CisKKyAgICAgICAgKiBsb2FkZXIvRm9ybVN0YXRlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZv
cm1TdGF0ZTo6Rm9ybVN0YXRlKTogVGFrZSByZWZlcmVuY2VzIGluc3RlYWQgb2YgUGFzc1JlZlB0
ciwgYWxzbworICAgICAgICB0YWtlIFZlY3RvciYmIGluc3RlYWQgb2YgVmVjdG9yJiB3aGVuIHdl
IHdhbnQgdG8gdGFrZSBvd25lcnNoaXAgYW5kIHVzZSBtb3ZlCisgICAgICAgIGluc3RlYWQgb2Yg
c3dhcCB0byBkbyB0aGF0LgorICAgICAgICAoV2ViQ29yZTo6Rm9ybVN0YXRlOjpjcmVhdGUpOiBE
aXR0by4KKyAgICAgICAgKiBsb2FkZXIvRm9ybVN0YXRlLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92
ZS4gQWxzbyBjaGFuZ2VkIHJldHVybiB2YWx1ZXMgdG8gYmUKKyAgICAgICAgcmVmZXJlbmNlcyBp
bnN0ZWFkIG9mIHBvaW50ZXJzIGFuZCBtZW1iZXJzIHRvIGJlIFJlZiBpbnN0ZWFkIG9mIFJlZlB0
ci4KKworICAgICAgICAqIGxvYWRlci9Gb3JtU3VibWlzc2lvbi5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpGb3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6cGFyc2VNZXRob2RUeXBlKTogVXBkYXRl
ZCBmb3IgY2hhbmdlCisgICAgICAgIHRvIHRoZSBNZXRob2QgZW51bWVyYXRpb24uCisgICAgICAg
IChXZWJDb3JlOjpGb3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6Y29weUZyb20pOiBEZWxldGVk
LgorICAgICAgICAoV2ViQ29yZTo6Rm9ybVN1Ym1pc3Npb246OkZvcm1TdWJtaXNzaW9uKTogVXNl
IFJlZiYmIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYkNvcmU6OkZvcm1TdWJt
aXNzaW9uOjpjcmVhdGUpOiBVc2UgcmVmZXJlbmNlIGluc3RlYWQgb2YgcG9pbnRlciBhbmQKKyAg
ICAgICAgcmF3IHBvaW50ZXIgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLiBBbHNvIGNvcHkgYXR0cmli
dXRlcyB1c2luZyBjb3B5IGNvbnN0cnVjdG9yCisgICAgICAgIGluc3RlYWQgb2YgYW4gZXhwbGlj
aXQgY29weUZyb20gZnVuY3Rpb24uCisgICAgICAgIChXZWJDb3JlOjpGb3JtU3VibWlzc2lvbjo6
cmVxdWVzdFVSTCk6IFVwZGF0ZWQgZm9yIGNoYW5nZSB0byB0aGUgTWV0aG9kCisgICAgICAgIGVu
dW1lcmF0aW9uLgorICAgICAgICAoV2ViQ29yZTo6Rm9ybVN1Ym1pc3Npb246OnBvcHVsYXRlRnJh
bWVMb2FkUmVxdWVzdCk6IERpdHRvLgorICAgICAgICAqIGxvYWRlci9Gb3JtU3VibWlzc2lvbi5o
OiBVcGRhdGVkIGZvciB0aGUgYWJvdmUgY2hhbmdlcy4gTWFkZSB0aGUgQXR0cmlidXRlcworICAg
ICAgICBjbGFzcyBjb3B5YWJsZSwgc2luY2Ugd2UgY29weSBpdC4gQ2hhbmdlZCBzb21lIGZ1bmN0
aW9ucyB0byByZXR1cm4gcmVmZXJlbmNlcworICAgICAgICBpbnN0ZWFkIG9mIHBvaW50ZXJzIGFu
ZCB1c2UgUmVmIGluc3RlYWQgb2YgUmVmUHRyIGZvciBkYXRhIG1lbWJlcnMuCisKKyAgICAgICAg
KiBsb2FkZXIvRnJhbWVMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6
OnN1Ym1pdEZvcm0pOiBVcGRhdGVkIGZvciBjaGFuZ2VzIHRvIEZvcm1TdWJtaXNzaW9uCisgICAg
ICAgIGFuZCBGb3JtU3RhdGUuCisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6cmVjZWl2
ZWRGaXJzdERhdGEpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2Fk
RnJhbWVSZXF1ZXN0KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6bG9h
ZFJlc291cmNlU3luY2hyb25vdXNseSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVM
b2FkZXI6OmNvbnRpbnVlTG9hZEFmdGVyTmF2aWdhdGlvblBvbGljeSk6IERpdHRvLgorCisgICAg
ICAgICogbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50Lmg6IFVzZSByZWZlcmVuY2VzLCBwb2ludGVy
cywgUmVmUHRyLCBhbmQgUmVmCisgICAgICAgIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4gUmVtb3Zl
ZCB1bnVzZWQgZW1wdHkgZGlzcGF0Y2hEaWRGYWlsVG9TdGFydFBsdWdpbi4KKworICAgICAgICAq
IGxvYWRlci9IaXN0b3J5Q29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5
Q29udHJvbGxlcjo6cHVzaFN0YXRlKTogVGFrZSBSZWZQdHImJiBpbnN0ZWFkIG9mIFBhc3NSZWZQ
dHIuCisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5Q29udHJvbGxlcjo6cmVwbGFjZVN0YXRlKTog
RGl0dG8uCisgICAgICAgICogbG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmg6IFVwZGF0ZWQgZm9y
IHRoZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRlci9JbWFnZUxvYWRlci5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpJbWFnZUxvYWRlcjo6dXBkYXRlRnJvbUVsZW1lbnQpOiBQYXNzIGEgcmVmZXJl
bmNlLgorCisgICAgICAgICogbG9hZGVyL05hdmlnYXRpb25TY2hlZHVsZXIuY3BwOiBVc2UgcmVm
ZXJuY2VzIGFuZCBSZWYmJiBpbnN0ZWFkIG9mCisgICAgICAgIHBvaW50ZXJzIGFuZCBQYXNzUmVm
UHRyLgorICAgICAgICAoV2ViQ29yZTo6U2NoZWR1bGVkTmF2aWdhdGlvbjo6U2NoZWR1bGVkTmF2
aWdhdGlvbik6IEFkZGVkIGFuIG92ZXJsb2FkCisgICAgICAgIHRoYXQgc2VzdHMgbV9zaG91bGRP
cGVuRXh0ZXJuYWxVUkxzUG9saWN5LgorICAgICAgICAqIGxvYWRlci9OYXZpZ2F0aW9uU2NoZWR1
bGVyLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRlci9SZXNvdXJj
ZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcjo6c3RhcnQpOiBV
c2UgYW5kIHBhc3MgcmVmZXJlbmNlcy4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
Ojp3aWxsU2VuZFJlcXVlc3QpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291
cmNlTG9hZGVyOjpkaWRGYWlsKTogRGl0dG8uCisKKyAgICAgICAgKiBsb2FkZXIvU3ViZnJhbWVM
b2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OmNyZWF0ZUphdmFB
cHBsZXRXaWRnZXQpOiBSZXR1cm4gUmVmUHRyIGluc3RlYWQKKyAgICAgICAgb2YgUGFzc1JlZlB0
ci4gUGFzcyByZWZlcmVuY2VzIGluc3RlYWQgb2YgcG9pbnRlcnMuCisgICAgICAgIChXZWJDb3Jl
OjpTdWJmcmFtZUxvYWRlcjo6bG9hZE9yUmVkaXJlY3RTdWJmcmFtZSk6IERpdHRvLgorICAgICAg
ICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OmxvYWRTdWJmcmFtZSk6IERpdHRvLgorICAgICAg
ICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OmRvY3VtZW50KTogRGVsZXRlZC4gVGhpcyB3YXMg
bmV2ZXIgcmVhbGx5IHRoZQorICAgICAgICBjb3JyZWN0IGlkaW9tIGZvciBnZXR0aW5nIHRoZSBh
cHByb3ByaWF0ZSBkb2N1bWVudDsgaGlkaW5nIHRoZSBkZXBlbmRlbmN5CisgICAgICAgIG9uIG1f
ZnJhbWUgd2Fzbid0IHBhaW5nIG9mZi4KKyAgICAgICAgKFdlYkNvcmU6OlN1YmZyYW1lTG9hZGVy
Ojpsb2FkUGx1Z2luKTogUGFzcyByZWZlcmVuY2UgaW5zdGVhZCBvZiBwb2ludGVyLgorICAgICAg
ICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OnNob3VsZENvbnZlcnRJbnZhbGlkVVJMc1RvQmxh
bmspOiBFbGltaW5hdGVkCisgICAgICAgIHVubmVlZGVkIG51bGwgY2hlY2tpbmcgYW5kIGNvbXBs
ZXhpdHkgZHVlIHRvIGdvaW5nIHRocm91Z2ggdGhlIGRvY3VtZW50CisgICAgICAgIGluc3RlYWQg
b2YgdGhlIGZyYW1lIGZvciB0aGlzIGNoZWNrLgorICAgICAgICAqIGxvYWRlci9TdWJmcmFtZUxv
YWRlci5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIvYXBwY2Fj
aGUvQXBwbGljYXRpb25DYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNh
Y2hlOjpBcHBsaWNhdGlvbkNhY2hlKTogTW92ZWQgZGF0YSBtZW1iZXIKKyAgICAgICAgaW5pdGlh
bGl6YXRpb24gdG8gdGhlIGNsYXNzIGRlZmluaXRpb24uCisgICAgICAgIChXZWJDb3JlOjpBcHBs
aWNhdGlvbkNhY2hlOjp+QXBwbGljYXRpb25DYWNoZSk6IFBhc3MgYSByZWZlcmVuY2UgaW5zdGVh
ZAorICAgICAgICBvZiBhIHBvaW50ZXIuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNh
Y2hlOjppc0NvbXBsZXRlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNh
Y2hlOjpzZXRNYW5pZmVzdFJlc291cmNlKTogVGFrZSBSZWYmJiBpbnN0ZWFkIG9mCisgICAgICAg
IFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlOjphZGRSZXNv
dXJjZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZTo6cmVtb3Zl
UmVzb3VyY2UpOiBEZWxldGVkLiBXYXMgdW51c2VkLgorICAgICAgICAqIGxvYWRlci9hcHBjYWNo
ZS9BcHBsaWNhdGlvbkNhY2hlLmg6IFVwZGF0ZWQgZm9yIGFib3ZlIGNoYW5nZXMuCisKKyAgICAg
ICAgKiBsb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6QXBwbGljYXRpb25DYWNoZUdyb3VwKTog
TW92ZWQgbW9zdAorICAgICAgICBtZW1iZXIgaW5pdGlhbGl6YXRpb24gdG8gdGhlIGNsYXNzIGRl
ZmluaXRpb24uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6On5BcHBs
aWNhdGlvbkNhY2hlR3JvdXApOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6
QXBwbGljYXRpb25DYWNoZUdyb3VwOjpjYWNoZUZvck1haW5SZXF1ZXN0KTogUmVtb3ZlZAorICAg
ICAgICB1bm5lY2Vzc2FyeSBwcmVmbGlnaHQgZm9yIHJlbW92ZUZyYWdtZW50SWRlbnRpZmllciwg
d2hpY2ggZWZmaWNpZW50bHkKKyAgICAgICAgZG9lcyBub3RoaW5nIGlmIHRoZXJlIGlzIG5vIGlk
ZW50aWZpZXIuIFVzZSBlYXJseSByZXR1cm4uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlv
bkNhY2hlR3JvdXA6OmZhbGxiYWNrQ2FjaGVGb3JNYWluUmVxdWVzdCk6IE1vcmUgb2YKKyAgICAg
ICAgdGhlIHNhbWUuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNl
bGVjdENhY2hlKTogRGl0dG8sIGFsc28gdGFrZSBhIHJlZmVyZW5jZSwKKyAgICAgICAgYW5kIHVz
ZSBldmVudCBuYW1lcyBpbnN0ZWFkIG9mIGEgc3BlY2lhbCBlbnVtZXJhdGlvbiB0byBwb2FzdCBl
dmVudHMuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVjdENh
Y2hlV2l0aG91dE1hbmlmZXN0VVJMKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNh
dGlvbkNhY2hlR3JvdXA6OmZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZSk6IERpdHRvLgorICAg
ICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpmYWlsZWRMb2FkaW5nTWFpblJl
c291cmNlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
OmRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpB
cHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNhY2hlRGVzdHJveWVkKTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnN0b3BMb2FkaW5nSW5GcmFtZSk6IERpdHRv
LgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZXROZXdlc3RDYWNo
ZSk6IFVzZSBSZWYmJiBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIuCisgICAgICAgIChX
ZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6Om1ha2VPYnNvbGV0ZSk6IE1vcmUgb2YgdGhl
IHNhbWUuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnVwZGF0ZSk6
IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjphYm9ydCk6
IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpkaWRSZWNl
aXZlUmVzcG9uc2UpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVH
cm91cDo6ZGlkRmluaXNoTG9hZGluZyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGlj
YXRpb25DYWNoZUdyb3VwOjpkaWRGYWlsKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBs
aWNhdGlvbkNhY2hlR3JvdXA6OmRpZEZpbmlzaExvYWRpbmdNYW5pZmVzdCk6IERpdHRvLgorICAg
ICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjptYW5pZmVzdE5vdEZvdW5kKTog
RGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNoZWNrSWZM
b2FkSXNDb21wbGV0ZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNo
ZUdyb3VwOjpzdGFydExvYWRpbmdFbnRyeSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBw
bGljYXRpb25DYWNoZUdyb3VwOjpkZWxpdmVyRGVsYXllZE1haW5SZXNvdXJjZXMpOiBVc2UgYSBt
b2Rlcm4KKyAgICAgICAgZm9yIGxvb3AuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNh
Y2hlR3JvdXA6OmFkZEVudHJ5KTogVXNlIGF1dG8gYW5kIHNpbXBsaWZ5IGxvZ2ljCisgICAgICAg
IGZvciBhZGRpbmcuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFz
c29jaWF0ZURvY3VtZW50TG9hZGVyV2l0aENhY2hlKTogVXBkYXRlIHNpbmNlCisgICAgICAgIGZ1
bmN0aW9uIHJlc3VsdCBpcyBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0
aW9uQ2FjaGVHcm91cDo6c2NoZWR1bGVSZWFjaGVkTWF4QXBwQ2FjaGVTaXplQ2FsbGJhY2spOgor
ICAgICAgICBVc2UgYXV0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVHcm91
cDo6cG9zdExpc3RlbmVyVGFzayk6IFRha2UgZXZlbnQgdHlwZSBpbnN0ZWFkIG9mCisgICAgICAg
IHRha2luZyBhIHNwZWNpYWwgZW51bWVyYXRpb24uCisgICAgICAgICogbG9hZGVyL2FwcGNhY2hl
L0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAg
ICAgKiBsb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUhvc3QuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhvc3Q6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0KTogTW92
ZSBtb3N0IG1lbWJlcgorICAgICAgICBpbml0aWFsaXphdGlvbiB0byB0aGUgY2xhc3MgZGVmaW5p
dGlvbi4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojp+QXBwbGljYXRp
b25DYWNoZUhvc3QpOiBVc2UgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRp
b25DYWNoZUhvc3Q6OnNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0KTogRGl0dG8uCisgICAgICAg
IChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c2VsZWN0Q2FjaGVXaXRoTWFuaWZlc3Qp
OiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0OjptYWluUmVz
b3VyY2VEYXRhUmVjZWl2ZWQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9u
Q2FjaGVIb3N0OjpmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6ZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNl
KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWF5YmVM
b2FkRmFsbGJhY2tGb3JSZWRpcmVjdCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGlj
YXRpb25DYWNoZUhvc3Q6Om1heWJlTG9hZEZhbGxiYWNrRm9yUmVzcG9uc2UpOiBEaXR0by4KKyAg
ICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpjcmVhdGVGaWxlVVJMKTogRGl0
dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWF5YmVMb2FkU3lu
Y2hyb25vdXNseSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhv
c3Q6Om5vdGlmeURPTUFwcGxpY2F0aW9uQ2FjaGUpOiBUYWtlIGV2ZW50CisgICAgICAgIHR5cGUg
aW5zdGVhZCBvZiBzcGVjaWFsIGVudW1lcmF0aW9uLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGlj
YXRpb25DYWNoZUhvc3Q6OnN0b3BMb2FkaW5nSW5GcmFtZSk6IFVzZSByZWZlcmVuY2UuCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c3RvcERlZmVycmluZ0V2ZW50cyk6
IFVwZGF0ZWQgdG8gdXNlCisgICAgICAgIGV2ZW50IHR5cGVzIGluc3RlYWQgb2Ygc3BlY2lhbCBl
bnVtZXJhdGlvbiBhbmQgYWxzbyByZXBhaXJlZCBwb3NzaWJsZQorICAgICAgICBlZGdlIGNhc2Ug
d2hlcmUgY29kZSBpbiBldmVudCBoYW5kbGVyIHNvbWVob3cgdHJpZ2dlcnMgYWRkaXRpb25hbCBl
dmVudHMuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6cmVzb3VyY2VM
aXN0KTogUmVuYW1lZCBmcm9tIGZpbGxSZXNvdXJjZUxpc3QKKyAgICAgICAgYW5kIGNoYW5nZWQg
dG8gcmV0dXJuIGEgdmVjdG9yIGluc3RlYWQgb2YgcG9wdWxhdGluZyBvbmUuCisgICAgICAgIChX
ZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6YXBwbGljYXRpb25DYWNoZUluZm8pOiBUd2Vh
ayBjb2Rpbmcgc3R5bGUgYSBiaXQuCisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVBcHBsaWNhdGlv
bkNhY2hlRXZlbnQpOiBGYWN0b3JlZCB0aGlzIGhlbHBlciBvdXQgb2YKKyAgICAgICAgZGlzcGF0
Y2hET01FdmVudCBzbyB3ZSBjYW4gdXNlIFJlZiBpbnN0ZWFkIG9mIFJlZlB0ci4KKyAgICAgICAg
KFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpkaXNwYXRjaERPTUV2ZW50KTogVXBkYXRl
ZCB0byByZWNlbnQgZXZlbnQgdHlwZQorICAgICAgICByYXRoZXIgdGhhbiByZWNlaXZpbmcgYW4g
ZXZlbnQgaWQgYW5kIG1hcHBpbmcgaXQgdG8gYSB0eXBlLgorICAgICAgICAoV2ViQ29yZTo6QXBw
bGljYXRpb25DYWNoZUhvc3Q6OnNldEFwcGxpY2F0aW9uQ2FjaGUpOiBUYWtlIFJlZlB0ciYmIGlu
c3RlYWQgb2YKKyAgICAgICAgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0
aW9uQ2FjaGVIb3N0Ojp1cGRhdGUpOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29y
ZTo6QXBwbGljYXRpb25DYWNoZUhvc3Q6OnN3YXBDYWNoZSk6IERpdHRvLgorICAgICAgICAoV2Vi
Q29yZTo6QXBwbGljYXRpb25DYWNoZUhvc3Q6OmFib3J0KTogRGl0dG8uCisgICAgICAgICogbG9h
ZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVIb3N0Lmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92
ZS4KKworICAgICAgICAqIGxvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6bG9hZENhY2hl
R3JvdXApOiBQYXNzIGEgUmVmIGluc3RlYWQgb2YgUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6
QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmNhY2hlR3JvdXBGb3JVUkwpOiBEaXR0by4KKyAgICAg
ICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpmYWxsYmFja0NhY2hlR3JvdXBG
b3JVUkwpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdl
OjpjYWNoZUdyb3VwRGVzdHJveWVkKTogVGFrZSBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYkNv
cmU6OkFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpjYWNoZUdyb3VwTWFkZU9ic29sZXRlKTogRGl0
dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6c3RvcmVOZXdl
c3RDYWNoZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZVN0b3Jh
Z2U6OmxvYWRDYWNoZSk6IFJldHVybiBSZWZQdHIgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAg
ICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmRlbGV0ZUNhY2hlR3JvdXAp
OiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAqIGxvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlv
bkNhY2hlU3RvcmFnZS5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2Fk
ZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25DYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpE
T01BcHBsaWNhdGlvbkNhY2hlOjpET01BcHBsaWNhdGlvbkNhY2hlKTogVGFrZSBhIHJlZmVyZW5j
ZS4KKyAgICAgICAgKFdlYkNvcmU6OkRPTUFwcGxpY2F0aW9uQ2FjaGU6OnRvRXZlbnRUeXBlKTog
RGVsZXRlZC4KKyAgICAgICAgKiBsb2FkZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25DYWNoZS5o
OiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuIE1hZGUgbW9zdAorICAgICAgICBtZW1iZXJzIHByaXZh
dGUuCisKKyAgICAgICAgKiBsb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkFyY2hpdmU6OmNsZWFyQWxsU3ViZnJhbWVBcmNoaXZlcyk6IFVzZSBhIHNldCBmb3Ig
dGhlIGxvZ2ljIHRoYXQKKyAgICAgICAgcHJldmVudHMgdXMgZnJvbSB3YWxraW5nIHRoZSBzYW1l
IGFyY2hpdmUgbW9yZSB0aGFuIG9uY2UsIHJhdGhlciB0aGFuIHVzaW5nCisgICAgICAgIGEgdmVj
dG9yLiBMZWZ0IGl0IHJlY3Vyc2l2ZSwgdGhvdWdoLgorICAgICAgICAqIGxvYWRlci9hcmNoaXZl
L0FyY2hpdmUuaDogR2l0IHJpZCBvZiB0aGUgdHlwZSBmdW5jdGlvbiwgcmVwbGFjaW5nIGl0IHdp
dGgKKyAgICAgICAgdGhyZWUgZnVuY3Rpb25zIGZvciB0aGUgZm91ciBkaWZmZXJlbnQgcG9saWNp
ZXMgd2UgY3VycmVudGx5IGhhdmUgYWJvdXQgdGhlCisgICAgICAgIGRpZmZlcmVudCBhcmNoaXZl
IHR5cGVzLiBDaGFuZ2VkIGZ1bmN0aW9ucyB0byB0YWtlIFJlZiYmIGluc3RlYWQgb2YgUGFzc1Jl
ZlB0cgorICAgICAgICBhbmQgcmV0dXJuIGNvbnN0IFZlY3RvcjxSZWY+JiBpbnN0ZWFkIG9mIGNv
bnN0IFZlY3RvcjxSZWZQdHI+JiwgY2hhbmdpbmcgdGhlCisgICAgICAgIGRhdGEgbWVtYmVycyB0
byBtYXRjaC4KKworICAgICAgICAqIGxvYWRlci9hcmNoaXZlL0FyY2hpdmVGYWN0b3J5LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZUFyY2hpdmVNSU1FVHlwZXNNYXApOiBGYWN0b3JlZCB0
aGlzIG91dCBvZiB0aGUgYXJjaGl2ZU1JTUVUeXBlcworICAgICAgICBmdW5jdGlvbiBzbyB3ZSBk
b24ndCBuZWVkIGEgYm9vbGVhbi4gQWxzbyB1c2UgQVNDSUlMaXRlcmFsLgorICAgICAgICAoV2Vi
Q29yZTo6YXJjaGl2ZU1JTUVUeXBlcyk6IFVwZGF0ZWQgdG8gc2UgdGhlIGFib3ZlLgorCisgICAg
ICAgICogbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uOjphZGRBbGxSZXNvdXJjZXMp
OiBUYWtlIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6QXJjaGl2ZVJlc291cmNlQ29s
bGVjdGlvbjo6cG9wU3ViZnJhbWVBcmNoaXZlKTogUmV0dXJuIFJlZlB0ciBpbnN0ZWFkCisgICAg
ICAgIG9mIFBhc3NSZWZQdHIuCisgICAgICAgICogbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291
cmNlQ29sbGVjdGlvbi5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2Fk
ZXIvYXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNoaXZlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okxl
Z2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKTogVXNlIGF1
dG8gYW5kCisgICAgICAgIGZld2VyIGxvY2FsIHZhcmlhYmxlcywgbW9yZSByZWZlcmVuY2VzIGZv
ciBhcmd1bWVudCB0eXBlcyBhbmQgcmV0dXJuIHZhbHVlcy4KKyAgICAgICAgKFdlYkNvcmU6Okxl
Z2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVJlc291cmNlUmVzcG9uc2VGcm9tUHJvcGVydHlMaXN0RGF0
YSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlUmVz
b3VyY2UpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0
ZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6ZXh0cmFjdCk6
IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6dHlwZSk6IERlbGV0
ZWQuCisgICAgICAgIChXZWJDb3JlOjpMZWdhY3lXZWJBcmNoaXZlOjpyYXdEYXRhUmVwcmVzZW50
YXRpb24pOiBNb3JlIG9mIHRoZSBzYW1lLgorICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJj
aGl2ZTo6Y3JlYXRlRnJvbVNlbGVjdGlvbik6IERpdHRvLgorICAgICAgICAqIGxvYWRlci9hcmNo
aXZlL2NmL0xlZ2FjeVdlYkFyY2hpdmUuaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLiBBbHNvIG1h
cmtlZCB0aGUKKyAgICAgICAgY2xhc3MgZmluYWwgYW5kIGFkZGVkIG92ZXJyaWRlcyBmb3IgdGhl
IGZvdXIgbmV3IHBvbGljeSBtZW1iZXIgZnVuY3Rpb25zLgorCisgICAgICAgICogbG9hZGVyL2Fy
Y2hpdmUvbWh0bWwvTUhUTUxBcmNoaXZlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1IVE1MQXJj
aGl2ZTo6Y3JlYXRlKTogUGFzcyByZWZlcmVuY2VzLgorICAgICAgICAoV2ViQ29yZTo6TUhUTUxB
cmNoaXZlOjpnZW5lcmF0ZU1IVE1MRGF0YSk6IFJldHVybiBSZWZQdHIgaW5zdGVhZCBvZgorICAg
ICAgICBQYXNzUmVmUHRyLgorICAgICAgICAqIGxvYWRlci9hcmNoaXZlL21odG1sL01IVE1MQXJj
aGl2ZS5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuIEFsc28gbWFya2VkIHRoZQorICAgICAgICBj
bGFzcyBmaW5hbCBhbmQgYWRkZWQgb3ZlcnJpZGVzIGZvciB0aGUgZm91ciBuZXcgcG9saWN5IG1l
bWJlciBmdW5jdGlvbnMuCisKKyAgICAgICAgKiBsb2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRNTFBh
cnNlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNSFRNTFBhcnNlcjo6cGFyc2VBcmNoaXZlV2l0
aEhlYWRlcik6IFBhc3MgUmVmIGluc3RlYWQgb2YgUmVmUHRyCisgICAgICAgIHRvIHNldE1haW5S
ZXNvdXJjZSBhbmQgYWRkU3ViZnJhbWVBcmNoaXZlLgorICAgICAgICAoV2ViQ29yZTo6TUhUTUxQ
YXJzZXI6OmFkZFJlc291cmNlVG9BcmNoaXZlKTogRGl0dG8uCisKKyAgICAgICAgKiBsb2FkZXIv
Y2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRD
U1NTdHlsZVNoZWV0OjpyZXN0b3JlUGFyc2VkU3R5bGVTaGVldCk6IFJldHVybiBSZWZQdHIgaW5z
dGVhZAorICAgICAgICBvZiBQYXNzUmVmUHRyLgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNo
ZWRDU1NTdHlsZVNoZWV0Lmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIGxv
YWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
Q2FjaGVkUmVzb3VyY2VSZXF1ZXN0OjpzZXRJbml0aWF0b3IpOiBUYWtlIGEgcmVmZXJlbmNlIGlu
c3RlYWQgb2YgYQorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAqIGxvYWRlci9jYWNoZS9D
YWNoZWRSZXNvdXJjZVJlcXVlc3QuaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLgorCisgICAgICAg
ICogbG9hZGVyL2NvY29hL0Rpc2tDYWNoZU1vbml0b3IuaDogUmVtb3ZlZC4gVGhpcyBpcyBhIGR1
cGxpY2F0ZSwgdW51c2VkIGNvcHkKKyAgICAgICAgb2YgRGlza0NhY2hlTW9uaXRvckNvY29hLmgu
CisKKyAgICAgICAgKiBsb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvckNvY29hLmg6IFJlbW92
ZWQgdW5uZWVkZWQgZXhwb3J0aW5nIGFuZCB2aXJ0dWFsCisgICAgICAgIG1lbWJlciBmdW5jdGlv
bnMsIG1hZGUgbW9yZSB0aGluZ3MgcHJpdmF0ZSwgYW5kIGNoYW5nZWQgcmV0dXJuIHR5cGUgdG8g
UmVmUHRyCisgICAgICAgIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKiBsb2FkZXIv
Y29jb2EvRGlza0NhY2hlTW9uaXRvckNvY29hLm1tOgorICAgICAgICAoV2ViQ29yZTo6RGlza0Nh
Y2hlTW9uaXRvcjo6dHJ5R2V0RmlsZUJhY2tlZFNoYXJlZEJ1ZmZlckZyb21DRlVSTENhY2hlZFJl
c3BvbnNlKToKKyAgICAgICAgQ2hhbmdlZCByZXR1cm4gdHlwZSB0byBSZWZQdHIgaW5zdGVhZCBv
ZiBQYXNzUmVmUHRyLgorCisgICAgICAgICogbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6Okljb25EYXRhYmFzZTo6c2V0SWNvbkRhdGFGb3JJY29uVVJMKTog
VGFrZSByYXcgcG9pbnRlciBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIuCisgICAgICAg
IChXZWJDb3JlOjpJY29uRGF0YWJhc2U6OmdldE9yQ3JlYXRlSWNvblJlY29yZCk6IFJldHVybiBS
ZWYgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6SWNvbkRhdGFiYXNl
OjpnZXRJbWFnZURhdGFGb3JJY29uVVJMRnJvbVNRTERhdGFiYXNlKTogUmV0dXJuIFJlZlB0cgor
ICAgICAgICBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgICogbG9hZGVyL2ljb24vSWNv
bkRhdGFiYXNlLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4gQWxzbyBtYXJrZWQgZnVuY3Rpb25z
IGZpbmFsCisgICAgICAgIGluc3RlYWQgb2Ygb3ZlcnJpZGUuCisgICAgICAgICogbG9hZGVyL2lj
b24vSWNvbkRhdGFiYXNlQmFzZS5oOiBEaXR0by4KKworICAgICAgICAqIGxvYWRlci9pY29uL1Bh
Z2VVUkxSZWNvcmQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGFnZVVSTFJlY29yZDo6UGFnZVVS
TFJlY29yZCk6IE1vdmVkIGluaXRpYWxpemF0aW9uIHRvIHRoZSBoZWFkZXIuCisgICAgICAgIChX
ZWJDb3JlOjpQYWdlVVJMUmVjb3JkOjp+UGFnZVVSTFJlY29yZCk6IFdyb3RlIGNvZGUgaGVyZSBp
bnN0ZWFkIG9mIGNhbGxpbmcKKyAgICAgICAgc2V0SWNvblJlY29yZChudWxscHRyKS4KKyAgICAg
ICAgKFdlYkNvcmU6OlBhZ2VVUkxSZWNvcmQ6OnNldEljb25SZWNvcmQpOiBUYWtlIFJlZlB0ciYm
IGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKiBsb2FkZXIvaWNvbi9QYWdlVVJMUmVj
b3JkLmg6IFVwZGF0ZCBmb3IgdGhlIGFib3ZlLgorCisgICAgICAgICogbG9hZGVyL2lvcy9RdWlj
a0xvb2suaDoKKyAgICAgICAgKFdlYkNvcmU6OlF1aWNrTG9va0hhbmRsZTo6c2V0Q2xpZW50KTog
VGFrZSBSZWYmJiBpbnN0ZWFkIG9mIFBhc3NSZUZQdHIuCisgICAgICAgICogbG9hZGVyL2lvcy9R
dWlja0xvb2subW06CisgICAgICAgICgtW1dlYlJlc291cmNlTG9hZGVyUXVpY2tMb29rRGVsZWdh
dGUgaW5pdFdpdGhSZXNvdXJjZUxvYWRlcjpdKTogVGFrZQorICAgICAgICByZWZlcmVuY2UgaW5z
dGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6UXVpY2tMb29rSGFuZGxlOjpj
cmVhdGUpOiBQYXNzIHJlZmVyZW5jZSBpbnN0ZWFkIG9mIHBvaW50ZXIuCisKKyAgICAgICAgKiBw
YWdlL0Nocm9tZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDaHJvbWU6OnJ1bk9wZW5QYW5lbCk6
IFVwZGF0ZWQgdG8gdGFrZSB0d28gcmVmZXJlbmNlcy4KKyAgICAgICAgKiBwYWdlL0Nocm9tZS5o
OiBEaXR0by4KKyAgICAgICAgKiBwYWdlL0Nocm9tZUNsaWVudC5oOiBkaXR0by4KKworICAgICAg
ICAqIHBhZ2UvRE9NV2luZG93LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRPTVdpbmRvdzo6YXBw
bGljYXRpb25DYWNoZSk6IFBhc3MgYSByZWZlcmVuY2UuCisgICAgICAgIChXZWJDb3JlOjpET01X
aW5kb3c6OnNldExvY2F0aW9uKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpET01XaW5kb3c6
OmNyZWF0ZVdpbmRvdyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RE9NV2luZG93OjpvcGVu
KTogRGl0dG8uCisKKyAgICAgICAgKiBwYWdlL0VkaXRvckNsaWVudC5oOiBDaGFuZ2VkIGFyZ3Vt
ZW50cyB0byByZWZlcmVuY2VzIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKworICAgICAgICAqIHBh
Z2UvSGlzdG9yeS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5OjpzdGF0ZU9iamVjdEFk
ZGVkKTogUGFzcyBhbiBydmFsdWUgcmVmZXJlbmNlLgorCisgICAgICAgICogcGFnZS9Mb2NhdGlv
bi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMb2NhdGlvbjo6cmVsb2FkKTogUGFzcyByZWZlcmVu
Y2UgaW5zdGVhZCBvZiBwb2ludGVyLgorICAgICAgICAoV2ViQ29yZTo6TG9jYXRpb246OnNldExv
Y2F0aW9uKTogRGl0dG8uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9VUkwuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6VVJMOjpzZXRGcmFnbWVudElkZW50aWZpZXIpOiBUYWtlIGEgU3RyaW5nVmlldyBy
YXRoZXIgdGhhbgorICAgICAgICBhIFN0cmluZywgd2hpY2ggaXMgbW9yZSBmbGV4aWJsZSBmb3Ig
Y2FsbGVycy4gQWxzbyBlbGltaW5hdGVkIGFuIHVubmVlZGVkCisgICAgICAgIHN0cmluZyBhbGxv
Y2F0aW9uIHdoZW4gdGhlIG9sZCBzdHJpbmcgaGFkIGEgZnJhZ21lbnQgdGhhdCBpcyBiZWluZyBy
ZXBsYWNlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9VUkwuaDogVXBkYXRlZCBmb3IgdGhlIGFib3Zl
LgorCisgICAgICAgICogcmVwbGF5L1JlcGxheUlucHV0RGlzcGF0Y2hNZXRob2RzLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkluaXRpYWxOYXZpZ2F0aW9uOjpkaXNwYXRjaCk6IFBhc3MgcmVmZXJl
bmNlLgorICAgICAgICAqIHN2Zy9TVkdGRUltYWdlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpTVkdGRUltYWdlRWxlbWVudDo6cmVxdWVzdEltYWdlUmVzb3VyY2UpOiBEaXR0by4KKyAg
ICAgICAgKiBzdmcvU1ZHRm9udEZhY2VVcmlFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OlNWR0ZvbnRGYWNlVXJpRWxlbWVudDo6bG9hZEZvbnQpOiBEaXR0by4KKyAgICAgICAgKiBzdmcv
U1ZHVXNlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdVc2VFbGVtZW50Ojp1cGRh
dGVFeHRlcm5hbERvY3VtZW50KTogRGl0dG8uCisKIDIwMTctMDEtMTUgIE15bGVzIEMuIE1heGZp
ZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KIAogICAgICAgICBbQ29jb2FdIFVuaWZ5IEZvbnRQ
bGF0Zm9ybURhdGEncyBoYXNoaW5nIGFuZCBlcXVhbGl0eSBvcGVyYXRvcnMKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvaW9zL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvaW9zL0NoYW5nZUxv
ZwppbmRleCA2MWU4NDI3Zjg2YzBiOWY2MjQzNTZiMDcxZDkxZTExYmI3MjcxYTllLi45MmVkNDU2
ZTg0MjA3NTVkYWNkZDZjZDJmYzBiYjEzMjY5Yjk0MmI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L2lvcy9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9pb3MvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTUgQEAKKzIwMTctMDEtMTUgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgor
CisgICAgICAgIFJlbW92ZSBQYXNzUmVmUHRyIGZyb20gImxvYWRlciIgZGlyZWN0b3J5IG9mIFdl
YkNvcmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2
NzA1NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
V2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50SU9TLmg6IFVwZGF0ZWQgcnVuT3BlblBhbmVs
IHRvIHRha2UgcmVmZXJlbmNlcy4KKyAgICAgICAgTWFkZSBjbGFzcyBmaW5hbCBhbmQgbW9zdCBm
dW5jdGlvbnMgcHJpdmF0ZSBhbmQgZmluYWwuCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2Vi
Q2hyb21lQ2xpZW50SU9TLm1tOgorICAgICAgICAoV2ViQ2hyb21lQ2xpZW50SU9TOjpydW5PcGVu
UGFuZWwpOiBVcGRhdGVkIHRvIHRha2UgcmVmZXJlbmNlcy4KKwogMjAxNi0xMi0zMCAgRGFyaW4g
QWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIFBhc3NSZWZQdHIgdXNl
IGZyb20gdGhlICJkb20iIGRpcmVjdG9yeSwgcmVsYXRlZCBjbGVhbnVwCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cK
aW5kZXggODg2ZDljZWJhODdkNzM2OWVhN2IzMjY5ZjM5ZmFlZTUxZWUyMTg3My4uNTU4N2Y0ZTNi
MWM4NGY0OGFiYzQyNTVkYWYwNjgxOTgyMGRmYWZjZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9tYWMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDkwIEBACisyMDE3LTAxLTE1ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKwor
ICAgICAgICBSZW1vdmUgUGFzc1JlZlB0ciBmcm9tICJsb2FkZXIiIGRpcmVjdG9yeSBvZiBXZWJD
b3JlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjcw
NTUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdl
YkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oOiBVcGRhdGVkIGZvciBjaGFuZ2VzIHRvIENo
cm9tZUNsaWVudC4KKyAgICAgICAgQWxzbyBtYWRlIGNsYXNzIGZpbmFsIGFuZCBtb3N0IGZ1bmN0
aW9ucyBwcml2YXRlIGFuZCBmaW5hbC4KKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJDaHJv
bWVDbGllbnQubW06CisgICAgICAgIChXZWJDaHJvbWVDbGllbnQ6OnJ1bk9wZW5QYW5lbCk6IFVw
ZGF0ZWQgdG8gdGFrZSByZWZlcmVuY2VzLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2Vi
RWRpdG9yQ2xpZW50Lmg6IFVwZGF0ZWQgZm9yIGNoYW5nZXMgdG8gRWRpdG9yQ2xpZW50LgorICAg
ICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5tbToKKyAgICAgICAgKC1bV2Vi
VW5kb1N0ZXAgaW5pdFdpdGhVbmRvU3RlcDpdKTogVGFrZSByZWZlcmVuY2UgaW5zdGVhZCBvZiBQ
YXNzUmVmUHRyLgorICAgICAgICAoK1tXZWJVbmRvU3RlcCBzdGVwV2l0aFVuZG9TdGVwOl0pOiBE
aXR0by4KKyAgICAgICAgKC1bV2ViVW5kb1N0ZXAgc3RlcF0pOiBSZXR1cm4gcmVmZXJlbmNlIGlu
c3RlYWQgb2YgcG9pbnRlci4KKyAgICAgICAgKC1bV2ViRWRpdG9yVW5kb1RhcmdldCB1bmRvRWRp
dGluZzpdKTogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLgorICAgICAgICAoLVtXZWJFZGl0b3JVbmRv
VGFyZ2V0IHJlZG9FZGl0aW5nOl0pOiBEaXR0by4KKyAgICAgICAgKFdlYkVkaXRvckNsaWVudDo6
cmVnaXN0ZXJVbmRvT3JSZWRvU3RlcCk6IFRha2UgcmVmZXJlbmNlIGluc3RlYWQgb2YKKyAgICAg
ICAgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYkVkaXRvckNsaWVudDo6cmVnaXN0ZXJVbmRvU3Rl
cCk6IERpdHRvLgorICAgICAgICAoV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclJlZG9TdGVwKTog
RGl0dG8uCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5o
OiBVcGRhdGVkIGZvciBjaGFuZ2VzIHRvCisgICAgICAgIEZyYW1lTG9hZGVyQ2xpZW50LCBtYXJr
ZWQgZnVuY3Rpb25zIGZpbmFsIGluc3RlYWQgb2Ygb3ZlcnJpZGUuCisgICAgICAgICogV2ViQ29y
ZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW06CisgICAgICAgIChXZWJGcmFtZUxvYWRl
ckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24pOiBUYWtlCisg
ICAgICAgIHBvaW50ZXIgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbik6IERp
dHRvLgorICAgICAgICAobWFrZUZvcm1GaWVsZFZhbHVlc0RpY3Rpb25hcnkpOiBUYWtlIGEgcmVm
ZXJlbmNlLgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRT
dWJtaXRFdmVudCk6IFRha2UgUmVmJiYgaW5zdGVhZAorICAgICAgICBvZiBQYXNzUmVmUHRyLgor
ICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0pOiBU
YWtlIGEgcmVmZXJlbmNlIGluc3RlYWQKKyAgICAgICAgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAg
KFdlYkZyYW1lTG9hZGVyQ2xpZW50OjphY3Rpb25EaWN0aW9uYXJ5KTogVGFrZSBhIHBvaW50ZXIg
aW5zdGVhZCBvZiBQYXNzUmVQdHIuCisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3Jl
YXRlRnJhbWUpOiBUYWtlIGEgcmVmZXJlbmNlIGluc3RlYWQgb2YgYSBwb2ludGVyLgorICAgICAg
ICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbik6IERpdHRvLgorICAgICAgICAo
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQpOiBEaXR0by4KKyAg
ICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVOZXR3b3JraW5nQ29udGV4dCk6IERp
dHRvLgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpZENyZWF0ZVF1aWNrTG9va0hh
bmRsZSk6IFBhc3MgYSByZWZlcmVuY2UuCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJG
cmFtZU5ldHdvcmtpbmdDb250ZXh0Lmg6IFVzZSBSZWYgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgor
ICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQubW06IFR3
ZWFrIHN0eWxlIGEgYml0LgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViT3BlblBhbmVs
UmVzdWx0TGlzdGVuZXIuaDogVGFrZSBhIHJlZmVyZW5jZSBpbnN0ZWFkIG9mCisgICAgICAgIFBh
c3NSZWZQdHIuIFVzZSBSZWZQdHIgZm9yIGNsYXNzIGZpZWxkLgorICAgICAgICAqIFdlYkNvcmVT
dXBwb3J0L1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLm1tOgorICAgICAgICAoLVtXZWJPcGVu
UGFuZWxSZXN1bHRMaXN0ZW5lciBkZWFsbG9jXSk6IERlbGV0ZWQuIENvbXBpbGVyIHdpbGwgbm93
IGRvIGl0CisgICAgICAgIGNvcnJlY3RseSB3aXRob3V0IHVzIGRlY2xhcmluZyBhbnl0aGluZyBl
eHBsaWNpdGx5LgorICAgICAgICAoLVtXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lciBjYW5jZWxd
KTogR2V0IHJpZCBvZiBoYW5kLXdyaXR0ZW4gZGVyZWYgY29kZSwKKyAgICAgICAgYW5kIGxldCBS
ZWZQdHIgZG8gdGhlIHdvcmsuCisgICAgICAgICgtW1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVy
IGNob29zZUZpbGVuYW1lOl0pOiBEaXR0by4KKyAgICAgICAgKC1bV2ViT3BlblBhbmVsUmVzdWx0
TGlzdGVuZXIgY2hvb3NlRmlsZW5hbWVzOl0pOiBEaXR0by4KKyAgICAgICAgKC1bV2ViT3BlblBh
bmVsUmVzdWx0TGlzdGVuZXIgY2hvb3NlRmlsZW5hbWVzOmRpc3BsYXlTdHJpbmc6aWNvbkltYWdl
Ol0pOgorICAgICAgICBSZXdyb3RlIHRvIHVzZSBhIG1vZGVybiBPYmplY3RpdmUtQyBmb3IgbG9v
cCwgcmVzZXJ2ZUluaXRpYWxDYXBhY2l0eSwKKyAgICAgICAgYW5kIHVuY2hlY2tlZEFwcGVuZC4K
KworICAgICAgICAqIFdlYlZpZXcvV2ViQXJjaGl2ZS5tbToKKyAgICAgICAgKC1bV2ViQXJjaGl2
ZSBpbml0V2l0aE1haW5SZXNvdXJjZTpzdWJyZXNvdXJjZXM6c3ViZnJhbWVBcmNoaXZlczpdKToK
KyAgICAgICAgVXBkYXRlZCBmb3IgY2hhbmdlcyB0byBMZWdhY3lXZWJBcmNoaXZlLgorICAgICAg
ICAoLVtXZWJBcmNoaXZlIG1haW5SZXNvdXJjZV0pOiBEaXR0by4KKyAgICAgICAgKC1bV2ViQXJj
aGl2ZSBzdWJyZXNvdXJjZXNdKTogRGl0dG8uCisgICAgICAgICgtW1dlYkFyY2hpdmUgc3ViZnJh
bWVBcmNoaXZlc10pOiBEaXR0by4KKworICAgICAgICAqIFdlYlZpZXcvV2ViRGF0YVNvdXJjZS5t
bToKKyAgICAgICAgKC1bV2ViRGF0YVNvdXJjZSBfYWRkU3ViZnJhbWVBcmNoaXZlczpdKTogVXNl
IGEgbW9kZXJuIE9iamVjdGl2ZS1DIGZvciBsb29wCisgICAgICAgIGluc3RlYWQgb2YgTlNFbnVt
ZXJhdG9yLgorICAgICAgICAoLVtXZWJEYXRhU291cmNlIF9maWxlV3JhcHBlckZvclVSTDpdKTog
VXNlIGF1dG8uCisgICAgICAgICgtW1dlYkRhdGFTb3VyY2UgX2RvY3VtZW50RnJhZ21lbnRXaXRo
QXJjaGl2ZTpdKTogUGFzcyBhIHJlZmVyZW5jZS4KKyAgICAgICAgKC1bV2ViRGF0YVNvdXJjZSBt
YWluUmVzb3VyY2VdKTogRGl0dG8uCisgICAgICAgICgtW1dlYkRhdGFTb3VyY2Ugc3VicmVzb3Vy
Y2VzXSk6IERpdHRvLgorICAgICAgICAoLVtXZWJEYXRhU291cmNlIHN1YnJlc291cmNlRm9yVVJM
Ol0pOiBEaXR0by4KKyAgICAgICAgKC1bV2ViRGF0YVNvdXJjZSBhZGRTdWJyZXNvdXJjZTpdKTog
RGl0dG8uCisKKyAgICAgICAgKiBXZWJWaWV3L1dlYlJlc291cmNlLm1tOgorICAgICAgICAoLVtX
ZWJSZXNvdXJjZVByaXZhdGUgaW5pdFdpdGhDb3JlUmVzb3VyY2U6XSk6IFRha2UgUmVmJiYgaW5z
dGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoLVtXZWJSZXNvdXJjZVByaXZhdGUgZGVhbGxv
Y10pOiBSZW1vdmUgZXhwbGljaXQgZGVyZWYgc2luY2UgUmVmUHRyIHdpbGwgbm93IHRha2UKKyAg
ICAgICAgY2FyZSBvZiBpdAorICAgICAgICAoLVtXZWJSZXNvdXJjZSBpbml0V2l0aENvZGVyOl0p
OiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoLVtXZWJSZXNvdXJjZSBlbmNvZGVXaXRoQ29k
ZXI6XSk6IFVwZGF0ZWQgc2luY2UgY29yZVJlc291cmNlIGlzIG5vdyBSZWZQdHIuCisgICAgICAg
ICgtW1dlYlJlc291cmNlIF9pbml0V2l0aENvcmVSZXNvdXJjZTpdKTogVGFrZSBSZWYmJiBpbnN0
ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgICgtW1dlYlJlc291cmNlIF9jb3JlUmVzb3VyY2Vd
KTogUmV0dXJuIHJlZmVyZW5jZSByYXRoZXIgdGhhbiBwb2ludGVyLgorICAgICAgICAoLVtXZWJS
ZXNvdXJjZSBfaW5pdFdpdGhEYXRhOlVSTDpNSU1FVHlwZTp0ZXh0RW5jb2RpbmdOYW1lOmZyYW1l
TmFtZTpyZXNwb25zZTpjb3B5RGF0YTpdKToKKyAgICAgICAgQWRkZWQgY29kZSB0byBoYW5kbGUg
dGhlIG51bGwgY2FzZSBhbmQgcGFzcyBhIHJlZmVyZW5jZSByYXRoZXIgdGhhbiBhIHBvaW50ZXIu
CisgICAgICAgICogV2ViVmlldy9XZWJSZXNvdXJjZUludGVybmFsLmg6IFVwZGF0ZWQgZm9yIHRo
ZSBhYm92ZS4KKwogMjAxNy0wMS0xMyAgSm9zZXBoIFBlY29yYXJvICA8cGVjb3Jhcm9AYXBwbGUu
Y29tPgogCiAgICAgICAgIFJlbW92ZSBFTkFCTEUoREVUQUlMU19FTEVNRU5UKSBndWFyZHMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvd2lu
L0NoYW5nZUxvZwppbmRleCBjZDdmNjhkZjViZjYxMzNlMDJkMjFjOGVjNjJiOWM5MmRlNTcyZTAw
Li5iNmMwNjM2ZTAzM2E3MmQ0NTFlZTk3MTcxMTg3YjQzYWUzOTIxMWQxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC93aW4vQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMzkgQEAKKzIwMTctMDEtMTUgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBw
bGUuY29tPgorCisgICAgICAgIFJlbW92ZSBQYXNzUmVmUHRyIGZyb20gImxvYWRlciIgZGlyZWN0
b3J5IG9mIFdlYkNvcmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE2NzA1NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcDoKKyAgICAgICAgKFdl
YkNocm9tZUNsaWVudDo6cnVuT3BlblBhbmVsKTogVXBkYXRlZCBmb3IgY2hhbmdlIHRvIENocm9t
ZUNsaWVudC4KKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaDogRGl0
dG8uCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuY3BwOgorICAg
ICAgICAoV2ViRWRpdG9yVW5kb0NvbW1hbmQ6OldlYkVkaXRvclVuZG9Db21tYW5kKTogVGFrZSBh
IHJlZmVyZW5jZSBpbnN0ZWFkIG9mCisgICAgICAgIGEgUGFzc1JlZlB0ci4gQWxzbyB1c2UgUmVm
IGluc3RlYWQgb2YgUmVmUHRyLgorICAgICAgICAoV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVu
ZG9TdGVwKTogRGl0dG8uCisgICAgICAgIChXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyUmVkb1N0
ZXApOiBEaXR0by4KKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuaDog
VXBkYXRlZCBmb3IgdGhlIGFib3ZlLiBBbHNvIG1hcmtlZCB0aGUKKyAgICAgICAgY2xhc3MgYW5k
IG1lbWJlciBmdW5jdGlvbnMgZmluYWwgYW5kIG1hZGUgdGhlbSBhbGwgcHJpdmF0ZSwgd2hpY2gg
d2lsbAorICAgICAgICBoZWxwIHVzIGNhdGNoIGlmIHRoZXJlIGFyZSBhbnkgdGhhdCBkb24ndCBj
b3JyZWN0bHkgbWF0Y2ggV2ViQ29yZS4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkZy
YW1lTG9hZGVyQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNw
YXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbik6IFVwZGF0ZWQKKyAgICAgICAgZm9y
IGNoYW5nZSB0byBDaHJvbWVDbGllbnQuCisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKTogRGl0dG8uCisgICAgICAg
IChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KTogRGl0
dG8uCisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU3VibWl0Rm9y
bSk6IERpdHRvLgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1lKTog
RGl0dG8uIEFsc28gbWVyZ2VkIHR3byBmdW5jdGlvbnMgaW50bworICAgICAgICBvbmUgYmVjYXVz
ZSBvbmUgd2FzIHByaXZhdGUgYW5kIG9ubHkgY2FsbGVkIGJ5IHRoZSBvdGhlci4KKyAgICAgICAg
KFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4pOiBEaXR0by4KKyAgICAgICAgKFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KTogRGl0dG8uCisgICAg
ICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlTmV0d29ya2luZ0NvbnRleHQpOiBEaXR0
by4KKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oOiBEaXR0
by4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQu
aDoKKyAgICAgICAgKFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQ6OmNyZWF0ZSk6IFJldHVybiBh
IFJlZiBpbnN0ZWFkIG9mIGEgUGFzc1JlZlB0ci4KKwogMjAxNy0wMS0xMiAgSm9zZXBoIFBlY29y
YXJvICA8cGVjb3Jhcm9AYXBwbGUuY29tPgogCiAgICAgICAgIFJlbW92ZSB1bm5lY2Vzc2FyeSBp
bmNsdWRlcyBvZiBQYWdlLmgKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBi
L1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCA3Yjg5M2IxMmRhMDQzMzA1N2ZjYjAyYTMz
ZTkzYTNjZjE5NmVhNDVmLi40OTE5ZWU2MjdmNDJmNzc4OGQ2MzQzNzcwMGUwMzQ1NjgzMTdlZWE3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktp
dDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIwIEBACisyMDE3LTAxLTE1ICBEYXJpbiBBZGxlciAg
PGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgUGFzc1JlZlB0ciBmcm9tICJsb2Fk
ZXIiIGRpcmVjdG9yeSBvZiBXZWJDb3JlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xNjcwNTUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICAqIFNoYXJlZC9BUElXZWJBcmNoaXZlLmg6IFVzZSBSZWZQdHImJiBp
bnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgICogU2hhcmVkL0FQSVdlYkFyY2hpdmUubW06
CisgICAgICAgIChBUEk6OldlYkFyY2hpdmU6OmNyZWF0ZSk6IERpdHRvLgorICAgICAgICAoQVBJ
OjpXZWJBcmNoaXZlOjpXZWJBcmNoaXZlKTogRGl0dG8uCisgICAgICAgIChBUEk6OldlYkFyY2hp
dmU6OnN1YnJlc291cmNlcyk6IERpdHRvLgorICAgICAgICAoQVBJOjpXZWJBcmNoaXZlOjpzdWJm
cmFtZUFyY2hpdmVzKTogRGl0dG8uCisKKyAgICAgICAgKiBTaGFyZWQvVGV4dENoZWNrZXJTdGF0
ZS5oOiBJbml0aWFsaXplIGRhdGEgbWVtYmVycyBzbyBjbGFzc2VzCisgICAgICAgIHVzaW5nIHRo
aXMgd29uJ3QgaGF2ZSB0byBleHBsaWNpdGx5IGluaXRhbGl6ZSB0aGVtLgorCisgICAgICAgICog
VUlQcm9jZXNzL1dlYkljb25EYXRhYmFzZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkljb25E
YXRhYmFzZTo6c2V0SWNvbkRhdGFGb3JJY29uVVJMKTogUGFzcyBhIHJhdworICAgICAgICBwb2lu
dGVyIHRvIFdlYkNvcmUuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lmg6IFJl
bW92ZWQgZm9yd2FyZCBkZWNsYXJhdGlvbiBvZgorICAgICAgICBTdHJpbmdQYWlyVmVjdG9yLCBu
b3QgbmVlZGVkIGhlcmUuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJ
Y29uRGF0YWJhc2VQcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkljb25EYXRhYmFzZVBy
b3h5OjpXZWJJY29uRGF0YWJhc2VQcm94eSk6IFRha2UgYSByZWZlcmVuY2UuCisgICAgICAgIChX
ZWJLaXQ6OldlYkljb25EYXRhYmFzZVByb3h5OjpyZXRhaW5JY29uRm9yUGFnZVVSTCk6IFVwZGF0
ZWQgZm9yIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYktpdDo6V2ViSWNvbkRhdGFiYXNlUHJveHk6
OnJlbGVhc2VJY29uRm9yUGFnZVVSTCk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJJY29u
RGF0YWJhc2VQcm94eTo6c3luY2hyb25vdXNJY29uRm9yUGFnZVVSTCk6IERpdHRvLgorICAgICAg
ICAoV2ViS2l0OjpXZWJJY29uRGF0YWJhc2VQcm94eTo6bG9hZERlY2lzaW9uRm9ySWNvblVSTCk6
IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJJY29uRGF0YWJhc2VQcm94eTo6cmVjZWl2ZWRJ
Y29uTG9hZERlY2lzaW9uKTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkljb25EYXRhYmFz
ZVByb3h5OjppY29uRGF0YUZvckljb25VUkwpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2Vi
SWNvbkRhdGFiYXNlUHJveHk6OnNldEljb25VUkxGb3JQYWdlVVJMKTogRGl0dG8uCisgICAgICAg
IChXZWJLaXQ6OldlYkljb25EYXRhYmFzZVByb3h5OjpzZXRJY29uRGF0YUZvckljb25VUkwpOiBE
aXR0by4KKyAgICAgICAgKiBXZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQ
cm94eS5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisgICAgICAgIE1hcmtlZCB0aGUgY2xhc3Mg
ZmluYWwsIG1hZGUgbW9zdCBmdW5jdGlvbnMgcHJpdmF0ZSBhbmQgZmluYWwuCisKKyAgICAgICAg
KiBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlv
bi5jcHA6CisgICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbjo6
SW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uKToKKyAgICAgICAgUmVtb3ZlZCBhc3NlcnRp
b24gdGhhdCBhIHBvaW50ZXIgaXMgbm9uLW51bGwgc2luY2UgdGhhdCBwb2ludGVyIGlzIG5vdyBh
CisgICAgICAgIHJlZmVyZW5jZS4gTGVmdCB1c2Ugb2YgUGFzc1JlZlB0ciBoZXJlIGZvciBub3cu
egorCisgICAgICAgICogV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmNwcDoK
KyAgICAgICAgKFdlYktpdDo6V2ViTG9hZGVyU3RyYXRlZ3k6OnNjaGVkdWxlTG9hZCk6IFVwZGF0
ZWQgc2luY2UgYXBwbGljYXRpb24gY2FjaGUKKyAgICAgICAgaG9zdCBpcyBub3cgYSByZWZlcmVu
Y2UgcmF0aGVyIHRobmEgYSBwb2ludGVyLgorICAgICAgICAqIFdlYlByb2Nlc3MvTmV0d29yay9X
ZWJSZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlJlc291cmNlTG9hZGVy
Ojp3aWxsU2VuZFJlcXVlc3QpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViUmVzb3VyY2VM
b2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZSk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJS
ZXNvdXJjZUxvYWRlcjo6ZGlkRmFpbFJlc291cmNlTG9hZCk6IERpdHRvLgorCisgICAgICAgICog
V2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuY3BwOgorICAgICAgICAoV2ViS2l0OjpidWls
ZEhUVFBIZWFkZXJzKTogR290IHJpZCBvZiB1bm5lZWRlZCB1c2Ugb2YgU3RyaW5nOjpmb3JtYXQu
CisgICAgICAgIChXZWJLaXQ6OlBsdWdpblZpZXc6OmNyZWF0ZSk6IFRha2UgYSByZWZlcmVuY2Ug
aW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViS2l0OjpQbHVnaW5WaWV3OjpQbHVn
aW5WaWV3KTogRGl0dG8uIEFsc28gbW92ZWQgbXVjaCBvZiB0aGUgZGF0YQorICAgICAgICBtZW1i
ZXIgaW5pdGlhbGl6YXRpb24gdG8gdGhlIGNsYXNzIGRlZmluaXRpb24uCisgICAgICAgIChXZWJL
aXQ6OlBsdWdpblZpZXc6OnJlY3JlYXRlQW5kSW5pdGlhbGl6ZSk6IFRha2UgUmVmJiYgaW5zdGVh
ZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViS2l0OjpQbHVnaW5WaWV3OjptYW51YWxMb2Fk
RGlkUmVjZWl2ZVJlc3BvbnNlKTogVXBkYXRlZCBmb3IgY2hhbmdlIHRvCisgICAgICAgIE1hbnVh
bFN0cmVhbVN0YXRlIGVudW1lcmF0aW9uLgorICAgICAgICAoV2ViS2l0OjpQbHVnaW5WaWV3Ojpt
YW51YWxMb2FkRGlkUmVjZWl2ZURhdGEpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6UGx1Z2lu
Vmlldzo6bWFudWFsTG9hZERpZEZpbmlzaExvYWRpbmcgRGl0dG8uKToKKyAgICAgICAgKFdlYktp
dDo6UGx1Z2luVmlldzo6bWFudWFsTG9hZERpZEZhaWwpOiBEaXR0by4KKyAgICAgICAgKFdlYktp
dDo6UGx1Z2luVmlldzo6bGl2ZVJlc291cmNlRGF0YSk6IFJldHVybiBSZWZQdHIgaW5zZWFkIG9m
IFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJLaXQ6OlBsdWdpblZpZXc6OnJlZGVsaXZlck1hbnVh
bFN0cmVhbSk6IFVwZGF0ZWQgZm9yIE1hbnVhbFN0cmVhbVN0YXRlLgorICAgICAgICAqIFdlYlBy
b2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3Lmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4gQWxzbyBj
aGFuZ2VkCisgICAgICAgIE1hbnVhbFN0cmVhbVN0YXRlIGludG8gYW4gZW51bSBjbGFzcy4KKwor
ICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcDog
Q2hhbmdlZCBtX3BhZ2UgdG8gYSByZWZlcmVuY2UuCisgICAgICAgIChXZWJLaXQ6OldlYkNocm9t
ZUNsaWVudDo6cnVuT3BlblBhbmVsKTogVGFrZSBib3RoIGFyZ3VtZW50cyBhcyByZWZlcmVuY2Vz
LgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50Lmg6
IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViRWRpdG9yQ2xp
ZW50OjpyZWdpc3RlclVuZG9TdGVwKTogVGFrZSByZWZlcmVuY2UgaW5zdGVhZCBvZiBQYXNzUmVm
UHRyLgorICAgICAgICAoV2ViS2l0OjpXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyUmVkb1N0ZXAp
OiBEaXR0by4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNs
aWVudC5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUKKworICAgICAgICAqIFdlYlByb2Nlc3MvV2Vi
Q29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rp
b24pOgorICAgICAgICBVcGRhdGVkIGZvciBjaGFuZ2UgdG8gRnJhbWVMb2FkZXJDbGllbnQuCisg
ICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGlj
eUZvck5hdmlnYXRpb25BY3Rpb24pOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudCk6IERpdHRvLgorICAgICAg
ICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybSk6
IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlRnJh
bWUpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0
ZVBsdWdpbik6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6
cmVjcmVhdGVQbHVnaW4pOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KTogRGl0dG8uCisg
ICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaWRSZXF1ZXN0QXV0b2NvbXBs
ZXRlKTogRGl0dG8uCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFt
ZUxvYWRlckNsaWVudC5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBXZWJQ
cm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6Oldl
YlBhZ2UpOiBQYXNzIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6Y3JlYXRl
UGx1Z2luKTogUmV0dXJuIFJlZlB0ciBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgIChX
ZWJLaXQ6OldlYlBhZ2U6OmZyb21Db3JlUGFnZSk6IFVwZGF0ZWQgZm9yIGNoYW5nZSB0byBXZWJD
aHJvbWVDbGllbnQuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnNldEhlYWRlclBhZ2VCYW5u
ZXIpOiBUYWtlIHBvaW50ZXIgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViS2l0
OjpXZWJQYWdlOjpzZXRGb290ZXJQYWdlQmFubmVyKTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6
OldlYlBhZ2U6OnNldEFjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyKTogVGFrZSBSZWYmJiBp
bnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6
OmN1cnJlbnRTZWxlY3Rpb25Bc1JhbmdlKTogUmV0dXJuIFJlZlB0ciBpbnN0ZWFkIG9mIFBhc3NS
ZWZQdHIuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnJhbmdlRnJvbUVkaXRpbmdSYW5nZSk6
IERpdHRvLgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmg6IFVwZGF0ZWQg
Zm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9lZmwvV2ViUGFn
ZUVmbC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OmNhY2hlZFJlc3BvbnNlRGF0YUZv
clVSTCk6IFJldHVybiBSZWZQdHIgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorCisgICAgICAgICog
V2ViUHJvY2Vzcy9XZWJQYWdlL2d0ay9XZWJQYWdlR3RrLmNwcDoKKyAgICAgICAgKFdlYktpdDo6
V2ViUGFnZTo6Y2FjaGVkUmVzcG9uc2VEYXRhRm9yVVJMKTogUmV0dXJuIFJlZlB0ciBpbnN0ZWFk
IG9mIFBhc3NSZWZQdHIuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1dlYlBh
Z2VNYWMubW06CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OmNhY2hlZFJlc3BvbnNlRGF0YUZv
clVSTCk6IFJldHVybiBSZWZQdHIgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2Vi
S2l0OjpXZWJQYWdlOjpzZXRUb3BPdmVyaGFuZ0ltYWdlKTogVGFrZSByYXcgcG9pbnRlciBpbnN0
ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnNldEJvdHRvbU92
ZXJoYW5nSW1hZ2UpOiBEaXR0by4KKworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUHJvY2Vzcy5j
cHA6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3M6OldlYlByb2Nlc3MpOiBQYXNzIGEgcmVm
ZXJlbmNlLiBNb3ZlIG1vc3QgaW5pdGlhbGl6YXRpb24gdG8KKyAgICAgICAgdGhlIGNsYXNzIGRl
ZmluaXRpb24uCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmg6IFVwZGFlZCBmb3Ig
dGhlIGFib3ZlLgorCiAyMDE3LTAxLTE0ICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBw
bGUuY29tPgogCiAgICAgICAgIFJlbW92ZSB1bnVzZWQgV0tWaWV3IGluaXRpYWxpemVyIHBhcmFt
ZXRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKaW5kZXggN2FmMjYwOGMwOTZiMjg3OTNmNjNiMmQx
YjdkMzk1Yjc5YjQ0Zjc5Yy4uMTg5ZWYxYzE2ZjAwMTE0ZmJmNDdhMjYxMzNiZmM2ZWRjMDVkZTE4
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCkBAIC0zMTQxLDcgKzMxNDEsNyBAQCB2b2lkIERv
Y3VtZW50Ojpwcm9jZXNzSHR0cEVxdWl2KGNvbnN0IFN0cmluZyYgZXF1aXYsIGNvbnN0IFN0cmlu
ZyYgY29udGVudCwgYm9vbAogICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgIGNvbXBs
ZXRlZFVSTCA9IGNvbXBsZXRlVVJMKHVybFN0cmluZyk7CiAgICAgICAgICAgICBpZiAoIXByb3Rv
Y29sSXNKYXZhU2NyaXB0KGNvbXBsZXRlZFVSTCkpCi0gICAgICAgICAgICAgICAgZnJhbWUtPm5h
dmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZVJlZGlyZWN0KHRoaXMsIGRlbGF5LCBjb21wbGV0
ZWRVUkwpOworICAgICAgICAgICAgICAgIGZyYW1lLT5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2No
ZWR1bGVSZWRpcmVjdCgqdGhpcywgZGVsYXksIGNvbXBsZXRlZFVSTCk7CiAgICAgICAgICAgICBl
bHNlIHsKICAgICAgICAgICAgICAgICBTdHJpbmcgbWVzc2FnZSA9ICJSZWZ1c2VkIHRvIHJlZnJl
c2ggIiArIG1fdXJsLnN0cmluZ0NlbnRlckVsbGlwc2l6ZWRUb0xlbmd0aCgpICsgIiB0byBhIGph
dmFzY3JpcHQ6IFVSTCI7CiAgICAgICAgICAgICAgICAgYWRkQ29uc29sZU1lc3NhZ2UoTWVzc2Fn
ZVNvdXJjZTo6U2VjdXJpdHksIE1lc3NhZ2VMZXZlbDo6RXJyb3IsIG1lc3NhZ2UpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9Db21wb3NpdGVFZGl0Q29tbWFuZC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9lZGl0aW5nL0NvbXBvc2l0ZUVkaXRDb21tYW5kLmNwcAppbmRleCBjY2U5
Y2FhZWMxYTAxZWU5ZjQ4YjNhZGE1ODJhZmEyYTcxMWM2MTgwLi5mN2ZkNDg0OGI3ZTgzNjNlMWQ5
YjAxZWEzOTc3OGFiYjViYzhkNDg1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5n
L0NvbXBvc2l0ZUVkaXRDb21tYW5kLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0Nv
bXBvc2l0ZUVkaXRDb21tYW5kLmNwcApAQCAtMjM5LDcgKzIzOSw3IEBAIHZvaWQgRWRpdENvbW1h
bmRDb21wb3NpdGlvbjo6dW5hcHBseSgpCiAgICAgZm9yIChzaXplX3QgaSA9IHNpemU7IGk7IC0t
aSkKICAgICAgICAgbV9jb21tYW5kc1tpIC0gMV0tPmRvVW5hcHBseSgpOwogCi0gICAgZnJhbWUt
PmVkaXRvcigpLnVuYXBwbGllZEVkaXRpbmcodGhpcyk7CisgICAgZnJhbWUtPmVkaXRvcigpLnVu
YXBwbGllZEVkaXRpbmcoKnRoaXMpOwogCiAgICAgaWYgKEFYT2JqZWN0Q2FjaGU6OmFjY2Vzc2li
aWxpdHlFbmFibGVkKCkpCiAgICAgICAgIG1fcmVwbGFjZWRUZXh0LnBvc3RUZXh0U3RhdGVDaGFu
Z2VOb3RpZmljYXRpb25Gb3JVbmFwcGx5KG1fZG9jdW1lbnQtPmV4aXN0aW5nQVhPYmplY3RDYWNo
ZSgpKTsKQEAgLTI2NSw3ICsyNjUsNyBAQCB2b2lkIEVkaXRDb21tYW5kQ29tcG9zaXRpb246OnJl
YXBwbHkoKQogICAgIGZvciAoYXV0byYgY29tbWFuZCA6IG1fY29tbWFuZHMpCiAgICAgICAgIGNv
bW1hbmQtPmRvUmVhcHBseSgpOwogCi0gICAgZnJhbWUtPmVkaXRvcigpLnJlYXBwbGllZEVkaXRp
bmcodGhpcyk7CisgICAgZnJhbWUtPmVkaXRvcigpLnJlYXBwbGllZEVkaXRpbmcoKnRoaXMpOwog
CiAgICAgaWYgKEFYT2JqZWN0Q2FjaGU6OmFjY2Vzc2liaWxpdHlFbmFibGVkKCkpCiAgICAgICAg
IG1fcmVwbGFjZWRUZXh0LnBvc3RUZXh0U3RhdGVDaGFuZ2VOb3RpZmljYXRpb25Gb3JSZWFwcGx5
KG1fZG9jdW1lbnQtPmV4aXN0aW5nQVhPYmplY3RDYWNoZSgpKTsKQEAgLTQxNiwxNCArNDE2LDE0
IEBAIEVkaXRDb21tYW5kQ29tcG9zaXRpb24qIENvbXBvc2l0ZUVkaXRDb21tYW5kOjpjb21wb3Np
dGlvbigpIGNvbnN0CiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLUVkaXRDb21tYW5kQ29tcG9z
aXRpb24qIENvbXBvc2l0ZUVkaXRDb21tYW5kOjplbnN1cmVDb21wb3NpdGlvbigpCitFZGl0Q29t
bWFuZENvbXBvc2l0aW9uJiBDb21wb3NpdGVFZGl0Q29tbWFuZDo6ZW5zdXJlQ29tcG9zaXRpb24o
KQogewotICAgIENvbXBvc2l0ZUVkaXRDb21tYW5kKiBjb21tYW5kID0gdGhpczsKLSAgICB3aGls
ZSAoY29tbWFuZCAmJiBjb21tYW5kLT5wYXJlbnQoKSkKLSAgICAgICAgY29tbWFuZCA9IGNvbW1h
bmQtPnBhcmVudCgpOworICAgIGF1dG8qIGNvbW1hbmQgPSB0aGlzOworICAgIHdoaWxlIChhdXRv
KiBwYXJlbnQgPSBjb21tYW5kLT5wYXJlbnQoKSkKKyAgICAgICAgY29tbWFuZCA9IHBhcmVudDsK
ICAgICBpZiAoIWNvbW1hbmQtPm1fY29tcG9zaXRpb24pCiAgICAgICAgIGNvbW1hbmQtPm1fY29t
cG9zaXRpb24gPSBFZGl0Q29tbWFuZENvbXBvc2l0aW9uOjpjcmVhdGUoZG9jdW1lbnQoKSwgc3Rh
cnRpbmdTZWxlY3Rpb24oKSwgZW5kaW5nU2VsZWN0aW9uKCksIGVkaXRpbmdBY3Rpb24oKSk7Ci0g
ICAgcmV0dXJuIGNvbW1hbmQtPm1fY29tcG9zaXRpb24uZ2V0KCk7CisgICAgcmV0dXJuICpjb21t
YW5kLT5tX2NvbXBvc2l0aW9uOwogfQogCiBib29sIENvbXBvc2l0ZUVkaXRDb21tYW5kOjppc0Ny
ZWF0ZUxpbmtDb21tYW5kKCkgY29uc3QKQEAgLTQ2NSw3ICs0NjUsNyBAQCB2b2lkIENvbXBvc2l0
ZUVkaXRDb21tYW5kOjphcHBseUNvbW1hbmRUb0NvbXBvc2l0ZShQYXNzUmVmUHRyPEVkaXRDb21t
YW5kPiBwcnBDbwogICAgIGNvbW1hbmQtPmRvQXBwbHkoKTsKICAgICBpZiAoY29tbWFuZC0+aXNT
aW1wbGVFZGl0Q29tbWFuZCgpKSB7CiAgICAgICAgIGNvbW1hbmQtPnNldFBhcmVudChudWxscHRy
KTsKLSAgICAgICAgZW5zdXJlQ29tcG9zaXRpb24oKS0+YXBwZW5kKHRvU2ltcGxlRWRpdENvbW1h
bmQoY29tbWFuZC5nZXQoKSkpOworICAgICAgICBlbnN1cmVDb21wb3NpdGlvbigpLmFwcGVuZCh0
b1NpbXBsZUVkaXRDb21tYW5kKGNvbW1hbmQuZ2V0KCkpKTsKICAgICB9CiAgICAgbV9jb21tYW5k
cy5hcHBlbmQoV1RGTW92ZShjb21tYW5kKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9lZGl0aW5nL0NvbXBvc2l0ZUVkaXRDb21tYW5kLmggYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5n
L0NvbXBvc2l0ZUVkaXRDb21tYW5kLmgKaW5kZXggODVmNDE4ZjdkYjkxN2NjZjAxNDhhNmY3NGVi
YzM4YmViMDUwMzliMS4uMDIyMWRjOTk5Y2NmZTZmYzU5YjE4MWE5ZmY3ODA5OWI2ZTM1ZjNiNyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9Db21wb3NpdGVFZGl0Q29tbWFuZC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuaApAQCAt
MTA1LDcgKzEwNSw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGFwcGx5KCk7CiAgICAgYm9vbCBpc0Zp
cnN0Q29tbWFuZChFZGl0Q29tbWFuZCogY29tbWFuZCkgeyByZXR1cm4gIW1fY29tbWFuZHMuaXNF
bXB0eSgpICYmIG1fY29tbWFuZHMuZmlyc3QoKSA9PSBjb21tYW5kOyB9CiAgICAgRWRpdENvbW1h
bmRDb21wb3NpdGlvbiogY29tcG9zaXRpb24oKSBjb25zdDsKLSAgICBFZGl0Q29tbWFuZENvbXBv
c2l0aW9uKiBlbnN1cmVDb21wb3NpdGlvbigpOworICAgIEVkaXRDb21tYW5kQ29tcG9zaXRpb24m
IGVuc3VyZUNvbXBvc2l0aW9uKCk7CiAKICAgICB2aXJ0dWFsIGJvb2wgaXNDcmVhdGVMaW5rQ29t
bWFuZCgpIGNvbnN0OwogICAgIHZpcnR1YWwgYm9vbCBpc1R5cGluZ0NvbW1hbmQoKSBjb25zdDsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcAppbmRleCAwOGU1MzkxNTc3ODhmYjU3MTVmYWVkOWJj
ZWM1ZDVmZTQzYzEyNTgyLi5mYWM2ZTY1NWY2ZWEyNTM5MDllNmJlMGRlNGU5NDI0OGNhODBhNGNm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCkBAIC05OTYsMjMgKzk5NiwyMyBAQCBib29s
IEVkaXRvcjo6d2lsbFVuYXBwbHlFZGl0aW5nKGNvbnN0IEVkaXRDb21tYW5kQ29tcG9zaXRpb24m
IGNvbXBvc2l0aW9uKSBjb25zdAogICAgIHJldHVybiBkaXNwYXRjaEJlZm9yZUlucHV0RXZlbnRz
KGNvbXBvc2l0aW9uLnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCBjb21wb3NpdGlvbi5l
bmRpbmdSb290RWRpdGFibGVFbGVtZW50KCksICJoaXN0b3J5VW5kbyIpOwogfQogCi12b2lkIEVk
aXRvcjo6dW5hcHBsaWVkRWRpdGluZyhQYXNzUmVmUHRyPEVkaXRDb21tYW5kQ29tcG9zaXRpb24+
IGNtZCkKK3ZvaWQgRWRpdG9yOjp1bmFwcGxpZWRFZGl0aW5nKEVkaXRDb21tYW5kQ29tcG9zaXRp
b24mIGNvbXBvc2l0aW9uKQogewogICAgIGRvY3VtZW50KCkudXBkYXRlTGF5b3V0KCk7CiAKLSAg
ICBub3RpZnlUZXh0RnJvbUNvbnRyb2xzKGNtZC0+c3RhcnRpbmdSb290RWRpdGFibGVFbGVtZW50
KCksIGNtZC0+ZW5kaW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpKTsKKyAgICBub3RpZnlUZXh0RnJv
bUNvbnRyb2xzKGNvbXBvc2l0aW9uLnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCBjb21w
b3NpdGlvbi5lbmRpbmdSb290RWRpdGFibGVFbGVtZW50KCkpOwogCi0gICAgVmlzaWJsZVNlbGVj
dGlvbiBuZXdTZWxlY3Rpb24oY21kLT5zdGFydGluZ1NlbGVjdGlvbigpKTsKKyAgICBWaXNpYmxl
U2VsZWN0aW9uIG5ld1NlbGVjdGlvbihjb21wb3NpdGlvbi5zdGFydGluZ1NlbGVjdGlvbigpKTsK
ICAgICBjaGFuZ2VTZWxlY3Rpb25BZnRlckNvbW1hbmQobmV3U2VsZWN0aW9uLCBGcmFtZVNlbGVj
dGlvbjo6ZGVmYXVsdFNldFNlbGVjdGlvbk9wdGlvbnMoKSk7Ci0gICAgZGlzcGF0Y2hJbnB1dEV2
ZW50cyhjbWQtPnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCBjbWQtPmVuZGluZ1Jvb3RF
ZGl0YWJsZUVsZW1lbnQoKSwgImhpc3RvcnlVbmRvIik7CisgICAgZGlzcGF0Y2hJbnB1dEV2ZW50
cyhjb21wb3NpdGlvbi5zdGFydGluZ1Jvb3RFZGl0YWJsZUVsZW1lbnQoKSwgY29tcG9zaXRpb24u
ZW5kaW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCAiaGlzdG9yeVVuZG8iKTsKIAogICAgIHVwZGF0
ZUVkaXRvclVJTm93SWZTY2hlZHVsZWQoKTsKIAotICAgIG1fYWx0ZXJuYXRpdmVUZXh0Q29udHJv
bGxlci0+cmVzcG9uZFRvVW5hcHBsaWVkRWRpdGluZyhjbWQuZ2V0KCkpOworICAgIG1fYWx0ZXJu
YXRpdmVUZXh0Q29udHJvbGxlci0+cmVzcG9uZFRvVW5hcHBsaWVkRWRpdGluZygmY29tcG9zaXRp
b24pOwogCiAgICAgbV9sYXN0RWRpdENvbW1hbmQgPSBudWxscHRyOwotICAgIGlmIChjbGllbnQo
KSkKLSAgICAgICAgY2xpZW50KCktPnJlZ2lzdGVyUmVkb1N0ZXAoY21kKTsKKyAgICBpZiAoYXV0
byogY2xpZW50ID0gdGhpcy0+Y2xpZW50KCkpCisgICAgICAgIGNsaWVudC0+cmVnaXN0ZXJSZWRv
U3RlcChjb21wb3NpdGlvbik7CiAgICAgcmVzcG9uZFRvQ2hhbmdlZENvbnRlbnRzKG5ld1NlbGVj
dGlvbik7CiB9CiAKQEAgLTEwMjEsMjEgKzEwMjEsMjEgQEAgYm9vbCBFZGl0b3I6OndpbGxSZWFw
cGx5RWRpdGluZyhjb25zdCBFZGl0Q29tbWFuZENvbXBvc2l0aW9uJiBjb21wb3NpdGlvbikgY29u
c3QKICAgICByZXR1cm4gZGlzcGF0Y2hCZWZvcmVJbnB1dEV2ZW50cyhjb21wb3NpdGlvbi5zdGFy
dGluZ1Jvb3RFZGl0YWJsZUVsZW1lbnQoKSwgY29tcG9zaXRpb24uZW5kaW5nUm9vdEVkaXRhYmxl
RWxlbWVudCgpLCAiaGlzdG9yeVJlZG8iKTsKIH0KIAotdm9pZCBFZGl0b3I6OnJlYXBwbGllZEVk
aXRpbmcoUGFzc1JlZlB0cjxFZGl0Q29tbWFuZENvbXBvc2l0aW9uPiBjbWQpCit2b2lkIEVkaXRv
cjo6cmVhcHBsaWVkRWRpdGluZyhFZGl0Q29tbWFuZENvbXBvc2l0aW9uJiBjb21wb3NpdGlvbikK
IHsKICAgICBkb2N1bWVudCgpLnVwZGF0ZUxheW91dCgpOwogCi0gICAgbm90aWZ5VGV4dEZyb21D
b250cm9scyhjbWQtPnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCBjbWQtPmVuZGluZ1Jv
b3RFZGl0YWJsZUVsZW1lbnQoKSk7CisgICAgbm90aWZ5VGV4dEZyb21Db250cm9scyhjb21wb3Np
dGlvbi5zdGFydGluZ1Jvb3RFZGl0YWJsZUVsZW1lbnQoKSwgY29tcG9zaXRpb24uZW5kaW5nUm9v
dEVkaXRhYmxlRWxlbWVudCgpKTsKIAotICAgIFZpc2libGVTZWxlY3Rpb24gbmV3U2VsZWN0aW9u
KGNtZC0+ZW5kaW5nU2VsZWN0aW9uKCkpOworICAgIFZpc2libGVTZWxlY3Rpb24gbmV3U2VsZWN0
aW9uKGNvbXBvc2l0aW9uLmVuZGluZ1NlbGVjdGlvbigpKTsKICAgICBjaGFuZ2VTZWxlY3Rpb25B
ZnRlckNvbW1hbmQobmV3U2VsZWN0aW9uLCBGcmFtZVNlbGVjdGlvbjo6ZGVmYXVsdFNldFNlbGVj
dGlvbk9wdGlvbnMoKSk7Ci0gICAgZGlzcGF0Y2hJbnB1dEV2ZW50cyhjbWQtPnN0YXJ0aW5nUm9v
dEVkaXRhYmxlRWxlbWVudCgpLCBjbWQtPmVuZGluZ1Jvb3RFZGl0YWJsZUVsZW1lbnQoKSwgImhp
c3RvcnlSZWRvIik7CisgICAgZGlzcGF0Y2hJbnB1dEV2ZW50cyhjb21wb3NpdGlvbi5zdGFydGlu
Z1Jvb3RFZGl0YWJsZUVsZW1lbnQoKSwgY29tcG9zaXRpb24uZW5kaW5nUm9vdEVkaXRhYmxlRWxl
bWVudCgpLCAiaGlzdG9yeVJlZG8iKTsKICAgICAKICAgICB1cGRhdGVFZGl0b3JVSU5vd0lmU2No
ZWR1bGVkKCk7CiAKICAgICBtX2xhc3RFZGl0Q29tbWFuZCA9IG51bGxwdHI7Ci0gICAgaWYgKGNs
aWVudCgpKQotICAgICAgICBjbGllbnQoKS0+cmVnaXN0ZXJVbmRvU3RlcChjbWQpOworICAgIGlm
IChhdXRvKiBjbGllbnQgPSB0aGlzLT5jbGllbnQoKSkKKyAgICAgICAgY2xpZW50LT5yZWdpc3Rl
clVuZG9TdGVwKGNvbXBvc2l0aW9uKTsKICAgICByZXNwb25kVG9DaGFuZ2VkQ29udGVudHMobmV3
U2VsZWN0aW9uKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0
b3IuaCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmgKaW5kZXggNTY3YzY1YjY0OTM1
MTI3ZjY3OGU3MzljODAwMDg0YWE2M2M3YjU2Ni4uODM0ZjMxYTBjYjcxYTdkOWJiOTI1MjJjNWNl
MTRjNDU5N2Y5MTFjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3Iu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oCkBAIC05OSwxMCArOTksMTIg
QEAgZW51bSBjbGFzcyBNYWlsQmxvY2txdW90ZUhhbmRsaW5nIHsKIH07CiAKICNpZiBQTEFURk9S
TShDT0NPQSkKKwogc3RydWN0IEZyYWdtZW50QW5kUmVzb3VyY2VzIHsKICAgICBSZWZQdHI8RG9j
dW1lbnRGcmFnbWVudD4gZnJhZ21lbnQ7Ci0gICAgVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3Vy
Y2U+PiByZXNvdXJjZXM7CisgICAgVmVjdG9yPFJlZjxBcmNoaXZlUmVzb3VyY2U+PiByZXNvdXJj
ZXM7CiB9OworCiAjZW5kaWYKIAogY2xhc3MgRWRpdG9yIHsKQEAgLTIwNiw4ICsyMDgsOCBAQCBw
dWJsaWM6CiAgICAgYm9vbCB3aWxsUmVhcHBseUVkaXRpbmcoY29uc3QgRWRpdENvbW1hbmRDb21w
b3NpdGlvbiYpIGNvbnN0OwogCiAgICAgdm9pZCBhcHBsaWVkRWRpdGluZyhQYXNzUmVmUHRyPENv
bXBvc2l0ZUVkaXRDb21tYW5kPik7Ci0gICAgdm9pZCB1bmFwcGxpZWRFZGl0aW5nKFBhc3NSZWZQ
dHI8RWRpdENvbW1hbmRDb21wb3NpdGlvbj4pOwotICAgIHZvaWQgcmVhcHBsaWVkRWRpdGluZyhQ
YXNzUmVmUHRyPEVkaXRDb21tYW5kQ29tcG9zaXRpb24+KTsKKyAgICB2b2lkIHVuYXBwbGllZEVk
aXRpbmcoRWRpdENvbW1hbmRDb21wb3NpdGlvbiYpOworICAgIHZvaWQgcmVhcHBsaWVkRWRpdGlu
ZyhFZGl0Q29tbWFuZENvbXBvc2l0aW9uJik7CiAgICAgdm9pZCB1bmFwcGxpZWRTcGVsbENvcnJl
Y3Rpb24oY29uc3QgVmlzaWJsZVNlbGVjdGlvbiYgc2VsZWN0aW9uT2ZDb3JyZWN0ZWQsIGNvbnN0
IFN0cmluZyYgY29ycmVjdGVkLCBjb25zdCBTdHJpbmcmIGNvcnJlY3Rpb24pOwogCiAgICAgLy8g
VGhpcyBpcyBvZmYgYnkgZGVmYXVsdCwgc2luY2UgbW9zdCBlZGl0b3JzIHdhbnQgdGhpcyBiZWhh
dmlvciAob3JpZ2luYWxseSBtYXRjaGVkIElFIGJ1dCBub3QgRmlyZWZveCkuCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2lvcy9FZGl0b3JJT1MubW0gYi9Tb3VyY2UvV2ViQ29y
ZS9lZGl0aW5nL2lvcy9FZGl0b3JJT1MubW0KaW5kZXggM2FlNzE1NDQyODU5MjdjN2JlZTJiMGU2
OGNjZWFjZGM4ZTY4YjBkOC4uMDg5ZDI2NjBlNDM0ZmMyNjk5MDU3ODQwNWM1MTA3MTZkYWFjZDY3
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9pb3MvRWRpdG9ySU9TLm1tCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvaW9zL0VkaXRvcklPUy5tbQpAQCAtMjkwLDI3ICsy
OTAsMjUgQEAgYm9vbCBFZGl0b3I6OldlYkNvbnRlbnRSZWFkZXI6OnJlYWRXZWJBcmNoaXZlKFNo
YXJlZEJ1ZmZlciogYnVmZmVyKQogICAgIGlmICghYnVmZmVyKQogICAgICAgICByZXR1cm4gZmFs
c2U7CiAKLSAgICBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gYXJjaGl2ZSA9IExlZ2FjeVdlYkFy
Y2hpdmU6OmNyZWF0ZShVUkwoKSwgKmJ1ZmZlcik7CisgICAgYXV0byBhcmNoaXZlID0gTGVnYWN5
V2ViQXJjaGl2ZTo6Y3JlYXRlKFVSTCgpLCAqYnVmZmVyKTsKICAgICBpZiAoIWFyY2hpdmUpCiAg
ICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IG1haW5S
ZXNvdXJjZSA9IGFyY2hpdmUtPm1haW5SZXNvdXJjZSgpOworICAgIGF1dG8qIG1haW5SZXNvdXJj
ZSA9IGFyY2hpdmUtPm1haW5SZXNvdXJjZSgpOwogICAgIGlmICghbWFpblJlc291cmNlKQogICAg
ICAgICByZXR1cm4gZmFsc2U7CiAKLSAgICBjb25zdCBTdHJpbmcmIHR5cGUgPSBtYWluUmVzb3Vy
Y2UtPm1pbWVUeXBlKCk7Ci0KLSAgICBpZiAoZnJhbWUubG9hZGVyKCkuY2xpZW50KCkuY2FuU2hv
d01JTUVUeXBlQXNIVE1MKHR5cGUpKSB7Ci0gICAgICAgIC8vIEZJWE1FOiBUaGUgY29kZSBpbiBj
cmVhdGVGcmFnbWVudEFuZEFkZFJlc291cmNlcyBjYWxscyBzZXREZWZlcnNMb2FkaW5nKHRydWUp
LiBEb24ndCB3ZSBuZWVkIHRoYXQgaGVyZT8KLSAgICAgICAgaWYgKERvY3VtZW50TG9hZGVyKiBs
b2FkZXIgPSBmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKQotICAgICAgICAgICAgbG9h
ZGVyLT5hZGRBbGxBcmNoaXZlUmVzb3VyY2VzKGFyY2hpdmUuZ2V0KCkpOworICAgIGF1dG8mIHR5
cGUgPSBtYWluUmVzb3VyY2UtPm1pbWVUeXBlKCk7CisgICAgaWYgKCFmcmFtZS5sb2FkZXIoKS5j
bGllbnQoKS5jYW5TaG93TUlNRVR5cGVBc0hUTUwodHlwZSkpCisgICAgICAgIHJldHVybiBmYWxz
ZTsKIAotICAgICAgICBTdHJpbmcgbWFya3VwU3RyaW5nID0gU3RyaW5nOjpmcm9tVVRGOChtYWlu
UmVzb3VyY2UtPmRhdGEoKS5kYXRhKCksIG1haW5SZXNvdXJjZS0+ZGF0YSgpLnNpemUoKSk7Ci0g
ICAgICAgIGFkZEZyYWdtZW50KGNyZWF0ZUZyYWdtZW50RnJvbU1hcmt1cCgqZnJhbWUuZG9jdW1l
bnQoKSwgbWFya3VwU3RyaW5nLCBtYWluUmVzb3VyY2UtPnVybCgpLCBEaXNhbGxvd1NjcmlwdGlu
Z0FuZFBsdWdpbkNvbnRlbnQpKTsKLSAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgfQorICAgIC8v
IEZJWE1FOiBUaGUgY29kZSBpbiBjcmVhdGVGcmFnbWVudEFuZEFkZFJlc291cmNlcyBjYWxscyBz
ZXREZWZlcnNMb2FkaW5nKHRydWUpLiBEb24ndCB3ZSBuZWVkIHRoYXQgaGVyZT8KKyAgICBpZiAo
YXV0byogbG9hZGVyID0gZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSkKKyAgICAgICAg
bG9hZGVyLT5hZGRBbGxBcmNoaXZlUmVzb3VyY2VzKCphcmNoaXZlKTsKIAotICAgIHJldHVybiBm
YWxzZTsKKyAgICBhdXRvIG1hcmt1cFN0cmluZyA9IFN0cmluZzo6ZnJvbVVURjgobWFpblJlc291
cmNlLT5kYXRhKCkuZGF0YSgpLCBtYWluUmVzb3VyY2UtPmRhdGEoKS5zaXplKCkpOworICAgIGFk
ZEZyYWdtZW50KGNyZWF0ZUZyYWdtZW50RnJvbU1hcmt1cCgqZnJhbWUuZG9jdW1lbnQoKSwgbWFy
a3VwU3RyaW5nLCBtYWluUmVzb3VyY2UtPnVybCgpLCBEaXNhbGxvd1NjcmlwdGluZ0FuZFBsdWdp
bkNvbnRlbnQpKTsKKyAgICByZXR1cm4gdHJ1ZTsKIH0KIAogYm9vbCBFZGl0b3I6OldlYkNvbnRl
bnRSZWFkZXI6OnJlYWRGaWxlbmFtZXMoY29uc3QgVmVjdG9yPFN0cmluZz4mKQpAQCAtNDU0LDEx
ICs0NTIsOSBAQCBSZWZQdHI8RG9jdW1lbnRGcmFnbWVudD4gRWRpdG9yOjpjcmVhdGVGcmFnbWVu
dEFuZEFkZFJlc291cmNlcyhOU0F0dHJpYnV0ZWRTdHJpbgogCiAgICAgYXV0byBmcmFnbWVudEFu
ZFJlc291cmNlcyA9IGNyZWF0ZUZyYWdtZW50KHN0cmluZyk7CiAKLSAgICBpZiAoRG9jdW1lbnRM
b2FkZXIqIGxvYWRlciA9IG1fZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSkgewotICAg
ICAgICBmb3IgKGF1dG8mIHJlc291cmNlIDogZnJhZ21lbnRBbmRSZXNvdXJjZXMucmVzb3VyY2Vz
KSB7Ci0gICAgICAgICAgICBpZiAocmVzb3VyY2UpCi0gICAgICAgICAgICAgICAgbG9hZGVyLT5h
ZGRBcmNoaXZlUmVzb3VyY2UocmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSk7Ci0gICAgICAgIH0K
KyAgICBpZiAoYXV0byogbG9hZGVyID0gbV9mcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigp
KSB7CisgICAgICAgIGZvciAoYXV0byYgcmVzb3VyY2UgOiBmcmFnbWVudEFuZFJlc291cmNlcy5y
ZXNvdXJjZXMpCisgICAgICAgICAgICBsb2FkZXItPmFkZEFyY2hpdmVSZXNvdXJjZShXVEZNb3Zl
KHJlc291cmNlKSk7CiAgICAgfQogCiAgICAgaWYgKHdhc0ltYWdlc0VuYWJsZWQpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL21hYy9FZGl0b3JNYWMubW0gYi9Tb3VyY2UvV2Vi
Q29yZS9lZGl0aW5nL21hYy9FZGl0b3JNYWMubW0KaW5kZXggN2FiOWZmN2RjMDRkZmJjNjg2MGRh
YjExMTkwYTY5N2Y5NjQ3N2RjZi4uOGZlOTk0ZGYwYjI2MTEwNDJlZGJkODdlOTJhMWJmZmJkNTc1
MDcyOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9tYWMvRWRpdG9yTWFjLm1t
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvbWFjL0VkaXRvck1hYy5tbQpAQCAtNDA2LDcg
KzQwNiw3IEBAIGJvb2wgRWRpdG9yOjpXZWJDb250ZW50UmVhZGVyOjpyZWFkV2ViQXJjaGl2ZShT
aGFyZWRCdWZmZXIqIGJ1ZmZlcikKICAgICBpZiAoIWJ1ZmZlcikKICAgICAgICAgcmV0dXJuIGZh
bHNlOwogCi0gICAgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IGFyY2hpdmUgPSBMZWdhY3lXZWJB
cmNoaXZlOjpjcmVhdGUoVVJMKCksICpidWZmZXIpOworICAgIGF1dG8gYXJjaGl2ZSA9IExlZ2Fj
eVdlYkFyY2hpdmU6OmNyZWF0ZShVUkwoKSwgKmJ1ZmZlcik7CiAgICAgaWYgKCFhcmNoaXZlKQog
ICAgICAgICByZXR1cm4gZmFsc2U7CiAKQEAgLTQxOSw3ICs0MTksNyBAQCBib29sIEVkaXRvcjo6
V2ViQ29udGVudFJlYWRlcjo6cmVhZFdlYkFyY2hpdmUoU2hhcmVkQnVmZmVyKiBidWZmZXIpCiAg
ICAgaWYgKGZyYW1lLmxvYWRlcigpLmNsaWVudCgpLmNhblNob3dNSU1FVHlwZUFzSFRNTCh0eXBl
KSkgewogICAgICAgICAvLyBGSVhNRTogVGhlIGNvZGUgaW4gY3JlYXRlRnJhZ21lbnRBbmRBZGRS
ZXNvdXJjZXMgY2FsbHMgc2V0RGVmZXJzTG9hZGluZyh0cnVlKS4gRG9uJ3Qgd2UgbmVlZCB0aGF0
IGhlcmU/CiAgICAgICAgIGlmIChEb2N1bWVudExvYWRlciogbG9hZGVyID0gZnJhbWUubG9hZGVy
KCkuZG9jdW1lbnRMb2FkZXIoKSkKLSAgICAgICAgICAgIGxvYWRlci0+YWRkQWxsQXJjaGl2ZVJl
c291cmNlcyhhcmNoaXZlLmdldCgpKTsKKyAgICAgICAgICAgIGxvYWRlci0+YWRkQWxsQXJjaGl2
ZVJlc291cmNlcygqYXJjaGl2ZSk7CiAKICAgICAgICAgU3RyaW5nIG1hcmt1cFN0cmluZyA9IFN0
cmluZzo6ZnJvbVVURjgobWFpblJlc291cmNlLT5kYXRhKCkuZGF0YSgpLCBtYWluUmVzb3VyY2Ut
PmRhdGEoKS5zaXplKCkpOwogICAgICAgICBmcmFnbWVudCA9IGNyZWF0ZUZyYWdtZW50RnJvbU1h
cmt1cCgqZnJhbWUuZG9jdW1lbnQoKSwgbWFya3VwU3RyaW5nLCBtYWluUmVzb3VyY2UtPnVybCgp
LCBEaXNhbGxvd1NjcmlwdGluZ0FuZFBsdWdpbkNvbnRlbnQpOwpAQCAtNTgwLDExICs1ODAsOSBA
QCBSZWZQdHI8RG9jdW1lbnRGcmFnbWVudD4gRWRpdG9yOjpjcmVhdGVGcmFnbWVudEFuZEFkZFJl
c291cmNlcyhOU0F0dHJpYnV0ZWRTdHJpbgogCiAgICAgYXV0byBmcmFnbWVudEFuZFJlc291cmNl
cyA9IGNyZWF0ZUZyYWdtZW50KHN0cmluZyk7CiAKLSAgICBpZiAoRG9jdW1lbnRMb2FkZXIqIGxv
YWRlciA9IG1fZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSkgewotICAgICAgICBmb3Ig
KGF1dG8mIHJlc291cmNlIDogZnJhZ21lbnRBbmRSZXNvdXJjZXMucmVzb3VyY2VzKSB7Ci0gICAg
ICAgICAgICBpZiAocmVzb3VyY2UpCi0gICAgICAgICAgICAgICAgbG9hZGVyLT5hZGRBcmNoaXZl
UmVzb3VyY2UocmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSk7Ci0gICAgICAgIH0KKyAgICBpZiAo
YXV0byogbG9hZGVyID0gbV9mcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKSB7CisgICAg
ICAgIGZvciAoYXV0byYgcmVzb3VyY2UgOiBmcmFnbWVudEFuZFJlc291cmNlcy5yZXNvdXJjZXMp
CisgICAgICAgICAgICBsb2FkZXItPmFkZEFyY2hpdmVSZXNvdXJjZShXVEZNb3ZlKHJlc291cmNl
KSk7CiAgICAgfQogCiAgICAgaWYgKCF3YXNEZWZlcnJpbmdDYWxsYmFja3MpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9oaXN0b3J5L1BhZ2VDYWNoZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9o
aXN0b3J5L1BhZ2VDYWNoZS5jcHAKaW5kZXggNmQwMDQzN2UxOWE1YjA4NzJjOTQxZmJiYTM0MDI3
ODk4NDdlNDRkMC4uYThhNDlmOTQwMTNlZDJkMDJiZDIzYmU2YWIzMmQ5YzdjMmVlY2MzOCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaGlzdG9yeS9QYWdlQ2FjaGUuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2hpc3RvcnkvUGFnZUNhY2hlLmNwcApAQCAtMTY0LDcgKzE2NCw3IEBAIHN0YXRp
YyBib29sIGNhbkNhY2hlRnJhbWUoRnJhbWUmIGZyYW1lLCBEaWFnbm9zdGljTG9nZ2luZ0NsaWVu
dCYgZGlhZ25vc3RpY0xvZ2dpCiAgICAgfQogICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgaW52ZXN0
aWdhdGluZyBjYWNoaW5nIGZyYW1lcyB0aGF0IGhhdmUgYW4gYXNzb2NpYXRlZAogICAgIC8vIGFw
cGxpY2F0aW9uIGNhY2hlLiA8cmRhcjovL3Byb2JsZW0vNTkxNzg5OT4gdHJhY2tzIHRoYXQgd29y
ay4KLSAgICBpZiAoIWRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5jYW5D
YWNoZUluUGFnZUNhY2hlKCkpIHsKKyAgICBpZiAoIWRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlv
bkNhY2hlSG9zdCgpLmNhbkNhY2hlSW5QYWdlQ2FjaGUoKSkgewogICAgICAgICBQQ0xPRygiICAg
LVRoZSBEb2N1bWVudExvYWRlciB1c2VzIGFuIGFwcGxpY2F0aW9uIGNhY2hlIik7CiAgICAgICAg
IGxvZ1BhZ2VDYWNoZUZhaWx1cmVEaWFnbm9zdGljTWVzc2FnZShkaWFnbm9zdGljTG9nZ2luZ0Ns
aWVudCwgRGlhZ25vc3RpY0xvZ2dpbmdLZXlzOjphcHBsaWNhdGlvbkNhY2hlS2V5KCkpOwogICAg
ICAgICBpc0NhY2hlYWJsZSA9IGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRt
bC9GaWxlSW5wdXRUeXBlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlwZS5j
cHAKaW5kZXggNTdkMGRjMWM3NjNkNjdiNmIwMjI4Yzg2MDUxM2Q3ZjFlOWM1MzYzYi4uMjhiNmMw
NjYxZjRkMzEyOWIxNjc5M2VhZTQxNGI3YmEyZjdjZWI2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Zp
bGVJbnB1dFR5cGUuY3BwCkBAIC0xOTEsNyArMTkxLDcgQEAgdm9pZCBGaWxlSW5wdXRUeXBlOjpo
YW5kbGVET01BY3RpdmF0ZUV2ZW50KEV2ZW50JiBldmVudCkKICAgICBpZiAoIVNjcmlwdENvbnRy
b2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBp
ZiAoQ2hyb21lKiBjaHJvbWUgPSB0aGlzLT5jaHJvbWUoKSkgeworICAgIGlmIChhdXRvKiBjaHJv
bWUgPSB0aGlzLT5jaHJvbWUoKSkgewogICAgICAgICBGaWxlQ2hvb3NlclNldHRpbmdzIHNldHRp
bmdzOwogICAgICAgICBIVE1MSW5wdXRFbGVtZW50JiBpbnB1dCA9IGVsZW1lbnQoKTsKICAgICAg
ICAgc2V0dGluZ3MuYWxsb3dzTXVsdGlwbGVGaWxlcyA9IGlucHV0Lmhhc0F0dHJpYnV0ZVdpdGhv
dXRTeW5jaHJvbml6YXRpb24obXVsdGlwbGVBdHRyKTsKQEAgLTIwMSw5ICsyMDEsOCBAQCB2b2lk
IEZpbGVJbnB1dFR5cGU6OmhhbmRsZURPTUFjdGl2YXRlRXZlbnQoRXZlbnQmIGV2ZW50KQogI2lm
IEVOQUJMRShNRURJQV9DQVBUVVJFKQogICAgICAgICBzZXR0aW5ncy5tZWRpYUNhcHR1cmVUeXBl
ID0gaW5wdXQubWVkaWFDYXB0dXJlVHlwZSgpOwogI2VuZGlmCi0KICAgICAgICAgYXBwbHlGaWxl
Q2hvb3NlclNldHRpbmdzKHNldHRpbmdzKTsKLSAgICAgICAgY2hyb21lLT5ydW5PcGVuUGFuZWwo
aW5wdXQuZG9jdW1lbnQoKS5mcmFtZSgpLCBtX2ZpbGVDaG9vc2VyKTsKKyAgICAgICAgY2hyb21l
LT5ydW5PcGVuUGFuZWwoKmlucHV0LmRvY3VtZW50KCkuZnJhbWUoKSwgKm1fZmlsZUNob29zZXIp
OwogICAgIH0KIAogICAgIGV2ZW50LnNldERlZmF1bHRIYW5kbGVkKCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50LmNwcAppbmRleCAyZTg3MmFhYmFlNjRi
MDQ0OGQyMjE0ZTk2MmJiMTZmNmNiZjk5MDEyLi5lYThhM2IzM2UwMDI3ODMyZDY3MGY5ZTA5ODdh
Y2NhOGQzNjhiYWEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29u
dHJvbEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9s
RWxlbWVudC5jcHAKQEAgLTg5LDcgKzg5LDcgQEAgdm9pZCBIVE1MRm9ybUNvbnRyb2xFbGVtZW50
OjpzZXRGb3JtRW5jdHlwZShjb25zdCBTdHJpbmcmIHZhbHVlKQogCiBTdHJpbmcgSFRNTEZvcm1D
b250cm9sRWxlbWVudDo6Zm9ybU1ldGhvZCgpIGNvbnN0CiB7Ci0gICAgY29uc3QgQXRvbWljU3Ry
aW5nJiBmb3JtTWV0aG9kQXR0ciA9IGF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24oZm9y
bW1ldGhvZEF0dHIpOworICAgIGF1dG8mIGZvcm1NZXRob2RBdHRyID0gYXR0cmlidXRlV2l0aG91
dFN5bmNocm9uaXphdGlvbihmb3JtbWV0aG9kQXR0cik7CiAgICAgaWYgKGZvcm1NZXRob2RBdHRy
LmlzTnVsbCgpKQogICAgICAgICByZXR1cm4gZW1wdHlTdHJpbmcoKTsKICAgICByZXR1cm4gRm9y
bVN1Ym1pc3Npb246OkF0dHJpYnV0ZXM6Om1ldGhvZFN0cmluZyhGb3JtU3VibWlzc2lvbjo6QXR0
cmlidXRlczo6cGFyc2VNZXRob2RUeXBlKGZvcm1NZXRob2RBdHRyKSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxGb3JtRWxlbWVudC5jcHAKaW5kZXggNzQ3NWY2NGQyNmRlYjI1NjA5NWVkYWQ1YjFj
MDZlZjBlYTVkMDJkOC4uNjQwZTMzZWYzYzg5NDJhYjhkZDkxMTgzMGZlNjgwZmNlY2JlZTBiZSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmNwcApAQCAtMjg5LDEyICsyODks
MTEgQEAgdm9pZCBIVE1MRm9ybUVsZW1lbnQ6OnByZXBhcmVGb3JTdWJtaXNzaW9uKEV2ZW50JiBl
dmVudCkKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIFN0cmluZ1BhaXJWZWN0b3IgY29u
dHJvbE5hbWVzQW5kVmFsdWVzOwotICAgIGdldFRleHRGaWVsZFZhbHVlcyhjb250cm9sTmFtZXNB
bmRWYWx1ZXMpOwotICAgIGF1dG8gZm9ybVN0YXRlID0gRm9ybVN0YXRlOjpjcmVhdGUodGhpcywg
Y29udHJvbE5hbWVzQW5kVmFsdWVzLCAmZG9jdW1lbnQoKSwgTm90U3VibWl0dGVkQnlKYXZhU2Ny
aXB0KTsKKyAgICBhdXRvIGZvcm1TdGF0ZSA9IEZvcm1TdGF0ZTo6Y3JlYXRlKCp0aGlzLCB0ZXh0
RmllbGRWYWx1ZXMoKSwgZG9jdW1lbnQoKSwgTm90U3VibWl0dGVkQnlKYXZhU2NyaXB0KTsKICAg
ICBmcmFtZS0+bG9hZGVyKCkuY2xpZW50KCkuZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFdU
Rk1vdmUoZm9ybVN0YXRlKSk7CiAKICAgICBSZWY8SFRNTEZvcm1FbGVtZW50PiBwcm90ZWN0ZWRU
aGlzKCp0aGlzKTsKKwogICAgIC8vIEV2ZW50IGhhbmRsaW5nIGNhbiByZXN1bHQgaW4gbV9zaG91
bGRTdWJtaXQgYmVjb21pbmcgdHJ1ZSwgcmVnYXJkbGVzcyBvZiBkaXNwYXRjaEV2ZW50KCkgcmV0
dXJuIHZhbHVlLgogICAgIGlmIChkaXNwYXRjaEV2ZW50KEV2ZW50OjpjcmVhdGUoZXZlbnROYW1l
cygpLnN1Ym1pdEV2ZW50LCB0cnVlLCB0cnVlKSkpCiAgICAgICAgIG1fc2hvdWxkU3VibWl0ID0g
dHJ1ZTsKQEAgLTMxNSwyMCArMzE0LDIwIEBAIHZvaWQgSFRNTEZvcm1FbGVtZW50OjpzdWJtaXRG
cm9tSmF2YVNjcmlwdCgpCiAgICAgc3VibWl0KDAsIGZhbHNlLCBTY3JpcHRDb250cm9sbGVyOjpw
cm9jZXNzaW5nVXNlckdlc3R1cmUoKSwgU3VibWl0dGVkQnlKYXZhU2NyaXB0KTsKIH0KIAotdm9p
ZCBIVE1MRm9ybUVsZW1lbnQ6OmdldFRleHRGaWVsZFZhbHVlcyhTdHJpbmdQYWlyVmVjdG9yJiBm
aWVsZE5hbWVzQW5kVmFsdWVzKSBjb25zdAorU3RyaW5nUGFpclZlY3RvciBIVE1MRm9ybUVsZW1l
bnQ6OnRleHRGaWVsZFZhbHVlcygpIGNvbnN0CiB7Ci0gICAgQVNTRVJUX0FSRyhmaWVsZE5hbWVz
QW5kVmFsdWVzLCBmaWVsZE5hbWVzQW5kVmFsdWVzLmlzRW1wdHkoKSk7Ci0KLSAgICBmaWVsZE5h
bWVzQW5kVmFsdWVzLnJlc2VydmVDYXBhY2l0eShtX2Fzc29jaWF0ZWRFbGVtZW50cy5zaXplKCkp
OworICAgIFN0cmluZ1BhaXJWZWN0b3IgcmVzdWx0OworICAgIHJlc3VsdC5yZXNlcnZlSW5pdGlh
bENhcGFjaXR5KG1fYXNzb2NpYXRlZEVsZW1lbnRzLnNpemUoKSk7CiAgICAgZm9yIChhdXRvJiBh
c3NvY2lhdGVkRWxlbWVudCA6IG1fYXNzb2NpYXRlZEVsZW1lbnRzKSB7Ci0gICAgICAgIEhUTUxF
bGVtZW50JiBlbGVtZW50ID0gYXNzb2NpYXRlZEVsZW1lbnQtPmFzSFRNTEVsZW1lbnQoKTsKKyAg
ICAgICAgYXV0byYgZWxlbWVudCA9IGFzc29jaWF0ZWRFbGVtZW50LT5hc0hUTUxFbGVtZW50KCk7
CiAgICAgICAgIGlmICghaXM8SFRNTElucHV0RWxlbWVudD4oZWxlbWVudCkpCiAgICAgICAgICAg
ICBjb250aW51ZTsKLSAgICAgICAgSFRNTElucHV0RWxlbWVudCYgaW5wdXQgPSBkb3duY2FzdDxI
VE1MSW5wdXRFbGVtZW50PihlbGVtZW50KTsKKyAgICAgICAgYXV0byYgaW5wdXQgPSBkb3duY2Fz
dDxIVE1MSW5wdXRFbGVtZW50PihlbGVtZW50KTsKICAgICAgICAgaWYgKCFpbnB1dC5pc1RleHRG
aWVsZCgpKQogICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIGZpZWxkTmFtZXNBbmRWYWx1
ZXMuYXBwZW5kKHN0ZDo6bWFrZV9wYWlyKGlucHV0Lm5hbWUoKS5zdHJpbmcoKSwgaW5wdXQudmFs
dWUoKSkpOworICAgICAgICByZXN1bHQudW5jaGVja2VkQXBwZW5kKHsgaW5wdXQubmFtZSgpLnN0
cmluZygpLCBpbnB1dC52YWx1ZSgpIH0pOwogICAgIH0KKyAgICByZXR1cm4gcmVzdWx0OwogfQog
CiB2b2lkIEhUTUxGb3JtRWxlbWVudDo6c3VibWl0KEV2ZW50KiBldmVudCwgYm9vbCBhY3RpdmF0
ZVN1Ym1pdEJ1dHRvbiwgYm9vbCBwcm9jZXNzaW5nVXNlckdlc3R1cmUsIEZvcm1TdWJtaXNzaW9u
VHJpZ2dlciBmb3JtU3VibWlzc2lvblRyaWdnZXIpCkBAIC0zNjQsOSArMzYzLDEwIEBAIHZvaWQg
SFRNTEZvcm1FbGVtZW50OjpzdWJtaXQoRXZlbnQqIGV2ZW50LCBib29sIGFjdGl2YXRlU3VibWl0
QnV0dG9uLCBib29sIHByb2NlCiAgICAgaWYgKG5lZWRCdXR0b25BY3RpdmF0aW9uICYmIGZpcnN0
U3VjY2Vzc2Z1bFN1Ym1pdEJ1dHRvbikKICAgICAgICAgZmlyc3RTdWNjZXNzZnVsU3VibWl0QnV0
dG9uLT5zZXRBY3RpdmF0ZWRTdWJtaXQodHJ1ZSk7CiAKLSAgICBMb2NrSGlzdG9yeSBsb2NrSGlz
dG9yeSA9IHByb2Nlc3NpbmdVc2VyR2VzdHVyZSA/IExvY2tIaXN0b3J5OjpObyA6IExvY2tIaXN0
b3J5OjpZZXM7Ci0gICAgUmVmPEhUTUxGb3JtRWxlbWVudD4gcHJvdGVjdGVkVGhpcygqdGhpcyk7
IC8vIEZvcm0gc3VibWlzc2lvbiBjYW4gZXhlY3V0ZSBhcmJpdGFyeSBKYXZhU2NyaXB0LgotICAg
IGZyYW1lLT5sb2FkZXIoKS5zdWJtaXRGb3JtKEZvcm1TdWJtaXNzaW9uOjpjcmVhdGUodGhpcywg
bV9hdHRyaWJ1dGVzLCBldmVudCwgbG9ja0hpc3RvcnksIGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikp
OworICAgIGF1dG8gcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpOyAvLyBGb3JtIHN1Ym1p
c3Npb24gY2FuIGV4ZWN1dGUgYXJiaXRhcnkgSmF2YVNjcmlwdC4KKworICAgIGF1dG8gc2hvdWxk
TG9ja0hpc3RvcnkgPSBwcm9jZXNzaW5nVXNlckdlc3R1cmUgPyBMb2NrSGlzdG9yeTo6Tm8gOiBM
b2NrSGlzdG9yeTo6WWVzOworICAgIGZyYW1lLT5sb2FkZXIoKS5zdWJtaXRGb3JtKEZvcm1TdWJt
aXNzaW9uOjpjcmVhdGUoKnRoaXMsIG1fYXR0cmlidXRlcywgZXZlbnQsIHNob3VsZExvY2tIaXN0
b3J5LCBmb3JtU3VibWlzc2lvblRyaWdnZXIpKTsKIAogICAgIGlmIChuZWVkQnV0dG9uQWN0aXZh
dGlvbiAmJiBmaXJzdFN1Y2Nlc3NmdWxTdWJtaXRCdXR0b24pCiAgICAgICAgIGZpcnN0U3VjY2Vz
c2Z1bFN1Ym1pdEJ1dHRvbi0+c2V0QWN0aXZhdGVkU3VibWl0KGZhbHNlKTsKQEAgLTQzOSw4ICs0
MzksOCBAQCB2b2lkIEhUTUxGb3JtRWxlbWVudDo6cmVxdWVzdEF1dG9jb21wbGV0ZSgpCiAgICAg
U3RyaW5nUGFpclZlY3RvciBjb250cm9sTmFtZXNBbmRWYWx1ZXM7CiAgICAgZ2V0VGV4dEZpZWxk
VmFsdWVzKGNvbnRyb2xOYW1lc0FuZFZhbHVlcyk7CiAKLSAgICBSZWZQdHI8Rm9ybVN0YXRlPiBm
b3JtU3RhdGUgPSBGb3JtU3RhdGU6OmNyZWF0ZSh0aGlzLCBjb250cm9sTmFtZXNBbmRWYWx1ZXMs
ICZkb2N1bWVudCgpLCBTdWJtaXR0ZWRCeUphdmFTY3JpcHQpOwotICAgIGZyYW1lLT5sb2FkZXIo
KS5jbGllbnQoKS5kaWRSZXF1ZXN0QXV0b2NvbXBsZXRlKGZvcm1TdGF0ZS5yZWxlYXNlKCkpOwor
ICAgIGF1dG8gZm9ybVN0YXRlID0gRm9ybVN0YXRlOjpjcmVhdGUodGhpcywgY29udHJvbE5hbWVz
QW5kVmFsdWVzLCAmZG9jdW1lbnQoKSwgU3VibWl0dGVkQnlKYXZhU2NyaXB0KTsKKyAgICBmcmFt
ZS0+bG9hZGVyKCkuY2xpZW50KCkuZGlkUmVxdWVzdEF1dG9jb21wbGV0ZShXVEZNb3ZlKGZvcm1T
dGF0ZSkpOwogfQogCiB2b2lkIEhUTUxGb3JtRWxlbWVudDo6ZmluaXNoUmVxdWVzdEF1dG9jb21w
bGV0ZShBdXRvY29tcGxldGVSZXN1bHQgcmVzdWx0KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1F
bGVtZW50LmgKaW5kZXggYmI1MTc5ODk3NmUzZjY2NDNkOGJhNGE3NWE3YjEwM2U3MjA2MjM5Ny4u
NWRlMTk1ZWI5NjE1Y2VhNjJlNWEyMWNiZjA0OWI5NzlhYjI3MWIyNSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxGb3JtRWxlbWVudC5oCkBAIC0xMjgsNyArMTI4LDcgQEAgcHVibGljOgogICAgIGNv
bnN0IFZlY3RvcjxGb3JtQXNzb2NpYXRlZEVsZW1lbnQqPiYgYXNzb2NpYXRlZEVsZW1lbnRzKCkg
Y29uc3QgeyByZXR1cm4gbV9hc3NvY2lhdGVkRWxlbWVudHM7IH0KICAgICBjb25zdCBWZWN0b3I8
SFRNTEltYWdlRWxlbWVudCo+JiBpbWFnZUVsZW1lbnRzKCkgY29uc3QgeyByZXR1cm4gbV9pbWFn
ZUVsZW1lbnRzOyB9CiAKLSAgICB2b2lkIGdldFRleHRGaWVsZFZhbHVlcyhTdHJpbmdQYWlyVmVj
dG9yJiBmaWVsZE5hbWVzQW5kVmFsdWVzKSBjb25zdDsKKyAgICBTdHJpbmdQYWlyVmVjdG9yIHRl
eHRGaWVsZFZhbHVlcygpIGNvbnN0OwogCiAgICAgc3RhdGljIEhUTUxGb3JtRWxlbWVudCogZmlu
ZENsb3Nlc3RGb3JtQW5jZXN0b3IoY29uc3QgRWxlbWVudCYpOwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxIdG1sRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxIdG1sRWxlbWVudC5jcHAKaW5kZXggNTg0NmY1NjQxOThhOWQ5ZmZlMDIzMmViZTE1YzFm
ZDUwYWYzMTljOC4uNDlmODM3MjU0M2MxOWJkZDhhMWJjZGZkMzNjNTUzNTZmNjg2ZjU1OSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSHRtbEVsZW1lbnQuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTEh0bWxFbGVtZW50LmNwcApAQCAtNjYsMTUgKzY2LDE1IEBA
IHZvaWQgSFRNTEh0bWxFbGVtZW50OjppbnNlcnRlZEJ5UGFyc2VyKCkKICAgICBpZiAoIWRvY3Vt
ZW50KCkuZnJhbWUoKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgRG9jdW1lbnRMb2FkZXIqIGRv
Y3VtZW50TG9hZGVyID0gZG9jdW1lbnQoKS5mcmFtZSgpLT5sb2FkZXIoKS5kb2N1bWVudExvYWRl
cigpOworICAgIGF1dG8qIGRvY3VtZW50TG9hZGVyID0gZG9jdW1lbnQoKS5mcmFtZSgpLT5sb2Fk
ZXIoKS5kb2N1bWVudExvYWRlcigpOwogICAgIGlmICghZG9jdW1lbnRMb2FkZXIpCiAgICAgICAg
IHJldHVybjsKIAotICAgIGNvbnN0IEF0b21pY1N0cmluZyYgbWFuaWZlc3QgPSBhdHRyaWJ1dGVX
aXRob3V0U3luY2hyb25pemF0aW9uKG1hbmlmZXN0QXR0cik7CisgICAgYXV0byYgbWFuaWZlc3Qg
PSBhdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKG1hbmlmZXN0QXR0cik7CiAgICAgaWYg
KG1hbmlmZXN0LmlzRW1wdHkoKSkKLSAgICAgICAgZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9u
Q2FjaGVIb3N0KCktPnNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0KCk7CisgICAgICAgIGRvY3Vt
ZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLnNlbGVjdENhY2hlV2l0aG91dE1hbmlm
ZXN0KCk7CiAgICAgZWxzZQotICAgICAgICBkb2N1bWVudExvYWRlci0+YXBwbGljYXRpb25DYWNo
ZUhvc3QoKS0+c2VsZWN0Q2FjaGVXaXRoTWFuaWZlc3QoZG9jdW1lbnQoKS5jb21wbGV0ZVVSTCht
YW5pZmVzdCkpOworICAgICAgICBkb2N1bWVudExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3Qo
KS5zZWxlY3RDYWNoZVdpdGhNYW5pZmVzdChkb2N1bWVudCgpLmNvbXBsZXRlVVJMKG1hbmlmZXN0
KSk7CiB9CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExpbmtFbGVt
ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExpbmtFbGVtZW50LmNwcAppbmRleCBk
Nzc3YTM5MzcxY2NmZDhjMzNhM2ZlODA5NjA3ZTI4OWIyZTQ5OTUxLi40OTZhZWQ2ZWJlNzU5ODRi
NmIyMzExNWVlN2UzMDMwZDk4NjhkYmUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxMaW5rRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGlua0Vs
ZW1lbnQuY3BwCkBAIC0yNjcsNyArMjY3LDcgQEAgdm9pZCBIVE1MTGlua0VsZW1lbnQ6OnByb2Nl
c3MoKQogICAgICAgICBpZiAoIWlzQWN0aXZlKQogICAgICAgICAgICAgcHJpb3JpdHkgPSBSZXNv
dXJjZUxvYWRQcmlvcml0eTo6VmVyeUxvdzsKICAgICAgICAgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0
IHJlcXVlc3QodXJsLCBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6ZGVmYXVsdENhY2hlZFJlc291cmNl
T3B0aW9ucygpLCBwcmlvcml0eSwgV1RGTW92ZShjaGFyc2V0KSk7Ci0gICAgICAgIHJlcXVlc3Qu
c2V0SW5pdGlhdG9yKHRoaXMpOworICAgICAgICByZXF1ZXN0LnNldEluaXRpYXRvcigqdGhpcyk7
CiAKICAgICAgICAgaWYgKGRvY3VtZW50KCkuY29udGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93
U3R5bGVXaXRoTm9uY2UoYXR0cmlidXRlV2l0aG91dFN5bmNocm9uaXphdGlvbihIVE1MTmFtZXM6
Om5vbmNlQXR0cikpKSB7CiAgICAgICAgICAgICBSZXNvdXJjZUxvYWRlck9wdGlvbnMgb3B0aW9u
cyA9IENhY2hlZFJlc291cmNlTG9hZGVyOjpkZWZhdWx0Q2FjaGVkUmVzb3VyY2VPcHRpb25zKCk7
CkBAIC0zNjcsNyArMzY3LDcgQEAgdm9pZCBIVE1MTGlua0VsZW1lbnQ6OnNldENTU1N0eWxlU2hl
ZXQoY29uc3QgU3RyaW5nJiBocmVmLCBjb25zdCBVUkwmIGJhc2VVUkwsIGMKICAgICBDU1NQYXJz
ZXJDb250ZXh0IHBhcnNlckNvbnRleHQoZG9jdW1lbnQoKSwgYmFzZVVSTCwgY2hhcnNldCk7CiAg
ICAgYXV0byBjYWNoZVBvbGljeSA9IGZyYW1lLT5sb2FkZXIoKS5zdWJyZXNvdXJjZUNhY2hlUG9s
aWN5KCk7CiAKLSAgICBpZiAoUmVmUHRyPFN0eWxlU2hlZXRDb250ZW50cz4gcmVzdG9yZWRTaGVl
dCA9IGNvbnN0X2Nhc3Q8Q2FjaGVkQ1NTU3R5bGVTaGVldCo+KGNhY2hlZFN0eWxlU2hlZXQpLT5y
ZXN0b3JlUGFyc2VkU3R5bGVTaGVldChwYXJzZXJDb250ZXh0LCBjYWNoZVBvbGljeSkpIHsKKyAg
ICBpZiAoYXV0byByZXN0b3JlZFNoZWV0ID0gY29uc3RfY2FzdDxDYWNoZWRDU1NTdHlsZVNoZWV0
Kj4oY2FjaGVkU3R5bGVTaGVldCktPnJlc3RvcmVQYXJzZWRTdHlsZVNoZWV0KHBhcnNlckNvbnRl
eHQsIGNhY2hlUG9saWN5KSkgewogICAgICAgICBBU1NFUlQocmVzdG9yZWRTaGVldC0+aXNDYWNo
ZWFibGUoKSk7CiAgICAgICAgIEFTU0VSVCghcmVzdG9yZWRTaGVldC0+aXNMb2FkaW5nKCkpOwog
ICAgICAgICBpbml0aWFsaXplU3R5bGVTaGVldChyZXN0b3JlZFNoZWV0LnJlbGVhc2VOb25OdWxs
KCksICpjYWNoZWRTdHlsZVNoZWV0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTE1lZGlhRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1l
bnQuY3BwCmluZGV4IDNhOWM0ZjUxOThmMWYyNjA0MzgxNzg5YTg0OWYzYTlmNWQyYmYwMTkuLmY0
ZGQ1NGU1ODdhNWU2OTg4YThmODQ5NTcyMjMxODk2ODcxYWY3M2EgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcApAQCAtMTQyOCwxMSArMTQyOCw4IEBAIHZvaWQgSFRN
TE1lZGlhRWxlbWVudDo6bG9hZFJlc291cmNlKGNvbnN0IFVSTCYgaW5pdGlhbFVSTCwgQ29udGVu
dFR5cGUmIGNvbnRlbnRUCiAgICAgfQogCiAjaWYgRU5BQkxFKENPTlRFTlRfRVhURU5TSU9OUykK
LSAgICBEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIgPSBmcmFtZS0+bG9hZGVyKCkuZG9j
dW1lbnRMb2FkZXIoKTsKLQotICAgIGlmIChkb2N1bWVudExvYWRlcikgewotICAgICAgICBhdXRv
IGJsb2NrZWRTdGF0dXMgPSBwYWdlLT51c2VyQ29udGVudFByb3ZpZGVyKCkucHJvY2Vzc0NvbnRl
bnRFeHRlbnNpb25SdWxlc0ZvckxvYWQodXJsLCBSZXNvdXJjZVR5cGU6Ok1lZGlhLCAqZG9jdW1l
bnRMb2FkZXIpOwotICAgICAgICBpZiAoYmxvY2tlZFN0YXR1cy5ibG9ja2VkTG9hZCkgeworICAg
IGlmIChhdXRvKiBkb2N1bWVudExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRl
cigpKSB7CisgICAgICAgIGlmIChwYWdlLT51c2VyQ29udGVudFByb3ZpZGVyKCkucHJvY2Vzc0Nv
bnRlbnRFeHRlbnNpb25SdWxlc0ZvckxvYWQodXJsLCBSZXNvdXJjZVR5cGU6Ok1lZGlhLCAqZG9j
dW1lbnRMb2FkZXIpLmJsb2NrZWRMb2FkKSB7CiAgICAgICAgICAgICBtZWRpYUxvYWRpbmdGYWls
ZWQoTWVkaWFQbGF5ZXI6OkZvcm1hdEVycm9yKTsKICAgICAgICAgICAgIHJldHVybjsKICAgICAg
ICAgfQpAQCAtMTQ0MiwxMSArMTQzOSw5IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6bG9hZFJl
c291cmNlKGNvbnN0IFVSTCYgaW5pdGlhbFVSTCwgQ29udGVudFR5cGUmIGNvbnRlbnRUCiAgICAg
Ly8gVGhlIHJlc291cmNlIGZldGNoIGFsZ29yaXRobSAKICAgICBtX25ldHdvcmtTdGF0ZSA9IE5F
VFdPUktfTE9BRElORzsKIAotICAgIC8vIElmIHRoZSB1cmwgc2hvdWxkIGJlIGxvYWRlZCBmcm9t
IHRoZSBhcHBsaWNhdGlvbiBjYWNoZSwgcGFzcyB0aGUgdXJsIG9mIHRoZSBjYWNoZWQgZmlsZQot
ICAgIC8vIHRvIHRoZSBtZWRpYSBlbmdpbmUuCi0gICAgQXBwbGljYXRpb25DYWNoZUhvc3QqIGNh
Y2hlSG9zdCA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNh
Y2hlSG9zdCgpOworICAgIC8vIElmIHRoZSBVUkwgc2hvdWxkIGJlIGxvYWRlZCBmcm9tIHRoZSBh
cHBsaWNhdGlvbiBjYWNoZSwgcGFzcyB0aGUgVVJMIG9mIHRoZSBjYWNoZWQgZmlsZSB0byB0aGUg
bWVkaWEgZW5naW5lLgogICAgIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSogcmVzb3VyY2UgPSBu
dWxscHRyOwotICAgIGlmIChjYWNoZUhvc3QgJiYgY2FjaGVIb3N0LT5zaG91bGRMb2FkUmVzb3Vy
Y2VGcm9tQXBwbGljYXRpb25DYWNoZShSZXNvdXJjZVJlcXVlc3QodXJsKSwgcmVzb3VyY2UpKSB7
CisgICAgaWYgKGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNh
Y2hlSG9zdCgpLnNob3VsZExvYWRSZXNvdXJjZUZyb21BcHBsaWNhdGlvbkNhY2hlKFJlc291cmNl
UmVxdWVzdCh1cmwpLCByZXNvdXJjZSkpIHsKICAgICAgICAgLy8gUmVzb3VyY2VzIHRoYXQgYXJl
IG5vdCBwcmVzZW50IGluIHRoZSBtYW5pZmVzdCB3aWxsIGFsd2F5cyBmYWlsIHRvIGxvYWQgKGF0
IGxlYXN0LCBhZnRlciB0aGUKICAgICAgICAgLy8gY2FjaGUgaGFzIGJlZW4gcHJpbWVkIHRoZSBm
aXJzdCB0aW1lKSwgbWFraW5nIHRoZSB0ZXN0aW5nIG9mIG9mZmxpbmUgYXBwbGljYXRpb25zIHNp
bXBsZXIuCiAgICAgICAgIGlmICghcmVzb3VyY2UgfHwgcmVzb3VyY2UtPnBhdGgoKS5pc0VtcHR5
KCkpIHsKQEAgLTE0NjAsNyArMTQ1NSw3IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6bG9hZFJl
c291cmNlKGNvbnN0IFVSTCYgaW5pdGlhbFVSTCwgQ29udGVudFR5cGUmIGNvbnRlbnRUCiAKICAg
ICBtX2ZpcnN0VGltZVBsYXlpbmcgPSB0cnVlOwogCi0gICAgLy8gU2V0IG1fY3VycmVudFNyYyAq
YmVmb3JlKiBjaGFuZ2luZyB0byB0aGUgY2FjaGUgdXJsLCB0aGUgZmFjdCB0aGF0IHdlIGFyZSBs
b2FkaW5nIGZyb20gdGhlIGFwcAorICAgIC8vIFNldCBtX2N1cnJlbnRTcmMgKmJlZm9yZSogY2hh
bmdpbmcgdG8gdGhlIGNhY2hlIFVSTCwgdGhlIGZhY3QgdGhhdCB3ZSBhcmUgbG9hZGluZyBmcm9t
IHRoZSBhcHAKICAgICAvLyBjYWNoZSBpcyBhbiBpbnRlcm5hbCBkZXRhaWwgbm90IGV4cG9zZWQg
dGhyb3VnaCB0aGUgbWVkaWEgZWxlbWVudCBBUEkuCiAgICAgbV9jdXJyZW50U3JjID0gdXJsOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQXBwbGljYXRp
b25DYWNoZUFnZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBs
aWNhdGlvbkNhY2hlQWdlbnQuY3BwCmluZGV4IGZmNGZmMzFjYzE5ZjQ5MzRkMDRiMjI5N2Y3NmVi
OTQ1ODg0ODVkMjIuLjZlMzliY2RhZDBkODRmMDQyN2E5MmMyNzEwZmZjZjJmMWUwYjAwYzQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNh
Y2hlQWdlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBs
aWNhdGlvbkNhY2hlQWdlbnQuY3BwCkBAIC02OCwxNiArNjgsMTcgQEAgdm9pZCBJbnNwZWN0b3JB
cHBsaWNhdGlvbkNhY2hlQWdlbnQ6OmVuYWJsZShFcnJvclN0cmluZyYpCiAKIHZvaWQgSW5zcGVj
dG9yQXBwbGljYXRpb25DYWNoZUFnZW50Ojp1cGRhdGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzKEZy
YW1lKiBmcmFtZSkKIHsKLSAgICBEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIgPSBmcmFt
ZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKKyAgICBpZiAoIWZyYW1lKQorICAgICAgICBy
ZXR1cm47CisgICAgYXV0byogZG9jdW1lbnRMb2FkZXIgPSBmcmFtZS0+bG9hZGVyKCkuZG9jdW1l
bnRMb2FkZXIoKTsKICAgICBpZiAoIWRvY3VtZW50TG9hZGVyKQogICAgICAgICByZXR1cm47CiAK
LSAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdCogaG9zdCA9IGRvY3VtZW50TG9hZGVyLT5hcHBsaWNh
dGlvbkNhY2hlSG9zdCgpOwotICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpTdGF0dXMgc3RhdHVz
ID0gaG9zdC0+c3RhdHVzKCk7Ci0gICAgQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNhY2hlSW5mbyBp
bmZvID0gaG9zdC0+YXBwbGljYXRpb25DYWNoZUluZm8oKTsKKyAgICBhdXRvJiBob3N0ID0gZG9j
dW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7CisgICAgaW50IHN0YXR1cyA9IGhv
c3Quc3RhdHVzKCk7CisgICAgYXV0byBtYW5pZmVzdFVSTCA9IGhvc3QuYXBwbGljYXRpb25DYWNo
ZUluZm8oKS5tYW5pZmVzdC5zdHJpbmcoKTsKIAotICAgIFN0cmluZyBtYW5pZmVzdFVSTCA9IGlu
Zm8ubV9tYW5pZmVzdC5zdHJpbmcoKTsKLSAgICBtX2Zyb250ZW5kRGlzcGF0Y2hlci0+YXBwbGlj
YXRpb25DYWNoZVN0YXR1c1VwZGF0ZWQobV9wYWdlQWdlbnQtPmZyYW1lSWQoZnJhbWUpLCBtYW5p
ZmVzdFVSTCwgc3RhdGljX2Nhc3Q8aW50PihzdGF0dXMpKTsKKyAgICBtX2Zyb250ZW5kRGlzcGF0
Y2hlci0+YXBwbGljYXRpb25DYWNoZVN0YXR1c1VwZGF0ZWQobV9wYWdlQWdlbnQtPmZyYW1lSWQo
ZnJhbWUpLCBtYW5pZmVzdFVSTCwgc3RhdHVzKTsKIH0KIAogdm9pZCBJbnNwZWN0b3JBcHBsaWNh
dGlvbkNhY2hlQWdlbnQ6Om5ldHdvcmtTdGF0ZUNoYW5nZWQoKQpAQCAtOTEsMjAgKzkyLDE4IEBA
IHZvaWQgSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpnZXRGcmFtZXNXaXRoTWFuaWZl
c3RzKEVycm9yU3RyaW5nJiwgUmVmUHRyCiAgICAgcmVzdWx0ID0gSW5zcGVjdG9yOjpQcm90b2Nv
bDo6QXJyYXk8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6RnJhbWVXaXRo
TWFuaWZlc3Q+OjpjcmVhdGUoKTsKIAogICAgIGZvciAoRnJhbWUqIGZyYW1lID0gJm1fcGFnZUFn
ZW50LT5tYWluRnJhbWUoKTsgZnJhbWU7IGZyYW1lID0gZnJhbWUtPnRyZWUoKS50cmF2ZXJzZU5l
eHQoKSkgewotICAgICAgICBEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIgPSBmcmFtZS0+
bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKKyAgICAgICAgYXV0byogZG9jdW1lbnRMb2FkZXIg
PSBmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKICAgICAgICAgaWYgKCFkb2N1bWVu
dExvYWRlcikKICAgICAgICAgICAgIGNvbnRpbnVlOwogCi0gICAgICAgIEFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KiBob3N0ID0gZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7Ci0g
ICAgICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8gaW5mbyA9IGhvc3QtPmFwcGxp
Y2F0aW9uQ2FjaGVJbmZvKCk7Ci0gICAgICAgIFN0cmluZyBtYW5pZmVzdFVSTCA9IGluZm8ubV9t
YW5pZmVzdC5zdHJpbmcoKTsKKyAgICAgICAgYXV0byYgaG9zdCA9IGRvY3VtZW50TG9hZGVyLT5h
cHBsaWNhdGlvbkNhY2hlSG9zdCgpOworICAgICAgICBTdHJpbmcgbWFuaWZlc3RVUkwgPSBob3N0
LmFwcGxpY2F0aW9uQ2FjaGVJbmZvKCkubWFuaWZlc3Quc3RyaW5nKCk7CiAgICAgICAgIGlmICgh
bWFuaWZlc3RVUkwuaXNFbXB0eSgpKSB7Ci0gICAgICAgICAgICBSZWY8SW5zcGVjdG9yOjpQcm90
b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6RnJhbWVXaXRoTWFuaWZlc3Q+IHZhbHVlID0gSW5zcGVj
dG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6RnJhbWVXaXRoTWFuaWZlc3Q6OmNyZWF0
ZSgpCisgICAgICAgICAgICByZXN1bHQtPmFkZEl0ZW0oSW5zcGVjdG9yOjpQcm90b2NvbDo6QXBw
bGljYXRpb25DYWNoZTo6RnJhbWVXaXRoTWFuaWZlc3Q6OmNyZWF0ZSgpCiAgICAgICAgICAgICAg
ICAgLnNldEZyYW1lSWQobV9wYWdlQWdlbnQtPmZyYW1lSWQoZnJhbWUpKQogICAgICAgICAgICAg
ICAgIC5zZXRNYW5pZmVzdFVSTChtYW5pZmVzdFVSTCkKLSAgICAgICAgICAgICAgICAuc2V0U3Rh
dHVzKHN0YXRpY19jYXN0PGludD4oaG9zdC0+c3RhdHVzKCkpKQotICAgICAgICAgICAgICAgIC5y
ZWxlYXNlKCk7Ci0gICAgICAgICAgICByZXN1bHQtPmFkZEl0ZW0oV1RGTW92ZSh2YWx1ZSkpOwor
ICAgICAgICAgICAgICAgIC5zZXRTdGF0dXMoc3RhdGljX2Nhc3Q8aW50Pihob3N0LnN0YXR1cygp
KSkKKyAgICAgICAgICAgICAgICAucmVsZWFzZSgpKTsKICAgICAgICAgfQogICAgIH0KIH0KQEAg
LTEyNCw2OCArMTIzLDYwIEBAIHZvaWQgSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50Ojpn
ZXRNYW5pZmVzdEZvckZyYW1lKEVycm9yU3RyaW5nJiBlcnJvclN0cmluCiAgICAgaWYgKCFkb2N1
bWVudExvYWRlcikKICAgICAgICAgcmV0dXJuOwogCi0gICAgQXBwbGljYXRpb25DYWNoZUhvc3Q6
OkNhY2hlSW5mbyBpbmZvID0gZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkt
PmFwcGxpY2F0aW9uQ2FjaGVJbmZvKCk7Ci0gICAgKm1hbmlmZXN0VVJMID0gaW5mby5tX21hbmlm
ZXN0LnN0cmluZygpOworICAgICptYW5pZmVzdFVSTCA9IGRvY3VtZW50TG9hZGVyLT5hcHBsaWNh
dGlvbkNhY2hlSG9zdCgpLmFwcGxpY2F0aW9uQ2FjaGVJbmZvKCkubWFuaWZlc3Quc3RyaW5nKCk7
CiB9CiAKIHZvaWQgSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpnZXRBcHBsaWNhdGlv
bkNhY2hlRm9yRnJhbWUoRXJyb3JTdHJpbmcmIGVycm9yU3RyaW5nLCBjb25zdCBTdHJpbmcmIGZy
YW1lSWQsIFJlZlB0cjxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBs
aWNhdGlvbkNhY2hlPiYgYXBwbGljYXRpb25DYWNoZSkKIHsKLSAgICBEb2N1bWVudExvYWRlciog
ZG9jdW1lbnRMb2FkZXIgPSBhc3NlcnRGcmFtZVdpdGhEb2N1bWVudExvYWRlcihlcnJvclN0cmlu
ZywgZnJhbWVJZCk7CisgICAgYXV0byogZG9jdW1lbnRMb2FkZXIgPSBhc3NlcnRGcmFtZVdpdGhE
b2N1bWVudExvYWRlcihlcnJvclN0cmluZywgZnJhbWVJZCk7CiAgICAgaWYgKCFkb2N1bWVudExv
YWRlcikKICAgICAgICAgcmV0dXJuOwogCi0gICAgQXBwbGljYXRpb25DYWNoZUhvc3QqIGhvc3Qg
PSBkb2N1bWVudExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKTsKLSAgICBBcHBsaWNhdGlv
bkNhY2hlSG9zdDo6Q2FjaGVJbmZvIGluZm8gPSBob3N0LT5hcHBsaWNhdGlvbkNhY2hlSW5mbygp
OwotCi0gICAgQXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mb0xpc3QgcmVzb3VyY2Vz
OwotICAgIGhvc3QtPmZpbGxSZXNvdXJjZUxpc3QoJnJlc291cmNlcyk7Ci0KLSAgICBhcHBsaWNh
dGlvbkNhY2hlID0gYnVpbGRPYmplY3RGb3JBcHBsaWNhdGlvbkNhY2hlKHJlc291cmNlcywgaW5m
byk7CisgICAgYXV0byYgaG9zdCA9IGRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9z
dCgpOworICAgIGFwcGxpY2F0aW9uQ2FjaGUgPSBidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2Fj
aGUoaG9zdC5yZXNvdXJjZUxpc3QoKSwgaG9zdC5hcHBsaWNhdGlvbkNhY2hlSW5mbygpKTsKIH0K
IAotUmVmPEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9u
Q2FjaGU+IEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6YnVpbGRPYmplY3RGb3JBcHBs
aWNhdGlvbkNhY2hlKGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpSZXNvdXJjZUluZm9MaXN0
JiBhcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2VzLCBjb25zdCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6
Q2FjaGVJbmZvJiBhcHBsaWNhdGlvbkNhY2hlSW5mbykKK1JlZjxJbnNwZWN0b3I6OlByb3RvY29s
OjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlPiBJbnNwZWN0b3JBcHBsaWNhdGlv
bkNhY2hlQWdlbnQ6OmJ1aWxkT2JqZWN0Rm9yQXBwbGljYXRpb25DYWNoZShjb25zdCBWZWN0b3I8
QXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mbz4mIGFwcGxpY2F0aW9uQ2FjaGVSZXNv
dXJjZXMsIGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8mIGFwcGxpY2F0aW9u
Q2FjaGVJbmZvKQogewogICAgIHJldHVybiBJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlv
bkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlOjpjcmVhdGUoKQotICAgICAgICAuc2V0TWFuaWZlc3RV
UkwoYXBwbGljYXRpb25DYWNoZUluZm8ubV9tYW5pZmVzdC5zdHJpbmcoKSkKLSAgICAgICAgLnNl
dFNpemUoYXBwbGljYXRpb25DYWNoZUluZm8ubV9zaXplKQotICAgICAgICAuc2V0Q3JlYXRpb25U
aW1lKGFwcGxpY2F0aW9uQ2FjaGVJbmZvLm1fY3JlYXRpb25UaW1lKQotICAgICAgICAuc2V0VXBk
YXRlVGltZShhcHBsaWNhdGlvbkNhY2hlSW5mby5tX3VwZGF0ZVRpbWUpCisgICAgICAgIC5zZXRN
YW5pZmVzdFVSTChhcHBsaWNhdGlvbkNhY2hlSW5mby5tYW5pZmVzdC5zdHJpbmcoKSkKKyAgICAg
ICAgLnNldFNpemUoYXBwbGljYXRpb25DYWNoZUluZm8uc2l6ZSkKKyAgICAgICAgLnNldENyZWF0
aW9uVGltZShhcHBsaWNhdGlvbkNhY2hlSW5mby5jcmVhdGlvblRpbWUpCisgICAgICAgIC5zZXRV
cGRhdGVUaW1lKGFwcGxpY2F0aW9uQ2FjaGVJbmZvLnVwZGF0ZVRpbWUpCiAgICAgICAgIC5zZXRS
ZXNvdXJjZXMoYnVpbGRBcnJheUZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMoYXBwbGljYXRp
b25DYWNoZVJlc291cmNlcykpCiAgICAgICAgIC5yZWxlYXNlKCk7CiB9CiAKLVJlZjxJbnNwZWN0
b3I6OlByb3RvY29sOjpBcnJheTxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hl
OjpBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+PiBJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdl
bnQ6OmJ1aWxkQXJyYXlGb3JBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2VzKGNvbnN0IEFwcGxpY2F0
aW9uQ2FjaGVIb3N0OjpSZXNvdXJjZUluZm9MaXN0JiBhcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2Vz
KQorUmVmPEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFycmF5PEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFw
cGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4+IEluc3BlY3RvckFwcGxp
Y2F0aW9uQ2FjaGVBZ2VudDo6YnVpbGRBcnJheUZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMo
Y29uc3QgVmVjdG9yPEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpSZXNvdXJjZUluZm8+JiBhcHBsaWNh
dGlvbkNhY2hlUmVzb3VyY2VzKQogewotICAgIGF1dG8gcmVzb3VyY2VzID0gSW5zcGVjdG9yOjpQ
cm90b2NvbDo6QXJyYXk8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6QXBw
bGljYXRpb25DYWNoZVJlc291cmNlPjo6Y3JlYXRlKCk7Ci0KLSAgICBmb3IgKGNvbnN0IGF1dG8m
IHJlc291cmNlSW5mbyA6IGFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMpCi0gICAgICAgIHJlc291
cmNlcy0+YWRkSXRlbShidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZShyZXNv
dXJjZUluZm8pKTsKLQotICAgIHJldHVybiByZXNvdXJjZXM7CisgICAgYXV0byByZXN1bHQgPSBJ
bnNwZWN0b3I6OlByb3RvY29sOjpBcnJheTxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlv
bkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+OjpjcmVhdGUoKTsKKyAgICBmb3IgKGF1
dG8mIGluZm8gOiBhcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2VzKQorICAgICAgICByZXN1bHQtPmFk
ZEl0ZW0oYnVpbGRPYmplY3RGb3JBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UoaW5mbykpOworICAg
IHJldHVybiByZXN1bHQ7CiB9CiAKIFJlZjxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlv
bkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+IEluc3BlY3RvckFwcGxpY2F0aW9uQ2Fj
aGVBZ2VudDo6YnVpbGRPYmplY3RGb3JBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UoY29uc3QgQXBw
bGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mbyYgcmVzb3VyY2VJbmZvKQogewogICAgIFN0
cmluZ0J1aWxkZXIgdHlwZXM7CiAKLSAgICBpZiAocmVzb3VyY2VJbmZvLm1faXNNYXN0ZXIpCisg
ICAgaWYgKHJlc291cmNlSW5mby5pc01hc3RlcikKICAgICAgICAgdHlwZXMuYXBwZW5kTGl0ZXJh
bCgiTWFzdGVyICIpOwogCi0gICAgaWYgKHJlc291cmNlSW5mby5tX2lzTWFuaWZlc3QpCisgICAg
aWYgKHJlc291cmNlSW5mby5pc01hbmlmZXN0KQogICAgICAgICB0eXBlcy5hcHBlbmRMaXRlcmFs
KCJNYW5pZmVzdCAiKTsKIAotICAgIGlmIChyZXNvdXJjZUluZm8ubV9pc0ZhbGxiYWNrKQorICAg
IGlmIChyZXNvdXJjZUluZm8uaXNGYWxsYmFjaykKICAgICAgICAgdHlwZXMuYXBwZW5kTGl0ZXJh
bCgiRmFsbGJhY2sgIik7CiAKLSAgICBpZiAocmVzb3VyY2VJbmZvLm1faXNGb3JlaWduKQorICAg
IGlmIChyZXNvdXJjZUluZm8uaXNGb3JlaWduKQogICAgICAgICB0eXBlcy5hcHBlbmRMaXRlcmFs
KCJGb3JlaWduICIpOwogCi0gICAgaWYgKHJlc291cmNlSW5mby5tX2lzRXhwbGljaXQpCisgICAg
aWYgKHJlc291cmNlSW5mby5pc0V4cGxpY2l0KQogICAgICAgICB0eXBlcy5hcHBlbmRMaXRlcmFs
KCJFeHBsaWNpdCAiKTsKIAogICAgIHJldHVybiBJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNh
dGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6OmNyZWF0ZSgpCi0gICAgICAgIC5z
ZXRVcmwocmVzb3VyY2VJbmZvLm1fcmVzb3VyY2Uuc3RyaW5nKCkpCi0gICAgICAgIC5zZXRTaXpl
KHN0YXRpY19jYXN0PGludD4ocmVzb3VyY2VJbmZvLm1fc2l6ZSkpCisgICAgICAgIC5zZXRVcmwo
cmVzb3VyY2VJbmZvLnJlc291cmNlLnN0cmluZygpKQorICAgICAgICAuc2V0U2l6ZShzdGF0aWNf
Y2FzdDxpbnQ+KHJlc291cmNlSW5mby5zaXplKSkKICAgICAgICAgLnNldFR5cGUodHlwZXMudG9T
dHJpbmcoKSkKICAgICAgICAgLnJlbGVhc2UoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuaCBiL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuaAppbmRleCBk
NWM1NzljN2VhYmU3YjJiYWRjNDc0YjBmNDg3MTZkZDY5NGZlYjc2Li40ODc1MmVmYTBjZDVmNmE3
NjJkZTUzZGMyYTExMmVmZjQ2NGY3MmZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50LmgKKysrIGIvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5oCkBAIC02Miw4ICs2
Miw4IEBAIHB1YmxpYzoKICAgICB2b2lkIGdldEFwcGxpY2F0aW9uQ2FjaGVGb3JGcmFtZShFcnJv
clN0cmluZyYsIGNvbnN0IFN0cmluZyYgZnJhbWVJZCwgUmVmUHRyPEluc3BlY3Rvcjo6UHJvdG9j
b2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGU+Jikgb3ZlcnJpZGU7CiAKIHBy
aXZhdGU6Ci0gICAgUmVmPEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFw
cGxpY2F0aW9uQ2FjaGU+IGJ1aWxkT2JqZWN0Rm9yQXBwbGljYXRpb25DYWNoZShjb25zdCBBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6UmVzb3VyY2VJbmZvTGlzdCYsIGNvbnN0IEFwcGxpY2F0aW9uQ2Fj
aGVIb3N0OjpDYWNoZUluZm8mKTsKLSAgICBSZWY8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXJyYXk8
SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZVJl
c291cmNlPj4gYnVpbGRBcnJheUZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMoY29uc3QgQXBw
bGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mb0xpc3QmKTsKKyAgICBSZWY8SW5zcGVjdG9y
OjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZT4gYnVpbGRPYmpl
Y3RGb3JBcHBsaWNhdGlvbkNhY2hlKGNvbnN0IFZlY3RvcjxBcHBsaWNhdGlvbkNhY2hlSG9zdDo6
UmVzb3VyY2VJbmZvPiYsIGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8mKTsK
KyAgICBSZWY8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXJyYXk8SW5zcGVjdG9yOjpQcm90b2NvbDo6
QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZVJlc291cmNlPj4gYnVpbGRBcnJheUZv
ckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMoY29uc3QgVmVjdG9yPEFwcGxpY2F0aW9uQ2FjaGVI
b3N0OjpSZXNvdXJjZUluZm8+Jik7CiAgICAgUmVmPEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxp
Y2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4gYnVpbGRPYmplY3RGb3JBcHBs
aWNhdGlvbkNhY2hlUmVzb3VyY2UoY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNl
SW5mbyYpOwogCiAgICAgRG9jdW1lbnRMb2FkZXIqIGFzc2VydEZyYW1lV2l0aERvY3VtZW50TG9h
ZGVyKEVycm9yU3RyaW5nJiwgY29uc3QgU3RyaW5nJiBmcmFtZUlkKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uY3BwIGIvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5jcHAKaW5kZXgg
MmU0MzM3OTZhNmFmM2IxMWI5MWQ3Y2IwNjIxYTE4NDdiNWZjMjU3YS4uZDY4YzUyMmVmY2UwMmNm
ZWQ1OWE4ZjA4NTlmNDU0ZTFjOGMyY2E4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5jcHAKQEAgLTEsNiArMSw2IEBACiAv
KgogKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
LSogQ29weXJpZ2h0IChDKSAyMDE0LCAyMDE1IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyogQ29weXJpZ2h0IChDKSAyMDE0LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgogKgogKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQpAQCAtMTA3MywxMCArMTA3Mywx
MCBAQCB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6bmV0d29ya1N0YXRlQ2hhbmdlZElt
cGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdAogICAgICAgICBhcHBsaWNhdGlvbkNhY2hlQWdl
bnQtPm5ldHdvcmtTdGF0ZUNoYW5nZWQoKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50
YXRpb246OnVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXNJbXBsKEluc3RydW1lbnRpbmdBZ2Vu
dHMmIGluc3RydW1lbnRpbmdBZ2VudHMsIEZyYW1lKiBmcmFtZSkKK3ZvaWQgSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uOjp1cGRhdGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzSW1wbChJbnN0cnVtZW50
aW5nQWdlbnRzJiBpbnN0cnVtZW50aW5nQWdlbnRzLCBGcmFtZSYgZnJhbWUpCiB7Ci0gICAgaWYg
KEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudCogYXBwbGljYXRpb25DYWNoZUFnZW50ID0g
aW5zdHJ1bWVudGluZ0FnZW50cy5pbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQoKSkKLSAg
ICAgICAgYXBwbGljYXRpb25DYWNoZUFnZW50LT51cGRhdGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVz
KGZyYW1lKTsKKyAgICBpZiAoYXV0byogYXBwbGljYXRpb25DYWNoZUFnZW50ID0gaW5zdHJ1bWVu
dGluZ0FnZW50cy5pbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQoKSkKKyAgICAgICAgYXBw
bGljYXRpb25DYWNoZUFnZW50LT51cGRhdGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzKCZmcmFtZSk7
CiB9CiAKIGJvb2wgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpjb25zb2xlQWdlbnRFbmFibGVk
KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgKaW5k
ZXggOWI2MDAxMDRkYTJmMWRkNWVkMTAyYmJmOTQ1YTZmNWFkNDk5N2Y0Mi4uMjQ1Y2RjODg3NTJk
MDg1MWU1NzA0NGJiNzIzMzViNmEwODI0YWFmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaApAQCAtNDA3LDcgKzQwNyw3IEBA
IHByaXZhdGU6CiAjZW5kaWYKIAogICAgIHN0YXRpYyB2b2lkIG5ldHdvcmtTdGF0ZUNoYW5nZWRJ
bXBsKEluc3RydW1lbnRpbmdBZ2VudHMmKTsKLSAgICBzdGF0aWMgdm9pZCB1cGRhdGVBcHBsaWNh
dGlvbkNhY2hlU3RhdHVzSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgRnJhbWUqKTsKKyAgICBz
dGF0aWMgdm9pZCB1cGRhdGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzSW1wbChJbnN0cnVtZW50aW5n
QWdlbnRzJiwgRnJhbWUmKTsKIAogICAgIHN0YXRpYyB2b2lkIGxheWVyVHJlZURpZENoYW5nZUlt
cGwoSW5zdHJ1bWVudGluZ0FnZW50cyYpOwogICAgIHN0YXRpYyB2b2lkIHJlbmRlckxheWVyRGVz
dHJveWVkSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgY29uc3QgUmVuZGVyTGF5ZXImKTsKQEAg
LTExODEsOCArMTE4MSw4IEBAIGlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
bmV0d29ya1N0YXRlQ2hhbmdlZChQYWdlJiBwYWdlKQogaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uOjp1cGRhdGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzKEZyYW1lKiBmcmFtZSkK
IHsKICAgICBGQVNUX1JFVFVSTl9JRl9OT19GUk9OVEVORFModm9pZCgpKTsKLSAgICBpZiAoSW5z
dHJ1bWVudGluZ0FnZW50cyogaW5zdHJ1bWVudGluZ0FnZW50cyA9IGluc3RydW1lbnRpbmdBZ2Vu
dHNGb3JGcmFtZShmcmFtZSkpCi0gICAgICAgIHVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXNJ
bXBsKCppbnN0cnVtZW50aW5nQWdlbnRzLCBmcmFtZSk7CisgICAgaWYgKGF1dG8qIGluc3RydW1l
bnRpbmdBZ2VudHMgPSBpbnN0cnVtZW50aW5nQWdlbnRzRm9yRnJhbWUoZnJhbWUpKQorICAgICAg
ICB1cGRhdGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzSW1wbCgqaW5zdHJ1bWVudGluZ0FnZW50cywg
KmZyYW1lKTsKIH0KIAogaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjphZGRN
ZXNzYWdlVG9Db25zb2xlKFBhZ2UmIHBhZ2UsIHN0ZDo6dW5pcXVlX3B0cjxJbnNwZWN0b3I6OkNv
bnNvbGVNZXNzYWdlPiBtZXNzYWdlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0RvY3VtZW50TG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRl
ci5jcHAKaW5kZXggOWIzOGMzYjM2Mjc5MDVlMWJlYWEzOWY1NWJlM2RiYzY5YzM3N2FlOS4uZWU2
NTljYjVmOTM5NTkwNzY3ZWM5ODRhNjE3MWZkNTM5MGU1NDgxZSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwCkBAIC0xMjksMzAgKzEyOSwxNiBAQCBzdGF0aWMgYm9v
bCBhcmVBbGxMb2FkZXJzUGFnZUNhY2hlQWNjZXB0YWJsZShjb25zdCBSZXNvdXJjZUxvYWRlck1h
cCYgbG9hZGVycykKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotRG9jdW1lbnRMb2FkZXI6OkRvY3Vt
ZW50TG9hZGVyKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxLCBjb25zdCBTdWJzdGl0dXRlRGF0
YSYgc3Vic3RpdHV0ZURhdGEpCi0gICAgOiBtX2RlZmVyTWFpblJlc291cmNlRGF0YUxvYWQodHJ1
ZSkKLSAgICAsIG1fZnJhbWUobnVsbHB0cikKLSAgICAsIG1fY2FjaGVkUmVzb3VyY2VMb2FkZXIo
Q2FjaGVkUmVzb3VyY2VMb2FkZXI6OmNyZWF0ZSh0aGlzKSkKK0RvY3VtZW50TG9hZGVyOjpEb2N1
bWVudExvYWRlcihjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFN1YnN0aXR1
dGVEYXRhJiBzdWJzdGl0dXRlRGF0YSkKKyAgICA6IG1fY2FjaGVkUmVzb3VyY2VMb2FkZXIoQ2Fj
aGVkUmVzb3VyY2VMb2FkZXI6OmNyZWF0ZSh0aGlzKSkKICAgICAsIG1fd3JpdGVyKG1fZnJhbWUp
Ci0gICAgLCBtX29yaWdpbmFsUmVxdWVzdChyZXEpCisgICAgLCBtX29yaWdpbmFsUmVxdWVzdChy
ZXF1ZXN0KQogICAgICwgbV9zdWJzdGl0dXRlRGF0YShzdWJzdGl0dXRlRGF0YSkKLSAgICAsIG1f
b3JpZ2luYWxSZXF1ZXN0Q29weShyZXEpCi0gICAgLCBtX3JlcXVlc3QocmVxKQorICAgICwgbV9v
cmlnaW5hbFJlcXVlc3RDb3B5KHJlcXVlc3QpCisgICAgLCBtX3JlcXVlc3QocmVxdWVzdCkKICAg
ICAsIG1fb3JpZ2luYWxTdWJzdGl0dXRlRGF0YVdhc1ZhbGlkKHN1YnN0aXR1dGVEYXRhLmlzVmFs
aWQoKSkKLSAgICAsIG1fY29tbWl0dGVkKGZhbHNlKQotICAgICwgbV9pc1N0b3BwaW5nKGZhbHNl
KQotICAgICwgbV9nb3RGaXJzdEJ5dGUoZmFsc2UpCi0gICAgLCBtX2lzQ2xpZW50UmVkaXJlY3Qo
ZmFsc2UpCi0gICAgLCBtX2lzTG9hZGluZ011bHRpcGFydENvbnRlbnQoZmFsc2UpCi0gICAgLCBt
X3dhc09ubG9hZERpc3BhdGNoZWQoZmFsc2UpCi0gICAgLCBtX3N0b3BSZWNvcmRpbmdSZXNwb25z
ZXMoZmFsc2UpCiAgICAgLCBtX3N1YnN0aXR1dGVSZXNvdXJjZURlbGl2ZXJ5VGltZXIoKnRoaXMs
ICZEb2N1bWVudExvYWRlcjo6c3Vic3RpdHV0ZVJlc291cmNlRGVsaXZlcnlUaW1lckZpcmVkKQot
ICAgICwgbV9kaWRDcmVhdGVHbG9iYWxIaXN0b3J5RW50cnkoZmFsc2UpCi0gICAgLCBtX2xvYWRp
bmdNYWluUmVzb3VyY2UoZmFsc2UpCi0gICAgLCBtX3RpbWVPZkxhc3REYXRhUmVjZWl2ZWQoMC4w
KQotICAgICwgbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlcigwKQogICAg
ICwgbV9kYXRhTG9hZFRpbWVyKCp0aGlzLCAmRG9jdW1lbnRMb2FkZXI6OmhhbmRsZVN1YnN0aXR1
dGVEYXRhTG9hZE5vdykKLSAgICAsIG1fc3VicmVzb3VyY2VMb2FkZXJzQXJlUGFnZUNhY2hlQWNj
ZXB0YWJsZShmYWxzZSkKICAgICAsIG1fYXBwbGljYXRpb25DYWNoZUhvc3Qoc3RkOjptYWtlX3Vu
aXF1ZTxBcHBsaWNhdGlvbkNhY2hlSG9zdD4oKnRoaXMpKQogewogfQpAQCAtMTY2LDcgKzE1Miw5
IEBAIEZyYW1lTG9hZGVyKiBEb2N1bWVudExvYWRlcjo6ZnJhbWVMb2FkZXIoKSBjb25zdAogCiBT
dWJyZXNvdXJjZUxvYWRlciogRG9jdW1lbnRMb2FkZXI6Om1haW5SZXNvdXJjZUxvYWRlcigpIGNv
bnN0CiB7Ci0gICAgcmV0dXJuIG1fbWFpblJlc291cmNlID8gbV9tYWluUmVzb3VyY2UtPmxvYWRl
cigpIDogMDsKKyAgICBpZiAoIW1fbWFpblJlc291cmNlKQorICAgICAgICByZXR1cm4gbnVsbHB0
cjsKKyAgICByZXR1cm4gbV9tYWluUmVzb3VyY2UtPmxvYWRlcigpOwogfQogCiBEb2N1bWVudExv
YWRlcjo6fkRvY3VtZW50TG9hZGVyKCkKQEAgLTE3OSw3ICsxNjcsNyBAQCBEb2N1bWVudExvYWRl
cjo6fkRvY3VtZW50TG9hZGVyKCkKICAgICBpZiAobV9pY29uRGF0YUNhbGxiYWNrKQogICAgICAg
ICBtX2ljb25EYXRhQ2FsbGJhY2stPmludmFsaWRhdGUoKTsKICAgICBtX2NhY2hlZFJlc291cmNl
TG9hZGVyLT5jbGVhckRvY3VtZW50TG9hZGVyKCk7Ci0gICAgCisKICAgICBjbGVhck1haW5SZXNv
dXJjZSgpOwogfQogCkBAIC0xOTksMzEgKzE4Nyw2IEBAIERvY3VtZW50KiBEb2N1bWVudExvYWRl
cjo6ZG9jdW1lbnQoKSBjb25zdAogICAgIHJldHVybiBudWxscHRyOwogfQogCi1jb25zdCBSZXNv
dXJjZVJlcXVlc3QmIERvY3VtZW50TG9hZGVyOjpvcmlnaW5hbFJlcXVlc3QoKSBjb25zdAotewot
ICAgIHJldHVybiBtX29yaWdpbmFsUmVxdWVzdDsKLX0KLQotY29uc3QgUmVzb3VyY2VSZXF1ZXN0
JiBEb2N1bWVudExvYWRlcjo6b3JpZ2luYWxSZXF1ZXN0Q29weSgpIGNvbnN0Ci17Ci0gICAgcmV0
dXJuIG1fb3JpZ2luYWxSZXF1ZXN0Q29weTsKLX0KLQotY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiBE
b2N1bWVudExvYWRlcjo6cmVxdWVzdCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fcmVxdWVzdDsK
LX0KLQotUmVzb3VyY2VSZXF1ZXN0JiBEb2N1bWVudExvYWRlcjo6cmVxdWVzdCgpCi17Ci0gICAg
cmV0dXJuIG1fcmVxdWVzdDsKLX0KLQotY29uc3QgVVJMJiBEb2N1bWVudExvYWRlcjo6dXJsKCkg
Y29uc3QKLXsKLSAgICByZXR1cm4gcmVxdWVzdCgpLnVybCgpOwotfQotCiB2b2lkIERvY3VtZW50
TG9hZGVyOjpyZXBsYWNlUmVxdWVzdFVSTEZvclNhbWVEb2N1bWVudE5hdmlnYXRpb24oY29uc3Qg
VVJMJiB1cmwpCiB7CiAgICAgbV9vcmlnaW5hbFJlcXVlc3RDb3B5LnNldFVSTCh1cmwpOwpAQCAt
MzE5LDcgKzI4Miw3IEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnN0b3BMb2FkaW5nKCkKICAgICBj
YW5jZWxBbGwobV9tdWx0aXBhcnRTdWJyZXNvdXJjZUxvYWRlcnMpOwogCiAgICAgLy8gQXBwY2Fj
aGUgdXNlcyBSZXNvdXJjZUhhbmRsZSBkaXJlY3RseSwgRG9jdW1lbnRMb2FkZXIgZG9lc24ndCBj
b3VudCB0aGVzZSBsb2Fkcy4KLSAgICBtX2FwcGxpY2F0aW9uQ2FjaGVIb3N0LT5zdG9wTG9hZGlu
Z0luRnJhbWUobV9mcmFtZSk7CisgICAgbV9hcHBsaWNhdGlvbkNhY2hlSG9zdC0+c3RvcExvYWRp
bmdJbkZyYW1lKCptX2ZyYW1lKTsKICAgICAKICNpZiBFTkFCTEUoV0VCX0FSQ0hJVkUpIHx8IEVO
QUJMRShNSFRNTCkKICAgICBjbGVhckFyY2hpdmVSZXNvdXJjZXMoKTsKQEAgLTYwMiw3ICs1NjUs
NyBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjp3aWxsU2VuZFJlcXVlc3QoUmVzb3VyY2VSZXF1ZXN0
JiBuZXdSZXF1ZXN0LCBjb25zdCBSZXNvdXJjZQogCiAgICAgQVNTRVJUKCFtX3dhaXRpbmdGb3JO
YXZpZ2F0aW9uUG9saWN5KTsKICAgICBtX3dhaXRpbmdGb3JOYXZpZ2F0aW9uUG9saWN5ID0gdHJ1
ZTsKLSAgICBmcmFtZUxvYWRlcigpLT5wb2xpY3lDaGVja2VyKCkuY2hlY2tOYXZpZ2F0aW9uUG9s
aWN5KG5ld1JlcXVlc3QsIGRpZFJlY2VpdmVSZWRpcmVjdFJlc3BvbnNlLCBbdGhpc10oY29uc3Qg
UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIGJvb2wgc2hv
dWxkQ29udGludWUpIHsKKyAgICBmcmFtZUxvYWRlcigpLT5wb2xpY3lDaGVja2VyKCkuY2hlY2tO
YXZpZ2F0aW9uUG9saWN5KG5ld1JlcXVlc3QsIGRpZFJlY2VpdmVSZWRpcmVjdFJlc3BvbnNlLCBb
dGhpc10gKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiwgYm9vbCBz
aG91bGRDb250aW51ZSkgewogICAgICAgICBjb250aW51ZUFmdGVyTmF2aWdhdGlvblBvbGljeShy
ZXF1ZXN0LCBzaG91bGRDb250aW51ZSk7CiAgICAgfSk7CiB9CkBAIC05MDAsMTIgKzg2Myw4IEBA
IHZvaWQgRG9jdW1lbnRMb2FkZXI6OmNvbW1pdERhdGEoY29uc3QgY2hhciogYnl0ZXMsIHNpemVf
dCBsZW5ndGgpCiAgICAgICAgIGlmIChmcmFtZUxvYWRlcigpLT5zdGF0ZU1hY2hpbmUoKS5jcmVh
dGluZ0luaXRpYWxFbXB0eURvY3VtZW50KCkpCiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAg
IAotI2lmIEVOQUJMRShNSFRNTCkKLSAgICAgICAgLy8gVGhlIG9yaWdpbiBpcyB0aGUgTUhUTUwg
ZmlsZSwgd2UgbmVlZCB0byBzZXQgdGhlIGJhc2UgVVJMIHRvIHRoZSBkb2N1bWVudCBlbmNvZGVk
IGluIHRoZSBNSFRNTCBzbwotICAgICAgICAvLyByZWxhdGl2ZSBVUkxzIGFyZSByZXNvbHZlZCBw
cm9wZXJseS4KLSAgICAgICAgaWYgKG1fYXJjaGl2ZSAmJiBtX2FyY2hpdmUtPnR5cGUoKSA9PSBB
cmNoaXZlOjpNSFRNTCkKKyAgICAgICAgaWYgKG1fYXJjaGl2ZSAmJiBtX2FyY2hpdmUtPnNob3Vs
ZE92ZXJyaWRlQmFzZVVSTCgpKQogICAgICAgICAgICAgbV9mcmFtZS0+ZG9jdW1lbnQoKS0+c2V0
QmFzZVVSTE92ZXJyaWRlKG1fYXJjaGl2ZS0+bWFpblJlc291cmNlKCktPnVybCgpKTsKLSNlbmRp
ZgogCiAgICAgICAgIC8vIENhbGwgcmVjZWl2ZWRGaXJzdERhdGEoKSBleGFjdGx5IG9uY2UgcGVy
IGxvYWQuIFdlIHNob3VsZCBvbmx5IHJlYWNoIHRoaXMgcG9pbnQgbXVsdGlwbGUgdGltZXMKICAg
ICAgICAgLy8gZm9yIG11bHRpcGFydCBsb2FkcywgYW5kIEZyYW1lTG9hZGVyOjppc1JlcGxhY2lu
ZygpIHdpbGwgYmUgdHJ1ZSBhZnRlciB0aGUgZmlyc3QgdGltZS4KQEAgLTkyMSwxMCArODgwLDgg
QEAgdm9pZCBEb2N1bWVudExvYWRlcjo6Y29tbWl0RGF0YShjb25zdCBjaGFyKiBieXRlcywgc2l6
ZV90IGxlbmd0aCkKICAgICAgICAgaWYgKG92ZXJyaWRlRW5jb2RpbmcoKS5pc051bGwoKSkgewog
ICAgICAgICAgICAgdXNlckNob3NlbiA9IGZhbHNlOwogICAgICAgICAgICAgZW5jb2RpbmcgPSBy
ZXNwb25zZSgpLnRleHRFbmNvZGluZ05hbWUoKTsKLSNpZiBFTkFCTEUoV0VCX0FSQ0hJVkUpCi0g
ICAgICAgICAgICBpZiAobV9hcmNoaXZlICYmIG1fYXJjaGl2ZS0+dHlwZSgpID09IEFyY2hpdmU6
OldlYkFyY2hpdmUpCisgICAgICAgICAgICBpZiAobV9hcmNoaXZlICYmIG1fYXJjaGl2ZS0+c2hv
dWxkVXNlTWFpblJlc291cmNlRW5jb2RpbmcoKSkKICAgICAgICAgICAgICAgICBlbmNvZGluZyA9
IG1fYXJjaGl2ZS0+bWFpblJlc291cmNlKCktPnRleHRFbmNvZGluZygpOwotI2VuZGlmCiAgICAg
ICAgIH0gZWxzZSB7CiAgICAgICAgICAgICB1c2VyQ2hvc2VuID0gdHJ1ZTsKICAgICAgICAgICAg
IGVuY29kaW5nID0gb3ZlcnJpZGVFbmNvZGluZygpOwpAQCAtMTA4MywxNSArMTA0MCwxNiBAQCBi
b29sIERvY3VtZW50TG9hZGVyOjppc0xvYWRpbmdJbkFQSVNlbnNlKCkgY29uc3QKICAgICBpZiAo
ZnJhbWVMb2FkZXIoKS0+c3RhdGUoKSAhPSBGcmFtZVN0YXRlQ29tcGxldGUpIHsKICAgICAgICAg
aWYgKG1fZnJhbWUtPnNldHRpbmdzKCkubmVlZHNJc0xvYWRpbmdJbkFQSVNlbnNlUXVpcmsoKSAm
JiAhbV9zdWJyZXNvdXJjZUxvYWRlcnMuaXNFbXB0eSgpKQogICAgICAgICAgICAgcmV0dXJuIHRy
dWU7Ci0gICAgCi0gICAgICAgIERvY3VtZW50KiBkb2MgPSBtX2ZyYW1lLT5kb2N1bWVudCgpOwot
ICAgICAgICBpZiAoKGlzTG9hZGluZ01haW5SZXNvdXJjZSgpIHx8ICFtX2ZyYW1lLT5kb2N1bWVu
dCgpLT5sb2FkRXZlbnRGaW5pc2hlZCgpKSAmJiBpc0xvYWRpbmcoKSkKKworICAgICAgICBBU1NF
UlQobV9mcmFtZS0+ZG9jdW1lbnQoKSk7CisgICAgICAgIGF1dG8mIGRvY3VtZW50ID0gKm1fZnJh
bWUtPmRvY3VtZW50KCk7CisgICAgICAgIGlmICgoaXNMb2FkaW5nTWFpblJlc291cmNlKCkgfHwg
IWRvY3VtZW50LmxvYWRFdmVudEZpbmlzaGVkKCkpICYmIGlzTG9hZGluZygpKQogICAgICAgICAg
ICAgcmV0dXJuIHRydWU7CiAgICAgICAgIGlmIChtX2NhY2hlZFJlc291cmNlTG9hZGVyLT5yZXF1
ZXN0Q291bnQoKSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAgICAgICBpZiAoZG9jLT5w
cm9jZXNzaW5nTG9hZEV2ZW50KCkpCisgICAgICAgIGlmIChkb2N1bWVudC5wcm9jZXNzaW5nTG9h
ZEV2ZW50KCkpCiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICAgICAgaWYgKGRvYy0+aGFz
QWN0aXZlUGFyc2VyKCkpCisgICAgICAgIGlmIChkb2N1bWVudC5oYXNBY3RpdmVQYXJzZXIoKSkK
ICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KICAgICByZXR1cm4gZnJhbWVMb2FkZXIo
KS0+c3ViZnJhbWVJc0xvYWRpbmcoKTsKQEAgLTExMDIsNDAgKzEwNjAsMzUgQEAgYm9vbCBEb2N1
bWVudExvYWRlcjo6bWF5YmVDcmVhdGVBcmNoaXZlKCkKICNpZiAhRU5BQkxFKFdFQl9BUkNISVZF
KSAmJiAhRU5BQkxFKE1IVE1MKQogICAgIHJldHVybiBmYWxzZTsKICNlbHNlCi0gICAgCiAgICAg
Ly8gR2l2ZSB0aGUgYXJjaGl2ZSBtYWNoaW5lcnkgYSBjcmFjayBhdCB0aGlzIGRvY3VtZW50LiBJ
ZiB0aGUgTUlNRSB0eXBlIGlzIG5vdCBhbiBhcmNoaXZlIHR5cGUsIGl0IHdpbGwgcmV0dXJuIDAu
CiAgICAgbV9hcmNoaXZlID0gQXJjaGl2ZUZhY3Rvcnk6OmNyZWF0ZShtX3Jlc3BvbnNlLnVybCgp
LCBtYWluUmVzb3VyY2VEYXRhKCkuZ2V0KCksIG1fcmVzcG9uc2UubWltZVR5cGUoKSk7CiAgICAg
aWYgKCFtX2FyY2hpdmUpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAKLSAgICBhZGRBbGxB
cmNoaXZlUmVzb3VyY2VzKG1fYXJjaGl2ZS5nZXQoKSk7Ci0gICAgQXJjaGl2ZVJlc291cmNlKiBt
YWluUmVzb3VyY2UgPSBtX2FyY2hpdmUtPm1haW5SZXNvdXJjZSgpOwotICAgIG1fcGFyc2VkQXJj
aGl2ZURhdGEgPSAmbWFpblJlc291cmNlLT5kYXRhKCk7Ci0gICAgbV93cml0ZXIuc2V0TUlNRVR5
cGUobWFpblJlc291cmNlLT5taW1lVHlwZSgpKTsKLSAgICAKKyAgICBhZGRBbGxBcmNoaXZlUmVz
b3VyY2VzKCptX2FyY2hpdmUpOworICAgIEFTU0VSVChtX2FyY2hpdmUtPm1haW5SZXNvdXJjZSgp
KTsKKyAgICBhdXRvJiBtYWluUmVzb3VyY2UgPSAqbV9hcmNoaXZlLT5tYWluUmVzb3VyY2UoKTsK
KyAgICBtX3BhcnNlZEFyY2hpdmVEYXRhID0gJm1haW5SZXNvdXJjZS5kYXRhKCk7CisgICAgbV93
cml0ZXIuc2V0TUlNRVR5cGUobWFpblJlc291cmNlLm1pbWVUeXBlKCkpOworCiAgICAgQVNTRVJU
KG1fZnJhbWUtPmRvY3VtZW50KCkpOwotICAgIGNvbW1pdERhdGEobWFpblJlc291cmNlLT5kYXRh
KCkuZGF0YSgpLCBtYWluUmVzb3VyY2UtPmRhdGEoKS5zaXplKCkpOworICAgIGNvbW1pdERhdGEo
bWFpblJlc291cmNlLmRhdGEoKS5kYXRhKCksIG1haW5SZXNvdXJjZS5kYXRhKCkuc2l6ZSgpKTsK
ICAgICByZXR1cm4gdHJ1ZTsKLSNlbmRpZiAvLyAhRU5BQkxFKFdFQl9BUkNISVZFKSAmJiAhRU5B
QkxFKE1IVE1MKQorI2VuZGlmCiB9CiAKICNpZiBFTkFCTEUoV0VCX0FSQ0hJVkUpIHx8IEVOQUJM
RShNSFRNTCkKIAotdm9pZCBEb2N1bWVudExvYWRlcjo6c2V0QXJjaGl2ZShQYXNzUmVmUHRyPEFy
Y2hpdmU+IGFyY2hpdmUpCit2b2lkIERvY3VtZW50TG9hZGVyOjpzZXRBcmNoaXZlKFJlZjxBcmNo
aXZlPiYmIGFyY2hpdmUpCiB7Ci0gICAgbV9hcmNoaXZlID0gYXJjaGl2ZTsKLSAgICBhZGRBbGxB
cmNoaXZlUmVzb3VyY2VzKG1fYXJjaGl2ZS5nZXQoKSk7CisgICAgbV9hcmNoaXZlID0gV1RGTW92
ZShhcmNoaXZlKTsKKyAgICBhZGRBbGxBcmNoaXZlUmVzb3VyY2VzKCptX2FyY2hpdmUpOwogfQog
Ci12b2lkIERvY3VtZW50TG9hZGVyOjphZGRBbGxBcmNoaXZlUmVzb3VyY2VzKEFyY2hpdmUqIGFy
Y2hpdmUpCit2b2lkIERvY3VtZW50TG9hZGVyOjphZGRBbGxBcmNoaXZlUmVzb3VyY2VzKEFyY2hp
dmUmIGFyY2hpdmUpCiB7CiAgICAgaWYgKCFtX2FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24pCiAg
ICAgICAgIG1fYXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbiA9IHN0ZDo6bWFrZV91bmlxdWU8QXJj
aGl2ZVJlc291cmNlQ29sbGVjdGlvbj4oKTsKLSAgICAgICAgCi0gICAgQVNTRVJUKGFyY2hpdmUp
OwotICAgIGlmICghYXJjaGl2ZSkKLSAgICAgICAgcmV0dXJuOwotICAgICAgICAKICAgICBtX2Fy
Y2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24tPmFkZEFsbFJlc291cmNlcyhhcmNoaXZlKTsKIH0KIApA
QCAtMTE0NSwxMyArMTA5OCwxMiBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjphZGRBcmNoaXZlUmVz
b3VyY2UoUmVmPEFyY2hpdmVSZXNvdXJjZT4mJiByZXNvdXJjZSkKIHsKICAgICBpZiAoIW1fYXJj
aGl2ZVJlc291cmNlQ29sbGVjdGlvbikKICAgICAgICAgbV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0
aW9uID0gc3RkOjptYWtlX3VuaXF1ZTxBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uPigpOwotICAg
ICAgICAKICAgICBtX2FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24tPmFkZFJlc291cmNlKFdURk1v
dmUocmVzb3VyY2UpKTsKIH0KIAotUGFzc1JlZlB0cjxBcmNoaXZlPiBEb2N1bWVudExvYWRlcjo6
cG9wQXJjaGl2ZUZvclN1YmZyYW1lKGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBjb25zdCBVUkwm
IHVybCkKK1JlZlB0cjxBcmNoaXZlPiBEb2N1bWVudExvYWRlcjo6cG9wQXJjaGl2ZUZvclN1YmZy
YW1lKGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBjb25zdCBVUkwmIHVybCkKIHsKLSAgICByZXR1
cm4gbV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uID8gbV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0
aW9uLT5wb3BTdWJmcmFtZUFyY2hpdmUoZnJhbWVOYW1lLCB1cmwpIDogUGFzc1JlZlB0cjxBcmNo
aXZlPihudWxscHRyKTsKKyAgICByZXR1cm4gbV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uID8g
bV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uLT5wb3BTdWJmcmFtZUFyY2hpdmUoZnJhbWVOYW1l
LCB1cmwpIDogbnVsbHB0cjsKIH0KIAogdm9pZCBEb2N1bWVudExvYWRlcjo6Y2xlYXJBcmNoaXZl
UmVzb3VyY2VzKCkKQEAgLTExNzEsNyArMTEyMyw3IEBAIEFyY2hpdmVSZXNvdXJjZSogRG9jdW1l
bnRMb2FkZXI6OmFyY2hpdmVSZXNvdXJjZUZvclVSTChjb25zdCBVUkwmIHVybCkgY29uc3QKIHsK
ICAgICBpZiAoIW1fYXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbikKICAgICAgICAgcmV0dXJuIG51
bGxwdHI7Ci0gICAgQXJjaGl2ZVJlc291cmNlKiByZXNvdXJjZSA9IG1fYXJjaGl2ZVJlc291cmNl
Q29sbGVjdGlvbi0+YXJjaGl2ZVJlc291cmNlRm9yVVJMKHVybCk7CisgICAgYXV0byogcmVzb3Vy
Y2UgPSBtX2FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24tPmFyY2hpdmVSZXNvdXJjZUZvclVSTCh1
cmwpOwogICAgIGlmICghcmVzb3VyY2UgfHwgcmVzb3VyY2UtPnNob3VsZElnbm9yZVdoZW5VbmFy
Y2hpdmluZygpKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICByZXR1cm4gcmVzb3VyY2U7
CkBAIC0xMTgyLDE3ICsxMTM0LDE2IEBAIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IERvY3VtZW50
TG9hZGVyOjptYWluUmVzb3VyY2UoKSBjb25zdAogICAgIFJlZlB0cjxTaGFyZWRCdWZmZXI+IGRh
dGEgPSBtYWluUmVzb3VyY2VEYXRhKCk7CiAgICAgaWYgKCFkYXRhKQogICAgICAgICBkYXRhID0g
U2hhcmVkQnVmZmVyOjpjcmVhdGUoKTsKLSAgICAgICAgCiAgICAgYXV0byYgcmVzcG9uc2UgPSB0
aGlzLT5yZXNwb25zZSgpOwogICAgIHJldHVybiBBcmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShXVEZN
b3ZlKGRhdGEpLCByZXNwb25zZS51cmwoKSwgcmVzcG9uc2UubWltZVR5cGUoKSwgcmVzcG9uc2Uu
dGV4dEVuY29kaW5nTmFtZSgpLCBmcmFtZSgpLT50cmVlKCkudW5pcXVlTmFtZSgpKTsKIH0KIAot
UGFzc1JlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IERvY3VtZW50TG9hZGVyOjpzdWJyZXNvdXJjZShj
b25zdCBVUkwmIHVybCkgY29uc3QKK1JlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IERvY3VtZW50TG9h
ZGVyOjpzdWJyZXNvdXJjZShjb25zdCBVUkwmIHVybCkgY29uc3QKIHsKICAgICBpZiAoIWlzQ29t
bWl0dGVkKCkpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIAotICAgIENhY2hlZFJlc291
cmNlKiByZXNvdXJjZSA9IG1fY2FjaGVkUmVzb3VyY2VMb2FkZXItPmNhY2hlZFJlc291cmNlKHVy
bCk7CisgICAgYXV0byogcmVzb3VyY2UgPSBtX2NhY2hlZFJlc291cmNlTG9hZGVyLT5jYWNoZWRS
ZXNvdXJjZSh1cmwpOwogICAgIGlmICghcmVzb3VyY2UgfHwgIXJlc291cmNlLT5pc0xvYWRlZCgp
KQogICAgICAgICByZXR1cm4gYXJjaGl2ZVJlc291cmNlRm9yVVJMKHVybCk7CiAKQEAgLTEyMDYs
MTggKzExNTcsMTYgQEAgUGFzc1JlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IERvY3VtZW50TG9hZGVy
OjpzdWJyZXNvdXJjZShjb25zdCBVUkwmIHVybCkgY29uc3QKICAgICByZXR1cm4gQXJjaGl2ZVJl
c291cmNlOjpjcmVhdGUoZGF0YSwgdXJsLCByZXNvdXJjZS0+cmVzcG9uc2UoKSk7CiB9CiAKLVZl
Y3RvcjxSZWZQdHI8QXJjaGl2ZVJlc291cmNlPj4gRG9jdW1lbnRMb2FkZXI6OnN1YnJlc291cmNl
cygpIGNvbnN0CitWZWN0b3I8UmVmPEFyY2hpdmVSZXNvdXJjZT4+IERvY3VtZW50TG9hZGVyOjpz
dWJyZXNvdXJjZXMoKSBjb25zdAogewogICAgIGlmICghaXNDb21taXR0ZWQoKSkKICAgICAgICAg
cmV0dXJuIHsgfTsKIAotICAgIFZlY3RvcjxSZWZQdHI8QXJjaGl2ZVJlc291cmNlPj4gc3VicmVz
b3VyY2VzOwotCi0gICAgZm9yIChhdXRvJiBjYWNoZWRSZXNvdXJjZUhhbmRsZSA6IG1fY2FjaGVk
UmVzb3VyY2VMb2FkZXItPmFsbENhY2hlZFJlc291cmNlcygpLnZhbHVlcygpKSB7Ci0gICAgICAg
IGlmIChSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBzdWJyZXNvdXJjZSA9IHRoaXMtPnN1YnJlc291
cmNlKFVSTChQYXJzZWRVUkxTdHJpbmcsIGNhY2hlZFJlc291cmNlSGFuZGxlLT51cmwoKSkpKQot
ICAgICAgICAgICAgc3VicmVzb3VyY2VzLmFwcGVuZChXVEZNb3ZlKHN1YnJlc291cmNlKSk7Cisg
ICAgVmVjdG9yPFJlZjxBcmNoaXZlUmVzb3VyY2U+PiBzdWJyZXNvdXJjZXM7CisgICAgZm9yIChh
dXRvJiBoYW5kbGUgOiBtX2NhY2hlZFJlc291cmNlTG9hZGVyLT5hbGxDYWNoZWRSZXNvdXJjZXMo
KS52YWx1ZXMoKSkgeworICAgICAgICBpZiAoYXV0byBzdWJyZXNvdXJjZSA9IHRoaXMtPnN1YnJl
c291cmNlKHsgUGFyc2VkVVJMU3RyaW5nLCBoYW5kbGUtPnVybCgpIH0pKQorICAgICAgICAgICAg
c3VicmVzb3VyY2VzLmFwcGVuZChzdWJyZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICB9
Ci0KICAgICByZXR1cm4gc3VicmVzb3VyY2VzOwogfQogCkBAIC0xMjI1LDkgKzExNzQsMTEgQEAg
dm9pZCBEb2N1bWVudExvYWRlcjo6ZGVsaXZlclN1YnN0aXR1dGVSZXNvdXJjZXNBZnRlckRlbGF5
KCkKIHsKICAgICBpZiAobV9wZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlcy5pc0VtcHR5KCkpCiAg
ICAgICAgIHJldHVybjsKLSAgICBBU1NFUlQobV9mcmFtZSAmJiBtX2ZyYW1lLT5wYWdlKCkpOwor
ICAgIEFTU0VSVChtX2ZyYW1lKTsKKyAgICBBU1NFUlQobV9mcmFtZS0+cGFnZSgpKTsKICAgICBp
ZiAobV9mcmFtZS0+cGFnZSgpLT5kZWZlcnNMb2FkaW5nKCkpCiAgICAgICAgIHJldHVybjsKKwog
ICAgIGlmICghbV9zdWJzdGl0dXRlUmVzb3VyY2VEZWxpdmVyeVRpbWVyLmlzQWN0aXZlKCkpCiAg
ICAgICAgIG1fc3Vic3RpdHV0ZVJlc291cmNlRGVsaXZlcnlUaW1lci5zdGFydE9uZVNob3QoMCk7
CiB9CkBAIC0xMjM2LDE4ICsxMTg3LDE1IEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnN1YnN0aXR1
dGVSZXNvdXJjZURlbGl2ZXJ5VGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKG1fcGVuZGluZ1N1YnN0
aXR1dGVSZXNvdXJjZXMuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm47Ci0gICAgQVNTRVJUKG1f
ZnJhbWUgJiYgbV9mcmFtZS0+cGFnZSgpKTsKKyAgICBBU1NFUlQobV9mcmFtZSk7CisgICAgQVNT
RVJUKG1fZnJhbWUtPnBhZ2UoKSk7CiAgICAgaWYgKG1fZnJhbWUtPnBhZ2UoKS0+ZGVmZXJzTG9h
ZGluZygpKQogICAgICAgICByZXR1cm47CiAKLSAgICBTdWJzdGl0dXRlUmVzb3VyY2VNYXAgY29w
eTsKLSAgICBjb3B5LnN3YXAobV9wZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlcyk7Ci0KLSAgICBm
b3IgKGF1dG8mIGVudHJ5IDogY29weSkgewotICAgICAgICBhdXRvJiBsb2FkZXIgPSBlbnRyeS5r
ZXk7Ci0gICAgICAgIFN1YnN0aXR1dGVSZXNvdXJjZSogcmVzb3VyY2UgPSBlbnRyeS52YWx1ZS5n
ZXQoKTsKLQotICAgICAgICBpZiAocmVzb3VyY2UpCisgICAgYXV0byBwZW5kaW5nU3Vic3RpdHV0
ZVJlc291cmNlcyA9IFdURk1vdmUobV9wZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlcyk7CisgICAg
Zm9yIChhdXRvJiBwZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlIDogcGVuZGluZ1N1YnN0aXR1dGVS
ZXNvdXJjZXMpIHsKKyAgICAgICAgYXV0byYgbG9hZGVyID0gcGVuZGluZ1N1YnN0aXR1dGVSZXNv
dXJjZS5rZXk7CisgICAgICAgIGlmIChhdXRvJiByZXNvdXJjZSA9IHBlbmRpbmdTdWJzdGl0dXRl
UmVzb3VyY2UudmFsdWUpCiAgICAgICAgICAgICByZXNvdXJjZS0+ZGVsaXZlcigqbG9hZGVyKTsK
ICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAvLyBBIG51bGwgcmVzb3VyY2UgbWVhbnMgdGhh
dCB3ZSBzaG91bGQgZmFpbCB0aGUgbG9hZC4KQEAgLTEyNTgsMTAgKzEyMDYsMTIgQEAgdm9pZCBE
b2N1bWVudExvYWRlcjo6c3Vic3RpdHV0ZVJlc291cmNlRGVsaXZlcnlUaW1lckZpcmVkKCkKIH0K
IAogI2lmbmRlZiBOREVCVUcKKwogYm9vbCBEb2N1bWVudExvYWRlcjo6aXNTdWJzdGl0dXRlTG9h
ZFBlbmRpbmcoUmVzb3VyY2VMb2FkZXIqIGxvYWRlcikgY29uc3QKIHsKICAgICByZXR1cm4gbV9w
ZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlcy5jb250YWlucyhsb2FkZXIpOwogfQorCiAjZW5kaWYK
IAogdm9pZCBEb2N1bWVudExvYWRlcjo6Y2FuY2VsUGVuZGluZ1N1YnN0aXR1dGVMb2FkKFJlc291
cmNlTG9hZGVyKiBsb2FkZXIpCkBAIC0xMjc0LDkgKzEyMjQsMTAgQEAgdm9pZCBEb2N1bWVudExv
YWRlcjo6Y2FuY2VsUGVuZGluZ1N1YnN0aXR1dGVMb2FkKFJlc291cmNlTG9hZGVyKiBsb2FkZXIp
CiB9CiAKICNpZiBFTkFCTEUoV0VCX0FSQ0hJVkUpIHx8IEVOQUJMRShNSFRNTCkKKwogYm9vbCBE
b2N1bWVudExvYWRlcjo6c2NoZWR1bGVBcmNoaXZlTG9hZChSZXNvdXJjZUxvYWRlciYgbG9hZGVy
LCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCiB7Ci0gICAgaWYgKEFyY2hpdmVSZXNv
dXJjZSogcmVzb3VyY2UgPSBhcmNoaXZlUmVzb3VyY2VGb3JVUkwocmVxdWVzdC51cmwoKSkpIHsK
KyAgICBpZiAoYXV0byogcmVzb3VyY2UgPSBhcmNoaXZlUmVzb3VyY2VGb3JVUkwocmVxdWVzdC51
cmwoKSkpIHsKICAgICAgICAgc2NoZWR1bGVTdWJzdGl0dXRlUmVzb3VyY2VMb2FkKGxvYWRlciwg
KnJlc291cmNlKTsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQpAQCAtMTI4NCwyMSArMTIz
NSwxOSBAQCBib29sIERvY3VtZW50TG9hZGVyOjpzY2hlZHVsZUFyY2hpdmVMb2FkKFJlc291cmNl
TG9hZGVyJiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUgogICAgIGlmICghbV9hcmNoaXZlKQogICAg
ICAgICByZXR1cm4gZmFsc2U7CiAKLSAgICBzd2l0Y2ggKG1fYXJjaGl2ZS0+dHlwZSgpKSB7CiAj
aWYgRU5BQkxFKFdFQl9BUkNISVZFKQotICAgIGNhc2UgQXJjaGl2ZTo6V2ViQXJjaGl2ZToKLSAg
ICAgICAgLy8gV2ViQXJjaGl2ZURlYnVnTW9kZSBtZWFucyB3ZSBmYWlsIGxvYWRzIGluc3RlYWQg
b2YgdHJ5aW5nIHRvIGZldGNoIHRoZW0gZnJvbSB0aGUgbmV0d29yayBpZiB0aGV5J3JlIG5vdCBp
biB0aGUgYXJjaGl2ZS4KLSAgICAgICAgcmV0dXJuIG1fZnJhbWUtPnNldHRpbmdzKCkud2ViQXJj
aGl2ZURlYnVnTW9kZUVuYWJsZWQoKSAmJiBBcmNoaXZlRmFjdG9yeTo6aXNBcmNoaXZlTWltZVR5
cGUocmVzcG9uc2VNSU1FVHlwZSgpKTsKLSNlbmRpZgotI2lmIEVOQUJMRShNSFRNTCkKLSAgICBj
YXNlIEFyY2hpdmU6Ok1IVE1MOgotICAgICAgICByZXR1cm4gdHJ1ZTsgLy8gQWx3YXlzIGZhaWwg
dGhlIGxvYWQgZm9yIHJlc291cmNlcyBub3QgaW5jbHVkZWQgaW4gdGhlIE1IVE1MLgorICAgIC8v
IFRoZSBpZGVhIG9mIFdlYkFyY2hpdmVEZWJ1Z01vZGUgaXMgdGhhdCB3ZSBzaG91bGQgZmFpbCBp
bnN0ZWFkIG9mIHRyeWluZyB0byBmZXRjaCBmcm9tIHRoZSBuZXR3b3JrLgorICAgIC8vIFJldHVy
bmluZyB0cnVlIGVuc3VyZXMgdGhlIGNhbGxlciB3aWxsIG5vdCB0cnkgdG8gZmV0Y2ggZnJvbSB0
aGUgbmV0d29yay4KKyAgICBpZiAobV9mcmFtZS0+c2V0dGluZ3MoKS53ZWJBcmNoaXZlRGVidWdN
b2RlRW5hYmxlZCgpICYmIHJlc3BvbnNlTUlNRVR5cGUoKSA9PSAiYXBwbGljYXRpb24veC13ZWJh
cmNoaXZlIikKKyAgICAgICAgcmV0dXJuIHRydWU7CiAjZW5kaWYKLSAgICBkZWZhdWx0OgotICAg
ICAgICByZXR1cm4gZmFsc2U7Ci0gICAgfQorCisgICAgLy8gSWYgd2Ugd2FudCB0byBsb2FkIGZy
b20gdGhlIGFyY2hpdmUgb25seSwgdGhlbiB3ZSBzaG91bGQgYWx3YXlzIHJldHVybiB0cnVlIHNv
IHRoYXQgdGhlIGNhbGxlcgorICAgIC8vIGRvZXMgbm90IHRyeSB0byBmZXRjaCBmb3JtIHRoZSBu
ZXR3b3JrLgorICAgIHJldHVybiBtX2FyY2hpdmUtPnNob3VsZExvYWRGcm9tQXJjaGl2ZU9ubHko
KTsKIH0KLSNlbmRpZiAvLyBFTkFCTEUoV0VCX0FSQ0hJVkUpCisKKyNlbmRpZgogCiB2b2lkIERv
Y3VtZW50TG9hZGVyOjpzY2hlZHVsZVN1YnN0aXR1dGVSZXNvdXJjZUxvYWQoUmVzb3VyY2VMb2Fk
ZXImIGxvYWRlciwgU3Vic3RpdHV0ZVJlc291cmNlJiByZXNvdXJjZSkKIHsKQEAgLTEzMDYsMTAg
KzEyNTUsMTAgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6c2NoZWR1bGVTdWJzdGl0dXRlUmVzb3Vy
Y2VMb2FkKFJlc291cmNlTG9hZGVyJiBsb2FkZXIsIFN1YnMKICAgICBkZWxpdmVyU3Vic3RpdHV0
ZVJlc291cmNlc0FmdGVyRGVsYXkoKTsKIH0KIAotdm9pZCBEb2N1bWVudExvYWRlcjo6YWRkUmVz
cG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcikKK3ZvaWQgRG9jdW1lbnRMb2FkZXI6OmFk
ZFJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIGlmICgh
bV9zdG9wUmVjb3JkaW5nUmVzcG9uc2VzKQotICAgICAgICBtX3Jlc3BvbnNlcy5hcHBlbmQocik7
CisgICAgICAgIG1fcmVzcG9uc2VzLmFwcGVuZChyZXNwb25zZSk7CiB9CiAKIHZvaWQgRG9jdW1l
bnRMb2FkZXI6OnN0b3BSZWNvcmRpbmdSZXNwb25zZXMoKQpAQCAtMTM0NCwyMSArMTI5MywxMSBA
QCBib29sIERvY3VtZW50TG9hZGVyOjp1cmxGb3JIaXN0b3J5UmVmbGVjdHNGYWlsdXJlKCkgY29u
c3QKICAgICByZXR1cm4gbV9zdWJzdGl0dXRlRGF0YS5pc1ZhbGlkKCkgfHwgbV9yZXNwb25zZS5o
dHRwU3RhdHVzQ29kZSgpID49IDQwMDsKIH0KIAotY29uc3QgVVJMJiBEb2N1bWVudExvYWRlcjo6
b3JpZ2luYWxVUkwoKSBjb25zdAotewotICAgIHJldHVybiBtX29yaWdpbmFsUmVxdWVzdENvcHku
dXJsKCk7Ci19Ci0KLWNvbnN0IFVSTCYgRG9jdW1lbnRMb2FkZXI6OnJlc3BvbnNlVVJMKCkgY29u
c3QKLXsKLSAgICByZXR1cm4gbV9yZXNwb25zZS51cmwoKTsKLX0KLQogVVJMIERvY3VtZW50TG9h
ZGVyOjpkb2N1bWVudFVSTCgpIGNvbnN0CiB7CiAgICAgVVJMIHVybCA9IHN1YnN0aXR1dGVEYXRh
KCkucmVzcG9uc2UoKS51cmwoKTsKICNpZiBFTkFCTEUoV0VCX0FSQ0hJVkUpCi0gICAgaWYgKHVy
bC5pc0VtcHR5KCkgJiYgbV9hcmNoaXZlICYmIG1fYXJjaGl2ZS0+dHlwZSgpID09IEFyY2hpdmU6
OldlYkFyY2hpdmUpCisgICAgaWYgKHVybC5pc0VtcHR5KCkgJiYgbV9hcmNoaXZlICYmIG1fYXJj
aGl2ZS0+c2hvdWxkVXNlTWFpblJlc291cmNlVVJMKCkpCiAgICAgICAgIHVybCA9IG1fYXJjaGl2
ZS0+bWFpblJlc291cmNlKCktPnVybCgpOwogI2VuZGlmCiAgICAgaWYgKHVybC5pc0VtcHR5KCkp
CkBAIC0xMzY4LDI4ICsxMzA3LDE1IEBAIFVSTCBEb2N1bWVudExvYWRlcjo6ZG9jdW1lbnRVUkwo
KSBjb25zdAogICAgIHJldHVybiB1cmw7CiB9CiAKLWNvbnN0IFN0cmluZyYgRG9jdW1lbnRMb2Fk
ZXI6OnJlc3BvbnNlTUlNRVR5cGUoKSBjb25zdAotewotICAgIHJldHVybiBtX3Jlc3BvbnNlLm1p
bWVUeXBlKCk7Ci19Ci0KLWNvbnN0IFN0cmluZyYgRG9jdW1lbnRMb2FkZXI6OmN1cnJlbnRDb250
ZW50VHlwZSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fd3JpdGVyLm1pbWVUeXBlKCk7Ci19Ci0K
ICNpZiBQTEFURk9STShJT1MpCisKIC8vIEZJWE1FOiBUaGlzIG1ldGhvZCBzZWVtcyB0byB2aW9s
YXRlIHRoZSBlbmNhcHN1bGF0aW9uIG9mIHRoaXMgY2xhc3MuCiB2b2lkIERvY3VtZW50TG9hZGVy
OjpzZXRSZXNwb25zZU1JTUVUeXBlKGNvbnN0IFN0cmluZyYgcmVzcG9uc2VNaW1lVHlwZSkKIHsK
ICAgICBtX3Jlc3BvbnNlLnNldE1pbWVUeXBlKHJlc3BvbnNlTWltZVR5cGUpOwogfQotI2VuZGlm
CiAKLWNvbnN0IFVSTCYgRG9jdW1lbnRMb2FkZXI6OnVucmVhY2hhYmxlVVJMKCkgY29uc3QKLXsK
LSAgICByZXR1cm4gbV9zdWJzdGl0dXRlRGF0YS5mYWlsaW5nVVJMKCk7Ci19CisjZW5kaWYKIAog
dm9pZCBEb2N1bWVudExvYWRlcjo6c2V0RGVmZXJzTG9hZGluZyhib29sIGRlZmVycykKIHsKQEAg
LTE2ODIsNyArMTYwOCw3IEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6OmdldEljb25Mb2FkRGVjaXNp
b25Gb3JJY29uVVJMKGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nKQogICAgIGlmIChtX2ljb25Mb2Fk
RGVjaXNpb25DYWxsYmFjaykKICAgICAgICAgbV9pY29uTG9hZERlY2lzaW9uQ2FsbGJhY2stPmlu
dmFsaWRhdGUoKTsKICAgICBtX2ljb25Mb2FkRGVjaXNpb25DYWxsYmFjayA9IEljb25Mb2FkRGVj
aXNpb25DYWxsYmFjazo6Y3JlYXRlKHRoaXMsIGljb25Mb2FkRGVjaXNpb25DYWxsYmFjayk7Ci0g
ICAgaWNvbkRhdGFiYXNlKCkubG9hZERlY2lzaW9uRm9ySWNvblVSTCh1cmxTdHJpbmcsIG1faWNv
bkxvYWREZWNpc2lvbkNhbGxiYWNrKTsKKyAgICBpY29uRGF0YWJhc2UoKS5sb2FkRGVjaXNpb25G
b3JJY29uVVJMKHVybFN0cmluZywgKm1faWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrKTsKIH0KIAog
dm9pZCBEb2N1bWVudExvYWRlcjo6Y29udGludWVJY29uTG9hZFdpdGhEZWNpc2lvbihJY29uTG9h
ZERlY2lzaW9uIGRlY2lzaW9uKQpAQCAtMTcwMyw3ICsxNjI5LDcgQEAgdm9pZCBEb2N1bWVudExv
YWRlcjo6Z2V0SWNvbkRhdGFGb3JJY29uVVJMKGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nKQogICAg
IGlmIChtX2ljb25EYXRhQ2FsbGJhY2spCiAgICAgICAgIG1faWNvbkRhdGFDYWxsYmFjay0+aW52
YWxpZGF0ZSgpOwogICAgIG1faWNvbkRhdGFDYWxsYmFjayA9IEljb25EYXRhQ2FsbGJhY2s6OmNy
ZWF0ZSh0aGlzLCBpY29uRGF0YUNhbGxiYWNrKTsKLSAgICBpY29uRGF0YWJhc2UoKS5pY29uRGF0
YUZvckljb25VUkwodXJsU3RyaW5nLCBtX2ljb25EYXRhQ2FsbGJhY2spOworICAgIGljb25EYXRh
YmFzZSgpLmljb25EYXRhRm9ySWNvblVSTCh1cmxTdHJpbmcsICptX2ljb25EYXRhQ2FsbGJhY2sp
OwogfQogCiB2b2lkIERvY3VtZW50TG9hZGVyOjpzdGFydEljb25Mb2FkaW5nKCkKQEAgLTE3NDks
NyArMTY3NSw3IEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6OmZpbmlzaGVkTG9hZGluZ0ljb24oSWNv
bkxvYWRlciYgbG9hZGVyLCBTaGFyZWRCdWZmZXIqIGJ1ZmZlCiB2b2lkIERvY3VtZW50TG9hZGVy
OjpkaXNwYXRjaE9ubG9hZEV2ZW50cygpCiB7CiAgICAgbV93YXNPbmxvYWREaXNwYXRjaGVkID0g
dHJ1ZTsKLSAgICBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5zdG9wRGVmZXJyaW5nRXZlbnRzKCk7
CisgICAgbV9hcHBsaWNhdGlvbkNhY2hlSG9zdC0+c3RvcERlZmVycmluZ0V2ZW50cygpOwogfQog
CiB2b2lkIERvY3VtZW50TG9hZGVyOjpzZXRUcmlnZ2VyaW5nQWN0aW9uKGNvbnN0IE5hdmlnYXRp
b25BY3Rpb24mIGFjdGlvbikKQEAgLTE3ODksMjMgKzE3MTUsMTggQEAgdm9pZCBEb2N1bWVudExv
YWRlcjo6YWRkUGVuZGluZ0NvbnRlbnRFeHRlbnNpb25EaXNwbGF5Tm9uZVNlbGVjdG9yKGNvbnN0
IFN0cmluZyYKIH0KICNlbmRpZgogCi0jaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQotQ29u
dGVudEZpbHRlciogRG9jdW1lbnRMb2FkZXI6OmNvbnRlbnRGaWx0ZXIoKSBjb25zdAotewotICAg
IHJldHVybiBtX2NvbnRlbnRGaWx0ZXIuZ2V0KCk7Ci19Ci0jZW5kaWYKLQogYm9vbCBEb2N1bWVu
dExvYWRlcjo6aXNBbHdheXNPbkxvZ2dpbmdBbGxvd2VkKCkgY29uc3QKIHsKLSAgICByZXR1cm4g
bV9mcmFtZSA/IG1fZnJhbWUtPmlzQWx3YXlzT25Mb2dnaW5nQWxsb3dlZCgpIDogdHJ1ZTsKKyAg
ICByZXR1cm4gIW1fZnJhbWUgfHwgbV9mcmFtZS0+aXNBbHdheXNPbkxvZ2dpbmdBbGxvd2VkKCk7
CiB9CiAKICNpZiBVU0UoUVVJQ0tfTE9PSykKKwogdm9pZCBEb2N1bWVudExvYWRlcjo6c2V0UXVp
Y2tMb29rSGFuZGxlKHN0ZDo6dW5pcXVlX3B0cjxRdWlja0xvb2tIYW5kbGU+IHF1aWNrTG9va0hh
bmRsZSkKIHsKICAgICBtX3F1aWNrTG9va0hhbmRsZSA9IFdURk1vdmUocXVpY2tMb29rSGFuZGxl
KTsKIH0KKwogI2VuZGlmCiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0RvY3VtZW50TG9hZGVyLmgKaW5kZXggZDcwYjM5Yjg2ZjgyYzA3MjNkMzJmYTZlODE1NjU5
MjQ4N2U2NjA5Mi4uODdlNGViNzYzYmFlYTFkZDY1ODUzNGQ4MmY5NDc5YWYwYzI4NTVlZiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmgKQEAgLTEsNSArMSw1IEBACiAvKgot
ICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgogICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CkBAIC03Niw4ICs3Niw3IEBAIGNsYXNzIFNoYXJlZEJ1ZmZl
cjsKIGNsYXNzIFN1YnJlc291cmNlTG9hZGVyOwogY2xhc3MgU3Vic3RpdHV0ZVJlc291cmNlOwog
Ci10eXBlZGVmIEhhc2hNYXA8dW5zaWduZWQgbG9uZywgUmVmUHRyPFJlc291cmNlTG9hZGVyPj4g
UmVzb3VyY2VMb2FkZXJNYXA7Ci10eXBlZGVmIFZlY3RvcjxSZXNvdXJjZVJlc3BvbnNlPiBSZXNw
b25zZVZlY3RvcjsKK3VzaW5nIFJlc291cmNlTG9hZGVyTWFwID0gSGFzaE1hcDx1bnNpZ25lZCBs
b25nLCBSZWZQdHI8UmVzb3VyY2VMb2FkZXI+PjsKIAogY2xhc3MgRG9jdW1lbnRMb2FkZXIgOiBw
dWJsaWMgUmVmQ291bnRlZDxEb2N1bWVudExvYWRlcj4sIHByaXZhdGUgQ2FjaGVkUmF3UmVzb3Vy
Y2VDbGllbnQgewogICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwpAQCAtMTUwLDE0ICsxNDks
MTUgQEAgcHVibGljOgogI2VuZGlmCiAKICNpZiBFTkFCTEUoV0VCX0FSQ0hJVkUpIHx8IEVOQUJM
RShNSFRNTCkKLSAgICB2b2lkIHNldEFyY2hpdmUoUGFzc1JlZlB0cjxBcmNoaXZlPik7Ci0gICAg
V0VCQ09SRV9FWFBPUlQgdm9pZCBhZGRBbGxBcmNoaXZlUmVzb3VyY2VzKEFyY2hpdmUqKTsKKyAg
ICB2b2lkIHNldEFyY2hpdmUoUmVmPEFyY2hpdmU+JiYpOworICAgIFdFQkNPUkVfRVhQT1JUIHZv
aWQgYWRkQWxsQXJjaGl2ZVJlc291cmNlcyhBcmNoaXZlJik7CiAgICAgV0VCQ09SRV9FWFBPUlQg
dm9pZCBhZGRBcmNoaXZlUmVzb3VyY2UoUmVmPEFyY2hpdmVSZXNvdXJjZT4mJik7Ci0gICAgUGFz
c1JlZlB0cjxBcmNoaXZlPiBwb3BBcmNoaXZlRm9yU3ViZnJhbWUoY29uc3QgU3RyaW5nJiBmcmFt
ZU5hbWUsIGNvbnN0IFVSTCYpOworICAgIFJlZlB0cjxBcmNoaXZlPiBwb3BBcmNoaXZlRm9yU3Vi
ZnJhbWUoY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IFVSTCYpOwogICAgIFdFQkNPUkVf
RVhQT1JUIFNoYXJlZEJ1ZmZlciogcGFyc2VkQXJjaGl2ZURhdGEoKSBjb25zdDsKIAogICAgIFdF
QkNPUkVfRVhQT1JUIGJvb2wgc2NoZWR1bGVBcmNoaXZlTG9hZChSZXNvdXJjZUxvYWRlciYsIGNv
bnN0IFJlc291cmNlUmVxdWVzdCYpOwogI2VuZGlmCisKICAgICB2b2lkIHNjaGVkdWxlU3Vic3Rp
dHV0ZVJlc291cmNlTG9hZChSZXNvdXJjZUxvYWRlciYsIFN1YnN0aXR1dGVSZXNvdXJjZSYpOwog
CiAgICAgLy8gUmV0dXJuIHRoZSBBcmNoaXZlUmVzb3VyY2UgZm9yIHRoZSBVUkwgb25seSB3aGVu
IGxvYWRpbmcgYW4gQXJjaGl2ZQpAQCAtMTY2LDkgKzE2NiwxMCBAQCBwdWJsaWM6CiAgICAgV0VC
Q09SRV9FWFBPUlQgUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gbWFpblJlc291cmNlKCkgY29uc3Q7
CiAKICAgICAvLyBSZXR1cm4gYW4gQXJjaGl2ZVJlc291cmNlIGZvciB0aGUgVVJMLCBlaXRoZXIg
Y3JlYXRpbmcgZnJvbSBsaXZlIGRhdGEgb3IKLSAgICAvLyBwdWxsaW5nIGZyb20gdGhlIEFyY2hp
dmVSZXNvdXJjZUNvbGxlY3Rpb24KLSAgICBXRUJDT1JFX0VYUE9SVCBQYXNzUmVmUHRyPEFyY2hp
dmVSZXNvdXJjZT4gc3VicmVzb3VyY2UoY29uc3QgVVJMJikgY29uc3Q7Ci0gICAgV0VCQ09SRV9F
WFBPUlQgVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+PiBzdWJyZXNvdXJjZXMoKSBjb25z
dDsKKyAgICAvLyBwdWxsaW5nIGZyb20gdGhlIEFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24uCisg
ICAgV0VCQ09SRV9FWFBPUlQgUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gc3VicmVzb3VyY2UoY29u
c3QgVVJMJikgY29uc3Q7CisKKyAgICBXRUJDT1JFX0VYUE9SVCBWZWN0b3I8UmVmPEFyY2hpdmVS
ZXNvdXJjZT4+IHN1YnJlc291cmNlcygpIGNvbnN0OwogCiAjaWZuZGVmIE5ERUJVRwogICAgIGJv
b2wgaXNTdWJzdGl0dXRlTG9hZFBlbmRpbmcoUmVzb3VyY2VMb2FkZXIqKSBjb25zdDsKQEAgLTE3
Niw3ICsxNzcsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBjYW5jZWxQZW5kaW5nU3Vic3RpdHV0ZUxv
YWQoUmVzb3VyY2VMb2FkZXIqKTsgICAKICAgICAKICAgICB2b2lkIGFkZFJlc3BvbnNlKGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICBjb25zdCBSZXNwb25zZVZlY3RvciYgcmVzcG9uc2Vz
KCkgY29uc3QgeyByZXR1cm4gbV9yZXNwb25zZXM7IH0KKyAgICBjb25zdCBWZWN0b3I8UmVzb3Vy
Y2VSZXNwb25zZT4mIHJlc3BvbnNlcygpIGNvbnN0IHsgcmV0dXJuIG1fcmVzcG9uc2VzOyB9CiAK
ICAgICBjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiB0cmlnZ2VyaW5nQWN0aW9uKCkgY29uc3QgeyBy
ZXR1cm4gbV90cmlnZ2VyaW5nQWN0aW9uOyB9CiAgICAgdm9pZCBzZXRUcmlnZ2VyaW5nQWN0aW9u
KGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mKTsKQEAgLTI0MCwxNyArMjQxLDcgQEAgcHVibGljOgog
CiAgICAgdm9pZCBzZXREZWZlck1haW5SZXNvdXJjZURhdGFMb2FkKGJvb2wgZGVmZXIpIHsgbV9k
ZWZlck1haW5SZXNvdXJjZURhdGFMb2FkID0gZGVmZXI7IH0KICAgICAKLSAgICB2b2lkIGRpZFRl
bGxDbGllbnRBYm91dExvYWQoY29uc3QgU3RyaW5nJiB1cmwpCi0gICAgeyAKLSNpZiAhUExBVEZP
Uk0oQ09DT0EpCi0gICAgICAgIC8vIERvbid0IGluY2x1ZGUgZGF0YSB1cmxzIGhlcmUsIGFzIGlm
IGEgbG90IG9mIGRhdGEgaXMgbG9hZGVkCi0gICAgICAgIC8vIHRoYXQgd2F5LCB3ZSBob2xkIG9u
IHRvIHRoZSAobGFyZ2UpIHVybCBzdHJpbmcgZm9yIHRvbyBsb25nLgotICAgICAgICBpZiAocHJv
dG9jb2xJcyh1cmwsICJkYXRhIikpCi0gICAgICAgICAgICByZXR1cm47Ci0jZW5kaWYKLSAgICAg
ICAgaWYgKCF1cmwuaXNFbXB0eSgpKQotICAgICAgICAgICAgbV9yZXNvdXJjZXNDbGllbnRLbm93
c0Fib3V0LmFkZCh1cmwpOwotICAgIH0KKyAgICB2b2lkIGRpZFRlbGxDbGllbnRBYm91dExvYWQo
Y29uc3QgU3RyaW5nJiB1cmwpOwogICAgIGJvb2wgaGF2ZVRvbGRDbGllbnRBYm91dExvYWQoY29u
c3QgU3RyaW5nJiB1cmwpIHsgcmV0dXJuIG1fcmVzb3VyY2VzQ2xpZW50S25vd3NBYm91dC5jb250
YWlucyh1cmwpOyB9CiAgICAgdm9pZCByZWNvcmRNZW1vcnlDYWNoZUxvYWRGb3JGdXR1cmVDbGll
bnROb3RpZmljYXRpb24oY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7CiAgICAgdm9pZCB0YWtlTWVt
b3J5Q2FjaGVMb2Fkc0ZvckNsaWVudE5vdGlmaWNhdGlvbihWZWN0b3I8UmVzb3VyY2VSZXF1ZXN0
PiYgbG9hZHMpOwpAQCAtMjU4LDExICsyNDksMTEgQEAgcHVibGljOgogICAgIExvYWRUaW1pbmcm
IHRpbWluZygpIHsgcmV0dXJuIG1fbG9hZFRpbWluZzsgfQogICAgIHZvaWQgcmVzZXRUaW1pbmco
KSB7IG1fbG9hZFRpbWluZyA9IExvYWRUaW1pbmcoKTsgfQogCi0gICAgLy8gVGhlIFdlYktpdCBs
YXllciBjYWxscyB0aGlzIGZ1bmN0aW9uIHdoZW4gaXQncyByZWFkeSBmb3IgdGhlIGRhdGEgdG8K
LSAgICAvLyBhY3R1YWxseSBiZSBhZGRlZCB0byB0aGUgZG9jdW1lbnQuCisgICAgLy8gVGhlIFdl
YktpdCBsYXllciBjYWxscyB0aGlzIGZ1bmN0aW9uIHdoZW4gaXQncyByZWFkeSBmb3IgdGhlIGRh
dGEgdG8gYWN0dWFsbHkgYmUgYWRkZWQgdG8gdGhlIGRvY3VtZW50LgogICAgIFdFQkNPUkVfRVhQ
T1JUIHZvaWQgY29tbWl0RGF0YShjb25zdCBjaGFyKiBieXRlcywgc2l6ZV90IGxlbmd0aCk7CiAK
LSAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdCogYXBwbGljYXRpb25DYWNoZUhvc3QoKSBjb25zdCB7
IHJldHVybiBtX2FwcGxpY2F0aW9uQ2FjaGVIb3N0LmdldCgpOyB9CisgICAgQXBwbGljYXRpb25D
YWNoZUhvc3QmIGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkgY29uc3Q7CisgICAgQXBwbGljYXRpb25D
YWNoZUhvc3QqIGFwcGxpY2F0aW9uQ2FjaGVIb3N0VW5sZXNzQmVpbmdEZXN0cm95ZWQoKSBjb25z
dDsKIAogICAgIHZvaWQgY2hlY2tMb2FkQ29tcGxldGUoKTsKIApAQCAtMjk3LDcgKzI4OCw3IEBA
IHByb3RlY3RlZDoKIAogICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgdm9pZCBhdHRhY2hUb0Zy
YW1lKCk7CiAKLSAgICBib29sIG1fZGVmZXJNYWluUmVzb3VyY2VEYXRhTG9hZDsKKyAgICBib29s
IG1fZGVmZXJNYWluUmVzb3VyY2VEYXRhTG9hZCB7IHRydWUgfTsKIAogcHJpdmF0ZToKICAgICBE
b2N1bWVudCogZG9jdW1lbnQoKSBjb25zdDsKQEAgLTM1OCw3ICszNDksNyBAQCBwcml2YXRlOgog
ICAgIHZvaWQgY2FuY2VsUG9saWN5Q2hlY2tJZk5lZWRlZCgpOwogICAgIHZvaWQgYmVjb21lTWFp
blJlc291cmNlQ2xpZW50KCk7CiAKLSAgICBGcmFtZSogbV9mcmFtZTsKKyAgICBGcmFtZSogbV9m
cmFtZSB7IG51bGxwdHIgfTsKICAgICBSZWY8Q2FjaGVkUmVzb3VyY2VMb2FkZXI+IG1fY2FjaGVk
UmVzb3VyY2VMb2FkZXI7CiAKICAgICBDYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRSYXdSZXNv
dXJjZT4gbV9tYWluUmVzb3VyY2U7CkBAIC0zOTAsMTUgKzM4MSwxNSBAQCBwcml2YXRlOgogICAg
IFJlc291cmNlRXJyb3IgbV9tYWluRG9jdW1lbnRFcnJvcjsgICAgCiAKICAgICBib29sIG1fb3Jp
Z2luYWxTdWJzdGl0dXRlRGF0YVdhc1ZhbGlkOwotICAgIGJvb2wgbV9jb21taXR0ZWQ7Ci0gICAg
Ym9vbCBtX2lzU3RvcHBpbmc7Ci0gICAgYm9vbCBtX2dvdEZpcnN0Qnl0ZTsKLSAgICBib29sIG1f
aXNDbGllbnRSZWRpcmVjdDsKLSAgICBib29sIG1faXNMb2FkaW5nTXVsdGlwYXJ0Q29udGVudDsK
KyAgICBib29sIG1fY29tbWl0dGVkIHsgZmFsc2UgfTsKKyAgICBib29sIG1faXNTdG9wcGluZyB7
IGZhbHNlIH07CisgICAgYm9vbCBtX2dvdEZpcnN0Qnl0ZSB7IGZhbHNlIH07CisgICAgYm9vbCBt
X2lzQ2xpZW50UmVkaXJlY3QgeyBmYWxzZSB9OworICAgIGJvb2wgbV9pc0xvYWRpbmdNdWx0aXBh
cnRDb250ZW50IHsgZmFsc2UgfTsKIAogICAgIC8vIEZJWE1FOiBEb2N1bWVudDo6bV9wcm9jZXNz
aW5nTG9hZEV2ZW50IGFuZCBEb2N1bWVudExvYWRlcjo6bV93YXNPbmxvYWREaXNwYXRjaGVkIGFy
ZSByb3VnaGx5IHRoZSBzYW1lCiAgICAgLy8gYW5kIHNob3VsZCBiZSBtZXJnZWQuCi0gICAgYm9v
bCBtX3dhc09ubG9hZERpc3BhdGNoZWQ7CisgICAgYm9vbCBtX3dhc09ubG9hZERpc3BhdGNoZWQg
eyBmYWxzZSB9OwogCiAgICAgU3RyaW5nV2l0aERpcmVjdGlvbiBtX3BhZ2VUaXRsZTsKIApAQCAt
NDE1LDggKzQwNiw4IEBAIHByaXZhdGU6CiAgICAgLy8gV2UgcmV0YWluIGFsbCB0aGUgcmVjZWl2
ZWQgcmVzcG9uc2VzIHNvIHdlIGNhbiBwbGF5IGJhY2sgdGhlCiAgICAgLy8gV2ViUmVzb3VyY2VM
b2FkRGVsZWdhdGUgbWVzc2FnZXMgaWYgdGhlIGl0ZW0gaXMgbG9hZGVkIGZyb20gdGhlCiAgICAg
Ly8gcGFnZSBjYWNoZS4KLSAgICBSZXNwb25zZVZlY3RvciBtX3Jlc3BvbnNlczsKLSAgICBib29s
IG1fc3RvcFJlY29yZGluZ1Jlc3BvbnNlczsKKyAgICBWZWN0b3I8UmVzb3VyY2VSZXNwb25zZT4g
bV9yZXNwb25zZXM7CisgICAgYm9vbCBtX3N0b3BSZWNvcmRpbmdSZXNwb25zZXMgeyBmYWxzZSB9
OwogICAgIAogICAgIHR5cGVkZWYgSGFzaE1hcDxSZWZQdHI8UmVzb3VyY2VMb2FkZXI+LCBSZWZQ
dHI8U3Vic3RpdHV0ZVJlc291cmNlPj4gU3Vic3RpdHV0ZVJlc291cmNlTWFwOwogICAgIFN1YnN0
aXR1dGVSZXNvdXJjZU1hcCBtX3BlbmRpbmdTdWJzdGl0dXRlUmVzb3VyY2VzOwpAQCAtNDMyLDEz
ICs0MjMsMTMgQEAgcHJpdmF0ZToKICAgICBWZWN0b3I8UmVzb3VyY2VSZXF1ZXN0PiBtX3Jlc291
cmNlc0xvYWRlZEZyb21NZW1vcnlDYWNoZUZvckNsaWVudE5vdGlmaWNhdGlvbjsKICAgICAKICAg
ICBTdHJpbmcgbV9jbGllbnRSZWRpcmVjdFNvdXJjZUZvckhpc3Rvcnk7Ci0gICAgYm9vbCBtX2Rp
ZENyZWF0ZUdsb2JhbEhpc3RvcnlFbnRyeTsKKyAgICBib29sIG1fZGlkQ3JlYXRlR2xvYmFsSGlz
dG9yeUVudHJ5IHsgZmFsc2UgfTsKIAotICAgIGJvb2wgbV9sb2FkaW5nTWFpblJlc291cmNlOwor
ICAgIGJvb2wgbV9sb2FkaW5nTWFpblJlc291cmNlIHsgZmFsc2UgfTsKICAgICBMb2FkVGltaW5n
IG1fbG9hZFRpbWluZzsKIAotICAgIGRvdWJsZSBtX3RpbWVPZkxhc3REYXRhUmVjZWl2ZWQ7Ci0g
ICAgdW5zaWduZWQgbG9uZyBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVy
OworICAgIGRvdWJsZSBtX3RpbWVPZkxhc3REYXRhUmVjZWl2ZWQgeyAwIH07CisgICAgdW5zaWdu
ZWQgbG9uZyBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyIHsgMCB9Owog
CiAgICAgRG9jdW1lbnRMb2FkZXJUaW1lciBtX2RhdGFMb2FkVGltZXI7CiAgICAgYm9vbCBtX3dh
aXRpbmdGb3JDb250ZW50UG9saWN5IHsgZmFsc2UgfTsKQEAgLTQ1Miw3ICs0NDMsNyBAQCBwcml2
YXRlOgogICAgIEhhc2hNYXA8dWludDY0X3QsIExpbmtJY29uPiBtX2ljb25zUGVuZGluZ0xvYWRE
ZWNpc2lvbjsKICAgICBIYXNoTWFwPHN0ZDo6dW5pcXVlX3B0cjxJY29uTG9hZGVyPiwgdWludDY0
X3Q+IG1faWNvbkxvYWRlcnM7CiAKLSAgICBib29sIG1fc3VicmVzb3VyY2VMb2FkZXJzQXJlUGFn
ZUNhY2hlQWNjZXB0YWJsZTsKKyAgICBib29sIG1fc3VicmVzb3VyY2VMb2FkZXJzQXJlUGFnZUNh
Y2hlQWNjZXB0YWJsZSB7IGZhbHNlIH07CiAgICAgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGlj
eSBtX3Nob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgeyBTaG91bGRPcGVuRXh0ZXJuYWxVUkxz
UG9saWN5OjpTaG91bGROb3RBbGxvdyB9OwogCiAgICAgc3RkOjp1bmlxdWVfcHRyPEFwcGxpY2F0
aW9uQ2FjaGVIb3N0PiBtX2FwcGxpY2F0aW9uQ2FjaGVIb3N0OwpAQCAtNDg3LDQgKzQ3OCw4NyBA
QCBpbmxpbmUgdm9pZCBEb2N1bWVudExvYWRlcjo6dGFrZU1lbW9yeUNhY2hlTG9hZHNGb3JDbGll
bnROb3RpZmljYXRpb24oVmVjdG9yPFJlcwogICAgIG1fcmVzb3VyY2VzTG9hZGVkRnJvbU1lbW9y
eUNhY2hlRm9yQ2xpZW50Tm90aWZpY2F0aW9uLmNsZWFyKCk7CiB9CiAKK2lubGluZSBjb25zdCBS
ZXNvdXJjZVJlcXVlc3QmIERvY3VtZW50TG9hZGVyOjpvcmlnaW5hbFJlcXVlc3QoKSBjb25zdAor
eworICAgIHJldHVybiBtX29yaWdpbmFsUmVxdWVzdDsKK30KKworaW5saW5lIGNvbnN0IFJlc291
cmNlUmVxdWVzdCYgRG9jdW1lbnRMb2FkZXI6Om9yaWdpbmFsUmVxdWVzdENvcHkoKSBjb25zdAor
eworICAgIHJldHVybiBtX29yaWdpbmFsUmVxdWVzdENvcHk7Cit9CisKK2lubGluZSBjb25zdCBS
ZXNvdXJjZVJlcXVlc3QmIERvY3VtZW50TG9hZGVyOjpyZXF1ZXN0KCkgY29uc3QKK3sKKyAgICBy
ZXR1cm4gbV9yZXF1ZXN0OworfQorCitpbmxpbmUgUmVzb3VyY2VSZXF1ZXN0JiBEb2N1bWVudExv
YWRlcjo6cmVxdWVzdCgpCit7CisgICAgcmV0dXJuIG1fcmVxdWVzdDsKK30KKworaW5saW5lIGNv
bnN0IFVSTCYgRG9jdW1lbnRMb2FkZXI6OnVybCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fcmVx
dWVzdC51cmwoKTsKK30KKworaW5saW5lIGNvbnN0IFVSTCYgRG9jdW1lbnRMb2FkZXI6Om9yaWdp
bmFsVVJMKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9vcmlnaW5hbFJlcXVlc3RDb3B5LnVybCgp
OworfQorCitpbmxpbmUgY29uc3QgVVJMJiBEb2N1bWVudExvYWRlcjo6cmVzcG9uc2VVUkwoKSBj
b25zdAoreworICAgIHJldHVybiBtX3Jlc3BvbnNlLnVybCgpOworfQorCitpbmxpbmUgY29uc3Qg
U3RyaW5nJiBEb2N1bWVudExvYWRlcjo6cmVzcG9uc2VNSU1FVHlwZSgpIGNvbnN0Cit7CisgICAg
cmV0dXJuIG1fcmVzcG9uc2UubWltZVR5cGUoKTsKK30KKworaW5saW5lIGNvbnN0IFN0cmluZyYg
RG9jdW1lbnRMb2FkZXI6OmN1cnJlbnRDb250ZW50VHlwZSgpIGNvbnN0Cit7CisgICAgcmV0dXJu
IG1fd3JpdGVyLm1pbWVUeXBlKCk7Cit9CisKK2lubGluZSBjb25zdCBVUkwmIERvY3VtZW50TG9h
ZGVyOjp1bnJlYWNoYWJsZVVSTCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fc3Vic3RpdHV0ZURh
dGEuZmFpbGluZ1VSTCgpOworfQorCitpbmxpbmUgQXBwbGljYXRpb25DYWNoZUhvc3QmIERvY3Vt
ZW50TG9hZGVyOjphcHBsaWNhdGlvbkNhY2hlSG9zdCgpIGNvbnN0Cit7CisgICAgLy8gRm9yIGEg
c2hvcnQgdGltZSB3aGlsZSB0aGUgZG9jdW1lbnQgbG9hZGVyIGlzIGJlaW5nIGRlc3Ryb3llZCwg
bV9hcHBsaWNhdGlvbkNhY2hlSG9zdCBpcyBudWxsLgorICAgIC8vIEl0J3Mgbm90IGFjY2VwdGFi
bGUgdG8gY2FsbCB0aGlzIGZ1bmN0aW9uIGR1cmluZyB0aGF0IHRpbWUuCisgICAgQVNTRVJUKG1f
YXBwbGljYXRpb25DYWNoZUhvc3QpOworICAgIHJldHVybiAqbV9hcHBsaWNhdGlvbkNhY2hlSG9z
dDsKK30KKworaW5saW5lIEFwcGxpY2F0aW9uQ2FjaGVIb3N0KiBEb2N1bWVudExvYWRlcjo6YXBw
bGljYXRpb25DYWNoZUhvc3RVbmxlc3NCZWluZ0Rlc3Ryb3llZCgpIGNvbnN0Cit7CisgICAgcmV0
dXJuIG1fYXBwbGljYXRpb25DYWNoZUhvc3QuZ2V0KCk7Cit9CisKKyNpZiBFTkFCTEUoQ09OVEVO
VF9GSUxURVJJTkcpCisKK2lubGluZSBDb250ZW50RmlsdGVyKiBEb2N1bWVudExvYWRlcjo6Y29u
dGVudEZpbHRlcigpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fY29udGVudEZpbHRlci5nZXQoKTsK
K30KKworI2VuZGlmCisKK2lubGluZSB2b2lkIERvY3VtZW50TG9hZGVyOjpkaWRUZWxsQ2xpZW50
QWJvdXRMb2FkKGNvbnN0IFN0cmluZyYgdXJsKQoreworI2lmICFQTEFURk9STShDT0NPQSkKKyAg
ICAvLyBEb24ndCBpbmNsdWRlIGRhdGEgVVJMcyBoZXJlLCBhcyBpZiBhIGxvdCBvZiBkYXRhIGlz
IGxvYWRlZCB0aGF0IHdheSwgd2UgaG9sZCBvbiB0byB0aGUgKGxhcmdlKSBVUkwgc3RyaW5nIGZv
ciB0b28gbG9uZy4KKyAgICBpZiAocHJvdG9jb2xJcyh1cmwsICJkYXRhIikpCisgICAgICAgIHJl
dHVybjsKKyNlbmRpZgorICAgIGlmICghdXJsLmlzRW1wdHkoKSkKKyAgICAgICAgbV9yZXNvdXJj
ZXNDbGllbnRLbm93c0Fib3V0LmFkZCh1cmwpOworfQorCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9F
bXB0eUNsaWVudHMuY3BwCmluZGV4IGUwZjZlNWIzZTM0YThhMWU4ZDMxNDljMDQyZTFkYTBhMzcz
ZDRkYTkuLmVlZmM0YWE4MzgzMTA0NDZlOTIxZDRmMTcyOTU4MmU4MjRjOGE1ZjIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuY3BwCkBAIC00Niw2ICs0Niw3IEBACiAjaW5jbHVk
ZSAiSFRNTEZvcm1FbGVtZW50LmgiCiAjaW5jbHVkZSAiSW5Qcm9jZXNzSURCU2VydmVyLmgiCiAj
aW5jbHVkZSAiSW5zcGVjdG9yQ2xpZW50LmgiCisjaW5jbHVkZSAiTmV0d29ya1N0b3JhZ2VTZXNz
aW9uLmgiCiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlBhZ2VDb25maWd1cmF0aW9uLmgi
CiAjaW5jbHVkZSAiUGF5bWVudENvb3JkaW5hdG9yQ2xpZW50LmgiCkBAIC0xNzEsOCArMTcyLDgg
QEAgcHJpdmF0ZToKICAgICB2b2lkIHJlcXVlc3RDYW5kaWRhdGVzRm9yU2VsZWN0aW9uKGNvbnN0
IFZpc2libGVTZWxlY3Rpb24mKSBmaW5hbCB7IH0KICAgICB2b2lkIGhhbmRsZUFjY2VwdGVkQ2Fu
ZGlkYXRlV2l0aFNvZnRTcGFjZXMoVGV4dENoZWNraW5nUmVzdWx0KSBmaW5hbCB7IH0KIAotICAg
IHZvaWQgcmVnaXN0ZXJVbmRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPikgZmluYWw7Ci0gICAg
dm9pZCByZWdpc3RlclJlZG9TdGVwKFBhc3NSZWZQdHI8VW5kb1N0ZXA+KSBmaW5hbDsKKyAgICB2
b2lkIHJlZ2lzdGVyVW5kb1N0ZXAoVW5kb1N0ZXAmKSBmaW5hbDsKKyAgICB2b2lkIHJlZ2lzdGVy
UmVkb1N0ZXAoVW5kb1N0ZXAmKSBmaW5hbDsKICAgICB2b2lkIGNsZWFyVW5kb1JlZG9PcGVyYXRp
b25zKCkgZmluYWwgeyB9CiAKICAgICBib29sIGNhbkNvcHlDdXQoRnJhbWUqLCBib29sIGRlZmF1
bHRWYWx1ZSkgY29uc3QgZmluYWwgeyByZXR1cm4gZGVmYXVsdFZhbHVlOyB9CkBAIC0zMzEsMTQg
KzMzMiwxNCBAQCBjbGFzcyBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50IGZpbmFsIDogcHVibGljIEZy
YW1lTG9hZGVyQ2xpZW50IHsKICAgICB2b2lkIGRpc3BhdGNoU2hvdygpIGZpbmFsIHsgfQogCiAg
ICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvclJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVz
cG9uc2UmLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBGcmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5h
bCB7IH0KLSAgICB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNv
bnN0IE5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRy
PEZvcm1TdGF0ZT4sIGNvbnN0IFN0cmluZyYsIEZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFsOwot
ICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5h
dmlnYXRpb25BY3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPEZvcm1T
dGF0ZT4sIEZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEZWNp
ZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0
IFJlc291cmNlUmVxdWVzdCYsIEZvcm1TdGF0ZSosIGNvbnN0IFN0cmluZyYsIEZyYW1lUG9saWN5
RnVuY3Rpb24pIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0
aW9uQWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
LCBGb3JtU3RhdGUqLCBGcmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsKICAgICB2b2lkIGNhbmNl
bFBvbGljeUNoZWNrKCkgZmluYWwgeyB9CiAKICAgICB2b2lkIGRpc3BhdGNoVW5hYmxlVG9JbXBs
ZW1lbnRQb2xpY3koY29uc3QgUmVzb3VyY2VFcnJvciYpIGZpbmFsIHsgfQogCi0gICAgdm9pZCBk
aXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoUGFzc1JlZlB0cjxGb3JtU3RhdGU+KSBmaW5hbDsK
LSAgICB2b2lkIGRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0oUGFzc1JlZlB0cjxGb3JtU3RhdGU+LCBG
cmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRTdWJt
aXRFdmVudChSZWY8Rm9ybVN0YXRlPiYmKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFN1
Ym1pdEZvcm0oRm9ybVN0YXRlJiwgRnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7CiAKICAgICB2
b2lkIHJldmVydFRvUHJvdmlzaW9uYWxTdGF0ZShEb2N1bWVudExvYWRlciopIGZpbmFsIHsgfQog
ICAgIHZvaWQgc2V0TWFpbkRvY3VtZW50RXJyb3IoRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNv
dXJjZUVycm9yJikgZmluYWwgeyB9CkBAIC00MTAsMTAgKzQxMSwxMCBAQCBjbGFzcyBFbXB0eUZy
YW1lTG9hZGVyQ2xpZW50IGZpbmFsIDogcHVibGljIEZyYW1lTG9hZGVyQ2xpZW50IHsKICAgICB2
b2lkIGRpZERpc3BsYXlJbnNlY3VyZUNvbnRlbnQoKSBmaW5hbCB7IH0KICAgICB2b2lkIGRpZFJ1
bkluc2VjdXJlQ29udGVudChTZWN1cml0eU9yaWdpbiosIGNvbnN0IFVSTCYpIGZpbmFsIHsgfQog
ICAgIHZvaWQgZGlkRGV0ZWN0WFNTKGNvbnN0IFVSTCYsIGJvb2wpIGZpbmFsIHsgfQotICAgIFJl
ZlB0cjxGcmFtZT4gY3JlYXRlRnJhbWUoY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiwgSFRNTEZy
YW1lT3duZXJFbGVtZW50KiwgY29uc3QgU3RyaW5nJiwgYm9vbCwgaW50LCBpbnQpIGZpbmFsOwot
ICAgIFJlZlB0cjxXaWRnZXQ+IGNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiwgSFRNTFBsdWdJ
bkVsZW1lbnQqLCBjb25zdCBVUkwmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFZlY3Rv
cjxTdHJpbmc+JiwgY29uc3QgU3RyaW5nJiwgYm9vbCkgZmluYWw7CisgICAgUmVmUHRyPEZyYW1l
PiBjcmVhdGVGcmFtZShjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmLCBIVE1MRnJhbWVPd25lckVs
ZW1lbnQmLCBjb25zdCBTdHJpbmcmLCBib29sLCBpbnQsIGludCkgZmluYWw7CisgICAgUmVmUHRy
PFdpZGdldD4gY3JlYXRlUGx1Z2luKGNvbnN0IEludFNpemUmLCBIVE1MUGx1Z0luRWxlbWVudCYs
IGNvbnN0IFVSTCYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFN0cmluZz4m
LCBjb25zdCBTdHJpbmcmLCBib29sKSBmaW5hbDsKICAgICB2b2lkIHJlY3JlYXRlUGx1Z2luKFdp
ZGdldCopIGZpbmFsOwotICAgIFBhc3NSZWZQdHI8V2lkZ2V0PiBjcmVhdGVKYXZhQXBwbGV0V2lk
Z2V0KGNvbnN0IEludFNpemUmLCBIVE1MQXBwbGV0RWxlbWVudCosIGNvbnN0IFVSTCYsIGNvbnN0
IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mKSBmaW5hbDsKKyAgICBSZWZQ
dHI8V2lkZ2V0PiBjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmLCBIVE1MQXBw
bGV0RWxlbWVudCYsIGNvbnN0IFVSTCYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgVmVj
dG9yPFN0cmluZz4mKSBmaW5hbDsKIAogICAgIE9iamVjdENvbnRlbnRUeXBlIG9iamVjdENvbnRl
bnRUeXBlKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYpIGZpbmFsIHsgcmV0dXJuIE9iamVjdENv
bnRlbnRUeXBlOjpOb25lOyB9CiAgICAgU3RyaW5nIG92ZXJyaWRlTWVkaWFUeXBlKCkgY29uc3Qg
ZmluYWwgeyByZXR1cm4geyB9OyB9CkBAIC00MzIsMTYgKzQzMywzNyBAQCBjbGFzcyBFbXB0eUZy
YW1lTG9hZGVyQ2xpZW50IGZpbmFsIDogcHVibGljIEZyYW1lTG9hZGVyQ2xpZW50IHsKICAgICBi
b29sIHNob3VsZENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nLCBj
b25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgdW5zaWduZWQgY2hhciosIHVuc2lnbmVkIGxv
bmcgbG9uZykgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQogI2VuZGlmCiAKLSAgICBQYXNzUmVmUHRy
PEZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkgZmluYWw7
CisgICAgUmVmPEZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0
KCkgZmluYWw7CiAKICNpZiBFTkFCTEUoUkVRVUVTVF9BVVRPQ09NUExFVEUpCi0gICAgdm9pZCBk
aWRSZXF1ZXN0QXV0b2NvbXBsZXRlKFBhc3NSZWZQdHI8Rm9ybVN0YXRlPikgZmluYWwgeyB9Cisg
ICAgdm9pZCBkaWRSZXF1ZXN0QXV0b2NvbXBsZXRlKFJlZjxGb3JtU3RhdGU+JiYpIGZpbmFsIHsg
fQogI2VuZGlmCiAKICAgICBib29sIGlzRW1wdHlGcmFtZUxvYWRlckNsaWVudCgpIGZpbmFsIHsg
cmV0dXJuIHRydWU7IH0KICAgICB2b2lkIHByZWZldGNoRE5TKGNvbnN0IFN0cmluZyYpIGZpbmFs
IHsgfQogfTsKIAorY2xhc3MgRW1wdHlGcmFtZU5ldHdvcmtpbmdDb250ZXh0IGZpbmFsIDogcHVi
bGljIEZyYW1lTmV0d29ya2luZ0NvbnRleHQgeworcHVibGljOgorICAgIHN0YXRpYyBSZWY8RW1w
dHlGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBjcmVhdGUoKSB7IHJldHVybiBhZG9wdFJlZigqbmV3
IEVtcHR5RnJhbWVOZXR3b3JraW5nQ29udGV4dCk7IH0KKworcHJpdmF0ZToKKyAgICBFbXB0eUZy
YW1lTmV0d29ya2luZ0NvbnRleHQoKTsKKworICAgIGJvb2wgc2hvdWxkQ2xlYXJSZWZlcnJlck9u
SFRUUFNUb0hUVFBSZWRpcmVjdCgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KKyAgICBOZXR3b3Jr
U3RvcmFnZVNlc3Npb24mIHN0b3JhZ2VTZXNzaW9uKCkgY29uc3QgZmluYWwgeyByZXR1cm4gTmV0
d29ya1N0b3JhZ2VTZXNzaW9uOjpkZWZhdWx0U3RvcmFnZVNlc3Npb24oKTsgfQorCisjaWYgUExB
VEZPUk0oQ09DT0EpCisgICAgYm9vbCBsb2NhbEZpbGVDb250ZW50U25pZmZpbmdFbmFibGVkKCkg
Y29uc3QgeyByZXR1cm4gZmFsc2U7IH0KKyAgICBTY2hlZHVsZVBhaXJIYXNoU2V0KiBzY2hlZHVs
ZWRSdW5Mb29wUGFpcnMoKSBjb25zdCB7IHJldHVybiBudWxscHRyOyB9CisgICAgUmV0YWluUHRy
PENGRGF0YVJlZj4gc291cmNlQXBwbGljYXRpb25BdWRpdERhdGEoKSBjb25zdCB7IHJldHVybiBu
dWxscHRyOyB9OworI2VuZGlmCisKKyNpZiBQTEFURk9STShDT0NPQSkgfHwgUExBVEZPUk0oV0lO
KQorICAgIFJlc291cmNlRXJyb3IgYmxvY2tlZEVycm9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYp
IGNvbnN0IGZpbmFsIHsgcmV0dXJuIHsgfTsgfQorI2VuZGlmCit9OworCiBjbGFzcyBFbXB0eUlu
c3BlY3RvckNsaWVudCBmaW5hbCA6IHB1YmxpYyBJbnNwZWN0b3JDbGllbnQgewogICAgIHZvaWQg
aW5zcGVjdGVkUGFnZURlc3Ryb3llZCgpIGZpbmFsIHsgfQogICAgIEluc3BlY3Rvcjo6RnJvbnRl
bmRDaGFubmVsKiBvcGVuTG9jYWxGcm9udGVuZChJbnNwZWN0b3JDb250cm9sbGVyKikgZmluYWwg
eyByZXR1cm4gbnVsbHB0cjsgfQpAQCAtNTY5LDIzICs1OTEsMjMgQEAgc3RkOjp1bmlxdWVfcHRy
PENvbG9yQ2hvb3Nlcj4gRW1wdHlDaHJvbWVDbGllbnQ6OmNyZWF0ZUNvbG9yQ2hvb3NlcihDb2xv
ckNob29zZXIKIAogI2VuZGlmCiAKLXZvaWQgRW1wdHlDaHJvbWVDbGllbnQ6OnJ1bk9wZW5QYW5l
bChGcmFtZSosIFBhc3NSZWZQdHI8RmlsZUNob29zZXI+KQordm9pZCBFbXB0eUNocm9tZUNsaWVu
dDo6cnVuT3BlblBhbmVsKEZyYW1lJiwgRmlsZUNob29zZXImKQogewogfQogCi12b2lkIEVtcHR5
RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9u
KGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVm
UHRyPEZvcm1TdGF0ZT4sIGNvbnN0IFN0cmluZyYsIEZyYW1lUG9saWN5RnVuY3Rpb24pCit2b2lk
IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93
QWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBG
b3JtU3RhdGUqLCBjb25zdCBTdHJpbmcmLCBGcmFtZVBvbGljeUZ1bmN0aW9uKQogewogfQogCi12
b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdh
dGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0
JiwgUGFzc1JlZlB0cjxGb3JtU3RhdGU+LCBGcmFtZVBvbGljeUZ1bmN0aW9uKQordm9pZCBFbXB0
eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rp
b24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIEZvcm1T
dGF0ZSosIEZyYW1lUG9saWN5RnVuY3Rpb24pCiB7CiB9CiAKLXZvaWQgRW1wdHlGcmFtZUxvYWRl
ckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFBhc3NSZWZQdHI8Rm9ybVN0YXRl
PikKK3ZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2
ZW50KFJlZjxGb3JtU3RhdGU+JiYpCiB7CiB9CiAKLXZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVu
dDo6ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIEZyYW1lUG9s
aWN5RnVuY3Rpb24pCit2b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFN1
Ym1pdEZvcm0oRm9ybVN0YXRlJiwgRnJhbWVQb2xpY3lGdW5jdGlvbikKIHsKIH0KIApAQCAtNTk0
LDEyICs2MTYsMTIgQEAgUmVmPERvY3VtZW50TG9hZGVyPiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50
OjpjcmVhdGVEb2N1bWVudExvYWRlcihjb25zdCBSZXNvdXJjZVIKICAgICByZXR1cm4gRG9jdW1l
bnRMb2FkZXI6OmNyZWF0ZShyZXF1ZXN0LCBzdWJzdGl0dXRlRGF0YSk7CiB9CiAKLVJlZlB0cjxG
cmFtZT4gRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlRnJhbWUoY29uc3QgVVJMJiwgY29u
c3QgU3RyaW5nJiwgSFRNTEZyYW1lT3duZXJFbGVtZW50KiwgY29uc3QgU3RyaW5nJiwgYm9vbCwg
aW50LCBpbnQpCitSZWZQdHI8RnJhbWU+IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZy
YW1lKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYsIEhUTUxGcmFtZU93bmVyRWxlbWVudCYsIGNv
bnN0IFN0cmluZyYsIGJvb2wsIGludCwgaW50KQogewogICAgIHJldHVybiBudWxscHRyOwogfQog
Ci1SZWZQdHI8V2lkZ2V0PiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29u
c3QgSW50U2l6ZSYsIEhUTUxQbHVnSW5FbGVtZW50KiwgY29uc3QgVVJMJiwgY29uc3QgVmVjdG9y
PFN0cmluZz4mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFN0cmluZyYsIGJvb2wpCitS
ZWZQdHI8V2lkZ2V0PiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3Qg
SW50U2l6ZSYsIEhUTUxQbHVnSW5FbGVtZW50JiwgY29uc3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0
cmluZz4mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFN0cmluZyYsIGJvb2wpCiB7CiAg
ICAgcmV0dXJuIG51bGxwdHI7CiB9CkBAIC02MDgsMjUgKzYzMCwzMCBAQCB2b2lkIEVtcHR5RnJh
bWVMb2FkZXJDbGllbnQ6OnJlY3JlYXRlUGx1Z2luKFdpZGdldCopCiB7CiB9CiAKLVBhc3NSZWZQ
dHI8V2lkZ2V0PiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0
KGNvbnN0IEludFNpemUmLCBIVE1MQXBwbGV0RWxlbWVudCosIGNvbnN0IFVSTCYsIGNvbnN0IFZl
Y3RvcjxTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mKQorUmVmUHRyPFdpZGdldD4gRW1w
dHlGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXpl
JiwgSFRNTEFwcGxldEVsZW1lbnQmLCBjb25zdCBVUkwmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYs
IGNvbnN0IFZlY3RvcjxTdHJpbmc+JikKIHsKICAgICByZXR1cm4gbnVsbHB0cjsKIH0KIAotUGFz
c1JlZlB0cjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojpj
cmVhdGVOZXR3b3JraW5nQ29udGV4dCgpCitpbmxpbmUgRW1wdHlGcmFtZU5ldHdvcmtpbmdDb250
ZXh0OjpFbXB0eUZyYW1lTmV0d29ya2luZ0NvbnRleHQoKQorICAgIDogRnJhbWVOZXR3b3JraW5n
Q29udGV4dCB7IG51bGxwdHIgfQoreworfQorCitSZWY8RnJhbWVOZXR3b3JraW5nQ29udGV4dD4g
RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKQogewotICAg
IHJldHVybiBQYXNzUmVmUHRyPEZyYW1lTmV0d29ya2luZ0NvbnRleHQ+KCk7CisgICAgcmV0dXJu
IEVtcHR5RnJhbWVOZXR3b3JraW5nQ29udGV4dDo6Y3JlYXRlKCk7CiB9CiAKIHZvaWQgRW1wdHlF
ZGl0b3JDbGllbnQ6OkVtcHR5VGV4dENoZWNrZXJDbGllbnQ6OnJlcXVlc3RDaGVja2luZ09mU3Ry
aW5nKFRleHRDaGVja2luZ1JlcXVlc3QmLCBjb25zdCBWaXNpYmxlU2VsZWN0aW9uJikKIHsKIH0K
IAotdm9pZCBFbXB0eUVkaXRvckNsaWVudDo6cmVnaXN0ZXJVbmRvU3RlcChQYXNzUmVmUHRyPFVu
ZG9TdGVwPikKK3ZvaWQgRW1wdHlFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb1N0ZXAoVW5kb1N0
ZXAmKQogewogfQogCi12b2lkIEVtcHR5RWRpdG9yQ2xpZW50OjpyZWdpc3RlclJlZG9TdGVwKFBh
c3NSZWZQdHI8VW5kb1N0ZXA+KQordm9pZCBFbXB0eUVkaXRvckNsaWVudDo6cmVnaXN0ZXJSZWRv
U3RlcChVbmRvU3RlcCYpCiB7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9FbXB0eUNsaWVudHMuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuaApp
bmRleCAxYTFkNTNjMzc0MDhhYjk5YzYwZGYwZTJmN2Q4MmE0MWMxYWVkNjY5Li44ZjI1MmJhNzky
ZjcxMTk3ZDA5MTA5MjZjODQwYTI5MDg1YWQxMDM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvRW1wdHlDbGllbnRzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5
Q2xpZW50cy5oCkBAIC0xMzgsNyArMTM4LDcgQEAgY2xhc3MgRW1wdHlDaHJvbWVDbGllbnQgOiBw
dWJsaWMgQ2hyb21lQ2xpZW50IHsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8Q29sb3JDaG9vc2VyPiBj
cmVhdGVDb2xvckNob29zZXIoQ29sb3JDaG9vc2VyQ2xpZW50KiwgY29uc3QgQ29sb3ImKSBmaW5h
bDsKICNlbmRpZgogCi0gICAgdm9pZCBydW5PcGVuUGFuZWwoRnJhbWUqLCBQYXNzUmVmUHRyPEZp
bGVDaG9vc2VyPikgZmluYWw7CisgICAgdm9pZCBydW5PcGVuUGFuZWwoRnJhbWUmLCBGaWxlQ2hv
b3NlciYpIGZpbmFsOwogICAgIHZvaWQgbG9hZEljb25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8U3Ry
aW5nPiYsIEZpbGVJY29uTG9hZGVyJikgZmluYWwgeyB9CiAKICAgICB2b2lkIGVsZW1lbnREaWRG
b2N1cyhjb25zdCBOb2RlKikgZmluYWwgeyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvRm9ybVN0YXRlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3RhdGUuY3Bw
CmluZGV4IDM1MTBiODAyNWRkZmMzNTE2MzhlMDMwNjA2ZmFkNjA0NWNjOTUxOTYuLjVlODk2ZTdm
ODUyZjk2ZTI1NDBlZDhkNGQxNTE3NjJiNmI0MGQ5MTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9Gb3JtU3RhdGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3Jt
U3RhdGUuY3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNiwgMjAw
OSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYt
MjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKQEAgLTM0LDE3ICszNCwxNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
LWlubGluZSBGb3JtU3RhdGU6OkZvcm1TdGF0ZShQYXNzUmVmUHRyPEhUTUxGb3JtRWxlbWVudD4g
Zm9ybSwgU3RyaW5nUGFpclZlY3RvciYgdGV4dEZpZWxkVmFsdWVzVG9BZG9wdCwgUGFzc1JlZlB0
cjxEb2N1bWVudD4gc291cmNlRG9jdW1lbnQsIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciBmb3JtU3Vi
bWlzc2lvblRyaWdnZXIpCitpbmxpbmUgRm9ybVN0YXRlOjpGb3JtU3RhdGUoSFRNTEZvcm1FbGVt
ZW50JiBmb3JtLCBTdHJpbmdQYWlyVmVjdG9yJiYgdGV4dEZpZWxkVmFsdWVzLCBEb2N1bWVudCYg
c291cmNlRG9jdW1lbnQsIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciBmb3JtU3VibWlzc2lvblRyaWdn
ZXIpCiAgICAgOiBtX2Zvcm0oZm9ybSkKKyAgICAsIG1fdGV4dEZpZWxkVmFsdWVzKFdURk1vdmUo
dGV4dEZpZWxkVmFsdWVzKSkKICAgICAsIG1fc291cmNlRG9jdW1lbnQoc291cmNlRG9jdW1lbnQp
CiAgICAgLCBtX2Zvcm1TdWJtaXNzaW9uVHJpZ2dlcihmb3JtU3VibWlzc2lvblRyaWdnZXIpCiB7
Ci0gICAgbV90ZXh0RmllbGRWYWx1ZXMuc3dhcCh0ZXh0RmllbGRWYWx1ZXNUb0Fkb3B0KTsKIH0K
IAotUmVmPEZvcm1TdGF0ZT4gRm9ybVN0YXRlOjpjcmVhdGUoUGFzc1JlZlB0cjxIVE1MRm9ybUVs
ZW1lbnQ+IGZvcm0sIFN0cmluZ1BhaXJWZWN0b3ImIHRleHRGaWVsZFZhbHVlc1RvQWRvcHQsIFBh
c3NSZWZQdHI8RG9jdW1lbnQ+IHNvdXJjZURvY3VtZW50LCBGb3JtU3VibWlzc2lvblRyaWdnZXIg
Zm9ybVN1Ym1pc3Npb25UcmlnZ2VyKQorUmVmPEZvcm1TdGF0ZT4gRm9ybVN0YXRlOjpjcmVhdGUo
SFRNTEZvcm1FbGVtZW50JiBmb3JtLCBTdHJpbmdQYWlyVmVjdG9yJiYgdGV4dEZpZWxkVmFsdWVz
LCBEb2N1bWVudCYgc291cmNlRG9jdW1lbnQsIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciBmb3JtU3Vi
bWlzc2lvblRyaWdnZXIpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRm9ybVN0YXRlKGZv
cm0sIHRleHRGaWVsZFZhbHVlc1RvQWRvcHQsIHNvdXJjZURvY3VtZW50LCBmb3JtU3VibWlzc2lv
blRyaWdnZXIpKTsKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGb3JtU3RhdGUoZm9ybSwgV1RG
TW92ZSh0ZXh0RmllbGRWYWx1ZXMpLCBzb3VyY2VEb2N1bWVudCwgZm9ybVN1Ym1pc3Npb25Ucmln
Z2VyKSk7CiB9CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3Rh
dGUuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3RhdGUuaAppbmRleCA5NTA0MGY5YzI4
ZDQ3OTNiYjE1ZjhmZjM3YTBiNjI0ZDI4YmQ4Y2Y3Li4yZGVkZDA5YmU1MmIwYWZjOTcwMjgzYTEx
NGNjZjAzNGY3YjY1ZmFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN0
YXRlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdGF0ZS5oCkBAIC0xLDUgKzEs
NSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNiwgMjAwOSBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTI4LDM3
ICsyOCwzMyBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+
CiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAotICAgIGNsYXNzIERvY3VtZW50OwotICAgIGNsYXNzIEhUTUxGb3JtRWxlbWVudDsKK2NsYXNz
IERvY3VtZW50OworY2xhc3MgSFRNTEZvcm1FbGVtZW50OwogCi0gICAgZW51bSBGb3JtU3VibWlz
c2lvblRyaWdnZXIgewotICAgICAgICBTdWJtaXR0ZWRCeUphdmFTY3JpcHQsCi0gICAgICAgIE5v
dFN1Ym1pdHRlZEJ5SmF2YVNjcmlwdAotICAgIH07Ci0gICAgCi0gICAgdHlwZWRlZiBWZWN0b3I8
c3RkOjpwYWlyPFN0cmluZywgU3RyaW5nPj4gU3RyaW5nUGFpclZlY3RvcjsKK2VudW0gRm9ybVN1
Ym1pc3Npb25UcmlnZ2VyIHsgU3VibWl0dGVkQnlKYXZhU2NyaXB0LCBOb3RTdWJtaXR0ZWRCeUph
dmFTY3JpcHQgfTsKIAotICAgIGNsYXNzIEZvcm1TdGF0ZSA6IHB1YmxpYyBSZWZDb3VudGVkPEZv
cm1TdGF0ZT4gewotICAgIHB1YmxpYzoKLSAgICAgICAgc3RhdGljIFJlZjxGb3JtU3RhdGU+IGNy
ZWF0ZShQYXNzUmVmUHRyPEhUTUxGb3JtRWxlbWVudD4sIFN0cmluZ1BhaXJWZWN0b3ImIHRleHRG
aWVsZFZhbHVlc1RvQWRvcHQsIFBhc3NSZWZQdHI8RG9jdW1lbnQ+LCBGb3JtU3VibWlzc2lvblRy
aWdnZXIpOwordXNpbmcgU3RyaW5nUGFpclZlY3RvciA9IFZlY3RvcjxzdGQ6OnBhaXI8U3RyaW5n
LCBTdHJpbmc+PjsKIAotICAgICAgICBIVE1MRm9ybUVsZW1lbnQqIGZvcm0oKSBjb25zdCB7IHJl
dHVybiBtX2Zvcm0uZ2V0KCk7IH0KLSAgICAgICAgY29uc3QgU3RyaW5nUGFpclZlY3RvciYgdGV4
dEZpZWxkVmFsdWVzKCkgY29uc3QgeyByZXR1cm4gbV90ZXh0RmllbGRWYWx1ZXM7IH0KLSAgICAg
ICAgRG9jdW1lbnQqIHNvdXJjZURvY3VtZW50KCkgY29uc3QgeyByZXR1cm4gbV9zb3VyY2VEb2N1
bWVudC5nZXQoKTsgfQotICAgICAgICBGb3JtU3VibWlzc2lvblRyaWdnZXIgZm9ybVN1Ym1pc3Np
b25UcmlnZ2VyKCkgY29uc3QgeyByZXR1cm4gbV9mb3JtU3VibWlzc2lvblRyaWdnZXI7IH0KK2Ns
YXNzIEZvcm1TdGF0ZSA6IHB1YmxpYyBSZWZDb3VudGVkPEZvcm1TdGF0ZT4geworcHVibGljOgor
ICAgIHN0YXRpYyBSZWY8Rm9ybVN0YXRlPiBjcmVhdGUoSFRNTEZvcm1FbGVtZW50JiwgU3RyaW5n
UGFpclZlY3RvciYmIHRleHRGaWVsZFZhbHVlcywgRG9jdW1lbnQmLCBGb3JtU3VibWlzc2lvblRy
aWdnZXIpOwogCi0gICAgcHJpdmF0ZToKLSAgICAgICAgRm9ybVN0YXRlKFBhc3NSZWZQdHI8SFRN
TEZvcm1FbGVtZW50PiwgU3RyaW5nUGFpclZlY3RvciYgdGV4dEZpZWxkVmFsdWVzVG9BZG9wdCwg
UGFzc1JlZlB0cjxEb2N1bWVudD4sIEZvcm1TdWJtaXNzaW9uVHJpZ2dlcik7CisgICAgSFRNTEZv
cm1FbGVtZW50JiBmb3JtKCkgY29uc3QgeyByZXR1cm4gbV9mb3JtOyB9CisgICAgY29uc3QgU3Ry
aW5nUGFpclZlY3RvciYgdGV4dEZpZWxkVmFsdWVzKCkgY29uc3QgeyByZXR1cm4gbV90ZXh0Rmll
bGRWYWx1ZXM7IH0KKyAgICBEb2N1bWVudCYgc291cmNlRG9jdW1lbnQoKSBjb25zdCB7IHJldHVy
biBtX3NvdXJjZURvY3VtZW50OyB9CisgICAgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIGZvcm1TdWJt
aXNzaW9uVHJpZ2dlcigpIGNvbnN0IHsgcmV0dXJuIG1fZm9ybVN1Ym1pc3Npb25UcmlnZ2VyOyB9
CiAKLSAgICAgICAgUmVmUHRyPEhUTUxGb3JtRWxlbWVudD4gbV9mb3JtOwotICAgICAgICBTdHJp
bmdQYWlyVmVjdG9yIG1fdGV4dEZpZWxkVmFsdWVzOwotICAgICAgICBSZWZQdHI8RG9jdW1lbnQ+
IG1fc291cmNlRG9jdW1lbnQ7Ci0gICAgICAgIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciBtX2Zvcm1T
dWJtaXNzaW9uVHJpZ2dlcjsKLSAgICB9OworcHJpdmF0ZToKKyAgICBGb3JtU3RhdGUoSFRNTEZv
cm1FbGVtZW50JiwgU3RyaW5nUGFpclZlY3RvciYmIHRleHRGaWVsZFZhbHVlcywgRG9jdW1lbnQm
LCBGb3JtU3VibWlzc2lvblRyaWdnZXIpOworCisgICAgUmVmPEhUTUxGb3JtRWxlbWVudD4gbV9m
b3JtOworICAgIFN0cmluZ1BhaXJWZWN0b3IgbV90ZXh0RmllbGRWYWx1ZXM7CisgICAgUmVmPERv
Y3VtZW50PiBtX3NvdXJjZURvY3VtZW50OworICAgIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciBtX2Zv
cm1TdWJtaXNzaW9uVHJpZ2dlcjsKK307CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3VibWlzc2lvbi5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvRm9ybVN1Ym1pc3Npb24uY3BwCmluZGV4IDIwYWFmNGM0YzcyN2FmNjky
Yjc5OGUyNjk2NWZiOTQwNDc4NmM5YjIuLjc3MDczNDNjNWMyMzc1OTc5N2JiY2JmMDQxNTM5MjMw
Mzc5Zjc5YzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3VibWlzc2lv
bi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdWJtaXNzaW9uLmNwcApAQCAt
MTA2LDcgKzEwNiw3IEBAIHZvaWQgRm9ybVN1Ym1pc3Npb246OkF0dHJpYnV0ZXM6OnVwZGF0ZUVu
Y29kaW5nVHlwZShjb25zdCBTdHJpbmcmIHR5cGUpCiAKIEZvcm1TdWJtaXNzaW9uOjpNZXRob2Qg
Rm9ybVN1Ym1pc3Npb246OkF0dHJpYnV0ZXM6OnBhcnNlTWV0aG9kVHlwZShjb25zdCBTdHJpbmcm
IHR5cGUpCiB7Ci0gICAgcmV0dXJuIGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHR5cGUs
ICJwb3N0IikgPyBGb3JtU3VibWlzc2lvbjo6UG9zdE1ldGhvZCA6IEZvcm1TdWJtaXNzaW9uOjpH
ZXRNZXRob2Q7CisgICAgcmV0dXJuIGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHR5cGUs
ICJwb3N0IikgPyBGb3JtU3VibWlzc2lvbjo6TWV0aG9kOjpQb3N0IDogRm9ybVN1Ym1pc3Npb246
Ok1ldGhvZDo6R2V0OwogfQogCiB2b2lkIEZvcm1TdWJtaXNzaW9uOjpBdHRyaWJ1dGVzOjp1cGRh
dGVNZXRob2RUeXBlKGNvbnN0IFN0cmluZyYgdHlwZSkKQEAgLTExNCwyNCArMTE0LDEzIEBAIHZv
aWQgRm9ybVN1Ym1pc3Npb246OkF0dHJpYnV0ZXM6OnVwZGF0ZU1ldGhvZFR5cGUoY29uc3QgU3Ry
aW5nJiB0eXBlKQogICAgIG1fbWV0aG9kID0gcGFyc2VNZXRob2RUeXBlKHR5cGUpOwogfQogCi12
b2lkIEZvcm1TdWJtaXNzaW9uOjpBdHRyaWJ1dGVzOjpjb3B5RnJvbShjb25zdCBBdHRyaWJ1dGVz
JiBvdGhlcikKLXsKLSAgICBtX21ldGhvZCA9IG90aGVyLm1fbWV0aG9kOwotICAgIG1faXNNdWx0
aVBhcnRGb3JtID0gb3RoZXIubV9pc011bHRpUGFydEZvcm07Ci0KLSAgICBtX2FjdGlvbiA9IG90
aGVyLm1fYWN0aW9uOwotICAgIG1fdGFyZ2V0ID0gb3RoZXIubV90YXJnZXQ7Ci0gICAgbV9lbmNv
ZGluZ1R5cGUgPSBvdGhlci5tX2VuY29kaW5nVHlwZTsKLSAgICBtX2FjY2VwdENoYXJzZXQgPSBv
dGhlci5tX2FjY2VwdENoYXJzZXQ7Ci19Ci0KLWlubGluZSBGb3JtU3VibWlzc2lvbjo6Rm9ybVN1
Ym1pc3Npb24oTWV0aG9kIG1ldGhvZCwgY29uc3QgVVJMJiBhY3Rpb24sIGNvbnN0IFN0cmluZyYg
dGFyZ2V0LCBjb25zdCBTdHJpbmcmIGNvbnRlbnRUeXBlLCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4g
c3RhdGUsIFBhc3NSZWZQdHI8Rm9ybURhdGE+IGRhdGEsIGNvbnN0IFN0cmluZyYgYm91bmRhcnks
IExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBQYXNzUmVmUHRyPEV2ZW50PiBldmVudCkKK2lubGlu
ZSBGb3JtU3VibWlzc2lvbjo6Rm9ybVN1Ym1pc3Npb24oTWV0aG9kIG1ldGhvZCwgY29uc3QgVVJM
JiBhY3Rpb24sIGNvbnN0IFN0cmluZyYgdGFyZ2V0LCBjb25zdCBTdHJpbmcmIGNvbnRlbnRUeXBl
LCBSZWY8Rm9ybVN0YXRlPiYmIHN0YXRlLCBSZWY8Rm9ybURhdGE+JiYgZGF0YSwgY29uc3QgU3Ry
aW5nJiBib3VuZGFyeSwgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnksIEV2ZW50KiBldmVudCkKICAg
ICA6IG1fbWV0aG9kKG1ldGhvZCkKICAgICAsIG1fYWN0aW9uKGFjdGlvbikKICAgICAsIG1fdGFy
Z2V0KHRhcmdldCkKICAgICAsIG1fY29udGVudFR5cGUoY29udGVudFR5cGUpCi0gICAgLCBtX2Zv
cm1TdGF0ZShzdGF0ZSkKLSAgICAsIG1fZm9ybURhdGEoZGF0YSkKKyAgICAsIG1fZm9ybVN0YXRl
KFdURk1vdmUoc3RhdGUpKQorICAgICwgbV9mb3JtRGF0YShXVEZNb3ZlKGRhdGEpKQogICAgICwg
bV9ib3VuZGFyeShib3VuZGFyeSkKICAgICAsIG1fbG9ja0hpc3RvcnkobG9ja0hpc3RvcnkpCiAg
ICAgLCBtX2V2ZW50KGV2ZW50KQpAQCAtMTU1LDEwICsxNDQsOCBAQCBzdGF0aWMgVGV4dEVuY29k
aW5nIGVuY29kaW5nRnJvbUFjY2VwdENoYXJzZXQoY29uc3QgU3RyaW5nJiBhY2NlcHRDaGFyc2V0
LCBEb2N1bQogICAgIHJldHVybiBkb2N1bWVudC50ZXh0RW5jb2RpbmcoKTsKIH0KIAotUmVmPEZv
cm1TdWJtaXNzaW9uPiBGb3JtU3VibWlzc2lvbjo6Y3JlYXRlKEhUTUxGb3JtRWxlbWVudCogZm9y
bSwgY29uc3QgQXR0cmlidXRlcyYgYXR0cmlidXRlcywgUGFzc1JlZlB0cjxFdmVudD4gZXZlbnQs
IExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBGb3JtU3VibWlzc2lvblRyaWdnZXIgdHJpZ2dlcikK
K1JlZjxGb3JtU3VibWlzc2lvbj4gRm9ybVN1Ym1pc3Npb246OmNyZWF0ZShIVE1MRm9ybUVsZW1l
bnQmIGZvcm0sIGNvbnN0IEF0dHJpYnV0ZXMmIGF0dHJpYnV0ZXMsIEV2ZW50KiBldmVudCwgTG9j
a0hpc3RvcnkgbG9ja0hpc3RvcnksIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciB0cmlnZ2VyKQogewot
ICAgIEFTU0VSVChmb3JtKTsKLQogICAgIEhUTUxGb3JtQ29udHJvbEVsZW1lbnQqIHN1Ym1pdEJ1
dHRvbiA9IG51bGxwdHI7CiAgICAgaWYgKGV2ZW50ICYmIGV2ZW50LT50YXJnZXQoKSkgewogICAg
ICAgICBmb3IgKE5vZGUqIG5vZGUgPSBldmVudC0+dGFyZ2V0KCktPnRvTm9kZSgpOyBub2RlOyBu
b2RlID0gbm9kZS0+cGFyZW50Tm9kZSgpKSB7CkBAIC0xNjksOCArMTU2LDcgQEAgUmVmPEZvcm1T
dWJtaXNzaW9uPiBGb3JtU3VibWlzc2lvbjo6Y3JlYXRlKEhUTUxGb3JtRWxlbWVudCogZm9ybSwg
Y29uc3QgQXR0cmlidXQKICAgICAgICAgfQogICAgIH0KIAotICAgIEZvcm1TdWJtaXNzaW9uOjpB
dHRyaWJ1dGVzIGNvcGllZEF0dHJpYnV0ZXM7Ci0gICAgY29waWVkQXR0cmlidXRlcy5jb3B5RnJv
bShhdHRyaWJ1dGVzKTsKKyAgICBhdXRvIGNvcGllZEF0dHJpYnV0ZXMgPSBhdHRyaWJ1dGVzOwog
ICAgIGlmIChzdWJtaXRCdXR0b24pIHsKICAgICAgICAgQXRvbWljU3RyaW5nIGF0dHJpYnV0ZVZh
bHVlOwogICAgICAgICBpZiAoIShhdHRyaWJ1dGVWYWx1ZSA9IHN1Ym1pdEJ1dHRvbi0+YXR0cmli
dXRlV2l0aG91dFN5bmNocm9uaXphdGlvbihmb3JtYWN0aW9uQXR0cikpLmlzTnVsbCgpKQpAQCAt
MTgzLDE1ICsxNjksMTUgQEAgUmVmPEZvcm1TdWJtaXNzaW9uPiBGb3JtU3VibWlzc2lvbjo6Y3Jl
YXRlKEhUTUxGb3JtRWxlbWVudCogZm9ybSwgY29uc3QgQXR0cmlidXQKICAgICAgICAgICAgIGNv
cGllZEF0dHJpYnV0ZXMuc2V0VGFyZ2V0KGF0dHJpYnV0ZVZhbHVlKTsKICAgICB9CiAgICAgCi0g
ICAgRG9jdW1lbnQmIGRvY3VtZW50ID0gZm9ybS0+ZG9jdW1lbnQoKTsKLSAgICBVUkwgYWN0aW9u
VVJMID0gZG9jdW1lbnQuY29tcGxldGVVUkwoY29waWVkQXR0cmlidXRlcy5hY3Rpb24oKS5pc0Vt
cHR5KCkgPyBkb2N1bWVudC51cmwoKS5zdHJpbmcoKSA6IGNvcGllZEF0dHJpYnV0ZXMuYWN0aW9u
KCkpOworICAgIGF1dG8mIGRvY3VtZW50ID0gZm9ybS5kb2N1bWVudCgpOworICAgIGF1dG8gYWN0
aW9uVVJMID0gZG9jdW1lbnQuY29tcGxldGVVUkwoY29waWVkQXR0cmlidXRlcy5hY3Rpb24oKS5p
c0VtcHR5KCkgPyBkb2N1bWVudC51cmwoKS5zdHJpbmcoKSA6IGNvcGllZEF0dHJpYnV0ZXMuYWN0
aW9uKCkpOwogICAgIGJvb2wgaXNNYWlsdG9Gb3JtID0gYWN0aW9uVVJMLnByb3RvY29sSXMoIm1h
aWx0byIpOwogICAgIGJvb2wgaXNNdWx0aVBhcnRGb3JtID0gZmFsc2U7Ci0gICAgU3RyaW5nIGVu
Y29kaW5nVHlwZSA9IGNvcGllZEF0dHJpYnV0ZXMuZW5jb2RpbmdUeXBlKCk7CisgICAgYXV0byBl
bmNvZGluZ1R5cGUgPSBjb3BpZWRBdHRyaWJ1dGVzLmVuY29kaW5nVHlwZSgpOwogCiAgICAgZG9j
dW1lbnQuY29udGVudFNlY3VyaXR5UG9saWN5KCktPnVwZ3JhZGVJbnNlY3VyZVJlcXVlc3RJZk5l
ZWRlZChhY3Rpb25VUkwsIENvbnRlbnRTZWN1cml0eVBvbGljeTo6SW5zZWN1cmVSZXF1ZXN0VHlw
ZTo6Rm9ybVN1Ym1pc3Npb24pOwogCi0gICAgaWYgKGNvcGllZEF0dHJpYnV0ZXMubWV0aG9kKCkg
PT0gUG9zdE1ldGhvZCkgeworICAgIGlmIChjb3BpZWRBdHRyaWJ1dGVzLm1ldGhvZCgpID09IE1l
dGhvZDo6UG9zdCkgewogICAgICAgICBpc011bHRpUGFydEZvcm0gPSBjb3BpZWRBdHRyaWJ1dGVz
LmlzTXVsdGlQYXJ0Rm9ybSgpOwogICAgICAgICBpZiAoaXNNdWx0aVBhcnRGb3JtICYmIGlzTWFp
bHRvRm9ybSkgewogICAgICAgICAgICAgZW5jb2RpbmdUeXBlID0gImFwcGxpY2F0aW9uL3gtd3d3
LWZvcm0tdXJsZW5jb2RlZCI7CkBAIC0xOTksMTkgKzE4NSwxOSBAQCBSZWY8Rm9ybVN1Ym1pc3Np
b24+IEZvcm1TdWJtaXNzaW9uOjpjcmVhdGUoSFRNTEZvcm1FbGVtZW50KiBmb3JtLCBjb25zdCBB
dHRyaWJ1dAogICAgICAgICB9CiAgICAgfQogCi0gICAgVGV4dEVuY29kaW5nIGRhdGFFbmNvZGlu
ZyA9IGlzTWFpbHRvRm9ybSA/IFVURjhFbmNvZGluZygpIDogZW5jb2RpbmdGcm9tQWNjZXB0Q2hh
cnNldChjb3BpZWRBdHRyaWJ1dGVzLmFjY2VwdENoYXJzZXQoKSwgZG9jdW1lbnQpOwotICAgIFJl
ZlB0cjxET01Gb3JtRGF0YT4gZG9tRm9ybURhdGEgPSBET01Gb3JtRGF0YTo6Y3JlYXRlKGRhdGFF
bmNvZGluZy5lbmNvZGluZ0ZvckZvcm1TdWJtaXNzaW9uKCkpOwotICAgIFZlY3RvcjxzdGQ6OnBh
aXI8U3RyaW5nLCBTdHJpbmc+PiBmb3JtVmFsdWVzOworICAgIGF1dG8gZGF0YUVuY29kaW5nID0g
aXNNYWlsdG9Gb3JtID8gVVRGOEVuY29kaW5nKCkgOiBlbmNvZGluZ0Zyb21BY2NlcHRDaGFyc2V0
KGNvcGllZEF0dHJpYnV0ZXMuYWNjZXB0Q2hhcnNldCgpLCBkb2N1bWVudCk7CisgICAgYXV0byBk
b21Gb3JtRGF0YSA9IERPTUZvcm1EYXRhOjpjcmVhdGUoZGF0YUVuY29kaW5nLmVuY29kaW5nRm9y
Rm9ybVN1Ym1pc3Npb24oKSk7CisgICAgU3RyaW5nUGFpclZlY3RvciBmb3JtVmFsdWVzOwogCiAg
ICAgYm9vbCBjb250YWluc1Bhc3N3b3JkRGF0YSA9IGZhbHNlOwotICAgIGZvciAoYXV0byYgY29u
dHJvbCA6IGZvcm0tPmFzc29jaWF0ZWRFbGVtZW50cygpKSB7Ci0gICAgICAgIEhUTUxFbGVtZW50
JiBlbGVtZW50ID0gY29udHJvbC0+YXNIVE1MRWxlbWVudCgpOworICAgIGZvciAoYXV0byYgY29u
dHJvbCA6IGZvcm0uYXNzb2NpYXRlZEVsZW1lbnRzKCkpIHsKKyAgICAgICAgYXV0byYgZWxlbWVu
dCA9IGNvbnRyb2wtPmFzSFRNTEVsZW1lbnQoKTsKICAgICAgICAgaWYgKCFlbGVtZW50LmlzRGlz
YWJsZWRGb3JtQ29udHJvbCgpKQotICAgICAgICAgICAgY29udHJvbC0+YXBwZW5kRm9ybURhdGEo
KmRvbUZvcm1EYXRhLCBpc011bHRpUGFydEZvcm0pOworICAgICAgICAgICAgY29udHJvbC0+YXBw
ZW5kRm9ybURhdGEoZG9tRm9ybURhdGEsIGlzTXVsdGlQYXJ0Rm9ybSk7CiAgICAgICAgIGlmIChp
czxIVE1MSW5wdXRFbGVtZW50PihlbGVtZW50KSkgewotICAgICAgICAgICAgSFRNTElucHV0RWxl
bWVudCYgaW5wdXQgPSBkb3duY2FzdDxIVE1MSW5wdXRFbGVtZW50PihlbGVtZW50KTsKKyAgICAg
ICAgICAgIGF1dG8mIGlucHV0ID0gZG93bmNhc3Q8SFRNTElucHV0RWxlbWVudD4oZWxlbWVudCk7
CiAgICAgICAgICAgICBpZiAoaW5wdXQuaXNUZXh0RmllbGQoKSkgewotICAgICAgICAgICAgICAg
IGZvcm1WYWx1ZXMuYXBwZW5kKHN0ZDo6cGFpcjxTdHJpbmcsIFN0cmluZz4oaW5wdXQubmFtZSgp
LnN0cmluZygpLCBpbnB1dC52YWx1ZSgpKSk7CisgICAgICAgICAgICAgICAgZm9ybVZhbHVlcy5h
cHBlbmQoeyBpbnB1dC5uYW1lKCkuc3RyaW5nKCksIGlucHV0LnZhbHVlKCkgfSk7CiAgICAgICAg
ICAgICAgICAgaW5wdXQuYWRkU2VhcmNoUmVzdWx0KCk7CiAgICAgICAgICAgICB9CiAgICAgICAg
ICAgICBpZiAoaW5wdXQuaXNQYXNzd29yZEZpZWxkKCkgJiYgIWlucHV0LnZhbHVlKCkuaXNFbXB0
eSgpKQpAQCAtMjIzLDExICsyMDksMTEgQEAgUmVmPEZvcm1TdWJtaXNzaW9uPiBGb3JtU3VibWlz
c2lvbjo6Y3JlYXRlKEhUTUxGb3JtRWxlbWVudCogZm9ybSwgY29uc3QgQXR0cmlidXQKICAgICBT
dHJpbmcgYm91bmRhcnk7CiAKICAgICBpZiAoaXNNdWx0aVBhcnRGb3JtKSB7Ci0gICAgICAgIGZv
cm1EYXRhID0gRm9ybURhdGE6OmNyZWF0ZU11bHRpUGFydCgqKHN0YXRpY19jYXN0PEZvcm1EYXRh
TGlzdCo+KGRvbUZvcm1EYXRhLmdldCgpKSksIGRvbUZvcm1EYXRhLT5lbmNvZGluZygpLCAmZG9j
dW1lbnQpOworICAgICAgICBmb3JtRGF0YSA9IEZvcm1EYXRhOjpjcmVhdGVNdWx0aVBhcnQoZG9t
Rm9ybURhdGEsIGRvbUZvcm1EYXRhLT5lbmNvZGluZygpLCAmZG9jdW1lbnQpOwogICAgICAgICBi
b3VuZGFyeSA9IGZvcm1EYXRhLT5ib3VuZGFyeSgpLmRhdGEoKTsKICAgICB9IGVsc2UgewotICAg
ICAgICBmb3JtRGF0YSA9IEZvcm1EYXRhOjpjcmVhdGUoKihzdGF0aWNfY2FzdDxGb3JtRGF0YUxp
c3QqPihkb21Gb3JtRGF0YS5nZXQoKSkpLCBkb21Gb3JtRGF0YS0+ZW5jb2RpbmcoKSwgYXR0cmli
dXRlcy5tZXRob2QoKSA9PSBHZXRNZXRob2QgPyBGb3JtRGF0YTo6Rm9ybVVSTEVuY29kZWQgOiBG
b3JtRGF0YTo6cGFyc2VFbmNvZGluZ1R5cGUoZW5jb2RpbmdUeXBlKSk7Ci0gICAgICAgIGlmIChj
b3BpZWRBdHRyaWJ1dGVzLm1ldGhvZCgpID09IFBvc3RNZXRob2QgJiYgaXNNYWlsdG9Gb3JtKSB7
CisgICAgICAgIGZvcm1EYXRhID0gRm9ybURhdGE6OmNyZWF0ZShkb21Gb3JtRGF0YSwgZG9tRm9y
bURhdGEtPmVuY29kaW5nKCksIGF0dHJpYnV0ZXMubWV0aG9kKCkgPT0gTWV0aG9kOjpHZXQgPyBG
b3JtRGF0YTo6Rm9ybVVSTEVuY29kZWQgOiBGb3JtRGF0YTo6cGFyc2VFbmNvZGluZ1R5cGUoZW5j
b2RpbmdUeXBlKSk7CisgICAgICAgIGlmIChjb3BpZWRBdHRyaWJ1dGVzLm1ldGhvZCgpID09IE1l
dGhvZDo6UG9zdCAmJiBpc01haWx0b0Zvcm0pIHsKICAgICAgICAgICAgIC8vIENvbnZlcnQgdGhl
IGZvcm0gZGF0YSBpbnRvIGEgc3RyaW5nIHRoYXQgd2UgcHV0IGludG8gdGhlIFVSTC4KICAgICAg
ICAgICAgIGFwcGVuZE1haWx0b1Bvc3RGb3JtRGF0YVRvVVJMKGFjdGlvblVSTCwgKmZvcm1EYXRh
LCBlbmNvZGluZ1R5cGUpOwogICAgICAgICAgICAgZm9ybURhdGEgPSBGb3JtRGF0YTo6Y3JlYXRl
KCk7CkBAIC0yMzYsMTQgKzIyMiwxNyBAQCBSZWY8Rm9ybVN1Ym1pc3Npb24+IEZvcm1TdWJtaXNz
aW9uOjpjcmVhdGUoSFRNTEZvcm1FbGVtZW50KiBmb3JtLCBjb25zdCBBdHRyaWJ1dAogCiAgICAg
Zm9ybURhdGEtPnNldElkZW50aWZpZXIoZ2VuZXJhdGVGb3JtRGF0YUlkZW50aWZpZXIoKSk7CiAg
ICAgZm9ybURhdGEtPnNldENvbnRhaW5zUGFzc3dvcmREYXRhKGNvbnRhaW5zUGFzc3dvcmREYXRh
KTsKKwogICAgIFN0cmluZyB0YXJnZXRPckJhc2VUYXJnZXQgPSBjb3BpZWRBdHRyaWJ1dGVzLnRh
cmdldCgpLmlzRW1wdHkoKSA/IGRvY3VtZW50LmJhc2VUYXJnZXQoKSA6IGNvcGllZEF0dHJpYnV0
ZXMudGFyZ2V0KCk7Ci0gICAgYXV0byBmb3JtU3RhdGUgPSBGb3JtU3RhdGU6OmNyZWF0ZShmb3Jt
LCBmb3JtVmFsdWVzLCAmZG9jdW1lbnQsIHRyaWdnZXIpOwotICAgIHJldHVybiBhZG9wdFJlZigq
bmV3IEZvcm1TdWJtaXNzaW9uKGNvcGllZEF0dHJpYnV0ZXMubWV0aG9kKCksIGFjdGlvblVSTCwg
dGFyZ2V0T3JCYXNlVGFyZ2V0LCBlbmNvZGluZ1R5cGUsIFdURk1vdmUoZm9ybVN0YXRlKSwgV1RG
TW92ZShmb3JtRGF0YSksIGJvdW5kYXJ5LCBsb2NrSGlzdG9yeSwgZXZlbnQpKTsKKworICAgIGF1
dG8gZm9ybVN0YXRlID0gRm9ybVN0YXRlOjpjcmVhdGUoZm9ybSwgV1RGTW92ZShmb3JtVmFsdWVz
KSwgZG9jdW1lbnQsIHRyaWdnZXIpOworCisgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRm9ybVN1
Ym1pc3Npb24oY29waWVkQXR0cmlidXRlcy5tZXRob2QoKSwgYWN0aW9uVVJMLCB0YXJnZXRPckJh
c2VUYXJnZXQsIGVuY29kaW5nVHlwZSwgV1RGTW92ZShmb3JtU3RhdGUpLCBmb3JtRGF0YS5yZWxl
YXNlTm9uTnVsbCgpLCBib3VuZGFyeSwgbG9ja0hpc3RvcnksIGV2ZW50KSk7CiB9CiAKIFVSTCBG
b3JtU3VibWlzc2lvbjo6cmVxdWVzdFVSTCgpIGNvbnN0CiB7Ci0gICAgaWYgKG1fbWV0aG9kID09
IEZvcm1TdWJtaXNzaW9uOjpQb3N0TWV0aG9kKQorICAgIGlmIChtX21ldGhvZCA9PSBNZXRob2Q6
OlBvc3QpCiAgICAgICAgIHJldHVybiBtX2FjdGlvbjsKIAogICAgIFVSTCByZXF1ZXN0VVJMKG1f
YWN0aW9uKTsKQEAgLTI1OSw3ICsyNDgsNyBAQCB2b2lkIEZvcm1TdWJtaXNzaW9uOjpwb3B1bGF0
ZUZyYW1lTG9hZFJlcXVlc3QoRnJhbWVMb2FkUmVxdWVzdCYgZnJhbWVSZXF1ZXN0KQogICAgIGlm
ICghbV9yZWZlcnJlci5pc0VtcHR5KCkpCiAgICAgICAgIGZyYW1lUmVxdWVzdC5yZXNvdXJjZVJl
cXVlc3QoKS5zZXRIVFRQUmVmZXJyZXIobV9yZWZlcnJlcik7CiAKLSAgICBpZiAobV9tZXRob2Qg
PT0gRm9ybVN1Ym1pc3Npb246OlBvc3RNZXRob2QpIHsKKyAgICBpZiAobV9tZXRob2QgPT0gTWV0
aG9kOjpQb3N0KSB7CiAgICAgICAgIGZyYW1lUmVxdWVzdC5yZXNvdXJjZVJlcXVlc3QoKS5zZXRI
VFRQTWV0aG9kKCJQT1NUIik7CiAgICAgICAgIGZyYW1lUmVxdWVzdC5yZXNvdXJjZVJlcXVlc3Qo
KS5zZXRIVFRQQm9keShtX2Zvcm1EYXRhLmNvcHlSZWYoKSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3VibWlzc2lvbi5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0Zvcm1TdWJtaXNzaW9uLmgKaW5kZXggNDFiMzdlMDY0MmIxOGE4MGUxNjRmMDU2NmJlZjg4ZDJk
MTBlN2VmOC4uMjUyNDEyYzBjMDJiMzliZDllOGI0NTFhYzc1MzVhNDU3MzU0NzZhMCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdWJtaXNzaW9uLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0Zvcm1TdWJtaXNzaW9uLmgKQEAgLTM2LDMxICszNiwyMSBAQAogCiBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIERvY3VtZW50OwogY2xhc3MgRXZlbnQ7CiBjbGFz
cyBGb3JtRGF0YTsKKwogc3RydWN0IEZyYW1lTG9hZFJlcXVlc3Q7Ci1jbGFzcyBIVE1MRm9ybUVs
ZW1lbnQ7Ci1jbGFzcyBUZXh0RW5jb2Rpbmc7CiAKIGNsYXNzIEZvcm1TdWJtaXNzaW9uIDogcHVi
bGljIFJlZkNvdW50ZWQ8Rm9ybVN1Ym1pc3Npb24+IHsKIHB1YmxpYzoKLSAgICBlbnVtIE1ldGhv
ZCB7IEdldE1ldGhvZCwgUG9zdE1ldGhvZCB9OworICAgIGVudW0gY2xhc3MgTWV0aG9kIHsgR2V0
LCBQb3N0IH07CiAKICAgICBjbGFzcyBBdHRyaWJ1dGVzIHsKLSAgICAgICAgV1RGX01BS0VfTk9O
Q09QWUFCTEUoQXR0cmlidXRlcyk7CiAgICAgcHVibGljOgotICAgICAgICBBdHRyaWJ1dGVzKCkK
LSAgICAgICAgICAgIDogbV9tZXRob2QoR2V0TWV0aG9kKQotICAgICAgICAgICAgLCBtX2lzTXVs
dGlQYXJ0Rm9ybShmYWxzZSkKLSAgICAgICAgICAgICwgbV9lbmNvZGluZ1R5cGUoImFwcGxpY2F0
aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIpCi0gICAgICAgIHsKLSAgICAgICAgfQotCiAgICAg
ICAgIE1ldGhvZCBtZXRob2QoKSBjb25zdCB7IHJldHVybiBtX21ldGhvZDsgfQogICAgICAgICBz
dGF0aWMgTWV0aG9kIHBhcnNlTWV0aG9kVHlwZShjb25zdCBTdHJpbmcmKTsKICAgICAgICAgdm9p
ZCB1cGRhdGVNZXRob2RUeXBlKGNvbnN0IFN0cmluZyYpOwotICAgICAgICBzdGF0aWMgU3RyaW5n
IG1ldGhvZFN0cmluZyhNZXRob2QgbWV0aG9kKSB7IHJldHVybiBtZXRob2QgPT0gUG9zdE1ldGhv
ZCA/ICJwb3N0IiA6ICJnZXQiOyB9CisgICAgICAgIHN0YXRpYyBBU0NJSUxpdGVyYWwgbWV0aG9k
U3RyaW5nKE1ldGhvZCBtZXRob2QpIHsgcmV0dXJuIEFTQ0lJTGl0ZXJhbCB7IG1ldGhvZCA9PSBN
ZXRob2Q6OlBvc3QgPyAicG9zdCIgOiAiZ2V0IiB9OyB9CiAKICAgICAgICAgY29uc3QgU3RyaW5n
JiBhY3Rpb24oKSBjb25zdCB7IHJldHVybiBtX2FjdGlvbjsgfQogICAgICAgICB2b2lkIHBhcnNl
QWN0aW9uKGNvbnN0IFN0cmluZyYpOwpAQCAtNzYsNTAgKzY2LDQ2IEBAIHB1YmxpYzoKICAgICAg
ICAgY29uc3QgU3RyaW5nJiBhY2NlcHRDaGFyc2V0KCkgY29uc3QgeyByZXR1cm4gbV9hY2NlcHRD
aGFyc2V0OyB9CiAgICAgICAgIHZvaWQgc2V0QWNjZXB0Q2hhcnNldChjb25zdCBTdHJpbmcmIHZh
bHVlKSB7IG1fYWNjZXB0Q2hhcnNldCA9IHZhbHVlOyB9CiAKLSAgICAgICAgdm9pZCBjb3B5RnJv
bShjb25zdCBBdHRyaWJ1dGVzJik7Ci0KICAgICBwcml2YXRlOgotICAgICAgICBNZXRob2QgbV9t
ZXRob2Q7Ci0gICAgICAgIGJvb2wgbV9pc011bHRpUGFydEZvcm07Ci0KKyAgICAgICAgTWV0aG9k
IG1fbWV0aG9kIHsgTWV0aG9kOjpHZXQgfTsKKyAgICAgICAgYm9vbCBtX2lzTXVsdGlQYXJ0Rm9y
bSB7IGZhbHNlIH07CiAgICAgICAgIFN0cmluZyBtX2FjdGlvbjsKICAgICAgICAgU3RyaW5nIG1f
dGFyZ2V0OwotICAgICAgICBTdHJpbmcgbV9lbmNvZGluZ1R5cGU7CisgICAgICAgIFN0cmluZyBt
X2VuY29kaW5nVHlwZSB7IEFTQ0lJTGl0ZXJhbCB7ICJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVy
bGVuY29kZWQiIH0gfTsKICAgICAgICAgU3RyaW5nIG1fYWNjZXB0Q2hhcnNldDsKICAgICB9Owog
Ci0gICAgc3RhdGljIFJlZjxGb3JtU3VibWlzc2lvbj4gY3JlYXRlKEhUTUxGb3JtRWxlbWVudCos
IGNvbnN0IEF0dHJpYnV0ZXMmLCBQYXNzUmVmUHRyPEV2ZW50PiBldmVudCwgTG9ja0hpc3Rvcnks
IEZvcm1TdWJtaXNzaW9uVHJpZ2dlcik7CisgICAgc3RhdGljIFJlZjxGb3JtU3VibWlzc2lvbj4g
Y3JlYXRlKEhUTUxGb3JtRWxlbWVudCYsIGNvbnN0IEF0dHJpYnV0ZXMmLCBFdmVudCosIExvY2tI
aXN0b3J5LCBGb3JtU3VibWlzc2lvblRyaWdnZXIpOwogCiAgICAgdm9pZCBwb3B1bGF0ZUZyYW1l
TG9hZFJlcXVlc3QoRnJhbWVMb2FkUmVxdWVzdCYpOwotICAgIAogICAgIFVSTCByZXF1ZXN0VVJM
KCkgY29uc3Q7CiAKICAgICBNZXRob2QgbWV0aG9kKCkgY29uc3QgeyByZXR1cm4gbV9tZXRob2Q7
IH0KICAgICBjb25zdCBVUkwmIGFjdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fYWN0aW9uOyB9CiAg
ICAgY29uc3QgU3RyaW5nJiB0YXJnZXQoKSBjb25zdCB7IHJldHVybiBtX3RhcmdldDsgfQotICAg
IHZvaWQgY2xlYXJUYXJnZXQoKSB7IG1fdGFyZ2V0ID0gU3RyaW5nKCk7IH0KICAgICBjb25zdCBT
dHJpbmcmIGNvbnRlbnRUeXBlKCkgY29uc3QgeyByZXR1cm4gbV9jb250ZW50VHlwZTsgfQotICAg
IEZvcm1TdGF0ZSogc3RhdGUoKSBjb25zdCB7IHJldHVybiBtX2Zvcm1TdGF0ZS5nZXQoKTsgfQot
ICAgIEZvcm1EYXRhKiBkYXRhKCkgY29uc3QgeyByZXR1cm4gbV9mb3JtRGF0YS5nZXQoKTsgfQor
ICAgIEZvcm1TdGF0ZSYgc3RhdGUoKSBjb25zdCB7IHJldHVybiBtX2Zvcm1TdGF0ZTsgfQorICAg
IEZvcm1EYXRhJiBkYXRhKCkgY29uc3QgeyByZXR1cm4gbV9mb3JtRGF0YTsgfQogICAgIGNvbnN0
IFN0cmluZyBib3VuZGFyeSgpIGNvbnN0IHsgcmV0dXJuIG1fYm91bmRhcnk7IH0KICAgICBMb2Nr
SGlzdG9yeSBsb2NrSGlzdG9yeSgpIGNvbnN0IHsgcmV0dXJuIG1fbG9ja0hpc3Rvcnk7IH0KICAg
ICBFdmVudCogZXZlbnQoKSBjb25zdCB7IHJldHVybiBtX2V2ZW50LmdldCgpOyB9Ci0KICAgICBj
b25zdCBTdHJpbmcmIHJlZmVycmVyKCkgY29uc3QgeyByZXR1cm4gbV9yZWZlcnJlcjsgfQotICAg
IHZvaWQgc2V0UmVmZXJyZXIoY29uc3QgU3RyaW5nJiByZWZlcnJlcikgeyBtX3JlZmVycmVyID0g
cmVmZXJyZXI7IH0KICAgICBjb25zdCBTdHJpbmcmIG9yaWdpbigpIGNvbnN0IHsgcmV0dXJuIG1f
b3JpZ2luOyB9CisKKyAgICB2b2lkIGNsZWFyVGFyZ2V0KCkgeyBtX3RhcmdldCA9IHsgfTsgfQor
ICAgIHZvaWQgc2V0UmVmZXJyZXIoY29uc3QgU3RyaW5nJiByZWZlcnJlcikgeyBtX3JlZmVycmVy
ID0gcmVmZXJyZXI7IH0KICAgICB2b2lkIHNldE9yaWdpbihjb25zdCBTdHJpbmcmIG9yaWdpbikg
eyBtX29yaWdpbiA9IG9yaWdpbjsgfQogCiBwcml2YXRlOgotICAgIEZvcm1TdWJtaXNzaW9uKE1l
dGhvZCwgY29uc3QgVVJMJiBhY3Rpb24sIGNvbnN0IFN0cmluZyYgdGFyZ2V0LCBjb25zdCBTdHJp
bmcmIGNvbnRlbnRUeXBlLCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIFBhc3NSZWZQdHI8Rm9ybURh
dGE+LCBjb25zdCBTdHJpbmcmIGJvdW5kYXJ5LCBMb2NrSGlzdG9yeSwgUGFzc1JlZlB0cjxFdmVu
dD4pOworICAgIEZvcm1TdWJtaXNzaW9uKE1ldGhvZCwgY29uc3QgVVJMJiBhY3Rpb24sIGNvbnN0
IFN0cmluZyYgdGFyZ2V0LCBjb25zdCBTdHJpbmcmIGNvbnRlbnRUeXBlLCBSZWY8Rm9ybVN0YXRl
PiYmLCBSZWY8Rm9ybURhdGE+JiYsIGNvbnN0IFN0cmluZyYgYm91bmRhcnksIExvY2tIaXN0b3J5
LCBFdmVudCopOwogCiAgICAgLy8gRklYTUU6IEhvbGQgYW4gaW5zdGFuY2Ugb2YgQXR0cmlidXRl
cyBpbnN0ZWFkIG9mIGluZGl2aWR1YWwgbWVtYmVycy4KICAgICBNZXRob2QgbV9tZXRob2Q7CiAg
ICAgVVJMIG1fYWN0aW9uOwogICAgIFN0cmluZyBtX3RhcmdldDsKICAgICBTdHJpbmcgbV9jb250
ZW50VHlwZTsKLSAgICBSZWZQdHI8Rm9ybVN0YXRlPiBtX2Zvcm1TdGF0ZTsKLSAgICBSZWZQdHI8
Rm9ybURhdGE+IG1fZm9ybURhdGE7CisgICAgUmVmPEZvcm1TdGF0ZT4gbV9mb3JtU3RhdGU7Cisg
ICAgUmVmPEZvcm1EYXRhPiBtX2Zvcm1EYXRhOwogICAgIFN0cmluZyBtX2JvdW5kYXJ5OwogICAg
IExvY2tIaXN0b3J5IG1fbG9ja0hpc3Rvcnk7CiAgICAgUmVmUHRyPEV2ZW50PiBtX2V2ZW50Owpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAKaW5kZXggNGNmZWJlZjExZmJlZDM3Mzg5
MTExYjJiMWI0NGY4ZTZmZDc0NDM0My4uZTVjYzg5NTVkMzZkNGIwOTg0NDU3NTI1ZDc5MWRkYzIz
Y2EzOTJiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCkBAIC0zNjYsMTcg
KzM2NiwxNSBAQCB2b2lkIEZyYW1lTG9hZGVyOjp1cmxTZWxlY3RlZChjb25zdCBGcmFtZUxvYWRS
ZXF1ZXN0JiBwYXNzZWRSZXF1ZXN0LCBFdmVudCogdHJpZwogCiB2b2lkIEZyYW1lTG9hZGVyOjpz
dWJtaXRGb3JtKFJlZjxGb3JtU3VibWlzc2lvbj4mJiBzdWJtaXNzaW9uKQogewotICAgIEFTU0VS
VChzdWJtaXNzaW9uLT5tZXRob2QoKSA9PSBGb3JtU3VibWlzc2lvbjo6UG9zdE1ldGhvZCB8fCBz
dWJtaXNzaW9uLT5tZXRob2QoKSA9PSBGb3JtU3VibWlzc2lvbjo6R2V0TWV0aG9kKTsKKyAgICBB
U1NFUlQoc3VibWlzc2lvbi0+bWV0aG9kKCkgPT0gRm9ybVN1Ym1pc3Npb246Ok1ldGhvZDo6UG9z
dCB8fCBzdWJtaXNzaW9uLT5tZXRob2QoKSA9PSBGb3JtU3VibWlzc2lvbjo6TWV0aG9kOjpHZXQp
OwogCiAgICAgLy8gRklYTUU6IEZpbmQgYSBnb29kIHNwb3QgZm9yIHRoZXNlLgotICAgIEFTU0VS
VChzdWJtaXNzaW9uLT5kYXRhKCkpOwotICAgIEFTU0VSVChzdWJtaXNzaW9uLT5zdGF0ZSgpKTsK
LSAgICBBU1NFUlQoIXN1Ym1pc3Npb24tPnN0YXRlKCktPnNvdXJjZURvY3VtZW50KCktPmZyYW1l
KCkgfHwgc3VibWlzc2lvbi0+c3RhdGUoKS0+c291cmNlRG9jdW1lbnQoKS0+ZnJhbWUoKSA9PSAm
bV9mcmFtZSk7CisgICAgQVNTRVJUKCFzdWJtaXNzaW9uLT5zdGF0ZSgpLnNvdXJjZURvY3VtZW50
KCkuZnJhbWUoKSB8fCBzdWJtaXNzaW9uLT5zdGF0ZSgpLnNvdXJjZURvY3VtZW50KCkuZnJhbWUo
KSA9PSAmbV9mcmFtZSk7CiAKICAgICBpZiAoIW1fZnJhbWUucGFnZSgpKQogICAgICAgICByZXR1
cm47CiAKLSAgICBpZiAoc3VibWlzc2lvbi0+c3RhdGUoKS0+c291cmNlRG9jdW1lbnQoKS0+cGFn
ZUNhY2hlU3RhdGUoKSAhPSBEb2N1bWVudDo6Tm90SW5QYWdlQ2FjaGUpCisgICAgaWYgKHN1Ym1p
c3Npb24tPnN0YXRlKCkuc291cmNlRG9jdW1lbnQoKS5wYWdlQ2FjaGVTdGF0ZSgpICE9IERvY3Vt
ZW50OjpOb3RJblBhZ2VDYWNoZSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKHN1Ym1pc3Np
b24tPmFjdGlvbigpLmlzRW1wdHkoKSkKQEAgLTM5OCwxMiArMzk2LDEyIEBAIHZvaWQgRnJhbWVM
b2FkZXI6OnN1Ym1pdEZvcm0oUmVmPEZvcm1TdWJtaXNzaW9uPiYmIHN1Ym1pc3Npb24pCiAgICAg
ICAgIHJldHVybjsKICAgICB9CiAKLSAgICBGcmFtZSogdGFyZ2V0RnJhbWUgPSBmaW5kRnJhbWVG
b3JOYXZpZ2F0aW9uKHN1Ym1pc3Npb24tPnRhcmdldCgpLCBzdWJtaXNzaW9uLT5zdGF0ZSgpLT5z
b3VyY2VEb2N1bWVudCgpKTsKKyAgICBGcmFtZSogdGFyZ2V0RnJhbWUgPSBmaW5kRnJhbWVGb3JO
YXZpZ2F0aW9uKHN1Ym1pc3Npb24tPnRhcmdldCgpLCAmc3VibWlzc2lvbi0+c3RhdGUoKS5zb3Vy
Y2VEb2N1bWVudCgpKTsKICAgICBpZiAoIXRhcmdldEZyYW1lKSB7CiAgICAgICAgIGlmICghRE9N
V2luZG93OjphbGxvd1BvcFVwKCZtX2ZyYW1lKSAmJiAhU2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vz
c2luZ1VzZXJHZXN0dXJlKCkpCiAgICAgICAgICAgICByZXR1cm47CiAKLSAgICAgICAgLy8gRklY
TUU6IHRhcmdldEZyYW1lIGNhbiBiZSAwIGZvciB0d28gZGlzdGluY3QgcmVhc29uczoKKyAgICAg
ICAgLy8gRklYTUU6IHRhcmdldEZyYW1lIGNhbiBiZSBudWxsIGZvciB0d28gZGlzdGluY3QgcmVh
c29uczoKICAgICAgICAgLy8gMS4gVGhlIGZyYW1lIHdhcyBub3QgZm91bmQgYnkgbmFtZSwgc28g
d2Ugc2hvdWxkIHRyeSBvcGVuaW5nIGEgbmV3IHdpbmRvdy4KICAgICAgICAgLy8gMi4gVGhlIGZy
YW1lIHdhcyBmb3VuZCwgYnV0IG5hdmlnYXRpbmcgaXQgd2FzIG5vdCBhbGxvd2VkLCBlLmcuIGJ5
IEhUTUw1IHNhbmRib3ggb3IgYnkgb3JpZ2luIGNoZWNrcy4KICAgICAgICAgLy8gQ29udGludWlu
ZyBmb3JtIHN1Ym1pc3Npb24gbWFrZXMgbm8gc2Vuc2UgaW4gdGhlIGxhdHRlciBjYXNlLgpAQCAt
NDM0LDcgKzQzMiw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6OnN1Ym1pdEZvcm0oUmVmPEZvcm1TdWJt
aXNzaW9uPiYmIHN1Ym1pc3Npb24pCiAgICAgICAgIG1fc3VibWl0dGVkRm9ybVVSTCA9IHN1Ym1p
c3Npb24tPnJlcXVlc3RVUkwoKTsKICAgICB9CiAKLSAgICBzdWJtaXNzaW9uLT5kYXRhKCktPmdl
bmVyYXRlRmlsZXMobV9mcmFtZS5kb2N1bWVudCgpKTsKKyAgICBzdWJtaXNzaW9uLT5kYXRhKCku
Z2VuZXJhdGVGaWxlcyhtX2ZyYW1lLmRvY3VtZW50KCkpOwogICAgIHN1Ym1pc3Npb24tPnNldFJl
ZmVycmVyKG91dGdvaW5nUmVmZXJyZXIoKSk7CiAgICAgc3VibWlzc2lvbi0+c2V0T3JpZ2luKG91
dGdvaW5nT3JpZ2luKCkpOwogCkBAIC02NjAsMjAgKzY1OCwxOCBAQCB2b2lkIEZyYW1lTG9hZGVy
OjpyZWNlaXZlZEZpcnN0RGF0YSgpCiAgICAgaWYgKCFtX2RvY3VtZW50TG9hZGVyKQogICAgICAg
ICByZXR1cm47CiAKKyAgICBBU1NFUlQobV9mcmFtZS5kb2N1bWVudCgpKTsKKyAgICBhdXRvJiBk
b2N1bWVudCA9ICptX2ZyYW1lLmRvY3VtZW50KCk7CisKICAgICBkb3VibGUgZGVsYXk7CiAgICAg
U3RyaW5nIHVybFN0cmluZzsKICAgICBpZiAoIXBhcnNlSFRUUFJlZnJlc2gobV9kb2N1bWVudExv
YWRlci0+cmVzcG9uc2UoKS5odHRwSGVhZGVyRmllbGQoSFRUUEhlYWRlck5hbWU6OlJlZnJlc2gp
LCBkZWxheSwgdXJsU3RyaW5nKSkKICAgICAgICAgcmV0dXJuOwotICAgIFVSTCBjb21wbGV0ZWRV
Ukw7Ci0gICAgaWYgKHVybFN0cmluZy5pc0VtcHR5KCkpCi0gICAgICAgIGNvbXBsZXRlZFVSTCA9
IG1fZnJhbWUuZG9jdW1lbnQoKS0+dXJsKCk7Ci0gICAgZWxzZQotICAgICAgICBjb21wbGV0ZWRV
UkwgPSBtX2ZyYW1lLmRvY3VtZW50KCktPmNvbXBsZXRlVVJMKHVybFN0cmluZyk7Ci0KKyAgICBh
dXRvIGNvbXBsZXRlZFVSTCA9IHVybFN0cmluZy5pc0VtcHR5KCkgPyBkb2N1bWVudC51cmwoKSA6
IGRvY3VtZW50LmNvbXBsZXRlVVJMKHVybFN0cmluZyk7CiAgICAgaWYgKCFwcm90b2NvbElzSmF2
YVNjcmlwdChjb21wbGV0ZWRVUkwpKQotICAgICAgICBtX2ZyYW1lLm5hdmlnYXRpb25TY2hlZHVs
ZXIoKS5zY2hlZHVsZVJlZGlyZWN0KG1fZnJhbWUuZG9jdW1lbnQoKSwgZGVsYXksIGNvbXBsZXRl
ZFVSTCk7CisgICAgICAgIG1fZnJhbWUubmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlUmVk
aXJlY3QoZG9jdW1lbnQsIGRlbGF5LCBjb21wbGV0ZWRVUkwpOwogICAgIGVsc2UgewotICAgICAg
ICBTdHJpbmcgbWVzc2FnZSA9ICJSZWZ1c2VkIHRvIHJlZnJlc2ggIiArIG1fZnJhbWUuZG9jdW1l
bnQoKS0+dXJsKCkuc3RyaW5nQ2VudGVyRWxsaXBzaXplZFRvTGVuZ3RoKCkgKyAiIHRvIGEgamF2
YXNjcmlwdDogVVJMIjsKKyAgICAgICAgYXV0byBtZXNzYWdlID0gIlJlZnVzZWQgdG8gcmVmcmVz
aCAiICsgZG9jdW1lbnQudXJsKCkuc3RyaW5nQ2VudGVyRWxsaXBzaXplZFRvTGVuZ3RoKCkgKyAi
IHRvIGEgamF2YXNjcmlwdDogVVJMIjsKICAgICAgICAgbV9mcmFtZS5kb2N1bWVudCgpLT5hZGRD
b25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpTZWN1cml0eSwgTWVzc2FnZUxldmVsOjpFcnJv
ciwgbWVzc2FnZSk7CiAgICAgfQogfQpAQCAtMTEzOSw3ICsxMTM1LDcgQEAgdm9pZCBGcmFtZUxv
YWRlcjo6bG9hZEZyYW1lUmVxdWVzdChjb25zdCBGcmFtZUxvYWRSZXF1ZXN0JiByZXF1ZXN0LCBF
dmVudCogZXZlbnQKICAgICAgICAgfHwgZXZlbnQtPnRhcmdldCgpLT50b05vZGUoKS0+ZG9jdW1l
bnQoKS5wYWdlQ2FjaGVTdGF0ZSgpID09IERvY3VtZW50OjpOb3RJblBhZ2VDYWNoZSk7CiAKICAg
ICAvLyBQcm90ZWN0IGZyYW1lIGZyb20gZ2V0dGluZyBibG93biBhd2F5IGluc2lkZSBkaXNwYXRj
aEJlZm9yZUxvYWRFdmVudCBpbiBsb2FkV2l0aERvY3VtZW50TG9hZGVyLgotICAgIFJlZjxGcmFt
ZT4gcHJvdGVjdChtX2ZyYW1lKTsKKyAgICBhdXRvIHByb3RlY3RGcmFtZSA9IG1ha2VSZWYobV9m
cmFtZSk7CiAKICAgICBVUkwgdXJsID0gcmVxdWVzdC5yZXNvdXJjZVJlcXVlc3QoKS51cmwoKTsK
IApAQCAtMTE3Miw3ICsxMTY4LDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6bG9hZEZyYW1lUmVxdWVz
dChjb25zdCBGcmFtZUxvYWRSZXF1ZXN0JiByZXF1ZXN0LCBFdmVudCogZXZlbnQKIAogICAgIC8v
IEZJWE1FOiBJdCdzIHBvc3NpYmxlIHRoaXMgdGFyZ2V0RnJhbWUgd2lsbCBub3QgYmUgdGhlIHNh
bWUgZnJhbWUgdGhhdCB3YXMgdGFyZ2V0ZWQgYnkgdGhlIGFjdHVhbAogICAgIC8vIGxvYWQgaWYg
ZnJhbWUgbmFtZXMgaGF2ZSBjaGFuZ2VkLgotICAgIEZyYW1lKiBzb3VyY2VGcmFtZSA9IGZvcm1T
dGF0ZSA/IGZvcm1TdGF0ZS0+c291cmNlRG9jdW1lbnQoKS0+ZnJhbWUoKSA6ICZtX2ZyYW1lOwor
ICAgIEZyYW1lKiBzb3VyY2VGcmFtZSA9IGZvcm1TdGF0ZSA/IGZvcm1TdGF0ZS0+c291cmNlRG9j
dW1lbnQoKS5mcmFtZSgpIDogJm1fZnJhbWU7CiAgICAgaWYgKCFzb3VyY2VGcmFtZSkKICAgICAg
ICAgc291cmNlRnJhbWUgPSAmbV9mcmFtZTsKICAgICBGcmFtZSogdGFyZ2V0RnJhbWUgPSBzb3Vy
Y2VGcmFtZS0+bG9hZGVyKCkuZmluZEZyYW1lRm9yTmF2aWdhdGlvbihyZXF1ZXN0LmZyYW1lTmFt
ZSgpKTsKQEAgLTEyNTYsNyArMTI1Miw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6OmxvYWRVUkwoY29u
c3QgRnJhbWVMb2FkUmVxdWVzdCYgZnJhbWVMb2FkUmVxdWVzdCwgY29uc3QgU3RyaW5nCiAgICAg
ICAgIG9sZERvY3VtZW50TG9hZGVyLT5zZXRMYXN0Q2hlY2tlZFJlcXVlc3QoUmVzb3VyY2VSZXF1
ZXN0KCkpOwogICAgICAgICBwb2xpY3lDaGVja2VyKCkuc3RvcENoZWNrKCk7CiAgICAgICAgIHBv
bGljeUNoZWNrZXIoKS5zZXRMb2FkVHlwZShuZXdMb2FkVHlwZSk7Ci0gICAgICAgIHBvbGljeUNo
ZWNrZXIoKS5jaGVja05hdmlnYXRpb25Qb2xpY3kocmVxdWVzdCwgZmFsc2UgLyogZGlkUmVjZWl2
ZVJlZGlyZWN0UmVzcG9uc2UgKi8sIG9sZERvY3VtZW50TG9hZGVyLmdldCgpLCBmb3JtU3RhdGUs
IFt0aGlzXShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSosIGJvb2wg
c2hvdWxkQ29udGludWUpIHsKKyAgICAgICAgcG9saWN5Q2hlY2tlcigpLmNoZWNrTmF2aWdhdGlv
blBvbGljeShyZXF1ZXN0LCBmYWxzZSAvKiBkaWRSZWNlaXZlUmVkaXJlY3RSZXNwb25zZSAqLywg
b2xkRG9jdW1lbnRMb2FkZXIuZ2V0KCksIGZvcm1TdGF0ZSwgW3RoaXNdIChjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSosIGJvb2wgc2hvdWxkQ29udGludWUpIHsKICAg
ICAgICAgICAgIGNvbnRpbnVlRnJhZ21lbnRTY3JvbGxBZnRlck5hdmlnYXRpb25Qb2xpY3kocmVx
dWVzdCwgc2hvdWxkQ29udGludWUpOwogICAgICAgICB9KTsKICAgICAgICAgcmV0dXJuOwpAQCAt
MTQ1Miw3ICsxNDQ4LDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6bG9hZFdpdGhEb2N1bWVudExvYWRl
cihEb2N1bWVudExvYWRlciogbG9hZGVyLCBGcmFtZUxvYWRUeXBlIHQKICAgICAgICAgb2xkRG9j
dW1lbnRMb2FkZXItPnNldFRyaWdnZXJpbmdBY3Rpb24oYWN0aW9uKTsKICAgICAgICAgb2xkRG9j
dW1lbnRMb2FkZXItPnNldExhc3RDaGVja2VkUmVxdWVzdChSZXNvdXJjZVJlcXVlc3QoKSk7CiAg
ICAgICAgIHBvbGljeUNoZWNrZXIoKS5zdG9wQ2hlY2soKTsKLSAgICAgICAgcG9saWN5Q2hlY2tl
cigpLmNoZWNrTmF2aWdhdGlvblBvbGljeShsb2FkZXItPnJlcXVlc3QoKSwgZmFsc2UgLyogZGlk
UmVjZWl2ZVJlZGlyZWN0UmVzcG9uc2UgKi8sIG9sZERvY3VtZW50TG9hZGVyLmdldCgpLCBmb3Jt
U3RhdGUsIFt0aGlzXShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSos
IGJvb2wgc2hvdWxkQ29udGludWUpIHsKKyAgICAgICAgcG9saWN5Q2hlY2tlcigpLmNoZWNrTmF2
aWdhdGlvblBvbGljeShsb2FkZXItPnJlcXVlc3QoKSwgZmFsc2UgLyogZGlkUmVjZWl2ZVJlZGly
ZWN0UmVzcG9uc2UgKi8sIG9sZERvY3VtZW50TG9hZGVyLmdldCgpLCBmb3JtU3RhdGUsIFt0aGlz
XSAoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBGb3JtU3RhdGUqLCBib29sIHNob3Vs
ZENvbnRpbnVlKSB7CiAgICAgICAgICAgICBjb250aW51ZUZyYWdtZW50U2Nyb2xsQWZ0ZXJOYXZp
Z2F0aW9uUG9saWN5KHJlcXVlc3QsIHNob3VsZENvbnRpbnVlKTsKICAgICAgICAgfSk7CiAgICAg
ICAgIHJldHVybjsKQEAgLTE0NzksNyArMTQ3NSw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6OmxvYWRX
aXRoRG9jdW1lbnRMb2FkZXIoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgRnJhbWVMb2FkVHlwZSB0
CiAgICAgICAgIH0KICAgICB9CiAKLSAgICBwb2xpY3lDaGVja2VyKCkuY2hlY2tOYXZpZ2F0aW9u
UG9saWN5KGxvYWRlci0+cmVxdWVzdCgpLCBmYWxzZSAvKiBkaWRSZWNlaXZlUmVkaXJlY3RSZXNw
b25zZSAqLywgbG9hZGVyLCBmb3JtU3RhdGUsIFt0aGlzLCBhbGxvd05hdmlnYXRpb25Ub0ludmFs
aWRVUkxdKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3Rh
dGUsIGJvb2wgc2hvdWxkQ29udGludWUpIHsKKyAgICBwb2xpY3lDaGVja2VyKCkuY2hlY2tOYXZp
Z2F0aW9uUG9saWN5KGxvYWRlci0+cmVxdWVzdCgpLCBmYWxzZSAvKiBkaWRSZWNlaXZlUmVkaXJl
Y3RSZXNwb25zZSAqLywgbG9hZGVyLCBmb3JtU3RhdGUsIFt0aGlzLCBhbGxvd05hdmlnYXRpb25U
b0ludmFsaWRVUkxdIChjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSog
Zm9ybVN0YXRlLCBib29sIHNob3VsZENvbnRpbnVlKSB7CiAgICAgICAgIGNvbnRpbnVlTG9hZEFm
dGVyTmF2aWdhdGlvblBvbGljeShyZXF1ZXN0LCBmb3JtU3RhdGUsIHNob3VsZENvbnRpbnVlLCBh
bGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkwpOwogICAgIH0pOwogfQpAQCAtMjcxMSw3ICsyNzA3
LDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6bG9hZFBvc3RSZXF1ZXN0KGNvbnN0IEZyYW1lTG9hZFJl
cXVlc3QmIHJlcXVlc3QsIGNvbnN0IFN0cmluZyYKICAgICAgICAgICAgIHJldHVybjsKICAgICAg
ICAgfQogCi0gICAgICAgIHBvbGljeUNoZWNrZXIoKS5jaGVja05ld1dpbmRvd1BvbGljeShhY3Rp
b24sIHdvcmtpbmdSZXNvdXJjZVJlcXVlc3QsIFdURk1vdmUoZm9ybVN0YXRlKSwgZnJhbWVOYW1l
LCBbdGhpcywgYWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMLCBvcGVuZXJQb2xpY3ldKGNvbnN0
IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIGNvbnN0IFN0
cmluZyYgZnJhbWVOYW1lLCBjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIGJvb2wgc2hv
dWxkQ29udGludWUpIHsKKyAgICAgICAgcG9saWN5Q2hlY2tlcigpLmNoZWNrTmV3V2luZG93UG9s
aWN5KGFjdGlvbiwgd29ya2luZ1Jlc291cmNlUmVxdWVzdCwgV1RGTW92ZShmb3JtU3RhdGUpLCBm
cmFtZU5hbWUsIFt0aGlzLCBhbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkwsIG9wZW5lclBvbGlj
eV0gKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUs
IGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24s
IGJvb2wgc2hvdWxkQ29udGludWUpIHsKICAgICAgICAgICAgIGNvbnRpbnVlTG9hZEFmdGVyTmV3
V2luZG93UG9saWN5KHJlcXVlc3QsIGZvcm1TdGF0ZSwgZnJhbWVOYW1lLCBhY3Rpb24sIHNob3Vs
ZENvbnRpbnVlLCBhbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkwsIG9wZW5lclBvbGljeSk7CiAg
ICAgICAgIH0pOwogICAgICAgICByZXR1cm47CkBAIC0yNzY5LDExICsyNzY1LDExIEBAIHVuc2ln
bmVkIGxvbmcgRnJhbWVMb2FkZXI6OmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoY29uc3QgUmVz
b3VyY2VSZXF1ZXN0JiByZXF1CiAgICAgaWYgKGVycm9yLmlzTnVsbCgpKSB7CiAgICAgICAgIEFT
U0VSVCghbmV3UmVxdWVzdC5pc051bGwoKSk7CiAKLSAgICAgICAgaWYgKCFkb2N1bWVudExvYWRl
cigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5tYXliZUxvYWRTeW5jaHJvbm91c2x5KG5ld1Jl
cXVlc3QsIGVycm9yLCByZXNwb25zZSwgZGF0YSkpIHsKKyAgICAgICAgaWYgKCFkb2N1bWVudExv
YWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLm1heWJlTG9hZFN5bmNocm9ub3VzbHkobmV3
UmVxdWVzdCwgZXJyb3IsIHJlc3BvbnNlLCBkYXRhKSkgewogICAgICAgICAgICAgVmVjdG9yPGNo
YXI+IGJ1ZmZlcjsKICAgICAgICAgICAgIHBsYXRmb3JtU3RyYXRlZ2llcygpLT5sb2FkZXJTdHJh
dGVneSgpLT5sb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KG5ldHdvcmtpbmdDb250ZXh0KCksIGlk
ZW50aWZpZXIsIG5ld1JlcXVlc3QsIHN0b3JlZENyZWRlbnRpYWxzLCBjbGllbnRDcmVkZW50aWFs
UG9saWN5LCBlcnJvciwgcmVzcG9uc2UsIGJ1ZmZlcik7CiAgICAgICAgICAgICBkYXRhID0gU2hh
cmVkQnVmZmVyOjphZG9wdFZlY3RvcihidWZmZXIpOwotICAgICAgICAgICAgZG9jdW1lbnRMb2Fk
ZXIoKS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+bWF5YmVMb2FkRmFsbGJhY2tTeW5jaHJvbm91
c2x5KG5ld1JlcXVlc3QsIGVycm9yLCByZXNwb25zZSwgZGF0YSk7CisgICAgICAgICAgICBkb2N1
bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLm1heWJlTG9hZEZhbGxiYWNrU3lu
Y2hyb25vdXNseShuZXdSZXF1ZXN0LCBlcnJvciwgcmVzcG9uc2UsIGRhdGEpOwogICAgICAgICAg
ICAgUmVzb3VyY2VMb2FkT2JzZXJ2ZXI6OnNoYXJlZE9ic2VydmVyKCkubG9nU3VicmVzb3VyY2VM
b2FkaW5nKCZtX2ZyYW1lLCBuZXdSZXF1ZXN0LCByZXNwb25zZSk7CiAgICAgICAgIH0KICAgICB9
CkBAIC0zMTA4LDcgKzMxMDQsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpjb250aW51ZUxvYWRBZnRl
ck5hdmlnYXRpb25Qb2xpY3koY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZQogICAgICAgICBy
ZXR1cm47CiAgICAgfQogCi0gICAgbV9jbGllbnQuZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShmb3Jt
U3RhdGUsIFt0aGlzXShQb2xpY3lBY3Rpb24gYWN0aW9uKSB7CisgICAgbV9jbGllbnQuZGlzcGF0
Y2hXaWxsU3VibWl0Rm9ybSgqZm9ybVN0YXRlLCBbdGhpc10gKFBvbGljeUFjdGlvbiBhY3Rpb24p
IHsKICAgICAgICAgcG9saWN5Q2hlY2tlcigpLmNvbnRpbnVlTG9hZEFmdGVyV2lsbFN1Ym1pdEZv
cm0oYWN0aW9uKTsKICAgICB9KTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9GcmFtZUxvYWRlckNsaWVudC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVy
Q2xpZW50LmgKaW5kZXggZDEzYjBhMDc5ZGU5OWYzODc3MDU1MjQ3OGE3ZmJiMzIwODhkOWNmNS4u
YTgwOTQ3YmU3ZmRjMjAwZWIwYzIxMjBhMzBjNmQ5NDk1MDc5MTY4YSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50LmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29w
eXJpZ2h0IChDKSAyMDA2LTIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICog
Q29weXJpZ2h0IChDKSAyMDA2LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgog
ICogQ29weXJpZ2h0IChDKSAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAg
KgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CkBAIC0xNzcsMTQgKzE3NywxNCBAQCBwdWJsaWM6CiAgICAgdmlydHVh
bCB2b2lkIGRpc3BhdGNoU2hvdygpID0gMDsKIAogICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaERl
Y2lkZVBvbGljeUZvclJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBjb25zdCBSZXNv
dXJjZVJlcXVlc3QmLCBGcmFtZVBvbGljeUZ1bmN0aW9uKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lk
IGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IE5hdmlnYXRpb25B
Y3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIGNv
bnN0IFN0cmluZyYgZnJhbWVOYW1lLCBGcmFtZVBvbGljeUZ1bmN0aW9uKSA9IDA7Ci0gICAgdmly
dHVhbCB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBO
YXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgUGFzc1JlZlB0cjxGb3Jt
U3RhdGU+LCBGcmFtZVBvbGljeUZ1bmN0aW9uKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGRpc3Bh
dGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24m
LCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBGb3JtU3RhdGUqLCBjb25zdCBTdHJpbmcmIGZyYW1l
TmFtZSwgRnJhbWVQb2xpY3lGdW5jdGlvbikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRj
aERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYs
IGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIEZvcm1TdGF0ZSosIEZyYW1lUG9saWN5RnVuY3Rpb24p
ID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgY2FuY2VsUG9saWN5Q2hlY2soKSA9IDA7CiAKICAgICB2
aXJ0dWFsIHZvaWQgZGlzcGF0Y2hVbmFibGVUb0ltcGxlbWVudFBvbGljeShjb25zdCBSZXNvdXJj
ZUVycm9yJikgPSAwOwogCi0gICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoV2lsbFNlbmRTdWJtaXRF
dmVudChQYXNzUmVmUHRyPEZvcm1TdGF0ZT4pID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0
Y2hXaWxsU3VibWl0Rm9ybShQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIEZyYW1lUG9saWN5RnVuY3Rp
b24pID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJl
ZjxGb3JtU3RhdGU+JiYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hXaWxsU3VibWl0
Rm9ybShGb3JtU3RhdGUmLCBGcmFtZVBvbGljeUZ1bmN0aW9uKSA9IDA7CiAKICAgICB2aXJ0dWFs
IHZvaWQgcmV2ZXJ0VG9Qcm92aXNpb25hbFN0YXRlKERvY3VtZW50TG9hZGVyKikgPSAwOwogICAg
IHZpcnR1YWwgdm9pZCBzZXRNYWluRG9jdW1lbnRFcnJvcihEb2N1bWVudExvYWRlciosIGNvbnN0
IFJlc291cmNlRXJyb3ImKSA9IDA7CkBAIC0yNzIsMTQgKzI3MiwxMiBAQCBwdWJsaWM6CiAgICAg
dmlydHVhbCBib29sIGNhbkNhY2hlUGFnZSgpIGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIHZvaWQg
Y29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKERvY3VtZW50TG9hZGVyKiwgU2Vzc2lv
bklELCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgPSAw
OwogCi0gICAgdmlydHVhbCBSZWZQdHI8RnJhbWU+IGNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYsIGNv
bnN0IFN0cmluZyYgbmFtZSwgSFRNTEZyYW1lT3duZXJFbGVtZW50KiwgY29uc3QgU3RyaW5nJiBy
ZWZlcnJlciwgYm9vbCBhbGxvd3NTY3JvbGxpbmcsIGludCBtYXJnaW5XaWR0aCwgaW50IG1hcmdp
bkhlaWdodCkgPSAwOwotICAgIHZpcnR1YWwgUmVmUHRyPFdpZGdldD4gY3JlYXRlUGx1Z2luKGNv
bnN0IEludFNpemUmLCBIVE1MUGx1Z0luRWxlbWVudCosIGNvbnN0IFVSTCYsIGNvbnN0IFZlY3Rv
cjxTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBTdHJpbmcmLCBib29sIGxv
YWRNYW51YWxseSkgPSAwOworICAgIHZpcnR1YWwgUmVmUHRyPEZyYW1lPiBjcmVhdGVGcmFtZShj
b25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIG5hbWUsIEhUTUxGcmFtZU93bmVyRWxlbWVudCYsIGNv
bnN0IFN0cmluZyYgcmVmZXJyZXIsIGJvb2wgYWxsb3dzU2Nyb2xsaW5nLCBpbnQgbWFyZ2luV2lk
dGgsIGludCBtYXJnaW5IZWlnaHQpID0gMDsKKyAgICB2aXJ0dWFsIFJlZlB0cjxXaWRnZXQ+IGNy
ZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiwgSFRNTFBsdWdJbkVsZW1lbnQmLCBjb25zdCBVUkwm
LCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgU3Ry
aW5nJiwgYm9vbCBsb2FkTWFudWFsbHkpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgcmVjcmVhdGVQ
bHVnaW4oV2lkZ2V0KikgPSAwOwogICAgIHZpcnR1YWwgdm9pZCByZWRpcmVjdERhdGFUb1BsdWdp
bihXaWRnZXQqIHBsdWdpbldpZGdldCkgPSAwOwogCi0gICAgdmlydHVhbCBQYXNzUmVmUHRyPFdp
ZGdldD4gY3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXplJiwgSFRNTEFwcGxldEVs
ZW1lbnQqLCBjb25zdCBVUkwmIGJhc2VVUkwsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5h
bWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpID0gMDsKLQotICAgIHZpcnR1
YWwgdm9pZCBkaXNwYXRjaERpZEZhaWxUb1N0YXJ0UGx1Z2luKGNvbnN0IFBsdWdpblZpZXdCYXNl
KikgY29uc3QgeyB9CisgICAgdmlydHVhbCBSZWZQdHI8V2lkZ2V0PiBjcmVhdGVKYXZhQXBwbGV0
V2lkZ2V0KGNvbnN0IEludFNpemUmLCBIVE1MQXBwbGV0RWxlbWVudCYsIGNvbnN0IFVSTCYgYmFz
ZVVSTCwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJp
bmc+JiBwYXJhbVZhbHVlcykgPSAwOwogCiAgICAgdmlydHVhbCBPYmplY3RDb250ZW50VHlwZSBv
YmplY3RDb250ZW50VHlwZShjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlKSA9IDA7
CiAgICAgdmlydHVhbCBTdHJpbmcgb3ZlcnJpZGVNZWRpYVR5cGUoKSBjb25zdCA9IDA7CkBAIC0y
OTQsNiArMjkyLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgTlNDYWNoZWRVUkxSZXNwb25zZSog
d2lsbENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2UqKSBjb25zdCA9IDA7CiAgICAgdmlydHVhbCBOU0RpY3Rp
b25hcnkgKmRhdGFEZXRlY3Rpb25Db250ZXh0KCkgeyByZXR1cm4gbnVsbHB0cjsgfQogI2VuZGlm
CisKICNpZiBQTEFURk9STShXSU4pICYmIFVTRShDRlVSTENPTk5FQ1RJT04pCiAgICAgLy8gRklY
TUU6IFdpbmRvd3Mgc2hvdWxkIHVzZSB3aWxsQ2FjaGVSZXNwb25zZSAtIDxodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTcyNTc+LgogICAgIHZpcnR1YWwgYm9vbCBzaG91
bGRDYWNoZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgdW5zaWduZWQgY2hhciogZGF0YSwgdW5z
aWduZWQgbG9uZyBsb25nIGxlbmd0aCkgPSAwOwpAQCAtMzA5LDEwICszMDgsMTAgQEAgcHVibGlj
OgogICAgIC8vIENsaWVudHMgdGhhdCBnZW5lcmFsbHkgZGlzYWxsb3cgdW5pdmVyc2FsIGFjY2Vz
cyBjYW4gbWFrZSBleGNlcHRpb25zIGZvciBwYXJ0aWN1bGFyIFVSTHMuCiAgICAgdmlydHVhbCBi
b29sIHNob3VsZEZvcmNlVW5pdmVyc2FsQWNjZXNzRnJvbUxvY2FsVVJMKGNvbnN0IFVSTCYpIHsg
cmV0dXJuIGZhbHNlOyB9CiAKLSAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8RnJhbWVOZXR3b3JraW5n
Q29udGV4dD4gY3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKSA9IDA7CisgICAgdmlydHVhbCBSZWY8
RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKSA9IDA7CiAK
ICNpZiBFTkFCTEUoUkVRVUVTVF9BVVRPQ09NUExFVEUpCi0gICAgdmlydHVhbCB2b2lkIGRpZFJl
cXVlc3RBdXRvY29tcGxldGUoUGFzc1JlZlB0cjxGb3JtU3RhdGU+KSA9IDA7CisgICAgdmlydHVh
bCB2b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxldGUoUmVmPEZvcm1TdGF0ZT4mJikgPSAwOwogI2Vu
ZGlmCiAKICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkUGFpbnRCcm9rZW5JbWFnZShjb25zdCBVUkwm
KSBjb25zdCB7IHJldHVybiB0cnVlOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvSGlzdG9yeUNvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0hpc3RvcnlD
b250cm9sbGVyLmNwcAppbmRleCAyOTViOTRhMWE1NTViMmEyOGU3NTAzNmM2YjFkMDI1NzA3Mjk5
N2NjLi4yNmE0YjMzOTZkMWU4N2EwMDYzZTBiNGMwY2EwNjY5MjIwNGE5MzcwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvSGlzdG9yeUNvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9IaXN0b3J5Q29udHJvbGxlci5jcHAKQEAgLTg0Niw3ICs4NDYsNyBA
QCB2b2lkIEhpc3RvcnlDb250cm9sbGVyOjp1cGRhdGVDdXJyZW50SXRlbSgpCiAgICAgfQogfQog
Ci12b2lkIEhpc3RvcnlDb250cm9sbGVyOjpwdXNoU3RhdGUoUGFzc1JlZlB0cjxTZXJpYWxpemVk
U2NyaXB0VmFsdWU+IHN0YXRlT2JqZWN0LCBjb25zdCBTdHJpbmcmIHRpdGxlLCBjb25zdCBTdHJp
bmcmIHVybFN0cmluZykKK3ZvaWQgSGlzdG9yeUNvbnRyb2xsZXI6OnB1c2hTdGF0ZShSZWZQdHI8
U2VyaWFsaXplZFNjcmlwdFZhbHVlPiYmIHN0YXRlT2JqZWN0LCBjb25zdCBTdHJpbmcmIHRpdGxl
LCBjb25zdCBTdHJpbmcmIHVybFN0cmluZykKIHsKICAgICBpZiAoIW1fY3VycmVudEl0ZW0pCiAg
ICAgICAgIHJldHVybjsKQEAgLTg2MCw3ICs4NjAsNyBAQCB2b2lkIEhpc3RvcnlDb250cm9sbGVy
OjpwdXNoU3RhdGUoUGFzc1JlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IHN0YXRlT2JqZWN0
LAogICAgIC8vIE92ZXJyaWRlIGRhdGEgaW4gdGhlIGN1cnJlbnQgaXRlbSAoY3JlYXRlZCBieSBj
cmVhdGVJdGVtVHJlZSkgdG8gcmVmbGVjdAogICAgIC8vIHRoZSBwdXNoU3RhdGUoKSBhcmd1bWVu
dHMuCiAgICAgbV9jdXJyZW50SXRlbS0+c2V0VGl0bGUodGl0bGUpOwotICAgIG1fY3VycmVudEl0
ZW0tPnNldFN0YXRlT2JqZWN0KHN0YXRlT2JqZWN0KTsKKyAgICBtX2N1cnJlbnRJdGVtLT5zZXRT
dGF0ZU9iamVjdChXVEZNb3ZlKHN0YXRlT2JqZWN0KSk7CiAgICAgbV9jdXJyZW50SXRlbS0+c2V0
VVJMU3RyaW5nKHVybFN0cmluZyk7CiAKICAgICBMT0coSGlzdG9yeSwgIkhpc3RvcnlDb250cm9s
bGVyICVwIHB1c2hTdGF0ZTogQWRkaW5nIHRvcCBpdGVtICVwLCBzZXR0aW5nIHVybCBvZiBjdXJy
ZW50IGl0ZW0gJXAgdG8gJXMiLCB0aGlzLCB0b3BJdGVtLnB0cigpLCBtX2N1cnJlbnRJdGVtLmdl
dCgpLCB1cmxTdHJpbmcuYXNjaWkoKS5kYXRhKCkpOwpAQCAtODc0LDcgKzg3NCw3IEBAIHZvaWQg
SGlzdG9yeUNvbnRyb2xsZXI6OnB1c2hTdGF0ZShQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRW
YWx1ZT4gc3RhdGVPYmplY3QsCiAgICAgbV9mcmFtZS5sb2FkZXIoKS5jbGllbnQoKS51cGRhdGVH
bG9iYWxIaXN0b3J5KCk7CiB9CiAKLXZvaWQgSGlzdG9yeUNvbnRyb2xsZXI6OnJlcGxhY2VTdGF0
ZShQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gc3RhdGVPYmplY3QsIGNvbnN0IFN0
cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nKQordm9pZCBIaXN0b3J5Q29udHJv
bGxlcjo6cmVwbGFjZVN0YXRlKFJlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+JiYgc3RhdGVP
YmplY3QsIGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nKQogewog
ICAgIGlmICghbV9jdXJyZW50SXRlbSkKICAgICAgICAgcmV0dXJuOwpAQCAtODg0LDcgKzg4NCw3
IEBAIHZvaWQgSGlzdG9yeUNvbnRyb2xsZXI6OnJlcGxhY2VTdGF0ZShQYXNzUmVmUHRyPFNlcmlh
bGl6ZWRTY3JpcHRWYWx1ZT4gc3RhdGVPYmplCiAgICAgaWYgKCF1cmxTdHJpbmcuaXNFbXB0eSgp
KQogICAgICAgICBtX2N1cnJlbnRJdGVtLT5zZXRVUkxTdHJpbmcodXJsU3RyaW5nKTsKICAgICBt
X2N1cnJlbnRJdGVtLT5zZXRUaXRsZSh0aXRsZSk7Ci0gICAgbV9jdXJyZW50SXRlbS0+c2V0U3Rh
dGVPYmplY3Qoc3RhdGVPYmplY3QpOworICAgIG1fY3VycmVudEl0ZW0tPnNldFN0YXRlT2JqZWN0
KFdURk1vdmUoc3RhdGVPYmplY3QpKTsKICAgICBtX2N1cnJlbnRJdGVtLT5zZXRGb3JtRGF0YShu
dWxscHRyKTsKICAgICBtX2N1cnJlbnRJdGVtLT5zZXRGb3JtQ29udGVudFR5cGUoU3RyaW5nKCkp
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvSGlzdG9yeUNvbnRyb2xsZXIu
aCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9IaXN0b3J5Q29udHJvbGxlci5oCmluZGV4IDEwZmYx
ZjE0YTMzZWY3NmI5MGJmZDEzZDQ2NTI4Yzc4NzVmNWViZDUuLjNkMjVlMjg5YjIyZmIxZjk5NjNm
NmRmYjMzNDc4OTU4MWQwOTI3MDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9I
aXN0b3J5Q29udHJvbGxlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9IaXN0b3J5Q29u
dHJvbGxlci5oCkBAIC04NCw4ICs4NCw4IEBAIHB1YmxpYzoKICAgICBIaXN0b3J5SXRlbSogcHJv
dmlzaW9uYWxJdGVtKCkgY29uc3QgeyByZXR1cm4gbV9wcm92aXNpb25hbEl0ZW0uZ2V0KCk7IH0K
ICAgICB2b2lkIHNldFByb3Zpc2lvbmFsSXRlbShIaXN0b3J5SXRlbSopOwogCi0gICAgdm9pZCBw
dXNoU3RhdGUoUGFzc1JlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+LCBjb25zdCBTdHJpbmcm
IHRpdGxlLCBjb25zdCBTdHJpbmcmIHVybCk7Ci0gICAgdm9pZCByZXBsYWNlU3RhdGUoUGFzc1Jl
ZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+LCBjb25zdCBTdHJpbmcmIHRpdGxlLCBjb25zdCBT
dHJpbmcmIHVybCk7CisgICAgdm9pZCBwdXNoU3RhdGUoUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRW
YWx1ZT4mJiwgY29uc3QgU3RyaW5nJiB0aXRsZSwgY29uc3QgU3RyaW5nJiB1cmwpOworICAgIHZv
aWQgcmVwbGFjZVN0YXRlKFJlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+JiYsIGNvbnN0IFN0
cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgdXJsKTsKIAogICAgIHZvaWQgc2V0RGVmZXJzTG9h
ZGluZyhib29sKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ltYWdlTG9h
ZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9JbWFnZUxvYWRlci5jcHAKaW5kZXggYTUz
YWYxMWJiOWY5M2JhMmE4MTIzZGIxYTgxMGYzODg3OTk2ZmRjNS4uMWIyZmMxYmI0OTdjN2Q0OTE5
ZDE5YzYzOWFjMGVmNzI4ZWNlMDc5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0ltYWdlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvSW1hZ2VMb2FkZXIu
Y3BwCkBAIC0xNzgsNyArMTc4LDcgQEAgdm9pZCBJbWFnZUxvYWRlcjo6dXBkYXRlRnJvbUVsZW1l
bnQoKQogICAgICAgICBvcHRpb25zLnNhbWVPcmlnaW5EYXRhVVJMRmxhZyA9IFNhbWVPcmlnaW5E
YXRhVVJMRmxhZzo6U2V0OwogCiAgICAgICAgIENhY2hlZFJlc291cmNlUmVxdWVzdCByZXF1ZXN0
KFJlc291cmNlUmVxdWVzdChkb2N1bWVudC5jb21wbGV0ZVVSTChzb3VyY2VVUkkoYXR0cikpKSwg
b3B0aW9ucyk7Ci0gICAgICAgIHJlcXVlc3Quc2V0SW5pdGlhdG9yKCZlbGVtZW50KCkpOworICAg
ICAgICByZXF1ZXN0LnNldEluaXRpYXRvcihlbGVtZW50KCkpOwogCiAgICAgICAgIHJlcXVlc3Qu
c2V0QXNQb3RlbnRpYWxseUNyb3NzT3JpZ2luKGVsZW1lbnQoKS5hdHRyaWJ1dGVXaXRob3V0U3lu
Y2hyb25pemF0aW9uKEhUTUxOYW1lczo6Y3Jvc3NvcmlnaW5BdHRyKSwgZG9jdW1lbnQpOwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5jcHAKaW5kZXggN2Vm
ZmFkN2ZhMWM1YWEzNDQ2ZWFjMDAyOTYxOGYxMmJiNTc1YjRlNS4uNTY5Nzc1MzJiOGIxMmJlMDhh
NjE5Y2QzZmIxYzE4NzVkM2I3NmViMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L05hdmlnYXRpb25TY2hlZHVsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZp
Z2F0aW9uU2NoZWR1bGVyLmNwcApAQCAtNjgsNiArNjgsMTYgQEAgcHVibGljOgogICAgICAgICAs
IG1fdXNlckdlc3R1cmVUb0ZvcndhcmQoVXNlckdlc3R1cmVJbmRpY2F0b3I6OmN1cnJlbnRVc2Vy
R2VzdHVyZSgpKQogICAgIHsKICAgICB9CisgICAgU2NoZWR1bGVkTmF2aWdhdGlvbihkb3VibGUg
ZGVsYXksIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tC
YWNrRm9yd2FyZExpc3QsIGJvb2wgd2FzRHVyaW5nTG9hZCwgYm9vbCBpc0xvY2F0aW9uQ2hhbmdl
LCBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5IGV4dGVybmFsVVJMUG9saWN5KQorICAgICAg
ICA6IG1fZGVsYXkoZGVsYXkpCisgICAgICAgICwgbV9sb2NrSGlzdG9yeShsb2NrSGlzdG9yeSkK
KyAgICAgICAgLCBtX2xvY2tCYWNrRm9yd2FyZExpc3QobG9ja0JhY2tGb3J3YXJkTGlzdCkKKyAg
ICAgICAgLCBtX3dhc0R1cmluZ0xvYWQod2FzRHVyaW5nTG9hZCkKKyAgICAgICAgLCBtX2lzTG9j
YXRpb25DaGFuZ2UoaXNMb2NhdGlvbkNoYW5nZSkKKyAgICAgICAgLCBtX3VzZXJHZXN0dXJlVG9G
b3J3YXJkKFVzZXJHZXN0dXJlSW5kaWNhdG9yOjpjdXJyZW50VXNlckdlc3R1cmUoKSkKKyAgICAg
ICAgLCBtX3Nob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3koZXh0ZXJuYWxVUkxQb2xpY3kpCisg
ICAgeworICAgIH0KICAgICB2aXJ0dWFsIH5TY2hlZHVsZWROYXZpZ2F0aW9uKCkgeyB9CiAKICAg
ICB2aXJ0dWFsIHZvaWQgZmlyZShGcmFtZSYpID0gMDsKQEAgLTgxLDEyICs5MSwxMSBAQCBwdWJs
aWM6CiAgICAgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0KCkgY29uc3Qg
eyByZXR1cm4gbV9sb2NrQmFja0ZvcndhcmRMaXN0OyB9CiAgICAgYm9vbCB3YXNEdXJpbmdMb2Fk
KCkgY29uc3QgeyByZXR1cm4gbV93YXNEdXJpbmdMb2FkOyB9CiAgICAgYm9vbCBpc0xvY2F0aW9u
Q2hhbmdlKCkgY29uc3QgeyByZXR1cm4gbV9pc0xvY2F0aW9uQ2hhbmdlOyB9Ci0gICAgUmVmUHRy
PFVzZXJHZXN0dXJlVG9rZW4+IHVzZXJHZXN0dXJlVG9Gb3J3YXJkKCkgY29uc3QgeyByZXR1cm4g
bV91c2VyR2VzdHVyZVRvRm9yd2FyZDsgfQorICAgIFVzZXJHZXN0dXJlVG9rZW4qIHVzZXJHZXN0
dXJlVG9Gb3J3YXJkKCkgY29uc3QgeyByZXR1cm4gbV91c2VyR2VzdHVyZVRvRm9yd2FyZC5nZXQo
KTsgfQogCiBwcm90ZWN0ZWQ6CiAgICAgdm9pZCBjbGVhclVzZXJHZXN0dXJlKCkgeyBtX3VzZXJH
ZXN0dXJlVG9Gb3J3YXJkID0gbnVsbHB0cjsgfQotCi0gICAgU2hvdWxkT3BlbkV4dGVybmFsVVJM
c1BvbGljeSBtX3Nob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgeyBTaG91bGRPcGVuRXh0ZXJu
YWxVUkxzUG9saWN5OjpTaG91bGROb3RBbGxvdyB9OworICAgIFNob3VsZE9wZW5FeHRlcm5hbFVS
THNQb2xpY3kgc2hvdWxkT3BlbkV4dGVybmFsVVJMcygpIGNvbnN0IHsgcmV0dXJuIG1fc2hvdWxk
T3BlbkV4dGVybmFsVVJMc1BvbGljeTsgfQogCiBwcml2YXRlOgogICAgIGRvdWJsZSBtX2RlbGF5
OwpAQCAtOTUsMTkgKzEwNCwxNyBAQCBwcml2YXRlOgogICAgIGJvb2wgbV93YXNEdXJpbmdMb2Fk
OwogICAgIGJvb2wgbV9pc0xvY2F0aW9uQ2hhbmdlOwogICAgIFJlZlB0cjxVc2VyR2VzdHVyZVRv
a2VuPiBtX3VzZXJHZXN0dXJlVG9Gb3J3YXJkOworICAgIFNob3VsZE9wZW5FeHRlcm5hbFVSTHNQ
b2xpY3kgbV9zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5IHsgU2hvdWxkT3BlbkV4dGVybmFs
VVJMc1BvbGljeTo6U2hvdWxkTm90QWxsb3cgfTsKIH07CiAKIGNsYXNzIFNjaGVkdWxlZFVSTE5h
dmlnYXRpb24gOiBwdWJsaWMgU2NoZWR1bGVkTmF2aWdhdGlvbiB7CiBwcm90ZWN0ZWQ6Ci0gICAg
U2NoZWR1bGVkVVJMTmF2aWdhdGlvbihEb2N1bWVudCogaW5pdGlhdGluZ0RvY3VtZW50LCBkb3Vi
bGUgZGVsYXksIFNlY3VyaXR5T3JpZ2luKiBzZWN1cml0eU9yaWdpbiwgY29uc3QgVVJMJiB1cmws
IGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBMb2NrQmFj
a0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QsIGJvb2wgZHVyaW5nTG9hZCwgYm9vbCBp
c0xvY2F0aW9uQ2hhbmdlKQotICAgICAgICA6IFNjaGVkdWxlZE5hdmlnYXRpb24oZGVsYXksIGxv
Y2tIaXN0b3J5LCBsb2NrQmFja0ZvcndhcmRMaXN0LCBkdXJpbmdMb2FkLCBpc0xvY2F0aW9uQ2hh
bmdlKQorICAgIFNjaGVkdWxlZFVSTE5hdmlnYXRpb24oRG9jdW1lbnQmIGluaXRpYXRpbmdEb2N1
bWVudCwgZG91YmxlIGRlbGF5LCBTZWN1cml0eU9yaWdpbiogc2VjdXJpdHlPcmlnaW4sIGNvbnN0
IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9y
eSwgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0LCBib29sIGR1cmluZ0xv
YWQsIGJvb2wgaXNMb2NhdGlvbkNoYW5nZSkKKyAgICAgICAgOiBTY2hlZHVsZWROYXZpZ2F0aW9u
KGRlbGF5LCBsb2NrSGlzdG9yeSwgbG9ja0JhY2tGb3J3YXJkTGlzdCwgZHVyaW5nTG9hZCwgaXNM
b2NhdGlvbkNoYW5nZSwgaW5pdGlhdGluZ0RvY3VtZW50LnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQ
b2xpY3lUb1Byb3BhZ2F0ZSgpKQogICAgICAgICAsIG1fc2VjdXJpdHlPcmlnaW4oc2VjdXJpdHlP
cmlnaW4pCiAgICAgICAgICwgbV91cmwodXJsKQogICAgICAgICAsIG1fcmVmZXJyZXIocmVmZXJy
ZXIpCi0gICAgICAgICwgbV9oYXZlVG9sZENsaWVudChmYWxzZSkKICAgICB7Ci0gICAgICAgIGlm
IChpbml0aWF0aW5nRG9jdW1lbnQpCi0gICAgICAgICAgICBtX3Nob3VsZE9wZW5FeHRlcm5hbFVS
THNQb2xpY3kgPSBpbml0aWF0aW5nRG9jdW1lbnQtPnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xp
Y3lUb1Byb3BhZ2F0ZSgpOwogICAgIH0KIAogICAgIHZvaWQgZmlyZShGcmFtZSYgZnJhbWUpIG92
ZXJyaWRlCkBAIC0xMTUsNyArMTIyLDcgQEAgcHJvdGVjdGVkOgogICAgICAgICBVc2VyR2VzdHVy
ZUluZGljYXRvciBnZXN0dXJlSW5kaWNhdG9yKHVzZXJHZXN0dXJlVG9Gb3J3YXJkKCkpOwogCiAg
ICAgICAgIFJlc291cmNlUmVxdWVzdCByZXNvdXJjZVJlcXVlc3QobV91cmwsIG1fcmVmZXJyZXIs
IFVzZVByb3RvY29sQ2FjaGVQb2xpY3kpOwotICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1l
UmVxdWVzdChtX3NlY3VyaXR5T3JpZ2luLmdldCgpLCByZXNvdXJjZVJlcXVlc3QsICJfc2VsZiIs
IGxvY2tIaXN0b3J5KCksIGxvY2tCYWNrRm9yd2FyZExpc3QoKSwgTWF5YmVTZW5kUmVmZXJyZXIs
IEFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTDo6WWVzLCBOZXdGcmFtZU9wZW5lclBvbGljeTo6
QWxsb3csIG1fc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSk7CisgICAgICAgIEZyYW1lTG9h
ZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KG1fc2VjdXJpdHlPcmlnaW4uZ2V0KCksIHJlc291cmNlUmVx
dWVzdCwgIl9zZWxmIiwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXli
ZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpZZXMsIE5ld0ZyYW1l
T3BlbmVyUG9saWN5OjpBbGxvdywgc2hvdWxkT3BlbkV4dGVybmFsVVJMcygpKTsKIAogICAgICAg
ICBmcmFtZS5sb2FkZXIoKS5jaGFuZ2VMb2NhdGlvbihmcmFtZVJlcXVlc3QpOwogICAgIH0KQEAg
LTE1MiwxMiArMTU5LDEyIEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPFNlY3VyaXR5T3JpZ2luPiBt
X3NlY3VyaXR5T3JpZ2luOwogICAgIFVSTCBtX3VybDsKICAgICBTdHJpbmcgbV9yZWZlcnJlcjsK
LSAgICBib29sIG1faGF2ZVRvbGRDbGllbnQ7CisgICAgYm9vbCBtX2hhdmVUb2xkQ2xpZW50IHsg
ZmFsc2UgfTsKIH07CiAKIGNsYXNzIFNjaGVkdWxlZFJlZGlyZWN0IDogcHVibGljIFNjaGVkdWxl
ZFVSTE5hdmlnYXRpb24gewogcHVibGljOgotICAgIFNjaGVkdWxlZFJlZGlyZWN0KERvY3VtZW50
KiBpbml0aWF0aW5nRG9jdW1lbnQsIGRvdWJsZSBkZWxheSwgU2VjdXJpdHlPcmlnaW4qIHNlY3Vy
aXR5T3JpZ2luLCBjb25zdCBVUkwmIHVybCwgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnksIExvY2tC
YWNrRm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3YXJkTGlzdCkKKyAgICBTY2hlZHVsZWRSZWRpcmVj
dChEb2N1bWVudCYgaW5pdGlhdGluZ0RvY3VtZW50LCBkb3VibGUgZGVsYXksIFNlY3VyaXR5T3Jp
Z2luKiBzZWN1cml0eU9yaWdpbiwgY29uc3QgVVJMJiB1cmwsIExvY2tIaXN0b3J5IGxvY2tIaXN0
b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QpCiAgICAgICAgIDog
U2NoZWR1bGVkVVJMTmF2aWdhdGlvbihpbml0aWF0aW5nRG9jdW1lbnQsIGRlbGF5LCBzZWN1cml0
eU9yaWdpbiwgdXJsLCBTdHJpbmcoKSwgbG9ja0hpc3RvcnksIGxvY2tCYWNrRm9yd2FyZExpc3Qs
IGZhbHNlLCBmYWxzZSkKICAgICB7CiAgICAgICAgIGNsZWFyVXNlckdlc3R1cmUoKTsKQEAgLTE3
Myw3ICsxODAsNyBAQCBwdWJsaWM6CiAgICAgICAgIFVzZXJHZXN0dXJlSW5kaWNhdG9yIGdlc3R1
cmVJbmRpY2F0b3IodXNlckdlc3R1cmVUb0ZvcndhcmQoKSk7CiAgICAgICAgIGJvb2wgcmVmcmVz
aCA9IGVxdWFsSWdub3JpbmdGcmFnbWVudElkZW50aWZpZXIoZnJhbWUuZG9jdW1lbnQoKS0+dXJs
KCksIHVybCgpKTsKICAgICAgICAgUmVzb3VyY2VSZXF1ZXN0IHJlc291cmNlUmVxdWVzdCh1cmwo
KSwgcmVmZXJyZXIoKSwgcmVmcmVzaCA/IFJlbG9hZElnbm9yaW5nQ2FjaGVEYXRhIDogVXNlUHJv
dG9jb2xDYWNoZVBvbGljeSk7Ci0gICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0
KHNlY3VyaXR5T3JpZ2luKCksIHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hpc3Rvcnko
KSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0
aW9uVG9JbnZhbGlkVVJMOjpObywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBtX3Nob3Vs
ZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kpOworICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1l
UmVxdWVzdChzZWN1cml0eU9yaWdpbigpLCByZXNvdXJjZVJlcXVlc3QsICJfc2VsZiIsIGxvY2tI
aXN0b3J5KCksIGxvY2tCYWNrRm9yd2FyZExpc3QoKSwgTWF5YmVTZW5kUmVmZXJyZXIsIEFsbG93
TmF2aWdhdGlvblRvSW52YWxpZFVSTDo6Tm8sIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxvdywg
c2hvdWxkT3BlbkV4dGVybmFsVVJMcygpKTsKIAogICAgICAgICBmcmFtZS5sb2FkZXIoKS5jaGFu
Z2VMb2NhdGlvbihmcmFtZVJlcXVlc3QpOwogICAgIH0KQEAgLTE4MSw3ICsxODgsNyBAQCBwdWJs
aWM6CiAKIGNsYXNzIFNjaGVkdWxlZExvY2F0aW9uQ2hhbmdlIDogcHVibGljIFNjaGVkdWxlZFVS
TE5hdmlnYXRpb24gewogcHVibGljOgotICAgIFNjaGVkdWxlZExvY2F0aW9uQ2hhbmdlKERvY3Vt
ZW50KiBpbml0aWF0aW5nRG9jdW1lbnQsIFNlY3VyaXR5T3JpZ2luKiBzZWN1cml0eU9yaWdpbiwg
Y29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIExvY2tIaXN0b3J5IGxvY2tI
aXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QsIGJvb2wgZHVy
aW5nTG9hZCkKKyAgICBTY2hlZHVsZWRMb2NhdGlvbkNoYW5nZShEb2N1bWVudCYgaW5pdGlhdGlu
Z0RvY3VtZW50LCBTZWN1cml0eU9yaWdpbiogc2VjdXJpdHlPcmlnaW4sIGNvbnN0IFVSTCYgdXJs
LCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSwgTG9ja0Jh
Y2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0LCBib29sIGR1cmluZ0xvYWQpCiAgICAg
ICAgIDogU2NoZWR1bGVkVVJMTmF2aWdhdGlvbihpbml0aWF0aW5nRG9jdW1lbnQsIDAuMCwgc2Vj
dXJpdHlPcmlnaW4sIHVybCwgcmVmZXJyZXIsIGxvY2tIaXN0b3J5LCBsb2NrQmFja0ZvcndhcmRM
aXN0LCBkdXJpbmdMb2FkLCB0cnVlKSB7IH0KIAogICAgIHZvaWQgZmlyZShGcmFtZSYgZnJhbWUp
IG92ZXJyaWRlCkBAIC0xODksMTQgKzE5NiwxNCBAQCBwdWJsaWM6CiAgICAgICAgIFVzZXJHZXN0
dXJlSW5kaWNhdG9yIGdlc3R1cmVJbmRpY2F0b3IodXNlckdlc3R1cmVUb0ZvcndhcmQoKSk7CiAK
ICAgICAgICAgUmVzb3VyY2VSZXF1ZXN0IHJlc291cmNlUmVxdWVzdCh1cmwoKSwgcmVmZXJyZXIo
KSwgVXNlUHJvdG9jb2xDYWNoZVBvbGljeSk7Ci0gICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJh
bWVSZXF1ZXN0KHNlY3VyaXR5T3JpZ2luKCksIHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9j
a0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxs
b3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpObywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93
LCBtX3Nob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kpOworICAgICAgICBGcmFtZUxvYWRSZXF1
ZXN0IGZyYW1lUmVxdWVzdChzZWN1cml0eU9yaWdpbigpLCByZXNvdXJjZVJlcXVlc3QsICJfc2Vs
ZiIsIGxvY2tIaXN0b3J5KCksIGxvY2tCYWNrRm9yd2FyZExpc3QoKSwgTWF5YmVTZW5kUmVmZXJy
ZXIsIEFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTDo6Tm8sIE5ld0ZyYW1lT3BlbmVyUG9saWN5
OjpBbGxvdywgc2hvdWxkT3BlbkV4dGVybmFsVVJMcygpKTsKICAgICAgICAgZnJhbWUubG9hZGVy
KCkuY2hhbmdlTG9jYXRpb24oZnJhbWVSZXF1ZXN0KTsKICAgICB9CiB9OwogCiBjbGFzcyBTY2hl
ZHVsZWRSZWZyZXNoIDogcHVibGljIFNjaGVkdWxlZFVSTE5hdmlnYXRpb24gewogcHVibGljOgot
ICAgIFNjaGVkdWxlZFJlZnJlc2goRG9jdW1lbnQqIGluaXRpYXRpbmdEb2N1bWVudCwgU2VjdXJp
dHlPcmlnaW4qIHNlY3VyaXR5T3JpZ2luLCBjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiBy
ZWZlcnJlcikKKyAgICBTY2hlZHVsZWRSZWZyZXNoKERvY3VtZW50JiBpbml0aWF0aW5nRG9jdW1l
bnQsIFNlY3VyaXR5T3JpZ2luKiBzZWN1cml0eU9yaWdpbiwgY29uc3QgVVJMJiB1cmwsIGNvbnN0
IFN0cmluZyYgcmVmZXJyZXIpCiAgICAgICAgIDogU2NoZWR1bGVkVVJMTmF2aWdhdGlvbihpbml0
aWF0aW5nRG9jdW1lbnQsIDAuMCwgc2VjdXJpdHlPcmlnaW4sIHVybCwgcmVmZXJyZXIsIExvY2tI
aXN0b3J5OjpZZXMsIExvY2tCYWNrRm9yd2FyZExpc3Q6OlllcywgZmFsc2UsIHRydWUpCiAgICAg
ewogICAgIH0KQEAgLTIwNiw3ICsyMTMsNyBAQCBwdWJsaWM6CiAgICAgICAgIFVzZXJHZXN0dXJl
SW5kaWNhdG9yIGdlc3R1cmVJbmRpY2F0b3IodXNlckdlc3R1cmVUb0ZvcndhcmQoKSk7CiAKICAg
ICAgICAgUmVzb3VyY2VSZXF1ZXN0IHJlc291cmNlUmVxdWVzdCh1cmwoKSwgcmVmZXJyZXIoKSwg
UmVsb2FkSWdub3JpbmdDYWNoZURhdGEpOwotICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1l
UmVxdWVzdChzZWN1cml0eU9yaWdpbigpLCByZXNvdXJjZVJlcXVlc3QsICJfc2VsZiIsIGxvY2tI
aXN0b3J5KCksIGxvY2tCYWNrRm9yd2FyZExpc3QoKSwgTWF5YmVTZW5kUmVmZXJyZXIsIEFsbG93
TmF2aWdhdGlvblRvSW52YWxpZFVSTDo6WWVzLCBOZXdGcmFtZU9wZW5lclBvbGljeTo6QWxsb3cs
IG1fc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSk7CisgICAgICAgIEZyYW1lTG9hZFJlcXVl
c3QgZnJhbWVSZXF1ZXN0KHNlY3VyaXR5T3JpZ2luKCksIHJlc291cmNlUmVxdWVzdCwgIl9zZWxm
IiwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJl
ciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpZZXMsIE5ld0ZyYW1lT3BlbmVyUG9saWN5
OjpBbGxvdywgc2hvdWxkT3BlbkV4dGVybmFsVVJMcygpKTsKICAgICAgICAgZnJhbWUubG9hZGVy
KCkuY2hhbmdlTG9jYXRpb24oZnJhbWVSZXF1ZXN0KTsKICAgICB9CiB9OwpAQCAtMjI2LDcgKzIz
Myw3IEBAIHB1YmxpYzoKICAgICAgICAgaWYgKCFtX2hpc3RvcnlTdGVwcykgewogICAgICAgICAg
ICAgLy8gU3BlY2lhbCBjYXNlIGZvciBnbygwKSBmcm9tIGEgZnJhbWUgLT4gcmVsb2FkIG9ubHkg
dGhlIGZyYW1lCiAgICAgICAgICAgICAvLyBUbyBmb2xsb3cgRmlyZWZveCBhbmQgSUUncyBiZWhh
dmlvciwgaGlzdG9yeSByZWxvYWQgY2FuIG9ubHkgbmF2aWdhdGUgdGhlIHNlbGYgZnJhbWUuCi0g
ICAgICAgICAgICBmcmFtZS5sb2FkZXIoKS51cmxTZWxlY3RlZChmcmFtZS5kb2N1bWVudCgpLT51
cmwoKSwgIl9zZWxmIiwgMCwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBN
YXliZVNlbmRSZWZlcnJlciwgbV9zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5KTsKKyAgICAg
ICAgICAgIGZyYW1lLmxvYWRlcigpLnVybFNlbGVjdGVkKGZyYW1lLmRvY3VtZW50KCktPnVybCgp
LCAiX3NlbGYiLCAwLCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0KCksIE1heWJl
U2VuZFJlZmVycmVyLCBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzKCkpOwogICAgICAgICAgICAgcmV0
dXJuOwogICAgICAgICB9CiAgICAgICAgIApAQCAtMjQxLDE1ICsyNDgsMTAgQEAgcHJpdmF0ZToK
IAogY2xhc3MgU2NoZWR1bGVkRm9ybVN1Ym1pc3Npb24gOiBwdWJsaWMgU2NoZWR1bGVkTmF2aWdh
dGlvbiB7CiBwdWJsaWM6Ci0gICAgU2NoZWR1bGVkRm9ybVN1Ym1pc3Npb24oUGFzc1JlZlB0cjxG
b3JtU3VibWlzc2lvbj4gc3VibWlzc2lvbiwgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0Zv
cndhcmRMaXN0LCBib29sIGR1cmluZ0xvYWQpCi0gICAgICAgIDogU2NoZWR1bGVkTmF2aWdhdGlv
bigwLCBzdWJtaXNzaW9uLT5sb2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0LCBkdXJp
bmdMb2FkLCB0cnVlKQotICAgICAgICAsIG1fc3VibWlzc2lvbihzdWJtaXNzaW9uKQotICAgICAg
ICAsIG1faGF2ZVRvbGRDbGllbnQoZmFsc2UpCisgICAgU2NoZWR1bGVkRm9ybVN1Ym1pc3Npb24o
UmVmPEZvcm1TdWJtaXNzaW9uPiYmIHN1Ym1pc3Npb24sIExvY2tCYWNrRm9yd2FyZExpc3QgbG9j
a0JhY2tGb3J3YXJkTGlzdCwgYm9vbCBkdXJpbmdMb2FkKQorICAgICAgICA6IFNjaGVkdWxlZE5h
dmlnYXRpb24oMCwgc3VibWlzc2lvbi0+bG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlz
dCwgZHVyaW5nTG9hZCwgdHJ1ZSwgc3VibWlzc2lvbi0+c3RhdGUoKS5zb3VyY2VEb2N1bWVudCgp
LnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3lUb1Byb3BhZ2F0ZSgpKQorICAgICAgICAsIG1f
c3VibWlzc2lvbihXVEZNb3ZlKHN1Ym1pc3Npb24pKQogICAgIHsKLSAgICAgICAgQVNTRVJUKG1f
c3VibWlzc2lvbi0+c3RhdGUoKSk7Ci0KLSAgICAgICAgaWYgKERvY3VtZW50KiBkb2N1bWVudCA9
IG1fc3VibWlzc2lvbi0+c3RhdGUoKS0+c291cmNlRG9jdW1lbnQoKSkKLSAgICAgICAgICAgIG1f
c2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSA9IGRvY3VtZW50LT5zaG91bGRPcGVuRXh0ZXJu
YWxVUkxzUG9saWN5VG9Qcm9wYWdhdGUoKTsKICAgICB9CiAKICAgICB2b2lkIGZpcmUoRnJhbWUm
IGZyYW1lKSBvdmVycmlkZQpAQCAtMjYwLDE0ICsyNjIsMTQgQEAgcHVibGljOgogICAgICAgICAv
LyBOb3cgdGhhdCB0aGUgdGltZXIgaGFzIGZpcmVkLCB3ZSBuZWVkIHRvIHJlcGVhdCB0aGUgc2Vj
dXJpdHkgY2hlY2sgd2hpY2ggbm9ybWFsbHkgaXMgZG9uZSB3aGVuCiAgICAgICAgIC8vIHNlbGVj
dGluZyBhIHRhcmdldCwgaW4gY2FzZSBjb25kaXRpb25zIGhhdmUgY2hhbmdlZC4gT3RoZXIgY29k
ZSBwYXRocyBhdm9pZCB0aGlzIGJ5IHRhcmdldGluZwogICAgICAgICAvLyB3aXRob3V0IGxlYXZp
bmcgYSB0aW1lIHdpbmRvdy4gSWYgd2UgZmFpbCB0aGUgY2hlY2sganVzdCBzaWxlbnRseSBkcm9w
IHRoZSBmb3JtIHN1Ym1pc3Npb24uCi0gICAgICAgIERvY3VtZW50KiByZXF1ZXN0aW5nRG9jdW1l
bnQgPSBtX3N1Ym1pc3Npb24tPnN0YXRlKCktPnNvdXJjZURvY3VtZW50KCk7Ci0gICAgICAgIGlm
ICghcmVxdWVzdGluZ0RvY3VtZW50LT5jYW5OYXZpZ2F0ZSgmZnJhbWUpKQorICAgICAgICBhdXRv
JiByZXF1ZXN0aW5nRG9jdW1lbnQgPSBtX3N1Ym1pc3Npb24tPnN0YXRlKCkuc291cmNlRG9jdW1l
bnQoKTsKKyAgICAgICAgaWYgKCFyZXF1ZXN0aW5nRG9jdW1lbnQuY2FuTmF2aWdhdGUoJmZyYW1l
KSkKICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFtZVJl
cXVlc3QocmVxdWVzdGluZ0RvY3VtZW50LT5zZWN1cml0eU9yaWdpbigpLCBsb2NrSGlzdG9yeSgp
LCBsb2NrQmFja0ZvcndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVycmVyLCBBbGxvd05hdmlnYXRp
b25Ub0ludmFsaWRVUkw6OlllcywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBtX3Nob3Vs
ZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kpOworICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1l
UmVxdWVzdChyZXF1ZXN0aW5nRG9jdW1lbnQuc2VjdXJpdHlPcmlnaW4oKSwgbG9ja0hpc3Rvcnko
KSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0
aW9uVG9JbnZhbGlkVVJMOjpZZXMsIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxvdywgc2hvdWxk
T3BlbkV4dGVybmFsVVJMcygpKTsKICAgICAgICAgbV9zdWJtaXNzaW9uLT5wb3B1bGF0ZUZyYW1l
TG9hZFJlcXVlc3QoZnJhbWVSZXF1ZXN0KTsKLSAgICAgICAgZnJhbWUubG9hZGVyKCkubG9hZEZy
YW1lUmVxdWVzdChmcmFtZVJlcXVlc3QsIG1fc3VibWlzc2lvbi0+ZXZlbnQoKSwgbV9zdWJtaXNz
aW9uLT5zdGF0ZSgpKTsKKyAgICAgICAgZnJhbWUubG9hZGVyKCkubG9hZEZyYW1lUmVxdWVzdChm
cmFtZVJlcXVlc3QsIG1fc3VibWlzc2lvbi0+ZXZlbnQoKSwgJm1fc3VibWlzc2lvbi0+c3RhdGUo
KSk7CiAgICAgfQotICAgIAorCiAgICAgdm9pZCBkaWRTdGFydFRpbWVyKEZyYW1lJiBmcmFtZSwg
VGltZXImIHRpbWVyKSBvdmVycmlkZQogICAgIHsKICAgICAgICAgaWYgKG1faGF2ZVRvbGRDbGll
bnQpCkBAIC0yOTMsOCArMjk1LDggQEAgcHVibGljOgogICAgIH0KIAogcHJpdmF0ZToKLSAgICBS
ZWZQdHI8Rm9ybVN1Ym1pc3Npb24+IG1fc3VibWlzc2lvbjsKLSAgICBib29sIG1faGF2ZVRvbGRD
bGllbnQ7CisgICAgUmVmPEZvcm1TdWJtaXNzaW9uPiBtX3N1Ym1pc3Npb247CisgICAgYm9vbCBt
X2hhdmVUb2xkQ2xpZW50IHsgZmFsc2UgfTsKIH07CiAKIGNsYXNzIFNjaGVkdWxlZFBhZ2VCbG9j
ayBmaW5hbCA6IHB1YmxpYyBTY2hlZHVsZWROYXZpZ2F0aW9uIHsKQEAgLTMxMyw3ICszMTUsNyBA
QCBwdWJsaWM6CiAgICAgICAgIFN1YnN0aXR1dGVEYXRhIHJlcGxhY2VtZW50RGF0YShTaGFyZWRC
dWZmZXI6OmNyZWF0ZSgpLCBtX29yaWdpbkRvY3VtZW50LnVybCgpLCByZXBsYWNlbWVudFJlc3Bv
bnNlLCBTdWJzdGl0dXRlRGF0YTo6U2Vzc2lvbkhpc3RvcnlWaXNpYmlsaXR5OjpIaWRkZW4pOwog
CiAgICAgICAgIFJlc291cmNlUmVxdWVzdCByZXNvdXJjZVJlcXVlc3QobV9vcmlnaW5Eb2N1bWVu
dC51cmwoKSwgZW1wdHlTdHJpbmcoKSwgUmVsb2FkSWdub3JpbmdDYWNoZURhdGEpOwotICAgICAg
ICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1lUmVxdWVzdChtX29yaWdpbkRvY3VtZW50LnNlY3VyaXR5
T3JpZ2luKCksIHJlc291cmNlUmVxdWVzdCwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJk
TGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpZ
ZXMsIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxvdywgbV9zaG91bGRPcGVuRXh0ZXJuYWxVUkxz
UG9saWN5KTsKKyAgICAgICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFtZVJlcXVlc3QobV9vcmlnaW5E
b2N1bWVudC5zZWN1cml0eU9yaWdpbigpLCByZXNvdXJjZVJlcXVlc3QsIGxvY2tIaXN0b3J5KCks
IGxvY2tCYWNrRm9yd2FyZExpc3QoKSwgTWF5YmVTZW5kUmVmZXJyZXIsIEFsbG93TmF2aWdhdGlv
blRvSW52YWxpZFVSTDo6WWVzLCBOZXdGcmFtZU9wZW5lclBvbGljeTo6QWxsb3csIHNob3VsZE9w
ZW5FeHRlcm5hbFVSTHMoKSk7CiAgICAgICAgIGZyYW1lUmVxdWVzdC5zZXRTdWJzdGl0dXRlRGF0
YShyZXBsYWNlbWVudERhdGEpOwogICAgICAgICBmcmFtZS5sb2FkZXIoKS5sb2FkKGZyYW1lUmVx
dWVzdCk7CiAgICAgfQpAQCAtMzY0LDcgKzM2Niw3IEBAIGlubGluZSBib29sIE5hdmlnYXRpb25T
Y2hlZHVsZXI6OnNob3VsZFNjaGVkdWxlTmF2aWdhdGlvbihjb25zdCBVUkwmIHVybCkgY29uc3QK
ICAgICByZXR1cm4gTmF2aWdhdGlvbkRpc2FibGVyRm9yQmVmb3JlVW5sb2FkOjppc05hdmlnYXRp
b25BbGxvd2VkKCk7CiB9CiAKLXZvaWQgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2NoZWR1bGVSZWRp
cmVjdChEb2N1bWVudCogaW5pdGlhdGluZ0RvY3VtZW50LCBkb3VibGUgZGVsYXksIGNvbnN0IFVS
TCYgdXJsKQordm9pZCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjpzY2hlZHVsZVJlZGlyZWN0KERvY3Vt
ZW50JiBpbml0aWF0aW5nRG9jdW1lbnQsIGRvdWJsZSBkZWxheSwgY29uc3QgVVJMJiB1cmwpCiB7
CiAgICAgaWYgKCFzaG91bGRTY2hlZHVsZU5hdmlnYXRpb24odXJsKSkKICAgICAgICAgcmV0dXJu
OwpAQCAtMzc1LDcgKzM3Nyw3IEBAIHZvaWQgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2NoZWR1bGVS
ZWRpcmVjdChEb2N1bWVudCogaW5pdGlhdGluZ0RvY3VtZW50LCBkb3VibGUKIAogICAgIC8vIFdl
IHdhbnQgYSBuZXcgYmFjay9mb3J3YXJkIGxpc3QgaXRlbSBpZiB0aGUgcmVmcmVzaCB0aW1lb3V0
IGlzID4gMSBzZWNvbmQuCiAgICAgaWYgKCFtX3JlZGlyZWN0IHx8IGRlbGF5IDw9IG1fcmVkaXJl
Y3QtPmRlbGF5KCkpIHsKLSAgICAgICAgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0Zvcndh
cmRMaXN0ID0gZGVsYXkgPD0gMSA/IExvY2tCYWNrRm9yd2FyZExpc3Q6OlllcyA6IExvY2tCYWNr
Rm9yd2FyZExpc3Q6Ok5vOworICAgICAgICBhdXRvIGxvY2tCYWNrRm9yd2FyZExpc3QgPSBkZWxh
eSA8PSAxID8gTG9ja0JhY2tGb3J3YXJkTGlzdDo6WWVzIDogTG9ja0JhY2tGb3J3YXJkTGlzdDo6
Tm87CiAgICAgICAgIHNjaGVkdWxlKHN0ZDo6bWFrZV91bmlxdWU8U2NoZWR1bGVkUmVkaXJlY3Q+
KGluaXRpYXRpbmdEb2N1bWVudCwgZGVsYXksIG1fZnJhbWUuZG9jdW1lbnQoKS0+c2VjdXJpdHlP
cmlnaW4oKSwgdXJsLCBMb2NrSGlzdG9yeTo6WWVzLCBsb2NrQmFja0ZvcndhcmRMaXN0KSk7CiAg
ICAgfQogfQpAQCAtMzk4LDcgKzQwMCw3IEBAIExvY2tCYWNrRm9yd2FyZExpc3QgTmF2aWdhdGlv
blNjaGVkdWxlcjo6bXVzdExvY2tCYWNrRm9yd2FyZExpc3QoRnJhbWUmIHRhcmdldEZyCiAgICAg
cmV0dXJuIExvY2tCYWNrRm9yd2FyZExpc3Q6Ok5vOwogfQogCi12b2lkIE5hdmlnYXRpb25TY2hl
ZHVsZXI6OnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UoRG9jdW1lbnQqIGluaXRpYXRpbmdEb2N1bWVu
dCwgU2VjdXJpdHlPcmlnaW4qIHNlY3VyaXR5T3JpZ2luLCBjb25zdCBVUkwmIHVybCwgY29uc3Qg
U3RyaW5nJiByZWZlcnJlciwgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnksIExvY2tCYWNrRm9yd2Fy
ZExpc3QgbG9ja0JhY2tGb3J3YXJkTGlzdCkKK3ZvaWQgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2No
ZWR1bGVMb2NhdGlvbkNoYW5nZShEb2N1bWVudCYgaW5pdGlhdGluZ0RvY3VtZW50LCBTZWN1cml0
eU9yaWdpbiogc2VjdXJpdHlPcmlnaW4sIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIHJl
ZmVycmVyLCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSwgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2Nr
QmFja0ZvcndhcmRMaXN0KQogewogICAgIGlmICghc2hvdWxkU2NoZWR1bGVOYXZpZ2F0aW9uKHVy
bCkpCiAgICAgICAgIHJldHVybjsKQEAgLTQxMiwxMCArNDE0LDcgQEAgdm9pZCBOYXZpZ2F0aW9u
U2NoZWR1bGVyOjpzY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKERvY3VtZW50KiBpbml0aWF0aW5nRG9j
dW1lbnQsIFMKICAgICAvLyBmcmFnbWVudCBwYXJ0LCB3ZSBkb24ndCBuZWVkIHRvIHNjaGVkdWxl
IHRoZSBsb2NhdGlvbiBjaGFuZ2UuCiAgICAgaWYgKHVybC5oYXNGcmFnbWVudElkZW50aWZpZXIo
KSAmJiBlcXVhbElnbm9yaW5nRnJhZ21lbnRJZGVudGlmaWVyKG1fZnJhbWUuZG9jdW1lbnQoKS0+
dXJsKCksIHVybCkpIHsKICAgICAgICAgUmVzb3VyY2VSZXF1ZXN0IHJlc291cmNlUmVxdWVzdCht
X2ZyYW1lLmRvY3VtZW50KCktPmNvbXBsZXRlVVJMKHVybCksIHJlZmVycmVyLCBVc2VQcm90b2Nv
bENhY2hlUG9saWN5KTsKLSAgICAgICAgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSBzaG91
bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5ID0gU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeTo6
U2hvdWxkTm90QWxsb3c7Ci0gICAgICAgIGlmIChpbml0aWF0aW5nRG9jdW1lbnQpCi0gICAgICAg
ICAgICBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5ID0gaW5pdGlhdGluZ0RvY3VtZW50LT5z
aG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5VG9Qcm9wYWdhdGUoKTsKLSAgICAgICAgRnJhbWVM
b2FkUmVxdWVzdCBmcmFtZVJlcXVlc3Qoc2VjdXJpdHlPcmlnaW4sIHJlc291cmNlUmVxdWVzdCwg
Il9zZWxmIiwgbG9ja0hpc3RvcnksIGxvY2tCYWNrRm9yd2FyZExpc3QsIE1heWJlU2VuZFJlZmVy
cmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkw6Ok5vLCBOZXdGcmFtZU9wZW5lclBvbGlj
eTo6QWxsb3csIFJlcGxhY2VEb2N1bWVudElmSmF2YVNjcmlwdFVSTCwgc2hvdWxkT3BlbkV4dGVy
bmFsVVJMc1BvbGljeSk7CisgICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KHNl
Y3VyaXR5T3JpZ2luLCByZXNvdXJjZVJlcXVlc3QsICJfc2VsZiIsIGxvY2tIaXN0b3J5LCBsb2Nr
QmFja0ZvcndhcmRMaXN0LCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZh
bGlkVVJMOjpObywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBSZXBsYWNlRG9jdW1lbnRJ
ZkphdmFTY3JpcHRVUkwsIGluaXRpYXRpbmdEb2N1bWVudC5zaG91bGRPcGVuRXh0ZXJuYWxVUkxz
UG9saWN5VG9Qcm9wYWdhdGUoKSk7CiAgICAgICAgIGxvYWRlci5jaGFuZ2VMb2NhdGlvbihmcmFt
ZVJlcXVlc3QpOwogICAgICAgICByZXR1cm47CiAgICAgfQpAQCAtNDI3LDcgKzQyNiw3IEBAIHZv
aWQgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2NoZWR1bGVMb2NhdGlvbkNoYW5nZShEb2N1bWVudCog
aW5pdGlhdGluZ0RvY3VtZW50LCBTCiAgICAgc2NoZWR1bGUoc3RkOjptYWtlX3VuaXF1ZTxTY2hl
ZHVsZWRMb2NhdGlvbkNoYW5nZT4oaW5pdGlhdGluZ0RvY3VtZW50LCBzZWN1cml0eU9yaWdpbiwg
dXJsLCByZWZlcnJlciwgbG9ja0hpc3RvcnksIGxvY2tCYWNrRm9yd2FyZExpc3QsIGR1cmluZ0xv
YWQpKTsKIH0KIAotdm9pZCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjpzY2hlZHVsZUZvcm1TdWJtaXNz
aW9uKFBhc3NSZWZQdHI8Rm9ybVN1Ym1pc3Npb24+IHN1Ym1pc3Npb24pCit2b2lkIE5hdmlnYXRp
b25TY2hlZHVsZXI6OnNjaGVkdWxlRm9ybVN1Ym1pc3Npb24oUmVmPEZvcm1TdWJtaXNzaW9uPiYm
IHN1Ym1pc3Npb24pCiB7CiAgICAgQVNTRVJUKG1fZnJhbWUucGFnZSgpKTsKIApAQCAtNDQzLDE0
ICs0NDIsMTQgQEAgdm9pZCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjpzY2hlZHVsZUZvcm1TdWJtaXNz
aW9uKFBhc3NSZWZQdHI8Rm9ybVN1Ym1pc3Npb24+IHN1Ym0KICAgICAvLyBTZWUgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMyMzgzIGZvciB0aGUgb3JpZ2luYWwgbW90
aXZhdGlvbiBmb3IgdGhpcy4KICAgICBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2Fy
ZExpc3QgPSBtdXN0TG9ja0JhY2tGb3J3YXJkTGlzdChtX2ZyYW1lKTsKICAgICBpZiAobG9ja0Jh
Y2tGb3J3YXJkTGlzdCA9PSBMb2NrQmFja0ZvcndhcmRMaXN0OjpObwotICAgICAgICAmJiAoc3Vi
bWlzc2lvbi0+c3RhdGUoKS0+Zm9ybVN1Ym1pc3Npb25UcmlnZ2VyKCkgPT0gU3VibWl0dGVkQnlK
YXZhU2NyaXB0ICYmIG1fZnJhbWUudHJlZSgpLnBhcmVudCgpICYmICFVc2VyR2VzdHVyZUluZGlj
YXRvcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkpKSB7CisgICAgICAgICYmIChzdWJtaXNzaW9u
LT5zdGF0ZSgpLmZvcm1TdWJtaXNzaW9uVHJpZ2dlcigpID09IFN1Ym1pdHRlZEJ5SmF2YVNjcmlw
dCAmJiBtX2ZyYW1lLnRyZWUoKS5wYXJlbnQoKSAmJiAhVXNlckdlc3R1cmVJbmRpY2F0b3I6OnBy
b2Nlc3NpbmdVc2VyR2VzdHVyZSgpKSkgewogICAgICAgICBsb2NrQmFja0ZvcndhcmRMaXN0ID0g
TG9ja0JhY2tGb3J3YXJkTGlzdDo6WWVzOwogICAgIH0KICAgICAKLSAgICBzY2hlZHVsZShzdGQ6
Om1ha2VfdW5pcXVlPFNjaGVkdWxlZEZvcm1TdWJtaXNzaW9uPihzdWJtaXNzaW9uLCBsb2NrQmFj
a0ZvcndhcmRMaXN0LCBkdXJpbmdMb2FkKSk7CisgICAgc2NoZWR1bGUoc3RkOjptYWtlX3VuaXF1
ZTxTY2hlZHVsZWRGb3JtU3VibWlzc2lvbj4oV1RGTW92ZShzdWJtaXNzaW9uKSwgbG9ja0JhY2tG
b3J3YXJkTGlzdCwgZHVyaW5nTG9hZCkpOwogfQogCi12b2lkIE5hdmlnYXRpb25TY2hlZHVsZXI6
OnNjaGVkdWxlUmVmcmVzaChEb2N1bWVudCogaW5pdGlhdGluZ0RvY3VtZW50KQordm9pZCBOYXZp
Z2F0aW9uU2NoZWR1bGVyOjpzY2hlZHVsZVJlZnJlc2goRG9jdW1lbnQmIGluaXRpYXRpbmdEb2N1
bWVudCkKIHsKICAgICBpZiAoIXNob3VsZFNjaGVkdWxlTmF2aWdhdGlvbigpKQogICAgICAgICBy
ZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvblNjaGVk
dWxlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL05hdmlnYXRpb25TY2hlZHVsZXIuaAppbmRl
eCA0OWM0M2JlMmJiMTVlYmE4MDU2NTc2NjEyZDE1ZDFhYmNmMzA3NzE3Li4wYWUxNzExNDU4YzM3
NDZmNzc4MTZmZWQ5MzY3YmE0OGJmNjE2ZmQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9O
YXZpZ2F0aW9uU2NoZWR1bGVyLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChD
KSAyMDA2LTIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0
IChDKSAyMDA2LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICogQ29weXJp
Z2h0IChDKSAyMDA4LCAyMDA5IFRvcmNoIE1vYmlsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
IChodHRwOi8vd3d3LnRvcmNobW9iaWxlLmNvbS8pCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDkgQWRh
bSBCYXJ0aC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCkBAIC02OCwxMCArNjgsMTAgQEAgcHVi
bGljOgogICAgIGJvb2wgcmVkaXJlY3RTY2hlZHVsZWREdXJpbmdMb2FkKCk7CiAgICAgYm9vbCBs
b2NhdGlvbkNoYW5nZVBlbmRpbmcoKTsKIAotICAgIHZvaWQgc2NoZWR1bGVSZWRpcmVjdChEb2N1
bWVudCogaW5pdGlhdGluZ0RvY3VtZW50LCBkb3VibGUgZGVsYXksIGNvbnN0IFVSTCYpOwotICAg
IHZvaWQgc2NoZWR1bGVMb2NhdGlvbkNoYW5nZShEb2N1bWVudCogaW5pdGlhdGluZ0RvY3VtZW50
LCBTZWN1cml0eU9yaWdpbiosIGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIExv
Y2tIaXN0b3J5ID0gTG9ja0hpc3Rvcnk6OlllcywgTG9ja0JhY2tGb3J3YXJkTGlzdCA9IExvY2tC
YWNrRm9yd2FyZExpc3Q6Olllcyk7Ci0gICAgdm9pZCBzY2hlZHVsZUZvcm1TdWJtaXNzaW9uKFBh
c3NSZWZQdHI8Rm9ybVN1Ym1pc3Npb24+KTsKLSAgICB2b2lkIHNjaGVkdWxlUmVmcmVzaChEb2N1
bWVudCogaW5pdGlhdGluZ0RvY3VtZW50KTsKKyAgICB2b2lkIHNjaGVkdWxlUmVkaXJlY3QoRG9j
dW1lbnQmIGluaXRpYXRpbmdEb2N1bWVudCwgZG91YmxlIGRlbGF5LCBjb25zdCBVUkwmKTsKKyAg
ICB2b2lkIHNjaGVkdWxlTG9jYXRpb25DaGFuZ2UoRG9jdW1lbnQmIGluaXRpYXRpbmdEb2N1bWVu
dCwgU2VjdXJpdHlPcmlnaW4qLCBjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBM
b2NrSGlzdG9yeSA9IExvY2tIaXN0b3J5OjpZZXMsIExvY2tCYWNrRm9yd2FyZExpc3QgPSBMb2Nr
QmFja0ZvcndhcmRMaXN0OjpZZXMpOworICAgIHZvaWQgc2NoZWR1bGVGb3JtU3VibWlzc2lvbihS
ZWY8Rm9ybVN1Ym1pc3Npb24+JiYpOworICAgIHZvaWQgc2NoZWR1bGVSZWZyZXNoKERvY3VtZW50
JiBpbml0aWF0aW5nRG9jdW1lbnQpOwogICAgIHZvaWQgc2NoZWR1bGVIaXN0b3J5TmF2aWdhdGlv
bihpbnQgc3RlcHMpOwogICAgIHZvaWQgc2NoZWR1bGVQYWdlQmxvY2soRG9jdW1lbnQmIG9yaWdp
bkRvY3VtZW50KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNl
TG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5jcHAKaW5k
ZXggOWUyYWJkYWRjYTE3ODFhZDEwNWMzOTQ5ZjJmMGNkMTBmZWVhYWQ3YS4uMzY1MGViYjU4OGQ4
MDJhODYxZTMzMGExZWQ3NzAwYTk1M2M2N2Y0OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVz
b3VyY2VMb2FkZXIuY3BwCkBAIC0xOTEsNyArMTkxLDcgQEAgdm9pZCBSZXNvdXJjZUxvYWRlcjo6
c3RhcnQoKQogICAgICAgICByZXR1cm47CiAjZW5kaWYKIAotICAgIGlmIChtX2RvY3VtZW50TG9h
ZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5tYXliZUxvYWRSZXNvdXJjZSgqdGhpcywgbV9y
ZXF1ZXN0LCBtX3JlcXVlc3QudXJsKCkpKQorICAgIGlmIChtX2RvY3VtZW50TG9hZGVyLT5hcHBs
aWNhdGlvbkNhY2hlSG9zdCgpLm1heWJlTG9hZFJlc291cmNlKCp0aGlzLCBtX3JlcXVlc3QsIG1f
cmVxdWVzdC51cmwoKSkpCiAgICAgICAgIHJldHVybjsKIAogICAgIGlmIChtX2RlZmVyc0xvYWRp
bmcpIHsKQEAgLTYwNyw3ICs2MDcsNyBAQCBSZXNvdXJjZUVycm9yIFJlc291cmNlTG9hZGVyOjpj
YW5ub3RTaG93VVJMRXJyb3IoKQogCiBSZXNvdXJjZVJlcXVlc3QgUmVzb3VyY2VMb2FkZXI6Ondp
bGxTZW5kUmVxdWVzdChSZXNvdXJjZUhhbmRsZSosIFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3Qs
IFJlc291cmNlUmVzcG9uc2UmJiByZWRpcmVjdFJlc3BvbnNlKQogewotICAgIGlmIChkb2N1bWVu
dExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5tYXliZUxvYWRGYWxsYmFja0ZvclJl
ZGlyZWN0KHRoaXMsIHJlcXVlc3QsIHJlZGlyZWN0UmVzcG9uc2UpKQorICAgIGlmIChkb2N1bWVu
dExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLm1heWJlTG9hZEZhbGxiYWNrRm9yUmVk
aXJlY3QodGhpcywgcmVxdWVzdCwgcmVkaXJlY3RSZXNwb25zZSkpCiAgICAgICAgIHJldHVybiBX
VEZNb3ZlKHJlcXVlc3QpOwogICAgIHdpbGxTZW5kUmVxdWVzdEludGVybmFsKHJlcXVlc3QsIHJl
ZGlyZWN0UmVzcG9uc2UpOwogICAgIHJldHVybiBXVEZNb3ZlKHJlcXVlc3QpOwpAQCAtNjIwLDcg
KzYyMCw3IEBAIHZvaWQgUmVzb3VyY2VMb2FkZXI6OmRpZFNlbmREYXRhKFJlc291cmNlSGFuZGxl
KiwgdW5zaWduZWQgbG9uZyBsb25nIGJ5dGVzU2VudCwKIAogdm9pZCBSZXNvdXJjZUxvYWRlcjo6
ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlSGFuZGxlKiwgUmVzb3VyY2VSZXNwb25zZSYmIHJl
c3BvbnNlKQogewotICAgIGlmIChkb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9z
dCgpLT5tYXliZUxvYWRGYWxsYmFja0ZvclJlc3BvbnNlKHRoaXMsIHJlc3BvbnNlKSkKKyAgICBp
ZiAoZG9jdW1lbnRMb2FkZXIoKS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS5tYXliZUxvYWRGYWxs
YmFja0ZvclJlc3BvbnNlKHRoaXMsIHJlc3BvbnNlKSkKICAgICAgICAgcmV0dXJuOwogICAgIGRp
ZFJlY2VpdmVSZXNwb25zZShyZXNwb25zZSk7CiB9CkBAIC02NDIsNyArNjQyLDcgQEAgdm9pZCBS
ZXNvdXJjZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUhhbmRsZSosIGRvdWJsZSBm
aW5pc2hUaW1lKQogCiB2b2lkIFJlc291cmNlTG9hZGVyOjpkaWRGYWlsKFJlc291cmNlSGFuZGxl
KiwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7Ci0gICAgaWYgKGRvY3VtZW50TG9hZGVy
KCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZEZhbGxiYWNrRm9yRXJyb3IodGhp
cywgZXJyb3IpKQorICAgIGlmIChkb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9z
dCgpLm1heWJlTG9hZEZhbGxiYWNrRm9yRXJyb3IodGhpcywgZXJyb3IpKQogICAgICAgICByZXR1
cm47CiAgICAgZGlkRmFpbChlcnJvcik7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvU3ViZnJhbWVMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YmZyYW1l
TG9hZGVyLmNwcAppbmRleCBhZjZjMTY0NDJlMWUyZTUzM2YzMDMzZjAwNGYzZjc3OTg4MGYxZjFm
Li4wMWFlNTNhOGNkNjMwY2VhMTkyZmMzNTA4ZDg0MjkzOGFmMjc4NmE0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvU3ViZnJhbWVMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9TdWJmcmFtZUxvYWRlci5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29w
eXJpZ2h0IChDKSAyMDA2LTIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICog
Q29weXJpZ2h0IChDKSAyMDA2LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgog
ICogQ29weXJpZ2h0IChDKSAyMDA4IE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lk
aWFyeSgtaWVzKQogICogQ29weXJpZ2h0IChDKSAyMDA4LCAyMDA5IFRvcmNoIE1vYmlsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuIChodHRwOi8vd3d3LnRvcmNobW9iaWxlLmNvbS8pCiAgKiBD
b3B5cmlnaHQgKEMpIDIwMDggQWxwIFRva2VyIDxhbHBAYXRva2VyLmNvbT4KQEAgLTEwOSwyMyAr
MTA5LDI1IEBAIGJvb2wgU3ViZnJhbWVMb2FkZXI6OnJlc291cmNlV2lsbFVzZVBsdWdpbihjb25z
dCBTdHJpbmcmIHVybCwgY29uc3QgU3RyaW5nJiBtaW1lCiAKIGJvb2wgU3ViZnJhbWVMb2FkZXI6
OnBsdWdpbklzTG9hZGFibGUoY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUp
CiB7CisgICAgYXV0byogZG9jdW1lbnQgPSBtX2ZyYW1lLmRvY3VtZW50KCk7CisKICAgICBpZiAo
TUlNRVR5cGVSZWdpc3RyeTo6aXNKYXZhQXBwbGV0TUlNRVR5cGUobWltZVR5cGUpKSB7CiAgICAg
ICAgIGlmICghbV9mcmFtZS5zZXR0aW5ncygpLmlzSmF2YUVuYWJsZWQoKSkKICAgICAgICAgICAg
IHJldHVybiBmYWxzZTsKLSAgICAgICAgaWYgKGRvY3VtZW50KCkgJiYgZG9jdW1lbnQoKS0+c2Vj
dXJpdHlPcmlnaW4oKS0+aXNMb2NhbCgpICYmICFtX2ZyYW1lLnNldHRpbmdzKCkuaXNKYXZhRW5h
YmxlZEZvckxvY2FsRmlsZXMoKSkKKyAgICAgICAgaWYgKGRvY3VtZW50ICYmIGRvY3VtZW50LT5z
ZWN1cml0eU9yaWdpbigpLT5pc0xvY2FsKCkgJiYgIW1fZnJhbWUuc2V0dGluZ3MoKS5pc0phdmFF
bmFibGVkRm9yTG9jYWxGaWxlcygpKQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0K
IAotICAgIGlmIChkb2N1bWVudCgpKSB7Ci0gICAgICAgIGlmIChkb2N1bWVudCgpLT5pc1NhbmRi
b3hlZChTYW5kYm94UGx1Z2lucykpCisgICAgaWYgKGRvY3VtZW50KSB7CisgICAgICAgIGlmIChk
b2N1bWVudC0+aXNTYW5kYm94ZWQoU2FuZGJveFBsdWdpbnMpKQogICAgICAgICAgICAgcmV0dXJu
IGZhbHNlOwogCi0gICAgICAgIGlmICghZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+Y2Fu
RGlzcGxheSh1cmwpKSB7CisgICAgICAgIGlmICghZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCkt
PmNhbkRpc3BsYXkodXJsKSkgewogICAgICAgICAgICAgRnJhbWVMb2FkZXI6OnJlcG9ydExvY2Fs
TG9hZEZhaWxlZCgmbV9mcmFtZSwgdXJsLnN0cmluZygpKTsKICAgICAgICAgICAgIHJldHVybiBm
YWxzZTsKICAgICAgICAgfQogCi0gICAgICAgIGlmICghbV9mcmFtZS5sb2FkZXIoKS5taXhlZENv
bnRlbnRDaGVja2VyKCkuY2FuUnVuSW5zZWN1cmVDb250ZW50KGRvY3VtZW50KCktPnNlY3VyaXR5
T3JpZ2luKCksIHVybCkpCisgICAgICAgIGlmICghbV9mcmFtZS5sb2FkZXIoKS5taXhlZENvbnRl
bnRDaGVja2VyKCkuY2FuUnVuSW5zZWN1cmVDb250ZW50KGRvY3VtZW50LT5zZWN1cml0eU9yaWdp
bigpLCB1cmwpKQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KIApAQCAtMjA2LDE4
ICsyMDgsMjAgQEAgYm9vbCBTdWJmcmFtZUxvYWRlcjo6cmVxdWVzdE9iamVjdChIVE1MUGx1Z0lu
SW1hZ2VFbGVtZW50JiBvd25lckVsZW1lbnQsIGNvbnN0IFMKICAgICBpZiAodXJsLmlzRW1wdHko
KSAmJiBtaW1lVHlwZS5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAorICAgIGF1
dG8mIGRvY3VtZW50ID0gb3duZXJFbGVtZW50LmRvY3VtZW50KCk7CisKICAgICBVUkwgY29tcGxl
dGVkVVJMOwogICAgIGlmICghdXJsLmlzRW1wdHkoKSkKICAgICAgICAgY29tcGxldGVkVVJMID0g
Y29tcGxldGVVUkwodXJsKTsKIAotICAgIGRvY3VtZW50KCktPmNvbnRlbnRTZWN1cml0eVBvbGlj
eSgpLT51cGdyYWRlSW5zZWN1cmVSZXF1ZXN0SWZOZWVkZWQoY29tcGxldGVkVVJMLCBDb250ZW50
U2VjdXJpdHlQb2xpY3k6Okluc2VjdXJlUmVxdWVzdFR5cGU6OkxvYWQpOworICAgIGRvY3VtZW50
LmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT51cGdyYWRlSW5zZWN1cmVSZXF1ZXN0SWZOZWVkZWQo
Y29tcGxldGVkVVJMLCBDb250ZW50U2VjdXJpdHlQb2xpY3k6Okluc2VjdXJlUmVxdWVzdFR5cGU6
OkxvYWQpOwogCiAgICAgYm9vbCBoYXNGYWxsYmFja0NvbnRlbnQgPSBpczxIVE1MT2JqZWN0RWxl
bWVudD4ob3duZXJFbGVtZW50KSAmJiBkb3duY2FzdDxIVE1MT2JqZWN0RWxlbWVudD4ob3duZXJF
bGVtZW50KS5oYXNGYWxsYmFja0NvbnRlbnQoKTsKIAogICAgIGJvb2wgdXNlRmFsbGJhY2s7CiAg
ICAgaWYgKHNob3VsZFVzZVBsdWdpbihjb21wbGV0ZWRVUkwsIG1pbWVUeXBlLCBoYXNGYWxsYmFj
a0NvbnRlbnQsIHVzZUZhbGxiYWNrKSkgewogICAgICAgICBib29sIHN1Y2Nlc3MgPSByZXF1ZXN0
UGx1Z2luKG93bmVyRWxlbWVudCwgY29tcGxldGVkVVJMLCBtaW1lVHlwZSwgcGFyYW1OYW1lcywg
cGFyYW1WYWx1ZXMsIHVzZUZhbGxiYWNrKTsKLSAgICAgICAgbG9nUGx1Z2luUmVxdWVzdChkb2N1
bWVudCgpLT5wYWdlKCksIG1pbWVUeXBlLCBjb21wbGV0ZWRVUkwsIHN1Y2Nlc3MpOworICAgICAg
ICBsb2dQbHVnaW5SZXF1ZXN0KGRvY3VtZW50LnBhZ2UoKSwgbWltZVR5cGUsIGNvbXBsZXRlZFVS
TCwgc3VjY2Vzcyk7CiAgICAgICAgIHJldHVybiBzdWNjZXNzOwogICAgIH0KIApAQCAtMjI3LDcg
KzIzMSw3IEBAIGJvb2wgU3ViZnJhbWVMb2FkZXI6OnJlcXVlc3RPYmplY3QoSFRNTFBsdWdJbklt
YWdlRWxlbWVudCYgb3duZXJFbGVtZW50LCBjb25zdCBTCiAgICAgcmV0dXJuIGxvYWRPclJlZGly
ZWN0U3ViZnJhbWUob3duZXJFbGVtZW50LCBjb21wbGV0ZWRVUkwsIGZyYW1lTmFtZSwgTG9ja0hp
c3Rvcnk6OlllcywgTG9ja0JhY2tGb3J3YXJkTGlzdDo6WWVzKTsKIH0KIAotUGFzc1JlZlB0cjxX
aWRnZXQ+IFN1YmZyYW1lTG9hZGVyOjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNp
emUmIHNpemUsIEhUTUxBcHBsZXRFbGVtZW50JiBlbGVtZW50LCBjb25zdCBWZWN0b3I8U3RyaW5n
PiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKQorUmVmUHRy
PFdpZGdldD4gU3ViZnJhbWVMb2FkZXI6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50
U2l6ZSYgc2l6ZSwgSFRNTEFwcGxldEVsZW1lbnQmIGVsZW1lbnQsIGNvbnN0IFZlY3RvcjxTdHJp
bmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpCiB7CiAg
ICAgU3RyaW5nIGJhc2VVUkxTdHJpbmc7CiAgICAgU3RyaW5nIGNvZGVCYXNlVVJMU3RyaW5nOwpA
QCAtMjU2LDE0ICsyNjAsMTQgQEAgUGFzc1JlZlB0cjxXaWRnZXQ+IFN1YmZyYW1lTG9hZGVyOjpj
cmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmIHNpemUsIEgKICAgICB9CiAKICAg
ICBpZiAoYmFzZVVSTFN0cmluZy5pc0VtcHR5KCkpCi0gICAgICAgIGJhc2VVUkxTdHJpbmcgPSBt
X2ZyYW1lLmRvY3VtZW50KCktPmJhc2VVUkwoKS5zdHJpbmcoKTsKKyAgICAgICAgYmFzZVVSTFN0
cmluZyA9IGVsZW1lbnQuZG9jdW1lbnQoKS5iYXNlVVJMKCkuc3RyaW5nKCk7CiAgICAgVVJMIGJh
c2VVUkwgPSBjb21wbGV0ZVVSTChiYXNlVVJMU3RyaW5nKTsKIAogICAgIFJlZlB0cjxXaWRnZXQ+
IHdpZGdldDsKICAgICBpZiAoYWxsb3dQbHVnaW5zKCkpCi0gICAgICAgIHdpZGdldCA9IG1fZnJh
bWUubG9hZGVyKCkuY2xpZW50KCkuY3JlYXRlSmF2YUFwcGxldFdpZGdldChzaXplLCAmZWxlbWVu
dCwgYmFzZVVSTCwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMpOworICAgICAgICB3aWRnZXQgPSBt
X2ZyYW1lLmxvYWRlcigpLmNsaWVudCgpLmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoc2l6ZSwgZWxl
bWVudCwgYmFzZVVSTCwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMpOwogCi0gICAgbG9nUGx1Z2lu
UmVxdWVzdChkb2N1bWVudCgpLT5wYWdlKCksIGVsZW1lbnQuc2VydmljZVR5cGUoKSwgU3RyaW5n
KCksIHdpZGdldCk7CisgICAgbG9nUGx1Z2luUmVxdWVzdChtX2ZyYW1lLnBhZ2UoKSwgZWxlbWVu
dC5zZXJ2aWNlVHlwZSgpLCBTdHJpbmcoKSwgd2lkZ2V0KTsKIAogICAgIGlmICghd2lkZ2V0KSB7
CiAgICAgICAgIFJlbmRlckVtYmVkZGVkT2JqZWN0KiByZW5kZXJlciA9IGVsZW1lbnQucmVuZGVy
RW1iZWRkZWRPYmplY3QoKTsKQEAgLTI3NywxNiArMjgxLDE4IEBAIFBhc3NSZWZQdHI8V2lkZ2V0
PiBTdWJmcmFtZUxvYWRlcjo6Y3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXplJiBz
aXplLCBICiAgICAgcmV0dXJuIHdpZGdldDsKIH0KIAotRnJhbWUqIFN1YmZyYW1lTG9hZGVyOjps
b2FkT3JSZWRpcmVjdFN1YmZyYW1lKEhUTUxGcmFtZU93bmVyRWxlbWVudCYgb3duZXJFbGVtZW50
LCBjb25zdCBVUkwmIHJlcXVlc3RVcmwsIGNvbnN0IEF0b21pY1N0cmluZyYgZnJhbWVOYW1lLCBM
b2NrSGlzdG9yeSBsb2NrSGlzdG9yeSwgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0Zvcndh
cmRMaXN0KQorRnJhbWUqIFN1YmZyYW1lTG9hZGVyOjpsb2FkT3JSZWRpcmVjdFN1YmZyYW1lKEhU
TUxGcmFtZU93bmVyRWxlbWVudCYgb3duZXJFbGVtZW50LCBjb25zdCBVUkwmIHJlcXVlc3RVUkws
IGNvbnN0IEF0b21pY1N0cmluZyYgZnJhbWVOYW1lLCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSwg
TG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0KQogewotICAgIFVSTCB1cmwg
PSByZXF1ZXN0VXJsOwotICAgIG93bmVyRWxlbWVudC5kb2N1bWVudCgpLmNvbnRlbnRTZWN1cml0
eVBvbGljeSgpLT51cGdyYWRlSW5zZWN1cmVSZXF1ZXN0SWZOZWVkZWQodXJsLCBDb250ZW50U2Vj
dXJpdHlQb2xpY3k6Okluc2VjdXJlUmVxdWVzdFR5cGU6OkxvYWQpOworICAgIGF1dG8mIGluaXRp
YXRpbmdEb2N1bWVudCA9IG93bmVyRWxlbWVudC5kb2N1bWVudCgpOworCisgICAgVVJMIHVwZ3Jh
ZGVkUmVxdWVzdFVSTCA9IHJlcXVlc3RVUkw7CisgICAgaW5pdGlhdGluZ0RvY3VtZW50LmNvbnRl
bnRTZWN1cml0eVBvbGljeSgpLT51cGdyYWRlSW5zZWN1cmVSZXF1ZXN0SWZOZWVkZWQodXBncmFk
ZWRSZXF1ZXN0VVJMLCBDb250ZW50U2VjdXJpdHlQb2xpY3k6Okluc2VjdXJlUmVxdWVzdFR5cGU6
OkxvYWQpOwogCi0gICAgRnJhbWUqIGZyYW1lID0gb3duZXJFbGVtZW50LmNvbnRlbnRGcmFtZSgp
OworICAgIGF1dG8qIGZyYW1lID0gb3duZXJFbGVtZW50LmNvbnRlbnRGcmFtZSgpOwogICAgIGlm
IChmcmFtZSkKLSAgICAgICAgZnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxv
Y2F0aW9uQ2hhbmdlKG1fZnJhbWUuZG9jdW1lbnQoKSwgbV9mcmFtZS5kb2N1bWVudCgpLT5zZWN1
cml0eU9yaWdpbigpLCB1cmwsIG1fZnJhbWUubG9hZGVyKCkub3V0Z29pbmdSZWZlcnJlcigpLCBs
b2NrSGlzdG9yeSwgbG9ja0JhY2tGb3J3YXJkTGlzdCk7CisgICAgICAgIGZyYW1lLT5uYXZpZ2F0
aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZShpbml0aWF0aW5nRG9jdW1lbnQs
IGluaXRpYXRpbmdEb2N1bWVudC5zZWN1cml0eU9yaWdpbigpLCB1cGdyYWRlZFJlcXVlc3RVUkws
IG1fZnJhbWUubG9hZGVyKCkub3V0Z29pbmdSZWZlcnJlcigpLCBsb2NrSGlzdG9yeSwgbG9ja0Jh
Y2tGb3J3YXJkTGlzdCk7CiAgICAgZWxzZQotICAgICAgICBmcmFtZSA9IGxvYWRTdWJmcmFtZShv
d25lckVsZW1lbnQsIHVybCwgZnJhbWVOYW1lLCBtX2ZyYW1lLmxvYWRlcigpLm91dGdvaW5nUmVm
ZXJyZXIoKSk7CisgICAgICAgIGZyYW1lID0gbG9hZFN1YmZyYW1lKG93bmVyRWxlbWVudCwgdXBn
cmFkZWRSZXF1ZXN0VVJMLCBmcmFtZU5hbWUsIG1fZnJhbWUubG9hZGVyKCkub3V0Z29pbmdSZWZl
cnJlcigpKTsKIAogICAgIGlmICghZnJhbWUpCiAgICAgICAgIHJldHVybiBudWxscHRyOwpAQCAt
MzAzLDEzICszMDksMTUgQEAgRnJhbWUqIFN1YmZyYW1lTG9hZGVyOjpsb2FkU3ViZnJhbWUoSFRN
TEZyYW1lT3duZXJFbGVtZW50JiBvd25lckVsZW1lbnQsIGNvbnN0IFUKICAgICBpbnQgbWFyZ2lu
V2lkdGggPSAtMTsKICAgICBpbnQgbWFyZ2luSGVpZ2h0ID0gLTE7CiAgICAgaWYgKGlzPEhUTUxG
cmFtZUVsZW1lbnRCYXNlPihvd25lckVsZW1lbnQpKSB7Ci0gICAgICAgIEhUTUxGcmFtZUVsZW1l
bnRCYXNlJiBmcmFtZUVsZW1lbnRCYXNlID0gZG93bmNhc3Q8SFRNTEZyYW1lRWxlbWVudEJhc2U+
KG93bmVyRWxlbWVudCk7CisgICAgICAgIGF1dG8mIGZyYW1lRWxlbWVudEJhc2UgPSBkb3duY2Fz
dDxIVE1MRnJhbWVFbGVtZW50QmFzZT4ob3duZXJFbGVtZW50KTsKICAgICAgICAgYWxsb3dzU2Ny
b2xsaW5nID0gZnJhbWVFbGVtZW50QmFzZS5zY3JvbGxpbmdNb2RlKCkgIT0gU2Nyb2xsYmFyQWx3
YXlzT2ZmOwogICAgICAgICBtYXJnaW5XaWR0aCA9IGZyYW1lRWxlbWVudEJhc2UubWFyZ2luV2lk
dGgoKTsKICAgICAgICAgbWFyZ2luSGVpZ2h0ID0gZnJhbWVFbGVtZW50QmFzZS5tYXJnaW5IZWln
aHQoKTsKICAgICB9CiAKLSAgICBpZiAoIW93bmVyRWxlbWVudC5kb2N1bWVudCgpLnNlY3VyaXR5
T3JpZ2luKCktPmNhbkRpc3BsYXkodXJsKSkgeworICAgIGF1dG8gZG9jdW1lbnQgPSBtYWtlUmVm
KG93bmVyRWxlbWVudC5kb2N1bWVudCgpKTsKKworICAgIGlmICghZG9jdW1lbnQtPnNlY3VyaXR5
T3JpZ2luKCktPmNhbkRpc3BsYXkodXJsKSkgewogICAgICAgICBGcmFtZUxvYWRlcjo6cmVwb3J0
TG9jYWxMb2FkRmFpbGVkKCZtX2ZyYW1lLCB1cmwuc3RyaW5nKCkpOwogICAgICAgICByZXR1cm4g
bnVsbHB0cjsKICAgICB9CkBAIC0zMTcsMjAgKzMyNSwyMCBAQCBGcmFtZSogU3ViZnJhbWVMb2Fk
ZXI6OmxvYWRTdWJmcmFtZShIVE1MRnJhbWVPd25lckVsZW1lbnQmIG93bmVyRWxlbWVudCwgY29u
c3QgVQogICAgIGlmICghU3ViZnJhbWVMb2FkaW5nRGlzYWJsZXI6OmNhbkxvYWRGcmFtZShvd25l
ckVsZW1lbnQpKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAotICAgIFN0cmluZyByZWZlcnJl
clRvVXNlID0gU2VjdXJpdHlQb2xpY3k6OmdlbmVyYXRlUmVmZXJyZXJIZWFkZXIob3duZXJFbGVt
ZW50LmRvY3VtZW50KCkucmVmZXJyZXJQb2xpY3koKSwgdXJsLCByZWZlcnJlcik7CisgICAgU3Ry
aW5nIHJlZmVycmVyVG9Vc2UgPSBTZWN1cml0eVBvbGljeTo6Z2VuZXJhdGVSZWZlcnJlckhlYWRl
cihkb2N1bWVudC0+cmVmZXJyZXJQb2xpY3koKSwgdXJsLCByZWZlcnJlcik7CiAKICAgICAvLyBQ
cmV2ZW50IGluaXRpYWwgZW1wdHkgZG9jdW1lbnQgbG9hZCBmcm9tIHRyaWdnZXJpbmcgbG9hZCBl
dmVudHMuCi0gICAgbV9mcmFtZS5kb2N1bWVudCgpLT5pbmNyZW1lbnRMb2FkRXZlbnREZWxheUNv
dW50KCk7CisgICAgZG9jdW1lbnQtPmluY3JlbWVudExvYWRFdmVudERlbGF5Q291bnQoKTsKIAot
ICAgIFJlZlB0cjxGcmFtZT4gZnJhbWUgPSBtX2ZyYW1lLmxvYWRlcigpLmNsaWVudCgpLmNyZWF0
ZUZyYW1lKHVybCwgbmFtZSwgJm93bmVyRWxlbWVudCwgcmVmZXJyZXJUb1VzZSwgYWxsb3dzU2Ny
b2xsaW5nLCBtYXJnaW5XaWR0aCwgbWFyZ2luSGVpZ2h0KTsKKyAgICBhdXRvIGZyYW1lID0gbV9m
cmFtZS5sb2FkZXIoKS5jbGllbnQoKS5jcmVhdGVGcmFtZSh1cmwsIG5hbWUsIG93bmVyRWxlbWVu
dCwgcmVmZXJyZXJUb1VzZSwgYWxsb3dzU2Nyb2xsaW5nLCBtYXJnaW5XaWR0aCwgbWFyZ2luSGVp
Z2h0KTsKIAotICAgIG1fZnJhbWUuZG9jdW1lbnQoKS0+ZGVjcmVtZW50TG9hZEV2ZW50RGVsYXlD
b3VudCgpOworICAgIGRvY3VtZW50LT5kZWNyZW1lbnRMb2FkRXZlbnREZWxheUNvdW50KCk7CiAK
ICAgICBpZiAoIWZyYW1lKSAgewogICAgICAgICBtX2ZyYW1lLmxvYWRlcigpLmNoZWNrQ2FsbElt
cGxpY2l0Q2xvc2UoKTsKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQotICAgIAorCiAg
ICAgLy8gQWxsIG5ldyBmcmFtZXMgd2lsbCBoYXZlIG1faXNDb21wbGV0ZSBzZXQgdG8gdHJ1ZSBh
dCB0aGlzIHBvaW50IGR1ZSB0byBzeW5jaHJvbm91c2x5IGxvYWRpbmcKICAgICAvLyBhbiBlbXB0
eSBkb2N1bWVudCBpbiBGcmFtZUxvYWRlcjo6aW5pdCgpLiBCdXQgbWFueSBmcmFtZXMgd2lsbCBu
b3cgYmUgc3RhcnRpbmcgYW4KICAgICAvLyBhc3luY2hyb25vdXMgbG9hZCBvZiB1cmwsIHNvIHdl
IHNldCBtX2lzQ29tcGxldGUgdG8gZmFsc2UgYW5kIHRoZW4gY2hlY2sgaWYgdGhlIGxvYWQgaXMK
QEAgLTM0MCwxMiArMzQ4LDEyIEBAIEZyYW1lKiBTdWJmcmFtZUxvYWRlcjo6bG9hZFN1YmZyYW1l
KEhUTUxGcmFtZU93bmVyRWxlbWVudCYgb3duZXJFbGVtZW50LCBjb25zdCBVCiAgICAgZnJhbWUt
PmxvYWRlcigpLnN0YXJ0ZWQoKTsKICAgIAogICAgIGF1dG8qIHJlbmRlcmVyID0gb3duZXJFbGVt
ZW50LnJlbmRlcmVyKCk7Ci0gICAgRnJhbWVWaWV3KiB2aWV3ID0gZnJhbWUtPnZpZXcoKTsKKyAg
ICBhdXRvKiB2aWV3ID0gZnJhbWUtPnZpZXcoKTsKICAgICBpZiAoaXM8UmVuZGVyV2lkZ2V0Pihy
ZW5kZXJlcikgJiYgdmlldykKICAgICAgICAgZG93bmNhc3Q8UmVuZGVyV2lkZ2V0PigqcmVuZGVy
ZXIpLnNldFdpZGdldCh2aWV3KTsKLSAgICAKKwogICAgIG1fZnJhbWUubG9hZGVyKCkuY2hlY2tD
YWxsSW1wbGljaXRDbG9zZSgpOwotICAgIAorCiAgICAgLy8gU29tZSBsb2FkcyBhcmUgcGVyZm9y
bWVkIHN5bmNocm9ub3VzbHkgKGUuZy4sIGFib3V0OmJsYW5rIGFuZCBsb2FkcwogICAgIC8vIGNh
bmNlbGxlZCBieSByZXR1cm5pbmcgYSBudWxsIFJlc291cmNlUmVxdWVzdCBmcm9tIHJlcXVlc3RG
cm9tRGVsZWdhdGUpLgogICAgIC8vIEluIHRoZXNlIGNhc2VzLCB0aGUgc3luY2hyb25vdXMgbG9h
ZCB3b3VsZCBoYXZlIGZpbmlzaGVkCkBAIC0zODEsMTcgKzM4OSwxNCBAQCBib29sIFN1YmZyYW1l
TG9hZGVyOjpzaG91bGRVc2VQbHVnaW4oY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgbWlt
ZVR5cGUsIGJvbwogICAgIHJldHVybiBvYmplY3RUeXBlID09IE9iamVjdENvbnRlbnRUeXBlOjpO
b25lIHx8IG9iamVjdFR5cGUgPT0gT2JqZWN0Q29udGVudFR5cGU6OlBsdWdJbjsKIH0KIAotRG9j
dW1lbnQqIFN1YmZyYW1lTG9hZGVyOjpkb2N1bWVudCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1f
ZnJhbWUuZG9jdW1lbnQoKTsKLX0KLQogYm9vbCBTdWJmcmFtZUxvYWRlcjo6bG9hZFBsdWdpbihI
VE1MUGx1Z0luSW1hZ2VFbGVtZW50JiBwbHVnaW5FbGVtZW50LCBjb25zdCBVUkwmIHVybCwgY29u
c3QgU3RyaW5nJiBtaW1lVHlwZSwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNv
bnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcywgYm9vbCB1c2VGYWxsYmFjaykKIHsKICAg
ICBpZiAodXNlRmFsbGJhY2spCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIFJlbmRlckVt
YmVkZGVkT2JqZWN0KiByZW5kZXJlciA9IHBsdWdpbkVsZW1lbnQucmVuZGVyRW1iZWRkZWRPYmpl
Y3QoKTsKKyAgICBhdXRvJiBkb2N1bWVudCA9IHBsdWdpbkVsZW1lbnQuZG9jdW1lbnQoKTsKKyAg
ICBhdXRvKiByZW5kZXJlciA9IHBsdWdpbkVsZW1lbnQucmVuZGVyRW1iZWRkZWRPYmplY3QoKTsK
KwogICAgIC8vIEZJWE1FOiBUaGlzIGNvZGUgc2hvdWxkIG5vdCBkZXBlbmQgb24gcmVuZGVyZXIh
CiAgICAgaWYgKCFyZW5kZXJlcikKICAgICAgICAgcmV0dXJuIGZhbHNlOwpAQCAtMzk5LDE3ICs0
MDQsMTkgQEAgYm9vbCBTdWJmcmFtZUxvYWRlcjo6bG9hZFBsdWdpbihIVE1MUGx1Z0luSW1hZ2VF
bGVtZW50JiBwbHVnaW5FbGVtZW50LCBjb25zdCBVUkwKICAgICBwbHVnaW5FbGVtZW50LnN1YmZy
YW1lTG9hZGVyV2lsbENyZWF0ZVBsdWdJbih1cmwpOwogCiAgICAgSW50U2l6ZSBjb250ZW50U2l6
ZSA9IHJvdW5kZWRJbnRTaXplKExheW91dFNpemUocmVuZGVyZXItPmNvbnRlbnRXaWR0aCgpLCBy
ZW5kZXJlci0+Y29udGVudEhlaWdodCgpKSk7Ci0gICAgYm9vbCBsb2FkTWFudWFsbHkgPSBpczxQ
bHVnaW5Eb2N1bWVudD4oKmRvY3VtZW50KCkpICYmICFtX2NvbnRhaW5zUGx1Z2lucyAmJiBkb3du
Y2FzdDxQbHVnaW5Eb2N1bWVudD4oKmRvY3VtZW50KCkpLnNob3VsZExvYWRQbHVnaW5NYW51YWxs
eSgpOworICAgIGJvb2wgbG9hZE1hbnVhbGx5ID0gaXM8UGx1Z2luRG9jdW1lbnQ+KGRvY3VtZW50
KSAmJiAhbV9jb250YWluc1BsdWdpbnMgJiYgZG93bmNhc3Q8UGx1Z2luRG9jdW1lbnQ+KGRvY3Vt
ZW50KS5zaG91bGRMb2FkUGx1Z2luTWFudWFsbHkoKTsKIAogI2lmIFBMQVRGT1JNKElPUykKICAg
ICAvLyBPbiBpT1MsIHdlIG9ubHkgdGVsbCB0aGUgcGx1Z2luIHRvIGJlIGluIGZ1bGwgcGFnZSBt
b2RlIGlmIHRoZSBjb250YWluaW5nIHBsdWdpbiBkb2N1bWVudCBpcyB0aGUgdG9wIGxldmVsIGRv
Y3VtZW50LgotICAgIGlmIChkb2N1bWVudCgpLT5vd25lckVsZW1lbnQoKSkKKyAgICBpZiAoZG9j
dW1lbnQub3duZXJFbGVtZW50KCkpCiAgICAgICAgIGxvYWRNYW51YWxseSA9IGZhbHNlOwogI2Vu
ZGlmCiAKLSAgICBXZWFrUHRyPFJlbmRlcldpZGdldD4gd2Vha1JlbmRlcmVyID0gcmVuZGVyZXIt
PmNyZWF0ZVdlYWtQdHIoKTsKLSAgICAvLyBjcmVhdGVQbHVnaW4gKm1heSogY2F1c2UgdGhpcyBy
ZW5kZXJlciB0byBkaXNhcHBlYXIgZnJvbSB1bmRlcm5lYXRoLgotICAgIFJlZlB0cjxXaWRnZXQ+
IHdpZGdldCA9IG1fZnJhbWUubG9hZGVyKCkuY2xpZW50KCkuY3JlYXRlUGx1Z2luKGNvbnRlbnRT
aXplLCAmcGx1Z2luRWxlbWVudCwgdXJsLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcywgbWltZVR5
cGUsIGxvYWRNYW51YWxseSk7CisgICAgYXV0byB3ZWFrUmVuZGVyZXIgPSByZW5kZXJlci0+Y3Jl
YXRlV2Vha1B0cigpOworCisgICAgYXV0byB3aWRnZXQgPSBtX2ZyYW1lLmxvYWRlcigpLmNsaWVu
dCgpLmNyZWF0ZVBsdWdpbihjb250ZW50U2l6ZSwgcGx1Z2luRWxlbWVudCwgdXJsLCBwYXJhbU5h
bWVzLCBwYXJhbVZhbHVlcywgbWltZVR5cGUsIGxvYWRNYW51YWxseSk7CisKKyAgICAvLyBUaGUg
Y2FsbCB0byBjcmVhdGVQbHVnaW4gKm1heSogY2F1c2UgdGhpcyByZW5kZXJlciB0byBkaXNhcHBl
YXIgZnJvbSB1bmRlcm5lYXRoLgogICAgIGlmICghd2Vha1JlbmRlcmVyKQogICAgICAgICByZXR1
cm4gZmFsc2U7CiAKQEAgLTQzMyw5ICs0NDAsNyBAQCBVUkwgU3ViZnJhbWVMb2FkZXI6OmNvbXBs
ZXRlVVJMKGNvbnN0IFN0cmluZyYgdXJsKSBjb25zdAogCiBib29sIFN1YmZyYW1lTG9hZGVyOjpz
aG91bGRDb252ZXJ0SW52YWxpZFVSTHNUb0JsYW5rKCkgY29uc3QKIHsKLSAgICBpZiAoU2V0dGlu
Z3MqIHNldHRpbmdzID0gZG9jdW1lbnQoKSA/IGRvY3VtZW50KCktPnNldHRpbmdzKCkgOiBudWxs
cHRyKQotICAgICAgICByZXR1cm4gc2V0dGluZ3MtPnNob3VsZENvbnZlcnRJbnZhbGlkVVJMc1Rv
QmxhbmsoKTsKLSAgICByZXR1cm4gdHJ1ZTsKKyAgICByZXR1cm4gbV9mcmFtZS5zZXR0aW5ncygp
LnNob3VsZENvbnZlcnRJbnZhbGlkVVJMc1RvQmxhbmsoKTsKIH0KIAogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YmZyYW1lTG9hZGVy
LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3ViZnJhbWVMb2FkZXIuaAppbmRleCA5NTEzOTc0
YjgxNzA1YWVjNjVkMTU1MDIzMzkzNWQ0YTU0MjNiNzg1Li4xMmJmNzcxN2U3NDMyMzVjY2M3ZGE3
ZGNjYzMzN2Q0MjY5MmFhOTYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3Vi
ZnJhbWVMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3ViZnJhbWVMb2FkZXIu
aApAQCAtNjEsNyArNjEsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCByZXF1ZXN0T2JqZWN0KEhUTUxQ
bHVnSW5JbWFnZUVsZW1lbnQmLCBjb25zdCBTdHJpbmcmIHVybCwgY29uc3QgQXRvbWljU3RyaW5n
JiBmcmFtZU5hbWUsCiAgICAgICAgIGNvbnN0IFN0cmluZyYgc2VydmljZVR5cGUsIGNvbnN0IFZl
Y3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1
ZXMpOwogCi0gICAgUGFzc1JlZlB0cjxXaWRnZXQ+IGNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29u
c3QgSW50U2l6ZSYsIEhUTUxBcHBsZXRFbGVtZW50JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBh
cmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcyk7CisgICAgUmVmUHRy
PFdpZGdldD4gY3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXplJiwgSFRNTEFwcGxl
dEVsZW1lbnQmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9y
PFN0cmluZz4mIHBhcmFtVmFsdWVzKTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgYWxsb3dQ
bHVnaW5zKCk7CiAKQEAgLTc4LDE0ICs3OCwxMiBAQCBwcml2YXRlOgogICAgIGJvb2wgc2hvdWxk
VXNlUGx1Z2luKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUsIGJvb2wgaGFzRmFs
bGJhY2ssIGJvb2wmIHVzZUZhbGxiYWNrKTsKICAgICBib29sIHBsdWdpbklzTG9hZGFibGUoY29u
c3QgVVJMJiwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSk7CiAKLSAgICBEb2N1bWVudCogZG9jdW1l
bnQoKSBjb25zdDsKKyAgICBVUkwgY29tcGxldGVVUkwoY29uc3QgU3RyaW5nJikgY29uc3Q7CiAK
ICAgICBib29sIHNob3VsZENvbnZlcnRJbnZhbGlkVVJMc1RvQmxhbmsoKSBjb25zdDsKIAogICAg
IGJvb2wgbV9jb250YWluc1BsdWdpbnM7CiAgICAgRnJhbWUmIG1fZnJhbWU7Ci0KLSAgICBVUkwg
Y29tcGxldGVVUkwoY29uc3QgU3RyaW5nJikgY29uc3Q7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2Fk
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YnJlc291cmNlTG9hZGVyLmNwcAppbmRl
eCBiNmE2MzQxMGQzZWM2NmY5NWU2NjEwNWFhZGY3YzMzMmY5YjQ0MWE2Li42ZTk3ZmE0OTFmNDJi
YTRjZTUyOTI2NTkxOWIzNmI4M2Y1MzFjMzU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9T
dWJyZXNvdXJjZUxvYWRlci5jcHAKQEAgLTI1Niw2ICsyNTYsNyBAQCB2b2lkIFN1YnJlc291cmNl
TG9hZGVyOjpkaWRTZW5kRGF0YSh1bnNpZ25lZCBsb25nIGxvbmcgYnl0ZXNTZW50LCB1bnNpZ25l
ZCBsb25nCiB9CiAKICNpZiBVU0UoUVVJQ0tfTE9PSykKKwogYm9vbCBTdWJyZXNvdXJjZUxvYWRl
cjo6c2hvdWxkQ3JlYXRlUXVpY2tMb29rSGFuZGxlRm9yUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYgcmVzcG9uc2UpIGNvbnN0CiB7CiAgICAgaWYgKG1fcmVzb3VyY2UtPnR5cGUoKSAh
PSBDYWNoZWRSZXNvdXJjZTo6TWFpblJlc291cmNlKQpAQCAtMjY2LDYgKzI2Nyw3IEBAIGJvb2wg
U3VicmVzb3VyY2VMb2FkZXI6OnNob3VsZENyZWF0ZVF1aWNrTG9va0hhbmRsZUZvclJlc3BvbnNl
KGNvbnN0IFJlc291cmNlUmVzCiAKICAgICByZXR1cm4gUXVpY2tMb29rSGFuZGxlOjpzaG91bGRD
cmVhdGVGb3JNSU1FVHlwZShyZXNwb25zZS5taW1lVHlwZSgpKTsKIH0KKwogI2VuZGlmCiAKIHZv
aWQgU3VicmVzb3VyY2VMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZShjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJiByZXNwb25zZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBj
YWNoZS9BcHBsaWNhdGlvbkNhY2hlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNo
ZS9BcHBsaWNhdGlvbkNhY2hlLmNwcAppbmRleCA2ZjgyZTFkYzc5NmE5NjAyMDkxYmQ2ODJjOTc0
N2MyNDhiOTU0YWQxLi42MDA5Y2NhNzcyZmUyYmNhNzYwMmM3MzE0Njc4ZmU0YTI0OGI1OWJkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNo
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2Fj
aGUuY3BwCkBAIC00MywxNyArNDMsMTMgQEAgc3RhdGljIGlubGluZSBib29sIGZhbGxiYWNrVVJM
TG9uZ2VyVGhhbihjb25zdCBzdGQ6OnBhaXI8VVJMLCBVUkw+JiBsaHMsIGNvbnN0IHMKIH0KIAog
QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZSgpCi0gICAgOiBtX2dyb3VwKG51bGxw
dHIpCi0gICAgLCBtX21hbmlmZXN0KG51bGxwdHIpCi0gICAgLCBtX2VzdGltYXRlZFNpemVJblN0
b3JhZ2UoMCkKLSAgICAsIG1fc3RvcmFnZUlEKDApCiB7CiB9CiAKIEFwcGxpY2F0aW9uQ2FjaGU6
On5BcHBsaWNhdGlvbkNhY2hlKCkKIHsKICAgICBpZiAobV9ncm91cCkKLSAgICAgICAgbV9ncm91
cC0+Y2FjaGVEZXN0cm95ZWQodGhpcyk7CisgICAgICAgIG1fZ3JvdXAtPmNhY2hlRGVzdHJveWVk
KCp0aGlzKTsKIH0KICAgICAKIHZvaWQgQXBwbGljYXRpb25DYWNoZTo6c2V0R3JvdXAoQXBwbGlj
YXRpb25DYWNoZUdyb3VwKiBncm91cCkKQEAgLTY0LDU3ICs2MCwzOSBAQCB2b2lkIEFwcGxpY2F0
aW9uQ2FjaGU6OnNldEdyb3VwKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXApCiAKIGJvb2wg
QXBwbGljYXRpb25DYWNoZTo6aXNDb21wbGV0ZSgpCiB7Ci0gICAgcmV0dXJuIG1fZ3JvdXAgJiYg
bV9ncm91cC0+Y2FjaGVJc0NvbXBsZXRlKHRoaXMpOworICAgIHJldHVybiBtX2dyb3VwICYmIG1f
Z3JvdXAtPmNhY2hlSXNDb21wbGV0ZSgqdGhpcyk7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNo
ZTo6c2V0TWFuaWZlc3RSZXNvdXJjZShQYXNzUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJj
ZT4gbWFuaWZlc3QpCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGU6OnNldE1hbmlmZXN0UmVzb3VyY2Uo
UmVmPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4mJiBtYW5pZmVzdCkKIHsKLSAgICBBU1NFUlQo
bWFuaWZlc3QpOwogICAgIEFTU0VSVCghbV9tYW5pZmVzdCk7CiAgICAgQVNTRVJUKG1hbmlmZXN0
LT50eXBlKCkgJiBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6Ok1hbmlmZXN0KTsKLSAgICAKLSAg
ICBtX21hbmlmZXN0ID0gbWFuaWZlc3QuZ2V0KCk7Ci0gICAgCi0gICAgYWRkUmVzb3VyY2UobWFu
aWZlc3QpOworCisgICAgbV9tYW5pZmVzdCA9IG1hbmlmZXN0LnB0cigpOworCisgICAgYWRkUmVz
b3VyY2UoV1RGTW92ZShtYW5pZmVzdCkpOwogfQogICAgIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hl
OjphZGRSZXNvdXJjZShQYXNzUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4gcmVzb3Vy
Y2UpCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGU6OmFkZFJlc291cmNlKFJlZjxBcHBsaWNhdGlvbkNh
Y2hlUmVzb3VyY2U+JiYgcmVzb3VyY2UpCiB7Ci0gICAgQVNTRVJUKHJlc291cmNlKTsKLSAgICAK
LSAgICBjb25zdCBTdHJpbmcmIHVybCA9IHJlc291cmNlLT51cmwoKTsKLSAgICAKKyAgICBhdXRv
JiB1cmwgPSByZXNvdXJjZS0+dXJsKCk7CisKKyAgICBBU1NFUlQoIVVSTChQYXJzZWRVUkxTdHJp
bmcsIHVybCkuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkpOwogICAgIEFTU0VSVCghbV9yZXNvdXJj
ZXMuY29udGFpbnModXJsKSk7Ci0gICAgCisKICAgICBpZiAobV9zdG9yYWdlSUQpIHsKICAgICAg
ICAgQVNTRVJUKCFyZXNvdXJjZS0+c3RvcmFnZUlEKCkpOwogICAgICAgICBBU1NFUlQocmVzb3Vy
Y2UtPnR5cGUoKSAmIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6TWFzdGVyKTsKLSAgICAgICAg
CisKICAgICAgICAgLy8gQWRkIHRoZSByZXNvdXJjZSB0byB0aGUgc3RvcmFnZS4KLSAgICAgICAg
bV9ncm91cC0+c3RvcmFnZSgpLnN0b3JlKHJlc291cmNlLmdldCgpLCB0aGlzKTsKKyAgICAgICAg
bV9ncm91cC0+c3RvcmFnZSgpLnN0b3JlKHJlc291cmNlLnB0cigpLCB0aGlzKTsKICAgICB9CiAK
ICAgICBtX2VzdGltYXRlZFNpemVJblN0b3JhZ2UgKz0gcmVzb3VyY2UtPmVzdGltYXRlZFNpemVJ
blN0b3JhZ2UoKTsKIAotICAgIG1fcmVzb3VyY2VzLnNldCh1cmwsIHJlc291cmNlKTsKKyAgICBt
X3Jlc291cmNlcy5zZXQodXJsLCBXVEZNb3ZlKHJlc291cmNlKSk7CiB9CiAKLXVuc2lnbmVkIEFw
cGxpY2F0aW9uQ2FjaGU6OnJlbW92ZVJlc291cmNlKGNvbnN0IFN0cmluZyYgdXJsKQotewotICAg
IEhhc2hNYXA8U3RyaW5nLCBSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPj46Oml0ZXJh
dG9yIGl0ID0gbV9yZXNvdXJjZXMuZmluZCh1cmwpOwotICAgIGlmIChpdCA9PSBtX3Jlc291cmNl
cy5lbmQoKSkKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICAvLyBUaGUgcmVzb3VyY2UgZXhpc3Rz
LCBnZXQgaXRzIHR5cGUgc28gd2UgY2FuIHJldHVybiBpdC4KLSAgICB1bnNpZ25lZCB0eXBlID0g
aXQtPnZhbHVlLT50eXBlKCk7Ci0KLSAgICBtX2VzdGltYXRlZFNpemVJblN0b3JhZ2UgLT0gaXQt
PnZhbHVlLT5lc3RpbWF0ZWRTaXplSW5TdG9yYWdlKCk7Ci0KLSAgICBtX3Jlc291cmNlcy5yZW1v
dmUoaXQpOwotCi0gICAgcmV0dXJuIHR5cGU7Ci19ICAgIAotICAgIAogQXBwbGljYXRpb25DYWNo
ZVJlc291cmNlKiBBcHBsaWNhdGlvbkNhY2hlOjpyZXNvdXJjZUZvclVSTChjb25zdCBTdHJpbmcm
IHVybCkKIHsKICAgICBBU1NFUlQoIVVSTChQYXJzZWRVUkxTdHJpbmcsIHVybCkuaGFzRnJhZ21l
bnRJZGVudGlmaWVyKCkpOwpAQCAtMTMzLDkgKzExMSw3IEBAIEFwcGxpY2F0aW9uQ2FjaGVSZXNv
dXJjZSogQXBwbGljYXRpb25DYWNoZTo6cmVzb3VyY2VGb3JSZXF1ZXN0KGNvbnN0IFJlc291cmNl
UmVxCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCiAgICAgVVJMIHVybChyZXF1ZXN0LnVybCgp
KTsKLSAgICBpZiAodXJsLmhhc0ZyYWdtZW50SWRlbnRpZmllcigpKQotICAgICAgICB1cmwucmVt
b3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7Ci0KKyAgICB1cmwucmVtb3ZlRnJhZ21lbnRJZGVudGlm
aWVyKCk7CiAgICAgcmV0dXJuIHJlc291cmNlRm9yVVJMKHVybCk7CiB9CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZS5oCmluZGV4IDc2MTc2
NjIwZmNkNmZhMzlhZDJhNWMzOTYxYmFjMjNiMTdhN2MwMjUuLjlhNDU4YzcxMGM0YWQwMTliMTM1
ZmYxNDY3MDA2ZGY4MDk0ODE3ZmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9h
cHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Fw
cGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGUuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmln
aHQgKEMpIDIwMDggQXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgorICogQ29weXJpZ2h0
IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgogICoKICAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yNiwzNSArMjYsMjggQEAKICNwcmFnbWEgb25jZQog
CiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KLSNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgotI2lu
Y2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KICNp
bmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvV1RGU3Ry
aW5nLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgQXBwbGljYXRpb25DYWNoZUdy
b3VwOwogY2xhc3MgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOwotY2xhc3MgRG9jdW1lbnRMb2Fk
ZXI7CiBjbGFzcyBVUkw7CiBjbGFzcyBSZXNvdXJjZVJlcXVlc3Q7Ci1jbGFzcyBTZWN1cml0eU9y
aWdpbjsKIAotdHlwZWRlZiBWZWN0b3I8c3RkOjpwYWlyPFVSTCwgVVJMPj4gRmFsbGJhY2tVUkxW
ZWN0b3I7Cit1c2luZyBGYWxsYmFja1VSTFZlY3RvciA9IFZlY3RvcjxzdGQ6OnBhaXI8VVJMLCBV
Ukw+PjsKIAogY2xhc3MgQXBwbGljYXRpb25DYWNoZSA6IHB1YmxpYyBSZWZDb3VudGVkPEFwcGxp
Y2F0aW9uQ2FjaGU+IHsKIHB1YmxpYzoKICAgICBzdGF0aWMgUmVmPEFwcGxpY2F0aW9uQ2FjaGU+
IGNyZWF0ZSgpIHsgcmV0dXJuIGFkb3B0UmVmKCpuZXcgQXBwbGljYXRpb25DYWNoZSk7IH0KLSAg
ICAKKwogICAgIH5BcHBsaWNhdGlvbkNhY2hlKCk7CiAKLSAgICB2b2lkIGFkZFJlc291cmNlKFBh
c3NSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiByZXNvdXJjZSk7Ci0gICAgdW5zaWdu
ZWQgcmVtb3ZlUmVzb3VyY2UoY29uc3QgU3RyaW5nJiB1cmwpOwotICAgIAotICAgIHZvaWQgc2V0
TWFuaWZlc3RSZXNvdXJjZShQYXNzUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4gbWFu
aWZlc3QpOworICAgIHZvaWQgYWRkUmVzb3VyY2UoUmVmPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJj
ZT4mJik7CisKKyAgICB2b2lkIHNldE1hbmlmZXN0UmVzb3VyY2UoUmVmPEFwcGxpY2F0aW9uQ2Fj
aGVSZXNvdXJjZT4mJik7CiAgICAgQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiBtYW5pZmVzdFJl
c291cmNlKCkgY29uc3QgeyByZXR1cm4gbV9tYW5pZmVzdDsgfQotICAgIAorCiAgICAgdm9pZCBz
ZXRHcm91cChBcHBsaWNhdGlvbkNhY2hlR3JvdXAqKTsKICAgICBBcHBsaWNhdGlvbkNhY2hlR3Jv
dXAqIGdyb3VwKCkgY29uc3QgeyByZXR1cm4gbV9ncm91cDsgfQogCkBAIC03MiwzOSArNjUsMzgg
QEAgcHVibGljOgogICAgIHZvaWQgc2V0RmFsbGJhY2tVUkxzKGNvbnN0IEZhbGxiYWNrVVJMVmVj
dG9yJik7CiAgICAgY29uc3QgRmFsbGJhY2tVUkxWZWN0b3ImIGZhbGxiYWNrVVJMcygpIGNvbnN0
IHsgcmV0dXJuIG1fZmFsbGJhY2tVUkxzOyB9CiAgICAgYm9vbCB1cmxNYXRjaGVzRmFsbGJhY2tO
YW1lc3BhY2UoY29uc3QgVVJMJiwgVVJMKiBmYWxsYmFja1VSTCA9IG51bGxwdHIpOwotICAgIAor
CiAjaWZuZGVmIE5ERUJVRwogICAgIHZvaWQgZHVtcCgpOwogI2VuZGlmCiAKLSAgICB0eXBlZGVm
IEhhc2hNYXA8U3RyaW5nLCBSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPj4gUmVzb3Vy
Y2VNYXA7CisgICAgdXNpbmcgUmVzb3VyY2VNYXAgPSBIYXNoTWFwPFN0cmluZywgUmVmUHRyPEFw
cGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4+OwogICAgIGNvbnN0IFJlc291cmNlTWFwJiByZXNvdXJj
ZXMoKSBjb25zdCB7IHJldHVybiBtX3Jlc291cmNlczsgfQotICAgIAorCiAgICAgdm9pZCBzZXRT
dG9yYWdlSUQodW5zaWduZWQgc3RvcmFnZUlEKSB7IG1fc3RvcmFnZUlEID0gc3RvcmFnZUlEOyB9
CiAgICAgdW5zaWduZWQgc3RvcmFnZUlEKCkgY29uc3QgeyByZXR1cm4gbV9zdG9yYWdlSUQ7IH0K
ICAgICB2b2lkIGNsZWFyU3RvcmFnZUlEKCk7Ci0gICAgCisKICAgICBzdGF0aWMgYm9vbCByZXF1
ZXN0SXNIVFRQT3JIVFRQU0dldChjb25zdCBSZXNvdXJjZVJlcXVlc3QmKTsKIAogICAgIGludDY0
X3QgZXN0aW1hdGVkU2l6ZUluU3RvcmFnZSgpIGNvbnN0IHsgcmV0dXJuIG1fZXN0aW1hdGVkU2l6
ZUluU3RvcmFnZTsgfQogCiBwcml2YXRlOgogICAgIEFwcGxpY2F0aW9uQ2FjaGUoKTsKLSAgICAK
LSAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIG1fZ3JvdXA7CisKKyAgICBBcHBsaWNhdGlvbkNh
Y2hlR3JvdXAqIG1fZ3JvdXAgeyBudWxscHRyIH07CiAgICAgUmVzb3VyY2VNYXAgbV9yZXNvdXJj
ZXM7Ci0gICAgQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiBtX21hbmlmZXN0OworICAgIEFwcGxp
Y2F0aW9uQ2FjaGVSZXNvdXJjZSogbV9tYW5pZmVzdCB7IG51bGxwdHIgfTsKIAotICAgIGJvb2wg
bV9hbGxvd0FsbE5ldHdvcmtSZXF1ZXN0czsKKyAgICBib29sIG1fYWxsb3dBbGxOZXR3b3JrUmVx
dWVzdHMgeyBmYWxzZSB9OwogICAgIFZlY3RvcjxVUkw+IG1fb25saW5lV2hpdGVsaXN0OwogICAg
IEZhbGxiYWNrVVJMVmVjdG9yIG1fZmFsbGJhY2tVUkxzOwogCiAgICAgLy8gVGhlIHRvdGFsIHNp
emUgb2YgdGhlIHJlc291cmNlcyBiZWxvbmdpbmcgdG8gdGhpcyBBcHBsaWNhdGlvbiBDYWNoZSBp
bnN0YW5jZS4KLSAgICAvLyBUaGlzIGlzIGFuIGVzdGltYXRpb24gb2YgdGhlIHNpemUgdGhpcyBB
cHBsaWNhdGlvbiBDYWNoZSBvY2N1cGllcyBpbiB0aGUKLSAgICAvLyBkYXRhYmFzZSBmaWxlLgot
ICAgIGludDY0X3QgbV9lc3RpbWF0ZWRTaXplSW5TdG9yYWdlOworICAgIC8vIFRoaXMgaXMgYW4g
ZXN0aW1hdGlvbiBvZiB0aGUgc2l6ZSB0aGlzIEFwcGxpY2F0aW9uIENhY2hlIG9jY3VwaWVzIGlu
IHRoZSBkYXRhYmFzZSBmaWxlLgorICAgIGludDY0X3QgbV9lc3RpbWF0ZWRTaXplSW5TdG9yYWdl
IHsgMCB9OwogCi0gICAgdW5zaWduZWQgbV9zdG9yYWdlSUQ7CisgICAgdW5zaWduZWQgbV9zdG9y
YWdlSUQgeyAwIH07CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuY3Bw
CmluZGV4IDg2ZTlhNWE4ODQ5MDdjZGQzZDQ2YWZjY2RlMDNmOGQzZmEwOTg1M2EuLjk4ODFiMjVl
NWFjYjBmZTk2NDI1ZjY3YWRiMzQzMTg0MTQ3YmUwOGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuY3BwCkBAIC0x
LDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCwgMjAwOSwgMjAxMCBBcHBsZSBJ
bmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxNyBBcHBs
ZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKQEAgLTM0LDYgKzM0LDcgQEAKICNpbmNsdWRlICJDaHJvbWVDbGllbnQuaCIKICNpbmNsdWRl
ICJET01BcHBsaWNhdGlvbkNhY2hlLmgiCiAjaW5jbHVkZSAiRG9jdW1lbnRMb2FkZXIuaCIKKyNp
bmNsdWRlICJFdmVudE5hbWVzLmgiCiAjaW5jbHVkZSAiRnJhbWUuaCIKICNpbmNsdWRlICJGcmFt
ZUxvYWRlci5oIgogI2luY2x1ZGUgIkZyYW1lTG9hZGVyQ2xpZW50LmgiCkBAIC01NCwxNyArNTUs
NyBAQCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OkFwcGxpY2F0aW9uQ2FjaGVHcm91cChSZWY8QXBw
bGljYXRpb25DYWNoZVN0b3JhZ2U+JiYgc3RvcgogICAgIDogbV9zdG9yYWdlKFdURk1vdmUoc3Rv
cmFnZSkpCiAgICAgLCBtX21hbmlmZXN0VVJMKG1hbmlmZXN0VVJMKQogICAgICwgbV9vcmlnaW4o
U2VjdXJpdHlPcmlnaW46OmNyZWF0ZShtYW5pZmVzdFVSTCkpCi0gICAgLCBtX3VwZGF0ZVN0YXR1
cyhJZGxlKQotICAgICwgbV9kb3dubG9hZGluZ1BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnND
b3VudCgwKQotICAgICwgbV9wcm9ncmVzc1RvdGFsKDApCi0gICAgLCBtX3Byb2dyZXNzRG9uZSgw
KQotICAgICwgbV9mcmFtZShudWxscHRyKQotICAgICwgbV9zdG9yYWdlSUQoMCkKLSAgICAsIG1f
aXNPYnNvbGV0ZShmYWxzZSkKLSAgICAsIG1fY29tcGxldGlvblR5cGUoTm9uZSkKLSAgICAsIG1f
Y2FsbGVkUmVhY2hlZE1heEFwcENhY2hlU2l6ZShmYWxzZSkKICAgICAsIG1fYXZhaWxhYmxlU3Bh
Y2VJblF1b3RhKEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjp1bmtub3duUXVvdGEoKSkKLSAgICAs
IG1fb3JpZ2luUXVvdGFFeGNlZWRlZFByZXZpb3VzbHkoZmFsc2UpCiB7CiB9CiAKQEAgLTcyLDEw
ICs2MywxMCBAQCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6On5BcHBsaWNhdGlvbkNhY2hlR3JvdXAo
KQogewogICAgIEFTU0VSVCghbV9uZXdlc3RDYWNoZSk7CiAgICAgQVNTRVJUKG1fY2FjaGVzLmlz
RW1wdHkoKSk7Ci0gICAgCisKICAgICBzdG9wTG9hZGluZygpOwogCi0gICAgbV9zdG9yYWdlLT5j
YWNoZUdyb3VwRGVzdHJveWVkKHRoaXMpOworICAgIG1fc3RvcmFnZS0+Y2FjaGVHcm91cERlc3Ry
b3llZCgqdGhpcyk7CiB9CiAgICAgCiBBcHBsaWNhdGlvbkNhY2hlKiBBcHBsaWNhdGlvbkNhY2hl
R3JvdXA6OmNhY2hlRm9yTWFpblJlcXVlc3QoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0
LCBEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIpCkBAIC04NCwyMSArNzUsMjAgQEAgQXBw
bGljYXRpb25DYWNoZSogQXBwbGljYXRpb25DYWNoZUdyb3VwOjpjYWNoZUZvck1haW5SZXF1ZXN0
KGNvbnN0IFJlc291cmNlUmVxdWUKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKICAgICBVUkwg
dXJsKHJlcXVlc3QudXJsKCkpOwotICAgIGlmICh1cmwuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkp
Ci0gICAgICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKKyAgICB1cmwucmVtb3Zl
RnJhZ21lbnRJZGVudGlmaWVyKCk7CiAKICAgICBhdXRvKiBwYWdlID0gZG9jdW1lbnRMb2FkZXIt
PmZyYW1lKCkgPyBkb2N1bWVudExvYWRlci0+ZnJhbWUoKS0+cGFnZSgpIDogbnVsbHB0cjsKICAg
ICBpZiAoIXBhZ2UgfHwgcGFnZS0+dXNlc0VwaGVtZXJhbFNlc3Npb24oKSkKICAgICAgICAgcmV0
dXJuIG51bGxwdHI7CiAKLSAgICBpZiAoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCA9IHBh
Z2UtPmFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlKCkuY2FjaGVHcm91cEZvclVSTCh1cmwpKSB7Ci0g
ICAgICAgIEFTU0VSVChncm91cC0+bmV3ZXN0Q2FjaGUoKSk7Ci0gICAgICAgIEFTU0VSVCghZ3Jv
dXAtPmlzT2Jzb2xldGUoKSk7Ci0gICAgICAgIAotICAgICAgICByZXR1cm4gZ3JvdXAtPm5ld2Vz
dENhY2hlKCk7Ci0gICAgfQotICAgIAotICAgIHJldHVybiBudWxscHRyOworICAgIGF1dG8qIGdy
b3VwID0gcGFnZS0+YXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKS5jYWNoZUdyb3VwRm9yVVJMKHVy
bCk7CisgICAgaWYgKCFncm91cCkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICBBU1NF
UlQoZ3JvdXAtPm5ld2VzdENhY2hlKCkpOworICAgIEFTU0VSVCghZ3JvdXAtPmlzT2Jzb2xldGUo
KSk7CisKKyAgICByZXR1cm4gZ3JvdXAtPm5ld2VzdENhY2hlKCk7CiB9CiAgICAgCiBBcHBsaWNh
dGlvbkNhY2hlKiBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmZhbGxiYWNrQ2FjaGVGb3JNYWluUmVx
dWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIERvY3VtZW50TG9hZGVyKiBkb2N1
bWVudExvYWRlcikKQEAgLTEwNiw4MSArOTYsODcgQEAgQXBwbGljYXRpb25DYWNoZSogQXBwbGlj
YXRpb25DYWNoZUdyb3VwOjpmYWxsYmFja0NhY2hlRm9yTWFpblJlcXVlc3QoY29uc3QgUmVzb3UK
ICAgICBpZiAoIUFwcGxpY2F0aW9uQ2FjaGU6OnJlcXVlc3RJc0hUVFBPckhUVFBTR2V0KHJlcXVl
c3QpKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAotICAgIFVSTCB1cmwocmVxdWVzdC51cmwo
KSk7Ci0gICAgaWYgKHVybC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSkKLSAgICAgICAgdXJsLnJl
bW92ZUZyYWdtZW50SWRlbnRpZmllcigpOworICAgIGF1dG8qIGZyYW1lID0gZG9jdW1lbnRMb2Fk
ZXItPmZyYW1lKCk7CisgICAgaWYgKCFmcmFtZSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAK
LSAgICBhdXRvKiBwYWdlID0gZG9jdW1lbnRMb2FkZXItPmZyYW1lKCkgPyBkb2N1bWVudExvYWRl
ci0+ZnJhbWUoKS0+cGFnZSgpIDogbnVsbHB0cjsKKyAgICBhdXRvKiBwYWdlID0gZnJhbWUtPnBh
Z2UoKTsKICAgICBpZiAoIXBhZ2UpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgaWYg
KEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAgPSBwYWdlLT5hcHBsaWNhdGlvbkNhY2hlU3Rv
cmFnZSgpLmZhbGxiYWNrQ2FjaGVHcm91cEZvclVSTCh1cmwpKSB7Ci0gICAgICAgIEFTU0VSVChn
cm91cC0+bmV3ZXN0Q2FjaGUoKSk7Ci0gICAgICAgIEFTU0VSVCghZ3JvdXAtPmlzT2Jzb2xldGUo
KSk7CisgICAgVVJMIHVybChyZXF1ZXN0LnVybCgpKTsKKyAgICB1cmwucmVtb3ZlRnJhZ21lbnRJ
ZGVudGlmaWVyKCk7CiAKLSAgICAgICAgcmV0dXJuIGdyb3VwLT5uZXdlc3RDYWNoZSgpOwotICAg
IH0KLSAgICAKLSAgICByZXR1cm4gbnVsbHB0cjsKKyAgICBhdXRvKiBncm91cCA9IHBhZ2UtPmFw
cGxpY2F0aW9uQ2FjaGVTdG9yYWdlKCkuZmFsbGJhY2tDYWNoZUdyb3VwRm9yVVJMKHVybCk7Cisg
ICAgaWYgKCFncm91cCkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICBBU1NFUlQoZ3Jv
dXAtPm5ld2VzdENhY2hlKCkpOworICAgIEFTU0VSVCghZ3JvdXAtPmlzT2Jzb2xldGUoKSk7CisK
KyAgICByZXR1cm4gZ3JvdXAtPm5ld2VzdENhY2hlKCk7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25D
YWNoZUdyb3VwOjpzZWxlY3RDYWNoZShGcmFtZSogZnJhbWUsIGNvbnN0IFVSTCYgcGFzc2VkTWFu
aWZlc3RVUkwpCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c2VsZWN0Q2FjaGUoRnJhbWUm
IGZyYW1lLCBjb25zdCBVUkwmIHBhc3NlZE1hbmlmZXN0VVJMKQogewotICAgIEFTU0VSVChmcmFt
ZSAmJiBmcmFtZS0+cGFnZSgpKTsKLSAgICAKLSAgICBpZiAoIWZyYW1lLT5zZXR0aW5ncygpLm9m
ZmxpbmVXZWJBcHBsaWNhdGlvbkNhY2hlRW5hYmxlZCgpKQorICAgIEFTU0VSVChmcmFtZS5kb2N1
bWVudCgpKTsKKyAgICBBU1NFUlQoZnJhbWUucGFnZSgpKTsKKyAgICBBU1NFUlQoZnJhbWUubG9h
ZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSk7CisKKyAgICBpZiAoIWZyYW1lLnNldHRpbmdzKCkub2Zm
bGluZVdlYkFwcGxpY2F0aW9uQ2FjaGVFbmFibGVkKCkpCiAgICAgICAgIHJldHVybjsKLSAgICAK
LSAgICBEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIgPSBmcmFtZS0+bG9hZGVyKCkuZG9j
dW1lbnRMb2FkZXIoKTsKLSAgICBBU1NFUlQoIWRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNh
Y2hlSG9zdCgpLT5hcHBsaWNhdGlvbkNhY2hlKCkpOworCisgICAgYXV0byYgZG9jdW1lbnRMb2Fk
ZXIgPSAqZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKKyAgICBBU1NFUlQoIWRvY3Vt
ZW50TG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuYXBwbGljYXRpb25DYWNoZSgpKTsKIAog
ICAgIGlmIChwYXNzZWRNYW5pZmVzdFVSTC5pc051bGwoKSkgewotICAgICAgICBzZWxlY3RDYWNo
ZVdpdGhvdXRNYW5pZmVzdFVSTChmcmFtZSk7ICAgICAgICAKKyAgICAgICAgc2VsZWN0Q2FjaGVX
aXRob3V0TWFuaWZlc3RVUkwoZnJhbWUpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCiAgICAg
Ly8gRG9uJ3QgYWNjZXNzIGFueXRoaW5nIG9uIGRpc2sgaWYgcHJpdmF0ZSBicm93c2luZyBpcyBl
bmFibGVkLgotICAgIGlmIChmcmFtZS0+cGFnZSgpLT51c2VzRXBoZW1lcmFsU2Vzc2lvbigpIHx8
ICFmcmFtZS0+ZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuQWNjZXNzQXBwbGljYXRp
b25DYWNoZShmcmFtZS0+dHJlZSgpLnRvcCgpLmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCkp
KSB7Ci0gICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNIRUNL
SU5HX0VWRU5ULCBkb2N1bWVudExvYWRlcik7Ci0gICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBw
bGljYXRpb25DYWNoZUhvc3Q6OkVSUk9SX0VWRU5ULCBkb2N1bWVudExvYWRlcik7CisgICAgaWYg
KGZyYW1lLnBhZ2UoKS0+dXNlc0VwaGVtZXJhbFNlc3Npb24oKSB8fCAhZnJhbWUuZG9jdW1lbnQo
KS0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuQWNjZXNzQXBwbGljYXRpb25DYWNoZShmcmFtZS50cmVl
KCkudG9wKCkuZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSkpIHsKKyAgICAgICAgcG9zdExp
c3RlbmVyVGFzayhldmVudE5hbWVzKCkuY2hlY2tpbmdFdmVudCwgZG9jdW1lbnRMb2FkZXIpOwor
ICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBkb2N1bWVu
dExvYWRlcik7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKICAgICBVUkwgbWFuaWZlc3RVUkwo
cGFzc2VkTWFuaWZlc3RVUkwpOwotICAgIGlmIChtYW5pZmVzdFVSTC5oYXNGcmFnbWVudElkZW50
aWZpZXIoKSkKLSAgICAgICAgbWFuaWZlc3RVUkwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7
CisgICAgbWFuaWZlc3RVUkwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CiAKLSAgICBBcHBs
aWNhdGlvbkNhY2hlKiBtYWluUmVzb3VyY2VDYWNoZSA9IGRvY3VtZW50TG9hZGVyLT5hcHBsaWNh
dGlvbkNhY2hlSG9zdCgpLT5tYWluUmVzb3VyY2VBcHBsaWNhdGlvbkNhY2hlKCk7CisgICAgYXV0
byogbWFpblJlc291cmNlQ2FjaGUgPSBkb2N1bWVudExvYWRlci5hcHBsaWNhdGlvbkNhY2hlSG9z
dCgpLm1haW5SZXNvdXJjZUFwcGxpY2F0aW9uQ2FjaGUoKTsKICAgICAKICAgICBpZiAobWFpblJl
c291cmNlQ2FjaGUpIHsKKyAgICAgICAgQVNTRVJUKG1haW5SZXNvdXJjZUNhY2hlLT5ncm91cCgp
KTsKICAgICAgICAgaWYgKG1hbmlmZXN0VVJMID09IG1haW5SZXNvdXJjZUNhY2hlLT5ncm91cCgp
LT5tX21hbmlmZXN0VVJMKSB7CiAgICAgICAgICAgICAvLyBUaGUgY2FjaGUgbWF5IGhhdmUgZ290
dGVuIG9ic29sZXRlZCBhZnRlciB3ZSd2ZSBsb2FkZWQgZnJvbSBpdCwgYnV0IGJlZm9yZSB3ZSBw
YXJzZWQgdGhlIGRvY3VtZW50IGFuZCBzYXcgY2FjaGUgbWFuaWZlc3QuCiAgICAgICAgICAgICBp
ZiAobWFpblJlc291cmNlQ2FjaGUtPmdyb3VwKCktPmlzT2Jzb2xldGUoKSkKICAgICAgICAgICAg
ICAgICByZXR1cm47Ci0gICAgICAgICAgICBtYWluUmVzb3VyY2VDYWNoZS0+Z3JvdXAoKS0+YXNz
b2NpYXRlRG9jdW1lbnRMb2FkZXJXaXRoQ2FjaGUoZG9jdW1lbnRMb2FkZXIsIG1haW5SZXNvdXJj
ZUNhY2hlKTsKKyAgICAgICAgICAgIG1haW5SZXNvdXJjZUNhY2hlLT5ncm91cCgpLT5hc3NvY2lh
dGVEb2N1bWVudExvYWRlcldpdGhDYWNoZSgmZG9jdW1lbnRMb2FkZXIsIG1haW5SZXNvdXJjZUNh
Y2hlKTsKICAgICAgICAgICAgIG1haW5SZXNvdXJjZUNhY2hlLT5ncm91cCgpLT51cGRhdGUoZnJh
bWUsIEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVXaXRoQnJvd3NpbmdDb250ZXh0KTsKICAgICAgICAg
fSBlbHNlIHsKICAgICAgICAgICAgIC8vIFRoZSBtYWluIHJlc291cmNlIHdhcyBsb2FkZWQgZnJv
bSBjYWNoZSwgc28gdGhlIGNhY2hlIG11c3QgaGF2ZSBhbiBlbnRyeSBmb3IgaXQuIE1hcmsgaXQg
YXMgZm9yZWlnbi4KLSAgICAgICAgICAgIFVSTCByZXNvdXJjZVVSTChkb2N1bWVudExvYWRlci0+
cmVzcG9uc2VVUkwoKSk7Ci0gICAgICAgICAgICBpZiAocmVzb3VyY2VVUkwuaGFzRnJhZ21lbnRJ
ZGVudGlmaWVyKCkpCi0gICAgICAgICAgICAgICAgcmVzb3VyY2VVUkwucmVtb3ZlRnJhZ21lbnRJ
ZGVudGlmaWVyKCk7Ci0gICAgICAgICAgICBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqIHJlc291
cmNlID0gbWFpblJlc291cmNlQ2FjaGUtPnJlc291cmNlRm9yVVJMKHJlc291cmNlVVJMKTsKLSAg
ICAgICAgICAgIGJvb2wgaW5TdG9yYWdlID0gcmVzb3VyY2UtPnN0b3JhZ2VJRCgpOwotICAgICAg
ICAgICAgcmVzb3VyY2UtPmFkZFR5cGUoQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpGb3JlaWdu
KTsKKyAgICAgICAgICAgIFVSTCByZXNvdXJjZVVSTCB7IGRvY3VtZW50TG9hZGVyLnJlc3BvbnNl
VVJMKCkgfTsKKyAgICAgICAgICAgIHJlc291cmNlVVJMLnJlbW92ZUZyYWdtZW50SWRlbnRpZmll
cigpOworCisgICAgICAgICAgICBBU1NFUlQobWFpblJlc291cmNlQ2FjaGUtPnJlc291cmNlRm9y
VVJMKHJlc291cmNlVVJMKSk7CisgICAgICAgICAgICBhdXRvJiByZXNvdXJjZSA9ICptYWluUmVz
b3VyY2VDYWNoZS0+cmVzb3VyY2VGb3JVUkwocmVzb3VyY2VVUkwpOworCisgICAgICAgICAgICBi
b29sIGluU3RvcmFnZSA9IHJlc291cmNlLnN0b3JhZ2VJRCgpOworICAgICAgICAgICAgcmVzb3Vy
Y2UuYWRkVHlwZShBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6OkZvcmVpZ24pOwogICAgICAgICAg
ICAgaWYgKGluU3RvcmFnZSkKLSAgICAgICAgICAgICAgICBmcmFtZS0+cGFnZSgpLT5hcHBsaWNh
dGlvbkNhY2hlU3RvcmFnZSgpLnN0b3JlVXBkYXRlZFR5cGUocmVzb3VyY2UsIG1haW5SZXNvdXJj
ZUNhY2hlKTsKKyAgICAgICAgICAgICAgICBmcmFtZS5wYWdlKCktPmFwcGxpY2F0aW9uQ2FjaGVT
dG9yYWdlKCkuc3RvcmVVcGRhdGVkVHlwZSgmcmVzb3VyY2UsIG1haW5SZXNvdXJjZUNhY2hlKTsK
IAogICAgICAgICAgICAgLy8gUmVzdGFydCB0aGUgY3VycmVudCBuYXZpZ2F0aW9uIGZyb20gdGhl
IHRvcCBvZiB0aGUgbmF2aWdhdGlvbiBhbGdvcml0aG0sIHVuZG9pbmcgYW55IGNoYW5nZXMgdGhh
dCB3ZXJlIG1hZGUKICAgICAgICAgICAgIC8vIGFzIHBhcnQgb2YgdGhlIGluaXRpYWwgbG9hZC4K
ICAgICAgICAgICAgIC8vIFRoZSBuYXZpZ2F0aW9uIHdpbGwgbm90IHJlc3VsdCBpbiB0aGUgc2Ft
ZSByZXNvdXJjZSBiZWluZyBsb2FkZWQsIGJlY2F1c2UgImZvcmVpZ24iIGVudHJpZXMgYXJlIG5l
dmVyIHBpY2tlZCBkdXJpbmcgbmF2aWdhdGlvbi4KLSAgICAgICAgICAgIGZyYW1lLT5uYXZpZ2F0
aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZShmcmFtZS0+ZG9jdW1lbnQoKSwg
ZnJhbWUtPmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCksIGRvY3VtZW50TG9hZGVyLT51cmwo
KSwgZnJhbWUtPmxvYWRlcigpLnJlZmVycmVyKCkpOworICAgICAgICAgICAgZnJhbWUubmF2aWdh
dGlvblNjaGVkdWxlcigpLnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UoKmZyYW1lLmRvY3VtZW50KCks
IGZyYW1lLmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCksIGRvY3VtZW50TG9hZGVyLnVybCgp
LCBmcmFtZS5sb2FkZXIoKS5yZWZlcnJlcigpKTsKICAgICAgICAgfQotICAgICAgICAKICAgICAg
ICAgcmV0dXJuOwogICAgIH0KLSAgICAKKwogICAgIC8vIFRoZSByZXNvdXJjZSB3YXMgbG9hZGVk
IGZyb20gdGhlIG5ldHdvcmssIGNoZWNrIGlmIGl0IGlzIGEgSFRUUC9IVFRQUyBHRVQuICAgIAot
ICAgIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCA9IGZyYW1lLT5sb2FkZXIoKS5hY3Rp
dmVEb2N1bWVudExvYWRlcigpLT5yZXF1ZXN0KCk7CisgICAgYXV0byYgcmVxdWVzdCA9IGZyYW1l
LmxvYWRlcigpLmFjdGl2ZURvY3VtZW50TG9hZGVyKCktPnJlcXVlc3QoKTsKIAogICAgIGlmICgh
QXBwbGljYXRpb25DYWNoZTo6cmVxdWVzdElzSFRUUE9ySFRUUFNHZXQocmVxdWVzdCkpCiAgICAg
ICAgIHJldHVybjsKQEAgLTE4OSw0NiArMTg1LDQ4IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdy
b3VwOjpzZWxlY3RDYWNoZShGcmFtZSogZnJhbWUsIGNvbnN0IFVSTCYgcGFzc2VkTWFuaWZlc3RV
CiAgICAgaWYgKCFwcm90b2NvbEhvc3RBbmRQb3J0QXJlRXF1YWwobWFuaWZlc3RVUkwsIHJlcXVl
c3QudXJsKCkpKQogICAgICAgICByZXR1cm47CiAKLSAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAq
IGdyb3VwID0gZnJhbWUtPnBhZ2UoKS0+YXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKS5maW5kT3JD
cmVhdGVDYWNoZUdyb3VwKG1hbmlmZXN0VVJMKTsKKyAgICBhdXRvJiBncm91cCA9ICpmcmFtZS5w
YWdlKCktPmFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlKCkuZmluZE9yQ3JlYXRlQ2FjaGVHcm91cCht
YW5pZmVzdFVSTCk7CiAKLSAgICBkb2N1bWVudExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3Qo
KS0+c2V0Q2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKGdyb3VwKTsKLSAgICBncm91cC0+
bV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLmFkZChkb2N1bWVudExvYWRlcik7Ci0gICAg
Z3JvdXAtPm1fZG93bmxvYWRpbmdQZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzQ291bnQrKzsK
KyAgICBkb2N1bWVudExvYWRlci5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLnNldENhbmRpZGF0ZUFw
cGxpY2F0aW9uQ2FjaGVHcm91cCgmZ3JvdXApOworICAgIGdyb3VwLm1fcGVuZGluZ01hc3RlclJl
c291cmNlTG9hZGVycy5hZGQoJmRvY3VtZW50TG9hZGVyKTsKKyAgICBncm91cC5tX2Rvd25sb2Fk
aW5nUGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVyc0NvdW50Kys7CiAKLSAgICBBU1NFUlQoIWdy
b3VwLT5tX2NhY2hlQmVpbmdVcGRhdGVkIHx8IGdyb3VwLT5tX3VwZGF0ZVN0YXR1cyAhPSBJZGxl
KTsKLSAgICBncm91cC0+dXBkYXRlKGZyYW1lLCBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlV2l0aEJy
b3dzaW5nQ29udGV4dCk7CisgICAgQVNTRVJUKCFncm91cC5tX2NhY2hlQmVpbmdVcGRhdGVkIHx8
IGdyb3VwLm1fdXBkYXRlU3RhdHVzICE9IElkbGUpOworICAgIGdyb3VwLnVwZGF0ZShmcmFtZSwg
QXBwbGljYXRpb25DYWNoZVVwZGF0ZVdpdGhCcm93c2luZ0NvbnRleHQpOwogfQogCi12b2lkIEFw
cGxpY2F0aW9uQ2FjaGVHcm91cDo6c2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3RVUkwoRnJhbWUq
IGZyYW1lKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVjdENhY2hlV2l0aG91dE1h
bmlmZXN0VVJMKEZyYW1lJiBmcmFtZSkKIHsKLSAgICBpZiAoIWZyYW1lLT5zZXR0aW5ncygpLm9m
ZmxpbmVXZWJBcHBsaWNhdGlvbkNhY2hlRW5hYmxlZCgpKQorICAgIGlmICghZnJhbWUuc2V0dGlu
Z3MoKS5vZmZsaW5lV2ViQXBwbGljYXRpb25DYWNoZUVuYWJsZWQoKSkKICAgICAgICAgcmV0dXJu
OwogCi0gICAgRG9jdW1lbnRMb2FkZXIqIGRvY3VtZW50TG9hZGVyID0gZnJhbWUtPmxvYWRlcigp
LmRvY3VtZW50TG9hZGVyKCk7Ci0gICAgQVNTRVJUKCFkb2N1bWVudExvYWRlci0+YXBwbGljYXRp
b25DYWNoZUhvc3QoKS0+YXBwbGljYXRpb25DYWNoZSgpKTsKKyAgICBBU1NFUlQoZnJhbWUuZG9j
dW1lbnQoKSk7CisgICAgQVNTRVJUKGZyYW1lLnBhZ2UoKSk7CisgICAgQVNTRVJUKGZyYW1lLmxv
YWRlcigpLmRvY3VtZW50TG9hZGVyKCkpOworICAgIGF1dG8mIGRvY3VtZW50TG9hZGVyID0gKmZy
YW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCk7CisgICAgQVNTRVJUKCFkb2N1bWVudExvYWRl
ci5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLmFwcGxpY2F0aW9uQ2FjaGUoKSk7CiAKICAgICAvLyBE
b24ndCBhY2Nlc3MgYW55dGhpbmcgb24gZGlzayBpZiBwcml2YXRlIGJyb3dzaW5nIGlzIGVuYWJs
ZWQuCi0gICAgaWYgKGZyYW1lLT5wYWdlKCktPnVzZXNFcGhlbWVyYWxTZXNzaW9uKCkgfHwgIWZy
YW1lLT5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5jYW5BY2Nlc3NBcHBsaWNhdGlvbkNh
Y2hlKGZyYW1lLT50cmVlKCkudG9wKCkuZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSkpIHsK
LSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q0hFQ0tJTkdf
RVZFTlQsIGRvY3VtZW50TG9hZGVyKTsKLSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNh
dGlvbkNhY2hlSG9zdDo6RVJST1JfRVZFTlQsIGRvY3VtZW50TG9hZGVyKTsKKyAgICBpZiAoZnJh
bWUucGFnZSgpLT51c2VzRXBoZW1lcmFsU2Vzc2lvbigpIHx8ICFmcmFtZS5kb2N1bWVudCgpLT5z
ZWN1cml0eU9yaWdpbigpLT5jYW5BY2Nlc3NBcHBsaWNhdGlvbkNhY2hlKGZyYW1lLnRyZWUoKS50
b3AoKS5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpKSkgeworICAgICAgICBwb3N0TGlzdGVu
ZXJUYXNrKGV2ZW50TmFtZXMoKS5jaGVja2luZ0V2ZW50LCBkb2N1bWVudExvYWRlcik7CisgICAg
ICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmVycm9yRXZlbnQsIGRvY3VtZW50TG9h
ZGVyKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIEFwcGxpY2F0aW9uQ2FjaGUqIG1h
aW5SZXNvdXJjZUNhY2hlID0gZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkt
Pm1haW5SZXNvdXJjZUFwcGxpY2F0aW9uQ2FjaGUoKTsKLQotICAgIGlmIChtYWluUmVzb3VyY2VD
YWNoZSkgewotICAgICAgICBtYWluUmVzb3VyY2VDYWNoZS0+Z3JvdXAoKS0+YXNzb2NpYXRlRG9j
dW1lbnRMb2FkZXJXaXRoQ2FjaGUoZG9jdW1lbnRMb2FkZXIsIG1haW5SZXNvdXJjZUNhY2hlKTsK
LSAgICAgICAgbWFpblJlc291cmNlQ2FjaGUtPmdyb3VwKCktPnVwZGF0ZShmcmFtZSwgQXBwbGlj
YXRpb25DYWNoZVVwZGF0ZVdpdGhCcm93c2luZ0NvbnRleHQpOworICAgIGlmIChhdXRvKiBtYWlu
UmVzb3VyY2VDYWNoZSA9IGRvY3VtZW50TG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWFp
blJlc291cmNlQXBwbGljYXRpb25DYWNoZSgpKSB7CisgICAgICAgIEFTU0VSVChtYWluUmVzb3Vy
Y2VDYWNoZS0+Z3JvdXAoKSk7CisgICAgICAgIGF1dG8mIGdyb3VwID0gKm1haW5SZXNvdXJjZUNh
Y2hlLT5ncm91cCgpOworICAgICAgICBncm91cC5hc3NvY2lhdGVEb2N1bWVudExvYWRlcldpdGhD
YWNoZSgmZG9jdW1lbnRMb2FkZXIsIG1haW5SZXNvdXJjZUNhY2hlKTsKKyAgICAgICAgZ3JvdXAu
dXBkYXRlKGZyYW1lLCBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlV2l0aEJyb3dzaW5nQ29udGV4dCk7
CiAgICAgfQogfQogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZmluaXNoZWRMb2FkaW5n
TWFpblJlc291cmNlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCit2b2lkIEFwcGxpY2F0aW9uQ2Fj
aGVHcm91cDo6ZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKERvY3VtZW50TG9hZGVyJiBsb2Fk
ZXIpCiB7Ci0gICAgQVNTRVJUKG1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5jb250YWlu
cyhsb2FkZXIpKTsKKyAgICBBU1NFUlQobV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLmNv
bnRhaW5zKCZsb2FkZXIpKTsKICAgICBBU1NFUlQobV9jb21wbGV0aW9uVHlwZSA9PSBOb25lIHx8
IG1fcGVuZGluZ0VudHJpZXMuaXNFbXB0eSgpKTsKLSAgICBVUkwgdXJsID0gbG9hZGVyLT51cmwo
KTsKLSAgICBpZiAodXJsLmhhc0ZyYWdtZW50SWRlbnRpZmllcigpKQotICAgICAgICB1cmwucmVt
b3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CisgICAgVVJMIHVybCA9IGxvYWRlci51cmwoKTsKKyAg
ICB1cmwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CiAKICAgICBzd2l0Y2ggKG1fY29tcGxl
dGlvblR5cGUpIHsKICAgICBjYXNlIE5vbmU6CkBAIC0yMzYsMzQgKzIzNCwzMiBAQCB2b2lkIEFw
cGxpY2F0aW9uQ2FjaGVHcm91cDo6ZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKERvY3VtZW50
TG9hZGVyKiBsb2FkZXIpCiAgICAgICAgIHJldHVybjsKICAgICBjYXNlIE5vVXBkYXRlOgogICAg
ICAgICBBU1NFUlQoIW1fY2FjaGVCZWluZ1VwZGF0ZWQpOwotICAgICAgICBhc3NvY2lhdGVEb2N1
bWVudExvYWRlcldpdGhDYWNoZShsb2FkZXIsIG1fbmV3ZXN0Q2FjaGUuZ2V0KCkpOwotCi0gICAg
ICAgIGlmIChBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqIHJlc291cmNlID0gbV9uZXdlc3RDYWNo
ZS0+cmVzb3VyY2VGb3JVUkwodXJsKSkgeworICAgICAgICBhc3NvY2lhdGVEb2N1bWVudExvYWRl
cldpdGhDYWNoZSgmbG9hZGVyLCBtX25ld2VzdENhY2hlLmdldCgpKTsKKyAgICAgICAgaWYgKGF1
dG8qIHJlc291cmNlID0gbV9uZXdlc3RDYWNoZS0+cmVzb3VyY2VGb3JVUkwodXJsKSkgewogICAg
ICAgICAgICAgaWYgKCEocmVzb3VyY2UtPnR5cGUoKSAmIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJj
ZTo6TWFzdGVyKSkgewogICAgICAgICAgICAgICAgIHJlc291cmNlLT5hZGRUeXBlKEFwcGxpY2F0
aW9uQ2FjaGVSZXNvdXJjZTo6TWFzdGVyKTsKICAgICAgICAgICAgICAgICBBU1NFUlQoIXJlc291
cmNlLT5zdG9yYWdlSUQoKSk7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0gZWxzZQotICAgICAg
ICAgICAgbV9uZXdlc3RDYWNoZS0+YWRkUmVzb3VyY2UoQXBwbGljYXRpb25DYWNoZVJlc291cmNl
OjpjcmVhdGUodXJsLCBsb2FkZXItPnJlc3BvbnNlKCksIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJj
ZTo6TWFzdGVyLCBsb2FkZXItPm1haW5SZXNvdXJjZURhdGEoKSkpOworICAgICAgICAgICAgbV9u
ZXdlc3RDYWNoZS0+YWRkUmVzb3VyY2UoQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpjcmVhdGUo
dXJsLCBsb2FkZXIucmVzcG9uc2UoKSwgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIs
IGxvYWRlci5tYWluUmVzb3VyY2VEYXRhKCkpKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBG
YWlsdXJlOgogICAgICAgICAvLyBDYWNoZSB1cGRhdGUgaGFzIGJlZW4gYSBmYWlsdXJlLCBzbyB0
aGVyZSBpcyBubyByZWFzb24gdG8ga2VlcCB0aGUgZG9jdW1lbnQgYXNzb2NpYXRlZCB3aXRoIHRo
ZSBpbmNvbXBsZXRlIGNhY2hlCiAgICAgICAgIC8vIChpdHMgbWFpbiByZXNvdXJjZSB3YXMgbm90
IGNhY2hlZCB5ZXQsIHNvIGl0IGlzIGxpa2VseSB0aGF0IHRoZSBhcHBsaWNhdGlvbiBjaGFuZ2Vk
IHNpZ25pZmljYW50bHkgc2VydmVyLXNpZGUpLgogICAgICAgICBBU1NFUlQoIW1fY2FjaGVCZWlu
Z1VwZGF0ZWQpOyAvLyBBbHJlYWR5IGNsZWFyZWQgb3V0IGJ5IHN0b3BMb2FkaW5nKCkuCi0gICAg
ICAgIGxvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+c2V0QXBwbGljYXRpb25DYWNoZShu
dWxscHRyKTsgLy8gV2lsbCB1bnNldCBjYW5kaWRhdGUsIHRvby4KLSAgICAgICAgbV9hc3NvY2lh
dGVkRG9jdW1lbnRMb2FkZXJzLnJlbW92ZShsb2FkZXIpOwotICAgICAgICBwb3N0TGlzdGVuZXJU
YXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFUlJPUl9FVkVOVCwgbG9hZGVyKTsKKyAgICAgICAg
bG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2V0QXBwbGljYXRpb25DYWNoZShudWxscHRy
KTsgLy8gV2lsbCB1bnNldCBjYW5kaWRhdGUsIHRvby4KKyAgICAgICAgbV9hc3NvY2lhdGVkRG9j
dW1lbnRMb2FkZXJzLnJlbW92ZSgmbG9hZGVyKTsKKyAgICAgICAgcG9zdExpc3RlbmVyVGFzayhl
dmVudE5hbWVzKCkuZXJyb3JFdmVudCwgbG9hZGVyKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2Fz
ZSBDb21wbGV0ZWQ6Ci0gICAgICAgIEFTU0VSVChtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMu
Y29udGFpbnMobG9hZGVyKSk7Ci0KLSAgICAgICAgaWYgKEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJj
ZSogcmVzb3VyY2UgPSBtX2NhY2hlQmVpbmdVcGRhdGVkLT5yZXNvdXJjZUZvclVSTCh1cmwpKSB7
CisgICAgICAgIEFTU0VSVChtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMuY29udGFpbnMoJmxv
YWRlcikpOworICAgICAgICBpZiAoYXV0byogcmVzb3VyY2UgPSBtX2NhY2hlQmVpbmdVcGRhdGVk
LT5yZXNvdXJjZUZvclVSTCh1cmwpKSB7CiAgICAgICAgICAgICBpZiAoIShyZXNvdXJjZS0+dHlw
ZSgpICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIpKSB7CiAgICAgICAgICAgICAg
ICAgcmVzb3VyY2UtPmFkZFR5cGUoQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIpOwog
ICAgICAgICAgICAgICAgIEFTU0VSVCghcmVzb3VyY2UtPnN0b3JhZ2VJRCgpKTsKICAgICAgICAg
ICAgIH0KICAgICAgICAgfSBlbHNlCi0gICAgICAgICAgICBtX2NhY2hlQmVpbmdVcGRhdGVkLT5h
ZGRSZXNvdXJjZShBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6OmNyZWF0ZSh1cmwsIGxvYWRlci0+
cmVzcG9uc2UoKSwgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIsIGxvYWRlci0+bWFp
blJlc291cmNlRGF0YSgpKSk7CisgICAgICAgICAgICBtX2NhY2hlQmVpbmdVcGRhdGVkLT5hZGRS
ZXNvdXJjZShBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6OmNyZWF0ZSh1cmwsIGxvYWRlci5yZXNw
b25zZSgpLCBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6Ok1hc3RlciwgbG9hZGVyLm1haW5SZXNv
dXJjZURhdGEoKSkpOwogICAgICAgICAvLyBUaGUgImNhY2hlZCIgZXZlbnQgd2lsbCBiZSBwb3N0
ZWQgdG8gYWxsIGFzc29jaWF0ZWQgZG9jdW1lbnRzIG9uY2UgdXBkYXRlIGlzIGNvbXBsZXRlLgog
ICAgICAgICBicmVhazsKICAgICB9CkBAIC0yNzMsOSArMjY5LDkgQEAgdm9pZCBBcHBsaWNhdGlv
bkNhY2hlR3JvdXA6OmZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZShEb2N1bWVudExvYWRlciog
bG9hZGVyKQogICAgIGNoZWNrSWZMb2FkSXNDb21wbGV0ZSgpOwogfQogCi12b2lkIEFwcGxpY2F0
aW9uQ2FjaGVHcm91cDo6ZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZShEb2N1bWVudExvYWRlciog
bG9hZGVyKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmZhaWxlZExvYWRpbmdNYWluUmVz
b3VyY2UoRG9jdW1lbnRMb2FkZXImIGxvYWRlcikKIHsKLSAgICBBU1NFUlQobV9wZW5kaW5nTWFz
dGVyUmVzb3VyY2VMb2FkZXJzLmNvbnRhaW5zKGxvYWRlcikpOworICAgIEFTU0VSVChtX3BlbmRp
bmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMuY29udGFpbnMoJmxvYWRlcikpOwogICAgIEFTU0VSVCht
X2NvbXBsZXRpb25UeXBlID09IE5vbmUgfHwgbV9wZW5kaW5nRW50cmllcy5pc0VtcHR5KCkpOwog
CiAgICAgc3dpdGNoIChtX2NvbXBsZXRpb25UeXBlKSB7CkBAIC0yODQsMzIgKzI4MCwyNyBAQCB2
b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZShEb2N1
bWVudExvYWRlciogbG9hZGVyKQogICAgICAgICByZXR1cm47CiAgICAgY2FzZSBOb1VwZGF0ZToK
ICAgICAgICAgQVNTRVJUKCFtX2NhY2hlQmVpbmdVcGRhdGVkKTsKLQogICAgICAgICAvLyBUaGUg
bWFuaWZlc3QgZGlkbid0IGNoYW5nZSwgYW5kIHdlIGhhdmUgYSByZWxldmFudCBjYWNoZSAtIGJ1
dCB0aGUgbWFpbiByZXNvdXJjZSBkb3dubG9hZCBmYWlsZWQgbWlkLXdheSwgc28gaXQgY2Fubm90
IGJlIHN0b3JlZCB0byB0aGUgY2FjaGUsCiAgICAgICAgIC8vIGFuZCB0aGUgbG9hZGVyIGRvZXMg
bm90IGdldCBhc3NvY2lhdGVkIHRvIGl0LiBJZiB0aGVyZSBhcmUgb3RoZXIgbWFpbiByZXNvdXJj
ZXMgYmVpbmcgZG93bmxvYWRlZCBmb3IgdGhpcyBjYWNoZSBncm91cCwgdGhleSBtYXkgc3RpbGwg
c3VjY2VlZC4KLSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6
RVJST1JfRVZFTlQsIGxvYWRlcik7Ci0KKyAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5h
bWVzKCkuZXJyb3JFdmVudCwgbG9hZGVyKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBGYWls
dXJlOgogICAgICAgICAvLyBDYWNoZSB1cGRhdGUgZmFpbGVkLCB0b28uCiAgICAgICAgIEFTU0VS
VCghbV9jYWNoZUJlaW5nVXBkYXRlZCk7IC8vIEFscmVhZHkgY2xlYXJlZCBvdXQgYnkgc3RvcExv
YWRpbmcoKS4KLSAgICAgICAgQVNTRVJUKCFsb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkt
PmFwcGxpY2F0aW9uQ2FjaGUoKSB8fCBsb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPmFw
cGxpY2F0aW9uQ2FjaGUoKS0+Z3JvdXAoKSA9PSB0aGlzKTsKLQotICAgICAgICBsb2FkZXItPmFw
cGxpY2F0aW9uQ2FjaGVIb3N0KCktPnNldEFwcGxpY2F0aW9uQ2FjaGUobnVsbHB0cik7IC8vIFdp
bGwgdW5zZXQgY2FuZGlkYXRlLCB0b28uCi0gICAgICAgIG1fYXNzb2NpYXRlZERvY3VtZW50TG9h
ZGVycy5yZW1vdmUobG9hZGVyKTsKLSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlv
bkNhY2hlSG9zdDo6RVJST1JfRVZFTlQsIGxvYWRlcik7CisgICAgICAgIEFTU0VSVCghbG9hZGVy
LmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuYXBwbGljYXRpb25DYWNoZSgpIHx8IGxvYWRlci5hcHBs
aWNhdGlvbkNhY2hlSG9zdCgpLmFwcGxpY2F0aW9uQ2FjaGUoKS0+Z3JvdXAoKSA9PSB0aGlzKTsK
KyAgICAgICAgbG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2V0QXBwbGljYXRpb25DYWNo
ZShudWxscHRyKTsgLy8gV2lsbCB1bnNldCBjYW5kaWRhdGUsIHRvby4KKyAgICAgICAgbV9hc3Nv
Y2lhdGVkRG9jdW1lbnRMb2FkZXJzLnJlbW92ZSgmbG9hZGVyKTsKKyAgICAgICAgcG9zdExpc3Rl
bmVyVGFzayhldmVudE5hbWVzKCkuZXJyb3JFdmVudCwgbG9hZGVyKTsKICAgICAgICAgYnJlYWs7
CiAgICAgY2FzZSBDb21wbGV0ZWQ6CiAgICAgICAgIC8vIFRoZSBjYWNoZSBtYW5pZmVzdCBkaWRu
J3QgbGlzdCB0aGlzIG1haW4gcmVzb3VyY2UsIGFuZCBhbGwgY2FjaGUgZW50cmllcyB3ZXJlIGFs
cmVhZHkgdXBkYXRlZCBzdWNjZXNzZnVsbHkgLSBidXQgdGhlIG1haW4gcmVzb3VyY2UgZmFpbGVk
IHRvIGxvYWQsCiAgICAgICAgIC8vIHNvIGl0IGNhbm5vdCBiZSBzdG9yZWQgdG8gdGhlIGNhY2hl
LiBJZiB0aGVyZSBhcmUgb3RoZXIgbWFpbiByZXNvdXJjZXMgYmVpbmcgZG93bmxvYWRlZCBmb3Ig
dGhpcyBjYWNoZSBncm91cCwgdGhleSBtYXkgc3RpbGwgc3VjY2VlZC4KLSAgICAgICAgQVNTRVJU
KG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycy5jb250YWlucyhsb2FkZXIpKTsKLSAgICAgICAg
QVNTRVJUKGxvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+YXBwbGljYXRpb25DYWNoZSgp
ID09IG1fY2FjaGVCZWluZ1VwZGF0ZWQpOwotICAgICAgICBBU1NFUlQoIWxvYWRlci0+YXBwbGlj
YXRpb25DYWNoZUhvc3QoKS0+Y2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKCkpOwotICAg
ICAgICBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMucmVtb3ZlKGxvYWRlcik7Ci0gICAgICAg
IGxvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+c2V0QXBwbGljYXRpb25DYWNoZShudWxs
cHRyKTsKLQotICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpF
UlJPUl9FVkVOVCwgbG9hZGVyKTsKLQorICAgICAgICBBU1NFUlQobV9hc3NvY2lhdGVkRG9jdW1l
bnRMb2FkZXJzLmNvbnRhaW5zKCZsb2FkZXIpKTsKKyAgICAgICAgQVNTRVJUKGxvYWRlci5hcHBs
aWNhdGlvbkNhY2hlSG9zdCgpLmFwcGxpY2F0aW9uQ2FjaGUoKSA9PSBtX2NhY2hlQmVpbmdVcGRh
dGVkKTsKKyAgICAgICAgQVNTRVJUKCFsb2FkZXIuYXBwbGljYXRpb25DYWNoZUhvc3QoKS5jYW5k
aWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKSk7CisgICAgICAgIG1fYXNzb2NpYXRlZERvY3Vt
ZW50TG9hZGVycy5yZW1vdmUoJmxvYWRlcik7CisgICAgICAgIGxvYWRlci5hcHBsaWNhdGlvbkNh
Y2hlSG9zdCgpLnNldEFwcGxpY2F0aW9uQ2FjaGUobnVsbHB0cik7CisgICAgICAgIHBvc3RMaXN0
ZW5lclRhc2soZXZlbnROYW1lcygpLmVycm9yRXZlbnQsIGxvYWRlcik7CiAgICAgICAgIGJyZWFr
OwogICAgIH0KIApAQCAtMzQ2LDEyICszMzcsMTIgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3Jv
dXA6OnN0b3BMb2FkaW5nKCkKICAgICBtX3BlbmRpbmdFbnRyaWVzLmNsZWFyKCk7CiB9ICAgIAog
Ci12b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZGlzYXNzb2NpYXRlRG9jdW1lbnRMb2FkZXIo
RG9jdW1lbnRMb2FkZXIqIGxvYWRlcikKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpkaXNh
c3NvY2lhdGVEb2N1bWVudExvYWRlcihEb2N1bWVudExvYWRlciYgbG9hZGVyKQogewotICAgIG1f
YXNzb2NpYXRlZERvY3VtZW50TG9hZGVycy5yZW1vdmUobG9hZGVyKTsKLSAgICBtX3BlbmRpbmdN
YXN0ZXJSZXNvdXJjZUxvYWRlcnMucmVtb3ZlKGxvYWRlcik7CisgICAgbV9hc3NvY2lhdGVkRG9j
dW1lbnRMb2FkZXJzLnJlbW92ZSgmbG9hZGVyKTsKKyAgICBtX3BlbmRpbmdNYXN0ZXJSZXNvdXJj
ZUxvYWRlcnMucmVtb3ZlKCZsb2FkZXIpOwogCi0gICAgaWYgKGF1dG8qIGhvc3QgPSBsb2FkZXIt
PmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkpCisgICAgaWYgKGF1dG8qIGhvc3QgPSBsb2FkZXIuYXBw
bGljYXRpb25DYWNoZUhvc3RVbmxlc3NCZWluZ0Rlc3Ryb3llZCgpKQogICAgICAgICBob3N0LT5z
ZXRBcHBsaWNhdGlvbkNhY2hlKG51bGxwdHIpOyAvLyBXaWxsIHNldCBjYW5kaWRhdGUgZ3JvdXAg
dG8gbnVsbCwgdG9vLgogCiAgICAgaWYgKCFtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMuaXNF
bXB0eSgpIHx8ICFtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMuaXNFbXB0eSgpKQpAQCAt
MzcyLDI2ICszNjMsMjYgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRpc2Fzc29jaWF0
ZURvY3VtZW50TG9hZGVyKERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCiAgICAgbV9uZXdlc3RDYWNo
ZSA9IG51bGxwdHI7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpjYWNoZURlc3Ry
b3llZChBcHBsaWNhdGlvbkNhY2hlKiBjYWNoZSkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3Vw
OjpjYWNoZURlc3Ryb3llZChBcHBsaWNhdGlvbkNhY2hlJiBjYWNoZSkKIHsKLSAgICBpZiAobV9j
YWNoZXMucmVtb3ZlKGNhY2hlKSAmJiBtX2NhY2hlcy5pc0VtcHR5KCkpIHsKKyAgICBpZiAobV9j
YWNoZXMucmVtb3ZlKCZjYWNoZSkgJiYgbV9jYWNoZXMuaXNFbXB0eSgpKSB7CiAgICAgICAgIEFT
U0VSVChtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMuaXNFbXB0eSgpKTsKICAgICAgICAgQVNT
RVJUKG1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5pc0VtcHR5KCkpOwogICAgICAgICBk
ZWxldGUgdGhpczsKICAgICB9CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzdG9w
TG9hZGluZ0luRnJhbWUoRnJhbWUqIGZyYW1lKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
OnN0b3BMb2FkaW5nSW5GcmFtZShGcmFtZSYgZnJhbWUpCiB7Ci0gICAgaWYgKGZyYW1lICE9IG1f
ZnJhbWUpCisgICAgaWYgKCZmcmFtZSAhPSBtX2ZyYW1lKQogICAgICAgICByZXR1cm47CiAKICAg
ICBjYWNoZVVwZGF0ZUZhaWxlZCgpOwogfQogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6
c2V0TmV3ZXN0Q2FjaGUoUGFzc1JlZlB0cjxBcHBsaWNhdGlvbkNhY2hlPiBuZXdlc3RDYWNoZSkK
K3ZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZXROZXdlc3RDYWNoZShSZWY8QXBwbGljYXRp
b25DYWNoZT4mJiBuZXdlc3RDYWNoZSkKIHsKLSAgICBtX25ld2VzdENhY2hlID0gbmV3ZXN0Q2Fj
aGU7CisgICAgbV9uZXdlc3RDYWNoZSA9IFdURk1vdmUobmV3ZXN0Q2FjaGUpOwogCiAgICAgbV9j
YWNoZXMuYWRkKG1fbmV3ZXN0Q2FjaGUuZ2V0KCkpOwogICAgIG1fbmV3ZXN0Q2FjaGUtPnNldEdy
b3VwKHRoaXMpOwpAQCAtNDAzLDQwICszOTQsNDMgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3Jv
dXA6Om1ha2VPYnNvbGV0ZSgpCiAgICAgICAgIHJldHVybjsKIAogICAgIG1faXNPYnNvbGV0ZSA9
IHRydWU7Ci0gICAgbV9zdG9yYWdlLT5jYWNoZUdyb3VwTWFkZU9ic29sZXRlKHRoaXMpOworICAg
IG1fc3RvcmFnZS0+Y2FjaGVHcm91cE1hZGVPYnNvbGV0ZSgqdGhpcyk7CiAgICAgQVNTRVJUKCFt
X3N0b3JhZ2VJRCk7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjp1cGRhdGUoRnJh
bWUqIGZyYW1lLCBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlT3B0aW9uIHVwZGF0ZU9wdGlvbikKK3Zv
aWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjp1cGRhdGUoRnJhbWUmIGZyYW1lLCBBcHBsaWNhdGlv
bkNhY2hlVXBkYXRlT3B0aW9uIHVwZGF0ZU9wdGlvbikKIHsKKyAgICBBU1NFUlQoZnJhbWUubG9h
ZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSk7CisgICAgYXV0byYgZG9jdW1lbnRMb2FkZXIgPSAqZnJh
bWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKKwogICAgIGlmIChtX3VwZGF0ZVN0YXR1cyA9
PSBDaGVja2luZyB8fCBtX3VwZGF0ZVN0YXR1cyA9PSBEb3dubG9hZGluZykgewogICAgICAgICBp
ZiAodXBkYXRlT3B0aW9uID09IEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVXaXRoQnJvd3NpbmdDb250
ZXh0KSB7Ci0gICAgICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0
OjpDSEVDS0lOR19FVkVOVCwgZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkpOworICAg
ICAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkuY2hlY2tpbmdFdmVudCwgZG9j
dW1lbnRMb2FkZXIpOwogICAgICAgICAgICAgaWYgKG1fdXBkYXRlU3RhdHVzID09IERvd25sb2Fk
aW5nKQotICAgICAgICAgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhv
c3Q6OkRPV05MT0FESU5HX0VWRU5ULCBmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSk7
CisgICAgICAgICAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkuZG93bmxvYWRp
bmdFdmVudCwgZG9jdW1lbnRMb2FkZXIpOwogICAgICAgICB9CiAgICAgICAgIHJldHVybjsKICAg
ICB9CiAKICAgICAvLyBEb24ndCBhY2Nlc3MgYW55dGhpbmcgb24gZGlzayBpZiBwcml2YXRlIGJy
b3dzaW5nIGlzIGVuYWJsZWQuCi0gICAgaWYgKGZyYW1lLT5wYWdlKCktPnVzZXNFcGhlbWVyYWxT
ZXNzaW9uKCkgfHwgIWZyYW1lLT5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5jYW5BY2Nl
c3NBcHBsaWNhdGlvbkNhY2hlKGZyYW1lLT50cmVlKCkudG9wKCkuZG9jdW1lbnQoKS0+c2VjdXJp
dHlPcmlnaW4oKSkpIHsKKyAgICBpZiAoZnJhbWUucGFnZSgpLT51c2VzRXBoZW1lcmFsU2Vzc2lv
bigpIHx8ICFmcmFtZS5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5jYW5BY2Nlc3NBcHBs
aWNhdGlvbkNhY2hlKGZyYW1lLnRyZWUoKS50b3AoKS5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdp
bigpKSkgewogICAgICAgICBBU1NFUlQobV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLmlz
RW1wdHkoKSk7CiAgICAgICAgIEFTU0VSVChtX3BlbmRpbmdFbnRyaWVzLmlzRW1wdHkoKSk7CiAg
ICAgICAgIEFTU0VSVCghbV9jYWNoZUJlaW5nVXBkYXRlZCk7Ci0gICAgICAgIHBvc3RMaXN0ZW5l
clRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNIRUNLSU5HX0VWRU5ULCBmcmFtZS0+bG9hZGVy
KCkuZG9jdW1lbnRMb2FkZXIoKSk7Ci0gICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRp
b25DYWNoZUhvc3Q6OkVSUk9SX0VWRU5ULCBmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIo
KSk7CisgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmNoZWNraW5nRXZlbnQs
IGRvY3VtZW50TG9hZGVyKTsKKyAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCku
ZXJyb3JFdmVudCwgZG9jdW1lbnRMb2FkZXIpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCiAg
ICAgQVNTRVJUKCFtX2ZyYW1lKTsKLSAgICBtX2ZyYW1lID0gZnJhbWU7CisgICAgbV9mcmFtZSA9
ICZmcmFtZTsKIAogICAgIHNldFVwZGF0ZVN0YXR1cyhDaGVja2luZyk7CiAKLSAgICBwb3N0TGlz
dGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDSEVDS0lOR19FVkVOVCwgbV9hc3NvY2lh
dGVkRG9jdW1lbnRMb2FkZXJzKTsKKyAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5j
aGVja2luZ0V2ZW50LCBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOwogICAgIGlmICghbV9u
ZXdlc3RDYWNoZSkgewogICAgICAgICBBU1NFUlQodXBkYXRlT3B0aW9uID09IEFwcGxpY2F0aW9u
Q2FjaGVVcGRhdGVXaXRoQnJvd3NpbmdDb250ZXh0KTsKLSAgICAgICAgcG9zdExpc3RlbmVyVGFz
ayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q0hFQ0tJTkdfRVZFTlQsIGZyYW1lLT5sb2FkZXIoKS5k
b2N1bWVudExvYWRlcigpKTsKKyAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCku
Y2hlY2tpbmdFdmVudCwgZG9jdW1lbnRMb2FkZXIpOwogICAgIH0KICAgICAKICAgICBBU1NFUlQo
IW1fbWFuaWZlc3RIYW5kbGUpOwpAQCAtNDQ5LDcgKzQ0Myw3IEBAIHZvaWQgQXBwbGljYXRpb25D
YWNoZUdyb3VwOjp1cGRhdGUoRnJhbWUqIGZyYW1lLCBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlT3B0
aW9uIHVwCiAgICAgbV9tYW5pZmVzdEhhbmRsZSA9IGNyZWF0ZVJlc291cmNlSGFuZGxlKG1fbWFu
aWZlc3RVUkwsIG1fbmV3ZXN0Q2FjaGUgPyBtX25ld2VzdENhY2hlLT5tYW5pZmVzdFJlc291cmNl
KCkgOiAwKTsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFib3J0KEZyYW1lKiBm
cmFtZSkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjphYm9ydChGcmFtZSYgZnJhbWUpCiB7
CiAgICAgaWYgKG1fdXBkYXRlU3RhdHVzID09IElkbGUpCiAgICAgICAgIHJldHVybjsKQEAgLTQ1
OCw3ICs0NTIsNyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6YWJvcnQoRnJhbWUqIGZy
YW1lKQogICAgIGlmIChtX2NvbXBsZXRpb25UeXBlICE9IE5vbmUpCiAgICAgICAgIHJldHVybjsK
IAotICAgIGZyYW1lLT5kb2N1bWVudCgpLT5hZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNl
OjpBcHBDYWNoZSwgTWVzc2FnZUxldmVsOjpEZWJ1ZywgQVNDSUlMaXRlcmFsKCJBcHBsaWNhdGlv
biBDYWNoZSBkb3dubG9hZCBwcm9jZXNzIHdhcyBhYm9ydGVkLiIpKTsKKyAgICBmcmFtZS5kb2N1
bWVudCgpLT5hZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpBcHBDYWNoZSwgTWVzc2Fn
ZUxldmVsOjpEZWJ1ZywgQVNDSUlMaXRlcmFsKCJBcHBsaWNhdGlvbiBDYWNoZSBkb3dubG9hZCBw
cm9jZXNzIHdhcyBhYm9ydGVkLiIpKTsKICAgICBjYWNoZVVwZGF0ZUZhaWxlZCgpOwogfQogCkBA
IC01MDIsOCArNDk2LDcgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRpZFJlY2VpdmVS
ZXNwb25zZShSZXNvdXJjZUhhbmRsZSogaGFuZGxlLCBSZXNvdXJjZVIKICAgICBBU1NFUlQoaGFu
ZGxlID09IG1fY3VycmVudEhhbmRsZSk7CiAKICAgICBVUkwgdXJsKGhhbmRsZS0+Zmlyc3RSZXF1
ZXN0KCkudXJsKCkpOwotICAgIGlmICh1cmwuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkpCi0gICAg
ICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKKyAgICB1cmwucmVtb3ZlRnJhZ21l
bnRJZGVudGlmaWVyKCk7CiAgICAgCiAgICAgQVNTRVJUKCFtX2N1cnJlbnRSZXNvdXJjZSk7CiAg
ICAgQVNTRVJUKG1fcGVuZGluZ0VudHJpZXMuY29udGFpbnModXJsKSk7CkBAIC01OTMsNyArNTg2
LDcgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRpZEZpbmlzaExvYWRpbmcoUmVzb3Vy
Y2VIYW5kbGUqIGhhbmRsZSwgZG91YmxlIGZpbmkKICAgICAKICAgICBBU1NFUlQobV9jYWNoZUJl
aW5nVXBkYXRlZCk7CiAKLSAgICBtX2NhY2hlQmVpbmdVcGRhdGVkLT5hZGRSZXNvdXJjZShXVEZN
b3ZlKG1fY3VycmVudFJlc291cmNlKSk7CisgICAgbV9jYWNoZUJlaW5nVXBkYXRlZC0+YWRkUmVz
b3VyY2UobV9jdXJyZW50UmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSk7CiAgICAgbV9jdXJyZW50
SGFuZGxlID0gbnVsbHB0cjsKIAogICAgIC8vIFdoaWxlIGRvd25sb2FkaW5nIGNoZWNrIHRvIHNl
ZSBpZiB3ZSBoYXZlIGV4Y2VlZGVkIHRoZSBhdmFpbGFibGUgcXVvdGEuCkBAIC02MjYsOCArNjE5
LDcgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRpZEZhaWwoUmVzb3VyY2VIYW5kbGUq
IGhhbmRsZSwgY29uc3QgUmVzb3VyY2VFcnJvciYKIAogICAgIHVuc2lnbmVkIHR5cGUgPSBtX2N1
cnJlbnRSZXNvdXJjZSA/IG1fY3VycmVudFJlc291cmNlLT50eXBlKCkgOiBtX3BlbmRpbmdFbnRy
aWVzLmdldChoYW5kbGUtPmZpcnN0UmVxdWVzdCgpLnVybCgpKTsKICAgICBVUkwgdXJsKGhhbmRs
ZS0+Zmlyc3RSZXF1ZXN0KCkudXJsKCkpOwotICAgIGlmICh1cmwuaGFzRnJhZ21lbnRJZGVudGlm
aWVyKCkpCi0gICAgICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKKyAgICB1cmwu
cmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CiAKICAgICBBU1NFUlQoIW1fY3VycmVudFJlc291
cmNlIHx8ICFtX3BlbmRpbmdFbnRyaWVzLmNvbnRhaW5zKHVybCkpOwogICAgIG1fY3VycmVudFJl
c291cmNlID0gbnVsbHB0cjsKQEAgLTczNCw3ICs3MjYsNyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2Fj
aGVHcm91cDo6ZGlkRmluaXNoTG9hZGluZ01hbmlmZXN0KCkKICAgICAvLyBXZSBoYXZlIHRoZSBt
YW5pZmVzdCwgbm93IGRvd25sb2FkIHRoZSByZXNvdXJjZXMuCiAgICAgc2V0VXBkYXRlU3RhdHVz
KERvd25sb2FkaW5nKTsKICAgICAKLSAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2Fj
aGVIb3N0OjpET1dOTE9BRElOR19FVkVOVCwgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsK
KyAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5kb3dubG9hZGluZ0V2ZW50LCBtX2Fz
c29jaWF0ZWREb2N1bWVudExvYWRlcnMpOwogCiAgICAgQVNTRVJUKG1fcGVuZGluZ0VudHJpZXMu
aXNFbXB0eSgpKTsKIApAQCAtODAyLDggKzc5NCw4IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdy
b3VwOjptYW5pZmVzdE5vdEZvdW5kKCkKIHsKICAgICBtYWtlT2Jzb2xldGUoKTsKIAotICAgIHBv
c3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6Ok9CU09MRVRFX0VWRU5ULCBtX2Fz
c29jaWF0ZWREb2N1bWVudExvYWRlcnMpOwotICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRp
b25DYWNoZUhvc3Q6OkVSUk9SX0VWRU5ULCBtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMp
OworICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLm9ic29sZXRlRXZlbnQsIG1fYXNz
b2NpYXRlZERvY3VtZW50TG9hZGVycyk7CisgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVz
KCkuZXJyb3JFdmVudCwgbV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzKTsKIAogICAgIHN0
b3BMb2FkaW5nKCk7CiAKQEAgLTgxMywxNiArODA1LDE2IEBAIHZvaWQgQXBwbGljYXRpb25DYWNo
ZUdyb3VwOjptYW5pZmVzdE5vdEZvdW5kKCkKICAgICB3aGlsZSAoIW1fcGVuZGluZ01hc3RlclJl
c291cmNlTG9hZGVycy5pc0VtcHR5KCkpIHsKICAgICAgICAgSGFzaFNldDxEb2N1bWVudExvYWRl
cio+OjppdGVyYXRvciBpdCA9IG1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5iZWdpbigp
OwogICAgICAgICAKLSAgICAgICAgQVNTRVJUKCgqaXQpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgp
LT5jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKSA9PSB0aGlzKTsKLSAgICAgICAgQVNT
RVJUKCEoKml0KS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+YXBwbGljYXRpb25DYWNoZSgpKTsK
LSAgICAgICAgKCppdCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPnNldENhbmRpZGF0ZUFwcGxp
Y2F0aW9uQ2FjaGVHcm91cChudWxscHRyKTsKKyAgICAgICAgQVNTRVJUKCgqaXQpLT5hcHBsaWNh
dGlvbkNhY2hlSG9zdCgpLmNhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCgpID09IHRoaXMp
OworICAgICAgICBBU1NFUlQoISgqaXQpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLmFwcGxpY2F0
aW9uQ2FjaGUoKSk7CisgICAgICAgICgqaXQpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLnNldENh
bmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cChudWxscHRyKTsKICAgICAgICAgbV9wZW5kaW5n
TWFzdGVyUmVzb3VyY2VMb2FkZXJzLnJlbW92ZShpdCk7CiAgICAgfQogCiAgICAgbV9kb3dubG9h
ZGluZ1BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnNDb3VudCA9IDA7CiAgICAgc2V0VXBkYXRl
U3RhdHVzKElkbGUpOyAgICAKICAgICBtX2ZyYW1lID0gbnVsbHB0cjsKLSAgICAKKwogICAgIGlm
IChtX2NhY2hlcy5pc0VtcHR5KCkpIHsKICAgICAgICAgQVNTRVJUKG1fYXNzb2NpYXRlZERvY3Vt
ZW50TG9hZGVycy5pc0VtcHR5KCkpOwogICAgICAgICBBU1NFUlQoIW1fY2FjaGVCZWluZ1VwZGF0
ZWQpOwpAQCAtODQ5LDEzICs4NDEsMTMgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNo
ZWNrSWZMb2FkSXNDb21wbGV0ZSgpCiAKICAgICAgICAgLy8gVGhlIHN0b3JhZ2UgY291bGQgaGF2
ZSBiZWVuIG1hbnVhbGx5IGVtcHRpZWQgYnkgdGhlIHVzZXIuCiAgICAgICAgIGlmICghbV9zdG9y
YWdlSUQpCi0gICAgICAgICAgICBtX3N0b3JhZ2UtPnN0b3JlTmV3ZXN0Q2FjaGUodGhpcyk7Cisg
ICAgICAgICAgICBtX3N0b3JhZ2UtPnN0b3JlTmV3ZXN0Q2FjaGUoKnRoaXMpOwogCi0gICAgICAg
IHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6Ok5PVVBEQVRFX0VWRU5ULCBt
X2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOworICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2
ZW50TmFtZXMoKS5ub3VwZGF0ZUV2ZW50LCBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOwog
ICAgICAgICBicmVhazsKICAgICBjYXNlIEZhaWx1cmU6CiAgICAgICAgIEFTU0VSVCghbV9jYWNo
ZUJlaW5nVXBkYXRlZCk7Ci0gICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNo
ZUhvc3Q6OkVSUk9SX0VWRU5ULCBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOworICAgICAg
ICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBtX2Fzc29jaWF0ZWRE
b2N1bWVudExvYWRlcnMpOwogICAgICAgICBpZiAobV9jYWNoZXMuaXNFbXB0eSgpKSB7CiAgICAg
ICAgICAgICBBU1NFUlQobV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzLmlzRW1wdHkoKSk7CiAg
ICAgICAgICAgICBkZWxldGUgdGhpczsKQEAgLTg2Nyw3ICs4NTksNyBAQCB2b2lkIEFwcGxpY2F0
aW9uQ2FjaGVHcm91cDo6Y2hlY2tJZkxvYWRJc0NvbXBsZXRlKCkKIAogICAgICAgICBBU1NFUlQo
bV9jYWNoZUJlaW5nVXBkYXRlZCk7CiAgICAgICAgIGlmIChtX21hbmlmZXN0UmVzb3VyY2UpCi0g
ICAgICAgICAgICBtX2NhY2hlQmVpbmdVcGRhdGVkLT5zZXRNYW5pZmVzdFJlc291cmNlKFdURk1v
dmUobV9tYW5pZmVzdFJlc291cmNlKSk7CisgICAgICAgICAgICBtX2NhY2hlQmVpbmdVcGRhdGVk
LT5zZXRNYW5pZmVzdFJlc291cmNlKG1fbWFuaWZlc3RSZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgp
KTsKICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAvLyBXZSBjYW4gZ2V0IGhlcmUgYXMgYSBy
ZXN1bHQgb2YgcmV0cnlpbmcgdGhlIENvbXBsZXRlIHN0ZXAsIGZvbGxvd2luZwogICAgICAgICAg
ICAgLy8gYSBmYWlsdXJlIG9mIHRoZSBjYWNoZSBzdG9yYWdlIHRvIHNhdmUgdGhlIG5ld2VzdCBj
YWNoZSBkdWUgdG8gaGl0dGluZwpAQCAtODg3LDE4ICs4NzksMTggQEAgdm9pZCBBcHBsaWNhdGlv
bkNhY2hlR3JvdXA6OmNoZWNrSWZMb2FkSXNDb21wbGV0ZSgpCiAgICAgICAgICAgICBkaWRSZWFj
aE9yaWdpblF1b3RhKHRvdGFsU3BhY2VOZWVkZWQpOwogCiAgICAgICAgIEFwcGxpY2F0aW9uQ2Fj
aGVTdG9yYWdlOjpGYWlsdXJlUmVhc29uIGZhaWx1cmVSZWFzb247Ci0gICAgICAgIHNldE5ld2Vz
dENhY2hlKFdURk1vdmUobV9jYWNoZUJlaW5nVXBkYXRlZCkpOwotICAgICAgICBpZiAobV9zdG9y
YWdlLT5zdG9yZU5ld2VzdENhY2hlKHRoaXMsIG9sZE5ld2VzdENhY2hlLmdldCgpLCBmYWlsdXJl
UmVhc29uKSkgeworICAgICAgICBzZXROZXdlc3RDYWNoZShtX2NhY2hlQmVpbmdVcGRhdGVkLnJl
bGVhc2VOb25OdWxsKCkpOworICAgICAgICBpZiAobV9zdG9yYWdlLT5zdG9yZU5ld2VzdENhY2hl
KCp0aGlzLCBvbGROZXdlc3RDYWNoZS5nZXQoKSwgZmFpbHVyZVJlYXNvbikpIHsKICAgICAgICAg
ICAgIC8vIE5ldyBjYWNoZSBzdG9yZWQsIG5vdyByZW1vdmUgdGhlIG9sZCBjYWNoZS4KICAgICAg
ICAgICAgIGlmIChvbGROZXdlc3RDYWNoZSkKICAgICAgICAgICAgICAgICBtX3N0b3JhZ2UtPnJl
bW92ZShvbGROZXdlc3RDYWNoZS5nZXQoKSk7CiAKICAgICAgICAgICAgIC8vIEZpcmUgdGhlIGZp
bmFsIHByb2dyZXNzIGV2ZW50LgogICAgICAgICAgICAgQVNTRVJUKG1fcHJvZ3Jlc3NEb25lID09
IG1fcHJvZ3Jlc3NUb3RhbCk7Ci0gICAgICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0
aW9uQ2FjaGVIb3N0OjpQUk9HUkVTU19FVkVOVCwgbV9wcm9ncmVzc1RvdGFsLCBtX3Byb2dyZXNz
RG9uZSwgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsKKyAgICAgICAgICAgIHBvc3RMaXN0
ZW5lclRhc2soZXZlbnROYW1lcygpLnByb2dyZXNzRXZlbnQsIG1fcHJvZ3Jlc3NUb3RhbCwgbV9w
cm9ncmVzc0RvbmUsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CiAKICAgICAgICAgICAg
IC8vIEZpcmUgdGhlIHN1Y2Nlc3MgZXZlbnQuCi0gICAgICAgICAgICBwb3N0TGlzdGVuZXJUYXNr
KGlzVXBncmFkZUF0dGVtcHQgPyBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6VVBEQVRFUkVBRFlfRVZF
TlQgOiBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q0FDSEVEX0VWRU5ULCBtX2Fzc29jaWF0ZWREb2N1
bWVudExvYWRlcnMpOworICAgICAgICAgICAgcG9zdExpc3RlbmVyVGFzayhpc1VwZ3JhZGVBdHRl
bXB0ID8gZXZlbnROYW1lcygpLnVwZGF0ZXJlYWR5RXZlbnQgOiBldmVudE5hbWVzKCkuY2FjaGVk
RXZlbnQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CiAgICAgICAgICAgICAvLyBJdCBp
cyBjbGVhciB0aGF0IHRoZSBvcmlnaW4gcXVvdGEgd2FzIG5vdCByZWFjaGVkLCBzbyBjbGVhciB0
aGUgZmxhZyBpZiBpdCB3YXMgc2V0LgogICAgICAgICAgICAgbV9vcmlnaW5RdW90YUV4Y2VlZGVk
UHJldmlvdXNseSA9IGZhbHNlOwogICAgICAgICB9IGVsc2UgewpAQCAtOTE5LDEwICs5MTEsOCBA
QCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6Y2hlY2tJZkxvYWRJc0NvbXBsZXRlKCkKIAog
ICAgICAgICAgICAgICAgIC8vIFNhdmUgYSByZWZlcmVuY2UgdG8gdGhlIG5ldyBjYWNoZS4KICAg
ICAgICAgICAgICAgICBtX2NhY2hlQmVpbmdVcGRhdGVkID0gV1RGTW92ZShtX25ld2VzdENhY2hl
KTsKLSAgICAgICAgICAgICAgICBpZiAob2xkTmV3ZXN0Q2FjaGUpIHsKLSAgICAgICAgICAgICAg
ICAgICAgLy8gUmVpbnN0YXRlIHRoZSBvbGROZXdlc3RDYWNoZS4KLSAgICAgICAgICAgICAgICAg
ICAgc2V0TmV3ZXN0Q2FjaGUoV1RGTW92ZShvbGROZXdlc3RDYWNoZSkpOwotICAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgICAgICBpZiAob2xkTmV3ZXN0Q2FjaGUpCisgICAgICAgICAgICAg
ICAgICAgIHNldE5ld2VzdENhY2hlKG9sZE5ld2VzdENhY2hlLnJlbGVhc2VOb25OdWxsKCkpOwog
ICAgICAgICAgICAgICAgIHNjaGVkdWxlUmVhY2hlZE1heEFwcENhY2hlU2l6ZUNhbGxiYWNrKCk7
CiAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgfQpAQCAtOTMwLDcgKzkyMCw3
IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpjaGVja0lmTG9hZElzQ29tcGxldGUoKQog
ICAgICAgICAgICAgLy8gUnVuIHRoZSAiY2FjaGUgZmFpbHVyZSBzdGVwcyIKICAgICAgICAgICAg
IC8vIEZpcmUgdGhlIGVycm9yIGV2ZW50cyB0byBhbGwgcGVuZGluZyBtYXN0ZXIgZW50cmllcywg
YXMgd2VsbCBhbnkgb3RoZXIgY2FjaGUgaG9zdHMKICAgICAgICAgICAgIC8vIGN1cnJlbnRseSBh
c3NvY2lhdGVkIHdpdGggYSBjYWNoZSBpbiB0aGlzIGdyb3VwLgotICAgICAgICAgICAgcG9zdExp
c3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RVJST1JfRVZFTlQsIG1fYXNzb2NpYXRl
ZERvY3VtZW50TG9hZGVycyk7CisgICAgICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFt
ZXMoKS5lcnJvckV2ZW50LCBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOwogICAgICAgICAg
ICAgLy8gRGlzYXNzb2NpYXRlIHRoZSBwZW5kaW5nIG1hc3RlciBlbnRyaWVzIGZyb20gdGhlIGZh
aWxlZCBuZXcgY2FjaGUuIE5vdGUgdGhhdAogICAgICAgICAgICAgLy8gYWxsIG90aGVyIGxvYWRl
cnMgaW4gdGhlIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyBhcmUgc3RpbGwgYXNzb2NpYXRl
ZCB3aXRoCiAgICAgICAgICAgICAvLyBzb21lIG90aGVyIGNhY2hlIGluIHRoaXMgZ3JvdXAuIFRo
ZXkgYXJlIG5vdCBhc3NvY2lhdGVkIHdpdGggdGhlIGZhaWxlZCBuZXcgY2FjaGUuCkBAIC05Mzks
MTIgKzkyOSwxMiBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6Y2hlY2tJZkxvYWRJc0Nv
bXBsZXRlKCkKICAgICAgICAgICAgIFZlY3RvcjxEb2N1bWVudExvYWRlcio+IGxvYWRlcnM7CiAg
ICAgICAgICAgICBjb3B5VG9WZWN0b3IobV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLCBs
b2FkZXJzKTsKICAgICAgICAgICAgIGZvciAoYXV0byYgbG9hZGVyIDogbG9hZGVycykKLSAgICAg
ICAgICAgICAgICBkaXNhc3NvY2lhdGVEb2N1bWVudExvYWRlcihsb2FkZXIpOyAvLyBUaGlzIGNh
biBkZWxldGUgdGhpcyBncm91cC4KKyAgICAgICAgICAgICAgICBkaXNhc3NvY2lhdGVEb2N1bWVu
dExvYWRlcigqbG9hZGVyKTsgLy8gVGhpcyBjYW4gZGVsZXRlIHRoaXMgZ3JvdXAuCiAKICAgICAg
ICAgICAgIC8vIFJlaW5zdGF0ZSB0aGUgb2xkTmV3ZXN0Q2FjaGUsIGlmIHRoZXJlIHdhcyBvbmUu
CiAgICAgICAgICAgICBpZiAob2xkTmV3ZXN0Q2FjaGUpIHsKICAgICAgICAgICAgICAgICAvLyBU
aGlzIHdpbGwgZGlzY2FyZCB0aGUgZmFpbGVkIG5ldyBjYWNoZS4KLSAgICAgICAgICAgICAgICBz
ZXROZXdlc3RDYWNoZShXVEZNb3ZlKG9sZE5ld2VzdENhY2hlKSk7CisgICAgICAgICAgICAgICAg
c2V0TmV3ZXN0Q2FjaGUob2xkTmV3ZXN0Q2FjaGUucmVsZWFzZU5vbk51bGwoKSk7CiAgICAgICAg
ICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgIC8vIFdlIG11c3QgaGF2ZSBiZWVuIGRlbGV0
ZWQgYnkgdGhlIGxhc3QgY2FsbCB0byBkaXNhc3NvY2lhdGVEb2N1bWVudExvYWRlcigpLgogICAg
ICAgICAgICAgICAgIHJldHVybjsKQEAgLTk3MywxNCArOTYzLDEzIEBAIHZvaWQgQXBwbGljYXRp
b25DYWNoZUdyb3VwOjpzdGFydExvYWRpbmdFbnRyeSgpCiAgICAgICAgIHJldHVybjsKICAgICB9
CiAgICAgCi0gICAgRW50cnlNYXA6OmNvbnN0X2l0ZXJhdG9yIGl0ID0gbV9wZW5kaW5nRW50cmll
cy5iZWdpbigpOworICAgIGF1dG8gZmlyc3RQZW5kaW5nRW50cnlVUkwgPSBtX3BlbmRpbmdFbnRy
aWVzLmJlZ2luKCktPmtleTsKIAotICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNo
ZUhvc3Q6OlBST0dSRVNTX0VWRU5ULCBtX3Byb2dyZXNzVG90YWwsIG1fcHJvZ3Jlc3NEb25lLCBt
X2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOworICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnRO
YW1lcygpLnByb2dyZXNzRXZlbnQsIG1fcHJvZ3Jlc3NUb3RhbCwgbV9wcm9ncmVzc0RvbmUsIG1f
YXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CiAgICAgbV9wcm9ncmVzc0RvbmUrKzsKIAogICAg
IEFTU0VSVCghbV9jdXJyZW50SGFuZGxlKTsKLSAgICAKLSAgICBtX2N1cnJlbnRIYW5kbGUgPSBj
cmVhdGVSZXNvdXJjZUhhbmRsZShVUkwoUGFyc2VkVVJMU3RyaW5nLCBpdC0+a2V5KSwgbV9uZXdl
c3RDYWNoZSA/IG1fbmV3ZXN0Q2FjaGUtPnJlc291cmNlRm9yVVJMKGl0LT5rZXkpIDogMCk7Cisg
ICAgbV9jdXJyZW50SGFuZGxlID0gY3JlYXRlUmVzb3VyY2VIYW5kbGUoVVJMKFBhcnNlZFVSTFN0
cmluZywgZmlyc3RQZW5kaW5nRW50cnlVUkwpLCBtX25ld2VzdENhY2hlID8gbV9uZXdlc3RDYWNo
ZS0+cmVzb3VyY2VGb3JVUkwoZmlyc3RQZW5kaW5nRW50cnlVUkwpIDogMCk7CiB9CiAKIHZvaWQg
QXBwbGljYXRpb25DYWNoZUdyb3VwOjpkZWxpdmVyRGVsYXllZE1haW5SZXNvdXJjZXMoKQpAQCAt
OTg4LDE5ICs5NzcsMTUgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRlbGl2ZXJEZWxh
eWVkTWFpblJlc291cmNlcygpCiAgICAgLy8gTmVlZCB0byBjb3B5IGxvYWRlcnMsIGJlY2F1c2Ug
dGhlIGNhY2hlIGdyb3VwIG1heSBiZSBkZXN0cm95ZWQgYXQgdGhlIGVuZCBvZiBpdGVyYXRpb24u
CiAgICAgVmVjdG9yPERvY3VtZW50TG9hZGVyKj4gbG9hZGVyczsKICAgICBjb3B5VG9WZWN0b3Io
bV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLCBsb2FkZXJzKTsKLSAgICBzaXplX3QgY291
bnQgPSBsb2FkZXJzLnNpemUoKTsKLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSAhPSBjb3VudDsg
KytpKSB7Ci0gICAgICAgIERvY3VtZW50TG9hZGVyKiBsb2FkZXIgPSBsb2FkZXJzW2ldOworICAg
IGZvciAoYXV0byogbG9hZGVyIDogbG9hZGVycykgewogICAgICAgICBpZiAobG9hZGVyLT5pc0xv
YWRpbmdNYWluUmVzb3VyY2UoKSkKICAgICAgICAgICAgIGNvbnRpbnVlOwotCi0gICAgICAgIGNv
bnN0IFJlc291cmNlRXJyb3ImIGVycm9yID0gbG9hZGVyLT5tYWluRG9jdW1lbnRFcnJvcigpOwot
ICAgICAgICBpZiAoZXJyb3IuaXNOdWxsKCkpCi0gICAgICAgICAgICBmaW5pc2hlZExvYWRpbmdN
YWluUmVzb3VyY2UobG9hZGVyKTsKKyAgICAgICAgaWYgKGxvYWRlci0+bWFpbkRvY3VtZW50RXJy
b3IoKS5pc051bGwoKSkKKyAgICAgICAgICAgIGZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZSgq
bG9hZGVyKTsKICAgICAgICAgZWxzZQotICAgICAgICAgICAgZmFpbGVkTG9hZGluZ01haW5SZXNv
dXJjZShsb2FkZXIpOworICAgICAgICAgICAgZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZSgqbG9h
ZGVyKTsKICAgICB9Ci0gICAgaWYgKCFjb3VudCkKKyAgICBpZiAobG9hZGVycy5pc0VtcHR5KCkp
CiAgICAgICAgIGNoZWNrSWZMb2FkSXNDb21wbGV0ZSgpOwogfQogCkBAIC0xMDA4LDEzICs5OTMs
MTIgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFkZEVudHJ5KGNvbnN0IFN0cmluZyYg
dXJsLCB1bnNpZ25lZCB0eXBlKQogewogICAgIEFTU0VSVChtX2NhY2hlQmVpbmdVcGRhdGVkKTsK
ICAgICBBU1NFUlQoIVVSTChQYXJzZWRVUkxTdHJpbmcsIHVybCkuaGFzRnJhZ21lbnRJZGVudGlm
aWVyKCkpOwotICAgIAorCiAgICAgLy8gRG9uJ3QgYWRkIHRoZSBVUkwgaWYgd2UgYWxyZWFkeSBo
YXZlIGFuIG1hc3RlciByZXNvdXJjZSBpbiB0aGUgY2FjaGUKICAgICAvLyAoaS5lLiwgdGhlIG1h
aW4gcmVzb3VyY2UgZmluaXNoZWQgbG9hZGluZyBiZWZvcmUgdGhlIG1hbmlmZXN0KS4KLSAgICBp
ZiAoQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiByZXNvdXJjZSA9IG1fY2FjaGVCZWluZ1VwZGF0
ZWQtPnJlc291cmNlRm9yVVJMKHVybCkpIHsKKyAgICBpZiAoYXV0byogcmVzb3VyY2UgPSBtX2Nh
Y2hlQmVpbmdVcGRhdGVkLT5yZXNvdXJjZUZvclVSTCh1cmwpKSB7CiAgICAgICAgIEFTU0VSVChy
ZXNvdXJjZS0+dHlwZSgpICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIpOwogICAg
ICAgICBBU1NFUlQoIW1fZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCktPmlzTG9hZGlu
Z01haW5SZXNvdXJjZSgpKTsKLSAgICAKICAgICAgICAgcmVzb3VyY2UtPmFkZFR5cGUodHlwZSk7
CiAgICAgICAgIHJldHVybjsKICAgICB9CkBAIC0xMDI1LDExICsxMDA5LDggQEAgdm9pZCBBcHBs
aWNhdGlvbkNhY2hlR3JvdXA6OmFkZEVudHJ5KGNvbnN0IFN0cmluZyYgdXJsLCB1bnNpZ25lZCB0
eXBlKQogICAgICAgICBtX21hbmlmZXN0UmVzb3VyY2UtPmFkZFR5cGUodHlwZSk7CiAgICAgICAg
IHJldHVybjsKICAgICB9Ci0gICAgCi0gICAgRW50cnlNYXA6OkFkZFJlc3VsdCByZXN1bHQgPSBt
X3BlbmRpbmdFbnRyaWVzLmFkZCh1cmwsIHR5cGUpOwotICAgIAotICAgIGlmICghcmVzdWx0Lmlz
TmV3RW50cnkpCi0gICAgICAgIHJlc3VsdC5pdGVyYXRvci0+dmFsdWUgfD0gdHlwZTsKKworICAg
IG1fcGVuZGluZ0VudHJpZXMuYWRkKHVybCwgdHlwZSkuaXRlcmF0b3ItPnZhbHVlIHw9IHR5cGU7
CiB9CiAKIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjphc3NvY2lhdGVEb2N1bWVudExvYWRl
cldpdGhDYWNoZShEb2N1bWVudExvYWRlciogbG9hZGVyLCBBcHBsaWNhdGlvbkNhY2hlKiBjYWNo
ZSkKQEAgLTEwNDAsNjMgKzEwMjEsNjMgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFz
c29jaWF0ZURvY3VtZW50TG9hZGVyV2l0aENhY2hlKERvY3VtZW50TG9hZGVyKiBsb2EKIAogICAg
IEFTU0VSVCghbV9pc09ic29sZXRlKTsKIAotICAgIGxvYWRlci0+YXBwbGljYXRpb25DYWNoZUhv
c3QoKS0+c2V0QXBwbGljYXRpb25DYWNoZShjYWNoZSk7CisgICAgbG9hZGVyLT5hcHBsaWNhdGlv
bkNhY2hlSG9zdCgpLnNldEFwcGxpY2F0aW9uQ2FjaGUoY2FjaGUpOwogCiAgICAgQVNTRVJUKCFt
X2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMuY29udGFpbnMobG9hZGVyKSk7CiAgICAgbV9hc3Nv
Y2lhdGVkRG9jdW1lbnRMb2FkZXJzLmFkZChsb2FkZXIpOwogfQogCi1jbGFzcyBDaHJvbWVDbGll
bnRDYWxsYmFja1RpbWVyOiBwdWJsaWMgVGltZXJCYXNlIHsKK2NsYXNzIENocm9tZUNsaWVudENh
bGxiYWNrVGltZXIgZmluYWwgOiBwdWJsaWMgVGltZXJCYXNlIHsKIHB1YmxpYzoKLSAgICBDaHJv
bWVDbGllbnRDYWxsYmFja1RpbWVyKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogY2FjaGVHcm91cCkK
LSAgICAgICAgOiBtX2NhY2hlR3JvdXAoY2FjaGVHcm91cCkKKyAgICBDaHJvbWVDbGllbnRDYWxs
YmFja1RpbWVyKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCYgZ3JvdXApCisgICAgICAgIDogbV9ncm91
cChncm91cCkKICAgICB7CiAgICAgfQogCiBwcml2YXRlOgotICAgIHZvaWQgZmlyZWQoKSBvdmVy
cmlkZQorICAgIHZvaWQgZmlyZWQoKSBmaW5hbAogICAgIHsKLSAgICAgICAgbV9jYWNoZUdyb3Vw
LT5kaWRSZWFjaE1heEFwcENhY2hlU2l6ZSgpOworICAgICAgICBtX2dyb3VwLmRpZFJlYWNoTWF4
QXBwQ2FjaGVTaXplKCk7CiAgICAgICAgIGRlbGV0ZSB0aGlzOwogICAgIH0KLSAgICAvLyBOb3Rl
IHRoYXQgdGhlcmUgaXMgbm8gbmVlZCB0byB1c2UgYSBSZWZQdHIgaGVyZS4gVGhlIEFwcGxpY2F0
aW9uQ2FjaGVHcm91cCBpbnN0YW5jZSBpcyBndWFyYW50ZWVkCi0gICAgLy8gdG8gYmUgYWxpdmUg
d2hlbiB0aGUgdGltZXIgZmlyZXMgc2luY2UgaW52b2tpbmcgdGhlIENocm9tZUNsaWVudCBjYWxs
YmFjayBpcyBwYXJ0IG9mIGl0cyBub3JtYWwKKworICAgIC8vIE5vdGUgdGhhdCB0aGVyZSBpcyBu
byBuZWVkIHRvIHVzZSBhIFJlZiBoZXJlLiBUaGUgQXBwbGljYXRpb25DYWNoZUdyb3VwIGluc3Rh
bmNlIGlzIGd1YXJhbnRlZWQKKyAgICAvLyB0byBiZSBhbGl2ZSB3aGVuIHRoZSB0aW1lciBmaXJl
cyBzaW5jZSBpbnZva2luZyB0aGUgY2FsbGJhY2sgaXMgcGFydCBvZiBpdHMgbm9ybWFsCiAgICAg
Ly8gdXBkYXRlIG1hY2hpbmVyeSBhbmQgbm90aGluZyBjYW4geWV0IGNhdXNlIGl0IHRvIGdldCBk
ZWxldGVkLgotICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogbV9jYWNoZUdyb3VwOworICAgIEFw
cGxpY2F0aW9uQ2FjaGVHcm91cCYgbV9ncm91cDsKIH07CiAKIHZvaWQgQXBwbGljYXRpb25DYWNo
ZUdyb3VwOjpzY2hlZHVsZVJlYWNoZWRNYXhBcHBDYWNoZVNpemVDYWxsYmFjaygpCiB7CiAgICAg
QVNTRVJUKGlzTWFpblRocmVhZCgpKTsKLSAgICBDaHJvbWVDbGllbnRDYWxsYmFja1RpbWVyKiB0
aW1lciA9IG5ldyBDaHJvbWVDbGllbnRDYWxsYmFja1RpbWVyKHRoaXMpOworICAgIGF1dG8qIHRp
bWVyID0gbmV3IENocm9tZUNsaWVudENhbGxiYWNrVGltZXIoKnRoaXMpOwogICAgIHRpbWVyLT5z
dGFydE9uZVNob3QoMCk7CiAgICAgLy8gVGhlIHRpbWVyIHdpbGwgZGVsZXRlIGl0c2VsZiBvbmNl
IGl0IGZpcmVzLgogfQogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6cG9zdExpc3RlbmVy
VGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RXZlbnRJRCBldmVudElELCBpbnQgcHJvZ3Jlc3NU
b3RhbCwgaW50IHByb2dyZXNzRG9uZSwgY29uc3QgSGFzaFNldDxEb2N1bWVudExvYWRlcio+JiBs
b2FkZXJTZXQpCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6cG9zdExpc3RlbmVyVGFzayhj
b25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgaW50IHByb2dyZXNzVG90YWwsIGludCBwcm9n
cmVzc0RvbmUsIGNvbnN0IEhhc2hTZXQ8RG9jdW1lbnRMb2FkZXIqPiYgbG9hZGVyU2V0KQogewog
ICAgIGZvciAoYXV0byYgbG9hZGVyIDogbG9hZGVyU2V0KQotICAgICAgICBwb3N0TGlzdGVuZXJU
YXNrKGV2ZW50SUQsIHByb2dyZXNzVG90YWwsIHByb2dyZXNzRG9uZSwgbG9hZGVyKTsKKyAgICAg
ICAgcG9zdExpc3RlbmVyVGFzayhldmVudFR5cGUsIHByb2dyZXNzVG90YWwsIHByb2dyZXNzRG9u
ZSwgKmxvYWRlcik7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpwb3N0TGlzdGVu
ZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFdmVudElEIGV2ZW50SUQsIGludCBwcm9ncmVz
c1RvdGFsLCBpbnQgcHJvZ3Jlc3NEb25lLCBEb2N1bWVudExvYWRlciogbG9hZGVyKQordm9pZCBB
cHBsaWNhdGlvbkNhY2hlR3JvdXA6OnBvc3RMaXN0ZW5lclRhc2soY29uc3QgQXRvbWljU3RyaW5n
JiBldmVudFR5cGUsIGludCBwcm9ncmVzc1RvdGFsLCBpbnQgcHJvZ3Jlc3NEb25lLCBEb2N1bWVu
dExvYWRlciYgbG9hZGVyKQogewotICAgIEZyYW1lKiBmcmFtZSA9IGxvYWRlci0+ZnJhbWUoKTsK
KyAgICBhdXRvKiBmcmFtZSA9IGxvYWRlci5mcmFtZSgpOwogICAgIGlmICghZnJhbWUpCiAgICAg
ICAgIHJldHVybjsKICAgICAKLSAgICBBU1NFUlQoZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9h
ZGVyKCkgPT0gbG9hZGVyKTsKKyAgICBBU1NFUlQoZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9h
ZGVyKCkgPT0gJmxvYWRlcik7CiAKLSAgICBSZWZQdHI8RG9jdW1lbnRMb2FkZXI+IGxvYWRlclBy
b3RlY3Rvcihsb2FkZXIpOwotICAgIGZyYW1lLT5kb2N1bWVudCgpLT5wb3N0VGFzayhbbG9hZGVy
UHJvdGVjdG9yLCBldmVudElELCBwcm9ncmVzc1RvdGFsLCBwcm9ncmVzc0RvbmVdIChTY3JpcHRF
eGVjdXRpb25Db250ZXh0JiBjb250ZXh0KSB7CisgICAgUmVmUHRyPERvY3VtZW50TG9hZGVyPiBw
cm90ZWN0ZWRMb2FkZXIoJmxvYWRlcik7CisgICAgZnJhbWUtPmRvY3VtZW50KCktPnBvc3RUYXNr
KFtwcm90ZWN0ZWRMb2FkZXIsICZldmVudFR5cGUsIHByb2dyZXNzVG90YWwsIHByb2dyZXNzRG9u
ZV0gKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQpIHsKICAgICAgICAgQVNTRVJUX1VO
VVNFRChjb250ZXh0LCBjb250ZXh0LmlzRG9jdW1lbnQoKSk7Ci0gICAgICAgIEZyYW1lKiBmcmFt
ZSA9IGxvYWRlclByb3RlY3Rvci0+ZnJhbWUoKTsKKyAgICAgICAgYXV0byogZnJhbWUgPSBwcm90
ZWN0ZWRMb2FkZXItPmZyYW1lKCk7CiAgICAgICAgIGlmICghZnJhbWUpCiAgICAgICAgICAgICBy
ZXR1cm47CiAKLSAgICAgICAgQVNTRVJUKGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigp
ID09IGxvYWRlclByb3RlY3Rvcik7Ci0KLSAgICAgICAgbG9hZGVyUHJvdGVjdG9yLT5hcHBsaWNh
dGlvbkNhY2hlSG9zdCgpLT5ub3RpZnlET01BcHBsaWNhdGlvbkNhY2hlKGV2ZW50SUQsIHByb2dy
ZXNzVG90YWwsIHByb2dyZXNzRG9uZSk7CisgICAgICAgIEFTU0VSVChmcmFtZS0+bG9hZGVyKCku
ZG9jdW1lbnRMb2FkZXIoKSA9PSBwcm90ZWN0ZWRMb2FkZXIpOworICAgICAgICBwcm90ZWN0ZWRM
b2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubm90aWZ5RE9NQXBwbGljYXRpb25DYWNoZShl
dmVudFR5cGUsIHByb2dyZXNzVG90YWwsIHByb2dyZXNzRG9uZSk7CiAgICAgfSk7CiB9CiAKQEAg
LTExMDgsOCArMTA4OSw3IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZXRVcGRhdGVT
dGF0dXMoVXBkYXRlU3RhdHVzIHN0YXR1cykKIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpj
bGVhclN0b3JhZ2VJRCgpCiB7CiAgICAgbV9zdG9yYWdlSUQgPSAwOwotICAgIAotICAgIGZvciAo
Y29uc3QgYXV0byYgY2FjaGUgOiBtX2NhY2hlcykKKyAgICBmb3IgKGF1dG8mIGNhY2hlIDogbV9j
YWNoZXMpCiAgICAgICAgIGNhY2hlLT5jbGVhclN0b3JhZ2VJRCgpOwogfQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmgK
aW5kZXggYjA2NDRjNDZjODY2OTFjYThkMDA5MzU1NzY4ZmI1ODkxNmRmNzliMS4uZmM4NTFkYTdj
ZmE4YzQzMzJmNjg1ZWEyOTEyMmUzN2Q0ZGI3YWFhMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuaApAQCAtMSw1ICsx
LDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDgsIDIwMDksIDIwMTAgQXBwbGUgSW5jLiBB
bGwgUmlnaHRzIFJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5j
LiBBbGwgUmlnaHRzIFJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBA
IC00OSw4ICs0OSw5IEBAIGVudW0gQXBwbGljYXRpb25DYWNoZVVwZGF0ZU9wdGlvbiB7CiAgICAg
QXBwbGljYXRpb25DYWNoZVVwZGF0ZVdpdGhvdXRCcm93c2luZ0NvbnRleHQKIH07CiAKLWNsYXNz
IEFwcGxpY2F0aW9uQ2FjaGVHcm91cCA6IFJlc291cmNlSGFuZGxlQ2xpZW50IHsKLSAgICBXVEZf
TUFLRV9OT05DT1BZQUJMRShBcHBsaWNhdGlvbkNhY2hlR3JvdXApOyBXVEZfTUFLRV9GQVNUX0FM
TE9DQVRFRDsKK2NsYXNzIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCBmaW5hbCA6IHByaXZhdGUgUmVz
b3VyY2VIYW5kbGVDbGllbnQgeworICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKEFwcGxpY2F0aW9u
Q2FjaGVHcm91cCk7CisgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CiBwdWJsaWM6CiAgICAg
ZXhwbGljaXQgQXBwbGljYXRpb25DYWNoZUdyb3VwKFJlZjxBcHBsaWNhdGlvbkNhY2hlU3RvcmFn
ZT4mJiwgY29uc3QgVVJMJiBtYW5pZmVzdFVSTCk7CiAgICAgdmlydHVhbCB+QXBwbGljYXRpb25D
YWNoZUdyb3VwKCk7CkBAIC02MCw4ICs2MSw4IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgQXBwbGlj
YXRpb25DYWNoZSogY2FjaGVGb3JNYWluUmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBE
b2N1bWVudExvYWRlciopOwogICAgIHN0YXRpYyBBcHBsaWNhdGlvbkNhY2hlKiBmYWxsYmFja0Nh
Y2hlRm9yTWFpblJlcXVlc3QoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgRG9jdW1lbnRMb2FkZXIq
KTsKICAgICAKLSAgICBzdGF0aWMgdm9pZCBzZWxlY3RDYWNoZShGcmFtZSosIGNvbnN0IFVSTCYg
bWFuaWZlc3RVUkwpOwotICAgIHN0YXRpYyB2b2lkIHNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0
VVJMKEZyYW1lKik7CisgICAgc3RhdGljIHZvaWQgc2VsZWN0Q2FjaGUoRnJhbWUmLCBjb25zdCBV
UkwmIG1hbmlmZXN0VVJMKTsKKyAgICBzdGF0aWMgdm9pZCBzZWxlY3RDYWNoZVdpdGhvdXRNYW5p
ZmVzdFVSTChGcmFtZSYpOwogCiAgICAgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UmIHN0b3JhZ2Uo
KSB7IHJldHVybiBtX3N0b3JhZ2U7IH0KICAgICBjb25zdCBVUkwmIG1hbmlmZXN0VVJMKCkgY29u
c3QgeyByZXR1cm4gbV9tYW5pZmVzdFVSTDsgfQpAQCAtNzMsMzEgKzc0LDMxIEBAIHB1YmxpYzoK
ICAgICB1bnNpZ25lZCBzdG9yYWdlSUQoKSBjb25zdCB7IHJldHVybiBtX3N0b3JhZ2VJRDsgfQog
ICAgIHZvaWQgY2xlYXJTdG9yYWdlSUQoKTsKICAgICAKLSAgICB2b2lkIHVwZGF0ZShGcmFtZSos
IEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVPcHRpb24pOyAvLyBGSVhNRTogRnJhbWUgc2hvdWxkIG5v
dCBiZSBuZWVkZWQgd2hlbiB1cGRhdGluZyB3aXRob3V0IGJyb3dzaW5nIGNvbnRleHQuCi0gICAg
dm9pZCBjYWNoZURlc3Ryb3llZChBcHBsaWNhdGlvbkNhY2hlKik7CisgICAgdm9pZCB1cGRhdGUo
RnJhbWUmLCBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlT3B0aW9uKTsgLy8gRklYTUU6IEZyYW1lIHNo
b3VsZCBub3QgYmUgbmVlZGVkIHdoZW4gdXBkYXRpbmcgd2l0aG91dCBicm93c2luZyBjb250ZXh0
LgorICAgIHZvaWQgY2FjaGVEZXN0cm95ZWQoQXBwbGljYXRpb25DYWNoZSYpOwogICAgIAotICAg
IHZvaWQgYWJvcnQoRnJhbWUqKTsKKyAgICB2b2lkIGFib3J0KEZyYW1lJik7CiAKLSAgICBib29s
IGNhY2hlSXNDb21wbGV0ZShBcHBsaWNhdGlvbkNhY2hlKiBjYWNoZSkgeyByZXR1cm4gbV9jYWNo
ZXMuY29udGFpbnMoY2FjaGUpOyB9CisgICAgYm9vbCBjYWNoZUlzQ29tcGxldGUoQXBwbGljYXRp
b25DYWNoZSYgY2FjaGUpIHsgcmV0dXJuIG1fY2FjaGVzLmNvbnRhaW5zKCZjYWNoZSk7IH0KIAot
ICAgIHZvaWQgc3RvcExvYWRpbmdJbkZyYW1lKEZyYW1lKik7CisgICAgdm9pZCBzdG9wTG9hZGlu
Z0luRnJhbWUoRnJhbWUmKTsKIAogICAgIEFwcGxpY2F0aW9uQ2FjaGUqIG5ld2VzdENhY2hlKCkg
Y29uc3QgeyByZXR1cm4gbV9uZXdlc3RDYWNoZS5nZXQoKTsgfQotICAgIHZvaWQgc2V0TmV3ZXN0
Q2FjaGUoUGFzc1JlZlB0cjxBcHBsaWNhdGlvbkNhY2hlPik7CisgICAgdm9pZCBzZXROZXdlc3RD
YWNoZShSZWY8QXBwbGljYXRpb25DYWNoZT4mJik7CiAKICAgICB2b2lkIG1ha2VPYnNvbGV0ZSgp
OwogICAgIGJvb2wgaXNPYnNvbGV0ZSgpIGNvbnN0IHsgcmV0dXJuIG1faXNPYnNvbGV0ZTsgfQog
Ci0gICAgdm9pZCBmaW5pc2hlZExvYWRpbmdNYWluUmVzb3VyY2UoRG9jdW1lbnRMb2FkZXIqKTsK
LSAgICB2b2lkIGZhaWxlZExvYWRpbmdNYWluUmVzb3VyY2UoRG9jdW1lbnRMb2FkZXIqKTsKKyAg
ICB2b2lkIGZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZShEb2N1bWVudExvYWRlciYpOworICAg
IHZvaWQgZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZShEb2N1bWVudExvYWRlciYpOwogCi0gICAg
dm9pZCBkaXNhc3NvY2lhdGVEb2N1bWVudExvYWRlcihEb2N1bWVudExvYWRlciopOworICAgIHZv
aWQgZGlzYXNzb2NpYXRlRG9jdW1lbnRMb2FkZXIoRG9jdW1lbnRMb2FkZXImKTsKIAogcHJpdmF0
ZToKLSAgICBzdGF0aWMgdm9pZCBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0
OjpFdmVudElEIGlkLCBjb25zdCBIYXNoU2V0PERvY3VtZW50TG9hZGVyKj4mIHNldCkgeyBwb3N0
TGlzdGVuZXJUYXNrKGlkLCAwLCAwLCBzZXQpOyB9Ci0gICAgc3RhdGljIHZvaWQgcG9zdExpc3Rl
bmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RXZlbnRJRCBpZCwgRG9jdW1lbnRMb2FkZXIq
IGxvYWRlcikgIHsgcG9zdExpc3RlbmVyVGFzayhpZCwgMCwgMCwgbG9hZGVyKTsgfQotICAgIHN0
YXRpYyB2b2lkIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkV2ZW50SUQs
IGludCBwcm9ncmVzc1RvdGFsLCBpbnQgcHJvZ3Jlc3NEb25lLCBjb25zdCBIYXNoU2V0PERvY3Vt
ZW50TG9hZGVyKj4mKTsKLSAgICBzdGF0aWMgdm9pZCBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0
aW9uQ2FjaGVIb3N0OjpFdmVudElELCBpbnQgcHJvZ3Jlc3NUb3RhbCwgaW50IHByb2dyZXNzRG9u
ZSwgRG9jdW1lbnRMb2FkZXIqKTsKKyAgICBzdGF0aWMgdm9pZCBwb3N0TGlzdGVuZXJUYXNrKGNv
bnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBjb25zdCBIYXNoU2V0PERvY3VtZW50TG9hZGVy
Kj4mIHNldCkgeyBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50VHlwZSwgMCwgMCwgc2V0KTsgfQorICAg
IHN0YXRpYyB2b2lkIHBvc3RMaXN0ZW5lclRhc2soY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5
cGUsIERvY3VtZW50TG9hZGVyJiBsb2FkZXIpICB7IHBvc3RMaXN0ZW5lclRhc2soZXZlbnRUeXBl
LCAwLCAwLCBsb2FkZXIpOyB9CisgICAgc3RhdGljIHZvaWQgcG9zdExpc3RlbmVyVGFzayhjb25z
dCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgaW50IHByb2dyZXNzVG90YWwsIGludCBwcm9ncmVz
c0RvbmUsIGNvbnN0IEhhc2hTZXQ8RG9jdW1lbnRMb2FkZXIqPiYpOworICAgIHN0YXRpYyB2b2lk
IHBvc3RMaXN0ZW5lclRhc2soY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGludCBwcm9n
cmVzc1RvdGFsLCBpbnQgcHJvZ3Jlc3NEb25lLCBEb2N1bWVudExvYWRlciYpOwogCiAgICAgdm9p
ZCBzY2hlZHVsZVJlYWNoZWRNYXhBcHBDYWNoZVNpemVDYWxsYmFjaygpOwogCkBAIC0xMzUsNyAr
MTM2LDcgQEAgcHJpdmF0ZToKIAogICAgIFVSTCBtX21hbmlmZXN0VVJMOwogICAgIFJlZlB0cjxT
ZWN1cml0eU9yaWdpbj4gbV9vcmlnaW47Ci0gICAgVXBkYXRlU3RhdHVzIG1fdXBkYXRlU3RhdHVz
OworICAgIFVwZGF0ZVN0YXR1cyBtX3VwZGF0ZVN0YXR1cyB7IElkbGUgfTsKICAgICAKICAgICAv
LyBUaGlzIGlzIHRoZSBuZXdlc3QgY29tcGxldGUgY2FjaGUgaW4gdGhlIGdyb3VwLgogICAgIFJl
ZlB0cjxBcHBsaWNhdGlvbkNhY2hlPiBtX25ld2VzdENhY2hlOwpAQCAtMTUwLDI2ICsxNTEsMjUg
QEAgcHJpdmF0ZToKICAgICAvLyBMaXN0IG9mIHBlbmRpbmcgbWFzdGVyIGVudHJpZXMsIHVzZWQg
ZHVyaW5nIHRoZSB1cGRhdGUgcHJvY2VzcyB0byBlbnN1cmUgdGhhdCBuZXcgbWFzdGVyIGVudHJp
ZXMgYXJlIGNhY2hlZC4KICAgICBIYXNoU2V0PERvY3VtZW50TG9hZGVyKj4gbV9wZW5kaW5nTWFz
dGVyUmVzb3VyY2VMb2FkZXJzOwogICAgIC8vIEhvdyBtYW55IG9mIHRoZSBhYm92ZSBwZW5kaW5n
IG1hc3RlciBlbnRyaWVzIGhhdmUgbm90IHlldCBmaW5pc2hlZCBkb3dubG9hZGluZy4KLSAgICBp
bnQgbV9kb3dubG9hZGluZ1BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnNDb3VudDsKKyAgICBp
bnQgbV9kb3dubG9hZGluZ1BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnNDb3VudCB7IDAgfTsK
ICAgICAKICAgICAvLyBUaGVzZSBhcmUgYWxsIHRoZSBkb2N1bWVudCBsb2FkZXJzIHRoYXQgYXJl
IGFzc29jaWF0ZWQgd2l0aCBhIGNhY2hlIGluIHRoaXMgZ3JvdXAuCiAgICAgSGFzaFNldDxEb2N1
bWVudExvYWRlcio+IG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVyczsKIAogICAgIC8vIFRoZSBV
UkxzIGFuZCB0eXBlcyBvZiBwZW5kaW5nIGNhY2hlIGVudHJpZXMuCi0gICAgdHlwZWRlZiBIYXNo
TWFwPFN0cmluZywgdW5zaWduZWQ+IEVudHJ5TWFwOwotICAgIEVudHJ5TWFwIG1fcGVuZGluZ0Vu
dHJpZXM7CisgICAgSGFzaE1hcDxTdHJpbmcsIHVuc2lnbmVkPiBtX3BlbmRpbmdFbnRyaWVzOwog
ICAgIAogICAgIC8vIFRoZSB0b3RhbCBudW1iZXIgb2YgaXRlbXMgdG8gYmUgcHJvY2Vzc2VkIHRv
IHVwZGF0ZSB0aGUgY2FjaGUgZ3JvdXAgYW5kIHRoZSBudW1iZXIgdGhhdCBoYXZlIGJlZW4gZG9u
ZS4KLSAgICBpbnQgbV9wcm9ncmVzc1RvdGFsOwotICAgIGludCBtX3Byb2dyZXNzRG9uZTsKKyAg
ICBpbnQgbV9wcm9ncmVzc1RvdGFsIHsgMCB9OworICAgIGludCBtX3Byb2dyZXNzRG9uZSB7IDAg
fTsKIAogICAgIC8vIEZyYW1lIHVzZWQgZm9yIGZldGNoaW5nIHJlc291cmNlcyB3aGVuIHVwZGF0
aW5nLgogICAgIC8vIEZJWE1FOiBBbiB1cGRhdGUgc3RhcnRlZCBieSBhIHBhcnRpY3VsYXIgZnJh
bWUgc2hvdWxkIG5vdCBzdG9wIGlmIGl0IGlzIGRlc3Ryb3llZCwgYnV0IHRoZXJlIGFyZSBvdGhl
ciBmcmFtZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBzYW1lIGNhY2hlIGdyb3VwLgotICAgIEZyYW1l
KiBtX2ZyYW1lOworICAgIEZyYW1lKiBtX2ZyYW1lIHsgbnVsbHB0ciB9OwogICAKICAgICAvLyBB
biBvYnNvbGV0ZSBjYWNoZSBncm91cCBpcyBuZXZlciBzdG9yZWQsIGJ1dCB0aGUgb3Bwb3NpdGUg
aXMgbm90IHRydWUgLSBzdG9yaW5nIG1heSBmYWlsIGZvciBtdWx0aXBsZSByZWFzb25zLCBzdWNo
IGFzIGV4Y2VlZGluZyBkaXNrIHF1b3RhLgotICAgIHVuc2lnbmVkIG1fc3RvcmFnZUlEOwotICAg
IGJvb2wgbV9pc09ic29sZXRlOworICAgIHVuc2lnbmVkIG1fc3RvcmFnZUlEIHsgMCB9OworICAg
IGJvb2wgbV9pc09ic29sZXRlIHsgZmFsc2UgfTsKIAogICAgIC8vIER1cmluZyB1cGRhdGUsIHRo
aXMgaXMgdXNlZCB0byBoYW5kbGUgYXN5bmNocm9ub3VzbHkgYXJyaXZpbmcgcmVzdWx0cy4KICAg
ICBlbnVtIENvbXBsZXRpb25UeXBlIHsKQEAgLTE3OCwxMiArMTc4LDEyIEBAIHByaXZhdGU6CiAg
ICAgICAgIEZhaWx1cmUsCiAgICAgICAgIENvbXBsZXRlZAogICAgIH07Ci0gICAgQ29tcGxldGlv
blR5cGUgbV9jb21wbGV0aW9uVHlwZTsKKyAgICBDb21wbGV0aW9uVHlwZSBtX2NvbXBsZXRpb25U
eXBlIHsgTm9uZSB9OwogCiAgICAgLy8gVGhpcyBmbGFnIGlzIHNldCBpbW1lZGlhdGVseSBhZnRl
ciB0aGUgQ2hyb21lQ2xpZW50OjpyZWFjaGVkTWF4QXBwQ2FjaGVTaXplKCkgY2FsbGJhY2sgaXMg
aW52b2tlZCBhcyBhIHJlc3VsdCBvZiB0aGUgc3RvcmFnZSBsYXllciBmYWlsaW5nIHRvIHNhdmUg
YSBjYWNoZQogICAgIC8vIGR1ZSB0byByZWFjaGluZyB0aGUgbWF4aW11bSBzaXplIG9mIHRoZSBh
cHBsaWNhdGlvbiBjYWNoZSBkYXRhYmFzZSBmaWxlLiBUaGlzIGZsYWcgaXMgdXNlZCBieSBBcHBs
aWNhdGlvbkNhY2hlR3JvdXA6OmNoZWNrSWZMb2FkSXNDb21wbGV0ZSgpIHRvIGRlY2lkZQogICAg
IC8vIHRoZSBjb3Vyc2Ugb2YgYWN0aW9uIGluIGNhc2Ugb2YgdGhpcyBmYWlsdXJlIChpLmUuIGNh
bGwgdGhlIENocm9tZUNsaWVudCBjYWxsYmFjayBvciBydW4gdGhlIGZhaWx1cmUgc3RlcHMpLgot
ICAgIGJvb2wgbV9jYWxsZWRSZWFjaGVkTWF4QXBwQ2FjaGVTaXplOworICAgIGJvb2wgbV9jYWxs
ZWRSZWFjaGVkTWF4QXBwQ2FjaGVTaXplIHsgZmFsc2UgfTsKICAgICAKICAgICBSZWZQdHI8UmVz
b3VyY2VIYW5kbGU+IG1fY3VycmVudEhhbmRsZTsKICAgICBSZWZQdHI8QXBwbGljYXRpb25DYWNo
ZVJlc291cmNlPiBtX2N1cnJlbnRSZXNvdXJjZTsKQEAgLTE5Myw3ICsxOTMsNyBAQCBwcml2YXRl
OgogICAgIFJlZlB0cjxSZXNvdXJjZUhhbmRsZT4gbV9tYW5pZmVzdEhhbmRsZTsKIAogICAgIGlu
dDY0X3QgbV9hdmFpbGFibGVTcGFjZUluUXVvdGE7Ci0gICAgYm9vbCBtX29yaWdpblF1b3RhRXhj
ZWVkZWRQcmV2aW91c2x5OworICAgIGJvb2wgbV9vcmlnaW5RdW90YUV4Y2VlZGVkUHJldmlvdXNs
eSB7IGZhbHNlIH07CiAKICAgICBmcmllbmQgY2xhc3MgQ2hyb21lQ2xpZW50Q2FsbGJhY2tUaW1l
cjsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGlj
YXRpb25DYWNoZUhvc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxp
Y2F0aW9uQ2FjaGVIb3N0LmNwcAppbmRleCA3ZjUwMDRjOTg5Zjk5ZTNlZTc1ZWY1ZDlmYzY1OWZl
YTVkNGVjODNiLi45MTE0Njk5Yzg3ZmY4NWMyMTNlMGRkYWEzOGUzNjg2YzU1ZGJiYThhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUhv
c3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNh
Y2hlSG9zdC5jcHAKQEAgLTMyLDYgKzMyLDcgQEAKICNpbmNsdWRlICJDb250ZW50U2VjdXJpdHlQ
b2xpY3kuaCIKICNpbmNsdWRlICJEb2N1bWVudExvYWRlci5oIgogI2luY2x1ZGUgIkRPTUFwcGxp
Y2F0aW9uQ2FjaGUuaCIKKyNpbmNsdWRlICJFdmVudE5hbWVzLmgiCiAjaW5jbHVkZSAiRmlsZVN5
c3RlbS5oIgogI2luY2x1ZGUgIkZyYW1lLmgiCiAjaW5jbHVkZSAiRnJhbWVMb2FkZXIuaCIKQEAg
LTQ4LDMxICs0OSwyOSBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBBcHBsaWNhdGlvbkNhY2hl
SG9zdDo6QXBwbGljYXRpb25DYWNoZUhvc3QoRG9jdW1lbnRMb2FkZXImIGRvY3VtZW50TG9hZGVy
KQotICAgIDogbV9kb21BcHBsaWNhdGlvbkNhY2hlKG51bGxwdHIpCi0gICAgLCBtX2RvY3VtZW50
TG9hZGVyKGRvY3VtZW50TG9hZGVyKQotICAgICwgbV9kZWZlcnNFdmVudHModHJ1ZSkKLSAgICAs
IG1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKG51bGxwdHIpCisgICAgOiBtX2RvY3Vt
ZW50TG9hZGVyKGRvY3VtZW50TG9hZGVyKQogewogfQogCiBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6
fkFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkKIHsKICAgICBBU1NFUlQoIW1fYXBwbGljYXRpb25DYWNo
ZSB8fCAhbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAgfHwgbV9hcHBsaWNhdGlvbkNh
Y2hlLT5ncm91cCgpID09IG1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKTsKLQogICAg
IGlmIChtX2FwcGxpY2F0aW9uQ2FjaGUpCi0gICAgICAgIG1fYXBwbGljYXRpb25DYWNoZS0+Z3Jv
dXAoKS0+ZGlzYXNzb2NpYXRlRG9jdW1lbnRMb2FkZXIoJm1fZG9jdW1lbnRMb2FkZXIpOworICAg
ICAgICBtX2FwcGxpY2F0aW9uQ2FjaGUtPmdyb3VwKCktPmRpc2Fzc29jaWF0ZURvY3VtZW50TG9h
ZGVyKG1fZG9jdW1lbnRMb2FkZXIpOwogICAgIGVsc2UgaWYgKG1fY2FuZGlkYXRlQXBwbGljYXRp
b25DYWNoZUdyb3VwKQotICAgICAgICBtX2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cC0+
ZGlzYXNzb2NpYXRlRG9jdW1lbnRMb2FkZXIoJm1fZG9jdW1lbnRMb2FkZXIpOworICAgICAgICBt
X2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cC0+ZGlzYXNzb2NpYXRlRG9jdW1lbnRMb2Fk
ZXIobV9kb2N1bWVudExvYWRlcik7CiB9CiAKIHZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OnNl
bGVjdENhY2hlV2l0aG91dE1hbmlmZXN0KCkKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
OnNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0VVJMKG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUoKSk7
CisgICAgQVNTRVJUKG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUoKSk7CisgICAgQXBwbGljYXRpb25D
YWNoZUdyb3VwOjpzZWxlY3RDYWNoZVdpdGhvdXRNYW5pZmVzdFVSTCgqbV9kb2N1bWVudExvYWRl
ci5mcmFtZSgpKTsKIH0KIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c2VsZWN0Q2FjaGVX
aXRoTWFuaWZlc3QoY29uc3QgVVJMJiBtYW5pZmVzdFVSTCkKIHsKLSAgICBBcHBsaWNhdGlvbkNh
Y2hlR3JvdXA6OnNlbGVjdENhY2hlKG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUoKSwgbWFuaWZlc3RV
UkwpOworICAgIEFTU0VSVChtX2RvY3VtZW50TG9hZGVyLmZyYW1lKCkpOworICAgIEFwcGxpY2F0
aW9uQ2FjaGVHcm91cDo6c2VsZWN0Q2FjaGUoKm1fZG9jdW1lbnRMb2FkZXIuZnJhbWUoKSwgbWFu
aWZlc3RVUkwpOwogfQogCiB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjptYXliZUxvYWRNYWlu
UmVzb3VyY2UoUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBTdWJzdGl0dXRlRGF0YSYgc3Vic3Rp
dHV0ZURhdGEpCkBAIC0xNDAsMTIgKzEzOSwxMSBAQCBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0
OjptYXliZUxvYWRGYWxsYmFja0Zvck1haW5FcnJvcihjb25zdCBSZXNvdXJjZVJlcXVlc3QmCiAK
IHZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6Om1haW5SZXNvdXJjZURhdGFSZWNlaXZlZChjb25z
dCBjaGFyKiwgaW50LCBsb25nIGxvbmcsIGJvb2wpCiB7Ci0gICAgLy8gVGhpcyBtZXRob2QgaXMg
aGVyZSB0byBmYWNpbGl0YXRlIGFsdGVybmF0ZSBpbXBsZW1ldGF0aW9ucyBvZiB0aGlzIGludGVy
ZmFjZSBieSB0aGUgaG9zdCBicm93c2VyLgogfQogCiB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0
OjpmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKCkKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlR3Jv
dXAqIGdyb3VwID0gbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXA7CisgICAgYXV0byog
Z3JvdXAgPSBtX2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cDsKICAgICBpZiAoIWdyb3Vw
ICYmIG1fYXBwbGljYXRpb25DYWNoZSkgewogICAgICAgICBpZiAobWFpblJlc291cmNlQXBwbGlj
YXRpb25DYWNoZSgpKSB7CiAgICAgICAgICAgICAvLyBFdmVuIHdoZW4gdGhlIG1haW4gcmVzb3Vy
Y2UgaXMgYmVpbmcgbG9hZGVkIGZyb20gYW4gYXBwbGljYXRpb24gY2FjaGUsIGxvYWRpbmcgY2Fu
IGZhaWwgaWYgYWJvcnRlZC4KQEAgLTE1NSwxNyArMTUzLDE3IEBAIHZvaWQgQXBwbGljYXRpb25D
YWNoZUhvc3Q6OmZhaWxlZExvYWRpbmdNYWluUmVzb3VyY2UoKQogICAgIH0KICAgICAKICAgICBp
ZiAoZ3JvdXApCi0gICAgICAgIGdyb3VwLT5mYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKCZtX2Rv
Y3VtZW50TG9hZGVyKTsKKyAgICAgICAgZ3JvdXAtPmZhaWxlZExvYWRpbmdNYWluUmVzb3VyY2Uo
bV9kb2N1bWVudExvYWRlcik7CiB9CiAKIHZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmZpbmlz
aGVkTG9hZGluZ01haW5SZXNvdXJjZSgpCiB7Ci0gICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBn
cm91cCA9IGNhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCgpOworICAgIGF1dG8qIGdyb3Vw
ID0gY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKCk7CiAgICAgaWYgKCFncm91cCAmJiBh
cHBsaWNhdGlvbkNhY2hlKCkgJiYgIW1haW5SZXNvdXJjZUFwcGxpY2F0aW9uQ2FjaGUoKSkKICAg
ICAgICAgZ3JvdXAgPSBhcHBsaWNhdGlvbkNhY2hlKCktPmdyb3VwKCk7CiAgICAgCiAgICAgaWYg
KGdyb3VwKQotICAgICAgICBncm91cC0+ZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKCZtX2Rv
Y3VtZW50TG9hZGVyKTsKKyAgICAgICAgZ3JvdXAtPmZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJj
ZShtX2RvY3VtZW50TG9hZGVyKTsKIH0KIAogYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWF5
YmVMb2FkUmVzb3VyY2UoUmVzb3VyY2VMb2FkZXImIGxvYWRlciwgY29uc3QgUmVzb3VyY2VSZXF1
ZXN0JiByZXF1ZXN0LCBjb25zdCBVUkwmIG9yaWdpbmFsVVJMKQpAQCAtMTg2LDE3ICsxODQsMTkg
QEAgYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWF5YmVMb2FkUmVzb3VyY2UoUmVzb3VyY2VM
b2FkZXImIGxvYWRlciwgY29uc3QgUmVzb3UKIAogYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6
bWF5YmVMb2FkRmFsbGJhY2tGb3JSZWRpcmVjdChSZXNvdXJjZUxvYWRlciogcmVzb3VyY2VMb2Fk
ZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVk
aXJlY3RSZXNwb25zZSkKIHsKLSAgICBpZiAoIXJlZGlyZWN0UmVzcG9uc2UuaXNOdWxsKCkgJiYg
IXByb3RvY29sSG9zdEFuZFBvcnRBcmVFcXVhbChyZXF1ZXN0LnVybCgpLCByZWRpcmVjdFJlc3Bv
bnNlLnVybCgpKSkKKyAgICBpZiAoIXJlZGlyZWN0UmVzcG9uc2UuaXNOdWxsKCkgJiYgIXByb3Rv
Y29sSG9zdEFuZFBvcnRBcmVFcXVhbChyZXF1ZXN0LnVybCgpLCByZWRpcmVjdFJlc3BvbnNlLnVy
bCgpKSkgewogICAgICAgICBpZiAoc2NoZWR1bGVMb2FkRmFsbGJhY2tSZXNvdXJjZUZyb21BcHBs
aWNhdGlvbkNhY2hlKHJlc291cmNlTG9hZGVyKSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOwor
ICAgIH0KICAgICByZXR1cm4gZmFsc2U7CiB9CiAKIGJvb2wgQXBwbGljYXRpb25DYWNoZUhvc3Q6
Om1heWJlTG9hZEZhbGxiYWNrRm9yUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9h
ZGVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKLSAgICBpZiAocmVzcG9u
c2UuaHR0cFN0YXR1c0NvZGUoKSAvIDEwMCA9PSA0IHx8IHJlc3BvbnNlLmh0dHBTdGF0dXNDb2Rl
KCkgLyAxMDAgPT0gNSkKKyAgICBpZiAocmVzcG9uc2UuaHR0cFN0YXR1c0NvZGUoKSAvIDEwMCA9
PSA0IHx8IHJlc3BvbnNlLmh0dHBTdGF0dXNDb2RlKCkgLyAxMDAgPT0gNSkgewogICAgICAgICBp
ZiAoc2NoZWR1bGVMb2FkRmFsbGJhY2tSZXNvdXJjZUZyb21BcHBsaWNhdGlvbkNhY2hlKHJlc291
cmNlTG9hZGVyKSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KICAgICByZXR1cm4g
ZmFsc2U7CiB9CiAKQEAgLTIyMCwxMSArMjIwLDkgQEAgVVJMIEFwcGxpY2F0aW9uQ2FjaGVIb3N0
OjpjcmVhdGVGaWxlVVJMKGNvbnN0IFN0cmluZyYgcGF0aCkKICAgICAvLyBhcHAgY2FjaGUgbWVk
aWEgZmlsZXMgYXJlIGFsd2F5cyBjcmVhdGVkIHdpdGggZW5jb2RlRm9yRmlsZU5hbWUoY3JlYXRl
Q2Fub25pY2FsVVVJRFN0cmluZygpKS4KIAogI2lmIFVTRShDRikgJiYgUExBVEZPUk0oV0lOKQot
ICAgIFJldGFpblB0cjxDRlVSTFJlZj4gY2ZVUkwgPSBhZG9wdENGKENGVVJMQ3JlYXRlV2l0aEZp
bGVTeXN0ZW1QYXRoKDAsIHBhdGguY3JlYXRlQ0ZTdHJpbmcoKS5nZXQoKSwga0NGVVJMV2luZG93
c1BhdGhTdHlsZSwgZmFsc2UpKTsKLSAgICBVUkwgdXJsKGNmVVJMLmdldCgpKTsKKyAgICBVUkwg
dXJsKGFkb3B0Q0YoQ0ZVUkxDcmVhdGVXaXRoRmlsZVN5c3RlbVBhdGgoMCwgcGF0aC5jcmVhdGVD
RlN0cmluZygpLmdldCgpLCBrQ0ZVUkxXaW5kb3dzUGF0aFN0eWxlLCBmYWxzZSkpLmdldCgpKTsK
ICNlbHNlCiAgICAgVVJMIHVybDsKLQogICAgIHVybC5zZXRQcm90b2NvbChBU0NJSUxpdGVyYWwo
ImZpbGUiKSk7CiAgICAgdXJsLnNldFBhdGgocGF0aCk7CiAjZW5kaWYKQEAgLTI0Niw3ICsyNDQs
NyBAQCBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjptYXliZUxvYWRTeW5jaHJvbm91c2x5KFJl
c291cmNlUmVxdWVzdCYgcmVxdWVzdCwgUmVzbwogICAgIGlmICghc2hvdWxkTG9hZFJlc291cmNl
RnJvbUFwcGxpY2F0aW9uQ2FjaGUocmVxdWVzdCwgcmVzb3VyY2UpKQogICAgICAgICByZXR1cm4g
ZmFsc2U7CiAKLSAgICBSZWZQdHI8U2hhcmVkQnVmZmVyPiByZXNwb25zZURhdGEgPSByZXNvdXJj
ZSA/IGJ1ZmZlckZyb21SZXNvdXJjZSgqcmVzb3VyY2UpIDogbnVsbHB0cjsKKyAgICBhdXRvIHJl
c3BvbnNlRGF0YSA9IHJlc291cmNlID8gYnVmZmVyRnJvbVJlc291cmNlKCpyZXNvdXJjZSkgOiBu
dWxscHRyOwogICAgIGlmICghcmVzcG9uc2VEYXRhKSB7CiAgICAgICAgIGVycm9yID0gbV9kb2N1
bWVudExvYWRlci5mcmFtZUxvYWRlcigpLT5jbGllbnQoKS5jYW5ub3RTaG93VVJMRXJyb3IocmVx
dWVzdCk7CiAgICAgICAgIHJldHVybiB0cnVlOwpAQCAtMjg2LDIwICsyODQsMjEgQEAgdm9pZCBB
cHBsaWNhdGlvbkNhY2hlSG9zdDo6c2V0RE9NQXBwbGljYXRpb25DYWNoZShET01BcHBsaWNhdGlv
bkNhY2hlKiBkb21BcHBsaWMKICAgICBtX2RvbUFwcGxpY2F0aW9uQ2FjaGUgPSBkb21BcHBsaWNh
dGlvbkNhY2hlOwogfQogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojpub3RpZnlET01BcHBs
aWNhdGlvbkNhY2hlKEV2ZW50SUQgaWQsIGludCB0b3RhbCwgaW50IGRvbmUpCit2b2lkIEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0Ojpub3RpZnlET01BcHBsaWNhdGlvbkNhY2hlKGNvbnN0IEF0b21pY1N0
cmluZyYgZXZlbnRUeXBlLCBpbnQgdG90YWwsIGludCBkb25lKQogewotICAgIGlmIChpZCAhPSBQ
Uk9HUkVTU19FVkVOVCkKKyAgICBpZiAoZXZlbnRUeXBlICE9IGV2ZW50TmFtZXMoKS5wcm9ncmVz
c0V2ZW50KQogICAgICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OnVwZGF0ZUFwcGxpY2F0
aW9uQ2FjaGVTdGF0dXMobV9kb2N1bWVudExvYWRlci5mcmFtZSgpKTsKIAogICAgIGlmIChtX2Rl
ZmVyc0V2ZW50cykgewogICAgICAgICAvLyBFdmVudCBkaXNwYXRjaGluZyBpcyBkZWZlcnJlZCB1
bnRpbCBkb2N1bWVudC5vbmxvYWQgaGFzIGZpcmVkLgotICAgICAgICBtX2RlZmVycmVkRXZlbnRz
LmFwcGVuZChEZWZlcnJlZEV2ZW50KGlkLCB0b3RhbCwgZG9uZSkpOworICAgICAgICBtX2RlZmVy
cmVkRXZlbnRzLmFwcGVuZCh7IGV2ZW50VHlwZSwgdG90YWwsIGRvbmUgfSk7CiAgICAgICAgIHJl
dHVybjsKICAgICB9Ci0gICAgZGlzcGF0Y2hET01FdmVudChpZCwgdG90YWwsIGRvbmUpOworCisg
ICAgZGlzcGF0Y2hET01FdmVudChldmVudFR5cGUsIHRvdGFsLCBkb25lKTsKIH0KIAotdm9pZCBB
cHBsaWNhdGlvbkNhY2hlSG9zdDo6c3RvcExvYWRpbmdJbkZyYW1lKEZyYW1lKiBmcmFtZSkKK3Zv
aWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OnN0b3BMb2FkaW5nSW5GcmFtZShGcmFtZSYgZnJhbWUp
CiB7CiAgICAgQVNTRVJUKCFtX2FwcGxpY2F0aW9uQ2FjaGUgfHwgIW1fY2FuZGlkYXRlQXBwbGlj
YXRpb25DYWNoZUdyb3VwIHx8IG1fYXBwbGljYXRpb25DYWNoZS0+Z3JvdXAoKSA9PSBtX2NhbmRp
ZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCk7CiAKQEAgLTMxMiw1MyArMzExLDY4IEBAIHZvaWQg
QXBwbGljYXRpb25DYWNoZUhvc3Q6OnN0b3BMb2FkaW5nSW5GcmFtZShGcmFtZSogZnJhbWUpCiB2
b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpzdG9wRGVmZXJyaW5nRXZlbnRzKCkKIHsKICAgICBS
ZWY8RG9jdW1lbnRMb2FkZXI+IHByb3RlY3QobV9kb2N1bWVudExvYWRlcik7Ci0gICAgZm9yIChh
dXRvJiBldmVudCA6IG1fZGVmZXJyZWRFdmVudHMpCi0gICAgICAgIGRpc3BhdGNoRE9NRXZlbnQo
ZXZlbnQuZXZlbnRJRCwgZXZlbnQucHJvZ3Jlc3NUb3RhbCwgZXZlbnQucHJvZ3Jlc3NEb25lKTsK
KworICAgIC8vIE5vdGUsIGRvIG5vdCBjYWNoZSB0aGUgc2l6ZSBpbiBhIGxvY2FsIHZhcmlhYmxl
LgorICAgIC8vIFRoaXMgY29kZSBuZWVkcyB0byBwcm9wZXJseSBoYW5kbGUgdGhlIGNhc2Ugd2hl
cmUgbW9yZSBldmVudHMgYXJlIGFkZGVkIHRvCisgICAgLy8gbV9kZWZlcnJlZEV2ZW50cyB3aGls
ZSBpdGVyYXRpbmcgaXQuIFRoaXMgaXMgd2h5IHdlIGRvbid0IHVzZSBhIG1vZGVybiBmb3IgbG9v
cC4KKyAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1fZGVmZXJyZWRFdmVudHMuc2l6ZSgpOyAr
K2kpIHsKKyAgICAgICAgYXV0byYgZXZlbnQgPSBtX2RlZmVycmVkRXZlbnRzW2ldOworICAgICAg
ICBkaXNwYXRjaERPTUV2ZW50KGV2ZW50LmV2ZW50VHlwZSwgZXZlbnQucHJvZ3Jlc3NUb3RhbCwg
ZXZlbnQucHJvZ3Jlc3NEb25lKTsKKyAgICB9CisKICAgICBtX2RlZmVycmVkRXZlbnRzLmNsZWFy
KCk7CiAgICAgbV9kZWZlcnNFdmVudHMgPSBmYWxzZTsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNh
Y2hlSG9zdDo6ZmlsbFJlc291cmNlTGlzdChSZXNvdXJjZUluZm9MaXN0KiByZXNvdXJjZXMpCitW
ZWN0b3I8QXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mbz4gQXBwbGljYXRpb25DYWNo
ZUhvc3Q6OnJlc291cmNlTGlzdCgpCiB7Ci0gICAgQXBwbGljYXRpb25DYWNoZSogY2FjaGUgPSBh
cHBsaWNhdGlvbkNhY2hlKCk7CisgICAgVmVjdG9yPFJlc291cmNlSW5mbz4gcmVzdWx0OworCisg
ICAgYXV0byogY2FjaGUgPSBhcHBsaWNhdGlvbkNhY2hlKCk7CiAgICAgaWYgKCFjYWNoZSB8fCAh
Y2FjaGUtPmlzQ29tcGxldGUoKSkKLSAgICAgICAgcmV0dXJuOworICAgICAgICByZXR1cm4gcmVz
dWx0OwogCi0gICAgZm9yIChjb25zdCBhdXRvJiB1cmxBbmRSZXNvdXJjZSA6IGNhY2hlLT5yZXNv
dXJjZXMoKSkgewotICAgICAgICBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqIHJlc291cmNlID0g
dXJsQW5kUmVzb3VyY2UudmFsdWUuZ2V0KCk7CisgICAgcmVzdWx0LnJlc2VydmVJbml0aWFsQ2Fw
YWNpdHkoY2FjaGUtPnJlc291cmNlcygpLnNpemUoKSk7CiAKLSAgICAgICAgdW5zaWduZWQgdHlw
ZSA9IHJlc291cmNlLT50eXBlKCk7CisgICAgZm9yIChhdXRvJiB1cmxBbmRSZXNvdXJjZSA6IGNh
Y2hlLT5yZXNvdXJjZXMoKSkgeworICAgICAgICBBU1NFUlQodXJsQW5kUmVzb3VyY2UudmFsdWUp
OworICAgICAgICBhdXRvJiByZXNvdXJjZSA9ICp1cmxBbmRSZXNvdXJjZS52YWx1ZTsKKworICAg
ICAgICB1bnNpZ25lZCB0eXBlID0gcmVzb3VyY2UudHlwZSgpOwogICAgICAgICBib29sIGlzTWFz
dGVyID0gdHlwZSAmIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6TWFzdGVyOwogICAgICAgICBi
b29sIGlzTWFuaWZlc3QgPSB0eXBlICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYW5pZmVz
dDsKICAgICAgICAgYm9vbCBpc0V4cGxpY2l0ID0gdHlwZSAmIEFwcGxpY2F0aW9uQ2FjaGVSZXNv
dXJjZTo6RXhwbGljaXQ7CiAgICAgICAgIGJvb2wgaXNGb3JlaWduID0gdHlwZSAmIEFwcGxpY2F0
aW9uQ2FjaGVSZXNvdXJjZTo6Rm9yZWlnbjsKICAgICAgICAgYm9vbCBpc0ZhbGxiYWNrID0gdHlw
ZSAmIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6RmFsbGJhY2s7CiAKLSAgICAgICAgcmVzb3Vy
Y2VzLT5hcHBlbmQoUmVzb3VyY2VJbmZvKHJlc291cmNlLT51cmwoKSwgaXNNYXN0ZXIsIGlzTWFu
aWZlc3QsIGlzRmFsbGJhY2ssIGlzRm9yZWlnbiwgaXNFeHBsaWNpdCwgcmVzb3VyY2UtPmVzdGlt
YXRlZFNpemVJblN0b3JhZ2UoKSkpOworICAgICAgICByZXN1bHQudW5jaGVja2VkQXBwZW5kKHsg
cmVzb3VyY2UudXJsKCksIGlzTWFzdGVyLCBpc01hbmlmZXN0LCBpc0ZhbGxiYWNrLCBpc0ZvcmVp
Z24sIGlzRXhwbGljaXQsIHJlc291cmNlLmVzdGltYXRlZFNpemVJblN0b3JhZ2UoKSB9KTsKICAg
ICB9CisKKyAgICByZXR1cm4gcmVzdWx0OwogfQogCiBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q2Fj
aGVJbmZvIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjphcHBsaWNhdGlvbkNhY2hlSW5mbygpCiB7Ci0g
ICAgQXBwbGljYXRpb25DYWNoZSogY2FjaGUgPSBhcHBsaWNhdGlvbkNhY2hlKCk7CisgICAgYXV0
byogY2FjaGUgPSBhcHBsaWNhdGlvbkNhY2hlKCk7CiAgICAgaWYgKCFjYWNoZSB8fCAhY2FjaGUt
PmlzQ29tcGxldGUoKSkKLSAgICAgICAgcmV0dXJuIENhY2hlSW5mbyhVUkwoKSwgMCwgMCwgMCk7
CisgICAgICAgIHJldHVybiB7IHsgfSwgMCwgMCwgMCB9OwogCiAgICAgLy8gRklYTUU6IEFkZCAi
Q3JlYXRpb24gVGltZSIgYW5kICJVcGRhdGUgVGltZSIgdG8gQXBwbGljYXRpb24gQ2FjaGVzLgot
ICAgIHJldHVybiBDYWNoZUluZm8oY2FjaGUtPm1hbmlmZXN0UmVzb3VyY2UoKS0+dXJsKCksIDAs
IDAsIGNhY2hlLT5lc3RpbWF0ZWRTaXplSW5TdG9yYWdlKCkpOworICAgIHJldHVybiB7IGNhY2hl
LT5tYW5pZmVzdFJlc291cmNlKCktPnVybCgpLCAwLCAwLCBjYWNoZS0+ZXN0aW1hdGVkU2l6ZUlu
U3RvcmFnZSgpIH07CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmRpc3BhdGNoRE9N
RXZlbnQoRXZlbnRJRCBpZCwgaW50IHRvdGFsLCBpbnQgZG9uZSkKK3N0YXRpYyBSZWY8RXZlbnQ+
IGNyZWF0ZUFwcGxpY2F0aW9uQ2FjaGVFdmVudChjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlw
ZSwgaW50IHRvdGFsLCBpbnQgZG9uZSkKIHsKLSAgICBpZiAobV9kb21BcHBsaWNhdGlvbkNhY2hl
KSB7Ci0gICAgICAgIGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlID0gRE9NQXBwbGljYXRp
b25DYWNoZTo6dG9FdmVudFR5cGUoaWQpOwotICAgICAgICBSZWZQdHI8RXZlbnQ+IGV2ZW50Owot
ICAgICAgICBpZiAoaWQgPT0gUFJPR1JFU1NfRVZFTlQpCi0gICAgICAgICAgICBldmVudCA9IFBy
b2dyZXNzRXZlbnQ6OmNyZWF0ZShldmVudFR5cGUsIHRydWUsIGRvbmUsIHRvdGFsKTsKLSAgICAg
ICAgZWxzZQotICAgICAgICAgICAgZXZlbnQgPSBFdmVudDo6Y3JlYXRlKGV2ZW50VHlwZSwgZmFs
c2UsIGZhbHNlKTsKLSAgICAgICAgbV9kb21BcHBsaWNhdGlvbkNhY2hlLT5kaXNwYXRjaEV2ZW50
KCpldmVudCk7Ci0gICAgfQorICAgIGlmIChldmVudFR5cGUgPT0gZXZlbnROYW1lcygpLnByb2dy
ZXNzRXZlbnQpCisgICAgICAgIHJldHVybiBQcm9ncmVzc0V2ZW50OjpjcmVhdGUoZXZlbnRUeXBl
LCB0cnVlLCBkb25lLCB0b3RhbCk7CisgICAgcmV0dXJuIEV2ZW50OjpjcmVhdGUoZXZlbnRUeXBl
LCBmYWxzZSwgZmFsc2UpOworfQorCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpkaXNwYXRj
aERPTUV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBpbnQgdG90YWwsIGludCBk
b25lKQoreworICAgIGlmICghbV9kb21BcHBsaWNhdGlvbkNhY2hlKQorICAgICAgICByZXR1cm47
CisgICAgbV9kb21BcHBsaWNhdGlvbkNhY2hlLT5kaXNwYXRjaEV2ZW50KGNyZWF0ZUFwcGxpY2F0
aW9uQ2FjaGVFdmVudChldmVudFR5cGUsIHRvdGFsLCBkb25lKSk7CiB9CiAKIHZvaWQgQXBwbGlj
YXRpb25DYWNoZUhvc3Q6OnNldENhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cChBcHBsaWNh
dGlvbkNhY2hlR3JvdXAqIGdyb3VwKQpAQCAtMzY3LDI1ICszODEsMjQgQEAgdm9pZCBBcHBsaWNh
dGlvbkNhY2hlSG9zdDo6c2V0Q2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKEFwcGxpY2F0
aW9uQ2FjaGVHcm8KICAgICBtX2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCA9IGdyb3Vw
OwogfQogICAgIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c2V0QXBwbGljYXRpb25DYWNo
ZShQYXNzUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+IGFwcGxpY2F0aW9uQ2FjaGUpCit2b2lkIEFw
cGxpY2F0aW9uQ2FjaGVIb3N0OjpzZXRBcHBsaWNhdGlvbkNhY2hlKFJlZlB0cjxBcHBsaWNhdGlv
bkNhY2hlPiYmIGFwcGxpY2F0aW9uQ2FjaGUpCiB7CiAgICAgaWYgKG1fY2FuZGlkYXRlQXBwbGlj
YXRpb25DYWNoZUdyb3VwKSB7CiAgICAgICAgIEFTU0VSVCghbV9hcHBsaWNhdGlvbkNhY2hlKTsK
ICAgICAgICAgbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAgPSBudWxscHRyOwogICAg
IH0KLQotICAgIG1fYXBwbGljYXRpb25DYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGU7CisgICAgbV9h
cHBsaWNhdGlvbkNhY2hlID0gV1RGTW92ZShhcHBsaWNhdGlvbkNhY2hlKTsKIH0KIAogYm9vbCBB
cHBsaWNhdGlvbkNhY2hlSG9zdDo6c2hvdWxkTG9hZFJlc291cmNlRnJvbUFwcGxpY2F0aW9uQ2Fj
aGUoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiBvcmlnaW5hbFJlcXVlc3QsIEFwcGxpY2F0aW9uQ2Fj
aGVSZXNvdXJjZSomIHJlc291cmNlKQogewotICAgIEFwcGxpY2F0aW9uQ2FjaGUqIGNhY2hlID0g
YXBwbGljYXRpb25DYWNoZSgpOworICAgIGF1dG8qIGNhY2hlID0gYXBwbGljYXRpb25DYWNoZSgp
OwogICAgIGlmICghY2FjaGUgfHwgIWNhY2hlLT5pc0NvbXBsZXRlKCkpCiAgICAgICAgIHJldHVy
biBmYWxzZTsKIAogICAgIFJlc291cmNlUmVxdWVzdCByZXF1ZXN0KG9yaWdpbmFsUmVxdWVzdCk7
Ci0gICAgaWYgKEZyYW1lKiBsb2FkZXJGcmFtZSA9IG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUoKSkg
ewotICAgICAgICBpZiAoRG9jdW1lbnQqIGRvY3VtZW50ID0gbG9hZGVyRnJhbWUtPmRvY3VtZW50
KCkpCisgICAgaWYgKGF1dG8qIGxvYWRlckZyYW1lID0gbV9kb2N1bWVudExvYWRlci5mcmFtZSgp
KSB7CisgICAgICAgIGlmIChhdXRvKiBkb2N1bWVudCA9IGxvYWRlckZyYW1lLT5kb2N1bWVudCgp
KQogICAgICAgICAgICAgZG9jdW1lbnQtPmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT51cGdyYWRl
SW5zZWN1cmVSZXF1ZXN0SWZOZWVkZWQocmVxdWVzdCwgQ29udGVudFNlY3VyaXR5UG9saWN5OjpJ
bnNlY3VyZVJlcXVlc3RUeXBlOjpMb2FkKTsKICAgICB9CiAgICAgCkBAIC00MzAsNyArNDQzLDYg
QEAgYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Z2V0QXBwbGljYXRpb25DYWNoZUZhbGxiYWNr
UmVzb3VyY2UoY29uc3QgUmVzb3VyY2VSZXEKIAogICAgIHJlc291cmNlID0gY2FjaGUtPnJlc291
cmNlRm9yVVJMKGZhbGxiYWNrVVJMKTsKICAgICBBU1NFUlQocmVzb3VyY2UpOwotCiAgICAgcmV0
dXJuIHRydWU7CiB9CiAKQEAgLTQ0NCwzMCArNDU2LDI3IEBAIGJvb2wgQXBwbGljYXRpb25DYWNo
ZUhvc3Q6OnNjaGVkdWxlTG9hZEZhbGxiYWNrUmVzb3VyY2VGcm9tQXBwbGljYXRpb25DYWNoZShS
ZXNvCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIGxvYWRlci0+d2lsbFN3aXRjaFRvU3Vi
c3RpdHV0ZVJlc291cmNlKCk7Ci0KICAgICBtX2RvY3VtZW50TG9hZGVyLnNjaGVkdWxlU3Vic3Rp
dHV0ZVJlc291cmNlTG9hZCgqbG9hZGVyLCAqcmVzb3VyY2UpOwotCiAgICAgcmV0dXJuIHRydWU7
CiB9CiAKIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpTdGF0dXMgQXBwbGljYXRpb25DYWNoZUhvc3Q6
OnN0YXR1cygpIGNvbnN0CiB7Ci0gICAgQXBwbGljYXRpb25DYWNoZSogY2FjaGUgPSBhcHBsaWNh
dGlvbkNhY2hlKCk7ICAgIAorICAgIGF1dG8qIGNhY2hlID0gYXBwbGljYXRpb25DYWNoZSgpOwog
ICAgIGlmICghY2FjaGUpCiAgICAgICAgIHJldHVybiBVTkNBQ0hFRDsKIAogICAgIHN3aXRjaCAo
Y2FjaGUtPmdyb3VwKCktPnVwZGF0ZVN0YXR1cygpKSB7Ci0gICAgICAgIGNhc2UgQXBwbGljYXRp
b25DYWNoZUdyb3VwOjpDaGVja2luZzoKLSAgICAgICAgICAgIHJldHVybiBDSEVDS0lORzsKLSAg
ICAgICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OkRvd25sb2FkaW5nOgotICAgICAgICAg
ICAgcmV0dXJuIERPV05MT0FESU5HOwotICAgICAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVHcm91
cDo6SWRsZTogewotICAgICAgICAgICAgaWYgKGNhY2hlLT5ncm91cCgpLT5pc09ic29sZXRlKCkp
Ci0gICAgICAgICAgICAgICAgcmV0dXJuIE9CU09MRVRFOwotICAgICAgICAgICAgaWYgKGNhY2hl
ICE9IGNhY2hlLT5ncm91cCgpLT5uZXdlc3RDYWNoZSgpKQotICAgICAgICAgICAgICAgIHJldHVy
biBVUERBVEVSRUFEWTsKLSAgICAgICAgICAgIHJldHVybiBJRExFOwotICAgICAgICB9CisgICAg
Y2FzZSBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OkNoZWNraW5nOgorICAgICAgICByZXR1cm4gQ0hF
Q0tJTkc7CisgICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OkRvd25sb2FkaW5nOgorICAg
ICAgICByZXR1cm4gRE9XTkxPQURJTkc7CisgICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
OklkbGU6CisgICAgICAgIGlmIChjYWNoZS0+Z3JvdXAoKS0+aXNPYnNvbGV0ZSgpKQorICAgICAg
ICAgICAgcmV0dXJuIE9CU09MRVRFOworICAgICAgICBpZiAoY2FjaGUgIT0gY2FjaGUtPmdyb3Vw
KCktPm5ld2VzdENhY2hlKCkpCisgICAgICAgICAgICByZXR1cm4gVVBEQVRFUkVBRFk7CisgICAg
ICAgIHJldHVybiBJRExFOwogICAgIH0KIAogICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwpAQCAt
NDc2LDI3ICs0ODUsMzAgQEAgQXBwbGljYXRpb25DYWNoZUhvc3Q6OlN0YXR1cyBBcHBsaWNhdGlv
bkNhY2hlSG9zdDo6c3RhdHVzKCkgY29uc3QKIAogYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6
dXBkYXRlKCkKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2Fj
aGUoKTsKKyAgICBhdXRvKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKTsKICAgICBpZiAoIWNh
Y2hlKQogICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgY2FjaGUtPmdyb3VwKCktPnVwZGF0ZSht
X2RvY3VtZW50TG9hZGVyLmZyYW1lKCksIEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVXaXRob3V0QnJv
d3NpbmdDb250ZXh0KTsKKyAgICBhdXRvKiBmcmFtZSA9IG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUo
KTsKKyAgICBpZiAoIWZyYW1lKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgY2FjaGUtPmdy
b3VwKCktPnVwZGF0ZSgqZnJhbWUsIEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVXaXRob3V0QnJvd3Np
bmdDb250ZXh0KTsKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAogYm9vbCBBcHBsaWNhdGlvbkNhY2hl
SG9zdDo6c3dhcENhY2hlKCkKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlKiBjYWNoZSA9IGFwcGxp
Y2F0aW9uQ2FjaGUoKTsKKyAgICBhdXRvKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKTsKICAg
ICBpZiAoIWNhY2hlKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICAvLyBJZiB0aGUgZ3Jv
dXAgb2YgYXBwbGljYXRpb24gY2FjaGVzIHRvIHdoaWNoIGNhY2hlIGJlbG9uZ3MgaGFzIHRoZSBs
aWZlY3ljbGUgc3RhdHVzIG9ic29sZXRlLCB1bmFzc29jaWF0ZSBkb2N1bWVudCBmcm9tIGNhY2hl
LgogICAgIGlmIChjYWNoZS0+Z3JvdXAoKS0+aXNPYnNvbGV0ZSgpKSB7Ci0gICAgICAgIGNhY2hl
LT5ncm91cCgpLT5kaXNhc3NvY2lhdGVEb2N1bWVudExvYWRlcigmbV9kb2N1bWVudExvYWRlcik7
CisgICAgICAgIGNhY2hlLT5ncm91cCgpLT5kaXNhc3NvY2lhdGVEb2N1bWVudExvYWRlcihtX2Rv
Y3VtZW50TG9hZGVyKTsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQogCiAgICAgLy8gSWYg
dGhlcmUgaXMgbm8gbmV3ZXIgY2FjaGUsIHJhaXNlIGFuIElOVkFMSURfU1RBVEVfRVJSIGV4Y2Vw
dGlvbi4KLSAgICBBcHBsaWNhdGlvbkNhY2hlKiBuZXdlc3RDYWNoZSA9IGNhY2hlLT5ncm91cCgp
LT5uZXdlc3RDYWNoZSgpOworICAgIGF1dG8qIG5ld2VzdENhY2hlID0gY2FjaGUtPmdyb3VwKCkt
Pm5ld2VzdENhY2hlKCk7CiAgICAgaWYgKGNhY2hlID09IG5ld2VzdENhY2hlKQogICAgICAgICBy
ZXR1cm4gZmFsc2U7CiAgICAgCkBAIC01MDgsMTQgKzUyMCwxMyBAQCBib29sIEFwcGxpY2F0aW9u
Q2FjaGVIb3N0Ojpzd2FwQ2FjaGUoKQogCiB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjphYm9y
dCgpCiB7Ci0gICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBjYWNoZUdyb3VwID0gY2FuZGlkYXRl
QXBwbGljYXRpb25DYWNoZUdyb3VwKCk7Ci0gICAgaWYgKGNhY2hlR3JvdXApCi0gICAgICAgIGNh
Y2hlR3JvdXAtPmFib3J0KG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUoKSk7Ci0gICAgZWxzZSB7Ci0g
ICAgICAgIEFwcGxpY2F0aW9uQ2FjaGUqIGNhY2hlID0gYXBwbGljYXRpb25DYWNoZSgpOwotICAg
ICAgICBpZiAoY2FjaGUpCi0gICAgICAgICAgICBjYWNoZS0+Z3JvdXAoKS0+YWJvcnQobV9kb2N1
bWVudExvYWRlci5mcmFtZSgpKTsKLSAgICB9CisgICAgYXV0byogZnJhbWUgPSBtX2RvY3VtZW50
TG9hZGVyLmZyYW1lKCk7CisgICAgaWYgKCFmcmFtZSkKKyAgICAgICAgcmV0dXJuOworICAgIGlm
IChhdXRvKiBjYWNoZUdyb3VwID0gY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKCkpCisg
ICAgICAgIGNhY2hlR3JvdXAtPmFib3J0KCpmcmFtZSk7CisgICAgZWxzZSBpZiAoYXV0byogY2Fj
aGUgPSBhcHBsaWNhdGlvbkNhY2hlKCkpCisgICAgICAgIGNhY2hlLT5ncm91cCgpLT5hYm9ydCgq
ZnJhbWUpOwogfQogCiBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojppc0FwcGxpY2F0aW9uQ2Fj
aGVFbmFibGVkKCkKQEAgLTUyNSwxNSArNTM2LDEyIEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZUhv
c3Q6OmlzQXBwbGljYXRpb25DYWNoZUVuYWJsZWQoKQogCiBib29sIEFwcGxpY2F0aW9uQ2FjaGVI
b3N0Ojppc0FwcGxpY2F0aW9uQ2FjaGVCbG9ja2VkRm9yUmVxdWVzdChjb25zdCBSZXNvdXJjZVJl
cXVlc3QmIHJlcXVlc3QpCiB7Ci0gICAgRnJhbWUqIGZyYW1lID0gbV9kb2N1bWVudExvYWRlci5m
cmFtZSgpOworICAgIGF1dG8qIGZyYW1lID0gbV9kb2N1bWVudExvYWRlci5mcmFtZSgpOwogICAg
IGlmICghZnJhbWUpCiAgICAgICAgIHJldHVybiBmYWxzZTsKLQogICAgIGlmIChmcmFtZS0+aXNN
YWluRnJhbWUoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgUmVmPFNlY3VyaXR5T3Jp
Z2luPiBvcmlnaW4oU2VjdXJpdHlPcmlnaW46OmNyZWF0ZShyZXF1ZXN0LnVybCgpKSk7Ci0gICAg
cmV0dXJuICFvcmlnaW4uZ2V0KCkuY2FuQWNjZXNzQXBwbGljYXRpb25DYWNoZShmcmFtZS0+ZG9j
dW1lbnQoKS0+dG9wT3JpZ2luKCkpOworICAgIHJldHVybiAhU2VjdXJpdHlPcmlnaW46OmNyZWF0
ZShyZXF1ZXN0LnVybCgpKS0+Y2FuQWNjZXNzQXBwbGljYXRpb25DYWNoZShmcmFtZS0+ZG9jdW1l
bnQoKS0+dG9wT3JpZ2luKCkpOwogfQogCiB9ICAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVIb3N0
LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUhvc3Qu
aAppbmRleCBjOTViMjNiMjg3NDgyNzk2MDc1OGYzMjgwNjdiMWRmYmFlYjg3OGJhLi4yYmZkYzYy
ZjkzOThkMDBmNGNiMWU5MWI4NmQ3ZjM2Yzg1M2I3NzgyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUhvc3QuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUhvc3QuaApAQCAtMSw2ICsx
LDcgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKGMpIDIwMDksIEdvb2dsZSBJbmMuICBBbGwgcmlnaHRz
IHJlc2VydmVkLgotICogCisgKiBDb3B5cmlnaHQgKGMpIDIwMDksIEdvb2dsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKGMpIDIwMTcgQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQogICogbWV0
OgpAQCAtMzAsMTY1ICszMSwxMzYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpbmNsdWRlICJQbGF0
Zm9ybUV4cG9ydE1hY3Jvcy5oIgogI2luY2x1ZGUgIlVSTC5oIgogI2luY2x1ZGUgPHd0Zi9EZXF1
ZS5oPgotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZlB0ci5o
PgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewotICAgIGNs
YXNzIERPTUFwcGxpY2F0aW9uQ2FjaGU7Ci0gICAgY2xhc3MgRG9jdW1lbnRMb2FkZXI7Ci0gICAg
Y2xhc3MgRnJhbWU7Ci0gICAgY2xhc3MgUmVzb3VyY2VFcnJvcjsKLSAgICBjbGFzcyBSZXNvdXJj
ZUxvYWRlcjsKLSAgICBjbGFzcyBSZXNvdXJjZVJlcXVlc3Q7Ci0gICAgY2xhc3MgUmVzb3VyY2VS
ZXNwb25zZTsKLSAgICBjbGFzcyBTaGFyZWRCdWZmZXI7Ci0gICAgY2xhc3MgU3Vic3RpdHV0ZURh
dGE7Ci0gICAgY2xhc3MgQXBwbGljYXRpb25DYWNoZTsKLSAgICBjbGFzcyBBcHBsaWNhdGlvbkNh
Y2hlR3JvdXA7Ci0gICAgY2xhc3MgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOwotICAgIGNsYXNz
IEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOwotCi0gICAgY2xhc3MgQXBwbGljYXRpb25DYWNoZUhv
c3QgewotICAgICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShBcHBsaWNhdGlvbkNhY2hlSG9zdCk7
IFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwotICAgIHB1YmxpYzoKLSAgICAgICAgLy8gVGhlIFN0
YXR1cyBudW1lcmljIHZhbHVlcyBhcmUgc3BlY2lmaWVkIGluIHRoZSBIVE1MNSBzcGVjLgotICAg
ICAgICBlbnVtIFN0YXR1cyB7Ci0gICAgICAgICAgICBVTkNBQ0hFRCA9IDAsCi0gICAgICAgICAg
ICBJRExFID0gMSwKLSAgICAgICAgICAgIENIRUNLSU5HID0gMiwKLSAgICAgICAgICAgIERPV05M
T0FESU5HID0gMywKLSAgICAgICAgICAgIFVQREFURVJFQURZID0gNCwKLSAgICAgICAgICAgIE9C
U09MRVRFID0gNQotICAgICAgICB9OwotCi0gICAgICAgIGVudW0gRXZlbnRJRCB7Ci0gICAgICAg
ICAgICBDSEVDS0lOR19FVkVOVCA9IDAsCi0gICAgICAgICAgICBFUlJPUl9FVkVOVCwKLSAgICAg
ICAgICAgIE5PVVBEQVRFX0VWRU5ULAotICAgICAgICAgICAgRE9XTkxPQURJTkdfRVZFTlQsCi0g
ICAgICAgICAgICBQUk9HUkVTU19FVkVOVCwKLSAgICAgICAgICAgIFVQREFURVJFQURZX0VWRU5U
LAotICAgICAgICAgICAgQ0FDSEVEX0VWRU5ULAotICAgICAgICAgICAgT0JTT0xFVEVfRVZFTlQg
IC8vIE11c3QgcmVtYWluIHRoZSBsYXN0IHZhbHVlLCB0aGlzIGlzIHVzZWQgdG8gc2l6ZSBhcnJh
eXMuCi0gICAgICAgIH07Ci0KLSAgICAgICAgc3RydWN0IENhY2hlSW5mbyB7Ci0gICAgICAgICAg
ICBDYWNoZUluZm8oY29uc3QgVVJMJiBtYW5pZmVzdCwgZG91YmxlIGNyZWF0aW9uVGltZSwgZG91
YmxlIHVwZGF0ZVRpbWUsIGxvbmcgbG9uZyBzaXplKQotICAgICAgICAgICAgICAgIDogbV9tYW5p
ZmVzdChtYW5pZmVzdCkKLSAgICAgICAgICAgICAgICAsIG1fY3JlYXRpb25UaW1lKGNyZWF0aW9u
VGltZSkKLSAgICAgICAgICAgICAgICAsIG1fdXBkYXRlVGltZSh1cGRhdGVUaW1lKQotICAgICAg
ICAgICAgICAgICwgbV9zaXplKHNpemUpIHsgfQotICAgICAgICAgICAgVVJMIG1fbWFuaWZlc3Q7
Ci0gICAgICAgICAgICBkb3VibGUgbV9jcmVhdGlvblRpbWU7Ci0gICAgICAgICAgICBkb3VibGUg
bV91cGRhdGVUaW1lOwotICAgICAgICAgICAgbG9uZyBsb25nIG1fc2l6ZTsKLSAgICAgICAgfTsK
LQotICAgICAgICBzdHJ1Y3QgUmVzb3VyY2VJbmZvIHsKLSAgICAgICAgICAgIFJlc291cmNlSW5m
byhjb25zdCBVUkwmIHJlc291cmNlLCBib29sIGlzTWFzdGVyLCBib29sIGlzTWFuaWZlc3QsIGJv
b2wgaXNGYWxsYmFjaywgYm9vbCBpc0ZvcmVpZ24sIGJvb2wgaXNFeHBsaWNpdCwgbG9uZyBsb25n
IHNpemUpCi0gICAgICAgICAgICAgICAgOiBtX3Jlc291cmNlKHJlc291cmNlKQotICAgICAgICAg
ICAgICAgICwgbV9pc01hc3Rlcihpc01hc3RlcikKLSAgICAgICAgICAgICAgICAsIG1faXNNYW5p
ZmVzdChpc01hbmlmZXN0KQotICAgICAgICAgICAgICAgICwgbV9pc0ZhbGxiYWNrKGlzRmFsbGJh
Y2spCi0gICAgICAgICAgICAgICAgLCBtX2lzRm9yZWlnbihpc0ZvcmVpZ24pCi0gICAgICAgICAg
ICAgICAgLCBtX2lzRXhwbGljaXQoaXNFeHBsaWNpdCkKLSAgICAgICAgICAgICAgICAsIG1fc2l6
ZShzaXplKSB7IH0KLSAgICAgICAgICAgIFVSTCBtX3Jlc291cmNlOwotICAgICAgICAgICAgYm9v
bCBtX2lzTWFzdGVyOwotICAgICAgICAgICAgYm9vbCBtX2lzTWFuaWZlc3Q7Ci0gICAgICAgICAg
ICBib29sIG1faXNGYWxsYmFjazsKLSAgICAgICAgICAgIGJvb2wgbV9pc0ZvcmVpZ247Ci0gICAg
ICAgICAgICBib29sIG1faXNFeHBsaWNpdDsKLSAgICAgICAgICAgIGxvbmcgbG9uZyBtX3NpemU7
Ci0gICAgICAgIH07Ci0KLSAgICAgICAgdHlwZWRlZiBWZWN0b3I8UmVzb3VyY2VJbmZvPiBSZXNv
dXJjZUluZm9MaXN0OwotCi0gICAgICAgIGV4cGxpY2l0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0KERv
Y3VtZW50TG9hZGVyJik7Ci0gICAgICAgIH5BcHBsaWNhdGlvbkNhY2hlSG9zdCgpOwotCi0gICAg
ICAgIHN0YXRpYyBVUkwgY3JlYXRlRmlsZVVSTChjb25zdCBTdHJpbmcmKTsKLQotICAgICAgICB2
b2lkIHNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0KCk7Ci0gICAgICAgIHZvaWQgc2VsZWN0Q2Fj
aGVXaXRoTWFuaWZlc3QoY29uc3QgVVJMJiBtYW5pZmVzdFVSTCk7Ci0KLSAgICAgICAgdm9pZCBt
YXliZUxvYWRNYWluUmVzb3VyY2UoUmVzb3VyY2VSZXF1ZXN0JiwgU3Vic3RpdHV0ZURhdGEmKTsK
LSAgICAgICAgdm9pZCBtYXliZUxvYWRNYWluUmVzb3VyY2VGb3JSZWRpcmVjdChSZXNvdXJjZVJl
cXVlc3QmLCBTdWJzdGl0dXRlRGF0YSYpOwotICAgICAgICBib29sIG1heWJlTG9hZEZhbGxiYWNr
Rm9yTWFpblJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVz
cG9uc2UmKTsKLSAgICAgICAgdm9pZCBtYWluUmVzb3VyY2VEYXRhUmVjZWl2ZWQoY29uc3QgY2hh
ciogZGF0YSwgaW50IGxlbmd0aCwgbG9uZyBsb25nIGVuY29kZWREYXRhTGVuZ3RoLCBib29sIGFs
bEF0T25jZSk7Ci0gICAgICAgIHZvaWQgZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKCk7Ci0g
ICAgICAgIHZvaWQgZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZSgpOwotCi0gICAgICAgIFdFQkNP
UkVfRVhQT1JUIGJvb2wgbWF5YmVMb2FkUmVzb3VyY2UoUmVzb3VyY2VMb2FkZXImLCBjb25zdCBS
ZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBVUkwmIG9yaWdpbmFsVVJMKTsKLSAgICAgICAgV0VCQ09S
RV9FWFBPUlQgYm9vbCBtYXliZUxvYWRGYWxsYmFja0ZvclJlZGlyZWN0KFJlc291cmNlTG9hZGVy
KiwgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwotICAgICAgICBX
RUJDT1JFX0VYUE9SVCBib29sIG1heWJlTG9hZEZhbGxiYWNrRm9yUmVzcG9uc2UoUmVzb3VyY2VM
b2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7Ci0gICAgICAgIFdFQkNPUkVfRVhQT1JU
IGJvb2wgbWF5YmVMb2FkRmFsbGJhY2tGb3JFcnJvcihSZXNvdXJjZUxvYWRlciosIGNvbnN0IFJl
c291cmNlRXJyb3ImKTsKLQotICAgICAgICBib29sIG1heWJlTG9hZFN5bmNocm9ub3VzbHkoUmVz
b3VyY2VSZXF1ZXN0JiwgUmVzb3VyY2VFcnJvciYsIFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8
U2hhcmVkQnVmZmVyPiYpOwotICAgICAgICB2b2lkIG1heWJlTG9hZEZhbGxiYWNrU3luY2hyb25v
dXNseShjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBSZXNvdXJjZUVycm9yJiwgUmVzb3VyY2VSZXNw
b25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+Jik7Ci0KLSAgICAgICAgYm9vbCBjYW5DYWNoZUlu
UGFnZUNhY2hlKCk7Ci0KLSAgICAgICAgU3RhdHVzIHN0YXR1cygpIGNvbnN0OyAgCi0gICAgICAg
IGJvb2wgdXBkYXRlKCk7Ci0gICAgICAgIGJvb2wgc3dhcENhY2hlKCk7Ci0gICAgICAgIHZvaWQg
YWJvcnQoKTsKLQotICAgICAgICB2b2lkIHNldERPTUFwcGxpY2F0aW9uQ2FjaGUoRE9NQXBwbGlj
YXRpb25DYWNoZSopOwotICAgICAgICB2b2lkIG5vdGlmeURPTUFwcGxpY2F0aW9uQ2FjaGUoRXZl
bnRJRCwgaW50IHByb2dyZXNzVG90YWwsIGludCBwcm9ncmVzc0RvbmUpOwotCi0gICAgICAgIHZv
aWQgc3RvcExvYWRpbmdJbkZyYW1lKEZyYW1lKik7Ci0KLSAgICAgICAgdm9pZCBzdG9wRGVmZXJy
aW5nRXZlbnRzKCk7IC8vIEFsc28gcmFpc2VzIHRoZSBldmVudHMgdGhhdCBoYXZlIGJlZW4gcXVl
dWVkIHVwLgotCi0gICAgICAgIHZvaWQgZmlsbFJlc291cmNlTGlzdChSZXNvdXJjZUluZm9MaXN0
Kik7Ci0gICAgICAgIENhY2hlSW5mbyBhcHBsaWNhdGlvbkNhY2hlSW5mbygpOwotCi0gICAgICAg
IGJvb2wgc2hvdWxkTG9hZFJlc291cmNlRnJvbUFwcGxpY2F0aW9uQ2FjaGUoY29uc3QgUmVzb3Vy
Y2VSZXF1ZXN0JiwgQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiYpOwotICAgICAgICBib29sIGdl
dEFwcGxpY2F0aW9uQ2FjaGVGYWxsYmFja1Jlc291cmNlKGNvbnN0IFJlc291cmNlUmVxdWVzdCYs
IEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSomLCBBcHBsaWNhdGlvbkNhY2hlKiA9IG51bGxwdHIp
OwotCi0gICAgcHJpdmF0ZToKLSAgICAgICAgYm9vbCBpc0FwcGxpY2F0aW9uQ2FjaGVFbmFibGVk
KCk7Ci0gICAgICAgIGJvb2wgaXNBcHBsaWNhdGlvbkNhY2hlQmxvY2tlZEZvclJlcXVlc3QoY29u
c3QgUmVzb3VyY2VSZXF1ZXN0Jik7Ci0KLSAgICAgICAgc3RydWN0IERlZmVycmVkRXZlbnQgewot
ICAgICAgICAgICAgRXZlbnRJRCBldmVudElEOwotICAgICAgICAgICAgaW50IHByb2dyZXNzVG90
YWw7Ci0gICAgICAgICAgICBpbnQgcHJvZ3Jlc3NEb25lOwotICAgICAgICAgICAgRGVmZXJyZWRF
dmVudChFdmVudElEIGlkLCBpbnQgdG90YWwsIGludCBkb25lKSA6IGV2ZW50SUQoaWQpLCBwcm9n
cmVzc1RvdGFsKHRvdGFsKSwgcHJvZ3Jlc3NEb25lKGRvbmUpIHsgfQotICAgICAgICB9OwotCi0g
ICAgICAgIERPTUFwcGxpY2F0aW9uQ2FjaGUqIG1fZG9tQXBwbGljYXRpb25DYWNoZTsKLSAgICAg
ICAgRG9jdW1lbnRMb2FkZXImIG1fZG9jdW1lbnRMb2FkZXI7Ci0gICAgICAgIGJvb2wgbV9kZWZl
cnNFdmVudHM7IC8vIEV2ZW50cyBhcmUgZGVmZXJyZWQgdW50aWwgYWZ0ZXIgZG9jdW1lbnQgb25s
b2FkLgotICAgICAgICBWZWN0b3I8RGVmZXJyZWRFdmVudD4gbV9kZWZlcnJlZEV2ZW50czsKLQot
ICAgICAgICB2b2lkIGRpc3BhdGNoRE9NRXZlbnQoRXZlbnRJRCwgaW50IHByb2dyZXNzVG90YWws
IGludCBwcm9ncmVzc0RvbmUpOwotCi0gICAgICAgIGZyaWVuZCBjbGFzcyBBcHBsaWNhdGlvbkNh
Y2hlR3JvdXA7Ci0gICAgICAgIGZyaWVuZCBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTsK
LQotICAgICAgICBib29sIHNjaGVkdWxlTG9hZEZhbGxiYWNrUmVzb3VyY2VGcm9tQXBwbGljYXRp
b25DYWNoZShSZXNvdXJjZUxvYWRlciosIEFwcGxpY2F0aW9uQ2FjaGUqID0gbnVsbHB0cik7Ci0g
ICAgICAgIHZvaWQgc2V0Q2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKEFwcGxpY2F0aW9u
Q2FjaGVHcm91cCogZ3JvdXApOwotICAgICAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGNhbmRp
ZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCgpIGNvbnN0IHsgcmV0dXJuIG1fY2FuZGlkYXRlQXBw
bGljYXRpb25DYWNoZUdyb3VwOyB9Ci0gICAgICAgIHZvaWQgc2V0QXBwbGljYXRpb25DYWNoZShQ
YXNzUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+IGFwcGxpY2F0aW9uQ2FjaGUpOwotICAgICAgICBB
cHBsaWNhdGlvbkNhY2hlKiBhcHBsaWNhdGlvbkNhY2hlKCkgY29uc3QgeyByZXR1cm4gbV9hcHBs
aWNhdGlvbkNhY2hlLmdldCgpOyB9Ci0gICAgICAgIEFwcGxpY2F0aW9uQ2FjaGUqIG1haW5SZXNv
dXJjZUFwcGxpY2F0aW9uQ2FjaGUoKSBjb25zdCB7IHJldHVybiBtX21haW5SZXNvdXJjZUFwcGxp
Y2F0aW9uQ2FjaGUuZ2V0KCk7IH0KLSAgICAgICAgYm9vbCBtYXliZUxvYWRGYWxsYmFja0Zvck1h
aW5FcnJvcihjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZUVycm9yJik7Ci0K
LSAgICAgICAgLy8gVGhlIGFwcGxpY2F0aW9uIGNhY2hlIHRoYXQgdGhlIGRvY3VtZW50IGxvYWRl
ciBpcyBhc3NvY2lhdGVkIHdpdGggKGlmIGFueSkuCi0gICAgICAgIFJlZlB0cjxBcHBsaWNhdGlv
bkNhY2hlPiBtX2FwcGxpY2F0aW9uQ2FjaGU7Ci0KLSAgICAgICAgLy8gQmVmb3JlIGFuIGFwcGxp
Y2F0aW9uIGNhY2hlIGhhcyBmaW5pc2hlZCBsb2FkaW5nLCB0aGlzIHdpbGwgYmUgdGhlIGNhbmRp
ZGF0ZSBhcHBsaWNhdGlvbgotICAgICAgICAvLyBncm91cCB0aGF0IHRoZSBkb2N1bWVudCBsb2Fk
ZXIgaXMgYXNzb2NpYXRlZCB3aXRoLgotICAgICAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIG1f
Y2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwOwotCi0gICAgICAgIC8vIFRoaXMgaXMgdGhl
IGFwcGxpY2F0aW9uIGNhY2hlIHRoZSBtYWluIHJlc291cmNlIHdhcyBsb2FkZWQgZnJvbSAoaWYg
YW55KS4KLSAgICAgICAgUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+IG1fbWFpblJlc291cmNlQXBw
bGljYXRpb25DYWNoZTsKKworY2xhc3MgQXBwbGljYXRpb25DYWNoZTsKK2NsYXNzIEFwcGxpY2F0
aW9uQ2FjaGVHcm91cDsKK2NsYXNzIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTsKK2NsYXNzIEFw
cGxpY2F0aW9uQ2FjaGVTdG9yYWdlOworY2xhc3MgRE9NQXBwbGljYXRpb25DYWNoZTsKK2NsYXNz
IERvY3VtZW50TG9hZGVyOworY2xhc3MgRnJhbWU7CitjbGFzcyBSZXNvdXJjZUVycm9yOworY2xh
c3MgUmVzb3VyY2VMb2FkZXI7CitjbGFzcyBSZXNvdXJjZVJlcXVlc3Q7CitjbGFzcyBSZXNvdXJj
ZVJlc3BvbnNlOworY2xhc3MgU2hhcmVkQnVmZmVyOworY2xhc3MgU3Vic3RpdHV0ZURhdGE7CisK
K2NsYXNzIEFwcGxpY2F0aW9uQ2FjaGVIb3N0IHsKKyAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShB
cHBsaWNhdGlvbkNhY2hlSG9zdCk7IFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgor
ICAgIC8vIFRoZSBTdGF0dXMgbnVtZXJpYyB2YWx1ZXMgYXJlIHNwZWNpZmllZCBpbiB0aGUgSFRN
TDUgc3BlYy4KKyAgICBlbnVtIFN0YXR1cyB7CisgICAgICAgIFVOQ0FDSEVEID0gMCwKKyAgICAg
ICAgSURMRSA9IDEsCisgICAgICAgIENIRUNLSU5HID0gMiwKKyAgICAgICAgRE9XTkxPQURJTkcg
PSAzLAorICAgICAgICBVUERBVEVSRUFEWSA9IDQsCisgICAgICAgIE9CU09MRVRFID0gNQorICAg
IH07CisKKyAgICBzdHJ1Y3QgQ2FjaGVJbmZvIHsKKyAgICAgICAgVVJMIG1hbmlmZXN0OworICAg
ICAgICBkb3VibGUgY3JlYXRpb25UaW1lOworICAgICAgICBkb3VibGUgdXBkYXRlVGltZTsKKyAg
ICAgICAgbG9uZyBsb25nIHNpemU7CisgICAgfTsKKworICAgIHN0cnVjdCBSZXNvdXJjZUluZm8g
eworICAgICAgICBVUkwgcmVzb3VyY2U7CisgICAgICAgIGJvb2wgaXNNYXN0ZXI7CisgICAgICAg
IGJvb2wgaXNNYW5pZmVzdDsKKyAgICAgICAgYm9vbCBpc0ZhbGxiYWNrOworICAgICAgICBib29s
IGlzRm9yZWlnbjsKKyAgICAgICAgYm9vbCBpc0V4cGxpY2l0OworICAgICAgICBsb25nIGxvbmcg
c2l6ZTsKKyAgICB9OworCisgICAgZXhwbGljaXQgQXBwbGljYXRpb25DYWNoZUhvc3QoRG9jdW1l
bnRMb2FkZXImKTsKKyAgICB+QXBwbGljYXRpb25DYWNoZUhvc3QoKTsKKworICAgIHN0YXRpYyBV
UkwgY3JlYXRlRmlsZVVSTChjb25zdCBTdHJpbmcmKTsKKworICAgIHZvaWQgc2VsZWN0Q2FjaGVX
aXRob3V0TWFuaWZlc3QoKTsKKyAgICB2b2lkIHNlbGVjdENhY2hlV2l0aE1hbmlmZXN0KGNvbnN0
IFVSTCYgbWFuaWZlc3RVUkwpOworCisgICAgdm9pZCBtYXliZUxvYWRNYWluUmVzb3VyY2UoUmVz
b3VyY2VSZXF1ZXN0JiwgU3Vic3RpdHV0ZURhdGEmKTsKKyAgICB2b2lkIG1heWJlTG9hZE1haW5S
ZXNvdXJjZUZvclJlZGlyZWN0KFJlc291cmNlUmVxdWVzdCYsIFN1YnN0aXR1dGVEYXRhJik7Cisg
ICAgYm9vbCBtYXliZUxvYWRGYWxsYmFja0Zvck1haW5SZXNwb25zZShjb25zdCBSZXNvdXJjZVJl
cXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CisgICAgdm9pZCBtYWluUmVzb3VyY2VE
YXRhUmVjZWl2ZWQoY29uc3QgY2hhciogZGF0YSwgaW50IGxlbmd0aCwgbG9uZyBsb25nIGVuY29k
ZWREYXRhTGVuZ3RoLCBib29sIGFsbEF0T25jZSk7CisgICAgdm9pZCBmaW5pc2hlZExvYWRpbmdN
YWluUmVzb3VyY2UoKTsKKyAgICB2b2lkIGZhaWxlZExvYWRpbmdNYWluUmVzb3VyY2UoKTsKKwor
ICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgbWF5YmVMb2FkUmVzb3VyY2UoUmVzb3VyY2VMb2FkZXIm
LCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBVUkwmIG9yaWdpbmFsVVJMKTsKKyAgICBX
RUJDT1JFX0VYUE9SVCBib29sIG1heWJlTG9hZEZhbGxiYWNrRm9yUmVkaXJlY3QoUmVzb3VyY2VM
b2FkZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CisgICAg
V0VCQ09SRV9FWFBPUlQgYm9vbCBtYXliZUxvYWRGYWxsYmFja0ZvclJlc3BvbnNlKFJlc291cmNl
TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOworICAgIFdFQkNPUkVfRVhQT1JUIGJv
b2wgbWF5YmVMb2FkRmFsbGJhY2tGb3JFcnJvcihSZXNvdXJjZUxvYWRlciosIGNvbnN0IFJlc291
cmNlRXJyb3ImKTsKKworICAgIGJvb2wgbWF5YmVMb2FkU3luY2hyb25vdXNseShSZXNvdXJjZVJl
cXVlc3QmLCBSZXNvdXJjZUVycm9yJiwgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRC
dWZmZXI+Jik7CisgICAgdm9pZCBtYXliZUxvYWRGYWxsYmFja1N5bmNocm9ub3VzbHkoY29uc3Qg
UmVzb3VyY2VSZXF1ZXN0JiwgUmVzb3VyY2VFcnJvciYsIFJlc291cmNlUmVzcG9uc2UmLCBSZWZQ
dHI8U2hhcmVkQnVmZmVyPiYpOworCisgICAgYm9vbCBjYW5DYWNoZUluUGFnZUNhY2hlKCk7CisK
KyAgICBTdGF0dXMgc3RhdHVzKCkgY29uc3Q7CisgICAgYm9vbCB1cGRhdGUoKTsKKyAgICBib29s
IHN3YXBDYWNoZSgpOworICAgIHZvaWQgYWJvcnQoKTsKKworICAgIHZvaWQgc2V0RE9NQXBwbGlj
YXRpb25DYWNoZShET01BcHBsaWNhdGlvbkNhY2hlKik7CisgICAgdm9pZCBub3RpZnlET01BcHBs
aWNhdGlvbkNhY2hlKGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBpbnQgcHJvZ3Jlc3NU
b3RhbCwgaW50IHByb2dyZXNzRG9uZSk7CisKKyAgICB2b2lkIHN0b3BMb2FkaW5nSW5GcmFtZShG
cmFtZSYpOworCisgICAgdm9pZCBzdG9wRGVmZXJyaW5nRXZlbnRzKCk7IC8vIEFsc28gcmFpc2Vz
IHRoZSBldmVudHMgdGhhdCBoYXZlIGJlZW4gcXVldWVkIHVwLgorCisgICAgVmVjdG9yPFJlc291
cmNlSW5mbz4gcmVzb3VyY2VMaXN0KCk7CisgICAgQ2FjaGVJbmZvIGFwcGxpY2F0aW9uQ2FjaGVJ
bmZvKCk7CisKKyAgICBib29sIHNob3VsZExvYWRSZXNvdXJjZUZyb21BcHBsaWNhdGlvbkNhY2hl
KGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSomKTsKKyAg
ICBib29sIGdldEFwcGxpY2F0aW9uQ2FjaGVGYWxsYmFja1Jlc291cmNlKGNvbnN0IFJlc291cmNl
UmVxdWVzdCYsIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSomLCBBcHBsaWNhdGlvbkNhY2hlKiA9
IG51bGxwdHIpOworCitwcml2YXRlOgorICAgIGZyaWVuZCBjbGFzcyBBcHBsaWNhdGlvbkNhY2hl
R3JvdXA7CisKKyAgICBzdHJ1Y3QgRGVmZXJyZWRFdmVudCB7CisgICAgICAgIEF0b21pY1N0cmlu
ZyBldmVudFR5cGU7CisgICAgICAgIGludCBwcm9ncmVzc1RvdGFsOworICAgICAgICBpbnQgcHJv
Z3Jlc3NEb25lOwogICAgIH07CiAKKyAgICBib29sIGlzQXBwbGljYXRpb25DYWNoZUVuYWJsZWQo
KTsKKyAgICBib29sIGlzQXBwbGljYXRpb25DYWNoZUJsb2NrZWRGb3JSZXF1ZXN0KGNvbnN0IFJl
c291cmNlUmVxdWVzdCYpOworCisgICAgdm9pZCBkaXNwYXRjaERPTUV2ZW50KGNvbnN0IEF0b21p
Y1N0cmluZyYgZXZlbnRUeXBlLCBpbnQgcHJvZ3Jlc3NUb3RhbCwgaW50IHByb2dyZXNzRG9uZSk7
CisKKyAgICBib29sIHNjaGVkdWxlTG9hZEZhbGxiYWNrUmVzb3VyY2VGcm9tQXBwbGljYXRpb25D
YWNoZShSZXNvdXJjZUxvYWRlciosIEFwcGxpY2F0aW9uQ2FjaGUqID0gbnVsbHB0cik7CisgICAg
dm9pZCBzZXRDYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoQXBwbGljYXRpb25DYWNoZUdy
b3VwKik7CisgICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBjYW5kaWRhdGVBcHBsaWNhdGlvbkNh
Y2hlR3JvdXAoKSBjb25zdCB7IHJldHVybiBtX2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91
cDsgfQorICAgIHZvaWQgc2V0QXBwbGljYXRpb25DYWNoZShSZWZQdHI8QXBwbGljYXRpb25DYWNo
ZT4mJik7CisgICAgQXBwbGljYXRpb25DYWNoZSogYXBwbGljYXRpb25DYWNoZSgpIGNvbnN0IHsg
cmV0dXJuIG1fYXBwbGljYXRpb25DYWNoZS5nZXQoKTsgfQorICAgIEFwcGxpY2F0aW9uQ2FjaGUq
IG1haW5SZXNvdXJjZUFwcGxpY2F0aW9uQ2FjaGUoKSBjb25zdCB7IHJldHVybiBtX21haW5SZXNv
dXJjZUFwcGxpY2F0aW9uQ2FjaGUuZ2V0KCk7IH0KKyAgICBib29sIG1heWJlTG9hZEZhbGxiYWNr
Rm9yTWFpbkVycm9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlRXJyb3Im
KTsKKworICAgIERPTUFwcGxpY2F0aW9uQ2FjaGUqIG1fZG9tQXBwbGljYXRpb25DYWNoZSB7IG51
bGxwdHIgfTsKKyAgICBEb2N1bWVudExvYWRlciYgbV9kb2N1bWVudExvYWRlcjsKKworICAgIGJv
b2wgbV9kZWZlcnNFdmVudHMgeyB0cnVlIH07IC8vIEV2ZW50cyBhcmUgZGVmZXJyZWQgdW50aWwg
YWZ0ZXIgZG9jdW1lbnQgb25sb2FkLgorICAgIFZlY3RvcjxEZWZlcnJlZEV2ZW50PiBtX2RlZmVy
cmVkRXZlbnRzOworCisgICAgLy8gVGhlIGFwcGxpY2F0aW9uIGNhY2hlIHRoYXQgdGhlIGRvY3Vt
ZW50IGxvYWRlciBpcyBhc3NvY2lhdGVkIHdpdGggKGlmIGFueSkuCisgICAgUmVmUHRyPEFwcGxp
Y2F0aW9uQ2FjaGU+IG1fYXBwbGljYXRpb25DYWNoZTsKKworICAgIC8vIEJlZm9yZSBhbiBhcHBs
aWNhdGlvbiBjYWNoZSBoYXMgZmluaXNoZWQgbG9hZGluZywgdGhpcyB3aWxsIGJlIHRoZSBjYW5k
aWRhdGUgYXBwbGljYXRpb24KKyAgICAvLyBncm91cCB0aGF0IHRoZSBkb2N1bWVudCBsb2FkZXIg
aXMgYXNzb2NpYXRlZCB3aXRoLgorICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogbV9jYW5kaWRh
dGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAgeyBudWxscHRyIH07CisKKyAgICAvLyBUaGlzIGlzIHRo
ZSBhcHBsaWNhdGlvbiBjYWNoZSB0aGUgbWFpbiByZXNvdXJjZSB3YXMgbG9hZGVkIGZyb20gKGlm
IGFueSkuCisgICAgUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+IG1fbWFpblJlc291cmNlQXBwbGlj
YXRpb25DYWNoZTsKK307CisKIH0gIC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UuY3Bw
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVTdG9yYWdl
LmNwcAppbmRleCBkZjEwM2U0YTJiOGViNDU1ODNlMGVhOTM2NTdmZGU2Yzg2MTA0OTA2Li5mNGZh
OTViNTE3ZWM3NzkxNjI0ZmMwZjI1YTY1NmIwYzA5NDQxNDc3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5j
cHAKQEAgLTEyNiwzNiArMTI2LDMyIEBAIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogQXBwbGljYXRp
b25DYWNoZVN0b3JhZ2U6OmxvYWRDYWNoZUdyb3VwKGNvbnN0IFVSTCYgbWFuaWZlCiAgICAgaWYg
KCFjYWNoZSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgICAgIAotICAgIEFwcGxpY2F0
aW9uQ2FjaGVHcm91cCogZ3JvdXAgPSBuZXcgQXBwbGljYXRpb25DYWNoZUdyb3VwKCp0aGlzLCBt
YW5pZmVzdFVSTCk7Ci0gICAgICAKLSAgICBncm91cC0+c2V0U3RvcmFnZUlEKHN0YXRpY19jYXN0
PHVuc2lnbmVkPihzdGF0ZW1lbnQuZ2V0Q29sdW1uSW50NjQoMCkpKTsKLSAgICBncm91cC0+c2V0
TmV3ZXN0Q2FjaGUoV1RGTW92ZShjYWNoZSkpOwotCi0gICAgcmV0dXJuIGdyb3VwOworICAgIGF1
dG8mIGdyb3VwID0gKm5ldyBBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKnRoaXMsIG1hbmlmZXN0VVJM
KTsKKyAgICBncm91cC5zZXRTdG9yYWdlSUQoc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHN0YXRlbWVu
dC5nZXRDb2x1bW5JbnQ2NCgwKSkpOworICAgIGdyb3VwLnNldE5ld2VzdENhY2hlKGNhY2hlLnJl
bGVhc2VOb25OdWxsKCkpOworICAgIHJldHVybiAmZ3JvdXA7CiB9ICAgIAogCiBBcHBsaWNhdGlv
bkNhY2hlR3JvdXAqIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpmaW5kT3JDcmVhdGVDYWNoZUdy
b3VwKGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwpCiB7CiAgICAgQVNTRVJUKCFtYW5pZmVzdFVSTC5o
YXNGcmFnbWVudElkZW50aWZpZXIoKSk7CiAKLSAgICBDYWNoZUdyb3VwTWFwOjpBZGRSZXN1bHQg
cmVzdWx0ID0gbV9jYWNoZXNJbk1lbW9yeS5hZGQobWFuaWZlc3RVUkwsIG51bGxwdHIpOwotICAg
IAorICAgIGF1dG8gcmVzdWx0ID0gbV9jYWNoZXNJbk1lbW9yeS5hZGQobWFuaWZlc3RVUkwsIG51
bGxwdHIpOwogICAgIGlmICghcmVzdWx0LmlzTmV3RW50cnkpIHsKICAgICAgICAgQVNTRVJUKHJl
c3VsdC5pdGVyYXRvci0+dmFsdWUpOwogICAgICAgICByZXR1cm4gcmVzdWx0Lml0ZXJhdG9yLT52
YWx1ZTsKICAgICB9CiAKICAgICAvLyBMb29rIHVwIHRoZSBncm91cCBpbiB0aGUgZGF0YWJhc2UK
LSAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwID0gbG9hZENhY2hlR3JvdXAobWFuaWZl
c3RVUkwpOworICAgIGF1dG8qIGdyb3VwID0gbG9hZENhY2hlR3JvdXAobWFuaWZlc3RVUkwpOwog
ICAgIAogICAgIC8vIElmIHRoZSBncm91cCB3YXMgbm90IGZvdW5kIHdlIG5lZWQgdG8gY3JlYXRl
IGl0CiAgICAgaWYgKCFncm91cCkgewogICAgICAgICBncm91cCA9IG5ldyBBcHBsaWNhdGlvbkNh
Y2hlR3JvdXAoKnRoaXMsIG1hbmlmZXN0VVJMKTsKICAgICAgICAgbV9jYWNoZUhvc3RTZXQuYWRk
KHVybEhvc3RIYXNoKG1hbmlmZXN0VVJMKSk7CiAgICAgfQotICAgIAorCiAgICAgcmVzdWx0Lml0
ZXJhdG9yLT52YWx1ZSA9IGdyb3VwOwotICAgIAogICAgIHJldHVybiBncm91cDsKIH0KIApAQCAt
MjQ0LDIwICsyNDAsMTggQEAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBBcHBsaWNhdGlvbkNhY2hl
U3RvcmFnZTo6Y2FjaGVHcm91cEZvclVSTChjb25zdCBVUkwmIHVybCkKICAgICAgICAgaWYgKCFj
YWNoZSkKICAgICAgICAgICAgIGNvbnRpbnVlOwogCi0gICAgICAgIEFwcGxpY2F0aW9uQ2FjaGVS
ZXNvdXJjZSogcmVzb3VyY2UgPSBjYWNoZS0+cmVzb3VyY2VGb3JVUkwodXJsKTsKKyAgICAgICAg
YXV0byogcmVzb3VyY2UgPSBjYWNoZS0+cmVzb3VyY2VGb3JVUkwodXJsKTsKICAgICAgICAgaWYg
KCFyZXNvdXJjZSkKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICBpZiAocmVzb3VyY2Ut
PnR5cGUoKSAmIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6Rm9yZWlnbikKICAgICAgICAgICAg
IGNvbnRpbnVlOwogCi0gICAgICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAgPSBuZXcg
QXBwbGljYXRpb25DYWNoZUdyb3VwKCp0aGlzLCBtYW5pZmVzdFVSTCk7Ci0gICAgICAgIAotICAg
ICAgICBncm91cC0+c2V0U3RvcmFnZUlEKHN0YXRpY19jYXN0PHVuc2lnbmVkPihzdGF0ZW1lbnQu
Z2V0Q29sdW1uSW50NjQoMCkpKTsKLSAgICAgICAgZ3JvdXAtPnNldE5ld2VzdENhY2hlKFdURk1v
dmUoY2FjaGUpKTsKLSAgICAgICAgCi0gICAgICAgIG1fY2FjaGVzSW5NZW1vcnkuc2V0KGdyb3Vw
LT5tYW5pZmVzdFVSTCgpLCBncm91cCk7Ci0gICAgICAgIAotICAgICAgICByZXR1cm4gZ3JvdXA7
CisgICAgICAgIGF1dG8mIGdyb3VwID0gKm5ldyBBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKnRoaXMs
IG1hbmlmZXN0VVJMKTsKKyAgICAgICAgZ3JvdXAuc2V0U3RvcmFnZUlEKHN0YXRpY19jYXN0PHVu
c2lnbmVkPihzdGF0ZW1lbnQuZ2V0Q29sdW1uSW50NjQoMCkpKTsKKyAgICAgICAgZ3JvdXAuc2V0
TmV3ZXN0Q2FjaGUoY2FjaGUucmVsZWFzZU5vbk51bGwoKSk7CisgICAgICAgIG1fY2FjaGVzSW5N
ZW1vcnkuc2V0KGdyb3VwLm1hbmlmZXN0VVJMKCksICZncm91cCk7CisKKyAgICAgICAgcmV0dXJu
ICZncm91cDsKICAgICB9CiAKICAgICBpZiAocmVzdWx0ICE9IFNRTElURV9ET05FKQpAQCAtMzIw
LDE0ICszMTQsMTMgQEAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBBcHBsaWNhdGlvbkNhY2hlU3Rv
cmFnZTo6ZmFsbGJhY2tDYWNoZUdyb3VwRm9yVVJMKGNvbnN0IFUKICAgICAgICAgaWYgKGNhY2hl
LT5yZXNvdXJjZUZvclVSTChmYWxsYmFja1VSTCktPnR5cGUoKSAmIEFwcGxpY2F0aW9uQ2FjaGVS
ZXNvdXJjZTo6Rm9yZWlnbikKICAgICAgICAgICAgIGNvbnRpbnVlOwogCi0gICAgICAgIEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAgPSBuZXcgQXBwbGljYXRpb25DYWNoZUdyb3VwKCp0aGlz
LCBtYW5pZmVzdFVSTCk7Ci0gICAgICAgIAotICAgICAgICBncm91cC0+c2V0U3RvcmFnZUlEKHN0
YXRpY19jYXN0PHVuc2lnbmVkPihzdGF0ZW1lbnQuZ2V0Q29sdW1uSW50NjQoMCkpKTsKLSAgICAg
ICAgZ3JvdXAtPnNldE5ld2VzdENhY2hlKFdURk1vdmUoY2FjaGUpKTsKLSAgICAgICAgCi0gICAg
ICAgIG1fY2FjaGVzSW5NZW1vcnkuc2V0KGdyb3VwLT5tYW5pZmVzdFVSTCgpLCBncm91cCk7Ci0g
ICAgICAgIAotICAgICAgICByZXR1cm4gZ3JvdXA7CisgICAgICAgIGF1dG8mIGdyb3VwID0gKm5l
dyBBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKnRoaXMsIG1hbmlmZXN0VVJMKTsKKyAgICAgICAgZ3Jv
dXAuc2V0U3RvcmFnZUlEKHN0YXRpY19jYXN0PHVuc2lnbmVkPihzdGF0ZW1lbnQuZ2V0Q29sdW1u
SW50NjQoMCkpKTsKKyAgICAgICAgZ3JvdXAuc2V0TmV3ZXN0Q2FjaGUoY2FjaGUucmVsZWFzZU5v
bk51bGwoKSk7CisKKyAgICAgICAgbV9jYWNoZXNJbk1lbW9yeS5zZXQoZ3JvdXAubWFuaWZlc3RV
UkwoKSwgJmdyb3VwKTsKKworICAgICAgICByZXR1cm4gJmdyb3VwOwogICAgIH0KIAogICAgIGlm
IChyZXN1bHQgIT0gU1FMSVRFX0RPTkUpCkBAIC0zMzYsMzMgKzMyOSwzMyBAQCBBcHBsaWNhdGlv
bkNhY2hlR3JvdXAqIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpmYWxsYmFja0NhY2hlR3JvdXBG
b3JVUkwoY29uc3QgVQogICAgIHJldHVybiBudWxscHRyOwogfQogCi12b2lkIEFwcGxpY2F0aW9u
Q2FjaGVTdG9yYWdlOjpjYWNoZUdyb3VwRGVzdHJveWVkKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCog
Z3JvdXApCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpjYWNoZUdyb3VwRGVzdHJveWVk
KEFwcGxpY2F0aW9uQ2FjaGVHcm91cCYgZ3JvdXApCiB7Ci0gICAgaWYgKGdyb3VwLT5pc09ic29s
ZXRlKCkpIHsKLSAgICAgICAgQVNTRVJUKCFncm91cC0+c3RvcmFnZUlEKCkpOwotICAgICAgICBB
U1NFUlQobV9jYWNoZXNJbk1lbW9yeS5nZXQoZ3JvdXAtPm1hbmlmZXN0VVJMKCkpICE9IGdyb3Vw
KTsKKyAgICBpZiAoZ3JvdXAuaXNPYnNvbGV0ZSgpKSB7CisgICAgICAgIEFTU0VSVCghZ3JvdXAu
c3RvcmFnZUlEKCkpOworICAgICAgICBBU1NFUlQobV9jYWNoZXNJbk1lbW9yeS5nZXQoZ3JvdXAu
bWFuaWZlc3RVUkwoKSkgIT0gJmdyb3VwKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAg
IEFTU0VSVChtX2NhY2hlc0luTWVtb3J5LmdldChncm91cC0+bWFuaWZlc3RVUkwoKSkgPT0gZ3Jv
dXApOworICAgIEFTU0VSVChtX2NhY2hlc0luTWVtb3J5LmdldChncm91cC5tYW5pZmVzdFVSTCgp
KSA9PSAmZ3JvdXApOwogCi0gICAgbV9jYWNoZXNJbk1lbW9yeS5yZW1vdmUoZ3JvdXAtPm1hbmlm
ZXN0VVJMKCkpOworICAgIG1fY2FjaGVzSW5NZW1vcnkucmVtb3ZlKGdyb3VwLm1hbmlmZXN0VVJM
KCkpOwogICAgIAogICAgIC8vIElmIHRoZSBjYWNoZSBncm91cCBpcyBoYWxmLWNyZWF0ZWQsIHdl
IGRvbid0IHdhbnQgaXQgaW4gdGhlIHNhdmVkIHNldCAoYXMgaXQgaXMgbm90IHN0b3JlZCBpbiBk
YXRhYmFzZSkuCi0gICAgaWYgKCFncm91cC0+c3RvcmFnZUlEKCkpCi0gICAgICAgIG1fY2FjaGVI
b3N0U2V0LnJlbW92ZSh1cmxIb3N0SGFzaChncm91cC0+bWFuaWZlc3RVUkwoKSkpOworICAgIGlm
ICghZ3JvdXAuc3RvcmFnZUlEKCkpCisgICAgICAgIG1fY2FjaGVIb3N0U2V0LnJlbW92ZSh1cmxI
b3N0SGFzaChncm91cC5tYW5pZmVzdFVSTCgpKSk7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNo
ZVN0b3JhZ2U6OmNhY2hlR3JvdXBNYWRlT2Jzb2xldGUoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBn
cm91cCkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmNhY2hlR3JvdXBNYWRlT2Jzb2xl
dGUoQXBwbGljYXRpb25DYWNoZUdyb3VwJiBncm91cCkKIHsKLSAgICBBU1NFUlQobV9jYWNoZXNJ
bk1lbW9yeS5nZXQoZ3JvdXAtPm1hbmlmZXN0VVJMKCkpID09IGdyb3VwKTsKLSAgICBBU1NFUlQo
bV9jYWNoZUhvc3RTZXQuY29udGFpbnModXJsSG9zdEhhc2goZ3JvdXAtPm1hbmlmZXN0VVJMKCkp
KSk7CisgICAgQVNTRVJUKG1fY2FjaGVzSW5NZW1vcnkuZ2V0KGdyb3VwLm1hbmlmZXN0VVJMKCkp
ID09ICZncm91cCk7CisgICAgQVNTRVJUKG1fY2FjaGVIb3N0U2V0LmNvbnRhaW5zKHVybEhvc3RI
YXNoKGdyb3VwLm1hbmlmZXN0VVJMKCkpKSk7CiAKLSAgICBpZiAoQXBwbGljYXRpb25DYWNoZSog
bmV3ZXN0Q2FjaGUgPSBncm91cC0+bmV3ZXN0Q2FjaGUoKSkKKyAgICBpZiAoYXV0byogbmV3ZXN0
Q2FjaGUgPSBncm91cC5uZXdlc3RDYWNoZSgpKQogICAgICAgICByZW1vdmUobmV3ZXN0Q2FjaGUp
OwogCi0gICAgbV9jYWNoZXNJbk1lbW9yeS5yZW1vdmUoZ3JvdXAtPm1hbmlmZXN0VVJMKCkpOwot
ICAgIG1fY2FjaGVIb3N0U2V0LnJlbW92ZSh1cmxIb3N0SGFzaChncm91cC0+bWFuaWZlc3RVUkwo
KSkpOworICAgIG1fY2FjaGVzSW5NZW1vcnkucmVtb3ZlKGdyb3VwLm1hbmlmZXN0VVJMKCkpOwor
ICAgIG1fY2FjaGVIb3N0U2V0LnJlbW92ZSh1cmxIb3N0SGFzaChncm91cC5tYW5pZmVzdFVSTCgp
KSk7CiB9CiAKIGNvbnN0IFN0cmluZyYgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmNhY2hlRGly
ZWN0b3J5KCkgY29uc3QKQEAgLTk5Niw3ICs5ODksNyBAQCBib29sIEFwcGxpY2F0aW9uQ2FjaGVT
dG9yYWdlOjpjaGVja09yaWdpblF1b3RhKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAsIEFw
cAogICAgIHJldHVybiB0cnVlOwogfQogCi1ib29sIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpz
dG9yZU5ld2VzdENhY2hlKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAsIEFwcGxpY2F0aW9u
Q2FjaGUqIG9sZENhY2hlLCBGYWlsdXJlUmVhc29uJiBmYWlsdXJlUmVhc29uKQorYm9vbCBBcHBs
aWNhdGlvbkNhY2hlU3RvcmFnZTo6c3RvcmVOZXdlc3RDYWNoZShBcHBsaWNhdGlvbkNhY2hlR3Jv
dXAmIGdyb3VwLCBBcHBsaWNhdGlvbkNhY2hlKiBvbGRDYWNoZSwgRmFpbHVyZVJlYXNvbiYgZmFp
bHVyZVJlYXNvbikKIHsKICAgICBvcGVuRGF0YWJhc2UodHJ1ZSk7CiAKQEAgLTEwMTIsMjQgKzEw
MDUsMjQgQEAgYm9vbCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6c3RvcmVOZXdlc3RDYWNoZShB
cHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwLCBBcHAKIAogICAgIC8vIENoZWNrIGlmIHRoaXMg
d291bGQgcmVhY2ggdGhlIHBlci1vcmlnaW4gcXVvdGEuCiAgICAgaW50NjRfdCB0b3RhbFNwYWNl
TmVlZGVkSWdub3JlZDsKLSAgICBpZiAoIWNoZWNrT3JpZ2luUXVvdGEoZ3JvdXAsIG9sZENhY2hl
LCBncm91cC0+bmV3ZXN0Q2FjaGUoKSwgdG90YWxTcGFjZU5lZWRlZElnbm9yZWQpKSB7CisgICAg
aWYgKCFjaGVja09yaWdpblF1b3RhKCZncm91cCwgb2xkQ2FjaGUsIGdyb3VwLm5ld2VzdENhY2hl
KCksIHRvdGFsU3BhY2VOZWVkZWRJZ25vcmVkKSkgewogICAgICAgICBmYWlsdXJlUmVhc29uID0g
T3JpZ2luUXVvdGFSZWFjaGVkOwogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogCiAgICAg
R3JvdXBTdG9yYWdlSURKb3VybmFsIGdyb3VwU3RvcmFnZUlESm91cm5hbDsKLSAgICBpZiAoIWdy
b3VwLT5zdG9yYWdlSUQoKSkgeworICAgIGlmICghZ3JvdXAuc3RvcmFnZUlEKCkpIHsKICAgICAg
ICAgLy8gU3RvcmUgdGhlIGdyb3VwCi0gICAgICAgIGlmICghc3RvcmUoZ3JvdXAsICZncm91cFN0
b3JhZ2VJREpvdXJuYWwpKSB7CisgICAgICAgIGlmICghc3RvcmUoJmdyb3VwLCAmZ3JvdXBTdG9y
YWdlSURKb3VybmFsKSkgewogICAgICAgICAgICAgY2hlY2tGb3JNYXhTaXplUmVhY2hlZCgpOwog
ICAgICAgICAgICAgZmFpbHVyZVJlYXNvbiA9IGlzTWF4aW11bVNpemVSZWFjaGVkKCkgPyBUb3Rh
bFF1b3RhUmVhY2hlZCA6IERpc2tPck9wZXJhdGlvbkZhaWx1cmU7CiAgICAgICAgICAgICByZXR1
cm4gZmFsc2U7CiAgICAgICAgIH0KICAgICB9CiAgICAgCi0gICAgQVNTRVJUKGdyb3VwLT5uZXdl
c3RDYWNoZSgpKTsKLSAgICBBU1NFUlQoIWdyb3VwLT5pc09ic29sZXRlKCkpOwotICAgIEFTU0VS
VCghZ3JvdXAtPm5ld2VzdENhY2hlKCktPnN0b3JhZ2VJRCgpKTsKKyAgICBBU1NFUlQoZ3JvdXAu
bmV3ZXN0Q2FjaGUoKSk7CisgICAgQVNTRVJUKCFncm91cC5pc09ic29sZXRlKCkpOworICAgIEFT
U0VSVCghZ3JvdXAubmV3ZXN0Q2FjaGUoKS0+c3RvcmFnZUlEKCkpOwogICAgIAogICAgIC8vIExv
ZyB0aGUgc3RvcmFnZUlEIGNoYW5nZXMgdG8gdGhlIGluLW1lbW9yeSByZXNvdXJjZSBvYmplY3Rz
LiBUaGUgam91cm5hbAogICAgIC8vIG9iamVjdCB3aWxsIHJvbGwgdGhlbSBiYWNrIGF1dG9tYXRp
Y2FsbHkgaW4gY2FzZSBhIGRhdGFiYXNlIG9wZXJhdGlvbgpAQCAtMTAzNyw3ICsxMDMwLDcgQEAg
Ym9vbCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6c3RvcmVOZXdlc3RDYWNoZShBcHBsaWNhdGlv
bkNhY2hlR3JvdXAqIGdyb3VwLCBBcHAKICAgICBSZXNvdXJjZVN0b3JhZ2VJREpvdXJuYWwgcmVz
b3VyY2VTdG9yYWdlSURKb3VybmFsOwogCiAgICAgLy8gU3RvcmUgdGhlIG5ld2VzdCBjYWNoZQot
ICAgIGlmICghc3RvcmUoZ3JvdXAtPm5ld2VzdENhY2hlKCksICZyZXNvdXJjZVN0b3JhZ2VJREpv
dXJuYWwpKSB7CisgICAgaWYgKCFzdG9yZShncm91cC5uZXdlc3RDYWNoZSgpLCAmcmVzb3VyY2VT
dG9yYWdlSURKb3VybmFsKSkgewogICAgICAgICBjaGVja0Zvck1heFNpemVSZWFjaGVkKCk7CiAg
ICAgICAgIGZhaWx1cmVSZWFzb24gPSBpc01heGltdW1TaXplUmVhY2hlZCgpID8gVG90YWxRdW90
YVJlYWNoZWQgOiBEaXNrT3JPcGVyYXRpb25GYWlsdXJlOwogICAgICAgICByZXR1cm4gZmFsc2U7
CkBAIC0xMDUxLDggKzEwNDQsOCBAQCBib29sIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpzdG9y
ZU5ld2VzdENhY2hlKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAsIEFwcAogICAgICAgICBy
ZXR1cm4gZmFsc2U7CiAgICAgfQogICAgIAotICAgIHN0YXRlbWVudC5iaW5kSW50NjQoMSwgZ3Jv
dXAtPm5ld2VzdENhY2hlKCktPnN0b3JhZ2VJRCgpKTsKLSAgICBzdGF0ZW1lbnQuYmluZEludDY0
KDIsIGdyb3VwLT5zdG9yYWdlSUQoKSk7CisgICAgc3RhdGVtZW50LmJpbmRJbnQ2NCgxLCBncm91
cC5uZXdlc3RDYWNoZSgpLT5zdG9yYWdlSUQoKSk7CisgICAgc3RhdGVtZW50LmJpbmRJbnQ2NCgy
LCBncm91cC5zdG9yYWdlSUQoKSk7CiAgICAgCiAgICAgaWYgKCFleGVjdXRlU3RhdGVtZW50KHN0
YXRlbWVudCkpIHsKICAgICAgICAgZmFpbHVyZVJlYXNvbiA9IERpc2tPck9wZXJhdGlvbkZhaWx1
cmU7CkBAIC0xMDY1LDIyICsxMDU4LDI0IEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6
OnN0b3JlTmV3ZXN0Q2FjaGUoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCwgQXBwCiAgICAg
cmV0dXJuIHRydWU7CiB9CiAKLWJvb2wgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OnN0b3JlTmV3
ZXN0Q2FjaGUoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCkKK2Jvb2wgQXBwbGljYXRpb25D
YWNoZVN0b3JhZ2U6OnN0b3JlTmV3ZXN0Q2FjaGUoQXBwbGljYXRpb25DYWNoZUdyb3VwJiBncm91
cCkKIHsKICAgICAvLyBJZ25vcmUgdGhlIHJlYXNvbiBmb3IgZmFpbGluZywganVzdCBhdHRlbXB0
IHRoZSBzdG9yZS4KICAgICBGYWlsdXJlUmVhc29uIGlnbm9yZWRGYWlsdXJlUmVhc29uOwotICAg
IHJldHVybiBzdG9yZU5ld2VzdENhY2hlKGdyb3VwLCAwLCBpZ25vcmVkRmFpbHVyZVJlYXNvbik7
CisgICAgcmV0dXJuIHN0b3JlTmV3ZXN0Q2FjaGUoZ3JvdXAsIG51bGxwdHIsIGlnbm9yZWRGYWls
dXJlUmVhc29uKTsKIH0KIAotdGVtcGxhdGUgPHR5cGVuYW1lIENoYXJhY3RlclR5cGU+Ci1zdGF0
aWMgaW5saW5lIHZvaWQgcGFyc2VIZWFkZXIoY29uc3QgQ2hhcmFjdGVyVHlwZSogaGVhZGVyLCBz
aXplX3QgaGVhZGVyTGVuZ3RoLCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3RlbXBsYXRl
PHR5cGVuYW1lIENoYXJhY3RlclR5cGU+CitzdGF0aWMgaW5saW5lIHZvaWQgcGFyc2VIZWFkZXIo
Y29uc3QgQ2hhcmFjdGVyVHlwZSogaGVhZGVyLCB1bnNpZ25lZCBoZWFkZXJMZW5ndGgsIFJlc291
cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewotICAgIHNpemVfdCBwb3MgPSBmaW5kKGhlYWRlciwg
aGVhZGVyTGVuZ3RoLCAnOicpOwotICAgIEFTU0VSVChwb3MgIT0gbm90Rm91bmQpOwotICAgIAot
ICAgIFN0cmluZyBoZWFkZXJOYW1lID0gQXRvbWljU3RyaW5nKGhlYWRlciwgcG9zKTsKLSAgICBT
dHJpbmcgaGVhZGVyVmFsdWUgPSBTdHJpbmcoaGVhZGVyICsgcG9zICsgMSwgaGVhZGVyTGVuZ3Ro
IC0gcG9zIC0gMSk7Ci0gICAgCisgICAgQVNTRVJUKGZpbmQoaGVhZGVyLCBoZWFkZXJMZW5ndGgs
ICc6JykgIT0gbm90Rm91bmQpOworICAgIHVuc2lnbmVkIGNvbG9uUG9zaXRpb24gPSBmaW5kKGhl
YWRlciwgaGVhZGVyTGVuZ3RoLCAnOicpOworCisgICAgLy8gU2F2ZSBtZW1vcnkgYnkgcHV0dGlu
ZyB0aGUgaGVhZGVyIG5hbWVzIGludG8gYXRvbWljIHN0cmluZ3Mgc28gZWFjaCBpcyBzdG9yZWQg
b25seSBvbmNlLAorICAgIC8vIGV2ZW4gdGhvdWdoIHRoZSBzZXRIVFRQSGVhZGVyRmllbGQgZnVu
Y3Rpb24gZG9lcyBub3QgcmVxdWlyZSBhbiBhdG9taWMgc3RyaW5nLgorICAgIEF0b21pY1N0cmlu
ZyBoZWFkZXJOYW1lIHsgaGVhZGVyLCBjb2xvblBvc2l0aW9uIH07CisgICAgU3RyaW5nIGhlYWRl
clZhbHVlIHsgaGVhZGVyICsgY29sb25Qb3NpdGlvbiArIDEsIGhlYWRlckxlbmd0aCAtIGNvbG9u
UG9zaXRpb24gLSAxIH07CisKICAgICByZXNwb25zZS5zZXRIVFRQSGVhZGVyRmllbGQoaGVhZGVy
TmFtZSwgaGVhZGVyVmFsdWUpOwogfQogCkBAIC0xMTA3LDcgKzExMDIsNyBAQCBzdGF0aWMgaW5s
aW5lIHZvaWQgcGFyc2VIZWFkZXJzKGNvbnN0IFN0cmluZyYgaGVhZGVycywgUmVzb3VyY2VSZXNw
b25zZSYgcmVzcG9ucwogICAgIH0KIH0KICAgICAKLVBhc3NSZWZQdHI8QXBwbGljYXRpb25DYWNo
ZT4gQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmxvYWRDYWNoZSh1bnNpZ25lZCBzdG9yYWdlSUQp
CitSZWZQdHI8QXBwbGljYXRpb25DYWNoZT4gQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmxvYWRD
YWNoZSh1bnNpZ25lZCBzdG9yYWdlSUQpCiB7CiAgICAgQVNTRVJUKFNRTGl0ZURhdGFiYXNlVHJh
Y2tlcjo6aGFzVHJhbnNhY3Rpb25JblByb2dyZXNzKCkpOwogICAgIFNRTGl0ZVN0YXRlbWVudCBj
YWNoZVN0YXRlbWVudChtX2RhdGFiYXNlLApAQCAtMTQwOCwxMCArMTQwMywxMSBAQCBib29sIEFw
cGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpkZWxldGVDYWNoZUdyb3VwKGNvbnN0IFN0cmluZyYgbWFu
aWZlc3RVUkwpCiAgICAgU1FMaXRlVHJhbnNhY3Rpb25JblByb2dyZXNzQXV0b0NvdW50ZXIgdHJh
bnNhY3Rpb25Db3VudGVyOwogCiAgICAgU1FMaXRlVHJhbnNhY3Rpb24gZGVsZXRlVHJhbnNhY3Rp
b24obV9kYXRhYmFzZSk7CisKICAgICAvLyBDaGVjayB0byBzZWUgaWYgdGhlIGdyb3VwIGlzIGlu
IG1lbW9yeS4KLSAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwID0gbV9jYWNoZXNJbk1l
bW9yeS5nZXQobWFuaWZlc3RVUkwpOworICAgIGF1dG8qIGdyb3VwID0gbV9jYWNoZXNJbk1lbW9y
eS5nZXQobWFuaWZlc3RVUkwpOwogICAgIGlmIChncm91cCkKLSAgICAgICAgY2FjaGVHcm91cE1h
ZGVPYnNvbGV0ZShncm91cCk7CisgICAgICAgIGNhY2hlR3JvdXBNYWRlT2Jzb2xldGUoKmdyb3Vw
KTsKICAgICBlbHNlIHsKICAgICAgICAgLy8gVGhlIGNhY2hlIGdyb3VwIGlzIG5vdCBpbiBtZW1v
cnksIHNvIHJlbW92ZSBpdCBmcm9tIHRoZSBkaXNrLgogICAgICAgICBvcGVuRGF0YWJhc2UoZmFs
c2UpOwpAQCAtMTQyNCw5ICsxNDIwLDkgQEAgYm9vbCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6
ZGVsZXRlQ2FjaGVHcm91cChjb25zdCBTdHJpbmcmIG1hbmlmZXN0VVJMKQogICAgIH0KIAogICAg
IGRlbGV0ZVRyYW5zYWN0aW9uLmNvbW1pdCgpOwotICAgIAorCiAgICAgY2hlY2tGb3JEZWxldGVk
UmVzb3VyY2VzKCk7Ci0gICAgCisKICAgICByZXR1cm4gdHJ1ZTsKIH0KIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZVN0b3JhZ2Uu
aAppbmRleCBlNDhlODY2NzM1MzYyZDk0NzdhOGEyNTEwMDNjYzg2MTUwNTI3ZDE2Li45ZmEyOTJl
ZTUwZmFlZTg5YzM1Yzg2MWE4Zjk5ZmExNmY5MDU0NzZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UuaApAQCAt
MSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDgsIDIwMTAsIDIwMTEgQXBwbGUg
SW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBw
bGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCkBAIC00MSw3ICs0MSw3IEBAIGNsYXNzIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTsKIGNs
YXNzIFVSTDsKIGNsYXNzIFNlY3VyaXR5T3JpZ2luOwogY2xhc3MgU2hhcmVkQnVmZmVyOwotdGVt
cGxhdGUgPGNsYXNzIFQ+IGNsYXNzIFN0b3JhZ2VJREpvdXJuYWw7Cit0ZW1wbGF0ZTx0eXBlbmFt
ZT4gY2xhc3MgU3RvcmFnZUlESm91cm5hbDsKIAogY2xhc3MgQXBwbGljYXRpb25DYWNoZVN0b3Jh
Z2UgOiBwdWJsaWMgUmVmQ291bnRlZDxBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZT4gewogcHVibGlj
OgpAQCAtNzMsMTkgKzczLDE5IEBAIHB1YmxpYzoKIAogICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91
cCogZmluZE9yQ3JlYXRlQ2FjaGVHcm91cChjb25zdCBVUkwmIG1hbmlmZXN0VVJMKTsKICAgICBB
cHBsaWNhdGlvbkNhY2hlR3JvdXAqIGZpbmRJbk1lbW9yeUNhY2hlR3JvdXAoY29uc3QgVVJMJiBt
YW5pZmVzdFVSTCkgY29uc3Q7Ci0gICAgdm9pZCBjYWNoZUdyb3VwRGVzdHJveWVkKEFwcGxpY2F0
aW9uQ2FjaGVHcm91cCopOwotICAgIHZvaWQgY2FjaGVHcm91cE1hZGVPYnNvbGV0ZShBcHBsaWNh
dGlvbkNhY2hlR3JvdXAqKTsKLSAgICAgICAgCi0gICAgYm9vbCBzdG9yZU5ld2VzdENhY2hlKEFw
cGxpY2F0aW9uQ2FjaGVHcm91cCosIEFwcGxpY2F0aW9uQ2FjaGUqIG9sZENhY2hlLCBGYWlsdXJl
UmVhc29uJiBmYWlsdXJlUmVhc29uKTsKLSAgICBib29sIHN0b3JlTmV3ZXN0Q2FjaGUoQXBwbGlj
YXRpb25DYWNoZUdyb3VwKik7IC8vIFVwZGF0ZXMgdGhlIGNhY2hlIGdyb3VwLCBidXQgZG9lc24n
dCByZW1vdmUgb2xkIGNhY2hlLgorICAgIHZvaWQgY2FjaGVHcm91cERlc3Ryb3llZChBcHBsaWNh
dGlvbkNhY2hlR3JvdXAmKTsKKyAgICB2b2lkIGNhY2hlR3JvdXBNYWRlT2Jzb2xldGUoQXBwbGlj
YXRpb25DYWNoZUdyb3VwJik7CisKKyAgICBib29sIHN0b3JlTmV3ZXN0Q2FjaGUoQXBwbGljYXRp
b25DYWNoZUdyb3VwJiwgQXBwbGljYXRpb25DYWNoZSogb2xkQ2FjaGUsIEZhaWx1cmVSZWFzb24m
KTsKKyAgICBib29sIHN0b3JlTmV3ZXN0Q2FjaGUoQXBwbGljYXRpb25DYWNoZUdyb3VwJik7IC8v
IFVwZGF0ZXMgdGhlIGNhY2hlIGdyb3VwLCBidXQgZG9lc24ndCByZW1vdmUgb2xkIGNhY2hlLgog
ICAgIGJvb2wgc3RvcmUoQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiwgQXBwbGljYXRpb25DYWNo
ZSopOwogICAgIGJvb2wgc3RvcmVVcGRhdGVkVHlwZShBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2Uq
LCBBcHBsaWNhdGlvbkNhY2hlKik7CiAKICAgICAvLyBSZW1vdmVzIHRoZSBncm91cCBpZiB0aGUg
Y2FjaGUgdG8gYmUgcmVtb3ZlZCBpcyB0aGUgbmV3ZXN0IG9uZSAoc28sIHN0b3JlTmV3ZXN0Q2Fj
aGUoKSBuZWVkcyB0byBiZSBjYWxsZWQgYmVmb3JlaGFuZCB3aGVuIHVwZGF0aW5nKS4KICAgICB2
b2lkIHJlbW92ZShBcHBsaWNhdGlvbkNhY2hlKik7Ci0gICAgCisKICAgICBXRUJDT1JFX0VYUE9S
VCB2b2lkIGVtcHR5KCk7Ci0gICAgCisKICAgICBib29sIGdldE1hbmlmZXN0VVJMcyhWZWN0b3I8
VVJMPiogdXJscyk7CiAgICAgYm9vbCBjYWNoZUdyb3VwU2l6ZShjb25zdCBTdHJpbmcmIG1hbmlm
ZXN0VVJMLCBpbnQ2NF90KiBzaXplKTsKICAgICBib29sIGRlbGV0ZUNhY2hlR3JvdXAoY29uc3Qg
U3RyaW5nJiBtYW5pZmVzdFVSTCk7CkBAIC0xMDUsMTQgKzEwNSwxNSBAQCBwdWJsaWM6CiAKICAg
ICBzdGF0aWMgaW50NjRfdCB1bmtub3duUXVvdGEoKSB7IHJldHVybiAtMTsgfQogICAgIHN0YXRp
YyBpbnQ2NF90IG5vUXVvdGEoKSB7IHJldHVybiBzdGQ6Om51bWVyaWNfbGltaXRzPGludDY0X3Q+
OjptYXgoKTsgfQorCiBwcml2YXRlOgogICAgIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlKGNvbnN0
IFN0cmluZyYgY2FjaGVEaXJlY3RvcnksIGNvbnN0IFN0cmluZyYgZmxhdEZpbGVTdWJkaXJlY3Rv
cnlOYW1lKTsKIAotICAgIFBhc3NSZWZQdHI8QXBwbGljYXRpb25DYWNoZT4gbG9hZENhY2hlKHVu
c2lnbmVkIHN0b3JhZ2VJRCk7CisgICAgUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+IGxvYWRDYWNo
ZSh1bnNpZ25lZCBzdG9yYWdlSUQpOwogICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogbG9hZENh
Y2hlR3JvdXAoY29uc3QgVVJMJiBtYW5pZmVzdFVSTCk7CiAgICAgCi0gICAgdHlwZWRlZiBTdG9y
YWdlSURKb3VybmFsPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4gUmVzb3VyY2VTdG9yYWdlSURK
b3VybmFsOwotICAgIHR5cGVkZWYgU3RvcmFnZUlESm91cm5hbDxBcHBsaWNhdGlvbkNhY2hlR3Jv
dXA+IEdyb3VwU3RvcmFnZUlESm91cm5hbDsKKyAgICB1c2luZyBSZXNvdXJjZVN0b3JhZ2VJREpv
dXJuYWwgPSBTdG9yYWdlSURKb3VybmFsPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT47CisgICAg
dXNpbmcgR3JvdXBTdG9yYWdlSURKb3VybmFsID0gU3RvcmFnZUlESm91cm5hbDxBcHBsaWNhdGlv
bkNhY2hlR3JvdXA+OwogCiAgICAgYm9vbCBzdG9yZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAqLCBH
cm91cFN0b3JhZ2VJREpvdXJuYWwqKTsKICAgICBib29sIHN0b3JlKEFwcGxpY2F0aW9uQ2FjaGUq
LCBSZXNvdXJjZVN0b3JhZ2VJREpvdXJuYWwqKTsKQEAgLTE1Miw4ICsxNTMsNyBAQCBwcml2YXRl
OgogICAgIC8vIHdlIGtlZXAgYSBoYXNoIHNldCBvZiB0aGUgaG9zdHMgb2YgdGhlIG1hbmlmZXN0
IFVSTHMgb2YgYWxsIG5vbi1vYnNvbGV0ZSBjYWNoZSBncm91cHMuCiAgICAgSGFzaENvdW50ZWRT
ZXQ8dW5zaWduZWQsIEFscmVhZHlIYXNoZWQ+IG1fY2FjaGVIb3N0U2V0OwogICAgIAotICAgIHR5
cGVkZWYgSGFzaE1hcDxTdHJpbmcsIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCo+IENhY2hlR3JvdXBN
YXA7Ci0gICAgQ2FjaGVHcm91cE1hcCBtX2NhY2hlc0luTWVtb3J5OyAvLyBFeGNsdWRlcyBvYnNv
bGV0ZSBjYWNoZSBncm91cHMuCisgICAgSGFzaE1hcDxTdHJpbmcsIEFwcGxpY2F0aW9uQ2FjaGVH
cm91cCo+IG1fY2FjaGVzSW5NZW1vcnk7IC8vIEV4Y2x1ZGVzIG9ic29sZXRlIGNhY2hlIGdyb3Vw
cy4KIAogICAgIGZyaWVuZCBjbGFzcyBXVEY6Ok5ldmVyRGVzdHJveWVkPEFwcGxpY2F0aW9uQ2Fj
aGVTdG9yYWdlPjsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2Fj
aGUvRE9NQXBwbGljYXRpb25DYWNoZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2Fj
aGUvRE9NQXBwbGljYXRpb25DYWNoZS5jcHAKaW5kZXggNGQwZWVmMjI0YzBhYmQxODkxNWIzNjNl
MTUxZTAwMDQ1ZDA5ODkxYy4uZWQ4ZmFkOGY2OTYxMGE3M2VmNWRmMWE3N2UzN2NlZjJlYTQ0NWYw
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0RPTUFwcGxpY2F0
aW9uQ2FjaGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9ET01BcHBs
aWNhdGlvbkNhY2hlLmNwcApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MDgsIDIwMDkgQXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgorICogQ29weXJpZ2h0IChD
KSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgogICoKICAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCkBAIC0yOSwxMTEgKzI5LDg0IEBACiAjaW5jbHVkZSAiQXBwbGlj
YXRpb25DYWNoZUhvc3QuaCIKICNpbmNsdWRlICJEb2N1bWVudC5oIgogI2luY2x1ZGUgIkRvY3Vt
ZW50TG9hZGVyLmgiCi0jaW5jbHVkZSAiRXZlbnQuaCIKLSNpbmNsdWRlICJFdmVudExpc3RlbmVy
LmgiCi0jaW5jbHVkZSAiRXZlbnROYW1lcy5oIgogI2luY2x1ZGUgIkV4Y2VwdGlvbkNvZGUuaCIK
ICNpbmNsdWRlICJGcmFtZS5oIgotI2luY2x1ZGUgIkZyYW1lTG9hZGVyLmgiCiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIAotRE9NQXBwbGljYXRpb25DYWNoZTo6RE9NQXBwbGljYXRpb25DYWNoZShG
cmFtZSogZnJhbWUpCi0gICAgOiBET01XaW5kb3dQcm9wZXJ0eShmcmFtZSkKK0RPTUFwcGxpY2F0
aW9uQ2FjaGU6OkRPTUFwcGxpY2F0aW9uQ2FjaGUoRnJhbWUmIGZyYW1lKQorICAgIDogRE9NV2lu
ZG93UHJvcGVydHkoJmZyYW1lKQogewotICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0KiBjYWNoZUhv
c3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpOwotICAgIGlmIChjYWNoZUhvc3QpCi0gICAgICAg
IGNhY2hlSG9zdC0+c2V0RE9NQXBwbGljYXRpb25DYWNoZSh0aGlzKTsKKyAgICBpZiAoYXV0byog
aG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkpCisgICAgICAgIGhvc3QtPnNldERPTUFwcGxp
Y2F0aW9uQ2FjaGUodGhpcyk7CiB9CiAKIHZvaWQgRE9NQXBwbGljYXRpb25DYWNoZTo6ZGlzY29u
bmVjdEZyYW1lRm9yRG9jdW1lbnRTdXNwZW5zaW9uKCkKIHsKLSAgICBpZiAoQXBwbGljYXRpb25D
YWNoZUhvc3QqIGNhY2hlSG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkpCi0gICAgICAgIGNh
Y2hlSG9zdC0+c2V0RE9NQXBwbGljYXRpb25DYWNoZShudWxscHRyKTsKKyAgICBpZiAoYXV0byog
aG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkpCisgICAgICAgIGhvc3QtPnNldERPTUFwcGxp
Y2F0aW9uQ2FjaGUobnVsbHB0cik7CiAgICAgRE9NV2luZG93UHJvcGVydHk6OmRpc2Nvbm5lY3RG
cmFtZUZvckRvY3VtZW50U3VzcGVuc2lvbigpOwogfQogCiB2b2lkIERPTUFwcGxpY2F0aW9uQ2Fj
aGU6OnJlY29ubmVjdEZyYW1lRnJvbURvY3VtZW50U3VzcGVuc2lvbihGcmFtZSogZnJhbWUpCiB7
CiAgICAgRE9NV2luZG93UHJvcGVydHk6OnJlY29ubmVjdEZyYW1lRnJvbURvY3VtZW50U3VzcGVu
c2lvbihmcmFtZSk7Ci0gICAgaWYgKEFwcGxpY2F0aW9uQ2FjaGVIb3N0KiBjYWNoZUhvc3QgPSBh
cHBsaWNhdGlvbkNhY2hlSG9zdCgpKQotICAgICAgICBjYWNoZUhvc3QtPnNldERPTUFwcGxpY2F0
aW9uQ2FjaGUodGhpcyk7CisgICAgaWYgKGF1dG8qIGhvc3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9z
dCgpKQorICAgICAgICBob3N0LT5zZXRET01BcHBsaWNhdGlvbkNhY2hlKHRoaXMpOwogfQogCiB2
b2lkIERPTUFwcGxpY2F0aW9uQ2FjaGU6OndpbGxEZXN0cm95R2xvYmFsT2JqZWN0SW5GcmFtZSgp
CiB7Ci0gICAgaWYgKEFwcGxpY2F0aW9uQ2FjaGVIb3N0KiBjYWNoZUhvc3QgPSBhcHBsaWNhdGlv
bkNhY2hlSG9zdCgpKQotICAgICAgICBjYWNoZUhvc3QtPnNldERPTUFwcGxpY2F0aW9uQ2FjaGUo
bnVsbHB0cik7CisgICAgaWYgKGF1dG8qIGhvc3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpKQor
ICAgICAgICBob3N0LT5zZXRET01BcHBsaWNhdGlvbkNhY2hlKG51bGxwdHIpOwogICAgIERPTVdp
bmRvd1Byb3BlcnR5Ojp3aWxsRGVzdHJveUdsb2JhbE9iamVjdEluRnJhbWUoKTsKIH0KIAogQXBw
bGljYXRpb25DYWNoZUhvc3QqIERPTUFwcGxpY2F0aW9uQ2FjaGU6OmFwcGxpY2F0aW9uQ2FjaGVI
b3N0KCkgY29uc3QKIHsKLSAgICBpZiAoIW1fZnJhbWUgfHwgIW1fZnJhbWUtPmxvYWRlcigpLmRv
Y3VtZW50TG9hZGVyKCkpCisgICAgaWYgKCFtX2ZyYW1lKQogICAgICAgICByZXR1cm4gbnVsbHB0
cjsKLSAgICByZXR1cm4gbV9mcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKS0+YXBwbGlj
YXRpb25DYWNoZUhvc3QoKTsKKyAgICBhdXRvKiBkb2N1bWVudExvYWRlciA9IG1fZnJhbWUtPmxv
YWRlcigpLmRvY3VtZW50TG9hZGVyKCk7CisgICAgaWYgKCFkb2N1bWVudExvYWRlcikKKyAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CisgICAgcmV0dXJuICZkb2N1bWVudExvYWRlci0+YXBwbGljYXRp
b25DYWNoZUhvc3QoKTsKIH0KIAogdW5zaWduZWQgc2hvcnQgRE9NQXBwbGljYXRpb25DYWNoZTo6
c3RhdHVzKCkgY29uc3QKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdCogY2FjaGVIb3N0ID0g
YXBwbGljYXRpb25DYWNoZUhvc3QoKTsKLSAgICBpZiAoIWNhY2hlSG9zdCkKKyAgICBhdXRvKiBo
b3N0ID0gYXBwbGljYXRpb25DYWNoZUhvc3QoKTsKKyAgICBpZiAoIWhvc3QpCiAgICAgICAgIHJl
dHVybiBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6VU5DQUNIRUQ7Ci0gICAgcmV0dXJuIGNhY2hlSG9z
dC0+c3RhdHVzKCk7CisgICAgcmV0dXJuIGhvc3QtPnN0YXR1cygpOwogfQogCiBFeGNlcHRpb25P
cjx2b2lkPiBET01BcHBsaWNhdGlvbkNhY2hlOjp1cGRhdGUoKQogewotICAgIGF1dG8qIGNhY2hl
SG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7Ci0gICAgaWYgKCFjYWNoZUhvc3QgfHwgIWNh
Y2hlSG9zdC0+dXBkYXRlKCkpCisgICAgYXV0byogaG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCk7CisgICAgaWYgKCFob3N0IHx8ICFob3N0LT51cGRhdGUoKSkKICAgICAgICAgcmV0dXJuIEV4
Y2VwdGlvbiB7IElOVkFMSURfU1RBVEVfRVJSIH07CiAgICAgcmV0dXJuIHsgfTsKIH0KIAogRXhj
ZXB0aW9uT3I8dm9pZD4gRE9NQXBwbGljYXRpb25DYWNoZTo6c3dhcENhY2hlKCkKIHsKLSAgICBh
dXRvKiBjYWNoZUhvc3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpOwotICAgIGlmICghY2FjaGVI
b3N0IHx8ICFjYWNoZUhvc3QtPnN3YXBDYWNoZSgpKQorICAgIGF1dG8qIGhvc3QgPSBhcHBsaWNh
dGlvbkNhY2hlSG9zdCgpOworICAgIGlmICghaG9zdCB8fCAhaG9zdC0+c3dhcENhY2hlKCkpCiAg
ICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJTlZBTElEX1NUQVRFX0VSUiB9OwogICAgIHJldHVy
biB7IH07CiB9CiAKIHZvaWQgRE9NQXBwbGljYXRpb25DYWNoZTo6YWJvcnQoKQogewotICAgIEFw
cGxpY2F0aW9uQ2FjaGVIb3N0KiBjYWNoZUhvc3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpOwot
ICAgIGlmIChjYWNoZUhvc3QpCi0gICAgICAgIGNhY2hlSG9zdC0+YWJvcnQoKTsKKyAgICBpZiAo
YXV0byogaG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkpCisgICAgICAgIGhvc3QtPmFib3J0
KCk7CiB9CiAKIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIERPTUFwcGxpY2F0aW9uQ2FjaGU6OnNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQoKSBjb25zdAogewotICAgIGlmIChtX2ZyYW1lKQotICAgICAg
ICByZXR1cm4gbV9mcmFtZS0+ZG9jdW1lbnQoKTsKLSAgICByZXR1cm4gbnVsbHB0cjsKLX0KLQot
Y29uc3QgQXRvbWljU3RyaW5nJiBET01BcHBsaWNhdGlvbkNhY2hlOjp0b0V2ZW50VHlwZShBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6RXZlbnRJRCBpZCkKLXsKLSAgICBzd2l0Y2ggKGlkKSB7Ci0gICAg
Y2FzZSBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q0hFQ0tJTkdfRVZFTlQ6Ci0gICAgICAgIHJldHVy
biBldmVudE5hbWVzKCkuY2hlY2tpbmdFdmVudDsKLSAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVI
b3N0OjpFUlJPUl9FVkVOVDoKLSAgICAgICAgcmV0dXJuIGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50
OwotICAgIGNhc2UgQXBwbGljYXRpb25DYWNoZUhvc3Q6Ok5PVVBEQVRFX0VWRU5UOgotICAgICAg
ICByZXR1cm4gZXZlbnROYW1lcygpLm5vdXBkYXRlRXZlbnQ7Ci0gICAgY2FzZSBBcHBsaWNhdGlv
bkNhY2hlSG9zdDo6RE9XTkxPQURJTkdfRVZFTlQ6Ci0gICAgICAgIHJldHVybiBldmVudE5hbWVz
KCkuZG93bmxvYWRpbmdFdmVudDsKLSAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpQUk9H
UkVTU19FVkVOVDoKLSAgICAgICAgcmV0dXJuIGV2ZW50TmFtZXMoKS5wcm9ncmVzc0V2ZW50Owot
ICAgIGNhc2UgQXBwbGljYXRpb25DYWNoZUhvc3Q6OlVQREFURVJFQURZX0VWRU5UOgotICAgICAg
ICByZXR1cm4gZXZlbnROYW1lcygpLnVwZGF0ZXJlYWR5RXZlbnQ7Ci0gICAgY2FzZSBBcHBsaWNh
dGlvbkNhY2hlSG9zdDo6Q0FDSEVEX0VWRU5UOgotICAgICAgICByZXR1cm4gZXZlbnROYW1lcygp
LmNhY2hlZEV2ZW50OwotICAgIGNhc2UgQXBwbGljYXRpb25DYWNoZUhvc3Q6Ok9CU09MRVRFX0VW
RU5UOiAgICAgICAgICAgIAotICAgICAgICByZXR1cm4gZXZlbnROYW1lcygpLm9ic29sZXRlRXZl
bnQ7Ci0gICAgfQotICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgIHJldHVybiBldmVudE5h
bWVzKCkuZXJyb3JFdmVudDsKKyAgICBpZiAoIW1fZnJhbWUpCisgICAgICAgIHJldHVybiBudWxs
cHRyOworICAgIHJldHVybiBtX2ZyYW1lLT5kb2N1bWVudCgpOwogfQogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvRE9N
QXBwbGljYXRpb25DYWNoZS5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0RPTUFw
cGxpY2F0aW9uQ2FjaGUuaAppbmRleCAzZjIwZDhjMmI3NTE5NzMyZmFhMWY3ZDBlZTBmOTA0YTk3
ODUwMTlkLi5jZjZkMmE5ZDk5ZjcwNjhjMDZjYzJmNGEyNzExMWUyZGNkYzFlNjc1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25DYWNoZS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9ET01BcHBsaWNhdGlvbkNhY2hl
LmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA4LCAyMDA5IEFwcGxl
IEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOC0yMDE3IEFw
cGxlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucwpAQCAtMjUsNDYgKzI1LDM5IEBACiAKICNwcmFnbWEgb25jZQogCi0jaW5jbHVkZSAiQXBw
bGljYXRpb25DYWNoZUhvc3QuaCIKICNpbmNsdWRlICJET01XaW5kb3dQcm9wZXJ0eS5oIgogI2lu
Y2x1ZGUgIkV2ZW50VGFyZ2V0LmgiCi0jaW5jbHVkZSAiRXhjZXB0aW9uT3IuaCIKLSNpbmNsdWRl
ICJTY3JpcHRXcmFwcGFibGUuaCIKLSNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgotI2luY2x1ZGUg
PHd0Zi90ZXh0L0F0b21pY1N0cmluZ0hhc2guaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitj
bGFzcyBBcHBsaWNhdGlvbkNhY2hlSG9zdDsKIGNsYXNzIEZyYW1lOwotY2xhc3MgVVJMOwogCiBj
bGFzcyBET01BcHBsaWNhdGlvbkNhY2hlIGZpbmFsIDogcHVibGljIFJlZkNvdW50ZWQ8RE9NQXBw
bGljYXRpb25DYWNoZT4sIHB1YmxpYyBFdmVudFRhcmdldFdpdGhJbmxpbmVEYXRhLCBwdWJsaWMg
RE9NV2luZG93UHJvcGVydHkgewogcHVibGljOgotICAgIHN0YXRpYyBSZWY8RE9NQXBwbGljYXRp
b25DYWNoZT4gY3JlYXRlKEZyYW1lKiBmcmFtZSkgeyByZXR1cm4gYWRvcHRSZWYoKm5ldyBET01B
cHBsaWNhdGlvbkNhY2hlKGZyYW1lKSk7IH0KKyAgICBzdGF0aWMgUmVmPERPTUFwcGxpY2F0aW9u
Q2FjaGU+IGNyZWF0ZShGcmFtZSYgZnJhbWUpIHsgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRE9NQXBw
bGljYXRpb25DYWNoZShmcmFtZSkpOyB9CiAgICAgdmlydHVhbCB+RE9NQXBwbGljYXRpb25DYWNo
ZSgpIHsgQVNTRVJUKCFtX2ZyYW1lKTsgfQogCi0gICAgdm9pZCBkaXNjb25uZWN0RnJhbWVGb3JE
b2N1bWVudFN1c3BlbnNpb24oKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlY29ubmVjdEZyYW1lRnJv
bURvY3VtZW50U3VzcGVuc2lvbihGcmFtZSopIG92ZXJyaWRlOwotICAgIHZvaWQgd2lsbERlc3Ry
b3lHbG9iYWxPYmplY3RJbkZyYW1lKCkgb3ZlcnJpZGU7Ci0KICAgICB1bnNpZ25lZCBzaG9ydCBz
dGF0dXMoKSBjb25zdDsKICAgICBFeGNlcHRpb25Pcjx2b2lkPiB1cGRhdGUoKTsKICAgICBFeGNl
cHRpb25Pcjx2b2lkPiBzd2FwQ2FjaGUoKTsKICAgICB2b2lkIGFib3J0KCk7CiAKLSAgICB1c2lu
ZyBSZWZDb3VudGVkPERPTUFwcGxpY2F0aW9uQ2FjaGU+OjpyZWY7Ci0gICAgdXNpbmcgUmVmQ291
bnRlZDxET01BcHBsaWNhdGlvbkNhY2hlPjo6ZGVyZWY7CisgICAgdXNpbmcgUmVmQ291bnRlZDo6
cmVmOworICAgIHVzaW5nIFJlZkNvdW50ZWQ6OmRlcmVmOwogCi0gICAgRXZlbnRUYXJnZXRJbnRl
cmZhY2UgZXZlbnRUYXJnZXRJbnRlcmZhY2UoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBET01B
cHBsaWNhdGlvbkNhY2hlRXZlbnRUYXJnZXRJbnRlcmZhY2VUeXBlOyB9Ci0gICAgU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNvbnN0IG92ZXJyaWRlOwor
cHJpdmF0ZToKKyAgICBleHBsaWNpdCBET01BcHBsaWNhdGlvbkNhY2hlKEZyYW1lJik7CiAKLSAg
ICBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5nJiB0b0V2ZW50VHlwZShBcHBsaWNhdGlvbkNhY2hl
SG9zdDo6RXZlbnRJRCBpZCk7CisgICAgdm9pZCByZWZFdmVudFRhcmdldCgpIGZpbmFsIHsgcmVm
KCk7IH0KKyAgICB2b2lkIGRlcmVmRXZlbnRUYXJnZXQoKSBmaW5hbCB7IGRlcmVmKCk7IH0KIAot
cHJpdmF0ZToKLSAgICBleHBsaWNpdCBET01BcHBsaWNhdGlvbkNhY2hlKEZyYW1lKik7CisgICAg
RXZlbnRUYXJnZXRJbnRlcmZhY2UgZXZlbnRUYXJnZXRJbnRlcmZhY2UoKSBjb25zdCBmaW5hbCB7
IHJldHVybiBET01BcHBsaWNhdGlvbkNhY2hlRXZlbnRUYXJnZXRJbnRlcmZhY2VUeXBlOyB9Cisg
ICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNvbnN0
IGZpbmFsOwogCi0gICAgdm9pZCByZWZFdmVudFRhcmdldCgpIG92ZXJyaWRlIHsgcmVmKCk7IH0K
LSAgICB2b2lkIGRlcmVmRXZlbnRUYXJnZXQoKSBvdmVycmlkZSB7IGRlcmVmKCk7IH0KKyAgICB2
b2lkIGRpc2Nvbm5lY3RGcmFtZUZvckRvY3VtZW50U3VzcGVuc2lvbigpIGZpbmFsOworICAgIHZv
aWQgcmVjb25uZWN0RnJhbWVGcm9tRG9jdW1lbnRTdXNwZW5zaW9uKEZyYW1lKikgZmluYWw7Cisg
ICAgdm9pZCB3aWxsRGVzdHJveUdsb2JhbE9iamVjdEluRnJhbWUoKSBmaW5hbDsKIAogICAgIEFw
cGxpY2F0aW9uQ2FjaGVIb3N0KiBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpIGNvbnN0OwogfTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9NYW5pZmVzdFBhcnNlci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvTWFuaWZlc3RQYXJzZXIuY3BwCmlu
ZGV4IDYwMTE0MWQ2ZmY2NjQ2NTU0NmI4MWMyNGEwZmE4YjliOTFkYzRjOTUuLjVjMTUxMzU5ZGU5
ODNhODFhNzU2MDUzYmJlY2RjZmI4OWI0NTgyNjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9hcHBjYWNoZS9NYW5pZmVzdFBhcnNlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2FwcGNhY2hlL01hbmlmZXN0UGFyc2VyLmNwcApAQCAtMTE5LDggKzExOSw3IEBAIGJv
b2wgcGFyc2VNYW5pZmVzdChjb25zdCBVUkwmIG1hbmlmZXN0VVJMLCBjb25zdCBjaGFyKiBkYXRh
LCBpbnQgbGVuZ3RoLCBNYW5pZmVzCiAgICAgICAgICAgICBpZiAoIXVybC5pc1ZhbGlkKCkpCiAg
ICAgICAgICAgICAgICAgY29udGludWU7CiAKLSAgICAgICAgICAgIGlmICh1cmwuaGFzRnJhZ21l
bnRJZGVudGlmaWVyKCkpCi0gICAgICAgICAgICAgICAgdXJsLnJlbW92ZUZyYWdtZW50SWRlbnRp
ZmllcigpOworICAgICAgICAgICAgdXJsLnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpOwogICAg
ICAgICAgICAgCiAgICAgICAgICAgICBpZiAoIWVxdWFsSWdub3JpbmdBU0NJSUNhc2UodXJsLnBy
b3RvY29sKCksIG1hbmlmZXN0VVJMLnByb3RvY29sKCkpKQogICAgICAgICAgICAgICAgIGNvbnRp
bnVlOwpAQCAtMTUwLDggKzE0OSw3IEBAIGJvb2wgcGFyc2VNYW5pZmVzdChjb25zdCBVUkwmIG1h
bmlmZXN0VVJMLCBjb25zdCBjaGFyKiBkYXRhLCBpbnQgbGVuZ3RoLCBNYW5pZmVzCiAgICAgICAg
ICAgICBVUkwgbmFtZXNwYWNlVVJMKG1hbmlmZXN0VVJMLCBsaW5lLnN1YnN0cmluZygwLCBwIC0g
dXBjb252ZXJ0ZWRMaW5lQ2hhcmFjdGVycykpOwogICAgICAgICAgICAgaWYgKCFuYW1lc3BhY2VV
UkwuaXNWYWxpZCgpKQogICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgICAgaWYg
KG5hbWVzcGFjZVVSTC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSkKLSAgICAgICAgICAgICAgICBu
YW1lc3BhY2VVUkwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CisgICAgICAgICAgICBuYW1l
c3BhY2VVUkwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CiAKICAgICAgICAgICAgIGlmICgh
cHJvdG9jb2xIb3N0QW5kUG9ydEFyZUVxdWFsKG1hbmlmZXN0VVJMLCBuYW1lc3BhY2VVUkwpKQog
ICAgICAgICAgICAgICAgIGNvbnRpbnVlOwpAQCAtMTY4LDggKzE2Niw3IEBAIGJvb2wgcGFyc2VN
YW5pZmVzdChjb25zdCBVUkwmIG1hbmlmZXN0VVJMLCBjb25zdCBjaGFyKiBkYXRhLCBpbnQgbGVu
Z3RoLCBNYW5pZmVzCiAgICAgICAgICAgICBVUkwgZmFsbGJhY2tVUkwobWFuaWZlc3RVUkwsIFN0
cmluZyhmYWxsYmFja1N0YXJ0LCBwIC0gZmFsbGJhY2tTdGFydCkpOwogICAgICAgICAgICAgaWYg
KCFmYWxsYmFja1VSTC5pc1ZhbGlkKCkpCiAgICAgICAgICAgICAgICAgY29udGludWU7Ci0gICAg
ICAgICAgICBpZiAoZmFsbGJhY2tVUkwuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkpCi0gICAgICAg
ICAgICAgICAgZmFsbGJhY2tVUkwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CisgICAgICAg
ICAgICBmYWxsYmFja1VSTC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKIAogICAgICAgICAg
ICAgaWYgKCFwcm90b2NvbEhvc3RBbmRQb3J0QXJlRXF1YWwobWFuaWZlc3RVUkwsIGZhbGxiYWNr
VVJMKSkKICAgICAgICAgICAgICAgICBjb250aW51ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9hcHBjYWNoZS9NYW5pZmVzdFBhcnNlci5oIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2FwcGNhY2hlL01hbmlmZXN0UGFyc2VyLmgKaW5kZXggNjYxMmMwMGY3OTUxN2Q4NmRhY2U0
Mzk3MWIzNWY3YjBhMTZmYTY3NS4uYjI4MjQ5ZWJlNDdmNWQ2NmQyZTIxNDYzOTczMTA2ZjEwY2My
YmY1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL01hbmlmZXN0
UGFyc2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL01hbmlmZXN0UGFy
c2VyLmgKQEAgLTI2LDE4ICsyNiwxOSBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJBcHBs
aWNhdGlvbkNhY2hlLmgiCisjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KIAogbmFtZXNwYWNlIFdl
YkNvcmUgewogCi0gICAgY2xhc3MgVVJMOworY2xhc3MgVVJMOwogCi0gICAgc3RydWN0IE1hbmlm
ZXN0IHsKLSAgICAgICAgVmVjdG9yPFVSTD4gb25saW5lV2hpdGVsaXN0ZWRVUkxzOwotICAgICAg
ICBIYXNoU2V0PFN0cmluZz4gZXhwbGljaXRVUkxzOwotICAgICAgICBGYWxsYmFja1VSTFZlY3Rv
ciBmYWxsYmFja1VSTHM7Ci0gICAgICAgIGJvb2wgYWxsb3dBbGxOZXR3b3JrUmVxdWVzdHM7IC8v
IFdpbGRjYXJkIGZvdW5kIGluIE5FVFdPUksgc2VjdGlvbi4KLSAgICB9Oworc3RydWN0IE1hbmlm
ZXN0IHsKKyAgICBWZWN0b3I8VVJMPiBvbmxpbmVXaGl0ZWxpc3RlZFVSTHM7CisgICAgSGFzaFNl
dDxTdHJpbmc+IGV4cGxpY2l0VVJMczsKKyAgICBGYWxsYmFja1VSTFZlY3RvciBmYWxsYmFja1VS
THM7CisgICAgYm9vbCBhbGxvd0FsbE5ldHdvcmtSZXF1ZXN0czsgLy8gV2lsZGNhcmQgZm91bmQg
aW4gTkVUV09SSyBzZWN0aW9uLgorfTsKIAotICAgIGJvb2wgcGFyc2VNYW5pZmVzdChjb25zdCBV
UkwmIG1hbmlmZXN0VVJMLCBjb25zdCBjaGFyKiBkYXRhLCBpbnQgbGVuZ3RoLCBNYW5pZmVzdCYp
OworYm9vbCBwYXJzZU1hbmlmZXN0KGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwsIGNvbnN0IGNoYXIq
IGRhdGEsIGludCBsZW5ndGgsIE1hbmlmZXN0Jik7CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmUuY3BwIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZS5jcHAKaW5kZXggZTg5YTQ5OWRm
NDA0NDZjMzI2MGJiZmYxYjI4ZGUwZDlhZDk3N2EwZS4uNWUwNWJlMjJjN2Q0ZWE3ZjEyMmJhNDEx
Nzg2OTNmMjVlZDJlMGVkYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hp
dmUvQXJjaGl2ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2
ZS5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA4IEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOC0yMDE3IEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwpAQCAtMzcsMTcgKzM3LDE3IEBAIEFyY2hpdmU6On5BcmNoaXZlKCkKIAogdm9pZCBBcmNoaXZl
OjpjbGVhckFsbFN1YmZyYW1lQXJjaGl2ZXMoKQogewotICAgIFZlY3RvcjxSZWZQdHI8QXJjaGl2
ZT4+IGNsZWFyZWRBcmNoaXZlczsKLSAgICBjbGVhckFsbFN1YmZyYW1lQXJjaGl2ZXNJbXBsKCZj
bGVhcmVkQXJjaGl2ZXMpOworICAgIEhhc2hTZXQ8QXJjaGl2ZSo+IGNsZWFyZWRBcmNoaXZlczsK
KyAgICBjbGVhcmVkQXJjaGl2ZXMuYWRkKHRoaXMpOworICAgIGNsZWFyQWxsU3ViZnJhbWVBcmNo
aXZlcyhjbGVhcmVkQXJjaGl2ZXMpOwogfQogCi12b2lkIEFyY2hpdmU6OmNsZWFyQWxsU3ViZnJh
bWVBcmNoaXZlc0ltcGwoVmVjdG9yPFJlZlB0cjxBcmNoaXZlPj4qIGNsZWFyZWRBcmNoaXZlcykK
K3ZvaWQgQXJjaGl2ZTo6Y2xlYXJBbGxTdWJmcmFtZUFyY2hpdmVzKEhhc2hTZXQ8QXJjaGl2ZSo+
JiBjbGVhcmVkQXJjaGl2ZXMpCiB7CisgICAgQVNTRVJUKGNsZWFyZWRBcmNoaXZlcy5jb250YWlu
cyh0aGlzKSk7CiAgICAgZm9yIChhdXRvJiBhcmNoaXZlIDogbV9zdWJmcmFtZUFyY2hpdmVzKSB7
Ci0gICAgICAgIGlmICghY2xlYXJlZEFyY2hpdmVzLT5jb250YWlucyhhcmNoaXZlKSkgewotICAg
ICAgICAgICAgY2xlYXJlZEFyY2hpdmVzLT5hcHBlbmQoYXJjaGl2ZSk7Ci0gICAgICAgICAgICBh
cmNoaXZlLT5jbGVhckFsbFN1YmZyYW1lQXJjaGl2ZXNJbXBsKGNsZWFyZWRBcmNoaXZlcyk7Ci0g
ICAgICAgIH0KKyAgICAgICAgaWYgKGNsZWFyZWRBcmNoaXZlcy5hZGQoYXJjaGl2ZS5wdHIoKSkp
CisgICAgICAgICAgICBhcmNoaXZlLT5jbGVhckFsbFN1YmZyYW1lQXJjaGl2ZXMoY2xlYXJlZEFy
Y2hpdmVzKTsKICAgICB9CiAgICAgbV9zdWJmcmFtZUFyY2hpdmVzLmNsZWFyKCk7CiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmggYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmgKaW5kZXggZjIwNjU0OTMyMjQyM2E3ZmIy
NDAwZGU1OGM5ZjRhMTkyMmRkYWVlNy4uZmY3NGNlMjgzMWFhNGQyNzM1NDJmMTJkOTkzNzgyNDUx
NjAyZTNjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2
ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmUuaApAQCAtMSw1
ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDggQXBwbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yOSw0MSAr
MjksMzggQEAKICNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAiQXJjaGl2ZVJlc291cmNlLmgiCi0K
LSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+
Ci0jaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KKyNpbmNs
dWRlIDx3dGYvSGFzaFNldC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIEFyY2hp
dmUgOiBwdWJsaWMgUmVmQ291bnRlZDxBcmNoaXZlPiB7CiBwdWJsaWM6Ci0gICAgZW51bSBUeXBl
IHsKLSAgICAgIFdlYkFyY2hpdmUsCi0gICAgICBNSFRNTAotICAgIH07CiAgICAgdmlydHVhbCB+
QXJjaGl2ZSgpOwotICAgIHZpcnR1YWwgVHlwZSB0eXBlKCkgY29uc3QgPSAwOworCisgICAgdmly
dHVhbCBib29sIHNob3VsZExvYWRGcm9tQXJjaGl2ZU9ubHkoKSBjb25zdCA9IDA7CisgICAgdmly
dHVhbCBib29sIHNob3VsZE92ZXJyaWRlQmFzZVVSTCgpIGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFs
IGJvb2wgc2hvdWxkVXNlTWFpblJlc291cmNlRW5jb2RpbmcoKSBjb25zdCA9IDA7CisgICAgdmly
dHVhbCBib29sIHNob3VsZFVzZU1haW5SZXNvdXJjZVVSTCgpIGNvbnN0ID0gMDsKKwogICAgIEFy
Y2hpdmVSZXNvdXJjZSogbWFpblJlc291cmNlKCkgeyByZXR1cm4gbV9tYWluUmVzb3VyY2UuZ2V0
KCk7IH0KLSAgICBjb25zdCBWZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+JiBzdWJyZXNv
dXJjZXMoKSBjb25zdCB7IHJldHVybiBtX3N1YnJlc291cmNlczsgfQotICAgIGNvbnN0IFZlY3Rv
cjxSZWZQdHI8QXJjaGl2ZT4+JiBzdWJmcmFtZUFyY2hpdmVzKCkgY29uc3QgeyByZXR1cm4gbV9z
dWJmcmFtZUFyY2hpdmVzOyB9CisgICAgY29uc3QgVmVjdG9yPFJlZjxBcmNoaXZlUmVzb3VyY2U+
PiYgc3VicmVzb3VyY2VzKCkgY29uc3QgeyByZXR1cm4gbV9zdWJyZXNvdXJjZXM7IH0KKyAgICBj
b25zdCBWZWN0b3I8UmVmPEFyY2hpdmU+PiYgc3ViZnJhbWVBcmNoaXZlcygpIGNvbnN0IHsgcmV0
dXJuIG1fc3ViZnJhbWVBcmNoaXZlczsgfQogCiBwcm90ZWN0ZWQ6CiAgICAgLy8gVGhlc2UgbWV0
aG9kcyBhcmUgbWVhbnQgZm9yIHN1YmNsYXNzZXMgZm9yIGRpZmZlcmVudCBhcmNoaXZlIHR5cGVz
IHRvIGFkZCByZXNvdXJjZXMgaW4gdG8gdGhlIGFyY2hpdmUsCiAgICAgLy8gYW5kIHNob3VsZCBu
b3QgYmUgZXhwb3NlZCBhcyBhcmNoaXZlcyBzaG91bGQgYmUgaW1tdXRhYmxlIHRvIGNsaWVudHMK
LSAgICB2b2lkIHNldE1haW5SZXNvdXJjZShQYXNzUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gbWFp
blJlc291cmNlKSB7IG1fbWFpblJlc291cmNlID0gbWFpblJlc291cmNlOyB9Ci0gICAgdm9pZCBh
ZGRTdWJyZXNvdXJjZShQYXNzUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gc3ViUmVzb3VyY2UpIHsg
bV9zdWJyZXNvdXJjZXMuYXBwZW5kKHN1YlJlc291cmNlKTsgfQotICAgIHZvaWQgYWRkU3ViZnJh
bWVBcmNoaXZlKFBhc3NSZWZQdHI8QXJjaGl2ZT4gc3ViZnJhbWVBcmNoaXZlKSB7IG1fc3ViZnJh
bWVBcmNoaXZlcy5hcHBlbmQoc3ViZnJhbWVBcmNoaXZlKTsgfQorICAgIHZvaWQgc2V0TWFpblJl
c291cmNlKFJlZjxBcmNoaXZlUmVzb3VyY2U+JiYgbWFpblJlc291cmNlKSB7IG1fbWFpblJlc291
cmNlID0gV1RGTW92ZShtYWluUmVzb3VyY2UpOyB9CisgICAgdm9pZCBhZGRTdWJyZXNvdXJjZShS
ZWY8QXJjaGl2ZVJlc291cmNlPiYmIHJlc291cmNlKSB7IG1fc3VicmVzb3VyY2VzLmFwcGVuZChX
VEZNb3ZlKHJlc291cmNlKSk7IH0KKyAgICB2b2lkIGFkZFN1YmZyYW1lQXJjaGl2ZShSZWY8QXJj
aGl2ZT4mJiBzdWJmcmFtZUFyY2hpdmUpIHsgbV9zdWJmcmFtZUFyY2hpdmVzLmFwcGVuZChXVEZN
b3ZlKHN1YmZyYW1lQXJjaGl2ZSkpOyB9CiAKICAgICB2b2lkIGNsZWFyQWxsU3ViZnJhbWVBcmNo
aXZlcygpOwogCiBwcml2YXRlOgotICAgIHZvaWQgY2xlYXJBbGxTdWJmcmFtZUFyY2hpdmVzSW1w
bChWZWN0b3I8UmVmUHRyPEFyY2hpdmU+PiogY2xlYXJlZEFyY2hpdmVzKTsKKyAgICB2b2lkIGNs
ZWFyQWxsU3ViZnJhbWVBcmNoaXZlcyhIYXNoU2V0PEFyY2hpdmUqPiYpOwogCiAgICAgUmVmUHRy
PEFyY2hpdmVSZXNvdXJjZT4gbV9tYWluUmVzb3VyY2U7Ci0gICAgVmVjdG9yPFJlZlB0cjxBcmNo
aXZlUmVzb3VyY2U+PiBtX3N1YnJlc291cmNlczsKLSAgICBWZWN0b3I8UmVmUHRyPEFyY2hpdmU+
PiBtX3N1YmZyYW1lQXJjaGl2ZXM7CisgICAgVmVjdG9yPFJlZjxBcmNoaXZlUmVzb3VyY2U+PiBt
X3N1YnJlc291cmNlczsKKyAgICBWZWN0b3I8UmVmPEFyY2hpdmU+PiBtX3N1YmZyYW1lQXJjaGl2
ZXM7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlRmFjdG9yeS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvYXJjaGl2ZS9BcmNoaXZlRmFjdG9yeS5jcHAKaW5kZXggOTBiNjc5OTUxNTZkYjA4ZWU0
YmU0NzU0ODc1YWRlNWNmYTM2MmQ5Yy4uNDE3YWM0N2E3MzZjZTY1YjIyMzNjMWZjYjU2MmRmNzE2
ZWI2YWJiMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2
ZUZhY3RvcnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmVG
YWN0b3J5LmNwcApAQCAtNDksMzEgKzQ5LDMzIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIHR5cGVk
ZWYgUmVmUHRyPEFyY2hpdmU+IFJhd0RhdGFDcmVhdGlvbkZ1bmN0aW9uKGNvbnN0IFVSTCYsIFNo
YXJlZEJ1ZmZlciYpOwogdHlwZWRlZiBIYXNoTWFwPFN0cmluZywgUmF3RGF0YUNyZWF0aW9uRnVu
Y3Rpb24qLCBBU0NJSUNhc2VJbnNlbnNpdGl2ZUhhc2g+IEFyY2hpdmVNSU1FVHlwZXNNYXA7CiAK
LS8vIFRoZSBjcmVhdGUgZnVuY3Rpb25zIGluIHRoZSBhcmNoaXZlIGNsYXNzZXMgcmV0dXJuIFBh
c3NSZWZQdHIgdG8gY29uY3JldGUgc3ViY2xhc3NlcworLy8gVGhlIGNyZWF0ZSBmdW5jdGlvbnMg
aW4gdGhlIGFyY2hpdmUgY2xhc3NlcyByZXR1cm4gUmVmUHRyIHRvIGNvbmNyZXRlIHN1YmNsYXNz
ZXMKIC8vIG9mIEFyY2hpdmUuIFRoaXMgYWRhcHRvciBtYWtlcyB0aGUgZnVuY3Rpb25zIGhhdmUg
YSB1bmlmb3JtIHJldHVybiB0eXBlLgotdGVtcGxhdGUgPHR5cGVuYW1lIEFyY2hpdmVDbGFzcz4g
c3RhdGljIFJlZlB0cjxBcmNoaXZlPiBhcmNoaXZlRmFjdG9yeUNyZWF0ZShjb25zdCBVUkwmIHVy
bCwgU2hhcmVkQnVmZmVyJiBidWZmZXIpCit0ZW1wbGF0ZTx0eXBlbmFtZSBBcmNoaXZlQ2xhc3M+
IHN0YXRpYyBSZWZQdHI8QXJjaGl2ZT4gYXJjaGl2ZUZhY3RvcnlDcmVhdGUoY29uc3QgVVJMJiB1
cmwsIFNoYXJlZEJ1ZmZlciYgYnVmZmVyKQogewogICAgIHJldHVybiBBcmNoaXZlQ2xhc3M6OmNy
ZWF0ZSh1cmwsIGJ1ZmZlcik7CiB9CiAKLXN0YXRpYyBBcmNoaXZlTUlNRVR5cGVzTWFwJiBhcmNo
aXZlTUlNRVR5cGVzKCkKK3N0YXRpYyBBcmNoaXZlTUlNRVR5cGVzTWFwIGNyZWF0ZUFyY2hpdmVN
SU1FVHlwZXNNYXAoKQogewotICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxBcmNoaXZlTUlNRVR5
cGVzTWFwPiBtaW1lVHlwZXM7Ci0gICAgc3RhdGljIGJvb2wgaW5pdGlhbGl6ZWQgPSBmYWxzZTsK
LQotICAgIGlmIChpbml0aWFsaXplZCkKLSAgICAgICAgcmV0dXJuIG1pbWVUeXBlczsKKyAgICBB
cmNoaXZlTUlNRVR5cGVzTWFwIG1hcDsKIAogI2lmIEVOQUJMRShXRUJfQVJDSElWRSkgJiYgVVNF
KENGKQotICAgIG1pbWVUeXBlcy5nZXQoKS5zZXQoImFwcGxpY2F0aW9uL3gtd2ViYXJjaGl2ZSIs
IGFyY2hpdmVGYWN0b3J5Q3JlYXRlPExlZ2FjeVdlYkFyY2hpdmU+KTsKKyAgICBtYXAuYWRkKEFT
Q0lJTGl0ZXJhbCB7ICJhcHBsaWNhdGlvbi94LXdlYmFyY2hpdmUiIH0sIGFyY2hpdmVGYWN0b3J5
Q3JlYXRlPExlZ2FjeVdlYkFyY2hpdmU+KTsKICNlbmRpZgorCiAjaWYgRU5BQkxFKE1IVE1MKQot
ICAgIG1pbWVUeXBlcy5nZXQoKS5zZXQoIm11bHRpcGFydC9yZWxhdGVkIiwgYXJjaGl2ZUZhY3Rv
cnlDcmVhdGU8TUhUTUxBcmNoaXZlPik7Ci0gICAgbWltZVR5cGVzLmdldCgpLnNldCgiYXBwbGlj
YXRpb24veC1taW1lYXJjaGl2ZSIsIGFyY2hpdmVGYWN0b3J5Q3JlYXRlPE1IVE1MQXJjaGl2ZT4p
OworICAgIG1hcC5hZGQoQVNDSUlMaXRlcmFsIHsgIm11bHRpcGFydC9yZWxhdGVkIiB9LCBhcmNo
aXZlRmFjdG9yeUNyZWF0ZTxNSFRNTEFyY2hpdmU+KTsKKyAgICBtYXAuYWRkKEFTQ0lJTGl0ZXJh
bCB7ICJhcHBsaWNhdGlvbi94LW1pbWVhcmNoaXZlIiB9LCBhcmNoaXZlRmFjdG9yeUNyZWF0ZTxN
SFRNTEFyY2hpdmU+KTsKICNlbmRpZgogCi0gICAgaW5pdGlhbGl6ZWQgPSB0cnVlOwotICAgIHJl
dHVybiBtaW1lVHlwZXM7CisgICAgcmV0dXJuIG1hcDsKK30KKworc3RhdGljIEFyY2hpdmVNSU1F
VHlwZXNNYXAmIGFyY2hpdmVNSU1FVHlwZXMoKQoreworICAgIHN0YXRpYyBOZXZlckRlc3Ryb3ll
ZDxBcmNoaXZlTUlNRVR5cGVzTWFwPiBtYXAgPSBjcmVhdGVBcmNoaXZlTUlNRVR5cGVzTWFwKCk7
CisgICAgcmV0dXJuIG1hcDsKIH0KIAogYm9vbCBBcmNoaXZlRmFjdG9yeTo6aXNBcmNoaXZlTWlt
ZVR5cGUoY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkKQEAgLTgzLDEwICs4NSwxNCBAQCBib29sIEFy
Y2hpdmVGYWN0b3J5Ojppc0FyY2hpdmVNaW1lVHlwZShjb25zdCBTdHJpbmcmIG1pbWVUeXBlKQog
CiBSZWZQdHI8QXJjaGl2ZT4gQXJjaGl2ZUZhY3Rvcnk6OmNyZWF0ZShjb25zdCBVUkwmIHVybCwg
U2hhcmVkQnVmZmVyKiBkYXRhLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlKQogewotICAgIFJhd0Rh
dGFDcmVhdGlvbkZ1bmN0aW9uKiBmdW5jdGlvbiA9IG1pbWVUeXBlLmlzRW1wdHkoKSA/IDAgOiBh
cmNoaXZlTUlNRVR5cGVzKCkuZ2V0KG1pbWVUeXBlKTsKICAgICBpZiAoIWRhdGEpCiAgICAgICAg
IHJldHVybiBudWxscHRyOwotICAgIHJldHVybiBmdW5jdGlvbiA/IGZ1bmN0aW9uKHVybCwgKmRh
dGEpIDogUmVmUHRyPEFyY2hpdmU+KG51bGxwdHIpOworICAgIGlmIChtaW1lVHlwZS5pc0VtcHR5
KCkpCisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIGF1dG8qIGZ1bmN0aW9uID0gYXJjaGl2
ZU1JTUVUeXBlcygpLmdldChtaW1lVHlwZSk7CisgICAgaWYgKCFmdW5jdGlvbikKKyAgICAgICAg
cmV0dXJuIG51bGxwdHI7CisgICAgcmV0dXJuIGZ1bmN0aW9uKHVybCwgKmRhdGEpOwogfQogCiB2
b2lkIEFyY2hpdmVGYWN0b3J5OjpyZWdpc3Rlcktub3duQXJjaGl2ZU1JTUVUeXBlcygpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlUmVzb3VyY2VDb2xs
ZWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmVSZXNvdXJj
ZUNvbGxlY3Rpb24uY3BwCmluZGV4IDk4ZjZjMWUyZmExZDRhNTA5MTMwMGQ1ODc4MDQ0MjExZDhm
N2IyM2IuLmEzNzA1ZWM3N2FkMjYzMWU1OTY4ZDg1YWNlOTdkZjBmZDE1N2MxZWEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rp
b24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmVSZXNvdXJj
ZUNvbGxlY3Rpb24uY3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAw
OCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgt
MjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKQEAgLTI5LDMxICsyOSwyMyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2lu
Y2x1ZGUgIkFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24uaCIKIAotbmFtZXNwYWNlIFdlYkNvcmUg
eworI2luY2x1ZGUgIkFyY2hpdmUuaCIKIAotQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbjo6QXJj
aGl2ZVJlc291cmNlQ29sbGVjdGlvbigpCi17Ci19CituYW1lc3BhY2UgV2ViQ29yZSB7CiAKLXZv
aWQgQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbjo6YWRkQWxsUmVzb3VyY2VzKEFyY2hpdmUqIGFy
Y2hpdmUpCit2b2lkIEFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb246OmFkZEFsbFJlc291cmNlcyhB
cmNoaXZlJiBhcmNoaXZlKQogewotICAgIEFTU0VSVChhcmNoaXZlKTsKLSAgICBpZiAoIWFyY2hp
dmUpCi0gICAgICAgIHJldHVybjsKKyAgICBmb3IgKGF1dG8mIHN1YnJlc291cmNlIDogYXJjaGl2
ZS5zdWJyZXNvdXJjZXMoKSkKKyAgICAgICAgbV9zdWJyZXNvdXJjZXMuc2V0KHN1YnJlc291cmNl
LT51cmwoKSwgc3VicmVzb3VyY2UucHRyKCkpOwogCi0gICAgZm9yIChhdXRvJiBzdWJyZXNvdXJj
ZSA6IGFyY2hpdmUtPnN1YnJlc291cmNlcygpKQotICAgICAgICBtX3N1YnJlc291cmNlcy5zZXQo
c3VicmVzb3VyY2UtPnVybCgpLCBzdWJyZXNvdXJjZS5nZXQoKSk7Ci0KLSAgICBmb3IgKGF1dG8m
IHN1YmZyYW1lQXJjaGl2ZSA6IGFyY2hpdmUtPnN1YmZyYW1lQXJjaGl2ZXMoKSkgeworICAgIGZv
ciAoYXV0byYgc3ViZnJhbWVBcmNoaXZlIDogYXJjaGl2ZS5zdWJmcmFtZUFyY2hpdmVzKCkpIHsK
ICAgICAgICAgQVNTRVJUKHN1YmZyYW1lQXJjaGl2ZS0+bWFpblJlc291cmNlKCkpOwotCi0gICAg
ICAgIGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lID0gc3ViZnJhbWVBcmNoaXZlLT5tYWluUmVzb3Vy
Y2UoKS0+ZnJhbWVOYW1lKCk7Ci0gICAgICAgIGlmICghZnJhbWVOYW1lLmlzTnVsbCgpKQotICAg
ICAgICAgICAgbV9zdWJmcmFtZXMuc2V0KGZyYW1lTmFtZSwgc3ViZnJhbWVBcmNoaXZlLmdldCgp
KTsKLSAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAvLyBJbiB0aGUgTUhUTUwgY2FzZSwgZnJh
bWVzIGRvbid0IGhhdmUgYSBuYW1lIHNvIHdlIHVzZSB0aGUgVVJMIGluc3RlYWQuCi0gICAgICAg
ICAgICBtX3N1YmZyYW1lcy5zZXQoc3ViZnJhbWVBcmNoaXZlLT5tYWluUmVzb3VyY2UoKS0+dXJs
KCkuc3RyaW5nKCksIHN1YmZyYW1lQXJjaGl2ZS5nZXQoKSk7CisgICAgICAgIGF1dG8gZnJhbWVO
YW1lID0gc3ViZnJhbWVBcmNoaXZlLT5tYWluUmVzb3VyY2UoKS0+ZnJhbWVOYW1lKCk7CisgICAg
ICAgIGlmIChmcmFtZU5hbWUuaXNOdWxsKCkpIHsKKyAgICAgICAgICAgIC8vIEluIHRoZSBNSFRN
TCBjYXNlLCBmcmFtZXMgZG9uJ3QgaGF2ZSBhIG5hbWUsIHNvIHdlIHVzZSB0aGUgVVJMIGluc3Rl
YWQuCisgICAgICAgICAgICBmcmFtZU5hbWUgPSBzdWJmcmFtZUFyY2hpdmUtPm1haW5SZXNvdXJj
ZSgpLT51cmwoKS5zdHJpbmcoKTsKICAgICAgICAgfQorICAgICAgICBtX3N1YmZyYW1lcy5zZXQo
ZnJhbWVOYW1lLCBzdWJmcmFtZUFyY2hpdmUucHRyKCkpOwogICAgIH0KIH0KIApAQCAtNjEsMjUg
KzUzLDE5IEBAIHZvaWQgQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbjo6YWRkQWxsUmVzb3VyY2Vz
KEFyY2hpdmUqIGFyY2hpdmUpCiAvLyBDYW4gd2UgY2hhbmdlIHRoZSBkZXNpZ24gaW4gYSBtYW5u
ZXIgdGhhdCB3aWxsIGxldCB1cyBkZXByZWNhdGUgdGhhdCBBUEkgd2l0aG91dCByZWR1Y2luZyBm
dW5jdGlvbmFsaXR5IG9mIHRob3NlIGFwcHM/CiB2b2lkIEFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rp
b246OmFkZFJlc291cmNlKFJlZjxBcmNoaXZlUmVzb3VyY2U+JiYgcmVzb3VyY2UpCiB7Ci0gICAg
Y29uc3QgVVJMJiB1cmwgPSByZXNvdXJjZS0+dXJsKCk7CisgICAgYXV0byYgdXJsID0gcmVzb3Vy
Y2UtPnVybCgpOwogICAgIG1fc3VicmVzb3VyY2VzLnNldCh1cmwsIFdURk1vdmUocmVzb3VyY2Up
KTsKIH0KIAogQXJjaGl2ZVJlc291cmNlKiBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uOjphcmNo
aXZlUmVzb3VyY2VGb3JVUkwoY29uc3QgVVJMJiB1cmwpCiB7Ci0gICAgQXJjaGl2ZVJlc291cmNl
KiByZXNvdXJjZSA9IG1fc3VicmVzb3VyY2VzLmdldCh1cmwpOwotICAgIGlmICghcmVzb3VyY2Up
Ci0gICAgICAgIHJldHVybiBudWxscHRyOwotICAgICAgICAKLSAgICByZXR1cm4gcmVzb3VyY2U7
CisgICAgcmV0dXJuIG1fc3VicmVzb3VyY2VzLmdldCh1cmwpOwogfQogCi1QYXNzUmVmUHRyPEFy
Y2hpdmU+IEFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb246OnBvcFN1YmZyYW1lQXJjaGl2ZShjb25z
dCBTdHJpbmcmIGZyYW1lTmFtZSwgY29uc3QgVVJMJiB1cmwpCitSZWZQdHI8QXJjaGl2ZT4gQXJj
aGl2ZVJlc291cmNlQ29sbGVjdGlvbjo6cG9wU3ViZnJhbWVBcmNoaXZlKGNvbnN0IFN0cmluZyYg
ZnJhbWVOYW1lLCBjb25zdCBVUkwmIHVybCkKIHsKLSAgICBhdXRvIGFyY2hpdmUgPSBtX3N1YmZy
YW1lcy50YWtlKGZyYW1lTmFtZSk7Ci0gICAgaWYgKGFyY2hpdmUpCi0gICAgICAgIHJldHVybiBX
VEZNb3ZlKGFyY2hpdmUpOwotCisgICAgaWYgKGF1dG8gYXJjaGl2ZSA9IG1fc3ViZnJhbWVzLnRh
a2UoZnJhbWVOYW1lKSkKKyAgICAgICAgcmV0dXJuIGFyY2hpdmU7CiAgICAgcmV0dXJuIG1fc3Vi
ZnJhbWVzLnRha2UodXJsLnN0cmluZygpKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5oIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5oCmluZGV4IDVj
NjIwYjUxZjMxZTYzODJkN2VmMWNjMjQ4YjkzMjBmNTZjODk3YTcuLjM3ZGY2OGIzNjZjZmY4NTM5
Yjk1YzgyM2YyZTkxMjRkMzVlYTk5MzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9hcmNoaXZlL0FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uLmgKQEAgLTEsNSArMSw1
IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOC0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMjgsMjQgKzI4LDI5
IEBACiAKICNwcmFnbWEgb25jZQogCi0jaW5jbHVkZSAiQXJjaGl2ZS5oIgotI2luY2x1ZGUgIkFy
Y2hpdmVSZXNvdXJjZS5oIgotI2luY2x1ZGUgIlVSTC5oIgorI2luY2x1ZGUgPHd0Zi9Gb3J3YXJk
Lmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJp
bmcuaD4KKyNpbmNsdWRlIDx3dGYvTm9uY29weWFibGUuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9T
dHJpbmdIYXNoLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3MgQXJjaGl2ZTsKK2Ns
YXNzIEFyY2hpdmVSZXNvdXJjZTsKK2NsYXNzIFVSTDsKKwogY2xhc3MgQXJjaGl2ZVJlc291cmNl
Q29sbGVjdGlvbiB7Ci0gICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoQXJjaGl2ZVJlc291cmNlQ29s
bGVjdGlvbik7IFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworICAgIFdURl9NQUtFX05PTkNPUFlB
QkxFKEFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24pOworICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NB
VEVEOworCiBwdWJsaWM6Ci0gICAgQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbigpOworICAgIEFy
Y2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24oKSA9IGRlZmF1bHQ7CiAKICAgICB2b2lkIGFkZFJlc291
cmNlKFJlZjxBcmNoaXZlUmVzb3VyY2U+JiYpOwotICAgIHZvaWQgYWRkQWxsUmVzb3VyY2VzKEFy
Y2hpdmUqKTsKKyAgICB2b2lkIGFkZEFsbFJlc291cmNlcyhBcmNoaXZlJik7CiAgICAgCiAgICAg
V0VCQ09SRV9FWFBPUlQgQXJjaGl2ZVJlc291cmNlKiBhcmNoaXZlUmVzb3VyY2VGb3JVUkwoY29u
c3QgVVJMJik7Ci0gICAgUGFzc1JlZlB0cjxBcmNoaXZlPiBwb3BTdWJmcmFtZUFyY2hpdmUoY29u
c3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IFVSTCYpOworICAgIFJlZlB0cjxBcmNoaXZlPiBw
b3BTdWJmcmFtZUFyY2hpdmUoY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IFVSTCYpOwog
ICAgIAogcHJpdmF0ZTogICAgCiAgICAgSGFzaE1hcDxTdHJpbmcsIFJlZlB0cjxBcmNoaXZlUmVz
b3VyY2U+PiBtX3N1YnJlc291cmNlczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9hcmNoaXZlL2NmL0xlZ2FjeVdlYkFyY2hpdmUuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2FyY2hpdmUvY2YvTGVnYWN5V2ViQXJjaGl2ZS5jcHAKaW5kZXggZTA0OTA2MzAwODFhMDEyYTQz
MzMyNmJlMjQyMzE4MjdkZGZjZTk3MS4uMzlkODM1MjA2YzcxMDFlZTRjMTkwYzQyOGY0YmNlZGI1
MzEzMzFhZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvY2YvTGVn
YWN5V2ViQXJjaGl2ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvY2Yv
TGVnYWN5V2ViQXJjaGl2ZS5jcHAKQEAgLTgwLDE4ICs4MCwxNiBAQCBSZXRhaW5QdHI8Q0ZEaWN0
aW9uYXJ5UmVmPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRh
dGlvbihBcgogICAgICAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShwcm9wZXJ0eUxpc3QuZ2V0KCks
IExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZU1JTUVUeXBlS2V5LCAwKTsKICAgICAgICAgcmV0dXJu
IHByb3BlcnR5TGlzdDsKICAgICB9Ci0gICAgCi0gICAgUmV0YWluUHRyPENGTXV0YWJsZURpY3Rp
b25hcnlSZWY+IHByb3BlcnR5TGlzdCA9IGFkb3B0Q0YoQ0ZEaWN0aW9uYXJ5Q3JlYXRlTXV0YWJs
ZSgwLCA2LCAwLCAma0NGVHlwZURpY3Rpb25hcnlWYWx1ZUNhbGxCYWNrcykpOwotICAgIAorCisg
ICAgYXV0byBwcm9wZXJ0eUxpc3QgPSBhZG9wdENGKENGRGljdGlvbmFyeUNyZWF0ZU11dGFibGUo
MCwgNiwgMCwgJmtDRlR5cGVEaWN0aW9uYXJ5VmFsdWVDYWxsQmFja3MpKTsKKwogICAgIC8vIFJl
c291cmNlIGRhdGEgY2FuIGJlIGVtcHR5LCBidXQgbXVzdCBiZSByZXByZXNlbnRlZCBieSBhbiBl
bXB0eSBDRkRhdGFSZWYKLSAgICBTaGFyZWRCdWZmZXImIGRhdGEgPSByZXNvdXJjZS0+ZGF0YSgp
OwotICAgIFJldGFpblB0cjxDRkRhdGFSZWY+IGNmRGF0YTsKLSAgICBjZkRhdGEgPSBkYXRhLmNy
ZWF0ZUNGRGF0YSgpOworICAgIGF1dG8mIGRhdGEgPSByZXNvdXJjZS0+ZGF0YSgpOworCisgICAg
Q0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJvcGVydHlMaXN0LmdldCgpLCBMZWdhY3lXZWJBcmNoaXZl
UmVzb3VyY2VEYXRhS2V5LCBkYXRhLmNyZWF0ZUNGRGF0YSgpLmdldCgpKTsKIAotICAgIENGRGlj
dGlvbmFyeVNldFZhbHVlKHByb3BlcnR5TGlzdC5nZXQoKSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291
cmNlRGF0YUtleSwgY2ZEYXRhLmdldCgpKTsKLSAgICAKICAgICAvLyBSZXNvdXJjZSBVUkwgY2Fu
bm90IGJlIG51bGwKLSAgICBpZiAoUmV0YWluUHRyPENGU3RyaW5nUmVmPiBjZlVSTCA9IHJlc291
cmNlLT51cmwoKS5zdHJpbmcoKS5jcmVhdGVDRlN0cmluZygpKQorICAgIGlmIChhdXRvIGNmVVJM
ID0gcmVzb3VyY2UtPnVybCgpLnN0cmluZygpLmNyZWF0ZUNGU3RyaW5nKCkpCiAgICAgICAgIENG
RGljdGlvbmFyeVNldFZhbHVlKHByb3BlcnR5TGlzdC5nZXQoKSwgTGVnYWN5V2ViQXJjaGl2ZVJl
c291cmNlVVJMS2V5LCBjZlVSTC5nZXQoKSk7CiAgICAgZWxzZSB7CiAgICAgICAgIExPRyhBcmNo
aXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBOVUxMIHJlc291cmNlIFVSTCBpcyBpbnZhbGlkIC0g
cmV0dXJuaW5nIG51bGwgcHJvcGVydHkgbGlzdCIpOwpAQCAtOTksNDIgKzk3LDQxIEBAIFJldGFp
blB0cjxDRkRpY3Rpb25hcnlSZWY+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVByb3BlcnR5TGlz
dFJlcHJlc2VudGF0aW9uKEFyCiAgICAgfQogCiAgICAgLy8gRnJhbWVOYW1lIHNob3VsZCBiZSBs
ZWZ0IG91dCBpZiBlbXB0eSBmb3Igc3VicmVzb3VyY2VzLCBidXQgYWx3YXlzIGluY2x1ZGVkIGZv
ciBtYWluIHJlc291cmNlcwotICAgIGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lKHJlc291cmNlLT5m
cmFtZU5hbWUoKSk7CisgICAgYXV0byYgZnJhbWVOYW1lID0gcmVzb3VyY2UtPmZyYW1lTmFtZSgp
OwogICAgIGlmICghZnJhbWVOYW1lLmlzRW1wdHkoKSB8fCBpc01haW5SZXNvdXJjZSkKICAgICAg
ICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJvcGVydHlMaXN0LmdldCgpLCBMZWdhY3lXZWJBcmNo
aXZlUmVzb3VyY2VGcmFtZU5hbWVLZXksIGZyYW1lTmFtZS5jcmVhdGVDRlN0cmluZygpLmdldCgp
KTsKLSAgICAKKwogICAgIC8vIFNldCBNSU1FVHlwZSwgVGV4dEVuY29kaW5nTmFtZSwgYW5kIFJl
c291cmNlUmVzcG9uc2Ugb25seSBpZiB0aGV5IGFjdHVhbGx5IGV4aXN0Ci0gICAgY29uc3QgU3Ry
aW5nJiBtaW1lVHlwZShyZXNvdXJjZS0+bWltZVR5cGUoKSk7CisgICAgYXV0byYgbWltZVR5cGUg
PSByZXNvdXJjZS0+bWltZVR5cGUoKTsKICAgICBpZiAoIW1pbWVUeXBlLmlzRW1wdHkoKSkKICAg
ICAgICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJvcGVydHlMaXN0LmdldCgpLCBMZWdhY3lXZWJB
cmNoaXZlUmVzb3VyY2VNSU1FVHlwZUtleSwgbWltZVR5cGUuY3JlYXRlQ0ZTdHJpbmcoKS5nZXQo
KSk7Ci0gICAgCi0gICAgY29uc3QgU3RyaW5nJiB0ZXh0RW5jb2RpbmcocmVzb3VyY2UtPnRleHRF
bmNvZGluZygpKTsKKworICAgIGF1dG8mIHRleHRFbmNvZGluZyA9IHJlc291cmNlLT50ZXh0RW5j
b2RpbmcoKTsKICAgICBpZiAoIXRleHRFbmNvZGluZy5pc0VtcHR5KCkpCiAgICAgICAgIENGRGlj
dGlvbmFyeVNldFZhbHVlKHByb3BlcnR5TGlzdC5nZXQoKSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291
cmNlVGV4dEVuY29kaW5nTmFtZUtleSwgdGV4dEVuY29kaW5nLmNyZWF0ZUNGU3RyaW5nKCkuZ2V0
KCkpOwogCiAgICAgLy8gRG9uJ3QgaW5jbHVkZSB0aGUgcmVzb3VyY2UgcmVzcG9uc2UgZm9yIHRo
ZSBtYWluIHJlc291cmNlCiAgICAgaWYgKCFpc01haW5SZXNvdXJjZSkgewotICAgICAgICBSZXRh
aW5QdHI8Q0ZEYXRhUmVmPiByZXNvdXJjZVJlc3BvbnNlRGF0YSA9IGNyZWF0ZVByb3BlcnR5TGlz
dFJlcHJlc2VudGF0aW9uKHJlc291cmNlLT5yZXNwb25zZSgpKTsKLSAgICAgICAgaWYgKHJlc291
cmNlUmVzcG9uc2VEYXRhKQorICAgICAgICBpZiAoYXV0byByZXNvdXJjZVJlc3BvbnNlRGF0YSA9
IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKHJlc291cmNlLT5yZXNwb25zZSgpKSkK
ICAgICAgICAgICAgIENGRGljdGlvbmFyeVNldFZhbHVlKHByb3BlcnR5TGlzdC5nZXQoKSwgTGVn
YWN5V2ViQXJjaGl2ZVJlc291cmNlUmVzcG9uc2VLZXksIHJlc291cmNlUmVzcG9uc2VEYXRhLmdl
dCgpKTsgICAgCiAgICAgfQogICAgIAogICAgIHJldHVybiBwcm9wZXJ0eUxpc3Q7CiB9CiAKLVJl
dGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVByb3BlcnR5
TGlzdFJlcHJlc2VudGF0aW9uKEFyY2hpdmUqIGFyY2hpdmUpCitSZXRhaW5QdHI8Q0ZEaWN0aW9u
YXJ5UmVmPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlv
bihBcmNoaXZlJiBhcmNoaXZlKQogewotICAgIFJldGFpblB0cjxDRk11dGFibGVEaWN0aW9uYXJ5
UmVmPiBwcm9wZXJ0eUxpc3QgPSBhZG9wdENGKENGRGljdGlvbmFyeUNyZWF0ZU11dGFibGUoMCwg
MywgMCwgJmtDRlR5cGVEaWN0aW9uYXJ5VmFsdWVDYWxsQmFja3MpKTsKLSAgICAKLSAgICBSZXRh
aW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBtYWluUmVzb3VyY2VEaWN0ID0gY3JlYXRlUHJvcGVydHlM
aXN0UmVwcmVzZW50YXRpb24oYXJjaGl2ZS0+bWFpblJlc291cmNlKCksIE1haW5SZXNvdXJjZSk7
CisgICAgYXV0byBwcm9wZXJ0eUxpc3QgPSBhZG9wdENGKENGRGljdGlvbmFyeUNyZWF0ZU11dGFi
bGUoMCwgMywgMCwgJmtDRlR5cGVEaWN0aW9uYXJ5VmFsdWVDYWxsQmFja3MpKTsKKworICAgIGF1
dG8gbWFpblJlc291cmNlRGljdCA9IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKGFy
Y2hpdmUubWFpblJlc291cmNlKCksIE1haW5SZXNvdXJjZSk7CiAgICAgQVNTRVJUKG1haW5SZXNv
dXJjZURpY3QpOwogICAgIGlmICghbWFpblJlc291cmNlRGljdCkKICAgICAgICAgcmV0dXJuIG51
bGxwdHI7CiAgICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJvcGVydHlMaXN0LmdldCgpLCBMZWdh
Y3lXZWJBcmNoaXZlTWFpblJlc291cmNlS2V5LCBtYWluUmVzb3VyY2VEaWN0LmdldCgpKTsKIAot
ICAgIFJldGFpblB0cjxDRk11dGFibGVBcnJheVJlZj4gc3VicmVzb3VyY2VzQXJyYXkgPSBhZG9w
dENGKENGQXJyYXlDcmVhdGVNdXRhYmxlKDAsIGFyY2hpdmUtPnN1YnJlc291cmNlcygpLnNpemUo
KSwgJmtDRlR5cGVBcnJheUNhbGxCYWNrcykpOwotICAgIGZvciAoYXV0byYgcmVzb3VyY2UgOiBh
cmNoaXZlLT5zdWJyZXNvdXJjZXMoKSkgewotICAgICAgICBpZiAoUmV0YWluUHRyPENGRGljdGlv
bmFyeVJlZj4gc3VicmVzb3VyY2UgPSBjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihy
ZXNvdXJjZS5nZXQoKSwgU3VicmVzb3VyY2UpKQorICAgIGF1dG8gc3VicmVzb3VyY2VzQXJyYXkg
PSBhZG9wdENGKENGQXJyYXlDcmVhdGVNdXRhYmxlKDAsIGFyY2hpdmUuc3VicmVzb3VyY2VzKCku
c2l6ZSgpLCAma0NGVHlwZUFycmF5Q2FsbEJhY2tzKSk7CisgICAgZm9yIChhdXRvJiByZXNvdXJj
ZSA6IGFyY2hpdmUuc3VicmVzb3VyY2VzKCkpIHsKKyAgICAgICAgaWYgKGF1dG8gc3VicmVzb3Vy
Y2UgPSBjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihyZXNvdXJjZS5wdHIoKSwgU3Vi
cmVzb3VyY2UpKQogICAgICAgICAgICAgQ0ZBcnJheUFwcGVuZFZhbHVlKHN1YnJlc291cmNlc0Fy
cmF5LmdldCgpLCBzdWJyZXNvdXJjZS5nZXQoKSk7CiAgICAgICAgIGVsc2UKICAgICAgICAgICAg
IExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBGYWlsZWQgdG8gY3JlYXRlIHByb3Bl
cnR5IGxpc3QgZm9yIHN1YnJlc291cmNlIik7CkBAIC0xNDIsOSArMTM5LDkgQEAgUmV0YWluUHRy
PENGRGljdGlvbmFyeVJlZj4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlUHJvcGVydHlMaXN0UmVw
cmVzZW50YXRpb24oQXIKICAgICBpZiAoQ0ZBcnJheUdldENvdW50KHN1YnJlc291cmNlc0FycmF5
LmdldCgpKSkKICAgICAgICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJvcGVydHlMaXN0LmdldCgp
LCBMZWdhY3lXZWJBcmNoaXZlU3VicmVzb3VyY2VzS2V5LCBzdWJyZXNvdXJjZXNBcnJheS5nZXQo
KSk7CiAKLSAgICBSZXRhaW5QdHI8Q0ZNdXRhYmxlQXJyYXlSZWY+IHN1YmZyYW1lc0FycmF5ID0g
YWRvcHRDRihDRkFycmF5Q3JlYXRlTXV0YWJsZSgwLCBhcmNoaXZlLT5zdWJmcmFtZUFyY2hpdmVz
KCkuc2l6ZSgpLCAma0NGVHlwZUFycmF5Q2FsbEJhY2tzKSk7Ci0gICAgZm9yIChhdXRvJiBzdWJm
cmFtZSA6IGFyY2hpdmUtPnN1YmZyYW1lQXJjaGl2ZXMoKSkgewotICAgICAgICBpZiAoUmV0YWlu
UHRyPENGRGljdGlvbmFyeVJlZj4gc3ViZnJhbWVBcmNoaXZlID0gY3JlYXRlUHJvcGVydHlMaXN0
UmVwcmVzZW50YXRpb24oc3ViZnJhbWUuZ2V0KCkpKQorICAgIGF1dG8gc3ViZnJhbWVzQXJyYXkg
PSBhZG9wdENGKENGQXJyYXlDcmVhdGVNdXRhYmxlKDAsIGFyY2hpdmUuc3ViZnJhbWVBcmNoaXZl
cygpLnNpemUoKSwgJmtDRlR5cGVBcnJheUNhbGxCYWNrcykpOworICAgIGZvciAoYXV0byYgc3Vi
ZnJhbWUgOiBhcmNoaXZlLnN1YmZyYW1lQXJjaGl2ZXMoKSkgeworICAgICAgICBpZiAoYXV0byBz
dWJmcmFtZUFyY2hpdmUgPSBjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihzdWJmcmFt
ZS5nZXQoKSkpCiAgICAgICAgICAgICBDRkFycmF5QXBwZW5kVmFsdWUoc3ViZnJhbWVzQXJyYXku
Z2V0KCksIHN1YmZyYW1lQXJjaGl2ZS5nZXQoKSk7CiAgICAgICAgIGVsc2UKICAgICAgICAgICAg
IExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBGYWlsZWQgdG8gY3JlYXRlIHByb3Bl
cnR5IGxpc3QgZm9yIHN1YmZyYW1lIGFyY2hpdmUiKTsKQEAgLTE2MCwxMyArMTU3LDEzIEBAIFJl
c291cmNlUmVzcG9uc2UgTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlUmVzb3VyY2VSZXNwb25zZUZy
b21Qcm9wZXJ0eUxpc3REYXRhKENGCiAgICAgQVNTRVJUKGRhdGEpOwogICAgIGlmICghZGF0YSkK
ICAgICAgICAgcmV0dXJuIFJlc291cmNlUmVzcG9uc2UoKTsKLSAgICAKKwogICAgIC8vIElmIHRo
ZSBSZXNvdXJjZVJlc3BvbnNlVmVyc2lvbiAocGFzc2VkIGluIGFzIHJlc3BvbnNlRGF0YVR5cGUp
IGV4aXN0cyBhdCBhbGwsIHRoaXMgaXMgYSAibmV3IiB3ZWIgYXJjaGl2ZSB0aGF0IHdlCiAgICAg
Ly8gY2FuIHBhcnNlIHdlbGwgaW4gYSBjcm9zcyBwbGF0Zm9ybSBtYW5uZXIgSWYgaXQgZG9lc24n
dCBleGlzdCwgd2Ugd2lsbCBhc3N1bWUgdGhpcyBpcyBhbiAib2xkIiB3ZWIgYXJjaGl2ZSB3aXRo
LAogICAgIC8vIE5TVVJMUmVzcG9uc2Ugb2JqZWN0cyBpbiBpdCBhbmQgcGFyc2UgdGhlIFJlc291
cmNlUmVzcG9uc2UgYXMgc3VjaC4KICAgICBpZiAoIXJlc3BvbnNlRGF0YVR5cGUpCiAgICAgICAg
IHJldHVybiBjcmVhdGVSZXNvdXJjZVJlc3BvbnNlRnJvbU1hY0FyY2hpdmVkRGF0YShkYXRhKTsK
LSAgICAgICAgCisKICAgICAvLyBGSVhNRTogUGFyc2UgdGhlICJuZXciIGZvcm1hdCB0aGF0IHRo
ZSBhYm92ZSBjb21tZW50IHJlZmVyZW5jZXMgaGVyZS4gVGhpcyBmb3JtYXQgZG9lc24ndCBleGlz
dCB5ZXQuCiAgICAgcmV0dXJuIFJlc291cmNlUmVzcG9uc2UoKTsKIH0KQEAgLTE3Niw0NyArMTcz
LDQ2IEBAIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVJl
c291cmNlKENGRGljdGlvbmFyeVJlZiBkaWN0aW9uCiAgICAgQVNTRVJUKGRpY3Rpb25hcnkpOwog
ICAgIGlmICghZGljdGlvbmFyeSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgICAgIAot
ICAgIENGRGF0YVJlZiByZXNvdXJjZURhdGEgPSBzdGF0aWNfY2FzdDxDRkRhdGFSZWY+KENGRGlj
dGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZURhdGFL
ZXkpKTsKKworICAgIGF1dG8gcmVzb3VyY2VEYXRhID0gc3RhdGljX2Nhc3Q8Q0ZEYXRhUmVmPihD
RkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VE
YXRhS2V5KSk7CiAgICAgaWYgKHJlc291cmNlRGF0YSAmJiBDRkdldFR5cGVJRChyZXNvdXJjZURh
dGEpICE9IENGRGF0YUdldFR5cGVJRCgpKSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2Fj
eVdlYkFyY2hpdmUgLSBSZXNvdXJjZSBkYXRhIGlzIG5vdCBvZiB0eXBlIENGRGF0YSwgY2Fubm90
IGNyZWF0ZSBpbnZhbGlkIHJlc291cmNlIik7CiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAg
IH0KLSAgICAKLSAgICBDRlN0cmluZ1JlZiBmcmFtZU5hbWUgPSBzdGF0aWNfY2FzdDxDRlN0cmlu
Z1JlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVJl
c291cmNlRnJhbWVOYW1lS2V5KSk7CisKKyAgICBhdXRvIGZyYW1lTmFtZSA9IHN0YXRpY19jYXN0
PENGU3RyaW5nUmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBMZWdhY3lXZWJB
cmNoaXZlUmVzb3VyY2VGcmFtZU5hbWVLZXkpKTsKICAgICBpZiAoZnJhbWVOYW1lICYmIENGR2V0
VHlwZUlEKGZyYW1lTmFtZSkgIT0gQ0ZTdHJpbmdHZXRUeXBlSUQoKSkgewogICAgICAgICBMT0co
QXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZlIC0gRnJhbWUgbmFtZSBpcyBub3Qgb2YgdHlwZSBD
RlN0cmluZywgY2Fubm90IGNyZWF0ZSBpbnZhbGlkIHJlc291cmNlIik7CiAgICAgICAgIHJldHVy
biBudWxscHRyOwogICAgIH0KLSAgICAKLSAgICBDRlN0cmluZ1JlZiBtaW1lVHlwZSA9IHN0YXRp
Y19jYXN0PENGU3RyaW5nUmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBMZWdh
Y3lXZWJBcmNoaXZlUmVzb3VyY2VNSU1FVHlwZUtleSkpOworCisgICAgYXV0byBtaW1lVHlwZSA9
IHN0YXRpY19jYXN0PENGU3RyaW5nUmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5
LCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VNSU1FVHlwZUtleSkpOwogICAgIGlmIChtaW1lVHlw
ZSAmJiBDRkdldFR5cGVJRChtaW1lVHlwZSkgIT0gQ0ZTdHJpbmdHZXRUeXBlSUQoKSkgewogICAg
ICAgICBMT0coQXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZlIC0gTUlNRSB0eXBlIGlzIG5vdCBv
ZiB0eXBlIENGU3RyaW5nLCBjYW5ub3QgY3JlYXRlIGludmFsaWQgcmVzb3VyY2UiKTsKICAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQotICAgIAotICAgIENGU3RyaW5nUmVmIHVybCA9IHN0
YXRpY19jYXN0PENGU3RyaW5nUmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBM
ZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VVUkxLZXkpKTsKKworICAgIGF1dG8gdXJsID0gc3RhdGlj
X2Nhc3Q8Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2Fj
eVdlYkFyY2hpdmVSZXNvdXJjZVVSTEtleSkpOwogICAgIGlmICh1cmwgJiYgQ0ZHZXRUeXBlSUQo
dXJsKSAhPSBDRlN0cmluZ0dldFR5cGVJRCgpKSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxl
Z2FjeVdlYkFyY2hpdmUgLSBVUkwgaXMgbm90IG9mIHR5cGUgQ0ZTdHJpbmcsIGNhbm5vdCBjcmVh
dGUgaW52YWxpZCByZXNvdXJjZSIpOwogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICB9Ci0g
ICAgCi0gICAgQ0ZTdHJpbmdSZWYgdGV4dEVuY29kaW5nID0gc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdS
ZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNv
dXJjZVRleHRFbmNvZGluZ05hbWVLZXkpKTsKKworICAgIGF1dG8gdGV4dEVuY29kaW5nID0gc3Rh
dGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExl
Z2FjeVdlYkFyY2hpdmVSZXNvdXJjZVRleHRFbmNvZGluZ05hbWVLZXkpKTsKICAgICBpZiAodGV4
dEVuY29kaW5nICYmIENGR2V0VHlwZUlEKHRleHRFbmNvZGluZykgIT0gQ0ZTdHJpbmdHZXRUeXBl
SUQoKSkgewogICAgICAgICBMT0coQXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZlIC0gVGV4dCBl
bmNvZGluZyBpcyBub3Qgb2YgdHlwZSBDRlN0cmluZywgY2Fubm90IGNyZWF0ZSBpbnZhbGlkIHJl
c291cmNlIik7CiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIH0KIAogICAgIFJlc291cmNl
UmVzcG9uc2UgcmVzcG9uc2U7Ci0gICAgCi0gICAgQ0ZEYXRhUmVmIHJlc291cmNlUmVzcG9uc2VE
YXRhID0gc3RhdGljX2Nhc3Q8Q0ZEYXRhUmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9u
YXJ5LCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VSZXNwb25zZUtleSkpOwotICAgIGlmIChyZXNv
dXJjZVJlc3BvbnNlRGF0YSkgeworCisgICAgaWYgKGF1dG8gcmVzb3VyY2VSZXNwb25zZURhdGEg
PSBzdGF0aWNfY2FzdDxDRkRhdGFSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnks
IExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZVJlc3BvbnNlS2V5KSkpIHsKICAgICAgICAgaWYgKENG
R2V0VHlwZUlEKHJlc291cmNlUmVzcG9uc2VEYXRhKSAhPSBDRkRhdGFHZXRUeXBlSUQoKSkgewog
ICAgICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIFJlc291cmNlIHJl
c3BvbnNlIGRhdGEgaXMgbm90IG9mIHR5cGUgQ0ZEYXRhLCBjYW5ub3QgY3JlYXRlIGludmFsaWQg
cmVzb3VyY2UiKTsKICAgICAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgICAgICB9CiAgICAg
ICAgIAotICAgICAgICBDRlN0cmluZ1JlZiByZXNvdXJjZVJlc3BvbnNlVmVyc2lvbiA9IHN0YXRp
Y19jYXN0PENGU3RyaW5nUmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBMZWdh
Y3lXZWJBcmNoaXZlUmVzb3VyY2VSZXNwb25zZVZlcnNpb25LZXkpKTsKKyAgICAgICAgYXV0byBy
ZXNvdXJjZVJlc3BvbnNlVmVyc2lvbiA9IHN0YXRpY19jYXN0PENGU3RyaW5nUmVmPihDRkRpY3Rp
b25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VSZXNwb25z
ZVZlcnNpb25LZXkpKTsKICAgICAgICAgaWYgKHJlc291cmNlUmVzcG9uc2VWZXJzaW9uICYmIENG
R2V0VHlwZUlEKHJlc291cmNlUmVzcG9uc2VWZXJzaW9uKSAhPSBDRlN0cmluZ0dldFR5cGVJRCgp
KSB7CiAgICAgICAgICAgICBMT0coQXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZlIC0gUmVzb3Vy
Y2UgcmVzcG9uc2UgdmVyc2lvbiBpcyBub3Qgb2YgdHlwZSBDRlN0cmluZywgY2Fubm90IGNyZWF0
ZSBpbnZhbGlkIHJlc291cmNlIik7CiAgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKQEAgLTIy
NCw3ICsyMjAsNyBAQCBSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBMZWdhY3lXZWJBcmNoaXZlOjpj
cmVhdGVSZXNvdXJjZShDRkRpY3Rpb25hcnlSZWYgZGljdGlvbgogICAgICAgICAKICAgICAgICAg
cmVzcG9uc2UgPSBjcmVhdGVSZXNvdXJjZVJlc3BvbnNlRnJvbVByb3BlcnR5TGlzdERhdGEocmVz
b3VyY2VSZXNwb25zZURhdGEsIHJlc291cmNlUmVzcG9uc2VWZXJzaW9uKTsKICAgICB9Ci0gICAg
CisKICAgICByZXR1cm4gQXJjaGl2ZVJlc291cmNlOjpjcmVhdGUoU2hhcmVkQnVmZmVyOjp3cmFw
Q0ZEYXRhKHJlc291cmNlRGF0YSksIFVSTChVUkwoKSwgdXJsKSwgbWltZVR5cGUsIHRleHRFbmNv
ZGluZywgZnJhbWVOYW1lLCByZXNwb25zZSk7CiB9CiAKQEAgLTIzMywyMSArMjI5LDE5IEBAIFJl
ZjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoKQogICAgIHJldHVy
biBhZG9wdFJlZigqbmV3IExlZ2FjeVdlYkFyY2hpdmUpOwogfQogCi1SZWZQdHI8TGVnYWN5V2Vi
QXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+
JiYgbWFpblJlc291cmNlLCBWZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+JiYgc3VicmVz
b3VyY2VzLCBWZWN0b3I8UmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+PiYmIHN1YmZyYW1lQXJjaGl2
ZXMpCitSZWY8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFJlZjxB
cmNoaXZlUmVzb3VyY2U+JiYgbWFpblJlc291cmNlLCBWZWN0b3I8UmVmPEFyY2hpdmVSZXNvdXJj
ZT4+JiYgc3VicmVzb3VyY2VzLCBWZWN0b3I8UmVmPExlZ2FjeVdlYkFyY2hpdmU+PiYmIHN1YmZy
YW1lQXJjaGl2ZXMpCiB7Ci0gICAgaWYgKCFtYWluUmVzb3VyY2UpCi0gICAgICAgIHJldHVybiBu
dWxscHRyOwotCiAgICAgYXV0byBhcmNoaXZlID0gY3JlYXRlKCk7CisKICAgICBhcmNoaXZlLT5z
ZXRNYWluUmVzb3VyY2UoV1RGTW92ZShtYWluUmVzb3VyY2UpKTsKLSAgICAKKwogICAgIGZvciAo
YXV0byYgc3VicmVzb3VyY2UgOiBzdWJyZXNvdXJjZXMpCiAgICAgICAgIGFyY2hpdmUtPmFkZFN1
YnJlc291cmNlKFdURk1vdmUoc3VicmVzb3VyY2UpKTsKIAogICAgIGZvciAoYXV0byYgc3ViZnJh
bWVBcmNoaXZlIDogc3ViZnJhbWVBcmNoaXZlcykKICAgICAgICAgYXJjaGl2ZS0+YWRkU3ViZnJh
bWVBcmNoaXZlKFdURk1vdmUoc3ViZnJhbWVBcmNoaXZlKSk7CiAKLSAgICByZXR1cm4gV1RGTW92
ZShhcmNoaXZlKTsKKyAgICByZXR1cm4gYXJjaGl2ZTsKIH0KIAogUmVmUHRyPExlZ2FjeVdlYkFy
Y2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShTaGFyZWRCdWZmZXImIGRhdGEpCkBAIC0z
MDcsNDggKzMwMSw1MCBAQCBib29sIExlZ2FjeVdlYkFyY2hpdmU6OmV4dHJhY3QoQ0ZEaWN0aW9u
YXJ5UmVmIGRpY3Rpb25hcnkpCiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hp
dmUgLSBNYWluIHJlc291cmNlIGlzIG5vdCB0aGUgZXhwZWN0ZWQgQ0ZEaWN0aW9uYXJ5LCBhYm9y
dGluZyBpbnZhbGlkIFdlYkFyY2hpdmUiKTsKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0K
LSAgICAKLSAgICBzZXRNYWluUmVzb3VyY2UoY3JlYXRlUmVzb3VyY2UobWFpblJlc291cmNlRGlj
dCkpOwotICAgIGlmICghbWFpblJlc291cmNlKCkpIHsKKworICAgIGF1dG8gbWFpblJlc291cmNl
ID0gY3JlYXRlUmVzb3VyY2UobWFpblJlc291cmNlRGljdCk7CisgICAgaWYgKCFtYWluUmVzb3Vy
Y2UpIHsKICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIEZhaWxlZCB0
byBwYXJzZSBtYWluIHJlc291cmNlIGZyb20gQ0ZEaWN0aW9uYXJ5IG9yIG1haW4gcmVzb3VyY2Ug
ZG9lcyBub3QgZXhpc3QsIGFib3J0aW5nIGludmFsaWQgV2ViQXJjaGl2ZSIpOwogICAgICAgICBy
ZXR1cm4gZmFsc2U7CiAgICAgfQotICAgIAotICAgIGlmIChtYWluUmVzb3VyY2UoKS0+bWltZVR5
cGUoKS5pc051bGwoKSkgeworCisgICAgaWYgKG1haW5SZXNvdXJjZS0+bWltZVR5cGUoKS5pc051
bGwoKSkgewogICAgICAgICBMT0coQXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZlIC0gTWFpbiBy
ZXNvdXJjZSBNSU1FIHR5cGUgaXMgcmVxdWlyZWQsIGJ1dCB3YXMgbnVsbC4iKTsKICAgICAgICAg
cmV0dXJuIGZhbHNlOwogICAgIH0KLSAgICAKLSAgICBDRkFycmF5UmVmIHN1YnJlc291cmNlQXJy
YXkgPSBzdGF0aWNfY2FzdDxDRkFycmF5UmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9u
YXJ5LCBMZWdhY3lXZWJBcmNoaXZlU3VicmVzb3VyY2VzS2V5KSk7CisKKyAgICBzZXRNYWluUmVz
b3VyY2UobWFpblJlc291cmNlLnJlbGVhc2VOb25OdWxsKCkpOworCisgICAgYXV0byBzdWJyZXNv
dXJjZUFycmF5ID0gc3RhdGljX2Nhc3Q8Q0ZBcnJheVJlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUo
ZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVN1YnJlc291cmNlc0tleSkpOwogICAgIGlmIChz
dWJyZXNvdXJjZUFycmF5ICYmIENGR2V0VHlwZUlEKHN1YnJlc291cmNlQXJyYXkpICE9IENGQXJy
YXlHZXRUeXBlSUQoKSkgewogICAgICAgICBMT0coQXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZl
IC0gU3VicmVzb3VyY2VzIGlzIG5vdCB0aGUgZXhwZWN0ZWQgQXJyYXksIGFib3J0aW5nIGludmFs
aWQgV2ViQXJjaGl2ZSIpOwogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQotICAgIAorCiAg
ICAgaWYgKHN1YnJlc291cmNlQXJyYXkpIHsKLSAgICAgICAgQ0ZJbmRleCBjb3VudCA9IENGQXJy
YXlHZXRDb3VudChzdWJyZXNvdXJjZUFycmF5KTsKKyAgICAgICAgYXV0byBjb3VudCA9IENGQXJy
YXlHZXRDb3VudChzdWJyZXNvdXJjZUFycmF5KTsKICAgICAgICAgZm9yIChDRkluZGV4IGkgPSAw
OyBpIDwgY291bnQ7ICsraSkgewotICAgICAgICAgICAgQ0ZEaWN0aW9uYXJ5UmVmIHN1YnJlc291
cmNlRGljdCA9IHN0YXRpY19jYXN0PENGRGljdGlvbmFyeVJlZj4oQ0ZBcnJheUdldFZhbHVlQXRJ
bmRleChzdWJyZXNvdXJjZUFycmF5LCBpKSk7CisgICAgICAgICAgICBhdXRvIHN1YnJlc291cmNl
RGljdCA9IHN0YXRpY19jYXN0PENGRGljdGlvbmFyeVJlZj4oQ0ZBcnJheUdldFZhbHVlQXRJbmRl
eChzdWJyZXNvdXJjZUFycmF5LCBpKSk7CiAgICAgICAgICAgICBpZiAoQ0ZHZXRUeXBlSUQoc3Vi
cmVzb3VyY2VEaWN0KSAhPSBDRkRpY3Rpb25hcnlHZXRUeXBlSUQoKSkgewogICAgICAgICAgICAg
ICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBTdWJyZXNvdXJjZSBpcyBub3Qg
ZXhwZWN0ZWQgQ0ZEaWN0aW9uYXJ5LCBhYm9ydGluZyBpbnZhbGlkIFdlYkFyY2hpdmUiKTsKICAg
ICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICAK
ICAgICAgICAgICAgIGlmIChhdXRvIHN1YnJlc291cmNlID0gY3JlYXRlUmVzb3VyY2Uoc3VicmVz
b3VyY2VEaWN0KSkKLSAgICAgICAgICAgICAgICBhZGRTdWJyZXNvdXJjZShXVEZNb3ZlKHN1YnJl
c291cmNlKSk7CisgICAgICAgICAgICAgICAgYWRkU3VicmVzb3VyY2Uoc3VicmVzb3VyY2UucmVs
ZWFzZU5vbk51bGwoKSk7CiAgICAgICAgIH0KICAgICB9Ci0gICAgCi0gICAgQ0ZBcnJheVJlZiBz
dWJmcmFtZUFycmF5ID0gc3RhdGljX2Nhc3Q8Q0ZBcnJheVJlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFs
dWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVN1YmZyYW1lQXJjaGl2ZXNLZXkpKTsKKwor
ICAgIGF1dG8gc3ViZnJhbWVBcnJheSA9IHN0YXRpY19jYXN0PENGQXJyYXlSZWY+KENGRGljdGlv
bmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVTdWJmcmFtZUFyY2hpdmVz
S2V5KSk7CiAgICAgaWYgKHN1YmZyYW1lQXJyYXkgJiYgQ0ZHZXRUeXBlSUQoc3ViZnJhbWVBcnJh
eSkgIT0gQ0ZBcnJheUdldFR5cGVJRCgpKSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2Fj
eVdlYkFyY2hpdmUgLSBTdWJmcmFtZSBhcmNoaXZlcyBpcyBub3QgdGhlIGV4cGVjdGVkIEFycmF5
LCBhYm9ydGluZyBpbnZhbGlkIFdlYkFyY2hpdmUiKTsKICAgICAgICAgcmV0dXJuIGZhbHNlOwog
ICAgIH0KLSAgICAKKwogICAgIGlmIChzdWJmcmFtZUFycmF5KSB7Ci0gICAgICAgIENGSW5kZXgg
Y291bnQgPSBDRkFycmF5R2V0Q291bnQoc3ViZnJhbWVBcnJheSk7CisgICAgICAgIGF1dG8gY291
bnQgPSBDRkFycmF5R2V0Q291bnQoc3ViZnJhbWVBcnJheSk7CiAgICAgICAgIGZvciAoQ0ZJbmRl
eCBpID0gMDsgaSA8IGNvdW50OyArK2kpIHsKLSAgICAgICAgICAgIENGRGljdGlvbmFyeVJlZiBz
dWJmcmFtZURpY3QgPSBzdGF0aWNfY2FzdDxDRkRpY3Rpb25hcnlSZWY+KENGQXJyYXlHZXRWYWx1
ZUF0SW5kZXgoc3ViZnJhbWVBcnJheSwgaSkpOworICAgICAgICAgICAgYXV0byBzdWJmcmFtZURp
Y3QgPSBzdGF0aWNfY2FzdDxDRkRpY3Rpb25hcnlSZWY+KENGQXJyYXlHZXRWYWx1ZUF0SW5kZXgo
c3ViZnJhbWVBcnJheSwgaSkpOwogICAgICAgICAgICAgaWYgKENGR2V0VHlwZUlEKHN1YmZyYW1l
RGljdCkgIT0gQ0ZEaWN0aW9uYXJ5R2V0VHlwZUlEKCkpIHsKICAgICAgICAgICAgICAgICBMT0co
QXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZlIC0gU3ViZnJhbWUgYXJyYXkgaXMgbm90IGV4cGVj
dGVkIENGRGljdGlvbmFyeSwgYWJvcnRpbmcgaW52YWxpZCBXZWJBcmNoaXZlIik7CiAgICAgICAg
ICAgICAgICAgcmV0dXJuIGZhbHNlOwpAQCAtMzY1LDI2ICszNjEsMjEgQEAgYm9vbCBMZWdhY3lX
ZWJBcmNoaXZlOjpleHRyYWN0KENGRGljdGlvbmFyeVJlZiBkaWN0aW9uYXJ5KQogICAgIHJldHVy
biB0cnVlOwogfQogCi1BcmNoaXZlOjpUeXBlIExlZ2FjeVdlYkFyY2hpdmU6OnR5cGUoKSBjb25z
dAotewotICAgIHJldHVybiBBcmNoaXZlOjpXZWJBcmNoaXZlOwotfQotICAgIAogUmV0YWluUHRy
PENGRGF0YVJlZj4gTGVnYWN5V2ViQXJjaGl2ZTo6cmF3RGF0YVJlcHJlc2VudGF0aW9uKCkKIHsK
LSAgICBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBwcm9wZXJ0eUxpc3QgPSBjcmVhdGVQcm9w
ZXJ0eUxpc3RSZXByZXNlbnRhdGlvbih0aGlzKTsKKyAgICBhdXRvIHByb3BlcnR5TGlzdCA9IGNy
ZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKCp0aGlzKTsKICAgICBBU1NFUlQocHJvcGVy
dHlMaXN0KTsKICAgICBpZiAoIXByb3BlcnR5TGlzdCkgewogICAgICAgICBMT0coQXJjaGl2ZXMs
ICJMZWdhY3lXZWJBcmNoaXZlIC0gRmFpbGVkIHRvIGNyZWF0ZSBwcm9wZXJ0eSBsaXN0IGZvciBh
cmNoaXZlLCByZXR1cm5pbmcgbm8gZGF0YSIpOwogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAg
ICB9CiAKLSAgICBSZXRhaW5QdHI8Q0ZXcml0ZVN0cmVhbVJlZj4gc3RyZWFtID0gYWRvcHRDRihD
RldyaXRlU3RyZWFtQ3JlYXRlV2l0aEFsbG9jYXRlZEJ1ZmZlcnMoMCwgMCkpOworICAgIGF1dG8g
c3RyZWFtID0gYWRvcHRDRihDRldyaXRlU3RyZWFtQ3JlYXRlV2l0aEFsbG9jYXRlZEJ1ZmZlcnMo
MCwgMCkpOwogCiAgICAgQ0ZXcml0ZVN0cmVhbU9wZW4oc3RyZWFtLmdldCgpKTsKICAgICBDRlBy
b3BlcnR5TGlzdFdyaXRlKHByb3BlcnR5TGlzdC5nZXQoKSwgc3RyZWFtLmdldCgpLCBrQ0ZQcm9w
ZXJ0eUxpc3RCaW5hcnlGb3JtYXRfdjFfMCwgMCwgMCk7CiAKLSAgICBSZXRhaW5QdHI8Q0ZEYXRh
UmVmPiBwbGlzdERhdGEgPSBhZG9wdENGKHN0YXRpY19jYXN0PENGRGF0YVJlZj4oQ0ZXcml0ZVN0
cmVhbUNvcHlQcm9wZXJ0eShzdHJlYW0uZ2V0KCksIGtDRlN0cmVhbVByb3BlcnR5RGF0YVdyaXR0
ZW4pKSk7CisgICAgYXV0byBwbGlzdERhdGEgPSBhZG9wdENGKHN0YXRpY19jYXN0PENGRGF0YVJl
Zj4oQ0ZXcml0ZVN0cmVhbUNvcHlQcm9wZXJ0eShzdHJlYW0uZ2V0KCksIGtDRlN0cmVhbVByb3Bl
cnR5RGF0YVdyaXR0ZW4pKSk7CiAgICAgQVNTRVJUKHBsaXN0RGF0YSk7CiAKICAgICBDRldyaXRl
U3RyZWFtQ2xvc2Uoc3RyZWFtLmdldCgpKTsKQEAgLTQzMiw3ICs0MjMsNyBAQCBSZWZQdHI8TGVn
YWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKE5vZGUmIG5vZGUsIHN0ZDo6
ZnVuY3Rpb248Ym9vbAogCiAgICAgVmVjdG9yPE5vZGUqPiBub2RlTGlzdDsKICAgICBTdHJpbmcg
bWFya3VwU3RyaW5nID0gY3JlYXRlTWFya3VwKG5vZGUsIEluY2x1ZGVOb2RlLCAmbm9kZUxpc3Qs
IERvTm90UmVzb2x2ZVVSTHMsIHRhZ05hbWVzVG9GaWx0ZXIuZ2V0KCkpOwotICAgIE5vZGU6Ok5v
ZGVUeXBlIG5vZGVUeXBlID0gbm9kZS5ub2RlVHlwZSgpOworICAgIGF1dG8gbm9kZVR5cGUgPSBu
b2RlLm5vZGVUeXBlKCk7CiAgICAgaWYgKG5vZGVUeXBlICE9IE5vZGU6OkRPQ1VNRU5UX05PREUg
JiYgbm9kZVR5cGUgIT0gTm9kZTo6RE9DVU1FTlRfVFlQRV9OT0RFKQogICAgICAgICBtYXJrdXBT
dHJpbmcgPSBkb2N1bWVudFR5cGVTdHJpbmcobm9kZS5kb2N1bWVudCgpKSArIG1hcmt1cFN0cmlu
ZzsKIApAQCAtNDQxLDIwICs0MzIsMjEgQEAgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2Fj
eVdlYkFyY2hpdmU6OmNyZWF0ZShOb2RlJiBub2RlLCBzdGQ6OmZ1bmN0aW9uPGJvb2wKIAogUmVm
UHRyPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShGcmFtZSYgZnJh
bWUpCiB7Ci0gICAgRG9jdW1lbnRMb2FkZXIqIGRvY3VtZW50TG9hZGVyID0gZnJhbWUubG9hZGVy
KCkuZG9jdW1lbnRMb2FkZXIoKTsKLQorICAgIGF1dG8qIGRvY3VtZW50TG9hZGVyID0gZnJhbWUu
bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKICAgICBpZiAoIWRvY3VtZW50TG9hZGVyKQogICAg
ICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICAgICAgCi0gICAgVmVjdG9yPFJlZlB0cjxMZWdhY3lX
ZWJBcmNoaXZlPj4gc3ViZnJhbWVBcmNoaXZlczsKLSAgICAKKworICAgIGF1dG8gbWFpblJlc291
cmNlID0gZG9jdW1lbnRMb2FkZXItPm1haW5SZXNvdXJjZSgpOworICAgIGlmICghbWFpblJlc291
cmNlKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIFZlY3RvcjxSZWY8TGVnYWN5V2Vi
QXJjaGl2ZT4+IHN1YmZyYW1lQXJjaGl2ZXM7CiAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8
IGZyYW1lLnRyZWUoKS5jaGlsZENvdW50KCk7ICsraSkgewotICAgICAgICBpZiAoUmVmUHRyPExl
Z2FjeVdlYkFyY2hpdmU+IGNoaWxkRnJhbWVBcmNoaXZlID0gY3JlYXRlKCpmcmFtZS50cmVlKCku
Y2hpbGQoaSkpKQotICAgICAgICAgICAgc3ViZnJhbWVBcmNoaXZlcy5hcHBlbmQoV1RGTW92ZShj
aGlsZEZyYW1lQXJjaGl2ZSkpOworICAgICAgICBpZiAoYXV0byBjaGlsZEZyYW1lQXJjaGl2ZSA9
IGNyZWF0ZSgqZnJhbWUudHJlZSgpLmNoaWxkKGkpKSkKKyAgICAgICAgICAgIHN1YmZyYW1lQXJj
aGl2ZXMuYXBwZW5kKGNoaWxkRnJhbWVBcmNoaXZlLnJlbGVhc2VOb25OdWxsKCkpOwogICAgIH0K
IAotICAgIGF1dG8gc3VicmVzb3VyY2VzID0gZG9jdW1lbnRMb2FkZXItPnN1YnJlc291cmNlcygp
OwotICAgIHJldHVybiBjcmVhdGUoZG9jdW1lbnRMb2FkZXItPm1haW5SZXNvdXJjZSgpLCBXVEZN
b3ZlKHN1YnJlc291cmNlcyksIFdURk1vdmUoc3ViZnJhbWVBcmNoaXZlcykpOworICAgIHJldHVy
biBjcmVhdGUobWFpblJlc291cmNlLnJlbGVhc2VOb25OdWxsKCksIGRvY3VtZW50TG9hZGVyLT5z
dWJyZXNvdXJjZXMoKSwgV1RGTW92ZShzdWJmcmFtZUFyY2hpdmVzKSk7CiB9CiAKIFJlZlB0cjxM
ZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoUmFuZ2UqIHJhbmdlKQpA
QCAtNDYyLDIyICs0NTQsMjAgQEAgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdlYkFy
Y2hpdmU6OmNyZWF0ZShSYW5nZSogcmFuZ2UpCiAgICAgaWYgKCFyYW5nZSkKICAgICAgICAgcmV0
dXJuIG51bGxwdHI7CiAgICAgICAgIAotICAgIERvY3VtZW50JiBkb2N1bWVudCA9IHJhbmdlLT5z
dGFydENvbnRhaW5lcigpLmRvY3VtZW50KCk7Ci0KLSAgICBGcmFtZSogZnJhbWUgPSBkb2N1bWVu
dC5mcmFtZSgpOworICAgIGF1dG8mIGRvY3VtZW50ID0gcmFuZ2UtPnN0YXJ0Q29udGFpbmVyKCku
ZG9jdW1lbnQoKTsKKyAgICBhdXRvKiBmcmFtZSA9IGRvY3VtZW50LmZyYW1lKCk7CiAgICAgaWYg
KCFmcmFtZSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgCi0gICAgLy8gRklYTUU6IFRo
aXMgaXMgYWx3YXlzICJmb3IgaW50ZXJjaGFuZ2UiLiBJcyB0aGF0IHJpZ2h0PyBTZWUgdGhlIHBy
ZXZpb3VzIG1ldGhvZC4KKworICAgIC8vIEZJWE1FOiBUaGlzIGlzIGFsd2F5cyAiZm9yIGludGVy
Y2hhbmdlIi4gSXMgdGhhdCByaWdodD8KICAgICBWZWN0b3I8Tm9kZSo+IG5vZGVMaXN0OwogICAg
IFN0cmluZyBtYXJrdXBTdHJpbmcgPSBkb2N1bWVudFR5cGVTdHJpbmcoZG9jdW1lbnQpICsgY3Jl
YXRlTWFya3VwKCpyYW5nZSwgJm5vZGVMaXN0LCBBbm5vdGF0ZUZvckludGVyY2hhbmdlKTsKLQog
ICAgIHJldHVybiBjcmVhdGUobWFya3VwU3RyaW5nLCAqZnJhbWUsIG5vZGVMaXN0LCBudWxscHRy
KTsKIH0KIAogUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0
ZShjb25zdCBTdHJpbmcmIG1hcmt1cFN0cmluZywgRnJhbWUmIGZyYW1lLCBjb25zdCBWZWN0b3I8
Tm9kZSo+JiBub2Rlcywgc3RkOjpmdW5jdGlvbjxib29sIChGcmFtZSYpPiBmcmFtZUZpbHRlcikK
IHsKLSAgICBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSA9IGZyYW1lLmxvYWRlcigp
LmRvY3VtZW50TG9hZGVyKCktPnJlc3BvbnNlKCk7CisgICAgYXV0byYgcmVzcG9uc2UgPSBmcmFt
ZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5yZXNwb25zZSgpOwogICAgIFVSTCByZXNwb25z
ZVVSTCA9IHJlc3BvbnNlLnVybCgpOwogICAgIAogICAgIC8vIGl0J3MgcG9zc2libGUgdG8gaGF2
ZSBhIHJlc3BvbnNlIHdpdGhvdXQgYSBVUkwgaGVyZQpAQCAtNDg1LDQyICs0NzUsNDEgQEAgUmVm
UHRyPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShjb25zdCBTdHJp
bmcmIG1hcmt1cFN0cmluZywgRnIKICAgICBpZiAocmVzcG9uc2VVUkwuaXNOdWxsKCkpCiAgICAg
ICAgIHJlc3BvbnNlVVJMID0gVVJMKFBhcnNlZFVSTFN0cmluZywgZW1wdHlTdHJpbmcoKSk7CiAK
LSAgICBSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBtYWluUmVzb3VyY2UgPSBBcmNoaXZlUmVzb3Vy
Y2U6OmNyZWF0ZSh1dGY4QnVmZmVyKG1hcmt1cFN0cmluZyksIHJlc3BvbnNlVVJMLCByZXNwb25z
ZS5taW1lVHlwZSgpLCAiVVRGLTgiLCBmcmFtZS50cmVlKCkudW5pcXVlTmFtZSgpKTsKKyAgICBh
dXRvIG1haW5SZXNvdXJjZSA9IEFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKHV0ZjhCdWZmZXIobWFy
a3VwU3RyaW5nKSwgcmVzcG9uc2VVUkwsIHJlc3BvbnNlLm1pbWVUeXBlKCksICJVVEYtOCIsIGZy
YW1lLnRyZWUoKS51bmlxdWVOYW1lKCkpOwogICAgIGlmICghbWFpblJlc291cmNlKQogICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKIAotICAgIFZlY3RvcjxSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4+
IHN1YmZyYW1lQXJjaGl2ZXM7Ci0gICAgVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+PiBz
dWJyZXNvdXJjZXM7CisgICAgVmVjdG9yPFJlZjxMZWdhY3lXZWJBcmNoaXZlPj4gc3ViZnJhbWVB
cmNoaXZlczsKKyAgICBWZWN0b3I8UmVmPEFyY2hpdmVSZXNvdXJjZT4+IHN1YnJlc291cmNlczsK
ICAgICBIYXNoU2V0PFVSTD4gdW5pcXVlU3VicmVzb3VyY2VzOwogCi0gICAgc2l6ZV90IG5vZGVz
U2l6ZSA9IG5vZGVzLnNpemUoKTsgICAgCi0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBub2Rl
c1NpemU7ICsraSkgewotICAgICAgICBOb2RlJiBub2RlID0gKm5vZGVzW2ldOworICAgIGZvciAo
YXV0byYgbm9kZVB0ciA6IG5vZGVzKSB7CisgICAgICAgIE5vZGUmIG5vZGUgPSAqbm9kZVB0cjsK
ICAgICAgICAgRnJhbWUqIGNoaWxkRnJhbWU7CiAgICAgICAgIGlmICgoaXM8SFRNTEZyYW1lRWxl
bWVudEJhc2U+KG5vZGUpIHx8IGlzPEhUTUxPYmplY3RFbGVtZW50Pihub2RlKSkKICAgICAgICAg
ICAgICYmIChjaGlsZEZyYW1lID0gZG93bmNhc3Q8SFRNTEZyYW1lT3duZXJFbGVtZW50Pihub2Rl
KS5jb250ZW50RnJhbWUoKSkpIHsKICAgICAgICAgICAgIGlmIChmcmFtZUZpbHRlciAmJiAhZnJh
bWVGaWx0ZXIoKmNoaWxkRnJhbWUpKQogICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAg
ICAgICAgICAgIAotICAgICAgICAgICAgaWYgKFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBzdWJm
cmFtZUFyY2hpdmUgPSBjcmVhdGUoKmNoaWxkRnJhbWUtPmRvY3VtZW50KCksIGZyYW1lRmlsdGVy
KSkKLSAgICAgICAgICAgICAgICBzdWJmcmFtZUFyY2hpdmVzLmFwcGVuZChXVEZNb3ZlKHN1YmZy
YW1lQXJjaGl2ZSkpOworICAgICAgICAgICAgaWYgKGF1dG8gc3ViZnJhbWVBcmNoaXZlID0gY3Jl
YXRlKCpjaGlsZEZyYW1lLT5kb2N1bWVudCgpLCBmcmFtZUZpbHRlcikpCisgICAgICAgICAgICAg
ICAgc3ViZnJhbWVBcmNoaXZlcy5hcHBlbmQoc3ViZnJhbWVBcmNoaXZlLnJlbGVhc2VOb25OdWxs
KCkpOwogICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgIExPR19FUlJPUigiVW5hYmxl
ZCB0byBhcmNoaXZlIHN1YmZyYW1lICVzIiwgY2hpbGRGcmFtZS0+dHJlZSgpLnVuaXF1ZU5hbWUo
KS5zdHJpbmcoKS51dGY4KCkuZGF0YSgpKTsKIAogICAgICAgICB9IGVsc2UgewogICAgICAgICAg
ICAgTGlzdEhhc2hTZXQ8VVJMPiBzdWJyZXNvdXJjZVVSTHM7CiAgICAgICAgICAgICBub2RlLmdl
dFN1YnJlc291cmNlVVJMcyhzdWJyZXNvdXJjZVVSTHMpOwotICAgICAgICAgICAgCi0gICAgICAg
ICAgICBEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIgPSBmcmFtZS5sb2FkZXIoKS5kb2N1
bWVudExvYWRlcigpOwogCi0gICAgICAgICAgICBmb3IgKGNvbnN0IGF1dG8mIHN1YnJlc291cmNl
VVJMIDogc3VicmVzb3VyY2VVUkxzKSB7CisgICAgICAgICAgICBBU1NFUlQoZnJhbWUubG9hZGVy
KCkuZG9jdW1lbnRMb2FkZXIoKSk7CisgICAgICAgICAgICBhdXRvJiBkb2N1bWVudExvYWRlciA9
ICpmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOworCisgICAgICAgICAgICBmb3IgKGF1
dG8mIHN1YnJlc291cmNlVVJMIDogc3VicmVzb3VyY2VVUkxzKSB7CiAgICAgICAgICAgICAgICAg
aWYgKHVuaXF1ZVN1YnJlc291cmNlcy5jb250YWlucyhzdWJyZXNvdXJjZVVSTCkpCiAgICAgICAg
ICAgICAgICAgICAgIGNvbnRpbnVlOwogCiAgICAgICAgICAgICAgICAgdW5pcXVlU3VicmVzb3Vy
Y2VzLmFkZChzdWJyZXNvdXJjZVVSTCk7CiAKLSAgICAgICAgICAgICAgICBpZiAoUmVmUHRyPEFy
Y2hpdmVSZXNvdXJjZT4gcmVzb3VyY2UgPSBkb2N1bWVudExvYWRlci0+c3VicmVzb3VyY2Uoc3Vi
cmVzb3VyY2VVUkwpKSB7Ci0gICAgICAgICAgICAgICAgICAgIHN1YnJlc291cmNlcy5hcHBlbmQo
V1RGTW92ZShyZXNvdXJjZSkpOworICAgICAgICAgICAgICAgIGlmIChhdXRvIHJlc291cmNlID0g
ZG9jdW1lbnRMb2FkZXIuc3VicmVzb3VyY2Uoc3VicmVzb3VyY2VVUkwpKSB7CisgICAgICAgICAg
ICAgICAgICAgIHN1YnJlc291cmNlcy5hcHBlbmQocmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSk7
CiAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgIH0KIApAQCAt
NTI4LDEwICs1MTcsOSBAQCBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2
ZTo6Y3JlYXRlKGNvbnN0IFN0cmluZyYgbWFya3VwU3RyaW5nLCBGcgogI2lmIEVOQUJMRShDQUNI
RV9QQVJUSVRJT05JTkcpCiAgICAgICAgICAgICAgICAgcmVxdWVzdC5zZXREb21haW5Gb3JDYWNo
ZVBhcnRpdGlvbihmcmFtZS5kb2N1bWVudCgpLT50b3BPcmlnaW4oKS0+ZG9tYWluRm9yQ2FjaGVQ
YXJ0aXRpb24oKSk7CiAjZW5kaWYKLSAgICAgICAgICAgICAgICBDYWNoZWRSZXNvdXJjZSogY2Fj
aGVkUmVzb3VyY2UgPSBNZW1vcnlDYWNoZTo6c2luZ2xldG9uKCkucmVzb3VyY2VGb3JSZXF1ZXN0
KHJlcXVlc3QsIGZyYW1lLnBhZ2UoKS0+c2Vzc2lvbklEKCkpOwotICAgICAgICAgICAgICAgIGlm
IChjYWNoZWRSZXNvdXJjZSkgewotICAgICAgICAgICAgICAgICAgICBpZiAoUmVmUHRyPEFyY2hp
dmVSZXNvdXJjZT4gcmVzb3VyY2UgPSBBcmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShjYWNoZWRSZXNv
dXJjZS0+cmVzb3VyY2VCdWZmZXIoKSwgc3VicmVzb3VyY2VVUkwsIGNhY2hlZFJlc291cmNlLT5y
ZXNwb25zZSgpKSkgewotICAgICAgICAgICAgICAgICAgICAgICAgc3VicmVzb3VyY2VzLmFwcGVu
ZChXVEZNb3ZlKHJlc291cmNlKSk7CisgICAgICAgICAgICAgICAgaWYgKGF1dG8qIGNhY2hlZFJl
c291cmNlID0gTWVtb3J5Q2FjaGU6OnNpbmdsZXRvbigpLnJlc291cmNlRm9yUmVxdWVzdChyZXF1
ZXN0LCBmcmFtZS5wYWdlKCktPnNlc3Npb25JRCgpKSkgeworICAgICAgICAgICAgICAgICAgICBp
ZiAoYXV0byByZXNvdXJjZSA9IEFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKGNhY2hlZFJlc291cmNl
LT5yZXNvdXJjZUJ1ZmZlcigpLCBzdWJyZXNvdXJjZVVSTCwgY2FjaGVkUmVzb3VyY2UtPnJlc3Bv
bnNlKCkpKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBzdWJyZXNvdXJjZXMuYXBwZW5kKHJl
c291cmNlLnJlbGVhc2VOb25OdWxsKCkpOwogICAgICAgICAgICAgICAgICAgICAgICAgY29udGlu
dWU7CiAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICB9CkBAIC01NDMsMTcg
KzUzMSwxNyBAQCBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3Jl
YXRlKGNvbnN0IFN0cmluZyYgbWFya3VwU3RyaW5nLCBGcgogICAgIH0KIAogICAgIC8vIEFkZCBm
YXZpY29uIGlmIG9uZSBleGlzdHMgZm9yIHRoaXMgcGFnZSwgaWYgd2UgYXJlIGFyY2hpdmluZyB0
aGUgZW50aXJlIHBhZ2UuCi0gICAgaWYgKG5vZGVzU2l6ZSAmJiBub2Rlc1swXS0+aXNEb2N1bWVu
dE5vZGUoKSAmJiBpY29uRGF0YWJhc2UoKS5pc0VuYWJsZWQoKSkgewotICAgICAgICBjb25zdCBT
dHJpbmcmIGljb25VUkwgPSBpY29uRGF0YWJhc2UoKS5zeW5jaHJvbm91c0ljb25VUkxGb3JQYWdl
VVJMKHJlc3BvbnNlVVJMKTsKKyAgICBpZiAoIW5vZGVzLmlzRW1wdHkoKSAmJiBub2Rlc1swXS0+
aXNEb2N1bWVudE5vZGUoKSAmJiBpY29uRGF0YWJhc2UoKS5pc0VuYWJsZWQoKSkgeworICAgICAg
ICBhdXRvIGljb25VUkwgPSBpY29uRGF0YWJhc2UoKS5zeW5jaHJvbm91c0ljb25VUkxGb3JQYWdl
VVJMKHJlc3BvbnNlVVJMKTsKICAgICAgICAgaWYgKCFpY29uVVJMLmlzRW1wdHkoKSAmJiBpY29u
RGF0YWJhc2UoKS5zeW5jaHJvbm91c0ljb25EYXRhS25vd25Gb3JJY29uVVJMKGljb25VUkwpKSB7
Ci0gICAgICAgICAgICBpZiAoSW1hZ2UqIGljb25JbWFnZSA9IGljb25EYXRhYmFzZSgpLnN5bmNo
cm9ub3VzSWNvbkZvclBhZ2VVUkwocmVzcG9uc2VVUkwsIEludFNpemUoMTYsIDE2KSkpIHsKKyAg
ICAgICAgICAgIGlmIChhdXRvKiBpY29uSW1hZ2UgPSBpY29uRGF0YWJhc2UoKS5zeW5jaHJvbm91
c0ljb25Gb3JQYWdlVVJMKHJlc3BvbnNlVVJMLCBJbnRTaXplKDE2LCAxNikpKSB7CiAgICAgICAg
ICAgICAgICAgaWYgKGF1dG8gcmVzb3VyY2UgPSBBcmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShpY29u
SW1hZ2UtPmRhdGEoKSwgVVJMKFBhcnNlZFVSTFN0cmluZywgaWNvblVSTCksICJpbWFnZS94LWlj
b24iLCAiIiwgIiIpKQotICAgICAgICAgICAgICAgICAgICBzdWJyZXNvdXJjZXMuYXBwZW5kKFdU
Rk1vdmUocmVzb3VyY2UpKTsKKyAgICAgICAgICAgICAgICAgICAgc3VicmVzb3VyY2VzLmFwcGVu
ZChyZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQog
ICAgIH0KIAotICAgIHJldHVybiBjcmVhdGUoV1RGTW92ZShtYWluUmVzb3VyY2UpLCBXVEZNb3Zl
KHN1YnJlc291cmNlcyksIFdURk1vdmUoc3ViZnJhbWVBcmNoaXZlcykpOworICAgIHJldHVybiBj
cmVhdGUobWFpblJlc291cmNlLnJlbGVhc2VOb25OdWxsKCksIFdURk1vdmUoc3VicmVzb3VyY2Vz
KSwgV1RGTW92ZShzdWJmcmFtZUFyY2hpdmVzKSk7CiB9CiAKIFJlZlB0cjxMZWdhY3lXZWJBcmNo
aXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVGcm9tU2VsZWN0aW9uKEZyYW1lKiBmcmFtZSkK
QEAgLTU2MSw3ICs1NDksNyBAQCBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJj
aGl2ZTo6Y3JlYXRlRnJvbVNlbGVjdGlvbihGcmFtZSogZnJhbWUpCiAgICAgaWYgKCFmcmFtZSkK
ICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKLSAgICBEb2N1bWVudCogZG9jdW1lbnQgPSBmcmFt
ZS0+ZG9jdW1lbnQoKTsKKyAgICBhdXRvKiBkb2N1bWVudCA9IGZyYW1lLT5kb2N1bWVudCgpOwog
ICAgIGlmICghZG9jdW1lbnQpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCkBAIC01NjksMTIg
KzU1NywxMCBAQCBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3Jl
YXRlRnJvbVNlbGVjdGlvbihGcmFtZSogZnJhbWUpCiAgICAgYnVpbGRlci5hcHBlbmQoZG9jdW1l
bnRUeXBlU3RyaW5nKCpkb2N1bWVudCkpOwogCiAgICAgVmVjdG9yPE5vZGUqPiBub2RlTGlzdDsK
LSAgICBSZWZQdHI8UmFuZ2U+IHNlbGVjdGlvblJhbmdlID0gZnJhbWUtPnNlbGVjdGlvbigpLnRv
Tm9ybWFsaXplZFJhbmdlKCk7Ci0gICAgaWYgKHNlbGVjdGlvblJhbmdlKQorICAgIGlmIChhdXRv
IHNlbGVjdGlvblJhbmdlID0gZnJhbWUtPnNlbGVjdGlvbigpLnRvTm9ybWFsaXplZFJhbmdlKCkp
CiAgICAgICAgIGJ1aWxkZXIuYXBwZW5kKGNyZWF0ZU1hcmt1cCgqc2VsZWN0aW9uUmFuZ2UsICZu
b2RlTGlzdCwgQW5ub3RhdGVGb3JJbnRlcmNoYW5nZSkpOwogCi0gICAgU3RyaW5nIG1hcmt1cFN0
cmluZyA9IGJ1aWxkZXIudG9TdHJpbmcoKTsKLSAgICBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4g
YXJjaGl2ZSA9IGNyZWF0ZShtYXJrdXBTdHJpbmcsICpmcmFtZSwgbm9kZUxpc3QsIG51bGxwdHIp
OworICAgIGF1dG8gYXJjaGl2ZSA9IGNyZWF0ZShidWlsZGVyLnRvU3RyaW5nKCksICpmcmFtZSwg
bm9kZUxpc3QsIG51bGxwdHIpOwogICAgIAogICAgIGlmICghZG9jdW1lbnQtPmlzRnJhbWVTZXQo
KSkKICAgICAgICAgcmV0dXJuIGFyY2hpdmU7CkBAIC01ODQsNyArNTcwLDExIEBAIFJlZlB0cjxM
ZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVGcm9tU2VsZWN0aW9uKEZy
YW1lKiBmcmFtZSkKICAgICBTdHJpbmcgaWZyYW1lTWFya3VwID0gIjxpZnJhbWUgZnJhbWVib3Jk
ZXI9XCJub1wiIG1hcmdpbndpZHRoPVwiMFwiIG1hcmdpbmhlaWdodD1cIjBcIiB3aWR0aD1cIjk4
JSVcIiBoZWlnaHQ9XCI5OCUlXCIgc3JjPVwiIiArIGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExv
YWRlcigpLT5yZXNwb25zZSgpLnVybCgpLnN0cmluZygpICsgIlwiPjwvaWZyYW1lPiI7CiAgICAg
YXV0byBpZnJhbWVSZXNvdXJjZSA9IEFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKHV0ZjhCdWZmZXIo
aWZyYW1lTWFya3VwKSwgYmxhbmtVUkwoKSwgInRleHQvaHRtbCIsICJVVEYtOCIsIFN0cmluZygp
KTsKIAotICAgIHJldHVybiBjcmVhdGUoV1RGTW92ZShpZnJhbWVSZXNvdXJjZSksIFZlY3RvcjxS
ZWZQdHI8QXJjaGl2ZVJlc291cmNlPj4oKSwgVmVjdG9yPFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZl
Pj4geyBhcmNoaXZlIH0pOworICAgIFZlY3RvcjxSZWY8TGVnYWN5V2ViQXJjaGl2ZT4+IHN1YmZy
YW1lQXJjaGl2ZXM7CisgICAgc3ViZnJhbWVBcmNoaXZlcy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5
KDEpOworICAgIHN1YmZyYW1lQXJjaGl2ZXMudW5jaGVja2VkQXBwZW5kKGFyY2hpdmUucmVsZWFz
ZU5vbk51bGwoKSk7CisKKyAgICByZXR1cm4gY3JlYXRlKGlmcmFtZVJlc291cmNlLnJlbGVhc2VO
b25OdWxsKCksIHsgfSwgV1RGTW92ZShzdWJmcmFtZUFyY2hpdmVzKSk7CiB9CiAKIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL2NmL0xlZ2FjeVdlYkFyY2hpdmUu
aCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL2NmL0xlZ2FjeVdlYkFyY2hpdmUuaApp
bmRleCAzNWRkZjNjMmE1OWMwODYzM2JkZDliMjEzNDdiMzZmOGQyNzYyYzFhLi40NDY3ZDBkNmEw
M2UwODAzYWU2YmE3NTYzOTc2ZWJlNTIyYTE0OThhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvYXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNoaXZlLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2FyY2hpdmUvY2YvTGVnYWN5V2ViQXJjaGl2ZS5oCkBAIC0zNywyMyArMzcsMjYg
QEAgY2xhc3MgRnJhbWU7CiBjbGFzcyBOb2RlOwogY2xhc3MgUmFuZ2U7CiAKLWNsYXNzIExlZ2Fj
eVdlYkFyY2hpdmUgOiBwdWJsaWMgQXJjaGl2ZSB7CitjbGFzcyBMZWdhY3lXZWJBcmNoaXZlIGZp
bmFsIDogcHVibGljIEFyY2hpdmUgewogcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRp
YyBSZWY8TGVnYWN5V2ViQXJjaGl2ZT4gY3JlYXRlKCk7CiAgICAgV0VCQ09SRV9FWFBPUlQgc3Rh
dGljIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBjcmVhdGUoU2hhcmVkQnVmZmVyJik7CiAgICAg
V0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBjcmVhdGUoY29u
c3QgVVJMJiwgU2hhcmVkQnVmZmVyJik7Ci0gICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZlB0
cjxMZWdhY3lXZWJBcmNoaXZlPiBjcmVhdGUoUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4mJiBtYWlu
UmVzb3VyY2UsIFZlY3RvcjxSZWZQdHI8QXJjaGl2ZVJlc291cmNlPj4mJiBzdWJyZXNvdXJjZXMs
IFZlY3RvcjxSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4+JiYgc3ViZnJhbWVBcmNoaXZlcyk7Cisg
ICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxMZWdhY3lXZWJBcmNoaXZlPiBjcmVhdGUoUmVm
PEFyY2hpdmVSZXNvdXJjZT4mJiBtYWluUmVzb3VyY2UsIFZlY3RvcjxSZWY8QXJjaGl2ZVJlc291
cmNlPj4mJiBzdWJyZXNvdXJjZXMsIFZlY3RvcjxSZWY8TGVnYWN5V2ViQXJjaGl2ZT4+JiYgc3Vi
ZnJhbWVBcmNoaXZlcyk7CiAgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZlB0cjxMZWdhY3lX
ZWJBcmNoaXZlPiBjcmVhdGUoTm9kZSYsIHN0ZDo6ZnVuY3Rpb248Ym9vbChGcmFtZSYpPiBmcmFt
ZUZpbHRlciA9IG51bGxwdHIpOwogICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBSZWZQdHI8TGVn
YWN5V2ViQXJjaGl2ZT4gY3JlYXRlKEZyYW1lJik7CiAgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGlj
IFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBjcmVhdGVGcm9tU2VsZWN0aW9uKEZyYW1lKik7CiAg
ICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBjcmVhdGUo
UmFuZ2UqKTsKIAotICAgIFR5cGUgdHlwZSgpIGNvbnN0IG92ZXJyaWRlOwotCiAgICAgV0VCQ09S
RV9FWFBPUlQgUmV0YWluUHRyPENGRGF0YVJlZj4gcmF3RGF0YVJlcHJlc2VudGF0aW9uKCk7CiAK
IHByaXZhdGU6Ci0gICAgTGVnYWN5V2ViQXJjaGl2ZSgpIHsgfQorICAgIExlZ2FjeVdlYkFyY2hp
dmUoKSA9IGRlZmF1bHQ7CisKKyAgICBib29sIHNob3VsZExvYWRGcm9tQXJjaGl2ZU9ubHkoKSBj
b25zdCBmaW5hbCB7IHJldHVybiBmYWxzZTsgfQorICAgIGJvb2wgc2hvdWxkT3ZlcnJpZGVCYXNl
VVJMKCkgY29uc3QgZmluYWwgeyByZXR1cm4gZmFsc2U7IH0KKyAgICBib29sIHNob3VsZFVzZU1h
aW5SZXNvdXJjZUVuY29kaW5nKCkgY29uc3QgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQorICAgIGJv
b2wgc2hvdWxkVXNlTWFpblJlc291cmNlVVJMKCkgY29uc3QgZmluYWwgeyByZXR1cm4gdHJ1ZTsg
fQogCiAgICAgZW51bSBNYWluUmVzb3VyY2VTdGF0dXMgeyBTdWJyZXNvdXJjZSwgTWFpblJlc291
cmNlIH07CiAKQEAgLTYyLDcgKzY1LDcgQEAgcHJpdmF0ZToKICAgICBzdGF0aWMgUmVzb3VyY2VS
ZXNwb25zZSBjcmVhdGVSZXNvdXJjZVJlc3BvbnNlRnJvbU1hY0FyY2hpdmVkRGF0YShDRkRhdGFS
ZWYpOwogICAgIHN0YXRpYyBSZXNvdXJjZVJlc3BvbnNlIGNyZWF0ZVJlc291cmNlUmVzcG9uc2VG
cm9tUHJvcGVydHlMaXN0RGF0YShDRkRhdGFSZWYsIENGU3RyaW5nUmVmIHJlc3BvbnNlRGF0YVR5
cGUpOwogICAgIHN0YXRpYyBSZXRhaW5QdHI8Q0ZEYXRhUmVmPiBjcmVhdGVQcm9wZXJ0eUxpc3RS
ZXByZXNlbnRhdGlvbihjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7Ci0gICAgc3RhdGljIFJldGFp
blB0cjxDRkRpY3Rpb25hcnlSZWY+IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKEFy
Y2hpdmUqKTsKKyAgICBzdGF0aWMgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gY3JlYXRlUHJv
cGVydHlMaXN0UmVwcmVzZW50YXRpb24oQXJjaGl2ZSYpOwogICAgIHN0YXRpYyBSZXRhaW5QdHI8
Q0ZEaWN0aW9uYXJ5UmVmPiBjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihBcmNoaXZl
UmVzb3VyY2UqLCBNYWluUmVzb3VyY2VTdGF0dXMpOwogCiAgICAgYm9vbCBleHRyYWN0KENGRGlj
dGlvbmFyeVJlZik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9t
aHRtbC9NSFRNTEFyY2hpdmUuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvbWh0
bWwvTUhUTUxBcmNoaXZlLmNwcAppbmRleCBlMWYzYWQwNmE1ZjdmMmI4MDU1MzEwNDVkYTRiODZj
MmQzYzgyZGQzLi5hOTIxYjA1ZTg0NmEwNWE1YWZjZTYzMDNhYTE4ZjhiZjMwNzA5ZGI0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRNTEFyY2hpdmUu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL21odG1sL01IVE1MQXJjaGl2
ZS5jcHAKQEAgLTEyMiwxNSArMTIyLDE1IEBAIFJlZlB0cjxNSFRNTEFyY2hpdmU+IE1IVE1MQXJj
aGl2ZTo6Y3JlYXRlKGNvbnN0IFVSTCYgdXJsLCBTaGFyZWRCdWZmZXImIGRhdGEpCiAgICAgICAg
IFJlZlB0cjxNSFRNTEFyY2hpdmU+IGFyY2hpdmUgPSBwYXJzZXIuZnJhbWVBdChpKTsKICAgICAg
ICAgZm9yIChzaXplX3QgaiA9IDE7IGogPCBwYXJzZXIuZnJhbWVDb3VudCgpOyArK2opIHsKICAg
ICAgICAgICAgIGlmIChpICE9IGopCi0gICAgICAgICAgICAgICAgYXJjaGl2ZS0+YWRkU3ViZnJh
bWVBcmNoaXZlKHBhcnNlci5mcmFtZUF0KGopKTsKKyAgICAgICAgICAgICAgICBhcmNoaXZlLT5h
ZGRTdWJmcmFtZUFyY2hpdmUoKnBhcnNlci5mcmFtZUF0KGopKTsKICAgICAgICAgfQogICAgICAg
ICBmb3IgKHNpemVfdCBqID0gMDsgaiA8IHBhcnNlci5zdWJSZXNvdXJjZUNvdW50KCk7ICsraikK
LSAgICAgICAgICAgIGFyY2hpdmUtPmFkZFN1YnJlc291cmNlKHBhcnNlci5zdWJSZXNvdXJjZUF0
KGopKTsKKyAgICAgICAgICAgIGFyY2hpdmUtPmFkZFN1YnJlc291cmNlKCpwYXJzZXIuc3ViUmVz
b3VyY2VBdChqKSk7CiAgICAgfQogICAgIHJldHVybiBtYWluQXJjaGl2ZTsKIH0KIAotUGFzc1Jl
ZlB0cjxTaGFyZWRCdWZmZXI+IE1IVE1MQXJjaGl2ZTo6Z2VuZXJhdGVNSFRNTERhdGEoUGFnZSog
cGFnZSkKK1JlZlB0cjxTaGFyZWRCdWZmZXI+IE1IVE1MQXJjaGl2ZTo6Z2VuZXJhdGVNSFRNTERh
dGEoUGFnZSogcGFnZSkKIHsKICAgICBWZWN0b3I8UGFnZVNlcmlhbGl6ZXI6OlJlc291cmNlPiBy
ZXNvdXJjZXM7CiAgICAgUGFnZVNlcmlhbGl6ZXIgcGFnZVNlcmlhbGl6ZXIoJnJlc291cmNlcyk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRNTEFy
Y2hpdmUuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL21odG1sL01IVE1MQXJjaGl2
ZS5oCmluZGV4IGNhMjAwMDM3OWJkZjQxMmY0ZTQxMjRlYWYyMWFiYTY2YTE1ZTM0YjIuLjg1MjQ2
NTlhYWIyMjBkZTA3NWM2NzdhYjcwZjE5YWNjYzg4MThkZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9hcmNoaXZlL21odG1sL01IVE1MQXJjaGl2ZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9hcmNoaXZlL21odG1sL01IVE1MQXJjaGl2ZS5oCkBAIC00MCwyMiArNDAs
MjQgQEAgY2xhc3MgTUhUTUxQYXJzZXI7CiBjbGFzcyBQYWdlOwogY2xhc3MgU2hhcmVkQnVmZmVy
OwogCi1jbGFzcyBNSFRNTEFyY2hpdmUgOiBwdWJsaWMgQXJjaGl2ZSB7CitjbGFzcyBNSFRNTEFy
Y2hpdmUgZmluYWwgOiBwdWJsaWMgQXJjaGl2ZSB7CiBwdWJsaWM6Ci0gICAgVHlwZSB0eXBlKCkg
Y29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gTUhUTUw7IH0KLQogICAgIHN0YXRpYyBSZWY8TUhUTUxB
cmNoaXZlPiBjcmVhdGUoKTsKICAgICBzdGF0aWMgUmVmUHRyPE1IVE1MQXJjaGl2ZT4gY3JlYXRl
KGNvbnN0IFVSTCYsIFNoYXJlZEJ1ZmZlciYpOwogCi0gICAgc3RhdGljIFBhc3NSZWZQdHI8U2hh
cmVkQnVmZmVyPiBnZW5lcmF0ZU1IVE1MRGF0YShQYWdlKik7CisgICAgc3RhdGljIFJlZlB0cjxT
aGFyZWRCdWZmZXI+IGdlbmVyYXRlTUhUTUxEYXRhKFBhZ2UqKTsKIAogICAgIHZpcnR1YWwgfk1I
VE1MQXJjaGl2ZSgpOwogCiBwcml2YXRlOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFNoYXJlZEJ1
ZmZlcj4gZ2VuZXJhdGVNSFRNTERhdGEoUGFnZSosIGJvb2wgdXNlQmluYXJ5RW5jb2RpbmcpOwot
CiAgICAgZnJpZW5kIGNsYXNzIE1IVE1MUGFyc2VyOworCiAgICAgTUhUTUxBcmNoaXZlKCk7CisK
KyAgICBib29sIHNob3VsZExvYWRGcm9tQXJjaGl2ZU9ubHkoKSBjb25zdCBmaW5hbCB7IHJldHVy
biB0cnVlOyB9CisgICAgYm9vbCBzaG91bGRPdmVycmlkZUJhc2VVUkwoKSBjb25zdCBmaW5hbCB7
IHJldHVybiB0cnVlOyB9CisgICAgYm9vbCBzaG91bGRVc2VNYWluUmVzb3VyY2VFbmNvZGluZygp
IGNvbnN0IGZpbmFsIHsgcmV0dXJuIGZhbHNlOyB9CisgICAgYm9vbCBzaG91bGRVc2VNYWluUmVz
b3VyY2VVUkwoKSBjb25zdCBmaW5hbCB7IHJldHVybiBmYWxzZTsgfQogfTsKIAogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUv
bWh0bWwvTUhUTUxQYXJzZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvbWh0
bWwvTUhUTUxQYXJzZXIuY3BwCmluZGV4IGY4YTA3ZWRkYWE2YTgzMzAwNmFlMDA2ODBjOTdmZDcw
OTFjNmQ5Y2EuLmIwNDE0ZWJjOTYxNTViMTViYTE0YzZmM2Q1ODg5NWY2ZjMyNzAyYTIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL21odG1sL01IVE1MUGFyc2VyLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRNTFBhcnNlci5j
cHAKQEAgLTc1LDcgKzc1LDcgQEAgUmVmUHRyPE1IVE1MQXJjaGl2ZT4gTUhUTUxQYXJzZXI6OnBh
cnNlQXJjaGl2ZVdpdGhIZWFkZXIoTUlNRUhlYWRlciogaGVhZGVyKQogICAgICAgICBSZWZQdHI8
QXJjaGl2ZVJlc291cmNlPiByZXNvdXJjZSA9IHBhcnNlTmV4dFBhcnQoKmhlYWRlciwgU3RyaW5n
KCksIFN0cmluZygpLCBlbmRPZkFyY2hpdmVSZWFjaGVkKTsKICAgICAgICAgaWYgKCFyZXNvdXJj
ZSkKICAgICAgICAgICAgIHJldHVybiBudWxscHRyOwotICAgICAgICBhcmNoaXZlLT5zZXRNYWlu
UmVzb3VyY2UocmVzb3VyY2UpOworICAgICAgICBhcmNoaXZlLT5zZXRNYWluUmVzb3VyY2UocmVz
b3VyY2UucmVsZWFzZU5vbk51bGwoKSk7CiAgICAgICAgIHJldHVybiBhcmNoaXZlOwogICAgIH0K
IApAQCAtMTAxLDcgKzEwMSw3IEBAIFJlZlB0cjxNSFRNTEFyY2hpdmU+IE1IVE1MUGFyc2VyOjpw
YXJzZUFyY2hpdmVXaXRoSGVhZGVyKE1JTUVIZWFkZXIqIGhlYWRlcikKICAgICAgICAgICAgIC8v
IFRoZSB0b3AtZnJhbWUgaXMgdGhlIGZpcnN0IGZyYW1lIGZvdW5kLCByZWdhcmRsZXNzIG9mIHRo
ZSBuZXN0aW5nIGxldmVsLgogICAgICAgICAgICAgaWYgKHN1YmZyYW1lQXJjaGl2ZS0+bWFpblJl
c291cmNlKCkpCiAgICAgICAgICAgICAgICAgYWRkUmVzb3VyY2VUb0FyY2hpdmUoc3ViZnJhbWVB
cmNoaXZlLT5tYWluUmVzb3VyY2UoKSwgYXJjaGl2ZS5nZXQoKSk7Ci0gICAgICAgICAgICBhcmNo
aXZlLT5hZGRTdWJmcmFtZUFyY2hpdmUoc3ViZnJhbWVBcmNoaXZlKTsKKyAgICAgICAgICAgIGFy
Y2hpdmUtPmFkZFN1YmZyYW1lQXJjaGl2ZShzdWJmcmFtZUFyY2hpdmUucmVsZWFzZU5vbk51bGwo
KSk7CiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgfQogCkBAIC0xMjYsMTMgKzEyNiwx
MyBAQCB2b2lkIE1IVE1MUGFyc2VyOjphZGRSZXNvdXJjZVRvQXJjaGl2ZShBcmNoaXZlUmVzb3Vy
Y2UqIHJlc291cmNlLCBNSFRNTEFyY2hpdmUqCiAKICAgICAvLyBUaGUgZmlyc3QgZG9jdW1lbnQg
c3VpdGFibGUgcmVzb3VyY2UgaXMgdGhlIG1haW4gZnJhbWUuCiAgICAgaWYgKCFhcmNoaXZlLT5t
YWluUmVzb3VyY2UoKSkgewotICAgICAgICBhcmNoaXZlLT5zZXRNYWluUmVzb3VyY2UocmVzb3Vy
Y2UpOworICAgICAgICBhcmNoaXZlLT5zZXRNYWluUmVzb3VyY2UoKnJlc291cmNlKTsKICAgICAg
ICAgbV9mcmFtZXMuYXBwZW5kKGFyY2hpdmUpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCiAg
ICAgUmVmUHRyPE1IVE1MQXJjaGl2ZT4gc3ViZnJhbWUgPSBNSFRNTEFyY2hpdmU6OmNyZWF0ZSgp
OwotICAgIHN1YmZyYW1lLT5zZXRNYWluUmVzb3VyY2UocmVzb3VyY2UpOworICAgIHN1YmZyYW1l
LT5zZXRNYWluUmVzb3VyY2UoKnJlc291cmNlKTsKICAgICBtX2ZyYW1lcy5hcHBlbmQoc3ViZnJh
bWUpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
Q1NTU3R5bGVTaGVldC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkQ1NT
U3R5bGVTaGVldC5jcHAKaW5kZXggOGJmMDY5MWFjNDk2NjU1MThjZmE4YWI1ZTkxMTA1MDdkZWQ3
NzA2OS4uYWY0MGNjMjA0YWQwNDdmODVjMjM0MTdjYmNlN2YxOTdlM2JlNjI0MSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZENTU1N0eWxlU2hlZXQuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmNwcApA
QCAtMyw3ICszLDcgQEAKICAgICBDb3B5cmlnaHQgKEMpIDIwMDEgRGlyayBNdWVsbGVyIChtdWVs
bGVyQGtkZS5vcmcpCiAgICAgQ29weXJpZ2h0IChDKSAyMDAyIFdhbGRvIEJhc3RpYW4gKGJhc3Rp
YW5Aa2RlLm9yZykKICAgICBDb3B5cmlnaHQgKEMpIDIwMDYgU2FtdWVsIFdlaW5pZyAoc2FtLndl
aW5pZ0BnbWFpbC5jb20pCi0gICAgQ29weXJpZ2h0IChDKSAyMDA0LCAyMDA1LCAyMDA2IEFwcGxl
IEluYy4KKyAgICBDb3B5cmlnaHQgKEMpIDIwMDQtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCiAKICAgICBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiBy
ZWRpc3RyaWJ1dGUgaXQgYW5kL29yCiAgICAgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0
aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKQEAgLTE5LDkgKzE5LDYgQEAKICAgICBhbG9u
ZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3
cml0ZSB0bwogICAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5r
bGluIFN0cmVldCwgRmlmdGggRmxvb3IsCiAgICAgQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0Eu
Ci0KLSAgICBUaGlzIGNsYXNzIHByb3ZpZGVzIGFsbCBmdW5jdGlvbmFsaXR5IG5lZWRlZCBmb3Ig
bG9hZGluZyBpbWFnZXMsIHN0eWxlIHNoZWV0cyBhbmQgaHRtbAotICAgIHBhZ2VzIGZyb20gdGhl
IHdlYi4gSXQgaGFzIGEgbWVtb3J5IGNhY2hlIGZvciB0aGVzZSBvYmplY3RzLgogKi8KIAogI2lu
Y2x1ZGUgImNvbmZpZy5oIgpAQCAtMTU2LDcgKzE1Myw3IEBAIHZvaWQgQ2FjaGVkQ1NTU3R5bGVT
aGVldDo6ZGVzdHJveURlY29kZWREYXRhKCkKICAgICBzZXREZWNvZGVkU2l6ZSgwKTsKIH0KIAot
UGFzc1JlZlB0cjxTdHlsZVNoZWV0Q29udGVudHM+IENhY2hlZENTU1N0eWxlU2hlZXQ6OnJlc3Rv
cmVQYXJzZWRTdHlsZVNoZWV0KGNvbnN0IENTU1BhcnNlckNvbnRleHQmIGNvbnRleHQsIENhY2hl
UG9saWN5IGNhY2hlUG9saWN5KQorUmVmUHRyPFN0eWxlU2hlZXRDb250ZW50cz4gQ2FjaGVkQ1NT
U3R5bGVTaGVldDo6cmVzdG9yZVBhcnNlZFN0eWxlU2hlZXQoY29uc3QgQ1NTUGFyc2VyQ29udGV4
dCYgY29udGV4dCwgQ2FjaGVQb2xpY3kgY2FjaGVQb2xpY3kpCiB7CiAgICAgaWYgKCFtX3BhcnNl
ZFN0eWxlU2hlZXRDYWNoZSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CkBAIC0xODAsNyArMTc3
LDcgQEAgUGFzc1JlZlB0cjxTdHlsZVNoZWV0Q29udGVudHM+IENhY2hlZENTU1N0eWxlU2hlZXQ6
OnJlc3RvcmVQYXJzZWRTdHlsZVNoZWV0KGNvbnMKIAogdm9pZCBDYWNoZWRDU1NTdHlsZVNoZWV0
OjpzYXZlUGFyc2VkU3R5bGVTaGVldChSZWY8U3R5bGVTaGVldENvbnRlbnRzPiYmIHNoZWV0KQog
ewotICAgIEFTU0VSVChzaGVldC5nZXQoKS5pc0NhY2hlYWJsZSgpKTsKKyAgICBBU1NFUlQoc2hl
ZXQtPmlzQ2FjaGVhYmxlKCkpOwogCiAgICAgaWYgKG1fcGFyc2VkU3R5bGVTaGVldENhY2hlKQog
ICAgICAgICBtX3BhcnNlZFN0eWxlU2hlZXRDYWNoZS0+cmVtb3ZlZEZyb21NZW1vcnlDYWNoZSgp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZENTU1N0eWxl
U2hlZXQuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0
LmgKaW5kZXggM2M4YWUyOGRkMjdhZWY4MGFlMmRlZWI0YTMzNmU3NDg1NGU3ZWYwYy4uYzMzYWEy
ZTQwODU1MzhiYzdiNDU2ZjQxNjM5YzJjYzE4NzlmODc0ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZENTU1N0eWxlU2hlZXQuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5oCkBAIC0yLDcgKzIsNyBAQAog
ICAgIENvcHlyaWdodCAoQykgMTk5OCBMYXJzIEtub2xsIChrbm9sbEBtcGktaGQubXBnLmRlKQog
ICAgIENvcHlyaWdodCAoQykgMjAwMSBEaXJrIE11ZWxsZXIgPG11ZWxsZXJAa2RlLm9yZz4KICAg
ICBDb3B5cmlnaHQgKEMpIDIwMDYgU2FtdWVsIFdlaW5pZyAoc2FtLndlaW5pZ0BnbWFpbC5jb20p
Ci0gICAgQ29weXJpZ2h0IChDKSAyMDA0LCAyMDA1LCAyMDA2LCAyMDA3LCAyMDA4IEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAgICBDb3B5cmlnaHQgKEMpIDIwMDQtMjAxNyBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAKICAgICBUaGlzIGxpYnJhcnkgaXMgZnJlZSBz
b2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCiAgICAgbW9kaWZ5IGl0IHVu
ZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKQEAgLTE4LDkg
KzE4LDYgQEAKICAgICBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJ
TkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bwogICAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp
b24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCiAgICAgQm9zdG9uLCBN
QSAwMjExMC0xMzAxLCBVU0EuCi0KLSAgICBUaGlzIGNsYXNzIHByb3ZpZGVzIGFsbCBmdW5jdGlv
bmFsaXR5IG5lZWRlZCBmb3IgbG9hZGluZyBpbWFnZXMsIHN0eWxlIHNoZWV0cyBhbmQgaHRtbAot
ICAgIHBhZ2VzIGZyb20gdGhlIHdlYi4gSXQgaGFzIGEgbWVtb3J5IGNhY2hlIGZvciB0aGVzZSBv
YmplY3RzLgogKi8KIAogI3ByYWdtYSBvbmNlCkBAIC0yOSw0NCArMjYsNDQgQEAKIAogbmFtZXNw
YWNlIFdlYkNvcmUgewogCi0gICAgY2xhc3MgQ2FjaGVkUmVzb3VyY2VDbGllbnQ7Ci0gICAgY2xh
c3MgU3R5bGVTaGVldENvbnRlbnRzOwotICAgIGNsYXNzIFRleHRSZXNvdXJjZURlY29kZXI7Ci0g
ICAgc3RydWN0IENTU1BhcnNlckNvbnRleHQ7CitjbGFzcyBTdHlsZVNoZWV0Q29udGVudHM7Citj
bGFzcyBUZXh0UmVzb3VyY2VEZWNvZGVyOworCitzdHJ1Y3QgQ1NTUGFyc2VyQ29udGV4dDsKIAot
ICAgIGNsYXNzIENhY2hlZENTU1N0eWxlU2hlZXQgZmluYWwgOiBwdWJsaWMgQ2FjaGVkUmVzb3Vy
Y2UgewotICAgIHB1YmxpYzoKLSAgICAgICAgQ2FjaGVkQ1NTU3R5bGVTaGVldChDYWNoZWRSZXNv
dXJjZVJlcXVlc3QmJiwgU2Vzc2lvbklEKTsKLSAgICAgICAgdmlydHVhbCB+Q2FjaGVkQ1NTU3R5
bGVTaGVldCgpOworY2xhc3MgQ2FjaGVkQ1NTU3R5bGVTaGVldCBmaW5hbCA6IHB1YmxpYyBDYWNo
ZWRSZXNvdXJjZSB7CitwdWJsaWM6CisgICAgQ2FjaGVkQ1NTU3R5bGVTaGVldChDYWNoZWRSZXNv
dXJjZVJlcXVlc3QmJiwgU2Vzc2lvbklEKTsKKyAgICB2aXJ0dWFsIH5DYWNoZWRDU1NTdHlsZVNo
ZWV0KCk7CiAKLSAgICAgICAgZW51bSBjbGFzcyBNSU1FVHlwZUNoZWNrIHsgU3RyaWN0LCBMYXgg
fTsKLSAgICAgICAgY29uc3QgU3RyaW5nIHNoZWV0VGV4dChNSU1FVHlwZUNoZWNrID0gTUlNRVR5
cGVDaGVjazo6U3RyaWN0LCBib29sKiBoYXNWYWxpZE1JTUVUeXBlID0gbnVsbHB0cikgY29uc3Q7
CisgICAgZW51bSBjbGFzcyBNSU1FVHlwZUNoZWNrIHsgU3RyaWN0LCBMYXggfTsKKyAgICBjb25z
dCBTdHJpbmcgc2hlZXRUZXh0KE1JTUVUeXBlQ2hlY2sgPSBNSU1FVHlwZUNoZWNrOjpTdHJpY3Qs
IGJvb2wqIGhhc1ZhbGlkTUlNRVR5cGUgPSBudWxscHRyKSBjb25zdDsKIAotICAgICAgICBQYXNz
UmVmUHRyPFN0eWxlU2hlZXRDb250ZW50cz4gcmVzdG9yZVBhcnNlZFN0eWxlU2hlZXQoY29uc3Qg
Q1NTUGFyc2VyQ29udGV4dCYsIENhY2hlUG9saWN5KTsKLSAgICAgICAgdm9pZCBzYXZlUGFyc2Vk
U3R5bGVTaGVldChSZWY8U3R5bGVTaGVldENvbnRlbnRzPiYmKTsKKyAgICBSZWZQdHI8U3R5bGVT
aGVldENvbnRlbnRzPiByZXN0b3JlUGFyc2VkU3R5bGVTaGVldChjb25zdCBDU1NQYXJzZXJDb250
ZXh0JiwgQ2FjaGVQb2xpY3kpOworICAgIHZvaWQgc2F2ZVBhcnNlZFN0eWxlU2hlZXQoUmVmPFN0
eWxlU2hlZXRDb250ZW50cz4mJik7CiAKLSAgICBwcml2YXRlOgotICAgICAgICBib29sIGNhblVz
ZVNoZWV0KE1JTUVUeXBlQ2hlY2ssIGJvb2wqIGhhc1ZhbGlkTUlNRVR5cGUpIGNvbnN0OwotICAg
ICAgICBib29sIG1heVRyeVJlcGxhY2VFbmNvZGVkRGF0YSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJu
IHRydWU7IH0KK3ByaXZhdGU6CisgICAgYm9vbCBjYW5Vc2VTaGVldChNSU1FVHlwZUNoZWNrLCBi
b29sKiBoYXNWYWxpZE1JTUVUeXBlKSBjb25zdDsKKyAgICBib29sIG1heVRyeVJlcGxhY2VFbmNv
ZGVkRGF0YSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KIAotICAgICAgICB2b2lkIGRp
ZEFkZENsaWVudChDYWNoZWRSZXNvdXJjZUNsaWVudCYpIGZpbmFsOworICAgIHZvaWQgZGlkQWRk
Q2xpZW50KENhY2hlZFJlc291cmNlQ2xpZW50JikgZmluYWw7CiAKLSAgICAgICAgdm9pZCBzZXRF
bmNvZGluZyhjb25zdCBTdHJpbmcmKSBmaW5hbDsKLSAgICAgICAgU3RyaW5nIGVuY29kaW5nKCkg
Y29uc3QgZmluYWw7Ci0gICAgICAgIGNvbnN0IFRleHRSZXNvdXJjZURlY29kZXIqIHRleHRSZXNv
dXJjZURlY29kZXIoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2RlY29kZXIuZ2V0KCk7IH0KLSAg
ICAgICAgdm9pZCBmaW5pc2hMb2FkaW5nKFNoYXJlZEJ1ZmZlciopIGZpbmFsOwotICAgICAgICB2
b2lkIGRlc3Ryb3lEZWNvZGVkRGF0YSgpIGZpbmFsOworICAgIHZvaWQgc2V0RW5jb2RpbmcoY29u
c3QgU3RyaW5nJikgZmluYWw7CisgICAgU3RyaW5nIGVuY29kaW5nKCkgY29uc3QgZmluYWw7Cisg
ICAgY29uc3QgVGV4dFJlc291cmNlRGVjb2RlciogdGV4dFJlc291cmNlRGVjb2RlcigpIGNvbnN0
IGZpbmFsIHsgcmV0dXJuIG1fZGVjb2Rlci5nZXQoKTsgfQorICAgIHZvaWQgZmluaXNoTG9hZGlu
ZyhTaGFyZWRCdWZmZXIqKSBmaW5hbDsKKyAgICB2b2lkIGRlc3Ryb3lEZWNvZGVkRGF0YSgpIGZp
bmFsOwogCi0gICAgICAgIHZvaWQgc2V0Qm9keURhdGFGcm9tKGNvbnN0IENhY2hlZFJlc291cmNl
JikgZmluYWw7CisgICAgdm9pZCBzZXRCb2R5RGF0YUZyb20oY29uc3QgQ2FjaGVkUmVzb3VyY2Um
KSBmaW5hbDsKIAotICAgIHByb3RlY3RlZDoKLSAgICAgICAgdm9pZCBjaGVja05vdGlmeSgpIGZp
bmFsOworcHJvdGVjdGVkOgorICAgIHZvaWQgY2hlY2tOb3RpZnkoKSBmaW5hbDsKIAotICAgICAg
ICBSZWZQdHI8VGV4dFJlc291cmNlRGVjb2Rlcj4gbV9kZWNvZGVyOwotICAgICAgICBTdHJpbmcg
bV9kZWNvZGVkU2hlZXRUZXh0OworICAgIFJlZlB0cjxUZXh0UmVzb3VyY2VEZWNvZGVyPiBtX2Rl
Y29kZXI7CisgICAgU3RyaW5nIG1fZGVjb2RlZFNoZWV0VGV4dDsKIAotICAgICAgICBSZWZQdHI8
U3R5bGVTaGVldENvbnRlbnRzPiBtX3BhcnNlZFN0eWxlU2hlZXRDYWNoZTsKLSAgICB9OworICAg
IFJlZlB0cjxTdHlsZVNoZWV0Q29udGVudHM+IG1fcGFyc2VkU3R5bGVTaGVldENhY2hlOworfTsK
IAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3QuY3BwCmluZGV4IDQ3M2FjZDU5ZjAzNGEx
MTJiZWU2NDM1MTVkNmNiMjliNWI1MDE1NGIuLjZkMGMyMjExOWFlMzRiMWNkMDRmYTNmMTBhNTM0
NmVmNjFiMDYyNWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNo
ZWRSZXNvdXJjZVJlcXVlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9D
YWNoZWRSZXNvdXJjZVJlcXVlc3QuY3BwCkBAIC01OSwxNSArNTksMTcgQEAgU3RyaW5nIENhY2hl
ZFJlc291cmNlUmVxdWVzdDo6c3BsaXRGcmFnbWVudElkZW50aWZpZXJGcm9tUmVxdWVzdFVSTChS
ZXNvdXJjZVJlcXUKICAgICByZXR1cm4gZnJhZ21lbnRJZGVudGlmaWVyOwogfQogCi12b2lkIENh
Y2hlZFJlc291cmNlUmVxdWVzdDo6c2V0SW5pdGlhdG9yKFBhc3NSZWZQdHI8RWxlbWVudD4gZWxl
bWVudCkKK3ZvaWQgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0OjpzZXRJbml0aWF0b3IoRWxlbWVudCYg
ZWxlbWVudCkKIHsKLSAgICBBU1NFUlQoIW1faW5pdGlhdG9yRWxlbWVudCAmJiBtX2luaXRpYXRv
ck5hbWUuaXNFbXB0eSgpKTsKLSAgICBtX2luaXRpYXRvckVsZW1lbnQgPSBlbGVtZW50OworICAg
IEFTU0VSVCghbV9pbml0aWF0b3JFbGVtZW50KTsKKyAgICBBU1NFUlQobV9pbml0aWF0b3JOYW1l
LmlzRW1wdHkoKSk7CisgICAgbV9pbml0aWF0b3JFbGVtZW50ID0gJmVsZW1lbnQ7CiB9CiAKIHZv
aWQgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0OjpzZXRJbml0aWF0b3IoY29uc3QgQXRvbWljU3RyaW5n
JiBuYW1lKQogewotICAgIEFTU0VSVCghbV9pbml0aWF0b3JFbGVtZW50ICYmIG1faW5pdGlhdG9y
TmFtZS5pc0VtcHR5KCkpOworICAgIEFTU0VSVCghbV9pbml0aWF0b3JFbGVtZW50KTsKKyAgICBB
U1NFUlQobV9pbml0aWF0b3JOYW1lLmlzRW1wdHkoKSk7CiAgICAgbV9pbml0aWF0b3JOYW1lID0g
bmFtZTsKIH0KIApAQCAtMjA5LDEwICsyMTEsMTIgQEAgdm9pZCBDYWNoZWRSZXNvdXJjZVJlcXVl
c3Q6OnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcklmTmVlZGVkKCkKIH0KIAogI2lmIEVOQUJMRShD
T05URU5UX0VYVEVOU0lPTlMpCisKIHZvaWQgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0OjphcHBseUJs
b2NrZWRTdGF0dXMoY29uc3QgQ29udGVudEV4dGVuc2lvbnM6OkJsb2NrZWRTdGF0dXMmIGJsb2Nr
ZWRTdGF0dXMpCiB7CiAgICAgQ29udGVudEV4dGVuc2lvbnM6OmFwcGx5QmxvY2tlZFN0YXR1c1Rv
UmVxdWVzdChibG9ja2VkU3RhdHVzLCBtX3Jlc291cmNlUmVxdWVzdCk7CiB9CisKICNlbmRpZgog
CiB2b2lkIENhY2hlZFJlc291cmNlUmVxdWVzdDo6dXBkYXRlUmVmZXJyZXJPcmlnaW5BbmRVc2Vy
QWdlbnRIZWFkZXJzKEZyYW1lTG9hZGVyJiBmcmFtZUxvYWRlciwgUmVmZXJyZXJQb2xpY3kgZGVm
YXVsdFBvbGljeSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNo
ZWRSZXNvdXJjZVJlcXVlc3QuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRS
ZXNvdXJjZVJlcXVlc3QuaAppbmRleCAwZThhNGMzZmI5M2JlNTEzMjk0ZDRmMDQ1ZTk5ZWY5YWU3
MTA3NjAwLi5lZWVkMWExZmZmNDU2ZjJmYzMxMzYyYmNlNGFjNmZmYzgyN2RmYjYxIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmgK
KysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdC5o
CkBAIC01OCw3ICs1OCw3IEBAIHB1YmxpYzoKICAgICBjb25zdCBSZXNvdXJjZUxvYWRlck9wdGlv
bnMmIG9wdGlvbnMoKSBjb25zdCB7IHJldHVybiBtX29wdGlvbnM7IH0KICAgICB2b2lkIHNldE9w
dGlvbnMoY29uc3QgUmVzb3VyY2VMb2FkZXJPcHRpb25zJiBvcHRpb25zKSB7IG1fb3B0aW9ucyA9
IG9wdGlvbnM7IH0KICAgICBjb25zdCBzdGQ6Om9wdGlvbmFsPFJlc291cmNlTG9hZFByaW9yaXR5
PiYgcHJpb3JpdHkoKSBjb25zdCB7IHJldHVybiBtX3ByaW9yaXR5OyB9Ci0gICAgdm9pZCBzZXRJ
bml0aWF0b3IoUGFzc1JlZlB0cjxFbGVtZW50Pik7CisgICAgdm9pZCBzZXRJbml0aWF0b3IoRWxl
bWVudCYpOwogICAgIHZvaWQgc2V0SW5pdGlhdG9yKGNvbnN0IEF0b21pY1N0cmluZyYgbmFtZSk7
CiAgICAgY29uc3QgQXRvbWljU3RyaW5nJiBpbml0aWF0b3JOYW1lKCkgY29uc3Q7CiAgICAgYm9v
bCBhbGxvd3NDYWNoaW5nKCkgY29uc3QgeyByZXR1cm4gbV9vcHRpb25zLmNhY2hpbmdQb2xpY3kg
PT0gQ2FjaGluZ1BvbGljeTo6QWxsb3dDYWNoaW5nOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvci5oIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2NvY29hL0Rpc2tDYWNoZU1vbml0b3IuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggODVkYWVjNzBhMjA5YzcyZGVjOTZiMmRhZmNiNGM3NzU4ZGJjZTI3ZC4uMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
Y29jb2EvRGlza0NhY2hlTW9uaXRvci5oCisrKyAvZGV2L251bGwKQEAgLTEsNjIgKzAsMCBAQAot
LyoKLSAqIENvcHlyaWdodCAoQykgMjAxNCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
Ci0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMu
IEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBB
UFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgotICovCi0KLSNwcmFnbWEgb25jZQotCi0jaW5jbHVkZSAiUmVzb3VyY2VSZXF1ZXN0Lmgi
Ci0jaW5jbHVkZSAiU2Vzc2lvbklELmgiCi0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KLQot
dHlwZWRlZiBjb25zdCBzdHJ1Y3QgX0NGQ2FjaGVkVVJMUmVzcG9uc2UqIENGQ2FjaGVkVVJMUmVz
cG9uc2VSZWY7Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgU2hhcmVkQnVmZmVyOwot
Ci1jbGFzcyBEaXNrQ2FjaGVNb25pdG9yIHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgdm9pZCBtb25p
dG9yRmlsZUJhY2tpbmdTdG9yZUNyZWF0aW9uKGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIFNlc3Np
b25JRCwgQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZik7Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8U2hh
cmVkQnVmZmVyPiB0cnlHZXRGaWxlQmFja2VkU2hhcmVkQnVmZmVyRnJvbUNGVVJMQ2FjaGVkUmVz
cG9uc2UoQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZik7Ci0gICAgdmlydHVhbCB+RGlza0NhY2hlTW9u
aXRvcigpIHsgfQotCi1wcm90ZWN0ZWQ6Ci0gICAgRGlza0NhY2hlTW9uaXRvcihjb25zdCBSZXNv
dXJjZVJlcXVlc3QmLCBTZXNzaW9uSUQsIENGQ2FjaGVkVVJMUmVzcG9uc2VSZWYpOwotCi0gICAg
dmlydHVhbCB2b2lkIHJlc291cmNlQmVjYW1lRmlsZUJhY2tlZChQYXNzUmVmUHRyPFNoYXJlZEJ1
ZmZlcj4pOwotCi0gICAgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXNvdXJjZVJlcXVlc3QoKSBj
b25zdCB7IHJldHVybiBtX3Jlc291cmNlUmVxdWVzdDsgfQotICAgIFNlc3Npb25JRCBzZXNzaW9u
SUQoKSBjb25zdCB7IHJldHVybiBtX3Nlc3Npb25JRDsgfQotCi1wcml2YXRlOgotICAgIFJlc291
cmNlUmVxdWVzdCBtX3Jlc291cmNlUmVxdWVzdDsKLSAgICBTZXNzaW9uSUQgbV9zZXNzaW9uSUQ7
Ci19OwotCi0jaWYgKFBMQVRGT1JNKElPUykgJiYgX19JUEhPTkVfT1NfVkVSU0lPTl9NSU5fUkVR
VUlSRUQgPCA4MDAwMCkgfHwgKFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01J
Tl9SRVFVSVJFRCA8IDEwOTApCi12b2lkIERpc2tDYWNoZU1vbml0b3I6Om1vbml0b3JGaWxlQmFj
a2luZ1N0b3JlQ3JlYXRpb24oY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgU2Vzc2lvbklELCBDRkNh
Y2hlZFVSTFJlc3BvbnNlUmVmKSB7IH0KLVBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBEaXNrQ2Fj
aGVNb25pdG9yOjp0cnlHZXRGaWxlQmFja2VkU2hhcmVkQnVmZmVyRnJvbUNGVVJMQ2FjaGVkUmVz
cG9uc2UoQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZikgeyByZXR1cm4gbnVsbHB0cjsgfQotI2VuZGlm
Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2NvY29hL0Rpc2tDYWNoZU1vbml0b3JDb2NvYS5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NvY29hL0Rpc2tDYWNoZU1vbml0b3JDb2NvYS5oCmluZGV4IDE4NmMzNGFmOTdmYmVlYjM4ZjY0
M2Q0MTcyN2YxNDhmNTE2YWFhNmQuLjYzMDRmMWYwNmVkMDFhYzBkY2ZmOGQzZGIzYjY1MTc3ZjFm
NzkyMWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jb2NvYS9EaXNrQ2FjaGVN
b25pdG9yQ29jb2EuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY29jb2EvRGlza0NhY2hl
TW9uaXRvckNvY29hLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDE0
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxNC0y
MDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwpAQCAtMjcsNyArMjcsNiBAQAogCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXF1ZXN0
LmgiCiAjaW5jbHVkZSAiU2Vzc2lvbklELmgiCi0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4K
IAogdHlwZWRlZiBjb25zdCBzdHJ1Y3QgX0NGQ2FjaGVkVVJMUmVzcG9uc2UqIENGQ2FjaGVkVVJM
UmVzcG9uc2VSZWY7CiAKQEAgLTM1LDIxICszNCwxOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
IGNsYXNzIFNoYXJlZEJ1ZmZlcjsKIAotY2xhc3MgV0VCQ09SRV9FWFBPUlQgRGlza0NhY2hlTW9u
aXRvciB7CitjbGFzcyBEaXNrQ2FjaGVNb25pdG9yIHsKIHB1YmxpYzoKICAgICBzdGF0aWMgdm9p
ZCBtb25pdG9yRmlsZUJhY2tpbmdTdG9yZUNyZWF0aW9uKGNvbnN0IFJlc291cmNlUmVxdWVzdCYs
IFNlc3Npb25JRCwgQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZik7Ci0gICAgc3RhdGljIFBhc3NSZWZQ
dHI8U2hhcmVkQnVmZmVyPiB0cnlHZXRGaWxlQmFja2VkU2hhcmVkQnVmZmVyRnJvbUNGVVJMQ2Fj
aGVkUmVzcG9uc2UoQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZik7Ci0gICAgdmlydHVhbCB+RGlza0Nh
Y2hlTW9uaXRvcigpIHsgfQorICAgIHN0YXRpYyBSZWZQdHI8U2hhcmVkQnVmZmVyPiB0cnlHZXRG
aWxlQmFja2VkU2hhcmVkQnVmZmVyRnJvbUNGVVJMQ2FjaGVkUmVzcG9uc2UoQ0ZDYWNoZWRVUkxS
ZXNwb25zZVJlZik7CiAKLXByb3RlY3RlZDoKLSAgICBXRUJDT1JFX0VYUE9SVCBEaXNrQ2FjaGVN
b25pdG9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIFNlc3Npb25JRCwgQ0ZDYWNoZWRVUkxSZXNw
b25zZVJlZik7Citwcml2YXRlOgorICAgIERpc2tDYWNoZU1vbml0b3IoY29uc3QgUmVzb3VyY2VS
ZXF1ZXN0JiwgU2Vzc2lvbklELCBDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKTsKIAotICAgIHZpcnR1
YWwgdm9pZCByZXNvdXJjZUJlY2FtZUZpbGVCYWNrZWQoU2hhcmVkQnVmZmVyJik7CisgICAgdm9p
ZCByZXNvdXJjZUJlY2FtZUZpbGVCYWNrZWQoU2hhcmVkQnVmZmVyJik7CiAKICAgICBjb25zdCBS
ZXNvdXJjZVJlcXVlc3QmIHJlc291cmNlUmVxdWVzdCgpIGNvbnN0IHsgcmV0dXJuIG1fcmVzb3Vy
Y2VSZXF1ZXN0OyB9CiAgICAgU2Vzc2lvbklEIHNlc3Npb25JRCgpIGNvbnN0IHsgcmV0dXJuIG1f
c2Vzc2lvbklEOyB9CiAKLXByaXZhdGU6CiAgICAgUmVzb3VyY2VSZXF1ZXN0IG1fcmVzb3VyY2VS
ZXF1ZXN0OwogICAgIFNlc3Npb25JRCBtX3Nlc3Npb25JRDsKIH07CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvckNvY29hLm1tIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2NvY29hL0Rpc2tDYWNoZU1vbml0b3JDb2NvYS5tbQppbmRleCA2ODU4
MDM2MGI4ZWJjZGNhY2E4YTNlOTM4NDk4YTE5NzU1MmRjMTZhLi42YWM0NWExNmZlOTZjMzhhNzI5
MjhjMTljNTVkYzFlZTNjY2VhYTRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
Y29jb2EvRGlza0NhY2hlTW9uaXRvckNvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9jb2NvYS9EaXNrQ2FjaGVNb25pdG9yQ29jb2EubW0KQEAgLTI5LDExICsyOSw4IEBACiAjaW1w
b3J0ICJDRk5ldHdvcmtTUEkuaCIKICNpbXBvcnQgIkNhY2hlZFJlc291cmNlLmgiCiAjaW1wb3J0
ICJNZW1vcnlDYWNoZS5oIgotI2ltcG9ydCAiUmVzb3VyY2VSZXF1ZXN0LmgiCi0jaW1wb3J0ICJT
ZXNzaW9uSUQuaCIKICNpbXBvcnQgIlNoYXJlZEJ1ZmZlci5oIgogI2ltcG9ydCA8d3RmL01haW5U
aHJlYWQuaD4KLSNpbXBvcnQgPHd0Zi9QYXNzUmVmUHRyLmg+CiAjaW1wb3J0IDx3dGYvUmVmUHRy
Lmg+CiAKICNpZiBVU0UoV0VCX1RIUkVBRCkKQEAgLTQ1LDkgKzQyLDkgQEAgbmFtZXNwYWNlIFdl
YkNvcmUgewogLy8gVGhlIG1heGltdW0gbnVtYmVyIG9mIHNlY29uZHMgd2UnbGwgdHJ5IHRvIHdh
aXQgZm9yIGEgcmVzb3VyY2UgdG8gYmUgZGlzayBjYWNoZWQgYmVmb3JlIHdlIGZvcmdldCB0aGUg
cmVxdWVzdC4KIHN0YXRpYyBjb25zdCBkb3VibGUgZGlza0NhY2hlTW9uaXRvclRpbWVvdXQgPSAy
MDsKIAotUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IERpc2tDYWNoZU1vbml0b3I6OnRyeUdldEZp
bGVCYWNrZWRTaGFyZWRCdWZmZXJGcm9tQ0ZVUkxDYWNoZWRSZXNwb25zZShDRkNhY2hlZFVSTFJl
c3BvbnNlUmVmIGNhY2hlZFJlc3BvbnNlKQorUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gRGlza0NhY2hl
TW9uaXRvcjo6dHJ5R2V0RmlsZUJhY2tlZFNoYXJlZEJ1ZmZlckZyb21DRlVSTENhY2hlZFJlc3Bv
bnNlKENGQ2FjaGVkVVJMUmVzcG9uc2VSZWYgY2FjaGVkUmVzcG9uc2UpCiB7Ci0gICAgQ0ZEYXRh
UmVmIGRhdGEgPSBfQ0ZDYWNoZWRVUkxSZXNwb25zZUdldE1lbU1hcHBlZERhdGEoY2FjaGVkUmVz
cG9uc2UpOworICAgIGF1dG8gZGF0YSA9IF9DRkNhY2hlZFVSTFJlc3BvbnNlR2V0TWVtTWFwcGVk
RGF0YShjYWNoZWRSZXNwb25zZSk7CiAgICAgaWYgKCFkYXRhKQogICAgICAgICByZXR1cm4gbnVs
bHB0cjsKIApAQCAtODcsOCArODQsNyBAQCBEaXNrQ2FjaGVNb25pdG9yOjpEaXNrQ2FjaGVNb25p
dG9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgU2Vzc2lvbklEIHNlcwogICAgIGRp
c3BhdGNoX2FmdGVyKGRpc3BhdGNoX3RpbWUoRElTUEFUQ0hfVElNRV9OT1csIE5TRUNfUEVSX1NF
QyAqIGRpc2tDYWNoZU1vbml0b3JUaW1lb3V0KSwgZGlzcGF0Y2hfZ2V0X21haW5fcXVldWUoKSwg
Y2FuY2VsTW9uaXRvckJsb2NrVG9SdW4pOwogCiAgICAgLy8gU2V0IHVwIHRoZSBkaXNrIGNhY2hp
bmcgY2FsbGJhY2sgdG8gY3JlYXRlIHRoZSBTaGFyZWFibGVSZXNvdXJjZSBhbmQgc2VuZCBpdCB0
byB0aGUgV2ViUHJvY2Vzcy4KLSAgICBDRkNhY2hlZFVSTFJlc3BvbnNlQ2FsbEJhY2tCbG9jayBi
bG9jayA9IF4oQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZiBjYWNoZWRSZXNwb25zZSkKLSAgICB7Cisg
ICAgYXV0byBibG9jayA9IF4oQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZiBjYWNoZWRSZXNwb25zZSkg
ewogICAgICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwogICAgICAgICAvLyBJZiB0aGUgbW9u
aXRvciBpc24ndCB0aGVyZSB0aGVuIGl0IHRpbWVkIG91dCBiZWZvcmUgdGhpcyByZXNvdXJjZSB3
YXMgY2FjaGVkIHRvIGRpc2suCiAgICAgICAgIGlmICghcmF3TW9uaXRvcikKQEAgLTk3LDcgKzkz
LDcgQEAgRGlza0NhY2hlTW9uaXRvcjo6RGlza0NhY2hlTW9uaXRvcihjb25zdCBSZXNvdXJjZVJl
cXVlc3QmIHJlcXVlc3QsIFNlc3Npb25JRCBzZXMKICAgICAgICAgYXV0byBtb25pdG9yID0gc3Rk
Ojp1bmlxdWVfcHRyPERpc2tDYWNoZU1vbml0b3I+KHJhd01vbml0b3IpOyAvLyBCYWxhbmNlZCBi
eSAibmV3IERpc2tDYWNoZU1vbml0b3IiIGluIG1vbml0b3JGaWxlQmFja2luZ1N0b3JlQ3JlYXRp
b24uCiAgICAgICAgIHJhd01vbml0b3IgPSBudWxscHRyOwogCi0gICAgICAgIFJlZlB0cjxTaGFy
ZWRCdWZmZXI+IGZpbGVCYWNrZWRCdWZmZXIgPSBEaXNrQ2FjaGVNb25pdG9yOjp0cnlHZXRGaWxl
QmFja2VkU2hhcmVkQnVmZmVyRnJvbUNGVVJMQ2FjaGVkUmVzcG9uc2UoY2FjaGVkUmVzcG9uc2Up
OworICAgICAgICBhdXRvIGZpbGVCYWNrZWRCdWZmZXIgPSBEaXNrQ2FjaGVNb25pdG9yOjp0cnlH
ZXRGaWxlQmFja2VkU2hhcmVkQnVmZmVyRnJvbUNGVVJMQ2FjaGVkUmVzcG9uc2UoY2FjaGVkUmVz
cG9uc2UpOwogICAgICAgICBpZiAoIWZpbGVCYWNrZWRCdWZmZXIpCiAgICAgICAgICAgICByZXR1
cm47CiAKQEAgLTEwNSw4ICsxMDEsNyBAQCBEaXNrQ2FjaGVNb25pdG9yOjpEaXNrQ2FjaGVNb25p
dG9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgU2Vzc2lvbklEIHNlcwogICAgIH07
CiAKICNpZiBVU0UoV0VCX1RIUkVBRCkKLSAgICBDRkNhY2hlZFVSTFJlc3BvbnNlQ2FsbEJhY2tC
bG9jayBibG9ja1RvUnVuID0gXihDRkNhY2hlZFVSTFJlc3BvbnNlUmVmIHJlc3BvbnNlKQotICAg
IHsKKyAgICBhdXRvIGJsb2NrVG9SdW4gPSBeKENGQ2FjaGVkVVJMUmVzcG9uc2VSZWYgcmVzcG9u
c2UpIHsKICAgICAgICAgQ0ZSZXRhaW4ocmVzcG9uc2UpOwogICAgICAgICBXZWJUaHJlYWRSdW4o
XnsKICAgICAgICAgICAgIGJsb2NrKHJlc3BvbnNlKTsKQEAgLTExNCwxNCArMTA5LDE0IEBAIERp
c2tDYWNoZU1vbml0b3I6OkRpc2tDYWNoZU1vbml0b3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiBy
ZXF1ZXN0LCBTZXNzaW9uSUQgc2VzCiAgICAgICAgIH0pOwogICAgIH07CiAjZWxzZQotICAgIENG
Q2FjaGVkVVJMUmVzcG9uc2VDYWxsQmFja0Jsb2NrIGJsb2NrVG9SdW4gPSBibG9jazsKKyAgICBh
dXRvIGJsb2NrVG9SdW4gPSBibG9jazsKICNlbmRpZgogICAgIF9DRkNhY2hlZFVSTFJlc3BvbnNl
U2V0QmVjYW1lRmlsZUJhY2tlZENhbGxCYWNrQmxvY2soY2FjaGVkUmVzcG9uc2UsIGJsb2NrVG9S
dW4sIGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCkpOwogfQogCiB2b2lkIERpc2tDYWNoZU1vbml0
b3I6OnJlc291cmNlQmVjYW1lRmlsZUJhY2tlZChTaGFyZWRCdWZmZXImIGZpbGVCYWNrZWRCdWZm
ZXIpCiB7Ci0gICAgQ2FjaGVkUmVzb3VyY2UqIHJlc291cmNlID0gTWVtb3J5Q2FjaGU6OnNpbmds
ZXRvbigpLnJlc291cmNlRm9yUmVxdWVzdChtX3Jlc291cmNlUmVxdWVzdCwgbV9zZXNzaW9uSUQp
OworICAgIGF1dG8qIHJlc291cmNlID0gTWVtb3J5Q2FjaGU6OnNpbmdsZXRvbigpLnJlc291cmNl
Rm9yUmVxdWVzdChtX3Jlc291cmNlUmVxdWVzdCwgbV9zZXNzaW9uSUQpOwogICAgIGlmICghcmVz
b3VyY2UpCiAgICAgICAgIHJldHVybjsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2ljb24vSWNvbkRhdGFiYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL0lj
b25EYXRhYmFzZS5jcHAKaW5kZXggZWU0MzdlODYyOGViZjRlODYzMjdjYzc3MDMwZjVmNjk0ZTMw
YmIyZC4uZGNjZTBhNWMzY2Q4MTZjYzg0N2JjN2FmZTJiYTIxNjdhY2QwODgwYyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2UuY3BwCkBAIC01MzMsNyArNTMzLDcg
QEAgdm9pZCBJY29uRGF0YWJhc2U6OnBlcmZvcm1SZWxlYXNlSWNvbkZvclBhZ2VVUkwoY29uc3Qg
U3RyaW5nJiBwYWdlVVJMT3JpZ2luYWwsIGkKICAgICBkZWxldGUgcGFnZVJlY29yZDsKIH0KIAot
dm9pZCBJY29uRGF0YWJhc2U6OnNldEljb25EYXRhRm9ySWNvblVSTChQYXNzUmVmUHRyPFNoYXJl
ZEJ1ZmZlcj4gZGF0YU9yaWdpbmFsLCBjb25zdCBTdHJpbmcmIGljb25VUkxPcmlnaW5hbCkKK3Zv
aWQgSWNvbkRhdGFiYXNlOjpzZXRJY29uRGF0YUZvckljb25VUkwoU2hhcmVkQnVmZmVyKiBkYXRh
T3JpZ2luYWwsIGNvbnN0IFN0cmluZyYgaWNvblVSTE9yaWdpbmFsKQogeyAgICAKICAgICBBU1NF
UlRfTk9UX1NZTkNfVEhSRUFEKCk7CiAgICAgCkBAIC01NDIsNyArNTQyLDcgQEAgdm9pZCBJY29u
RGF0YWJhc2U6OnNldEljb25EYXRhRm9ySWNvblVSTChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4g
ZGF0YU9yaWdpbmFsLAogICAgIGlmICghaXNPcGVuKCkgfHwgaWNvblVSTE9yaWdpbmFsLmlzRW1w
dHkoKSkKICAgICAgICAgcmV0dXJuOwogICAgIAotICAgIFJlZlB0cjxTaGFyZWRCdWZmZXI+IGRh
dGEgPSBkYXRhT3JpZ2luYWwgPyBkYXRhT3JpZ2luYWwtPmNvcHkoKSA6IFBhc3NSZWZQdHI8U2hh
cmVkQnVmZmVyPihudWxscHRyKTsKKyAgICBhdXRvIGRhdGEgPSBkYXRhT3JpZ2luYWwgPyBSZWZQ
dHI8U2hhcmVkQnVmZmVyPiB7IGRhdGFPcmlnaW5hbC0+Y29weSgpIH0gOiBudWxscHRyOwogICAg
IFN0cmluZyBpY29uVVJMID0gaWNvblVSTE9yaWdpbmFsLmlzb2xhdGVkQ29weSgpOwogICAgIAog
ICAgIFZlY3RvcjxTdHJpbmc+IHBhZ2VVUkxzOwpAQCAtODg1LDE4ICs4ODUsMTcgQEAgU3RyaW5n
IEljb25EYXRhYmFzZTo6ZGVmYXVsdERhdGFiYXNlRmlsZW5hbWUoKQogfQogCiAvLyBVbmxpa2Ug
Z2V0T3JDcmVhdGVQYWdlVVJMUmVjb3JkKCksIGdldE9yQ3JlYXRlSWNvblJlY29yZCgpIGRvZXMg
bm90IG1hcmsgdGhlIGljb24gYXMgImludGVyZXN0ZWQgaW4gaW1wb3J0IgotUGFzc1JlZlB0cjxJ
Y29uUmVjb3JkPiBJY29uRGF0YWJhc2U6OmdldE9yQ3JlYXRlSWNvblJlY29yZChjb25zdCBTdHJp
bmcmIGljb25VUkwpCitSZWY8SWNvblJlY29yZD4gSWNvbkRhdGFiYXNlOjpnZXRPckNyZWF0ZUlj
b25SZWNvcmQoY29uc3QgU3RyaW5nJiBpY29uVVJMKQogewogICAgIC8vIENsaWVudHMgb2YgZ2V0
T3JDcmVhdGVJY29uUmVjb3JkKCkgYXJlIHJlcXVpcmVkIHRvIGFjcXVpcmUgdGhlIG1fdXJsQW5k
SWNvbkxvY2sgYmVmb3JlIGNhbGxpbmcgdGhpcyBtZXRob2QKICAgICBBU1NFUlQoIW1fdXJsQW5k
SWNvbkxvY2sudHJ5TG9jaygpKTsKIAotICAgIGlmIChJY29uUmVjb3JkKiBpY29uID0gbV9pY29u
VVJMVG9SZWNvcmRNYXAuZ2V0KGljb25VUkwpKQotICAgICAgICByZXR1cm4gaWNvbjsKKyAgICBp
ZiAoYXV0byogaWNvbiA9IG1faWNvblVSTFRvUmVjb3JkTWFwLmdldChpY29uVVJMKSkKKyAgICAg
ICAgcmV0dXJuICppY29uOwogCiAgICAgYXV0byBuZXdJY29uID0gSWNvblJlY29yZDo6Y3JlYXRl
KGljb25VUkwpOwogICAgIG1faWNvblVSTFRvUmVjb3JkTWFwLnNldChpY29uVVJMLCBuZXdJY29u
LnB0cigpKTsKLQotICAgIHJldHVybiBXVEZNb3ZlKG5ld0ljb24pOworICAgIHJldHVybiBuZXdJ
Y29uOwogfQogCiAvLyBUaGlzIG1ldGhvZCByZXRyaWV2ZXMgdGhlIGV4aXN0aW5nIFBhZ2VVUkxS
ZWNvcmQsIG9yIGNyZWF0ZXMgYSBuZXcgb25lIGFuZCBtYXJrcyBpdCBhcyAiaW50ZXJlc3RlZCBp
biB0aGUgaW1wb3J0IiBmb3IgbGF0ZXIgbm90aWZpY2F0aW9uCkBAIC0xOTE3LDcgKzE5MTYsNyBA
QCBpbnQ2NF90IEljb25EYXRhYmFzZTo6YWRkSWNvblVSTFRvU1FMRGF0YWJhc2UoY29uc3QgU3Ry
aW5nJiBpY29uVVJMKQogICAgIHJldHVybiBpY29uSUQ7CiB9CiAKLVBhc3NSZWZQdHI8U2hhcmVk
QnVmZmVyPiBJY29uRGF0YWJhc2U6OmdldEltYWdlRGF0YUZvckljb25VUkxGcm9tU1FMRGF0YWJh
c2UoY29uc3QgU3RyaW5nJiBpY29uVVJMKQorUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gSWNvbkRhdGFi
YXNlOjpnZXRJbWFnZURhdGFGb3JJY29uVVJMRnJvbVNRTERhdGFiYXNlKGNvbnN0IFN0cmluZyYg
aWNvblVSTCkKIHsKICAgICBBU1NFUlRfSUNPTl9TWU5DX1RIUkVBRCgpOwogICAgIApAQCAtMTkz
Niw3ICsxOTM1LDcgQEAgUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IEljb25EYXRhYmFzZTo6Z2V0
SW1hZ2VEYXRhRm9ySWNvblVSTEZyb21TUUxEYXRhYmFzZShjb24KIAogICAgIG1fZ2V0SW1hZ2VE
YXRhRm9ySWNvblVSTFN0YXRlbWVudC0+cmVzZXQoKTsKICAgICAKLSAgICByZXR1cm4gV1RGTW92
ZShpbWFnZURhdGEpOworICAgIHJldHVybiBpbWFnZURhdGE7CiB9CiAKIHZvaWQgSWNvbkRhdGFi
YXNlOjpyZW1vdmVJY29uRnJvbVNRTERhdGFiYXNlKGNvbnN0IFN0cmluZyYgaWNvblVSTCkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL0ljb25EYXRhYmFzZS5oIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmgKaW5kZXggZDVkNDUyY2VmZDM3
YzBhY2U4MTJhZGEzNTAzNDcwYWU2MjhkN2M5ZS4uMDYxYWY0YTEyNTU3NzFkZTExYTMyZjU2ODNj
MGVmZGE1OTI5M2I5ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNv
bkRhdGFiYXNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNl
LmgKQEAgLTQ1LDYgKzQ1LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogLy8gRHVtbXkgdmVyc2lv
biBvZiBJY29uRGF0YWJhc2UgdGhhdCBkb2VzIG5vdGhpbmcuCiBjbGFzcyBJY29uRGF0YWJhc2Ug
ZmluYWwgOiBwdWJsaWMgSWNvbkRhdGFiYXNlQmFzZSB7CiAgICAgV1RGX01BS0VfRkFTVF9BTExP
Q0FURUQ7CisKIHB1YmxpYzoKICAgICBzdGF0aWMgdm9pZCBkZWxheURhdGFiYXNlQ2xlYW51cCgp
IHsgfQogICAgIHN0YXRpYyB2b2lkIGFsbG93RGF0YWJhc2VDbGVhbnVwKCkgeyB9CkBAIC03MCwz
MiArNzEsMzIgQEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIEljb25EYXRhYmFzZSgpOwog
ICAgIH5JY29uRGF0YWJhc2UoKTsKIAotICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0Q2xpZW50
KEljb25EYXRhYmFzZUNsaWVudCopIG92ZXJyaWRlOworICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQg
c2V0Q2xpZW50KEljb25EYXRhYmFzZUNsaWVudCopIGZpbmFsOwogCi0gICAgV0VCQ09SRV9FWFBP
UlQgYm9vbCBvcGVuKGNvbnN0IFN0cmluZyYgZGlyZWN0b3J5LCBjb25zdCBTdHJpbmcmIGZpbGVu
YW1lKSBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGNsb3NlKCkgb3ZlcnJpZGU7
CisgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBvcGVuKGNvbnN0IFN0cmluZyYgZGlyZWN0b3J5LCBj
b25zdCBTdHJpbmcmIGZpbGVuYW1lKSBmaW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGNs
b3NlKCkgZmluYWw7CiAgICAgICAgICAgICAKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHJlbW92
ZUFsbEljb25zKCkgb3ZlcnJpZGU7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCByZW1vdmVBbGxJ
Y29ucygpIGZpbmFsOwogCiAgICAgdm9pZCByZWFkSWNvbkZvclBhZ2VVUkxGcm9tRGlzayhjb25z
dCBTdHJpbmcmKTsKIAotICAgIFdFQkNPUkVfRVhQT1JUIEltYWdlKiBkZWZhdWx0SWNvbihjb25z
dCBJbnRTaXplJikgb3ZlcnJpZGU7CisgICAgV0VCQ09SRV9FWFBPUlQgSW1hZ2UqIGRlZmF1bHRJ
Y29uKGNvbnN0IEludFNpemUmKSBmaW5hbDsKIAotICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgcmV0
YWluSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgV0VCQ09SRV9F
WFBPUlQgdm9pZCByZWxlYXNlSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7
Ci0gICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRJY29uRGF0YUZvckljb25VUkwoUGFzc1JlZlB0
cjxTaGFyZWRCdWZmZXI+IGRhdGEsIGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAgIFdFQkNP
UkVfRVhQT1JUIHZvaWQgc2V0SWNvblVSTEZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJiBpY29uVVJM
LCBjb25zdCBTdHJpbmcmIHBhZ2VVUkwpIG92ZXJyaWRlOworICAgIFdFQkNPUkVfRVhQT1JUIHZv
aWQgcmV0YWluSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikgZmluYWw7CisgICAgV0VCQ09S
RV9FWFBPUlQgdm9pZCByZWxlYXNlSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikgZmluYWw7
CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRJY29uRGF0YUZvckljb25VUkwoU2hhcmVkQnVm
ZmVyKiBkYXRhLCBjb25zdCBTdHJpbmcmIGljb25VUkwpIGZpbmFsOworICAgIFdFQkNPUkVfRVhQ
T1JUIHZvaWQgc2V0SWNvblVSTEZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJiBpY29uVVJMLCBjb25z
dCBTdHJpbmcmIHBhZ2VVUkwpIGZpbmFsOwogCi0gICAgV0VCQ09SRV9FWFBPUlQgSW1hZ2UqIHN5
bmNocm9ub3VzSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJiwgY29uc3QgSW50U2l6ZSYpIG92
ZXJyaWRlOwotICAgIE5hdGl2ZUltYWdlUHRyIHN5bmNocm9ub3VzTmF0aXZlSWNvbkZvclBhZ2VV
UkwoY29uc3QgU3RyaW5nJiBwYWdlVVJMT3JpZ2luYWwsIGNvbnN0IEludFNpemUmKSBvdmVycmlk
ZTsKLSAgICBXRUJDT1JFX0VYUE9SVCBTdHJpbmcgc3luY2hyb25vdXNJY29uVVJMRm9yUGFnZVVS
TChjb25zdCBTdHJpbmcmKSBvdmVycmlkZTsKLSAgICBib29sIHN5bmNocm9ub3VzSWNvbkRhdGFL
bm93bkZvckljb25VUkwoY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgV0VCQ09SRV9FWFBP
UlQgSWNvbkxvYWREZWNpc2lvbiBzeW5jaHJvbm91c0xvYWREZWNpc2lvbkZvckljb25VUkwoY29u
c3QgU3RyaW5nJiwgRG9jdW1lbnRMb2FkZXIqKSBvdmVycmlkZTsKKyAgICBXRUJDT1JFX0VYUE9S
VCBJbWFnZSogc3luY2hyb25vdXNJY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmLCBjb25zdCBJ
bnRTaXplJikgZmluYWw7CisgICAgTmF0aXZlSW1hZ2VQdHIgc3luY2hyb25vdXNOYXRpdmVJY29u
Rm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIHBhZ2VVUkxPcmlnaW5hbCwgY29uc3QgSW50U2l6ZSYp
IGZpbmFsOworICAgIFdFQkNPUkVfRVhQT1JUIFN0cmluZyBzeW5jaHJvbm91c0ljb25VUkxGb3JQ
YWdlVVJMKGNvbnN0IFN0cmluZyYpIGZpbmFsOworICAgIGJvb2wgc3luY2hyb25vdXNJY29uRGF0
YUtub3duRm9ySWNvblVSTChjb25zdCBTdHJpbmcmKSBmaW5hbDsKKyAgICBXRUJDT1JFX0VYUE9S
VCBJY29uTG9hZERlY2lzaW9uIHN5bmNocm9ub3VzTG9hZERlY2lzaW9uRm9ySWNvblVSTChjb25z
dCBTdHJpbmcmLCBEb2N1bWVudExvYWRlciopIGZpbmFsOwogCi0gICAgV0VCQ09SRV9FWFBPUlQg
dm9pZCBzZXRFbmFibGVkKGJvb2wpIG92ZXJyaWRlOwotICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wg
aXNFbmFibGVkKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRF
bmFibGVkKGJvb2wpOworICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgaXNFbmFibGVkKCkgY29uc3Qg
ZmluYWw7CiAKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldFByaXZhdGVCcm93c2luZ0VuYWJs
ZWQoYm9vbCBmbGFnKSBvdmVycmlkZTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldFByaXZh
dGVCcm93c2luZ0VuYWJsZWQoYm9vbCBmbGFnKSBmaW5hbDsKICAgICBib29sIGlzUHJpdmF0ZUJy
b3dzaW5nRW5hYmxlZCgpIGNvbnN0OwogCiAgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIHZvaWQg
ZGVsYXlEYXRhYmFzZUNsZWFudXAoKTsKQEAgLTEwMywxMCArMTA0LDEwIEBAIHB1YmxpYzoKICAg
ICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgdm9pZCBjaGVja0ludGVncml0eUJlZm9yZU9wZW5pbmco
KTsKIAogICAgIC8vIFN1cHBvcnQgZm9yIFdlYkNvcmVTdGF0aXN0aWNzIGluIFdlYktpdAotICAg
IFdFQkNPUkVfRVhQT1JUIHNpemVfdCBwYWdlVVJMTWFwcGluZ0NvdW50KCkgb3ZlcnJpZGU7Ci0g
ICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90IHJldGFpbmVkUGFnZVVSTENvdW50KCkgb3ZlcnJpZGU7
Ci0gICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90IGljb25SZWNvcmRDb3VudCgpIG92ZXJyaWRlOwot
ICAgIFdFQkNPUkVfRVhQT1JUIHNpemVfdCBpY29uUmVjb3JkQ291bnRXaXRoRGF0YSgpIG92ZXJy
aWRlOworICAgIFdFQkNPUkVfRVhQT1JUIHNpemVfdCBwYWdlVVJMTWFwcGluZ0NvdW50KCkgZmlu
YWw7CisgICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90IHJldGFpbmVkUGFnZVVSTENvdW50KCkgZmlu
YWw7CisgICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90IGljb25SZWNvcmRDb3VudCgpIGZpbmFsOwor
ICAgIFdFQkNPUkVfRVhQT1JUIHNpemVfdCBpY29uUmVjb3JkQ291bnRXaXRoRGF0YSgpIGZpbmFs
OwogCiBwcml2YXRlOgogICAgIGZyaWVuZCBJY29uRGF0YWJhc2VCYXNlJiBpY29uRGF0YWJhc2Uo
KTsKQEAgLTEzMCwxMiArMTMxLDEyIEBAIHByaXZhdGU6CiAKIC8vICoqKiBBbnkgVGhyZWFkICoq
KgogcHVibGljOgotICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgaXNPcGVuKCkgY29uc3Qgb3ZlcnJp
ZGU7Ci0gICAgV0VCQ09SRV9FWFBPUlQgU3RyaW5nIGRhdGFiYXNlUGF0aCgpIGNvbnN0IG92ZXJy
aWRlOworICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgaXNPcGVuKCkgY29uc3QgZmluYWw7CisgICAg
V0VCQ09SRV9FWFBPUlQgU3RyaW5nIGRhdGFiYXNlUGF0aCgpIGNvbnN0IGZpbmFsOwogICAgIFdF
QkNPUkVfRVhQT1JUIHN0YXRpYyBTdHJpbmcgZGVmYXVsdERhdGFiYXNlRmlsZW5hbWUoKTsKIAog
cHJpdmF0ZToKLSAgICBQYXNzUmVmUHRyPEljb25SZWNvcmQ+IGdldE9yQ3JlYXRlSWNvblJlY29y
ZChjb25zdCBTdHJpbmcmIGljb25VUkwpOworICAgIFJlZjxJY29uUmVjb3JkPiBnZXRPckNyZWF0
ZUljb25SZWNvcmQoY29uc3QgU3RyaW5nJiBpY29uVVJMKTsKICAgICBQYWdlVVJMUmVjb3JkKiBn
ZXRPckNyZWF0ZVBhZ2VVUkxSZWNvcmQoY29uc3QgU3RyaW5nJiBwYWdlVVJMKTsKICAgICAKICAg
ICBib29sIG1faXNFbmFibGVkOwpAQCAtMTc4LDcgKzE3OSw3IEBAIHByaXZhdGU6CiAKIC8vICoq
KiBTeW5jIFRocmVhZCBPbmx5ICoqKgogcHVibGljOgotICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wg
c2hvdWxkU3RvcFRocmVhZEFjdGl2aXR5KCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgV0VCQ09SRV9F
WFBPUlQgYm9vbCBzaG91bGRTdG9wVGhyZWFkQWN0aXZpdHkoKSBjb25zdCBmaW5hbDsKIAogcHJp
dmF0ZTogICAgCiAgICAgc3RhdGljIHZvaWQgaWNvbkRhdGFiYXNlU3luY1RocmVhZFN0YXJ0KHZv
aWQgKik7CkBAIC0yMTMsNyArMjE0LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHJlbW92ZVBhZ2VV
UkxGcm9tU1FMRGF0YWJhc2UoY29uc3QgU3RyaW5nJiBwYWdlVVJMKTsKICAgICBpbnQ2NF90IGdl
dEljb25JREZvckljb25VUkxGcm9tU1FMRGF0YWJhc2UoY29uc3QgU3RyaW5nJiBpY29uVVJMKTsK
ICAgICBpbnQ2NF90IGFkZEljb25VUkxUb1NRTERhdGFiYXNlKGNvbnN0IFN0cmluZyYpOwotICAg
IFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBnZXRJbWFnZURhdGFGb3JJY29uVVJMRnJvbVNRTERh
dGFiYXNlKGNvbnN0IFN0cmluZyYgaWNvblVSTCk7CisgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4g
Z2V0SW1hZ2VEYXRhRm9ySWNvblVSTEZyb21TUUxEYXRhYmFzZShjb25zdCBTdHJpbmcmIGljb25V
UkwpOwogICAgIHZvaWQgcmVtb3ZlSWNvbkZyb21TUUxEYXRhYmFzZShjb25zdCBTdHJpbmcmIGlj
b25VUkwpOwogICAgIHZvaWQgd3JpdGVJY29uU25hcHNob3RUb1NRTERhdGFiYXNlKGNvbnN0IElj
b25TbmFwc2hvdCYpOyAgICAKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2lj
b24vSWNvbkRhdGFiYXNlQmFzZS5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkRh
dGFiYXNlQmFzZS5oCmluZGV4IDk4NmQ0ZDk2ZjU3MjdmNDZhMWYyZTg3NTAzOWU2Yzg2MDMyZjYz
ODEuLmQ0MDUxYjkzNmM3MTBmYzI5YzcxZDUyZTQ3MjdiYTg1YjBhZWI5OTcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL0ljb25EYXRhYmFzZUJhc2UuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2VCYXNlLmgKQEAgLTI4LDcgKzI4LDYg
QEAKICNpbmNsdWRlICJOYXRpdmVJbWFnZS5oIgogI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAj
aW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+Ci0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4K
ICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC0z
OSwxMSArMzgsNyBAQCBjbGFzcyBJbWFnZTsKIGNsYXNzIEludFNpemU7CiBjbGFzcyBTaGFyZWRC
dWZmZXI7CiAKLWVudW0gSWNvbkxvYWREZWNpc2lvbiB7Ci0gICAgSWNvbkxvYWRZZXMsCi0gICAg
SWNvbkxvYWRObywKLSAgICBJY29uTG9hZFVua25vd24KLX07CitlbnVtIEljb25Mb2FkRGVjaXNp
b24geyBJY29uTG9hZFllcywgSWNvbkxvYWRObywgSWNvbkxvYWRVbmtub3duIH07CiAKIGNsYXNz
IENhbGxiYWNrQmFzZSA6IHB1YmxpYyBSZWZDb3VudGVkPENhbGxiYWNrQmFzZT4gewogcHVibGlj
OgpAQCAtMTM0LDcgKzEyOSw3IEBAIHB1YmxpYzoKICAgICAgICAgbV9jYWxsYmFjayhyZXN1bHQs
IGNvbnRleHQoKSk7CiAgICAgICAgIG1fY2FsbGJhY2sgPSBudWxscHRyOwogICAgIH0KLSAgICAK
KwogICAgIHZvaWQgaW52YWxpZGF0ZSgpCiAgICAgewogICAgICAgICBtX2NhbGxiYWNrID0gbnVs
bHB0cjsKQEAgLTE1MSwyNiArMTQ2LDIyIEBAIHByaXZhdGU6CiAgICAgQ2FsbGJhY2tGdW5jdGlv
biBtX2NhbGxiYWNrOwogfTsKIAotdHlwZWRlZiBFbnVtQ2FsbGJhY2s8SWNvbkxvYWREZWNpc2lv
bj4gSWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrOwotdHlwZWRlZiBPYmplY3RDYWxsYmFjazxTaGFy
ZWRCdWZmZXIqPiBJY29uRGF0YUNhbGxiYWNrOwordXNpbmcgSWNvbkxvYWREZWNpc2lvbkNhbGxi
YWNrID0gRW51bUNhbGxiYWNrPEljb25Mb2FkRGVjaXNpb24+OwordXNpbmcgSWNvbkRhdGFDYWxs
YmFjayA9IE9iamVjdENhbGxiYWNrPFNoYXJlZEJ1ZmZlcio+OwogCiBjbGFzcyBXRUJDT1JFX0VY
UE9SVCBJY29uRGF0YWJhc2VCYXNlIHsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShJY29uRGF0
YWJhc2VCYXNlKTsKIAotcHJvdGVjdGVkOgotICAgIEljb25EYXRhYmFzZUJhc2UoKSB7IH0KLQog
cHVibGljOgogICAgIHZpcnR1YWwgfkljb25EYXRhYmFzZUJhc2UoKSB7IH0KIAotICAgIC8vIFVz
ZWQgaW50ZXJuYWxseSBieSBXZWJDb3JlCiAgICAgdmlydHVhbCBib29sIGlzRW5hYmxlZCgpIGNv
bnN0IHsgcmV0dXJuIGZhbHNlOyB9Ci0gICAgICAgIAorCiAgICAgdmlydHVhbCB2b2lkIHJldGFp
bkljb25Gb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYpIHsgfQogICAgIHZpcnR1YWwgdm9pZCByZWxl
YXNlSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikgeyB9CiAKLSAgICB2aXJ0dWFsIHZvaWQg
c2V0SWNvblVSTEZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJiwgY29uc3QgU3RyaW5nJikgeyB9Ci0g
ICAgdmlydHVhbCB2b2lkIHNldEljb25EYXRhRm9ySWNvblVSTChQYXNzUmVmUHRyPFNoYXJlZEJ1
ZmZlcj4sIGNvbnN0IFN0cmluZyYpIHsgfQorICAgIHZpcnR1YWwgdm9pZCBzZXRJY29uVVJMRm9y
UGFnZVVSTChjb25zdCBTdHJpbmcmIC8qaWNvblVSTCovLCBjb25zdCBTdHJpbmcmIC8qcGFnZVVS
TCovKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgc2V0SWNvbkRhdGFGb3JJY29uVVJMKFNoYXJlZEJ1
ZmZlciosIGNvbnN0IFN0cmluZyYgLyppY29uVVJMKi8pIHsgfQogCiAgICAgLy8gU3luY2hyb25v
dXMgY2FsbHMgdXNlZCBpbnRlcm5hbGx5IGJ5IFdlYkNvcmUuCiAgICAgLy8gVXNhZ2Ugc2hvdWxk
IGJlIHJlcGxhY2VkIGJ5IGFzeW5jaHJvbm91cyBjYWxscy4KQEAgLTE4MiwxMiArMTczLDEyIEBA
IHB1YmxpYzoKIAogICAgIC8vIEFzeW5jaHJvbm91cyBjYWxscyB3ZSBzaG91bGQgdXNlIHRvIHJl
cGxhY2UgdGhlIGFib3ZlIHdoZW4gc3VwcG9ydGVkLgogICAgIHZpcnR1YWwgYm9vbCBzdXBwb3J0
c0FzeW5jaHJvbm91c01vZGUoKSB7IHJldHVybiBmYWxzZTsgfQotICAgIHZpcnR1YWwgdm9pZCBs
b2FkRGVjaXNpb25Gb3JJY29uVVJMKGNvbnN0IFN0cmluZyYsIFBhc3NSZWZQdHI8SWNvbkxvYWRE
ZWNpc2lvbkNhbGxiYWNrPikgeyB9Ci0gICAgdmlydHVhbCB2b2lkIGljb25EYXRhRm9ySWNvblVS
TChjb25zdCBTdHJpbmcmLCBQYXNzUmVmUHRyPEljb25EYXRhQ2FsbGJhY2s+KSB7IH0KLSAgICAK
KyAgICB2aXJ0dWFsIHZvaWQgbG9hZERlY2lzaW9uRm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBJ
Y29uTG9hZERlY2lzaW9uQ2FsbGJhY2smKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgaWNvbkRhdGFG
b3JJY29uVVJMKGNvbnN0IFN0cmluZyYsIEljb25EYXRhQ2FsbGJhY2smKSB7IH0KIAogICAgIC8v
IFVzZWQgd2l0aGluIG9uZSBvciBtb3JlIFdlYktpdCBwb3J0cy4KICAgICAvLyBXZSBzaG91bGQg
dHJ5IHRvIHJlbW92ZSB0aGVzZSBkZXBlbmRlbmNpZXMgZnJvbSB0aGUgSWNvbkRhdGFiYXNlQmFz
ZSBjbGFzcy4KKwogICAgIHZpcnR1YWwgdm9pZCBzZXRFbmFibGVkKGJvb2wpIHsgfQogCiAgICAg
dmlydHVhbCBJbWFnZSogZGVmYXVsdEljb24oY29uc3QgSW50U2l6ZSYpIHsgcmV0dXJuIG51bGxw
dHI7IH0KQEAgLTIwNSwxMCArMTk2LDEyIEBAIHB1YmxpYzoKIAogICAgIHZpcnR1YWwgdm9pZCBz
ZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkKGJvb2wpIHsgfQogICAgIHZpcnR1YWwgdm9pZCBzZXRD
bGllbnQoSWNvbkRhdGFiYXNlQ2xpZW50KikgeyB9Ci0gICAgCisKICAgICB2aXJ0dWFsIGJvb2wg
aXNPcGVuKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KICAgICB2aXJ0dWFsIFN0cmluZyBkYXRh
YmFzZVBhdGgoKSBjb25zdDsKIAorcHJvdGVjdGVkOgorICAgIEljb25EYXRhYmFzZUJhc2UoKSA9
IGRlZmF1bHQ7CiB9OwogCiAvLyBGdW5jdGlvbnMgdG8gZ2V0L3NldCB0aGUgZ2xvYmFsIGljb24g
ZGF0YWJhc2UuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9QYWdlVVJM
UmVjb3JkLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL1BhZ2VVUkxSZWNvcmQuY3Bw
CmluZGV4IGY4YjIzMTRjZjExOGNiOWQ4NjhjMTQwZDhiODJlYTEzNTQxZGI4YjAuLjk5ZGRlZDhm
MjA1ZjNhYWJmNGVjZjgwZDA3NWFhYzg1Zjk2MjkxYmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9pY29uL1BhZ2VVUkxSZWNvcmQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9pY29uL1BhZ2VVUkxSZWNvcmQuY3BwCkBAIC0zNSwyOSArMzUsMjkgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogCiBQYWdlVVJMUmVjb3JkOjpQYWdlVVJMUmVjb3JkKGNvbnN0IFN0cmluZyYg
cGFnZVVSTCkKICAgICA6IG1fcGFnZVVSTChwYWdlVVJMKQotICAgICwgbV9yZXRhaW5Db3VudCgw
KQogewogfQogCiBQYWdlVVJMUmVjb3JkOjp+UGFnZVVSTFJlY29yZCgpCiB7Ci0gICAgc2V0SWNv
blJlY29yZChudWxscHRyKTsKKyAgICBpZiAobV9pY29uUmVjb3JkKQorICAgICAgICBtX2ljb25S
ZWNvcmQtPm1fcmV0YWluaW5nUGFnZVVSTHMucmVtb3ZlKG1fcGFnZVVSTCk7CiB9CiAKLXZvaWQg
UGFnZVVSTFJlY29yZDo6c2V0SWNvblJlY29yZChQYXNzUmVmUHRyPEljb25SZWNvcmQ+IGljb24p
Cit2b2lkIFBhZ2VVUkxSZWNvcmQ6OnNldEljb25SZWNvcmQoUmVmUHRyPEljb25SZWNvcmQ+JiYg
aWNvbikKIHsKICAgICBpZiAobV9pY29uUmVjb3JkKQogICAgICAgICBtX2ljb25SZWNvcmQtPm1f
cmV0YWluaW5nUGFnZVVSTHMucmVtb3ZlKG1fcGFnZVVSTCk7Ci0gICAgICAgIAotICAgIG1faWNv
blJlY29yZCA9IGljb247Ci0gICAgCisKKyAgICBtX2ljb25SZWNvcmQgPSBXVEZNb3ZlKGljb24p
OworCiAgICAgaWYgKG1faWNvblJlY29yZCkKICAgICAgICAgbV9pY29uUmVjb3JkLT5tX3JldGFp
bmluZ1BhZ2VVUkxzLmFkZChtX3BhZ2VVUkwpOwogfQogICAgIAogUGFnZVVSTFNuYXBzaG90IFBh
Z2VVUkxSZWNvcmQ6OnNuYXBzaG90KGJvb2wgZm9yRGVsZXRpb24pIGNvbnN0IAogewotICAgIHJl
dHVybiBQYWdlVVJMU25hcHNob3QobV9wYWdlVVJMLCAobV9pY29uUmVjb3JkICYmICFmb3JEZWxl
dGlvbikgPyBtX2ljb25SZWNvcmQtPmljb25VUkwoKSA6IFN0cmluZygpKTsKKyAgICByZXR1cm4g
eyBtX3BhZ2VVUkwsIChtX2ljb25SZWNvcmQgJiYgIWZvckRlbGV0aW9uKSA/IG1faWNvblJlY29y
ZC0+aWNvblVSTCgpIDogU3RyaW5nKCkgfTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vUGFnZVVSTFJlY29yZC5oIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vUGFnZVVSTFJlY29yZC5oCmluZGV4IGVmZWQzNDUw
YzUyZDc5MDQzZjNiYjYyZjcwZjI2ZjNmZGZjZWNiM2QuLjE4OTg3NWUzMmQ4YTc0ZGU0MTdkNTll
MTZiZDQwY2E3OGE5MjBlODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29u
L1BhZ2VVUkxSZWNvcmQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9QYWdlVVJM
UmVjb3JkLmgKQEAgLTYxLDcgKzYxLDcgQEAgcHVibGljOgogCiAgICAgaW5saW5lIFN0cmluZyB1
cmwoKSBjb25zdCB7IHJldHVybiBtX3BhZ2VVUkw7IH0KICAgICAKLSAgICB2b2lkIHNldEljb25S
ZWNvcmQoUGFzc1JlZlB0cjxJY29uUmVjb3JkPik7CisgICAgdm9pZCBzZXRJY29uUmVjb3JkKFJl
ZlB0cjxJY29uUmVjb3JkPiYmKTsKICAgICBJY29uUmVjb3JkKiBpY29uUmVjb3JkKCkgeyByZXR1
cm4gbV9pY29uUmVjb3JkLmdldCgpOyB9CiAKICAgICBQYWdlVVJMU25hcHNob3Qgc25hcHNob3Qo
Ym9vbCBmb3JEZWxldGlvbiA9IGZhbHNlKSBjb25zdDsKQEAgLTgyLDEyICs4MiwxMiBAQCBwdWJs
aWM6CiAgICAgICAgIHJldHVybiBtX3JldGFpbkNvdW50ID4gMDsKICAgICB9CiAKLSAgICBpbmxp
bmUgaW50IHJldGFpbkNvdW50KCkgY29uc3QgeyByZXR1cm4gbV9yZXRhaW5Db3VudDsgfQorICAg
IGludCByZXRhaW5Db3VudCgpIGNvbnN0IHsgcmV0dXJuIG1fcmV0YWluQ291bnQ7IH0KIAogcHJp
dmF0ZToKICAgICBTdHJpbmcgbV9wYWdlVVJMOwogICAgIFJlZlB0cjxJY29uUmVjb3JkPiBtX2lj
b25SZWNvcmQ7Ci0gICAgaW50IG1fcmV0YWluQ291bnQ7CisgICAgaW50IG1fcmV0YWluQ291bnQg
eyAwIH07CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvaW9zL1F1aWNrTG9vay5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2lv
cy9RdWlja0xvb2suaAppbmRleCA1NTNjZWQ1MjU2NWY5YWI2ZDQwMzg4YzEzNmU1M2E3ZTY5ZTRj
NzYxLi42ZmQxY2M2OGViNmQ0ZjE4YWU4MWU1NzMxNzdiNzZhNWRhNDRkNWEwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaW9zL1F1aWNrTG9vay5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9pb3MvUXVpY2tMb29rLmgKQEAgLTg0LDcgKzg0LDcgQEAgcHVibGljOgogCiAg
ICAgV0VCQ09SRV9FWFBPUlQgTlNVUkxSZXNwb25zZSAqbnNSZXNwb25zZSgpOwogCi0gICAgdm9p
ZCBzZXRDbGllbnQoUGFzc1JlZlB0cjxRdWlja0xvb2tIYW5kbGVDbGllbnQ+IGNsaWVudCkgeyBt
X2NsaWVudCA9IGNsaWVudDsgfQorICAgIHZvaWQgc2V0Q2xpZW50KFJlZjxRdWlja0xvb2tIYW5k
bGVDbGllbnQ+JiYgY2xpZW50KSB7IG1fY2xpZW50ID0gV1RGTW92ZShjbGllbnQpOyB9CiAKICAg
ICBXRUJDT1JFX0VYUE9SVCBTdHJpbmcgcHJldmlld0ZpbGVOYW1lKCkgY29uc3Q7CiAgICAgV0VC
Q09SRV9FWFBPUlQgU3RyaW5nIHByZXZpZXdVVEkoKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9pb3MvUXVpY2tMb29rLm1tIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2lvcy9RdWlja0xvb2subW0KaW5kZXggZDE0MjE0NzY3Y2I1N2FjMzAyY2IxZWIxYjU2NzIyMDM0
NTI3N2YzYi4uMjg0ZDQyZTFmZjUyNDhkZDRjM2IyNjZjYjg0YjkyNGVjMzViNzQyMiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2lvcy9RdWlja0xvb2subW0KKysrIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2lvcy9RdWlja0xvb2subW0KQEAgLTE4OSwxMyArMTg5LDEzIEBAIEBl
bmQKIAogQGltcGxlbWVudGF0aW9uIFdlYlJlc291cmNlTG9hZGVyUXVpY2tMb29rRGVsZWdhdGUK
IAotLSAoaWQpaW5pdFdpdGhSZXNvdXJjZUxvYWRlcjooUGFzc1JlZlB0cjxSZXNvdXJjZUxvYWRl
cj4pcmVzb3VyY2VMb2FkZXIKKy0gKGlkKWluaXRXaXRoUmVzb3VyY2VMb2FkZXI6KFJlc291cmNl
TG9hZGVyJilyZXNvdXJjZUxvYWRlcgogewogICAgIHNlbGYgPSBbc3VwZXIgaW5pdF07CiAgICAg
aWYgKCFzZWxmKQogICAgICAgICByZXR1cm4gbmlsOwogCi0gICAgX3Jlc291cmNlTG9hZGVyID0g
cmVzb3VyY2VMb2FkZXI7CisgICAgX3Jlc291cmNlTG9hZGVyID0gJnJlc291cmNlTG9hZGVyOwog
ICAgIHJldHVybiBzZWxmOwogfQogCkBAIC0zMzEsNyArMzMxLDcgQEAgc3RkOjp1bmlxdWVfcHRy
PFF1aWNrTG9va0hhbmRsZT4gUXVpY2tMb29rSGFuZGxlOjpjcmVhdGUoUmVzb3VyY2VMb2FkZXIm
IGxvYWRlciwKIHsKICAgICBBU1NFUlQoc2hvdWxkQ3JlYXRlRm9yTUlNRVR5cGUocmVzcG9uc2Uu
bWltZVR5cGUoKSkpOwogCi0gICAgUmV0YWluUHRyPFdlYlJlc291cmNlTG9hZGVyUXVpY2tMb29r
RGVsZWdhdGU+IGRlbGVnYXRlID0gYWRvcHROUyhbW1dlYlJlc291cmNlTG9hZGVyUXVpY2tMb29r
RGVsZWdhdGUgYWxsb2NdIGluaXRXaXRoUmVzb3VyY2VMb2FkZXI6JmxvYWRlcl0pOworICAgIFJl
dGFpblB0cjxXZWJSZXNvdXJjZUxvYWRlclF1aWNrTG9va0RlbGVnYXRlPiBkZWxlZ2F0ZSA9IGFk
b3B0TlMoW1tXZWJSZXNvdXJjZUxvYWRlclF1aWNrTG9va0RlbGVnYXRlIGFsbG9jXSBpbml0V2l0
aFJlc291cmNlTG9hZGVyOmxvYWRlcl0pOwogICAgIHN0ZDo6dW5pcXVlX3B0cjxRdWlja0xvb2tI
YW5kbGU+IHF1aWNrTG9va0hhbmRsZShuZXcgUXVpY2tMb29rSGFuZGxlKFtsb2FkZXIub3JpZ2lu
YWxSZXF1ZXN0KCkubnNVUkxSZXF1ZXN0KERvTm90VXBkYXRlSFRUUEJvZHkpIFVSTF0sIHJlc3Bv
bnNlLm5zVVJMUmVzcG9uc2UoKSwgZGVsZWdhdGUuZ2V0KCkpKTsKICAgICBbZGVsZWdhdGUgc2V0
UXVpY2tMb29rSGFuZGxlOnF1aWNrTG9va0hhbmRsZS5nZXQoKV07CiAgICAgbG9hZGVyLmRpZENy
ZWF0ZVF1aWNrTG9va0hhbmRsZSgqcXVpY2tMb29rSGFuZGxlKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvQ2hyb21lLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21lLmNw
cAppbmRleCBkMDE1YmE0NWEzM2FlYmNlMTcyOWQzYjk5YjI1NWY1NDUzMDFlNzZhLi4xZWM2NmU5
OTEwZjU1NjQ5ZWU2MGI5ZjZkYzI5MGYxMzMyNDBhZDRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0Nocm9tZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWUuY3Bw
CkBAIC00MzIsNyArNDMyLDcgQEAgc3RkOjp1bmlxdWVfcHRyPENvbG9yQ2hvb3Nlcj4gQ2hyb21l
OjpjcmVhdGVDb2xvckNob29zZXIoQ29sb3JDaG9vc2VyQ2xpZW50KiBjbGkKIH0KICNlbmRpZgog
Ci12b2lkIENocm9tZTo6cnVuT3BlblBhbmVsKEZyYW1lKiBmcmFtZSwgUGFzc1JlZlB0cjxGaWxl
Q2hvb3Nlcj4gZmlsZUNob29zZXIpCit2b2lkIENocm9tZTo6cnVuT3BlblBhbmVsKEZyYW1lJiBm
cmFtZSwgRmlsZUNob29zZXImIGZpbGVDaG9vc2VyKQogewogICAgIG5vdGlmeVBvcHVwT3Blbmlu
Z09ic2VydmVycygpOwogICAgIG1fY2xpZW50LnJ1bk9wZW5QYW5lbChmcmFtZSwgZmlsZUNob29z
ZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWUuaCBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvQ2hyb21lLmgKaW5kZXggZjIzODYwYTJiZGFmM2MyOTNlMDE5M2MyY2E0OTJi
YTZhODhmN2M1Mi4uYjUwZjc4NzNmMTA0OWUwNjE2ZDcyMzk4MDEzZDMxNDYyNzRiM2Y3NCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWUuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0Nocm9tZS5oCkBAIC0xNTYsNyArMTU2LDcgQEAgcHVibGljOgogICAgIHN0ZDo6dW5p
cXVlX3B0cjxDb2xvckNob29zZXI+IGNyZWF0ZUNvbG9yQ2hvb3NlcihDb2xvckNob29zZXJDbGll
bnQqLCBjb25zdCBDb2xvciYgaW5pdGlhbENvbG9yKTsKICNlbmRpZgogCi0gICAgdm9pZCBydW5P
cGVuUGFuZWwoRnJhbWUqLCBQYXNzUmVmUHRyPEZpbGVDaG9vc2VyPik7CisgICAgdm9pZCBydW5P
cGVuUGFuZWwoRnJhbWUmLCBGaWxlQ2hvb3NlciYpOwogICAgIHZvaWQgbG9hZEljb25Gb3JGaWxl
cyhjb25zdCBWZWN0b3I8U3RyaW5nPiYsIEZpbGVJY29uTG9hZGVyJik7CiAKICAgICB2b2lkIGRp
c3BhdGNoVmlld3BvcnRQcm9wZXJ0aWVzRGlkQ2hhbmdlKGNvbnN0IFZpZXdwb3J0QXJndW1lbnRz
JikgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZUNsaWVudC5o
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWVDbGllbnQuaAppbmRleCBhMDlmZTNjYjMwYmEz
ZDgxOGMxNGQxZDE4ZWQ2NTM1ZTFmZTM4ODE1Li44NjgyNmU1OTUwODlmMjRjMjViMjc4NmMxZjRl
OTgyMmRjNDRkZWRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZUNsaWVu
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21lQ2xpZW50LmgKQEAgLTI3Myw3ICsy
NzMsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBzdGQ6OnVuaXF1ZV9wdHI8Q29sb3JDaG9vc2Vy
PiBjcmVhdGVDb2xvckNob29zZXIoQ29sb3JDaG9vc2VyQ2xpZW50KiwgY29uc3QgQ29sb3ImKSA9
IDA7CiAjZW5kaWYKIAotICAgIHZpcnR1YWwgdm9pZCBydW5PcGVuUGFuZWwoRnJhbWUqLCBQYXNz
UmVmUHRyPEZpbGVDaG9vc2VyPikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBydW5PcGVuUGFuZWwo
RnJhbWUmLCBGaWxlQ2hvb3NlciYpID0gMDsKICAgICAvLyBBc3luY2hyb25vdXMgcmVxdWVzdCB0
byBsb2FkIGFuIGljb24gZm9yIHNwZWNpZmllZCBmaWxlbmFtZXMuCiAgICAgdmlydHVhbCB2b2lk
IGxvYWRJY29uRm9yRmlsZXMoY29uc3QgVmVjdG9yPFN0cmluZz4mLCBGaWxlSWNvbkxvYWRlciYp
ID0gMDsKICAgICAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRv
dy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAKaW5kZXggNmEyN2IyYzI5
YmQyZmU0NDFhMjA4MjJkNGQ5ZDVkYjU3OWVhNzc2ZC4uOWY3YTZhYzUwMWEzNmI4NGNkYjU3MTRh
MmRjMjRlYmY3MmRhYjUzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5k
b3cuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcApAQCAtNzczLDcg
Kzc3Myw3IEBAIERPTUFwcGxpY2F0aW9uQ2FjaGUqIERPTVdpbmRvdzo6YXBwbGljYXRpb25DYWNo
ZSgpIGNvbnN0CiAgICAgaWYgKCFpc0N1cnJlbnRseURpc3BsYXllZEluRnJhbWUoKSkKICAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CiAgICAgaWYgKCFtX2FwcGxpY2F0aW9uQ2FjaGUpCi0gICAgICAg
IG1fYXBwbGljYXRpb25DYWNoZSA9IERPTUFwcGxpY2F0aW9uQ2FjaGU6OmNyZWF0ZShtX2ZyYW1l
KTsKKyAgICAgICAgbV9hcHBsaWNhdGlvbkNhY2hlID0gRE9NQXBwbGljYXRpb25DYWNoZTo6Y3Jl
YXRlKCptX2ZyYW1lKTsKICAgICByZXR1cm4gbV9hcHBsaWNhdGlvbkNhY2hlLmdldCgpOwogfQog
CkBAIC0yMDg3LDcgKzIwODcsNyBAQCB2b2lkIERPTVdpbmRvdzo6c2V0TG9jYXRpb24oRE9NV2lu
ZG93JiBhY3RpdmVXaW5kb3csIERPTVdpbmRvdyYgZmlyc3RXaW5kb3csIGNvbgogICAgIC8vIFdl
IHdhbnQgYSBuZXcgaGlzdG9yeSBpdGVtIGlmIHdlIGFyZSBwcm9jZXNzaW5nIGEgdXNlciBnZXN0
dXJlLgogICAgIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5ID0gKGxvY2tpbmcgIT0gTG9ja0hpc3Rv
cnlCYXNlZE9uR2VzdHVyZVN0YXRlIHx8ICFTY3JpcHRDb250cm9sbGVyOjpwcm9jZXNzaW5nVXNl
ckdlc3R1cmUoKSkgPyBMb2NrSGlzdG9yeTo6WWVzIDogTG9ja0hpc3Rvcnk6Ok5vOwogICAgIExv
Y2tCYWNrRm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3YXJkTGlzdCA9IChsb2NraW5nICE9IExvY2tI
aXN0b3J5QmFzZWRPbkdlc3R1cmVTdGF0ZSkgPyBMb2NrQmFja0ZvcndhcmRMaXN0OjpZZXMgOiBM
b2NrQmFja0ZvcndhcmRMaXN0OjpObzsKLSAgICBtX2ZyYW1lLT5uYXZpZ2F0aW9uU2NoZWR1bGVy
KCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZShhY3RpdmVEb2N1bWVudCwgYWN0aXZlRG9jdW1lbnQt
PnNlY3VyaXR5T3JpZ2luKCksCisgICAgbV9mcmFtZS0+bmF2aWdhdGlvblNjaGVkdWxlcigpLnNj
aGVkdWxlTG9jYXRpb25DaGFuZ2UoKmFjdGl2ZURvY3VtZW50LCBhY3RpdmVEb2N1bWVudC0+c2Vj
dXJpdHlPcmlnaW4oKSwKICAgICAgICAgLy8gRklYTUU6IFdoYXQgaWYgYWN0aXZlRG9jdW1lbnQo
KS0+ZnJhbWUoKSBpcyAwPwogICAgICAgICBjb21wbGV0ZWRVUkwsIGFjdGl2ZURvY3VtZW50LT5m
cmFtZSgpLT5sb2FkZXIoKS5vdXRnb2luZ1JlZmVycmVyKCksCiAgICAgICAgIGxvY2tIaXN0b3J5
LCBsb2NrQmFja0ZvcndhcmRMaXN0KTsKQEAgLTIyMTMsNyArMjIxMyw3IEBAIFJlZlB0cjxGcmFt
ZT4gRE9NV2luZG93OjpjcmVhdGVXaW5kb3coY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcsIGNvbnN0
IEF0b21pY1N0cmluCiAgICAgICAgIG5ld0ZyYW1lLT5sb2FkZXIoKS5jaGFuZ2VMb2NhdGlvbihm
cmFtZVJlcXVlc3QpOwogICAgIH0gZWxzZSBpZiAoIXVybFN0cmluZy5pc0VtcHR5KCkpIHsKICAg
ICAgICAgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnkgPSBTY3JpcHRDb250cm9sbGVyOjpwcm9jZXNz
aW5nVXNlckdlc3R1cmUoKSA/IExvY2tIaXN0b3J5OjpObyA6IExvY2tIaXN0b3J5OjpZZXM7Ci0g
ICAgICAgIG5ld0ZyYW1lLT5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNo
YW5nZShhY3RpdmVXaW5kb3cuZG9jdW1lbnQoKSwgYWN0aXZlV2luZG93LmRvY3VtZW50KCktPnNl
Y3VyaXR5T3JpZ2luKCksIGNvbXBsZXRlZFVSTCwgcmVmZXJyZXIsIGxvY2tIaXN0b3J5LCBMb2Nr
QmFja0ZvcndhcmRMaXN0OjpObyk7CisgICAgICAgIG5ld0ZyYW1lLT5uYXZpZ2F0aW9uU2NoZWR1
bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZSgqYWN0aXZlV2luZG93LmRvY3VtZW50KCksIGFj
dGl2ZVdpbmRvdy5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLCBjb21wbGV0ZWRVUkwsIHJl
ZmVycmVyLCBsb2NrSGlzdG9yeSwgTG9ja0JhY2tGb3J3YXJkTGlzdDo6Tm8pOwogICAgIH0KIAog
ICAgIC8vIE5hdmlnYXRpbmcgdGhlIG5ldyBmcmFtZSBjb3VsZCByZXN1bHQgaW4gaXQgYmVpbmcg
ZGV0YWNoZWQgZnJvbSBpdHMgcGFnZSBieSBhIG5hdmlnYXRpb24gcG9saWN5IGRlbGVnYXRlLgpA
QCAtMjIyMywyOCArMjIyMywyNiBAQCBSZWZQdHI8RnJhbWU+IERPTVdpbmRvdzo6Y3JlYXRlV2lu
ZG93KGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nLCBjb25zdCBBdG9taWNTdHJpbgogICAgIHJldHVy
biBuZXdGcmFtZTsKIH0KIAotUmVmUHRyPERPTVdpbmRvdz4gRE9NV2luZG93OjpvcGVuKGNvbnN0
IFN0cmluZyYgdXJsU3RyaW5nLCBjb25zdCBBdG9taWNTdHJpbmcmIGZyYW1lTmFtZSwgY29uc3Qg
U3RyaW5nJiB3aW5kb3dGZWF0dXJlc1N0cmluZywKLSAgICBET01XaW5kb3cmIGFjdGl2ZVdpbmRv
dywgRE9NV2luZG93JiBmaXJzdFdpbmRvdykKK1JlZlB0cjxET01XaW5kb3c+IERPTVdpbmRvdzo6
b3Blbihjb25zdCBTdHJpbmcmIHVybFN0cmluZywgY29uc3QgQXRvbWljU3RyaW5nJiBmcmFtZU5h
bWUsIGNvbnN0IFN0cmluZyYgd2luZG93RmVhdHVyZXNTdHJpbmcsIERPTVdpbmRvdyYgYWN0aXZl
V2luZG93LCBET01XaW5kb3cmIGZpcnN0V2luZG93KQogewogICAgIGlmICghaXNDdXJyZW50bHlE
aXNwbGF5ZWRJbkZyYW1lKCkpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgRG9jdW1l
bnQqIGFjdGl2ZURvY3VtZW50ID0gYWN0aXZlV2luZG93LmRvY3VtZW50KCk7CisgICAgYXV0byog
YWN0aXZlRG9jdW1lbnQgPSBhY3RpdmVXaW5kb3cuZG9jdW1lbnQoKTsKICAgICBpZiAoIWFjdGl2
ZURvY3VtZW50KQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAotICAgIEZyYW1lKiBmaXJzdEZy
YW1lID0gZmlyc3RXaW5kb3cuZnJhbWUoKTsKKyAgICBhdXRvKiBmaXJzdEZyYW1lID0gZmlyc3RX
aW5kb3cuZnJhbWUoKTsKICAgICBpZiAoIWZpcnN0RnJhbWUpCiAgICAgICAgIHJldHVybiBudWxs
cHRyOwogCiAjaWYgRU5BQkxFKENPTlRFTlRfRVhURU5TSU9OUykKICAgICBpZiAoZmlyc3RGcmFt
ZS0+ZG9jdW1lbnQoKQotICAgICAgICAmJiBmaXJzdEZyYW1lLT5tYWluRnJhbWUoKS5wYWdlKCkK
KyAgICAgICAgJiYgZmlyc3RGcmFtZS0+cGFnZSgpCiAgICAgICAgICYmIGZpcnN0RnJhbWUtPm1h
aW5GcmFtZSgpLmRvY3VtZW50KCkKICAgICAgICAgJiYgZmlyc3RGcmFtZS0+bWFpbkZyYW1lKCku
ZG9jdW1lbnQoKS0+bG9hZGVyKCkpIHsKLSAgICAgICAgUmVzb3VyY2VMb2FkSW5mbyByZXNvdXJj
ZUxvYWRJbmZvID0geyBmaXJzdEZyYW1lLT5kb2N1bWVudCgpLT5jb21wbGV0ZVVSTCh1cmxTdHJp
bmcpLCBmaXJzdEZyYW1lLT5tYWluRnJhbWUoKS5kb2N1bWVudCgpLT51cmwoKSwgUmVzb3VyY2VU
eXBlOjpQb3B1cCB9OwotICAgICAgICBWZWN0b3I8Q29udGVudEV4dGVuc2lvbnM6OkFjdGlvbj4g
YWN0aW9ucyA9IGZpcnN0RnJhbWUtPm1haW5GcmFtZSgpLnBhZ2UoKS0+dXNlckNvbnRlbnRQcm92
aWRlcigpLmFjdGlvbnNGb3JSZXNvdXJjZUxvYWQocmVzb3VyY2VMb2FkSW5mbywgKmZpcnN0RnJh
bWUtPm1haW5GcmFtZSgpLmRvY3VtZW50KCktPmxvYWRlcigpKTsKLSAgICAgICAgZm9yIChjb25z
dCBDb250ZW50RXh0ZW5zaW9uczo6QWN0aW9uJiBhY3Rpb24gOiBhY3Rpb25zKSB7CisgICAgICAg
IFJlc291cmNlTG9hZEluZm8gcmVzb3VyY2VMb2FkSW5mbyB7IGZpcnN0RnJhbWUtPmRvY3VtZW50
KCktPmNvbXBsZXRlVVJMKHVybFN0cmluZyksIGZpcnN0RnJhbWUtPm1haW5GcmFtZSgpLmRvY3Vt
ZW50KCktPnVybCgpLCBSZXNvdXJjZVR5cGU6OlBvcHVwIH07CisgICAgICAgIGZvciAoYXV0byYg
YWN0aW9uIDogZmlyc3RGcmFtZS0+cGFnZSgpLT51c2VyQ29udGVudFByb3ZpZGVyKCkuYWN0aW9u
c0ZvclJlc291cmNlTG9hZChyZXNvdXJjZUxvYWRJbmZvLCAqZmlyc3RGcmFtZS0+bWFpbkZyYW1l
KCkuZG9jdW1lbnQoKS0+bG9hZGVyKCkpKSB7CiAgICAgICAgICAgICBpZiAoYWN0aW9uLnR5cGUo
KSA9PSBDb250ZW50RXh0ZW5zaW9uczo6QWN0aW9uVHlwZTo6QmxvY2tMb2FkKQogICAgICAgICAg
ICAgICAgIHJldHVybiBudWxscHRyOwogICAgICAgICB9CkBAIC0yMjg0LDcgKzIyODIsNyBAQCBS
ZWZQdHI8RE9NV2luZG93PiBET01XaW5kb3c6Om9wZW4oY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcs
IGNvbnN0IEF0b21pY1N0cmluZyYgZgogICAgICAgICAvLyBGb3Igd2hhdGV2ZXIgcmVhc29uLCBG
aXJlZm94IHVzZXMgdGhlIGZpcnN0IHdpbmRvdyByYXRoZXIgdGhhbiB0aGUgYWN0aXZlIHdpbmRv
dyB0bwogICAgICAgICAvLyBkZXRlcm1pbmUgdGhlIG91dGdvaW5nIHJlZmVycmVyLiBXZSByZXBs
aWNhdGUgdGhhdCBiZWhhdmlvciBoZXJlLgogICAgICAgICBMb2NrSGlzdG9yeSBsb2NrSGlzdG9y
eSA9IFNjcmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpID8gTG9ja0hpc3Rv
cnk6Ok5vIDogTG9ja0hpc3Rvcnk6OlllczsKLSAgICAgICAgdGFyZ2V0RnJhbWUtPm5hdmlnYXRp
b25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKGFjdGl2ZURvY3VtZW50LCBhY3Rp
dmVEb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKSwgY29tcGxldGVkVVJMLCBmaXJzdEZyYW1lLT5s
b2FkZXIoKS5vdXRnb2luZ1JlZmVycmVyKCksCisgICAgICAgIHRhcmdldEZyYW1lLT5uYXZpZ2F0
aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZSgqYWN0aXZlRG9jdW1lbnQsIGFj
dGl2ZURvY3VtZW50LT5zZWN1cml0eU9yaWdpbigpLCBjb21wbGV0ZWRVUkwsIGZpcnN0RnJhbWUt
PmxvYWRlcigpLm91dGdvaW5nUmVmZXJyZXIoKSwKICAgICAgICAgICAgIGxvY2tIaXN0b3J5LCBM
b2NrQmFja0ZvcndhcmRMaXN0OjpObyk7CiAgICAgICAgIHJldHVybiB0YXJnZXRGcmFtZS0+ZG9j
dW1lbnQoKS0+ZG9tV2luZG93KCk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9FZGl0b3JDbGllbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRWRpdG9yQ2xpZW50LmgK
aW5kZXggZWIxYTQyZTJlZWQwM2E1MTRkMTIzNjA4YmNlNzNiNGUyZDU2NzgwYS4uZjQxMzIxMDlm
NjQ5M2MzMDU4MmE5ODkxOTJjOGRiMzU1OTk5Nzg0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGFnZS9FZGl0b3JDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0VkaXRvckNs
aWVudC5oCkBAIC0xMDQsOCArMTA0LDggQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBkaXNj
YXJkZWRDb21wb3NpdGlvbihGcmFtZSopID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgY2FuY2VsZWRD
b21wb3NpdGlvbigpID0gMDsKIAotICAgIHZpcnR1YWwgdm9pZCByZWdpc3RlclVuZG9TdGVwKFBh
c3NSZWZQdHI8VW5kb1N0ZXA+KSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIHJlZ2lzdGVyUmVkb1N0
ZXAoUGFzc1JlZlB0cjxVbmRvU3RlcD4pID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgcmVnaXN0ZXJV
bmRvU3RlcChVbmRvU3RlcCYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgcmVnaXN0ZXJSZWRvU3Rl
cChVbmRvU3RlcCYpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgY2xlYXJVbmRvUmVkb09wZXJhdGlv
bnMoKSA9IDA7CiAKICAgICB2aXJ0dWFsIGJvb2wgY2FuQ29weUN1dChGcmFtZSosIGJvb2wgZGVm
YXVsdFZhbHVlKSBjb25zdCA9IDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0hp
c3RvcnkuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9IaXN0b3J5LmNwcAppbmRleCAxZDQ1NDJi
ODdlYTYxMjUwYTg0YmQ3Y2Q5MTY3MmQ1ZWFmYjM4NGRmLi42M2VkM2QwMDdlYmVkMWE4MjM5MGJh
ZTE5ODc1YjM1Mjc2OWZlOGUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0hpc3Rv
cnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvSGlzdG9yeS5jcHAKQEAgLTIwNywxMCAr
MjA3LDEwIEBAIEV4Y2VwdGlvbk9yPHZvaWQ+IEhpc3Rvcnk6OnN0YXRlT2JqZWN0QWRkZWQoUmVm
UHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4mJiBkYXRhCiAgICAgICAgIG1fZnJhbWUtPmRvY3Vt
ZW50KCktPnVwZGF0ZVVSTEZvclB1c2hPclJlcGxhY2VTdGF0ZShmdWxsVVJMKTsKIAogICAgIGlm
IChzdGF0ZU9iamVjdFR5cGUgPT0gU3RhdGVPYmplY3RUeXBlOjpQdXNoKSB7Ci0gICAgICAgIG1f
ZnJhbWUtPmxvYWRlcigpLmhpc3RvcnkoKS5wdXNoU3RhdGUoZGF0YSwgdGl0bGUsIGZ1bGxVUkwu
c3RyaW5nKCkpOworICAgICAgICBtX2ZyYW1lLT5sb2FkZXIoKS5oaXN0b3J5KCkucHVzaFN0YXRl
KFdURk1vdmUoZGF0YSksIHRpdGxlLCBmdWxsVVJMLnN0cmluZygpKTsKICAgICAgICAgbV9mcmFt
ZS0+bG9hZGVyKCkuY2xpZW50KCkuZGlzcGF0Y2hEaWRQdXNoU3RhdGVXaXRoaW5QYWdlKCk7CiAg
ICAgfSBlbHNlIGlmIChzdGF0ZU9iamVjdFR5cGUgPT0gU3RhdGVPYmplY3RUeXBlOjpSZXBsYWNl
KSB7Ci0gICAgICAgIG1fZnJhbWUtPmxvYWRlcigpLmhpc3RvcnkoKS5yZXBsYWNlU3RhdGUoZGF0
YSwgdGl0bGUsIGZ1bGxVUkwuc3RyaW5nKCkpOworICAgICAgICBtX2ZyYW1lLT5sb2FkZXIoKS5o
aXN0b3J5KCkucmVwbGFjZVN0YXRlKFdURk1vdmUoZGF0YSksIHRpdGxlLCBmdWxsVVJMLnN0cmlu
ZygpKTsKICAgICAgICAgbV9mcmFtZS0+bG9hZGVyKCkuY2xpZW50KCkuZGlzcGF0Y2hEaWRSZXBs
YWNlU3RhdGVXaXRoaW5QYWdlKCk7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0xvY2F0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTG9jYXRpb24uY3BwCmlu
ZGV4IDhkODM5ZDEzYTkxOTgwZTFhMDI4ZGJjNTgwYmJiZjFkMzY2ZDQ1NmYuLmJkYjU0OGIwYjc4
OTM0YWM2MmMxNzFlNjlmN2YxMjkzYmZmYTQyNzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvTG9jYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTG9jYXRpb24uY3Bw
CkBAIC0yMjEsOSArMjIxLDEwIEBAIHZvaWQgTG9jYXRpb246OnNldEhhc2goRE9NV2luZG93JiBh
Y3RpdmVXaW5kb3csIERPTVdpbmRvdyYgZmlyc3RXaW5kb3csIGNvbnN0IFN0CiB7CiAgICAgaWYg
KCFtX2ZyYW1lKQogICAgICAgICByZXR1cm47Ci0gICAgVVJMIHVybCA9IG1fZnJhbWUtPmRvY3Vt
ZW50KCktPnVybCgpOwotICAgIFN0cmluZyBvbGRGcmFnbWVudElkZW50aWZpZXIgPSB1cmwuZnJh
Z21lbnRJZGVudGlmaWVyKCk7Ci0gICAgU3RyaW5nIG5ld0ZyYWdtZW50SWRlbnRpZmllciA9IGhh
c2g7CisgICAgQVNTRVJUKG1fZnJhbWUtPmRvY3VtZW50KCkpOworICAgIGF1dG8gdXJsID0gbV9m
cmFtZS0+ZG9jdW1lbnQoKS0+dXJsKCk7CisgICAgYXV0byBvbGRGcmFnbWVudElkZW50aWZpZXIg
PSB1cmwuZnJhZ21lbnRJZGVudGlmaWVyKCk7CisgICAgYXV0byBuZXdGcmFnbWVudElkZW50aWZp
ZXIgPSBoYXNoOwogICAgIGlmIChoYXNoWzBdID09ICcjJykKICAgICAgICAgbmV3RnJhZ21lbnRJ
ZGVudGlmaWVyID0gaGFzaC5zdWJzdHJpbmcoMSk7CiAgICAgdXJsLnNldEZyYWdtZW50SWRlbnRp
ZmllcihuZXdGcmFnbWVudElkZW50aWZpZXIpOwpAQCAtMjQ2LDcgKzI0Nyw5IEBAIHZvaWQgTG9j
YXRpb246OnJlcGxhY2UoRE9NV2luZG93JiBhY3RpdmVXaW5kb3csIERPTVdpbmRvdyYgZmlyc3RX
aW5kb3csIGNvbnN0IFN0CiB7CiAgICAgaWYgKCFtX2ZyYW1lKQogICAgICAgICByZXR1cm47Ci0g
ICAgLy8gTm90ZTogV2UgY2FsbCBET01XaW5kb3c6OnNldExvY2F0aW9uIGRpcmVjdGx5IGhlcmUg
YmVjYXVzZSByZXBsYWNlKCkgYWx3YXlzIG9wZXJhdGVzIG9uIHRoZSBjdXJyZW50IGZyYW1lLgor
ICAgIEFTU0VSVChtX2ZyYW1lLT5kb2N1bWVudCgpKTsKKyAgICBBU1NFUlQobV9mcmFtZS0+ZG9j
dW1lbnQoKS0+ZG9tV2luZG93KCkpOworICAgIC8vIFdlIGNhbGwgRE9NV2luZG93OjpzZXRMb2Nh
dGlvbiBkaXJlY3RseSBoZXJlIGJlY2F1c2UgcmVwbGFjZSgpIGFsd2F5cyBvcGVyYXRlcyBvbiB0
aGUgY3VycmVudCBmcmFtZS4KICAgICBtX2ZyYW1lLT5kb2N1bWVudCgpLT5kb21XaW5kb3coKS0+
c2V0TG9jYXRpb24oYWN0aXZlV2luZG93LCBmaXJzdFdpbmRvdywgdXJsLCBMb2NrSGlzdG9yeUFu
ZEJhY2tGb3J3YXJkTGlzdCk7CiB9CiAKQEAgLTI1NCwyNiArMjU3LDM4IEBAIHZvaWQgTG9jYXRp
b246OnJlbG9hZChET01XaW5kb3cmIGFjdGl2ZVdpbmRvdykKIHsKICAgICBpZiAoIW1fZnJhbWUp
CiAgICAgICAgIHJldHVybjsKKworICAgIEFTU0VSVChhY3RpdmVXaW5kb3cuZG9jdW1lbnQoKSk7
CisgICAgQVNTRVJUKG1fZnJhbWUtPmRvY3VtZW50KCkpOworICAgIEFTU0VSVChtX2ZyYW1lLT5k
b2N1bWVudCgpLT5kb21XaW5kb3coKSk7CisKKyAgICBhdXRvJiBhY3RpdmVEb2N1bWVudCA9ICph
Y3RpdmVXaW5kb3cuZG9jdW1lbnQoKTsKKyAgICBhdXRvJiB0YXJnZXREb2N1bWVudCA9ICptX2Zy
YW1lLT5kb2N1bWVudCgpOworCiAgICAgLy8gRklYTUU6IEl0J3Mgbm90IGNsZWFyIHRoaXMgY3Jv
c3Mtb3JpZ2luIHNlY3VyaXR5IGNoZWNrIGlzIHZhbHVhYmxlLgogICAgIC8vIFdlIGFsbG93IG9u
ZSBwYWdlIHRvIGNoYW5nZSB0aGUgbG9jYXRpb24gb2YgYW5vdGhlci4gV2h5IGJsb2NrIGF0dGVt
cHRzIHRvIHJlbG9hZD8KICAgICAvLyBPdGhlciBsb2NhdGlvbiBvcGVyYXRpb25zIHNpbXBseSBi
bG9jayB1c2Ugb2YgSmF2YVNjcmlwdCBVUkxzIGNyb3NzIG9yaWdpbi4KLSAgICBET01XaW5kb3cq
IHRhcmdldFdpbmRvdyA9IG1fZnJhbWUtPmRvY3VtZW50KCktPmRvbVdpbmRvdygpOwotICAgIGlm
ICghYWN0aXZlV2luZG93LmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPmNhbkFjY2Vzcyht
X2ZyYW1lLT5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpKSkgewotICAgICAgICB0YXJnZXRX
aW5kb3ctPnByaW50RXJyb3JNZXNzYWdlKHRhcmdldFdpbmRvdy0+Y3Jvc3NEb21haW5BY2Nlc3NF
cnJvck1lc3NhZ2UoYWN0aXZlV2luZG93KSk7CisgICAgaWYgKCFhY3RpdmVEb2N1bWVudC5zZWN1
cml0eU9yaWdpbigpLT5jYW5BY2Nlc3ModGFyZ2V0RG9jdW1lbnQuc2VjdXJpdHlPcmlnaW4oKSkp
IHsKKyAgICAgICAgYXV0byYgdGFyZ2V0V2luZG93ID0gKnRhcmdldERvY3VtZW50LmRvbVdpbmRv
dygpOworICAgICAgICB0YXJnZXRXaW5kb3cucHJpbnRFcnJvck1lc3NhZ2UodGFyZ2V0V2luZG93
LmNyb3NzRG9tYWluQWNjZXNzRXJyb3JNZXNzYWdlKGFjdGl2ZVdpbmRvdykpOwogICAgICAgICBy
ZXR1cm47CiAgICAgfQotICAgIGlmIChwcm90b2NvbElzSmF2YVNjcmlwdChtX2ZyYW1lLT5kb2N1
bWVudCgpLT51cmwoKSkpCisKKyAgICBpZiAocHJvdG9jb2xJc0phdmFTY3JpcHQodGFyZ2V0RG9j
dW1lbnQudXJsKCkpKQogICAgICAgICByZXR1cm47Ci0gICAgbV9mcmFtZS0+bmF2aWdhdGlvblNj
aGVkdWxlcigpLnNjaGVkdWxlUmVmcmVzaChhY3RpdmVXaW5kb3cuZG9jdW1lbnQoKSk7CisKKyAg
ICBtX2ZyYW1lLT5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVSZWZyZXNoKGFjdGl2ZURv
Y3VtZW50KTsKIH0KIAogdm9pZCBMb2NhdGlvbjo6c2V0TG9jYXRpb24oRE9NV2luZG93JiBhY3Rp
dmVXaW5kb3csIERPTVdpbmRvdyYgZmlyc3RXaW5kb3csIGNvbnN0IFN0cmluZyYgdXJsKQogewog
ICAgIEFTU0VSVChtX2ZyYW1lKTsKLSAgICBGcmFtZSogZnJhbWUgPSBtX2ZyYW1lLT5sb2FkZXIo
KS5maW5kRnJhbWVGb3JOYXZpZ2F0aW9uKFN0cmluZygpLCBhY3RpdmVXaW5kb3cuZG9jdW1lbnQo
KSk7Ci0gICAgaWYgKCFmcmFtZSkKKyAgICBhdXRvKiB0YXJnZXRGcmFtZSA9IG1fZnJhbWUtPmxv
YWRlcigpLmZpbmRGcmFtZUZvck5hdmlnYXRpb24oeyB9LCBhY3RpdmVXaW5kb3cuZG9jdW1lbnQo
KSk7CisgICAgaWYgKCF0YXJnZXRGcmFtZSkKICAgICAgICAgcmV0dXJuOwotICAgIGZyYW1lLT5k
b2N1bWVudCgpLT5kb21XaW5kb3coKS0+c2V0TG9jYXRpb24oYWN0aXZlV2luZG93LCBmaXJzdFdp
bmRvdywgdXJsKTsKKyAgICBBU1NFUlQodGFyZ2V0RnJhbWUtPmRvY3VtZW50KCkpOworICAgIEFT
U0VSVCh0YXJnZXRGcmFtZS0+ZG9jdW1lbnQoKS0+ZG9tV2luZG93KCkpOworICAgIHRhcmdldEZy
YW1lLT5kb2N1bWVudCgpLT5kb21XaW5kb3coKS0+c2V0TG9jYXRpb24oYWN0aXZlV2luZG93LCBm
aXJzdFdpbmRvdywgdXJsKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVVJMLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL1VSTC5jcHAKaW5kZXggZTcwYTBmN2I4M2U5ZTJmODQ1NGNkMTFmNWE2NDk4NjFhMDI2Mzg5
My4uNWVmYjg1YTMwMzRlZTNlZWQwMGJhZmRjZjBlNjgzMjI2NTA3NzhhMSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVVJMLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9VUkwuY3BwCkBAIC0xMTI2LDE3ICsxMTI2LDE3IEBAIHZvaWQgVVJMOjpzZXRQYXNzKGNv
bnN0IFN0cmluZyYgcGFzc3dvcmQpCiAgICAgfQogfQogCi12b2lkIFVSTDo6c2V0RnJhZ21lbnRJ
ZGVudGlmaWVyKGNvbnN0IFN0cmluZyYgcykKK3ZvaWQgVVJMOjpzZXRGcmFnbWVudElkZW50aWZp
ZXIoU3RyaW5nVmlldyBpZGVudGlmaWVyKQogewogICAgIGlmICghbV9pc1ZhbGlkKQogICAgICAg
ICByZXR1cm47CiAKLSAgICAvLyBGSVhNRTogTm9uLUFTQ0lJIGNoYXJhY3RlcnMgbXVzdCBiZSBl
bmNvZGVkIGFuZCBlc2NhcGVkIHRvIG1hdGNoIHBhcnNlKCkgZXhwZWN0YXRpb25zLgotICAgIGlm
IChVUkxQYXJzZXI6OmVuYWJsZWQoKSkgewotICAgICAgICBVUkxQYXJzZXIgcGFyc2VyKG1ha2VT
dHJpbmcobV9zdHJpbmcubGVmdChtX3F1ZXJ5RW5kKSwgIiMiLCBzKSk7Ci0gICAgICAgICp0aGlz
ID0gcGFyc2VyLnJlc3VsdCgpOwotICAgIH0gZWxzZQotICAgICAgICBwYXJzZShtX3N0cmluZy5s
ZWZ0KG1fcXVlcnlFbmQpICsgIiMiICsgcyk7CisgICAgLy8gRklYTUU6IE9wdGltaXplIHRoZSBj
YXNlIHdoZXJlIHRoZSBpZGVudGlmaWVyIGFscmVhZHkgaGFwcGVucyB0byBiZSBlcXVhbCB0byB3
aGF0IHdhcyBwYXNzZWQ/CisgICAgLy8gRklYTUU6IElzIGl0IGNvcnJlY3QgdG8gZG8gdGhpcyB3
aXRob3V0IGVuY29kaW5nIGFuZCBlc2NhcGluZyBub24tQVNDSUkgY2hhcmFjdGVycz8KKyAgICBp
ZiAoVVJMUGFyc2VyOjplbmFibGVkKCkpCisgICAgICAgICp0aGlzID0gVVJMUGFyc2VyIHsgbWFr
ZVN0cmluZyhTdHJpbmdWaWV3IHsgbV9zdHJpbmcgfS5zdWJzdHJpbmcoMCwgbV9xdWVyeUVuZCks
ICcjJywgaWRlbnRpZmllcikgfS5yZXN1bHQoKTsKKyAgICBlbHNlCisgICAgICAgIHBhcnNlKG1f
c3RyaW5nLmxlZnQobV9xdWVyeUVuZCkgKyAiIyIgKyBpZGVudGlmaWVyKTsKIH0KIAogdm9pZCBV
Ukw6OnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9VUkwuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1VSTC5oCmluZGV4IDVh
YmYwNWZlN2M2Mzc0ZmQ1NTJhODAxZGM3OGRhMmRiNmE2Y2NlZmUuLmIyYzIzZGU0MTE3ODQwMDAy
MDQzM2QzYjM0YmQ2N2MxNmE1NDVkZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL1VSTC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1VSTC5oCkBAIC0xNTgsNyAr
MTU4LDcgQEAgcHVibGljOgogICAgIC8vIFVSTCAod2l0aCBub3RoaW5nIGFmdGVyIGl0KS4gVG8g
Y2xlYXIgdGhlIHF1ZXJ5LCBwYXNzIGEgbnVsbCBzdHJpbmcuCiAgICAgdm9pZCBzZXRRdWVyeShj
b25zdCBTdHJpbmcmKTsKIAotICAgIHZvaWQgc2V0RnJhZ21lbnRJZGVudGlmaWVyKGNvbnN0IFN0
cmluZyYpOworICAgIHZvaWQgc2V0RnJhZ21lbnRJZGVudGlmaWVyKFN0cmluZ1ZpZXcpOwogICAg
IHZvaWQgcmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CiAKICAgICBXRUJDT1JFX0VYUE9SVCBm
cmllbmQgYm9vbCBlcXVhbElnbm9yaW5nRnJhZ21lbnRJZGVudGlmaWVyKGNvbnN0IFVSTCYsIGNv
bnN0IFVSTCYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVwbGF5L1JlcGxheUlucHV0
RGlzcGF0Y2hNZXRob2RzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlcGxheS9SZXBsYXlJbnB1dERp
c3BhdGNoTWV0aG9kcy5jcHAKaW5kZXggODQ3NTJhMjMyZmVhNmUzOWVjNTc2MTQyZmUzNTcwYzFi
YzNkMjQxNi4uN2YzYzMwMDNjMTUyYWVjMDgyZmE5N2Y2MDI2Zjc4NmZhOTJjZjRiNCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcmVwbGF5L1JlcGxheUlucHV0RGlzcGF0Y2hNZXRob2RzLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZXBsYXkvUmVwbGF5SW5wdXREaXNwYXRjaE1ldGhvZHMu
Y3BwCkBAIC01MCw4ICs1MCw5IEBAIHZvaWQgRW5kU2VnbWVudFNlbnRpbmVsOjpkaXNwYXRjaChS
ZXBsYXlDb250cm9sbGVyJikKIC8vIE5hdmlnYXRpb24gaW5wdXRzLgogdm9pZCBJbml0aWFsTmF2
aWdhdGlvbjo6ZGlzcGF0Y2goUmVwbGF5Q29udHJvbGxlciYgY29udHJvbGxlcikKIHsKLSAgICBG
cmFtZSYgZnJhbWUgPSBjb250cm9sbGVyLnBhZ2UoKS5tYWluRnJhbWUoKTsKLSAgICBmcmFtZS5u
YXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZShmcmFtZS5kb2N1bWVu
dCgpLCBtX3NlY3VyaXR5T3JpZ2luLmdldCgpLCBtX3VybCwgbV9yZWZlcnJlcik7CisgICAgYXV0
byYgZnJhbWUgPSBjb250cm9sbGVyLnBhZ2UoKS5tYWluRnJhbWUoKTsKKyAgICBBU1NFUlQoZnJh
bWUuZG9jdW1lbnQoKSk7CisgICAgZnJhbWUubmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxl
TG9jYXRpb25DaGFuZ2UoKmZyYW1lLmRvY3VtZW50KCksIG1fc2VjdXJpdHlPcmlnaW4uZ2V0KCks
IG1fdXJsLCBtX3JlZmVycmVyKTsKIH0KIAogdm9pZCBIYW5kbGVLZXlQcmVzczo6ZGlzcGF0Y2go
UmVwbGF5Q29udHJvbGxlciYgY29udHJvbGxlcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3N2Zy9TVkdGRUltYWdlRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRkVJbWFn
ZUVsZW1lbnQuY3BwCmluZGV4IDBiMzI3MTBiNmZhOWQ0MzNmYjgyYWE5MTE2YjIwZDY4MThkNWFm
YjIuLmMyY2Q2ZjY1YjMwYjdhMGJlZjQ0NzhkNWFjNDcwOWVkOWNmZDIxYTIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGRUltYWdlRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvc3ZnL1NWR0ZFSW1hZ2VFbGVtZW50LmNwcApAQCAtODgsNyArODgsNyBAQCB2b2lkIFNW
R0ZFSW1hZ2VFbGVtZW50OjpyZXF1ZXN0SW1hZ2VSZXNvdXJjZSgpCiAgICAgb3B0aW9ucy5jb250
ZW50U2VjdXJpdHlQb2xpY3lJbXBvc2l0aW9uID0gaXNJblVzZXJBZ2VudFNoYWRvd1RyZWUoKSA/
IENvbnRlbnRTZWN1cml0eVBvbGljeUltcG9zaXRpb246OlNraXBQb2xpY3lDaGVjayA6IENvbnRl
bnRTZWN1cml0eVBvbGljeUltcG9zaXRpb246OkRvUG9saWN5Q2hlY2s7CiAKICAgICBDYWNoZWRS
ZXNvdXJjZVJlcXVlc3QgcmVxdWVzdChSZXNvdXJjZVJlcXVlc3QoZG9jdW1lbnQoKS5jb21wbGV0
ZVVSTChocmVmKCkpKSwgb3B0aW9ucyk7Ci0gICAgcmVxdWVzdC5zZXRJbml0aWF0b3IodGhpcyk7
CisgICAgcmVxdWVzdC5zZXRJbml0aWF0b3IoKnRoaXMpOwogICAgIG1fY2FjaGVkSW1hZ2UgPSBk
b2N1bWVudCgpLmNhY2hlZFJlc291cmNlTG9hZGVyKCkucmVxdWVzdEltYWdlKFdURk1vdmUocmVx
dWVzdCkpOwogCiAgICAgaWYgKG1fY2FjaGVkSW1hZ2UpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9zdmcvU1ZHRm9udEZhY2VVcmlFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9T
VkdGb250RmFjZVVyaUVsZW1lbnQuY3BwCmluZGV4IDM1NjZhYzQ2NTMyOWY3ZmExY2Q0NDZlZjE3
YTM2NWQ3NWVmNmYyNDMuLjU2ZDVlNjNjM2MxNWFhZjZmNWY2ZTliNjk5NGE5MGU2ZmQ2MjIzNDQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGb250RmFjZVVyaUVsZW1lbnQuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGb250RmFjZVVyaUVsZW1lbnQuY3BwCkBAIC0x
MDUsNyArMTA1LDcgQEAgdm9pZCBTVkdGb250RmFjZVVyaUVsZW1lbnQ6OmxvYWRGb250KCkKIAog
ICAgICAgICBDYWNoZWRSZXNvdXJjZUxvYWRlciYgY2FjaGVkUmVzb3VyY2VMb2FkZXIgPSBkb2N1
bWVudCgpLmNhY2hlZFJlc291cmNlTG9hZGVyKCk7CiAgICAgICAgIENhY2hlZFJlc291cmNlUmVx
dWVzdCByZXF1ZXN0KFJlc291cmNlUmVxdWVzdChkb2N1bWVudCgpLmNvbXBsZXRlVVJMKGhyZWYp
KSwgb3B0aW9ucyk7Ci0gICAgICAgIHJlcXVlc3Quc2V0SW5pdGlhdG9yKHRoaXMpOworICAgICAg
ICByZXF1ZXN0LnNldEluaXRpYXRvcigqdGhpcyk7CiAgICAgICAgIG1fY2FjaGVkRm9udCA9IGNh
Y2hlZFJlc291cmNlTG9hZGVyLnJlcXVlc3RGb250KFdURk1vdmUocmVxdWVzdCksIGlzU1ZHRm9u
dFRhcmdldCgqdGhpcykpOwogICAgICAgICBpZiAobV9jYWNoZWRGb250KSB7CiAgICAgICAgICAg
ICBtX2NhY2hlZEZvbnQtPmFkZENsaWVudCgqdGhpcyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9zdmcvU1ZHVXNlRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVXNlRWxl
bWVudC5jcHAKaW5kZXggOGY1MDA5OTJmNTVlYjI2NTYxYTU4ZmJjMTU5YjYyMzEyN2IxNTg2Ny4u
ZTZiNGVmNjk3M2YzNjJhYjhkZmY1NmU5MzA5MWRiOWRmZDhmMjE5MiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvc3ZnL1NWR1VzZUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2
Zy9TVkdVc2VFbGVtZW50LmNwcApAQCAtNTcyLDcgKzU3Miw3IEBAIHZvaWQgU1ZHVXNlRWxlbWVu
dDo6dXBkYXRlRXh0ZXJuYWxEb2N1bWVudCgpCiAgICAgICAgIG9wdGlvbnMuY29udGVudFNlY3Vy
aXR5UG9saWN5SW1wb3NpdGlvbiA9IGlzSW5Vc2VyQWdlbnRTaGFkb3dUcmVlKCkgPyBDb250ZW50
U2VjdXJpdHlQb2xpY3lJbXBvc2l0aW9uOjpTa2lwUG9saWN5Q2hlY2sgOiBDb250ZW50U2VjdXJp
dHlQb2xpY3lJbXBvc2l0aW9uOjpEb1BvbGljeUNoZWNrOwogICAgICAgICBvcHRpb25zLm1vZGUg
PSBGZXRjaE9wdGlvbnM6Ok1vZGU6OlNhbWVPcmlnaW47CiAgICAgICAgIENhY2hlZFJlc291cmNl
UmVxdWVzdCByZXF1ZXN0IHsgUmVzb3VyY2VSZXF1ZXN0IHsgZXh0ZXJuYWxEb2N1bWVudFVSTCB9
LCBvcHRpb25zIH07Ci0gICAgICAgIHJlcXVlc3Quc2V0SW5pdGlhdG9yKHRoaXMpOworICAgICAg
ICByZXF1ZXN0LnNldEluaXRpYXRvcigqdGhpcyk7CiAgICAgICAgIG1fZXh0ZXJuYWxEb2N1bWVu
dCA9IGRvY3VtZW50KCkuY2FjaGVkUmVzb3VyY2VMb2FkZXIoKS5yZXF1ZXN0U1ZHRG9jdW1lbnQo
V1RGTW92ZShyZXF1ZXN0KSk7CiAgICAgICAgIGlmIChtX2V4dGVybmFsRG9jdW1lbnQpCiAgICAg
ICAgICAgICBtX2V4dGVybmFsRG9jdW1lbnQtPmFkZENsaWVudCgqdGhpcyk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L2lvcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnRJT1MuaCBi
L1NvdXJjZS9XZWJLaXQvaW9zL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudElPUy5oCmlu
ZGV4IDYzZjQzMDRhMDM2MmU1MzM1MWM5NmQwZDdlZDA3ZDkxYjBhMDZmOTQuLjZjZDcwM2Q4NzNi
ZDg2NTk4MDAzZTMxM2UyZTRkODJkZGI4NjA3ODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
aW9zL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudElPUy5oCisrKyBiL1NvdXJjZS9XZWJL
aXQvaW9zL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudElPUy5oCkBAIC0xLDUgKzEsNSBA
QAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCwgMjAwOSBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTI0LDczICsy
NCw3NyBAQAogICovCiAKICNpZiBQTEFURk9STShJT1MpCisKICNpbXBvcnQgIldlYkNocm9tZUNs
aWVudC5oIgogCi1jbGFzcyBXZWJDaHJvbWVDbGllbnRJT1MgOiBwdWJsaWMgV2ViQ2hyb21lQ2xp
ZW50IHsKK2NsYXNzIFdlYkNocm9tZUNsaWVudElPUyBmaW5hbCA6IHB1YmxpYyBXZWJDaHJvbWVD
bGllbnQgewogcHVibGljOgotICAgIFdlYkNocm9tZUNsaWVudElPUyhXZWJWaWV3ICp3ZWJWaWV3
KQorICAgIFdlYkNocm9tZUNsaWVudElPUyhXZWJWaWV3KiB3ZWJWaWV3KQogICAgICAgICA6IFdl
YkNocm9tZUNsaWVudCh3ZWJWaWV3KQotICAgICAgICAsIG1fZm9ybU5vdGlmaWNhdGlvblN1cHBy
ZXNzaW9ucygwKSB7IH0KLSAgICAKLSAgICB2b2lkIHNldFdpbmRvd1JlY3QoY29uc3QgV2ViQ29y
ZTo6RmxvYXRSZWN0Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6RmxvYXRSZWN0IHdpbmRvd1Jl
Y3QoKSBvdmVycmlkZTsKLSAgICB2b2lkIHNldFN0YXR1c2JhclRleHQoY29uc3QgV1RGOjpTdHJp
bmcmKSBvdmVycmlkZSB7IH0KKyAgICB7CisgICAgfQorCitwcml2YXRlOgorICAgIHZvaWQgc2V0
V2luZG93UmVjdChjb25zdCBXZWJDb3JlOjpGbG9hdFJlY3QmKSBmaW5hbDsKKyAgICBXZWJDb3Jl
OjpGbG9hdFJlY3Qgd2luZG93UmVjdCgpIGZpbmFsOworICAgIHZvaWQgc2V0U3RhdHVzYmFyVGV4
dChjb25zdCBXVEY6OlN0cmluZyYpIGZpbmFsIHsgfQogCi0gICAgdm9pZCBmb2N1cygpIG92ZXJy
aWRlOwotICAgIHZvaWQgdGFrZUZvY3VzKFdlYkNvcmU6OkZvY3VzRGlyZWN0aW9uKSBvdmVycmlk
ZSB7IH0KKyAgICB2b2lkIGZvY3VzKCkgZmluYWw7CisgICAgdm9pZCB0YWtlRm9jdXMoV2ViQ29y
ZTo6Rm9jdXNEaXJlY3Rpb24pIGZpbmFsIHsgfQogCi0gICAgdm9pZCBydW5KYXZhU2NyaXB0QWxl
cnQoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXVEY6OlN0cmluZyYpIG92ZXJyaWRlOwotICAgIGJv
b2wgcnVuSmF2YVNjcmlwdENvbmZpcm0oV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXVEY6OlN0cmlu
ZyYpIG92ZXJyaWRlOwotICAgIGJvb2wgcnVuSmF2YVNjcmlwdFByb21wdChXZWJDb3JlOjpGcmFt
ZSosIGNvbnN0IFdURjo6U3RyaW5nJiBtZXNzYWdlLCBjb25zdCBXVEY6OlN0cmluZyYgZGVmYXVs
dFZhbHVlLCBXVEY6OlN0cmluZyYgcmVzdWx0KSBvdmVycmlkZTsKKyAgICB2b2lkIHJ1bkphdmFT
Y3JpcHRBbGVydChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdURjo6U3RyaW5nJikgZmluYWw7Cisg
ICAgYm9vbCBydW5KYXZhU2NyaXB0Q29uZmlybShXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdURjo6
U3RyaW5nJikgZmluYWw7CisgICAgYm9vbCBydW5KYXZhU2NyaXB0UHJvbXB0KFdlYkNvcmU6OkZy
YW1lKiwgY29uc3QgV1RGOjpTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFdURjo6U3RyaW5nJiBkZWZh
dWx0VmFsdWUsIFdURjo6U3RyaW5nJiByZXN1bHQpIGZpbmFsOwogCi0gICAgdm9pZCBydW5PcGVu
UGFuZWwoV2ViQ29yZTo6RnJhbWUqLCBQYXNzUmVmUHRyPFdlYkNvcmU6OkZpbGVDaG9vc2VyPikg
b3ZlcnJpZGU7CisgICAgdm9pZCBydW5PcGVuUGFuZWwoV2ViQ29yZTo6RnJhbWUmLCBXZWJDb3Jl
OjpGaWxlQ2hvb3NlciYpIGZpbmFsOwogCiAjaWYgRU5BQkxFKFRPVUNIX0VWRU5UUykKLSAgICB2
b2lkIGRpZFByZXZlbnREZWZhdWx0Rm9yRXZlbnQoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZFBy
ZXZlbnREZWZhdWx0Rm9yRXZlbnQoKSBmaW5hbDsKICNlbmRpZgotICAgIHZvaWQgZGlkUmVjZWl2
ZU1vYmlsZURvY1R5cGUoYm9vbCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXROZWVkc1Njcm9sbE5v
dGlmaWNhdGlvbnMoV2ViQ29yZTo6RnJhbWUqLCBib29sKSBvdmVycmlkZTsKLSAgICB2b2lkIG9i
c2VydmVkQ29udGVudENoYW5nZShXZWJDb3JlOjpGcmFtZSopIG92ZXJyaWRlOwotICAgIHZvaWQg
Y2xlYXJDb250ZW50Q2hhbmdlT2JzZXJ2ZXJzKFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7Ci0g
ICAgV2ViQ29yZTo6RmxvYXRTaXplIHNjcmVlblNpemUoKSBjb25zdCBvdmVycmlkZTsKLSAgICBX
ZWJDb3JlOjpGbG9hdFNpemUgYXZhaWxhYmxlU2NyZWVuU2l6ZSgpIGNvbnN0IG92ZXJyaWRlOwot
ICAgIHZvaWQgZGlzcGF0Y2hWaWV3cG9ydFByb3BlcnRpZXNEaWRDaGFuZ2UoY29uc3QgV2ViQ29y
ZTo6Vmlld3BvcnRBcmd1bWVudHMmKSBjb25zdCBvdmVycmlkZTsKLSAgICB2b2lkIG5vdGlmeVJl
dmVhbGVkU2VsZWN0aW9uQnlTY3JvbGxpbmdGcmFtZShXZWJDb3JlOjpGcmFtZSopIG92ZXJyaWRl
OwotICAgIGJvb2wgaXNTdG9wcGluZygpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkTGF5b3V0KExh
eW91dFR5cGUpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkU3RhcnRPdmVyZmxvd1Njcm9sbCgpIG92
ZXJyaWRlOwotICAgIHZvaWQgZGlkRW5kT3ZlcmZsb3dTY3JvbGwoKSBvdmVycmlkZTsKLQotICAg
IHZvaWQgc3VwcHJlc3NGb3JtTm90aWZpY2F0aW9ucygpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVz
dG9yZUZvcm1Ob3RpZmljYXRpb25zKCkgb3ZlcnJpZGU7CisKKyAgICB2b2lkIGRpZFJlY2VpdmVN
b2JpbGVEb2NUeXBlKGJvb2wpIGZpbmFsOworICAgIHZvaWQgc2V0TmVlZHNTY3JvbGxOb3RpZmlj
YXRpb25zKFdlYkNvcmU6OkZyYW1lKiwgYm9vbCkgZmluYWw7CisgICAgdm9pZCBvYnNlcnZlZENv
bnRlbnRDaGFuZ2UoV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKKyAgICB2b2lkIGNsZWFyQ29udGVu
dENoYW5nZU9ic2VydmVycyhXZWJDb3JlOjpGcmFtZSopIGZpbmFsOworICAgIFdlYkNvcmU6OkZs
b2F0U2l6ZSBzY3JlZW5TaXplKCkgY29uc3QgZmluYWw7CisgICAgV2ViQ29yZTo6RmxvYXRTaXpl
IGF2YWlsYWJsZVNjcmVlblNpemUoKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoVmll
d3BvcnRQcm9wZXJ0aWVzRGlkQ2hhbmdlKGNvbnN0IFdlYkNvcmU6OlZpZXdwb3J0QXJndW1lbnRz
JikgY29uc3QgZmluYWw7CisgICAgdm9pZCBub3RpZnlSZXZlYWxlZFNlbGVjdGlvbkJ5U2Nyb2xs
aW5nRnJhbWUoV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKKyAgICBib29sIGlzU3RvcHBpbmcoKSBm
aW5hbDsKKyAgICB2b2lkIGRpZExheW91dChMYXlvdXRUeXBlKSBmaW5hbDsKKyAgICB2b2lkIGRp
ZFN0YXJ0T3ZlcmZsb3dTY3JvbGwoKSBmaW5hbDsKKyAgICB2b2lkIGRpZEVuZE92ZXJmbG93U2Ny
b2xsKCkgZmluYWw7CisKKyAgICB2b2lkIHN1cHByZXNzRm9ybU5vdGlmaWNhdGlvbnMoKSBmaW5h
bDsKKyAgICB2b2lkIHJlc3RvcmVGb3JtTm90aWZpY2F0aW9ucygpIGZpbmFsOwogICAgIAotICAg
IHZvaWQgZWxlbWVudERpZEZvY3VzKGNvbnN0IFdlYkNvcmU6Ok5vZGUqKSBvdmVycmlkZTsKLSAg
ICB2b2lkIGVsZW1lbnREaWRCbHVyKGNvbnN0IFdlYkNvcmU6Ok5vZGUqKSBvdmVycmlkZTsKKyAg
ICB2b2lkIGVsZW1lbnREaWRGb2N1cyhjb25zdCBXZWJDb3JlOjpOb2RlKikgZmluYWw7CisgICAg
dm9pZCBlbGVtZW50RGlkQmx1cihjb25zdCBXZWJDb3JlOjpOb2RlKikgZmluYWw7CiAKLSAgICB2
b2lkIGF0dGFjaFJvb3RHcmFwaGljc0xheWVyKFdlYkNvcmU6OkZyYW1lKiwgV2ViQ29yZTo6R3Jh
cGhpY3NMYXllciopIG92ZXJyaWRlOworICAgIHZvaWQgYXR0YWNoUm9vdEdyYXBoaWNzTGF5ZXIo
V2ViQ29yZTo6RnJhbWUqLCBXZWJDb3JlOjpHcmFwaGljc0xheWVyKikgZmluYWw7CiAKLSAgICB2
b2lkIGRpZEZsdXNoQ29tcG9zaXRpbmdMYXllcnMoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZEZs
dXNoQ29tcG9zaXRpbmdMYXllcnMoKSBmaW5hbDsKIAotICAgIHZvaWQgdXBkYXRlVmlld3BvcnRD
b25zdHJhaW5lZExheWVycyhIYXNoTWFwPFBsYXRmb3JtTGF5ZXIqLCBzdGQ6OnVuaXF1ZV9wdHI8
V2ViQ29yZTo6Vmlld3BvcnRDb25zdHJhaW50cz4+JiwgSGFzaE1hcDxQbGF0Zm9ybUxheWVyKiwg
UGxhdGZvcm1MYXllcio+Jikgb3ZlcnJpZGU7CisgICAgdm9pZCB1cGRhdGVWaWV3cG9ydENvbnN0
cmFpbmVkTGF5ZXJzKEhhc2hNYXA8UGxhdGZvcm1MYXllciosIHN0ZDo6dW5pcXVlX3B0cjxXZWJD
b3JlOjpWaWV3cG9ydENvbnN0cmFpbnRzPj4mLCBIYXNoTWFwPFBsYXRmb3JtTGF5ZXIqLCBQbGF0
Zm9ybUxheWVyKj4mKSBmaW5hbDsKIAotICAgIGJvb2wgZmV0Y2hDdXN0b21GaXhlZFBvc2l0aW9u
TGF5b3V0UmVjdChXZWJDb3JlOjpJbnRSZWN0Jikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBhZGRPclVw
ZGF0ZVNjcm9sbGluZ0xheWVyKFdlYkNvcmU6Ok5vZGUqLCBQbGF0Zm9ybUxheWVyKiwgUGxhdGZv
cm1MYXllciosIGNvbnN0IFdlYkNvcmU6OkludFNpemUmLCBib29sIGFsbG93SG9yaXpvbnRhbFNj
cm9sbGJhciwgYm9vbCBhbGxvd1ZlcnRpY2FsU2Nyb2xsYmFyKSBvdmVycmlkZTsKLSAgICB2b2lk
IHJlbW92ZVNjcm9sbGluZ0xheWVyKFdlYkNvcmU6Ok5vZGUqLCBQbGF0Zm9ybUxheWVyKiwgUGxh
dGZvcm1MYXllciopIG92ZXJyaWRlOworICAgIGJvb2wgZmV0Y2hDdXN0b21GaXhlZFBvc2l0aW9u
TGF5b3V0UmVjdChXZWJDb3JlOjpJbnRSZWN0JikgZmluYWw7CisgICAgdm9pZCBhZGRPclVwZGF0
ZVNjcm9sbGluZ0xheWVyKFdlYkNvcmU6Ok5vZGUqLCBQbGF0Zm9ybUxheWVyKiwgUGxhdGZvcm1M
YXllciosIGNvbnN0IFdlYkNvcmU6OkludFNpemUmLCBib29sIGFsbG93SG9yaXpvbnRhbFNjcm9s
bGJhciwgYm9vbCBhbGxvd1ZlcnRpY2FsU2Nyb2xsYmFyKSBmaW5hbDsKKyAgICB2b2lkIHJlbW92
ZVNjcm9sbGluZ0xheWVyKFdlYkNvcmU6Ok5vZGUqLCBQbGF0Zm9ybUxheWVyKiwgUGxhdGZvcm1M
YXllciopIGZpbmFsOwogCi0gICAgYm9vbCBzZWxlY3RJdGVtV3JpdGluZ0RpcmVjdGlvbklzTmF0
dXJhbCgpIG92ZXJyaWRlOwotICAgIGJvb2wgc2VsZWN0SXRlbUFsaWdubWVudEZvbGxvd3NNZW51
V3JpdGluZ0RpcmVjdGlvbigpIG92ZXJyaWRlOwotICAgIFJlZlB0cjxXZWJDb3JlOjpQb3B1cE1l
bnU+IGNyZWF0ZVBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1lbnVDbGllbnQqKSBjb25zdCBvdmVy
cmlkZTsKLSAgICBSZWZQdHI8V2ViQ29yZTo6U2VhcmNoUG9wdXBNZW51PiBjcmVhdGVTZWFyY2hQ
b3B1cE1lbnUoV2ViQ29yZTo6UG9wdXBNZW51Q2xpZW50KikgY29uc3Qgb3ZlcnJpZGU7CisgICAg
Ym9vbCBzZWxlY3RJdGVtV3JpdGluZ0RpcmVjdGlvbklzTmF0dXJhbCgpIGZpbmFsOworICAgIGJv
b2wgc2VsZWN0SXRlbUFsaWdubWVudEZvbGxvd3NNZW51V3JpdGluZ0RpcmVjdGlvbigpIGZpbmFs
OworICAgIFJlZlB0cjxXZWJDb3JlOjpQb3B1cE1lbnU+IGNyZWF0ZVBvcHVwTWVudShXZWJDb3Jl
OjpQb3B1cE1lbnVDbGllbnQqKSBjb25zdCBmaW5hbDsKKyAgICBSZWZQdHI8V2ViQ29yZTo6U2Vh
cmNoUG9wdXBNZW51PiBjcmVhdGVTZWFyY2hQb3B1cE1lbnUoV2ViQ29yZTo6UG9wdXBNZW51Q2xp
ZW50KikgY29uc3QgZmluYWw7CiAKLSAgICB2b2lkIHdlYkFwcE9yaWVudGF0aW9uc1VwZGF0ZWQo
KSBvdmVycmlkZTsKLSAgICB2b2lkIGZvY3VzZWRFbGVtZW50Q2hhbmdlZChXZWJDb3JlOjpFbGVt
ZW50Kikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzaG93UGxheWJhY2tUYXJnZXRQaWNrZXIoYm9vbCBo
YXNWaWRlbykgb3ZlcnJpZGU7CisgICAgdm9pZCB3ZWJBcHBPcmllbnRhdGlvbnNVcGRhdGVkKCkg
ZmluYWw7CisgICAgdm9pZCBmb2N1c2VkRWxlbWVudENoYW5nZWQoV2ViQ29yZTo6RWxlbWVudCop
IGZpbmFsOworICAgIHZvaWQgc2hvd1BsYXliYWNrVGFyZ2V0UGlja2VyKGJvb2wgaGFzVmlkZW8p
IGZpbmFsOwogCiAjaWYgRU5BQkxFKE9SSUVOVEFUSU9OX0VWRU5UUykKLSAgICBpbnQgZGV2aWNl
T3JpZW50YXRpb24oKSBjb25zdCBvdmVycmlkZTsKKyAgICBpbnQgZGV2aWNlT3JpZW50YXRpb24o
KSBjb25zdCBmaW5hbDsKICNlbmRpZgogCi1wcml2YXRlOgotICAgIGludCBtX2Zvcm1Ob3RpZmlj
YXRpb25TdXBwcmVzc2lvbnM7CisgICAgaW50IG1fZm9ybU5vdGlmaWNhdGlvblN1cHByZXNzaW9u
cyB7IDAgfTsKIH07CisKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9pb3MvV2Vi
Q29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50SU9TLm1tIGIvU291cmNlL1dlYktpdC9pb3MvV2Vi
Q29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50SU9TLm1tCmluZGV4IDExZjg0ZWI5ZjkzZDdkZjFj
ODJlYjg0MjUyNDRhNmFjMWQ4MmMwZWMuLjUzZThmMGViYmU1Mjg0MzJhMGY5ZTRiZTRjZmNkNDIz
ZmQ3M2UwMzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvaW9zL1dlYkNvcmVTdXBwb3J0L1dl
YkNocm9tZUNsaWVudElPUy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L2lvcy9XZWJDb3JlU3VwcG9y
dC9XZWJDaHJvbWVDbGllbnRJT1MubW0KQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0
IChDKSAyMDA4LCAyMDA5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHly
aWdodCAoQykgMjAwOC0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMjMsOSArMjMsMTAgQEAKICAqIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWYgUExBVEZPUk0oSU9TKQogI2ltcG9y
dCAiV2ViQ2hyb21lQ2xpZW50SU9TLmgiCiAKKyNpZiBQTEFURk9STShJT1MpCisKICNpbXBvcnQg
IkRPTU5vZGVJbnRlcm5hbC5oIgogI2ltcG9ydCAiUG9wdXBNZW51SU9TLmgiCiAjaW1wb3J0ICJT
ZWFyY2hQb3B1cE1lbnVJT1MuaCIKQEAgLTQzLDkgKzQ0LDYgQEAKICNpbXBvcnQgIldlYlZpZXcu
aCIKICNpbXBvcnQgIldlYlZpZXdJbnRlcm5hbC5oIgogI2ltcG9ydCAiV2ViVmlld1ByaXZhdGUu
aCIKLQotI2ltcG9ydCA8d3RmL0hhc2hNYXAuaD4KLSNpbXBvcnQgPHd0Zi9SZWZQdHIuaD4KICNp
bXBvcnQgPFdlYkNvcmUvRmlsZUNob29zZXIuaD4KICNpbXBvcnQgPFdlYkNvcmUvRmxvYXRSZWN0
Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL0ZyYW1lLmg+CkBAIC02MSw2ICs1OSw4IEBACiAjaW1wb3J0
IDxXZWJDb3JlL1Njcm9sbGluZ0NvbnN0cmFpbnRzLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dBS1dp
bmRvdy5oPgogI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlVGhyZWFkTWVzc2FnZS5oPgorI2ltcG9y
dCA8d3RmL0hhc2hNYXAuaD4KKyNpbXBvcnQgPHd0Zi9SZWZQdHIuaD4KIAogTlNTdHJpbmcgKiBj
b25zdCBXZWJPcGVuUGFuZWxDb25maWd1cmF0aW9uQWxsb3dNdWx0aXBsZUZpbGVzS2V5ID0gQCJX
ZWJPcGVuUGFuZWxDb25maWd1cmF0aW9uQWxsb3dNdWx0aXBsZUZpbGVzS2V5IjsKIE5TU3RyaW5n
ICogY29uc3QgV2ViT3BlblBhbmVsQ29uZmlndXJhdGlvbk1lZGlhQ2FwdHVyZVR5cGVLZXkgPSBA
IldlYk9wZW5QYW5lbENvbmZpZ3VyYXRpb25NZWRpYUNhcHR1cmVUeXBlS2V5IjsKQEAgLTY5LDkg
KzY5LDEwIEBAIE5TU3RyaW5nICogY29uc3QgV2ViT3BlblBhbmVsQ29uZmlndXJhdGlvbk1pbWVU
eXBlc0tleSA9IEAiV2ViT3BlblBhbmVsQ29uZmlndXJhCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29y
ZTsKIAogI2lmIEVOQUJMRShNRURJQV9DQVBUVVJFKQotc3RhdGljIFdlYk1lZGlhQ2FwdHVyZVR5
cGUgd2ViTWVkaWFDYXB0dXJlVHlwZShNZWRpYUNhcHR1cmVUeXBlIG1lZGlhQ2FwdHVyZVR5cGUp
CisKK3N0YXRpYyBXZWJNZWRpYUNhcHR1cmVUeXBlIHdlYk1lZGlhQ2FwdHVyZVR5cGUoTWVkaWFD
YXB0dXJlVHlwZSB0eXBlKQogewotICAgIHN3aXRjaCAobWVkaWFDYXB0dXJlVHlwZSkgeworICAg
IHN3aXRjaCAodHlwZSkgewogICAgIGNhc2UgTWVkaWFDYXB0dXJlVHlwZU5vbmU6CiAgICAgICAg
IHJldHVybiBXZWJNZWRpYUNhcHR1cmVUeXBlTm9uZTsKICAgICBjYXNlIE1lZGlhQ2FwdHVyZVR5
cGVVc2VyOgpAQCAtODMsNiArODQsNyBAQCBzdGF0aWMgV2ViTWVkaWFDYXB0dXJlVHlwZSB3ZWJN
ZWRpYUNhcHR1cmVUeXBlKE1lZGlhQ2FwdHVyZVR5cGUgbWVkaWFDYXB0dXJlVHlwZQogICAgIEFT
U0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIHJldHVybiBXZWJNZWRpYUNhcHR1cmVUeXBlTm9uZTsK
IH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50SU9TOjpzZXRXaW5kb3dSZWN0KGNv
bnN0IFdlYkNvcmU6OkZsb2F0UmVjdCYgcikKQEAgLTEyNCwxOCArMTI2LDE1IEBAIGJvb2wgV2Vi
Q2hyb21lQ2xpZW50SU9TOjpydW5KYXZhU2NyaXB0UHJvbXB0KEZyYW1lKiBmcmFtZSwgY29uc3Qg
V1RGOjpTdHJpbmcmIHByCiAgICAgcmV0dXJuICFyZXN1bHQuaXNOdWxsKCk7CiB9CiAKLXZvaWQg
V2ViQ2hyb21lQ2xpZW50SU9TOjpydW5PcGVuUGFuZWwoRnJhbWUqLCBQYXNzUmVmUHRyPEZpbGVD
aG9vc2VyPiBjaG9vc2VyKQordm9pZCBXZWJDaHJvbWVDbGllbnRJT1M6OnJ1bk9wZW5QYW5lbChG
cmFtZSYsIEZpbGVDaG9vc2VyJiBjaG9vc2VyKQogewotICAgIGNvbnN0IEZpbGVDaG9vc2VyU2V0
dGluZ3MmIHNldHRpbmdzID0gY2hvb3Nlci0+c2V0dGluZ3MoKTsKKyAgICBhdXRvJiBzZXR0aW5n
cyA9IGNob29zZXIuc2V0dGluZ3MoKTsKICAgICBCT09MIGFsbG93TXVsdGlwbGVGaWxlcyA9IHNl
dHRpbmdzLmFsbG93c011bHRpcGxlRmlsZXM7Ci0gICAgVmVjdG9yPFN0cmluZz4gYWNjZXB0TUlN
RVR5cGVzID0gc2V0dGluZ3MuYWNjZXB0TUlNRVR5cGVzOwogICAgIFdlYk9wZW5QYW5lbFJlc3Vs
dExpc3RlbmVyICpsaXN0ZW5lciA9IFtbV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIgYWxsb2Nd
IGluaXRXaXRoQ2hvb3NlcjpjaG9vc2VyXTsKIAotICAgIC8vIENvbnZlcnQgdGhlIGFjY2VwdCBh
dHRyaWJ1dGUgc3RyaW5nIGludG8gYSBsaXN0IG9mIE1JTUUgdHlwZXMuCi0gICAgc2l6ZV90IG51
bU1JTUVUeXBlcyA9IGFjY2VwdE1JTUVUeXBlcy5zaXplKCk7Ci0gICAgTlNNdXRhYmxlQXJyYXkg
Km1pbWVUeXBlcyA9IFtOU011dGFibGVBcnJheSBhcnJheVdpdGhDYXBhY2l0eTpudW1NSU1FVHlw
ZXNdOwotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbnVtTUlNRVR5cGVzOyArK2kpCi0gICAg
ICAgIFttaW1lVHlwZXMgYWRkT2JqZWN0OmFjY2VwdE1JTUVUeXBlc1tpXV07CisgICAgTlNNdXRh
YmxlQXJyYXkgKm1pbWVUeXBlcyA9IFtOU011dGFibGVBcnJheSBhcnJheVdpdGhDYXBhY2l0eTpz
ZXR0aW5ncy5hY2NlcHRNSU1FVHlwZXMuc2l6ZSgpXTsKKyAgICBmb3IgKGF1dG8mIHR5cGUgOiBz
ZXR0aW5ncy5hY2NlcHRNSU1FVHlwZXMpCisgICAgICAgIFttaW1lVHlwZXMgYWRkT2JqZWN0OnR5
cGVdOwogCiAgICAgV2ViTWVkaWFDYXB0dXJlVHlwZSBjYXB0dXJlVHlwZSA9IFdlYk1lZGlhQ2Fw
dHVyZVR5cGVOb25lOwogI2lmIEVOQUJMRShNRURJQV9DQVBUVVJFKQpAQCAtMTU4LDEwICsxNTcs
MTIgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnRJT1M6OnJ1bk9wZW5QYW5lbChGcmFtZSosIFBhc3NS
ZWZQdHI8RmlsZUNob29zZXI+IGNob29zZXIpCiB9CiAKICNpZiBFTkFCTEUoSU9TX1RPVUNIX0VW
RU5UUykKKwogdm9pZCBXZWJDaHJvbWVDbGllbnRJT1M6OmRpZFByZXZlbnREZWZhdWx0Rm9yRXZl
bnQoKQogewogICAgIFtbd2ViVmlldygpIF9VSUtpdERlbGVnYXRlRm9yd2FyZGVyXSB3ZWJWaWV3
RGlkUHJldmVudERlZmF1bHRGb3JFdmVudDp3ZWJWaWV3KCldOwogfQorCiAjZW5kaWYKIAogdm9p
ZCBXZWJDaHJvbWVDbGllbnRJT1M6OmRpZFJlY2VpdmVNb2JpbGVEb2NUeXBlKGJvb2wgaXNNb2Jp
bGVEb2N0eXBlKQpAQCAtMzU1LDEwICszNTYsMTIgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnRJT1M6
OnNob3dQbGF5YmFja1RhcmdldFBpY2tlcihib29sIGhhc1ZpZGVvKQogfQogCiAjaWYgRU5BQkxF
KE9SSUVOVEFUSU9OX0VWRU5UUykKKwogaW50IFdlYkNocm9tZUNsaWVudElPUzo6ZGV2aWNlT3Jp
ZW50YXRpb24oKSBjb25zdAogewogICAgIHJldHVybiBbW3dlYlZpZXcoKSBfVUlLaXREZWxlZ2F0
ZUZvcndhcmRlcl0gZGV2aWNlT3JpZW50YXRpb25dOwogfQorCiAjZW5kaWYKIAogI2VuZGlmIC8v
IFBMQVRGT1JNKElPUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBw
b3J0L1dlYkNocm9tZUNsaWVudC5oIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQv
V2ViQ2hyb21lQ2xpZW50LmgKaW5kZXggNDhhYmUzMDhhOGZlZjc1YWY4Njg2ZTFlNTNhODNjODcy
MWY4MjdmOS4uZjRmMDk2YzVkNjQ3M2ViYzZlN2FiZDU4M2I2ZGZlZjRhYWE0ZDE1OSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmgK
KysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmgK
QEAgLTMzLDEzMCArMzMsMTM4IEBACiAKIEBjbGFzcyBXZWJWaWV3OwogCisvLyBGSVhNRTogVGhp
cyBjbGFzcyBpcyB1c2VkIGFzIGEgY29uY3JldGUgY2xhc3Mgb24gTWFjLCBidXQgb24gaU9TIHRo
aXMgaXMgYW4gYWJzdHJhY3QKKy8vIGJhc2UgY2xhc3Mgb2YgdGhlIGNvbmNyZXRlIGNsYXNzLCBX
ZWJDaHJvbWVDbGllbnRJT1MuIEJlY2F1c2Ugb2YgdGhhdCwgdGhpcyBjbGFzcyBhbmQKKy8vIG1h
bnkgb2YgaXRzIGZ1bmN0aW9ucyBhcmUgbm90IG1hcmtlZCBmaW5hbC4gVGhhdCBpcyBtZXNzeSB3
YXkgdG8gb3JnYW5pemUgdGhpbmdzLgogY2xhc3MgV2ViQ2hyb21lQ2xpZW50IDogcHVibGljIFdl
YkNvcmU6OkNocm9tZUNsaWVudCB7CiBwdWJsaWM6CiAgICAgV2ViQ2hyb21lQ2xpZW50KFdlYlZp
ZXcqKTsKLSAgICAKLSAgICB2b2lkIGNocm9tZURlc3Ryb3llZCgpIG92ZXJyaWRlOwotICAgIAor
CisgICAgV2ViVmlldyogd2ViVmlldygpIGNvbnN0IHsgcmV0dXJuIG1fd2ViVmlldzsgfQorCitw
cml2YXRlOgorICAgIHZvaWQgY2hyb21lRGVzdHJveWVkKCkgZmluYWw7CisKICAgICB2b2lkIHNl
dFdpbmRvd1JlY3QoY29uc3QgV2ViQ29yZTo6RmxvYXRSZWN0Jikgb3ZlcnJpZGU7CiAgICAgV2Vi
Q29yZTo6RmxvYXRSZWN0IHdpbmRvd1JlY3QoKSBvdmVycmlkZTsKIAotICAgIFdlYkNvcmU6OkZs
b2F0UmVjdCBwYWdlUmVjdCgpIG92ZXJyaWRlOworICAgIFdlYkNvcmU6OkZsb2F0UmVjdCBwYWdl
UmVjdCgpIGZpbmFsOwogCiAgICAgdm9pZCBmb2N1cygpIG92ZXJyaWRlOwotICAgIHZvaWQgdW5m
b2N1cygpIG92ZXJyaWRlOwotICAgIAotICAgIGJvb2wgY2FuVGFrZUZvY3VzKFdlYkNvcmU6OkZv
Y3VzRGlyZWN0aW9uKSBvdmVycmlkZTsKKyAgICB2b2lkIHVuZm9jdXMoKSBmaW5hbDsKKworICAg
IGJvb2wgY2FuVGFrZUZvY3VzKFdlYkNvcmU6OkZvY3VzRGlyZWN0aW9uKSBmaW5hbDsKICAgICB2
b2lkIHRha2VGb2N1cyhXZWJDb3JlOjpGb2N1c0RpcmVjdGlvbikgb3ZlcnJpZGU7CiAKICAgICB2
b2lkIGZvY3VzZWRFbGVtZW50Q2hhbmdlZChXZWJDb3JlOjpFbGVtZW50Kikgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBmb2N1c2VkRnJhbWVDaGFuZ2VkKFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7Ci0K
LSAgICBXZWJDb3JlOjpQYWdlKiBjcmVhdGVXaW5kb3coV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBX
ZWJDb3JlOjpGcmFtZUxvYWRSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6V2luZG93RmVhdHVyZXMm
LCBjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBz
aG93KCkgb3ZlcnJpZGU7Ci0KLSAgICBib29sIGNhblJ1bk1vZGFsKCkgb3ZlcnJpZGU7Ci0gICAg
dm9pZCBydW5Nb2RhbCgpIG92ZXJyaWRlOwotCi0gICAgdm9pZCBzZXRUb29sYmFyc1Zpc2libGUo
Ym9vbCkgb3ZlcnJpZGU7Ci0gICAgYm9vbCB0b29sYmFyc1Zpc2libGUoKSBvdmVycmlkZTsKLSAg
ICAKLSAgICB2b2lkIHNldFN0YXR1c2JhclZpc2libGUoYm9vbCkgb3ZlcnJpZGU7Ci0gICAgYm9v
bCBzdGF0dXNiYXJWaXNpYmxlKCkgb3ZlcnJpZGU7Ci0gICAgCi0gICAgdm9pZCBzZXRTY3JvbGxi
YXJzVmlzaWJsZShib29sKSBvdmVycmlkZTsKLSAgICBib29sIHNjcm9sbGJhcnNWaXNpYmxlKCkg
b3ZlcnJpZGU7Ci0gICAgCi0gICAgdm9pZCBzZXRNZW51YmFyVmlzaWJsZShib29sKSBvdmVycmlk
ZTsKLSAgICBib29sIG1lbnViYXJWaXNpYmxlKCkgb3ZlcnJpZGU7Ci0gICAgCi0gICAgdm9pZCBz
ZXRSZXNpemFibGUoYm9vbCkgb3ZlcnJpZGU7Ci0gICAgCi0gICAgdm9pZCBhZGRNZXNzYWdlVG9D
b25zb2xlKEpTQzo6TWVzc2FnZVNvdXJjZSwgSlNDOjpNZXNzYWdlTGV2ZWwsIGNvbnN0IFdURjo6
U3RyaW5nJiBtZXNzYWdlLCB1bnNpZ25lZCBsaW5lTnVtYmVyLCB1bnNpZ25lZCBjb2x1bW5OdW1i
ZXIsIGNvbnN0IFdURjo6U3RyaW5nJiBzb3VyY2VVUkwpIG92ZXJyaWRlOwotCi0gICAgYm9vbCBj
YW5SdW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoKSBvdmVycmlkZTsKLSAgICBib29sIHJ1bkJl
Zm9yZVVubG9hZENvbmZpcm1QYW5lbChjb25zdCBXVEY6OlN0cmluZyYgbWVzc2FnZSwgV2ViQ29y
ZTo6RnJhbWUqKSBvdmVycmlkZTsKLQotICAgIHZvaWQgY2xvc2VXaW5kb3dTb29uKCkgb3ZlcnJp
ZGU7CisgICAgdm9pZCBmb2N1c2VkRnJhbWVDaGFuZ2VkKFdlYkNvcmU6OkZyYW1lKikgZmluYWw7
CisKKyAgICBXZWJDb3JlOjpQYWdlKiBjcmVhdGVXaW5kb3coV2ViQ29yZTo6RnJhbWUqLCBjb25z
dCBXZWJDb3JlOjpGcmFtZUxvYWRSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6V2luZG93RmVhdHVy
ZXMmLCBjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJikgZmluYWw7CisgICAgdm9pZCBz
aG93KCkgZmluYWw7CisKKyAgICBib29sIGNhblJ1bk1vZGFsKCkgZmluYWw7CisgICAgdm9pZCBy
dW5Nb2RhbCgpIGZpbmFsOworCisgICAgdm9pZCBzZXRUb29sYmFyc1Zpc2libGUoYm9vbCkgZmlu
YWw7CisgICAgYm9vbCB0b29sYmFyc1Zpc2libGUoKSBmaW5hbDsKKworICAgIHZvaWQgc2V0U3Rh
dHVzYmFyVmlzaWJsZShib29sKSBmaW5hbDsKKyAgICBib29sIHN0YXR1c2JhclZpc2libGUoKSBm
aW5hbDsKKworICAgIHZvaWQgc2V0U2Nyb2xsYmFyc1Zpc2libGUoYm9vbCkgZmluYWw7CisgICAg
Ym9vbCBzY3JvbGxiYXJzVmlzaWJsZSgpIGZpbmFsOworCisgICAgdm9pZCBzZXRNZW51YmFyVmlz
aWJsZShib29sKSBmaW5hbDsKKyAgICBib29sIG1lbnViYXJWaXNpYmxlKCkgZmluYWw7CisKKyAg
ICB2b2lkIHNldFJlc2l6YWJsZShib29sKSBmaW5hbDsKKworICAgIHZvaWQgYWRkTWVzc2FnZVRv
Q29uc29sZShKU0M6Ok1lc3NhZ2VTb3VyY2UsIEpTQzo6TWVzc2FnZUxldmVsLCBjb25zdCBXVEY6
OlN0cmluZyYgbWVzc2FnZSwgdW5zaWduZWQgbGluZU51bWJlciwgdW5zaWduZWQgY29sdW1uTnVt
YmVyLCBjb25zdCBXVEY6OlN0cmluZyYgc291cmNlVVJMKSBmaW5hbDsKKworICAgIGJvb2wgY2Fu
UnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsKCkgZmluYWw7CisgICAgYm9vbCBydW5CZWZvcmVV
bmxvYWRDb25maXJtUGFuZWwoY29uc3QgV1RGOjpTdHJpbmcmIG1lc3NhZ2UsIFdlYkNvcmU6OkZy
YW1lKikgZmluYWw7CisKKyAgICB2b2lkIGNsb3NlV2luZG93U29vbigpIGZpbmFsOwogCiAgICAg
dm9pZCBydW5KYXZhU2NyaXB0QWxlcnQoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXVEY6OlN0cmlu
ZyYpIG92ZXJyaWRlOwogICAgIGJvb2wgcnVuSmF2YVNjcmlwdENvbmZpcm0oV2ViQ29yZTo6RnJh
bWUqLCBjb25zdCBXVEY6OlN0cmluZyYpIG92ZXJyaWRlOwogICAgIGJvb2wgcnVuSmF2YVNjcmlw
dFByb21wdChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdURjo6U3RyaW5nJiBtZXNzYWdlLCBjb25z
dCBXVEY6OlN0cmluZyYgZGVmYXVsdFZhbHVlLCBXVEY6OlN0cmluZyYgcmVzdWx0KSBvdmVycmlk
ZTsKIAotICAgIGJvb2wgc3VwcG9ydHNJbW1lZGlhdGVJbnZhbGlkYXRpb24oKSBvdmVycmlkZTsK
LSAgICB2b2lkIGludmFsaWRhdGVSb290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jikgb3Zl
cnJpZGU7Ci0gICAgdm9pZCBpbnZhbGlkYXRlQ29udGVudHNBbmRSb290Vmlldyhjb25zdCBXZWJD
b3JlOjpJbnRSZWN0Jikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBpbnZhbGlkYXRlQ29udGVudHNGb3JT
bG93U2Nyb2xsKGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBvdmVycmlkZTsKLSAgICB2b2lkIHNj
cm9sbChjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBzY3JvbGxEZWx0YSwgY29uc3QgV2ViQ29yZTo6
SW50UmVjdCYgcmVjdFRvU2Nyb2xsLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiBjbGlwUmVjdCkg
b3ZlcnJpZGU7CisgICAgYm9vbCBzdXBwb3J0c0ltbWVkaWF0ZUludmFsaWRhdGlvbigpIGZpbmFs
OworICAgIHZvaWQgaW52YWxpZGF0ZVJvb3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBm
aW5hbDsKKyAgICB2b2lkIGludmFsaWRhdGVDb250ZW50c0FuZFJvb3RWaWV3KGNvbnN0IFdlYkNv
cmU6OkludFJlY3QmKSBmaW5hbDsKKyAgICB2b2lkIGludmFsaWRhdGVDb250ZW50c0ZvclNsb3dT
Y3JvbGwoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGZpbmFsOworICAgIHZvaWQgc2Nyb2xsKGNv
bnN0IFdlYkNvcmU6OkludFNpemUmIHNjcm9sbERlbHRhLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0
JiByZWN0VG9TY3JvbGwsIGNvbnN0IFdlYkNvcmU6OkludFJlY3QmIGNsaXBSZWN0KSBmaW5hbDsK
KworICAgIFdlYkNvcmU6OkludFBvaW50IHNjcmVlblRvUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6
SW50UG9pbnQmKSBjb25zdCBmaW5hbDsKKyAgICBXZWJDb3JlOjpJbnRSZWN0IHJvb3RWaWV3VG9T
Y3JlZW4oY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGNvbnN0IGZpbmFsOwogCi0gICAgV2ViQ29y
ZTo6SW50UG9pbnQgc2NyZWVuVG9Sb290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIGNv
bnN0IG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OkludFJlY3Qgcm9vdFZpZXdUb1NjcmVlbihjb25z
dCBXZWJDb3JlOjpJbnRSZWN0JikgY29uc3Qgb3ZlcnJpZGU7CiAjaWYgUExBVEZPUk0oSU9TKQot
ICAgIFdlYkNvcmU6OkludFBvaW50IGFjY2Vzc2liaWxpdHlTY3JlZW5Ub1Jvb3RWaWV3KGNvbnN0
IFdlYkNvcmU6OkludFBvaW50JikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6SW50UmVj
dCByb290Vmlld1RvQWNjZXNzaWJpbGl0eVNjcmVlbihjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jikg
Y29uc3Qgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6SW50UG9pbnQgYWNjZXNzaWJpbGl0eVNjcmVl
blRvUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKSBjb25zdCBmaW5hbDsKKyAgICBX
ZWJDb3JlOjpJbnRSZWN0IHJvb3RWaWV3VG9BY2Nlc3NpYmlsaXR5U2NyZWVuKGNvbnN0IFdlYkNv
cmU6OkludFJlY3QmKSBjb25zdCBmaW5hbDsKICNlbmRpZgotICAgIFBsYXRmb3JtUGFnZUNsaWVu
dCBwbGF0Zm9ybVBhZ2VDbGllbnQoKSBjb25zdCBvdmVycmlkZTsKLSAgICB2b2lkIGNvbnRlbnRz
U2l6ZUNoYW5nZWQoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXZWJDb3JlOjpJbnRTaXplJikgY29u
c3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzY3JvbGxSZWN0SW50b1ZpZXcoY29uc3QgV2ViQ29yZTo6
SW50UmVjdCYpIGNvbnN0IG92ZXJyaWRlOwotICAgIAorCisgICAgUGxhdGZvcm1QYWdlQ2xpZW50
IHBsYXRmb3JtUGFnZUNsaWVudCgpIGNvbnN0IGZpbmFsOworICAgIHZvaWQgY29udGVudHNTaXpl
Q2hhbmdlZChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6OkludFNpemUmKSBjb25zdCBm
aW5hbDsKKyAgICB2b2lkIHNjcm9sbFJlY3RJbnRvVmlldyhjb25zdCBXZWJDb3JlOjpJbnRSZWN0
JikgY29uc3QgZmluYWw7CisKICAgICB2b2lkIHNldFN0YXR1c2JhclRleHQoY29uc3QgV1RGOjpT
dHJpbmcmKSBvdmVycmlkZTsKIAotICAgIHZvaWQgc2Nyb2xsYmFyc01vZGVEaWRDaGFuZ2UoKSBj
b25zdCBvdmVycmlkZSB7IH0KLSAgICBib29sIHNob3VsZFVuYXZhaWxhYmxlUGx1Z2luTWVzc2Fn
ZUJlQnV0dG9uKFdlYkNvcmU6OlJlbmRlckVtYmVkZGVkT2JqZWN0OjpQbHVnaW5VbmF2YWlsYWJp
bGl0eVJlYXNvbikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCB1bmF2YWlsYWJsZVBsdWdpbkJ1
dHRvbkNsaWNrZWQoV2ViQ29yZTo6RWxlbWVudCosIFdlYkNvcmU6OlJlbmRlckVtYmVkZGVkT2Jq
ZWN0OjpQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBtb3VzZURpZE1vdmVPdmVyRWxlbWVudChjb25zdCBXZWJDb3JlOjpIaXRUZXN0UmVzdWx0Jiwg
dW5zaWduZWQgbW9kaWZpZXJGbGFncykgb3ZlcnJpZGU7CisgICAgdm9pZCBzY3JvbGxiYXJzTW9k
ZURpZENoYW5nZSgpIGNvbnN0IGZpbmFsIHsgfQorICAgIGJvb2wgc2hvdWxkVW5hdmFpbGFibGVQ
bHVnaW5NZXNzYWdlQmVCdXR0b24oV2ViQ29yZTo6UmVuZGVyRW1iZWRkZWRPYmplY3Q6OlBsdWdp
blVuYXZhaWxhYmlsaXR5UmVhc29uKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIHVuYXZhaWxhYmxl
UGx1Z2luQnV0dG9uQ2xpY2tlZChXZWJDb3JlOjpFbGVtZW50KiwgV2ViQ29yZTo6UmVuZGVyRW1i
ZWRkZWRPYmplY3Q6OlBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKSBjb25zdCBmaW5hbDsKKyAg
ICB2b2lkIG1vdXNlRGlkTW92ZU92ZXJFbGVtZW50KGNvbnN0IFdlYkNvcmU6OkhpdFRlc3RSZXN1
bHQmLCB1bnNpZ25lZCBtb2RpZmllckZsYWdzKSBmaW5hbDsKIAotICAgIHZvaWQgc2V0VG9vbFRp
cChjb25zdCBXVEY6OlN0cmluZyYsIFdlYkNvcmU6OlRleHREaXJlY3Rpb24pIG92ZXJyaWRlOwor
ICAgIHZvaWQgc2V0VG9vbFRpcChjb25zdCBXVEY6OlN0cmluZyYsIFdlYkNvcmU6OlRleHREaXJl
Y3Rpb24pIGZpbmFsOwogCi0gICAgdm9pZCBwcmludChXZWJDb3JlOjpGcmFtZSopIG92ZXJyaWRl
OwotICAgIHZvaWQgZXhjZWVkZWREYXRhYmFzZVF1b3RhKFdlYkNvcmU6OkZyYW1lKiwgY29uc3Qg
V1RGOjpTdHJpbmcmIGRhdGFiYXNlTmFtZSwgV2ViQ29yZTo6RGF0YWJhc2VEZXRhaWxzKSBvdmVy
cmlkZTsKLSAgICB2b2lkIHJlYWNoZWRNYXhBcHBDYWNoZVNpemUoaW50NjRfdCBzcGFjZU5lZWRl
ZCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCByZWFjaGVkQXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3Rh
KFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luKiwgaW50NjRfdCB0b3RhbFNwYWNlTmVlZGVkKSBvdmVy
cmlkZTsKKyAgICB2b2lkIHByaW50KFdlYkNvcmU6OkZyYW1lKikgZmluYWw7CisgICAgdm9pZCBl
eGNlZWRlZERhdGFiYXNlUXVvdGEoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXVEY6OlN0cmluZyYg
ZGF0YWJhc2VOYW1lLCBXZWJDb3JlOjpEYXRhYmFzZURldGFpbHMpIGZpbmFsOworICAgIHZvaWQg
cmVhY2hlZE1heEFwcENhY2hlU2l6ZShpbnQ2NF90IHNwYWNlTmVlZGVkKSBmaW5hbDsKKyAgICB2
b2lkIHJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoV2ViQ29yZTo6U2VjdXJpdHlP
cmlnaW4qLCBpbnQ2NF90IHRvdGFsU3BhY2VOZWVkZWQpIGZpbmFsOwogCiAjaWYgRU5BQkxFKERB
U0hCT0FSRF9TVVBQT1JUKQotICAgIHZvaWQgYW5ub3RhdGVkUmVnaW9uc0NoYW5nZWQoKSBvdmVy
cmlkZTsKKyAgICB2b2lkIGFubm90YXRlZFJlZ2lvbnNDaGFuZ2VkKCkgZmluYWw7CiAjZW5kaWYK
IAotICAgIHZvaWQgcnVuT3BlblBhbmVsKFdlYkNvcmU6OkZyYW1lKiwgUGFzc1JlZlB0cjxXZWJD
b3JlOjpGaWxlQ2hvb3Nlcj4pIG92ZXJyaWRlOwotICAgIHZvaWQgbG9hZEljb25Gb3JGaWxlcyhj
b25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiwgV2ViQ29yZTo6RmlsZUljb25Mb2FkZXImKSBvdmVy
cmlkZTsKKyAgICB2b2lkIHJ1bk9wZW5QYW5lbChXZWJDb3JlOjpGcmFtZSYsIFdlYkNvcmU6OkZp
bGVDaG9vc2VyJikgb3ZlcnJpZGU7CisgICAgdm9pZCBsb2FkSWNvbkZvckZpbGVzKGNvbnN0IFZl
Y3RvcjxXVEY6OlN0cmluZz4mLCBXZWJDb3JlOjpGaWxlSWNvbkxvYWRlciYpIGZpbmFsOwogCiAj
aWYgIVBMQVRGT1JNKElPUykKLSAgICB2b2lkIHNldEN1cnNvcihjb25zdCBXZWJDb3JlOjpDdXJz
b3ImKSBvdmVycmlkZTsKLSAgICB2b2lkIHNldEN1cnNvckhpZGRlblVudGlsTW91c2VNb3Zlcyhi
b29sKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldEN1cnNvcihjb25zdCBXZWJDb3JlOjpDdXJzb3Im
KSBmaW5hbDsKKyAgICB2b2lkIHNldEN1cnNvckhpZGRlblVudGlsTW91c2VNb3Zlcyhib29sKSBm
aW5hbDsKICNlbmRpZgogCiAjaWYgRU5BQkxFKElOUFVUX1RZUEVfQ09MT1IpCi0gICAgc3RkOjp1
bmlxdWVfcHRyPFdlYkNvcmU6OkNvbG9yQ2hvb3Nlcj4gY3JlYXRlQ29sb3JDaG9vc2VyKFdlYkNv
cmU6OkNvbG9yQ2hvb3NlckNsaWVudCosIGNvbnN0IFdlYkNvcmU6OkNvbG9yJikgb3ZlcnJpZGU7
CisgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6OkNvbG9yQ2hvb3Nlcj4gY3JlYXRlQ29sb3JD
aG9vc2VyKFdlYkNvcmU6OkNvbG9yQ2hvb3NlckNsaWVudCosIGNvbnN0IFdlYkNvcmU6OkNvbG9y
JikgZmluYWw7CiAjZW5kaWYKLSAgICAKKwogI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCi0gICAg
Ym9vbCByZXF1ZXN0UG9pbnRlckxvY2soKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlcXVlc3RQb2lu
dGVyVW5sb2NrKCkgb3ZlcnJpZGU7CisgICAgYm9vbCByZXF1ZXN0UG9pbnRlckxvY2soKSBmaW5h
bDsKKyAgICB2b2lkIHJlcXVlc3RQb2ludGVyVW5sb2NrKCkgZmluYWw7CiAjZW5kaWYKIAotICAg
IFdlYkNvcmU6OktleWJvYXJkVUlNb2RlIGtleWJvYXJkVUlNb2RlKCkgb3ZlcnJpZGU7CisgICAg
V2ViQ29yZTo6S2V5Ym9hcmRVSU1vZGUga2V5Ym9hcmRVSU1vZGUoKSBmaW5hbDsKKworICAgIE5T
UmVzcG9uZGVyICpmaXJzdFJlc3BvbmRlcigpIGZpbmFsOworICAgIHZvaWQgbWFrZUZpcnN0UmVz
cG9uZGVyKE5TUmVzcG9uZGVyICopIGZpbmFsOwogCi0gICAgTlNSZXNwb25kZXIgKmZpcnN0UmVz
cG9uZGVyKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBtYWtlRmlyc3RSZXNwb25kZXIoTlNSZXNwb25k
ZXIgKikgb3ZlcnJpZGU7CisgICAgdm9pZCBlbmFibGVTdWRkZW5UZXJtaW5hdGlvbigpIGZpbmFs
OworICAgIHZvaWQgZGlzYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkgZmluYWw7CiAKLSAgICB2b2lk
IGVuYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNhYmxlU3Vk
ZGVuVGVybWluYXRpb24oKSBvdmVycmlkZTsKLSAgICAKLSAgICBib29sIHNob3VsZFJlcGxhY2VX
aXRoR2VuZXJhdGVkRmlsZUZvclVwbG9hZChjb25zdCBXVEY6OlN0cmluZyYgcGF0aCwgV1RGOjpT
dHJpbmcgJmdlbmVyYXRlZEZpbGVuYW1lKSBvdmVycmlkZTsKLSAgICBXVEY6OlN0cmluZyBnZW5l
cmF0ZVJlcGxhY2VtZW50RmlsZShjb25zdCBXVEY6OlN0cmluZyYgcGF0aCkgb3ZlcnJpZGU7Cisg
ICAgYm9vbCBzaG91bGRSZXBsYWNlV2l0aEdlbmVyYXRlZEZpbGVGb3JVcGxvYWQoY29uc3QgV1RG
OjpTdHJpbmcmIHBhdGgsIFdURjo6U3RyaW5nICZnZW5lcmF0ZWRGaWxlbmFtZSkgZmluYWw7Cisg
ICAgV1RGOjpTdHJpbmcgZ2VuZXJhdGVSZXBsYWNlbWVudEZpbGUoY29uc3QgV1RGOjpTdHJpbmcm
IHBhdGgpIGZpbmFsOwogCiAgICAgdm9pZCBlbGVtZW50RGlkRm9jdXMoY29uc3QgV2ViQ29yZTo6
Tm9kZSopIG92ZXJyaWRlOwogICAgIHZvaWQgZWxlbWVudERpZEJsdXIoY29uc3QgV2ViQ29yZTo6
Tm9kZSopIG92ZXJyaWRlOwogCi0gICAgYm9vbCBzaG91bGRQYWludEVudGlyZUNvbnRlbnRzKCkg
Y29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRQYWludEVudGlyZUNvbnRlbnRzKCkgY29u
c3QgZmluYWw7CiAKICAgICB2b2lkIGF0dGFjaFJvb3RHcmFwaGljc0xheWVyKFdlYkNvcmU6OkZy
YW1lKiwgV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOwotICAgIHZvaWQgYXR0YWNo
Vmlld092ZXJsYXlHcmFwaGljc0xheWVyKFdlYkNvcmU6OkZyYW1lKiwgV2ViQ29yZTo6R3JhcGhp
Y3NMYXllciopIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0TmVlZHNPbmVTaG90RHJhd2luZ1N5bmNo
cm9uaXphdGlvbigpIG92ZXJyaWRlOwotICAgIHZvaWQgc2NoZWR1bGVDb21wb3NpdGluZ0xheWVy
Rmx1c2goKSBvdmVycmlkZTsKKyAgICB2b2lkIGF0dGFjaFZpZXdPdmVybGF5R3JhcGhpY3NMYXll
cihXZWJDb3JlOjpGcmFtZSosIFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXIqKSBmaW5hbDsKKyAgICB2
b2lkIHNldE5lZWRzT25lU2hvdERyYXdpbmdTeW5jaHJvbml6YXRpb24oKSBmaW5hbDsKKyAgICB2
b2lkIHNjaGVkdWxlQ29tcG9zaXRpbmdMYXllckZsdXNoKCkgZmluYWw7CiAKLSAgICBDb21wb3Np
dGluZ1RyaWdnZXJGbGFncyBhbGxvd2VkQ29tcG9zaXRpbmdUcmlnZ2VycygpIGNvbnN0IG92ZXJy
aWRlCisgICAgQ29tcG9zaXRpbmdUcmlnZ2VyRmxhZ3MgYWxsb3dlZENvbXBvc2l0aW5nVHJpZ2dl
cnMoKSBjb25zdCBmaW5hbAogICAgIHsKICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PENvbXBv
c2l0aW5nVHJpZ2dlckZsYWdzPigKICAgICAgICAgICAgIFRocmVlRFRyYW5zZm9ybVRyaWdnZXIg
fApAQCAtMTY5LDUyICsxNzcsNDkgQEAgcHVibGljOgogICAgICAgICAgICAgQW5pbWF0aW9uVHJp
Z2dlcik7CiAgICAgfQogCi0jaWYgRU5BQkxFKFZJREVPKQotI2lmIFBMQVRGT1JNKE1BQykgJiYg
RU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQotICAgIHZvaWQgc2V0VXBQbGF5YmFja0Nv
bnRyb2xzTWFuYWdlcihXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50Jikgb3ZlcnJpZGU7Ci0gICAg
dm9pZCBjbGVhclBsYXliYWNrQ29udHJvbHNNYW5hZ2VyKCkgb3ZlcnJpZGU7CisjaWYgRU5BQkxF
KFZJREVPKSAmJiBQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9E
RSkKKyAgICB2b2lkIHNldFVwUGxheWJhY2tDb250cm9sc01hbmFnZXIoV2ViQ29yZTo6SFRNTE1l
ZGlhRWxlbWVudCYpIGZpbmFsOworICAgIHZvaWQgY2xlYXJQbGF5YmFja0NvbnRyb2xzTWFuYWdl
cigpIGZpbmFsOwogI2VuZGlmCiAKLSAgICBib29sIHN1cHBvcnRzVmlkZW9GdWxsc2NyZWVuKFdl
YkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZSkgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCBlbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3Jl
OjpIVE1MVmlkZW9FbGVtZW50JiwgV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRl
b0Z1bGxzY3JlZW5Nb2RlKSBvdmVycmlkZTsKLSAgICB2b2lkIGV4aXRWaWRlb0Z1bGxzY3JlZW5G
b3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCYpIG92ZXJyaWRlOworI2lm
IEVOQUJMRShWSURFTykKKyAgICBib29sIHN1cHBvcnRzVmlkZW9GdWxsc2NyZWVuKFdlYkNvcmU6
OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZSkgZmluYWw7CisgICAg
dm9pZCBlbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlk
ZW9FbGVtZW50JiwgV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3Jl
ZW5Nb2RlKSBmaW5hbDsKKyAgICB2b2lkIGV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1l
bnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCYpIGZpbmFsOwogI2VuZGlmCi0gICAgCisKICNp
ZiBFTkFCTEUoRlVMTFNDUkVFTl9BUEkpCi0gICAgYm9vbCBzdXBwb3J0c0Z1bGxTY3JlZW5Gb3JF
bGVtZW50KGNvbnN0IFdlYkNvcmU6OkVsZW1lbnQqLCBib29sIHdpdGhLZXlib2FyZCkgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCBlbnRlckZ1bGxTY3JlZW5Gb3JFbGVtZW50KFdlYkNvcmU6OkVsZW1lbnQq
KSBvdmVycmlkZTsKLSAgICB2b2lkIGV4aXRGdWxsU2NyZWVuRm9yRWxlbWVudChXZWJDb3JlOjpF
bGVtZW50Kikgb3ZlcnJpZGU7CisgICAgYm9vbCBzdXBwb3J0c0Z1bGxTY3JlZW5Gb3JFbGVtZW50
KGNvbnN0IFdlYkNvcmU6OkVsZW1lbnQqLCBib29sIHdpdGhLZXlib2FyZCkgZmluYWw7CisgICAg
dm9pZCBlbnRlckZ1bGxTY3JlZW5Gb3JFbGVtZW50KFdlYkNvcmU6OkVsZW1lbnQqKSBmaW5hbDsK
KyAgICB2b2lkIGV4aXRGdWxsU2NyZWVuRm9yRWxlbWVudChXZWJDb3JlOjpFbGVtZW50KikgZmlu
YWw7CiAjZW5kaWYKIAogICAgIGJvb2wgc2VsZWN0SXRlbVdyaXRpbmdEaXJlY3Rpb25Jc05hdHVy
YWwoKSBvdmVycmlkZTsKICAgICBib29sIHNlbGVjdEl0ZW1BbGlnbm1lbnRGb2xsb3dzTWVudVdy
aXRpbmdEaXJlY3Rpb24oKSBvdmVycmlkZTsKLSAgICBib29sIGhhc09wZW5lZFBvcHVwKCkgY29u
c3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBoYXNPcGVuZWRQb3B1cCgpIGNvbnN0IGZpbmFsOwogICAg
IFJlZlB0cjxXZWJDb3JlOjpQb3B1cE1lbnU+IGNyZWF0ZVBvcHVwTWVudShXZWJDb3JlOjpQb3B1
cE1lbnVDbGllbnQqKSBjb25zdCBvdmVycmlkZTsKICAgICBSZWZQdHI8V2ViQ29yZTo6U2VhcmNo
UG9wdXBNZW51PiBjcmVhdGVTZWFyY2hQb3B1cE1lbnUoV2ViQ29yZTo6UG9wdXBNZW51Q2xpZW50
KikgY29uc3Qgb3ZlcnJpZGU7CiAKLSAgICB2b2lkIHdoZWVsRXZlbnRIYW5kbGVyc0NoYW5nZWQo
Ym9vbCkgb3ZlcnJpZGUgeyB9CisgICAgdm9pZCB3aGVlbEV2ZW50SGFuZGxlcnNDaGFuZ2VkKGJv
b2wpIGZpbmFsIHsgfQogCiAjaWYgRU5BQkxFKFNVQlRMRV9DUllQVE8pCi0gICAgYm9vbCB3cmFw
Q3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90PiYsIFZlY3Rvcjx1aW50OF90PiYpIGNvbnN0
IG92ZXJyaWRlOwotICAgIGJvb2wgdW53cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90
PiYsIFZlY3Rvcjx1aW50OF90PiYpIGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wgd3JhcENyeXB0
b0tleShjb25zdCBWZWN0b3I8dWludDhfdD4mLCBWZWN0b3I8dWludDhfdD4mKSBjb25zdCBmaW5h
bDsKKyAgICBib29sIHVud3JhcENyeXB0b0tleShjb25zdCBWZWN0b3I8dWludDhfdD4mLCBWZWN0
b3I8dWludDhfdD4mKSBjb25zdCBmaW5hbDsKICNlbmRpZgogCiAjaWYgRU5BQkxFKFNFUlZJQ0Vf
Q09OVFJPTFMpCi0gICAgdm9pZCBoYW5kbGVTZWxlY3Rpb25TZXJ2aWNlQ2xpY2soV2ViQ29yZTo6
RnJhbWVTZWxlY3Rpb24mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgdGVsZXBob25lTnVtYmVycywg
Y29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKSBvdmVycmlkZTsKLSAgICBib29sIGhhc1JlbGV2YW50
U2VsZWN0aW9uU2VydmljZXMoYm9vbCBpc1RleHRPbmx5KSBjb25zdCBvdmVycmlkZTsKKyAgICB2
b2lkIGhhbmRsZVNlbGVjdGlvblNlcnZpY2VDbGljayhXZWJDb3JlOjpGcmFtZVNlbGVjdGlvbiYs
IGNvbnN0IFZlY3RvcjxTdHJpbmc+JiB0ZWxlcGhvbmVOdW1iZXJzLCBjb25zdCBXZWJDb3JlOjpJ
bnRQb2ludCYpIGZpbmFsOworICAgIGJvb2wgaGFzUmVsZXZhbnRTZWxlY3Rpb25TZXJ2aWNlcyhi
b29sIGlzVGV4dE9ubHkpIGNvbnN0IGZpbmFsOwogI2VuZGlmCiAKLSAgICBXZWJWaWV3KiB3ZWJW
aWV3KCkgY29uc3QgeyByZXR1cm4gbV93ZWJWaWV3OyB9Ci0KICNpZiBFTkFCTEUoV0lSRUxFU1Nf
UExBWUJBQ0tfVEFSR0VUKSAmJiAhUExBVEZPUk0oSU9TKQotICAgIHZvaWQgYWRkUGxheWJhY2tU
YXJnZXRQaWNrZXJDbGllbnQodWludDY0X3QgLypjb250ZXh0SWQqLykgb3ZlcnJpZGU7Ci0gICAg
dm9pZCByZW1vdmVQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudCh1aW50NjRfdCAvKmNvbnRleHRJ
ZCovKSBvdmVycmlkZTsKLSAgICB2b2lkIHNob3dQbGF5YmFja1RhcmdldFBpY2tlcih1aW50NjRf
dCAvKmNvbnRleHRJZCovLCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYsIGJvb2wgLyogaGFzVmlk
ZW8gKi8pIG92ZXJyaWRlOwotICAgIHZvaWQgcGxheWJhY2tUYXJnZXRQaWNrZXJDbGllbnRTdGF0
ZURpZENoYW5nZSh1aW50NjRfdCAvKmNvbnRleHRJZCovLCBXZWJDb3JlOjpNZWRpYVByb2R1Y2Vy
OjpNZWRpYVN0YXRlRmxhZ3MpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0TW9ja01lZGlhUGxheWJh
Y2tUYXJnZXRQaWNrZXJFbmFibGVkKGJvb2wpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0TW9ja01l
ZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJTdGF0ZShjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpNZWRp
YVBsYXliYWNrVGFyZ2V0Q29udGV4dDo6U3RhdGUpIG92ZXJyaWRlOworICAgIHZvaWQgYWRkUGxh
eWJhY2tUYXJnZXRQaWNrZXJDbGllbnQodWludDY0X3QgLypjb250ZXh0SWQqLykgZmluYWw7Cisg
ICAgdm9pZCByZW1vdmVQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudCh1aW50NjRfdCAvKmNvbnRl
eHRJZCovKSBmaW5hbDsKKyAgICB2b2lkIHNob3dQbGF5YmFja1RhcmdldFBpY2tlcih1aW50NjRf
dCAvKmNvbnRleHRJZCovLCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYsIGJvb2wgLyogaGFzVmlk
ZW8gKi8pIGZpbmFsOworICAgIHZvaWQgcGxheWJhY2tUYXJnZXRQaWNrZXJDbGllbnRTdGF0ZURp
ZENoYW5nZSh1aW50NjRfdCAvKmNvbnRleHRJZCovLCBXZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpN
ZWRpYVN0YXRlRmxhZ3MpIGZpbmFsOworICAgIHZvaWQgc2V0TW9ja01lZGlhUGxheWJhY2tUYXJn
ZXRQaWNrZXJFbmFibGVkKGJvb2wpIGZpbmFsOworICAgIHZvaWQgc2V0TW9ja01lZGlhUGxheWJh
Y2tUYXJnZXRQaWNrZXJTdGF0ZShjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpNZWRpYVBsYXliYWNr
VGFyZ2V0Q29udGV4dDo6U3RhdGUpIGZpbmFsOwogI2VuZGlmCiAKLXByaXZhdGU6CiAgICAgV2Vi
VmlldyAqbV93ZWJWaWV3OwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNv
cmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVT
dXBwb3J0L1dlYkNocm9tZUNsaWVudC5tbQppbmRleCBkN2VjOGNiMWI0NmFiNzgxOGUwZGUyMjQx
MjZjYWE1YTA2NWRhMjkxLi5hNTJhNDYwMWMxNjQ3ZGU0NWQ0MDk5NTdhODEzMmEyM2QxYTM2MDYw
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVD
bGllbnQubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21l
Q2xpZW50Lm1tCkBAIC03NDEsMTAgKzc0MSwxMCBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6cmVx
dWVzdFBvaW50ZXJVbmxvY2soKQogfQogI2VuZGlmCiAKLXZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpy
dW5PcGVuUGFuZWwoRnJhbWUqLCBQYXNzUmVmUHRyPEZpbGVDaG9vc2VyPiBjaG9vc2VyKQordm9p
ZCBXZWJDaHJvbWVDbGllbnQ6OnJ1bk9wZW5QYW5lbChGcmFtZSYsIEZpbGVDaG9vc2VyJiBjaG9v
c2VyKQogewogICAgIEJFR0lOX0JMT0NLX09CSkNfRVhDRVBUSU9OUzsKLSAgICBCT09MIGFsbG93
TXVsdGlwbGVGaWxlcyA9IGNob29zZXItPnNldHRpbmdzKCkuYWxsb3dzTXVsdGlwbGVGaWxlczsK
KyAgICBCT09MIGFsbG93TXVsdGlwbGVGaWxlcyA9IGNob29zZXIuc2V0dGluZ3MoKS5hbGxvd3NN
dWx0aXBsZUZpbGVzOwogICAgIFdlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyICpsaXN0ZW5lciA9
IFtbV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIgYWxsb2NdIGluaXRXaXRoQ2hvb3NlcjpjaG9v
c2VyXTsKICAgICBpZCBkZWxlZ2F0ZSA9IFttX3dlYlZpZXcgVUlEZWxlZ2F0ZV07CiAgICAgaWYg
KFtkZWxlZ2F0ZSByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKHdlYlZpZXc6cnVuT3BlblBh
bmVsRm9yRmlsZUJ1dHRvbldpdGhSZXN1bHRMaXN0ZW5lcjphbGxvd011bHRpcGxlRmlsZXM6KV0p
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JD
bGllbnQuaCBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVu
dC5oCmluZGV4IDNiMzVkNGQyMTEwZjQ5ZjFjNDkzZmVhY2NkMDg0NzM4YjgyMzhhZjkuLjg4MjE1
MzEwNGM1MDA5ZTVlN2VhMGFlN2Y5MDhiMzc2YzcwY2Y3YzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oCkBAIC0xMTUsOCArMTE1
LDggQEAgcHJpdmF0ZToKICAgICB2b2lkIGRpc2NhcmRlZENvbXBvc2l0aW9uKFdlYkNvcmU6OkZy
YW1lKikgZmluYWw7CiAgICAgdm9pZCBjYW5jZWxlZENvbXBvc2l0aW9uKCkgZmluYWw7CiAKLSAg
ICB2b2lkIHJlZ2lzdGVyVW5kb1N0ZXAoUGFzc1JlZlB0cjxXZWJDb3JlOjpVbmRvU3RlcD4pIGZp
bmFsOwotICAgIHZvaWQgcmVnaXN0ZXJSZWRvU3RlcChQYXNzUmVmUHRyPFdlYkNvcmU6OlVuZG9T
dGVwPikgZmluYWw7CisgICAgdm9pZCByZWdpc3RlclVuZG9TdGVwKFdlYkNvcmU6OlVuZG9TdGVw
JikgZmluYWw7CisgICAgdm9pZCByZWdpc3RlclJlZG9TdGVwKFdlYkNvcmU6OlVuZG9TdGVwJikg
ZmluYWw7CiAgICAgdm9pZCBjbGVhclVuZG9SZWRvT3BlcmF0aW9ucygpIGZpbmFsOwogCiAgICAg
Ym9vbCBjYW5Db3B5Q3V0KFdlYkNvcmU6OkZyYW1lKiwgYm9vbCBkZWZhdWx0VmFsdWUpIGNvbnN0
IGZpbmFsOwpAQCAtMTc0LDcgKzE3NCw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBoYW5kbGVBY2Nl
cHRlZENhbmRpZGF0ZVdpdGhTb2Z0U3BhY2VzKFdlYkNvcmU6OlRleHRDaGVja2luZ1Jlc3VsdCkg
ZmluYWw7CiAjZW5kaWYKIAotICAgIHZvaWQgcmVnaXN0ZXJVbmRvT3JSZWRvU3RlcChQYXNzUmVm
UHRyPFdlYkNvcmU6OlVuZG9TdGVwPiwgYm9vbCBpc1JlZG8pOworICAgIHZvaWQgcmVnaXN0ZXJV
bmRvT3JSZWRvU3RlcChXZWJDb3JlOjpVbmRvU3RlcCYsIGJvb2wgaXNSZWRvKTsKIAogICAgIFdl
YlZpZXcgKm1fd2ViVmlldzsKICAgICBSZXRhaW5QdHI8V2ViRWRpdG9yVW5kb1RhcmdldD4gbV91
bmRvVGFyZ2V0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQv
V2ViRWRpdG9yQ2xpZW50Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2Vi
RWRpdG9yQ2xpZW50Lm1tCmluZGV4IDdmOWY0MTdhZDFjNDNhODZhYTI1ZDIxNDhlNTQ2OTVlMWRi
NzAyOGUuLmYzOGE5ZjBjZGMyZDQ5NTBkZDA2NDZkNzAzOGY4YzVhMzMzZTA0ODYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5tbQor
KysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQubW0K
QEAgLTExOSw4ICsxMTksOCBAQCBAaW50ZXJmYWNlIFdlYlVuZG9TdGVwIDogTlNPYmplY3QKICAg
ICBSZWZQdHI8VW5kb1N0ZXA+IG1fc3RlcDsgICAKIH0KIAotKyAoV2ViVW5kb1N0ZXAgKilzdGVw
V2l0aFVuZG9TdGVwOihQYXNzUmVmUHRyPFVuZG9TdGVwPilzdGVwOwotLSAoVW5kb1N0ZXAgKilz
dGVwOworKyAoV2ViVW5kb1N0ZXAgKilzdGVwV2l0aFVuZG9TdGVwOihVbmRvU3RlcCYpc3RlcDsK
Ky0gKFVuZG9TdGVwJilzdGVwOwogCiBAZW5kCiAKQEAgLTEzNSwxMyArMTM1LDEyIEBAICsgKHZv
aWQpaW5pdGlhbGl6ZQogI2VuZGlmCiB9CiAKLS0gKGlkKWluaXRXaXRoVW5kb1N0ZXA6KFBhc3NS
ZWZQdHI8VW5kb1N0ZXA+KXN0ZXAKKy0gKGlkKWluaXRXaXRoVW5kb1N0ZXA6KFVuZG9TdGVwJilz
dGVwCiB7Ci0gICAgQVNTRVJUKHN0ZXApOwogICAgIHNlbGYgPSBbc3VwZXIgaW5pdF07CiAgICAg
aWYgKCFzZWxmKQogICAgICAgICByZXR1cm4gbmlsOwotICAgIG1fc3RlcCA9IHN0ZXA7CisgICAg
bV9zdGVwID0gJnN0ZXA7CiAgICAgcmV0dXJuIHNlbGY7CiB9CiAKQEAgLTE1MywxNCArMTUyLDE0
IEBAIC0gKHZvaWQpZGVhbGxvYwogICAgIFtzdXBlciBkZWFsbG9jXTsKIH0KIAotKyAoV2ViVW5k
b1N0ZXAgKilzdGVwV2l0aFVuZG9TdGVwOihQYXNzUmVmUHRyPFVuZG9TdGVwPilzdGVwCisrIChX
ZWJVbmRvU3RlcCAqKXN0ZXBXaXRoVW5kb1N0ZXA6KFVuZG9TdGVwJilzdGVwCiB7CiAgICAgcmV0
dXJuIFtbW1dlYlVuZG9TdGVwIGFsbG9jXSBpbml0V2l0aFVuZG9TdGVwOnN0ZXBdIGF1dG9yZWxl
YXNlXTsKIH0KIAotLSAoVW5kb1N0ZXAgKilzdGVwCistIChVbmRvU3RlcCYpc3RlcAogewotICAg
IHJldHVybiBtX3N0ZXAuZ2V0KCk7CisgICAgcmV0dXJuICptX3N0ZXA7CiB9CiAKIEBlbmQKQEAg
LTE3NywxMyArMTc2LDEzIEBAIEBpbXBsZW1lbnRhdGlvbiBXZWJFZGl0b3JVbmRvVGFyZ2V0CiAt
ICh2b2lkKXVuZG9FZGl0aW5nOihpZClhcmcKIHsKICAgICBBU1NFUlQoW2FyZyBpc0tpbmRPZkNs
YXNzOltXZWJVbmRvU3RlcCBjbGFzc11dKTsKLSAgICBbYXJnIHN0ZXBdLT51bmFwcGx5KCk7Cisg
ICAgW2FyZyBzdGVwXS51bmFwcGx5KCk7CiB9CiAKIC0gKHZvaWQpcmVkb0VkaXRpbmc6KGlkKWFy
ZwogewogICAgIEFTU0VSVChbYXJnIGlzS2luZE9mQ2xhc3M6W1dlYlVuZG9TdGVwIGNsYXNzXV0p
OwotICAgIFthcmcgc3RlcF0tPnJlYXBwbHkoKTsKKyAgICBbYXJnIHN0ZXBdLnJlYXBwbHkoKTsK
IH0KIAogQGVuZApAQCAtNjQyLDEwICs2NDEsOCBAQCBzdGF0aWMgTlNTdHJpbmcqIHVuZG9OYW1l
Rm9yRWRpdEFjdGlvbihFZGl0QWN0aW9uIGVkaXRBY3Rpb24pCiAgICAgcmV0dXJuIG5pbDsKIH0K
IAotdm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb09yUmVkb1N0ZXAoUGFzc1JlZlB0
cjxVbmRvU3RlcD4gc3RlcCwgYm9vbCBpc1JlZG8pCit2b2lkIFdlYkVkaXRvckNsaWVudDo6cmVn
aXN0ZXJVbmRvT3JSZWRvU3RlcChVbmRvU3RlcCYgc3RlcCwgYm9vbCBpc1JlZG8pCiB7Ci0gICAg
QVNTRVJUKHN0ZXApOwotICAgIAogICAgIE5TVW5kb01hbmFnZXIgKnVuZG9NYW5hZ2VyID0gW21f
d2ViVmlldyB1bmRvTWFuYWdlcl07CiAKICNpZiBQTEFURk9STShJT1MpCkBAIC02NTYsNyArNjUz
LDcgQEAgdm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb09yUmVkb1N0ZXAoUGFzc1Jl
ZlB0cjxVbmRvU3RlcD4gc3RlcCwgYm9vbCBpc1IKICAgICAgICAgcmV0dXJuOwogI2VuZGlmCiAK
LSAgICBOU1N0cmluZyAqYWN0aW9uTmFtZSA9IHVuZG9OYW1lRm9yRWRpdEFjdGlvbihzdGVwLT5l
ZGl0aW5nQWN0aW9uKCkpOworICAgIE5TU3RyaW5nICphY3Rpb25OYW1lID0gdW5kb05hbWVGb3JF
ZGl0QWN0aW9uKHN0ZXAuZWRpdGluZ0FjdGlvbigpKTsKICAgICBXZWJVbmRvU3RlcCAqd2ViRW50
cnkgPSBbV2ViVW5kb1N0ZXAgc3RlcFdpdGhVbmRvU3RlcDpzdGVwXTsKICAgICBbdW5kb01hbmFn
ZXIgcmVnaXN0ZXJVbmRvV2l0aFRhcmdldDptX3VuZG9UYXJnZXQuZ2V0KCkgc2VsZWN0b3I6KGlz
UmVkbyA/IEBzZWxlY3RvcihyZWRvRWRpdGluZzopIDogQHNlbGVjdG9yKHVuZG9FZGl0aW5nOikp
IG9iamVjdDp3ZWJFbnRyeV07CiAgICAgaWYgKGFjdGlvbk5hbWUpCkBAIC02ODQsMTIgKzY4MSwx
MiBAQCB2b2lkIFdlYkVkaXRvckNsaWVudDo6dXBkYXRlRWRpdG9yU3RhdGVBZnRlckxheW91dElm
RWRpdGFiaWxpdHlDaGFuZ2VkKCkKICAgICAgICAgW21fd2ViVmlldyB1cGRhdGVUb3VjaEJhcl07
CiB9CiAKLXZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9TdGVwKFBhc3NSZWZQdHI8
VW5kb1N0ZXA+IGNtZCkKK3ZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9TdGVwKFVu
ZG9TdGVwJiBjbWQpCiB7CiAgICAgcmVnaXN0ZXJVbmRvT3JSZWRvU3RlcChjbWQsIGZhbHNlKTsK
IH0KIAotdm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyUmVkb1N0ZXAoUGFzc1JlZlB0cjxV
bmRvU3RlcD4gY21kKQordm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyUmVkb1N0ZXAoVW5k
b1N0ZXAmIGNtZCkKIHsKICAgICByZWdpc3RlclVuZG9PclJlZG9TdGVwKGNtZCwgdHJ1ZSk7CiB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxv
YWRlckNsaWVudC5oIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVM
b2FkZXJDbGllbnQuaAppbmRleCBhMTFmYjg4YmRiZDkxYmFkOGZkOGRmOWZkMjkyZjgyNTg4ZmM0
NWY2Li5iZmJkMmY3ODM2ZjY0OGI4MDcwYWM3NDNmMmVhYzgzNmE1Yzk2OTEyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5o
CisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xp
ZW50LmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTYgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTcg
QXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCkBAIC01OCwyMDIgKzU4LDIwMiBAQCBwdWJsaWM6CiAgICAgV2ViRnJhbWUqIHdlYkZy
YW1lKCkgY29uc3QgeyByZXR1cm4gbV93ZWJGcmFtZS5nZXQoKTsgfQogCiBwcml2YXRlOgotICAg
IHZvaWQgZnJhbWVMb2FkZXJEZXN0cm95ZWQoKSBvdmVycmlkZTsKLSAgICBib29sIGhhc1dlYlZp
ZXcoKSBjb25zdCBvdmVycmlkZTsgLy8gbWFpbmx5IGZvciBhc3NlcnRpb25zCisgICAgdm9pZCBm
cmFtZUxvYWRlckRlc3Ryb3llZCgpIGZpbmFsOworICAgIGJvb2wgaGFzV2ViVmlldygpIGNvbnN0
IGZpbmFsOyAvLyBtYWlubHkgZm9yIGFzc2VydGlvbnMKIAotICAgIHZvaWQgbWFrZVJlcHJlc2Vu
dGF0aW9uKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBoYXNI
VE1MVmlldygpIGNvbnN0IG92ZXJyaWRlOworICAgIHZvaWQgbWFrZVJlcHJlc2VudGF0aW9uKFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKikgZmluYWw7CisgICAgYm9vbCBoYXNIVE1MVmlldygpIGNv
bnN0IGZpbmFsOwogI2lmIFBMQVRGT1JNKElPUykKLSAgICBib29sIGZvcmNlTGF5b3V0T25SZXN0
b3JlRnJvbVBhZ2VDYWNoZSgpIG92ZXJyaWRlOworICAgIGJvb2wgZm9yY2VMYXlvdXRPblJlc3Rv
cmVGcm9tUGFnZUNhY2hlKCkgZmluYWw7CiAjZW5kaWYKLSAgICB2b2lkIGZvcmNlTGF5b3V0Rm9y
Tm9uSFRNTCgpIG92ZXJyaWRlOworICAgIHZvaWQgZm9yY2VMYXlvdXRGb3JOb25IVE1MKCkgZmlu
YWw7CiAKLSAgICB2b2lkIHNldENvcGllc09uU2Nyb2xsKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBz
ZXRDb3BpZXNPblNjcm9sbCgpIGZpbmFsOwogCi0gICAgdm9pZCBkZXRhY2hlZEZyb21QYXJlbnQy
KCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkZXRhY2hlZEZyb21QYXJlbnQzKCkgb3ZlcnJpZGU7Cisg
ICAgdm9pZCBkZXRhY2hlZEZyb21QYXJlbnQyKCkgZmluYWw7CisgICAgdm9pZCBkZXRhY2hlZEZy
b21QYXJlbnQzKCkgZmluYWw7CiAKLSAgICB2b2lkIGNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9E
b3dubG9hZChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlNlc3Npb25JRCwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNw
b25zZSYpIG92ZXJyaWRlOworICAgIHZvaWQgY29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25s
b2FkKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6U2Vzc2lvbklELCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNl
JikgZmluYWw7CiAKLSAgICB2b2lkIGFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKKyAgICB2b2lkIGFzc2lnbklkZW50
aWZpZXJUb0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsK
IAotICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYs
IGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpIG92ZXJy
aWRlOwotICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIG92ZXJyaWRlOwotICAgIHZvaWQg
ZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OkF1dGhl
bnRpY2F0aW9uQ2hhbGxlbmdlJikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5k
UmVxdWVzdChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNw
b25zZSYgcmVkaXJlY3RSZXNwb25zZSkgZmluYWw7CisgICAgYm9vbCBzaG91bGRVc2VDcmVkZW50
aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllcikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNo
YWxsZW5nZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgY29uc3QgV2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKSBmaW5hbDsKICNpZiBV
U0UoUFJPVEVDVElPTl9TUEFDRV9BVVRIX0NBTExCQUNLKQotICAgIGJvb2wgY2FuQXV0aGVudGlj
YXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UHJvdGVjdGlvblNwYWNlJikgb3Zl
cnJpZGU7CisgICAgYm9vbCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBX
ZWJDb3JlOjpQcm90ZWN0aW9uU3BhY2UmKSBmaW5hbDsKICNlbmRpZgogCiAjaWYgUExBVEZPUk0o
SU9TKQotICAgIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IGNvbm5lY3Rpb25Qcm9wZXJ0aWVz
KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBvdmVy
cmlkZTsKKyAgICBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBjb25uZWN0aW9uUHJvcGVydGll
cyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgZmlu
YWw7CiAjZW5kaWYKIAotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoV2ViQ29y
ZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVj
ZWl2ZUNvbnRlbnRMZW5ndGgoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNo
RGlkRmluaXNoTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllcikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25z
ZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hE
aWRSZWNlaXZlQ29udGVudExlbmd0aChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgaW50IGRhdGFMZW5ndGgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0
Y2hEaWRGaW5pc2hMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyKSBmaW5hbDsKICNpZiBFTkFCTEUoREFUQV9ERVRFQ1RJT04pCi0gICAgdm9p
ZCBkaXNwYXRjaERpZEZpbmlzaERhdGFEZXRlY3Rpb24oTlNBcnJheSAqZGV0ZWN0aW9uUmVzdWx0
cykgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaERhdGFEZXRlY3Rpb24oTlNB
cnJheSAqZGV0ZWN0aW9uUmVzdWx0cykgZmluYWw7CiAjZW5kaWYKLSAgICB2b2lkIGRpc3BhdGNo
RGlkRmFpbExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKLQotICAg
IE5TQ2FjaGVkVVJMUmVzcG9uc2UqIHdpbGxDYWNoZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBOU0NhY2hlZFVSTFJlc3BvbnNlKikg
Y29uc3Qgb3ZlcnJpZGU7Ci0KLSAgICB2b2lkIGRpc3BhdGNoRGlkRGlzcGF0Y2hPbmxvYWRFdmVu
dHMoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVNlcnZlclJlZGlyZWN0
Rm9yUHJvdmlzaW9uYWxMb2FkKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZENhbmNl
bENsaWVudFJlZGlyZWN0KCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxQZXJmb3Jt
Q2xpZW50UmVkaXJlY3QoY29uc3QgV2ViQ29yZTo6VVJMJiwgZG91YmxlIGludGVydmFsLCBkb3Vi
bGUgZmlyZURhdGUpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRDaGFuZ2VMb2NhdGlv
bldpdGhpblBhZ2UoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUHVzaFN0YXRlV2l0
aGluUGFnZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZXBsYWNlU3RhdGVXaXRo
aW5QYWdlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFBvcFN0YXRlV2l0aGluUGFn
ZSgpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhXZWJDb3JlOjpE
b2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VFcnJvciYpIGZpbmFsOworCisgICAgTlNDYWNoZWRVUkxSZXNwb25zZSogd2lsbENh
Y2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2UqKSBjb25zdCBmaW5hbDsKKworICAgIHZvaWQgZGlz
cGF0Y2hEaWREaXNwYXRjaE9ubG9hZEV2ZW50cygpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hE
aWRSZWNlaXZlU2VydmVyUmVkaXJlY3RGb3JQcm92aXNpb25hbExvYWQoKSBmaW5hbDsKKyAgICB2
b2lkIGRpc3BhdGNoRGlkQ2FuY2VsQ2xpZW50UmVkaXJlY3QoKSBmaW5hbDsKKyAgICB2b2lkIGRp
c3BhdGNoV2lsbFBlcmZvcm1DbGllbnRSZWRpcmVjdChjb25zdCBXZWJDb3JlOjpVUkwmLCBkb3Vi
bGUgaW50ZXJ2YWwsIGRvdWJsZSBmaXJlRGF0ZSkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERp
ZENoYW5nZUxvY2F0aW9uV2l0aGluUGFnZSgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRQ
dXNoU3RhdGVXaXRoaW5QYWdlKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlcGxhY2VT
dGF0ZVdpdGhpblBhZ2UoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUG9wU3RhdGVXaXRo
aW5QYWdlKCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBkaXNwYXRjaFdpbGxDbG9zZSgpIG92ZXJy
aWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlSWNvbigpIG92ZXJyaWRlOwotICAgIHZv
aWQgZGlzcGF0Y2hEaWRTdGFydFByb3Zpc2lvbmFsTG9hZCgpIG92ZXJyaWRlOwotICAgIHZvaWQg
ZGlzcGF0Y2hEaWRSZWNlaXZlVGl0bGUoY29uc3QgV2ViQ29yZTo6U3RyaW5nV2l0aERpcmVjdGlv
biYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRDb21taXRMb2FkKHN0ZDo6b3B0aW9u
YWw8V2ViQ29yZTo6SGFzSW5zZWN1cmVDb250ZW50Pikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNw
YXRjaERpZEZhaWxQcm92aXNpb25hbExvYWQoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYp
IG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZChjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaERvY3Vt
ZW50TG9hZCgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkKCkgb3Zl
cnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlYWNoTGF5b3V0TWlsZXN0b25lKFdlYkNvcmU6
OkxheW91dE1pbGVzdG9uZXMpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsQ2xvc2Uo
KSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUljb24oKSBmaW5hbDsKKyAgICB2
b2lkIGRpc3BhdGNoRGlkU3RhcnRQcm92aXNpb25hbExvYWQoKSBmaW5hbDsKKyAgICB2b2lkIGRp
c3BhdGNoRGlkUmVjZWl2ZVRpdGxlKGNvbnN0IFdlYkNvcmU6OlN0cmluZ1dpdGhEaXJlY3Rpb24m
KSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkQ29tbWl0TG9hZChzdGQ6Om9wdGlvbmFsPFdl
YkNvcmU6Okhhc0luc2VjdXJlQ29udGVudD4pIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRG
YWlsUHJvdmlzaW9uYWxMb2FkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBmaW5hbDsK
KyAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbExvYWQoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJv
ciYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hEb2N1bWVudExvYWQoKSBmaW5h
bDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZCgpIGZpbmFsOworICAgIHZvaWQgZGlz
cGF0Y2hEaWRSZWFjaExheW91dE1pbGVzdG9uZShXZWJDb3JlOjpMYXlvdXRNaWxlc3RvbmVzKSBm
aW5hbDsKIAotICAgIFdlYkNvcmU6OkZyYW1lKiBkaXNwYXRjaENyZWF0ZVBhZ2UoY29uc3QgV2Vi
Q29yZTo6TmF2aWdhdGlvbkFjdGlvbiYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hTaG93
KCkgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6RnJhbWUqIGRpc3BhdGNoQ3JlYXRlUGFnZShjb25z
dCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaFNo
b3coKSBmaW5hbDsKIAotICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JSZXNwb25zZShj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VS
ZXF1ZXN0JiwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBXZWJDb3JlOjpO
YXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgUGFzc1Jl
ZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+LCBjb25zdCBXVEY6OlN0cmluZyYgZnJhbWVOYW1lLCBX
ZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNo
RGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9u
QWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgUGFzc1JlZlB0cjxXZWJD
b3JlOjpGb3JtU3RhdGU+LCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBvdmVycmlkZTsK
LSAgICB2b2lkIGNhbmNlbFBvbGljeUNoZWNrKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRj
aERlY2lkZVBvbGljeUZvclJlc3BvbnNlKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Um
LCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1
bmN0aW9uKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93
QWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpGb3JtU3RhdGUqLCBjb25zdCBXVEY6OlN0cmluZyYg
ZnJhbWVOYW1lLCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsKKyAgICB2b2lk
IGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBXZWJDb3JlOjpO
YXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgV2ViQ29y
ZTo6Rm9ybVN0YXRlKiwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7CisgICAg
dm9pZCBjYW5jZWxQb2xpY3lDaGVjaygpIGZpbmFsOwogCi0gICAgdm9pZCBkaXNwYXRjaFVuYWJs
ZVRvSW1wbGVtZW50UG9saWN5KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlk
ZTsKKyAgICB2b2lkIGRpc3BhdGNoVW5hYmxlVG9JbXBsZW1lbnRQb2xpY3koY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VFcnJvciYpIGZpbmFsOwogCi0gICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5kU3Vi
bWl0RXZlbnQoUGFzc1JlZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+KSBvdmVycmlkZTsKLSAgICB2
b2lkIGRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0oUGFzc1JlZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+
LCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3Bh
dGNoV2lsbFNlbmRTdWJtaXRFdmVudChSZWY8V2ViQ29yZTo6Rm9ybVN0YXRlPiYmKSBmaW5hbDsK
KyAgICB2b2lkIGRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0oV2ViQ29yZTo6Rm9ybVN0YXRlJiwgV2Vi
Q29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7CiAKLSAgICB2b2lkIHJldmVydFRvUHJv
dmlzaW9uYWxTdGF0ZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIG92ZXJyaWRlOwotICAgIHZv
aWQgc2V0TWFpbkRvY3VtZW50RXJyb3IoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBkaXNwYXRjaERpZExv
YWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2UmLCBpbnQgbGVuZ3RoKSBvdmVycmlkZTsKKyAgICB2b2lkIHJldmVydFRvUHJvdmlzaW9uYWxT
dGF0ZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIGZpbmFsOworICAgIHZvaWQgc2V0TWFpbkRv
Y3VtZW50RXJyb3IoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZUVycm9yJikgZmluYWw7CisgICAgYm9vbCBkaXNwYXRjaERpZExvYWRSZXNvdXJjZUZyb21N
ZW1vcnlDYWNoZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBpbnQgbGVuZ3Ro
KSBmaW5hbDsKIAotICAgIHZvaWQgc2V0TWFpbkZyYW1lRG9jdW1lbnRSZWFkeShib29sKSBvdmVy
cmlkZTsKKyAgICB2b2lkIHNldE1haW5GcmFtZURvY3VtZW50UmVhZHkoYm9vbCkgZmluYWw7CiAK
LSAgICB2b2lkIHN0YXJ0RG93bmxvYWQoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jiwg
Y29uc3QgU3RyaW5nJiBzdWdnZXN0ZWROYW1lID0gU3RyaW5nKCkpIG92ZXJyaWRlOworICAgIHZv
aWQgc3RhcnREb3dubG9hZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBT
dHJpbmcmIHN1Z2dlc3RlZE5hbWUgPSBTdHJpbmcoKSkgZmluYWw7CiAKLSAgICB2b2lkIHdpbGxD
aGFuZ2VUaXRsZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIG92ZXJyaWRlOwotICAgIHZvaWQg
ZGlkQ2hhbmdlVGl0bGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBvdmVycmlkZTsKKyAgICB2
b2lkIHdpbGxDaGFuZ2VUaXRsZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIGZpbmFsOworICAg
IHZvaWQgZGlkQ2hhbmdlVGl0bGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBmaW5hbDsKIAot
ICAgIHZvaWQgd2lsbFJlcGxhY2VNdWx0aXBhcnRDb250ZW50KCkgb3ZlcnJpZGUgeyB9Ci0gICAg
dm9pZCBkaWRSZXBsYWNlTXVsdGlwYXJ0Q29udGVudCgpIG92ZXJyaWRlOworICAgIHZvaWQgd2ls
bFJlcGxhY2VNdWx0aXBhcnRDb250ZW50KCkgZmluYWwgeyB9CisgICAgdm9pZCBkaWRSZXBsYWNl
TXVsdGlwYXJ0Q29udGVudCgpIGZpbmFsOwogCi0gICAgdm9pZCBjb21taXR0ZWRMb2FkKFdlYkNv
cmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgY2hhciosIGludCkgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBmaW5pc2hlZExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBvdmVycmlkZTsKLSAg
ICB2b2lkIHVwZGF0ZUdsb2JhbEhpc3RvcnkoKSBvdmVycmlkZTsKLSAgICB2b2lkIHVwZGF0ZUds
b2JhbEhpc3RvcnlSZWRpcmVjdExpbmtzKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBjb21taXR0ZWRM
b2FkKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgY2hhciosIGludCkgZmluYWw7Cisg
ICAgdm9pZCBmaW5pc2hlZExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBmaW5hbDsK
KyAgICB2b2lkIHVwZGF0ZUdsb2JhbEhpc3RvcnkoKSBmaW5hbDsKKyAgICB2b2lkIHVwZGF0ZUds
b2JhbEhpc3RvcnlSZWRpcmVjdExpbmtzKCkgZmluYWw7CiAKLSAgICBib29sIHNob3VsZEdvVG9I
aXN0b3J5SXRlbShXZWJDb3JlOjpIaXN0b3J5SXRlbSopIGNvbnN0IG92ZXJyaWRlOwotICAgIHZv
aWQgdXBkYXRlR2xvYmFsSGlzdG9yeUl0ZW1Gb3JQYWdlKCkgb3ZlcnJpZGU7CisgICAgYm9vbCBz
aG91bGRHb1RvSGlzdG9yeUl0ZW0oV2ViQ29yZTo6SGlzdG9yeUl0ZW0qKSBjb25zdCBmaW5hbDsK
KyAgICB2b2lkIHVwZGF0ZUdsb2JhbEhpc3RvcnlJdGVtRm9yUGFnZSgpIGZpbmFsOwogCi0gICAg
dm9pZCBkaWREaXNwbGF5SW5zZWN1cmVDb250ZW50KCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRS
dW5JbnNlY3VyZUNvbnRlbnQoV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4qLCBjb25zdCBXZWJDb3Jl
OjpVUkwmKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZERldGVjdFhTUyhjb25zdCBXZWJDb3JlOjpV
UkwmLCBib29sIGRpZEJsb2NrRW50aXJlUGFnZSkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWREaXNw
bGF5SW5zZWN1cmVDb250ZW50KCkgZmluYWw7CisgICAgdm9pZCBkaWRSdW5JbnNlY3VyZUNvbnRl
bnQoV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4qLCBjb25zdCBXZWJDb3JlOjpVUkwmKSBmaW5hbDsK
KyAgICB2b2lkIGRpZERldGVjdFhTUyhjb25zdCBXZWJDb3JlOjpVUkwmLCBib29sIGRpZEJsb2Nr
RW50aXJlUGFnZSkgZmluYWw7CiAKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbmNlbGxl
ZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRlOwotICAgIFdl
YkNvcmU6OlJlc291cmNlRXJyb3IgYmxvY2tlZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYpIG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgYmxvY2tlZEJ5
Q29udGVudEJsb2NrZXJFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVy
cmlkZTsKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dVUkxFcnJvcihjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpSZXNv
dXJjZUVycm9yIGludGVycnVwdGVkRm9yUG9saWN5Q2hhbmdlRXJyb3IoY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBj
YW5jZWxsZWRFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKKyAg
ICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGJsb2NrZWRFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmKSBmaW5hbDsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGJsb2NrZWRC
eUNvbnRlbnRCbG9ja2VyRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmlu
YWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBjYW5ub3RTaG93VVJMRXJyb3IoY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VF
cnJvciBpbnRlcnJ1cHRlZEZvclBvbGljeUNoYW5nZUVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlUmVxdWVzdCYpIGZpbmFsOwogI2lmIEVOQUJMRShDT05URU5UX0ZJTFRFUklORykKLSAgICBX
ZWJDb3JlOjpSZXNvdXJjZUVycm9yIGJsb2NrZWRCeUNvbnRlbnRGaWx0ZXJFcnJvcihjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpSZXNvdXJj
ZUVycm9yIGJsb2NrZWRCeUNvbnRlbnRGaWx0ZXJFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZVJlcXVlc3QmKSBmaW5hbDsKICNlbmRpZgogCi0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBj
YW5ub3RTaG93TUlNRVR5cGVFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikg
b3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBmaWxlRG9lc05vdEV4aXN0RXJy
b3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOwotICAgIFdlYkNv
cmU6OlJlc291cmNlRXJyb3IgcGx1Z2luV2lsbEhhbmRsZUxvYWRFcnJvcihjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJv
ciBjYW5ub3RTaG93TUlNRVR5cGVFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNl
JikgZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBmaWxlRG9lc05vdEV4aXN0RXJy
b3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOworICAgIFdlYkNvcmU6
OlJlc291cmNlRXJyb3IgcGx1Z2luV2lsbEhhbmRsZUxvYWRFcnJvcihjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7CiAKLSAgICBib29sIHNob3VsZEZhbGxCYWNrKGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZEZhbGxC
YWNrKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKIAotICAgIFdURjo6U3Ry
aW5nIHVzZXJBZ2VudChjb25zdCBXZWJDb3JlOjpVUkwmKSBvdmVycmlkZTsKKyAgICBXVEY6OlN0
cmluZyB1c2VyQWdlbnQoY29uc3QgV2ViQ29yZTo6VVJMJikgZmluYWw7CiAgICAgCi0gICAgdm9p
ZCBzYXZlUGxhdGZvcm1EYXRhVG9DYWNoZWRGcmFtZShXZWJDb3JlOjpDYWNoZWRGcmFtZSopIG92
ZXJyaWRlOwotICAgIHZvaWQgdHJhbnNpdGlvblRvQ29tbWl0dGVkRnJvbUNhY2hlZEZyYW1lKFdl
YkNvcmU6OkNhY2hlZEZyYW1lKikgb3ZlcnJpZGU7CisgICAgdm9pZCBzYXZlUGxhdGZvcm1EYXRh
VG9DYWNoZWRGcmFtZShXZWJDb3JlOjpDYWNoZWRGcmFtZSopIGZpbmFsOworICAgIHZvaWQgdHJh
bnNpdGlvblRvQ29tbWl0dGVkRnJvbUNhY2hlZEZyYW1lKFdlYkNvcmU6OkNhY2hlZEZyYW1lKikg
ZmluYWw7CiAjaWYgUExBVEZPUk0oSU9TKQotICAgIHZvaWQgZGlkUmVzdG9yZUZyYW1lSGllcmFy
Y2h5Rm9yQ2FjaGVkRnJhbWUoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZFJlc3RvcmVGcmFtZUhp
ZXJhcmNoeUZvckNhY2hlZEZyYW1lKCkgZmluYWw7CiAjZW5kaWYKLSAgICB2b2lkIHRyYW5zaXRp
b25Ub0NvbW1pdHRlZEZvck5ld1BhZ2UoKSBvdmVycmlkZTsKKyAgICB2b2lkIHRyYW5zaXRpb25U
b0NvbW1pdHRlZEZvck5ld1BhZ2UoKSBmaW5hbDsKIAotICAgIHZvaWQgZGlkU2F2ZVRvUGFnZUNh
Y2hlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRSZXN0b3JlRnJvbVBhZ2VDYWNoZSgpIG92ZXJy
aWRlOworICAgIHZvaWQgZGlkU2F2ZVRvUGFnZUNhY2hlKCkgZmluYWw7CisgICAgdm9pZCBkaWRS
ZXN0b3JlRnJvbVBhZ2VDYWNoZSgpIGZpbmFsOwogCi0gICAgdm9pZCBkaXNwYXRjaERpZEJlY29t
ZUZyYW1lc2V0KGJvb2wpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hEaWRCZWNvbWVGcmFt
ZXNldChib29sKSBmaW5hbDsKIAotICAgIGJvb2wgY2FuSGFuZGxlUmVxdWVzdChjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBjb25zdCBvdmVycmlkZTsKLSAgICBib29sIGNhblNob3dN
SU1FVHlwZShjb25zdCBXVEY6OlN0cmluZyYgTUlNRVR5cGUpIGNvbnN0IG92ZXJyaWRlOwotICAg
IGJvb2wgY2FuU2hvd01JTUVUeXBlQXNIVE1MKGNvbnN0IFdURjo6U3RyaW5nJiBNSU1FVHlwZSkg
Y29uc3Qgb3ZlcnJpZGU7Ci0gICAgYm9vbCByZXByZXNlbnRhdGlvbkV4aXN0c0ZvclVSTFNjaGVt
ZShjb25zdCBXVEY6OlN0cmluZyYgVVJMU2NoZW1lKSBjb25zdCBvdmVycmlkZTsKLSAgICBXVEY6
OlN0cmluZyBnZW5lcmF0ZWRNSU1FVHlwZUZvclVSTFNjaGVtZShjb25zdCBXVEY6OlN0cmluZyYg
VVJMU2NoZW1lKSBjb25zdCBvdmVycmlkZTsKKyAgICBib29sIGNhbkhhbmRsZVJlcXVlc3QoY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgY29uc3QgZmluYWw7CisgICAgYm9vbCBjYW5T
aG93TUlNRVR5cGUoY29uc3QgV1RGOjpTdHJpbmcmIE1JTUVUeXBlKSBjb25zdCBmaW5hbDsKKyAg
ICBib29sIGNhblNob3dNSU1FVHlwZUFzSFRNTChjb25zdCBXVEY6OlN0cmluZyYgTUlNRVR5cGUp
IGNvbnN0IGZpbmFsOworICAgIGJvb2wgcmVwcmVzZW50YXRpb25FeGlzdHNGb3JVUkxTY2hlbWUo
Y29uc3QgV1RGOjpTdHJpbmcmIFVSTFNjaGVtZSkgY29uc3QgZmluYWw7CisgICAgV1RGOjpTdHJp
bmcgZ2VuZXJhdGVkTUlNRVR5cGVGb3JVUkxTY2hlbWUoY29uc3QgV1RGOjpTdHJpbmcmIFVSTFNj
aGVtZSkgY29uc3QgZmluYWw7CiAKLSAgICB2b2lkIGZyYW1lTG9hZENvbXBsZXRlZCgpIG92ZXJy
aWRlOwotICAgIHZvaWQgc2F2ZVZpZXdTdGF0ZVRvSXRlbShXZWJDb3JlOjpIaXN0b3J5SXRlbSYp
IG92ZXJyaWRlOwotICAgIHZvaWQgcmVzdG9yZVZpZXdTdGF0ZSgpIG92ZXJyaWRlOwotICAgIHZv
aWQgcHJvdmlzaW9uYWxMb2FkU3RhcnRlZCgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkRmluaXNo
TG9hZCgpIG92ZXJyaWRlOwotICAgIHZvaWQgcHJlcGFyZUZvckRhdGFTb3VyY2VSZXBsYWNlbWVu
dCgpIG92ZXJyaWRlOwotICAgIFJlZjxXZWJDb3JlOjpEb2N1bWVudExvYWRlcj4gY3JlYXRlRG9j
dW1lbnRMb2FkZXIoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29y
ZTo6U3Vic3RpdHV0ZURhdGEmKSBvdmVycmlkZTsKLSAgICB2b2lkIHVwZGF0ZUNhY2hlZERvY3Vt
ZW50TG9hZGVyKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyJikgb3ZlcnJpZGUgeyB9CisgICAgdm9p
ZCBmcmFtZUxvYWRDb21wbGV0ZWQoKSBmaW5hbDsKKyAgICB2b2lkIHNhdmVWaWV3U3RhdGVUb0l0
ZW0oV2ViQ29yZTo6SGlzdG9yeUl0ZW0mKSBmaW5hbDsKKyAgICB2b2lkIHJlc3RvcmVWaWV3U3Rh
dGUoKSBmaW5hbDsKKyAgICB2b2lkIHByb3Zpc2lvbmFsTG9hZFN0YXJ0ZWQoKSBmaW5hbDsKKyAg
ICB2b2lkIGRpZEZpbmlzaExvYWQoKSBmaW5hbDsKKyAgICB2b2lkIHByZXBhcmVGb3JEYXRhU291
cmNlUmVwbGFjZW1lbnQoKSBmaW5hbDsKKyAgICBSZWY8V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI+
IGNyZWF0ZURvY3VtZW50TG9hZGVyKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNv
bnN0IFdlYkNvcmU6OlN1YnN0aXR1dGVEYXRhJikgZmluYWw7CisgICAgdm9pZCB1cGRhdGVDYWNo
ZWREb2N1bWVudExvYWRlcihXZWJDb3JlOjpEb2N1bWVudExvYWRlciYpIGZpbmFsIHsgfQogCi0g
ICAgdm9pZCBzZXRUaXRsZShjb25zdCBXZWJDb3JlOjpTdHJpbmdXaXRoRGlyZWN0aW9uJiwgY29u
c3QgV2ViQ29yZTo6VVJMJikgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRUaXRsZShjb25zdCBXZWJD
b3JlOjpTdHJpbmdXaXRoRGlyZWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6VVJMJikgZmluYWw7CiAK
LSAgICBSZWZQdHI8V2ViQ29yZTo6RnJhbWU+IGNyZWF0ZUZyYW1lKGNvbnN0IFdlYkNvcmU6OlVS
TCYsIGNvbnN0IFdURjo6U3RyaW5nJiBuYW1lLCBXZWJDb3JlOjpIVE1MRnJhbWVPd25lckVsZW1l
bnQqLAotICAgICAgICBjb25zdCBXVEY6OlN0cmluZyYgcmVmZXJyZXIsIGJvb2wgYWxsb3dzU2Ny
b2xsaW5nLCBpbnQgbWFyZ2luV2lkdGgsIGludCBtYXJnaW5IZWlnaHQpIG92ZXJyaWRlOwotICAg
IFJlZlB0cjxXZWJDb3JlOjpXaWRnZXQ+IGNyZWF0ZVBsdWdpbihjb25zdCBXZWJDb3JlOjpJbnRT
aXplJiwgV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQqLCBjb25zdCBXZWJDb3JlOjpVUkwmLCBj
b25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiwKLSAgICAgICAgY29uc3QgVmVjdG9yPFdURjo6U3Ry
aW5nPiYsIGNvbnN0IFdURjo6U3RyaW5nJiwgYm9vbCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCByZWNy
ZWF0ZVBsdWdpbihXZWJDb3JlOjpXaWRnZXQqKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlZGlyZWN0
RGF0YVRvUGx1Z2luKFdlYkNvcmU6OldpZGdldCogcGx1Z2luV2lkZ2V0KSBvdmVycmlkZTsKKyAg
ICBSZWZQdHI8V2ViQ29yZTo6RnJhbWU+IGNyZWF0ZUZyYW1lKGNvbnN0IFdlYkNvcmU6OlVSTCYs
IGNvbnN0IFdURjo6U3RyaW5nJiBuYW1lLCBXZWJDb3JlOjpIVE1MRnJhbWVPd25lckVsZW1lbnQm
LAorICAgICAgICBjb25zdCBXVEY6OlN0cmluZyYgcmVmZXJyZXIsIGJvb2wgYWxsb3dzU2Nyb2xs
aW5nLCBpbnQgbWFyZ2luV2lkdGgsIGludCBtYXJnaW5IZWlnaHQpIGZpbmFsOworICAgIFJlZlB0
cjxXZWJDb3JlOjpXaWRnZXQ+IGNyZWF0ZVBsdWdpbihjb25zdCBXZWJDb3JlOjpJbnRTaXplJiwg
V2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQmLCBjb25zdCBXZWJDb3JlOjpVUkwmLAorICAgICAg
ICBjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFdURjo6U3RyaW5nPiYs
IGNvbnN0IFdURjo6U3RyaW5nJiwgYm9vbCkgZmluYWw7CisgICAgdm9pZCByZWNyZWF0ZVBsdWdp
bihXZWJDb3JlOjpXaWRnZXQqKSBmaW5hbDsKKyAgICB2b2lkIHJlZGlyZWN0RGF0YVRvUGx1Z2lu
KFdlYkNvcmU6OldpZGdldCogcGx1Z2luV2lkZ2V0KSBmaW5hbDsKIAogI2lmIEVOQUJMRShXRUJH
TCkKLSAgICBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgd2ViR0xQb2xpY3lGb3JVUkwoY29uc3Qg
U3RyaW5nJikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6V2ViR0xMb2FkUG9saWN5IHJl
c29sdmVXZWJHTFBvbGljeUZvclVSTChjb25zdCBTdHJpbmcmKSBjb25zdCBvdmVycmlkZTsKLSNl
bmRpZiAvLyBFTkFCTEUoV0VCR0wpCisgICAgV2ViQ29yZTo6V2ViR0xMb2FkUG9saWN5IHdlYkdM
UG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYpIGNvbnN0IGZpbmFsOworICAgIFdlYkNvcmU6Oldl
YkdMTG9hZFBvbGljeSByZXNvbHZlV2ViR0xQb2xpY3lGb3JVUkwoY29uc3QgU3RyaW5nJikgY29u
c3QgZmluYWw7CisjZW5kaWYKIAotICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6V2lkZ2V0PiBjcmVh
dGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IFdlYkNvcmU6OkludFNpemUmLCBXZWJDb3JlOjpIVE1M
QXBwbGV0RWxlbWVudCosIGNvbnN0IFdlYkNvcmU6OlVSTCYgYmFzZVVSTCwKLSAgICAgICAgY29u
c3QgVmVjdG9yPFdURjo6U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFdURjo6U3Ry
aW5nPiYgcGFyYW1WYWx1ZXMpIG92ZXJyaWRlOworICAgIFJlZlB0cjxXZWJDb3JlOjpXaWRnZXQ+
IGNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6
OkhUTUxBcHBsZXRFbGVtZW50JiwgY29uc3QgV2ViQ29yZTo6VVJMJiBiYXNlVVJMLAorICAgICAg
ICBjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8V1RG
OjpTdHJpbmc+JiBwYXJhbVZhbHVlcykgZmluYWw7CiAgICAgCi0gICAgV2ViQ29yZTo6T2JqZWN0
Q29udGVudFR5cGUgb2JqZWN0Q29udGVudFR5cGUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3Qg
V1RGOjpTdHJpbmcmIG1pbWVUeXBlKSBvdmVycmlkZTsKLSAgICBXVEY6OlN0cmluZyBvdmVycmlk
ZU1lZGlhVHlwZSgpIGNvbnN0IG92ZXJyaWRlOworICAgIFdlYkNvcmU6Ok9iamVjdENvbnRlbnRU
eXBlIG9iamVjdENvbnRlbnRUeXBlKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNvbnN0IFdURjo6U3Ry
aW5nJiBtaW1lVHlwZSkgZmluYWw7CisgICAgV1RGOjpTdHJpbmcgb3ZlcnJpZGVNZWRpYVR5cGUo
KSBjb25zdCBmaW5hbDsKICAgICAKLSAgICB2b2lkIGRpc3BhdGNoRGlkQ2xlYXJXaW5kb3dPYmpl
Y3RJbldvcmxkKFdlYkNvcmU6OkRPTVdyYXBwZXJXb3JsZCYpIG92ZXJyaWRlOworICAgIHZvaWQg
ZGlzcGF0Y2hEaWRDbGVhcldpbmRvd09iamVjdEluV29ybGQoV2ViQ29yZTo6RE9NV3JhcHBlcldv
cmxkJikgZmluYWw7CiAKLSAgICB2b2lkIHJlZ2lzdGVyRm9ySWNvbk5vdGlmaWNhdGlvbihib29s
IGxpc3Rlbikgb3ZlcnJpZGU7CisgICAgdm9pZCByZWdpc3RlckZvckljb25Ob3RpZmljYXRpb24o
Ym9vbCBsaXN0ZW4pIGZpbmFsOwogCiAjaWYgUExBVEZPUk0oSU9TKQotICAgIGJvb2wgc2hvdWxk
TG9hZE1lZGlhRWxlbWVudFVSTChjb25zdCBXZWJDb3JlOjpVUkwmKSBjb25zdCBvdmVycmlkZTsK
KyAgICBib29sIHNob3VsZExvYWRNZWRpYUVsZW1lbnRVUkwoY29uc3QgV2ViQ29yZTo6VVJMJikg
Y29uc3QgZmluYWw7CiAjZW5kaWYKIAotICAgIFJlbW90ZUFYT2JqZWN0UmVmIGFjY2Vzc2liaWxp
dHlSZW1vdGVPYmplY3QoKSBvdmVycmlkZSB7IHJldHVybiAwOyB9CisgICAgUmVtb3RlQVhPYmpl
Y3RSZWYgYWNjZXNzaWJpbGl0eVJlbW90ZU9iamVjdCgpIGZpbmFsIHsgcmV0dXJuIDA7IH0KICAg
ICAKICAgICBSZXRhaW5QdHI8V2ViRnJhbWVQb2xpY3lMaXN0ZW5lcj4gc2V0VXBQb2xpY3lMaXN0
ZW5lcihXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uLCBOU1VSTCAqYXBwTGlua1VSTCA9IG5p
bCk7CiAKLSAgICBOU0RpY3Rpb25hcnkgKmFjdGlvbkRpY3Rpb25hcnkoY29uc3QgV2ViQ29yZTo6
TmF2aWdhdGlvbkFjdGlvbiYsIFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0YXRlPikgY29uc3Q7
CisgICAgTlNEaWN0aW9uYXJ5ICphY3Rpb25EaWN0aW9uYXJ5KGNvbnN0IFdlYkNvcmU6Ok5hdmln
YXRpb25BY3Rpb24mLCBXZWJDb3JlOjpGb3JtU3RhdGUqKSBjb25zdDsKICAgICAKLSAgICBib29s
IGNhbkNhY2hlUGFnZSgpIGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wgY2FuQ2FjaGVQYWdlKCkg
Y29uc3QgZmluYWw7CiAKLSAgICBQYXNzUmVmUHRyPFdlYkNvcmU6OkZyYW1lTmV0d29ya2luZ0Nv
bnRleHQ+IGNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkgb3ZlcnJpZGU7CisgICAgUmVmPFdlYkNv
cmU6OkZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkgZmlu
YWw7CiAKICNpZiBFTkFCTEUoUkVRVUVTVF9BVVRPQ09NUExFVEUpCi0gICAgdm9pZCBkaWRSZXF1
ZXN0QXV0b2NvbXBsZXRlKFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0YXRlPikgb3ZlcnJpZGUg
eyB9CisgICAgdm9pZCBkaWRSZXF1ZXN0QXV0b2NvbXBsZXRlKFJlZjxXZWJDb3JlOjpGb3JtU3Rh
dGU+JiYpIGZpbmFsIHsgfQogI2VuZGlmCiAKLSAgICBib29sIHNob3VsZFBhaW50QnJva2VuSW1h
Z2UoY29uc3QgV2ViQ29yZTo6VVJMJikgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRQ
YWludEJyb2tlbkltYWdlKGNvbnN0IFdlYkNvcmU6OlVSTCYpIGNvbnN0IGZpbmFsOwogCiAjaWYg
VVNFKFFVSUNLX0xPT0spCi0gICAgdm9pZCBkaWRDcmVhdGVRdWlja0xvb2tIYW5kbGUoV2ViQ29y
ZTo6UXVpY2tMb29rSGFuZGxlJikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRDcmVhdGVRdWlja0xv
b2tIYW5kbGUoV2ViQ29yZTo6UXVpY2tMb29rSGFuZGxlJikgZmluYWw7CiAjZW5kaWYKIAogI2lm
IEVOQUJMRShDT05URU5UX0ZJTFRFUklORykKLSAgICB2b2lkIGNvbnRlbnRGaWx0ZXJEaWRCbG9j
a0xvYWQoV2ViQ29yZTo6Q29udGVudEZpbHRlclVuYmxvY2tIYW5kbGVyKSBvdmVycmlkZTsKKyAg
ICB2b2lkIGNvbnRlbnRGaWx0ZXJEaWRCbG9ja0xvYWQoV2ViQ29yZTo6Q29udGVudEZpbHRlclVu
YmxvY2tIYW5kbGVyKSBmaW5hbDsKICNlbmRpZgogCi0gICAgdm9pZCBwcmVmZXRjaEROUyhjb25z
dCBTdHJpbmcmKSBvdmVycmlkZTsKKyAgICB2b2lkIHByZWZldGNoRE5TKGNvbnN0IFN0cmluZyYp
IGZpbmFsOwogCiAgICAgUmV0YWluUHRyPFdlYkZyYW1lPiBtX3dlYkZyYW1lOwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVu
dC5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xp
ZW50Lm1tCmluZGV4IDRlOWIyZTI3MmQyZDM5ZGFhODBkYTBjY2E0M2RkMmZhMDk4OWMxMDUuLjYy
NWU4NWE2NGU2YzUzNmYwYjczODE4YzMwZTMwMTRhOTZlYjllYzIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1tCisrKyBi
L1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1t
CkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNi0yMDE2IEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNi0yMDE3IEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwpAQCAtMTI4LDcgKzEyOCw3IEBACiAjaW1wb3J0IDxydW50aW1lL0luaXRpYWxpemVUaHJlYWRp
bmcuaD4KICNpbXBvcnQgPHd0Zi9CbG9ja09iakNFeGNlcHRpb25zLmg+CiAjaW1wb3J0IDx3dGYv
TWFpblRocmVhZC5oPgotI2ltcG9ydCA8d3RmL1Bhc3NSZWZQdHIuaD4KKyNpbXBvcnQgPHd0Zi9S
ZWYuaD4KICNpbXBvcnQgPHd0Zi9SdW5Mb29wLmg+CiAjaW1wb3J0IDx3dGYvdGV4dC9XVEZTdHJp
bmcuaD4KIApAQCAtODg0LDcgKzg4NCw3IEBAIHN0YXRpYyBCT09MIHNob3VsZFRyeUFwcExpbmso
V2ViVmlldyAqd2ViVmlldywgY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgYWN0aW9uLCBGCiAjZW5k
aWYKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lG
b3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgYWN0aW9uLCBjb25zdCBS
ZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiBmb3JtU3RhdGUs
IGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQor
dm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5k
b3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgYWN0aW9uLCBjb25zdCBSZXNvdXJjZVJl
cXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSogZm9ybVN0YXRlLCBjb25zdCBTdHJpbmcmIGZyYW1l
TmFtZSwgRnJhbWVQb2xpY3lGdW5jdGlvbiBmdW5jdGlvbikKIHsKICAgICBXZWJWaWV3ICp3ZWJW
aWV3ID0gZ2V0V2ViVmlldyhtX3dlYkZyYW1lLmdldCgpKTsKICAgICBCT09MIHRyeUFwcExpbmsg
PSBzaG91bGRUcnlBcHBMaW5rKHdlYlZpZXcsIGFjdGlvbiwgbnVsbHB0cik7CkBAIC04OTYsNyAr
ODk2LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lG
b3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGkKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgZGVjaXNpb25MaXN0ZW5lcjpzZXRVcFBvbGljeUxpc3RlbmVyKFdURk1vdmUoZnVuY3Rpb24p
LCB0cnlBcHBMaW5rID8gKE5TVVJMICopcmVxdWVzdC51cmwoKSA6IG5pbCkuZ2V0KCldOwogfQog
Ci12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmln
YXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgYWN0aW9uLCBjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmIHJlcXVlc3QsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiBmb3JtU3RhdGUsIEZyYW1l
UG9saWN5RnVuY3Rpb24gZnVuY3Rpb24pCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNw
YXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlv
biYgYWN0aW9uLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSogZm9y
bVN0YXRlLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQogewogICAgIFdlYlZpZXcgKndl
YlZpZXcgPSBnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkpOwogICAgIEJPT0wgdHJ5QXBwTGlu
ayA9IHNob3VsZFRyeUFwcExpbmsod2ViVmlldywgYWN0aW9uLCBjb3JlKG1fd2ViRnJhbWUuZ2V0
KCkpKTsKQEAgLTkyMCwyOSArOTIwLDI4IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRp
c3BhdGNoVW5hYmxlVG9JbXBsZW1lbnRQb2xpY3koY29uc3QgUmVzb3VyY2VFcnJvciYKICAgICBb
W3dlYlZpZXcgX3BvbGljeURlbGVnYXRlRm9yd2FyZGVyXSB3ZWJWaWV3OndlYlZpZXcgdW5hYmxl
VG9JbXBsZW1lbnRQb2xpY3lXaXRoRXJyb3I6ZXJyb3IgZnJhbWU6bV93ZWJGcmFtZS5nZXQoKV07
ICAgIAogfQogCi1zdGF0aWMgTlNEaWN0aW9uYXJ5ICptYWtlRm9ybUZpZWxkVmFsdWVzRGljdGlv
bmFyeShGb3JtU3RhdGUqIGZvcm1TdGF0ZSkKK3N0YXRpYyBOU0RpY3Rpb25hcnkgKm1ha2VGb3Jt
RmllbGRWYWx1ZXNEaWN0aW9uYXJ5KEZvcm1TdGF0ZSYgZm9ybVN0YXRlKQogewotICAgIGNvbnN0
IFN0cmluZ1BhaXJWZWN0b3ImIHRleHRGaWVsZFZhbHVlcyA9IGZvcm1TdGF0ZS0+dGV4dEZpZWxk
VmFsdWVzKCk7CisgICAgYXV0byYgdGV4dEZpZWxkVmFsdWVzID0gZm9ybVN0YXRlLnRleHRGaWVs
ZFZhbHVlcygpOwogICAgIHNpemVfdCBzaXplID0gdGV4dEZpZWxkVmFsdWVzLnNpemUoKTsKICAg
ICBOU011dGFibGVEaWN0aW9uYXJ5ICpkaWN0aW9uYXJ5ID0gW1tOU011dGFibGVEaWN0aW9uYXJ5
IGFsbG9jXSBpbml0V2l0aENhcGFjaXR5OnNpemVdOwotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBp
IDwgc2l6ZTsgKytpKQotICAgICAgICBbZGljdGlvbmFyeSBzZXRPYmplY3Q6dGV4dEZpZWxkVmFs
dWVzW2ldLnNlY29uZCBmb3JLZXk6dGV4dEZpZWxkVmFsdWVzW2ldLmZpcnN0XTsKLQorICAgIGZv
ciAoYXV0byYgdmFsdWUgOiB0ZXh0RmllbGRWYWx1ZXMpCisgICAgICAgIFtkaWN0aW9uYXJ5IHNl
dE9iamVjdDp2YWx1ZS5zZWNvbmQgZm9yS2V5OnZhbHVlLmZpcnN0XTsKICAgICByZXR1cm4gW2Rp
Y3Rpb25hcnkgYXV0b3JlbGVhc2VdOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpk
aXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoUGFzc1JlZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+
IGZvcm1TdGF0ZSkKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRT
dWJtaXRFdmVudChSZWY8V2ViQ29yZTo6Rm9ybVN0YXRlPiYmIGZvcm1TdGF0ZSkKIHsKICAgICBp
ZCA8V2ViRm9ybURlbGVnYXRlPiBmb3JtRGVsZWdhdGUgPSBbZ2V0V2ViVmlldyhtX3dlYkZyYW1l
LmdldCgpKSBfZm9ybURlbGVnYXRlXTsKICAgICBpZiAoIWZvcm1EZWxlZ2F0ZSkKICAgICAgICAg
cmV0dXJuOwogCi0gICAgRE9NSFRNTEZvcm1FbGVtZW50ICpmb3JtRWxlbWVudCA9IGtpdChmb3Jt
U3RhdGUtPmZvcm0oKSk7CisgICAgRE9NSFRNTEZvcm1FbGVtZW50ICpmb3JtRWxlbWVudCA9IGtp
dCgmZm9ybVN0YXRlLT5mb3JtKCkpOwogICAgIE5TRGljdGlvbmFyeSAqdmFsdWVzID0gbWFrZUZv
cm1GaWVsZFZhbHVlc0RpY3Rpb25hcnkoZm9ybVN0YXRlLmdldCgpKTsKICAgICBDYWxsRm9ybURl
bGVnYXRlKGdldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSksIEBzZWxlY3Rvcih3aWxsU2VuZFN1
Ym1pdEV2ZW50VG9Gb3JtOmluRnJhbWU6d2l0aFZhbHVlczopLCBmb3JtRWxlbWVudCwgbV93ZWJG
cmFtZS5nZXQoKSwgdmFsdWVzKTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hXaWxsU3VibWl0Rm9ybShQYXNzUmVmUHRyPEZvcm1TdGF0ZT4gZm9ybVN0YXRlLCBGcmFt
ZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hXaWxsU3VibWl0Rm9ybShGb3JtU3RhdGUmIGZvcm1TdGF0ZSwgRnJhbWVQb2xpY3lGdW5j
dGlvbiBmdW5jdGlvbikKIHsKICAgICBpZCA8V2ViRm9ybURlbGVnYXRlPiBmb3JtRGVsZWdhdGUg
PSBbZ2V0V2ViVmlldyhtX3dlYkZyYW1lLmdldCgpKSBfZm9ybURlbGVnYXRlXTsKICAgICBpZiAo
IWZvcm1EZWxlZ2F0ZSkgewpAQCAtOTUwLDggKzk0OSw4IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0oUGFzc1JlZlB0cjxGb3JtU3RhdGU+IGZvcm1T
dGF0CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBOU0RpY3Rpb25hcnkgKnZhbHVlcyA9
IG1ha2VGb3JtRmllbGRWYWx1ZXNEaWN0aW9uYXJ5KGZvcm1TdGF0ZS5nZXQoKSk7Ci0gICAgQ2Fs
bEZvcm1EZWxlZ2F0ZShnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkpLCBAc2VsZWN0b3IoZnJh
bWU6c291cmNlRnJhbWU6d2lsbFN1Ym1pdEZvcm06d2l0aFZhbHVlczpzdWJtaXNzaW9uTGlzdGVu
ZXI6KSwgbV93ZWJGcmFtZS5nZXQoKSwga2l0KGZvcm1TdGF0ZS0+c291cmNlRG9jdW1lbnQoKS0+
ZnJhbWUoKSksIGtpdChmb3JtU3RhdGUtPmZvcm0oKSksIHZhbHVlcywgc2V0VXBQb2xpY3lMaXN0
ZW5lcihXVEZNb3ZlKGZ1bmN0aW9uKSkuZ2V0KCkpOworICAgIE5TRGljdGlvbmFyeSAqdmFsdWVz
ID0gbWFrZUZvcm1GaWVsZFZhbHVlc0RpY3Rpb25hcnkoZm9ybVN0YXRlKTsKKyAgICBDYWxsRm9y
bURlbGVnYXRlKGdldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSksIEBzZWxlY3RvcihmcmFtZTpz
b3VyY2VGcmFtZTp3aWxsU3VibWl0Rm9ybTp3aXRoVmFsdWVzOnN1Ym1pc3Npb25MaXN0ZW5lcjop
LCBtX3dlYkZyYW1lLmdldCgpLCBraXQoZm9ybVN0YXRlLnNvdXJjZURvY3VtZW50KCkuZnJhbWUo
KSksIGtpdCgmZm9ybVN0YXRlLmZvcm0oKSksIHZhbHVlcywgc2V0VXBQb2xpY3lMaXN0ZW5lcihX
VEZNb3ZlKGZ1bmN0aW9uKSkuZ2V0KCkpOwogfQogCiB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50
OjpyZXZlcnRUb1Byb3Zpc2lvbmFsU3RhdGUoRG9jdW1lbnRMb2FkZXIqIGxvYWRlcikKQEAgLTE1
NTIsNyArMTU1MSw3IEBAIHN0YXRpYyBjb25zdCBNb3VzZUV2ZW50KiBmaW5kTW91c2VFdmVudChj
b25zdCBFdmVudCogZXZlbnQpCiAgICAgcmV0dXJuIDA7CiB9CiAKLU5TRGljdGlvbmFyeSAqV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmFjdGlvbkRpY3Rpb25hcnkoY29uc3QgTmF2aWdhdGlvbkFjdGlv
biYgYWN0aW9uLCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4gZm9ybVN0YXRlKSBjb25zdAorTlNEaWN0
aW9uYXJ5ICpXZWJGcmFtZUxvYWRlckNsaWVudDo6YWN0aW9uRGljdGlvbmFyeShjb25zdCBOYXZp
Z2F0aW9uQWN0aW9uJiBhY3Rpb24sIEZvcm1TdGF0ZSogZm9ybVN0YXRlKSBjb25zdAogewogICAg
IHVuc2lnbmVkIG1vZGlmaWVyRmxhZ3MgPSAwOwogICAgIGNvbnN0IEV2ZW50KiBldmVudCA9IGFj
dGlvbi5ldmVudCgpOwpAQCAtMTU5MywxMCArMTU5Miw4IEBAIE5TRGljdGlvbmFyeSAqV2ViRnJh
bWVMb2FkZXJDbGllbnQ6OmFjdGlvbkRpY3Rpb25hcnkoY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYg
YWN0CiAgICAgICAgICAgICBbcmVzdWx0IHNldE9iamVjdDpbTlNOdW1iZXIgbnVtYmVyV2l0aElu
dDpXZWJDb3JlOjpOb0J1dHRvbl0gZm9yS2V5OldlYkFjdGlvbkJ1dHRvbktleV07CiAgICAgfQog
Ci0gICAgaWYgKGZvcm1TdGF0ZSkgewotICAgICAgICBBU1NFUlQoZm9ybVN0YXRlLT5mb3JtKCkp
OwotICAgICAgICBbcmVzdWx0IHNldE9iamVjdDpraXQoZm9ybVN0YXRlLT5mb3JtKCkpIGZvcktl
eTpXZWJBY3Rpb25Gb3JtS2V5XTsKLSAgICB9CisgICAgaWYgKGZvcm1TdGF0ZSkKKyAgICAgICAg
W3Jlc3VsdCBzZXRPYmplY3Q6a2l0KCZmb3JtU3RhdGUtPmZvcm0oKSkgZm9yS2V5OldlYkFjdGlv
bkZvcm1LZXldOwogCiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KQEAgLTE2MjIsNyArMTYxOSw3IEBA
IGJvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNhbkNhY2hlUGFnZSgpIGNvbnN0CiAgICAgcmV0
dXJuIHRydWU7CiB9CiAKLVJlZlB0cjxGcmFtZT4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0
ZUZyYW1lKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIG5hbWUsIEhUTUxGcmFtZU93bmVy
RWxlbWVudCogb3duZXJFbGVtZW50LAorUmVmUHRyPEZyYW1lPiBXZWJGcmFtZUxvYWRlckNsaWVu
dDo6Y3JlYXRlRnJhbWUoY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgbmFtZSwgSFRNTEZy
YW1lT3duZXJFbGVtZW50JiBvd25lckVsZW1lbnQsCiAgICAgY29uc3QgU3RyaW5nJiByZWZlcnJl
ciwgYm9vbCBhbGxvd3NTY3JvbGxpbmcsIGludCBtYXJnaW5XaWR0aCwgaW50IG1hcmdpbkhlaWdo
dCkKIHsKICAgICBCRUdJTl9CTE9DS19PQkpDX0VYQ0VQVElPTlM7CkBAIC0xNjMxLDcgKzE2Mjgs
NyBAQCBSZWZQdHI8RnJhbWU+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVGcmFtZShjb25z
dCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiBuYQogICAgIAogICAgIFdlYkZyYW1lVmlldyAqY2hp
bGRWaWV3ID0gW1tXZWJGcmFtZVZpZXcgYWxsb2NdIGluaXRdOwogICAgIAotICAgIFJlZlB0cjxG
cmFtZT4gcmVzdWx0ID0gW1dlYkZyYW1lIF9jcmVhdGVTdWJmcmFtZVdpdGhPd25lckVsZW1lbnQ6
b3duZXJFbGVtZW50IGZyYW1lTmFtZTpuYW1lIGZyYW1lVmlldzpjaGlsZFZpZXddOworICAgIFJl
ZlB0cjxGcmFtZT4gcmVzdWx0ID0gW1dlYkZyYW1lIF9jcmVhdGVTdWJmcmFtZVdpdGhPd25lckVs
ZW1lbnQ6Jm93bmVyRWxlbWVudCBmcmFtZU5hbWU6bmFtZSBmcmFtZVZpZXc6Y2hpbGRWaWV3XTsK
ICAgICBbY2hpbGRWaWV3IHJlbGVhc2VdOwogCiAgICAgV2ViRnJhbWUgKm5ld0ZyYW1lID0ga2l0
KHJlc3VsdC5nZXQoKSk7CkBAIC0xOTA5LDcgKzE5MDYsNyBAQCBzdGF0aWMgYm9vbCBzaG91bGRC
bG9ja1BsdWdpbihXZWJCYXNlUGx1Z2luUGFja2FnZSAqcGx1Z2luUGFja2FnZSkKICNlbmRpZgog
fQogCi1SZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlUGx1Z2luKGNv
bnN0IEludFNpemUmIHNpemUsIEhUTUxQbHVnSW5FbGVtZW50KiBlbGVtZW50LCBjb25zdCBVUkwm
IHVybCwKK1JlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4o
Y29uc3QgSW50U2l6ZSYgc2l6ZSwgSFRNTFBsdWdJbkVsZW1lbnQmIGVsZW1lbnQsIGNvbnN0IFVS
TCYgdXJsLAogICAgIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0
b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUsIGJvb2wgbG9h
ZE1hbnVhbGx5KQogewogICAgIEJFR0lOX0JMT0NLX09CSkNfRVhDRVBUSU9OUzsKQEAgLTE5NDgs
NyArMTk0NSw3IEBAIFJlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQ
bHVnaW4oY29uc3QgSW50U2l6ZSYgc2l6ZSwgSFRNTFBsdWdJCiAgICAgICAgICAgICBhdHRyaWJ1
dGVzLCBXZWJQbHVnSW5BdHRyaWJ1dGVzS2V5LAogICAgICAgICAgICAgW05TTnVtYmVyIG51bWJl
cldpdGhJbnQ6bG9hZE1hbnVhbGx5ID8gV2ViUGx1Z0luTW9kZUZ1bGwgOiBXZWJQbHVnSW5Nb2Rl
RW1iZWRdLCBXZWJQbHVnSW5Nb2RlS2V5LAogICAgICAgICAgICAgW05TTnVtYmVyIG51bWJlcldp
dGhCb29sOiFsb2FkTWFudWFsbHldLCBXZWJQbHVnSW5TaG91bGRMb2FkTWFpblJlc291cmNlS2V5
LAotICAgICAgICAgICAga2l0KGVsZW1lbnQpLCBXZWJQbHVnSW5Db250YWluaW5nRWxlbWVudEtl
eSwKKyAgICAgICAgICAgIGtpdCgmZWxlbWVudCksIFdlYlBsdWdJbkNvbnRhaW5pbmdFbGVtZW50
S2V5LAogICAgICAgICAgICAgLy8gRklYTUU6IFdlIHNob3VsZCBiZSBwYXNzaW5nIGJhc2UgVVJM
LCBzZWUgPGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNTIxNT4uCiAg
ICAgICAgICAgICBwbHVnaW5VUkwsIFdlYlBsdWdJbkJhc2VVUkxLZXksIC8vIHBsdWdpblVSTCBt
aWdodCBiZSBuaWwsIHNvIGFkZCBpdCBsYXN0CiAgICAgICAgICAgICBuaWxdOwpAQCAtMTk5NCwx
MSArMTk5MSwxMSBAQCBSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRl
UGx1Z2luKGNvbnN0IEludFNpemUmIHNpemUsIEhUTUxQbHVnSQogICAgIGlmIChwbHVnaW5QYWNr
YWdlKSB7CiAgICAgICAgIGlmIChzaG91bGRCbG9ja1BsdWdpbihwbHVnaW5QYWNrYWdlKSkgewog
ICAgICAgICAgICAgZXJyb3JDb2RlID0gV2ViS2l0RXJyb3JCbG9ja2VkUGx1Z0luVmVyc2lvbjsK
LSAgICAgICAgICAgIGlmIChpczxSZW5kZXJFbWJlZGRlZE9iamVjdD4oZWxlbWVudC0+cmVuZGVy
ZXIoKSkpCi0gICAgICAgICAgICAgICAgZG93bmNhc3Q8UmVuZGVyRW1iZWRkZWRPYmplY3Q+KCpl
bGVtZW50LT5yZW5kZXJlcigpKS5zZXRQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbihSZW5kZXJF
bWJlZGRlZE9iamVjdDo6SW5zZWN1cmVQbHVnaW5WZXJzaW9uKTsKKyAgICAgICAgICAgIGlmIChp
czxSZW5kZXJFbWJlZGRlZE9iamVjdD4oZWxlbWVudC5yZW5kZXJlcigpKSkKKyAgICAgICAgICAg
ICAgICBkb3duY2FzdDxSZW5kZXJFbWJlZGRlZE9iamVjdD4oKmVsZW1lbnQucmVuZGVyZXIoKSku
c2V0UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24oUmVuZGVyRW1iZWRkZWRPYmplY3Q6Okluc2Vj
dXJlUGx1Z2luVmVyc2lvbik7CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBpZiAoW3Bs
dWdpblBhY2thZ2UgaXNLaW5kT2ZDbGFzczpbV2ViUGx1Z2luUGFja2FnZSBjbGFzc11dKQotICAg
ICAgICAgICAgICAgIHZpZXcgPSBwbHVnaW5WaWV3KG1fd2ViRnJhbWUuZ2V0KCksIChXZWJQbHVn
aW5QYWNrYWdlICopcGx1Z2luUGFja2FnZSwgYXR0cmlidXRlS2V5cywga2l0KHBhcmFtVmFsdWVz
KSwgYmFzZVVSTCwga2l0KGVsZW1lbnQpLCBsb2FkTWFudWFsbHkpOworICAgICAgICAgICAgICAg
IHZpZXcgPSBwbHVnaW5WaWV3KG1fd2ViRnJhbWUuZ2V0KCksIChXZWJQbHVnaW5QYWNrYWdlICop
cGx1Z2luUGFja2FnZSwgYXR0cmlidXRlS2V5cywga2l0KHBhcmFtVmFsdWVzKSwgYmFzZVVSTCwg
a2l0KCZlbGVtZW50KSwgbG9hZE1hbnVhbGx5KTsKICNpZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lO
X0FQSSkKICAgICAgICAgICAgIGVsc2UgaWYgKFtwbHVnaW5QYWNrYWdlIGlzS2luZE9mQ2xhc3M6
W1dlYk5ldHNjYXBlUGx1Z2luUGFja2FnZSBjbGFzc11dKSB7CiAgICAgICAgICAgICAgICAgV2Vi
QmFzZU5ldHNjYXBlUGx1Z2luVmlldyAqcGx1Z2luVmlldyA9IFtbW05FVFNDQVBFX1BMVUdJTl9W
SUVXIGFsbG9jXQpAQCAtMjAxMCw3ICsyMDA3LDcgQEAgUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiBzaXplLCBIVE1MUGx1Z0kK
ICAgICAgICAgICAgICAgICAgICAgYXR0cmlidXRlS2V5czphdHRyaWJ1dGVLZXlzCiAgICAgICAg
ICAgICAgICAgICAgIGF0dHJpYnV0ZVZhbHVlczpraXQocGFyYW1WYWx1ZXMpCiAgICAgICAgICAg
ICAgICAgICAgIGxvYWRNYW51YWxseTpsb2FkTWFudWFsbHkKLSAgICAgICAgICAgICAgICAgICAg
ZWxlbWVudDplbGVtZW50XSBhdXRvcmVsZWFzZV07CisgICAgICAgICAgICAgICAgICAgIGVsZW1l
bnQ6JmVsZW1lbnRdIGF1dG9yZWxlYXNlXTsKIAogICAgICAgICAgICAgICAgIHJldHVybiBhZG9w
dFJlZihuZXcgTmV0c2NhcGVQbHVnaW5XaWRnZXQocGx1Z2luVmlldykpOwogICAgICAgICAgICAg
fQpAQCAtMjA4MSw3ICsyMDc4LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6cmVkaXJl
Y3REYXRhVG9QbHVnaW4oV2lkZ2V0KiBwbHVnaW5XaWRnZXQpCiAgICAgRU5EX0JMT0NLX09CSkNf
RVhDRVBUSU9OUzsKIH0KICAgICAKLVBhc3NSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNs
aWVudDo6Y3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXplJiBzaXplLCBIVE1MQXBw
bGV0RWxlbWVudCogZWxlbWVudCwgY29uc3QgVVJMJiBiYXNlVVJMLCAKK1JlZlB0cjxXaWRnZXQ+
IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNp
emUmIHNpemUsIEhUTUxBcHBsZXRFbGVtZW50JiBlbGVtZW50LCBjb25zdCBVUkwmIGJhc2VVUkws
CiAgICAgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJp
bmc+JiBwYXJhbVZhbHVlcykKIHsKICAgICBCRUdJTl9CTE9DS19PQkpDX0VYQ0VQVElPTlM7CkBA
IC0yMDk5LDggKzIwOTYsOCBAQCBQYXNzUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYgcwogICAgIGlmIChwbHVn
aW5QYWNrYWdlKSB7CiAgICAgICAgIGlmIChzaG91bGRCbG9ja1BsdWdpbihwbHVnaW5QYWNrYWdl
KSkgewogICAgICAgICAgICAgZXJyb3JDb2RlID0gV2ViS2l0RXJyb3JCbG9ja2VkUGx1Z0luVmVy
c2lvbjsKLSAgICAgICAgICAgIGlmIChpczxSZW5kZXJFbWJlZGRlZE9iamVjdD4oZWxlbWVudC0+
cmVuZGVyZXIoKSkpCi0gICAgICAgICAgICAgICAgZG93bmNhc3Q8UmVuZGVyRW1iZWRkZWRPYmpl
Y3Q+KCplbGVtZW50LT5yZW5kZXJlcigpKS5zZXRQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbihS
ZW5kZXJFbWJlZGRlZE9iamVjdDo6SW5zZWN1cmVQbHVnaW5WZXJzaW9uKTsKKyAgICAgICAgICAg
IGlmIChpczxSZW5kZXJFbWJlZGRlZE9iamVjdD4oZWxlbWVudC5yZW5kZXJlcigpKSkKKyAgICAg
ICAgICAgICAgICBkb3duY2FzdDxSZW5kZXJFbWJlZGRlZE9iamVjdD4oKmVsZW1lbnQucmVuZGVy
ZXIoKSkuc2V0UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24oUmVuZGVyRW1iZWRkZWRPYmplY3Q6
Okluc2VjdXJlUGx1Z2luVmVyc2lvbik7CiAgICAgICAgIH0gZWxzZSB7CiAjaWYgRU5BQkxFKE5F
VFNDQVBFX1BMVUdJTl9BUEkpCiAgICAgICAgICAgICBpZiAoW3BsdWdpblBhY2thZ2UgaXNLaW5k
T2ZDbGFzczpbV2ViTmV0c2NhcGVQbHVnaW5QYWNrYWdlIGNsYXNzXV0pIHsKQEAgLTIxMTIsNyAr
MjEwOSw3IEBAIFBhc3NSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRl
SmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXplJiBzCiAgICAgICAgICAgICAgICAgICAgIGF0
dHJpYnV0ZUtleXM6a2l0KHBhcmFtTmFtZXMpCiAgICAgICAgICAgICAgICAgICAgIGF0dHJpYnV0
ZVZhbHVlczpraXQocGFyYW1WYWx1ZXMpCiAgICAgICAgICAgICAgICAgICAgIGxvYWRNYW51YWxs
eTpOTwotICAgICAgICAgICAgICAgICAgICBlbGVtZW50OmVsZW1lbnRdIGF1dG9yZWxlYXNlXTsK
KyAgICAgICAgICAgICAgICAgICAgZWxlbWVudDomZWxlbWVudF0gYXV0b3JlbGVhc2VdOwogICAg
ICAgICAgICAgICAgIGlmICh2aWV3KQogICAgICAgICAgICAgICAgICAgICByZXR1cm4gYWRvcHRS
ZWYobmV3IE5ldHNjYXBlUGx1Z2luV2lkZ2V0KHN0YXRpY19jYXN0PFdlYkJhc2VOZXRzY2FwZVBs
dWdpblZpZXcgKj4odmlldykpKTsKICAgICAgICAgICAgIH0KQEAgLTIyMDksNyArMjIwNiw3IEBA
IHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnJlZ2lzdGVyRm9ySWNvbk5vdGlmaWNhdGlvbihi
b29sIGxpc3RlbikKICNlbmRpZgogfQogCi1QYXNzUmVmUHRyPEZyYW1lTmV0d29ya2luZ0NvbnRl
eHQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVOZXR3b3JraW5nQ29udGV4dCgpCitSZWY8
RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdv
cmtpbmdDb250ZXh0KCkKIHsKICAgICByZXR1cm4gV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dDo6
Y3JlYXRlKGNvcmUobV93ZWJGcmFtZS5nZXQoKSkpOwogfQpAQCAtMjI4Myw3ICsyMjgwLDcgQEAg
dm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlkQ3JlYXRlUXVpY2tMb29rSGFuZGxlKFdlYkNv
cmU6OlF1aWNrTG9va0hhbmRsZSYgaGEKICAgICAgICAgICAgIHJlbW92ZVFMUHJldmlld0NvbnZl
cnRlckZvclVSTChtX2ZpcnN0UmVxdWVzdFVSTC5nZXQoKSk7CiAgICAgICAgIH0KICAgICB9Owot
ICAgIGhhbmRsZS5zZXRDbGllbnQoYWRvcHRSZWYobmV3IFF1aWNrTG9va0RvY3VtZW50V3JpdGVy
KGhhbmRsZSkpKTsKKyAgICBoYW5kbGUuc2V0Q2xpZW50KGFkb3B0UmVmKCpuZXcgUXVpY2tMb29r
RG9jdW1lbnRXcml0ZXIoaGFuZGxlKSkpOwogfQogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQuaCBi
L1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRl
eHQuaAppbmRleCBiMDhkNTZlMThjOWM4ZWU2NDE4MGEyMTRmNWZiYjBlZGUwNGY1YTRkLi45N2Uw
ZWFkOWYwOGI3ZjM2MTI3OGEzZDc1NmQ2MjhhNWZhZWFhOTE2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0LmgKKysr
IGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVOZXR3b3JraW5nQ29u
dGV4dC5oCkBAIC0yMywxNiArMjMsMTUgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KICAqLwogCi0jaWZuZGVmIFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHRfaAotI2RlZmlu
ZSBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8
V2ViQ29yZS9GcmFtZU5ldHdvcmtpbmdDb250ZXh0Lmg+CiAKIGNsYXNzIFdlYkZyYW1lTmV0d29y
a2luZ0NvbnRleHQgOiBwdWJsaWMgV2ViQ29yZTo6RnJhbWVOZXR3b3JraW5nQ29udGV4dCB7CiBw
dWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8V2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dD4g
Y3JlYXRlKFdlYkNvcmU6OkZyYW1lKiBmcmFtZSkKKyAgICBzdGF0aWMgUmVmPFdlYkZyYW1lTmV0
d29ya2luZ0NvbnRleHQ+IGNyZWF0ZShXZWJDb3JlOjpGcmFtZSogZnJhbWUpCiAgICAgewotICAg
ICAgICByZXR1cm4gYWRvcHRSZWYobmV3IFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQoZnJhbWUp
KTsKKyAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4
dChmcmFtZSkpOwogICAgIH0KIAogICAgIHN0YXRpYyBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNl
c3Npb24mIGVuc3VyZVByaXZhdGVCcm93c2luZ1Nlc3Npb24oKTsKQEAgLTUxLDcgKzUwLDQgQEAg
cHJpdmF0ZToKICAgICBTdHJpbmcgc291cmNlQXBwbGljYXRpb25JZGVudGlmaWVyKCkgY29uc3Qg
b3ZlcnJpZGU7CiAgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkRXJyb3IoY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgY29uc3Qgb3ZlcnJpZGU7CiAgICAgV2ViQ29yZTo6
TmV0d29ya1N0b3JhZ2VTZXNzaW9uJiBzdG9yYWdlU2Vzc2lvbigpIGNvbnN0IG92ZXJyaWRlOwot
CiB9OwotCi0jZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBw
b3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJD
b3JlU3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0Lm1tCmluZGV4IDkzZTc0YmJlNjI4
NGI2M2MyMzIxMjlkMTc0OGUwZDkxNjJkMWExOWMuLmVlZjcwMmM1NmZkMGVkNjdkMzcwZjM0YTY2
OTllMjUzNjcyZDgwNGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBw
b3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMv
V2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dC5tbQpAQCAtNDcsMTYgKzQ3
LDEzIEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogTmV0d29ya1N0b3JhZ2VTZXNzaW9uJiBX
ZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0OjplbnN1cmVQcml2YXRlQnJvd3NpbmdTZXNzaW9uKCkK
IHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwotCiAgICAgTmV0d29ya1N0b3JhZ2VTZXNz
aW9uOjplbnN1cmVQcml2YXRlQnJvd3NpbmdTZXNzaW9uKFNlc3Npb25JRDo6bGVnYWN5UHJpdmF0
ZVNlc3Npb25JRCgpLCBbW05TQnVuZGxlIG1haW5CdW5kbGVdIGJ1bmRsZUlkZW50aWZpZXJdKTsK
LQogICAgIHJldHVybiAqTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpzdG9yYWdlU2Vzc2lvbihTZXNz
aW9uSUQ6OmxlZ2FjeVByaXZhdGVTZXNzaW9uSUQoKSk7CiB9CiAKIHZvaWQgV2ViRnJhbWVOZXR3
b3JraW5nQ29udGV4dDo6ZGVzdHJveVByaXZhdGVCcm93c2luZ1Nlc3Npb24oKQogewogICAgIEFT
U0VSVChpc01haW5UaHJlYWQoKSk7Ci0KICAgICBOZXR3b3JrU3RvcmFnZVNlc3Npb246OmRlc3Ry
b3lTZXNzaW9uKFNlc3Npb25JRDo6bGVnYWN5UHJpdmF0ZVNlc3Npb25JRCgpKTsKIH0KIApAQCAt
NjgsMTkgKzY1LDE5IEBAIGJvb2wgV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dDo6bG9jYWxGaWxl
Q29udGVudFNuaWZmaW5nRW5hYmxlZCgpIGNvbnN0CiBTY2hlZHVsZVBhaXJIYXNoU2V0KiBXZWJG
cmFtZU5ldHdvcmtpbmdDb250ZXh0OjpzY2hlZHVsZWRSdW5Mb29wUGFpcnMoKSBjb25zdAogewog
ICAgIGlmICghZnJhbWUoKSB8fCAhZnJhbWUoKS0+cGFnZSgpKQotICAgICAgICByZXR1cm4gMDsK
KyAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgcmV0dXJuIGZyYW1lKCktPnBhZ2UoKS0+c2No
ZWR1bGVkUnVuTG9vcFBhaXJzKCk7CiB9CiAKIFJldGFpblB0cjxDRkRhdGFSZWY+IFdlYkZyYW1l
TmV0d29ya2luZ0NvbnRleHQ6OnNvdXJjZUFwcGxpY2F0aW9uQXVkaXREYXRhKCkgY29uc3QKIHsK
ICAgICBpZiAoIWZyYW1lKCkgfHwgIWZyYW1lKCktPnBhZ2UoKSkKLSAgICAgICAgcmV0dXJuIDA7
CisgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIAogICAgIFdlYlZpZXcgKndlYnZpZXcgPSBr
aXQoZnJhbWUoKS0+cGFnZSgpKTsKLSAgICAKICAgICBpZiAoIXdlYnZpZXcpCi0gICAgICAgIHJl
dHVybiAwOworICAgICAgICByZXR1cm4gbnVsbHB0cjsKKwogICAgIHJldHVybiByZWludGVycHJl
dF9jYXN0PENGRGF0YVJlZj4od2Vidmlldy5fc291cmNlQXBwbGljYXRpb25BdWRpdERhdGEpOwog
fQogCkBAIC05OCw3ICs5NSw3IEBAIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgV2ViRnJhbWVOZXR3
b3JraW5nQ29udGV4dDo6c3RvcmFnZVNlc3Npb24oKSBjb25zdAogewogICAgIEFTU0VSVChpc01h
aW5UaHJlYWQoKSk7CiAgICAgaWYgKGZyYW1lKCkgJiYgZnJhbWUoKS0+cGFnZSgpLT5zZXNzaW9u
SUQoKS5pc0VwaGVtZXJhbCgpKSB7Ci0gICAgICAgIGlmIChOZXR3b3JrU3RvcmFnZVNlc3Npb24q
IHNlc3Npb24gPSBOZXR3b3JrU3RvcmFnZVNlc3Npb246OnN0b3JhZ2VTZXNzaW9uKFNlc3Npb25J
RDo6bGVnYWN5UHJpdmF0ZVNlc3Npb25JRCgpKSkKKyAgICAgICAgaWYgKGF1dG8qIHNlc3Npb24g
PSBOZXR3b3JrU3RvcmFnZVNlc3Npb246OnN0b3JhZ2VTZXNzaW9uKFNlc3Npb25JRDo6bGVnYWN5
UHJpdmF0ZVNlc3Npb25JRCgpKSkKICAgICAgICAgICAgIHJldHVybiAqc2Vzc2lvbjsKICAgICAg
ICAgLy8gU29tZSByZXF1ZXN0cyBtYXkgc3RpbGwgYmUgY29taW5nIHNob3J0bHkgYmVmb3JlIFdl
YkNvcmUgdXBkYXRlcyB0aGUgc2Vzc2lvbiBJRCBhbmQgYWZ0ZXIgV2ViS2l0IGRlc3Ryb3lzIHRo
ZSBwcml2YXRlIGJyb3dzaW5nIHNlc3Npb24uCiAgICAgICAgIExPR19FUlJPUigiSW52YWxpZCBz
ZXNzaW9uIElELiBQbGVhc2UgZmlsZSBhIGJ1ZyB1bmxlc3MgeW91IGp1c3QgZGlzYWJsZWQgcHJp
dmF0ZSBicm93c2luZywgaW4gd2hpY2ggY2FzZSBpdCdzIGFuIGV4cGVjdGVkIHJhY2UuIik7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJPcGVuUGFuZWxS
ZXN1bHRMaXN0ZW5lci5oIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViT3Bl
blBhbmVsUmVzdWx0TGlzdGVuZXIuaAppbmRleCBhY2M2MmNhZDc0MDFjNTVkZmM3ODA4N2FlYzlm
YmJiNGJhY2MyOTUyLi4wZTQwYWEyZWQyNTkzZDE3NWM1MGQ4ZDA3YTI3YWIwNmRlMWQxZTU2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJPcGVuUGFuZWxS
ZXN1bHRMaXN0ZW5lci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dl
Yk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJp
Z2h0IChDKSAyMDA4IEFwcGxlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmln
aHQgKEMpIDIwMDgtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW1wb3J0
ICJXZWJVSURlbGVnYXRlLmgiCi0jaW1wb3J0IDx3dGYvRm9yd2FyZC5oPgorI2ltcG9ydCA8d3Rm
L1JlZlB0ci5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiBjbGFzcyBGaWxlQ2hvb3NlcjsKQEAg
LTMyLDkgKzMyLDkgQEAgY2xhc3MgRmlsZUNob29zZXI7CiAKIEBpbnRlcmZhY2UgV2ViT3BlblBh
bmVsUmVzdWx0TGlzdGVuZXIgOiBOU09iamVjdCA8V2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXI+
CiB7Ci0gICAgV2ViQ29yZTo6RmlsZUNob29zZXIqIF9jaG9vc2VyOworICAgIFJlZlB0cjxXZWJD
b3JlOjpGaWxlQ2hvb3Nlcj4gX2Nob29zZXI7CiB9CiAKLS0gKGlkKWluaXRXaXRoQ2hvb3Nlcjoo
UGFzc1JlZlB0cjxXZWJDb3JlOjpGaWxlQ2hvb3Nlcj4pY2hvb3NlcjsKKy0gKGlkKWluaXRXaXRo
Q2hvb3NlcjooV2ViQ29yZTo6RmlsZUNob29zZXImKWNob29zZXI7CiAKIEBlbmQKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYk9wZW5QYW5lbFJlc3VsdExp
c3RlbmVyLm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViT3BlblBhbmVs
UmVzdWx0TGlzdGVuZXIubW0KaW5kZXggYjZiZDI2N2JkZWQ4MWE3YjRmODdmZDhjZjNjZGQwMGFj
NDEyYThlYS4uOGIyNTIwOTA3MDNhZTQ3ZDdiYmFmYWE2NWIzMjZmZWVmY2MzMDQ3YiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViT3BlblBhbmVsUmVzdWx0
TGlzdGVuZXIubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViT3Bl
blBhbmVsUmVzdWx0TGlzdGVuZXIubW0KQEAgLTM2LDMwICszNiwxOCBAQCB1c2luZyBuYW1lc3Bh
Y2UgV2ViQ29yZTsKIAogQGltcGxlbWVudGF0aW9uIFdlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVy
CiAKLS0gKGlkKWluaXRXaXRoQ2hvb3NlcjooUGFzc1JlZlB0cjxGaWxlQ2hvb3Nlcj4pY2hvb3Nl
cgorLSAoaWQpaW5pdFdpdGhDaG9vc2VyOihGaWxlQ2hvb3NlciYpY2hvb3NlcgogewogICAgIHNl
bGYgPSBbc3VwZXIgaW5pdF07CiAgICAgaWYgKCFzZWxmKQogICAgICAgICByZXR1cm4gbmlsOwot
ICAgIF9jaG9vc2VyID0gY2hvb3Nlci5sZWFrUmVmKCk7CisgICAgX2Nob29zZXIgPSAmY2hvb3Nl
cjsKICAgICByZXR1cm4gc2VsZjsKIH0KIAotI2lmbmRlZiBOREVCVUcKLS0gKHZvaWQpZGVhbGxv
YwotewotICAgIEFTU0VSVCghX2Nob29zZXIpOwotICAgIFtzdXBlciBkZWFsbG9jXTsKLX0KLSNl
bmRpZgotCiAtICh2b2lkKWNhbmNlbAogewotICAgIEFTU0VSVChfY2hvb3Nlcik7Ci0gICAgaWYg
KCFfY2hvb3NlcikKLSAgICAgICAgcmV0dXJuOwotICAgIF9jaG9vc2VyLT5kZXJlZigpOwotICAg
IF9jaG9vc2VyID0gMDsKKyAgICBfY2hvb3NlciA9IG51bGxwdHI7CiB9CiAKIC0gKHZvaWQpY2hv
b3NlRmlsZW5hbWU6KE5TU3RyaW5nICopZmlsZW5hbWUKQEAgLTY4LDggKzU2LDcgQEAgLSAodm9p
ZCljaG9vc2VGaWxlbmFtZTooTlNTdHJpbmcgKilmaWxlbmFtZQogICAgIGlmICghX2Nob29zZXIp
CiAgICAgICAgIHJldHVybjsKICAgICBfY2hvb3Nlci0+Y2hvb3NlRmlsZShmaWxlbmFtZSk7Ci0g
ICAgX2Nob29zZXItPmRlcmVmKCk7Ci0gICAgX2Nob29zZXIgPSAwOworICAgIF9jaG9vc2VyID0g
bnVsbHB0cjsKIH0KIAogLSAodm9pZCljaG9vc2VGaWxlbmFtZXM6KE5TQXJyYXkgKilmaWxlbmFt
ZXMKQEAgLTgyLDExICs2OSwxMSBAQCAtICh2b2lkKWNob29zZUZpbGVuYW1lczooTlNBcnJheSAq
KWZpbGVuYW1lcwogICAgIGZvciAoTlNVSW50ZWdlciBpID0gMDsgaSA8IGNvdW50OyBpKyspCiAg
ICAgICAgIG5hbWVzW2ldID0gW2ZpbGVuYW1lcyBvYmplY3RBdEluZGV4OmldOwogICAgIF9jaG9v
c2VyLT5jaG9vc2VGaWxlcyhuYW1lcyk7Ci0gICAgX2Nob29zZXItPmRlcmVmKCk7Ci0gICAgX2No
b29zZXIgPSAwOworICAgIF9jaG9vc2VyID0gbnVsbHB0cjsKIH0KIAogI2lmIFBMQVRGT1JNKElP
UykKKwogLSAodm9pZCljaG9vc2VGaWxlbmFtZTooTlNTdHJpbmcgKilmaWxlbmFtZSBkaXNwbGF5
U3RyaW5nOihOU1N0cmluZyAqKWRpc3BsYXlTdHJpbmcgaWNvbkltYWdlOihDR0ltYWdlUmVmKWlt
YWdlUmVmCiB7CiAgICAgW3NlbGYgY2hvb3NlRmlsZW5hbWVzOltOU0FycmF5IGFycmF5V2l0aE9i
amVjdDpmaWxlbmFtZV0gZGlzcGxheVN0cmluZzpkaXNwbGF5U3RyaW5nIGljb25JbWFnZTppbWFn
ZVJlZl07CkBAIC05OCwxOCArODUsMTQgQEAgLSAodm9pZCljaG9vc2VGaWxlbmFtZXM6KE5TQXJy
YXkgKilmaWxlbmFtZXMgZGlzcGxheVN0cmluZzooTlNTdHJpbmcgKilkaXNwbGF5U3QKICAgICBp
ZiAoIV9jaG9vc2VyKQogICAgICAgICByZXR1cm47CiAKLSAgICBSZWZQdHI8SWNvbj4gaWNvbiA9
IEljb246OmNyZWF0ZUljb25Gb3JJbWFnZShpbWFnZVJlZik7Ci0KLSAgICBOU1VJbnRlZ2VyIGNv
dW50ID0gW2ZpbGVuYW1lcyBjb3VudF07Ci0gICAgVmVjdG9yPFN0cmluZz4gbmFtZXMoY291bnQp
OwotICAgIGZvciAoTlNVSW50ZWdlciBpID0gMDsgaSA8IGNvdW50OyArK2kpCi0gICAgICAgIG5h
bWVzW2ldID0gW2ZpbGVuYW1lcyBvYmplY3RBdEluZGV4OmldOwotICAgIF9jaG9vc2VyLT5jaG9v
c2VNZWRpYUZpbGVzKG5hbWVzLCBkaXNwbGF5U3RyaW5nLCBpY29uLmdldCgpKTsKLSAgICAKLSAg
ICAvLyBGSVhNRTogd2Ugc2hvdWxkbid0IGJlIG1hbnVhbGx5IGRlcmVmKCknaW5nIGhlcmUuCi0g
ICAgX2Nob29zZXItPmRlcmVmKCk7CisgICAgVmVjdG9yPFN0cmluZz4gbmFtZXM7CisgICAgbmFt
ZXMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShbZmlsZW5hbWVzIGNvdW50XSk7CisgICAgZm9yIChO
U1N0cmluZyAqZmlsZW5hbWUgaW4gZmlsZW5hbWVzKQorICAgICAgICBuYW1lcy51bmNoZWNrZWRB
cHBlbmQoZmlsZW5hbWUpOworICAgIF9jaG9vc2VyLT5jaG9vc2VNZWRpYUZpbGVzKG5hbWVzLCBk
aXNwbGF5U3RyaW5nLCBJY29uOjpjcmVhdGVJY29uRm9ySW1hZ2UoaW1hZ2VSZWYpLmdldCgpKTsK
ICAgICBfY2hvb3NlciA9IG51bGxwdHI7CiB9CisKICNlbmRpZgogCiBAZW5kCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkFyY2hpdmUubW0gYi9Tb3VyY2UvV2ViS2l0
L21hYy9XZWJWaWV3L1dlYkFyY2hpdmUubW0KaW5kZXggZTk2YzYwN2NmYjg0Yzg1YTFlYmZhYWJk
YzMxY2ViYTA0ZWE1YzNlOC4uZmY3NTQ2ZDg1ZjhhNTVhNTliODBhYWYxN2I1NGU3MmVhNjFmOTY3
OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJBcmNoaXZlLm1tCisr
KyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViQXJjaGl2ZS5tbQpAQCAtMTc0LDI1ICsx
NzQsMTYgQEAgLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoTWFpblJlc291cmNlOihXZWJSZXNvdXJj
ZSAqKW1haW5SZXNvdXJjZSBzdWJyZXNvdXJjZXM6KE4KICAgICAgICAgW3NlbGYgcmVsZWFzZV07
CiAgICAgICAgIHJldHVybiBuaWw7CiAgICAgfQotICAgIAotICAgIFJlZlB0cjxBcmNoaXZlUmVz
b3VyY2U+IGNvcmVNYWluUmVzb3VyY2UgPSBtYWluUmVzb3VyY2UgPyBbbWFpblJlc291cmNlIF9j
b3JlUmVzb3VyY2VdIDogbnVsbHB0cjsKIAotICAgIFZlY3RvcjxSZWZQdHI8QXJjaGl2ZVJlc291
cmNlPj4gY29yZVJlc291cmNlczsKKyAgICBWZWN0b3I8UmVmPEFyY2hpdmVSZXNvdXJjZT4+IGNv
cmVSZXNvdXJjZXM7CiAgICAgZm9yIChXZWJSZXNvdXJjZSAqc3VicmVzb3VyY2UgaW4gc3VicmVz
b3VyY2VzKQogICAgICAgICBjb3JlUmVzb3VyY2VzLmFwcGVuZChbc3VicmVzb3VyY2UgX2NvcmVS
ZXNvdXJjZV0pOwogCi0gICAgVmVjdG9yPFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPj4gY29yZUFy
Y2hpdmVzOworICAgIFZlY3RvcjxSZWY8TGVnYWN5V2ViQXJjaGl2ZT4+IGNvcmVBcmNoaXZlczsK
ICAgICBmb3IgKFdlYkFyY2hpdmUgKnN1YmZyYW1lQXJjaGl2ZSBpbiBzdWJmcmFtZUFyY2hpdmVz
KQotICAgICAgICBjb3JlQXJjaGl2ZXMuYXBwZW5kKFtzdWJmcmFtZUFyY2hpdmUtPl9wcml2YXRl
IGNvcmVBcmNoaXZlXSk7Ci0KLSAgICBhdXRvIGNvcmVBcmNoaXZlID0gTGVnYWN5V2ViQXJjaGl2
ZTo6Y3JlYXRlKFdURk1vdmUoY29yZU1haW5SZXNvdXJjZSksIFdURk1vdmUoY29yZVJlc291cmNl
cyksIFdURk1vdmUoY29yZUFyY2hpdmVzKSk7Ci0gICAgaWYgKCFjb3JlQXJjaGl2ZSkgewotICAg
ICAgICBbc2VsZiByZWxlYXNlXTsKLSAgICAgICAgcmV0dXJuIG5pbDsKLSAgICB9Ci0KLSAgICBb
X3ByaXZhdGUgc2V0Q29yZUFyY2hpdmU6V1RGTW92ZShjb3JlQXJjaGl2ZSldOworICAgICAgICBj
b3JlQXJjaGl2ZXMuYXBwZW5kKCpbc3ViZnJhbWVBcmNoaXZlLT5fcHJpdmF0ZSBjb3JlQXJjaGl2
ZV0pOwogCisgICAgW19wcml2YXRlIHNldENvcmVBcmNoaXZlOkxlZ2FjeVdlYkFyY2hpdmU6OmNy
ZWF0ZShbbWFpblJlc291cmNlIF9jb3JlUmVzb3VyY2VdLCBXVEZNb3ZlKGNvcmVSZXNvdXJjZXMp
LCBXVEZNb3ZlKGNvcmVBcmNoaXZlcykpXTsKICAgICByZXR1cm4gc2VsZjsKIH0KIApAQCAtMjc1
LDkgKzI2NiwxMCBAQCAtIChXZWJSZXNvdXJjZSAqKW1haW5SZXNvdXJjZQogICAgIC8vIEN1cnJl
bnRseSBmcm9tIFdlYktpdCBBUEkgcGVyc3BlY3RpdmUsIFdlYkFyY2hpdmVzIGFyZSBlbnRpcmVs
eSBpbW11dGFibGUgb25jZSBjcmVhdGVkCiAgICAgLy8gSWYgdGhleSBldmVyIGJlY29tZSBtdXRh
YmxlLCB3ZSdsbCBuZWVkIHRvIHJldGhpbmsgdGhpcy4gCiAgICAgaWYgKCFfcHJpdmF0ZS0+Y2Fj
aGVkTWFpblJlc291cmNlKSB7Ci0gICAgICAgIExlZ2FjeVdlYkFyY2hpdmUqIGNvcmVBcmNoaXZl
ID0gW19wcml2YXRlIGNvcmVBcmNoaXZlXTsKLSAgICAgICAgaWYgKGNvcmVBcmNoaXZlKQotICAg
ICAgICAgICAgX3ByaXZhdGUtPmNhY2hlZE1haW5SZXNvdXJjZSA9IFtbV2ViUmVzb3VyY2UgYWxs
b2NdIF9pbml0V2l0aENvcmVSZXNvdXJjZTpjb3JlQXJjaGl2ZS0+bWFpblJlc291cmNlKCldOwor
ICAgICAgICBpZiAoYXV0byogY29yZUFyY2hpdmUgPSBbX3ByaXZhdGUgY29yZUFyY2hpdmVdKSB7
CisgICAgICAgICAgICBpZiAoYXV0byogbWFpblJlc291cmNlID0gY29yZUFyY2hpdmUtPm1haW5S
ZXNvdXJjZSgpKQorICAgICAgICAgICAgICAgIF9wcml2YXRlLT5jYWNoZWRNYWluUmVzb3VyY2Ug
PSBbW1dlYlJlc291cmNlIGFsbG9jXSBfaW5pdFdpdGhDb3JlUmVzb3VyY2U6Km1haW5SZXNvdXJj
ZV07CisgICAgICAgIH0KICAgICB9CiAgICAgCiAgICAgcmV0dXJuIFtbX3ByaXZhdGUtPmNhY2hl
ZE1haW5SZXNvdXJjZSByZXRhaW5dIGF1dG9yZWxlYXNlXTsKQEAgLTI5NCwxMiArMjg2LDExIEBA
IC0gKE5TQXJyYXkgKilzdWJyZXNvdXJjZXMKICAgICAgICAgaWYgKCFjb3JlQXJjaGl2ZSkKICAg
ICAgICAgICAgIF9wcml2YXRlLT5jYWNoZWRTdWJyZXNvdXJjZXMgPSBbW05TQXJyYXkgYWxsb2Nd
IGluaXRdOwogICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIGNvbnN0IFZlY3RvcjxSZWZQdHI8
QXJjaGl2ZVJlc291cmNlPj4mIHN1YnJlc291cmNlcyhjb3JlQXJjaGl2ZS0+c3VicmVzb3VyY2Vz
KCkpOworICAgICAgICAgICAgYXV0byYgc3VicmVzb3VyY2VzID0gY29yZUFyY2hpdmUtPnN1YnJl
c291cmNlcygpOwogICAgICAgICAgICAgTlNNdXRhYmxlQXJyYXkgKm11dGFibGVBcnJheSA9IFtb
TlNNdXRhYmxlQXJyYXkgYWxsb2NdIGluaXRXaXRoQ2FwYWNpdHk6c3VicmVzb3VyY2VzLnNpemUo
KV07CiAgICAgICAgICAgICBfcHJpdmF0ZS0+Y2FjaGVkU3VicmVzb3VyY2VzID0gbXV0YWJsZUFy
cmF5OwotICAgICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IHN1YnJlc291cmNlcy5z
aXplKCk7ICsraSkgewotICAgICAgICAgICAgICAgIFdlYlJlc291cmNlICpyZXNvdXJjZSA9IFtb
V2ViUmVzb3VyY2UgYWxsb2NdIF9pbml0V2l0aENvcmVSZXNvdXJjZTpzdWJyZXNvdXJjZXNbaV0u
Z2V0KCldOwotICAgICAgICAgICAgICAgIGlmIChyZXNvdXJjZSkgeworICAgICAgICAgICAgZm9y
IChhdXRvJiBzdWJyZXNvdXJjZSA6IHN1YnJlc291cmNlcykgeworICAgICAgICAgICAgICAgIGlm
IChXZWJSZXNvdXJjZSAqcmVzb3VyY2UgPSBbW1dlYlJlc291cmNlIGFsbG9jXSBfaW5pdFdpdGhD
b3JlUmVzb3VyY2U6c3VicmVzb3VyY2UuZ2V0KCldKSB7CiAgICAgICAgICAgICAgICAgICAgIFtt
dXRhYmxlQXJyYXkgYWRkT2JqZWN0OnJlc291cmNlXTsKICAgICAgICAgICAgICAgICAgICAgW3Jl
c291cmNlIHJlbGVhc2VdOwogICAgICAgICAgICAgICAgIH0KQEAgLTMxOCwxNSArMzA5LDE1IEBA
IC0gKE5TQXJyYXkgKilzdWJmcmFtZUFyY2hpdmVzCiAgICAgLy8gQ3VycmVudGx5IGZyb20gV2Vi
S2l0IEFQSSBwZXJzcGVjdGl2ZSwgV2ViQXJjaGl2ZXMgYXJlIGVudGlyZWx5IGltbXV0YWJsZSBv
bmNlIGNyZWF0ZWQKICAgICAvLyBJZiB0aGV5IGV2ZXIgYmVjb21lIG11dGFibGUsIHdlJ2xsIG5l
ZWQgdG8gcmV0aGluayB0aGlzLiAgCiAgICAgaWYgKCFfcHJpdmF0ZS0+Y2FjaGVkU3ViZnJhbWVB
cmNoaXZlcykgewotICAgICAgICBMZWdhY3lXZWJBcmNoaXZlKiBjb3JlQXJjaGl2ZSA9IFtfcHJp
dmF0ZSBjb3JlQXJjaGl2ZV07CisgICAgICAgIGF1dG8qIGNvcmVBcmNoaXZlID0gW19wcml2YXRl
IGNvcmVBcmNoaXZlXTsKICAgICAgICAgaWYgKCFjb3JlQXJjaGl2ZSkKICAgICAgICAgICAgIF9w
cml2YXRlLT5jYWNoZWRTdWJmcmFtZUFyY2hpdmVzID0gW1tOU0FycmF5IGFsbG9jXSBpbml0XTsK
ICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICBjb25zdCBWZWN0b3I8UmVmUHRyPEFyY2hpdmU+
PiYgc3ViZnJhbWVBcmNoaXZlcyhjb3JlQXJjaGl2ZS0+c3ViZnJhbWVBcmNoaXZlcygpKTsKLSAg
ICAgICAgICAgIE5TTXV0YWJsZUFycmF5ICptdXRhYmxlQXJyYXkgPSBbW05TTXV0YWJsZUFycmF5
IGFsbG9jXSBpbml0V2l0aENhcGFjaXR5OnN1YmZyYW1lQXJjaGl2ZXMuc2l6ZSgpXTsKKyAgICAg
ICAgICAgIGF1dG8mIHN1YmZyYW1lQXJjaGl2ZXMgPSBjb3JlQXJjaGl2ZS0+c3ViZnJhbWVBcmNo
aXZlcygpOworICAgICAgICAgICAgYXV0byBtdXRhYmxlQXJyYXkgPSBbW05TTXV0YWJsZUFycmF5
IGFsbG9jXSBpbml0V2l0aENhcGFjaXR5OnN1YmZyYW1lQXJjaGl2ZXMuc2l6ZSgpXTsKICAgICAg
ICAgICAgIF9wcml2YXRlLT5jYWNoZWRTdWJmcmFtZUFyY2hpdmVzID0gbXV0YWJsZUFycmF5Owog
ICAgICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IHN1YmZyYW1lQXJjaGl2ZXMuc2l6
ZSgpOyArK2kpIHsKLSAgICAgICAgICAgICAgICBXZWJBcmNoaXZlICphcmNoaXZlID0gW1tXZWJB
cmNoaXZlIGFsbG9jXSBfaW5pdFdpdGhDb3JlTGVnYWN5V2ViQXJjaGl2ZTooTGVnYWN5V2ViQXJj
aGl2ZSAqKXN1YmZyYW1lQXJjaGl2ZXNbaV0uZ2V0KCldOworICAgICAgICAgICAgICAgIFdlYkFy
Y2hpdmUgKmFyY2hpdmUgPSBbW1dlYkFyY2hpdmUgYWxsb2NdIF9pbml0V2l0aENvcmVMZWdhY3lX
ZWJBcmNoaXZlOihMZWdhY3lXZWJBcmNoaXZlICopc3ViZnJhbWVBcmNoaXZlc1tpXS5wdHIoKV07
CiAgICAgICAgICAgICAgICAgW211dGFibGVBcnJheSBhZGRPYmplY3Q6YXJjaGl2ZV07CiAgICAg
ICAgICAgICAgICAgW2FyY2hpdmUgcmVsZWFzZV07CiAgICAgICAgICAgICB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkRhdGFTb3VyY2UubW0gYi9Tb3VyY2UvV2Vi
S2l0L21hYy9XZWJWaWV3L1dlYkRhdGFTb3VyY2UubW0KaW5kZXggNjA2NDcyMmE1NjM2MTQ4NTg0
MmNmNTdmZDkzMGY3NTU4OGQ2ZThmNi4uMThjZjlmN2RiNGM2Mzg3ODQ3MTcwODkyOGJhYjg5NThh
NDc5MjcwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJEYXRhU291
cmNlLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViRGF0YVNvdXJjZS5tbQpA
QCAtMTY2LDI1ICsxNjYsMjIgQEAgLSAoTlNFcnJvciAqKV9tYWluRG9jdW1lbnRFcnJvcgogCiAt
ICh2b2lkKV9hZGRTdWJmcmFtZUFyY2hpdmVzOihOU0FycmF5ICopc3ViZnJhbWVBcmNoaXZlcwog
ewotICAgIC8vIEZJWE1FOiBUaGlzIFNQSSBpcyBwb29yLCBwb29yIGRlc2lnbi4gIENhbiB3ZSBj
b21lIHVwIHdpdGggYW5vdGhlciBzb2x1dGlvbiBmb3IgdGhvc2Ugd2hvIG5lZWQgaXQ/Ci0gICAg
TlNFbnVtZXJhdG9yICplbnVtZXJhdG9yID0gW3N1YmZyYW1lQXJjaGl2ZXMgb2JqZWN0RW51bWVy
YXRvcl07Ci0gICAgV2ViQXJjaGl2ZSAqYXJjaGl2ZTsKLSAgICB3aGlsZSAoKGFyY2hpdmUgPSBb
ZW51bWVyYXRvciBuZXh0T2JqZWN0XSkgIT0gbmlsKQotICAgICAgICB0b1ByaXZhdGUoX3ByaXZh
dGUpLT5sb2FkZXItPmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoW2FyY2hpdmUgX2NvcmVMZWdhY3lX
ZWJBcmNoaXZlXSk7CisgICAgLy8gRklYTUU6IFRoaXMgU1BJIGlzIHBvb3IsIHBvb3IgZGVzaWdu
LiBDYW4gd2UgY29tZSB1cCB3aXRoIGFub3RoZXIgc29sdXRpb24gZm9yIHRob3NlIHdobyBuZWVk
IGl0PworICAgIGZvciAoV2ViQXJjaGl2ZSAqYXJjaGl2ZSBpbiBzdWJmcmFtZUFyY2hpdmVzKQor
ICAgICAgICB0b1ByaXZhdGUoX3ByaXZhdGUpLT5sb2FkZXItPmFkZEFsbEFyY2hpdmVSZXNvdXJj
ZXMoKlthcmNoaXZlIF9jb3JlTGVnYWN5V2ViQXJjaGl2ZV0pOwogfQogCiAjaWYgIVBMQVRGT1JN
KElPUykKKwogLSAoTlNGaWxlV3JhcHBlciAqKV9maWxlV3JhcHBlckZvclVSTDooTlNVUkwgKilV
UkwKIHsKICAgICBpZiAoW1VSTCBpc0ZpbGVVUkxdKQogICAgICAgICByZXR1cm4gW1tbTlNGaWxl
V3JhcHBlciBhbGxvY10gaW5pdFdpdGhVUkw6W1VSTCBVUkxCeVJlc29sdmluZ1N5bWxpbmtzSW5Q
YXRoXSBvcHRpb25zOjAgZXJyb3I6bnVsbHB0cl0gYXV0b3JlbGVhc2VdOwogCi0gICAgV2ViUmVz
b3VyY2UgKnJlc291cmNlID0gW3NlbGYgc3VicmVzb3VyY2VGb3JVUkw6VVJMXTsKLSAgICBpZiAo
cmVzb3VyY2UpCisgICAgaWYgKGF1dG8gcmVzb3VyY2UgPSBbc2VsZiBzdWJyZXNvdXJjZUZvclVS
TDpVUkxdKQogICAgICAgICByZXR1cm4gW3Jlc291cmNlIF9maWxlV3JhcHBlclJlcHJlc2VudGF0
aW9uXTsKLSAgICAKLSAgICBOU0NhY2hlZFVSTFJlc3BvbnNlICpjYWNoZWRSZXNwb25zZSA9IFtb
c2VsZiBfd2ViVmlld10gX2NhY2hlZFJlc3BvbnNlRm9yVVJMOlVSTF07Ci0gICAgaWYgKGNhY2hl
ZFJlc3BvbnNlKSB7CisKKyAgICBpZiAoYXV0byBjYWNoZWRSZXNwb25zZSA9IFtbc2VsZiBfd2Vi
Vmlld10gX2NhY2hlZFJlc3BvbnNlRm9yVVJMOlVSTF0pIHsKICAgICAgICAgTlNGaWxlV3JhcHBl
ciAqd3JhcHBlciA9IFtbW05TRmlsZVdyYXBwZXIgYWxsb2NdIGluaXRSZWd1bGFyRmlsZVdpdGhD
b250ZW50czpbY2FjaGVkUmVzcG9uc2UgZGF0YV1dIGF1dG9yZWxlYXNlXTsKICAgICAgICAgW3dy
YXBwZXIgc2V0UHJlZmVycmVkRmlsZW5hbWU6W1tjYWNoZWRSZXNwb25zZSByZXNwb25zZV0gc3Vn
Z2VzdGVkRmlsZW5hbWVdXTsKICAgICAgICAgcmV0dXJuIHdyYXBwZXI7CkBAIC0xOTIsNiArMTg5
LDcgQEAgLSAoTlNGaWxlV3JhcHBlciAqKV9maWxlV3JhcHBlckZvclVSTDooTlNVUkwgKilVUkwK
ICAgICAKICAgICByZXR1cm4gbmlsOwogfQorCiAjZW5kaWYKIAogLSAoTlNTdHJpbmcgKilfcmVz
cG9uc2VNSU1FVHlwZQpAQCAtMzA1LDkgKzMwMywxMCBAQCAtIChET01Eb2N1bWVudEZyYWdtZW50
ICopX2RvY3VtZW50RnJhZ21lbnRXaXRoQXJjaGl2ZTooV2ViQXJjaGl2ZSAqKWFyY2hpdmUKICAg
ICAgICAgTlNTdHJpbmcgKk1JTUVUeXBlID0gW21haW5SZXNvdXJjZSBNSU1FVHlwZV07CiAgICAg
ICAgIGlmIChbV2ViVmlldyBjYW5TaG93TUlNRVR5cGVBc0hUTUw6TUlNRVR5cGVdKSB7CiAgICAg
ICAgICAgICBOU1N0cmluZyAqbWFya3VwU3RyaW5nID0gW1tOU1N0cmluZyBhbGxvY10gaW5pdFdp
dGhEYXRhOlttYWluUmVzb3VyY2UgZGF0YV0gZW5jb2Rpbmc6TlNVVEY4U3RyaW5nRW5jb2Rpbmdd
OworCiAgICAgICAgICAgICAvLyBGSVhNRTogc2VlbXMgcG9vciBmb3JtIHRvIGRvIHRoaXMgYXMg
YSBzaWRlIGVmZmVjdCBvZiBnZXR0aW5nIGEgZG9jdW1lbnQgZnJhZ21lbnQKICAgICAgICAgICAg
IGlmICh0b1ByaXZhdGUoX3ByaXZhdGUpLT5sb2FkZXIpCi0gICAgICAgICAgICAgICAgdG9Qcml2
YXRlKF9wcml2YXRlKS0+bG9hZGVyLT5hZGRBbGxBcmNoaXZlUmVzb3VyY2VzKFthcmNoaXZlIF9j
b3JlTGVnYWN5V2ViQXJjaGl2ZV0pOworICAgICAgICAgICAgICAgIHRvUHJpdmF0ZShfcHJpdmF0
ZSktPmxvYWRlci0+YWRkQWxsQXJjaGl2ZVJlc291cmNlcygqW2FyY2hpdmUgX2NvcmVMZWdhY3lX
ZWJBcmNoaXZlXSk7CiAKICAgICAgICAgICAgIERPTURvY3VtZW50RnJhZ21lbnQgKmZyYWdtZW50
ID0gW1tzZWxmIHdlYkZyYW1lXSBfZG9jdW1lbnRGcmFnbWVudFdpdGhNYXJrdXBTdHJpbmc6bWFy
a3VwU3RyaW5nIGJhc2VVUkxTdHJpbmc6W1ttYWluUmVzb3VyY2UgVVJMXSBfd2ViX29yaWdpbmFs
RGF0YUFzU3RyaW5nXV07CiAgICAgICAgICAgICBbbWFya3VwU3RyaW5nIHJlbGVhc2VdOwpAQCAt
MzI0LDcgKzMyMyw3IEBAIC0gKERPTURvY3VtZW50RnJhZ21lbnQgKilfZG9jdW1lbnRGcmFnbWVu
dFdpdGhJbWFnZVJlc291cmNlOihXZWJSZXNvdXJjZSAqKXJlc291CiB7CiAgICAgRE9NRWxlbWVu
dCAqaW1hZ2VFbGVtZW50ID0gW3NlbGYgX2ltYWdlRWxlbWVudFdpdGhJbWFnZVJlc291cmNlOnJl
c291cmNlXTsKICAgICBpZiAoIWltYWdlRWxlbWVudCkKLSAgICAgICAgcmV0dXJuIDA7CisgICAg
ICAgIHJldHVybiBuaWw7CiAgICAgRE9NRG9jdW1lbnRGcmFnbWVudCAqZnJhZ21lbnQgPSBbW1tz
ZWxmIHdlYkZyYW1lXSBET01Eb2N1bWVudF0gY3JlYXRlRG9jdW1lbnRGcmFnbWVudF07CiAgICAg
W2ZyYWdtZW50IGFwcGVuZENoaWxkOmltYWdlRWxlbWVudF07CiAgICAgcmV0dXJuIGZyYWdtZW50
OwpAQCAtNTE5LDMyICs1MTgsMzEgQEAgLSAoV2ViQXJjaGl2ZSAqKXdlYkFyY2hpdmUKIC0gKFdl
YlJlc291cmNlICopbWFpblJlc291cmNlCiB7CiAgICAgYXV0byBjb3JlUmVzb3VyY2UgPSB0b1By
aXZhdGUoX3ByaXZhdGUpLT5sb2FkZXItPm1haW5SZXNvdXJjZSgpOwotICAgIHJldHVybiBbW1tX
ZWJSZXNvdXJjZSBhbGxvY10gX2luaXRXaXRoQ29yZVJlc291cmNlOldURk1vdmUoY29yZVJlc291
cmNlKV0gYXV0b3JlbGVhc2VdOworICAgIGlmICghY29yZVJlc291cmNlKQorICAgICAgICByZXR1
cm4gbmlsOworICAgIHJldHVybiBbW1tXZWJSZXNvdXJjZSBhbGxvY10gX2luaXRXaXRoQ29yZVJl
c291cmNlOmNvcmVSZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpXSBhdXRvcmVsZWFzZV07CiB9CiAK
IC0gKE5TQXJyYXkgKilzdWJyZXNvdXJjZXMKIHsKICAgICBhdXRvIGNvcmVTdWJyZXNvdXJjZXMg
PSB0b1ByaXZhdGUoX3ByaXZhdGUpLT5sb2FkZXItPnN1YnJlc291cmNlcygpOwotCiAgICAgYXV0
byBzdWJyZXNvdXJjZXMgPSBhZG9wdE5TKFtbTlNNdXRhYmxlQXJyYXkgYWxsb2NdIGluaXRXaXRo
Q2FwYWNpdHk6Y29yZVN1YnJlc291cmNlcy5zaXplKCldKTsKLSAgICBmb3IgKGNvbnN0IGF1dG8m
IGNvcmVTdWJyZXNvdXJjZSA6IGNvcmVTdWJyZXNvdXJjZXMpIHsKLSAgICAgICAgaWYgKGF1dG8g
cmVzb3VyY2UgPSBhZG9wdE5TKFtbV2ViUmVzb3VyY2UgYWxsb2NdIF9pbml0V2l0aENvcmVSZXNv
dXJjZTpjb3JlU3VicmVzb3VyY2VdKSkKKyAgICBmb3IgKGF1dG8mIGNvcmVTdWJyZXNvdXJjZSA6
IGNvcmVTdWJyZXNvdXJjZXMpIHsKKyAgICAgICAgaWYgKGF1dG8gcmVzb3VyY2UgPSBhZG9wdE5T
KFtbV2ViUmVzb3VyY2UgYWxsb2NdIF9pbml0V2l0aENvcmVSZXNvdXJjZTpjb3JlU3VicmVzb3Vy
Y2UuY29weVJlZigpXSkpCiAgICAgICAgICAgICBbc3VicmVzb3VyY2VzIGFkZE9iamVjdDpyZXNv
dXJjZS5nZXQoKV07CiAgICAgfQotCiAgICAgcmV0dXJuIHN1YnJlc291cmNlcy5hdXRvcmVsZWFz
ZSgpOwogfQogCiAtIChXZWJSZXNvdXJjZSAqKXN1YnJlc291cmNlRm9yVVJMOihOU1VSTCAqKVVS
TAogewotICAgIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IHN1YnJlc291cmNlID0gdG9Qcml2YXRl
KF9wcml2YXRlKS0+bG9hZGVyLT5zdWJyZXNvdXJjZShVUkwpOwotICAgIAotICAgIHJldHVybiBz
dWJyZXNvdXJjZSA/IFtbW1dlYlJlc291cmNlIGFsbG9jXSBfaW5pdFdpdGhDb3JlUmVzb3VyY2U6
c3VicmVzb3VyY2UuZ2V0KCldIGF1dG9yZWxlYXNlXSA6IG5pbDsKKyAgICBhdXRvIHN1YnJlc291
cmNlID0gdG9Qcml2YXRlKF9wcml2YXRlKS0+bG9hZGVyLT5zdWJyZXNvdXJjZShVUkwpOworICAg
IHJldHVybiBzdWJyZXNvdXJjZSA/IFtbW1dlYlJlc291cmNlIGFsbG9jXSBfaW5pdFdpdGhDb3Jl
UmVzb3VyY2U6c3VicmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKV0gYXV0b3JlbGVhc2VdIDogbmls
OwogfQogCiAtICh2b2lkKWFkZFN1YnJlc291cmNlOihXZWJSZXNvdXJjZSAqKXN1YnJlc291cmNl
CiB7ICAgIAotICAgIHRvUHJpdmF0ZShfcHJpdmF0ZSktPmxvYWRlci0+YWRkQXJjaGl2ZVJlc291
cmNlKCpbc3VicmVzb3VyY2UgX2NvcmVSZXNvdXJjZV0pOworICAgIHRvUHJpdmF0ZShfcHJpdmF0
ZSktPmxvYWRlci0+YWRkQXJjaGl2ZVJlc291cmNlKFtzdWJyZXNvdXJjZSBfY29yZVJlc291cmNl
XSk7CiB9CiAKIEBlbmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2Vi
UmVzb3VyY2UubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlJlc291cmNlLm1tCmlu
ZGV4IGU1ZDhmZDRhZmJkNGQyZmFjOWNkMzkyMTkxNmE0OWI4ZjE3MzVlZjYuLmIzYmI3NWJhOWQx
OGRjNjkwOGFiZWU5YzJkY2IwNjY1YjExNGFmYjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
bWFjL1dlYlZpZXcvV2ViUmVzb3VyY2UubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmll
dy9XZWJSZXNvdXJjZS5tbQpAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MDUsIDIwMDYsIDIwMDcsIDIwMDggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICog
Q29weXJpZ2h0IChDKSAyMDA1LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgog
ICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC01Nyw5ICs1Nyw5IEBAIHN0YXRpYyBO
U1N0cmluZyAqIGNvbnN0IFdlYlJlc291cmNlUmVzcG9uc2VLZXkgPSAgICAgICAgICBAIldlYlJl
c291cmNlUmVzcG9uc2UiCiAKIEBpbnRlcmZhY2UgV2ViUmVzb3VyY2VQcml2YXRlIDogTlNPYmpl
Y3QgewogQHB1YmxpYwotICAgIEFyY2hpdmVSZXNvdXJjZSogY29yZVJlc291cmNlOworICAgIFJl
ZlB0cjxBcmNoaXZlUmVzb3VyY2U+IGNvcmVSZXNvdXJjZTsKIH0KLS0gKGluc3RhbmNldHlwZSlp
bml0V2l0aENvcmVSZXNvdXJjZTooUGFzc1JlZlB0cjxBcmNoaXZlUmVzb3VyY2U+KWNvcmVSZXNv
dXJjZTsKKy0gKGluc3RhbmNldHlwZSlpbml0V2l0aENvcmVSZXNvdXJjZTooUmVmPEFyY2hpdmVS
ZXNvdXJjZT4mJiljb3JlUmVzb3VyY2U7CiBAZW5kCiAKIEBpbXBsZW1lbnRhdGlvbiBXZWJSZXNv
dXJjZVByaXZhdGUKQEAgLTc4LDEzICs3OCwxMiBAQCAtIChpbnN0YW5jZXR5cGUpaW5pdAogICAg
IHJldHVybiBbc3VwZXIgaW5pdF07CiB9CiAKLS0gKGluc3RhbmNldHlwZSlpbml0V2l0aENvcmVS
ZXNvdXJjZTooUGFzc1JlZlB0cjxBcmNoaXZlUmVzb3VyY2U+KXBhc3NlZFJlc291cmNlCistIChp
bnN0YW5jZXR5cGUpaW5pdFdpdGhDb3JlUmVzb3VyY2U6KFJlZjxBcmNoaXZlUmVzb3VyY2U+JiYp
cGFzc2VkUmVzb3VyY2UKIHsKICAgICBzZWxmID0gW3N1cGVyIGluaXRdOwogICAgIGlmICghc2Vs
ZikKICAgICAgICAgcmV0dXJuIG5pbDsKLSAgICAvLyBBY3F1aXJlIHRoZSBQYXNzUmVmUHRyPD4n
cyByZWYgYXMgb3VyIG93biBtYW51YWwgcmVmCi0gICAgY29yZVJlc291cmNlID0gcGFzc2VkUmVz
b3VyY2UubGVha1JlZigpOworICAgIGNvcmVSZXNvdXJjZSA9IFdURk1vdmUocGFzc2VkUmVzb3Vy
Y2UpOwogICAgIHJldHVybiBzZWxmOwogfQogCkBAIC05Miw5ICs5MSw2IEBAIC0gKHZvaWQpZGVh
bGxvYwogewogICAgIGlmIChXZWJDb3JlT2JqQ1NjaGVkdWxlRGVhbGxvY2F0ZU9uTWFpblRocmVh
ZChbV2ViUmVzb3VyY2VQcml2YXRlIGNsYXNzXSwgc2VsZikpCiAgICAgICAgIHJldHVybjsKLQot
ICAgIGlmIChjb3JlUmVzb3VyY2UpCi0gICAgICAgIGNvcmVSZXNvdXJjZS0+ZGVyZWYoKTsKICAg
ICBbc3VwZXIgZGVhbGxvY107CiB9CiAKQEAgLTE1MywxNCArMTQ5LDE5IEBAIC0gKGluc3RhbmNl
dHlwZSlpbml0V2l0aENvZGVyOihOU0NvZGVyICopZGVjb2RlcgogICAgICAgICByZXR1cm4gbmls
OwogICAgIH0KIAotICAgIF9wcml2YXRlID0gW1tXZWJSZXNvdXJjZVByaXZhdGUgYWxsb2NdIGlu
aXRXaXRoQ29yZVJlc291cmNlOkFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKFNoYXJlZEJ1ZmZlcjo6
d3JhcE5TRGF0YShkYXRhKSwgdXJsLCBtaW1lVHlwZSwgdGV4dEVuY29kaW5nLCBmcmFtZU5hbWUs
IHJlc3BvbnNlKV07CisgICAgYXV0byBjb3JlUmVzb3VyY2UgPSBBcmNoaXZlUmVzb3VyY2U6OmNy
ZWF0ZShTaGFyZWRCdWZmZXI6OndyYXBOU0RhdGEoZGF0YSksIHVybCwgbWltZVR5cGUsIHRleHRF
bmNvZGluZywgZnJhbWVOYW1lLCByZXNwb25zZSk7CisgICAgaWYgKCFjb3JlUmVzb3VyY2UpIHsK
KyAgICAgICAgW3NlbGYgcmVsZWFzZV07CisgICAgICAgIHJldHVybiBuaWw7CisgICAgfQogCisg
ICAgX3ByaXZhdGUgPSBbW1dlYlJlc291cmNlUHJpdmF0ZSBhbGxvY10gaW5pdFdpdGhDb3JlUmVz
b3VyY2U6Y29yZVJlc291cmNlLnJlbGVhc2VOb25OdWxsKCldOwogICAgIHJldHVybiBzZWxmOwog
fQogCiAtICh2b2lkKWVuY29kZVdpdGhDb2RlcjooTlNDb2RlciAqKWVuY29kZXIKIHsKLSAgICBB
cmNoaXZlUmVzb3VyY2UgKnJlc291cmNlID0gX3ByaXZhdGUtPmNvcmVSZXNvdXJjZTsKKyAgICBh
dXRvKiByZXNvdXJjZSA9IF9wcml2YXRlLT5jb3JlUmVzb3VyY2UuZ2V0KCk7CiAgICAgCiAgICAg
TlNEYXRhICpkYXRhID0gbmlsOwogICAgIE5TVVJMICp1cmwgPSBuaWw7CkBAIC0yMDksOCArMjEw
LDcgQEAgLSAoTlNVUkwgKilVUkwKIAogICAgIGlmICghX3ByaXZhdGUtPmNvcmVSZXNvdXJjZSkK
ICAgICAgICAgcmV0dXJuIG5pbDsKLSAgICBOU1VSTCAqdXJsID0gX3ByaXZhdGUtPmNvcmVSZXNv
dXJjZS0+dXJsKCk7Ci0gICAgcmV0dXJuIHVybDsKKyAgICByZXR1cm4gX3ByaXZhdGUtPmNvcmVS
ZXNvdXJjZS0+dXJsKCk7CiB9CiAKIC0gKE5TU3RyaW5nICopTUlNRVR5cGUKQEAgLTI1MiwyMiAr
MjUyLDE5IEBAIEBlbmQKIAogQGltcGxlbWVudGF0aW9uIFdlYlJlc291cmNlIChXZWJSZXNvdXJj
ZUludGVybmFsKQogCi0tIChpZClfaW5pdFdpdGhDb3JlUmVzb3VyY2U6KFBhc3NSZWZQdHI8QXJj
aGl2ZVJlc291cmNlPiljb3JlUmVzb3VyY2UKKy0gKGlkKV9pbml0V2l0aENvcmVSZXNvdXJjZToo
UmVmPEFyY2hpdmVSZXNvdXJjZT4mJiljb3JlUmVzb3VyY2UKIHsKICAgICBzZWxmID0gW3N1cGVy
IGluaXRdOwogICAgIGlmICghc2VsZikKICAgICAgICAgcmV0dXJuIG5pbDsKLSAgICAgICAgICAg
IAotICAgIEFTU0VSVChjb3JlUmVzb3VyY2UpOwotICAgIAotICAgIF9wcml2YXRlID0gW1tXZWJS
ZXNvdXJjZVByaXZhdGUgYWxsb2NdIGluaXRXaXRoQ29yZVJlc291cmNlOmNvcmVSZXNvdXJjZV07
Ci0gICAgICAgICAgICAKKworICAgIF9wcml2YXRlID0gW1tXZWJSZXNvdXJjZVByaXZhdGUgYWxs
b2NdIGluaXRXaXRoQ29yZVJlc291cmNlOldURk1vdmUoY29yZVJlc291cmNlKV07CiAgICAgcmV0
dXJuIHNlbGY7CiB9CiAKLS0gKFdlYkNvcmU6OkFyY2hpdmVSZXNvdXJjZSAqKV9jb3JlUmVzb3Vy
Y2UKKy0gKFdlYkNvcmU6OkFyY2hpdmVSZXNvdXJjZSYpX2NvcmVSZXNvdXJjZQogewotICAgIHJl
dHVybiBfcHJpdmF0ZS0+Y29yZVJlc291cmNlOworICAgIHJldHVybiAqX3ByaXZhdGUtPmNvcmVS
ZXNvdXJjZTsKIH0KIAogQGVuZApAQCAtMzA0LDggKzMwMSwxMyBAQCAtIChpZClfaW5pdFdpdGhE
YXRhOihOU0RhdGEgKilkYXRhCiAgICAgICAgIHJldHVybiBuaWw7CiAgICAgfQogCi0gICAgX3By
aXZhdGUgPSBbW1dlYlJlc291cmNlUHJpdmF0ZSBhbGxvY10gaW5pdFdpdGhDb3JlUmVzb3VyY2U6
QXJjaGl2ZVJlc291cmNlOjpjcmVhdGUoU2hhcmVkQnVmZmVyOjp3cmFwTlNEYXRhKGNvcHlEYXRh
ID8gW1tkYXRhIGNvcHldIGF1dG9yZWxlYXNlXSA6IGRhdGEpLCBVUkwsIE1JTUVUeXBlLCB0ZXh0
RW5jb2RpbmdOYW1lLCBmcmFtZU5hbWUsIHJlc3BvbnNlKV07CisgICAgYXV0byBjb3JlUmVzb3Vy
Y2UgPSBBcmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShTaGFyZWRCdWZmZXI6OndyYXBOU0RhdGEoY29w
eURhdGEgPyBbW2RhdGEgY29weV0gYXV0b3JlbGVhc2VdIDogZGF0YSksIFVSTCwgTUlNRVR5cGUs
IHRleHRFbmNvZGluZ05hbWUsIGZyYW1lTmFtZSwgcmVzcG9uc2UpOworICAgIGlmICghY29yZVJl
c291cmNlKSB7CisgICAgICAgIFtzZWxmIHJlbGVhc2VdOworICAgICAgICByZXR1cm4gbmlsOwor
ICAgIH0KIAorICAgIF9wcml2YXRlID0gW1tXZWJSZXNvdXJjZVByaXZhdGUgYWxsb2NdIGluaXRX
aXRoQ29yZVJlc291cmNlOmNvcmVSZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpXTsKICAgICByZXR1
cm4gc2VsZjsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJS
ZXNvdXJjZUludGVybmFsLmggYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlJlc291cmNl
SW50ZXJuYWwuaAppbmRleCAyZjQ2OTEyZThiZThkM2IzOTJjZjU3MzkyZjA3OWRhYjlkODA5ZTI1
Li44MGM5NzZlYjZiMzY1NGZjMWM2ODhjMmE5NmI4M2JkYjdhZjc3MjUxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlJlc291cmNlSW50ZXJuYWwuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlJlc291cmNlSW50ZXJuYWwuaApAQCAtMSw1ICsxLDUg
QEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yNywxMyArMjcsMTMg
QEAKICAqLwogCiAjaW1wb3J0ICJXZWJSZXNvdXJjZVByaXZhdGUuaCIKLSNpbXBvcnQgPHd0Zi9Q
YXNzUmVmUHRyLmg+CisjaW1wb3J0IDx3dGYvUmVmLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
ICAgICBjbGFzcyBBcmNoaXZlUmVzb3VyY2U7CiB9CiAKIEBpbnRlcmZhY2UgV2ViUmVzb3VyY2Ug
KFdlYlJlc291cmNlSW50ZXJuYWwpCi0tIChpZClfaW5pdFdpdGhDb3JlUmVzb3VyY2U6KFBhc3NS
ZWZQdHI8V2ViQ29yZTo6QXJjaGl2ZVJlc291cmNlPiljb3JlUmVzb3VyY2U7Ci0tIChXZWJDb3Jl
OjpBcmNoaXZlUmVzb3VyY2UqKV9jb3JlUmVzb3VyY2U7CistIChpZClfaW5pdFdpdGhDb3JlUmVz
b3VyY2U6KFJlZjxXZWJDb3JlOjpBcmNoaXZlUmVzb3VyY2U+JiYpY29yZVJlc291cmNlOworLSAo
V2ViQ29yZTo6QXJjaGl2ZVJlc291cmNlJilfY29yZVJlc291cmNlOwogQGVuZApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcCBi
L1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAKaW5k
ZXggZjI0ZTYzMzQ0NWU0MzU1YjNiNDI4Zjk5ODdkYzQyZjgxMmMxYmZmYy4uYTM5ZDU4NzUxYjZl
NGJlODI4ZjVkZDUyZWY4ZDdiMDI2NTM3YzJkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93
aW4vV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwCkBAIC02MTgsMTUgKzYxOCwx
MyBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6cmVhY2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5R
dW90YShTZWN1cml0eU9yaWdpbiosIGludDY0XwogICAgIG5vdEltcGxlbWVudGVkKCk7CiB9CiAK
LXZvaWQgV2ViQ2hyb21lQ2xpZW50OjpydW5PcGVuUGFuZWwoRnJhbWUqLCBQYXNzUmVmUHRyPEZp
bGVDaG9vc2VyPiBwcnBGaWxlQ2hvb3NlcikKK3ZvaWQgV2ViQ2hyb21lQ2xpZW50OjpydW5PcGVu
UGFuZWwoRnJhbWUmLCBGaWxlQ2hvb3NlciYgZmlsZUNob29zZXIpCiB7Ci0gICAgUmVmUHRyPEZp
bGVDaG9vc2VyPiBmaWxlQ2hvb3NlciA9IHBycEZpbGVDaG9vc2VyOwotCiAgICAgSFdORCB2aWV3
V2luZG93OwogICAgIGlmIChGQUlMRUQobV93ZWJWaWV3LT52aWV3V2luZG93KCZ2aWV3V2luZG93
KSkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGJvb2wgbXVsdGlGaWxlID0gZmlsZUNob29zZXIt
PnNldHRpbmdzKCkuYWxsb3dzTXVsdGlwbGVGaWxlczsKKyAgICBib29sIG11bHRpRmlsZSA9IGZp
bGVDaG9vc2VyLnNldHRpbmdzKCkuYWxsb3dzTXVsdGlwbGVGaWxlczsKICAgICBWZWN0b3I8V0NI
QVI+IGZpbGVCdWYobXVsdGlGaWxlID8gbWF4RmlsZVBhdGhzTGlzdFNpemUgOiBNQVhfUEFUSCk7
CiAKICAgICBPUEVORklMRU5BTUUgb2ZuOwpAQCAtNjc1LDcgKzY3Myw3IEBAIHZvaWQgV2ViQ2hy
b21lQ2xpZW50OjpydW5PcGVuUGFuZWwoRnJhbWUqLCBQYXNzUmVmUHRyPEZpbGVDaG9vc2VyPiBw
cnBGaWxlQ2hvb3NlCiAgICAgICAgIH0gZWxzZQogICAgICAgICAgICAgZmlsZUxpc3QuYXBwZW5k
KGZpbGUpOwogICAgICAgICBBU1NFUlQoZmlsZUxpc3Quc2l6ZSgpKTsKLSAgICAgICAgZmlsZUNo
b29zZXItPmNob29zZUZpbGVzKGZpbGVMaXN0KTsKKyAgICAgICAgZmlsZUNob29zZXIuY2hvb3Nl
RmlsZXMoZmlsZUxpc3QpOwogICAgIH0KICAgICAvLyBGSVhNRTogU2hvdyBzb21lIHNvcnQgb2Yg
ZXJyb3IgaWYgdG9vIG1hbnkgZmlsZXMgYXJlIHNlbGVjdGVkIGFuZCB0aGUgYnVmZmVyIGlzIHRv
byBzbWFsbC4gIEZvciBub3csIHRoaXMgd2lsbCBmYWlsIHNpbGVudGx5LgogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmggYi9T
b3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaAppbmRleCA0
OTNkZTE2MjMyY2NkYjYxZDlhZDg5MzM4YmE5N2NhNjJlMGIyNjIyLi45Mjg3MmI0MWMxMmZiMzE1
ZTU0MWVjYmRiOTVkYmNiMTU2NjI3MmRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9X
ZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9X
ZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaApAQCAtMTE1LDcgKzExNSw3IEBAIHB1Ymxp
YzoKICAgICB2aXJ0dWFsIHZvaWQgcmVhY2hlZE1heEFwcENhY2hlU2l6ZShpbnQ2NF90IHNwYWNl
TmVlZGVkKTsKICAgICB2aXJ0dWFsIHZvaWQgcmVhY2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5R
dW90YShXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiosIGludDY0X3QgdG90YWxTcGFjZU5lZWRlZCk7
CiAKLSAgICB2aXJ0dWFsIHZvaWQgcnVuT3BlblBhbmVsKFdlYkNvcmU6OkZyYW1lKiwgUGFzc1Jl
ZlB0cjxXZWJDb3JlOjpGaWxlQ2hvb3Nlcj4pOworICAgIHZpcnR1YWwgdm9pZCBydW5PcGVuUGFu
ZWwoV2ViQ29yZTo6RnJhbWUmLCBXZWJDb3JlOjpGaWxlQ2hvb3NlciYpOwogICAgIHZpcnR1YWwg
dm9pZCBsb2FkSWNvbkZvckZpbGVzKGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mLCBXZWJDb3Jl
OjpGaWxlSWNvbkxvYWRlciYpOwogCiAgICAgdmlydHVhbCB2b2lkIHNldEN1cnNvcihjb25zdCBX
ZWJDb3JlOjpDdXJzb3ImKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVT
dXBwb3J0L1dlYkVkaXRvckNsaWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3Vw
cG9ydC9XZWJFZGl0b3JDbGllbnQuY3BwCmluZGV4IGZiMjM0MjdkMWJjZTA5M2I5OWMxMGFjY2Y5
YjdkOWM3ZmU3NDY5NTUuLjJjZWE4ODY0YzA5NDk1MDRiYTU1ZDdhOTZkZmVhNDQ5MTgxNGNlODkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNs
aWVudC5jcHAKKysrIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9y
Q2xpZW50LmNwcApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAw
NywgMjAxMSwgMjAxNC0yMDE1IEFwcGxlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBD
b3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgog
ICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC01MjEsNyArNTIxLDcgQEAgdm9pZCBX
ZWJFZGl0b3JDbGllbnQ6OnRleHREaWRDaGFuZ2VJblRleHRBcmVhKEVsZW1lbnQqIGUpCiBjbGFz
cyBXZWJFZGl0b3JVbmRvQ29tbWFuZCA6IHB1YmxpYyBJV2ViVW5kb0NvbW1hbmQKIHsKIHB1Ymxp
YzoKLSAgICBXZWJFZGl0b3JVbmRvQ29tbWFuZChQYXNzUmVmUHRyPFVuZG9TdGVwPiwgYm9vbCBp
c1VuZG8pOworICAgIFdlYkVkaXRvclVuZG9Db21tYW5kKFVuZG9TdGVwJiwgYm9vbCBpc1VuZG8p
OwogICAgIHZvaWQgZXhlY3V0ZSgpOwogCiAgICAgLy8gSVVua25vd24KQEAgLTUzMSwxMSArNTMx
LDExIEBAIHB1YmxpYzoKIAogcHJpdmF0ZToKICAgICBVTE9ORyBtX3JlZkNvdW50OwotICAgIFJl
ZlB0cjxVbmRvU3RlcD4gbV9zdGVwOworICAgIFJlZjxVbmRvU3RlcD4gbV9zdGVwOwogICAgIGJv
b2wgbV9pc1VuZG87CiB9OwogCi1XZWJFZGl0b3JVbmRvQ29tbWFuZDo6V2ViRWRpdG9yVW5kb0Nv
bW1hbmQoUGFzc1JlZlB0cjxVbmRvU3RlcD4gc3RlcCwgYm9vbCBpc1VuZG8pCitXZWJFZGl0b3JV
bmRvQ29tbWFuZDo6V2ViRWRpdG9yVW5kb0NvbW1hbmQoVW5kb1N0ZXAmIHN0ZXAsIGJvb2wgaXNV
bmRvKQogICAgIDogbV9zdGVwKHN0ZXApCiAgICAgLCBtX2lzVW5kbyhpc1VuZG8pIAogICAgICwg
bV9yZWZDb3VudCgxKQpAQCAtNjQwLDExICs2NDAsMTEgQEAgc3RhdGljIFN0cmluZyB1bmRvTmFt
ZUZvckVkaXRBY3Rpb24oRWRpdEFjdGlvbiBlZGl0QWN0aW9uKQogICAgIHJldHVybiBTdHJpbmco
KTsKIH0KIAotdm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb1N0ZXAoUGFzc1JlZlB0
cjxVbmRvU3RlcD4gc3RlcCkKK3ZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9TdGVw
KFVuZG9TdGVwJiBzdGVwKQogewogICAgIElXZWJVSURlbGVnYXRlKiB1aURlbGVnYXRlID0gMDsK
ICAgICBpZiAoU1VDQ0VFREVEKG1fd2ViVmlldy0+dWlEZWxlZ2F0ZSgmdWlEZWxlZ2F0ZSkpKSB7
Ci0gICAgICAgIFN0cmluZyBhY3Rpb25OYW1lID0gdW5kb05hbWVGb3JFZGl0QWN0aW9uKHN0ZXAt
PmVkaXRpbmdBY3Rpb24oKSk7CisgICAgICAgIFN0cmluZyBhY3Rpb25OYW1lID0gdW5kb05hbWVG
b3JFZGl0QWN0aW9uKHN0ZXAuZWRpdGluZ0FjdGlvbigpKTsKICAgICAgICAgV2ViRWRpdG9yVW5k
b0NvbW1hbmQqIHVuZG9Db21tYW5kID0gbmV3IFdlYkVkaXRvclVuZG9Db21tYW5kKHN0ZXAsIHRy
dWUpOwogICAgICAgICBpZiAoIXVuZG9Db21tYW5kKQogICAgICAgICAgICAgcmV0dXJuOwpAQCAt
NjU2LDcgKzY1Niw3IEBAIHZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9TdGVwKFBh
c3NSZWZQdHI8VW5kb1N0ZXA+IHN0ZXApCiAgICAgfQogfQogCi12b2lkIFdlYkVkaXRvckNsaWVu
dDo6cmVnaXN0ZXJSZWRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPiBzdGVwKQordm9pZCBXZWJF
ZGl0b3JDbGllbnQ6OnJlZ2lzdGVyUmVkb1N0ZXAoVW5kb1N0ZXAmIHN0ZXApCiB7CiAgICAgSVdl
YlVJRGVsZWdhdGUqIHVpRGVsZWdhdGUgPSAwOwogICAgIGlmIChTVUNDRUVERUQobV93ZWJWaWV3
LT51aURlbGVnYXRlKCZ1aURlbGVnYXRlKSkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
d2luL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oIGIvU291cmNlL1dlYktpdC93aW4v
V2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmgKaW5kZXggYjE0OGJlNzJhZmZhYjFiZjM0
NWUwMTEwN2ZiZjUyNzU4Yjg2M2U1ZS4uZGRiZTA1MTlkMWNiYWQwMWM2Y2IxY2M3ODE4ZDI5ZmY2
YTUyNDRjOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2Vi
RWRpdG9yQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2Vi
RWRpdG9yQ2xpZW50LmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA2
LTIwMDcgQXBwbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykg
MjAwNi0yMDE3IEFwcGxlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKQEAgLTMzLDkxICszMyw5MSBAQCBjbGFzcyBXZWJWaWV3OwogY2xh
c3MgV2ViTm90aWZpY2F0aW9uOwogY2xhc3MgV2ViRWRpdG9yVW5kb1RhcmdldDsKIAotY2xhc3Mg
V2ViRWRpdG9yQ2xpZW50IDogcHVibGljIFdlYkNvcmU6OkVkaXRvckNsaWVudCwgcHVibGljIFdl
YkNvcmU6OlRleHRDaGVja2VyQ2xpZW50IHsKK2NsYXNzIFdlYkVkaXRvckNsaWVudCBmaW5hbCA6
IHB1YmxpYyBXZWJDb3JlOjpFZGl0b3JDbGllbnQsIHB1YmxpYyBXZWJDb3JlOjpUZXh0Q2hlY2tl
ckNsaWVudCB7CiBwdWJsaWM6CiAgICAgV2ViRWRpdG9yQ2xpZW50KFdlYlZpZXcqKTsKICAgICB+
V2ViRWRpdG9yQ2xpZW50KCk7CiAKLSAgICB2aXJ0dWFsIGJvb2wgaXNDb250aW51b3VzU3BlbGxD
aGVja2luZ0VuYWJsZWQoKTsKLSAgICB2aXJ0dWFsIHZvaWQgdG9nZ2xlR3JhbW1hckNoZWNraW5n
KCk7Ci0gICAgdmlydHVhbCBib29sIGlzR3JhbW1hckNoZWNraW5nRW5hYmxlZCgpOwotICAgIHZp
cnR1YWwgdm9pZCB0b2dnbGVDb250aW51b3VzU3BlbGxDaGVja2luZygpOwotICAgIHZpcnR1YWwg
aW50IHNwZWxsQ2hlY2tlckRvY3VtZW50VGFnKCk7Ci0KLSAgICB2aXJ0dWFsIGJvb2wgc2hvdWxk
QmVnaW5FZGl0aW5nKFdlYkNvcmU6OlJhbmdlKik7Ci0gICAgdmlydHVhbCBib29sIHNob3VsZEVu
ZEVkaXRpbmcoV2ViQ29yZTo6UmFuZ2UqKTsKLSAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkSW5zZXJ0
VGV4dChjb25zdCBXVEY6OlN0cmluZyYsIFdlYkNvcmU6OlJhbmdlKiwgV2ViQ29yZTo6RWRpdG9y
SW5zZXJ0QWN0aW9uKTsKLQotICAgIHZpcnR1YWwgdm9pZCBkaWRCZWdpbkVkaXRpbmcoKTsKLSAg
ICB2aXJ0dWFsIHZvaWQgZGlkRW5kRWRpdGluZygpOwotICAgIHZpcnR1YWwgdm9pZCB3aWxsV3Jp
dGVTZWxlY3Rpb25Ub1Bhc3RlYm9hcmQoV2ViQ29yZTo6UmFuZ2UqKTsKLSAgICB2aXJ0dWFsIHZv
aWQgZGlkV3JpdGVTZWxlY3Rpb25Ub1Bhc3RlYm9hcmQoKTsKLSAgICB2aXJ0dWFsIHZvaWQgZ2V0
Q2xpZW50UGFzdGVib2FyZERhdGFGb3JSYW5nZShXZWJDb3JlOjpSYW5nZSosIFZlY3RvcjxTdHJp
bmc+JiBwYXN0ZWJvYXJkVHlwZXMsIFZlY3RvcjxSZWZQdHI8V2ViQ29yZTo6U2hhcmVkQnVmZmVy
PiA+JiBwYXN0ZWJvYXJkRGF0YSk7Ci0KLSAgICB2aXJ0dWFsIHZvaWQgcmVzcG9uZFRvQ2hhbmdl
ZENvbnRlbnRzKCk7Ci0gICAgdmlydHVhbCB2b2lkIHJlc3BvbmRUb0NoYW5nZWRTZWxlY3Rpb24o
V2ViQ29yZTo6RnJhbWUqKTsKK3ByaXZhdGU6CisgICAgYm9vbCBpc0NvbnRpbnVvdXNTcGVsbENo
ZWNraW5nRW5hYmxlZCgpIGZpbmFsOworICAgIHZvaWQgdG9nZ2xlR3JhbW1hckNoZWNraW5nKCkg
ZmluYWw7CisgICAgYm9vbCBpc0dyYW1tYXJDaGVja2luZ0VuYWJsZWQoKSBmaW5hbDsKKyAgICB2
b2lkIHRvZ2dsZUNvbnRpbnVvdXNTcGVsbENoZWNraW5nKCkgZmluYWw7CisgICAgaW50IHNwZWxs
Q2hlY2tlckRvY3VtZW50VGFnKCkgZmluYWw7CisKKyAgICBib29sIHNob3VsZEJlZ2luRWRpdGlu
ZyhXZWJDb3JlOjpSYW5nZSopIGZpbmFsOworICAgIGJvb2wgc2hvdWxkRW5kRWRpdGluZyhXZWJD
b3JlOjpSYW5nZSopIGZpbmFsOworICAgIGJvb2wgc2hvdWxkSW5zZXJ0VGV4dChjb25zdCBXVEY6
OlN0cmluZyYsIFdlYkNvcmU6OlJhbmdlKiwgV2ViQ29yZTo6RWRpdG9ySW5zZXJ0QWN0aW9uKSBm
aW5hbDsKKworICAgIHZvaWQgZGlkQmVnaW5FZGl0aW5nKCkgZmluYWw7CisgICAgdm9pZCBkaWRF
bmRFZGl0aW5nKCkgZmluYWw7CisgICAgdm9pZCB3aWxsV3JpdGVTZWxlY3Rpb25Ub1Bhc3RlYm9h
cmQoV2ViQ29yZTo6UmFuZ2UqKSBmaW5hbDsKKyAgICB2b2lkIGRpZFdyaXRlU2VsZWN0aW9uVG9Q
YXN0ZWJvYXJkKCkgZmluYWw7CisgICAgdm9pZCBnZXRDbGllbnRQYXN0ZWJvYXJkRGF0YUZvclJh
bmdlKFdlYkNvcmU6OlJhbmdlKiwgVmVjdG9yPFN0cmluZz4mIHBhc3RlYm9hcmRUeXBlcywgVmVj
dG9yPFJlZlB0cjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+PiYgcGFzdGVib2FyZERhdGEpIGZpbmFs
OworCisgICAgdm9pZCByZXNwb25kVG9DaGFuZ2VkQ29udGVudHMoKSBmaW5hbDsKKyAgICB2b2lk
IHJlc3BvbmRUb0NoYW5nZWRTZWxlY3Rpb24oV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKICAgICB2
b2lkIGRpZENoYW5nZVNlbGVjdGlvbkFuZFVwZGF0ZUxheW91dCgpIGZpbmFsIHsgfQogICAgIHZv
aWQgdXBkYXRlRWRpdG9yU3RhdGVBZnRlckxheW91dElmRWRpdGFiaWxpdHlDaGFuZ2VkKCkgZmlu
YWwgeyB9IAogICAgIHZvaWQgY2FuY2VsZWRDb21wb3NpdGlvbigpIGZpbmFsOwogICAgIHZvaWQg
ZGlzY2FyZGVkQ29tcG9zaXRpb24oV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKIAotICAgIGJvb2wg
c2hvdWxkRGVsZXRlUmFuZ2UoV2ViQ29yZTo6UmFuZ2UqKTsKKyAgICBib29sIHNob3VsZERlbGV0
ZVJhbmdlKFdlYkNvcmU6OlJhbmdlKikgZmluYWw7CiAKLSAgICBib29sIHNob3VsZEluc2VydE5v
ZGUoV2ViQ29yZTo6Tm9kZSosIFdlYkNvcmU6OlJhbmdlKiByZXBsYWNpbmdSYW5nZSwgV2ViQ29y
ZTo6RWRpdG9ySW5zZXJ0QWN0aW9uKTsKLSAgICBib29sIHNob3VsZEFwcGx5U3R5bGUoV2ViQ29y
ZTo6U3R5bGVQcm9wZXJ0aWVzKiwgV2ViQ29yZTo6UmFuZ2UqKTsKLSAgICB2b2lkIGRpZEFwcGx5
U3R5bGUoKTsKLSAgICBib29sIHNob3VsZE1vdmVSYW5nZUFmdGVyRGVsZXRlKFdlYkNvcmU6OlJh
bmdlKiwgV2ViQ29yZTo6UmFuZ2UqKTsKLSAgICBib29sIHNob3VsZENoYW5nZVR5cGluZ1N0eWxl
KFdlYkNvcmU6OlN0eWxlUHJvcGVydGllcyogY3VycmVudFN0eWxlLCBXZWJDb3JlOjpTdHlsZVBy
b3BlcnRpZXMqIHRvUHJvcG9zZWRTdHlsZSk7CisgICAgYm9vbCBzaG91bGRJbnNlcnROb2RlKFdl
YkNvcmU6Ok5vZGUqLCBXZWJDb3JlOjpSYW5nZSogcmVwbGFjaW5nUmFuZ2UsIFdlYkNvcmU6OkVk
aXRvckluc2VydEFjdGlvbikgZmluYWw7CisgICAgYm9vbCBzaG91bGRBcHBseVN0eWxlKFdlYkNv
cmU6OlN0eWxlUHJvcGVydGllcyosIFdlYkNvcmU6OlJhbmdlKikgZmluYWw7CisgICAgdm9pZCBk
aWRBcHBseVN0eWxlKCkgZmluYWw7CisgICAgYm9vbCBzaG91bGRNb3ZlUmFuZ2VBZnRlckRlbGV0
ZShXZWJDb3JlOjpSYW5nZSosIFdlYkNvcmU6OlJhbmdlKikgZmluYWw7CisgICAgYm9vbCBzaG91
bGRDaGFuZ2VUeXBpbmdTdHlsZShXZWJDb3JlOjpTdHlsZVByb3BlcnRpZXMqIGN1cnJlbnRTdHls
ZSwgV2ViQ29yZTo6U3R5bGVQcm9wZXJ0aWVzKiB0b1Byb3Bvc2VkU3R5bGUpIGZpbmFsOwogCi0g
ICAgdm9pZCB3ZWJWaWV3RGlkQ2hhbmdlVHlwaW5nU3R5bGUoV2ViTm90aWZpY2F0aW9uKik7Ci0g
ICAgdm9pZCB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uKFdlYk5vdGlmaWNhdGlvbiopOworICAg
IHZvaWQgd2ViVmlld0RpZENoYW5nZVR5cGluZ1N0eWxlKFdlYk5vdGlmaWNhdGlvbiopIGZpbmFs
OworICAgIHZvaWQgd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbihXZWJOb3RpZmljYXRpb24qKSBm
aW5hbDsKIAotICAgIGJvb2wgc21hcnRJbnNlcnREZWxldGVFbmFibGVkKCk7Ci0gICAgYm9vbCBp
c1NlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQoKTsKKyAgICBib29sIHNtYXJ0SW5zZXJ0
RGVsZXRlRW5hYmxlZCgpIGZpbmFsOworICAgIGJvb2wgaXNTZWxlY3RUcmFpbGluZ1doaXRlc3Bh
Y2VFbmFibGVkKCkgZmluYWw7CiAKLSAgICB2b2lkIHJlZ2lzdGVyVW5kb1N0ZXAoUGFzc1JlZlB0
cjxXZWJDb3JlOjpVbmRvU3RlcD4pOwotICAgIHZvaWQgcmVnaXN0ZXJSZWRvU3RlcChQYXNzUmVm
UHRyPFdlYkNvcmU6OlVuZG9TdGVwPik7CisgICAgdm9pZCByZWdpc3RlclVuZG9TdGVwKFdlYkNv
cmU6OlVuZG9TdGVwJikgZmluYWw7CisgICAgdm9pZCByZWdpc3RlclJlZG9TdGVwKFdlYkNvcmU6
OlVuZG9TdGVwJikgZmluYWw7CiAgICAgdm9pZCBjbGVhclVuZG9SZWRvT3BlcmF0aW9ucygpOwog
Ci0gICAgYm9vbCBjYW5Db3B5Q3V0KFdlYkNvcmU6OkZyYW1lKiwgYm9vbCBkZWZhdWx0VmFsdWUp
IGNvbnN0OwotICAgIGJvb2wgY2FuUGFzdGUoV2ViQ29yZTo6RnJhbWUqLCBib29sIGRlZmF1bHRW
YWx1ZSkgY29uc3Q7Ci0gICAgYm9vbCBjYW5VbmRvKCkgY29uc3Q7Ci0gICAgYm9vbCBjYW5SZWRv
KCkgY29uc3Q7CisgICAgYm9vbCBjYW5Db3B5Q3V0KFdlYkNvcmU6OkZyYW1lKiwgYm9vbCBkZWZh
dWx0VmFsdWUpIGNvbnN0IGZpbmFsOworICAgIGJvb2wgY2FuUGFzdGUoV2ViQ29yZTo6RnJhbWUq
LCBib29sIGRlZmF1bHRWYWx1ZSkgY29uc3QgZmluYWw7CisgICAgYm9vbCBjYW5VbmRvKCkgY29u
c3QgZmluYWw7CisgICAgYm9vbCBjYW5SZWRvKCkgY29uc3QgZmluYWw7CiAgICAgCi0gICAgdm9p
ZCB1bmRvKCk7Ci0gICAgdm9pZCByZWRvKCk7ICAgIAorICAgIHZvaWQgdW5kbygpIGZpbmFsOwor
ICAgIHZvaWQgcmVkbygpIGZpbmFsOwogICAgIAotICAgIGJvb2wgc2hvdWxkQ2hhbmdlU2VsZWN0
ZWRSYW5nZShXZWJDb3JlOjpSYW5nZSogZnJvbVJhbmdlLCBXZWJDb3JlOjpSYW5nZSogdG9SYW5n
ZSwgV2ViQ29yZTo6RUFmZmluaXR5LCBib29sIHN0aWxsU2VsZWN0aW5nKSBvdmVycmlkZTsKLSAg
ICB2b2lkIHRleHRGaWVsZERpZEJlZ2luRWRpdGluZyhXZWJDb3JlOjpFbGVtZW50Kikgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCB0ZXh0RmllbGREaWRFbmRFZGl0aW5nKFdlYkNvcmU6OkVsZW1lbnQqKSBv
dmVycmlkZTsKLSAgICB2b2lkIHRleHREaWRDaGFuZ2VJblRleHRGaWVsZChXZWJDb3JlOjpFbGVt
ZW50Kikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBkb1RleHRGaWVsZENvbW1hbmRGcm9tRXZlbnQoV2Vi
Q29yZTo6RWxlbWVudCosIFdlYkNvcmU6OktleWJvYXJkRXZlbnQqKSBvdmVycmlkZTsKLSAgICB2
b2lkIHRleHRXaWxsQmVEZWxldGVkSW5UZXh0RmllbGQoV2ViQ29yZTo6RWxlbWVudCogaW5wdXQp
IG92ZXJyaWRlOwotICAgIHZvaWQgdGV4dERpZENoYW5nZUluVGV4dEFyZWEoV2ViQ29yZTo6RWxl
bWVudCopIG92ZXJyaWRlOwotICAgIHZvaWQgb3ZlcmZsb3dTY3JvbGxQb3NpdGlvbkNoYW5nZWQo
KSBvdmVycmlkZSB7IH0KLQotICAgIHZvaWQgaGFuZGxlS2V5Ym9hcmRFdmVudChXZWJDb3JlOjpL
ZXlib2FyZEV2ZW50Kik7Ci0gICAgdm9pZCBoYW5kbGVJbnB1dE1ldGhvZEtleWRvd24oV2ViQ29y
ZTo6S2V5Ym9hcmRFdmVudCopOwotCi0gICAgYm9vbCBzaG91bGRFcmFzZU1hcmtlcnNBZnRlckNo
YW5nZVNlbGVjdGlvbihXZWJDb3JlOjpUZXh0Q2hlY2tpbmdUeXBlKSBjb25zdCBvdmVycmlkZTsK
LSAgICB2b2lkIGlnbm9yZVdvcmRJblNwZWxsRG9jdW1lbnQoY29uc3QgV1RGOjpTdHJpbmcmKSBv
dmVycmlkZTsKLSAgICB2b2lkIGxlYXJuV29yZChjb25zdCBXVEY6OlN0cmluZyYpIG92ZXJyaWRl
OwotICAgIHZvaWQgY2hlY2tTcGVsbGluZ09mU3RyaW5nKFN0cmluZ1ZpZXcsIGludCogbWlzc3Bl
bGxpbmdMb2NhdGlvbiwgaW50KiBtaXNzcGVsbGluZ0xlbmd0aCkgb3ZlcnJpZGU7Ci0gICAgV1RG
OjpTdHJpbmcgZ2V0QXV0b0NvcnJlY3RTdWdnZXN0aW9uRm9yTWlzc3BlbGxlZFdvcmQoY29uc3Qg
V1RGOjpTdHJpbmcmKSBvdmVycmlkZTsKLSAgICB2b2lkIGNoZWNrR3JhbW1hck9mU3RyaW5nKFN0
cmluZ1ZpZXcsIFZlY3RvcjxXZWJDb3JlOjpHcmFtbWFyRGV0YWlsPiYsIGludCogYmFkR3JhbW1h
ckxvY2F0aW9uLCBpbnQqIGJhZEdyYW1tYXJMZW5ndGgpIG92ZXJyaWRlOwotICAgIHZvaWQgdXBk
YXRlU3BlbGxpbmdVSVdpdGhHcmFtbWFyU3RyaW5nKGNvbnN0IFdURjo6U3RyaW5nJiwgY29uc3Qg
V2ViQ29yZTo6R3JhbW1hckRldGFpbCYpIG92ZXJyaWRlOwotICAgIHZvaWQgdXBkYXRlU3BlbGxp
bmdVSVdpdGhNaXNzcGVsbGVkV29yZChjb25zdCBXVEY6OlN0cmluZyYpIG92ZXJyaWRlOwotICAg
IHZvaWQgc2hvd1NwZWxsaW5nVUkoYm9vbCBzaG93KSBvdmVycmlkZTsKLSAgICBib29sIHNwZWxs
aW5nVUlJc1Nob3dpbmcoKSBvdmVycmlkZTsKLSAgICB2b2lkIGdldEd1ZXNzZXNGb3JXb3JkKGNv
bnN0IFdURjo6U3RyaW5nJiB3b3JkLCBjb25zdCBXVEY6OlN0cmluZyYgY29udGV4dCwgY29uc3Qg
V2ViQ29yZTo6VmlzaWJsZVNlbGVjdGlvbiYgY3VycmVudFNlbGVjdGlvbiwgV1RGOjpWZWN0b3I8
V1RGOjpTdHJpbmc+JiBndWVzc2VzKSBvdmVycmlkZTsKLQotICAgIHZvaWQgd2lsbFNldElucHV0
TWV0aG9kU3RhdGUoKSBvdmVycmlkZTsKLSAgICB2b2lkIHNldElucHV0TWV0aG9kU3RhdGUoYm9v
bCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCByZXF1ZXN0Q2hlY2tpbmdPZlN0cmluZyhXZWJDb3JlOjpU
ZXh0Q2hlY2tpbmdSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6VmlzaWJsZVNlbGVjdGlvbiYpIG92
ZXJyaWRlIHsgfQotCi0gICAgV2ViQ29yZTo6VGV4dENoZWNrZXJDbGllbnQqIHRleHRDaGVja2Vy
KCkgb3ZlcnJpZGUgeyByZXR1cm4gdGhpczsgfQorICAgIGJvb2wgc2hvdWxkQ2hhbmdlU2VsZWN0
ZWRSYW5nZShXZWJDb3JlOjpSYW5nZSogZnJvbVJhbmdlLCBXZWJDb3JlOjpSYW5nZSogdG9SYW5n
ZSwgV2ViQ29yZTo6RUFmZmluaXR5LCBib29sIHN0aWxsU2VsZWN0aW5nKSBmaW5hbDsKKyAgICB2
b2lkIHRleHRGaWVsZERpZEJlZ2luRWRpdGluZyhXZWJDb3JlOjpFbGVtZW50KikgZmluYWw7Cisg
ICAgdm9pZCB0ZXh0RmllbGREaWRFbmRFZGl0aW5nKFdlYkNvcmU6OkVsZW1lbnQqKSBmaW5hbDsK
KyAgICB2b2lkIHRleHREaWRDaGFuZ2VJblRleHRGaWVsZChXZWJDb3JlOjpFbGVtZW50KikgZmlu
YWw7CisgICAgYm9vbCBkb1RleHRGaWVsZENvbW1hbmRGcm9tRXZlbnQoV2ViQ29yZTo6RWxlbWVu
dCosIFdlYkNvcmU6OktleWJvYXJkRXZlbnQqKSBmaW5hbDsKKyAgICB2b2lkIHRleHRXaWxsQmVE
ZWxldGVkSW5UZXh0RmllbGQoV2ViQ29yZTo6RWxlbWVudCogaW5wdXQpIGZpbmFsOworICAgIHZv
aWQgdGV4dERpZENoYW5nZUluVGV4dEFyZWEoV2ViQ29yZTo6RWxlbWVudCopIGZpbmFsOworICAg
IHZvaWQgb3ZlcmZsb3dTY3JvbGxQb3NpdGlvbkNoYW5nZWQoKSBmaW5hbCB7IH0KKworICAgIHZv
aWQgaGFuZGxlS2V5Ym9hcmRFdmVudChXZWJDb3JlOjpLZXlib2FyZEV2ZW50KikgZmluYWw7Cisg
ICAgdm9pZCBoYW5kbGVJbnB1dE1ldGhvZEtleWRvd24oV2ViQ29yZTo6S2V5Ym9hcmRFdmVudCop
IGZpbmFsOworCisgICAgYm9vbCBzaG91bGRFcmFzZU1hcmtlcnNBZnRlckNoYW5nZVNlbGVjdGlv
bihXZWJDb3JlOjpUZXh0Q2hlY2tpbmdUeXBlKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIGlnbm9y
ZVdvcmRJblNwZWxsRG9jdW1lbnQoY29uc3QgV1RGOjpTdHJpbmcmKSBmaW5hbDsKKyAgICB2b2lk
IGxlYXJuV29yZChjb25zdCBXVEY6OlN0cmluZyYpIGZpbmFsOworICAgIHZvaWQgY2hlY2tTcGVs
bGluZ09mU3RyaW5nKFN0cmluZ1ZpZXcsIGludCogbWlzc3BlbGxpbmdMb2NhdGlvbiwgaW50KiBt
aXNzcGVsbGluZ0xlbmd0aCkgZmluYWw7CisgICAgV1RGOjpTdHJpbmcgZ2V0QXV0b0NvcnJlY3RT
dWdnZXN0aW9uRm9yTWlzc3BlbGxlZFdvcmQoY29uc3QgV1RGOjpTdHJpbmcmKSBmaW5hbDsKKyAg
ICB2b2lkIGNoZWNrR3JhbW1hck9mU3RyaW5nKFN0cmluZ1ZpZXcsIFZlY3RvcjxXZWJDb3JlOjpH
cmFtbWFyRGV0YWlsPiYsIGludCogYmFkR3JhbW1hckxvY2F0aW9uLCBpbnQqIGJhZEdyYW1tYXJM
ZW5ndGgpIGZpbmFsOworICAgIHZvaWQgdXBkYXRlU3BlbGxpbmdVSVdpdGhHcmFtbWFyU3RyaW5n
KGNvbnN0IFdURjo6U3RyaW5nJiwgY29uc3QgV2ViQ29yZTo6R3JhbW1hckRldGFpbCYpIGZpbmFs
OworICAgIHZvaWQgdXBkYXRlU3BlbGxpbmdVSVdpdGhNaXNzcGVsbGVkV29yZChjb25zdCBXVEY6
OlN0cmluZyYpIGZpbmFsOworICAgIHZvaWQgc2hvd1NwZWxsaW5nVUkoYm9vbCBzaG93KSBmaW5h
bDsKKyAgICBib29sIHNwZWxsaW5nVUlJc1Nob3dpbmcoKSBmaW5hbDsKKyAgICB2b2lkIGdldEd1
ZXNzZXNGb3JXb3JkKGNvbnN0IFdURjo6U3RyaW5nJiB3b3JkLCBjb25zdCBXVEY6OlN0cmluZyYg
Y29udGV4dCwgY29uc3QgV2ViQ29yZTo6VmlzaWJsZVNlbGVjdGlvbiYgY3VycmVudFNlbGVjdGlv
biwgV1RGOjpWZWN0b3I8V1RGOjpTdHJpbmc+JiBndWVzc2VzKSBmaW5hbDsKKworICAgIHZvaWQg
d2lsbFNldElucHV0TWV0aG9kU3RhdGUoKSBmaW5hbDsKKyAgICB2b2lkIHNldElucHV0TWV0aG9k
U3RhdGUoYm9vbCkgZmluYWw7CisgICAgdm9pZCByZXF1ZXN0Q2hlY2tpbmdPZlN0cmluZyhXZWJD
b3JlOjpUZXh0Q2hlY2tpbmdSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6VmlzaWJsZVNlbGVjdGlv
biYpIGZpbmFsIHsgfQorCisgICAgV2ViQ29yZTo6VGV4dENoZWNrZXJDbGllbnQqIHRleHRDaGVj
a2VyKCkgZmluYWwgeyByZXR1cm4gdGhpczsgfQogCi1wcml2YXRlOgogICAgIFdlYlZpZXcqIG1f
d2ViVmlldzsKICAgICBXZWJFZGl0b3JVbmRvVGFyZ2V0KiBtX3VuZG9UYXJnZXQ7CiB9OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJD
bGllbnQuY3BwIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2Fk
ZXJDbGllbnQuY3BwCmluZGV4IGVhMmJhY2MxNGM3YWJhY2FmNWI4Y2IwMzRmMWUzZDg1MTdiNjRj
YWMuLjM4NTY4YzBjN2UzYTQ5OWU5ODAwMzc2MDAwYTcxOGY3ZTk3YzcyNjkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNs
aWVudC5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTYg
QXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA2LTIw
MTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCkBAIC01MzMsNyArNTMzLDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnMKICAg
ICBmdW5jdGlvbihQb2xpY3lVc2UpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpk
aXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0
aW9uJiBhY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgUGFzc1JlZlB0cjxG
b3JtU3RhdGU+IGZvcm1TdGF0ZSwgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIEZyYW1lUG9saWN5
RnVuY3Rpb24gZnVuY3Rpb24pCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERl
Y2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rp
b24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUs
IGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQog
ewogICAgIFdlYlZpZXcqIHdlYlZpZXcgPSBtX3dlYkZyYW1lLT53ZWJWaWV3KCk7CiAgICAgRnJh
bWUqIGNvcmVGcmFtZSA9IGNvcmUobV93ZWJGcmFtZSk7CkBAIC01NDQsNyArNTQ0LDcgQEAgdm9p
ZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dB
Y3Rpb24oY29uc3QgTmF2aWdhdGkKICAgICAgICAgcG9saWN5RGVsZWdhdGUgPSBEZWZhdWx0UG9s
aWN5RGVsZWdhdGU6OnNoYXJlZEluc3RhbmNlKCk7CiAKICAgICBDT01QdHI8SVdlYlVSTFJlcXVl
c3Q+IHVybFJlcXVlc3QoQWRvcHRDT00sIFdlYk11dGFibGVVUkxSZXF1ZXN0OjpjcmVhdGVJbnN0
YW5jZShyZXF1ZXN0KSk7Ci0gICAgQ09NUHRyPFdlYkFjdGlvblByb3BlcnR5QmFnPiBhY3Rpb25J
bmZvcm1hdGlvbihBZG9wdENPTSwgV2ViQWN0aW9uUHJvcGVydHlCYWc6OmNyZWF0ZUluc3RhbmNl
KGFjdGlvbiwgZm9ybVN0YXRlID8gZm9ybVN0YXRlLT5mb3JtKCkgOiAwLCBjb3JlRnJhbWUpKTsK
KyAgICBDT01QdHI8V2ViQWN0aW9uUHJvcGVydHlCYWc+IGFjdGlvbkluZm9ybWF0aW9uKEFkb3B0
Q09NLCBXZWJBY3Rpb25Qcm9wZXJ0eUJhZzo6Y3JlYXRlSW5zdGFuY2UoYWN0aW9uLCBmb3JtU3Rh
dGUgPyAmZm9ybVN0YXRlLT5mb3JtKCkgOiBudWxscHRyLCBjb3JlRnJhbWUpKTsKIAogICAgIGlm
IChTVUNDRUVERUQocG9saWN5RGVsZWdhdGUtPmRlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlv
bih3ZWJWaWV3LCBhY3Rpb25JbmZvcm1hdGlvbi5nZXQoKSwgdXJsUmVxdWVzdC5nZXQoKSwgQlN0
cmluZyhmcmFtZU5hbWUpLCBzZXRVcFBvbGljeUxpc3RlbmVyKGZ1bmN0aW9uKS5nZXQoKSkpKQog
ICAgICAgICByZXR1cm47CkBAIC01NTIsNyArNTUyLDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNs
aWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdh
dGkKICAgICBmdW5jdGlvbihQb2xpY3lVc2UpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xp
ZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgTmF2aWdh
dGlvbkFjdGlvbiYgYWN0aW9uLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFBhc3NS
ZWZQdHI8Rm9ybVN0YXRlPiBmb3JtU3RhdGUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24p
Cit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmln
YXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgYWN0aW9uLCBjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSogZm9ybVN0YXRlLCBGcmFtZVBvbGljeUZ1bmN0
aW9uIGZ1bmN0aW9uKQogewogICAgIFdlYlZpZXcqIHdlYlZpZXcgPSBtX3dlYkZyYW1lLT53ZWJW
aWV3KCk7CiAgICAgRnJhbWUqIGNvcmVGcmFtZSA9IGNvcmUobV93ZWJGcmFtZSk7CkBAIC01NjMs
NyArNTYzLDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xp
Y3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5hdmlnYXQKICAgICAgICAgcG9saWN5RGVsZWdh
dGUgPSBEZWZhdWx0UG9saWN5RGVsZWdhdGU6OnNoYXJlZEluc3RhbmNlKCk7CiAKICAgICBDT01Q
dHI8SVdlYlVSTFJlcXVlc3Q+IHVybFJlcXVlc3QoQWRvcHRDT00sIFdlYk11dGFibGVVUkxSZXF1
ZXN0OjpjcmVhdGVJbnN0YW5jZShyZXF1ZXN0KSk7Ci0gICAgQ09NUHRyPFdlYkFjdGlvblByb3Bl
cnR5QmFnPiBhY3Rpb25JbmZvcm1hdGlvbihBZG9wdENPTSwgV2ViQWN0aW9uUHJvcGVydHlCYWc6
OmNyZWF0ZUluc3RhbmNlKGFjdGlvbiwgZm9ybVN0YXRlID8gZm9ybVN0YXRlLT5mb3JtKCkgOiAw
LCBjb3JlRnJhbWUpKTsKKyAgICBDT01QdHI8V2ViQWN0aW9uUHJvcGVydHlCYWc+IGFjdGlvbklu
Zm9ybWF0aW9uKEFkb3B0Q09NLCBXZWJBY3Rpb25Qcm9wZXJ0eUJhZzo6Y3JlYXRlSW5zdGFuY2Uo
YWN0aW9uLCBmb3JtU3RhdGUgPyAmZm9ybVN0YXRlLT5mb3JtKCkgOiBudWxscHRyLCBjb3JlRnJh
bWUpKTsKIAogICAgIGlmIChTVUNDRUVERUQocG9saWN5RGVsZWdhdGUtPmRlY2lkZVBvbGljeUZv
ck5hdmlnYXRpb25BY3Rpb24od2ViVmlldywgYWN0aW9uSW5mb3JtYXRpb24uZ2V0KCksIHVybFJl
cXVlc3QuZ2V0KCksIG1fd2ViRnJhbWUsIHNldFVwUG9saWN5TGlzdGVuZXIoZnVuY3Rpb24pLmdl
dCgpKSkpCiAgICAgICAgIHJldHVybjsKQEAgLTU4MiwxMSArNTgyLDExIEBAIHZvaWQgV2ViRnJh
bWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoVW5hYmxlVG9JbXBsZW1lbnRQb2xpY3koY29uc3QgUmVz
b3VyY2VFcnJvciYKICAgICBwb2xpY3lEZWxlZ2F0ZS0+dW5hYmxlVG9JbXBsZW1lbnRQb2xpY3lX
aXRoRXJyb3Iod2ViVmlldywgd2ViRXJyb3IuZ2V0KCksIG1fd2ViRnJhbWUpOwogfQogCi12b2lk
IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoUGFzc1Jl
ZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+KQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJlZjxXZWJDb3JlOjpGb3JtU3RhdGU+JiYpCiB7CiB9
CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0oUGFz
c1JlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSwgRnJhbWVQb2xpY3lGdW5jdGlvbiBmdW5jdGlv
bikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0oRm9y
bVN0YXRlJiBmb3JtU3RhdGUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24pCiB7CiAgICAg
V2ViVmlldyogd2ViVmlldyA9IG1fd2ViRnJhbWUtPndlYlZpZXcoKTsKICAgICBGcmFtZSogY29y
ZUZyYW1lID0gY29yZShtX3dlYkZyYW1lKTsKQEAgLTU5OSwxNyArNTk5LDE3IEBAIHZvaWQgV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0oUGFzc1JlZlB0cjxGb3Jt
U3RhdGU+IGZvcm1TdGF0CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBDT01QdHI8SURP
TUVsZW1lbnQ+IGZvcm1FbGVtZW50KEFkb3B0Q09NLCBET01FbGVtZW50OjpjcmVhdGVJbnN0YW5j
ZShmb3JtU3RhdGUtPmZvcm0oKSkpOworICAgIENPTVB0cjxJRE9NRWxlbWVudD4gZm9ybUVsZW1l
bnQoQWRvcHRDT00sIERPTUVsZW1lbnQ6OmNyZWF0ZUluc3RhbmNlKCZmb3JtU3RhdGUuZm9ybSgp
KSk7CiAKICAgICBIYXNoTWFwPFN0cmluZywgU3RyaW5nPiBmb3JtVmFsdWVzTWFwOwotICAgIGNv
bnN0IFN0cmluZ1BhaXJWZWN0b3ImIHRleHRGaWVsZFZhbHVlcyA9IGZvcm1TdGF0ZS0+dGV4dEZp
ZWxkVmFsdWVzKCk7CisgICAgY29uc3QgU3RyaW5nUGFpclZlY3RvciYgdGV4dEZpZWxkVmFsdWVz
ID0gZm9ybVN0YXRlLnRleHRGaWVsZFZhbHVlcygpOwogICAgIHNpemVfdCBzaXplID0gdGV4dEZp
ZWxkVmFsdWVzLnNpemUoKTsKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHNpemU7ICsraSkK
ICAgICAgICAgZm9ybVZhbHVlc01hcC5hZGQodGV4dEZpZWxkVmFsdWVzW2ldLmZpcnN0LCB0ZXh0
RmllbGRWYWx1ZXNbaV0uc2Vjb25kKTsKIAogICAgIENPTVB0cjxJUHJvcGVydHlCYWc+IGZvcm1W
YWx1ZXNQcm9wZXJ0eUJhZyhBZG9wdENPTSwgQ09NUHJvcGVydHlCYWc8U3RyaW5nPjo6Y3JlYXRl
SW5zdGFuY2UoZm9ybVZhbHVlc01hcCkpOwogCi0gICAgQ09NUHRyPFdlYkZyYW1lPiBzb3VyY2VG
cmFtZShraXQoZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLT5mcmFtZSgpKSk7CisgICAgQ09N
UHRyPFdlYkZyYW1lPiBzb3VyY2VGcmFtZShraXQoZm9ybVN0YXRlLnNvdXJjZURvY3VtZW50KCku
ZnJhbWUoKSkpOwogICAgIGlmIChTVUNDRUVERUQoZm9ybURlbGVnYXRlLT53aWxsU3VibWl0Rm9y
bShtX3dlYkZyYW1lLCBzb3VyY2VGcmFtZS5nZXQoKSwgZm9ybUVsZW1lbnQuZ2V0KCksIGZvcm1W
YWx1ZXNQcm9wZXJ0eUJhZy5nZXQoKSwgc2V0VXBQb2xpY3lMaXN0ZW5lcihmdW5jdGlvbikuZ2V0
KCkpKSkKICAgICAgICAgcmV0dXJuOwogCkBAIC0xMDEyLDI5ICsxMDEyLDIxIEBAIGJvb2wgV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmNhbkNhY2hlUGFnZSgpIGNvbnN0CiAgICAgcmV0dXJuIHRydWU7
CiB9CiAKLVJlZlB0cjxGcmFtZT4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1lKGNv
bnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIG5hbWUsIEhUTUxGcmFtZU93bmVyRWxlbWVudCog
b3duZXJFbGVtZW50LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFN0cmluZyYg
cmVmZXJyZXIsIGJvb2wgLyphbGxvd3NTY3JvbGxpbmcqLywgaW50IC8qbWFyZ2luV2lkdGgqLywg
aW50IC8qbWFyZ2luSGVpZ2h0Ki8pCi17Ci0gICAgUmVmUHRyPEZyYW1lPiByZXN1bHQgPSBjcmVh
dGVGcmFtZSh1cmwsIG5hbWUsIG93bmVyRWxlbWVudCwgcmVmZXJyZXIpOwotICAgIGlmICghcmVz
dWx0KQotICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICByZXR1cm4gcmVzdWx0OwotfQotCi1S
ZWZQdHI8RnJhbWU+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVGcmFtZShjb25zdCBVUkwm
IFVSTCwgY29uc3QgU3RyaW5nJiBuYW1lLCBIVE1MRnJhbWVPd25lckVsZW1lbnQqIG93bmVyRWxl
bWVudCwgY29uc3QgU3RyaW5nJiByZWZlcnJlcikKK1JlZlB0cjxGcmFtZT4gV2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OmNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIG5hbWUs
IEhUTUxGcmFtZU93bmVyRWxlbWVudCYgb3duZXJFbGVtZW50LAorICAgIGNvbnN0IFN0cmluZyYg
cmVmZXJyZXIsIGJvb2wgLyphbGxvd3NTY3JvbGxpbmcqLywgaW50IC8qbWFyZ2luV2lkdGgqLywg
aW50IC8qbWFyZ2luSGVpZ2h0Ki8pCiB7CiAgICAgRnJhbWUqIGNvcmVGcmFtZSA9IGNvcmUobV93
ZWJGcmFtZSk7CiAgICAgQVNTRVJUKGNvcmVGcmFtZSk7CiAKICAgICBDT01QdHI8V2ViRnJhbWU+
IHdlYkZyYW1lKEFkb3B0Q09NLCBXZWJGcmFtZTo6Y3JlYXRlSW5zdGFuY2UoKSk7CiAKLSAgICBS
ZWZQdHI8RnJhbWU+IGNoaWxkRnJhbWUgPSB3ZWJGcmFtZS0+Y3JlYXRlU3ViZnJhbWVXaXRoT3du
ZXJFbGVtZW50KG1fd2ViRnJhbWUtPndlYlZpZXcoKSwgY29yZUZyYW1lLT5wYWdlKCksIG93bmVy
RWxlbWVudCk7CisgICAgUmVmUHRyPEZyYW1lPiBjaGlsZEZyYW1lID0gd2ViRnJhbWUtPmNyZWF0
ZVN1YmZyYW1lV2l0aE93bmVyRWxlbWVudChtX3dlYkZyYW1lLT53ZWJWaWV3KCksIGNvcmVGcmFt
ZS0+cGFnZSgpLCAmb3duZXJFbGVtZW50KTsKIAogICAgIGNoaWxkRnJhbWUtPnRyZWUoKS5zZXRO
YW1lKG5hbWUpOwogICAgIGNvcmVGcmFtZS0+dHJlZSgpLmFwcGVuZENoaWxkKGNoaWxkRnJhbWUp
OwogICAgIGNoaWxkRnJhbWUtPmluaXQoKTsKIAotICAgIGNvcmVGcmFtZS0+bG9hZGVyKCkubG9h
ZFVSTEludG9DaGlsZEZyYW1lKFVSTCwgcmVmZXJyZXIsIGNoaWxkRnJhbWUuZ2V0KCkpOworICAg
IGNvcmVGcmFtZS0+bG9hZGVyKCkubG9hZFVSTEludG9DaGlsZEZyYW1lKHVybCwgcmVmZXJyZXIs
IGNoaWxkRnJhbWUuZ2V0KCkpOwogCiAgICAgLy8gVGhlIGZyYW1lJ3Mgb25sb2FkIGhhbmRsZXIg
bWF5IGhhdmUgcmVtb3ZlZCBpdCBmcm9tIHRoZSBkb2N1bWVudC4KICAgICBpZiAoIWNoaWxkRnJh
bWUtPnRyZWUoKS5wYXJlbnQoKSkKQEAgLTExMzAsNyArMTEyMiw3IEBAIHZvaWQgV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmFpbFRvU3RhcnRQbHVnaW4oY29uc3QgUGx1Z2luVmll
dyogcGx1Z2luCiAgICAgcmVzb3VyY2VMb2FkRGVsZWdhdGUtPnBsdWdJbkZhaWxlZFdpdGhFcnJv
cih3ZWJWaWV3LCBlcnJvci5nZXQoKSwgZ2V0V2ViRGF0YVNvdXJjZShmcmFtZS0+bG9hZGVyKCku
ZG9jdW1lbnRMb2FkZXIoKSkpOwogfQogCi1SZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNs
aWVudDo6Y3JlYXRlUGx1Z2luKGNvbnN0IEludFNpemUmIHBsdWdpblNpemUsIEhUTUxQbHVnSW5F
bGVtZW50KiBlbGVtZW50LCBjb25zdCBVUkwmIHVybCwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBh
cmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcywgY29uc3QgU3RyaW5n
JiBtaW1lVHlwZSwgYm9vbCBsb2FkTWFudWFsbHkpCitSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxv
YWRlckNsaWVudDo6Y3JlYXRlUGx1Z2luKGNvbnN0IEludFNpemUmIHBsdWdpblNpemUsIEhUTUxQ
bHVnSW5FbGVtZW50JiBlbGVtZW50LCBjb25zdCBVUkwmIHVybCwgY29uc3QgVmVjdG9yPFN0cmlu
Zz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcywgY29uc3Qg
U3RyaW5nJiBtaW1lVHlwZSwgYm9vbCBsb2FkTWFudWFsbHkpCiB7CiAgICAgV2ViVmlldyogd2Vi
VmlldyA9IG1fd2ViRnJhbWUtPndlYlZpZXcoKTsKIApAQCAtMTE0NCw3ICsxMTM2LDcgQEAgUmVm
UHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRT
aXplJiBwbHVnaW5TaXplLCBIVE0KICAgICAgICAgICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkg
PCBwYXJhbU5hbWVzLnNpemUoKTsgaSsrKSAKICAgICAgICAgICAgICAgICB2aWV3QXJndW1lbnRz
LnNldChwYXJhbU5hbWVzW2ldLCBwYXJhbVZhbHVlc1tpXSk7CiAgICAgICAgICAgICBDT01QdHI8
SVByb3BlcnR5QmFnPiB2aWV3QXJndW1lbnRzQmFnKEFkb3B0Q09NLCBDT01Qcm9wZXJ0eUJhZzxT
dHJpbmc+OjphZG9wdCh2aWV3QXJndW1lbnRzKSk7Ci0gICAgICAgICAgICBDT01QdHI8SURPTUVs
ZW1lbnQ+IGNvbnRhaW5pbmdFbGVtZW50KEFkb3B0Q09NLCBET01FbGVtZW50OjpjcmVhdGVJbnN0
YW5jZShlbGVtZW50KSk7CisgICAgICAgICAgICBDT01QdHI8SURPTUVsZW1lbnQ+IGNvbnRhaW5p
bmdFbGVtZW50KEFkb3B0Q09NLCBET01FbGVtZW50OjpjcmVhdGVJbnN0YW5jZSgmZWxlbWVudCkp
OwogCiAgICAgICAgICAgICBIYXNoTWFwPFN0cmluZywgQ09NVmFyaWFudD4gYXJndW1lbnRzOwog
CkBAIC0xMTYyLDEzICsxMTU0LDEzIEBAIFJlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xp
ZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYgcGx1Z2luU2l6ZSwgSFRNCiAgICAgICAg
ICAgICAgICAgSFJFU1VMVCBociA9IHdlYlZpZXctPnZpZXdXaW5kb3coJnBhcmVudFdpbmRvdyk7
CiAgICAgICAgICAgICAgICAgQVNTRVJUKFNVQ0NFRURFRChocikpOwogCi0gICAgICAgICAgICAg
ICAgcmV0dXJuIEVtYmVkZGVkV2lkZ2V0OjpjcmVhdGUodmlldy5nZXQoKSwgZWxlbWVudCwgcGFy
ZW50V2luZG93LCBwbHVnaW5TaXplKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gRW1iZWRkZWRX
aWRnZXQ6OmNyZWF0ZSh2aWV3LmdldCgpLCAmZWxlbWVudCwgcGFyZW50V2luZG93LCBwbHVnaW5T
aXplKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0KIAogICAgIEZyYW1lKiBmcmFt
ZSA9IGNvcmUobV93ZWJGcmFtZSk7Ci0gICAgUmVmUHRyPFBsdWdpblZpZXc+IHBsdWdpblZpZXcg
PSBQbHVnaW5WaWV3OjpjcmVhdGUoZnJhbWUsIHBsdWdpblNpemUsIGVsZW1lbnQsIHVybCwgcGFy
YW1OYW1lcywgcGFyYW1WYWx1ZXMsIG1pbWVUeXBlLCBsb2FkTWFudWFsbHkpOworICAgIFJlZlB0
cjxQbHVnaW5WaWV3PiBwbHVnaW5WaWV3ID0gUGx1Z2luVmlldzo6Y3JlYXRlKGZyYW1lLCBwbHVn
aW5TaXplLCAmZWxlbWVudCwgdXJsLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcywgbWltZVR5cGUs
IGxvYWRNYW51YWxseSk7CiAKICAgICBpZiAocGx1Z2luVmlldy0+c3RhdHVzKCkgPT0gUGx1Z2lu
U3RhdHVzTG9hZGVkU3VjY2Vzc2Z1bGx5KQogICAgICAgICByZXR1cm4gcGx1Z2luVmlldzsKQEAg
LTExODcsMTggKzExNzksMTggQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6cmVkaXJlY3RE
YXRhVG9QbHVnaW4oV2lkZ2V0KiBwbHVnaW5XaWRnZXQpCiAgICAgICAgIG1fbWFudWFsTG9hZGVy
ID0gc3RhdGljX2Nhc3Q8RW1iZWRkZWRXaWRnZXQqPihwbHVnaW5XaWRnZXQpOwogfQogCi1QYXNz
UmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUphdmFBcHBsZXRXaWRn
ZXQoY29uc3QgSW50U2l6ZSYgcGx1Z2luU2l6ZSwgSFRNTEFwcGxldEVsZW1lbnQqIGVsZW1lbnQs
IGNvbnN0IFVSTCYgLypiYXNlVVJMKi8sIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVz
LCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpCitSZWZQdHI8V2lkZ2V0PiBXZWJG
cmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXplJiBw
bHVnaW5TaXplLCBIVE1MQXBwbGV0RWxlbWVudCYgZWxlbWVudCwgY29uc3QgVVJMJiAvKmJhc2VV
UkwqLywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJp
bmc+JiBwYXJhbVZhbHVlcykKIHsKLSAgICBSZWZQdHI8UGx1Z2luVmlldz4gcGx1Z2luVmlldyA9
IFBsdWdpblZpZXc6OmNyZWF0ZShjb3JlKG1fd2ViRnJhbWUpLCBwbHVnaW5TaXplLCBlbGVtZW50
LCBVUkwoKSwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMsICJhcHBsaWNhdGlvbi94LWphdmEtYXBw
bGV0IiwgZmFsc2UpOworICAgIFJlZlB0cjxQbHVnaW5WaWV3PiBwbHVnaW5WaWV3ID0gUGx1Z2lu
Vmlldzo6Y3JlYXRlKGNvcmUobV93ZWJGcmFtZSksIHBsdWdpblNpemUsICZlbGVtZW50LCBVUkwo
KSwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMsICJhcHBsaWNhdGlvbi94LWphdmEtYXBwbGV0Iiwg
ZmFsc2UpOwogCiAgICAgLy8gQ2hlY2sgaWYgdGhlIHBsdWdpbiBjYW4gYmUgbG9hZGVkIHN1Y2Nl
c3NmdWxseQogICAgIGlmIChwbHVnaW5WaWV3LT5wbHVnaW4oKSAmJiBwbHVnaW5WaWV3LT5wbHVn
aW4oKS0+bG9hZCgpKQotICAgICAgICByZXR1cm4gcGx1Z2luVmlldzsKKyAgICAgICAgcmV0dXJu
IFdURk1vdmUocGx1Z2luVmlldyk7CiAKICAgICBXZWJWaWV3KiB3ZWJWaWV3ID0gbV93ZWJGcmFt
ZS0+d2ViVmlldygpOwogICAgIENPTVB0cjxJV2ViUmVzb3VyY2VMb2FkRGVsZWdhdGU+IHJlc291
cmNlTG9hZERlbGVnYXRlOwogICAgIGlmIChGQUlMRUQod2ViVmlldy0+cmVzb3VyY2VMb2FkRGVs
ZWdhdGUoJnJlc291cmNlTG9hZERlbGVnYXRlKSkpCi0gICAgICAgIHJldHVybiBwbHVnaW5WaWV3
OworICAgICAgICByZXR1cm4gV1RGTW92ZShwbHVnaW5WaWV3KTsKIAogICAgIENPTVB0cjxDRkRp
Y3Rpb25hcnlQcm9wZXJ0eUJhZz4gdXNlckluZm9CYWcgPSBDRkRpY3Rpb25hcnlQcm9wZXJ0eUJh
Zzo6Y3JlYXRlSW5zdGFuY2UoKTsKIApAQCAtMTIxMCw3ICsxMjAyLDcgQEAgUGFzc1JlZlB0cjxX
aWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0
IEludFNpemUmIHAKIAogICAgIHJlc291cmNlTG9hZERlbGVnYXRlLT5wbHVnSW5GYWlsZWRXaXRo
RXJyb3Iod2ViVmlldywgZXJyb3IuZ2V0KCksIGdldFdlYkRhdGFTb3VyY2UoY29yZUZyYW1lLT5s
b2FkZXIoKS5kb2N1bWVudExvYWRlcigpKSk7CiAKLSAgICByZXR1cm4gcGx1Z2luVmlldzsKKyAg
ICByZXR1cm4gV1RGTW92ZShwbHVnaW5WaWV3KTsKIH0KIAogV2ViSGlzdG9yeSogV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OndlYkhpc3RvcnkoKSBjb25zdApAQCAtMTI2MCw3ICsxMjUyLDcgQEAgdm9p
ZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6cmVnaXN0ZXJGb3JJY29uTm90aWZpY2F0aW9uKGJvb2wg
bGlzdGVuKQogICAgIG1fd2ViRnJhbWUtPndlYlZpZXcoKS0+cmVnaXN0ZXJGb3JJY29uTm90aWZp
Y2F0aW9uKGxpc3Rlbik7CiB9CiAKLVBhc3NSZWZQdHI8RnJhbWVOZXR3b3JraW5nQ29udGV4dD4g
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkKK1JlZjxGcmFt
ZU5ldHdvcmtpbmdDb250ZXh0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlTmV0d29ya2lu
Z0NvbnRleHQoKQogewogICAgIHJldHVybiBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0OjpjcmVh
dGUoY29yZShtX3dlYkZyYW1lKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9X
ZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oIGIvU291cmNlL1dlYktpdC93aW4v
V2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaAppbmRleCA4Y2E5YjlkZWNkMTlj
ZWM5N2U0YmE3ZDNkNTE2ODY0Y2UxODllZTc4Li5jNzY1NzVjOGNkOWJlZmU1OWYzNDA3NTY2YmE5
MjU3YzFiZDRjMTZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9y
dC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVT
dXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29w
eXJpZ2h0IChDKSAyMDA2LTIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICog
Q29weXJpZ2h0IChDKSAyMDA2LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgog
ICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC00OSw5ICs0OSw5IEBAIHB1YmxpYzoK
ICAgICB2b2lkIHNldFdlYkZyYW1lKFdlYkZyYW1lKiB3ZWJGcmFtZSkgeyBtX3dlYkZyYW1lID0g
d2ViRnJhbWU7IH0KICAgICBXZWJGcmFtZSogd2ViRnJhbWUoKSBjb25zdCB7IHJldHVybiBtX3dl
YkZyYW1lOyB9CiAKLSAgICB2aXJ0dWFsIGJvb2wgaGFzV2ViVmlldygpIGNvbnN0OworICAgIGJv
b2wgaGFzV2ViVmlldygpIGNvbnN0IG92ZXJyaWRlOwogCi0gICAgdmlydHVhbCBQYXNzUmVmUHRy
PFdlYkNvcmU6OkZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0
KCk7CisgICAgUmVmPFdlYkNvcmU6OkZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZU5ldHdv
cmtpbmdDb250ZXh0KCkgb3ZlcnJpZGU7CiAKICAgICB2b2lkIGZyYW1lTG9hZGVyRGVzdHJveWVk
KCkgb3ZlcnJpZGU7CiAgICAgdm9pZCBtYWtlUmVwcmVzZW50YXRpb24oV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXIqKSBvdmVycmlkZTsKQEAgLTYzLDcgKzYzLDcgQEAgcHVibGljOgogICAgIHZvaWQg
ZGV0YWNoZWRGcm9tUGFyZW50MygpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBjb252ZXJ0TWFpblJl
c291cmNlTG9hZFRvRG93bmxvYWQoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpT
ZXNzaW9uSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgYXNzaWduSWRl
bnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpOworICAg
IHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYgcmVk
aXJlY3RSZXNwb25zZSkgb3ZlcnJpZGU7CiAgICAgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3Rv
cmFnZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikg
b3ZlcnJpZGU7CkBAIC03Miw3ICs3Miw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGRpc3BhdGNoRGlk
UmVjZWl2ZUNvbnRlbnRMZW5ndGgoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoKSBvdmVycmlkZTsKICAgICB2b2lkIGRpc3Bh
dGNoRGlkRmluaXNoTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllcikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5n
KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7Ci0gICAgdmlydHVhbCBib29sIHNo
b3VsZENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBjb25zdCB1bnNp
Z25lZCBjaGFyKiBkYXRhLCB1bnNpZ25lZCBsb25nIGxvbmcgbGVuZ3RoKTsKKyAgICBib29sIHNo
b3VsZENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBjb25zdCB1bnNp
Z25lZCBjaGFyKiBkYXRhLCB1bnNpZ25lZCBsb25nIGxvbmcgbGVuZ3RoKSBvdmVycmlkZTsKIAog
ICAgIHZvaWQgZGlzcGF0Y2hEaWREaXNwYXRjaE9ubG9hZEV2ZW50cygpIG92ZXJyaWRlOwogICAg
IHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlU2VydmVyUmVkaXJlY3RGb3JQcm92aXNpb25hbExvYWQo
KSBvdmVycmlkZTsKQEAgLTk0LDE0ICs5NCwxNCBAQCBwdWJsaWM6CiAgICAgdm9pZCBkaXNwYXRj
aERpZFJlYWNoTGF5b3V0TWlsZXN0b25lKFdlYkNvcmU6OkxheW91dE1pbGVzdG9uZXMpIG92ZXJy
aWRlOwogCiAgICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvclJlc3BvbnNlKGNvbnN0IFdl
YkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qm
LCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3Bh
dGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRp
b25BY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPFdl
YkNvcmU6OkZvcm1TdGF0ZT4sIGNvbnN0IFdURjo6U3RyaW5nJiBmcmFtZU5hbWUsIFdlYkNvcmU6
OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQ
b2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24m
LCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPFdlYkNvcmU6OkZv
cm1TdGF0ZT4sIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOworICAgIHZv
aWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgV2ViQ29yZTo6
TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFdlYkNv
cmU6OkZvcm1TdGF0ZSosIGNvbnN0IFdURjo6U3RyaW5nJiBmcmFtZU5hbWUsIFdlYkNvcmU6OkZy
YW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xp
Y3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mLCBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpGb3JtU3RhdGUqLCBXZWJD
b3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBvdmVycmlkZTsKICAgICB2b2lkIGNhbmNlbFBvbGlj
eUNoZWNrKCkgb3ZlcnJpZGU7CiAKICAgICB2b2lkIGRpc3BhdGNoVW5hYmxlVG9JbXBsZW1lbnRQ
b2xpY3koY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwogCi0gICAgdm9p
ZCBkaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoUGFzc1JlZlB0cjxXZWJDb3JlOjpGb3JtU3Rh
dGU+KSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0oUGFzc1JlZlB0
cjxXZWJDb3JlOjpGb3JtU3RhdGU+LCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBvdmVy
cmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChSZWY8V2ViQ29yZTo6
Rm9ybVN0YXRlPiYmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0o
V2ViQ29yZTo6Rm9ybVN0YXRlJiwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgb3ZlcnJp
ZGU7CiAKICAgICB2b2lkIHJldmVydFRvUHJvdmlzaW9uYWxTdGF0ZShXZWJDb3JlOjpEb2N1bWVu
dExvYWRlciopIG92ZXJyaWRlOwogICAgIGJvb2wgZGlzcGF0Y2hEaWRMb2FkUmVzb3VyY2VGcm9t
TWVtb3J5Q2FjaGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgaW50IGxlbmd0
aCkgb3ZlcnJpZGU7CkBAIC0xMTQsOSArMTE0LDkgQEAgcHVibGljOgogCiAgICAgdm9pZCBzdGFy
dERvd25sb2FkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFN0cmluZyYg
c3VnZ2VzdGVkTmFtZSA9IFN0cmluZygpKSBvdmVycmlkZTsKIAotICAgIHZpcnR1YWwgdm9pZCBw
cm9ncmVzc1N0YXJ0ZWQoV2ViQ29yZTo6RnJhbWUmKTsKLSAgICB2aXJ0dWFsIHZvaWQgcHJvZ3Jl
c3NFc3RpbWF0ZUNoYW5nZWQoV2ViQ29yZTo6RnJhbWUmKTsKLSAgICB2aXJ0dWFsIHZvaWQgcHJv
Z3Jlc3NGaW5pc2hlZChXZWJDb3JlOjpGcmFtZSYpOworICAgIHZvaWQgcHJvZ3Jlc3NTdGFydGVk
KFdlYkNvcmU6OkZyYW1lJikgb3ZlcnJpZGU7CisgICAgdm9pZCBwcm9ncmVzc0VzdGltYXRlQ2hh
bmdlZChXZWJDb3JlOjpGcmFtZSYpIG92ZXJyaWRlOworICAgIHZvaWQgcHJvZ3Jlc3NGaW5pc2hl
ZChXZWJDb3JlOjpGcmFtZSYpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBjb21taXR0ZWRMb2FkKFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgY2hhciosIGludCkgb3ZlcnJpZGU7CiAgICAg
dm9pZCBmaW5pc2hlZExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBvdmVycmlkZTsK
QEAgLTE0OSwxMCArMTQ5LDEwIEBAIHB1YmxpYzoKIAogICAgIFdURjo6U3RyaW5nIHVzZXJBZ2Vu
dChjb25zdCBXZWJDb3JlOjpVUkwmKSBvdmVycmlkZTsKIAotICAgIHZpcnR1YWwgUmVmPFdlYkNv
cmU6OkRvY3VtZW50TG9hZGVyPiBjcmVhdGVEb2N1bWVudExvYWRlcihjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpTdWJzdGl0dXRlRGF0YSYpOworICAgIFJl
ZjxXZWJDb3JlOjpEb2N1bWVudExvYWRlcj4gY3JlYXRlRG9jdW1lbnRMb2FkZXIoY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6U3Vic3RpdHV0ZURhdGEmKSBv
dmVycmlkZTsKICAgICB2b2lkIHVwZGF0ZUNhY2hlZERvY3VtZW50TG9hZGVyKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyJikgb3ZlcnJpZGUgeyB9CiAKLSAgICB2aXJ0dWFsIHZvaWQgc2V0VGl0bGUo
Y29uc3QgV2ViQ29yZTo6U3RyaW5nV2l0aERpcmVjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlVSTCYp
OworICAgIHZvaWQgc2V0VGl0bGUoY29uc3QgV2ViQ29yZTo6U3RyaW5nV2l0aERpcmVjdGlvbiYs
IGNvbnN0IFdlYkNvcmU6OlVSTCYpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBzYXZlUGxhdGZvcm1E
YXRhVG9DYWNoZWRGcmFtZShXZWJDb3JlOjpDYWNoZWRGcmFtZSopIG92ZXJyaWRlOwogICAgIHZv
aWQgdHJhbnNpdGlvblRvQ29tbWl0dGVkRnJvbUNhY2hlZEZyYW1lKFdlYkNvcmU6OkNhY2hlZEZy
YW1lKikgb3ZlcnJpZGU7CkBAIC0xNzYsMTUgKzE3NiwxNSBAQCBwdWJsaWM6CiAKICAgICB2b2lk
IGRpc3BhdGNoRGlkQmVjb21lRnJhbWVzZXQoYm9vbCkgb3ZlcnJpZGU7CiAKLSAgICB2aXJ0dWFs
IGJvb2wgY2FuQ2FjaGVQYWdlKCkgY29uc3Q7CisgICAgYm9vbCBjYW5DYWNoZVBhZ2UoKSBjb25z
dCBvdmVycmlkZTsKIAotICAgIFJlZlB0cjxXZWJDb3JlOjpGcmFtZT4gY3JlYXRlRnJhbWUoY29u
c3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgV1RGOjpTdHJpbmcmIG5hbWUsIFdlYkNvcmU6OkhUTUxG
cmFtZU93bmVyRWxlbWVudCosCisgICAgUmVmUHRyPFdlYkNvcmU6OkZyYW1lPiBjcmVhdGVGcmFt
ZShjb25zdCBXZWJDb3JlOjpVUkwmLCBjb25zdCBXVEY6OlN0cmluZyYgbmFtZSwgV2ViQ29yZTo6
SFRNTEZyYW1lT3duZXJFbGVtZW50JiwKICAgICAgICAgY29uc3QgV1RGOjpTdHJpbmcmIHJlZmVy
cmVyLCBib29sIGFsbG93c1Njcm9sbGluZywgaW50IG1hcmdpbldpZHRoLCBpbnQgbWFyZ2luSGVp
Z2h0KSBvdmVycmlkZTsKLSAgICBSZWZQdHI8V2ViQ29yZTo6V2lkZ2V0PiBjcmVhdGVQbHVnaW4o
Y29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50KiwgY29u
c3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgVmVjdG9yPFdURjo6U3RyaW5nPiYsIGNvbnN0IFZlY3Rv
cjxXVEY6OlN0cmluZz4mLCBjb25zdCBXVEY6OlN0cmluZyYsIGJvb2wgbG9hZE1hbnVhbGx5KSBv
dmVycmlkZTsKKyAgICBSZWZQdHI8V2ViQ29yZTo6V2lkZ2V0PiBjcmVhdGVQbHVnaW4oY29uc3Qg
V2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50JiwgY29uc3QgV2Vi
Q29yZTo6VVJMJiwgY29uc3QgVmVjdG9yPFdURjo6U3RyaW5nPiYsIGNvbnN0IFZlY3RvcjxXVEY6
OlN0cmluZz4mLCBjb25zdCBXVEY6OlN0cmluZyYsIGJvb2wgbG9hZE1hbnVhbGx5KSBvdmVycmlk
ZTsKICAgICB2b2lkIHJlY3JlYXRlUGx1Z2luKFdlYkNvcmU6OldpZGdldCopIG92ZXJyaWRlIHsg
fQogICAgIHZvaWQgcmVkaXJlY3REYXRhVG9QbHVnaW4oV2ViQ29yZTo6V2lkZ2V0KiBwbHVnaW5X
aWRnZXQpIG92ZXJyaWRlOwogCi0gICAgUGFzc1JlZlB0cjxXZWJDb3JlOjpXaWRnZXQ+IGNyZWF0
ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxB
cHBsZXRFbGVtZW50KiwgY29uc3QgV2ViQ29yZTo6VVJMJiBiYXNlVVJMLCBjb25zdCBWZWN0b3I8
V1RGOjpTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiBwYXJh
bVZhbHVlcykgb3ZlcnJpZGU7CisgICAgUmVmUHRyPFdlYkNvcmU6OldpZGdldD4gY3JlYXRlSmF2
YUFwcGxldFdpZGdldChjb25zdCBXZWJDb3JlOjpJbnRTaXplJiwgV2ViQ29yZTo6SFRNTEFwcGxl
dEVsZW1lbnQmLCBjb25zdCBXZWJDb3JlOjpVUkwmIGJhc2VVUkwsIGNvbnN0IFZlY3RvcjxXVEY6
OlN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mIHBhcmFtVmFs
dWVzKSBvdmVycmlkZTsKIAogICAgIFdlYkNvcmU6Ok9iamVjdENvbnRlbnRUeXBlIG9iamVjdENv
bnRlbnRUeXBlKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNvbnN0IFdURjo6U3RyaW5nJiBtaW1lVHlw
ZSkgb3ZlcnJpZGU7CiAgICAgV1RGOjpTdHJpbmcgb3ZlcnJpZGVNZWRpYVR5cGUoKSBjb25zdCBv
dmVycmlkZTsKQEAgLTE5NiwyMCArMTk2LDE4IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgcmVnaXN0
ZXJGb3JJY29uTm90aWZpY2F0aW9uKGJvb2wgbGlzdGVuKSBvdmVycmlkZTsKIAotICAgIHZpcnR1
YWwgYm9vbCBzaG91bGRBbHdheXNVc2VQbHVnaW5Eb2N1bWVudChjb25zdCBXVEY6OlN0cmluZyYg
bWltZVR5cGUpIGNvbnN0OwotCi0gICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoRGlkRmFpbFRvU3Rh
cnRQbHVnaW4oY29uc3QgV2ViQ29yZTo6UGx1Z2luVmlldyopIGNvbnN0OworICAgIGJvb2wgc2hv
dWxkQWx3YXlzVXNlUGx1Z2luRG9jdW1lbnQoY29uc3QgV1RGOjpTdHJpbmcmIG1pbWVUeXBlKSBj
b25zdCBvdmVycmlkZTsKIAogICAgIHZvaWQgcHJlZmV0Y2hETlMoY29uc3QgU3RyaW5nJikgb3Zl
cnJpZGU7CiAKLXByb3RlY3RlZDoKLSAgICBjbGFzcyBXZWJGcmFtZVBvbGljeUxpc3RlbmVyUHJp
dmF0ZTsKLSAgICBzdGQ6OnVuaXF1ZV9wdHI8V2ViRnJhbWVQb2xpY3lMaXN0ZW5lclByaXZhdGU+
IG1fcG9saWN5TGlzdGVuZXJQcml2YXRlOwotCiBwcml2YXRlOgotICAgIFJlZlB0cjxXZWJDb3Jl
OjpGcmFtZT4gY3JlYXRlRnJhbWUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgV1RGOjpTdHJp
bmcmIG5hbWUsIFdlYkNvcmU6OkhUTUxGcmFtZU93bmVyRWxlbWVudCosIGNvbnN0IFdURjo6U3Ry
aW5nJiByZWZlcnJlcik7CiAgICAgV2ViSGlzdG9yeSogd2ViSGlzdG9yeSgpIGNvbnN0OwogCisg
ICAgdm9pZCBkaXNwYXRjaERpZEZhaWxUb1N0YXJ0UGx1Z2luKGNvbnN0IFdlYkNvcmU6OlBsdWdp
blZpZXcqKSBjb25zdDsKKworICAgIGNsYXNzIFdlYkZyYW1lUG9saWN5TGlzdGVuZXJQcml2YXRl
OworICAgIHN0ZDo6dW5pcXVlX3B0cjxXZWJGcmFtZVBvbGljeUxpc3RlbmVyUHJpdmF0ZT4gbV9w
b2xpY3lMaXN0ZW5lclByaXZhdGU7CisKICAgICBXZWJGcmFtZSogbV93ZWJGcmFtZTsKIAogICAg
IC8vIFBvaW50cyB0byB0aGUgbWFudWFsIGxvYWRlciB0aGF0IGRhdGEgc2hvdWxkIGJlIHJlZGly
ZWN0ZWQgdG8uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9X
ZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0LmggYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3Vw
cG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0LmgKaW5kZXggZWFjMzA3MjBhYzFhNTRmODY1
MTAxYmZmNTE0MGM3NGRlMGFmYjBmOS4uZmIyYTc4MzVkOGY4NzM5ZDRjMTUwYWI1MjgzZTViN2Qy
MGI1OGVhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2Vi
RnJhbWVOZXR3b3JraW5nQ29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVT
dXBwb3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQuaApAQCAtMjgsOSArMjgsOSBAQAogCiBj
bGFzcyBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0IDogcHVibGljIFdlYkNvcmU6OkZyYW1lTmV0
d29ya2luZ0NvbnRleHQgewogcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFdlYkZyYW1l
TmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZShXZWJDb3JlOjpGcmFtZSogZnJhbWUpCisgICAgc3Rh
dGljIFJlZjxXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBjcmVhdGUoV2ViQ29yZTo6RnJhbWUq
IGZyYW1lKQogICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBXZWJGcmFtZU5ldHdv
cmtpbmdDb250ZXh0KGZyYW1lKSk7CisgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYkZy
YW1lTmV0d29ya2luZ0NvbnRleHQoZnJhbWUpKTsKICAgICB9CiAKICNpZiBVU0UoQ0ZVUkxDT05O
RUNUSU9OKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSVdlYkFyY2hpdmUu
aCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUElXZWJBcmNoaXZlLmgKaW5kZXggZDk2YjU5NmRh
YmZiZTkwNjhhYzUzNDEwNjg3YmZhMmQxODYxOGIyMy4uODM3NTc3N2RiODBmZTA3ZWFjODM0OTMw
MzNiZDE4NjRhYmFjN2E3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSVdl
YkFyY2hpdmUuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJV2ViQXJjaGl2ZS5oCkBA
IC0yOSw3ICsyOSw2IEBACiAjaWYgUExBVEZPUk0oQ09DT0EpCiAKICNpbmNsdWRlICJBUElPYmpl
Y3QuaCIKLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIu
aD4KIAogbmFtZXNwYWNlIEFQSSB7CkBAIC01MCw5ICs0OSw5IEBAIGNsYXNzIFdlYkFyY2hpdmUg
OiBwdWJsaWMgQVBJOjpPYmplY3RJbXBsPEFQSTo6T2JqZWN0OjpUeXBlOjpXZWJBcmNoaXZlPiB7
CiBwdWJsaWM6CiAgICAgdmlydHVhbCB+V2ViQXJjaGl2ZSgpOwogCi0gICAgc3RhdGljIFJlZjxX
ZWJBcmNoaXZlPiBjcmVhdGUoV2ViQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3VyY2UsIFBhc3NS
ZWZQdHI8QVBJOjpBcnJheT4gc3VicmVzb3VyY2VzLCBQYXNzUmVmUHRyPEFQSTo6QXJyYXk+IHN1
YmZyYW1lQXJjaGl2ZXMpOworICAgIHN0YXRpYyBSZWY8V2ViQXJjaGl2ZT4gY3JlYXRlKFdlYkFy
Y2hpdmVSZXNvdXJjZSogbWFpblJlc291cmNlLCBSZWZQdHI8QVBJOjpBcnJheT4mJiBzdWJyZXNv
dXJjZXMsIFJlZlB0cjxBUEk6OkFycmF5PiYmIHN1YmZyYW1lQXJjaGl2ZXMpOwogICAgIHN0YXRp
YyBSZWY8V2ViQXJjaGl2ZT4gY3JlYXRlKEFQSTo6RGF0YSopOwotICAgIHN0YXRpYyBSZWY8V2Vi
QXJjaGl2ZT4gY3JlYXRlKFBhc3NSZWZQdHI8V2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZT4pOwor
ICAgIHN0YXRpYyBSZWY8V2ViQXJjaGl2ZT4gY3JlYXRlKFJlZlB0cjxXZWJDb3JlOjpMZWdhY3lX
ZWJBcmNoaXZlPiYmKTsKICAgICBzdGF0aWMgUmVmPFdlYkFyY2hpdmU+IGNyZWF0ZShXZWJDb3Jl
OjpSYW5nZSopOwogCiAgICAgV2ViQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3VyY2UoKTsKQEAg
LTY0LDkgKzYzLDkgQEAgcHVibGljOgogICAgIFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hpdmUqIGNv
cmVMZWdhY3lXZWJBcmNoaXZlKCk7CiAKIHByaXZhdGU6Ci0gICAgV2ViQXJjaGl2ZShXZWJBcmNo
aXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSwgUGFzc1JlZlB0cjxBUEk6OkFycmF5PiBzdWJyZXNv
dXJjZXMsIFBhc3NSZWZQdHI8QVBJOjpBcnJheT4gc3ViZnJhbWVBcmNoaXZlcyk7CisgICAgV2Vi
QXJjaGl2ZShXZWJBcmNoaXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSwgUmVmUHRyPEFQSTo6QXJy
YXk+JiYgc3VicmVzb3VyY2VzLCBSZWZQdHI8QVBJOjpBcnJheT4mJiBzdWJmcmFtZUFyY2hpdmVz
KTsKICAgICBXZWJBcmNoaXZlKEFQSTo6RGF0YSopOwotICAgIFdlYkFyY2hpdmUoUGFzc1JlZlB0
cjxXZWJDb3JlOjpMZWdhY3lXZWJBcmNoaXZlPik7CisgICAgV2ViQXJjaGl2ZShSZWZQdHI8V2Vi
Q29yZTo6TGVnYWN5V2ViQXJjaGl2ZT4mJik7CiAKICAgICBSZWZQdHI8V2ViQ29yZTo6TGVnYWN5
V2ViQXJjaGl2ZT4gbV9sZWdhY3lXZWJBcmNoaXZlOwogICAgIFJlZlB0cjxXZWJBcmNoaXZlUmVz
b3VyY2U+IG1fY2FjaGVkTWFpblJlc291cmNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
U2hhcmVkL0FQSVdlYkFyY2hpdmUubW0gYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJV2ViQXJj
aGl2ZS5tbQppbmRleCA5MjkwM2IzNDdhNDlmY2VjZmE2YzM1YzU5ZTJmNmQ2OTE2ZDk4MmU5Li5m
MmYwZmUwMTcxZjllMzMzMTQ0N2QzNmQwYTQ3YzZkYmUwMWEyMzJlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9TaGFyZWQvQVBJV2ViQXJjaGl2ZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9T
aGFyZWQvQVBJV2ViQXJjaGl2ZS5tbQpAQCAtMzgsOSArMzgsOSBAQCB1c2luZyBuYW1lc3BhY2Ug
V2ViQ29yZTsKIAogbmFtZXNwYWNlIEFQSSB7CiAKLVJlZjxXZWJBcmNoaXZlPiBXZWJBcmNoaXZl
OjpjcmVhdGUoV2ViQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3VyY2UsIFBhc3NSZWZQdHI8QVBJ
OjpBcnJheT4gc3VicmVzb3VyY2VzLCBQYXNzUmVmUHRyPEFQSTo6QXJyYXk+IHN1YmZyYW1lQXJj
aGl2ZXMpCitSZWY8V2ViQXJjaGl2ZT4gV2ViQXJjaGl2ZTo6Y3JlYXRlKFdlYkFyY2hpdmVSZXNv
dXJjZSogbWFpblJlc291cmNlLCBSZWZQdHI8QVBJOjpBcnJheT4mJiBzdWJyZXNvdXJjZXMsIFJl
ZlB0cjxBUEk6OkFycmF5PiYmIHN1YmZyYW1lQXJjaGl2ZXMpCiB7Ci0gICAgcmV0dXJuIGFkb3B0
UmVmKCpuZXcgV2ViQXJjaGl2ZShtYWluUmVzb3VyY2UsIHN1YnJlc291cmNlcywgc3ViZnJhbWVB
cmNoaXZlcykpOworICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYkFyY2hpdmUobWFpblJlc291
cmNlLCBXVEZNb3ZlKHN1YnJlc291cmNlcyksIFdURk1vdmUoc3ViZnJhbWVBcmNoaXZlcykpKTsK
IH0KIAogUmVmPFdlYkFyY2hpdmU+IFdlYkFyY2hpdmU6OmNyZWF0ZShBUEk6OkRhdGEqIGRhdGEp
CkBAIC00OCw5ICs0OCw5IEBAIFJlZjxXZWJBcmNoaXZlPiBXZWJBcmNoaXZlOjpjcmVhdGUoQVBJ
OjpEYXRhKiBkYXRhKQogICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYkFyY2hpdmUoZGF0YSkp
OwogfQogCi1SZWY8V2ViQXJjaGl2ZT4gV2ViQXJjaGl2ZTo6Y3JlYXRlKFBhc3NSZWZQdHI8TGVn
YWN5V2ViQXJjaGl2ZT4gbGVnYWN5V2ViQXJjaGl2ZSkKK1JlZjxXZWJBcmNoaXZlPiBXZWJBcmNo
aXZlOjpjcmVhdGUoUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+JiYgbGVnYWN5V2ViQXJjaGl2ZSkK
IHsKLSAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBXZWJBcmNoaXZlKGxlZ2FjeVdlYkFyY2hpdmUp
KTsKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBXZWJBcmNoaXZlKGxlZ2FjeVdlYkFyY2hpdmUu
cmVsZWFzZU5vbk51bGwoKSkpOwogfQogCiBSZWY8V2ViQXJjaGl2ZT4gV2ViQXJjaGl2ZTo6Y3Jl
YXRlKFJhbmdlKiByYW5nZSkKQEAgLTU4LDMxICs1OCwzMiBAQCBSZWY8V2ViQXJjaGl2ZT4gV2Vi
QXJjaGl2ZTo6Y3JlYXRlKFJhbmdlKiByYW5nZSkKICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBX
ZWJBcmNoaXZlKExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShyYW5nZSkpKTsKIH0KIAotV2ViQXJj
aGl2ZTo6V2ViQXJjaGl2ZShXZWJBcmNoaXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSwgUGFzc1Jl
ZlB0cjxBUEk6OkFycmF5PiBzdWJyZXNvdXJjZXMsIFBhc3NSZWZQdHI8QVBJOjpBcnJheT4gc3Vi
ZnJhbWVBcmNoaXZlcykKK1dlYkFyY2hpdmU6OldlYkFyY2hpdmUoV2ViQXJjaGl2ZVJlc291cmNl
KiBtYWluUmVzb3VyY2UsIFJlZlB0cjxBUEk6OkFycmF5PiYmIHN1YnJlc291cmNlcywgUmVmUHRy
PEFQSTo6QXJyYXk+JiYgc3ViZnJhbWVBcmNoaXZlcykKICAgICA6IG1fY2FjaGVkTWFpblJlc291
cmNlKG1haW5SZXNvdXJjZSkKICAgICAsIG1fY2FjaGVkU3VicmVzb3VyY2VzKHN1YnJlc291cmNl
cykKICAgICAsIG1fY2FjaGVkU3ViZnJhbWVBcmNoaXZlcyhzdWJmcmFtZUFyY2hpdmVzKQogewot
ICAgIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IGNvcmVNYWluUmVzb3VyY2UgPSBtX2NhY2hlZE1h
aW5SZXNvdXJjZS0+Y29yZUFyY2hpdmVSZXNvdXJjZSgpOworICAgIGF1dG8gY29yZU1haW5SZXNv
dXJjZSA9IG1fY2FjaGVkTWFpblJlc291cmNlLT5jb3JlQXJjaGl2ZVJlc291cmNlKCk7CiAKLSAg
ICBWZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+IGNvcmVBcmNoaXZlUmVzb3VyY2VzOwor
ICAgIFZlY3RvcjxSZWY8QXJjaGl2ZVJlc291cmNlPj4gY29yZUFyY2hpdmVSZXNvdXJjZXM7CiAg
ICAgY29yZUFyY2hpdmVSZXNvdXJjZXMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShtX2NhY2hlZFN1
YnJlc291cmNlcy0+c2l6ZSgpKTsKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1fY2FjaGVk
U3VicmVzb3VyY2VzLT5zaXplKCk7ICsraSkgewotICAgICAgICBSZWZQdHI8V2ViQXJjaGl2ZVJl
c291cmNlPiByZXNvdXJjZSA9IG1fY2FjaGVkU3VicmVzb3VyY2VzLT5hdDxXZWJBcmNoaXZlUmVz
b3VyY2U+KGkpOworICAgICAgICBhdXRvIHJlc291cmNlID0gbV9jYWNoZWRTdWJyZXNvdXJjZXMt
PmF0PFdlYkFyY2hpdmVSZXNvdXJjZT4oaSk7CiAgICAgICAgIEFTU0VSVChyZXNvdXJjZSk7Ci0g
ICAgICAgIGNvcmVBcmNoaXZlUmVzb3VyY2VzLnVuY2hlY2tlZEFwcGVuZChyZXNvdXJjZS0+Y29y
ZUFyY2hpdmVSZXNvdXJjZSgpKTsKKyAgICAgICAgQVNTRVJUKHJlc291cmNlLT5jb3JlQXJjaGl2
ZVJlc291cmNlKCkpOworICAgICAgICBjb3JlQXJjaGl2ZVJlc291cmNlcy51bmNoZWNrZWRBcHBl
bmQoKnJlc291cmNlLT5jb3JlQXJjaGl2ZVJlc291cmNlKCkpOwogICAgIH0KIAotICAgIFZlY3Rv
cjxSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4+IGNvcmVTdWJmcmFtZUxlZ2FjeVdlYkFyY2hpdmVz
OworICAgIFZlY3RvcjxSZWY8TGVnYWN5V2ViQXJjaGl2ZT4+IGNvcmVTdWJmcmFtZUxlZ2FjeVdl
YkFyY2hpdmVzOwogICAgIGNvcmVTdWJmcmFtZUxlZ2FjeVdlYkFyY2hpdmVzLnJlc2VydmVJbml0
aWFsQ2FwYWNpdHkobV9jYWNoZWRTdWJmcmFtZUFyY2hpdmVzLT5zaXplKCkpOwotCiAgICAgZm9y
IChzaXplX3QgaSA9IDA7IGkgPCBtX2NhY2hlZFN1YmZyYW1lQXJjaGl2ZXMtPnNpemUoKTsgKytp
KSB7Ci0gICAgICAgIFJlZlB0cjxXZWJBcmNoaXZlPiBzdWJmcmFtZVdlYkFyY2hpdmUgPSBtX2Nh
Y2hlZFN1YmZyYW1lQXJjaGl2ZXMtPmF0PFdlYkFyY2hpdmU+KGkpOworICAgICAgICBhdXRvIHN1
YmZyYW1lV2ViQXJjaGl2ZSA9IG1fY2FjaGVkU3ViZnJhbWVBcmNoaXZlcy0+YXQ8V2ViQXJjaGl2
ZT4oaSk7CiAgICAgICAgIEFTU0VSVChzdWJmcmFtZVdlYkFyY2hpdmUpOwotICAgICAgICBjb3Jl
U3ViZnJhbWVMZWdhY3lXZWJBcmNoaXZlcy51bmNoZWNrZWRBcHBlbmQoc3ViZnJhbWVXZWJBcmNo
aXZlLT5jb3JlTGVnYWN5V2ViQXJjaGl2ZSgpKTsKKyAgICAgICAgQVNTRVJUKHN1YmZyYW1lV2Vi
QXJjaGl2ZS0+Y29yZUxlZ2FjeVdlYkFyY2hpdmUoKSk7CisgICAgICAgIGNvcmVTdWJmcmFtZUxl
Z2FjeVdlYkFyY2hpdmVzLnVuY2hlY2tlZEFwcGVuZCgqc3ViZnJhbWVXZWJBcmNoaXZlLT5jb3Jl
TGVnYWN5V2ViQXJjaGl2ZSgpKTsKICAgICB9CiAKLSAgICBtX2xlZ2FjeVdlYkFyY2hpdmUgPSBM
ZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoV1RGTW92ZShjb3JlTWFpblJlc291cmNlKSwgV1RGTW92
ZShjb3JlQXJjaGl2ZVJlc291cmNlcyksIFdURk1vdmUoY29yZVN1YmZyYW1lTGVnYWN5V2ViQXJj
aGl2ZXMpKTsKKyAgICBtX2xlZ2FjeVdlYkFyY2hpdmUgPSBMZWdhY3lXZWJBcmNoaXZlOjpjcmVh
dGUoKmNvcmVNYWluUmVzb3VyY2UsIFdURk1vdmUoY29yZUFyY2hpdmVSZXNvdXJjZXMpLCBXVEZN
b3ZlKGNvcmVTdWJmcmFtZUxlZ2FjeVdlYkFyY2hpdmVzKSk7CiB9CiAKIFdlYkFyY2hpdmU6Oldl
YkFyY2hpdmUoQVBJOjpEYXRhKiBkYXRhKQpAQCAtOTAsNyArOTEsNyBAQCBXZWJBcmNoaXZlOjpX
ZWJBcmNoaXZlKEFQSTo6RGF0YSogZGF0YSkKICAgICBtX2xlZ2FjeVdlYkFyY2hpdmUgPSBMZWdh
Y3lXZWJBcmNoaXZlOjpjcmVhdGUoU2hhcmVkQnVmZmVyOjpjcmVhdGUoZGF0YS0+Ynl0ZXMoKSwg
ZGF0YS0+c2l6ZSgpKS5nZXQoKSk7CiB9CiAKLVdlYkFyY2hpdmU6OldlYkFyY2hpdmUoUGFzc1Jl
ZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBsZWdhY3lXZWJBcmNoaXZlKQorV2ViQXJjaGl2ZTo6V2Vi
QXJjaGl2ZShSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4mJiBsZWdhY3lXZWJBcmNoaXZlKQogICAg
IDogbV9sZWdhY3lXZWJBcmNoaXZlKGxlZ2FjeVdlYkFyY2hpdmUpCiB7CiB9CkBAIC0xMTEsMTAg
KzExMiw4IEBAIEFQSTo6QXJyYXkqIFdlYkFyY2hpdmU6OnN1YnJlc291cmNlcygpCiAgICAgaWYg
KCFtX2NhY2hlZFN1YnJlc291cmNlcykgewogICAgICAgICBWZWN0b3I8UmVmUHRyPEFQSTo6T2Jq
ZWN0Pj4gc3VicmVzb3VyY2VzOwogICAgICAgICBzdWJyZXNvdXJjZXMucmVzZXJ2ZUluaXRpYWxD
YXBhY2l0eShtX2xlZ2FjeVdlYkFyY2hpdmUtPnN1YnJlc291cmNlcygpLnNpemUoKSk7Ci0KLSAg
ICAgICAgZm9yIChjb25zdCBhdXRvJiBzdWJyZXNvdXJjZSA6IG1fbGVnYWN5V2ViQXJjaGl2ZS0+
c3VicmVzb3VyY2VzKCkpCi0gICAgICAgICAgICBzdWJyZXNvdXJjZXMudW5jaGVja2VkQXBwZW5k
KFdlYkFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKHN1YnJlc291cmNlKSk7Ci0KKyAgICAgICAgZm9y
IChhdXRvJiBzdWJyZXNvdXJjZSA6IG1fbGVnYWN5V2ViQXJjaGl2ZS0+c3VicmVzb3VyY2VzKCkp
CisgICAgICAgICAgICBzdWJyZXNvdXJjZXMudW5jaGVja2VkQXBwZW5kKFdlYkFyY2hpdmVSZXNv
dXJjZTo6Y3JlYXRlKHN1YnJlc291cmNlLnB0cigpKSk7CiAgICAgICAgIG1fY2FjaGVkU3VicmVz
b3VyY2VzID0gQVBJOjpBcnJheTo6Y3JlYXRlKFdURk1vdmUoc3VicmVzb3VyY2VzKSk7CiAgICAg
fQogCkBAIC0xMjYsMTAgKzEyNSw4IEBAIEFQSTo6QXJyYXkqIFdlYkFyY2hpdmU6OnN1YmZyYW1l
QXJjaGl2ZXMoKQogICAgIGlmICghbV9jYWNoZWRTdWJmcmFtZUFyY2hpdmVzKSB7CiAgICAgICAg
IFZlY3RvcjxSZWZQdHI8QVBJOjpPYmplY3Q+PiBzdWJmcmFtZVdlYkFyY2hpdmVzOwogICAgICAg
ICBzdWJmcmFtZVdlYkFyY2hpdmVzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobV9sZWdhY3lXZWJB
cmNoaXZlLT5zdWJmcmFtZUFyY2hpdmVzKCkuc2l6ZSgpKTsKLQotICAgICAgICBmb3IgKGNvbnN0
IGF1dG8mIHN1YmZyYW1lQXJjaGl2ZSA6IG1fbGVnYWN5V2ViQXJjaGl2ZS0+c3ViZnJhbWVBcmNo
aXZlcygpKQotICAgICAgICAgICAgc3ViZnJhbWVXZWJBcmNoaXZlcy51bmNoZWNrZWRBcHBlbmQo
V2ViQXJjaGl2ZTo6Y3JlYXRlKHN0YXRpY19jYXN0PExlZ2FjeVdlYkFyY2hpdmUqPihzdWJmcmFt
ZUFyY2hpdmUuZ2V0KCkpKSk7Ci0KKyAgICAgICAgZm9yIChhdXRvJiBzdWJmcmFtZUFyY2hpdmUg
OiBtX2xlZ2FjeVdlYkFyY2hpdmUtPnN1YmZyYW1lQXJjaGl2ZXMoKSkKKyAgICAgICAgICAgIHN1
YmZyYW1lV2ViQXJjaGl2ZXMudW5jaGVja2VkQXBwZW5kKFdlYkFyY2hpdmU6OmNyZWF0ZShzdGF0
aWNfY2FzdDxMZWdhY3lXZWJBcmNoaXZlKj4oc3ViZnJhbWVBcmNoaXZlLnB0cigpKSkpOwogICAg
ICAgICBtX2NhY2hlZFN1YmZyYW1lQXJjaGl2ZXMgPSBBUEk6OkFycmF5OjpjcmVhdGUoV1RGTW92
ZShzdWJmcmFtZVdlYkFyY2hpdmVzKSk7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9TaGFyZWQvVGV4dENoZWNrZXJTdGF0ZS5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1Rl
eHRDaGVja2VyU3RhdGUuaAppbmRleCBiY2M5ZmVjY2NjYjJmNjliNzY3OTg0Njg1MTljZDQyYjAz
N2NhMmRkLi5jZTY2ZjEwMjUwMjNhYWRlZjg4ZDM1Nzg2Nzg5OTg2MTA5YjJjY2ZiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvVGV4dENoZWNrZXJTdGF0ZS5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL1NoYXJlZC9UZXh0Q2hlY2tlclN0YXRlLmgKQEAgLTIzLDIzICsyMywyMiBAQAog
ICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgVGV4dENo
ZWNrZXJTdGF0ZV9oCi0jZGVmaW5lIFRleHRDaGVja2VyU3RhdGVfaAorI3ByYWdtYSBvbmNlCiAK
ICNpbmNsdWRlICJBcmd1bWVudENvZGVycy5oIgogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogc3Ry
dWN0IFRleHRDaGVja2VyU3RhdGUgewotICAgIGJvb2wgaXNDb250aW51b3VzU3BlbGxDaGVja2lu
Z0VuYWJsZWQ7Ci0gICAgYm9vbCBpc0dyYW1tYXJDaGVja2luZ0VuYWJsZWQ7CisgICAgYm9vbCBp
c0NvbnRpbnVvdXNTcGVsbENoZWNraW5nRW5hYmxlZCB7IGZhbHNlIH07CisgICAgYm9vbCBpc0dy
YW1tYXJDaGVja2luZ0VuYWJsZWQgeyBmYWxzZSB9OwogCiAjaWYgVVNFKEFQUEtJVCkKLSAgICBi
b29sIGlzQXV0b21hdGljU3BlbGxpbmdDb3JyZWN0aW9uRW5hYmxlZDsKLSAgICBib29sIGlzQXV0
b21hdGljUXVvdGVTdWJzdGl0dXRpb25FbmFibGVkOwotICAgIGJvb2wgaXNBdXRvbWF0aWNEYXNo
U3Vic3RpdHV0aW9uRW5hYmxlZDsKLSAgICBib29sIGlzQXV0b21hdGljTGlua0RldGVjdGlvbkVu
YWJsZWQ7Ci0gICAgYm9vbCBpc0F1dG9tYXRpY1RleHRSZXBsYWNlbWVudEVuYWJsZWQ7CisgICAg
Ym9vbCBpc0F1dG9tYXRpY1NwZWxsaW5nQ29ycmVjdGlvbkVuYWJsZWQgeyBmYWxzZSB9OworICAg
IGJvb2wgaXNBdXRvbWF0aWNRdW90ZVN1YnN0aXR1dGlvbkVuYWJsZWQgeyBmYWxzZSB9OworICAg
IGJvb2wgaXNBdXRvbWF0aWNEYXNoU3Vic3RpdHV0aW9uRW5hYmxlZCB7IGZhbHNlIH07CisgICAg
Ym9vbCBpc0F1dG9tYXRpY0xpbmtEZXRlY3Rpb25FbmFibGVkIHsgZmFsc2UgfTsKKyAgICBib29s
IGlzQXV0b21hdGljVGV4dFJlcGxhY2VtZW50RW5hYmxlZCB7IGZhbHNlIH07CiAjZW5kaWYKIH07
CiAKQEAgLTQ4LDUgKzQ3LDMgQEAgc3RydWN0IFRleHRDaGVja2VyU3RhdGUgewogbmFtZXNwYWNl
IElQQyB7CiB0ZW1wbGF0ZTw+IHN0cnVjdCBBcmd1bWVudENvZGVyPFdlYktpdDo6VGV4dENoZWNr
ZXJTdGF0ZT4gOiBTaW1wbGVBcmd1bWVudENvZGVyPFdlYktpdDo6VGV4dENoZWNrZXJTdGF0ZT4g
eyB9OwogfTsKLQotI2VuZGlmIC8vIFRleHRDaGVja2VyU3RhdGVfaApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkljb25EYXRhYmFzZS5jcHAgYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvV2ViSWNvbkRhdGFiYXNlLmNwcAppbmRleCA1NmY1ZGExYTIwMTNhMDlhNjlh
NWZiZWEyNGZlNGE2YmJiYjBhMDA0Li44OTJjMDVmZGFjZjRiMzNhYzg1YzZjNDU1ZDU4M2E0ZTg3
OWZiYmYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViSWNvbkRhdGFi
YXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViSWNvbkRhdGFiYXNlLmNw
cApAQCAtMTMwLDcgKzEzMCw3IEBAIHZvaWQgV2ViSWNvbkRhdGFiYXNlOjpzZXRJY29uRGF0YUZv
ckljb25VUkwoY29uc3QgSVBDOjpEYXRhUmVmZXJlbmNlJiBpY29uRGF0YSwKICAgICBMT0coSWNv
bkRhdGFiYXNlLCAiV0syIFVJUHJvY2VzcyBzZXR0aW5nIGljb24gZGF0YSAoJWkgYnl0ZXMpIGZv
ciBwYWdlIFVSTCAlcyIsIChpbnQpaWNvbkRhdGEuc2l6ZSgpLCBpY29uVVJMLmFzY2lpKCkuZGF0
YSgpKTsKICAgICBpZiAoIW1faWNvbkRhdGFiYXNlSW1wbCkKICAgICAgICAgcmV0dXJuOwotICAg
IG1faWNvbkRhdGFiYXNlSW1wbC0+c2V0SWNvbkRhdGFGb3JJY29uVVJMKFNoYXJlZEJ1ZmZlcjo6
Y3JlYXRlKGljb25EYXRhLmRhdGEoKSwgaWNvbkRhdGEuc2l6ZSgpKSwgaWNvblVSTCk7CisgICAg
bV9pY29uRGF0YWJhc2VJbXBsLT5zZXRJY29uRGF0YUZvckljb25VUkwoU2hhcmVkQnVmZmVyOjpj
cmVhdGUoaWNvbkRhdGEuZGF0YSgpLCBpY29uRGF0YS5zaXplKCkpLnB0cigpLCBpY29uVVJMKTsK
IH0KIAogdm9pZCBXZWJJY29uRGF0YWJhc2U6OnN5bmNocm9ub3VzSWNvbkRhdGFGb3JQYWdlVVJM
KGNvbnN0IFN0cmluZyYsIElQQzo6RGF0YVJlZmVyZW5jZSYgaWNvbkRhdGEpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmggYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKaW5kZXggNzU4YzIzOTU5ODUwNTI0Mzk4NmMwNzM3
NTE0OWMzZWVlYjEzNzI4Ni4uNDYwNmRmMTE0YWQ3Nzc0ZTQzNzk0MGU0ZmMwOTg3YTlmMWFkZjZh
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaApAQCAtMTg2LDcgKzE4
Niw2IEBAIGNsYXNzIFBhZ2VDbGllbnQ7CiBjbGFzcyBSZW1vdGVMYXllclRyZWVTY3JvbGxpbmdQ
ZXJmb3JtYW5jZURhdGE7CiBjbGFzcyBSZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbjsKIGNsYXNz
IFJlbW90ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yUHJveHk7Ci1jbGFzcyBTdHJpbmdQYWlyVmVjdG9y
OwogY2xhc3MgVXNlckRhdGE7CiBjbGFzcyBWaWV3U25hcHNob3Q7CiBjbGFzcyBWaXNpdGVkTGlu
a1N0b3JlOwpAQCAtMjA2LDExICsyMDUsMTIgQEAgY2xhc3MgV2ViUHJvY2Vzc1Byb3h5OwogY2xh
c3MgV2ViVXNlckNvbnRlbnRDb250cm9sbGVyUHJveHk7CiBjbGFzcyBXZWJXaGVlbEV2ZW50Owog
Y2xhc3MgV2Vic2l0ZURhdGFTdG9yZTsKK2NsYXNzIEdhbWVwYWREYXRhOworCiBzdHJ1Y3QgQXR0
cmlidXRlZFN0cmluZzsKIHN0cnVjdCBDb2xvclNwYWNlRGF0YTsKIHN0cnVjdCBFZGl0aW5nUmFu
Z2U7CiBzdHJ1Y3QgRWRpdG9yU3RhdGU7Ci1jbGFzcyBHYW1lcGFkRGF0YTsKIHN0cnVjdCBJbnRl
cmFjdGlvbkluZm9ybWF0aW9uUmVxdWVzdDsKIHN0cnVjdCBMb2FkUGFyYW1ldGVyczsKIHN0cnVj
dCBQbGF0Zm9ybVBvcHVwTWVudURhdGE7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5jcHAgYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5jcHAKaW5k
ZXggMzNmZTU4N2U0MTU3NjM4NDAwMzMxNTA5ZDhmN2IyNTNjNzMzZTg5ZC4uNTQyZWRkZDZkYzA5
YjNiYWMxNDdlODNlMWNiNzY0NTk4OTg5N2IzNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9JY29uRGF0YWJhc2UvV2ViSWNvbkRhdGFiYXNlUHJveHkuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSWNvbkRhdGFiYXNlL1dlYkljb25EYXRhYmFzZVByb3h5
LmNwcApAQCAtNDIsMTEgKzQyLDEwIEBAIFdlYkljb25EYXRhYmFzZVByb3h5Ojp+V2ViSWNvbkRh
dGFiYXNlUHJveHkoKQogewogfQogCi1XZWJJY29uRGF0YWJhc2VQcm94eTo6V2ViSWNvbkRhdGFi
YXNlUHJveHkoV2ViUHJvY2VzcyogcHJvY2VzcykKLSAgICA6IG1faXNFbmFibGVkKGZhbHNlKQot
ICAgICwgbV9wcm9jZXNzKHByb2Nlc3MpCitXZWJJY29uRGF0YWJhc2VQcm94eTo6V2ViSWNvbkRh
dGFiYXNlUHJveHkoV2ViUHJvY2VzcyYgcHJvY2VzcykKKyAgICA6IG1fcHJvY2Vzcyhwcm9jZXNz
KQogewotICAgIG1fcHJvY2Vzcy0+YWRkTWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpXZWJJY29u
RGF0YWJhc2VQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCAqdGhpcyk7CisgICAgbV9wcm9j
ZXNzLmFkZE1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlUHJveHk6Om1l
c3NhZ2VSZWNlaXZlck5hbWUoKSwgKnRoaXMpOwogfQogCiBib29sIFdlYkljb25EYXRhYmFzZVBy
b3h5Ojppc0VuYWJsZWQoKSBjb25zdApAQCAtNjUsMTggKzY0LDE4IEBAIHZvaWQgV2ViSWNvbkRh
dGFiYXNlUHJveHk6OnNldEVuYWJsZWQoYm9vbCBlbmFibGVkKQogCiB2b2lkIFdlYkljb25EYXRh
YmFzZVByb3h5OjpyZXRhaW5JY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIHBhZ2VVUkwpCiB7
Ci0gICAgbV9wcm9jZXNzLT5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2Vz
OjpXZWJQcm9jZXNzUHJveHk6OlJldGFpbkljb25Gb3JQYWdlVVJMKHBhZ2VVUkwpLCAwKTsKKyAg
ICBtX3Byb2Nlc3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2Vi
UHJvY2Vzc1Byb3h5OjpSZXRhaW5JY29uRm9yUGFnZVVSTChwYWdlVVJMKSwgMCk7CiB9CiAKIHZv
aWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnJlbGVhc2VJY29uRm9yUGFnZVVSTChjb25zdCBTdHJp
bmcmIHBhZ2VVUkwpCiB7Ci0gICAgbV9wcm9jZXNzLT5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigp
LT5zZW5kKE1lc3NhZ2VzOjpXZWJQcm9jZXNzUHJveHk6OlJlbGVhc2VJY29uRm9yUGFnZVVSTChw
YWdlVVJMKSwgMCk7CisgICAgbV9wcm9jZXNzLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNl
bmQoTWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6UmVsZWFzZUljb25Gb3JQYWdlVVJMKHBhZ2VV
UkwpLCAwKTsKIH0KIAogSW1hZ2UqIFdlYkljb25EYXRhYmFzZVByb3h5OjpzeW5jaHJvbm91c0lj
b25Gb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYgcGFnZVVSTCwgY29uc3QgSW50U2l6ZSYgLypzaXpl
Ki8pCiB7CiAgICAgSVBDOjpEYXRhUmVmZXJlbmNlIHJlc3VsdDsKLSAgICBpZiAoIW1fcHJvY2Vz
cy0+cGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYkljb25E
YXRhYmFzZTo6U3luY2hyb25vdXNJY29uRGF0YUZvclBhZ2VVUkwocGFnZVVSTCksIE1lc3NhZ2Vz
OjpXZWJJY29uRGF0YWJhc2U6OlN5bmNocm9ub3VzSWNvbkRhdGFGb3JQYWdlVVJMOjpSZXBseShy
ZXN1bHQpLCAwKSkKKyAgICBpZiAoIW1fcHJvY2Vzcy5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigp
LT5zZW5kU3luYyhNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpTeW5jaHJvbm91c0ljb25EYXRh
Rm9yUGFnZVVSTChwYWdlVVJMKSwgTWVzc2FnZXM6OldlYkljb25EYXRhYmFzZTo6U3luY2hyb25v
dXNJY29uRGF0YUZvclBhZ2VVUkw6OlJlcGx5KHJlc3VsdCksIDApKQogICAgICAgICByZXR1cm4g
MDsKICAgICAKICAgICAvLyBGSVhNRTogUmV0dXJuIEltYWdlIGNyZWF0ZWQgd2l0aCB0aGUgYWJv
dmUgZGF0YS4KQEAgLTExMCwzNCArMTA5LDMyIEBAIGJvb2wgV2ViSWNvbkRhdGFiYXNlUHJveHk6
OnN1cHBvcnRzQXN5bmNocm9ub3VzTW9kZSgpCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLXZvaWQg
V2ViSWNvbkRhdGFiYXNlUHJveHk6OmxvYWREZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5n
JiBpY29uVVJMLCBQYXNzUmVmUHRyPFdlYkNvcmU6Okljb25Mb2FkRGVjaXNpb25DYWxsYmFjaz4g
Y2FsbGJhY2spCit2b2lkIFdlYkljb25EYXRhYmFzZVByb3h5Ojpsb2FkRGVjaXNpb25Gb3JJY29u
VVJMKGNvbnN0IFN0cmluZyYgaWNvblVSTCwgV2ViQ29yZTo6SWNvbkxvYWREZWNpc2lvbkNhbGxi
YWNrJiBjYWxsYmFjaykKIHsKLSAgICB1aW50NjRfdCBpZCA9IGNhbGxiYWNrLT5jYWxsYmFja0lE
KCk7Ci0gICAgbV9pY29uTG9hZERlY2lzaW9uQ2FsbGJhY2tzLmFkZChpZCwgY2FsbGJhY2spOwot
ICAgIAotICAgIG1fcHJvY2Vzcy0+cGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNz
YWdlczo6V2ViSWNvbkRhdGFiYXNlOjpHZXRMb2FkRGVjaXNpb25Gb3JJY29uVVJMKGljb25VUkws
IGlkKSwgMCk7CisgICAgdWludDY0X3QgaWQgPSBjYWxsYmFjay5jYWxsYmFja0lEKCk7CisgICAg
bV9pY29uTG9hZERlY2lzaW9uQ2FsbGJhY2tzLmFkZChpZCwgJmNhbGxiYWNrKTsKKyAgICBtX3By
b2Nlc3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViSWNvbkRh
dGFiYXNlOjpHZXRMb2FkRGVjaXNpb25Gb3JJY29uVVJMKGljb25VUkwsIGlkKSwgMCk7CiB9CiAK
IHZvaWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnJlY2VpdmVkSWNvbkxvYWREZWNpc2lvbihpbnQg
ZGVjaXNpb24sIHVpbnQ2NF90IGNhbGxiYWNrSUQpCiB7Ci0gICAgUmVmUHRyPFdlYkNvcmU6Oklj
b25Mb2FkRGVjaXNpb25DYWxsYmFjaz4gY2FsbGJhY2sgPSBtX2ljb25Mb2FkRGVjaXNpb25DYWxs
YmFja3MudGFrZShjYWxsYmFja0lEKTsKLSAgICBpZiAoY2FsbGJhY2spCisgICAgaWYgKGF1dG8g
Y2FsbGJhY2sgPSBtX2ljb25Mb2FkRGVjaXNpb25DYWxsYmFja3MudGFrZShjYWxsYmFja0lEKSkK
ICAgICAgICAgY2FsbGJhY2stPnBlcmZvcm1DYWxsYmFjayhzdGF0aWNfY2FzdDxXZWJDb3JlOjpJ
Y29uTG9hZERlY2lzaW9uPihkZWNpc2lvbikpOwogfQogCi12b2lkIFdlYkljb25EYXRhYmFzZVBy
b3h5OjppY29uRGF0YUZvckljb25VUkwoY29uc3QgU3RyaW5nJiAvKmljb25VUkwqLywgUGFzc1Jl
ZlB0cjxXZWJDb3JlOjpJY29uRGF0YUNhbGxiYWNrPikKK3ZvaWQgV2ViSWNvbkRhdGFiYXNlUHJv
eHk6Omljb25EYXRhRm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpJY29uRGF0YUNh
bGxiYWNrJikKIHsKIH0KIAogdm9pZCBXZWJJY29uRGF0YWJhc2VQcm94eTo6c2V0SWNvblVSTEZv
clBhZ2VVUkwoY29uc3QgU3RyaW5nJiBpY29uVVJMLCBjb25zdCBTdHJpbmcmIHBhZ2VVUkwpCiB7
Ci0gICAgbV9wcm9jZXNzLT5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2Vz
OjpXZWJJY29uRGF0YWJhc2U6OlNldEljb25VUkxGb3JQYWdlVVJMKGljb25VUkwsIHBhZ2VVUkwp
LCAwKTsKKyAgICBtX3Byb2Nlc3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNz
YWdlczo6V2ViSWNvbkRhdGFiYXNlOjpTZXRJY29uVVJMRm9yUGFnZVVSTChpY29uVVJMLCBwYWdl
VVJMKSwgMCk7CiB9CiAKLXZvaWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnNldEljb25EYXRhRm9y
SWNvblVSTChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaWNvbkRhdGEsIGNvbnN0IFN0cmluZyYg
aWNvblVSTCkKK3ZvaWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnNldEljb25EYXRhRm9ySWNvblVS
TChTaGFyZWRCdWZmZXIqIGljb25EYXRhLCBjb25zdCBTdHJpbmcmIGljb25VUkwpCiB7Ci0gICAg
SVBDOjpEYXRhUmVmZXJlbmNlIGRhdGEocmVpbnRlcnByZXRfY2FzdDxjb25zdCB1aW50OF90Kj4o
aWNvbkRhdGEgPyBpY29uRGF0YS0+ZGF0YSgpIDogMCksIGljb25EYXRhID8gaWNvbkRhdGEtPnNp
emUoKSA6IDApOwotICAgIG1fcHJvY2Vzcy0+cGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2Vu
ZChNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpTZXRJY29uRGF0YUZvckljb25VUkwoZGF0YSwg
aWNvblVSTCksIDApOworICAgIElQQzo6RGF0YVJlZmVyZW5jZSBkYXRhKHJlaW50ZXJwcmV0X2Nh
c3Q8Y29uc3QgdWludDhfdCo+KGljb25EYXRhID8gaWNvbkRhdGEtPmRhdGEoKSA6IG51bGxwdHIp
LCBpY29uRGF0YSA/IGljb25EYXRhLT5zaXplKCkgOiAwKTsKKyAgICBtX3Byb2Nlc3MucGFyZW50
UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpTZXRJ
Y29uRGF0YUZvckljb25VUkwoZGF0YSwgaWNvblVSTCksIDApOwogfQogCiB2b2lkIFdlYkljb25E
YXRhYmFzZVByb3h5Ojp1cmxJbXBvcnRGaW5pc2hlZCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5oIGIvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JY29uRGF0YWJhc2UvV2ViSWNvbkRhdGFiYXNlUHJveHku
aAppbmRleCA2MmEwNmMzZjk0ZjdkN2UwOTc2MzViNTJiNzhjNDMzOGViM2NhOGJkLi5iZGY4ZDRj
ZjYzYWJlOWNlYTNkMmFjMTk4MWU5MDZlYjY2MWY1YTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5oCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSWNvbkRhdGFiYXNlL1dlYkljb25EYXRhYmFzZVBy
b3h5LmgKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KICAqLwogCi0jaWZuZGVmIFdlYkljb25EYXRhYmFzZVByb3h5X2gKLSNkZWZpbmUgV2ViSWNv
bkRhdGFiYXNlUHJveHlfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJBUElPYmplY3QuaCIK
ICNpbmNsdWRlICJNZXNzYWdlUmVjZWl2ZXIuaCIKQEAgLTM3LDQzICszNiw0MSBAQCBuYW1lc3Bh
Y2UgV2ViS2l0IHsKIAogY2xhc3MgV2ViUHJvY2VzczsKIAotY2xhc3MgV2ViSWNvbkRhdGFiYXNl
UHJveHkgOiBwdWJsaWMgV2ViQ29yZTo6SWNvbkRhdGFiYXNlQmFzZSwgcHJpdmF0ZSBJUEM6Ok1l
c3NhZ2VSZWNlaXZlciB7CitjbGFzcyBXZWJJY29uRGF0YWJhc2VQcm94eSBmaW5hbCA6IHB1Ymxp
YyBXZWJDb3JlOjpJY29uRGF0YWJhc2VCYXNlLCBwcml2YXRlIElQQzo6TWVzc2FnZVJlY2VpdmVy
IHsKIHB1YmxpYzoKLSAgICBleHBsaWNpdCBXZWJJY29uRGF0YWJhc2VQcm94eShXZWJQcm9jZXNz
Kik7CisgICAgZXhwbGljaXQgV2ViSWNvbkRhdGFiYXNlUHJveHkoV2ViUHJvY2VzcyYpOwogICAg
IHZpcnR1YWwgfldlYkljb25EYXRhYmFzZVByb3h5KCk7CiAKLSAgICBib29sIGlzRW5hYmxlZCgp
IGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQgc2V0RW5hYmxlZChib29sKSBvdmVycmlkZTsKKyAg
ICB2b2lkIHNldEVuYWJsZWQoYm9vbCkgZmluYWw7CiAKLSAgICB2b2lkIHJldGFpbkljb25Gb3JQ
YWdlVVJMKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVsZWFzZUljb25Gb3JQ
YWdlVVJMKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0SWNvblVSTEZvclBh
Z2VVUkwoY29uc3QgU3RyaW5nJiwgY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBz
ZXRJY29uRGF0YUZvckljb25VUkwoUGFzc1JlZlB0cjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+LCBj
b25zdCBTdHJpbmcmKSBvdmVycmlkZTsKK3ByaXZhdGU6CisgICAgYm9vbCBpc0VuYWJsZWQoKSBj
b25zdCBmaW5hbDsKKworICAgIHZvaWQgcmV0YWluSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5n
JikgZmluYWw7CisgICAgdm9pZCByZWxlYXNlSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikg
ZmluYWw7CisgICAgdm9pZCBzZXRJY29uVVJMRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmLCBjb25z
dCBTdHJpbmcmKSBmaW5hbDsKKyAgICB2b2lkIHNldEljb25EYXRhRm9ySWNvblVSTChXZWJDb3Jl
OjpTaGFyZWRCdWZmZXIqLCBjb25zdCBTdHJpbmcmKSBmaW5hbDsKIAotICAgIFN0cmluZyBzeW5j
aHJvbm91c0ljb25VUkxGb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAgIGJv
b2wgc3luY2hyb25vdXNJY29uRGF0YUtub3duRm9ySWNvblVSTChjb25zdCBTdHJpbmcmKSBvdmVy
cmlkZTsKLSAgICBXZWJDb3JlOjpJY29uTG9hZERlY2lzaW9uIHN5bmNocm9ub3VzTG9hZERlY2lz
aW9uRm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIG92
ZXJyaWRlOwotICAgIFdlYkNvcmU6OkltYWdlKiBzeW5jaHJvbm91c0ljb25Gb3JQYWdlVVJMKGNv
bnN0IFN0cmluZyYsIGNvbnN0IFdlYkNvcmU6OkludFNpemUmKSBvdmVycmlkZTsKKyAgICBTdHJp
bmcgc3luY2hyb25vdXNJY29uVVJMRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmKSBmaW5hbDsKKyAg
ICBib29sIHN5bmNocm9ub3VzSWNvbkRhdGFLbm93bkZvckljb25VUkwoY29uc3QgU3RyaW5nJikg
ZmluYWw7CisgICAgV2ViQ29yZTo6SWNvbkxvYWREZWNpc2lvbiBzeW5jaHJvbm91c0xvYWREZWNp
c2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5nJiwgV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBm
aW5hbDsKKyAgICBXZWJDb3JlOjpJbWFnZSogc3luY2hyb25vdXNJY29uRm9yUGFnZVVSTChjb25z
dCBTdHJpbmcmLCBjb25zdCBXZWJDb3JlOjpJbnRTaXplJikgZmluYWw7CiAgICAgCi0gICAgLy8g
QXN5bmNocm9ub3VzIGNhbGxzIHdlIHNob3VsZCB1c2UgdG8gcmVwbGFjZSB0aGUgYWJvdmUgd2hl
biBzdXBwb3J0ZWQuCi0gICAgYm9vbCBzdXBwb3J0c0FzeW5jaHJvbm91c01vZGUoKSBvdmVycmlk
ZTsKLSAgICB2b2lkIGxvYWREZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5nJiwgUGFzc1Jl
ZlB0cjxXZWJDb3JlOjpJY29uTG9hZERlY2lzaW9uQ2FsbGJhY2s+KSBvdmVycmlkZTsKKyAgICBi
b29sIHN1cHBvcnRzQXN5bmNocm9ub3VzTW9kZSgpIGZpbmFsOworICAgIHZvaWQgbG9hZERlY2lz
aW9uRm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpJY29uTG9hZERlY2lzaW9uQ2Fs
bGJhY2smKSBmaW5hbDsKICAgICB2b2lkIHJlY2VpdmVkSWNvbkxvYWREZWNpc2lvbihpbnQgZGVj
aXNpb24sIHVpbnQ2NF90IGNhbGxiYWNrSUQpOwotICAgIHZvaWQgaWNvbkRhdGFGb3JJY29uVVJM
KGNvbnN0IFN0cmluZyYsIFBhc3NSZWZQdHI8V2ViQ29yZTo6SWNvbkRhdGFDYWxsYmFjaz4pIG92
ZXJyaWRlOworICAgIHZvaWQgaWNvbkRhdGFGb3JJY29uVVJMKGNvbnN0IFN0cmluZyYsIFdlYkNv
cmU6Okljb25EYXRhQ2FsbGJhY2smKSBmaW5hbDsKIAotcHJpdmF0ZToKICAgICAvLyBJUEM6Ok1l
c3NhZ2VSZWNlaXZlcgotICAgIHZvaWQgZGlkUmVjZWl2ZU1lc3NhZ2UoSVBDOjpDb25uZWN0aW9u
JiwgSVBDOjpEZWNvZGVyJikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRSZWNlaXZlTWVzc2FnZShJ
UEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXImKSBmaW5hbDsKICAgICAKICAgICAvLyBDYWxs
YmFja3MgZnJvbSB0aGUgVUlQcm9jZXNzCiAgICAgdm9pZCB1cmxJbXBvcnRGaW5pc2hlZCgpOwog
Ci0gICAgYm9vbCBtX2lzRW5hYmxlZDsKLSAgICBXZWJQcm9jZXNzKiBtX3Byb2Nlc3M7CisgICAg
Ym9vbCBtX2lzRW5hYmxlZCB7IGZhbHNlIH07CisgICAgV2ViUHJvY2VzcyYgbV9wcm9jZXNzOwog
ICAgIAogICAgIEhhc2hNYXA8dWludDY0X3QsIFJlZlB0cjxXZWJDb3JlOjpJY29uTG9hZERlY2lz
aW9uQ2FsbGJhY2s+PiBtX2ljb25Mb2FkRGVjaXNpb25DYWxsYmFja3M7CiB9OwogCiB9IC8vIG5h
bWVzcGFjZSBXZWJLaXQKLQotI2VuZGlmIC8vIFdlYkljb25EYXRhYmFzZVByb3h5X2gKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRC
dW5kbGVOYXZpZ2F0aW9uQWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5q
ZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uLmNwcAppbmRleCAxOTYz
YTFhMDI2NTUzOTEwYzJlZGM2YTY0N2EzOWRhOTllMmI4MTIxLi4zNTY5ZmQ4NzViZTg2Yzk1ODZm
MGVlN2IyNTAwMTNjOTdjM2M1M2RlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbi5jcHAKKysr
IGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRs
ZU5hdmlnYXRpb25BY3Rpb24uY3BwCkBAIC0xMDIsNyArMTAyLDcgQEAgUmVmPEluamVjdGVkQnVu
ZGxlTmF2aWdhdGlvbkFjdGlvbj4gSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uOjpjcmVh
dGUoV2ViRnIKICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBJbmplY3RlZEJ1bmRsZU5hdmlnYXRp
b25BY3Rpb24oZnJhbWUsIGFjdGlvbiwgZm9ybVN0YXRlKSk7CiB9CiAKLUluamVjdGVkQnVuZGxl
TmF2aWdhdGlvbkFjdGlvbjo6SW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uKFdlYkZyYW1l
KiBmcmFtZSwgY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgbmF2aWdhdGlvbkFjdGlvbiwgUGFzc1Jl
ZlB0cjxGb3JtU3RhdGU+IHBycEZvcm1TdGF0ZSkKK0luamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFj
dGlvbjo6SW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uKFdlYkZyYW1lKiBmcmFtZSwgY29u
c3QgTmF2aWdhdGlvbkFjdGlvbiYgbmF2aWdhdGlvbkFjdGlvbiwgUGFzc1JlZlB0cjxGb3JtU3Rh
dGU+IGZvcm1TdGF0ZSkKICAgICA6IG1fbmF2aWdhdGlvblR5cGUobmF2aWdhdGlvbkFjdGlvbi50
eXBlKCkpCiAgICAgLCBtX21vZGlmaWVycyhtb2RpZmllcnNGb3JOYXZpZ2F0aW9uQWN0aW9uKG5h
dmlnYXRpb25BY3Rpb24pKQogICAgICwgbV9tb3VzZUJ1dHRvbihXZWJNb3VzZUV2ZW50OjpOb0J1
dHRvbikKQEAgLTExNiwxMSArMTE2LDggQEAgSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9u
OjpJbmplY3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rpb24oV2ViRnJhbWUqIGZyYW1lLAogICAgICAg
ICBtX3N5bnRoZXRpY0NsaWNrVHlwZSA9IHN5bnRoZXRpY0NsaWNrVHlwZUZvck5hdmlnYXRpb25B
Y3Rpb24obmF2aWdhdGlvbkFjdGlvbik7CiAgICAgfQogCi0gICAgUmVmUHRyPEZvcm1TdGF0ZT4g
Zm9ybVN0YXRlID0gcHJwRm9ybVN0YXRlOwotICAgIGlmIChmb3JtU3RhdGUpIHsKLSAgICAgICAg
QVNTRVJUKGZvcm1TdGF0ZS0+Zm9ybSgpKTsKLSAgICAgICAgbV9mb3JtRWxlbWVudCAgID0gSW5q
ZWN0ZWRCdW5kbGVOb2RlSGFuZGxlOjpnZXRPckNyZWF0ZShmb3JtU3RhdGUtPmZvcm0oKSk7Ci0g
ICAgfQorICAgIGlmIChmb3JtU3RhdGUpCisgICAgICAgIG1fZm9ybUVsZW1lbnQgPSBJbmplY3Rl
ZEJ1bmRsZU5vZGVIYW5kbGU6OmdldE9yQ3JlYXRlKGZvcm1TdGF0ZS0+Zm9ybSgpKTsKIH0KIAog
fSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmNwcAppbmRleCAxMjEwMjUxZjU0ZDdmMjU1
NjVmODliZWY1NDQ3YmMxZDQ4YWFhNmQ1Li4zNjFmOWUyY2FiODI5ZDgzMjUwMGYzYTY0MTU0NTA1
NmExOTA0MGNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL05ldHdvcmsv
V2ViTG9hZGVyU3RyYXRlZ3kuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvTmV0
d29yay9XZWJMb2FkZXJTdHJhdGVneS5jcHAKQEAgLTE2Myw3ICsxNjMsNyBAQCB2b2lkIFdlYkxv
YWRlclN0cmF0ZWd5OjpzY2hlZHVsZUxvYWQoUmVzb3VyY2VMb2FkZXImIHJlc291cmNlTG9hZGVy
LCBDYWNoZWRSZXNvdQogICAgIH0KICNlbmRpZgogCi0gICAgaWYgKHJlc291cmNlTG9hZGVyLmRv
Y3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZFJlc291cmNl
KHJlc291cmNlTG9hZGVyLCByZXNvdXJjZUxvYWRlci5yZXF1ZXN0KCksIHJlc291cmNlTG9hZGVy
LnJlcXVlc3QoKS51cmwoKSkpIHsKKyAgICBpZiAocmVzb3VyY2VMb2FkZXIuZG9jdW1lbnRMb2Fk
ZXIoKS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS5tYXliZUxvYWRSZXNvdXJjZShyZXNvdXJjZUxv
YWRlciwgcmVzb3VyY2VMb2FkZXIucmVxdWVzdCgpLCByZXNvdXJjZUxvYWRlci5yZXF1ZXN0KCku
dXJsKCkpKSB7CiAgICAgICAgIExPRyhOZXR3b3JrU2NoZWR1bGluZywgIihXZWJQcm9jZXNzKSBX
ZWJMb2FkZXJTdHJhdGVneTo6c2NoZWR1bGVMb2FkLCB1cmwgJyVzJyB3aWxsIGJlIGxvYWRlZCBm
cm9tIGFwcGxpY2F0aW9uIGNhY2hlLiIsIHJlc291cmNlTG9hZGVyLnVybCgpLnN0cmluZygpLnV0
ZjgoKS5kYXRhKCkpOwogICAgICAgICBSRUxFQVNFX0xPR19JRl9BTExPV0VEKHJlc291cmNlTG9h
ZGVyLCAic2NoZWR1bGVMb2FkOiBVUkwgd2lsbCBiZSBsb2FkZWQgZnJvbSBhcHBsaWNhdGlvbiBj
YWNoZSAoZnJhbWUgPSAlcCwgcmVzb3VyY2VJRCA9ICUiIFBSSXU2NCAiKSIsIHJlc291cmNlTG9h
ZGVyLmZyYW1lKCksIGlkZW50aWZpZXIpOwogICAgICAgICBtX3dlYlJlc291cmNlTG9hZGVycy5z
ZXQoaWRlbnRpZmllciwgV2ViUmVzb3VyY2VMb2FkZXI6OmNyZWF0ZShyZXNvdXJjZUxvYWRlciwg
dHJhY2tpbmdQYXJhbWV0ZXJzKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlTG9hZGVyLmNwcAppbmRleCA3MzhiMWRjYzMzOTM3MjY5
NjhhNjJjNTczYzM4Mjg4ZDk3ZjdiM2QxLi4zOGE4ODJiYjhmNGU5MTAyNjBiOWU1MmQ4ZTU1ZGMx
MTllZDBiMzE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL05ldHdvcmsv
V2ViUmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvTmV0
d29yay9XZWJSZXNvdXJjZUxvYWRlci5jcHAKQEAgLTg3LDcgKzg3LDcgQEAgdm9pZCBXZWJSZXNv
dXJjZUxvYWRlcjo6d2lsbFNlbmRSZXF1ZXN0KFJlc291cmNlUmVxdWVzdCYmIHByb3Bvc2VkUmVx
dWVzdCwgUmVzb3UKIAogICAgIFJlZlB0cjxXZWJSZXNvdXJjZUxvYWRlcj4gcHJvdGVjdGVkVGhp
cyh0aGlzKTsKIAotICAgIGlmIChtX2NvcmVMb2FkZXItPmRvY3VtZW50TG9hZGVyKCktPmFwcGxp
Y2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZEZhbGxiYWNrRm9yUmVkaXJlY3QobV9jb3JlTG9h
ZGVyLmdldCgpLCBwcm9wb3NlZFJlcXVlc3QsIHJlZGlyZWN0UmVzcG9uc2UpKQorICAgIGlmICht
X2NvcmVMb2FkZXItPmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWF5
YmVMb2FkRmFsbGJhY2tGb3JSZWRpcmVjdChtX2NvcmVMb2FkZXIuZ2V0KCksIHByb3Bvc2VkUmVx
dWVzdCwgcmVkaXJlY3RSZXNwb25zZSkpCiAgICAgICAgIHJldHVybjsKIAogICAgIG1fY29yZUxv
YWRlci0+d2lsbFNlbmRSZXF1ZXN0KFdURk1vdmUocHJvcG9zZWRSZXF1ZXN0KSwgcmVkaXJlY3RS
ZXNwb25zZSwgW3Byb3RlY3RlZFRoaXNdKFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QpIHsKQEAg
LTExMCw3ICsxMTAsNyBAQCB2b2lkIFdlYlJlc291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9u
c2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIGJvbwogCiAgICAgUmVmPFdlYlJl
c291cmNlTG9hZGVyPiBwcm90ZWN0KCp0aGlzKTsKIAotICAgIGlmIChtX2NvcmVMb2FkZXItPmRv
Y3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZEZhbGxiYWNr
Rm9yUmVzcG9uc2UobV9jb3JlTG9hZGVyLmdldCgpLCByZXNwb25zZSkpCisgICAgaWYgKG1fY29y
ZUxvYWRlci0+ZG9jdW1lbnRMb2FkZXIoKS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS5tYXliZUxv
YWRGYWxsYmFja0ZvclJlc3BvbnNlKG1fY29yZUxvYWRlci5nZXQoKSwgcmVzcG9uc2UpKQogICAg
ICAgICByZXR1cm47CiAKICAgICBtX2NvcmVMb2FkZXItPmRpZFJlY2VpdmVSZXNwb25zZShyZXNw
b25zZSk7CkBAIC0xNDgsNyArMTQ4LDcgQEAgdm9pZCBXZWJSZXNvdXJjZUxvYWRlcjo6ZGlkRmFp
bFJlc291cmNlTG9hZChjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKICAgICBMT0coTmV0d29y
aywgIihXZWJQcm9jZXNzKSBXZWJSZXNvdXJjZUxvYWRlcjo6ZGlkRmFpbFJlc291cmNlTG9hZCBm
b3IgJyVzJyIsIG1fY29yZUxvYWRlci0+dXJsKCkuc3RyaW5nKCkubGF0aW4xKCkuZGF0YSgpKTsK
ICAgICBSRUxFQVNFX0xPR19JRl9BTExPV0VEKCJkaWRGYWlsUmVzb3VyY2VMb2FkOiAocGFnZUlE
ID0gJSIgUFJJdTY0ICIsIGZyYW1lSUQgPSAlIiBQUkl1NjQgIiwgcmVzb3VyY2VJRCA9ICUiIFBS
SXU2NCAiKSIsIG1fdHJhY2tpbmdQYXJhbWV0ZXJzLnBhZ2VJRCwgbV90cmFja2luZ1BhcmFtZXRl
cnMuZnJhbWVJRCwgbV90cmFja2luZ1BhcmFtZXRlcnMucmVzb3VyY2VJRCk7CiAKLSAgICBpZiAo
bV9jb3JlTG9hZGVyLT5kb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5t
YXliZUxvYWRGYWxsYmFja0ZvckVycm9yKG1fY29yZUxvYWRlci5nZXQoKSwgZXJyb3IpKQorICAg
IGlmIChtX2NvcmVMb2FkZXItPmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCkubWF5YmVMb2FkRmFsbGJhY2tGb3JFcnJvcihtX2NvcmVMb2FkZXIuZ2V0KCksIGVycm9yKSkK
ICAgICAgICAgcmV0dXJuOwogICAgIG1fY29yZUxvYWRlci0+ZGlkRmFpbChlcnJvcik7CiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5j
cHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5jcHAKaW5k
ZXggYWMxZGFhYmFkMDYzYTQ5NjI2YjM3ZTA0MDJlOWViZjU0OTJkM2IxYi4uNzg4NjI2ODU5YTY4
NjUxNDY1YmMxNzFmYTFhYjBiMmI1MmFmODczMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3LmNwcApAQCAtMTg1LDIzICsxODUsMTkgQEAgc3Rh
dGljIFN0cmluZyBidWlsZEhUVFBIZWFkZXJzKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3Bv
bnNlLCBsb25nIGxvbmcmIGV4cGUKICAgICBpZiAoIXJlc3BvbnNlLmlzSFRUUCgpKQogICAgICAg
ICByZXR1cm4gU3RyaW5nKCk7CiAKLSAgICBTdHJpbmdCdWlsZGVyIHN0cmluZ0J1aWxkZXI7Ci0g
ICAgCi0gICAgU3RyaW5nIHN0YXR1c0xpbmUgPSBTdHJpbmc6OmZvcm1hdCgiSFRUUCAlZCAiLCBy
ZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpKTsKLSAgICBzdHJpbmdCdWlsZGVyLmFwcGVuZChzdGF0
dXNMaW5lKTsKLSAgICBzdHJpbmdCdWlsZGVyLmFwcGVuZChyZXNwb25zZS5odHRwU3RhdHVzVGV4
dCgpKTsKLSAgICBzdHJpbmdCdWlsZGVyLmFwcGVuZCgnXG4nKTsKLSAgICAKLSAgICBIVFRQSGVh
ZGVyTWFwOjpjb25zdF9pdGVyYXRvciBlbmQgPSByZXNwb25zZS5odHRwSGVhZGVyRmllbGRzKCku
ZW5kKCk7Ci0gICAgZm9yIChIVFRQSGVhZGVyTWFwOjpjb25zdF9pdGVyYXRvciBpdCA9IHJlc3Bv
bnNlLmh0dHBIZWFkZXJGaWVsZHMoKS5iZWdpbigpOyBpdCAhPSBlbmQ7ICsraXQpIHsKLSAgICAg
ICAgc3RyaW5nQnVpbGRlci5hcHBlbmQoaXQtPmtleSk7Ci0gICAgICAgIHN0cmluZ0J1aWxkZXIu
YXBwZW5kTGl0ZXJhbCgiOiAiKTsKLSAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmQoaXQtPnZh
bHVlKTsKLSAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmQoJ1xuJyk7CisgICAgU3RyaW5nQnVp
bGRlciBoZWFkZXI7CisgICAgaGVhZGVyLmFwcGVuZExpdGVyYWwoIkhUVFAgIik7CisgICAgaGVh
ZGVyLmFwcGVuZE51bWJlcihyZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpKTsKKyAgICBoZWFkZXIu
YXBwZW5kKCcgJyk7CisgICAgaGVhZGVyLmFwcGVuZChyZXNwb25zZS5odHRwU3RhdHVzVGV4dCgp
KTsKKyAgICBoZWFkZXIuYXBwZW5kKCdcbicpOworICAgIGZvciAoYXV0byYgZmllbGQgOiByZXNw
b25zZS5odHRwSGVhZGVyRmllbGRzKCkpIHsKKyAgICAgICAgaGVhZGVyLmFwcGVuZChmaWVsZC5r
ZXkpOworICAgICAgICBoZWFkZXIuYXBwZW5kTGl0ZXJhbCgiOiAiKTsKKyAgICAgICAgaGVhZGVy
LmFwcGVuZChmaWVsZC52YWx1ZSk7CisgICAgICAgIGhlYWRlci5hcHBlbmQoJ1xuJyk7CiAgICAg
fQotICAgIAotICAgIFN0cmluZyBoZWFkZXJzID0gc3RyaW5nQnVpbGRlci50b1N0cmluZygpOwot
ICAgIAorCiAgICAgLy8gSWYgdGhlIGNvbnRlbnQgaXMgZW5jb2RlZCAobW9zdCBsaWtlbHkgY29t
cHJlc3NlZCksIHRoZW4gZG9uJ3Qgc2VuZCBpdHMgbGVuZ3RoIHRvIHRoZSBwbHVnaW4sCiAgICAg
Ly8gd2hpY2ggaXMgb25seSBpbnRlcmVzdGVkIGluIHRoZSBkZWNvZGVkIGxlbmd0aCwgbm90IHll
dCBrbm93biBhdCB0aGUgbW9tZW50LgogICAgIC8vIDxyZGFyOi8vcHJvYmxlbS80NDcwNTk5PiB0
cmFja3MgYSByZXF1ZXN0IGZvciAtW05TVVJMUmVzcG9uc2UgZXhwZWN0ZWRDb250ZW50TGVuZ3Ro
XSB0byBpbmNvcnBvcmF0ZSB0aGlzIGxvZ2ljLgpAQCAtMjA5LDcgKzIwNSw3IEBAIHN0YXRpYyBT
dHJpbmcgYnVpbGRIVFRQSGVhZGVycyhjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwg
bG9uZyBsb25nJiBleHBlCiAgICAgaWYgKCFjb250ZW50RW5jb2RpbmcuaXNOdWxsKCkgJiYgY29u
dGVudEVuY29kaW5nICE9ICJpZGVudGl0eSIpCiAgICAgICAgIGV4cGVjdGVkQ29udGVudExlbmd0
aCA9IC0xOwogCi0gICAgcmV0dXJuIGhlYWRlcnM7CisgICAgcmV0dXJuIGhlYWRlci50b1N0cmlu
ZygpOwogfQogCiBzdGF0aWMgdWludDMyX3QgbGFzdE1vZGlmaWVkRGF0ZU1TKGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQpAQCAtMjkyLDM3ICsyODgsMTkgQEAgc3RhdGljIGlubGlu
ZSBXZWJQYWdlKiB3ZWJQYWdlKEhUTUxQbHVnSW5FbGVtZW50KiBwbHVnaW5FbGVtZW50KQogICAg
IHJldHVybiB3ZWJGcmFtZS0+cGFnZSgpOwogfQogCi1SZWY8UGx1Z2luVmlldz4gUGx1Z2luVmll
dzo6Y3JlYXRlKFBhc3NSZWZQdHI8SFRNTFBsdWdJbkVsZW1lbnQ+IHBsdWdpbkVsZW1lbnQsIFBh
c3NSZWZQdHI8UGx1Z2luPiBwbHVnaW4sIGNvbnN0IFBsdWdpbjo6UGFyYW1ldGVycyYgcGFyYW1l
dGVycykKK1JlZjxQbHVnaW5WaWV3PiBQbHVnaW5WaWV3OjpjcmVhdGUoSFRNTFBsdWdJbkVsZW1l
bnQmIHBsdWdpbkVsZW1lbnQsIFJlZjxQbHVnaW4+JiYgcGx1Z2luLCBjb25zdCBQbHVnaW46OlBh
cmFtZXRlcnMmIHBhcmFtZXRlcnMpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgUGx1Z2lu
VmlldyhwbHVnaW5FbGVtZW50LCBwbHVnaW4sIHBhcmFtZXRlcnMpKTsKKyAgICByZXR1cm4gYWRv
cHRSZWYoKm5ldyBQbHVnaW5WaWV3KHBsdWdpbkVsZW1lbnQsIFdURk1vdmUocGx1Z2luKSwgcGFy
YW1ldGVycykpOwogfQogCi1QbHVnaW5WaWV3OjpQbHVnaW5WaWV3KFBhc3NSZWZQdHI8SFRNTFBs
dWdJbkVsZW1lbnQ+IHBsdWdpbkVsZW1lbnQsIFBhc3NSZWZQdHI8UGx1Z2luPiBwbHVnaW4sIGNv
bnN0IFBsdWdpbjo6UGFyYW1ldGVycyYgcGFyYW1ldGVycykKK1BsdWdpblZpZXc6OlBsdWdpblZp
ZXcoSFRNTFBsdWdJbkVsZW1lbnQmIHBsdWdpbkVsZW1lbnQsIFJlZjxQbHVnaW4+JiYgcGx1Z2lu
LCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpCiAgICAgOiBQbHVnaW5WaWV3
QmFzZSgwKQotICAgICwgbV9wbHVnaW5FbGVtZW50KHBsdWdpbkVsZW1lbnQpCi0gICAgLCBtX3Bs
dWdpbihwbHVnaW4pCisgICAgLCBtX3BsdWdpbkVsZW1lbnQoJnBsdWdpbkVsZW1lbnQpCisgICAg
LCBtX3BsdWdpbihXVEZNb3ZlKHBsdWdpbikpCiAgICAgLCBtX3dlYlBhZ2Uod2ViUGFnZShtX3Bs
dWdpbkVsZW1lbnQuZ2V0KCkpKQogICAgICwgbV9wYXJhbWV0ZXJzKHBhcmFtZXRlcnMpCi0gICAg
LCBtX2lzSW5pdGlhbGl6ZWQoZmFsc2UpCi0gICAgLCBtX2lzV2FpdGluZ0ZvclN5bmNocm9ub3Vz
SW5pdGlhbGl6YXRpb24oZmFsc2UpCi0gICAgLCBtX2lzV2FpdGluZ1VudGlsTWVkaWFDYW5TdGFy
dChmYWxzZSkKLSAgICAsIG1faXNCZWluZ0Rlc3Ryb3llZChmYWxzZSkKLSAgICAsIG1fcGx1Z2lu
UHJvY2Vzc0hhc0NyYXNoZWQoZmFsc2UpCi0jaWYgRU5BQkxFKFBSSU1BUllfU05BUFNIT1RURURf
UExVR0lOX0hFVVJJU1RJQykKLSAgICAsIG1fZGlkUGx1Z0luU3RhcnRPZmZTY3JlZW4oZmFsc2Up
Ci0jZW5kaWYKICAgICAsIG1fcGVuZGluZ1VSTFJlcXVlc3RzVGltZXIoUnVuTG9vcDo6bWFpbigp
LCB0aGlzLCAmUGx1Z2luVmlldzo6cGVuZGluZ1VSTFJlcXVlc3RzVGltZXJGaXJlZCkKLSNpZiBF
TkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKLSAgICAsIG1fbnBSdW50aW1lT2JqZWN0TWFwKHRo
aXMpCi0jZW5kaWYKLSAgICAsIG1fbWFudWFsU3RyZWFtU3RhdGUoU3RyZWFtU3RhdGVJbml0aWFs
KQogICAgICwgbV9wbHVnaW5TbmFwc2hvdFRpbWVyKCp0aGlzLCAmUGx1Z2luVmlldzo6cGx1Z2lu
U25hcHNob3RUaW1lckZpcmVkLCBwbHVnaW5TbmFwc2hvdFRpbWVyRGVsYXkpCi0jaWYgRU5BQkxF
KFBSSU1BUllfU05BUFNIT1RURURfUExVR0lOX0hFVVJJU1RJQykgfHwgUExBVEZPUk0oQ09DT0Ep
Ci0gICAgLCBtX2NvdW50U25hcHNob3RSZXRyaWVzKDApCi0jZW5kaWYKLSAgICAsIG1fZGlkUmVj
ZWl2ZVVzZXJJbnRlcmFjdGlvbihmYWxzZSkKLSAgICAsIG1fcGFnZVNjYWxlRmFjdG9yKDEpCi0g
ICAgLCBtX3BsdWdpbklzUGxheWluZ0F1ZGlvKGZhbHNlKQogewogICAgIG1fd2ViUGFnZS0+YWRk
UGx1Z2luVmlldyh0aGlzKTsKIH0KQEAgLTM3NCw3ICszNTIsNyBAQCB2b2lkIFBsdWdpblZpZXc6
OmRlc3Ryb3lQbHVnaW5BbmRSZXNldCgpCiAgICAgY2FuY2VsQWxsU3RyZWFtcygpOwogfQogCi12
b2lkIFBsdWdpblZpZXc6OnJlY3JlYXRlQW5kSW5pdGlhbGl6ZShQYXNzUmVmUHRyPFBsdWdpbj4g
cGx1Z2luKQordm9pZCBQbHVnaW5WaWV3OjpyZWNyZWF0ZUFuZEluaXRpYWxpemUoUmVmPFBsdWdp
bj4mJiBwbHVnaW4pCiB7CiAgICAgaWYgKG1fcGx1Z2luKSB7CiAgICAgICAgIGlmIChtX3BsdWdp
blNuYXBzaG90VGltZXIuaXNBY3RpdmUoKSkKQEAgLTM4MiwxMyArMzYwLDEyIEBAIHZvaWQgUGx1
Z2luVmlldzo6cmVjcmVhdGVBbmRJbml0aWFsaXplKFBhc3NSZWZQdHI8UGx1Z2luPiBwbHVnaW4p
CiAgICAgICAgIGRlc3Ryb3lQbHVnaW5BbmRSZXNldCgpOwogICAgIH0KIAotICAgIC8vIFJlc2V0
IG1lbWJlciB2YXJpYWJsZXMgdG8gaW5pdGlhbCB2YWx1ZXMuCi0gICAgbV9wbHVnaW4gPSBwbHVn
aW47CisgICAgbV9wbHVnaW4gPSBXVEZNb3ZlKHBsdWdpbik7CiAgICAgbV9pc0luaXRpYWxpemVk
ID0gZmFsc2U7CiAgICAgbV9pc1dhaXRpbmdGb3JTeW5jaHJvbm91c0luaXRpYWxpemF0aW9uID0g
ZmFsc2U7CiAgICAgbV9pc1dhaXRpbmdVbnRpbE1lZGlhQ2FuU3RhcnQgPSBmYWxzZTsKICAgICBt
X2lzQmVpbmdEZXN0cm95ZWQgPSBmYWxzZTsKLSAgICBtX21hbnVhbFN0cmVhbVN0YXRlID0gU3Ry
ZWFtU3RhdGVJbml0aWFsOworICAgIG1fbWFudWFsU3RyZWFtU3RhdGUgPSBNYW51YWxTdHJlYW1T
dGF0ZTo6SW5pdGlhbDsKICAgICBtX3RyYW5zaWVudFBhaW50aW5nU25hcHNob3QgPSBudWxscHRy
OwogCiAgICAgaW5pdGlhbGl6ZVBsdWdpbigpOwpAQCAtNDIxLDggKzM5OCw4IEBAIHZvaWQgUGx1
Z2luVmlldzo6bWFudWFsTG9hZERpZFJlY2VpdmVSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJiByZXNwb25zZSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKCFtX2lzSW5pdGlhbGl6
ZWQpIHsKLSAgICAgICAgQVNTRVJUKG1fbWFudWFsU3RyZWFtU3RhdGUgPT0gU3RyZWFtU3RhdGVJ
bml0aWFsKTsKLSAgICAgICAgbV9tYW51YWxTdHJlYW1TdGF0ZSA9IFN0cmVhbVN0YXRlSGFzUmVj
ZWl2ZWRSZXNwb25zZTsKKyAgICAgICAgQVNTRVJUKG1fbWFudWFsU3RyZWFtU3RhdGUgPT0gTWFu
dWFsU3RyZWFtU3RhdGU6OkluaXRpYWwpOworICAgICAgICBtX21hbnVhbFN0cmVhbVN0YXRlID0g
TWFudWFsU3RyZWFtU3RhdGU6Okhhc1JlY2VpdmVkUmVzcG9uc2U7CiAgICAgICAgIG1fbWFudWFs
U3RyZWFtUmVzcG9uc2UgPSByZXNwb25zZTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTQ0
OCw3ICs0MjUsNyBAQCB2b2lkIFBsdWdpblZpZXc6Om1hbnVhbExvYWREaWRSZWNlaXZlRGF0YShj
b25zdCBjaGFyKiBieXRlcywgaW50IGxlbmd0aCkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYg
KCFtX2lzSW5pdGlhbGl6ZWQpIHsKLSAgICAgICAgQVNTRVJUKG1fbWFudWFsU3RyZWFtU3RhdGUg
PT0gU3RyZWFtU3RhdGVIYXNSZWNlaXZlZFJlc3BvbnNlKTsKKyAgICAgICAgQVNTRVJUKG1fbWFu
dWFsU3RyZWFtU3RhdGUgPT0gTWFudWFsU3RyZWFtU3RhdGU6Okhhc1JlY2VpdmVkUmVzcG9uc2Up
OwogICAgICAgICBpZiAoIW1fbWFudWFsU3RyZWFtRGF0YSkKICAgICAgICAgICAgIG1fbWFudWFs
U3RyZWFtRGF0YSA9IFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKCk7CiAKQEAgLTQ2Niw4ICs0NDMsOCBA
QCB2b2lkIFBsdWdpblZpZXc6Om1hbnVhbExvYWREaWRGaW5pc2hMb2FkaW5nKCkKICAgICAgICAg
cmV0dXJuOwogCiAgICAgaWYgKCFtX2lzSW5pdGlhbGl6ZWQpIHsKLSAgICAgICAgQVNTRVJUKG1f
bWFudWFsU3RyZWFtU3RhdGUgPT0gU3RyZWFtU3RhdGVIYXNSZWNlaXZlZFJlc3BvbnNlKTsKLSAg
ICAgICAgbV9tYW51YWxTdHJlYW1TdGF0ZSA9IFN0cmVhbVN0YXRlRmluaXNoZWQ7CisgICAgICAg
IEFTU0VSVChtX21hbnVhbFN0cmVhbVN0YXRlID09IE1hbnVhbFN0cmVhbVN0YXRlOjpIYXNSZWNl
aXZlZFJlc3BvbnNlKTsKKyAgICAgICAgbV9tYW51YWxTdHJlYW1TdGF0ZSA9IE1hbnVhbFN0cmVh
bVN0YXRlOjpGaW5pc2hlZDsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIApAQCAtNDgxLDcgKzQ1
OCw3IEBAIHZvaWQgUGx1Z2luVmlldzo6bWFudWFsTG9hZERpZEZhaWwoY29uc3QgUmVzb3VyY2VF
cnJvciYgZXJyb3IpCiAgICAgICAgIHJldHVybjsKIAogICAgIGlmICghbV9pc0luaXRpYWxpemVk
KSB7Ci0gICAgICAgIG1fbWFudWFsU3RyZWFtU3RhdGUgPSBTdHJlYW1TdGF0ZUZpbmlzaGVkOwor
ICAgICAgICBtX21hbnVhbFN0cmVhbVN0YXRlID0gTWFudWFsU3RyZWFtU3RhdGU6OkZpbmlzaGVk
OwogICAgICAgICBtX21hbnVhbFN0cmVhbUVycm9yID0gZXJyb3I7CiAgICAgICAgIG1fbWFudWFs
U3RyZWFtRGF0YSA9IG51bGxwdHI7CiAgICAgICAgIHJldHVybjsKQEAgLTEwMDcsNyArOTg0LDcg
QEAgdm9pZCBQbHVnaW5WaWV3Ojp3aWxsRGV0YXRjaFJlbmRlcmVyKCkKICAgICBtX3BsdWdpbi0+
d2lsbERldGF0Y2hSZW5kZXJlcigpOwogfQogCi1QYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gUGx1
Z2luVmlldzo6bGl2ZVJlc291cmNlRGF0YSgpIGNvbnN0CitSZWZQdHI8U2hhcmVkQnVmZmVyPiBQ
bHVnaW5WaWV3OjpsaXZlUmVzb3VyY2VEYXRhKCkgY29uc3QKIHsKICAgICBpZiAoIW1faXNJbml0
aWFsaXplZCB8fCAhbV9wbHVnaW4pCiAgICAgICAgIHJldHVybiAwOwpAQCAtMTMwOCwxMiArMTI4
NSwxMiBAQCB2b2lkIFBsdWdpblZpZXc6OmNhbmNlbEFsbFN0cmVhbXMoKQogCiB2b2lkIFBsdWdp
blZpZXc6OnJlZGVsaXZlck1hbnVhbFN0cmVhbSgpCiB7Ci0gICAgaWYgKG1fbWFudWFsU3RyZWFt
U3RhdGUgPT0gU3RyZWFtU3RhdGVJbml0aWFsKSB7CisgICAgaWYgKG1fbWFudWFsU3RyZWFtU3Rh
dGUgPT0gTWFudWFsU3RyZWFtU3RhdGU6OkluaXRpYWwpIHsKICAgICAgICAgLy8gTm90aGluZyB0
byBkby4KICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIGlmIChtX21hbnVhbFN0cmVhbVN0
YXRlID09IFN0cmVhbVN0YXRlRmFpbGVkKSB7CisgICAgaWYgKG1fbWFudWFsU3RyZWFtU3RhdGUg
PT0gTWFudWFsU3RyZWFtU3RhdGU6OkZhaWxlZCkgewogICAgICAgICBtYW51YWxMb2FkRGlkRmFp
bChtX21hbnVhbFN0cmVhbUVycm9yKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTEzMzQs
NyArMTMxMSw3IEBAIHZvaWQgUGx1Z2luVmlldzo6cmVkZWxpdmVyTWFudWFsU3RyZWFtKCkKICAg
ICAgICAgbV9tYW51YWxTdHJlYW1EYXRhID0gbnVsbHB0cjsKICAgICB9CiAKLSAgICBpZiAobV9t
YW51YWxTdHJlYW1TdGF0ZSA9PSBTdHJlYW1TdGF0ZUZpbmlzaGVkKQorICAgIGlmIChtX21hbnVh
bFN0cmVhbVN0YXRlID09IE1hbnVhbFN0cmVhbVN0YXRlOjpGaW5pc2hlZCkKICAgICAgICAgbWFu
dWFsTG9hZERpZEZpbmlzaExvYWRpbmcoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3LmgKaW5kZXggMDA3NTgzYzQzZDAzOGI5ZmFjYzJlZGI3
M2QzYTEyNWI0YmNkYTQ4My4uMzhiZTYyMWI4MWFmNjlhNjM3MzczNjJhY2IyMDE3ZWQzNzgwNzU4
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZp
ZXcuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5o
CkBAIC02NCw5ICs2NCw5IEBAIGNsYXNzIFdlYkV2ZW50OwogCiBjbGFzcyBQbHVnaW5WaWV3IDog
cHVibGljIFdlYkNvcmU6OlBsdWdpblZpZXdCYXNlLCBwdWJsaWMgUGx1Z2luQ29udHJvbGxlciwg
cHJpdmF0ZSBXZWJDb3JlOjpNZWRpYUNhblN0YXJ0TGlzdGVuZXIsIHByaXZhdGUgV2ViRnJhbWU6
OkxvYWRMaXN0ZW5lciwgcHJpdmF0ZSBXZWJDb3JlOjpNZWRpYVByb2R1Y2VyIHsKIHB1YmxpYzoK
LSAgICBzdGF0aWMgUmVmPFBsdWdpblZpZXc+IGNyZWF0ZShQYXNzUmVmUHRyPFdlYkNvcmU6OkhU
TUxQbHVnSW5FbGVtZW50PiwgUGFzc1JlZlB0cjxQbHVnaW4+LCBjb25zdCBQbHVnaW46OlBhcmFt
ZXRlcnMmKTsKKyAgICBzdGF0aWMgUmVmPFBsdWdpblZpZXc+IGNyZWF0ZShXZWJDb3JlOjpIVE1M
UGx1Z0luRWxlbWVudCYsIFJlZjxQbHVnaW4+JiYsIGNvbnN0IFBsdWdpbjo6UGFyYW1ldGVycyYp
OwogCi0gICAgdm9pZCByZWNyZWF0ZUFuZEluaXRpYWxpemUoUGFzc1JlZlB0cjxQbHVnaW4+KTsK
KyAgICB2b2lkIHJlY3JlYXRlQW5kSW5pdGlhbGl6ZShSZWY8UGx1Z2luPiYmKTsKIAogICAgIFdl
YkNvcmU6OkZyYW1lKiBmcmFtZSgpIGNvbnN0OwogCkBAIC0xMTIsMTMgKzExMiwxMyBAQCBwdWJs
aWM6CiAKICAgICBib29sIHNob3VsZEFsbG93U2NyaXB0aW5nKCk7CiAKLSAgICBQYXNzUmVmUHRy
PFdlYkNvcmU6OlNoYXJlZEJ1ZmZlcj4gbGl2ZVJlc291cmNlRGF0YSgpIGNvbnN0OworICAgIFJl
ZlB0cjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+IGxpdmVSZXNvdXJjZURhdGEoKSBjb25zdDsKICAg
ICBib29sIHBlcmZvcm1EaWN0aW9uYXJ5TG9va3VwQXRMb2NhdGlvbihjb25zdCBXZWJDb3JlOjpG
bG9hdFBvaW50Jik7CiAgICAgU3RyaW5nIGdldFNlbGVjdGlvbkZvcldvcmRBdFBvaW50KGNvbnN0
IFdlYkNvcmU6OkZsb2F0UG9pbnQmKSBjb25zdDsKICAgICBib29sIGV4aXN0aW5nU2VsZWN0aW9u
Q29udGFpbnNQb2ludChjb25zdCBXZWJDb3JlOjpGbG9hdFBvaW50JikgY29uc3Q7CiAKIHByaXZh
dGU6Ci0gICAgUGx1Z2luVmlldyhQYXNzUmVmUHRyPFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50
PiwgUGFzc1JlZlB0cjxQbHVnaW4+LCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmIHBhcmFtZXRl
cnMpOworICAgIFBsdWdpblZpZXcoV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQmLCBSZWY8UGx1
Z2luPiYmLCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmKTsKICAgICB2aXJ0dWFsIH5QbHVnaW5W
aWV3KCk7CiAKICAgICB2b2lkIGluaXRpYWxpemVQbHVnaW4oKTsKQEAgLTI0NCwxNCArMjQ0LDE0
IEBAIHByaXZhdGU6CiAgICAgV2ViUGFnZSogbV93ZWJQYWdlOwogICAgIFBsdWdpbjo6UGFyYW1l
dGVycyBtX3BhcmFtZXRlcnM7CiAKLSAgICBib29sIG1faXNJbml0aWFsaXplZDsKLSAgICBib29s
IG1faXNXYWl0aW5nRm9yU3luY2hyb25vdXNJbml0aWFsaXphdGlvbjsKLSAgICBib29sIG1faXNX
YWl0aW5nVW50aWxNZWRpYUNhblN0YXJ0OwotICAgIGJvb2wgbV9pc0JlaW5nRGVzdHJveWVkOwot
ICAgIGJvb2wgbV9wbHVnaW5Qcm9jZXNzSGFzQ3Jhc2hlZDsKKyAgICBib29sIG1faXNJbml0aWFs
aXplZCB7IGZhbHNlIH07CisgICAgYm9vbCBtX2lzV2FpdGluZ0ZvclN5bmNocm9ub3VzSW5pdGlh
bGl6YXRpb24geyBmYWxzZSB9OworICAgIGJvb2wgbV9pc1dhaXRpbmdVbnRpbE1lZGlhQ2FuU3Rh
cnQgeyBmYWxzZSB9OworICAgIGJvb2wgbV9pc0JlaW5nRGVzdHJveWVkIHsgZmFsc2UgfTsKKyAg
ICBib29sIG1fcGx1Z2luUHJvY2Vzc0hhc0NyYXNoZWQgeyBmYWxzZSB9OwogCiAjaWYgRU5BQkxF
KFBSSU1BUllfU05BUFNIT1RURURfUExVR0lOX0hFVVJJU1RJQykKLSAgICBib29sIG1fZGlkUGx1
Z0luU3RhcnRPZmZTY3JlZW47CisgICAgYm9vbCBtX2RpZFBsdWdJblN0YXJ0T2ZmU2NyZWVuIHsg
ZmFsc2UgfTsKICNlbmRpZgogCiAgICAgLy8gUGVuZGluZyBVUkxSZXF1ZXN0cyB0aGF0IHRoZSBw
bHVnLWluIGhhcyBtYWRlLgpAQCAtMjY3LDE4ICsyNjcsMTMgQEAgcHJpdmF0ZToKIAogI2lmIEVO
QUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgIC8vIEEgbWFwIG9mIGFsbCByZWxhdGVkIE5Q
T2JqZWN0cyBmb3IgdGhpcyBwbHVnLWluIHZpZXcuCi0gICAgTlBSdW50aW1lT2JqZWN0TWFwIG1f
bnBSdW50aW1lT2JqZWN0TWFwOworICAgIE5QUnVudGltZU9iamVjdE1hcCBtX25wUnVudGltZU9i
amVjdE1hcCB7IHRoaXMgfTsKICNlbmRpZgogCiAgICAgLy8gVGhlIG1hbnVhbCBzdHJlYW0gc3Rh
dGUuIFRoaXMgaXMgdXNlZCBzbyB3ZSBjYW4gZGVsaXZlciBhIG1hbnVhbCBzdHJlYW0gdG8gYSBw
bHVnLWluCiAgICAgLy8gd2hlbiBpdCBpcyBpbml0aWFsaXplZC4KLSAgICBlbnVtIE1hbnVhbFN0
cmVhbVN0YXRlIHsKLSAgICAgICAgU3RyZWFtU3RhdGVJbml0aWFsLAotICAgICAgICBTdHJlYW1T
dGF0ZUhhc1JlY2VpdmVkUmVzcG9uc2UsCi0gICAgICAgIFN0cmVhbVN0YXRlRmluaXNoZWQsCi0g
ICAgICAgIFN0cmVhbVN0YXRlRmFpbGVkCi0gICAgfTsKLSAgICBNYW51YWxTdHJlYW1TdGF0ZSBt
X21hbnVhbFN0cmVhbVN0YXRlOworICAgIGVudW0gY2xhc3MgTWFudWFsU3RyZWFtU3RhdGUgeyBJ
bml0aWFsLCBIYXNSZWNlaXZlZFJlc3BvbnNlLCBGaW5pc2hlZCwgRmFpbGVkIH07CisgICAgTWFu
dWFsU3RyZWFtU3RhdGUgbV9tYW51YWxTdHJlYW1TdGF0ZSB7IE1hbnVhbFN0cmVhbVN0YXRlOjpJ
bml0aWFsIH07CiAKICAgICBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIG1fbWFudWFsU3RyZWFt
UmVzcG9uc2U7CiAgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBtX21hbnVhbFN0cmVhbUVycm9y
OwpAQCAtMjg5LDEzICsyODQsMTMgQEAgcHJpdmF0ZToKICAgICAvLyBUaGlzIHRpbWVyIGlzIHVz
ZWQgd2hlbiBwbHVnaW4gc25hcHNob3R0aW5nIGlzIGVuYWJsZWQsIHRvIGNhcHR1cmUgYSBwbHVn
aW4gcGxhY2Vob2xkZXIuCiAgICAgV2ViQ29yZTo6RGVmZXJyYWJsZU9uZVNob3RUaW1lciBtX3Bs
dWdpblNuYXBzaG90VGltZXI7CiAjaWYgRU5BQkxFKFBSSU1BUllfU05BUFNIT1RURURfUExVR0lO
X0hFVVJJU1RJQykgfHwgUExBVEZPUk0oQ09DT0EpCi0gICAgdW5zaWduZWQgbV9jb3VudFNuYXBz
aG90UmV0cmllczsKKyAgICB1bnNpZ25lZCBtX2NvdW50U25hcHNob3RSZXRyaWVzIHsgMCB9Owog
I2VuZGlmCi0gICAgYm9vbCBtX2RpZFJlY2VpdmVVc2VySW50ZXJhY3Rpb247CisgICAgYm9vbCBt
X2RpZFJlY2VpdmVVc2VySW50ZXJhY3Rpb24geyBmYWxzZSB9OwogCi0gICAgZG91YmxlIG1fcGFn
ZVNjYWxlRmFjdG9yOworICAgIGRvdWJsZSBtX3BhZ2VTY2FsZUZhY3RvciB7IDEgfTsKIAotICAg
IGJvb2wgbV9wbHVnaW5Jc1BsYXlpbmdBdWRpbzsKKyAgICBib29sIG1fcGx1Z2luSXNQbGF5aW5n
QXVkaW8geyBmYWxzZSB9OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVu
dC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9t
ZUNsaWVudC5jcHAKaW5kZXggZGMzZmVkNWM5YmJmZTMwYzhiZDIwYWVlOWU5YjAxZDgyZGZlNGZl
OC4uM2Q3MmM2NzMxNzZlMGQwMWNmNTMzYTNjYzM1OWU5YmIwYWMyNWE2YSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hy
b21lQ2xpZW50LmNwcApAQCAtMTAzLDIwICsxMDMsMjAgQEAgc3RhdGljIGRvdWJsZSBhcmVhKFdl
YkZyYW1lKiBmcmFtZSkKIH0KIAogCi1zdGF0aWMgV2ViRnJhbWUqIGZpbmRMYXJnZXN0RnJhbWVJ
bkZyYW1lU2V0KFdlYlBhZ2UqIHBhZ2UpCitzdGF0aWMgV2ViRnJhbWUqIGZpbmRMYXJnZXN0RnJh
bWVJbkZyYW1lU2V0KFdlYlBhZ2UmIHBhZ2UpCiB7CiAgICAgLy8gQXBwcm94aW1hdGUgd2hhdCBh
IHVzZXIgY291bGQgY29uc2lkZXIgYSBkZWZhdWx0IHRhcmdldCBmcmFtZSBmb3IgYXBwbGljYXRp
b24gbWVudSBvcGVyYXRpb25zLgogCi0gICAgV2ViRnJhbWUqIG1haW5GcmFtZSA9IHBhZ2UtPm1h
aW5XZWJGcmFtZSgpOworICAgIFdlYkZyYW1lKiBtYWluRnJhbWUgPSBwYWdlLm1haW5XZWJGcmFt
ZSgpOwogICAgIGlmICghbWFpbkZyYW1lIHx8ICFtYWluRnJhbWUtPmlzRnJhbWVTZXQoKSkKLSAg
ICAgICAgcmV0dXJuIDA7CisgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgV2ViRnJhbWUq
IGxhcmdlc3RTb0ZhciA9IDA7CisgICAgV2ViRnJhbWUqIGxhcmdlc3RTb0ZhciA9IG51bGxwdHI7
CiAKICAgICBSZWY8QVBJOjpBcnJheT4gZnJhbWVDaGlsZHJlbiA9IG1haW5GcmFtZS0+Y2hpbGRG
cmFtZXMoKTsKICAgICBzaXplX3QgY291bnQgPSBmcmFtZUNoaWxkcmVuLT5zaXplKCk7CiAgICAg
Zm9yIChzaXplX3QgaSA9IDA7IGkgPCBjb3VudDsgKytpKSB7Ci0gICAgICAgIFdlYkZyYW1lKiBj
aGlsZEZyYW1lID0gZnJhbWVDaGlsZHJlbi0+YXQ8V2ViRnJhbWU+KGkpOworICAgICAgICBhdXRv
KiBjaGlsZEZyYW1lID0gZnJhbWVDaGlsZHJlbi0+YXQ8V2ViRnJhbWU+KGkpOwogICAgICAgICBp
ZiAoIWxhcmdlc3RTb0ZhciB8fCBhcmVhKGNoaWxkRnJhbWUpID4gYXJlYShsYXJnZXN0U29GYXIp
KQogICAgICAgICAgICAgbGFyZ2VzdFNvRmFyID0gY2hpbGRGcmFtZTsKICAgICB9CkBAIC0xMjQs
NiArMTI0LDE1IEBAIHN0YXRpYyBXZWJGcmFtZSogZmluZExhcmdlc3RGcmFtZUluRnJhbWVTZXQo
V2ViUGFnZSogcGFnZSkKICAgICByZXR1cm4gbGFyZ2VzdFNvRmFyOwogfQogCitXZWJDaHJvbWVD
bGllbnQ6OldlYkNocm9tZUNsaWVudChXZWJQYWdlJiBwYWdlKQorICAgIDogbV9wYWdlKHBhZ2Up
Cit7Cit9CisKK2lubGluZSBXZWJDaHJvbWVDbGllbnQ6On5XZWJDaHJvbWVDbGllbnQoKQorewor
fQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y2hyb21lRGVzdHJveWVkKCkKIHsKICAgICBkZWxl
dGUgdGhpczsKQEAgLTEzMSw3ICsxNDAsNyBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y2hyb21l
RGVzdHJveWVkKCkKIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNldFdpbmRvd1JlY3QoY29uc3Qg
RmxvYXRSZWN0JiB3aW5kb3dGcmFtZSkKIHsKLSAgICBtX3BhZ2UtPnNlbmRTZXRXaW5kb3dGcmFt
ZSh3aW5kb3dGcmFtZSk7CisgICAgbV9wYWdlLnNlbmRTZXRXaW5kb3dGcmFtZSh3aW5kb3dGcmFt
ZSk7CiB9CiAKIEZsb2F0UmVjdCBXZWJDaHJvbWVDbGllbnQ6OndpbmRvd1JlY3QoKQpAQCAtMTQw
LDEzICsxNDksMTMgQEAgRmxvYXRSZWN0IFdlYkNocm9tZUNsaWVudDo6d2luZG93UmVjdCgpCiAg
ICAgcmV0dXJuIEZsb2F0UmVjdCgpOwogI2Vsc2UKICNpZiBQTEFURk9STShNQUMpCi0gICAgaWYg
KG1fcGFnZS0+aGFzQ2FjaGVkV2luZG93RnJhbWUoKSkKLSAgICAgICAgcmV0dXJuIG1fcGFnZS0+
d2luZG93RnJhbWVJblVuZmxpcHBlZFNjcmVlbkNvb3JkaW5hdGVzKCk7CisgICAgaWYgKG1fcGFn
ZS5oYXNDYWNoZWRXaW5kb3dGcmFtZSgpKQorICAgICAgICByZXR1cm4gbV9wYWdlLndpbmRvd0Zy
YW1lSW5VbmZsaXBwZWRTY3JlZW5Db29yZGluYXRlcygpOwogI2VuZGlmCiAKICAgICBGbG9hdFJl
Y3QgbmV3V2luZG93RnJhbWU7CiAKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBh
cmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OkdldFdpbmRvd0ZyYW1lKCksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFdpbmRvd0ZyYW1l
OjpSZXBseShuZXdXaW5kb3dGcmFtZSksIG1fcGFnZS0+cGFnZUlEKCkpKQorICAgIGlmICghV2Vi
UHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMo
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0V2luZG93RnJhbWUoKSwgTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6R2V0V2luZG93RnJhbWU6OlJlcGx5KG5ld1dpbmRvd0ZyYW1lKSwgbV9wYWdlLnBh
Z2VJRCgpKSkKICAgICAgICAgcmV0dXJuIEZsb2F0UmVjdCgpOwogCiAgICAgcmV0dXJuIG5ld1dp
bmRvd0ZyYW1lOwpAQCAtMTU1LDMzICsxNjQsMzMgQEAgRmxvYXRSZWN0IFdlYkNocm9tZUNsaWVu
dDo6d2luZG93UmVjdCgpCiAKIEZsb2F0UmVjdCBXZWJDaHJvbWVDbGllbnQ6OnBhZ2VSZWN0KCkK
IHsKLSAgICByZXR1cm4gRmxvYXRSZWN0KEZsb2F0UG9pbnQoKSwgbV9wYWdlLT5zaXplKCkpOwor
ICAgIHJldHVybiBGbG9hdFJlY3QoRmxvYXRQb2ludCgpLCBtX3BhZ2Uuc2l6ZSgpKTsKIH0KIAog
dm9pZCBXZWJDaHJvbWVDbGllbnQ6OmZvY3VzKCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2Fn
ZXM6OldlYlBhZ2VQcm94eTo6U2V0Rm9jdXModHJ1ZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OlNldEZvY3VzKHRydWUpKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVD
bGllbnQ6OnVuZm9jdXMoKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpTZXRGb2N1cyhmYWxzZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OlNldEZvY3VzKGZhbHNlKSk7CiB9CiAKICNpZiBQTEFURk9STShDT0NPQSkKIHZvaWQg
V2ViQ2hyb21lQ2xpZW50OjplbGVtZW50RGlkRm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9kZSogbm9k
ZSkKIHsKLSAgICBtX3BhZ2UtPmVsZW1lbnREaWRGb2N1cyhjb25zdF9jYXN0PFdlYkNvcmU6Ok5v
ZGUqPihub2RlKSk7CisgICAgbV9wYWdlLmVsZW1lbnREaWRGb2N1cyhjb25zdF9jYXN0PFdlYkNv
cmU6Ok5vZGUqPihub2RlKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjplbGVtZW50RGlk
Qmx1cihjb25zdCBXZWJDb3JlOjpOb2RlKiBub2RlKQogewotICAgIG1fcGFnZS0+ZWxlbWVudERp
ZEJsdXIoY29uc3RfY2FzdDxXZWJDb3JlOjpOb2RlKj4obm9kZSkpOworICAgIG1fcGFnZS5lbGVt
ZW50RGlkQmx1cihjb25zdF9jYXN0PFdlYkNvcmU6Ok5vZGUqPihub2RlKSk7CiB9CiAKIHZvaWQg
V2ViQ2hyb21lQ2xpZW50OjptYWtlRmlyc3RSZXNwb25kZXIoKQogewotICAgIG1fcGFnZS0+c2Vu
ZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpNYWtlRmlyc3RSZXNwb25kZXIoKSk7CisgICAgbV9w
YWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6TWFrZUZpcnN0UmVzcG9uZGVyKCkpOwog
fSAgICAKICNlbmRpZiAgICAKIApAQCAtMTkzLDcgKzIwMiw3IEBAIGJvb2wgV2ViQ2hyb21lQ2xp
ZW50OjpjYW5UYWtlRm9jdXMoRm9jdXNEaXJlY3Rpb24pCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50
Ojp0YWtlRm9jdXMoRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9uKQogewotICAgIG1fcGFnZS0+c2Vu
ZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpUYWtlRm9jdXMoZGlyZWN0aW9uKSk7CisgICAgbV9w
YWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6VGFrZUZvY3VzKGRpcmVjdGlvbikpOwog
fQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6Zm9jdXNlZEVsZW1lbnRDaGFuZ2VkKEVsZW1lbnQq
IGVsZW1lbnQpCkBAIC0yMDcsMTQgKzIxNiwxNCBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6Zm9j
dXNlZEVsZW1lbnRDaGFuZ2VkKEVsZW1lbnQqIGVsZW1lbnQpCiAKICAgICBXZWJGcmFtZSogd2Vi
RnJhbWUgPSBXZWJGcmFtZTo6ZnJvbUNvcmVGcmFtZSgqZWxlbWVudC0+ZG9jdW1lbnQoKS5mcmFt
ZSgpKTsKICAgICBBU1NFUlQod2ViRnJhbWUpOwotICAgIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVG
b3JtQ2xpZW50KCkuZGlkRm9jdXNUZXh0RmllbGQobV9wYWdlLCAmaW5wdXRFbGVtZW50LCB3ZWJG
cmFtZSk7CisgICAgbV9wYWdlLmluamVjdGVkQnVuZGxlRm9ybUNsaWVudCgpLmRpZEZvY3VzVGV4
dEZpZWxkKCZtX3BhZ2UsICZpbnB1dEVsZW1lbnQsIHdlYkZyYW1lKTsKIH0KIAogdm9pZCBXZWJD
aHJvbWVDbGllbnQ6OmZvY3VzZWRGcmFtZUNoYW5nZWQoRnJhbWUqIGZyYW1lKQogewogICAgIFdl
YkZyYW1lKiB3ZWJGcmFtZSA9IGZyYW1lID8gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZyYW1l
KSA6IG51bGxwdHI7CiAKLSAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNz
Q29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZvY3VzZWRGcmFtZUNo
YW5nZWQod2ViRnJhbWUgPyB3ZWJGcmFtZS0+ZnJhbWVJRCgpIDogMCksIG1fcGFnZS0+cGFnZUlE
KCkpOworICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9u
KCktPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6Rm9jdXNlZEZyYW1lQ2hhbmdlZCh3ZWJG
cmFtZSA/IHdlYkZyYW1lLT5mcmFtZUlEKCkgOiAwKSwgbV9wYWdlLnBhZ2VJRCgpKTsKIH0KIAog
UGFnZSogV2ViQ2hyb21lQ2xpZW50OjpjcmVhdGVXaW5kb3coRnJhbWUqIGZyYW1lLCBjb25zdCBG
cmFtZUxvYWRSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBXaW5kb3dGZWF0dXJlcyYgd2luZG93RmVh
dHVyZXMsIGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIG5hdmlnYXRpb25BY3Rpb24pCkBAIC0yMzQs
MTMgKzI0MywxMyBAQCBQYWdlKiBXZWJDaHJvbWVDbGllbnQ6OmNyZWF0ZVdpbmRvdyhGcmFtZSog
ZnJhbWUsIGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmIHJlcXVlcwogICAgIG5hdmlnYXRpb25BY3Rp
b25EYXRhLm1vdXNlQnV0dG9uID0gSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uOjptb3Vz
ZUJ1dHRvbkZvck5hdmlnYXRpb25BY3Rpb24obmF2aWdhdGlvbkFjdGlvbik7CiAgICAgbmF2aWdh
dGlvbkFjdGlvbkRhdGEuc3ludGhldGljQ2xpY2tUeXBlID0gSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0
aW9uQWN0aW9uOjpzeW50aGV0aWNDbGlja1R5cGVGb3JOYXZpZ2F0aW9uQWN0aW9uKG5hdmlnYXRp
b25BY3Rpb24pOwogICAgIG5hdmlnYXRpb25BY3Rpb25EYXRhLnVzZXJHZXN0dXJlVG9rZW5JZGVu
dGlmaWVyID0gd2ViUHJvY2Vzcy51c2VyR2VzdHVyZVRva2VuSWRlbnRpZmllcihuYXZpZ2F0aW9u
QWN0aW9uLnVzZXJHZXN0dXJlVG9rZW4oKSk7Ci0gICAgbmF2aWdhdGlvbkFjdGlvbkRhdGEuY2Fu
SGFuZGxlUmVxdWVzdCA9IG1fcGFnZS0+Y2FuSGFuZGxlUmVxdWVzdChyZXF1ZXN0LnJlc291cmNl
UmVxdWVzdCgpKTsKKyAgICBuYXZpZ2F0aW9uQWN0aW9uRGF0YS5jYW5IYW5kbGVSZXF1ZXN0ID0g
bV9wYWdlLmNhbkhhbmRsZVJlcXVlc3QocmVxdWVzdC5yZXNvdXJjZVJlcXVlc3QoKSk7CiAgICAg
bmF2aWdhdGlvbkFjdGlvbkRhdGEuc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSA9IG5hdmln
YXRpb25BY3Rpb24uc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSgpOwogICAgIG5hdmlnYXRp
b25BY3Rpb25EYXRhLmRvd25sb2FkQXR0cmlidXRlID0gbmF2aWdhdGlvbkFjdGlvbi5kb3dubG9h
ZEF0dHJpYnV0ZSgpOwogCiAgICAgdWludDY0X3QgbmV3UGFnZUlEID0gMDsKICAgICBXZWJQYWdl
Q3JlYXRpb25QYXJhbWV0ZXJzIHBhcmFtZXRlcnM7Ci0gICAgaWYgKCF3ZWJQcm9jZXNzLnBhcmVu
dFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkNy
ZWF0ZU5ld1BhZ2Uod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9t
RnJhbWUoZnJhbWUpLCByZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLCB3aW5kb3dGZWF0dXJlcywg
bmF2aWdhdGlvbkFjdGlvbkRhdGEpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpDcmVhdGVOZXdQ
YWdlOjpSZXBseShuZXdQYWdlSUQsIHBhcmFtZXRlcnMpLCBtX3BhZ2UtPnBhZ2VJRCgpKSkKKyAg
ICBpZiAoIXdlYlByb2Nlc3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6Q3JlYXRlTmV3UGFnZSh3ZWJGcmFtZS0+ZnJhbWVJRCgpLCBT
ZWN1cml0eU9yaWdpbkRhdGE6OmZyb21GcmFtZShmcmFtZSksIHJlcXVlc3QucmVzb3VyY2VSZXF1
ZXN0KCksIHdpbmRvd0ZlYXR1cmVzLCBuYXZpZ2F0aW9uQWN0aW9uRGF0YSksIE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OkNyZWF0ZU5ld1BhZ2U6OlJlcGx5KG5ld1BhZ2VJRCwgcGFyYW1ldGVycyks
IG1fcGFnZS5wYWdlSUQoKSkpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCiAgICAgaWYgKCFu
ZXdQYWdlSUQpCkBAIC0yNTIsMzIgKzI2MSwzMiBAQCBQYWdlKiBXZWJDaHJvbWVDbGllbnQ6OmNy
ZWF0ZVdpbmRvdyhGcmFtZSogZnJhbWUsIGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmIHJlcXVlcwog
CiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2hvdygpCiB7Ci0gICAgbV9wYWdlLT5zaG93KCk7Cisg
ICAgbV9wYWdlLnNob3coKTsKIH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OmNhblJ1bk1vZGFs
KCkKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5jYW5SdW5Nb2RhbCgpOworICAgIHJldHVybiBtX3Bh
Z2UuY2FuUnVuTW9kYWwoKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJ1bk1vZGFsKCkK
IHsKLSAgICBtX3BhZ2UtPnJ1bk1vZGFsKCk7CisgICAgbV9wYWdlLnJ1bk1vZGFsKCk7CiB9CiAK
IHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRUb29sYmFyc1Zpc2libGUoYm9vbCB0b29sYmFyc0Fy
ZVZpc2libGUpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNl
dFRvb2xiYXJzQXJlVmlzaWJsZSh0b29sYmFyc0FyZVZpc2libGUpKTsKKyAgICBtX3BhZ2Uuc2Vu
ZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRUb29sYmFyc0FyZVZpc2libGUodG9vbGJhcnNB
cmVWaXNpYmxlKSk7CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50Ojp0b29sYmFyc1Zpc2libGUo
KQogewotICAgIEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VVSUNsaWVudDo6VUlFbGVtZW50Vmlz
aWJpbGl0eSB0b29sYmFyc1Zpc2liaWxpdHkgPSBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGll
bnQoKS50b29sYmFyc0FyZVZpc2libGUobV9wYWdlKTsKKyAgICBBUEk6OkluamVjdGVkQnVuZGxl
OjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHkgdG9vbGJhcnNWaXNpYmlsaXR5ID0g
bV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS50b29sYmFyc0FyZVZpc2libGUoJm1fcGFn
ZSk7CiAgICAgaWYgKHRvb2xiYXJzVmlzaWJpbGl0eSAhPSBBUEk6OkluamVjdGVkQnVuZGxlOjpQ
YWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHk6OlVua25vd24pCiAgICAgICAgIHJldHVy
biB0b29sYmFyc1Zpc2liaWxpdHkgPT0gQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50
OjpVSUVsZW1lbnRWaXNpYmlsaXR5OjpWaXNpYmxlOwogICAgIAogICAgIGJvb2wgdG9vbGJhcnNB
cmVWaXNpYmxlID0gdHJ1ZTsKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVu
dFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6Okdl
dFRvb2xiYXJzQXJlVmlzaWJsZSgpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRUb29sYmFy
c0FyZVZpc2libGU6OlJlcGx5KHRvb2xiYXJzQXJlVmlzaWJsZSksIG1fcGFnZS0+cGFnZUlEKCkp
KQorICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rp
b24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0VG9vbGJhcnNBcmVWaXNp
YmxlKCksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFRvb2xiYXJzQXJlVmlzaWJsZTo6UmVw
bHkodG9vbGJhcnNBcmVWaXNpYmxlKSwgbV9wYWdlLnBhZ2VJRCgpKSkKICAgICAgICAgcmV0dXJu
IHRydWU7CiAKICAgICByZXR1cm4gdG9vbGJhcnNBcmVWaXNpYmxlOwpAQCAtMjg1LDE3ICsyOTQs
MTcgQEAgYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnRvb2xiYXJzVmlzaWJsZSgpCiAKIHZvaWQgV2Vi
Q2hyb21lQ2xpZW50OjpzZXRTdGF0dXNiYXJWaXNpYmxlKGJvb2wgc3RhdHVzQmFySXNWaXNpYmxl
KQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRTdGF0dXNC
YXJJc1Zpc2libGUoc3RhdHVzQmFySXNWaXNpYmxlKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2Fn
ZXM6OldlYlBhZ2VQcm94eTo6U2V0U3RhdHVzQmFySXNWaXNpYmxlKHN0YXR1c0JhcklzVmlzaWJs
ZSkpOwogfQogCiBib29sIFdlYkNocm9tZUNsaWVudDo6c3RhdHVzYmFyVmlzaWJsZSgpCiB7Ci0g
ICAgQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5
IHN0YXR1c2JhclZpc2liaWxpdHkgPSBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5z
dGF0dXNCYXJJc1Zpc2libGUobV9wYWdlKTsKKyAgICBBUEk6OkluamVjdGVkQnVuZGxlOjpQYWdl
VUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHkgc3RhdHVzYmFyVmlzaWJpbGl0eSA9IG1fcGFn
ZS5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkuc3RhdHVzQmFySXNWaXNpYmxlKCZtX3BhZ2UpOwog
ICAgIGlmIChzdGF0dXNiYXJWaXNpYmlsaXR5ICE9IEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VV
SUNsaWVudDo6VUlFbGVtZW50VmlzaWJpbGl0eTo6VW5rbm93bikKICAgICAgICAgcmV0dXJuIHN0
YXR1c2JhclZpc2liaWxpdHkgPT0gQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpV
SUVsZW1lbnRWaXNpYmlsaXR5OjpWaXNpYmxlOwogCiAgICAgYm9vbCBzdGF0dXNCYXJJc1Zpc2li
bGUgPSB0cnVlOwotICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vz
c0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0U3RhdHVz
QmFySXNWaXNpYmxlKCksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFN0YXR1c0JhcklzVmlz
aWJsZTo6UmVwbHkoc3RhdHVzQmFySXNWaXNpYmxlKSwgbV9wYWdlLT5wYWdlSUQoKSkpCisgICAg
aWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5z
ZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRTdGF0dXNCYXJJc1Zpc2libGUoKSwg
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0U3RhdHVzQmFySXNWaXNpYmxlOjpSZXBseShzdGF0
dXNCYXJJc1Zpc2libGUpLCBtX3BhZ2UucGFnZUlEKCkpKQogICAgICAgICByZXR1cm4gdHJ1ZTsK
IAogICAgIHJldHVybiBzdGF0dXNCYXJJc1Zpc2libGU7CkBAIC0zMTQsMTcgKzMyMywxNyBAQCBi
b29sIFdlYkNocm9tZUNsaWVudDo6c2Nyb2xsYmFyc1Zpc2libGUoKQogCiB2b2lkIFdlYkNocm9t
ZUNsaWVudDo6c2V0TWVudWJhclZpc2libGUoYm9vbCBtZW51QmFyVmlzaWJsZSkKIHsKLSAgICBt
X3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0TWVudUJhcklzVmlzaWJsZSht
ZW51QmFyVmlzaWJsZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OlNldE1lbnVCYXJJc1Zpc2libGUobWVudUJhclZpc2libGUpKTsKIH0KIAogYm9vbCBXZWJDaHJv
bWVDbGllbnQ6Om1lbnViYXJWaXNpYmxlKCkKIHsKLSAgICBBUEk6OkluamVjdGVkQnVuZGxlOjpQ
YWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHkgbWVudWJhclZpc2liaWxpdHkgPSBtX3Bh
Z2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5tZW51QmFySXNWaXNpYmxlKG1fcGFnZSk7Cisg
ICAgQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5
IG1lbnViYXJWaXNpYmlsaXR5ID0gbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5tZW51
QmFySXNWaXNpYmxlKCZtX3BhZ2UpOwogICAgIGlmIChtZW51YmFyVmlzaWJpbGl0eSAhPSBBUEk6
OkluamVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHk6OlVua25v
d24pCiAgICAgICAgIHJldHVybiBtZW51YmFyVmlzaWJpbGl0eSA9PSBBUEk6OkluamVjdGVkQnVu
ZGxlOjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHk6OlZpc2libGU7CiAgICAgCiAg
ICAgYm9vbCBtZW51QmFySXNWaXNpYmxlID0gdHJ1ZTsKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNp
bmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OkdldE1lbnVCYXJJc1Zpc2libGUoKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94
eTo6R2V0TWVudUJhcklzVmlzaWJsZTo6UmVwbHkobWVudUJhcklzVmlzaWJsZSksIG1fcGFnZS0+
cGFnZUlEKCkpKQorICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vz
c0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0TWVudUJh
cklzVmlzaWJsZSgpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRNZW51QmFySXNWaXNpYmxl
OjpSZXBseShtZW51QmFySXNWaXNpYmxlKSwgbV9wYWdlLnBhZ2VJRCgpKSkKICAgICAgICAgcmV0
dXJuIHRydWU7CiAKICAgICByZXR1cm4gbWVudUJhcklzVmlzaWJsZTsKQEAgLTMzMiwxOCArMzQx
LDE4IEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjptZW51YmFyVmlzaWJsZSgpCiAKIHZvaWQgV2Vi
Q2hyb21lQ2xpZW50OjpzZXRSZXNpemFibGUoYm9vbCByZXNpemFibGUpCiB7Ci0gICAgbV9wYWdl
LT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldElzUmVzaXphYmxlKHJlc2l6YWJsZSkp
OworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldElzUmVzaXphYmxl
KHJlc2l6YWJsZSkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6YWRkTWVzc2FnZVRvQ29u
c29sZShNZXNzYWdlU291cmNlIHNvdXJjZSwgTWVzc2FnZUxldmVsIGxldmVsLCBjb25zdCBTdHJp
bmcmIG1lc3NhZ2UsIHVuc2lnbmVkIGxpbmVOdW1iZXIsIHVuc2lnbmVkIGNvbHVtbk51bWJlciwg
Y29uc3QgU3RyaW5nJiBzb3VyY2VJRCkKIHsKICAgICAvLyBOb3RpZnkgdGhlIGJ1bmRsZSBjbGll
bnQuCi0gICAgbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkud2lsbEFkZE1lc3NhZ2VU
b0NvbnNvbGUobV9wYWdlLCBzb3VyY2UsIGxldmVsLCBtZXNzYWdlLCBsaW5lTnVtYmVyLCBjb2x1
bW5OdW1iZXIsIHNvdXJjZUlEKTsKKyAgICBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgp
LndpbGxBZGRNZXNzYWdlVG9Db25zb2xlKCZtX3BhZ2UsIHNvdXJjZSwgbGV2ZWwsIG1lc3NhZ2Us
IGxpbmVOdW1iZXIsIGNvbHVtbk51bWJlciwgc291cmNlSUQpOwogfQogCiBib29sIFdlYkNocm9t
ZUNsaWVudDo6Y2FuUnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsKCkKIHsKLSAgICByZXR1cm4g
bV9wYWdlLT5jYW5SdW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoKTsKKyAgICByZXR1cm4gbV9w
YWdlLmNhblJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbCgpOwogfQogCiBib29sIFdlYkNocm9t
ZUNsaWVudDo6cnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsKGNvbnN0IFN0cmluZyYgbWVzc2Fn
ZSwgRnJhbWUqIGZyYW1lKQpAQCAtMzU0LDcgKzM2Myw3IEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50
OjpydW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBGcmFt
ZSoKIAogICAgIEhhbmdEZXRlY3Rpb25EaXNhYmxlciBoYW5nRGV0ZWN0aW9uRGlzYWJsZXI7CiAK
LSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9u
KCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJ1bkJlZm9yZVVubG9hZENvbmZp
cm1QYW5lbChtZXNzYWdlLCB3ZWJGcmFtZS0+ZnJhbWVJRCgpKSwgTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6UnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsOjpSZXBseShzaG91bGRDbG9zZSksIG1f
cGFnZS0+cGFnZUlEKCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246
OkluZm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKSkKKyAgICBpZiAoIVdlYlByb2Nlc3M6
OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6OlJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbChtZXNzYWdlLCB3ZWJG
cmFtZS0+ZnJhbWVJRCgpKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuQmVmb3JlVW5sb2Fk
Q29uZmlybVBhbmVsOjpSZXBseShzaG91bGRDbG9zZSksIG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25k
czo6aW5maW5pdHkoKSwgSVBDOjpTZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNz
V2lsbFN1c3BlbmQpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICByZXR1cm4gc2hvdWxk
Q2xvc2U7CkBAIC0zNjksMTQgKzM3OCwxNCBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y2xvc2VX
aW5kb3dTb29uKCkKICAgICAvLyBhIGNsb3NlIGV4ZWN1dGUgc3luY2hyb25vdXNseSBhcyBwYXJ0
IG9mIHdpbmRvdy5jbG9zZSwgYnV0IG90aGVyIHBhcnRzCiAgICAgLy8gbGF0ZXIgb24uCiAKLSAg
ICBtX3BhZ2UtPmNvcmVQYWdlKCktPnNldEdyb3VwTmFtZShTdHJpbmcoKSk7CisgICAgbV9wYWdl
LmNvcmVQYWdlKCktPnNldEdyb3VwTmFtZShTdHJpbmcoKSk7CiAKLSAgICBpZiAoV2ViRnJhbWUq
IGZyYW1lID0gbV9wYWdlLT5tYWluV2ViRnJhbWUoKSkgeworICAgIGlmIChXZWJGcmFtZSogZnJh
bWUgPSBtX3BhZ2UubWFpbldlYkZyYW1lKCkpIHsKICAgICAgICAgaWYgKEZyYW1lKiBjb3JlRnJh
bWUgPSBmcmFtZS0+Y29yZUZyYW1lKCkpCiAgICAgICAgICAgICBjb3JlRnJhbWUtPmxvYWRlcigp
LnN0b3BGb3JVc2VyQ2FuY2VsKCk7CiAgICAgfQogCi0gICAgbV9wYWdlLT5zZW5kQ2xvc2UoKTsK
KyAgICBtX3BhZ2Uuc2VuZENsb3NlKCk7CiB9CiAKIHN0YXRpYyBib29sIHNob3VsZFN1cHByZXNz
SmF2YVNjcmlwdERpYWxvZ3MoRnJhbWUmIGZyYW1lKQpAQCAtMzk2LDExICs0MDUsMTEgQEAgdm9p
ZCBXZWJDaHJvbWVDbGllbnQ6OnJ1bkphdmFTY3JpcHRBbGVydChGcmFtZSogZnJhbWUsIGNvbnN0
IFN0cmluZyYgYWxlcnRUZXh0KQogICAgIEFTU0VSVCh3ZWJGcmFtZSk7CiAKICAgICAvLyBOb3Rp
ZnkgdGhlIGJ1bmRsZSBjbGllbnQuCi0gICAgbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50
KCkud2lsbFJ1bkphdmFTY3JpcHRBbGVydChtX3BhZ2UsIGFsZXJ0VGV4dCwgd2ViRnJhbWUpOwor
ICAgIG1fcGFnZS5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkud2lsbFJ1bkphdmFTY3JpcHRBbGVy
dCgmbV9wYWdlLCBhbGVydFRleHQsIHdlYkZyYW1lKTsKIAogICAgIEhhbmdEZXRlY3Rpb25EaXNh
YmxlciBoYW5nRGV0ZWN0aW9uRGlzYWJsZXI7CiAKLSAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24o
KS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpSdW5KYXZhU2NyaXB0QWxlcnQod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmln
aW5EYXRhOjpmcm9tRnJhbWUoZnJhbWUpLCBhbGVydFRleHQpLCBNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpSdW5KYXZhU2NyaXB0QWxlcnQ6OlJlcGx5KCksIG1fcGFnZS0+cGFnZUlEKCksIFNlY29u
ZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246OkluZm9ybVBsYXRmb3JtUHJvY2Vz
c1dpbGxTdXNwZW5kKTsKKyAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNz
Q29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2Ny
aXB0QWxlcnQod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tRnJh
bWUoZnJhbWUpLCBhbGVydFRleHQpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2Ny
aXB0QWxlcnQ6OlJlcGx5KCksIG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwg
SVBDOjpTZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpOwog
fQogCiBib29sIFdlYkNocm9tZUNsaWVudDo6cnVuSmF2YVNjcmlwdENvbmZpcm0oRnJhbWUqIGZy
YW1lLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UpCkBAIC00MTIsMTIgKzQyMSwxMiBAQCBib29sIFdl
YkNocm9tZUNsaWVudDo6cnVuSmF2YVNjcmlwdENvbmZpcm0oRnJhbWUqIGZyYW1lLCBjb25zdCBT
dHJpbmcmIG1lc3NhZ2UpCiAgICAgQVNTRVJUKHdlYkZyYW1lKTsKIAogICAgIC8vIE5vdGlmeSB0
aGUgYnVuZGxlIGNsaWVudC4KLSAgICBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS53
aWxsUnVuSmF2YVNjcmlwdENvbmZpcm0obV9wYWdlLCBtZXNzYWdlLCB3ZWJGcmFtZSk7CisgICAg
bV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS53aWxsUnVuSmF2YVNjcmlwdENvbmZpcm0o
Jm1fcGFnZSwgbWVzc2FnZSwgd2ViRnJhbWUpOwogCiAgICAgSGFuZ0RldGVjdGlvbkRpc2FibGVy
IGhhbmdEZXRlY3Rpb25EaXNhYmxlcjsKIAogICAgIGJvb2wgcmVzdWx0ID0gZmFsc2U7Ci0gICAg
aWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5z
ZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2NyaXB0Q29uZmlybSh3ZWJG
cmFtZS0+ZnJhbWVJRCgpLCBTZWN1cml0eU9yaWdpbkRhdGE6OmZyb21GcmFtZShmcmFtZSksIG1l
c3NhZ2UpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2NyaXB0Q29uZmlybTo6UmVw
bHkocmVzdWx0KSwgbV9wYWdlLT5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBDOjpT
ZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpKQorICAgIGlm
ICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2Vu
ZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdENvbmZpcm0od2ViRnJh
bWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tRnJhbWUoZnJhbWUpLCBtZXNz
YWdlKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdENvbmZpcm06OlJlcGx5
KHJlc3VsdCksIG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBDOjpTZW5k
U3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpKQogICAgICAgICBy
ZXR1cm4gZmFsc2U7CiAKICAgICByZXR1cm4gcmVzdWx0OwpAQCAtNDMyLDExICs0NDEsMTEgQEAg
Ym9vbCBXZWJDaHJvbWVDbGllbnQ6OnJ1bkphdmFTY3JpcHRQcm9tcHQoRnJhbWUqIGZyYW1lLCBj
b25zdCBTdHJpbmcmIG1lc3NhZ2UsIGMKICAgICBBU1NFUlQod2ViRnJhbWUpOwogCiAgICAgLy8g
Tm90aWZ5IHRoZSBidW5kbGUgY2xpZW50LgotICAgIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVVSUNs
aWVudCgpLndpbGxSdW5KYXZhU2NyaXB0UHJvbXB0KG1fcGFnZSwgbWVzc2FnZSwgZGVmYXVsdFZh
bHVlLCB3ZWJGcmFtZSk7CisgICAgbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS53aWxs
UnVuSmF2YVNjcmlwdFByb21wdCgmbV9wYWdlLCBtZXNzYWdlLCBkZWZhdWx0VmFsdWUsIHdlYkZy
YW1lKTsKIAogICAgIEhhbmdEZXRlY3Rpb25EaXNhYmxlciBoYW5nRGV0ZWN0aW9uRGlzYWJsZXI7
CiAKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0
aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJ1bkphdmFTY3JpcHRQcm9t
cHQod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tRnJhbWUoZnJh
bWUpLCBtZXNzYWdlLCBkZWZhdWx0VmFsdWUpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5K
YXZhU2NyaXB0UHJvbXB0OjpSZXBseShyZXN1bHQpLCBtX3BhZ2UtPnBhZ2VJRCgpLCBTZWNvbmRz
OjppbmZpbml0eSgpLCBJUEM6OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0Zm9ybVByb2Nlc3NX
aWxsU3VzcGVuZCkpCisgICAgaWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9j
ZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZh
U2NyaXB0UHJvbXB0KHdlYkZyYW1lLT5mcmFtZUlEKCksIFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJv
bUZyYW1lKGZyYW1lKSwgbWVzc2FnZSwgZGVmYXVsdFZhbHVlKSwgTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6UnVuSmF2YVNjcmlwdFByb21wdDo6UmVwbHkocmVzdWx0KSwgbV9wYWdlLnBhZ2VJRCgp
LCBTZWNvbmRzOjppbmZpbml0eSgpLCBJUEM6OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0Zm9y
bVByb2Nlc3NXaWxsU3VzcGVuZCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIHJldHVy
biAhcmVzdWx0LmlzTnVsbCgpOwpAQCAtNDQ1LDI3ICs0NTQsMjkgQEAgYm9vbCBXZWJDaHJvbWVD
bGllbnQ6OnJ1bkphdmFTY3JpcHRQcm9tcHQoRnJhbWUqIGZyYW1lLCBjb25zdCBTdHJpbmcmIG1l
c3NhZ2UsIGMKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRTdGF0dXNiYXJUZXh0KGNvbnN0IFN0
cmluZyYgc3RhdHVzYmFyVGV4dCkKIHsKICAgICAvLyBOb3RpZnkgdGhlIGJ1bmRsZSBjbGllbnQu
Ci0gICAgbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkud2lsbFNldFN0YXR1c2JhclRl
eHQobV9wYWdlLCBzdGF0dXNiYXJUZXh0KTsKKyAgICBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNs
aWVudCgpLndpbGxTZXRTdGF0dXNiYXJUZXh0KCZtX3BhZ2UsIHN0YXR1c2JhclRleHQpOwogCi0g
ICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldFN0YXR1c1RleHQoc3Rh
dHVzYmFyVGV4dCkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNl
dFN0YXR1c1RleHQoc3RhdHVzYmFyVGV4dCkpOwogfQogCiBLZXlib2FyZFVJTW9kZSBXZWJDaHJv
bWVDbGllbnQ6OmtleWJvYXJkVUlNb2RlKCkKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5rZXlib2Fy
ZFVJTW9kZSgpOworICAgIHJldHVybiBtX3BhZ2Uua2V5Ym9hcmRVSU1vZGUoKTsKIH0KIAogI2lm
IEVOQUJMRShQT0lOVEVSX0xPQ0spCisKIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpyZXF1ZXN0UG9p
bnRlckxvY2soKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpS
ZXF1ZXN0UG9pbnRlckxvY2soKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6UmVxdWVzdFBvaW50ZXJMb2NrKCkpOwogICAgIHJldHVybiB0cnVlOwogfQogCiB2b2lk
IFdlYkNocm9tZUNsaWVudDo6cmVxdWVzdFBvaW50ZXJVbmxvY2soKQogewotICAgIG1fcGFnZS0+
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZXF1ZXN0UG9pbnRlclVubG9jaygpKTsKKyAg
ICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZXF1ZXN0UG9pbnRlclVubG9j
aygpKTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjppbnZhbGlkYXRlUm9v
dFZpZXcoY29uc3QgSW50UmVjdCYpCkBAIC00NzUsNjEgKzQ4Niw2MSBAQCB2b2lkIFdlYkNocm9t
ZUNsaWVudDo6aW52YWxpZGF0ZVJvb3RWaWV3KGNvbnN0IEludFJlY3QmKQogCiB2b2lkIFdlYkNo
cm9tZUNsaWVudDo6aW52YWxpZGF0ZUNvbnRlbnRzQW5kUm9vdFZpZXcoY29uc3QgSW50UmVjdCYg
cmVjdCkKIHsKLSAgICBpZiAoRG9jdW1lbnQqIGRvY3VtZW50ID0gbV9wYWdlLT5jb3JlUGFnZSgp
LT5tYWluRnJhbWUoKS5kb2N1bWVudCgpKSB7CisgICAgaWYgKERvY3VtZW50KiBkb2N1bWVudCA9
IG1fcGFnZS5jb3JlUGFnZSgpLT5tYWluRnJhbWUoKS5kb2N1bWVudCgpKSB7CiAgICAgICAgIGlm
IChkb2N1bWVudC0+cHJpbnRpbmcoKSkKICAgICAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAg
ICBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPnNldE5lZWRzRGlzcGxheUluUmVjdChyZWN0KTsKKyAg
ICBtX3BhZ2UuZHJhd2luZ0FyZWEoKS0+c2V0TmVlZHNEaXNwbGF5SW5SZWN0KHJlY3QpOwogfQog
CiB2b2lkIFdlYkNocm9tZUNsaWVudDo6aW52YWxpZGF0ZUNvbnRlbnRzRm9yU2xvd1Njcm9sbChj
b25zdCBJbnRSZWN0JiByZWN0KQogewotICAgIGlmIChEb2N1bWVudCogZG9jdW1lbnQgPSBtX3Bh
Z2UtPmNvcmVQYWdlKCktPm1haW5GcmFtZSgpLmRvY3VtZW50KCkpIHsKKyAgICBpZiAoRG9jdW1l
bnQqIGRvY3VtZW50ID0gbV9wYWdlLmNvcmVQYWdlKCktPm1haW5GcmFtZSgpLmRvY3VtZW50KCkp
IHsKICAgICAgICAgaWYgKGRvY3VtZW50LT5wcmludGluZygpKQogICAgICAgICAgICAgcmV0dXJu
OwogICAgIH0KIAotICAgIG1fcGFnZS0+cGFnZURpZFNjcm9sbCgpOworICAgIG1fcGFnZS5wYWdl
RGlkU2Nyb2xsKCk7CiAjaWYgVVNFKENPT1JESU5BVEVEX0dSQVBISUNTKQotICAgIG1fcGFnZS0+
ZHJhd2luZ0FyZWEoKS0+c2Nyb2xsKHJlY3QsIEludFNpemUoKSk7CisgICAgbV9wYWdlLmRyYXdp
bmdBcmVhKCktPnNjcm9sbChyZWN0LCBJbnRTaXplKCkpOwogI2Vsc2UKLSAgICBtX3BhZ2UtPmRy
YXdpbmdBcmVhKCktPnNldE5lZWRzRGlzcGxheUluUmVjdChyZWN0KTsKKyAgICBtX3BhZ2UuZHJh
d2luZ0FyZWEoKS0+c2V0TmVlZHNEaXNwbGF5SW5SZWN0KHJlY3QpOwogI2VuZGlmCiB9CiAKIHZv
aWQgV2ViQ2hyb21lQ2xpZW50OjpzY3JvbGwoY29uc3QgSW50U2l6ZSYgc2Nyb2xsRGVsdGEsIGNv
bnN0IEludFJlY3QmIHNjcm9sbFJlY3QsIGNvbnN0IEludFJlY3QmIGNsaXBSZWN0KQogewotICAg
IG1fcGFnZS0+cGFnZURpZFNjcm9sbCgpOwotICAgIG1fcGFnZS0+ZHJhd2luZ0FyZWEoKS0+c2Ny
b2xsKGludGVyc2VjdGlvbihzY3JvbGxSZWN0LCBjbGlwUmVjdCksIHNjcm9sbERlbHRhKTsKKyAg
ICBtX3BhZ2UucGFnZURpZFNjcm9sbCgpOworICAgIG1fcGFnZS5kcmF3aW5nQXJlYSgpLT5zY3Jv
bGwoaW50ZXJzZWN0aW9uKHNjcm9sbFJlY3QsIGNsaXBSZWN0KSwgc2Nyb2xsRGVsdGEpOwogfQog
CiAjaWYgVVNFKENPT1JESU5BVEVEX0dSQVBISUNTKQogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmRl
bGVnYXRlZFNjcm9sbFJlcXVlc3RlZChjb25zdCBJbnRQb2ludCYgc2Nyb2xsT2Zmc2V0KQogewot
ICAgIG1fcGFnZS0+cGFnZURpZFJlcXVlc3RTY3JvbGwoc2Nyb2xsT2Zmc2V0KTsKKyAgICBtX3Bh
Z2UucGFnZURpZFJlcXVlc3RTY3JvbGwoc2Nyb2xsT2Zmc2V0KTsKIH0KICNlbmRpZgogCiBJbnRQ
b2ludCBXZWJDaHJvbWVDbGllbnQ6OnNjcmVlblRvUm9vdFZpZXcoY29uc3QgSW50UG9pbnQmIHBv
aW50KSBjb25zdAogewotICAgIHJldHVybiBtX3BhZ2UtPnNjcmVlblRvUm9vdFZpZXcocG9pbnQp
OworICAgIHJldHVybiBtX3BhZ2Uuc2NyZWVuVG9Sb290Vmlldyhwb2ludCk7CiB9CiAKIEludFJl
Y3QgV2ViQ2hyb21lQ2xpZW50Ojpyb290Vmlld1RvU2NyZWVuKGNvbnN0IEludFJlY3QmIHJlY3Qp
IGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+cm9vdFZpZXdUb1NjcmVlbihyZWN0KTsKKyAg
ICByZXR1cm4gbV9wYWdlLnJvb3RWaWV3VG9TY3JlZW4ocmVjdCk7CiB9CiAgICAgCiAjaWYgUExB
VEZPUk0oSU9TKQogSW50UG9pbnQgV2ViQ2hyb21lQ2xpZW50OjphY2Nlc3NpYmlsaXR5U2NyZWVu
VG9Sb290Vmlldyhjb25zdCBJbnRQb2ludCYgcG9pbnQpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1f
cGFnZS0+YWNjZXNzaWJpbGl0eVNjcmVlblRvUm9vdFZpZXcocG9pbnQpOworICAgIHJldHVybiBt
X3BhZ2UuYWNjZXNzaWJpbGl0eVNjcmVlblRvUm9vdFZpZXcocG9pbnQpOwogfQogCiBJbnRSZWN0
IFdlYkNocm9tZUNsaWVudDo6cm9vdFZpZXdUb0FjY2Vzc2liaWxpdHlTY3JlZW4oY29uc3QgSW50
UmVjdCYgcmVjdCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5yb290Vmlld1RvQWNjZXNz
aWJpbGl0eVNjcmVlbihyZWN0KTsKKyAgICByZXR1cm4gbV9wYWdlLnJvb3RWaWV3VG9BY2Nlc3Np
YmlsaXR5U2NyZWVuKHJlY3QpOwogfQogI2VuZGlmCiAKQEAgLTU0MSwyMCArNTUyLDIwIEBAIFBs
YXRmb3JtUGFnZUNsaWVudCBXZWJDaHJvbWVDbGllbnQ6OnBsYXRmb3JtUGFnZUNsaWVudCgpIGNv
bnN0CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpjb250ZW50c1NpemVDaGFuZ2VkKEZyYW1lKiBm
cmFtZSwgY29uc3QgSW50U2l6ZSYgc2l6ZSkgY29uc3QKIHsKLSAgICBpZiAoIW1fcGFnZS0+Y29y
ZVBhZ2UoKS0+c2V0dGluZ3MoKS5mcmFtZUZsYXR0ZW5pbmdFbmFibGVkKCkpIHsKKyAgICBpZiAo
IW1fcGFnZS5jb3JlUGFnZSgpLT5zZXR0aW5ncygpLmZyYW1lRmxhdHRlbmluZ0VuYWJsZWQoKSkg
ewogICAgICAgICBXZWJGcmFtZSogbGFyZ2VzdEZyYW1lID0gZmluZExhcmdlc3RGcmFtZUluRnJh
bWVTZXQobV9wYWdlKTsKICAgICAgICAgaWYgKGxhcmdlc3RGcmFtZSAhPSBtX2NhY2hlZEZyYW1l
U2V0TGFyZ2VzdEZyYW1lLmdldCgpKSB7CiAgICAgICAgICAgICBtX2NhY2hlZEZyYW1lU2V0TGFy
Z2VzdEZyYW1lID0gbGFyZ2VzdEZyYW1lOwotICAgICAgICAgICAgbV9wYWdlLT5zZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OkZyYW1lU2V0TGFyZ2VzdEZyYW1lQ2hhbmdlZChsYXJnZXN0RnJh
bWUgPyBsYXJnZXN0RnJhbWUtPmZyYW1lSUQoKSA6IDApKTsKKyAgICAgICAgICAgIG1fcGFnZS5z
ZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZyYW1lU2V0TGFyZ2VzdEZyYW1lQ2hhbmdlZChs
YXJnZXN0RnJhbWUgPyBsYXJnZXN0RnJhbWUtPmZyYW1lSUQoKSA6IDApKTsKICAgICAgICAgfQog
ICAgIH0KIAogICAgIGlmICgmZnJhbWUtPnBhZ2UoKS0+bWFpbkZyYW1lKCkgIT0gZnJhbWUpCiAg
ICAgICAgIHJldHVybjsKIAotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjpEaWRDaGFuZ2VDb250ZW50U2l6ZShzaXplKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6RGlkQ2hhbmdlQ29udGVudFNpemUoc2l6ZSkpOwogCi0gICAgbV9wYWdl
LT5kcmF3aW5nQXJlYSgpLT5tYWluRnJhbWVDb250ZW50U2l6ZUNoYW5nZWQoc2l6ZSk7CisgICAg
bV9wYWdlLmRyYXdpbmdBcmVhKCktPm1haW5GcmFtZUNvbnRlbnRTaXplQ2hhbmdlZChzaXplKTsK
IAogICAgIEZyYW1lVmlldyogZnJhbWVWaWV3ID0gZnJhbWUtPnZpZXcoKTsKICAgICBpZiAoZnJh
bWVWaWV3ICYmICFmcmFtZVZpZXctPmRlbGVnYXRlc1Njcm9sbGluZygpKSAgewpAQCAtNTYyLDcg
KzU3Myw3IEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpjb250ZW50c1NpemVDaGFuZ2VkKEZyYW1l
KiBmcmFtZSwgY29uc3QgSW50U2l6ZSYgc2l6ZSkgY29uCiAgICAgICAgIGJvb2wgaGFzVmVydGlj
YWxTY3JvbGxiYXIgPSBmcmFtZVZpZXctPnZlcnRpY2FsU2Nyb2xsYmFyKCk7CiAKICAgICAgICAg
aWYgKGhhc0hvcml6b250YWxTY3JvbGxiYXIgIT0gbV9jYWNoZWRNYWluRnJhbWVIYXNIb3Jpem9u
dGFsU2Nyb2xsYmFyIHx8IGhhc1ZlcnRpY2FsU2Nyb2xsYmFyICE9IG1fY2FjaGVkTWFpbkZyYW1l
SGFzVmVydGljYWxTY3JvbGxiYXIpIHsKLSAgICAgICAgICAgIG1fcGFnZS0+c2VuZChNZXNzYWdl
czo6V2ViUGFnZVByb3h5OjpEaWRDaGFuZ2VTY3JvbGxiYXJzRm9yTWFpbkZyYW1lKGhhc0hvcml6
b250YWxTY3JvbGxiYXIsIGhhc1ZlcnRpY2FsU2Nyb2xsYmFyKSk7CisgICAgICAgICAgICBtX3Bh
Z2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRDaGFuZ2VTY3JvbGxiYXJzRm9yTWFp
bkZyYW1lKGhhc0hvcml6b250YWxTY3JvbGxiYXIsIGhhc1ZlcnRpY2FsU2Nyb2xsYmFyKSk7CiAK
ICAgICAgICAgICAgIG1fY2FjaGVkTWFpbkZyYW1lSGFzSG9yaXpvbnRhbFNjcm9sbGJhciA9IGhh
c0hvcml6b250YWxTY3JvbGxiYXI7CiAgICAgICAgICAgICBtX2NhY2hlZE1haW5GcmFtZUhhc1Zl
cnRpY2FsU2Nyb2xsYmFyID0gaGFzVmVydGljYWxTY3JvbGxiYXI7CkBAIC02MDMsMTIgKzYxNCwx
MiBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6dW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2Vk
KEVsZW1lbnQqIGVsZW1lbnQsIFJlbmRlckVtYgogICAgIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQq
IHBsdWdpbkVsZW1lbnQgPSBzdGF0aWNfY2FzdDxIVE1MUGx1Z0luSW1hZ2VFbGVtZW50Kj4oZWxl
bWVudCk7CiAKICAgICBTdHJpbmcgZnJhbWVVUkxTdHJpbmcgPSBwbHVnaW5FbGVtZW50LT5kb2N1
bWVudCgpLmZyYW1lKCktPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCktPnJlc3BvbnNlVVJMKCku
c3RyaW5nKCk7Ci0gICAgU3RyaW5nIHBhZ2VVUkxTdHJpbmcgPSBtX3BhZ2UtPm1haW5GcmFtZSgp
LT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOworICAg
IFN0cmluZyBwYWdlVVJMU3RyaW5nID0gbV9wYWdlLm1haW5GcmFtZSgpLT5sb2FkZXIoKS5kb2N1
bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwogICAgIFN0cmluZyBwbHVnaW5V
UkxTdHJpbmcgPSBwbHVnaW5FbGVtZW50LT5kb2N1bWVudCgpLmNvbXBsZXRlVVJMKHBsdWdpbkVs
ZW1lbnQtPnVybCgpKS5zdHJpbmcoKTsKICAgICBVUkwgcGx1Z2luc3BhZ2VBdHRyaWJ1dGVVUkwg
PSBlbGVtZW50LT5kb2N1bWVudCgpLmNvbXBsZXRlVVJMKHN0cmlwTGVhZGluZ0FuZFRyYWlsaW5n
SFRNTFNwYWNlcyhwbHVnaW5FbGVtZW50LT5nZXRBdHRyaWJ1dGUocGx1Z2luc3BhZ2VBdHRyKSkp
OwogICAgIGlmICghcGx1Z2luc3BhZ2VBdHRyaWJ1dGVVUkwucHJvdG9jb2xJc0luSFRUUEZhbWls
eSgpKQogICAgICAgICBwbHVnaW5zcGFnZUF0dHJpYnV0ZVVSTCA9IFVSTCgpOwotICAgIG1fcGFn
ZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpVbmF2YWlsYWJsZVBsdWdpbkJ1dHRvbkNs
aWNrZWQocGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24sIHBsdWdpbkVsZW1lbnQtPnNlcnZpY2VU
eXBlKCksIHBsdWdpblVSTFN0cmluZywgcGx1Z2luc3BhZ2VBdHRyaWJ1dGVVUkwuc3RyaW5nKCks
IGZyYW1lVVJMU3RyaW5nLCBwYWdlVVJMU3RyaW5nKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2Fn
ZXM6OldlYlBhZ2VQcm94eTo6VW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2VkKHBsdWdpblVu
YXZhaWxhYmlsaXR5UmVhc29uLCBwbHVnaW5FbGVtZW50LT5zZXJ2aWNlVHlwZSgpLCBwbHVnaW5V
UkxTdHJpbmcsIHBsdWdpbnNwYWdlQXR0cmlidXRlVVJMLnN0cmluZygpLCBmcmFtZVVSTFN0cmlu
ZywgcGFnZVVSTFN0cmluZykpOwogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0oZWxlbWVudCk7CiAg
ICAgVU5VU0VEX1BBUkFNKHBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKTsKQEAgLTYyNSwxMSAr
NjM2LDExIEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojptb3VzZURpZE1vdmVPdmVyRWxlbWVudChj
b25zdCBIaXRUZXN0UmVzdWx0JiBoaXRUZXN0UmVzdWx0CiAgICAgUmVmUHRyPEFQSTo6T2JqZWN0
PiB1c2VyRGF0YTsKIAogICAgIC8vIE5vdGlmeSB0aGUgYnVuZGxlIGNsaWVudC4KLSAgICBtX3Bh
Z2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5tb3VzZURpZE1vdmVPdmVyRWxlbWVudChtX3Bh
Z2UsIGhpdFRlc3RSZXN1bHQsIHN0YXRpY19jYXN0PFdlYkV2ZW50OjpNb2RpZmllcnM+KG1vZGlm
aWVyRmxhZ3MpLCB1c2VyRGF0YSk7CisgICAgbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQo
KS5tb3VzZURpZE1vdmVPdmVyRWxlbWVudCgmbV9wYWdlLCBoaXRUZXN0UmVzdWx0LCBzdGF0aWNf
Y2FzdDxXZWJFdmVudDo6TW9kaWZpZXJzPihtb2RpZmllckZsYWdzKSwgdXNlckRhdGEpOwogCiAg
ICAgLy8gTm90aWZ5IHRoZSBVSVByb2Nlc3MuCiAgICAgV2ViSGl0VGVzdFJlc3VsdERhdGEgd2Vi
SGl0VGVzdFJlc3VsdERhdGEoaGl0VGVzdFJlc3VsdCk7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6Ok1vdXNlRGlkTW92ZU92ZXJFbGVtZW50KHdlYkhpdFRlc3RSZXN1
bHREYXRhLCBtb2RpZmllckZsYWdzLCBVc2VyRGF0YShXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS50
cmFuc2Zvcm1PYmplY3RzVG9IYW5kbGVzKHVzZXJEYXRhLmdldCgpKS5nZXQoKSkpKTsKKyAgICBt
X3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpNb3VzZURpZE1vdmVPdmVyRWxlbWVu
dCh3ZWJIaXRUZXN0UmVzdWx0RGF0YSwgbW9kaWZpZXJGbGFncywgVXNlckRhdGEoV2ViUHJvY2Vz
czo6c2luZ2xldG9uKCkudHJhbnNmb3JtT2JqZWN0c1RvSGFuZGxlcyh1c2VyRGF0YS5nZXQoKSku
Z2V0KCkpKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRUb29sVGlwKGNvbnN0IFN0
cmluZyYgdG9vbFRpcCwgVGV4dERpcmVjdGlvbikKQEAgLTY0MCw3ICs2NTEsNyBAQCB2b2lkIFdl
YkNocm9tZUNsaWVudDo6c2V0VG9vbFRpcChjb25zdCBTdHJpbmcmIHRvb2xUaXAsIFRleHREaXJl
Y3Rpb24pCiAgICAgICAgIHJldHVybjsKICAgICBtX2NhY2hlZFRvb2xUaXAgPSB0b29sVGlwOwog
Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldFRvb2xUaXAobV9j
YWNoZWRUb29sVGlwKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6
U2V0VG9vbFRpcChtX2NhY2hlZFRvb2xUaXApKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6
OnByaW50KEZyYW1lKiBmcmFtZSkKQEAgLTY2OCw3ICs2NzksNyBAQCB2b2lkIFdlYkNocm9tZUNs
aWVudDo6cHJpbnQoRnJhbWUqIGZyYW1lKQogICAgIH0KICNlbmRpZgogCi0gICAgbV9wYWdlLT5z
ZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQcmludEZyYW1lKHdlYkZyYW1lLT5mcmFt
ZUlEKCkpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQcmludEZyYW1lOjpSZXBseSgpLCBTZWNv
bmRzOjppbmZpbml0eSgpLCBJUEM6OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0Zm9ybVByb2Nl
c3NXaWxsU3VzcGVuZCk7CisgICAgbV9wYWdlLnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OlByaW50RnJhbWUod2ViRnJhbWUtPmZyYW1lSUQoKSksIE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OlByaW50RnJhbWU6OlJlcGx5KCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5
bmNPcHRpb246OkluZm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKTsKIH0KIAogdm9pZCBX
ZWJDaHJvbWVDbGllbnQ6OmV4Y2VlZGVkRGF0YWJhc2VRdW90YShGcmFtZSogZnJhbWUsIGNvbnN0
IFN0cmluZyYgZGF0YWJhc2VOYW1lLCBEYXRhYmFzZURldGFpbHMgZGV0YWlscykKQEAgLTY4Niwx
MiArNjk3LDEyIEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpleGNlZWRlZERhdGFiYXNlUXVvdGEo
RnJhbWUqIGZyYW1lLCBjb25zdCBTdHJpbmcmIGRhdGFiYXNlCiAgICAgYXV0byBjdXJyZW50T3Jp
Z2luVXNhZ2UgPSB0cmFja2VyLnVzYWdlKG9yaWdpbkRhdGEpOwogICAgIHVpbnQ2NF90IG5ld1F1
b3RhID0gMDsKICAgICBSZWZQdHI8QVBJOjpTZWN1cml0eU9yaWdpbj4gc2VjdXJpdHlPcmlnaW4g
PSBBUEk6OlNlY3VyaXR5T3JpZ2luOjpjcmVhdGUoV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRh
Ojpmcm9tRGF0YWJhc2VJZGVudGlmaWVyKFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJv
bVNlY3VyaXR5T3JpZ2luKCpvcmlnaW4pLmRhdGFiYXNlSWRlbnRpZmllcigpKS0+c2VjdXJpdHlP
cmlnaW4oKSk7Ci0gICAgbmV3UXVvdGEgPSBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQo
KS5kaWRFeGNlZWREYXRhYmFzZVF1b3RhKG1fcGFnZSwgc2VjdXJpdHlPcmlnaW4uZ2V0KCksIGRh
dGFiYXNlTmFtZSwgZGV0YWlscy5kaXNwbGF5TmFtZSgpLCBjdXJyZW50UXVvdGEsIGN1cnJlbnRP
cmlnaW5Vc2FnZSwgZGV0YWlscy5jdXJyZW50VXNhZ2UoKSwgZGV0YWlscy5leHBlY3RlZFVzYWdl
KCkpOworICAgIG5ld1F1b3RhID0gbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5kaWRF
eGNlZWREYXRhYmFzZVF1b3RhKCZtX3BhZ2UsIHNlY3VyaXR5T3JpZ2luLmdldCgpLCBkYXRhYmFz
ZU5hbWUsIGRldGFpbHMuZGlzcGxheU5hbWUoKSwgY3VycmVudFF1b3RhLCBjdXJyZW50T3JpZ2lu
VXNhZ2UsIGRldGFpbHMuY3VycmVudFVzYWdlKCksIGRldGFpbHMuZXhwZWN0ZWRVc2FnZSgpKTsK
IAogICAgIGlmICghbmV3UXVvdGEpIHsKICAgICAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCku
cGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoCiAgICAgICAgICAgICBNZXNzYWdl
czo6V2ViUGFnZVByb3h5OjpFeGNlZWRlZERhdGFiYXNlUXVvdGEod2ViRnJhbWUtPmZyYW1lSUQo
KSwgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tU2VjdXJpdHlPcmlnaW4oKm9yaWdp
bikuZGF0YWJhc2VJZGVudGlmaWVyKCksIGRhdGFiYXNlTmFtZSwgZGV0YWlscy5kaXNwbGF5TmFt
ZSgpLCBjdXJyZW50UXVvdGEsIGN1cnJlbnRPcmlnaW5Vc2FnZSwgZGV0YWlscy5jdXJyZW50VXNh
Z2UoKSwgZGV0YWlscy5leHBlY3RlZFVzYWdlKCkpLAotICAgICAgICAgICAgTWVzc2FnZXM6Oldl
YlBhZ2VQcm94eTo6RXhjZWVkZWREYXRhYmFzZVF1b3RhOjpSZXBseShuZXdRdW90YSksIG1fcGFn
ZS0+cGFnZUlEKCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246Oklu
Zm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKTsKKyAgICAgICAgICAgIE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OkV4Y2VlZGVkRGF0YWJhc2VRdW90YTo6UmVwbHkobmV3UXVvdGEpLCBtX3Bh
Z2UucGFnZUlEKCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246Oklu
Zm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKTsKICAgICB9CiAKICAgICB0cmFja2VyLnNl
dFF1b3RhKG9yaWdpbkRhdGEsIG5ld1F1b3RhKTsKQEAgLTcwNSwxMCArNzE2LDEwIEBAIHZvaWQg
V2ViQ2hyb21lQ2xpZW50OjpyZWFjaGVkTWF4QXBwQ2FjaGVTaXplKGludDY0X3QpCiB2b2lkIFdl
YkNocm9tZUNsaWVudDo6cmVhY2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YShTZWN1cml0
eU9yaWdpbiogb3JpZ2luLCBpbnQ2NF90IHRvdGFsQnl0ZXNOZWVkZWQpCiB7CiAgICAgUmVmUHRy
PEFQSTo6U2VjdXJpdHlPcmlnaW4+IHNlY3VyaXR5T3JpZ2luID0gQVBJOjpTZWN1cml0eU9yaWdp
bjo6Y3JlYXRlRnJvbVN0cmluZyhvcmlnaW4tPnRvU3RyaW5nKCkpOwotICAgIGlmIChtX3BhZ2Ut
PmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5kaWRSZWFjaEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5R
dW90YShtX3BhZ2UsIHNlY3VyaXR5T3JpZ2luLmdldCgpLCB0b3RhbEJ5dGVzTmVlZGVkKSkKKyAg
ICBpZiAobV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5kaWRSZWFjaEFwcGxpY2F0aW9u
Q2FjaGVPcmlnaW5RdW90YSgmbV9wYWdlLCBzZWN1cml0eU9yaWdpbi5nZXQoKSwgdG90YWxCeXRl
c05lZWRlZCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGF1dG8mIGNhY2hlU3RvcmFnZSA9IG1f
cGFnZS0+Y29yZVBhZ2UoKS0+YXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKTsKKyAgICBhdXRvJiBj
YWNoZVN0b3JhZ2UgPSBtX3BhZ2UuY29yZVBhZ2UoKS0+YXBwbGljYXRpb25DYWNoZVN0b3JhZ2Uo
KTsKICAgICBpbnQ2NF90IGN1cnJlbnRRdW90YSA9IDA7CiAgICAgaWYgKCFjYWNoZVN0b3JhZ2Uu
Y2FsY3VsYXRlUXVvdGFGb3JPcmlnaW4ob3JpZ2luLCBjdXJyZW50UXVvdGEpKQogICAgICAgICBy
ZXR1cm47CkBAIC03MTYsNyArNzI3LDcgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJlYWNoZWRB
cHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoU2VjdXJpdHlPcmlnaW4qIG9yaWdpbiwKICAgICB1
aW50NjRfdCBuZXdRdW90YSA9IDA7CiAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50
UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoCiAgICAgICAgIE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OlJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoV2ViQ29yZTo6U2VjdXJp
dHlPcmlnaW5EYXRhOjpmcm9tU2VjdXJpdHlPcmlnaW4oKm9yaWdpbikuZGF0YWJhc2VJZGVudGlm
aWVyKCksIGN1cnJlbnRRdW90YSwgdG90YWxCeXRlc05lZWRlZCksCi0gICAgICAgIE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6OlJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGE6OlJlcGx5
KG5ld1F1b3RhKSwgbV9wYWdlLT5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBDOjpT
ZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpOworICAgICAg
ICBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZWFjaGVkQXBwbGljYXRpb25DYWNoZU9yaWdpblF1
b3RhOjpSZXBseShuZXdRdW90YSksIG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHko
KSwgSVBDOjpTZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQp
OwogCiAgICAgY2FjaGVTdG9yYWdlLnN0b3JlVXBkYXRlZFF1b3RhRm9yT3JpZ2luKG9yaWdpbiwg
bmV3UXVvdGEpOwogfQpAQCAtNzMwLDM1ICs3NDEsMzIgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6
OmFubm90YXRlZFJlZ2lvbnNDaGFuZ2VkKCkKIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnNob3Vs
ZFJlcGxhY2VXaXRoR2VuZXJhdGVkRmlsZUZvclVwbG9hZChjb25zdCBTdHJpbmcmIHBhdGgsIFN0
cmluZyYgZ2VuZXJhdGVkRmlsZW5hbWUpCiB7Ci0gICAgZ2VuZXJhdGVkRmlsZW5hbWUgPSBtX3Bh
Z2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5zaG91bGRHZW5lcmF0ZUZpbGVGb3JVcGxvYWQo
bV9wYWdlLCBwYXRoKTsKKyAgICBnZW5lcmF0ZWRGaWxlbmFtZSA9IG1fcGFnZS5pbmplY3RlZEJ1
bmRsZVVJQ2xpZW50KCkuc2hvdWxkR2VuZXJhdGVGaWxlRm9yVXBsb2FkKCZtX3BhZ2UsIHBhdGgp
OwogICAgIHJldHVybiAhZ2VuZXJhdGVkRmlsZW5hbWUuaXNOdWxsKCk7CiB9CiAKIFN0cmluZyBX
ZWJDaHJvbWVDbGllbnQ6OmdlbmVyYXRlUmVwbGFjZW1lbnRGaWxlKGNvbnN0IFN0cmluZyYgcGF0
aCkKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkuZ2VuZXJh
dGVGaWxlRm9yVXBsb2FkKG1fcGFnZSwgcGF0aCk7CisgICAgcmV0dXJuIG1fcGFnZS5pbmplY3Rl
ZEJ1bmRsZVVJQ2xpZW50KCkuZ2VuZXJhdGVGaWxlRm9yVXBsb2FkKCZtX3BhZ2UsIHBhdGgpOwog
fQogCiAjaWYgRU5BQkxFKElOUFVUX1RZUEVfQ09MT1IpCiBzdGQ6OnVuaXF1ZV9wdHI8Q29sb3JD
aG9vc2VyPiBXZWJDaHJvbWVDbGllbnQ6OmNyZWF0ZUNvbG9yQ2hvb3NlcihDb2xvckNob29zZXJD
bGllbnQqIGNsaWVudCwgY29uc3QgQ29sb3ImIGluaXRpYWxDb2xvcikKIHsKLSAgICByZXR1cm4g
c3RkOjptYWtlX3VuaXF1ZTxXZWJDb2xvckNob29zZXI+KG1fcGFnZSwgY2xpZW50LCBpbml0aWFs
Q29sb3IpOworICAgIHJldHVybiBzdGQ6Om1ha2VfdW5pcXVlPFdlYkNvbG9yQ2hvb3Nlcj4oJm1f
cGFnZSwgY2xpZW50LCBpbml0aWFsQ29sb3IpOwogfQogI2VuZGlmCiAKLXZvaWQgV2ViQ2hyb21l
Q2xpZW50OjpydW5PcGVuUGFuZWwoRnJhbWUqIGZyYW1lLCBQYXNzUmVmUHRyPEZpbGVDaG9vc2Vy
PiBwcnBGaWxlQ2hvb3NlcikKK3ZvaWQgV2ViQ2hyb21lQ2xpZW50OjpydW5PcGVuUGFuZWwoRnJh
bWUmIGZyYW1lLCBGaWxlQ2hvb3NlciYgZmlsZUNob29zZXIpCiB7Ci0gICAgaWYgKG1fcGFnZS0+
YWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIoKSkKKyAgICBpZiAobV9wYWdlLmFjdGl2ZU9w
ZW5QYW5lbFJlc3VsdExpc3RlbmVyKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIFJlZlB0cjxG
aWxlQ2hvb3Nlcj4gZmlsZUNob29zZXIgPSBwcnBGaWxlQ2hvb3NlcjsKKyAgICBtX3BhZ2Uuc2V0
QWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIoV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXI6
OmNyZWF0ZSgmbV9wYWdlLCAmZmlsZUNob29zZXIpKTsKIAotICAgIG1fcGFnZS0+c2V0QWN0aXZl
T3BlblBhbmVsUmVzdWx0TGlzdGVuZXIoV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXI6OmNyZWF0
ZShtX3BhZ2UsIGZpbGVDaG9vc2VyLmdldCgpKSk7Ci0KLSAgICBXZWJGcmFtZSogd2ViRnJhbWUg
PSBXZWJGcmFtZTo6ZnJvbUNvcmVGcmFtZSgqZnJhbWUpOworICAgIGF1dG8qIHdlYkZyYW1lID0g
V2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoZnJhbWUpOwogICAgIEFTU0VSVCh3ZWJGcmFtZSk7Ci0K
LSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuT3BlblBhbmVsKHdl
YkZyYW1lLT5mcmFtZUlEKCksIFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbUZyYW1lKGZyYW1lKSwg
ZmlsZUNob29zZXItPnNldHRpbmdzKCkpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2Vi
UGFnZVByb3h5OjpSdW5PcGVuUGFuZWwod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmln
aW5EYXRhOjpmcm9tRnJhbWUoJmZyYW1lKSwgZmlsZUNob29zZXIuc2V0dGluZ3MoKSkpOwogfQog
CiB2b2lkIFdlYkNocm9tZUNsaWVudDo6bG9hZEljb25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8U3Ry
aW5nPiYgZmlsZW5hbWVzLCBGaWxlSWNvbkxvYWRlciYgbG9hZGVyKQpAQCAtNzY3LDM0ICs3NzUs
MzggQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmxvYWRJY29uRm9yRmlsZXMoY29uc3QgVmVjdG9y
PFN0cmluZz4mIGZpbGVuYW1lcywgRmlsZUljb24KIH0KIAogI2lmICFQTEFURk9STShJT1MpCisK
IHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRDdXJzb3IoY29uc3QgV2ViQ29yZTo6Q3Vyc29yJiBj
dXJzb3IpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldEN1
cnNvcihjdXJzb3IpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpT
ZXRDdXJzb3IoY3Vyc29yKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRDdXJzb3JI
aWRkZW5VbnRpbE1vdXNlTW92ZXMoYm9vbCBoaWRkZW5VbnRpbE1vdXNlTW92ZXMpCiB7Ci0gICAg
bV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldEN1cnNvckhpZGRlblVudGls
TW91c2VNb3ZlcyhoaWRkZW5VbnRpbE1vdXNlTW92ZXMpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpTZXRDdXJzb3JIaWRkZW5VbnRpbE1vdXNlTW92ZXMoaGlkZGVu
VW50aWxNb3VzZU1vdmVzKSk7CiB9CisKICNlbmRpZgogCiAjaWYgRU5BQkxFKFJFUVVFU1RfQU5J
TUFUSU9OX0ZSQU1FKSAmJiAhVVNFKFJFUVVFU1RfQU5JTUFUSU9OX0ZSQU1FX1RJTUVSKQorCiB2
b2lkIFdlYkNocm9tZUNsaWVudDo6c2NoZWR1bGVBbmltYXRpb24oKQogewogI2lmIFVTRShDT09S
RElOQVRFRF9HUkFQSElDUykKLSAgICBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPmxheWVyVHJlZUhv
c3QoKS0+c2NoZWR1bGVBbmltYXRpb24oKTsKKyAgICBtX3BhZ2UuZHJhd2luZ0FyZWEoKS0+bGF5
ZXJUcmVlSG9zdCgpLT5zY2hlZHVsZUFuaW1hdGlvbigpOwogI2VuZGlmCiB9CisKICNlbmRpZgog
CiB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xzKGNvbnN0IFZl
Y3RvcjxSZWZQdHI8V2ViQ29yZTo6RWxlbWVudD4+JiBlbGVtZW50cykKIHsKLSAgICByZXR1cm4g
bV9wYWdlLT5pbmplY3RlZEJ1bmRsZUZvcm1DbGllbnQoKS5kaWRBc3NvY2lhdGVGb3JtQ29udHJv
bHMobV9wYWdlLCBlbGVtZW50cyk7CisgICAgcmV0dXJuIG1fcGFnZS5pbmplY3RlZEJ1bmRsZUZv
cm1DbGllbnQoKS5kaWRBc3NvY2lhdGVGb3JtQ29udHJvbHMoJm1fcGFnZSwgZWxlbWVudHMpOwog
fQogCiBib29sIFdlYkNocm9tZUNsaWVudDo6c2hvdWxkTm90aWZ5T25Gb3JtQ2hhbmdlcygpCiB7
Ci0gICAgcmV0dXJuIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCkuc2hvdWxkTm90
aWZ5T25Gb3JtQ2hhbmdlcyhtX3BhZ2UpOworICAgIHJldHVybiBtX3BhZ2UuaW5qZWN0ZWRCdW5k
bGVGb3JtQ2xpZW50KCkuc2hvdWxkTm90aWZ5T25Gb3JtQ2hhbmdlcygmbV9wYWdlKTsKIH0KIAog
Ym9vbCBXZWJDaHJvbWVDbGllbnQ6OnNlbGVjdEl0ZW1Xcml0aW5nRGlyZWN0aW9uSXNOYXR1cmFs
KCkKQEAgLTgxOSwzOSArODMxLDQxIEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpoYXNPcGVuZWRQ
b3B1cCgpIGNvbnN0CiAKIFJlZlB0cjxXZWJDb3JlOjpQb3B1cE1lbnU+IFdlYkNocm9tZUNsaWVu
dDo6Y3JlYXRlUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCogY2xpZW50KSBjb25z
dAogewotICAgIHJldHVybiBXZWJQb3B1cE1lbnU6OmNyZWF0ZShtX3BhZ2UsIGNsaWVudCk7Cisg
ICAgcmV0dXJuIFdlYlBvcHVwTWVudTo6Y3JlYXRlKCZtX3BhZ2UsIGNsaWVudCk7CiB9CiAKIFJl
ZlB0cjxXZWJDb3JlOjpTZWFyY2hQb3B1cE1lbnU+IFdlYkNocm9tZUNsaWVudDo6Y3JlYXRlU2Vh
cmNoUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCogY2xpZW50KSBjb25zdAogewot
ICAgIHJldHVybiBXZWJTZWFyY2hQb3B1cE1lbnU6OmNyZWF0ZShtX3BhZ2UsIGNsaWVudCk7Cisg
ICAgcmV0dXJuIFdlYlNlYXJjaFBvcHVwTWVudTo6Y3JlYXRlKCZtX3BhZ2UsIGNsaWVudCk7CiB9
CiAKIEdyYXBoaWNzTGF5ZXJGYWN0b3J5KiBXZWJDaHJvbWVDbGllbnQ6OmdyYXBoaWNzTGF5ZXJG
YWN0b3J5KCkgY29uc3QKIHsKLSAgICBpZiAoYXV0byBkcmF3aW5nQXJlYSA9IG1fcGFnZS0+ZHJh
d2luZ0FyZWEoKSkKKyAgICBpZiAoYXV0byBkcmF3aW5nQXJlYSA9IG1fcGFnZS5kcmF3aW5nQXJl
YSgpKQogICAgICAgICByZXR1cm4gZHJhd2luZ0FyZWEtPmdyYXBoaWNzTGF5ZXJGYWN0b3J5KCk7
CiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKICNpZiBVU0UoUkVRVUVTVF9BTklNQVRJT05fRlJB
TUVfRElTUExBWV9NT05JVE9SKQorCiBSZWZQdHI8V2ViQ29yZTo6RGlzcGxheVJlZnJlc2hNb25p
dG9yPiBXZWJDaHJvbWVDbGllbnQ6OmNyZWF0ZURpc3BsYXlSZWZyZXNoTW9uaXRvcihQbGF0Zm9y
bURpc3BsYXlJRCBkaXNwbGF5SUQpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+ZHJhd2lu
Z0FyZWEoKS0+Y3JlYXRlRGlzcGxheVJlZnJlc2hNb25pdG9yKGRpc3BsYXlJRCk7CisgICAgcmV0
dXJuIG1fcGFnZS5kcmF3aW5nQXJlYSgpLT5jcmVhdGVEaXNwbGF5UmVmcmVzaE1vbml0b3IoZGlz
cGxheUlEKTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjphdHRhY2hSb290
R3JhcGhpY3NMYXllcihGcmFtZSosIEdyYXBoaWNzTGF5ZXIqIGxheWVyKQogewogICAgIGlmIChs
YXllcikKLSAgICAgICAgbV9wYWdlLT5lbnRlckFjY2VsZXJhdGVkQ29tcG9zaXRpbmdNb2RlKGxh
eWVyKTsKKyAgICAgICAgbV9wYWdlLmVudGVyQWNjZWxlcmF0ZWRDb21wb3NpdGluZ01vZGUobGF5
ZXIpOwogICAgIGVsc2UKLSAgICAgICAgbV9wYWdlLT5leGl0QWNjZWxlcmF0ZWRDb21wb3NpdGlu
Z01vZGUoKTsKKyAgICAgICAgbV9wYWdlLmV4aXRBY2NlbGVyYXRlZENvbXBvc2l0aW5nTW9kZSgp
OwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6YXR0YWNoVmlld092ZXJsYXlHcmFwaGljc0xh
eWVyKEZyYW1lKiBmcmFtZSwgR3JhcGhpY3NMYXllciogZ3JhcGhpY3NMYXllcikKIHsKLSAgICBp
ZiAoYXV0byBkcmF3aW5nQXJlYSA9IG1fcGFnZS0+ZHJhd2luZ0FyZWEoKSkKKyAgICBpZiAoYXV0
byBkcmF3aW5nQXJlYSA9IG1fcGFnZS5kcmF3aW5nQXJlYSgpKQogICAgICAgICBkcmF3aW5nQXJl
YS0+YXR0YWNoVmlld092ZXJsYXlHcmFwaGljc0xheWVyKGZyYW1lLCBncmFwaGljc0xheWVyKTsK
IH0KIApAQCAtODYyLDEyOCArODc2LDEzNiBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0TmVl
ZHNPbmVTaG90RHJhd2luZ1N5bmNocm9uaXphdGlvbigpCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50
OjpzY2hlZHVsZUNvbXBvc2l0aW5nTGF5ZXJGbHVzaCgpCiB7Ci0gICAgaWYgKG1fcGFnZS0+ZHJh
d2luZ0FyZWEoKSkKLSAgICAgICAgbV9wYWdlLT5kcmF3aW5nQXJlYSgpLT5zY2hlZHVsZUNvbXBv
c2l0aW5nTGF5ZXJGbHVzaCgpOworICAgIGlmIChtX3BhZ2UuZHJhd2luZ0FyZWEoKSkKKyAgICAg
ICAgbV9wYWdlLmRyYXdpbmdBcmVhKCktPnNjaGVkdWxlQ29tcG9zaXRpbmdMYXllckZsdXNoKCk7
CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjphZGp1c3RMYXllckZsdXNoVGhyb3R0bGluZyhX
ZWJDb3JlOjpMYXllckZsdXNoVGhyb3R0bGVTdGF0ZTo6RmxhZ3MgZmxhZ3MpCiB7Ci0gICAgcmV0
dXJuIG1fcGFnZS0+ZHJhd2luZ0FyZWEoKSAmJiBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPmFkanVz
dExheWVyRmx1c2hUaHJvdHRsaW5nKGZsYWdzKTsKKyAgICByZXR1cm4gbV9wYWdlLmRyYXdpbmdB
cmVhKCkgJiYgbV9wYWdlLmRyYXdpbmdBcmVhKCktPmFkanVzdExheWVyRmx1c2hUaHJvdHRsaW5n
KGZsYWdzKTsKIH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OmxheWVyVHJlZVN0YXRlSXNGcm96
ZW4oKSBjb25zdAogewotICAgIGlmIChtX3BhZ2UtPmRyYXdpbmdBcmVhKCkpCi0gICAgICAgIHJl
dHVybiBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPmxheWVyVHJlZVN0YXRlSXNGcm96ZW4oKTsKKyAg
ICBpZiAobV9wYWdlLmRyYXdpbmdBcmVhKCkpCisgICAgICAgIHJldHVybiBtX3BhZ2UuZHJhd2lu
Z0FyZWEoKS0+bGF5ZXJUcmVlU3RhdGVJc0Zyb3plbigpOwogCiAgICAgcmV0dXJuIGZhbHNlOwog
fQogCiAjaWYgRU5BQkxFKEFTWU5DX1NDUk9MTElORykKKwogUGFzc1JlZlB0cjxTY3JvbGxpbmdD
b29yZGluYXRvcj4gV2ViQ2hyb21lQ2xpZW50OjpjcmVhdGVTY3JvbGxpbmdDb29yZGluYXRvcihQ
YWdlKiBwYWdlKSBjb25zdAogewotICAgIEFTU0VSVChtX3BhZ2UtPmNvcmVQYWdlKCkgPT0gcGFn
ZSk7Ci0gICAgaWYgKG1fcGFnZS0+ZHJhd2luZ0FyZWEoKS0+dHlwZSgpID09IERyYXdpbmdBcmVh
VHlwZVJlbW90ZUxheWVyVHJlZSkKLSAgICAgICAgcmV0dXJuIFJlbW90ZVNjcm9sbGluZ0Nvb3Jk
aW5hdG9yOjpjcmVhdGUobV9wYWdlKTsKLQotICAgIHJldHVybiAwOworICAgIEFTU0VSVChtX3Bh
Z2UuY29yZVBhZ2UoKSA9PSBwYWdlKTsKKyAgICBpZiAobV9wYWdlLmRyYXdpbmdBcmVhKCktPnR5
cGUoKSAhPSBEcmF3aW5nQXJlYVR5cGVSZW1vdGVMYXllclRyZWUpCisgICAgICAgIHJldHVybiBu
dWxscHRyOworICAgIHJldHVybiBSZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvcjo6Y3JlYXRlKCZt
X3BhZ2UpOwogfQorCiAjZW5kaWYKIAogI2lmIChQTEFURk9STShJT1MpICYmIEhBVkUoQVZLSVQp
KSB8fCAoUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpKQor
CiBib29sIFdlYkNocm9tZUNsaWVudDo6c3VwcG9ydHNWaWRlb0Z1bGxzY3JlZW4oV2ViQ29yZTo6
SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIG1vZGUpCiB7Ci0gICAg
cmV0dXJuIG1fcGFnZS0+dmlkZW9GdWxsc2NyZWVuTWFuYWdlcigpLnN1cHBvcnRzVmlkZW9GdWxs
c2NyZWVuKG1vZGUpOworICAgIHJldHVybiBtX3BhZ2UudmlkZW9GdWxsc2NyZWVuTWFuYWdlcigp
LnN1cHBvcnRzVmlkZW9GdWxsc2NyZWVuKG1vZGUpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVu
dDo6c2V0VXBQbGF5YmFja0NvbnRyb2xzTWFuYWdlcihXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50
JiBtZWRpYUVsZW1lbnQpCiB7Ci0gICAgbV9wYWdlLT5wbGF5YmFja1Nlc3Npb25NYW5hZ2VyKCku
c2V0VXBQbGF5YmFja0NvbnRyb2xzTWFuYWdlcihtZWRpYUVsZW1lbnQpOworICAgIG1fcGFnZS5w
bGF5YmFja1Nlc3Npb25NYW5hZ2VyKCkuc2V0VXBQbGF5YmFja0NvbnRyb2xzTWFuYWdlcihtZWRp
YUVsZW1lbnQpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y2xlYXJQbGF5YmFja0NvbnRy
b2xzTWFuYWdlcigpCiB7Ci0gICAgbV9wYWdlLT5wbGF5YmFja1Nlc3Npb25NYW5hZ2VyKCkuY2xl
YXJQbGF5YmFja0NvbnRyb2xzTWFuYWdlcigpOworICAgIG1fcGFnZS5wbGF5YmFja1Nlc3Npb25N
YW5hZ2VyKCkuY2xlYXJQbGF5YmFja0NvbnRyb2xzTWFuYWdlcigpOwogfQogCiB2b2lkIFdlYkNo
cm9tZUNsaWVudDo6ZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6
SFRNTFZpZGVvRWxlbWVudCYgdmlkZW9FbGVtZW50LCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50
RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUgbW9kZSkKIHsKICAgICBBU1NFUlQobW9kZSAhPSBI
VE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGVOb25lKTsKLSAgICBtX3Bh
Z2UtPnZpZGVvRnVsbHNjcmVlbk1hbmFnZXIoKS5lbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVv
RWxlbWVudCh2aWRlb0VsZW1lbnQsIG1vZGUpOworICAgIG1fcGFnZS52aWRlb0Z1bGxzY3JlZW5N
YW5hZ2VyKCkuZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQodmlkZW9FbGVtZW50
LCBtb2RlKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmV4aXRWaWRlb0Z1bGxzY3JlZW5G
b3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCYgdmlkZW9FbGVtZW50KQog
ewotICAgIG1fcGFnZS0+dmlkZW9GdWxsc2NyZWVuTWFuYWdlcigpLmV4aXRWaWRlb0Z1bGxzY3Jl
ZW5Gb3JWaWRlb0VsZW1lbnQodmlkZW9FbGVtZW50KTsKKyAgICBtX3BhZ2UudmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlcigpLmV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQodmlkZW9FbGVt
ZW50KTsKIH0KIAorI2VuZGlmCisKICNpZiBQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19Q
UkVTRU5UQVRJT05fTU9ERSkKKwogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmV4aXRWaWRlb0Z1bGxz
Y3JlZW5Ub01vZGVXaXRob3V0QW5pbWF0aW9uKFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmIHZp
ZGVvRWxlbWVudCwgSFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIHRh
cmdldE1vZGUpCiB7Ci0gICAgbV9wYWdlLT52aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyKCkuZXhpdFZp
ZGVvRnVsbHNjcmVlblRvTW9kZVdpdGhvdXRBbmltYXRpb24odmlkZW9FbGVtZW50LCB0YXJnZXRN
b2RlKTsKKyAgICBtX3BhZ2UudmlkZW9GdWxsc2NyZWVuTWFuYWdlcigpLmV4aXRWaWRlb0Z1bGxz
Y3JlZW5Ub01vZGVXaXRob3V0QW5pbWF0aW9uKHZpZGVvRWxlbWVudCwgdGFyZ2V0TW9kZSk7CiB9
Ci0jZW5kaWYKIAogI2VuZGlmCi0gICAgCisKICNpZiBFTkFCTEUoRlVMTFNDUkVFTl9BUEkpCisK
IGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpzdXBwb3J0c0Z1bGxTY3JlZW5Gb3JFbGVtZW50KGNvbnN0
IFdlYkNvcmU6OkVsZW1lbnQqLCBib29sIHdpdGhLZXlib2FyZCkKIHsKLSAgICByZXR1cm4gbV9w
YWdlLT5mdWxsU2NyZWVuTWFuYWdlcigpLT5zdXBwb3J0c0Z1bGxTY3JlZW4od2l0aEtleWJvYXJk
KTsKKyAgICByZXR1cm4gbV9wYWdlLmZ1bGxTY3JlZW5NYW5hZ2VyKCktPnN1cHBvcnRzRnVsbFNj
cmVlbih3aXRoS2V5Ym9hcmQpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZW50ZXJGdWxs
U2NyZWVuRm9yRWxlbWVudChXZWJDb3JlOjpFbGVtZW50KiBlbGVtZW50KQogewotICAgIG1fcGFn
ZS0+ZnVsbFNjcmVlbk1hbmFnZXIoKS0+ZW50ZXJGdWxsU2NyZWVuRm9yRWxlbWVudChlbGVtZW50
KTsKKyAgICBtX3BhZ2UuZnVsbFNjcmVlbk1hbmFnZXIoKS0+ZW50ZXJGdWxsU2NyZWVuRm9yRWxl
bWVudChlbGVtZW50KTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmV4aXRGdWxsU2NyZWVu
Rm9yRWxlbWVudChXZWJDb3JlOjpFbGVtZW50KiBlbGVtZW50KQogewotICAgIG1fcGFnZS0+ZnVs
bFNjcmVlbk1hbmFnZXIoKS0+ZXhpdEZ1bGxTY3JlZW5Gb3JFbGVtZW50KGVsZW1lbnQpOworICAg
IG1fcGFnZS5mdWxsU2NyZWVuTWFuYWdlcigpLT5leGl0RnVsbFNjcmVlbkZvckVsZW1lbnQoZWxl
bWVudCk7CiB9CisKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oSU9TKQorCiBGbG9hdFNpemUgV2Vi
Q2hyb21lQ2xpZW50OjpzY3JlZW5TaXplKCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5z
Y3JlZW5TaXplKCk7CisgICAgcmV0dXJuIG1fcGFnZS5zY3JlZW5TaXplKCk7CiB9CiAKIEZsb2F0
U2l6ZSBXZWJDaHJvbWVDbGllbnQ6OmF2YWlsYWJsZVNjcmVlblNpemUoKSBjb25zdAogewotICAg
IHJldHVybiBtX3BhZ2UtPmF2YWlsYWJsZVNjcmVlblNpemUoKTsKKyAgICByZXR1cm4gbV9wYWdl
LmF2YWlsYWJsZVNjcmVlblNpemUoKTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViQ2hyb21lQ2xp
ZW50OjpkaXNwYXRjaFZpZXdwb3J0UHJvcGVydGllc0RpZENoYW5nZShjb25zdCBWaWV3cG9ydEFy
Z3VtZW50cyYgdmlld3BvcnRBcmd1bWVudHMpIGNvbnN0CiB7Ci0gICAgbV9wYWdlLT52aWV3cG9y
dFByb3BlcnRpZXNEaWRDaGFuZ2Uodmlld3BvcnRBcmd1bWVudHMpOworICAgIG1fcGFnZS52aWV3
cG9ydFByb3BlcnRpZXNEaWRDaGFuZ2Uodmlld3BvcnRBcmd1bWVudHMpOwogfQogCiB2b2lkIFdl
YkNocm9tZUNsaWVudDo6bm90aWZ5U2Nyb2xsZXJUaHVtYklzVmlzaWJsZUluUmVjdChjb25zdCBJ
bnRSZWN0JiBzY3JvbGxlclRodW1iKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2Vi
UGFnZVByb3h5OjpOb3RpZnlTY3JvbGxlclRodW1iSXNWaXNpYmxlSW5SZWN0KHNjcm9sbGVyVGh1
bWIpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpOb3RpZnlTY3Jv
bGxlclRodW1iSXNWaXNpYmxlSW5SZWN0KHNjcm9sbGVyVGh1bWIpKTsKIH0KIAogdm9pZCBXZWJD
aHJvbWVDbGllbnQ6OnJlY29tbWVuZGVkU2Nyb2xsYmFyU3R5bGVEaWRDaGFuZ2UoU2Nyb2xsYmFy
U3R5bGUgbmV3U3R5bGUpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OlJlY29tbWVuZGVkU2Nyb2xsYmFyU3R5bGVEaWRDaGFuZ2Uoc3RhdGljX2Nhc3Q8aW50MzJf
dD4obmV3U3R5bGUpKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6
UmVjb21tZW5kZWRTY3JvbGxiYXJTdHlsZURpZENoYW5nZShzdGF0aWNfY2FzdDxpbnQzMl90Pihu
ZXdTdHlsZSkpKTsKIH0KIAogc3RkOjpvcHRpb25hbDxTY3JvbGxiYXJPdmVybGF5U3R5bGU+IFdl
YkNocm9tZUNsaWVudDo6cHJlZmVycmVkU2Nyb2xsYmFyT3ZlcmxheVN0eWxlKCkKIHsKLSAgICBy
ZXR1cm4gbV9wYWdlLT5zY3JvbGxiYXJPdmVybGF5U3R5bGUoKTsgCisgICAgcmV0dXJuIG1fcGFn
ZS5zY3JvbGxiYXJPdmVybGF5U3R5bGUoKTsKIH0KIAogQ29sb3IgV2ViQ2hyb21lQ2xpZW50Ojp1
bmRlcmxheUNvbG9yKCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT51bmRlcmxheUNvbG9y
KCk7CisgICAgcmV0dXJuIG1fcGFnZS51bmRlcmxheUNvbG9yKCk7CiB9CiAKIHZvaWQgV2ViQ2hy
b21lQ2xpZW50OjpwYWdlRXh0ZW5kZWRCYWNrZ3JvdW5kQ29sb3JEaWRDaGFuZ2UoQ29sb3IgYmFj
a2dyb3VuZENvbG9yKSBjb25zdAogewogI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oRUZM
KQotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQYWdlRXh0ZW5kZWRC
YWNrZ3JvdW5kQ29sb3JEaWRDaGFuZ2UoYmFja2dyb3VuZENvbG9yKSk7CisgICAgbV9wYWdlLnNl
bmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UGFnZUV4dGVuZGVkQmFja2dyb3VuZENvbG9yRGlk
Q2hhbmdlKGJhY2tncm91bmRDb2xvcikpOwogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0oYmFja2dy
b3VuZENvbG9yKTsKICNlbmRpZgpAQCAtOTkxLDQzICsxMDEzLDQzIEBAIHZvaWQgV2ViQ2hyb21l
Q2xpZW50OjpwYWdlRXh0ZW5kZWRCYWNrZ3JvdW5kQ29sb3JEaWRDaGFuZ2UoQ29sb3IgYmFja2dy
b3VuZENvbG9yCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojp3aGVlbEV2ZW50SGFuZGxlcnNDaGFu
Z2VkKGJvb2wgaGFzSGFuZGxlcnMpCiB7Ci0gICAgbV9wYWdlLT53aGVlbEV2ZW50SGFuZGxlcnND
aGFuZ2VkKGhhc0hhbmRsZXJzKTsKKyAgICBtX3BhZ2Uud2hlZWxFdmVudEhhbmRsZXJzQ2hhbmdl
ZChoYXNIYW5kbGVycyk7CiB9CiAKIFN0cmluZyBXZWJDaHJvbWVDbGllbnQ6OnBsdWdJblN0YXJ0
TGFiZWxUaXRsZShjb25zdCBTdHJpbmcmIG1pbWVUeXBlKSBjb25zdAogewotICAgIHJldHVybiBt
X3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5wbHVnSW5TdGFydExhYmVsVGl0bGUobWlt
ZVR5cGUpOworICAgIHJldHVybiBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLnBsdWdJ
blN0YXJ0TGFiZWxUaXRsZShtaW1lVHlwZSk7CiB9CiAKIFN0cmluZyBXZWJDaHJvbWVDbGllbnQ6
OnBsdWdJblN0YXJ0TGFiZWxTdWJ0aXRsZShjb25zdCBTdHJpbmcmIG1pbWVUeXBlKSBjb25zdAog
ewotICAgIHJldHVybiBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5wbHVnSW5TdGFy
dExhYmVsU3VidGl0bGUobWltZVR5cGUpOworICAgIHJldHVybiBtX3BhZ2UuaW5qZWN0ZWRCdW5k
bGVVSUNsaWVudCgpLnBsdWdJblN0YXJ0TGFiZWxTdWJ0aXRsZShtaW1lVHlwZSk7CiB9CiAKIFN0
cmluZyBXZWJDaHJvbWVDbGllbnQ6OnBsdWdJbkV4dHJhU3R5bGVTaGVldCgpIGNvbnN0CiB7Ci0g
ICAgcmV0dXJuIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLnBsdWdJbkV4dHJhU3R5
bGVTaGVldCgpOworICAgIHJldHVybiBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLnBs
dWdJbkV4dHJhU3R5bGVTaGVldCgpOwogfQogCiBTdHJpbmcgV2ViQ2hyb21lQ2xpZW50OjpwbHVn
SW5FeHRyYVNjcmlwdCgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+aW5qZWN0ZWRCdW5k
bGVVSUNsaWVudCgpLnBsdWdJbkV4dHJhU2NyaXB0KCk7CisgICAgcmV0dXJuIG1fcGFnZS5pbmpl
Y3RlZEJ1bmRsZVVJQ2xpZW50KCkucGx1Z0luRXh0cmFTY3JpcHQoKTsKIH0KIAogdm9pZCBXZWJD
aHJvbWVDbGllbnQ6OmVuYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkKIHsKLSAgICBtX3BhZ2UtPnNl
bmQoTWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6RW5hYmxlU3VkZGVuVGVybWluYXRpb24oKSk7
CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6RW5hYmxlU3VkZGVu
VGVybWluYXRpb24oKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpkaXNhYmxlU3VkZGVu
VGVybWluYXRpb24oKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUHJvY2Vzc1By
b3h5OjpEaXNhYmxlU3VkZGVuVGVybWluYXRpb24oKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2Fn
ZXM6OldlYlByb2Nlc3NQcm94eTo6RGlzYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkpOwogfQogCiB2
b2lkIFdlYkNocm9tZUNsaWVudDo6ZGlkQWRkSGVhZGVyTGF5ZXIoR3JhcGhpY3NMYXllciogaGVh
ZGVyUGFyZW50KQogewogI2lmIEVOQUJMRShSVUJCRVJfQkFORElORykKLSAgICBpZiAoUGFnZUJh
bm5lciogYmFubmVyID0gbV9wYWdlLT5oZWFkZXJQYWdlQmFubmVyKCkpCisgICAgaWYgKFBhZ2VC
YW5uZXIqIGJhbm5lciA9IG1fcGFnZS5oZWFkZXJQYWdlQmFubmVyKCkpCiAgICAgICAgIGJhbm5l
ci0+ZGlkQWRkUGFyZW50TGF5ZXIoaGVhZGVyUGFyZW50KTsKICNlbHNlCiAgICAgVU5VU0VEX1BB
UkFNKGhlYWRlclBhcmVudCk7CkBAIC0xMDM3LDcgKzEwNTksNyBAQCB2b2lkIFdlYkNocm9tZUNs
aWVudDo6ZGlkQWRkSGVhZGVyTGF5ZXIoR3JhcGhpY3NMYXllciogaGVhZGVyUGFyZW50KQogdm9p
ZCBXZWJDaHJvbWVDbGllbnQ6OmRpZEFkZEZvb3RlckxheWVyKEdyYXBoaWNzTGF5ZXIqIGZvb3Rl
clBhcmVudCkKIHsKICNpZiBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpCi0gICAgaWYgKFBhZ2VCYW5u
ZXIqIGJhbm5lciA9IG1fcGFnZS0+Zm9vdGVyUGFnZUJhbm5lcigpKQorICAgIGlmIChQYWdlQmFu
bmVyKiBiYW5uZXIgPSBtX3BhZ2UuZm9vdGVyUGFnZUJhbm5lcigpKQogICAgICAgICBiYW5uZXIt
PmRpZEFkZFBhcmVudExheWVyKGZvb3RlclBhcmVudCk7CiAjZWxzZQogICAgIFVOVVNFRF9QQVJB
TShmb290ZXJQYXJlbnQpOwpAQCAtMTA0NiwzNiArMTA2OCwzOSBAQCB2b2lkIFdlYkNocm9tZUNs
aWVudDo6ZGlkQWRkRm9vdGVyTGF5ZXIoR3JhcGhpY3NMYXllciogZm9vdGVyUGFyZW50KQogCiBi
b29sIFdlYkNocm9tZUNsaWVudDo6c2hvdWxkVXNlVGlsZWRCYWNraW5nRm9yRnJhbWVWaWV3KGNv
bnN0IEZyYW1lVmlldyogZnJhbWVWaWV3KSBjb25zdAogewotICAgIHJldHVybiBtX3BhZ2UtPmRy
YXdpbmdBcmVhKCktPnNob3VsZFVzZVRpbGVkQmFja2luZ0ZvckZyYW1lVmlldyhmcmFtZVZpZXcp
OworICAgIHJldHVybiBtX3BhZ2UuZHJhd2luZ0FyZWEoKS0+c2hvdWxkVXNlVGlsZWRCYWNraW5n
Rm9yRnJhbWVWaWV3KGZyYW1lVmlldyk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojppc1Bs
YXlpbmdNZWRpYURpZENoYW5nZShXZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpNZWRpYVN0YXRlRmxh
Z3Mgc3RhdGUsIHVpbnQ2NF90IHNvdXJjZUVsZW1lbnRJRCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQo
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6SXNQbGF5aW5nTWVkaWFEaWRDaGFuZ2Uoc3RhdGUsIHNv
dXJjZUVsZW1lbnRJRCkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OklzUGxheWluZ01lZGlhRGlkQ2hhbmdlKHN0YXRlLCBzb3VyY2VFbGVtZW50SUQpKTsKIH0KIAog
I2lmIEVOQUJMRShNRURJQV9TRVNTSU9OKQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6aGFzTWVk
aWFTZXNzaW9uV2l0aEFjdGl2ZU1lZGlhRWxlbWVudHNEaWRDaGFuZ2UoYm9vbCBzdGF0ZSkKIHsK
LSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6SGFzTWVkaWFTZXNzaW9u
V2l0aEFjdGl2ZU1lZGlhRWxlbWVudHNEaWRDaGFuZ2Uoc3RhdGUpKTsKKyAgICBtX3BhZ2Uuc2Vu
ZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpIYXNNZWRpYVNlc3Npb25XaXRoQWN0aXZlTWVkaWFF
bGVtZW50c0RpZENoYW5nZShzdGF0ZSkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6bWVk
aWFTZXNzaW9uTWV0YWRhdGFEaWRDaGFuZ2UoY29uc3QgV2ViQ29yZTo6TWVkaWFTZXNzaW9uTWV0
YWRhdGEmIG1ldGFkYXRhKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpNZWRpYVNlc3Npb25NZXRhZGF0YURpZENoYW5nZShtZXRhZGF0YSkpOworICAgIG1fcGFn
ZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6Ok1lZGlhU2Vzc2lvbk1ldGFkYXRhRGlkQ2hh
bmdlKG1ldGFkYXRhKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpmb2N1c2VkQ29udGVu
dE1lZGlhRWxlbWVudERpZENoYW5nZSh1aW50NjRfdCBlbGVtZW50SUQpCiB7Ci0gICAgbV9wYWdl
LT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZvY3VzZWRDb250ZW50TWVkaWFFbGVtZW50
RGlkQ2hhbmdlKGVsZW1lbnRJRCkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OkZvY3VzZWRDb250ZW50TWVkaWFFbGVtZW50RGlkQ2hhbmdlKGVsZW1lbnRJRCkpOwog
fQorCiAjZW5kaWYKIAogI2lmIEVOQUJMRShTVUJUTEVfQ1JZUFRPKQorCiBib29sIFdlYkNocm9t
ZUNsaWVudDo6d3JhcENyeXB0b0tleShjb25zdCBWZWN0b3I8dWludDhfdD4mIGtleSwgVmVjdG9y
PHVpbnQ4X3Q+JiB3cmFwcGVkS2V5KSBjb25zdAogewogICAgIGJvb2wgc3VjY2VlZGVkOwotICAg
IGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+
c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6V3JhcENyeXB0b0tleShrZXkpLCBNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpXcmFwQ3J5cHRvS2V5OjpSZXBseShzdWNjZWVkZWQsIHdyYXBw
ZWRLZXkpLCBtX3BhZ2UtPnBhZ2VJRCgpKSkKKyAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRv
bigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OldyYXBDcnlwdG9LZXkoa2V5KSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6V3JhcENy
eXB0b0tleTo6UmVwbHkoc3VjY2VlZGVkLCB3cmFwcGVkS2V5KSwgbV9wYWdlLnBhZ2VJRCgpKSkK
ICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIHJldHVybiBzdWNjZWVkZWQ7CiB9CkBAIC0xMDgz
LDM0ICsxMTA4LDM5IEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50Ojp3cmFwQ3J5cHRvS2V5KGNvbnN0
IFZlY3Rvcjx1aW50OF90PiYga2V5LCBWZWN0b3I8dWludDhfdD4mCiBib29sIFdlYkNocm9tZUNs
aWVudDo6dW53cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90PiYgd3JhcHBlZEtleSwg
VmVjdG9yPHVpbnQ4X3Q+JiBrZXkpIGNvbnN0CiB7CiAgICAgYm9vbCBzdWNjZWVkZWQ7Ci0gICAg
aWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5z
ZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpVbndyYXBDcnlwdG9LZXkod3JhcHBlZEtl
eSksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlVud3JhcENyeXB0b0tleTo6UmVwbHkoc3VjY2Vl
ZGVkLCBrZXkpLCBtX3BhZ2UtPnBhZ2VJRCgpKSkKKyAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmds
ZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OlVud3JhcENyeXB0b0tleSh3cmFwcGVkS2V5KSwgTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6VW53cmFwQ3J5cHRvS2V5OjpSZXBseShzdWNjZWVkZWQsIGtleSksIG1fcGFnZS5wYWdl
SUQoKSkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICByZXR1cm4gc3VjY2VlZGVkOwogfQor
CiAjZW5kaWYKIAogI2lmIEVOQUJMRShURUxFUEhPTkVfTlVNQkVSX0RFVEVDVElPTikgJiYgUExB
VEZPUk0oTUFDKQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6aGFuZGxlVGVsZXBob25lTnVtYmVy
Q2xpY2soY29uc3QgU3RyaW5nJiBudW1iZXIsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBwb2lu
dCkKIHsKLSAgICBtX3BhZ2UtPmhhbmRsZVRlbGVwaG9uZU51bWJlckNsaWNrKG51bWJlciwgcG9p
bnQpOworICAgIG1fcGFnZS5oYW5kbGVUZWxlcGhvbmVOdW1iZXJDbGljayhudW1iZXIsIHBvaW50
KTsKIH0KKwogI2VuZGlmCiAKICNpZiBFTkFCTEUoU0VSVklDRV9DT05UUk9MUykKKwogdm9pZCBX
ZWJDaHJvbWVDbGllbnQ6OmhhbmRsZVNlbGVjdGlvblNlcnZpY2VDbGljayhXZWJDb3JlOjpGcmFt
ZVNlbGVjdGlvbiYgc2VsZWN0aW9uLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgdGVsZXBob25lTnVt
YmVycywgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIHBvaW50KQogewotICAgIG1fcGFnZS0+aGFu
ZGxlU2VsZWN0aW9uU2VydmljZUNsaWNrKHNlbGVjdGlvbiwgdGVsZXBob25lTnVtYmVycywgcG9p
bnQpOworICAgIG1fcGFnZS5oYW5kbGVTZWxlY3Rpb25TZXJ2aWNlQ2xpY2soc2VsZWN0aW9uLCB0
ZWxlcGhvbmVOdW1iZXJzLCBwb2ludCk7CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpoYXNS
ZWxldmFudFNlbGVjdGlvblNlcnZpY2VzKGJvb2wgaXNUZXh0T25seSkgY29uc3QKIHsKICAgICBy
ZXR1cm4gKGlzVGV4dE9ubHkgJiYgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuaGFzU2VsZWN0aW9u
U2VydmljZXMoKSkgfHwgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuaGFzUmljaENvbnRlbnRTZXJ2
aWNlcygpOwogfQorCiAjZW5kaWYKIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnNob3VsZERpc3Bh
dGNoRmFrZU1vdXNlTW92ZUV2ZW50cygpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+c2hv
dWxkRGlzcGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKCk7CisgICAgcmV0dXJuIG1fcGFnZS5zaG91
bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHMoKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGll
bnQ6OmhhbmRsZUF1dG9GaWxsQnV0dG9uQ2xpY2soSFRNTElucHV0RWxlbWVudCYgaW5wdXRFbGVt
ZW50KQpAQCAtMTExOSw2NCArMTE0OSw2NSBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6aGFuZGxl
QXV0b0ZpbGxCdXR0b25DbGljayhIVE1MSW5wdXRFbGVtZW50JiBpbnB1dEVsZW1lbnQpCiAKICAg
ICAvLyBOb3RpZnkgdGhlIGJ1bmRsZSBjbGllbnQuCiAgICAgYXV0byBub2RlSGFuZGxlID0gSW5q
ZWN0ZWRCdW5kbGVOb2RlSGFuZGxlOjpnZXRPckNyZWF0ZShpbnB1dEVsZW1lbnQpOwotICAgIG1f
cGFnZS0+aW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLmRpZENsaWNrQXV0b0ZpbGxCdXR0b24oKm1f
cGFnZSwgbm9kZUhhbmRsZS5nZXQoKSwgdXNlckRhdGEpOworICAgIG1fcGFnZS5pbmplY3RlZEJ1
bmRsZVVJQ2xpZW50KCkuZGlkQ2xpY2tBdXRvRmlsbEJ1dHRvbihtX3BhZ2UsIG5vZGVIYW5kbGUu
Z2V0KCksIHVzZXJEYXRhKTsKIAogICAgIC8vIE5vdGlmeSB0aGUgVUlQcm9jZXNzLgotICAgIG1f
cGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpIYW5kbGVBdXRvRmlsbEJ1dHRvbkNs
aWNrKFVzZXJEYXRhKFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnRyYW5zZm9ybU9iamVjdHNUb0hh
bmRsZXModXNlckRhdGEuZ2V0KCkpLmdldCgpKSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6OkhhbmRsZUF1dG9GaWxsQnV0dG9uQ2xpY2soVXNlckRhdGEoV2ViUHJv
Y2Vzczo6c2luZ2xldG9uKCkudHJhbnNmb3JtT2JqZWN0c1RvSGFuZGxlcyh1c2VyRGF0YS5nZXQo
KSkuZ2V0KCkpKSk7CiB9CiAKICNpZiBFTkFCTEUoV0lSRUxFU1NfUExBWUJBQ0tfVEFSR0VUKSAm
JiAhUExBVEZPUk0oSU9TKQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6YWRkUGxheWJhY2tUYXJn
ZXRQaWNrZXJDbGllbnQodWludDY0X3QgY29udGV4dElkKQogewotICAgIG1fcGFnZS0+c2VuZChN
ZXNzYWdlczo6V2ViUGFnZVByb3h5OjpBZGRQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudChjb250
ZXh0SWQpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpBZGRQbGF5
YmFja1RhcmdldFBpY2tlckNsaWVudChjb250ZXh0SWQpKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVD
bGllbnQ6OnJlbW92ZVBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2NF90IGNvbnRleHRJ
ZCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UmVtb3ZlUGxh
eWJhY2tUYXJnZXRQaWNrZXJDbGllbnQoY29udGV4dElkKSk7CisgICAgbV9wYWdlLnNlbmQoTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6UmVtb3ZlUGxheWJhY2tUYXJnZXRQaWNrZXJDbGllbnQoY29u
dGV4dElkKSk7CiB9CiAKLQogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNob3dQbGF5YmFja1Rhcmdl
dFBpY2tlcih1aW50NjRfdCBjb250ZXh0SWQsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBwb3Np
dGlvbiwgYm9vbCBpc1ZpZGVvKQogewotICAgIEZyYW1lVmlldyogZnJhbWVWaWV3ID0gbV9wYWdl
LT5tYWluRnJhbWUoKS0+dmlldygpOworICAgIEZyYW1lVmlldyogZnJhbWVWaWV3ID0gbV9wYWdl
Lm1haW5GcmFtZSgpLT52aWV3KCk7CiAgICAgRmxvYXRSZWN0IHJlY3QoZnJhbWVWaWV3LT5jb250
ZW50c1RvUm9vdFZpZXcoZnJhbWVWaWV3LT53aW5kb3dUb0NvbnRlbnRzKHBvc2l0aW9uKSksIEZs
b2F0U2l6ZSgpKTsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2hv
d1BsYXliYWNrVGFyZ2V0UGlja2VyKGNvbnRleHRJZCwgcmVjdCwgaXNWaWRlbykpOworICAgIG1f
cGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNob3dQbGF5YmFja1RhcmdldFBpY2tl
cihjb250ZXh0SWQsIHJlY3QsIGlzVmlkZW8pKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6
OnBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50U3RhdGVEaWRDaGFuZ2UodWludDY0X3QgY29udGV4
dElkLCBXZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpNZWRpYVN0YXRlRmxhZ3Mgc3RhdGUpCiB7Ci0g
ICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlBsYXliYWNrVGFyZ2V0UGlj
a2VyQ2xpZW50U3RhdGVEaWRDaGFuZ2UoY29udGV4dElkLCBzdGF0ZSkpOworICAgIG1fcGFnZS5z
ZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50U3Rh
dGVEaWRDaGFuZ2UoY29udGV4dElkLCBzdGF0ZSkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVu
dDo6c2V0TW9ja01lZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJFbmFibGVkKGJvb2wgZW5hYmxlZCkK
IHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0TW9ja01lZGlh
UGxheWJhY2tUYXJnZXRQaWNrZXJFbmFibGVkKGVuYWJsZWQpKTsKKyAgICBtX3BhZ2Uuc2VuZChN
ZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVu
YWJsZWQoZW5hYmxlZCkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0TW9ja01lZGlh
UGxheWJhY2tUYXJnZXRQaWNrZXJTdGF0ZShjb25zdCBTdHJpbmcmIG5hbWUsIFdlYkNvcmU6Ok1l
ZGlhUGxheWJhY2tUYXJnZXRDb250ZXh0OjpTdGF0ZSBzdGF0ZSkKIHsKLSAgICBtX3BhZ2UtPnNl
bmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0TW9ja01lZGlhUGxheWJhY2tUYXJnZXRQaWNr
ZXJTdGF0ZShuYW1lLCBzdGF0ZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OlNldE1vY2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyU3RhdGUobmFtZSwgc3RhdGUp
KTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjppbWFnZU9yTWVkaWFEb2N1
bWVudFNpemVDaGFuZ2VkKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIG5ld1NpemUpCiB7Ci0gICAg
bV9wYWdlLT5pbWFnZU9yTWVkaWFEb2N1bWVudFNpemVDaGFuZ2VkKG5ld1NpemUpOworICAgIG1f
cGFnZS5pbWFnZU9yTWVkaWFEb2N1bWVudFNpemVDaGFuZ2VkKG5ld1NpemUpOwogfQogCi0jaWYg
RU5BQkxFKFZJREVPKQotI2lmIFVTRShHU1RSRUFNRVIpCisjaWYgRU5BQkxFKFZJREVPKSAmJiBV
U0UoR1NUUkVBTUVSKQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6cmVxdWVzdEluc3RhbGxNaXNz
aW5nTWVkaWFQbHVnaW5zKGNvbnN0IFN0cmluZyYgZGV0YWlscywgY29uc3QgU3RyaW5nJiBkZXNj
cmlwdGlvbiwgV2ViQ29yZTo6TWVkaWFQbGF5ZXJSZXF1ZXN0SW5zdGFsbE1pc3NpbmdQbHVnaW5z
Q2FsbGJhY2smIGNhbGxiYWNrKQogewotICAgIG1fcGFnZS0+cmVxdWVzdEluc3RhbGxNaXNzaW5n
TWVkaWFQbHVnaW5zKGRldGFpbHMsIGRlc2NyaXB0aW9uLCBjYWxsYmFjayk7CisgICAgbV9wYWdl
LnJlcXVlc3RJbnN0YWxsTWlzc2luZ01lZGlhUGx1Z2lucyhkZXRhaWxzLCBkZXNjcmlwdGlvbiwg
Y2FsbGJhY2spOwogfQorCiAjZW5kaWYKLSNlbmRpZiAvLyBFTkFCTEUoVklERU8pCiAKIHZvaWQg
V2ViQ2hyb21lQ2xpZW50OjpkaWRJbnZhbGlkYXRlRG9jdW1lbnRNYXJrZXJSZWN0cygpCiB7Ci0g
ICAgbV9wYWdlLT5maW5kQ29udHJvbGxlcigpLmRpZEludmFsaWRhdGVEb2N1bWVudE1hcmtlclJl
Y3RzKCk7CisgICAgbV9wYWdlLmZpbmRDb250cm9sbGVyKCkuZGlkSW52YWxpZGF0ZURvY3VtZW50
TWFya2VyUmVjdHMoKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5o
IGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGll
bnQuaAppbmRleCBhZjkwYjM4ZGQ5NWYzMmFmNDhhNDU4N2JhMjdmMmZiYzVkN2Q2YjFkLi5kNGE5
OTFiMjc0ODYwZmZjMzJkZjM0ZTBmMWJjNDczN2FhYjkwZTAwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50
LmgKQEAgLTI2LDE5OCArMjYsMTk2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaW5jbHVkZSAiV2Vi
RnJhbWUuaCIKICNpbmNsdWRlIDxXZWJDb3JlL0Nocm9tZUNsaWVudC5oPgotI2luY2x1ZGUgPFdl
YkNvcmUvVmlld3BvcnRBcmd1bWVudHMuaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcu
aD4KIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKK2NsYXNzIFdlYkZyYW1lOwogY2xhc3MgV2ViUGFn
ZTsKIAotY2xhc3MgV2ViQ2hyb21lQ2xpZW50IDogcHVibGljIFdlYkNvcmU6OkNocm9tZUNsaWVu
dCB7CitjbGFzcyBXZWJDaHJvbWVDbGllbnQgZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6Q2hyb21l
Q2xpZW50IHsKIHB1YmxpYzoKLSAgICBXZWJDaHJvbWVDbGllbnQoV2ViUGFnZSogcGFnZSkKLSAg
ICAgICAgOiBtX2NhY2hlZE1haW5GcmFtZUhhc0hvcml6b250YWxTY3JvbGxiYXIoZmFsc2UpCi0g
ICAgICAgICwgbV9jYWNoZWRNYWluRnJhbWVIYXNWZXJ0aWNhbFNjcm9sbGJhcihmYWxzZSkKLSAg
ICAgICAgLCBtX3BhZ2UocGFnZSkKLSAgICB7Ci0gICAgfQotICAgIAotICAgIFdlYlBhZ2UqIHBh
Z2UoKSBjb25zdCB7IHJldHVybiBtX3BhZ2U7IH0KKyAgICBXZWJDaHJvbWVDbGllbnQoV2ViUGFn
ZSYpOwogCi0gICAgdmlydHVhbCB2b2lkKiB3ZWJWaWV3KCkgY29uc3QgeyByZXR1cm4gMDsgfQor
ICAgIFdlYlBhZ2UmIHBhZ2UoKSBjb25zdCB7IHJldHVybiBtX3BhZ2U7IH0KIAogcHJpdmF0ZToK
LSAgICB2b2lkIGNocm9tZURlc3Ryb3llZCgpIG92ZXJyaWRlOworICAgIH5XZWJDaHJvbWVDbGll
bnQoKTsKKworICAgIHZvaWQgY2hyb21lRGVzdHJveWVkKCkgZmluYWw7CiAgICAgCi0gICAgdm9p
ZCBzZXRXaW5kb3dSZWN0KGNvbnN0IFdlYkNvcmU6OkZsb2F0UmVjdCYpIG92ZXJyaWRlOwotICAg
IFdlYkNvcmU6OkZsb2F0UmVjdCB3aW5kb3dSZWN0KCkgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRX
aW5kb3dSZWN0KGNvbnN0IFdlYkNvcmU6OkZsb2F0UmVjdCYpIGZpbmFsOworICAgIFdlYkNvcmU6
OkZsb2F0UmVjdCB3aW5kb3dSZWN0KCkgZmluYWw7CiAgICAgCi0gICAgV2ViQ29yZTo6RmxvYXRS
ZWN0IHBhZ2VSZWN0KCkgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6RmxvYXRSZWN0IHBhZ2VSZWN0
KCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBmb2N1cygpIG92ZXJyaWRlOwotICAgIHZvaWQgdW5m
b2N1cygpIG92ZXJyaWRlOworICAgIHZvaWQgZm9jdXMoKSBmaW5hbDsKKyAgICB2b2lkIHVuZm9j
dXMoKSBmaW5hbDsKICAgICAKLSAgICBib29sIGNhblRha2VGb2N1cyhXZWJDb3JlOjpGb2N1c0Rp
cmVjdGlvbikgb3ZlcnJpZGU7Ci0gICAgdm9pZCB0YWtlRm9jdXMoV2ViQ29yZTo6Rm9jdXNEaXJl
Y3Rpb24pIG92ZXJyaWRlOworICAgIGJvb2wgY2FuVGFrZUZvY3VzKFdlYkNvcmU6OkZvY3VzRGly
ZWN0aW9uKSBmaW5hbDsKKyAgICB2b2lkIHRha2VGb2N1cyhXZWJDb3JlOjpGb2N1c0RpcmVjdGlv
bikgZmluYWw7CiAKLSAgICB2b2lkIGZvY3VzZWRFbGVtZW50Q2hhbmdlZChXZWJDb3JlOjpFbGVt
ZW50Kikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBmb2N1c2VkRnJhbWVDaGFuZ2VkKFdlYkNvcmU6OkZy
YW1lKikgb3ZlcnJpZGU7CisgICAgdm9pZCBmb2N1c2VkRWxlbWVudENoYW5nZWQoV2ViQ29yZTo6
RWxlbWVudCopIGZpbmFsOworICAgIHZvaWQgZm9jdXNlZEZyYW1lQ2hhbmdlZChXZWJDb3JlOjpG
cmFtZSopIGZpbmFsOwogCiAgICAgLy8gVGhlIEZyYW1lIHBvaW50ZXIgcHJvdmlkZXMgdGhlIENo
cm9tZUNsaWVudCB3aXRoIGNvbnRleHQgYWJvdXQgd2hpY2gKICAgICAvLyBGcmFtZSB3YW50cyB0
byBjcmVhdGUgdGhlIG5ldyBQYWdlLiAgQWxzbywgdGhlIG5ld2x5IGNyZWF0ZWQgd2luZG93CiAg
ICAgLy8gc2hvdWxkIG5vdCBiZSBzaG93biB0byB0aGUgdXNlciB1bnRpbCB0aGUgQ2hyb21lQ2xp
ZW50IG9mIHRoZSBuZXdseQogICAgIC8vIGNyZWF0ZWQgUGFnZSBoYXMgaXRzIHNob3cgbWV0aG9k
IGNhbGxlZC4KLSAgICBXZWJDb3JlOjpQYWdlKiBjcmVhdGVXaW5kb3coV2ViQ29yZTo6RnJhbWUq
LCBjb25zdCBXZWJDb3JlOjpGcmFtZUxvYWRSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6V2luZG93
RmVhdHVyZXMmLCBjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJikgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBzaG93KCkgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6UGFnZSogY3JlYXRlV2luZG93
KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV2ViQ29yZTo6RnJhbWVMb2FkUmVxdWVzdCYsIGNvbnN0
IFdlYkNvcmU6OldpbmRvd0ZlYXR1cmVzJiwgY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlv
biYpIGZpbmFsOworICAgIHZvaWQgc2hvdygpIGZpbmFsOwogICAgIAotICAgIGJvb2wgY2FuUnVu
TW9kYWwoKSBvdmVycmlkZTsKLSAgICB2b2lkIHJ1bk1vZGFsKCkgb3ZlcnJpZGU7CisgICAgYm9v
bCBjYW5SdW5Nb2RhbCgpIGZpbmFsOworICAgIHZvaWQgcnVuTW9kYWwoKSBmaW5hbDsKICAgICAK
LSAgICB2b2lkIHNldFRvb2xiYXJzVmlzaWJsZShib29sKSBvdmVycmlkZTsKLSAgICBib29sIHRv
b2xiYXJzVmlzaWJsZSgpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0VG9vbGJhcnNWaXNpYmxlKGJv
b2wpIGZpbmFsOworICAgIGJvb2wgdG9vbGJhcnNWaXNpYmxlKCkgZmluYWw7CiAgICAgCi0gICAg
dm9pZCBzZXRTdGF0dXNiYXJWaXNpYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJvb2wgc3RhdHVz
YmFyVmlzaWJsZSgpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0U3RhdHVzYmFyVmlzaWJsZShib29s
KSBmaW5hbDsKKyAgICBib29sIHN0YXR1c2JhclZpc2libGUoKSBmaW5hbDsKICAgICAKLSAgICB2
b2lkIHNldFNjcm9sbGJhcnNWaXNpYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJvb2wgc2Nyb2xs
YmFyc1Zpc2libGUoKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldFNjcm9sbGJhcnNWaXNpYmxlKGJv
b2wpIGZpbmFsOworICAgIGJvb2wgc2Nyb2xsYmFyc1Zpc2libGUoKSBmaW5hbDsKICAgICAKLSAg
ICB2b2lkIHNldE1lbnViYXJWaXNpYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJvb2wgbWVudWJh
clZpc2libGUoKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldE1lbnViYXJWaXNpYmxlKGJvb2wpIGZp
bmFsOworICAgIGJvb2wgbWVudWJhclZpc2libGUoKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHNl
dFJlc2l6YWJsZShib29sKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldFJlc2l6YWJsZShib29sKSBm
aW5hbDsKICAgICAKLSAgICB2b2lkIGFkZE1lc3NhZ2VUb0NvbnNvbGUoSlNDOjpNZXNzYWdlU291
cmNlLCBKU0M6Ok1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCB1bnNpZ25lZCBs
aW5lTnVtYmVyLCB1bnNpZ25lZCBjb2x1bW5OdW1iZXIsIGNvbnN0IFN0cmluZyYgc291cmNlSUQp
IG92ZXJyaWRlOworICAgIHZvaWQgYWRkTWVzc2FnZVRvQ29uc29sZShKU0M6Ok1lc3NhZ2VTb3Vy
Y2UsIEpTQzo6TWVzc2FnZUxldmVsLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIHVuc2lnbmVkIGxp
bmVOdW1iZXIsIHVuc2lnbmVkIGNvbHVtbk51bWJlciwgY29uc3QgU3RyaW5nJiBzb3VyY2VJRCkg
ZmluYWw7CiAgICAgCi0gICAgYm9vbCBjYW5SdW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoKSBv
dmVycmlkZTsKLSAgICBib29sIHJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbChjb25zdCBTdHJp
bmcmIG1lc3NhZ2UsIFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7CisgICAgYm9vbCBjYW5SdW5C
ZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoKSBmaW5hbDsKKyAgICBib29sIHJ1bkJlZm9yZVVubG9h
ZENvbmZpcm1QYW5lbChjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIFdlYkNvcmU6OkZyYW1lKikgZmlu
YWw7CiAgICAgCi0gICAgdm9pZCBjbG9zZVdpbmRvd1Nvb24oKSBvdmVycmlkZTsKKyAgICB2b2lk
IGNsb3NlV2luZG93U29vbigpIGZpbmFsOwogICAgIAotICAgIHZvaWQgcnVuSmF2YVNjcmlwdEFs
ZXJ0KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBy
dW5KYXZhU2NyaXB0Q29uZmlybShXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFN0cmluZyYpIG92ZXJy
aWRlOwotICAgIGJvb2wgcnVuSmF2YVNjcmlwdFByb21wdChXZWJDb3JlOjpGcmFtZSosIGNvbnN0
IFN0cmluZyYgbWVzc2FnZSwgY29uc3QgU3RyaW5nJiBkZWZhdWx0VmFsdWUsIFN0cmluZyYgcmVz
dWx0KSBvdmVycmlkZTsKLSAgICB2b2lkIHNldFN0YXR1c2JhclRleHQoY29uc3QgU3RyaW5nJikg
b3ZlcnJpZGU7Ci0KLSAgICBXZWJDb3JlOjpLZXlib2FyZFVJTW9kZSBrZXlib2FyZFVJTW9kZSgp
IG92ZXJyaWRlOwotCi0gICAgLy8gSG9zdFdpbmRvdyBtZW1iZXIgZnVuY3Rpb24gb3ZlcnJpZGVz
LgotICAgIHZvaWQgaW52YWxpZGF0ZVJvb3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBv
dmVycmlkZTsKLSAgICB2b2lkIGludmFsaWRhdGVDb250ZW50c0FuZFJvb3RWaWV3KGNvbnN0IFdl
YkNvcmU6OkludFJlY3QmKSBvdmVycmlkZTsKLSAgICB2b2lkIGludmFsaWRhdGVDb250ZW50c0Zv
clNsb3dTY3JvbGwoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIG92ZXJyaWRlOwotICAgIHZvaWQg
c2Nyb2xsKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIHNjcm9sbERlbHRhLCBjb25zdCBXZWJDb3Jl
OjpJbnRSZWN0JiBzY3JvbGxSZWN0LCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiBjbGlwUmVjdCkg
b3ZlcnJpZGU7CisgICAgdm9pZCBydW5KYXZhU2NyaXB0QWxlcnQoV2ViQ29yZTo6RnJhbWUqLCBj
b25zdCBTdHJpbmcmKSBmaW5hbDsKKyAgICBib29sIHJ1bkphdmFTY3JpcHRDb25maXJtKFdlYkNv
cmU6OkZyYW1lKiwgY29uc3QgU3RyaW5nJikgZmluYWw7CisgICAgYm9vbCBydW5KYXZhU2NyaXB0
UHJvbXB0KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjb25zdCBTdHJp
bmcmIGRlZmF1bHRWYWx1ZSwgU3RyaW5nJiByZXN1bHQpIGZpbmFsOworICAgIHZvaWQgc2V0U3Rh
dHVzYmFyVGV4dChjb25zdCBTdHJpbmcmKSBmaW5hbDsKKworICAgIFdlYkNvcmU6OktleWJvYXJk
VUlNb2RlIGtleWJvYXJkVUlNb2RlKCkgZmluYWw7CisKKyAgICAvLyBIb3N0V2luZG93IG1lbWJl
ciBmdW5jdGlvbiBmaW5hbHMuCisgICAgdm9pZCBpbnZhbGlkYXRlUm9vdFZpZXcoY29uc3QgV2Vi
Q29yZTo6SW50UmVjdCYpIGZpbmFsOworICAgIHZvaWQgaW52YWxpZGF0ZUNvbnRlbnRzQW5kUm9v
dFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGZpbmFsOworICAgIHZvaWQgaW52YWxpZGF0
ZUNvbnRlbnRzRm9yU2xvd1Njcm9sbChjb25zdCBXZWJDb3JlOjpJbnRSZWN0JikgZmluYWw7Cisg
ICAgdm9pZCBzY3JvbGwoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgc2Nyb2xsRGVsdGEsIGNvbnN0
IFdlYkNvcmU6OkludFJlY3QmIHNjcm9sbFJlY3QsIGNvbnN0IFdlYkNvcmU6OkludFJlY3QmIGNs
aXBSZWN0KSBmaW5hbDsKKwogI2lmIFVTRShDT09SRElOQVRFRF9HUkFQSElDUykKLSAgICB2b2lk
IGRlbGVnYXRlZFNjcm9sbFJlcXVlc3RlZChjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYgc2Nyb2xs
T2Zmc2V0KSBvdmVycmlkZTsKKyAgICB2b2lkIGRlbGVnYXRlZFNjcm9sbFJlcXVlc3RlZChjb25z
dCBXZWJDb3JlOjpJbnRQb2ludCYgc2Nyb2xsT2Zmc2V0KSBmaW5hbDsKICNlbmRpZgotICAgIFdl
YkNvcmU6OkludFBvaW50IHNjcmVlblRvUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQm
KSBjb25zdCBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpJbnRSZWN0IHJvb3RWaWV3VG9TY3JlZW4o
Y29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGNvbnN0IG92ZXJyaWRlOworCisgICAgV2ViQ29yZTo6
SW50UG9pbnQgc2NyZWVuVG9Sb290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIGNvbnN0
IGZpbmFsOworICAgIFdlYkNvcmU6OkludFJlY3Qgcm9vdFZpZXdUb1NjcmVlbihjb25zdCBXZWJD
b3JlOjpJbnRSZWN0JikgY29uc3QgZmluYWw7CisKICNpZiBQTEFURk9STShJT1MpCi0gICAgV2Vi
Q29yZTo6SW50UG9pbnQgYWNjZXNzaWJpbGl0eVNjcmVlblRvUm9vdFZpZXcoY29uc3QgV2ViQ29y
ZTo6SW50UG9pbnQmKSBjb25zdCBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpJbnRSZWN0IHJvb3RW
aWV3VG9BY2Nlc3NpYmlsaXR5U2NyZWVuKGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBjb25zdCBv
dmVycmlkZTsKKyAgICBXZWJDb3JlOjpJbnRQb2ludCBhY2Nlc3NpYmlsaXR5U2NyZWVuVG9Sb290
Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIGNvbnN0IGZpbmFsOworICAgIFdlYkNvcmU6
OkludFJlY3Qgcm9vdFZpZXdUb0FjY2Vzc2liaWxpdHlTY3JlZW4oY29uc3QgV2ViQ29yZTo6SW50
UmVjdCYpIGNvbnN0IGZpbmFsOwogI2VuZGlmCi0gICAgUGxhdGZvcm1QYWdlQ2xpZW50IHBsYXRm
b3JtUGFnZUNsaWVudCgpIGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQgY29udGVudHNTaXplQ2hh
bmdlZChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6OkludFNpemUmKSBjb25zdCBvdmVy
cmlkZTsKLSAgICB2b2lkIHNjcm9sbFJlY3RJbnRvVmlldyhjb25zdCBXZWJDb3JlOjpJbnRSZWN0
JikgY29uc3Qgb3ZlcnJpZGU7IC8vIEN1cnJlbnRseSBvbmx5IE1hYyBoYXMgYSBub24gZW1wdHkg
aW1wbGVtZW50YXRpb24uCiAKLSAgICBib29sIHNob3VsZFVuYXZhaWxhYmxlUGx1Z2luTWVzc2Fn
ZUJlQnV0dG9uKFdlYkNvcmU6OlJlbmRlckVtYmVkZGVkT2JqZWN0OjpQbHVnaW5VbmF2YWlsYWJp
bGl0eVJlYXNvbikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCB1bmF2YWlsYWJsZVBsdWdpbkJ1
dHRvbkNsaWNrZWQoV2ViQ29yZTo6RWxlbWVudCosIFdlYkNvcmU6OlJlbmRlckVtYmVkZGVkT2Jq
ZWN0OjpQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbikgY29uc3Qgb3ZlcnJpZGU7CisgICAgUGxh
dGZvcm1QYWdlQ2xpZW50IHBsYXRmb3JtUGFnZUNsaWVudCgpIGNvbnN0IGZpbmFsOworICAgIHZv
aWQgY29udGVudHNTaXplQ2hhbmdlZChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6Oklu
dFNpemUmKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIHNjcm9sbFJlY3RJbnRvVmlldyhjb25zdCBX
ZWJDb3JlOjpJbnRSZWN0JikgY29uc3QgZmluYWw7IC8vIEN1cnJlbnRseSBvbmx5IE1hYyBoYXMg
YSBub24gZW1wdHkgaW1wbGVtZW50YXRpb24uCiAKLSAgICB2b2lkIHNjcm9sbGJhcnNNb2RlRGlk
Q2hhbmdlKCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCBtb3VzZURpZE1vdmVPdmVyRWxlbWVu
dChjb25zdCBXZWJDb3JlOjpIaXRUZXN0UmVzdWx0JiwgdW5zaWduZWQgbW9kaWZpZXJGbGFncykg
b3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRVbmF2YWlsYWJsZVBsdWdpbk1lc3NhZ2VCZUJ1dHRv
bihXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFz
b24pIGNvbnN0IGZpbmFsOworICAgIHZvaWQgdW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2Vk
KFdlYkNvcmU6OkVsZW1lbnQqLCBXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2lu
VW5hdmFpbGFiaWxpdHlSZWFzb24pIGNvbnN0IGZpbmFsOwogCi0gICAgdm9pZCBzZXRUb29sVGlw
KGNvbnN0IFN0cmluZyYsIFdlYkNvcmU6OlRleHREaXJlY3Rpb24pIG92ZXJyaWRlOworICAgIHZv
aWQgc2Nyb2xsYmFyc01vZGVEaWRDaGFuZ2UoKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIG1vdXNl
RGlkTW92ZU92ZXJFbGVtZW50KGNvbnN0IFdlYkNvcmU6OkhpdFRlc3RSZXN1bHQmLCB1bnNpZ25l
ZCBtb2RpZmllckZsYWdzKSBmaW5hbDsKKworICAgIHZvaWQgc2V0VG9vbFRpcChjb25zdCBTdHJp
bmcmLCBXZWJDb3JlOjpUZXh0RGlyZWN0aW9uKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHByaW50
KFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7CisgICAgdm9pZCBwcmludChXZWJDb3JlOjpGcmFt
ZSopIGZpbmFsOwogCi0gICAgdm9pZCBleGNlZWRlZERhdGFiYXNlUXVvdGEoV2ViQ29yZTo6RnJh
bWUqLCBjb25zdCBTdHJpbmcmIGRhdGFiYXNlTmFtZSwgV2ViQ29yZTo6RGF0YWJhc2VEZXRhaWxz
KSBvdmVycmlkZTsKKyAgICB2b2lkIGV4Y2VlZGVkRGF0YWJhc2VRdW90YShXZWJDb3JlOjpGcmFt
ZSosIGNvbnN0IFN0cmluZyYgZGF0YWJhc2VOYW1lLCBXZWJDb3JlOjpEYXRhYmFzZURldGFpbHMp
IGZpbmFsOwogCi0gICAgdm9pZCByZWFjaGVkTWF4QXBwQ2FjaGVTaXplKGludDY0X3Qgc3BhY2VO
ZWVkZWQpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVhY2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5R
dW90YShXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiosIGludDY0X3Qgc3BhY2VOZWVkZWQpIG92ZXJy
aWRlOworICAgIHZvaWQgcmVhY2hlZE1heEFwcENhY2hlU2l6ZShpbnQ2NF90IHNwYWNlTmVlZGVk
KSBmaW5hbDsKKyAgICB2b2lkIHJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoV2Vi
Q29yZTo6U2VjdXJpdHlPcmlnaW4qLCBpbnQ2NF90IHNwYWNlTmVlZGVkKSBmaW5hbDsKIAogI2lm
IEVOQUJMRShEQVNIQk9BUkRfU1VQUE9SVCkKLSAgICB2b2lkIGFubm90YXRlZFJlZ2lvbnNDaGFu
Z2VkKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBhbm5vdGF0ZWRSZWdpb25zQ2hhbmdlZCgpIGZpbmFs
OwogI2VuZGlmCiAKLSAgICBib29sIHNob3VsZFJlcGxhY2VXaXRoR2VuZXJhdGVkRmlsZUZvclVw
bG9hZChjb25zdCBTdHJpbmcmIHBhdGgsIFN0cmluZyYgZ2VuZXJhdGVkRmlsZW5hbWUpIG92ZXJy
aWRlOwotICAgIFN0cmluZyBnZW5lcmF0ZVJlcGxhY2VtZW50RmlsZShjb25zdCBTdHJpbmcmIHBh
dGgpIG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkUmVwbGFjZVdpdGhHZW5lcmF0ZWRGaWxlRm9y
VXBsb2FkKGNvbnN0IFN0cmluZyYgcGF0aCwgU3RyaW5nJiBnZW5lcmF0ZWRGaWxlbmFtZSkgZmlu
YWw7CisgICAgU3RyaW5nIGdlbmVyYXRlUmVwbGFjZW1lbnRGaWxlKGNvbnN0IFN0cmluZyYgcGF0
aCkgZmluYWw7CiAgICAgCiAjaWYgRU5BQkxFKElOUFVUX1RZUEVfQ09MT1IpCi0gICAgc3RkOjp1
bmlxdWVfcHRyPFdlYkNvcmU6OkNvbG9yQ2hvb3Nlcj4gY3JlYXRlQ29sb3JDaG9vc2VyKFdlYkNv
cmU6OkNvbG9yQ2hvb3NlckNsaWVudCosIGNvbnN0IFdlYkNvcmU6OkNvbG9yJikgb3ZlcnJpZGU7
CisgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6OkNvbG9yQ2hvb3Nlcj4gY3JlYXRlQ29sb3JD
aG9vc2VyKFdlYkNvcmU6OkNvbG9yQ2hvb3NlckNsaWVudCosIGNvbnN0IFdlYkNvcmU6OkNvbG9y
JikgZmluYWw7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShJT1NfVE9VQ0hfRVZFTlRTKQotICAgIHZv
aWQgZGlkUHJldmVudERlZmF1bHRGb3JFdmVudCgpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkUHJl
dmVudERlZmF1bHRGb3JFdmVudCgpIGZpbmFsOwogI2VuZGlmCiAKICNpZiBQTEFURk9STShJT1Mp
Ci0gICAgdm9pZCBkaWRSZWNlaXZlTW9iaWxlRG9jVHlwZShib29sKSBvdmVycmlkZTsKLSAgICB2
b2lkIHNldE5lZWRzU2Nyb2xsTm90aWZpY2F0aW9ucyhXZWJDb3JlOjpGcmFtZSosIGJvb2wpIG92
ZXJyaWRlOwotICAgIHZvaWQgb2JzZXJ2ZWRDb250ZW50Q2hhbmdlKFdlYkNvcmU6OkZyYW1lKikg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBjbGVhckNvbnRlbnRDaGFuZ2VPYnNlcnZlcnMoV2ViQ29yZTo6
RnJhbWUqKSBvdmVycmlkZTsKLSAgICB2b2lkIG5vdGlmeVJldmVhbGVkU2VsZWN0aW9uQnlTY3Jv
bGxpbmdGcmFtZShXZWJDb3JlOjpGcmFtZSopIG92ZXJyaWRlOwotICAgIGJvb2wgaXNTdG9wcGlu
ZygpIG92ZXJyaWRlOwotCi0gICAgdm9pZCBkaWRMYXlvdXQoTGF5b3V0VHlwZSA9IE5vcm1hbExh
eW91dCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRTdGFydE92ZXJmbG93U2Nyb2xsKCkgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCBkaWRFbmRPdmVyZmxvd1Njcm9sbCgpIG92ZXJyaWRlOwotICAgIGJvb2wg
aGFzU3RhYmxlUGFnZVNjYWxlRmFjdG9yKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRS
ZWNlaXZlTW9iaWxlRG9jVHlwZShib29sKSBmaW5hbDsKKyAgICB2b2lkIHNldE5lZWRzU2Nyb2xs
Tm90aWZpY2F0aW9ucyhXZWJDb3JlOjpGcmFtZSosIGJvb2wpIGZpbmFsOworICAgIHZvaWQgb2Jz
ZXJ2ZWRDb250ZW50Q2hhbmdlKFdlYkNvcmU6OkZyYW1lKikgZmluYWw7CisgICAgdm9pZCBjbGVh
ckNvbnRlbnRDaGFuZ2VPYnNlcnZlcnMoV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKKyAgICB2b2lk
IG5vdGlmeVJldmVhbGVkU2VsZWN0aW9uQnlTY3JvbGxpbmdGcmFtZShXZWJDb3JlOjpGcmFtZSop
IGZpbmFsOworICAgIGJvb2wgaXNTdG9wcGluZygpIGZpbmFsOworCisgICAgdm9pZCBkaWRMYXlv
dXQoTGF5b3V0VHlwZSA9IE5vcm1hbExheW91dCkgZmluYWw7CisgICAgdm9pZCBkaWRTdGFydE92
ZXJmbG93U2Nyb2xsKCkgZmluYWw7CisgICAgdm9pZCBkaWRFbmRPdmVyZmxvd1Njcm9sbCgpIGZp
bmFsOworICAgIGJvb2wgaGFzU3RhYmxlUGFnZVNjYWxlRmFjdG9yKCkgY29uc3QgZmluYWw7CiAK
ICAgICAvLyBGSVhNRTogU2VlIDxyZGFyOi8vcHJvYmxlbS81OTc1NTU5PgotICAgIHZvaWQgc3Vw
cHJlc3NGb3JtTm90aWZpY2F0aW9ucygpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVzdG9yZUZvcm1O
b3RpZmljYXRpb25zKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBzdXBwcmVzc0Zvcm1Ob3RpZmljYXRp
b25zKCkgZmluYWw7CisgICAgdm9pZCByZXN0b3JlRm9ybU5vdGlmaWNhdGlvbnMoKSBmaW5hbDsK
IAotICAgIHZvaWQgYWRkT3JVcGRhdGVTY3JvbGxpbmdMYXllcihXZWJDb3JlOjpOb2RlKiwgUGxh
dGZvcm1MYXllciogc2Nyb2xsaW5nTGF5ZXIsIFBsYXRmb3JtTGF5ZXIqIGNvbnRlbnRzTGF5ZXIs
IGNvbnN0IFdlYkNvcmU6OkludFNpemUmIHNjcm9sbFNpemUsIGJvb2wgYWxsb3dIb3Jpem9udGFs
U2Nyb2xsYmFyLCBib29sIGFsbG93VmVydGljYWxTY3JvbGxiYXIpIG92ZXJyaWRlOwotICAgIHZv
aWQgcmVtb3ZlU2Nyb2xsaW5nTGF5ZXIoV2ViQ29yZTo6Tm9kZSosIFBsYXRmb3JtTGF5ZXIqIHNj
cm9sbGluZ0xheWVyLCBQbGF0Zm9ybUxheWVyKiBjb250ZW50c0xheWVyKSBvdmVycmlkZTsKKyAg
ICB2b2lkIGFkZE9yVXBkYXRlU2Nyb2xsaW5nTGF5ZXIoV2ViQ29yZTo6Tm9kZSosIFBsYXRmb3Jt
TGF5ZXIqIHNjcm9sbGluZ0xheWVyLCBQbGF0Zm9ybUxheWVyKiBjb250ZW50c0xheWVyLCBjb25z
dCBXZWJDb3JlOjpJbnRTaXplJiBzY3JvbGxTaXplLCBib29sIGFsbG93SG9yaXpvbnRhbFNjcm9s
bGJhciwgYm9vbCBhbGxvd1ZlcnRpY2FsU2Nyb2xsYmFyKSBmaW5hbDsKKyAgICB2b2lkIHJlbW92
ZVNjcm9sbGluZ0xheWVyKFdlYkNvcmU6Ok5vZGUqLCBQbGF0Zm9ybUxheWVyKiBzY3JvbGxpbmdM
YXllciwgUGxhdGZvcm1MYXllciogY29udGVudHNMYXllcikgZmluYWw7CiAKLSAgICB2b2lkIHdl
YkFwcE9yaWVudGF0aW9uc1VwZGF0ZWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIHNob3dQbGF5YmFj
a1RhcmdldFBpY2tlcihib29sIGhhc1ZpZGVvKSBvdmVycmlkZTsKKyAgICB2b2lkIHdlYkFwcE9y
aWVudGF0aW9uc1VwZGF0ZWQoKSBmaW5hbDsKKyAgICB2b2lkIHNob3dQbGF5YmFja1RhcmdldFBp
Y2tlcihib29sIGhhc1ZpZGVvKSBmaW5hbDsKIAotICAgIFNlY29uZHMgZXZlbnRUaHJvdHRsaW5n
RGVsYXkoKSBvdmVycmlkZTsKKyAgICBTZWNvbmRzIGV2ZW50VGhyb3R0bGluZ0RlbGF5KCkgZmlu
YWw7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShPUklFTlRBVElPTl9FVkVOVFMpCi0gICAgaW50IGRl
dmljZU9yaWVudGF0aW9uKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgaW50IGRldmljZU9yaWVudGF0
aW9uKCkgY29uc3QgZmluYWw7CiAjZW5kaWYKIAotICAgIHZvaWQgcnVuT3BlblBhbmVsKFdlYkNv
cmU6OkZyYW1lKiwgUGFzc1JlZlB0cjxXZWJDb3JlOjpGaWxlQ2hvb3Nlcj4pIG92ZXJyaWRlOwot
ICAgIHZvaWQgbG9hZEljb25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8U3RyaW5nPiYsIFdlYkNvcmU6
OkZpbGVJY29uTG9hZGVyJikgb3ZlcnJpZGU7CisgICAgdm9pZCBydW5PcGVuUGFuZWwoV2ViQ29y
ZTo6RnJhbWUmLCBXZWJDb3JlOjpGaWxlQ2hvb3NlciYpIGZpbmFsOworICAgIHZvaWQgbG9hZElj
b25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8U3RyaW5nPiYsIFdlYkNvcmU6OkZpbGVJY29uTG9hZGVy
JikgZmluYWw7CiAKICNpZiAhUExBVEZPUk0oSU9TKQotICAgIHZvaWQgc2V0Q3Vyc29yKGNvbnN0
IFdlYkNvcmU6OkN1cnNvciYpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0Q3Vyc29ySGlkZGVuVW50
aWxNb3VzZU1vdmVzKGJvb2wpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0Q3Vyc29yKGNvbnN0IFdl
YkNvcmU6OkN1cnNvciYpIGZpbmFsOworICAgIHZvaWQgc2V0Q3Vyc29ySGlkZGVuVW50aWxNb3Vz
ZU1vdmVzKGJvb2wpIGZpbmFsOwogI2VuZGlmCisKICNpZiBFTkFCTEUoUkVRVUVTVF9BTklNQVRJ
T05fRlJBTUUpICYmICFVU0UoUkVRVUVTVF9BTklNQVRJT05fRlJBTUVfVElNRVIpCi0gICAgdm9p
ZCBzY2hlZHVsZUFuaW1hdGlvbigpIG92ZXJyaWRlOworICAgIHZvaWQgc2NoZWR1bGVBbmltYXRp
b24oKSBmaW5hbDsKICNlbmRpZgogICAgIAogI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCi0gICAg
Ym9vbCByZXF1ZXN0UG9pbnRlckxvY2soKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlcXVlc3RQb2lu
dGVyVW5sb2NrKCkgb3ZlcnJpZGU7CisgICAgYm9vbCByZXF1ZXN0UG9pbnRlckxvY2soKSBmaW5h
bDsKKyAgICB2b2lkIHJlcXVlc3RQb2ludGVyVW5sb2NrKCkgZmluYWw7CiAjZW5kaWYKIAotICAg
IHZvaWQgZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xzKGNvbnN0IFZlY3RvcjxSZWZQdHI8V2ViQ29y
ZTo6RWxlbWVudD4+Jikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBzaG91bGROb3RpZnlPbkZvcm1DaGFu
Z2VzKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRBc3NvY2lhdGVGb3JtQ29udHJvbHMoY29uc3Qg
VmVjdG9yPFJlZlB0cjxXZWJDb3JlOjpFbGVtZW50Pj4mKSBmaW5hbDsKKyAgICBib29sIHNob3Vs
ZE5vdGlmeU9uRm9ybUNoYW5nZXMoKSBmaW5hbDsKIAotICAgIGJvb2wgc2VsZWN0SXRlbVdyaXRp
bmdEaXJlY3Rpb25Jc05hdHVyYWwoKSBvdmVycmlkZTsKLSAgICBib29sIHNlbGVjdEl0ZW1BbGln
bm1lbnRGb2xsb3dzTWVudVdyaXRpbmdEaXJlY3Rpb24oKSBvdmVycmlkZTsKLSAgICBib29sIGhh
c09wZW5lZFBvcHVwKCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgUmVmUHRyPFdlYkNvcmU6OlBvcHVw
TWVudT4gY3JlYXRlUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCopIGNvbnN0IG92
ZXJyaWRlOwotICAgIFJlZlB0cjxXZWJDb3JlOjpTZWFyY2hQb3B1cE1lbnU+IGNyZWF0ZVNlYXJj
aFBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1lbnVDbGllbnQqKSBjb25zdCBvdmVycmlkZTsKKyAg
ICBib29sIHNlbGVjdEl0ZW1Xcml0aW5nRGlyZWN0aW9uSXNOYXR1cmFsKCkgZmluYWw7CisgICAg
Ym9vbCBzZWxlY3RJdGVtQWxpZ25tZW50Rm9sbG93c01lbnVXcml0aW5nRGlyZWN0aW9uKCkgZmlu
YWw7CisgICAgYm9vbCBoYXNPcGVuZWRQb3B1cCgpIGNvbnN0IGZpbmFsOworICAgIFJlZlB0cjxX
ZWJDb3JlOjpQb3B1cE1lbnU+IGNyZWF0ZVBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1lbnVDbGll
bnQqKSBjb25zdCBmaW5hbDsKKyAgICBSZWZQdHI8V2ViQ29yZTo6U2VhcmNoUG9wdXBNZW51PiBj
cmVhdGVTZWFyY2hQb3B1cE1lbnUoV2ViQ29yZTo6UG9wdXBNZW51Q2xpZW50KikgY29uc3QgZmlu
YWw7CiAKLSAgICBXZWJDb3JlOjpHcmFwaGljc0xheWVyRmFjdG9yeSogZ3JhcGhpY3NMYXllckZh
Y3RvcnkoKSBjb25zdCBvdmVycmlkZTsKLSAgICB2b2lkIGF0dGFjaFJvb3RHcmFwaGljc0xheWVy
KFdlYkNvcmU6OkZyYW1lKiwgV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOwotICAg
IHZvaWQgYXR0YWNoVmlld092ZXJsYXlHcmFwaGljc0xheWVyKFdlYkNvcmU6OkZyYW1lKiwgV2Vi
Q29yZTo6R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0TmVlZHNPbmVTaG90
RHJhd2luZ1N5bmNocm9uaXphdGlvbigpIG92ZXJyaWRlOwotICAgIHZvaWQgc2NoZWR1bGVDb21w
b3NpdGluZ0xheWVyRmx1c2goKSBvdmVycmlkZTsKLSAgICBib29sIGFkanVzdExheWVyRmx1c2hU
aHJvdHRsaW5nKFdlYkNvcmU6OkxheWVyRmx1c2hUaHJvdHRsZVN0YXRlOjpGbGFncykgb3ZlcnJp
ZGU7CisgICAgV2ViQ29yZTo6R3JhcGhpY3NMYXllckZhY3RvcnkqIGdyYXBoaWNzTGF5ZXJGYWN0
b3J5KCkgY29uc3QgZmluYWw7CisgICAgdm9pZCBhdHRhY2hSb290R3JhcGhpY3NMYXllcihXZWJD
b3JlOjpGcmFtZSosIFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXIqKSBmaW5hbDsKKyAgICB2b2lkIGF0
dGFjaFZpZXdPdmVybGF5R3JhcGhpY3NMYXllcihXZWJDb3JlOjpGcmFtZSosIFdlYkNvcmU6Okdy
YXBoaWNzTGF5ZXIqKSBmaW5hbDsKKyAgICB2b2lkIHNldE5lZWRzT25lU2hvdERyYXdpbmdTeW5j
aHJvbml6YXRpb24oKSBmaW5hbDsKKyAgICB2b2lkIHNjaGVkdWxlQ29tcG9zaXRpbmdMYXllckZs
dXNoKCkgZmluYWw7CisgICAgYm9vbCBhZGp1c3RMYXllckZsdXNoVGhyb3R0bGluZyhXZWJDb3Jl
OjpMYXllckZsdXNoVGhyb3R0bGVTdGF0ZTo6RmxhZ3MpIGZpbmFsOwogCiAjaWYgVVNFKFJFUVVF
U1RfQU5JTUFUSU9OX0ZSQU1FX0RJU1BMQVlfTU9OSVRPUikKLSAgICBSZWZQdHI8V2ViQ29yZTo6
RGlzcGxheVJlZnJlc2hNb25pdG9yPiBjcmVhdGVEaXNwbGF5UmVmcmVzaE1vbml0b3IoV2ViQ29y
ZTo6UGxhdGZvcm1EaXNwbGF5SUQpIGNvbnN0IG92ZXJyaWRlOworICAgIFJlZlB0cjxXZWJDb3Jl
OjpEaXNwbGF5UmVmcmVzaE1vbml0b3I+IGNyZWF0ZURpc3BsYXlSZWZyZXNoTW9uaXRvcihXZWJD
b3JlOjpQbGF0Zm9ybURpc3BsYXlJRCkgY29uc3QgZmluYWw7CiAjZW5kaWYKIAotICAgIENvbXBv
c2l0aW5nVHJpZ2dlckZsYWdzIGFsbG93ZWRDb21wb3NpdGluZ1RyaWdnZXJzKCkgY29uc3Qgb3Zl
cnJpZGUKKyAgICBDb21wb3NpdGluZ1RyaWdnZXJGbGFncyBhbGxvd2VkQ29tcG9zaXRpbmdUcmln
Z2VycygpIGNvbnN0IGZpbmFsCiAgICAgewogICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8Q29t
cG9zaXRpbmdUcmlnZ2VyRmxhZ3M+KAogICAgICAgICAgICAgVGhyZWVEVHJhbnNmb3JtVHJpZ2dl
ciB8CkBAIC0yMzAsMTE5ICsyMjgsMTIxIEBAIHByaXZhdGU6CiAgICAgICAgICAgICBBbmltYXRp
b25UcmlnZ2VyKTsKICAgICB9CiAKLSAgICBib29sIGxheWVyVHJlZVN0YXRlSXNGcm96ZW4oKSBj
b25zdCBvdmVycmlkZTsKKyAgICBib29sIGxheWVyVHJlZVN0YXRlSXNGcm96ZW4oKSBjb25zdCBm
aW5hbDsKIAogI2lmIEVOQUJMRShBU1lOQ19TQ1JPTExJTkcpCi0gICAgUGFzc1JlZlB0cjxXZWJD
b3JlOjpTY3JvbGxpbmdDb29yZGluYXRvcj4gY3JlYXRlU2Nyb2xsaW5nQ29vcmRpbmF0b3IoV2Vi
Q29yZTo6UGFnZSopIGNvbnN0IG92ZXJyaWRlOworICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6U2Ny
b2xsaW5nQ29vcmRpbmF0b3I+IGNyZWF0ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yKFdlYkNvcmU6OlBh
Z2UqKSBjb25zdCBmaW5hbDsKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oSU9TKQotICAgIHZvaWQg
ZWxlbWVudERpZFJlZm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9kZSopIG92ZXJyaWRlOworICAgIHZv
aWQgZWxlbWVudERpZFJlZm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9kZSopIGZpbmFsOwogI2VuZGlm
CiAKICNpZiAoUExBVEZPUk0oSU9TKSAmJiBIQVZFKEFWS0lUKSkgfHwgKFBMQVRGT1JNKE1BQykg
JiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSkKLSAgICBib29sIHN1cHBvcnRzVmlk
ZW9GdWxsc2NyZWVuKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2Ny
ZWVuTW9kZSkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRVcFBsYXliYWNrQ29udHJvbHNNYW5hZ2Vy
KFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQmKSBvdmVycmlkZTsKLSAgICB2b2lkIGNsZWFyUGxh
eWJhY2tDb250cm9sc01hbmFnZXIoKSBvdmVycmlkZTsKLSAgICB2b2lkIGVudGVyVmlkZW9GdWxs
c2NyZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmLCBXZWJDb3Jl
OjpIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIG92ZXJyaWRlOwot
ICAgIHZvaWQgZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1M
VmlkZW9FbGVtZW50Jikgb3ZlcnJpZGU7Ci0jaWYgUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklE
RU9fUFJFU0VOVEFUSU9OX01PREUpCi0gICAgdm9pZCBleGl0VmlkZW9GdWxsc2NyZWVuVG9Nb2Rl
V2l0aG91dEFuaW1hdGlvbihXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50JiwgV2ViQ29yZTo6SFRN
TE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlKSBvdmVycmlkZTsKKyAgICBi
b29sIHN1cHBvcnRzVmlkZW9GdWxsc2NyZWVuKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVt
czo6VmlkZW9GdWxsc2NyZWVuTW9kZSkgZmluYWw7CisgICAgdm9pZCBzZXRVcFBsYXliYWNrQ29u
dHJvbHNNYW5hZ2VyKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQmKSBmaW5hbDsKKyAgICB2b2lk
IGNsZWFyUGxheWJhY2tDb250cm9sc01hbmFnZXIoKSBmaW5hbDsKKyAgICB2b2lkIGVudGVyVmlk
ZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmLCBX
ZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIGZpbmFs
OworICAgIHZvaWQgZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpI
VE1MVmlkZW9FbGVtZW50JikgZmluYWw7CiAjZW5kaWYKKworI2lmIFBMQVRGT1JNKE1BQykgJiYg
RU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQorICAgIHZvaWQgZXhpdFZpZGVvRnVsbHNj
cmVlblRvTW9kZVdpdGhvdXRBbmltYXRpb24oV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCYsIFdl
YkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZSkgZmluYWw7
CiAjZW5kaWYKIAogI2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQSSkKLSAgICBib29sIHN1cHBvcnRz
RnVsbFNjcmVlbkZvckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6RWxlbWVudCosIGJvb2wgd2l0aEtl
eWJvYXJkKSBvdmVycmlkZTsKLSAgICB2b2lkIGVudGVyRnVsbFNjcmVlbkZvckVsZW1lbnQoV2Vi
Q29yZTo6RWxlbWVudCopIG92ZXJyaWRlOwotICAgIHZvaWQgZXhpdEZ1bGxTY3JlZW5Gb3JFbGVt
ZW50KFdlYkNvcmU6OkVsZW1lbnQqKSBvdmVycmlkZTsKKyAgICBib29sIHN1cHBvcnRzRnVsbFNj
cmVlbkZvckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6RWxlbWVudCosIGJvb2wgd2l0aEtleWJvYXJk
KSBmaW5hbDsKKyAgICB2b2lkIGVudGVyRnVsbFNjcmVlbkZvckVsZW1lbnQoV2ViQ29yZTo6RWxl
bWVudCopIGZpbmFsOworICAgIHZvaWQgZXhpdEZ1bGxTY3JlZW5Gb3JFbGVtZW50KFdlYkNvcmU6
OkVsZW1lbnQqKSBmaW5hbDsKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oQ09DT0EpCi0gICAgdm9p
ZCBlbGVtZW50RGlkRm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9kZSopIG92ZXJyaWRlOwotICAgIHZv
aWQgZWxlbWVudERpZEJsdXIoY29uc3QgV2ViQ29yZTo6Tm9kZSopIG92ZXJyaWRlOworICAgIHZv
aWQgZWxlbWVudERpZEZvY3VzKGNvbnN0IFdlYkNvcmU6Ok5vZGUqKSBmaW5hbDsKKyAgICB2b2lk
IGVsZW1lbnREaWRCbHVyKGNvbnN0IFdlYkNvcmU6Ok5vZGUqKSBmaW5hbDsKIAotICAgIHZvaWQg
bWFrZUZpcnN0UmVzcG9uZGVyKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBtYWtlRmlyc3RSZXNwb25k
ZXIoKSBmaW5hbDsKICNlbmRpZgogCi0gICAgdm9pZCBlbmFibGVTdWRkZW5UZXJtaW5hdGlvbigp
IG92ZXJyaWRlOwotICAgIHZvaWQgZGlzYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkgb3ZlcnJpZGU7
CisgICAgdm9pZCBlbmFibGVTdWRkZW5UZXJtaW5hdGlvbigpIGZpbmFsOworICAgIHZvaWQgZGlz
YWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkgZmluYWw7CiAKICNpZiBQTEFURk9STShJT1MpCi0gICAg
V2ViQ29yZTo6RmxvYXRTaXplIHNjcmVlblNpemUoKSBjb25zdCBvdmVycmlkZTsKLSAgICBXZWJD
b3JlOjpGbG9hdFNpemUgYXZhaWxhYmxlU2NyZWVuU2l6ZSgpIGNvbnN0IG92ZXJyaWRlOworICAg
IFdlYkNvcmU6OkZsb2F0U2l6ZSBzY3JlZW5TaXplKCkgY29uc3QgZmluYWw7CisgICAgV2ViQ29y
ZTo6RmxvYXRTaXplIGF2YWlsYWJsZVNjcmVlblNpemUoKSBjb25zdCBmaW5hbDsKICNlbmRpZgot
ICAgIHZvaWQgZGlzcGF0Y2hWaWV3cG9ydFByb3BlcnRpZXNEaWRDaGFuZ2UoY29uc3QgV2ViQ29y
ZTo6Vmlld3BvcnRBcmd1bWVudHMmKSBjb25zdCBvdmVycmlkZTsKIAotICAgIHZvaWQgbm90aWZ5
U2Nyb2xsZXJUaHVtYklzVmlzaWJsZUluUmVjdChjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jikgb3Zl
cnJpZGU7Ci0gICAgdm9pZCByZWNvbW1lbmRlZFNjcm9sbGJhclN0eWxlRGlkQ2hhbmdlKFdlYkNv
cmU6OlNjcm9sbGJhclN0eWxlIG5ld1N0eWxlKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNo
Vmlld3BvcnRQcm9wZXJ0aWVzRGlkQ2hhbmdlKGNvbnN0IFdlYkNvcmU6OlZpZXdwb3J0QXJndW1l
bnRzJikgY29uc3QgZmluYWw7CiAKLSAgICBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlNjcm9sbGJh
ck92ZXJsYXlTdHlsZT4gcHJlZmVycmVkU2Nyb2xsYmFyT3ZlcmxheVN0eWxlKCkgb3ZlcnJpZGU7
CisgICAgdm9pZCBub3RpZnlTY3JvbGxlclRodW1iSXNWaXNpYmxlSW5SZWN0KGNvbnN0IFdlYkNv
cmU6OkludFJlY3QmKSBmaW5hbDsKKyAgICB2b2lkIHJlY29tbWVuZGVkU2Nyb2xsYmFyU3R5bGVE
aWRDaGFuZ2UoV2ViQ29yZTo6U2Nyb2xsYmFyU3R5bGUgbmV3U3R5bGUpIGZpbmFsOwogCi0gICAg
V2ViQ29yZTo6Q29sb3IgdW5kZXJsYXlDb2xvcigpIGNvbnN0IG92ZXJyaWRlOworICAgIHN0ZDo6
b3B0aW9uYWw8V2ViQ29yZTo6U2Nyb2xsYmFyT3ZlcmxheVN0eWxlPiBwcmVmZXJyZWRTY3JvbGxi
YXJPdmVybGF5U3R5bGUoKSBmaW5hbDsKIAotICAgIHZvaWQgcGFnZUV4dGVuZGVkQmFja2dyb3Vu
ZENvbG9yRGlkQ2hhbmdlKFdlYkNvcmU6OkNvbG9yKSBjb25zdCBvdmVycmlkZTsKKyAgICBXZWJD
b3JlOjpDb2xvciB1bmRlcmxheUNvbG9yKCkgY29uc3QgZmluYWw7CisKKyAgICB2b2lkIHBhZ2VF
eHRlbmRlZEJhY2tncm91bmRDb2xvckRpZENoYW5nZShXZWJDb3JlOjpDb2xvcikgY29uc3QgZmlu
YWw7CiAgICAgCi0gICAgdm9pZCB3aGVlbEV2ZW50SGFuZGxlcnNDaGFuZ2VkKGJvb2wpIG92ZXJy
aWRlOworICAgIHZvaWQgd2hlZWxFdmVudEhhbmRsZXJzQ2hhbmdlZChib29sKSBmaW5hbDsKIAot
ICAgIFN0cmluZyBwbHVnSW5TdGFydExhYmVsVGl0bGUoY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkg
Y29uc3Qgb3ZlcnJpZGU7Ci0gICAgU3RyaW5nIHBsdWdJblN0YXJ0TGFiZWxTdWJ0aXRsZShjb25z
dCBTdHJpbmcmIG1pbWVUeXBlKSBjb25zdCBvdmVycmlkZTsKLSAgICBTdHJpbmcgcGx1Z0luRXh0
cmFTdHlsZVNoZWV0KCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgU3RyaW5nIHBsdWdJbkV4dHJhU2Ny
aXB0KCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgU3RyaW5nIHBsdWdJblN0YXJ0TGFiZWxUaXRsZShj
b25zdCBTdHJpbmcmIG1pbWVUeXBlKSBjb25zdCBmaW5hbDsKKyAgICBTdHJpbmcgcGx1Z0luU3Rh
cnRMYWJlbFN1YnRpdGxlKGNvbnN0IFN0cmluZyYgbWltZVR5cGUpIGNvbnN0IGZpbmFsOworICAg
IFN0cmluZyBwbHVnSW5FeHRyYVN0eWxlU2hlZXQoKSBjb25zdCBmaW5hbDsKKyAgICBTdHJpbmcg
cGx1Z0luRXh0cmFTY3JpcHQoKSBjb25zdCBmaW5hbDsKIAotICAgIHZvaWQgZGlkQWRkSGVhZGVy
TGF5ZXIoV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkQWRk
Rm9vdGVyTGF5ZXIoV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOworICAgIHZvaWQg
ZGlkQWRkSGVhZGVyTGF5ZXIoV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIGZpbmFsOworICAgIHZv
aWQgZGlkQWRkRm9vdGVyTGF5ZXIoV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIGZpbmFsOwogCi0g
ICAgYm9vbCBzaG91bGRVc2VUaWxlZEJhY2tpbmdGb3JGcmFtZVZpZXcoY29uc3QgV2ViQ29yZTo6
RnJhbWVWaWV3KikgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRVc2VUaWxlZEJhY2tp
bmdGb3JGcmFtZVZpZXcoY29uc3QgV2ViQ29yZTo6RnJhbWVWaWV3KikgY29uc3QgZmluYWw7CiAK
LSAgICB2b2lkIGlzUGxheWluZ01lZGlhRGlkQ2hhbmdlKFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6
Ok1lZGlhU3RhdGVGbGFncywgdWludDY0X3QpIG92ZXJyaWRlOworICAgIHZvaWQgaXNQbGF5aW5n
TWVkaWFEaWRDaGFuZ2UoV2ViQ29yZTo6TWVkaWFQcm9kdWNlcjo6TWVkaWFTdGF0ZUZsYWdzLCB1
aW50NjRfdCkgZmluYWw7CiAKICNpZiBFTkFCTEUoTUVESUFfU0VTU0lPTikKLSAgICB2b2lkIGhh
c01lZGlhU2Vzc2lvbldpdGhBY3RpdmVNZWRpYUVsZW1lbnRzRGlkQ2hhbmdlKGJvb2wpIG92ZXJy
aWRlOwotICAgIHZvaWQgbWVkaWFTZXNzaW9uTWV0YWRhdGFEaWRDaGFuZ2UoY29uc3QgV2ViQ29y
ZTo6TWVkaWFTZXNzaW9uTWV0YWRhdGEmKSBvdmVycmlkZTsKLSAgICB2b2lkIGZvY3VzZWRDb250
ZW50TWVkaWFFbGVtZW50RGlkQ2hhbmdlKHVpbnQ2NF90KSBvdmVycmlkZTsKKyAgICB2b2lkIGhh
c01lZGlhU2Vzc2lvbldpdGhBY3RpdmVNZWRpYUVsZW1lbnRzRGlkQ2hhbmdlKGJvb2wpIGZpbmFs
OworICAgIHZvaWQgbWVkaWFTZXNzaW9uTWV0YWRhdGFEaWRDaGFuZ2UoY29uc3QgV2ViQ29yZTo6
TWVkaWFTZXNzaW9uTWV0YWRhdGEmKSBmaW5hbDsKKyAgICB2b2lkIGZvY3VzZWRDb250ZW50TWVk
aWFFbGVtZW50RGlkQ2hhbmdlKHVpbnQ2NF90KSBmaW5hbDsKICNlbmRpZgogCiAjaWYgRU5BQkxF
KFNVQlRMRV9DUllQVE8pCi0gICAgYm9vbCB3cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50
OF90PiYsIFZlY3Rvcjx1aW50OF90PiYpIGNvbnN0IG92ZXJyaWRlOwotICAgIGJvb2wgdW53cmFw
Q3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90PiYsIFZlY3Rvcjx1aW50OF90PiYpIGNvbnN0
IG92ZXJyaWRlOworICAgIGJvb2wgd3JhcENyeXB0b0tleShjb25zdCBWZWN0b3I8dWludDhfdD4m
LCBWZWN0b3I8dWludDhfdD4mKSBjb25zdCBmaW5hbDsKKyAgICBib29sIHVud3JhcENyeXB0b0tl
eShjb25zdCBWZWN0b3I8dWludDhfdD4mLCBWZWN0b3I8dWludDhfdD4mKSBjb25zdCBmaW5hbDsK
ICNlbmRpZgogCiAjaWYgRU5BQkxFKFRFTEVQSE9ORV9OVU1CRVJfREVURUNUSU9OKSAmJiBQTEFU
Rk9STShNQUMpCi0gICAgdm9pZCBoYW5kbGVUZWxlcGhvbmVOdW1iZXJDbGljayhjb25zdCBTdHJp
bmcmIG51bWJlciwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKSBvdmVycmlkZTsKKyAgICB2b2lk
IGhhbmRsZVRlbGVwaG9uZU51bWJlckNsaWNrKGNvbnN0IFN0cmluZyYgbnVtYmVyLCBjb25zdCBX
ZWJDb3JlOjpJbnRQb2ludCYpIGZpbmFsOwogI2VuZGlmCisKICNpZiBFTkFCTEUoU0VSVklDRV9D
T05UUk9MUykKLSAgICB2b2lkIGhhbmRsZVNlbGVjdGlvblNlcnZpY2VDbGljayhXZWJDb3JlOjpG
cmFtZVNlbGVjdGlvbiYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiB0ZWxlcGhvbmVOdW1iZXJzLCBj
b25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIG92ZXJyaWRlOwotICAgIGJvb2wgaGFzUmVsZXZhbnRT
ZWxlY3Rpb25TZXJ2aWNlcyhib29sIGlzVGV4dE9ubHkpIGNvbnN0IG92ZXJyaWRlOworICAgIHZv
aWQgaGFuZGxlU2VsZWN0aW9uU2VydmljZUNsaWNrKFdlYkNvcmU6OkZyYW1lU2VsZWN0aW9uJiwg
Y29uc3QgVmVjdG9yPFN0cmluZz4mIHRlbGVwaG9uZU51bWJlcnMsIGNvbnN0IFdlYkNvcmU6Oklu
dFBvaW50JikgZmluYWw7CisgICAgYm9vbCBoYXNSZWxldmFudFNlbGVjdGlvblNlcnZpY2VzKGJv
b2wgaXNUZXh0T25seSkgY29uc3QgZmluYWw7CiAjZW5kaWYKIAotICAgIGJvb2wgc2hvdWxkRGlz
cGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91
bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHMoKSBjb25zdCBmaW5hbDsKIAotICAgIHZvaWQg
aGFuZGxlQXV0b0ZpbGxCdXR0b25DbGljayhXZWJDb3JlOjpIVE1MSW5wdXRFbGVtZW50Jikgb3Zl
cnJpZGU7CisgICAgdm9pZCBoYW5kbGVBdXRvRmlsbEJ1dHRvbkNsaWNrKFdlYkNvcmU6OkhUTUxJ
bnB1dEVsZW1lbnQmKSBmaW5hbDsKIAogI2lmIEVOQUJMRShXSVJFTEVTU19QTEFZQkFDS19UQVJH
RVQpICYmICFQTEFURk9STShJT1MpCi0gICAgdm9pZCBhZGRQbGF5YmFja1RhcmdldFBpY2tlckNs
aWVudCh1aW50NjRfdCAvKmNvbnRleHRJZCovKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlbW92ZVBs
YXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2NF90IC8qY29udGV4dElkKi8pIG92ZXJyaWRl
OwotICAgIHZvaWQgc2hvd1BsYXliYWNrVGFyZ2V0UGlja2VyKHVpbnQ2NF90IGNvbnRleHRJZCwg
Y29uc3QgV2ViQ29yZTo6SW50UG9pbnQmLCBib29sKSBvdmVycmlkZTsKLSAgICB2b2lkIHBsYXli
YWNrVGFyZ2V0UGlja2VyQ2xpZW50U3RhdGVEaWRDaGFuZ2UodWludDY0X3QsIFdlYkNvcmU6Ok1l
ZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncykgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRNb2Nr
TWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVuYWJsZWQoYm9vbCkgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlclN0YXRlKGNvbnN0IFN0cmluZyYsIFdl
YkNvcmU6Ok1lZGlhUGxheWJhY2tUYXJnZXRDb250ZXh0OjpTdGF0ZSkgb3ZlcnJpZGU7CisgICAg
dm9pZCBhZGRQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudCh1aW50NjRfdCAvKmNvbnRleHRJZCov
KSBmaW5hbDsKKyAgICB2b2lkIHJlbW92ZVBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2
NF90IC8qY29udGV4dElkKi8pIGZpbmFsOworICAgIHZvaWQgc2hvd1BsYXliYWNrVGFyZ2V0UGlj
a2VyKHVpbnQ2NF90IGNvbnRleHRJZCwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmLCBib29sKSBm
aW5hbDsKKyAgICB2b2lkIHBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50U3RhdGVEaWRDaGFuZ2Uo
dWludDY0X3QsIFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncykgZmluYWw7
CisgICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVuYWJsZWQoYm9vbCkg
ZmluYWw7CisgICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlclN0YXRlKGNv
bnN0IFN0cmluZyYsIFdlYkNvcmU6Ok1lZGlhUGxheWJhY2tUYXJnZXRDb250ZXh0OjpTdGF0ZSkg
ZmluYWw7CiAjZW5kaWYKIAotICAgIHZvaWQgaW1hZ2VPck1lZGlhRG9jdW1lbnRTaXplQ2hhbmdl
ZChjb25zdCBXZWJDb3JlOjpJbnRTaXplJikgb3ZlcnJpZGU7Ci0jaWYgRU5BQkxFKFZJREVPKQot
I2lmIFVTRShHU1RSRUFNRVIpCi0gICAgdm9pZCByZXF1ZXN0SW5zdGFsbE1pc3NpbmdNZWRpYVBs
dWdpbnMoY29uc3QgU3RyaW5nJiAvKmRldGFpbHMqLywgY29uc3QgU3RyaW5nJiAvKmRlc2NyaXB0
aW9uKi8sIFdlYkNvcmU6Ok1lZGlhUGxheWVyUmVxdWVzdEluc3RhbGxNaXNzaW5nUGx1Z2luc0Nh
bGxiYWNrJikgb3ZlcnJpZGU7Ci0jZW5kaWYKKyAgICB2b2lkIGltYWdlT3JNZWRpYURvY3VtZW50
U2l6ZUNoYW5nZWQoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYpIGZpbmFsOworCisjaWYgRU5BQkxF
KFZJREVPKSAmJiBVU0UoR1NUUkVBTUVSKQorICAgIHZvaWQgcmVxdWVzdEluc3RhbGxNaXNzaW5n
TWVkaWFQbHVnaW5zKGNvbnN0IFN0cmluZyYgLypkZXRhaWxzKi8sIGNvbnN0IFN0cmluZyYgLypk
ZXNjcmlwdGlvbiovLCBXZWJDb3JlOjpNZWRpYVBsYXllclJlcXVlc3RJbnN0YWxsTWlzc2luZ1Bs
dWdpbnNDYWxsYmFjayYpIGZpbmFsOwogI2VuZGlmCiAKLSAgICB2b2lkIGRpZEludmFsaWRhdGVE
b2N1bWVudE1hcmtlclJlY3RzKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRJbnZhbGlkYXRlRG9j
dW1lbnRNYXJrZXJSZWN0cygpIGZpbmFsOwogCiAgICAgU3RyaW5nIG1fY2FjaGVkVG9vbFRpcDsK
ICAgICBtdXRhYmxlIFJlZlB0cjxXZWJGcmFtZT4gbV9jYWNoZWRGcmFtZVNldExhcmdlc3RGcmFt
ZTsKLSAgICBtdXRhYmxlIGJvb2wgbV9jYWNoZWRNYWluRnJhbWVIYXNIb3Jpem9udGFsU2Nyb2xs
YmFyOwotICAgIG11dGFibGUgYm9vbCBtX2NhY2hlZE1haW5GcmFtZUhhc1ZlcnRpY2FsU2Nyb2xs
YmFyOworICAgIG11dGFibGUgYm9vbCBtX2NhY2hlZE1haW5GcmFtZUhhc0hvcml6b250YWxTY3Jv
bGxiYXIgeyBmYWxzZSB9OworICAgIG11dGFibGUgYm9vbCBtX2NhY2hlZE1haW5GcmFtZUhhc1Zl
cnRpY2FsU2Nyb2xsYmFyIHsgZmFsc2UgfTsKIAotICAgIFdlYlBhZ2UqIG1fcGFnZTsKKyAgICBX
ZWJQYWdlJiBtX3BhZ2U7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50
LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9y
Q2xpZW50LmNwcAppbmRleCA1NGIyN2I0NDA0ODUyNjllNWU4N2Y4MmQwZmI1MDJhMWYwMjJhYzMz
Li44YjgwNzU1MmM0MTE0NTI2MjQ4ODAzODNmOWQzMmFiYWEwNzZiZWZiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5j
cHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0
b3JDbGllbnQuY3BwCkBAIC0yMzgsMjEgKzIzOCwyMSBAQCB2b2lkIFdlYkVkaXRvckNsaWVudDo6
Z2V0Q2xpZW50UGFzdGVib2FyZERhdGFGb3JSYW5nZShSYW5nZSogcmFuZ2UsIFZlY3RvcjxTdHJp
bgogICAgIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVFZGl0b3JDbGllbnQoKS5nZXRQYXN0ZWJvYXJk
RGF0YUZvclJhbmdlKCptX3BhZ2UsIHJhbmdlLCBwYXN0ZWJvYXJkVHlwZXMsIHBhc3RlYm9hcmRE
YXRhKTsKIH0KIAotdm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb1N0ZXAoUGFzc1Jl
ZlB0cjxVbmRvU3RlcD4gc3RlcCkKK3ZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9T
dGVwKFVuZG9TdGVwJiBzdGVwKQogewogICAgIC8vIEZJWE1FOiBBZGQgYXNzZXJ0aW9uIHRoYXQg
dGhlIGNvbW1hbmQgYmVpbmcgcmVhcHBsaWVkIGlzIHRoZSBzYW1lIGNvbW1hbmQgdGhhdCBpcwog
ICAgIC8vIGJlaW5nIHBhc3NlZCB0byB1cy4KICAgICBpZiAobV9wYWdlLT5pc0luUmVkbygpKQog
ICAgICAgICByZXR1cm47CiAKLSAgICBSZWZQdHI8V2ViVW5kb1N0ZXA+IHdlYlN0ZXAgPSBXZWJV
bmRvU3RlcDo6Y3JlYXRlKHN0ZXApOwotICAgIG1fcGFnZS0+YWRkV2ViVW5kb1N0ZXAod2ViU3Rl
cC0+c3RlcElEKCksIHdlYlN0ZXAuZ2V0KCkpOwotICAgIHVpbnQzMl90IGVkaXRBY3Rpb24gPSBz
dGF0aWNfY2FzdDx1aW50MzJfdD4od2ViU3RlcC0+c3RlcCgpLT5lZGl0aW5nQWN0aW9uKCkpOwor
ICAgIGF1dG8gd2ViU3RlcCA9IFdlYlVuZG9TdGVwOjpjcmVhdGUoJnN0ZXApOworICAgIGF1dG8g
ZWRpdEFjdGlvbiA9IHN0YXRpY19jYXN0PHVpbnQzMl90Pih3ZWJTdGVwLT5zdGVwKCktPmVkaXRp
bmdBY3Rpb24oKSk7CiAKKyAgICBtX3BhZ2UtPmFkZFdlYlVuZG9TdGVwKHdlYlN0ZXAtPnN0ZXBJ
RCgpLCB3ZWJTdGVwLnB0cigpKTsKICAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6UmVnaXN0ZXJFZGl0Q29tbWFuZEZvclVuZG8od2ViU3RlcC0+c3RlcElEKCksIGVkaXRB
Y3Rpb24pKTsKIH0KIAotdm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyUmVkb1N0ZXAoUGFz
c1JlZlB0cjxVbmRvU3RlcD4pCit2b2lkIFdlYkVkaXRvckNsaWVudDo6cmVnaXN0ZXJSZWRvU3Rl
cChVbmRvU3RlcCYpCiB7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oCmluZGV4IDhkODE3NGRjOTEz
YWY1ZTJjYjMwMTgwNzQyMDVhZDk1ODE5NjRhNjAuLmNlMmJjYzQ3MTg4NGFlZTFkOWRhNWMyZGE3
YzVjNzhiNmVmODU0ZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
Q29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuaApAQCAtNzEsOCArNzEsOCBAQCBw
cml2YXRlOgogICAgIHZvaWQgZGlkV3JpdGVTZWxlY3Rpb25Ub1Bhc3RlYm9hcmQoKSBmaW5hbDsK
ICAgICB2b2lkIGdldENsaWVudFBhc3RlYm9hcmREYXRhRm9yUmFuZ2UoV2ViQ29yZTo6UmFuZ2Uq
LCBWZWN0b3I8U3RyaW5nPiYgcGFzdGVib2FyZFR5cGVzLCBWZWN0b3I8UmVmUHRyPFdlYkNvcmU6
OlNoYXJlZEJ1ZmZlcj4+JiBwYXN0ZWJvYXJkRGF0YSkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBy
ZWdpc3RlclVuZG9TdGVwKFBhc3NSZWZQdHI8V2ViQ29yZTo6VW5kb1N0ZXA+KSBmaW5hbDsKLSAg
ICB2b2lkIHJlZ2lzdGVyUmVkb1N0ZXAoUGFzc1JlZlB0cjxXZWJDb3JlOjpVbmRvU3RlcD4pIGZp
bmFsOworICAgIHZvaWQgcmVnaXN0ZXJVbmRvU3RlcChXZWJDb3JlOjpVbmRvU3RlcCYpIGZpbmFs
OworICAgIHZvaWQgcmVnaXN0ZXJSZWRvU3RlcChXZWJDb3JlOjpVbmRvU3RlcCYpIGZpbmFsOwog
ICAgIHZvaWQgY2xlYXJVbmRvUmVkb09wZXJhdGlvbnMoKSBmaW5hbDsKIAogICAgIGJvb2wgY2Fu
Q29weUN1dChXZWJDb3JlOjpGcmFtZSosIGJvb2wgZGVmYXVsdFZhbHVlKSBjb25zdCBmaW5hbDsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2Vi
RnJhbWVMb2FkZXJDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3Jl
U3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKaW5kZXggZjE3NzVjNjg2ZjhmNDA2NTA4
Njg1MzUyNWUwMGYxZGQyYjEzMWJkZi4uOGE3NTk0ZTAxM2IyMzE3YTNhMzI3YmFiZDQ0OTJmOTM0
ZTIwMWRiZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3Vw
cG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKQEAgLTcwMSw3ICs3
MDEsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZv
clJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9ucwogICAgICAgICBtX2ZyYW1lLT5kaWRSZWNl
aXZlUG9saWN5RGVjaXNpb24obGlzdGVuZXJJRCwgc3RhdGljX2Nhc3Q8UG9saWN5QWN0aW9uPihw
b2xpY3lBY3Rpb24pLCAwLCBkb3dubG9hZElEKTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNs
aWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdh
dGlvbkFjdGlvbiYgbmF2aWdhdGlvbkFjdGlvbiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1
ZXN0LCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4gZm9ybVN0YXRlLCBjb25zdCBTdHJpbmcmIGZyYW1l
TmFtZSwgRnJhbWVQb2xpY3lGdW5jdGlvbiBmdW5jdGlvbikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IE5hdmln
YXRpb25BY3Rpb24mIG5hdmlnYXRpb25BY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVx
dWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBGcmFt
ZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQogewogICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBtX2Zy
YW1lLT5wYWdlKCk7CiAgICAgaWYgKCF3ZWJQYWdlKSB7CkBAIC03MzcsNyArNzM3LDcgQEAgdm9p
ZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dB
Y3Rpb24oY29uc3QgTmF2aWdhdGkKICAgICB3ZWJQYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OkRlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihtX2ZyYW1lLT5mcmFtZUlEKCks
IFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbUZyYW1lKGNvcmVGcmFtZSksIG5hdmlnYXRpb25BY3Rp
b25EYXRhLCByZXF1ZXN0LCBmcmFtZU5hbWUsIGxpc3RlbmVySUQsIFVzZXJEYXRhKFdlYlByb2Nl
c3M6OnNpbmdsZXRvbigpLnRyYW5zZm9ybU9iamVjdHNUb0hhbmRsZXModXNlckRhdGEuZ2V0KCkp
LmdldCgpKSkpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lk
ZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgbmF2aWdh
dGlvbkFjdGlvbiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBQYXNzUmVmUHRyPEZv
cm1TdGF0ZT4gcHJwRm9ybVN0YXRlLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQordm9p
ZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9u
QWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIG5hdmlnYXRpb25BY3Rpb24sIGNvbnN0IFJl
c291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIEZyYW1lUG9saWN5
RnVuY3Rpb24gZnVuY3Rpb24pCiB7CiAgICAgV2ViUGFnZSogd2ViUGFnZSA9IG1fZnJhbWUtPnBh
Z2UoKTsKICAgICBpZiAoIXdlYlBhZ2UpIHsKQEAgLTc1Miw3ICs3NTIsNiBAQCB2b2lkIFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24o
Y29uc3QgTmF2aWdhdAogICAgIH0KIAogICAgIFJlZlB0cjxBUEk6Ok9iamVjdD4gdXNlckRhdGE7
Ci0gICAgUmVmUHRyPEZvcm1TdGF0ZT4gZm9ybVN0YXRlID0gcHJwRm9ybVN0YXRlOwogCiAgICAg
UmVmUHRyPEluamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbj4gYWN0aW9uID0gSW5qZWN0ZWRC
dW5kbGVOYXZpZ2F0aW9uQWN0aW9uOjpjcmVhdGUobV9mcmFtZSwgbmF2aWdhdGlvbkFjdGlvbiwg
Zm9ybVN0YXRlKTsKIApAQCAtNzgyLDcgKzc4MSw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0
CiAgICAgY2FzZSBOYXZpZ2F0aW9uVHlwZTo6Rm9ybVN1Ym1pdHRlZDoKICAgICBjYXNlIE5hdmln
YXRpb25UeXBlOjpGb3JtUmVzdWJtaXR0ZWQ6CiAgICAgICAgIGlmIChmb3JtU3RhdGUpCi0gICAg
ICAgICAgICBvcmlnaW5hdGluZ0ZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZvcm1T
dGF0ZS0+c291cmNlRG9jdW1lbnQoKS0+ZnJhbWUoKSk7CisgICAgICAgICAgICBvcmlnaW5hdGlu
Z0ZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZvcm1TdGF0ZS0+c291cmNlRG9jdW1l
bnQoKS5mcmFtZSgpKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBOYXZpZ2F0aW9uVHlwZTo6
QmFja0ZvcndhcmQ6CiAgICAgY2FzZSBOYXZpZ2F0aW9uVHlwZTo6UmVsb2FkOgpAQCAtODQzLDQw
ICs4NDIsMzYgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hVbmFibGVUb0lt
cGxlbWVudFBvbGljeShjb25zdCBSZXNvdXJjZUVycm9yJgogICAgIHdlYlBhZ2UtPnNlbmQoTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6VW5hYmxlVG9JbXBsZW1lbnRQb2xpY3kobV9mcmFtZS0+ZnJh
bWVJRCgpLCBlcnJvciwgVXNlckRhdGEoV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkudHJhbnNmb3Jt
T2JqZWN0c1RvSGFuZGxlcyh1c2VyRGF0YS5nZXQoKSkuZ2V0KCkpKSk7CiB9CiAKLXZvaWQgV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChQYXNzUmVmUHRy
PEZvcm1TdGF0ZT4gcHJwRm9ybVN0YXRlKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJlZjxGb3JtU3RhdGU+JiYgZm9ybVN0YXRlKQogewot
ICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7CisgICAgYXV0byogd2ViUGFn
ZSA9IG1fZnJhbWUtPnBhZ2UoKTsKICAgICBpZiAoIXdlYlBhZ2UpCiAgICAgICAgIHJldHVybjsK
IAotICAgIFJlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSA9IHBycEZvcm1TdGF0ZTsKLSAgICBI
VE1MRm9ybUVsZW1lbnQqIGZvcm0gPSBmb3JtU3RhdGUtPmZvcm0oKTsKKyAgICBhdXRvJiBmb3Jt
ID0gZm9ybVN0YXRlLT5mb3JtKCk7CiAKLSAgICBXZWJGcmFtZSogc291cmNlRnJhbWUgPSBXZWJG
cmFtZTo6ZnJvbUNvcmVGcmFtZSgqZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLT5mcmFtZSgp
KTsKKyAgICBBU1NFUlQoZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLmZyYW1lKCkpOworICAg
IGF1dG8qIHNvdXJjZUZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZvcm1TdGF0ZS0+
c291cmNlRG9jdW1lbnQoKS5mcmFtZSgpKTsKICAgICBBU1NFUlQoc291cmNlRnJhbWUpOwogCi0g
ICAgd2ViUGFnZS0+aW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCkud2lsbFNlbmRTdWJtaXRFdmVu
dCh3ZWJQYWdlLCBmb3JtLCBtX2ZyYW1lLCBzb3VyY2VGcmFtZSwgZm9ybVN0YXRlLT50ZXh0Rmll
bGRWYWx1ZXMoKSk7CisgICAgd2ViUGFnZS0+aW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCkud2ls
bFNlbmRTdWJtaXRFdmVudCh3ZWJQYWdlLCAmZm9ybSwgbV9mcmFtZSwgc291cmNlRnJhbWUsIGZv
cm1TdGF0ZS0+dGV4dEZpZWxkVmFsdWVzKCkpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xp
ZW50OjpkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiBwcnBGb3Jt
U3RhdGUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24pCit2b2lkIFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKEZvcm1TdGF0ZSYgZm9ybVN0YXRlLCBGcmFt
ZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQogewogICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBtX2Zy
YW1lLT5wYWdlKCk7CiAgICAgaWYgKCF3ZWJQYWdlKQogICAgICAgICByZXR1cm47CiAKLSAgICAv
LyBGSVhNRTogUGFzcyBtb3JlIG9mIHRoZSBmb3JtIHN0YXRlLgotICAgIFJlZlB0cjxGb3JtU3Rh
dGU+IGZvcm1TdGF0ZSA9IHBycEZvcm1TdGF0ZTsKLSAgICAKLSAgICBIVE1MRm9ybUVsZW1lbnQq
IGZvcm0gPSBmb3JtU3RhdGUtPmZvcm0oKTsKKyAgICBhdXRvJiBmb3JtID0gZm9ybVN0YXRlLmZv
cm0oKTsKIAotICAgIFdlYkZyYW1lKiBzb3VyY2VGcmFtZSA9IFdlYkZyYW1lOjpmcm9tQ29yZUZy
YW1lKCpmb3JtU3RhdGUtPnNvdXJjZURvY3VtZW50KCktPmZyYW1lKCkpOworICAgIGF1dG8qIHNv
dXJjZUZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZvcm1TdGF0ZS5zb3VyY2VEb2N1
bWVudCgpLmZyYW1lKCkpOwogICAgIEFTU0VSVChzb3VyY2VGcmFtZSk7CiAKLSAgICBjb25zdCBW
ZWN0b3I8c3RkOjpwYWlyPFN0cmluZywgU3RyaW5nPj4mIHZhbHVlcyA9IGZvcm1TdGF0ZS0+dGV4
dEZpZWxkVmFsdWVzKCk7CisgICAgYXV0byYgdmFsdWVzID0gZm9ybVN0YXRlLnRleHRGaWVsZFZh
bHVlcygpOwogCiAgICAgUmVmUHRyPEFQSTo6T2JqZWN0PiB1c2VyRGF0YTsKLSAgICB3ZWJQYWdl
LT5pbmplY3RlZEJ1bmRsZUZvcm1DbGllbnQoKS53aWxsU3VibWl0Rm9ybSh3ZWJQYWdlLCBmb3Jt
LCBtX2ZyYW1lLCBzb3VyY2VGcmFtZSwgdmFsdWVzLCB1c2VyRGF0YSk7Ci0KKyAgICB3ZWJQYWdl
LT5pbmplY3RlZEJ1bmRsZUZvcm1DbGllbnQoKS53aWxsU3VibWl0Rm9ybSh3ZWJQYWdlLCAmZm9y
bSwgbV9mcmFtZSwgc291cmNlRnJhbWUsIHZhbHVlcywgdXNlckRhdGEpOwogCiAgICAgdWludDY0
X3QgbGlzdGVuZXJJRCA9IG1fZnJhbWUtPnNldFVwUG9saWN5TGlzdGVuZXIoV1RGTW92ZShmdW5j
dGlvbikpOwogCkBAIC0xNDAwLDE0ICsxMzk1LDEzIEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZChEb2N1bWVudExvYWRlciAqZG9j
CiAgICAgbV9mcmFtZS0+Y29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKGRvY3VtZW50
TG9hZGVyLCBzZXNzaW9uSUQsIHJlcXVlc3QsIHJlc3BvbnNlKTsKIH0KIAotUmVmUHRyPEZyYW1l
PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlRnJhbWUoY29uc3QgVVJMJiB1cmwsIGNvbnN0
IFN0cmluZyYgbmFtZSwgSFRNTEZyYW1lT3duZXJFbGVtZW50KiBvd25lckVsZW1lbnQsCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgU3Ry
aW5nJiByZWZlcnJlciwgYm9vbCAvKmFsbG93c1Njcm9sbGluZyovLCBpbnQgLyptYXJnaW5XaWR0
aCovLCBpbnQgLyptYXJnaW5IZWlnaHQqLykKK1JlZlB0cjxGcmFtZT4gV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIG5hbWUsIEhU
TUxGcmFtZU93bmVyRWxlbWVudCYgb3duZXJFbGVtZW50LAorICAgIGNvbnN0IFN0cmluZyYgcmVm
ZXJyZXIsIGJvb2wgLyphbGxvd3NTY3JvbGxpbmcqLywgaW50IC8qbWFyZ2luV2lkdGgqLywgaW50
IC8qbWFyZ2luSGVpZ2h0Ki8pCiB7Ci0gICAgV2ViUGFnZSogd2ViUGFnZSA9IG1fZnJhbWUtPnBh
Z2UoKTsKKyAgICBhdXRvKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpOwogCi0gICAgUmVmUHRy
PFdlYkZyYW1lPiBzdWJmcmFtZSA9IFdlYkZyYW1lOjpjcmVhdGVTdWJmcmFtZSh3ZWJQYWdlLCBu
YW1lLCBvd25lckVsZW1lbnQpOwotCi0gICAgRnJhbWUqIGNvcmVTdWJmcmFtZSA9IHN1YmZyYW1l
LT5jb3JlRnJhbWUoKTsKKyAgICBhdXRvIHN1YmZyYW1lID0gV2ViRnJhbWU6OmNyZWF0ZVN1YmZy
YW1lKHdlYlBhZ2UsIG5hbWUsICZvd25lckVsZW1lbnQpOworICAgIGF1dG8qIGNvcmVTdWJmcmFt
ZSA9IHN1YmZyYW1lLT5jb3JlRnJhbWUoKTsKICAgICBpZiAoIWNvcmVTdWJmcmFtZSkKICAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CiAKQEAgLTE0MjcsNyArMTQyMSw3IEBAIFJlZlB0cjxGcmFtZT4g
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBT
dHJpbmcmIG5hCiAgICAgcmV0dXJuIGNvcmVTdWJmcmFtZTsKIH0KIAotUmVmUHRyPFdpZGdldD4g
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiwgSFRNTFBs
dWdJbkVsZW1lbnQqIHBsdWdpbkVsZW1lbnQsIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBWZWN0b3I8
U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzLCBj
b25zdCBTdHJpbmcmIG1pbWVUeXBlLCBib29sIGxvYWRNYW51YWxseSkKK1JlZlB0cjxXaWRnZXQ+
IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYsIEhUTUxQ
bHVnSW5FbGVtZW50JiBwbHVnaW5FbGVtZW50LCBjb25zdCBVUkwmIHVybCwgY29uc3QgVmVjdG9y
PFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcywg
Y29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgYm9vbCBsb2FkTWFudWFsbHkpCiB7CiAgICAgQVNTRVJU
KHBhcmFtTmFtZXMuc2l6ZSgpID09IHBhcmFtVmFsdWVzLnNpemUoKSk7CiAgICAgQVNTRVJUKG1f
ZnJhbWUtPnBhZ2UoKSk7CkBAIC0xNDQ0LDExICsxNDM4LDExIEBAIFJlZlB0cjxXaWRnZXQ+IFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYsIEhUTUxQbHVn
SW5FbGVtCiAjZW5kaWYKIAogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQotICAgIGF1
dG8gcGx1Z2luID0gbV9mcmFtZS0+cGFnZSgpLT5jcmVhdGVQbHVnaW4obV9mcmFtZSwgcGx1Z2lu
RWxlbWVudCwgcGFyYW1ldGVycywgcGFyYW1ldGVycy5taW1lVHlwZSk7CisgICAgYXV0byBwbHVn
aW4gPSBtX2ZyYW1lLT5wYWdlKCktPmNyZWF0ZVBsdWdpbihtX2ZyYW1lLCAmcGx1Z2luRWxlbWVu
dCwgcGFyYW1ldGVycywgcGFyYW1ldGVycy5taW1lVHlwZSk7CiAgICAgaWYgKCFwbHVnaW4pCiAg
ICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgcmV0dXJuIFBsdWdpblZpZXc6OmNyZWF0ZShw
bHVnaW5FbGVtZW50LCBXVEZNb3ZlKHBsdWdpbiksIHBhcmFtZXRlcnMpOworICAgIHJldHVybiBQ
bHVnaW5WaWV3OjpjcmVhdGUocGx1Z2luRWxlbWVudCwgcGx1Z2luLnJlbGVhc2VOb25OdWxsKCks
IHBhcmFtZXRlcnMpOwogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0ocGx1Z2luRWxlbWVudCk7CiAg
ICAgcmV0dXJuIG51bGxwdHI7CkBAIC0xNDU4LDEzICsxNDUyLDE0IEBAIFJlZlB0cjxXaWRnZXQ+
IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYsIEhUTUxQ
bHVnSW5FbGVtCiB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpyZWNyZWF0ZVBsdWdpbihXaWRn
ZXQqIHdpZGdldCkKIHsKICNpZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKLSAgICBBU1NF
UlQod2lkZ2V0ICYmIHdpZGdldC0+aXNQbHVnaW5WaWV3QmFzZSgpKTsKKyAgICBBU1NFUlQod2lk
Z2V0KTsKKyAgICBBU1NFUlQod2lkZ2V0LT5pc1BsdWdpblZpZXdCYXNlKCkpOwogICAgIEFTU0VS
VChtX2ZyYW1lLT5wYWdlKCkpOwogCi0gICAgUGx1Z2luVmlldyogcGx1Z2luVmlldyA9IHN0YXRp
Y19jYXN0PFBsdWdpblZpZXcqPih3aWRnZXQpOworICAgIGF1dG8mIHBsdWdpblZpZXcgPSBzdGF0
aWNfY2FzdDxQbHVnaW5WaWV3Jj4oKndpZGdldCk7CiAgICAgU3RyaW5nIG5ld01JTUVUeXBlOwot
ICAgIGF1dG8gcGx1Z2luID0gbV9mcmFtZS0+cGFnZSgpLT5jcmVhdGVQbHVnaW4obV9mcmFtZSwg
cGx1Z2luVmlldy0+cGx1Z2luRWxlbWVudCgpLCBwbHVnaW5WaWV3LT5pbml0aWFsUGFyYW1ldGVy
cygpLCBuZXdNSU1FVHlwZSk7Ci0gICAgcGx1Z2luVmlldy0+cmVjcmVhdGVBbmRJbml0aWFsaXpl
KFdURk1vdmUocGx1Z2luKSk7CisgICAgYXV0byBwbHVnaW4gPSBtX2ZyYW1lLT5wYWdlKCktPmNy
ZWF0ZVBsdWdpbihtX2ZyYW1lLCBwbHVnaW5WaWV3LnBsdWdpbkVsZW1lbnQoKSwgcGx1Z2luVmll
dy5pbml0aWFsUGFyYW1ldGVycygpLCBuZXdNSU1FVHlwZSk7CisgICAgcGx1Z2luVmlldy5yZWNy
ZWF0ZUFuZEluaXRpYWxpemUocGx1Z2luLnJlbGVhc2VOb25OdWxsKCkpOwogI2Vsc2UKICAgICBV
TlVTRURfUEFSQU0od2lkZ2V0KTsKICNlbmRpZgpAQCAtMTQ3Nyw5ICsxNDcyLDEwIEBAIHZvaWQg
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OnJlZGlyZWN0RGF0YVRvUGx1Z2luKFdpZGdldCogcGx1Z2lu
V2lkZ2V0KQogfQogCiAjaWYgRU5BQkxFKFdFQkdMKQorCiBXZWJDb3JlOjpXZWJHTExvYWRQb2xp
Y3kgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OndlYkdMUG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYg
dXJsKSBjb25zdAogewotICAgIGlmIChXZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgp
KQorICAgIGlmIChhdXRvKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpKQogICAgICAgICByZXR1
cm4gd2ViUGFnZS0+d2ViR0xQb2xpY3lGb3JVUkwobV9mcmFtZSwgdXJsKTsKIAogICAgIHJldHVy
biBXZWJHTEFsbG93Q3JlYXRpb247CkBAIC0xNDg3LDMxICsxNDgzLDMyIEBAIFdlYkNvcmU6Oldl
YkdMTG9hZFBvbGljeSBXZWJGcmFtZUxvYWRlckNsaWVudDo6d2ViR0xQb2xpY3lGb3JVUkwoY29u
c3QgU3RyaW5nJiB1CiAKIFdlYkNvcmU6OldlYkdMTG9hZFBvbGljeSBXZWJGcmFtZUxvYWRlckNs
aWVudDo6cmVzb2x2ZVdlYkdMUG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYgdXJsKSBjb25zdAog
ewotICAgIGlmIChXZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpKQorICAgIGlmIChh
dXRvKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpKQogICAgICAgICByZXR1cm4gd2ViUGFnZS0+
cmVzb2x2ZVdlYkdMUG9saWN5Rm9yVVJMKG1fZnJhbWUsIHVybCk7CiAKICAgICByZXR1cm4gV2Vi
R0xBbGxvd0NyZWF0aW9uOwogfQotI2VuZGlmIC8vIEVOQUJMRShXRUJHTCkKIAotUGFzc1JlZlB0
cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNv
bnN0IEludFNpemUmIHBsdWdpblNpemUsIEhUTUxBcHBsZXRFbGVtZW50KiBhcHBsZXRFbGVtZW50
LCBjb25zdCBVUkwmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVj
dG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKQorI2VuZGlmCisKK1JlZlB0cjxXaWRnZXQ+IFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmIHBs
dWdpblNpemUsIEhUTUxBcHBsZXRFbGVtZW50JiBhcHBsZXRFbGVtZW50LCBjb25zdCBVUkwmLCBj
b25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBh
cmFtVmFsdWVzKQogewogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQotICAgIGF1dG8g
cGx1Z2luID0gY3JlYXRlUGx1Z2luKHBsdWdpblNpemUsIGFwcGxldEVsZW1lbnQsIFVSTCgpLCBw
YXJhbU5hbWVzLCBwYXJhbVZhbHVlcywgYXBwbGV0RWxlbWVudC0+c2VydmljZVR5cGUoKSwgZmFs
c2UpOworICAgIGF1dG8gcGx1Z2luID0gY3JlYXRlUGx1Z2luKHBsdWdpblNpemUsIGFwcGxldEVs
ZW1lbnQsIFVSTCgpLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcywgYXBwbGV0RWxlbWVudC5zZXJ2
aWNlVHlwZSgpLCBmYWxzZSk7CiAgICAgaWYgKCFwbHVnaW4pIHsKLSAgICAgICAgaWYgKFdlYlBh
Z2UqIHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCkpIHsKLSAgICAgICAgICAgIFN0cmluZyBmcmFt
ZVVSTFN0cmluZyA9IG1fZnJhbWUtPmNvcmVGcmFtZSgpLT5sb2FkZXIoKS5kb2N1bWVudExvYWRl
cigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwotICAgICAgICAgICAgU3RyaW5nIHBhZ2VVUkxT
dHJpbmcgPSB3ZWJQYWdlLT5jb3JlUGFnZSgpLT5tYWluRnJhbWUoKS5sb2FkZXIoKS5kb2N1bWVu
dExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwotICAgICAgICAgICAgd2ViUGFnZS0+
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRGYWlsVG9Jbml0aWFsaXplUGx1Z2luKGFw
cGxldEVsZW1lbnQtPnNlcnZpY2VUeXBlKCksIGZyYW1lVVJMU3RyaW5nLCBwYWdlVVJMU3RyaW5n
KSk7CisgICAgICAgIGlmIChhdXRvKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpKSB7CisgICAg
ICAgICAgICBhdXRvIGZyYW1lVVJMU3RyaW5nID0gbV9mcmFtZS0+Y29yZUZyYW1lKCktPmxvYWRl
cigpLmRvY3VtZW50TG9hZGVyKCktPnJlc3BvbnNlVVJMKCkuc3RyaW5nKCk7CisgICAgICAgICAg
ICBhdXRvIHBhZ2VVUkxTdHJpbmcgPSB3ZWJQYWdlLT5jb3JlUGFnZSgpLT5tYWluRnJhbWUoKS5s
b2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOworICAgICAg
ICAgICAgd2ViUGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRGYWlsVG9Jbml0
aWFsaXplUGx1Z2luKGFwcGxldEVsZW1lbnQuc2VydmljZVR5cGUoKSwgZnJhbWVVUkxTdHJpbmcs
IHBhZ2VVUkxTdHJpbmcpKTsKICAgICAgICAgfQogICAgIH0KLSAgICByZXR1cm4gV1RGTW92ZShw
bHVnaW4pOworICAgIHJldHVybiBwbHVnaW47CiAjZWxzZQogICAgIFVOVVNFRF9QQVJBTShwbHVn
aW5TaXplKTsKICAgICBVTlVTRURfUEFSQU0oYXBwbGV0RWxlbWVudCk7CiAgICAgVU5VU0VEX1BB
UkFNKHBhcmFtTmFtZXMpOwogICAgIFVOVVNFRF9QQVJBTShwYXJhbVZhbHVlcyk7Ci0gICAgcmV0
dXJuIDA7CisgICAgcmV0dXJuIG51bGxwdHI7CiAjZW5kaWYKIH0KIApAQCAtMTcxNywxMyArMTcx
NCwxMyBAQCBib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRGb3JjZVVuaXZlcnNhbEFj
Y2Vzc0Zyb21Mb2NhbFVSTChjb25zdCBXZWJDb3JlOgogICAgIHJldHVybiB3ZWJQYWdlLT5pbmpl
Y3RlZEJ1bmRsZUxvYWRlckNsaWVudCgpLnNob3VsZEZvcmNlVW5pdmVyc2FsQWNjZXNzRnJvbUxv
Y2FsVVJMKHdlYlBhZ2UsIHVybC5zdHJpbmcoKSk7CiB9CiAKLVBhc3NSZWZQdHI8RnJhbWVOZXR3
b3JraW5nQ29udGV4dD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtpbmdDb250
ZXh0KCkKK1JlZjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6
Y3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKQogewotICAgIGF1dG8gY29udGV4dCA9IFdlYkZyYW1l
TmV0d29ya2luZ0NvbnRleHQ6OmNyZWF0ZShtX2ZyYW1lKTsKLSAgICByZXR1cm4gV1RGTW92ZShj
b250ZXh0KTsKKyAgICByZXR1cm4gV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dDo6Y3JlYXRlKG1f
ZnJhbWUpOwogfQogCiAjaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQorCiB2b2lkIFdlYkZy
YW1lTG9hZGVyQ2xpZW50Ojpjb250ZW50RmlsdGVyRGlkQmxvY2tMb2FkKFdlYkNvcmU6OkNvbnRl
bnRGaWx0ZXJVbmJsb2NrSGFuZGxlciB1bmJsb2NrSGFuZGxlcikKIHsKICAgICBpZiAoIXVuYmxv
Y2tIYW5kbGVyLm5lZWRzVUlQcm9jZXNzKCkpIHsKQEAgLTE3MzQsMTIgKzE3MzEsMTUgQEAgdm9p
ZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y29udGVudEZpbHRlckRpZEJsb2NrTG9hZChXZWJDb3Jl
OjpDb250ZW50RmlsdGVyVW5ibG8KICAgICBpZiAoV2ViUGFnZSogd2ViUGFnZSB7IG1fZnJhbWUt
PnBhZ2UoKSB9KQogICAgICAgICB3ZWJQYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OkNvbnRlbnRGaWx0ZXJEaWRCbG9ja0xvYWRGb3JGcmFtZSh1bmJsb2NrSGFuZGxlciwgbV9mcmFt
ZS0+ZnJhbWVJRCgpKSk7CiB9CisKICNlbmRpZgogCiAjaWYgRU5BQkxFKFJFUVVFU1RfQVVUT0NP
TVBMRVRFKQotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlkUmVxdWVzdEF1dG9jb21wbGV0
ZShQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4pCisKK3ZvaWQgV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmRpZFJlcXVlc3RBdXRvY29tcGxldGUoUmVmPFdlYkNvcmU6OkZvcm1TdGF0ZT4mJikK
IHsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnByZWZldGNoRE5T
KGNvbnN0IFN0cmluZyYgaG9zdG5hbWUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKaW5k
ZXggZGIyZjk0OTE0MDcyNDA3NzczYmQwODZmN2Y4YjlhY2QwN2VlYTc0Ni4uMGI4MjliNGEyOTA3
Yzg0ZTg5MTYwYzE4N2UzOGRlNGFmOTNhNTE5OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGll
bnQuaApAQCAtMzYsNyArMzYsNyBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIGNsYXNzIFBsdWdpblZp
ZXc7CiBjbGFzcyBXZWJGcmFtZTsKICAgICAKLWNsYXNzIFdlYkZyYW1lTG9hZGVyQ2xpZW50IDog
cHVibGljIFdlYkNvcmU6OkZyYW1lTG9hZGVyQ2xpZW50IHsKK2NsYXNzIFdlYkZyYW1lTG9hZGVy
Q2xpZW50IGZpbmFsIDogcHVibGljIFdlYkNvcmU6OkZyYW1lTG9hZGVyQ2xpZW50IHsKIHB1Ymxp
YzoKICAgICBXZWJGcmFtZUxvYWRlckNsaWVudCgpOwogICAgIH5XZWJGcmFtZUxvYWRlckNsaWVu
dCgpOwpAQCAtNDksMjE3ICs0OSwyMTYgQEAgcHVibGljOgogICAgIHZvaWQgc2V0VXNlSWNvbkxv
YWRpbmdDbGllbnQoYm9vbCB1c2VJY29uTG9hZGluZ0NsaWVudCkgeyBtX3VzZUljb25Mb2FkaW5n
Q2xpZW50ID0gdXNlSWNvbkxvYWRpbmdDbGllbnQ7IH0KIAogcHJpdmF0ZToKLSAgICB2b2lkIGZy
YW1lTG9hZGVyRGVzdHJveWVkKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBmcmFtZUxvYWRlckRlc3Ry
b3llZCgpIGZpbmFsOwogCi0gICAgYm9vbCBoYXNIVE1MVmlldygpIGNvbnN0IG92ZXJyaWRlOwot
ICAgIGJvb2wgaGFzV2ViVmlldygpIGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wgaGFzSFRNTFZp
ZXcoKSBjb25zdCBmaW5hbDsKKyAgICBib29sIGhhc1dlYlZpZXcoKSBjb25zdCBmaW5hbDsKICAg
ICAKLSAgICB2b2lkIG1ha2VSZXByZXNlbnRhdGlvbihXZWJDb3JlOjpEb2N1bWVudExvYWRlciop
IG92ZXJyaWRlOworICAgIHZvaWQgbWFrZVJlcHJlc2VudGF0aW9uKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKikgZmluYWw7CiAjaWYgUExBVEZPUk0oSU9TKQotICAgIGJvb2wgZm9yY2VMYXlvdXRP
blJlc3RvcmVGcm9tUGFnZUNhY2hlKCkgb3ZlcnJpZGU7CisgICAgYm9vbCBmb3JjZUxheW91dE9u
UmVzdG9yZUZyb21QYWdlQ2FjaGUoKSBmaW5hbDsKICNlbmRpZgotICAgIHZvaWQgZm9yY2VMYXlv
dXRGb3JOb25IVE1MKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBmb3JjZUxheW91dEZvck5vbkhUTUwo
KSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHNldENvcGllc09uU2Nyb2xsKCkgb3ZlcnJpZGU7Cisg
ICAgdm9pZCBzZXRDb3BpZXNPblNjcm9sbCgpIGZpbmFsOwogICAgIAotICAgIHZvaWQgZGV0YWNo
ZWRGcm9tUGFyZW50MigpIG92ZXJyaWRlOwotICAgIHZvaWQgZGV0YWNoZWRGcm9tUGFyZW50Mygp
IG92ZXJyaWRlOworICAgIHZvaWQgZGV0YWNoZWRGcm9tUGFyZW50MigpIGZpbmFsOworICAgIHZv
aWQgZGV0YWNoZWRGcm9tUGFyZW50MygpIGZpbmFsOwogICAgIAotICAgIHZvaWQgYXNzaWduSWRl
bnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJy
aWRlOworICAgIHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOwogICAgIAotICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2Vu
ZFJlcXVlc3QoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVz
cG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpIG92ZXJyaWRlOwotICAgIGJvb2wgc2hvdWxkVXNlQ3Jl
ZGVudGlhbFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGlj
YXRpb25DaGFsbGVuZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikgb3ZlcnJp
ZGU7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChXZWJDb3JlOjpEb2N1bWVudExv
YWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkgZmlu
YWw7CisgICAgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1bWVu
dExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgZmluYWw7CisgICAgdm9pZCBkaXNw
YXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShXZWJDb3JlOjpEb2N1bWVudExv
YWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6QXV0aGVudGlj
YXRpb25DaGFsbGVuZ2UmKSBmaW5hbDsKICNpZiBVU0UoUFJPVEVDVElPTl9TUEFDRV9BVVRIX0NB
TExCQUNLKQotICAgIGJvb2wgY2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3Qg
V2ViQ29yZTo6UHJvdGVjdGlvblNwYWNlJikgb3ZlcnJpZGU7CisgICAgYm9vbCBjYW5BdXRoZW50
aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpQcm90ZWN0aW9uU3BhY2UmKSBm
aW5hbDsKICNlbmRpZgogI2lmIFBMQVRGT1JNKElPUykKLSAgICBSZXRhaW5QdHI8Q0ZEaWN0aW9u
YXJ5UmVmPiBjb25uZWN0aW9uUHJvcGVydGllcyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllcikgb3ZlcnJpZGU7CisgICAgUmV0YWluUHRyPENGRGljdGlv
bmFyeVJlZj4gY29ubmVjdGlvblByb3BlcnRpZXMoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIGZpbmFsOwogI2VuZGlmCi0gICAgdm9pZCBkaXNwYXRj
aERpZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRl
OwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChXZWJDb3JlOjpEb2N1
bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgaW50IGRhdGFMZW5ndGgpIG92
ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBvdmVycmlkZTsKLSAgICB2b2lk
IGRpc3BhdGNoRGlkRmFpbExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlk
ZTsKLSAgICBib29sIGRpc3BhdGNoRGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlKFdlYkNv
cmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGludCBsZW5ndGgpIG92ZXJyaWRlOworICAg
IHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIq
LCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2UmKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGludCBkYXRh
TGVuZ3RoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgZmluYWw7CisgICAg
dm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmlu
YWw7CisgICAgYm9vbCBkaXNwYXRjaERpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShXZWJD
b3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBpbnQgbGVuZ3RoKSBmaW5hbDsKICNpZiBF
TkFCTEUoREFUQV9ERVRFQ1RJT04pCi0gICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaERhdGFEZXRl
Y3Rpb24oTlNBcnJheSAqZGV0ZWN0aW9uUmVzdWx0cykgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNw
YXRjaERpZEZpbmlzaERhdGFEZXRlY3Rpb24oTlNBcnJheSAqZGV0ZWN0aW9uUmVzdWx0cykgZmlu
YWw7CiAjZW5kaWYKICAgICAKLSAgICB2b2lkIGRpc3BhdGNoRGlkRGlzcGF0Y2hPbmxvYWRFdmVu
dHMoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVNlcnZlclJlZGlyZWN0
Rm9yUHJvdmlzaW9uYWxMb2FkKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZENoYW5n
ZVByb3Zpc2lvbmFsVVJMKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZENhbmNlbENs
aWVudFJlZGlyZWN0KCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxQZXJmb3JtQ2xp
ZW50UmVkaXJlY3QoY29uc3QgV2ViQ29yZTo6VVJMJiwgZG91YmxlIGludGVydmFsLCBkb3VibGUg
ZmlyZURhdGUpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRDaGFuZ2VMb2NhdGlvbldp
dGhpblBhZ2UoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUHVzaFN0YXRlV2l0aGlu
UGFnZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZXBsYWNlU3RhdGVXaXRoaW5Q
YWdlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFBvcFN0YXRlV2l0aGluUGFnZSgp
IG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hXaWxsQ2xvc2UoKSBvdmVycmlkZTsKLSAgICB2
b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUljb24oKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNo
RGlkU3RhcnRQcm92aXNpb25hbExvYWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlk
UmVjZWl2ZVRpdGxlKGNvbnN0IFdlYkNvcmU6OlN0cmluZ1dpdGhEaXJlY3Rpb24mKSBvdmVycmlk
ZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkQ29tbWl0TG9hZChzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6
Okhhc0luc2VjdXJlQ29udGVudD4pIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWls
UHJvdmlzaW9uYWxMb2FkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsK
LSAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbExvYWQoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJv
ciYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hEb2N1bWVudExvYWQoKSBv
dmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZCgpIG92ZXJyaWRlOwotCi0g
ICAgdm9pZCBkaXNwYXRjaERpZFJlYWNoTGF5b3V0TWlsZXN0b25lKFdlYkNvcmU6OkxheW91dE1p
bGVzdG9uZXMpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRMYXlvdXQoKSBvdmVycmlk
ZTsKLQotICAgIFdlYkNvcmU6OkZyYW1lKiBkaXNwYXRjaENyZWF0ZVBhZ2UoY29uc3QgV2ViQ29y
ZTo6TmF2aWdhdGlvbkFjdGlvbiYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hTaG93KCkg
b3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERpZERpc3BhdGNoT25sb2FkRXZlbnRzKCkgZmlu
YWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVTZXJ2ZXJSZWRpcmVjdEZvclByb3Zpc2lv
bmFsTG9hZCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRDaGFuZ2VQcm92aXNpb25hbFVS
TCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRDYW5jZWxDbGllbnRSZWRpcmVjdCgpIGZp
bmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsUGVyZm9ybUNsaWVudFJlZGlyZWN0KGNvbnN0IFdl
YkNvcmU6OlVSTCYsIGRvdWJsZSBpbnRlcnZhbCwgZG91YmxlIGZpcmVEYXRlKSBmaW5hbDsKKyAg
ICB2b2lkIGRpc3BhdGNoRGlkQ2hhbmdlTG9jYXRpb25XaXRoaW5QYWdlKCkgZmluYWw7CisgICAg
dm9pZCBkaXNwYXRjaERpZFB1c2hTdGF0ZVdpdGhpblBhZ2UoKSBmaW5hbDsKKyAgICB2b2lkIGRp
c3BhdGNoRGlkUmVwbGFjZVN0YXRlV2l0aGluUGFnZSgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0
Y2hEaWRQb3BTdGF0ZVdpdGhpblBhZ2UoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbENs
b3NlKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVJY29uKCkgZmluYWw7Cisg
ICAgdm9pZCBkaXNwYXRjaERpZFN0YXJ0UHJvdmlzaW9uYWxMb2FkKCkgZmluYWw7CisgICAgdm9p
ZCBkaXNwYXRjaERpZFJlY2VpdmVUaXRsZShjb25zdCBXZWJDb3JlOjpTdHJpbmdXaXRoRGlyZWN0
aW9uJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZENvbW1pdExvYWQoc3RkOjpvcHRpb25h
bDxXZWJDb3JlOjpIYXNJbnNlY3VyZUNvbnRlbnQ+KSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNo
RGlkRmFpbFByb3Zpc2lvbmFsTG9hZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmlu
YWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
RXJyb3ImKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoRG9jdW1lbnRMb2FkKCkg
ZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWQoKSBmaW5hbDsKKworICAgIHZv
aWQgZGlzcGF0Y2hEaWRSZWFjaExheW91dE1pbGVzdG9uZShXZWJDb3JlOjpMYXlvdXRNaWxlc3Rv
bmVzKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkTGF5b3V0KCkgZmluYWw7CisKKyAgICBX
ZWJDb3JlOjpGcmFtZSogZGlzcGF0Y2hDcmVhdGVQYWdlKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRp
b25BY3Rpb24mKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoU2hvdygpIGZpbmFsOwogICAgIAot
ICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JSZXNwb25zZShjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgV2ViQ29y
ZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERlY2lk
ZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9u
JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgUGFzc1JlZlB0cjxXZWJDb3JlOjpG
b3JtU3RhdGU+LCBjb25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgV2ViQ29yZTo6RnJhbWVQb2xpY3lG
dW5jdGlvbikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmln
YXRpb25BY3Rpb24oY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYsIFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0YXRlPiwgV2Vi
Q29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBjYW5jZWxQb2xp
Y3lDaGVjaygpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JSZXNw
b25zZShjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0JiwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7CisgICAg
dm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBXZWJDb3Jl
OjpOYXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgV2Vi
Q29yZTo6Rm9ybVN0YXRlKiwgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIFdlYkNvcmU6OkZyYW1l
UG9saWN5RnVuY3Rpb24pIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JO
YXZpZ2F0aW9uQWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpGb3JtU3RhdGUqLCBXZWJDb3JlOjpG
cmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsKKyAgICB2b2lkIGNhbmNlbFBvbGljeUNoZWNrKCkg
ZmluYWw7CiAgICAgCi0gICAgdm9pZCBkaXNwYXRjaFVuYWJsZVRvSW1wbGVtZW50UG9saWN5KGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNo
VW5hYmxlVG9JbXBsZW1lbnRQb2xpY3koY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIGZp
bmFsOwogICAgIAotICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFBhc3NSZWZQ
dHI8V2ViQ29yZTo6Rm9ybVN0YXRlPikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxT
dWJtaXRGb3JtKFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0YXRlPiwgV2ViQ29yZTo6RnJhbWVQ
b2xpY3lGdW5jdGlvbikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5kU3VibWl0
RXZlbnQoUmVmPFdlYkNvcmU6OkZvcm1TdGF0ZT4mJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRj
aFdpbGxTdWJtaXRGb3JtKFdlYkNvcmU6OkZvcm1TdGF0ZSYsIFdlYkNvcmU6OkZyYW1lUG9saWN5
RnVuY3Rpb24pIGZpbmFsOwogICAgIAotICAgIHZvaWQgcmV2ZXJ0VG9Qcm92aXNpb25hbFN0YXRl
KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRNYWluRG9j
dW1lbnRFcnJvcihXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlRXJyb3ImKSBvdmVycmlkZTsKKyAgICB2b2lkIHJldmVydFRvUHJvdmlzaW9uYWxTdGF0ZShX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciopIGZpbmFsOworICAgIHZvaWQgc2V0TWFpbkRvY3VtZW50
RXJyb3IoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVy
cm9yJikgZmluYWw7CiAgICAgCi0gICAgdm9pZCBzZXRNYWluRnJhbWVEb2N1bWVudFJlYWR5KGJv
b2wpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0TWFpbkZyYW1lRG9jdW1lbnRSZWFkeShib29sKSBm
aW5hbDsKICAgICAKLSAgICB2b2lkIHN0YXJ0RG93bmxvYWQoY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0JiwgY29uc3QgU3RyaW5nJiBzdWdnZXN0ZWROYW1lID0gU3RyaW5nKCkpIG92ZXJy
aWRlOworICAgIHZvaWQgc3RhcnREb3dubG9hZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QmLCBjb25zdCBTdHJpbmcmIHN1Z2dlc3RlZE5hbWUgPSBTdHJpbmcoKSkgZmluYWw7CiAgICAg
Ci0gICAgdm9pZCB3aWxsQ2hhbmdlVGl0bGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBvdmVy
cmlkZTsKLSAgICB2b2lkIGRpZENoYW5nZVRpdGxlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikg
b3ZlcnJpZGU7CisgICAgdm9pZCB3aWxsQ2hhbmdlVGl0bGUoV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXIqKSBmaW5hbDsKKyAgICB2b2lkIGRpZENoYW5nZVRpdGxlKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKikgZmluYWw7CiAKLSAgICB2b2lkIHdpbGxSZXBsYWNlTXVsdGlwYXJ0Q29udGVudCgpIG92
ZXJyaWRlOwotICAgIHZvaWQgZGlkUmVwbGFjZU11bHRpcGFydENvbnRlbnQoKSBvdmVycmlkZTsK
KyAgICB2b2lkIHdpbGxSZXBsYWNlTXVsdGlwYXJ0Q29udGVudCgpIGZpbmFsOworICAgIHZvaWQg
ZGlkUmVwbGFjZU11bHRpcGFydENvbnRlbnQoKSBmaW5hbDsKIAotICAgIHZvaWQgY29tbWl0dGVk
TG9hZChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IGNoYXIqLCBpbnQpIG92ZXJyaWRl
OwotICAgIHZvaWQgZmluaXNoZWRMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgb3Zl
cnJpZGU7CisgICAgdm9pZCBjb21taXR0ZWRMb2FkKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwg
Y29uc3QgY2hhciosIGludCkgZmluYWw7CisgICAgdm9pZCBmaW5pc2hlZExvYWRpbmcoV2ViQ29y
ZTo6RG9jdW1lbnRMb2FkZXIqKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHVwZGF0ZUdsb2JhbEhp
c3RvcnkoKSBvdmVycmlkZTsKLSAgICB2b2lkIHVwZGF0ZUdsb2JhbEhpc3RvcnlSZWRpcmVjdExp
bmtzKCkgb3ZlcnJpZGU7CisgICAgdm9pZCB1cGRhdGVHbG9iYWxIaXN0b3J5KCkgZmluYWw7Cisg
ICAgdm9pZCB1cGRhdGVHbG9iYWxIaXN0b3J5UmVkaXJlY3RMaW5rcygpIGZpbmFsOwogICAgIAot
ICAgIGJvb2wgc2hvdWxkR29Ub0hpc3RvcnlJdGVtKFdlYkNvcmU6Okhpc3RvcnlJdGVtKikgY29u
c3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRHb1RvSGlzdG9yeUl0ZW0oV2ViQ29yZTo6SGlz
dG9yeUl0ZW0qKSBjb25zdCBmaW5hbDsKIAotICAgIHZvaWQgZGlkRGlzcGxheUluc2VjdXJlQ29u
dGVudCgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkUnVuSW5zZWN1cmVDb250ZW50KFdlYkNvcmU6
OlNlY3VyaXR5T3JpZ2luKiwgY29uc3QgV2ViQ29yZTo6VVJMJikgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBkaWREZXRlY3RYU1MoY29uc3QgV2ViQ29yZTo6VVJMJiwgYm9vbCBkaWRCbG9ja0VudGlyZVBh
Z2UpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkRGlzcGxheUluc2VjdXJlQ29udGVudCgpIGZpbmFs
OworICAgIHZvaWQgZGlkUnVuSW5zZWN1cmVDb250ZW50KFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2lu
KiwgY29uc3QgV2ViQ29yZTo6VVJMJikgZmluYWw7CisgICAgdm9pZCBkaWREZXRlY3RYU1MoY29u
c3QgV2ViQ29yZTo6VVJMJiwgYm9vbCBkaWRCbG9ja0VudGlyZVBhZ2UpIGZpbmFsOwogCi0gICAg
V2ViQ29yZTo6UmVzb3VyY2VFcnJvciBjYW5jZWxsZWRFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGJsb2Nr
ZWRFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKLSAgICBX
ZWJDb3JlOjpSZXNvdXJjZUVycm9yIGJsb2NrZWRCeUNvbnRlbnRCbG9ja2VyRXJyb3IoY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3Vy
Y2VFcnJvciBjYW5ub3RTaG93VVJMRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBpbnRlcnJ1cHRlZEZvclBv
bGljeUNoYW5nZUVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRl
OworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgY2FuY2VsbGVkRXJyb3IoY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBi
bG9ja2VkRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CisgICAg
V2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkQnlDb250ZW50QmxvY2tlckVycm9yKGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOworICAgIFdlYkNvcmU6OlJlc291cmNl
RXJyb3IgY2Fubm90U2hvd1VSTEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYp
IGZpbmFsOworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgaW50ZXJydXB0ZWRGb3JQb2xpY3lD
aGFuZ2VFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKICNpZiBF
TkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCi0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9j
a2VkQnlDb250ZW50RmlsdGVyRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikg
b3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkQnlDb250ZW50Rmls
dGVyRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CiAjZW5kaWYK
ICAgICAKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dNSU1FVHlwZUVycm9y
KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKLSAgICBXZWJDb3Jl
OjpSZXNvdXJjZUVycm9yIGZpbGVEb2VzTm90RXhpc3RFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBwbHVn
aW5XaWxsSGFuZGxlTG9hZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBv
dmVycmlkZTsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dNSU1FVHlwZUVy
cm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICBXZWJDb3Jl
OjpSZXNvdXJjZUVycm9yIGZpbGVEb2VzTm90RXhpc3RFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlc3BvbnNlJikgZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBwbHVnaW5X
aWxsSGFuZGxlTG9hZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5h
bDsKICAgICAKLSAgICBib29sIHNob3VsZEZhbGxCYWNrKGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
RXJyb3ImKSBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZEZhbGxCYWNrKGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKICAgICAKLSAgICBib29sIGNhbkhhbmRsZVJlcXVlc3Qo
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgYm9v
bCBjYW5TaG93TUlNRVR5cGUoY29uc3QgU3RyaW5nJiBNSU1FVHlwZSkgY29uc3Qgb3ZlcnJpZGU7
Ci0gICAgYm9vbCBjYW5TaG93TUlNRVR5cGVBc0hUTUwoY29uc3QgU3RyaW5nJiBNSU1FVHlwZSkg
Y29uc3Qgb3ZlcnJpZGU7Ci0gICAgYm9vbCByZXByZXNlbnRhdGlvbkV4aXN0c0ZvclVSTFNjaGVt
ZShjb25zdCBTdHJpbmcmIFVSTFNjaGVtZSkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgU3RyaW5nIGdl
bmVyYXRlZE1JTUVUeXBlRm9yVVJMU2NoZW1lKGNvbnN0IFN0cmluZyYgVVJMU2NoZW1lKSBjb25z
dCBvdmVycmlkZTsKKyAgICBib29sIGNhbkhhbmRsZVJlcXVlc3QoY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0JikgY29uc3QgZmluYWw7CisgICAgYm9vbCBjYW5TaG93TUlNRVR5cGUoY29u
c3QgU3RyaW5nJiBNSU1FVHlwZSkgY29uc3QgZmluYWw7CisgICAgYm9vbCBjYW5TaG93TUlNRVR5
cGVBc0hUTUwoY29uc3QgU3RyaW5nJiBNSU1FVHlwZSkgY29uc3QgZmluYWw7CisgICAgYm9vbCBy
ZXByZXNlbnRhdGlvbkV4aXN0c0ZvclVSTFNjaGVtZShjb25zdCBTdHJpbmcmIFVSTFNjaGVtZSkg
Y29uc3QgZmluYWw7CisgICAgU3RyaW5nIGdlbmVyYXRlZE1JTUVUeXBlRm9yVVJMU2NoZW1lKGNv
bnN0IFN0cmluZyYgVVJMU2NoZW1lKSBjb25zdCBmaW5hbDsKICAgICAKLSAgICB2b2lkIGZyYW1l
TG9hZENvbXBsZXRlZCgpIG92ZXJyaWRlOwotICAgIHZvaWQgc2F2ZVZpZXdTdGF0ZVRvSXRlbShX
ZWJDb3JlOjpIaXN0b3J5SXRlbSYpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVzdG9yZVZpZXdTdGF0
ZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgcHJvdmlzaW9uYWxMb2FkU3RhcnRlZCgpIG92ZXJyaWRl
OwotICAgIHZvaWQgZGlkRmluaXNoTG9hZCgpIG92ZXJyaWRlOwotICAgIHZvaWQgcHJlcGFyZUZv
ckRhdGFTb3VyY2VSZXBsYWNlbWVudCgpIG92ZXJyaWRlOworICAgIHZvaWQgZnJhbWVMb2FkQ29t
cGxldGVkKCkgZmluYWw7CisgICAgdm9pZCBzYXZlVmlld1N0YXRlVG9JdGVtKFdlYkNvcmU6Okhp
c3RvcnlJdGVtJikgZmluYWw7CisgICAgdm9pZCByZXN0b3JlVmlld1N0YXRlKCkgZmluYWw7Cisg
ICAgdm9pZCBwcm92aXNpb25hbExvYWRTdGFydGVkKCkgZmluYWw7CisgICAgdm9pZCBkaWRGaW5p
c2hMb2FkKCkgZmluYWw7CisgICAgdm9pZCBwcmVwYXJlRm9yRGF0YVNvdXJjZVJlcGxhY2VtZW50
KCkgZmluYWw7CiAgICAgCi0gICAgUmVmPFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyPiBjcmVhdGVE
b2N1bWVudExvYWRlcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJD
b3JlOjpTdWJzdGl0dXRlRGF0YSYpIG92ZXJyaWRlOwotICAgIHZvaWQgdXBkYXRlQ2FjaGVkRG9j
dW1lbnRMb2FkZXIoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXImKSBvdmVycmlkZTsKKyAgICBSZWY8
V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI+IGNyZWF0ZURvY3VtZW50TG9hZGVyKGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlN1YnN0aXR1dGVEYXRhJikgZmlu
YWw7CisgICAgdm9pZCB1cGRhdGVDYWNoZWREb2N1bWVudExvYWRlcihXZWJDb3JlOjpEb2N1bWVu
dExvYWRlciYpIGZpbmFsOwogCi0gICAgdm9pZCBzZXRUaXRsZShjb25zdCBXZWJDb3JlOjpTdHJp
bmdXaXRoRGlyZWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6VVJMJikgb3ZlcnJpZGU7CisgICAgdm9p
ZCBzZXRUaXRsZShjb25zdCBXZWJDb3JlOjpTdHJpbmdXaXRoRGlyZWN0aW9uJiwgY29uc3QgV2Vi
Q29yZTo6VVJMJikgZmluYWw7CiAgICAgCi0gICAgU3RyaW5nIHVzZXJBZ2VudChjb25zdCBXZWJD
b3JlOjpVUkwmKSBvdmVycmlkZTsKKyAgICBTdHJpbmcgdXNlckFnZW50KGNvbnN0IFdlYkNvcmU6
OlVSTCYpIGZpbmFsOwogICAgIAotICAgIHZvaWQgc2F2ZVBsYXRmb3JtRGF0YVRvQ2FjaGVkRnJh
bWUoV2ViQ29yZTo6Q2FjaGVkRnJhbWUqKSBvdmVycmlkZTsKLSAgICB2b2lkIHRyYW5zaXRpb25U
b0NvbW1pdHRlZEZyb21DYWNoZWRGcmFtZShXZWJDb3JlOjpDYWNoZWRGcmFtZSopIG92ZXJyaWRl
OworICAgIHZvaWQgc2F2ZVBsYXRmb3JtRGF0YVRvQ2FjaGVkRnJhbWUoV2ViQ29yZTo6Q2FjaGVk
RnJhbWUqKSBmaW5hbDsKKyAgICB2b2lkIHRyYW5zaXRpb25Ub0NvbW1pdHRlZEZyb21DYWNoZWRG
cmFtZShXZWJDb3JlOjpDYWNoZWRGcmFtZSopIGZpbmFsOwogI2lmIFBMQVRGT1JNKElPUykKLSAg
ICB2b2lkIGRpZFJlc3RvcmVGcmFtZUhpZXJhcmNoeUZvckNhY2hlZEZyYW1lKCkgb3ZlcnJpZGU7
CisgICAgdm9pZCBkaWRSZXN0b3JlRnJhbWVIaWVyYXJjaHlGb3JDYWNoZWRGcmFtZSgpIGZpbmFs
OwogI2VuZGlmCi0gICAgdm9pZCB0cmFuc2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdlKCkgb3Zl
cnJpZGU7CisgICAgdm9pZCB0cmFuc2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdlKCkgZmluYWw7
CiAKLSAgICB2b2lkIGRpZFNhdmVUb1BhZ2VDYWNoZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlk
UmVzdG9yZUZyb21QYWdlQ2FjaGUoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZFNhdmVUb1BhZ2VD
YWNoZSgpIGZpbmFsOworICAgIHZvaWQgZGlkUmVzdG9yZUZyb21QYWdlQ2FjaGUoKSBmaW5hbDsK
IAotICAgIHZvaWQgZGlzcGF0Y2hEaWRCZWNvbWVGcmFtZXNldChib29sKSBvdmVycmlkZTsKKyAg
ICB2b2lkIGRpc3BhdGNoRGlkQmVjb21lRnJhbWVzZXQoYm9vbCkgZmluYWw7CiAKLSAgICBib29s
IGNhbkNhY2hlUGFnZSgpIGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQgY29udmVydE1haW5SZXNv
dXJjZUxvYWRUb0Rvd25sb2FkKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6U2Vz
c2lvbklELCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CisgICAgYm9vbCBjYW5DYWNoZVBhZ2UoKSBjb25z
dCBmaW5hbDsKKyAgICB2b2lkIGNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZChXZWJD
b3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlNlc3Npb25JRCwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFs
OwogCi0gICAgUmVmUHRyPFdlYkNvcmU6OkZyYW1lPiBjcmVhdGVGcmFtZShjb25zdCBXZWJDb3Jl
OjpVUkwmLCBjb25zdCBTdHJpbmcmIG5hbWUsIFdlYkNvcmU6OkhUTUxGcmFtZU93bmVyRWxlbWVu
dCosCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBTdHJp
bmcmIHJlZmVycmVyLCBib29sIGFsbG93c1Njcm9sbGluZywgaW50IG1hcmdpbldpZHRoLCBpbnQg
bWFyZ2luSGVpZ2h0KSBvdmVycmlkZTsKLSAgICAKLSAgICBSZWZQdHI8V2ViQ29yZTo6V2lkZ2V0
PiBjcmVhdGVQbHVnaW4oY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxQbHVn
SW5FbGVtZW50KiwgY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBj
b25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFN0cmluZyYsIGJvb2wgbG9hZE1hbnVhbGx5KSBv
dmVycmlkZTsKLSAgICB2b2lkIHJlY3JlYXRlUGx1Z2luKFdlYkNvcmU6OldpZGdldCopIG92ZXJy
aWRlOwotICAgIHZvaWQgcmVkaXJlY3REYXRhVG9QbHVnaW4oV2ViQ29yZTo6V2lkZ2V0KiBwbHVn
aW5XaWRnZXQpIG92ZXJyaWRlOworICAgIFJlZlB0cjxXZWJDb3JlOjpGcmFtZT4gY3JlYXRlRnJh
bWUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgU3RyaW5nJiBuYW1lLCBXZWJDb3JlOjpIVE1M
RnJhbWVPd25lckVsZW1lbnQmLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBib29sIGFsbG93c1Nj
cm9sbGluZywgaW50IG1hcmdpbldpZHRoLCBpbnQgbWFyZ2luSGVpZ2h0KSBmaW5hbDsKKworICAg
IFJlZlB0cjxXZWJDb3JlOjpXaWRnZXQ+IGNyZWF0ZVBsdWdpbihjb25zdCBXZWJDb3JlOjpJbnRT
aXplJiwgV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQmLCBjb25zdCBXZWJDb3JlOjpVUkwmLCBj
b25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgU3RyaW5n
JiwgYm9vbCBsb2FkTWFudWFsbHkpIGZpbmFsOworICAgIHZvaWQgcmVjcmVhdGVQbHVnaW4oV2Vi
Q29yZTo6V2lkZ2V0KikgZmluYWw7CisgICAgdm9pZCByZWRpcmVjdERhdGFUb1BsdWdpbihXZWJD
b3JlOjpXaWRnZXQqIHBsdWdpbldpZGdldCkgZmluYWw7CiAgICAgCiAjaWYgRU5BQkxFKFdFQkdM
KQotICAgIFdlYkNvcmU6OldlYkdMTG9hZFBvbGljeSB3ZWJHTFBvbGljeUZvclVSTChjb25zdCBT
dHJpbmcmKSBjb25zdCBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgcmVz
b2x2ZVdlYkdMUG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYpIGNvbnN0IG92ZXJyaWRlOworICAg
IFdlYkNvcmU6OldlYkdMTG9hZFBvbGljeSB3ZWJHTFBvbGljeUZvclVSTChjb25zdCBTdHJpbmcm
KSBjb25zdCBmaW5hbDsKKyAgICBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgcmVzb2x2ZVdlYkdM
UG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYpIGNvbnN0IGZpbmFsOwogI2VuZGlmIC8vIEVOQUJM
RShXRUJHTCkKIAotICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6V2lkZ2V0PiBjcmVhdGVKYXZhQXBw
bGV0V2lkZ2V0KGNvbnN0IFdlYkNvcmU6OkludFNpemUmLCBXZWJDb3JlOjpIVE1MQXBwbGV0RWxl
bWVudCosIGNvbnN0IFdlYkNvcmU6OlVSTCYgYmFzZVVSTCwgY29uc3QgVmVjdG9yPFN0cmluZz4m
IHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykgb3ZlcnJpZGU7
CisgICAgUmVmUHRyPFdlYkNvcmU6OldpZGdldD4gY3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25z
dCBXZWJDb3JlOjpJbnRTaXplJiwgV2ViQ29yZTo6SFRNTEFwcGxldEVsZW1lbnQmLCBjb25zdCBX
ZWJDb3JlOjpVUkwmIGJhc2VVUkwsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBj
b25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpIGZpbmFsOwogICAgIAotICAgIFdlYkNv
cmU6Ok9iamVjdENvbnRlbnRUeXBlIG9iamVjdENvbnRlbnRUeXBlKGNvbnN0IFdlYkNvcmU6OlVS
TCYsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUpIG92ZXJyaWRlOwotICAgIFN0cmluZyBvdmVycmlk
ZU1lZGlhVHlwZSgpIGNvbnN0IG92ZXJyaWRlOworICAgIFdlYkNvcmU6Ok9iamVjdENvbnRlbnRU
eXBlIG9iamVjdENvbnRlbnRUeXBlKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNvbnN0IFN0cmluZyYg
bWltZVR5cGUpIGZpbmFsOworICAgIFN0cmluZyBvdmVycmlkZU1lZGlhVHlwZSgpIGNvbnN0IGZp
bmFsOwogCi0gICAgdm9pZCBkaXNwYXRjaERpZENsZWFyV2luZG93T2JqZWN0SW5Xb3JsZChXZWJD
b3JlOjpET01XcmFwcGVyV29ybGQmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGlkQ2xl
YXJXaW5kb3dPYmplY3RJbldvcmxkKFdlYkNvcmU6OkRPTVdyYXBwZXJXb3JsZCYpIGZpbmFsOwog
ICAgIAotICAgIHZvaWQgZGlzcGF0Y2hHbG9iYWxPYmplY3RBdmFpbGFibGUoV2ViQ29yZTo6RE9N
V3JhcHBlcldvcmxkJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxEaXNjb25uZWN0
RE9NV2luZG93RXh0ZW5zaW9uRnJvbUdsb2JhbE9iamVjdChXZWJDb3JlOjpET01XaW5kb3dFeHRl
bnNpb24qKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjb25uZWN0RE9NV2luZG93
RXh0ZW5zaW9uVG9HbG9iYWxPYmplY3QoV2ViQ29yZTo6RE9NV2luZG93RXh0ZW5zaW9uKikgb3Zl
cnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxEZXN0cm95R2xvYmFsT2JqZWN0Rm9yRE9NV2lu
ZG93RXh0ZW5zaW9uKFdlYkNvcmU6OkRPTVdpbmRvd0V4dGVuc2lvbiopIG92ZXJyaWRlOworICAg
IHZvaWQgZGlzcGF0Y2hHbG9iYWxPYmplY3RBdmFpbGFibGUoV2ViQ29yZTo6RE9NV3JhcHBlcldv
cmxkJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxEaXNjb25uZWN0RE9NV2luZG93RXh0
ZW5zaW9uRnJvbUdsb2JhbE9iamVjdChXZWJDb3JlOjpET01XaW5kb3dFeHRlbnNpb24qKSBmaW5h
bDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjb25uZWN0RE9NV2luZG93RXh0ZW5zaW9uVG9HbG9i
YWxPYmplY3QoV2ViQ29yZTo6RE9NV2luZG93RXh0ZW5zaW9uKikgZmluYWw7CisgICAgdm9pZCBk
aXNwYXRjaFdpbGxEZXN0cm95R2xvYmFsT2JqZWN0Rm9yRE9NV2luZG93RXh0ZW5zaW9uKFdlYkNv
cmU6OkRPTVdpbmRvd0V4dGVuc2lvbiopIGZpbmFsOwogCi0gICAgdm9pZCByZWdpc3RlckZvcklj
b25Ob3RpZmljYXRpb24oYm9vbCBsaXN0ZW4gPSB0cnVlKSBvdmVycmlkZTsKKyAgICB2b2lkIHJl
Z2lzdGVyRm9ySWNvbk5vdGlmaWNhdGlvbihib29sIGxpc3RlbiA9IHRydWUpIGZpbmFsOwogICAg
IAogI2lmIFBMQVRGT1JNKENPQ09BKQotICAgIFJlbW90ZUFYT2JqZWN0UmVmIGFjY2Vzc2liaWxp
dHlSZW1vdGVPYmplY3QoKSBvdmVycmlkZTsKKyAgICBSZW1vdGVBWE9iamVjdFJlZiBhY2Nlc3Np
YmlsaXR5UmVtb3RlT2JqZWN0KCkgZmluYWw7CiAgICAgCi0gICAgTlNDYWNoZWRVUkxSZXNwb25z
ZSogd2lsbENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2UqKSBjb25zdCBvdmVycmlkZTsKKyAg
ICBOU0NhY2hlZFVSTFJlc3BvbnNlKiB3aWxsQ2FjaGVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVu
dExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25zZSop
IGNvbnN0IGZpbmFsOwogCi0gICAgTlNEaWN0aW9uYXJ5ICpkYXRhRGV0ZWN0aW9uQ29udGV4dCgp
IG92ZXJyaWRlOworICAgIE5TRGljdGlvbmFyeSAqZGF0YURldGVjdGlvbkNvbnRleHQoKSBmaW5h
bDsKICNlbmRpZgogCi0gICAgYm9vbCBzaG91bGRBbHdheXNVc2VQbHVnaW5Eb2N1bWVudChjb25z
dCBTdHJpbmcmIC8qbWltZVR5cGUqLykgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRB
bHdheXNVc2VQbHVnaW5Eb2N1bWVudChjb25zdCBTdHJpbmcmIC8qbWltZVR5cGUqLykgY29uc3Qg
ZmluYWw7CiAKLSAgICB2b2lkIGRpZENoYW5nZVNjcm9sbE9mZnNldCgpIG92ZXJyaWRlOworICAg
IHZvaWQgZGlkQ2hhbmdlU2Nyb2xsT2Zmc2V0KCkgZmluYWw7CiAKLSAgICBib29sIGFsbG93U2Ny
aXB0KGJvb2wgZW5hYmxlZFBlclNldHRpbmdzKSBvdmVycmlkZTsKKyAgICBib29sIGFsbG93U2Ny
aXB0KGJvb2wgZW5hYmxlZFBlclNldHRpbmdzKSBmaW5hbDsKIAotICAgIGJvb2wgc2hvdWxkRm9y
Y2VVbml2ZXJzYWxBY2Nlc3NGcm9tTG9jYWxVUkwoY29uc3QgV2ViQ29yZTo6VVJMJikgb3ZlcnJp
ZGU7CisgICAgYm9vbCBzaG91bGRGb3JjZVVuaXZlcnNhbEFjY2Vzc0Zyb21Mb2NhbFVSTChjb25z
dCBXZWJDb3JlOjpVUkwmKSBmaW5hbDsKIAotICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6RnJhbWVO
ZXR3b3JraW5nQ29udGV4dD4gY3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKSBvdmVycmlkZTsKKyAg
ICBSZWY8V2ViQ29yZTo6RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRlTmV0d29ya2luZ0Nv
bnRleHQoKSBmaW5hbDsKIAogI2lmIEVOQUJMRShSRVFVRVNUX0FVVE9DT01QTEVURSkKLSAgICB2
b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxldGUoUGFzc1JlZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+
KSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxldGUoUmVmPFdlYkNvcmU6
OkZvcm1TdGF0ZT4mJikgZmluYWw7CiAjZW5kaWYKIAotICAgIHZvaWQgZm9yY2VQYWdlVHJhbnNp
dGlvbklmTmVlZGVkKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBmb3JjZVBhZ2VUcmFuc2l0aW9uSWZO
ZWVkZWQoKSBmaW5hbDsKIAogI2lmIFVTRShRVUlDS19MT09LKQotICAgIHZvaWQgZGlkQ3JlYXRl
UXVpY2tMb29rSGFuZGxlKFdlYkNvcmU6OlF1aWNrTG9va0hhbmRsZSYpIG92ZXJyaWRlOworICAg
IHZvaWQgZGlkQ3JlYXRlUXVpY2tMb29rSGFuZGxlKFdlYkNvcmU6OlF1aWNrTG9va0hhbmRsZSYp
IGZpbmFsOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCi0gICAgdm9p
ZCBjb250ZW50RmlsdGVyRGlkQmxvY2tMb2FkKFdlYkNvcmU6OkNvbnRlbnRGaWx0ZXJVbmJsb2Nr
SGFuZGxlcikgb3ZlcnJpZGU7CisgICAgdm9pZCBjb250ZW50RmlsdGVyRGlkQmxvY2tMb2FkKFdl
YkNvcmU6OkNvbnRlbnRGaWx0ZXJVbmJsb2NrSGFuZGxlcikgZmluYWw7CiAjZW5kaWYKIAotICAg
IHZvaWQgcHJlZmV0Y2hETlMoY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7CisgICAgdm9pZCBwcmVm
ZXRjaEROUyhjb25zdCBTdHJpbmcmKSBmaW5hbDsKIAotICAgIHZvaWQgZGlkUmVzdG9yZVNjcm9s
bFBvc2l0aW9uKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRSZXN0b3JlU2Nyb2xsUG9zaXRpb24o
KSBmaW5hbDsKIAotICAgIGJvb2wgdXNlSWNvbkxvYWRpbmdDbGllbnQoKSBvdmVycmlkZTsKLSAg
ICB2b2lkIGdldExvYWREZWNpc2lvbkZvckljb24oY29uc3QgV2ViQ29yZTo6TGlua0ljb24mLCB1
aW50NjRfdCBjYWxsYmFja0lEKSBvdmVycmlkZTsKLSAgICB2b2lkIGZpbmlzaGVkTG9hZGluZ0lj
b24odWludDY0X3QgbG9hZElkZW50aWZpZXIsIFdlYkNvcmU6OlNoYXJlZEJ1ZmZlciopIG92ZXJy
aWRlOworICAgIGJvb2wgdXNlSWNvbkxvYWRpbmdDbGllbnQoKSBmaW5hbDsKKyAgICB2b2lkIGdl
dExvYWREZWNpc2lvbkZvckljb24oY29uc3QgV2ViQ29yZTo6TGlua0ljb24mLCB1aW50NjRfdCBj
YWxsYmFja0lEKSBmaW5hbDsKKyAgICB2b2lkIGZpbmlzaGVkTG9hZGluZ0ljb24odWludDY0X3Qg
bG9hZElkZW50aWZpZXIsIFdlYkNvcmU6OlNoYXJlZEJ1ZmZlciopIGZpbmFsOwogCiAgICAgV2Vi
RnJhbWUqIG1fZnJhbWU7CiAgICAgUmVmUHRyPFBsdWdpblZpZXc+IG1fcGx1Z2luVmlldzsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcCBi
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAppbmRleCBlOTRm
ODdhOWRkZjc5YWMzNDBkZmUwMTVkZDZiNWUzMmE0YWVkYjI4Li5jNTAyYzYyN2UyOTJiYmU1MzUy
MmE5YTc3NDMyMjA3YjE4MGUxNmExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJQYWdlL1dlYlBhZ2UuY3BwCkBAIC0zNDIsNyArMzQyLDcgQEAgV2ViUGFnZTo6V2ViUGFnZSh1
aW50NjRfdCBwYWdlSUQsIGNvbnN0IFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMmIHBhcmFtZXRl
cnMpCiAjZW5kaWYKIAogICAgIFBhZ2VDb25maWd1cmF0aW9uIHBhZ2VDb25maWd1cmF0aW9uKG1h
a2VVbmlxdWVSZWY8V2ViRWRpdG9yQ2xpZW50Pih0aGlzKSwgV2ViU29ja2V0UHJvdmlkZXI6OmNy
ZWF0ZSgpKTsKLSAgICBwYWdlQ29uZmlndXJhdGlvbi5jaHJvbWVDbGllbnQgPSBuZXcgV2ViQ2hy
b21lQ2xpZW50KHRoaXMpOworICAgIHBhZ2VDb25maWd1cmF0aW9uLmNocm9tZUNsaWVudCA9IG5l
dyBXZWJDaHJvbWVDbGllbnQoKnRoaXMpOwogI2lmIEVOQUJMRShDT05URVhUX01FTlVTKQogICAg
IHBhZ2VDb25maWd1cmF0aW9uLmNvbnRleHRNZW51Q2xpZW50ID0gbmV3IFdlYkNvbnRleHRNZW51
Q2xpZW50KHRoaXMpOwogI2VuZGlmCkBAIC02OTgsNyArNjk4LDggQEAgdm9pZCBXZWJQYWdlOjpp
bml0aWFsaXplSW5qZWN0ZWRCdW5kbGVEaWFnbm9zdGljTG9nZ2luZ0NsaWVudChXS0J1bmRsZVBh
Z2VEaWFnbm8KIH0KIAogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQotUGFzc1JlZlB0
cjxQbHVnaW4+IFdlYlBhZ2U6OmNyZWF0ZVBsdWdpbihXZWJGcmFtZSogZnJhbWUsIEhUTUxQbHVn
SW5FbGVtZW50KiBwbHVnaW5FbGVtZW50LCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmIHBhcmFt
ZXRlcnMsIFN0cmluZyYgbmV3TUlNRVR5cGUpCisKK1JlZlB0cjxQbHVnaW4+IFdlYlBhZ2U6OmNy
ZWF0ZVBsdWdpbihXZWJGcmFtZSogZnJhbWUsIEhUTUxQbHVnSW5FbGVtZW50KiBwbHVnaW5FbGVt
ZW50LCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmIHBhcmFtZXRlcnMsIFN0cmluZyYgbmV3TUlN
RVR5cGUpCiB7CiAgICAgU3RyaW5nIGZyYW1lVVJMU3RyaW5nID0gZnJhbWUtPmNvcmVGcmFtZSgp
LT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwogICAg
IFN0cmluZyBwYWdlVVJMU3RyaW5nID0gbV9wYWdlLT5tYWluRnJhbWUoKS5sb2FkZXIoKS5kb2N1
bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwpAQCAtMTMyNSw3ICsxMzI2LDcg
QEAgdm9pZCBXZWJQYWdlOjpsYXlvdXRJZk5lZWRlZCgpCiAKIFdlYlBhZ2UqIFdlYlBhZ2U6OmZy
b21Db3JlUGFnZShQYWdlKiBwYWdlKQogewotICAgIHJldHVybiBzdGF0aWNfY2FzdDxXZWJDaHJv
bWVDbGllbnQmPihwYWdlLT5jaHJvbWUoKS5jbGllbnQoKSkucGFnZSgpOworICAgIHJldHVybiAm
c3RhdGljX2Nhc3Q8V2ViQ2hyb21lQ2xpZW50Jj4ocGFnZS0+Y2hyb21lKCkuY2xpZW50KCkpLnBh
Z2UoKTsKIH0KIAogdm9pZCBXZWJQYWdlOjpzZXRTaXplKGNvbnN0IFdlYkNvcmU6OkludFNpemUm
IHZpZXdTaXplKQpAQCAtMTc5MSw3ICsxNzkyLDggQEAgdm9pZCBXZWJQYWdlOjpwb3N0SW5qZWN0
ZWRCdW5kbGVNZXNzYWdlKGNvbnN0IFN0cmluZyYgbWVzc2FnZU5hbWUsIGNvbnN0IFVzZXJEYXQK
IH0KIAogI2lmICFQTEFURk9STShJT1MpCi12b2lkIFdlYlBhZ2U6OnNldEhlYWRlclBhZ2VCYW5u
ZXIoUGFzc1JlZlB0cjxQYWdlQmFubmVyPiBwYWdlQmFubmVyKQorCit2b2lkIFdlYlBhZ2U6OnNl
dEhlYWRlclBhZ2VCYW5uZXIoUGFnZUJhbm5lciogcGFnZUJhbm5lcikKIHsKICAgICBpZiAobV9o
ZWFkZXJCYW5uZXIpCiAgICAgICAgIG1faGVhZGVyQmFubmVyLT5kZXRhY2hGcm9tUGFnZSgpOwpA
QCAtMTgwNyw3ICsxODA5LDcgQEAgUGFnZUJhbm5lciogV2ViUGFnZTo6aGVhZGVyUGFnZUJhbm5l
cigpCiAgICAgcmV0dXJuIG1faGVhZGVyQmFubmVyLmdldCgpOwogfQogCi12b2lkIFdlYlBhZ2U6
OnNldEZvb3RlclBhZ2VCYW5uZXIoUGFzc1JlZlB0cjxQYWdlQmFubmVyPiBwYWdlQmFubmVyKQor
dm9pZCBXZWJQYWdlOjpzZXRGb290ZXJQYWdlQmFubmVyKFBhZ2VCYW5uZXIqIHBhZ2VCYW5uZXIp
CiB7CiAgICAgaWYgKG1fZm9vdGVyQmFubmVyKQogICAgICAgICBtX2Zvb3RlckJhbm5lci0+ZGV0
YWNoRnJvbVBhZ2UoKTsKQEAgLTM1NzUsNiArMzU3Nyw3IEBAIHZvaWQgV2ViUGFnZTo6c2V0QWN0
aXZlUG9wdXBNZW51KFdlYlBvcHVwTWVudSogbWVudSkKIH0KIAogI2lmIEVOQUJMRShJTlBVVF9U
WVBFX0NPTE9SKQorCiB2b2lkIFdlYlBhZ2U6OnNldEFjdGl2ZUNvbG9yQ2hvb3NlcihXZWJDb2xv
ckNob29zZXIqIGNvbG9yQ2hvb3NlcikKIHsKICAgICBtX2FjdGl2ZUNvbG9yQ2hvb3NlciA9IGNv
bG9yQ2hvb3NlcjsKQEAgLTM1ODksMTEgKzM1OTIsMTIgQEAgdm9pZCBXZWJQYWdlOjpkaWRDaG9v
c2VDb2xvcihjb25zdCBXZWJDb3JlOjpDb2xvciYgY29sb3IpCiB7CiAgICAgbV9hY3RpdmVDb2xv
ckNob29zZXItPmRpZENob29zZUNvbG9yKGNvbG9yKTsKIH0KKwogI2VuZGlmCiAKLXZvaWQgV2Vi
UGFnZTo6c2V0QWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIoUGFzc1JlZlB0cjxXZWJPcGVu
UGFuZWxSZXN1bHRMaXN0ZW5lcj4gb3BlblBhbmVsUmVzdWx0TGlzdGVuZXIpCit2b2lkIFdlYlBh
Z2U6OnNldEFjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyKFJlZjxXZWJPcGVuUGFuZWxSZXN1
bHRMaXN0ZW5lcj4mJiBvcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcikKIHsKLSAgICBtX2FjdGl2ZU9w
ZW5QYW5lbFJlc3VsdExpc3RlbmVyID0gb3BlblBhbmVsUmVzdWx0TGlzdGVuZXI7CisgICAgbV9h
Y3RpdmVPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lciA9IFdURk1vdmUob3BlblBhbmVsUmVzdWx0TGlz
dGVuZXIpOwogfQogCiBib29sIFdlYlBhZ2U6OmZpbmRTdHJpbmdGcm9tSW5qZWN0ZWRCdW5kbGUo
Y29uc3QgU3RyaW5nJiB0YXJnZXQsIEZpbmRPcHRpb25zIG9wdGlvbnMpCkBAIC01NDA4LDExICs1
NDEyLDExIEBAIGJvb2wgV2ViUGFnZTo6cGx1Z0luSXNQcmltYXJ5U2l6ZShXZWJDb3JlOjpIVE1M
UGx1Z0luSW1hZ2VFbGVtZW50JiBwbHVnSW5JbWFnZUVsCiAKICNlbmRpZiAvLyBFTkFCTEUoUFJJ
TUFSWV9TTkFQU0hPVFRFRF9QTFVHSU5fSEVVUklTVElDKQogCi1QYXNzUmVmUHRyPFJhbmdlPiBX
ZWJQYWdlOjpjdXJyZW50U2VsZWN0aW9uQXNSYW5nZSgpCitSZWZQdHI8UmFuZ2U+IFdlYlBhZ2U6
OmN1cnJlbnRTZWxlY3Rpb25Bc1JhbmdlKCkKIHsKLSAgICBGcmFtZSogZnJhbWUgPSBmcmFtZVdp
dGhTZWxlY3Rpb24obV9wYWdlLmdldCgpKTsKKyAgICBhdXRvKiBmcmFtZSA9IGZyYW1lV2l0aFNl
bGVjdGlvbihtX3BhZ2UuZ2V0KCkpOwogICAgIGlmICghZnJhbWUpCi0gICAgICAgIHJldHVybiAw
OworICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAogICAgIHJldHVybiBmcmFtZS0+c2VsZWN0aW9u
KCkudG9Ob3JtYWxpemVkUmFuZ2UoKTsKIH0KQEAgLTU1MTIsNyArNTUxNiw3IEBAIHZvaWQgV2Vi
UGFnZTo6Z2V0U2FtcGxpbmdQcm9maWxlck91dHB1dCh1aW50NjRfdCBjYWxsYmFja0lEKQogI2Vu
ZGlmCiB9CiAKLVBhc3NSZWZQdHI8V2ViQ29yZTo6UmFuZ2U+IFdlYlBhZ2U6OnJhbmdlRnJvbUVk
aXRpbmdSYW5nZShXZWJDb3JlOjpGcmFtZSYgZnJhbWUsIGNvbnN0IEVkaXRpbmdSYW5nZSYgcmFu
Z2UsIEVkaXRpbmdSYW5nZUlzUmVsYXRpdmVUbyBlZGl0aW5nUmFuZ2VJc1JlbGF0aXZlVG8pCitS
ZWZQdHI8V2ViQ29yZTo6UmFuZ2U+IFdlYlBhZ2U6OnJhbmdlRnJvbUVkaXRpbmdSYW5nZShXZWJD
b3JlOjpGcmFtZSYgZnJhbWUsIGNvbnN0IEVkaXRpbmdSYW5nZSYgcmFuZ2UsIEVkaXRpbmdSYW5n
ZUlzUmVsYXRpdmVUbyBlZGl0aW5nUmFuZ2VJc1JlbGF0aXZlVG8pCiB7CiAgICAgQVNTRVJUKHJh
bmdlLmxvY2F0aW9uICE9IG5vdEZvdW5kKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJQYWdlLmgKaW5kZXggODFjZTc1MWY4ZWJkMWQ4ZTBlMGI3ZGNhNWZmMDdiYjcz
ZDNkMjE2NS4uYjY1ZDkzYmM3YWVjZWM2ZDc4Mjk0YmYxZWNiYjY1OGE4ZjU5OGIyNiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCkBAIC03NCw3ICs3NCw2
IEBACiAjaW5jbHVkZSA8bWVtb3J5PgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAjaW5jbHVk
ZSA8d3RmL01vbm90b25pY1RpbWUuaD4KLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2lu
Y2x1ZGUgPHd0Zi9SZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvUnVuTG9vcC5oPgogI2luY2x1ZGUg
PHd0Zi9TZWNvbmRzLmg+CkBAIC0zMTQsNyArMzEzLDcgQEAgcHVibGljOgogI2VuZGlmCiAKICAg
ICBXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lciogYWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVu
ZXIoKSBjb25zdCB7IHJldHVybiBtX2FjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLmdldCgp
OyB9Ci0gICAgdm9pZCBzZXRBY3RpdmVPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcihQYXNzUmVmUHRy
PFdlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyPik7CisgICAgdm9pZCBzZXRBY3RpdmVPcGVuUGFu
ZWxSZXN1bHRMaXN0ZW5lcihSZWY8V2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXI+JiYpOwogCiAg
ICAgdm9pZCBkaWRSZWNlaXZlTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXIm
KSBvdmVycmlkZTsKICAgICB2b2lkIGRpZFJlY2VpdmVTeW5jTWVzc2FnZShJUEM6OkNvbm5lY3Rp
b24mLCBJUEM6OkRlY29kZXImLCBzdGQ6OnVuaXF1ZV9wdHI8SVBDOjpFbmNvZGVyPiYpIG92ZXJy
aWRlOwpAQCAtMzU1LDE2ICszNTQsMTYgQEAgcHVibGljOgogICAgIFdlYkNvcmU6Ok1haW5GcmFt
ZSogbWFpbkZyYW1lKCkgY29uc3Q7IC8vIE1heSByZXR1cm4gMC4KICAgICBXZWJDb3JlOjpGcmFt
ZVZpZXcqIG1haW5GcmFtZVZpZXcoKSBjb25zdDsgLy8gTWF5IHJldHVybiAwLgogCi0gICAgUGFz
c1JlZlB0cjxXZWJDb3JlOjpSYW5nZT4gY3VycmVudFNlbGVjdGlvbkFzUmFuZ2UoKTsKKyAgICBS
ZWZQdHI8V2ViQ29yZTo6UmFuZ2U+IGN1cnJlbnRTZWxlY3Rpb25Bc1JhbmdlKCk7CiAKICNpZiBF
TkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKLSAgICBQYXNzUmVmUHRyPFBsdWdpbj4gY3JlYXRl
UGx1Z2luKFdlYkZyYW1lKiwgV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQqLCBjb25zdCBQbHVn
aW46OlBhcmFtZXRlcnMmLCBTdHJpbmcmIG5ld01JTUVUeXBlKTsKKyAgICBSZWZQdHI8UGx1Z2lu
PiBjcmVhdGVQbHVnaW4oV2ViRnJhbWUqLCBXZWJDb3JlOjpIVE1MUGx1Z0luRWxlbWVudCosIGNv
bnN0IFBsdWdpbjo6UGFyYW1ldGVycyYsIFN0cmluZyYgbmV3TUlNRVR5cGUpOwogI2VuZGlmCiAK
ICNpZiBFTkFCTEUoV0VCR0wpCiAgICAgV2ViQ29yZTo6V2ViR0xMb2FkUG9saWN5IHdlYkdMUG9s
aWN5Rm9yVVJMKFdlYkZyYW1lKiwgY29uc3QgU3RyaW5nJik7CiAgICAgV2ViQ29yZTo6V2ViR0xM
b2FkUG9saWN5IHJlc29sdmVXZWJHTFBvbGljeUZvclVSTChXZWJGcmFtZSosIGNvbnN0IFN0cmlu
ZyYpOwotI2VuZGlmIC8vIEVOQUJMRShXRUJHTCkKKyNlbmRpZgogICAgIAogICAgIGVudW0gY2xh
c3MgSW5jbHVkZVBvc3RMYXlvdXREYXRhSGludCB7IE5vLCBZZXMgfTsKICAgICBFZGl0b3JTdGF0
ZSBlZGl0b3JTdGF0ZShJbmNsdWRlUG9zdExheW91dERhdGFIaW50ID0gSW5jbHVkZVBvc3RMYXlv
dXREYXRhSGludDo6WWVzKSBjb25zdDsKQEAgLTQ1NSwyMSArNDU0LDIxIEBAIHB1YmxpYzoKIAog
ICAgIGJvb2wgaGFzQ2FjaGVkV2luZG93RnJhbWUoKSBjb25zdCB7IHJldHVybiBtX2hhc0NhY2hl
ZFdpbmRvd0ZyYW1lOyB9CiAKLSNpZiAhUExBVEZPUk0oSU9TKQotICAgIHZvaWQgc2V0VG9wT3Zl
cmhhbmdJbWFnZShQYXNzUmVmUHRyPFdlYkltYWdlPik7Ci0gICAgdm9pZCBzZXRCb3R0b21PdmVy
aGFuZ0ltYWdlKFBhc3NSZWZQdHI8V2ViSW1hZ2U+KTsKLSNlbmRpZiAvLyAhUExBVEZPUk0oSU9T
KQotCiAgICAgdm9pZCB1cGRhdGVIZWFkZXJBbmRGb290ZXJMYXllcnNGb3JEZXZpY2VTY2FsZUNo
YW5nZShmbG9hdCBzY2FsZUZhY3Rvcik7Ci0jZW5kaWYgLy8gUExBVEZPUk0oQ09DT0EpCisjZW5k
aWYKKworI2lmIFBMQVRGT1JNKE1BQykKKyAgICB2b2lkIHNldFRvcE92ZXJoYW5nSW1hZ2UoV2Vi
SW1hZ2UqKTsKKyAgICB2b2lkIHNldEJvdHRvbU92ZXJoYW5nSW1hZ2UoV2ViSW1hZ2UqKTsKKyNl
bmRpZgogCiAgICAgYm9vbCB3aW5kb3dJc0ZvY3VzZWQoKSBjb25zdDsKICAgICBib29sIHdpbmRv
d0FuZFdlYlBhZ2VBcmVGb2N1c2VkKCkgY29uc3Q7CiAKICNpZiAhUExBVEZPUk0oSU9TKQotICAg
IHZvaWQgc2V0SGVhZGVyUGFnZUJhbm5lcihQYXNzUmVmUHRyPFBhZ2VCYW5uZXI+KTsKKyAgICB2
b2lkIHNldEhlYWRlclBhZ2VCYW5uZXIoUGFnZUJhbm5lciopOwogICAgIFBhZ2VCYW5uZXIqIGhl
YWRlclBhZ2VCYW5uZXIoKTsKLSAgICB2b2lkIHNldEZvb3RlclBhZ2VCYW5uZXIoUGFzc1JlZlB0
cjxQYWdlQmFubmVyPik7CisgICAgdm9pZCBzZXRGb290ZXJQYWdlQmFubmVyKFBhZ2VCYW5uZXIq
KTsKICAgICBQYWdlQmFubmVyKiBmb290ZXJQYWdlQmFubmVyKCk7CiAKICAgICB2b2lkIGhpZGVQ
YWdlQmFubmVycygpOwpAQCAtNDc3LDcgKzQ3Niw3IEBAIHB1YmxpYzoKICAgICAKICAgICB2b2lk
IHNldEhlYWRlckJhbm5lckhlaWdodEZvclRlc3RpbmcoaW50KTsKICAgICB2b2lkIHNldEZvb3Rl
ckJhbm5lckhlaWdodEZvclRlc3RpbmcoaW50KTsKLSNlbmRpZiAvLyAhUExBVEZPUk0oSU9TKQor
I2VuZGlmCiAKICAgICBXZWJDb3JlOjpJbnRQb2ludCBzY3JlZW5Ub1Jvb3RWaWV3KGNvbnN0IFdl
YkNvcmU6OkludFBvaW50Jik7CiAgICAgV2ViQ29yZTo6SW50UmVjdCByb290Vmlld1RvU2NyZWVu
KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKTsKQEAgLTYyMSw3ICs2MjAsNyBAQCBwdWJsaWM6CiAg
ICAgYm9vbCBoYXNMb2NhbERhdGFGb3JVUkwoY29uc3QgV2ViQ29yZTo6VVJMJik7CiAgICAgU3Ry
aW5nIGNhY2hlZFJlc3BvbnNlTUlNRVR5cGVGb3JVUkwoY29uc3QgV2ViQ29yZTo6VVJMJik7CiAg
ICAgU3RyaW5nIGNhY2hlZFN1Z2dlc3RlZEZpbGVuYW1lRm9yVVJMKGNvbnN0IFdlYkNvcmU6OlVS
TCYpOwotICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6U2hhcmVkQnVmZmVyPiBjYWNoZWRSZXNwb25z
ZURhdGFGb3JVUkwoY29uc3QgV2ViQ29yZTo6VVJMJik7CisgICAgUmVmUHRyPFdlYkNvcmU6OlNo
YXJlZEJ1ZmZlcj4gY2FjaGVkUmVzcG9uc2VEYXRhRm9yVVJMKGNvbnN0IFdlYkNvcmU6OlVSTCYp
OwogCiAgICAgc3RhdGljIGJvb2wgY2FuSGFuZGxlUmVxdWVzdChjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmKTsKIApAQCAtMTAxNiw5ICsxMDE1LDExIEBAIHByaXZhdGU6CiAgICAgYm9v
bCBzaG91bGRTd2l0Y2hUb0Jsb2NrTW9kZUZvckhhbmRsZShjb25zdCBXZWJDb3JlOjpJbnRQb2lu
dCYgaGFuZGxlUG9pbnQsIFNlbGVjdGlvbkhhbmRsZVBvc2l0aW9uKTsKICAgICBSZWZQdHI8V2Vi
Q29yZTo6UmFuZ2U+IHN3aXRjaFRvQmxvY2tTZWxlY3Rpb25BdFBvaW50KGNvbnN0IFdlYkNvcmU6
OkludFBvaW50JiwgU2VsZWN0aW9uSGFuZGxlUG9zaXRpb24pOwogI2VuZGlmCisKICNpZiAhUExB
VEZPUk0oQ09DT0EpCiAgICAgc3RhdGljIGNvbnN0IGNoYXIqIGludGVycHJldEtleUV2ZW50KGNv
bnN0IFdlYkNvcmU6OktleWJvYXJkRXZlbnQqKTsKICNlbmRpZgorCiAgICAgYm9vbCBwZXJmb3Jt
RGVmYXVsdEJlaGF2aW9yRm9yS2V5RXZlbnQoY29uc3QgV2ViS2V5Ym9hcmRFdmVudCYpOwogCiAj
aWYgUExBVEZPUk0oTUFDKQpAQCAtMTIwNiw3ICsxMjA3LDcgQEAgcHJpdmF0ZToKICAgICBzdGF0
aWMgUGx1Z2luVmlldyogZm9jdXNlZFBsdWdpblZpZXdGb3JGcmFtZShXZWJDb3JlOjpGcmFtZSYp
OwogICAgIHN0YXRpYyBQbHVnaW5WaWV3KiBwbHVnaW5WaWV3Rm9yRnJhbWUoV2ViQ29yZTo6RnJh
bWUqKTsKIAotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFdlYkNvcmU6OlJhbmdlPiByYW5nZUZyb21F
ZGl0aW5nUmFuZ2UoV2ViQ29yZTo6RnJhbWUmLCBjb25zdCBFZGl0aW5nUmFuZ2UmLCBFZGl0aW5n
UmFuZ2VJc1JlbGF0aXZlVG8gPSBFZGl0aW5nUmFuZ2VJc1JlbGF0aXZlVG86OkVkaXRhYmxlUm9v
dCk7CisgICAgc3RhdGljIFJlZlB0cjxXZWJDb3JlOjpSYW5nZT4gcmFuZ2VGcm9tRWRpdGluZ1Jh
bmdlKFdlYkNvcmU6OkZyYW1lJiwgY29uc3QgRWRpdGluZ1JhbmdlJiwgRWRpdGluZ1JhbmdlSXNS
ZWxhdGl2ZVRvID0gRWRpdGluZ1JhbmdlSXNSZWxhdGl2ZVRvOjpFZGl0YWJsZVJvb3QpOwogCiAg
ICAgdm9pZCByZXBvcnRVc2VkRmVhdHVyZXMoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQYWdlL2VmbC9XZWJQYWdlRWZsLmNwcCBiL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvV2ViUGFnZS9lZmwvV2ViUGFnZUVmbC5jcHAKaW5kZXggMTVhMWRjZWExMTJj
MmU3MTNiZDMxM2NmNjdiYWMzNjE2ZDZiMzA3Yy4uZDIxZWQ4YjBhN2Q4MzNmMGViN2NjZGE2ZTk1
MTVjYTczYjFiYmVmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQ
YWdlL2VmbC9XZWJQYWdlRWZsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvZWZsL1dlYlBhZ2VFZmwuY3BwCkBAIC0xNTcsNyArMTU3LDcgQEAgU3RyaW5nIFdlYlBh
Z2U6OmNhY2hlZFN1Z2dlc3RlZEZpbGVuYW1lRm9yVVJMKGNvbnN0IFVSTCYpCiAgICAgcmV0dXJu
IFN0cmluZygpOwogfQogCi1QYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gV2ViUGFnZTo6Y2FjaGVk
UmVzcG9uc2VEYXRhRm9yVVJMKGNvbnN0IFVSTCYpCitSZWZQdHI8U2hhcmVkQnVmZmVyPiBXZWJQ
YWdlOjpjYWNoZWRSZXNwb25zZURhdGFGb3JVUkwoY29uc3QgVVJMJikKIHsKICAgICBub3RJbXBs
ZW1lbnRlZCgpOwogICAgIHJldHVybiAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJQYWdlL2d0ay9XZWJQYWdlR3RrLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViUGFnZS9ndGsvV2ViUGFnZUd0ay5jcHAKaW5kZXggZDc2NjY4MDQzMDJlNTI3ZTQ3
ZjI0Yjk5ODJkZGVkNjQ5YzBhNWQyMy4uZjBlMzRlZmRjMzNiNjg2ZTdiNzE0ZTA4MTA2NjMzZGEy
OGM4ZWQ4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL2d0
ay9XZWJQYWdlR3RrLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2Uv
Z3RrL1dlYlBhZ2VHdGsuY3BwCkBAIC0xODUsMTMgKzE4NSwxMiBAQCBTdHJpbmcgV2ViUGFnZTo6
Y2FjaGVkU3VnZ2VzdGVkRmlsZW5hbWVGb3JVUkwoY29uc3QgVVJMJikKICAgICByZXR1cm4gU3Ry
aW5nKCk7CiB9CiAKLVBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBXZWJQYWdlOjpjYWNoZWRSZXNw
b25zZURhdGFGb3JVUkwoY29uc3QgVVJMJikKK1JlZlB0cjxTaGFyZWRCdWZmZXI+IFdlYlBhZ2U6
OmNhY2hlZFJlc3BvbnNlRGF0YUZvclVSTChjb25zdCBVUkwmKQogewogICAgIG5vdEltcGxlbWVu
dGVkKCk7CiAgICAgcmV0dXJuIDA7CiB9CiAKLQogU3RyaW5nIFdlYlBhZ2U6OnBsYXRmb3JtVXNl
ckFnZW50KGNvbnN0IFVSTCYgdXJsKSBjb25zdAogewogICAgIGlmICh1cmwuaXNOdWxsKCkgfHwg
IW1fcGFnZS0+c2V0dGluZ3MoKS5uZWVkc1NpdGVTcGVjaWZpY1F1aXJrcygpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9XZWJQYWdlTWFjLm1tIGIv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9XZWJQYWdlTWFjLm1tCmluZGV4
IGY3ZWI4ZDcwYzZkNjI4ZTZlYmQzNzlhNjI4OTZmNDEyYTVjYmJlNWEuLjE2Y2M3MzRiZWNjNWE2
NmJkNzg5ODJkMTk5ODQyNTRhMTI3YWJjZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViUGFnZS9tYWMvV2ViUGFnZU1hYy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1dlYlBhZ2VNYWMubW0KQEAgLTcyNCw3ICs3MjQsNyBAQCBT
dHJpbmcgV2ViUGFnZTo6Y2FjaGVkUmVzcG9uc2VNSU1FVHlwZUZvclVSTChjb25zdCBVUkwmIHVy
bCkKICAgICByZXR1cm4gW1tjYWNoZWRSZXNwb25zZUZvclVSTCh0aGlzLCB1cmwpIHJlc3BvbnNl
XSBNSU1FVHlwZV07CiB9CiAKLVBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBXZWJQYWdlOjpjYWNo
ZWRSZXNwb25zZURhdGFGb3JVUkwoY29uc3QgVVJMJiB1cmwpCitSZWZQdHI8U2hhcmVkQnVmZmVy
PiBXZWJQYWdlOjpjYWNoZWRSZXNwb25zZURhdGFGb3JVUkwoY29uc3QgVVJMJiB1cmwpCiB7CiAg
ICAgcmV0dXJuIFNoYXJlZEJ1ZmZlcjo6d3JhcE5TRGF0YShbY2FjaGVkUmVzcG9uc2VGb3JVUkwo
dGhpcywgdXJsKSBkYXRhXSk7CiB9CkBAIC03NzMsMzcgKzc3MywzMyBAQCB2b2lkIFdlYlBhZ2U6
OmFjY2VwdHNGaXJzdE1vdXNlKGludCBldmVudE51bWJlciwgY29uc3QgV2ViS2l0OjpXZWJNb3Vz
ZUV2ZW50JiBldgogICAgICAgICByZXN1bHQgPSAhIWhpdFJlc3VsdC5zY3JvbGxiYXIoKTsKIH0K
IAotdm9pZCBXZWJQYWdlOjpzZXRUb3BPdmVyaGFuZ0ltYWdlKFBhc3NSZWZQdHI8V2ViSW1hZ2U+
IGltYWdlKQordm9pZCBXZWJQYWdlOjpzZXRUb3BPdmVyaGFuZ0ltYWdlKFdlYkltYWdlKiBpbWFn
ZSkKIHsKLSAgICBGcmFtZVZpZXcqIGZyYW1lVmlldyA9IG1fbWFpbkZyYW1lLT5jb3JlRnJhbWUo
KS0+dmlldygpOworICAgIGF1dG8qIGZyYW1lVmlldyA9IG1fbWFpbkZyYW1lLT5jb3JlRnJhbWUo
KS0+dmlldygpOwogICAgIGlmICghZnJhbWVWaWV3KQogICAgICAgICByZXR1cm47CiAKLSAgICBH
cmFwaGljc0xheWVyKiBsYXllciA9IGZyYW1lVmlldy0+c2V0V2FudHNMYXllckZvclRvcE92ZXJI
YW5nQXJlYShpbWFnZS5nZXQoKSk7CisgICAgYXV0byogbGF5ZXIgPSBmcmFtZVZpZXctPnNldFdh
bnRzTGF5ZXJGb3JUb3BPdmVySGFuZ0FyZWEoaW1hZ2UpOwogICAgIGlmICghbGF5ZXIpCiAgICAg
ICAgIHJldHVybjsKIAogICAgIGxheWVyLT5zZXRTaXplKGltYWdlLT5zaXplKCkpOwogICAgIGxh
eWVyLT5zZXRQb3NpdGlvbihGbG9hdFBvaW50KDAsIC1pbWFnZS0+c2l6ZSgpLmhlaWdodCgpKSk7
Ci0KLSAgICBSZXRhaW5QdHI8Q0dJbWFnZVJlZj4gY2dJbWFnZSA9IGltYWdlLT5iaXRtYXAoKS5t
YWtlQ0dJbWFnZUNvcHkoKTsKLSAgICBsYXllci0+cGxhdGZvcm1MYXllcigpLmNvbnRlbnRzID0g
KGlkKWNnSW1hZ2UuZ2V0KCk7CisgICAgbGF5ZXItPnBsYXRmb3JtTGF5ZXIoKS5jb250ZW50cyA9
IChpZClpbWFnZS0+Yml0bWFwKCkubWFrZUNHSW1hZ2VDb3B5KCkuZ2V0KCk7CiB9CiAKLXZvaWQg
V2ViUGFnZTo6c2V0Qm90dG9tT3ZlcmhhbmdJbWFnZShQYXNzUmVmUHRyPFdlYkltYWdlPiBpbWFn
ZSkKK3ZvaWQgV2ViUGFnZTo6c2V0Qm90dG9tT3ZlcmhhbmdJbWFnZShXZWJJbWFnZSogaW1hZ2Up
CiB7Ci0gICAgRnJhbWVWaWV3KiBmcmFtZVZpZXcgPSBtX21haW5GcmFtZS0+Y29yZUZyYW1lKCkt
PnZpZXcoKTsKKyAgICBhdXRvKiBmcmFtZVZpZXcgPSBtX21haW5GcmFtZS0+Y29yZUZyYW1lKCkt
PnZpZXcoKTsKICAgICBpZiAoIWZyYW1lVmlldykKICAgICAgICAgcmV0dXJuOwogCi0gICAgR3Jh
cGhpY3NMYXllciogbGF5ZXIgPSBmcmFtZVZpZXctPnNldFdhbnRzTGF5ZXJGb3JCb3R0b21PdmVy
SGFuZ0FyZWEoaW1hZ2UuZ2V0KCkpOworICAgIGF1dG8qIGxheWVyID0gZnJhbWVWaWV3LT5zZXRX
YW50c0xheWVyRm9yQm90dG9tT3ZlckhhbmdBcmVhKGltYWdlKTsKICAgICBpZiAoIWxheWVyKQog
ICAgICAgICByZXR1cm47CiAKICAgICBsYXllci0+c2V0U2l6ZShpbWFnZS0+c2l6ZSgpKTsKLSAg
ICAKLSAgICBSZXRhaW5QdHI8Q0dJbWFnZVJlZj4gY2dJbWFnZSA9IGltYWdlLT5iaXRtYXAoKS5t
YWtlQ0dJbWFnZUNvcHkoKTsKLSAgICBsYXllci0+cGxhdGZvcm1MYXllcigpLmNvbnRlbnRzID0g
KGlkKWNnSW1hZ2UuZ2V0KCk7CisgICAgbGF5ZXItPnBsYXRmb3JtTGF5ZXIoKS5jb250ZW50cyA9
IChpZClpbWFnZS0+Yml0bWFwKCkubWFrZUNHSW1hZ2VDb3B5KCkuZ2V0KCk7CiB9CiAKIHZvaWQg
V2ViUGFnZTo6dXBkYXRlSGVhZGVyQW5kRm9vdGVyTGF5ZXJzRm9yRGV2aWNlU2NhbGVDaGFuZ2Uo
ZmxvYXQgc2NhbGVGYWN0b3IpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYlByb2Nlc3MuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNw
cAppbmRleCBjMTI4MDE4MzAzNTYwMjJhYmYzMGY4Nzg3Mzc5NmMzNTNkZTNiYmY0Li4zZTVjYmFk
YWIyNDQ0Mjg2MDUwMTM3MDJlOTM0NTAyM2YxNjBiMjkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViUHJvY2Vzcy5jcHAKQEAgLTE1OCwyMiArMTU4LDEyIEBAIFdlYlByb2Nlc3M6Oldl
YlByb2Nlc3MoKQogI2lmIFBMQVRGT1JNKElPUykKICAgICAsIG1fdmlld1VwZGF0ZURpc3BhdGNo
ZXIoVmlld1VwZGF0ZURpc3BhdGNoZXI6OmNyZWF0ZSgpKQogI2VuZGlmCi0gICAgLCBtX2luRGlk
Q2xvc2UoZmFsc2UpCi0gICAgLCBtX2hhc1NldENhY2hlTW9kZWwoZmFsc2UpCi0gICAgLCBtX2Nh
Y2hlTW9kZWwoQ2FjaGVNb2RlbERvY3VtZW50Vmlld2VyKQotICAgICwgbV9mdWxsS2V5Ym9hcmRB
Y2Nlc3NFbmFibGVkKGZhbHNlKQotICAgICwgbV90ZXh0Q2hlY2tlclN0YXRlKCkKLSAgICAsIG1f
aWNvbkRhdGFiYXNlUHJveHkoKm5ldyBXZWJJY29uRGF0YWJhc2VQcm94eSh0aGlzKSkKKyAgICAs
IG1faWNvbkRhdGFiYXNlUHJveHkoKm5ldyBXZWJJY29uRGF0YWJhc2VQcm94eSgqdGhpcykpCiAg
ICAgLCBtX3dlYkxvYWRlclN0cmF0ZWd5KCpuZXcgV2ViTG9hZGVyU3RyYXRlZ3kpCiAgICAgLCBt
X2Ruc1ByZWZldGNoSHlzdGVyZXJpcyhbdGhpc10oSHlzdGVyZXNpc1N0YXRlIHN0YXRlKSB7IGlm
IChzdGF0ZSA9PSBIeXN0ZXJlc2lzU3RhdGU6OlN0b3BwZWQpIG1fZG5zUHJlZmV0Y2hlZEhvc3Rz
LmNsZWFyKCk7IH0pCiAjaWYgRU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCiAgICAgLCBtX3Bs
dWdpblByb2Nlc3NDb25uZWN0aW9uTWFuYWdlcihQbHVnaW5Qcm9jZXNzQ29ubmVjdGlvbk1hbmFn
ZXI6OmNyZWF0ZSgpKQogI2VuZGlmCi0jaWYgRU5BQkxFKFNFUlZJQ0VfQ09OVFJPTFMpCi0gICAg
LCBtX2hhc0ltYWdlU2VydmljZXMoZmFsc2UpCi0gICAgLCBtX2hhc1NlbGVjdGlvblNlcnZpY2Vz
KGZhbHNlKQotICAgICwgbV9oYXNSaWNoQ29udGVudFNlcnZpY2VzKGZhbHNlKQotI2VuZGlmCiAg
ICAgLCBtX25vblZpc2libGVQcm9jZXNzQ2xlYW51cFRpbWVyKCp0aGlzLCAmV2ViUHJvY2Vzczo6
bm9uVmlzaWJsZVByb2Nlc3NDbGVhbnVwVGltZXJGaXJlZCkKICAgICAsIG1fc3RhdGlzdGljc0No
YW5nZWRUaW1lcigqdGhpcywgJldlYlByb2Nlc3M6OnN0YXRpc3RpY3NDaGFuZ2VkVGltZXJGaXJl
ZCkKICNpZiBQTEFURk9STShJT1MpCkBAIC0xOTQsOSArMTg0LDExIEBAIFdlYlByb2Nlc3M6Oldl
YlByb2Nlc3MoKQogI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05P
VElGSUNBVElPTlMpCiAgICAgYWRkU3VwcGxlbWVudDxXZWJOb3RpZmljYXRpb25NYW5hZ2VyPigp
OwogI2VuZGlmCisKICNpZiBFTkFCTEUoTEVHQUNZX0VOQ1JZUFRFRF9NRURJQSkKICAgICBhZGRT
dXBwbGVtZW50PFdlYk1lZGlhS2V5U3RvcmFnZU1hbmFnZXI+KCk7CiAjZW5kaWYKKwogICAgIG1f
cGx1Z0luQXV0b1N0YXJ0T3JpZ2luSGFzaGVzLmFkZChTZXNzaW9uSUQ6OmRlZmF1bHRTZXNzaW9u
SUQoKSwgSGFzaE1hcDx1bnNpZ25lZCwgZG91YmxlPigpKTsKIAogI2lmIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKQpAQCAtMjA3LDcgKzE5OSw2IEBAIFdlYlByb2Nlc3M6OldlYlByb2Nlc3MoKQog
ICAgIG1fcmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JhZ2UtPnNldE5vdGlmaWNhdGlvbkNhbGxi
YWNrKFt0aGlzXSB7CiAgICAgICAgIGlmIChtX3N0YXRpc3RpY3NDaGFuZ2VkVGltZXIuaXNBY3Rp
dmUoKSkKICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgCiAgICAgICAgIG1fc3RhdGlzdGlj
c0NoYW5nZWRUaW1lci5zdGFydE9uZVNob3Qoc3RkOjpjaHJvbm86OnNlY29uZHMoNSkpOwogICAg
IH0pOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNz
LmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaAppbmRleCAyMjhmMDQ2
MTFkYjE4MGJiZmRlN2Y0ZDliNWYyMTNmZGI2M2NjOWUyLi4zNTQ0NjRhODFlNDBiMGRlNGVmY2Fj
YWQ1ZmI4NjRhYTkzNzAzMTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYlByb2Nlc3MuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3Mu
aApAQCAtMjMsOCArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgog
ICovCiAKLSNpZm5kZWYgV2ViUHJvY2Vzc19oCi0jZGVmaW5lIFdlYlByb2Nlc3NfaAorI3ByYWdt
YSBvbmNlCiAKICNpbmNsdWRlICJDYWNoZU1vZGVsLmgiCiAjaW5jbHVkZSAiQ2hpbGRQcm9jZXNz
LmgiCkBAIC0zNDYsMjAgKzM0NSwyMCBAQCBwcml2YXRlOgogICAgIFJlZlB0cjxWaWV3VXBkYXRl
RGlzcGF0Y2hlcj4gbV92aWV3VXBkYXRlRGlzcGF0Y2hlcjsKICNlbmRpZgogCi0gICAgYm9vbCBt
X2luRGlkQ2xvc2U7CisgICAgYm9vbCBtX2luRGlkQ2xvc2UgeyBmYWxzZSB9OwogCiAgICAgSGFz
aE1hcDxXZWJDb3JlOjpTZXNzaW9uSUQsIEhhc2hNYXA8dW5zaWduZWQsIGRvdWJsZT4+IG1fcGx1
Z0luQXV0b1N0YXJ0T3JpZ2luSGFzaGVzOwogICAgIEhhc2hTZXQ8U3RyaW5nPiBtX3BsdWdJbkF1
dG9TdGFydE9yaWdpbnM7CiAKLSAgICBib29sIG1faGFzU2V0Q2FjaGVNb2RlbDsKLSAgICBDYWNo
ZU1vZGVsIG1fY2FjaGVNb2RlbDsKKyAgICBib29sIG1faGFzU2V0Q2FjaGVNb2RlbCB7IGZhbHNl
IH07CisgICAgQ2FjaGVNb2RlbCBtX2NhY2hlTW9kZWwgeyBDYWNoZU1vZGVsRG9jdW1lbnRWaWV3
ZXIgfTsKIAogI2lmIFBMQVRGT1JNKENPQ09BKQogICAgIFdlYkNvcmU6Ok1hY2hTZW5kUmlnaHQg
bV9jb21wb3NpdGluZ1JlbmRlclNlcnZlclBvcnQ7CiAgICAgcGlkX3QgbV9wcmVzZW50ZXJBcHBs
aWNhdGlvblBpZDsKICNlbmRpZgogCi0gICAgYm9vbCBtX2Z1bGxLZXlib2FyZEFjY2Vzc0VuYWJs
ZWQ7CisgICAgYm9vbCBtX2Z1bGxLZXlib2FyZEFjY2Vzc0VuYWJsZWQgeyBmYWxzZSB9OwogCiAg
ICAgSGFzaE1hcDx1aW50NjRfdCwgV2ViRnJhbWUqPiBtX2ZyYW1lTWFwOwogCkBAIC0zODgsOSAr
Mzg3LDkgQEAgcHJpdmF0ZToKICNlbmRpZgogCiAjaWYgRU5BQkxFKFNFUlZJQ0VfQ09OVFJPTFMp
Ci0gICAgYm9vbCBtX2hhc0ltYWdlU2VydmljZXM7Ci0gICAgYm9vbCBtX2hhc1NlbGVjdGlvblNl
cnZpY2VzOwotICAgIGJvb2wgbV9oYXNSaWNoQ29udGVudFNlcnZpY2VzOworICAgIGJvb2wgbV9o
YXNJbWFnZVNlcnZpY2VzIHsgZmFsc2UgfTsKKyAgICBib29sIG1faGFzU2VsZWN0aW9uU2Vydmlj
ZXMgeyBmYWxzZSB9OworICAgIGJvb2wgbV9oYXNSaWNoQ29udGVudFNlcnZpY2VzIHsgZmFsc2Ug
fTsKICNlbmRpZgogCiAgICAgSGFzaFNldDx1aW50NjRfdD4gbV9wYWdlc0luV2luZG93czsKQEAg
LTQxNiw1ICs0MTUsMyBAQCBwcml2YXRlOgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0Ci0K
LSNlbmRpZiAvLyBXZWJQcm9jZXNzX2gK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>298926</attachid>
            <date>2017-01-15 12:28:06 -0800</date>
            <delta_ts>2017-01-15 13:53:55 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-167055-20170115122620.patch</filename>
            <type>text/plain</type>
            <size>672114</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEwNzgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjY3ZmVjZTg5NjRiMTdl
NjMwMzMyMTUzYzFmZWI5OTdlMDc2ZWNjZS4uMTQwNTk5YmRkNTBmODIxMzZkN2E4ZjMxMTBlYmZj
NzljY2MxMDY2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxNCBAQAorMjAxNy0wMS0xNSAgRGFy
aW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIFBhc3NSZWZQdHIg
ZnJvbSAibG9hZGVyIiBkaXJlY3Rvcnkgb2YgV2ViQ29yZQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY3MDU1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6RG9jdW1lbnQ6OnByb2Nlc3NIdHRwRXF1aXYpOiBQYXNzIGEgcmVmZXJlbmNlLgor
ICAgICAgICAqIGVkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6RWRpdENvbW1hbmRDb21wb3NpdGlvbjo6dW5hcHBseSk6IERpdHRvLgorICAgICAgICAo
V2ViQ29yZTo6RWRpdENvbW1hbmRDb21wb3NpdGlvbjo6cmVhcHBseSk6IERpdHRvLgorICAgICAg
ICAoV2ViQ29yZTo6Q29tcG9zaXRlRWRpdENvbW1hbmQ6OmVuc3VyZUNvbXBvc2l0aW9uKTogUmV0
dXJuIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6Q29tcG9zaXRlRWRpdENvbW1hbmQ6
OmFwcGx5Q29tbWFuZFRvQ29tcG9zaXRlKTogVXNlIGEgcmVmZXJlbmNlLgorICAgICAgICAqIGVk
aXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuaDogVXBkYXRlZCBmb3IgYWJvdmUgY2hhbmdlcy4K
KworICAgICAgICAqIGVkaXRpbmcvRWRpdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRv
cjo6dW5hcHBsaWVkRWRpdGluZyk6IFRha2UgYSByZWZlcmVuY2UgaW5zdGVhZCBvZiBhIFBhc3NS
ZWZQdHIuCisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OnJlYXBwbGllZEVkaXRpbmcpOiBEaXR0
by4KKyAgICAgICAgKiBlZGl0aW5nL0VkaXRvci5oOiBVcGRhdGVkIGZvciBhYm92ZSBjaGFuZ2Vz
LiBBbHNvIGNoYW5nZWQgdGhlCisgICAgICAgIEZyYWdtZW50QW5kUmVzb3VyY2VzIHJlc291cmNl
cyB2ZWN0b3IgdG8gaG9sZCBSZWYgaW5zdGVhZCBvZiBSZWZQdHIuCisKKyAgICAgICAgKiBlZGl0
aW5nL2NvY29hL0VkaXRvckNvY29hLm1tOgorICAgICAgICAoV2ViQ29yZTo6RWRpdG9yOjpjcmVh
dGVGcmFnbWVudEFuZEFkZFJlc291cmNlcyk6IFVwZGF0ZWQgZm9yIGNoYW5nZSB0bworICAgICAg
ICBGcmFnbWVudEFuZFJlc291cmNlcy4KKworICAgICAgICAqIGVkaXRpbmcvaW9zL0VkaXRvcklP
Uy5tbToKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRvcjo6V2ViQ29udGVudFJlYWRlcjo6cmVhZFdl
YkFyY2hpdmUpOiBQYXNzIGEgcmVmZXJlbmNlLgorCisgICAgICAgICogZWRpdGluZy9tYWMvRWRp
dG9yTWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6RWRpdG9yOjpXZWJDb250ZW50UmVhZGVyOjpy
ZWFkV2ViQXJjaGl2ZSk6IFBhc3MgYSByZWZlcmVuY2UuCisKKyAgICAgICAgKiBoaXN0b3J5L1Bh
Z2VDYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpjYW5DYWNoZUZyYW1lKTogVXNlIGEgcmVm
ZXJlbmNlLgorCisgICAgICAgICogaHRtbC9GaWxlSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkZpbGVJbnB1dFR5cGU6OmhhbmRsZURPTUFjdGl2YXRlRXZlbnQpOiBQYXNzIHJlZmVy
ZW5jZXMuCisKKyAgICAgICAgKiBodG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6SFRNTEZvcm1Db250cm9sRWxlbWVudDo6Zm9ybU1ldGhvZCk6IFVzZSBh
dXRvLgorCisgICAgICAgICogaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTEZvcm1FbGVtZW50OjpwcmVwYXJlRm9yU3VibWlzc2lvbik6IFVwZGF0ZWQgdG8g
dXNlIGEgcmV0dXJuCisgICAgICAgIHZhbHVlcyBmb3IgdGV4dEZpZWxkVmFsdWVzIGludHNlYWQg
b2YgYW4gb3V0IGFyZ3VtZW50IHdpdGggZ2V0VGV4dEZpZWxkVmFsdWVzLgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTEZvcm1FbGVtZW50Ojp0ZXh0RmllbGRWYWx1ZXMpOiBSZW5hbWVkIGZyb20gZ2V0
VGV4dEZpZWxkVmFsdWVzCisgICAgICAgIGFuZCBjaGFuZ2VkIHRvIHVzZSBhIHJldHVybiB2YWx1
ZSBpbnN0ZWFkIG9mIGFuIG91dCBhcmd1bWVudC4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxGb3Jt
RWxlbWVudDo6c3VibWl0KTogUGFzcyBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYkNvcmU6OkhU
TUxGb3JtRWxlbWVudDo6cmVxdWVzdEF1dG9jb21wbGV0ZSk6IFBhc3MgYSBSZWYmJi4KKyAgICAg
ICAgKiBodG1sL0hUTUxGb3JtRWxlbWVudC5oOiBVcGRhdGVkIGZvciBhYm92ZSBjaGFuZ2VzLgor
CisgICAgICAgICogaHRtbC9IVE1MSHRtbEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
SFRNTEh0bWxFbGVtZW50OjppbnNlcnRlZEJ5UGFyc2VyKTogVXNlIGEgcmVmZXJlbmNlLgorCisg
ICAgICAgICogaHRtbC9IVE1MTGlua0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRN
TExpbmtFbGVtZW50Ojpwcm9jZXNzKTogUGFzcyBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYkNv
cmU6OkhUTUxMaW5rRWxlbWVudDo6c2V0Q1NTU3R5bGVTaGVldCk6IFVzZSBhdXRvLgorCisgICAg
ICAgICogaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxN
ZWRpYUVsZW1lbnQ6OmxvYWRSZXNvdXJjZSk6IFVzZSBhIHJlZmVyZW5jZS4KKworICAgICAgICAq
IGluc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50Ojp1cGRhdGVBcHBsaWNhdGlv
bkNhY2hlU3RhdHVzKTogVXNlIGEgcmVmZXJlbmNlLAorICAgICAgICBhbHNvIHVwZGF0ZSBmb3Ig
c3RydWN0LXN0eWxlIG1lbWJlciBuYW1lcyB3aXRob3UgbV8gcHJlZml4LgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpnZXRGcmFtZXNXaXRoTWFuaWZl
c3RzKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hl
QWdlbnQ6OmdldE1hbmlmZXN0Rm9yRnJhbWUpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6Oklu
c3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6Z2V0QXBwbGljYXRpb25DYWNoZUZvckZyYW1l
KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdl
bnQ6OmJ1aWxkT2JqZWN0Rm9yQXBwbGljYXRpb25DYWNoZSk6IERpdHRvLgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZEFycmF5Rm9yQXBwbGlj
YXRpb25DYWNoZVJlc291cmNlcyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
QXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGVSZXNv
dXJjZSk6IERpdHRvLgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNh
Y2hlQWdlbnQuaDogVXBkYXRlZCBmb3IgYWJvdmUgY2hhbmdlcy4KKworICAgICAgICAqIGluc3Bl
Y3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp1cGRhdGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzSW1wbCk6
IFRha2UgYSByZWZlcmVuY2UuCisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1l
bnRhdGlvbi5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIvRG9j
dW1lbnRMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OkRvY3Vt
ZW50TG9hZGVyKTogTW92ZSBtdWNoIGluaXRpYWxpemF0aW9uIHRvIGNsYXNzIGRlZmluaXRpb24u
CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6b3JpZ2luYWxSZXF1ZXN0KTogTW92
ZWQgdG8gaGVhZGVyIHRvIG1ha2UgaXQgaW5saW5lLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXI6Om9yaWdpbmFsUmVxdWVzdENvcHkpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyOjpyZXF1ZXN0KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpEb2N1
bWVudExvYWRlcjo6dXJsKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRl
cjo6c3RvcExvYWRpbmcpOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXI6OndpbGxTZW5kUmVxdWVzdCk6IFVwZGF0ZWQgdG8gdGFrZSBhIHJhdyBwb2lu
dGVyIGluc3RlYWQgb2YgYQorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXI6OmNvbW1pdERhdGEpOiBDYWxsIHNob3VsZFVzZU1haW5SZXNvdXJjZUVu
Y29kaW5nIGluc3RlYWQgb2YKKyAgICAgICAgc3BlY2lhbCBjYXNpbmcgV2ViQXJjaGl2ZS4KKyAg
ICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjptYXliZUNyZWF0ZUFyY2hpdmUpOiBQYXNz
IHJlZmVyZW5jZXMuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6c2V0QXJjaGl2
ZSk6IFRha2UgUmVmJiYgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXI6OmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMpOiBUYWtlIGEgcmVmZXJlbmNl
IGluc3RlYWQKKyAgICAgICAgb2YgYSBwb2ludGVyLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXI6OnBvcEFyY2hpdmVGb3JTdWJmcmFtZSk6IFJldHVybiBSZWZQdHIgaW5zdGVhZCBv
ZgorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6
OnN1YnJlc291cmNlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6
c3VicmVzb3VyY2VzKTogUmV0dXJuIGEgVmVjdG9yPFJlZj4gaW5zdGVhZCBvZiBhCisgICAgICAg
IFZlY3RvcjxSZWZQdHI+LgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OnN1YnN0
aXR1dGVSZXNvdXJjZURlbGl2ZXJ5VGltZXJGaXJlZCk6IFVzZSBtb3ZlCisgICAgICAgIGluc3Rl
YWQgb2Ygc3dhcC4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpzY2hlZHVsZUFy
Y2hpdmVMb2FkKTogVXNlIHNob3VsZExvYWRGcm9tQXJjaGl2ZU9ubHkKKyAgICAgICAgaW5zdGVh
ZCBvZiBhIHNwZWNpYWwgY2FzZSBmb3IgZWFjaCB0eXBlIG9mIGFyY2hpdmUuCisgICAgICAgIChX
ZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6b3JpZ2luYWxVUkwpOiBNb3ZlZCB0byBoZWFkZXIgdG8g
bWFrZSBpdCBpbmxpbmUuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6cmVzcG9u
c2VVUkwpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpkb2N1bWVu
dFVSTCk6IENhbGwgc2hvdWxkVXNlTWFpblJlc291cmNlVVJMIGluc3RlYWQgb2YKKyAgICAgICAg
c3BlY2lhbCBjYXNpbmcgV2ViQXJjaGl2ZS4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyOjpyZXNwb25zZU1JTUVUeXBlKTogTW92ZWQgdG8gaGVhZGVyIHRvIG1ha2UgaXQgaW5saW5l
LgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmN1cnJlbnRDb250ZW50VHlwZSk6
IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmNvbnRlbnRGaWx0ZXIp
OiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpnZXRJY29uTG9hZERl
Y2lzaW9uRm9ySWNvblVSTCk6IFBhc3MgYSByZWZlcmVuY2UuCisgICAgICAgIChXZWJDb3JlOjpE
b2N1bWVudExvYWRlcjo6Z2V0SWNvbkRhdGFGb3JJY29uVVJMKTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6ZGlzcGF0Y2hPbmxvYWRFdmVudHMpOiBVc2UgYSByZWZl
cmVuY2UuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6dW5yZWFjaGFibGVVUkwp
OiBNb3ZlZCB0byBoZWFkZXIgdG8gbWFrZSBpdCBpbmxpbmUuCisgICAgICAgICogbG9hZGVyL0Rv
Y3VtZW50TG9hZGVyLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRl
ci9FbXB0eUNsaWVudHMuY3BwOiBVcGRhdGVkIGZvciBjaGFuZ2VzIHRvIGNsaWVudCBpbnRlcmZh
Y2VzLgorICAgICAgICAqIGxvYWRlci9FbXB0eUNsaWVudHMuaDogRGl0dG8uCisKKyAgICAgICAg
KiBsb2FkZXIvRm9ybVN0YXRlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvcm1TdGF0ZTo6Rm9y
bVN0YXRlKTogVGFrZSByZWZlcmVuY2VzIGluc3RlYWQgb2YgUGFzc1JlZlB0ciwgYWxzbworICAg
ICAgICB0YWtlIFZlY3RvciYmIGluc3RlYWQgb2YgVmVjdG9yJiB3aGVuIHdlIHdhbnQgdG8gdGFr
ZSBvd25lcnNoaXAgYW5kIHVzZSBtb3ZlCisgICAgICAgIGluc3RlYWQgb2Ygc3dhcCB0byBkbyB0
aGF0LgorICAgICAgICAoV2ViQ29yZTo6Rm9ybVN0YXRlOjpjcmVhdGUpOiBEaXR0by4KKyAgICAg
ICAgKiBsb2FkZXIvRm9ybVN0YXRlLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4gQWxzbyBjaGFu
Z2VkIHJldHVybiB2YWx1ZXMgdG8gYmUKKyAgICAgICAgcmVmZXJlbmNlcyBpbnN0ZWFkIG9mIHBv
aW50ZXJzIGFuZCBtZW1iZXJzIHRvIGJlIFJlZiBpbnN0ZWFkIG9mIFJlZlB0ci4KKworICAgICAg
ICAqIGxvYWRlci9Gb3JtU3VibWlzc2lvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb3JtU3Vi
bWlzc2lvbjo6QXR0cmlidXRlczo6cGFyc2VNZXRob2RUeXBlKTogVXBkYXRlZCBmb3IgY2hhbmdl
CisgICAgICAgIHRvIHRoZSBNZXRob2QgZW51bWVyYXRpb24uCisgICAgICAgIChXZWJDb3JlOjpG
b3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6Y29weUZyb20pOiBEZWxldGVkLgorICAgICAgICAo
V2ViQ29yZTo6Rm9ybVN1Ym1pc3Npb246OkZvcm1TdWJtaXNzaW9uKTogVXNlIFJlZiYmIGluc3Rl
YWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYkNvcmU6OkZvcm1TdWJtaXNzaW9uOjpjcmVh
dGUpOiBVc2UgcmVmZXJlbmNlIGluc3RlYWQgb2YgcG9pbnRlciBhbmQKKyAgICAgICAgcmF3IHBv
aW50ZXIgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLiBBbHNvIGNvcHkgYXR0cmlidXRlcyB1c2luZyBj
b3B5IGNvbnN0cnVjdG9yCisgICAgICAgIGluc3RlYWQgb2YgYW4gZXhwbGljaXQgY29weUZyb20g
ZnVuY3Rpb24uCisgICAgICAgIChXZWJDb3JlOjpGb3JtU3VibWlzc2lvbjo6cmVxdWVzdFVSTCk6
IFVwZGF0ZWQgZm9yIGNoYW5nZSB0byB0aGUgTWV0aG9kCisgICAgICAgIGVudW1lcmF0aW9uLgor
ICAgICAgICAoV2ViQ29yZTo6Rm9ybVN1Ym1pc3Npb246OnBvcHVsYXRlRnJhbWVMb2FkUmVxdWVz
dCk6IERpdHRvLgorICAgICAgICAqIGxvYWRlci9Gb3JtU3VibWlzc2lvbi5oOiBVcGRhdGVkIGZv
ciB0aGUgYWJvdmUgY2hhbmdlcy4gTWFkZSB0aGUgQXR0cmlidXRlcworICAgICAgICBjbGFzcyBj
b3B5YWJsZSwgc2luY2Ugd2UgY29weSBpdC4gQ2hhbmdlZCBzb21lIGZ1bmN0aW9ucyB0byByZXR1
cm4gcmVmZXJlbmNlcworICAgICAgICBpbnN0ZWFkIG9mIHBvaW50ZXJzIGFuZCB1c2UgUmVmIGlu
c3RlYWQgb2YgUmVmUHRyIGZvciBkYXRhIG1lbWJlcnMuCisKKyAgICAgICAgKiBsb2FkZXIvRnJh
bWVMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6OnN1Ym1pdEZvcm0p
OiBVcGRhdGVkIGZvciBjaGFuZ2VzIHRvIEZvcm1TdWJtaXNzaW9uCisgICAgICAgIGFuZCBGb3Jt
U3RhdGUuCisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6cmVjZWl2ZWRGaXJzdERhdGEp
OiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2FkRnJhbWVSZXF1ZXN0
KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6bG9hZFJlc291cmNlU3lu
Y2hyb25vdXNseSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6OmNvbnRp
bnVlTG9hZEFmdGVyTmF2aWdhdGlvblBvbGljeSk6IERpdHRvLgorCisgICAgICAgICogbG9hZGVy
L0ZyYW1lTG9hZGVyQ2xpZW50Lmg6IFVzZSByZWZlcmVuY2VzLCBwb2ludGVycywgUmVmUHRyLCBh
bmQgUmVmCisgICAgICAgIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4gUmVtb3ZlZCB1bnVzZWQgZW1w
dHkgZGlzcGF0Y2hEaWRGYWlsVG9TdGFydFBsdWdpbi4KKworICAgICAgICAqIGxvYWRlci9IaXN0
b3J5Q29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5Q29udHJvbGxlcjo6
cHVzaFN0YXRlKTogVGFrZSBSZWZQdHImJiBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAg
IChXZWJDb3JlOjpIaXN0b3J5Q29udHJvbGxlcjo6cmVwbGFjZVN0YXRlKTogRGl0dG8uCisgICAg
ICAgICogbG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4K
KworICAgICAgICAqIGxvYWRlci9JbWFnZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJ
bWFnZUxvYWRlcjo6dXBkYXRlRnJvbUVsZW1lbnQpOiBQYXNzIGEgcmVmZXJlbmNlLgorCisgICAg
ICAgICogbG9hZGVyL05hdmlnYXRpb25TY2hlZHVsZXIuY3BwOiBVc2UgcmVmZXJuY2VzIGFuZCBS
ZWYmJiBpbnN0ZWFkIG9mCisgICAgICAgIHBvaW50ZXJzIGFuZCBQYXNzUmVmUHRyLgorICAgICAg
ICAoV2ViQ29yZTo6U2NoZWR1bGVkTmF2aWdhdGlvbjo6U2NoZWR1bGVkTmF2aWdhdGlvbik6IEFk
ZGVkIGFuIG92ZXJsb2FkCisgICAgICAgIHRoYXQgc2VzdHMgbV9zaG91bGRPcGVuRXh0ZXJuYWxV
UkxzUG9saWN5LgorICAgICAgICAqIGxvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmg6IFVwZGF0
ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWRlci5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcjo6c3RhcnQpOiBVc2UgYW5kIHBhc3Mg
cmVmZXJlbmNlcy4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZGVyOjp3aWxsU2VuZFJl
cXVlc3QpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZGVyOjpkaWRSZWNl
aXZlUmVzcG9uc2UpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZGVyOjpk
aWRGYWlsKTogRGl0dG8uCisKKyAgICAgICAgKiBsb2FkZXIvU3ViZnJhbWVMb2FkZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQp
OiBSZXR1cm4gUmVmUHRyIGluc3RlYWQKKyAgICAgICAgb2YgUGFzc1JlZlB0ci4gUGFzcyByZWZl
cmVuY2VzIGluc3RlYWQgb2YgcG9pbnRlcnMuCisgICAgICAgIChXZWJDb3JlOjpTdWJmcmFtZUxv
YWRlcjo6bG9hZE9yUmVkaXJlY3RTdWJmcmFtZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6
U3ViZnJhbWVMb2FkZXI6OmxvYWRTdWJmcmFtZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6
U3ViZnJhbWVMb2FkZXI6OmRvY3VtZW50KTogRGVsZXRlZC4gVGhpcyB3YXMgbmV2ZXIgcmVhbGx5
IHRoZQorICAgICAgICBjb3JyZWN0IGlkaW9tIGZvciBnZXR0aW5nIHRoZSBhcHByb3ByaWF0ZSBk
b2N1bWVudDsgaGlkaW5nIHRoZSBkZXBlbmRlbmN5CisgICAgICAgIG9uIG1fZnJhbWUgd2Fzbid0
IHBhaW5nIG9mZi4KKyAgICAgICAgKFdlYkNvcmU6OlN1YmZyYW1lTG9hZGVyOjpsb2FkUGx1Z2lu
KTogUGFzcyByZWZlcmVuY2UgaW5zdGVhZCBvZiBwb2ludGVyLgorICAgICAgICAoV2ViQ29yZTo6
U3ViZnJhbWVMb2FkZXI6OnNob3VsZENvbnZlcnRJbnZhbGlkVVJMc1RvQmxhbmspOiBFbGltaW5h
dGVkCisgICAgICAgIHVubmVlZGVkIG51bGwgY2hlY2tpbmcgYW5kIGNvbXBsZXhpdHkgZHVlIHRv
IGdvaW5nIHRocm91Z2ggdGhlIGRvY3VtZW50CisgICAgICAgIGluc3RlYWQgb2YgdGhlIGZyYW1l
IGZvciB0aGlzIGNoZWNrLgorICAgICAgICAqIGxvYWRlci9TdWJmcmFtZUxvYWRlci5oOiBVcGRh
dGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRp
b25DYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNh
dGlvbkNhY2hlKTogTW92ZWQgZGF0YSBtZW1iZXIKKyAgICAgICAgaW5pdGlhbGl6YXRpb24gdG8g
dGhlIGNsYXNzIGRlZmluaXRpb24uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hl
Ojp+QXBwbGljYXRpb25DYWNoZSk6IFBhc3MgYSByZWZlcmVuY2UgaW5zdGVhZAorICAgICAgICBv
ZiBhIHBvaW50ZXIuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlOjppc0NvbXBs
ZXRlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlOjpzZXRNYW5p
ZmVzdFJlc291cmNlKTogVGFrZSBSZWYmJiBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIu
CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlOjphZGRSZXNvdXJjZSk6IERpdHRv
LgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZTo6cmVtb3ZlUmVzb3VyY2UpOiBE
ZWxldGVkLiBXYXMgdW51c2VkLgorICAgICAgICAqIGxvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlv
bkNhY2hlLmg6IFVwZGF0ZWQgZm9yIGFib3ZlIGNoYW5nZXMuCisKKyAgICAgICAgKiBsb2FkZXIv
YXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFw
cGxpY2F0aW9uQ2FjaGVHcm91cDo6QXBwbGljYXRpb25DYWNoZUdyb3VwKTogTW92ZWQgbW9zdAor
ICAgICAgICBtZW1iZXIgaW5pdGlhbGl6YXRpb24gdG8gdGhlIGNsYXNzIGRlZmluaXRpb24uCisg
ICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6On5BcHBsaWNhdGlvbkNhY2hl
R3JvdXApOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25D
YWNoZUdyb3VwOjpjYWNoZUZvck1haW5SZXF1ZXN0KTogUmVtb3ZlZAorICAgICAgICB1bm5lY2Vz
c2FyeSBwcmVmbGlnaHQgZm9yIHJlbW92ZUZyYWdtZW50SWRlbnRpZmllciwgd2hpY2ggZWZmaWNp
ZW50bHkKKyAgICAgICAgZG9lcyBub3RoaW5nIGlmIHRoZXJlIGlzIG5vIGlkZW50aWZpZXIuIFVz
ZSBlYXJseSByZXR1cm4uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
OmZhbGxiYWNrQ2FjaGVGb3JNYWluUmVxdWVzdCk6IE1vcmUgb2YKKyAgICAgICAgdGhlIHNhbWUu
CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVjdENhY2hlKTog
RGl0dG8sIGFsc28gdGFrZSBhIHJlZmVyZW5jZSwKKyAgICAgICAgYW5kIHVzZSBldmVudCBuYW1l
cyBpbnN0ZWFkIG9mIGEgc3BlY2lhbCBlbnVtZXJhdGlvbiB0byBwb2FzdCBldmVudHMuCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVjdENhY2hlV2l0aG91dE1h
bmlmZXN0VVJMKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3Jv
dXA6OmZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29y
ZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKTogRGl0
dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRpc2Fzc29jaWF0
ZURvY3VtZW50TG9hZGVyKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNh
Y2hlR3JvdXA6OmNhY2hlRGVzdHJveWVkKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBs
aWNhdGlvbkNhY2hlR3JvdXA6OnN0b3BMb2FkaW5nSW5GcmFtZSk6IERpdHRvLgorICAgICAgICAo
V2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZXROZXdlc3RDYWNoZSk6IFVzZSBSZWYm
JiBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJDb3JlOjpBcHBs
aWNhdGlvbkNhY2hlR3JvdXA6Om1ha2VPYnNvbGV0ZSk6IE1vcmUgb2YgdGhlIHNhbWUuCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnVwZGF0ZSk6IERpdHRvLgorICAg
ICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjphYm9ydCk6IERpdHRvLgorICAg
ICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpkaWRSZWNlaXZlUmVzcG9uc2Up
OiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZGlkRmlu
aXNoTG9hZGluZyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdy
b3VwOjpkaWRGYWlsKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hl
R3JvdXA6OmRpZEZpbmlzaExvYWRpbmdNYW5pZmVzdCk6IERpdHRvLgorICAgICAgICAoV2ViQ29y
ZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjptYW5pZmVzdE5vdEZvdW5kKTogRGl0dG8uCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNoZWNrSWZMb2FkSXNDb21wbGV0
ZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpzdGFy
dExvYWRpbmdFbnRyeSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNo
ZUdyb3VwOjpkZWxpdmVyRGVsYXllZE1haW5SZXNvdXJjZXMpOiBVc2UgYSBtb2Rlcm4KKyAgICAg
ICAgZm9yIGxvb3AuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFk
ZEVudHJ5KTogVXNlIGF1dG8gYW5kIHNpbXBsaWZ5IGxvZ2ljCisgICAgICAgIGZvciBhZGRpbmcu
CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFzc29jaWF0ZURvY3Vt
ZW50TG9hZGVyV2l0aENhY2hlKTogVXBkYXRlIHNpbmNlCisgICAgICAgIGZ1bmN0aW9uIHJlc3Vs
dCBpcyBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVHcm91
cDo6c2NoZWR1bGVSZWFjaGVkTWF4QXBwQ2FjaGVTaXplQ2FsbGJhY2spOgorICAgICAgICBVc2Ug
YXV0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6cG9zdExpc3Rl
bmVyVGFzayk6IFRha2UgZXZlbnQgdHlwZSBpbnN0ZWFkIG9mCisgICAgICAgIHRha2luZyBhIHNw
ZWNpYWwgZW51bWVyYXRpb24uCisgICAgICAgICogbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9u
Q2FjaGVHcm91cC5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIv
YXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUhvc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QXBw
bGljYXRpb25DYWNoZUhvc3Q6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0KTogTW92ZSBtb3N0IG1lbWJl
cgorICAgICAgICBpbml0aWFsaXphdGlvbiB0byB0aGUgY2xhc3MgZGVmaW5pdGlvbi4KKyAgICAg
ICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojp+QXBwbGljYXRpb25DYWNoZUhvc3Qp
OiBVc2UgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhvc3Q6
OnNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpB
cHBsaWNhdGlvbkNhY2hlSG9zdDo6c2VsZWN0Q2FjaGVXaXRoTWFuaWZlc3QpOiBEaXR0by4KKyAg
ICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0OjptYWluUmVzb3VyY2VEYXRhUmVj
ZWl2ZWQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojpm
YWlsZWRMb2FkaW5nTWFpblJlc291cmNlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6ZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKTogRGl0dG8uCisg
ICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWF5YmVMb2FkRmFsbGJhY2tG
b3JSZWRpcmVjdCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhv
c3Q6Om1heWJlTG9hZEZhbGxiYWNrRm9yUmVzcG9uc2UpOiBEaXR0by4KKyAgICAgICAgKFdlYkNv
cmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpjcmVhdGVGaWxlVVJMKTogRGl0dG8uCisgICAgICAg
IChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWF5YmVMb2FkU3luY2hyb25vdXNseSk6
IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhvc3Q6Om5vdGlmeURP
TUFwcGxpY2F0aW9uQ2FjaGUpOiBUYWtlIGV2ZW50CisgICAgICAgIHR5cGUgaW5zdGVhZCBvZiBz
cGVjaWFsIGVudW1lcmF0aW9uLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhv
c3Q6OnN0b3BMb2FkaW5nSW5GcmFtZSk6IFVzZSByZWZlcmVuY2UuCisgICAgICAgIChXZWJDb3Jl
OjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c3RvcERlZmVycmluZ0V2ZW50cyk6IFVwZGF0ZWQgdG8g
dXNlCisgICAgICAgIGV2ZW50IHR5cGVzIGluc3RlYWQgb2Ygc3BlY2lhbCBlbnVtZXJhdGlvbiBh
bmQgYWxzbyByZXBhaXJlZCBwb3NzaWJsZQorICAgICAgICBlZGdlIGNhc2Ugd2hlcmUgY29kZSBp
biBldmVudCBoYW5kbGVyIHNvbWVob3cgdHJpZ2dlcnMgYWRkaXRpb25hbCBldmVudHMuCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6cmVzb3VyY2VMaXN0KTogUmVuYW1l
ZCBmcm9tIGZpbGxSZXNvdXJjZUxpc3QKKyAgICAgICAgYW5kIGNoYW5nZWQgdG8gcmV0dXJuIGEg
dmVjdG9yIGluc3RlYWQgb2YgcG9wdWxhdGluZyBvbmUuCisgICAgICAgIChXZWJDb3JlOjpBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6YXBwbGljYXRpb25DYWNoZUluZm8pOiBUd2VhayBjb2Rpbmcgc3R5
bGUgYSBiaXQuCisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVBcHBsaWNhdGlvbkNhY2hlRXZlbnQp
OiBGYWN0b3JlZCB0aGlzIGhlbHBlciBvdXQgb2YKKyAgICAgICAgZGlzcGF0Y2hET01FdmVudCBz
byB3ZSBjYW4gdXNlIFJlZiBpbnN0ZWFkIG9mIFJlZlB0ci4KKyAgICAgICAgKFdlYkNvcmU6OkFw
cGxpY2F0aW9uQ2FjaGVIb3N0OjpkaXNwYXRjaERPTUV2ZW50KTogVXBkYXRlZCB0byByZWNlbnQg
ZXZlbnQgdHlwZQorICAgICAgICByYXRoZXIgdGhhbiByZWNlaXZpbmcgYW4gZXZlbnQgaWQgYW5k
IG1hcHBpbmcgaXQgdG8gYSB0eXBlLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNo
ZUhvc3Q6OnNldEFwcGxpY2F0aW9uQ2FjaGUpOiBUYWtlIFJlZlB0ciYmIGluc3RlYWQgb2YKKyAg
ICAgICAgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0
Ojp1cGRhdGUpOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRp
b25DYWNoZUhvc3Q6OnN3YXBDYWNoZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGlj
YXRpb25DYWNoZUhvc3Q6OmFib3J0KTogRGl0dG8uCisgICAgICAgICogbG9hZGVyL2FwcGNhY2hl
L0FwcGxpY2F0aW9uQ2FjaGVIb3N0Lmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAg
ICAqIGxvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6bG9hZENhY2hlR3JvdXApOiBQYXNz
IGEgUmVmIGluc3RlYWQgb2YgUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25D
YWNoZVN0b3JhZ2U6OmNhY2hlR3JvdXBGb3JVUkwpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6
OkFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpmYWxsYmFja0NhY2hlR3JvdXBGb3JVUkwpOiBEaXR0
by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpjYWNoZUdyb3Vw
RGVzdHJveWVkKTogVGFrZSBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0
aW9uQ2FjaGVTdG9yYWdlOjpjYWNoZUdyb3VwTWFkZU9ic29sZXRlKTogRGl0dG8uCisgICAgICAg
IChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6c3RvcmVOZXdlc3RDYWNoZSk6IERp
dHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmxvYWRDYWNo
ZSk6IFJldHVybiBSZWZQdHIgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29y
ZTo6QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmRlbGV0ZUNhY2hlR3JvdXApOiBQYXNzIGEgcmVm
ZXJlbmNlLgorICAgICAgICAqIGxvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFn
ZS5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIvYXBwY2FjaGUv
RE9NQXBwbGljYXRpb25DYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpET01BcHBsaWNhdGlv
bkNhY2hlOjpET01BcHBsaWNhdGlvbkNhY2hlKTogVGFrZSBhIHJlZmVyZW5jZS4KKyAgICAgICAg
KFdlYkNvcmU6OkRPTUFwcGxpY2F0aW9uQ2FjaGU6OnRvRXZlbnRUeXBlKTogRGVsZXRlZC4KKyAg
ICAgICAgKiBsb2FkZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25DYWNoZS5oOiBVcGRhdGVkIGZv
ciB0aGUgYWJvdmUuIE1hZGUgbW9zdAorICAgICAgICBtZW1iZXJzIHByaXZhdGUuCisKKyAgICAg
ICAgKiBsb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFyY2hp
dmU6OmNsZWFyQWxsU3ViZnJhbWVBcmNoaXZlcyk6IFVzZSBhIHNldCBmb3IgdGhlIGxvZ2ljIHRo
YXQKKyAgICAgICAgcHJldmVudHMgdXMgZnJvbSB3YWxraW5nIHRoZSBzYW1lIGFyY2hpdmUgbW9y
ZSB0aGFuIG9uY2UsIHJhdGhlciB0aGFuIHVzaW5nCisgICAgICAgIGEgdmVjdG9yLiBMZWZ0IGl0
IHJlY3Vyc2l2ZSwgdGhvdWdoLgorICAgICAgICAqIGxvYWRlci9hcmNoaXZlL0FyY2hpdmUuaDog
R2l0IHJpZCBvZiB0aGUgdHlwZSBmdW5jdGlvbiwgcmVwbGFjaW5nIGl0IHdpdGgKKyAgICAgICAg
dGhyZWUgZnVuY3Rpb25zIGZvciB0aGUgZm91ciBkaWZmZXJlbnQgcG9saWNpZXMgd2UgY3VycmVu
dGx5IGhhdmUgYWJvdXQgdGhlCisgICAgICAgIGRpZmZlcmVudCBhcmNoaXZlIHR5cGVzLiBDaGFu
Z2VkIGZ1bmN0aW9ucyB0byB0YWtlIFJlZiYmIGluc3RlYWQgb2YgUGFzc1JlZlB0cgorICAgICAg
ICBhbmQgcmV0dXJuIGNvbnN0IFZlY3RvcjxSZWY+JiBpbnN0ZWFkIG9mIGNvbnN0IFZlY3RvcjxS
ZWZQdHI+JiwgY2hhbmdpbmcgdGhlCisgICAgICAgIGRhdGEgbWVtYmVycyB0byBtYXRjaC4KKwor
ICAgICAgICAqIGxvYWRlci9hcmNoaXZlL0FyY2hpdmVGYWN0b3J5LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OmNyZWF0ZUFyY2hpdmVNSU1FVHlwZXNNYXApOiBGYWN0b3JlZCB0aGlzIG91dCBvZiB0
aGUgYXJjaGl2ZU1JTUVUeXBlcworICAgICAgICBmdW5jdGlvbiBzbyB3ZSBkb24ndCBuZWVkIGEg
Ym9vbGVhbi4gQWxzbyB1c2UgQVNDSUlMaXRlcmFsLgorICAgICAgICAoV2ViQ29yZTo6YXJjaGl2
ZU1JTUVUeXBlcyk6IFVwZGF0ZWQgdG8gc2UgdGhlIGFib3ZlLgorCisgICAgICAgICogbG9hZGVy
L2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uOjphZGRBbGxSZXNvdXJjZXMpOiBUYWtlIGEgcmVm
ZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6QXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbjo6cG9w
U3ViZnJhbWVBcmNoaXZlKTogUmV0dXJuIFJlZlB0ciBpbnN0ZWFkCisgICAgICAgIG9mIFBhc3NS
ZWZQdHIuCisgICAgICAgICogbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlv
bi5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIvYXJjaGl2ZS9j
Zi9MZWdhY3lXZWJBcmNoaXZlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hp
dmU6OmNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKTogVXNlIGF1dG8gYW5kCisgICAg
ICAgIGZld2VyIGxvY2FsIHZhcmlhYmxlcywgbW9yZSByZWZlcmVuY2VzIGZvciBhcmd1bWVudCB0
eXBlcyBhbmQgcmV0dXJuIHZhbHVlcy4KKyAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hp
dmU6OmNyZWF0ZVJlc291cmNlUmVzcG9uc2VGcm9tUHJvcGVydHlMaXN0RGF0YSk6IERpdHRvLgor
ICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlUmVzb3VyY2UpOiBEaXR0
by4KKyAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZSk6IERpdHRvLgor
ICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6ZXh0cmFjdCk6IERpdHRvLgorICAg
ICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6dHlwZSk6IERlbGV0ZWQuCisgICAgICAg
IChXZWJDb3JlOjpMZWdhY3lXZWJBcmNoaXZlOjpyYXdEYXRhUmVwcmVzZW50YXRpb24pOiBNb3Jl
IG9mIHRoZSBzYW1lLgorICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRl
RnJvbVNlbGVjdGlvbik6IERpdHRvLgorICAgICAgICAqIGxvYWRlci9hcmNoaXZlL2NmL0xlZ2Fj
eVdlYkFyY2hpdmUuaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLiBBbHNvIG1hcmtlZCB0aGUKKyAg
ICAgICAgY2xhc3MgZmluYWwgYW5kIGFkZGVkIG92ZXJyaWRlcyBmb3IgdGhlIGZvdXIgbmV3IHBv
bGljeSBtZW1iZXIgZnVuY3Rpb25zLgorCisgICAgICAgICogbG9hZGVyL2FyY2hpdmUvbWh0bWwv
TUhUTUxBcmNoaXZlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1IVE1MQXJjaGl2ZTo6Y3JlYXRl
KTogUGFzcyByZWZlcmVuY2VzLgorICAgICAgICAoV2ViQ29yZTo6TUhUTUxBcmNoaXZlOjpnZW5l
cmF0ZU1IVE1MRGF0YSk6IFJldHVybiBSZWZQdHIgaW5zdGVhZCBvZgorICAgICAgICBQYXNzUmVm
UHRyLgorICAgICAgICAqIGxvYWRlci9hcmNoaXZlL21odG1sL01IVE1MQXJjaGl2ZS5oOiBVcGRh
dGVkIGZvciB0aGUgYWJvdmUuIEFsc28gbWFya2VkIHRoZQorICAgICAgICBjbGFzcyBmaW5hbCBh
bmQgYWRkZWQgb3ZlcnJpZGVzIGZvciB0aGUgZm91ciBuZXcgcG9saWN5IG1lbWJlciBmdW5jdGlv
bnMuCisKKyAgICAgICAgKiBsb2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRNTFBhcnNlci5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpNSFRNTFBhcnNlcjo6cGFyc2VBcmNoaXZlV2l0aEhlYWRlcik6IFBh
c3MgUmVmIGluc3RlYWQgb2YgUmVmUHRyCisgICAgICAgIHRvIHNldE1haW5SZXNvdXJjZSBhbmQg
YWRkU3ViZnJhbWVBcmNoaXZlLgorICAgICAgICAoV2ViQ29yZTo6TUhUTUxQYXJzZXI6OmFkZFJl
c291cmNlVG9BcmNoaXZlKTogRGl0dG8uCisKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVk
Q1NTU3R5bGVTaGVldC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRDU1NTdHlsZVNoZWV0
OjpyZXN0b3JlUGFyc2VkU3R5bGVTaGVldCk6IFJldHVybiBSZWZQdHIgaW5zdGVhZAorICAgICAg
ICBvZiBQYXNzUmVmUHRyLgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNo
ZWV0Lmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRlci9jYWNoZS9D
YWNoZWRSZXNvdXJjZVJlcXVlc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3Vy
Y2VSZXF1ZXN0OjpzZXRJbml0aWF0b3IpOiBUYWtlIGEgcmVmZXJlbmNlIGluc3RlYWQgb2YgYQor
ICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJj
ZVJlcXVlc3QuaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLgorCisgICAgICAgICogbG9hZGVyL2Nv
Y29hL0Rpc2tDYWNoZU1vbml0b3IuaDogUmVtb3ZlZC4gVGhpcyBpcyBhIGR1cGxpY2F0ZSwgdW51
c2VkIGNvcHkKKyAgICAgICAgb2YgRGlza0NhY2hlTW9uaXRvckNvY29hLmguCisKKyAgICAgICAg
KiBsb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvckNvY29hLmg6IFJlbW92ZWQgdW5uZWVkZWQg
ZXhwb3J0aW5nIGFuZCB2aXJ0dWFsCisgICAgICAgIG1lbWJlciBmdW5jdGlvbnMsIG1hZGUgbW9y
ZSB0aGluZ3MgcHJpdmF0ZSwgYW5kIGNoYW5nZWQgcmV0dXJuIHR5cGUgdG8gUmVmUHRyCisgICAg
ICAgIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKiBsb2FkZXIvY29jb2EvRGlza0Nh
Y2hlTW9uaXRvckNvY29hLm1tOgorICAgICAgICAoV2ViQ29yZTo6RGlza0NhY2hlTW9uaXRvcjo6
dHJ5R2V0RmlsZUJhY2tlZFNoYXJlZEJ1ZmZlckZyb21DRlVSTENhY2hlZFJlc3BvbnNlKToKKyAg
ICAgICAgQ2hhbmdlZCByZXR1cm4gdHlwZSB0byBSZWZQdHIgaW5zdGVhZCBvZiBQYXNzUmVmUHRy
LgorCisgICAgICAgICogbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6Okljb25EYXRhYmFzZTo6c2V0SWNvbkRhdGFGb3JJY29uVVJMKTogVGFrZSByYXcgcG9p
bnRlciBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJDb3JlOjpJ
Y29uRGF0YWJhc2U6OmdldE9yQ3JlYXRlSWNvblJlY29yZCk6IFJldHVybiBSZWYgaW5zdGVhZCBv
ZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6SWNvbkRhdGFiYXNlOjpnZXRJbWFnZURh
dGFGb3JJY29uVVJMRnJvbVNRTERhdGFiYXNlKTogUmV0dXJuIFJlZlB0cgorICAgICAgICBpbnN0
ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgICogbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmg6
IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4gQWxzbyBtYXJrZWQgZnVuY3Rpb25zIGZpbmFsCisgICAg
ICAgIGluc3RlYWQgb2Ygb3ZlcnJpZGUuCisgICAgICAgICogbG9hZGVyL2ljb24vSWNvbkRhdGFi
YXNlQmFzZS5oOiBEaXR0by4KKworICAgICAgICAqIGxvYWRlci9pY29uL1BhZ2VVUkxSZWNvcmQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6UGFnZVVSTFJlY29yZDo6UGFnZVVSTFJlY29yZCk6IE1v
dmVkIGluaXRpYWxpemF0aW9uIHRvIHRoZSBoZWFkZXIuCisgICAgICAgIChXZWJDb3JlOjpQYWdl
VVJMUmVjb3JkOjp+UGFnZVVSTFJlY29yZCk6IFdyb3RlIGNvZGUgaGVyZSBpbnN0ZWFkIG9mIGNh
bGxpbmcKKyAgICAgICAgc2V0SWNvblJlY29yZChudWxscHRyKS4KKyAgICAgICAgKFdlYkNvcmU6
OlBhZ2VVUkxSZWNvcmQ6OnNldEljb25SZWNvcmQpOiBUYWtlIFJlZlB0ciYmIGluc3RlYWQgb2Yg
UGFzc1JlZlB0ci4KKyAgICAgICAgKiBsb2FkZXIvaWNvbi9QYWdlVVJMUmVjb3JkLmg6IFVwZGF0
ZCBmb3IgdGhlIGFib3ZlLgorCisgICAgICAgICogbG9hZGVyL2lvcy9RdWlja0xvb2suaDoKKyAg
ICAgICAgKFdlYkNvcmU6OlF1aWNrTG9va0hhbmRsZTo6c2V0Q2xpZW50KTogVGFrZSBSZWYmJiBp
bnN0ZWFkIG9mIFBhc3NSZUZQdHIuCisgICAgICAgICogbG9hZGVyL2lvcy9RdWlja0xvb2subW06
CisgICAgICAgICgtW1dlYlJlc291cmNlTG9hZGVyUXVpY2tMb29rRGVsZWdhdGUgaW5pdFdpdGhS
ZXNvdXJjZUxvYWRlcjpdKTogVGFrZQorICAgICAgICByZWZlcmVuY2UgaW5zdGVhZCBvZiBQYXNz
UmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6UXVpY2tMb29rSGFuZGxlOjpjcmVhdGUpOiBQYXNz
IHJlZmVyZW5jZSBpbnN0ZWFkIG9mIHBvaW50ZXIuCisKKyAgICAgICAgKiBwYWdlL0Nocm9tZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpDaHJvbWU6OnJ1bk9wZW5QYW5lbCk6IFVwZGF0ZWQgdG8g
dGFrZSB0d28gcmVmZXJlbmNlcy4KKyAgICAgICAgKiBwYWdlL0Nocm9tZS5oOiBEaXR0by4KKyAg
ICAgICAgKiBwYWdlL0Nocm9tZUNsaWVudC5oOiBkaXR0by4KKworICAgICAgICAqIHBhZ2UvRE9N
V2luZG93LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRPTVdpbmRvdzo6YXBwbGljYXRpb25DYWNo
ZSk6IFBhc3MgYSByZWZlcmVuY2UuCisgICAgICAgIChXZWJDb3JlOjpET01XaW5kb3c6OnNldExv
Y2F0aW9uKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpET01XaW5kb3c6OmNyZWF0ZVdpbmRv
dyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RE9NV2luZG93OjpvcGVuKTogRGl0dG8uCisK
KyAgICAgICAgKiBwYWdlL0VkaXRvckNsaWVudC5oOiBDaGFuZ2VkIGFyZ3VtZW50cyB0byByZWZl
cmVuY2VzIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKworICAgICAgICAqIHBhZ2UvSGlzdG9yeS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5OjpzdGF0ZU9iamVjdEFkZGVkKTogUGFzcyBh
biBydmFsdWUgcmVmZXJlbmNlLgorCisgICAgICAgICogcGFnZS9Mb2NhdGlvbi5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpMb2NhdGlvbjo6cmVsb2FkKTogUGFzcyByZWZlcmVuY2UgaW5zdGVhZCBv
ZiBwb2ludGVyLgorICAgICAgICAoV2ViQ29yZTo6TG9jYXRpb246OnNldExvY2F0aW9uKTogRGl0
dG8uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9VUkwuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VVJM
OjpzZXRGcmFnbWVudElkZW50aWZpZXIpOiBUYWtlIGEgU3RyaW5nVmlldyByYXRoZXIgdGhhbgor
ICAgICAgICBhIFN0cmluZywgd2hpY2ggaXMgbW9yZSBmbGV4aWJsZSBmb3IgY2FsbGVycy4gQWxz
byBlbGltaW5hdGVkIGFuIHVubmVlZGVkCisgICAgICAgIHN0cmluZyBhbGxvY2F0aW9uIHdoZW4g
dGhlIG9sZCBzdHJpbmcgaGFkIGEgZnJhZ21lbnQgdGhhdCBpcyBiZWluZyByZXBsYWNlZC4KKyAg
ICAgICAgKiBwbGF0Zm9ybS9VUkwuaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLgorCisgICAgICAg
ICogcmVwbGF5L1JlcGxheUlucHV0RGlzcGF0Y2hNZXRob2RzLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkluaXRpYWxOYXZpZ2F0aW9uOjpkaXNwYXRjaCk6IFBhc3MgcmVmZXJlbmNlLgorICAgICAg
ICAqIHN2Zy9TVkdGRUltYWdlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdGRUlt
YWdlRWxlbWVudDo6cmVxdWVzdEltYWdlUmVzb3VyY2UpOiBEaXR0by4KKyAgICAgICAgKiBzdmcv
U1ZHRm9udEZhY2VVcmlFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR0ZvbnRGYWNl
VXJpRWxlbWVudDo6bG9hZEZvbnQpOiBEaXR0by4KKyAgICAgICAgKiBzdmcvU1ZHVXNlRWxlbWVu
dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdVc2VFbGVtZW50Ojp1cGRhdGVFeHRlcm5hbERv
Y3VtZW50KTogRGl0dG8uCisKIDIwMTctMDEtMTUgIFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9y
Zz4KIAogICAgICAgICBbV2ViSURMXSBSZW1vdmUgY3VzdG9tIGJpbmRpbmdzIGZvciBIVE1MSW5w
dXRFbGVtZW50LCBIVE1MRnJhbWVFbGVtZW50LCBIVE1MTWVkaWFFbGVtZW50IGFuZCBIVE1MT3B0
aW9uc0NvbGxlY3Rpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvaW9zL0NoYW5nZUxvZyBi
L1NvdXJjZS9XZWJLaXQvaW9zL0NoYW5nZUxvZwppbmRleCA2MWU4NDI3Zjg2YzBiOWY2MjQzNTZi
MDcxZDkxZTExYmI3MjcxYTllLi45MmVkNDU2ZTg0MjA3NTVkYWNkZDZjZDJmYzBiYjEzMjY5Yjk0
MmI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2lvcy9DaGFuZ2VMb2cKKysrIGIvU291cmNl
L1dlYktpdC9pb3MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTctMDEtMTUgIERhcmlu
IEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgorCisgICAgICAgIFJlbW92ZSBQYXNzUmVmUHRyIGZy
b20gImxvYWRlciIgZGlyZWN0b3J5IG9mIFdlYkNvcmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2NzA1NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50
SU9TLmg6IFVwZGF0ZWQgcnVuT3BlblBhbmVsIHRvIHRha2UgcmVmZXJlbmNlcy4KKyAgICAgICAg
TWFkZSBjbGFzcyBmaW5hbCBhbmQgbW9zdCBmdW5jdGlvbnMgcHJpdmF0ZSBhbmQgZmluYWwuCisg
ICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50SU9TLm1tOgorICAgICAgICAo
V2ViQ2hyb21lQ2xpZW50SU9TOjpydW5PcGVuUGFuZWwpOiBVcGRhdGVkIHRvIHRha2UgcmVmZXJl
bmNlcy4KKwogMjAxNi0xMi0zMCAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CiAKICAg
ICAgICAgUmVtb3ZlIFBhc3NSZWZQdHIgdXNlIGZyb20gdGhlICJkb20iIGRpcmVjdG9yeSwgcmVs
YXRlZCBjbGVhbnVwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cgYi9T
b3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKaW5kZXggNzU5MzhmNTY2N2I2YTY5NDU3ZDkxYzkx
OTMyMjJhNjQzNzk2MWY0MS4uMjgwMDhiZTAwM2I2NjY4ZTE1NjQwNzRmZmRjZmM5NTAyMzZmOThl
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJLaXQvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDkwIEBACisyMDE3LTAxLTE1ICBEYXJpbiBB
ZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgUGFzc1JlZlB0ciBmcm9t
ICJsb2FkZXIiIGRpcmVjdG9yeSBvZiBXZWJDb3JlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjcwNTUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5o
OiBVcGRhdGVkIGZvciBjaGFuZ2VzIHRvIENocm9tZUNsaWVudC4KKyAgICAgICAgQWxzbyBtYWRl
IGNsYXNzIGZpbmFsIGFuZCBtb3N0IGZ1bmN0aW9ucyBwcml2YXRlIGFuZCBmaW5hbC4KKyAgICAg
ICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQubW06CisgICAgICAgIChXZWJDaHJv
bWVDbGllbnQ6OnJ1bk9wZW5QYW5lbCk6IFVwZGF0ZWQgdG8gdGFrZSByZWZlcmVuY2VzLgorCisg
ICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50Lmg6IFVwZGF0ZWQgZm9yIGNo
YW5nZXMgdG8gRWRpdG9yQ2xpZW50LgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkVkaXRv
ckNsaWVudC5tbToKKyAgICAgICAgKC1bV2ViVW5kb1N0ZXAgaW5pdFdpdGhVbmRvU3RlcDpdKTog
VGFrZSByZWZlcmVuY2UgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoK1tXZWJVbmRv
U3RlcCBzdGVwV2l0aFVuZG9TdGVwOl0pOiBEaXR0by4KKyAgICAgICAgKC1bV2ViVW5kb1N0ZXAg
c3RlcF0pOiBSZXR1cm4gcmVmZXJlbmNlIGluc3RlYWQgb2YgcG9pbnRlci4KKyAgICAgICAgKC1b
V2ViRWRpdG9yVW5kb1RhcmdldCB1bmRvRWRpdGluZzpdKTogVXBkYXRlZCBmb3IgdGhlIGFib3Zl
LgorICAgICAgICAoLVtXZWJFZGl0b3JVbmRvVGFyZ2V0IHJlZG9FZGl0aW5nOl0pOiBEaXR0by4K
KyAgICAgICAgKFdlYkVkaXRvckNsaWVudDo6cmVnaXN0ZXJVbmRvT3JSZWRvU3RlcCk6IFRha2Ug
cmVmZXJlbmNlIGluc3RlYWQgb2YKKyAgICAgICAgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYkVk
aXRvckNsaWVudDo6cmVnaXN0ZXJVbmRvU3RlcCk6IERpdHRvLgorICAgICAgICAoV2ViRWRpdG9y
Q2xpZW50OjpyZWdpc3RlclJlZG9TdGVwKTogRGl0dG8uCisKKyAgICAgICAgKiBXZWJDb3JlU3Vw
cG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oOiBVcGRhdGVkIGZvciBjaGFuZ2VzIHRvCisgICAg
ICAgIEZyYW1lTG9hZGVyQ2xpZW50LCBtYXJrZWQgZnVuY3Rpb25zIGZpbmFsIGluc3RlYWQgb2Yg
b3ZlcnJpZGUuCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQu
bW06CisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lG
b3JOZXdXaW5kb3dBY3Rpb24pOiBUYWtlCisgICAgICAgIHBvaW50ZXIgaW5zdGVhZCBvZiBQYXNz
UmVmUHRyLgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9s
aWN5Rm9yTmF2aWdhdGlvbkFjdGlvbik6IERpdHRvLgorICAgICAgICAobWFrZUZvcm1GaWVsZFZh
bHVlc0RpY3Rpb25hcnkpOiBUYWtlIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudCk6IFRha2UgUmVmJiYgaW5zdGVh
ZAorICAgICAgICBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0pOiBUYWtlIGEgcmVmZXJlbmNlIGluc3RlYWQKKyAgICAg
ICAgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjphY3Rpb25E
aWN0aW9uYXJ5KTogVGFrZSBhIHBvaW50ZXIgaW5zdGVhZCBvZiBQYXNzUmVQdHIuCisgICAgICAg
IChXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlRnJhbWUpOiBUYWtlIGEgcmVmZXJlbmNlIGlu
c3RlYWQgb2YgYSBwb2ludGVyLgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0
ZVBsdWdpbik6IERpdHRvLgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUph
dmFBcHBsZXRXaWRnZXQpOiBEaXR0by4KKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpj
cmVhdGVOZXR3b3JraW5nQ29udGV4dCk6IERpdHRvLgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmRpZENyZWF0ZVF1aWNrTG9va0hhbmRsZSk6IFBhc3MgYSByZWZlcmVuY2UuCisKKyAg
ICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0Lmg6IFVzZSBS
ZWYgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkZy
YW1lTmV0d29ya2luZ0NvbnRleHQubW06IFR3ZWFrIHN0eWxlIGEgYml0LgorCisgICAgICAgICog
V2ViQ29yZVN1cHBvcnQvV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIuaDogVGFrZSBhIHJlZmVy
ZW5jZSBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIuIFVzZSBSZWZQdHIgZm9yIGNsYXNz
IGZpZWxkLgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYk9wZW5QYW5lbFJlc3VsdExpc3Rl
bmVyLm1tOgorICAgICAgICAoLVtXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lciBkZWFsbG9jXSk6
IERlbGV0ZWQuIENvbXBpbGVyIHdpbGwgbm93IGRvIGl0CisgICAgICAgIGNvcnJlY3RseSB3aXRo
b3V0IHVzIGRlY2xhcmluZyBhbnl0aGluZyBleHBsaWNpdGx5LgorICAgICAgICAoLVtXZWJPcGVu
UGFuZWxSZXN1bHRMaXN0ZW5lciBjYW5jZWxdKTogR2V0IHJpZCBvZiBoYW5kLXdyaXR0ZW4gZGVy
ZWYgY29kZSwKKyAgICAgICAgYW5kIGxldCBSZWZQdHIgZG8gdGhlIHdvcmsuCisgICAgICAgICgt
W1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyIGNob29zZUZpbGVuYW1lOl0pOiBEaXR0by4KKyAg
ICAgICAgKC1bV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIgY2hvb3NlRmlsZW5hbWVzOl0pOiBE
aXR0by4KKyAgICAgICAgKC1bV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIgY2hvb3NlRmlsZW5h
bWVzOmRpc3BsYXlTdHJpbmc6aWNvbkltYWdlOl0pOgorICAgICAgICBSZXdyb3RlIHRvIHVzZSBh
IG1vZGVybiBPYmplY3RpdmUtQyBmb3IgbG9vcCwgcmVzZXJ2ZUluaXRpYWxDYXBhY2l0eSwKKyAg
ICAgICAgYW5kIHVuY2hlY2tlZEFwcGVuZC4KKworICAgICAgICAqIFdlYlZpZXcvV2ViQXJjaGl2
ZS5tbToKKyAgICAgICAgKC1bV2ViQXJjaGl2ZSBpbml0V2l0aE1haW5SZXNvdXJjZTpzdWJyZXNv
dXJjZXM6c3ViZnJhbWVBcmNoaXZlczpdKToKKyAgICAgICAgVXBkYXRlZCBmb3IgY2hhbmdlcyB0
byBMZWdhY3lXZWJBcmNoaXZlLgorICAgICAgICAoLVtXZWJBcmNoaXZlIG1haW5SZXNvdXJjZV0p
OiBEaXR0by4KKyAgICAgICAgKC1bV2ViQXJjaGl2ZSBzdWJyZXNvdXJjZXNdKTogRGl0dG8uCisg
ICAgICAgICgtW1dlYkFyY2hpdmUgc3ViZnJhbWVBcmNoaXZlc10pOiBEaXR0by4KKworICAgICAg
ICAqIFdlYlZpZXcvV2ViRGF0YVNvdXJjZS5tbToKKyAgICAgICAgKC1bV2ViRGF0YVNvdXJjZSBf
YWRkU3ViZnJhbWVBcmNoaXZlczpdKTogVXNlIGEgbW9kZXJuIE9iamVjdGl2ZS1DIGZvciBsb29w
CisgICAgICAgIGluc3RlYWQgb2YgTlNFbnVtZXJhdG9yLgorICAgICAgICAoLVtXZWJEYXRhU291
cmNlIF9maWxlV3JhcHBlckZvclVSTDpdKTogVXNlIGF1dG8uCisgICAgICAgICgtW1dlYkRhdGFT
b3VyY2UgX2RvY3VtZW50RnJhZ21lbnRXaXRoQXJjaGl2ZTpdKTogUGFzcyBhIHJlZmVyZW5jZS4K
KyAgICAgICAgKC1bV2ViRGF0YVNvdXJjZSBtYWluUmVzb3VyY2VdKTogRGl0dG8uCisgICAgICAg
ICgtW1dlYkRhdGFTb3VyY2Ugc3VicmVzb3VyY2VzXSk6IERpdHRvLgorICAgICAgICAoLVtXZWJE
YXRhU291cmNlIHN1YnJlc291cmNlRm9yVVJMOl0pOiBEaXR0by4KKyAgICAgICAgKC1bV2ViRGF0
YVNvdXJjZSBhZGRTdWJyZXNvdXJjZTpdKTogRGl0dG8uCisKKyAgICAgICAgKiBXZWJWaWV3L1dl
YlJlc291cmNlLm1tOgorICAgICAgICAoLVtXZWJSZXNvdXJjZVByaXZhdGUgaW5pdFdpdGhDb3Jl
UmVzb3VyY2U6XSk6IFRha2UgUmVmJiYgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAo
LVtXZWJSZXNvdXJjZVByaXZhdGUgZGVhbGxvY10pOiBSZW1vdmUgZXhwbGljaXQgZGVyZWYgc2lu
Y2UgUmVmUHRyIHdpbGwgbm93IHRha2UKKyAgICAgICAgY2FyZSBvZiBpdAorICAgICAgICAoLVtX
ZWJSZXNvdXJjZSBpbml0V2l0aENvZGVyOl0pOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAo
LVtXZWJSZXNvdXJjZSBlbmNvZGVXaXRoQ29kZXI6XSk6IFVwZGF0ZWQgc2luY2UgY29yZVJlc291
cmNlIGlzIG5vdyBSZWZQdHIuCisgICAgICAgICgtW1dlYlJlc291cmNlIF9pbml0V2l0aENvcmVS
ZXNvdXJjZTpdKTogVGFrZSBSZWYmJiBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgICgt
W1dlYlJlc291cmNlIF9jb3JlUmVzb3VyY2VdKTogUmV0dXJuIHJlZmVyZW5jZSByYXRoZXIgdGhh
biBwb2ludGVyLgorICAgICAgICAoLVtXZWJSZXNvdXJjZSBfaW5pdFdpdGhEYXRhOlVSTDpNSU1F
VHlwZTp0ZXh0RW5jb2RpbmdOYW1lOmZyYW1lTmFtZTpyZXNwb25zZTpjb3B5RGF0YTpdKToKKyAg
ICAgICAgQWRkZWQgY29kZSB0byBoYW5kbGUgdGhlIG51bGwgY2FzZSBhbmQgcGFzcyBhIHJlZmVy
ZW5jZSByYXRoZXIgdGhhbiBhIHBvaW50ZXIuCisgICAgICAgICogV2ViVmlldy9XZWJSZXNvdXJj
ZUludGVybmFsLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKwogMjAxNy0wMS0xNSAgVGltIEhv
cnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KIAogICAgICAgICBEZS1kdXBsaWNhdGUg
bW9yZSAobmVhcmx5KSBpZGVudGljYWwgY29kZSBpbiBFZGl0b3IoTWFjfElPUykubW0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvd2luL0No
YW5nZUxvZwppbmRleCBjZDdmNjhkZjViZjYxMzNlMDJkMjFjOGVjNjJiOWM5MmRlNTcyZTAwLi5i
NmMwNjM2ZTAzM2E3MmQ0NTFlZTk3MTcxMTg3YjQzYWUzOTIxMWQxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC93aW4vQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMzkgQEAKKzIwMTctMDEtMTUgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUu
Y29tPgorCisgICAgICAgIFJlbW92ZSBQYXNzUmVmUHRyIGZyb20gImxvYWRlciIgZGlyZWN0b3J5
IG9mIFdlYkNvcmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE2NzA1NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgICogV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYkNo
cm9tZUNsaWVudDo6cnVuT3BlblBhbmVsKTogVXBkYXRlZCBmb3IgY2hhbmdlIHRvIENocm9tZUNs
aWVudC4KKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaDogRGl0dG8u
CisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuY3BwOgorICAgICAg
ICAoV2ViRWRpdG9yVW5kb0NvbW1hbmQ6OldlYkVkaXRvclVuZG9Db21tYW5kKTogVGFrZSBhIHJl
ZmVyZW5jZSBpbnN0ZWFkIG9mCisgICAgICAgIGEgUGFzc1JlZlB0ci4gQWxzbyB1c2UgUmVmIGlu
c3RlYWQgb2YgUmVmUHRyLgorICAgICAgICAoV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9T
dGVwKTogRGl0dG8uCisgICAgICAgIChXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyUmVkb1N0ZXAp
OiBEaXR0by4KKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuaDogVXBk
YXRlZCBmb3IgdGhlIGFib3ZlLiBBbHNvIG1hcmtlZCB0aGUKKyAgICAgICAgY2xhc3MgYW5kIG1l
bWJlciBmdW5jdGlvbnMgZmluYWwgYW5kIG1hZGUgdGhlbSBhbGwgcHJpdmF0ZSwgd2hpY2ggd2ls
bAorICAgICAgICBoZWxwIHVzIGNhdGNoIGlmIHRoZXJlIGFyZSBhbnkgdGhhdCBkb24ndCBjb3Jy
ZWN0bHkgbWF0Y2ggV2ViQ29yZS4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkZyYW1l
TG9hZGVyQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbik6IFVwZGF0ZWQKKyAgICAgICAgZm9yIGNo
YW5nZSB0byBDaHJvbWVDbGllbnQuCisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKTogRGl0dG8uCisgICAgICAgIChX
ZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KTogRGl0dG8u
CisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybSk6
IERpdHRvLgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1lKTogRGl0
dG8uIEFsc28gbWVyZ2VkIHR3byBmdW5jdGlvbnMgaW50bworICAgICAgICBvbmUgYmVjYXVzZSBv
bmUgd2FzIHByaXZhdGUgYW5kIG9ubHkgY2FsbGVkIGJ5IHRoZSBvdGhlci4KKyAgICAgICAgKFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4pOiBEaXR0by4KKyAgICAgICAgKFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KTogRGl0dG8uCisgICAgICAg
IChXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlTmV0d29ya2luZ0NvbnRleHQpOiBEaXR0by4K
KyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oOiBEaXR0by4K
KworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQuaDoK
KyAgICAgICAgKFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQ6OmNyZWF0ZSk6IFJldHVybiBhIFJl
ZiBpbnN0ZWFkIG9mIGEgUGFzc1JlZlB0ci4KKwogMjAxNy0wMS0xMiAgSm9zZXBoIFBlY29yYXJv
ICA8cGVjb3Jhcm9AYXBwbGUuY29tPgogCiAgICAgICAgIFJlbW92ZSB1bm5lY2Vzc2FyeSBpbmNs
dWRlcyBvZiBQYWdlLmgKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCA3Yjg5M2IxMmRhMDQzMzA1N2ZjYjAyYTMzZTkz
YTNjZjE5NmVhNDVmLi40OTE5ZWU2MjdmNDJmNzc4OGQ2MzQzNzcwMGUwMzQ1NjgzMTdlZWE3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIwIEBACisyMDE3LTAxLTE1ICBEYXJpbiBBZGxlciAgPGRh
cmluQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgUGFzc1JlZlB0ciBmcm9tICJsb2FkZXIi
IGRpcmVjdG9yeSBvZiBXZWJDb3JlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNjcwNTUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIFNoYXJlZC9BUElXZWJBcmNoaXZlLmg6IFVzZSBSZWZQdHImJiBpbnN0
ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgICogU2hhcmVkL0FQSVdlYkFyY2hpdmUubW06Cisg
ICAgICAgIChBUEk6OldlYkFyY2hpdmU6OmNyZWF0ZSk6IERpdHRvLgorICAgICAgICAoQVBJOjpX
ZWJBcmNoaXZlOjpXZWJBcmNoaXZlKTogRGl0dG8uCisgICAgICAgIChBUEk6OldlYkFyY2hpdmU6
OnN1YnJlc291cmNlcyk6IERpdHRvLgorICAgICAgICAoQVBJOjpXZWJBcmNoaXZlOjpzdWJmcmFt
ZUFyY2hpdmVzKTogRGl0dG8uCisKKyAgICAgICAgKiBTaGFyZWQvVGV4dENoZWNrZXJTdGF0ZS5o
OiBJbml0aWFsaXplIGRhdGEgbWVtYmVycyBzbyBjbGFzc2VzCisgICAgICAgIHVzaW5nIHRoaXMg
d29uJ3QgaGF2ZSB0byBleHBsaWNpdGx5IGluaXRhbGl6ZSB0aGVtLgorCisgICAgICAgICogVUlQ
cm9jZXNzL1dlYkljb25EYXRhYmFzZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkljb25EYXRh
YmFzZTo6c2V0SWNvbkRhdGFGb3JJY29uVVJMKTogUGFzcyBhIHJhdworICAgICAgICBwb2ludGVy
IHRvIFdlYkNvcmUuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lmg6IFJlbW92
ZWQgZm9yd2FyZCBkZWNsYXJhdGlvbiBvZgorICAgICAgICBTdHJpbmdQYWlyVmVjdG9yLCBub3Qg
bmVlZGVkIGhlcmUuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29u
RGF0YWJhc2VQcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkljb25EYXRhYmFzZVByb3h5
OjpXZWJJY29uRGF0YWJhc2VQcm94eSk6IFRha2UgYSByZWZlcmVuY2UuCisgICAgICAgIChXZWJL
aXQ6OldlYkljb25EYXRhYmFzZVByb3h5OjpyZXRhaW5JY29uRm9yUGFnZVVSTCk6IFVwZGF0ZWQg
Zm9yIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYktpdDo6V2ViSWNvbkRhdGFiYXNlUHJveHk6OnJl
bGVhc2VJY29uRm9yUGFnZVVSTCk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJJY29uRGF0
YWJhc2VQcm94eTo6c3luY2hyb25vdXNJY29uRm9yUGFnZVVSTCk6IERpdHRvLgorICAgICAgICAo
V2ViS2l0OjpXZWJJY29uRGF0YWJhc2VQcm94eTo6bG9hZERlY2lzaW9uRm9ySWNvblVSTCk6IERp
dHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJJY29uRGF0YWJhc2VQcm94eTo6cmVjZWl2ZWRJY29u
TG9hZERlY2lzaW9uKTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkljb25EYXRhYmFzZVBy
b3h5OjppY29uRGF0YUZvckljb25VUkwpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViSWNv
bkRhdGFiYXNlUHJveHk6OnNldEljb25VUkxGb3JQYWdlVVJMKTogRGl0dG8uCisgICAgICAgIChX
ZWJLaXQ6OldlYkljb25EYXRhYmFzZVByb3h5OjpzZXRJY29uRGF0YUZvckljb25VUkwpOiBEaXR0
by4KKyAgICAgICAgKiBXZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94
eS5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisgICAgICAgIE1hcmtlZCB0aGUgY2xhc3MgZmlu
YWwsIG1hZGUgbW9zdCBmdW5jdGlvbnMgcHJpdmF0ZSBhbmQgZmluYWwuCisKKyAgICAgICAgKiBX
ZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbi5j
cHA6CisgICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbjo6SW5q
ZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uKToKKyAgICAgICAgUmVtb3ZlZCBhc3NlcnRpb24g
dGhhdCBhIHBvaW50ZXIgaXMgbm9uLW51bGwgc2luY2UgdGhhdCBwb2ludGVyIGlzIG5vdyBhCisg
ICAgICAgIHJlZmVyZW5jZS4gTGVmdCB1c2Ugb2YgUGFzc1JlZlB0ciBoZXJlIGZvciBub3cuegor
CisgICAgICAgICogV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6V2ViTG9hZGVyU3RyYXRlZ3k6OnNjaGVkdWxlTG9hZCk6IFVwZGF0ZWQg
c2luY2UgYXBwbGljYXRpb24gY2FjaGUKKyAgICAgICAgaG9zdCBpcyBub3cgYSByZWZlcmVuY2Ug
cmF0aGVyIHRobmEgYSBwb2ludGVyLgorICAgICAgICAqIFdlYlByb2Nlc3MvTmV0d29yay9XZWJS
ZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlJlc291cmNlTG9hZGVyOjp3
aWxsU2VuZFJlcXVlc3QpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViUmVzb3VyY2VMb2Fk
ZXI6OmRpZFJlY2VpdmVSZXNwb25zZSk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJSZXNv
dXJjZUxvYWRlcjo6ZGlkRmFpbFJlc291cmNlTG9hZCk6IERpdHRvLgorCisgICAgICAgICogV2Vi
UHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuY3BwOgorICAgICAgICAoV2ViS2l0OjpidWlsZEhU
VFBIZWFkZXJzKTogR290IHJpZCBvZiB1bm5lZWRlZCB1c2Ugb2YgU3RyaW5nOjpmb3JtYXQuCisg
ICAgICAgIChXZWJLaXQ6OlBsdWdpblZpZXc6OmNyZWF0ZSk6IFRha2UgYSByZWZlcmVuY2UgaW5z
dGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViS2l0OjpQbHVnaW5WaWV3OjpQbHVnaW5W
aWV3KTogRGl0dG8uIEFsc28gbW92ZWQgbXVjaCBvZiB0aGUgZGF0YQorICAgICAgICBtZW1iZXIg
aW5pdGlhbGl6YXRpb24gdG8gdGhlIGNsYXNzIGRlZmluaXRpb24uCisgICAgICAgIChXZWJLaXQ6
OlBsdWdpblZpZXc6OnJlY3JlYXRlQW5kSW5pdGlhbGl6ZSk6IFRha2UgUmVmJiYgaW5zdGVhZCBv
ZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViS2l0OjpQbHVnaW5WaWV3OjptYW51YWxMb2FkRGlk
UmVjZWl2ZVJlc3BvbnNlKTogVXBkYXRlZCBmb3IgY2hhbmdlIHRvCisgICAgICAgIE1hbnVhbFN0
cmVhbVN0YXRlIGVudW1lcmF0aW9uLgorICAgICAgICAoV2ViS2l0OjpQbHVnaW5WaWV3OjptYW51
YWxMb2FkRGlkUmVjZWl2ZURhdGEpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6UGx1Z2luVmll
dzo6bWFudWFsTG9hZERpZEZpbmlzaExvYWRpbmcgRGl0dG8uKToKKyAgICAgICAgKFdlYktpdDo6
UGx1Z2luVmlldzo6bWFudWFsTG9hZERpZEZhaWwpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6
UGx1Z2luVmlldzo6bGl2ZVJlc291cmNlRGF0YSk6IFJldHVybiBSZWZQdHIgaW5zZWFkIG9mIFBh
c3NSZWZQdHIuCisgICAgICAgIChXZWJLaXQ6OlBsdWdpblZpZXc6OnJlZGVsaXZlck1hbnVhbFN0
cmVhbSk6IFVwZGF0ZWQgZm9yIE1hbnVhbFN0cmVhbVN0YXRlLgorICAgICAgICAqIFdlYlByb2Nl
c3MvUGx1Z2lucy9QbHVnaW5WaWV3Lmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4gQWxzbyBjaGFu
Z2VkCisgICAgICAgIE1hbnVhbFN0cmVhbVN0YXRlIGludG8gYW4gZW51bSBjbGFzcy4KKworICAg
ICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcDogQ2hh
bmdlZCBtX3BhZ2UgdG8gYSByZWZlcmVuY2UuCisgICAgICAgIChXZWJLaXQ6OldlYkNocm9tZUNs
aWVudDo6cnVuT3BlblBhbmVsKTogVGFrZSBib3RoIGFyZ3VtZW50cyBhcyByZWZlcmVuY2VzLgor
ICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50Lmg6IFVw
ZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvV2ViRWRpdG9yQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViRWRpdG9yQ2xpZW50
OjpyZWdpc3RlclVuZG9TdGVwKTogVGFrZSByZWZlcmVuY2UgaW5zdGVhZCBvZiBQYXNzUmVmUHRy
LgorICAgICAgICAoV2ViS2l0OjpXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyUmVkb1N0ZXApOiBE
aXR0by4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVu
dC5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUKKworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29y
ZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJG
cmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24p
OgorICAgICAgICBVcGRhdGVkIGZvciBjaGFuZ2UgdG8gRnJhbWVMb2FkZXJDbGllbnQuCisgICAg
ICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZv
ck5hdmlnYXRpb25BY3Rpb24pOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudCk6IERpdHRvLgorICAgICAgICAo
V2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybSk6IERp
dHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlRnJhbWUp
OiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBs
dWdpbik6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6cmVj
cmVhdGVQbHVnaW4pOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KTogRGl0dG8uCisgICAg
ICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaWRSZXF1ZXN0QXV0b2NvbXBsZXRl
KTogRGl0dG8uCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxv
YWRlckNsaWVudC5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBXZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OldlYlBh
Z2UpOiBQYXNzIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6Y3JlYXRlUGx1
Z2luKTogUmV0dXJuIFJlZlB0ciBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJL
aXQ6OldlYlBhZ2U6OmZyb21Db3JlUGFnZSk6IFVwZGF0ZWQgZm9yIGNoYW5nZSB0byBXZWJDaHJv
bWVDbGllbnQuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnNldEhlYWRlclBhZ2VCYW5uZXIp
OiBUYWtlIHBvaW50ZXIgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViS2l0OjpX
ZWJQYWdlOjpzZXRGb290ZXJQYWdlQmFubmVyKTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6Oldl
YlBhZ2U6OnNldEFjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyKTogVGFrZSBSZWYmJiBpbnN0
ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OmN1
cnJlbnRTZWxlY3Rpb25Bc1JhbmdlKTogUmV0dXJuIFJlZlB0ciBpbnN0ZWFkIG9mIFBhc3NSZWZQ
dHIuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnJhbmdlRnJvbUVkaXRpbmdSYW5nZSk6IERp
dHRvLgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmg6IFVwZGF0ZWQgZm9y
IHRoZSBhYm92ZS4KKworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9lZmwvV2ViUGFnZUVm
bC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OmNhY2hlZFJlc3BvbnNlRGF0YUZvclVS
TCk6IFJldHVybiBSZWZQdHIgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorCisgICAgICAgICogV2Vi
UHJvY2Vzcy9XZWJQYWdlL2d0ay9XZWJQYWdlR3RrLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2Vi
UGFnZTo6Y2FjaGVkUmVzcG9uc2VEYXRhRm9yVVJMKTogUmV0dXJuIFJlZlB0ciBpbnN0ZWFkIG9m
IFBhc3NSZWZQdHIuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1dlYlBhZ2VN
YWMubW06CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OmNhY2hlZFJlc3BvbnNlRGF0YUZvclVS
TCk6IFJldHVybiBSZWZQdHIgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViS2l0
OjpXZWJQYWdlOjpzZXRUb3BPdmVyaGFuZ0ltYWdlKTogVGFrZSByYXcgcG9pbnRlciBpbnN0ZWFk
IG9mIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnNldEJvdHRvbU92ZXJo
YW5nSW1hZ2UpOiBEaXR0by4KKworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHA6
CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3M6OldlYlByb2Nlc3MpOiBQYXNzIGEgcmVmZXJl
bmNlLiBNb3ZlIG1vc3QgaW5pdGlhbGl6YXRpb24gdG8KKyAgICAgICAgdGhlIGNsYXNzIGRlZmlu
aXRpb24uCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmg6IFVwZGFlZCBmb3IgdGhl
IGFib3ZlLgorCiAyMDE3LTAxLTE0ICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUu
Y29tPgogCiAgICAgICAgIFJlbW92ZSB1bnVzZWQgV0tWaWV3IGluaXRpYWxpemVyIHBhcmFtZXRl
cgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKaW5kZXggN2FmMjYwOGMwOTZiMjg3OTNmNjNiMmQxYjdk
Mzk1Yjc5YjQ0Zjc5Yy4uMTg5ZWYxYzE2ZjAwMTE0ZmJmNDdhMjYxMzNiZmM2ZWRjMDVkZTE4MyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCkBAIC0zMTQxLDcgKzMxNDEsNyBAQCB2b2lkIERvY3Vt
ZW50Ojpwcm9jZXNzSHR0cEVxdWl2KGNvbnN0IFN0cmluZyYgZXF1aXYsIGNvbnN0IFN0cmluZyYg
Y29udGVudCwgYm9vbAogICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgIGNvbXBsZXRl
ZFVSTCA9IGNvbXBsZXRlVVJMKHVybFN0cmluZyk7CiAgICAgICAgICAgICBpZiAoIXByb3RvY29s
SXNKYXZhU2NyaXB0KGNvbXBsZXRlZFVSTCkpCi0gICAgICAgICAgICAgICAgZnJhbWUtPm5hdmln
YXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZVJlZGlyZWN0KHRoaXMsIGRlbGF5LCBjb21wbGV0ZWRV
UkwpOworICAgICAgICAgICAgICAgIGZyYW1lLT5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1
bGVSZWRpcmVjdCgqdGhpcywgZGVsYXksIGNvbXBsZXRlZFVSTCk7CiAgICAgICAgICAgICBlbHNl
IHsKICAgICAgICAgICAgICAgICBTdHJpbmcgbWVzc2FnZSA9ICJSZWZ1c2VkIHRvIHJlZnJlc2gg
IiArIG1fdXJsLnN0cmluZ0NlbnRlckVsbGlwc2l6ZWRUb0xlbmd0aCgpICsgIiB0byBhIGphdmFz
Y3JpcHQ6IFVSTCI7CiAgICAgICAgICAgICAgICAgYWRkQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNv
dXJjZTo6U2VjdXJpdHksIE1lc3NhZ2VMZXZlbDo6RXJyb3IsIG1lc3NhZ2UpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9Db21wb3NpdGVFZGl0Q29tbWFuZC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9lZGl0aW5nL0NvbXBvc2l0ZUVkaXRDb21tYW5kLmNwcAppbmRleCBjY2U5Y2Fh
ZWMxYTAxZWU5ZjQ4YjNhZGE1ODJhZmEyYTcxMWM2MTgwLi5mN2ZkNDg0OGI3ZTgzNjNlMWQ5YjAx
ZWEzOTc3OGFiYjViYzhkNDg1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0Nv
bXBvc2l0ZUVkaXRDb21tYW5kLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0NvbXBv
c2l0ZUVkaXRDb21tYW5kLmNwcApAQCAtMjM5LDcgKzIzOSw3IEBAIHZvaWQgRWRpdENvbW1hbmRD
b21wb3NpdGlvbjo6dW5hcHBseSgpCiAgICAgZm9yIChzaXplX3QgaSA9IHNpemU7IGk7IC0taSkK
ICAgICAgICAgbV9jb21tYW5kc1tpIC0gMV0tPmRvVW5hcHBseSgpOwogCi0gICAgZnJhbWUtPmVk
aXRvcigpLnVuYXBwbGllZEVkaXRpbmcodGhpcyk7CisgICAgZnJhbWUtPmVkaXRvcigpLnVuYXBw
bGllZEVkaXRpbmcoKnRoaXMpOwogCiAgICAgaWYgKEFYT2JqZWN0Q2FjaGU6OmFjY2Vzc2liaWxp
dHlFbmFibGVkKCkpCiAgICAgICAgIG1fcmVwbGFjZWRUZXh0LnBvc3RUZXh0U3RhdGVDaGFuZ2VO
b3RpZmljYXRpb25Gb3JVbmFwcGx5KG1fZG9jdW1lbnQtPmV4aXN0aW5nQVhPYmplY3RDYWNoZSgp
KTsKQEAgLTI2NSw3ICsyNjUsNyBAQCB2b2lkIEVkaXRDb21tYW5kQ29tcG9zaXRpb246OnJlYXBw
bHkoKQogICAgIGZvciAoYXV0byYgY29tbWFuZCA6IG1fY29tbWFuZHMpCiAgICAgICAgIGNvbW1h
bmQtPmRvUmVhcHBseSgpOwogCi0gICAgZnJhbWUtPmVkaXRvcigpLnJlYXBwbGllZEVkaXRpbmco
dGhpcyk7CisgICAgZnJhbWUtPmVkaXRvcigpLnJlYXBwbGllZEVkaXRpbmcoKnRoaXMpOwogCiAg
ICAgaWYgKEFYT2JqZWN0Q2FjaGU6OmFjY2Vzc2liaWxpdHlFbmFibGVkKCkpCiAgICAgICAgIG1f
cmVwbGFjZWRUZXh0LnBvc3RUZXh0U3RhdGVDaGFuZ2VOb3RpZmljYXRpb25Gb3JSZWFwcGx5KG1f
ZG9jdW1lbnQtPmV4aXN0aW5nQVhPYmplY3RDYWNoZSgpKTsKQEAgLTQxNiwxNCArNDE2LDE0IEBA
IEVkaXRDb21tYW5kQ29tcG9zaXRpb24qIENvbXBvc2l0ZUVkaXRDb21tYW5kOjpjb21wb3NpdGlv
bigpIGNvbnN0CiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLUVkaXRDb21tYW5kQ29tcG9zaXRp
b24qIENvbXBvc2l0ZUVkaXRDb21tYW5kOjplbnN1cmVDb21wb3NpdGlvbigpCitFZGl0Q29tbWFu
ZENvbXBvc2l0aW9uJiBDb21wb3NpdGVFZGl0Q29tbWFuZDo6ZW5zdXJlQ29tcG9zaXRpb24oKQog
ewotICAgIENvbXBvc2l0ZUVkaXRDb21tYW5kKiBjb21tYW5kID0gdGhpczsKLSAgICB3aGlsZSAo
Y29tbWFuZCAmJiBjb21tYW5kLT5wYXJlbnQoKSkKLSAgICAgICAgY29tbWFuZCA9IGNvbW1hbmQt
PnBhcmVudCgpOworICAgIGF1dG8qIGNvbW1hbmQgPSB0aGlzOworICAgIHdoaWxlIChhdXRvKiBw
YXJlbnQgPSBjb21tYW5kLT5wYXJlbnQoKSkKKyAgICAgICAgY29tbWFuZCA9IHBhcmVudDsKICAg
ICBpZiAoIWNvbW1hbmQtPm1fY29tcG9zaXRpb24pCiAgICAgICAgIGNvbW1hbmQtPm1fY29tcG9z
aXRpb24gPSBFZGl0Q29tbWFuZENvbXBvc2l0aW9uOjpjcmVhdGUoZG9jdW1lbnQoKSwgc3RhcnRp
bmdTZWxlY3Rpb24oKSwgZW5kaW5nU2VsZWN0aW9uKCksIGVkaXRpbmdBY3Rpb24oKSk7Ci0gICAg
cmV0dXJuIGNvbW1hbmQtPm1fY29tcG9zaXRpb24uZ2V0KCk7CisgICAgcmV0dXJuICpjb21tYW5k
LT5tX2NvbXBvc2l0aW9uOwogfQogCiBib29sIENvbXBvc2l0ZUVkaXRDb21tYW5kOjppc0NyZWF0
ZUxpbmtDb21tYW5kKCkgY29uc3QKQEAgLTQ2NSw3ICs0NjUsNyBAQCB2b2lkIENvbXBvc2l0ZUVk
aXRDb21tYW5kOjphcHBseUNvbW1hbmRUb0NvbXBvc2l0ZShQYXNzUmVmUHRyPEVkaXRDb21tYW5k
PiBwcnBDbwogICAgIGNvbW1hbmQtPmRvQXBwbHkoKTsKICAgICBpZiAoY29tbWFuZC0+aXNTaW1w
bGVFZGl0Q29tbWFuZCgpKSB7CiAgICAgICAgIGNvbW1hbmQtPnNldFBhcmVudChudWxscHRyKTsK
LSAgICAgICAgZW5zdXJlQ29tcG9zaXRpb24oKS0+YXBwZW5kKHRvU2ltcGxlRWRpdENvbW1hbmQo
Y29tbWFuZC5nZXQoKSkpOworICAgICAgICBlbnN1cmVDb21wb3NpdGlvbigpLmFwcGVuZCh0b1Np
bXBsZUVkaXRDb21tYW5kKGNvbW1hbmQuZ2V0KCkpKTsKICAgICB9CiAgICAgbV9jb21tYW5kcy5h
cHBlbmQoV1RGTW92ZShjb21tYW5kKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9l
ZGl0aW5nL0NvbXBvc2l0ZUVkaXRDb21tYW5kLmggYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0Nv
bXBvc2l0ZUVkaXRDb21tYW5kLmgKaW5kZXggODVmNDE4ZjdkYjkxN2NjZjAxNDhhNmY3NGViYzM4
YmViMDUwMzliMS4uMDIyMWRjOTk5Y2NmZTZmYzU5YjE4MWE5ZmY3ODA5OWI2ZTM1ZjNiNyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9Db21wb3NpdGVFZGl0Q29tbWFuZC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuaApAQCAtMTA1
LDcgKzEwNSw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGFwcGx5KCk7CiAgICAgYm9vbCBpc0ZpcnN0
Q29tbWFuZChFZGl0Q29tbWFuZCogY29tbWFuZCkgeyByZXR1cm4gIW1fY29tbWFuZHMuaXNFbXB0
eSgpICYmIG1fY29tbWFuZHMuZmlyc3QoKSA9PSBjb21tYW5kOyB9CiAgICAgRWRpdENvbW1hbmRD
b21wb3NpdGlvbiogY29tcG9zaXRpb24oKSBjb25zdDsKLSAgICBFZGl0Q29tbWFuZENvbXBvc2l0
aW9uKiBlbnN1cmVDb21wb3NpdGlvbigpOworICAgIEVkaXRDb21tYW5kQ29tcG9zaXRpb24mIGVu
c3VyZUNvbXBvc2l0aW9uKCk7CiAKICAgICB2aXJ0dWFsIGJvb2wgaXNDcmVhdGVMaW5rQ29tbWFu
ZCgpIGNvbnN0OwogICAgIHZpcnR1YWwgYm9vbCBpc1R5cGluZ0NvbW1hbmQoKSBjb25zdDsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2VkaXRpbmcvRWRpdG9yLmNwcAppbmRleCAwOGU1MzkxNTc3ODhmYjU3MTVmYWVkOWJjZWM1
ZDVmZTQzYzEyNTgyLi5mYWM2ZTY1NWY2ZWEyNTM5MDllNmJlMGRlNGU5NDI0OGNhODBhNGNmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCkBAIC05OTYsMjMgKzk5NiwyMyBAQCBib29sIEVk
aXRvcjo6d2lsbFVuYXBwbHlFZGl0aW5nKGNvbnN0IEVkaXRDb21tYW5kQ29tcG9zaXRpb24mIGNv
bXBvc2l0aW9uKSBjb25zdAogICAgIHJldHVybiBkaXNwYXRjaEJlZm9yZUlucHV0RXZlbnRzKGNv
bXBvc2l0aW9uLnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCBjb21wb3NpdGlvbi5lbmRp
bmdSb290RWRpdGFibGVFbGVtZW50KCksICJoaXN0b3J5VW5kbyIpOwogfQogCi12b2lkIEVkaXRv
cjo6dW5hcHBsaWVkRWRpdGluZyhQYXNzUmVmUHRyPEVkaXRDb21tYW5kQ29tcG9zaXRpb24+IGNt
ZCkKK3ZvaWQgRWRpdG9yOjp1bmFwcGxpZWRFZGl0aW5nKEVkaXRDb21tYW5kQ29tcG9zaXRpb24m
IGNvbXBvc2l0aW9uKQogewogICAgIGRvY3VtZW50KCkudXBkYXRlTGF5b3V0KCk7CiAKLSAgICBu
b3RpZnlUZXh0RnJvbUNvbnRyb2xzKGNtZC0+c3RhcnRpbmdSb290RWRpdGFibGVFbGVtZW50KCks
IGNtZC0+ZW5kaW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpKTsKKyAgICBub3RpZnlUZXh0RnJvbUNv
bnRyb2xzKGNvbXBvc2l0aW9uLnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCBjb21wb3Np
dGlvbi5lbmRpbmdSb290RWRpdGFibGVFbGVtZW50KCkpOwogCi0gICAgVmlzaWJsZVNlbGVjdGlv
biBuZXdTZWxlY3Rpb24oY21kLT5zdGFydGluZ1NlbGVjdGlvbigpKTsKKyAgICBWaXNpYmxlU2Vs
ZWN0aW9uIG5ld1NlbGVjdGlvbihjb21wb3NpdGlvbi5zdGFydGluZ1NlbGVjdGlvbigpKTsKICAg
ICBjaGFuZ2VTZWxlY3Rpb25BZnRlckNvbW1hbmQobmV3U2VsZWN0aW9uLCBGcmFtZVNlbGVjdGlv
bjo6ZGVmYXVsdFNldFNlbGVjdGlvbk9wdGlvbnMoKSk7Ci0gICAgZGlzcGF0Y2hJbnB1dEV2ZW50
cyhjbWQtPnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCBjbWQtPmVuZGluZ1Jvb3RFZGl0
YWJsZUVsZW1lbnQoKSwgImhpc3RvcnlVbmRvIik7CisgICAgZGlzcGF0Y2hJbnB1dEV2ZW50cyhj
b21wb3NpdGlvbi5zdGFydGluZ1Jvb3RFZGl0YWJsZUVsZW1lbnQoKSwgY29tcG9zaXRpb24uZW5k
aW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCAiaGlzdG9yeVVuZG8iKTsKIAogICAgIHVwZGF0ZUVk
aXRvclVJTm93SWZTY2hlZHVsZWQoKTsKIAotICAgIG1fYWx0ZXJuYXRpdmVUZXh0Q29udHJvbGxl
ci0+cmVzcG9uZFRvVW5hcHBsaWVkRWRpdGluZyhjbWQuZ2V0KCkpOworICAgIG1fYWx0ZXJuYXRp
dmVUZXh0Q29udHJvbGxlci0+cmVzcG9uZFRvVW5hcHBsaWVkRWRpdGluZygmY29tcG9zaXRpb24p
OwogCiAgICAgbV9sYXN0RWRpdENvbW1hbmQgPSBudWxscHRyOwotICAgIGlmIChjbGllbnQoKSkK
LSAgICAgICAgY2xpZW50KCktPnJlZ2lzdGVyUmVkb1N0ZXAoY21kKTsKKyAgICBpZiAoYXV0byog
Y2xpZW50ID0gdGhpcy0+Y2xpZW50KCkpCisgICAgICAgIGNsaWVudC0+cmVnaXN0ZXJSZWRvU3Rl
cChjb21wb3NpdGlvbik7CiAgICAgcmVzcG9uZFRvQ2hhbmdlZENvbnRlbnRzKG5ld1NlbGVjdGlv
bik7CiB9CiAKQEAgLTEwMjEsMjEgKzEwMjEsMjEgQEAgYm9vbCBFZGl0b3I6OndpbGxSZWFwcGx5
RWRpdGluZyhjb25zdCBFZGl0Q29tbWFuZENvbXBvc2l0aW9uJiBjb21wb3NpdGlvbikgY29uc3QK
ICAgICByZXR1cm4gZGlzcGF0Y2hCZWZvcmVJbnB1dEV2ZW50cyhjb21wb3NpdGlvbi5zdGFydGlu
Z1Jvb3RFZGl0YWJsZUVsZW1lbnQoKSwgY29tcG9zaXRpb24uZW5kaW5nUm9vdEVkaXRhYmxlRWxl
bWVudCgpLCAiaGlzdG9yeVJlZG8iKTsKIH0KIAotdm9pZCBFZGl0b3I6OnJlYXBwbGllZEVkaXRp
bmcoUGFzc1JlZlB0cjxFZGl0Q29tbWFuZENvbXBvc2l0aW9uPiBjbWQpCit2b2lkIEVkaXRvcjo6
cmVhcHBsaWVkRWRpdGluZyhFZGl0Q29tbWFuZENvbXBvc2l0aW9uJiBjb21wb3NpdGlvbikKIHsK
ICAgICBkb2N1bWVudCgpLnVwZGF0ZUxheW91dCgpOwogCi0gICAgbm90aWZ5VGV4dEZyb21Db250
cm9scyhjbWQtPnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCBjbWQtPmVuZGluZ1Jvb3RF
ZGl0YWJsZUVsZW1lbnQoKSk7CisgICAgbm90aWZ5VGV4dEZyb21Db250cm9scyhjb21wb3NpdGlv
bi5zdGFydGluZ1Jvb3RFZGl0YWJsZUVsZW1lbnQoKSwgY29tcG9zaXRpb24uZW5kaW5nUm9vdEVk
aXRhYmxlRWxlbWVudCgpKTsKIAotICAgIFZpc2libGVTZWxlY3Rpb24gbmV3U2VsZWN0aW9uKGNt
ZC0+ZW5kaW5nU2VsZWN0aW9uKCkpOworICAgIFZpc2libGVTZWxlY3Rpb24gbmV3U2VsZWN0aW9u
KGNvbXBvc2l0aW9uLmVuZGluZ1NlbGVjdGlvbigpKTsKICAgICBjaGFuZ2VTZWxlY3Rpb25BZnRl
ckNvbW1hbmQobmV3U2VsZWN0aW9uLCBGcmFtZVNlbGVjdGlvbjo6ZGVmYXVsdFNldFNlbGVjdGlv
bk9wdGlvbnMoKSk7Ci0gICAgZGlzcGF0Y2hJbnB1dEV2ZW50cyhjbWQtPnN0YXJ0aW5nUm9vdEVk
aXRhYmxlRWxlbWVudCgpLCBjbWQtPmVuZGluZ1Jvb3RFZGl0YWJsZUVsZW1lbnQoKSwgImhpc3Rv
cnlSZWRvIik7CisgICAgZGlzcGF0Y2hJbnB1dEV2ZW50cyhjb21wb3NpdGlvbi5zdGFydGluZ1Jv
b3RFZGl0YWJsZUVsZW1lbnQoKSwgY29tcG9zaXRpb24uZW5kaW5nUm9vdEVkaXRhYmxlRWxlbWVu
dCgpLCAiaGlzdG9yeVJlZG8iKTsKICAgICAKICAgICB1cGRhdGVFZGl0b3JVSU5vd0lmU2NoZWR1
bGVkKCk7CiAKICAgICBtX2xhc3RFZGl0Q29tbWFuZCA9IG51bGxwdHI7Ci0gICAgaWYgKGNsaWVu
dCgpKQotICAgICAgICBjbGllbnQoKS0+cmVnaXN0ZXJVbmRvU3RlcChjbWQpOworICAgIGlmIChh
dXRvKiBjbGllbnQgPSB0aGlzLT5jbGllbnQoKSkKKyAgICAgICAgY2xpZW50LT5yZWdpc3RlclVu
ZG9TdGVwKGNvbXBvc2l0aW9uKTsKICAgICByZXNwb25kVG9DaGFuZ2VkQ29udGVudHMobmV3U2Vs
ZWN0aW9uKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3Iu
aCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmgKaW5kZXggMjgwMGMzMDkwN2Q0MThj
MmMxNmFhYjIyYTVkYjBmNjFhZDhmM2FkNC4uYjhlYWFkMGMzMjNkNWJhZGJiYTMxMTEyMTk4MzE4
ZGZlOTIwMGFlMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oCkBAIC05OSwxMCArOTksMTIgQEAg
ZW51bSBjbGFzcyBNYWlsQmxvY2txdW90ZUhhbmRsaW5nIHsKIH07CiAKICNpZiBQTEFURk9STShD
T0NPQSkKKwogc3RydWN0IEZyYWdtZW50QW5kUmVzb3VyY2VzIHsKICAgICBSZWZQdHI8RG9jdW1l
bnRGcmFnbWVudD4gZnJhZ21lbnQ7Ci0gICAgVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+
PiByZXNvdXJjZXM7CisgICAgVmVjdG9yPFJlZjxBcmNoaXZlUmVzb3VyY2U+PiByZXNvdXJjZXM7
CiB9OworCiAjZW5kaWYKIAogY2xhc3MgRWRpdG9yIHsKQEAgLTIwNiw4ICsyMDgsOCBAQCBwdWJs
aWM6CiAgICAgYm9vbCB3aWxsUmVhcHBseUVkaXRpbmcoY29uc3QgRWRpdENvbW1hbmRDb21wb3Np
dGlvbiYpIGNvbnN0OwogCiAgICAgdm9pZCBhcHBsaWVkRWRpdGluZyhQYXNzUmVmUHRyPENvbXBv
c2l0ZUVkaXRDb21tYW5kPik7Ci0gICAgdm9pZCB1bmFwcGxpZWRFZGl0aW5nKFBhc3NSZWZQdHI8
RWRpdENvbW1hbmRDb21wb3NpdGlvbj4pOwotICAgIHZvaWQgcmVhcHBsaWVkRWRpdGluZyhQYXNz
UmVmUHRyPEVkaXRDb21tYW5kQ29tcG9zaXRpb24+KTsKKyAgICB2b2lkIHVuYXBwbGllZEVkaXRp
bmcoRWRpdENvbW1hbmRDb21wb3NpdGlvbiYpOworICAgIHZvaWQgcmVhcHBsaWVkRWRpdGluZyhF
ZGl0Q29tbWFuZENvbXBvc2l0aW9uJik7CiAgICAgdm9pZCB1bmFwcGxpZWRTcGVsbENvcnJlY3Rp
b24oY29uc3QgVmlzaWJsZVNlbGVjdGlvbiYgc2VsZWN0aW9uT2ZDb3JyZWN0ZWQsIGNvbnN0IFN0
cmluZyYgY29ycmVjdGVkLCBjb25zdCBTdHJpbmcmIGNvcnJlY3Rpb24pOwogCiAgICAgLy8gVGhp
cyBpcyBvZmYgYnkgZGVmYXVsdCwgc2luY2UgbW9zdCBlZGl0b3JzIHdhbnQgdGhpcyBiZWhhdmlv
ciAob3JpZ2luYWxseSBtYXRjaGVkIElFIGJ1dCBub3QgRmlyZWZveCkuCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9lZGl0aW5nL2NvY29hL0VkaXRvckNvY29hLm1tIGIvU291cmNlL1dlYkNv
cmUvZWRpdGluZy9jb2NvYS9FZGl0b3JDb2NvYS5tbQppbmRleCA0OTVlMWY4ZTgwNjQzZmI5OWQ5
YjVhOWMwNTM5N2QxMGU1NGY0ZWE0Li40NzU0ZTc3NDA2YjNjMDBmMGRlN2NmOWQ5ZTAyNmVhZWM5
NDE4ZTRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2NvY29hL0VkaXRvckNv
Y29hLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvY29jb2EvRWRpdG9yQ29jb2EubW0K
QEAgLTI4NSwxMSArMjg1LDkgQEAgUmVmUHRyPERvY3VtZW50RnJhZ21lbnQ+IEVkaXRvcjo6Y3Jl
YXRlRnJhZ21lbnRBbmRBZGRSZXNvdXJjZXMoTlNBdHRyaWJ1dGVkU3RyaW4KIAogICAgIGF1dG8g
ZnJhZ21lbnRBbmRSZXNvdXJjZXMgPSBjcmVhdGVGcmFnbWVudChzdHJpbmcpOwogCi0gICAgaWYg
KERvY3VtZW50TG9hZGVyKiBsb2FkZXIgPSBtX2ZyYW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVy
KCkpIHsKLSAgICAgICAgZm9yIChhdXRvJiByZXNvdXJjZSA6IGZyYWdtZW50QW5kUmVzb3VyY2Vz
LnJlc291cmNlcykgewotICAgICAgICAgICAgaWYgKHJlc291cmNlKQotICAgICAgICAgICAgICAg
IGxvYWRlci0+YWRkQXJjaGl2ZVJlc291cmNlKHJlc291cmNlLnJlbGVhc2VOb25OdWxsKCkpOwot
ICAgICAgICB9CisgICAgaWYgKGF1dG8qIGxvYWRlciA9IG1fZnJhbWUubG9hZGVyKCkuZG9jdW1l
bnRMb2FkZXIoKSkgeworICAgICAgICBmb3IgKGF1dG8mIHJlc291cmNlIDogZnJhZ21lbnRBbmRS
ZXNvdXJjZXMucmVzb3VyY2VzKQorICAgICAgICAgICAgbG9hZGVyLT5hZGRBcmNoaXZlUmVzb3Vy
Y2UoV1RGTW92ZShyZXNvdXJjZSkpOwogICAgIH0KIAogICAgIGlmICh3YXNJbWFnZXNFbmFibGVk
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9pb3MvRWRpdG9ySU9TLm1tIGIv
U291cmNlL1dlYkNvcmUvZWRpdGluZy9pb3MvRWRpdG9ySU9TLm1tCmluZGV4IGM3ZWY2NWJlN2Iw
MWM3MzkzZTY3ODcyNjlmMmU5ZTJjYzQxZDkyODMuLmZhZjQ0ZWJlMmNiN2JmZmNkODFjMWFlNWUz
MDVlNmM4OTc5OWEzYjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvaW9zL0Vk
aXRvcklPUy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2lvcy9FZGl0b3JJT1MubW0K
QEAgLTI2MiwyNyArMjYyLDI1IEBAIGJvb2wgRWRpdG9yOjpXZWJDb250ZW50UmVhZGVyOjpyZWFk
V2ViQXJjaGl2ZShTaGFyZWRCdWZmZXIqIGJ1ZmZlcikKICAgICBpZiAoIWJ1ZmZlcikKICAgICAg
ICAgcmV0dXJuIGZhbHNlOwogCi0gICAgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IGFyY2hpdmUg
PSBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoVVJMKCksICpidWZmZXIpOworICAgIGF1dG8gYXJj
aGl2ZSA9IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShVUkwoKSwgKmJ1ZmZlcik7CiAgICAgaWYg
KCFhcmNoaXZlKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAgICBSZWZQdHI8QXJjaGl2ZVJl
c291cmNlPiBtYWluUmVzb3VyY2UgPSBhcmNoaXZlLT5tYWluUmVzb3VyY2UoKTsKKyAgICBhdXRv
KiBtYWluUmVzb3VyY2UgPSBhcmNoaXZlLT5tYWluUmVzb3VyY2UoKTsKICAgICBpZiAoIW1haW5S
ZXNvdXJjZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgY29uc3QgU3RyaW5nJiB0eXBl
ID0gbWFpblJlc291cmNlLT5taW1lVHlwZSgpOwotCi0gICAgaWYgKGZyYW1lLmxvYWRlcigpLmNs
aWVudCgpLmNhblNob3dNSU1FVHlwZUFzSFRNTCh0eXBlKSkgewotICAgICAgICAvLyBGSVhNRTog
VGhlIGNvZGUgaW4gY3JlYXRlRnJhZ21lbnRBbmRBZGRSZXNvdXJjZXMgY2FsbHMgc2V0RGVmZXJz
TG9hZGluZyh0cnVlKS4gRG9uJ3Qgd2UgbmVlZCB0aGF0IGhlcmU/Ci0gICAgICAgIGlmIChEb2N1
bWVudExvYWRlciogbG9hZGVyID0gZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSkKLSAg
ICAgICAgICAgIGxvYWRlci0+YWRkQWxsQXJjaGl2ZVJlc291cmNlcyhhcmNoaXZlLmdldCgpKTsK
KyAgICBhdXRvJiB0eXBlID0gbWFpblJlc291cmNlLT5taW1lVHlwZSgpOworICAgIGlmICghZnJh
bWUubG9hZGVyKCkuY2xpZW50KCkuY2FuU2hvd01JTUVUeXBlQXNIVE1MKHR5cGUpKQorICAgICAg
ICByZXR1cm4gZmFsc2U7CiAKLSAgICAgICAgU3RyaW5nIG1hcmt1cFN0cmluZyA9IFN0cmluZzo6
ZnJvbVVURjgobWFpblJlc291cmNlLT5kYXRhKCkuZGF0YSgpLCBtYWluUmVzb3VyY2UtPmRhdGEo
KS5zaXplKCkpOwotICAgICAgICBhZGRGcmFnbWVudChjcmVhdGVGcmFnbWVudEZyb21NYXJrdXAo
KmZyYW1lLmRvY3VtZW50KCksIG1hcmt1cFN0cmluZywgbWFpblJlc291cmNlLT51cmwoKSwgRGlz
YWxsb3dTY3JpcHRpbmdBbmRQbHVnaW5Db250ZW50KSk7Ci0gICAgICAgIHJldHVybiB0cnVlOwot
ICAgIH0KKyAgICAvLyBGSVhNRTogVGhlIGNvZGUgaW4gY3JlYXRlRnJhZ21lbnRBbmRBZGRSZXNv
dXJjZXMgY2FsbHMgc2V0RGVmZXJzTG9hZGluZyh0cnVlKS4gRG9uJ3Qgd2UgbmVlZCB0aGF0IGhl
cmU/CisgICAgaWYgKGF1dG8qIGxvYWRlciA9IGZyYW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVy
KCkpCisgICAgICAgIGxvYWRlci0+YWRkQWxsQXJjaGl2ZVJlc291cmNlcygqYXJjaGl2ZSk7CiAK
LSAgICByZXR1cm4gZmFsc2U7CisgICAgYXV0byBtYXJrdXBTdHJpbmcgPSBTdHJpbmc6OmZyb21V
VEY4KG1haW5SZXNvdXJjZS0+ZGF0YSgpLmRhdGEoKSwgbWFpblJlc291cmNlLT5kYXRhKCkuc2l6
ZSgpKTsKKyAgICBhZGRGcmFnbWVudChjcmVhdGVGcmFnbWVudEZyb21NYXJrdXAoKmZyYW1lLmRv
Y3VtZW50KCksIG1hcmt1cFN0cmluZywgbWFpblJlc291cmNlLT51cmwoKSwgRGlzYWxsb3dTY3Jp
cHRpbmdBbmRQbHVnaW5Db250ZW50KSk7CisgICAgcmV0dXJuIHRydWU7CiB9CiAKIGJvb2wgRWRp
dG9yOjpXZWJDb250ZW50UmVhZGVyOjpyZWFkRmlsZW5hbWVzKGNvbnN0IFZlY3RvcjxTdHJpbmc+
JikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvbWFjL0VkaXRvck1hYy5tbSBi
L1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvbWFjL0VkaXRvck1hYy5tbQppbmRleCA3NGRjYzI0NDFi
YjJmM2U3OTAyMzkyN2MwNTRlZDNjMTJiYmI2OTZkLi5lZGJjMDU1NWVhZDNiZDhhZGRjMGYyZjU4
YTM0NDJjYjkxMWQ4YjYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL21hYy9F
ZGl0b3JNYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9tYWMvRWRpdG9yTWFjLm1t
CkBAIC0zMjgsNyArMzI4LDcgQEAgYm9vbCBFZGl0b3I6OldlYkNvbnRlbnRSZWFkZXI6OnJlYWRX
ZWJBcmNoaXZlKFNoYXJlZEJ1ZmZlciogYnVmZmVyKQogICAgIGlmICghYnVmZmVyKQogICAgICAg
ICByZXR1cm4gZmFsc2U7CiAKLSAgICBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gYXJjaGl2ZSA9
IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShVUkwoKSwgKmJ1ZmZlcik7CisgICAgYXV0byBhcmNo
aXZlID0gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFVSTCgpLCAqYnVmZmVyKTsKICAgICBpZiAo
IWFyY2hpdmUpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIApAQCAtMzQxLDcgKzM0MSw3IEBAIGJv
b2wgRWRpdG9yOjpXZWJDb250ZW50UmVhZGVyOjpyZWFkV2ViQXJjaGl2ZShTaGFyZWRCdWZmZXIq
IGJ1ZmZlcikKICAgICBpZiAoZnJhbWUubG9hZGVyKCkuY2xpZW50KCkuY2FuU2hvd01JTUVUeXBl
QXNIVE1MKHR5cGUpKSB7CiAgICAgICAgIC8vIEZJWE1FOiBUaGUgY29kZSBpbiBjcmVhdGVGcmFn
bWVudEFuZEFkZFJlc291cmNlcyBjYWxscyBzZXREZWZlcnNMb2FkaW5nKHRydWUpLiBEb24ndCB3
ZSBuZWVkIHRoYXQgaGVyZT8KICAgICAgICAgaWYgKERvY3VtZW50TG9hZGVyKiBsb2FkZXIgPSBm
cmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKQotICAgICAgICAgICAgbG9hZGVyLT5hZGRB
bGxBcmNoaXZlUmVzb3VyY2VzKGFyY2hpdmUuZ2V0KCkpOworICAgICAgICAgICAgbG9hZGVyLT5h
ZGRBbGxBcmNoaXZlUmVzb3VyY2VzKCphcmNoaXZlKTsKIAogICAgICAgICBTdHJpbmcgbWFya3Vw
U3RyaW5nID0gU3RyaW5nOjpmcm9tVVRGOChtYWluUmVzb3VyY2UtPmRhdGEoKS5kYXRhKCksIG1h
aW5SZXNvdXJjZS0+ZGF0YSgpLnNpemUoKSk7CiAgICAgICAgIGZyYWdtZW50ID0gY3JlYXRlRnJh
Z21lbnRGcm9tTWFya3VwKCpmcmFtZS5kb2N1bWVudCgpLCBtYXJrdXBTdHJpbmcsIG1haW5SZXNv
dXJjZS0+dXJsKCksIERpc2FsbG93U2NyaXB0aW5nQW5kUGx1Z2luQ29udGVudCk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9oaXN0b3J5L1BhZ2VDYWNoZS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9oaXN0b3J5L1BhZ2VDYWNoZS5jcHAKaW5kZXggNmQwMDQzN2UxOWE1YjA4NzJjOTQxZmJiYTM0
MDI3ODk4NDdlNDRkMC4uYThhNDlmOTQwMTNlZDJkMDJiZDIzYmU2YWIzMmQ5YzdjMmVlY2MzOCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaGlzdG9yeS9QYWdlQ2FjaGUuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2hpc3RvcnkvUGFnZUNhY2hlLmNwcApAQCAtMTY0LDcgKzE2NCw3IEBAIHN0
YXRpYyBib29sIGNhbkNhY2hlRnJhbWUoRnJhbWUmIGZyYW1lLCBEaWFnbm9zdGljTG9nZ2luZ0Ns
aWVudCYgZGlhZ25vc3RpY0xvZ2dpCiAgICAgfQogICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgaW52
ZXN0aWdhdGluZyBjYWNoaW5nIGZyYW1lcyB0aGF0IGhhdmUgYW4gYXNzb2NpYXRlZAogICAgIC8v
IGFwcGxpY2F0aW9uIGNhY2hlLiA8cmRhcjovL3Byb2JsZW0vNTkxNzg5OT4gdHJhY2tzIHRoYXQg
d29yay4KLSAgICBpZiAoIWRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5j
YW5DYWNoZUluUGFnZUNhY2hlKCkpIHsKKyAgICBpZiAoIWRvY3VtZW50TG9hZGVyLT5hcHBsaWNh
dGlvbkNhY2hlSG9zdCgpLmNhbkNhY2hlSW5QYWdlQ2FjaGUoKSkgewogICAgICAgICBQQ0xPRygi
ICAgLVRoZSBEb2N1bWVudExvYWRlciB1c2VzIGFuIGFwcGxpY2F0aW9uIGNhY2hlIik7CiAgICAg
ICAgIGxvZ1BhZ2VDYWNoZUZhaWx1cmVEaWFnbm9zdGljTWVzc2FnZShkaWFnbm9zdGljTG9nZ2lu
Z0NsaWVudCwgRGlhZ25vc3RpY0xvZ2dpbmdLZXlzOjphcHBsaWNhdGlvbkNhY2hlS2V5KCkpOwog
ICAgICAgICBpc0NhY2hlYWJsZSA9IGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aHRtbC9GaWxlSW5wdXRUeXBlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlw
ZS5jcHAKaW5kZXggNTdkMGRjMWM3NjNkNjdiNmIwMjI4Yzg2MDUxM2Q3ZjFlOWM1MzYzYi4uMjhi
NmMwNjYxZjRkMzEyOWIxNjc5M2VhZTQxNGI3YmEyZjdjZWI2YiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L0ZpbGVJbnB1dFR5cGUuY3BwCkBAIC0xOTEsNyArMTkxLDcgQEAgdm9pZCBGaWxlSW5wdXRUeXBl
OjpoYW5kbGVET01BY3RpdmF0ZUV2ZW50KEV2ZW50JiBldmVudCkKICAgICBpZiAoIVNjcmlwdENv
bnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpKQogICAgICAgICByZXR1cm47CiAKLSAg
ICBpZiAoQ2hyb21lKiBjaHJvbWUgPSB0aGlzLT5jaHJvbWUoKSkgeworICAgIGlmIChhdXRvKiBj
aHJvbWUgPSB0aGlzLT5jaHJvbWUoKSkgewogICAgICAgICBGaWxlQ2hvb3NlclNldHRpbmdzIHNl
dHRpbmdzOwogICAgICAgICBIVE1MSW5wdXRFbGVtZW50JiBpbnB1dCA9IGVsZW1lbnQoKTsKICAg
ICAgICAgc2V0dGluZ3MuYWxsb3dzTXVsdGlwbGVGaWxlcyA9IGlucHV0Lmhhc0F0dHJpYnV0ZVdp
dGhvdXRTeW5jaHJvbml6YXRpb24obXVsdGlwbGVBdHRyKTsKQEAgLTIwMSw5ICsyMDEsOCBAQCB2
b2lkIEZpbGVJbnB1dFR5cGU6OmhhbmRsZURPTUFjdGl2YXRlRXZlbnQoRXZlbnQmIGV2ZW50KQog
I2lmIEVOQUJMRShNRURJQV9DQVBUVVJFKQogICAgICAgICBzZXR0aW5ncy5tZWRpYUNhcHR1cmVU
eXBlID0gaW5wdXQubWVkaWFDYXB0dXJlVHlwZSgpOwogI2VuZGlmCi0KICAgICAgICAgYXBwbHlG
aWxlQ2hvb3NlclNldHRpbmdzKHNldHRpbmdzKTsKLSAgICAgICAgY2hyb21lLT5ydW5PcGVuUGFu
ZWwoaW5wdXQuZG9jdW1lbnQoKS5mcmFtZSgpLCBtX2ZpbGVDaG9vc2VyKTsKKyAgICAgICAgY2hy
b21lLT5ydW5PcGVuUGFuZWwoKmlucHV0LmRvY3VtZW50KCkuZnJhbWUoKSwgKm1fZmlsZUNob29z
ZXIpOwogICAgIH0KIAogICAgIGV2ZW50LnNldERlZmF1bHRIYW5kbGVkKCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50LmNwcAppbmRleCAyZTg3MmFhYmFl
NjRiMDQ0OGQyMjE0ZTk2MmJiMTZmNmNiZjk5MDEyLi5lYThhM2IzM2UwMDI3ODMyZDY3MGY5ZTA5
ODdhY2NhOGQzNjhiYWEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3Jt
Q29udHJvbEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250
cm9sRWxlbWVudC5jcHAKQEAgLTg5LDcgKzg5LDcgQEAgdm9pZCBIVE1MRm9ybUNvbnRyb2xFbGVt
ZW50OjpzZXRGb3JtRW5jdHlwZShjb25zdCBTdHJpbmcmIHZhbHVlKQogCiBTdHJpbmcgSFRNTEZv
cm1Db250cm9sRWxlbWVudDo6Zm9ybU1ldGhvZCgpIGNvbnN0CiB7Ci0gICAgY29uc3QgQXRvbWlj
U3RyaW5nJiBmb3JtTWV0aG9kQXR0ciA9IGF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24o
Zm9ybW1ldGhvZEF0dHIpOworICAgIGF1dG8mIGZvcm1NZXRob2RBdHRyID0gYXR0cmlidXRlV2l0
aG91dFN5bmNocm9uaXphdGlvbihmb3JtbWV0aG9kQXR0cik7CiAgICAgaWYgKGZvcm1NZXRob2RB
dHRyLmlzTnVsbCgpKQogICAgICAgICByZXR1cm4gZW1wdHlTdHJpbmcoKTsKICAgICByZXR1cm4g
Rm9ybVN1Ym1pc3Npb246OkF0dHJpYnV0ZXM6Om1ldGhvZFN0cmluZyhGb3JtU3VibWlzc2lvbjo6
QXR0cmlidXRlczo6cGFyc2VNZXRob2RUeXBlKGZvcm1NZXRob2RBdHRyKSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxGb3JtRWxlbWVudC5jcHAKaW5kZXggNzQ3NWY2NGQyNmRlYjI1NjA5NWVkYWQ1
YjFjMDZlZjBlYTVkMDJkOC4uNjQwZTMzZWYzYzg5NDJhYjhkZDkxMTgzMGZlNjgwZmNlY2JlZTBi
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmNwcApAQCAtMjg5LDEyICsy
ODksMTEgQEAgdm9pZCBIVE1MRm9ybUVsZW1lbnQ6OnByZXBhcmVGb3JTdWJtaXNzaW9uKEV2ZW50
JiBldmVudCkKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIFN0cmluZ1BhaXJWZWN0b3Ig
Y29udHJvbE5hbWVzQW5kVmFsdWVzOwotICAgIGdldFRleHRGaWVsZFZhbHVlcyhjb250cm9sTmFt
ZXNBbmRWYWx1ZXMpOwotICAgIGF1dG8gZm9ybVN0YXRlID0gRm9ybVN0YXRlOjpjcmVhdGUodGhp
cywgY29udHJvbE5hbWVzQW5kVmFsdWVzLCAmZG9jdW1lbnQoKSwgTm90U3VibWl0dGVkQnlKYXZh
U2NyaXB0KTsKKyAgICBhdXRvIGZvcm1TdGF0ZSA9IEZvcm1TdGF0ZTo6Y3JlYXRlKCp0aGlzLCB0
ZXh0RmllbGRWYWx1ZXMoKSwgZG9jdW1lbnQoKSwgTm90U3VibWl0dGVkQnlKYXZhU2NyaXB0KTsK
ICAgICBmcmFtZS0+bG9hZGVyKCkuY2xpZW50KCkuZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50
KFdURk1vdmUoZm9ybVN0YXRlKSk7CiAKICAgICBSZWY8SFRNTEZvcm1FbGVtZW50PiBwcm90ZWN0
ZWRUaGlzKCp0aGlzKTsKKwogICAgIC8vIEV2ZW50IGhhbmRsaW5nIGNhbiByZXN1bHQgaW4gbV9z
aG91bGRTdWJtaXQgYmVjb21pbmcgdHJ1ZSwgcmVnYXJkbGVzcyBvZiBkaXNwYXRjaEV2ZW50KCkg
cmV0dXJuIHZhbHVlLgogICAgIGlmIChkaXNwYXRjaEV2ZW50KEV2ZW50OjpjcmVhdGUoZXZlbnRO
YW1lcygpLnN1Ym1pdEV2ZW50LCB0cnVlLCB0cnVlKSkpCiAgICAgICAgIG1fc2hvdWxkU3VibWl0
ID0gdHJ1ZTsKQEAgLTMxNSwyMCArMzE0LDIwIEBAIHZvaWQgSFRNTEZvcm1FbGVtZW50OjpzdWJt
aXRGcm9tSmF2YVNjcmlwdCgpCiAgICAgc3VibWl0KDAsIGZhbHNlLCBTY3JpcHRDb250cm9sbGVy
Ojpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSwgU3VibWl0dGVkQnlKYXZhU2NyaXB0KTsKIH0KIAot
dm9pZCBIVE1MRm9ybUVsZW1lbnQ6OmdldFRleHRGaWVsZFZhbHVlcyhTdHJpbmdQYWlyVmVjdG9y
JiBmaWVsZE5hbWVzQW5kVmFsdWVzKSBjb25zdAorU3RyaW5nUGFpclZlY3RvciBIVE1MRm9ybUVs
ZW1lbnQ6OnRleHRGaWVsZFZhbHVlcygpIGNvbnN0CiB7Ci0gICAgQVNTRVJUX0FSRyhmaWVsZE5h
bWVzQW5kVmFsdWVzLCBmaWVsZE5hbWVzQW5kVmFsdWVzLmlzRW1wdHkoKSk7Ci0KLSAgICBmaWVs
ZE5hbWVzQW5kVmFsdWVzLnJlc2VydmVDYXBhY2l0eShtX2Fzc29jaWF0ZWRFbGVtZW50cy5zaXpl
KCkpOworICAgIFN0cmluZ1BhaXJWZWN0b3IgcmVzdWx0OworICAgIHJlc3VsdC5yZXNlcnZlSW5p
dGlhbENhcGFjaXR5KG1fYXNzb2NpYXRlZEVsZW1lbnRzLnNpemUoKSk7CiAgICAgZm9yIChhdXRv
JiBhc3NvY2lhdGVkRWxlbWVudCA6IG1fYXNzb2NpYXRlZEVsZW1lbnRzKSB7Ci0gICAgICAgIEhU
TUxFbGVtZW50JiBlbGVtZW50ID0gYXNzb2NpYXRlZEVsZW1lbnQtPmFzSFRNTEVsZW1lbnQoKTsK
KyAgICAgICAgYXV0byYgZWxlbWVudCA9IGFzc29jaWF0ZWRFbGVtZW50LT5hc0hUTUxFbGVtZW50
KCk7CiAgICAgICAgIGlmICghaXM8SFRNTElucHV0RWxlbWVudD4oZWxlbWVudCkpCiAgICAgICAg
ICAgICBjb250aW51ZTsKLSAgICAgICAgSFRNTElucHV0RWxlbWVudCYgaW5wdXQgPSBkb3duY2Fz
dDxIVE1MSW5wdXRFbGVtZW50PihlbGVtZW50KTsKKyAgICAgICAgYXV0byYgaW5wdXQgPSBkb3du
Y2FzdDxIVE1MSW5wdXRFbGVtZW50PihlbGVtZW50KTsKICAgICAgICAgaWYgKCFpbnB1dC5pc1Rl
eHRGaWVsZCgpKQogICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIGZpZWxkTmFtZXNBbmRW
YWx1ZXMuYXBwZW5kKHN0ZDo6bWFrZV9wYWlyKGlucHV0Lm5hbWUoKS5zdHJpbmcoKSwgaW5wdXQu
dmFsdWUoKSkpOworICAgICAgICByZXN1bHQudW5jaGVja2VkQXBwZW5kKHsgaW5wdXQubmFtZSgp
LnN0cmluZygpLCBpbnB1dC52YWx1ZSgpIH0pOwogICAgIH0KKyAgICByZXR1cm4gcmVzdWx0Owog
fQogCiB2b2lkIEhUTUxGb3JtRWxlbWVudDo6c3VibWl0KEV2ZW50KiBldmVudCwgYm9vbCBhY3Rp
dmF0ZVN1Ym1pdEJ1dHRvbiwgYm9vbCBwcm9jZXNzaW5nVXNlckdlc3R1cmUsIEZvcm1TdWJtaXNz
aW9uVHJpZ2dlciBmb3JtU3VibWlzc2lvblRyaWdnZXIpCkBAIC0zNjQsOSArMzYzLDEwIEBAIHZv
aWQgSFRNTEZvcm1FbGVtZW50OjpzdWJtaXQoRXZlbnQqIGV2ZW50LCBib29sIGFjdGl2YXRlU3Vi
bWl0QnV0dG9uLCBib29sIHByb2NlCiAgICAgaWYgKG5lZWRCdXR0b25BY3RpdmF0aW9uICYmIGZp
cnN0U3VjY2Vzc2Z1bFN1Ym1pdEJ1dHRvbikKICAgICAgICAgZmlyc3RTdWNjZXNzZnVsU3VibWl0
QnV0dG9uLT5zZXRBY3RpdmF0ZWRTdWJtaXQodHJ1ZSk7CiAKLSAgICBMb2NrSGlzdG9yeSBsb2Nr
SGlzdG9yeSA9IHByb2Nlc3NpbmdVc2VyR2VzdHVyZSA/IExvY2tIaXN0b3J5OjpObyA6IExvY2tI
aXN0b3J5OjpZZXM7Ci0gICAgUmVmPEhUTUxGb3JtRWxlbWVudD4gcHJvdGVjdGVkVGhpcygqdGhp
cyk7IC8vIEZvcm0gc3VibWlzc2lvbiBjYW4gZXhlY3V0ZSBhcmJpdGFyeSBKYXZhU2NyaXB0Lgot
ICAgIGZyYW1lLT5sb2FkZXIoKS5zdWJtaXRGb3JtKEZvcm1TdWJtaXNzaW9uOjpjcmVhdGUodGhp
cywgbV9hdHRyaWJ1dGVzLCBldmVudCwgbG9ja0hpc3RvcnksIGZvcm1TdWJtaXNzaW9uVHJpZ2dl
cikpOworICAgIGF1dG8gcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpOyAvLyBGb3JtIHN1
Ym1pc3Npb24gY2FuIGV4ZWN1dGUgYXJiaXRhcnkgSmF2YVNjcmlwdC4KKworICAgIGF1dG8gc2hv
dWxkTG9ja0hpc3RvcnkgPSBwcm9jZXNzaW5nVXNlckdlc3R1cmUgPyBMb2NrSGlzdG9yeTo6Tm8g
OiBMb2NrSGlzdG9yeTo6WWVzOworICAgIGZyYW1lLT5sb2FkZXIoKS5zdWJtaXRGb3JtKEZvcm1T
dWJtaXNzaW9uOjpjcmVhdGUoKnRoaXMsIG1fYXR0cmlidXRlcywgZXZlbnQsIHNob3VsZExvY2tI
aXN0b3J5LCBmb3JtU3VibWlzc2lvblRyaWdnZXIpKTsKIAogICAgIGlmIChuZWVkQnV0dG9uQWN0
aXZhdGlvbiAmJiBmaXJzdFN1Y2Nlc3NmdWxTdWJtaXRCdXR0b24pCiAgICAgICAgIGZpcnN0U3Vj
Y2Vzc2Z1bFN1Ym1pdEJ1dHRvbi0+c2V0QWN0aXZhdGVkU3VibWl0KGZhbHNlKTsKQEAgLTQzOSw4
ICs0MzksOCBAQCB2b2lkIEhUTUxGb3JtRWxlbWVudDo6cmVxdWVzdEF1dG9jb21wbGV0ZSgpCiAg
ICAgU3RyaW5nUGFpclZlY3RvciBjb250cm9sTmFtZXNBbmRWYWx1ZXM7CiAgICAgZ2V0VGV4dEZp
ZWxkVmFsdWVzKGNvbnRyb2xOYW1lc0FuZFZhbHVlcyk7CiAKLSAgICBSZWZQdHI8Rm9ybVN0YXRl
PiBmb3JtU3RhdGUgPSBGb3JtU3RhdGU6OmNyZWF0ZSh0aGlzLCBjb250cm9sTmFtZXNBbmRWYWx1
ZXMsICZkb2N1bWVudCgpLCBTdWJtaXR0ZWRCeUphdmFTY3JpcHQpOwotICAgIGZyYW1lLT5sb2Fk
ZXIoKS5jbGllbnQoKS5kaWRSZXF1ZXN0QXV0b2NvbXBsZXRlKGZvcm1TdGF0ZS5yZWxlYXNlKCkp
OworICAgIGF1dG8gZm9ybVN0YXRlID0gRm9ybVN0YXRlOjpjcmVhdGUodGhpcywgY29udHJvbE5h
bWVzQW5kVmFsdWVzLCAmZG9jdW1lbnQoKSwgU3VibWl0dGVkQnlKYXZhU2NyaXB0KTsKKyAgICBm
cmFtZS0+bG9hZGVyKCkuY2xpZW50KCkuZGlkUmVxdWVzdEF1dG9jb21wbGV0ZShXVEZNb3ZlKGZv
cm1TdGF0ZSkpOwogfQogCiB2b2lkIEhUTUxGb3JtRWxlbWVudDo6ZmluaXNoUmVxdWVzdEF1dG9j
b21wbGV0ZShBdXRvY29tcGxldGVSZXN1bHQgcmVzdWx0KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZv
cm1FbGVtZW50LmgKaW5kZXggYmI1MTc5ODk3NmUzZjY2NDNkOGJhNGE3NWE3YjEwM2U3MjA2MjM5
Ny4uNWRlMTk1ZWI5NjE1Y2VhNjJlNWEyMWNiZjA0OWI5NzlhYjI3MWIyNSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxGb3JtRWxlbWVudC5oCkBAIC0xMjgsNyArMTI4LDcgQEAgcHVibGljOgogICAg
IGNvbnN0IFZlY3RvcjxGb3JtQXNzb2NpYXRlZEVsZW1lbnQqPiYgYXNzb2NpYXRlZEVsZW1lbnRz
KCkgY29uc3QgeyByZXR1cm4gbV9hc3NvY2lhdGVkRWxlbWVudHM7IH0KICAgICBjb25zdCBWZWN0
b3I8SFRNTEltYWdlRWxlbWVudCo+JiBpbWFnZUVsZW1lbnRzKCkgY29uc3QgeyByZXR1cm4gbV9p
bWFnZUVsZW1lbnRzOyB9CiAKLSAgICB2b2lkIGdldFRleHRGaWVsZFZhbHVlcyhTdHJpbmdQYWly
VmVjdG9yJiBmaWVsZE5hbWVzQW5kVmFsdWVzKSBjb25zdDsKKyAgICBTdHJpbmdQYWlyVmVjdG9y
IHRleHRGaWVsZFZhbHVlcygpIGNvbnN0OwogCiAgICAgc3RhdGljIEhUTUxGb3JtRWxlbWVudCog
ZmluZENsb3Nlc3RGb3JtQW5jZXN0b3IoY29uc3QgRWxlbWVudCYpOwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxIdG1sRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxIdG1sRWxlbWVudC5jcHAKaW5kZXggNTg0NmY1NjQxOThhOWQ5ZmZlMDIzMmViZTE1
YzFmZDUwYWYzMTljOC4uNDlmODM3MjU0M2MxOWJkZDhhMWJjZGZkMzNjNTUzNTZmNjg2ZjU1OSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSHRtbEVsZW1lbnQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEh0bWxFbGVtZW50LmNwcApAQCAtNjYsMTUgKzY2LDE1
IEBAIHZvaWQgSFRNTEh0bWxFbGVtZW50OjppbnNlcnRlZEJ5UGFyc2VyKCkKICAgICBpZiAoIWRv
Y3VtZW50KCkuZnJhbWUoKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgRG9jdW1lbnRMb2FkZXIq
IGRvY3VtZW50TG9hZGVyID0gZG9jdW1lbnQoKS5mcmFtZSgpLT5sb2FkZXIoKS5kb2N1bWVudExv
YWRlcigpOworICAgIGF1dG8qIGRvY3VtZW50TG9hZGVyID0gZG9jdW1lbnQoKS5mcmFtZSgpLT5s
b2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwogICAgIGlmICghZG9jdW1lbnRMb2FkZXIpCiAgICAg
ICAgIHJldHVybjsKIAotICAgIGNvbnN0IEF0b21pY1N0cmluZyYgbWFuaWZlc3QgPSBhdHRyaWJ1
dGVXaXRob3V0U3luY2hyb25pemF0aW9uKG1hbmlmZXN0QXR0cik7CisgICAgYXV0byYgbWFuaWZl
c3QgPSBhdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKG1hbmlmZXN0QXR0cik7CiAgICAg
aWYgKG1hbmlmZXN0LmlzRW1wdHkoKSkKLSAgICAgICAgZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0
aW9uQ2FjaGVIb3N0KCktPnNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0KCk7CisgICAgICAgIGRv
Y3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLnNlbGVjdENhY2hlV2l0aG91dE1h
bmlmZXN0KCk7CiAgICAgZWxzZQotICAgICAgICBkb2N1bWVudExvYWRlci0+YXBwbGljYXRpb25D
YWNoZUhvc3QoKS0+c2VsZWN0Q2FjaGVXaXRoTWFuaWZlc3QoZG9jdW1lbnQoKS5jb21wbGV0ZVVS
TChtYW5pZmVzdCkpOworICAgICAgICBkb2N1bWVudExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhv
c3QoKS5zZWxlY3RDYWNoZVdpdGhNYW5pZmVzdChkb2N1bWVudCgpLmNvbXBsZXRlVVJMKG1hbmlm
ZXN0KSk7CiB9CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExpbmtF
bGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExpbmtFbGVtZW50LmNwcAppbmRl
eCBkNzc3YTM5MzcxY2NmZDhjMzNhM2ZlODA5NjA3ZTI4OWIyZTQ5OTUxLi40OTZhZWQ2ZWJlNzU5
ODRiNmIyMzExNWVlN2UzMDMwZDk4NjhkYmUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxMaW5rRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGlu
a0VsZW1lbnQuY3BwCkBAIC0yNjcsNyArMjY3LDcgQEAgdm9pZCBIVE1MTGlua0VsZW1lbnQ6OnBy
b2Nlc3MoKQogICAgICAgICBpZiAoIWlzQWN0aXZlKQogICAgICAgICAgICAgcHJpb3JpdHkgPSBS
ZXNvdXJjZUxvYWRQcmlvcml0eTo6VmVyeUxvdzsKICAgICAgICAgQ2FjaGVkUmVzb3VyY2VSZXF1
ZXN0IHJlcXVlc3QodXJsLCBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6ZGVmYXVsdENhY2hlZFJlc291
cmNlT3B0aW9ucygpLCBwcmlvcml0eSwgV1RGTW92ZShjaGFyc2V0KSk7Ci0gICAgICAgIHJlcXVl
c3Quc2V0SW5pdGlhdG9yKHRoaXMpOworICAgICAgICByZXF1ZXN0LnNldEluaXRpYXRvcigqdGhp
cyk7CiAKICAgICAgICAgaWYgKGRvY3VtZW50KCkuY29udGVudFNlY3VyaXR5UG9saWN5KCktPmFs
bG93U3R5bGVXaXRoTm9uY2UoYXR0cmlidXRlV2l0aG91dFN5bmNocm9uaXphdGlvbihIVE1MTmFt
ZXM6Om5vbmNlQXR0cikpKSB7CiAgICAgICAgICAgICBSZXNvdXJjZUxvYWRlck9wdGlvbnMgb3B0
aW9ucyA9IENhY2hlZFJlc291cmNlTG9hZGVyOjpkZWZhdWx0Q2FjaGVkUmVzb3VyY2VPcHRpb25z
KCk7CkBAIC0zNjcsNyArMzY3LDcgQEAgdm9pZCBIVE1MTGlua0VsZW1lbnQ6OnNldENTU1N0eWxl
U2hlZXQoY29uc3QgU3RyaW5nJiBocmVmLCBjb25zdCBVUkwmIGJhc2VVUkwsIGMKICAgICBDU1NQ
YXJzZXJDb250ZXh0IHBhcnNlckNvbnRleHQoZG9jdW1lbnQoKSwgYmFzZVVSTCwgY2hhcnNldCk7
CiAgICAgYXV0byBjYWNoZVBvbGljeSA9IGZyYW1lLT5sb2FkZXIoKS5zdWJyZXNvdXJjZUNhY2hl
UG9saWN5KCk7CiAKLSAgICBpZiAoUmVmUHRyPFN0eWxlU2hlZXRDb250ZW50cz4gcmVzdG9yZWRT
aGVldCA9IGNvbnN0X2Nhc3Q8Q2FjaGVkQ1NTU3R5bGVTaGVldCo+KGNhY2hlZFN0eWxlU2hlZXQp
LT5yZXN0b3JlUGFyc2VkU3R5bGVTaGVldChwYXJzZXJDb250ZXh0LCBjYWNoZVBvbGljeSkpIHsK
KyAgICBpZiAoYXV0byByZXN0b3JlZFNoZWV0ID0gY29uc3RfY2FzdDxDYWNoZWRDU1NTdHlsZVNo
ZWV0Kj4oY2FjaGVkU3R5bGVTaGVldCktPnJlc3RvcmVQYXJzZWRTdHlsZVNoZWV0KHBhcnNlckNv
bnRleHQsIGNhY2hlUG9saWN5KSkgewogICAgICAgICBBU1NFUlQocmVzdG9yZWRTaGVldC0+aXND
YWNoZWFibGUoKSk7CiAgICAgICAgIEFTU0VSVCghcmVzdG9yZWRTaGVldC0+aXNMb2FkaW5nKCkp
OwogICAgICAgICBpbml0aWFsaXplU3R5bGVTaGVldChyZXN0b3JlZFNoZWV0LnJlbGVhc2VOb25O
dWxsKCksICpjYWNoZWRTdHlsZVNoZWV0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVs
ZW1lbnQuY3BwCmluZGV4IDRjN2RjOTcyYzVlNmFjNTY5ZTAzY2MxNGI2MjYwMGFhOTQ4NWE2ZTQu
LjNmYzBjNTljNWI3YjMxNGNkNTdhYTk4MzlkMTZiMGRhM2JiYWRkZTcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcApAQCAtMTQyOCwxMSArMTQyOCw4IEBAIHZvaWQg
SFRNTE1lZGlhRWxlbWVudDo6bG9hZFJlc291cmNlKGNvbnN0IFVSTCYgaW5pdGlhbFVSTCwgQ29u
dGVudFR5cGUmIGNvbnRlbnRUCiAgICAgfQogCiAjaWYgRU5BQkxFKENPTlRFTlRfRVhURU5TSU9O
UykKLSAgICBEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIgPSBmcmFtZS0+bG9hZGVyKCku
ZG9jdW1lbnRMb2FkZXIoKTsKLQotICAgIGlmIChkb2N1bWVudExvYWRlcikgewotICAgICAgICBh
dXRvIGJsb2NrZWRTdGF0dXMgPSBwYWdlLT51c2VyQ29udGVudFByb3ZpZGVyKCkucHJvY2Vzc0Nv
bnRlbnRFeHRlbnNpb25SdWxlc0ZvckxvYWQodXJsLCBSZXNvdXJjZVR5cGU6Ok1lZGlhLCAqZG9j
dW1lbnRMb2FkZXIpOwotICAgICAgICBpZiAoYmxvY2tlZFN0YXR1cy5ibG9ja2VkTG9hZCkgewor
ICAgIGlmIChhdXRvKiBkb2N1bWVudExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExv
YWRlcigpKSB7CisgICAgICAgIGlmIChwYWdlLT51c2VyQ29udGVudFByb3ZpZGVyKCkucHJvY2Vz
c0NvbnRlbnRFeHRlbnNpb25SdWxlc0ZvckxvYWQodXJsLCBSZXNvdXJjZVR5cGU6Ok1lZGlhLCAq
ZG9jdW1lbnRMb2FkZXIpLmJsb2NrZWRMb2FkKSB7CiAgICAgICAgICAgICBtZWRpYUxvYWRpbmdG
YWlsZWQoTWVkaWFQbGF5ZXI6OkZvcm1hdEVycm9yKTsKICAgICAgICAgICAgIHJldHVybjsKICAg
ICAgICAgfQpAQCAtMTQ0MiwxMSArMTQzOSw5IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6bG9h
ZFJlc291cmNlKGNvbnN0IFVSTCYgaW5pdGlhbFVSTCwgQ29udGVudFR5cGUmIGNvbnRlbnRUCiAg
ICAgLy8gVGhlIHJlc291cmNlIGZldGNoIGFsZ29yaXRobSAKICAgICBtX25ldHdvcmtTdGF0ZSA9
IE5FVFdPUktfTE9BRElORzsKIAotICAgIC8vIElmIHRoZSB1cmwgc2hvdWxkIGJlIGxvYWRlZCBm
cm9tIHRoZSBhcHBsaWNhdGlvbiBjYWNoZSwgcGFzcyB0aGUgdXJsIG9mIHRoZSBjYWNoZWQgZmls
ZQotICAgIC8vIHRvIHRoZSBtZWRpYSBlbmdpbmUuCi0gICAgQXBwbGljYXRpb25DYWNoZUhvc3Qq
IGNhY2hlSG9zdCA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlv
bkNhY2hlSG9zdCgpOworICAgIC8vIElmIHRoZSBVUkwgc2hvdWxkIGJlIGxvYWRlZCBmcm9tIHRo
ZSBhcHBsaWNhdGlvbiBjYWNoZSwgcGFzcyB0aGUgVVJMIG9mIHRoZSBjYWNoZWQgZmlsZSB0byB0
aGUgbWVkaWEgZW5naW5lLgogICAgIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSogcmVzb3VyY2Ug
PSBudWxscHRyOwotICAgIGlmIChjYWNoZUhvc3QgJiYgY2FjaGVIb3N0LT5zaG91bGRMb2FkUmVz
b3VyY2VGcm9tQXBwbGljYXRpb25DYWNoZShSZXNvdXJjZVJlcXVlc3QodXJsKSwgcmVzb3VyY2Up
KSB7CisgICAgaWYgKGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlv
bkNhY2hlSG9zdCgpLnNob3VsZExvYWRSZXNvdXJjZUZyb21BcHBsaWNhdGlvbkNhY2hlKFJlc291
cmNlUmVxdWVzdCh1cmwpLCByZXNvdXJjZSkpIHsKICAgICAgICAgLy8gUmVzb3VyY2VzIHRoYXQg
YXJlIG5vdCBwcmVzZW50IGluIHRoZSBtYW5pZmVzdCB3aWxsIGFsd2F5cyBmYWlsIHRvIGxvYWQg
KGF0IGxlYXN0LCBhZnRlciB0aGUKICAgICAgICAgLy8gY2FjaGUgaGFzIGJlZW4gcHJpbWVkIHRo
ZSBmaXJzdCB0aW1lKSwgbWFraW5nIHRoZSB0ZXN0aW5nIG9mIG9mZmxpbmUgYXBwbGljYXRpb25z
IHNpbXBsZXIuCiAgICAgICAgIGlmICghcmVzb3VyY2UgfHwgcmVzb3VyY2UtPnBhdGgoKS5pc0Vt
cHR5KCkpIHsKQEAgLTE0NjAsNyArMTQ1NSw3IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6bG9h
ZFJlc291cmNlKGNvbnN0IFVSTCYgaW5pdGlhbFVSTCwgQ29udGVudFR5cGUmIGNvbnRlbnRUCiAK
ICAgICBtX2ZpcnN0VGltZVBsYXlpbmcgPSB0cnVlOwogCi0gICAgLy8gU2V0IG1fY3VycmVudFNy
YyAqYmVmb3JlKiBjaGFuZ2luZyB0byB0aGUgY2FjaGUgdXJsLCB0aGUgZmFjdCB0aGF0IHdlIGFy
ZSBsb2FkaW5nIGZyb20gdGhlIGFwcAorICAgIC8vIFNldCBtX2N1cnJlbnRTcmMgKmJlZm9yZSog
Y2hhbmdpbmcgdG8gdGhlIGNhY2hlIFVSTCwgdGhlIGZhY3QgdGhhdCB3ZSBhcmUgbG9hZGluZyBm
cm9tIHRoZSBhcHAKICAgICAvLyBjYWNoZSBpcyBhbiBpbnRlcm5hbCBkZXRhaWwgbm90IGV4cG9z
ZWQgdGhyb3VnaCB0aGUgbWVkaWEgZWxlbWVudCBBUEkuCiAgICAgbV9jdXJyZW50U3JjID0gdXJs
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQXBwbGlj
YXRpb25DYWNoZUFnZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JB
cHBsaWNhdGlvbkNhY2hlQWdlbnQuY3BwCmluZGV4IGZmNGZmMzFjYzE5ZjQ5MzRkMDRiMjI5N2Y3
NmViOTQ1ODg0ODVkMjIuLjZlMzliY2RhZDBkODRmMDQyN2E5MmMyNzEwZmZjZjJmMWUwYjAwYzQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlv
bkNhY2hlQWdlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JB
cHBsaWNhdGlvbkNhY2hlQWdlbnQuY3BwCkBAIC02OCwxNiArNjgsMTcgQEAgdm9pZCBJbnNwZWN0
b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6OmVuYWJsZShFcnJvclN0cmluZyYpCiAKIHZvaWQgSW5z
cGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50Ojp1cGRhdGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVz
KEZyYW1lKiBmcmFtZSkKIHsKLSAgICBEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIgPSBm
cmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKKyAgICBpZiAoIWZyYW1lKQorICAgICAg
ICByZXR1cm47CisgICAgYXV0byogZG9jdW1lbnRMb2FkZXIgPSBmcmFtZS0+bG9hZGVyKCkuZG9j
dW1lbnRMb2FkZXIoKTsKICAgICBpZiAoIWRvY3VtZW50TG9hZGVyKQogICAgICAgICByZXR1cm47
CiAKLSAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdCogaG9zdCA9IGRvY3VtZW50TG9hZGVyLT5hcHBs
aWNhdGlvbkNhY2hlSG9zdCgpOwotICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpTdGF0dXMgc3Rh
dHVzID0gaG9zdC0+c3RhdHVzKCk7Ci0gICAgQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNhY2hlSW5m
byBpbmZvID0gaG9zdC0+YXBwbGljYXRpb25DYWNoZUluZm8oKTsKKyAgICBhdXRvJiBob3N0ID0g
ZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7CisgICAgaW50IHN0YXR1cyA9
IGhvc3Quc3RhdHVzKCk7CisgICAgYXV0byBtYW5pZmVzdFVSTCA9IGhvc3QuYXBwbGljYXRpb25D
YWNoZUluZm8oKS5tYW5pZmVzdC5zdHJpbmcoKTsKIAotICAgIFN0cmluZyBtYW5pZmVzdFVSTCA9
IGluZm8ubV9tYW5pZmVzdC5zdHJpbmcoKTsKLSAgICBtX2Zyb250ZW5kRGlzcGF0Y2hlci0+YXBw
bGljYXRpb25DYWNoZVN0YXR1c1VwZGF0ZWQobV9wYWdlQWdlbnQtPmZyYW1lSWQoZnJhbWUpLCBt
YW5pZmVzdFVSTCwgc3RhdGljX2Nhc3Q8aW50PihzdGF0dXMpKTsKKyAgICBtX2Zyb250ZW5kRGlz
cGF0Y2hlci0+YXBwbGljYXRpb25DYWNoZVN0YXR1c1VwZGF0ZWQobV9wYWdlQWdlbnQtPmZyYW1l
SWQoZnJhbWUpLCBtYW5pZmVzdFVSTCwgc3RhdHVzKTsKIH0KIAogdm9pZCBJbnNwZWN0b3JBcHBs
aWNhdGlvbkNhY2hlQWdlbnQ6Om5ldHdvcmtTdGF0ZUNoYW5nZWQoKQpAQCAtOTEsMjAgKzkyLDE4
IEBAIHZvaWQgSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpnZXRGcmFtZXNXaXRoTWFu
aWZlc3RzKEVycm9yU3RyaW5nJiwgUmVmUHRyCiAgICAgcmVzdWx0ID0gSW5zcGVjdG9yOjpQcm90
b2NvbDo6QXJyYXk8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6RnJhbWVX
aXRoTWFuaWZlc3Q+OjpjcmVhdGUoKTsKIAogICAgIGZvciAoRnJhbWUqIGZyYW1lID0gJm1fcGFn
ZUFnZW50LT5tYWluRnJhbWUoKTsgZnJhbWU7IGZyYW1lID0gZnJhbWUtPnRyZWUoKS50cmF2ZXJz
ZU5leHQoKSkgewotICAgICAgICBEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIgPSBmcmFt
ZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKKyAgICAgICAgYXV0byogZG9jdW1lbnRMb2Fk
ZXIgPSBmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKICAgICAgICAgaWYgKCFkb2N1
bWVudExvYWRlcikKICAgICAgICAgICAgIGNvbnRpbnVlOwogCi0gICAgICAgIEFwcGxpY2F0aW9u
Q2FjaGVIb3N0KiBob3N0ID0gZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7
Ci0gICAgICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8gaW5mbyA9IGhvc3QtPmFw
cGxpY2F0aW9uQ2FjaGVJbmZvKCk7Ci0gICAgICAgIFN0cmluZyBtYW5pZmVzdFVSTCA9IGluZm8u
bV9tYW5pZmVzdC5zdHJpbmcoKTsKKyAgICAgICAgYXV0byYgaG9zdCA9IGRvY3VtZW50TG9hZGVy
LT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpOworICAgICAgICBTdHJpbmcgbWFuaWZlc3RVUkwgPSBo
b3N0LmFwcGxpY2F0aW9uQ2FjaGVJbmZvKCkubWFuaWZlc3Quc3RyaW5nKCk7CiAgICAgICAgIGlm
ICghbWFuaWZlc3RVUkwuaXNFbXB0eSgpKSB7Ci0gICAgICAgICAgICBSZWY8SW5zcGVjdG9yOjpQ
cm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6RnJhbWVXaXRoTWFuaWZlc3Q+IHZhbHVlID0gSW5z
cGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6RnJhbWVXaXRoTWFuaWZlc3Q6OmNy
ZWF0ZSgpCisgICAgICAgICAgICByZXN1bHQtPmFkZEl0ZW0oSW5zcGVjdG9yOjpQcm90b2NvbDo6
QXBwbGljYXRpb25DYWNoZTo6RnJhbWVXaXRoTWFuaWZlc3Q6OmNyZWF0ZSgpCiAgICAgICAgICAg
ICAgICAgLnNldEZyYW1lSWQobV9wYWdlQWdlbnQtPmZyYW1lSWQoZnJhbWUpKQogICAgICAgICAg
ICAgICAgIC5zZXRNYW5pZmVzdFVSTChtYW5pZmVzdFVSTCkKLSAgICAgICAgICAgICAgICAuc2V0
U3RhdHVzKHN0YXRpY19jYXN0PGludD4oaG9zdC0+c3RhdHVzKCkpKQotICAgICAgICAgICAgICAg
IC5yZWxlYXNlKCk7Ci0gICAgICAgICAgICByZXN1bHQtPmFkZEl0ZW0oV1RGTW92ZSh2YWx1ZSkp
OworICAgICAgICAgICAgICAgIC5zZXRTdGF0dXMoc3RhdGljX2Nhc3Q8aW50Pihob3N0LnN0YXR1
cygpKSkKKyAgICAgICAgICAgICAgICAucmVsZWFzZSgpKTsKICAgICAgICAgfQogICAgIH0KIH0K
QEAgLTEyNCw2OCArMTIzLDYwIEBAIHZvaWQgSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50
OjpnZXRNYW5pZmVzdEZvckZyYW1lKEVycm9yU3RyaW5nJiBlcnJvclN0cmluCiAgICAgaWYgKCFk
b2N1bWVudExvYWRlcikKICAgICAgICAgcmV0dXJuOwogCi0gICAgQXBwbGljYXRpb25DYWNoZUhv
c3Q6OkNhY2hlSW5mbyBpbmZvID0gZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCktPmFwcGxpY2F0aW9uQ2FjaGVJbmZvKCk7Ci0gICAgKm1hbmlmZXN0VVJMID0gaW5mby5tX21h
bmlmZXN0LnN0cmluZygpOworICAgICptYW5pZmVzdFVSTCA9IGRvY3VtZW50TG9hZGVyLT5hcHBs
aWNhdGlvbkNhY2hlSG9zdCgpLmFwcGxpY2F0aW9uQ2FjaGVJbmZvKCkubWFuaWZlc3Quc3RyaW5n
KCk7CiB9CiAKIHZvaWQgSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpnZXRBcHBsaWNh
dGlvbkNhY2hlRm9yRnJhbWUoRXJyb3JTdHJpbmcmIGVycm9yU3RyaW5nLCBjb25zdCBTdHJpbmcm
IGZyYW1lSWQsIFJlZlB0cjxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpB
cHBsaWNhdGlvbkNhY2hlPiYgYXBwbGljYXRpb25DYWNoZSkKIHsKLSAgICBEb2N1bWVudExvYWRl
ciogZG9jdW1lbnRMb2FkZXIgPSBhc3NlcnRGcmFtZVdpdGhEb2N1bWVudExvYWRlcihlcnJvclN0
cmluZywgZnJhbWVJZCk7CisgICAgYXV0byogZG9jdW1lbnRMb2FkZXIgPSBhc3NlcnRGcmFtZVdp
dGhEb2N1bWVudExvYWRlcihlcnJvclN0cmluZywgZnJhbWVJZCk7CiAgICAgaWYgKCFkb2N1bWVu
dExvYWRlcikKICAgICAgICAgcmV0dXJuOwogCi0gICAgQXBwbGljYXRpb25DYWNoZUhvc3QqIGhv
c3QgPSBkb2N1bWVudExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKTsKLSAgICBBcHBsaWNh
dGlvbkNhY2hlSG9zdDo6Q2FjaGVJbmZvIGluZm8gPSBob3N0LT5hcHBsaWNhdGlvbkNhY2hlSW5m
bygpOwotCi0gICAgQXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mb0xpc3QgcmVzb3Vy
Y2VzOwotICAgIGhvc3QtPmZpbGxSZXNvdXJjZUxpc3QoJnJlc291cmNlcyk7Ci0KLSAgICBhcHBs
aWNhdGlvbkNhY2hlID0gYnVpbGRPYmplY3RGb3JBcHBsaWNhdGlvbkNhY2hlKHJlc291cmNlcywg
aW5mbyk7CisgICAgYXV0byYgaG9zdCA9IGRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hl
SG9zdCgpOworICAgIGFwcGxpY2F0aW9uQ2FjaGUgPSBidWlsZE9iamVjdEZvckFwcGxpY2F0aW9u
Q2FjaGUoaG9zdC5yZXNvdXJjZUxpc3QoKSwgaG9zdC5hcHBsaWNhdGlvbkNhY2hlSW5mbygpKTsK
IH0KIAotUmVmPEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0
aW9uQ2FjaGU+IEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6YnVpbGRPYmplY3RGb3JB
cHBsaWNhdGlvbkNhY2hlKGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpSZXNvdXJjZUluZm9M
aXN0JiBhcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2VzLCBjb25zdCBBcHBsaWNhdGlvbkNhY2hlSG9z
dDo6Q2FjaGVJbmZvJiBhcHBsaWNhdGlvbkNhY2hlSW5mbykKK1JlZjxJbnNwZWN0b3I6OlByb3Rv
Y29sOjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlPiBJbnNwZWN0b3JBcHBsaWNh
dGlvbkNhY2hlQWdlbnQ6OmJ1aWxkT2JqZWN0Rm9yQXBwbGljYXRpb25DYWNoZShjb25zdCBWZWN0
b3I8QXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mbz4mIGFwcGxpY2F0aW9uQ2FjaGVS
ZXNvdXJjZXMsIGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8mIGFwcGxpY2F0
aW9uQ2FjaGVJbmZvKQogewogICAgIHJldHVybiBJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNh
dGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlOjpjcmVhdGUoKQotICAgICAgICAuc2V0TWFuaWZl
c3RVUkwoYXBwbGljYXRpb25DYWNoZUluZm8ubV9tYW5pZmVzdC5zdHJpbmcoKSkKLSAgICAgICAg
LnNldFNpemUoYXBwbGljYXRpb25DYWNoZUluZm8ubV9zaXplKQotICAgICAgICAuc2V0Q3JlYXRp
b25UaW1lKGFwcGxpY2F0aW9uQ2FjaGVJbmZvLm1fY3JlYXRpb25UaW1lKQotICAgICAgICAuc2V0
VXBkYXRlVGltZShhcHBsaWNhdGlvbkNhY2hlSW5mby5tX3VwZGF0ZVRpbWUpCisgICAgICAgIC5z
ZXRNYW5pZmVzdFVSTChhcHBsaWNhdGlvbkNhY2hlSW5mby5tYW5pZmVzdC5zdHJpbmcoKSkKKyAg
ICAgICAgLnNldFNpemUoYXBwbGljYXRpb25DYWNoZUluZm8uc2l6ZSkKKyAgICAgICAgLnNldENy
ZWF0aW9uVGltZShhcHBsaWNhdGlvbkNhY2hlSW5mby5jcmVhdGlvblRpbWUpCisgICAgICAgIC5z
ZXRVcGRhdGVUaW1lKGFwcGxpY2F0aW9uQ2FjaGVJbmZvLnVwZGF0ZVRpbWUpCiAgICAgICAgIC5z
ZXRSZXNvdXJjZXMoYnVpbGRBcnJheUZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMoYXBwbGlj
YXRpb25DYWNoZVJlc291cmNlcykpCiAgICAgICAgIC5yZWxlYXNlKCk7CiB9CiAKLVJlZjxJbnNw
ZWN0b3I6OlByb3RvY29sOjpBcnJheTxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNh
Y2hlOjpBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+PiBJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hl
QWdlbnQ6OmJ1aWxkQXJyYXlGb3JBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2VzKGNvbnN0IEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0OjpSZXNvdXJjZUluZm9MaXN0JiBhcHBsaWNhdGlvbkNhY2hlUmVzb3Vy
Y2VzKQorUmVmPEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFycmF5PEluc3BlY3Rvcjo6UHJvdG9jb2w6
OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4+IEluc3BlY3RvckFw
cGxpY2F0aW9uQ2FjaGVBZ2VudDo6YnVpbGRBcnJheUZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJj
ZXMoY29uc3QgVmVjdG9yPEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpSZXNvdXJjZUluZm8+JiBhcHBs
aWNhdGlvbkNhY2hlUmVzb3VyY2VzKQogewotICAgIGF1dG8gcmVzb3VyY2VzID0gSW5zcGVjdG9y
OjpQcm90b2NvbDo6QXJyYXk8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6
QXBwbGljYXRpb25DYWNoZVJlc291cmNlPjo6Y3JlYXRlKCk7Ci0KLSAgICBmb3IgKGNvbnN0IGF1
dG8mIHJlc291cmNlSW5mbyA6IGFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMpCi0gICAgICAgIHJl
c291cmNlcy0+YWRkSXRlbShidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZShy
ZXNvdXJjZUluZm8pKTsKLQotICAgIHJldHVybiByZXNvdXJjZXM7CisgICAgYXV0byByZXN1bHQg
PSBJbnNwZWN0b3I6OlByb3RvY29sOjpBcnJheTxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNh
dGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+OjpjcmVhdGUoKTsKKyAgICBmb3Ig
KGF1dG8mIGluZm8gOiBhcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2VzKQorICAgICAgICByZXN1bHQt
PmFkZEl0ZW0oYnVpbGRPYmplY3RGb3JBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UoaW5mbykpOwor
ICAgIHJldHVybiByZXN1bHQ7CiB9CiAKIFJlZjxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNh
dGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+IEluc3BlY3RvckFwcGxpY2F0aW9u
Q2FjaGVBZ2VudDo6YnVpbGRPYmplY3RGb3JBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UoY29uc3Qg
QXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mbyYgcmVzb3VyY2VJbmZvKQogewogICAg
IFN0cmluZ0J1aWxkZXIgdHlwZXM7CiAKLSAgICBpZiAocmVzb3VyY2VJbmZvLm1faXNNYXN0ZXIp
CisgICAgaWYgKHJlc291cmNlSW5mby5pc01hc3RlcikKICAgICAgICAgdHlwZXMuYXBwZW5kTGl0
ZXJhbCgiTWFzdGVyICIpOwogCi0gICAgaWYgKHJlc291cmNlSW5mby5tX2lzTWFuaWZlc3QpCisg
ICAgaWYgKHJlc291cmNlSW5mby5pc01hbmlmZXN0KQogICAgICAgICB0eXBlcy5hcHBlbmRMaXRl
cmFsKCJNYW5pZmVzdCAiKTsKIAotICAgIGlmIChyZXNvdXJjZUluZm8ubV9pc0ZhbGxiYWNrKQor
ICAgIGlmIChyZXNvdXJjZUluZm8uaXNGYWxsYmFjaykKICAgICAgICAgdHlwZXMuYXBwZW5kTGl0
ZXJhbCgiRmFsbGJhY2sgIik7CiAKLSAgICBpZiAocmVzb3VyY2VJbmZvLm1faXNGb3JlaWduKQor
ICAgIGlmIChyZXNvdXJjZUluZm8uaXNGb3JlaWduKQogICAgICAgICB0eXBlcy5hcHBlbmRMaXRl
cmFsKCJGb3JlaWduICIpOwogCi0gICAgaWYgKHJlc291cmNlSW5mby5tX2lzRXhwbGljaXQpCisg
ICAgaWYgKHJlc291cmNlSW5mby5pc0V4cGxpY2l0KQogICAgICAgICB0eXBlcy5hcHBlbmRMaXRl
cmFsKCJFeHBsaWNpdCAiKTsKIAogICAgIHJldHVybiBJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBs
aWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6OmNyZWF0ZSgpCi0gICAgICAg
IC5zZXRVcmwocmVzb3VyY2VJbmZvLm1fcmVzb3VyY2Uuc3RyaW5nKCkpCi0gICAgICAgIC5zZXRT
aXplKHN0YXRpY19jYXN0PGludD4ocmVzb3VyY2VJbmZvLm1fc2l6ZSkpCisgICAgICAgIC5zZXRV
cmwocmVzb3VyY2VJbmZvLnJlc291cmNlLnN0cmluZygpKQorICAgICAgICAuc2V0U2l6ZShzdGF0
aWNfY2FzdDxpbnQ+KHJlc291cmNlSW5mby5zaXplKSkKICAgICAgICAgLnNldFR5cGUodHlwZXMu
dG9TdHJpbmcoKSkKICAgICAgICAgLnJlbGVhc2UoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuaCBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuaAppbmRl
eCBkNWM1NzljN2VhYmU3YjJiYWRjNDc0YjBmNDg3MTZkZDY5NGZlYjc2Li40ODc1MmVmYTBjZDVm
NmE3NjJkZTUzZGMyYTExMmVmZjQ2NGY3MmZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50LmgKKysrIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5oCkBAIC02Miw4
ICs2Miw4IEBAIHB1YmxpYzoKICAgICB2b2lkIGdldEFwcGxpY2F0aW9uQ2FjaGVGb3JGcmFtZShF
cnJvclN0cmluZyYsIGNvbnN0IFN0cmluZyYgZnJhbWVJZCwgUmVmUHRyPEluc3BlY3Rvcjo6UHJv
dG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGU+Jikgb3ZlcnJpZGU7CiAK
IHByaXZhdGU6Ci0gICAgUmVmPEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6
OkFwcGxpY2F0aW9uQ2FjaGU+IGJ1aWxkT2JqZWN0Rm9yQXBwbGljYXRpb25DYWNoZShjb25zdCBB
cHBsaWNhdGlvbkNhY2hlSG9zdDo6UmVzb3VyY2VJbmZvTGlzdCYsIGNvbnN0IEFwcGxpY2F0aW9u
Q2FjaGVIb3N0OjpDYWNoZUluZm8mKTsKLSAgICBSZWY8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXJy
YXk8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNo
ZVJlc291cmNlPj4gYnVpbGRBcnJheUZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMoY29uc3Qg
QXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mb0xpc3QmKTsKKyAgICBSZWY8SW5zcGVj
dG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZT4gYnVpbGRP
YmplY3RGb3JBcHBsaWNhdGlvbkNhY2hlKGNvbnN0IFZlY3RvcjxBcHBsaWNhdGlvbkNhY2hlSG9z
dDo6UmVzb3VyY2VJbmZvPiYsIGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8m
KTsKKyAgICBSZWY8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXJyYXk8SW5zcGVjdG9yOjpQcm90b2Nv
bDo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZVJlc291cmNlPj4gYnVpbGRBcnJh
eUZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMoY29uc3QgVmVjdG9yPEFwcGxpY2F0aW9uQ2Fj
aGVIb3N0OjpSZXNvdXJjZUluZm8+Jik7CiAgICAgUmVmPEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFw
cGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4gYnVpbGRPYmplY3RGb3JB
cHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UoY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291
cmNlSW5mbyYpOwogCiAgICAgRG9jdW1lbnRMb2FkZXIqIGFzc2VydEZyYW1lV2l0aERvY3VtZW50
TG9hZGVyKEVycm9yU3RyaW5nJiwgY29uc3QgU3RyaW5nJiBmcmFtZUlkKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uY3BwIGIv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5jcHAKaW5k
ZXggMmU0MzM3OTZhNmFmM2IxMWI5MWQ3Y2IwNjIxYTE4NDdiNWZjMjU3YS4uZDY4YzUyMmVmY2Uw
MmNmZWQ1OWE4ZjA4NTlmNDU0ZTFjOGMyY2E4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5jcHAKQEAgLTEsNiArMSw2IEBA
CiAvKgogKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KLSogQ29weXJpZ2h0IChDKSAyMDE0LCAyMDE1IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyogQ29weXJpZ2h0IChDKSAyMDE0LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgogKgogKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQpAQCAtMTA3MywxMCArMTA3
MywxMCBAQCB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6bmV0d29ya1N0YXRlQ2hhbmdl
ZEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdAogICAgICAgICBhcHBsaWNhdGlvbkNhY2hl
QWdlbnQtPm5ldHdvcmtTdGF0ZUNoYW5nZWQoKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb246OnVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXNJbXBsKEluc3RydW1lbnRpbmdB
Z2VudHMmIGluc3RydW1lbnRpbmdBZ2VudHMsIEZyYW1lKiBmcmFtZSkKK3ZvaWQgSW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjp1cGRhdGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzSW1wbChJbnN0cnVt
ZW50aW5nQWdlbnRzJiBpbnN0cnVtZW50aW5nQWdlbnRzLCBGcmFtZSYgZnJhbWUpCiB7Ci0gICAg
aWYgKEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudCogYXBwbGljYXRpb25DYWNoZUFnZW50
ID0gaW5zdHJ1bWVudGluZ0FnZW50cy5pbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQoKSkK
LSAgICAgICAgYXBwbGljYXRpb25DYWNoZUFnZW50LT51cGRhdGVBcHBsaWNhdGlvbkNhY2hlU3Rh
dHVzKGZyYW1lKTsKKyAgICBpZiAoYXV0byogYXBwbGljYXRpb25DYWNoZUFnZW50ID0gaW5zdHJ1
bWVudGluZ0FnZW50cy5pbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQoKSkKKyAgICAgICAg
YXBwbGljYXRpb25DYWNoZUFnZW50LT51cGRhdGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzKCZmcmFt
ZSk7CiB9CiAKIGJvb2wgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpjb25zb2xlQWdlbnRFbmFi
bGVkKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9u
LmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgK
aW5kZXggOWI2MDAxMDRkYTJmMWRkNWVkMTAyYmJmOTQ1YTZmNWFkNDk5N2Y0Mi4uMjQ1Y2RjODg3
NTJkMDg1MWU1NzA0NGJiNzIzMzViNmEwODI0YWFmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaApAQCAtNDA3LDcgKzQwNyw3
IEBAIHByaXZhdGU6CiAjZW5kaWYKIAogICAgIHN0YXRpYyB2b2lkIG5ldHdvcmtTdGF0ZUNoYW5n
ZWRJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmKTsKLSAgICBzdGF0aWMgdm9pZCB1cGRhdGVBcHBs
aWNhdGlvbkNhY2hlU3RhdHVzSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgRnJhbWUqKTsKKyAg
ICBzdGF0aWMgdm9pZCB1cGRhdGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzSW1wbChJbnN0cnVtZW50
aW5nQWdlbnRzJiwgRnJhbWUmKTsKIAogICAgIHN0YXRpYyB2b2lkIGxheWVyVHJlZURpZENoYW5n
ZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYpOwogICAgIHN0YXRpYyB2b2lkIHJlbmRlckxheWVy
RGVzdHJveWVkSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgY29uc3QgUmVuZGVyTGF5ZXImKTsK
QEAgLTExODEsOCArMTE4MSw4IEBAIGlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlv
bjo6bmV0d29ya1N0YXRlQ2hhbmdlZChQYWdlJiBwYWdlKQogaW5saW5lIHZvaWQgSW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjp1cGRhdGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzKEZyYW1lKiBmcmFt
ZSkKIHsKICAgICBGQVNUX1JFVFVSTl9JRl9OT19GUk9OVEVORFModm9pZCgpKTsKLSAgICBpZiAo
SW5zdHJ1bWVudGluZ0FnZW50cyogaW5zdHJ1bWVudGluZ0FnZW50cyA9IGluc3RydW1lbnRpbmdB
Z2VudHNGb3JGcmFtZShmcmFtZSkpCi0gICAgICAgIHVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0
dXNJbXBsKCppbnN0cnVtZW50aW5nQWdlbnRzLCBmcmFtZSk7CisgICAgaWYgKGF1dG8qIGluc3Ry
dW1lbnRpbmdBZ2VudHMgPSBpbnN0cnVtZW50aW5nQWdlbnRzRm9yRnJhbWUoZnJhbWUpKQorICAg
ICAgICB1cGRhdGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzSW1wbCgqaW5zdHJ1bWVudGluZ0FnZW50
cywgKmZyYW1lKTsKIH0KIAogaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjph
ZGRNZXNzYWdlVG9Db25zb2xlKFBhZ2UmIHBhZ2UsIHN0ZDo6dW5pcXVlX3B0cjxJbnNwZWN0b3I6
OkNvbnNvbGVNZXNzYWdlPiBtZXNzYWdlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0RvY3VtZW50TG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExv
YWRlci5jcHAKaW5kZXggOWIzOGMzYjM2Mjc5MDVlMWJlYWEzOWY1NWJlM2RiYzY5YzM3N2FlOS4u
ZWU2NTljYjVmOTM5NTkwNzY3ZWM5ODRhNjE3MWZkNTM5MGU1NDgxZSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwCkBAIC0xMjksMzAgKzEyOSwxNiBAQCBzdGF0aWMg
Ym9vbCBhcmVBbGxMb2FkZXJzUGFnZUNhY2hlQWNjZXB0YWJsZShjb25zdCBSZXNvdXJjZUxvYWRl
ck1hcCYgbG9hZGVycykKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotRG9jdW1lbnRMb2FkZXI6OkRv
Y3VtZW50TG9hZGVyKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxLCBjb25zdCBTdWJzdGl0dXRl
RGF0YSYgc3Vic3RpdHV0ZURhdGEpCi0gICAgOiBtX2RlZmVyTWFpblJlc291cmNlRGF0YUxvYWQo
dHJ1ZSkKLSAgICAsIG1fZnJhbWUobnVsbHB0cikKLSAgICAsIG1fY2FjaGVkUmVzb3VyY2VMb2Fk
ZXIoQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OmNyZWF0ZSh0aGlzKSkKK0RvY3VtZW50TG9hZGVyOjpE
b2N1bWVudExvYWRlcihjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFN1YnN0
aXR1dGVEYXRhJiBzdWJzdGl0dXRlRGF0YSkKKyAgICA6IG1fY2FjaGVkUmVzb3VyY2VMb2FkZXIo
Q2FjaGVkUmVzb3VyY2VMb2FkZXI6OmNyZWF0ZSh0aGlzKSkKICAgICAsIG1fd3JpdGVyKG1fZnJh
bWUpCi0gICAgLCBtX29yaWdpbmFsUmVxdWVzdChyZXEpCisgICAgLCBtX29yaWdpbmFsUmVxdWVz
dChyZXF1ZXN0KQogICAgICwgbV9zdWJzdGl0dXRlRGF0YShzdWJzdGl0dXRlRGF0YSkKLSAgICAs
IG1fb3JpZ2luYWxSZXF1ZXN0Q29weShyZXEpCi0gICAgLCBtX3JlcXVlc3QocmVxKQorICAgICwg
bV9vcmlnaW5hbFJlcXVlc3RDb3B5KHJlcXVlc3QpCisgICAgLCBtX3JlcXVlc3QocmVxdWVzdCkK
ICAgICAsIG1fb3JpZ2luYWxTdWJzdGl0dXRlRGF0YVdhc1ZhbGlkKHN1YnN0aXR1dGVEYXRhLmlz
VmFsaWQoKSkKLSAgICAsIG1fY29tbWl0dGVkKGZhbHNlKQotICAgICwgbV9pc1N0b3BwaW5nKGZh
bHNlKQotICAgICwgbV9nb3RGaXJzdEJ5dGUoZmFsc2UpCi0gICAgLCBtX2lzQ2xpZW50UmVkaXJl
Y3QoZmFsc2UpCi0gICAgLCBtX2lzTG9hZGluZ011bHRpcGFydENvbnRlbnQoZmFsc2UpCi0gICAg
LCBtX3dhc09ubG9hZERpc3BhdGNoZWQoZmFsc2UpCi0gICAgLCBtX3N0b3BSZWNvcmRpbmdSZXNw
b25zZXMoZmFsc2UpCiAgICAgLCBtX3N1YnN0aXR1dGVSZXNvdXJjZURlbGl2ZXJ5VGltZXIoKnRo
aXMsICZEb2N1bWVudExvYWRlcjo6c3Vic3RpdHV0ZVJlc291cmNlRGVsaXZlcnlUaW1lckZpcmVk
KQotICAgICwgbV9kaWRDcmVhdGVHbG9iYWxIaXN0b3J5RW50cnkoZmFsc2UpCi0gICAgLCBtX2xv
YWRpbmdNYWluUmVzb3VyY2UoZmFsc2UpCi0gICAgLCBtX3RpbWVPZkxhc3REYXRhUmVjZWl2ZWQo
MC4wKQotICAgICwgbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlcigwKQog
ICAgICwgbV9kYXRhTG9hZFRpbWVyKCp0aGlzLCAmRG9jdW1lbnRMb2FkZXI6OmhhbmRsZVN1YnN0
aXR1dGVEYXRhTG9hZE5vdykKLSAgICAsIG1fc3VicmVzb3VyY2VMb2FkZXJzQXJlUGFnZUNhY2hl
QWNjZXB0YWJsZShmYWxzZSkKICAgICAsIG1fYXBwbGljYXRpb25DYWNoZUhvc3Qoc3RkOjptYWtl
X3VuaXF1ZTxBcHBsaWNhdGlvbkNhY2hlSG9zdD4oKnRoaXMpKQogewogfQpAQCAtMTY2LDcgKzE1
Miw5IEBAIEZyYW1lTG9hZGVyKiBEb2N1bWVudExvYWRlcjo6ZnJhbWVMb2FkZXIoKSBjb25zdAog
CiBTdWJyZXNvdXJjZUxvYWRlciogRG9jdW1lbnRMb2FkZXI6Om1haW5SZXNvdXJjZUxvYWRlcigp
IGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fbWFpblJlc291cmNlID8gbV9tYWluUmVzb3VyY2UtPmxv
YWRlcigpIDogMDsKKyAgICBpZiAoIW1fbWFpblJlc291cmNlKQorICAgICAgICByZXR1cm4gbnVs
bHB0cjsKKyAgICByZXR1cm4gbV9tYWluUmVzb3VyY2UtPmxvYWRlcigpOwogfQogCiBEb2N1bWVu
dExvYWRlcjo6fkRvY3VtZW50TG9hZGVyKCkKQEAgLTE3OSw3ICsxNjcsNyBAQCBEb2N1bWVudExv
YWRlcjo6fkRvY3VtZW50TG9hZGVyKCkKICAgICBpZiAobV9pY29uRGF0YUNhbGxiYWNrKQogICAg
ICAgICBtX2ljb25EYXRhQ2FsbGJhY2stPmludmFsaWRhdGUoKTsKICAgICBtX2NhY2hlZFJlc291
cmNlTG9hZGVyLT5jbGVhckRvY3VtZW50TG9hZGVyKCk7Ci0gICAgCisKICAgICBjbGVhck1haW5S
ZXNvdXJjZSgpOwogfQogCkBAIC0xOTksMzEgKzE4Nyw2IEBAIERvY3VtZW50KiBEb2N1bWVudExv
YWRlcjo6ZG9jdW1lbnQoKSBjb25zdAogICAgIHJldHVybiBudWxscHRyOwogfQogCi1jb25zdCBS
ZXNvdXJjZVJlcXVlc3QmIERvY3VtZW50TG9hZGVyOjpvcmlnaW5hbFJlcXVlc3QoKSBjb25zdAot
ewotICAgIHJldHVybiBtX29yaWdpbmFsUmVxdWVzdDsKLX0KLQotY29uc3QgUmVzb3VyY2VSZXF1
ZXN0JiBEb2N1bWVudExvYWRlcjo6b3JpZ2luYWxSZXF1ZXN0Q29weSgpIGNvbnN0Ci17Ci0gICAg
cmV0dXJuIG1fb3JpZ2luYWxSZXF1ZXN0Q29weTsKLX0KLQotY29uc3QgUmVzb3VyY2VSZXF1ZXN0
JiBEb2N1bWVudExvYWRlcjo6cmVxdWVzdCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fcmVxdWVz
dDsKLX0KLQotUmVzb3VyY2VSZXF1ZXN0JiBEb2N1bWVudExvYWRlcjo6cmVxdWVzdCgpCi17Ci0g
ICAgcmV0dXJuIG1fcmVxdWVzdDsKLX0KLQotY29uc3QgVVJMJiBEb2N1bWVudExvYWRlcjo6dXJs
KCkgY29uc3QKLXsKLSAgICByZXR1cm4gcmVxdWVzdCgpLnVybCgpOwotfQotCiB2b2lkIERvY3Vt
ZW50TG9hZGVyOjpyZXBsYWNlUmVxdWVzdFVSTEZvclNhbWVEb2N1bWVudE5hdmlnYXRpb24oY29u
c3QgVVJMJiB1cmwpCiB7CiAgICAgbV9vcmlnaW5hbFJlcXVlc3RDb3B5LnNldFVSTCh1cmwpOwpA
QCAtMzE5LDcgKzI4Miw3IEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnN0b3BMb2FkaW5nKCkKICAg
ICBjYW5jZWxBbGwobV9tdWx0aXBhcnRTdWJyZXNvdXJjZUxvYWRlcnMpOwogCiAgICAgLy8gQXBw
Y2FjaGUgdXNlcyBSZXNvdXJjZUhhbmRsZSBkaXJlY3RseSwgRG9jdW1lbnRMb2FkZXIgZG9lc24n
dCBjb3VudCB0aGVzZSBsb2Fkcy4KLSAgICBtX2FwcGxpY2F0aW9uQ2FjaGVIb3N0LT5zdG9wTG9h
ZGluZ0luRnJhbWUobV9mcmFtZSk7CisgICAgbV9hcHBsaWNhdGlvbkNhY2hlSG9zdC0+c3RvcExv
YWRpbmdJbkZyYW1lKCptX2ZyYW1lKTsKICAgICAKICNpZiBFTkFCTEUoV0VCX0FSQ0hJVkUpIHx8
IEVOQUJMRShNSFRNTCkKICAgICBjbGVhckFyY2hpdmVSZXNvdXJjZXMoKTsKQEAgLTYwMiw3ICs1
NjUsNyBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjp3aWxsU2VuZFJlcXVlc3QoUmVzb3VyY2VSZXF1
ZXN0JiBuZXdSZXF1ZXN0LCBjb25zdCBSZXNvdXJjZQogCiAgICAgQVNTRVJUKCFtX3dhaXRpbmdG
b3JOYXZpZ2F0aW9uUG9saWN5KTsKICAgICBtX3dhaXRpbmdGb3JOYXZpZ2F0aW9uUG9saWN5ID0g
dHJ1ZTsKLSAgICBmcmFtZUxvYWRlcigpLT5wb2xpY3lDaGVja2VyKCkuY2hlY2tOYXZpZ2F0aW9u
UG9saWN5KG5ld1JlcXVlc3QsIGRpZFJlY2VpdmVSZWRpcmVjdFJlc3BvbnNlLCBbdGhpc10oY29u
c3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIGJvb2wg
c2hvdWxkQ29udGludWUpIHsKKyAgICBmcmFtZUxvYWRlcigpLT5wb2xpY3lDaGVja2VyKCkuY2hl
Y2tOYXZpZ2F0aW9uUG9saWN5KG5ld1JlcXVlc3QsIGRpZFJlY2VpdmVSZWRpcmVjdFJlc3BvbnNl
LCBbdGhpc10gKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiwgYm9v
bCBzaG91bGRDb250aW51ZSkgewogICAgICAgICBjb250aW51ZUFmdGVyTmF2aWdhdGlvblBvbGlj
eShyZXF1ZXN0LCBzaG91bGRDb250aW51ZSk7CiAgICAgfSk7CiB9CkBAIC05MDAsMTIgKzg2Myw4
IEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6OmNvbW1pdERhdGEoY29uc3QgY2hhciogYnl0ZXMsIHNp
emVfdCBsZW5ndGgpCiAgICAgICAgIGlmIChmcmFtZUxvYWRlcigpLT5zdGF0ZU1hY2hpbmUoKS5j
cmVhdGluZ0luaXRpYWxFbXB0eURvY3VtZW50KCkpCiAgICAgICAgICAgICByZXR1cm47CiAgICAg
ICAgIAotI2lmIEVOQUJMRShNSFRNTCkKLSAgICAgICAgLy8gVGhlIG9yaWdpbiBpcyB0aGUgTUhU
TUwgZmlsZSwgd2UgbmVlZCB0byBzZXQgdGhlIGJhc2UgVVJMIHRvIHRoZSBkb2N1bWVudCBlbmNv
ZGVkIGluIHRoZSBNSFRNTCBzbwotICAgICAgICAvLyByZWxhdGl2ZSBVUkxzIGFyZSByZXNvbHZl
ZCBwcm9wZXJseS4KLSAgICAgICAgaWYgKG1fYXJjaGl2ZSAmJiBtX2FyY2hpdmUtPnR5cGUoKSA9
PSBBcmNoaXZlOjpNSFRNTCkKKyAgICAgICAgaWYgKG1fYXJjaGl2ZSAmJiBtX2FyY2hpdmUtPnNo
b3VsZE92ZXJyaWRlQmFzZVVSTCgpKQogICAgICAgICAgICAgbV9mcmFtZS0+ZG9jdW1lbnQoKS0+
c2V0QmFzZVVSTE92ZXJyaWRlKG1fYXJjaGl2ZS0+bWFpblJlc291cmNlKCktPnVybCgpKTsKLSNl
bmRpZgogCiAgICAgICAgIC8vIENhbGwgcmVjZWl2ZWRGaXJzdERhdGEoKSBleGFjdGx5IG9uY2Ug
cGVyIGxvYWQuIFdlIHNob3VsZCBvbmx5IHJlYWNoIHRoaXMgcG9pbnQgbXVsdGlwbGUgdGltZXMK
ICAgICAgICAgLy8gZm9yIG11bHRpcGFydCBsb2FkcywgYW5kIEZyYW1lTG9hZGVyOjppc1JlcGxh
Y2luZygpIHdpbGwgYmUgdHJ1ZSBhZnRlciB0aGUgZmlyc3QgdGltZS4KQEAgLTkyMSwxMCArODgw
LDggQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6Y29tbWl0RGF0YShjb25zdCBjaGFyKiBieXRlcywg
c2l6ZV90IGxlbmd0aCkKICAgICAgICAgaWYgKG92ZXJyaWRlRW5jb2RpbmcoKS5pc051bGwoKSkg
ewogICAgICAgICAgICAgdXNlckNob3NlbiA9IGZhbHNlOwogICAgICAgICAgICAgZW5jb2Rpbmcg
PSByZXNwb25zZSgpLnRleHRFbmNvZGluZ05hbWUoKTsKLSNpZiBFTkFCTEUoV0VCX0FSQ0hJVkUp
Ci0gICAgICAgICAgICBpZiAobV9hcmNoaXZlICYmIG1fYXJjaGl2ZS0+dHlwZSgpID09IEFyY2hp
dmU6OldlYkFyY2hpdmUpCisgICAgICAgICAgICBpZiAobV9hcmNoaXZlICYmIG1fYXJjaGl2ZS0+
c2hvdWxkVXNlTWFpblJlc291cmNlRW5jb2RpbmcoKSkKICAgICAgICAgICAgICAgICBlbmNvZGlu
ZyA9IG1fYXJjaGl2ZS0+bWFpblJlc291cmNlKCktPnRleHRFbmNvZGluZygpOwotI2VuZGlmCiAg
ICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICB1c2VyQ2hvc2VuID0gdHJ1ZTsKICAgICAgICAg
ICAgIGVuY29kaW5nID0gb3ZlcnJpZGVFbmNvZGluZygpOwpAQCAtMTA4MywxNSArMTA0MCwxNiBA
QCBib29sIERvY3VtZW50TG9hZGVyOjppc0xvYWRpbmdJbkFQSVNlbnNlKCkgY29uc3QKICAgICBp
ZiAoZnJhbWVMb2FkZXIoKS0+c3RhdGUoKSAhPSBGcmFtZVN0YXRlQ29tcGxldGUpIHsKICAgICAg
ICAgaWYgKG1fZnJhbWUtPnNldHRpbmdzKCkubmVlZHNJc0xvYWRpbmdJbkFQSVNlbnNlUXVpcmso
KSAmJiAhbV9zdWJyZXNvdXJjZUxvYWRlcnMuaXNFbXB0eSgpKQogICAgICAgICAgICAgcmV0dXJu
IHRydWU7Ci0gICAgCi0gICAgICAgIERvY3VtZW50KiBkb2MgPSBtX2ZyYW1lLT5kb2N1bWVudCgp
OwotICAgICAgICBpZiAoKGlzTG9hZGluZ01haW5SZXNvdXJjZSgpIHx8ICFtX2ZyYW1lLT5kb2N1
bWVudCgpLT5sb2FkRXZlbnRGaW5pc2hlZCgpKSAmJiBpc0xvYWRpbmcoKSkKKworICAgICAgICBB
U1NFUlQobV9mcmFtZS0+ZG9jdW1lbnQoKSk7CisgICAgICAgIGF1dG8mIGRvY3VtZW50ID0gKm1f
ZnJhbWUtPmRvY3VtZW50KCk7CisgICAgICAgIGlmICgoaXNMb2FkaW5nTWFpblJlc291cmNlKCkg
fHwgIWRvY3VtZW50LmxvYWRFdmVudEZpbmlzaGVkKCkpICYmIGlzTG9hZGluZygpKQogICAgICAg
ICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgIGlmIChtX2NhY2hlZFJlc291cmNlTG9hZGVyLT5y
ZXF1ZXN0Q291bnQoKSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAgICAgICBpZiAoZG9j
LT5wcm9jZXNzaW5nTG9hZEV2ZW50KCkpCisgICAgICAgIGlmIChkb2N1bWVudC5wcm9jZXNzaW5n
TG9hZEV2ZW50KCkpCiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICAgICAgaWYgKGRvYy0+
aGFzQWN0aXZlUGFyc2VyKCkpCisgICAgICAgIGlmIChkb2N1bWVudC5oYXNBY3RpdmVQYXJzZXIo
KSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KICAgICByZXR1cm4gZnJhbWVMb2Fk
ZXIoKS0+c3ViZnJhbWVJc0xvYWRpbmcoKTsKQEAgLTExMDIsNDAgKzEwNjAsMzUgQEAgYm9vbCBE
b2N1bWVudExvYWRlcjo6bWF5YmVDcmVhdGVBcmNoaXZlKCkKICNpZiAhRU5BQkxFKFdFQl9BUkNI
SVZFKSAmJiAhRU5BQkxFKE1IVE1MKQogICAgIHJldHVybiBmYWxzZTsKICNlbHNlCi0gICAgCiAg
ICAgLy8gR2l2ZSB0aGUgYXJjaGl2ZSBtYWNoaW5lcnkgYSBjcmFjayBhdCB0aGlzIGRvY3VtZW50
LiBJZiB0aGUgTUlNRSB0eXBlIGlzIG5vdCBhbiBhcmNoaXZlIHR5cGUsIGl0IHdpbGwgcmV0dXJu
IDAuCiAgICAgbV9hcmNoaXZlID0gQXJjaGl2ZUZhY3Rvcnk6OmNyZWF0ZShtX3Jlc3BvbnNlLnVy
bCgpLCBtYWluUmVzb3VyY2VEYXRhKCkuZ2V0KCksIG1fcmVzcG9uc2UubWltZVR5cGUoKSk7CiAg
ICAgaWYgKCFtX2FyY2hpdmUpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAKLSAgICBhZGRB
bGxBcmNoaXZlUmVzb3VyY2VzKG1fYXJjaGl2ZS5nZXQoKSk7Ci0gICAgQXJjaGl2ZVJlc291cmNl
KiBtYWluUmVzb3VyY2UgPSBtX2FyY2hpdmUtPm1haW5SZXNvdXJjZSgpOwotICAgIG1fcGFyc2Vk
QXJjaGl2ZURhdGEgPSAmbWFpblJlc291cmNlLT5kYXRhKCk7Ci0gICAgbV93cml0ZXIuc2V0TUlN
RVR5cGUobWFpblJlc291cmNlLT5taW1lVHlwZSgpKTsKLSAgICAKKyAgICBhZGRBbGxBcmNoaXZl
UmVzb3VyY2VzKCptX2FyY2hpdmUpOworICAgIEFTU0VSVChtX2FyY2hpdmUtPm1haW5SZXNvdXJj
ZSgpKTsKKyAgICBhdXRvJiBtYWluUmVzb3VyY2UgPSAqbV9hcmNoaXZlLT5tYWluUmVzb3VyY2Uo
KTsKKyAgICBtX3BhcnNlZEFyY2hpdmVEYXRhID0gJm1haW5SZXNvdXJjZS5kYXRhKCk7CisgICAg
bV93cml0ZXIuc2V0TUlNRVR5cGUobWFpblJlc291cmNlLm1pbWVUeXBlKCkpOworCiAgICAgQVNT
RVJUKG1fZnJhbWUtPmRvY3VtZW50KCkpOwotICAgIGNvbW1pdERhdGEobWFpblJlc291cmNlLT5k
YXRhKCkuZGF0YSgpLCBtYWluUmVzb3VyY2UtPmRhdGEoKS5zaXplKCkpOworICAgIGNvbW1pdERh
dGEobWFpblJlc291cmNlLmRhdGEoKS5kYXRhKCksIG1haW5SZXNvdXJjZS5kYXRhKCkuc2l6ZSgp
KTsKICAgICByZXR1cm4gdHJ1ZTsKLSNlbmRpZiAvLyAhRU5BQkxFKFdFQl9BUkNISVZFKSAmJiAh
RU5BQkxFKE1IVE1MKQorI2VuZGlmCiB9CiAKICNpZiBFTkFCTEUoV0VCX0FSQ0hJVkUpIHx8IEVO
QUJMRShNSFRNTCkKIAotdm9pZCBEb2N1bWVudExvYWRlcjo6c2V0QXJjaGl2ZShQYXNzUmVmUHRy
PEFyY2hpdmU+IGFyY2hpdmUpCit2b2lkIERvY3VtZW50TG9hZGVyOjpzZXRBcmNoaXZlKFJlZjxB
cmNoaXZlPiYmIGFyY2hpdmUpCiB7Ci0gICAgbV9hcmNoaXZlID0gYXJjaGl2ZTsKLSAgICBhZGRB
bGxBcmNoaXZlUmVzb3VyY2VzKG1fYXJjaGl2ZS5nZXQoKSk7CisgICAgbV9hcmNoaXZlID0gV1RG
TW92ZShhcmNoaXZlKTsKKyAgICBhZGRBbGxBcmNoaXZlUmVzb3VyY2VzKCptX2FyY2hpdmUpOwog
fQogCi12b2lkIERvY3VtZW50TG9hZGVyOjphZGRBbGxBcmNoaXZlUmVzb3VyY2VzKEFyY2hpdmUq
IGFyY2hpdmUpCit2b2lkIERvY3VtZW50TG9hZGVyOjphZGRBbGxBcmNoaXZlUmVzb3VyY2VzKEFy
Y2hpdmUmIGFyY2hpdmUpCiB7CiAgICAgaWYgKCFtX2FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24p
CiAgICAgICAgIG1fYXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbiA9IHN0ZDo6bWFrZV91bmlxdWU8
QXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbj4oKTsKLSAgICAgICAgCi0gICAgQVNTRVJUKGFyY2hp
dmUpOwotICAgIGlmICghYXJjaGl2ZSkKLSAgICAgICAgcmV0dXJuOwotICAgICAgICAKICAgICBt
X2FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24tPmFkZEFsbFJlc291cmNlcyhhcmNoaXZlKTsKIH0K
IApAQCAtMTE0NSwxMyArMTA5OCwxMiBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjphZGRBcmNoaXZl
UmVzb3VyY2UoUmVmPEFyY2hpdmVSZXNvdXJjZT4mJiByZXNvdXJjZSkKIHsKICAgICBpZiAoIW1f
YXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbikKICAgICAgICAgbV9hcmNoaXZlUmVzb3VyY2VDb2xs
ZWN0aW9uID0gc3RkOjptYWtlX3VuaXF1ZTxBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uPigpOwot
ICAgICAgICAKICAgICBtX2FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24tPmFkZFJlc291cmNlKFdU
Rk1vdmUocmVzb3VyY2UpKTsKIH0KIAotUGFzc1JlZlB0cjxBcmNoaXZlPiBEb2N1bWVudExvYWRl
cjo6cG9wQXJjaGl2ZUZvclN1YmZyYW1lKGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBjb25zdCBV
UkwmIHVybCkKK1JlZlB0cjxBcmNoaXZlPiBEb2N1bWVudExvYWRlcjo6cG9wQXJjaGl2ZUZvclN1
YmZyYW1lKGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBjb25zdCBVUkwmIHVybCkKIHsKLSAgICBy
ZXR1cm4gbV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uID8gbV9hcmNoaXZlUmVzb3VyY2VDb2xs
ZWN0aW9uLT5wb3BTdWJmcmFtZUFyY2hpdmUoZnJhbWVOYW1lLCB1cmwpIDogUGFzc1JlZlB0cjxB
cmNoaXZlPihudWxscHRyKTsKKyAgICByZXR1cm4gbV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9u
ID8gbV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uLT5wb3BTdWJmcmFtZUFyY2hpdmUoZnJhbWVO
YW1lLCB1cmwpIDogbnVsbHB0cjsKIH0KIAogdm9pZCBEb2N1bWVudExvYWRlcjo6Y2xlYXJBcmNo
aXZlUmVzb3VyY2VzKCkKQEAgLTExNzEsNyArMTEyMyw3IEBAIEFyY2hpdmVSZXNvdXJjZSogRG9j
dW1lbnRMb2FkZXI6OmFyY2hpdmVSZXNvdXJjZUZvclVSTChjb25zdCBVUkwmIHVybCkgY29uc3QK
IHsKICAgICBpZiAoIW1fYXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbikKICAgICAgICAgcmV0dXJu
IG51bGxwdHI7Ci0gICAgQXJjaGl2ZVJlc291cmNlKiByZXNvdXJjZSA9IG1fYXJjaGl2ZVJlc291
cmNlQ29sbGVjdGlvbi0+YXJjaGl2ZVJlc291cmNlRm9yVVJMKHVybCk7CisgICAgYXV0byogcmVz
b3VyY2UgPSBtX2FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24tPmFyY2hpdmVSZXNvdXJjZUZvclVS
TCh1cmwpOwogICAgIGlmICghcmVzb3VyY2UgfHwgcmVzb3VyY2UtPnNob3VsZElnbm9yZVdoZW5V
bmFyY2hpdmluZygpKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICByZXR1cm4gcmVzb3Vy
Y2U7CkBAIC0xMTgyLDE3ICsxMTM0LDE2IEBAIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IERvY3Vt
ZW50TG9hZGVyOjptYWluUmVzb3VyY2UoKSBjb25zdAogICAgIFJlZlB0cjxTaGFyZWRCdWZmZXI+
IGRhdGEgPSBtYWluUmVzb3VyY2VEYXRhKCk7CiAgICAgaWYgKCFkYXRhKQogICAgICAgICBkYXRh
ID0gU2hhcmVkQnVmZmVyOjpjcmVhdGUoKTsKLSAgICAgICAgCiAgICAgYXV0byYgcmVzcG9uc2Ug
PSB0aGlzLT5yZXNwb25zZSgpOwogICAgIHJldHVybiBBcmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShX
VEZNb3ZlKGRhdGEpLCByZXNwb25zZS51cmwoKSwgcmVzcG9uc2UubWltZVR5cGUoKSwgcmVzcG9u
c2UudGV4dEVuY29kaW5nTmFtZSgpLCBmcmFtZSgpLT50cmVlKCkudW5pcXVlTmFtZSgpKTsKIH0K
IAotUGFzc1JlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IERvY3VtZW50TG9hZGVyOjpzdWJyZXNvdXJj
ZShjb25zdCBVUkwmIHVybCkgY29uc3QKK1JlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IERvY3VtZW50
TG9hZGVyOjpzdWJyZXNvdXJjZShjb25zdCBVUkwmIHVybCkgY29uc3QKIHsKICAgICBpZiAoIWlz
Q29tbWl0dGVkKCkpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIAotICAgIENhY2hlZFJl
c291cmNlKiByZXNvdXJjZSA9IG1fY2FjaGVkUmVzb3VyY2VMb2FkZXItPmNhY2hlZFJlc291cmNl
KHVybCk7CisgICAgYXV0byogcmVzb3VyY2UgPSBtX2NhY2hlZFJlc291cmNlTG9hZGVyLT5jYWNo
ZWRSZXNvdXJjZSh1cmwpOwogICAgIGlmICghcmVzb3VyY2UgfHwgIXJlc291cmNlLT5pc0xvYWRl
ZCgpKQogICAgICAgICByZXR1cm4gYXJjaGl2ZVJlc291cmNlRm9yVVJMKHVybCk7CiAKQEAgLTEy
MDYsMTggKzExNTcsMTYgQEAgUGFzc1JlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IERvY3VtZW50TG9h
ZGVyOjpzdWJyZXNvdXJjZShjb25zdCBVUkwmIHVybCkgY29uc3QKICAgICByZXR1cm4gQXJjaGl2
ZVJlc291cmNlOjpjcmVhdGUoZGF0YSwgdXJsLCByZXNvdXJjZS0+cmVzcG9uc2UoKSk7CiB9CiAK
LVZlY3RvcjxSZWZQdHI8QXJjaGl2ZVJlc291cmNlPj4gRG9jdW1lbnRMb2FkZXI6OnN1YnJlc291
cmNlcygpIGNvbnN0CitWZWN0b3I8UmVmPEFyY2hpdmVSZXNvdXJjZT4+IERvY3VtZW50TG9hZGVy
OjpzdWJyZXNvdXJjZXMoKSBjb25zdAogewogICAgIGlmICghaXNDb21taXR0ZWQoKSkKICAgICAg
ICAgcmV0dXJuIHsgfTsKIAotICAgIFZlY3RvcjxSZWZQdHI8QXJjaGl2ZVJlc291cmNlPj4gc3Vi
cmVzb3VyY2VzOwotCi0gICAgZm9yIChhdXRvJiBjYWNoZWRSZXNvdXJjZUhhbmRsZSA6IG1fY2Fj
aGVkUmVzb3VyY2VMb2FkZXItPmFsbENhY2hlZFJlc291cmNlcygpLnZhbHVlcygpKSB7Ci0gICAg
ICAgIGlmIChSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBzdWJyZXNvdXJjZSA9IHRoaXMtPnN1YnJl
c291cmNlKFVSTChQYXJzZWRVUkxTdHJpbmcsIGNhY2hlZFJlc291cmNlSGFuZGxlLT51cmwoKSkp
KQotICAgICAgICAgICAgc3VicmVzb3VyY2VzLmFwcGVuZChXVEZNb3ZlKHN1YnJlc291cmNlKSk7
CisgICAgVmVjdG9yPFJlZjxBcmNoaXZlUmVzb3VyY2U+PiBzdWJyZXNvdXJjZXM7CisgICAgZm9y
IChhdXRvJiBoYW5kbGUgOiBtX2NhY2hlZFJlc291cmNlTG9hZGVyLT5hbGxDYWNoZWRSZXNvdXJj
ZXMoKS52YWx1ZXMoKSkgeworICAgICAgICBpZiAoYXV0byBzdWJyZXNvdXJjZSA9IHRoaXMtPnN1
YnJlc291cmNlKHsgUGFyc2VkVVJMU3RyaW5nLCBoYW5kbGUtPnVybCgpIH0pKQorICAgICAgICAg
ICAgc3VicmVzb3VyY2VzLmFwcGVuZChzdWJyZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAg
ICB9Ci0KICAgICByZXR1cm4gc3VicmVzb3VyY2VzOwogfQogCkBAIC0xMjI1LDkgKzExNzQsMTEg
QEAgdm9pZCBEb2N1bWVudExvYWRlcjo6ZGVsaXZlclN1YnN0aXR1dGVSZXNvdXJjZXNBZnRlckRl
bGF5KCkKIHsKICAgICBpZiAobV9wZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlcy5pc0VtcHR5KCkp
CiAgICAgICAgIHJldHVybjsKLSAgICBBU1NFUlQobV9mcmFtZSAmJiBtX2ZyYW1lLT5wYWdlKCkp
OworICAgIEFTU0VSVChtX2ZyYW1lKTsKKyAgICBBU1NFUlQobV9mcmFtZS0+cGFnZSgpKTsKICAg
ICBpZiAobV9mcmFtZS0+cGFnZSgpLT5kZWZlcnNMb2FkaW5nKCkpCiAgICAgICAgIHJldHVybjsK
KwogICAgIGlmICghbV9zdWJzdGl0dXRlUmVzb3VyY2VEZWxpdmVyeVRpbWVyLmlzQWN0aXZlKCkp
CiAgICAgICAgIG1fc3Vic3RpdHV0ZVJlc291cmNlRGVsaXZlcnlUaW1lci5zdGFydE9uZVNob3Qo
MCk7CiB9CkBAIC0xMjM2LDE4ICsxMTg3LDE1IEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnN1YnN0
aXR1dGVSZXNvdXJjZURlbGl2ZXJ5VGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKG1fcGVuZGluZ1N1
YnN0aXR1dGVSZXNvdXJjZXMuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm47Ci0gICAgQVNTRVJU
KG1fZnJhbWUgJiYgbV9mcmFtZS0+cGFnZSgpKTsKKyAgICBBU1NFUlQobV9mcmFtZSk7CisgICAg
QVNTRVJUKG1fZnJhbWUtPnBhZ2UoKSk7CiAgICAgaWYgKG1fZnJhbWUtPnBhZ2UoKS0+ZGVmZXJz
TG9hZGluZygpKQogICAgICAgICByZXR1cm47CiAKLSAgICBTdWJzdGl0dXRlUmVzb3VyY2VNYXAg
Y29weTsKLSAgICBjb3B5LnN3YXAobV9wZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlcyk7Ci0KLSAg
ICBmb3IgKGF1dG8mIGVudHJ5IDogY29weSkgewotICAgICAgICBhdXRvJiBsb2FkZXIgPSBlbnRy
eS5rZXk7Ci0gICAgICAgIFN1YnN0aXR1dGVSZXNvdXJjZSogcmVzb3VyY2UgPSBlbnRyeS52YWx1
ZS5nZXQoKTsKLQotICAgICAgICBpZiAocmVzb3VyY2UpCisgICAgYXV0byBwZW5kaW5nU3Vic3Rp
dHV0ZVJlc291cmNlcyA9IFdURk1vdmUobV9wZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlcyk7Cisg
ICAgZm9yIChhdXRvJiBwZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlIDogcGVuZGluZ1N1YnN0aXR1
dGVSZXNvdXJjZXMpIHsKKyAgICAgICAgYXV0byYgbG9hZGVyID0gcGVuZGluZ1N1YnN0aXR1dGVS
ZXNvdXJjZS5rZXk7CisgICAgICAgIGlmIChhdXRvJiByZXNvdXJjZSA9IHBlbmRpbmdTdWJzdGl0
dXRlUmVzb3VyY2UudmFsdWUpCiAgICAgICAgICAgICByZXNvdXJjZS0+ZGVsaXZlcigqbG9hZGVy
KTsKICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAvLyBBIG51bGwgcmVzb3VyY2UgbWVhbnMg
dGhhdCB3ZSBzaG91bGQgZmFpbCB0aGUgbG9hZC4KQEAgLTEyNTgsMTAgKzEyMDYsMTIgQEAgdm9p
ZCBEb2N1bWVudExvYWRlcjo6c3Vic3RpdHV0ZVJlc291cmNlRGVsaXZlcnlUaW1lckZpcmVkKCkK
IH0KIAogI2lmbmRlZiBOREVCVUcKKwogYm9vbCBEb2N1bWVudExvYWRlcjo6aXNTdWJzdGl0dXRl
TG9hZFBlbmRpbmcoUmVzb3VyY2VMb2FkZXIqIGxvYWRlcikgY29uc3QKIHsKICAgICByZXR1cm4g
bV9wZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlcy5jb250YWlucyhsb2FkZXIpOwogfQorCiAjZW5k
aWYKIAogdm9pZCBEb2N1bWVudExvYWRlcjo6Y2FuY2VsUGVuZGluZ1N1YnN0aXR1dGVMb2FkKFJl
c291cmNlTG9hZGVyKiBsb2FkZXIpCkBAIC0xMjc0LDkgKzEyMjQsMTAgQEAgdm9pZCBEb2N1bWVu
dExvYWRlcjo6Y2FuY2VsUGVuZGluZ1N1YnN0aXR1dGVMb2FkKFJlc291cmNlTG9hZGVyKiBsb2Fk
ZXIpCiB9CiAKICNpZiBFTkFCTEUoV0VCX0FSQ0hJVkUpIHx8IEVOQUJMRShNSFRNTCkKKwogYm9v
bCBEb2N1bWVudExvYWRlcjo6c2NoZWR1bGVBcmNoaXZlTG9hZChSZXNvdXJjZUxvYWRlciYgbG9h
ZGVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCiB7Ci0gICAgaWYgKEFyY2hpdmVS
ZXNvdXJjZSogcmVzb3VyY2UgPSBhcmNoaXZlUmVzb3VyY2VGb3JVUkwocmVxdWVzdC51cmwoKSkp
IHsKKyAgICBpZiAoYXV0byogcmVzb3VyY2UgPSBhcmNoaXZlUmVzb3VyY2VGb3JVUkwocmVxdWVz
dC51cmwoKSkpIHsKICAgICAgICAgc2NoZWR1bGVTdWJzdGl0dXRlUmVzb3VyY2VMb2FkKGxvYWRl
ciwgKnJlc291cmNlKTsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQpAQCAtMTI4NCwyMSAr
MTIzNSwxOSBAQCBib29sIERvY3VtZW50TG9hZGVyOjpzY2hlZHVsZUFyY2hpdmVMb2FkKFJlc291
cmNlTG9hZGVyJiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUgogICAgIGlmICghbV9hcmNoaXZlKQog
ICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAgICBzd2l0Y2ggKG1fYXJjaGl2ZS0+dHlwZSgpKSB7
CiAjaWYgRU5BQkxFKFdFQl9BUkNISVZFKQotICAgIGNhc2UgQXJjaGl2ZTo6V2ViQXJjaGl2ZToK
LSAgICAgICAgLy8gV2ViQXJjaGl2ZURlYnVnTW9kZSBtZWFucyB3ZSBmYWlsIGxvYWRzIGluc3Rl
YWQgb2YgdHJ5aW5nIHRvIGZldGNoIHRoZW0gZnJvbSB0aGUgbmV0d29yayBpZiB0aGV5J3JlIG5v
dCBpbiB0aGUgYXJjaGl2ZS4KLSAgICAgICAgcmV0dXJuIG1fZnJhbWUtPnNldHRpbmdzKCkud2Vi
QXJjaGl2ZURlYnVnTW9kZUVuYWJsZWQoKSAmJiBBcmNoaXZlRmFjdG9yeTo6aXNBcmNoaXZlTWlt
ZVR5cGUocmVzcG9uc2VNSU1FVHlwZSgpKTsKLSNlbmRpZgotI2lmIEVOQUJMRShNSFRNTCkKLSAg
ICBjYXNlIEFyY2hpdmU6Ok1IVE1MOgotICAgICAgICByZXR1cm4gdHJ1ZTsgLy8gQWx3YXlzIGZh
aWwgdGhlIGxvYWQgZm9yIHJlc291cmNlcyBub3QgaW5jbHVkZWQgaW4gdGhlIE1IVE1MLgorICAg
IC8vIFRoZSBpZGVhIG9mIFdlYkFyY2hpdmVEZWJ1Z01vZGUgaXMgdGhhdCB3ZSBzaG91bGQgZmFp
bCBpbnN0ZWFkIG9mIHRyeWluZyB0byBmZXRjaCBmcm9tIHRoZSBuZXR3b3JrLgorICAgIC8vIFJl
dHVybmluZyB0cnVlIGVuc3VyZXMgdGhlIGNhbGxlciB3aWxsIG5vdCB0cnkgdG8gZmV0Y2ggZnJv
bSB0aGUgbmV0d29yay4KKyAgICBpZiAobV9mcmFtZS0+c2V0dGluZ3MoKS53ZWJBcmNoaXZlRGVi
dWdNb2RlRW5hYmxlZCgpICYmIHJlc3BvbnNlTUlNRVR5cGUoKSA9PSAiYXBwbGljYXRpb24veC13
ZWJhcmNoaXZlIikKKyAgICAgICAgcmV0dXJuIHRydWU7CiAjZW5kaWYKLSAgICBkZWZhdWx0Ogot
ICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgfQorCisgICAgLy8gSWYgd2Ugd2FudCB0byBsb2Fk
IGZyb20gdGhlIGFyY2hpdmUgb25seSwgdGhlbiB3ZSBzaG91bGQgYWx3YXlzIHJldHVybiB0cnVl
IHNvIHRoYXQgdGhlIGNhbGxlcgorICAgIC8vIGRvZXMgbm90IHRyeSB0byBmZXRjaCBmb3JtIHRo
ZSBuZXR3b3JrLgorICAgIHJldHVybiBtX2FyY2hpdmUtPnNob3VsZExvYWRGcm9tQXJjaGl2ZU9u
bHkoKTsKIH0KLSNlbmRpZiAvLyBFTkFCTEUoV0VCX0FSQ0hJVkUpCisKKyNlbmRpZgogCiB2b2lk
IERvY3VtZW50TG9hZGVyOjpzY2hlZHVsZVN1YnN0aXR1dGVSZXNvdXJjZUxvYWQoUmVzb3VyY2VM
b2FkZXImIGxvYWRlciwgU3Vic3RpdHV0ZVJlc291cmNlJiByZXNvdXJjZSkKIHsKQEAgLTEzMDYs
MTAgKzEyNTUsMTAgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6c2NoZWR1bGVTdWJzdGl0dXRlUmVz
b3VyY2VMb2FkKFJlc291cmNlTG9hZGVyJiBsb2FkZXIsIFN1YnMKICAgICBkZWxpdmVyU3Vic3Rp
dHV0ZVJlc291cmNlc0FmdGVyRGVsYXkoKTsKIH0KIAotdm9pZCBEb2N1bWVudExvYWRlcjo6YWRk
UmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcikKK3ZvaWQgRG9jdW1lbnRMb2FkZXI6
OmFkZFJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIGlm
ICghbV9zdG9wUmVjb3JkaW5nUmVzcG9uc2VzKQotICAgICAgICBtX3Jlc3BvbnNlcy5hcHBlbmQo
cik7CisgICAgICAgIG1fcmVzcG9uc2VzLmFwcGVuZChyZXNwb25zZSk7CiB9CiAKIHZvaWQgRG9j
dW1lbnRMb2FkZXI6OnN0b3BSZWNvcmRpbmdSZXNwb25zZXMoKQpAQCAtMTM0NCwyMSArMTI5Mywx
MSBAQCBib29sIERvY3VtZW50TG9hZGVyOjp1cmxGb3JIaXN0b3J5UmVmbGVjdHNGYWlsdXJlKCkg
Y29uc3QKICAgICByZXR1cm4gbV9zdWJzdGl0dXRlRGF0YS5pc1ZhbGlkKCkgfHwgbV9yZXNwb25z
ZS5odHRwU3RhdHVzQ29kZSgpID49IDQwMDsKIH0KIAotY29uc3QgVVJMJiBEb2N1bWVudExvYWRl
cjo6b3JpZ2luYWxVUkwoKSBjb25zdAotewotICAgIHJldHVybiBtX29yaWdpbmFsUmVxdWVzdENv
cHkudXJsKCk7Ci19Ci0KLWNvbnN0IFVSTCYgRG9jdW1lbnRMb2FkZXI6OnJlc3BvbnNlVVJMKCkg
Y29uc3QKLXsKLSAgICByZXR1cm4gbV9yZXNwb25zZS51cmwoKTsKLX0KLQogVVJMIERvY3VtZW50
TG9hZGVyOjpkb2N1bWVudFVSTCgpIGNvbnN0CiB7CiAgICAgVVJMIHVybCA9IHN1YnN0aXR1dGVE
YXRhKCkucmVzcG9uc2UoKS51cmwoKTsKICNpZiBFTkFCTEUoV0VCX0FSQ0hJVkUpCi0gICAgaWYg
KHVybC5pc0VtcHR5KCkgJiYgbV9hcmNoaXZlICYmIG1fYXJjaGl2ZS0+dHlwZSgpID09IEFyY2hp
dmU6OldlYkFyY2hpdmUpCisgICAgaWYgKHVybC5pc0VtcHR5KCkgJiYgbV9hcmNoaXZlICYmIG1f
YXJjaGl2ZS0+c2hvdWxkVXNlTWFpblJlc291cmNlVVJMKCkpCiAgICAgICAgIHVybCA9IG1fYXJj
aGl2ZS0+bWFpblJlc291cmNlKCktPnVybCgpOwogI2VuZGlmCiAgICAgaWYgKHVybC5pc0VtcHR5
KCkpCkBAIC0xMzY4LDI4ICsxMzA3LDE1IEBAIFVSTCBEb2N1bWVudExvYWRlcjo6ZG9jdW1lbnRV
UkwoKSBjb25zdAogICAgIHJldHVybiB1cmw7CiB9CiAKLWNvbnN0IFN0cmluZyYgRG9jdW1lbnRM
b2FkZXI6OnJlc3BvbnNlTUlNRVR5cGUoKSBjb25zdAotewotICAgIHJldHVybiBtX3Jlc3BvbnNl
Lm1pbWVUeXBlKCk7Ci19Ci0KLWNvbnN0IFN0cmluZyYgRG9jdW1lbnRMb2FkZXI6OmN1cnJlbnRD
b250ZW50VHlwZSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fd3JpdGVyLm1pbWVUeXBlKCk7Ci19
Ci0KICNpZiBQTEFURk9STShJT1MpCisKIC8vIEZJWE1FOiBUaGlzIG1ldGhvZCBzZWVtcyB0byB2
aW9sYXRlIHRoZSBlbmNhcHN1bGF0aW9uIG9mIHRoaXMgY2xhc3MuCiB2b2lkIERvY3VtZW50TG9h
ZGVyOjpzZXRSZXNwb25zZU1JTUVUeXBlKGNvbnN0IFN0cmluZyYgcmVzcG9uc2VNaW1lVHlwZSkK
IHsKICAgICBtX3Jlc3BvbnNlLnNldE1pbWVUeXBlKHJlc3BvbnNlTWltZVR5cGUpOwogfQotI2Vu
ZGlmCiAKLWNvbnN0IFVSTCYgRG9jdW1lbnRMb2FkZXI6OnVucmVhY2hhYmxlVVJMKCkgY29uc3QK
LXsKLSAgICByZXR1cm4gbV9zdWJzdGl0dXRlRGF0YS5mYWlsaW5nVVJMKCk7Ci19CisjZW5kaWYK
IAogdm9pZCBEb2N1bWVudExvYWRlcjo6c2V0RGVmZXJzTG9hZGluZyhib29sIGRlZmVycykKIHsK
QEAgLTE2ODIsNyArMTYwOCw3IEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6OmdldEljb25Mb2FkRGVj
aXNpb25Gb3JJY29uVVJMKGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nKQogICAgIGlmIChtX2ljb25M
b2FkRGVjaXNpb25DYWxsYmFjaykKICAgICAgICAgbV9pY29uTG9hZERlY2lzaW9uQ2FsbGJhY2st
PmludmFsaWRhdGUoKTsKICAgICBtX2ljb25Mb2FkRGVjaXNpb25DYWxsYmFjayA9IEljb25Mb2Fk
RGVjaXNpb25DYWxsYmFjazo6Y3JlYXRlKHRoaXMsIGljb25Mb2FkRGVjaXNpb25DYWxsYmFjayk7
Ci0gICAgaWNvbkRhdGFiYXNlKCkubG9hZERlY2lzaW9uRm9ySWNvblVSTCh1cmxTdHJpbmcsIG1f
aWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrKTsKKyAgICBpY29uRGF0YWJhc2UoKS5sb2FkRGVjaXNp
b25Gb3JJY29uVVJMKHVybFN0cmluZywgKm1faWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrKTsKIH0K
IAogdm9pZCBEb2N1bWVudExvYWRlcjo6Y29udGludWVJY29uTG9hZFdpdGhEZWNpc2lvbihJY29u
TG9hZERlY2lzaW9uIGRlY2lzaW9uKQpAQCAtMTcwMyw3ICsxNjI5LDcgQEAgdm9pZCBEb2N1bWVu
dExvYWRlcjo6Z2V0SWNvbkRhdGFGb3JJY29uVVJMKGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nKQog
ICAgIGlmIChtX2ljb25EYXRhQ2FsbGJhY2spCiAgICAgICAgIG1faWNvbkRhdGFDYWxsYmFjay0+
aW52YWxpZGF0ZSgpOwogICAgIG1faWNvbkRhdGFDYWxsYmFjayA9IEljb25EYXRhQ2FsbGJhY2s6
OmNyZWF0ZSh0aGlzLCBpY29uRGF0YUNhbGxiYWNrKTsKLSAgICBpY29uRGF0YWJhc2UoKS5pY29u
RGF0YUZvckljb25VUkwodXJsU3RyaW5nLCBtX2ljb25EYXRhQ2FsbGJhY2spOworICAgIGljb25E
YXRhYmFzZSgpLmljb25EYXRhRm9ySWNvblVSTCh1cmxTdHJpbmcsICptX2ljb25EYXRhQ2FsbGJh
Y2spOwogfQogCiB2b2lkIERvY3VtZW50TG9hZGVyOjpzdGFydEljb25Mb2FkaW5nKCkKQEAgLTE3
NDksNyArMTY3NSw3IEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6OmZpbmlzaGVkTG9hZGluZ0ljb24o
SWNvbkxvYWRlciYgbG9hZGVyLCBTaGFyZWRCdWZmZXIqIGJ1ZmZlCiB2b2lkIERvY3VtZW50TG9h
ZGVyOjpkaXNwYXRjaE9ubG9hZEV2ZW50cygpCiB7CiAgICAgbV93YXNPbmxvYWREaXNwYXRjaGVk
ID0gdHJ1ZTsKLSAgICBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5zdG9wRGVmZXJyaW5nRXZlbnRz
KCk7CisgICAgbV9hcHBsaWNhdGlvbkNhY2hlSG9zdC0+c3RvcERlZmVycmluZ0V2ZW50cygpOwog
fQogCiB2b2lkIERvY3VtZW50TG9hZGVyOjpzZXRUcmlnZ2VyaW5nQWN0aW9uKGNvbnN0IE5hdmln
YXRpb25BY3Rpb24mIGFjdGlvbikKQEAgLTE3ODksMjMgKzE3MTUsMTggQEAgdm9pZCBEb2N1bWVu
dExvYWRlcjo6YWRkUGVuZGluZ0NvbnRlbnRFeHRlbnNpb25EaXNwbGF5Tm9uZVNlbGVjdG9yKGNv
bnN0IFN0cmluZyYKIH0KICNlbmRpZgogCi0jaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQot
Q29udGVudEZpbHRlciogRG9jdW1lbnRMb2FkZXI6OmNvbnRlbnRGaWx0ZXIoKSBjb25zdAotewot
ICAgIHJldHVybiBtX2NvbnRlbnRGaWx0ZXIuZ2V0KCk7Ci19Ci0jZW5kaWYKLQogYm9vbCBEb2N1
bWVudExvYWRlcjo6aXNBbHdheXNPbkxvZ2dpbmdBbGxvd2VkKCkgY29uc3QKIHsKLSAgICByZXR1
cm4gbV9mcmFtZSA/IG1fZnJhbWUtPmlzQWx3YXlzT25Mb2dnaW5nQWxsb3dlZCgpIDogdHJ1ZTsK
KyAgICByZXR1cm4gIW1fZnJhbWUgfHwgbV9mcmFtZS0+aXNBbHdheXNPbkxvZ2dpbmdBbGxvd2Vk
KCk7CiB9CiAKICNpZiBVU0UoUVVJQ0tfTE9PSykKKwogdm9pZCBEb2N1bWVudExvYWRlcjo6c2V0
UXVpY2tMb29rSGFuZGxlKHN0ZDo6dW5pcXVlX3B0cjxRdWlja0xvb2tIYW5kbGU+IHF1aWNrTG9v
a0hhbmRsZSkKIHsKICAgICBtX3F1aWNrTG9va0hhbmRsZSA9IFdURk1vdmUocXVpY2tMb29rSGFu
ZGxlKTsKIH0KKwogI2VuZGlmCiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5oIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL0RvY3VtZW50TG9hZGVyLmgKaW5kZXggZDcwYjM5Yjg2ZjgyYzA3MjNkMzJmYTZlODE1
NjU5MjQ4N2U2NjA5Mi4uODdlNGViNzYzYmFlYTFkZDY1ODUzNGQ4MmY5NDc5YWYwYzI4NTVlZiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmgKQEAgLTEsNSArMSw1IEBACiAv
KgotICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgogICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CkBAIC03Niw4ICs3Niw3IEBAIGNsYXNzIFNoYXJlZEJ1
ZmZlcjsKIGNsYXNzIFN1YnJlc291cmNlTG9hZGVyOwogY2xhc3MgU3Vic3RpdHV0ZVJlc291cmNl
OwogCi10eXBlZGVmIEhhc2hNYXA8dW5zaWduZWQgbG9uZywgUmVmUHRyPFJlc291cmNlTG9hZGVy
Pj4gUmVzb3VyY2VMb2FkZXJNYXA7Ci10eXBlZGVmIFZlY3RvcjxSZXNvdXJjZVJlc3BvbnNlPiBS
ZXNwb25zZVZlY3RvcjsKK3VzaW5nIFJlc291cmNlTG9hZGVyTWFwID0gSGFzaE1hcDx1bnNpZ25l
ZCBsb25nLCBSZWZQdHI8UmVzb3VyY2VMb2FkZXI+PjsKIAogY2xhc3MgRG9jdW1lbnRMb2FkZXIg
OiBwdWJsaWMgUmVmQ291bnRlZDxEb2N1bWVudExvYWRlcj4sIHByaXZhdGUgQ2FjaGVkUmF3UmVz
b3VyY2VDbGllbnQgewogICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwpAQCAtMTUwLDE0ICsx
NDksMTUgQEAgcHVibGljOgogI2VuZGlmCiAKICNpZiBFTkFCTEUoV0VCX0FSQ0hJVkUpIHx8IEVO
QUJMRShNSFRNTCkKLSAgICB2b2lkIHNldEFyY2hpdmUoUGFzc1JlZlB0cjxBcmNoaXZlPik7Ci0g
ICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBhZGRBbGxBcmNoaXZlUmVzb3VyY2VzKEFyY2hpdmUqKTsK
KyAgICB2b2lkIHNldEFyY2hpdmUoUmVmPEFyY2hpdmU+JiYpOworICAgIFdFQkNPUkVfRVhQT1JU
IHZvaWQgYWRkQWxsQXJjaGl2ZVJlc291cmNlcyhBcmNoaXZlJik7CiAgICAgV0VCQ09SRV9FWFBP
UlQgdm9pZCBhZGRBcmNoaXZlUmVzb3VyY2UoUmVmPEFyY2hpdmVSZXNvdXJjZT4mJik7Ci0gICAg
UGFzc1JlZlB0cjxBcmNoaXZlPiBwb3BBcmNoaXZlRm9yU3ViZnJhbWUoY29uc3QgU3RyaW5nJiBm
cmFtZU5hbWUsIGNvbnN0IFVSTCYpOworICAgIFJlZlB0cjxBcmNoaXZlPiBwb3BBcmNoaXZlRm9y
U3ViZnJhbWUoY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IFVSTCYpOwogICAgIFdFQkNP
UkVfRVhQT1JUIFNoYXJlZEJ1ZmZlciogcGFyc2VkQXJjaGl2ZURhdGEoKSBjb25zdDsKIAogICAg
IFdFQkNPUkVfRVhQT1JUIGJvb2wgc2NoZWR1bGVBcmNoaXZlTG9hZChSZXNvdXJjZUxvYWRlciYs
IGNvbnN0IFJlc291cmNlUmVxdWVzdCYpOwogI2VuZGlmCisKICAgICB2b2lkIHNjaGVkdWxlU3Vi
c3RpdHV0ZVJlc291cmNlTG9hZChSZXNvdXJjZUxvYWRlciYsIFN1YnN0aXR1dGVSZXNvdXJjZSYp
OwogCiAgICAgLy8gUmV0dXJuIHRoZSBBcmNoaXZlUmVzb3VyY2UgZm9yIHRoZSBVUkwgb25seSB3
aGVuIGxvYWRpbmcgYW4gQXJjaGl2ZQpAQCAtMTY2LDkgKzE2NiwxMCBAQCBwdWJsaWM6CiAgICAg
V0VCQ09SRV9FWFBPUlQgUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gbWFpblJlc291cmNlKCkgY29u
c3Q7CiAKICAgICAvLyBSZXR1cm4gYW4gQXJjaGl2ZVJlc291cmNlIGZvciB0aGUgVVJMLCBlaXRo
ZXIgY3JlYXRpbmcgZnJvbSBsaXZlIGRhdGEgb3IKLSAgICAvLyBwdWxsaW5nIGZyb20gdGhlIEFy
Y2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24KLSAgICBXRUJDT1JFX0VYUE9SVCBQYXNzUmVmUHRyPEFy
Y2hpdmVSZXNvdXJjZT4gc3VicmVzb3VyY2UoY29uc3QgVVJMJikgY29uc3Q7Ci0gICAgV0VCQ09S
RV9FWFBPUlQgVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+PiBzdWJyZXNvdXJjZXMoKSBj
b25zdDsKKyAgICAvLyBwdWxsaW5nIGZyb20gdGhlIEFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24u
CisgICAgV0VCQ09SRV9FWFBPUlQgUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gc3VicmVzb3VyY2Uo
Y29uc3QgVVJMJikgY29uc3Q7CisKKyAgICBXRUJDT1JFX0VYUE9SVCBWZWN0b3I8UmVmPEFyY2hp
dmVSZXNvdXJjZT4+IHN1YnJlc291cmNlcygpIGNvbnN0OwogCiAjaWZuZGVmIE5ERUJVRwogICAg
IGJvb2wgaXNTdWJzdGl0dXRlTG9hZFBlbmRpbmcoUmVzb3VyY2VMb2FkZXIqKSBjb25zdDsKQEAg
LTE3Niw3ICsxNzcsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBjYW5jZWxQZW5kaW5nU3Vic3RpdHV0
ZUxvYWQoUmVzb3VyY2VMb2FkZXIqKTsgICAKICAgICAKICAgICB2b2lkIGFkZFJlc3BvbnNlKGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICBjb25zdCBSZXNwb25zZVZlY3RvciYgcmVzcG9u
c2VzKCkgY29uc3QgeyByZXR1cm4gbV9yZXNwb25zZXM7IH0KKyAgICBjb25zdCBWZWN0b3I8UmVz
b3VyY2VSZXNwb25zZT4mIHJlc3BvbnNlcygpIGNvbnN0IHsgcmV0dXJuIG1fcmVzcG9uc2VzOyB9
CiAKICAgICBjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiB0cmlnZ2VyaW5nQWN0aW9uKCkgY29uc3Qg
eyByZXR1cm4gbV90cmlnZ2VyaW5nQWN0aW9uOyB9CiAgICAgdm9pZCBzZXRUcmlnZ2VyaW5nQWN0
aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mKTsKQEAgLTI0MCwxNyArMjQxLDcgQEAgcHVibGlj
OgogCiAgICAgdm9pZCBzZXREZWZlck1haW5SZXNvdXJjZURhdGFMb2FkKGJvb2wgZGVmZXIpIHsg
bV9kZWZlck1haW5SZXNvdXJjZURhdGFMb2FkID0gZGVmZXI7IH0KICAgICAKLSAgICB2b2lkIGRp
ZFRlbGxDbGllbnRBYm91dExvYWQoY29uc3QgU3RyaW5nJiB1cmwpCi0gICAgeyAKLSNpZiAhUExB
VEZPUk0oQ09DT0EpCi0gICAgICAgIC8vIERvbid0IGluY2x1ZGUgZGF0YSB1cmxzIGhlcmUsIGFz
IGlmIGEgbG90IG9mIGRhdGEgaXMgbG9hZGVkCi0gICAgICAgIC8vIHRoYXQgd2F5LCB3ZSBob2xk
IG9uIHRvIHRoZSAobGFyZ2UpIHVybCBzdHJpbmcgZm9yIHRvbyBsb25nLgotICAgICAgICBpZiAo
cHJvdG9jb2xJcyh1cmwsICJkYXRhIikpCi0gICAgICAgICAgICByZXR1cm47Ci0jZW5kaWYKLSAg
ICAgICAgaWYgKCF1cmwuaXNFbXB0eSgpKQotICAgICAgICAgICAgbV9yZXNvdXJjZXNDbGllbnRL
bm93c0Fib3V0LmFkZCh1cmwpOwotICAgIH0KKyAgICB2b2lkIGRpZFRlbGxDbGllbnRBYm91dExv
YWQoY29uc3QgU3RyaW5nJiB1cmwpOwogICAgIGJvb2wgaGF2ZVRvbGRDbGllbnRBYm91dExvYWQo
Y29uc3QgU3RyaW5nJiB1cmwpIHsgcmV0dXJuIG1fcmVzb3VyY2VzQ2xpZW50S25vd3NBYm91dC5j
b250YWlucyh1cmwpOyB9CiAgICAgdm9pZCByZWNvcmRNZW1vcnlDYWNoZUxvYWRGb3JGdXR1cmVD
bGllbnROb3RpZmljYXRpb24oY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7CiAgICAgdm9pZCB0YWtl
TWVtb3J5Q2FjaGVMb2Fkc0ZvckNsaWVudE5vdGlmaWNhdGlvbihWZWN0b3I8UmVzb3VyY2VSZXF1
ZXN0PiYgbG9hZHMpOwpAQCAtMjU4LDExICsyNDksMTEgQEAgcHVibGljOgogICAgIExvYWRUaW1p
bmcmIHRpbWluZygpIHsgcmV0dXJuIG1fbG9hZFRpbWluZzsgfQogICAgIHZvaWQgcmVzZXRUaW1p
bmcoKSB7IG1fbG9hZFRpbWluZyA9IExvYWRUaW1pbmcoKTsgfQogCi0gICAgLy8gVGhlIFdlYktp
dCBsYXllciBjYWxscyB0aGlzIGZ1bmN0aW9uIHdoZW4gaXQncyByZWFkeSBmb3IgdGhlIGRhdGEg
dG8KLSAgICAvLyBhY3R1YWxseSBiZSBhZGRlZCB0byB0aGUgZG9jdW1lbnQuCisgICAgLy8gVGhl
IFdlYktpdCBsYXllciBjYWxscyB0aGlzIGZ1bmN0aW9uIHdoZW4gaXQncyByZWFkeSBmb3IgdGhl
IGRhdGEgdG8gYWN0dWFsbHkgYmUgYWRkZWQgdG8gdGhlIGRvY3VtZW50LgogICAgIFdFQkNPUkVf
RVhQT1JUIHZvaWQgY29tbWl0RGF0YShjb25zdCBjaGFyKiBieXRlcywgc2l6ZV90IGxlbmd0aCk7
CiAKLSAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdCogYXBwbGljYXRpb25DYWNoZUhvc3QoKSBjb25z
dCB7IHJldHVybiBtX2FwcGxpY2F0aW9uQ2FjaGVIb3N0LmdldCgpOyB9CisgICAgQXBwbGljYXRp
b25DYWNoZUhvc3QmIGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkgY29uc3Q7CisgICAgQXBwbGljYXRp
b25DYWNoZUhvc3QqIGFwcGxpY2F0aW9uQ2FjaGVIb3N0VW5sZXNzQmVpbmdEZXN0cm95ZWQoKSBj
b25zdDsKIAogICAgIHZvaWQgY2hlY2tMb2FkQ29tcGxldGUoKTsKIApAQCAtMjk3LDcgKzI4OCw3
IEBAIHByb3RlY3RlZDoKIAogICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgdm9pZCBhdHRhY2hU
b0ZyYW1lKCk7CiAKLSAgICBib29sIG1fZGVmZXJNYWluUmVzb3VyY2VEYXRhTG9hZDsKKyAgICBi
b29sIG1fZGVmZXJNYWluUmVzb3VyY2VEYXRhTG9hZCB7IHRydWUgfTsKIAogcHJpdmF0ZToKICAg
ICBEb2N1bWVudCogZG9jdW1lbnQoKSBjb25zdDsKQEAgLTM1OCw3ICszNDksNyBAQCBwcml2YXRl
OgogICAgIHZvaWQgY2FuY2VsUG9saWN5Q2hlY2tJZk5lZWRlZCgpOwogICAgIHZvaWQgYmVjb21l
TWFpblJlc291cmNlQ2xpZW50KCk7CiAKLSAgICBGcmFtZSogbV9mcmFtZTsKKyAgICBGcmFtZSog
bV9mcmFtZSB7IG51bGxwdHIgfTsKICAgICBSZWY8Q2FjaGVkUmVzb3VyY2VMb2FkZXI+IG1fY2Fj
aGVkUmVzb3VyY2VMb2FkZXI7CiAKICAgICBDYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRSYXdS
ZXNvdXJjZT4gbV9tYWluUmVzb3VyY2U7CkBAIC0zOTAsMTUgKzM4MSwxNSBAQCBwcml2YXRlOgog
ICAgIFJlc291cmNlRXJyb3IgbV9tYWluRG9jdW1lbnRFcnJvcjsgICAgCiAKICAgICBib29sIG1f
b3JpZ2luYWxTdWJzdGl0dXRlRGF0YVdhc1ZhbGlkOwotICAgIGJvb2wgbV9jb21taXR0ZWQ7Ci0g
ICAgYm9vbCBtX2lzU3RvcHBpbmc7Ci0gICAgYm9vbCBtX2dvdEZpcnN0Qnl0ZTsKLSAgICBib29s
IG1faXNDbGllbnRSZWRpcmVjdDsKLSAgICBib29sIG1faXNMb2FkaW5nTXVsdGlwYXJ0Q29udGVu
dDsKKyAgICBib29sIG1fY29tbWl0dGVkIHsgZmFsc2UgfTsKKyAgICBib29sIG1faXNTdG9wcGlu
ZyB7IGZhbHNlIH07CisgICAgYm9vbCBtX2dvdEZpcnN0Qnl0ZSB7IGZhbHNlIH07CisgICAgYm9v
bCBtX2lzQ2xpZW50UmVkaXJlY3QgeyBmYWxzZSB9OworICAgIGJvb2wgbV9pc0xvYWRpbmdNdWx0
aXBhcnRDb250ZW50IHsgZmFsc2UgfTsKIAogICAgIC8vIEZJWE1FOiBEb2N1bWVudDo6bV9wcm9j
ZXNzaW5nTG9hZEV2ZW50IGFuZCBEb2N1bWVudExvYWRlcjo6bV93YXNPbmxvYWREaXNwYXRjaGVk
IGFyZSByb3VnaGx5IHRoZSBzYW1lCiAgICAgLy8gYW5kIHNob3VsZCBiZSBtZXJnZWQuCi0gICAg
Ym9vbCBtX3dhc09ubG9hZERpc3BhdGNoZWQ7CisgICAgYm9vbCBtX3dhc09ubG9hZERpc3BhdGNo
ZWQgeyBmYWxzZSB9OwogCiAgICAgU3RyaW5nV2l0aERpcmVjdGlvbiBtX3BhZ2VUaXRsZTsKIApA
QCAtNDE1LDggKzQwNiw4IEBAIHByaXZhdGU6CiAgICAgLy8gV2UgcmV0YWluIGFsbCB0aGUgcmVj
ZWl2ZWQgcmVzcG9uc2VzIHNvIHdlIGNhbiBwbGF5IGJhY2sgdGhlCiAgICAgLy8gV2ViUmVzb3Vy
Y2VMb2FkRGVsZWdhdGUgbWVzc2FnZXMgaWYgdGhlIGl0ZW0gaXMgbG9hZGVkIGZyb20gdGhlCiAg
ICAgLy8gcGFnZSBjYWNoZS4KLSAgICBSZXNwb25zZVZlY3RvciBtX3Jlc3BvbnNlczsKLSAgICBi
b29sIG1fc3RvcFJlY29yZGluZ1Jlc3BvbnNlczsKKyAgICBWZWN0b3I8UmVzb3VyY2VSZXNwb25z
ZT4gbV9yZXNwb25zZXM7CisgICAgYm9vbCBtX3N0b3BSZWNvcmRpbmdSZXNwb25zZXMgeyBmYWxz
ZSB9OwogICAgIAogICAgIHR5cGVkZWYgSGFzaE1hcDxSZWZQdHI8UmVzb3VyY2VMb2FkZXI+LCBS
ZWZQdHI8U3Vic3RpdHV0ZVJlc291cmNlPj4gU3Vic3RpdHV0ZVJlc291cmNlTWFwOwogICAgIFN1
YnN0aXR1dGVSZXNvdXJjZU1hcCBtX3BlbmRpbmdTdWJzdGl0dXRlUmVzb3VyY2VzOwpAQCAtNDMy
LDEzICs0MjMsMTMgQEAgcHJpdmF0ZToKICAgICBWZWN0b3I8UmVzb3VyY2VSZXF1ZXN0PiBtX3Jl
c291cmNlc0xvYWRlZEZyb21NZW1vcnlDYWNoZUZvckNsaWVudE5vdGlmaWNhdGlvbjsKICAgICAK
ICAgICBTdHJpbmcgbV9jbGllbnRSZWRpcmVjdFNvdXJjZUZvckhpc3Rvcnk7Ci0gICAgYm9vbCBt
X2RpZENyZWF0ZUdsb2JhbEhpc3RvcnlFbnRyeTsKKyAgICBib29sIG1fZGlkQ3JlYXRlR2xvYmFs
SGlzdG9yeUVudHJ5IHsgZmFsc2UgfTsKIAotICAgIGJvb2wgbV9sb2FkaW5nTWFpblJlc291cmNl
OworICAgIGJvb2wgbV9sb2FkaW5nTWFpblJlc291cmNlIHsgZmFsc2UgfTsKICAgICBMb2FkVGlt
aW5nIG1fbG9hZFRpbWluZzsKIAotICAgIGRvdWJsZSBtX3RpbWVPZkxhc3REYXRhUmVjZWl2ZWQ7
Ci0gICAgdW5zaWduZWQgbG9uZyBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9h
ZGVyOworICAgIGRvdWJsZSBtX3RpbWVPZkxhc3REYXRhUmVjZWl2ZWQgeyAwIH07CisgICAgdW5z
aWduZWQgbG9uZyBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyIHsgMCB9
OwogCiAgICAgRG9jdW1lbnRMb2FkZXJUaW1lciBtX2RhdGFMb2FkVGltZXI7CiAgICAgYm9vbCBt
X3dhaXRpbmdGb3JDb250ZW50UG9saWN5IHsgZmFsc2UgfTsKQEAgLTQ1Miw3ICs0NDMsNyBAQCBw
cml2YXRlOgogICAgIEhhc2hNYXA8dWludDY0X3QsIExpbmtJY29uPiBtX2ljb25zUGVuZGluZ0xv
YWREZWNpc2lvbjsKICAgICBIYXNoTWFwPHN0ZDo6dW5pcXVlX3B0cjxJY29uTG9hZGVyPiwgdWlu
dDY0X3Q+IG1faWNvbkxvYWRlcnM7CiAKLSAgICBib29sIG1fc3VicmVzb3VyY2VMb2FkZXJzQXJl
UGFnZUNhY2hlQWNjZXB0YWJsZTsKKyAgICBib29sIG1fc3VicmVzb3VyY2VMb2FkZXJzQXJlUGFn
ZUNhY2hlQWNjZXB0YWJsZSB7IGZhbHNlIH07CiAgICAgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1Bv
bGljeSBtX3Nob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgeyBTaG91bGRPcGVuRXh0ZXJuYWxV
UkxzUG9saWN5OjpTaG91bGROb3RBbGxvdyB9OwogCiAgICAgc3RkOjp1bmlxdWVfcHRyPEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0PiBtX2FwcGxpY2F0aW9uQ2FjaGVIb3N0OwpAQCAtNDg3LDQgKzQ3OCw4
NyBAQCBpbmxpbmUgdm9pZCBEb2N1bWVudExvYWRlcjo6dGFrZU1lbW9yeUNhY2hlTG9hZHNGb3JD
bGllbnROb3RpZmljYXRpb24oVmVjdG9yPFJlcwogICAgIG1fcmVzb3VyY2VzTG9hZGVkRnJvbU1l
bW9yeUNhY2hlRm9yQ2xpZW50Tm90aWZpY2F0aW9uLmNsZWFyKCk7CiB9CiAKK2lubGluZSBjb25z
dCBSZXNvdXJjZVJlcXVlc3QmIERvY3VtZW50TG9hZGVyOjpvcmlnaW5hbFJlcXVlc3QoKSBjb25z
dAoreworICAgIHJldHVybiBtX29yaWdpbmFsUmVxdWVzdDsKK30KKworaW5saW5lIGNvbnN0IFJl
c291cmNlUmVxdWVzdCYgRG9jdW1lbnRMb2FkZXI6Om9yaWdpbmFsUmVxdWVzdENvcHkoKSBjb25z
dAoreworICAgIHJldHVybiBtX29yaWdpbmFsUmVxdWVzdENvcHk7Cit9CisKK2lubGluZSBjb25z
dCBSZXNvdXJjZVJlcXVlc3QmIERvY3VtZW50TG9hZGVyOjpyZXF1ZXN0KCkgY29uc3QKK3sKKyAg
ICByZXR1cm4gbV9yZXF1ZXN0OworfQorCitpbmxpbmUgUmVzb3VyY2VSZXF1ZXN0JiBEb2N1bWVu
dExvYWRlcjo6cmVxdWVzdCgpCit7CisgICAgcmV0dXJuIG1fcmVxdWVzdDsKK30KKworaW5saW5l
IGNvbnN0IFVSTCYgRG9jdW1lbnRMb2FkZXI6OnVybCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1f
cmVxdWVzdC51cmwoKTsKK30KKworaW5saW5lIGNvbnN0IFVSTCYgRG9jdW1lbnRMb2FkZXI6Om9y
aWdpbmFsVVJMKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9vcmlnaW5hbFJlcXVlc3RDb3B5LnVy
bCgpOworfQorCitpbmxpbmUgY29uc3QgVVJMJiBEb2N1bWVudExvYWRlcjo6cmVzcG9uc2VVUkwo
KSBjb25zdAoreworICAgIHJldHVybiBtX3Jlc3BvbnNlLnVybCgpOworfQorCitpbmxpbmUgY29u
c3QgU3RyaW5nJiBEb2N1bWVudExvYWRlcjo6cmVzcG9uc2VNSU1FVHlwZSgpIGNvbnN0Cit7Cisg
ICAgcmV0dXJuIG1fcmVzcG9uc2UubWltZVR5cGUoKTsKK30KKworaW5saW5lIGNvbnN0IFN0cmlu
ZyYgRG9jdW1lbnRMb2FkZXI6OmN1cnJlbnRDb250ZW50VHlwZSgpIGNvbnN0Cit7CisgICAgcmV0
dXJuIG1fd3JpdGVyLm1pbWVUeXBlKCk7Cit9CisKK2lubGluZSBjb25zdCBVUkwmIERvY3VtZW50
TG9hZGVyOjp1bnJlYWNoYWJsZVVSTCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fc3Vic3RpdHV0
ZURhdGEuZmFpbGluZ1VSTCgpOworfQorCitpbmxpbmUgQXBwbGljYXRpb25DYWNoZUhvc3QmIERv
Y3VtZW50TG9hZGVyOjphcHBsaWNhdGlvbkNhY2hlSG9zdCgpIGNvbnN0Cit7CisgICAgLy8gRm9y
IGEgc2hvcnQgdGltZSB3aGlsZSB0aGUgZG9jdW1lbnQgbG9hZGVyIGlzIGJlaW5nIGRlc3Ryb3ll
ZCwgbV9hcHBsaWNhdGlvbkNhY2hlSG9zdCBpcyBudWxsLgorICAgIC8vIEl0J3Mgbm90IGFjY2Vw
dGFibGUgdG8gY2FsbCB0aGlzIGZ1bmN0aW9uIGR1cmluZyB0aGF0IHRpbWUuCisgICAgQVNTRVJU
KG1fYXBwbGljYXRpb25DYWNoZUhvc3QpOworICAgIHJldHVybiAqbV9hcHBsaWNhdGlvbkNhY2hl
SG9zdDsKK30KKworaW5saW5lIEFwcGxpY2F0aW9uQ2FjaGVIb3N0KiBEb2N1bWVudExvYWRlcjo6
YXBwbGljYXRpb25DYWNoZUhvc3RVbmxlc3NCZWluZ0Rlc3Ryb3llZCgpIGNvbnN0Cit7CisgICAg
cmV0dXJuIG1fYXBwbGljYXRpb25DYWNoZUhvc3QuZ2V0KCk7Cit9CisKKyNpZiBFTkFCTEUoQ09O
VEVOVF9GSUxURVJJTkcpCisKK2lubGluZSBDb250ZW50RmlsdGVyKiBEb2N1bWVudExvYWRlcjo6
Y29udGVudEZpbHRlcigpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fY29udGVudEZpbHRlci5nZXQo
KTsKK30KKworI2VuZGlmCisKK2lubGluZSB2b2lkIERvY3VtZW50TG9hZGVyOjpkaWRUZWxsQ2xp
ZW50QWJvdXRMb2FkKGNvbnN0IFN0cmluZyYgdXJsKQoreworI2lmICFQTEFURk9STShDT0NPQSkK
KyAgICAvLyBEb24ndCBpbmNsdWRlIGRhdGEgVVJMcyBoZXJlLCBhcyBpZiBhIGxvdCBvZiBkYXRh
IGlzIGxvYWRlZCB0aGF0IHdheSwgd2UgaG9sZCBvbiB0byB0aGUgKGxhcmdlKSBVUkwgc3RyaW5n
IGZvciB0b28gbG9uZy4KKyAgICBpZiAocHJvdG9jb2xJcyh1cmwsICJkYXRhIikpCisgICAgICAg
IHJldHVybjsKKyNlbmRpZgorICAgIGlmICghdXJsLmlzRW1wdHkoKSkKKyAgICAgICAgbV9yZXNv
dXJjZXNDbGllbnRLbm93c0Fib3V0LmFkZCh1cmwpOworfQorCiB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9FbXB0eUNsaWVudHMuY3BwCmluZGV4IGUwZjZlNWIzZTM0YThhMWU4ZDMxNDljMDQyZTFkYTBh
MzczZDRkYTkuLmVlZmM0YWE4MzgzMTA0NDZlOTIxZDRmMTcyOTU4MmU4MjRjOGE1ZjIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuY3BwCkBAIC00Niw2ICs0Niw3IEBACiAjaW5j
bHVkZSAiSFRNTEZvcm1FbGVtZW50LmgiCiAjaW5jbHVkZSAiSW5Qcm9jZXNzSURCU2VydmVyLmgi
CiAjaW5jbHVkZSAiSW5zcGVjdG9yQ2xpZW50LmgiCisjaW5jbHVkZSAiTmV0d29ya1N0b3JhZ2VT
ZXNzaW9uLmgiCiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlBhZ2VDb25maWd1cmF0aW9u
LmgiCiAjaW5jbHVkZSAiUGF5bWVudENvb3JkaW5hdG9yQ2xpZW50LmgiCkBAIC0xNzEsOCArMTcy
LDggQEAgcHJpdmF0ZToKICAgICB2b2lkIHJlcXVlc3RDYW5kaWRhdGVzRm9yU2VsZWN0aW9uKGNv
bnN0IFZpc2libGVTZWxlY3Rpb24mKSBmaW5hbCB7IH0KICAgICB2b2lkIGhhbmRsZUFjY2VwdGVk
Q2FuZGlkYXRlV2l0aFNvZnRTcGFjZXMoVGV4dENoZWNraW5nUmVzdWx0KSBmaW5hbCB7IH0KIAot
ICAgIHZvaWQgcmVnaXN0ZXJVbmRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPikgZmluYWw7Ci0g
ICAgdm9pZCByZWdpc3RlclJlZG9TdGVwKFBhc3NSZWZQdHI8VW5kb1N0ZXA+KSBmaW5hbDsKKyAg
ICB2b2lkIHJlZ2lzdGVyVW5kb1N0ZXAoVW5kb1N0ZXAmKSBmaW5hbDsKKyAgICB2b2lkIHJlZ2lz
dGVyUmVkb1N0ZXAoVW5kb1N0ZXAmKSBmaW5hbDsKICAgICB2b2lkIGNsZWFyVW5kb1JlZG9PcGVy
YXRpb25zKCkgZmluYWwgeyB9CiAKICAgICBib29sIGNhbkNvcHlDdXQoRnJhbWUqLCBib29sIGRl
ZmF1bHRWYWx1ZSkgY29uc3QgZmluYWwgeyByZXR1cm4gZGVmYXVsdFZhbHVlOyB9CkBAIC0zMzEs
MTQgKzMzMiwxNCBAQCBjbGFzcyBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50IGZpbmFsIDogcHVibGlj
IEZyYW1lTG9hZGVyQ2xpZW50IHsKICAgICB2b2lkIGRpc3BhdGNoU2hvdygpIGZpbmFsIHsgfQog
CiAgICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvclJlc3BvbnNlKGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBGcmFtZVBvbGljeUZ1bmN0aW9uKSBm
aW5hbCB7IH0KLSAgICB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9u
KGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVm
UHRyPEZvcm1TdGF0ZT4sIGNvbnN0IFN0cmluZyYsIEZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFs
OwotICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0
IE5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPEZv
cm1TdGF0ZT4sIEZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hE
ZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNv
bnN0IFJlc291cmNlUmVxdWVzdCYsIEZvcm1TdGF0ZSosIGNvbnN0IFN0cmluZyYsIEZyYW1lUG9s
aWN5RnVuY3Rpb24pIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZp
Z2F0aW9uQWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVl
c3QmLCBGb3JtU3RhdGUqLCBGcmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsKICAgICB2b2lkIGNh
bmNlbFBvbGljeUNoZWNrKCkgZmluYWwgeyB9CiAKICAgICB2b2lkIGRpc3BhdGNoVW5hYmxlVG9J
bXBsZW1lbnRQb2xpY3koY29uc3QgUmVzb3VyY2VFcnJvciYpIGZpbmFsIHsgfQogCi0gICAgdm9p
ZCBkaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoUGFzc1JlZlB0cjxGb3JtU3RhdGU+KSBmaW5h
bDsKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0oUGFzc1JlZlB0cjxGb3JtU3RhdGU+
LCBGcmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRT
dWJtaXRFdmVudChSZWY8Rm9ybVN0YXRlPiYmKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoV2ls
bFN1Ym1pdEZvcm0oRm9ybVN0YXRlJiwgRnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7CiAKICAg
ICB2b2lkIHJldmVydFRvUHJvdmlzaW9uYWxTdGF0ZShEb2N1bWVudExvYWRlciopIGZpbmFsIHsg
fQogICAgIHZvaWQgc2V0TWFpbkRvY3VtZW50RXJyb3IoRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBS
ZXNvdXJjZUVycm9yJikgZmluYWwgeyB9CkBAIC00MTAsMTAgKzQxMSwxMCBAQCBjbGFzcyBFbXB0
eUZyYW1lTG9hZGVyQ2xpZW50IGZpbmFsIDogcHVibGljIEZyYW1lTG9hZGVyQ2xpZW50IHsKICAg
ICB2b2lkIGRpZERpc3BsYXlJbnNlY3VyZUNvbnRlbnQoKSBmaW5hbCB7IH0KICAgICB2b2lkIGRp
ZFJ1bkluc2VjdXJlQ29udGVudChTZWN1cml0eU9yaWdpbiosIGNvbnN0IFVSTCYpIGZpbmFsIHsg
fQogICAgIHZvaWQgZGlkRGV0ZWN0WFNTKGNvbnN0IFVSTCYsIGJvb2wpIGZpbmFsIHsgfQotICAg
IFJlZlB0cjxGcmFtZT4gY3JlYXRlRnJhbWUoY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiwgSFRN
TEZyYW1lT3duZXJFbGVtZW50KiwgY29uc3QgU3RyaW5nJiwgYm9vbCwgaW50LCBpbnQpIGZpbmFs
OwotICAgIFJlZlB0cjxXaWRnZXQ+IGNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiwgSFRNTFBs
dWdJbkVsZW1lbnQqLCBjb25zdCBVUkwmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFZl
Y3RvcjxTdHJpbmc+JiwgY29uc3QgU3RyaW5nJiwgYm9vbCkgZmluYWw7CisgICAgUmVmUHRyPEZy
YW1lPiBjcmVhdGVGcmFtZShjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmLCBIVE1MRnJhbWVPd25l
ckVsZW1lbnQmLCBjb25zdCBTdHJpbmcmLCBib29sLCBpbnQsIGludCkgZmluYWw7CisgICAgUmVm
UHRyPFdpZGdldD4gY3JlYXRlUGx1Z2luKGNvbnN0IEludFNpemUmLCBIVE1MUGx1Z0luRWxlbWVu
dCYsIGNvbnN0IFVSTCYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFN0cmlu
Zz4mLCBjb25zdCBTdHJpbmcmLCBib29sKSBmaW5hbDsKICAgICB2b2lkIHJlY3JlYXRlUGx1Z2lu
KFdpZGdldCopIGZpbmFsOwotICAgIFBhc3NSZWZQdHI8V2lkZ2V0PiBjcmVhdGVKYXZhQXBwbGV0
V2lkZ2V0KGNvbnN0IEludFNpemUmLCBIVE1MQXBwbGV0RWxlbWVudCosIGNvbnN0IFVSTCYsIGNv
bnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mKSBmaW5hbDsKKyAgICBS
ZWZQdHI8V2lkZ2V0PiBjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmLCBIVE1M
QXBwbGV0RWxlbWVudCYsIGNvbnN0IFVSTCYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3Qg
VmVjdG9yPFN0cmluZz4mKSBmaW5hbDsKIAogICAgIE9iamVjdENvbnRlbnRUeXBlIG9iamVjdENv
bnRlbnRUeXBlKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYpIGZpbmFsIHsgcmV0dXJuIE9iamVj
dENvbnRlbnRUeXBlOjpOb25lOyB9CiAgICAgU3RyaW5nIG92ZXJyaWRlTWVkaWFUeXBlKCkgY29u
c3QgZmluYWwgeyByZXR1cm4geyB9OyB9CkBAIC00MzIsMTYgKzQzMywzNyBAQCBjbGFzcyBFbXB0
eUZyYW1lTG9hZGVyQ2xpZW50IGZpbmFsIDogcHVibGljIEZyYW1lTG9hZGVyQ2xpZW50IHsKICAg
ICBib29sIHNob3VsZENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25n
LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgdW5zaWduZWQgY2hhciosIHVuc2lnbmVk
IGxvbmcgbG9uZykgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQogI2VuZGlmCiAKLSAgICBQYXNzUmVm
UHRyPEZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkgZmlu
YWw7CisgICAgUmVmPEZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZU5ldHdvcmtpbmdDb250
ZXh0KCkgZmluYWw7CiAKICNpZiBFTkFCTEUoUkVRVUVTVF9BVVRPQ09NUExFVEUpCi0gICAgdm9p
ZCBkaWRSZXF1ZXN0QXV0b2NvbXBsZXRlKFBhc3NSZWZQdHI8Rm9ybVN0YXRlPikgZmluYWwgeyB9
CisgICAgdm9pZCBkaWRSZXF1ZXN0QXV0b2NvbXBsZXRlKFJlZjxGb3JtU3RhdGU+JiYpIGZpbmFs
IHsgfQogI2VuZGlmCiAKICAgICBib29sIGlzRW1wdHlGcmFtZUxvYWRlckNsaWVudCgpIGZpbmFs
IHsgcmV0dXJuIHRydWU7IH0KICAgICB2b2lkIHByZWZldGNoRE5TKGNvbnN0IFN0cmluZyYpIGZp
bmFsIHsgfQogfTsKIAorY2xhc3MgRW1wdHlGcmFtZU5ldHdvcmtpbmdDb250ZXh0IGZpbmFsIDog
cHVibGljIEZyYW1lTmV0d29ya2luZ0NvbnRleHQgeworcHVibGljOgorICAgIHN0YXRpYyBSZWY8
RW1wdHlGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBjcmVhdGUoKSB7IHJldHVybiBhZG9wdFJlZigq
bmV3IEVtcHR5RnJhbWVOZXR3b3JraW5nQ29udGV4dCk7IH0KKworcHJpdmF0ZToKKyAgICBFbXB0
eUZyYW1lTmV0d29ya2luZ0NvbnRleHQoKTsKKworICAgIGJvb2wgc2hvdWxkQ2xlYXJSZWZlcnJl
ck9uSFRUUFNUb0hUVFBSZWRpcmVjdCgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KKyAgICBOZXR3
b3JrU3RvcmFnZVNlc3Npb24mIHN0b3JhZ2VTZXNzaW9uKCkgY29uc3QgZmluYWwgeyByZXR1cm4g
TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpkZWZhdWx0U3RvcmFnZVNlc3Npb24oKTsgfQorCisjaWYg
UExBVEZPUk0oQ09DT0EpCisgICAgYm9vbCBsb2NhbEZpbGVDb250ZW50U25pZmZpbmdFbmFibGVk
KCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KKyAgICBTY2hlZHVsZVBhaXJIYXNoU2V0KiBzY2hl
ZHVsZWRSdW5Mb29wUGFpcnMoKSBjb25zdCB7IHJldHVybiBudWxscHRyOyB9CisgICAgUmV0YWlu
UHRyPENGRGF0YVJlZj4gc291cmNlQXBwbGljYXRpb25BdWRpdERhdGEoKSBjb25zdCB7IHJldHVy
biBudWxscHRyOyB9OworI2VuZGlmCisKKyNpZiBQTEFURk9STShDT0NPQSkgfHwgUExBVEZPUk0o
V0lOKQorICAgIFJlc291cmNlRXJyb3IgYmxvY2tlZEVycm9yKGNvbnN0IFJlc291cmNlUmVxdWVz
dCYpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIHsgfTsgfQorI2VuZGlmCit9OworCiBjbGFzcyBFbXB0
eUluc3BlY3RvckNsaWVudCBmaW5hbCA6IHB1YmxpYyBJbnNwZWN0b3JDbGllbnQgewogICAgIHZv
aWQgaW5zcGVjdGVkUGFnZURlc3Ryb3llZCgpIGZpbmFsIHsgfQogICAgIEluc3BlY3Rvcjo6RnJv
bnRlbmRDaGFubmVsKiBvcGVuTG9jYWxGcm9udGVuZChJbnNwZWN0b3JDb250cm9sbGVyKikgZmlu
YWwgeyByZXR1cm4gbnVsbHB0cjsgfQpAQCAtNTY5LDIzICs1OTEsMjMgQEAgc3RkOjp1bmlxdWVf
cHRyPENvbG9yQ2hvb3Nlcj4gRW1wdHlDaHJvbWVDbGllbnQ6OmNyZWF0ZUNvbG9yQ2hvb3NlcihD
b2xvckNob29zZXIKIAogI2VuZGlmCiAKLXZvaWQgRW1wdHlDaHJvbWVDbGllbnQ6OnJ1bk9wZW5Q
YW5lbChGcmFtZSosIFBhc3NSZWZQdHI8RmlsZUNob29zZXI+KQordm9pZCBFbXB0eUNocm9tZUNs
aWVudDo6cnVuT3BlblBhbmVsKEZyYW1lJiwgRmlsZUNob29zZXImKQogewogfQogCi12b2lkIEVt
cHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0
aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBQYXNz
UmVmUHRyPEZvcm1TdGF0ZT4sIGNvbnN0IFN0cmluZyYsIEZyYW1lUG9saWN5RnVuY3Rpb24pCit2
b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2lu
ZG93QWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
LCBGb3JtU3RhdGUqLCBjb25zdCBTdHJpbmcmLCBGcmFtZVBvbGljeUZ1bmN0aW9uKQogewogfQog
Ci12b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2
aWdhdGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgUmVzb3VyY2VSZXF1
ZXN0JiwgUGFzc1JlZlB0cjxGb3JtU3RhdGU+LCBGcmFtZVBvbGljeUZ1bmN0aW9uKQordm9pZCBF
bXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25B
Y3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIEZv
cm1TdGF0ZSosIEZyYW1lUG9saWN5RnVuY3Rpb24pCiB7CiB9CiAKLXZvaWQgRW1wdHlGcmFtZUxv
YWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFBhc3NSZWZQdHI8Rm9ybVN0
YXRlPikKK3ZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1p
dEV2ZW50KFJlZjxGb3JtU3RhdGU+JiYpCiB7CiB9CiAKLXZvaWQgRW1wdHlGcmFtZUxvYWRlckNs
aWVudDo6ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIEZyYW1l
UG9saWN5RnVuY3Rpb24pCit2b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2ls
bFN1Ym1pdEZvcm0oRm9ybVN0YXRlJiwgRnJhbWVQb2xpY3lGdW5jdGlvbikKIHsKIH0KIApAQCAt
NTk0LDEyICs2MTYsMTIgQEAgUmVmPERvY3VtZW50TG9hZGVyPiBFbXB0eUZyYW1lTG9hZGVyQ2xp
ZW50OjpjcmVhdGVEb2N1bWVudExvYWRlcihjb25zdCBSZXNvdXJjZVIKICAgICByZXR1cm4gRG9j
dW1lbnRMb2FkZXI6OmNyZWF0ZShyZXF1ZXN0LCBzdWJzdGl0dXRlRGF0YSk7CiB9CiAKLVJlZlB0
cjxGcmFtZT4gRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlRnJhbWUoY29uc3QgVVJMJiwg
Y29uc3QgU3RyaW5nJiwgSFRNTEZyYW1lT3duZXJFbGVtZW50KiwgY29uc3QgU3RyaW5nJiwgYm9v
bCwgaW50LCBpbnQpCitSZWZQdHI8RnJhbWU+IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0
ZUZyYW1lKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYsIEhUTUxGcmFtZU93bmVyRWxlbWVudCYs
IGNvbnN0IFN0cmluZyYsIGJvb2wsIGludCwgaW50KQogewogICAgIHJldHVybiBudWxscHRyOwog
fQogCi1SZWZQdHI8V2lkZ2V0PiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4o
Y29uc3QgSW50U2l6ZSYsIEhUTUxQbHVnSW5FbGVtZW50KiwgY29uc3QgVVJMJiwgY29uc3QgVmVj
dG9yPFN0cmluZz4mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFN0cmluZyYsIGJvb2wp
CitSZWZQdHI8V2lkZ2V0PiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29u
c3QgSW50U2l6ZSYsIEhUTUxQbHVnSW5FbGVtZW50JiwgY29uc3QgVVJMJiwgY29uc3QgVmVjdG9y
PFN0cmluZz4mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFN0cmluZyYsIGJvb2wpCiB7
CiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CkBAIC02MDgsMjUgKzYzMCwzMCBAQCB2b2lkIEVtcHR5
RnJhbWVMb2FkZXJDbGllbnQ6OnJlY3JlYXRlUGx1Z2luKFdpZGdldCopCiB7CiB9CiAKLVBhc3NS
ZWZQdHI8V2lkZ2V0PiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lk
Z2V0KGNvbnN0IEludFNpemUmLCBIVE1MQXBwbGV0RWxlbWVudCosIGNvbnN0IFVSTCYsIGNvbnN0
IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mKQorUmVmUHRyPFdpZGdldD4g
RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRT
aXplJiwgSFRNTEFwcGxldEVsZW1lbnQmLCBjb25zdCBVUkwmLCBjb25zdCBWZWN0b3I8U3RyaW5n
PiYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JikKIHsKICAgICByZXR1cm4gbnVsbHB0cjsKIH0KIAot
UGFzc1JlZlB0cjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50
OjpjcmVhdGVOZXR3b3JraW5nQ29udGV4dCgpCitpbmxpbmUgRW1wdHlGcmFtZU5ldHdvcmtpbmdD
b250ZXh0OjpFbXB0eUZyYW1lTmV0d29ya2luZ0NvbnRleHQoKQorICAgIDogRnJhbWVOZXR3b3Jr
aW5nQ29udGV4dCB7IG51bGxwdHIgfQoreworfQorCitSZWY8RnJhbWVOZXR3b3JraW5nQ29udGV4
dD4gRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKQogewot
ICAgIHJldHVybiBQYXNzUmVmUHRyPEZyYW1lTmV0d29ya2luZ0NvbnRleHQ+KCk7CisgICAgcmV0
dXJuIEVtcHR5RnJhbWVOZXR3b3JraW5nQ29udGV4dDo6Y3JlYXRlKCk7CiB9CiAKIHZvaWQgRW1w
dHlFZGl0b3JDbGllbnQ6OkVtcHR5VGV4dENoZWNrZXJDbGllbnQ6OnJlcXVlc3RDaGVja2luZ09m
U3RyaW5nKFRleHRDaGVja2luZ1JlcXVlc3QmLCBjb25zdCBWaXNpYmxlU2VsZWN0aW9uJikKIHsK
IH0KIAotdm9pZCBFbXB0eUVkaXRvckNsaWVudDo6cmVnaXN0ZXJVbmRvU3RlcChQYXNzUmVmUHRy
PFVuZG9TdGVwPikKK3ZvaWQgRW1wdHlFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb1N0ZXAoVW5k
b1N0ZXAmKQogewogfQogCi12b2lkIEVtcHR5RWRpdG9yQ2xpZW50OjpyZWdpc3RlclJlZG9TdGVw
KFBhc3NSZWZQdHI8VW5kb1N0ZXA+KQordm9pZCBFbXB0eUVkaXRvckNsaWVudDo6cmVnaXN0ZXJS
ZWRvU3RlcChVbmRvU3RlcCYpCiB7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9FbXB0eUNsaWVudHMuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMu
aAppbmRleCAxYTFkNTNjMzc0MDhhYjk5YzYwZGYwZTJmN2Q4MmE0MWMxYWVkNjY5Li44ZjI1MmJh
NzkyZjcxMTk3ZDA5MTA5MjZjODQwYTI5MDg1YWQxMDM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Vt
cHR5Q2xpZW50cy5oCkBAIC0xMzgsNyArMTM4LDcgQEAgY2xhc3MgRW1wdHlDaHJvbWVDbGllbnQg
OiBwdWJsaWMgQ2hyb21lQ2xpZW50IHsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8Q29sb3JDaG9vc2Vy
PiBjcmVhdGVDb2xvckNob29zZXIoQ29sb3JDaG9vc2VyQ2xpZW50KiwgY29uc3QgQ29sb3ImKSBm
aW5hbDsKICNlbmRpZgogCi0gICAgdm9pZCBydW5PcGVuUGFuZWwoRnJhbWUqLCBQYXNzUmVmUHRy
PEZpbGVDaG9vc2VyPikgZmluYWw7CisgICAgdm9pZCBydW5PcGVuUGFuZWwoRnJhbWUmLCBGaWxl
Q2hvb3NlciYpIGZpbmFsOwogICAgIHZvaWQgbG9hZEljb25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8
U3RyaW5nPiYsIEZpbGVJY29uTG9hZGVyJikgZmluYWwgeyB9CiAKICAgICB2b2lkIGVsZW1lbnRE
aWRGb2N1cyhjb25zdCBOb2RlKikgZmluYWwgeyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvRm9ybVN0YXRlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3RhdGUu
Y3BwCmluZGV4IDM1MTBiODAyNWRkZmMzNTE2MzhlMDMwNjA2ZmFkNjA0NWNjOTUxOTYuLjVlODk2
ZTdmODUyZjk2ZTI1NDBlZDhkNGQxNTE3NjJiNmI0MGQ5MTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9Gb3JtU3RhdGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9G
b3JtU3RhdGUuY3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNiwg
MjAwOSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIw
MDYtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKQEAgLTM0LDE3ICszNCwxNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKLWlubGluZSBGb3JtU3RhdGU6OkZvcm1TdGF0ZShQYXNzUmVmUHRyPEhUTUxGb3JtRWxlbWVu
dD4gZm9ybSwgU3RyaW5nUGFpclZlY3RvciYgdGV4dEZpZWxkVmFsdWVzVG9BZG9wdCwgUGFzc1Jl
ZlB0cjxEb2N1bWVudD4gc291cmNlRG9jdW1lbnQsIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciBmb3Jt
U3VibWlzc2lvblRyaWdnZXIpCitpbmxpbmUgRm9ybVN0YXRlOjpGb3JtU3RhdGUoSFRNTEZvcm1F
bGVtZW50JiBmb3JtLCBTdHJpbmdQYWlyVmVjdG9yJiYgdGV4dEZpZWxkVmFsdWVzLCBEb2N1bWVu
dCYgc291cmNlRG9jdW1lbnQsIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciBmb3JtU3VibWlzc2lvblRy
aWdnZXIpCiAgICAgOiBtX2Zvcm0oZm9ybSkKKyAgICAsIG1fdGV4dEZpZWxkVmFsdWVzKFdURk1v
dmUodGV4dEZpZWxkVmFsdWVzKSkKICAgICAsIG1fc291cmNlRG9jdW1lbnQoc291cmNlRG9jdW1l
bnQpCiAgICAgLCBtX2Zvcm1TdWJtaXNzaW9uVHJpZ2dlcihmb3JtU3VibWlzc2lvblRyaWdnZXIp
CiB7Ci0gICAgbV90ZXh0RmllbGRWYWx1ZXMuc3dhcCh0ZXh0RmllbGRWYWx1ZXNUb0Fkb3B0KTsK
IH0KIAotUmVmPEZvcm1TdGF0ZT4gRm9ybVN0YXRlOjpjcmVhdGUoUGFzc1JlZlB0cjxIVE1MRm9y
bUVsZW1lbnQ+IGZvcm0sIFN0cmluZ1BhaXJWZWN0b3ImIHRleHRGaWVsZFZhbHVlc1RvQWRvcHQs
IFBhc3NSZWZQdHI8RG9jdW1lbnQ+IHNvdXJjZURvY3VtZW50LCBGb3JtU3VibWlzc2lvblRyaWdn
ZXIgZm9ybVN1Ym1pc3Npb25UcmlnZ2VyKQorUmVmPEZvcm1TdGF0ZT4gRm9ybVN0YXRlOjpjcmVh
dGUoSFRNTEZvcm1FbGVtZW50JiBmb3JtLCBTdHJpbmdQYWlyVmVjdG9yJiYgdGV4dEZpZWxkVmFs
dWVzLCBEb2N1bWVudCYgc291cmNlRG9jdW1lbnQsIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciBmb3Jt
U3VibWlzc2lvblRyaWdnZXIpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRm9ybVN0YXRl
KGZvcm0sIHRleHRGaWVsZFZhbHVlc1RvQWRvcHQsIHNvdXJjZURvY3VtZW50LCBmb3JtU3VibWlz
c2lvblRyaWdnZXIpKTsKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGb3JtU3RhdGUoZm9ybSwg
V1RGTW92ZSh0ZXh0RmllbGRWYWx1ZXMpLCBzb3VyY2VEb2N1bWVudCwgZm9ybVN1Ym1pc3Npb25U
cmlnZ2VyKSk7CiB9CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3Jt
U3RhdGUuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3RhdGUuaAppbmRleCA5NTA0MGY5
YzI4ZDQ3OTNiYjE1ZjhmZjM3YTBiNjI0ZDI4YmQ4Y2Y3Li4yZGVkZDA5YmU1MmIwYWZjOTcwMjgz
YTExNGNjZjAzNGY3YjY1ZmFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9y
bVN0YXRlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdGF0ZS5oCkBAIC0xLDUg
KzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNiwgMjAwOSBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTI4
LDM3ICsyOCwzMyBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVk
Lmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAotICAgIGNsYXNzIERvY3VtZW50OwotICAgIGNsYXNzIEhUTUxGb3JtRWxlbWVudDsKK2Ns
YXNzIERvY3VtZW50OworY2xhc3MgSFRNTEZvcm1FbGVtZW50OwogCi0gICAgZW51bSBGb3JtU3Vi
bWlzc2lvblRyaWdnZXIgewotICAgICAgICBTdWJtaXR0ZWRCeUphdmFTY3JpcHQsCi0gICAgICAg
IE5vdFN1Ym1pdHRlZEJ5SmF2YVNjcmlwdAotICAgIH07Ci0gICAgCi0gICAgdHlwZWRlZiBWZWN0
b3I8c3RkOjpwYWlyPFN0cmluZywgU3RyaW5nPj4gU3RyaW5nUGFpclZlY3RvcjsKK2VudW0gRm9y
bVN1Ym1pc3Npb25UcmlnZ2VyIHsgU3VibWl0dGVkQnlKYXZhU2NyaXB0LCBOb3RTdWJtaXR0ZWRC
eUphdmFTY3JpcHQgfTsKIAotICAgIGNsYXNzIEZvcm1TdGF0ZSA6IHB1YmxpYyBSZWZDb3VudGVk
PEZvcm1TdGF0ZT4gewotICAgIHB1YmxpYzoKLSAgICAgICAgc3RhdGljIFJlZjxGb3JtU3RhdGU+
IGNyZWF0ZShQYXNzUmVmUHRyPEhUTUxGb3JtRWxlbWVudD4sIFN0cmluZ1BhaXJWZWN0b3ImIHRl
eHRGaWVsZFZhbHVlc1RvQWRvcHQsIFBhc3NSZWZQdHI8RG9jdW1lbnQ+LCBGb3JtU3VibWlzc2lv
blRyaWdnZXIpOwordXNpbmcgU3RyaW5nUGFpclZlY3RvciA9IFZlY3RvcjxzdGQ6OnBhaXI8U3Ry
aW5nLCBTdHJpbmc+PjsKIAotICAgICAgICBIVE1MRm9ybUVsZW1lbnQqIGZvcm0oKSBjb25zdCB7
IHJldHVybiBtX2Zvcm0uZ2V0KCk7IH0KLSAgICAgICAgY29uc3QgU3RyaW5nUGFpclZlY3RvciYg
dGV4dEZpZWxkVmFsdWVzKCkgY29uc3QgeyByZXR1cm4gbV90ZXh0RmllbGRWYWx1ZXM7IH0KLSAg
ICAgICAgRG9jdW1lbnQqIHNvdXJjZURvY3VtZW50KCkgY29uc3QgeyByZXR1cm4gbV9zb3VyY2VE
b2N1bWVudC5nZXQoKTsgfQotICAgICAgICBGb3JtU3VibWlzc2lvblRyaWdnZXIgZm9ybVN1Ym1p
c3Npb25UcmlnZ2VyKCkgY29uc3QgeyByZXR1cm4gbV9mb3JtU3VibWlzc2lvblRyaWdnZXI7IH0K
K2NsYXNzIEZvcm1TdGF0ZSA6IHB1YmxpYyBSZWZDb3VudGVkPEZvcm1TdGF0ZT4geworcHVibGlj
OgorICAgIHN0YXRpYyBSZWY8Rm9ybVN0YXRlPiBjcmVhdGUoSFRNTEZvcm1FbGVtZW50JiwgU3Ry
aW5nUGFpclZlY3RvciYmIHRleHRGaWVsZFZhbHVlcywgRG9jdW1lbnQmLCBGb3JtU3VibWlzc2lv
blRyaWdnZXIpOwogCi0gICAgcHJpdmF0ZToKLSAgICAgICAgRm9ybVN0YXRlKFBhc3NSZWZQdHI8
SFRNTEZvcm1FbGVtZW50PiwgU3RyaW5nUGFpclZlY3RvciYgdGV4dEZpZWxkVmFsdWVzVG9BZG9w
dCwgUGFzc1JlZlB0cjxEb2N1bWVudD4sIEZvcm1TdWJtaXNzaW9uVHJpZ2dlcik7CisgICAgSFRN
TEZvcm1FbGVtZW50JiBmb3JtKCkgY29uc3QgeyByZXR1cm4gbV9mb3JtOyB9CisgICAgY29uc3Qg
U3RyaW5nUGFpclZlY3RvciYgdGV4dEZpZWxkVmFsdWVzKCkgY29uc3QgeyByZXR1cm4gbV90ZXh0
RmllbGRWYWx1ZXM7IH0KKyAgICBEb2N1bWVudCYgc291cmNlRG9jdW1lbnQoKSBjb25zdCB7IHJl
dHVybiBtX3NvdXJjZURvY3VtZW50OyB9CisgICAgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIGZvcm1T
dWJtaXNzaW9uVHJpZ2dlcigpIGNvbnN0IHsgcmV0dXJuIG1fZm9ybVN1Ym1pc3Npb25UcmlnZ2Vy
OyB9CiAKLSAgICAgICAgUmVmUHRyPEhUTUxGb3JtRWxlbWVudD4gbV9mb3JtOwotICAgICAgICBT
dHJpbmdQYWlyVmVjdG9yIG1fdGV4dEZpZWxkVmFsdWVzOwotICAgICAgICBSZWZQdHI8RG9jdW1l
bnQ+IG1fc291cmNlRG9jdW1lbnQ7Ci0gICAgICAgIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciBtX2Zv
cm1TdWJtaXNzaW9uVHJpZ2dlcjsKLSAgICB9OworcHJpdmF0ZToKKyAgICBGb3JtU3RhdGUoSFRN
TEZvcm1FbGVtZW50JiwgU3RyaW5nUGFpclZlY3RvciYmIHRleHRGaWVsZFZhbHVlcywgRG9jdW1l
bnQmLCBGb3JtU3VibWlzc2lvblRyaWdnZXIpOworCisgICAgUmVmPEhUTUxGb3JtRWxlbWVudD4g
bV9mb3JtOworICAgIFN0cmluZ1BhaXJWZWN0b3IgbV90ZXh0RmllbGRWYWx1ZXM7CisgICAgUmVm
PERvY3VtZW50PiBtX3NvdXJjZURvY3VtZW50OworICAgIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciBt
X2Zvcm1TdWJtaXNzaW9uVHJpZ2dlcjsKK307CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3VibWlzc2lvbi5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN1Ym1pc3Npb24uY3BwCmluZGV4IDIwYWFmNGM0YzcyN2Fm
NjkyYjc5OGUyNjk2NWZiOTQwNDc4NmM5YjIuLjc3MDczNDNjNWMyMzc1OTc5N2JiY2JmMDQxNTM5
MjMwMzc5Zjc5YzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3VibWlz
c2lvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdWJtaXNzaW9uLmNwcApA
QCAtMTA2LDcgKzEwNiw3IEBAIHZvaWQgRm9ybVN1Ym1pc3Npb246OkF0dHJpYnV0ZXM6OnVwZGF0
ZUVuY29kaW5nVHlwZShjb25zdCBTdHJpbmcmIHR5cGUpCiAKIEZvcm1TdWJtaXNzaW9uOjpNZXRo
b2QgRm9ybVN1Ym1pc3Npb246OkF0dHJpYnV0ZXM6OnBhcnNlTWV0aG9kVHlwZShjb25zdCBTdHJp
bmcmIHR5cGUpCiB7Ci0gICAgcmV0dXJuIGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHR5
cGUsICJwb3N0IikgPyBGb3JtU3VibWlzc2lvbjo6UG9zdE1ldGhvZCA6IEZvcm1TdWJtaXNzaW9u
OjpHZXRNZXRob2Q7CisgICAgcmV0dXJuIGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHR5
cGUsICJwb3N0IikgPyBGb3JtU3VibWlzc2lvbjo6TWV0aG9kOjpQb3N0IDogRm9ybVN1Ym1pc3Np
b246Ok1ldGhvZDo6R2V0OwogfQogCiB2b2lkIEZvcm1TdWJtaXNzaW9uOjpBdHRyaWJ1dGVzOjp1
cGRhdGVNZXRob2RUeXBlKGNvbnN0IFN0cmluZyYgdHlwZSkKQEAgLTExNCwyNCArMTE0LDEzIEBA
IHZvaWQgRm9ybVN1Ym1pc3Npb246OkF0dHJpYnV0ZXM6OnVwZGF0ZU1ldGhvZFR5cGUoY29uc3Qg
U3RyaW5nJiB0eXBlKQogICAgIG1fbWV0aG9kID0gcGFyc2VNZXRob2RUeXBlKHR5cGUpOwogfQog
Ci12b2lkIEZvcm1TdWJtaXNzaW9uOjpBdHRyaWJ1dGVzOjpjb3B5RnJvbShjb25zdCBBdHRyaWJ1
dGVzJiBvdGhlcikKLXsKLSAgICBtX21ldGhvZCA9IG90aGVyLm1fbWV0aG9kOwotICAgIG1faXNN
dWx0aVBhcnRGb3JtID0gb3RoZXIubV9pc011bHRpUGFydEZvcm07Ci0KLSAgICBtX2FjdGlvbiA9
IG90aGVyLm1fYWN0aW9uOwotICAgIG1fdGFyZ2V0ID0gb3RoZXIubV90YXJnZXQ7Ci0gICAgbV9l
bmNvZGluZ1R5cGUgPSBvdGhlci5tX2VuY29kaW5nVHlwZTsKLSAgICBtX2FjY2VwdENoYXJzZXQg
PSBvdGhlci5tX2FjY2VwdENoYXJzZXQ7Ci19Ci0KLWlubGluZSBGb3JtU3VibWlzc2lvbjo6Rm9y
bVN1Ym1pc3Npb24oTWV0aG9kIG1ldGhvZCwgY29uc3QgVVJMJiBhY3Rpb24sIGNvbnN0IFN0cmlu
ZyYgdGFyZ2V0LCBjb25zdCBTdHJpbmcmIGNvbnRlbnRUeXBlLCBQYXNzUmVmUHRyPEZvcm1TdGF0
ZT4gc3RhdGUsIFBhc3NSZWZQdHI8Rm9ybURhdGE+IGRhdGEsIGNvbnN0IFN0cmluZyYgYm91bmRh
cnksIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBQYXNzUmVmUHRyPEV2ZW50PiBldmVudCkKK2lu
bGluZSBGb3JtU3VibWlzc2lvbjo6Rm9ybVN1Ym1pc3Npb24oTWV0aG9kIG1ldGhvZCwgY29uc3Qg
VVJMJiBhY3Rpb24sIGNvbnN0IFN0cmluZyYgdGFyZ2V0LCBjb25zdCBTdHJpbmcmIGNvbnRlbnRU
eXBlLCBSZWY8Rm9ybVN0YXRlPiYmIHN0YXRlLCBSZWY8Rm9ybURhdGE+JiYgZGF0YSwgY29uc3Qg
U3RyaW5nJiBib3VuZGFyeSwgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnksIEV2ZW50KiBldmVudCkK
ICAgICA6IG1fbWV0aG9kKG1ldGhvZCkKICAgICAsIG1fYWN0aW9uKGFjdGlvbikKICAgICAsIG1f
dGFyZ2V0KHRhcmdldCkKICAgICAsIG1fY29udGVudFR5cGUoY29udGVudFR5cGUpCi0gICAgLCBt
X2Zvcm1TdGF0ZShzdGF0ZSkKLSAgICAsIG1fZm9ybURhdGEoZGF0YSkKKyAgICAsIG1fZm9ybVN0
YXRlKFdURk1vdmUoc3RhdGUpKQorICAgICwgbV9mb3JtRGF0YShXVEZNb3ZlKGRhdGEpKQogICAg
ICwgbV9ib3VuZGFyeShib3VuZGFyeSkKICAgICAsIG1fbG9ja0hpc3RvcnkobG9ja0hpc3Rvcnkp
CiAgICAgLCBtX2V2ZW50KGV2ZW50KQpAQCAtMTU1LDEwICsxNDQsOCBAQCBzdGF0aWMgVGV4dEVu
Y29kaW5nIGVuY29kaW5nRnJvbUFjY2VwdENoYXJzZXQoY29uc3QgU3RyaW5nJiBhY2NlcHRDaGFy
c2V0LCBEb2N1bQogICAgIHJldHVybiBkb2N1bWVudC50ZXh0RW5jb2RpbmcoKTsKIH0KIAotUmVm
PEZvcm1TdWJtaXNzaW9uPiBGb3JtU3VibWlzc2lvbjo6Y3JlYXRlKEhUTUxGb3JtRWxlbWVudCog
Zm9ybSwgY29uc3QgQXR0cmlidXRlcyYgYXR0cmlidXRlcywgUGFzc1JlZlB0cjxFdmVudD4gZXZl
bnQsIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBGb3JtU3VibWlzc2lvblRyaWdnZXIgdHJpZ2dl
cikKK1JlZjxGb3JtU3VibWlzc2lvbj4gRm9ybVN1Ym1pc3Npb246OmNyZWF0ZShIVE1MRm9ybUVs
ZW1lbnQmIGZvcm0sIGNvbnN0IEF0dHJpYnV0ZXMmIGF0dHJpYnV0ZXMsIEV2ZW50KiBldmVudCwg
TG9ja0hpc3RvcnkgbG9ja0hpc3RvcnksIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciB0cmlnZ2VyKQog
ewotICAgIEFTU0VSVChmb3JtKTsKLQogICAgIEhUTUxGb3JtQ29udHJvbEVsZW1lbnQqIHN1Ym1p
dEJ1dHRvbiA9IG51bGxwdHI7CiAgICAgaWYgKGV2ZW50ICYmIGV2ZW50LT50YXJnZXQoKSkgewog
ICAgICAgICBmb3IgKE5vZGUqIG5vZGUgPSBldmVudC0+dGFyZ2V0KCktPnRvTm9kZSgpOyBub2Rl
OyBub2RlID0gbm9kZS0+cGFyZW50Tm9kZSgpKSB7CkBAIC0xNjksOCArMTU2LDcgQEAgUmVmPEZv
cm1TdWJtaXNzaW9uPiBGb3JtU3VibWlzc2lvbjo6Y3JlYXRlKEhUTUxGb3JtRWxlbWVudCogZm9y
bSwgY29uc3QgQXR0cmlidXQKICAgICAgICAgfQogICAgIH0KIAotICAgIEZvcm1TdWJtaXNzaW9u
OjpBdHRyaWJ1dGVzIGNvcGllZEF0dHJpYnV0ZXM7Ci0gICAgY29waWVkQXR0cmlidXRlcy5jb3B5
RnJvbShhdHRyaWJ1dGVzKTsKKyAgICBhdXRvIGNvcGllZEF0dHJpYnV0ZXMgPSBhdHRyaWJ1dGVz
OwogICAgIGlmIChzdWJtaXRCdXR0b24pIHsKICAgICAgICAgQXRvbWljU3RyaW5nIGF0dHJpYnV0
ZVZhbHVlOwogICAgICAgICBpZiAoIShhdHRyaWJ1dGVWYWx1ZSA9IHN1Ym1pdEJ1dHRvbi0+YXR0
cmlidXRlV2l0aG91dFN5bmNocm9uaXphdGlvbihmb3JtYWN0aW9uQXR0cikpLmlzTnVsbCgpKQpA
QCAtMTgzLDE1ICsxNjksMTUgQEAgUmVmPEZvcm1TdWJtaXNzaW9uPiBGb3JtU3VibWlzc2lvbjo6
Y3JlYXRlKEhUTUxGb3JtRWxlbWVudCogZm9ybSwgY29uc3QgQXR0cmlidXQKICAgICAgICAgICAg
IGNvcGllZEF0dHJpYnV0ZXMuc2V0VGFyZ2V0KGF0dHJpYnV0ZVZhbHVlKTsKICAgICB9CiAgICAg
Ci0gICAgRG9jdW1lbnQmIGRvY3VtZW50ID0gZm9ybS0+ZG9jdW1lbnQoKTsKLSAgICBVUkwgYWN0
aW9uVVJMID0gZG9jdW1lbnQuY29tcGxldGVVUkwoY29waWVkQXR0cmlidXRlcy5hY3Rpb24oKS5p
c0VtcHR5KCkgPyBkb2N1bWVudC51cmwoKS5zdHJpbmcoKSA6IGNvcGllZEF0dHJpYnV0ZXMuYWN0
aW9uKCkpOworICAgIGF1dG8mIGRvY3VtZW50ID0gZm9ybS5kb2N1bWVudCgpOworICAgIGF1dG8g
YWN0aW9uVVJMID0gZG9jdW1lbnQuY29tcGxldGVVUkwoY29waWVkQXR0cmlidXRlcy5hY3Rpb24o
KS5pc0VtcHR5KCkgPyBkb2N1bWVudC51cmwoKS5zdHJpbmcoKSA6IGNvcGllZEF0dHJpYnV0ZXMu
YWN0aW9uKCkpOwogICAgIGJvb2wgaXNNYWlsdG9Gb3JtID0gYWN0aW9uVVJMLnByb3RvY29sSXMo
Im1haWx0byIpOwogICAgIGJvb2wgaXNNdWx0aVBhcnRGb3JtID0gZmFsc2U7Ci0gICAgU3RyaW5n
IGVuY29kaW5nVHlwZSA9IGNvcGllZEF0dHJpYnV0ZXMuZW5jb2RpbmdUeXBlKCk7CisgICAgYXV0
byBlbmNvZGluZ1R5cGUgPSBjb3BpZWRBdHRyaWJ1dGVzLmVuY29kaW5nVHlwZSgpOwogCiAgICAg
ZG9jdW1lbnQuY29udGVudFNlY3VyaXR5UG9saWN5KCktPnVwZ3JhZGVJbnNlY3VyZVJlcXVlc3RJ
Zk5lZWRlZChhY3Rpb25VUkwsIENvbnRlbnRTZWN1cml0eVBvbGljeTo6SW5zZWN1cmVSZXF1ZXN0
VHlwZTo6Rm9ybVN1Ym1pc3Npb24pOwogCi0gICAgaWYgKGNvcGllZEF0dHJpYnV0ZXMubWV0aG9k
KCkgPT0gUG9zdE1ldGhvZCkgeworICAgIGlmIChjb3BpZWRBdHRyaWJ1dGVzLm1ldGhvZCgpID09
IE1ldGhvZDo6UG9zdCkgewogICAgICAgICBpc011bHRpUGFydEZvcm0gPSBjb3BpZWRBdHRyaWJ1
dGVzLmlzTXVsdGlQYXJ0Rm9ybSgpOwogICAgICAgICBpZiAoaXNNdWx0aVBhcnRGb3JtICYmIGlz
TWFpbHRvRm9ybSkgewogICAgICAgICAgICAgZW5jb2RpbmdUeXBlID0gImFwcGxpY2F0aW9uL3gt
d3d3LWZvcm0tdXJsZW5jb2RlZCI7CkBAIC0xOTksMTkgKzE4NSwxOSBAQCBSZWY8Rm9ybVN1Ym1p
c3Npb24+IEZvcm1TdWJtaXNzaW9uOjpjcmVhdGUoSFRNTEZvcm1FbGVtZW50KiBmb3JtLCBjb25z
dCBBdHRyaWJ1dAogICAgICAgICB9CiAgICAgfQogCi0gICAgVGV4dEVuY29kaW5nIGRhdGFFbmNv
ZGluZyA9IGlzTWFpbHRvRm9ybSA/IFVURjhFbmNvZGluZygpIDogZW5jb2RpbmdGcm9tQWNjZXB0
Q2hhcnNldChjb3BpZWRBdHRyaWJ1dGVzLmFjY2VwdENoYXJzZXQoKSwgZG9jdW1lbnQpOwotICAg
IFJlZlB0cjxET01Gb3JtRGF0YT4gZG9tRm9ybURhdGEgPSBET01Gb3JtRGF0YTo6Y3JlYXRlKGRh
dGFFbmNvZGluZy5lbmNvZGluZ0ZvckZvcm1TdWJtaXNzaW9uKCkpOwotICAgIFZlY3RvcjxzdGQ6
OnBhaXI8U3RyaW5nLCBTdHJpbmc+PiBmb3JtVmFsdWVzOworICAgIGF1dG8gZGF0YUVuY29kaW5n
ID0gaXNNYWlsdG9Gb3JtID8gVVRGOEVuY29kaW5nKCkgOiBlbmNvZGluZ0Zyb21BY2NlcHRDaGFy
c2V0KGNvcGllZEF0dHJpYnV0ZXMuYWNjZXB0Q2hhcnNldCgpLCBkb2N1bWVudCk7CisgICAgYXV0
byBkb21Gb3JtRGF0YSA9IERPTUZvcm1EYXRhOjpjcmVhdGUoZGF0YUVuY29kaW5nLmVuY29kaW5n
Rm9yRm9ybVN1Ym1pc3Npb24oKSk7CisgICAgU3RyaW5nUGFpclZlY3RvciBmb3JtVmFsdWVzOwog
CiAgICAgYm9vbCBjb250YWluc1Bhc3N3b3JkRGF0YSA9IGZhbHNlOwotICAgIGZvciAoYXV0byYg
Y29udHJvbCA6IGZvcm0tPmFzc29jaWF0ZWRFbGVtZW50cygpKSB7Ci0gICAgICAgIEhUTUxFbGVt
ZW50JiBlbGVtZW50ID0gY29udHJvbC0+YXNIVE1MRWxlbWVudCgpOworICAgIGZvciAoYXV0byYg
Y29udHJvbCA6IGZvcm0uYXNzb2NpYXRlZEVsZW1lbnRzKCkpIHsKKyAgICAgICAgYXV0byYgZWxl
bWVudCA9IGNvbnRyb2wtPmFzSFRNTEVsZW1lbnQoKTsKICAgICAgICAgaWYgKCFlbGVtZW50Lmlz
RGlzYWJsZWRGb3JtQ29udHJvbCgpKQotICAgICAgICAgICAgY29udHJvbC0+YXBwZW5kRm9ybURh
dGEoKmRvbUZvcm1EYXRhLCBpc011bHRpUGFydEZvcm0pOworICAgICAgICAgICAgY29udHJvbC0+
YXBwZW5kRm9ybURhdGEoZG9tRm9ybURhdGEsIGlzTXVsdGlQYXJ0Rm9ybSk7CiAgICAgICAgIGlm
IChpczxIVE1MSW5wdXRFbGVtZW50PihlbGVtZW50KSkgewotICAgICAgICAgICAgSFRNTElucHV0
RWxlbWVudCYgaW5wdXQgPSBkb3duY2FzdDxIVE1MSW5wdXRFbGVtZW50PihlbGVtZW50KTsKKyAg
ICAgICAgICAgIGF1dG8mIGlucHV0ID0gZG93bmNhc3Q8SFRNTElucHV0RWxlbWVudD4oZWxlbWVu
dCk7CiAgICAgICAgICAgICBpZiAoaW5wdXQuaXNUZXh0RmllbGQoKSkgewotICAgICAgICAgICAg
ICAgIGZvcm1WYWx1ZXMuYXBwZW5kKHN0ZDo6cGFpcjxTdHJpbmcsIFN0cmluZz4oaW5wdXQubmFt
ZSgpLnN0cmluZygpLCBpbnB1dC52YWx1ZSgpKSk7CisgICAgICAgICAgICAgICAgZm9ybVZhbHVl
cy5hcHBlbmQoeyBpbnB1dC5uYW1lKCkuc3RyaW5nKCksIGlucHV0LnZhbHVlKCkgfSk7CiAgICAg
ICAgICAgICAgICAgaW5wdXQuYWRkU2VhcmNoUmVzdWx0KCk7CiAgICAgICAgICAgICB9CiAgICAg
ICAgICAgICBpZiAoaW5wdXQuaXNQYXNzd29yZEZpZWxkKCkgJiYgIWlucHV0LnZhbHVlKCkuaXNF
bXB0eSgpKQpAQCAtMjIzLDExICsyMDksMTEgQEAgUmVmPEZvcm1TdWJtaXNzaW9uPiBGb3JtU3Vi
bWlzc2lvbjo6Y3JlYXRlKEhUTUxGb3JtRWxlbWVudCogZm9ybSwgY29uc3QgQXR0cmlidXQKICAg
ICBTdHJpbmcgYm91bmRhcnk7CiAKICAgICBpZiAoaXNNdWx0aVBhcnRGb3JtKSB7Ci0gICAgICAg
IGZvcm1EYXRhID0gRm9ybURhdGE6OmNyZWF0ZU11bHRpUGFydCgqKHN0YXRpY19jYXN0PEZvcm1E
YXRhTGlzdCo+KGRvbUZvcm1EYXRhLmdldCgpKSksIGRvbUZvcm1EYXRhLT5lbmNvZGluZygpLCAm
ZG9jdW1lbnQpOworICAgICAgICBmb3JtRGF0YSA9IEZvcm1EYXRhOjpjcmVhdGVNdWx0aVBhcnQo
ZG9tRm9ybURhdGEsIGRvbUZvcm1EYXRhLT5lbmNvZGluZygpLCAmZG9jdW1lbnQpOwogICAgICAg
ICBib3VuZGFyeSA9IGZvcm1EYXRhLT5ib3VuZGFyeSgpLmRhdGEoKTsKICAgICB9IGVsc2Ugewot
ICAgICAgICBmb3JtRGF0YSA9IEZvcm1EYXRhOjpjcmVhdGUoKihzdGF0aWNfY2FzdDxGb3JtRGF0
YUxpc3QqPihkb21Gb3JtRGF0YS5nZXQoKSkpLCBkb21Gb3JtRGF0YS0+ZW5jb2RpbmcoKSwgYXR0
cmlidXRlcy5tZXRob2QoKSA9PSBHZXRNZXRob2QgPyBGb3JtRGF0YTo6Rm9ybVVSTEVuY29kZWQg
OiBGb3JtRGF0YTo6cGFyc2VFbmNvZGluZ1R5cGUoZW5jb2RpbmdUeXBlKSk7Ci0gICAgICAgIGlm
IChjb3BpZWRBdHRyaWJ1dGVzLm1ldGhvZCgpID09IFBvc3RNZXRob2QgJiYgaXNNYWlsdG9Gb3Jt
KSB7CisgICAgICAgIGZvcm1EYXRhID0gRm9ybURhdGE6OmNyZWF0ZShkb21Gb3JtRGF0YSwgZG9t
Rm9ybURhdGEtPmVuY29kaW5nKCksIGF0dHJpYnV0ZXMubWV0aG9kKCkgPT0gTWV0aG9kOjpHZXQg
PyBGb3JtRGF0YTo6Rm9ybVVSTEVuY29kZWQgOiBGb3JtRGF0YTo6cGFyc2VFbmNvZGluZ1R5cGUo
ZW5jb2RpbmdUeXBlKSk7CisgICAgICAgIGlmIChjb3BpZWRBdHRyaWJ1dGVzLm1ldGhvZCgpID09
IE1ldGhvZDo6UG9zdCAmJiBpc01haWx0b0Zvcm0pIHsKICAgICAgICAgICAgIC8vIENvbnZlcnQg
dGhlIGZvcm0gZGF0YSBpbnRvIGEgc3RyaW5nIHRoYXQgd2UgcHV0IGludG8gdGhlIFVSTC4KICAg
ICAgICAgICAgIGFwcGVuZE1haWx0b1Bvc3RGb3JtRGF0YVRvVVJMKGFjdGlvblVSTCwgKmZvcm1E
YXRhLCBlbmNvZGluZ1R5cGUpOwogICAgICAgICAgICAgZm9ybURhdGEgPSBGb3JtRGF0YTo6Y3Jl
YXRlKCk7CkBAIC0yMzYsMTQgKzIyMiwxNyBAQCBSZWY8Rm9ybVN1Ym1pc3Npb24+IEZvcm1TdWJt
aXNzaW9uOjpjcmVhdGUoSFRNTEZvcm1FbGVtZW50KiBmb3JtLCBjb25zdCBBdHRyaWJ1dAogCiAg
ICAgZm9ybURhdGEtPnNldElkZW50aWZpZXIoZ2VuZXJhdGVGb3JtRGF0YUlkZW50aWZpZXIoKSk7
CiAgICAgZm9ybURhdGEtPnNldENvbnRhaW5zUGFzc3dvcmREYXRhKGNvbnRhaW5zUGFzc3dvcmRE
YXRhKTsKKwogICAgIFN0cmluZyB0YXJnZXRPckJhc2VUYXJnZXQgPSBjb3BpZWRBdHRyaWJ1dGVz
LnRhcmdldCgpLmlzRW1wdHkoKSA/IGRvY3VtZW50LmJhc2VUYXJnZXQoKSA6IGNvcGllZEF0dHJp
YnV0ZXMudGFyZ2V0KCk7Ci0gICAgYXV0byBmb3JtU3RhdGUgPSBGb3JtU3RhdGU6OmNyZWF0ZShm
b3JtLCBmb3JtVmFsdWVzLCAmZG9jdW1lbnQsIHRyaWdnZXIpOwotICAgIHJldHVybiBhZG9wdFJl
ZigqbmV3IEZvcm1TdWJtaXNzaW9uKGNvcGllZEF0dHJpYnV0ZXMubWV0aG9kKCksIGFjdGlvblVS
TCwgdGFyZ2V0T3JCYXNlVGFyZ2V0LCBlbmNvZGluZ1R5cGUsIFdURk1vdmUoZm9ybVN0YXRlKSwg
V1RGTW92ZShmb3JtRGF0YSksIGJvdW5kYXJ5LCBsb2NrSGlzdG9yeSwgZXZlbnQpKTsKKworICAg
IGF1dG8gZm9ybVN0YXRlID0gRm9ybVN0YXRlOjpjcmVhdGUoZm9ybSwgV1RGTW92ZShmb3JtVmFs
dWVzKSwgZG9jdW1lbnQsIHRyaWdnZXIpOworCisgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRm9y
bVN1Ym1pc3Npb24oY29waWVkQXR0cmlidXRlcy5tZXRob2QoKSwgYWN0aW9uVVJMLCB0YXJnZXRP
ckJhc2VUYXJnZXQsIGVuY29kaW5nVHlwZSwgV1RGTW92ZShmb3JtU3RhdGUpLCBmb3JtRGF0YS5y
ZWxlYXNlTm9uTnVsbCgpLCBib3VuZGFyeSwgbG9ja0hpc3RvcnksIGV2ZW50KSk7CiB9CiAKIFVS
TCBGb3JtU3VibWlzc2lvbjo6cmVxdWVzdFVSTCgpIGNvbnN0CiB7Ci0gICAgaWYgKG1fbWV0aG9k
ID09IEZvcm1TdWJtaXNzaW9uOjpQb3N0TWV0aG9kKQorICAgIGlmIChtX21ldGhvZCA9PSBNZXRo
b2Q6OlBvc3QpCiAgICAgICAgIHJldHVybiBtX2FjdGlvbjsKIAogICAgIFVSTCByZXF1ZXN0VVJM
KG1fYWN0aW9uKTsKQEAgLTI1OSw3ICsyNDgsNyBAQCB2b2lkIEZvcm1TdWJtaXNzaW9uOjpwb3B1
bGF0ZUZyYW1lTG9hZFJlcXVlc3QoRnJhbWVMb2FkUmVxdWVzdCYgZnJhbWVSZXF1ZXN0KQogICAg
IGlmICghbV9yZWZlcnJlci5pc0VtcHR5KCkpCiAgICAgICAgIGZyYW1lUmVxdWVzdC5yZXNvdXJj
ZVJlcXVlc3QoKS5zZXRIVFRQUmVmZXJyZXIobV9yZWZlcnJlcik7CiAKLSAgICBpZiAobV9tZXRo
b2QgPT0gRm9ybVN1Ym1pc3Npb246OlBvc3RNZXRob2QpIHsKKyAgICBpZiAobV9tZXRob2QgPT0g
TWV0aG9kOjpQb3N0KSB7CiAgICAgICAgIGZyYW1lUmVxdWVzdC5yZXNvdXJjZVJlcXVlc3QoKS5z
ZXRIVFRQTWV0aG9kKCJQT1NUIik7CiAgICAgICAgIGZyYW1lUmVxdWVzdC5yZXNvdXJjZVJlcXVl
c3QoKS5zZXRIVFRQQm9keShtX2Zvcm1EYXRhLmNvcHlSZWYoKSk7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3VibWlzc2lvbi5oIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0Zvcm1TdWJtaXNzaW9uLmgKaW5kZXggNDFiMzdlMDY0MmIxOGE4MGUxNjRmMDU2NmJlZjg4
ZDJkMTBlN2VmOC4uMjUyNDEyYzBjMDJiMzliZDllOGI0NTFhYzc1MzVhNDU3MzU0NzZhMCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdWJtaXNzaW9uLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdWJtaXNzaW9uLmgKQEAgLTM2LDMxICszNiwyMSBAQAog
CiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIERvY3VtZW50OwogY2xhc3MgRXZlbnQ7CiBj
bGFzcyBGb3JtRGF0YTsKKwogc3RydWN0IEZyYW1lTG9hZFJlcXVlc3Q7Ci1jbGFzcyBIVE1MRm9y
bUVsZW1lbnQ7Ci1jbGFzcyBUZXh0RW5jb2Rpbmc7CiAKIGNsYXNzIEZvcm1TdWJtaXNzaW9uIDog
cHVibGljIFJlZkNvdW50ZWQ8Rm9ybVN1Ym1pc3Npb24+IHsKIHB1YmxpYzoKLSAgICBlbnVtIE1l
dGhvZCB7IEdldE1ldGhvZCwgUG9zdE1ldGhvZCB9OworICAgIGVudW0gY2xhc3MgTWV0aG9kIHsg
R2V0LCBQb3N0IH07CiAKICAgICBjbGFzcyBBdHRyaWJ1dGVzIHsKLSAgICAgICAgV1RGX01BS0Vf
Tk9OQ09QWUFCTEUoQXR0cmlidXRlcyk7CiAgICAgcHVibGljOgotICAgICAgICBBdHRyaWJ1dGVz
KCkKLSAgICAgICAgICAgIDogbV9tZXRob2QoR2V0TWV0aG9kKQotICAgICAgICAgICAgLCBtX2lz
TXVsdGlQYXJ0Rm9ybShmYWxzZSkKLSAgICAgICAgICAgICwgbV9lbmNvZGluZ1R5cGUoImFwcGxp
Y2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIpCi0gICAgICAgIHsKLSAgICAgICAgfQotCiAg
ICAgICAgIE1ldGhvZCBtZXRob2QoKSBjb25zdCB7IHJldHVybiBtX21ldGhvZDsgfQogICAgICAg
ICBzdGF0aWMgTWV0aG9kIHBhcnNlTWV0aG9kVHlwZShjb25zdCBTdHJpbmcmKTsKICAgICAgICAg
dm9pZCB1cGRhdGVNZXRob2RUeXBlKGNvbnN0IFN0cmluZyYpOwotICAgICAgICBzdGF0aWMgU3Ry
aW5nIG1ldGhvZFN0cmluZyhNZXRob2QgbWV0aG9kKSB7IHJldHVybiBtZXRob2QgPT0gUG9zdE1l
dGhvZCA/ICJwb3N0IiA6ICJnZXQiOyB9CisgICAgICAgIHN0YXRpYyBBU0NJSUxpdGVyYWwgbWV0
aG9kU3RyaW5nKE1ldGhvZCBtZXRob2QpIHsgcmV0dXJuIEFTQ0lJTGl0ZXJhbCB7IG1ldGhvZCA9
PSBNZXRob2Q6OlBvc3QgPyAicG9zdCIgOiAiZ2V0IiB9OyB9CiAKICAgICAgICAgY29uc3QgU3Ry
aW5nJiBhY3Rpb24oKSBjb25zdCB7IHJldHVybiBtX2FjdGlvbjsgfQogICAgICAgICB2b2lkIHBh
cnNlQWN0aW9uKGNvbnN0IFN0cmluZyYpOwpAQCAtNzYsNTAgKzY2LDQ2IEBAIHB1YmxpYzoKICAg
ICAgICAgY29uc3QgU3RyaW5nJiBhY2NlcHRDaGFyc2V0KCkgY29uc3QgeyByZXR1cm4gbV9hY2Nl
cHRDaGFyc2V0OyB9CiAgICAgICAgIHZvaWQgc2V0QWNjZXB0Q2hhcnNldChjb25zdCBTdHJpbmcm
IHZhbHVlKSB7IG1fYWNjZXB0Q2hhcnNldCA9IHZhbHVlOyB9CiAKLSAgICAgICAgdm9pZCBjb3B5
RnJvbShjb25zdCBBdHRyaWJ1dGVzJik7Ci0KICAgICBwcml2YXRlOgotICAgICAgICBNZXRob2Qg
bV9tZXRob2Q7Ci0gICAgICAgIGJvb2wgbV9pc011bHRpUGFydEZvcm07Ci0KKyAgICAgICAgTWV0
aG9kIG1fbWV0aG9kIHsgTWV0aG9kOjpHZXQgfTsKKyAgICAgICAgYm9vbCBtX2lzTXVsdGlQYXJ0
Rm9ybSB7IGZhbHNlIH07CiAgICAgICAgIFN0cmluZyBtX2FjdGlvbjsKICAgICAgICAgU3RyaW5n
IG1fdGFyZ2V0OwotICAgICAgICBTdHJpbmcgbV9lbmNvZGluZ1R5cGU7CisgICAgICAgIFN0cmlu
ZyBtX2VuY29kaW5nVHlwZSB7IEFTQ0lJTGl0ZXJhbCB7ICJhcHBsaWNhdGlvbi94LXd3dy1mb3Jt
LXVybGVuY29kZWQiIH0gfTsKICAgICAgICAgU3RyaW5nIG1fYWNjZXB0Q2hhcnNldDsKICAgICB9
OwogCi0gICAgc3RhdGljIFJlZjxGb3JtU3VibWlzc2lvbj4gY3JlYXRlKEhUTUxGb3JtRWxlbWVu
dCosIGNvbnN0IEF0dHJpYnV0ZXMmLCBQYXNzUmVmUHRyPEV2ZW50PiBldmVudCwgTG9ja0hpc3Rv
cnksIEZvcm1TdWJtaXNzaW9uVHJpZ2dlcik7CisgICAgc3RhdGljIFJlZjxGb3JtU3VibWlzc2lv
bj4gY3JlYXRlKEhUTUxGb3JtRWxlbWVudCYsIGNvbnN0IEF0dHJpYnV0ZXMmLCBFdmVudCosIExv
Y2tIaXN0b3J5LCBGb3JtU3VibWlzc2lvblRyaWdnZXIpOwogCiAgICAgdm9pZCBwb3B1bGF0ZUZy
YW1lTG9hZFJlcXVlc3QoRnJhbWVMb2FkUmVxdWVzdCYpOwotICAgIAogICAgIFVSTCByZXF1ZXN0
VVJMKCkgY29uc3Q7CiAKICAgICBNZXRob2QgbWV0aG9kKCkgY29uc3QgeyByZXR1cm4gbV9tZXRo
b2Q7IH0KICAgICBjb25zdCBVUkwmIGFjdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fYWN0aW9uOyB9
CiAgICAgY29uc3QgU3RyaW5nJiB0YXJnZXQoKSBjb25zdCB7IHJldHVybiBtX3RhcmdldDsgfQot
ICAgIHZvaWQgY2xlYXJUYXJnZXQoKSB7IG1fdGFyZ2V0ID0gU3RyaW5nKCk7IH0KICAgICBjb25z
dCBTdHJpbmcmIGNvbnRlbnRUeXBlKCkgY29uc3QgeyByZXR1cm4gbV9jb250ZW50VHlwZTsgfQot
ICAgIEZvcm1TdGF0ZSogc3RhdGUoKSBjb25zdCB7IHJldHVybiBtX2Zvcm1TdGF0ZS5nZXQoKTsg
fQotICAgIEZvcm1EYXRhKiBkYXRhKCkgY29uc3QgeyByZXR1cm4gbV9mb3JtRGF0YS5nZXQoKTsg
fQorICAgIEZvcm1TdGF0ZSYgc3RhdGUoKSBjb25zdCB7IHJldHVybiBtX2Zvcm1TdGF0ZTsgfQor
ICAgIEZvcm1EYXRhJiBkYXRhKCkgY29uc3QgeyByZXR1cm4gbV9mb3JtRGF0YTsgfQogICAgIGNv
bnN0IFN0cmluZyBib3VuZGFyeSgpIGNvbnN0IHsgcmV0dXJuIG1fYm91bmRhcnk7IH0KICAgICBM
b2NrSGlzdG9yeSBsb2NrSGlzdG9yeSgpIGNvbnN0IHsgcmV0dXJuIG1fbG9ja0hpc3Rvcnk7IH0K
ICAgICBFdmVudCogZXZlbnQoKSBjb25zdCB7IHJldHVybiBtX2V2ZW50LmdldCgpOyB9Ci0KICAg
ICBjb25zdCBTdHJpbmcmIHJlZmVycmVyKCkgY29uc3QgeyByZXR1cm4gbV9yZWZlcnJlcjsgfQot
ICAgIHZvaWQgc2V0UmVmZXJyZXIoY29uc3QgU3RyaW5nJiByZWZlcnJlcikgeyBtX3JlZmVycmVy
ID0gcmVmZXJyZXI7IH0KICAgICBjb25zdCBTdHJpbmcmIG9yaWdpbigpIGNvbnN0IHsgcmV0dXJu
IG1fb3JpZ2luOyB9CisKKyAgICB2b2lkIGNsZWFyVGFyZ2V0KCkgeyBtX3RhcmdldCA9IHsgfTsg
fQorICAgIHZvaWQgc2V0UmVmZXJyZXIoY29uc3QgU3RyaW5nJiByZWZlcnJlcikgeyBtX3JlZmVy
cmVyID0gcmVmZXJyZXI7IH0KICAgICB2b2lkIHNldE9yaWdpbihjb25zdCBTdHJpbmcmIG9yaWdp
bikgeyBtX29yaWdpbiA9IG9yaWdpbjsgfQogCiBwcml2YXRlOgotICAgIEZvcm1TdWJtaXNzaW9u
KE1ldGhvZCwgY29uc3QgVVJMJiBhY3Rpb24sIGNvbnN0IFN0cmluZyYgdGFyZ2V0LCBjb25zdCBT
dHJpbmcmIGNvbnRlbnRUeXBlLCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIFBhc3NSZWZQdHI8Rm9y
bURhdGE+LCBjb25zdCBTdHJpbmcmIGJvdW5kYXJ5LCBMb2NrSGlzdG9yeSwgUGFzc1JlZlB0cjxF
dmVudD4pOworICAgIEZvcm1TdWJtaXNzaW9uKE1ldGhvZCwgY29uc3QgVVJMJiBhY3Rpb24sIGNv
bnN0IFN0cmluZyYgdGFyZ2V0LCBjb25zdCBTdHJpbmcmIGNvbnRlbnRUeXBlLCBSZWY8Rm9ybVN0
YXRlPiYmLCBSZWY8Rm9ybURhdGE+JiYsIGNvbnN0IFN0cmluZyYgYm91bmRhcnksIExvY2tIaXN0
b3J5LCBFdmVudCopOwogCiAgICAgLy8gRklYTUU6IEhvbGQgYW4gaW5zdGFuY2Ugb2YgQXR0cmli
dXRlcyBpbnN0ZWFkIG9mIGluZGl2aWR1YWwgbWVtYmVycy4KICAgICBNZXRob2QgbV9tZXRob2Q7
CiAgICAgVVJMIG1fYWN0aW9uOwogICAgIFN0cmluZyBtX3RhcmdldDsKICAgICBTdHJpbmcgbV9j
b250ZW50VHlwZTsKLSAgICBSZWZQdHI8Rm9ybVN0YXRlPiBtX2Zvcm1TdGF0ZTsKLSAgICBSZWZQ
dHI8Rm9ybURhdGE+IG1fZm9ybURhdGE7CisgICAgUmVmPEZvcm1TdGF0ZT4gbV9mb3JtU3RhdGU7
CisgICAgUmVmPEZvcm1EYXRhPiBtX2Zvcm1EYXRhOwogICAgIFN0cmluZyBtX2JvdW5kYXJ5Owog
ICAgIExvY2tIaXN0b3J5IG1fbG9ja0hpc3Rvcnk7CiAgICAgUmVmUHRyPEV2ZW50PiBtX2V2ZW50
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAKaW5kZXggNGNmZWJlZjExZmJlZDM3
Mzg5MTExYjJiMWI0NGY4ZTZmZDc0NDM0My4uZTVjYzg5NTVkMzZkNGIwOTg0NDU3NTI1ZDc5MWRk
YzIzY2EzOTJiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCkBAIC0zNjYs
MTcgKzM2NiwxNSBAQCB2b2lkIEZyYW1lTG9hZGVyOjp1cmxTZWxlY3RlZChjb25zdCBGcmFtZUxv
YWRSZXF1ZXN0JiBwYXNzZWRSZXF1ZXN0LCBFdmVudCogdHJpZwogCiB2b2lkIEZyYW1lTG9hZGVy
OjpzdWJtaXRGb3JtKFJlZjxGb3JtU3VibWlzc2lvbj4mJiBzdWJtaXNzaW9uKQogewotICAgIEFT
U0VSVChzdWJtaXNzaW9uLT5tZXRob2QoKSA9PSBGb3JtU3VibWlzc2lvbjo6UG9zdE1ldGhvZCB8
fCBzdWJtaXNzaW9uLT5tZXRob2QoKSA9PSBGb3JtU3VibWlzc2lvbjo6R2V0TWV0aG9kKTsKKyAg
ICBBU1NFUlQoc3VibWlzc2lvbi0+bWV0aG9kKCkgPT0gRm9ybVN1Ym1pc3Npb246Ok1ldGhvZDo6
UG9zdCB8fCBzdWJtaXNzaW9uLT5tZXRob2QoKSA9PSBGb3JtU3VibWlzc2lvbjo6TWV0aG9kOjpH
ZXQpOwogCiAgICAgLy8gRklYTUU6IEZpbmQgYSBnb29kIHNwb3QgZm9yIHRoZXNlLgotICAgIEFT
U0VSVChzdWJtaXNzaW9uLT5kYXRhKCkpOwotICAgIEFTU0VSVChzdWJtaXNzaW9uLT5zdGF0ZSgp
KTsKLSAgICBBU1NFUlQoIXN1Ym1pc3Npb24tPnN0YXRlKCktPnNvdXJjZURvY3VtZW50KCktPmZy
YW1lKCkgfHwgc3VibWlzc2lvbi0+c3RhdGUoKS0+c291cmNlRG9jdW1lbnQoKS0+ZnJhbWUoKSA9
PSAmbV9mcmFtZSk7CisgICAgQVNTRVJUKCFzdWJtaXNzaW9uLT5zdGF0ZSgpLnNvdXJjZURvY3Vt
ZW50KCkuZnJhbWUoKSB8fCBzdWJtaXNzaW9uLT5zdGF0ZSgpLnNvdXJjZURvY3VtZW50KCkuZnJh
bWUoKSA9PSAmbV9mcmFtZSk7CiAKICAgICBpZiAoIW1fZnJhbWUucGFnZSgpKQogICAgICAgICBy
ZXR1cm47CiAKLSAgICBpZiAoc3VibWlzc2lvbi0+c3RhdGUoKS0+c291cmNlRG9jdW1lbnQoKS0+
cGFnZUNhY2hlU3RhdGUoKSAhPSBEb2N1bWVudDo6Tm90SW5QYWdlQ2FjaGUpCisgICAgaWYgKHN1
Ym1pc3Npb24tPnN0YXRlKCkuc291cmNlRG9jdW1lbnQoKS5wYWdlQ2FjaGVTdGF0ZSgpICE9IERv
Y3VtZW50OjpOb3RJblBhZ2VDYWNoZSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKHN1Ym1p
c3Npb24tPmFjdGlvbigpLmlzRW1wdHkoKSkKQEAgLTM5OCwxMiArMzk2LDEyIEBAIHZvaWQgRnJh
bWVMb2FkZXI6OnN1Ym1pdEZvcm0oUmVmPEZvcm1TdWJtaXNzaW9uPiYmIHN1Ym1pc3Npb24pCiAg
ICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBGcmFtZSogdGFyZ2V0RnJhbWUgPSBmaW5kRnJh
bWVGb3JOYXZpZ2F0aW9uKHN1Ym1pc3Npb24tPnRhcmdldCgpLCBzdWJtaXNzaW9uLT5zdGF0ZSgp
LT5zb3VyY2VEb2N1bWVudCgpKTsKKyAgICBGcmFtZSogdGFyZ2V0RnJhbWUgPSBmaW5kRnJhbWVG
b3JOYXZpZ2F0aW9uKHN1Ym1pc3Npb24tPnRhcmdldCgpLCAmc3VibWlzc2lvbi0+c3RhdGUoKS5z
b3VyY2VEb2N1bWVudCgpKTsKICAgICBpZiAoIXRhcmdldEZyYW1lKSB7CiAgICAgICAgIGlmICgh
RE9NV2luZG93OjphbGxvd1BvcFVwKCZtX2ZyYW1lKSAmJiAhU2NyaXB0Q29udHJvbGxlcjo6cHJv
Y2Vzc2luZ1VzZXJHZXN0dXJlKCkpCiAgICAgICAgICAgICByZXR1cm47CiAKLSAgICAgICAgLy8g
RklYTUU6IHRhcmdldEZyYW1lIGNhbiBiZSAwIGZvciB0d28gZGlzdGluY3QgcmVhc29uczoKKyAg
ICAgICAgLy8gRklYTUU6IHRhcmdldEZyYW1lIGNhbiBiZSBudWxsIGZvciB0d28gZGlzdGluY3Qg
cmVhc29uczoKICAgICAgICAgLy8gMS4gVGhlIGZyYW1lIHdhcyBub3QgZm91bmQgYnkgbmFtZSwg
c28gd2Ugc2hvdWxkIHRyeSBvcGVuaW5nIGEgbmV3IHdpbmRvdy4KICAgICAgICAgLy8gMi4gVGhl
IGZyYW1lIHdhcyBmb3VuZCwgYnV0IG5hdmlnYXRpbmcgaXQgd2FzIG5vdCBhbGxvd2VkLCBlLmcu
IGJ5IEhUTUw1IHNhbmRib3ggb3IgYnkgb3JpZ2luIGNoZWNrcy4KICAgICAgICAgLy8gQ29udGlu
dWluZyBmb3JtIHN1Ym1pc3Npb24gbWFrZXMgbm8gc2Vuc2UgaW4gdGhlIGxhdHRlciBjYXNlLgpA
QCAtNDM0LDcgKzQzMiw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6OnN1Ym1pdEZvcm0oUmVmPEZvcm1T
dWJtaXNzaW9uPiYmIHN1Ym1pc3Npb24pCiAgICAgICAgIG1fc3VibWl0dGVkRm9ybVVSTCA9IHN1
Ym1pc3Npb24tPnJlcXVlc3RVUkwoKTsKICAgICB9CiAKLSAgICBzdWJtaXNzaW9uLT5kYXRhKCkt
PmdlbmVyYXRlRmlsZXMobV9mcmFtZS5kb2N1bWVudCgpKTsKKyAgICBzdWJtaXNzaW9uLT5kYXRh
KCkuZ2VuZXJhdGVGaWxlcyhtX2ZyYW1lLmRvY3VtZW50KCkpOwogICAgIHN1Ym1pc3Npb24tPnNl
dFJlZmVycmVyKG91dGdvaW5nUmVmZXJyZXIoKSk7CiAgICAgc3VibWlzc2lvbi0+c2V0T3JpZ2lu
KG91dGdvaW5nT3JpZ2luKCkpOwogCkBAIC02NjAsMjAgKzY1OCwxOCBAQCB2b2lkIEZyYW1lTG9h
ZGVyOjpyZWNlaXZlZEZpcnN0RGF0YSgpCiAgICAgaWYgKCFtX2RvY3VtZW50TG9hZGVyKQogICAg
ICAgICByZXR1cm47CiAKKyAgICBBU1NFUlQobV9mcmFtZS5kb2N1bWVudCgpKTsKKyAgICBhdXRv
JiBkb2N1bWVudCA9ICptX2ZyYW1lLmRvY3VtZW50KCk7CisKICAgICBkb3VibGUgZGVsYXk7CiAg
ICAgU3RyaW5nIHVybFN0cmluZzsKICAgICBpZiAoIXBhcnNlSFRUUFJlZnJlc2gobV9kb2N1bWVu
dExvYWRlci0+cmVzcG9uc2UoKS5odHRwSGVhZGVyRmllbGQoSFRUUEhlYWRlck5hbWU6OlJlZnJl
c2gpLCBkZWxheSwgdXJsU3RyaW5nKSkKICAgICAgICAgcmV0dXJuOwotICAgIFVSTCBjb21wbGV0
ZWRVUkw7Ci0gICAgaWYgKHVybFN0cmluZy5pc0VtcHR5KCkpCi0gICAgICAgIGNvbXBsZXRlZFVS
TCA9IG1fZnJhbWUuZG9jdW1lbnQoKS0+dXJsKCk7Ci0gICAgZWxzZQotICAgICAgICBjb21wbGV0
ZWRVUkwgPSBtX2ZyYW1lLmRvY3VtZW50KCktPmNvbXBsZXRlVVJMKHVybFN0cmluZyk7Ci0KKyAg
ICBhdXRvIGNvbXBsZXRlZFVSTCA9IHVybFN0cmluZy5pc0VtcHR5KCkgPyBkb2N1bWVudC51cmwo
KSA6IGRvY3VtZW50LmNvbXBsZXRlVVJMKHVybFN0cmluZyk7CiAgICAgaWYgKCFwcm90b2NvbElz
SmF2YVNjcmlwdChjb21wbGV0ZWRVUkwpKQotICAgICAgICBtX2ZyYW1lLm5hdmlnYXRpb25TY2hl
ZHVsZXIoKS5zY2hlZHVsZVJlZGlyZWN0KG1fZnJhbWUuZG9jdW1lbnQoKSwgZGVsYXksIGNvbXBs
ZXRlZFVSTCk7CisgICAgICAgIG1fZnJhbWUubmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxl
UmVkaXJlY3QoZG9jdW1lbnQsIGRlbGF5LCBjb21wbGV0ZWRVUkwpOwogICAgIGVsc2UgewotICAg
ICAgICBTdHJpbmcgbWVzc2FnZSA9ICJSZWZ1c2VkIHRvIHJlZnJlc2ggIiArIG1fZnJhbWUuZG9j
dW1lbnQoKS0+dXJsKCkuc3RyaW5nQ2VudGVyRWxsaXBzaXplZFRvTGVuZ3RoKCkgKyAiIHRvIGEg
amF2YXNjcmlwdDogVVJMIjsKKyAgICAgICAgYXV0byBtZXNzYWdlID0gIlJlZnVzZWQgdG8gcmVm
cmVzaCAiICsgZG9jdW1lbnQudXJsKCkuc3RyaW5nQ2VudGVyRWxsaXBzaXplZFRvTGVuZ3RoKCkg
KyAiIHRvIGEgamF2YXNjcmlwdDogVVJMIjsKICAgICAgICAgbV9mcmFtZS5kb2N1bWVudCgpLT5h
ZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpTZWN1cml0eSwgTWVzc2FnZUxldmVsOjpF
cnJvciwgbWVzc2FnZSk7CiAgICAgfQogfQpAQCAtMTEzOSw3ICsxMTM1LDcgQEAgdm9pZCBGcmFt
ZUxvYWRlcjo6bG9hZEZyYW1lUmVxdWVzdChjb25zdCBGcmFtZUxvYWRSZXF1ZXN0JiByZXF1ZXN0
LCBFdmVudCogZXZlbnQKICAgICAgICAgfHwgZXZlbnQtPnRhcmdldCgpLT50b05vZGUoKS0+ZG9j
dW1lbnQoKS5wYWdlQ2FjaGVTdGF0ZSgpID09IERvY3VtZW50OjpOb3RJblBhZ2VDYWNoZSk7CiAK
ICAgICAvLyBQcm90ZWN0IGZyYW1lIGZyb20gZ2V0dGluZyBibG93biBhd2F5IGluc2lkZSBkaXNw
YXRjaEJlZm9yZUxvYWRFdmVudCBpbiBsb2FkV2l0aERvY3VtZW50TG9hZGVyLgotICAgIFJlZjxG
cmFtZT4gcHJvdGVjdChtX2ZyYW1lKTsKKyAgICBhdXRvIHByb3RlY3RGcmFtZSA9IG1ha2VSZWYo
bV9mcmFtZSk7CiAKICAgICBVUkwgdXJsID0gcmVxdWVzdC5yZXNvdXJjZVJlcXVlc3QoKS51cmwo
KTsKIApAQCAtMTE3Miw3ICsxMTY4LDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6bG9hZEZyYW1lUmVx
dWVzdChjb25zdCBGcmFtZUxvYWRSZXF1ZXN0JiByZXF1ZXN0LCBFdmVudCogZXZlbnQKIAogICAg
IC8vIEZJWE1FOiBJdCdzIHBvc3NpYmxlIHRoaXMgdGFyZ2V0RnJhbWUgd2lsbCBub3QgYmUgdGhl
IHNhbWUgZnJhbWUgdGhhdCB3YXMgdGFyZ2V0ZWQgYnkgdGhlIGFjdHVhbAogICAgIC8vIGxvYWQg
aWYgZnJhbWUgbmFtZXMgaGF2ZSBjaGFuZ2VkLgotICAgIEZyYW1lKiBzb3VyY2VGcmFtZSA9IGZv
cm1TdGF0ZSA/IGZvcm1TdGF0ZS0+c291cmNlRG9jdW1lbnQoKS0+ZnJhbWUoKSA6ICZtX2ZyYW1l
OworICAgIEZyYW1lKiBzb3VyY2VGcmFtZSA9IGZvcm1TdGF0ZSA/IGZvcm1TdGF0ZS0+c291cmNl
RG9jdW1lbnQoKS5mcmFtZSgpIDogJm1fZnJhbWU7CiAgICAgaWYgKCFzb3VyY2VGcmFtZSkKICAg
ICAgICAgc291cmNlRnJhbWUgPSAmbV9mcmFtZTsKICAgICBGcmFtZSogdGFyZ2V0RnJhbWUgPSBz
b3VyY2VGcmFtZS0+bG9hZGVyKCkuZmluZEZyYW1lRm9yTmF2aWdhdGlvbihyZXF1ZXN0LmZyYW1l
TmFtZSgpKTsKQEAgLTEyNTYsNyArMTI1Miw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6OmxvYWRVUkwo
Y29uc3QgRnJhbWVMb2FkUmVxdWVzdCYgZnJhbWVMb2FkUmVxdWVzdCwgY29uc3QgU3RyaW5nCiAg
ICAgICAgIG9sZERvY3VtZW50TG9hZGVyLT5zZXRMYXN0Q2hlY2tlZFJlcXVlc3QoUmVzb3VyY2VS
ZXF1ZXN0KCkpOwogICAgICAgICBwb2xpY3lDaGVja2VyKCkuc3RvcENoZWNrKCk7CiAgICAgICAg
IHBvbGljeUNoZWNrZXIoKS5zZXRMb2FkVHlwZShuZXdMb2FkVHlwZSk7Ci0gICAgICAgIHBvbGlj
eUNoZWNrZXIoKS5jaGVja05hdmlnYXRpb25Qb2xpY3kocmVxdWVzdCwgZmFsc2UgLyogZGlkUmVj
ZWl2ZVJlZGlyZWN0UmVzcG9uc2UgKi8sIG9sZERvY3VtZW50TG9hZGVyLmdldCgpLCBmb3JtU3Rh
dGUsIFt0aGlzXShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSosIGJv
b2wgc2hvdWxkQ29udGludWUpIHsKKyAgICAgICAgcG9saWN5Q2hlY2tlcigpLmNoZWNrTmF2aWdh
dGlvblBvbGljeShyZXF1ZXN0LCBmYWxzZSAvKiBkaWRSZWNlaXZlUmVkaXJlY3RSZXNwb25zZSAq
Lywgb2xkRG9jdW1lbnRMb2FkZXIuZ2V0KCksIGZvcm1TdGF0ZSwgW3RoaXNdIChjb25zdCBSZXNv
dXJjZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSosIGJvb2wgc2hvdWxkQ29udGludWUpIHsK
ICAgICAgICAgICAgIGNvbnRpbnVlRnJhZ21lbnRTY3JvbGxBZnRlck5hdmlnYXRpb25Qb2xpY3ko
cmVxdWVzdCwgc2hvdWxkQ29udGludWUpOwogICAgICAgICB9KTsKICAgICAgICAgcmV0dXJuOwpA
QCAtMTQ1Miw3ICsxNDQ4LDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6bG9hZFdpdGhEb2N1bWVudExv
YWRlcihEb2N1bWVudExvYWRlciogbG9hZGVyLCBGcmFtZUxvYWRUeXBlIHQKICAgICAgICAgb2xk
RG9jdW1lbnRMb2FkZXItPnNldFRyaWdnZXJpbmdBY3Rpb24oYWN0aW9uKTsKICAgICAgICAgb2xk
RG9jdW1lbnRMb2FkZXItPnNldExhc3RDaGVja2VkUmVxdWVzdChSZXNvdXJjZVJlcXVlc3QoKSk7
CiAgICAgICAgIHBvbGljeUNoZWNrZXIoKS5zdG9wQ2hlY2soKTsKLSAgICAgICAgcG9saWN5Q2hl
Y2tlcigpLmNoZWNrTmF2aWdhdGlvblBvbGljeShsb2FkZXItPnJlcXVlc3QoKSwgZmFsc2UgLyog
ZGlkUmVjZWl2ZVJlZGlyZWN0UmVzcG9uc2UgKi8sIG9sZERvY3VtZW50TG9hZGVyLmdldCgpLCBm
b3JtU3RhdGUsIFt0aGlzXShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0
ZSosIGJvb2wgc2hvdWxkQ29udGludWUpIHsKKyAgICAgICAgcG9saWN5Q2hlY2tlcigpLmNoZWNr
TmF2aWdhdGlvblBvbGljeShsb2FkZXItPnJlcXVlc3QoKSwgZmFsc2UgLyogZGlkUmVjZWl2ZVJl
ZGlyZWN0UmVzcG9uc2UgKi8sIG9sZERvY3VtZW50TG9hZGVyLmdldCgpLCBmb3JtU3RhdGUsIFt0
aGlzXSAoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBGb3JtU3RhdGUqLCBib29sIHNo
b3VsZENvbnRpbnVlKSB7CiAgICAgICAgICAgICBjb250aW51ZUZyYWdtZW50U2Nyb2xsQWZ0ZXJO
YXZpZ2F0aW9uUG9saWN5KHJlcXVlc3QsIHNob3VsZENvbnRpbnVlKTsKICAgICAgICAgfSk7CiAg
ICAgICAgIHJldHVybjsKQEAgLTE0NzksNyArMTQ3NSw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6Omxv
YWRXaXRoRG9jdW1lbnRMb2FkZXIoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgRnJhbWVMb2FkVHlw
ZSB0CiAgICAgICAgIH0KICAgICB9CiAKLSAgICBwb2xpY3lDaGVja2VyKCkuY2hlY2tOYXZpZ2F0
aW9uUG9saWN5KGxvYWRlci0+cmVxdWVzdCgpLCBmYWxzZSAvKiBkaWRSZWNlaXZlUmVkaXJlY3RS
ZXNwb25zZSAqLywgbG9hZGVyLCBmb3JtU3RhdGUsIFt0aGlzLCBhbGxvd05hdmlnYXRpb25Ub0lu
dmFsaWRVUkxdKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3Jt
U3RhdGUsIGJvb2wgc2hvdWxkQ29udGludWUpIHsKKyAgICBwb2xpY3lDaGVja2VyKCkuY2hlY2tO
YXZpZ2F0aW9uUG9saWN5KGxvYWRlci0+cmVxdWVzdCgpLCBmYWxzZSAvKiBkaWRSZWNlaXZlUmVk
aXJlY3RSZXNwb25zZSAqLywgbG9hZGVyLCBmb3JtU3RhdGUsIFt0aGlzLCBhbGxvd05hdmlnYXRp
b25Ub0ludmFsaWRVUkxdIChjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0
ZSogZm9ybVN0YXRlLCBib29sIHNob3VsZENvbnRpbnVlKSB7CiAgICAgICAgIGNvbnRpbnVlTG9h
ZEFmdGVyTmF2aWdhdGlvblBvbGljeShyZXF1ZXN0LCBmb3JtU3RhdGUsIHNob3VsZENvbnRpbnVl
LCBhbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkwpOwogICAgIH0pOwogfQpAQCAtMjcxMSw3ICsy
NzA3LDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6bG9hZFBvc3RSZXF1ZXN0KGNvbnN0IEZyYW1lTG9h
ZFJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFN0cmluZyYKICAgICAgICAgICAgIHJldHVybjsKICAg
ICAgICAgfQogCi0gICAgICAgIHBvbGljeUNoZWNrZXIoKS5jaGVja05ld1dpbmRvd1BvbGljeShh
Y3Rpb24sIHdvcmtpbmdSZXNvdXJjZVJlcXVlc3QsIFdURk1vdmUoZm9ybVN0YXRlKSwgZnJhbWVO
YW1lLCBbdGhpcywgYWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMLCBvcGVuZXJQb2xpY3ldKGNv
bnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIGNvbnN0
IFN0cmluZyYgZnJhbWVOYW1lLCBjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIGJvb2wg
c2hvdWxkQ29udGludWUpIHsKKyAgICAgICAgcG9saWN5Q2hlY2tlcigpLmNoZWNrTmV3V2luZG93
UG9saWN5KGFjdGlvbiwgd29ya2luZ1Jlc291cmNlUmVxdWVzdCwgV1RGTW92ZShmb3JtU3RhdGUp
LCBmcmFtZU5hbWUsIFt0aGlzLCBhbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkwsIG9wZW5lclBv
bGljeV0gKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3Rh
dGUsIGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rp
b24sIGJvb2wgc2hvdWxkQ29udGludWUpIHsKICAgICAgICAgICAgIGNvbnRpbnVlTG9hZEFmdGVy
TmV3V2luZG93UG9saWN5KHJlcXVlc3QsIGZvcm1TdGF0ZSwgZnJhbWVOYW1lLCBhY3Rpb24sIHNo
b3VsZENvbnRpbnVlLCBhbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkwsIG9wZW5lclBvbGljeSk7
CiAgICAgICAgIH0pOwogICAgICAgICByZXR1cm47CkBAIC0yNzY5LDExICsyNzY1LDExIEBAIHVu
c2lnbmVkIGxvbmcgRnJhbWVMb2FkZXI6OmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoY29uc3Qg
UmVzb3VyY2VSZXF1ZXN0JiByZXF1CiAgICAgaWYgKGVycm9yLmlzTnVsbCgpKSB7CiAgICAgICAg
IEFTU0VSVCghbmV3UmVxdWVzdC5pc051bGwoKSk7CiAKLSAgICAgICAgaWYgKCFkb2N1bWVudExv
YWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5tYXliZUxvYWRTeW5jaHJvbm91c2x5KG5l
d1JlcXVlc3QsIGVycm9yLCByZXNwb25zZSwgZGF0YSkpIHsKKyAgICAgICAgaWYgKCFkb2N1bWVu
dExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLm1heWJlTG9hZFN5bmNocm9ub3VzbHko
bmV3UmVxdWVzdCwgZXJyb3IsIHJlc3BvbnNlLCBkYXRhKSkgewogICAgICAgICAgICAgVmVjdG9y
PGNoYXI+IGJ1ZmZlcjsKICAgICAgICAgICAgIHBsYXRmb3JtU3RyYXRlZ2llcygpLT5sb2FkZXJT
dHJhdGVneSgpLT5sb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KG5ldHdvcmtpbmdDb250ZXh0KCks
IGlkZW50aWZpZXIsIG5ld1JlcXVlc3QsIHN0b3JlZENyZWRlbnRpYWxzLCBjbGllbnRDcmVkZW50
aWFsUG9saWN5LCBlcnJvciwgcmVzcG9uc2UsIGJ1ZmZlcik7CiAgICAgICAgICAgICBkYXRhID0g
U2hhcmVkQnVmZmVyOjphZG9wdFZlY3RvcihidWZmZXIpOwotICAgICAgICAgICAgZG9jdW1lbnRM
b2FkZXIoKS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+bWF5YmVMb2FkRmFsbGJhY2tTeW5jaHJv
bm91c2x5KG5ld1JlcXVlc3QsIGVycm9yLCByZXNwb25zZSwgZGF0YSk7CisgICAgICAgICAgICBk
b2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLm1heWJlTG9hZEZhbGxiYWNr
U3luY2hyb25vdXNseShuZXdSZXF1ZXN0LCBlcnJvciwgcmVzcG9uc2UsIGRhdGEpOwogICAgICAg
ICAgICAgUmVzb3VyY2VMb2FkT2JzZXJ2ZXI6OnNoYXJlZE9ic2VydmVyKCkubG9nU3VicmVzb3Vy
Y2VMb2FkaW5nKCZtX2ZyYW1lLCBuZXdSZXF1ZXN0LCByZXNwb25zZSk7CiAgICAgICAgIH0KICAg
ICB9CkBAIC0zMTA4LDcgKzMxMDQsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpjb250aW51ZUxvYWRB
ZnRlck5hdmlnYXRpb25Qb2xpY3koY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZQogICAgICAg
ICByZXR1cm47CiAgICAgfQogCi0gICAgbV9jbGllbnQuZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShm
b3JtU3RhdGUsIFt0aGlzXShQb2xpY3lBY3Rpb24gYWN0aW9uKSB7CisgICAgbV9jbGllbnQuZGlz
cGF0Y2hXaWxsU3VibWl0Rm9ybSgqZm9ybVN0YXRlLCBbdGhpc10gKFBvbGljeUFjdGlvbiBhY3Rp
b24pIHsKICAgICAgICAgcG9saWN5Q2hlY2tlcigpLmNvbnRpbnVlTG9hZEFmdGVyV2lsbFN1Ym1p
dEZvcm0oYWN0aW9uKTsKICAgICB9KTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9GcmFtZUxvYWRlckNsaWVudC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9h
ZGVyQ2xpZW50LmgKaW5kZXggZDEzYjBhMDc5ZGU5OWYzODc3MDU1MjQ3OGE3ZmJiMzIwODhkOWNm
NS4uYTgwOTQ3YmU3ZmRjMjAwZWIwYzIxMjBhMzBjNmQ5NDk1MDc5MTY4YSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50LmgKQEAgLTEsNSArMSw1IEBACiAvKgotICog
Q29weXJpZ2h0IChDKSAyMDA2LTIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgogICogQ29weXJpZ2h0IChDKSAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CkBAIC0xNzcsMTQgKzE3NywxNCBAQCBwdWJsaWM6CiAgICAgdmly
dHVhbCB2b2lkIGRpc3BhdGNoU2hvdygpID0gMDsKIAogICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRj
aERlY2lkZVBvbGljeUZvclJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBjb25zdCBS
ZXNvdXJjZVJlcXVlc3QmLCBGcmFtZVBvbGljeUZ1bmN0aW9uKSA9IDA7Ci0gICAgdmlydHVhbCB2
b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IE5hdmlnYXRp
b25BY3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4s
IGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBGcmFtZVBvbGljeUZ1bmN0aW9uKSA9IDA7Ci0gICAg
dmlydHVhbCB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25z
dCBOYXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgUGFzc1JlZlB0cjxG
b3JtU3RhdGU+LCBGcmFtZVBvbGljeUZ1bmN0aW9uKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGRp
c3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rp
b24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBGb3JtU3RhdGUqLCBjb25zdCBTdHJpbmcmIGZy
YW1lTmFtZSwgRnJhbWVQb2xpY3lGdW5jdGlvbikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBkaXNw
YXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlv
biYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIEZvcm1TdGF0ZSosIEZyYW1lUG9saWN5RnVuY3Rp
b24pID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgY2FuY2VsUG9saWN5Q2hlY2soKSA9IDA7CiAKICAg
ICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hVbmFibGVUb0ltcGxlbWVudFBvbGljeShjb25zdCBSZXNv
dXJjZUVycm9yJikgPSAwOwogCi0gICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoV2lsbFNlbmRTdWJt
aXRFdmVudChQYXNzUmVmUHRyPEZvcm1TdGF0ZT4pID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgZGlz
cGF0Y2hXaWxsU3VibWl0Rm9ybShQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIEZyYW1lUG9saWN5RnVu
Y3Rpb24pID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50
KFJlZjxGb3JtU3RhdGU+JiYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hXaWxsU3Vi
bWl0Rm9ybShGb3JtU3RhdGUmLCBGcmFtZVBvbGljeUZ1bmN0aW9uKSA9IDA7CiAKICAgICB2aXJ0
dWFsIHZvaWQgcmV2ZXJ0VG9Qcm92aXNpb25hbFN0YXRlKERvY3VtZW50TG9hZGVyKikgPSAwOwog
ICAgIHZpcnR1YWwgdm9pZCBzZXRNYWluRG9jdW1lbnRFcnJvcihEb2N1bWVudExvYWRlciosIGNv
bnN0IFJlc291cmNlRXJyb3ImKSA9IDA7CkBAIC0yNzIsMTQgKzI3MiwxMiBAQCBwdWJsaWM6CiAg
ICAgdmlydHVhbCBib29sIGNhbkNhY2hlUGFnZSgpIGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIHZv
aWQgY29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKERvY3VtZW50TG9hZGVyKiwgU2Vz
c2lvbklELCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikg
PSAwOwogCi0gICAgdmlydHVhbCBSZWZQdHI8RnJhbWU+IGNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYs
IGNvbnN0IFN0cmluZyYgbmFtZSwgSFRNTEZyYW1lT3duZXJFbGVtZW50KiwgY29uc3QgU3RyaW5n
JiByZWZlcnJlciwgYm9vbCBhbGxvd3NTY3JvbGxpbmcsIGludCBtYXJnaW5XaWR0aCwgaW50IG1h
cmdpbkhlaWdodCkgPSAwOwotICAgIHZpcnR1YWwgUmVmUHRyPFdpZGdldD4gY3JlYXRlUGx1Z2lu
KGNvbnN0IEludFNpemUmLCBIVE1MUGx1Z0luRWxlbWVudCosIGNvbnN0IFVSTCYsIGNvbnN0IFZl
Y3RvcjxTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBTdHJpbmcmLCBib29s
IGxvYWRNYW51YWxseSkgPSAwOworICAgIHZpcnR1YWwgUmVmUHRyPEZyYW1lPiBjcmVhdGVGcmFt
ZShjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIG5hbWUsIEhUTUxGcmFtZU93bmVyRWxlbWVudCYs
IGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIGJvb2wgYWxsb3dzU2Nyb2xsaW5nLCBpbnQgbWFyZ2lu
V2lkdGgsIGludCBtYXJnaW5IZWlnaHQpID0gMDsKKyAgICB2aXJ0dWFsIFJlZlB0cjxXaWRnZXQ+
IGNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiwgSFRNTFBsdWdJbkVsZW1lbnQmLCBjb25zdCBV
UkwmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3Qg
U3RyaW5nJiwgYm9vbCBsb2FkTWFudWFsbHkpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgcmVjcmVh
dGVQbHVnaW4oV2lkZ2V0KikgPSAwOwogICAgIHZpcnR1YWwgdm9pZCByZWRpcmVjdERhdGFUb1Bs
dWdpbihXaWRnZXQqIHBsdWdpbldpZGdldCkgPSAwOwogCi0gICAgdmlydHVhbCBQYXNzUmVmUHRy
PFdpZGdldD4gY3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXplJiwgSFRNTEFwcGxl
dEVsZW1lbnQqLCBjb25zdCBVUkwmIGJhc2VVUkwsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJh
bU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpID0gMDsKLQotICAgIHZp
cnR1YWwgdm9pZCBkaXNwYXRjaERpZEZhaWxUb1N0YXJ0UGx1Z2luKGNvbnN0IFBsdWdpblZpZXdC
YXNlKikgY29uc3QgeyB9CisgICAgdmlydHVhbCBSZWZQdHI8V2lkZ2V0PiBjcmVhdGVKYXZhQXBw
bGV0V2lkZ2V0KGNvbnN0IEludFNpemUmLCBIVE1MQXBwbGV0RWxlbWVudCYsIGNvbnN0IFVSTCYg
YmFzZVVSTCwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxT
dHJpbmc+JiBwYXJhbVZhbHVlcykgPSAwOwogCiAgICAgdmlydHVhbCBPYmplY3RDb250ZW50VHlw
ZSBvYmplY3RDb250ZW50VHlwZShjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlKSA9
IDA7CiAgICAgdmlydHVhbCBTdHJpbmcgb3ZlcnJpZGVNZWRpYVR5cGUoKSBjb25zdCA9IDA7CkBA
IC0yOTQsNiArMjkyLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgTlNDYWNoZWRVUkxSZXNwb25z
ZSogd2lsbENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2UqKSBjb25zdCA9IDA7CiAgICAgdmlydHVhbCBOU0Rp
Y3Rpb25hcnkgKmRhdGFEZXRlY3Rpb25Db250ZXh0KCkgeyByZXR1cm4gbnVsbHB0cjsgfQogI2Vu
ZGlmCisKICNpZiBQTEFURk9STShXSU4pICYmIFVTRShDRlVSTENPTk5FQ1RJT04pCiAgICAgLy8g
RklYTUU6IFdpbmRvd3Mgc2hvdWxkIHVzZSB3aWxsQ2FjaGVSZXNwb25zZSAtIDxodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTcyNTc+LgogICAgIHZpcnR1YWwgYm9vbCBz
aG91bGRDYWNoZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgdW5zaWduZWQgY2hhciogZGF0YSwg
dW5zaWduZWQgbG9uZyBsb25nIGxlbmd0aCkgPSAwOwpAQCAtMzA5LDEwICszMDgsMTAgQEAgcHVi
bGljOgogICAgIC8vIENsaWVudHMgdGhhdCBnZW5lcmFsbHkgZGlzYWxsb3cgdW5pdmVyc2FsIGFj
Y2VzcyBjYW4gbWFrZSBleGNlcHRpb25zIGZvciBwYXJ0aWN1bGFyIFVSTHMuCiAgICAgdmlydHVh
bCBib29sIHNob3VsZEZvcmNlVW5pdmVyc2FsQWNjZXNzRnJvbUxvY2FsVVJMKGNvbnN0IFVSTCYp
IHsgcmV0dXJuIGZhbHNlOyB9CiAKLSAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8RnJhbWVOZXR3b3Jr
aW5nQ29udGV4dD4gY3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKSA9IDA7CisgICAgdmlydHVhbCBS
ZWY8RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKSA9IDA7
CiAKICNpZiBFTkFCTEUoUkVRVUVTVF9BVVRPQ09NUExFVEUpCi0gICAgdmlydHVhbCB2b2lkIGRp
ZFJlcXVlc3RBdXRvY29tcGxldGUoUGFzc1JlZlB0cjxGb3JtU3RhdGU+KSA9IDA7CisgICAgdmly
dHVhbCB2b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxldGUoUmVmPEZvcm1TdGF0ZT4mJikgPSAwOwog
I2VuZGlmCiAKICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkUGFpbnRCcm9rZW5JbWFnZShjb25zdCBV
UkwmKSBjb25zdCB7IHJldHVybiB0cnVlOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvSGlzdG9yeUNvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0hpc3Rv
cnlDb250cm9sbGVyLmNwcAppbmRleCAyOTViOTRhMWE1NTViMmEyOGU3NTAzNmM2YjFkMDI1NzA3
Mjk5N2NjLi4yNmE0YjMzOTZkMWU4N2EwMDYzZTBiNGMwY2EwNjY5MjIwNGE5MzcwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvSGlzdG9yeUNvbnRyb2xsZXIuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9IaXN0b3J5Q29udHJvbGxlci5jcHAKQEAgLTg0Niw3ICs4NDYs
NyBAQCB2b2lkIEhpc3RvcnlDb250cm9sbGVyOjp1cGRhdGVDdXJyZW50SXRlbSgpCiAgICAgfQog
fQogCi12b2lkIEhpc3RvcnlDb250cm9sbGVyOjpwdXNoU3RhdGUoUGFzc1JlZlB0cjxTZXJpYWxp
emVkU2NyaXB0VmFsdWU+IHN0YXRlT2JqZWN0LCBjb25zdCBTdHJpbmcmIHRpdGxlLCBjb25zdCBT
dHJpbmcmIHVybFN0cmluZykKK3ZvaWQgSGlzdG9yeUNvbnRyb2xsZXI6OnB1c2hTdGF0ZShSZWZQ
dHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiYmIHN0YXRlT2JqZWN0LCBjb25zdCBTdHJpbmcmIHRp
dGxlLCBjb25zdCBTdHJpbmcmIHVybFN0cmluZykKIHsKICAgICBpZiAoIW1fY3VycmVudEl0ZW0p
CiAgICAgICAgIHJldHVybjsKQEAgLTg2MCw3ICs4NjAsNyBAQCB2b2lkIEhpc3RvcnlDb250cm9s
bGVyOjpwdXNoU3RhdGUoUGFzc1JlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IHN0YXRlT2Jq
ZWN0LAogICAgIC8vIE92ZXJyaWRlIGRhdGEgaW4gdGhlIGN1cnJlbnQgaXRlbSAoY3JlYXRlZCBi
eSBjcmVhdGVJdGVtVHJlZSkgdG8gcmVmbGVjdAogICAgIC8vIHRoZSBwdXNoU3RhdGUoKSBhcmd1
bWVudHMuCiAgICAgbV9jdXJyZW50SXRlbS0+c2V0VGl0bGUodGl0bGUpOwotICAgIG1fY3VycmVu
dEl0ZW0tPnNldFN0YXRlT2JqZWN0KHN0YXRlT2JqZWN0KTsKKyAgICBtX2N1cnJlbnRJdGVtLT5z
ZXRTdGF0ZU9iamVjdChXVEZNb3ZlKHN0YXRlT2JqZWN0KSk7CiAgICAgbV9jdXJyZW50SXRlbS0+
c2V0VVJMU3RyaW5nKHVybFN0cmluZyk7CiAKICAgICBMT0coSGlzdG9yeSwgIkhpc3RvcnlDb250
cm9sbGVyICVwIHB1c2hTdGF0ZTogQWRkaW5nIHRvcCBpdGVtICVwLCBzZXR0aW5nIHVybCBvZiBj
dXJyZW50IGl0ZW0gJXAgdG8gJXMiLCB0aGlzLCB0b3BJdGVtLnB0cigpLCBtX2N1cnJlbnRJdGVt
LmdldCgpLCB1cmxTdHJpbmcuYXNjaWkoKS5kYXRhKCkpOwpAQCAtODc0LDcgKzg3NCw3IEBAIHZv
aWQgSGlzdG9yeUNvbnRyb2xsZXI6OnB1c2hTdGF0ZShQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3Jp
cHRWYWx1ZT4gc3RhdGVPYmplY3QsCiAgICAgbV9mcmFtZS5sb2FkZXIoKS5jbGllbnQoKS51cGRh
dGVHbG9iYWxIaXN0b3J5KCk7CiB9CiAKLXZvaWQgSGlzdG9yeUNvbnRyb2xsZXI6OnJlcGxhY2VT
dGF0ZShQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gc3RhdGVPYmplY3QsIGNvbnN0
IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nKQordm9pZCBIaXN0b3J5Q29u
dHJvbGxlcjo6cmVwbGFjZVN0YXRlKFJlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+JiYgc3Rh
dGVPYmplY3QsIGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nKQog
ewogICAgIGlmICghbV9jdXJyZW50SXRlbSkKICAgICAgICAgcmV0dXJuOwpAQCAtODg0LDcgKzg4
NCw3IEBAIHZvaWQgSGlzdG9yeUNvbnRyb2xsZXI6OnJlcGxhY2VTdGF0ZShQYXNzUmVmUHRyPFNl
cmlhbGl6ZWRTY3JpcHRWYWx1ZT4gc3RhdGVPYmplCiAgICAgaWYgKCF1cmxTdHJpbmcuaXNFbXB0
eSgpKQogICAgICAgICBtX2N1cnJlbnRJdGVtLT5zZXRVUkxTdHJpbmcodXJsU3RyaW5nKTsKICAg
ICBtX2N1cnJlbnRJdGVtLT5zZXRUaXRsZSh0aXRsZSk7Ci0gICAgbV9jdXJyZW50SXRlbS0+c2V0
U3RhdGVPYmplY3Qoc3RhdGVPYmplY3QpOworICAgIG1fY3VycmVudEl0ZW0tPnNldFN0YXRlT2Jq
ZWN0KFdURk1vdmUoc3RhdGVPYmplY3QpKTsKICAgICBtX2N1cnJlbnRJdGVtLT5zZXRGb3JtRGF0
YShudWxscHRyKTsKICAgICBtX2N1cnJlbnRJdGVtLT5zZXRGb3JtQ29udGVudFR5cGUoU3RyaW5n
KCkpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvSGlzdG9yeUNvbnRyb2xs
ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9IaXN0b3J5Q29udHJvbGxlci5oCmluZGV4IDEw
ZmYxZjE0YTMzZWY3NmI5MGJmZDEzZDQ2NTI4Yzc4NzVmNWViZDUuLjNkMjVlMjg5YjIyZmIxZjk5
NjNmNmRmYjMzNDc4OTU4MWQwOTI3MDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9IaXN0b3J5Q29udHJvbGxlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9IaXN0b3J5
Q29udHJvbGxlci5oCkBAIC04NCw4ICs4NCw4IEBAIHB1YmxpYzoKICAgICBIaXN0b3J5SXRlbSog
cHJvdmlzaW9uYWxJdGVtKCkgY29uc3QgeyByZXR1cm4gbV9wcm92aXNpb25hbEl0ZW0uZ2V0KCk7
IH0KICAgICB2b2lkIHNldFByb3Zpc2lvbmFsSXRlbShIaXN0b3J5SXRlbSopOwogCi0gICAgdm9p
ZCBwdXNoU3RhdGUoUGFzc1JlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+LCBjb25zdCBTdHJp
bmcmIHRpdGxlLCBjb25zdCBTdHJpbmcmIHVybCk7Ci0gICAgdm9pZCByZXBsYWNlU3RhdGUoUGFz
c1JlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+LCBjb25zdCBTdHJpbmcmIHRpdGxlLCBjb25z
dCBTdHJpbmcmIHVybCk7CisgICAgdm9pZCBwdXNoU3RhdGUoUmVmUHRyPFNlcmlhbGl6ZWRTY3Jp
cHRWYWx1ZT4mJiwgY29uc3QgU3RyaW5nJiB0aXRsZSwgY29uc3QgU3RyaW5nJiB1cmwpOworICAg
IHZvaWQgcmVwbGFjZVN0YXRlKFJlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+JiYsIGNvbnN0
IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgdXJsKTsKIAogICAgIHZvaWQgc2V0RGVmZXJz
TG9hZGluZyhib29sKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ltYWdl
TG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9JbWFnZUxvYWRlci5jcHAKaW5kZXgg
YTUzYWYxMWJiOWY5M2JhMmE4MTIzZGIxYTgxMGYzODg3OTk2ZmRjNS4uMWIyZmMxYmI0OTdjN2Q0
OTE5ZDE5YzYzOWFjMGVmNzI4ZWNlMDc5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0ltYWdlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvSW1hZ2VMb2Fk
ZXIuY3BwCkBAIC0xNzgsNyArMTc4LDcgQEAgdm9pZCBJbWFnZUxvYWRlcjo6dXBkYXRlRnJvbUVs
ZW1lbnQoKQogICAgICAgICBvcHRpb25zLnNhbWVPcmlnaW5EYXRhVVJMRmxhZyA9IFNhbWVPcmln
aW5EYXRhVVJMRmxhZzo6U2V0OwogCiAgICAgICAgIENhY2hlZFJlc291cmNlUmVxdWVzdCByZXF1
ZXN0KFJlc291cmNlUmVxdWVzdChkb2N1bWVudC5jb21wbGV0ZVVSTChzb3VyY2VVUkkoYXR0cikp
KSwgb3B0aW9ucyk7Ci0gICAgICAgIHJlcXVlc3Quc2V0SW5pdGlhdG9yKCZlbGVtZW50KCkpOwor
ICAgICAgICByZXF1ZXN0LnNldEluaXRpYXRvcihlbGVtZW50KCkpOwogCiAgICAgICAgIHJlcXVl
c3Quc2V0QXNQb3RlbnRpYWxseUNyb3NzT3JpZ2luKGVsZW1lbnQoKS5hdHRyaWJ1dGVXaXRob3V0
U3luY2hyb25pemF0aW9uKEhUTUxOYW1lczo6Y3Jvc3NvcmlnaW5BdHRyKSwgZG9jdW1lbnQpOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5jcHAKaW5kZXgg
N2VmZmFkN2ZhMWM1YWEzNDQ2ZWFjMDAyOTYxOGYxMmJiNTc1YjRlNS4uNTY5Nzc1MzJiOGIxMmJl
MDhhNjE5Y2QzZmIxYzE4NzVkM2I3NmViMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL05hdmlnYXRpb25TY2hlZHVsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9O
YXZpZ2F0aW9uU2NoZWR1bGVyLmNwcApAQCAtNjgsNiArNjgsMTYgQEAgcHVibGljOgogICAgICAg
ICAsIG1fdXNlckdlc3R1cmVUb0ZvcndhcmQoVXNlckdlc3R1cmVJbmRpY2F0b3I6OmN1cnJlbnRV
c2VyR2VzdHVyZSgpKQogICAgIHsKICAgICB9CisgICAgU2NoZWR1bGVkTmF2aWdhdGlvbihkb3Vi
bGUgZGVsYXksIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxv
Y2tCYWNrRm9yd2FyZExpc3QsIGJvb2wgd2FzRHVyaW5nTG9hZCwgYm9vbCBpc0xvY2F0aW9uQ2hh
bmdlLCBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5IGV4dGVybmFsVVJMUG9saWN5KQorICAg
ICAgICA6IG1fZGVsYXkoZGVsYXkpCisgICAgICAgICwgbV9sb2NrSGlzdG9yeShsb2NrSGlzdG9y
eSkKKyAgICAgICAgLCBtX2xvY2tCYWNrRm9yd2FyZExpc3QobG9ja0JhY2tGb3J3YXJkTGlzdCkK
KyAgICAgICAgLCBtX3dhc0R1cmluZ0xvYWQod2FzRHVyaW5nTG9hZCkKKyAgICAgICAgLCBtX2lz
TG9jYXRpb25DaGFuZ2UoaXNMb2NhdGlvbkNoYW5nZSkKKyAgICAgICAgLCBtX3VzZXJHZXN0dXJl
VG9Gb3J3YXJkKFVzZXJHZXN0dXJlSW5kaWNhdG9yOjpjdXJyZW50VXNlckdlc3R1cmUoKSkKKyAg
ICAgICAgLCBtX3Nob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3koZXh0ZXJuYWxVUkxQb2xpY3kp
CisgICAgeworICAgIH0KICAgICB2aXJ0dWFsIH5TY2hlZHVsZWROYXZpZ2F0aW9uKCkgeyB9CiAK
ICAgICB2aXJ0dWFsIHZvaWQgZmlyZShGcmFtZSYpID0gMDsKQEAgLTgxLDEyICs5MSwxMSBAQCBw
dWJsaWM6CiAgICAgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0KCkgY29u
c3QgeyByZXR1cm4gbV9sb2NrQmFja0ZvcndhcmRMaXN0OyB9CiAgICAgYm9vbCB3YXNEdXJpbmdM
b2FkKCkgY29uc3QgeyByZXR1cm4gbV93YXNEdXJpbmdMb2FkOyB9CiAgICAgYm9vbCBpc0xvY2F0
aW9uQ2hhbmdlKCkgY29uc3QgeyByZXR1cm4gbV9pc0xvY2F0aW9uQ2hhbmdlOyB9Ci0gICAgUmVm
UHRyPFVzZXJHZXN0dXJlVG9rZW4+IHVzZXJHZXN0dXJlVG9Gb3J3YXJkKCkgY29uc3QgeyByZXR1
cm4gbV91c2VyR2VzdHVyZVRvRm9yd2FyZDsgfQorICAgIFVzZXJHZXN0dXJlVG9rZW4qIHVzZXJH
ZXN0dXJlVG9Gb3J3YXJkKCkgY29uc3QgeyByZXR1cm4gbV91c2VyR2VzdHVyZVRvRm9yd2FyZC5n
ZXQoKTsgfQogCiBwcm90ZWN0ZWQ6CiAgICAgdm9pZCBjbGVhclVzZXJHZXN0dXJlKCkgeyBtX3Vz
ZXJHZXN0dXJlVG9Gb3J3YXJkID0gbnVsbHB0cjsgfQotCi0gICAgU2hvdWxkT3BlbkV4dGVybmFs
VVJMc1BvbGljeSBtX3Nob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgeyBTaG91bGRPcGVuRXh0
ZXJuYWxVUkxzUG9saWN5OjpTaG91bGROb3RBbGxvdyB9OworICAgIFNob3VsZE9wZW5FeHRlcm5h
bFVSTHNQb2xpY3kgc2hvdWxkT3BlbkV4dGVybmFsVVJMcygpIGNvbnN0IHsgcmV0dXJuIG1fc2hv
dWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeTsgfQogCiBwcml2YXRlOgogICAgIGRvdWJsZSBtX2Rl
bGF5OwpAQCAtOTUsMTkgKzEwNCwxNyBAQCBwcml2YXRlOgogICAgIGJvb2wgbV93YXNEdXJpbmdM
b2FkOwogICAgIGJvb2wgbV9pc0xvY2F0aW9uQ2hhbmdlOwogICAgIFJlZlB0cjxVc2VyR2VzdHVy
ZVRva2VuPiBtX3VzZXJHZXN0dXJlVG9Gb3J3YXJkOworICAgIFNob3VsZE9wZW5FeHRlcm5hbFVS
THNQb2xpY3kgbV9zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5IHsgU2hvdWxkT3BlbkV4dGVy
bmFsVVJMc1BvbGljeTo6U2hvdWxkTm90QWxsb3cgfTsKIH07CiAKIGNsYXNzIFNjaGVkdWxlZFVS
TE5hdmlnYXRpb24gOiBwdWJsaWMgU2NoZWR1bGVkTmF2aWdhdGlvbiB7CiBwcm90ZWN0ZWQ6Ci0g
ICAgU2NoZWR1bGVkVVJMTmF2aWdhdGlvbihEb2N1bWVudCogaW5pdGlhdGluZ0RvY3VtZW50LCBk
b3VibGUgZGVsYXksIFNlY3VyaXR5T3JpZ2luKiBzZWN1cml0eU9yaWdpbiwgY29uc3QgVVJMJiB1
cmwsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBMb2Nr
QmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QsIGJvb2wgZHVyaW5nTG9hZCwgYm9v
bCBpc0xvY2F0aW9uQ2hhbmdlKQotICAgICAgICA6IFNjaGVkdWxlZE5hdmlnYXRpb24oZGVsYXks
IGxvY2tIaXN0b3J5LCBsb2NrQmFja0ZvcndhcmRMaXN0LCBkdXJpbmdMb2FkLCBpc0xvY2F0aW9u
Q2hhbmdlKQorICAgIFNjaGVkdWxlZFVSTE5hdmlnYXRpb24oRG9jdW1lbnQmIGluaXRpYXRpbmdE
b2N1bWVudCwgZG91YmxlIGRlbGF5LCBTZWN1cml0eU9yaWdpbiogc2VjdXJpdHlPcmlnaW4sIGNv
bnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBMb2NrSGlzdG9yeSBsb2NrSGlz
dG9yeSwgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0LCBib29sIGR1cmlu
Z0xvYWQsIGJvb2wgaXNMb2NhdGlvbkNoYW5nZSkKKyAgICAgICAgOiBTY2hlZHVsZWROYXZpZ2F0
aW9uKGRlbGF5LCBsb2NrSGlzdG9yeSwgbG9ja0JhY2tGb3J3YXJkTGlzdCwgZHVyaW5nTG9hZCwg
aXNMb2NhdGlvbkNoYW5nZSwgaW5pdGlhdGluZ0RvY3VtZW50LnNob3VsZE9wZW5FeHRlcm5hbFVS
THNQb2xpY3lUb1Byb3BhZ2F0ZSgpKQogICAgICAgICAsIG1fc2VjdXJpdHlPcmlnaW4oc2VjdXJp
dHlPcmlnaW4pCiAgICAgICAgICwgbV91cmwodXJsKQogICAgICAgICAsIG1fcmVmZXJyZXIocmVm
ZXJyZXIpCi0gICAgICAgICwgbV9oYXZlVG9sZENsaWVudChmYWxzZSkKICAgICB7Ci0gICAgICAg
IGlmIChpbml0aWF0aW5nRG9jdW1lbnQpCi0gICAgICAgICAgICBtX3Nob3VsZE9wZW5FeHRlcm5h
bFVSTHNQb2xpY3kgPSBpbml0aWF0aW5nRG9jdW1lbnQtPnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQ
b2xpY3lUb1Byb3BhZ2F0ZSgpOwogICAgIH0KIAogICAgIHZvaWQgZmlyZShGcmFtZSYgZnJhbWUp
IG92ZXJyaWRlCkBAIC0xMTUsNyArMTIyLDcgQEAgcHJvdGVjdGVkOgogICAgICAgICBVc2VyR2Vz
dHVyZUluZGljYXRvciBnZXN0dXJlSW5kaWNhdG9yKHVzZXJHZXN0dXJlVG9Gb3J3YXJkKCkpOwog
CiAgICAgICAgIFJlc291cmNlUmVxdWVzdCByZXNvdXJjZVJlcXVlc3QobV91cmwsIG1fcmVmZXJy
ZXIsIFVzZVByb3RvY29sQ2FjaGVQb2xpY3kpOwotICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZy
YW1lUmVxdWVzdChtX3NlY3VyaXR5T3JpZ2luLmdldCgpLCByZXNvdXJjZVJlcXVlc3QsICJfc2Vs
ZiIsIGxvY2tIaXN0b3J5KCksIGxvY2tCYWNrRm9yd2FyZExpc3QoKSwgTWF5YmVTZW5kUmVmZXJy
ZXIsIEFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTDo6WWVzLCBOZXdGcmFtZU9wZW5lclBvbGlj
eTo6QWxsb3csIG1fc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSk7CisgICAgICAgIEZyYW1l
TG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KG1fc2VjdXJpdHlPcmlnaW4uZ2V0KCksIHJlc291cmNl
UmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBN
YXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpZZXMsIE5ld0Zy
YW1lT3BlbmVyUG9saWN5OjpBbGxvdywgc2hvdWxkT3BlbkV4dGVybmFsVVJMcygpKTsKIAogICAg
ICAgICBmcmFtZS5sb2FkZXIoKS5jaGFuZ2VMb2NhdGlvbihmcmFtZVJlcXVlc3QpOwogICAgIH0K
QEAgLTE1MiwxMiArMTU5LDEyIEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPFNlY3VyaXR5T3JpZ2lu
PiBtX3NlY3VyaXR5T3JpZ2luOwogICAgIFVSTCBtX3VybDsKICAgICBTdHJpbmcgbV9yZWZlcnJl
cjsKLSAgICBib29sIG1faGF2ZVRvbGRDbGllbnQ7CisgICAgYm9vbCBtX2hhdmVUb2xkQ2xpZW50
IHsgZmFsc2UgfTsKIH07CiAKIGNsYXNzIFNjaGVkdWxlZFJlZGlyZWN0IDogcHVibGljIFNjaGVk
dWxlZFVSTE5hdmlnYXRpb24gewogcHVibGljOgotICAgIFNjaGVkdWxlZFJlZGlyZWN0KERvY3Vt
ZW50KiBpbml0aWF0aW5nRG9jdW1lbnQsIGRvdWJsZSBkZWxheSwgU2VjdXJpdHlPcmlnaW4qIHNl
Y3VyaXR5T3JpZ2luLCBjb25zdCBVUkwmIHVybCwgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnksIExv
Y2tCYWNrRm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3YXJkTGlzdCkKKyAgICBTY2hlZHVsZWRSZWRp
cmVjdChEb2N1bWVudCYgaW5pdGlhdGluZ0RvY3VtZW50LCBkb3VibGUgZGVsYXksIFNlY3VyaXR5
T3JpZ2luKiBzZWN1cml0eU9yaWdpbiwgY29uc3QgVVJMJiB1cmwsIExvY2tIaXN0b3J5IGxvY2tI
aXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QpCiAgICAgICAg
IDogU2NoZWR1bGVkVVJMTmF2aWdhdGlvbihpbml0aWF0aW5nRG9jdW1lbnQsIGRlbGF5LCBzZWN1
cml0eU9yaWdpbiwgdXJsLCBTdHJpbmcoKSwgbG9ja0hpc3RvcnksIGxvY2tCYWNrRm9yd2FyZExp
c3QsIGZhbHNlLCBmYWxzZSkKICAgICB7CiAgICAgICAgIGNsZWFyVXNlckdlc3R1cmUoKTsKQEAg
LTE3Myw3ICsxODAsNyBAQCBwdWJsaWM6CiAgICAgICAgIFVzZXJHZXN0dXJlSW5kaWNhdG9yIGdl
c3R1cmVJbmRpY2F0b3IodXNlckdlc3R1cmVUb0ZvcndhcmQoKSk7CiAgICAgICAgIGJvb2wgcmVm
cmVzaCA9IGVxdWFsSWdub3JpbmdGcmFnbWVudElkZW50aWZpZXIoZnJhbWUuZG9jdW1lbnQoKS0+
dXJsKCksIHVybCgpKTsKICAgICAgICAgUmVzb3VyY2VSZXF1ZXN0IHJlc291cmNlUmVxdWVzdCh1
cmwoKSwgcmVmZXJyZXIoKSwgcmVmcmVzaCA/IFJlbG9hZElnbm9yaW5nQ2FjaGVEYXRhIDogVXNl
UHJvdG9jb2xDYWNoZVBvbGljeSk7Ci0gICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1
ZXN0KHNlY3VyaXR5T3JpZ2luKCksIHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hpc3Rv
cnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZp
Z2F0aW9uVG9JbnZhbGlkVVJMOjpObywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBtX3No
b3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kpOworICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZy
YW1lUmVxdWVzdChzZWN1cml0eU9yaWdpbigpLCByZXNvdXJjZVJlcXVlc3QsICJfc2VsZiIsIGxv
Y2tIaXN0b3J5KCksIGxvY2tCYWNrRm9yd2FyZExpc3QoKSwgTWF5YmVTZW5kUmVmZXJyZXIsIEFs
bG93TmF2aWdhdGlvblRvSW52YWxpZFVSTDo6Tm8sIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxv
dywgc2hvdWxkT3BlbkV4dGVybmFsVVJMcygpKTsKIAogICAgICAgICBmcmFtZS5sb2FkZXIoKS5j
aGFuZ2VMb2NhdGlvbihmcmFtZVJlcXVlc3QpOwogICAgIH0KQEAgLTE4MSw3ICsxODgsNyBAQCBw
dWJsaWM6CiAKIGNsYXNzIFNjaGVkdWxlZExvY2F0aW9uQ2hhbmdlIDogcHVibGljIFNjaGVkdWxl
ZFVSTE5hdmlnYXRpb24gewogcHVibGljOgotICAgIFNjaGVkdWxlZExvY2F0aW9uQ2hhbmdlKERv
Y3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQsIFNlY3VyaXR5T3JpZ2luKiBzZWN1cml0eU9yaWdp
biwgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIExvY2tIaXN0b3J5IGxv
Y2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QsIGJvb2wg
ZHVyaW5nTG9hZCkKKyAgICBTY2hlZHVsZWRMb2NhdGlvbkNoYW5nZShEb2N1bWVudCYgaW5pdGlh
dGluZ0RvY3VtZW50LCBTZWN1cml0eU9yaWdpbiogc2VjdXJpdHlPcmlnaW4sIGNvbnN0IFVSTCYg
dXJsLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSwgTG9j
a0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0LCBib29sIGR1cmluZ0xvYWQpCiAg
ICAgICAgIDogU2NoZWR1bGVkVVJMTmF2aWdhdGlvbihpbml0aWF0aW5nRG9jdW1lbnQsIDAuMCwg
c2VjdXJpdHlPcmlnaW4sIHVybCwgcmVmZXJyZXIsIGxvY2tIaXN0b3J5LCBsb2NrQmFja0Zvcndh
cmRMaXN0LCBkdXJpbmdMb2FkLCB0cnVlKSB7IH0KIAogICAgIHZvaWQgZmlyZShGcmFtZSYgZnJh
bWUpIG92ZXJyaWRlCkBAIC0xODksMTQgKzE5NiwxNCBAQCBwdWJsaWM6CiAgICAgICAgIFVzZXJH
ZXN0dXJlSW5kaWNhdG9yIGdlc3R1cmVJbmRpY2F0b3IodXNlckdlc3R1cmVUb0ZvcndhcmQoKSk7
CiAKICAgICAgICAgUmVzb3VyY2VSZXF1ZXN0IHJlc291cmNlUmVxdWVzdCh1cmwoKSwgcmVmZXJy
ZXIoKSwgVXNlUHJvdG9jb2xDYWNoZVBvbGljeSk7Ci0gICAgICAgIEZyYW1lTG9hZFJlcXVlc3Qg
ZnJhbWVSZXF1ZXN0KHNlY3VyaXR5T3JpZ2luKCksIHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwg
bG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwg
QWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpObywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFs
bG93LCBtX3Nob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kpOworICAgICAgICBGcmFtZUxvYWRS
ZXF1ZXN0IGZyYW1lUmVxdWVzdChzZWN1cml0eU9yaWdpbigpLCByZXNvdXJjZVJlcXVlc3QsICJf
c2VsZiIsIGxvY2tIaXN0b3J5KCksIGxvY2tCYWNrRm9yd2FyZExpc3QoKSwgTWF5YmVTZW5kUmVm
ZXJyZXIsIEFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTDo6Tm8sIE5ld0ZyYW1lT3BlbmVyUG9s
aWN5OjpBbGxvdywgc2hvdWxkT3BlbkV4dGVybmFsVVJMcygpKTsKICAgICAgICAgZnJhbWUubG9h
ZGVyKCkuY2hhbmdlTG9jYXRpb24oZnJhbWVSZXF1ZXN0KTsKICAgICB9CiB9OwogCiBjbGFzcyBT
Y2hlZHVsZWRSZWZyZXNoIDogcHVibGljIFNjaGVkdWxlZFVSTE5hdmlnYXRpb24gewogcHVibGlj
OgotICAgIFNjaGVkdWxlZFJlZnJlc2goRG9jdW1lbnQqIGluaXRpYXRpbmdEb2N1bWVudCwgU2Vj
dXJpdHlPcmlnaW4qIHNlY3VyaXR5T3JpZ2luLCBjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5n
JiByZWZlcnJlcikKKyAgICBTY2hlZHVsZWRSZWZyZXNoKERvY3VtZW50JiBpbml0aWF0aW5nRG9j
dW1lbnQsIFNlY3VyaXR5T3JpZ2luKiBzZWN1cml0eU9yaWdpbiwgY29uc3QgVVJMJiB1cmwsIGNv
bnN0IFN0cmluZyYgcmVmZXJyZXIpCiAgICAgICAgIDogU2NoZWR1bGVkVVJMTmF2aWdhdGlvbihp
bml0aWF0aW5nRG9jdW1lbnQsIDAuMCwgc2VjdXJpdHlPcmlnaW4sIHVybCwgcmVmZXJyZXIsIExv
Y2tIaXN0b3J5OjpZZXMsIExvY2tCYWNrRm9yd2FyZExpc3Q6OlllcywgZmFsc2UsIHRydWUpCiAg
ICAgewogICAgIH0KQEAgLTIwNiw3ICsyMTMsNyBAQCBwdWJsaWM6CiAgICAgICAgIFVzZXJHZXN0
dXJlSW5kaWNhdG9yIGdlc3R1cmVJbmRpY2F0b3IodXNlckdlc3R1cmVUb0ZvcndhcmQoKSk7CiAK
ICAgICAgICAgUmVzb3VyY2VSZXF1ZXN0IHJlc291cmNlUmVxdWVzdCh1cmwoKSwgcmVmZXJyZXIo
KSwgUmVsb2FkSWdub3JpbmdDYWNoZURhdGEpOwotICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZy
YW1lUmVxdWVzdChzZWN1cml0eU9yaWdpbigpLCByZXNvdXJjZVJlcXVlc3QsICJfc2VsZiIsIGxv
Y2tIaXN0b3J5KCksIGxvY2tCYWNrRm9yd2FyZExpc3QoKSwgTWF5YmVTZW5kUmVmZXJyZXIsIEFs
bG93TmF2aWdhdGlvblRvSW52YWxpZFVSTDo6WWVzLCBOZXdGcmFtZU9wZW5lclBvbGljeTo6QWxs
b3csIG1fc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSk7CisgICAgICAgIEZyYW1lTG9hZFJl
cXVlc3QgZnJhbWVSZXF1ZXN0KHNlY3VyaXR5T3JpZ2luKCksIHJlc291cmNlUmVxdWVzdCwgIl9z
ZWxmIiwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZl
cnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpZZXMsIE5ld0ZyYW1lT3BlbmVyUG9s
aWN5OjpBbGxvdywgc2hvdWxkT3BlbkV4dGVybmFsVVJMcygpKTsKICAgICAgICAgZnJhbWUubG9h
ZGVyKCkuY2hhbmdlTG9jYXRpb24oZnJhbWVSZXF1ZXN0KTsKICAgICB9CiB9OwpAQCAtMjI2LDcg
KzIzMyw3IEBAIHB1YmxpYzoKICAgICAgICAgaWYgKCFtX2hpc3RvcnlTdGVwcykgewogICAgICAg
ICAgICAgLy8gU3BlY2lhbCBjYXNlIGZvciBnbygwKSBmcm9tIGEgZnJhbWUgLT4gcmVsb2FkIG9u
bHkgdGhlIGZyYW1lCiAgICAgICAgICAgICAvLyBUbyBmb2xsb3cgRmlyZWZveCBhbmQgSUUncyBi
ZWhhdmlvciwgaGlzdG9yeSByZWxvYWQgY2FuIG9ubHkgbmF2aWdhdGUgdGhlIHNlbGYgZnJhbWUu
Ci0gICAgICAgICAgICBmcmFtZS5sb2FkZXIoKS51cmxTZWxlY3RlZChmcmFtZS5kb2N1bWVudCgp
LT51cmwoKSwgIl9zZWxmIiwgMCwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgp
LCBNYXliZVNlbmRSZWZlcnJlciwgbV9zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5KTsKKyAg
ICAgICAgICAgIGZyYW1lLmxvYWRlcigpLnVybFNlbGVjdGVkKGZyYW1lLmRvY3VtZW50KCktPnVy
bCgpLCAiX3NlbGYiLCAwLCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0KCksIE1h
eWJlU2VuZFJlZmVycmVyLCBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzKCkpOwogICAgICAgICAgICAg
cmV0dXJuOwogICAgICAgICB9CiAgICAgICAgIApAQCAtMjQxLDE1ICsyNDgsMTAgQEAgcHJpdmF0
ZToKIAogY2xhc3MgU2NoZWR1bGVkRm9ybVN1Ym1pc3Npb24gOiBwdWJsaWMgU2NoZWR1bGVkTmF2
aWdhdGlvbiB7CiBwdWJsaWM6Ci0gICAgU2NoZWR1bGVkRm9ybVN1Ym1pc3Npb24oUGFzc1JlZlB0
cjxGb3JtU3VibWlzc2lvbj4gc3VibWlzc2lvbiwgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFj
a0ZvcndhcmRMaXN0LCBib29sIGR1cmluZ0xvYWQpCi0gICAgICAgIDogU2NoZWR1bGVkTmF2aWdh
dGlvbigwLCBzdWJtaXNzaW9uLT5sb2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0LCBk
dXJpbmdMb2FkLCB0cnVlKQotICAgICAgICAsIG1fc3VibWlzc2lvbihzdWJtaXNzaW9uKQotICAg
ICAgICAsIG1faGF2ZVRvbGRDbGllbnQoZmFsc2UpCisgICAgU2NoZWR1bGVkRm9ybVN1Ym1pc3Np
b24oUmVmPEZvcm1TdWJtaXNzaW9uPiYmIHN1Ym1pc3Npb24sIExvY2tCYWNrRm9yd2FyZExpc3Qg
bG9ja0JhY2tGb3J3YXJkTGlzdCwgYm9vbCBkdXJpbmdMb2FkKQorICAgICAgICA6IFNjaGVkdWxl
ZE5hdmlnYXRpb24oMCwgc3VibWlzc2lvbi0+bG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJk
TGlzdCwgZHVyaW5nTG9hZCwgdHJ1ZSwgc3VibWlzc2lvbi0+c3RhdGUoKS5zb3VyY2VEb2N1bWVu
dCgpLnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3lUb1Byb3BhZ2F0ZSgpKQorICAgICAgICAs
IG1fc3VibWlzc2lvbihXVEZNb3ZlKHN1Ym1pc3Npb24pKQogICAgIHsKLSAgICAgICAgQVNTRVJU
KG1fc3VibWlzc2lvbi0+c3RhdGUoKSk7Ci0KLSAgICAgICAgaWYgKERvY3VtZW50KiBkb2N1bWVu
dCA9IG1fc3VibWlzc2lvbi0+c3RhdGUoKS0+c291cmNlRG9jdW1lbnQoKSkKLSAgICAgICAgICAg
IG1fc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSA9IGRvY3VtZW50LT5zaG91bGRPcGVuRXh0
ZXJuYWxVUkxzUG9saWN5VG9Qcm9wYWdhdGUoKTsKICAgICB9CiAKICAgICB2b2lkIGZpcmUoRnJh
bWUmIGZyYW1lKSBvdmVycmlkZQpAQCAtMjYwLDE0ICsyNjIsMTQgQEAgcHVibGljOgogICAgICAg
ICAvLyBOb3cgdGhhdCB0aGUgdGltZXIgaGFzIGZpcmVkLCB3ZSBuZWVkIHRvIHJlcGVhdCB0aGUg
c2VjdXJpdHkgY2hlY2sgd2hpY2ggbm9ybWFsbHkgaXMgZG9uZSB3aGVuCiAgICAgICAgIC8vIHNl
bGVjdGluZyBhIHRhcmdldCwgaW4gY2FzZSBjb25kaXRpb25zIGhhdmUgY2hhbmdlZC4gT3RoZXIg
Y29kZSBwYXRocyBhdm9pZCB0aGlzIGJ5IHRhcmdldGluZwogICAgICAgICAvLyB3aXRob3V0IGxl
YXZpbmcgYSB0aW1lIHdpbmRvdy4gSWYgd2UgZmFpbCB0aGUgY2hlY2sganVzdCBzaWxlbnRseSBk
cm9wIHRoZSBmb3JtIHN1Ym1pc3Npb24uCi0gICAgICAgIERvY3VtZW50KiByZXF1ZXN0aW5nRG9j
dW1lbnQgPSBtX3N1Ym1pc3Npb24tPnN0YXRlKCktPnNvdXJjZURvY3VtZW50KCk7Ci0gICAgICAg
IGlmICghcmVxdWVzdGluZ0RvY3VtZW50LT5jYW5OYXZpZ2F0ZSgmZnJhbWUpKQorICAgICAgICBh
dXRvJiByZXF1ZXN0aW5nRG9jdW1lbnQgPSBtX3N1Ym1pc3Npb24tPnN0YXRlKCkuc291cmNlRG9j
dW1lbnQoKTsKKyAgICAgICAgaWYgKCFyZXF1ZXN0aW5nRG9jdW1lbnQuY2FuTmF2aWdhdGUoJmZy
YW1lKSkKICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFt
ZVJlcXVlc3QocmVxdWVzdGluZ0RvY3VtZW50LT5zZWN1cml0eU9yaWdpbigpLCBsb2NrSGlzdG9y
eSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVycmVyLCBBbGxvd05hdmln
YXRpb25Ub0ludmFsaWRVUkw6OlllcywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBtX3No
b3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kpOworICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZy
YW1lUmVxdWVzdChyZXF1ZXN0aW5nRG9jdW1lbnQuc2VjdXJpdHlPcmlnaW4oKSwgbG9ja0hpc3Rv
cnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZp
Z2F0aW9uVG9JbnZhbGlkVVJMOjpZZXMsIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxvdywgc2hv
dWxkT3BlbkV4dGVybmFsVVJMcygpKTsKICAgICAgICAgbV9zdWJtaXNzaW9uLT5wb3B1bGF0ZUZy
YW1lTG9hZFJlcXVlc3QoZnJhbWVSZXF1ZXN0KTsKLSAgICAgICAgZnJhbWUubG9hZGVyKCkubG9h
ZEZyYW1lUmVxdWVzdChmcmFtZVJlcXVlc3QsIG1fc3VibWlzc2lvbi0+ZXZlbnQoKSwgbV9zdWJt
aXNzaW9uLT5zdGF0ZSgpKTsKKyAgICAgICAgZnJhbWUubG9hZGVyKCkubG9hZEZyYW1lUmVxdWVz
dChmcmFtZVJlcXVlc3QsIG1fc3VibWlzc2lvbi0+ZXZlbnQoKSwgJm1fc3VibWlzc2lvbi0+c3Rh
dGUoKSk7CiAgICAgfQotICAgIAorCiAgICAgdm9pZCBkaWRTdGFydFRpbWVyKEZyYW1lJiBmcmFt
ZSwgVGltZXImIHRpbWVyKSBvdmVycmlkZQogICAgIHsKICAgICAgICAgaWYgKG1faGF2ZVRvbGRD
bGllbnQpCkBAIC0yOTMsOCArMjk1LDggQEAgcHVibGljOgogICAgIH0KIAogcHJpdmF0ZToKLSAg
ICBSZWZQdHI8Rm9ybVN1Ym1pc3Npb24+IG1fc3VibWlzc2lvbjsKLSAgICBib29sIG1faGF2ZVRv
bGRDbGllbnQ7CisgICAgUmVmPEZvcm1TdWJtaXNzaW9uPiBtX3N1Ym1pc3Npb247CisgICAgYm9v
bCBtX2hhdmVUb2xkQ2xpZW50IHsgZmFsc2UgfTsKIH07CiAKIGNsYXNzIFNjaGVkdWxlZFBhZ2VC
bG9jayBmaW5hbCA6IHB1YmxpYyBTY2hlZHVsZWROYXZpZ2F0aW9uIHsKQEAgLTMxMyw3ICszMTUs
NyBAQCBwdWJsaWM6CiAgICAgICAgIFN1YnN0aXR1dGVEYXRhIHJlcGxhY2VtZW50RGF0YShTaGFy
ZWRCdWZmZXI6OmNyZWF0ZSgpLCBtX29yaWdpbkRvY3VtZW50LnVybCgpLCByZXBsYWNlbWVudFJl
c3BvbnNlLCBTdWJzdGl0dXRlRGF0YTo6U2Vzc2lvbkhpc3RvcnlWaXNpYmlsaXR5OjpIaWRkZW4p
OwogCiAgICAgICAgIFJlc291cmNlUmVxdWVzdCByZXNvdXJjZVJlcXVlc3QobV9vcmlnaW5Eb2N1
bWVudC51cmwoKSwgZW1wdHlTdHJpbmcoKSwgUmVsb2FkSWdub3JpbmdDYWNoZURhdGEpOwotICAg
ICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1lUmVxdWVzdChtX29yaWdpbkRvY3VtZW50LnNlY3Vy
aXR5T3JpZ2luKCksIHJlc291cmNlUmVxdWVzdCwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3
YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJM
OjpZZXMsIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxvdywgbV9zaG91bGRPcGVuRXh0ZXJuYWxV
UkxzUG9saWN5KTsKKyAgICAgICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFtZVJlcXVlc3QobV9vcmln
aW5Eb2N1bWVudC5zZWN1cml0eU9yaWdpbigpLCByZXNvdXJjZVJlcXVlc3QsIGxvY2tIaXN0b3J5
KCksIGxvY2tCYWNrRm9yd2FyZExpc3QoKSwgTWF5YmVTZW5kUmVmZXJyZXIsIEFsbG93TmF2aWdh
dGlvblRvSW52YWxpZFVSTDo6WWVzLCBOZXdGcmFtZU9wZW5lclBvbGljeTo6QWxsb3csIHNob3Vs
ZE9wZW5FeHRlcm5hbFVSTHMoKSk7CiAgICAgICAgIGZyYW1lUmVxdWVzdC5zZXRTdWJzdGl0dXRl
RGF0YShyZXBsYWNlbWVudERhdGEpOwogICAgICAgICBmcmFtZS5sb2FkZXIoKS5sb2FkKGZyYW1l
UmVxdWVzdCk7CiAgICAgfQpAQCAtMzY0LDcgKzM2Niw3IEBAIGlubGluZSBib29sIE5hdmlnYXRp
b25TY2hlZHVsZXI6OnNob3VsZFNjaGVkdWxlTmF2aWdhdGlvbihjb25zdCBVUkwmIHVybCkgY29u
c3QKICAgICByZXR1cm4gTmF2aWdhdGlvbkRpc2FibGVyRm9yQmVmb3JlVW5sb2FkOjppc05hdmln
YXRpb25BbGxvd2VkKCk7CiB9CiAKLXZvaWQgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2NoZWR1bGVS
ZWRpcmVjdChEb2N1bWVudCogaW5pdGlhdGluZ0RvY3VtZW50LCBkb3VibGUgZGVsYXksIGNvbnN0
IFVSTCYgdXJsKQordm9pZCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjpzY2hlZHVsZVJlZGlyZWN0KERv
Y3VtZW50JiBpbml0aWF0aW5nRG9jdW1lbnQsIGRvdWJsZSBkZWxheSwgY29uc3QgVVJMJiB1cmwp
CiB7CiAgICAgaWYgKCFzaG91bGRTY2hlZHVsZU5hdmlnYXRpb24odXJsKSkKICAgICAgICAgcmV0
dXJuOwpAQCAtMzc1LDcgKzM3Nyw3IEBAIHZvaWQgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2NoZWR1
bGVSZWRpcmVjdChEb2N1bWVudCogaW5pdGlhdGluZ0RvY3VtZW50LCBkb3VibGUKIAogICAgIC8v
IFdlIHdhbnQgYSBuZXcgYmFjay9mb3J3YXJkIGxpc3QgaXRlbSBpZiB0aGUgcmVmcmVzaCB0aW1l
b3V0IGlzID4gMSBzZWNvbmQuCiAgICAgaWYgKCFtX3JlZGlyZWN0IHx8IGRlbGF5IDw9IG1fcmVk
aXJlY3QtPmRlbGF5KCkpIHsKLSAgICAgICAgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0Zv
cndhcmRMaXN0ID0gZGVsYXkgPD0gMSA/IExvY2tCYWNrRm9yd2FyZExpc3Q6OlllcyA6IExvY2tC
YWNrRm9yd2FyZExpc3Q6Ok5vOworICAgICAgICBhdXRvIGxvY2tCYWNrRm9yd2FyZExpc3QgPSBk
ZWxheSA8PSAxID8gTG9ja0JhY2tGb3J3YXJkTGlzdDo6WWVzIDogTG9ja0JhY2tGb3J3YXJkTGlz
dDo6Tm87CiAgICAgICAgIHNjaGVkdWxlKHN0ZDo6bWFrZV91bmlxdWU8U2NoZWR1bGVkUmVkaXJl
Y3Q+KGluaXRpYXRpbmdEb2N1bWVudCwgZGVsYXksIG1fZnJhbWUuZG9jdW1lbnQoKS0+c2VjdXJp
dHlPcmlnaW4oKSwgdXJsLCBMb2NrSGlzdG9yeTo6WWVzLCBsb2NrQmFja0ZvcndhcmRMaXN0KSk7
CiAgICAgfQogfQpAQCAtMzk4LDcgKzQwMCw3IEBAIExvY2tCYWNrRm9yd2FyZExpc3QgTmF2aWdh
dGlvblNjaGVkdWxlcjo6bXVzdExvY2tCYWNrRm9yd2FyZExpc3QoRnJhbWUmIHRhcmdldEZyCiAg
ICAgcmV0dXJuIExvY2tCYWNrRm9yd2FyZExpc3Q6Ok5vOwogfQogCi12b2lkIE5hdmlnYXRpb25T
Y2hlZHVsZXI6OnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UoRG9jdW1lbnQqIGluaXRpYXRpbmdEb2N1
bWVudCwgU2VjdXJpdHlPcmlnaW4qIHNlY3VyaXR5T3JpZ2luLCBjb25zdCBVUkwmIHVybCwgY29u
c3QgU3RyaW5nJiByZWZlcnJlciwgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnksIExvY2tCYWNrRm9y
d2FyZExpc3QgbG9ja0JhY2tGb3J3YXJkTGlzdCkKK3ZvaWQgTmF2aWdhdGlvblNjaGVkdWxlcjo6
c2NoZWR1bGVMb2NhdGlvbkNoYW5nZShEb2N1bWVudCYgaW5pdGlhdGluZ0RvY3VtZW50LCBTZWN1
cml0eU9yaWdpbiogc2VjdXJpdHlPcmlnaW4sIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcm
IHJlZmVycmVyLCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSwgTG9ja0JhY2tGb3J3YXJkTGlzdCBs
b2NrQmFja0ZvcndhcmRMaXN0KQogewogICAgIGlmICghc2hvdWxkU2NoZWR1bGVOYXZpZ2F0aW9u
KHVybCkpCiAgICAgICAgIHJldHVybjsKQEAgLTQxMiwxMCArNDE0LDcgQEAgdm9pZCBOYXZpZ2F0
aW9uU2NoZWR1bGVyOjpzY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKERvY3VtZW50KiBpbml0aWF0aW5n
RG9jdW1lbnQsIFMKICAgICAvLyBmcmFnbWVudCBwYXJ0LCB3ZSBkb24ndCBuZWVkIHRvIHNjaGVk
dWxlIHRoZSBsb2NhdGlvbiBjaGFuZ2UuCiAgICAgaWYgKHVybC5oYXNGcmFnbWVudElkZW50aWZp
ZXIoKSAmJiBlcXVhbElnbm9yaW5nRnJhZ21lbnRJZGVudGlmaWVyKG1fZnJhbWUuZG9jdW1lbnQo
KS0+dXJsKCksIHVybCkpIHsKICAgICAgICAgUmVzb3VyY2VSZXF1ZXN0IHJlc291cmNlUmVxdWVz
dChtX2ZyYW1lLmRvY3VtZW50KCktPmNvbXBsZXRlVVJMKHVybCksIHJlZmVycmVyLCBVc2VQcm90
b2NvbENhY2hlUG9saWN5KTsKLSAgICAgICAgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSBz
aG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5ID0gU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGlj
eTo6U2hvdWxkTm90QWxsb3c7Ci0gICAgICAgIGlmIChpbml0aWF0aW5nRG9jdW1lbnQpCi0gICAg
ICAgICAgICBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5ID0gaW5pdGlhdGluZ0RvY3VtZW50
LT5zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5VG9Qcm9wYWdhdGUoKTsKLSAgICAgICAgRnJh
bWVMb2FkUmVxdWVzdCBmcmFtZVJlcXVlc3Qoc2VjdXJpdHlPcmlnaW4sIHJlc291cmNlUmVxdWVz
dCwgIl9zZWxmIiwgbG9ja0hpc3RvcnksIGxvY2tCYWNrRm9yd2FyZExpc3QsIE1heWJlU2VuZFJl
ZmVycmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkw6Ok5vLCBOZXdGcmFtZU9wZW5lclBv
bGljeTo6QWxsb3csIFJlcGxhY2VEb2N1bWVudElmSmF2YVNjcmlwdFVSTCwgc2hvdWxkT3BlbkV4
dGVybmFsVVJMc1BvbGljeSk7CisgICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0
KHNlY3VyaXR5T3JpZ2luLCByZXNvdXJjZVJlcXVlc3QsICJfc2VsZiIsIGxvY2tIaXN0b3J5LCBs
b2NrQmFja0ZvcndhcmRMaXN0LCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9J
bnZhbGlkVVJMOjpObywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBSZXBsYWNlRG9jdW1l
bnRJZkphdmFTY3JpcHRVUkwsIGluaXRpYXRpbmdEb2N1bWVudC5zaG91bGRPcGVuRXh0ZXJuYWxV
UkxzUG9saWN5VG9Qcm9wYWdhdGUoKSk7CiAgICAgICAgIGxvYWRlci5jaGFuZ2VMb2NhdGlvbihm
cmFtZVJlcXVlc3QpOwogICAgICAgICByZXR1cm47CiAgICAgfQpAQCAtNDI3LDcgKzQyNiw3IEBA
IHZvaWQgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2NoZWR1bGVMb2NhdGlvbkNoYW5nZShEb2N1bWVu
dCogaW5pdGlhdGluZ0RvY3VtZW50LCBTCiAgICAgc2NoZWR1bGUoc3RkOjptYWtlX3VuaXF1ZTxT
Y2hlZHVsZWRMb2NhdGlvbkNoYW5nZT4oaW5pdGlhdGluZ0RvY3VtZW50LCBzZWN1cml0eU9yaWdp
biwgdXJsLCByZWZlcnJlciwgbG9ja0hpc3RvcnksIGxvY2tCYWNrRm9yd2FyZExpc3QsIGR1cmlu
Z0xvYWQpKTsKIH0KIAotdm9pZCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjpzY2hlZHVsZUZvcm1TdWJt
aXNzaW9uKFBhc3NSZWZQdHI8Rm9ybVN1Ym1pc3Npb24+IHN1Ym1pc3Npb24pCit2b2lkIE5hdmln
YXRpb25TY2hlZHVsZXI6OnNjaGVkdWxlRm9ybVN1Ym1pc3Npb24oUmVmPEZvcm1TdWJtaXNzaW9u
PiYmIHN1Ym1pc3Npb24pCiB7CiAgICAgQVNTRVJUKG1fZnJhbWUucGFnZSgpKTsKIApAQCAtNDQz
LDE0ICs0NDIsMTQgQEAgdm9pZCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjpzY2hlZHVsZUZvcm1TdWJt
aXNzaW9uKFBhc3NSZWZQdHI8Rm9ybVN1Ym1pc3Npb24+IHN1Ym0KICAgICAvLyBTZWUgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMyMzgzIGZvciB0aGUgb3JpZ2luYWwg
bW90aXZhdGlvbiBmb3IgdGhpcy4KICAgICBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9y
d2FyZExpc3QgPSBtdXN0TG9ja0JhY2tGb3J3YXJkTGlzdChtX2ZyYW1lKTsKICAgICBpZiAobG9j
a0JhY2tGb3J3YXJkTGlzdCA9PSBMb2NrQmFja0ZvcndhcmRMaXN0OjpObwotICAgICAgICAmJiAo
c3VibWlzc2lvbi0+c3RhdGUoKS0+Zm9ybVN1Ym1pc3Npb25UcmlnZ2VyKCkgPT0gU3VibWl0dGVk
QnlKYXZhU2NyaXB0ICYmIG1fZnJhbWUudHJlZSgpLnBhcmVudCgpICYmICFVc2VyR2VzdHVyZUlu
ZGljYXRvcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkpKSB7CisgICAgICAgICYmIChzdWJtaXNz
aW9uLT5zdGF0ZSgpLmZvcm1TdWJtaXNzaW9uVHJpZ2dlcigpID09IFN1Ym1pdHRlZEJ5SmF2YVNj
cmlwdCAmJiBtX2ZyYW1lLnRyZWUoKS5wYXJlbnQoKSAmJiAhVXNlckdlc3R1cmVJbmRpY2F0b3I6
OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpKSkgewogICAgICAgICBsb2NrQmFja0ZvcndhcmRMaXN0
ID0gTG9ja0JhY2tGb3J3YXJkTGlzdDo6WWVzOwogICAgIH0KICAgICAKLSAgICBzY2hlZHVsZShz
dGQ6Om1ha2VfdW5pcXVlPFNjaGVkdWxlZEZvcm1TdWJtaXNzaW9uPihzdWJtaXNzaW9uLCBsb2Nr
QmFja0ZvcndhcmRMaXN0LCBkdXJpbmdMb2FkKSk7CisgICAgc2NoZWR1bGUoc3RkOjptYWtlX3Vu
aXF1ZTxTY2hlZHVsZWRGb3JtU3VibWlzc2lvbj4oV1RGTW92ZShzdWJtaXNzaW9uKSwgbG9ja0Jh
Y2tGb3J3YXJkTGlzdCwgZHVyaW5nTG9hZCkpOwogfQogCi12b2lkIE5hdmlnYXRpb25TY2hlZHVs
ZXI6OnNjaGVkdWxlUmVmcmVzaChEb2N1bWVudCogaW5pdGlhdGluZ0RvY3VtZW50KQordm9pZCBO
YXZpZ2F0aW9uU2NoZWR1bGVyOjpzY2hlZHVsZVJlZnJlc2goRG9jdW1lbnQmIGluaXRpYXRpbmdE
b2N1bWVudCkKIHsKICAgICBpZiAoIXNob3VsZFNjaGVkdWxlTmF2aWdhdGlvbigpKQogICAgICAg
ICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvblNj
aGVkdWxlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL05hdmlnYXRpb25TY2hlZHVsZXIuaApp
bmRleCA0OWM0M2JlMmJiMTVlYmE4MDU2NTc2NjEyZDE1ZDFhYmNmMzA3NzE3Li4wYWUxNzExNDU4
YzM3NDZmNzc4MTZmZWQ5MzY3YmE0OGJmNjE2ZmQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0
IChDKSAyMDA2LTIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJp
Z2h0IChDKSAyMDA2LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICogQ29w
eXJpZ2h0IChDKSAyMDA4LCAyMDA5IFRvcmNoIE1vYmlsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuIChodHRwOi8vd3d3LnRvcmNobW9iaWxlLmNvbS8pCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDkg
QWRhbSBCYXJ0aC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCkBAIC02OCwxMCArNjgsMTAgQEAg
cHVibGljOgogICAgIGJvb2wgcmVkaXJlY3RTY2hlZHVsZWREdXJpbmdMb2FkKCk7CiAgICAgYm9v
bCBsb2NhdGlvbkNoYW5nZVBlbmRpbmcoKTsKIAotICAgIHZvaWQgc2NoZWR1bGVSZWRpcmVjdChE
b2N1bWVudCogaW5pdGlhdGluZ0RvY3VtZW50LCBkb3VibGUgZGVsYXksIGNvbnN0IFVSTCYpOwot
ICAgIHZvaWQgc2NoZWR1bGVMb2NhdGlvbkNoYW5nZShEb2N1bWVudCogaW5pdGlhdGluZ0RvY3Vt
ZW50LCBTZWN1cml0eU9yaWdpbiosIGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIs
IExvY2tIaXN0b3J5ID0gTG9ja0hpc3Rvcnk6OlllcywgTG9ja0JhY2tGb3J3YXJkTGlzdCA9IExv
Y2tCYWNrRm9yd2FyZExpc3Q6Olllcyk7Ci0gICAgdm9pZCBzY2hlZHVsZUZvcm1TdWJtaXNzaW9u
KFBhc3NSZWZQdHI8Rm9ybVN1Ym1pc3Npb24+KTsKLSAgICB2b2lkIHNjaGVkdWxlUmVmcmVzaChE
b2N1bWVudCogaW5pdGlhdGluZ0RvY3VtZW50KTsKKyAgICB2b2lkIHNjaGVkdWxlUmVkaXJlY3Qo
RG9jdW1lbnQmIGluaXRpYXRpbmdEb2N1bWVudCwgZG91YmxlIGRlbGF5LCBjb25zdCBVUkwmKTsK
KyAgICB2b2lkIHNjaGVkdWxlTG9jYXRpb25DaGFuZ2UoRG9jdW1lbnQmIGluaXRpYXRpbmdEb2N1
bWVudCwgU2VjdXJpdHlPcmlnaW4qLCBjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIHJlZmVycmVy
LCBMb2NrSGlzdG9yeSA9IExvY2tIaXN0b3J5OjpZZXMsIExvY2tCYWNrRm9yd2FyZExpc3QgPSBM
b2NrQmFja0ZvcndhcmRMaXN0OjpZZXMpOworICAgIHZvaWQgc2NoZWR1bGVGb3JtU3VibWlzc2lv
bihSZWY8Rm9ybVN1Ym1pc3Npb24+JiYpOworICAgIHZvaWQgc2NoZWR1bGVSZWZyZXNoKERvY3Vt
ZW50JiBpbml0aWF0aW5nRG9jdW1lbnQpOwogICAgIHZvaWQgc2NoZWR1bGVIaXN0b3J5TmF2aWdh
dGlvbihpbnQgc3RlcHMpOwogICAgIHZvaWQgc2NoZWR1bGVQYWdlQmxvY2soRG9jdW1lbnQmIG9y
aWdpbkRvY3VtZW50KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291
cmNlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5jcHAK
aW5kZXggOWUyYWJkYWRjYTE3ODFhZDEwNWMzOTQ5ZjJmMGNkMTBmZWVhYWQ3YS4uMzY1MGViYjU4
OGQ4MDJhODYxZTMzMGExZWQ3NzAwYTk1M2M2N2Y0OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
UmVzb3VyY2VMb2FkZXIuY3BwCkBAIC0xOTEsNyArMTkxLDcgQEAgdm9pZCBSZXNvdXJjZUxvYWRl
cjo6c3RhcnQoKQogICAgICAgICByZXR1cm47CiAjZW5kaWYKIAotICAgIGlmIChtX2RvY3VtZW50
TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5tYXliZUxvYWRSZXNvdXJjZSgqdGhpcywg
bV9yZXF1ZXN0LCBtX3JlcXVlc3QudXJsKCkpKQorICAgIGlmIChtX2RvY3VtZW50TG9hZGVyLT5h
cHBsaWNhdGlvbkNhY2hlSG9zdCgpLm1heWJlTG9hZFJlc291cmNlKCp0aGlzLCBtX3JlcXVlc3Qs
IG1fcmVxdWVzdC51cmwoKSkpCiAgICAgICAgIHJldHVybjsKIAogICAgIGlmIChtX2RlZmVyc0xv
YWRpbmcpIHsKQEAgLTYwNyw3ICs2MDcsNyBAQCBSZXNvdXJjZUVycm9yIFJlc291cmNlTG9hZGVy
OjpjYW5ub3RTaG93VVJMRXJyb3IoKQogCiBSZXNvdXJjZVJlcXVlc3QgUmVzb3VyY2VMb2FkZXI6
OndpbGxTZW5kUmVxdWVzdChSZXNvdXJjZUhhbmRsZSosIFJlc291cmNlUmVxdWVzdCYmIHJlcXVl
c3QsIFJlc291cmNlUmVzcG9uc2UmJiByZWRpcmVjdFJlc3BvbnNlKQogewotICAgIGlmIChkb2N1
bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5tYXliZUxvYWRGYWxsYmFja0Zv
clJlZGlyZWN0KHRoaXMsIHJlcXVlc3QsIHJlZGlyZWN0UmVzcG9uc2UpKQorICAgIGlmIChkb2N1
bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLm1heWJlTG9hZEZhbGxiYWNrRm9y
UmVkaXJlY3QodGhpcywgcmVxdWVzdCwgcmVkaXJlY3RSZXNwb25zZSkpCiAgICAgICAgIHJldHVy
biBXVEZNb3ZlKHJlcXVlc3QpOwogICAgIHdpbGxTZW5kUmVxdWVzdEludGVybmFsKHJlcXVlc3Qs
IHJlZGlyZWN0UmVzcG9uc2UpOwogICAgIHJldHVybiBXVEZNb3ZlKHJlcXVlc3QpOwpAQCAtNjIw
LDcgKzYyMCw3IEBAIHZvaWQgUmVzb3VyY2VMb2FkZXI6OmRpZFNlbmREYXRhKFJlc291cmNlSGFu
ZGxlKiwgdW5zaWduZWQgbG9uZyBsb25nIGJ5dGVzU2VudCwKIAogdm9pZCBSZXNvdXJjZUxvYWRl
cjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlSGFuZGxlKiwgUmVzb3VyY2VSZXNwb25zZSYm
IHJlc3BvbnNlKQogewotICAgIGlmIChkb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hl
SG9zdCgpLT5tYXliZUxvYWRGYWxsYmFja0ZvclJlc3BvbnNlKHRoaXMsIHJlc3BvbnNlKSkKKyAg
ICBpZiAoZG9jdW1lbnRMb2FkZXIoKS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS5tYXliZUxvYWRG
YWxsYmFja0ZvclJlc3BvbnNlKHRoaXMsIHJlc3BvbnNlKSkKICAgICAgICAgcmV0dXJuOwogICAg
IGRpZFJlY2VpdmVSZXNwb25zZShyZXNwb25zZSk7CiB9CkBAIC02NDIsNyArNjQyLDcgQEAgdm9p
ZCBSZXNvdXJjZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUhhbmRsZSosIGRvdWJs
ZSBmaW5pc2hUaW1lKQogCiB2b2lkIFJlc291cmNlTG9hZGVyOjpkaWRGYWlsKFJlc291cmNlSGFu
ZGxlKiwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7Ci0gICAgaWYgKGRvY3VtZW50TG9h
ZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZEZhbGxiYWNrRm9yRXJyb3Io
dGhpcywgZXJyb3IpKQorICAgIGlmIChkb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hl
SG9zdCgpLm1heWJlTG9hZEZhbGxiYWNrRm9yRXJyb3IodGhpcywgZXJyb3IpKQogICAgICAgICBy
ZXR1cm47CiAgICAgZGlkRmFpbChlcnJvcik7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvU3ViZnJhbWVMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YmZy
YW1lTG9hZGVyLmNwcAppbmRleCBhZjZjMTY0NDJlMWUyZTUzM2YzMDMzZjAwNGYzZjc3OTg4MGYx
ZjFmLi4wMWFlNTNhOGNkNjMwY2VhMTkyZmMzNTA4ZDg0MjkzOGFmMjc4NmE0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3ViZnJhbWVMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9TdWJmcmFtZUxvYWRlci5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICog
Q29weXJpZ2h0IChDKSAyMDA2LTIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgogICogQ29weXJpZ2h0IChDKSAyMDA4IE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vi
c2lkaWFyeSgtaWVzKQogICogQ29weXJpZ2h0IChDKSAyMDA4LCAyMDA5IFRvcmNoIE1vYmlsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuIChodHRwOi8vd3d3LnRvcmNobW9iaWxlLmNvbS8pCiAg
KiBDb3B5cmlnaHQgKEMpIDIwMDggQWxwIFRva2VyIDxhbHBAYXRva2VyLmNvbT4KQEAgLTEwOSwy
MyArMTA5LDI1IEBAIGJvb2wgU3ViZnJhbWVMb2FkZXI6OnJlc291cmNlV2lsbFVzZVBsdWdpbihj
b25zdCBTdHJpbmcmIHVybCwgY29uc3QgU3RyaW5nJiBtaW1lCiAKIGJvb2wgU3ViZnJhbWVMb2Fk
ZXI6OnBsdWdpbklzTG9hZGFibGUoY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgbWltZVR5
cGUpCiB7CisgICAgYXV0byogZG9jdW1lbnQgPSBtX2ZyYW1lLmRvY3VtZW50KCk7CisKICAgICBp
ZiAoTUlNRVR5cGVSZWdpc3RyeTo6aXNKYXZhQXBwbGV0TUlNRVR5cGUobWltZVR5cGUpKSB7CiAg
ICAgICAgIGlmICghbV9mcmFtZS5zZXR0aW5ncygpLmlzSmF2YUVuYWJsZWQoKSkKICAgICAgICAg
ICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgaWYgKGRvY3VtZW50KCkgJiYgZG9jdW1lbnQoKS0+
c2VjdXJpdHlPcmlnaW4oKS0+aXNMb2NhbCgpICYmICFtX2ZyYW1lLnNldHRpbmdzKCkuaXNKYXZh
RW5hYmxlZEZvckxvY2FsRmlsZXMoKSkKKyAgICAgICAgaWYgKGRvY3VtZW50ICYmIGRvY3VtZW50
LT5zZWN1cml0eU9yaWdpbigpLT5pc0xvY2FsKCkgJiYgIW1fZnJhbWUuc2V0dGluZ3MoKS5pc0ph
dmFFbmFibGVkRm9yTG9jYWxGaWxlcygpKQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAg
IH0KIAotICAgIGlmIChkb2N1bWVudCgpKSB7Ci0gICAgICAgIGlmIChkb2N1bWVudCgpLT5pc1Nh
bmRib3hlZChTYW5kYm94UGx1Z2lucykpCisgICAgaWYgKGRvY3VtZW50KSB7CisgICAgICAgIGlm
IChkb2N1bWVudC0+aXNTYW5kYm94ZWQoU2FuZGJveFBsdWdpbnMpKQogICAgICAgICAgICAgcmV0
dXJuIGZhbHNlOwogCi0gICAgICAgIGlmICghZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+
Y2FuRGlzcGxheSh1cmwpKSB7CisgICAgICAgIGlmICghZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2lu
KCktPmNhbkRpc3BsYXkodXJsKSkgewogICAgICAgICAgICAgRnJhbWVMb2FkZXI6OnJlcG9ydExv
Y2FsTG9hZEZhaWxlZCgmbV9mcmFtZSwgdXJsLnN0cmluZygpKTsKICAgICAgICAgICAgIHJldHVy
biBmYWxzZTsKICAgICAgICAgfQogCi0gICAgICAgIGlmICghbV9mcmFtZS5sb2FkZXIoKS5taXhl
ZENvbnRlbnRDaGVja2VyKCkuY2FuUnVuSW5zZWN1cmVDb250ZW50KGRvY3VtZW50KCktPnNlY3Vy
aXR5T3JpZ2luKCksIHVybCkpCisgICAgICAgIGlmICghbV9mcmFtZS5sb2FkZXIoKS5taXhlZENv
bnRlbnRDaGVja2VyKCkuY2FuUnVuSW5zZWN1cmVDb250ZW50KGRvY3VtZW50LT5zZWN1cml0eU9y
aWdpbigpLCB1cmwpKQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KIApAQCAtMjA2
LDE4ICsyMDgsMjAgQEAgYm9vbCBTdWJmcmFtZUxvYWRlcjo6cmVxdWVzdE9iamVjdChIVE1MUGx1
Z0luSW1hZ2VFbGVtZW50JiBvd25lckVsZW1lbnQsIGNvbnN0IFMKICAgICBpZiAodXJsLmlzRW1w
dHkoKSAmJiBtaW1lVHlwZS5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAorICAg
IGF1dG8mIGRvY3VtZW50ID0gb3duZXJFbGVtZW50LmRvY3VtZW50KCk7CisKICAgICBVUkwgY29t
cGxldGVkVVJMOwogICAgIGlmICghdXJsLmlzRW1wdHkoKSkKICAgICAgICAgY29tcGxldGVkVVJM
ID0gY29tcGxldGVVUkwodXJsKTsKIAotICAgIGRvY3VtZW50KCktPmNvbnRlbnRTZWN1cml0eVBv
bGljeSgpLT51cGdyYWRlSW5zZWN1cmVSZXF1ZXN0SWZOZWVkZWQoY29tcGxldGVkVVJMLCBDb250
ZW50U2VjdXJpdHlQb2xpY3k6Okluc2VjdXJlUmVxdWVzdFR5cGU6OkxvYWQpOworICAgIGRvY3Vt
ZW50LmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT51cGdyYWRlSW5zZWN1cmVSZXF1ZXN0SWZOZWVk
ZWQoY29tcGxldGVkVVJMLCBDb250ZW50U2VjdXJpdHlQb2xpY3k6Okluc2VjdXJlUmVxdWVzdFR5
cGU6OkxvYWQpOwogCiAgICAgYm9vbCBoYXNGYWxsYmFja0NvbnRlbnQgPSBpczxIVE1MT2JqZWN0
RWxlbWVudD4ob3duZXJFbGVtZW50KSAmJiBkb3duY2FzdDxIVE1MT2JqZWN0RWxlbWVudD4ob3du
ZXJFbGVtZW50KS5oYXNGYWxsYmFja0NvbnRlbnQoKTsKIAogICAgIGJvb2wgdXNlRmFsbGJhY2s7
CiAgICAgaWYgKHNob3VsZFVzZVBsdWdpbihjb21wbGV0ZWRVUkwsIG1pbWVUeXBlLCBoYXNGYWxs
YmFja0NvbnRlbnQsIHVzZUZhbGxiYWNrKSkgewogICAgICAgICBib29sIHN1Y2Nlc3MgPSByZXF1
ZXN0UGx1Z2luKG93bmVyRWxlbWVudCwgY29tcGxldGVkVVJMLCBtaW1lVHlwZSwgcGFyYW1OYW1l
cywgcGFyYW1WYWx1ZXMsIHVzZUZhbGxiYWNrKTsKLSAgICAgICAgbG9nUGx1Z2luUmVxdWVzdChk
b2N1bWVudCgpLT5wYWdlKCksIG1pbWVUeXBlLCBjb21wbGV0ZWRVUkwsIHN1Y2Nlc3MpOworICAg
ICAgICBsb2dQbHVnaW5SZXF1ZXN0KGRvY3VtZW50LnBhZ2UoKSwgbWltZVR5cGUsIGNvbXBsZXRl
ZFVSTCwgc3VjY2Vzcyk7CiAgICAgICAgIHJldHVybiBzdWNjZXNzOwogICAgIH0KIApAQCAtMjI3
LDcgKzIzMSw3IEBAIGJvb2wgU3ViZnJhbWVMb2FkZXI6OnJlcXVlc3RPYmplY3QoSFRNTFBsdWdJ
bkltYWdlRWxlbWVudCYgb3duZXJFbGVtZW50LCBjb25zdCBTCiAgICAgcmV0dXJuIGxvYWRPclJl
ZGlyZWN0U3ViZnJhbWUob3duZXJFbGVtZW50LCBjb21wbGV0ZWRVUkwsIGZyYW1lTmFtZSwgTG9j
a0hpc3Rvcnk6OlllcywgTG9ja0JhY2tGb3J3YXJkTGlzdDo6WWVzKTsKIH0KIAotUGFzc1JlZlB0
cjxXaWRnZXQ+IFN1YmZyYW1lTG9hZGVyOjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IElu
dFNpemUmIHNpemUsIEhUTUxBcHBsZXRFbGVtZW50JiBlbGVtZW50LCBjb25zdCBWZWN0b3I8U3Ry
aW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKQorUmVm
UHRyPFdpZGdldD4gU3ViZnJhbWVMb2FkZXI6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3Qg
SW50U2l6ZSYgc2l6ZSwgSFRNTEFwcGxldEVsZW1lbnQmIGVsZW1lbnQsIGNvbnN0IFZlY3RvcjxT
dHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpCiB7
CiAgICAgU3RyaW5nIGJhc2VVUkxTdHJpbmc7CiAgICAgU3RyaW5nIGNvZGVCYXNlVVJMU3RyaW5n
OwpAQCAtMjU2LDE0ICsyNjAsMTQgQEAgUGFzc1JlZlB0cjxXaWRnZXQ+IFN1YmZyYW1lTG9hZGVy
OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmIHNpemUsIEgKICAgICB9CiAK
ICAgICBpZiAoYmFzZVVSTFN0cmluZy5pc0VtcHR5KCkpCi0gICAgICAgIGJhc2VVUkxTdHJpbmcg
PSBtX2ZyYW1lLmRvY3VtZW50KCktPmJhc2VVUkwoKS5zdHJpbmcoKTsKKyAgICAgICAgYmFzZVVS
TFN0cmluZyA9IGVsZW1lbnQuZG9jdW1lbnQoKS5iYXNlVVJMKCkuc3RyaW5nKCk7CiAgICAgVVJM
IGJhc2VVUkwgPSBjb21wbGV0ZVVSTChiYXNlVVJMU3RyaW5nKTsKIAogICAgIFJlZlB0cjxXaWRn
ZXQ+IHdpZGdldDsKICAgICBpZiAoYWxsb3dQbHVnaW5zKCkpCi0gICAgICAgIHdpZGdldCA9IG1f
ZnJhbWUubG9hZGVyKCkuY2xpZW50KCkuY3JlYXRlSmF2YUFwcGxldFdpZGdldChzaXplLCAmZWxl
bWVudCwgYmFzZVVSTCwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMpOworICAgICAgICB3aWRnZXQg
PSBtX2ZyYW1lLmxvYWRlcigpLmNsaWVudCgpLmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoc2l6ZSwg
ZWxlbWVudCwgYmFzZVVSTCwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMpOwogCi0gICAgbG9nUGx1
Z2luUmVxdWVzdChkb2N1bWVudCgpLT5wYWdlKCksIGVsZW1lbnQuc2VydmljZVR5cGUoKSwgU3Ry
aW5nKCksIHdpZGdldCk7CisgICAgbG9nUGx1Z2luUmVxdWVzdChtX2ZyYW1lLnBhZ2UoKSwgZWxl
bWVudC5zZXJ2aWNlVHlwZSgpLCBTdHJpbmcoKSwgd2lkZ2V0KTsKIAogICAgIGlmICghd2lkZ2V0
KSB7CiAgICAgICAgIFJlbmRlckVtYmVkZGVkT2JqZWN0KiByZW5kZXJlciA9IGVsZW1lbnQucmVu
ZGVyRW1iZWRkZWRPYmplY3QoKTsKQEAgLTI3NywxNiArMjgxLDE4IEBAIFBhc3NSZWZQdHI8V2lk
Z2V0PiBTdWJmcmFtZUxvYWRlcjo6Y3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXpl
JiBzaXplLCBICiAgICAgcmV0dXJuIHdpZGdldDsKIH0KIAotRnJhbWUqIFN1YmZyYW1lTG9hZGVy
Ojpsb2FkT3JSZWRpcmVjdFN1YmZyYW1lKEhUTUxGcmFtZU93bmVyRWxlbWVudCYgb3duZXJFbGVt
ZW50LCBjb25zdCBVUkwmIHJlcXVlc3RVcmwsIGNvbnN0IEF0b21pY1N0cmluZyYgZnJhbWVOYW1l
LCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSwgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0Zv
cndhcmRMaXN0KQorRnJhbWUqIFN1YmZyYW1lTG9hZGVyOjpsb2FkT3JSZWRpcmVjdFN1YmZyYW1l
KEhUTUxGcmFtZU93bmVyRWxlbWVudCYgb3duZXJFbGVtZW50LCBjb25zdCBVUkwmIHJlcXVlc3RV
UkwsIGNvbnN0IEF0b21pY1N0cmluZyYgZnJhbWVOYW1lLCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9y
eSwgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0KQogewotICAgIFVSTCB1
cmwgPSByZXF1ZXN0VXJsOwotICAgIG93bmVyRWxlbWVudC5kb2N1bWVudCgpLmNvbnRlbnRTZWN1
cml0eVBvbGljeSgpLT51cGdyYWRlSW5zZWN1cmVSZXF1ZXN0SWZOZWVkZWQodXJsLCBDb250ZW50
U2VjdXJpdHlQb2xpY3k6Okluc2VjdXJlUmVxdWVzdFR5cGU6OkxvYWQpOworICAgIGF1dG8mIGlu
aXRpYXRpbmdEb2N1bWVudCA9IG93bmVyRWxlbWVudC5kb2N1bWVudCgpOworCisgICAgVVJMIHVw
Z3JhZGVkUmVxdWVzdFVSTCA9IHJlcXVlc3RVUkw7CisgICAgaW5pdGlhdGluZ0RvY3VtZW50LmNv
bnRlbnRTZWN1cml0eVBvbGljeSgpLT51cGdyYWRlSW5zZWN1cmVSZXF1ZXN0SWZOZWVkZWQodXBn
cmFkZWRSZXF1ZXN0VVJMLCBDb250ZW50U2VjdXJpdHlQb2xpY3k6Okluc2VjdXJlUmVxdWVzdFR5
cGU6OkxvYWQpOwogCi0gICAgRnJhbWUqIGZyYW1lID0gb3duZXJFbGVtZW50LmNvbnRlbnRGcmFt
ZSgpOworICAgIGF1dG8qIGZyYW1lID0gb3duZXJFbGVtZW50LmNvbnRlbnRGcmFtZSgpOwogICAg
IGlmIChmcmFtZSkKLSAgICAgICAgZnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVs
ZUxvY2F0aW9uQ2hhbmdlKG1fZnJhbWUuZG9jdW1lbnQoKSwgbV9mcmFtZS5kb2N1bWVudCgpLT5z
ZWN1cml0eU9yaWdpbigpLCB1cmwsIG1fZnJhbWUubG9hZGVyKCkub3V0Z29pbmdSZWZlcnJlcigp
LCBsb2NrSGlzdG9yeSwgbG9ja0JhY2tGb3J3YXJkTGlzdCk7CisgICAgICAgIGZyYW1lLT5uYXZp
Z2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZShpbml0aWF0aW5nRG9jdW1l
bnQsIGluaXRpYXRpbmdEb2N1bWVudC5zZWN1cml0eU9yaWdpbigpLCB1cGdyYWRlZFJlcXVlc3RV
UkwsIG1fZnJhbWUubG9hZGVyKCkub3V0Z29pbmdSZWZlcnJlcigpLCBsb2NrSGlzdG9yeSwgbG9j
a0JhY2tGb3J3YXJkTGlzdCk7CiAgICAgZWxzZQotICAgICAgICBmcmFtZSA9IGxvYWRTdWJmcmFt
ZShvd25lckVsZW1lbnQsIHVybCwgZnJhbWVOYW1lLCBtX2ZyYW1lLmxvYWRlcigpLm91dGdvaW5n
UmVmZXJyZXIoKSk7CisgICAgICAgIGZyYW1lID0gbG9hZFN1YmZyYW1lKG93bmVyRWxlbWVudCwg
dXBncmFkZWRSZXF1ZXN0VVJMLCBmcmFtZU5hbWUsIG1fZnJhbWUubG9hZGVyKCkub3V0Z29pbmdS
ZWZlcnJlcigpKTsKIAogICAgIGlmICghZnJhbWUpCiAgICAgICAgIHJldHVybiBudWxscHRyOwpA
QCAtMzAzLDEzICszMDksMTUgQEAgRnJhbWUqIFN1YmZyYW1lTG9hZGVyOjpsb2FkU3ViZnJhbWUo
SFRNTEZyYW1lT3duZXJFbGVtZW50JiBvd25lckVsZW1lbnQsIGNvbnN0IFUKICAgICBpbnQgbWFy
Z2luV2lkdGggPSAtMTsKICAgICBpbnQgbWFyZ2luSGVpZ2h0ID0gLTE7CiAgICAgaWYgKGlzPEhU
TUxGcmFtZUVsZW1lbnRCYXNlPihvd25lckVsZW1lbnQpKSB7Ci0gICAgICAgIEhUTUxGcmFtZUVs
ZW1lbnRCYXNlJiBmcmFtZUVsZW1lbnRCYXNlID0gZG93bmNhc3Q8SFRNTEZyYW1lRWxlbWVudEJh
c2U+KG93bmVyRWxlbWVudCk7CisgICAgICAgIGF1dG8mIGZyYW1lRWxlbWVudEJhc2UgPSBkb3du
Y2FzdDxIVE1MRnJhbWVFbGVtZW50QmFzZT4ob3duZXJFbGVtZW50KTsKICAgICAgICAgYWxsb3dz
U2Nyb2xsaW5nID0gZnJhbWVFbGVtZW50QmFzZS5zY3JvbGxpbmdNb2RlKCkgIT0gU2Nyb2xsYmFy
QWx3YXlzT2ZmOwogICAgICAgICBtYXJnaW5XaWR0aCA9IGZyYW1lRWxlbWVudEJhc2UubWFyZ2lu
V2lkdGgoKTsKICAgICAgICAgbWFyZ2luSGVpZ2h0ID0gZnJhbWVFbGVtZW50QmFzZS5tYXJnaW5I
ZWlnaHQoKTsKICAgICB9CiAKLSAgICBpZiAoIW93bmVyRWxlbWVudC5kb2N1bWVudCgpLnNlY3Vy
aXR5T3JpZ2luKCktPmNhbkRpc3BsYXkodXJsKSkgeworICAgIGF1dG8gZG9jdW1lbnQgPSBtYWtl
UmVmKG93bmVyRWxlbWVudC5kb2N1bWVudCgpKTsKKworICAgIGlmICghZG9jdW1lbnQtPnNlY3Vy
aXR5T3JpZ2luKCktPmNhbkRpc3BsYXkodXJsKSkgewogICAgICAgICBGcmFtZUxvYWRlcjo6cmVw
b3J0TG9jYWxMb2FkRmFpbGVkKCZtX2ZyYW1lLCB1cmwuc3RyaW5nKCkpOwogICAgICAgICByZXR1
cm4gbnVsbHB0cjsKICAgICB9CkBAIC0zMTcsMjAgKzMyNSwyMCBAQCBGcmFtZSogU3ViZnJhbWVM
b2FkZXI6OmxvYWRTdWJmcmFtZShIVE1MRnJhbWVPd25lckVsZW1lbnQmIG93bmVyRWxlbWVudCwg
Y29uc3QgVQogICAgIGlmICghU3ViZnJhbWVMb2FkaW5nRGlzYWJsZXI6OmNhbkxvYWRGcmFtZShv
d25lckVsZW1lbnQpKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAotICAgIFN0cmluZyByZWZl
cnJlclRvVXNlID0gU2VjdXJpdHlQb2xpY3k6OmdlbmVyYXRlUmVmZXJyZXJIZWFkZXIob3duZXJF
bGVtZW50LmRvY3VtZW50KCkucmVmZXJyZXJQb2xpY3koKSwgdXJsLCByZWZlcnJlcik7CisgICAg
U3RyaW5nIHJlZmVycmVyVG9Vc2UgPSBTZWN1cml0eVBvbGljeTo6Z2VuZXJhdGVSZWZlcnJlckhl
YWRlcihkb2N1bWVudC0+cmVmZXJyZXJQb2xpY3koKSwgdXJsLCByZWZlcnJlcik7CiAKICAgICAv
LyBQcmV2ZW50IGluaXRpYWwgZW1wdHkgZG9jdW1lbnQgbG9hZCBmcm9tIHRyaWdnZXJpbmcgbG9h
ZCBldmVudHMuCi0gICAgbV9mcmFtZS5kb2N1bWVudCgpLT5pbmNyZW1lbnRMb2FkRXZlbnREZWxh
eUNvdW50KCk7CisgICAgZG9jdW1lbnQtPmluY3JlbWVudExvYWRFdmVudERlbGF5Q291bnQoKTsK
IAotICAgIFJlZlB0cjxGcmFtZT4gZnJhbWUgPSBtX2ZyYW1lLmxvYWRlcigpLmNsaWVudCgpLmNy
ZWF0ZUZyYW1lKHVybCwgbmFtZSwgJm93bmVyRWxlbWVudCwgcmVmZXJyZXJUb1VzZSwgYWxsb3dz
U2Nyb2xsaW5nLCBtYXJnaW5XaWR0aCwgbWFyZ2luSGVpZ2h0KTsKKyAgICBhdXRvIGZyYW1lID0g
bV9mcmFtZS5sb2FkZXIoKS5jbGllbnQoKS5jcmVhdGVGcmFtZSh1cmwsIG5hbWUsIG93bmVyRWxl
bWVudCwgcmVmZXJyZXJUb1VzZSwgYWxsb3dzU2Nyb2xsaW5nLCBtYXJnaW5XaWR0aCwgbWFyZ2lu
SGVpZ2h0KTsKIAotICAgIG1fZnJhbWUuZG9jdW1lbnQoKS0+ZGVjcmVtZW50TG9hZEV2ZW50RGVs
YXlDb3VudCgpOworICAgIGRvY3VtZW50LT5kZWNyZW1lbnRMb2FkRXZlbnREZWxheUNvdW50KCk7
CiAKICAgICBpZiAoIWZyYW1lKSAgewogICAgICAgICBtX2ZyYW1lLmxvYWRlcigpLmNoZWNrQ2Fs
bEltcGxpY2l0Q2xvc2UoKTsKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQotICAgIAor
CiAgICAgLy8gQWxsIG5ldyBmcmFtZXMgd2lsbCBoYXZlIG1faXNDb21wbGV0ZSBzZXQgdG8gdHJ1
ZSBhdCB0aGlzIHBvaW50IGR1ZSB0byBzeW5jaHJvbm91c2x5IGxvYWRpbmcKICAgICAvLyBhbiBl
bXB0eSBkb2N1bWVudCBpbiBGcmFtZUxvYWRlcjo6aW5pdCgpLiBCdXQgbWFueSBmcmFtZXMgd2ls
bCBub3cgYmUgc3RhcnRpbmcgYW4KICAgICAvLyBhc3luY2hyb25vdXMgbG9hZCBvZiB1cmwsIHNv
IHdlIHNldCBtX2lzQ29tcGxldGUgdG8gZmFsc2UgYW5kIHRoZW4gY2hlY2sgaWYgdGhlIGxvYWQg
aXMKQEAgLTM0MCwxMiArMzQ4LDEyIEBAIEZyYW1lKiBTdWJmcmFtZUxvYWRlcjo6bG9hZFN1YmZy
YW1lKEhUTUxGcmFtZU93bmVyRWxlbWVudCYgb3duZXJFbGVtZW50LCBjb25zdCBVCiAgICAgZnJh
bWUtPmxvYWRlcigpLnN0YXJ0ZWQoKTsKICAgIAogICAgIGF1dG8qIHJlbmRlcmVyID0gb3duZXJF
bGVtZW50LnJlbmRlcmVyKCk7Ci0gICAgRnJhbWVWaWV3KiB2aWV3ID0gZnJhbWUtPnZpZXcoKTsK
KyAgICBhdXRvKiB2aWV3ID0gZnJhbWUtPnZpZXcoKTsKICAgICBpZiAoaXM8UmVuZGVyV2lkZ2V0
PihyZW5kZXJlcikgJiYgdmlldykKICAgICAgICAgZG93bmNhc3Q8UmVuZGVyV2lkZ2V0PigqcmVu
ZGVyZXIpLnNldFdpZGdldCh2aWV3KTsKLSAgICAKKwogICAgIG1fZnJhbWUubG9hZGVyKCkuY2hl
Y2tDYWxsSW1wbGljaXRDbG9zZSgpOwotICAgIAorCiAgICAgLy8gU29tZSBsb2FkcyBhcmUgcGVy
Zm9ybWVkIHN5bmNocm9ub3VzbHkgKGUuZy4sIGFib3V0OmJsYW5rIGFuZCBsb2FkcwogICAgIC8v
IGNhbmNlbGxlZCBieSByZXR1cm5pbmcgYSBudWxsIFJlc291cmNlUmVxdWVzdCBmcm9tIHJlcXVl
c3RGcm9tRGVsZWdhdGUpLgogICAgIC8vIEluIHRoZXNlIGNhc2VzLCB0aGUgc3luY2hyb25vdXMg
bG9hZCB3b3VsZCBoYXZlIGZpbmlzaGVkCkBAIC0zODEsMTcgKzM4OSwxNCBAQCBib29sIFN1YmZy
YW1lTG9hZGVyOjpzaG91bGRVc2VQbHVnaW4oY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYg
bWltZVR5cGUsIGJvbwogICAgIHJldHVybiBvYmplY3RUeXBlID09IE9iamVjdENvbnRlbnRUeXBl
OjpOb25lIHx8IG9iamVjdFR5cGUgPT0gT2JqZWN0Q29udGVudFR5cGU6OlBsdWdJbjsKIH0KIAot
RG9jdW1lbnQqIFN1YmZyYW1lTG9hZGVyOjpkb2N1bWVudCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJu
IG1fZnJhbWUuZG9jdW1lbnQoKTsKLX0KLQogYm9vbCBTdWJmcmFtZUxvYWRlcjo6bG9hZFBsdWdp
bihIVE1MUGx1Z0luSW1hZ2VFbGVtZW50JiBwbHVnaW5FbGVtZW50LCBjb25zdCBVUkwmIHVybCwg
Y29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMs
IGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcywgYm9vbCB1c2VGYWxsYmFjaykKIHsK
ICAgICBpZiAodXNlRmFsbGJhY2spCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIFJlbmRl
ckVtYmVkZGVkT2JqZWN0KiByZW5kZXJlciA9IHBsdWdpbkVsZW1lbnQucmVuZGVyRW1iZWRkZWRP
YmplY3QoKTsKKyAgICBhdXRvJiBkb2N1bWVudCA9IHBsdWdpbkVsZW1lbnQuZG9jdW1lbnQoKTsK
KyAgICBhdXRvKiByZW5kZXJlciA9IHBsdWdpbkVsZW1lbnQucmVuZGVyRW1iZWRkZWRPYmplY3Qo
KTsKKwogICAgIC8vIEZJWE1FOiBUaGlzIGNvZGUgc2hvdWxkIG5vdCBkZXBlbmQgb24gcmVuZGVy
ZXIhCiAgICAgaWYgKCFyZW5kZXJlcikKICAgICAgICAgcmV0dXJuIGZhbHNlOwpAQCAtMzk5LDE3
ICs0MDQsMTkgQEAgYm9vbCBTdWJmcmFtZUxvYWRlcjo6bG9hZFBsdWdpbihIVE1MUGx1Z0luSW1h
Z2VFbGVtZW50JiBwbHVnaW5FbGVtZW50LCBjb25zdCBVUkwKICAgICBwbHVnaW5FbGVtZW50LnN1
YmZyYW1lTG9hZGVyV2lsbENyZWF0ZVBsdWdJbih1cmwpOwogCiAgICAgSW50U2l6ZSBjb250ZW50
U2l6ZSA9IHJvdW5kZWRJbnRTaXplKExheW91dFNpemUocmVuZGVyZXItPmNvbnRlbnRXaWR0aCgp
LCByZW5kZXJlci0+Y29udGVudEhlaWdodCgpKSk7Ci0gICAgYm9vbCBsb2FkTWFudWFsbHkgPSBp
czxQbHVnaW5Eb2N1bWVudD4oKmRvY3VtZW50KCkpICYmICFtX2NvbnRhaW5zUGx1Z2lucyAmJiBk
b3duY2FzdDxQbHVnaW5Eb2N1bWVudD4oKmRvY3VtZW50KCkpLnNob3VsZExvYWRQbHVnaW5NYW51
YWxseSgpOworICAgIGJvb2wgbG9hZE1hbnVhbGx5ID0gaXM8UGx1Z2luRG9jdW1lbnQ+KGRvY3Vt
ZW50KSAmJiAhbV9jb250YWluc1BsdWdpbnMgJiYgZG93bmNhc3Q8UGx1Z2luRG9jdW1lbnQ+KGRv
Y3VtZW50KS5zaG91bGRMb2FkUGx1Z2luTWFudWFsbHkoKTsKIAogI2lmIFBMQVRGT1JNKElPUykK
ICAgICAvLyBPbiBpT1MsIHdlIG9ubHkgdGVsbCB0aGUgcGx1Z2luIHRvIGJlIGluIGZ1bGwgcGFn
ZSBtb2RlIGlmIHRoZSBjb250YWluaW5nIHBsdWdpbiBkb2N1bWVudCBpcyB0aGUgdG9wIGxldmVs
IGRvY3VtZW50LgotICAgIGlmIChkb2N1bWVudCgpLT5vd25lckVsZW1lbnQoKSkKKyAgICBpZiAo
ZG9jdW1lbnQub3duZXJFbGVtZW50KCkpCiAgICAgICAgIGxvYWRNYW51YWxseSA9IGZhbHNlOwog
I2VuZGlmCiAKLSAgICBXZWFrUHRyPFJlbmRlcldpZGdldD4gd2Vha1JlbmRlcmVyID0gcmVuZGVy
ZXItPmNyZWF0ZVdlYWtQdHIoKTsKLSAgICAvLyBjcmVhdGVQbHVnaW4gKm1heSogY2F1c2UgdGhp
cyByZW5kZXJlciB0byBkaXNhcHBlYXIgZnJvbSB1bmRlcm5lYXRoLgotICAgIFJlZlB0cjxXaWRn
ZXQ+IHdpZGdldCA9IG1fZnJhbWUubG9hZGVyKCkuY2xpZW50KCkuY3JlYXRlUGx1Z2luKGNvbnRl
bnRTaXplLCAmcGx1Z2luRWxlbWVudCwgdXJsLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcywgbWlt
ZVR5cGUsIGxvYWRNYW51YWxseSk7CisgICAgYXV0byB3ZWFrUmVuZGVyZXIgPSByZW5kZXJlci0+
Y3JlYXRlV2Vha1B0cigpOworCisgICAgYXV0byB3aWRnZXQgPSBtX2ZyYW1lLmxvYWRlcigpLmNs
aWVudCgpLmNyZWF0ZVBsdWdpbihjb250ZW50U2l6ZSwgcGx1Z2luRWxlbWVudCwgdXJsLCBwYXJh
bU5hbWVzLCBwYXJhbVZhbHVlcywgbWltZVR5cGUsIGxvYWRNYW51YWxseSk7CisKKyAgICAvLyBU
aGUgY2FsbCB0byBjcmVhdGVQbHVnaW4gKm1heSogY2F1c2UgdGhpcyByZW5kZXJlciB0byBkaXNh
cHBlYXIgZnJvbSB1bmRlcm5lYXRoLgogICAgIGlmICghd2Vha1JlbmRlcmVyKQogICAgICAgICBy
ZXR1cm4gZmFsc2U7CiAKQEAgLTQzMyw5ICs0NDAsNyBAQCBVUkwgU3ViZnJhbWVMb2FkZXI6OmNv
bXBsZXRlVVJMKGNvbnN0IFN0cmluZyYgdXJsKSBjb25zdAogCiBib29sIFN1YmZyYW1lTG9hZGVy
OjpzaG91bGRDb252ZXJ0SW52YWxpZFVSTHNUb0JsYW5rKCkgY29uc3QKIHsKLSAgICBpZiAoU2V0
dGluZ3MqIHNldHRpbmdzID0gZG9jdW1lbnQoKSA/IGRvY3VtZW50KCktPnNldHRpbmdzKCkgOiBu
dWxscHRyKQotICAgICAgICByZXR1cm4gc2V0dGluZ3MtPnNob3VsZENvbnZlcnRJbnZhbGlkVVJM
c1RvQmxhbmsoKTsKLSAgICByZXR1cm4gdHJ1ZTsKKyAgICByZXR1cm4gbV9mcmFtZS5zZXR0aW5n
cygpLnNob3VsZENvbnZlcnRJbnZhbGlkVVJMc1RvQmxhbmsoKTsKIH0KIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YmZyYW1lTG9h
ZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3ViZnJhbWVMb2FkZXIuaAppbmRleCA5NTEz
OTc0YjgxNzA1YWVjNjVkMTU1MDIzMzkzNWQ0YTU0MjNiNzg1Li4xMmJmNzcxN2U3NDMyMzVjY2M3
ZGE3ZGNjYzMzN2Q0MjY5MmFhOTYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
U3ViZnJhbWVMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3ViZnJhbWVMb2Fk
ZXIuaApAQCAtNjEsNyArNjEsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCByZXF1ZXN0T2JqZWN0KEhU
TUxQbHVnSW5JbWFnZUVsZW1lbnQmLCBjb25zdCBTdHJpbmcmIHVybCwgY29uc3QgQXRvbWljU3Ry
aW5nJiBmcmFtZU5hbWUsCiAgICAgICAgIGNvbnN0IFN0cmluZyYgc2VydmljZVR5cGUsIGNvbnN0
IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1W
YWx1ZXMpOwogCi0gICAgUGFzc1JlZlB0cjxXaWRnZXQ+IGNyZWF0ZUphdmFBcHBsZXRXaWRnZXQo
Y29uc3QgSW50U2l6ZSYsIEhUTUxBcHBsZXRFbGVtZW50JiwgY29uc3QgVmVjdG9yPFN0cmluZz4m
IHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcyk7CisgICAgUmVm
UHRyPFdpZGdldD4gY3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXplJiwgSFRNTEFw
cGxldEVsZW1lbnQmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVj
dG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgYWxs
b3dQbHVnaW5zKCk7CiAKQEAgLTc4LDE0ICs3OCwxMiBAQCBwcml2YXRlOgogICAgIGJvb2wgc2hv
dWxkVXNlUGx1Z2luKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUsIGJvb2wgaGFz
RmFsbGJhY2ssIGJvb2wmIHVzZUZhbGxiYWNrKTsKICAgICBib29sIHBsdWdpbklzTG9hZGFibGUo
Y29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSk7CiAKLSAgICBEb2N1bWVudCogZG9j
dW1lbnQoKSBjb25zdDsKKyAgICBVUkwgY29tcGxldGVVUkwoY29uc3QgU3RyaW5nJikgY29uc3Q7
CiAKICAgICBib29sIHNob3VsZENvbnZlcnRJbnZhbGlkVVJMc1RvQmxhbmsoKSBjb25zdDsKIAog
ICAgIGJvb2wgbV9jb250YWluc1BsdWdpbnM7CiAgICAgRnJhbWUmIG1fZnJhbWU7Ci0KLSAgICBV
UkwgY29tcGxldGVVUkwoY29uc3QgU3RyaW5nJikgY29uc3Q7CiB9OwogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VM
b2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YnJlc291cmNlTG9hZGVyLmNwcApp
bmRleCBiNmE2MzQxMGQzZWM2NmY5NWU2NjEwNWFhZGY3YzMzMmY5YjQ0MWE2Li42ZTk3ZmE0OTFm
NDJiYTRjZTUyOTI2NTkxOWIzNmI4M2Y1MzFjMzU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9TdWJyZXNvdXJjZUxvYWRlci5jcHAKQEAgLTI1Niw2ICsyNTYsNyBAQCB2b2lkIFN1YnJlc291
cmNlTG9hZGVyOjpkaWRTZW5kRGF0YSh1bnNpZ25lZCBsb25nIGxvbmcgYnl0ZXNTZW50LCB1bnNp
Z25lZCBsb25nCiB9CiAKICNpZiBVU0UoUVVJQ0tfTE9PSykKKwogYm9vbCBTdWJyZXNvdXJjZUxv
YWRlcjo6c2hvdWxkQ3JlYXRlUXVpY2tMb29rSGFuZGxlRm9yUmVzcG9uc2UoY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYgcmVzcG9uc2UpIGNvbnN0CiB7CiAgICAgaWYgKG1fcmVzb3VyY2UtPnR5cGUo
KSAhPSBDYWNoZWRSZXNvdXJjZTo6TWFpblJlc291cmNlKQpAQCAtMjY2LDYgKzI2Nyw3IEBAIGJv
b2wgU3VicmVzb3VyY2VMb2FkZXI6OnNob3VsZENyZWF0ZVF1aWNrTG9va0hhbmRsZUZvclJlc3Bv
bnNlKGNvbnN0IFJlc291cmNlUmVzCiAKICAgICByZXR1cm4gUXVpY2tMb29rSGFuZGxlOjpzaG91
bGRDcmVhdGVGb3JNSU1FVHlwZShyZXNwb25zZS5taW1lVHlwZSgpKTsKIH0KKwogI2VuZGlmCiAK
IHZvaWQgU3VicmVzb3VyY2VMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZShjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiByZXNwb25zZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9h
cHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBj
YWNoZS9BcHBsaWNhdGlvbkNhY2hlLmNwcAppbmRleCA2ZjgyZTFkYzc5NmE5NjAyMDkxYmQ2ODJj
OTc0N2MyNDhiOTU0YWQxLi42MDA5Y2NhNzcyZmUyYmNhNzYwMmM3MzE0Njc4ZmU0YTI0OGI1OWJk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25D
YWNoZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9u
Q2FjaGUuY3BwCkBAIC00MywxNyArNDMsMTMgQEAgc3RhdGljIGlubGluZSBib29sIGZhbGxiYWNr
VVJMTG9uZ2VyVGhhbihjb25zdCBzdGQ6OnBhaXI8VVJMLCBVUkw+JiBsaHMsIGNvbnN0IHMKIH0K
IAogQXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZSgpCi0gICAgOiBtX2dyb3VwKG51
bGxwdHIpCi0gICAgLCBtX21hbmlmZXN0KG51bGxwdHIpCi0gICAgLCBtX2VzdGltYXRlZFNpemVJ
blN0b3JhZ2UoMCkKLSAgICAsIG1fc3RvcmFnZUlEKDApCiB7CiB9CiAKIEFwcGxpY2F0aW9uQ2Fj
aGU6On5BcHBsaWNhdGlvbkNhY2hlKCkKIHsKICAgICBpZiAobV9ncm91cCkKLSAgICAgICAgbV9n
cm91cC0+Y2FjaGVEZXN0cm95ZWQodGhpcyk7CisgICAgICAgIG1fZ3JvdXAtPmNhY2hlRGVzdHJv
eWVkKCp0aGlzKTsKIH0KICAgICAKIHZvaWQgQXBwbGljYXRpb25DYWNoZTo6c2V0R3JvdXAoQXBw
bGljYXRpb25DYWNoZUdyb3VwKiBncm91cCkKQEAgLTY0LDU3ICs2MCwzOSBAQCB2b2lkIEFwcGxp
Y2F0aW9uQ2FjaGU6OnNldEdyb3VwKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXApCiAKIGJv
b2wgQXBwbGljYXRpb25DYWNoZTo6aXNDb21wbGV0ZSgpCiB7Ci0gICAgcmV0dXJuIG1fZ3JvdXAg
JiYgbV9ncm91cC0+Y2FjaGVJc0NvbXBsZXRlKHRoaXMpOworICAgIHJldHVybiBtX2dyb3VwICYm
IG1fZ3JvdXAtPmNhY2hlSXNDb21wbGV0ZSgqdGhpcyk7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25D
YWNoZTo6c2V0TWFuaWZlc3RSZXNvdXJjZShQYXNzUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGVSZXNv
dXJjZT4gbWFuaWZlc3QpCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGU6OnNldE1hbmlmZXN0UmVzb3Vy
Y2UoUmVmPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4mJiBtYW5pZmVzdCkKIHsKLSAgICBBU1NF
UlQobWFuaWZlc3QpOwogICAgIEFTU0VSVCghbV9tYW5pZmVzdCk7CiAgICAgQVNTRVJUKG1hbmlm
ZXN0LT50eXBlKCkgJiBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6Ok1hbmlmZXN0KTsKLSAgICAK
LSAgICBtX21hbmlmZXN0ID0gbWFuaWZlc3QuZ2V0KCk7Ci0gICAgCi0gICAgYWRkUmVzb3VyY2Uo
bWFuaWZlc3QpOworCisgICAgbV9tYW5pZmVzdCA9IG1hbmlmZXN0LnB0cigpOworCisgICAgYWRk
UmVzb3VyY2UoV1RGTW92ZShtYW5pZmVzdCkpOwogfQogICAgIAotdm9pZCBBcHBsaWNhdGlvbkNh
Y2hlOjphZGRSZXNvdXJjZShQYXNzUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4gcmVz
b3VyY2UpCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGU6OmFkZFJlc291cmNlKFJlZjxBcHBsaWNhdGlv
bkNhY2hlUmVzb3VyY2U+JiYgcmVzb3VyY2UpCiB7Ci0gICAgQVNTRVJUKHJlc291cmNlKTsKLSAg
ICAKLSAgICBjb25zdCBTdHJpbmcmIHVybCA9IHJlc291cmNlLT51cmwoKTsKLSAgICAKKyAgICBh
dXRvJiB1cmwgPSByZXNvdXJjZS0+dXJsKCk7CisKKyAgICBBU1NFUlQoIVVSTChQYXJzZWRVUkxT
dHJpbmcsIHVybCkuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkpOwogICAgIEFTU0VSVCghbV9yZXNv
dXJjZXMuY29udGFpbnModXJsKSk7Ci0gICAgCisKICAgICBpZiAobV9zdG9yYWdlSUQpIHsKICAg
ICAgICAgQVNTRVJUKCFyZXNvdXJjZS0+c3RvcmFnZUlEKCkpOwogICAgICAgICBBU1NFUlQocmVz
b3VyY2UtPnR5cGUoKSAmIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6TWFzdGVyKTsKLSAgICAg
ICAgCisKICAgICAgICAgLy8gQWRkIHRoZSByZXNvdXJjZSB0byB0aGUgc3RvcmFnZS4KLSAgICAg
ICAgbV9ncm91cC0+c3RvcmFnZSgpLnN0b3JlKHJlc291cmNlLmdldCgpLCB0aGlzKTsKKyAgICAg
ICAgbV9ncm91cC0+c3RvcmFnZSgpLnN0b3JlKHJlc291cmNlLnB0cigpLCB0aGlzKTsKICAgICB9
CiAKICAgICBtX2VzdGltYXRlZFNpemVJblN0b3JhZ2UgKz0gcmVzb3VyY2UtPmVzdGltYXRlZFNp
emVJblN0b3JhZ2UoKTsKIAotICAgIG1fcmVzb3VyY2VzLnNldCh1cmwsIHJlc291cmNlKTsKKyAg
ICBtX3Jlc291cmNlcy5zZXQodXJsLCBXVEZNb3ZlKHJlc291cmNlKSk7CiB9CiAKLXVuc2lnbmVk
IEFwcGxpY2F0aW9uQ2FjaGU6OnJlbW92ZVJlc291cmNlKGNvbnN0IFN0cmluZyYgdXJsKQotewot
ICAgIEhhc2hNYXA8U3RyaW5nLCBSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPj46Oml0
ZXJhdG9yIGl0ID0gbV9yZXNvdXJjZXMuZmluZCh1cmwpOwotICAgIGlmIChpdCA9PSBtX3Jlc291
cmNlcy5lbmQoKSkKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICAvLyBUaGUgcmVzb3VyY2UgZXhp
c3RzLCBnZXQgaXRzIHR5cGUgc28gd2UgY2FuIHJldHVybiBpdC4KLSAgICB1bnNpZ25lZCB0eXBl
ID0gaXQtPnZhbHVlLT50eXBlKCk7Ci0KLSAgICBtX2VzdGltYXRlZFNpemVJblN0b3JhZ2UgLT0g
aXQtPnZhbHVlLT5lc3RpbWF0ZWRTaXplSW5TdG9yYWdlKCk7Ci0KLSAgICBtX3Jlc291cmNlcy5y
ZW1vdmUoaXQpOwotCi0gICAgcmV0dXJuIHR5cGU7Ci19ICAgIAotICAgIAogQXBwbGljYXRpb25D
YWNoZVJlc291cmNlKiBBcHBsaWNhdGlvbkNhY2hlOjpyZXNvdXJjZUZvclVSTChjb25zdCBTdHJp
bmcmIHVybCkKIHsKICAgICBBU1NFUlQoIVVSTChQYXJzZWRVUkxTdHJpbmcsIHVybCkuaGFzRnJh
Z21lbnRJZGVudGlmaWVyKCkpOwpAQCAtMTMzLDkgKzExMSw3IEBAIEFwcGxpY2F0aW9uQ2FjaGVS
ZXNvdXJjZSogQXBwbGljYXRpb25DYWNoZTo6cmVzb3VyY2VGb3JSZXF1ZXN0KGNvbnN0IFJlc291
cmNlUmVxCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCiAgICAgVVJMIHVybChyZXF1ZXN0LnVy
bCgpKTsKLSAgICBpZiAodXJsLmhhc0ZyYWdtZW50SWRlbnRpZmllcigpKQotICAgICAgICB1cmwu
cmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7Ci0KKyAgICB1cmwucmVtb3ZlRnJhZ21lbnRJZGVu
dGlmaWVyKCk7CiAgICAgcmV0dXJuIHJlc291cmNlRm9yVVJMKHVybCk7CiB9CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlLmggYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZS5oCmluZGV4IDc2
MTc2NjIwZmNkNmZhMzlhZDJhNWMzOTYxYmFjMjNiMTdhN2MwMjUuLjlhNDU4YzcxMGM0YWQwMTli
MTM1ZmYxNDY3MDA2ZGY4MDk0ODE3ZmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGUuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5
cmlnaHQgKEMpIDIwMDggQXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgorICogQ29weXJp
Z2h0IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgogICoKICAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yNiwzNSArMjYsMjggQEAKICNwcmFnbWEgb25j
ZQogCiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KLSNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgot
I2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4K
ICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvV1RG
U3RyaW5nLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgQXBwbGljYXRpb25DYWNo
ZUdyb3VwOwogY2xhc3MgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOwotY2xhc3MgRG9jdW1lbnRM
b2FkZXI7CiBjbGFzcyBVUkw7CiBjbGFzcyBSZXNvdXJjZVJlcXVlc3Q7Ci1jbGFzcyBTZWN1cml0
eU9yaWdpbjsKIAotdHlwZWRlZiBWZWN0b3I8c3RkOjpwYWlyPFVSTCwgVVJMPj4gRmFsbGJhY2tV
UkxWZWN0b3I7Cit1c2luZyBGYWxsYmFja1VSTFZlY3RvciA9IFZlY3RvcjxzdGQ6OnBhaXI8VVJM
LCBVUkw+PjsKIAogY2xhc3MgQXBwbGljYXRpb25DYWNoZSA6IHB1YmxpYyBSZWZDb3VudGVkPEFw
cGxpY2F0aW9uQ2FjaGU+IHsKIHB1YmxpYzoKICAgICBzdGF0aWMgUmVmPEFwcGxpY2F0aW9uQ2Fj
aGU+IGNyZWF0ZSgpIHsgcmV0dXJuIGFkb3B0UmVmKCpuZXcgQXBwbGljYXRpb25DYWNoZSk7IH0K
LSAgICAKKwogICAgIH5BcHBsaWNhdGlvbkNhY2hlKCk7CiAKLSAgICB2b2lkIGFkZFJlc291cmNl
KFBhc3NSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiByZXNvdXJjZSk7Ci0gICAgdW5z
aWduZWQgcmVtb3ZlUmVzb3VyY2UoY29uc3QgU3RyaW5nJiB1cmwpOwotICAgIAotICAgIHZvaWQg
c2V0TWFuaWZlc3RSZXNvdXJjZShQYXNzUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4g
bWFuaWZlc3QpOworICAgIHZvaWQgYWRkUmVzb3VyY2UoUmVmPEFwcGxpY2F0aW9uQ2FjaGVSZXNv
dXJjZT4mJik7CisKKyAgICB2b2lkIHNldE1hbmlmZXN0UmVzb3VyY2UoUmVmPEFwcGxpY2F0aW9u
Q2FjaGVSZXNvdXJjZT4mJik7CiAgICAgQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiBtYW5pZmVz
dFJlc291cmNlKCkgY29uc3QgeyByZXR1cm4gbV9tYW5pZmVzdDsgfQotICAgIAorCiAgICAgdm9p
ZCBzZXRHcm91cChBcHBsaWNhdGlvbkNhY2hlR3JvdXAqKTsKICAgICBBcHBsaWNhdGlvbkNhY2hl
R3JvdXAqIGdyb3VwKCkgY29uc3QgeyByZXR1cm4gbV9ncm91cDsgfQogCkBAIC03MiwzOSArNjUs
MzggQEAgcHVibGljOgogICAgIHZvaWQgc2V0RmFsbGJhY2tVUkxzKGNvbnN0IEZhbGxiYWNrVVJM
VmVjdG9yJik7CiAgICAgY29uc3QgRmFsbGJhY2tVUkxWZWN0b3ImIGZhbGxiYWNrVVJMcygpIGNv
bnN0IHsgcmV0dXJuIG1fZmFsbGJhY2tVUkxzOyB9CiAgICAgYm9vbCB1cmxNYXRjaGVzRmFsbGJh
Y2tOYW1lc3BhY2UoY29uc3QgVVJMJiwgVVJMKiBmYWxsYmFja1VSTCA9IG51bGxwdHIpOwotICAg
IAorCiAjaWZuZGVmIE5ERUJVRwogICAgIHZvaWQgZHVtcCgpOwogI2VuZGlmCiAKLSAgICB0eXBl
ZGVmIEhhc2hNYXA8U3RyaW5nLCBSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPj4gUmVz
b3VyY2VNYXA7CisgICAgdXNpbmcgUmVzb3VyY2VNYXAgPSBIYXNoTWFwPFN0cmluZywgUmVmUHRy
PEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4+OwogICAgIGNvbnN0IFJlc291cmNlTWFwJiByZXNv
dXJjZXMoKSBjb25zdCB7IHJldHVybiBtX3Jlc291cmNlczsgfQotICAgIAorCiAgICAgdm9pZCBz
ZXRTdG9yYWdlSUQodW5zaWduZWQgc3RvcmFnZUlEKSB7IG1fc3RvcmFnZUlEID0gc3RvcmFnZUlE
OyB9CiAgICAgdW5zaWduZWQgc3RvcmFnZUlEKCkgY29uc3QgeyByZXR1cm4gbV9zdG9yYWdlSUQ7
IH0KICAgICB2b2lkIGNsZWFyU3RvcmFnZUlEKCk7Ci0gICAgCisKICAgICBzdGF0aWMgYm9vbCBy
ZXF1ZXN0SXNIVFRQT3JIVFRQU0dldChjb25zdCBSZXNvdXJjZVJlcXVlc3QmKTsKIAogICAgIGlu
dDY0X3QgZXN0aW1hdGVkU2l6ZUluU3RvcmFnZSgpIGNvbnN0IHsgcmV0dXJuIG1fZXN0aW1hdGVk
U2l6ZUluU3RvcmFnZTsgfQogCiBwcml2YXRlOgogICAgIEFwcGxpY2F0aW9uQ2FjaGUoKTsKLSAg
ICAKLSAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIG1fZ3JvdXA7CisKKyAgICBBcHBsaWNhdGlv
bkNhY2hlR3JvdXAqIG1fZ3JvdXAgeyBudWxscHRyIH07CiAgICAgUmVzb3VyY2VNYXAgbV9yZXNv
dXJjZXM7Ci0gICAgQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiBtX21hbmlmZXN0OworICAgIEFw
cGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSogbV9tYW5pZmVzdCB7IG51bGxwdHIgfTsKIAotICAgIGJv
b2wgbV9hbGxvd0FsbE5ldHdvcmtSZXF1ZXN0czsKKyAgICBib29sIG1fYWxsb3dBbGxOZXR3b3Jr
UmVxdWVzdHMgeyBmYWxzZSB9OwogICAgIFZlY3RvcjxVUkw+IG1fb25saW5lV2hpdGVsaXN0Owog
ICAgIEZhbGxiYWNrVVJMVmVjdG9yIG1fZmFsbGJhY2tVUkxzOwogCiAgICAgLy8gVGhlIHRvdGFs
IHNpemUgb2YgdGhlIHJlc291cmNlcyBiZWxvbmdpbmcgdG8gdGhpcyBBcHBsaWNhdGlvbiBDYWNo
ZSBpbnN0YW5jZS4KLSAgICAvLyBUaGlzIGlzIGFuIGVzdGltYXRpb24gb2YgdGhlIHNpemUgdGhp
cyBBcHBsaWNhdGlvbiBDYWNoZSBvY2N1cGllcyBpbiB0aGUKLSAgICAvLyBkYXRhYmFzZSBmaWxl
LgotICAgIGludDY0X3QgbV9lc3RpbWF0ZWRTaXplSW5TdG9yYWdlOworICAgIC8vIFRoaXMgaXMg
YW4gZXN0aW1hdGlvbiBvZiB0aGUgc2l6ZSB0aGlzIEFwcGxpY2F0aW9uIENhY2hlIG9jY3VwaWVz
IGluIHRoZSBkYXRhYmFzZSBmaWxlLgorICAgIGludDY0X3QgbV9lc3RpbWF0ZWRTaXplSW5TdG9y
YWdlIHsgMCB9OwogCi0gICAgdW5zaWduZWQgbV9zdG9yYWdlSUQ7CisgICAgdW5zaWduZWQgbV9z
dG9yYWdlSUQgeyAwIH07CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAu
Y3BwCmluZGV4IDg2ZTlhNWE4ODQ5MDdjZGQzZDQ2YWZjY2RlMDNmOGQzZmEwOTg1M2EuLjk4ODFi
MjVlNWFjYjBmZTk2NDI1ZjY3YWRiMzQzMTg0MTQ3YmUwOGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuY3BwCkBA
IC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCwgMjAwOSwgMjAxMCBBcHBs
ZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxNyBB
cHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKQEAgLTM0LDYgKzM0LDcgQEAKICNpbmNsdWRlICJDaHJvbWVDbGllbnQuaCIKICNpbmNs
dWRlICJET01BcHBsaWNhdGlvbkNhY2hlLmgiCiAjaW5jbHVkZSAiRG9jdW1lbnRMb2FkZXIuaCIK
KyNpbmNsdWRlICJFdmVudE5hbWVzLmgiCiAjaW5jbHVkZSAiRnJhbWUuaCIKICNpbmNsdWRlICJG
cmFtZUxvYWRlci5oIgogI2luY2x1ZGUgIkZyYW1lTG9hZGVyQ2xpZW50LmgiCkBAIC01NCwxNyAr
NTUsNyBAQCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OkFwcGxpY2F0aW9uQ2FjaGVHcm91cChSZWY8
QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U+JiYgc3RvcgogICAgIDogbV9zdG9yYWdlKFdURk1vdmUo
c3RvcmFnZSkpCiAgICAgLCBtX21hbmlmZXN0VVJMKG1hbmlmZXN0VVJMKQogICAgICwgbV9vcmln
aW4oU2VjdXJpdHlPcmlnaW46OmNyZWF0ZShtYW5pZmVzdFVSTCkpCi0gICAgLCBtX3VwZGF0ZVN0
YXR1cyhJZGxlKQotICAgICwgbV9kb3dubG9hZGluZ1BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRl
cnNDb3VudCgwKQotICAgICwgbV9wcm9ncmVzc1RvdGFsKDApCi0gICAgLCBtX3Byb2dyZXNzRG9u
ZSgwKQotICAgICwgbV9mcmFtZShudWxscHRyKQotICAgICwgbV9zdG9yYWdlSUQoMCkKLSAgICAs
IG1faXNPYnNvbGV0ZShmYWxzZSkKLSAgICAsIG1fY29tcGxldGlvblR5cGUoTm9uZSkKLSAgICAs
IG1fY2FsbGVkUmVhY2hlZE1heEFwcENhY2hlU2l6ZShmYWxzZSkKICAgICAsIG1fYXZhaWxhYmxl
U3BhY2VJblF1b3RhKEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjp1bmtub3duUXVvdGEoKSkKLSAg
ICAsIG1fb3JpZ2luUXVvdGFFeGNlZWRlZFByZXZpb3VzbHkoZmFsc2UpCiB7CiB9CiAKQEAgLTcy
LDEwICs2MywxMCBAQCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6On5BcHBsaWNhdGlvbkNhY2hlR3Jv
dXAoKQogewogICAgIEFTU0VSVCghbV9uZXdlc3RDYWNoZSk7CiAgICAgQVNTRVJUKG1fY2FjaGVz
LmlzRW1wdHkoKSk7Ci0gICAgCisKICAgICBzdG9wTG9hZGluZygpOwogCi0gICAgbV9zdG9yYWdl
LT5jYWNoZUdyb3VwRGVzdHJveWVkKHRoaXMpOworICAgIG1fc3RvcmFnZS0+Y2FjaGVHcm91cERl
c3Ryb3llZCgqdGhpcyk7CiB9CiAgICAgCiBBcHBsaWNhdGlvbkNhY2hlKiBBcHBsaWNhdGlvbkNh
Y2hlR3JvdXA6OmNhY2hlRm9yTWFpblJlcXVlc3QoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1
ZXN0LCBEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIpCkBAIC04NCwyMSArNzUsMjAgQEAg
QXBwbGljYXRpb25DYWNoZSogQXBwbGljYXRpb25DYWNoZUdyb3VwOjpjYWNoZUZvck1haW5SZXF1
ZXN0KGNvbnN0IFJlc291cmNlUmVxdWUKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKICAgICBV
UkwgdXJsKHJlcXVlc3QudXJsKCkpOwotICAgIGlmICh1cmwuaGFzRnJhZ21lbnRJZGVudGlmaWVy
KCkpCi0gICAgICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKKyAgICB1cmwucmVt
b3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CiAKICAgICBhdXRvKiBwYWdlID0gZG9jdW1lbnRMb2Fk
ZXItPmZyYW1lKCkgPyBkb2N1bWVudExvYWRlci0+ZnJhbWUoKS0+cGFnZSgpIDogbnVsbHB0cjsK
ICAgICBpZiAoIXBhZ2UgfHwgcGFnZS0+dXNlc0VwaGVtZXJhbFNlc3Npb24oKSkKICAgICAgICAg
cmV0dXJuIG51bGxwdHI7CiAKLSAgICBpZiAoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCA9
IHBhZ2UtPmFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlKCkuY2FjaGVHcm91cEZvclVSTCh1cmwpKSB7
Ci0gICAgICAgIEFTU0VSVChncm91cC0+bmV3ZXN0Q2FjaGUoKSk7Ci0gICAgICAgIEFTU0VSVCgh
Z3JvdXAtPmlzT2Jzb2xldGUoKSk7Ci0gICAgICAgIAotICAgICAgICByZXR1cm4gZ3JvdXAtPm5l
d2VzdENhY2hlKCk7Ci0gICAgfQotICAgIAotICAgIHJldHVybiBudWxscHRyOworICAgIGF1dG8q
IGdyb3VwID0gcGFnZS0+YXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKS5jYWNoZUdyb3VwRm9yVVJM
KHVybCk7CisgICAgaWYgKCFncm91cCkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICBB
U1NFUlQoZ3JvdXAtPm5ld2VzdENhY2hlKCkpOworICAgIEFTU0VSVCghZ3JvdXAtPmlzT2Jzb2xl
dGUoKSk7CisKKyAgICByZXR1cm4gZ3JvdXAtPm5ld2VzdENhY2hlKCk7CiB9CiAgICAgCiBBcHBs
aWNhdGlvbkNhY2hlKiBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmZhbGxiYWNrQ2FjaGVGb3JNYWlu
UmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIERvY3VtZW50TG9hZGVyKiBk
b2N1bWVudExvYWRlcikKQEAgLTEwNiw4MSArOTYsODcgQEAgQXBwbGljYXRpb25DYWNoZSogQXBw
bGljYXRpb25DYWNoZUdyb3VwOjpmYWxsYmFja0NhY2hlRm9yTWFpblJlcXVlc3QoY29uc3QgUmVz
b3UKICAgICBpZiAoIUFwcGxpY2F0aW9uQ2FjaGU6OnJlcXVlc3RJc0hUVFBPckhUVFBTR2V0KHJl
cXVlc3QpKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAotICAgIFVSTCB1cmwocmVxdWVzdC51
cmwoKSk7Ci0gICAgaWYgKHVybC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSkKLSAgICAgICAgdXJs
LnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpOworICAgIGF1dG8qIGZyYW1lID0gZG9jdW1lbnRM
b2FkZXItPmZyYW1lKCk7CisgICAgaWYgKCFmcmFtZSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7
CiAKLSAgICBhdXRvKiBwYWdlID0gZG9jdW1lbnRMb2FkZXItPmZyYW1lKCkgPyBkb2N1bWVudExv
YWRlci0+ZnJhbWUoKS0+cGFnZSgpIDogbnVsbHB0cjsKKyAgICBhdXRvKiBwYWdlID0gZnJhbWUt
PnBhZ2UoKTsKICAgICBpZiAoIXBhZ2UpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAg
aWYgKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAgPSBwYWdlLT5hcHBsaWNhdGlvbkNhY2hl
U3RvcmFnZSgpLmZhbGxiYWNrQ2FjaGVHcm91cEZvclVSTCh1cmwpKSB7Ci0gICAgICAgIEFTU0VS
VChncm91cC0+bmV3ZXN0Q2FjaGUoKSk7Ci0gICAgICAgIEFTU0VSVCghZ3JvdXAtPmlzT2Jzb2xl
dGUoKSk7CisgICAgVVJMIHVybChyZXF1ZXN0LnVybCgpKTsKKyAgICB1cmwucmVtb3ZlRnJhZ21l
bnRJZGVudGlmaWVyKCk7CiAKLSAgICAgICAgcmV0dXJuIGdyb3VwLT5uZXdlc3RDYWNoZSgpOwot
ICAgIH0KLSAgICAKLSAgICByZXR1cm4gbnVsbHB0cjsKKyAgICBhdXRvKiBncm91cCA9IHBhZ2Ut
PmFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlKCkuZmFsbGJhY2tDYWNoZUdyb3VwRm9yVVJMKHVybCk7
CisgICAgaWYgKCFncm91cCkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICBBU1NFUlQo
Z3JvdXAtPm5ld2VzdENhY2hlKCkpOworICAgIEFTU0VSVCghZ3JvdXAtPmlzT2Jzb2xldGUoKSk7
CisKKyAgICByZXR1cm4gZ3JvdXAtPm5ld2VzdENhY2hlKCk7CiB9CiAKLXZvaWQgQXBwbGljYXRp
b25DYWNoZUdyb3VwOjpzZWxlY3RDYWNoZShGcmFtZSogZnJhbWUsIGNvbnN0IFVSTCYgcGFzc2Vk
TWFuaWZlc3RVUkwpCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c2VsZWN0Q2FjaGUoRnJh
bWUmIGZyYW1lLCBjb25zdCBVUkwmIHBhc3NlZE1hbmlmZXN0VVJMKQogewotICAgIEFTU0VSVChm
cmFtZSAmJiBmcmFtZS0+cGFnZSgpKTsKLSAgICAKLSAgICBpZiAoIWZyYW1lLT5zZXR0aW5ncygp
Lm9mZmxpbmVXZWJBcHBsaWNhdGlvbkNhY2hlRW5hYmxlZCgpKQorICAgIEFTU0VSVChmcmFtZS5k
b2N1bWVudCgpKTsKKyAgICBBU1NFUlQoZnJhbWUucGFnZSgpKTsKKyAgICBBU1NFUlQoZnJhbWUu
bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSk7CisKKyAgICBpZiAoIWZyYW1lLnNldHRpbmdzKCku
b2ZmbGluZVdlYkFwcGxpY2F0aW9uQ2FjaGVFbmFibGVkKCkpCiAgICAgICAgIHJldHVybjsKLSAg
ICAKLSAgICBEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIgPSBmcmFtZS0+bG9hZGVyKCku
ZG9jdW1lbnRMb2FkZXIoKTsKLSAgICBBU1NFUlQoIWRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlv
bkNhY2hlSG9zdCgpLT5hcHBsaWNhdGlvbkNhY2hlKCkpOworCisgICAgYXV0byYgZG9jdW1lbnRM
b2FkZXIgPSAqZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKKyAgICBBU1NFUlQoIWRv
Y3VtZW50TG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuYXBwbGljYXRpb25DYWNoZSgpKTsK
IAogICAgIGlmIChwYXNzZWRNYW5pZmVzdFVSTC5pc051bGwoKSkgewotICAgICAgICBzZWxlY3RD
YWNoZVdpdGhvdXRNYW5pZmVzdFVSTChmcmFtZSk7ICAgICAgICAKKyAgICAgICAgc2VsZWN0Q2Fj
aGVXaXRob3V0TWFuaWZlc3RVUkwoZnJhbWUpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCiAg
ICAgLy8gRG9uJ3QgYWNjZXNzIGFueXRoaW5nIG9uIGRpc2sgaWYgcHJpdmF0ZSBicm93c2luZyBp
cyBlbmFibGVkLgotICAgIGlmIChmcmFtZS0+cGFnZSgpLT51c2VzRXBoZW1lcmFsU2Vzc2lvbigp
IHx8ICFmcmFtZS0+ZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuQWNjZXNzQXBwbGlj
YXRpb25DYWNoZShmcmFtZS0+dHJlZSgpLnRvcCgpLmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2lu
KCkpKSB7Ci0gICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNI
RUNLSU5HX0VWRU5ULCBkb2N1bWVudExvYWRlcik7Ci0gICAgICAgIHBvc3RMaXN0ZW5lclRhc2so
QXBwbGljYXRpb25DYWNoZUhvc3Q6OkVSUk9SX0VWRU5ULCBkb2N1bWVudExvYWRlcik7CisgICAg
aWYgKGZyYW1lLnBhZ2UoKS0+dXNlc0VwaGVtZXJhbFNlc3Npb24oKSB8fCAhZnJhbWUuZG9jdW1l
bnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuQWNjZXNzQXBwbGljYXRpb25DYWNoZShmcmFtZS50
cmVlKCkudG9wKCkuZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSkpIHsKKyAgICAgICAgcG9z
dExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkuY2hlY2tpbmdFdmVudCwgZG9jdW1lbnRMb2FkZXIp
OworICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBkb2N1
bWVudExvYWRlcik7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKICAgICBVUkwgbWFuaWZlc3RV
UkwocGFzc2VkTWFuaWZlc3RVUkwpOwotICAgIGlmIChtYW5pZmVzdFVSTC5oYXNGcmFnbWVudElk
ZW50aWZpZXIoKSkKLSAgICAgICAgbWFuaWZlc3RVUkwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVy
KCk7CisgICAgbWFuaWZlc3RVUkwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CiAKLSAgICBB
cHBsaWNhdGlvbkNhY2hlKiBtYWluUmVzb3VyY2VDYWNoZSA9IGRvY3VtZW50TG9hZGVyLT5hcHBs
aWNhdGlvbkNhY2hlSG9zdCgpLT5tYWluUmVzb3VyY2VBcHBsaWNhdGlvbkNhY2hlKCk7CisgICAg
YXV0byogbWFpblJlc291cmNlQ2FjaGUgPSBkb2N1bWVudExvYWRlci5hcHBsaWNhdGlvbkNhY2hl
SG9zdCgpLm1haW5SZXNvdXJjZUFwcGxpY2F0aW9uQ2FjaGUoKTsKICAgICAKICAgICBpZiAobWFp
blJlc291cmNlQ2FjaGUpIHsKKyAgICAgICAgQVNTRVJUKG1haW5SZXNvdXJjZUNhY2hlLT5ncm91
cCgpKTsKICAgICAgICAgaWYgKG1hbmlmZXN0VVJMID09IG1haW5SZXNvdXJjZUNhY2hlLT5ncm91
cCgpLT5tX21hbmlmZXN0VVJMKSB7CiAgICAgICAgICAgICAvLyBUaGUgY2FjaGUgbWF5IGhhdmUg
Z290dGVuIG9ic29sZXRlZCBhZnRlciB3ZSd2ZSBsb2FkZWQgZnJvbSBpdCwgYnV0IGJlZm9yZSB3
ZSBwYXJzZWQgdGhlIGRvY3VtZW50IGFuZCBzYXcgY2FjaGUgbWFuaWZlc3QuCiAgICAgICAgICAg
ICBpZiAobWFpblJlc291cmNlQ2FjaGUtPmdyb3VwKCktPmlzT2Jzb2xldGUoKSkKICAgICAgICAg
ICAgICAgICByZXR1cm47Ci0gICAgICAgICAgICBtYWluUmVzb3VyY2VDYWNoZS0+Z3JvdXAoKS0+
YXNzb2NpYXRlRG9jdW1lbnRMb2FkZXJXaXRoQ2FjaGUoZG9jdW1lbnRMb2FkZXIsIG1haW5SZXNv
dXJjZUNhY2hlKTsKKyAgICAgICAgICAgIG1haW5SZXNvdXJjZUNhY2hlLT5ncm91cCgpLT5hc3Nv
Y2lhdGVEb2N1bWVudExvYWRlcldpdGhDYWNoZSgmZG9jdW1lbnRMb2FkZXIsIG1haW5SZXNvdXJj
ZUNhY2hlKTsKICAgICAgICAgICAgIG1haW5SZXNvdXJjZUNhY2hlLT5ncm91cCgpLT51cGRhdGUo
ZnJhbWUsIEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVXaXRoQnJvd3NpbmdDb250ZXh0KTsKICAgICAg
ICAgfSBlbHNlIHsKICAgICAgICAgICAgIC8vIFRoZSBtYWluIHJlc291cmNlIHdhcyBsb2FkZWQg
ZnJvbSBjYWNoZSwgc28gdGhlIGNhY2hlIG11c3QgaGF2ZSBhbiBlbnRyeSBmb3IgaXQuIE1hcmsg
aXQgYXMgZm9yZWlnbi4KLSAgICAgICAgICAgIFVSTCByZXNvdXJjZVVSTChkb2N1bWVudExvYWRl
ci0+cmVzcG9uc2VVUkwoKSk7Ci0gICAgICAgICAgICBpZiAocmVzb3VyY2VVUkwuaGFzRnJhZ21l
bnRJZGVudGlmaWVyKCkpCi0gICAgICAgICAgICAgICAgcmVzb3VyY2VVUkwucmVtb3ZlRnJhZ21l
bnRJZGVudGlmaWVyKCk7Ci0gICAgICAgICAgICBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqIHJl
c291cmNlID0gbWFpblJlc291cmNlQ2FjaGUtPnJlc291cmNlRm9yVVJMKHJlc291cmNlVVJMKTsK
LSAgICAgICAgICAgIGJvb2wgaW5TdG9yYWdlID0gcmVzb3VyY2UtPnN0b3JhZ2VJRCgpOwotICAg
ICAgICAgICAgcmVzb3VyY2UtPmFkZFR5cGUoQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpGb3Jl
aWduKTsKKyAgICAgICAgICAgIFVSTCByZXNvdXJjZVVSTCB7IGRvY3VtZW50TG9hZGVyLnJlc3Bv
bnNlVVJMKCkgfTsKKyAgICAgICAgICAgIHJlc291cmNlVVJMLnJlbW92ZUZyYWdtZW50SWRlbnRp
ZmllcigpOworCisgICAgICAgICAgICBBU1NFUlQobWFpblJlc291cmNlQ2FjaGUtPnJlc291cmNl
Rm9yVVJMKHJlc291cmNlVVJMKSk7CisgICAgICAgICAgICBhdXRvJiByZXNvdXJjZSA9ICptYWlu
UmVzb3VyY2VDYWNoZS0+cmVzb3VyY2VGb3JVUkwocmVzb3VyY2VVUkwpOworCisgICAgICAgICAg
ICBib29sIGluU3RvcmFnZSA9IHJlc291cmNlLnN0b3JhZ2VJRCgpOworICAgICAgICAgICAgcmVz
b3VyY2UuYWRkVHlwZShBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6OkZvcmVpZ24pOwogICAgICAg
ICAgICAgaWYgKGluU3RvcmFnZSkKLSAgICAgICAgICAgICAgICBmcmFtZS0+cGFnZSgpLT5hcHBs
aWNhdGlvbkNhY2hlU3RvcmFnZSgpLnN0b3JlVXBkYXRlZFR5cGUocmVzb3VyY2UsIG1haW5SZXNv
dXJjZUNhY2hlKTsKKyAgICAgICAgICAgICAgICBmcmFtZS5wYWdlKCktPmFwcGxpY2F0aW9uQ2Fj
aGVTdG9yYWdlKCkuc3RvcmVVcGRhdGVkVHlwZSgmcmVzb3VyY2UsIG1haW5SZXNvdXJjZUNhY2hl
KTsKIAogICAgICAgICAgICAgLy8gUmVzdGFydCB0aGUgY3VycmVudCBuYXZpZ2F0aW9uIGZyb20g
dGhlIHRvcCBvZiB0aGUgbmF2aWdhdGlvbiBhbGdvcml0aG0sIHVuZG9pbmcgYW55IGNoYW5nZXMg
dGhhdCB3ZXJlIG1hZGUKICAgICAgICAgICAgIC8vIGFzIHBhcnQgb2YgdGhlIGluaXRpYWwgbG9h
ZC4KICAgICAgICAgICAgIC8vIFRoZSBuYXZpZ2F0aW9uIHdpbGwgbm90IHJlc3VsdCBpbiB0aGUg
c2FtZSByZXNvdXJjZSBiZWluZyBsb2FkZWQsIGJlY2F1c2UgImZvcmVpZ24iIGVudHJpZXMgYXJl
IG5ldmVyIHBpY2tlZCBkdXJpbmcgbmF2aWdhdGlvbi4KLSAgICAgICAgICAgIGZyYW1lLT5uYXZp
Z2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZShmcmFtZS0+ZG9jdW1lbnQo
KSwgZnJhbWUtPmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCksIGRvY3VtZW50TG9hZGVyLT51
cmwoKSwgZnJhbWUtPmxvYWRlcigpLnJlZmVycmVyKCkpOworICAgICAgICAgICAgZnJhbWUubmF2
aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UoKmZyYW1lLmRvY3VtZW50
KCksIGZyYW1lLmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCksIGRvY3VtZW50TG9hZGVyLnVy
bCgpLCBmcmFtZS5sb2FkZXIoKS5yZWZlcnJlcigpKTsKICAgICAgICAgfQotICAgICAgICAKICAg
ICAgICAgcmV0dXJuOwogICAgIH0KLSAgICAKKwogICAgIC8vIFRoZSByZXNvdXJjZSB3YXMgbG9h
ZGVkIGZyb20gdGhlIG5ldHdvcmssIGNoZWNrIGlmIGl0IGlzIGEgSFRUUC9IVFRQUyBHRVQuICAg
IAotICAgIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCA9IGZyYW1lLT5sb2FkZXIoKS5h
Y3RpdmVEb2N1bWVudExvYWRlcigpLT5yZXF1ZXN0KCk7CisgICAgYXV0byYgcmVxdWVzdCA9IGZy
YW1lLmxvYWRlcigpLmFjdGl2ZURvY3VtZW50TG9hZGVyKCktPnJlcXVlc3QoKTsKIAogICAgIGlm
ICghQXBwbGljYXRpb25DYWNoZTo6cmVxdWVzdElzSFRUUE9ySFRUUFNHZXQocmVxdWVzdCkpCiAg
ICAgICAgIHJldHVybjsKQEAgLTE4OSw0NiArMTg1LDQ4IEBAIHZvaWQgQXBwbGljYXRpb25DYWNo
ZUdyb3VwOjpzZWxlY3RDYWNoZShGcmFtZSogZnJhbWUsIGNvbnN0IFVSTCYgcGFzc2VkTWFuaWZl
c3RVCiAgICAgaWYgKCFwcm90b2NvbEhvc3RBbmRQb3J0QXJlRXF1YWwobWFuaWZlc3RVUkwsIHJl
cXVlc3QudXJsKCkpKQogICAgICAgICByZXR1cm47CiAKLSAgICBBcHBsaWNhdGlvbkNhY2hlR3Jv
dXAqIGdyb3VwID0gZnJhbWUtPnBhZ2UoKS0+YXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKS5maW5k
T3JDcmVhdGVDYWNoZUdyb3VwKG1hbmlmZXN0VVJMKTsKKyAgICBhdXRvJiBncm91cCA9ICpmcmFt
ZS5wYWdlKCktPmFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlKCkuZmluZE9yQ3JlYXRlQ2FjaGVHcm91
cChtYW5pZmVzdFVSTCk7CiAKLSAgICBkb2N1bWVudExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhv
c3QoKS0+c2V0Q2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKGdyb3VwKTsKLSAgICBncm91
cC0+bV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLmFkZChkb2N1bWVudExvYWRlcik7Ci0g
ICAgZ3JvdXAtPm1fZG93bmxvYWRpbmdQZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzQ291bnQr
KzsKKyAgICBkb2N1bWVudExvYWRlci5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLnNldENhbmRpZGF0
ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCgmZ3JvdXApOworICAgIGdyb3VwLm1fcGVuZGluZ01hc3Rl
clJlc291cmNlTG9hZGVycy5hZGQoJmRvY3VtZW50TG9hZGVyKTsKKyAgICBncm91cC5tX2Rvd25s
b2FkaW5nUGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVyc0NvdW50Kys7CiAKLSAgICBBU1NFUlQo
IWdyb3VwLT5tX2NhY2hlQmVpbmdVcGRhdGVkIHx8IGdyb3VwLT5tX3VwZGF0ZVN0YXR1cyAhPSBJ
ZGxlKTsKLSAgICBncm91cC0+dXBkYXRlKGZyYW1lLCBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlV2l0
aEJyb3dzaW5nQ29udGV4dCk7CisgICAgQVNTRVJUKCFncm91cC5tX2NhY2hlQmVpbmdVcGRhdGVk
IHx8IGdyb3VwLm1fdXBkYXRlU3RhdHVzICE9IElkbGUpOworICAgIGdyb3VwLnVwZGF0ZShmcmFt
ZSwgQXBwbGljYXRpb25DYWNoZVVwZGF0ZVdpdGhCcm93c2luZ0NvbnRleHQpOwogfQogCi12b2lk
IEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3RVUkwoRnJh
bWUqIGZyYW1lKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVjdENhY2hlV2l0aG91
dE1hbmlmZXN0VVJMKEZyYW1lJiBmcmFtZSkKIHsKLSAgICBpZiAoIWZyYW1lLT5zZXR0aW5ncygp
Lm9mZmxpbmVXZWJBcHBsaWNhdGlvbkNhY2hlRW5hYmxlZCgpKQorICAgIGlmICghZnJhbWUuc2V0
dGluZ3MoKS5vZmZsaW5lV2ViQXBwbGljYXRpb25DYWNoZUVuYWJsZWQoKSkKICAgICAgICAgcmV0
dXJuOwogCi0gICAgRG9jdW1lbnRMb2FkZXIqIGRvY3VtZW50TG9hZGVyID0gZnJhbWUtPmxvYWRl
cigpLmRvY3VtZW50TG9hZGVyKCk7Ci0gICAgQVNTRVJUKCFkb2N1bWVudExvYWRlci0+YXBwbGlj
YXRpb25DYWNoZUhvc3QoKS0+YXBwbGljYXRpb25DYWNoZSgpKTsKKyAgICBBU1NFUlQoZnJhbWUu
ZG9jdW1lbnQoKSk7CisgICAgQVNTRVJUKGZyYW1lLnBhZ2UoKSk7CisgICAgQVNTRVJUKGZyYW1l
LmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkpOworICAgIGF1dG8mIGRvY3VtZW50TG9hZGVyID0g
KmZyYW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCk7CisgICAgQVNTRVJUKCFkb2N1bWVudExv
YWRlci5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLmFwcGxpY2F0aW9uQ2FjaGUoKSk7CiAKICAgICAv
LyBEb24ndCBhY2Nlc3MgYW55dGhpbmcgb24gZGlzayBpZiBwcml2YXRlIGJyb3dzaW5nIGlzIGVu
YWJsZWQuCi0gICAgaWYgKGZyYW1lLT5wYWdlKCktPnVzZXNFcGhlbWVyYWxTZXNzaW9uKCkgfHwg
IWZyYW1lLT5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5jYW5BY2Nlc3NBcHBsaWNhdGlv
bkNhY2hlKGZyYW1lLT50cmVlKCkudG9wKCkuZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSkp
IHsKLSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q0hFQ0tJ
TkdfRVZFTlQsIGRvY3VtZW50TG9hZGVyKTsKLSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6RVJST1JfRVZFTlQsIGRvY3VtZW50TG9hZGVyKTsKKyAgICBpZiAo
ZnJhbWUucGFnZSgpLT51c2VzRXBoZW1lcmFsU2Vzc2lvbigpIHx8ICFmcmFtZS5kb2N1bWVudCgp
LT5zZWN1cml0eU9yaWdpbigpLT5jYW5BY2Nlc3NBcHBsaWNhdGlvbkNhY2hlKGZyYW1lLnRyZWUo
KS50b3AoKS5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpKSkgeworICAgICAgICBwb3N0TGlz
dGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5jaGVja2luZ0V2ZW50LCBkb2N1bWVudExvYWRlcik7Cisg
ICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmVycm9yRXZlbnQsIGRvY3VtZW50
TG9hZGVyKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIEFwcGxpY2F0aW9uQ2FjaGUq
IG1haW5SZXNvdXJjZUNhY2hlID0gZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCktPm1haW5SZXNvdXJjZUFwcGxpY2F0aW9uQ2FjaGUoKTsKLQotICAgIGlmIChtYWluUmVzb3Vy
Y2VDYWNoZSkgewotICAgICAgICBtYWluUmVzb3VyY2VDYWNoZS0+Z3JvdXAoKS0+YXNzb2NpYXRl
RG9jdW1lbnRMb2FkZXJXaXRoQ2FjaGUoZG9jdW1lbnRMb2FkZXIsIG1haW5SZXNvdXJjZUNhY2hl
KTsKLSAgICAgICAgbWFpblJlc291cmNlQ2FjaGUtPmdyb3VwKCktPnVwZGF0ZShmcmFtZSwgQXBw
bGljYXRpb25DYWNoZVVwZGF0ZVdpdGhCcm93c2luZ0NvbnRleHQpOworICAgIGlmIChhdXRvKiBt
YWluUmVzb3VyY2VDYWNoZSA9IGRvY3VtZW50TG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCku
bWFpblJlc291cmNlQXBwbGljYXRpb25DYWNoZSgpKSB7CisgICAgICAgIEFTU0VSVChtYWluUmVz
b3VyY2VDYWNoZS0+Z3JvdXAoKSk7CisgICAgICAgIGF1dG8mIGdyb3VwID0gKm1haW5SZXNvdXJj
ZUNhY2hlLT5ncm91cCgpOworICAgICAgICBncm91cC5hc3NvY2lhdGVEb2N1bWVudExvYWRlcldp
dGhDYWNoZSgmZG9jdW1lbnRMb2FkZXIsIG1haW5SZXNvdXJjZUNhY2hlKTsKKyAgICAgICAgZ3Jv
dXAudXBkYXRlKGZyYW1lLCBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlV2l0aEJyb3dzaW5nQ29udGV4
dCk7CiAgICAgfQogfQogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZmluaXNoZWRMb2Fk
aW5nTWFpblJlc291cmNlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCit2b2lkIEFwcGxpY2F0aW9u
Q2FjaGVHcm91cDo6ZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKERvY3VtZW50TG9hZGVyJiBs
b2FkZXIpCiB7Ci0gICAgQVNTRVJUKG1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5jb250
YWlucyhsb2FkZXIpKTsKKyAgICBBU1NFUlQobV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJz
LmNvbnRhaW5zKCZsb2FkZXIpKTsKICAgICBBU1NFUlQobV9jb21wbGV0aW9uVHlwZSA9PSBOb25l
IHx8IG1fcGVuZGluZ0VudHJpZXMuaXNFbXB0eSgpKTsKLSAgICBVUkwgdXJsID0gbG9hZGVyLT51
cmwoKTsKLSAgICBpZiAodXJsLmhhc0ZyYWdtZW50SWRlbnRpZmllcigpKQotICAgICAgICB1cmwu
cmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CisgICAgVVJMIHVybCA9IGxvYWRlci51cmwoKTsK
KyAgICB1cmwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CiAKICAgICBzd2l0Y2ggKG1fY29t
cGxldGlvblR5cGUpIHsKICAgICBjYXNlIE5vbmU6CkBAIC0yMzYsMzQgKzIzNCwzMiBAQCB2b2lk
IEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKERvY3Vt
ZW50TG9hZGVyKiBsb2FkZXIpCiAgICAgICAgIHJldHVybjsKICAgICBjYXNlIE5vVXBkYXRlOgog
ICAgICAgICBBU1NFUlQoIW1fY2FjaGVCZWluZ1VwZGF0ZWQpOwotICAgICAgICBhc3NvY2lhdGVE
b2N1bWVudExvYWRlcldpdGhDYWNoZShsb2FkZXIsIG1fbmV3ZXN0Q2FjaGUuZ2V0KCkpOwotCi0g
ICAgICAgIGlmIChBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqIHJlc291cmNlID0gbV9uZXdlc3RD
YWNoZS0+cmVzb3VyY2VGb3JVUkwodXJsKSkgeworICAgICAgICBhc3NvY2lhdGVEb2N1bWVudExv
YWRlcldpdGhDYWNoZSgmbG9hZGVyLCBtX25ld2VzdENhY2hlLmdldCgpKTsKKyAgICAgICAgaWYg
KGF1dG8qIHJlc291cmNlID0gbV9uZXdlc3RDYWNoZS0+cmVzb3VyY2VGb3JVUkwodXJsKSkgewog
ICAgICAgICAgICAgaWYgKCEocmVzb3VyY2UtPnR5cGUoKSAmIEFwcGxpY2F0aW9uQ2FjaGVSZXNv
dXJjZTo6TWFzdGVyKSkgewogICAgICAgICAgICAgICAgIHJlc291cmNlLT5hZGRUeXBlKEFwcGxp
Y2F0aW9uQ2FjaGVSZXNvdXJjZTo6TWFzdGVyKTsKICAgICAgICAgICAgICAgICBBU1NFUlQoIXJl
c291cmNlLT5zdG9yYWdlSUQoKSk7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0gZWxzZQotICAg
ICAgICAgICAgbV9uZXdlc3RDYWNoZS0+YWRkUmVzb3VyY2UoQXBwbGljYXRpb25DYWNoZVJlc291
cmNlOjpjcmVhdGUodXJsLCBsb2FkZXItPnJlc3BvbnNlKCksIEFwcGxpY2F0aW9uQ2FjaGVSZXNv
dXJjZTo6TWFzdGVyLCBsb2FkZXItPm1haW5SZXNvdXJjZURhdGEoKSkpOworICAgICAgICAgICAg
bV9uZXdlc3RDYWNoZS0+YWRkUmVzb3VyY2UoQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpjcmVh
dGUodXJsLCBsb2FkZXIucmVzcG9uc2UoKSwgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0
ZXIsIGxvYWRlci5tYWluUmVzb3VyY2VEYXRhKCkpKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2Fz
ZSBGYWlsdXJlOgogICAgICAgICAvLyBDYWNoZSB1cGRhdGUgaGFzIGJlZW4gYSBmYWlsdXJlLCBz
byB0aGVyZSBpcyBubyByZWFzb24gdG8ga2VlcCB0aGUgZG9jdW1lbnQgYXNzb2NpYXRlZCB3aXRo
IHRoZSBpbmNvbXBsZXRlIGNhY2hlCiAgICAgICAgIC8vIChpdHMgbWFpbiByZXNvdXJjZSB3YXMg
bm90IGNhY2hlZCB5ZXQsIHNvIGl0IGlzIGxpa2VseSB0aGF0IHRoZSBhcHBsaWNhdGlvbiBjaGFu
Z2VkIHNpZ25pZmljYW50bHkgc2VydmVyLXNpZGUpLgogICAgICAgICBBU1NFUlQoIW1fY2FjaGVC
ZWluZ1VwZGF0ZWQpOyAvLyBBbHJlYWR5IGNsZWFyZWQgb3V0IGJ5IHN0b3BMb2FkaW5nKCkuCi0g
ICAgICAgIGxvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+c2V0QXBwbGljYXRpb25DYWNo
ZShudWxscHRyKTsgLy8gV2lsbCB1bnNldCBjYW5kaWRhdGUsIHRvby4KLSAgICAgICAgbV9hc3Nv
Y2lhdGVkRG9jdW1lbnRMb2FkZXJzLnJlbW92ZShsb2FkZXIpOwotICAgICAgICBwb3N0TGlzdGVu
ZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFUlJPUl9FVkVOVCwgbG9hZGVyKTsKKyAgICAg
ICAgbG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2V0QXBwbGljYXRpb25DYWNoZShudWxs
cHRyKTsgLy8gV2lsbCB1bnNldCBjYW5kaWRhdGUsIHRvby4KKyAgICAgICAgbV9hc3NvY2lhdGVk
RG9jdW1lbnRMb2FkZXJzLnJlbW92ZSgmbG9hZGVyKTsKKyAgICAgICAgcG9zdExpc3RlbmVyVGFz
ayhldmVudE5hbWVzKCkuZXJyb3JFdmVudCwgbG9hZGVyKTsKICAgICAgICAgYnJlYWs7CiAgICAg
Y2FzZSBDb21wbGV0ZWQ6Ci0gICAgICAgIEFTU0VSVChtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRl
cnMuY29udGFpbnMobG9hZGVyKSk7Ci0KLSAgICAgICAgaWYgKEFwcGxpY2F0aW9uQ2FjaGVSZXNv
dXJjZSogcmVzb3VyY2UgPSBtX2NhY2hlQmVpbmdVcGRhdGVkLT5yZXNvdXJjZUZvclVSTCh1cmwp
KSB7CisgICAgICAgIEFTU0VSVChtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMuY29udGFpbnMo
JmxvYWRlcikpOworICAgICAgICBpZiAoYXV0byogcmVzb3VyY2UgPSBtX2NhY2hlQmVpbmdVcGRh
dGVkLT5yZXNvdXJjZUZvclVSTCh1cmwpKSB7CiAgICAgICAgICAgICBpZiAoIShyZXNvdXJjZS0+
dHlwZSgpICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIpKSB7CiAgICAgICAgICAg
ICAgICAgcmVzb3VyY2UtPmFkZFR5cGUoQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIp
OwogICAgICAgICAgICAgICAgIEFTU0VSVCghcmVzb3VyY2UtPnN0b3JhZ2VJRCgpKTsKICAgICAg
ICAgICAgIH0KICAgICAgICAgfSBlbHNlCi0gICAgICAgICAgICBtX2NhY2hlQmVpbmdVcGRhdGVk
LT5hZGRSZXNvdXJjZShBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6OmNyZWF0ZSh1cmwsIGxvYWRl
ci0+cmVzcG9uc2UoKSwgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIsIGxvYWRlci0+
bWFpblJlc291cmNlRGF0YSgpKSk7CisgICAgICAgICAgICBtX2NhY2hlQmVpbmdVcGRhdGVkLT5h
ZGRSZXNvdXJjZShBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6OmNyZWF0ZSh1cmwsIGxvYWRlci5y
ZXNwb25zZSgpLCBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6Ok1hc3RlciwgbG9hZGVyLm1haW5S
ZXNvdXJjZURhdGEoKSkpOwogICAgICAgICAvLyBUaGUgImNhY2hlZCIgZXZlbnQgd2lsbCBiZSBw
b3N0ZWQgdG8gYWxsIGFzc29jaWF0ZWQgZG9jdW1lbnRzIG9uY2UgdXBkYXRlIGlzIGNvbXBsZXRl
LgogICAgICAgICBicmVhazsKICAgICB9CkBAIC0yNzMsOSArMjY5LDkgQEAgdm9pZCBBcHBsaWNh
dGlvbkNhY2hlR3JvdXA6OmZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZShEb2N1bWVudExvYWRl
ciogbG9hZGVyKQogICAgIGNoZWNrSWZMb2FkSXNDb21wbGV0ZSgpOwogfQogCi12b2lkIEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cDo6ZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZShEb2N1bWVudExvYWRl
ciogbG9hZGVyKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmZhaWxlZExvYWRpbmdNYWlu
UmVzb3VyY2UoRG9jdW1lbnRMb2FkZXImIGxvYWRlcikKIHsKLSAgICBBU1NFUlQobV9wZW5kaW5n
TWFzdGVyUmVzb3VyY2VMb2FkZXJzLmNvbnRhaW5zKGxvYWRlcikpOworICAgIEFTU0VSVChtX3Bl
bmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMuY29udGFpbnMoJmxvYWRlcikpOwogICAgIEFTU0VS
VChtX2NvbXBsZXRpb25UeXBlID09IE5vbmUgfHwgbV9wZW5kaW5nRW50cmllcy5pc0VtcHR5KCkp
OwogCiAgICAgc3dpdGNoIChtX2NvbXBsZXRpb25UeXBlKSB7CkBAIC0yODQsMzIgKzI4MCwyNyBA
QCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZShE
b2N1bWVudExvYWRlciogbG9hZGVyKQogICAgICAgICByZXR1cm47CiAgICAgY2FzZSBOb1VwZGF0
ZToKICAgICAgICAgQVNTRVJUKCFtX2NhY2hlQmVpbmdVcGRhdGVkKTsKLQogICAgICAgICAvLyBU
aGUgbWFuaWZlc3QgZGlkbid0IGNoYW5nZSwgYW5kIHdlIGhhdmUgYSByZWxldmFudCBjYWNoZSAt
IGJ1dCB0aGUgbWFpbiByZXNvdXJjZSBkb3dubG9hZCBmYWlsZWQgbWlkLXdheSwgc28gaXQgY2Fu
bm90IGJlIHN0b3JlZCB0byB0aGUgY2FjaGUsCiAgICAgICAgIC8vIGFuZCB0aGUgbG9hZGVyIGRv
ZXMgbm90IGdldCBhc3NvY2lhdGVkIHRvIGl0LiBJZiB0aGVyZSBhcmUgb3RoZXIgbWFpbiByZXNv
dXJjZXMgYmVpbmcgZG93bmxvYWRlZCBmb3IgdGhpcyBjYWNoZSBncm91cCwgdGhleSBtYXkgc3Rp
bGwgc3VjY2VlZC4KLSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9z
dDo6RVJST1JfRVZFTlQsIGxvYWRlcik7Ci0KKyAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVu
dE5hbWVzKCkuZXJyb3JFdmVudCwgbG9hZGVyKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBG
YWlsdXJlOgogICAgICAgICAvLyBDYWNoZSB1cGRhdGUgZmFpbGVkLCB0b28uCiAgICAgICAgIEFT
U0VSVCghbV9jYWNoZUJlaW5nVXBkYXRlZCk7IC8vIEFscmVhZHkgY2xlYXJlZCBvdXQgYnkgc3Rv
cExvYWRpbmcoKS4KLSAgICAgICAgQVNTRVJUKCFsb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCktPmFwcGxpY2F0aW9uQ2FjaGUoKSB8fCBsb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkt
PmFwcGxpY2F0aW9uQ2FjaGUoKS0+Z3JvdXAoKSA9PSB0aGlzKTsKLQotICAgICAgICBsb2FkZXIt
PmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPnNldEFwcGxpY2F0aW9uQ2FjaGUobnVsbHB0cik7IC8v
IFdpbGwgdW5zZXQgY2FuZGlkYXRlLCB0b28uCi0gICAgICAgIG1fYXNzb2NpYXRlZERvY3VtZW50
TG9hZGVycy5yZW1vdmUobG9hZGVyKTsKLSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNh
dGlvbkNhY2hlSG9zdDo6RVJST1JfRVZFTlQsIGxvYWRlcik7CisgICAgICAgIEFTU0VSVCghbG9h
ZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuYXBwbGljYXRpb25DYWNoZSgpIHx8IGxvYWRlci5h
cHBsaWNhdGlvbkNhY2hlSG9zdCgpLmFwcGxpY2F0aW9uQ2FjaGUoKS0+Z3JvdXAoKSA9PSB0aGlz
KTsKKyAgICAgICAgbG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2V0QXBwbGljYXRpb25D
YWNoZShudWxscHRyKTsgLy8gV2lsbCB1bnNldCBjYW5kaWRhdGUsIHRvby4KKyAgICAgICAgbV9h
c3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzLnJlbW92ZSgmbG9hZGVyKTsKKyAgICAgICAgcG9zdExp
c3RlbmVyVGFzayhldmVudE5hbWVzKCkuZXJyb3JFdmVudCwgbG9hZGVyKTsKICAgICAgICAgYnJl
YWs7CiAgICAgY2FzZSBDb21wbGV0ZWQ6CiAgICAgICAgIC8vIFRoZSBjYWNoZSBtYW5pZmVzdCBk
aWRuJ3QgbGlzdCB0aGlzIG1haW4gcmVzb3VyY2UsIGFuZCBhbGwgY2FjaGUgZW50cmllcyB3ZXJl
IGFscmVhZHkgdXBkYXRlZCBzdWNjZXNzZnVsbHkgLSBidXQgdGhlIG1haW4gcmVzb3VyY2UgZmFp
bGVkIHRvIGxvYWQsCiAgICAgICAgIC8vIHNvIGl0IGNhbm5vdCBiZSBzdG9yZWQgdG8gdGhlIGNh
Y2hlLiBJZiB0aGVyZSBhcmUgb3RoZXIgbWFpbiByZXNvdXJjZXMgYmVpbmcgZG93bmxvYWRlZCBm
b3IgdGhpcyBjYWNoZSBncm91cCwgdGhleSBtYXkgc3RpbGwgc3VjY2VlZC4KLSAgICAgICAgQVNT
RVJUKG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycy5jb250YWlucyhsb2FkZXIpKTsKLSAgICAg
ICAgQVNTRVJUKGxvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+YXBwbGljYXRpb25DYWNo
ZSgpID09IG1fY2FjaGVCZWluZ1VwZGF0ZWQpOwotICAgICAgICBBU1NFUlQoIWxvYWRlci0+YXBw
bGljYXRpb25DYWNoZUhvc3QoKS0+Y2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKCkpOwot
ICAgICAgICBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMucmVtb3ZlKGxvYWRlcik7Ci0gICAg
ICAgIGxvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+c2V0QXBwbGljYXRpb25DYWNoZShu
dWxscHRyKTsKLQotICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0
OjpFUlJPUl9FVkVOVCwgbG9hZGVyKTsKLQorICAgICAgICBBU1NFUlQobV9hc3NvY2lhdGVkRG9j
dW1lbnRMb2FkZXJzLmNvbnRhaW5zKCZsb2FkZXIpKTsKKyAgICAgICAgQVNTRVJUKGxvYWRlci5h
cHBsaWNhdGlvbkNhY2hlSG9zdCgpLmFwcGxpY2F0aW9uQ2FjaGUoKSA9PSBtX2NhY2hlQmVpbmdV
cGRhdGVkKTsKKyAgICAgICAgQVNTRVJUKCFsb2FkZXIuYXBwbGljYXRpb25DYWNoZUhvc3QoKS5j
YW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKSk7CisgICAgICAgIG1fYXNzb2NpYXRlZERv
Y3VtZW50TG9hZGVycy5yZW1vdmUoJmxvYWRlcik7CisgICAgICAgIGxvYWRlci5hcHBsaWNhdGlv
bkNhY2hlSG9zdCgpLnNldEFwcGxpY2F0aW9uQ2FjaGUobnVsbHB0cik7CisgICAgICAgIHBvc3RM
aXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmVycm9yRXZlbnQsIGxvYWRlcik7CiAgICAgICAgIGJy
ZWFrOwogICAgIH0KIApAQCAtMzQ2LDEyICszMzcsMTIgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hl
R3JvdXA6OnN0b3BMb2FkaW5nKCkKICAgICBtX3BlbmRpbmdFbnRyaWVzLmNsZWFyKCk7CiB9ICAg
IAogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZGlzYXNzb2NpYXRlRG9jdW1lbnRMb2Fk
ZXIoRG9jdW1lbnRMb2FkZXIqIGxvYWRlcikKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpk
aXNhc3NvY2lhdGVEb2N1bWVudExvYWRlcihEb2N1bWVudExvYWRlciYgbG9hZGVyKQogewotICAg
IG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycy5yZW1vdmUobG9hZGVyKTsKLSAgICBtX3BlbmRp
bmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMucmVtb3ZlKGxvYWRlcik7CisgICAgbV9hc3NvY2lhdGVk
RG9jdW1lbnRMb2FkZXJzLnJlbW92ZSgmbG9hZGVyKTsKKyAgICBtX3BlbmRpbmdNYXN0ZXJSZXNv
dXJjZUxvYWRlcnMucmVtb3ZlKCZsb2FkZXIpOwogCi0gICAgaWYgKGF1dG8qIGhvc3QgPSBsb2Fk
ZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkpCisgICAgaWYgKGF1dG8qIGhvc3QgPSBsb2FkZXIu
YXBwbGljYXRpb25DYWNoZUhvc3RVbmxlc3NCZWluZ0Rlc3Ryb3llZCgpKQogICAgICAgICBob3N0
LT5zZXRBcHBsaWNhdGlvbkNhY2hlKG51bGxwdHIpOyAvLyBXaWxsIHNldCBjYW5kaWRhdGUgZ3Jv
dXAgdG8gbnVsbCwgdG9vLgogCiAgICAgaWYgKCFtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMu
aXNFbXB0eSgpIHx8ICFtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMuaXNFbXB0eSgpKQpA
QCAtMzcyLDI2ICszNjMsMjYgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRpc2Fzc29j
aWF0ZURvY3VtZW50TG9hZGVyKERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCiAgICAgbV9uZXdlc3RD
YWNoZSA9IG51bGxwdHI7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpjYWNoZURl
c3Ryb3llZChBcHBsaWNhdGlvbkNhY2hlKiBjYWNoZSkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUdy
b3VwOjpjYWNoZURlc3Ryb3llZChBcHBsaWNhdGlvbkNhY2hlJiBjYWNoZSkKIHsKLSAgICBpZiAo
bV9jYWNoZXMucmVtb3ZlKGNhY2hlKSAmJiBtX2NhY2hlcy5pc0VtcHR5KCkpIHsKKyAgICBpZiAo
bV9jYWNoZXMucmVtb3ZlKCZjYWNoZSkgJiYgbV9jYWNoZXMuaXNFbXB0eSgpKSB7CiAgICAgICAg
IEFTU0VSVChtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMuaXNFbXB0eSgpKTsKICAgICAgICAg
QVNTRVJUKG1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5pc0VtcHR5KCkpOwogICAgICAg
ICBkZWxldGUgdGhpczsKICAgICB9CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpz
dG9wTG9hZGluZ0luRnJhbWUoRnJhbWUqIGZyYW1lKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlR3Jv
dXA6OnN0b3BMb2FkaW5nSW5GcmFtZShGcmFtZSYgZnJhbWUpCiB7Ci0gICAgaWYgKGZyYW1lICE9
IG1fZnJhbWUpCisgICAgaWYgKCZmcmFtZSAhPSBtX2ZyYW1lKQogICAgICAgICByZXR1cm47CiAK
ICAgICBjYWNoZVVwZGF0ZUZhaWxlZCgpOwogfQogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91
cDo6c2V0TmV3ZXN0Q2FjaGUoUGFzc1JlZlB0cjxBcHBsaWNhdGlvbkNhY2hlPiBuZXdlc3RDYWNo
ZSkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZXROZXdlc3RDYWNoZShSZWY8QXBwbGlj
YXRpb25DYWNoZT4mJiBuZXdlc3RDYWNoZSkKIHsKLSAgICBtX25ld2VzdENhY2hlID0gbmV3ZXN0
Q2FjaGU7CisgICAgbV9uZXdlc3RDYWNoZSA9IFdURk1vdmUobmV3ZXN0Q2FjaGUpOwogCiAgICAg
bV9jYWNoZXMuYWRkKG1fbmV3ZXN0Q2FjaGUuZ2V0KCkpOwogICAgIG1fbmV3ZXN0Q2FjaGUtPnNl
dEdyb3VwKHRoaXMpOwpAQCAtNDAzLDQwICszOTQsNDMgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hl
R3JvdXA6Om1ha2VPYnNvbGV0ZSgpCiAgICAgICAgIHJldHVybjsKIAogICAgIG1faXNPYnNvbGV0
ZSA9IHRydWU7Ci0gICAgbV9zdG9yYWdlLT5jYWNoZUdyb3VwTWFkZU9ic29sZXRlKHRoaXMpOwor
ICAgIG1fc3RvcmFnZS0+Y2FjaGVHcm91cE1hZGVPYnNvbGV0ZSgqdGhpcyk7CiAgICAgQVNTRVJU
KCFtX3N0b3JhZ2VJRCk7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjp1cGRhdGUo
RnJhbWUqIGZyYW1lLCBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlT3B0aW9uIHVwZGF0ZU9wdGlvbikK
K3ZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjp1cGRhdGUoRnJhbWUmIGZyYW1lLCBBcHBsaWNh
dGlvbkNhY2hlVXBkYXRlT3B0aW9uIHVwZGF0ZU9wdGlvbikKIHsKKyAgICBBU1NFUlQoZnJhbWUu
bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSk7CisgICAgYXV0byYgZG9jdW1lbnRMb2FkZXIgPSAq
ZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKKwogICAgIGlmIChtX3VwZGF0ZVN0YXR1
cyA9PSBDaGVja2luZyB8fCBtX3VwZGF0ZVN0YXR1cyA9PSBEb3dubG9hZGluZykgewogICAgICAg
ICBpZiAodXBkYXRlT3B0aW9uID09IEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVXaXRoQnJvd3NpbmdD
b250ZXh0KSB7Ci0gICAgICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVI
b3N0OjpDSEVDS0lOR19FVkVOVCwgZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkpOwor
ICAgICAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkuY2hlY2tpbmdFdmVudCwg
ZG9jdW1lbnRMb2FkZXIpOwogICAgICAgICAgICAgaWYgKG1fdXBkYXRlU3RhdHVzID09IERvd25s
b2FkaW5nKQotICAgICAgICAgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNo
ZUhvc3Q6OkRPV05MT0FESU5HX0VWRU5ULCBmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIo
KSk7CisgICAgICAgICAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkuZG93bmxv
YWRpbmdFdmVudCwgZG9jdW1lbnRMb2FkZXIpOwogICAgICAgICB9CiAgICAgICAgIHJldHVybjsK
ICAgICB9CiAKICAgICAvLyBEb24ndCBhY2Nlc3MgYW55dGhpbmcgb24gZGlzayBpZiBwcml2YXRl
IGJyb3dzaW5nIGlzIGVuYWJsZWQuCi0gICAgaWYgKGZyYW1lLT5wYWdlKCktPnVzZXNFcGhlbWVy
YWxTZXNzaW9uKCkgfHwgIWZyYW1lLT5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5jYW5B
Y2Nlc3NBcHBsaWNhdGlvbkNhY2hlKGZyYW1lLT50cmVlKCkudG9wKCkuZG9jdW1lbnQoKS0+c2Vj
dXJpdHlPcmlnaW4oKSkpIHsKKyAgICBpZiAoZnJhbWUucGFnZSgpLT51c2VzRXBoZW1lcmFsU2Vz
c2lvbigpIHx8ICFmcmFtZS5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5jYW5BY2Nlc3NB
cHBsaWNhdGlvbkNhY2hlKGZyYW1lLnRyZWUoKS50b3AoKS5kb2N1bWVudCgpLT5zZWN1cml0eU9y
aWdpbigpKSkgewogICAgICAgICBBU1NFUlQobV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJz
LmlzRW1wdHkoKSk7CiAgICAgICAgIEFTU0VSVChtX3BlbmRpbmdFbnRyaWVzLmlzRW1wdHkoKSk7
CiAgICAgICAgIEFTU0VSVCghbV9jYWNoZUJlaW5nVXBkYXRlZCk7Ci0gICAgICAgIHBvc3RMaXN0
ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNIRUNLSU5HX0VWRU5ULCBmcmFtZS0+bG9h
ZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSk7Ci0gICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGlj
YXRpb25DYWNoZUhvc3Q6OkVSUk9SX0VWRU5ULCBmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2Fk
ZXIoKSk7CisgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmNoZWNraW5nRXZl
bnQsIGRvY3VtZW50TG9hZGVyKTsKKyAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVz
KCkuZXJyb3JFdmVudCwgZG9jdW1lbnRMb2FkZXIpOwogICAgICAgICByZXR1cm47CiAgICAgfQog
CiAgICAgQVNTRVJUKCFtX2ZyYW1lKTsKLSAgICBtX2ZyYW1lID0gZnJhbWU7CisgICAgbV9mcmFt
ZSA9ICZmcmFtZTsKIAogICAgIHNldFVwZGF0ZVN0YXR1cyhDaGVja2luZyk7CiAKLSAgICBwb3N0
TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDSEVDS0lOR19FVkVOVCwgbV9hc3Nv
Y2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsKKyAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMo
KS5jaGVja2luZ0V2ZW50LCBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOwogICAgIGlmICgh
bV9uZXdlc3RDYWNoZSkgewogICAgICAgICBBU1NFUlQodXBkYXRlT3B0aW9uID09IEFwcGxpY2F0
aW9uQ2FjaGVVcGRhdGVXaXRoQnJvd3NpbmdDb250ZXh0KTsKLSAgICAgICAgcG9zdExpc3RlbmVy
VGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q0hFQ0tJTkdfRVZFTlQsIGZyYW1lLT5sb2FkZXIo
KS5kb2N1bWVudExvYWRlcigpKTsKKyAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVz
KCkuY2hlY2tpbmdFdmVudCwgZG9jdW1lbnRMb2FkZXIpOwogICAgIH0KICAgICAKICAgICBBU1NF
UlQoIW1fbWFuaWZlc3RIYW5kbGUpOwpAQCAtNDQ5LDcgKzQ0Myw3IEBAIHZvaWQgQXBwbGljYXRp
b25DYWNoZUdyb3VwOjp1cGRhdGUoRnJhbWUqIGZyYW1lLCBBcHBsaWNhdGlvbkNhY2hlVXBkYXRl
T3B0aW9uIHVwCiAgICAgbV9tYW5pZmVzdEhhbmRsZSA9IGNyZWF0ZVJlc291cmNlSGFuZGxlKG1f
bWFuaWZlc3RVUkwsIG1fbmV3ZXN0Q2FjaGUgPyBtX25ld2VzdENhY2hlLT5tYW5pZmVzdFJlc291
cmNlKCkgOiAwKTsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFib3J0KEZyYW1l
KiBmcmFtZSkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjphYm9ydChGcmFtZSYgZnJhbWUp
CiB7CiAgICAgaWYgKG1fdXBkYXRlU3RhdHVzID09IElkbGUpCiAgICAgICAgIHJldHVybjsKQEAg
LTQ1OCw3ICs0NTIsNyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6YWJvcnQoRnJhbWUq
IGZyYW1lKQogICAgIGlmIChtX2NvbXBsZXRpb25UeXBlICE9IE5vbmUpCiAgICAgICAgIHJldHVy
bjsKIAotICAgIGZyYW1lLT5kb2N1bWVudCgpLT5hZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291
cmNlOjpBcHBDYWNoZSwgTWVzc2FnZUxldmVsOjpEZWJ1ZywgQVNDSUlMaXRlcmFsKCJBcHBsaWNh
dGlvbiBDYWNoZSBkb3dubG9hZCBwcm9jZXNzIHdhcyBhYm9ydGVkLiIpKTsKKyAgICBmcmFtZS5k
b2N1bWVudCgpLT5hZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpBcHBDYWNoZSwgTWVz
c2FnZUxldmVsOjpEZWJ1ZywgQVNDSUlMaXRlcmFsKCJBcHBsaWNhdGlvbiBDYWNoZSBkb3dubG9h
ZCBwcm9jZXNzIHdhcyBhYm9ydGVkLiIpKTsKICAgICBjYWNoZVVwZGF0ZUZhaWxlZCgpOwogfQog
CkBAIC01MDIsOCArNDk2LDcgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRpZFJlY2Vp
dmVSZXNwb25zZShSZXNvdXJjZUhhbmRsZSogaGFuZGxlLCBSZXNvdXJjZVIKICAgICBBU1NFUlQo
aGFuZGxlID09IG1fY3VycmVudEhhbmRsZSk7CiAKICAgICBVUkwgdXJsKGhhbmRsZS0+Zmlyc3RS
ZXF1ZXN0KCkudXJsKCkpOwotICAgIGlmICh1cmwuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkpCi0g
ICAgICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKKyAgICB1cmwucmVtb3ZlRnJh
Z21lbnRJZGVudGlmaWVyKCk7CiAgICAgCiAgICAgQVNTRVJUKCFtX2N1cnJlbnRSZXNvdXJjZSk7
CiAgICAgQVNTRVJUKG1fcGVuZGluZ0VudHJpZXMuY29udGFpbnModXJsKSk7CkBAIC01OTMsNyAr
NTg2LDcgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRpZEZpbmlzaExvYWRpbmcoUmVz
b3VyY2VIYW5kbGUqIGhhbmRsZSwgZG91YmxlIGZpbmkKICAgICAKICAgICBBU1NFUlQobV9jYWNo
ZUJlaW5nVXBkYXRlZCk7CiAKLSAgICBtX2NhY2hlQmVpbmdVcGRhdGVkLT5hZGRSZXNvdXJjZShX
VEZNb3ZlKG1fY3VycmVudFJlc291cmNlKSk7CisgICAgbV9jYWNoZUJlaW5nVXBkYXRlZC0+YWRk
UmVzb3VyY2UobV9jdXJyZW50UmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSk7CiAgICAgbV9jdXJy
ZW50SGFuZGxlID0gbnVsbHB0cjsKIAogICAgIC8vIFdoaWxlIGRvd25sb2FkaW5nIGNoZWNrIHRv
IHNlZSBpZiB3ZSBoYXZlIGV4Y2VlZGVkIHRoZSBhdmFpbGFibGUgcXVvdGEuCkBAIC02MjYsOCAr
NjE5LDcgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRpZEZhaWwoUmVzb3VyY2VIYW5k
bGUqIGhhbmRsZSwgY29uc3QgUmVzb3VyY2VFcnJvciYKIAogICAgIHVuc2lnbmVkIHR5cGUgPSBt
X2N1cnJlbnRSZXNvdXJjZSA/IG1fY3VycmVudFJlc291cmNlLT50eXBlKCkgOiBtX3BlbmRpbmdF
bnRyaWVzLmdldChoYW5kbGUtPmZpcnN0UmVxdWVzdCgpLnVybCgpKTsKICAgICBVUkwgdXJsKGhh
bmRsZS0+Zmlyc3RSZXF1ZXN0KCkudXJsKCkpOwotICAgIGlmICh1cmwuaGFzRnJhZ21lbnRJZGVu
dGlmaWVyKCkpCi0gICAgICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKKyAgICB1
cmwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CiAKICAgICBBU1NFUlQoIW1fY3VycmVudFJl
c291cmNlIHx8ICFtX3BlbmRpbmdFbnRyaWVzLmNvbnRhaW5zKHVybCkpOwogICAgIG1fY3VycmVu
dFJlc291cmNlID0gbnVsbHB0cjsKQEAgLTczNCw3ICs3MjYsNyBAQCB2b2lkIEFwcGxpY2F0aW9u
Q2FjaGVHcm91cDo6ZGlkRmluaXNoTG9hZGluZ01hbmlmZXN0KCkKICAgICAvLyBXZSBoYXZlIHRo
ZSBtYW5pZmVzdCwgbm93IGRvd25sb2FkIHRoZSByZXNvdXJjZXMuCiAgICAgc2V0VXBkYXRlU3Rh
dHVzKERvd25sb2FkaW5nKTsKICAgICAKLSAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9u
Q2FjaGVIb3N0OjpET1dOTE9BRElOR19FVkVOVCwgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJz
KTsKKyAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5kb3dubG9hZGluZ0V2ZW50LCBt
X2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOwogCiAgICAgQVNTRVJUKG1fcGVuZGluZ0VudHJp
ZXMuaXNFbXB0eSgpKTsKIApAQCAtODAyLDggKzc5NCw4IEBAIHZvaWQgQXBwbGljYXRpb25DYWNo
ZUdyb3VwOjptYW5pZmVzdE5vdEZvdW5kKCkKIHsKICAgICBtYWtlT2Jzb2xldGUoKTsKIAotICAg
IHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6Ok9CU09MRVRFX0VWRU5ULCBt
X2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOwotICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGlj
YXRpb25DYWNoZUhvc3Q6OkVSUk9SX0VWRU5ULCBtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRl
cnMpOworICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLm9ic29sZXRlRXZlbnQsIG1f
YXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CisgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5h
bWVzKCkuZXJyb3JFdmVudCwgbV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzKTsKIAogICAg
IHN0b3BMb2FkaW5nKCk7CiAKQEAgLTgxMywxNiArODA1LDE2IEBAIHZvaWQgQXBwbGljYXRpb25D
YWNoZUdyb3VwOjptYW5pZmVzdE5vdEZvdW5kKCkKICAgICB3aGlsZSAoIW1fcGVuZGluZ01hc3Rl
clJlc291cmNlTG9hZGVycy5pc0VtcHR5KCkpIHsKICAgICAgICAgSGFzaFNldDxEb2N1bWVudExv
YWRlcio+OjppdGVyYXRvciBpdCA9IG1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5iZWdp
bigpOwogICAgICAgICAKLSAgICAgICAgQVNTRVJUKCgqaXQpLT5hcHBsaWNhdGlvbkNhY2hlSG9z
dCgpLT5jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKSA9PSB0aGlzKTsKLSAgICAgICAg
QVNTRVJUKCEoKml0KS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+YXBwbGljYXRpb25DYWNoZSgp
KTsKLSAgICAgICAgKCppdCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPnNldENhbmRpZGF0ZUFw
cGxpY2F0aW9uQ2FjaGVHcm91cChudWxscHRyKTsKKyAgICAgICAgQVNTRVJUKCgqaXQpLT5hcHBs
aWNhdGlvbkNhY2hlSG9zdCgpLmNhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCgpID09IHRo
aXMpOworICAgICAgICBBU1NFUlQoISgqaXQpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLmFwcGxp
Y2F0aW9uQ2FjaGUoKSk7CisgICAgICAgICgqaXQpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLnNl
dENhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cChudWxscHRyKTsKICAgICAgICAgbV9wZW5k
aW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLnJlbW92ZShpdCk7CiAgICAgfQogCiAgICAgbV9kb3du
bG9hZGluZ1BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnNDb3VudCA9IDA7CiAgICAgc2V0VXBk
YXRlU3RhdHVzKElkbGUpOyAgICAKICAgICBtX2ZyYW1lID0gbnVsbHB0cjsKLSAgICAKKwogICAg
IGlmIChtX2NhY2hlcy5pc0VtcHR5KCkpIHsKICAgICAgICAgQVNTRVJUKG1fYXNzb2NpYXRlZERv
Y3VtZW50TG9hZGVycy5pc0VtcHR5KCkpOwogICAgICAgICBBU1NFUlQoIW1fY2FjaGVCZWluZ1Vw
ZGF0ZWQpOwpAQCAtODQ5LDEzICs4NDEsMTMgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
OmNoZWNrSWZMb2FkSXNDb21wbGV0ZSgpCiAKICAgICAgICAgLy8gVGhlIHN0b3JhZ2UgY291bGQg
aGF2ZSBiZWVuIG1hbnVhbGx5IGVtcHRpZWQgYnkgdGhlIHVzZXIuCiAgICAgICAgIGlmICghbV9z
dG9yYWdlSUQpCi0gICAgICAgICAgICBtX3N0b3JhZ2UtPnN0b3JlTmV3ZXN0Q2FjaGUodGhpcyk7
CisgICAgICAgICAgICBtX3N0b3JhZ2UtPnN0b3JlTmV3ZXN0Q2FjaGUoKnRoaXMpOwogCi0gICAg
ICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6Ok5PVVBEQVRFX0VWRU5U
LCBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOworICAgICAgICBwb3N0TGlzdGVuZXJUYXNr
KGV2ZW50TmFtZXMoKS5ub3VwZGF0ZUV2ZW50LCBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMp
OwogICAgICAgICBicmVhazsKICAgICBjYXNlIEZhaWx1cmU6CiAgICAgICAgIEFTU0VSVCghbV9j
YWNoZUJlaW5nVXBkYXRlZCk7Ci0gICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25D
YWNoZUhvc3Q6OkVSUk9SX0VWRU5ULCBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOworICAg
ICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBtX2Fzc29jaWF0
ZWREb2N1bWVudExvYWRlcnMpOwogICAgICAgICBpZiAobV9jYWNoZXMuaXNFbXB0eSgpKSB7CiAg
ICAgICAgICAgICBBU1NFUlQobV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzLmlzRW1wdHkoKSk7
CiAgICAgICAgICAgICBkZWxldGUgdGhpczsKQEAgLTg2Nyw3ICs4NTksNyBAQCB2b2lkIEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cDo6Y2hlY2tJZkxvYWRJc0NvbXBsZXRlKCkKIAogICAgICAgICBBU1NF
UlQobV9jYWNoZUJlaW5nVXBkYXRlZCk7CiAgICAgICAgIGlmIChtX21hbmlmZXN0UmVzb3VyY2Up
Ci0gICAgICAgICAgICBtX2NhY2hlQmVpbmdVcGRhdGVkLT5zZXRNYW5pZmVzdFJlc291cmNlKFdU
Rk1vdmUobV9tYW5pZmVzdFJlc291cmNlKSk7CisgICAgICAgICAgICBtX2NhY2hlQmVpbmdVcGRh
dGVkLT5zZXRNYW5pZmVzdFJlc291cmNlKG1fbWFuaWZlc3RSZXNvdXJjZS5yZWxlYXNlTm9uTnVs
bCgpKTsKICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAvLyBXZSBjYW4gZ2V0IGhlcmUgYXMg
YSByZXN1bHQgb2YgcmV0cnlpbmcgdGhlIENvbXBsZXRlIHN0ZXAsIGZvbGxvd2luZwogICAgICAg
ICAgICAgLy8gYSBmYWlsdXJlIG9mIHRoZSBjYWNoZSBzdG9yYWdlIHRvIHNhdmUgdGhlIG5ld2Vz
dCBjYWNoZSBkdWUgdG8gaGl0dGluZwpAQCAtODg3LDE4ICs4NzksMTggQEAgdm9pZCBBcHBsaWNh
dGlvbkNhY2hlR3JvdXA6OmNoZWNrSWZMb2FkSXNDb21wbGV0ZSgpCiAgICAgICAgICAgICBkaWRS
ZWFjaE9yaWdpblF1b3RhKHRvdGFsU3BhY2VOZWVkZWQpOwogCiAgICAgICAgIEFwcGxpY2F0aW9u
Q2FjaGVTdG9yYWdlOjpGYWlsdXJlUmVhc29uIGZhaWx1cmVSZWFzb247Ci0gICAgICAgIHNldE5l
d2VzdENhY2hlKFdURk1vdmUobV9jYWNoZUJlaW5nVXBkYXRlZCkpOwotICAgICAgICBpZiAobV9z
dG9yYWdlLT5zdG9yZU5ld2VzdENhY2hlKHRoaXMsIG9sZE5ld2VzdENhY2hlLmdldCgpLCBmYWls
dXJlUmVhc29uKSkgeworICAgICAgICBzZXROZXdlc3RDYWNoZShtX2NhY2hlQmVpbmdVcGRhdGVk
LnJlbGVhc2VOb25OdWxsKCkpOworICAgICAgICBpZiAobV9zdG9yYWdlLT5zdG9yZU5ld2VzdENh
Y2hlKCp0aGlzLCBvbGROZXdlc3RDYWNoZS5nZXQoKSwgZmFpbHVyZVJlYXNvbikpIHsKICAgICAg
ICAgICAgIC8vIE5ldyBjYWNoZSBzdG9yZWQsIG5vdyByZW1vdmUgdGhlIG9sZCBjYWNoZS4KICAg
ICAgICAgICAgIGlmIChvbGROZXdlc3RDYWNoZSkKICAgICAgICAgICAgICAgICBtX3N0b3JhZ2Ut
PnJlbW92ZShvbGROZXdlc3RDYWNoZS5nZXQoKSk7CiAKICAgICAgICAgICAgIC8vIEZpcmUgdGhl
IGZpbmFsIHByb2dyZXNzIGV2ZW50LgogICAgICAgICAgICAgQVNTRVJUKG1fcHJvZ3Jlc3NEb25l
ID09IG1fcHJvZ3Jlc3NUb3RhbCk7Ci0gICAgICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0OjpQUk9HUkVTU19FVkVOVCwgbV9wcm9ncmVzc1RvdGFsLCBtX3Byb2dy
ZXNzRG9uZSwgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsKKyAgICAgICAgICAgIHBvc3RM
aXN0ZW5lclRhc2soZXZlbnROYW1lcygpLnByb2dyZXNzRXZlbnQsIG1fcHJvZ3Jlc3NUb3RhbCwg
bV9wcm9ncmVzc0RvbmUsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CiAKICAgICAgICAg
ICAgIC8vIEZpcmUgdGhlIHN1Y2Nlc3MgZXZlbnQuCi0gICAgICAgICAgICBwb3N0TGlzdGVuZXJU
YXNrKGlzVXBncmFkZUF0dGVtcHQgPyBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6VVBEQVRFUkVBRFlf
RVZFTlQgOiBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q0FDSEVEX0VWRU5ULCBtX2Fzc29jaWF0ZWRE
b2N1bWVudExvYWRlcnMpOworICAgICAgICAgICAgcG9zdExpc3RlbmVyVGFzayhpc1VwZ3JhZGVB
dHRlbXB0ID8gZXZlbnROYW1lcygpLnVwZGF0ZXJlYWR5RXZlbnQgOiBldmVudE5hbWVzKCkuY2Fj
aGVkRXZlbnQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CiAgICAgICAgICAgICAvLyBJ
dCBpcyBjbGVhciB0aGF0IHRoZSBvcmlnaW4gcXVvdGEgd2FzIG5vdCByZWFjaGVkLCBzbyBjbGVh
ciB0aGUgZmxhZyBpZiBpdCB3YXMgc2V0LgogICAgICAgICAgICAgbV9vcmlnaW5RdW90YUV4Y2Vl
ZGVkUHJldmlvdXNseSA9IGZhbHNlOwogICAgICAgICB9IGVsc2UgewpAQCAtOTE5LDEwICs5MTEs
OCBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6Y2hlY2tJZkxvYWRJc0NvbXBsZXRlKCkK
IAogICAgICAgICAgICAgICAgIC8vIFNhdmUgYSByZWZlcmVuY2UgdG8gdGhlIG5ldyBjYWNoZS4K
ICAgICAgICAgICAgICAgICBtX2NhY2hlQmVpbmdVcGRhdGVkID0gV1RGTW92ZShtX25ld2VzdENh
Y2hlKTsKLSAgICAgICAgICAgICAgICBpZiAob2xkTmV3ZXN0Q2FjaGUpIHsKLSAgICAgICAgICAg
ICAgICAgICAgLy8gUmVpbnN0YXRlIHRoZSBvbGROZXdlc3RDYWNoZS4KLSAgICAgICAgICAgICAg
ICAgICAgc2V0TmV3ZXN0Q2FjaGUoV1RGTW92ZShvbGROZXdlc3RDYWNoZSkpOwotICAgICAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgICAgICBpZiAob2xkTmV3ZXN0Q2FjaGUpCisgICAgICAgICAg
ICAgICAgICAgIHNldE5ld2VzdENhY2hlKG9sZE5ld2VzdENhY2hlLnJlbGVhc2VOb25OdWxsKCkp
OwogICAgICAgICAgICAgICAgIHNjaGVkdWxlUmVhY2hlZE1heEFwcENhY2hlU2l6ZUNhbGxiYWNr
KCk7CiAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgfQpAQCAtOTMwLDcgKzky
MCw3IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpjaGVja0lmTG9hZElzQ29tcGxldGUo
KQogICAgICAgICAgICAgLy8gUnVuIHRoZSAiY2FjaGUgZmFpbHVyZSBzdGVwcyIKICAgICAgICAg
ICAgIC8vIEZpcmUgdGhlIGVycm9yIGV2ZW50cyB0byBhbGwgcGVuZGluZyBtYXN0ZXIgZW50cmll
cywgYXMgd2VsbCBhbnkgb3RoZXIgY2FjaGUgaG9zdHMKICAgICAgICAgICAgIC8vIGN1cnJlbnRs
eSBhc3NvY2lhdGVkIHdpdGggYSBjYWNoZSBpbiB0aGlzIGdyb3VwLgotICAgICAgICAgICAgcG9z
dExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RVJST1JfRVZFTlQsIG1fYXNzb2Np
YXRlZERvY3VtZW50TG9hZGVycyk7CisgICAgICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50
TmFtZXMoKS5lcnJvckV2ZW50LCBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOwogICAgICAg
ICAgICAgLy8gRGlzYXNzb2NpYXRlIHRoZSBwZW5kaW5nIG1hc3RlciBlbnRyaWVzIGZyb20gdGhl
IGZhaWxlZCBuZXcgY2FjaGUuIE5vdGUgdGhhdAogICAgICAgICAgICAgLy8gYWxsIG90aGVyIGxv
YWRlcnMgaW4gdGhlIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyBhcmUgc3RpbGwgYXNzb2Np
YXRlZCB3aXRoCiAgICAgICAgICAgICAvLyBzb21lIG90aGVyIGNhY2hlIGluIHRoaXMgZ3JvdXAu
IFRoZXkgYXJlIG5vdCBhc3NvY2lhdGVkIHdpdGggdGhlIGZhaWxlZCBuZXcgY2FjaGUuCkBAIC05
MzksMTIgKzkyOSwxMiBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6Y2hlY2tJZkxvYWRJ
c0NvbXBsZXRlKCkKICAgICAgICAgICAgIFZlY3RvcjxEb2N1bWVudExvYWRlcio+IGxvYWRlcnM7
CiAgICAgICAgICAgICBjb3B5VG9WZWN0b3IobV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJz
LCBsb2FkZXJzKTsKICAgICAgICAgICAgIGZvciAoYXV0byYgbG9hZGVyIDogbG9hZGVycykKLSAg
ICAgICAgICAgICAgICBkaXNhc3NvY2lhdGVEb2N1bWVudExvYWRlcihsb2FkZXIpOyAvLyBUaGlz
IGNhbiBkZWxldGUgdGhpcyBncm91cC4KKyAgICAgICAgICAgICAgICBkaXNhc3NvY2lhdGVEb2N1
bWVudExvYWRlcigqbG9hZGVyKTsgLy8gVGhpcyBjYW4gZGVsZXRlIHRoaXMgZ3JvdXAuCiAKICAg
ICAgICAgICAgIC8vIFJlaW5zdGF0ZSB0aGUgb2xkTmV3ZXN0Q2FjaGUsIGlmIHRoZXJlIHdhcyBv
bmUuCiAgICAgICAgICAgICBpZiAob2xkTmV3ZXN0Q2FjaGUpIHsKICAgICAgICAgICAgICAgICAv
LyBUaGlzIHdpbGwgZGlzY2FyZCB0aGUgZmFpbGVkIG5ldyBjYWNoZS4KLSAgICAgICAgICAgICAg
ICBzZXROZXdlc3RDYWNoZShXVEZNb3ZlKG9sZE5ld2VzdENhY2hlKSk7CisgICAgICAgICAgICAg
ICAgc2V0TmV3ZXN0Q2FjaGUob2xkTmV3ZXN0Q2FjaGUucmVsZWFzZU5vbk51bGwoKSk7CiAgICAg
ICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgIC8vIFdlIG11c3QgaGF2ZSBiZWVuIGRl
bGV0ZWQgYnkgdGhlIGxhc3QgY2FsbCB0byBkaXNhc3NvY2lhdGVEb2N1bWVudExvYWRlcigpLgog
ICAgICAgICAgICAgICAgIHJldHVybjsKQEAgLTk3MywxNCArOTYzLDEzIEBAIHZvaWQgQXBwbGlj
YXRpb25DYWNoZUdyb3VwOjpzdGFydExvYWRpbmdFbnRyeSgpCiAgICAgICAgIHJldHVybjsKICAg
ICB9CiAgICAgCi0gICAgRW50cnlNYXA6OmNvbnN0X2l0ZXJhdG9yIGl0ID0gbV9wZW5kaW5nRW50
cmllcy5iZWdpbigpOworICAgIGF1dG8gZmlyc3RQZW5kaW5nRW50cnlVUkwgPSBtX3BlbmRpbmdF
bnRyaWVzLmJlZ2luKCktPmtleTsKIAotICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25D
YWNoZUhvc3Q6OlBST0dSRVNTX0VWRU5ULCBtX3Byb2dyZXNzVG90YWwsIG1fcHJvZ3Jlc3NEb25l
LCBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOworICAgIHBvc3RMaXN0ZW5lclRhc2soZXZl
bnROYW1lcygpLnByb2dyZXNzRXZlbnQsIG1fcHJvZ3Jlc3NUb3RhbCwgbV9wcm9ncmVzc0RvbmUs
IG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CiAgICAgbV9wcm9ncmVzc0RvbmUrKzsKIAog
ICAgIEFTU0VSVCghbV9jdXJyZW50SGFuZGxlKTsKLSAgICAKLSAgICBtX2N1cnJlbnRIYW5kbGUg
PSBjcmVhdGVSZXNvdXJjZUhhbmRsZShVUkwoUGFyc2VkVVJMU3RyaW5nLCBpdC0+a2V5KSwgbV9u
ZXdlc3RDYWNoZSA/IG1fbmV3ZXN0Q2FjaGUtPnJlc291cmNlRm9yVVJMKGl0LT5rZXkpIDogMCk7
CisgICAgbV9jdXJyZW50SGFuZGxlID0gY3JlYXRlUmVzb3VyY2VIYW5kbGUoVVJMKFBhcnNlZFVS
TFN0cmluZywgZmlyc3RQZW5kaW5nRW50cnlVUkwpLCBtX25ld2VzdENhY2hlID8gbV9uZXdlc3RD
YWNoZS0+cmVzb3VyY2VGb3JVUkwoZmlyc3RQZW5kaW5nRW50cnlVUkwpIDogMCk7CiB9CiAKIHZv
aWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpkZWxpdmVyRGVsYXllZE1haW5SZXNvdXJjZXMoKQpA
QCAtOTg4LDE5ICs5NzcsMTUgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRlbGl2ZXJE
ZWxheWVkTWFpblJlc291cmNlcygpCiAgICAgLy8gTmVlZCB0byBjb3B5IGxvYWRlcnMsIGJlY2F1
c2UgdGhlIGNhY2hlIGdyb3VwIG1heSBiZSBkZXN0cm95ZWQgYXQgdGhlIGVuZCBvZiBpdGVyYXRp
b24uCiAgICAgVmVjdG9yPERvY3VtZW50TG9hZGVyKj4gbG9hZGVyczsKICAgICBjb3B5VG9WZWN0
b3IobV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLCBsb2FkZXJzKTsKLSAgICBzaXplX3Qg
Y291bnQgPSBsb2FkZXJzLnNpemUoKTsKLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSAhPSBjb3Vu
dDsgKytpKSB7Ci0gICAgICAgIERvY3VtZW50TG9hZGVyKiBsb2FkZXIgPSBsb2FkZXJzW2ldOwor
ICAgIGZvciAoYXV0byogbG9hZGVyIDogbG9hZGVycykgewogICAgICAgICBpZiAobG9hZGVyLT5p
c0xvYWRpbmdNYWluUmVzb3VyY2UoKSkKICAgICAgICAgICAgIGNvbnRpbnVlOwotCi0gICAgICAg
IGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yID0gbG9hZGVyLT5tYWluRG9jdW1lbnRFcnJvcigp
OwotICAgICAgICBpZiAoZXJyb3IuaXNOdWxsKCkpCi0gICAgICAgICAgICBmaW5pc2hlZExvYWRp
bmdNYWluUmVzb3VyY2UobG9hZGVyKTsKKyAgICAgICAgaWYgKGxvYWRlci0+bWFpbkRvY3VtZW50
RXJyb3IoKS5pc051bGwoKSkKKyAgICAgICAgICAgIGZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJj
ZSgqbG9hZGVyKTsKICAgICAgICAgZWxzZQotICAgICAgICAgICAgZmFpbGVkTG9hZGluZ01haW5S
ZXNvdXJjZShsb2FkZXIpOworICAgICAgICAgICAgZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZSgq
bG9hZGVyKTsKICAgICB9Ci0gICAgaWYgKCFjb3VudCkKKyAgICBpZiAobG9hZGVycy5pc0VtcHR5
KCkpCiAgICAgICAgIGNoZWNrSWZMb2FkSXNDb21wbGV0ZSgpOwogfQogCkBAIC0xMDA4LDEzICs5
OTMsMTIgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFkZEVudHJ5KGNvbnN0IFN0cmlu
ZyYgdXJsLCB1bnNpZ25lZCB0eXBlKQogewogICAgIEFTU0VSVChtX2NhY2hlQmVpbmdVcGRhdGVk
KTsKICAgICBBU1NFUlQoIVVSTChQYXJzZWRVUkxTdHJpbmcsIHVybCkuaGFzRnJhZ21lbnRJZGVu
dGlmaWVyKCkpOwotICAgIAorCiAgICAgLy8gRG9uJ3QgYWRkIHRoZSBVUkwgaWYgd2UgYWxyZWFk
eSBoYXZlIGFuIG1hc3RlciByZXNvdXJjZSBpbiB0aGUgY2FjaGUKICAgICAvLyAoaS5lLiwgdGhl
IG1haW4gcmVzb3VyY2UgZmluaXNoZWQgbG9hZGluZyBiZWZvcmUgdGhlIG1hbmlmZXN0KS4KLSAg
ICBpZiAoQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiByZXNvdXJjZSA9IG1fY2FjaGVCZWluZ1Vw
ZGF0ZWQtPnJlc291cmNlRm9yVVJMKHVybCkpIHsKKyAgICBpZiAoYXV0byogcmVzb3VyY2UgPSBt
X2NhY2hlQmVpbmdVcGRhdGVkLT5yZXNvdXJjZUZvclVSTCh1cmwpKSB7CiAgICAgICAgIEFTU0VS
VChyZXNvdXJjZS0+dHlwZSgpICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIpOwog
ICAgICAgICBBU1NFUlQoIW1fZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCktPmlzTG9h
ZGluZ01haW5SZXNvdXJjZSgpKTsKLSAgICAKICAgICAgICAgcmVzb3VyY2UtPmFkZFR5cGUodHlw
ZSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CkBAIC0xMDI1LDExICsxMDA5LDggQEAgdm9pZCBB
cHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFkZEVudHJ5KGNvbnN0IFN0cmluZyYgdXJsLCB1bnNpZ25l
ZCB0eXBlKQogICAgICAgICBtX21hbmlmZXN0UmVzb3VyY2UtPmFkZFR5cGUodHlwZSk7CiAgICAg
ICAgIHJldHVybjsKICAgICB9Ci0gICAgCi0gICAgRW50cnlNYXA6OkFkZFJlc3VsdCByZXN1bHQg
PSBtX3BlbmRpbmdFbnRyaWVzLmFkZCh1cmwsIHR5cGUpOwotICAgIAotICAgIGlmICghcmVzdWx0
LmlzTmV3RW50cnkpCi0gICAgICAgIHJlc3VsdC5pdGVyYXRvci0+dmFsdWUgfD0gdHlwZTsKKwor
ICAgIG1fcGVuZGluZ0VudHJpZXMuYWRkKHVybCwgdHlwZSkuaXRlcmF0b3ItPnZhbHVlIHw9IHR5
cGU7CiB9CiAKIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjphc3NvY2lhdGVEb2N1bWVudExv
YWRlcldpdGhDYWNoZShEb2N1bWVudExvYWRlciogbG9hZGVyLCBBcHBsaWNhdGlvbkNhY2hlKiBj
YWNoZSkKQEAgLTEwNDAsNjMgKzEwMjEsNjMgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
OmFzc29jaWF0ZURvY3VtZW50TG9hZGVyV2l0aENhY2hlKERvY3VtZW50TG9hZGVyKiBsb2EKIAog
ICAgIEFTU0VSVCghbV9pc09ic29sZXRlKTsKIAotICAgIGxvYWRlci0+YXBwbGljYXRpb25DYWNo
ZUhvc3QoKS0+c2V0QXBwbGljYXRpb25DYWNoZShjYWNoZSk7CisgICAgbG9hZGVyLT5hcHBsaWNh
dGlvbkNhY2hlSG9zdCgpLnNldEFwcGxpY2F0aW9uQ2FjaGUoY2FjaGUpOwogCiAgICAgQVNTRVJU
KCFtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMuY29udGFpbnMobG9hZGVyKSk7CiAgICAgbV9h
c3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzLmFkZChsb2FkZXIpOwogfQogCi1jbGFzcyBDaHJvbWVD
bGllbnRDYWxsYmFja1RpbWVyOiBwdWJsaWMgVGltZXJCYXNlIHsKK2NsYXNzIENocm9tZUNsaWVu
dENhbGxiYWNrVGltZXIgZmluYWwgOiBwdWJsaWMgVGltZXJCYXNlIHsKIHB1YmxpYzoKLSAgICBD
aHJvbWVDbGllbnRDYWxsYmFja1RpbWVyKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogY2FjaGVHcm91
cCkKLSAgICAgICAgOiBtX2NhY2hlR3JvdXAoY2FjaGVHcm91cCkKKyAgICBDaHJvbWVDbGllbnRD
YWxsYmFja1RpbWVyKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCYgZ3JvdXApCisgICAgICAgIDogbV9n
cm91cChncm91cCkKICAgICB7CiAgICAgfQogCiBwcml2YXRlOgotICAgIHZvaWQgZmlyZWQoKSBv
dmVycmlkZQorICAgIHZvaWQgZmlyZWQoKSBmaW5hbAogICAgIHsKLSAgICAgICAgbV9jYWNoZUdy
b3VwLT5kaWRSZWFjaE1heEFwcENhY2hlU2l6ZSgpOworICAgICAgICBtX2dyb3VwLmRpZFJlYWNo
TWF4QXBwQ2FjaGVTaXplKCk7CiAgICAgICAgIGRlbGV0ZSB0aGlzOwogICAgIH0KLSAgICAvLyBO
b3RlIHRoYXQgdGhlcmUgaXMgbm8gbmVlZCB0byB1c2UgYSBSZWZQdHIgaGVyZS4gVGhlIEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cCBpbnN0YW5jZSBpcyBndWFyYW50ZWVkCi0gICAgLy8gdG8gYmUgYWxp
dmUgd2hlbiB0aGUgdGltZXIgZmlyZXMgc2luY2UgaW52b2tpbmcgdGhlIENocm9tZUNsaWVudCBj
YWxsYmFjayBpcyBwYXJ0IG9mIGl0cyBub3JtYWwKKworICAgIC8vIE5vdGUgdGhhdCB0aGVyZSBp
cyBubyBuZWVkIHRvIHVzZSBhIFJlZiBoZXJlLiBUaGUgQXBwbGljYXRpb25DYWNoZUdyb3VwIGlu
c3RhbmNlIGlzIGd1YXJhbnRlZWQKKyAgICAvLyB0byBiZSBhbGl2ZSB3aGVuIHRoZSB0aW1lciBm
aXJlcyBzaW5jZSBpbnZva2luZyB0aGUgY2FsbGJhY2sgaXMgcGFydCBvZiBpdHMgbm9ybWFsCiAg
ICAgLy8gdXBkYXRlIG1hY2hpbmVyeSBhbmQgbm90aGluZyBjYW4geWV0IGNhdXNlIGl0IHRvIGdl
dCBkZWxldGVkLgotICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogbV9jYWNoZUdyb3VwOworICAg
IEFwcGxpY2F0aW9uQ2FjaGVHcm91cCYgbV9ncm91cDsKIH07CiAKIHZvaWQgQXBwbGljYXRpb25D
YWNoZUdyb3VwOjpzY2hlZHVsZVJlYWNoZWRNYXhBcHBDYWNoZVNpemVDYWxsYmFjaygpCiB7CiAg
ICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKLSAgICBDaHJvbWVDbGllbnRDYWxsYmFja1RpbWVy
KiB0aW1lciA9IG5ldyBDaHJvbWVDbGllbnRDYWxsYmFja1RpbWVyKHRoaXMpOworICAgIGF1dG8q
IHRpbWVyID0gbmV3IENocm9tZUNsaWVudENhbGxiYWNrVGltZXIoKnRoaXMpOwogICAgIHRpbWVy
LT5zdGFydE9uZVNob3QoMCk7CiAgICAgLy8gVGhlIHRpbWVyIHdpbGwgZGVsZXRlIGl0c2VsZiBv
bmNlIGl0IGZpcmVzLgogfQogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6cG9zdExpc3Rl
bmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RXZlbnRJRCBldmVudElELCBpbnQgcHJvZ3Jl
c3NUb3RhbCwgaW50IHByb2dyZXNzRG9uZSwgY29uc3QgSGFzaFNldDxEb2N1bWVudExvYWRlcio+
JiBsb2FkZXJTZXQpCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6cG9zdExpc3RlbmVyVGFz
ayhjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgaW50IHByb2dyZXNzVG90YWwsIGludCBw
cm9ncmVzc0RvbmUsIGNvbnN0IEhhc2hTZXQ8RG9jdW1lbnRMb2FkZXIqPiYgbG9hZGVyU2V0KQog
ewogICAgIGZvciAoYXV0byYgbG9hZGVyIDogbG9hZGVyU2V0KQotICAgICAgICBwb3N0TGlzdGVu
ZXJUYXNrKGV2ZW50SUQsIHByb2dyZXNzVG90YWwsIHByb2dyZXNzRG9uZSwgbG9hZGVyKTsKKyAg
ICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVudFR5cGUsIHByb2dyZXNzVG90YWwsIHByb2dyZXNz
RG9uZSwgKmxvYWRlcik7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpwb3N0TGlz
dGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFdmVudElEIGV2ZW50SUQsIGludCBwcm9n
cmVzc1RvdGFsLCBpbnQgcHJvZ3Jlc3NEb25lLCBEb2N1bWVudExvYWRlciogbG9hZGVyKQordm9p
ZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnBvc3RMaXN0ZW5lclRhc2soY29uc3QgQXRvbWljU3Ry
aW5nJiBldmVudFR5cGUsIGludCBwcm9ncmVzc1RvdGFsLCBpbnQgcHJvZ3Jlc3NEb25lLCBEb2N1
bWVudExvYWRlciYgbG9hZGVyKQogewotICAgIEZyYW1lKiBmcmFtZSA9IGxvYWRlci0+ZnJhbWUo
KTsKKyAgICBhdXRvKiBmcmFtZSA9IGxvYWRlci5mcmFtZSgpOwogICAgIGlmICghZnJhbWUpCiAg
ICAgICAgIHJldHVybjsKICAgICAKLSAgICBBU1NFUlQoZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50
TG9hZGVyKCkgPT0gbG9hZGVyKTsKKyAgICBBU1NFUlQoZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50
TG9hZGVyKCkgPT0gJmxvYWRlcik7CiAKLSAgICBSZWZQdHI8RG9jdW1lbnRMb2FkZXI+IGxvYWRl
clByb3RlY3Rvcihsb2FkZXIpOwotICAgIGZyYW1lLT5kb2N1bWVudCgpLT5wb3N0VGFzayhbbG9h
ZGVyUHJvdGVjdG9yLCBldmVudElELCBwcm9ncmVzc1RvdGFsLCBwcm9ncmVzc0RvbmVdIChTY3Jp
cHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0KSB7CisgICAgUmVmUHRyPERvY3VtZW50TG9hZGVy
PiBwcm90ZWN0ZWRMb2FkZXIoJmxvYWRlcik7CisgICAgZnJhbWUtPmRvY3VtZW50KCktPnBvc3RU
YXNrKFtwcm90ZWN0ZWRMb2FkZXIsICZldmVudFR5cGUsIHByb2dyZXNzVG90YWwsIHByb2dyZXNz
RG9uZV0gKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQpIHsKICAgICAgICAgQVNTRVJU
X1VOVVNFRChjb250ZXh0LCBjb250ZXh0LmlzRG9jdW1lbnQoKSk7Ci0gICAgICAgIEZyYW1lKiBm
cmFtZSA9IGxvYWRlclByb3RlY3Rvci0+ZnJhbWUoKTsKKyAgICAgICAgYXV0byogZnJhbWUgPSBw
cm90ZWN0ZWRMb2FkZXItPmZyYW1lKCk7CiAgICAgICAgIGlmICghZnJhbWUpCiAgICAgICAgICAg
ICByZXR1cm47CiAKLSAgICAgICAgQVNTRVJUKGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRl
cigpID09IGxvYWRlclByb3RlY3Rvcik7Ci0KLSAgICAgICAgbG9hZGVyUHJvdGVjdG9yLT5hcHBs
aWNhdGlvbkNhY2hlSG9zdCgpLT5ub3RpZnlET01BcHBsaWNhdGlvbkNhY2hlKGV2ZW50SUQsIHBy
b2dyZXNzVG90YWwsIHByb2dyZXNzRG9uZSk7CisgICAgICAgIEFTU0VSVChmcmFtZS0+bG9hZGVy
KCkuZG9jdW1lbnRMb2FkZXIoKSA9PSBwcm90ZWN0ZWRMb2FkZXIpOworICAgICAgICBwcm90ZWN0
ZWRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubm90aWZ5RE9NQXBwbGljYXRpb25DYWNo
ZShldmVudFR5cGUsIHByb2dyZXNzVG90YWwsIHByb2dyZXNzRG9uZSk7CiAgICAgfSk7CiB9CiAK
QEAgLTExMDgsOCArMTA4OSw3IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZXRVcGRh
dGVTdGF0dXMoVXBkYXRlU3RhdHVzIHN0YXR1cykKIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3Vw
OjpjbGVhclN0b3JhZ2VJRCgpCiB7CiAgICAgbV9zdG9yYWdlSUQgPSAwOwotICAgIAotICAgIGZv
ciAoY29uc3QgYXV0byYgY2FjaGUgOiBtX2NhY2hlcykKKyAgICBmb3IgKGF1dG8mIGNhY2hlIDog
bV9jYWNoZXMpCiAgICAgICAgIGNhY2hlLT5jbGVhclN0b3JhZ2VJRCgpOwogfQogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3Vw
LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3Vw
LmgKaW5kZXggYjA2NDRjNDZjODY2OTFjYThkMDA5MzU1NzY4ZmI1ODkxNmRmNzliMS4uZmM4NTFk
YTdjZmE4YzQzMzJmNjg1ZWEyOTEyMmUzN2Q0ZGI3YWFhMiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuaApAQCAtMSw1
ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDgsIDIwMDksIDIwMTAgQXBwbGUgSW5j
LiBBbGwgUmlnaHRzIFJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUg
SW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CkBAIC00OSw4ICs0OSw5IEBAIGVudW0gQXBwbGljYXRpb25DYWNoZVVwZGF0ZU9wdGlvbiB7CiAg
ICAgQXBwbGljYXRpb25DYWNoZVVwZGF0ZVdpdGhvdXRCcm93c2luZ0NvbnRleHQKIH07CiAKLWNs
YXNzIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCA6IFJlc291cmNlSGFuZGxlQ2xpZW50IHsKLSAgICBX
VEZfTUFLRV9OT05DT1BZQUJMRShBcHBsaWNhdGlvbkNhY2hlR3JvdXApOyBXVEZfTUFLRV9GQVNU
X0FMTE9DQVRFRDsKK2NsYXNzIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCBmaW5hbCA6IHByaXZhdGUg
UmVzb3VyY2VIYW5kbGVDbGllbnQgeworICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKEFwcGxpY2F0
aW9uQ2FjaGVHcm91cCk7CisgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CiBwdWJsaWM6CiAg
ICAgZXhwbGljaXQgQXBwbGljYXRpb25DYWNoZUdyb3VwKFJlZjxBcHBsaWNhdGlvbkNhY2hlU3Rv
cmFnZT4mJiwgY29uc3QgVVJMJiBtYW5pZmVzdFVSTCk7CiAgICAgdmlydHVhbCB+QXBwbGljYXRp
b25DYWNoZUdyb3VwKCk7CkBAIC02MCw4ICs2MSw4IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgQXBw
bGljYXRpb25DYWNoZSogY2FjaGVGb3JNYWluUmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
LCBEb2N1bWVudExvYWRlciopOwogICAgIHN0YXRpYyBBcHBsaWNhdGlvbkNhY2hlKiBmYWxsYmFj
a0NhY2hlRm9yTWFpblJlcXVlc3QoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgRG9jdW1lbnRMb2Fk
ZXIqKTsKICAgICAKLSAgICBzdGF0aWMgdm9pZCBzZWxlY3RDYWNoZShGcmFtZSosIGNvbnN0IFVS
TCYgbWFuaWZlc3RVUkwpOwotICAgIHN0YXRpYyB2b2lkIHNlbGVjdENhY2hlV2l0aG91dE1hbmlm
ZXN0VVJMKEZyYW1lKik7CisgICAgc3RhdGljIHZvaWQgc2VsZWN0Q2FjaGUoRnJhbWUmLCBjb25z
dCBVUkwmIG1hbmlmZXN0VVJMKTsKKyAgICBzdGF0aWMgdm9pZCBzZWxlY3RDYWNoZVdpdGhvdXRN
YW5pZmVzdFVSTChGcmFtZSYpOwogCiAgICAgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UmIHN0b3Jh
Z2UoKSB7IHJldHVybiBtX3N0b3JhZ2U7IH0KICAgICBjb25zdCBVUkwmIG1hbmlmZXN0VVJMKCkg
Y29uc3QgeyByZXR1cm4gbV9tYW5pZmVzdFVSTDsgfQpAQCAtNzMsMzEgKzc0LDMxIEBAIHB1Ymxp
YzoKICAgICB1bnNpZ25lZCBzdG9yYWdlSUQoKSBjb25zdCB7IHJldHVybiBtX3N0b3JhZ2VJRDsg
fQogICAgIHZvaWQgY2xlYXJTdG9yYWdlSUQoKTsKICAgICAKLSAgICB2b2lkIHVwZGF0ZShGcmFt
ZSosIEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVPcHRpb24pOyAvLyBGSVhNRTogRnJhbWUgc2hvdWxk
IG5vdCBiZSBuZWVkZWQgd2hlbiB1cGRhdGluZyB3aXRob3V0IGJyb3dzaW5nIGNvbnRleHQuCi0g
ICAgdm9pZCBjYWNoZURlc3Ryb3llZChBcHBsaWNhdGlvbkNhY2hlKik7CisgICAgdm9pZCB1cGRh
dGUoRnJhbWUmLCBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlT3B0aW9uKTsgLy8gRklYTUU6IEZyYW1l
IHNob3VsZCBub3QgYmUgbmVlZGVkIHdoZW4gdXBkYXRpbmcgd2l0aG91dCBicm93c2luZyBjb250
ZXh0LgorICAgIHZvaWQgY2FjaGVEZXN0cm95ZWQoQXBwbGljYXRpb25DYWNoZSYpOwogICAgIAot
ICAgIHZvaWQgYWJvcnQoRnJhbWUqKTsKKyAgICB2b2lkIGFib3J0KEZyYW1lJik7CiAKLSAgICBi
b29sIGNhY2hlSXNDb21wbGV0ZShBcHBsaWNhdGlvbkNhY2hlKiBjYWNoZSkgeyByZXR1cm4gbV9j
YWNoZXMuY29udGFpbnMoY2FjaGUpOyB9CisgICAgYm9vbCBjYWNoZUlzQ29tcGxldGUoQXBwbGlj
YXRpb25DYWNoZSYgY2FjaGUpIHsgcmV0dXJuIG1fY2FjaGVzLmNvbnRhaW5zKCZjYWNoZSk7IH0K
IAotICAgIHZvaWQgc3RvcExvYWRpbmdJbkZyYW1lKEZyYW1lKik7CisgICAgdm9pZCBzdG9wTG9h
ZGluZ0luRnJhbWUoRnJhbWUmKTsKIAogICAgIEFwcGxpY2F0aW9uQ2FjaGUqIG5ld2VzdENhY2hl
KCkgY29uc3QgeyByZXR1cm4gbV9uZXdlc3RDYWNoZS5nZXQoKTsgfQotICAgIHZvaWQgc2V0TmV3
ZXN0Q2FjaGUoUGFzc1JlZlB0cjxBcHBsaWNhdGlvbkNhY2hlPik7CisgICAgdm9pZCBzZXROZXdl
c3RDYWNoZShSZWY8QXBwbGljYXRpb25DYWNoZT4mJik7CiAKICAgICB2b2lkIG1ha2VPYnNvbGV0
ZSgpOwogICAgIGJvb2wgaXNPYnNvbGV0ZSgpIGNvbnN0IHsgcmV0dXJuIG1faXNPYnNvbGV0ZTsg
fQogCi0gICAgdm9pZCBmaW5pc2hlZExvYWRpbmdNYWluUmVzb3VyY2UoRG9jdW1lbnRMb2FkZXIq
KTsKLSAgICB2b2lkIGZhaWxlZExvYWRpbmdNYWluUmVzb3VyY2UoRG9jdW1lbnRMb2FkZXIqKTsK
KyAgICB2b2lkIGZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZShEb2N1bWVudExvYWRlciYpOwor
ICAgIHZvaWQgZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZShEb2N1bWVudExvYWRlciYpOwogCi0g
ICAgdm9pZCBkaXNhc3NvY2lhdGVEb2N1bWVudExvYWRlcihEb2N1bWVudExvYWRlciopOworICAg
IHZvaWQgZGlzYXNzb2NpYXRlRG9jdW1lbnRMb2FkZXIoRG9jdW1lbnRMb2FkZXImKTsKIAogcHJp
dmF0ZToKLSAgICBzdGF0aWMgdm9pZCBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVI
b3N0OjpFdmVudElEIGlkLCBjb25zdCBIYXNoU2V0PERvY3VtZW50TG9hZGVyKj4mIHNldCkgeyBw
b3N0TGlzdGVuZXJUYXNrKGlkLCAwLCAwLCBzZXQpOyB9Ci0gICAgc3RhdGljIHZvaWQgcG9zdExp
c3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RXZlbnRJRCBpZCwgRG9jdW1lbnRMb2Fk
ZXIqIGxvYWRlcikgIHsgcG9zdExpc3RlbmVyVGFzayhpZCwgMCwgMCwgbG9hZGVyKTsgfQotICAg
IHN0YXRpYyB2b2lkIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkV2ZW50
SUQsIGludCBwcm9ncmVzc1RvdGFsLCBpbnQgcHJvZ3Jlc3NEb25lLCBjb25zdCBIYXNoU2V0PERv
Y3VtZW50TG9hZGVyKj4mKTsKLSAgICBzdGF0aWMgdm9pZCBwb3N0TGlzdGVuZXJUYXNrKEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0OjpFdmVudElELCBpbnQgcHJvZ3Jlc3NUb3RhbCwgaW50IHByb2dyZXNz
RG9uZSwgRG9jdW1lbnRMb2FkZXIqKTsKKyAgICBzdGF0aWMgdm9pZCBwb3N0TGlzdGVuZXJUYXNr
KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBjb25zdCBIYXNoU2V0PERvY3VtZW50TG9h
ZGVyKj4mIHNldCkgeyBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50VHlwZSwgMCwgMCwgc2V0KTsgfQor
ICAgIHN0YXRpYyB2b2lkIHBvc3RMaXN0ZW5lclRhc2soY29uc3QgQXRvbWljU3RyaW5nJiBldmVu
dFR5cGUsIERvY3VtZW50TG9hZGVyJiBsb2FkZXIpICB7IHBvc3RMaXN0ZW5lclRhc2soZXZlbnRU
eXBlLCAwLCAwLCBsb2FkZXIpOyB9CisgICAgc3RhdGljIHZvaWQgcG9zdExpc3RlbmVyVGFzayhj
b25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgaW50IHByb2dyZXNzVG90YWwsIGludCBwcm9n
cmVzc0RvbmUsIGNvbnN0IEhhc2hTZXQ8RG9jdW1lbnRMb2FkZXIqPiYpOworICAgIHN0YXRpYyB2
b2lkIHBvc3RMaXN0ZW5lclRhc2soY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGludCBw
cm9ncmVzc1RvdGFsLCBpbnQgcHJvZ3Jlc3NEb25lLCBEb2N1bWVudExvYWRlciYpOwogCiAgICAg
dm9pZCBzY2hlZHVsZVJlYWNoZWRNYXhBcHBDYWNoZVNpemVDYWxsYmFjaygpOwogCkBAIC0xMzUs
NyArMTM2LDcgQEAgcHJpdmF0ZToKIAogICAgIFVSTCBtX21hbmlmZXN0VVJMOwogICAgIFJlZlB0
cjxTZWN1cml0eU9yaWdpbj4gbV9vcmlnaW47Ci0gICAgVXBkYXRlU3RhdHVzIG1fdXBkYXRlU3Rh
dHVzOworICAgIFVwZGF0ZVN0YXR1cyBtX3VwZGF0ZVN0YXR1cyB7IElkbGUgfTsKICAgICAKICAg
ICAvLyBUaGlzIGlzIHRoZSBuZXdlc3QgY29tcGxldGUgY2FjaGUgaW4gdGhlIGdyb3VwLgogICAg
IFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hlPiBtX25ld2VzdENhY2hlOwpAQCAtMTUwLDI2ICsxNTEs
MjUgQEAgcHJpdmF0ZToKICAgICAvLyBMaXN0IG9mIHBlbmRpbmcgbWFzdGVyIGVudHJpZXMsIHVz
ZWQgZHVyaW5nIHRoZSB1cGRhdGUgcHJvY2VzcyB0byBlbnN1cmUgdGhhdCBuZXcgbWFzdGVyIGVu
dHJpZXMgYXJlIGNhY2hlZC4KICAgICBIYXNoU2V0PERvY3VtZW50TG9hZGVyKj4gbV9wZW5kaW5n
TWFzdGVyUmVzb3VyY2VMb2FkZXJzOwogICAgIC8vIEhvdyBtYW55IG9mIHRoZSBhYm92ZSBwZW5k
aW5nIG1hc3RlciBlbnRyaWVzIGhhdmUgbm90IHlldCBmaW5pc2hlZCBkb3dubG9hZGluZy4KLSAg
ICBpbnQgbV9kb3dubG9hZGluZ1BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnNDb3VudDsKKyAg
ICBpbnQgbV9kb3dubG9hZGluZ1BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnNDb3VudCB7IDAg
fTsKICAgICAKICAgICAvLyBUaGVzZSBhcmUgYWxsIHRoZSBkb2N1bWVudCBsb2FkZXJzIHRoYXQg
YXJlIGFzc29jaWF0ZWQgd2l0aCBhIGNhY2hlIGluIHRoaXMgZ3JvdXAuCiAgICAgSGFzaFNldDxE
b2N1bWVudExvYWRlcio+IG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVyczsKIAogICAgIC8vIFRo
ZSBVUkxzIGFuZCB0eXBlcyBvZiBwZW5kaW5nIGNhY2hlIGVudHJpZXMuCi0gICAgdHlwZWRlZiBI
YXNoTWFwPFN0cmluZywgdW5zaWduZWQ+IEVudHJ5TWFwOwotICAgIEVudHJ5TWFwIG1fcGVuZGlu
Z0VudHJpZXM7CisgICAgSGFzaE1hcDxTdHJpbmcsIHVuc2lnbmVkPiBtX3BlbmRpbmdFbnRyaWVz
OwogICAgIAogICAgIC8vIFRoZSB0b3RhbCBudW1iZXIgb2YgaXRlbXMgdG8gYmUgcHJvY2Vzc2Vk
IHRvIHVwZGF0ZSB0aGUgY2FjaGUgZ3JvdXAgYW5kIHRoZSBudW1iZXIgdGhhdCBoYXZlIGJlZW4g
ZG9uZS4KLSAgICBpbnQgbV9wcm9ncmVzc1RvdGFsOwotICAgIGludCBtX3Byb2dyZXNzRG9uZTsK
KyAgICBpbnQgbV9wcm9ncmVzc1RvdGFsIHsgMCB9OworICAgIGludCBtX3Byb2dyZXNzRG9uZSB7
IDAgfTsKIAogICAgIC8vIEZyYW1lIHVzZWQgZm9yIGZldGNoaW5nIHJlc291cmNlcyB3aGVuIHVw
ZGF0aW5nLgogICAgIC8vIEZJWE1FOiBBbiB1cGRhdGUgc3RhcnRlZCBieSBhIHBhcnRpY3VsYXIg
ZnJhbWUgc2hvdWxkIG5vdCBzdG9wIGlmIGl0IGlzIGRlc3Ryb3llZCwgYnV0IHRoZXJlIGFyZSBv
dGhlciBmcmFtZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBzYW1lIGNhY2hlIGdyb3VwLgotICAgIEZy
YW1lKiBtX2ZyYW1lOworICAgIEZyYW1lKiBtX2ZyYW1lIHsgbnVsbHB0ciB9OwogICAKICAgICAv
LyBBbiBvYnNvbGV0ZSBjYWNoZSBncm91cCBpcyBuZXZlciBzdG9yZWQsIGJ1dCB0aGUgb3Bwb3Np
dGUgaXMgbm90IHRydWUgLSBzdG9yaW5nIG1heSBmYWlsIGZvciBtdWx0aXBsZSByZWFzb25zLCBz
dWNoIGFzIGV4Y2VlZGluZyBkaXNrIHF1b3RhLgotICAgIHVuc2lnbmVkIG1fc3RvcmFnZUlEOwot
ICAgIGJvb2wgbV9pc09ic29sZXRlOworICAgIHVuc2lnbmVkIG1fc3RvcmFnZUlEIHsgMCB9Owor
ICAgIGJvb2wgbV9pc09ic29sZXRlIHsgZmFsc2UgfTsKIAogICAgIC8vIER1cmluZyB1cGRhdGUs
IHRoaXMgaXMgdXNlZCB0byBoYW5kbGUgYXN5bmNocm9ub3VzbHkgYXJyaXZpbmcgcmVzdWx0cy4K
ICAgICBlbnVtIENvbXBsZXRpb25UeXBlIHsKQEAgLTE3OCwxMiArMTc4LDEyIEBAIHByaXZhdGU6
CiAgICAgICAgIEZhaWx1cmUsCiAgICAgICAgIENvbXBsZXRlZAogICAgIH07Ci0gICAgQ29tcGxl
dGlvblR5cGUgbV9jb21wbGV0aW9uVHlwZTsKKyAgICBDb21wbGV0aW9uVHlwZSBtX2NvbXBsZXRp
b25UeXBlIHsgTm9uZSB9OwogCiAgICAgLy8gVGhpcyBmbGFnIGlzIHNldCBpbW1lZGlhdGVseSBh
ZnRlciB0aGUgQ2hyb21lQ2xpZW50OjpyZWFjaGVkTWF4QXBwQ2FjaGVTaXplKCkgY2FsbGJhY2sg
aXMgaW52b2tlZCBhcyBhIHJlc3VsdCBvZiB0aGUgc3RvcmFnZSBsYXllciBmYWlsaW5nIHRvIHNh
dmUgYSBjYWNoZQogICAgIC8vIGR1ZSB0byByZWFjaGluZyB0aGUgbWF4aW11bSBzaXplIG9mIHRo
ZSBhcHBsaWNhdGlvbiBjYWNoZSBkYXRhYmFzZSBmaWxlLiBUaGlzIGZsYWcgaXMgdXNlZCBieSBB
cHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNoZWNrSWZMb2FkSXNDb21wbGV0ZSgpIHRvIGRlY2lkZQog
ICAgIC8vIHRoZSBjb3Vyc2Ugb2YgYWN0aW9uIGluIGNhc2Ugb2YgdGhpcyBmYWlsdXJlIChpLmUu
IGNhbGwgdGhlIENocm9tZUNsaWVudCBjYWxsYmFjayBvciBydW4gdGhlIGZhaWx1cmUgc3RlcHMp
LgotICAgIGJvb2wgbV9jYWxsZWRSZWFjaGVkTWF4QXBwQ2FjaGVTaXplOworICAgIGJvb2wgbV9j
YWxsZWRSZWFjaGVkTWF4QXBwQ2FjaGVTaXplIHsgZmFsc2UgfTsKICAgICAKICAgICBSZWZQdHI8
UmVzb3VyY2VIYW5kbGU+IG1fY3VycmVudEhhbmRsZTsKICAgICBSZWZQdHI8QXBwbGljYXRpb25D
YWNoZVJlc291cmNlPiBtX2N1cnJlbnRSZXNvdXJjZTsKQEAgLTE5Myw3ICsxOTMsNyBAQCBwcml2
YXRlOgogICAgIFJlZlB0cjxSZXNvdXJjZUhhbmRsZT4gbV9tYW5pZmVzdEhhbmRsZTsKIAogICAg
IGludDY0X3QgbV9hdmFpbGFibGVTcGFjZUluUXVvdGE7Ci0gICAgYm9vbCBtX29yaWdpblF1b3Rh
RXhjZWVkZWRQcmV2aW91c2x5OworICAgIGJvb2wgbV9vcmlnaW5RdW90YUV4Y2VlZGVkUHJldmlv
dXNseSB7IGZhbHNlIH07CiAKICAgICBmcmllbmQgY2xhc3MgQ2hyb21lQ2xpZW50Q2FsbGJhY2tU
aW1lcjsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBw
bGljYXRpb25DYWNoZUhvc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0Fw
cGxpY2F0aW9uQ2FjaGVIb3N0LmNwcAppbmRleCA3ZjUwMDRjOTg5Zjk5ZTNlZTc1ZWY1ZDlmYzY1
OWZlYTVkNGVjODNiLi45MTE0Njk5Yzg3ZmY4NWMyMTNlMGRkYWEzOGUzNjg2YzU1ZGJiYThhIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNo
ZUhvc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlv
bkNhY2hlSG9zdC5jcHAKQEAgLTMyLDYgKzMyLDcgQEAKICNpbmNsdWRlICJDb250ZW50U2VjdXJp
dHlQb2xpY3kuaCIKICNpbmNsdWRlICJEb2N1bWVudExvYWRlci5oIgogI2luY2x1ZGUgIkRPTUFw
cGxpY2F0aW9uQ2FjaGUuaCIKKyNpbmNsdWRlICJFdmVudE5hbWVzLmgiCiAjaW5jbHVkZSAiRmls
ZVN5c3RlbS5oIgogI2luY2x1ZGUgIkZyYW1lLmgiCiAjaW5jbHVkZSAiRnJhbWVMb2FkZXIuaCIK
QEAgLTQ4LDMxICs0OSwyOSBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBBcHBsaWNhdGlvbkNh
Y2hlSG9zdDo6QXBwbGljYXRpb25DYWNoZUhvc3QoRG9jdW1lbnRMb2FkZXImIGRvY3VtZW50TG9h
ZGVyKQotICAgIDogbV9kb21BcHBsaWNhdGlvbkNhY2hlKG51bGxwdHIpCi0gICAgLCBtX2RvY3Vt
ZW50TG9hZGVyKGRvY3VtZW50TG9hZGVyKQotICAgICwgbV9kZWZlcnNFdmVudHModHJ1ZSkKLSAg
ICAsIG1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKG51bGxwdHIpCisgICAgOiBtX2Rv
Y3VtZW50TG9hZGVyKGRvY3VtZW50TG9hZGVyKQogewogfQogCiBBcHBsaWNhdGlvbkNhY2hlSG9z
dDo6fkFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkKIHsKICAgICBBU1NFUlQoIW1fYXBwbGljYXRpb25D
YWNoZSB8fCAhbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAgfHwgbV9hcHBsaWNhdGlv
bkNhY2hlLT5ncm91cCgpID09IG1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKTsKLQog
ICAgIGlmIChtX2FwcGxpY2F0aW9uQ2FjaGUpCi0gICAgICAgIG1fYXBwbGljYXRpb25DYWNoZS0+
Z3JvdXAoKS0+ZGlzYXNzb2NpYXRlRG9jdW1lbnRMb2FkZXIoJm1fZG9jdW1lbnRMb2FkZXIpOwor
ICAgICAgICBtX2FwcGxpY2F0aW9uQ2FjaGUtPmdyb3VwKCktPmRpc2Fzc29jaWF0ZURvY3VtZW50
TG9hZGVyKG1fZG9jdW1lbnRMb2FkZXIpOwogICAgIGVsc2UgaWYgKG1fY2FuZGlkYXRlQXBwbGlj
YXRpb25DYWNoZUdyb3VwKQotICAgICAgICBtX2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91
cC0+ZGlzYXNzb2NpYXRlRG9jdW1lbnRMb2FkZXIoJm1fZG9jdW1lbnRMb2FkZXIpOworICAgICAg
ICBtX2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cC0+ZGlzYXNzb2NpYXRlRG9jdW1lbnRM
b2FkZXIobV9kb2N1bWVudExvYWRlcik7CiB9CiAKIHZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6
OnNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0KCkKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlR3Jv
dXA6OnNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0VVJMKG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUo
KSk7CisgICAgQVNTRVJUKG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUoKSk7CisgICAgQXBwbGljYXRp
b25DYWNoZUdyb3VwOjpzZWxlY3RDYWNoZVdpdGhvdXRNYW5pZmVzdFVSTCgqbV9kb2N1bWVudExv
YWRlci5mcmFtZSgpKTsKIH0KIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c2VsZWN0Q2Fj
aGVXaXRoTWFuaWZlc3QoY29uc3QgVVJMJiBtYW5pZmVzdFVSTCkKIHsKLSAgICBBcHBsaWNhdGlv
bkNhY2hlR3JvdXA6OnNlbGVjdENhY2hlKG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUoKSwgbWFuaWZl
c3RVUkwpOworICAgIEFTU0VSVChtX2RvY3VtZW50TG9hZGVyLmZyYW1lKCkpOworICAgIEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cDo6c2VsZWN0Q2FjaGUoKm1fZG9jdW1lbnRMb2FkZXIuZnJhbWUoKSwg
bWFuaWZlc3RVUkwpOwogfQogCiB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjptYXliZUxvYWRN
YWluUmVzb3VyY2UoUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBTdWJzdGl0dXRlRGF0YSYgc3Vi
c3RpdHV0ZURhdGEpCkBAIC0xNDAsMTIgKzEzOSwxMSBAQCBib29sIEFwcGxpY2F0aW9uQ2FjaGVI
b3N0OjptYXliZUxvYWRGYWxsYmFja0Zvck1haW5FcnJvcihjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
CiAKIHZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6Om1haW5SZXNvdXJjZURhdGFSZWNlaXZlZChj
b25zdCBjaGFyKiwgaW50LCBsb25nIGxvbmcsIGJvb2wpCiB7Ci0gICAgLy8gVGhpcyBtZXRob2Qg
aXMgaGVyZSB0byBmYWNpbGl0YXRlIGFsdGVybmF0ZSBpbXBsZW1ldGF0aW9ucyBvZiB0aGlzIGlu
dGVyZmFjZSBieSB0aGUgaG9zdCBicm93c2VyLgogfQogCiB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVI
b3N0OjpmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKCkKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hl
R3JvdXAqIGdyb3VwID0gbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXA7CisgICAgYXV0
byogZ3JvdXAgPSBtX2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cDsKICAgICBpZiAoIWdy
b3VwICYmIG1fYXBwbGljYXRpb25DYWNoZSkgewogICAgICAgICBpZiAobWFpblJlc291cmNlQXBw
bGljYXRpb25DYWNoZSgpKSB7CiAgICAgICAgICAgICAvLyBFdmVuIHdoZW4gdGhlIG1haW4gcmVz
b3VyY2UgaXMgYmVpbmcgbG9hZGVkIGZyb20gYW4gYXBwbGljYXRpb24gY2FjaGUsIGxvYWRpbmcg
Y2FuIGZhaWwgaWYgYWJvcnRlZC4KQEAgLTE1NSwxNyArMTUzLDE3IEBAIHZvaWQgQXBwbGljYXRp
b25DYWNoZUhvc3Q6OmZhaWxlZExvYWRpbmdNYWluUmVzb3VyY2UoKQogICAgIH0KICAgICAKICAg
ICBpZiAoZ3JvdXApCi0gICAgICAgIGdyb3VwLT5mYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKCZt
X2RvY3VtZW50TG9hZGVyKTsKKyAgICAgICAgZ3JvdXAtPmZhaWxlZExvYWRpbmdNYWluUmVzb3Vy
Y2UobV9kb2N1bWVudExvYWRlcik7CiB9CiAKIHZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmZp
bmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZSgpCiB7Ci0gICAgQXBwbGljYXRpb25DYWNoZUdyb3Vw
KiBncm91cCA9IGNhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCgpOworICAgIGF1dG8qIGdy
b3VwID0gY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKCk7CiAgICAgaWYgKCFncm91cCAm
JiBhcHBsaWNhdGlvbkNhY2hlKCkgJiYgIW1haW5SZXNvdXJjZUFwcGxpY2F0aW9uQ2FjaGUoKSkK
ICAgICAgICAgZ3JvdXAgPSBhcHBsaWNhdGlvbkNhY2hlKCktPmdyb3VwKCk7CiAgICAgCiAgICAg
aWYgKGdyb3VwKQotICAgICAgICBncm91cC0+ZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKCZt
X2RvY3VtZW50TG9hZGVyKTsKKyAgICAgICAgZ3JvdXAtPmZpbmlzaGVkTG9hZGluZ01haW5SZXNv
dXJjZShtX2RvY3VtZW50TG9hZGVyKTsKIH0KIAogYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6
bWF5YmVMb2FkUmVzb3VyY2UoUmVzb3VyY2VMb2FkZXImIGxvYWRlciwgY29uc3QgUmVzb3VyY2VS
ZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBVUkwmIG9yaWdpbmFsVVJMKQpAQCAtMTg2LDE3ICsxODQs
MTkgQEAgYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWF5YmVMb2FkUmVzb3VyY2UoUmVzb3Vy
Y2VMb2FkZXImIGxvYWRlciwgY29uc3QgUmVzb3UKIAogYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9z
dDo6bWF5YmVMb2FkRmFsbGJhY2tGb3JSZWRpcmVjdChSZXNvdXJjZUxvYWRlciogcmVzb3VyY2VM
b2FkZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYg
cmVkaXJlY3RSZXNwb25zZSkKIHsKLSAgICBpZiAoIXJlZGlyZWN0UmVzcG9uc2UuaXNOdWxsKCkg
JiYgIXByb3RvY29sSG9zdEFuZFBvcnRBcmVFcXVhbChyZXF1ZXN0LnVybCgpLCByZWRpcmVjdFJl
c3BvbnNlLnVybCgpKSkKKyAgICBpZiAoIXJlZGlyZWN0UmVzcG9uc2UuaXNOdWxsKCkgJiYgIXBy
b3RvY29sSG9zdEFuZFBvcnRBcmVFcXVhbChyZXF1ZXN0LnVybCgpLCByZWRpcmVjdFJlc3BvbnNl
LnVybCgpKSkgewogICAgICAgICBpZiAoc2NoZWR1bGVMb2FkRmFsbGJhY2tSZXNvdXJjZUZyb21B
cHBsaWNhdGlvbkNhY2hlKHJlc291cmNlTG9hZGVyKSkKICAgICAgICAgICAgIHJldHVybiB0cnVl
OworICAgIH0KICAgICByZXR1cm4gZmFsc2U7CiB9CiAKIGJvb2wgQXBwbGljYXRpb25DYWNoZUhv
c3Q6Om1heWJlTG9hZEZhbGxiYWNrRm9yUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXIqIHJlc291cmNl
TG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKLSAgICBpZiAocmVz
cG9uc2UuaHR0cFN0YXR1c0NvZGUoKSAvIDEwMCA9PSA0IHx8IHJlc3BvbnNlLmh0dHBTdGF0dXND
b2RlKCkgLyAxMDAgPT0gNSkKKyAgICBpZiAocmVzcG9uc2UuaHR0cFN0YXR1c0NvZGUoKSAvIDEw
MCA9PSA0IHx8IHJlc3BvbnNlLmh0dHBTdGF0dXNDb2RlKCkgLyAxMDAgPT0gNSkgewogICAgICAg
ICBpZiAoc2NoZWR1bGVMb2FkRmFsbGJhY2tSZXNvdXJjZUZyb21BcHBsaWNhdGlvbkNhY2hlKHJl
c291cmNlTG9hZGVyKSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KICAgICByZXR1
cm4gZmFsc2U7CiB9CiAKQEAgLTIyMCwxMSArMjIwLDkgQEAgVVJMIEFwcGxpY2F0aW9uQ2FjaGVI
b3N0OjpjcmVhdGVGaWxlVVJMKGNvbnN0IFN0cmluZyYgcGF0aCkKICAgICAvLyBhcHAgY2FjaGUg
bWVkaWEgZmlsZXMgYXJlIGFsd2F5cyBjcmVhdGVkIHdpdGggZW5jb2RlRm9yRmlsZU5hbWUoY3Jl
YXRlQ2Fub25pY2FsVVVJRFN0cmluZygpKS4KIAogI2lmIFVTRShDRikgJiYgUExBVEZPUk0oV0lO
KQotICAgIFJldGFpblB0cjxDRlVSTFJlZj4gY2ZVUkwgPSBhZG9wdENGKENGVVJMQ3JlYXRlV2l0
aEZpbGVTeXN0ZW1QYXRoKDAsIHBhdGguY3JlYXRlQ0ZTdHJpbmcoKS5nZXQoKSwga0NGVVJMV2lu
ZG93c1BhdGhTdHlsZSwgZmFsc2UpKTsKLSAgICBVUkwgdXJsKGNmVVJMLmdldCgpKTsKKyAgICBV
UkwgdXJsKGFkb3B0Q0YoQ0ZVUkxDcmVhdGVXaXRoRmlsZVN5c3RlbVBhdGgoMCwgcGF0aC5jcmVh
dGVDRlN0cmluZygpLmdldCgpLCBrQ0ZVUkxXaW5kb3dzUGF0aFN0eWxlLCBmYWxzZSkpLmdldCgp
KTsKICNlbHNlCiAgICAgVVJMIHVybDsKLQogICAgIHVybC5zZXRQcm90b2NvbChBU0NJSUxpdGVy
YWwoImZpbGUiKSk7CiAgICAgdXJsLnNldFBhdGgocGF0aCk7CiAjZW5kaWYKQEAgLTI0Niw3ICsy
NDQsNyBAQCBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjptYXliZUxvYWRTeW5jaHJvbm91c2x5
KFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgUmVzbwogICAgIGlmICghc2hvdWxkTG9hZFJlc291
cmNlRnJvbUFwcGxpY2F0aW9uQ2FjaGUocmVxdWVzdCwgcmVzb3VyY2UpKQogICAgICAgICByZXR1
cm4gZmFsc2U7CiAKLSAgICBSZWZQdHI8U2hhcmVkQnVmZmVyPiByZXNwb25zZURhdGEgPSByZXNv
dXJjZSA/IGJ1ZmZlckZyb21SZXNvdXJjZSgqcmVzb3VyY2UpIDogbnVsbHB0cjsKKyAgICBhdXRv
IHJlc3BvbnNlRGF0YSA9IHJlc291cmNlID8gYnVmZmVyRnJvbVJlc291cmNlKCpyZXNvdXJjZSkg
OiBudWxscHRyOwogICAgIGlmICghcmVzcG9uc2VEYXRhKSB7CiAgICAgICAgIGVycm9yID0gbV9k
b2N1bWVudExvYWRlci5mcmFtZUxvYWRlcigpLT5jbGllbnQoKS5jYW5ub3RTaG93VVJMRXJyb3Io
cmVxdWVzdCk7CiAgICAgICAgIHJldHVybiB0cnVlOwpAQCAtMjg2LDIwICsyODQsMjEgQEAgdm9p
ZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c2V0RE9NQXBwbGljYXRpb25DYWNoZShET01BcHBsaWNh
dGlvbkNhY2hlKiBkb21BcHBsaWMKICAgICBtX2RvbUFwcGxpY2F0aW9uQ2FjaGUgPSBkb21BcHBs
aWNhdGlvbkNhY2hlOwogfQogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojpub3RpZnlET01B
cHBsaWNhdGlvbkNhY2hlKEV2ZW50SUQgaWQsIGludCB0b3RhbCwgaW50IGRvbmUpCit2b2lkIEFw
cGxpY2F0aW9uQ2FjaGVIb3N0Ojpub3RpZnlET01BcHBsaWNhdGlvbkNhY2hlKGNvbnN0IEF0b21p
Y1N0cmluZyYgZXZlbnRUeXBlLCBpbnQgdG90YWwsIGludCBkb25lKQogewotICAgIGlmIChpZCAh
PSBQUk9HUkVTU19FVkVOVCkKKyAgICBpZiAoZXZlbnRUeXBlICE9IGV2ZW50TmFtZXMoKS5wcm9n
cmVzc0V2ZW50KQogICAgICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OnVwZGF0ZUFwcGxp
Y2F0aW9uQ2FjaGVTdGF0dXMobV9kb2N1bWVudExvYWRlci5mcmFtZSgpKTsKIAogICAgIGlmICht
X2RlZmVyc0V2ZW50cykgewogICAgICAgICAvLyBFdmVudCBkaXNwYXRjaGluZyBpcyBkZWZlcnJl
ZCB1bnRpbCBkb2N1bWVudC5vbmxvYWQgaGFzIGZpcmVkLgotICAgICAgICBtX2RlZmVycmVkRXZl
bnRzLmFwcGVuZChEZWZlcnJlZEV2ZW50KGlkLCB0b3RhbCwgZG9uZSkpOworICAgICAgICBtX2Rl
ZmVycmVkRXZlbnRzLmFwcGVuZCh7IGV2ZW50VHlwZSwgdG90YWwsIGRvbmUgfSk7CiAgICAgICAg
IHJldHVybjsKICAgICB9Ci0gICAgZGlzcGF0Y2hET01FdmVudChpZCwgdG90YWwsIGRvbmUpOwor
CisgICAgZGlzcGF0Y2hET01FdmVudChldmVudFR5cGUsIHRvdGFsLCBkb25lKTsKIH0KIAotdm9p
ZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c3RvcExvYWRpbmdJbkZyYW1lKEZyYW1lKiBmcmFtZSkK
K3ZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OnN0b3BMb2FkaW5nSW5GcmFtZShGcmFtZSYgZnJh
bWUpCiB7CiAgICAgQVNTRVJUKCFtX2FwcGxpY2F0aW9uQ2FjaGUgfHwgIW1fY2FuZGlkYXRlQXBw
bGljYXRpb25DYWNoZUdyb3VwIHx8IG1fYXBwbGljYXRpb25DYWNoZS0+Z3JvdXAoKSA9PSBtX2Nh
bmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCk7CiAKQEAgLTMxMiw1MyArMzExLDY4IEBAIHZv
aWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OnN0b3BMb2FkaW5nSW5GcmFtZShGcmFtZSogZnJhbWUp
CiB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpzdG9wRGVmZXJyaW5nRXZlbnRzKCkKIHsKICAg
ICBSZWY8RG9jdW1lbnRMb2FkZXI+IHByb3RlY3QobV9kb2N1bWVudExvYWRlcik7Ci0gICAgZm9y
IChhdXRvJiBldmVudCA6IG1fZGVmZXJyZWRFdmVudHMpCi0gICAgICAgIGRpc3BhdGNoRE9NRXZl
bnQoZXZlbnQuZXZlbnRJRCwgZXZlbnQucHJvZ3Jlc3NUb3RhbCwgZXZlbnQucHJvZ3Jlc3NEb25l
KTsKKworICAgIC8vIE5vdGUsIGRvIG5vdCBjYWNoZSB0aGUgc2l6ZSBpbiBhIGxvY2FsIHZhcmlh
YmxlLgorICAgIC8vIFRoaXMgY29kZSBuZWVkcyB0byBwcm9wZXJseSBoYW5kbGUgdGhlIGNhc2Ug
d2hlcmUgbW9yZSBldmVudHMgYXJlIGFkZGVkIHRvCisgICAgLy8gbV9kZWZlcnJlZEV2ZW50cyB3
aGlsZSBpdGVyYXRpbmcgaXQuIFRoaXMgaXMgd2h5IHdlIGRvbid0IHVzZSBhIG1vZGVybiBmb3Ig
bG9vcC4KKyAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1fZGVmZXJyZWRFdmVudHMuc2l6ZSgp
OyArK2kpIHsKKyAgICAgICAgYXV0byYgZXZlbnQgPSBtX2RlZmVycmVkRXZlbnRzW2ldOworICAg
ICAgICBkaXNwYXRjaERPTUV2ZW50KGV2ZW50LmV2ZW50VHlwZSwgZXZlbnQucHJvZ3Jlc3NUb3Rh
bCwgZXZlbnQucHJvZ3Jlc3NEb25lKTsKKyAgICB9CisKICAgICBtX2RlZmVycmVkRXZlbnRzLmNs
ZWFyKCk7CiAgICAgbV9kZWZlcnNFdmVudHMgPSBmYWxzZTsKIH0KIAotdm9pZCBBcHBsaWNhdGlv
bkNhY2hlSG9zdDo6ZmlsbFJlc291cmNlTGlzdChSZXNvdXJjZUluZm9MaXN0KiByZXNvdXJjZXMp
CitWZWN0b3I8QXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mbz4gQXBwbGljYXRpb25D
YWNoZUhvc3Q6OnJlc291cmNlTGlzdCgpCiB7Ci0gICAgQXBwbGljYXRpb25DYWNoZSogY2FjaGUg
PSBhcHBsaWNhdGlvbkNhY2hlKCk7CisgICAgVmVjdG9yPFJlc291cmNlSW5mbz4gcmVzdWx0Owor
CisgICAgYXV0byogY2FjaGUgPSBhcHBsaWNhdGlvbkNhY2hlKCk7CiAgICAgaWYgKCFjYWNoZSB8
fCAhY2FjaGUtPmlzQ29tcGxldGUoKSkKLSAgICAgICAgcmV0dXJuOworICAgICAgICByZXR1cm4g
cmVzdWx0OwogCi0gICAgZm9yIChjb25zdCBhdXRvJiB1cmxBbmRSZXNvdXJjZSA6IGNhY2hlLT5y
ZXNvdXJjZXMoKSkgewotICAgICAgICBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqIHJlc291cmNl
ID0gdXJsQW5kUmVzb3VyY2UudmFsdWUuZ2V0KCk7CisgICAgcmVzdWx0LnJlc2VydmVJbml0aWFs
Q2FwYWNpdHkoY2FjaGUtPnJlc291cmNlcygpLnNpemUoKSk7CiAKLSAgICAgICAgdW5zaWduZWQg
dHlwZSA9IHJlc291cmNlLT50eXBlKCk7CisgICAgZm9yIChhdXRvJiB1cmxBbmRSZXNvdXJjZSA6
IGNhY2hlLT5yZXNvdXJjZXMoKSkgeworICAgICAgICBBU1NFUlQodXJsQW5kUmVzb3VyY2UudmFs
dWUpOworICAgICAgICBhdXRvJiByZXNvdXJjZSA9ICp1cmxBbmRSZXNvdXJjZS52YWx1ZTsKKwor
ICAgICAgICB1bnNpZ25lZCB0eXBlID0gcmVzb3VyY2UudHlwZSgpOwogICAgICAgICBib29sIGlz
TWFzdGVyID0gdHlwZSAmIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6TWFzdGVyOwogICAgICAg
ICBib29sIGlzTWFuaWZlc3QgPSB0eXBlICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYW5p
ZmVzdDsKICAgICAgICAgYm9vbCBpc0V4cGxpY2l0ID0gdHlwZSAmIEFwcGxpY2F0aW9uQ2FjaGVS
ZXNvdXJjZTo6RXhwbGljaXQ7CiAgICAgICAgIGJvb2wgaXNGb3JlaWduID0gdHlwZSAmIEFwcGxp
Y2F0aW9uQ2FjaGVSZXNvdXJjZTo6Rm9yZWlnbjsKICAgICAgICAgYm9vbCBpc0ZhbGxiYWNrID0g
dHlwZSAmIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6RmFsbGJhY2s7CiAKLSAgICAgICAgcmVz
b3VyY2VzLT5hcHBlbmQoUmVzb3VyY2VJbmZvKHJlc291cmNlLT51cmwoKSwgaXNNYXN0ZXIsIGlz
TWFuaWZlc3QsIGlzRmFsbGJhY2ssIGlzRm9yZWlnbiwgaXNFeHBsaWNpdCwgcmVzb3VyY2UtPmVz
dGltYXRlZFNpemVJblN0b3JhZ2UoKSkpOworICAgICAgICByZXN1bHQudW5jaGVja2VkQXBwZW5k
KHsgcmVzb3VyY2UudXJsKCksIGlzTWFzdGVyLCBpc01hbmlmZXN0LCBpc0ZhbGxiYWNrLCBpc0Zv
cmVpZ24sIGlzRXhwbGljaXQsIHJlc291cmNlLmVzdGltYXRlZFNpemVJblN0b3JhZ2UoKSB9KTsK
ICAgICB9CisKKyAgICByZXR1cm4gcmVzdWx0OwogfQogCiBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6
Q2FjaGVJbmZvIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjphcHBsaWNhdGlvbkNhY2hlSW5mbygpCiB7
Ci0gICAgQXBwbGljYXRpb25DYWNoZSogY2FjaGUgPSBhcHBsaWNhdGlvbkNhY2hlKCk7CisgICAg
YXV0byogY2FjaGUgPSBhcHBsaWNhdGlvbkNhY2hlKCk7CiAgICAgaWYgKCFjYWNoZSB8fCAhY2Fj
aGUtPmlzQ29tcGxldGUoKSkKLSAgICAgICAgcmV0dXJuIENhY2hlSW5mbyhVUkwoKSwgMCwgMCwg
MCk7CisgICAgICAgIHJldHVybiB7IHsgfSwgMCwgMCwgMCB9OwogCiAgICAgLy8gRklYTUU6IEFk
ZCAiQ3JlYXRpb24gVGltZSIgYW5kICJVcGRhdGUgVGltZSIgdG8gQXBwbGljYXRpb24gQ2FjaGVz
LgotICAgIHJldHVybiBDYWNoZUluZm8oY2FjaGUtPm1hbmlmZXN0UmVzb3VyY2UoKS0+dXJsKCks
IDAsIDAsIGNhY2hlLT5lc3RpbWF0ZWRTaXplSW5TdG9yYWdlKCkpOworICAgIHJldHVybiB7IGNh
Y2hlLT5tYW5pZmVzdFJlc291cmNlKCktPnVybCgpLCAwLCAwLCBjYWNoZS0+ZXN0aW1hdGVkU2l6
ZUluU3RvcmFnZSgpIH07CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmRpc3BhdGNo
RE9NRXZlbnQoRXZlbnRJRCBpZCwgaW50IHRvdGFsLCBpbnQgZG9uZSkKK3N0YXRpYyBSZWY8RXZl
bnQ+IGNyZWF0ZUFwcGxpY2F0aW9uQ2FjaGVFdmVudChjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50
VHlwZSwgaW50IHRvdGFsLCBpbnQgZG9uZSkKIHsKLSAgICBpZiAobV9kb21BcHBsaWNhdGlvbkNh
Y2hlKSB7Ci0gICAgICAgIGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlID0gRE9NQXBwbGlj
YXRpb25DYWNoZTo6dG9FdmVudFR5cGUoaWQpOwotICAgICAgICBSZWZQdHI8RXZlbnQ+IGV2ZW50
OwotICAgICAgICBpZiAoaWQgPT0gUFJPR1JFU1NfRVZFTlQpCi0gICAgICAgICAgICBldmVudCA9
IFByb2dyZXNzRXZlbnQ6OmNyZWF0ZShldmVudFR5cGUsIHRydWUsIGRvbmUsIHRvdGFsKTsKLSAg
ICAgICAgZWxzZQotICAgICAgICAgICAgZXZlbnQgPSBFdmVudDo6Y3JlYXRlKGV2ZW50VHlwZSwg
ZmFsc2UsIGZhbHNlKTsKLSAgICAgICAgbV9kb21BcHBsaWNhdGlvbkNhY2hlLT5kaXNwYXRjaEV2
ZW50KCpldmVudCk7Ci0gICAgfQorICAgIGlmIChldmVudFR5cGUgPT0gZXZlbnROYW1lcygpLnBy
b2dyZXNzRXZlbnQpCisgICAgICAgIHJldHVybiBQcm9ncmVzc0V2ZW50OjpjcmVhdGUoZXZlbnRU
eXBlLCB0cnVlLCBkb25lLCB0b3RhbCk7CisgICAgcmV0dXJuIEV2ZW50OjpjcmVhdGUoZXZlbnRU
eXBlLCBmYWxzZSwgZmFsc2UpOworfQorCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpkaXNw
YXRjaERPTUV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBpbnQgdG90YWwsIGlu
dCBkb25lKQoreworICAgIGlmICghbV9kb21BcHBsaWNhdGlvbkNhY2hlKQorICAgICAgICByZXR1
cm47CisgICAgbV9kb21BcHBsaWNhdGlvbkNhY2hlLT5kaXNwYXRjaEV2ZW50KGNyZWF0ZUFwcGxp
Y2F0aW9uQ2FjaGVFdmVudChldmVudFR5cGUsIHRvdGFsLCBkb25lKSk7CiB9CiAKIHZvaWQgQXBw
bGljYXRpb25DYWNoZUhvc3Q6OnNldENhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cChBcHBs
aWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwKQpAQCAtMzY3LDI1ICszODEsMjQgQEAgdm9pZCBBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6c2V0Q2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKEFwcGxp
Y2F0aW9uQ2FjaGVHcm8KICAgICBtX2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCA9IGdy
b3VwOwogfQogICAgIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c2V0QXBwbGljYXRpb25D
YWNoZShQYXNzUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+IGFwcGxpY2F0aW9uQ2FjaGUpCit2b2lk
IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpzZXRBcHBsaWNhdGlvbkNhY2hlKFJlZlB0cjxBcHBsaWNh
dGlvbkNhY2hlPiYmIGFwcGxpY2F0aW9uQ2FjaGUpCiB7CiAgICAgaWYgKG1fY2FuZGlkYXRlQXBw
bGljYXRpb25DYWNoZUdyb3VwKSB7CiAgICAgICAgIEFTU0VSVCghbV9hcHBsaWNhdGlvbkNhY2hl
KTsKICAgICAgICAgbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAgPSBudWxscHRyOwog
ICAgIH0KLQotICAgIG1fYXBwbGljYXRpb25DYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGU7CisgICAg
bV9hcHBsaWNhdGlvbkNhY2hlID0gV1RGTW92ZShhcHBsaWNhdGlvbkNhY2hlKTsKIH0KIAogYm9v
bCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c2hvdWxkTG9hZFJlc291cmNlRnJvbUFwcGxpY2F0aW9u
Q2FjaGUoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiBvcmlnaW5hbFJlcXVlc3QsIEFwcGxpY2F0aW9u
Q2FjaGVSZXNvdXJjZSomIHJlc291cmNlKQogewotICAgIEFwcGxpY2F0aW9uQ2FjaGUqIGNhY2hl
ID0gYXBwbGljYXRpb25DYWNoZSgpOworICAgIGF1dG8qIGNhY2hlID0gYXBwbGljYXRpb25DYWNo
ZSgpOwogICAgIGlmICghY2FjaGUgfHwgIWNhY2hlLT5pc0NvbXBsZXRlKCkpCiAgICAgICAgIHJl
dHVybiBmYWxzZTsKIAogICAgIFJlc291cmNlUmVxdWVzdCByZXF1ZXN0KG9yaWdpbmFsUmVxdWVz
dCk7Ci0gICAgaWYgKEZyYW1lKiBsb2FkZXJGcmFtZSA9IG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUo
KSkgewotICAgICAgICBpZiAoRG9jdW1lbnQqIGRvY3VtZW50ID0gbG9hZGVyRnJhbWUtPmRvY3Vt
ZW50KCkpCisgICAgaWYgKGF1dG8qIGxvYWRlckZyYW1lID0gbV9kb2N1bWVudExvYWRlci5mcmFt
ZSgpKSB7CisgICAgICAgIGlmIChhdXRvKiBkb2N1bWVudCA9IGxvYWRlckZyYW1lLT5kb2N1bWVu
dCgpKQogICAgICAgICAgICAgZG9jdW1lbnQtPmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT51cGdy
YWRlSW5zZWN1cmVSZXF1ZXN0SWZOZWVkZWQocmVxdWVzdCwgQ29udGVudFNlY3VyaXR5UG9saWN5
OjpJbnNlY3VyZVJlcXVlc3RUeXBlOjpMb2FkKTsKICAgICB9CiAgICAgCkBAIC00MzAsNyArNDQz
LDYgQEAgYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Z2V0QXBwbGljYXRpb25DYWNoZUZhbGxi
YWNrUmVzb3VyY2UoY29uc3QgUmVzb3VyY2VSZXEKIAogICAgIHJlc291cmNlID0gY2FjaGUtPnJl
c291cmNlRm9yVVJMKGZhbGxiYWNrVVJMKTsKICAgICBBU1NFUlQocmVzb3VyY2UpOwotCiAgICAg
cmV0dXJuIHRydWU7CiB9CiAKQEAgLTQ0NCwzMCArNDU2LDI3IEBAIGJvb2wgQXBwbGljYXRpb25D
YWNoZUhvc3Q6OnNjaGVkdWxlTG9hZEZhbGxiYWNrUmVzb3VyY2VGcm9tQXBwbGljYXRpb25DYWNo
ZShSZXNvCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIGxvYWRlci0+d2lsbFN3aXRjaFRv
U3Vic3RpdHV0ZVJlc291cmNlKCk7Ci0KICAgICBtX2RvY3VtZW50TG9hZGVyLnNjaGVkdWxlU3Vi
c3RpdHV0ZVJlc291cmNlTG9hZCgqbG9hZGVyLCAqcmVzb3VyY2UpOwotCiAgICAgcmV0dXJuIHRy
dWU7CiB9CiAKIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpTdGF0dXMgQXBwbGljYXRpb25DYWNoZUhv
c3Q6OnN0YXR1cygpIGNvbnN0CiB7Ci0gICAgQXBwbGljYXRpb25DYWNoZSogY2FjaGUgPSBhcHBs
aWNhdGlvbkNhY2hlKCk7ICAgIAorICAgIGF1dG8qIGNhY2hlID0gYXBwbGljYXRpb25DYWNoZSgp
OwogICAgIGlmICghY2FjaGUpCiAgICAgICAgIHJldHVybiBVTkNBQ0hFRDsKIAogICAgIHN3aXRj
aCAoY2FjaGUtPmdyb3VwKCktPnVwZGF0ZVN0YXR1cygpKSB7Ci0gICAgICAgIGNhc2UgQXBwbGlj
YXRpb25DYWNoZUdyb3VwOjpDaGVja2luZzoKLSAgICAgICAgICAgIHJldHVybiBDSEVDS0lORzsK
LSAgICAgICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OkRvd25sb2FkaW5nOgotICAgICAg
ICAgICAgcmV0dXJuIERPV05MT0FESU5HOwotICAgICAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVH
cm91cDo6SWRsZTogewotICAgICAgICAgICAgaWYgKGNhY2hlLT5ncm91cCgpLT5pc09ic29sZXRl
KCkpCi0gICAgICAgICAgICAgICAgcmV0dXJuIE9CU09MRVRFOwotICAgICAgICAgICAgaWYgKGNh
Y2hlICE9IGNhY2hlLT5ncm91cCgpLT5uZXdlc3RDYWNoZSgpKQotICAgICAgICAgICAgICAgIHJl
dHVybiBVUERBVEVSRUFEWTsKLSAgICAgICAgICAgIHJldHVybiBJRExFOwotICAgICAgICB9Cisg
ICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OkNoZWNraW5nOgorICAgICAgICByZXR1cm4g
Q0hFQ0tJTkc7CisgICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OkRvd25sb2FkaW5nOgor
ICAgICAgICByZXR1cm4gRE9XTkxPQURJTkc7CisgICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hlR3Jv
dXA6OklkbGU6CisgICAgICAgIGlmIChjYWNoZS0+Z3JvdXAoKS0+aXNPYnNvbGV0ZSgpKQorICAg
ICAgICAgICAgcmV0dXJuIE9CU09MRVRFOworICAgICAgICBpZiAoY2FjaGUgIT0gY2FjaGUtPmdy
b3VwKCktPm5ld2VzdENhY2hlKCkpCisgICAgICAgICAgICByZXR1cm4gVVBEQVRFUkVBRFk7Cisg
ICAgICAgIHJldHVybiBJRExFOwogICAgIH0KIAogICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwpA
QCAtNDc2LDI3ICs0ODUsMzAgQEAgQXBwbGljYXRpb25DYWNoZUhvc3Q6OlN0YXR1cyBBcHBsaWNh
dGlvbkNhY2hlSG9zdDo6c3RhdHVzKCkgY29uc3QKIAogYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9z
dDo6dXBkYXRlKCkKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlKiBjYWNoZSA9IGFwcGxpY2F0aW9u
Q2FjaGUoKTsKKyAgICBhdXRvKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKTsKICAgICBpZiAo
IWNhY2hlKQogICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgY2FjaGUtPmdyb3VwKCktPnVwZGF0
ZShtX2RvY3VtZW50TG9hZGVyLmZyYW1lKCksIEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVXaXRob3V0
QnJvd3NpbmdDb250ZXh0KTsKKyAgICBhdXRvKiBmcmFtZSA9IG1fZG9jdW1lbnRMb2FkZXIuZnJh
bWUoKTsKKyAgICBpZiAoIWZyYW1lKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgY2FjaGUt
Pmdyb3VwKCktPnVwZGF0ZSgqZnJhbWUsIEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVXaXRob3V0QnJv
d3NpbmdDb250ZXh0KTsKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAogYm9vbCBBcHBsaWNhdGlvbkNh
Y2hlSG9zdDo6c3dhcENhY2hlKCkKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlKiBjYWNoZSA9IGFw
cGxpY2F0aW9uQ2FjaGUoKTsKKyAgICBhdXRvKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKTsK
ICAgICBpZiAoIWNhY2hlKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICAvLyBJZiB0aGUg
Z3JvdXAgb2YgYXBwbGljYXRpb24gY2FjaGVzIHRvIHdoaWNoIGNhY2hlIGJlbG9uZ3MgaGFzIHRo
ZSBsaWZlY3ljbGUgc3RhdHVzIG9ic29sZXRlLCB1bmFzc29jaWF0ZSBkb2N1bWVudCBmcm9tIGNh
Y2hlLgogICAgIGlmIChjYWNoZS0+Z3JvdXAoKS0+aXNPYnNvbGV0ZSgpKSB7Ci0gICAgICAgIGNh
Y2hlLT5ncm91cCgpLT5kaXNhc3NvY2lhdGVEb2N1bWVudExvYWRlcigmbV9kb2N1bWVudExvYWRl
cik7CisgICAgICAgIGNhY2hlLT5ncm91cCgpLT5kaXNhc3NvY2lhdGVEb2N1bWVudExvYWRlciht
X2RvY3VtZW50TG9hZGVyKTsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQogCiAgICAgLy8g
SWYgdGhlcmUgaXMgbm8gbmV3ZXIgY2FjaGUsIHJhaXNlIGFuIElOVkFMSURfU1RBVEVfRVJSIGV4
Y2VwdGlvbi4KLSAgICBBcHBsaWNhdGlvbkNhY2hlKiBuZXdlc3RDYWNoZSA9IGNhY2hlLT5ncm91
cCgpLT5uZXdlc3RDYWNoZSgpOworICAgIGF1dG8qIG5ld2VzdENhY2hlID0gY2FjaGUtPmdyb3Vw
KCktPm5ld2VzdENhY2hlKCk7CiAgICAgaWYgKGNhY2hlID09IG5ld2VzdENhY2hlKQogICAgICAg
ICByZXR1cm4gZmFsc2U7CiAgICAgCkBAIC01MDgsMTQgKzUyMCwxMyBAQCBib29sIEFwcGxpY2F0
aW9uQ2FjaGVIb3N0Ojpzd2FwQ2FjaGUoKQogCiB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojph
Ym9ydCgpCiB7Ci0gICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBjYWNoZUdyb3VwID0gY2FuZGlk
YXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKCk7Ci0gICAgaWYgKGNhY2hlR3JvdXApCi0gICAgICAg
IGNhY2hlR3JvdXAtPmFib3J0KG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUoKSk7Ci0gICAgZWxzZSB7
Ci0gICAgICAgIEFwcGxpY2F0aW9uQ2FjaGUqIGNhY2hlID0gYXBwbGljYXRpb25DYWNoZSgpOwot
ICAgICAgICBpZiAoY2FjaGUpCi0gICAgICAgICAgICBjYWNoZS0+Z3JvdXAoKS0+YWJvcnQobV9k
b2N1bWVudExvYWRlci5mcmFtZSgpKTsKLSAgICB9CisgICAgYXV0byogZnJhbWUgPSBtX2RvY3Vt
ZW50TG9hZGVyLmZyYW1lKCk7CisgICAgaWYgKCFmcmFtZSkKKyAgICAgICAgcmV0dXJuOworICAg
IGlmIChhdXRvKiBjYWNoZUdyb3VwID0gY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKCkp
CisgICAgICAgIGNhY2hlR3JvdXAtPmFib3J0KCpmcmFtZSk7CisgICAgZWxzZSBpZiAoYXV0byog
Y2FjaGUgPSBhcHBsaWNhdGlvbkNhY2hlKCkpCisgICAgICAgIGNhY2hlLT5ncm91cCgpLT5hYm9y
dCgqZnJhbWUpOwogfQogCiBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojppc0FwcGxpY2F0aW9u
Q2FjaGVFbmFibGVkKCkKQEAgLTUyNSwxNSArNTM2LDEyIEBAIGJvb2wgQXBwbGljYXRpb25DYWNo
ZUhvc3Q6OmlzQXBwbGljYXRpb25DYWNoZUVuYWJsZWQoKQogCiBib29sIEFwcGxpY2F0aW9uQ2Fj
aGVIb3N0Ojppc0FwcGxpY2F0aW9uQ2FjaGVCbG9ja2VkRm9yUmVxdWVzdChjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmIHJlcXVlc3QpCiB7Ci0gICAgRnJhbWUqIGZyYW1lID0gbV9kb2N1bWVudExvYWRl
ci5mcmFtZSgpOworICAgIGF1dG8qIGZyYW1lID0gbV9kb2N1bWVudExvYWRlci5mcmFtZSgpOwog
ICAgIGlmICghZnJhbWUpCiAgICAgICAgIHJldHVybiBmYWxzZTsKLQogICAgIGlmIChmcmFtZS0+
aXNNYWluRnJhbWUoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgUmVmPFNlY3VyaXR5
T3JpZ2luPiBvcmlnaW4oU2VjdXJpdHlPcmlnaW46OmNyZWF0ZShyZXF1ZXN0LnVybCgpKSk7Ci0g
ICAgcmV0dXJuICFvcmlnaW4uZ2V0KCkuY2FuQWNjZXNzQXBwbGljYXRpb25DYWNoZShmcmFtZS0+
ZG9jdW1lbnQoKS0+dG9wT3JpZ2luKCkpOworICAgIHJldHVybiAhU2VjdXJpdHlPcmlnaW46OmNy
ZWF0ZShyZXF1ZXN0LnVybCgpKS0+Y2FuQWNjZXNzQXBwbGljYXRpb25DYWNoZShmcmFtZS0+ZG9j
dW1lbnQoKS0+dG9wT3JpZ2luKCkpOwogfQogCiB9ICAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVI
b3N0LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUhv
c3QuaAppbmRleCBjOTViMjNiMjg3NDgyNzk2MDc1OGYzMjgwNjdiMWRmYmFlYjg3OGJhLi4yYmZk
YzYyZjkzOThkMDBmNGNiMWU5MWI4NmQ3ZjM2Yzg1M2I3NzgyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUhvc3QuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUhvc3QuaApAQCAtMSw2
ICsxLDcgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKGMpIDIwMDksIEdvb2dsZSBJbmMuICBBbGwgcmln
aHRzIHJlc2VydmVkLgotICogCisgKiBDb3B5cmlnaHQgKGMpIDIwMDksIEdvb2dsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKGMpIDIwMTcgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQogICog
bWV0OgpAQCAtMzAsMTY1ICszMSwxMzYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpbmNsdWRlICJQ
bGF0Zm9ybUV4cG9ydE1hY3Jvcy5oIgogI2luY2x1ZGUgIlVSTC5oIgogI2luY2x1ZGUgPHd0Zi9E
ZXF1ZS5oPgotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZlB0
ci5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewotICAg
IGNsYXNzIERPTUFwcGxpY2F0aW9uQ2FjaGU7Ci0gICAgY2xhc3MgRG9jdW1lbnRMb2FkZXI7Ci0g
ICAgY2xhc3MgRnJhbWU7Ci0gICAgY2xhc3MgUmVzb3VyY2VFcnJvcjsKLSAgICBjbGFzcyBSZXNv
dXJjZUxvYWRlcjsKLSAgICBjbGFzcyBSZXNvdXJjZVJlcXVlc3Q7Ci0gICAgY2xhc3MgUmVzb3Vy
Y2VSZXNwb25zZTsKLSAgICBjbGFzcyBTaGFyZWRCdWZmZXI7Ci0gICAgY2xhc3MgU3Vic3RpdHV0
ZURhdGE7Ci0gICAgY2xhc3MgQXBwbGljYXRpb25DYWNoZTsKLSAgICBjbGFzcyBBcHBsaWNhdGlv
bkNhY2hlR3JvdXA7Ci0gICAgY2xhc3MgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOwotICAgIGNs
YXNzIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOwotCi0gICAgY2xhc3MgQXBwbGljYXRpb25DYWNo
ZUhvc3QgewotICAgICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShBcHBsaWNhdGlvbkNhY2hlSG9z
dCk7IFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwotICAgIHB1YmxpYzoKLSAgICAgICAgLy8gVGhl
IFN0YXR1cyBudW1lcmljIHZhbHVlcyBhcmUgc3BlY2lmaWVkIGluIHRoZSBIVE1MNSBzcGVjLgot
ICAgICAgICBlbnVtIFN0YXR1cyB7Ci0gICAgICAgICAgICBVTkNBQ0hFRCA9IDAsCi0gICAgICAg
ICAgICBJRExFID0gMSwKLSAgICAgICAgICAgIENIRUNLSU5HID0gMiwKLSAgICAgICAgICAgIERP
V05MT0FESU5HID0gMywKLSAgICAgICAgICAgIFVQREFURVJFQURZID0gNCwKLSAgICAgICAgICAg
IE9CU09MRVRFID0gNQotICAgICAgICB9OwotCi0gICAgICAgIGVudW0gRXZlbnRJRCB7Ci0gICAg
ICAgICAgICBDSEVDS0lOR19FVkVOVCA9IDAsCi0gICAgICAgICAgICBFUlJPUl9FVkVOVCwKLSAg
ICAgICAgICAgIE5PVVBEQVRFX0VWRU5ULAotICAgICAgICAgICAgRE9XTkxPQURJTkdfRVZFTlQs
Ci0gICAgICAgICAgICBQUk9HUkVTU19FVkVOVCwKLSAgICAgICAgICAgIFVQREFURVJFQURZX0VW
RU5ULAotICAgICAgICAgICAgQ0FDSEVEX0VWRU5ULAotICAgICAgICAgICAgT0JTT0xFVEVfRVZF
TlQgIC8vIE11c3QgcmVtYWluIHRoZSBsYXN0IHZhbHVlLCB0aGlzIGlzIHVzZWQgdG8gc2l6ZSBh
cnJheXMuCi0gICAgICAgIH07Ci0KLSAgICAgICAgc3RydWN0IENhY2hlSW5mbyB7Ci0gICAgICAg
ICAgICBDYWNoZUluZm8oY29uc3QgVVJMJiBtYW5pZmVzdCwgZG91YmxlIGNyZWF0aW9uVGltZSwg
ZG91YmxlIHVwZGF0ZVRpbWUsIGxvbmcgbG9uZyBzaXplKQotICAgICAgICAgICAgICAgIDogbV9t
YW5pZmVzdChtYW5pZmVzdCkKLSAgICAgICAgICAgICAgICAsIG1fY3JlYXRpb25UaW1lKGNyZWF0
aW9uVGltZSkKLSAgICAgICAgICAgICAgICAsIG1fdXBkYXRlVGltZSh1cGRhdGVUaW1lKQotICAg
ICAgICAgICAgICAgICwgbV9zaXplKHNpemUpIHsgfQotICAgICAgICAgICAgVVJMIG1fbWFuaWZl
c3Q7Ci0gICAgICAgICAgICBkb3VibGUgbV9jcmVhdGlvblRpbWU7Ci0gICAgICAgICAgICBkb3Vi
bGUgbV91cGRhdGVUaW1lOwotICAgICAgICAgICAgbG9uZyBsb25nIG1fc2l6ZTsKLSAgICAgICAg
fTsKLQotICAgICAgICBzdHJ1Y3QgUmVzb3VyY2VJbmZvIHsKLSAgICAgICAgICAgIFJlc291cmNl
SW5mbyhjb25zdCBVUkwmIHJlc291cmNlLCBib29sIGlzTWFzdGVyLCBib29sIGlzTWFuaWZlc3Qs
IGJvb2wgaXNGYWxsYmFjaywgYm9vbCBpc0ZvcmVpZ24sIGJvb2wgaXNFeHBsaWNpdCwgbG9uZyBs
b25nIHNpemUpCi0gICAgICAgICAgICAgICAgOiBtX3Jlc291cmNlKHJlc291cmNlKQotICAgICAg
ICAgICAgICAgICwgbV9pc01hc3Rlcihpc01hc3RlcikKLSAgICAgICAgICAgICAgICAsIG1faXNN
YW5pZmVzdChpc01hbmlmZXN0KQotICAgICAgICAgICAgICAgICwgbV9pc0ZhbGxiYWNrKGlzRmFs
bGJhY2spCi0gICAgICAgICAgICAgICAgLCBtX2lzRm9yZWlnbihpc0ZvcmVpZ24pCi0gICAgICAg
ICAgICAgICAgLCBtX2lzRXhwbGljaXQoaXNFeHBsaWNpdCkKLSAgICAgICAgICAgICAgICAsIG1f
c2l6ZShzaXplKSB7IH0KLSAgICAgICAgICAgIFVSTCBtX3Jlc291cmNlOwotICAgICAgICAgICAg
Ym9vbCBtX2lzTWFzdGVyOwotICAgICAgICAgICAgYm9vbCBtX2lzTWFuaWZlc3Q7Ci0gICAgICAg
ICAgICBib29sIG1faXNGYWxsYmFjazsKLSAgICAgICAgICAgIGJvb2wgbV9pc0ZvcmVpZ247Ci0g
ICAgICAgICAgICBib29sIG1faXNFeHBsaWNpdDsKLSAgICAgICAgICAgIGxvbmcgbG9uZyBtX3Np
emU7Ci0gICAgICAgIH07Ci0KLSAgICAgICAgdHlwZWRlZiBWZWN0b3I8UmVzb3VyY2VJbmZvPiBS
ZXNvdXJjZUluZm9MaXN0OwotCi0gICAgICAgIGV4cGxpY2l0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0
KERvY3VtZW50TG9hZGVyJik7Ci0gICAgICAgIH5BcHBsaWNhdGlvbkNhY2hlSG9zdCgpOwotCi0g
ICAgICAgIHN0YXRpYyBVUkwgY3JlYXRlRmlsZVVSTChjb25zdCBTdHJpbmcmKTsKLQotICAgICAg
ICB2b2lkIHNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0KCk7Ci0gICAgICAgIHZvaWQgc2VsZWN0
Q2FjaGVXaXRoTWFuaWZlc3QoY29uc3QgVVJMJiBtYW5pZmVzdFVSTCk7Ci0KLSAgICAgICAgdm9p
ZCBtYXliZUxvYWRNYWluUmVzb3VyY2UoUmVzb3VyY2VSZXF1ZXN0JiwgU3Vic3RpdHV0ZURhdGEm
KTsKLSAgICAgICAgdm9pZCBtYXliZUxvYWRNYWluUmVzb3VyY2VGb3JSZWRpcmVjdChSZXNvdXJj
ZVJlcXVlc3QmLCBTdWJzdGl0dXRlRGF0YSYpOwotICAgICAgICBib29sIG1heWJlTG9hZEZhbGxi
YWNrRm9yTWFpblJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmKTsKLSAgICAgICAgdm9pZCBtYWluUmVzb3VyY2VEYXRhUmVjZWl2ZWQoY29uc3Qg
Y2hhciogZGF0YSwgaW50IGxlbmd0aCwgbG9uZyBsb25nIGVuY29kZWREYXRhTGVuZ3RoLCBib29s
IGFsbEF0T25jZSk7Ci0gICAgICAgIHZvaWQgZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKCk7
Ci0gICAgICAgIHZvaWQgZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZSgpOwotCi0gICAgICAgIFdF
QkNPUkVfRVhQT1JUIGJvb2wgbWF5YmVMb2FkUmVzb3VyY2UoUmVzb3VyY2VMb2FkZXImLCBjb25z
dCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBVUkwmIG9yaWdpbmFsVVJMKTsKLSAgICAgICAgV0VC
Q09SRV9FWFBPUlQgYm9vbCBtYXliZUxvYWRGYWxsYmFja0ZvclJlZGlyZWN0KFJlc291cmNlTG9h
ZGVyKiwgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwotICAgICAg
ICBXRUJDT1JFX0VYUE9SVCBib29sIG1heWJlTG9hZEZhbGxiYWNrRm9yUmVzcG9uc2UoUmVzb3Vy
Y2VMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7Ci0gICAgICAgIFdFQkNPUkVfRVhQ
T1JUIGJvb2wgbWF5YmVMb2FkRmFsbGJhY2tGb3JFcnJvcihSZXNvdXJjZUxvYWRlciosIGNvbnN0
IFJlc291cmNlRXJyb3ImKTsKLQotICAgICAgICBib29sIG1heWJlTG9hZFN5bmNocm9ub3VzbHko
UmVzb3VyY2VSZXF1ZXN0JiwgUmVzb3VyY2VFcnJvciYsIFJlc291cmNlUmVzcG9uc2UmLCBSZWZQ
dHI8U2hhcmVkQnVmZmVyPiYpOwotICAgICAgICB2b2lkIG1heWJlTG9hZEZhbGxiYWNrU3luY2hy
b25vdXNseShjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBSZXNvdXJjZUVycm9yJiwgUmVzb3VyY2VS
ZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+Jik7Ci0KLSAgICAgICAgYm9vbCBjYW5DYWNo
ZUluUGFnZUNhY2hlKCk7Ci0KLSAgICAgICAgU3RhdHVzIHN0YXR1cygpIGNvbnN0OyAgCi0gICAg
ICAgIGJvb2wgdXBkYXRlKCk7Ci0gICAgICAgIGJvb2wgc3dhcENhY2hlKCk7Ci0gICAgICAgIHZv
aWQgYWJvcnQoKTsKLQotICAgICAgICB2b2lkIHNldERPTUFwcGxpY2F0aW9uQ2FjaGUoRE9NQXBw
bGljYXRpb25DYWNoZSopOwotICAgICAgICB2b2lkIG5vdGlmeURPTUFwcGxpY2F0aW9uQ2FjaGUo
RXZlbnRJRCwgaW50IHByb2dyZXNzVG90YWwsIGludCBwcm9ncmVzc0RvbmUpOwotCi0gICAgICAg
IHZvaWQgc3RvcExvYWRpbmdJbkZyYW1lKEZyYW1lKik7Ci0KLSAgICAgICAgdm9pZCBzdG9wRGVm
ZXJyaW5nRXZlbnRzKCk7IC8vIEFsc28gcmFpc2VzIHRoZSBldmVudHMgdGhhdCBoYXZlIGJlZW4g
cXVldWVkIHVwLgotCi0gICAgICAgIHZvaWQgZmlsbFJlc291cmNlTGlzdChSZXNvdXJjZUluZm9M
aXN0Kik7Ci0gICAgICAgIENhY2hlSW5mbyBhcHBsaWNhdGlvbkNhY2hlSW5mbygpOwotCi0gICAg
ICAgIGJvb2wgc2hvdWxkTG9hZFJlc291cmNlRnJvbUFwcGxpY2F0aW9uQ2FjaGUoY29uc3QgUmVz
b3VyY2VSZXF1ZXN0JiwgQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiYpOwotICAgICAgICBib29s
IGdldEFwcGxpY2F0aW9uQ2FjaGVGYWxsYmFja1Jlc291cmNlKGNvbnN0IFJlc291cmNlUmVxdWVz
dCYsIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSomLCBBcHBsaWNhdGlvbkNhY2hlKiA9IG51bGxw
dHIpOwotCi0gICAgcHJpdmF0ZToKLSAgICAgICAgYm9vbCBpc0FwcGxpY2F0aW9uQ2FjaGVFbmFi
bGVkKCk7Ci0gICAgICAgIGJvb2wgaXNBcHBsaWNhdGlvbkNhY2hlQmxvY2tlZEZvclJlcXVlc3Qo
Y29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7Ci0KLSAgICAgICAgc3RydWN0IERlZmVycmVkRXZlbnQg
ewotICAgICAgICAgICAgRXZlbnRJRCBldmVudElEOwotICAgICAgICAgICAgaW50IHByb2dyZXNz
VG90YWw7Ci0gICAgICAgICAgICBpbnQgcHJvZ3Jlc3NEb25lOwotICAgICAgICAgICAgRGVmZXJy
ZWRFdmVudChFdmVudElEIGlkLCBpbnQgdG90YWwsIGludCBkb25lKSA6IGV2ZW50SUQoaWQpLCBw
cm9ncmVzc1RvdGFsKHRvdGFsKSwgcHJvZ3Jlc3NEb25lKGRvbmUpIHsgfQotICAgICAgICB9Owot
Ci0gICAgICAgIERPTUFwcGxpY2F0aW9uQ2FjaGUqIG1fZG9tQXBwbGljYXRpb25DYWNoZTsKLSAg
ICAgICAgRG9jdW1lbnRMb2FkZXImIG1fZG9jdW1lbnRMb2FkZXI7Ci0gICAgICAgIGJvb2wgbV9k
ZWZlcnNFdmVudHM7IC8vIEV2ZW50cyBhcmUgZGVmZXJyZWQgdW50aWwgYWZ0ZXIgZG9jdW1lbnQg
b25sb2FkLgotICAgICAgICBWZWN0b3I8RGVmZXJyZWRFdmVudD4gbV9kZWZlcnJlZEV2ZW50czsK
LQotICAgICAgICB2b2lkIGRpc3BhdGNoRE9NRXZlbnQoRXZlbnRJRCwgaW50IHByb2dyZXNzVG90
YWwsIGludCBwcm9ncmVzc0RvbmUpOwotCi0gICAgICAgIGZyaWVuZCBjbGFzcyBBcHBsaWNhdGlv
bkNhY2hlR3JvdXA7Ci0gICAgICAgIGZyaWVuZCBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlU3RvcmFn
ZTsKLQotICAgICAgICBib29sIHNjaGVkdWxlTG9hZEZhbGxiYWNrUmVzb3VyY2VGcm9tQXBwbGlj
YXRpb25DYWNoZShSZXNvdXJjZUxvYWRlciosIEFwcGxpY2F0aW9uQ2FjaGUqID0gbnVsbHB0cik7
Ci0gICAgICAgIHZvaWQgc2V0Q2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKEFwcGxpY2F0
aW9uQ2FjaGVHcm91cCogZ3JvdXApOwotICAgICAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGNh
bmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCgpIGNvbnN0IHsgcmV0dXJuIG1fY2FuZGlkYXRl
QXBwbGljYXRpb25DYWNoZUdyb3VwOyB9Ci0gICAgICAgIHZvaWQgc2V0QXBwbGljYXRpb25DYWNo
ZShQYXNzUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+IGFwcGxpY2F0aW9uQ2FjaGUpOwotICAgICAg
ICBBcHBsaWNhdGlvbkNhY2hlKiBhcHBsaWNhdGlvbkNhY2hlKCkgY29uc3QgeyByZXR1cm4gbV9h
cHBsaWNhdGlvbkNhY2hlLmdldCgpOyB9Ci0gICAgICAgIEFwcGxpY2F0aW9uQ2FjaGUqIG1haW5S
ZXNvdXJjZUFwcGxpY2F0aW9uQ2FjaGUoKSBjb25zdCB7IHJldHVybiBtX21haW5SZXNvdXJjZUFw
cGxpY2F0aW9uQ2FjaGUuZ2V0KCk7IH0KLSAgICAgICAgYm9vbCBtYXliZUxvYWRGYWxsYmFja0Zv
ck1haW5FcnJvcihjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZUVycm9yJik7
Ci0KLSAgICAgICAgLy8gVGhlIGFwcGxpY2F0aW9uIGNhY2hlIHRoYXQgdGhlIGRvY3VtZW50IGxv
YWRlciBpcyBhc3NvY2lhdGVkIHdpdGggKGlmIGFueSkuCi0gICAgICAgIFJlZlB0cjxBcHBsaWNh
dGlvbkNhY2hlPiBtX2FwcGxpY2F0aW9uQ2FjaGU7Ci0KLSAgICAgICAgLy8gQmVmb3JlIGFuIGFw
cGxpY2F0aW9uIGNhY2hlIGhhcyBmaW5pc2hlZCBsb2FkaW5nLCB0aGlzIHdpbGwgYmUgdGhlIGNh
bmRpZGF0ZSBhcHBsaWNhdGlvbgotICAgICAgICAvLyBncm91cCB0aGF0IHRoZSBkb2N1bWVudCBs
b2FkZXIgaXMgYXNzb2NpYXRlZCB3aXRoLgotICAgICAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAq
IG1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwOwotCi0gICAgICAgIC8vIFRoaXMgaXMg
dGhlIGFwcGxpY2F0aW9uIGNhY2hlIHRoZSBtYWluIHJlc291cmNlIHdhcyBsb2FkZWQgZnJvbSAo
aWYgYW55KS4KLSAgICAgICAgUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+IG1fbWFpblJlc291cmNl
QXBwbGljYXRpb25DYWNoZTsKKworY2xhc3MgQXBwbGljYXRpb25DYWNoZTsKK2NsYXNzIEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cDsKK2NsYXNzIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTsKK2NsYXNz
IEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOworY2xhc3MgRE9NQXBwbGljYXRpb25DYWNoZTsKK2Ns
YXNzIERvY3VtZW50TG9hZGVyOworY2xhc3MgRnJhbWU7CitjbGFzcyBSZXNvdXJjZUVycm9yOwor
Y2xhc3MgUmVzb3VyY2VMb2FkZXI7CitjbGFzcyBSZXNvdXJjZVJlcXVlc3Q7CitjbGFzcyBSZXNv
dXJjZVJlc3BvbnNlOworY2xhc3MgU2hhcmVkQnVmZmVyOworY2xhc3MgU3Vic3RpdHV0ZURhdGE7
CisKK2NsYXNzIEFwcGxpY2F0aW9uQ2FjaGVIb3N0IHsKKyAgICBXVEZfTUFLRV9OT05DT1BZQUJM
RShBcHBsaWNhdGlvbkNhY2hlSG9zdCk7IFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGlj
OgorICAgIC8vIFRoZSBTdGF0dXMgbnVtZXJpYyB2YWx1ZXMgYXJlIHNwZWNpZmllZCBpbiB0aGUg
SFRNTDUgc3BlYy4KKyAgICBlbnVtIFN0YXR1cyB7CisgICAgICAgIFVOQ0FDSEVEID0gMCwKKyAg
ICAgICAgSURMRSA9IDEsCisgICAgICAgIENIRUNLSU5HID0gMiwKKyAgICAgICAgRE9XTkxPQURJ
TkcgPSAzLAorICAgICAgICBVUERBVEVSRUFEWSA9IDQsCisgICAgICAgIE9CU09MRVRFID0gNQor
ICAgIH07CisKKyAgICBzdHJ1Y3QgQ2FjaGVJbmZvIHsKKyAgICAgICAgVVJMIG1hbmlmZXN0Owor
ICAgICAgICBkb3VibGUgY3JlYXRpb25UaW1lOworICAgICAgICBkb3VibGUgdXBkYXRlVGltZTsK
KyAgICAgICAgbG9uZyBsb25nIHNpemU7CisgICAgfTsKKworICAgIHN0cnVjdCBSZXNvdXJjZUlu
Zm8geworICAgICAgICBVUkwgcmVzb3VyY2U7CisgICAgICAgIGJvb2wgaXNNYXN0ZXI7CisgICAg
ICAgIGJvb2wgaXNNYW5pZmVzdDsKKyAgICAgICAgYm9vbCBpc0ZhbGxiYWNrOworICAgICAgICBi
b29sIGlzRm9yZWlnbjsKKyAgICAgICAgYm9vbCBpc0V4cGxpY2l0OworICAgICAgICBsb25nIGxv
bmcgc2l6ZTsKKyAgICB9OworCisgICAgZXhwbGljaXQgQXBwbGljYXRpb25DYWNoZUhvc3QoRG9j
dW1lbnRMb2FkZXImKTsKKyAgICB+QXBwbGljYXRpb25DYWNoZUhvc3QoKTsKKworICAgIHN0YXRp
YyBVUkwgY3JlYXRlRmlsZVVSTChjb25zdCBTdHJpbmcmKTsKKworICAgIHZvaWQgc2VsZWN0Q2Fj
aGVXaXRob3V0TWFuaWZlc3QoKTsKKyAgICB2b2lkIHNlbGVjdENhY2hlV2l0aE1hbmlmZXN0KGNv
bnN0IFVSTCYgbWFuaWZlc3RVUkwpOworCisgICAgdm9pZCBtYXliZUxvYWRNYWluUmVzb3VyY2Uo
UmVzb3VyY2VSZXF1ZXN0JiwgU3Vic3RpdHV0ZURhdGEmKTsKKyAgICB2b2lkIG1heWJlTG9hZE1h
aW5SZXNvdXJjZUZvclJlZGlyZWN0KFJlc291cmNlUmVxdWVzdCYsIFN1YnN0aXR1dGVEYXRhJik7
CisgICAgYm9vbCBtYXliZUxvYWRGYWxsYmFja0Zvck1haW5SZXNwb25zZShjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CisgICAgdm9pZCBtYWluUmVzb3Vy
Y2VEYXRhUmVjZWl2ZWQoY29uc3QgY2hhciogZGF0YSwgaW50IGxlbmd0aCwgbG9uZyBsb25nIGVu
Y29kZWREYXRhTGVuZ3RoLCBib29sIGFsbEF0T25jZSk7CisgICAgdm9pZCBmaW5pc2hlZExvYWRp
bmdNYWluUmVzb3VyY2UoKTsKKyAgICB2b2lkIGZhaWxlZExvYWRpbmdNYWluUmVzb3VyY2UoKTsK
KworICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgbWF5YmVMb2FkUmVzb3VyY2UoUmVzb3VyY2VMb2Fk
ZXImLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBVUkwmIG9yaWdpbmFsVVJMKTsKKyAg
ICBXRUJDT1JFX0VYUE9SVCBib29sIG1heWJlTG9hZEZhbGxiYWNrRm9yUmVkaXJlY3QoUmVzb3Vy
Y2VMb2FkZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7Cisg
ICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBtYXliZUxvYWRGYWxsYmFja0ZvclJlc3BvbnNlKFJlc291
cmNlTG9hZGVyKiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOworICAgIFdFQkNPUkVfRVhQT1JU
IGJvb2wgbWF5YmVMb2FkRmFsbGJhY2tGb3JFcnJvcihSZXNvdXJjZUxvYWRlciosIGNvbnN0IFJl
c291cmNlRXJyb3ImKTsKKworICAgIGJvb2wgbWF5YmVMb2FkU3luY2hyb25vdXNseShSZXNvdXJj
ZVJlcXVlc3QmLCBSZXNvdXJjZUVycm9yJiwgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFy
ZWRCdWZmZXI+Jik7CisgICAgdm9pZCBtYXliZUxvYWRGYWxsYmFja1N5bmNocm9ub3VzbHkoY29u
c3QgUmVzb3VyY2VSZXF1ZXN0JiwgUmVzb3VyY2VFcnJvciYsIFJlc291cmNlUmVzcG9uc2UmLCBS
ZWZQdHI8U2hhcmVkQnVmZmVyPiYpOworCisgICAgYm9vbCBjYW5DYWNoZUluUGFnZUNhY2hlKCk7
CisKKyAgICBTdGF0dXMgc3RhdHVzKCkgY29uc3Q7CisgICAgYm9vbCB1cGRhdGUoKTsKKyAgICBi
b29sIHN3YXBDYWNoZSgpOworICAgIHZvaWQgYWJvcnQoKTsKKworICAgIHZvaWQgc2V0RE9NQXBw
bGljYXRpb25DYWNoZShET01BcHBsaWNhdGlvbkNhY2hlKik7CisgICAgdm9pZCBub3RpZnlET01B
cHBsaWNhdGlvbkNhY2hlKGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBpbnQgcHJvZ3Jl
c3NUb3RhbCwgaW50IHByb2dyZXNzRG9uZSk7CisKKyAgICB2b2lkIHN0b3BMb2FkaW5nSW5GcmFt
ZShGcmFtZSYpOworCisgICAgdm9pZCBzdG9wRGVmZXJyaW5nRXZlbnRzKCk7IC8vIEFsc28gcmFp
c2VzIHRoZSBldmVudHMgdGhhdCBoYXZlIGJlZW4gcXVldWVkIHVwLgorCisgICAgVmVjdG9yPFJl
c291cmNlSW5mbz4gcmVzb3VyY2VMaXN0KCk7CisgICAgQ2FjaGVJbmZvIGFwcGxpY2F0aW9uQ2Fj
aGVJbmZvKCk7CisKKyAgICBib29sIHNob3VsZExvYWRSZXNvdXJjZUZyb21BcHBsaWNhdGlvbkNh
Y2hlKGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSomKTsK
KyAgICBib29sIGdldEFwcGxpY2F0aW9uQ2FjaGVGYWxsYmFja1Jlc291cmNlKGNvbnN0IFJlc291
cmNlUmVxdWVzdCYsIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSomLCBBcHBsaWNhdGlvbkNhY2hl
KiA9IG51bGxwdHIpOworCitwcml2YXRlOgorICAgIGZyaWVuZCBjbGFzcyBBcHBsaWNhdGlvbkNh
Y2hlR3JvdXA7CisKKyAgICBzdHJ1Y3QgRGVmZXJyZWRFdmVudCB7CisgICAgICAgIEF0b21pY1N0
cmluZyBldmVudFR5cGU7CisgICAgICAgIGludCBwcm9ncmVzc1RvdGFsOworICAgICAgICBpbnQg
cHJvZ3Jlc3NEb25lOwogICAgIH07CiAKKyAgICBib29sIGlzQXBwbGljYXRpb25DYWNoZUVuYWJs
ZWQoKTsKKyAgICBib29sIGlzQXBwbGljYXRpb25DYWNoZUJsb2NrZWRGb3JSZXF1ZXN0KGNvbnN0
IFJlc291cmNlUmVxdWVzdCYpOworCisgICAgdm9pZCBkaXNwYXRjaERPTUV2ZW50KGNvbnN0IEF0
b21pY1N0cmluZyYgZXZlbnRUeXBlLCBpbnQgcHJvZ3Jlc3NUb3RhbCwgaW50IHByb2dyZXNzRG9u
ZSk7CisKKyAgICBib29sIHNjaGVkdWxlTG9hZEZhbGxiYWNrUmVzb3VyY2VGcm9tQXBwbGljYXRp
b25DYWNoZShSZXNvdXJjZUxvYWRlciosIEFwcGxpY2F0aW9uQ2FjaGUqID0gbnVsbHB0cik7Cisg
ICAgdm9pZCBzZXRDYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoQXBwbGljYXRpb25DYWNo
ZUdyb3VwKik7CisgICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBjYW5kaWRhdGVBcHBsaWNhdGlv
bkNhY2hlR3JvdXAoKSBjb25zdCB7IHJldHVybiBtX2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVH
cm91cDsgfQorICAgIHZvaWQgc2V0QXBwbGljYXRpb25DYWNoZShSZWZQdHI8QXBwbGljYXRpb25D
YWNoZT4mJik7CisgICAgQXBwbGljYXRpb25DYWNoZSogYXBwbGljYXRpb25DYWNoZSgpIGNvbnN0
IHsgcmV0dXJuIG1fYXBwbGljYXRpb25DYWNoZS5nZXQoKTsgfQorICAgIEFwcGxpY2F0aW9uQ2Fj
aGUqIG1haW5SZXNvdXJjZUFwcGxpY2F0aW9uQ2FjaGUoKSBjb25zdCB7IHJldHVybiBtX21haW5S
ZXNvdXJjZUFwcGxpY2F0aW9uQ2FjaGUuZ2V0KCk7IH0KKyAgICBib29sIG1heWJlTG9hZEZhbGxi
YWNrRm9yTWFpbkVycm9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlRXJy
b3ImKTsKKworICAgIERPTUFwcGxpY2F0aW9uQ2FjaGUqIG1fZG9tQXBwbGljYXRpb25DYWNoZSB7
IG51bGxwdHIgfTsKKyAgICBEb2N1bWVudExvYWRlciYgbV9kb2N1bWVudExvYWRlcjsKKworICAg
IGJvb2wgbV9kZWZlcnNFdmVudHMgeyB0cnVlIH07IC8vIEV2ZW50cyBhcmUgZGVmZXJyZWQgdW50
aWwgYWZ0ZXIgZG9jdW1lbnQgb25sb2FkLgorICAgIFZlY3RvcjxEZWZlcnJlZEV2ZW50PiBtX2Rl
ZmVycmVkRXZlbnRzOworCisgICAgLy8gVGhlIGFwcGxpY2F0aW9uIGNhY2hlIHRoYXQgdGhlIGRv
Y3VtZW50IGxvYWRlciBpcyBhc3NvY2lhdGVkIHdpdGggKGlmIGFueSkuCisgICAgUmVmUHRyPEFw
cGxpY2F0aW9uQ2FjaGU+IG1fYXBwbGljYXRpb25DYWNoZTsKKworICAgIC8vIEJlZm9yZSBhbiBh
cHBsaWNhdGlvbiBjYWNoZSBoYXMgZmluaXNoZWQgbG9hZGluZywgdGhpcyB3aWxsIGJlIHRoZSBj
YW5kaWRhdGUgYXBwbGljYXRpb24KKyAgICAvLyBncm91cCB0aGF0IHRoZSBkb2N1bWVudCBsb2Fk
ZXIgaXMgYXNzb2NpYXRlZCB3aXRoLgorICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogbV9jYW5k
aWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAgeyBudWxscHRyIH07CisKKyAgICAvLyBUaGlzIGlz
IHRoZSBhcHBsaWNhdGlvbiBjYWNoZSB0aGUgbWFpbiByZXNvdXJjZSB3YXMgbG9hZGVkIGZyb20g
KGlmIGFueSkuCisgICAgUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+IG1fbWFpblJlc291cmNlQXBw
bGljYXRpb25DYWNoZTsKK307CisKIH0gIC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZVN0b3JhZ2Uu
Y3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVTdG9y
YWdlLmNwcAppbmRleCBkZjEwM2U0YTJiOGViNDU1ODNlMGVhOTM2NTdmZGU2Yzg2MTA0OTA2Li5m
NGZhOTViNTE3ZWM3NzkxNjI0ZmMwZjI1YTY1NmIwYzA5NDQxNDc3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFn
ZS5jcHAKQEAgLTEyNiwzNiArMTI2LDMyIEBAIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogQXBwbGlj
YXRpb25DYWNoZVN0b3JhZ2U6OmxvYWRDYWNoZUdyb3VwKGNvbnN0IFVSTCYgbWFuaWZlCiAgICAg
aWYgKCFjYWNoZSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgICAgIAotICAgIEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAgPSBuZXcgQXBwbGljYXRpb25DYWNoZUdyb3VwKCp0aGlz
LCBtYW5pZmVzdFVSTCk7Ci0gICAgICAKLSAgICBncm91cC0+c2V0U3RvcmFnZUlEKHN0YXRpY19j
YXN0PHVuc2lnbmVkPihzdGF0ZW1lbnQuZ2V0Q29sdW1uSW50NjQoMCkpKTsKLSAgICBncm91cC0+
c2V0TmV3ZXN0Q2FjaGUoV1RGTW92ZShjYWNoZSkpOwotCi0gICAgcmV0dXJuIGdyb3VwOworICAg
IGF1dG8mIGdyb3VwID0gKm5ldyBBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKnRoaXMsIG1hbmlmZXN0
VVJMKTsKKyAgICBncm91cC5zZXRTdG9yYWdlSUQoc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHN0YXRl
bWVudC5nZXRDb2x1bW5JbnQ2NCgwKSkpOworICAgIGdyb3VwLnNldE5ld2VzdENhY2hlKGNhY2hl
LnJlbGVhc2VOb25OdWxsKCkpOworICAgIHJldHVybiAmZ3JvdXA7CiB9ICAgIAogCiBBcHBsaWNh
dGlvbkNhY2hlR3JvdXAqIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpmaW5kT3JDcmVhdGVDYWNo
ZUdyb3VwKGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwpCiB7CiAgICAgQVNTRVJUKCFtYW5pZmVzdFVS
TC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSk7CiAKLSAgICBDYWNoZUdyb3VwTWFwOjpBZGRSZXN1
bHQgcmVzdWx0ID0gbV9jYWNoZXNJbk1lbW9yeS5hZGQobWFuaWZlc3RVUkwsIG51bGxwdHIpOwot
ICAgIAorICAgIGF1dG8gcmVzdWx0ID0gbV9jYWNoZXNJbk1lbW9yeS5hZGQobWFuaWZlc3RVUkws
IG51bGxwdHIpOwogICAgIGlmICghcmVzdWx0LmlzTmV3RW50cnkpIHsKICAgICAgICAgQVNTRVJU
KHJlc3VsdC5pdGVyYXRvci0+dmFsdWUpOwogICAgICAgICByZXR1cm4gcmVzdWx0Lml0ZXJhdG9y
LT52YWx1ZTsKICAgICB9CiAKICAgICAvLyBMb29rIHVwIHRoZSBncm91cCBpbiB0aGUgZGF0YWJh
c2UKLSAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwID0gbG9hZENhY2hlR3JvdXAobWFu
aWZlc3RVUkwpOworICAgIGF1dG8qIGdyb3VwID0gbG9hZENhY2hlR3JvdXAobWFuaWZlc3RVUkwp
OwogICAgIAogICAgIC8vIElmIHRoZSBncm91cCB3YXMgbm90IGZvdW5kIHdlIG5lZWQgdG8gY3Jl
YXRlIGl0CiAgICAgaWYgKCFncm91cCkgewogICAgICAgICBncm91cCA9IG5ldyBBcHBsaWNhdGlv
bkNhY2hlR3JvdXAoKnRoaXMsIG1hbmlmZXN0VVJMKTsKICAgICAgICAgbV9jYWNoZUhvc3RTZXQu
YWRkKHVybEhvc3RIYXNoKG1hbmlmZXN0VVJMKSk7CiAgICAgfQotICAgIAorCiAgICAgcmVzdWx0
Lml0ZXJhdG9yLT52YWx1ZSA9IGdyb3VwOwotICAgIAogICAgIHJldHVybiBncm91cDsKIH0KIApA
QCAtMjQ0LDIwICsyNDAsMTggQEAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBBcHBsaWNhdGlvbkNh
Y2hlU3RvcmFnZTo6Y2FjaGVHcm91cEZvclVSTChjb25zdCBVUkwmIHVybCkKICAgICAgICAgaWYg
KCFjYWNoZSkKICAgICAgICAgICAgIGNvbnRpbnVlOwogCi0gICAgICAgIEFwcGxpY2F0aW9uQ2Fj
aGVSZXNvdXJjZSogcmVzb3VyY2UgPSBjYWNoZS0+cmVzb3VyY2VGb3JVUkwodXJsKTsKKyAgICAg
ICAgYXV0byogcmVzb3VyY2UgPSBjYWNoZS0+cmVzb3VyY2VGb3JVUkwodXJsKTsKICAgICAgICAg
aWYgKCFyZXNvdXJjZSkKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICBpZiAocmVzb3Vy
Y2UtPnR5cGUoKSAmIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6Rm9yZWlnbikKICAgICAgICAg
ICAgIGNvbnRpbnVlOwogCi0gICAgICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAgPSBu
ZXcgQXBwbGljYXRpb25DYWNoZUdyb3VwKCp0aGlzLCBtYW5pZmVzdFVSTCk7Ci0gICAgICAgIAot
ICAgICAgICBncm91cC0+c2V0U3RvcmFnZUlEKHN0YXRpY19jYXN0PHVuc2lnbmVkPihzdGF0ZW1l
bnQuZ2V0Q29sdW1uSW50NjQoMCkpKTsKLSAgICAgICAgZ3JvdXAtPnNldE5ld2VzdENhY2hlKFdU
Rk1vdmUoY2FjaGUpKTsKLSAgICAgICAgCi0gICAgICAgIG1fY2FjaGVzSW5NZW1vcnkuc2V0KGdy
b3VwLT5tYW5pZmVzdFVSTCgpLCBncm91cCk7Ci0gICAgICAgIAotICAgICAgICByZXR1cm4gZ3Jv
dXA7CisgICAgICAgIGF1dG8mIGdyb3VwID0gKm5ldyBBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKnRo
aXMsIG1hbmlmZXN0VVJMKTsKKyAgICAgICAgZ3JvdXAuc2V0U3RvcmFnZUlEKHN0YXRpY19jYXN0
PHVuc2lnbmVkPihzdGF0ZW1lbnQuZ2V0Q29sdW1uSW50NjQoMCkpKTsKKyAgICAgICAgZ3JvdXAu
c2V0TmV3ZXN0Q2FjaGUoY2FjaGUucmVsZWFzZU5vbk51bGwoKSk7CisgICAgICAgIG1fY2FjaGVz
SW5NZW1vcnkuc2V0KGdyb3VwLm1hbmlmZXN0VVJMKCksICZncm91cCk7CisKKyAgICAgICAgcmV0
dXJuICZncm91cDsKICAgICB9CiAKICAgICBpZiAocmVzdWx0ICE9IFNRTElURV9ET05FKQpAQCAt
MzIwLDE0ICszMTQsMTMgQEAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBBcHBsaWNhdGlvbkNhY2hl
U3RvcmFnZTo6ZmFsbGJhY2tDYWNoZUdyb3VwRm9yVVJMKGNvbnN0IFUKICAgICAgICAgaWYgKGNh
Y2hlLT5yZXNvdXJjZUZvclVSTChmYWxsYmFja1VSTCktPnR5cGUoKSAmIEFwcGxpY2F0aW9uQ2Fj
aGVSZXNvdXJjZTo6Rm9yZWlnbikKICAgICAgICAgICAgIGNvbnRpbnVlOwogCi0gICAgICAgIEFw
cGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAgPSBuZXcgQXBwbGljYXRpb25DYWNoZUdyb3VwKCp0
aGlzLCBtYW5pZmVzdFVSTCk7Ci0gICAgICAgIAotICAgICAgICBncm91cC0+c2V0U3RvcmFnZUlE
KHN0YXRpY19jYXN0PHVuc2lnbmVkPihzdGF0ZW1lbnQuZ2V0Q29sdW1uSW50NjQoMCkpKTsKLSAg
ICAgICAgZ3JvdXAtPnNldE5ld2VzdENhY2hlKFdURk1vdmUoY2FjaGUpKTsKLSAgICAgICAgCi0g
ICAgICAgIG1fY2FjaGVzSW5NZW1vcnkuc2V0KGdyb3VwLT5tYW5pZmVzdFVSTCgpLCBncm91cCk7
Ci0gICAgICAgIAotICAgICAgICByZXR1cm4gZ3JvdXA7CisgICAgICAgIGF1dG8mIGdyb3VwID0g
Km5ldyBBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKnRoaXMsIG1hbmlmZXN0VVJMKTsKKyAgICAgICAg
Z3JvdXAuc2V0U3RvcmFnZUlEKHN0YXRpY19jYXN0PHVuc2lnbmVkPihzdGF0ZW1lbnQuZ2V0Q29s
dW1uSW50NjQoMCkpKTsKKyAgICAgICAgZ3JvdXAuc2V0TmV3ZXN0Q2FjaGUoY2FjaGUucmVsZWFz
ZU5vbk51bGwoKSk7CisKKyAgICAgICAgbV9jYWNoZXNJbk1lbW9yeS5zZXQoZ3JvdXAubWFuaWZl
c3RVUkwoKSwgJmdyb3VwKTsKKworICAgICAgICByZXR1cm4gJmdyb3VwOwogICAgIH0KIAogICAg
IGlmIChyZXN1bHQgIT0gU1FMSVRFX0RPTkUpCkBAIC0zMzYsMzMgKzMyOSwzMyBAQCBBcHBsaWNh
dGlvbkNhY2hlR3JvdXAqIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpmYWxsYmFja0NhY2hlR3Jv
dXBGb3JVUkwoY29uc3QgVQogICAgIHJldHVybiBudWxscHRyOwogfQogCi12b2lkIEFwcGxpY2F0
aW9uQ2FjaGVTdG9yYWdlOjpjYWNoZUdyb3VwRGVzdHJveWVkKEFwcGxpY2F0aW9uQ2FjaGVHcm91
cCogZ3JvdXApCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpjYWNoZUdyb3VwRGVzdHJv
eWVkKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCYgZ3JvdXApCiB7Ci0gICAgaWYgKGdyb3VwLT5pc09i
c29sZXRlKCkpIHsKLSAgICAgICAgQVNTRVJUKCFncm91cC0+c3RvcmFnZUlEKCkpOwotICAgICAg
ICBBU1NFUlQobV9jYWNoZXNJbk1lbW9yeS5nZXQoZ3JvdXAtPm1hbmlmZXN0VVJMKCkpICE9IGdy
b3VwKTsKKyAgICBpZiAoZ3JvdXAuaXNPYnNvbGV0ZSgpKSB7CisgICAgICAgIEFTU0VSVCghZ3Jv
dXAuc3RvcmFnZUlEKCkpOworICAgICAgICBBU1NFUlQobV9jYWNoZXNJbk1lbW9yeS5nZXQoZ3Jv
dXAubWFuaWZlc3RVUkwoKSkgIT0gJmdyb3VwKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAot
ICAgIEFTU0VSVChtX2NhY2hlc0luTWVtb3J5LmdldChncm91cC0+bWFuaWZlc3RVUkwoKSkgPT0g
Z3JvdXApOworICAgIEFTU0VSVChtX2NhY2hlc0luTWVtb3J5LmdldChncm91cC5tYW5pZmVzdFVS
TCgpKSA9PSAmZ3JvdXApOwogCi0gICAgbV9jYWNoZXNJbk1lbW9yeS5yZW1vdmUoZ3JvdXAtPm1h
bmlmZXN0VVJMKCkpOworICAgIG1fY2FjaGVzSW5NZW1vcnkucmVtb3ZlKGdyb3VwLm1hbmlmZXN0
VVJMKCkpOwogICAgIAogICAgIC8vIElmIHRoZSBjYWNoZSBncm91cCBpcyBoYWxmLWNyZWF0ZWQs
IHdlIGRvbid0IHdhbnQgaXQgaW4gdGhlIHNhdmVkIHNldCAoYXMgaXQgaXMgbm90IHN0b3JlZCBp
biBkYXRhYmFzZSkuCi0gICAgaWYgKCFncm91cC0+c3RvcmFnZUlEKCkpCi0gICAgICAgIG1fY2Fj
aGVIb3N0U2V0LnJlbW92ZSh1cmxIb3N0SGFzaChncm91cC0+bWFuaWZlc3RVUkwoKSkpOworICAg
IGlmICghZ3JvdXAuc3RvcmFnZUlEKCkpCisgICAgICAgIG1fY2FjaGVIb3N0U2V0LnJlbW92ZSh1
cmxIb3N0SGFzaChncm91cC5tYW5pZmVzdFVSTCgpKSk7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25D
YWNoZVN0b3JhZ2U6OmNhY2hlR3JvdXBNYWRlT2Jzb2xldGUoQXBwbGljYXRpb25DYWNoZUdyb3Vw
KiBncm91cCkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmNhY2hlR3JvdXBNYWRlT2Jz
b2xldGUoQXBwbGljYXRpb25DYWNoZUdyb3VwJiBncm91cCkKIHsKLSAgICBBU1NFUlQobV9jYWNo
ZXNJbk1lbW9yeS5nZXQoZ3JvdXAtPm1hbmlmZXN0VVJMKCkpID09IGdyb3VwKTsKLSAgICBBU1NF
UlQobV9jYWNoZUhvc3RTZXQuY29udGFpbnModXJsSG9zdEhhc2goZ3JvdXAtPm1hbmlmZXN0VVJM
KCkpKSk7CisgICAgQVNTRVJUKG1fY2FjaGVzSW5NZW1vcnkuZ2V0KGdyb3VwLm1hbmlmZXN0VVJM
KCkpID09ICZncm91cCk7CisgICAgQVNTRVJUKG1fY2FjaGVIb3N0U2V0LmNvbnRhaW5zKHVybEhv
c3RIYXNoKGdyb3VwLm1hbmlmZXN0VVJMKCkpKSk7CiAKLSAgICBpZiAoQXBwbGljYXRpb25DYWNo
ZSogbmV3ZXN0Q2FjaGUgPSBncm91cC0+bmV3ZXN0Q2FjaGUoKSkKKyAgICBpZiAoYXV0byogbmV3
ZXN0Q2FjaGUgPSBncm91cC5uZXdlc3RDYWNoZSgpKQogICAgICAgICByZW1vdmUobmV3ZXN0Q2Fj
aGUpOwogCi0gICAgbV9jYWNoZXNJbk1lbW9yeS5yZW1vdmUoZ3JvdXAtPm1hbmlmZXN0VVJMKCkp
OwotICAgIG1fY2FjaGVIb3N0U2V0LnJlbW92ZSh1cmxIb3N0SGFzaChncm91cC0+bWFuaWZlc3RV
UkwoKSkpOworICAgIG1fY2FjaGVzSW5NZW1vcnkucmVtb3ZlKGdyb3VwLm1hbmlmZXN0VVJMKCkp
OworICAgIG1fY2FjaGVIb3N0U2V0LnJlbW92ZSh1cmxIb3N0SGFzaChncm91cC5tYW5pZmVzdFVS
TCgpKSk7CiB9CiAKIGNvbnN0IFN0cmluZyYgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmNhY2hl
RGlyZWN0b3J5KCkgY29uc3QKQEAgLTk5Niw3ICs5ODksNyBAQCBib29sIEFwcGxpY2F0aW9uQ2Fj
aGVTdG9yYWdlOjpjaGVja09yaWdpblF1b3RhKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAs
IEFwcAogICAgIHJldHVybiB0cnVlOwogfQogCi1ib29sIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdl
OjpzdG9yZU5ld2VzdENhY2hlKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAsIEFwcGxpY2F0
aW9uQ2FjaGUqIG9sZENhY2hlLCBGYWlsdXJlUmVhc29uJiBmYWlsdXJlUmVhc29uKQorYm9vbCBB
cHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6c3RvcmVOZXdlc3RDYWNoZShBcHBsaWNhdGlvbkNhY2hl
R3JvdXAmIGdyb3VwLCBBcHBsaWNhdGlvbkNhY2hlKiBvbGRDYWNoZSwgRmFpbHVyZVJlYXNvbiYg
ZmFpbHVyZVJlYXNvbikKIHsKICAgICBvcGVuRGF0YWJhc2UodHJ1ZSk7CiAKQEAgLTEwMTIsMjQg
KzEwMDUsMjQgQEAgYm9vbCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6c3RvcmVOZXdlc3RDYWNo
ZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwLCBBcHAKIAogICAgIC8vIENoZWNrIGlmIHRo
aXMgd291bGQgcmVhY2ggdGhlIHBlci1vcmlnaW4gcXVvdGEuCiAgICAgaW50NjRfdCB0b3RhbFNw
YWNlTmVlZGVkSWdub3JlZDsKLSAgICBpZiAoIWNoZWNrT3JpZ2luUXVvdGEoZ3JvdXAsIG9sZENh
Y2hlLCBncm91cC0+bmV3ZXN0Q2FjaGUoKSwgdG90YWxTcGFjZU5lZWRlZElnbm9yZWQpKSB7Cisg
ICAgaWYgKCFjaGVja09yaWdpblF1b3RhKCZncm91cCwgb2xkQ2FjaGUsIGdyb3VwLm5ld2VzdENh
Y2hlKCksIHRvdGFsU3BhY2VOZWVkZWRJZ25vcmVkKSkgewogICAgICAgICBmYWlsdXJlUmVhc29u
ID0gT3JpZ2luUXVvdGFSZWFjaGVkOwogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogCiAg
ICAgR3JvdXBTdG9yYWdlSURKb3VybmFsIGdyb3VwU3RvcmFnZUlESm91cm5hbDsKLSAgICBpZiAo
IWdyb3VwLT5zdG9yYWdlSUQoKSkgeworICAgIGlmICghZ3JvdXAuc3RvcmFnZUlEKCkpIHsKICAg
ICAgICAgLy8gU3RvcmUgdGhlIGdyb3VwCi0gICAgICAgIGlmICghc3RvcmUoZ3JvdXAsICZncm91
cFN0b3JhZ2VJREpvdXJuYWwpKSB7CisgICAgICAgIGlmICghc3RvcmUoJmdyb3VwLCAmZ3JvdXBT
dG9yYWdlSURKb3VybmFsKSkgewogICAgICAgICAgICAgY2hlY2tGb3JNYXhTaXplUmVhY2hlZCgp
OwogICAgICAgICAgICAgZmFpbHVyZVJlYXNvbiA9IGlzTWF4aW11bVNpemVSZWFjaGVkKCkgPyBU
b3RhbFF1b3RhUmVhY2hlZCA6IERpc2tPck9wZXJhdGlvbkZhaWx1cmU7CiAgICAgICAgICAgICBy
ZXR1cm4gZmFsc2U7CiAgICAgICAgIH0KICAgICB9CiAgICAgCi0gICAgQVNTRVJUKGdyb3VwLT5u
ZXdlc3RDYWNoZSgpKTsKLSAgICBBU1NFUlQoIWdyb3VwLT5pc09ic29sZXRlKCkpOwotICAgIEFT
U0VSVCghZ3JvdXAtPm5ld2VzdENhY2hlKCktPnN0b3JhZ2VJRCgpKTsKKyAgICBBU1NFUlQoZ3Jv
dXAubmV3ZXN0Q2FjaGUoKSk7CisgICAgQVNTRVJUKCFncm91cC5pc09ic29sZXRlKCkpOworICAg
IEFTU0VSVCghZ3JvdXAubmV3ZXN0Q2FjaGUoKS0+c3RvcmFnZUlEKCkpOwogICAgIAogICAgIC8v
IExvZyB0aGUgc3RvcmFnZUlEIGNoYW5nZXMgdG8gdGhlIGluLW1lbW9yeSByZXNvdXJjZSBvYmpl
Y3RzLiBUaGUgam91cm5hbAogICAgIC8vIG9iamVjdCB3aWxsIHJvbGwgdGhlbSBiYWNrIGF1dG9t
YXRpY2FsbHkgaW4gY2FzZSBhIGRhdGFiYXNlIG9wZXJhdGlvbgpAQCAtMTAzNyw3ICsxMDMwLDcg
QEAgYm9vbCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6c3RvcmVOZXdlc3RDYWNoZShBcHBsaWNh
dGlvbkNhY2hlR3JvdXAqIGdyb3VwLCBBcHAKICAgICBSZXNvdXJjZVN0b3JhZ2VJREpvdXJuYWwg
cmVzb3VyY2VTdG9yYWdlSURKb3VybmFsOwogCiAgICAgLy8gU3RvcmUgdGhlIG5ld2VzdCBjYWNo
ZQotICAgIGlmICghc3RvcmUoZ3JvdXAtPm5ld2VzdENhY2hlKCksICZyZXNvdXJjZVN0b3JhZ2VJ
REpvdXJuYWwpKSB7CisgICAgaWYgKCFzdG9yZShncm91cC5uZXdlc3RDYWNoZSgpLCAmcmVzb3Vy
Y2VTdG9yYWdlSURKb3VybmFsKSkgewogICAgICAgICBjaGVja0Zvck1heFNpemVSZWFjaGVkKCk7
CiAgICAgICAgIGZhaWx1cmVSZWFzb24gPSBpc01heGltdW1TaXplUmVhY2hlZCgpID8gVG90YWxR
dW90YVJlYWNoZWQgOiBEaXNrT3JPcGVyYXRpb25GYWlsdXJlOwogICAgICAgICByZXR1cm4gZmFs
c2U7CkBAIC0xMDUxLDggKzEwNDQsOCBAQCBib29sIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpz
dG9yZU5ld2VzdENhY2hlKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAsIEFwcAogICAgICAg
ICByZXR1cm4gZmFsc2U7CiAgICAgfQogICAgIAotICAgIHN0YXRlbWVudC5iaW5kSW50NjQoMSwg
Z3JvdXAtPm5ld2VzdENhY2hlKCktPnN0b3JhZ2VJRCgpKTsKLSAgICBzdGF0ZW1lbnQuYmluZElu
dDY0KDIsIGdyb3VwLT5zdG9yYWdlSUQoKSk7CisgICAgc3RhdGVtZW50LmJpbmRJbnQ2NCgxLCBn
cm91cC5uZXdlc3RDYWNoZSgpLT5zdG9yYWdlSUQoKSk7CisgICAgc3RhdGVtZW50LmJpbmRJbnQ2
NCgyLCBncm91cC5zdG9yYWdlSUQoKSk7CiAgICAgCiAgICAgaWYgKCFleGVjdXRlU3RhdGVtZW50
KHN0YXRlbWVudCkpIHsKICAgICAgICAgZmFpbHVyZVJlYXNvbiA9IERpc2tPck9wZXJhdGlvbkZh
aWx1cmU7CkBAIC0xMDY1LDIyICsxMDU4LDI0IEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZVN0b3Jh
Z2U6OnN0b3JlTmV3ZXN0Q2FjaGUoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCwgQXBwCiAg
ICAgcmV0dXJuIHRydWU7CiB9CiAKLWJvb2wgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OnN0b3Jl
TmV3ZXN0Q2FjaGUoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCkKK2Jvb2wgQXBwbGljYXRp
b25DYWNoZVN0b3JhZ2U6OnN0b3JlTmV3ZXN0Q2FjaGUoQXBwbGljYXRpb25DYWNoZUdyb3VwJiBn
cm91cCkKIHsKICAgICAvLyBJZ25vcmUgdGhlIHJlYXNvbiBmb3IgZmFpbGluZywganVzdCBhdHRl
bXB0IHRoZSBzdG9yZS4KICAgICBGYWlsdXJlUmVhc29uIGlnbm9yZWRGYWlsdXJlUmVhc29uOwot
ICAgIHJldHVybiBzdG9yZU5ld2VzdENhY2hlKGdyb3VwLCAwLCBpZ25vcmVkRmFpbHVyZVJlYXNv
bik7CisgICAgcmV0dXJuIHN0b3JlTmV3ZXN0Q2FjaGUoZ3JvdXAsIG51bGxwdHIsIGlnbm9yZWRG
YWlsdXJlUmVhc29uKTsKIH0KIAotdGVtcGxhdGUgPHR5cGVuYW1lIENoYXJhY3RlclR5cGU+Ci1z
dGF0aWMgaW5saW5lIHZvaWQgcGFyc2VIZWFkZXIoY29uc3QgQ2hhcmFjdGVyVHlwZSogaGVhZGVy
LCBzaXplX3QgaGVhZGVyTGVuZ3RoLCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3RlbXBs
YXRlPHR5cGVuYW1lIENoYXJhY3RlclR5cGU+CitzdGF0aWMgaW5saW5lIHZvaWQgcGFyc2VIZWFk
ZXIoY29uc3QgQ2hhcmFjdGVyVHlwZSogaGVhZGVyLCB1bnNpZ25lZCBoZWFkZXJMZW5ndGgsIFJl
c291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewotICAgIHNpemVfdCBwb3MgPSBmaW5kKGhlYWRl
ciwgaGVhZGVyTGVuZ3RoLCAnOicpOwotICAgIEFTU0VSVChwb3MgIT0gbm90Rm91bmQpOwotICAg
IAotICAgIFN0cmluZyBoZWFkZXJOYW1lID0gQXRvbWljU3RyaW5nKGhlYWRlciwgcG9zKTsKLSAg
ICBTdHJpbmcgaGVhZGVyVmFsdWUgPSBTdHJpbmcoaGVhZGVyICsgcG9zICsgMSwgaGVhZGVyTGVu
Z3RoIC0gcG9zIC0gMSk7Ci0gICAgCisgICAgQVNTRVJUKGZpbmQoaGVhZGVyLCBoZWFkZXJMZW5n
dGgsICc6JykgIT0gbm90Rm91bmQpOworICAgIHVuc2lnbmVkIGNvbG9uUG9zaXRpb24gPSBmaW5k
KGhlYWRlciwgaGVhZGVyTGVuZ3RoLCAnOicpOworCisgICAgLy8gU2F2ZSBtZW1vcnkgYnkgcHV0
dGluZyB0aGUgaGVhZGVyIG5hbWVzIGludG8gYXRvbWljIHN0cmluZ3Mgc28gZWFjaCBpcyBzdG9y
ZWQgb25seSBvbmNlLAorICAgIC8vIGV2ZW4gdGhvdWdoIHRoZSBzZXRIVFRQSGVhZGVyRmllbGQg
ZnVuY3Rpb24gZG9lcyBub3QgcmVxdWlyZSBhbiBhdG9taWMgc3RyaW5nLgorICAgIEF0b21pY1N0
cmluZyBoZWFkZXJOYW1lIHsgaGVhZGVyLCBjb2xvblBvc2l0aW9uIH07CisgICAgU3RyaW5nIGhl
YWRlclZhbHVlIHsgaGVhZGVyICsgY29sb25Qb3NpdGlvbiArIDEsIGhlYWRlckxlbmd0aCAtIGNv
bG9uUG9zaXRpb24gLSAxIH07CisKICAgICByZXNwb25zZS5zZXRIVFRQSGVhZGVyRmllbGQoaGVh
ZGVyTmFtZSwgaGVhZGVyVmFsdWUpOwogfQogCkBAIC0xMTA3LDcgKzExMDIsNyBAQCBzdGF0aWMg
aW5saW5lIHZvaWQgcGFyc2VIZWFkZXJzKGNvbnN0IFN0cmluZyYgaGVhZGVycywgUmVzb3VyY2VS
ZXNwb25zZSYgcmVzcG9ucwogICAgIH0KIH0KICAgICAKLVBhc3NSZWZQdHI8QXBwbGljYXRpb25D
YWNoZT4gQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmxvYWRDYWNoZSh1bnNpZ25lZCBzdG9yYWdl
SUQpCitSZWZQdHI8QXBwbGljYXRpb25DYWNoZT4gQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6Omxv
YWRDYWNoZSh1bnNpZ25lZCBzdG9yYWdlSUQpCiB7CiAgICAgQVNTRVJUKFNRTGl0ZURhdGFiYXNl
VHJhY2tlcjo6aGFzVHJhbnNhY3Rpb25JblByb2dyZXNzKCkpOwogICAgIFNRTGl0ZVN0YXRlbWVu
dCBjYWNoZVN0YXRlbWVudChtX2RhdGFiYXNlLApAQCAtMTQwOCwxMCArMTQwMywxMSBAQCBib29s
IEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpkZWxldGVDYWNoZUdyb3VwKGNvbnN0IFN0cmluZyYg
bWFuaWZlc3RVUkwpCiAgICAgU1FMaXRlVHJhbnNhY3Rpb25JblByb2dyZXNzQXV0b0NvdW50ZXIg
dHJhbnNhY3Rpb25Db3VudGVyOwogCiAgICAgU1FMaXRlVHJhbnNhY3Rpb24gZGVsZXRlVHJhbnNh
Y3Rpb24obV9kYXRhYmFzZSk7CisKICAgICAvLyBDaGVjayB0byBzZWUgaWYgdGhlIGdyb3VwIGlz
IGluIG1lbW9yeS4KLSAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwID0gbV9jYWNoZXNJ
bk1lbW9yeS5nZXQobWFuaWZlc3RVUkwpOworICAgIGF1dG8qIGdyb3VwID0gbV9jYWNoZXNJbk1l
bW9yeS5nZXQobWFuaWZlc3RVUkwpOwogICAgIGlmIChncm91cCkKLSAgICAgICAgY2FjaGVHcm91
cE1hZGVPYnNvbGV0ZShncm91cCk7CisgICAgICAgIGNhY2hlR3JvdXBNYWRlT2Jzb2xldGUoKmdy
b3VwKTsKICAgICBlbHNlIHsKICAgICAgICAgLy8gVGhlIGNhY2hlIGdyb3VwIGlzIG5vdCBpbiBt
ZW1vcnksIHNvIHJlbW92ZSBpdCBmcm9tIHRoZSBkaXNrLgogICAgICAgICBvcGVuRGF0YWJhc2Uo
ZmFsc2UpOwpAQCAtMTQyNCw5ICsxNDIwLDkgQEAgYm9vbCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFn
ZTo6ZGVsZXRlQ2FjaGVHcm91cChjb25zdCBTdHJpbmcmIG1hbmlmZXN0VVJMKQogICAgIH0KIAog
ICAgIGRlbGV0ZVRyYW5zYWN0aW9uLmNvbW1pdCgpOwotICAgIAorCiAgICAgY2hlY2tGb3JEZWxl
dGVkUmVzb3VyY2VzKCk7Ci0gICAgCisKICAgICByZXR1cm4gdHJ1ZTsKIH0KIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVTdG9yYWdl
LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZVN0b3Jh
Z2UuaAppbmRleCBlNDhlODY2NzM1MzYyZDk0NzdhOGEyNTEwMDNjYzg2MTUwNTI3ZDE2Li45ZmEy
OTJlZTUwZmFlZTg5YzM1Yzg2MWE4Zjk5ZmExNmY5MDU0NzZkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UuaApA
QCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDgsIDIwMTAsIDIwMTEgQXBw
bGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcg
QXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCkBAIC00MSw3ICs0MSw3IEBAIGNsYXNzIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTsK
IGNsYXNzIFVSTDsKIGNsYXNzIFNlY3VyaXR5T3JpZ2luOwogY2xhc3MgU2hhcmVkQnVmZmVyOwot
dGVtcGxhdGUgPGNsYXNzIFQ+IGNsYXNzIFN0b3JhZ2VJREpvdXJuYWw7Cit0ZW1wbGF0ZTx0eXBl
bmFtZT4gY2xhc3MgU3RvcmFnZUlESm91cm5hbDsKIAogY2xhc3MgQXBwbGljYXRpb25DYWNoZVN0
b3JhZ2UgOiBwdWJsaWMgUmVmQ291bnRlZDxBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZT4gewogcHVi
bGljOgpAQCAtNzMsMTkgKzczLDE5IEBAIHB1YmxpYzoKIAogICAgIEFwcGxpY2F0aW9uQ2FjaGVH
cm91cCogZmluZE9yQ3JlYXRlQ2FjaGVHcm91cChjb25zdCBVUkwmIG1hbmlmZXN0VVJMKTsKICAg
ICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGZpbmRJbk1lbW9yeUNhY2hlR3JvdXAoY29uc3QgVVJM
JiBtYW5pZmVzdFVSTCkgY29uc3Q7Ci0gICAgdm9pZCBjYWNoZUdyb3VwRGVzdHJveWVkKEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cCopOwotICAgIHZvaWQgY2FjaGVHcm91cE1hZGVPYnNvbGV0ZShBcHBs
aWNhdGlvbkNhY2hlR3JvdXAqKTsKLSAgICAgICAgCi0gICAgYm9vbCBzdG9yZU5ld2VzdENhY2hl
KEFwcGxpY2F0aW9uQ2FjaGVHcm91cCosIEFwcGxpY2F0aW9uQ2FjaGUqIG9sZENhY2hlLCBGYWls
dXJlUmVhc29uJiBmYWlsdXJlUmVhc29uKTsKLSAgICBib29sIHN0b3JlTmV3ZXN0Q2FjaGUoQXBw
bGljYXRpb25DYWNoZUdyb3VwKik7IC8vIFVwZGF0ZXMgdGhlIGNhY2hlIGdyb3VwLCBidXQgZG9l
c24ndCByZW1vdmUgb2xkIGNhY2hlLgorICAgIHZvaWQgY2FjaGVHcm91cERlc3Ryb3llZChBcHBs
aWNhdGlvbkNhY2hlR3JvdXAmKTsKKyAgICB2b2lkIGNhY2hlR3JvdXBNYWRlT2Jzb2xldGUoQXBw
bGljYXRpb25DYWNoZUdyb3VwJik7CisKKyAgICBib29sIHN0b3JlTmV3ZXN0Q2FjaGUoQXBwbGlj
YXRpb25DYWNoZUdyb3VwJiwgQXBwbGljYXRpb25DYWNoZSogb2xkQ2FjaGUsIEZhaWx1cmVSZWFz
b24mKTsKKyAgICBib29sIHN0b3JlTmV3ZXN0Q2FjaGUoQXBwbGljYXRpb25DYWNoZUdyb3VwJik7
IC8vIFVwZGF0ZXMgdGhlIGNhY2hlIGdyb3VwLCBidXQgZG9lc24ndCByZW1vdmUgb2xkIGNhY2hl
LgogICAgIGJvb2wgc3RvcmUoQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiwgQXBwbGljYXRpb25D
YWNoZSopOwogICAgIGJvb2wgc3RvcmVVcGRhdGVkVHlwZShBcHBsaWNhdGlvbkNhY2hlUmVzb3Vy
Y2UqLCBBcHBsaWNhdGlvbkNhY2hlKik7CiAKICAgICAvLyBSZW1vdmVzIHRoZSBncm91cCBpZiB0
aGUgY2FjaGUgdG8gYmUgcmVtb3ZlZCBpcyB0aGUgbmV3ZXN0IG9uZSAoc28sIHN0b3JlTmV3ZXN0
Q2FjaGUoKSBuZWVkcyB0byBiZSBjYWxsZWQgYmVmb3JlaGFuZCB3aGVuIHVwZGF0aW5nKS4KICAg
ICB2b2lkIHJlbW92ZShBcHBsaWNhdGlvbkNhY2hlKik7Ci0gICAgCisKICAgICBXRUJDT1JFX0VY
UE9SVCB2b2lkIGVtcHR5KCk7Ci0gICAgCisKICAgICBib29sIGdldE1hbmlmZXN0VVJMcyhWZWN0
b3I8VVJMPiogdXJscyk7CiAgICAgYm9vbCBjYWNoZUdyb3VwU2l6ZShjb25zdCBTdHJpbmcmIG1h
bmlmZXN0VVJMLCBpbnQ2NF90KiBzaXplKTsKICAgICBib29sIGRlbGV0ZUNhY2hlR3JvdXAoY29u
c3QgU3RyaW5nJiBtYW5pZmVzdFVSTCk7CkBAIC0xMDUsMTQgKzEwNSwxNSBAQCBwdWJsaWM6CiAK
ICAgICBzdGF0aWMgaW50NjRfdCB1bmtub3duUXVvdGEoKSB7IHJldHVybiAtMTsgfQogICAgIHN0
YXRpYyBpbnQ2NF90IG5vUXVvdGEoKSB7IHJldHVybiBzdGQ6Om51bWVyaWNfbGltaXRzPGludDY0
X3Q+OjptYXgoKTsgfQorCiBwcml2YXRlOgogICAgIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlKGNv
bnN0IFN0cmluZyYgY2FjaGVEaXJlY3RvcnksIGNvbnN0IFN0cmluZyYgZmxhdEZpbGVTdWJkaXJl
Y3RvcnlOYW1lKTsKIAotICAgIFBhc3NSZWZQdHI8QXBwbGljYXRpb25DYWNoZT4gbG9hZENhY2hl
KHVuc2lnbmVkIHN0b3JhZ2VJRCk7CisgICAgUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+IGxvYWRD
YWNoZSh1bnNpZ25lZCBzdG9yYWdlSUQpOwogICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogbG9h
ZENhY2hlR3JvdXAoY29uc3QgVVJMJiBtYW5pZmVzdFVSTCk7CiAgICAgCi0gICAgdHlwZWRlZiBT
dG9yYWdlSURKb3VybmFsPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4gUmVzb3VyY2VTdG9yYWdl
SURKb3VybmFsOwotICAgIHR5cGVkZWYgU3RvcmFnZUlESm91cm5hbDxBcHBsaWNhdGlvbkNhY2hl
R3JvdXA+IEdyb3VwU3RvcmFnZUlESm91cm5hbDsKKyAgICB1c2luZyBSZXNvdXJjZVN0b3JhZ2VJ
REpvdXJuYWwgPSBTdG9yYWdlSURKb3VybmFsPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT47Cisg
ICAgdXNpbmcgR3JvdXBTdG9yYWdlSURKb3VybmFsID0gU3RvcmFnZUlESm91cm5hbDxBcHBsaWNh
dGlvbkNhY2hlR3JvdXA+OwogCiAgICAgYm9vbCBzdG9yZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAq
LCBHcm91cFN0b3JhZ2VJREpvdXJuYWwqKTsKICAgICBib29sIHN0b3JlKEFwcGxpY2F0aW9uQ2Fj
aGUqLCBSZXNvdXJjZVN0b3JhZ2VJREpvdXJuYWwqKTsKQEAgLTE1Miw4ICsxNTMsNyBAQCBwcml2
YXRlOgogICAgIC8vIHdlIGtlZXAgYSBoYXNoIHNldCBvZiB0aGUgaG9zdHMgb2YgdGhlIG1hbmlm
ZXN0IFVSTHMgb2YgYWxsIG5vbi1vYnNvbGV0ZSBjYWNoZSBncm91cHMuCiAgICAgSGFzaENvdW50
ZWRTZXQ8dW5zaWduZWQsIEFscmVhZHlIYXNoZWQ+IG1fY2FjaGVIb3N0U2V0OwogICAgIAotICAg
IHR5cGVkZWYgSGFzaE1hcDxTdHJpbmcsIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCo+IENhY2hlR3Jv
dXBNYXA7Ci0gICAgQ2FjaGVHcm91cE1hcCBtX2NhY2hlc0luTWVtb3J5OyAvLyBFeGNsdWRlcyBv
YnNvbGV0ZSBjYWNoZSBncm91cHMuCisgICAgSGFzaE1hcDxTdHJpbmcsIEFwcGxpY2F0aW9uQ2Fj
aGVHcm91cCo+IG1fY2FjaGVzSW5NZW1vcnk7IC8vIEV4Y2x1ZGVzIG9ic29sZXRlIGNhY2hlIGdy
b3Vwcy4KIAogICAgIGZyaWVuZCBjbGFzcyBXVEY6Ok5ldmVyRGVzdHJveWVkPEFwcGxpY2F0aW9u
Q2FjaGVTdG9yYWdlPjsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBw
Y2FjaGUvRE9NQXBwbGljYXRpb25DYWNoZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBw
Y2FjaGUvRE9NQXBwbGljYXRpb25DYWNoZS5jcHAKaW5kZXggNGQwZWVmMjI0YzBhYmQxODkxNWIz
NjNlMTUxZTAwMDQ1ZDA5ODkxYy4uZWQ4ZmFkOGY2OTYxMGE3M2VmNWRmMWE3N2UzN2NlZjJlYTQ0
NWYwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0RPTUFwcGxp
Y2F0aW9uQ2FjaGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9ET01B
cHBsaWNhdGlvbkNhY2hlLmNwcApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMp
IDIwMDgsIDIwMDkgQXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgorICogQ29weXJpZ2h0
IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgogICoKICAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yOSwxMTEgKzI5LDg0IEBACiAjaW5jbHVkZSAiQXBw
bGljYXRpb25DYWNoZUhvc3QuaCIKICNpbmNsdWRlICJEb2N1bWVudC5oIgogI2luY2x1ZGUgIkRv
Y3VtZW50TG9hZGVyLmgiCi0jaW5jbHVkZSAiRXZlbnQuaCIKLSNpbmNsdWRlICJFdmVudExpc3Rl
bmVyLmgiCi0jaW5jbHVkZSAiRXZlbnROYW1lcy5oIgogI2luY2x1ZGUgIkV4Y2VwdGlvbkNvZGUu
aCIKICNpbmNsdWRlICJGcmFtZS5oIgotI2luY2x1ZGUgIkZyYW1lTG9hZGVyLmgiCiAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAotRE9NQXBwbGljYXRpb25DYWNoZTo6RE9NQXBwbGljYXRpb25DYWNo
ZShGcmFtZSogZnJhbWUpCi0gICAgOiBET01XaW5kb3dQcm9wZXJ0eShmcmFtZSkKK0RPTUFwcGxp
Y2F0aW9uQ2FjaGU6OkRPTUFwcGxpY2F0aW9uQ2FjaGUoRnJhbWUmIGZyYW1lKQorICAgIDogRE9N
V2luZG93UHJvcGVydHkoJmZyYW1lKQogewotICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0KiBjYWNo
ZUhvc3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpOwotICAgIGlmIChjYWNoZUhvc3QpCi0gICAg
ICAgIGNhY2hlSG9zdC0+c2V0RE9NQXBwbGljYXRpb25DYWNoZSh0aGlzKTsKKyAgICBpZiAoYXV0
byogaG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkpCisgICAgICAgIGhvc3QtPnNldERPTUFw
cGxpY2F0aW9uQ2FjaGUodGhpcyk7CiB9CiAKIHZvaWQgRE9NQXBwbGljYXRpb25DYWNoZTo6ZGlz
Y29ubmVjdEZyYW1lRm9yRG9jdW1lbnRTdXNwZW5zaW9uKCkKIHsKLSAgICBpZiAoQXBwbGljYXRp
b25DYWNoZUhvc3QqIGNhY2hlSG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkpCi0gICAgICAg
IGNhY2hlSG9zdC0+c2V0RE9NQXBwbGljYXRpb25DYWNoZShudWxscHRyKTsKKyAgICBpZiAoYXV0
byogaG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkpCisgICAgICAgIGhvc3QtPnNldERPTUFw
cGxpY2F0aW9uQ2FjaGUobnVsbHB0cik7CiAgICAgRE9NV2luZG93UHJvcGVydHk6OmRpc2Nvbm5l
Y3RGcmFtZUZvckRvY3VtZW50U3VzcGVuc2lvbigpOwogfQogCiB2b2lkIERPTUFwcGxpY2F0aW9u
Q2FjaGU6OnJlY29ubmVjdEZyYW1lRnJvbURvY3VtZW50U3VzcGVuc2lvbihGcmFtZSogZnJhbWUp
CiB7CiAgICAgRE9NV2luZG93UHJvcGVydHk6OnJlY29ubmVjdEZyYW1lRnJvbURvY3VtZW50U3Vz
cGVuc2lvbihmcmFtZSk7Ci0gICAgaWYgKEFwcGxpY2F0aW9uQ2FjaGVIb3N0KiBjYWNoZUhvc3Qg
PSBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpKQotICAgICAgICBjYWNoZUhvc3QtPnNldERPTUFwcGxp
Y2F0aW9uQ2FjaGUodGhpcyk7CisgICAgaWYgKGF1dG8qIGhvc3QgPSBhcHBsaWNhdGlvbkNhY2hl
SG9zdCgpKQorICAgICAgICBob3N0LT5zZXRET01BcHBsaWNhdGlvbkNhY2hlKHRoaXMpOwogfQog
CiB2b2lkIERPTUFwcGxpY2F0aW9uQ2FjaGU6OndpbGxEZXN0cm95R2xvYmFsT2JqZWN0SW5GcmFt
ZSgpCiB7Ci0gICAgaWYgKEFwcGxpY2F0aW9uQ2FjaGVIb3N0KiBjYWNoZUhvc3QgPSBhcHBsaWNh
dGlvbkNhY2hlSG9zdCgpKQotICAgICAgICBjYWNoZUhvc3QtPnNldERPTUFwcGxpY2F0aW9uQ2Fj
aGUobnVsbHB0cik7CisgICAgaWYgKGF1dG8qIGhvc3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9zdCgp
KQorICAgICAgICBob3N0LT5zZXRET01BcHBsaWNhdGlvbkNhY2hlKG51bGxwdHIpOwogICAgIERP
TVdpbmRvd1Byb3BlcnR5Ojp3aWxsRGVzdHJveUdsb2JhbE9iamVjdEluRnJhbWUoKTsKIH0KIAog
QXBwbGljYXRpb25DYWNoZUhvc3QqIERPTUFwcGxpY2F0aW9uQ2FjaGU6OmFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KCkgY29uc3QKIHsKLSAgICBpZiAoIW1fZnJhbWUgfHwgIW1fZnJhbWUtPmxvYWRlcigp
LmRvY3VtZW50TG9hZGVyKCkpCisgICAgaWYgKCFtX2ZyYW1lKQogICAgICAgICByZXR1cm4gbnVs
bHB0cjsKLSAgICByZXR1cm4gbV9mcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKS0+YXBw
bGljYXRpb25DYWNoZUhvc3QoKTsKKyAgICBhdXRvKiBkb2N1bWVudExvYWRlciA9IG1fZnJhbWUt
PmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCk7CisgICAgaWYgKCFkb2N1bWVudExvYWRlcikKKyAg
ICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgcmV0dXJuICZkb2N1bWVudExvYWRlci0+YXBwbGlj
YXRpb25DYWNoZUhvc3QoKTsKIH0KIAogdW5zaWduZWQgc2hvcnQgRE9NQXBwbGljYXRpb25DYWNo
ZTo6c3RhdHVzKCkgY29uc3QKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdCogY2FjaGVIb3N0
ID0gYXBwbGljYXRpb25DYWNoZUhvc3QoKTsKLSAgICBpZiAoIWNhY2hlSG9zdCkKKyAgICBhdXRv
KiBob3N0ID0gYXBwbGljYXRpb25DYWNoZUhvc3QoKTsKKyAgICBpZiAoIWhvc3QpCiAgICAgICAg
IHJldHVybiBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6VU5DQUNIRUQ7Ci0gICAgcmV0dXJuIGNhY2hl
SG9zdC0+c3RhdHVzKCk7CisgICAgcmV0dXJuIGhvc3QtPnN0YXR1cygpOwogfQogCiBFeGNlcHRp
b25Pcjx2b2lkPiBET01BcHBsaWNhdGlvbkNhY2hlOjp1cGRhdGUoKQogewotICAgIGF1dG8qIGNh
Y2hlSG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7Ci0gICAgaWYgKCFjYWNoZUhvc3QgfHwg
IWNhY2hlSG9zdC0+dXBkYXRlKCkpCisgICAgYXV0byogaG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVI
b3N0KCk7CisgICAgaWYgKCFob3N0IHx8ICFob3N0LT51cGRhdGUoKSkKICAgICAgICAgcmV0dXJu
IEV4Y2VwdGlvbiB7IElOVkFMSURfU1RBVEVfRVJSIH07CiAgICAgcmV0dXJuIHsgfTsKIH0KIAog
RXhjZXB0aW9uT3I8dm9pZD4gRE9NQXBwbGljYXRpb25DYWNoZTo6c3dhcENhY2hlKCkKIHsKLSAg
ICBhdXRvKiBjYWNoZUhvc3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpOwotICAgIGlmICghY2Fj
aGVIb3N0IHx8ICFjYWNoZUhvc3QtPnN3YXBDYWNoZSgpKQorICAgIGF1dG8qIGhvc3QgPSBhcHBs
aWNhdGlvbkNhY2hlSG9zdCgpOworICAgIGlmICghaG9zdCB8fCAhaG9zdC0+c3dhcENhY2hlKCkp
CiAgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJTlZBTElEX1NUQVRFX0VSUiB9OwogICAgIHJl
dHVybiB7IH07CiB9CiAKIHZvaWQgRE9NQXBwbGljYXRpb25DYWNoZTo6YWJvcnQoKQogewotICAg
IEFwcGxpY2F0aW9uQ2FjaGVIb3N0KiBjYWNoZUhvc3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9zdCgp
OwotICAgIGlmIChjYWNoZUhvc3QpCi0gICAgICAgIGNhY2hlSG9zdC0+YWJvcnQoKTsKKyAgICBp
ZiAoYXV0byogaG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkpCisgICAgICAgIGhvc3QtPmFi
b3J0KCk7CiB9CiAKIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIERPTUFwcGxpY2F0aW9uQ2FjaGU6
OnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSBjb25zdAogewotICAgIGlmIChtX2ZyYW1lKQotICAg
ICAgICByZXR1cm4gbV9mcmFtZS0+ZG9jdW1lbnQoKTsKLSAgICByZXR1cm4gbnVsbHB0cjsKLX0K
LQotY29uc3QgQXRvbWljU3RyaW5nJiBET01BcHBsaWNhdGlvbkNhY2hlOjp0b0V2ZW50VHlwZShB
cHBsaWNhdGlvbkNhY2hlSG9zdDo6RXZlbnRJRCBpZCkKLXsKLSAgICBzd2l0Y2ggKGlkKSB7Ci0g
ICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q0hFQ0tJTkdfRVZFTlQ6Ci0gICAgICAgIHJl
dHVybiBldmVudE5hbWVzKCkuY2hlY2tpbmdFdmVudDsKLSAgICBjYXNlIEFwcGxpY2F0aW9uQ2Fj
aGVIb3N0OjpFUlJPUl9FVkVOVDoKLSAgICAgICAgcmV0dXJuIGV2ZW50TmFtZXMoKS5lcnJvckV2
ZW50OwotICAgIGNhc2UgQXBwbGljYXRpb25DYWNoZUhvc3Q6Ok5PVVBEQVRFX0VWRU5UOgotICAg
ICAgICByZXR1cm4gZXZlbnROYW1lcygpLm5vdXBkYXRlRXZlbnQ7Ci0gICAgY2FzZSBBcHBsaWNh
dGlvbkNhY2hlSG9zdDo6RE9XTkxPQURJTkdfRVZFTlQ6Ci0gICAgICAgIHJldHVybiBldmVudE5h
bWVzKCkuZG93bmxvYWRpbmdFdmVudDsKLSAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpQ
Uk9HUkVTU19FVkVOVDoKLSAgICAgICAgcmV0dXJuIGV2ZW50TmFtZXMoKS5wcm9ncmVzc0V2ZW50
OwotICAgIGNhc2UgQXBwbGljYXRpb25DYWNoZUhvc3Q6OlVQREFURVJFQURZX0VWRU5UOgotICAg
ICAgICByZXR1cm4gZXZlbnROYW1lcygpLnVwZGF0ZXJlYWR5RXZlbnQ7Ci0gICAgY2FzZSBBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6Q0FDSEVEX0VWRU5UOgotICAgICAgICByZXR1cm4gZXZlbnROYW1l
cygpLmNhY2hlZEV2ZW50OwotICAgIGNhc2UgQXBwbGljYXRpb25DYWNoZUhvc3Q6Ok9CU09MRVRF
X0VWRU5UOiAgICAgICAgICAgIAotICAgICAgICByZXR1cm4gZXZlbnROYW1lcygpLm9ic29sZXRl
RXZlbnQ7Ci0gICAgfQotICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgIHJldHVybiBldmVu
dE5hbWVzKCkuZXJyb3JFdmVudDsKKyAgICBpZiAoIW1fZnJhbWUpCisgICAgICAgIHJldHVybiBu
dWxscHRyOworICAgIHJldHVybiBtX2ZyYW1lLT5kb2N1bWVudCgpOwogfQogCiB9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUv
RE9NQXBwbGljYXRpb25DYWNoZS5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0RP
TUFwcGxpY2F0aW9uQ2FjaGUuaAppbmRleCAzZjIwZDhjMmI3NTE5NzMyZmFhMWY3ZDBlZTBmOTA0
YTk3ODUwMTlkLi5jZjZkMmE5ZDk5ZjcwNjhjMDZjYzJmNGEyNzExMWUyZGNkYzFlNjc1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25DYWNo
ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9ET01BcHBsaWNhdGlvbkNh
Y2hlLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA4LCAyMDA5IEFw
cGxlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOC0yMDE3
IEFwcGxlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucwpAQCAtMjUsNDYgKzI1LDM5IEBACiAKICNwcmFnbWEgb25jZQogCi0jaW5jbHVkZSAi
QXBwbGljYXRpb25DYWNoZUhvc3QuaCIKICNpbmNsdWRlICJET01XaW5kb3dQcm9wZXJ0eS5oIgog
I2luY2x1ZGUgIkV2ZW50VGFyZ2V0LmgiCi0jaW5jbHVkZSAiRXhjZXB0aW9uT3IuaCIKLSNpbmNs
dWRlICJTY3JpcHRXcmFwcGFibGUuaCIKLSNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgotI2luY2x1
ZGUgPHd0Zi90ZXh0L0F0b21pY1N0cmluZ0hhc2guaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewog
CitjbGFzcyBBcHBsaWNhdGlvbkNhY2hlSG9zdDsKIGNsYXNzIEZyYW1lOwotY2xhc3MgVVJMOwog
CiBjbGFzcyBET01BcHBsaWNhdGlvbkNhY2hlIGZpbmFsIDogcHVibGljIFJlZkNvdW50ZWQ8RE9N
QXBwbGljYXRpb25DYWNoZT4sIHB1YmxpYyBFdmVudFRhcmdldFdpdGhJbmxpbmVEYXRhLCBwdWJs
aWMgRE9NV2luZG93UHJvcGVydHkgewogcHVibGljOgotICAgIHN0YXRpYyBSZWY8RE9NQXBwbGlj
YXRpb25DYWNoZT4gY3JlYXRlKEZyYW1lKiBmcmFtZSkgeyByZXR1cm4gYWRvcHRSZWYoKm5ldyBE
T01BcHBsaWNhdGlvbkNhY2hlKGZyYW1lKSk7IH0KKyAgICBzdGF0aWMgUmVmPERPTUFwcGxpY2F0
aW9uQ2FjaGU+IGNyZWF0ZShGcmFtZSYgZnJhbWUpIHsgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRE9N
QXBwbGljYXRpb25DYWNoZShmcmFtZSkpOyB9CiAgICAgdmlydHVhbCB+RE9NQXBwbGljYXRpb25D
YWNoZSgpIHsgQVNTRVJUKCFtX2ZyYW1lKTsgfQogCi0gICAgdm9pZCBkaXNjb25uZWN0RnJhbWVG
b3JEb2N1bWVudFN1c3BlbnNpb24oKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlY29ubmVjdEZyYW1l
RnJvbURvY3VtZW50U3VzcGVuc2lvbihGcmFtZSopIG92ZXJyaWRlOwotICAgIHZvaWQgd2lsbERl
c3Ryb3lHbG9iYWxPYmplY3RJbkZyYW1lKCkgb3ZlcnJpZGU7Ci0KICAgICB1bnNpZ25lZCBzaG9y
dCBzdGF0dXMoKSBjb25zdDsKICAgICBFeGNlcHRpb25Pcjx2b2lkPiB1cGRhdGUoKTsKICAgICBF
eGNlcHRpb25Pcjx2b2lkPiBzd2FwQ2FjaGUoKTsKICAgICB2b2lkIGFib3J0KCk7CiAKLSAgICB1
c2luZyBSZWZDb3VudGVkPERPTUFwcGxpY2F0aW9uQ2FjaGU+OjpyZWY7Ci0gICAgdXNpbmcgUmVm
Q291bnRlZDxET01BcHBsaWNhdGlvbkNhY2hlPjo6ZGVyZWY7CisgICAgdXNpbmcgUmVmQ291bnRl
ZDo6cmVmOworICAgIHVzaW5nIFJlZkNvdW50ZWQ6OmRlcmVmOwogCi0gICAgRXZlbnRUYXJnZXRJ
bnRlcmZhY2UgZXZlbnRUYXJnZXRJbnRlcmZhY2UoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBE
T01BcHBsaWNhdGlvbkNhY2hlRXZlbnRUYXJnZXRJbnRlcmZhY2VUeXBlOyB9Ci0gICAgU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNvbnN0IG92ZXJyaWRl
OworcHJpdmF0ZToKKyAgICBleHBsaWNpdCBET01BcHBsaWNhdGlvbkNhY2hlKEZyYW1lJik7CiAK
LSAgICBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5nJiB0b0V2ZW50VHlwZShBcHBsaWNhdGlvbkNh
Y2hlSG9zdDo6RXZlbnRJRCBpZCk7CisgICAgdm9pZCByZWZFdmVudFRhcmdldCgpIGZpbmFsIHsg
cmVmKCk7IH0KKyAgICB2b2lkIGRlcmVmRXZlbnRUYXJnZXQoKSBmaW5hbCB7IGRlcmVmKCk7IH0K
IAotcHJpdmF0ZToKLSAgICBleHBsaWNpdCBET01BcHBsaWNhdGlvbkNhY2hlKEZyYW1lKik7Cisg
ICAgRXZlbnRUYXJnZXRJbnRlcmZhY2UgZXZlbnRUYXJnZXRJbnRlcmZhY2UoKSBjb25zdCBmaW5h
bCB7IHJldHVybiBET01BcHBsaWNhdGlvbkNhY2hlRXZlbnRUYXJnZXRJbnRlcmZhY2VUeXBlOyB9
CisgICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNv
bnN0IGZpbmFsOwogCi0gICAgdm9pZCByZWZFdmVudFRhcmdldCgpIG92ZXJyaWRlIHsgcmVmKCk7
IH0KLSAgICB2b2lkIGRlcmVmRXZlbnRUYXJnZXQoKSBvdmVycmlkZSB7IGRlcmVmKCk7IH0KKyAg
ICB2b2lkIGRpc2Nvbm5lY3RGcmFtZUZvckRvY3VtZW50U3VzcGVuc2lvbigpIGZpbmFsOworICAg
IHZvaWQgcmVjb25uZWN0RnJhbWVGcm9tRG9jdW1lbnRTdXNwZW5zaW9uKEZyYW1lKikgZmluYWw7
CisgICAgdm9pZCB3aWxsRGVzdHJveUdsb2JhbE9iamVjdEluRnJhbWUoKSBmaW5hbDsKIAogICAg
IEFwcGxpY2F0aW9uQ2FjaGVIb3N0KiBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpIGNvbnN0OwogfTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9NYW5pZmVzdFBhcnNl
ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvTWFuaWZlc3RQYXJzZXIuY3Bw
CmluZGV4IDYwMTE0MWQ2ZmY2NjQ2NTU0NmI4MWMyNGEwZmE4YjliOTFkYzRjOTUuLjVjMTUxMzU5
ZGU5ODNhODFhNzU2MDUzYmJlY2RjZmI4OWI0NTgyNjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9hcHBjYWNoZS9NYW5pZmVzdFBhcnNlci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2FwcGNhY2hlL01hbmlmZXN0UGFyc2VyLmNwcApAQCAtMTE5LDggKzExOSw3IEBA
IGJvb2wgcGFyc2VNYW5pZmVzdChjb25zdCBVUkwmIG1hbmlmZXN0VVJMLCBjb25zdCBjaGFyKiBk
YXRhLCBpbnQgbGVuZ3RoLCBNYW5pZmVzCiAgICAgICAgICAgICBpZiAoIXVybC5pc1ZhbGlkKCkp
CiAgICAgICAgICAgICAgICAgY29udGludWU7CiAKLSAgICAgICAgICAgIGlmICh1cmwuaGFzRnJh
Z21lbnRJZGVudGlmaWVyKCkpCi0gICAgICAgICAgICAgICAgdXJsLnJlbW92ZUZyYWdtZW50SWRl
bnRpZmllcigpOworICAgICAgICAgICAgdXJsLnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpOwog
ICAgICAgICAgICAgCiAgICAgICAgICAgICBpZiAoIWVxdWFsSWdub3JpbmdBU0NJSUNhc2UodXJs
LnByb3RvY29sKCksIG1hbmlmZXN0VVJMLnByb3RvY29sKCkpKQogICAgICAgICAgICAgICAgIGNv
bnRpbnVlOwpAQCAtMTUwLDggKzE0OSw3IEBAIGJvb2wgcGFyc2VNYW5pZmVzdChjb25zdCBVUkwm
IG1hbmlmZXN0VVJMLCBjb25zdCBjaGFyKiBkYXRhLCBpbnQgbGVuZ3RoLCBNYW5pZmVzCiAgICAg
ICAgICAgICBVUkwgbmFtZXNwYWNlVVJMKG1hbmlmZXN0VVJMLCBsaW5lLnN1YnN0cmluZygwLCBw
IC0gdXBjb252ZXJ0ZWRMaW5lQ2hhcmFjdGVycykpOwogICAgICAgICAgICAgaWYgKCFuYW1lc3Bh
Y2VVUkwuaXNWYWxpZCgpKQogICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgICAg
aWYgKG5hbWVzcGFjZVVSTC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSkKLSAgICAgICAgICAgICAg
ICBuYW1lc3BhY2VVUkwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CisgICAgICAgICAgICBu
YW1lc3BhY2VVUkwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CiAKICAgICAgICAgICAgIGlm
ICghcHJvdG9jb2xIb3N0QW5kUG9ydEFyZUVxdWFsKG1hbmlmZXN0VVJMLCBuYW1lc3BhY2VVUkwp
KQogICAgICAgICAgICAgICAgIGNvbnRpbnVlOwpAQCAtMTY4LDggKzE2Niw3IEBAIGJvb2wgcGFy
c2VNYW5pZmVzdChjb25zdCBVUkwmIG1hbmlmZXN0VVJMLCBjb25zdCBjaGFyKiBkYXRhLCBpbnQg
bGVuZ3RoLCBNYW5pZmVzCiAgICAgICAgICAgICBVUkwgZmFsbGJhY2tVUkwobWFuaWZlc3RVUkws
IFN0cmluZyhmYWxsYmFja1N0YXJ0LCBwIC0gZmFsbGJhY2tTdGFydCkpOwogICAgICAgICAgICAg
aWYgKCFmYWxsYmFja1VSTC5pc1ZhbGlkKCkpCiAgICAgICAgICAgICAgICAgY29udGludWU7Ci0g
ICAgICAgICAgICBpZiAoZmFsbGJhY2tVUkwuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkpCi0gICAg
ICAgICAgICAgICAgZmFsbGJhY2tVUkwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CisgICAg
ICAgICAgICBmYWxsYmFja1VSTC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKIAogICAgICAg
ICAgICAgaWYgKCFwcm90b2NvbEhvc3RBbmRQb3J0QXJlRXF1YWwobWFuaWZlc3RVUkwsIGZhbGxi
YWNrVVJMKSkKICAgICAgICAgICAgICAgICBjb250aW51ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9NYW5pZmVzdFBhcnNlci5oIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2FwcGNhY2hlL01hbmlmZXN0UGFyc2VyLmgKaW5kZXggNjYxMmMwMGY3OTUxN2Q4NmRh
Y2U0Mzk3MWIzNWY3YjBhMTZmYTY3NS4uYjI4MjQ5ZWJlNDdmNWQ2NmQyZTIxNDYzOTczMTA2ZjEw
Y2MyYmY1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL01hbmlm
ZXN0UGFyc2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL01hbmlmZXN0
UGFyc2VyLmgKQEAgLTI2LDE4ICsyNiwxOSBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJB
cHBsaWNhdGlvbkNhY2hlLmgiCisjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KIAogbmFtZXNwYWNl
IFdlYkNvcmUgewogCi0gICAgY2xhc3MgVVJMOworY2xhc3MgVVJMOwogCi0gICAgc3RydWN0IE1h
bmlmZXN0IHsKLSAgICAgICAgVmVjdG9yPFVSTD4gb25saW5lV2hpdGVsaXN0ZWRVUkxzOwotICAg
ICAgICBIYXNoU2V0PFN0cmluZz4gZXhwbGljaXRVUkxzOwotICAgICAgICBGYWxsYmFja1VSTFZl
Y3RvciBmYWxsYmFja1VSTHM7Ci0gICAgICAgIGJvb2wgYWxsb3dBbGxOZXR3b3JrUmVxdWVzdHM7
IC8vIFdpbGRjYXJkIGZvdW5kIGluIE5FVFdPUksgc2VjdGlvbi4KLSAgICB9Oworc3RydWN0IE1h
bmlmZXN0IHsKKyAgICBWZWN0b3I8VVJMPiBvbmxpbmVXaGl0ZWxpc3RlZFVSTHM7CisgICAgSGFz
aFNldDxTdHJpbmc+IGV4cGxpY2l0VVJMczsKKyAgICBGYWxsYmFja1VSTFZlY3RvciBmYWxsYmFj
a1VSTHM7CisgICAgYm9vbCBhbGxvd0FsbE5ldHdvcmtSZXF1ZXN0czsgLy8gV2lsZGNhcmQgZm91
bmQgaW4gTkVUV09SSyBzZWN0aW9uLgorfTsKIAotICAgIGJvb2wgcGFyc2VNYW5pZmVzdChjb25z
dCBVUkwmIG1hbmlmZXN0VVJMLCBjb25zdCBjaGFyKiBkYXRhLCBpbnQgbGVuZ3RoLCBNYW5pZmVz
dCYpOworYm9vbCBwYXJzZU1hbmlmZXN0KGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwsIGNvbnN0IGNo
YXIqIGRhdGEsIGludCBsZW5ndGgsIE1hbmlmZXN0Jik7CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZS5jcHAKaW5kZXggZTg5YTQ5
OWRmNDA0NDZjMzI2MGJiZmYxYjI4ZGUwZDlhZDk3N2EwZS4uNWUwNWJlMjJjN2Q0ZWE3ZjEyMmJh
NDExNzg2OTNmMjVlZDJlMGVkYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Fy
Y2hpdmUvQXJjaGl2ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJj
aGl2ZS5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA4IEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOC0yMDE3IEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucwpAQCAtMzcsMTcgKzM3LDE3IEBAIEFyY2hpdmU6On5BcmNoaXZlKCkKIAogdm9pZCBBcmNo
aXZlOjpjbGVhckFsbFN1YmZyYW1lQXJjaGl2ZXMoKQogewotICAgIFZlY3RvcjxSZWZQdHI8QXJj
aGl2ZT4+IGNsZWFyZWRBcmNoaXZlczsKLSAgICBjbGVhckFsbFN1YmZyYW1lQXJjaGl2ZXNJbXBs
KCZjbGVhcmVkQXJjaGl2ZXMpOworICAgIEhhc2hTZXQ8QXJjaGl2ZSo+IGNsZWFyZWRBcmNoaXZl
czsKKyAgICBjbGVhcmVkQXJjaGl2ZXMuYWRkKHRoaXMpOworICAgIGNsZWFyQWxsU3ViZnJhbWVB
cmNoaXZlcyhjbGVhcmVkQXJjaGl2ZXMpOwogfQogCi12b2lkIEFyY2hpdmU6OmNsZWFyQWxsU3Vi
ZnJhbWVBcmNoaXZlc0ltcGwoVmVjdG9yPFJlZlB0cjxBcmNoaXZlPj4qIGNsZWFyZWRBcmNoaXZl
cykKK3ZvaWQgQXJjaGl2ZTo6Y2xlYXJBbGxTdWJmcmFtZUFyY2hpdmVzKEhhc2hTZXQ8QXJjaGl2
ZSo+JiBjbGVhcmVkQXJjaGl2ZXMpCiB7CisgICAgQVNTRVJUKGNsZWFyZWRBcmNoaXZlcy5jb250
YWlucyh0aGlzKSk7CiAgICAgZm9yIChhdXRvJiBhcmNoaXZlIDogbV9zdWJmcmFtZUFyY2hpdmVz
KSB7Ci0gICAgICAgIGlmICghY2xlYXJlZEFyY2hpdmVzLT5jb250YWlucyhhcmNoaXZlKSkgewot
ICAgICAgICAgICAgY2xlYXJlZEFyY2hpdmVzLT5hcHBlbmQoYXJjaGl2ZSk7Ci0gICAgICAgICAg
ICBhcmNoaXZlLT5jbGVhckFsbFN1YmZyYW1lQXJjaGl2ZXNJbXBsKGNsZWFyZWRBcmNoaXZlcyk7
Ci0gICAgICAgIH0KKyAgICAgICAgaWYgKGNsZWFyZWRBcmNoaXZlcy5hZGQoYXJjaGl2ZS5wdHIo
KSkpCisgICAgICAgICAgICBhcmNoaXZlLT5jbGVhckFsbFN1YmZyYW1lQXJjaGl2ZXMoY2xlYXJl
ZEFyY2hpdmVzKTsKICAgICB9CiAgICAgbV9zdWJmcmFtZUFyY2hpdmVzLmNsZWFyKCk7CiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmgKaW5kZXggZjIwNjU0OTMyMjQyM2E3
ZmIyNDAwZGU1OGM5ZjRhMTkyMmRkYWVlNy4uZmY3NGNlMjgzMWFhNGQyNzM1NDJmMTJkOTkzNzgy
NDUxNjAyZTNjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJj
aGl2ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmUuaApAQCAt
MSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDggQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yOSw0
MSArMjksMzggQEAKICNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAiQXJjaGl2ZVJlc291cmNlLmgi
Ci0KLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVk
Lmg+Ci0jaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KKyNp
bmNsdWRlIDx3dGYvSGFzaFNldC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIEFy
Y2hpdmUgOiBwdWJsaWMgUmVmQ291bnRlZDxBcmNoaXZlPiB7CiBwdWJsaWM6Ci0gICAgZW51bSBU
eXBlIHsKLSAgICAgIFdlYkFyY2hpdmUsCi0gICAgICBNSFRNTAotICAgIH07CiAgICAgdmlydHVh
bCB+QXJjaGl2ZSgpOwotICAgIHZpcnR1YWwgVHlwZSB0eXBlKCkgY29uc3QgPSAwOworCisgICAg
dmlydHVhbCBib29sIHNob3VsZExvYWRGcm9tQXJjaGl2ZU9ubHkoKSBjb25zdCA9IDA7CisgICAg
dmlydHVhbCBib29sIHNob3VsZE92ZXJyaWRlQmFzZVVSTCgpIGNvbnN0ID0gMDsKKyAgICB2aXJ0
dWFsIGJvb2wgc2hvdWxkVXNlTWFpblJlc291cmNlRW5jb2RpbmcoKSBjb25zdCA9IDA7CisgICAg
dmlydHVhbCBib29sIHNob3VsZFVzZU1haW5SZXNvdXJjZVVSTCgpIGNvbnN0ID0gMDsKKwogICAg
IEFyY2hpdmVSZXNvdXJjZSogbWFpblJlc291cmNlKCkgeyByZXR1cm4gbV9tYWluUmVzb3VyY2Uu
Z2V0KCk7IH0KLSAgICBjb25zdCBWZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+JiBzdWJy
ZXNvdXJjZXMoKSBjb25zdCB7IHJldHVybiBtX3N1YnJlc291cmNlczsgfQotICAgIGNvbnN0IFZl
Y3RvcjxSZWZQdHI8QXJjaGl2ZT4+JiBzdWJmcmFtZUFyY2hpdmVzKCkgY29uc3QgeyByZXR1cm4g
bV9zdWJmcmFtZUFyY2hpdmVzOyB9CisgICAgY29uc3QgVmVjdG9yPFJlZjxBcmNoaXZlUmVzb3Vy
Y2U+PiYgc3VicmVzb3VyY2VzKCkgY29uc3QgeyByZXR1cm4gbV9zdWJyZXNvdXJjZXM7IH0KKyAg
ICBjb25zdCBWZWN0b3I8UmVmPEFyY2hpdmU+PiYgc3ViZnJhbWVBcmNoaXZlcygpIGNvbnN0IHsg
cmV0dXJuIG1fc3ViZnJhbWVBcmNoaXZlczsgfQogCiBwcm90ZWN0ZWQ6CiAgICAgLy8gVGhlc2Ug
bWV0aG9kcyBhcmUgbWVhbnQgZm9yIHN1YmNsYXNzZXMgZm9yIGRpZmZlcmVudCBhcmNoaXZlIHR5
cGVzIHRvIGFkZCByZXNvdXJjZXMgaW4gdG8gdGhlIGFyY2hpdmUsCiAgICAgLy8gYW5kIHNob3Vs
ZCBub3QgYmUgZXhwb3NlZCBhcyBhcmNoaXZlcyBzaG91bGQgYmUgaW1tdXRhYmxlIHRvIGNsaWVu
dHMKLSAgICB2b2lkIHNldE1haW5SZXNvdXJjZShQYXNzUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4g
bWFpblJlc291cmNlKSB7IG1fbWFpblJlc291cmNlID0gbWFpblJlc291cmNlOyB9Ci0gICAgdm9p
ZCBhZGRTdWJyZXNvdXJjZShQYXNzUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gc3ViUmVzb3VyY2Up
IHsgbV9zdWJyZXNvdXJjZXMuYXBwZW5kKHN1YlJlc291cmNlKTsgfQotICAgIHZvaWQgYWRkU3Vi
ZnJhbWVBcmNoaXZlKFBhc3NSZWZQdHI8QXJjaGl2ZT4gc3ViZnJhbWVBcmNoaXZlKSB7IG1fc3Vi
ZnJhbWVBcmNoaXZlcy5hcHBlbmQoc3ViZnJhbWVBcmNoaXZlKTsgfQorICAgIHZvaWQgc2V0TWFp
blJlc291cmNlKFJlZjxBcmNoaXZlUmVzb3VyY2U+JiYgbWFpblJlc291cmNlKSB7IG1fbWFpblJl
c291cmNlID0gV1RGTW92ZShtYWluUmVzb3VyY2UpOyB9CisgICAgdm9pZCBhZGRTdWJyZXNvdXJj
ZShSZWY8QXJjaGl2ZVJlc291cmNlPiYmIHJlc291cmNlKSB7IG1fc3VicmVzb3VyY2VzLmFwcGVu
ZChXVEZNb3ZlKHJlc291cmNlKSk7IH0KKyAgICB2b2lkIGFkZFN1YmZyYW1lQXJjaGl2ZShSZWY8
QXJjaGl2ZT4mJiBzdWJmcmFtZUFyY2hpdmUpIHsgbV9zdWJmcmFtZUFyY2hpdmVzLmFwcGVuZChX
VEZNb3ZlKHN1YmZyYW1lQXJjaGl2ZSkpOyB9CiAKICAgICB2b2lkIGNsZWFyQWxsU3ViZnJhbWVB
cmNoaXZlcygpOwogCiBwcml2YXRlOgotICAgIHZvaWQgY2xlYXJBbGxTdWJmcmFtZUFyY2hpdmVz
SW1wbChWZWN0b3I8UmVmUHRyPEFyY2hpdmU+PiogY2xlYXJlZEFyY2hpdmVzKTsKKyAgICB2b2lk
IGNsZWFyQWxsU3ViZnJhbWVBcmNoaXZlcyhIYXNoU2V0PEFyY2hpdmUqPiYpOwogCiAgICAgUmVm
UHRyPEFyY2hpdmVSZXNvdXJjZT4gbV9tYWluUmVzb3VyY2U7Ci0gICAgVmVjdG9yPFJlZlB0cjxB
cmNoaXZlUmVzb3VyY2U+PiBtX3N1YnJlc291cmNlczsKLSAgICBWZWN0b3I8UmVmUHRyPEFyY2hp
dmU+PiBtX3N1YmZyYW1lQXJjaGl2ZXM7CisgICAgVmVjdG9yPFJlZjxBcmNoaXZlUmVzb3VyY2U+
PiBtX3N1YnJlc291cmNlczsKKyAgICBWZWN0b3I8UmVmPEFyY2hpdmU+PiBtX3N1YmZyYW1lQXJj
aGl2ZXM7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlRmFjdG9yeS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlRmFjdG9yeS5jcHAKaW5kZXggOTBiNjc5OTUxNTZkYjA4
ZWU0YmU0NzU0ODc1YWRlNWNmYTM2MmQ5Yy4uNDE3YWM0N2E3MzZjZTY1YjIyMzNjMWZjYjU2MmRm
NzE2ZWI2YWJiMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJj
aGl2ZUZhY3RvcnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hp
dmVGYWN0b3J5LmNwcApAQCAtNDksMzEgKzQ5LDMzIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIHR5
cGVkZWYgUmVmUHRyPEFyY2hpdmU+IFJhd0RhdGFDcmVhdGlvbkZ1bmN0aW9uKGNvbnN0IFVSTCYs
IFNoYXJlZEJ1ZmZlciYpOwogdHlwZWRlZiBIYXNoTWFwPFN0cmluZywgUmF3RGF0YUNyZWF0aW9u
RnVuY3Rpb24qLCBBU0NJSUNhc2VJbnNlbnNpdGl2ZUhhc2g+IEFyY2hpdmVNSU1FVHlwZXNNYXA7
CiAKLS8vIFRoZSBjcmVhdGUgZnVuY3Rpb25zIGluIHRoZSBhcmNoaXZlIGNsYXNzZXMgcmV0dXJu
IFBhc3NSZWZQdHIgdG8gY29uY3JldGUgc3ViY2xhc3NlcworLy8gVGhlIGNyZWF0ZSBmdW5jdGlv
bnMgaW4gdGhlIGFyY2hpdmUgY2xhc3NlcyByZXR1cm4gUmVmUHRyIHRvIGNvbmNyZXRlIHN1YmNs
YXNzZXMKIC8vIG9mIEFyY2hpdmUuIFRoaXMgYWRhcHRvciBtYWtlcyB0aGUgZnVuY3Rpb25zIGhh
dmUgYSB1bmlmb3JtIHJldHVybiB0eXBlLgotdGVtcGxhdGUgPHR5cGVuYW1lIEFyY2hpdmVDbGFz
cz4gc3RhdGljIFJlZlB0cjxBcmNoaXZlPiBhcmNoaXZlRmFjdG9yeUNyZWF0ZShjb25zdCBVUkwm
IHVybCwgU2hhcmVkQnVmZmVyJiBidWZmZXIpCit0ZW1wbGF0ZTx0eXBlbmFtZSBBcmNoaXZlQ2xh
c3M+IHN0YXRpYyBSZWZQdHI8QXJjaGl2ZT4gYXJjaGl2ZUZhY3RvcnlDcmVhdGUoY29uc3QgVVJM
JiB1cmwsIFNoYXJlZEJ1ZmZlciYgYnVmZmVyKQogewogICAgIHJldHVybiBBcmNoaXZlQ2xhc3M6
OmNyZWF0ZSh1cmwsIGJ1ZmZlcik7CiB9CiAKLXN0YXRpYyBBcmNoaXZlTUlNRVR5cGVzTWFwJiBh
cmNoaXZlTUlNRVR5cGVzKCkKK3N0YXRpYyBBcmNoaXZlTUlNRVR5cGVzTWFwIGNyZWF0ZUFyY2hp
dmVNSU1FVHlwZXNNYXAoKQogewotICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxBcmNoaXZlTUlN
RVR5cGVzTWFwPiBtaW1lVHlwZXM7Ci0gICAgc3RhdGljIGJvb2wgaW5pdGlhbGl6ZWQgPSBmYWxz
ZTsKLQotICAgIGlmIChpbml0aWFsaXplZCkKLSAgICAgICAgcmV0dXJuIG1pbWVUeXBlczsKKyAg
ICBBcmNoaXZlTUlNRVR5cGVzTWFwIG1hcDsKIAogI2lmIEVOQUJMRShXRUJfQVJDSElWRSkgJiYg
VVNFKENGKQotICAgIG1pbWVUeXBlcy5nZXQoKS5zZXQoImFwcGxpY2F0aW9uL3gtd2ViYXJjaGl2
ZSIsIGFyY2hpdmVGYWN0b3J5Q3JlYXRlPExlZ2FjeVdlYkFyY2hpdmU+KTsKKyAgICBtYXAuYWRk
KEFTQ0lJTGl0ZXJhbCB7ICJhcHBsaWNhdGlvbi94LXdlYmFyY2hpdmUiIH0sIGFyY2hpdmVGYWN0
b3J5Q3JlYXRlPExlZ2FjeVdlYkFyY2hpdmU+KTsKICNlbmRpZgorCiAjaWYgRU5BQkxFKE1IVE1M
KQotICAgIG1pbWVUeXBlcy5nZXQoKS5zZXQoIm11bHRpcGFydC9yZWxhdGVkIiwgYXJjaGl2ZUZh
Y3RvcnlDcmVhdGU8TUhUTUxBcmNoaXZlPik7Ci0gICAgbWltZVR5cGVzLmdldCgpLnNldCgiYXBw
bGljYXRpb24veC1taW1lYXJjaGl2ZSIsIGFyY2hpdmVGYWN0b3J5Q3JlYXRlPE1IVE1MQXJjaGl2
ZT4pOworICAgIG1hcC5hZGQoQVNDSUlMaXRlcmFsIHsgIm11bHRpcGFydC9yZWxhdGVkIiB9LCBh
cmNoaXZlRmFjdG9yeUNyZWF0ZTxNSFRNTEFyY2hpdmU+KTsKKyAgICBtYXAuYWRkKEFTQ0lJTGl0
ZXJhbCB7ICJhcHBsaWNhdGlvbi94LW1pbWVhcmNoaXZlIiB9LCBhcmNoaXZlRmFjdG9yeUNyZWF0
ZTxNSFRNTEFyY2hpdmU+KTsKICNlbmRpZgogCi0gICAgaW5pdGlhbGl6ZWQgPSB0cnVlOwotICAg
IHJldHVybiBtaW1lVHlwZXM7CisgICAgcmV0dXJuIG1hcDsKK30KKworc3RhdGljIEFyY2hpdmVN
SU1FVHlwZXNNYXAmIGFyY2hpdmVNSU1FVHlwZXMoKQoreworICAgIHN0YXRpYyBOZXZlckRlc3Ry
b3llZDxBcmNoaXZlTUlNRVR5cGVzTWFwPiBtYXAgPSBjcmVhdGVBcmNoaXZlTUlNRVR5cGVzTWFw
KCk7CisgICAgcmV0dXJuIG1hcDsKIH0KIAogYm9vbCBBcmNoaXZlRmFjdG9yeTo6aXNBcmNoaXZl
TWltZVR5cGUoY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkKQEAgLTgzLDEwICs4NSwxNCBAQCBib29s
IEFyY2hpdmVGYWN0b3J5Ojppc0FyY2hpdmVNaW1lVHlwZShjb25zdCBTdHJpbmcmIG1pbWVUeXBl
KQogCiBSZWZQdHI8QXJjaGl2ZT4gQXJjaGl2ZUZhY3Rvcnk6OmNyZWF0ZShjb25zdCBVUkwmIHVy
bCwgU2hhcmVkQnVmZmVyKiBkYXRhLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlKQogewotICAgIFJh
d0RhdGFDcmVhdGlvbkZ1bmN0aW9uKiBmdW5jdGlvbiA9IG1pbWVUeXBlLmlzRW1wdHkoKSA/IDAg
OiBhcmNoaXZlTUlNRVR5cGVzKCkuZ2V0KG1pbWVUeXBlKTsKICAgICBpZiAoIWRhdGEpCiAgICAg
ICAgIHJldHVybiBudWxscHRyOwotICAgIHJldHVybiBmdW5jdGlvbiA/IGZ1bmN0aW9uKHVybCwg
KmRhdGEpIDogUmVmUHRyPEFyY2hpdmU+KG51bGxwdHIpOworICAgIGlmIChtaW1lVHlwZS5pc0Vt
cHR5KCkpCisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIGF1dG8qIGZ1bmN0aW9uID0gYXJj
aGl2ZU1JTUVUeXBlcygpLmdldChtaW1lVHlwZSk7CisgICAgaWYgKCFmdW5jdGlvbikKKyAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CisgICAgcmV0dXJuIGZ1bmN0aW9uKHVybCwgKmRhdGEpOwogfQog
CiB2b2lkIEFyY2hpdmVGYWN0b3J5OjpyZWdpc3Rlcktub3duQXJjaGl2ZU1JTUVUeXBlcygpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlUmVzb3VyY2VD
b2xsZWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmVSZXNv
dXJjZUNvbGxlY3Rpb24uY3BwCmluZGV4IDk4ZjZjMWUyZmExZDRhNTA5MTMwMGQ1ODc4MDQ0MjEx
ZDhmN2IyM2IuLmEzNzA1ZWM3N2FkMjYzMWU1OTY4ZDg1YWNlOTdkZjBmZDE1N2MxZWEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmVSZXNvdXJjZUNvbGxl
Y3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmVSZXNv
dXJjZUNvbGxlY3Rpb24uY3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykg
MjAwOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIw
MDgtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKQEAgLTI5LDMxICsyOSwyMyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgog
I2luY2x1ZGUgIkFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24uaCIKIAotbmFtZXNwYWNlIFdlYkNv
cmUgeworI2luY2x1ZGUgIkFyY2hpdmUuaCIKIAotQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbjo6
QXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbigpCi17Ci19CituYW1lc3BhY2UgV2ViQ29yZSB7CiAK
LXZvaWQgQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbjo6YWRkQWxsUmVzb3VyY2VzKEFyY2hpdmUq
IGFyY2hpdmUpCit2b2lkIEFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb246OmFkZEFsbFJlc291cmNl
cyhBcmNoaXZlJiBhcmNoaXZlKQogewotICAgIEFTU0VSVChhcmNoaXZlKTsKLSAgICBpZiAoIWFy
Y2hpdmUpCi0gICAgICAgIHJldHVybjsKKyAgICBmb3IgKGF1dG8mIHN1YnJlc291cmNlIDogYXJj
aGl2ZS5zdWJyZXNvdXJjZXMoKSkKKyAgICAgICAgbV9zdWJyZXNvdXJjZXMuc2V0KHN1YnJlc291
cmNlLT51cmwoKSwgc3VicmVzb3VyY2UucHRyKCkpOwogCi0gICAgZm9yIChhdXRvJiBzdWJyZXNv
dXJjZSA6IGFyY2hpdmUtPnN1YnJlc291cmNlcygpKQotICAgICAgICBtX3N1YnJlc291cmNlcy5z
ZXQoc3VicmVzb3VyY2UtPnVybCgpLCBzdWJyZXNvdXJjZS5nZXQoKSk7Ci0KLSAgICBmb3IgKGF1
dG8mIHN1YmZyYW1lQXJjaGl2ZSA6IGFyY2hpdmUtPnN1YmZyYW1lQXJjaGl2ZXMoKSkgeworICAg
IGZvciAoYXV0byYgc3ViZnJhbWVBcmNoaXZlIDogYXJjaGl2ZS5zdWJmcmFtZUFyY2hpdmVzKCkp
IHsKICAgICAgICAgQVNTRVJUKHN1YmZyYW1lQXJjaGl2ZS0+bWFpblJlc291cmNlKCkpOwotCi0g
ICAgICAgIGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lID0gc3ViZnJhbWVBcmNoaXZlLT5tYWluUmVz
b3VyY2UoKS0+ZnJhbWVOYW1lKCk7Ci0gICAgICAgIGlmICghZnJhbWVOYW1lLmlzTnVsbCgpKQot
ICAgICAgICAgICAgbV9zdWJmcmFtZXMuc2V0KGZyYW1lTmFtZSwgc3ViZnJhbWVBcmNoaXZlLmdl
dCgpKTsKLSAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAvLyBJbiB0aGUgTUhUTUwgY2FzZSwg
ZnJhbWVzIGRvbid0IGhhdmUgYSBuYW1lIHNvIHdlIHVzZSB0aGUgVVJMIGluc3RlYWQuCi0gICAg
ICAgICAgICBtX3N1YmZyYW1lcy5zZXQoc3ViZnJhbWVBcmNoaXZlLT5tYWluUmVzb3VyY2UoKS0+
dXJsKCkuc3RyaW5nKCksIHN1YmZyYW1lQXJjaGl2ZS5nZXQoKSk7CisgICAgICAgIGF1dG8gZnJh
bWVOYW1lID0gc3ViZnJhbWVBcmNoaXZlLT5tYWluUmVzb3VyY2UoKS0+ZnJhbWVOYW1lKCk7Cisg
ICAgICAgIGlmIChmcmFtZU5hbWUuaXNOdWxsKCkpIHsKKyAgICAgICAgICAgIC8vIEluIHRoZSBN
SFRNTCBjYXNlLCBmcmFtZXMgZG9uJ3QgaGF2ZSBhIG5hbWUsIHNvIHdlIHVzZSB0aGUgVVJMIGlu
c3RlYWQuCisgICAgICAgICAgICBmcmFtZU5hbWUgPSBzdWJmcmFtZUFyY2hpdmUtPm1haW5SZXNv
dXJjZSgpLT51cmwoKS5zdHJpbmcoKTsKICAgICAgICAgfQorICAgICAgICBtX3N1YmZyYW1lcy5z
ZXQoZnJhbWVOYW1lLCBzdWJmcmFtZUFyY2hpdmUucHRyKCkpOwogICAgIH0KIH0KIApAQCAtNjEs
MjUgKzUzLDE5IEBAIHZvaWQgQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbjo6YWRkQWxsUmVzb3Vy
Y2VzKEFyY2hpdmUqIGFyY2hpdmUpCiAvLyBDYW4gd2UgY2hhbmdlIHRoZSBkZXNpZ24gaW4gYSBt
YW5uZXIgdGhhdCB3aWxsIGxldCB1cyBkZXByZWNhdGUgdGhhdCBBUEkgd2l0aG91dCByZWR1Y2lu
ZyBmdW5jdGlvbmFsaXR5IG9mIHRob3NlIGFwcHM/CiB2b2lkIEFyY2hpdmVSZXNvdXJjZUNvbGxl
Y3Rpb246OmFkZFJlc291cmNlKFJlZjxBcmNoaXZlUmVzb3VyY2U+JiYgcmVzb3VyY2UpCiB7Ci0g
ICAgY29uc3QgVVJMJiB1cmwgPSByZXNvdXJjZS0+dXJsKCk7CisgICAgYXV0byYgdXJsID0gcmVz
b3VyY2UtPnVybCgpOwogICAgIG1fc3VicmVzb3VyY2VzLnNldCh1cmwsIFdURk1vdmUocmVzb3Vy
Y2UpKTsKIH0KIAogQXJjaGl2ZVJlc291cmNlKiBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uOjph
cmNoaXZlUmVzb3VyY2VGb3JVUkwoY29uc3QgVVJMJiB1cmwpCiB7Ci0gICAgQXJjaGl2ZVJlc291
cmNlKiByZXNvdXJjZSA9IG1fc3VicmVzb3VyY2VzLmdldCh1cmwpOwotICAgIGlmICghcmVzb3Vy
Y2UpCi0gICAgICAgIHJldHVybiBudWxscHRyOwotICAgICAgICAKLSAgICByZXR1cm4gcmVzb3Vy
Y2U7CisgICAgcmV0dXJuIG1fc3VicmVzb3VyY2VzLmdldCh1cmwpOwogfQogCi1QYXNzUmVmUHRy
PEFyY2hpdmU+IEFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb246OnBvcFN1YmZyYW1lQXJjaGl2ZShj
b25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgY29uc3QgVVJMJiB1cmwpCitSZWZQdHI8QXJjaGl2ZT4g
QXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbjo6cG9wU3ViZnJhbWVBcmNoaXZlKGNvbnN0IFN0cmlu
ZyYgZnJhbWVOYW1lLCBjb25zdCBVUkwmIHVybCkKIHsKLSAgICBhdXRvIGFyY2hpdmUgPSBtX3N1
YmZyYW1lcy50YWtlKGZyYW1lTmFtZSk7Ci0gICAgaWYgKGFyY2hpdmUpCi0gICAgICAgIHJldHVy
biBXVEZNb3ZlKGFyY2hpdmUpOwotCisgICAgaWYgKGF1dG8gYXJjaGl2ZSA9IG1fc3ViZnJhbWVz
LnRha2UoZnJhbWVOYW1lKSkKKyAgICAgICAgcmV0dXJuIGFyY2hpdmU7CiAgICAgcmV0dXJuIG1f
c3ViZnJhbWVzLnRha2UodXJsLnN0cmluZygpKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5oIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5oCmluZGV4
IDVjNjIwYjUxZjMxZTYzODJkN2VmMWNjMjQ4YjkzMjBmNTZjODk3YTcuLjM3ZGY2OGIzNjZjZmY4
NTM5Yjk1YzgyM2YyZTkxMjRkMzVlYTk5MzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9hcmNoaXZlL0FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24uaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uLmgKQEAgLTEsNSAr
MSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOC0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMjgsMjQgKzI4
LDI5IEBACiAKICNwcmFnbWEgb25jZQogCi0jaW5jbHVkZSAiQXJjaGl2ZS5oIgotI2luY2x1ZGUg
IkFyY2hpdmVSZXNvdXJjZS5oIgotI2luY2x1ZGUgIlVSTC5oIgorI2luY2x1ZGUgPHd0Zi9Gb3J3
YXJkLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9XVEZT
dHJpbmcuaD4KKyNpbmNsdWRlIDx3dGYvTm9uY29weWFibGUuaD4KKyNpbmNsdWRlIDx3dGYvdGV4
dC9TdHJpbmdIYXNoLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3MgQXJjaGl2ZTsK
K2NsYXNzIEFyY2hpdmVSZXNvdXJjZTsKK2NsYXNzIFVSTDsKKwogY2xhc3MgQXJjaGl2ZVJlc291
cmNlQ29sbGVjdGlvbiB7Ci0gICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoQXJjaGl2ZVJlc291cmNl
Q29sbGVjdGlvbik7IFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworICAgIFdURl9NQUtFX05PTkNP
UFlBQkxFKEFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24pOworICAgIFdURl9NQUtFX0ZBU1RfQUxM
T0NBVEVEOworCiBwdWJsaWM6Ci0gICAgQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbigpOworICAg
IEFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24oKSA9IGRlZmF1bHQ7CiAKICAgICB2b2lkIGFkZFJl
c291cmNlKFJlZjxBcmNoaXZlUmVzb3VyY2U+JiYpOwotICAgIHZvaWQgYWRkQWxsUmVzb3VyY2Vz
KEFyY2hpdmUqKTsKKyAgICB2b2lkIGFkZEFsbFJlc291cmNlcyhBcmNoaXZlJik7CiAgICAgCiAg
ICAgV0VCQ09SRV9FWFBPUlQgQXJjaGl2ZVJlc291cmNlKiBhcmNoaXZlUmVzb3VyY2VGb3JVUkwo
Y29uc3QgVVJMJik7Ci0gICAgUGFzc1JlZlB0cjxBcmNoaXZlPiBwb3BTdWJmcmFtZUFyY2hpdmUo
Y29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IFVSTCYpOworICAgIFJlZlB0cjxBcmNoaXZl
PiBwb3BTdWJmcmFtZUFyY2hpdmUoY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IFVSTCYp
OwogICAgIAogcHJpdmF0ZTogICAgCiAgICAgSGFzaE1hcDxTdHJpbmcsIFJlZlB0cjxBcmNoaXZl
UmVzb3VyY2U+PiBtX3N1YnJlc291cmNlczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9hcmNoaXZlL2NmL0xlZ2FjeVdlYkFyY2hpdmUuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2FyY2hpdmUvY2YvTGVnYWN5V2ViQXJjaGl2ZS5jcHAKaW5kZXggZTA0OTA2MzAwODFhMDEy
YTQzMzMyNmJlMjQyMzE4MjdkZGZjZTk3MS4uMzlkODM1MjA2YzcxMDFlZTRjMTkwYzQyOGY0YmNl
ZGI1MzEzMzFhZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvY2Yv
TGVnYWN5V2ViQXJjaGl2ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUv
Y2YvTGVnYWN5V2ViQXJjaGl2ZS5jcHAKQEAgLTgwLDE4ICs4MCwxNiBAQCBSZXRhaW5QdHI8Q0ZE
aWN0aW9uYXJ5UmVmPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNl
bnRhdGlvbihBcgogICAgICAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShwcm9wZXJ0eUxpc3QuZ2V0
KCksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZU1JTUVUeXBlS2V5LCAwKTsKICAgICAgICAgcmV0
dXJuIHByb3BlcnR5TGlzdDsKICAgICB9Ci0gICAgCi0gICAgUmV0YWluUHRyPENGTXV0YWJsZURp
Y3Rpb25hcnlSZWY+IHByb3BlcnR5TGlzdCA9IGFkb3B0Q0YoQ0ZEaWN0aW9uYXJ5Q3JlYXRlTXV0
YWJsZSgwLCA2LCAwLCAma0NGVHlwZURpY3Rpb25hcnlWYWx1ZUNhbGxCYWNrcykpOwotICAgIAor
CisgICAgYXV0byBwcm9wZXJ0eUxpc3QgPSBhZG9wdENGKENGRGljdGlvbmFyeUNyZWF0ZU11dGFi
bGUoMCwgNiwgMCwgJmtDRlR5cGVEaWN0aW9uYXJ5VmFsdWVDYWxsQmFja3MpKTsKKwogICAgIC8v
IFJlc291cmNlIGRhdGEgY2FuIGJlIGVtcHR5LCBidXQgbXVzdCBiZSByZXByZXNlbnRlZCBieSBh
biBlbXB0eSBDRkRhdGFSZWYKLSAgICBTaGFyZWRCdWZmZXImIGRhdGEgPSByZXNvdXJjZS0+ZGF0
YSgpOwotICAgIFJldGFpblB0cjxDRkRhdGFSZWY+IGNmRGF0YTsKLSAgICBjZkRhdGEgPSBkYXRh
LmNyZWF0ZUNGRGF0YSgpOworICAgIGF1dG8mIGRhdGEgPSByZXNvdXJjZS0+ZGF0YSgpOworCisg
ICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJvcGVydHlMaXN0LmdldCgpLCBMZWdhY3lXZWJBcmNo
aXZlUmVzb3VyY2VEYXRhS2V5LCBkYXRhLmNyZWF0ZUNGRGF0YSgpLmdldCgpKTsKIAotICAgIENG
RGljdGlvbmFyeVNldFZhbHVlKHByb3BlcnR5TGlzdC5nZXQoKSwgTGVnYWN5V2ViQXJjaGl2ZVJl
c291cmNlRGF0YUtleSwgY2ZEYXRhLmdldCgpKTsKLSAgICAKICAgICAvLyBSZXNvdXJjZSBVUkwg
Y2Fubm90IGJlIG51bGwKLSAgICBpZiAoUmV0YWluUHRyPENGU3RyaW5nUmVmPiBjZlVSTCA9IHJl
c291cmNlLT51cmwoKS5zdHJpbmcoKS5jcmVhdGVDRlN0cmluZygpKQorICAgIGlmIChhdXRvIGNm
VVJMID0gcmVzb3VyY2UtPnVybCgpLnN0cmluZygpLmNyZWF0ZUNGU3RyaW5nKCkpCiAgICAgICAg
IENGRGljdGlvbmFyeVNldFZhbHVlKHByb3BlcnR5TGlzdC5nZXQoKSwgTGVnYWN5V2ViQXJjaGl2
ZVJlc291cmNlVVJMS2V5LCBjZlVSTC5nZXQoKSk7CiAgICAgZWxzZSB7CiAgICAgICAgIExPRyhB
cmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBOVUxMIHJlc291cmNlIFVSTCBpcyBpbnZhbGlk
IC0gcmV0dXJuaW5nIG51bGwgcHJvcGVydHkgbGlzdCIpOwpAQCAtOTksNDIgKzk3LDQxIEBAIFJl
dGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVByb3BlcnR5
TGlzdFJlcHJlc2VudGF0aW9uKEFyCiAgICAgfQogCiAgICAgLy8gRnJhbWVOYW1lIHNob3VsZCBi
ZSBsZWZ0IG91dCBpZiBlbXB0eSBmb3Igc3VicmVzb3VyY2VzLCBidXQgYWx3YXlzIGluY2x1ZGVk
IGZvciBtYWluIHJlc291cmNlcwotICAgIGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lKHJlc291cmNl
LT5mcmFtZU5hbWUoKSk7CisgICAgYXV0byYgZnJhbWVOYW1lID0gcmVzb3VyY2UtPmZyYW1lTmFt
ZSgpOwogICAgIGlmICghZnJhbWVOYW1lLmlzRW1wdHkoKSB8fCBpc01haW5SZXNvdXJjZSkKICAg
ICAgICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJvcGVydHlMaXN0LmdldCgpLCBMZWdhY3lXZWJB
cmNoaXZlUmVzb3VyY2VGcmFtZU5hbWVLZXksIGZyYW1lTmFtZS5jcmVhdGVDRlN0cmluZygpLmdl
dCgpKTsKLSAgICAKKwogICAgIC8vIFNldCBNSU1FVHlwZSwgVGV4dEVuY29kaW5nTmFtZSwgYW5k
IFJlc291cmNlUmVzcG9uc2Ugb25seSBpZiB0aGV5IGFjdHVhbGx5IGV4aXN0Ci0gICAgY29uc3Qg
U3RyaW5nJiBtaW1lVHlwZShyZXNvdXJjZS0+bWltZVR5cGUoKSk7CisgICAgYXV0byYgbWltZVR5
cGUgPSByZXNvdXJjZS0+bWltZVR5cGUoKTsKICAgICBpZiAoIW1pbWVUeXBlLmlzRW1wdHkoKSkK
ICAgICAgICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJvcGVydHlMaXN0LmdldCgpLCBMZWdhY3lX
ZWJBcmNoaXZlUmVzb3VyY2VNSU1FVHlwZUtleSwgbWltZVR5cGUuY3JlYXRlQ0ZTdHJpbmcoKS5n
ZXQoKSk7Ci0gICAgCi0gICAgY29uc3QgU3RyaW5nJiB0ZXh0RW5jb2RpbmcocmVzb3VyY2UtPnRl
eHRFbmNvZGluZygpKTsKKworICAgIGF1dG8mIHRleHRFbmNvZGluZyA9IHJlc291cmNlLT50ZXh0
RW5jb2RpbmcoKTsKICAgICBpZiAoIXRleHRFbmNvZGluZy5pc0VtcHR5KCkpCiAgICAgICAgIENG
RGljdGlvbmFyeVNldFZhbHVlKHByb3BlcnR5TGlzdC5nZXQoKSwgTGVnYWN5V2ViQXJjaGl2ZVJl
c291cmNlVGV4dEVuY29kaW5nTmFtZUtleSwgdGV4dEVuY29kaW5nLmNyZWF0ZUNGU3RyaW5nKCku
Z2V0KCkpOwogCiAgICAgLy8gRG9uJ3QgaW5jbHVkZSB0aGUgcmVzb3VyY2UgcmVzcG9uc2UgZm9y
IHRoZSBtYWluIHJlc291cmNlCiAgICAgaWYgKCFpc01haW5SZXNvdXJjZSkgewotICAgICAgICBS
ZXRhaW5QdHI8Q0ZEYXRhUmVmPiByZXNvdXJjZVJlc3BvbnNlRGF0YSA9IGNyZWF0ZVByb3BlcnR5
TGlzdFJlcHJlc2VudGF0aW9uKHJlc291cmNlLT5yZXNwb25zZSgpKTsKLSAgICAgICAgaWYgKHJl
c291cmNlUmVzcG9uc2VEYXRhKQorICAgICAgICBpZiAoYXV0byByZXNvdXJjZVJlc3BvbnNlRGF0
YSA9IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKHJlc291cmNlLT5yZXNwb25zZSgp
KSkKICAgICAgICAgICAgIENGRGljdGlvbmFyeVNldFZhbHVlKHByb3BlcnR5TGlzdC5nZXQoKSwg
TGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlUmVzcG9uc2VLZXksIHJlc291cmNlUmVzcG9uc2VEYXRh
LmdldCgpKTsgICAgCiAgICAgfQogICAgIAogICAgIHJldHVybiBwcm9wZXJ0eUxpc3Q7CiB9CiAK
LVJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVByb3Bl
cnR5TGlzdFJlcHJlc2VudGF0aW9uKEFyY2hpdmUqIGFyY2hpdmUpCitSZXRhaW5QdHI8Q0ZEaWN0
aW9uYXJ5UmVmPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRh
dGlvbihBcmNoaXZlJiBhcmNoaXZlKQogewotICAgIFJldGFpblB0cjxDRk11dGFibGVEaWN0aW9u
YXJ5UmVmPiBwcm9wZXJ0eUxpc3QgPSBhZG9wdENGKENGRGljdGlvbmFyeUNyZWF0ZU11dGFibGUo
MCwgMywgMCwgJmtDRlR5cGVEaWN0aW9uYXJ5VmFsdWVDYWxsQmFja3MpKTsKLSAgICAKLSAgICBS
ZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBtYWluUmVzb3VyY2VEaWN0ID0gY3JlYXRlUHJvcGVy
dHlMaXN0UmVwcmVzZW50YXRpb24oYXJjaGl2ZS0+bWFpblJlc291cmNlKCksIE1haW5SZXNvdXJj
ZSk7CisgICAgYXV0byBwcm9wZXJ0eUxpc3QgPSBhZG9wdENGKENGRGljdGlvbmFyeUNyZWF0ZU11
dGFibGUoMCwgMywgMCwgJmtDRlR5cGVEaWN0aW9uYXJ5VmFsdWVDYWxsQmFja3MpKTsKKworICAg
IGF1dG8gbWFpblJlc291cmNlRGljdCA9IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9u
KGFyY2hpdmUubWFpblJlc291cmNlKCksIE1haW5SZXNvdXJjZSk7CiAgICAgQVNTRVJUKG1haW5S
ZXNvdXJjZURpY3QpOwogICAgIGlmICghbWFpblJlc291cmNlRGljdCkKICAgICAgICAgcmV0dXJu
IG51bGxwdHI7CiAgICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJvcGVydHlMaXN0LmdldCgpLCBM
ZWdhY3lXZWJBcmNoaXZlTWFpblJlc291cmNlS2V5LCBtYWluUmVzb3VyY2VEaWN0LmdldCgpKTsK
IAotICAgIFJldGFpblB0cjxDRk11dGFibGVBcnJheVJlZj4gc3VicmVzb3VyY2VzQXJyYXkgPSBh
ZG9wdENGKENGQXJyYXlDcmVhdGVNdXRhYmxlKDAsIGFyY2hpdmUtPnN1YnJlc291cmNlcygpLnNp
emUoKSwgJmtDRlR5cGVBcnJheUNhbGxCYWNrcykpOwotICAgIGZvciAoYXV0byYgcmVzb3VyY2Ug
OiBhcmNoaXZlLT5zdWJyZXNvdXJjZXMoKSkgewotICAgICAgICBpZiAoUmV0YWluUHRyPENGRGlj
dGlvbmFyeVJlZj4gc3VicmVzb3VyY2UgPSBjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlv
bihyZXNvdXJjZS5nZXQoKSwgU3VicmVzb3VyY2UpKQorICAgIGF1dG8gc3VicmVzb3VyY2VzQXJy
YXkgPSBhZG9wdENGKENGQXJyYXlDcmVhdGVNdXRhYmxlKDAsIGFyY2hpdmUuc3VicmVzb3VyY2Vz
KCkuc2l6ZSgpLCAma0NGVHlwZUFycmF5Q2FsbEJhY2tzKSk7CisgICAgZm9yIChhdXRvJiByZXNv
dXJjZSA6IGFyY2hpdmUuc3VicmVzb3VyY2VzKCkpIHsKKyAgICAgICAgaWYgKGF1dG8gc3VicmVz
b3VyY2UgPSBjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihyZXNvdXJjZS5wdHIoKSwg
U3VicmVzb3VyY2UpKQogICAgICAgICAgICAgQ0ZBcnJheUFwcGVuZFZhbHVlKHN1YnJlc291cmNl
c0FycmF5LmdldCgpLCBzdWJyZXNvdXJjZS5nZXQoKSk7CiAgICAgICAgIGVsc2UKICAgICAgICAg
ICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBGYWlsZWQgdG8gY3JlYXRlIHBy
b3BlcnR5IGxpc3QgZm9yIHN1YnJlc291cmNlIik7CkBAIC0xNDIsOSArMTM5LDkgQEAgUmV0YWlu
UHRyPENGRGljdGlvbmFyeVJlZj4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlUHJvcGVydHlMaXN0
UmVwcmVzZW50YXRpb24oQXIKICAgICBpZiAoQ0ZBcnJheUdldENvdW50KHN1YnJlc291cmNlc0Fy
cmF5LmdldCgpKSkKICAgICAgICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJvcGVydHlMaXN0Lmdl
dCgpLCBMZWdhY3lXZWJBcmNoaXZlU3VicmVzb3VyY2VzS2V5LCBzdWJyZXNvdXJjZXNBcnJheS5n
ZXQoKSk7CiAKLSAgICBSZXRhaW5QdHI8Q0ZNdXRhYmxlQXJyYXlSZWY+IHN1YmZyYW1lc0FycmF5
ID0gYWRvcHRDRihDRkFycmF5Q3JlYXRlTXV0YWJsZSgwLCBhcmNoaXZlLT5zdWJmcmFtZUFyY2hp
dmVzKCkuc2l6ZSgpLCAma0NGVHlwZUFycmF5Q2FsbEJhY2tzKSk7Ci0gICAgZm9yIChhdXRvJiBz
dWJmcmFtZSA6IGFyY2hpdmUtPnN1YmZyYW1lQXJjaGl2ZXMoKSkgewotICAgICAgICBpZiAoUmV0
YWluUHRyPENGRGljdGlvbmFyeVJlZj4gc3ViZnJhbWVBcmNoaXZlID0gY3JlYXRlUHJvcGVydHlM
aXN0UmVwcmVzZW50YXRpb24oc3ViZnJhbWUuZ2V0KCkpKQorICAgIGF1dG8gc3ViZnJhbWVzQXJy
YXkgPSBhZG9wdENGKENGQXJyYXlDcmVhdGVNdXRhYmxlKDAsIGFyY2hpdmUuc3ViZnJhbWVBcmNo
aXZlcygpLnNpemUoKSwgJmtDRlR5cGVBcnJheUNhbGxCYWNrcykpOworICAgIGZvciAoYXV0byYg
c3ViZnJhbWUgOiBhcmNoaXZlLnN1YmZyYW1lQXJjaGl2ZXMoKSkgeworICAgICAgICBpZiAoYXV0
byBzdWJmcmFtZUFyY2hpdmUgPSBjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihzdWJm
cmFtZS5nZXQoKSkpCiAgICAgICAgICAgICBDRkFycmF5QXBwZW5kVmFsdWUoc3ViZnJhbWVzQXJy
YXkuZ2V0KCksIHN1YmZyYW1lQXJjaGl2ZS5nZXQoKSk7CiAgICAgICAgIGVsc2UKICAgICAgICAg
ICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBGYWlsZWQgdG8gY3JlYXRlIHBy
b3BlcnR5IGxpc3QgZm9yIHN1YmZyYW1lIGFyY2hpdmUiKTsKQEAgLTE2MCwxMyArMTU3LDEzIEBA
IFJlc291cmNlUmVzcG9uc2UgTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlUmVzb3VyY2VSZXNwb25z
ZUZyb21Qcm9wZXJ0eUxpc3REYXRhKENGCiAgICAgQVNTRVJUKGRhdGEpOwogICAgIGlmICghZGF0
YSkKICAgICAgICAgcmV0dXJuIFJlc291cmNlUmVzcG9uc2UoKTsKLSAgICAKKwogICAgIC8vIElm
IHRoZSBSZXNvdXJjZVJlc3BvbnNlVmVyc2lvbiAocGFzc2VkIGluIGFzIHJlc3BvbnNlRGF0YVR5
cGUpIGV4aXN0cyBhdCBhbGwsIHRoaXMgaXMgYSAibmV3IiB3ZWIgYXJjaGl2ZSB0aGF0IHdlCiAg
ICAgLy8gY2FuIHBhcnNlIHdlbGwgaW4gYSBjcm9zcyBwbGF0Zm9ybSBtYW5uZXIgSWYgaXQgZG9l
c24ndCBleGlzdCwgd2Ugd2lsbCBhc3N1bWUgdGhpcyBpcyBhbiAib2xkIiB3ZWIgYXJjaGl2ZSB3
aXRoLAogICAgIC8vIE5TVVJMUmVzcG9uc2Ugb2JqZWN0cyBpbiBpdCBhbmQgcGFyc2UgdGhlIFJl
c291cmNlUmVzcG9uc2UgYXMgc3VjaC4KICAgICBpZiAoIXJlc3BvbnNlRGF0YVR5cGUpCiAgICAg
ICAgIHJldHVybiBjcmVhdGVSZXNvdXJjZVJlc3BvbnNlRnJvbU1hY0FyY2hpdmVkRGF0YShkYXRh
KTsKLSAgICAgICAgCisKICAgICAvLyBGSVhNRTogUGFyc2UgdGhlICJuZXciIGZvcm1hdCB0aGF0
IHRoZSBhYm92ZSBjb21tZW50IHJlZmVyZW5jZXMgaGVyZS4gVGhpcyBmb3JtYXQgZG9lc24ndCBl
eGlzdCB5ZXQuCiAgICAgcmV0dXJuIFJlc291cmNlUmVzcG9uc2UoKTsKIH0KQEAgLTE3Niw0NyAr
MTczLDQ2IEBAIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0
ZVJlc291cmNlKENGRGljdGlvbmFyeVJlZiBkaWN0aW9uCiAgICAgQVNTRVJUKGRpY3Rpb25hcnkp
OwogICAgIGlmICghZGljdGlvbmFyeSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgICAg
IAotICAgIENGRGF0YVJlZiByZXNvdXJjZURhdGEgPSBzdGF0aWNfY2FzdDxDRkRhdGFSZWY+KENG
RGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZURh
dGFLZXkpKTsKKworICAgIGF1dG8gcmVzb3VyY2VEYXRhID0gc3RhdGljX2Nhc3Q8Q0ZEYXRhUmVm
PihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBMZWdhY3lXZWJBcmNoaXZlUmVzb3Vy
Y2VEYXRhS2V5KSk7CiAgICAgaWYgKHJlc291cmNlRGF0YSAmJiBDRkdldFR5cGVJRChyZXNvdXJj
ZURhdGEpICE9IENGRGF0YUdldFR5cGVJRCgpKSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxl
Z2FjeVdlYkFyY2hpdmUgLSBSZXNvdXJjZSBkYXRhIGlzIG5vdCBvZiB0eXBlIENGRGF0YSwgY2Fu
bm90IGNyZWF0ZSBpbnZhbGlkIHJlc291cmNlIik7CiAgICAgICAgIHJldHVybiBudWxscHRyOwog
ICAgIH0KLSAgICAKLSAgICBDRlN0cmluZ1JlZiBmcmFtZU5hbWUgPSBzdGF0aWNfY2FzdDxDRlN0
cmluZ1JlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2
ZVJlc291cmNlRnJhbWVOYW1lS2V5KSk7CisKKyAgICBhdXRvIGZyYW1lTmFtZSA9IHN0YXRpY19j
YXN0PENGU3RyaW5nUmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBMZWdhY3lX
ZWJBcmNoaXZlUmVzb3VyY2VGcmFtZU5hbWVLZXkpKTsKICAgICBpZiAoZnJhbWVOYW1lICYmIENG
R2V0VHlwZUlEKGZyYW1lTmFtZSkgIT0gQ0ZTdHJpbmdHZXRUeXBlSUQoKSkgewogICAgICAgICBM
T0coQXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZlIC0gRnJhbWUgbmFtZSBpcyBub3Qgb2YgdHlw
ZSBDRlN0cmluZywgY2Fubm90IGNyZWF0ZSBpbnZhbGlkIHJlc291cmNlIik7CiAgICAgICAgIHJl
dHVybiBudWxscHRyOwogICAgIH0KLSAgICAKLSAgICBDRlN0cmluZ1JlZiBtaW1lVHlwZSA9IHN0
YXRpY19jYXN0PENGU3RyaW5nUmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBM
ZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VNSU1FVHlwZUtleSkpOworCisgICAgYXV0byBtaW1lVHlw
ZSA9IHN0YXRpY19jYXN0PENGU3RyaW5nUmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9u
YXJ5LCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VNSU1FVHlwZUtleSkpOwogICAgIGlmIChtaW1l
VHlwZSAmJiBDRkdldFR5cGVJRChtaW1lVHlwZSkgIT0gQ0ZTdHJpbmdHZXRUeXBlSUQoKSkgewog
ICAgICAgICBMT0coQXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZlIC0gTUlNRSB0eXBlIGlzIG5v
dCBvZiB0eXBlIENGU3RyaW5nLCBjYW5ub3QgY3JlYXRlIGludmFsaWQgcmVzb3VyY2UiKTsKICAg
ICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQotICAgIAotICAgIENGU3RyaW5nUmVmIHVybCA9
IHN0YXRpY19jYXN0PENGU3RyaW5nUmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5
LCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VVUkxLZXkpKTsKKworICAgIGF1dG8gdXJsID0gc3Rh
dGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExl
Z2FjeVdlYkFyY2hpdmVSZXNvdXJjZVVSTEtleSkpOwogICAgIGlmICh1cmwgJiYgQ0ZHZXRUeXBl
SUQodXJsKSAhPSBDRlN0cmluZ0dldFR5cGVJRCgpKSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywg
IkxlZ2FjeVdlYkFyY2hpdmUgLSBVUkwgaXMgbm90IG9mIHR5cGUgQ0ZTdHJpbmcsIGNhbm5vdCBj
cmVhdGUgaW52YWxpZCByZXNvdXJjZSIpOwogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICB9
Ci0gICAgCi0gICAgQ0ZTdHJpbmdSZWYgdGV4dEVuY29kaW5nID0gc3RhdGljX2Nhc3Q8Q0ZTdHJp
bmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVS
ZXNvdXJjZVRleHRFbmNvZGluZ05hbWVLZXkpKTsKKworICAgIGF1dG8gdGV4dEVuY29kaW5nID0g
c3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnks
IExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZVRleHRFbmNvZGluZ05hbWVLZXkpKTsKICAgICBpZiAo
dGV4dEVuY29kaW5nICYmIENGR2V0VHlwZUlEKHRleHRFbmNvZGluZykgIT0gQ0ZTdHJpbmdHZXRU
eXBlSUQoKSkgewogICAgICAgICBMT0coQXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZlIC0gVGV4
dCBlbmNvZGluZyBpcyBub3Qgb2YgdHlwZSBDRlN0cmluZywgY2Fubm90IGNyZWF0ZSBpbnZhbGlk
IHJlc291cmNlIik7CiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIH0KIAogICAgIFJlc291
cmNlUmVzcG9uc2UgcmVzcG9uc2U7Ci0gICAgCi0gICAgQ0ZEYXRhUmVmIHJlc291cmNlUmVzcG9u
c2VEYXRhID0gc3RhdGljX2Nhc3Q8Q0ZEYXRhUmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0
aW9uYXJ5LCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VSZXNwb25zZUtleSkpOwotICAgIGlmIChy
ZXNvdXJjZVJlc3BvbnNlRGF0YSkgeworCisgICAgaWYgKGF1dG8gcmVzb3VyY2VSZXNwb25zZURh
dGEgPSBzdGF0aWNfY2FzdDxDRkRhdGFSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25h
cnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZVJlc3BvbnNlS2V5KSkpIHsKICAgICAgICAgaWYg
KENGR2V0VHlwZUlEKHJlc291cmNlUmVzcG9uc2VEYXRhKSAhPSBDRkRhdGFHZXRUeXBlSUQoKSkg
ewogICAgICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIFJlc291cmNl
IHJlc3BvbnNlIGRhdGEgaXMgbm90IG9mIHR5cGUgQ0ZEYXRhLCBjYW5ub3QgY3JlYXRlIGludmFs
aWQgcmVzb3VyY2UiKTsKICAgICAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgICAgICB9CiAg
ICAgICAgIAotICAgICAgICBDRlN0cmluZ1JlZiByZXNvdXJjZVJlc3BvbnNlVmVyc2lvbiA9IHN0
YXRpY19jYXN0PENGU3RyaW5nUmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBM
ZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VSZXNwb25zZVZlcnNpb25LZXkpKTsKKyAgICAgICAgYXV0
byByZXNvdXJjZVJlc3BvbnNlVmVyc2lvbiA9IHN0YXRpY19jYXN0PENGU3RyaW5nUmVmPihDRkRp
Y3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VSZXNw
b25zZVZlcnNpb25LZXkpKTsKICAgICAgICAgaWYgKHJlc291cmNlUmVzcG9uc2VWZXJzaW9uICYm
IENGR2V0VHlwZUlEKHJlc291cmNlUmVzcG9uc2VWZXJzaW9uKSAhPSBDRlN0cmluZ0dldFR5cGVJ
RCgpKSB7CiAgICAgICAgICAgICBMT0coQXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZlIC0gUmVz
b3VyY2UgcmVzcG9uc2UgdmVyc2lvbiBpcyBub3Qgb2YgdHlwZSBDRlN0cmluZywgY2Fubm90IGNy
ZWF0ZSBpbnZhbGlkIHJlc291cmNlIik7CiAgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKQEAg
LTIyNCw3ICsyMjAsNyBAQCBSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBMZWdhY3lXZWJBcmNoaXZl
OjpjcmVhdGVSZXNvdXJjZShDRkRpY3Rpb25hcnlSZWYgZGljdGlvbgogICAgICAgICAKICAgICAg
ICAgcmVzcG9uc2UgPSBjcmVhdGVSZXNvdXJjZVJlc3BvbnNlRnJvbVByb3BlcnR5TGlzdERhdGEo
cmVzb3VyY2VSZXNwb25zZURhdGEsIHJlc291cmNlUmVzcG9uc2VWZXJzaW9uKTsKICAgICB9Ci0g
ICAgCisKICAgICByZXR1cm4gQXJjaGl2ZVJlc291cmNlOjpjcmVhdGUoU2hhcmVkQnVmZmVyOjp3
cmFwQ0ZEYXRhKHJlc291cmNlRGF0YSksIFVSTChVUkwoKSwgdXJsKSwgbWltZVR5cGUsIHRleHRF
bmNvZGluZywgZnJhbWVOYW1lLCByZXNwb25zZSk7CiB9CiAKQEAgLTIzMywyMSArMjI5LDE5IEBA
IFJlZjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoKQogICAgIHJl
dHVybiBhZG9wdFJlZigqbmV3IExlZ2FjeVdlYkFyY2hpdmUpOwogfQogCi1SZWZQdHI8TGVnYWN5
V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFJlZlB0cjxBcmNoaXZlUmVzb3Vy
Y2U+JiYgbWFpblJlc291cmNlLCBWZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+JiYgc3Vi
cmVzb3VyY2VzLCBWZWN0b3I8UmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+PiYmIHN1YmZyYW1lQXJj
aGl2ZXMpCitSZWY8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFJl
ZjxBcmNoaXZlUmVzb3VyY2U+JiYgbWFpblJlc291cmNlLCBWZWN0b3I8UmVmPEFyY2hpdmVSZXNv
dXJjZT4+JiYgc3VicmVzb3VyY2VzLCBWZWN0b3I8UmVmPExlZ2FjeVdlYkFyY2hpdmU+PiYmIHN1
YmZyYW1lQXJjaGl2ZXMpCiB7Ci0gICAgaWYgKCFtYWluUmVzb3VyY2UpCi0gICAgICAgIHJldHVy
biBudWxscHRyOwotCiAgICAgYXV0byBhcmNoaXZlID0gY3JlYXRlKCk7CisKICAgICBhcmNoaXZl
LT5zZXRNYWluUmVzb3VyY2UoV1RGTW92ZShtYWluUmVzb3VyY2UpKTsKLSAgICAKKwogICAgIGZv
ciAoYXV0byYgc3VicmVzb3VyY2UgOiBzdWJyZXNvdXJjZXMpCiAgICAgICAgIGFyY2hpdmUtPmFk
ZFN1YnJlc291cmNlKFdURk1vdmUoc3VicmVzb3VyY2UpKTsKIAogICAgIGZvciAoYXV0byYgc3Vi
ZnJhbWVBcmNoaXZlIDogc3ViZnJhbWVBcmNoaXZlcykKICAgICAgICAgYXJjaGl2ZS0+YWRkU3Vi
ZnJhbWVBcmNoaXZlKFdURk1vdmUoc3ViZnJhbWVBcmNoaXZlKSk7CiAKLSAgICByZXR1cm4gV1RG
TW92ZShhcmNoaXZlKTsKKyAgICByZXR1cm4gYXJjaGl2ZTsKIH0KIAogUmVmUHRyPExlZ2FjeVdl
YkFyY2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShTaGFyZWRCdWZmZXImIGRhdGEpCkBA
IC0zMDcsNDggKzMwMSw1MCBAQCBib29sIExlZ2FjeVdlYkFyY2hpdmU6OmV4dHJhY3QoQ0ZEaWN0
aW9uYXJ5UmVmIGRpY3Rpb25hcnkpCiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFy
Y2hpdmUgLSBNYWluIHJlc291cmNlIGlzIG5vdCB0aGUgZXhwZWN0ZWQgQ0ZEaWN0aW9uYXJ5LCBh
Ym9ydGluZyBpbnZhbGlkIFdlYkFyY2hpdmUiKTsKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAg
IH0KLSAgICAKLSAgICBzZXRNYWluUmVzb3VyY2UoY3JlYXRlUmVzb3VyY2UobWFpblJlc291cmNl
RGljdCkpOwotICAgIGlmICghbWFpblJlc291cmNlKCkpIHsKKworICAgIGF1dG8gbWFpblJlc291
cmNlID0gY3JlYXRlUmVzb3VyY2UobWFpblJlc291cmNlRGljdCk7CisgICAgaWYgKCFtYWluUmVz
b3VyY2UpIHsKICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIEZhaWxl
ZCB0byBwYXJzZSBtYWluIHJlc291cmNlIGZyb20gQ0ZEaWN0aW9uYXJ5IG9yIG1haW4gcmVzb3Vy
Y2UgZG9lcyBub3QgZXhpc3QsIGFib3J0aW5nIGludmFsaWQgV2ViQXJjaGl2ZSIpOwogICAgICAg
ICByZXR1cm4gZmFsc2U7CiAgICAgfQotICAgIAotICAgIGlmIChtYWluUmVzb3VyY2UoKS0+bWlt
ZVR5cGUoKS5pc051bGwoKSkgeworCisgICAgaWYgKG1haW5SZXNvdXJjZS0+bWltZVR5cGUoKS5p
c051bGwoKSkgewogICAgICAgICBMT0coQXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZlIC0gTWFp
biByZXNvdXJjZSBNSU1FIHR5cGUgaXMgcmVxdWlyZWQsIGJ1dCB3YXMgbnVsbC4iKTsKICAgICAg
ICAgcmV0dXJuIGZhbHNlOwogICAgIH0KLSAgICAKLSAgICBDRkFycmF5UmVmIHN1YnJlc291cmNl
QXJyYXkgPSBzdGF0aWNfY2FzdDxDRkFycmF5UmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0
aW9uYXJ5LCBMZWdhY3lXZWJBcmNoaXZlU3VicmVzb3VyY2VzS2V5KSk7CisKKyAgICBzZXRNYWlu
UmVzb3VyY2UobWFpblJlc291cmNlLnJlbGVhc2VOb25OdWxsKCkpOworCisgICAgYXV0byBzdWJy
ZXNvdXJjZUFycmF5ID0gc3RhdGljX2Nhc3Q8Q0ZBcnJheVJlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFs
dWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVN1YnJlc291cmNlc0tleSkpOwogICAgIGlm
IChzdWJyZXNvdXJjZUFycmF5ICYmIENGR2V0VHlwZUlEKHN1YnJlc291cmNlQXJyYXkpICE9IENG
QXJyYXlHZXRUeXBlSUQoKSkgewogICAgICAgICBMT0coQXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNo
aXZlIC0gU3VicmVzb3VyY2VzIGlzIG5vdCB0aGUgZXhwZWN0ZWQgQXJyYXksIGFib3J0aW5nIGlu
dmFsaWQgV2ViQXJjaGl2ZSIpOwogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQotICAgIAor
CiAgICAgaWYgKHN1YnJlc291cmNlQXJyYXkpIHsKLSAgICAgICAgQ0ZJbmRleCBjb3VudCA9IENG
QXJyYXlHZXRDb3VudChzdWJyZXNvdXJjZUFycmF5KTsKKyAgICAgICAgYXV0byBjb3VudCA9IENG
QXJyYXlHZXRDb3VudChzdWJyZXNvdXJjZUFycmF5KTsKICAgICAgICAgZm9yIChDRkluZGV4IGkg
PSAwOyBpIDwgY291bnQ7ICsraSkgewotICAgICAgICAgICAgQ0ZEaWN0aW9uYXJ5UmVmIHN1YnJl
c291cmNlRGljdCA9IHN0YXRpY19jYXN0PENGRGljdGlvbmFyeVJlZj4oQ0ZBcnJheUdldFZhbHVl
QXRJbmRleChzdWJyZXNvdXJjZUFycmF5LCBpKSk7CisgICAgICAgICAgICBhdXRvIHN1YnJlc291
cmNlRGljdCA9IHN0YXRpY19jYXN0PENGRGljdGlvbmFyeVJlZj4oQ0ZBcnJheUdldFZhbHVlQXRJ
bmRleChzdWJyZXNvdXJjZUFycmF5LCBpKSk7CiAgICAgICAgICAgICBpZiAoQ0ZHZXRUeXBlSUQo
c3VicmVzb3VyY2VEaWN0KSAhPSBDRkRpY3Rpb25hcnlHZXRUeXBlSUQoKSkgewogICAgICAgICAg
ICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBTdWJyZXNvdXJjZSBpcyBu
b3QgZXhwZWN0ZWQgQ0ZEaWN0aW9uYXJ5LCBhYm9ydGluZyBpbnZhbGlkIFdlYkFyY2hpdmUiKTsK
ICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgICB9CiAgICAgICAgICAg
ICAKICAgICAgICAgICAgIGlmIChhdXRvIHN1YnJlc291cmNlID0gY3JlYXRlUmVzb3VyY2Uoc3Vi
cmVzb3VyY2VEaWN0KSkKLSAgICAgICAgICAgICAgICBhZGRTdWJyZXNvdXJjZShXVEZNb3ZlKHN1
YnJlc291cmNlKSk7CisgICAgICAgICAgICAgICAgYWRkU3VicmVzb3VyY2Uoc3VicmVzb3VyY2Uu
cmVsZWFzZU5vbk51bGwoKSk7CiAgICAgICAgIH0KICAgICB9Ci0gICAgCi0gICAgQ0ZBcnJheVJl
ZiBzdWJmcmFtZUFycmF5ID0gc3RhdGljX2Nhc3Q8Q0ZBcnJheVJlZj4oQ0ZEaWN0aW9uYXJ5R2V0
VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVN1YmZyYW1lQXJjaGl2ZXNLZXkpKTsK
KworICAgIGF1dG8gc3ViZnJhbWVBcnJheSA9IHN0YXRpY19jYXN0PENGQXJyYXlSZWY+KENGRGlj
dGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVTdWJmcmFtZUFyY2hp
dmVzS2V5KSk7CiAgICAgaWYgKHN1YmZyYW1lQXJyYXkgJiYgQ0ZHZXRUeXBlSUQoc3ViZnJhbWVB
cnJheSkgIT0gQ0ZBcnJheUdldFR5cGVJRCgpKSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxl
Z2FjeVdlYkFyY2hpdmUgLSBTdWJmcmFtZSBhcmNoaXZlcyBpcyBub3QgdGhlIGV4cGVjdGVkIEFy
cmF5LCBhYm9ydGluZyBpbnZhbGlkIFdlYkFyY2hpdmUiKTsKICAgICAgICAgcmV0dXJuIGZhbHNl
OwogICAgIH0KLSAgICAKKwogICAgIGlmIChzdWJmcmFtZUFycmF5KSB7Ci0gICAgICAgIENGSW5k
ZXggY291bnQgPSBDRkFycmF5R2V0Q291bnQoc3ViZnJhbWVBcnJheSk7CisgICAgICAgIGF1dG8g
Y291bnQgPSBDRkFycmF5R2V0Q291bnQoc3ViZnJhbWVBcnJheSk7CiAgICAgICAgIGZvciAoQ0ZJ
bmRleCBpID0gMDsgaSA8IGNvdW50OyArK2kpIHsKLSAgICAgICAgICAgIENGRGljdGlvbmFyeVJl
ZiBzdWJmcmFtZURpY3QgPSBzdGF0aWNfY2FzdDxDRkRpY3Rpb25hcnlSZWY+KENGQXJyYXlHZXRW
YWx1ZUF0SW5kZXgoc3ViZnJhbWVBcnJheSwgaSkpOworICAgICAgICAgICAgYXV0byBzdWJmcmFt
ZURpY3QgPSBzdGF0aWNfY2FzdDxDRkRpY3Rpb25hcnlSZWY+KENGQXJyYXlHZXRWYWx1ZUF0SW5k
ZXgoc3ViZnJhbWVBcnJheSwgaSkpOwogICAgICAgICAgICAgaWYgKENGR2V0VHlwZUlEKHN1YmZy
YW1lRGljdCkgIT0gQ0ZEaWN0aW9uYXJ5R2V0VHlwZUlEKCkpIHsKICAgICAgICAgICAgICAgICBM
T0coQXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZlIC0gU3ViZnJhbWUgYXJyYXkgaXMgbm90IGV4
cGVjdGVkIENGRGljdGlvbmFyeSwgYWJvcnRpbmcgaW52YWxpZCBXZWJBcmNoaXZlIik7CiAgICAg
ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwpAQCAtMzY1LDI2ICszNjEsMjEgQEAgYm9vbCBMZWdh
Y3lXZWJBcmNoaXZlOjpleHRyYWN0KENGRGljdGlvbmFyeVJlZiBkaWN0aW9uYXJ5KQogICAgIHJl
dHVybiB0cnVlOwogfQogCi1BcmNoaXZlOjpUeXBlIExlZ2FjeVdlYkFyY2hpdmU6OnR5cGUoKSBj
b25zdAotewotICAgIHJldHVybiBBcmNoaXZlOjpXZWJBcmNoaXZlOwotfQotICAgIAogUmV0YWlu
UHRyPENGRGF0YVJlZj4gTGVnYWN5V2ViQXJjaGl2ZTo6cmF3RGF0YVJlcHJlc2VudGF0aW9uKCkK
IHsKLSAgICBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBwcm9wZXJ0eUxpc3QgPSBjcmVhdGVQ
cm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbih0aGlzKTsKKyAgICBhdXRvIHByb3BlcnR5TGlzdCA9
IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKCp0aGlzKTsKICAgICBBU1NFUlQocHJv
cGVydHlMaXN0KTsKICAgICBpZiAoIXByb3BlcnR5TGlzdCkgewogICAgICAgICBMT0coQXJjaGl2
ZXMsICJMZWdhY3lXZWJBcmNoaXZlIC0gRmFpbGVkIHRvIGNyZWF0ZSBwcm9wZXJ0eSBsaXN0IGZv
ciBhcmNoaXZlLCByZXR1cm5pbmcgbm8gZGF0YSIpOwogICAgICAgICByZXR1cm4gbnVsbHB0cjsK
ICAgICB9CiAKLSAgICBSZXRhaW5QdHI8Q0ZXcml0ZVN0cmVhbVJlZj4gc3RyZWFtID0gYWRvcHRD
RihDRldyaXRlU3RyZWFtQ3JlYXRlV2l0aEFsbG9jYXRlZEJ1ZmZlcnMoMCwgMCkpOworICAgIGF1
dG8gc3RyZWFtID0gYWRvcHRDRihDRldyaXRlU3RyZWFtQ3JlYXRlV2l0aEFsbG9jYXRlZEJ1ZmZl
cnMoMCwgMCkpOwogCiAgICAgQ0ZXcml0ZVN0cmVhbU9wZW4oc3RyZWFtLmdldCgpKTsKICAgICBD
RlByb3BlcnR5TGlzdFdyaXRlKHByb3BlcnR5TGlzdC5nZXQoKSwgc3RyZWFtLmdldCgpLCBrQ0ZQ
cm9wZXJ0eUxpc3RCaW5hcnlGb3JtYXRfdjFfMCwgMCwgMCk7CiAKLSAgICBSZXRhaW5QdHI8Q0ZE
YXRhUmVmPiBwbGlzdERhdGEgPSBhZG9wdENGKHN0YXRpY19jYXN0PENGRGF0YVJlZj4oQ0ZXcml0
ZVN0cmVhbUNvcHlQcm9wZXJ0eShzdHJlYW0uZ2V0KCksIGtDRlN0cmVhbVByb3BlcnR5RGF0YVdy
aXR0ZW4pKSk7CisgICAgYXV0byBwbGlzdERhdGEgPSBhZG9wdENGKHN0YXRpY19jYXN0PENGRGF0
YVJlZj4oQ0ZXcml0ZVN0cmVhbUNvcHlQcm9wZXJ0eShzdHJlYW0uZ2V0KCksIGtDRlN0cmVhbVBy
b3BlcnR5RGF0YVdyaXR0ZW4pKSk7CiAgICAgQVNTRVJUKHBsaXN0RGF0YSk7CiAKICAgICBDRldy
aXRlU3RyZWFtQ2xvc2Uoc3RyZWFtLmdldCgpKTsKQEAgLTQzMiw3ICs0MjMsNyBAQCBSZWZQdHI8
TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKE5vZGUmIG5vZGUsIHN0
ZDo6ZnVuY3Rpb248Ym9vbAogCiAgICAgVmVjdG9yPE5vZGUqPiBub2RlTGlzdDsKICAgICBTdHJp
bmcgbWFya3VwU3RyaW5nID0gY3JlYXRlTWFya3VwKG5vZGUsIEluY2x1ZGVOb2RlLCAmbm9kZUxp
c3QsIERvTm90UmVzb2x2ZVVSTHMsIHRhZ05hbWVzVG9GaWx0ZXIuZ2V0KCkpOwotICAgIE5vZGU6
Ok5vZGVUeXBlIG5vZGVUeXBlID0gbm9kZS5ub2RlVHlwZSgpOworICAgIGF1dG8gbm9kZVR5cGUg
PSBub2RlLm5vZGVUeXBlKCk7CiAgICAgaWYgKG5vZGVUeXBlICE9IE5vZGU6OkRPQ1VNRU5UX05P
REUgJiYgbm9kZVR5cGUgIT0gTm9kZTo6RE9DVU1FTlRfVFlQRV9OT0RFKQogICAgICAgICBtYXJr
dXBTdHJpbmcgPSBkb2N1bWVudFR5cGVTdHJpbmcobm9kZS5kb2N1bWVudCgpKSArIG1hcmt1cFN0
cmluZzsKIApAQCAtNDQxLDIwICs0MzIsMjEgQEAgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IExl
Z2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShOb2RlJiBub2RlLCBzdGQ6OmZ1bmN0aW9uPGJvb2wKIAog
UmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShGcmFtZSYg
ZnJhbWUpCiB7Ci0gICAgRG9jdW1lbnRMb2FkZXIqIGRvY3VtZW50TG9hZGVyID0gZnJhbWUubG9h
ZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKLQorICAgIGF1dG8qIGRvY3VtZW50TG9hZGVyID0gZnJh
bWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKICAgICBpZiAoIWRvY3VtZW50TG9hZGVyKQog
ICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICAgICAgCi0gICAgVmVjdG9yPFJlZlB0cjxMZWdh
Y3lXZWJBcmNoaXZlPj4gc3ViZnJhbWVBcmNoaXZlczsKLSAgICAKKworICAgIGF1dG8gbWFpblJl
c291cmNlID0gZG9jdW1lbnRMb2FkZXItPm1haW5SZXNvdXJjZSgpOworICAgIGlmICghbWFpblJl
c291cmNlKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIFZlY3RvcjxSZWY8TGVnYWN5
V2ViQXJjaGl2ZT4+IHN1YmZyYW1lQXJjaGl2ZXM7CiAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsg
aSA8IGZyYW1lLnRyZWUoKS5jaGlsZENvdW50KCk7ICsraSkgewotICAgICAgICBpZiAoUmVmUHRy
PExlZ2FjeVdlYkFyY2hpdmU+IGNoaWxkRnJhbWVBcmNoaXZlID0gY3JlYXRlKCpmcmFtZS50cmVl
KCkuY2hpbGQoaSkpKQotICAgICAgICAgICAgc3ViZnJhbWVBcmNoaXZlcy5hcHBlbmQoV1RGTW92
ZShjaGlsZEZyYW1lQXJjaGl2ZSkpOworICAgICAgICBpZiAoYXV0byBjaGlsZEZyYW1lQXJjaGl2
ZSA9IGNyZWF0ZSgqZnJhbWUudHJlZSgpLmNoaWxkKGkpKSkKKyAgICAgICAgICAgIHN1YmZyYW1l
QXJjaGl2ZXMuYXBwZW5kKGNoaWxkRnJhbWVBcmNoaXZlLnJlbGVhc2VOb25OdWxsKCkpOwogICAg
IH0KIAotICAgIGF1dG8gc3VicmVzb3VyY2VzID0gZG9jdW1lbnRMb2FkZXItPnN1YnJlc291cmNl
cygpOwotICAgIHJldHVybiBjcmVhdGUoZG9jdW1lbnRMb2FkZXItPm1haW5SZXNvdXJjZSgpLCBX
VEZNb3ZlKHN1YnJlc291cmNlcyksIFdURk1vdmUoc3ViZnJhbWVBcmNoaXZlcykpOworICAgIHJl
dHVybiBjcmVhdGUobWFpblJlc291cmNlLnJlbGVhc2VOb25OdWxsKCksIGRvY3VtZW50TG9hZGVy
LT5zdWJyZXNvdXJjZXMoKSwgV1RGTW92ZShzdWJmcmFtZUFyY2hpdmVzKSk7CiB9CiAKIFJlZlB0
cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoUmFuZ2UqIHJhbmdl
KQpAQCAtNDYyLDIyICs0NTQsMjAgQEAgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdl
YkFyY2hpdmU6OmNyZWF0ZShSYW5nZSogcmFuZ2UpCiAgICAgaWYgKCFyYW5nZSkKICAgICAgICAg
cmV0dXJuIG51bGxwdHI7CiAgICAgICAgIAotICAgIERvY3VtZW50JiBkb2N1bWVudCA9IHJhbmdl
LT5zdGFydENvbnRhaW5lcigpLmRvY3VtZW50KCk7Ci0KLSAgICBGcmFtZSogZnJhbWUgPSBkb2N1
bWVudC5mcmFtZSgpOworICAgIGF1dG8mIGRvY3VtZW50ID0gcmFuZ2UtPnN0YXJ0Q29udGFpbmVy
KCkuZG9jdW1lbnQoKTsKKyAgICBhdXRvKiBmcmFtZSA9IGRvY3VtZW50LmZyYW1lKCk7CiAgICAg
aWYgKCFmcmFtZSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgCi0gICAgLy8gRklYTUU6
IFRoaXMgaXMgYWx3YXlzICJmb3IgaW50ZXJjaGFuZ2UiLiBJcyB0aGF0IHJpZ2h0PyBTZWUgdGhl
IHByZXZpb3VzIG1ldGhvZC4KKworICAgIC8vIEZJWE1FOiBUaGlzIGlzIGFsd2F5cyAiZm9yIGlu
dGVyY2hhbmdlIi4gSXMgdGhhdCByaWdodD8KICAgICBWZWN0b3I8Tm9kZSo+IG5vZGVMaXN0Owog
ICAgIFN0cmluZyBtYXJrdXBTdHJpbmcgPSBkb2N1bWVudFR5cGVTdHJpbmcoZG9jdW1lbnQpICsg
Y3JlYXRlTWFya3VwKCpyYW5nZSwgJm5vZGVMaXN0LCBBbm5vdGF0ZUZvckludGVyY2hhbmdlKTsK
LQogICAgIHJldHVybiBjcmVhdGUobWFya3VwU3RyaW5nLCAqZnJhbWUsIG5vZGVMaXN0LCBudWxs
cHRyKTsKIH0KIAogUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNy
ZWF0ZShjb25zdCBTdHJpbmcmIG1hcmt1cFN0cmluZywgRnJhbWUmIGZyYW1lLCBjb25zdCBWZWN0
b3I8Tm9kZSo+JiBub2Rlcywgc3RkOjpmdW5jdGlvbjxib29sIChGcmFtZSYpPiBmcmFtZUZpbHRl
cikKIHsKLSAgICBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSA9IGZyYW1lLmxvYWRl
cigpLmRvY3VtZW50TG9hZGVyKCktPnJlc3BvbnNlKCk7CisgICAgYXV0byYgcmVzcG9uc2UgPSBm
cmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5yZXNwb25zZSgpOwogICAgIFVSTCByZXNw
b25zZVVSTCA9IHJlc3BvbnNlLnVybCgpOwogICAgIAogICAgIC8vIGl0J3MgcG9zc2libGUgdG8g
aGF2ZSBhIHJlc3BvbnNlIHdpdGhvdXQgYSBVUkwgaGVyZQpAQCAtNDg1LDQyICs0NzUsNDEgQEAg
UmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShjb25zdCBT
dHJpbmcmIG1hcmt1cFN0cmluZywgRnIKICAgICBpZiAocmVzcG9uc2VVUkwuaXNOdWxsKCkpCiAg
ICAgICAgIHJlc3BvbnNlVVJMID0gVVJMKFBhcnNlZFVSTFN0cmluZywgZW1wdHlTdHJpbmcoKSk7
CiAKLSAgICBSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBtYWluUmVzb3VyY2UgPSBBcmNoaXZlUmVz
b3VyY2U6OmNyZWF0ZSh1dGY4QnVmZmVyKG1hcmt1cFN0cmluZyksIHJlc3BvbnNlVVJMLCByZXNw
b25zZS5taW1lVHlwZSgpLCAiVVRGLTgiLCBmcmFtZS50cmVlKCkudW5pcXVlTmFtZSgpKTsKKyAg
ICBhdXRvIG1haW5SZXNvdXJjZSA9IEFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKHV0ZjhCdWZmZXIo
bWFya3VwU3RyaW5nKSwgcmVzcG9uc2VVUkwsIHJlc3BvbnNlLm1pbWVUeXBlKCksICJVVEYtOCIs
IGZyYW1lLnRyZWUoKS51bmlxdWVOYW1lKCkpOwogICAgIGlmICghbWFpblJlc291cmNlKQogICAg
ICAgICByZXR1cm4gbnVsbHB0cjsKIAotICAgIFZlY3RvcjxSZWZQdHI8TGVnYWN5V2ViQXJjaGl2
ZT4+IHN1YmZyYW1lQXJjaGl2ZXM7Ci0gICAgVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+
PiBzdWJyZXNvdXJjZXM7CisgICAgVmVjdG9yPFJlZjxMZWdhY3lXZWJBcmNoaXZlPj4gc3ViZnJh
bWVBcmNoaXZlczsKKyAgICBWZWN0b3I8UmVmPEFyY2hpdmVSZXNvdXJjZT4+IHN1YnJlc291cmNl
czsKICAgICBIYXNoU2V0PFVSTD4gdW5pcXVlU3VicmVzb3VyY2VzOwogCi0gICAgc2l6ZV90IG5v
ZGVzU2l6ZSA9IG5vZGVzLnNpemUoKTsgICAgCi0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBu
b2Rlc1NpemU7ICsraSkgewotICAgICAgICBOb2RlJiBub2RlID0gKm5vZGVzW2ldOworICAgIGZv
ciAoYXV0byYgbm9kZVB0ciA6IG5vZGVzKSB7CisgICAgICAgIE5vZGUmIG5vZGUgPSAqbm9kZVB0
cjsKICAgICAgICAgRnJhbWUqIGNoaWxkRnJhbWU7CiAgICAgICAgIGlmICgoaXM8SFRNTEZyYW1l
RWxlbWVudEJhc2U+KG5vZGUpIHx8IGlzPEhUTUxPYmplY3RFbGVtZW50Pihub2RlKSkKICAgICAg
ICAgICAgICYmIChjaGlsZEZyYW1lID0gZG93bmNhc3Q8SFRNTEZyYW1lT3duZXJFbGVtZW50Pihu
b2RlKS5jb250ZW50RnJhbWUoKSkpIHsKICAgICAgICAgICAgIGlmIChmcmFtZUZpbHRlciAmJiAh
ZnJhbWVGaWx0ZXIoKmNoaWxkRnJhbWUpKQogICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotICAg
ICAgICAgICAgICAgIAotICAgICAgICAgICAgaWYgKFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBz
dWJmcmFtZUFyY2hpdmUgPSBjcmVhdGUoKmNoaWxkRnJhbWUtPmRvY3VtZW50KCksIGZyYW1lRmls
dGVyKSkKLSAgICAgICAgICAgICAgICBzdWJmcmFtZUFyY2hpdmVzLmFwcGVuZChXVEZNb3ZlKHN1
YmZyYW1lQXJjaGl2ZSkpOworICAgICAgICAgICAgaWYgKGF1dG8gc3ViZnJhbWVBcmNoaXZlID0g
Y3JlYXRlKCpjaGlsZEZyYW1lLT5kb2N1bWVudCgpLCBmcmFtZUZpbHRlcikpCisgICAgICAgICAg
ICAgICAgc3ViZnJhbWVBcmNoaXZlcy5hcHBlbmQoc3ViZnJhbWVBcmNoaXZlLnJlbGVhc2VOb25O
dWxsKCkpOwogICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgIExPR19FUlJPUigiVW5h
YmxlZCB0byBhcmNoaXZlIHN1YmZyYW1lICVzIiwgY2hpbGRGcmFtZS0+dHJlZSgpLnVuaXF1ZU5h
bWUoKS5zdHJpbmcoKS51dGY4KCkuZGF0YSgpKTsKIAogICAgICAgICB9IGVsc2UgewogICAgICAg
ICAgICAgTGlzdEhhc2hTZXQ8VVJMPiBzdWJyZXNvdXJjZVVSTHM7CiAgICAgICAgICAgICBub2Rl
LmdldFN1YnJlc291cmNlVVJMcyhzdWJyZXNvdXJjZVVSTHMpOwotICAgICAgICAgICAgCi0gICAg
ICAgICAgICBEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIgPSBmcmFtZS5sb2FkZXIoKS5k
b2N1bWVudExvYWRlcigpOwogCi0gICAgICAgICAgICBmb3IgKGNvbnN0IGF1dG8mIHN1YnJlc291
cmNlVVJMIDogc3VicmVzb3VyY2VVUkxzKSB7CisgICAgICAgICAgICBBU1NFUlQoZnJhbWUubG9h
ZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSk7CisgICAgICAgICAgICBhdXRvJiBkb2N1bWVudExvYWRl
ciA9ICpmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOworCisgICAgICAgICAgICBmb3Ig
KGF1dG8mIHN1YnJlc291cmNlVVJMIDogc3VicmVzb3VyY2VVUkxzKSB7CiAgICAgICAgICAgICAg
ICAgaWYgKHVuaXF1ZVN1YnJlc291cmNlcy5jb250YWlucyhzdWJyZXNvdXJjZVVSTCkpCiAgICAg
ICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogCiAgICAgICAgICAgICAgICAgdW5pcXVlU3VicmVz
b3VyY2VzLmFkZChzdWJyZXNvdXJjZVVSTCk7CiAKLSAgICAgICAgICAgICAgICBpZiAoUmVmUHRy
PEFyY2hpdmVSZXNvdXJjZT4gcmVzb3VyY2UgPSBkb2N1bWVudExvYWRlci0+c3VicmVzb3VyY2Uo
c3VicmVzb3VyY2VVUkwpKSB7Ci0gICAgICAgICAgICAgICAgICAgIHN1YnJlc291cmNlcy5hcHBl
bmQoV1RGTW92ZShyZXNvdXJjZSkpOworICAgICAgICAgICAgICAgIGlmIChhdXRvIHJlc291cmNl
ID0gZG9jdW1lbnRMb2FkZXIuc3VicmVzb3VyY2Uoc3VicmVzb3VyY2VVUkwpKSB7CisgICAgICAg
ICAgICAgICAgICAgIHN1YnJlc291cmNlcy5hcHBlbmQocmVzb3VyY2UucmVsZWFzZU5vbk51bGwo
KSk7CiAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgIH0KIApA
QCAtNTI4LDEwICs1MTcsOSBAQCBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJj
aGl2ZTo6Y3JlYXRlKGNvbnN0IFN0cmluZyYgbWFya3VwU3RyaW5nLCBGcgogI2lmIEVOQUJMRShD
QUNIRV9QQVJUSVRJT05JTkcpCiAgICAgICAgICAgICAgICAgcmVxdWVzdC5zZXREb21haW5Gb3JD
YWNoZVBhcnRpdGlvbihmcmFtZS5kb2N1bWVudCgpLT50b3BPcmlnaW4oKS0+ZG9tYWluRm9yQ2Fj
aGVQYXJ0aXRpb24oKSk7CiAjZW5kaWYKLSAgICAgICAgICAgICAgICBDYWNoZWRSZXNvdXJjZSog
Y2FjaGVkUmVzb3VyY2UgPSBNZW1vcnlDYWNoZTo6c2luZ2xldG9uKCkucmVzb3VyY2VGb3JSZXF1
ZXN0KHJlcXVlc3QsIGZyYW1lLnBhZ2UoKS0+c2Vzc2lvbklEKCkpOwotICAgICAgICAgICAgICAg
IGlmIChjYWNoZWRSZXNvdXJjZSkgewotICAgICAgICAgICAgICAgICAgICBpZiAoUmVmUHRyPEFy
Y2hpdmVSZXNvdXJjZT4gcmVzb3VyY2UgPSBBcmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShjYWNoZWRS
ZXNvdXJjZS0+cmVzb3VyY2VCdWZmZXIoKSwgc3VicmVzb3VyY2VVUkwsIGNhY2hlZFJlc291cmNl
LT5yZXNwb25zZSgpKSkgewotICAgICAgICAgICAgICAgICAgICAgICAgc3VicmVzb3VyY2VzLmFw
cGVuZChXVEZNb3ZlKHJlc291cmNlKSk7CisgICAgICAgICAgICAgICAgaWYgKGF1dG8qIGNhY2hl
ZFJlc291cmNlID0gTWVtb3J5Q2FjaGU6OnNpbmdsZXRvbigpLnJlc291cmNlRm9yUmVxdWVzdChy
ZXF1ZXN0LCBmcmFtZS5wYWdlKCktPnNlc3Npb25JRCgpKSkgeworICAgICAgICAgICAgICAgICAg
ICBpZiAoYXV0byByZXNvdXJjZSA9IEFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKGNhY2hlZFJlc291
cmNlLT5yZXNvdXJjZUJ1ZmZlcigpLCBzdWJyZXNvdXJjZVVSTCwgY2FjaGVkUmVzb3VyY2UtPnJl
c3BvbnNlKCkpKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBzdWJyZXNvdXJjZXMuYXBwZW5k
KHJlc291cmNlLnJlbGVhc2VOb25OdWxsKCkpOwogICAgICAgICAgICAgICAgICAgICAgICAgY29u
dGludWU7CiAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICB9CkBAIC01NDMs
MTcgKzUzMSwxNyBAQCBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6
Y3JlYXRlKGNvbnN0IFN0cmluZyYgbWFya3VwU3RyaW5nLCBGcgogICAgIH0KIAogICAgIC8vIEFk
ZCBmYXZpY29uIGlmIG9uZSBleGlzdHMgZm9yIHRoaXMgcGFnZSwgaWYgd2UgYXJlIGFyY2hpdmlu
ZyB0aGUgZW50aXJlIHBhZ2UuCi0gICAgaWYgKG5vZGVzU2l6ZSAmJiBub2Rlc1swXS0+aXNEb2N1
bWVudE5vZGUoKSAmJiBpY29uRGF0YWJhc2UoKS5pc0VuYWJsZWQoKSkgewotICAgICAgICBjb25z
dCBTdHJpbmcmIGljb25VUkwgPSBpY29uRGF0YWJhc2UoKS5zeW5jaHJvbm91c0ljb25VUkxGb3JQ
YWdlVVJMKHJlc3BvbnNlVVJMKTsKKyAgICBpZiAoIW5vZGVzLmlzRW1wdHkoKSAmJiBub2Rlc1sw
XS0+aXNEb2N1bWVudE5vZGUoKSAmJiBpY29uRGF0YWJhc2UoKS5pc0VuYWJsZWQoKSkgeworICAg
ICAgICBhdXRvIGljb25VUkwgPSBpY29uRGF0YWJhc2UoKS5zeW5jaHJvbm91c0ljb25VUkxGb3JQ
YWdlVVJMKHJlc3BvbnNlVVJMKTsKICAgICAgICAgaWYgKCFpY29uVVJMLmlzRW1wdHkoKSAmJiBp
Y29uRGF0YWJhc2UoKS5zeW5jaHJvbm91c0ljb25EYXRhS25vd25Gb3JJY29uVVJMKGljb25VUkwp
KSB7Ci0gICAgICAgICAgICBpZiAoSW1hZ2UqIGljb25JbWFnZSA9IGljb25EYXRhYmFzZSgpLnN5
bmNocm9ub3VzSWNvbkZvclBhZ2VVUkwocmVzcG9uc2VVUkwsIEludFNpemUoMTYsIDE2KSkpIHsK
KyAgICAgICAgICAgIGlmIChhdXRvKiBpY29uSW1hZ2UgPSBpY29uRGF0YWJhc2UoKS5zeW5jaHJv
bm91c0ljb25Gb3JQYWdlVVJMKHJlc3BvbnNlVVJMLCBJbnRTaXplKDE2LCAxNikpKSB7CiAgICAg
ICAgICAgICAgICAgaWYgKGF1dG8gcmVzb3VyY2UgPSBBcmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShp
Y29uSW1hZ2UtPmRhdGEoKSwgVVJMKFBhcnNlZFVSTFN0cmluZywgaWNvblVSTCksICJpbWFnZS94
LWljb24iLCAiIiwgIiIpKQotICAgICAgICAgICAgICAgICAgICBzdWJyZXNvdXJjZXMuYXBwZW5k
KFdURk1vdmUocmVzb3VyY2UpKTsKKyAgICAgICAgICAgICAgICAgICAgc3VicmVzb3VyY2VzLmFw
cGVuZChyZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICAgICAgICAgIH0KICAgICAgICAg
fQogICAgIH0KIAotICAgIHJldHVybiBjcmVhdGUoV1RGTW92ZShtYWluUmVzb3VyY2UpLCBXVEZN
b3ZlKHN1YnJlc291cmNlcyksIFdURk1vdmUoc3ViZnJhbWVBcmNoaXZlcykpOworICAgIHJldHVy
biBjcmVhdGUobWFpblJlc291cmNlLnJlbGVhc2VOb25OdWxsKCksIFdURk1vdmUoc3VicmVzb3Vy
Y2VzKSwgV1RGTW92ZShzdWJmcmFtZUFyY2hpdmVzKSk7CiB9CiAKIFJlZlB0cjxMZWdhY3lXZWJB
cmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVGcm9tU2VsZWN0aW9uKEZyYW1lKiBmcmFt
ZSkKQEAgLTU2MSw3ICs1NDksNyBAQCBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2Vi
QXJjaGl2ZTo6Y3JlYXRlRnJvbVNlbGVjdGlvbihGcmFtZSogZnJhbWUpCiAgICAgaWYgKCFmcmFt
ZSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKLSAgICBEb2N1bWVudCogZG9jdW1lbnQgPSBm
cmFtZS0+ZG9jdW1lbnQoKTsKKyAgICBhdXRvKiBkb2N1bWVudCA9IGZyYW1lLT5kb2N1bWVudCgp
OwogICAgIGlmICghZG9jdW1lbnQpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCkBAIC01Njks
MTIgKzU1NywxMCBAQCBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6
Y3JlYXRlRnJvbVNlbGVjdGlvbihGcmFtZSogZnJhbWUpCiAgICAgYnVpbGRlci5hcHBlbmQoZG9j
dW1lbnRUeXBlU3RyaW5nKCpkb2N1bWVudCkpOwogCiAgICAgVmVjdG9yPE5vZGUqPiBub2RlTGlz
dDsKLSAgICBSZWZQdHI8UmFuZ2U+IHNlbGVjdGlvblJhbmdlID0gZnJhbWUtPnNlbGVjdGlvbigp
LnRvTm9ybWFsaXplZFJhbmdlKCk7Ci0gICAgaWYgKHNlbGVjdGlvblJhbmdlKQorICAgIGlmIChh
dXRvIHNlbGVjdGlvblJhbmdlID0gZnJhbWUtPnNlbGVjdGlvbigpLnRvTm9ybWFsaXplZFJhbmdl
KCkpCiAgICAgICAgIGJ1aWxkZXIuYXBwZW5kKGNyZWF0ZU1hcmt1cCgqc2VsZWN0aW9uUmFuZ2Us
ICZub2RlTGlzdCwgQW5ub3RhdGVGb3JJbnRlcmNoYW5nZSkpOwogCi0gICAgU3RyaW5nIG1hcmt1
cFN0cmluZyA9IGJ1aWxkZXIudG9TdHJpbmcoKTsKLSAgICBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2
ZT4gYXJjaGl2ZSA9IGNyZWF0ZShtYXJrdXBTdHJpbmcsICpmcmFtZSwgbm9kZUxpc3QsIG51bGxw
dHIpOworICAgIGF1dG8gYXJjaGl2ZSA9IGNyZWF0ZShidWlsZGVyLnRvU3RyaW5nKCksICpmcmFt
ZSwgbm9kZUxpc3QsIG51bGxwdHIpOwogICAgIAogICAgIGlmICghZG9jdW1lbnQtPmlzRnJhbWVT
ZXQoKSkKICAgICAgICAgcmV0dXJuIGFyY2hpdmU7CkBAIC01ODQsNyArNTcwLDExIEBAIFJlZlB0
cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVGcm9tU2VsZWN0aW9u
KEZyYW1lKiBmcmFtZSkKICAgICBTdHJpbmcgaWZyYW1lTWFya3VwID0gIjxpZnJhbWUgZnJhbWVi
b3JkZXI9XCJub1wiIG1hcmdpbndpZHRoPVwiMFwiIG1hcmdpbmhlaWdodD1cIjBcIiB3aWR0aD1c
Ijk4JSVcIiBoZWlnaHQ9XCI5OCUlXCIgc3JjPVwiIiArIGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVu
dExvYWRlcigpLT5yZXNwb25zZSgpLnVybCgpLnN0cmluZygpICsgIlwiPjwvaWZyYW1lPiI7CiAg
ICAgYXV0byBpZnJhbWVSZXNvdXJjZSA9IEFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKHV0ZjhCdWZm
ZXIoaWZyYW1lTWFya3VwKSwgYmxhbmtVUkwoKSwgInRleHQvaHRtbCIsICJVVEYtOCIsIFN0cmlu
ZygpKTsKIAotICAgIHJldHVybiBjcmVhdGUoV1RGTW92ZShpZnJhbWVSZXNvdXJjZSksIFZlY3Rv
cjxSZWZQdHI8QXJjaGl2ZVJlc291cmNlPj4oKSwgVmVjdG9yPFJlZlB0cjxMZWdhY3lXZWJBcmNo
aXZlPj4geyBhcmNoaXZlIH0pOworICAgIFZlY3RvcjxSZWY8TGVnYWN5V2ViQXJjaGl2ZT4+IHN1
YmZyYW1lQXJjaGl2ZXM7CisgICAgc3ViZnJhbWVBcmNoaXZlcy5yZXNlcnZlSW5pdGlhbENhcGFj
aXR5KDEpOworICAgIHN1YmZyYW1lQXJjaGl2ZXMudW5jaGVja2VkQXBwZW5kKGFyY2hpdmUucmVs
ZWFzZU5vbk51bGwoKSk7CisKKyAgICByZXR1cm4gY3JlYXRlKGlmcmFtZVJlc291cmNlLnJlbGVh
c2VOb25OdWxsKCksIHsgfSwgV1RGTW92ZShzdWJmcmFtZUFyY2hpdmVzKSk7CiB9CiAKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL2NmL0xlZ2FjeVdlYkFyY2hp
dmUuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL2NmL0xlZ2FjeVdlYkFyY2hpdmUu
aAppbmRleCAzNWRkZjNjMmE1OWMwODYzM2JkZDliMjEzNDdiMzZmOGQyNzYyYzFhLi40NDY3ZDBk
NmEwM2UwODAzYWU2YmE3NTYzOTc2ZWJlNTIyYTE0OThhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvYXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNoaXZlLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2FyY2hpdmUvY2YvTGVnYWN5V2ViQXJjaGl2ZS5oCkBAIC0zNywyMyArMzcs
MjYgQEAgY2xhc3MgRnJhbWU7CiBjbGFzcyBOb2RlOwogY2xhc3MgUmFuZ2U7CiAKLWNsYXNzIExl
Z2FjeVdlYkFyY2hpdmUgOiBwdWJsaWMgQXJjaGl2ZSB7CitjbGFzcyBMZWdhY3lXZWJBcmNoaXZl
IGZpbmFsIDogcHVibGljIEFyY2hpdmUgewogcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIHN0
YXRpYyBSZWY8TGVnYWN5V2ViQXJjaGl2ZT4gY3JlYXRlKCk7CiAgICAgV0VCQ09SRV9FWFBPUlQg
c3RhdGljIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBjcmVhdGUoU2hhcmVkQnVmZmVyJik7CiAg
ICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBjcmVhdGUo
Y29uc3QgVVJMJiwgU2hhcmVkQnVmZmVyJik7Ci0gICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJl
ZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBjcmVhdGUoUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4mJiBt
YWluUmVzb3VyY2UsIFZlY3RvcjxSZWZQdHI8QXJjaGl2ZVJlc291cmNlPj4mJiBzdWJyZXNvdXJj
ZXMsIFZlY3RvcjxSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4+JiYgc3ViZnJhbWVBcmNoaXZlcyk7
CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxMZWdhY3lXZWJBcmNoaXZlPiBjcmVhdGUo
UmVmPEFyY2hpdmVSZXNvdXJjZT4mJiBtYWluUmVzb3VyY2UsIFZlY3RvcjxSZWY8QXJjaGl2ZVJl
c291cmNlPj4mJiBzdWJyZXNvdXJjZXMsIFZlY3RvcjxSZWY8TGVnYWN5V2ViQXJjaGl2ZT4+JiYg
c3ViZnJhbWVBcmNoaXZlcyk7CiAgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZlB0cjxMZWdh
Y3lXZWJBcmNoaXZlPiBjcmVhdGUoTm9kZSYsIHN0ZDo6ZnVuY3Rpb248Ym9vbChGcmFtZSYpPiBm
cmFtZUZpbHRlciA9IG51bGxwdHIpOwogICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBSZWZQdHI8
TGVnYWN5V2ViQXJjaGl2ZT4gY3JlYXRlKEZyYW1lJik7CiAgICAgV0VCQ09SRV9FWFBPUlQgc3Rh
dGljIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBjcmVhdGVGcm9tU2VsZWN0aW9uKEZyYW1lKik7
CiAgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBjcmVh
dGUoUmFuZ2UqKTsKIAotICAgIFR5cGUgdHlwZSgpIGNvbnN0IG92ZXJyaWRlOwotCiAgICAgV0VC
Q09SRV9FWFBPUlQgUmV0YWluUHRyPENGRGF0YVJlZj4gcmF3RGF0YVJlcHJlc2VudGF0aW9uKCk7
CiAKIHByaXZhdGU6Ci0gICAgTGVnYWN5V2ViQXJjaGl2ZSgpIHsgfQorICAgIExlZ2FjeVdlYkFy
Y2hpdmUoKSA9IGRlZmF1bHQ7CisKKyAgICBib29sIHNob3VsZExvYWRGcm9tQXJjaGl2ZU9ubHko
KSBjb25zdCBmaW5hbCB7IHJldHVybiBmYWxzZTsgfQorICAgIGJvb2wgc2hvdWxkT3ZlcnJpZGVC
YXNlVVJMKCkgY29uc3QgZmluYWwgeyByZXR1cm4gZmFsc2U7IH0KKyAgICBib29sIHNob3VsZFVz
ZU1haW5SZXNvdXJjZUVuY29kaW5nKCkgY29uc3QgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQorICAg
IGJvb2wgc2hvdWxkVXNlTWFpblJlc291cmNlVVJMKCkgY29uc3QgZmluYWwgeyByZXR1cm4gdHJ1
ZTsgfQogCiAgICAgZW51bSBNYWluUmVzb3VyY2VTdGF0dXMgeyBTdWJyZXNvdXJjZSwgTWFpblJl
c291cmNlIH07CiAKQEAgLTYyLDcgKzY1LDcgQEAgcHJpdmF0ZToKICAgICBzdGF0aWMgUmVzb3Vy
Y2VSZXNwb25zZSBjcmVhdGVSZXNvdXJjZVJlc3BvbnNlRnJvbU1hY0FyY2hpdmVkRGF0YShDRkRh
dGFSZWYpOwogICAgIHN0YXRpYyBSZXNvdXJjZVJlc3BvbnNlIGNyZWF0ZVJlc291cmNlUmVzcG9u
c2VGcm9tUHJvcGVydHlMaXN0RGF0YShDRkRhdGFSZWYsIENGU3RyaW5nUmVmIHJlc3BvbnNlRGF0
YVR5cGUpOwogICAgIHN0YXRpYyBSZXRhaW5QdHI8Q0ZEYXRhUmVmPiBjcmVhdGVQcm9wZXJ0eUxp
c3RSZXByZXNlbnRhdGlvbihjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7Ci0gICAgc3RhdGljIFJl
dGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9u
KEFyY2hpdmUqKTsKKyAgICBzdGF0aWMgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gY3JlYXRl
UHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24oQXJjaGl2ZSYpOwogICAgIHN0YXRpYyBSZXRhaW5Q
dHI8Q0ZEaWN0aW9uYXJ5UmVmPiBjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihBcmNo
aXZlUmVzb3VyY2UqLCBNYWluUmVzb3VyY2VTdGF0dXMpOwogCiAgICAgYm9vbCBleHRyYWN0KENG
RGljdGlvbmFyeVJlZik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2
ZS9taHRtbC9NSFRNTEFyY2hpdmUuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUv
bWh0bWwvTUhUTUxBcmNoaXZlLmNwcAppbmRleCBlMWYzYWQwNmE1ZjdmMmI4MDU1MzEwNDVkYTRi
ODZjMmQzYzgyZGQzLi5hOTIxYjA1ZTg0NmEwNWE1YWZjZTYzMDNhYTE4ZjhiZjMwNzA5ZGI0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRNTEFyY2hp
dmUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL21odG1sL01IVE1MQXJj
aGl2ZS5jcHAKQEAgLTEyMiwxNSArMTIyLDE1IEBAIFJlZlB0cjxNSFRNTEFyY2hpdmU+IE1IVE1M
QXJjaGl2ZTo6Y3JlYXRlKGNvbnN0IFVSTCYgdXJsLCBTaGFyZWRCdWZmZXImIGRhdGEpCiAgICAg
ICAgIFJlZlB0cjxNSFRNTEFyY2hpdmU+IGFyY2hpdmUgPSBwYXJzZXIuZnJhbWVBdChpKTsKICAg
ICAgICAgZm9yIChzaXplX3QgaiA9IDE7IGogPCBwYXJzZXIuZnJhbWVDb3VudCgpOyArK2opIHsK
ICAgICAgICAgICAgIGlmIChpICE9IGopCi0gICAgICAgICAgICAgICAgYXJjaGl2ZS0+YWRkU3Vi
ZnJhbWVBcmNoaXZlKHBhcnNlci5mcmFtZUF0KGopKTsKKyAgICAgICAgICAgICAgICBhcmNoaXZl
LT5hZGRTdWJmcmFtZUFyY2hpdmUoKnBhcnNlci5mcmFtZUF0KGopKTsKICAgICAgICAgfQogICAg
ICAgICBmb3IgKHNpemVfdCBqID0gMDsgaiA8IHBhcnNlci5zdWJSZXNvdXJjZUNvdW50KCk7ICsr
aikKLSAgICAgICAgICAgIGFyY2hpdmUtPmFkZFN1YnJlc291cmNlKHBhcnNlci5zdWJSZXNvdXJj
ZUF0KGopKTsKKyAgICAgICAgICAgIGFyY2hpdmUtPmFkZFN1YnJlc291cmNlKCpwYXJzZXIuc3Vi
UmVzb3VyY2VBdChqKSk7CiAgICAgfQogICAgIHJldHVybiBtYWluQXJjaGl2ZTsKIH0KIAotUGFz
c1JlZlB0cjxTaGFyZWRCdWZmZXI+IE1IVE1MQXJjaGl2ZTo6Z2VuZXJhdGVNSFRNTERhdGEoUGFn
ZSogcGFnZSkKK1JlZlB0cjxTaGFyZWRCdWZmZXI+IE1IVE1MQXJjaGl2ZTo6Z2VuZXJhdGVNSFRN
TERhdGEoUGFnZSogcGFnZSkKIHsKICAgICBWZWN0b3I8UGFnZVNlcmlhbGl6ZXI6OlJlc291cmNl
PiByZXNvdXJjZXM7CiAgICAgUGFnZVNlcmlhbGl6ZXIgcGFnZVNlcmlhbGl6ZXIoJnJlc291cmNl
cyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRN
TEFyY2hpdmUuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL21odG1sL01IVE1MQXJj
aGl2ZS5oCmluZGV4IGNhMjAwMDM3OWJkZjQxMmY0ZTQxMjRlYWYyMWFiYTY2YTE1ZTM0YjIuLjg1
MjQ2NTlhYWIyMjBkZTA3NWM2NzdhYjcwZjE5YWNjYzg4MThkZmYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL21odG1sL01IVE1MQXJjaGl2ZS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL21odG1sL01IVE1MQXJjaGl2ZS5oCkBAIC00MCwyMiAr
NDAsMjQgQEAgY2xhc3MgTUhUTUxQYXJzZXI7CiBjbGFzcyBQYWdlOwogY2xhc3MgU2hhcmVkQnVm
ZmVyOwogCi1jbGFzcyBNSFRNTEFyY2hpdmUgOiBwdWJsaWMgQXJjaGl2ZSB7CitjbGFzcyBNSFRN
TEFyY2hpdmUgZmluYWwgOiBwdWJsaWMgQXJjaGl2ZSB7CiBwdWJsaWM6Ci0gICAgVHlwZSB0eXBl
KCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gTUhUTUw7IH0KLQogICAgIHN0YXRpYyBSZWY8TUhU
TUxBcmNoaXZlPiBjcmVhdGUoKTsKICAgICBzdGF0aWMgUmVmUHRyPE1IVE1MQXJjaGl2ZT4gY3Jl
YXRlKGNvbnN0IFVSTCYsIFNoYXJlZEJ1ZmZlciYpOwogCi0gICAgc3RhdGljIFBhc3NSZWZQdHI8
U2hhcmVkQnVmZmVyPiBnZW5lcmF0ZU1IVE1MRGF0YShQYWdlKik7CisgICAgc3RhdGljIFJlZlB0
cjxTaGFyZWRCdWZmZXI+IGdlbmVyYXRlTUhUTUxEYXRhKFBhZ2UqKTsKIAogICAgIHZpcnR1YWwg
fk1IVE1MQXJjaGl2ZSgpOwogCiBwcml2YXRlOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFNoYXJl
ZEJ1ZmZlcj4gZ2VuZXJhdGVNSFRNTERhdGEoUGFnZSosIGJvb2wgdXNlQmluYXJ5RW5jb2Rpbmcp
OwotCiAgICAgZnJpZW5kIGNsYXNzIE1IVE1MUGFyc2VyOworCiAgICAgTUhUTUxBcmNoaXZlKCk7
CisKKyAgICBib29sIHNob3VsZExvYWRGcm9tQXJjaGl2ZU9ubHkoKSBjb25zdCBmaW5hbCB7IHJl
dHVybiB0cnVlOyB9CisgICAgYm9vbCBzaG91bGRPdmVycmlkZUJhc2VVUkwoKSBjb25zdCBmaW5h
bCB7IHJldHVybiB0cnVlOyB9CisgICAgYm9vbCBzaG91bGRVc2VNYWluUmVzb3VyY2VFbmNvZGlu
ZygpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIGZhbHNlOyB9CisgICAgYm9vbCBzaG91bGRVc2VNYWlu
UmVzb3VyY2VVUkwoKSBjb25zdCBmaW5hbCB7IHJldHVybiBmYWxzZTsgfQogfTsKIAogfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hp
dmUvbWh0bWwvTUhUTUxQYXJzZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUv
bWh0bWwvTUhUTUxQYXJzZXIuY3BwCmluZGV4IGY4YTA3ZWRkYWE2YTgzMzAwNmFlMDA2ODBjOTdm
ZDcwOTFjNmQ5Y2EuLmIwNDE0ZWJjOTYxNTViMTViYTE0YzZmM2Q1ODg5NWY2ZjMyNzAyYTIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL21odG1sL01IVE1MUGFyc2Vy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRNTFBhcnNl
ci5jcHAKQEAgLTc1LDcgKzc1LDcgQEAgUmVmUHRyPE1IVE1MQXJjaGl2ZT4gTUhUTUxQYXJzZXI6
OnBhcnNlQXJjaGl2ZVdpdGhIZWFkZXIoTUlNRUhlYWRlciogaGVhZGVyKQogICAgICAgICBSZWZQ
dHI8QXJjaGl2ZVJlc291cmNlPiByZXNvdXJjZSA9IHBhcnNlTmV4dFBhcnQoKmhlYWRlciwgU3Ry
aW5nKCksIFN0cmluZygpLCBlbmRPZkFyY2hpdmVSZWFjaGVkKTsKICAgICAgICAgaWYgKCFyZXNv
dXJjZSkKICAgICAgICAgICAgIHJldHVybiBudWxscHRyOwotICAgICAgICBhcmNoaXZlLT5zZXRN
YWluUmVzb3VyY2UocmVzb3VyY2UpOworICAgICAgICBhcmNoaXZlLT5zZXRNYWluUmVzb3VyY2Uo
cmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSk7CiAgICAgICAgIHJldHVybiBhcmNoaXZlOwogICAg
IH0KIApAQCAtMTAxLDcgKzEwMSw3IEBAIFJlZlB0cjxNSFRNTEFyY2hpdmU+IE1IVE1MUGFyc2Vy
OjpwYXJzZUFyY2hpdmVXaXRoSGVhZGVyKE1JTUVIZWFkZXIqIGhlYWRlcikKICAgICAgICAgICAg
IC8vIFRoZSB0b3AtZnJhbWUgaXMgdGhlIGZpcnN0IGZyYW1lIGZvdW5kLCByZWdhcmRsZXNzIG9m
IHRoZSBuZXN0aW5nIGxldmVsLgogICAgICAgICAgICAgaWYgKHN1YmZyYW1lQXJjaGl2ZS0+bWFp
blJlc291cmNlKCkpCiAgICAgICAgICAgICAgICAgYWRkUmVzb3VyY2VUb0FyY2hpdmUoc3ViZnJh
bWVBcmNoaXZlLT5tYWluUmVzb3VyY2UoKSwgYXJjaGl2ZS5nZXQoKSk7Ci0gICAgICAgICAgICBh
cmNoaXZlLT5hZGRTdWJmcmFtZUFyY2hpdmUoc3ViZnJhbWVBcmNoaXZlKTsKKyAgICAgICAgICAg
IGFyY2hpdmUtPmFkZFN1YmZyYW1lQXJjaGl2ZShzdWJmcmFtZUFyY2hpdmUucmVsZWFzZU5vbk51
bGwoKSk7CiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgfQogCkBAIC0xMjYsMTMgKzEy
NiwxMyBAQCB2b2lkIE1IVE1MUGFyc2VyOjphZGRSZXNvdXJjZVRvQXJjaGl2ZShBcmNoaXZlUmVz
b3VyY2UqIHJlc291cmNlLCBNSFRNTEFyY2hpdmUqCiAKICAgICAvLyBUaGUgZmlyc3QgZG9jdW1l
bnQgc3VpdGFibGUgcmVzb3VyY2UgaXMgdGhlIG1haW4gZnJhbWUuCiAgICAgaWYgKCFhcmNoaXZl
LT5tYWluUmVzb3VyY2UoKSkgewotICAgICAgICBhcmNoaXZlLT5zZXRNYWluUmVzb3VyY2UocmVz
b3VyY2UpOworICAgICAgICBhcmNoaXZlLT5zZXRNYWluUmVzb3VyY2UoKnJlc291cmNlKTsKICAg
ICAgICAgbV9mcmFtZXMuYXBwZW5kKGFyY2hpdmUpOwogICAgICAgICByZXR1cm47CiAgICAgfQog
CiAgICAgUmVmUHRyPE1IVE1MQXJjaGl2ZT4gc3ViZnJhbWUgPSBNSFRNTEFyY2hpdmU6OmNyZWF0
ZSgpOwotICAgIHN1YmZyYW1lLT5zZXRNYWluUmVzb3VyY2UocmVzb3VyY2UpOworICAgIHN1YmZy
YW1lLT5zZXRNYWluUmVzb3VyY2UoKnJlc291cmNlKTsKICAgICBtX2ZyYW1lcy5hcHBlbmQoc3Vi
ZnJhbWUpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2Fj
aGVkQ1NTU3R5bGVTaGVldC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
Q1NTU3R5bGVTaGVldC5jcHAKaW5kZXggOGJmMDY5MWFjNDk2NjU1MThjZmE4YWI1ZTkxMTA1MDdk
ZWQ3NzA2OS4uYWY0MGNjMjA0YWQwNDdmODVjMjM0MTdjYmNlN2YxOTdlM2JlNjI0MSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZENTU1N0eWxlU2hlZXQuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmNw
cApAQCAtMyw3ICszLDcgQEAKICAgICBDb3B5cmlnaHQgKEMpIDIwMDEgRGlyayBNdWVsbGVyICht
dWVsbGVyQGtkZS5vcmcpCiAgICAgQ29weXJpZ2h0IChDKSAyMDAyIFdhbGRvIEJhc3RpYW4gKGJh
c3RpYW5Aa2RlLm9yZykKICAgICBDb3B5cmlnaHQgKEMpIDIwMDYgU2FtdWVsIFdlaW5pZyAoc2Ft
LndlaW5pZ0BnbWFpbC5jb20pCi0gICAgQ29weXJpZ2h0IChDKSAyMDA0LCAyMDA1LCAyMDA2IEFw
cGxlIEluYy4KKyAgICBDb3B5cmlnaHQgKEMpIDIwMDQtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCiAKICAgICBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNh
biByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCiAgICAgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBv
ZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKQEAgLTE5LDkgKzE5LDYgQEAKICAgICBh
bG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90
LCB3cml0ZSB0bwogICAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZy
YW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCiAgICAgQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBV
U0EuCi0KLSAgICBUaGlzIGNsYXNzIHByb3ZpZGVzIGFsbCBmdW5jdGlvbmFsaXR5IG5lZWRlZCBm
b3IgbG9hZGluZyBpbWFnZXMsIHN0eWxlIHNoZWV0cyBhbmQgaHRtbAotICAgIHBhZ2VzIGZyb20g
dGhlIHdlYi4gSXQgaGFzIGEgbWVtb3J5IGNhY2hlIGZvciB0aGVzZSBvYmplY3RzLgogKi8KIAog
I2luY2x1ZGUgImNvbmZpZy5oIgpAQCAtMTU2LDcgKzE1Myw3IEBAIHZvaWQgQ2FjaGVkQ1NTU3R5
bGVTaGVldDo6ZGVzdHJveURlY29kZWREYXRhKCkKICAgICBzZXREZWNvZGVkU2l6ZSgwKTsKIH0K
IAotUGFzc1JlZlB0cjxTdHlsZVNoZWV0Q29udGVudHM+IENhY2hlZENTU1N0eWxlU2hlZXQ6OnJl
c3RvcmVQYXJzZWRTdHlsZVNoZWV0KGNvbnN0IENTU1BhcnNlckNvbnRleHQmIGNvbnRleHQsIENh
Y2hlUG9saWN5IGNhY2hlUG9saWN5KQorUmVmUHRyPFN0eWxlU2hlZXRDb250ZW50cz4gQ2FjaGVk
Q1NTU3R5bGVTaGVldDo6cmVzdG9yZVBhcnNlZFN0eWxlU2hlZXQoY29uc3QgQ1NTUGFyc2VyQ29u
dGV4dCYgY29udGV4dCwgQ2FjaGVQb2xpY3kgY2FjaGVQb2xpY3kpCiB7CiAgICAgaWYgKCFtX3Bh
cnNlZFN0eWxlU2hlZXRDYWNoZSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CkBAIC0xODAsNyAr
MTc3LDcgQEAgUGFzc1JlZlB0cjxTdHlsZVNoZWV0Q29udGVudHM+IENhY2hlZENTU1N0eWxlU2hl
ZXQ6OnJlc3RvcmVQYXJzZWRTdHlsZVNoZWV0KGNvbnMKIAogdm9pZCBDYWNoZWRDU1NTdHlsZVNo
ZWV0OjpzYXZlUGFyc2VkU3R5bGVTaGVldChSZWY8U3R5bGVTaGVldENvbnRlbnRzPiYmIHNoZWV0
KQogewotICAgIEFTU0VSVChzaGVldC5nZXQoKS5pc0NhY2hlYWJsZSgpKTsKKyAgICBBU1NFUlQo
c2hlZXQtPmlzQ2FjaGVhYmxlKCkpOwogCiAgICAgaWYgKG1fcGFyc2VkU3R5bGVTaGVldENhY2hl
KQogICAgICAgICBtX3BhcnNlZFN0eWxlU2hlZXRDYWNoZS0+cmVtb3ZlZEZyb21NZW1vcnlDYWNo
ZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZENTU1N0
eWxlU2hlZXQuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNo
ZWV0LmgKaW5kZXggM2M4YWUyOGRkMjdhZWY4MGFlMmRlZWI0YTMzNmU3NDg1NGU3ZWYwYy4uYzMz
YWEyZTQwODU1MzhiYzdiNDU2ZjQxNjM5YzJjYzE4NzlmODc0ZSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZENTU1N0eWxlU2hlZXQuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5oCkBAIC0yLDcgKzIsNyBA
QAogICAgIENvcHlyaWdodCAoQykgMTk5OCBMYXJzIEtub2xsIChrbm9sbEBtcGktaGQubXBnLmRl
KQogICAgIENvcHlyaWdodCAoQykgMjAwMSBEaXJrIE11ZWxsZXIgPG11ZWxsZXJAa2RlLm9yZz4K
ICAgICBDb3B5cmlnaHQgKEMpIDIwMDYgU2FtdWVsIFdlaW5pZyAoc2FtLndlaW5pZ0BnbWFpbC5j
b20pCi0gICAgQ29weXJpZ2h0IChDKSAyMDA0LCAyMDA1LCAyMDA2LCAyMDA3LCAyMDA4IEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAgICBDb3B5cmlnaHQgKEMpIDIwMDQtMjAxNyBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAKICAgICBUaGlzIGxpYnJhcnkgaXMgZnJl
ZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCiAgICAgbW9kaWZ5IGl0
IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKQEAgLTE4
LDkgKzE4LDYgQEAKICAgICBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENP
UFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bwogICAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5k
YXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCiAgICAgQm9zdG9u
LCBNQSAwMjExMC0xMzAxLCBVU0EuCi0KLSAgICBUaGlzIGNsYXNzIHByb3ZpZGVzIGFsbCBmdW5j
dGlvbmFsaXR5IG5lZWRlZCBmb3IgbG9hZGluZyBpbWFnZXMsIHN0eWxlIHNoZWV0cyBhbmQgaHRt
bAotICAgIHBhZ2VzIGZyb20gdGhlIHdlYi4gSXQgaGFzIGEgbWVtb3J5IGNhY2hlIGZvciB0aGVz
ZSBvYmplY3RzLgogKi8KIAogI3ByYWdtYSBvbmNlCkBAIC0yOSw0NCArMjYsNDQgQEAKIAogbmFt
ZXNwYWNlIFdlYkNvcmUgewogCi0gICAgY2xhc3MgQ2FjaGVkUmVzb3VyY2VDbGllbnQ7Ci0gICAg
Y2xhc3MgU3R5bGVTaGVldENvbnRlbnRzOwotICAgIGNsYXNzIFRleHRSZXNvdXJjZURlY29kZXI7
Ci0gICAgc3RydWN0IENTU1BhcnNlckNvbnRleHQ7CitjbGFzcyBTdHlsZVNoZWV0Q29udGVudHM7
CitjbGFzcyBUZXh0UmVzb3VyY2VEZWNvZGVyOworCitzdHJ1Y3QgQ1NTUGFyc2VyQ29udGV4dDsK
IAotICAgIGNsYXNzIENhY2hlZENTU1N0eWxlU2hlZXQgZmluYWwgOiBwdWJsaWMgQ2FjaGVkUmVz
b3VyY2UgewotICAgIHB1YmxpYzoKLSAgICAgICAgQ2FjaGVkQ1NTU3R5bGVTaGVldChDYWNoZWRS
ZXNvdXJjZVJlcXVlc3QmJiwgU2Vzc2lvbklEKTsKLSAgICAgICAgdmlydHVhbCB+Q2FjaGVkQ1NT
U3R5bGVTaGVldCgpOworY2xhc3MgQ2FjaGVkQ1NTU3R5bGVTaGVldCBmaW5hbCA6IHB1YmxpYyBD
YWNoZWRSZXNvdXJjZSB7CitwdWJsaWM6CisgICAgQ2FjaGVkQ1NTU3R5bGVTaGVldChDYWNoZWRS
ZXNvdXJjZVJlcXVlc3QmJiwgU2Vzc2lvbklEKTsKKyAgICB2aXJ0dWFsIH5DYWNoZWRDU1NTdHls
ZVNoZWV0KCk7CiAKLSAgICAgICAgZW51bSBjbGFzcyBNSU1FVHlwZUNoZWNrIHsgU3RyaWN0LCBM
YXggfTsKLSAgICAgICAgY29uc3QgU3RyaW5nIHNoZWV0VGV4dChNSU1FVHlwZUNoZWNrID0gTUlN
RVR5cGVDaGVjazo6U3RyaWN0LCBib29sKiBoYXNWYWxpZE1JTUVUeXBlID0gbnVsbHB0cikgY29u
c3Q7CisgICAgZW51bSBjbGFzcyBNSU1FVHlwZUNoZWNrIHsgU3RyaWN0LCBMYXggfTsKKyAgICBj
b25zdCBTdHJpbmcgc2hlZXRUZXh0KE1JTUVUeXBlQ2hlY2sgPSBNSU1FVHlwZUNoZWNrOjpTdHJp
Y3QsIGJvb2wqIGhhc1ZhbGlkTUlNRVR5cGUgPSBudWxscHRyKSBjb25zdDsKIAotICAgICAgICBQ
YXNzUmVmUHRyPFN0eWxlU2hlZXRDb250ZW50cz4gcmVzdG9yZVBhcnNlZFN0eWxlU2hlZXQoY29u
c3QgQ1NTUGFyc2VyQ29udGV4dCYsIENhY2hlUG9saWN5KTsKLSAgICAgICAgdm9pZCBzYXZlUGFy
c2VkU3R5bGVTaGVldChSZWY8U3R5bGVTaGVldENvbnRlbnRzPiYmKTsKKyAgICBSZWZQdHI8U3R5
bGVTaGVldENvbnRlbnRzPiByZXN0b3JlUGFyc2VkU3R5bGVTaGVldChjb25zdCBDU1NQYXJzZXJD
b250ZXh0JiwgQ2FjaGVQb2xpY3kpOworICAgIHZvaWQgc2F2ZVBhcnNlZFN0eWxlU2hlZXQoUmVm
PFN0eWxlU2hlZXRDb250ZW50cz4mJik7CiAKLSAgICBwcml2YXRlOgotICAgICAgICBib29sIGNh
blVzZVNoZWV0KE1JTUVUeXBlQ2hlY2ssIGJvb2wqIGhhc1ZhbGlkTUlNRVR5cGUpIGNvbnN0Owot
ICAgICAgICBib29sIG1heVRyeVJlcGxhY2VFbmNvZGVkRGF0YSgpIGNvbnN0IGZpbmFsIHsgcmV0
dXJuIHRydWU7IH0KK3ByaXZhdGU6CisgICAgYm9vbCBjYW5Vc2VTaGVldChNSU1FVHlwZUNoZWNr
LCBib29sKiBoYXNWYWxpZE1JTUVUeXBlKSBjb25zdDsKKyAgICBib29sIG1heVRyeVJlcGxhY2VF
bmNvZGVkRGF0YSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KIAotICAgICAgICB2b2lk
IGRpZEFkZENsaWVudChDYWNoZWRSZXNvdXJjZUNsaWVudCYpIGZpbmFsOworICAgIHZvaWQgZGlk
QWRkQ2xpZW50KENhY2hlZFJlc291cmNlQ2xpZW50JikgZmluYWw7CiAKLSAgICAgICAgdm9pZCBz
ZXRFbmNvZGluZyhjb25zdCBTdHJpbmcmKSBmaW5hbDsKLSAgICAgICAgU3RyaW5nIGVuY29kaW5n
KCkgY29uc3QgZmluYWw7Ci0gICAgICAgIGNvbnN0IFRleHRSZXNvdXJjZURlY29kZXIqIHRleHRS
ZXNvdXJjZURlY29kZXIoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2RlY29kZXIuZ2V0KCk7IH0K
LSAgICAgICAgdm9pZCBmaW5pc2hMb2FkaW5nKFNoYXJlZEJ1ZmZlciopIGZpbmFsOwotICAgICAg
ICB2b2lkIGRlc3Ryb3lEZWNvZGVkRGF0YSgpIGZpbmFsOworICAgIHZvaWQgc2V0RW5jb2Rpbmco
Y29uc3QgU3RyaW5nJikgZmluYWw7CisgICAgU3RyaW5nIGVuY29kaW5nKCkgY29uc3QgZmluYWw7
CisgICAgY29uc3QgVGV4dFJlc291cmNlRGVjb2RlciogdGV4dFJlc291cmNlRGVjb2RlcigpIGNv
bnN0IGZpbmFsIHsgcmV0dXJuIG1fZGVjb2Rlci5nZXQoKTsgfQorICAgIHZvaWQgZmluaXNoTG9h
ZGluZyhTaGFyZWRCdWZmZXIqKSBmaW5hbDsKKyAgICB2b2lkIGRlc3Ryb3lEZWNvZGVkRGF0YSgp
IGZpbmFsOwogCi0gICAgICAgIHZvaWQgc2V0Qm9keURhdGFGcm9tKGNvbnN0IENhY2hlZFJlc291
cmNlJikgZmluYWw7CisgICAgdm9pZCBzZXRCb2R5RGF0YUZyb20oY29uc3QgQ2FjaGVkUmVzb3Vy
Y2UmKSBmaW5hbDsKIAotICAgIHByb3RlY3RlZDoKLSAgICAgICAgdm9pZCBjaGVja05vdGlmeSgp
IGZpbmFsOworcHJvdGVjdGVkOgorICAgIHZvaWQgY2hlY2tOb3RpZnkoKSBmaW5hbDsKIAotICAg
ICAgICBSZWZQdHI8VGV4dFJlc291cmNlRGVjb2Rlcj4gbV9kZWNvZGVyOwotICAgICAgICBTdHJp
bmcgbV9kZWNvZGVkU2hlZXRUZXh0OworICAgIFJlZlB0cjxUZXh0UmVzb3VyY2VEZWNvZGVyPiBt
X2RlY29kZXI7CisgICAgU3RyaW5nIG1fZGVjb2RlZFNoZWV0VGV4dDsKIAotICAgICAgICBSZWZQ
dHI8U3R5bGVTaGVldENvbnRlbnRzPiBtX3BhcnNlZFN0eWxlU2hlZXRDYWNoZTsKLSAgICB9Owor
ICAgIFJlZlB0cjxTdHlsZVNoZWV0Q29udGVudHM+IG1fcGFyc2VkU3R5bGVTaGVldENhY2hlOwor
fTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3QuY3BwCmluZGV4IDQ3M2FjZDU5ZjAz
NGExMTJiZWU2NDM1MTVkNmNiMjliNWI1MDE1NGIuLjZkMGMyMjExOWFlMzRiMWNkMDRmYTNmMTBh
NTM0NmVmNjFiMDYyNWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9D
YWNoZWRSZXNvdXJjZVJlcXVlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNo
ZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3QuY3BwCkBAIC01OSwxNSArNTksMTcgQEAgU3RyaW5nIENh
Y2hlZFJlc291cmNlUmVxdWVzdDo6c3BsaXRGcmFnbWVudElkZW50aWZpZXJGcm9tUmVxdWVzdFVS
TChSZXNvdXJjZVJlcXUKICAgICByZXR1cm4gZnJhZ21lbnRJZGVudGlmaWVyOwogfQogCi12b2lk
IENhY2hlZFJlc291cmNlUmVxdWVzdDo6c2V0SW5pdGlhdG9yKFBhc3NSZWZQdHI8RWxlbWVudD4g
ZWxlbWVudCkKK3ZvaWQgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0OjpzZXRJbml0aWF0b3IoRWxlbWVu
dCYgZWxlbWVudCkKIHsKLSAgICBBU1NFUlQoIW1faW5pdGlhdG9yRWxlbWVudCAmJiBtX2luaXRp
YXRvck5hbWUuaXNFbXB0eSgpKTsKLSAgICBtX2luaXRpYXRvckVsZW1lbnQgPSBlbGVtZW50Owor
ICAgIEFTU0VSVCghbV9pbml0aWF0b3JFbGVtZW50KTsKKyAgICBBU1NFUlQobV9pbml0aWF0b3JO
YW1lLmlzRW1wdHkoKSk7CisgICAgbV9pbml0aWF0b3JFbGVtZW50ID0gJmVsZW1lbnQ7CiB9CiAK
IHZvaWQgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0OjpzZXRJbml0aWF0b3IoY29uc3QgQXRvbWljU3Ry
aW5nJiBuYW1lKQogewotICAgIEFTU0VSVCghbV9pbml0aWF0b3JFbGVtZW50ICYmIG1faW5pdGlh
dG9yTmFtZS5pc0VtcHR5KCkpOworICAgIEFTU0VSVCghbV9pbml0aWF0b3JFbGVtZW50KTsKKyAg
ICBBU1NFUlQobV9pbml0aWF0b3JOYW1lLmlzRW1wdHkoKSk7CiAgICAgbV9pbml0aWF0b3JOYW1l
ID0gbmFtZTsKIH0KIApAQCAtMjA5LDEwICsyMTEsMTIgQEAgdm9pZCBDYWNoZWRSZXNvdXJjZVJl
cXVlc3Q6OnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcklmTmVlZGVkKCkKIH0KIAogI2lmIEVOQUJM
RShDT05URU5UX0VYVEVOU0lPTlMpCisKIHZvaWQgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0OjphcHBs
eUJsb2NrZWRTdGF0dXMoY29uc3QgQ29udGVudEV4dGVuc2lvbnM6OkJsb2NrZWRTdGF0dXMmIGJs
b2NrZWRTdGF0dXMpCiB7CiAgICAgQ29udGVudEV4dGVuc2lvbnM6OmFwcGx5QmxvY2tlZFN0YXR1
c1RvUmVxdWVzdChibG9ja2VkU3RhdHVzLCBtX3Jlc291cmNlUmVxdWVzdCk7CiB9CisKICNlbmRp
ZgogCiB2b2lkIENhY2hlZFJlc291cmNlUmVxdWVzdDo6dXBkYXRlUmVmZXJyZXJPcmlnaW5BbmRV
c2VyQWdlbnRIZWFkZXJzKEZyYW1lTG9hZGVyJiBmcmFtZUxvYWRlciwgUmVmZXJyZXJQb2xpY3kg
ZGVmYXVsdFBvbGljeSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9D
YWNoZWRSZXNvdXJjZVJlcXVlc3QuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNo
ZWRSZXNvdXJjZVJlcXVlc3QuaAppbmRleCAwZThhNGMzZmI5M2JlNTEzMjk0ZDRmMDQ1ZTk5ZWY5
YWU3MTA3NjAwLi5lZWVkMWExZmZmNDU2ZjJmYzMxMzYyYmNlNGFjNmZmYzgyN2RmYjYxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVz
dC5oCkBAIC01OCw3ICs1OCw3IEBAIHB1YmxpYzoKICAgICBjb25zdCBSZXNvdXJjZUxvYWRlck9w
dGlvbnMmIG9wdGlvbnMoKSBjb25zdCB7IHJldHVybiBtX29wdGlvbnM7IH0KICAgICB2b2lkIHNl
dE9wdGlvbnMoY29uc3QgUmVzb3VyY2VMb2FkZXJPcHRpb25zJiBvcHRpb25zKSB7IG1fb3B0aW9u
cyA9IG9wdGlvbnM7IH0KICAgICBjb25zdCBzdGQ6Om9wdGlvbmFsPFJlc291cmNlTG9hZFByaW9y
aXR5PiYgcHJpb3JpdHkoKSBjb25zdCB7IHJldHVybiBtX3ByaW9yaXR5OyB9Ci0gICAgdm9pZCBz
ZXRJbml0aWF0b3IoUGFzc1JlZlB0cjxFbGVtZW50Pik7CisgICAgdm9pZCBzZXRJbml0aWF0b3Io
RWxlbWVudCYpOwogICAgIHZvaWQgc2V0SW5pdGlhdG9yKGNvbnN0IEF0b21pY1N0cmluZyYgbmFt
ZSk7CiAgICAgY29uc3QgQXRvbWljU3RyaW5nJiBpbml0aWF0b3JOYW1lKCkgY29uc3Q7CiAgICAg
Ym9vbCBhbGxvd3NDYWNoaW5nKCkgY29uc3QgeyByZXR1cm4gbV9vcHRpb25zLmNhY2hpbmdQb2xp
Y3kgPT0gQ2FjaGluZ1BvbGljeTo6QWxsb3dDYWNoaW5nOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvci5oIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NvY29hL0Rpc2tDYWNoZU1vbml0b3IuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggODVkYWVjNzBhMjA5YzcyZGVjOTZiMmRhZmNiNGM3NzU4ZGJjZTI3ZC4uMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvci5oCisrKyAvZGV2L251bGwKQEAgLTEsNjIgKzAsMCBA
QAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgotICovCi0KLSNwcmFnbWEgb25jZQotCi0jaW5jbHVkZSAiUmVzb3VyY2VSZXF1ZXN0
LmgiCi0jaW5jbHVkZSAiU2Vzc2lvbklELmgiCi0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4K
LQotdHlwZWRlZiBjb25zdCBzdHJ1Y3QgX0NGQ2FjaGVkVVJMUmVzcG9uc2UqIENGQ2FjaGVkVVJM
UmVzcG9uc2VSZWY7Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgU2hhcmVkQnVmZmVy
OwotCi1jbGFzcyBEaXNrQ2FjaGVNb25pdG9yIHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgdm9pZCBt
b25pdG9yRmlsZUJhY2tpbmdTdG9yZUNyZWF0aW9uKGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIFNl
c3Npb25JRCwgQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZik7Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8
U2hhcmVkQnVmZmVyPiB0cnlHZXRGaWxlQmFja2VkU2hhcmVkQnVmZmVyRnJvbUNGVVJMQ2FjaGVk
UmVzcG9uc2UoQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZik7Ci0gICAgdmlydHVhbCB+RGlza0NhY2hl
TW9uaXRvcigpIHsgfQotCi1wcm90ZWN0ZWQ6Ci0gICAgRGlza0NhY2hlTW9uaXRvcihjb25zdCBS
ZXNvdXJjZVJlcXVlc3QmLCBTZXNzaW9uSUQsIENGQ2FjaGVkVVJMUmVzcG9uc2VSZWYpOwotCi0g
ICAgdmlydHVhbCB2b2lkIHJlc291cmNlQmVjYW1lRmlsZUJhY2tlZChQYXNzUmVmUHRyPFNoYXJl
ZEJ1ZmZlcj4pOwotCi0gICAgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXNvdXJjZVJlcXVlc3Qo
KSBjb25zdCB7IHJldHVybiBtX3Jlc291cmNlUmVxdWVzdDsgfQotICAgIFNlc3Npb25JRCBzZXNz
aW9uSUQoKSBjb25zdCB7IHJldHVybiBtX3Nlc3Npb25JRDsgfQotCi1wcml2YXRlOgotICAgIFJl
c291cmNlUmVxdWVzdCBtX3Jlc291cmNlUmVxdWVzdDsKLSAgICBTZXNzaW9uSUQgbV9zZXNzaW9u
SUQ7Ci19OwotCi0jaWYgKFBMQVRGT1JNKElPUykgJiYgX19JUEhPTkVfT1NfVkVSU0lPTl9NSU5f
UkVRVUlSRUQgPCA4MDAwMCkgfHwgKFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9O
X01JTl9SRVFVSVJFRCA8IDEwOTApCi12b2lkIERpc2tDYWNoZU1vbml0b3I6Om1vbml0b3JGaWxl
QmFja2luZ1N0b3JlQ3JlYXRpb24oY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgU2Vzc2lvbklELCBD
RkNhY2hlZFVSTFJlc3BvbnNlUmVmKSB7IH0KLVBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBEaXNr
Q2FjaGVNb25pdG9yOjp0cnlHZXRGaWxlQmFja2VkU2hhcmVkQnVmZmVyRnJvbUNGVVJMQ2FjaGVk
UmVzcG9uc2UoQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZikgeyByZXR1cm4gbnVsbHB0cjsgfQotI2Vu
ZGlmCi0KLX0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NvY29hL0Rpc2tDYWNoZU1vbml0b3JDb2NvYS5oIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2NvY29hL0Rpc2tDYWNoZU1vbml0b3JDb2NvYS5oCmluZGV4IDE4NmMzNGFmOTdmYmVlYjM4
ZjY0M2Q0MTcyN2YxNDhmNTE2YWFhNmQuLjYzMDRmMWYwNmVkMDFhYzBkY2ZmOGQzZGIzYjY1MTc3
ZjFmNzkyMWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jb2NvYS9EaXNrQ2Fj
aGVNb25pdG9yQ29jb2EuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY29jb2EvRGlza0Nh
Y2hlTW9uaXRvckNvY29hLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAy
MDE0IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAx
NC0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
ICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucwpAQCAtMjcsNyArMjcsNiBAQAogCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXF1
ZXN0LmgiCiAjaW5jbHVkZSAiU2Vzc2lvbklELmgiCi0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIu
aD4KIAogdHlwZWRlZiBjb25zdCBzdHJ1Y3QgX0NGQ2FjaGVkVVJMUmVzcG9uc2UqIENGQ2FjaGVk
VVJMUmVzcG9uc2VSZWY7CiAKQEAgLTM1LDIxICszNCwxOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKIGNsYXNzIFNoYXJlZEJ1ZmZlcjsKIAotY2xhc3MgV0VCQ09SRV9FWFBPUlQgRGlza0NhY2hl
TW9uaXRvciB7CitjbGFzcyBEaXNrQ2FjaGVNb25pdG9yIHsKIHB1YmxpYzoKICAgICBzdGF0aWMg
dm9pZCBtb25pdG9yRmlsZUJhY2tpbmdTdG9yZUNyZWF0aW9uKGNvbnN0IFJlc291cmNlUmVxdWVz
dCYsIFNlc3Npb25JRCwgQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZik7Ci0gICAgc3RhdGljIFBhc3NS
ZWZQdHI8U2hhcmVkQnVmZmVyPiB0cnlHZXRGaWxlQmFja2VkU2hhcmVkQnVmZmVyRnJvbUNGVVJM
Q2FjaGVkUmVzcG9uc2UoQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZik7Ci0gICAgdmlydHVhbCB+RGlz
a0NhY2hlTW9uaXRvcigpIHsgfQorICAgIHN0YXRpYyBSZWZQdHI8U2hhcmVkQnVmZmVyPiB0cnlH
ZXRGaWxlQmFja2VkU2hhcmVkQnVmZmVyRnJvbUNGVVJMQ2FjaGVkUmVzcG9uc2UoQ0ZDYWNoZWRV
UkxSZXNwb25zZVJlZik7CiAKLXByb3RlY3RlZDoKLSAgICBXRUJDT1JFX0VYUE9SVCBEaXNrQ2Fj
aGVNb25pdG9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIFNlc3Npb25JRCwgQ0ZDYWNoZWRVUkxS
ZXNwb25zZVJlZik7Citwcml2YXRlOgorICAgIERpc2tDYWNoZU1vbml0b3IoY29uc3QgUmVzb3Vy
Y2VSZXF1ZXN0JiwgU2Vzc2lvbklELCBDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKTsKIAotICAgIHZp
cnR1YWwgdm9pZCByZXNvdXJjZUJlY2FtZUZpbGVCYWNrZWQoU2hhcmVkQnVmZmVyJik7CisgICAg
dm9pZCByZXNvdXJjZUJlY2FtZUZpbGVCYWNrZWQoU2hhcmVkQnVmZmVyJik7CiAKICAgICBjb25z
dCBSZXNvdXJjZVJlcXVlc3QmIHJlc291cmNlUmVxdWVzdCgpIGNvbnN0IHsgcmV0dXJuIG1fcmVz
b3VyY2VSZXF1ZXN0OyB9CiAgICAgU2Vzc2lvbklEIHNlc3Npb25JRCgpIGNvbnN0IHsgcmV0dXJu
IG1fc2Vzc2lvbklEOyB9CiAKLXByaXZhdGU6CiAgICAgUmVzb3VyY2VSZXF1ZXN0IG1fcmVzb3Vy
Y2VSZXF1ZXN0OwogICAgIFNlc3Npb25JRCBtX3Nlc3Npb25JRDsKIH07CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvckNvY29hLm1tIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NvY29hL0Rpc2tDYWNoZU1vbml0b3JDb2NvYS5tbQppbmRleCA2
ODU4MDM2MGI4ZWJjZGNhY2E4YTNlOTM4NDk4YTE5NzU1MmRjMTZhLi42YWM0NWExNmZlOTZjMzhh
NzI5MjhjMTljNTVkYzFlZTNjY2VhYTRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvckNvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9jb2NvYS9EaXNrQ2FjaGVNb25pdG9yQ29jb2EubW0KQEAgLTI5LDExICsyOSw4IEBACiAj
aW1wb3J0ICJDRk5ldHdvcmtTUEkuaCIKICNpbXBvcnQgIkNhY2hlZFJlc291cmNlLmgiCiAjaW1w
b3J0ICJNZW1vcnlDYWNoZS5oIgotI2ltcG9ydCAiUmVzb3VyY2VSZXF1ZXN0LmgiCi0jaW1wb3J0
ICJTZXNzaW9uSUQuaCIKICNpbXBvcnQgIlNoYXJlZEJ1ZmZlci5oIgogI2ltcG9ydCA8d3RmL01h
aW5UaHJlYWQuaD4KLSNpbXBvcnQgPHd0Zi9QYXNzUmVmUHRyLmg+CiAjaW1wb3J0IDx3dGYvUmVm
UHRyLmg+CiAKICNpZiBVU0UoV0VCX1RIUkVBRCkKQEAgLTQ1LDkgKzQyLDkgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogLy8gVGhlIG1heGltdW0gbnVtYmVyIG9mIHNlY29uZHMgd2UnbGwgdHJ5IHRv
IHdhaXQgZm9yIGEgcmVzb3VyY2UgdG8gYmUgZGlzayBjYWNoZWQgYmVmb3JlIHdlIGZvcmdldCB0
aGUgcmVxdWVzdC4KIHN0YXRpYyBjb25zdCBkb3VibGUgZGlza0NhY2hlTW9uaXRvclRpbWVvdXQg
PSAyMDsKIAotUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IERpc2tDYWNoZU1vbml0b3I6OnRyeUdl
dEZpbGVCYWNrZWRTaGFyZWRCdWZmZXJGcm9tQ0ZVUkxDYWNoZWRSZXNwb25zZShDRkNhY2hlZFVS
TFJlc3BvbnNlUmVmIGNhY2hlZFJlc3BvbnNlKQorUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gRGlza0Nh
Y2hlTW9uaXRvcjo6dHJ5R2V0RmlsZUJhY2tlZFNoYXJlZEJ1ZmZlckZyb21DRlVSTENhY2hlZFJl
c3BvbnNlKENGQ2FjaGVkVVJMUmVzcG9uc2VSZWYgY2FjaGVkUmVzcG9uc2UpCiB7Ci0gICAgQ0ZE
YXRhUmVmIGRhdGEgPSBfQ0ZDYWNoZWRVUkxSZXNwb25zZUdldE1lbU1hcHBlZERhdGEoY2FjaGVk
UmVzcG9uc2UpOworICAgIGF1dG8gZGF0YSA9IF9DRkNhY2hlZFVSTFJlc3BvbnNlR2V0TWVtTWFw
cGVkRGF0YShjYWNoZWRSZXNwb25zZSk7CiAgICAgaWYgKCFkYXRhKQogICAgICAgICByZXR1cm4g
bnVsbHB0cjsKIApAQCAtODcsOCArODQsNyBAQCBEaXNrQ2FjaGVNb25pdG9yOjpEaXNrQ2FjaGVN
b25pdG9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgU2Vzc2lvbklEIHNlcwogICAg
IGRpc3BhdGNoX2FmdGVyKGRpc3BhdGNoX3RpbWUoRElTUEFUQ0hfVElNRV9OT1csIE5TRUNfUEVS
X1NFQyAqIGRpc2tDYWNoZU1vbml0b3JUaW1lb3V0KSwgZGlzcGF0Y2hfZ2V0X21haW5fcXVldWUo
KSwgY2FuY2VsTW9uaXRvckJsb2NrVG9SdW4pOwogCiAgICAgLy8gU2V0IHVwIHRoZSBkaXNrIGNh
Y2hpbmcgY2FsbGJhY2sgdG8gY3JlYXRlIHRoZSBTaGFyZWFibGVSZXNvdXJjZSBhbmQgc2VuZCBp
dCB0byB0aGUgV2ViUHJvY2Vzcy4KLSAgICBDRkNhY2hlZFVSTFJlc3BvbnNlQ2FsbEJhY2tCbG9j
ayBibG9jayA9IF4oQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZiBjYWNoZWRSZXNwb25zZSkKLSAgICB7
CisgICAgYXV0byBibG9jayA9IF4oQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZiBjYWNoZWRSZXNwb25z
ZSkgewogICAgICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwogICAgICAgICAvLyBJZiB0aGUg
bW9uaXRvciBpc24ndCB0aGVyZSB0aGVuIGl0IHRpbWVkIG91dCBiZWZvcmUgdGhpcyByZXNvdXJj
ZSB3YXMgY2FjaGVkIHRvIGRpc2suCiAgICAgICAgIGlmICghcmF3TW9uaXRvcikKQEAgLTk3LDcg
KzkzLDcgQEAgRGlza0NhY2hlTW9uaXRvcjo6RGlza0NhY2hlTW9uaXRvcihjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmIHJlcXVlc3QsIFNlc3Npb25JRCBzZXMKICAgICAgICAgYXV0byBtb25pdG9yID0g
c3RkOjp1bmlxdWVfcHRyPERpc2tDYWNoZU1vbml0b3I+KHJhd01vbml0b3IpOyAvLyBCYWxhbmNl
ZCBieSAibmV3IERpc2tDYWNoZU1vbml0b3IiIGluIG1vbml0b3JGaWxlQmFja2luZ1N0b3JlQ3Jl
YXRpb24uCiAgICAgICAgIHJhd01vbml0b3IgPSBudWxscHRyOwogCi0gICAgICAgIFJlZlB0cjxT
aGFyZWRCdWZmZXI+IGZpbGVCYWNrZWRCdWZmZXIgPSBEaXNrQ2FjaGVNb25pdG9yOjp0cnlHZXRG
aWxlQmFja2VkU2hhcmVkQnVmZmVyRnJvbUNGVVJMQ2FjaGVkUmVzcG9uc2UoY2FjaGVkUmVzcG9u
c2UpOworICAgICAgICBhdXRvIGZpbGVCYWNrZWRCdWZmZXIgPSBEaXNrQ2FjaGVNb25pdG9yOjp0
cnlHZXRGaWxlQmFja2VkU2hhcmVkQnVmZmVyRnJvbUNGVVJMQ2FjaGVkUmVzcG9uc2UoY2FjaGVk
UmVzcG9uc2UpOwogICAgICAgICBpZiAoIWZpbGVCYWNrZWRCdWZmZXIpCiAgICAgICAgICAgICBy
ZXR1cm47CiAKQEAgLTEwNSw4ICsxMDEsNyBAQCBEaXNrQ2FjaGVNb25pdG9yOjpEaXNrQ2FjaGVN
b25pdG9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgU2Vzc2lvbklEIHNlcwogICAg
IH07CiAKICNpZiBVU0UoV0VCX1RIUkVBRCkKLSAgICBDRkNhY2hlZFVSTFJlc3BvbnNlQ2FsbEJh
Y2tCbG9jayBibG9ja1RvUnVuID0gXihDRkNhY2hlZFVSTFJlc3BvbnNlUmVmIHJlc3BvbnNlKQot
ICAgIHsKKyAgICBhdXRvIGJsb2NrVG9SdW4gPSBeKENGQ2FjaGVkVVJMUmVzcG9uc2VSZWYgcmVz
cG9uc2UpIHsKICAgICAgICAgQ0ZSZXRhaW4ocmVzcG9uc2UpOwogICAgICAgICBXZWJUaHJlYWRS
dW4oXnsKICAgICAgICAgICAgIGJsb2NrKHJlc3BvbnNlKTsKQEAgLTExNCwxNCArMTA5LDE0IEBA
IERpc2tDYWNoZU1vbml0b3I6OkRpc2tDYWNoZU1vbml0b3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0
JiByZXF1ZXN0LCBTZXNzaW9uSUQgc2VzCiAgICAgICAgIH0pOwogICAgIH07CiAjZWxzZQotICAg
IENGQ2FjaGVkVVJMUmVzcG9uc2VDYWxsQmFja0Jsb2NrIGJsb2NrVG9SdW4gPSBibG9jazsKKyAg
ICBhdXRvIGJsb2NrVG9SdW4gPSBibG9jazsKICNlbmRpZgogICAgIF9DRkNhY2hlZFVSTFJlc3Bv
bnNlU2V0QmVjYW1lRmlsZUJhY2tlZENhbGxCYWNrQmxvY2soY2FjaGVkUmVzcG9uc2UsIGJsb2Nr
VG9SdW4sIGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCkpOwogfQogCiB2b2lkIERpc2tDYWNoZU1v
bml0b3I6OnJlc291cmNlQmVjYW1lRmlsZUJhY2tlZChTaGFyZWRCdWZmZXImIGZpbGVCYWNrZWRC
dWZmZXIpCiB7Ci0gICAgQ2FjaGVkUmVzb3VyY2UqIHJlc291cmNlID0gTWVtb3J5Q2FjaGU6OnNp
bmdsZXRvbigpLnJlc291cmNlRm9yUmVxdWVzdChtX3Jlc291cmNlUmVxdWVzdCwgbV9zZXNzaW9u
SUQpOworICAgIGF1dG8qIHJlc291cmNlID0gTWVtb3J5Q2FjaGU6OnNpbmdsZXRvbigpLnJlc291
cmNlRm9yUmVxdWVzdChtX3Jlc291cmNlUmVxdWVzdCwgbV9zZXNzaW9uSUQpOwogICAgIGlmICgh
cmVzb3VyY2UpCiAgICAgICAgIHJldHVybjsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29u
L0ljb25EYXRhYmFzZS5jcHAKaW5kZXggZWU0MzdlODYyOGViZjRlODYzMjdjYzc3MDMwZjVmNjk0
ZTMwYmIyZC4uZGNjZTBhNWMzY2Q4MTZjYzg0N2JjN2FmZTJiYTIxNjdhY2QwODgwYyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2UuY3BwCkBAIC01MzMsNyArNTMz
LDcgQEAgdm9pZCBJY29uRGF0YWJhc2U6OnBlcmZvcm1SZWxlYXNlSWNvbkZvclBhZ2VVUkwoY29u
c3QgU3RyaW5nJiBwYWdlVVJMT3JpZ2luYWwsIGkKICAgICBkZWxldGUgcGFnZVJlY29yZDsKIH0K
IAotdm9pZCBJY29uRGF0YWJhc2U6OnNldEljb25EYXRhRm9ySWNvblVSTChQYXNzUmVmUHRyPFNo
YXJlZEJ1ZmZlcj4gZGF0YU9yaWdpbmFsLCBjb25zdCBTdHJpbmcmIGljb25VUkxPcmlnaW5hbCkK
K3ZvaWQgSWNvbkRhdGFiYXNlOjpzZXRJY29uRGF0YUZvckljb25VUkwoU2hhcmVkQnVmZmVyKiBk
YXRhT3JpZ2luYWwsIGNvbnN0IFN0cmluZyYgaWNvblVSTE9yaWdpbmFsKQogeyAgICAKICAgICBB
U1NFUlRfTk9UX1NZTkNfVEhSRUFEKCk7CiAgICAgCkBAIC01NDIsNyArNTQyLDcgQEAgdm9pZCBJ
Y29uRGF0YWJhc2U6OnNldEljb25EYXRhRm9ySWNvblVSTChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZl
cj4gZGF0YU9yaWdpbmFsLAogICAgIGlmICghaXNPcGVuKCkgfHwgaWNvblVSTE9yaWdpbmFsLmlz
RW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwogICAgIAotICAgIFJlZlB0cjxTaGFyZWRCdWZmZXI+
IGRhdGEgPSBkYXRhT3JpZ2luYWwgPyBkYXRhT3JpZ2luYWwtPmNvcHkoKSA6IFBhc3NSZWZQdHI8
U2hhcmVkQnVmZmVyPihudWxscHRyKTsKKyAgICBhdXRvIGRhdGEgPSBkYXRhT3JpZ2luYWwgPyBS
ZWZQdHI8U2hhcmVkQnVmZmVyPiB7IGRhdGFPcmlnaW5hbC0+Y29weSgpIH0gOiBudWxscHRyOwog
ICAgIFN0cmluZyBpY29uVVJMID0gaWNvblVSTE9yaWdpbmFsLmlzb2xhdGVkQ29weSgpOwogICAg
IAogICAgIFZlY3RvcjxTdHJpbmc+IHBhZ2VVUkxzOwpAQCAtODg1LDE4ICs4ODUsMTcgQEAgU3Ry
aW5nIEljb25EYXRhYmFzZTo6ZGVmYXVsdERhdGFiYXNlRmlsZW5hbWUoKQogfQogCiAvLyBVbmxp
a2UgZ2V0T3JDcmVhdGVQYWdlVVJMUmVjb3JkKCksIGdldE9yQ3JlYXRlSWNvblJlY29yZCgpIGRv
ZXMgbm90IG1hcmsgdGhlIGljb24gYXMgImludGVyZXN0ZWQgaW4gaW1wb3J0IgotUGFzc1JlZlB0
cjxJY29uUmVjb3JkPiBJY29uRGF0YWJhc2U6OmdldE9yQ3JlYXRlSWNvblJlY29yZChjb25zdCBT
dHJpbmcmIGljb25VUkwpCitSZWY8SWNvblJlY29yZD4gSWNvbkRhdGFiYXNlOjpnZXRPckNyZWF0
ZUljb25SZWNvcmQoY29uc3QgU3RyaW5nJiBpY29uVVJMKQogewogICAgIC8vIENsaWVudHMgb2Yg
Z2V0T3JDcmVhdGVJY29uUmVjb3JkKCkgYXJlIHJlcXVpcmVkIHRvIGFjcXVpcmUgdGhlIG1fdXJs
QW5kSWNvbkxvY2sgYmVmb3JlIGNhbGxpbmcgdGhpcyBtZXRob2QKICAgICBBU1NFUlQoIW1fdXJs
QW5kSWNvbkxvY2sudHJ5TG9jaygpKTsKIAotICAgIGlmIChJY29uUmVjb3JkKiBpY29uID0gbV9p
Y29uVVJMVG9SZWNvcmRNYXAuZ2V0KGljb25VUkwpKQotICAgICAgICByZXR1cm4gaWNvbjsKKyAg
ICBpZiAoYXV0byogaWNvbiA9IG1faWNvblVSTFRvUmVjb3JkTWFwLmdldChpY29uVVJMKSkKKyAg
ICAgICAgcmV0dXJuICppY29uOwogCiAgICAgYXV0byBuZXdJY29uID0gSWNvblJlY29yZDo6Y3Jl
YXRlKGljb25VUkwpOwogICAgIG1faWNvblVSTFRvUmVjb3JkTWFwLnNldChpY29uVVJMLCBuZXdJ
Y29uLnB0cigpKTsKLQotICAgIHJldHVybiBXVEZNb3ZlKG5ld0ljb24pOworICAgIHJldHVybiBu
ZXdJY29uOwogfQogCiAvLyBUaGlzIG1ldGhvZCByZXRyaWV2ZXMgdGhlIGV4aXN0aW5nIFBhZ2VV
UkxSZWNvcmQsIG9yIGNyZWF0ZXMgYSBuZXcgb25lIGFuZCBtYXJrcyBpdCBhcyAiaW50ZXJlc3Rl
ZCBpbiB0aGUgaW1wb3J0IiBmb3IgbGF0ZXIgbm90aWZpY2F0aW9uCkBAIC0xOTE3LDcgKzE5MTYs
NyBAQCBpbnQ2NF90IEljb25EYXRhYmFzZTo6YWRkSWNvblVSTFRvU1FMRGF0YWJhc2UoY29uc3Qg
U3RyaW5nJiBpY29uVVJMKQogICAgIHJldHVybiBpY29uSUQ7CiB9CiAKLVBhc3NSZWZQdHI8U2hh
cmVkQnVmZmVyPiBJY29uRGF0YWJhc2U6OmdldEltYWdlRGF0YUZvckljb25VUkxGcm9tU1FMRGF0
YWJhc2UoY29uc3QgU3RyaW5nJiBpY29uVVJMKQorUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gSWNvbkRh
dGFiYXNlOjpnZXRJbWFnZURhdGFGb3JJY29uVVJMRnJvbVNRTERhdGFiYXNlKGNvbnN0IFN0cmlu
ZyYgaWNvblVSTCkKIHsKICAgICBBU1NFUlRfSUNPTl9TWU5DX1RIUkVBRCgpOwogICAgIApAQCAt
MTkzNiw3ICsxOTM1LDcgQEAgUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IEljb25EYXRhYmFzZTo6
Z2V0SW1hZ2VEYXRhRm9ySWNvblVSTEZyb21TUUxEYXRhYmFzZShjb24KIAogICAgIG1fZ2V0SW1h
Z2VEYXRhRm9ySWNvblVSTFN0YXRlbWVudC0+cmVzZXQoKTsKICAgICAKLSAgICByZXR1cm4gV1RG
TW92ZShpbWFnZURhdGEpOworICAgIHJldHVybiBpbWFnZURhdGE7CiB9CiAKIHZvaWQgSWNvbkRh
dGFiYXNlOjpyZW1vdmVJY29uRnJvbVNRTERhdGFiYXNlKGNvbnN0IFN0cmluZyYgaWNvblVSTCkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL0ljb25EYXRhYmFzZS5oIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmgKaW5kZXggZDVkNDUyY2Vm
ZDM3YzBhY2U4MTJhZGEzNTAzNDcwYWU2MjhkN2M5ZS4uMDYxYWY0YTEyNTU3NzFkZTExYTMyZjU2
ODNjMGVmZGE1OTI5M2I5ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24v
SWNvbkRhdGFiYXNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkRhdGFi
YXNlLmgKQEAgLTQ1LDYgKzQ1LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogLy8gRHVtbXkgdmVy
c2lvbiBvZiBJY29uRGF0YWJhc2UgdGhhdCBkb2VzIG5vdGhpbmcuCiBjbGFzcyBJY29uRGF0YWJh
c2UgZmluYWwgOiBwdWJsaWMgSWNvbkRhdGFiYXNlQmFzZSB7CiAgICAgV1RGX01BS0VfRkFTVF9B
TExPQ0FURUQ7CisKIHB1YmxpYzoKICAgICBzdGF0aWMgdm9pZCBkZWxheURhdGFiYXNlQ2xlYW51
cCgpIHsgfQogICAgIHN0YXRpYyB2b2lkIGFsbG93RGF0YWJhc2VDbGVhbnVwKCkgeyB9CkBAIC03
MCwzMiArNzEsMzIgQEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIEljb25EYXRhYmFzZSgp
OwogICAgIH5JY29uRGF0YWJhc2UoKTsKIAotICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0Q2xp
ZW50KEljb25EYXRhYmFzZUNsaWVudCopIG92ZXJyaWRlOworICAgIFdFQkNPUkVfRVhQT1JUIHZv
aWQgc2V0Q2xpZW50KEljb25EYXRhYmFzZUNsaWVudCopIGZpbmFsOwogCi0gICAgV0VCQ09SRV9F
WFBPUlQgYm9vbCBvcGVuKGNvbnN0IFN0cmluZyYgZGlyZWN0b3J5LCBjb25zdCBTdHJpbmcmIGZp
bGVuYW1lKSBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGNsb3NlKCkgb3ZlcnJp
ZGU7CisgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBvcGVuKGNvbnN0IFN0cmluZyYgZGlyZWN0b3J5
LCBjb25zdCBTdHJpbmcmIGZpbGVuYW1lKSBmaW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lk
IGNsb3NlKCkgZmluYWw7CiAgICAgICAgICAgICAKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHJl
bW92ZUFsbEljb25zKCkgb3ZlcnJpZGU7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCByZW1vdmVB
bGxJY29ucygpIGZpbmFsOwogCiAgICAgdm9pZCByZWFkSWNvbkZvclBhZ2VVUkxGcm9tRGlzayhj
b25zdCBTdHJpbmcmKTsKIAotICAgIFdFQkNPUkVfRVhQT1JUIEltYWdlKiBkZWZhdWx0SWNvbihj
b25zdCBJbnRTaXplJikgb3ZlcnJpZGU7CisgICAgV0VCQ09SRV9FWFBPUlQgSW1hZ2UqIGRlZmF1
bHRJY29uKGNvbnN0IEludFNpemUmKSBmaW5hbDsKIAotICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQg
cmV0YWluSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgV0VCQ09S
RV9FWFBPUlQgdm9pZCByZWxlYXNlSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikgb3ZlcnJp
ZGU7Ci0gICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRJY29uRGF0YUZvckljb25VUkwoUGFzc1Jl
ZlB0cjxTaGFyZWRCdWZmZXI+IGRhdGEsIGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAgIFdF
QkNPUkVfRVhQT1JUIHZvaWQgc2V0SWNvblVSTEZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJiBpY29u
VVJMLCBjb25zdCBTdHJpbmcmIHBhZ2VVUkwpIG92ZXJyaWRlOworICAgIFdFQkNPUkVfRVhQT1JU
IHZvaWQgcmV0YWluSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikgZmluYWw7CisgICAgV0VC
Q09SRV9FWFBPUlQgdm9pZCByZWxlYXNlSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikgZmlu
YWw7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRJY29uRGF0YUZvckljb25VUkwoU2hhcmVk
QnVmZmVyKiBkYXRhLCBjb25zdCBTdHJpbmcmIGljb25VUkwpIGZpbmFsOworICAgIFdFQkNPUkVf
RVhQT1JUIHZvaWQgc2V0SWNvblVSTEZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJiBpY29uVVJMLCBj
b25zdCBTdHJpbmcmIHBhZ2VVUkwpIGZpbmFsOwogCi0gICAgV0VCQ09SRV9FWFBPUlQgSW1hZ2Uq
IHN5bmNocm9ub3VzSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJiwgY29uc3QgSW50U2l6ZSYp
IG92ZXJyaWRlOwotICAgIE5hdGl2ZUltYWdlUHRyIHN5bmNocm9ub3VzTmF0aXZlSWNvbkZvclBh
Z2VVUkwoY29uc3QgU3RyaW5nJiBwYWdlVVJMT3JpZ2luYWwsIGNvbnN0IEludFNpemUmKSBvdmVy
cmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCBTdHJpbmcgc3luY2hyb25vdXNJY29uVVJMRm9yUGFn
ZVVSTChjb25zdCBTdHJpbmcmKSBvdmVycmlkZTsKLSAgICBib29sIHN5bmNocm9ub3VzSWNvbkRh
dGFLbm93bkZvckljb25VUkwoY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgV0VCQ09SRV9F
WFBPUlQgSWNvbkxvYWREZWNpc2lvbiBzeW5jaHJvbm91c0xvYWREZWNpc2lvbkZvckljb25VUkwo
Y29uc3QgU3RyaW5nJiwgRG9jdW1lbnRMb2FkZXIqKSBvdmVycmlkZTsKKyAgICBXRUJDT1JFX0VY
UE9SVCBJbWFnZSogc3luY2hyb25vdXNJY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmLCBjb25z
dCBJbnRTaXplJikgZmluYWw7CisgICAgTmF0aXZlSW1hZ2VQdHIgc3luY2hyb25vdXNOYXRpdmVJ
Y29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIHBhZ2VVUkxPcmlnaW5hbCwgY29uc3QgSW50U2l6
ZSYpIGZpbmFsOworICAgIFdFQkNPUkVfRVhQT1JUIFN0cmluZyBzeW5jaHJvbm91c0ljb25VUkxG
b3JQYWdlVVJMKGNvbnN0IFN0cmluZyYpIGZpbmFsOworICAgIGJvb2wgc3luY2hyb25vdXNJY29u
RGF0YUtub3duRm9ySWNvblVSTChjb25zdCBTdHJpbmcmKSBmaW5hbDsKKyAgICBXRUJDT1JFX0VY
UE9SVCBJY29uTG9hZERlY2lzaW9uIHN5bmNocm9ub3VzTG9hZERlY2lzaW9uRm9ySWNvblVSTChj
b25zdCBTdHJpbmcmLCBEb2N1bWVudExvYWRlciopIGZpbmFsOwogCi0gICAgV0VCQ09SRV9FWFBP
UlQgdm9pZCBzZXRFbmFibGVkKGJvb2wpIG92ZXJyaWRlOwotICAgIFdFQkNPUkVfRVhQT1JUIGJv
b2wgaXNFbmFibGVkKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBz
ZXRFbmFibGVkKGJvb2wpOworICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgaXNFbmFibGVkKCkgY29u
c3QgZmluYWw7CiAKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldFByaXZhdGVCcm93c2luZ0Vu
YWJsZWQoYm9vbCBmbGFnKSBvdmVycmlkZTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldFBy
aXZhdGVCcm93c2luZ0VuYWJsZWQoYm9vbCBmbGFnKSBmaW5hbDsKICAgICBib29sIGlzUHJpdmF0
ZUJyb3dzaW5nRW5hYmxlZCgpIGNvbnN0OwogCiAgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIHZv
aWQgZGVsYXlEYXRhYmFzZUNsZWFudXAoKTsKQEAgLTEwMywxMCArMTA0LDEwIEBAIHB1YmxpYzoK
ICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgdm9pZCBjaGVja0ludGVncml0eUJlZm9yZU9wZW5p
bmcoKTsKIAogICAgIC8vIFN1cHBvcnQgZm9yIFdlYkNvcmVTdGF0aXN0aWNzIGluIFdlYktpdAot
ICAgIFdFQkNPUkVfRVhQT1JUIHNpemVfdCBwYWdlVVJMTWFwcGluZ0NvdW50KCkgb3ZlcnJpZGU7
Ci0gICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90IHJldGFpbmVkUGFnZVVSTENvdW50KCkgb3ZlcnJp
ZGU7Ci0gICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90IGljb25SZWNvcmRDb3VudCgpIG92ZXJyaWRl
OwotICAgIFdFQkNPUkVfRVhQT1JUIHNpemVfdCBpY29uUmVjb3JkQ291bnRXaXRoRGF0YSgpIG92
ZXJyaWRlOworICAgIFdFQkNPUkVfRVhQT1JUIHNpemVfdCBwYWdlVVJMTWFwcGluZ0NvdW50KCkg
ZmluYWw7CisgICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90IHJldGFpbmVkUGFnZVVSTENvdW50KCkg
ZmluYWw7CisgICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90IGljb25SZWNvcmRDb3VudCgpIGZpbmFs
OworICAgIFdFQkNPUkVfRVhQT1JUIHNpemVfdCBpY29uUmVjb3JkQ291bnRXaXRoRGF0YSgpIGZp
bmFsOwogCiBwcml2YXRlOgogICAgIGZyaWVuZCBJY29uRGF0YWJhc2VCYXNlJiBpY29uRGF0YWJh
c2UoKTsKQEAgLTEzMCwxMiArMTMxLDEyIEBAIHByaXZhdGU6CiAKIC8vICoqKiBBbnkgVGhyZWFk
ICoqKgogcHVibGljOgotICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgaXNPcGVuKCkgY29uc3Qgb3Zl
cnJpZGU7Ci0gICAgV0VCQ09SRV9FWFBPUlQgU3RyaW5nIGRhdGFiYXNlUGF0aCgpIGNvbnN0IG92
ZXJyaWRlOworICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgaXNPcGVuKCkgY29uc3QgZmluYWw7Cisg
ICAgV0VCQ09SRV9FWFBPUlQgU3RyaW5nIGRhdGFiYXNlUGF0aCgpIGNvbnN0IGZpbmFsOwogICAg
IFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBTdHJpbmcgZGVmYXVsdERhdGFiYXNlRmlsZW5hbWUoKTsK
IAogcHJpdmF0ZToKLSAgICBQYXNzUmVmUHRyPEljb25SZWNvcmQ+IGdldE9yQ3JlYXRlSWNvblJl
Y29yZChjb25zdCBTdHJpbmcmIGljb25VUkwpOworICAgIFJlZjxJY29uUmVjb3JkPiBnZXRPckNy
ZWF0ZUljb25SZWNvcmQoY29uc3QgU3RyaW5nJiBpY29uVVJMKTsKICAgICBQYWdlVVJMUmVjb3Jk
KiBnZXRPckNyZWF0ZVBhZ2VVUkxSZWNvcmQoY29uc3QgU3RyaW5nJiBwYWdlVVJMKTsKICAgICAK
ICAgICBib29sIG1faXNFbmFibGVkOwpAQCAtMTc4LDcgKzE3OSw3IEBAIHByaXZhdGU6CiAKIC8v
ICoqKiBTeW5jIFRocmVhZCBPbmx5ICoqKgogcHVibGljOgotICAgIFdFQkNPUkVfRVhQT1JUIGJv
b2wgc2hvdWxkU3RvcFRocmVhZEFjdGl2aXR5KCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgV0VCQ09S
RV9FWFBPUlQgYm9vbCBzaG91bGRTdG9wVGhyZWFkQWN0aXZpdHkoKSBjb25zdCBmaW5hbDsKIAog
cHJpdmF0ZTogICAgCiAgICAgc3RhdGljIHZvaWQgaWNvbkRhdGFiYXNlU3luY1RocmVhZFN0YXJ0
KHZvaWQgKik7CkBAIC0yMTMsNyArMjE0LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHJlbW92ZVBh
Z2VVUkxGcm9tU1FMRGF0YWJhc2UoY29uc3QgU3RyaW5nJiBwYWdlVVJMKTsKICAgICBpbnQ2NF90
IGdldEljb25JREZvckljb25VUkxGcm9tU1FMRGF0YWJhc2UoY29uc3QgU3RyaW5nJiBpY29uVVJM
KTsKICAgICBpbnQ2NF90IGFkZEljb25VUkxUb1NRTERhdGFiYXNlKGNvbnN0IFN0cmluZyYpOwot
ICAgIFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBnZXRJbWFnZURhdGFGb3JJY29uVVJMRnJvbVNR
TERhdGFiYXNlKGNvbnN0IFN0cmluZyYgaWNvblVSTCk7CisgICAgUmVmUHRyPFNoYXJlZEJ1ZmZl
cj4gZ2V0SW1hZ2VEYXRhRm9ySWNvblVSTEZyb21TUUxEYXRhYmFzZShjb25zdCBTdHJpbmcmIGlj
b25VUkwpOwogICAgIHZvaWQgcmVtb3ZlSWNvbkZyb21TUUxEYXRhYmFzZShjb25zdCBTdHJpbmcm
IGljb25VUkwpOwogICAgIHZvaWQgd3JpdGVJY29uU25hcHNob3RUb1NRTERhdGFiYXNlKGNvbnN0
IEljb25TbmFwc2hvdCYpOyAgICAKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2ljb24vSWNvbkRhdGFiYXNlQmFzZS5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNv
bkRhdGFiYXNlQmFzZS5oCmluZGV4IDk4NmQ0ZDk2ZjU3MjdmNDZhMWYyZTg3NTAzOWU2Yzg2MDMy
ZjYzODEuLmQ0MDUxYjkzNmM3MTBmYzI5YzcxZDUyZTQ3MjdiYTg1YjBhZWI5OTcgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL0ljb25EYXRhYmFzZUJhc2UuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2VCYXNlLmgKQEAgLTI4LDcgKzI4
LDYgQEAKICNpbmNsdWRlICJOYXRpdmVJbWFnZS5oIgogI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+
CiAjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+Ci0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIu
aD4KICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBA
IC0zOSwxMSArMzgsNyBAQCBjbGFzcyBJbWFnZTsKIGNsYXNzIEludFNpemU7CiBjbGFzcyBTaGFy
ZWRCdWZmZXI7CiAKLWVudW0gSWNvbkxvYWREZWNpc2lvbiB7Ci0gICAgSWNvbkxvYWRZZXMsCi0g
ICAgSWNvbkxvYWRObywKLSAgICBJY29uTG9hZFVua25vd24KLX07CitlbnVtIEljb25Mb2FkRGVj
aXNpb24geyBJY29uTG9hZFllcywgSWNvbkxvYWRObywgSWNvbkxvYWRVbmtub3duIH07CiAKIGNs
YXNzIENhbGxiYWNrQmFzZSA6IHB1YmxpYyBSZWZDb3VudGVkPENhbGxiYWNrQmFzZT4gewogcHVi
bGljOgpAQCAtMTM0LDcgKzEyOSw3IEBAIHB1YmxpYzoKICAgICAgICAgbV9jYWxsYmFjayhyZXN1
bHQsIGNvbnRleHQoKSk7CiAgICAgICAgIG1fY2FsbGJhY2sgPSBudWxscHRyOwogICAgIH0KLSAg
ICAKKwogICAgIHZvaWQgaW52YWxpZGF0ZSgpCiAgICAgewogICAgICAgICBtX2NhbGxiYWNrID0g
bnVsbHB0cjsKQEAgLTE1MSwyNiArMTQ2LDIyIEBAIHByaXZhdGU6CiAgICAgQ2FsbGJhY2tGdW5j
dGlvbiBtX2NhbGxiYWNrOwogfTsKIAotdHlwZWRlZiBFbnVtQ2FsbGJhY2s8SWNvbkxvYWREZWNp
c2lvbj4gSWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrOwotdHlwZWRlZiBPYmplY3RDYWxsYmFjazxT
aGFyZWRCdWZmZXIqPiBJY29uRGF0YUNhbGxiYWNrOwordXNpbmcgSWNvbkxvYWREZWNpc2lvbkNh
bGxiYWNrID0gRW51bUNhbGxiYWNrPEljb25Mb2FkRGVjaXNpb24+OwordXNpbmcgSWNvbkRhdGFD
YWxsYmFjayA9IE9iamVjdENhbGxiYWNrPFNoYXJlZEJ1ZmZlcio+OwogCiBjbGFzcyBXRUJDT1JF
X0VYUE9SVCBJY29uRGF0YWJhc2VCYXNlIHsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShJY29u
RGF0YWJhc2VCYXNlKTsKIAotcHJvdGVjdGVkOgotICAgIEljb25EYXRhYmFzZUJhc2UoKSB7IH0K
LQogcHVibGljOgogICAgIHZpcnR1YWwgfkljb25EYXRhYmFzZUJhc2UoKSB7IH0KIAotICAgIC8v
IFVzZWQgaW50ZXJuYWxseSBieSBXZWJDb3JlCiAgICAgdmlydHVhbCBib29sIGlzRW5hYmxlZCgp
IGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9Ci0gICAgICAgIAorCiAgICAgdmlydHVhbCB2b2lkIHJl
dGFpbkljb25Gb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYpIHsgfQogICAgIHZpcnR1YWwgdm9pZCBy
ZWxlYXNlSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikgeyB9CiAKLSAgICB2aXJ0dWFsIHZv
aWQgc2V0SWNvblVSTEZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJiwgY29uc3QgU3RyaW5nJikgeyB9
Ci0gICAgdmlydHVhbCB2b2lkIHNldEljb25EYXRhRm9ySWNvblVSTChQYXNzUmVmUHRyPFNoYXJl
ZEJ1ZmZlcj4sIGNvbnN0IFN0cmluZyYpIHsgfQorICAgIHZpcnR1YWwgdm9pZCBzZXRJY29uVVJM
Rm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIC8qaWNvblVSTCovLCBjb25zdCBTdHJpbmcmIC8qcGFn
ZVVSTCovKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgc2V0SWNvbkRhdGFGb3JJY29uVVJMKFNoYXJl
ZEJ1ZmZlciosIGNvbnN0IFN0cmluZyYgLyppY29uVVJMKi8pIHsgfQogCiAgICAgLy8gU3luY2hy
b25vdXMgY2FsbHMgdXNlZCBpbnRlcm5hbGx5IGJ5IFdlYkNvcmUuCiAgICAgLy8gVXNhZ2Ugc2hv
dWxkIGJlIHJlcGxhY2VkIGJ5IGFzeW5jaHJvbm91cyBjYWxscy4KQEAgLTE4MiwxMiArMTczLDEy
IEBAIHB1YmxpYzoKIAogICAgIC8vIEFzeW5jaHJvbm91cyBjYWxscyB3ZSBzaG91bGQgdXNlIHRv
IHJlcGxhY2UgdGhlIGFib3ZlIHdoZW4gc3VwcG9ydGVkLgogICAgIHZpcnR1YWwgYm9vbCBzdXBw
b3J0c0FzeW5jaHJvbm91c01vZGUoKSB7IHJldHVybiBmYWxzZTsgfQotICAgIHZpcnR1YWwgdm9p
ZCBsb2FkRGVjaXNpb25Gb3JJY29uVVJMKGNvbnN0IFN0cmluZyYsIFBhc3NSZWZQdHI8SWNvbkxv
YWREZWNpc2lvbkNhbGxiYWNrPikgeyB9Ci0gICAgdmlydHVhbCB2b2lkIGljb25EYXRhRm9ySWNv
blVSTChjb25zdCBTdHJpbmcmLCBQYXNzUmVmUHRyPEljb25EYXRhQ2FsbGJhY2s+KSB7IH0KLSAg
ICAKKyAgICB2aXJ0dWFsIHZvaWQgbG9hZERlY2lzaW9uRm9ySWNvblVSTChjb25zdCBTdHJpbmcm
LCBJY29uTG9hZERlY2lzaW9uQ2FsbGJhY2smKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgaWNvbkRh
dGFGb3JJY29uVVJMKGNvbnN0IFN0cmluZyYsIEljb25EYXRhQ2FsbGJhY2smKSB7IH0KIAogICAg
IC8vIFVzZWQgd2l0aGluIG9uZSBvciBtb3JlIFdlYktpdCBwb3J0cy4KICAgICAvLyBXZSBzaG91
bGQgdHJ5IHRvIHJlbW92ZSB0aGVzZSBkZXBlbmRlbmNpZXMgZnJvbSB0aGUgSWNvbkRhdGFiYXNl
QmFzZSBjbGFzcy4KKwogICAgIHZpcnR1YWwgdm9pZCBzZXRFbmFibGVkKGJvb2wpIHsgfQogCiAg
ICAgdmlydHVhbCBJbWFnZSogZGVmYXVsdEljb24oY29uc3QgSW50U2l6ZSYpIHsgcmV0dXJuIG51
bGxwdHI7IH0KQEAgLTIwNSwxMCArMTk2LDEyIEBAIHB1YmxpYzoKIAogICAgIHZpcnR1YWwgdm9p
ZCBzZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkKGJvb2wpIHsgfQogICAgIHZpcnR1YWwgdm9pZCBz
ZXRDbGllbnQoSWNvbkRhdGFiYXNlQ2xpZW50KikgeyB9Ci0gICAgCisKICAgICB2aXJ0dWFsIGJv
b2wgaXNPcGVuKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KICAgICB2aXJ0dWFsIFN0cmluZyBk
YXRhYmFzZVBhdGgoKSBjb25zdDsKIAorcHJvdGVjdGVkOgorICAgIEljb25EYXRhYmFzZUJhc2Uo
KSA9IGRlZmF1bHQ7CiB9OwogCiAvLyBGdW5jdGlvbnMgdG8gZ2V0L3NldCB0aGUgZ2xvYmFsIGlj
b24gZGF0YWJhc2UuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9QYWdl
VVJMUmVjb3JkLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL1BhZ2VVUkxSZWNvcmQu
Y3BwCmluZGV4IGY4YjIzMTRjZjExOGNiOWQ4NjhjMTQwZDhiODJlYTEzNTQxZGI4YjAuLjk5ZGRl
ZDhmMjA1ZjNhYWJmNGVjZjgwZDA3NWFhYzg1Zjk2MjkxYmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9pY29uL1BhZ2VVUkxSZWNvcmQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9pY29uL1BhZ2VVUkxSZWNvcmQuY3BwCkBAIC0zNSwyOSArMzUsMjkgQEAgbmFtZXNw
YWNlIFdlYkNvcmUgewogCiBQYWdlVVJMUmVjb3JkOjpQYWdlVVJMUmVjb3JkKGNvbnN0IFN0cmlu
ZyYgcGFnZVVSTCkKICAgICA6IG1fcGFnZVVSTChwYWdlVVJMKQotICAgICwgbV9yZXRhaW5Db3Vu
dCgwKQogewogfQogCiBQYWdlVVJMUmVjb3JkOjp+UGFnZVVSTFJlY29yZCgpCiB7Ci0gICAgc2V0
SWNvblJlY29yZChudWxscHRyKTsKKyAgICBpZiAobV9pY29uUmVjb3JkKQorICAgICAgICBtX2lj
b25SZWNvcmQtPm1fcmV0YWluaW5nUGFnZVVSTHMucmVtb3ZlKG1fcGFnZVVSTCk7CiB9CiAKLXZv
aWQgUGFnZVVSTFJlY29yZDo6c2V0SWNvblJlY29yZChQYXNzUmVmUHRyPEljb25SZWNvcmQ+IGlj
b24pCit2b2lkIFBhZ2VVUkxSZWNvcmQ6OnNldEljb25SZWNvcmQoUmVmUHRyPEljb25SZWNvcmQ+
JiYgaWNvbikKIHsKICAgICBpZiAobV9pY29uUmVjb3JkKQogICAgICAgICBtX2ljb25SZWNvcmQt
Pm1fcmV0YWluaW5nUGFnZVVSTHMucmVtb3ZlKG1fcGFnZVVSTCk7Ci0gICAgICAgIAotICAgIG1f
aWNvblJlY29yZCA9IGljb247Ci0gICAgCisKKyAgICBtX2ljb25SZWNvcmQgPSBXVEZNb3ZlKGlj
b24pOworCiAgICAgaWYgKG1faWNvblJlY29yZCkKICAgICAgICAgbV9pY29uUmVjb3JkLT5tX3Jl
dGFpbmluZ1BhZ2VVUkxzLmFkZChtX3BhZ2VVUkwpOwogfQogICAgIAogUGFnZVVSTFNuYXBzaG90
IFBhZ2VVUkxSZWNvcmQ6OnNuYXBzaG90KGJvb2wgZm9yRGVsZXRpb24pIGNvbnN0IAogewotICAg
IHJldHVybiBQYWdlVVJMU25hcHNob3QobV9wYWdlVVJMLCAobV9pY29uUmVjb3JkICYmICFmb3JE
ZWxldGlvbikgPyBtX2ljb25SZWNvcmQtPmljb25VUkwoKSA6IFN0cmluZygpKTsKKyAgICByZXR1
cm4geyBtX3BhZ2VVUkwsIChtX2ljb25SZWNvcmQgJiYgIWZvckRlbGV0aW9uKSA/IG1faWNvblJl
Y29yZC0+aWNvblVSTCgpIDogU3RyaW5nKCkgfTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vUGFnZVVSTFJlY29yZC5o
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vUGFnZVVSTFJlY29yZC5oCmluZGV4IGVmZWQz
NDUwYzUyZDc5MDQzZjNiYjYyZjcwZjI2ZjNmZGZjZWNiM2QuLjE4OTg3NWUzMmQ4YTc0ZGU0MTdk
NTllMTZiZDQwY2E3OGE5MjBlODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9p
Y29uL1BhZ2VVUkxSZWNvcmQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9QYWdl
VVJMUmVjb3JkLmgKQEAgLTYxLDcgKzYxLDcgQEAgcHVibGljOgogCiAgICAgaW5saW5lIFN0cmlu
ZyB1cmwoKSBjb25zdCB7IHJldHVybiBtX3BhZ2VVUkw7IH0KICAgICAKLSAgICB2b2lkIHNldElj
b25SZWNvcmQoUGFzc1JlZlB0cjxJY29uUmVjb3JkPik7CisgICAgdm9pZCBzZXRJY29uUmVjb3Jk
KFJlZlB0cjxJY29uUmVjb3JkPiYmKTsKICAgICBJY29uUmVjb3JkKiBpY29uUmVjb3JkKCkgeyBy
ZXR1cm4gbV9pY29uUmVjb3JkLmdldCgpOyB9CiAKICAgICBQYWdlVVJMU25hcHNob3Qgc25hcHNo
b3QoYm9vbCBmb3JEZWxldGlvbiA9IGZhbHNlKSBjb25zdDsKQEAgLTgyLDEyICs4MiwxMiBAQCBw
dWJsaWM6CiAgICAgICAgIHJldHVybiBtX3JldGFpbkNvdW50ID4gMDsKICAgICB9CiAKLSAgICBp
bmxpbmUgaW50IHJldGFpbkNvdW50KCkgY29uc3QgeyByZXR1cm4gbV9yZXRhaW5Db3VudDsgfQor
ICAgIGludCByZXRhaW5Db3VudCgpIGNvbnN0IHsgcmV0dXJuIG1fcmV0YWluQ291bnQ7IH0KIAog
cHJpdmF0ZToKICAgICBTdHJpbmcgbV9wYWdlVVJMOwogICAgIFJlZlB0cjxJY29uUmVjb3JkPiBt
X2ljb25SZWNvcmQ7Ci0gICAgaW50IG1fcmV0YWluQ291bnQ7CisgICAgaW50IG1fcmV0YWluQ291
bnQgeyAwIH07CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvaW9zL1F1aWNrTG9vay5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2lvcy9RdWlja0xvb2suaAppbmRleCA1NTNjZWQ1MjU2NWY5YWI2ZDQwMzg4YzEzNmU1M2E3ZTY5
ZTRjNzYxLi42ZmQxY2M2OGViNmQ0ZjE4YWU4MWU1NzMxNzdiNzZhNWRhNDRkNWEwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaW9zL1F1aWNrTG9vay5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9pb3MvUXVpY2tMb29rLmgKQEAgLTg0LDcgKzg0LDcgQEAgcHVibGljOgog
CiAgICAgV0VCQ09SRV9FWFBPUlQgTlNVUkxSZXNwb25zZSAqbnNSZXNwb25zZSgpOwogCi0gICAg
dm9pZCBzZXRDbGllbnQoUGFzc1JlZlB0cjxRdWlja0xvb2tIYW5kbGVDbGllbnQ+IGNsaWVudCkg
eyBtX2NsaWVudCA9IGNsaWVudDsgfQorICAgIHZvaWQgc2V0Q2xpZW50KFJlZjxRdWlja0xvb2tI
YW5kbGVDbGllbnQ+JiYgY2xpZW50KSB7IG1fY2xpZW50ID0gV1RGTW92ZShjbGllbnQpOyB9CiAK
ICAgICBXRUJDT1JFX0VYUE9SVCBTdHJpbmcgcHJldmlld0ZpbGVOYW1lKCkgY29uc3Q7CiAgICAg
V0VCQ09SRV9FWFBPUlQgU3RyaW5nIHByZXZpZXdVVEkoKSBjb25zdDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9pb3MvUXVpY2tMb29rLm1tIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2lvcy9RdWlja0xvb2subW0KaW5kZXggZDE0MjE0NzY3Y2I1N2FjMzAyY2IxZWIxYjU2NzIy
MDM0NTI3N2YzYi4uMjg0ZDQyZTFmZjUyNDhkZDRjM2IyNjZjYjg0YjkyNGVjMzViNzQyMiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2lvcy9RdWlja0xvb2subW0KKysrIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2lvcy9RdWlja0xvb2subW0KQEAgLTE4OSwxMyArMTg5LDEzIEBA
IEBlbmQKIAogQGltcGxlbWVudGF0aW9uIFdlYlJlc291cmNlTG9hZGVyUXVpY2tMb29rRGVsZWdh
dGUKIAotLSAoaWQpaW5pdFdpdGhSZXNvdXJjZUxvYWRlcjooUGFzc1JlZlB0cjxSZXNvdXJjZUxv
YWRlcj4pcmVzb3VyY2VMb2FkZXIKKy0gKGlkKWluaXRXaXRoUmVzb3VyY2VMb2FkZXI6KFJlc291
cmNlTG9hZGVyJilyZXNvdXJjZUxvYWRlcgogewogICAgIHNlbGYgPSBbc3VwZXIgaW5pdF07CiAg
ICAgaWYgKCFzZWxmKQogICAgICAgICByZXR1cm4gbmlsOwogCi0gICAgX3Jlc291cmNlTG9hZGVy
ID0gcmVzb3VyY2VMb2FkZXI7CisgICAgX3Jlc291cmNlTG9hZGVyID0gJnJlc291cmNlTG9hZGVy
OwogICAgIHJldHVybiBzZWxmOwogfQogCkBAIC0zMzEsNyArMzMxLDcgQEAgc3RkOjp1bmlxdWVf
cHRyPFF1aWNrTG9va0hhbmRsZT4gUXVpY2tMb29rSGFuZGxlOjpjcmVhdGUoUmVzb3VyY2VMb2Fk
ZXImIGxvYWRlciwKIHsKICAgICBBU1NFUlQoc2hvdWxkQ3JlYXRlRm9yTUlNRVR5cGUocmVzcG9u
c2UubWltZVR5cGUoKSkpOwogCi0gICAgUmV0YWluUHRyPFdlYlJlc291cmNlTG9hZGVyUXVpY2tM
b29rRGVsZWdhdGU+IGRlbGVnYXRlID0gYWRvcHROUyhbW1dlYlJlc291cmNlTG9hZGVyUXVpY2tM
b29rRGVsZWdhdGUgYWxsb2NdIGluaXRXaXRoUmVzb3VyY2VMb2FkZXI6JmxvYWRlcl0pOworICAg
IFJldGFpblB0cjxXZWJSZXNvdXJjZUxvYWRlclF1aWNrTG9va0RlbGVnYXRlPiBkZWxlZ2F0ZSA9
IGFkb3B0TlMoW1tXZWJSZXNvdXJjZUxvYWRlclF1aWNrTG9va0RlbGVnYXRlIGFsbG9jXSBpbml0
V2l0aFJlc291cmNlTG9hZGVyOmxvYWRlcl0pOwogICAgIHN0ZDo6dW5pcXVlX3B0cjxRdWlja0xv
b2tIYW5kbGU+IHF1aWNrTG9va0hhbmRsZShuZXcgUXVpY2tMb29rSGFuZGxlKFtsb2FkZXIub3Jp
Z2luYWxSZXF1ZXN0KCkubnNVUkxSZXF1ZXN0KERvTm90VXBkYXRlSFRUUEJvZHkpIFVSTF0sIHJl
c3BvbnNlLm5zVVJMUmVzcG9uc2UoKSwgZGVsZWdhdGUuZ2V0KCkpKTsKICAgICBbZGVsZWdhdGUg
c2V0UXVpY2tMb29rSGFuZGxlOnF1aWNrTG9va0hhbmRsZS5nZXQoKV07CiAgICAgbG9hZGVyLmRp
ZENyZWF0ZVF1aWNrTG9va0hhbmRsZSgqcXVpY2tMb29rSGFuZGxlKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21lLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21l
LmNwcAppbmRleCBkMDE1YmE0NWEzM2FlYmNlMTcyOWQzYjk5YjI1NWY1NDUzMDFlNzZhLi4xZWM2
NmU5OTEwZjU1NjQ5ZWU2MGI5ZjZkYzI5MGYxMzMyNDBhZDRkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0Nocm9tZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWUu
Y3BwCkBAIC00MzIsNyArNDMyLDcgQEAgc3RkOjp1bmlxdWVfcHRyPENvbG9yQ2hvb3Nlcj4gQ2hy
b21lOjpjcmVhdGVDb2xvckNob29zZXIoQ29sb3JDaG9vc2VyQ2xpZW50KiBjbGkKIH0KICNlbmRp
ZgogCi12b2lkIENocm9tZTo6cnVuT3BlblBhbmVsKEZyYW1lKiBmcmFtZSwgUGFzc1JlZlB0cjxG
aWxlQ2hvb3Nlcj4gZmlsZUNob29zZXIpCit2b2lkIENocm9tZTo6cnVuT3BlblBhbmVsKEZyYW1l
JiBmcmFtZSwgRmlsZUNob29zZXImIGZpbGVDaG9vc2VyKQogewogICAgIG5vdGlmeVBvcHVwT3Bl
bmluZ09ic2VydmVycygpOwogICAgIG1fY2xpZW50LnJ1bk9wZW5QYW5lbChmcmFtZSwgZmlsZUNo
b29zZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWUuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvQ2hyb21lLmgKaW5kZXggZjIzODYwYTJiZGFmM2MyOTNlMDE5M2MyY2E0
OTJiYTZhODhmN2M1Mi4uYjUwZjc4NzNmMTA0OWUwNjE2ZDcyMzk4MDEzZDMxNDYyNzRiM2Y3NCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWUuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0Nocm9tZS5oCkBAIC0xNTYsNyArMTU2LDcgQEAgcHVibGljOgogICAgIHN0ZDo6
dW5pcXVlX3B0cjxDb2xvckNob29zZXI+IGNyZWF0ZUNvbG9yQ2hvb3NlcihDb2xvckNob29zZXJD
bGllbnQqLCBjb25zdCBDb2xvciYgaW5pdGlhbENvbG9yKTsKICNlbmRpZgogCi0gICAgdm9pZCBy
dW5PcGVuUGFuZWwoRnJhbWUqLCBQYXNzUmVmUHRyPEZpbGVDaG9vc2VyPik7CisgICAgdm9pZCBy
dW5PcGVuUGFuZWwoRnJhbWUmLCBGaWxlQ2hvb3NlciYpOwogICAgIHZvaWQgbG9hZEljb25Gb3JG
aWxlcyhjb25zdCBWZWN0b3I8U3RyaW5nPiYsIEZpbGVJY29uTG9hZGVyJik7CiAKICAgICB2b2lk
IGRpc3BhdGNoVmlld3BvcnRQcm9wZXJ0aWVzRGlkQ2hhbmdlKGNvbnN0IFZpZXdwb3J0QXJndW1l
bnRzJikgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZUNsaWVu
dC5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWVDbGllbnQuaAppbmRleCBhMDlmZTNjYjMw
YmEzZDgxOGMxNGQxZDE4ZWQ2NTM1ZTFmZTM4ODE1Li44NjgyNmU1OTUwODlmMjRjMjViMjc4NmMx
ZjRlOTgyMmRjNDRkZWRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZUNs
aWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21lQ2xpZW50LmgKQEAgLTI3Myw3
ICsyNzMsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBzdGQ6OnVuaXF1ZV9wdHI8Q29sb3JDaG9v
c2VyPiBjcmVhdGVDb2xvckNob29zZXIoQ29sb3JDaG9vc2VyQ2xpZW50KiwgY29uc3QgQ29sb3Im
KSA9IDA7CiAjZW5kaWYKIAotICAgIHZpcnR1YWwgdm9pZCBydW5PcGVuUGFuZWwoRnJhbWUqLCBQ
YXNzUmVmUHRyPEZpbGVDaG9vc2VyPikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBydW5PcGVuUGFu
ZWwoRnJhbWUmLCBGaWxlQ2hvb3NlciYpID0gMDsKICAgICAvLyBBc3luY2hyb25vdXMgcmVxdWVz
dCB0byBsb2FkIGFuIGljb24gZm9yIHNwZWNpZmllZCBmaWxlbmFtZXMuCiAgICAgdmlydHVhbCB2
b2lkIGxvYWRJY29uRm9yRmlsZXMoY29uc3QgVmVjdG9yPFN0cmluZz4mLCBGaWxlSWNvbkxvYWRl
ciYpID0gMDsKICAgICAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdp
bmRvdy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAKaW5kZXggNmEyN2Iy
YzI5YmQyZmU0NDFhMjA4MjJkNGQ5ZDVkYjU3OWVhNzc2ZC4uOWY3YTZhYzUwMWEzNmI4NGNkYjU3
MTRhMmRjMjRlYmY3MmRhYjUzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01X
aW5kb3cuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcApAQCAtNzcz
LDcgKzc3Myw3IEBAIERPTUFwcGxpY2F0aW9uQ2FjaGUqIERPTVdpbmRvdzo6YXBwbGljYXRpb25D
YWNoZSgpIGNvbnN0CiAgICAgaWYgKCFpc0N1cnJlbnRseURpc3BsYXllZEluRnJhbWUoKSkKICAg
ICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgaWYgKCFtX2FwcGxpY2F0aW9uQ2FjaGUpCi0gICAg
ICAgIG1fYXBwbGljYXRpb25DYWNoZSA9IERPTUFwcGxpY2F0aW9uQ2FjaGU6OmNyZWF0ZShtX2Zy
YW1lKTsKKyAgICAgICAgbV9hcHBsaWNhdGlvbkNhY2hlID0gRE9NQXBwbGljYXRpb25DYWNoZTo6
Y3JlYXRlKCptX2ZyYW1lKTsKICAgICByZXR1cm4gbV9hcHBsaWNhdGlvbkNhY2hlLmdldCgpOwog
fQogCkBAIC0yMDg3LDcgKzIwODcsNyBAQCB2b2lkIERPTVdpbmRvdzo6c2V0TG9jYXRpb24oRE9N
V2luZG93JiBhY3RpdmVXaW5kb3csIERPTVdpbmRvdyYgZmlyc3RXaW5kb3csIGNvbgogICAgIC8v
IFdlIHdhbnQgYSBuZXcgaGlzdG9yeSBpdGVtIGlmIHdlIGFyZSBwcm9jZXNzaW5nIGEgdXNlciBn
ZXN0dXJlLgogICAgIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5ID0gKGxvY2tpbmcgIT0gTG9ja0hp
c3RvcnlCYXNlZE9uR2VzdHVyZVN0YXRlIHx8ICFTY3JpcHRDb250cm9sbGVyOjpwcm9jZXNzaW5n
VXNlckdlc3R1cmUoKSkgPyBMb2NrSGlzdG9yeTo6WWVzIDogTG9ja0hpc3Rvcnk6Ok5vOwogICAg
IExvY2tCYWNrRm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3YXJkTGlzdCA9IChsb2NraW5nICE9IExv
Y2tIaXN0b3J5QmFzZWRPbkdlc3R1cmVTdGF0ZSkgPyBMb2NrQmFja0ZvcndhcmRMaXN0OjpZZXMg
OiBMb2NrQmFja0ZvcndhcmRMaXN0OjpObzsKLSAgICBtX2ZyYW1lLT5uYXZpZ2F0aW9uU2NoZWR1
bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZShhY3RpdmVEb2N1bWVudCwgYWN0aXZlRG9jdW1l
bnQtPnNlY3VyaXR5T3JpZ2luKCksCisgICAgbV9mcmFtZS0+bmF2aWdhdGlvblNjaGVkdWxlcigp
LnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UoKmFjdGl2ZURvY3VtZW50LCBhY3RpdmVEb2N1bWVudC0+
c2VjdXJpdHlPcmlnaW4oKSwKICAgICAgICAgLy8gRklYTUU6IFdoYXQgaWYgYWN0aXZlRG9jdW1l
bnQoKS0+ZnJhbWUoKSBpcyAwPwogICAgICAgICBjb21wbGV0ZWRVUkwsIGFjdGl2ZURvY3VtZW50
LT5mcmFtZSgpLT5sb2FkZXIoKS5vdXRnb2luZ1JlZmVycmVyKCksCiAgICAgICAgIGxvY2tIaXN0
b3J5LCBsb2NrQmFja0ZvcndhcmRMaXN0KTsKQEAgLTIyMTMsNyArMjIxMyw3IEBAIFJlZlB0cjxG
cmFtZT4gRE9NV2luZG93OjpjcmVhdGVXaW5kb3coY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcsIGNv
bnN0IEF0b21pY1N0cmluCiAgICAgICAgIG5ld0ZyYW1lLT5sb2FkZXIoKS5jaGFuZ2VMb2NhdGlv
bihmcmFtZVJlcXVlc3QpOwogICAgIH0gZWxzZSBpZiAoIXVybFN0cmluZy5pc0VtcHR5KCkpIHsK
ICAgICAgICAgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnkgPSBTY3JpcHRDb250cm9sbGVyOjpwcm9j
ZXNzaW5nVXNlckdlc3R1cmUoKSA/IExvY2tIaXN0b3J5OjpObyA6IExvY2tIaXN0b3J5OjpZZXM7
Ci0gICAgICAgIG5ld0ZyYW1lLT5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlv
bkNoYW5nZShhY3RpdmVXaW5kb3cuZG9jdW1lbnQoKSwgYWN0aXZlV2luZG93LmRvY3VtZW50KCkt
PnNlY3VyaXR5T3JpZ2luKCksIGNvbXBsZXRlZFVSTCwgcmVmZXJyZXIsIGxvY2tIaXN0b3J5LCBM
b2NrQmFja0ZvcndhcmRMaXN0OjpObyk7CisgICAgICAgIG5ld0ZyYW1lLT5uYXZpZ2F0aW9uU2No
ZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZSgqYWN0aXZlV2luZG93LmRvY3VtZW50KCks
IGFjdGl2ZVdpbmRvdy5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLCBjb21wbGV0ZWRVUkws
IHJlZmVycmVyLCBsb2NrSGlzdG9yeSwgTG9ja0JhY2tGb3J3YXJkTGlzdDo6Tm8pOwogICAgIH0K
IAogICAgIC8vIE5hdmlnYXRpbmcgdGhlIG5ldyBmcmFtZSBjb3VsZCByZXN1bHQgaW4gaXQgYmVp
bmcgZGV0YWNoZWQgZnJvbSBpdHMgcGFnZSBieSBhIG5hdmlnYXRpb24gcG9saWN5IGRlbGVnYXRl
LgpAQCAtMjIyMywyOCArMjIyMywyNiBAQCBSZWZQdHI8RnJhbWU+IERPTVdpbmRvdzo6Y3JlYXRl
V2luZG93KGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nLCBjb25zdCBBdG9taWNTdHJpbgogICAgIHJl
dHVybiBuZXdGcmFtZTsKIH0KIAotUmVmUHRyPERPTVdpbmRvdz4gRE9NV2luZG93OjpvcGVuKGNv
bnN0IFN0cmluZyYgdXJsU3RyaW5nLCBjb25zdCBBdG9taWNTdHJpbmcmIGZyYW1lTmFtZSwgY29u
c3QgU3RyaW5nJiB3aW5kb3dGZWF0dXJlc1N0cmluZywKLSAgICBET01XaW5kb3cmIGFjdGl2ZVdp
bmRvdywgRE9NV2luZG93JiBmaXJzdFdpbmRvdykKK1JlZlB0cjxET01XaW5kb3c+IERPTVdpbmRv
dzo6b3Blbihjb25zdCBTdHJpbmcmIHVybFN0cmluZywgY29uc3QgQXRvbWljU3RyaW5nJiBmcmFt
ZU5hbWUsIGNvbnN0IFN0cmluZyYgd2luZG93RmVhdHVyZXNTdHJpbmcsIERPTVdpbmRvdyYgYWN0
aXZlV2luZG93LCBET01XaW5kb3cmIGZpcnN0V2luZG93KQogewogICAgIGlmICghaXNDdXJyZW50
bHlEaXNwbGF5ZWRJbkZyYW1lKCkpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgRG9j
dW1lbnQqIGFjdGl2ZURvY3VtZW50ID0gYWN0aXZlV2luZG93LmRvY3VtZW50KCk7CisgICAgYXV0
byogYWN0aXZlRG9jdW1lbnQgPSBhY3RpdmVXaW5kb3cuZG9jdW1lbnQoKTsKICAgICBpZiAoIWFj
dGl2ZURvY3VtZW50KQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAotICAgIEZyYW1lKiBmaXJz
dEZyYW1lID0gZmlyc3RXaW5kb3cuZnJhbWUoKTsKKyAgICBhdXRvKiBmaXJzdEZyYW1lID0gZmly
c3RXaW5kb3cuZnJhbWUoKTsKICAgICBpZiAoIWZpcnN0RnJhbWUpCiAgICAgICAgIHJldHVybiBu
dWxscHRyOwogCiAjaWYgRU5BQkxFKENPTlRFTlRfRVhURU5TSU9OUykKICAgICBpZiAoZmlyc3RG
cmFtZS0+ZG9jdW1lbnQoKQotICAgICAgICAmJiBmaXJzdEZyYW1lLT5tYWluRnJhbWUoKS5wYWdl
KCkKKyAgICAgICAgJiYgZmlyc3RGcmFtZS0+cGFnZSgpCiAgICAgICAgICYmIGZpcnN0RnJhbWUt
Pm1haW5GcmFtZSgpLmRvY3VtZW50KCkKICAgICAgICAgJiYgZmlyc3RGcmFtZS0+bWFpbkZyYW1l
KCkuZG9jdW1lbnQoKS0+bG9hZGVyKCkpIHsKLSAgICAgICAgUmVzb3VyY2VMb2FkSW5mbyByZXNv
dXJjZUxvYWRJbmZvID0geyBmaXJzdEZyYW1lLT5kb2N1bWVudCgpLT5jb21wbGV0ZVVSTCh1cmxT
dHJpbmcpLCBmaXJzdEZyYW1lLT5tYWluRnJhbWUoKS5kb2N1bWVudCgpLT51cmwoKSwgUmVzb3Vy
Y2VUeXBlOjpQb3B1cCB9OwotICAgICAgICBWZWN0b3I8Q29udGVudEV4dGVuc2lvbnM6OkFjdGlv
bj4gYWN0aW9ucyA9IGZpcnN0RnJhbWUtPm1haW5GcmFtZSgpLnBhZ2UoKS0+dXNlckNvbnRlbnRQ
cm92aWRlcigpLmFjdGlvbnNGb3JSZXNvdXJjZUxvYWQocmVzb3VyY2VMb2FkSW5mbywgKmZpcnN0
RnJhbWUtPm1haW5GcmFtZSgpLmRvY3VtZW50KCktPmxvYWRlcigpKTsKLSAgICAgICAgZm9yIChj
b25zdCBDb250ZW50RXh0ZW5zaW9uczo6QWN0aW9uJiBhY3Rpb24gOiBhY3Rpb25zKSB7CisgICAg
ICAgIFJlc291cmNlTG9hZEluZm8gcmVzb3VyY2VMb2FkSW5mbyB7IGZpcnN0RnJhbWUtPmRvY3Vt
ZW50KCktPmNvbXBsZXRlVVJMKHVybFN0cmluZyksIGZpcnN0RnJhbWUtPm1haW5GcmFtZSgpLmRv
Y3VtZW50KCktPnVybCgpLCBSZXNvdXJjZVR5cGU6OlBvcHVwIH07CisgICAgICAgIGZvciAoYXV0
byYgYWN0aW9uIDogZmlyc3RGcmFtZS0+cGFnZSgpLT51c2VyQ29udGVudFByb3ZpZGVyKCkuYWN0
aW9uc0ZvclJlc291cmNlTG9hZChyZXNvdXJjZUxvYWRJbmZvLCAqZmlyc3RGcmFtZS0+bWFpbkZy
YW1lKCkuZG9jdW1lbnQoKS0+bG9hZGVyKCkpKSB7CiAgICAgICAgICAgICBpZiAoYWN0aW9uLnR5
cGUoKSA9PSBDb250ZW50RXh0ZW5zaW9uczo6QWN0aW9uVHlwZTo6QmxvY2tMb2FkKQogICAgICAg
ICAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgICAgICB9CkBAIC0yMjg0LDcgKzIyODIsNyBA
QCBSZWZQdHI8RE9NV2luZG93PiBET01XaW5kb3c6Om9wZW4oY29uc3QgU3RyaW5nJiB1cmxTdHJp
bmcsIGNvbnN0IEF0b21pY1N0cmluZyYgZgogICAgICAgICAvLyBGb3Igd2hhdGV2ZXIgcmVhc29u
LCBGaXJlZm94IHVzZXMgdGhlIGZpcnN0IHdpbmRvdyByYXRoZXIgdGhhbiB0aGUgYWN0aXZlIHdp
bmRvdyB0bwogICAgICAgICAvLyBkZXRlcm1pbmUgdGhlIG91dGdvaW5nIHJlZmVycmVyLiBXZSBy
ZXBsaWNhdGUgdGhhdCBiZWhhdmlvciBoZXJlLgogICAgICAgICBMb2NrSGlzdG9yeSBsb2NrSGlz
dG9yeSA9IFNjcmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpID8gTG9ja0hp
c3Rvcnk6Ok5vIDogTG9ja0hpc3Rvcnk6OlllczsKLSAgICAgICAgdGFyZ2V0RnJhbWUtPm5hdmln
YXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKGFjdGl2ZURvY3VtZW50LCBh
Y3RpdmVEb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKSwgY29tcGxldGVkVVJMLCBmaXJzdEZyYW1l
LT5sb2FkZXIoKS5vdXRnb2luZ1JlZmVycmVyKCksCisgICAgICAgIHRhcmdldEZyYW1lLT5uYXZp
Z2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZSgqYWN0aXZlRG9jdW1lbnQs
IGFjdGl2ZURvY3VtZW50LT5zZWN1cml0eU9yaWdpbigpLCBjb21wbGV0ZWRVUkwsIGZpcnN0RnJh
bWUtPmxvYWRlcigpLm91dGdvaW5nUmVmZXJyZXIoKSwKICAgICAgICAgICAgIGxvY2tIaXN0b3J5
LCBMb2NrQmFja0ZvcndhcmRMaXN0OjpObyk7CiAgICAgICAgIHJldHVybiB0YXJnZXRGcmFtZS0+
ZG9jdW1lbnQoKS0+ZG9tV2luZG93KCk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGFnZS9FZGl0b3JDbGllbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRWRpdG9yQ2xpZW50
LmgKaW5kZXggZWIxYTQyZTJlZWQwM2E1MTRkMTIzNjA4YmNlNzNiNGUyZDU2NzgwYS4uZjQxMzIx
MDlmNjQ5M2MzMDU4MmE5ODkxOTJjOGRiMzU1OTk5Nzg0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGFnZS9FZGl0b3JDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0VkaXRv
ckNsaWVudC5oCkBAIC0xMDQsOCArMTA0LDggQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBk
aXNjYXJkZWRDb21wb3NpdGlvbihGcmFtZSopID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgY2FuY2Vs
ZWRDb21wb3NpdGlvbigpID0gMDsKIAotICAgIHZpcnR1YWwgdm9pZCByZWdpc3RlclVuZG9TdGVw
KFBhc3NSZWZQdHI8VW5kb1N0ZXA+KSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIHJlZ2lzdGVyUmVk
b1N0ZXAoUGFzc1JlZlB0cjxVbmRvU3RlcD4pID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgcmVnaXN0
ZXJVbmRvU3RlcChVbmRvU3RlcCYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgcmVnaXN0ZXJSZWRv
U3RlcChVbmRvU3RlcCYpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgY2xlYXJVbmRvUmVkb09wZXJh
dGlvbnMoKSA9IDA7CiAKICAgICB2aXJ0dWFsIGJvb2wgY2FuQ29weUN1dChGcmFtZSosIGJvb2wg
ZGVmYXVsdFZhbHVlKSBjb25zdCA9IDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L0hpc3RvcnkuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9IaXN0b3J5LmNwcAppbmRleCAxZDQ1
NDJiODdlYTYxMjUwYTg0YmQ3Y2Q5MTY3MmQ1ZWFmYjM4NGRmLi42M2VkM2QwMDdlYmVkMWE4MjM5
MGJhZTE5ODc1YjM1Mjc2OWZlOGUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0hp
c3RvcnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvSGlzdG9yeS5jcHAKQEAgLTIwNywx
MCArMjA3LDEwIEBAIEV4Y2VwdGlvbk9yPHZvaWQ+IEhpc3Rvcnk6OnN0YXRlT2JqZWN0QWRkZWQo
UmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4mJiBkYXRhCiAgICAgICAgIG1fZnJhbWUtPmRv
Y3VtZW50KCktPnVwZGF0ZVVSTEZvclB1c2hPclJlcGxhY2VTdGF0ZShmdWxsVVJMKTsKIAogICAg
IGlmIChzdGF0ZU9iamVjdFR5cGUgPT0gU3RhdGVPYmplY3RUeXBlOjpQdXNoKSB7Ci0gICAgICAg
IG1fZnJhbWUtPmxvYWRlcigpLmhpc3RvcnkoKS5wdXNoU3RhdGUoZGF0YSwgdGl0bGUsIGZ1bGxV
Ukwuc3RyaW5nKCkpOworICAgICAgICBtX2ZyYW1lLT5sb2FkZXIoKS5oaXN0b3J5KCkucHVzaFN0
YXRlKFdURk1vdmUoZGF0YSksIHRpdGxlLCBmdWxsVVJMLnN0cmluZygpKTsKICAgICAgICAgbV9m
cmFtZS0+bG9hZGVyKCkuY2xpZW50KCkuZGlzcGF0Y2hEaWRQdXNoU3RhdGVXaXRoaW5QYWdlKCk7
CiAgICAgfSBlbHNlIGlmIChzdGF0ZU9iamVjdFR5cGUgPT0gU3RhdGVPYmplY3RUeXBlOjpSZXBs
YWNlKSB7Ci0gICAgICAgIG1fZnJhbWUtPmxvYWRlcigpLmhpc3RvcnkoKS5yZXBsYWNlU3RhdGUo
ZGF0YSwgdGl0bGUsIGZ1bGxVUkwuc3RyaW5nKCkpOworICAgICAgICBtX2ZyYW1lLT5sb2FkZXIo
KS5oaXN0b3J5KCkucmVwbGFjZVN0YXRlKFdURk1vdmUoZGF0YSksIHRpdGxlLCBmdWxsVVJMLnN0
cmluZygpKTsKICAgICAgICAgbV9mcmFtZS0+bG9hZGVyKCkuY2xpZW50KCkuZGlzcGF0Y2hEaWRS
ZXBsYWNlU3RhdGVXaXRoaW5QYWdlKCk7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0xvY2F0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTG9jYXRpb24uY3Bw
CmluZGV4IDhkODM5ZDEzYTkxOTgwZTFhMDI4ZGJjNTgwYmJiZjFkMzY2ZDQ1NmYuLmJkYjU0OGIw
Yjc4OTM0YWM2MmMxNzFlNjlmN2YxMjkzYmZmYTQyNzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvTG9jYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTG9jYXRpb24u
Y3BwCkBAIC0yMjEsOSArMjIxLDEwIEBAIHZvaWQgTG9jYXRpb246OnNldEhhc2goRE9NV2luZG93
JiBhY3RpdmVXaW5kb3csIERPTVdpbmRvdyYgZmlyc3RXaW5kb3csIGNvbnN0IFN0CiB7CiAgICAg
aWYgKCFtX2ZyYW1lKQogICAgICAgICByZXR1cm47Ci0gICAgVVJMIHVybCA9IG1fZnJhbWUtPmRv
Y3VtZW50KCktPnVybCgpOwotICAgIFN0cmluZyBvbGRGcmFnbWVudElkZW50aWZpZXIgPSB1cmwu
ZnJhZ21lbnRJZGVudGlmaWVyKCk7Ci0gICAgU3RyaW5nIG5ld0ZyYWdtZW50SWRlbnRpZmllciA9
IGhhc2g7CisgICAgQVNTRVJUKG1fZnJhbWUtPmRvY3VtZW50KCkpOworICAgIGF1dG8gdXJsID0g
bV9mcmFtZS0+ZG9jdW1lbnQoKS0+dXJsKCk7CisgICAgYXV0byBvbGRGcmFnbWVudElkZW50aWZp
ZXIgPSB1cmwuZnJhZ21lbnRJZGVudGlmaWVyKCk7CisgICAgYXV0byBuZXdGcmFnbWVudElkZW50
aWZpZXIgPSBoYXNoOwogICAgIGlmIChoYXNoWzBdID09ICcjJykKICAgICAgICAgbmV3RnJhZ21l
bnRJZGVudGlmaWVyID0gaGFzaC5zdWJzdHJpbmcoMSk7CiAgICAgdXJsLnNldEZyYWdtZW50SWRl
bnRpZmllcihuZXdGcmFnbWVudElkZW50aWZpZXIpOwpAQCAtMjQ2LDcgKzI0Nyw5IEBAIHZvaWQg
TG9jYXRpb246OnJlcGxhY2UoRE9NV2luZG93JiBhY3RpdmVXaW5kb3csIERPTVdpbmRvdyYgZmly
c3RXaW5kb3csIGNvbnN0IFN0CiB7CiAgICAgaWYgKCFtX2ZyYW1lKQogICAgICAgICByZXR1cm47
Ci0gICAgLy8gTm90ZTogV2UgY2FsbCBET01XaW5kb3c6OnNldExvY2F0aW9uIGRpcmVjdGx5IGhl
cmUgYmVjYXVzZSByZXBsYWNlKCkgYWx3YXlzIG9wZXJhdGVzIG9uIHRoZSBjdXJyZW50IGZyYW1l
LgorICAgIEFTU0VSVChtX2ZyYW1lLT5kb2N1bWVudCgpKTsKKyAgICBBU1NFUlQobV9mcmFtZS0+
ZG9jdW1lbnQoKS0+ZG9tV2luZG93KCkpOworICAgIC8vIFdlIGNhbGwgRE9NV2luZG93OjpzZXRM
b2NhdGlvbiBkaXJlY3RseSBoZXJlIGJlY2F1c2UgcmVwbGFjZSgpIGFsd2F5cyBvcGVyYXRlcyBv
biB0aGUgY3VycmVudCBmcmFtZS4KICAgICBtX2ZyYW1lLT5kb2N1bWVudCgpLT5kb21XaW5kb3co
KS0+c2V0TG9jYXRpb24oYWN0aXZlV2luZG93LCBmaXJzdFdpbmRvdywgdXJsLCBMb2NrSGlzdG9y
eUFuZEJhY2tGb3J3YXJkTGlzdCk7CiB9CiAKQEAgLTI1NCwyNiArMjU3LDM4IEBAIHZvaWQgTG9j
YXRpb246OnJlbG9hZChET01XaW5kb3cmIGFjdGl2ZVdpbmRvdykKIHsKICAgICBpZiAoIW1fZnJh
bWUpCiAgICAgICAgIHJldHVybjsKKworICAgIEFTU0VSVChhY3RpdmVXaW5kb3cuZG9jdW1lbnQo
KSk7CisgICAgQVNTRVJUKG1fZnJhbWUtPmRvY3VtZW50KCkpOworICAgIEFTU0VSVChtX2ZyYW1l
LT5kb2N1bWVudCgpLT5kb21XaW5kb3coKSk7CisKKyAgICBhdXRvJiBhY3RpdmVEb2N1bWVudCA9
ICphY3RpdmVXaW5kb3cuZG9jdW1lbnQoKTsKKyAgICBhdXRvJiB0YXJnZXREb2N1bWVudCA9ICpt
X2ZyYW1lLT5kb2N1bWVudCgpOworCiAgICAgLy8gRklYTUU6IEl0J3Mgbm90IGNsZWFyIHRoaXMg
Y3Jvc3Mtb3JpZ2luIHNlY3VyaXR5IGNoZWNrIGlzIHZhbHVhYmxlLgogICAgIC8vIFdlIGFsbG93
IG9uZSBwYWdlIHRvIGNoYW5nZSB0aGUgbG9jYXRpb24gb2YgYW5vdGhlci4gV2h5IGJsb2NrIGF0
dGVtcHRzIHRvIHJlbG9hZD8KICAgICAvLyBPdGhlciBsb2NhdGlvbiBvcGVyYXRpb25zIHNpbXBs
eSBibG9jayB1c2Ugb2YgSmF2YVNjcmlwdCBVUkxzIGNyb3NzIG9yaWdpbi4KLSAgICBET01XaW5k
b3cqIHRhcmdldFdpbmRvdyA9IG1fZnJhbWUtPmRvY3VtZW50KCktPmRvbVdpbmRvdygpOwotICAg
IGlmICghYWN0aXZlV2luZG93LmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPmNhbkFjY2Vz
cyhtX2ZyYW1lLT5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpKSkgewotICAgICAgICB0YXJn
ZXRXaW5kb3ctPnByaW50RXJyb3JNZXNzYWdlKHRhcmdldFdpbmRvdy0+Y3Jvc3NEb21haW5BY2Nl
c3NFcnJvck1lc3NhZ2UoYWN0aXZlV2luZG93KSk7CisgICAgaWYgKCFhY3RpdmVEb2N1bWVudC5z
ZWN1cml0eU9yaWdpbigpLT5jYW5BY2Nlc3ModGFyZ2V0RG9jdW1lbnQuc2VjdXJpdHlPcmlnaW4o
KSkpIHsKKyAgICAgICAgYXV0byYgdGFyZ2V0V2luZG93ID0gKnRhcmdldERvY3VtZW50LmRvbVdp
bmRvdygpOworICAgICAgICB0YXJnZXRXaW5kb3cucHJpbnRFcnJvck1lc3NhZ2UodGFyZ2V0V2lu
ZG93LmNyb3NzRG9tYWluQWNjZXNzRXJyb3JNZXNzYWdlKGFjdGl2ZVdpbmRvdykpOwogICAgICAg
ICByZXR1cm47CiAgICAgfQotICAgIGlmIChwcm90b2NvbElzSmF2YVNjcmlwdChtX2ZyYW1lLT5k
b2N1bWVudCgpLT51cmwoKSkpCisKKyAgICBpZiAocHJvdG9jb2xJc0phdmFTY3JpcHQodGFyZ2V0
RG9jdW1lbnQudXJsKCkpKQogICAgICAgICByZXR1cm47Ci0gICAgbV9mcmFtZS0+bmF2aWdhdGlv
blNjaGVkdWxlcigpLnNjaGVkdWxlUmVmcmVzaChhY3RpdmVXaW5kb3cuZG9jdW1lbnQoKSk7CisK
KyAgICBtX2ZyYW1lLT5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVSZWZyZXNoKGFjdGl2
ZURvY3VtZW50KTsKIH0KIAogdm9pZCBMb2NhdGlvbjo6c2V0TG9jYXRpb24oRE9NV2luZG93JiBh
Y3RpdmVXaW5kb3csIERPTVdpbmRvdyYgZmlyc3RXaW5kb3csIGNvbnN0IFN0cmluZyYgdXJsKQog
ewogICAgIEFTU0VSVChtX2ZyYW1lKTsKLSAgICBGcmFtZSogZnJhbWUgPSBtX2ZyYW1lLT5sb2Fk
ZXIoKS5maW5kRnJhbWVGb3JOYXZpZ2F0aW9uKFN0cmluZygpLCBhY3RpdmVXaW5kb3cuZG9jdW1l
bnQoKSk7Ci0gICAgaWYgKCFmcmFtZSkKKyAgICBhdXRvKiB0YXJnZXRGcmFtZSA9IG1fZnJhbWUt
PmxvYWRlcigpLmZpbmRGcmFtZUZvck5hdmlnYXRpb24oeyB9LCBhY3RpdmVXaW5kb3cuZG9jdW1l
bnQoKSk7CisgICAgaWYgKCF0YXJnZXRGcmFtZSkKICAgICAgICAgcmV0dXJuOwotICAgIGZyYW1l
LT5kb2N1bWVudCgpLT5kb21XaW5kb3coKS0+c2V0TG9jYXRpb24oYWN0aXZlV2luZG93LCBmaXJz
dFdpbmRvdywgdXJsKTsKKyAgICBBU1NFUlQodGFyZ2V0RnJhbWUtPmRvY3VtZW50KCkpOworICAg
IEFTU0VSVCh0YXJnZXRGcmFtZS0+ZG9jdW1lbnQoKS0+ZG9tV2luZG93KCkpOworICAgIHRhcmdl
dEZyYW1lLT5kb2N1bWVudCgpLT5kb21XaW5kb3coKS0+c2V0TG9jYXRpb24oYWN0aXZlV2luZG93
LCBmaXJzdFdpbmRvdywgdXJsKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVVJMLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL1VSTC5jcHAKaW5kZXggZTcwYTBmN2I4M2U5ZTJmODQ1NGNkMTFmNWE2NDk4NjFhMDI2
Mzg5My4uNWVmYjg1YTMwMzRlZTNlZWQwMGJhZmRjZjBlNjgzMjI2NTA3NzhhMSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVVJMLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9VUkwuY3BwCkBAIC0xMTI2LDE3ICsxMTI2LDE3IEBAIHZvaWQgVVJMOjpzZXRQYXNz
KGNvbnN0IFN0cmluZyYgcGFzc3dvcmQpCiAgICAgfQogfQogCi12b2lkIFVSTDo6c2V0RnJhZ21l
bnRJZGVudGlmaWVyKGNvbnN0IFN0cmluZyYgcykKK3ZvaWQgVVJMOjpzZXRGcmFnbWVudElkZW50
aWZpZXIoU3RyaW5nVmlldyBpZGVudGlmaWVyKQogewogICAgIGlmICghbV9pc1ZhbGlkKQogICAg
ICAgICByZXR1cm47CiAKLSAgICAvLyBGSVhNRTogTm9uLUFTQ0lJIGNoYXJhY3RlcnMgbXVzdCBi
ZSBlbmNvZGVkIGFuZCBlc2NhcGVkIHRvIG1hdGNoIHBhcnNlKCkgZXhwZWN0YXRpb25zLgotICAg
IGlmIChVUkxQYXJzZXI6OmVuYWJsZWQoKSkgewotICAgICAgICBVUkxQYXJzZXIgcGFyc2VyKG1h
a2VTdHJpbmcobV9zdHJpbmcubGVmdChtX3F1ZXJ5RW5kKSwgIiMiLCBzKSk7Ci0gICAgICAgICp0
aGlzID0gcGFyc2VyLnJlc3VsdCgpOwotICAgIH0gZWxzZQotICAgICAgICBwYXJzZShtX3N0cmlu
Zy5sZWZ0KG1fcXVlcnlFbmQpICsgIiMiICsgcyk7CisgICAgLy8gRklYTUU6IE9wdGltaXplIHRo
ZSBjYXNlIHdoZXJlIHRoZSBpZGVudGlmaWVyIGFscmVhZHkgaGFwcGVucyB0byBiZSBlcXVhbCB0
byB3aGF0IHdhcyBwYXNzZWQ/CisgICAgLy8gRklYTUU6IElzIGl0IGNvcnJlY3QgdG8gZG8gdGhp
cyB3aXRob3V0IGVuY29kaW5nIGFuZCBlc2NhcGluZyBub24tQVNDSUkgY2hhcmFjdGVycz8KKyAg
ICBpZiAoVVJMUGFyc2VyOjplbmFibGVkKCkpCisgICAgICAgICp0aGlzID0gVVJMUGFyc2VyIHsg
bWFrZVN0cmluZyhTdHJpbmdWaWV3IHsgbV9zdHJpbmcgfS5zdWJzdHJpbmcoMCwgbV9xdWVyeUVu
ZCksICcjJywgaWRlbnRpZmllcikgfS5yZXN1bHQoKTsKKyAgICBlbHNlCisgICAgICAgIHBhcnNl
KG1fc3RyaW5nLmxlZnQobV9xdWVyeUVuZCkgKyAiIyIgKyBpZGVudGlmaWVyKTsKIH0KIAogdm9p
ZCBVUkw6OnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9VUkwuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1VSTC5oCmluZGV4
IDVhYmYwNWZlN2M2Mzc0ZmQ1NTJhODAxZGM3OGRhMmRiNmE2Y2NlZmUuLmIyYzIzZGU0MTE3ODQw
MDAyMDQzM2QzYjM0YmQ2N2MxNmE1NDVkZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL1VSTC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1VSTC5oCkBAIC0xNTgs
NyArMTU4LDcgQEAgcHVibGljOgogICAgIC8vIFVSTCAod2l0aCBub3RoaW5nIGFmdGVyIGl0KS4g
VG8gY2xlYXIgdGhlIHF1ZXJ5LCBwYXNzIGEgbnVsbCBzdHJpbmcuCiAgICAgdm9pZCBzZXRRdWVy
eShjb25zdCBTdHJpbmcmKTsKIAotICAgIHZvaWQgc2V0RnJhZ21lbnRJZGVudGlmaWVyKGNvbnN0
IFN0cmluZyYpOworICAgIHZvaWQgc2V0RnJhZ21lbnRJZGVudGlmaWVyKFN0cmluZ1ZpZXcpOwog
ICAgIHZvaWQgcmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CiAKICAgICBXRUJDT1JFX0VYUE9S
VCBmcmllbmQgYm9vbCBlcXVhbElnbm9yaW5nRnJhZ21lbnRJZGVudGlmaWVyKGNvbnN0IFVSTCYs
IGNvbnN0IFVSTCYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVwbGF5L1JlcGxheUlu
cHV0RGlzcGF0Y2hNZXRob2RzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlcGxheS9SZXBsYXlJbnB1
dERpc3BhdGNoTWV0aG9kcy5jcHAKaW5kZXggODQ3NTJhMjMyZmVhNmUzOWVjNTc2MTQyZmUzNTcw
YzFiYzNkMjQxNi4uN2YzYzMwMDNjMTUyYWVjMDgyZmE5N2Y2MDI2Zjc4NmZhOTJjZjRiNCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVwbGF5L1JlcGxheUlucHV0RGlzcGF0Y2hNZXRob2Rz
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZXBsYXkvUmVwbGF5SW5wdXREaXNwYXRjaE1ldGhv
ZHMuY3BwCkBAIC01MCw4ICs1MCw5IEBAIHZvaWQgRW5kU2VnbWVudFNlbnRpbmVsOjpkaXNwYXRj
aChSZXBsYXlDb250cm9sbGVyJikKIC8vIE5hdmlnYXRpb24gaW5wdXRzLgogdm9pZCBJbml0aWFs
TmF2aWdhdGlvbjo6ZGlzcGF0Y2goUmVwbGF5Q29udHJvbGxlciYgY29udHJvbGxlcikKIHsKLSAg
ICBGcmFtZSYgZnJhbWUgPSBjb250cm9sbGVyLnBhZ2UoKS5tYWluRnJhbWUoKTsKLSAgICBmcmFt
ZS5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZShmcmFtZS5kb2N1
bWVudCgpLCBtX3NlY3VyaXR5T3JpZ2luLmdldCgpLCBtX3VybCwgbV9yZWZlcnJlcik7CisgICAg
YXV0byYgZnJhbWUgPSBjb250cm9sbGVyLnBhZ2UoKS5tYWluRnJhbWUoKTsKKyAgICBBU1NFUlQo
ZnJhbWUuZG9jdW1lbnQoKSk7CisgICAgZnJhbWUubmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVk
dWxlTG9jYXRpb25DaGFuZ2UoKmZyYW1lLmRvY3VtZW50KCksIG1fc2VjdXJpdHlPcmlnaW4uZ2V0
KCksIG1fdXJsLCBtX3JlZmVycmVyKTsKIH0KIAogdm9pZCBIYW5kbGVLZXlQcmVzczo6ZGlzcGF0
Y2goUmVwbGF5Q29udHJvbGxlciYgY29udHJvbGxlcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3N2Zy9TVkdGRUltYWdlRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRkVJ
bWFnZUVsZW1lbnQuY3BwCmluZGV4IDBiMzI3MTBiNmZhOWQ0MzNmYjgyYWE5MTE2YjIwZDY4MThk
NWFmYjIuLmMyY2Q2ZjY1YjMwYjdhMGJlZjQ0NzhkNWFjNDcwOWVkOWNmZDIxYTIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGRUltYWdlRWxlbWVudC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvc3ZnL1NWR0ZFSW1hZ2VFbGVtZW50LmNwcApAQCAtODgsNyArODgsNyBAQCB2b2lk
IFNWR0ZFSW1hZ2VFbGVtZW50OjpyZXF1ZXN0SW1hZ2VSZXNvdXJjZSgpCiAgICAgb3B0aW9ucy5j
b250ZW50U2VjdXJpdHlQb2xpY3lJbXBvc2l0aW9uID0gaXNJblVzZXJBZ2VudFNoYWRvd1RyZWUo
KSA/IENvbnRlbnRTZWN1cml0eVBvbGljeUltcG9zaXRpb246OlNraXBQb2xpY3lDaGVjayA6IENv
bnRlbnRTZWN1cml0eVBvbGljeUltcG9zaXRpb246OkRvUG9saWN5Q2hlY2s7CiAKICAgICBDYWNo
ZWRSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdChSZXNvdXJjZVJlcXVlc3QoZG9jdW1lbnQoKS5jb21w
bGV0ZVVSTChocmVmKCkpKSwgb3B0aW9ucyk7Ci0gICAgcmVxdWVzdC5zZXRJbml0aWF0b3IodGhp
cyk7CisgICAgcmVxdWVzdC5zZXRJbml0aWF0b3IoKnRoaXMpOwogICAgIG1fY2FjaGVkSW1hZ2Ug
PSBkb2N1bWVudCgpLmNhY2hlZFJlc291cmNlTG9hZGVyKCkucmVxdWVzdEltYWdlKFdURk1vdmUo
cmVxdWVzdCkpOwogCiAgICAgaWYgKG1fY2FjaGVkSW1hZ2UpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9zdmcvU1ZHRm9udEZhY2VVcmlFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N2
Zy9TVkdGb250RmFjZVVyaUVsZW1lbnQuY3BwCmluZGV4IDM1NjZhYzQ2NTMyOWY3ZmExY2Q0NDZl
ZjE3YTM2NWQ3NWVmNmYyNDMuLjU2ZDVlNjNjM2MxNWFhZjZmNWY2ZTliNjk5NGE5MGU2ZmQ2MjIz
NDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGb250RmFjZVVyaUVsZW1lbnQu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGb250RmFjZVVyaUVsZW1lbnQuY3BwCkBA
IC0xMDUsNyArMTA1LDcgQEAgdm9pZCBTVkdGb250RmFjZVVyaUVsZW1lbnQ6OmxvYWRGb250KCkK
IAogICAgICAgICBDYWNoZWRSZXNvdXJjZUxvYWRlciYgY2FjaGVkUmVzb3VyY2VMb2FkZXIgPSBk
b2N1bWVudCgpLmNhY2hlZFJlc291cmNlTG9hZGVyKCk7CiAgICAgICAgIENhY2hlZFJlc291cmNl
UmVxdWVzdCByZXF1ZXN0KFJlc291cmNlUmVxdWVzdChkb2N1bWVudCgpLmNvbXBsZXRlVVJMKGhy
ZWYpKSwgb3B0aW9ucyk7Ci0gICAgICAgIHJlcXVlc3Quc2V0SW5pdGlhdG9yKHRoaXMpOworICAg
ICAgICByZXF1ZXN0LnNldEluaXRpYXRvcigqdGhpcyk7CiAgICAgICAgIG1fY2FjaGVkRm9udCA9
IGNhY2hlZFJlc291cmNlTG9hZGVyLnJlcXVlc3RGb250KFdURk1vdmUocmVxdWVzdCksIGlzU1ZH
Rm9udFRhcmdldCgqdGhpcykpOwogICAgICAgICBpZiAobV9jYWNoZWRGb250KSB7CiAgICAgICAg
ICAgICBtX2NhY2hlZEZvbnQtPmFkZENsaWVudCgqdGhpcyk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9zdmcvU1ZHVXNlRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVXNl
RWxlbWVudC5jcHAKaW5kZXggOGY1MDA5OTJmNTVlYjI2NTYxYTU4ZmJjMTU5YjYyMzEyN2IxNTg2
Ny4uZTZiNGVmNjk3M2YzNjJhYjhkZmY1NmU5MzA5MWRiOWRmZDhmMjE5MiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvc3ZnL1NWR1VzZUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3N2Zy9TVkdVc2VFbGVtZW50LmNwcApAQCAtNTcyLDcgKzU3Miw3IEBAIHZvaWQgU1ZHVXNlRWxl
bWVudDo6dXBkYXRlRXh0ZXJuYWxEb2N1bWVudCgpCiAgICAgICAgIG9wdGlvbnMuY29udGVudFNl
Y3VyaXR5UG9saWN5SW1wb3NpdGlvbiA9IGlzSW5Vc2VyQWdlbnRTaGFkb3dUcmVlKCkgPyBDb250
ZW50U2VjdXJpdHlQb2xpY3lJbXBvc2l0aW9uOjpTa2lwUG9saWN5Q2hlY2sgOiBDb250ZW50U2Vj
dXJpdHlQb2xpY3lJbXBvc2l0aW9uOjpEb1BvbGljeUNoZWNrOwogICAgICAgICBvcHRpb25zLm1v
ZGUgPSBGZXRjaE9wdGlvbnM6Ok1vZGU6OlNhbWVPcmlnaW47CiAgICAgICAgIENhY2hlZFJlc291
cmNlUmVxdWVzdCByZXF1ZXN0IHsgUmVzb3VyY2VSZXF1ZXN0IHsgZXh0ZXJuYWxEb2N1bWVudFVS
TCB9LCBvcHRpb25zIH07Ci0gICAgICAgIHJlcXVlc3Quc2V0SW5pdGlhdG9yKHRoaXMpOworICAg
ICAgICByZXF1ZXN0LnNldEluaXRpYXRvcigqdGhpcyk7CiAgICAgICAgIG1fZXh0ZXJuYWxEb2N1
bWVudCA9IGRvY3VtZW50KCkuY2FjaGVkUmVzb3VyY2VMb2FkZXIoKS5yZXF1ZXN0U1ZHRG9jdW1l
bnQoV1RGTW92ZShyZXF1ZXN0KSk7CiAgICAgICAgIGlmIChtX2V4dGVybmFsRG9jdW1lbnQpCiAg
ICAgICAgICAgICBtX2V4dGVybmFsRG9jdW1lbnQtPmFkZENsaWVudCgqdGhpcyk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L2lvcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnRJT1Mu
aCBiL1NvdXJjZS9XZWJLaXQvaW9zL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudElPUy5o
CmluZGV4IDYzZjQzMDRhMDM2MmU1MzM1MWM5NmQwZDdlZDA3ZDkxYjBhMDZmOTQuLjZjZDcwM2Q4
NzNiZDg2NTk4MDAzZTMxM2UyZTRkODJkZGI4NjA3ODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvaW9zL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudElPUy5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvaW9zL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudElPUy5oCkBAIC0xLDUgKzEs
NSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCwgMjAwOSBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxNyBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTI0LDcz
ICsyNCw3NyBAQAogICovCiAKICNpZiBQTEFURk9STShJT1MpCisKICNpbXBvcnQgIldlYkNocm9t
ZUNsaWVudC5oIgogCi1jbGFzcyBXZWJDaHJvbWVDbGllbnRJT1MgOiBwdWJsaWMgV2ViQ2hyb21l
Q2xpZW50IHsKK2NsYXNzIFdlYkNocm9tZUNsaWVudElPUyBmaW5hbCA6IHB1YmxpYyBXZWJDaHJv
bWVDbGllbnQgewogcHVibGljOgotICAgIFdlYkNocm9tZUNsaWVudElPUyhXZWJWaWV3ICp3ZWJW
aWV3KQorICAgIFdlYkNocm9tZUNsaWVudElPUyhXZWJWaWV3KiB3ZWJWaWV3KQogICAgICAgICA6
IFdlYkNocm9tZUNsaWVudCh3ZWJWaWV3KQotICAgICAgICAsIG1fZm9ybU5vdGlmaWNhdGlvblN1
cHByZXNzaW9ucygwKSB7IH0KLSAgICAKLSAgICB2b2lkIHNldFdpbmRvd1JlY3QoY29uc3QgV2Vi
Q29yZTo6RmxvYXRSZWN0Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6RmxvYXRSZWN0IHdpbmRv
d1JlY3QoKSBvdmVycmlkZTsKLSAgICB2b2lkIHNldFN0YXR1c2JhclRleHQoY29uc3QgV1RGOjpT
dHJpbmcmKSBvdmVycmlkZSB7IH0KKyAgICB7CisgICAgfQorCitwcml2YXRlOgorICAgIHZvaWQg
c2V0V2luZG93UmVjdChjb25zdCBXZWJDb3JlOjpGbG9hdFJlY3QmKSBmaW5hbDsKKyAgICBXZWJD
b3JlOjpGbG9hdFJlY3Qgd2luZG93UmVjdCgpIGZpbmFsOworICAgIHZvaWQgc2V0U3RhdHVzYmFy
VGV4dChjb25zdCBXVEY6OlN0cmluZyYpIGZpbmFsIHsgfQogCi0gICAgdm9pZCBmb2N1cygpIG92
ZXJyaWRlOwotICAgIHZvaWQgdGFrZUZvY3VzKFdlYkNvcmU6OkZvY3VzRGlyZWN0aW9uKSBvdmVy
cmlkZSB7IH0KKyAgICB2b2lkIGZvY3VzKCkgZmluYWw7CisgICAgdm9pZCB0YWtlRm9jdXMoV2Vi
Q29yZTo6Rm9jdXNEaXJlY3Rpb24pIGZpbmFsIHsgfQogCi0gICAgdm9pZCBydW5KYXZhU2NyaXB0
QWxlcnQoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXVEY6OlN0cmluZyYpIG92ZXJyaWRlOwotICAg
IGJvb2wgcnVuSmF2YVNjcmlwdENvbmZpcm0oV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXVEY6OlN0
cmluZyYpIG92ZXJyaWRlOwotICAgIGJvb2wgcnVuSmF2YVNjcmlwdFByb21wdChXZWJDb3JlOjpG
cmFtZSosIGNvbnN0IFdURjo6U3RyaW5nJiBtZXNzYWdlLCBjb25zdCBXVEY6OlN0cmluZyYgZGVm
YXVsdFZhbHVlLCBXVEY6OlN0cmluZyYgcmVzdWx0KSBvdmVycmlkZTsKKyAgICB2b2lkIHJ1bkph
dmFTY3JpcHRBbGVydChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdURjo6U3RyaW5nJikgZmluYWw7
CisgICAgYm9vbCBydW5KYXZhU2NyaXB0Q29uZmlybShXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdU
Rjo6U3RyaW5nJikgZmluYWw7CisgICAgYm9vbCBydW5KYXZhU2NyaXB0UHJvbXB0KFdlYkNvcmU6
OkZyYW1lKiwgY29uc3QgV1RGOjpTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFdURjo6U3RyaW5nJiBk
ZWZhdWx0VmFsdWUsIFdURjo6U3RyaW5nJiByZXN1bHQpIGZpbmFsOwogCi0gICAgdm9pZCBydW5P
cGVuUGFuZWwoV2ViQ29yZTo6RnJhbWUqLCBQYXNzUmVmUHRyPFdlYkNvcmU6OkZpbGVDaG9vc2Vy
Pikgb3ZlcnJpZGU7CisgICAgdm9pZCBydW5PcGVuUGFuZWwoV2ViQ29yZTo6RnJhbWUmLCBXZWJD
b3JlOjpGaWxlQ2hvb3NlciYpIGZpbmFsOwogCiAjaWYgRU5BQkxFKFRPVUNIX0VWRU5UUykKLSAg
ICB2b2lkIGRpZFByZXZlbnREZWZhdWx0Rm9yRXZlbnQoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRp
ZFByZXZlbnREZWZhdWx0Rm9yRXZlbnQoKSBmaW5hbDsKICNlbmRpZgotICAgIHZvaWQgZGlkUmVj
ZWl2ZU1vYmlsZURvY1R5cGUoYm9vbCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXROZWVkc1Njcm9s
bE5vdGlmaWNhdGlvbnMoV2ViQ29yZTo6RnJhbWUqLCBib29sKSBvdmVycmlkZTsKLSAgICB2b2lk
IG9ic2VydmVkQ29udGVudENoYW5nZShXZWJDb3JlOjpGcmFtZSopIG92ZXJyaWRlOwotICAgIHZv
aWQgY2xlYXJDb250ZW50Q2hhbmdlT2JzZXJ2ZXJzKFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7
Ci0gICAgV2ViQ29yZTo6RmxvYXRTaXplIHNjcmVlblNpemUoKSBjb25zdCBvdmVycmlkZTsKLSAg
ICBXZWJDb3JlOjpGbG9hdFNpemUgYXZhaWxhYmxlU2NyZWVuU2l6ZSgpIGNvbnN0IG92ZXJyaWRl
OwotICAgIHZvaWQgZGlzcGF0Y2hWaWV3cG9ydFByb3BlcnRpZXNEaWRDaGFuZ2UoY29uc3QgV2Vi
Q29yZTo6Vmlld3BvcnRBcmd1bWVudHMmKSBjb25zdCBvdmVycmlkZTsKLSAgICB2b2lkIG5vdGlm
eVJldmVhbGVkU2VsZWN0aW9uQnlTY3JvbGxpbmdGcmFtZShXZWJDb3JlOjpGcmFtZSopIG92ZXJy
aWRlOwotICAgIGJvb2wgaXNTdG9wcGluZygpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkTGF5b3V0
KExheW91dFR5cGUpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkU3RhcnRPdmVyZmxvd1Njcm9sbCgp
IG92ZXJyaWRlOwotICAgIHZvaWQgZGlkRW5kT3ZlcmZsb3dTY3JvbGwoKSBvdmVycmlkZTsKLQot
ICAgIHZvaWQgc3VwcHJlc3NGb3JtTm90aWZpY2F0aW9ucygpIG92ZXJyaWRlOwotICAgIHZvaWQg
cmVzdG9yZUZvcm1Ob3RpZmljYXRpb25zKCkgb3ZlcnJpZGU7CisKKyAgICB2b2lkIGRpZFJlY2Vp
dmVNb2JpbGVEb2NUeXBlKGJvb2wpIGZpbmFsOworICAgIHZvaWQgc2V0TmVlZHNTY3JvbGxOb3Rp
ZmljYXRpb25zKFdlYkNvcmU6OkZyYW1lKiwgYm9vbCkgZmluYWw7CisgICAgdm9pZCBvYnNlcnZl
ZENvbnRlbnRDaGFuZ2UoV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKKyAgICB2b2lkIGNsZWFyQ29u
dGVudENoYW5nZU9ic2VydmVycyhXZWJDb3JlOjpGcmFtZSopIGZpbmFsOworICAgIFdlYkNvcmU6
OkZsb2F0U2l6ZSBzY3JlZW5TaXplKCkgY29uc3QgZmluYWw7CisgICAgV2ViQ29yZTo6RmxvYXRT
aXplIGF2YWlsYWJsZVNjcmVlblNpemUoKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNo
Vmlld3BvcnRQcm9wZXJ0aWVzRGlkQ2hhbmdlKGNvbnN0IFdlYkNvcmU6OlZpZXdwb3J0QXJndW1l
bnRzJikgY29uc3QgZmluYWw7CisgICAgdm9pZCBub3RpZnlSZXZlYWxlZFNlbGVjdGlvbkJ5U2Ny
b2xsaW5nRnJhbWUoV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKKyAgICBib29sIGlzU3RvcHBpbmco
KSBmaW5hbDsKKyAgICB2b2lkIGRpZExheW91dChMYXlvdXRUeXBlKSBmaW5hbDsKKyAgICB2b2lk
IGRpZFN0YXJ0T3ZlcmZsb3dTY3JvbGwoKSBmaW5hbDsKKyAgICB2b2lkIGRpZEVuZE92ZXJmbG93
U2Nyb2xsKCkgZmluYWw7CisKKyAgICB2b2lkIHN1cHByZXNzRm9ybU5vdGlmaWNhdGlvbnMoKSBm
aW5hbDsKKyAgICB2b2lkIHJlc3RvcmVGb3JtTm90aWZpY2F0aW9ucygpIGZpbmFsOwogICAgIAot
ICAgIHZvaWQgZWxlbWVudERpZEZvY3VzKGNvbnN0IFdlYkNvcmU6Ok5vZGUqKSBvdmVycmlkZTsK
LSAgICB2b2lkIGVsZW1lbnREaWRCbHVyKGNvbnN0IFdlYkNvcmU6Ok5vZGUqKSBvdmVycmlkZTsK
KyAgICB2b2lkIGVsZW1lbnREaWRGb2N1cyhjb25zdCBXZWJDb3JlOjpOb2RlKikgZmluYWw7Cisg
ICAgdm9pZCBlbGVtZW50RGlkQmx1cihjb25zdCBXZWJDb3JlOjpOb2RlKikgZmluYWw7CiAKLSAg
ICB2b2lkIGF0dGFjaFJvb3RHcmFwaGljc0xheWVyKFdlYkNvcmU6OkZyYW1lKiwgV2ViQ29yZTo6
R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOworICAgIHZvaWQgYXR0YWNoUm9vdEdyYXBoaWNzTGF5
ZXIoV2ViQ29yZTo6RnJhbWUqLCBXZWJDb3JlOjpHcmFwaGljc0xheWVyKikgZmluYWw7CiAKLSAg
ICB2b2lkIGRpZEZsdXNoQ29tcG9zaXRpbmdMYXllcnMoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRp
ZEZsdXNoQ29tcG9zaXRpbmdMYXllcnMoKSBmaW5hbDsKIAotICAgIHZvaWQgdXBkYXRlVmlld3Bv
cnRDb25zdHJhaW5lZExheWVycyhIYXNoTWFwPFBsYXRmb3JtTGF5ZXIqLCBzdGQ6OnVuaXF1ZV9w
dHI8V2ViQ29yZTo6Vmlld3BvcnRDb25zdHJhaW50cz4+JiwgSGFzaE1hcDxQbGF0Zm9ybUxheWVy
KiwgUGxhdGZvcm1MYXllcio+Jikgb3ZlcnJpZGU7CisgICAgdm9pZCB1cGRhdGVWaWV3cG9ydENv
bnN0cmFpbmVkTGF5ZXJzKEhhc2hNYXA8UGxhdGZvcm1MYXllciosIHN0ZDo6dW5pcXVlX3B0cjxX
ZWJDb3JlOjpWaWV3cG9ydENvbnN0cmFpbnRzPj4mLCBIYXNoTWFwPFBsYXRmb3JtTGF5ZXIqLCBQ
bGF0Zm9ybUxheWVyKj4mKSBmaW5hbDsKIAotICAgIGJvb2wgZmV0Y2hDdXN0b21GaXhlZFBvc2l0
aW9uTGF5b3V0UmVjdChXZWJDb3JlOjpJbnRSZWN0Jikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBhZGRP
clVwZGF0ZVNjcm9sbGluZ0xheWVyKFdlYkNvcmU6Ok5vZGUqLCBQbGF0Zm9ybUxheWVyKiwgUGxh
dGZvcm1MYXllciosIGNvbnN0IFdlYkNvcmU6OkludFNpemUmLCBib29sIGFsbG93SG9yaXpvbnRh
bFNjcm9sbGJhciwgYm9vbCBhbGxvd1ZlcnRpY2FsU2Nyb2xsYmFyKSBvdmVycmlkZTsKLSAgICB2
b2lkIHJlbW92ZVNjcm9sbGluZ0xheWVyKFdlYkNvcmU6Ok5vZGUqLCBQbGF0Zm9ybUxheWVyKiwg
UGxhdGZvcm1MYXllciopIG92ZXJyaWRlOworICAgIGJvb2wgZmV0Y2hDdXN0b21GaXhlZFBvc2l0
aW9uTGF5b3V0UmVjdChXZWJDb3JlOjpJbnRSZWN0JikgZmluYWw7CisgICAgdm9pZCBhZGRPclVw
ZGF0ZVNjcm9sbGluZ0xheWVyKFdlYkNvcmU6Ok5vZGUqLCBQbGF0Zm9ybUxheWVyKiwgUGxhdGZv
cm1MYXllciosIGNvbnN0IFdlYkNvcmU6OkludFNpemUmLCBib29sIGFsbG93SG9yaXpvbnRhbFNj
cm9sbGJhciwgYm9vbCBhbGxvd1ZlcnRpY2FsU2Nyb2xsYmFyKSBmaW5hbDsKKyAgICB2b2lkIHJl
bW92ZVNjcm9sbGluZ0xheWVyKFdlYkNvcmU6Ok5vZGUqLCBQbGF0Zm9ybUxheWVyKiwgUGxhdGZv
cm1MYXllciopIGZpbmFsOwogCi0gICAgYm9vbCBzZWxlY3RJdGVtV3JpdGluZ0RpcmVjdGlvbklz
TmF0dXJhbCgpIG92ZXJyaWRlOwotICAgIGJvb2wgc2VsZWN0SXRlbUFsaWdubWVudEZvbGxvd3NN
ZW51V3JpdGluZ0RpcmVjdGlvbigpIG92ZXJyaWRlOwotICAgIFJlZlB0cjxXZWJDb3JlOjpQb3B1
cE1lbnU+IGNyZWF0ZVBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1lbnVDbGllbnQqKSBjb25zdCBv
dmVycmlkZTsKLSAgICBSZWZQdHI8V2ViQ29yZTo6U2VhcmNoUG9wdXBNZW51PiBjcmVhdGVTZWFy
Y2hQb3B1cE1lbnUoV2ViQ29yZTo6UG9wdXBNZW51Q2xpZW50KikgY29uc3Qgb3ZlcnJpZGU7Cisg
ICAgYm9vbCBzZWxlY3RJdGVtV3JpdGluZ0RpcmVjdGlvbklzTmF0dXJhbCgpIGZpbmFsOworICAg
IGJvb2wgc2VsZWN0SXRlbUFsaWdubWVudEZvbGxvd3NNZW51V3JpdGluZ0RpcmVjdGlvbigpIGZp
bmFsOworICAgIFJlZlB0cjxXZWJDb3JlOjpQb3B1cE1lbnU+IGNyZWF0ZVBvcHVwTWVudShXZWJD
b3JlOjpQb3B1cE1lbnVDbGllbnQqKSBjb25zdCBmaW5hbDsKKyAgICBSZWZQdHI8V2ViQ29yZTo6
U2VhcmNoUG9wdXBNZW51PiBjcmVhdGVTZWFyY2hQb3B1cE1lbnUoV2ViQ29yZTo6UG9wdXBNZW51
Q2xpZW50KikgY29uc3QgZmluYWw7CiAKLSAgICB2b2lkIHdlYkFwcE9yaWVudGF0aW9uc1VwZGF0
ZWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGZvY3VzZWRFbGVtZW50Q2hhbmdlZChXZWJDb3JlOjpF
bGVtZW50Kikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzaG93UGxheWJhY2tUYXJnZXRQaWNrZXIoYm9v
bCBoYXNWaWRlbykgb3ZlcnJpZGU7CisgICAgdm9pZCB3ZWJBcHBPcmllbnRhdGlvbnNVcGRhdGVk
KCkgZmluYWw7CisgICAgdm9pZCBmb2N1c2VkRWxlbWVudENoYW5nZWQoV2ViQ29yZTo6RWxlbWVu
dCopIGZpbmFsOworICAgIHZvaWQgc2hvd1BsYXliYWNrVGFyZ2V0UGlja2VyKGJvb2wgaGFzVmlk
ZW8pIGZpbmFsOwogCiAjaWYgRU5BQkxFKE9SSUVOVEFUSU9OX0VWRU5UUykKLSAgICBpbnQgZGV2
aWNlT3JpZW50YXRpb24oKSBjb25zdCBvdmVycmlkZTsKKyAgICBpbnQgZGV2aWNlT3JpZW50YXRp
b24oKSBjb25zdCBmaW5hbDsKICNlbmRpZgogCi1wcml2YXRlOgotICAgIGludCBtX2Zvcm1Ob3Rp
ZmljYXRpb25TdXBwcmVzc2lvbnM7CisgICAgaW50IG1fZm9ybU5vdGlmaWNhdGlvblN1cHByZXNz
aW9ucyB7IDAgfTsKIH07CisKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9pb3Mv
V2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50SU9TLm1tIGIvU291cmNlL1dlYktpdC9pb3Mv
V2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50SU9TLm1tCmluZGV4IDExZjg0ZWI5ZjkzZDdk
ZjFjODJlYjg0MjUyNDRhNmFjMWQ4MmMwZWMuLjUzZThmMGViYmU1Mjg0MzJhMGY5ZTRiZTRjZmNk
NDIzZmQ3M2UwMzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvaW9zL1dlYkNvcmVTdXBwb3J0
L1dlYkNocm9tZUNsaWVudElPUy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L2lvcy9XZWJDb3JlU3Vw
cG9ydC9XZWJDaHJvbWVDbGllbnRJT1MubW0KQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJp
Z2h0IChDKSAyMDA4LCAyMDA5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENv
cHlyaWdodCAoQykgMjAwOC0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAq
CiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMjMsOSArMjMsMTAgQEAKICAqIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWYgUExBVEZPUk0oSU9TKQogI2lt
cG9ydCAiV2ViQ2hyb21lQ2xpZW50SU9TLmgiCiAKKyNpZiBQTEFURk9STShJT1MpCisKICNpbXBv
cnQgIkRPTU5vZGVJbnRlcm5hbC5oIgogI2ltcG9ydCAiUG9wdXBNZW51SU9TLmgiCiAjaW1wb3J0
ICJTZWFyY2hQb3B1cE1lbnVJT1MuaCIKQEAgLTQzLDkgKzQ0LDYgQEAKICNpbXBvcnQgIldlYlZp
ZXcuaCIKICNpbXBvcnQgIldlYlZpZXdJbnRlcm5hbC5oIgogI2ltcG9ydCAiV2ViVmlld1ByaXZh
dGUuaCIKLQotI2ltcG9ydCA8d3RmL0hhc2hNYXAuaD4KLSNpbXBvcnQgPHd0Zi9SZWZQdHIuaD4K
ICNpbXBvcnQgPFdlYkNvcmUvRmlsZUNob29zZXIuaD4KICNpbXBvcnQgPFdlYkNvcmUvRmxvYXRS
ZWN0Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL0ZyYW1lLmg+CkBAIC02MSw2ICs1OSw4IEBACiAjaW1w
b3J0IDxXZWJDb3JlL1Njcm9sbGluZ0NvbnN0cmFpbnRzLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dB
S1dpbmRvdy5oPgogI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlVGhyZWFkTWVzc2FnZS5oPgorI2lt
cG9ydCA8d3RmL0hhc2hNYXAuaD4KKyNpbXBvcnQgPHd0Zi9SZWZQdHIuaD4KIAogTlNTdHJpbmcg
KiBjb25zdCBXZWJPcGVuUGFuZWxDb25maWd1cmF0aW9uQWxsb3dNdWx0aXBsZUZpbGVzS2V5ID0g
QCJXZWJPcGVuUGFuZWxDb25maWd1cmF0aW9uQWxsb3dNdWx0aXBsZUZpbGVzS2V5IjsKIE5TU3Ry
aW5nICogY29uc3QgV2ViT3BlblBhbmVsQ29uZmlndXJhdGlvbk1lZGlhQ2FwdHVyZVR5cGVLZXkg
PSBAIldlYk9wZW5QYW5lbENvbmZpZ3VyYXRpb25NZWRpYUNhcHR1cmVUeXBlS2V5IjsKQEAgLTY5
LDkgKzY5LDEwIEBAIE5TU3RyaW5nICogY29uc3QgV2ViT3BlblBhbmVsQ29uZmlndXJhdGlvbk1p
bWVUeXBlc0tleSA9IEAiV2ViT3BlblBhbmVsQ29uZmlndXJhCiB1c2luZyBuYW1lc3BhY2UgV2Vi
Q29yZTsKIAogI2lmIEVOQUJMRShNRURJQV9DQVBUVVJFKQotc3RhdGljIFdlYk1lZGlhQ2FwdHVy
ZVR5cGUgd2ViTWVkaWFDYXB0dXJlVHlwZShNZWRpYUNhcHR1cmVUeXBlIG1lZGlhQ2FwdHVyZVR5
cGUpCisKK3N0YXRpYyBXZWJNZWRpYUNhcHR1cmVUeXBlIHdlYk1lZGlhQ2FwdHVyZVR5cGUoTWVk
aWFDYXB0dXJlVHlwZSB0eXBlKQogewotICAgIHN3aXRjaCAobWVkaWFDYXB0dXJlVHlwZSkgewor
ICAgIHN3aXRjaCAodHlwZSkgewogICAgIGNhc2UgTWVkaWFDYXB0dXJlVHlwZU5vbmU6CiAgICAg
ICAgIHJldHVybiBXZWJNZWRpYUNhcHR1cmVUeXBlTm9uZTsKICAgICBjYXNlIE1lZGlhQ2FwdHVy
ZVR5cGVVc2VyOgpAQCAtODMsNiArODQsNyBAQCBzdGF0aWMgV2ViTWVkaWFDYXB0dXJlVHlwZSB3
ZWJNZWRpYUNhcHR1cmVUeXBlKE1lZGlhQ2FwdHVyZVR5cGUgbWVkaWFDYXB0dXJlVHlwZQogICAg
IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIHJldHVybiBXZWJNZWRpYUNhcHR1cmVUeXBlTm9u
ZTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50SU9TOjpzZXRXaW5kb3dSZWN0
KGNvbnN0IFdlYkNvcmU6OkZsb2F0UmVjdCYgcikKQEAgLTEyNCwxOCArMTI2LDE1IEBAIGJvb2wg
V2ViQ2hyb21lQ2xpZW50SU9TOjpydW5KYXZhU2NyaXB0UHJvbXB0KEZyYW1lKiBmcmFtZSwgY29u
c3QgV1RGOjpTdHJpbmcmIHByCiAgICAgcmV0dXJuICFyZXN1bHQuaXNOdWxsKCk7CiB9CiAKLXZv
aWQgV2ViQ2hyb21lQ2xpZW50SU9TOjpydW5PcGVuUGFuZWwoRnJhbWUqLCBQYXNzUmVmUHRyPEZp
bGVDaG9vc2VyPiBjaG9vc2VyKQordm9pZCBXZWJDaHJvbWVDbGllbnRJT1M6OnJ1bk9wZW5QYW5l
bChGcmFtZSYsIEZpbGVDaG9vc2VyJiBjaG9vc2VyKQogewotICAgIGNvbnN0IEZpbGVDaG9vc2Vy
U2V0dGluZ3MmIHNldHRpbmdzID0gY2hvb3Nlci0+c2V0dGluZ3MoKTsKKyAgICBhdXRvJiBzZXR0
aW5ncyA9IGNob29zZXIuc2V0dGluZ3MoKTsKICAgICBCT09MIGFsbG93TXVsdGlwbGVGaWxlcyA9
IHNldHRpbmdzLmFsbG93c011bHRpcGxlRmlsZXM7Ci0gICAgVmVjdG9yPFN0cmluZz4gYWNjZXB0
TUlNRVR5cGVzID0gc2V0dGluZ3MuYWNjZXB0TUlNRVR5cGVzOwogICAgIFdlYk9wZW5QYW5lbFJl
c3VsdExpc3RlbmVyICpsaXN0ZW5lciA9IFtbV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIgYWxs
b2NdIGluaXRXaXRoQ2hvb3NlcjpjaG9vc2VyXTsKIAotICAgIC8vIENvbnZlcnQgdGhlIGFjY2Vw
dCBhdHRyaWJ1dGUgc3RyaW5nIGludG8gYSBsaXN0IG9mIE1JTUUgdHlwZXMuCi0gICAgc2l6ZV90
IG51bU1JTUVUeXBlcyA9IGFjY2VwdE1JTUVUeXBlcy5zaXplKCk7Ci0gICAgTlNNdXRhYmxlQXJy
YXkgKm1pbWVUeXBlcyA9IFtOU011dGFibGVBcnJheSBhcnJheVdpdGhDYXBhY2l0eTpudW1NSU1F
VHlwZXNdOwotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbnVtTUlNRVR5cGVzOyArK2kpCi0g
ICAgICAgIFttaW1lVHlwZXMgYWRkT2JqZWN0OmFjY2VwdE1JTUVUeXBlc1tpXV07CisgICAgTlNN
dXRhYmxlQXJyYXkgKm1pbWVUeXBlcyA9IFtOU011dGFibGVBcnJheSBhcnJheVdpdGhDYXBhY2l0
eTpzZXR0aW5ncy5hY2NlcHRNSU1FVHlwZXMuc2l6ZSgpXTsKKyAgICBmb3IgKGF1dG8mIHR5cGUg
OiBzZXR0aW5ncy5hY2NlcHRNSU1FVHlwZXMpCisgICAgICAgIFttaW1lVHlwZXMgYWRkT2JqZWN0
OnR5cGVdOwogCiAgICAgV2ViTWVkaWFDYXB0dXJlVHlwZSBjYXB0dXJlVHlwZSA9IFdlYk1lZGlh
Q2FwdHVyZVR5cGVOb25lOwogI2lmIEVOQUJMRShNRURJQV9DQVBUVVJFKQpAQCAtMTU4LDEwICsx
NTcsMTIgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnRJT1M6OnJ1bk9wZW5QYW5lbChGcmFtZSosIFBh
c3NSZWZQdHI8RmlsZUNob29zZXI+IGNob29zZXIpCiB9CiAKICNpZiBFTkFCTEUoSU9TX1RPVUNI
X0VWRU5UUykKKwogdm9pZCBXZWJDaHJvbWVDbGllbnRJT1M6OmRpZFByZXZlbnREZWZhdWx0Rm9y
RXZlbnQoKQogewogICAgIFtbd2ViVmlldygpIF9VSUtpdERlbGVnYXRlRm9yd2FyZGVyXSB3ZWJW
aWV3RGlkUHJldmVudERlZmF1bHRGb3JFdmVudDp3ZWJWaWV3KCldOwogfQorCiAjZW5kaWYKIAog
dm9pZCBXZWJDaHJvbWVDbGllbnRJT1M6OmRpZFJlY2VpdmVNb2JpbGVEb2NUeXBlKGJvb2wgaXNN
b2JpbGVEb2N0eXBlKQpAQCAtMzU1LDEwICszNTYsMTIgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnRJ
T1M6OnNob3dQbGF5YmFja1RhcmdldFBpY2tlcihib29sIGhhc1ZpZGVvKQogfQogCiAjaWYgRU5B
QkxFKE9SSUVOVEFUSU9OX0VWRU5UUykKKwogaW50IFdlYkNocm9tZUNsaWVudElPUzo6ZGV2aWNl
T3JpZW50YXRpb24oKSBjb25zdAogewogICAgIHJldHVybiBbW3dlYlZpZXcoKSBfVUlLaXREZWxl
Z2F0ZUZvcndhcmRlcl0gZGV2aWNlT3JpZW50YXRpb25dOwogfQorCiAjZW5kaWYKIAogI2VuZGlm
IC8vIFBMQVRGT1JNKElPUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVT
dXBwb3J0L1dlYkNocm9tZUNsaWVudC5oIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBv
cnQvV2ViQ2hyb21lQ2xpZW50LmgKaW5kZXggNDhhYmUzMDhhOGZlZjc1YWY4Njg2ZTFlNTNhODNj
ODcyMWY4MjdmOS4uZjRmMDk2YzVkNjQ3M2ViYzZlN2FiZDU4M2I2ZGZlZjRhYWE0ZDE1OSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50
LmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50
LmgKQEAgLTMzLDEzMCArMzMsMTM4IEBACiAKIEBjbGFzcyBXZWJWaWV3OwogCisvLyBGSVhNRTog
VGhpcyBjbGFzcyBpcyB1c2VkIGFzIGEgY29uY3JldGUgY2xhc3Mgb24gTWFjLCBidXQgb24gaU9T
IHRoaXMgaXMgYW4gYWJzdHJhY3QKKy8vIGJhc2UgY2xhc3Mgb2YgdGhlIGNvbmNyZXRlIGNsYXNz
LCBXZWJDaHJvbWVDbGllbnRJT1MuIEJlY2F1c2Ugb2YgdGhhdCwgdGhpcyBjbGFzcyBhbmQKKy8v
IG1hbnkgb2YgaXRzIGZ1bmN0aW9ucyBhcmUgbm90IG1hcmtlZCBmaW5hbC4gVGhhdCBpcyBtZXNz
eSB3YXkgdG8gb3JnYW5pemUgdGhpbmdzLgogY2xhc3MgV2ViQ2hyb21lQ2xpZW50IDogcHVibGlj
IFdlYkNvcmU6OkNocm9tZUNsaWVudCB7CiBwdWJsaWM6CiAgICAgV2ViQ2hyb21lQ2xpZW50KFdl
YlZpZXcqKTsKLSAgICAKLSAgICB2b2lkIGNocm9tZURlc3Ryb3llZCgpIG92ZXJyaWRlOwotICAg
IAorCisgICAgV2ViVmlldyogd2ViVmlldygpIGNvbnN0IHsgcmV0dXJuIG1fd2ViVmlldzsgfQor
Citwcml2YXRlOgorICAgIHZvaWQgY2hyb21lRGVzdHJveWVkKCkgZmluYWw7CisKICAgICB2b2lk
IHNldFdpbmRvd1JlY3QoY29uc3QgV2ViQ29yZTo6RmxvYXRSZWN0Jikgb3ZlcnJpZGU7CiAgICAg
V2ViQ29yZTo6RmxvYXRSZWN0IHdpbmRvd1JlY3QoKSBvdmVycmlkZTsKIAotICAgIFdlYkNvcmU6
OkZsb2F0UmVjdCBwYWdlUmVjdCgpIG92ZXJyaWRlOworICAgIFdlYkNvcmU6OkZsb2F0UmVjdCBw
YWdlUmVjdCgpIGZpbmFsOwogCiAgICAgdm9pZCBmb2N1cygpIG92ZXJyaWRlOwotICAgIHZvaWQg
dW5mb2N1cygpIG92ZXJyaWRlOwotICAgIAotICAgIGJvb2wgY2FuVGFrZUZvY3VzKFdlYkNvcmU6
OkZvY3VzRGlyZWN0aW9uKSBvdmVycmlkZTsKKyAgICB2b2lkIHVuZm9jdXMoKSBmaW5hbDsKKwor
ICAgIGJvb2wgY2FuVGFrZUZvY3VzKFdlYkNvcmU6OkZvY3VzRGlyZWN0aW9uKSBmaW5hbDsKICAg
ICB2b2lkIHRha2VGb2N1cyhXZWJDb3JlOjpGb2N1c0RpcmVjdGlvbikgb3ZlcnJpZGU7CiAKICAg
ICB2b2lkIGZvY3VzZWRFbGVtZW50Q2hhbmdlZChXZWJDb3JlOjpFbGVtZW50Kikgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBmb2N1c2VkRnJhbWVDaGFuZ2VkKFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7
Ci0KLSAgICBXZWJDb3JlOjpQYWdlKiBjcmVhdGVXaW5kb3coV2ViQ29yZTo6RnJhbWUqLCBjb25z
dCBXZWJDb3JlOjpGcmFtZUxvYWRSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6V2luZG93RmVhdHVy
ZXMmLCBjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJikgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBzaG93KCkgb3ZlcnJpZGU7Ci0KLSAgICBib29sIGNhblJ1bk1vZGFsKCkgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBydW5Nb2RhbCgpIG92ZXJyaWRlOwotCi0gICAgdm9pZCBzZXRUb29sYmFyc1Zpc2li
bGUoYm9vbCkgb3ZlcnJpZGU7Ci0gICAgYm9vbCB0b29sYmFyc1Zpc2libGUoKSBvdmVycmlkZTsK
LSAgICAKLSAgICB2b2lkIHNldFN0YXR1c2JhclZpc2libGUoYm9vbCkgb3ZlcnJpZGU7Ci0gICAg
Ym9vbCBzdGF0dXNiYXJWaXNpYmxlKCkgb3ZlcnJpZGU7Ci0gICAgCi0gICAgdm9pZCBzZXRTY3Jv
bGxiYXJzVmlzaWJsZShib29sKSBvdmVycmlkZTsKLSAgICBib29sIHNjcm9sbGJhcnNWaXNpYmxl
KCkgb3ZlcnJpZGU7Ci0gICAgCi0gICAgdm9pZCBzZXRNZW51YmFyVmlzaWJsZShib29sKSBvdmVy
cmlkZTsKLSAgICBib29sIG1lbnViYXJWaXNpYmxlKCkgb3ZlcnJpZGU7Ci0gICAgCi0gICAgdm9p
ZCBzZXRSZXNpemFibGUoYm9vbCkgb3ZlcnJpZGU7Ci0gICAgCi0gICAgdm9pZCBhZGRNZXNzYWdl
VG9Db25zb2xlKEpTQzo6TWVzc2FnZVNvdXJjZSwgSlNDOjpNZXNzYWdlTGV2ZWwsIGNvbnN0IFdU
Rjo6U3RyaW5nJiBtZXNzYWdlLCB1bnNpZ25lZCBsaW5lTnVtYmVyLCB1bnNpZ25lZCBjb2x1bW5O
dW1iZXIsIGNvbnN0IFdURjo6U3RyaW5nJiBzb3VyY2VVUkwpIG92ZXJyaWRlOwotCi0gICAgYm9v
bCBjYW5SdW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoKSBvdmVycmlkZTsKLSAgICBib29sIHJ1
bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbChjb25zdCBXVEY6OlN0cmluZyYgbWVzc2FnZSwgV2Vi
Q29yZTo6RnJhbWUqKSBvdmVycmlkZTsKLQotICAgIHZvaWQgY2xvc2VXaW5kb3dTb29uKCkgb3Zl
cnJpZGU7CisgICAgdm9pZCBmb2N1c2VkRnJhbWVDaGFuZ2VkKFdlYkNvcmU6OkZyYW1lKikgZmlu
YWw7CisKKyAgICBXZWJDb3JlOjpQYWdlKiBjcmVhdGVXaW5kb3coV2ViQ29yZTo6RnJhbWUqLCBj
b25zdCBXZWJDb3JlOjpGcmFtZUxvYWRSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6V2luZG93RmVh
dHVyZXMmLCBjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJikgZmluYWw7CisgICAgdm9p
ZCBzaG93KCkgZmluYWw7CisKKyAgICBib29sIGNhblJ1bk1vZGFsKCkgZmluYWw7CisgICAgdm9p
ZCBydW5Nb2RhbCgpIGZpbmFsOworCisgICAgdm9pZCBzZXRUb29sYmFyc1Zpc2libGUoYm9vbCkg
ZmluYWw7CisgICAgYm9vbCB0b29sYmFyc1Zpc2libGUoKSBmaW5hbDsKKworICAgIHZvaWQgc2V0
U3RhdHVzYmFyVmlzaWJsZShib29sKSBmaW5hbDsKKyAgICBib29sIHN0YXR1c2JhclZpc2libGUo
KSBmaW5hbDsKKworICAgIHZvaWQgc2V0U2Nyb2xsYmFyc1Zpc2libGUoYm9vbCkgZmluYWw7Cisg
ICAgYm9vbCBzY3JvbGxiYXJzVmlzaWJsZSgpIGZpbmFsOworCisgICAgdm9pZCBzZXRNZW51YmFy
VmlzaWJsZShib29sKSBmaW5hbDsKKyAgICBib29sIG1lbnViYXJWaXNpYmxlKCkgZmluYWw7CisK
KyAgICB2b2lkIHNldFJlc2l6YWJsZShib29sKSBmaW5hbDsKKworICAgIHZvaWQgYWRkTWVzc2Fn
ZVRvQ29uc29sZShKU0M6Ok1lc3NhZ2VTb3VyY2UsIEpTQzo6TWVzc2FnZUxldmVsLCBjb25zdCBX
VEY6OlN0cmluZyYgbWVzc2FnZSwgdW5zaWduZWQgbGluZU51bWJlciwgdW5zaWduZWQgY29sdW1u
TnVtYmVyLCBjb25zdCBXVEY6OlN0cmluZyYgc291cmNlVVJMKSBmaW5hbDsKKworICAgIGJvb2wg
Y2FuUnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsKCkgZmluYWw7CisgICAgYm9vbCBydW5CZWZv
cmVVbmxvYWRDb25maXJtUGFuZWwoY29uc3QgV1RGOjpTdHJpbmcmIG1lc3NhZ2UsIFdlYkNvcmU6
OkZyYW1lKikgZmluYWw7CisKKyAgICB2b2lkIGNsb3NlV2luZG93U29vbigpIGZpbmFsOwogCiAg
ICAgdm9pZCBydW5KYXZhU2NyaXB0QWxlcnQoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXVEY6OlN0
cmluZyYpIG92ZXJyaWRlOwogICAgIGJvb2wgcnVuSmF2YVNjcmlwdENvbmZpcm0oV2ViQ29yZTo6
RnJhbWUqLCBjb25zdCBXVEY6OlN0cmluZyYpIG92ZXJyaWRlOwogICAgIGJvb2wgcnVuSmF2YVNj
cmlwdFByb21wdChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdURjo6U3RyaW5nJiBtZXNzYWdlLCBj
b25zdCBXVEY6OlN0cmluZyYgZGVmYXVsdFZhbHVlLCBXVEY6OlN0cmluZyYgcmVzdWx0KSBvdmVy
cmlkZTsKIAotICAgIGJvb2wgc3VwcG9ydHNJbW1lZGlhdGVJbnZhbGlkYXRpb24oKSBvdmVycmlk
ZTsKLSAgICB2b2lkIGludmFsaWRhdGVSb290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jikg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBpbnZhbGlkYXRlQ29udGVudHNBbmRSb290Vmlldyhjb25zdCBX
ZWJDb3JlOjpJbnRSZWN0Jikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBpbnZhbGlkYXRlQ29udGVudHNG
b3JTbG93U2Nyb2xsKGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBvdmVycmlkZTsKLSAgICB2b2lk
IHNjcm9sbChjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBzY3JvbGxEZWx0YSwgY29uc3QgV2ViQ29y
ZTo6SW50UmVjdCYgcmVjdFRvU2Nyb2xsLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiBjbGlwUmVj
dCkgb3ZlcnJpZGU7CisgICAgYm9vbCBzdXBwb3J0c0ltbWVkaWF0ZUludmFsaWRhdGlvbigpIGZp
bmFsOworICAgIHZvaWQgaW52YWxpZGF0ZVJvb3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFJlY3Qm
KSBmaW5hbDsKKyAgICB2b2lkIGludmFsaWRhdGVDb250ZW50c0FuZFJvb3RWaWV3KGNvbnN0IFdl
YkNvcmU6OkludFJlY3QmKSBmaW5hbDsKKyAgICB2b2lkIGludmFsaWRhdGVDb250ZW50c0ZvclNs
b3dTY3JvbGwoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGZpbmFsOworICAgIHZvaWQgc2Nyb2xs
KGNvbnN0IFdlYkNvcmU6OkludFNpemUmIHNjcm9sbERlbHRhLCBjb25zdCBXZWJDb3JlOjpJbnRS
ZWN0JiByZWN0VG9TY3JvbGwsIGNvbnN0IFdlYkNvcmU6OkludFJlY3QmIGNsaXBSZWN0KSBmaW5h
bDsKKworICAgIFdlYkNvcmU6OkludFBvaW50IHNjcmVlblRvUm9vdFZpZXcoY29uc3QgV2ViQ29y
ZTo6SW50UG9pbnQmKSBjb25zdCBmaW5hbDsKKyAgICBXZWJDb3JlOjpJbnRSZWN0IHJvb3RWaWV3
VG9TY3JlZW4oY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGNvbnN0IGZpbmFsOwogCi0gICAgV2Vi
Q29yZTo6SW50UG9pbnQgc2NyZWVuVG9Sb290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYp
IGNvbnN0IG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OkludFJlY3Qgcm9vdFZpZXdUb1NjcmVlbihj
b25zdCBXZWJDb3JlOjpJbnRSZWN0JikgY29uc3Qgb3ZlcnJpZGU7CiAjaWYgUExBVEZPUk0oSU9T
KQotICAgIFdlYkNvcmU6OkludFBvaW50IGFjY2Vzc2liaWxpdHlTY3JlZW5Ub1Jvb3RWaWV3KGNv
bnN0IFdlYkNvcmU6OkludFBvaW50JikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6SW50
UmVjdCByb290Vmlld1RvQWNjZXNzaWJpbGl0eVNjcmVlbihjb25zdCBXZWJDb3JlOjpJbnRSZWN0
JikgY29uc3Qgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6SW50UG9pbnQgYWNjZXNzaWJpbGl0eVNj
cmVlblRvUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKSBjb25zdCBmaW5hbDsKKyAg
ICBXZWJDb3JlOjpJbnRSZWN0IHJvb3RWaWV3VG9BY2Nlc3NpYmlsaXR5U2NyZWVuKGNvbnN0IFdl
YkNvcmU6OkludFJlY3QmKSBjb25zdCBmaW5hbDsKICNlbmRpZgotICAgIFBsYXRmb3JtUGFnZUNs
aWVudCBwbGF0Zm9ybVBhZ2VDbGllbnQoKSBjb25zdCBvdmVycmlkZTsKLSAgICB2b2lkIGNvbnRl
bnRzU2l6ZUNoYW5nZWQoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXZWJDb3JlOjpJbnRTaXplJikg
Y29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzY3JvbGxSZWN0SW50b1ZpZXcoY29uc3QgV2ViQ29y
ZTo6SW50UmVjdCYpIGNvbnN0IG92ZXJyaWRlOwotICAgIAorCisgICAgUGxhdGZvcm1QYWdlQ2xp
ZW50IHBsYXRmb3JtUGFnZUNsaWVudCgpIGNvbnN0IGZpbmFsOworICAgIHZvaWQgY29udGVudHNT
aXplQ2hhbmdlZChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6OkludFNpemUmKSBjb25z
dCBmaW5hbDsKKyAgICB2b2lkIHNjcm9sbFJlY3RJbnRvVmlldyhjb25zdCBXZWJDb3JlOjpJbnRS
ZWN0JikgY29uc3QgZmluYWw7CisKICAgICB2b2lkIHNldFN0YXR1c2JhclRleHQoY29uc3QgV1RG
OjpTdHJpbmcmKSBvdmVycmlkZTsKIAotICAgIHZvaWQgc2Nyb2xsYmFyc01vZGVEaWRDaGFuZ2Uo
KSBjb25zdCBvdmVycmlkZSB7IH0KLSAgICBib29sIHNob3VsZFVuYXZhaWxhYmxlUGx1Z2luTWVz
c2FnZUJlQnV0dG9uKFdlYkNvcmU6OlJlbmRlckVtYmVkZGVkT2JqZWN0OjpQbHVnaW5VbmF2YWls
YWJpbGl0eVJlYXNvbikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCB1bmF2YWlsYWJsZVBsdWdp
bkJ1dHRvbkNsaWNrZWQoV2ViQ29yZTo6RWxlbWVudCosIFdlYkNvcmU6OlJlbmRlckVtYmVkZGVk
T2JqZWN0OjpQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAg
dm9pZCBtb3VzZURpZE1vdmVPdmVyRWxlbWVudChjb25zdCBXZWJDb3JlOjpIaXRUZXN0UmVzdWx0
JiwgdW5zaWduZWQgbW9kaWZpZXJGbGFncykgb3ZlcnJpZGU7CisgICAgdm9pZCBzY3JvbGxiYXJz
TW9kZURpZENoYW5nZSgpIGNvbnN0IGZpbmFsIHsgfQorICAgIGJvb2wgc2hvdWxkVW5hdmFpbGFi
bGVQbHVnaW5NZXNzYWdlQmVCdXR0b24oV2ViQ29yZTo6UmVuZGVyRW1iZWRkZWRPYmplY3Q6OlBs
dWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIHVuYXZhaWxh
YmxlUGx1Z2luQnV0dG9uQ2xpY2tlZChXZWJDb3JlOjpFbGVtZW50KiwgV2ViQ29yZTo6UmVuZGVy
RW1iZWRkZWRPYmplY3Q6OlBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKSBjb25zdCBmaW5hbDsK
KyAgICB2b2lkIG1vdXNlRGlkTW92ZU92ZXJFbGVtZW50KGNvbnN0IFdlYkNvcmU6OkhpdFRlc3RS
ZXN1bHQmLCB1bnNpZ25lZCBtb2RpZmllckZsYWdzKSBmaW5hbDsKIAotICAgIHZvaWQgc2V0VG9v
bFRpcChjb25zdCBXVEY6OlN0cmluZyYsIFdlYkNvcmU6OlRleHREaXJlY3Rpb24pIG92ZXJyaWRl
OworICAgIHZvaWQgc2V0VG9vbFRpcChjb25zdCBXVEY6OlN0cmluZyYsIFdlYkNvcmU6OlRleHRE
aXJlY3Rpb24pIGZpbmFsOwogCi0gICAgdm9pZCBwcmludChXZWJDb3JlOjpGcmFtZSopIG92ZXJy
aWRlOwotICAgIHZvaWQgZXhjZWVkZWREYXRhYmFzZVF1b3RhKFdlYkNvcmU6OkZyYW1lKiwgY29u
c3QgV1RGOjpTdHJpbmcmIGRhdGFiYXNlTmFtZSwgV2ViQ29yZTo6RGF0YWJhc2VEZXRhaWxzKSBv
dmVycmlkZTsKLSAgICB2b2lkIHJlYWNoZWRNYXhBcHBDYWNoZVNpemUoaW50NjRfdCBzcGFjZU5l
ZWRlZCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCByZWFjaGVkQXBwbGljYXRpb25DYWNoZU9yaWdpblF1
b3RhKFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luKiwgaW50NjRfdCB0b3RhbFNwYWNlTmVlZGVkKSBv
dmVycmlkZTsKKyAgICB2b2lkIHByaW50KFdlYkNvcmU6OkZyYW1lKikgZmluYWw7CisgICAgdm9p
ZCBleGNlZWRlZERhdGFiYXNlUXVvdGEoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXVEY6OlN0cmlu
ZyYgZGF0YWJhc2VOYW1lLCBXZWJDb3JlOjpEYXRhYmFzZURldGFpbHMpIGZpbmFsOworICAgIHZv
aWQgcmVhY2hlZE1heEFwcENhY2hlU2l6ZShpbnQ2NF90IHNwYWNlTmVlZGVkKSBmaW5hbDsKKyAg
ICB2b2lkIHJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoV2ViQ29yZTo6U2VjdXJp
dHlPcmlnaW4qLCBpbnQ2NF90IHRvdGFsU3BhY2VOZWVkZWQpIGZpbmFsOwogCiAjaWYgRU5BQkxF
KERBU0hCT0FSRF9TVVBQT1JUKQotICAgIHZvaWQgYW5ub3RhdGVkUmVnaW9uc0NoYW5nZWQoKSBv
dmVycmlkZTsKKyAgICB2b2lkIGFubm90YXRlZFJlZ2lvbnNDaGFuZ2VkKCkgZmluYWw7CiAjZW5k
aWYKIAotICAgIHZvaWQgcnVuT3BlblBhbmVsKFdlYkNvcmU6OkZyYW1lKiwgUGFzc1JlZlB0cjxX
ZWJDb3JlOjpGaWxlQ2hvb3Nlcj4pIG92ZXJyaWRlOwotICAgIHZvaWQgbG9hZEljb25Gb3JGaWxl
cyhjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiwgV2ViQ29yZTo6RmlsZUljb25Mb2FkZXImKSBv
dmVycmlkZTsKKyAgICB2b2lkIHJ1bk9wZW5QYW5lbChXZWJDb3JlOjpGcmFtZSYsIFdlYkNvcmU6
OkZpbGVDaG9vc2VyJikgb3ZlcnJpZGU7CisgICAgdm9pZCBsb2FkSWNvbkZvckZpbGVzKGNvbnN0
IFZlY3RvcjxXVEY6OlN0cmluZz4mLCBXZWJDb3JlOjpGaWxlSWNvbkxvYWRlciYpIGZpbmFsOwog
CiAjaWYgIVBMQVRGT1JNKElPUykKLSAgICB2b2lkIHNldEN1cnNvcihjb25zdCBXZWJDb3JlOjpD
dXJzb3ImKSBvdmVycmlkZTsKLSAgICB2b2lkIHNldEN1cnNvckhpZGRlblVudGlsTW91c2VNb3Zl
cyhib29sKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldEN1cnNvcihjb25zdCBXZWJDb3JlOjpDdXJz
b3ImKSBmaW5hbDsKKyAgICB2b2lkIHNldEN1cnNvckhpZGRlblVudGlsTW91c2VNb3Zlcyhib29s
KSBmaW5hbDsKICNlbmRpZgogCiAjaWYgRU5BQkxFKElOUFVUX1RZUEVfQ09MT1IpCi0gICAgc3Rk
Ojp1bmlxdWVfcHRyPFdlYkNvcmU6OkNvbG9yQ2hvb3Nlcj4gY3JlYXRlQ29sb3JDaG9vc2VyKFdl
YkNvcmU6OkNvbG9yQ2hvb3NlckNsaWVudCosIGNvbnN0IFdlYkNvcmU6OkNvbG9yJikgb3ZlcnJp
ZGU7CisgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6OkNvbG9yQ2hvb3Nlcj4gY3JlYXRlQ29s
b3JDaG9vc2VyKFdlYkNvcmU6OkNvbG9yQ2hvb3NlckNsaWVudCosIGNvbnN0IFdlYkNvcmU6OkNv
bG9yJikgZmluYWw7CiAjZW5kaWYKLSAgICAKKwogI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCi0g
ICAgYm9vbCByZXF1ZXN0UG9pbnRlckxvY2soKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlcXVlc3RQ
b2ludGVyVW5sb2NrKCkgb3ZlcnJpZGU7CisgICAgYm9vbCByZXF1ZXN0UG9pbnRlckxvY2soKSBm
aW5hbDsKKyAgICB2b2lkIHJlcXVlc3RQb2ludGVyVW5sb2NrKCkgZmluYWw7CiAjZW5kaWYKIAot
ICAgIFdlYkNvcmU6OktleWJvYXJkVUlNb2RlIGtleWJvYXJkVUlNb2RlKCkgb3ZlcnJpZGU7Cisg
ICAgV2ViQ29yZTo6S2V5Ym9hcmRVSU1vZGUga2V5Ym9hcmRVSU1vZGUoKSBmaW5hbDsKKworICAg
IE5TUmVzcG9uZGVyICpmaXJzdFJlc3BvbmRlcigpIGZpbmFsOworICAgIHZvaWQgbWFrZUZpcnN0
UmVzcG9uZGVyKE5TUmVzcG9uZGVyICopIGZpbmFsOwogCi0gICAgTlNSZXNwb25kZXIgKmZpcnN0
UmVzcG9uZGVyKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBtYWtlRmlyc3RSZXNwb25kZXIoTlNSZXNw
b25kZXIgKikgb3ZlcnJpZGU7CisgICAgdm9pZCBlbmFibGVTdWRkZW5UZXJtaW5hdGlvbigpIGZp
bmFsOworICAgIHZvaWQgZGlzYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkgZmluYWw7CiAKLSAgICB2
b2lkIGVuYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNhYmxl
U3VkZGVuVGVybWluYXRpb24oKSBvdmVycmlkZTsKLSAgICAKLSAgICBib29sIHNob3VsZFJlcGxh
Y2VXaXRoR2VuZXJhdGVkRmlsZUZvclVwbG9hZChjb25zdCBXVEY6OlN0cmluZyYgcGF0aCwgV1RG
OjpTdHJpbmcgJmdlbmVyYXRlZEZpbGVuYW1lKSBvdmVycmlkZTsKLSAgICBXVEY6OlN0cmluZyBn
ZW5lcmF0ZVJlcGxhY2VtZW50RmlsZShjb25zdCBXVEY6OlN0cmluZyYgcGF0aCkgb3ZlcnJpZGU7
CisgICAgYm9vbCBzaG91bGRSZXBsYWNlV2l0aEdlbmVyYXRlZEZpbGVGb3JVcGxvYWQoY29uc3Qg
V1RGOjpTdHJpbmcmIHBhdGgsIFdURjo6U3RyaW5nICZnZW5lcmF0ZWRGaWxlbmFtZSkgZmluYWw7
CisgICAgV1RGOjpTdHJpbmcgZ2VuZXJhdGVSZXBsYWNlbWVudEZpbGUoY29uc3QgV1RGOjpTdHJp
bmcmIHBhdGgpIGZpbmFsOwogCiAgICAgdm9pZCBlbGVtZW50RGlkRm9jdXMoY29uc3QgV2ViQ29y
ZTo6Tm9kZSopIG92ZXJyaWRlOwogICAgIHZvaWQgZWxlbWVudERpZEJsdXIoY29uc3QgV2ViQ29y
ZTo6Tm9kZSopIG92ZXJyaWRlOwogCi0gICAgYm9vbCBzaG91bGRQYWludEVudGlyZUNvbnRlbnRz
KCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRQYWludEVudGlyZUNvbnRlbnRzKCkg
Y29uc3QgZmluYWw7CiAKICAgICB2b2lkIGF0dGFjaFJvb3RHcmFwaGljc0xheWVyKFdlYkNvcmU6
OkZyYW1lKiwgV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOwotICAgIHZvaWQgYXR0
YWNoVmlld092ZXJsYXlHcmFwaGljc0xheWVyKFdlYkNvcmU6OkZyYW1lKiwgV2ViQ29yZTo6R3Jh
cGhpY3NMYXllciopIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0TmVlZHNPbmVTaG90RHJhd2luZ1N5
bmNocm9uaXphdGlvbigpIG92ZXJyaWRlOwotICAgIHZvaWQgc2NoZWR1bGVDb21wb3NpdGluZ0xh
eWVyRmx1c2goKSBvdmVycmlkZTsKKyAgICB2b2lkIGF0dGFjaFZpZXdPdmVybGF5R3JhcGhpY3NM
YXllcihXZWJDb3JlOjpGcmFtZSosIFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXIqKSBmaW5hbDsKKyAg
ICB2b2lkIHNldE5lZWRzT25lU2hvdERyYXdpbmdTeW5jaHJvbml6YXRpb24oKSBmaW5hbDsKKyAg
ICB2b2lkIHNjaGVkdWxlQ29tcG9zaXRpbmdMYXllckZsdXNoKCkgZmluYWw7CiAKLSAgICBDb21w
b3NpdGluZ1RyaWdnZXJGbGFncyBhbGxvd2VkQ29tcG9zaXRpbmdUcmlnZ2VycygpIGNvbnN0IG92
ZXJyaWRlCisgICAgQ29tcG9zaXRpbmdUcmlnZ2VyRmxhZ3MgYWxsb3dlZENvbXBvc2l0aW5nVHJp
Z2dlcnMoKSBjb25zdCBmaW5hbAogICAgIHsKICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PENv
bXBvc2l0aW5nVHJpZ2dlckZsYWdzPigKICAgICAgICAgICAgIFRocmVlRFRyYW5zZm9ybVRyaWdn
ZXIgfApAQCAtMTY5LDUyICsxNzcsNDkgQEAgcHVibGljOgogICAgICAgICAgICAgQW5pbWF0aW9u
VHJpZ2dlcik7CiAgICAgfQogCi0jaWYgRU5BQkxFKFZJREVPKQotI2lmIFBMQVRGT1JNKE1BQykg
JiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQotICAgIHZvaWQgc2V0VXBQbGF5YmFj
a0NvbnRyb2xzTWFuYWdlcihXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50Jikgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBjbGVhclBsYXliYWNrQ29udHJvbHNNYW5hZ2VyKCkgb3ZlcnJpZGU7CisjaWYgRU5B
QkxFKFZJREVPKSAmJiBQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05f
TU9ERSkKKyAgICB2b2lkIHNldFVwUGxheWJhY2tDb250cm9sc01hbmFnZXIoV2ViQ29yZTo6SFRN
TE1lZGlhRWxlbWVudCYpIGZpbmFsOworICAgIHZvaWQgY2xlYXJQbGF5YmFja0NvbnRyb2xzTWFu
YWdlcigpIGZpbmFsOwogI2VuZGlmCiAKLSAgICBib29sIHN1cHBvcnRzVmlkZW9GdWxsc2NyZWVu
KFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZSkgb3Zl
cnJpZGU7Ci0gICAgdm9pZCBlbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJD
b3JlOjpIVE1MVmlkZW9FbGVtZW50JiwgV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpW
aWRlb0Z1bGxzY3JlZW5Nb2RlKSBvdmVycmlkZTsKLSAgICB2b2lkIGV4aXRWaWRlb0Z1bGxzY3Jl
ZW5Gb3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCYpIG92ZXJyaWRlOwor
I2lmIEVOQUJMRShWSURFTykKKyAgICBib29sIHN1cHBvcnRzVmlkZW9GdWxsc2NyZWVuKFdlYkNv
cmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZSkgZmluYWw7Cisg
ICAgdm9pZCBlbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1M
VmlkZW9FbGVtZW50JiwgV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxz
Y3JlZW5Nb2RlKSBmaW5hbDsKKyAgICB2b2lkIGV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0Vs
ZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCYpIGZpbmFsOwogI2VuZGlmCi0gICAgCisK
ICNpZiBFTkFCTEUoRlVMTFNDUkVFTl9BUEkpCi0gICAgYm9vbCBzdXBwb3J0c0Z1bGxTY3JlZW5G
b3JFbGVtZW50KGNvbnN0IFdlYkNvcmU6OkVsZW1lbnQqLCBib29sIHdpdGhLZXlib2FyZCkgb3Zl
cnJpZGU7Ci0gICAgdm9pZCBlbnRlckZ1bGxTY3JlZW5Gb3JFbGVtZW50KFdlYkNvcmU6OkVsZW1l
bnQqKSBvdmVycmlkZTsKLSAgICB2b2lkIGV4aXRGdWxsU2NyZWVuRm9yRWxlbWVudChXZWJDb3Jl
OjpFbGVtZW50Kikgb3ZlcnJpZGU7CisgICAgYm9vbCBzdXBwb3J0c0Z1bGxTY3JlZW5Gb3JFbGVt
ZW50KGNvbnN0IFdlYkNvcmU6OkVsZW1lbnQqLCBib29sIHdpdGhLZXlib2FyZCkgZmluYWw7Cisg
ICAgdm9pZCBlbnRlckZ1bGxTY3JlZW5Gb3JFbGVtZW50KFdlYkNvcmU6OkVsZW1lbnQqKSBmaW5h
bDsKKyAgICB2b2lkIGV4aXRGdWxsU2NyZWVuRm9yRWxlbWVudChXZWJDb3JlOjpFbGVtZW50Kikg
ZmluYWw7CiAjZW5kaWYKIAogICAgIGJvb2wgc2VsZWN0SXRlbVdyaXRpbmdEaXJlY3Rpb25Jc05h
dHVyYWwoKSBvdmVycmlkZTsKICAgICBib29sIHNlbGVjdEl0ZW1BbGlnbm1lbnRGb2xsb3dzTWVu
dVdyaXRpbmdEaXJlY3Rpb24oKSBvdmVycmlkZTsKLSAgICBib29sIGhhc09wZW5lZFBvcHVwKCkg
Y29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBoYXNPcGVuZWRQb3B1cCgpIGNvbnN0IGZpbmFsOwog
ICAgIFJlZlB0cjxXZWJDb3JlOjpQb3B1cE1lbnU+IGNyZWF0ZVBvcHVwTWVudShXZWJDb3JlOjpQ
b3B1cE1lbnVDbGllbnQqKSBjb25zdCBvdmVycmlkZTsKICAgICBSZWZQdHI8V2ViQ29yZTo6U2Vh
cmNoUG9wdXBNZW51PiBjcmVhdGVTZWFyY2hQb3B1cE1lbnUoV2ViQ29yZTo6UG9wdXBNZW51Q2xp
ZW50KikgY29uc3Qgb3ZlcnJpZGU7CiAKLSAgICB2b2lkIHdoZWVsRXZlbnRIYW5kbGVyc0NoYW5n
ZWQoYm9vbCkgb3ZlcnJpZGUgeyB9CisgICAgdm9pZCB3aGVlbEV2ZW50SGFuZGxlcnNDaGFuZ2Vk
KGJvb2wpIGZpbmFsIHsgfQogCiAjaWYgRU5BQkxFKFNVQlRMRV9DUllQVE8pCi0gICAgYm9vbCB3
cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90PiYsIFZlY3Rvcjx1aW50OF90PiYpIGNv
bnN0IG92ZXJyaWRlOwotICAgIGJvb2wgdW53cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50
OF90PiYsIFZlY3Rvcjx1aW50OF90PiYpIGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wgd3JhcENy
eXB0b0tleShjb25zdCBWZWN0b3I8dWludDhfdD4mLCBWZWN0b3I8dWludDhfdD4mKSBjb25zdCBm
aW5hbDsKKyAgICBib29sIHVud3JhcENyeXB0b0tleShjb25zdCBWZWN0b3I8dWludDhfdD4mLCBW
ZWN0b3I8dWludDhfdD4mKSBjb25zdCBmaW5hbDsKICNlbmRpZgogCiAjaWYgRU5BQkxFKFNFUlZJ
Q0VfQ09OVFJPTFMpCi0gICAgdm9pZCBoYW5kbGVTZWxlY3Rpb25TZXJ2aWNlQ2xpY2soV2ViQ29y
ZTo6RnJhbWVTZWxlY3Rpb24mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgdGVsZXBob25lTnVtYmVy
cywgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKSBvdmVycmlkZTsKLSAgICBib29sIGhhc1JlbGV2
YW50U2VsZWN0aW9uU2VydmljZXMoYm9vbCBpc1RleHRPbmx5KSBjb25zdCBvdmVycmlkZTsKKyAg
ICB2b2lkIGhhbmRsZVNlbGVjdGlvblNlcnZpY2VDbGljayhXZWJDb3JlOjpGcmFtZVNlbGVjdGlv
biYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiB0ZWxlcGhvbmVOdW1iZXJzLCBjb25zdCBXZWJDb3Jl
OjpJbnRQb2ludCYpIGZpbmFsOworICAgIGJvb2wgaGFzUmVsZXZhbnRTZWxlY3Rpb25TZXJ2aWNl
cyhib29sIGlzVGV4dE9ubHkpIGNvbnN0IGZpbmFsOwogI2VuZGlmCiAKLSAgICBXZWJWaWV3KiB3
ZWJWaWV3KCkgY29uc3QgeyByZXR1cm4gbV93ZWJWaWV3OyB9Ci0KICNpZiBFTkFCTEUoV0lSRUxF
U1NfUExBWUJBQ0tfVEFSR0VUKSAmJiAhUExBVEZPUk0oSU9TKQotICAgIHZvaWQgYWRkUGxheWJh
Y2tUYXJnZXRQaWNrZXJDbGllbnQodWludDY0X3QgLypjb250ZXh0SWQqLykgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCByZW1vdmVQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudCh1aW50NjRfdCAvKmNvbnRl
eHRJZCovKSBvdmVycmlkZTsKLSAgICB2b2lkIHNob3dQbGF5YmFja1RhcmdldFBpY2tlcih1aW50
NjRfdCAvKmNvbnRleHRJZCovLCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYsIGJvb2wgLyogaGFz
VmlkZW8gKi8pIG92ZXJyaWRlOwotICAgIHZvaWQgcGxheWJhY2tUYXJnZXRQaWNrZXJDbGllbnRT
dGF0ZURpZENoYW5nZSh1aW50NjRfdCAvKmNvbnRleHRJZCovLCBXZWJDb3JlOjpNZWRpYVByb2R1
Y2VyOjpNZWRpYVN0YXRlRmxhZ3MpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0TW9ja01lZGlhUGxh
eWJhY2tUYXJnZXRQaWNrZXJFbmFibGVkKGJvb2wpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0TW9j
a01lZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJTdGF0ZShjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpN
ZWRpYVBsYXliYWNrVGFyZ2V0Q29udGV4dDo6U3RhdGUpIG92ZXJyaWRlOworICAgIHZvaWQgYWRk
UGxheWJhY2tUYXJnZXRQaWNrZXJDbGllbnQodWludDY0X3QgLypjb250ZXh0SWQqLykgZmluYWw7
CisgICAgdm9pZCByZW1vdmVQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudCh1aW50NjRfdCAvKmNv
bnRleHRJZCovKSBmaW5hbDsKKyAgICB2b2lkIHNob3dQbGF5YmFja1RhcmdldFBpY2tlcih1aW50
NjRfdCAvKmNvbnRleHRJZCovLCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYsIGJvb2wgLyogaGFz
VmlkZW8gKi8pIGZpbmFsOworICAgIHZvaWQgcGxheWJhY2tUYXJnZXRQaWNrZXJDbGllbnRTdGF0
ZURpZENoYW5nZSh1aW50NjRfdCAvKmNvbnRleHRJZCovLCBXZWJDb3JlOjpNZWRpYVByb2R1Y2Vy
OjpNZWRpYVN0YXRlRmxhZ3MpIGZpbmFsOworICAgIHZvaWQgc2V0TW9ja01lZGlhUGxheWJhY2tU
YXJnZXRQaWNrZXJFbmFibGVkKGJvb2wpIGZpbmFsOworICAgIHZvaWQgc2V0TW9ja01lZGlhUGxh
eWJhY2tUYXJnZXRQaWNrZXJTdGF0ZShjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpNZWRpYVBsYXli
YWNrVGFyZ2V0Q29udGV4dDo6U3RhdGUpIGZpbmFsOwogI2VuZGlmCiAKLXByaXZhdGU6CiAgICAg
V2ViVmlldyAqbV93ZWJWaWV3OwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dl
YkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNv
cmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5tbQppbmRleCBkN2VjOGNiMWI0NmFiNzgxOGUwZGUy
MjQxMjZjYWE1YTA2NWRhMjkxLi5hNTJhNDYwMWMxNjQ3ZGU0NWQ0MDk5NTdhODEzMmEyM2QxYTM2
MDYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJv
bWVDbGllbnQubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hy
b21lQ2xpZW50Lm1tCkBAIC03NDEsMTAgKzc0MSwxMCBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6
cmVxdWVzdFBvaW50ZXJVbmxvY2soKQogfQogI2VuZGlmCiAKLXZvaWQgV2ViQ2hyb21lQ2xpZW50
OjpydW5PcGVuUGFuZWwoRnJhbWUqLCBQYXNzUmVmUHRyPEZpbGVDaG9vc2VyPiBjaG9vc2VyKQor
dm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJ1bk9wZW5QYW5lbChGcmFtZSYsIEZpbGVDaG9vc2VyJiBj
aG9vc2VyKQogewogICAgIEJFR0lOX0JMT0NLX09CSkNfRVhDRVBUSU9OUzsKLSAgICBCT09MIGFs
bG93TXVsdGlwbGVGaWxlcyA9IGNob29zZXItPnNldHRpbmdzKCkuYWxsb3dzTXVsdGlwbGVGaWxl
czsKKyAgICBCT09MIGFsbG93TXVsdGlwbGVGaWxlcyA9IGNob29zZXIuc2V0dGluZ3MoKS5hbGxv
d3NNdWx0aXBsZUZpbGVzOwogICAgIFdlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyICpsaXN0ZW5l
ciA9IFtbV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIgYWxsb2NdIGluaXRXaXRoQ2hvb3Nlcjpj
aG9vc2VyXTsKICAgICBpZCBkZWxlZ2F0ZSA9IFttX3dlYlZpZXcgVUlEZWxlZ2F0ZV07CiAgICAg
aWYgKFtkZWxlZ2F0ZSByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKHdlYlZpZXc6cnVuT3Bl
blBhbmVsRm9yRmlsZUJ1dHRvbldpdGhSZXN1bHRMaXN0ZW5lcjphbGxvd011bHRpcGxlRmlsZXM6
KV0pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0
b3JDbGllbnQuaCBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNs
aWVudC5oCmluZGV4IDNiMzVkNGQyMTEwZjQ5ZjFjNDkzZmVhY2NkMDg0NzM4YjgyMzhhZjkuLjg4
MjE1MzEwNGM1MDA5ZTVlN2VhMGFlN2Y5MDhiMzc2YzcwY2Y3YzUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oCkBAIC0xMTUsOCAr
MTE1LDggQEAgcHJpdmF0ZToKICAgICB2b2lkIGRpc2NhcmRlZENvbXBvc2l0aW9uKFdlYkNvcmU6
OkZyYW1lKikgZmluYWw7CiAgICAgdm9pZCBjYW5jZWxlZENvbXBvc2l0aW9uKCkgZmluYWw7CiAK
LSAgICB2b2lkIHJlZ2lzdGVyVW5kb1N0ZXAoUGFzc1JlZlB0cjxXZWJDb3JlOjpVbmRvU3RlcD4p
IGZpbmFsOwotICAgIHZvaWQgcmVnaXN0ZXJSZWRvU3RlcChQYXNzUmVmUHRyPFdlYkNvcmU6OlVu
ZG9TdGVwPikgZmluYWw7CisgICAgdm9pZCByZWdpc3RlclVuZG9TdGVwKFdlYkNvcmU6OlVuZG9T
dGVwJikgZmluYWw7CisgICAgdm9pZCByZWdpc3RlclJlZG9TdGVwKFdlYkNvcmU6OlVuZG9TdGVw
JikgZmluYWw7CiAgICAgdm9pZCBjbGVhclVuZG9SZWRvT3BlcmF0aW9ucygpIGZpbmFsOwogCiAg
ICAgYm9vbCBjYW5Db3B5Q3V0KFdlYkNvcmU6OkZyYW1lKiwgYm9vbCBkZWZhdWx0VmFsdWUpIGNv
bnN0IGZpbmFsOwpAQCAtMTc0LDcgKzE3NCw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBoYW5kbGVB
Y2NlcHRlZENhbmRpZGF0ZVdpdGhTb2Z0U3BhY2VzKFdlYkNvcmU6OlRleHRDaGVja2luZ1Jlc3Vs
dCkgZmluYWw7CiAjZW5kaWYKIAotICAgIHZvaWQgcmVnaXN0ZXJVbmRvT3JSZWRvU3RlcChQYXNz
UmVmUHRyPFdlYkNvcmU6OlVuZG9TdGVwPiwgYm9vbCBpc1JlZG8pOworICAgIHZvaWQgcmVnaXN0
ZXJVbmRvT3JSZWRvU3RlcChXZWJDb3JlOjpVbmRvU3RlcCYsIGJvb2wgaXNSZWRvKTsKIAogICAg
IFdlYlZpZXcgKm1fd2ViVmlldzsKICAgICBSZXRhaW5QdHI8V2ViRWRpdG9yVW5kb1RhcmdldD4g
bV91bmRvVGFyZ2V0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBv
cnQvV2ViRWRpdG9yQ2xpZW50Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQv
V2ViRWRpdG9yQ2xpZW50Lm1tCmluZGV4IDdmOWY0MTdhZDFjNDNhODZhYTI1ZDIxNDhlNTQ2OTVl
MWRiNzAyOGUuLmYzOGE5ZjBjZGMyZDQ5NTBkZDA2NDZkNzAzOGY4YzVhMzMzZTA0ODYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5t
bQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQu
bW0KQEAgLTExOSw4ICsxMTksOCBAQCBAaW50ZXJmYWNlIFdlYlVuZG9TdGVwIDogTlNPYmplY3QK
ICAgICBSZWZQdHI8VW5kb1N0ZXA+IG1fc3RlcDsgICAKIH0KIAotKyAoV2ViVW5kb1N0ZXAgKilz
dGVwV2l0aFVuZG9TdGVwOihQYXNzUmVmUHRyPFVuZG9TdGVwPilzdGVwOwotLSAoVW5kb1N0ZXAg
KilzdGVwOworKyAoV2ViVW5kb1N0ZXAgKilzdGVwV2l0aFVuZG9TdGVwOihVbmRvU3RlcCYpc3Rl
cDsKKy0gKFVuZG9TdGVwJilzdGVwOwogCiBAZW5kCiAKQEAgLTEzNSwxMyArMTM1LDEyIEBAICsg
KHZvaWQpaW5pdGlhbGl6ZQogI2VuZGlmCiB9CiAKLS0gKGlkKWluaXRXaXRoVW5kb1N0ZXA6KFBh
c3NSZWZQdHI8VW5kb1N0ZXA+KXN0ZXAKKy0gKGlkKWluaXRXaXRoVW5kb1N0ZXA6KFVuZG9TdGVw
JilzdGVwCiB7Ci0gICAgQVNTRVJUKHN0ZXApOwogICAgIHNlbGYgPSBbc3VwZXIgaW5pdF07CiAg
ICAgaWYgKCFzZWxmKQogICAgICAgICByZXR1cm4gbmlsOwotICAgIG1fc3RlcCA9IHN0ZXA7Cisg
ICAgbV9zdGVwID0gJnN0ZXA7CiAgICAgcmV0dXJuIHNlbGY7CiB9CiAKQEAgLTE1MywxNCArMTUy
LDE0IEBAIC0gKHZvaWQpZGVhbGxvYwogICAgIFtzdXBlciBkZWFsbG9jXTsKIH0KIAotKyAoV2Vi
VW5kb1N0ZXAgKilzdGVwV2l0aFVuZG9TdGVwOihQYXNzUmVmUHRyPFVuZG9TdGVwPilzdGVwCisr
IChXZWJVbmRvU3RlcCAqKXN0ZXBXaXRoVW5kb1N0ZXA6KFVuZG9TdGVwJilzdGVwCiB7CiAgICAg
cmV0dXJuIFtbW1dlYlVuZG9TdGVwIGFsbG9jXSBpbml0V2l0aFVuZG9TdGVwOnN0ZXBdIGF1dG9y
ZWxlYXNlXTsKIH0KIAotLSAoVW5kb1N0ZXAgKilzdGVwCistIChVbmRvU3RlcCYpc3RlcAogewot
ICAgIHJldHVybiBtX3N0ZXAuZ2V0KCk7CisgICAgcmV0dXJuICptX3N0ZXA7CiB9CiAKIEBlbmQK
QEAgLTE3NywxMyArMTc2LDEzIEBAIEBpbXBsZW1lbnRhdGlvbiBXZWJFZGl0b3JVbmRvVGFyZ2V0
CiAtICh2b2lkKXVuZG9FZGl0aW5nOihpZClhcmcKIHsKICAgICBBU1NFUlQoW2FyZyBpc0tpbmRP
ZkNsYXNzOltXZWJVbmRvU3RlcCBjbGFzc11dKTsKLSAgICBbYXJnIHN0ZXBdLT51bmFwcGx5KCk7
CisgICAgW2FyZyBzdGVwXS51bmFwcGx5KCk7CiB9CiAKIC0gKHZvaWQpcmVkb0VkaXRpbmc6KGlk
KWFyZwogewogICAgIEFTU0VSVChbYXJnIGlzS2luZE9mQ2xhc3M6W1dlYlVuZG9TdGVwIGNsYXNz
XV0pOwotICAgIFthcmcgc3RlcF0tPnJlYXBwbHkoKTsKKyAgICBbYXJnIHN0ZXBdLnJlYXBwbHko
KTsKIH0KIAogQGVuZApAQCAtNjQyLDEwICs2NDEsOCBAQCBzdGF0aWMgTlNTdHJpbmcqIHVuZG9O
YW1lRm9yRWRpdEFjdGlvbihFZGl0QWN0aW9uIGVkaXRBY3Rpb24pCiAgICAgcmV0dXJuIG5pbDsK
IH0KIAotdm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb09yUmVkb1N0ZXAoUGFzc1Jl
ZlB0cjxVbmRvU3RlcD4gc3RlcCwgYm9vbCBpc1JlZG8pCit2b2lkIFdlYkVkaXRvckNsaWVudDo6
cmVnaXN0ZXJVbmRvT3JSZWRvU3RlcChVbmRvU3RlcCYgc3RlcCwgYm9vbCBpc1JlZG8pCiB7Ci0g
ICAgQVNTRVJUKHN0ZXApOwotICAgIAogICAgIE5TVW5kb01hbmFnZXIgKnVuZG9NYW5hZ2VyID0g
W21fd2ViVmlldyB1bmRvTWFuYWdlcl07CiAKICNpZiBQTEFURk9STShJT1MpCkBAIC02NTYsNyAr
NjUzLDcgQEAgdm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb09yUmVkb1N0ZXAoUGFz
c1JlZlB0cjxVbmRvU3RlcD4gc3RlcCwgYm9vbCBpc1IKICAgICAgICAgcmV0dXJuOwogI2VuZGlm
CiAKLSAgICBOU1N0cmluZyAqYWN0aW9uTmFtZSA9IHVuZG9OYW1lRm9yRWRpdEFjdGlvbihzdGVw
LT5lZGl0aW5nQWN0aW9uKCkpOworICAgIE5TU3RyaW5nICphY3Rpb25OYW1lID0gdW5kb05hbWVG
b3JFZGl0QWN0aW9uKHN0ZXAuZWRpdGluZ0FjdGlvbigpKTsKICAgICBXZWJVbmRvU3RlcCAqd2Vi
RW50cnkgPSBbV2ViVW5kb1N0ZXAgc3RlcFdpdGhVbmRvU3RlcDpzdGVwXTsKICAgICBbdW5kb01h
bmFnZXIgcmVnaXN0ZXJVbmRvV2l0aFRhcmdldDptX3VuZG9UYXJnZXQuZ2V0KCkgc2VsZWN0b3I6
KGlzUmVkbyA/IEBzZWxlY3RvcihyZWRvRWRpdGluZzopIDogQHNlbGVjdG9yKHVuZG9FZGl0aW5n
OikpIG9iamVjdDp3ZWJFbnRyeV07CiAgICAgaWYgKGFjdGlvbk5hbWUpCkBAIC02ODQsMTIgKzY4
MSwxMiBAQCB2b2lkIFdlYkVkaXRvckNsaWVudDo6dXBkYXRlRWRpdG9yU3RhdGVBZnRlckxheW91
dElmRWRpdGFiaWxpdHlDaGFuZ2VkKCkKICAgICAgICAgW21fd2ViVmlldyB1cGRhdGVUb3VjaEJh
cl07CiB9CiAKLXZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9TdGVwKFBhc3NSZWZQ
dHI8VW5kb1N0ZXA+IGNtZCkKK3ZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9TdGVw
KFVuZG9TdGVwJiBjbWQpCiB7CiAgICAgcmVnaXN0ZXJVbmRvT3JSZWRvU3RlcChjbWQsIGZhbHNl
KTsKIH0KIAotdm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyUmVkb1N0ZXAoUGFzc1JlZlB0
cjxVbmRvU3RlcD4gY21kKQordm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyUmVkb1N0ZXAo
VW5kb1N0ZXAmIGNtZCkKIHsKICAgICByZWdpc3RlclVuZG9PclJlZG9TdGVwKGNtZCwgdHJ1ZSk7
CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFt
ZUxvYWRlckNsaWVudC5oIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJh
bWVMb2FkZXJDbGllbnQuaAppbmRleCBhMTFmYjg4YmRiZDkxYmFkOGZkOGRmOWZkMjkyZjgyNTg4
ZmM0NWY2Li5iZmJkMmY3ODM2ZjY0OGI4MDcwYWM3NDNmMmVhYzgzNmE1Yzk2OTEyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVu
dC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVy
Q2xpZW50LmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTYg
QXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA2LTIw
MTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCkBAIC01OCwyMDIgKzU4LDIwMiBAQCBwdWJsaWM6CiAgICAgV2ViRnJhbWUqIHdl
YkZyYW1lKCkgY29uc3QgeyByZXR1cm4gbV93ZWJGcmFtZS5nZXQoKTsgfQogCiBwcml2YXRlOgot
ICAgIHZvaWQgZnJhbWVMb2FkZXJEZXN0cm95ZWQoKSBvdmVycmlkZTsKLSAgICBib29sIGhhc1dl
YlZpZXcoKSBjb25zdCBvdmVycmlkZTsgLy8gbWFpbmx5IGZvciBhc3NlcnRpb25zCisgICAgdm9p
ZCBmcmFtZUxvYWRlckRlc3Ryb3llZCgpIGZpbmFsOworICAgIGJvb2wgaGFzV2ViVmlldygpIGNv
bnN0IGZpbmFsOyAvLyBtYWlubHkgZm9yIGFzc2VydGlvbnMKIAotICAgIHZvaWQgbWFrZVJlcHJl
c2VudGF0aW9uKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBo
YXNIVE1MVmlldygpIGNvbnN0IG92ZXJyaWRlOworICAgIHZvaWQgbWFrZVJlcHJlc2VudGF0aW9u
KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgZmluYWw7CisgICAgYm9vbCBoYXNIVE1MVmlldygp
IGNvbnN0IGZpbmFsOwogI2lmIFBMQVRGT1JNKElPUykKLSAgICBib29sIGZvcmNlTGF5b3V0T25S
ZXN0b3JlRnJvbVBhZ2VDYWNoZSgpIG92ZXJyaWRlOworICAgIGJvb2wgZm9yY2VMYXlvdXRPblJl
c3RvcmVGcm9tUGFnZUNhY2hlKCkgZmluYWw7CiAjZW5kaWYKLSAgICB2b2lkIGZvcmNlTGF5b3V0
Rm9yTm9uSFRNTCgpIG92ZXJyaWRlOworICAgIHZvaWQgZm9yY2VMYXlvdXRGb3JOb25IVE1MKCkg
ZmluYWw7CiAKLSAgICB2b2lkIHNldENvcGllc09uU2Nyb2xsKCkgb3ZlcnJpZGU7CisgICAgdm9p
ZCBzZXRDb3BpZXNPblNjcm9sbCgpIGZpbmFsOwogCi0gICAgdm9pZCBkZXRhY2hlZEZyb21QYXJl
bnQyKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkZXRhY2hlZEZyb21QYXJlbnQzKCkgb3ZlcnJpZGU7
CisgICAgdm9pZCBkZXRhY2hlZEZyb21QYXJlbnQyKCkgZmluYWw7CisgICAgdm9pZCBkZXRhY2hl
ZEZyb21QYXJlbnQzKCkgZmluYWw7CiAKLSAgICB2b2lkIGNvbnZlcnRNYWluUmVzb3VyY2VMb2Fk
VG9Eb3dubG9hZChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlNlc3Npb25JRCwg
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VS
ZXNwb25zZSYpIG92ZXJyaWRlOworICAgIHZvaWQgY29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rv
d25sb2FkKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6U2Vzc2lvbklELCBjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3Bv
bnNlJikgZmluYWw7CiAKLSAgICB2b2lkIGFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0
KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKKyAgICB2b2lkIGFzc2lnbklk
ZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgV2ViQ29y
ZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5h
bDsKIAotICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpIG92
ZXJyaWRlOwotICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIG92ZXJyaWRlOwotICAgIHZv
aWQgZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OkF1
dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxT
ZW5kUmVxdWVzdChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VS
ZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkgZmluYWw7CisgICAgYm9vbCBzaG91bGRVc2VDcmVk
ZW50aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllcikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlv
bkNoYWxsZW5nZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgY29uc3QgV2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKSBmaW5hbDsKICNp
ZiBVU0UoUFJPVEVDVElPTl9TUEFDRV9BVVRIX0NBTExCQUNLKQotICAgIGJvb2wgY2FuQXV0aGVu
dGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UHJvdGVjdGlvblNwYWNlJikg
b3ZlcnJpZGU7CisgICAgYm9vbCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNl
KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25z
dCBXZWJDb3JlOjpQcm90ZWN0aW9uU3BhY2UmKSBmaW5hbDsKICNlbmRpZgogCiAjaWYgUExBVEZP
Uk0oSU9TKQotICAgIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IGNvbm5lY3Rpb25Qcm9wZXJ0
aWVzKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBv
dmVycmlkZTsKKyAgICBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBjb25uZWN0aW9uUHJvcGVy
dGllcyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikg
ZmluYWw7CiAjZW5kaWYKIAotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdl
YkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlk
UmVjZWl2ZUNvbnRlbnRMZW5ndGgoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3Bh
dGNoRGlkRmluaXNoTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllcikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVSZXNw
b25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0
Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllciwgaW50IGRhdGFMZW5ndGgpIGZpbmFsOworICAgIHZvaWQgZGlz
cGF0Y2hEaWRGaW5pc2hMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKICNpZiBFTkFCTEUoREFUQV9ERVRFQ1RJT04pCi0gICAg
dm9pZCBkaXNwYXRjaERpZEZpbmlzaERhdGFEZXRlY3Rpb24oTlNBcnJheSAqZGV0ZWN0aW9uUmVz
dWx0cykgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaERhdGFEZXRlY3Rpb24o
TlNBcnJheSAqZGV0ZWN0aW9uUmVzdWx0cykgZmluYWw7CiAjZW5kaWYKLSAgICB2b2lkIGRpc3Bh
dGNoRGlkRmFpbExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKLQot
ICAgIE5TQ2FjaGVkVVJMUmVzcG9uc2UqIHdpbGxDYWNoZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBOU0NhY2hlZFVSTFJlc3BvbnNl
KikgY29uc3Qgb3ZlcnJpZGU7Ci0KLSAgICB2b2lkIGRpc3BhdGNoRGlkRGlzcGF0Y2hPbmxvYWRF
dmVudHMoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVNlcnZlclJlZGly
ZWN0Rm9yUHJvdmlzaW9uYWxMb2FkKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZENh
bmNlbENsaWVudFJlZGlyZWN0KCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxQZXJm
b3JtQ2xpZW50UmVkaXJlY3QoY29uc3QgV2ViQ29yZTo6VVJMJiwgZG91YmxlIGludGVydmFsLCBk
b3VibGUgZmlyZURhdGUpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRDaGFuZ2VMb2Nh
dGlvbldpdGhpblBhZ2UoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUHVzaFN0YXRl
V2l0aGluUGFnZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZXBsYWNlU3RhdGVX
aXRoaW5QYWdlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFBvcFN0YXRlV2l0aGlu
UGFnZSgpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VFcnJvciYpIGZpbmFsOworCisgICAgTlNDYWNoZWRVUkxSZXNwb25zZSogd2ls
bENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2UqKSBjb25zdCBmaW5hbDsKKworICAgIHZvaWQg
ZGlzcGF0Y2hEaWREaXNwYXRjaE9ubG9hZEV2ZW50cygpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0
Y2hEaWRSZWNlaXZlU2VydmVyUmVkaXJlY3RGb3JQcm92aXNpb25hbExvYWQoKSBmaW5hbDsKKyAg
ICB2b2lkIGRpc3BhdGNoRGlkQ2FuY2VsQ2xpZW50UmVkaXJlY3QoKSBmaW5hbDsKKyAgICB2b2lk
IGRpc3BhdGNoV2lsbFBlcmZvcm1DbGllbnRSZWRpcmVjdChjb25zdCBXZWJDb3JlOjpVUkwmLCBk
b3VibGUgaW50ZXJ2YWwsIGRvdWJsZSBmaXJlRGF0ZSkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRj
aERpZENoYW5nZUxvY2F0aW9uV2l0aGluUGFnZSgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hE
aWRQdXNoU3RhdGVXaXRoaW5QYWdlKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlcGxh
Y2VTdGF0ZVdpdGhpblBhZ2UoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUG9wU3RhdGVX
aXRoaW5QYWdlKCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBkaXNwYXRjaFdpbGxDbG9zZSgpIG92
ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlSWNvbigpIG92ZXJyaWRlOwotICAg
IHZvaWQgZGlzcGF0Y2hEaWRTdGFydFByb3Zpc2lvbmFsTG9hZCgpIG92ZXJyaWRlOwotICAgIHZv
aWQgZGlzcGF0Y2hEaWRSZWNlaXZlVGl0bGUoY29uc3QgV2ViQ29yZTo6U3RyaW5nV2l0aERpcmVj
dGlvbiYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRDb21taXRMb2FkKHN0ZDo6b3B0
aW9uYWw8V2ViQ29yZTo6SGFzSW5zZWN1cmVDb250ZW50Pikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBk
aXNwYXRjaERpZEZhaWxQcm92aXNpb25hbExvYWQoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJv
ciYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZChjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaERv
Y3VtZW50TG9hZCgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkKCkg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlYWNoTGF5b3V0TWlsZXN0b25lKFdlYkNv
cmU6OkxheW91dE1pbGVzdG9uZXMpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsQ2xv
c2UoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUljb24oKSBmaW5hbDsKKyAg
ICB2b2lkIGRpc3BhdGNoRGlkU3RhcnRQcm92aXNpb25hbExvYWQoKSBmaW5hbDsKKyAgICB2b2lk
IGRpc3BhdGNoRGlkUmVjZWl2ZVRpdGxlKGNvbnN0IFdlYkNvcmU6OlN0cmluZ1dpdGhEaXJlY3Rp
b24mKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkQ29tbWl0TG9hZChzdGQ6Om9wdGlvbmFs
PFdlYkNvcmU6Okhhc0luc2VjdXJlQ29udGVudD4pIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hE
aWRGYWlsUHJvdmlzaW9uYWxMb2FkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBmaW5h
bDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbExvYWQoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VF
cnJvciYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hEb2N1bWVudExvYWQoKSBm
aW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZCgpIGZpbmFsOworICAgIHZvaWQg
ZGlzcGF0Y2hEaWRSZWFjaExheW91dE1pbGVzdG9uZShXZWJDb3JlOjpMYXlvdXRNaWxlc3RvbmVz
KSBmaW5hbDsKIAotICAgIFdlYkNvcmU6OkZyYW1lKiBkaXNwYXRjaENyZWF0ZVBhZ2UoY29uc3Qg
V2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hT
aG93KCkgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6RnJhbWUqIGRpc3BhdGNoQ3JlYXRlUGFnZShj
b25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRj
aFNob3coKSBmaW5hbDsKIAotICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JSZXNwb25z
ZShjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0JiwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgb3ZlcnJpZGU7Ci0gICAg
dm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBXZWJDb3Jl
OjpOYXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgUGFz
c1JlZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+LCBjb25zdCBXVEY6OlN0cmluZyYgZnJhbWVOYW1l
LCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3Bh
dGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBXZWJDb3JlOjpOYXZpZ2F0
aW9uQWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgUGFzc1JlZlB0cjxX
ZWJDb3JlOjpGb3JtU3RhdGU+LCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBvdmVycmlk
ZTsKLSAgICB2b2lkIGNhbmNlbFBvbGljeUNoZWNrKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNw
YXRjaERlY2lkZVBvbGljeUZvclJlc3BvbnNlKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2UmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpGcmFtZVBvbGlj
eUZ1bmN0aW9uKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2lu
ZG93QWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpGb3JtU3RhdGUqLCBjb25zdCBXVEY6OlN0cmlu
ZyYgZnJhbWVOYW1lLCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsKKyAgICB2
b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBXZWJDb3Jl
OjpOYXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgV2Vi
Q29yZTo6Rm9ybVN0YXRlKiwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7Cisg
ICAgdm9pZCBjYW5jZWxQb2xpY3lDaGVjaygpIGZpbmFsOwogCi0gICAgdm9pZCBkaXNwYXRjaFVu
YWJsZVRvSW1wbGVtZW50UG9saWN5KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVy
cmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoVW5hYmxlVG9JbXBsZW1lbnRQb2xpY3koY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VFcnJvciYpIGZpbmFsOwogCi0gICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5k
U3VibWl0RXZlbnQoUGFzc1JlZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+KSBvdmVycmlkZTsKLSAg
ICB2b2lkIGRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0oUGFzc1JlZlB0cjxXZWJDb3JlOjpGb3JtU3Rh
dGU+LCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBvdmVycmlkZTsKKyAgICB2b2lkIGRp
c3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChSZWY8V2ViQ29yZTo6Rm9ybVN0YXRlPiYmKSBmaW5h
bDsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0oV2ViQ29yZTo6Rm9ybVN0YXRlJiwg
V2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7CiAKLSAgICB2b2lkIHJldmVydFRv
UHJvdmlzaW9uYWxTdGF0ZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIG92ZXJyaWRlOwotICAg
IHZvaWQgc2V0TWFpbkRvY3VtZW50RXJyb3IoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBkaXNwYXRjaERp
ZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVz
cG9uc2UmLCBpbnQgbGVuZ3RoKSBvdmVycmlkZTsKKyAgICB2b2lkIHJldmVydFRvUHJvdmlzaW9u
YWxTdGF0ZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIGZpbmFsOworICAgIHZvaWQgc2V0TWFp
bkRvY3VtZW50RXJyb3IoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZUVycm9yJikgZmluYWw7CisgICAgYm9vbCBkaXNwYXRjaERpZExvYWRSZXNvdXJjZUZy
b21NZW1vcnlDYWNoZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBpbnQgbGVu
Z3RoKSBmaW5hbDsKIAotICAgIHZvaWQgc2V0TWFpbkZyYW1lRG9jdW1lbnRSZWFkeShib29sKSBv
dmVycmlkZTsKKyAgICB2b2lkIHNldE1haW5GcmFtZURvY3VtZW50UmVhZHkoYm9vbCkgZmluYWw7
CiAKLSAgICB2b2lkIHN0YXJ0RG93bmxvYWQoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
JiwgY29uc3QgU3RyaW5nJiBzdWdnZXN0ZWROYW1lID0gU3RyaW5nKCkpIG92ZXJyaWRlOworICAg
IHZvaWQgc3RhcnREb3dubG9hZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25z
dCBTdHJpbmcmIHN1Z2dlc3RlZE5hbWUgPSBTdHJpbmcoKSkgZmluYWw7CiAKLSAgICB2b2lkIHdp
bGxDaGFuZ2VUaXRsZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIG92ZXJyaWRlOwotICAgIHZv
aWQgZGlkQ2hhbmdlVGl0bGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBvdmVycmlkZTsKKyAg
ICB2b2lkIHdpbGxDaGFuZ2VUaXRsZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIGZpbmFsOwor
ICAgIHZvaWQgZGlkQ2hhbmdlVGl0bGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBmaW5hbDsK
IAotICAgIHZvaWQgd2lsbFJlcGxhY2VNdWx0aXBhcnRDb250ZW50KCkgb3ZlcnJpZGUgeyB9Ci0g
ICAgdm9pZCBkaWRSZXBsYWNlTXVsdGlwYXJ0Q29udGVudCgpIG92ZXJyaWRlOworICAgIHZvaWQg
d2lsbFJlcGxhY2VNdWx0aXBhcnRDb250ZW50KCkgZmluYWwgeyB9CisgICAgdm9pZCBkaWRSZXBs
YWNlTXVsdGlwYXJ0Q29udGVudCgpIGZpbmFsOwogCi0gICAgdm9pZCBjb21taXR0ZWRMb2FkKFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgY2hhciosIGludCkgb3ZlcnJpZGU7Ci0gICAg
dm9pZCBmaW5pc2hlZExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBvdmVycmlkZTsK
LSAgICB2b2lkIHVwZGF0ZUdsb2JhbEhpc3RvcnkoKSBvdmVycmlkZTsKLSAgICB2b2lkIHVwZGF0
ZUdsb2JhbEhpc3RvcnlSZWRpcmVjdExpbmtzKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBjb21taXR0
ZWRMb2FkKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgY2hhciosIGludCkgZmluYWw7
CisgICAgdm9pZCBmaW5pc2hlZExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBmaW5h
bDsKKyAgICB2b2lkIHVwZGF0ZUdsb2JhbEhpc3RvcnkoKSBmaW5hbDsKKyAgICB2b2lkIHVwZGF0
ZUdsb2JhbEhpc3RvcnlSZWRpcmVjdExpbmtzKCkgZmluYWw7CiAKLSAgICBib29sIHNob3VsZEdv
VG9IaXN0b3J5SXRlbShXZWJDb3JlOjpIaXN0b3J5SXRlbSopIGNvbnN0IG92ZXJyaWRlOwotICAg
IHZvaWQgdXBkYXRlR2xvYmFsSGlzdG9yeUl0ZW1Gb3JQYWdlKCkgb3ZlcnJpZGU7CisgICAgYm9v
bCBzaG91bGRHb1RvSGlzdG9yeUl0ZW0oV2ViQ29yZTo6SGlzdG9yeUl0ZW0qKSBjb25zdCBmaW5h
bDsKKyAgICB2b2lkIHVwZGF0ZUdsb2JhbEhpc3RvcnlJdGVtRm9yUGFnZSgpIGZpbmFsOwogCi0g
ICAgdm9pZCBkaWREaXNwbGF5SW5zZWN1cmVDb250ZW50KCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBk
aWRSdW5JbnNlY3VyZUNvbnRlbnQoV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4qLCBjb25zdCBXZWJD
b3JlOjpVUkwmKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZERldGVjdFhTUyhjb25zdCBXZWJDb3Jl
OjpVUkwmLCBib29sIGRpZEJsb2NrRW50aXJlUGFnZSkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRE
aXNwbGF5SW5zZWN1cmVDb250ZW50KCkgZmluYWw7CisgICAgdm9pZCBkaWRSdW5JbnNlY3VyZUNv
bnRlbnQoV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4qLCBjb25zdCBXZWJDb3JlOjpVUkwmKSBmaW5h
bDsKKyAgICB2b2lkIGRpZERldGVjdFhTUyhjb25zdCBXZWJDb3JlOjpVUkwmLCBib29sIGRpZEJs
b2NrRW50aXJlUGFnZSkgZmluYWw7CiAKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbmNl
bGxlZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRlOwotICAg
IFdlYkNvcmU6OlJlc291cmNlRXJyb3IgYmxvY2tlZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlUmVxdWVzdCYpIG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgYmxvY2tl
ZEJ5Q29udGVudEJsb2NrZXJFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBv
dmVycmlkZTsKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dVUkxFcnJvcihj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpS
ZXNvdXJjZUVycm9yIGludGVycnVwdGVkRm9yUG9saWN5Q2hhbmdlRXJyb3IoY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJv
ciBjYW5jZWxsZWRFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsK
KyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGJsb2NrZWRFcnJvcihjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGJsb2Nr
ZWRCeUNvbnRlbnRCbG9ja2VyRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikg
ZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBjYW5ub3RTaG93VVJMRXJyb3IoY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3Vy
Y2VFcnJvciBpbnRlcnJ1cHRlZEZvclBvbGljeUNoYW5nZUVycm9yKGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCYpIGZpbmFsOwogI2lmIEVOQUJMRShDT05URU5UX0ZJTFRFUklORykKLSAg
ICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGJsb2NrZWRCeUNvbnRlbnRGaWx0ZXJFcnJvcihjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpSZXNv
dXJjZUVycm9yIGJsb2NrZWRCeUNvbnRlbnRGaWx0ZXJFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmKSBmaW5hbDsKICNlbmRpZgogCi0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJv
ciBjYW5ub3RTaG93TUlNRVR5cGVFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNl
Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBmaWxlRG9lc05vdEV4aXN0
RXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOwotICAgIFdl
YkNvcmU6OlJlc291cmNlRXJyb3IgcGx1Z2luV2lsbEhhbmRsZUxvYWRFcnJvcihjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VF
cnJvciBjYW5ub3RTaG93TUlNRVR5cGVFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3Bv
bnNlJikgZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBmaWxlRG9lc05vdEV4aXN0
RXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOworICAgIFdlYkNv
cmU6OlJlc291cmNlRXJyb3IgcGx1Z2luV2lsbEhhbmRsZUxvYWRFcnJvcihjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7CiAKLSAgICBib29sIHNob3VsZEZhbGxCYWNrKGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZEZh
bGxCYWNrKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKIAotICAgIFdURjo6
U3RyaW5nIHVzZXJBZ2VudChjb25zdCBXZWJDb3JlOjpVUkwmKSBvdmVycmlkZTsKKyAgICBXVEY6
OlN0cmluZyB1c2VyQWdlbnQoY29uc3QgV2ViQ29yZTo6VVJMJikgZmluYWw7CiAgICAgCi0gICAg
dm9pZCBzYXZlUGxhdGZvcm1EYXRhVG9DYWNoZWRGcmFtZShXZWJDb3JlOjpDYWNoZWRGcmFtZSop
IG92ZXJyaWRlOwotICAgIHZvaWQgdHJhbnNpdGlvblRvQ29tbWl0dGVkRnJvbUNhY2hlZEZyYW1l
KFdlYkNvcmU6OkNhY2hlZEZyYW1lKikgb3ZlcnJpZGU7CisgICAgdm9pZCBzYXZlUGxhdGZvcm1E
YXRhVG9DYWNoZWRGcmFtZShXZWJDb3JlOjpDYWNoZWRGcmFtZSopIGZpbmFsOworICAgIHZvaWQg
dHJhbnNpdGlvblRvQ29tbWl0dGVkRnJvbUNhY2hlZEZyYW1lKFdlYkNvcmU6OkNhY2hlZEZyYW1l
KikgZmluYWw7CiAjaWYgUExBVEZPUk0oSU9TKQotICAgIHZvaWQgZGlkUmVzdG9yZUZyYW1lSGll
cmFyY2h5Rm9yQ2FjaGVkRnJhbWUoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZFJlc3RvcmVGcmFt
ZUhpZXJhcmNoeUZvckNhY2hlZEZyYW1lKCkgZmluYWw7CiAjZW5kaWYKLSAgICB2b2lkIHRyYW5z
aXRpb25Ub0NvbW1pdHRlZEZvck5ld1BhZ2UoKSBvdmVycmlkZTsKKyAgICB2b2lkIHRyYW5zaXRp
b25Ub0NvbW1pdHRlZEZvck5ld1BhZ2UoKSBmaW5hbDsKIAotICAgIHZvaWQgZGlkU2F2ZVRvUGFn
ZUNhY2hlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRSZXN0b3JlRnJvbVBhZ2VDYWNoZSgpIG92
ZXJyaWRlOworICAgIHZvaWQgZGlkU2F2ZVRvUGFnZUNhY2hlKCkgZmluYWw7CisgICAgdm9pZCBk
aWRSZXN0b3JlRnJvbVBhZ2VDYWNoZSgpIGZpbmFsOwogCi0gICAgdm9pZCBkaXNwYXRjaERpZEJl
Y29tZUZyYW1lc2V0KGJvb2wpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hEaWRCZWNvbWVG
cmFtZXNldChib29sKSBmaW5hbDsKIAotICAgIGJvb2wgY2FuSGFuZGxlUmVxdWVzdChjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBjb25zdCBvdmVycmlkZTsKLSAgICBib29sIGNhblNo
b3dNSU1FVHlwZShjb25zdCBXVEY6OlN0cmluZyYgTUlNRVR5cGUpIGNvbnN0IG92ZXJyaWRlOwot
ICAgIGJvb2wgY2FuU2hvd01JTUVUeXBlQXNIVE1MKGNvbnN0IFdURjo6U3RyaW5nJiBNSU1FVHlw
ZSkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgYm9vbCByZXByZXNlbnRhdGlvbkV4aXN0c0ZvclVSTFNj
aGVtZShjb25zdCBXVEY6OlN0cmluZyYgVVJMU2NoZW1lKSBjb25zdCBvdmVycmlkZTsKLSAgICBX
VEY6OlN0cmluZyBnZW5lcmF0ZWRNSU1FVHlwZUZvclVSTFNjaGVtZShjb25zdCBXVEY6OlN0cmlu
ZyYgVVJMU2NoZW1lKSBjb25zdCBvdmVycmlkZTsKKyAgICBib29sIGNhbkhhbmRsZVJlcXVlc3Qo
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgY29uc3QgZmluYWw7CisgICAgYm9vbCBj
YW5TaG93TUlNRVR5cGUoY29uc3QgV1RGOjpTdHJpbmcmIE1JTUVUeXBlKSBjb25zdCBmaW5hbDsK
KyAgICBib29sIGNhblNob3dNSU1FVHlwZUFzSFRNTChjb25zdCBXVEY6OlN0cmluZyYgTUlNRVR5
cGUpIGNvbnN0IGZpbmFsOworICAgIGJvb2wgcmVwcmVzZW50YXRpb25FeGlzdHNGb3JVUkxTY2hl
bWUoY29uc3QgV1RGOjpTdHJpbmcmIFVSTFNjaGVtZSkgY29uc3QgZmluYWw7CisgICAgV1RGOjpT
dHJpbmcgZ2VuZXJhdGVkTUlNRVR5cGVGb3JVUkxTY2hlbWUoY29uc3QgV1RGOjpTdHJpbmcmIFVS
TFNjaGVtZSkgY29uc3QgZmluYWw7CiAKLSAgICB2b2lkIGZyYW1lTG9hZENvbXBsZXRlZCgpIG92
ZXJyaWRlOwotICAgIHZvaWQgc2F2ZVZpZXdTdGF0ZVRvSXRlbShXZWJDb3JlOjpIaXN0b3J5SXRl
bSYpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVzdG9yZVZpZXdTdGF0ZSgpIG92ZXJyaWRlOwotICAg
IHZvaWQgcHJvdmlzaW9uYWxMb2FkU3RhcnRlZCgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkRmlu
aXNoTG9hZCgpIG92ZXJyaWRlOwotICAgIHZvaWQgcHJlcGFyZUZvckRhdGFTb3VyY2VSZXBsYWNl
bWVudCgpIG92ZXJyaWRlOwotICAgIFJlZjxXZWJDb3JlOjpEb2N1bWVudExvYWRlcj4gY3JlYXRl
RG9jdW1lbnRMb2FkZXIoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2Vi
Q29yZTo6U3Vic3RpdHV0ZURhdGEmKSBvdmVycmlkZTsKLSAgICB2b2lkIHVwZGF0ZUNhY2hlZERv
Y3VtZW50TG9hZGVyKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyJikgb3ZlcnJpZGUgeyB9CisgICAg
dm9pZCBmcmFtZUxvYWRDb21wbGV0ZWQoKSBmaW5hbDsKKyAgICB2b2lkIHNhdmVWaWV3U3RhdGVU
b0l0ZW0oV2ViQ29yZTo6SGlzdG9yeUl0ZW0mKSBmaW5hbDsKKyAgICB2b2lkIHJlc3RvcmVWaWV3
U3RhdGUoKSBmaW5hbDsKKyAgICB2b2lkIHByb3Zpc2lvbmFsTG9hZFN0YXJ0ZWQoKSBmaW5hbDsK
KyAgICB2b2lkIGRpZEZpbmlzaExvYWQoKSBmaW5hbDsKKyAgICB2b2lkIHByZXBhcmVGb3JEYXRh
U291cmNlUmVwbGFjZW1lbnQoKSBmaW5hbDsKKyAgICBSZWY8V2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXI+IGNyZWF0ZURvY3VtZW50TG9hZGVyKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYs
IGNvbnN0IFdlYkNvcmU6OlN1YnN0aXR1dGVEYXRhJikgZmluYWw7CisgICAgdm9pZCB1cGRhdGVD
YWNoZWREb2N1bWVudExvYWRlcihXZWJDb3JlOjpEb2N1bWVudExvYWRlciYpIGZpbmFsIHsgfQog
Ci0gICAgdm9pZCBzZXRUaXRsZShjb25zdCBXZWJDb3JlOjpTdHJpbmdXaXRoRGlyZWN0aW9uJiwg
Y29uc3QgV2ViQ29yZTo6VVJMJikgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRUaXRsZShjb25zdCBX
ZWJDb3JlOjpTdHJpbmdXaXRoRGlyZWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6VVJMJikgZmluYWw7
CiAKLSAgICBSZWZQdHI8V2ViQ29yZTo6RnJhbWU+IGNyZWF0ZUZyYW1lKGNvbnN0IFdlYkNvcmU6
OlVSTCYsIGNvbnN0IFdURjo6U3RyaW5nJiBuYW1lLCBXZWJDb3JlOjpIVE1MRnJhbWVPd25lckVs
ZW1lbnQqLAotICAgICAgICBjb25zdCBXVEY6OlN0cmluZyYgcmVmZXJyZXIsIGJvb2wgYWxsb3dz
U2Nyb2xsaW5nLCBpbnQgbWFyZ2luV2lkdGgsIGludCBtYXJnaW5IZWlnaHQpIG92ZXJyaWRlOwot
ICAgIFJlZlB0cjxXZWJDb3JlOjpXaWRnZXQ+IGNyZWF0ZVBsdWdpbihjb25zdCBXZWJDb3JlOjpJ
bnRTaXplJiwgV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQqLCBjb25zdCBXZWJDb3JlOjpVUkwm
LCBjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiwKLSAgICAgICAgY29uc3QgVmVjdG9yPFdURjo6
U3RyaW5nPiYsIGNvbnN0IFdURjo6U3RyaW5nJiwgYm9vbCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBy
ZWNyZWF0ZVBsdWdpbihXZWJDb3JlOjpXaWRnZXQqKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlZGly
ZWN0RGF0YVRvUGx1Z2luKFdlYkNvcmU6OldpZGdldCogcGx1Z2luV2lkZ2V0KSBvdmVycmlkZTsK
KyAgICBSZWZQdHI8V2ViQ29yZTo6RnJhbWU+IGNyZWF0ZUZyYW1lKGNvbnN0IFdlYkNvcmU6OlVS
TCYsIGNvbnN0IFdURjo6U3RyaW5nJiBuYW1lLCBXZWJDb3JlOjpIVE1MRnJhbWVPd25lckVsZW1l
bnQmLAorICAgICAgICBjb25zdCBXVEY6OlN0cmluZyYgcmVmZXJyZXIsIGJvb2wgYWxsb3dzU2Ny
b2xsaW5nLCBpbnQgbWFyZ2luV2lkdGgsIGludCBtYXJnaW5IZWlnaHQpIGZpbmFsOworICAgIFJl
ZlB0cjxXZWJDb3JlOjpXaWRnZXQ+IGNyZWF0ZVBsdWdpbihjb25zdCBXZWJDb3JlOjpJbnRTaXpl
JiwgV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQmLCBjb25zdCBXZWJDb3JlOjpVUkwmLAorICAg
ICAgICBjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFdURjo6U3RyaW5n
PiYsIGNvbnN0IFdURjo6U3RyaW5nJiwgYm9vbCkgZmluYWw7CisgICAgdm9pZCByZWNyZWF0ZVBs
dWdpbihXZWJDb3JlOjpXaWRnZXQqKSBmaW5hbDsKKyAgICB2b2lkIHJlZGlyZWN0RGF0YVRvUGx1
Z2luKFdlYkNvcmU6OldpZGdldCogcGx1Z2luV2lkZ2V0KSBmaW5hbDsKIAogI2lmIEVOQUJMRShX
RUJHTCkKLSAgICBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgd2ViR0xQb2xpY3lGb3JVUkwoY29u
c3QgU3RyaW5nJikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6V2ViR0xMb2FkUG9saWN5
IHJlc29sdmVXZWJHTFBvbGljeUZvclVSTChjb25zdCBTdHJpbmcmKSBjb25zdCBvdmVycmlkZTsK
LSNlbmRpZiAvLyBFTkFCTEUoV0VCR0wpCisgICAgV2ViQ29yZTo6V2ViR0xMb2FkUG9saWN5IHdl
YkdMUG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYpIGNvbnN0IGZpbmFsOworICAgIFdlYkNvcmU6
OldlYkdMTG9hZFBvbGljeSByZXNvbHZlV2ViR0xQb2xpY3lGb3JVUkwoY29uc3QgU3RyaW5nJikg
Y29uc3QgZmluYWw7CisjZW5kaWYKIAotICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6V2lkZ2V0PiBj
cmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IFdlYkNvcmU6OkludFNpemUmLCBXZWJDb3JlOjpI
VE1MQXBwbGV0RWxlbWVudCosIGNvbnN0IFdlYkNvcmU6OlVSTCYgYmFzZVVSTCwKLSAgICAgICAg
Y29uc3QgVmVjdG9yPFdURjo6U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFdURjo6
U3RyaW5nPiYgcGFyYW1WYWx1ZXMpIG92ZXJyaWRlOworICAgIFJlZlB0cjxXZWJDb3JlOjpXaWRn
ZXQ+IGNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNv
cmU6OkhUTUxBcHBsZXRFbGVtZW50JiwgY29uc3QgV2ViQ29yZTo6VVJMJiBiYXNlVVJMLAorICAg
ICAgICBjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8
V1RGOjpTdHJpbmc+JiBwYXJhbVZhbHVlcykgZmluYWw7CiAgICAgCi0gICAgV2ViQ29yZTo6T2Jq
ZWN0Q29udGVudFR5cGUgb2JqZWN0Q29udGVudFR5cGUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29u
c3QgV1RGOjpTdHJpbmcmIG1pbWVUeXBlKSBvdmVycmlkZTsKLSAgICBXVEY6OlN0cmluZyBvdmVy
cmlkZU1lZGlhVHlwZSgpIGNvbnN0IG92ZXJyaWRlOworICAgIFdlYkNvcmU6Ok9iamVjdENvbnRl
bnRUeXBlIG9iamVjdENvbnRlbnRUeXBlKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNvbnN0IFdURjo6
U3RyaW5nJiBtaW1lVHlwZSkgZmluYWw7CisgICAgV1RGOjpTdHJpbmcgb3ZlcnJpZGVNZWRpYVR5
cGUoKSBjb25zdCBmaW5hbDsKICAgICAKLSAgICB2b2lkIGRpc3BhdGNoRGlkQ2xlYXJXaW5kb3dP
YmplY3RJbldvcmxkKFdlYkNvcmU6OkRPTVdyYXBwZXJXb3JsZCYpIG92ZXJyaWRlOworICAgIHZv
aWQgZGlzcGF0Y2hEaWRDbGVhcldpbmRvd09iamVjdEluV29ybGQoV2ViQ29yZTo6RE9NV3JhcHBl
cldvcmxkJikgZmluYWw7CiAKLSAgICB2b2lkIHJlZ2lzdGVyRm9ySWNvbk5vdGlmaWNhdGlvbihi
b29sIGxpc3Rlbikgb3ZlcnJpZGU7CisgICAgdm9pZCByZWdpc3RlckZvckljb25Ob3RpZmljYXRp
b24oYm9vbCBsaXN0ZW4pIGZpbmFsOwogCiAjaWYgUExBVEZPUk0oSU9TKQotICAgIGJvb2wgc2hv
dWxkTG9hZE1lZGlhRWxlbWVudFVSTChjb25zdCBXZWJDb3JlOjpVUkwmKSBjb25zdCBvdmVycmlk
ZTsKKyAgICBib29sIHNob3VsZExvYWRNZWRpYUVsZW1lbnRVUkwoY29uc3QgV2ViQ29yZTo6VVJM
JikgY29uc3QgZmluYWw7CiAjZW5kaWYKIAotICAgIFJlbW90ZUFYT2JqZWN0UmVmIGFjY2Vzc2li
aWxpdHlSZW1vdGVPYmplY3QoKSBvdmVycmlkZSB7IHJldHVybiAwOyB9CisgICAgUmVtb3RlQVhP
YmplY3RSZWYgYWNjZXNzaWJpbGl0eVJlbW90ZU9iamVjdCgpIGZpbmFsIHsgcmV0dXJuIDA7IH0K
ICAgICAKICAgICBSZXRhaW5QdHI8V2ViRnJhbWVQb2xpY3lMaXN0ZW5lcj4gc2V0VXBQb2xpY3lM
aXN0ZW5lcihXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uLCBOU1VSTCAqYXBwTGlua1VSTCA9
IG5pbCk7CiAKLSAgICBOU0RpY3Rpb25hcnkgKmFjdGlvbkRpY3Rpb25hcnkoY29uc3QgV2ViQ29y
ZTo6TmF2aWdhdGlvbkFjdGlvbiYsIFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0YXRlPikgY29u
c3Q7CisgICAgTlNEaWN0aW9uYXJ5ICphY3Rpb25EaWN0aW9uYXJ5KGNvbnN0IFdlYkNvcmU6Ok5h
dmlnYXRpb25BY3Rpb24mLCBXZWJDb3JlOjpGb3JtU3RhdGUqKSBjb25zdDsKICAgICAKLSAgICBi
b29sIGNhbkNhY2hlUGFnZSgpIGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wgY2FuQ2FjaGVQYWdl
KCkgY29uc3QgZmluYWw7CiAKLSAgICBQYXNzUmVmUHRyPFdlYkNvcmU6OkZyYW1lTmV0d29ya2lu
Z0NvbnRleHQ+IGNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkgb3ZlcnJpZGU7CisgICAgUmVmPFdl
YkNvcmU6OkZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkg
ZmluYWw7CiAKICNpZiBFTkFCTEUoUkVRVUVTVF9BVVRPQ09NUExFVEUpCi0gICAgdm9pZCBkaWRS
ZXF1ZXN0QXV0b2NvbXBsZXRlKFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0YXRlPikgb3ZlcnJp
ZGUgeyB9CisgICAgdm9pZCBkaWRSZXF1ZXN0QXV0b2NvbXBsZXRlKFJlZjxXZWJDb3JlOjpGb3Jt
U3RhdGU+JiYpIGZpbmFsIHsgfQogI2VuZGlmCiAKLSAgICBib29sIHNob3VsZFBhaW50QnJva2Vu
SW1hZ2UoY29uc3QgV2ViQ29yZTo6VVJMJikgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91
bGRQYWludEJyb2tlbkltYWdlKGNvbnN0IFdlYkNvcmU6OlVSTCYpIGNvbnN0IGZpbmFsOwogCiAj
aWYgVVNFKFFVSUNLX0xPT0spCi0gICAgdm9pZCBkaWRDcmVhdGVRdWlja0xvb2tIYW5kbGUoV2Vi
Q29yZTo6UXVpY2tMb29rSGFuZGxlJikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRDcmVhdGVRdWlj
a0xvb2tIYW5kbGUoV2ViQ29yZTo6UXVpY2tMb29rSGFuZGxlJikgZmluYWw7CiAjZW5kaWYKIAog
I2lmIEVOQUJMRShDT05URU5UX0ZJTFRFUklORykKLSAgICB2b2lkIGNvbnRlbnRGaWx0ZXJEaWRC
bG9ja0xvYWQoV2ViQ29yZTo6Q29udGVudEZpbHRlclVuYmxvY2tIYW5kbGVyKSBvdmVycmlkZTsK
KyAgICB2b2lkIGNvbnRlbnRGaWx0ZXJEaWRCbG9ja0xvYWQoV2ViQ29yZTo6Q29udGVudEZpbHRl
clVuYmxvY2tIYW5kbGVyKSBmaW5hbDsKICNlbmRpZgogCi0gICAgdm9pZCBwcmVmZXRjaEROUyhj
b25zdCBTdHJpbmcmKSBvdmVycmlkZTsKKyAgICB2b2lkIHByZWZldGNoRE5TKGNvbnN0IFN0cmlu
ZyYpIGZpbmFsOwogCiAgICAgUmV0YWluUHRyPFdlYkZyYW1lPiBtX3dlYkZyYW1lOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNs
aWVudC5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVy
Q2xpZW50Lm1tCmluZGV4IDRlOWIyZTI3MmQyZDM5ZGFhODBkYTBjY2E0M2RkMmZhMDk4OWMxMDUu
LjYyNWU4NWE2NGU2YzUzNmYwYjczODE4YzMwZTMwMTRhOTZlYjllYzIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1tCisr
KyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50
Lm1tCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNi0yMDE2IEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNi0yMDE3IEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucwpAQCAtMTI4LDcgKzEyOCw3IEBACiAjaW1wb3J0IDxydW50aW1lL0luaXRpYWxpemVUaHJl
YWRpbmcuaD4KICNpbXBvcnQgPHd0Zi9CbG9ja09iakNFeGNlcHRpb25zLmg+CiAjaW1wb3J0IDx3
dGYvTWFpblRocmVhZC5oPgotI2ltcG9ydCA8d3RmL1Bhc3NSZWZQdHIuaD4KKyNpbXBvcnQgPHd0
Zi9SZWYuaD4KICNpbXBvcnQgPHd0Zi9SdW5Mb29wLmg+CiAjaW1wb3J0IDx3dGYvdGV4dC9XVEZT
dHJpbmcuaD4KIApAQCAtODg0LDcgKzg4NCw3IEBAIHN0YXRpYyBCT09MIHNob3VsZFRyeUFwcExp
bmsoV2ViVmlldyAqd2ViVmlldywgY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgYWN0aW9uLCBGCiAj
ZW5kaWYKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xp
Y3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgYWN0aW9uLCBjb25z
dCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiBmb3JtU3Rh
dGUsIGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9u
KQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdX
aW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgYWN0aW9uLCBjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSogZm9ybVN0YXRlLCBjb25zdCBTdHJpbmcmIGZy
YW1lTmFtZSwgRnJhbWVQb2xpY3lGdW5jdGlvbiBmdW5jdGlvbikKIHsKICAgICBXZWJWaWV3ICp3
ZWJWaWV3ID0gZ2V0V2ViVmlldyhtX3dlYkZyYW1lLmdldCgpKTsKICAgICBCT09MIHRyeUFwcExp
bmsgPSBzaG91bGRUcnlBcHBMaW5rKHdlYlZpZXcsIGFjdGlvbiwgbnVsbHB0cik7CkBAIC04OTYs
NyArODk2LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xp
Y3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGkKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgZGVjaXNpb25MaXN0ZW5lcjpzZXRVcFBvbGljeUxpc3RlbmVyKFdURk1vdmUoZnVuY3Rp
b24pLCB0cnlBcHBMaW5rID8gKE5TVVJMICopcmVxdWVzdC51cmwoKSA6IG5pbCkuZ2V0KCldOwog
fQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5h
dmlnYXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgYWN0aW9uLCBjb25zdCBSZXNv
dXJjZVJlcXVlc3QmIHJlcXVlc3QsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiBmb3JtU3RhdGUsIEZy
YW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24pCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpk
aXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFj
dGlvbiYgYWN0aW9uLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSog
Zm9ybVN0YXRlLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQogewogICAgIFdlYlZpZXcg
KndlYlZpZXcgPSBnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkpOwogICAgIEJPT0wgdHJ5QXBw
TGluayA9IHNob3VsZFRyeUFwcExpbmsod2ViVmlldywgYWN0aW9uLCBjb3JlKG1fd2ViRnJhbWUu
Z2V0KCkpKTsKQEAgLTkyMCwyOSArOTIwLDI4IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoVW5hYmxlVG9JbXBsZW1lbnRQb2xpY3koY29uc3QgUmVzb3VyY2VFcnJvciYKICAg
ICBbW3dlYlZpZXcgX3BvbGljeURlbGVnYXRlRm9yd2FyZGVyXSB3ZWJWaWV3OndlYlZpZXcgdW5h
YmxlVG9JbXBsZW1lbnRQb2xpY3lXaXRoRXJyb3I6ZXJyb3IgZnJhbWU6bV93ZWJGcmFtZS5nZXQo
KV07ICAgIAogfQogCi1zdGF0aWMgTlNEaWN0aW9uYXJ5ICptYWtlRm9ybUZpZWxkVmFsdWVzRGlj
dGlvbmFyeShGb3JtU3RhdGUqIGZvcm1TdGF0ZSkKK3N0YXRpYyBOU0RpY3Rpb25hcnkgKm1ha2VG
b3JtRmllbGRWYWx1ZXNEaWN0aW9uYXJ5KEZvcm1TdGF0ZSYgZm9ybVN0YXRlKQogewotICAgIGNv
bnN0IFN0cmluZ1BhaXJWZWN0b3ImIHRleHRGaWVsZFZhbHVlcyA9IGZvcm1TdGF0ZS0+dGV4dEZp
ZWxkVmFsdWVzKCk7CisgICAgYXV0byYgdGV4dEZpZWxkVmFsdWVzID0gZm9ybVN0YXRlLnRleHRG
aWVsZFZhbHVlcygpOwogICAgIHNpemVfdCBzaXplID0gdGV4dEZpZWxkVmFsdWVzLnNpemUoKTsK
ICAgICBOU011dGFibGVEaWN0aW9uYXJ5ICpkaWN0aW9uYXJ5ID0gW1tOU011dGFibGVEaWN0aW9u
YXJ5IGFsbG9jXSBpbml0V2l0aENhcGFjaXR5OnNpemVdOwotICAgIGZvciAoc2l6ZV90IGkgPSAw
OyBpIDwgc2l6ZTsgKytpKQotICAgICAgICBbZGljdGlvbmFyeSBzZXRPYmplY3Q6dGV4dEZpZWxk
VmFsdWVzW2ldLnNlY29uZCBmb3JLZXk6dGV4dEZpZWxkVmFsdWVzW2ldLmZpcnN0XTsKLQorICAg
IGZvciAoYXV0byYgdmFsdWUgOiB0ZXh0RmllbGRWYWx1ZXMpCisgICAgICAgIFtkaWN0aW9uYXJ5
IHNldE9iamVjdDp2YWx1ZS5zZWNvbmQgZm9yS2V5OnZhbHVlLmZpcnN0XTsKICAgICByZXR1cm4g
W2RpY3Rpb25hcnkgYXV0b3JlbGVhc2VdOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50
OjpkaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoUGFzc1JlZlB0cjxXZWJDb3JlOjpGb3JtU3Rh
dGU+IGZvcm1TdGF0ZSkKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNl
bmRTdWJtaXRFdmVudChSZWY8V2ViQ29yZTo6Rm9ybVN0YXRlPiYmIGZvcm1TdGF0ZSkKIHsKICAg
ICBpZCA8V2ViRm9ybURlbGVnYXRlPiBmb3JtRGVsZWdhdGUgPSBbZ2V0V2ViVmlldyhtX3dlYkZy
YW1lLmdldCgpKSBfZm9ybURlbGVnYXRlXTsKICAgICBpZiAoIWZvcm1EZWxlZ2F0ZSkKICAgICAg
ICAgcmV0dXJuOwogCi0gICAgRE9NSFRNTEZvcm1FbGVtZW50ICpmb3JtRWxlbWVudCA9IGtpdChm
b3JtU3RhdGUtPmZvcm0oKSk7CisgICAgRE9NSFRNTEZvcm1FbGVtZW50ICpmb3JtRWxlbWVudCA9
IGtpdCgmZm9ybVN0YXRlLT5mb3JtKCkpOwogICAgIE5TRGljdGlvbmFyeSAqdmFsdWVzID0gbWFr
ZUZvcm1GaWVsZFZhbHVlc0RpY3Rpb25hcnkoZm9ybVN0YXRlLmdldCgpKTsKICAgICBDYWxsRm9y
bURlbGVnYXRlKGdldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSksIEBzZWxlY3Rvcih3aWxsU2Vu
ZFN1Ym1pdEV2ZW50VG9Gb3JtOmluRnJhbWU6d2l0aFZhbHVlczopLCBmb3JtRWxlbWVudCwgbV93
ZWJGcmFtZS5nZXQoKSwgdmFsdWVzKTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShQYXNzUmVmUHRyPEZvcm1TdGF0ZT4gZm9ybVN0YXRlLCBG
cmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShGb3JtU3RhdGUmIGZvcm1TdGF0ZSwgRnJhbWVQb2xpY3lG
dW5jdGlvbiBmdW5jdGlvbikKIHsKICAgICBpZCA8V2ViRm9ybURlbGVnYXRlPiBmb3JtRGVsZWdh
dGUgPSBbZ2V0V2ViVmlldyhtX3dlYkZyYW1lLmdldCgpKSBfZm9ybURlbGVnYXRlXTsKICAgICBp
ZiAoIWZvcm1EZWxlZ2F0ZSkgewpAQCAtOTUwLDggKzk0OSw4IEBAIHZvaWQgV2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0oUGFzc1JlZlB0cjxGb3JtU3RhdGU+IGZv
cm1TdGF0CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBOU0RpY3Rpb25hcnkgKnZhbHVl
cyA9IG1ha2VGb3JtRmllbGRWYWx1ZXNEaWN0aW9uYXJ5KGZvcm1TdGF0ZS5nZXQoKSk7Ci0gICAg
Q2FsbEZvcm1EZWxlZ2F0ZShnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkpLCBAc2VsZWN0b3Io
ZnJhbWU6c291cmNlRnJhbWU6d2lsbFN1Ym1pdEZvcm06d2l0aFZhbHVlczpzdWJtaXNzaW9uTGlz
dGVuZXI6KSwgbV93ZWJGcmFtZS5nZXQoKSwga2l0KGZvcm1TdGF0ZS0+c291cmNlRG9jdW1lbnQo
KS0+ZnJhbWUoKSksIGtpdChmb3JtU3RhdGUtPmZvcm0oKSksIHZhbHVlcywgc2V0VXBQb2xpY3lM
aXN0ZW5lcihXVEZNb3ZlKGZ1bmN0aW9uKSkuZ2V0KCkpOworICAgIE5TRGljdGlvbmFyeSAqdmFs
dWVzID0gbWFrZUZvcm1GaWVsZFZhbHVlc0RpY3Rpb25hcnkoZm9ybVN0YXRlKTsKKyAgICBDYWxs
Rm9ybURlbGVnYXRlKGdldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSksIEBzZWxlY3RvcihmcmFt
ZTpzb3VyY2VGcmFtZTp3aWxsU3VibWl0Rm9ybTp3aXRoVmFsdWVzOnN1Ym1pc3Npb25MaXN0ZW5l
cjopLCBtX3dlYkZyYW1lLmdldCgpLCBraXQoZm9ybVN0YXRlLnNvdXJjZURvY3VtZW50KCkuZnJh
bWUoKSksIGtpdCgmZm9ybVN0YXRlLmZvcm0oKSksIHZhbHVlcywgc2V0VXBQb2xpY3lMaXN0ZW5l
cihXVEZNb3ZlKGZ1bmN0aW9uKSkuZ2V0KCkpOwogfQogCiB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xp
ZW50OjpyZXZlcnRUb1Byb3Zpc2lvbmFsU3RhdGUoRG9jdW1lbnRMb2FkZXIqIGxvYWRlcikKQEAg
LTE1NTIsNyArMTU1MSw3IEBAIHN0YXRpYyBjb25zdCBNb3VzZUV2ZW50KiBmaW5kTW91c2VFdmVu
dChjb25zdCBFdmVudCogZXZlbnQpCiAgICAgcmV0dXJuIDA7CiB9CiAKLU5TRGljdGlvbmFyeSAq
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmFjdGlvbkRpY3Rpb25hcnkoY29uc3QgTmF2aWdhdGlvbkFj
dGlvbiYgYWN0aW9uLCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4gZm9ybVN0YXRlKSBjb25zdAorTlNE
aWN0aW9uYXJ5ICpXZWJGcmFtZUxvYWRlckNsaWVudDo6YWN0aW9uRGljdGlvbmFyeShjb25zdCBO
YXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIEZvcm1TdGF0ZSogZm9ybVN0YXRlKSBjb25zdAogewog
ICAgIHVuc2lnbmVkIG1vZGlmaWVyRmxhZ3MgPSAwOwogICAgIGNvbnN0IEV2ZW50KiBldmVudCA9
IGFjdGlvbi5ldmVudCgpOwpAQCAtMTU5MywxMCArMTU5Miw4IEBAIE5TRGljdGlvbmFyeSAqV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmFjdGlvbkRpY3Rpb25hcnkoY29uc3QgTmF2aWdhdGlvbkFjdGlv
biYgYWN0CiAgICAgICAgICAgICBbcmVzdWx0IHNldE9iamVjdDpbTlNOdW1iZXIgbnVtYmVyV2l0
aEludDpXZWJDb3JlOjpOb0J1dHRvbl0gZm9yS2V5OldlYkFjdGlvbkJ1dHRvbktleV07CiAgICAg
fQogCi0gICAgaWYgKGZvcm1TdGF0ZSkgewotICAgICAgICBBU1NFUlQoZm9ybVN0YXRlLT5mb3Jt
KCkpOwotICAgICAgICBbcmVzdWx0IHNldE9iamVjdDpraXQoZm9ybVN0YXRlLT5mb3JtKCkpIGZv
cktleTpXZWJBY3Rpb25Gb3JtS2V5XTsKLSAgICB9CisgICAgaWYgKGZvcm1TdGF0ZSkKKyAgICAg
ICAgW3Jlc3VsdCBzZXRPYmplY3Q6a2l0KCZmb3JtU3RhdGUtPmZvcm0oKSkgZm9yS2V5OldlYkFj
dGlvbkZvcm1LZXldOwogCiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KQEAgLTE2MjIsNyArMTYxOSw3
IEBAIGJvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNhbkNhY2hlUGFnZSgpIGNvbnN0CiAgICAg
cmV0dXJuIHRydWU7CiB9CiAKLVJlZlB0cjxGcmFtZT4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNy
ZWF0ZUZyYW1lKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIG5hbWUsIEhUTUxGcmFtZU93
bmVyRWxlbWVudCogb3duZXJFbGVtZW50LAorUmVmUHRyPEZyYW1lPiBXZWJGcmFtZUxvYWRlckNs
aWVudDo6Y3JlYXRlRnJhbWUoY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgbmFtZSwgSFRN
TEZyYW1lT3duZXJFbGVtZW50JiBvd25lckVsZW1lbnQsCiAgICAgY29uc3QgU3RyaW5nJiByZWZl
cnJlciwgYm9vbCBhbGxvd3NTY3JvbGxpbmcsIGludCBtYXJnaW5XaWR0aCwgaW50IG1hcmdpbkhl
aWdodCkKIHsKICAgICBCRUdJTl9CTE9DS19PQkpDX0VYQ0VQVElPTlM7CkBAIC0xNjMxLDcgKzE2
MjgsNyBAQCBSZWZQdHI8RnJhbWU+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVGcmFtZShj
b25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiBuYQogICAgIAogICAgIFdlYkZyYW1lVmlldyAq
Y2hpbGRWaWV3ID0gW1tXZWJGcmFtZVZpZXcgYWxsb2NdIGluaXRdOwogICAgIAotICAgIFJlZlB0
cjxGcmFtZT4gcmVzdWx0ID0gW1dlYkZyYW1lIF9jcmVhdGVTdWJmcmFtZVdpdGhPd25lckVsZW1l
bnQ6b3duZXJFbGVtZW50IGZyYW1lTmFtZTpuYW1lIGZyYW1lVmlldzpjaGlsZFZpZXddOworICAg
IFJlZlB0cjxGcmFtZT4gcmVzdWx0ID0gW1dlYkZyYW1lIF9jcmVhdGVTdWJmcmFtZVdpdGhPd25l
ckVsZW1lbnQ6Jm93bmVyRWxlbWVudCBmcmFtZU5hbWU6bmFtZSBmcmFtZVZpZXc6Y2hpbGRWaWV3
XTsKICAgICBbY2hpbGRWaWV3IHJlbGVhc2VdOwogCiAgICAgV2ViRnJhbWUgKm5ld0ZyYW1lID0g
a2l0KHJlc3VsdC5nZXQoKSk7CkBAIC0xOTA5LDcgKzE5MDYsNyBAQCBzdGF0aWMgYm9vbCBzaG91
bGRCbG9ja1BsdWdpbihXZWJCYXNlUGx1Z2luUGFja2FnZSAqcGx1Z2luUGFja2FnZSkKICNlbmRp
ZgogfQogCi1SZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlUGx1Z2lu
KGNvbnN0IEludFNpemUmIHNpemUsIEhUTUxQbHVnSW5FbGVtZW50KiBlbGVtZW50LCBjb25zdCBV
UkwmIHVybCwKK1JlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVn
aW4oY29uc3QgSW50U2l6ZSYgc2l6ZSwgSFRNTFBsdWdJbkVsZW1lbnQmIGVsZW1lbnQsIGNvbnN0
IFVSTCYgdXJsLAogICAgIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBW
ZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUsIGJvb2wg
bG9hZE1hbnVhbGx5KQogewogICAgIEJFR0lOX0JMT0NLX09CSkNfRVhDRVBUSU9OUzsKQEAgLTE5
NDgsNyArMTk0NSw3IEBAIFJlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVh
dGVQbHVnaW4oY29uc3QgSW50U2l6ZSYgc2l6ZSwgSFRNTFBsdWdJCiAgICAgICAgICAgICBhdHRy
aWJ1dGVzLCBXZWJQbHVnSW5BdHRyaWJ1dGVzS2V5LAogICAgICAgICAgICAgW05TTnVtYmVyIG51
bWJlcldpdGhJbnQ6bG9hZE1hbnVhbGx5ID8gV2ViUGx1Z0luTW9kZUZ1bGwgOiBXZWJQbHVnSW5N
b2RlRW1iZWRdLCBXZWJQbHVnSW5Nb2RlS2V5LAogICAgICAgICAgICAgW05TTnVtYmVyIG51bWJl
cldpdGhCb29sOiFsb2FkTWFudWFsbHldLCBXZWJQbHVnSW5TaG91bGRMb2FkTWFpblJlc291cmNl
S2V5LAotICAgICAgICAgICAga2l0KGVsZW1lbnQpLCBXZWJQbHVnSW5Db250YWluaW5nRWxlbWVu
dEtleSwKKyAgICAgICAgICAgIGtpdCgmZWxlbWVudCksIFdlYlBsdWdJbkNvbnRhaW5pbmdFbGVt
ZW50S2V5LAogICAgICAgICAgICAgLy8gRklYTUU6IFdlIHNob3VsZCBiZSBwYXNzaW5nIGJhc2Ug
VVJMLCBzZWUgPGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNTIxNT4u
CiAgICAgICAgICAgICBwbHVnaW5VUkwsIFdlYlBsdWdJbkJhc2VVUkxLZXksIC8vIHBsdWdpblVS
TCBtaWdodCBiZSBuaWwsIHNvIGFkZCBpdCBsYXN0CiAgICAgICAgICAgICBuaWxdOwpAQCAtMTk5
NCwxMSArMTk5MSwxMSBAQCBSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3Jl
YXRlUGx1Z2luKGNvbnN0IEludFNpemUmIHNpemUsIEhUTUxQbHVnSQogICAgIGlmIChwbHVnaW5Q
YWNrYWdlKSB7CiAgICAgICAgIGlmIChzaG91bGRCbG9ja1BsdWdpbihwbHVnaW5QYWNrYWdlKSkg
ewogICAgICAgICAgICAgZXJyb3JDb2RlID0gV2ViS2l0RXJyb3JCbG9ja2VkUGx1Z0luVmVyc2lv
bjsKLSAgICAgICAgICAgIGlmIChpczxSZW5kZXJFbWJlZGRlZE9iamVjdD4oZWxlbWVudC0+cmVu
ZGVyZXIoKSkpCi0gICAgICAgICAgICAgICAgZG93bmNhc3Q8UmVuZGVyRW1iZWRkZWRPYmplY3Q+
KCplbGVtZW50LT5yZW5kZXJlcigpKS5zZXRQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbihSZW5k
ZXJFbWJlZGRlZE9iamVjdDo6SW5zZWN1cmVQbHVnaW5WZXJzaW9uKTsKKyAgICAgICAgICAgIGlm
IChpczxSZW5kZXJFbWJlZGRlZE9iamVjdD4oZWxlbWVudC5yZW5kZXJlcigpKSkKKyAgICAgICAg
ICAgICAgICBkb3duY2FzdDxSZW5kZXJFbWJlZGRlZE9iamVjdD4oKmVsZW1lbnQucmVuZGVyZXIo
KSkuc2V0UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24oUmVuZGVyRW1iZWRkZWRPYmplY3Q6Oklu
c2VjdXJlUGx1Z2luVmVyc2lvbik7CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBpZiAo
W3BsdWdpblBhY2thZ2UgaXNLaW5kT2ZDbGFzczpbV2ViUGx1Z2luUGFja2FnZSBjbGFzc11dKQot
ICAgICAgICAgICAgICAgIHZpZXcgPSBwbHVnaW5WaWV3KG1fd2ViRnJhbWUuZ2V0KCksIChXZWJQ
bHVnaW5QYWNrYWdlICopcGx1Z2luUGFja2FnZSwgYXR0cmlidXRlS2V5cywga2l0KHBhcmFtVmFs
dWVzKSwgYmFzZVVSTCwga2l0KGVsZW1lbnQpLCBsb2FkTWFudWFsbHkpOworICAgICAgICAgICAg
ICAgIHZpZXcgPSBwbHVnaW5WaWV3KG1fd2ViRnJhbWUuZ2V0KCksIChXZWJQbHVnaW5QYWNrYWdl
ICopcGx1Z2luUGFja2FnZSwgYXR0cmlidXRlS2V5cywga2l0KHBhcmFtVmFsdWVzKSwgYmFzZVVS
TCwga2l0KCZlbGVtZW50KSwgbG9hZE1hbnVhbGx5KTsKICNpZiBFTkFCTEUoTkVUU0NBUEVfUExV
R0lOX0FQSSkKICAgICAgICAgICAgIGVsc2UgaWYgKFtwbHVnaW5QYWNrYWdlIGlzS2luZE9mQ2xh
c3M6W1dlYk5ldHNjYXBlUGx1Z2luUGFja2FnZSBjbGFzc11dKSB7CiAgICAgICAgICAgICAgICAg
V2ViQmFzZU5ldHNjYXBlUGx1Z2luVmlldyAqcGx1Z2luVmlldyA9IFtbW05FVFNDQVBFX1BMVUdJ
Tl9WSUVXIGFsbG9jXQpAQCAtMjAxMCw3ICsyMDA3LDcgQEAgUmVmUHRyPFdpZGdldD4gV2ViRnJh
bWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiBzaXplLCBIVE1MUGx1
Z0kKICAgICAgICAgICAgICAgICAgICAgYXR0cmlidXRlS2V5czphdHRyaWJ1dGVLZXlzCiAgICAg
ICAgICAgICAgICAgICAgIGF0dHJpYnV0ZVZhbHVlczpraXQocGFyYW1WYWx1ZXMpCiAgICAgICAg
ICAgICAgICAgICAgIGxvYWRNYW51YWxseTpsb2FkTWFudWFsbHkKLSAgICAgICAgICAgICAgICAg
ICAgZWxlbWVudDplbGVtZW50XSBhdXRvcmVsZWFzZV07CisgICAgICAgICAgICAgICAgICAgIGVs
ZW1lbnQ6JmVsZW1lbnRdIGF1dG9yZWxlYXNlXTsKIAogICAgICAgICAgICAgICAgIHJldHVybiBh
ZG9wdFJlZihuZXcgTmV0c2NhcGVQbHVnaW5XaWRnZXQocGx1Z2luVmlldykpOwogICAgICAgICAg
ICAgfQpAQCAtMjA4MSw3ICsyMDc4LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6cmVk
aXJlY3REYXRhVG9QbHVnaW4oV2lkZ2V0KiBwbHVnaW5XaWRnZXQpCiAgICAgRU5EX0JMT0NLX09C
SkNfRVhDRVBUSU9OUzsKIH0KICAgICAKLVBhc3NSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRl
ckNsaWVudDo6Y3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXplJiBzaXplLCBIVE1M
QXBwbGV0RWxlbWVudCogZWxlbWVudCwgY29uc3QgVVJMJiBiYXNlVVJMLCAKK1JlZlB0cjxXaWRn
ZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IElu
dFNpemUmIHNpemUsIEhUTUxBcHBsZXRFbGVtZW50JiBlbGVtZW50LCBjb25zdCBVUkwmIGJhc2VV
UkwsCiAgICAgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxT
dHJpbmc+JiBwYXJhbVZhbHVlcykKIHsKICAgICBCRUdJTl9CTE9DS19PQkpDX0VYQ0VQVElPTlM7
CkBAIC0yMDk5LDggKzIwOTYsOCBAQCBQYXNzUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYgcwogICAgIGlmIChw
bHVnaW5QYWNrYWdlKSB7CiAgICAgICAgIGlmIChzaG91bGRCbG9ja1BsdWdpbihwbHVnaW5QYWNr
YWdlKSkgewogICAgICAgICAgICAgZXJyb3JDb2RlID0gV2ViS2l0RXJyb3JCbG9ja2VkUGx1Z0lu
VmVyc2lvbjsKLSAgICAgICAgICAgIGlmIChpczxSZW5kZXJFbWJlZGRlZE9iamVjdD4oZWxlbWVu
dC0+cmVuZGVyZXIoKSkpCi0gICAgICAgICAgICAgICAgZG93bmNhc3Q8UmVuZGVyRW1iZWRkZWRP
YmplY3Q+KCplbGVtZW50LT5yZW5kZXJlcigpKS5zZXRQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNv
bihSZW5kZXJFbWJlZGRlZE9iamVjdDo6SW5zZWN1cmVQbHVnaW5WZXJzaW9uKTsKKyAgICAgICAg
ICAgIGlmIChpczxSZW5kZXJFbWJlZGRlZE9iamVjdD4oZWxlbWVudC5yZW5kZXJlcigpKSkKKyAg
ICAgICAgICAgICAgICBkb3duY2FzdDxSZW5kZXJFbWJlZGRlZE9iamVjdD4oKmVsZW1lbnQucmVu
ZGVyZXIoKSkuc2V0UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24oUmVuZGVyRW1iZWRkZWRPYmpl
Y3Q6Okluc2VjdXJlUGx1Z2luVmVyc2lvbik7CiAgICAgICAgIH0gZWxzZSB7CiAjaWYgRU5BQkxF
KE5FVFNDQVBFX1BMVUdJTl9BUEkpCiAgICAgICAgICAgICBpZiAoW3BsdWdpblBhY2thZ2UgaXNL
aW5kT2ZDbGFzczpbV2ViTmV0c2NhcGVQbHVnaW5QYWNrYWdlIGNsYXNzXV0pIHsKQEAgLTIxMTIs
NyArMjEwOSw3IEBAIFBhc3NSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3Jl
YXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXplJiBzCiAgICAgICAgICAgICAgICAgICAg
IGF0dHJpYnV0ZUtleXM6a2l0KHBhcmFtTmFtZXMpCiAgICAgICAgICAgICAgICAgICAgIGF0dHJp
YnV0ZVZhbHVlczpraXQocGFyYW1WYWx1ZXMpCiAgICAgICAgICAgICAgICAgICAgIGxvYWRNYW51
YWxseTpOTwotICAgICAgICAgICAgICAgICAgICBlbGVtZW50OmVsZW1lbnRdIGF1dG9yZWxlYXNl
XTsKKyAgICAgICAgICAgICAgICAgICAgZWxlbWVudDomZWxlbWVudF0gYXV0b3JlbGVhc2VdOwog
ICAgICAgICAgICAgICAgIGlmICh2aWV3KQogICAgICAgICAgICAgICAgICAgICByZXR1cm4gYWRv
cHRSZWYobmV3IE5ldHNjYXBlUGx1Z2luV2lkZ2V0KHN0YXRpY19jYXN0PFdlYkJhc2VOZXRzY2Fw
ZVBsdWdpblZpZXcgKj4odmlldykpKTsKICAgICAgICAgICAgIH0KQEAgLTIyMDksNyArMjIwNiw3
IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnJlZ2lzdGVyRm9ySWNvbk5vdGlmaWNhdGlv
bihib29sIGxpc3RlbikKICNlbmRpZgogfQogCi1QYXNzUmVmUHRyPEZyYW1lTmV0d29ya2luZ0Nv
bnRleHQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVOZXR3b3JraW5nQ29udGV4dCgpCitS
ZWY8RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5l
dHdvcmtpbmdDb250ZXh0KCkKIHsKICAgICByZXR1cm4gV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4
dDo6Y3JlYXRlKGNvcmUobV93ZWJGcmFtZS5nZXQoKSkpOwogfQpAQCAtMjI4Myw3ICsyMjgwLDcg
QEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlkQ3JlYXRlUXVpY2tMb29rSGFuZGxlKFdl
YkNvcmU6OlF1aWNrTG9va0hhbmRsZSYgaGEKICAgICAgICAgICAgIHJlbW92ZVFMUHJldmlld0Nv
bnZlcnRlckZvclVSTChtX2ZpcnN0UmVxdWVzdFVSTC5nZXQoKSk7CiAgICAgICAgIH0KICAgICB9
OwotICAgIGhhbmRsZS5zZXRDbGllbnQoYWRvcHRSZWYobmV3IFF1aWNrTG9va0RvY3VtZW50V3Jp
dGVyKGhhbmRsZSkpKTsKKyAgICBoYW5kbGUuc2V0Q2xpZW50KGFkb3B0UmVmKCpuZXcgUXVpY2tM
b29rRG9jdW1lbnRXcml0ZXIoaGFuZGxlKSkpOwogfQogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQu
aCBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTmV0d29ya2luZ0Nv
bnRleHQuaAppbmRleCBiMDhkNTZlMThjOWM4ZWU2NDE4MGEyMTRmNWZiYjBlZGUwNGY1YTRkLi45
N2UwZWFkOWYwOGI3ZjM2MTI3OGEzZDc1NmQ2MjhhNWZhZWFhOTE2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0LmgK
KysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVOZXR3b3JraW5n
Q29udGV4dC5oCkBAIC0yMywxNiArMjMsMTUgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHRfaAotI2Rl
ZmluZSBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVk
ZSA8V2ViQ29yZS9GcmFtZU5ldHdvcmtpbmdDb250ZXh0Lmg+CiAKIGNsYXNzIFdlYkZyYW1lTmV0
d29ya2luZ0NvbnRleHQgOiBwdWJsaWMgV2ViQ29yZTo6RnJhbWVOZXR3b3JraW5nQ29udGV4dCB7
CiBwdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8V2ViRnJhbWVOZXR3b3JraW5nQ29udGV4
dD4gY3JlYXRlKFdlYkNvcmU6OkZyYW1lKiBmcmFtZSkKKyAgICBzdGF0aWMgUmVmPFdlYkZyYW1l
TmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZShXZWJDb3JlOjpGcmFtZSogZnJhbWUpCiAgICAgewot
ICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQoZnJh
bWUpKTsKKyAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgV2ViRnJhbWVOZXR3b3JraW5nQ29u
dGV4dChmcmFtZSkpOwogICAgIH0KIAogICAgIHN0YXRpYyBXZWJDb3JlOjpOZXR3b3JrU3RvcmFn
ZVNlc3Npb24mIGVuc3VyZVByaXZhdGVCcm93c2luZ1Nlc3Npb24oKTsKQEAgLTUxLDcgKzUwLDQg
QEAgcHJpdmF0ZToKICAgICBTdHJpbmcgc291cmNlQXBwbGljYXRpb25JZGVudGlmaWVyKCkgY29u
c3Qgb3ZlcnJpZGU7CiAgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkRXJyb3IoY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgY29uc3Qgb3ZlcnJpZGU7CiAgICAgV2ViQ29y
ZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uJiBzdG9yYWdlU2Vzc2lvbigpIGNvbnN0IG92ZXJyaWRl
OwotCiB9OwotCi0jZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVT
dXBwb3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9X
ZWJDb3JlU3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0Lm1tCmluZGV4IDkzZTc0YmJl
NjI4NGI2M2MyMzIxMjlkMTc0OGUwZDkxNjJkMWExOWMuLmVlZjcwMmM1NmZkMGVkNjdkMzcwZjM0
YTY2OTllMjUzNjcyZDgwNGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVT
dXBwb3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQubW0KKysrIGIvU291cmNlL1dlYktpdC9t
YWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dC5tbQpAQCAtNDcsMTYg
KzQ3LDEzIEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogTmV0d29ya1N0b3JhZ2VTZXNzaW9u
JiBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0OjplbnN1cmVQcml2YXRlQnJvd3NpbmdTZXNzaW9u
KCkKIHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwotCiAgICAgTmV0d29ya1N0b3JhZ2VT
ZXNzaW9uOjplbnN1cmVQcml2YXRlQnJvd3NpbmdTZXNzaW9uKFNlc3Npb25JRDo6bGVnYWN5UHJp
dmF0ZVNlc3Npb25JRCgpLCBbW05TQnVuZGxlIG1haW5CdW5kbGVdIGJ1bmRsZUlkZW50aWZpZXJd
KTsKLQogICAgIHJldHVybiAqTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpzdG9yYWdlU2Vzc2lvbihT
ZXNzaW9uSUQ6OmxlZ2FjeVByaXZhdGVTZXNzaW9uSUQoKSk7CiB9CiAKIHZvaWQgV2ViRnJhbWVO
ZXR3b3JraW5nQ29udGV4dDo6ZGVzdHJveVByaXZhdGVCcm93c2luZ1Nlc3Npb24oKQogewogICAg
IEFTU0VSVChpc01haW5UaHJlYWQoKSk7Ci0KICAgICBOZXR3b3JrU3RvcmFnZVNlc3Npb246OmRl
c3Ryb3lTZXNzaW9uKFNlc3Npb25JRDo6bGVnYWN5UHJpdmF0ZVNlc3Npb25JRCgpKTsKIH0KIApA
QCAtNjgsMTkgKzY1LDE5IEBAIGJvb2wgV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dDo6bG9jYWxG
aWxlQ29udGVudFNuaWZmaW5nRW5hYmxlZCgpIGNvbnN0CiBTY2hlZHVsZVBhaXJIYXNoU2V0KiBX
ZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0OjpzY2hlZHVsZWRSdW5Mb29wUGFpcnMoKSBjb25zdAog
ewogICAgIGlmICghZnJhbWUoKSB8fCAhZnJhbWUoKS0+cGFnZSgpKQotICAgICAgICByZXR1cm4g
MDsKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgcmV0dXJuIGZyYW1lKCktPnBhZ2UoKS0+
c2NoZWR1bGVkUnVuTG9vcFBhaXJzKCk7CiB9CiAKIFJldGFpblB0cjxDRkRhdGFSZWY+IFdlYkZy
YW1lTmV0d29ya2luZ0NvbnRleHQ6OnNvdXJjZUFwcGxpY2F0aW9uQXVkaXREYXRhKCkgY29uc3QK
IHsKICAgICBpZiAoIWZyYW1lKCkgfHwgIWZyYW1lKCktPnBhZ2UoKSkKLSAgICAgICAgcmV0dXJu
IDA7CisgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIAogICAgIFdlYlZpZXcgKndlYnZpZXcg
PSBraXQoZnJhbWUoKS0+cGFnZSgpKTsKLSAgICAKICAgICBpZiAoIXdlYnZpZXcpCi0gICAgICAg
IHJldHVybiAwOworICAgICAgICByZXR1cm4gbnVsbHB0cjsKKwogICAgIHJldHVybiByZWludGVy
cHJldF9jYXN0PENGRGF0YVJlZj4od2Vidmlldy5fc291cmNlQXBwbGljYXRpb25BdWRpdERhdGEp
OwogfQogCkBAIC05OCw3ICs5NSw3IEBAIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgV2ViRnJhbWVO
ZXR3b3JraW5nQ29udGV4dDo6c3RvcmFnZVNlc3Npb24oKSBjb25zdAogewogICAgIEFTU0VSVChp
c01haW5UaHJlYWQoKSk7CiAgICAgaWYgKGZyYW1lKCkgJiYgZnJhbWUoKS0+cGFnZSgpLT5zZXNz
aW9uSUQoKS5pc0VwaGVtZXJhbCgpKSB7Ci0gICAgICAgIGlmIChOZXR3b3JrU3RvcmFnZVNlc3Np
b24qIHNlc3Npb24gPSBOZXR3b3JrU3RvcmFnZVNlc3Npb246OnN0b3JhZ2VTZXNzaW9uKFNlc3Np
b25JRDo6bGVnYWN5UHJpdmF0ZVNlc3Npb25JRCgpKSkKKyAgICAgICAgaWYgKGF1dG8qIHNlc3Np
b24gPSBOZXR3b3JrU3RvcmFnZVNlc3Npb246OnN0b3JhZ2VTZXNzaW9uKFNlc3Npb25JRDo6bGVn
YWN5UHJpdmF0ZVNlc3Npb25JRCgpKSkKICAgICAgICAgICAgIHJldHVybiAqc2Vzc2lvbjsKICAg
ICAgICAgLy8gU29tZSByZXF1ZXN0cyBtYXkgc3RpbGwgYmUgY29taW5nIHNob3J0bHkgYmVmb3Jl
IFdlYkNvcmUgdXBkYXRlcyB0aGUgc2Vzc2lvbiBJRCBhbmQgYWZ0ZXIgV2ViS2l0IGRlc3Ryb3lz
IHRoZSBwcml2YXRlIGJyb3dzaW5nIHNlc3Npb24uCiAgICAgICAgIExPR19FUlJPUigiSW52YWxp
ZCBzZXNzaW9uIElELiBQbGVhc2UgZmlsZSBhIGJ1ZyB1bmxlc3MgeW91IGp1c3QgZGlzYWJsZWQg
cHJpdmF0ZSBicm93c2luZywgaW4gd2hpY2ggY2FzZSBpdCdzIGFuIGV4cGVjdGVkIHJhY2UuIik7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJPcGVuUGFu
ZWxSZXN1bHRMaXN0ZW5lci5oIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2Vi
T3BlblBhbmVsUmVzdWx0TGlzdGVuZXIuaAppbmRleCBhY2M2MmNhZDc0MDFjNTVkZmM3ODA4N2Fl
YzlmYmJiNGJhY2MyOTUyLi4wZTQwYWEyZWQyNTkzZDE3NWM1MGQ4ZDA3YTI3YWIwNmRlMWQxZTU2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJPcGVuUGFu
ZWxSZXN1bHRMaXN0ZW5lci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0
L1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29w
eXJpZ2h0IChDKSAyMDA4IEFwcGxlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5
cmlnaHQgKEMpIDIwMDgtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgog
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW1w
b3J0ICJXZWJVSURlbGVnYXRlLmgiCi0jaW1wb3J0IDx3dGYvRm9yd2FyZC5oPgorI2ltcG9ydCA8
d3RmL1JlZlB0ci5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiBjbGFzcyBGaWxlQ2hvb3NlcjsK
QEAgLTMyLDkgKzMyLDkgQEAgY2xhc3MgRmlsZUNob29zZXI7CiAKIEBpbnRlcmZhY2UgV2ViT3Bl
blBhbmVsUmVzdWx0TGlzdGVuZXIgOiBOU09iamVjdCA8V2ViT3BlblBhbmVsUmVzdWx0TGlzdGVu
ZXI+CiB7Ci0gICAgV2ViQ29yZTo6RmlsZUNob29zZXIqIF9jaG9vc2VyOworICAgIFJlZlB0cjxX
ZWJDb3JlOjpGaWxlQ2hvb3Nlcj4gX2Nob29zZXI7CiB9CiAKLS0gKGlkKWluaXRXaXRoQ2hvb3Nl
cjooUGFzc1JlZlB0cjxXZWJDb3JlOjpGaWxlQ2hvb3Nlcj4pY2hvb3NlcjsKKy0gKGlkKWluaXRX
aXRoQ2hvb3NlcjooV2ViQ29yZTo6RmlsZUNob29zZXImKWNob29zZXI7CiAKIEBlbmQKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYk9wZW5QYW5lbFJlc3Vs
dExpc3RlbmVyLm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViT3BlblBh
bmVsUmVzdWx0TGlzdGVuZXIubW0KaW5kZXggYjZiZDI2N2JkZWQ4MWE3YjRmODdmZDhjZjNjZGQw
MGFjNDEyYThlYS4uOGIyNTIwOTA3MDNhZTQ3ZDdiYmFmYWE2NWIzMjZmZWVmY2MzMDQ3YiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViT3BlblBhbmVsUmVz
dWx0TGlzdGVuZXIubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2Vi
T3BlblBhbmVsUmVzdWx0TGlzdGVuZXIubW0KQEAgLTM2LDMwICszNiwxOCBAQCB1c2luZyBuYW1l
c3BhY2UgV2ViQ29yZTsKIAogQGltcGxlbWVudGF0aW9uIFdlYk9wZW5QYW5lbFJlc3VsdExpc3Rl
bmVyCiAKLS0gKGlkKWluaXRXaXRoQ2hvb3NlcjooUGFzc1JlZlB0cjxGaWxlQ2hvb3Nlcj4pY2hv
b3NlcgorLSAoaWQpaW5pdFdpdGhDaG9vc2VyOihGaWxlQ2hvb3NlciYpY2hvb3NlcgogewogICAg
IHNlbGYgPSBbc3VwZXIgaW5pdF07CiAgICAgaWYgKCFzZWxmKQogICAgICAgICByZXR1cm4gbmls
OwotICAgIF9jaG9vc2VyID0gY2hvb3Nlci5sZWFrUmVmKCk7CisgICAgX2Nob29zZXIgPSAmY2hv
b3NlcjsKICAgICByZXR1cm4gc2VsZjsKIH0KIAotI2lmbmRlZiBOREVCVUcKLS0gKHZvaWQpZGVh
bGxvYwotewotICAgIEFTU0VSVCghX2Nob29zZXIpOwotICAgIFtzdXBlciBkZWFsbG9jXTsKLX0K
LSNlbmRpZgotCiAtICh2b2lkKWNhbmNlbAogewotICAgIEFTU0VSVChfY2hvb3Nlcik7Ci0gICAg
aWYgKCFfY2hvb3NlcikKLSAgICAgICAgcmV0dXJuOwotICAgIF9jaG9vc2VyLT5kZXJlZigpOwot
ICAgIF9jaG9vc2VyID0gMDsKKyAgICBfY2hvb3NlciA9IG51bGxwdHI7CiB9CiAKIC0gKHZvaWQp
Y2hvb3NlRmlsZW5hbWU6KE5TU3RyaW5nICopZmlsZW5hbWUKQEAgLTY4LDggKzU2LDcgQEAgLSAo
dm9pZCljaG9vc2VGaWxlbmFtZTooTlNTdHJpbmcgKilmaWxlbmFtZQogICAgIGlmICghX2Nob29z
ZXIpCiAgICAgICAgIHJldHVybjsKICAgICBfY2hvb3Nlci0+Y2hvb3NlRmlsZShmaWxlbmFtZSk7
Ci0gICAgX2Nob29zZXItPmRlcmVmKCk7Ci0gICAgX2Nob29zZXIgPSAwOworICAgIF9jaG9vc2Vy
ID0gbnVsbHB0cjsKIH0KIAogLSAodm9pZCljaG9vc2VGaWxlbmFtZXM6KE5TQXJyYXkgKilmaWxl
bmFtZXMKQEAgLTgyLDExICs2OSwxMSBAQCAtICh2b2lkKWNob29zZUZpbGVuYW1lczooTlNBcnJh
eSAqKWZpbGVuYW1lcwogICAgIGZvciAoTlNVSW50ZWdlciBpID0gMDsgaSA8IGNvdW50OyBpKysp
CiAgICAgICAgIG5hbWVzW2ldID0gW2ZpbGVuYW1lcyBvYmplY3RBdEluZGV4OmldOwogICAgIF9j
aG9vc2VyLT5jaG9vc2VGaWxlcyhuYW1lcyk7Ci0gICAgX2Nob29zZXItPmRlcmVmKCk7Ci0gICAg
X2Nob29zZXIgPSAwOworICAgIF9jaG9vc2VyID0gbnVsbHB0cjsKIH0KIAogI2lmIFBMQVRGT1JN
KElPUykKKwogLSAodm9pZCljaG9vc2VGaWxlbmFtZTooTlNTdHJpbmcgKilmaWxlbmFtZSBkaXNw
bGF5U3RyaW5nOihOU1N0cmluZyAqKWRpc3BsYXlTdHJpbmcgaWNvbkltYWdlOihDR0ltYWdlUmVm
KWltYWdlUmVmCiB7CiAgICAgW3NlbGYgY2hvb3NlRmlsZW5hbWVzOltOU0FycmF5IGFycmF5V2l0
aE9iamVjdDpmaWxlbmFtZV0gZGlzcGxheVN0cmluZzpkaXNwbGF5U3RyaW5nIGljb25JbWFnZTpp
bWFnZVJlZl07CkBAIC05OCwxOCArODUsMTQgQEAgLSAodm9pZCljaG9vc2VGaWxlbmFtZXM6KE5T
QXJyYXkgKilmaWxlbmFtZXMgZGlzcGxheVN0cmluZzooTlNTdHJpbmcgKilkaXNwbGF5U3QKICAg
ICBpZiAoIV9jaG9vc2VyKQogICAgICAgICByZXR1cm47CiAKLSAgICBSZWZQdHI8SWNvbj4gaWNv
biA9IEljb246OmNyZWF0ZUljb25Gb3JJbWFnZShpbWFnZVJlZik7Ci0KLSAgICBOU1VJbnRlZ2Vy
IGNvdW50ID0gW2ZpbGVuYW1lcyBjb3VudF07Ci0gICAgVmVjdG9yPFN0cmluZz4gbmFtZXMoY291
bnQpOwotICAgIGZvciAoTlNVSW50ZWdlciBpID0gMDsgaSA8IGNvdW50OyArK2kpCi0gICAgICAg
IG5hbWVzW2ldID0gW2ZpbGVuYW1lcyBvYmplY3RBdEluZGV4OmldOwotICAgIF9jaG9vc2VyLT5j
aG9vc2VNZWRpYUZpbGVzKG5hbWVzLCBkaXNwbGF5U3RyaW5nLCBpY29uLmdldCgpKTsKLSAgICAK
LSAgICAvLyBGSVhNRTogd2Ugc2hvdWxkbid0IGJlIG1hbnVhbGx5IGRlcmVmKCknaW5nIGhlcmUu
Ci0gICAgX2Nob29zZXItPmRlcmVmKCk7CisgICAgVmVjdG9yPFN0cmluZz4gbmFtZXM7CisgICAg
bmFtZXMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShbZmlsZW5hbWVzIGNvdW50XSk7CisgICAgZm9y
IChOU1N0cmluZyAqZmlsZW5hbWUgaW4gZmlsZW5hbWVzKQorICAgICAgICBuYW1lcy51bmNoZWNr
ZWRBcHBlbmQoZmlsZW5hbWUpOworICAgIF9jaG9vc2VyLT5jaG9vc2VNZWRpYUZpbGVzKG5hbWVz
LCBkaXNwbGF5U3RyaW5nLCBJY29uOjpjcmVhdGVJY29uRm9ySW1hZ2UoaW1hZ2VSZWYpLmdldCgp
KTsKICAgICBfY2hvb3NlciA9IG51bGxwdHI7CiB9CisKICNlbmRpZgogCiBAZW5kCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkFyY2hpdmUubW0gYi9Tb3VyY2UvV2Vi
S2l0L21hYy9XZWJWaWV3L1dlYkFyY2hpdmUubW0KaW5kZXggZTk2YzYwN2NmYjg0Yzg1YTFlYmZh
YWJkYzMxY2ViYTA0ZWE1YzNlOC4uZmY3NTQ2ZDg1ZjhhNTVhNTliODBhYWYxN2I1NGU3MmVhNjFm
OTY3OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJBcmNoaXZlLm1t
CisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViQXJjaGl2ZS5tbQpAQCAtMTc0LDI1
ICsxNzQsMTYgQEAgLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoTWFpblJlc291cmNlOihXZWJSZXNv
dXJjZSAqKW1haW5SZXNvdXJjZSBzdWJyZXNvdXJjZXM6KE4KICAgICAgICAgW3NlbGYgcmVsZWFz
ZV07CiAgICAgICAgIHJldHVybiBuaWw7CiAgICAgfQotICAgIAotICAgIFJlZlB0cjxBcmNoaXZl
UmVzb3VyY2U+IGNvcmVNYWluUmVzb3VyY2UgPSBtYWluUmVzb3VyY2UgPyBbbWFpblJlc291cmNl
IF9jb3JlUmVzb3VyY2VdIDogbnVsbHB0cjsKIAotICAgIFZlY3RvcjxSZWZQdHI8QXJjaGl2ZVJl
c291cmNlPj4gY29yZVJlc291cmNlczsKKyAgICBWZWN0b3I8UmVmPEFyY2hpdmVSZXNvdXJjZT4+
IGNvcmVSZXNvdXJjZXM7CiAgICAgZm9yIChXZWJSZXNvdXJjZSAqc3VicmVzb3VyY2UgaW4gc3Vi
cmVzb3VyY2VzKQogICAgICAgICBjb3JlUmVzb3VyY2VzLmFwcGVuZChbc3VicmVzb3VyY2UgX2Nv
cmVSZXNvdXJjZV0pOwogCi0gICAgVmVjdG9yPFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPj4gY29y
ZUFyY2hpdmVzOworICAgIFZlY3RvcjxSZWY8TGVnYWN5V2ViQXJjaGl2ZT4+IGNvcmVBcmNoaXZl
czsKICAgICBmb3IgKFdlYkFyY2hpdmUgKnN1YmZyYW1lQXJjaGl2ZSBpbiBzdWJmcmFtZUFyY2hp
dmVzKQotICAgICAgICBjb3JlQXJjaGl2ZXMuYXBwZW5kKFtzdWJmcmFtZUFyY2hpdmUtPl9wcml2
YXRlIGNvcmVBcmNoaXZlXSk7Ci0KLSAgICBhdXRvIGNvcmVBcmNoaXZlID0gTGVnYWN5V2ViQXJj
aGl2ZTo6Y3JlYXRlKFdURk1vdmUoY29yZU1haW5SZXNvdXJjZSksIFdURk1vdmUoY29yZVJlc291
cmNlcyksIFdURk1vdmUoY29yZUFyY2hpdmVzKSk7Ci0gICAgaWYgKCFjb3JlQXJjaGl2ZSkgewot
ICAgICAgICBbc2VsZiByZWxlYXNlXTsKLSAgICAgICAgcmV0dXJuIG5pbDsKLSAgICB9Ci0KLSAg
ICBbX3ByaXZhdGUgc2V0Q29yZUFyY2hpdmU6V1RGTW92ZShjb3JlQXJjaGl2ZSldOworICAgICAg
ICBjb3JlQXJjaGl2ZXMuYXBwZW5kKCpbc3ViZnJhbWVBcmNoaXZlLT5fcHJpdmF0ZSBjb3JlQXJj
aGl2ZV0pOwogCisgICAgW19wcml2YXRlIHNldENvcmVBcmNoaXZlOkxlZ2FjeVdlYkFyY2hpdmU6
OmNyZWF0ZShbbWFpblJlc291cmNlIF9jb3JlUmVzb3VyY2VdLCBXVEZNb3ZlKGNvcmVSZXNvdXJj
ZXMpLCBXVEZNb3ZlKGNvcmVBcmNoaXZlcykpXTsKICAgICByZXR1cm4gc2VsZjsKIH0KIApAQCAt
Mjc1LDkgKzI2NiwxMCBAQCAtIChXZWJSZXNvdXJjZSAqKW1haW5SZXNvdXJjZQogICAgIC8vIEN1
cnJlbnRseSBmcm9tIFdlYktpdCBBUEkgcGVyc3BlY3RpdmUsIFdlYkFyY2hpdmVzIGFyZSBlbnRp
cmVseSBpbW11dGFibGUgb25jZSBjcmVhdGVkCiAgICAgLy8gSWYgdGhleSBldmVyIGJlY29tZSBt
dXRhYmxlLCB3ZSdsbCBuZWVkIHRvIHJldGhpbmsgdGhpcy4gCiAgICAgaWYgKCFfcHJpdmF0ZS0+
Y2FjaGVkTWFpblJlc291cmNlKSB7Ci0gICAgICAgIExlZ2FjeVdlYkFyY2hpdmUqIGNvcmVBcmNo
aXZlID0gW19wcml2YXRlIGNvcmVBcmNoaXZlXTsKLSAgICAgICAgaWYgKGNvcmVBcmNoaXZlKQot
ICAgICAgICAgICAgX3ByaXZhdGUtPmNhY2hlZE1haW5SZXNvdXJjZSA9IFtbV2ViUmVzb3VyY2Ug
YWxsb2NdIF9pbml0V2l0aENvcmVSZXNvdXJjZTpjb3JlQXJjaGl2ZS0+bWFpblJlc291cmNlKCld
OworICAgICAgICBpZiAoYXV0byogY29yZUFyY2hpdmUgPSBbX3ByaXZhdGUgY29yZUFyY2hpdmVd
KSB7CisgICAgICAgICAgICBpZiAoYXV0byogbWFpblJlc291cmNlID0gY29yZUFyY2hpdmUtPm1h
aW5SZXNvdXJjZSgpKQorICAgICAgICAgICAgICAgIF9wcml2YXRlLT5jYWNoZWRNYWluUmVzb3Vy
Y2UgPSBbW1dlYlJlc291cmNlIGFsbG9jXSBfaW5pdFdpdGhDb3JlUmVzb3VyY2U6Km1haW5SZXNv
dXJjZV07CisgICAgICAgIH0KICAgICB9CiAgICAgCiAgICAgcmV0dXJuIFtbX3ByaXZhdGUtPmNh
Y2hlZE1haW5SZXNvdXJjZSByZXRhaW5dIGF1dG9yZWxlYXNlXTsKQEAgLTI5NCwxMiArMjg2LDEx
IEBAIC0gKE5TQXJyYXkgKilzdWJyZXNvdXJjZXMKICAgICAgICAgaWYgKCFjb3JlQXJjaGl2ZSkK
ICAgICAgICAgICAgIF9wcml2YXRlLT5jYWNoZWRTdWJyZXNvdXJjZXMgPSBbW05TQXJyYXkgYWxs
b2NdIGluaXRdOwogICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIGNvbnN0IFZlY3RvcjxSZWZQ
dHI8QXJjaGl2ZVJlc291cmNlPj4mIHN1YnJlc291cmNlcyhjb3JlQXJjaGl2ZS0+c3VicmVzb3Vy
Y2VzKCkpOworICAgICAgICAgICAgYXV0byYgc3VicmVzb3VyY2VzID0gY29yZUFyY2hpdmUtPnN1
YnJlc291cmNlcygpOwogICAgICAgICAgICAgTlNNdXRhYmxlQXJyYXkgKm11dGFibGVBcnJheSA9
IFtbTlNNdXRhYmxlQXJyYXkgYWxsb2NdIGluaXRXaXRoQ2FwYWNpdHk6c3VicmVzb3VyY2VzLnNp
emUoKV07CiAgICAgICAgICAgICBfcHJpdmF0ZS0+Y2FjaGVkU3VicmVzb3VyY2VzID0gbXV0YWJs
ZUFycmF5OwotICAgICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IHN1YnJlc291cmNl
cy5zaXplKCk7ICsraSkgewotICAgICAgICAgICAgICAgIFdlYlJlc291cmNlICpyZXNvdXJjZSA9
IFtbV2ViUmVzb3VyY2UgYWxsb2NdIF9pbml0V2l0aENvcmVSZXNvdXJjZTpzdWJyZXNvdXJjZXNb
aV0uZ2V0KCldOwotICAgICAgICAgICAgICAgIGlmIChyZXNvdXJjZSkgeworICAgICAgICAgICAg
Zm9yIChhdXRvJiBzdWJyZXNvdXJjZSA6IHN1YnJlc291cmNlcykgeworICAgICAgICAgICAgICAg
IGlmIChXZWJSZXNvdXJjZSAqcmVzb3VyY2UgPSBbW1dlYlJlc291cmNlIGFsbG9jXSBfaW5pdFdp
dGhDb3JlUmVzb3VyY2U6c3VicmVzb3VyY2UuZ2V0KCldKSB7CiAgICAgICAgICAgICAgICAgICAg
IFttdXRhYmxlQXJyYXkgYWRkT2JqZWN0OnJlc291cmNlXTsKICAgICAgICAgICAgICAgICAgICAg
W3Jlc291cmNlIHJlbGVhc2VdOwogICAgICAgICAgICAgICAgIH0KQEAgLTMxOCwxNSArMzA5LDE1
IEBAIC0gKE5TQXJyYXkgKilzdWJmcmFtZUFyY2hpdmVzCiAgICAgLy8gQ3VycmVudGx5IGZyb20g
V2ViS2l0IEFQSSBwZXJzcGVjdGl2ZSwgV2ViQXJjaGl2ZXMgYXJlIGVudGlyZWx5IGltbXV0YWJs
ZSBvbmNlIGNyZWF0ZWQKICAgICAvLyBJZiB0aGV5IGV2ZXIgYmVjb21lIG11dGFibGUsIHdlJ2xs
IG5lZWQgdG8gcmV0aGluayB0aGlzLiAgCiAgICAgaWYgKCFfcHJpdmF0ZS0+Y2FjaGVkU3ViZnJh
bWVBcmNoaXZlcykgewotICAgICAgICBMZWdhY3lXZWJBcmNoaXZlKiBjb3JlQXJjaGl2ZSA9IFtf
cHJpdmF0ZSBjb3JlQXJjaGl2ZV07CisgICAgICAgIGF1dG8qIGNvcmVBcmNoaXZlID0gW19wcml2
YXRlIGNvcmVBcmNoaXZlXTsKICAgICAgICAgaWYgKCFjb3JlQXJjaGl2ZSkKICAgICAgICAgICAg
IF9wcml2YXRlLT5jYWNoZWRTdWJmcmFtZUFyY2hpdmVzID0gW1tOU0FycmF5IGFsbG9jXSBpbml0
XTsKICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICBjb25zdCBWZWN0b3I8UmVmUHRyPEFyY2hp
dmU+PiYgc3ViZnJhbWVBcmNoaXZlcyhjb3JlQXJjaGl2ZS0+c3ViZnJhbWVBcmNoaXZlcygpKTsK
LSAgICAgICAgICAgIE5TTXV0YWJsZUFycmF5ICptdXRhYmxlQXJyYXkgPSBbW05TTXV0YWJsZUFy
cmF5IGFsbG9jXSBpbml0V2l0aENhcGFjaXR5OnN1YmZyYW1lQXJjaGl2ZXMuc2l6ZSgpXTsKKyAg
ICAgICAgICAgIGF1dG8mIHN1YmZyYW1lQXJjaGl2ZXMgPSBjb3JlQXJjaGl2ZS0+c3ViZnJhbWVB
cmNoaXZlcygpOworICAgICAgICAgICAgYXV0byBtdXRhYmxlQXJyYXkgPSBbW05TTXV0YWJsZUFy
cmF5IGFsbG9jXSBpbml0V2l0aENhcGFjaXR5OnN1YmZyYW1lQXJjaGl2ZXMuc2l6ZSgpXTsKICAg
ICAgICAgICAgIF9wcml2YXRlLT5jYWNoZWRTdWJmcmFtZUFyY2hpdmVzID0gbXV0YWJsZUFycmF5
OwogICAgICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IHN1YmZyYW1lQXJjaGl2ZXMu
c2l6ZSgpOyArK2kpIHsKLSAgICAgICAgICAgICAgICBXZWJBcmNoaXZlICphcmNoaXZlID0gW1tX
ZWJBcmNoaXZlIGFsbG9jXSBfaW5pdFdpdGhDb3JlTGVnYWN5V2ViQXJjaGl2ZTooTGVnYWN5V2Vi
QXJjaGl2ZSAqKXN1YmZyYW1lQXJjaGl2ZXNbaV0uZ2V0KCldOworICAgICAgICAgICAgICAgIFdl
YkFyY2hpdmUgKmFyY2hpdmUgPSBbW1dlYkFyY2hpdmUgYWxsb2NdIF9pbml0V2l0aENvcmVMZWdh
Y3lXZWJBcmNoaXZlOihMZWdhY3lXZWJBcmNoaXZlICopc3ViZnJhbWVBcmNoaXZlc1tpXS5wdHIo
KV07CiAgICAgICAgICAgICAgICAgW211dGFibGVBcnJheSBhZGRPYmplY3Q6YXJjaGl2ZV07CiAg
ICAgICAgICAgICAgICAgW2FyY2hpdmUgcmVsZWFzZV07CiAgICAgICAgICAgICB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkRhdGFTb3VyY2UubW0gYi9Tb3VyY2Uv
V2ViS2l0L21hYy9XZWJWaWV3L1dlYkRhdGFTb3VyY2UubW0KaW5kZXggNjA2NDcyMmE1NjM2MTQ4
NTg0MmNmNTdmZDkzMGY3NTU4OGQ2ZThmNi4uMThjZjlmN2RiNGM2Mzg3ODQ3MTcwODkyOGJhYjg5
NThhNDc5MjcwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJEYXRh
U291cmNlLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViRGF0YVNvdXJjZS5t
bQpAQCAtMTY2LDI1ICsxNjYsMjIgQEAgLSAoTlNFcnJvciAqKV9tYWluRG9jdW1lbnRFcnJvcgog
CiAtICh2b2lkKV9hZGRTdWJmcmFtZUFyY2hpdmVzOihOU0FycmF5ICopc3ViZnJhbWVBcmNoaXZl
cwogewotICAgIC8vIEZJWE1FOiBUaGlzIFNQSSBpcyBwb29yLCBwb29yIGRlc2lnbi4gIENhbiB3
ZSBjb21lIHVwIHdpdGggYW5vdGhlciBzb2x1dGlvbiBmb3IgdGhvc2Ugd2hvIG5lZWQgaXQ/Ci0g
ICAgTlNFbnVtZXJhdG9yICplbnVtZXJhdG9yID0gW3N1YmZyYW1lQXJjaGl2ZXMgb2JqZWN0RW51
bWVyYXRvcl07Ci0gICAgV2ViQXJjaGl2ZSAqYXJjaGl2ZTsKLSAgICB3aGlsZSAoKGFyY2hpdmUg
PSBbZW51bWVyYXRvciBuZXh0T2JqZWN0XSkgIT0gbmlsKQotICAgICAgICB0b1ByaXZhdGUoX3By
aXZhdGUpLT5sb2FkZXItPmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoW2FyY2hpdmUgX2NvcmVMZWdh
Y3lXZWJBcmNoaXZlXSk7CisgICAgLy8gRklYTUU6IFRoaXMgU1BJIGlzIHBvb3IsIHBvb3IgZGVz
aWduLiBDYW4gd2UgY29tZSB1cCB3aXRoIGFub3RoZXIgc29sdXRpb24gZm9yIHRob3NlIHdobyBu
ZWVkIGl0PworICAgIGZvciAoV2ViQXJjaGl2ZSAqYXJjaGl2ZSBpbiBzdWJmcmFtZUFyY2hpdmVz
KQorICAgICAgICB0b1ByaXZhdGUoX3ByaXZhdGUpLT5sb2FkZXItPmFkZEFsbEFyY2hpdmVSZXNv
dXJjZXMoKlthcmNoaXZlIF9jb3JlTGVnYWN5V2ViQXJjaGl2ZV0pOwogfQogCiAjaWYgIVBMQVRG
T1JNKElPUykKKwogLSAoTlNGaWxlV3JhcHBlciAqKV9maWxlV3JhcHBlckZvclVSTDooTlNVUkwg
KilVUkwKIHsKICAgICBpZiAoW1VSTCBpc0ZpbGVVUkxdKQogICAgICAgICByZXR1cm4gW1tbTlNG
aWxlV3JhcHBlciBhbGxvY10gaW5pdFdpdGhVUkw6W1VSTCBVUkxCeVJlc29sdmluZ1N5bWxpbmtz
SW5QYXRoXSBvcHRpb25zOjAgZXJyb3I6bnVsbHB0cl0gYXV0b3JlbGVhc2VdOwogCi0gICAgV2Vi
UmVzb3VyY2UgKnJlc291cmNlID0gW3NlbGYgc3VicmVzb3VyY2VGb3JVUkw6VVJMXTsKLSAgICBp
ZiAocmVzb3VyY2UpCisgICAgaWYgKGF1dG8gcmVzb3VyY2UgPSBbc2VsZiBzdWJyZXNvdXJjZUZv
clVSTDpVUkxdKQogICAgICAgICByZXR1cm4gW3Jlc291cmNlIF9maWxlV3JhcHBlclJlcHJlc2Vu
dGF0aW9uXTsKLSAgICAKLSAgICBOU0NhY2hlZFVSTFJlc3BvbnNlICpjYWNoZWRSZXNwb25zZSA9
IFtbc2VsZiBfd2ViVmlld10gX2NhY2hlZFJlc3BvbnNlRm9yVVJMOlVSTF07Ci0gICAgaWYgKGNh
Y2hlZFJlc3BvbnNlKSB7CisKKyAgICBpZiAoYXV0byBjYWNoZWRSZXNwb25zZSA9IFtbc2VsZiBf
d2ViVmlld10gX2NhY2hlZFJlc3BvbnNlRm9yVVJMOlVSTF0pIHsKICAgICAgICAgTlNGaWxlV3Jh
cHBlciAqd3JhcHBlciA9IFtbW05TRmlsZVdyYXBwZXIgYWxsb2NdIGluaXRSZWd1bGFyRmlsZVdp
dGhDb250ZW50czpbY2FjaGVkUmVzcG9uc2UgZGF0YV1dIGF1dG9yZWxlYXNlXTsKICAgICAgICAg
W3dyYXBwZXIgc2V0UHJlZmVycmVkRmlsZW5hbWU6W1tjYWNoZWRSZXNwb25zZSByZXNwb25zZV0g
c3VnZ2VzdGVkRmlsZW5hbWVdXTsKICAgICAgICAgcmV0dXJuIHdyYXBwZXI7CkBAIC0xOTIsNiAr
MTg5LDcgQEAgLSAoTlNGaWxlV3JhcHBlciAqKV9maWxlV3JhcHBlckZvclVSTDooTlNVUkwgKilV
UkwKICAgICAKICAgICByZXR1cm4gbmlsOwogfQorCiAjZW5kaWYKIAogLSAoTlNTdHJpbmcgKilf
cmVzcG9uc2VNSU1FVHlwZQpAQCAtMzA1LDkgKzMwMywxMCBAQCAtIChET01Eb2N1bWVudEZyYWdt
ZW50ICopX2RvY3VtZW50RnJhZ21lbnRXaXRoQXJjaGl2ZTooV2ViQXJjaGl2ZSAqKWFyY2hpdmUK
ICAgICAgICAgTlNTdHJpbmcgKk1JTUVUeXBlID0gW21haW5SZXNvdXJjZSBNSU1FVHlwZV07CiAg
ICAgICAgIGlmIChbV2ViVmlldyBjYW5TaG93TUlNRVR5cGVBc0hUTUw6TUlNRVR5cGVdKSB7CiAg
ICAgICAgICAgICBOU1N0cmluZyAqbWFya3VwU3RyaW5nID0gW1tOU1N0cmluZyBhbGxvY10gaW5p
dFdpdGhEYXRhOlttYWluUmVzb3VyY2UgZGF0YV0gZW5jb2Rpbmc6TlNVVEY4U3RyaW5nRW5jb2Rp
bmddOworCiAgICAgICAgICAgICAvLyBGSVhNRTogc2VlbXMgcG9vciBmb3JtIHRvIGRvIHRoaXMg
YXMgYSBzaWRlIGVmZmVjdCBvZiBnZXR0aW5nIGEgZG9jdW1lbnQgZnJhZ21lbnQKICAgICAgICAg
ICAgIGlmICh0b1ByaXZhdGUoX3ByaXZhdGUpLT5sb2FkZXIpCi0gICAgICAgICAgICAgICAgdG9Q
cml2YXRlKF9wcml2YXRlKS0+bG9hZGVyLT5hZGRBbGxBcmNoaXZlUmVzb3VyY2VzKFthcmNoaXZl
IF9jb3JlTGVnYWN5V2ViQXJjaGl2ZV0pOworICAgICAgICAgICAgICAgIHRvUHJpdmF0ZShfcHJp
dmF0ZSktPmxvYWRlci0+YWRkQWxsQXJjaGl2ZVJlc291cmNlcygqW2FyY2hpdmUgX2NvcmVMZWdh
Y3lXZWJBcmNoaXZlXSk7CiAKICAgICAgICAgICAgIERPTURvY3VtZW50RnJhZ21lbnQgKmZyYWdt
ZW50ID0gW1tzZWxmIHdlYkZyYW1lXSBfZG9jdW1lbnRGcmFnbWVudFdpdGhNYXJrdXBTdHJpbmc6
bWFya3VwU3RyaW5nIGJhc2VVUkxTdHJpbmc6W1ttYWluUmVzb3VyY2UgVVJMXSBfd2ViX29yaWdp
bmFsRGF0YUFzU3RyaW5nXV07CiAgICAgICAgICAgICBbbWFya3VwU3RyaW5nIHJlbGVhc2VdOwpA
QCAtMzI0LDcgKzMyMyw3IEBAIC0gKERPTURvY3VtZW50RnJhZ21lbnQgKilfZG9jdW1lbnRGcmFn
bWVudFdpdGhJbWFnZVJlc291cmNlOihXZWJSZXNvdXJjZSAqKXJlc291CiB7CiAgICAgRE9NRWxl
bWVudCAqaW1hZ2VFbGVtZW50ID0gW3NlbGYgX2ltYWdlRWxlbWVudFdpdGhJbWFnZVJlc291cmNl
OnJlc291cmNlXTsKICAgICBpZiAoIWltYWdlRWxlbWVudCkKLSAgICAgICAgcmV0dXJuIDA7Cisg
ICAgICAgIHJldHVybiBuaWw7CiAgICAgRE9NRG9jdW1lbnRGcmFnbWVudCAqZnJhZ21lbnQgPSBb
W1tzZWxmIHdlYkZyYW1lXSBET01Eb2N1bWVudF0gY3JlYXRlRG9jdW1lbnRGcmFnbWVudF07CiAg
ICAgW2ZyYWdtZW50IGFwcGVuZENoaWxkOmltYWdlRWxlbWVudF07CiAgICAgcmV0dXJuIGZyYWdt
ZW50OwpAQCAtNTE5LDMyICs1MTgsMzEgQEAgLSAoV2ViQXJjaGl2ZSAqKXdlYkFyY2hpdmUKIC0g
KFdlYlJlc291cmNlICopbWFpblJlc291cmNlCiB7CiAgICAgYXV0byBjb3JlUmVzb3VyY2UgPSB0
b1ByaXZhdGUoX3ByaXZhdGUpLT5sb2FkZXItPm1haW5SZXNvdXJjZSgpOwotICAgIHJldHVybiBb
W1tXZWJSZXNvdXJjZSBhbGxvY10gX2luaXRXaXRoQ29yZVJlc291cmNlOldURk1vdmUoY29yZVJl
c291cmNlKV0gYXV0b3JlbGVhc2VdOworICAgIGlmICghY29yZVJlc291cmNlKQorICAgICAgICBy
ZXR1cm4gbmlsOworICAgIHJldHVybiBbW1tXZWJSZXNvdXJjZSBhbGxvY10gX2luaXRXaXRoQ29y
ZVJlc291cmNlOmNvcmVSZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpXSBhdXRvcmVsZWFzZV07CiB9
CiAKIC0gKE5TQXJyYXkgKilzdWJyZXNvdXJjZXMKIHsKICAgICBhdXRvIGNvcmVTdWJyZXNvdXJj
ZXMgPSB0b1ByaXZhdGUoX3ByaXZhdGUpLT5sb2FkZXItPnN1YnJlc291cmNlcygpOwotCiAgICAg
YXV0byBzdWJyZXNvdXJjZXMgPSBhZG9wdE5TKFtbTlNNdXRhYmxlQXJyYXkgYWxsb2NdIGluaXRX
aXRoQ2FwYWNpdHk6Y29yZVN1YnJlc291cmNlcy5zaXplKCldKTsKLSAgICBmb3IgKGNvbnN0IGF1
dG8mIGNvcmVTdWJyZXNvdXJjZSA6IGNvcmVTdWJyZXNvdXJjZXMpIHsKLSAgICAgICAgaWYgKGF1
dG8gcmVzb3VyY2UgPSBhZG9wdE5TKFtbV2ViUmVzb3VyY2UgYWxsb2NdIF9pbml0V2l0aENvcmVS
ZXNvdXJjZTpjb3JlU3VicmVzb3VyY2VdKSkKKyAgICBmb3IgKGF1dG8mIGNvcmVTdWJyZXNvdXJj
ZSA6IGNvcmVTdWJyZXNvdXJjZXMpIHsKKyAgICAgICAgaWYgKGF1dG8gcmVzb3VyY2UgPSBhZG9w
dE5TKFtbV2ViUmVzb3VyY2UgYWxsb2NdIF9pbml0V2l0aENvcmVSZXNvdXJjZTpjb3JlU3VicmVz
b3VyY2UuY29weVJlZigpXSkpCiAgICAgICAgICAgICBbc3VicmVzb3VyY2VzIGFkZE9iamVjdDpy
ZXNvdXJjZS5nZXQoKV07CiAgICAgfQotCiAgICAgcmV0dXJuIHN1YnJlc291cmNlcy5hdXRvcmVs
ZWFzZSgpOwogfQogCiAtIChXZWJSZXNvdXJjZSAqKXN1YnJlc291cmNlRm9yVVJMOihOU1VSTCAq
KVVSTAogewotICAgIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IHN1YnJlc291cmNlID0gdG9Qcml2
YXRlKF9wcml2YXRlKS0+bG9hZGVyLT5zdWJyZXNvdXJjZShVUkwpOwotICAgIAotICAgIHJldHVy
biBzdWJyZXNvdXJjZSA/IFtbW1dlYlJlc291cmNlIGFsbG9jXSBfaW5pdFdpdGhDb3JlUmVzb3Vy
Y2U6c3VicmVzb3VyY2UuZ2V0KCldIGF1dG9yZWxlYXNlXSA6IG5pbDsKKyAgICBhdXRvIHN1YnJl
c291cmNlID0gdG9Qcml2YXRlKF9wcml2YXRlKS0+bG9hZGVyLT5zdWJyZXNvdXJjZShVUkwpOwor
ICAgIHJldHVybiBzdWJyZXNvdXJjZSA/IFtbW1dlYlJlc291cmNlIGFsbG9jXSBfaW5pdFdpdGhD
b3JlUmVzb3VyY2U6c3VicmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKV0gYXV0b3JlbGVhc2VdIDog
bmlsOwogfQogCiAtICh2b2lkKWFkZFN1YnJlc291cmNlOihXZWJSZXNvdXJjZSAqKXN1YnJlc291
cmNlCiB7ICAgIAotICAgIHRvUHJpdmF0ZShfcHJpdmF0ZSktPmxvYWRlci0+YWRkQXJjaGl2ZVJl
c291cmNlKCpbc3VicmVzb3VyY2UgX2NvcmVSZXNvdXJjZV0pOworICAgIHRvUHJpdmF0ZShfcHJp
dmF0ZSktPmxvYWRlci0+YWRkQXJjaGl2ZVJlc291cmNlKFtzdWJyZXNvdXJjZSBfY29yZVJlc291
cmNlXSk7CiB9CiAKIEBlbmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcv
V2ViUmVzb3VyY2UubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlJlc291cmNlLm1t
CmluZGV4IGU1ZDhmZDRhZmJkNGQyZmFjOWNkMzkyMTkxNmE0OWI4ZjE3MzVlZjYuLmIzYmI3NWJh
OWQxOGRjNjkwOGFiZWU5YzJkY2IwNjY1YjExNGFmYjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvbWFjL1dlYlZpZXcvV2ViUmVzb3VyY2UubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2Vi
Vmlldy9XZWJSZXNvdXJjZS5tbQpAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMp
IDIwMDUsIDIwMDYsIDIwMDcsIDIwMDggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICogQ29weXJpZ2h0IChDKSAyMDA1LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC01Nyw5ICs1Nyw5IEBAIHN0YXRp
YyBOU1N0cmluZyAqIGNvbnN0IFdlYlJlc291cmNlUmVzcG9uc2VLZXkgPSAgICAgICAgICBAIldl
YlJlc291cmNlUmVzcG9uc2UiCiAKIEBpbnRlcmZhY2UgV2ViUmVzb3VyY2VQcml2YXRlIDogTlNP
YmplY3QgewogQHB1YmxpYwotICAgIEFyY2hpdmVSZXNvdXJjZSogY29yZVJlc291cmNlOworICAg
IFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IGNvcmVSZXNvdXJjZTsKIH0KLS0gKGluc3RhbmNldHlw
ZSlpbml0V2l0aENvcmVSZXNvdXJjZTooUGFzc1JlZlB0cjxBcmNoaXZlUmVzb3VyY2U+KWNvcmVS
ZXNvdXJjZTsKKy0gKGluc3RhbmNldHlwZSlpbml0V2l0aENvcmVSZXNvdXJjZTooUmVmPEFyY2hp
dmVSZXNvdXJjZT4mJiljb3JlUmVzb3VyY2U7CiBAZW5kCiAKIEBpbXBsZW1lbnRhdGlvbiBXZWJS
ZXNvdXJjZVByaXZhdGUKQEAgLTc4LDEzICs3OCwxMiBAQCAtIChpbnN0YW5jZXR5cGUpaW5pdAog
ICAgIHJldHVybiBbc3VwZXIgaW5pdF07CiB9CiAKLS0gKGluc3RhbmNldHlwZSlpbml0V2l0aENv
cmVSZXNvdXJjZTooUGFzc1JlZlB0cjxBcmNoaXZlUmVzb3VyY2U+KXBhc3NlZFJlc291cmNlCist
IChpbnN0YW5jZXR5cGUpaW5pdFdpdGhDb3JlUmVzb3VyY2U6KFJlZjxBcmNoaXZlUmVzb3VyY2U+
JiYpcGFzc2VkUmVzb3VyY2UKIHsKICAgICBzZWxmID0gW3N1cGVyIGluaXRdOwogICAgIGlmICgh
c2VsZikKICAgICAgICAgcmV0dXJuIG5pbDsKLSAgICAvLyBBY3F1aXJlIHRoZSBQYXNzUmVmUHRy
PD4ncyByZWYgYXMgb3VyIG93biBtYW51YWwgcmVmCi0gICAgY29yZVJlc291cmNlID0gcGFzc2Vk
UmVzb3VyY2UubGVha1JlZigpOworICAgIGNvcmVSZXNvdXJjZSA9IFdURk1vdmUocGFzc2VkUmVz
b3VyY2UpOwogICAgIHJldHVybiBzZWxmOwogfQogCkBAIC05Miw5ICs5MSw2IEBAIC0gKHZvaWQp
ZGVhbGxvYwogewogICAgIGlmIChXZWJDb3JlT2JqQ1NjaGVkdWxlRGVhbGxvY2F0ZU9uTWFpblRo
cmVhZChbV2ViUmVzb3VyY2VQcml2YXRlIGNsYXNzXSwgc2VsZikpCiAgICAgICAgIHJldHVybjsK
LQotICAgIGlmIChjb3JlUmVzb3VyY2UpCi0gICAgICAgIGNvcmVSZXNvdXJjZS0+ZGVyZWYoKTsK
ICAgICBbc3VwZXIgZGVhbGxvY107CiB9CiAKQEAgLTE1MywxNCArMTQ5LDE5IEBAIC0gKGluc3Rh
bmNldHlwZSlpbml0V2l0aENvZGVyOihOU0NvZGVyICopZGVjb2RlcgogICAgICAgICByZXR1cm4g
bmlsOwogICAgIH0KIAotICAgIF9wcml2YXRlID0gW1tXZWJSZXNvdXJjZVByaXZhdGUgYWxsb2Nd
IGluaXRXaXRoQ29yZVJlc291cmNlOkFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKFNoYXJlZEJ1ZmZl
cjo6d3JhcE5TRGF0YShkYXRhKSwgdXJsLCBtaW1lVHlwZSwgdGV4dEVuY29kaW5nLCBmcmFtZU5h
bWUsIHJlc3BvbnNlKV07CisgICAgYXV0byBjb3JlUmVzb3VyY2UgPSBBcmNoaXZlUmVzb3VyY2U6
OmNyZWF0ZShTaGFyZWRCdWZmZXI6OndyYXBOU0RhdGEoZGF0YSksIHVybCwgbWltZVR5cGUsIHRl
eHRFbmNvZGluZywgZnJhbWVOYW1lLCByZXNwb25zZSk7CisgICAgaWYgKCFjb3JlUmVzb3VyY2Up
IHsKKyAgICAgICAgW3NlbGYgcmVsZWFzZV07CisgICAgICAgIHJldHVybiBuaWw7CisgICAgfQog
CisgICAgX3ByaXZhdGUgPSBbW1dlYlJlc291cmNlUHJpdmF0ZSBhbGxvY10gaW5pdFdpdGhDb3Jl
UmVzb3VyY2U6Y29yZVJlc291cmNlLnJlbGVhc2VOb25OdWxsKCldOwogICAgIHJldHVybiBzZWxm
OwogfQogCiAtICh2b2lkKWVuY29kZVdpdGhDb2RlcjooTlNDb2RlciAqKWVuY29kZXIKIHsKLSAg
ICBBcmNoaXZlUmVzb3VyY2UgKnJlc291cmNlID0gX3ByaXZhdGUtPmNvcmVSZXNvdXJjZTsKKyAg
ICBhdXRvKiByZXNvdXJjZSA9IF9wcml2YXRlLT5jb3JlUmVzb3VyY2UuZ2V0KCk7CiAgICAgCiAg
ICAgTlNEYXRhICpkYXRhID0gbmlsOwogICAgIE5TVVJMICp1cmwgPSBuaWw7CkBAIC0yMDksOCAr
MjEwLDcgQEAgLSAoTlNVUkwgKilVUkwKIAogICAgIGlmICghX3ByaXZhdGUtPmNvcmVSZXNvdXJj
ZSkKICAgICAgICAgcmV0dXJuIG5pbDsKLSAgICBOU1VSTCAqdXJsID0gX3ByaXZhdGUtPmNvcmVS
ZXNvdXJjZS0+dXJsKCk7Ci0gICAgcmV0dXJuIHVybDsKKyAgICByZXR1cm4gX3ByaXZhdGUtPmNv
cmVSZXNvdXJjZS0+dXJsKCk7CiB9CiAKIC0gKE5TU3RyaW5nICopTUlNRVR5cGUKQEAgLTI1Miwy
MiArMjUyLDE5IEBAIEBlbmQKIAogQGltcGxlbWVudGF0aW9uIFdlYlJlc291cmNlIChXZWJSZXNv
dXJjZUludGVybmFsKQogCi0tIChpZClfaW5pdFdpdGhDb3JlUmVzb3VyY2U6KFBhc3NSZWZQdHI8
QXJjaGl2ZVJlc291cmNlPiljb3JlUmVzb3VyY2UKKy0gKGlkKV9pbml0V2l0aENvcmVSZXNvdXJj
ZTooUmVmPEFyY2hpdmVSZXNvdXJjZT4mJiljb3JlUmVzb3VyY2UKIHsKICAgICBzZWxmID0gW3N1
cGVyIGluaXRdOwogICAgIGlmICghc2VsZikKICAgICAgICAgcmV0dXJuIG5pbDsKLSAgICAgICAg
ICAgIAotICAgIEFTU0VSVChjb3JlUmVzb3VyY2UpOwotICAgIAotICAgIF9wcml2YXRlID0gW1tX
ZWJSZXNvdXJjZVByaXZhdGUgYWxsb2NdIGluaXRXaXRoQ29yZVJlc291cmNlOmNvcmVSZXNvdXJj
ZV07Ci0gICAgICAgICAgICAKKworICAgIF9wcml2YXRlID0gW1tXZWJSZXNvdXJjZVByaXZhdGUg
YWxsb2NdIGluaXRXaXRoQ29yZVJlc291cmNlOldURk1vdmUoY29yZVJlc291cmNlKV07CiAgICAg
cmV0dXJuIHNlbGY7CiB9CiAKLS0gKFdlYkNvcmU6OkFyY2hpdmVSZXNvdXJjZSAqKV9jb3JlUmVz
b3VyY2UKKy0gKFdlYkNvcmU6OkFyY2hpdmVSZXNvdXJjZSYpX2NvcmVSZXNvdXJjZQogewotICAg
IHJldHVybiBfcHJpdmF0ZS0+Y29yZVJlc291cmNlOworICAgIHJldHVybiAqX3ByaXZhdGUtPmNv
cmVSZXNvdXJjZTsKIH0KIAogQGVuZApAQCAtMzA0LDggKzMwMSwxMyBAQCAtIChpZClfaW5pdFdp
dGhEYXRhOihOU0RhdGEgKilkYXRhCiAgICAgICAgIHJldHVybiBuaWw7CiAgICAgfQogCi0gICAg
X3ByaXZhdGUgPSBbW1dlYlJlc291cmNlUHJpdmF0ZSBhbGxvY10gaW5pdFdpdGhDb3JlUmVzb3Vy
Y2U6QXJjaGl2ZVJlc291cmNlOjpjcmVhdGUoU2hhcmVkQnVmZmVyOjp3cmFwTlNEYXRhKGNvcHlE
YXRhID8gW1tkYXRhIGNvcHldIGF1dG9yZWxlYXNlXSA6IGRhdGEpLCBVUkwsIE1JTUVUeXBlLCB0
ZXh0RW5jb2RpbmdOYW1lLCBmcmFtZU5hbWUsIHJlc3BvbnNlKV07CisgICAgYXV0byBjb3JlUmVz
b3VyY2UgPSBBcmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShTaGFyZWRCdWZmZXI6OndyYXBOU0RhdGEo
Y29weURhdGEgPyBbW2RhdGEgY29weV0gYXV0b3JlbGVhc2VdIDogZGF0YSksIFVSTCwgTUlNRVR5
cGUsIHRleHRFbmNvZGluZ05hbWUsIGZyYW1lTmFtZSwgcmVzcG9uc2UpOworICAgIGlmICghY29y
ZVJlc291cmNlKSB7CisgICAgICAgIFtzZWxmIHJlbGVhc2VdOworICAgICAgICByZXR1cm4gbmls
OworICAgIH0KIAorICAgIF9wcml2YXRlID0gW1tXZWJSZXNvdXJjZVByaXZhdGUgYWxsb2NdIGlu
aXRXaXRoQ29yZVJlc291cmNlOmNvcmVSZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpXTsKICAgICBy
ZXR1cm4gc2VsZjsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9X
ZWJSZXNvdXJjZUludGVybmFsLmggYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlJlc291
cmNlSW50ZXJuYWwuaAppbmRleCAyZjQ2OTEyZThiZThkM2IzOTJjZjU3MzkyZjA3OWRhYjlkODA5
ZTI1Li44MGM5NzZlYjZiMzY1NGZjMWM2ODhjMmE5NmI4M2JkYjdhZjc3MjUxIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlJlc291cmNlSW50ZXJuYWwuaAorKysgYi9T
b3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlJlc291cmNlSW50ZXJuYWwuaApAQCAtMSw1ICsx
LDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yNywxMyArMjcs
MTMgQEAKICAqLwogCiAjaW1wb3J0ICJXZWJSZXNvdXJjZVByaXZhdGUuaCIKLSNpbXBvcnQgPHd0
Zi9QYXNzUmVmUHRyLmg+CisjaW1wb3J0IDx3dGYvUmVmLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKICAgICBjbGFzcyBBcmNoaXZlUmVzb3VyY2U7CiB9CiAKIEBpbnRlcmZhY2UgV2ViUmVzb3Vy
Y2UgKFdlYlJlc291cmNlSW50ZXJuYWwpCi0tIChpZClfaW5pdFdpdGhDb3JlUmVzb3VyY2U6KFBh
c3NSZWZQdHI8V2ViQ29yZTo6QXJjaGl2ZVJlc291cmNlPiljb3JlUmVzb3VyY2U7Ci0tIChXZWJD
b3JlOjpBcmNoaXZlUmVzb3VyY2UqKV9jb3JlUmVzb3VyY2U7CistIChpZClfaW5pdFdpdGhDb3Jl
UmVzb3VyY2U6KFJlZjxXZWJDb3JlOjpBcmNoaXZlUmVzb3VyY2U+JiYpY29yZVJlc291cmNlOwor
LSAoV2ViQ29yZTo6QXJjaGl2ZVJlc291cmNlJilfY29yZVJlc291cmNlOwogQGVuZApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNw
cCBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAK
aW5kZXggZjI0ZTYzMzQ0NWU0MzU1YjNiNDI4Zjk5ODdkYzQyZjgxMmMxYmZmYy4uYTM5ZDU4NzUx
YjZlNGJlODI4ZjVkZDUyZWY4ZDdiMDI2NTM3YzJkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwCkBAIC02MTgsMTUgKzYx
OCwxMyBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6cmVhY2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmln
aW5RdW90YShTZWN1cml0eU9yaWdpbiosIGludDY0XwogICAgIG5vdEltcGxlbWVudGVkKCk7CiB9
CiAKLXZvaWQgV2ViQ2hyb21lQ2xpZW50OjpydW5PcGVuUGFuZWwoRnJhbWUqLCBQYXNzUmVmUHRy
PEZpbGVDaG9vc2VyPiBwcnBGaWxlQ2hvb3NlcikKK3ZvaWQgV2ViQ2hyb21lQ2xpZW50OjpydW5P
cGVuUGFuZWwoRnJhbWUmLCBGaWxlQ2hvb3NlciYgZmlsZUNob29zZXIpCiB7Ci0gICAgUmVmUHRy
PEZpbGVDaG9vc2VyPiBmaWxlQ2hvb3NlciA9IHBycEZpbGVDaG9vc2VyOwotCiAgICAgSFdORCB2
aWV3V2luZG93OwogICAgIGlmIChGQUlMRUQobV93ZWJWaWV3LT52aWV3V2luZG93KCZ2aWV3V2lu
ZG93KSkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGJvb2wgbXVsdGlGaWxlID0gZmlsZUNob29z
ZXItPnNldHRpbmdzKCkuYWxsb3dzTXVsdGlwbGVGaWxlczsKKyAgICBib29sIG11bHRpRmlsZSA9
IGZpbGVDaG9vc2VyLnNldHRpbmdzKCkuYWxsb3dzTXVsdGlwbGVGaWxlczsKICAgICBWZWN0b3I8
V0NIQVI+IGZpbGVCdWYobXVsdGlGaWxlID8gbWF4RmlsZVBhdGhzTGlzdFNpemUgOiBNQVhfUEFU
SCk7CiAKICAgICBPUEVORklMRU5BTUUgb2ZuOwpAQCAtNjc1LDcgKzY3Myw3IEBAIHZvaWQgV2Vi
Q2hyb21lQ2xpZW50OjpydW5PcGVuUGFuZWwoRnJhbWUqLCBQYXNzUmVmUHRyPEZpbGVDaG9vc2Vy
PiBwcnBGaWxlQ2hvb3NlCiAgICAgICAgIH0gZWxzZQogICAgICAgICAgICAgZmlsZUxpc3QuYXBw
ZW5kKGZpbGUpOwogICAgICAgICBBU1NFUlQoZmlsZUxpc3Quc2l6ZSgpKTsKLSAgICAgICAgZmls
ZUNob29zZXItPmNob29zZUZpbGVzKGZpbGVMaXN0KTsKKyAgICAgICAgZmlsZUNob29zZXIuY2hv
b3NlRmlsZXMoZmlsZUxpc3QpOwogICAgIH0KICAgICAvLyBGSVhNRTogU2hvdyBzb21lIHNvcnQg
b2YgZXJyb3IgaWYgdG9vIG1hbnkgZmlsZXMgYXJlIHNlbGVjdGVkIGFuZCB0aGUgYnVmZmVyIGlz
IHRvbyBzbWFsbC4gIEZvciBub3csIHRoaXMgd2lsbCBmYWlsIHNpbGVudGx5LgogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50Lmgg
Yi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaAppbmRl
eCA0OTNkZTE2MjMyY2NkYjYxZDlhZDg5MzM4YmE5N2NhNjJlMGIyNjIyLi45Mjg3MmI0MWMxMmZi
MzE1ZTU0MWVjYmRiOTVkYmNiMTU2NjI3MmRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dp
bi9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L3dp
bi9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaApAQCAtMTE1LDcgKzExNSw3IEBAIHB1
YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgcmVhY2hlZE1heEFwcENhY2hlU2l6ZShpbnQ2NF90IHNw
YWNlTmVlZGVkKTsKICAgICB2aXJ0dWFsIHZvaWQgcmVhY2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmln
aW5RdW90YShXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiosIGludDY0X3QgdG90YWxTcGFjZU5lZWRl
ZCk7CiAKLSAgICB2aXJ0dWFsIHZvaWQgcnVuT3BlblBhbmVsKFdlYkNvcmU6OkZyYW1lKiwgUGFz
c1JlZlB0cjxXZWJDb3JlOjpGaWxlQ2hvb3Nlcj4pOworICAgIHZpcnR1YWwgdm9pZCBydW5PcGVu
UGFuZWwoV2ViQ29yZTo6RnJhbWUmLCBXZWJDb3JlOjpGaWxlQ2hvb3NlciYpOwogICAgIHZpcnR1
YWwgdm9pZCBsb2FkSWNvbkZvckZpbGVzKGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mLCBXZWJD
b3JlOjpGaWxlSWNvbkxvYWRlciYpOwogCiAgICAgdmlydHVhbCB2b2lkIHNldEN1cnNvcihjb25z
dCBXZWJDb3JlOjpDdXJzb3ImKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNv
cmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3Jl
U3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuY3BwCmluZGV4IGZiMjM0MjdkMWJjZTA5M2I5OWMxMGFj
Y2Y5YjdkOWM3ZmU3NDY5NTUuLjJjZWE4ODY0YzA5NDk1MDRiYTU1ZDdhOTZkZmVhNDQ5MTgxNGNl
ODkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRv
ckNsaWVudC5jcHAKKysrIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViRWRp
dG9yQ2xpZW50LmNwcApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYt
MjAwNywgMjAxMSwgMjAxNC0yMDE1IEFwcGxlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVk
LgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC01MjEsNyArNTIxLDcgQEAgdm9p
ZCBXZWJFZGl0b3JDbGllbnQ6OnRleHREaWRDaGFuZ2VJblRleHRBcmVhKEVsZW1lbnQqIGUpCiBj
bGFzcyBXZWJFZGl0b3JVbmRvQ29tbWFuZCA6IHB1YmxpYyBJV2ViVW5kb0NvbW1hbmQKIHsKIHB1
YmxpYzoKLSAgICBXZWJFZGl0b3JVbmRvQ29tbWFuZChQYXNzUmVmUHRyPFVuZG9TdGVwPiwgYm9v
bCBpc1VuZG8pOworICAgIFdlYkVkaXRvclVuZG9Db21tYW5kKFVuZG9TdGVwJiwgYm9vbCBpc1Vu
ZG8pOwogICAgIHZvaWQgZXhlY3V0ZSgpOwogCiAgICAgLy8gSVVua25vd24KQEAgLTUzMSwxMSAr
NTMxLDExIEBAIHB1YmxpYzoKIAogcHJpdmF0ZToKICAgICBVTE9ORyBtX3JlZkNvdW50OwotICAg
IFJlZlB0cjxVbmRvU3RlcD4gbV9zdGVwOworICAgIFJlZjxVbmRvU3RlcD4gbV9zdGVwOwogICAg
IGJvb2wgbV9pc1VuZG87CiB9OwogCi1XZWJFZGl0b3JVbmRvQ29tbWFuZDo6V2ViRWRpdG9yVW5k
b0NvbW1hbmQoUGFzc1JlZlB0cjxVbmRvU3RlcD4gc3RlcCwgYm9vbCBpc1VuZG8pCitXZWJFZGl0
b3JVbmRvQ29tbWFuZDo6V2ViRWRpdG9yVW5kb0NvbW1hbmQoVW5kb1N0ZXAmIHN0ZXAsIGJvb2wg
aXNVbmRvKQogICAgIDogbV9zdGVwKHN0ZXApCiAgICAgLCBtX2lzVW5kbyhpc1VuZG8pIAogICAg
ICwgbV9yZWZDb3VudCgxKQpAQCAtNjQwLDExICs2NDAsMTEgQEAgc3RhdGljIFN0cmluZyB1bmRv
TmFtZUZvckVkaXRBY3Rpb24oRWRpdEFjdGlvbiBlZGl0QWN0aW9uKQogICAgIHJldHVybiBTdHJp
bmcoKTsKIH0KIAotdm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb1N0ZXAoUGFzc1Jl
ZlB0cjxVbmRvU3RlcD4gc3RlcCkKK3ZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9T
dGVwKFVuZG9TdGVwJiBzdGVwKQogewogICAgIElXZWJVSURlbGVnYXRlKiB1aURlbGVnYXRlID0g
MDsKICAgICBpZiAoU1VDQ0VFREVEKG1fd2ViVmlldy0+dWlEZWxlZ2F0ZSgmdWlEZWxlZ2F0ZSkp
KSB7Ci0gICAgICAgIFN0cmluZyBhY3Rpb25OYW1lID0gdW5kb05hbWVGb3JFZGl0QWN0aW9uKHN0
ZXAtPmVkaXRpbmdBY3Rpb24oKSk7CisgICAgICAgIFN0cmluZyBhY3Rpb25OYW1lID0gdW5kb05h
bWVGb3JFZGl0QWN0aW9uKHN0ZXAuZWRpdGluZ0FjdGlvbigpKTsKICAgICAgICAgV2ViRWRpdG9y
VW5kb0NvbW1hbmQqIHVuZG9Db21tYW5kID0gbmV3IFdlYkVkaXRvclVuZG9Db21tYW5kKHN0ZXAs
IHRydWUpOwogICAgICAgICBpZiAoIXVuZG9Db21tYW5kKQogICAgICAgICAgICAgcmV0dXJuOwpA
QCAtNjU2LDcgKzY1Niw3IEBAIHZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9TdGVw
KFBhc3NSZWZQdHI8VW5kb1N0ZXA+IHN0ZXApCiAgICAgfQogfQogCi12b2lkIFdlYkVkaXRvckNs
aWVudDo6cmVnaXN0ZXJSZWRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPiBzdGVwKQordm9pZCBX
ZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyUmVkb1N0ZXAoVW5kb1N0ZXAmIHN0ZXApCiB7CiAgICAg
SVdlYlVJRGVsZWdhdGUqIHVpRGVsZWdhdGUgPSAwOwogICAgIGlmIChTVUNDRUVERUQobV93ZWJW
aWV3LT51aURlbGVnYXRlKCZ1aURlbGVnYXRlKSkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oIGIvU291cmNlL1dlYktpdC93
aW4vV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmgKaW5kZXggYjE0OGJlNzJhZmZhYjFi
ZjM0NWUwMTEwN2ZiZjUyNzU4Yjg2M2U1ZS4uZGRiZTA1MTlkMWNiYWQwMWM2Y2IxY2M3ODE4ZDI5
ZmY2YTUyNDRjOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQv
V2ViRWRpdG9yQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQv
V2ViRWRpdG9yQ2xpZW50LmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAy
MDA2LTIwMDcgQXBwbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAo
QykgMjAwNi0yMDE3IEFwcGxlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTMzLDkxICszMyw5MSBAQCBjbGFzcyBXZWJWaWV3Owog
Y2xhc3MgV2ViTm90aWZpY2F0aW9uOwogY2xhc3MgV2ViRWRpdG9yVW5kb1RhcmdldDsKIAotY2xh
c3MgV2ViRWRpdG9yQ2xpZW50IDogcHVibGljIFdlYkNvcmU6OkVkaXRvckNsaWVudCwgcHVibGlj
IFdlYkNvcmU6OlRleHRDaGVja2VyQ2xpZW50IHsKK2NsYXNzIFdlYkVkaXRvckNsaWVudCBmaW5h
bCA6IHB1YmxpYyBXZWJDb3JlOjpFZGl0b3JDbGllbnQsIHB1YmxpYyBXZWJDb3JlOjpUZXh0Q2hl
Y2tlckNsaWVudCB7CiBwdWJsaWM6CiAgICAgV2ViRWRpdG9yQ2xpZW50KFdlYlZpZXcqKTsKICAg
ICB+V2ViRWRpdG9yQ2xpZW50KCk7CiAKLSAgICB2aXJ0dWFsIGJvb2wgaXNDb250aW51b3VzU3Bl
bGxDaGVja2luZ0VuYWJsZWQoKTsKLSAgICB2aXJ0dWFsIHZvaWQgdG9nZ2xlR3JhbW1hckNoZWNr
aW5nKCk7Ci0gICAgdmlydHVhbCBib29sIGlzR3JhbW1hckNoZWNraW5nRW5hYmxlZCgpOwotICAg
IHZpcnR1YWwgdm9pZCB0b2dnbGVDb250aW51b3VzU3BlbGxDaGVja2luZygpOwotICAgIHZpcnR1
YWwgaW50IHNwZWxsQ2hlY2tlckRvY3VtZW50VGFnKCk7Ci0KLSAgICB2aXJ0dWFsIGJvb2wgc2hv
dWxkQmVnaW5FZGl0aW5nKFdlYkNvcmU6OlJhbmdlKik7Ci0gICAgdmlydHVhbCBib29sIHNob3Vs
ZEVuZEVkaXRpbmcoV2ViQ29yZTo6UmFuZ2UqKTsKLSAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkSW5z
ZXJ0VGV4dChjb25zdCBXVEY6OlN0cmluZyYsIFdlYkNvcmU6OlJhbmdlKiwgV2ViQ29yZTo6RWRp
dG9ySW5zZXJ0QWN0aW9uKTsKLQotICAgIHZpcnR1YWwgdm9pZCBkaWRCZWdpbkVkaXRpbmcoKTsK
LSAgICB2aXJ0dWFsIHZvaWQgZGlkRW5kRWRpdGluZygpOwotICAgIHZpcnR1YWwgdm9pZCB3aWxs
V3JpdGVTZWxlY3Rpb25Ub1Bhc3RlYm9hcmQoV2ViQ29yZTo6UmFuZ2UqKTsKLSAgICB2aXJ0dWFs
IHZvaWQgZGlkV3JpdGVTZWxlY3Rpb25Ub1Bhc3RlYm9hcmQoKTsKLSAgICB2aXJ0dWFsIHZvaWQg
Z2V0Q2xpZW50UGFzdGVib2FyZERhdGFGb3JSYW5nZShXZWJDb3JlOjpSYW5nZSosIFZlY3RvcjxT
dHJpbmc+JiBwYXN0ZWJvYXJkVHlwZXMsIFZlY3RvcjxSZWZQdHI8V2ViQ29yZTo6U2hhcmVkQnVm
ZmVyPiA+JiBwYXN0ZWJvYXJkRGF0YSk7Ci0KLSAgICB2aXJ0dWFsIHZvaWQgcmVzcG9uZFRvQ2hh
bmdlZENvbnRlbnRzKCk7Ci0gICAgdmlydHVhbCB2b2lkIHJlc3BvbmRUb0NoYW5nZWRTZWxlY3Rp
b24oV2ViQ29yZTo6RnJhbWUqKTsKK3ByaXZhdGU6CisgICAgYm9vbCBpc0NvbnRpbnVvdXNTcGVs
bENoZWNraW5nRW5hYmxlZCgpIGZpbmFsOworICAgIHZvaWQgdG9nZ2xlR3JhbW1hckNoZWNraW5n
KCkgZmluYWw7CisgICAgYm9vbCBpc0dyYW1tYXJDaGVja2luZ0VuYWJsZWQoKSBmaW5hbDsKKyAg
ICB2b2lkIHRvZ2dsZUNvbnRpbnVvdXNTcGVsbENoZWNraW5nKCkgZmluYWw7CisgICAgaW50IHNw
ZWxsQ2hlY2tlckRvY3VtZW50VGFnKCkgZmluYWw7CisKKyAgICBib29sIHNob3VsZEJlZ2luRWRp
dGluZyhXZWJDb3JlOjpSYW5nZSopIGZpbmFsOworICAgIGJvb2wgc2hvdWxkRW5kRWRpdGluZyhX
ZWJDb3JlOjpSYW5nZSopIGZpbmFsOworICAgIGJvb2wgc2hvdWxkSW5zZXJ0VGV4dChjb25zdCBX
VEY6OlN0cmluZyYsIFdlYkNvcmU6OlJhbmdlKiwgV2ViQ29yZTo6RWRpdG9ySW5zZXJ0QWN0aW9u
KSBmaW5hbDsKKworICAgIHZvaWQgZGlkQmVnaW5FZGl0aW5nKCkgZmluYWw7CisgICAgdm9pZCBk
aWRFbmRFZGl0aW5nKCkgZmluYWw7CisgICAgdm9pZCB3aWxsV3JpdGVTZWxlY3Rpb25Ub1Bhc3Rl
Ym9hcmQoV2ViQ29yZTo6UmFuZ2UqKSBmaW5hbDsKKyAgICB2b2lkIGRpZFdyaXRlU2VsZWN0aW9u
VG9QYXN0ZWJvYXJkKCkgZmluYWw7CisgICAgdm9pZCBnZXRDbGllbnRQYXN0ZWJvYXJkRGF0YUZv
clJhbmdlKFdlYkNvcmU6OlJhbmdlKiwgVmVjdG9yPFN0cmluZz4mIHBhc3RlYm9hcmRUeXBlcywg
VmVjdG9yPFJlZlB0cjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+PiYgcGFzdGVib2FyZERhdGEpIGZp
bmFsOworCisgICAgdm9pZCByZXNwb25kVG9DaGFuZ2VkQ29udGVudHMoKSBmaW5hbDsKKyAgICB2
b2lkIHJlc3BvbmRUb0NoYW5nZWRTZWxlY3Rpb24oV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKICAg
ICB2b2lkIGRpZENoYW5nZVNlbGVjdGlvbkFuZFVwZGF0ZUxheW91dCgpIGZpbmFsIHsgfQogICAg
IHZvaWQgdXBkYXRlRWRpdG9yU3RhdGVBZnRlckxheW91dElmRWRpdGFiaWxpdHlDaGFuZ2VkKCkg
ZmluYWwgeyB9IAogICAgIHZvaWQgY2FuY2VsZWRDb21wb3NpdGlvbigpIGZpbmFsOwogICAgIHZv
aWQgZGlzY2FyZGVkQ29tcG9zaXRpb24oV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKIAotICAgIGJv
b2wgc2hvdWxkRGVsZXRlUmFuZ2UoV2ViQ29yZTo6UmFuZ2UqKTsKKyAgICBib29sIHNob3VsZERl
bGV0ZVJhbmdlKFdlYkNvcmU6OlJhbmdlKikgZmluYWw7CiAKLSAgICBib29sIHNob3VsZEluc2Vy
dE5vZGUoV2ViQ29yZTo6Tm9kZSosIFdlYkNvcmU6OlJhbmdlKiByZXBsYWNpbmdSYW5nZSwgV2Vi
Q29yZTo6RWRpdG9ySW5zZXJ0QWN0aW9uKTsKLSAgICBib29sIHNob3VsZEFwcGx5U3R5bGUoV2Vi
Q29yZTo6U3R5bGVQcm9wZXJ0aWVzKiwgV2ViQ29yZTo6UmFuZ2UqKTsKLSAgICB2b2lkIGRpZEFw
cGx5U3R5bGUoKTsKLSAgICBib29sIHNob3VsZE1vdmVSYW5nZUFmdGVyRGVsZXRlKFdlYkNvcmU6
OlJhbmdlKiwgV2ViQ29yZTo6UmFuZ2UqKTsKLSAgICBib29sIHNob3VsZENoYW5nZVR5cGluZ1N0
eWxlKFdlYkNvcmU6OlN0eWxlUHJvcGVydGllcyogY3VycmVudFN0eWxlLCBXZWJDb3JlOjpTdHls
ZVByb3BlcnRpZXMqIHRvUHJvcG9zZWRTdHlsZSk7CisgICAgYm9vbCBzaG91bGRJbnNlcnROb2Rl
KFdlYkNvcmU6Ok5vZGUqLCBXZWJDb3JlOjpSYW5nZSogcmVwbGFjaW5nUmFuZ2UsIFdlYkNvcmU6
OkVkaXRvckluc2VydEFjdGlvbikgZmluYWw7CisgICAgYm9vbCBzaG91bGRBcHBseVN0eWxlKFdl
YkNvcmU6OlN0eWxlUHJvcGVydGllcyosIFdlYkNvcmU6OlJhbmdlKikgZmluYWw7CisgICAgdm9p
ZCBkaWRBcHBseVN0eWxlKCkgZmluYWw7CisgICAgYm9vbCBzaG91bGRNb3ZlUmFuZ2VBZnRlckRl
bGV0ZShXZWJDb3JlOjpSYW5nZSosIFdlYkNvcmU6OlJhbmdlKikgZmluYWw7CisgICAgYm9vbCBz
aG91bGRDaGFuZ2VUeXBpbmdTdHlsZShXZWJDb3JlOjpTdHlsZVByb3BlcnRpZXMqIGN1cnJlbnRT
dHlsZSwgV2ViQ29yZTo6U3R5bGVQcm9wZXJ0aWVzKiB0b1Byb3Bvc2VkU3R5bGUpIGZpbmFsOwog
Ci0gICAgdm9pZCB3ZWJWaWV3RGlkQ2hhbmdlVHlwaW5nU3R5bGUoV2ViTm90aWZpY2F0aW9uKik7
Ci0gICAgdm9pZCB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uKFdlYk5vdGlmaWNhdGlvbiopOwor
ICAgIHZvaWQgd2ViVmlld0RpZENoYW5nZVR5cGluZ1N0eWxlKFdlYk5vdGlmaWNhdGlvbiopIGZp
bmFsOworICAgIHZvaWQgd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbihXZWJOb3RpZmljYXRpb24q
KSBmaW5hbDsKIAotICAgIGJvb2wgc21hcnRJbnNlcnREZWxldGVFbmFibGVkKCk7Ci0gICAgYm9v
bCBpc1NlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQoKTsKKyAgICBib29sIHNtYXJ0SW5z
ZXJ0RGVsZXRlRW5hYmxlZCgpIGZpbmFsOworICAgIGJvb2wgaXNTZWxlY3RUcmFpbGluZ1doaXRl
c3BhY2VFbmFibGVkKCkgZmluYWw7CiAKLSAgICB2b2lkIHJlZ2lzdGVyVW5kb1N0ZXAoUGFzc1Jl
ZlB0cjxXZWJDb3JlOjpVbmRvU3RlcD4pOwotICAgIHZvaWQgcmVnaXN0ZXJSZWRvU3RlcChQYXNz
UmVmUHRyPFdlYkNvcmU6OlVuZG9TdGVwPik7CisgICAgdm9pZCByZWdpc3RlclVuZG9TdGVwKFdl
YkNvcmU6OlVuZG9TdGVwJikgZmluYWw7CisgICAgdm9pZCByZWdpc3RlclJlZG9TdGVwKFdlYkNv
cmU6OlVuZG9TdGVwJikgZmluYWw7CiAgICAgdm9pZCBjbGVhclVuZG9SZWRvT3BlcmF0aW9ucygp
OwogCi0gICAgYm9vbCBjYW5Db3B5Q3V0KFdlYkNvcmU6OkZyYW1lKiwgYm9vbCBkZWZhdWx0VmFs
dWUpIGNvbnN0OwotICAgIGJvb2wgY2FuUGFzdGUoV2ViQ29yZTo6RnJhbWUqLCBib29sIGRlZmF1
bHRWYWx1ZSkgY29uc3Q7Ci0gICAgYm9vbCBjYW5VbmRvKCkgY29uc3Q7Ci0gICAgYm9vbCBjYW5S
ZWRvKCkgY29uc3Q7CisgICAgYm9vbCBjYW5Db3B5Q3V0KFdlYkNvcmU6OkZyYW1lKiwgYm9vbCBk
ZWZhdWx0VmFsdWUpIGNvbnN0IGZpbmFsOworICAgIGJvb2wgY2FuUGFzdGUoV2ViQ29yZTo6RnJh
bWUqLCBib29sIGRlZmF1bHRWYWx1ZSkgY29uc3QgZmluYWw7CisgICAgYm9vbCBjYW5VbmRvKCkg
Y29uc3QgZmluYWw7CisgICAgYm9vbCBjYW5SZWRvKCkgY29uc3QgZmluYWw7CiAgICAgCi0gICAg
dm9pZCB1bmRvKCk7Ci0gICAgdm9pZCByZWRvKCk7ICAgIAorICAgIHZvaWQgdW5kbygpIGZpbmFs
OworICAgIHZvaWQgcmVkbygpIGZpbmFsOwogICAgIAotICAgIGJvb2wgc2hvdWxkQ2hhbmdlU2Vs
ZWN0ZWRSYW5nZShXZWJDb3JlOjpSYW5nZSogZnJvbVJhbmdlLCBXZWJDb3JlOjpSYW5nZSogdG9S
YW5nZSwgV2ViQ29yZTo6RUFmZmluaXR5LCBib29sIHN0aWxsU2VsZWN0aW5nKSBvdmVycmlkZTsK
LSAgICB2b2lkIHRleHRGaWVsZERpZEJlZ2luRWRpdGluZyhXZWJDb3JlOjpFbGVtZW50Kikgb3Zl
cnJpZGU7Ci0gICAgdm9pZCB0ZXh0RmllbGREaWRFbmRFZGl0aW5nKFdlYkNvcmU6OkVsZW1lbnQq
KSBvdmVycmlkZTsKLSAgICB2b2lkIHRleHREaWRDaGFuZ2VJblRleHRGaWVsZChXZWJDb3JlOjpF
bGVtZW50Kikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBkb1RleHRGaWVsZENvbW1hbmRGcm9tRXZlbnQo
V2ViQ29yZTo6RWxlbWVudCosIFdlYkNvcmU6OktleWJvYXJkRXZlbnQqKSBvdmVycmlkZTsKLSAg
ICB2b2lkIHRleHRXaWxsQmVEZWxldGVkSW5UZXh0RmllbGQoV2ViQ29yZTo6RWxlbWVudCogaW5w
dXQpIG92ZXJyaWRlOwotICAgIHZvaWQgdGV4dERpZENoYW5nZUluVGV4dEFyZWEoV2ViQ29yZTo6
RWxlbWVudCopIG92ZXJyaWRlOwotICAgIHZvaWQgb3ZlcmZsb3dTY3JvbGxQb3NpdGlvbkNoYW5n
ZWQoKSBvdmVycmlkZSB7IH0KLQotICAgIHZvaWQgaGFuZGxlS2V5Ym9hcmRFdmVudChXZWJDb3Jl
OjpLZXlib2FyZEV2ZW50Kik7Ci0gICAgdm9pZCBoYW5kbGVJbnB1dE1ldGhvZEtleWRvd24oV2Vi
Q29yZTo6S2V5Ym9hcmRFdmVudCopOwotCi0gICAgYm9vbCBzaG91bGRFcmFzZU1hcmtlcnNBZnRl
ckNoYW5nZVNlbGVjdGlvbihXZWJDb3JlOjpUZXh0Q2hlY2tpbmdUeXBlKSBjb25zdCBvdmVycmlk
ZTsKLSAgICB2b2lkIGlnbm9yZVdvcmRJblNwZWxsRG9jdW1lbnQoY29uc3QgV1RGOjpTdHJpbmcm
KSBvdmVycmlkZTsKLSAgICB2b2lkIGxlYXJuV29yZChjb25zdCBXVEY6OlN0cmluZyYpIG92ZXJy
aWRlOwotICAgIHZvaWQgY2hlY2tTcGVsbGluZ09mU3RyaW5nKFN0cmluZ1ZpZXcsIGludCogbWlz
c3BlbGxpbmdMb2NhdGlvbiwgaW50KiBtaXNzcGVsbGluZ0xlbmd0aCkgb3ZlcnJpZGU7Ci0gICAg
V1RGOjpTdHJpbmcgZ2V0QXV0b0NvcnJlY3RTdWdnZXN0aW9uRm9yTWlzc3BlbGxlZFdvcmQoY29u
c3QgV1RGOjpTdHJpbmcmKSBvdmVycmlkZTsKLSAgICB2b2lkIGNoZWNrR3JhbW1hck9mU3RyaW5n
KFN0cmluZ1ZpZXcsIFZlY3RvcjxXZWJDb3JlOjpHcmFtbWFyRGV0YWlsPiYsIGludCogYmFkR3Jh
bW1hckxvY2F0aW9uLCBpbnQqIGJhZEdyYW1tYXJMZW5ndGgpIG92ZXJyaWRlOwotICAgIHZvaWQg
dXBkYXRlU3BlbGxpbmdVSVdpdGhHcmFtbWFyU3RyaW5nKGNvbnN0IFdURjo6U3RyaW5nJiwgY29u
c3QgV2ViQ29yZTo6R3JhbW1hckRldGFpbCYpIG92ZXJyaWRlOwotICAgIHZvaWQgdXBkYXRlU3Bl
bGxpbmdVSVdpdGhNaXNzcGVsbGVkV29yZChjb25zdCBXVEY6OlN0cmluZyYpIG92ZXJyaWRlOwot
ICAgIHZvaWQgc2hvd1NwZWxsaW5nVUkoYm9vbCBzaG93KSBvdmVycmlkZTsKLSAgICBib29sIHNw
ZWxsaW5nVUlJc1Nob3dpbmcoKSBvdmVycmlkZTsKLSAgICB2b2lkIGdldEd1ZXNzZXNGb3JXb3Jk
KGNvbnN0IFdURjo6U3RyaW5nJiB3b3JkLCBjb25zdCBXVEY6OlN0cmluZyYgY29udGV4dCwgY29u
c3QgV2ViQ29yZTo6VmlzaWJsZVNlbGVjdGlvbiYgY3VycmVudFNlbGVjdGlvbiwgV1RGOjpWZWN0
b3I8V1RGOjpTdHJpbmc+JiBndWVzc2VzKSBvdmVycmlkZTsKLQotICAgIHZvaWQgd2lsbFNldElu
cHV0TWV0aG9kU3RhdGUoKSBvdmVycmlkZTsKLSAgICB2b2lkIHNldElucHV0TWV0aG9kU3RhdGUo
Ym9vbCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCByZXF1ZXN0Q2hlY2tpbmdPZlN0cmluZyhXZWJDb3Jl
OjpUZXh0Q2hlY2tpbmdSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6VmlzaWJsZVNlbGVjdGlvbiYp
IG92ZXJyaWRlIHsgfQotCi0gICAgV2ViQ29yZTo6VGV4dENoZWNrZXJDbGllbnQqIHRleHRDaGVj
a2VyKCkgb3ZlcnJpZGUgeyByZXR1cm4gdGhpczsgfQorICAgIGJvb2wgc2hvdWxkQ2hhbmdlU2Vs
ZWN0ZWRSYW5nZShXZWJDb3JlOjpSYW5nZSogZnJvbVJhbmdlLCBXZWJDb3JlOjpSYW5nZSogdG9S
YW5nZSwgV2ViQ29yZTo6RUFmZmluaXR5LCBib29sIHN0aWxsU2VsZWN0aW5nKSBmaW5hbDsKKyAg
ICB2b2lkIHRleHRGaWVsZERpZEJlZ2luRWRpdGluZyhXZWJDb3JlOjpFbGVtZW50KikgZmluYWw7
CisgICAgdm9pZCB0ZXh0RmllbGREaWRFbmRFZGl0aW5nKFdlYkNvcmU6OkVsZW1lbnQqKSBmaW5h
bDsKKyAgICB2b2lkIHRleHREaWRDaGFuZ2VJblRleHRGaWVsZChXZWJDb3JlOjpFbGVtZW50Kikg
ZmluYWw7CisgICAgYm9vbCBkb1RleHRGaWVsZENvbW1hbmRGcm9tRXZlbnQoV2ViQ29yZTo6RWxl
bWVudCosIFdlYkNvcmU6OktleWJvYXJkRXZlbnQqKSBmaW5hbDsKKyAgICB2b2lkIHRleHRXaWxs
QmVEZWxldGVkSW5UZXh0RmllbGQoV2ViQ29yZTo6RWxlbWVudCogaW5wdXQpIGZpbmFsOworICAg
IHZvaWQgdGV4dERpZENoYW5nZUluVGV4dEFyZWEoV2ViQ29yZTo6RWxlbWVudCopIGZpbmFsOwor
ICAgIHZvaWQgb3ZlcmZsb3dTY3JvbGxQb3NpdGlvbkNoYW5nZWQoKSBmaW5hbCB7IH0KKworICAg
IHZvaWQgaGFuZGxlS2V5Ym9hcmRFdmVudChXZWJDb3JlOjpLZXlib2FyZEV2ZW50KikgZmluYWw7
CisgICAgdm9pZCBoYW5kbGVJbnB1dE1ldGhvZEtleWRvd24oV2ViQ29yZTo6S2V5Ym9hcmRFdmVu
dCopIGZpbmFsOworCisgICAgYm9vbCBzaG91bGRFcmFzZU1hcmtlcnNBZnRlckNoYW5nZVNlbGVj
dGlvbihXZWJDb3JlOjpUZXh0Q2hlY2tpbmdUeXBlKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIGln
bm9yZVdvcmRJblNwZWxsRG9jdW1lbnQoY29uc3QgV1RGOjpTdHJpbmcmKSBmaW5hbDsKKyAgICB2
b2lkIGxlYXJuV29yZChjb25zdCBXVEY6OlN0cmluZyYpIGZpbmFsOworICAgIHZvaWQgY2hlY2tT
cGVsbGluZ09mU3RyaW5nKFN0cmluZ1ZpZXcsIGludCogbWlzc3BlbGxpbmdMb2NhdGlvbiwgaW50
KiBtaXNzcGVsbGluZ0xlbmd0aCkgZmluYWw7CisgICAgV1RGOjpTdHJpbmcgZ2V0QXV0b0NvcnJl
Y3RTdWdnZXN0aW9uRm9yTWlzc3BlbGxlZFdvcmQoY29uc3QgV1RGOjpTdHJpbmcmKSBmaW5hbDsK
KyAgICB2b2lkIGNoZWNrR3JhbW1hck9mU3RyaW5nKFN0cmluZ1ZpZXcsIFZlY3RvcjxXZWJDb3Jl
OjpHcmFtbWFyRGV0YWlsPiYsIGludCogYmFkR3JhbW1hckxvY2F0aW9uLCBpbnQqIGJhZEdyYW1t
YXJMZW5ndGgpIGZpbmFsOworICAgIHZvaWQgdXBkYXRlU3BlbGxpbmdVSVdpdGhHcmFtbWFyU3Ry
aW5nKGNvbnN0IFdURjo6U3RyaW5nJiwgY29uc3QgV2ViQ29yZTo6R3JhbW1hckRldGFpbCYpIGZp
bmFsOworICAgIHZvaWQgdXBkYXRlU3BlbGxpbmdVSVdpdGhNaXNzcGVsbGVkV29yZChjb25zdCBX
VEY6OlN0cmluZyYpIGZpbmFsOworICAgIHZvaWQgc2hvd1NwZWxsaW5nVUkoYm9vbCBzaG93KSBm
aW5hbDsKKyAgICBib29sIHNwZWxsaW5nVUlJc1Nob3dpbmcoKSBmaW5hbDsKKyAgICB2b2lkIGdl
dEd1ZXNzZXNGb3JXb3JkKGNvbnN0IFdURjo6U3RyaW5nJiB3b3JkLCBjb25zdCBXVEY6OlN0cmlu
ZyYgY29udGV4dCwgY29uc3QgV2ViQ29yZTo6VmlzaWJsZVNlbGVjdGlvbiYgY3VycmVudFNlbGVj
dGlvbiwgV1RGOjpWZWN0b3I8V1RGOjpTdHJpbmc+JiBndWVzc2VzKSBmaW5hbDsKKworICAgIHZv
aWQgd2lsbFNldElucHV0TWV0aG9kU3RhdGUoKSBmaW5hbDsKKyAgICB2b2lkIHNldElucHV0TWV0
aG9kU3RhdGUoYm9vbCkgZmluYWw7CisgICAgdm9pZCByZXF1ZXN0Q2hlY2tpbmdPZlN0cmluZyhX
ZWJDb3JlOjpUZXh0Q2hlY2tpbmdSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6VmlzaWJsZVNlbGVj
dGlvbiYpIGZpbmFsIHsgfQorCisgICAgV2ViQ29yZTo6VGV4dENoZWNrZXJDbGllbnQqIHRleHRD
aGVja2VyKCkgZmluYWwgeyByZXR1cm4gdGhpczsgfQogCi1wcml2YXRlOgogICAgIFdlYlZpZXcq
IG1fd2ViVmlldzsKICAgICBXZWJFZGl0b3JVbmRvVGFyZ2V0KiBtX3VuZG9UYXJnZXQ7CiB9Owpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2Fk
ZXJDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVM
b2FkZXJDbGllbnQuY3BwCmluZGV4IGVhMmJhY2MxNGM3YWJhY2FmNWI4Y2IwMzRmMWUzZDg1MTdi
NjRjYWMuLjM4NTY4YzBjN2UzYTQ5OWU5ODAwMzc2MDAwYTcxOGY3ZTk3YzcyNjkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRl
ckNsaWVudC5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA2LTIw
MTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA2
LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAog
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCkBAIC01MzMsNyArNTMzLDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVu
dDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnMK
ICAgICBmdW5jdGlvbihQb2xpY3lVc2UpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50
OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBOYXZpZ2F0aW9u
QWN0aW9uJiBhY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgUGFzc1JlZlB0
cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSwgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIEZyYW1lUG9s
aWN5RnVuY3Rpb24gZnVuY3Rpb24pCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBh
Y3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3Rh
dGUsIGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9u
KQogewogICAgIFdlYlZpZXcqIHdlYlZpZXcgPSBtX3dlYkZyYW1lLT53ZWJWaWV3KCk7CiAgICAg
RnJhbWUqIGNvcmVGcmFtZSA9IGNvcmUobV93ZWJGcmFtZSk7CkBAIC01NDQsNyArNTQ0LDcgQEAg
dm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5k
b3dBY3Rpb24oY29uc3QgTmF2aWdhdGkKICAgICAgICAgcG9saWN5RGVsZWdhdGUgPSBEZWZhdWx0
UG9saWN5RGVsZWdhdGU6OnNoYXJlZEluc3RhbmNlKCk7CiAKICAgICBDT01QdHI8SVdlYlVSTFJl
cXVlc3Q+IHVybFJlcXVlc3QoQWRvcHRDT00sIFdlYk11dGFibGVVUkxSZXF1ZXN0OjpjcmVhdGVJ
bnN0YW5jZShyZXF1ZXN0KSk7Ci0gICAgQ09NUHRyPFdlYkFjdGlvblByb3BlcnR5QmFnPiBhY3Rp
b25JbmZvcm1hdGlvbihBZG9wdENPTSwgV2ViQWN0aW9uUHJvcGVydHlCYWc6OmNyZWF0ZUluc3Rh
bmNlKGFjdGlvbiwgZm9ybVN0YXRlID8gZm9ybVN0YXRlLT5mb3JtKCkgOiAwLCBjb3JlRnJhbWUp
KTsKKyAgICBDT01QdHI8V2ViQWN0aW9uUHJvcGVydHlCYWc+IGFjdGlvbkluZm9ybWF0aW9uKEFk
b3B0Q09NLCBXZWJBY3Rpb25Qcm9wZXJ0eUJhZzo6Y3JlYXRlSW5zdGFuY2UoYWN0aW9uLCBmb3Jt
U3RhdGUgPyAmZm9ybVN0YXRlLT5mb3JtKCkgOiBudWxscHRyLCBjb3JlRnJhbWUpKTsKIAogICAg
IGlmIChTVUNDRUVERUQocG9saWN5RGVsZWdhdGUtPmRlY2lkZVBvbGljeUZvck5ld1dpbmRvd0Fj
dGlvbih3ZWJWaWV3LCBhY3Rpb25JbmZvcm1hdGlvbi5nZXQoKSwgdXJsUmVxdWVzdC5nZXQoKSwg
QlN0cmluZyhmcmFtZU5hbWUpLCBzZXRVcFBvbGljeUxpc3RlbmVyKGZ1bmN0aW9uKS5nZXQoKSkp
KQogICAgICAgICByZXR1cm47CkBAIC01NTIsNyArNTUyLDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRl
ckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2
aWdhdGkKICAgICBmdW5jdGlvbihQb2xpY3lVc2UpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgTmF2
aWdhdGlvbkFjdGlvbiYgYWN0aW9uLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFBh
c3NSZWZQdHI8Rm9ybVN0YXRlPiBmb3JtU3RhdGUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rp
b24pCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5h
dmlnYXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgYWN0aW9uLCBjb25zdCBSZXNv
dXJjZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSogZm9ybVN0YXRlLCBGcmFtZVBvbGljeUZ1
bmN0aW9uIGZ1bmN0aW9uKQogewogICAgIFdlYlZpZXcqIHdlYlZpZXcgPSBtX3dlYkZyYW1lLT53
ZWJWaWV3KCk7CiAgICAgRnJhbWUqIGNvcmVGcmFtZSA9IGNvcmUobV93ZWJGcmFtZSk7CkBAIC01
NjMsNyArNTYzLDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQ
b2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5hdmlnYXQKICAgICAgICAgcG9saWN5RGVs
ZWdhdGUgPSBEZWZhdWx0UG9saWN5RGVsZWdhdGU6OnNoYXJlZEluc3RhbmNlKCk7CiAKICAgICBD
T01QdHI8SVdlYlVSTFJlcXVlc3Q+IHVybFJlcXVlc3QoQWRvcHRDT00sIFdlYk11dGFibGVVUkxS
ZXF1ZXN0OjpjcmVhdGVJbnN0YW5jZShyZXF1ZXN0KSk7Ci0gICAgQ09NUHRyPFdlYkFjdGlvblBy
b3BlcnR5QmFnPiBhY3Rpb25JbmZvcm1hdGlvbihBZG9wdENPTSwgV2ViQWN0aW9uUHJvcGVydHlC
YWc6OmNyZWF0ZUluc3RhbmNlKGFjdGlvbiwgZm9ybVN0YXRlID8gZm9ybVN0YXRlLT5mb3JtKCkg
OiAwLCBjb3JlRnJhbWUpKTsKKyAgICBDT01QdHI8V2ViQWN0aW9uUHJvcGVydHlCYWc+IGFjdGlv
bkluZm9ybWF0aW9uKEFkb3B0Q09NLCBXZWJBY3Rpb25Qcm9wZXJ0eUJhZzo6Y3JlYXRlSW5zdGFu
Y2UoYWN0aW9uLCBmb3JtU3RhdGUgPyAmZm9ybVN0YXRlLT5mb3JtKCkgOiBudWxscHRyLCBjb3Jl
RnJhbWUpKTsKIAogICAgIGlmIChTVUNDRUVERUQocG9saWN5RGVsZWdhdGUtPmRlY2lkZVBvbGlj
eUZvck5hdmlnYXRpb25BY3Rpb24od2ViVmlldywgYWN0aW9uSW5mb3JtYXRpb24uZ2V0KCksIHVy
bFJlcXVlc3QuZ2V0KCksIG1fd2ViRnJhbWUsIHNldFVwUG9saWN5TGlzdGVuZXIoZnVuY3Rpb24p
LmdldCgpKSkpCiAgICAgICAgIHJldHVybjsKQEAgLTU4MiwxMSArNTgyLDExIEBAIHZvaWQgV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoVW5hYmxlVG9JbXBsZW1lbnRQb2xpY3koY29uc3Qg
UmVzb3VyY2VFcnJvciYKICAgICBwb2xpY3lEZWxlZ2F0ZS0+dW5hYmxlVG9JbXBsZW1lbnRQb2xp
Y3lXaXRoRXJyb3Iod2ViVmlldywgd2ViRXJyb3IuZ2V0KCksIG1fd2ViRnJhbWUpOwogfQogCi12
b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoUGFz
c1JlZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+KQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJlZjxXZWJDb3JlOjpGb3JtU3RhdGU+JiYpCiB7
CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0o
UGFzc1JlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSwgRnJhbWVQb2xpY3lGdW5jdGlvbiBmdW5j
dGlvbikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0o
Rm9ybVN0YXRlJiBmb3JtU3RhdGUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24pCiB7CiAg
ICAgV2ViVmlldyogd2ViVmlldyA9IG1fd2ViRnJhbWUtPndlYlZpZXcoKTsKICAgICBGcmFtZSog
Y29yZUZyYW1lID0gY29yZShtX3dlYkZyYW1lKTsKQEAgLTU5OSwxNyArNTk5LDE3IEBAIHZvaWQg
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0oUGFzc1JlZlB0cjxG
b3JtU3RhdGU+IGZvcm1TdGF0CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBDT01QdHI8
SURPTUVsZW1lbnQ+IGZvcm1FbGVtZW50KEFkb3B0Q09NLCBET01FbGVtZW50OjpjcmVhdGVJbnN0
YW5jZShmb3JtU3RhdGUtPmZvcm0oKSkpOworICAgIENPTVB0cjxJRE9NRWxlbWVudD4gZm9ybUVs
ZW1lbnQoQWRvcHRDT00sIERPTUVsZW1lbnQ6OmNyZWF0ZUluc3RhbmNlKCZmb3JtU3RhdGUuZm9y
bSgpKSk7CiAKICAgICBIYXNoTWFwPFN0cmluZywgU3RyaW5nPiBmb3JtVmFsdWVzTWFwOwotICAg
IGNvbnN0IFN0cmluZ1BhaXJWZWN0b3ImIHRleHRGaWVsZFZhbHVlcyA9IGZvcm1TdGF0ZS0+dGV4
dEZpZWxkVmFsdWVzKCk7CisgICAgY29uc3QgU3RyaW5nUGFpclZlY3RvciYgdGV4dEZpZWxkVmFs
dWVzID0gZm9ybVN0YXRlLnRleHRGaWVsZFZhbHVlcygpOwogICAgIHNpemVfdCBzaXplID0gdGV4
dEZpZWxkVmFsdWVzLnNpemUoKTsKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHNpemU7ICsr
aSkKICAgICAgICAgZm9ybVZhbHVlc01hcC5hZGQodGV4dEZpZWxkVmFsdWVzW2ldLmZpcnN0LCB0
ZXh0RmllbGRWYWx1ZXNbaV0uc2Vjb25kKTsKIAogICAgIENPTVB0cjxJUHJvcGVydHlCYWc+IGZv
cm1WYWx1ZXNQcm9wZXJ0eUJhZyhBZG9wdENPTSwgQ09NUHJvcGVydHlCYWc8U3RyaW5nPjo6Y3Jl
YXRlSW5zdGFuY2UoZm9ybVZhbHVlc01hcCkpOwogCi0gICAgQ09NUHRyPFdlYkZyYW1lPiBzb3Vy
Y2VGcmFtZShraXQoZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLT5mcmFtZSgpKSk7CisgICAg
Q09NUHRyPFdlYkZyYW1lPiBzb3VyY2VGcmFtZShraXQoZm9ybVN0YXRlLnNvdXJjZURvY3VtZW50
KCkuZnJhbWUoKSkpOwogICAgIGlmIChTVUNDRUVERUQoZm9ybURlbGVnYXRlLT53aWxsU3VibWl0
Rm9ybShtX3dlYkZyYW1lLCBzb3VyY2VGcmFtZS5nZXQoKSwgZm9ybUVsZW1lbnQuZ2V0KCksIGZv
cm1WYWx1ZXNQcm9wZXJ0eUJhZy5nZXQoKSwgc2V0VXBQb2xpY3lMaXN0ZW5lcihmdW5jdGlvbiku
Z2V0KCkpKSkKICAgICAgICAgcmV0dXJuOwogCkBAIC0xMDEyLDI5ICsxMDEyLDIxIEBAIGJvb2wg
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNhbkNhY2hlUGFnZSgpIGNvbnN0CiAgICAgcmV0dXJuIHRy
dWU7CiB9CiAKLVJlZlB0cjxGcmFtZT4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1l
KGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIG5hbWUsIEhUTUxGcmFtZU93bmVyRWxlbWVu
dCogb3duZXJFbGVtZW50LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFN0cmlu
ZyYgcmVmZXJyZXIsIGJvb2wgLyphbGxvd3NTY3JvbGxpbmcqLywgaW50IC8qbWFyZ2luV2lkdGgq
LywgaW50IC8qbWFyZ2luSGVpZ2h0Ki8pCi17Ci0gICAgUmVmUHRyPEZyYW1lPiByZXN1bHQgPSBj
cmVhdGVGcmFtZSh1cmwsIG5hbWUsIG93bmVyRWxlbWVudCwgcmVmZXJyZXIpOwotICAgIGlmICgh
cmVzdWx0KQotICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICByZXR1cm4gcmVzdWx0OwotfQot
Ci1SZWZQdHI8RnJhbWU+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVGcmFtZShjb25zdCBV
UkwmIFVSTCwgY29uc3QgU3RyaW5nJiBuYW1lLCBIVE1MRnJhbWVPd25lckVsZW1lbnQqIG93bmVy
RWxlbWVudCwgY29uc3QgU3RyaW5nJiByZWZlcnJlcikKK1JlZlB0cjxGcmFtZT4gV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIG5h
bWUsIEhUTUxGcmFtZU93bmVyRWxlbWVudCYgb3duZXJFbGVtZW50LAorICAgIGNvbnN0IFN0cmlu
ZyYgcmVmZXJyZXIsIGJvb2wgLyphbGxvd3NTY3JvbGxpbmcqLywgaW50IC8qbWFyZ2luV2lkdGgq
LywgaW50IC8qbWFyZ2luSGVpZ2h0Ki8pCiB7CiAgICAgRnJhbWUqIGNvcmVGcmFtZSA9IGNvcmUo
bV93ZWJGcmFtZSk7CiAgICAgQVNTRVJUKGNvcmVGcmFtZSk7CiAKICAgICBDT01QdHI8V2ViRnJh
bWU+IHdlYkZyYW1lKEFkb3B0Q09NLCBXZWJGcmFtZTo6Y3JlYXRlSW5zdGFuY2UoKSk7CiAKLSAg
ICBSZWZQdHI8RnJhbWU+IGNoaWxkRnJhbWUgPSB3ZWJGcmFtZS0+Y3JlYXRlU3ViZnJhbWVXaXRo
T3duZXJFbGVtZW50KG1fd2ViRnJhbWUtPndlYlZpZXcoKSwgY29yZUZyYW1lLT5wYWdlKCksIG93
bmVyRWxlbWVudCk7CisgICAgUmVmUHRyPEZyYW1lPiBjaGlsZEZyYW1lID0gd2ViRnJhbWUtPmNy
ZWF0ZVN1YmZyYW1lV2l0aE93bmVyRWxlbWVudChtX3dlYkZyYW1lLT53ZWJWaWV3KCksIGNvcmVG
cmFtZS0+cGFnZSgpLCAmb3duZXJFbGVtZW50KTsKIAogICAgIGNoaWxkRnJhbWUtPnRyZWUoKS5z
ZXROYW1lKG5hbWUpOwogICAgIGNvcmVGcmFtZS0+dHJlZSgpLmFwcGVuZENoaWxkKGNoaWxkRnJh
bWUpOwogICAgIGNoaWxkRnJhbWUtPmluaXQoKTsKIAotICAgIGNvcmVGcmFtZS0+bG9hZGVyKCku
bG9hZFVSTEludG9DaGlsZEZyYW1lKFVSTCwgcmVmZXJyZXIsIGNoaWxkRnJhbWUuZ2V0KCkpOwor
ICAgIGNvcmVGcmFtZS0+bG9hZGVyKCkubG9hZFVSTEludG9DaGlsZEZyYW1lKHVybCwgcmVmZXJy
ZXIsIGNoaWxkRnJhbWUuZ2V0KCkpOwogCiAgICAgLy8gVGhlIGZyYW1lJ3Mgb25sb2FkIGhhbmRs
ZXIgbWF5IGhhdmUgcmVtb3ZlZCBpdCBmcm9tIHRoZSBkb2N1bWVudC4KICAgICBpZiAoIWNoaWxk
RnJhbWUtPnRyZWUoKS5wYXJlbnQoKSkKQEAgLTExMzAsNyArMTEyMiw3IEBAIHZvaWQgV2ViRnJh
bWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmFpbFRvU3RhcnRQbHVnaW4oY29uc3QgUGx1Z2lu
VmlldyogcGx1Z2luCiAgICAgcmVzb3VyY2VMb2FkRGVsZWdhdGUtPnBsdWdJbkZhaWxlZFdpdGhF
cnJvcih3ZWJWaWV3LCBlcnJvci5nZXQoKSwgZ2V0V2ViRGF0YVNvdXJjZShmcmFtZS0+bG9hZGVy
KCkuZG9jdW1lbnRMb2FkZXIoKSkpOwogfQogCi1SZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRl
ckNsaWVudDo6Y3JlYXRlUGx1Z2luKGNvbnN0IEludFNpemUmIHBsdWdpblNpemUsIEhUTUxQbHVn
SW5FbGVtZW50KiBlbGVtZW50LCBjb25zdCBVUkwmIHVybCwgY29uc3QgVmVjdG9yPFN0cmluZz4m
IHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcywgY29uc3QgU3Ry
aW5nJiBtaW1lVHlwZSwgYm9vbCBsb2FkTWFudWFsbHkpCitSZWZQdHI8V2lkZ2V0PiBXZWJGcmFt
ZUxvYWRlckNsaWVudDo6Y3JlYXRlUGx1Z2luKGNvbnN0IEludFNpemUmIHBsdWdpblNpemUsIEhU
TUxQbHVnSW5FbGVtZW50JiBlbGVtZW50LCBjb25zdCBVUkwmIHVybCwgY29uc3QgVmVjdG9yPFN0
cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcywgY29u
c3QgU3RyaW5nJiBtaW1lVHlwZSwgYm9vbCBsb2FkTWFudWFsbHkpCiB7CiAgICAgV2ViVmlldyog
d2ViVmlldyA9IG1fd2ViRnJhbWUtPndlYlZpZXcoKTsKIApAQCAtMTE0NCw3ICsxMTM2LDcgQEAg
UmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJ
bnRTaXplJiBwbHVnaW5TaXplLCBIVE0KICAgICAgICAgICAgIGZvciAodW5zaWduZWQgaSA9IDA7
IGkgPCBwYXJhbU5hbWVzLnNpemUoKTsgaSsrKSAKICAgICAgICAgICAgICAgICB2aWV3QXJndW1l
bnRzLnNldChwYXJhbU5hbWVzW2ldLCBwYXJhbVZhbHVlc1tpXSk7CiAgICAgICAgICAgICBDT01Q
dHI8SVByb3BlcnR5QmFnPiB2aWV3QXJndW1lbnRzQmFnKEFkb3B0Q09NLCBDT01Qcm9wZXJ0eUJh
ZzxTdHJpbmc+OjphZG9wdCh2aWV3QXJndW1lbnRzKSk7Ci0gICAgICAgICAgICBDT01QdHI8SURP
TUVsZW1lbnQ+IGNvbnRhaW5pbmdFbGVtZW50KEFkb3B0Q09NLCBET01FbGVtZW50OjpjcmVhdGVJ
bnN0YW5jZShlbGVtZW50KSk7CisgICAgICAgICAgICBDT01QdHI8SURPTUVsZW1lbnQ+IGNvbnRh
aW5pbmdFbGVtZW50KEFkb3B0Q09NLCBET01FbGVtZW50OjpjcmVhdGVJbnN0YW5jZSgmZWxlbWVu
dCkpOwogCiAgICAgICAgICAgICBIYXNoTWFwPFN0cmluZywgQ09NVmFyaWFudD4gYXJndW1lbnRz
OwogCkBAIC0xMTYyLDEzICsxMTU0LDEzIEBAIFJlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYgcGx1Z2luU2l6ZSwgSFRNCiAgICAg
ICAgICAgICAgICAgSFJFU1VMVCBociA9IHdlYlZpZXctPnZpZXdXaW5kb3coJnBhcmVudFdpbmRv
dyk7CiAgICAgICAgICAgICAgICAgQVNTRVJUKFNVQ0NFRURFRChocikpOwogCi0gICAgICAgICAg
ICAgICAgcmV0dXJuIEVtYmVkZGVkV2lkZ2V0OjpjcmVhdGUodmlldy5nZXQoKSwgZWxlbWVudCwg
cGFyZW50V2luZG93LCBwbHVnaW5TaXplKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gRW1iZWRk
ZWRXaWRnZXQ6OmNyZWF0ZSh2aWV3LmdldCgpLCAmZWxlbWVudCwgcGFyZW50V2luZG93LCBwbHVn
aW5TaXplKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0KIAogICAgIEZyYW1lKiBm
cmFtZSA9IGNvcmUobV93ZWJGcmFtZSk7Ci0gICAgUmVmUHRyPFBsdWdpblZpZXc+IHBsdWdpblZp
ZXcgPSBQbHVnaW5WaWV3OjpjcmVhdGUoZnJhbWUsIHBsdWdpblNpemUsIGVsZW1lbnQsIHVybCwg
cGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMsIG1pbWVUeXBlLCBsb2FkTWFudWFsbHkpOworICAgIFJl
ZlB0cjxQbHVnaW5WaWV3PiBwbHVnaW5WaWV3ID0gUGx1Z2luVmlldzo6Y3JlYXRlKGZyYW1lLCBw
bHVnaW5TaXplLCAmZWxlbWVudCwgdXJsLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcywgbWltZVR5
cGUsIGxvYWRNYW51YWxseSk7CiAKICAgICBpZiAocGx1Z2luVmlldy0+c3RhdHVzKCkgPT0gUGx1
Z2luU3RhdHVzTG9hZGVkU3VjY2Vzc2Z1bGx5KQogICAgICAgICByZXR1cm4gcGx1Z2luVmlldzsK
QEAgLTExODcsMTggKzExNzksMTggQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6cmVkaXJl
Y3REYXRhVG9QbHVnaW4oV2lkZ2V0KiBwbHVnaW5XaWRnZXQpCiAgICAgICAgIG1fbWFudWFsTG9h
ZGVyID0gc3RhdGljX2Nhc3Q8RW1iZWRkZWRXaWRnZXQqPihwbHVnaW5XaWRnZXQpOwogfQogCi1Q
YXNzUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUphdmFBcHBsZXRX
aWRnZXQoY29uc3QgSW50U2l6ZSYgcGx1Z2luU2l6ZSwgSFRNTEFwcGxldEVsZW1lbnQqIGVsZW1l
bnQsIGNvbnN0IFVSTCYgLypiYXNlVVJMKi8sIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5h
bWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpCitSZWZQdHI8V2lkZ2V0PiBX
ZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXpl
JiBwbHVnaW5TaXplLCBIVE1MQXBwbGV0RWxlbWVudCYgZWxlbWVudCwgY29uc3QgVVJMJiAvKmJh
c2VVUkwqLywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxT
dHJpbmc+JiBwYXJhbVZhbHVlcykKIHsKLSAgICBSZWZQdHI8UGx1Z2luVmlldz4gcGx1Z2luVmll
dyA9IFBsdWdpblZpZXc6OmNyZWF0ZShjb3JlKG1fd2ViRnJhbWUpLCBwbHVnaW5TaXplLCBlbGVt
ZW50LCBVUkwoKSwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMsICJhcHBsaWNhdGlvbi94LWphdmEt
YXBwbGV0IiwgZmFsc2UpOworICAgIFJlZlB0cjxQbHVnaW5WaWV3PiBwbHVnaW5WaWV3ID0gUGx1
Z2luVmlldzo6Y3JlYXRlKGNvcmUobV93ZWJGcmFtZSksIHBsdWdpblNpemUsICZlbGVtZW50LCBV
UkwoKSwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMsICJhcHBsaWNhdGlvbi94LWphdmEtYXBwbGV0
IiwgZmFsc2UpOwogCiAgICAgLy8gQ2hlY2sgaWYgdGhlIHBsdWdpbiBjYW4gYmUgbG9hZGVkIHN1
Y2Nlc3NmdWxseQogICAgIGlmIChwbHVnaW5WaWV3LT5wbHVnaW4oKSAmJiBwbHVnaW5WaWV3LT5w
bHVnaW4oKS0+bG9hZCgpKQotICAgICAgICByZXR1cm4gcGx1Z2luVmlldzsKKyAgICAgICAgcmV0
dXJuIFdURk1vdmUocGx1Z2luVmlldyk7CiAKICAgICBXZWJWaWV3KiB3ZWJWaWV3ID0gbV93ZWJG
cmFtZS0+d2ViVmlldygpOwogICAgIENPTVB0cjxJV2ViUmVzb3VyY2VMb2FkRGVsZWdhdGU+IHJl
c291cmNlTG9hZERlbGVnYXRlOwogICAgIGlmIChGQUlMRUQod2ViVmlldy0+cmVzb3VyY2VMb2Fk
RGVsZWdhdGUoJnJlc291cmNlTG9hZERlbGVnYXRlKSkpCi0gICAgICAgIHJldHVybiBwbHVnaW5W
aWV3OworICAgICAgICByZXR1cm4gV1RGTW92ZShwbHVnaW5WaWV3KTsKIAogICAgIENPTVB0cjxD
RkRpY3Rpb25hcnlQcm9wZXJ0eUJhZz4gdXNlckluZm9CYWcgPSBDRkRpY3Rpb25hcnlQcm9wZXJ0
eUJhZzo6Y3JlYXRlSW5zdGFuY2UoKTsKIApAQCAtMTIxMCw3ICsxMjAyLDcgQEAgUGFzc1JlZlB0
cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNv
bnN0IEludFNpemUmIHAKIAogICAgIHJlc291cmNlTG9hZERlbGVnYXRlLT5wbHVnSW5GYWlsZWRX
aXRoRXJyb3Iod2ViVmlldywgZXJyb3IuZ2V0KCksIGdldFdlYkRhdGFTb3VyY2UoY29yZUZyYW1l
LT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKSk7CiAKLSAgICByZXR1cm4gcGx1Z2luVmlldzsK
KyAgICByZXR1cm4gV1RGTW92ZShwbHVnaW5WaWV3KTsKIH0KIAogV2ViSGlzdG9yeSogV2ViRnJh
bWVMb2FkZXJDbGllbnQ6OndlYkhpc3RvcnkoKSBjb25zdApAQCAtMTI2MCw3ICsxMjUyLDcgQEAg
dm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6cmVnaXN0ZXJGb3JJY29uTm90aWZpY2F0aW9uKGJv
b2wgbGlzdGVuKQogICAgIG1fd2ViRnJhbWUtPndlYlZpZXcoKS0+cmVnaXN0ZXJGb3JJY29uTm90
aWZpY2F0aW9uKGxpc3Rlbik7CiB9CiAKLVBhc3NSZWZQdHI8RnJhbWVOZXR3b3JraW5nQ29udGV4
dD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkKK1JlZjxG
cmFtZU5ldHdvcmtpbmdDb250ZXh0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlTmV0d29y
a2luZ0NvbnRleHQoKQogewogICAgIHJldHVybiBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0Ojpj
cmVhdGUoY29yZShtX3dlYkZyYW1lKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dp
bi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oIGIvU291cmNlL1dlYktpdC93
aW4vV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaAppbmRleCA4Y2E5YjlkZWNk
MTljZWM5N2U0YmE3ZDNkNTE2ODY0Y2UxODllZTc4Li5jNzY1NzVjOGNkOWJlZmU1OWYzNDA3NTY2
YmE5MjU3YzFiZDRjMTZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3Vw
cG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNv
cmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKQEAgLTEsNSArMSw1IEBACiAvKgotICog
Q29weXJpZ2h0IChDKSAyMDA2LTIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC00OSw5ICs0OSw5IEBAIHB1Ymxp
YzoKICAgICB2b2lkIHNldFdlYkZyYW1lKFdlYkZyYW1lKiB3ZWJGcmFtZSkgeyBtX3dlYkZyYW1l
ID0gd2ViRnJhbWU7IH0KICAgICBXZWJGcmFtZSogd2ViRnJhbWUoKSBjb25zdCB7IHJldHVybiBt
X3dlYkZyYW1lOyB9CiAKLSAgICB2aXJ0dWFsIGJvb2wgaGFzV2ViVmlldygpIGNvbnN0OworICAg
IGJvb2wgaGFzV2ViVmlldygpIGNvbnN0IG92ZXJyaWRlOwogCi0gICAgdmlydHVhbCBQYXNzUmVm
UHRyPFdlYkNvcmU6OkZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZU5ldHdvcmtpbmdDb250
ZXh0KCk7CisgICAgUmVmPFdlYkNvcmU6OkZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZU5l
dHdvcmtpbmdDb250ZXh0KCkgb3ZlcnJpZGU7CiAKICAgICB2b2lkIGZyYW1lTG9hZGVyRGVzdHJv
eWVkKCkgb3ZlcnJpZGU7CiAgICAgdm9pZCBtYWtlUmVwcmVzZW50YXRpb24oV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXIqKSBvdmVycmlkZTsKQEAgLTYzLDcgKzYzLDcgQEAgcHVibGljOgogICAgIHZv
aWQgZGV0YWNoZWRGcm9tUGFyZW50MygpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBjb252ZXJ0TWFp
blJlc291cmNlTG9hZFRvRG93bmxvYWQoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3Jl
OjpTZXNzaW9uSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgYXNzaWdu
SWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJD
b3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpOwor
ICAgIHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlUmVxdWVzdCYpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5kUmVxdWVz
dChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgV2Vi
Q29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYg
cmVkaXJlY3RSZXNwb25zZSkgb3ZlcnJpZGU7CiAgICAgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFs
U3RvcmFnZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
cikgb3ZlcnJpZGU7CkBAIC03Miw3ICs3Miw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGRpc3BhdGNo
RGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoKSBvdmVycmlkZTsKICAgICB2b2lkIGRp
c3BhdGNoRGlkRmluaXNoTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllcikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2Fk
aW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7Ci0gICAgdmlydHVhbCBib29s
IHNob3VsZENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBjb25zdCB1
bnNpZ25lZCBjaGFyKiBkYXRhLCB1bnNpZ25lZCBsb25nIGxvbmcgbGVuZ3RoKTsKKyAgICBib29s
IHNob3VsZENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBjb25zdCB1
bnNpZ25lZCBjaGFyKiBkYXRhLCB1bnNpZ25lZCBsb25nIGxvbmcgbGVuZ3RoKSBvdmVycmlkZTsK
IAogICAgIHZvaWQgZGlzcGF0Y2hEaWREaXNwYXRjaE9ubG9hZEV2ZW50cygpIG92ZXJyaWRlOwog
ICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlU2VydmVyUmVkaXJlY3RGb3JQcm92aXNpb25hbExv
YWQoKSBvdmVycmlkZTsKQEAgLTk0LDE0ICs5NCwxNCBAQCBwdWJsaWM6CiAgICAgdm9pZCBkaXNw
YXRjaERpZFJlYWNoTGF5b3V0TWlsZXN0b25lKFdlYkNvcmU6OkxheW91dE1pbGVzdG9uZXMpIG92
ZXJyaWRlOwogCiAgICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvclJlc3BvbnNlKGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QmLCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBvdmVycmlkZTsKLSAgICB2b2lkIGRp
c3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmln
YXRpb25BY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRy
PFdlYkNvcmU6OkZvcm1TdGF0ZT4sIGNvbnN0IFdURjo6U3RyaW5nJiBmcmFtZU5hbWUsIFdlYkNv
cmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEZWNp
ZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rp
b24mLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPFdlYkNvcmU6
OkZvcm1TdGF0ZT4sIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOworICAg
IHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgV2ViQ29y
ZTo6TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFdl
YkNvcmU6OkZvcm1TdGF0ZSosIGNvbnN0IFdURjo6U3RyaW5nJiBmcmFtZU5hbWUsIFdlYkNvcmU6
OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQ
b2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24m
LCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpGb3JtU3RhdGUqLCBX
ZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBvdmVycmlkZTsKICAgICB2b2lkIGNhbmNlbFBv
bGljeUNoZWNrKCkgb3ZlcnJpZGU7CiAKICAgICB2b2lkIGRpc3BhdGNoVW5hYmxlVG9JbXBsZW1l
bnRQb2xpY3koY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwogCi0gICAg
dm9pZCBkaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoUGFzc1JlZlB0cjxXZWJDb3JlOjpGb3Jt
U3RhdGU+KSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0oUGFzc1Jl
ZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+LCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBv
dmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChSZWY8V2ViQ29y
ZTo6Rm9ybVN0YXRlPiYmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFN1Ym1pdEZv
cm0oV2ViQ29yZTo6Rm9ybVN0YXRlJiwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgb3Zl
cnJpZGU7CiAKICAgICB2b2lkIHJldmVydFRvUHJvdmlzaW9uYWxTdGF0ZShXZWJDb3JlOjpEb2N1
bWVudExvYWRlciopIG92ZXJyaWRlOwogICAgIGJvb2wgZGlzcGF0Y2hEaWRMb2FkUmVzb3VyY2VG
cm9tTWVtb3J5Q2FjaGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgaW50IGxl
bmd0aCkgb3ZlcnJpZGU7CkBAIC0xMTQsOSArMTE0LDkgQEAgcHVibGljOgogCiAgICAgdm9pZCBz
dGFydERvd25sb2FkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFN0cmlu
ZyYgc3VnZ2VzdGVkTmFtZSA9IFN0cmluZygpKSBvdmVycmlkZTsKIAotICAgIHZpcnR1YWwgdm9p
ZCBwcm9ncmVzc1N0YXJ0ZWQoV2ViQ29yZTo6RnJhbWUmKTsKLSAgICB2aXJ0dWFsIHZvaWQgcHJv
Z3Jlc3NFc3RpbWF0ZUNoYW5nZWQoV2ViQ29yZTo6RnJhbWUmKTsKLSAgICB2aXJ0dWFsIHZvaWQg
cHJvZ3Jlc3NGaW5pc2hlZChXZWJDb3JlOjpGcmFtZSYpOworICAgIHZvaWQgcHJvZ3Jlc3NTdGFy
dGVkKFdlYkNvcmU6OkZyYW1lJikgb3ZlcnJpZGU7CisgICAgdm9pZCBwcm9ncmVzc0VzdGltYXRl
Q2hhbmdlZChXZWJDb3JlOjpGcmFtZSYpIG92ZXJyaWRlOworICAgIHZvaWQgcHJvZ3Jlc3NGaW5p
c2hlZChXZWJDb3JlOjpGcmFtZSYpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBjb21taXR0ZWRMb2Fk
KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgY2hhciosIGludCkgb3ZlcnJpZGU7CiAg
ICAgdm9pZCBmaW5pc2hlZExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBvdmVycmlk
ZTsKQEAgLTE0OSwxMCArMTQ5LDEwIEBAIHB1YmxpYzoKIAogICAgIFdURjo6U3RyaW5nIHVzZXJB
Z2VudChjb25zdCBXZWJDb3JlOjpVUkwmKSBvdmVycmlkZTsKIAotICAgIHZpcnR1YWwgUmVmPFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyPiBjcmVhdGVEb2N1bWVudExvYWRlcihjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpTdWJzdGl0dXRlRGF0YSYpOworICAg
IFJlZjxXZWJDb3JlOjpEb2N1bWVudExvYWRlcj4gY3JlYXRlRG9jdW1lbnRMb2FkZXIoY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6U3Vic3RpdHV0ZURhdGEm
KSBvdmVycmlkZTsKICAgICB2b2lkIHVwZGF0ZUNhY2hlZERvY3VtZW50TG9hZGVyKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyJikgb3ZlcnJpZGUgeyB9CiAKLSAgICB2aXJ0dWFsIHZvaWQgc2V0VGl0
bGUoY29uc3QgV2ViQ29yZTo6U3RyaW5nV2l0aERpcmVjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlVS
TCYpOworICAgIHZvaWQgc2V0VGl0bGUoY29uc3QgV2ViQ29yZTo6U3RyaW5nV2l0aERpcmVjdGlv
biYsIGNvbnN0IFdlYkNvcmU6OlVSTCYpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBzYXZlUGxhdGZv
cm1EYXRhVG9DYWNoZWRGcmFtZShXZWJDb3JlOjpDYWNoZWRGcmFtZSopIG92ZXJyaWRlOwogICAg
IHZvaWQgdHJhbnNpdGlvblRvQ29tbWl0dGVkRnJvbUNhY2hlZEZyYW1lKFdlYkNvcmU6OkNhY2hl
ZEZyYW1lKikgb3ZlcnJpZGU7CkBAIC0xNzYsMTUgKzE3NiwxNSBAQCBwdWJsaWM6CiAKICAgICB2
b2lkIGRpc3BhdGNoRGlkQmVjb21lRnJhbWVzZXQoYm9vbCkgb3ZlcnJpZGU7CiAKLSAgICB2aXJ0
dWFsIGJvb2wgY2FuQ2FjaGVQYWdlKCkgY29uc3Q7CisgICAgYm9vbCBjYW5DYWNoZVBhZ2UoKSBj
b25zdCBvdmVycmlkZTsKIAotICAgIFJlZlB0cjxXZWJDb3JlOjpGcmFtZT4gY3JlYXRlRnJhbWUo
Y29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgV1RGOjpTdHJpbmcmIG5hbWUsIFdlYkNvcmU6OkhU
TUxGcmFtZU93bmVyRWxlbWVudCosCisgICAgUmVmUHRyPFdlYkNvcmU6OkZyYW1lPiBjcmVhdGVG
cmFtZShjb25zdCBXZWJDb3JlOjpVUkwmLCBjb25zdCBXVEY6OlN0cmluZyYgbmFtZSwgV2ViQ29y
ZTo6SFRNTEZyYW1lT3duZXJFbGVtZW50JiwKICAgICAgICAgY29uc3QgV1RGOjpTdHJpbmcmIHJl
ZmVycmVyLCBib29sIGFsbG93c1Njcm9sbGluZywgaW50IG1hcmdpbldpZHRoLCBpbnQgbWFyZ2lu
SGVpZ2h0KSBvdmVycmlkZTsKLSAgICBSZWZQdHI8V2ViQ29yZTo6V2lkZ2V0PiBjcmVhdGVQbHVn
aW4oY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50Kiwg
Y29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgVmVjdG9yPFdURjo6U3RyaW5nPiYsIGNvbnN0IFZl
Y3RvcjxXVEY6OlN0cmluZz4mLCBjb25zdCBXVEY6OlN0cmluZyYsIGJvb2wgbG9hZE1hbnVhbGx5
KSBvdmVycmlkZTsKKyAgICBSZWZQdHI8V2ViQ29yZTo6V2lkZ2V0PiBjcmVhdGVQbHVnaW4oY29u
c3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50JiwgY29uc3Qg
V2ViQ29yZTo6VVJMJiwgY29uc3QgVmVjdG9yPFdURjo6U3RyaW5nPiYsIGNvbnN0IFZlY3RvcjxX
VEY6OlN0cmluZz4mLCBjb25zdCBXVEY6OlN0cmluZyYsIGJvb2wgbG9hZE1hbnVhbGx5KSBvdmVy
cmlkZTsKICAgICB2b2lkIHJlY3JlYXRlUGx1Z2luKFdlYkNvcmU6OldpZGdldCopIG92ZXJyaWRl
IHsgfQogICAgIHZvaWQgcmVkaXJlY3REYXRhVG9QbHVnaW4oV2ViQ29yZTo6V2lkZ2V0KiBwbHVn
aW5XaWRnZXQpIG92ZXJyaWRlOwogCi0gICAgUGFzc1JlZlB0cjxXZWJDb3JlOjpXaWRnZXQ+IGNy
ZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6OkhU
TUxBcHBsZXRFbGVtZW50KiwgY29uc3QgV2ViQ29yZTo6VVJMJiBiYXNlVVJMLCBjb25zdCBWZWN0
b3I8V1RGOjpTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiBw
YXJhbVZhbHVlcykgb3ZlcnJpZGU7CisgICAgUmVmUHRyPFdlYkNvcmU6OldpZGdldD4gY3JlYXRl
SmF2YUFwcGxldFdpZGdldChjb25zdCBXZWJDb3JlOjpJbnRTaXplJiwgV2ViQ29yZTo6SFRNTEFw
cGxldEVsZW1lbnQmLCBjb25zdCBXZWJDb3JlOjpVUkwmIGJhc2VVUkwsIGNvbnN0IFZlY3RvcjxX
VEY6OlN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mIHBhcmFt
VmFsdWVzKSBvdmVycmlkZTsKIAogICAgIFdlYkNvcmU6Ok9iamVjdENvbnRlbnRUeXBlIG9iamVj
dENvbnRlbnRUeXBlKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNvbnN0IFdURjo6U3RyaW5nJiBtaW1l
VHlwZSkgb3ZlcnJpZGU7CiAgICAgV1RGOjpTdHJpbmcgb3ZlcnJpZGVNZWRpYVR5cGUoKSBjb25z
dCBvdmVycmlkZTsKQEAgLTE5NiwyMCArMTk2LDE4IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgcmVn
aXN0ZXJGb3JJY29uTm90aWZpY2F0aW9uKGJvb2wgbGlzdGVuKSBvdmVycmlkZTsKIAotICAgIHZp
cnR1YWwgYm9vbCBzaG91bGRBbHdheXNVc2VQbHVnaW5Eb2N1bWVudChjb25zdCBXVEY6OlN0cmlu
ZyYgbWltZVR5cGUpIGNvbnN0OwotCi0gICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoRGlkRmFpbFRv
U3RhcnRQbHVnaW4oY29uc3QgV2ViQ29yZTo6UGx1Z2luVmlldyopIGNvbnN0OworICAgIGJvb2wg
c2hvdWxkQWx3YXlzVXNlUGx1Z2luRG9jdW1lbnQoY29uc3QgV1RGOjpTdHJpbmcmIG1pbWVUeXBl
KSBjb25zdCBvdmVycmlkZTsKIAogICAgIHZvaWQgcHJlZmV0Y2hETlMoY29uc3QgU3RyaW5nJikg
b3ZlcnJpZGU7CiAKLXByb3RlY3RlZDoKLSAgICBjbGFzcyBXZWJGcmFtZVBvbGljeUxpc3RlbmVy
UHJpdmF0ZTsKLSAgICBzdGQ6OnVuaXF1ZV9wdHI8V2ViRnJhbWVQb2xpY3lMaXN0ZW5lclByaXZh
dGU+IG1fcG9saWN5TGlzdGVuZXJQcml2YXRlOwotCiBwcml2YXRlOgotICAgIFJlZlB0cjxXZWJD
b3JlOjpGcmFtZT4gY3JlYXRlRnJhbWUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgV1RGOjpT
dHJpbmcmIG5hbWUsIFdlYkNvcmU6OkhUTUxGcmFtZU93bmVyRWxlbWVudCosIGNvbnN0IFdURjo6
U3RyaW5nJiByZWZlcnJlcik7CiAgICAgV2ViSGlzdG9yeSogd2ViSGlzdG9yeSgpIGNvbnN0Owog
CisgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxUb1N0YXJ0UGx1Z2luKGNvbnN0IFdlYkNvcmU6OlBs
dWdpblZpZXcqKSBjb25zdDsKKworICAgIGNsYXNzIFdlYkZyYW1lUG9saWN5TGlzdGVuZXJQcml2
YXRlOworICAgIHN0ZDo6dW5pcXVlX3B0cjxXZWJGcmFtZVBvbGljeUxpc3RlbmVyUHJpdmF0ZT4g
bV9wb2xpY3lMaXN0ZW5lclByaXZhdGU7CisKICAgICBXZWJGcmFtZSogbV93ZWJGcmFtZTsKIAog
ICAgIC8vIFBvaW50cyB0byB0aGUgbWFudWFsIGxvYWRlciB0aGF0IGRhdGEgc2hvdWxkIGJlIHJl
ZGlyZWN0ZWQgdG8uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9y
dC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0LmggYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3Jl
U3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0LmgKaW5kZXggZWFjMzA3MjBhYzFhNTRm
ODY1MTAxYmZmNTE0MGM3NGRlMGFmYjBmOS4uZmIyYTc4MzVkOGY4NzM5ZDRjMTUwYWI1MjgzZTVi
N2QyMGI1OGVhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQv
V2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNv
cmVTdXBwb3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQuaApAQCAtMjgsOSArMjgsOSBAQAog
CiBjbGFzcyBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0IDogcHVibGljIFdlYkNvcmU6OkZyYW1l
TmV0d29ya2luZ0NvbnRleHQgewogcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFdlYkZy
YW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZShXZWJDb3JlOjpGcmFtZSogZnJhbWUpCisgICAg
c3RhdGljIFJlZjxXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBjcmVhdGUoV2ViQ29yZTo6RnJh
bWUqIGZyYW1lKQogICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBXZWJGcmFtZU5l
dHdvcmtpbmdDb250ZXh0KGZyYW1lKSk7CisgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdl
YkZyYW1lTmV0d29ya2luZ0NvbnRleHQoZnJhbWUpKTsKICAgICB9CiAKICNpZiBVU0UoQ0ZVUkxD
T05ORUNUSU9OKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSVdlYkFyY2hp
dmUuaCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUElXZWJBcmNoaXZlLmgKaW5kZXggZDk2YjU5
NmRhYmZiZTkwNjhhYzUzNDEwNjg3YmZhMmQxODYxOGIyMy4uODM3NTc3N2RiODBmZTA3ZWFjODM0
OTMwMzNiZDE4NjRhYmFjN2E3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQ
SVdlYkFyY2hpdmUuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJV2ViQXJjaGl2ZS5o
CkBAIC0yOSw3ICsyOSw2IEBACiAjaWYgUExBVEZPUk0oQ09DT0EpCiAKICNpbmNsdWRlICJBUElP
YmplY3QuaCIKLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQ
dHIuaD4KIAogbmFtZXNwYWNlIEFQSSB7CkBAIC01MCw5ICs0OSw5IEBAIGNsYXNzIFdlYkFyY2hp
dmUgOiBwdWJsaWMgQVBJOjpPYmplY3RJbXBsPEFQSTo6T2JqZWN0OjpUeXBlOjpXZWJBcmNoaXZl
PiB7CiBwdWJsaWM6CiAgICAgdmlydHVhbCB+V2ViQXJjaGl2ZSgpOwogCi0gICAgc3RhdGljIFJl
ZjxXZWJBcmNoaXZlPiBjcmVhdGUoV2ViQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3VyY2UsIFBh
c3NSZWZQdHI8QVBJOjpBcnJheT4gc3VicmVzb3VyY2VzLCBQYXNzUmVmUHRyPEFQSTo6QXJyYXk+
IHN1YmZyYW1lQXJjaGl2ZXMpOworICAgIHN0YXRpYyBSZWY8V2ViQXJjaGl2ZT4gY3JlYXRlKFdl
YkFyY2hpdmVSZXNvdXJjZSogbWFpblJlc291cmNlLCBSZWZQdHI8QVBJOjpBcnJheT4mJiBzdWJy
ZXNvdXJjZXMsIFJlZlB0cjxBUEk6OkFycmF5PiYmIHN1YmZyYW1lQXJjaGl2ZXMpOwogICAgIHN0
YXRpYyBSZWY8V2ViQXJjaGl2ZT4gY3JlYXRlKEFQSTo6RGF0YSopOwotICAgIHN0YXRpYyBSZWY8
V2ViQXJjaGl2ZT4gY3JlYXRlKFBhc3NSZWZQdHI8V2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZT4p
OworICAgIHN0YXRpYyBSZWY8V2ViQXJjaGl2ZT4gY3JlYXRlKFJlZlB0cjxXZWJDb3JlOjpMZWdh
Y3lXZWJBcmNoaXZlPiYmKTsKICAgICBzdGF0aWMgUmVmPFdlYkFyY2hpdmU+IGNyZWF0ZShXZWJD
b3JlOjpSYW5nZSopOwogCiAgICAgV2ViQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3VyY2UoKTsK
QEAgLTY0LDkgKzYzLDkgQEAgcHVibGljOgogICAgIFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hpdmUq
IGNvcmVMZWdhY3lXZWJBcmNoaXZlKCk7CiAKIHByaXZhdGU6Ci0gICAgV2ViQXJjaGl2ZShXZWJB
cmNoaXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSwgUGFzc1JlZlB0cjxBUEk6OkFycmF5PiBzdWJy
ZXNvdXJjZXMsIFBhc3NSZWZQdHI8QVBJOjpBcnJheT4gc3ViZnJhbWVBcmNoaXZlcyk7CisgICAg
V2ViQXJjaGl2ZShXZWJBcmNoaXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSwgUmVmUHRyPEFQSTo6
QXJyYXk+JiYgc3VicmVzb3VyY2VzLCBSZWZQdHI8QVBJOjpBcnJheT4mJiBzdWJmcmFtZUFyY2hp
dmVzKTsKICAgICBXZWJBcmNoaXZlKEFQSTo6RGF0YSopOwotICAgIFdlYkFyY2hpdmUoUGFzc1Jl
ZlB0cjxXZWJDb3JlOjpMZWdhY3lXZWJBcmNoaXZlPik7CisgICAgV2ViQXJjaGl2ZShSZWZQdHI8
V2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZT4mJik7CiAKICAgICBSZWZQdHI8V2ViQ29yZTo6TGVn
YWN5V2ViQXJjaGl2ZT4gbV9sZWdhY3lXZWJBcmNoaXZlOwogICAgIFJlZlB0cjxXZWJBcmNoaXZl
UmVzb3VyY2U+IG1fY2FjaGVkTWFpblJlc291cmNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvU2hhcmVkL0FQSVdlYkFyY2hpdmUubW0gYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJV2Vi
QXJjaGl2ZS5tbQppbmRleCA5MjkwM2IzNDdhNDlmY2VjZmE2YzM1YzU5ZTJmNmQ2OTE2ZDk4MmU5
Li5mMmYwZmUwMTcxZjllMzMzMTQ0N2QzNmQwYTQ3YzZkYmUwMWEyMzJlIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJV2ViQXJjaGl2ZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0
Mi9TaGFyZWQvQVBJV2ViQXJjaGl2ZS5tbQpAQCAtMzgsOSArMzgsOSBAQCB1c2luZyBuYW1lc3Bh
Y2UgV2ViQ29yZTsKIAogbmFtZXNwYWNlIEFQSSB7CiAKLVJlZjxXZWJBcmNoaXZlPiBXZWJBcmNo
aXZlOjpjcmVhdGUoV2ViQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3VyY2UsIFBhc3NSZWZQdHI8
QVBJOjpBcnJheT4gc3VicmVzb3VyY2VzLCBQYXNzUmVmUHRyPEFQSTo6QXJyYXk+IHN1YmZyYW1l
QXJjaGl2ZXMpCitSZWY8V2ViQXJjaGl2ZT4gV2ViQXJjaGl2ZTo6Y3JlYXRlKFdlYkFyY2hpdmVS
ZXNvdXJjZSogbWFpblJlc291cmNlLCBSZWZQdHI8QVBJOjpBcnJheT4mJiBzdWJyZXNvdXJjZXMs
IFJlZlB0cjxBUEk6OkFycmF5PiYmIHN1YmZyYW1lQXJjaGl2ZXMpCiB7Ci0gICAgcmV0dXJuIGFk
b3B0UmVmKCpuZXcgV2ViQXJjaGl2ZShtYWluUmVzb3VyY2UsIHN1YnJlc291cmNlcywgc3ViZnJh
bWVBcmNoaXZlcykpOworICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYkFyY2hpdmUobWFpblJl
c291cmNlLCBXVEZNb3ZlKHN1YnJlc291cmNlcyksIFdURk1vdmUoc3ViZnJhbWVBcmNoaXZlcykp
KTsKIH0KIAogUmVmPFdlYkFyY2hpdmU+IFdlYkFyY2hpdmU6OmNyZWF0ZShBUEk6OkRhdGEqIGRh
dGEpCkBAIC00OCw5ICs0OCw5IEBAIFJlZjxXZWJBcmNoaXZlPiBXZWJBcmNoaXZlOjpjcmVhdGUo
QVBJOjpEYXRhKiBkYXRhKQogICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYkFyY2hpdmUoZGF0
YSkpOwogfQogCi1SZWY8V2ViQXJjaGl2ZT4gV2ViQXJjaGl2ZTo6Y3JlYXRlKFBhc3NSZWZQdHI8
TGVnYWN5V2ViQXJjaGl2ZT4gbGVnYWN5V2ViQXJjaGl2ZSkKK1JlZjxXZWJBcmNoaXZlPiBXZWJB
cmNoaXZlOjpjcmVhdGUoUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+JiYgbGVnYWN5V2ViQXJjaGl2
ZSkKIHsKLSAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBXZWJBcmNoaXZlKGxlZ2FjeVdlYkFyY2hp
dmUpKTsKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBXZWJBcmNoaXZlKGxlZ2FjeVdlYkFyY2hp
dmUucmVsZWFzZU5vbk51bGwoKSkpOwogfQogCiBSZWY8V2ViQXJjaGl2ZT4gV2ViQXJjaGl2ZTo6
Y3JlYXRlKFJhbmdlKiByYW5nZSkKQEAgLTU4LDMxICs1OCwzMiBAQCBSZWY8V2ViQXJjaGl2ZT4g
V2ViQXJjaGl2ZTo6Y3JlYXRlKFJhbmdlKiByYW5nZSkKICAgICByZXR1cm4gYWRvcHRSZWYoKm5l
dyBXZWJBcmNoaXZlKExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShyYW5nZSkpKTsKIH0KIAotV2Vi
QXJjaGl2ZTo6V2ViQXJjaGl2ZShXZWJBcmNoaXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSwgUGFz
c1JlZlB0cjxBUEk6OkFycmF5PiBzdWJyZXNvdXJjZXMsIFBhc3NSZWZQdHI8QVBJOjpBcnJheT4g
c3ViZnJhbWVBcmNoaXZlcykKK1dlYkFyY2hpdmU6OldlYkFyY2hpdmUoV2ViQXJjaGl2ZVJlc291
cmNlKiBtYWluUmVzb3VyY2UsIFJlZlB0cjxBUEk6OkFycmF5PiYmIHN1YnJlc291cmNlcywgUmVm
UHRyPEFQSTo6QXJyYXk+JiYgc3ViZnJhbWVBcmNoaXZlcykKICAgICA6IG1fY2FjaGVkTWFpblJl
c291cmNlKG1haW5SZXNvdXJjZSkKICAgICAsIG1fY2FjaGVkU3VicmVzb3VyY2VzKHN1YnJlc291
cmNlcykKICAgICAsIG1fY2FjaGVkU3ViZnJhbWVBcmNoaXZlcyhzdWJmcmFtZUFyY2hpdmVzKQog
ewotICAgIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IGNvcmVNYWluUmVzb3VyY2UgPSBtX2NhY2hl
ZE1haW5SZXNvdXJjZS0+Y29yZUFyY2hpdmVSZXNvdXJjZSgpOworICAgIGF1dG8gY29yZU1haW5S
ZXNvdXJjZSA9IG1fY2FjaGVkTWFpblJlc291cmNlLT5jb3JlQXJjaGl2ZVJlc291cmNlKCk7CiAK
LSAgICBWZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+IGNvcmVBcmNoaXZlUmVzb3VyY2Vz
OworICAgIFZlY3RvcjxSZWY8QXJjaGl2ZVJlc291cmNlPj4gY29yZUFyY2hpdmVSZXNvdXJjZXM7
CiAgICAgY29yZUFyY2hpdmVSZXNvdXJjZXMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShtX2NhY2hl
ZFN1YnJlc291cmNlcy0+c2l6ZSgpKTsKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1fY2Fj
aGVkU3VicmVzb3VyY2VzLT5zaXplKCk7ICsraSkgewotICAgICAgICBSZWZQdHI8V2ViQXJjaGl2
ZVJlc291cmNlPiByZXNvdXJjZSA9IG1fY2FjaGVkU3VicmVzb3VyY2VzLT5hdDxXZWJBcmNoaXZl
UmVzb3VyY2U+KGkpOworICAgICAgICBhdXRvIHJlc291cmNlID0gbV9jYWNoZWRTdWJyZXNvdXJj
ZXMtPmF0PFdlYkFyY2hpdmVSZXNvdXJjZT4oaSk7CiAgICAgICAgIEFTU0VSVChyZXNvdXJjZSk7
Ci0gICAgICAgIGNvcmVBcmNoaXZlUmVzb3VyY2VzLnVuY2hlY2tlZEFwcGVuZChyZXNvdXJjZS0+
Y29yZUFyY2hpdmVSZXNvdXJjZSgpKTsKKyAgICAgICAgQVNTRVJUKHJlc291cmNlLT5jb3JlQXJj
aGl2ZVJlc291cmNlKCkpOworICAgICAgICBjb3JlQXJjaGl2ZVJlc291cmNlcy51bmNoZWNrZWRB
cHBlbmQoKnJlc291cmNlLT5jb3JlQXJjaGl2ZVJlc291cmNlKCkpOwogICAgIH0KIAotICAgIFZl
Y3RvcjxSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4+IGNvcmVTdWJmcmFtZUxlZ2FjeVdlYkFyY2hp
dmVzOworICAgIFZlY3RvcjxSZWY8TGVnYWN5V2ViQXJjaGl2ZT4+IGNvcmVTdWJmcmFtZUxlZ2Fj
eVdlYkFyY2hpdmVzOwogICAgIGNvcmVTdWJmcmFtZUxlZ2FjeVdlYkFyY2hpdmVzLnJlc2VydmVJ
bml0aWFsQ2FwYWNpdHkobV9jYWNoZWRTdWJmcmFtZUFyY2hpdmVzLT5zaXplKCkpOwotCiAgICAg
Zm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX2NhY2hlZFN1YmZyYW1lQXJjaGl2ZXMtPnNpemUoKTsg
KytpKSB7Ci0gICAgICAgIFJlZlB0cjxXZWJBcmNoaXZlPiBzdWJmcmFtZVdlYkFyY2hpdmUgPSBt
X2NhY2hlZFN1YmZyYW1lQXJjaGl2ZXMtPmF0PFdlYkFyY2hpdmU+KGkpOworICAgICAgICBhdXRv
IHN1YmZyYW1lV2ViQXJjaGl2ZSA9IG1fY2FjaGVkU3ViZnJhbWVBcmNoaXZlcy0+YXQ8V2ViQXJj
aGl2ZT4oaSk7CiAgICAgICAgIEFTU0VSVChzdWJmcmFtZVdlYkFyY2hpdmUpOwotICAgICAgICBj
b3JlU3ViZnJhbWVMZWdhY3lXZWJBcmNoaXZlcy51bmNoZWNrZWRBcHBlbmQoc3ViZnJhbWVXZWJB
cmNoaXZlLT5jb3JlTGVnYWN5V2ViQXJjaGl2ZSgpKTsKKyAgICAgICAgQVNTRVJUKHN1YmZyYW1l
V2ViQXJjaGl2ZS0+Y29yZUxlZ2FjeVdlYkFyY2hpdmUoKSk7CisgICAgICAgIGNvcmVTdWJmcmFt
ZUxlZ2FjeVdlYkFyY2hpdmVzLnVuY2hlY2tlZEFwcGVuZCgqc3ViZnJhbWVXZWJBcmNoaXZlLT5j
b3JlTGVnYWN5V2ViQXJjaGl2ZSgpKTsKICAgICB9CiAKLSAgICBtX2xlZ2FjeVdlYkFyY2hpdmUg
PSBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoV1RGTW92ZShjb3JlTWFpblJlc291cmNlKSwgV1RG
TW92ZShjb3JlQXJjaGl2ZVJlc291cmNlcyksIFdURk1vdmUoY29yZVN1YmZyYW1lTGVnYWN5V2Vi
QXJjaGl2ZXMpKTsKKyAgICBtX2xlZ2FjeVdlYkFyY2hpdmUgPSBMZWdhY3lXZWJBcmNoaXZlOjpj
cmVhdGUoKmNvcmVNYWluUmVzb3VyY2UsIFdURk1vdmUoY29yZUFyY2hpdmVSZXNvdXJjZXMpLCBX
VEZNb3ZlKGNvcmVTdWJmcmFtZUxlZ2FjeVdlYkFyY2hpdmVzKSk7CiB9CiAKIFdlYkFyY2hpdmU6
OldlYkFyY2hpdmUoQVBJOjpEYXRhKiBkYXRhKQpAQCAtOTAsNyArOTEsNyBAQCBXZWJBcmNoaXZl
OjpXZWJBcmNoaXZlKEFQSTo6RGF0YSogZGF0YSkKICAgICBtX2xlZ2FjeVdlYkFyY2hpdmUgPSBM
ZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoU2hhcmVkQnVmZmVyOjpjcmVhdGUoZGF0YS0+Ynl0ZXMo
KSwgZGF0YS0+c2l6ZSgpKS5nZXQoKSk7CiB9CiAKLVdlYkFyY2hpdmU6OldlYkFyY2hpdmUoUGFz
c1JlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBsZWdhY3lXZWJBcmNoaXZlKQorV2ViQXJjaGl2ZTo6
V2ViQXJjaGl2ZShSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4mJiBsZWdhY3lXZWJBcmNoaXZlKQog
ICAgIDogbV9sZWdhY3lXZWJBcmNoaXZlKGxlZ2FjeVdlYkFyY2hpdmUpCiB7CiB9CkBAIC0xMTEs
MTAgKzExMiw4IEBAIEFQSTo6QXJyYXkqIFdlYkFyY2hpdmU6OnN1YnJlc291cmNlcygpCiAgICAg
aWYgKCFtX2NhY2hlZFN1YnJlc291cmNlcykgewogICAgICAgICBWZWN0b3I8UmVmUHRyPEFQSTo6
T2JqZWN0Pj4gc3VicmVzb3VyY2VzOwogICAgICAgICBzdWJyZXNvdXJjZXMucmVzZXJ2ZUluaXRp
YWxDYXBhY2l0eShtX2xlZ2FjeVdlYkFyY2hpdmUtPnN1YnJlc291cmNlcygpLnNpemUoKSk7Ci0K
LSAgICAgICAgZm9yIChjb25zdCBhdXRvJiBzdWJyZXNvdXJjZSA6IG1fbGVnYWN5V2ViQXJjaGl2
ZS0+c3VicmVzb3VyY2VzKCkpCi0gICAgICAgICAgICBzdWJyZXNvdXJjZXMudW5jaGVja2VkQXBw
ZW5kKFdlYkFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKHN1YnJlc291cmNlKSk7Ci0KKyAgICAgICAg
Zm9yIChhdXRvJiBzdWJyZXNvdXJjZSA6IG1fbGVnYWN5V2ViQXJjaGl2ZS0+c3VicmVzb3VyY2Vz
KCkpCisgICAgICAgICAgICBzdWJyZXNvdXJjZXMudW5jaGVja2VkQXBwZW5kKFdlYkFyY2hpdmVS
ZXNvdXJjZTo6Y3JlYXRlKHN1YnJlc291cmNlLnB0cigpKSk7CiAgICAgICAgIG1fY2FjaGVkU3Vi
cmVzb3VyY2VzID0gQVBJOjpBcnJheTo6Y3JlYXRlKFdURk1vdmUoc3VicmVzb3VyY2VzKSk7CiAg
ICAgfQogCkBAIC0xMjYsMTAgKzEyNSw4IEBAIEFQSTo6QXJyYXkqIFdlYkFyY2hpdmU6OnN1YmZy
YW1lQXJjaGl2ZXMoKQogICAgIGlmICghbV9jYWNoZWRTdWJmcmFtZUFyY2hpdmVzKSB7CiAgICAg
ICAgIFZlY3RvcjxSZWZQdHI8QVBJOjpPYmplY3Q+PiBzdWJmcmFtZVdlYkFyY2hpdmVzOwogICAg
ICAgICBzdWJmcmFtZVdlYkFyY2hpdmVzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobV9sZWdhY3lX
ZWJBcmNoaXZlLT5zdWJmcmFtZUFyY2hpdmVzKCkuc2l6ZSgpKTsKLQotICAgICAgICBmb3IgKGNv
bnN0IGF1dG8mIHN1YmZyYW1lQXJjaGl2ZSA6IG1fbGVnYWN5V2ViQXJjaGl2ZS0+c3ViZnJhbWVB
cmNoaXZlcygpKQotICAgICAgICAgICAgc3ViZnJhbWVXZWJBcmNoaXZlcy51bmNoZWNrZWRBcHBl
bmQoV2ViQXJjaGl2ZTo6Y3JlYXRlKHN0YXRpY19jYXN0PExlZ2FjeVdlYkFyY2hpdmUqPihzdWJm
cmFtZUFyY2hpdmUuZ2V0KCkpKSk7Ci0KKyAgICAgICAgZm9yIChhdXRvJiBzdWJmcmFtZUFyY2hp
dmUgOiBtX2xlZ2FjeVdlYkFyY2hpdmUtPnN1YmZyYW1lQXJjaGl2ZXMoKSkKKyAgICAgICAgICAg
IHN1YmZyYW1lV2ViQXJjaGl2ZXMudW5jaGVja2VkQXBwZW5kKFdlYkFyY2hpdmU6OmNyZWF0ZShz
dGF0aWNfY2FzdDxMZWdhY3lXZWJBcmNoaXZlKj4oc3ViZnJhbWVBcmNoaXZlLnB0cigpKSkpOwog
ICAgICAgICBtX2NhY2hlZFN1YmZyYW1lQXJjaGl2ZXMgPSBBUEk6OkFycmF5OjpjcmVhdGUoV1RG
TW92ZShzdWJmcmFtZVdlYkFyY2hpdmVzKSk7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9TaGFyZWQvVGV4dENoZWNrZXJTdGF0ZS5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVk
L1RleHRDaGVja2VyU3RhdGUuaAppbmRleCBiY2M5ZmVjY2NjYjJmNjliNzY3OTg0Njg1MTljZDQy
YjAzN2NhMmRkLi5jZTY2ZjEwMjUwMjNhYWRlZjg4ZDM1Nzg2Nzg5OTg2MTA5YjJjY2ZiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvVGV4dENoZWNrZXJTdGF0ZS5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1NoYXJlZC9UZXh0Q2hlY2tlclN0YXRlLmgKQEAgLTIzLDIzICsyMywyMiBA
QAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgVGV4
dENoZWNrZXJTdGF0ZV9oCi0jZGVmaW5lIFRleHRDaGVja2VyU3RhdGVfaAorI3ByYWdtYSBvbmNl
CiAKICNpbmNsdWRlICJBcmd1bWVudENvZGVycy5oIgogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAog
c3RydWN0IFRleHRDaGVja2VyU3RhdGUgewotICAgIGJvb2wgaXNDb250aW51b3VzU3BlbGxDaGVj
a2luZ0VuYWJsZWQ7Ci0gICAgYm9vbCBpc0dyYW1tYXJDaGVja2luZ0VuYWJsZWQ7CisgICAgYm9v
bCBpc0NvbnRpbnVvdXNTcGVsbENoZWNraW5nRW5hYmxlZCB7IGZhbHNlIH07CisgICAgYm9vbCBp
c0dyYW1tYXJDaGVja2luZ0VuYWJsZWQgeyBmYWxzZSB9OwogCiAjaWYgVVNFKEFQUEtJVCkKLSAg
ICBib29sIGlzQXV0b21hdGljU3BlbGxpbmdDb3JyZWN0aW9uRW5hYmxlZDsKLSAgICBib29sIGlz
QXV0b21hdGljUXVvdGVTdWJzdGl0dXRpb25FbmFibGVkOwotICAgIGJvb2wgaXNBdXRvbWF0aWNE
YXNoU3Vic3RpdHV0aW9uRW5hYmxlZDsKLSAgICBib29sIGlzQXV0b21hdGljTGlua0RldGVjdGlv
bkVuYWJsZWQ7Ci0gICAgYm9vbCBpc0F1dG9tYXRpY1RleHRSZXBsYWNlbWVudEVuYWJsZWQ7Cisg
ICAgYm9vbCBpc0F1dG9tYXRpY1NwZWxsaW5nQ29ycmVjdGlvbkVuYWJsZWQgeyBmYWxzZSB9Owor
ICAgIGJvb2wgaXNBdXRvbWF0aWNRdW90ZVN1YnN0aXR1dGlvbkVuYWJsZWQgeyBmYWxzZSB9Owor
ICAgIGJvb2wgaXNBdXRvbWF0aWNEYXNoU3Vic3RpdHV0aW9uRW5hYmxlZCB7IGZhbHNlIH07Cisg
ICAgYm9vbCBpc0F1dG9tYXRpY0xpbmtEZXRlY3Rpb25FbmFibGVkIHsgZmFsc2UgfTsKKyAgICBi
b29sIGlzQXV0b21hdGljVGV4dFJlcGxhY2VtZW50RW5hYmxlZCB7IGZhbHNlIH07CiAjZW5kaWYK
IH07CiAKQEAgLTQ4LDUgKzQ3LDMgQEAgc3RydWN0IFRleHRDaGVja2VyU3RhdGUgewogbmFtZXNw
YWNlIElQQyB7CiB0ZW1wbGF0ZTw+IHN0cnVjdCBBcmd1bWVudENvZGVyPFdlYktpdDo6VGV4dENo
ZWNrZXJTdGF0ZT4gOiBTaW1wbGVBcmd1bWVudENvZGVyPFdlYktpdDo6VGV4dENoZWNrZXJTdGF0
ZT4geyB9OwogfTsKLQotI2VuZGlmIC8vIFRleHRDaGVja2VyU3RhdGVfaApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkljb25EYXRhYmFzZS5jcHAgYi9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvV2ViSWNvbkRhdGFiYXNlLmNwcAppbmRleCA1NmY1ZGExYTIwMTNhMDlh
NjlhNWZiZWEyNGZlNGE2YmJiYjBhMDA0Li44OTJjMDVmZGFjZjRiMzNhYzg1YzZjNDU1ZDU4M2E0
ZTg3OWZiYmYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViSWNvbkRh
dGFiYXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViSWNvbkRhdGFiYXNl
LmNwcApAQCAtMTMwLDcgKzEzMCw3IEBAIHZvaWQgV2ViSWNvbkRhdGFiYXNlOjpzZXRJY29uRGF0
YUZvckljb25VUkwoY29uc3QgSVBDOjpEYXRhUmVmZXJlbmNlJiBpY29uRGF0YSwKICAgICBMT0co
SWNvbkRhdGFiYXNlLCAiV0syIFVJUHJvY2VzcyBzZXR0aW5nIGljb24gZGF0YSAoJWkgYnl0ZXMp
IGZvciBwYWdlIFVSTCAlcyIsIChpbnQpaWNvbkRhdGEuc2l6ZSgpLCBpY29uVVJMLmFzY2lpKCku
ZGF0YSgpKTsKICAgICBpZiAoIW1faWNvbkRhdGFiYXNlSW1wbCkKICAgICAgICAgcmV0dXJuOwot
ICAgIG1faWNvbkRhdGFiYXNlSW1wbC0+c2V0SWNvbkRhdGFGb3JJY29uVVJMKFNoYXJlZEJ1ZmZl
cjo6Y3JlYXRlKGljb25EYXRhLmRhdGEoKSwgaWNvbkRhdGEuc2l6ZSgpKSwgaWNvblVSTCk7Cisg
ICAgbV9pY29uRGF0YWJhc2VJbXBsLT5zZXRJY29uRGF0YUZvckljb25VUkwoU2hhcmVkQnVmZmVy
OjpjcmVhdGUoaWNvbkRhdGEuZGF0YSgpLCBpY29uRGF0YS5zaXplKCkpLnB0cigpLCBpY29uVVJM
KTsKIH0KIAogdm9pZCBXZWJJY29uRGF0YWJhc2U6OnN5bmNocm9ub3VzSWNvbkRhdGFGb3JQYWdl
VVJMKGNvbnN0IFN0cmluZyYsIElQQzo6RGF0YVJlZmVyZW5jZSYgaWNvbkRhdGEpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmggYi9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKaW5kZXggNzU4YzIzOTU5ODUwNTI0Mzk4NmMw
NzM3NTE0OWMzZWVlYjEzNzI4Ni4uNDYwNmRmMTE0YWQ3Nzc0ZTQzNzk0MGU0ZmMwOTg3YTlmMWFk
ZjZhZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5o
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaApAQCAtMTg2LDcg
KzE4Niw2IEBAIGNsYXNzIFBhZ2VDbGllbnQ7CiBjbGFzcyBSZW1vdGVMYXllclRyZWVTY3JvbGxp
bmdQZXJmb3JtYW5jZURhdGE7CiBjbGFzcyBSZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbjsKIGNs
YXNzIFJlbW90ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yUHJveHk7Ci1jbGFzcyBTdHJpbmdQYWlyVmVj
dG9yOwogY2xhc3MgVXNlckRhdGE7CiBjbGFzcyBWaWV3U25hcHNob3Q7CiBjbGFzcyBWaXNpdGVk
TGlua1N0b3JlOwpAQCAtMjA2LDExICsyMDUsMTIgQEAgY2xhc3MgV2ViUHJvY2Vzc1Byb3h5Owog
Y2xhc3MgV2ViVXNlckNvbnRlbnRDb250cm9sbGVyUHJveHk7CiBjbGFzcyBXZWJXaGVlbEV2ZW50
OwogY2xhc3MgV2Vic2l0ZURhdGFTdG9yZTsKK2NsYXNzIEdhbWVwYWREYXRhOworCiBzdHJ1Y3Qg
QXR0cmlidXRlZFN0cmluZzsKIHN0cnVjdCBDb2xvclNwYWNlRGF0YTsKIHN0cnVjdCBFZGl0aW5n
UmFuZ2U7CiBzdHJ1Y3QgRWRpdG9yU3RhdGU7Ci1jbGFzcyBHYW1lcGFkRGF0YTsKIHN0cnVjdCBJ
bnRlcmFjdGlvbkluZm9ybWF0aW9uUmVxdWVzdDsKIHN0cnVjdCBMb2FkUGFyYW1ldGVyczsKIHN0
cnVjdCBQbGF0Zm9ybVBvcHVwTWVudURhdGE7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5jcHAgYi9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5jcHAK
aW5kZXggMzNmZTU4N2U0MTU3NjM4NDAwMzMxNTA5ZDhmN2IyNTNjNzMzZTg5ZC4uNTQyZWRkZDZk
YzA5YjNiYWMxNDdlODNlMWNiNzY0NTk4OTg5N2IzNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9JY29uRGF0YWJhc2UvV2ViSWNvbkRhdGFiYXNlUHJveHkuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSWNvbkRhdGFiYXNlL1dlYkljb25EYXRhYmFzZVBy
b3h5LmNwcApAQCAtNDIsMTEgKzQyLDEwIEBAIFdlYkljb25EYXRhYmFzZVByb3h5Ojp+V2ViSWNv
bkRhdGFiYXNlUHJveHkoKQogewogfQogCi1XZWJJY29uRGF0YWJhc2VQcm94eTo6V2ViSWNvbkRh
dGFiYXNlUHJveHkoV2ViUHJvY2VzcyogcHJvY2VzcykKLSAgICA6IG1faXNFbmFibGVkKGZhbHNl
KQotICAgICwgbV9wcm9jZXNzKHByb2Nlc3MpCitXZWJJY29uRGF0YWJhc2VQcm94eTo6V2ViSWNv
bkRhdGFiYXNlUHJveHkoV2ViUHJvY2VzcyYgcHJvY2VzcykKKyAgICA6IG1fcHJvY2Vzcyhwcm9j
ZXNzKQogewotICAgIG1fcHJvY2Vzcy0+YWRkTWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpXZWJJ
Y29uRGF0YWJhc2VQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCAqdGhpcyk7CisgICAgbV9w
cm9jZXNzLmFkZE1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlUHJveHk6
Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSwgKnRoaXMpOwogfQogCiBib29sIFdlYkljb25EYXRhYmFz
ZVByb3h5Ojppc0VuYWJsZWQoKSBjb25zdApAQCAtNjUsMTggKzY0LDE4IEBAIHZvaWQgV2ViSWNv
bkRhdGFiYXNlUHJveHk6OnNldEVuYWJsZWQoYm9vbCBlbmFibGVkKQogCiB2b2lkIFdlYkljb25E
YXRhYmFzZVByb3h5OjpyZXRhaW5JY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIHBhZ2VVUkwp
CiB7Ci0gICAgbV9wcm9jZXNzLT5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3Nh
Z2VzOjpXZWJQcm9jZXNzUHJveHk6OlJldGFpbkljb25Gb3JQYWdlVVJMKHBhZ2VVUkwpLCAwKTsK
KyAgICBtX3Byb2Nlc3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6
V2ViUHJvY2Vzc1Byb3h5OjpSZXRhaW5JY29uRm9yUGFnZVVSTChwYWdlVVJMKSwgMCk7CiB9CiAK
IHZvaWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnJlbGVhc2VJY29uRm9yUGFnZVVSTChjb25zdCBT
dHJpbmcmIHBhZ2VVUkwpCiB7Ci0gICAgbV9wcm9jZXNzLT5wYXJlbnRQcm9jZXNzQ29ubmVjdGlv
bigpLT5zZW5kKE1lc3NhZ2VzOjpXZWJQcm9jZXNzUHJveHk6OlJlbGVhc2VJY29uRm9yUGFnZVVS
TChwYWdlVVJMKSwgMCk7CisgICAgbV9wcm9jZXNzLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCkt
PnNlbmQoTWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6UmVsZWFzZUljb25Gb3JQYWdlVVJMKHBh
Z2VVUkwpLCAwKTsKIH0KIAogSW1hZ2UqIFdlYkljb25EYXRhYmFzZVByb3h5OjpzeW5jaHJvbm91
c0ljb25Gb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYgcGFnZVVSTCwgY29uc3QgSW50U2l6ZSYgLypz
aXplKi8pCiB7CiAgICAgSVBDOjpEYXRhUmVmZXJlbmNlIHJlc3VsdDsKLSAgICBpZiAoIW1fcHJv
Y2Vzcy0+cGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYklj
b25EYXRhYmFzZTo6U3luY2hyb25vdXNJY29uRGF0YUZvclBhZ2VVUkwocGFnZVVSTCksIE1lc3Nh
Z2VzOjpXZWJJY29uRGF0YWJhc2U6OlN5bmNocm9ub3VzSWNvbkRhdGFGb3JQYWdlVVJMOjpSZXBs
eShyZXN1bHQpLCAwKSkKKyAgICBpZiAoIW1fcHJvY2Vzcy5wYXJlbnRQcm9jZXNzQ29ubmVjdGlv
bigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpTeW5jaHJvbm91c0ljb25E
YXRhRm9yUGFnZVVSTChwYWdlVVJMKSwgTWVzc2FnZXM6OldlYkljb25EYXRhYmFzZTo6U3luY2hy
b25vdXNJY29uRGF0YUZvclBhZ2VVUkw6OlJlcGx5KHJlc3VsdCksIDApKQogICAgICAgICByZXR1
cm4gMDsKICAgICAKICAgICAvLyBGSVhNRTogUmV0dXJuIEltYWdlIGNyZWF0ZWQgd2l0aCB0aGUg
YWJvdmUgZGF0YS4KQEAgLTExMCwzNCArMTA5LDMyIEBAIGJvb2wgV2ViSWNvbkRhdGFiYXNlUHJv
eHk6OnN1cHBvcnRzQXN5bmNocm9ub3VzTW9kZSgpCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLXZv
aWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OmxvYWREZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3Ry
aW5nJiBpY29uVVJMLCBQYXNzUmVmUHRyPFdlYkNvcmU6Okljb25Mb2FkRGVjaXNpb25DYWxsYmFj
az4gY2FsbGJhY2spCit2b2lkIFdlYkljb25EYXRhYmFzZVByb3h5Ojpsb2FkRGVjaXNpb25Gb3JJ
Y29uVVJMKGNvbnN0IFN0cmluZyYgaWNvblVSTCwgV2ViQ29yZTo6SWNvbkxvYWREZWNpc2lvbkNh
bGxiYWNrJiBjYWxsYmFjaykKIHsKLSAgICB1aW50NjRfdCBpZCA9IGNhbGxiYWNrLT5jYWxsYmFj
a0lEKCk7Ci0gICAgbV9pY29uTG9hZERlY2lzaW9uQ2FsbGJhY2tzLmFkZChpZCwgY2FsbGJhY2sp
OwotICAgIAotICAgIG1fcHJvY2Vzcy0+cGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChN
ZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpHZXRMb2FkRGVjaXNpb25Gb3JJY29uVVJMKGljb25V
UkwsIGlkKSwgMCk7CisgICAgdWludDY0X3QgaWQgPSBjYWxsYmFjay5jYWxsYmFja0lEKCk7Cisg
ICAgbV9pY29uTG9hZERlY2lzaW9uQ2FsbGJhY2tzLmFkZChpZCwgJmNhbGxiYWNrKTsKKyAgICBt
X3Byb2Nlc3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViSWNv
bkRhdGFiYXNlOjpHZXRMb2FkRGVjaXNpb25Gb3JJY29uVVJMKGljb25VUkwsIGlkKSwgMCk7CiB9
CiAKIHZvaWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnJlY2VpdmVkSWNvbkxvYWREZWNpc2lvbihp
bnQgZGVjaXNpb24sIHVpbnQ2NF90IGNhbGxiYWNrSUQpCiB7Ci0gICAgUmVmUHRyPFdlYkNvcmU6
Okljb25Mb2FkRGVjaXNpb25DYWxsYmFjaz4gY2FsbGJhY2sgPSBtX2ljb25Mb2FkRGVjaXNpb25D
YWxsYmFja3MudGFrZShjYWxsYmFja0lEKTsKLSAgICBpZiAoY2FsbGJhY2spCisgICAgaWYgKGF1
dG8gY2FsbGJhY2sgPSBtX2ljb25Mb2FkRGVjaXNpb25DYWxsYmFja3MudGFrZShjYWxsYmFja0lE
KSkKICAgICAgICAgY2FsbGJhY2stPnBlcmZvcm1DYWxsYmFjayhzdGF0aWNfY2FzdDxXZWJDb3Jl
OjpJY29uTG9hZERlY2lzaW9uPihkZWNpc2lvbikpOwogfQogCi12b2lkIFdlYkljb25EYXRhYmFz
ZVByb3h5OjppY29uRGF0YUZvckljb25VUkwoY29uc3QgU3RyaW5nJiAvKmljb25VUkwqLywgUGFz
c1JlZlB0cjxXZWJDb3JlOjpJY29uRGF0YUNhbGxiYWNrPikKK3ZvaWQgV2ViSWNvbkRhdGFiYXNl
UHJveHk6Omljb25EYXRhRm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpJY29uRGF0
YUNhbGxiYWNrJikKIHsKIH0KIAogdm9pZCBXZWJJY29uRGF0YWJhc2VQcm94eTo6c2V0SWNvblVS
TEZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJiBpY29uVVJMLCBjb25zdCBTdHJpbmcmIHBhZ2VVUkwp
CiB7Ci0gICAgbV9wcm9jZXNzLT5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3Nh
Z2VzOjpXZWJJY29uRGF0YWJhc2U6OlNldEljb25VUkxGb3JQYWdlVVJMKGljb25VUkwsIHBhZ2VV
UkwpLCAwKTsKKyAgICBtX3Byb2Nlc3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChN
ZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpTZXRJY29uVVJMRm9yUGFnZVVSTChpY29uVVJMLCBw
YWdlVVJMKSwgMCk7CiB9CiAKLXZvaWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnNldEljb25EYXRh
Rm9ySWNvblVSTChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaWNvbkRhdGEsIGNvbnN0IFN0cmlu
ZyYgaWNvblVSTCkKK3ZvaWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnNldEljb25EYXRhRm9ySWNv
blVSTChTaGFyZWRCdWZmZXIqIGljb25EYXRhLCBjb25zdCBTdHJpbmcmIGljb25VUkwpCiB7Ci0g
ICAgSVBDOjpEYXRhUmVmZXJlbmNlIGRhdGEocmVpbnRlcnByZXRfY2FzdDxjb25zdCB1aW50OF90
Kj4oaWNvbkRhdGEgPyBpY29uRGF0YS0+ZGF0YSgpIDogMCksIGljb25EYXRhID8gaWNvbkRhdGEt
PnNpemUoKSA6IDApOwotICAgIG1fcHJvY2Vzcy0+cGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+
c2VuZChNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpTZXRJY29uRGF0YUZvckljb25VUkwoZGF0
YSwgaWNvblVSTCksIDApOworICAgIElQQzo6RGF0YVJlZmVyZW5jZSBkYXRhKHJlaW50ZXJwcmV0
X2Nhc3Q8Y29uc3QgdWludDhfdCo+KGljb25EYXRhID8gaWNvbkRhdGEtPmRhdGEoKSA6IG51bGxw
dHIpLCBpY29uRGF0YSA/IGljb25EYXRhLT5zaXplKCkgOiAwKTsKKyAgICBtX3Byb2Nlc3MucGFy
ZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpT
ZXRJY29uRGF0YUZvckljb25VUkwoZGF0YSwgaWNvblVSTCksIDApOwogfQogCiB2b2lkIFdlYklj
b25EYXRhYmFzZVByb3h5Ojp1cmxJbXBvcnRGaW5pc2hlZCgpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5oIGIv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JY29uRGF0YWJhc2UvV2ViSWNvbkRhdGFiYXNlUHJv
eHkuaAppbmRleCA2MmEwNmMzZjk0ZjdkN2UwOTc2MzViNTJiNzhjNDMzOGViM2NhOGJkLi5iZGY4
ZDRjZjYzYWJlOWNlYTNkMmFjMTk4MWU5MDZlYjY2MWY1YTNlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5oCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSWNvbkRhdGFiYXNlL1dlYkljb25EYXRhYmFz
ZVByb3h5LmgKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KICAqLwogCi0jaWZuZGVmIFdlYkljb25EYXRhYmFzZVByb3h5X2gKLSNkZWZpbmUgV2Vi
SWNvbkRhdGFiYXNlUHJveHlfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJBUElPYmplY3Qu
aCIKICNpbmNsdWRlICJNZXNzYWdlUmVjZWl2ZXIuaCIKQEAgLTM3LDQzICszNiw0MSBAQCBuYW1l
c3BhY2UgV2ViS2l0IHsKIAogY2xhc3MgV2ViUHJvY2VzczsKIAotY2xhc3MgV2ViSWNvbkRhdGFi
YXNlUHJveHkgOiBwdWJsaWMgV2ViQ29yZTo6SWNvbkRhdGFiYXNlQmFzZSwgcHJpdmF0ZSBJUEM6
Ok1lc3NhZ2VSZWNlaXZlciB7CitjbGFzcyBXZWJJY29uRGF0YWJhc2VQcm94eSBmaW5hbCA6IHB1
YmxpYyBXZWJDb3JlOjpJY29uRGF0YWJhc2VCYXNlLCBwcml2YXRlIElQQzo6TWVzc2FnZVJlY2Vp
dmVyIHsKIHB1YmxpYzoKLSAgICBleHBsaWNpdCBXZWJJY29uRGF0YWJhc2VQcm94eShXZWJQcm9j
ZXNzKik7CisgICAgZXhwbGljaXQgV2ViSWNvbkRhdGFiYXNlUHJveHkoV2ViUHJvY2VzcyYpOwog
ICAgIHZpcnR1YWwgfldlYkljb25EYXRhYmFzZVByb3h5KCk7CiAKLSAgICBib29sIGlzRW5hYmxl
ZCgpIGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQgc2V0RW5hYmxlZChib29sKSBvdmVycmlkZTsK
KyAgICB2b2lkIHNldEVuYWJsZWQoYm9vbCkgZmluYWw7CiAKLSAgICB2b2lkIHJldGFpbkljb25G
b3JQYWdlVVJMKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVsZWFzZUljb25G
b3JQYWdlVVJMKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0SWNvblVSTEZv
clBhZ2VVUkwoY29uc3QgU3RyaW5nJiwgY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBzZXRJY29uRGF0YUZvckljb25VUkwoUGFzc1JlZlB0cjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+
LCBjb25zdCBTdHJpbmcmKSBvdmVycmlkZTsKK3ByaXZhdGU6CisgICAgYm9vbCBpc0VuYWJsZWQo
KSBjb25zdCBmaW5hbDsKKworICAgIHZvaWQgcmV0YWluSWNvbkZvclBhZ2VVUkwoY29uc3QgU3Ry
aW5nJikgZmluYWw7CisgICAgdm9pZCByZWxlYXNlSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5n
JikgZmluYWw7CisgICAgdm9pZCBzZXRJY29uVVJMRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmLCBj
b25zdCBTdHJpbmcmKSBmaW5hbDsKKyAgICB2b2lkIHNldEljb25EYXRhRm9ySWNvblVSTChXZWJD
b3JlOjpTaGFyZWRCdWZmZXIqLCBjb25zdCBTdHJpbmcmKSBmaW5hbDsKIAotICAgIFN0cmluZyBz
eW5jaHJvbm91c0ljb25VUkxGb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAg
IGJvb2wgc3luY2hyb25vdXNJY29uRGF0YUtub3duRm9ySWNvblVSTChjb25zdCBTdHJpbmcmKSBv
dmVycmlkZTsKLSAgICBXZWJDb3JlOjpJY29uTG9hZERlY2lzaW9uIHN5bmNocm9ub3VzTG9hZERl
Y2lzaW9uRm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciop
IG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OkltYWdlKiBzeW5jaHJvbm91c0ljb25Gb3JQYWdlVVJM
KGNvbnN0IFN0cmluZyYsIGNvbnN0IFdlYkNvcmU6OkludFNpemUmKSBvdmVycmlkZTsKKyAgICBT
dHJpbmcgc3luY2hyb25vdXNJY29uVVJMRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmKSBmaW5hbDsK
KyAgICBib29sIHN5bmNocm9ub3VzSWNvbkRhdGFLbm93bkZvckljb25VUkwoY29uc3QgU3RyaW5n
JikgZmluYWw7CisgICAgV2ViQ29yZTo6SWNvbkxvYWREZWNpc2lvbiBzeW5jaHJvbm91c0xvYWRE
ZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5nJiwgV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIq
KSBmaW5hbDsKKyAgICBXZWJDb3JlOjpJbWFnZSogc3luY2hyb25vdXNJY29uRm9yUGFnZVVSTChj
b25zdCBTdHJpbmcmLCBjb25zdCBXZWJDb3JlOjpJbnRTaXplJikgZmluYWw7CiAgICAgCi0gICAg
Ly8gQXN5bmNocm9ub3VzIGNhbGxzIHdlIHNob3VsZCB1c2UgdG8gcmVwbGFjZSB0aGUgYWJvdmUg
d2hlbiBzdXBwb3J0ZWQuCi0gICAgYm9vbCBzdXBwb3J0c0FzeW5jaHJvbm91c01vZGUoKSBvdmVy
cmlkZTsKLSAgICB2b2lkIGxvYWREZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5nJiwgUGFz
c1JlZlB0cjxXZWJDb3JlOjpJY29uTG9hZERlY2lzaW9uQ2FsbGJhY2s+KSBvdmVycmlkZTsKKyAg
ICBib29sIHN1cHBvcnRzQXN5bmNocm9ub3VzTW9kZSgpIGZpbmFsOworICAgIHZvaWQgbG9hZERl
Y2lzaW9uRm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpJY29uTG9hZERlY2lzaW9u
Q2FsbGJhY2smKSBmaW5hbDsKICAgICB2b2lkIHJlY2VpdmVkSWNvbkxvYWREZWNpc2lvbihpbnQg
ZGVjaXNpb24sIHVpbnQ2NF90IGNhbGxiYWNrSUQpOwotICAgIHZvaWQgaWNvbkRhdGFGb3JJY29u
VVJMKGNvbnN0IFN0cmluZyYsIFBhc3NSZWZQdHI8V2ViQ29yZTo6SWNvbkRhdGFDYWxsYmFjaz4p
IG92ZXJyaWRlOworICAgIHZvaWQgaWNvbkRhdGFGb3JJY29uVVJMKGNvbnN0IFN0cmluZyYsIFdl
YkNvcmU6Okljb25EYXRhQ2FsbGJhY2smKSBmaW5hbDsKIAotcHJpdmF0ZToKICAgICAvLyBJUEM6
Ok1lc3NhZ2VSZWNlaXZlcgotICAgIHZvaWQgZGlkUmVjZWl2ZU1lc3NhZ2UoSVBDOjpDb25uZWN0
aW9uJiwgSVBDOjpEZWNvZGVyJikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRSZWNlaXZlTWVzc2Fn
ZShJUEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXImKSBmaW5hbDsKICAgICAKICAgICAvLyBD
YWxsYmFja3MgZnJvbSB0aGUgVUlQcm9jZXNzCiAgICAgdm9pZCB1cmxJbXBvcnRGaW5pc2hlZCgp
OwogCi0gICAgYm9vbCBtX2lzRW5hYmxlZDsKLSAgICBXZWJQcm9jZXNzKiBtX3Byb2Nlc3M7Cisg
ICAgYm9vbCBtX2lzRW5hYmxlZCB7IGZhbHNlIH07CisgICAgV2ViUHJvY2VzcyYgbV9wcm9jZXNz
OwogICAgIAogICAgIEhhc2hNYXA8dWludDY0X3QsIFJlZlB0cjxXZWJDb3JlOjpJY29uTG9hZERl
Y2lzaW9uQ2FsbGJhY2s+PiBtX2ljb25Mb2FkRGVjaXNpb25DYWxsYmFja3M7CiB9OwogCiB9IC8v
IG5hbWVzcGFjZSBXZWJLaXQKLQotI2VuZGlmIC8vIFdlYkljb25EYXRhYmFzZVByb3h5X2gKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0
ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
SW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uLmNwcAppbmRleCAx
OTYzYTFhMDI2NTUzOTEwYzJlZGM2YTY0N2EzOWRhOTllMmI4MTIxLi4zNTY5ZmQ4NzViZTg2Yzk1
ODZmMGVlN2IyNTAwMTNjOTdjM2M1M2RlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbi5jcHAK
KysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1
bmRsZU5hdmlnYXRpb25BY3Rpb24uY3BwCkBAIC0xMDIsNyArMTAyLDcgQEAgUmVmPEluamVjdGVk
QnVuZGxlTmF2aWdhdGlvbkFjdGlvbj4gSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uOjpj
cmVhdGUoV2ViRnIKICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBJbmplY3RlZEJ1bmRsZU5hdmln
YXRpb25BY3Rpb24oZnJhbWUsIGFjdGlvbiwgZm9ybVN0YXRlKSk7CiB9CiAKLUluamVjdGVkQnVu
ZGxlTmF2aWdhdGlvbkFjdGlvbjo6SW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uKFdlYkZy
YW1lKiBmcmFtZSwgY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgbmF2aWdhdGlvbkFjdGlvbiwgUGFz
c1JlZlB0cjxGb3JtU3RhdGU+IHBycEZvcm1TdGF0ZSkKK0luamVjdGVkQnVuZGxlTmF2aWdhdGlv
bkFjdGlvbjo6SW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uKFdlYkZyYW1lKiBmcmFtZSwg
Y29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgbmF2aWdhdGlvbkFjdGlvbiwgUGFzc1JlZlB0cjxGb3Jt
U3RhdGU+IGZvcm1TdGF0ZSkKICAgICA6IG1fbmF2aWdhdGlvblR5cGUobmF2aWdhdGlvbkFjdGlv
bi50eXBlKCkpCiAgICAgLCBtX21vZGlmaWVycyhtb2RpZmllcnNGb3JOYXZpZ2F0aW9uQWN0aW9u
KG5hdmlnYXRpb25BY3Rpb24pKQogICAgICwgbV9tb3VzZUJ1dHRvbihXZWJNb3VzZUV2ZW50OjpO
b0J1dHRvbikKQEAgLTExNiwxMSArMTE2LDggQEAgSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0
aW9uOjpJbmplY3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rpb24oV2ViRnJhbWUqIGZyYW1lLAogICAg
ICAgICBtX3N5bnRoZXRpY0NsaWNrVHlwZSA9IHN5bnRoZXRpY0NsaWNrVHlwZUZvck5hdmlnYXRp
b25BY3Rpb24obmF2aWdhdGlvbkFjdGlvbik7CiAgICAgfQogCi0gICAgUmVmUHRyPEZvcm1TdGF0
ZT4gZm9ybVN0YXRlID0gcHJwRm9ybVN0YXRlOwotICAgIGlmIChmb3JtU3RhdGUpIHsKLSAgICAg
ICAgQVNTRVJUKGZvcm1TdGF0ZS0+Zm9ybSgpKTsKLSAgICAgICAgbV9mb3JtRWxlbWVudCAgID0g
SW5qZWN0ZWRCdW5kbGVOb2RlSGFuZGxlOjpnZXRPckNyZWF0ZShmb3JtU3RhdGUtPmZvcm0oKSk7
Ci0gICAgfQorICAgIGlmIChmb3JtU3RhdGUpCisgICAgICAgIG1fZm9ybUVsZW1lbnQgPSBJbmpl
Y3RlZEJ1bmRsZU5vZGVIYW5kbGU6OmdldE9yQ3JlYXRlKGZvcm1TdGF0ZS0+Zm9ybSgpKTsKIH0K
IAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwIGIvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmNwcAppbmRleCAxMjEwMjUxZjU0ZDdm
MjU1NjVmODliZWY1NDQ3YmMxZDQ4YWFhNmQ1Li4zNjFmOWUyY2FiODI5ZDgzMjUwMGYzYTY0MTU0
NTA1NmExOTA0MGNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL05ldHdv
cmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
TmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5jcHAKQEAgLTE2Myw3ICsxNjMsNyBAQCB2b2lkIFdl
YkxvYWRlclN0cmF0ZWd5OjpzY2hlZHVsZUxvYWQoUmVzb3VyY2VMb2FkZXImIHJlc291cmNlTG9h
ZGVyLCBDYWNoZWRSZXNvdQogICAgIH0KICNlbmRpZgogCi0gICAgaWYgKHJlc291cmNlTG9hZGVy
LmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZFJlc291
cmNlKHJlc291cmNlTG9hZGVyLCByZXNvdXJjZUxvYWRlci5yZXF1ZXN0KCksIHJlc291cmNlTG9h
ZGVyLnJlcXVlc3QoKS51cmwoKSkpIHsKKyAgICBpZiAocmVzb3VyY2VMb2FkZXIuZG9jdW1lbnRM
b2FkZXIoKS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS5tYXliZUxvYWRSZXNvdXJjZShyZXNvdXJj
ZUxvYWRlciwgcmVzb3VyY2VMb2FkZXIucmVxdWVzdCgpLCByZXNvdXJjZUxvYWRlci5yZXF1ZXN0
KCkudXJsKCkpKSB7CiAgICAgICAgIExPRyhOZXR3b3JrU2NoZWR1bGluZywgIihXZWJQcm9jZXNz
KSBXZWJMb2FkZXJTdHJhdGVneTo6c2NoZWR1bGVMb2FkLCB1cmwgJyVzJyB3aWxsIGJlIGxvYWRl
ZCBmcm9tIGFwcGxpY2F0aW9uIGNhY2hlLiIsIHJlc291cmNlTG9hZGVyLnVybCgpLnN0cmluZygp
LnV0ZjgoKS5kYXRhKCkpOwogICAgICAgICBSRUxFQVNFX0xPR19JRl9BTExPV0VEKHJlc291cmNl
TG9hZGVyLCAic2NoZWR1bGVMb2FkOiBVUkwgd2lsbCBiZSBsb2FkZWQgZnJvbSBhcHBsaWNhdGlv
biBjYWNoZSAoZnJhbWUgPSAlcCwgcmVzb3VyY2VJRCA9ICUiIFBSSXU2NCAiKSIsIHJlc291cmNl
TG9hZGVyLmZyYW1lKCksIGlkZW50aWZpZXIpOwogICAgICAgICBtX3dlYlJlc291cmNlTG9hZGVy
cy5zZXQoaWRlbnRpZmllciwgV2ViUmVzb3VyY2VMb2FkZXI6OmNyZWF0ZShyZXNvdXJjZUxvYWRl
ciwgdHJhY2tpbmdQYXJhbWV0ZXJzKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlTG9hZGVyLmNwcAppbmRleCA3MzhiMWRjYzMzOTM3
MjY5NjhhNjJjNTczYzM4Mjg4ZDk3ZjdiM2QxLi4zOGE4ODJiYjhmNGU5MTAyNjBiOWU1MmQ4ZTU1
ZGMxMTllZDBiMzE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL05ldHdv
cmsvV2ViUmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
TmV0d29yay9XZWJSZXNvdXJjZUxvYWRlci5jcHAKQEAgLTg3LDcgKzg3LDcgQEAgdm9pZCBXZWJS
ZXNvdXJjZUxvYWRlcjo6d2lsbFNlbmRSZXF1ZXN0KFJlc291cmNlUmVxdWVzdCYmIHByb3Bvc2Vk
UmVxdWVzdCwgUmVzb3UKIAogICAgIFJlZlB0cjxXZWJSZXNvdXJjZUxvYWRlcj4gcHJvdGVjdGVk
VGhpcyh0aGlzKTsKIAotICAgIGlmIChtX2NvcmVMb2FkZXItPmRvY3VtZW50TG9hZGVyKCktPmFw
cGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZEZhbGxiYWNrRm9yUmVkaXJlY3QobV9jb3Jl
TG9hZGVyLmdldCgpLCBwcm9wb3NlZFJlcXVlc3QsIHJlZGlyZWN0UmVzcG9uc2UpKQorICAgIGlm
IChtX2NvcmVMb2FkZXItPmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCku
bWF5YmVMb2FkRmFsbGJhY2tGb3JSZWRpcmVjdChtX2NvcmVMb2FkZXIuZ2V0KCksIHByb3Bvc2Vk
UmVxdWVzdCwgcmVkaXJlY3RSZXNwb25zZSkpCiAgICAgICAgIHJldHVybjsKIAogICAgIG1fY29y
ZUxvYWRlci0+d2lsbFNlbmRSZXF1ZXN0KFdURk1vdmUocHJvcG9zZWRSZXF1ZXN0KSwgcmVkaXJl
Y3RSZXNwb25zZSwgW3Byb3RlY3RlZFRoaXNdKFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QpIHsK
QEAgLTExMCw3ICsxMTAsNyBAQCB2b2lkIFdlYlJlc291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVz
cG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIGJvbwogCiAgICAgUmVmPFdl
YlJlc291cmNlTG9hZGVyPiBwcm90ZWN0KCp0aGlzKTsKIAotICAgIGlmIChtX2NvcmVMb2FkZXIt
PmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZEZhbGxi
YWNrRm9yUmVzcG9uc2UobV9jb3JlTG9hZGVyLmdldCgpLCByZXNwb25zZSkpCisgICAgaWYgKG1f
Y29yZUxvYWRlci0+ZG9jdW1lbnRMb2FkZXIoKS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS5tYXli
ZUxvYWRGYWxsYmFja0ZvclJlc3BvbnNlKG1fY29yZUxvYWRlci5nZXQoKSwgcmVzcG9uc2UpKQog
ICAgICAgICByZXR1cm47CiAKICAgICBtX2NvcmVMb2FkZXItPmRpZFJlY2VpdmVSZXNwb25zZShy
ZXNwb25zZSk7CkBAIC0xNDgsNyArMTQ4LDcgQEAgdm9pZCBXZWJSZXNvdXJjZUxvYWRlcjo6ZGlk
RmFpbFJlc291cmNlTG9hZChjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKICAgICBMT0coTmV0
d29yaywgIihXZWJQcm9jZXNzKSBXZWJSZXNvdXJjZUxvYWRlcjo6ZGlkRmFpbFJlc291cmNlTG9h
ZCBmb3IgJyVzJyIsIG1fY29yZUxvYWRlci0+dXJsKCkuc3RyaW5nKCkubGF0aW4xKCkuZGF0YSgp
KTsKICAgICBSRUxFQVNFX0xPR19JRl9BTExPV0VEKCJkaWRGYWlsUmVzb3VyY2VMb2FkOiAocGFn
ZUlEID0gJSIgUFJJdTY0ICIsIGZyYW1lSUQgPSAlIiBQUkl1NjQgIiwgcmVzb3VyY2VJRCA9ICUi
IFBSSXU2NCAiKSIsIG1fdHJhY2tpbmdQYXJhbWV0ZXJzLnBhZ2VJRCwgbV90cmFja2luZ1BhcmFt
ZXRlcnMuZnJhbWVJRCwgbV90cmFja2luZ1BhcmFtZXRlcnMucmVzb3VyY2VJRCk7CiAKLSAgICBp
ZiAobV9jb3JlTG9hZGVyLT5kb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgp
LT5tYXliZUxvYWRGYWxsYmFja0ZvckVycm9yKG1fY29yZUxvYWRlci5nZXQoKSwgZXJyb3IpKQor
ICAgIGlmIChtX2NvcmVMb2FkZXItPmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVI
b3N0KCkubWF5YmVMb2FkRmFsbGJhY2tGb3JFcnJvcihtX2NvcmVMb2FkZXIuZ2V0KCksIGVycm9y
KSkKICAgICAgICAgcmV0dXJuOwogICAgIG1fY29yZUxvYWRlci0+ZGlkRmFpbChlcnJvcik7CiB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmll
dy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5jcHAK
aW5kZXggYWMxZGFhYmFkMDYzYTQ5NjI2YjM3ZTA0MDJlOWViZjU0OTJkM2IxYi4uNzg4NjI2ODU5
YTY4NjUxNDY1YmMxNzFmYTFhYjBiMmI1MmFmODczMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3LmNwcApAQCAtMTg1LDIzICsxODUsMTkgQEAg
c3RhdGljIFN0cmluZyBidWlsZEhUVFBIZWFkZXJzKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJl
c3BvbnNlLCBsb25nIGxvbmcmIGV4cGUKICAgICBpZiAoIXJlc3BvbnNlLmlzSFRUUCgpKQogICAg
ICAgICByZXR1cm4gU3RyaW5nKCk7CiAKLSAgICBTdHJpbmdCdWlsZGVyIHN0cmluZ0J1aWxkZXI7
Ci0gICAgCi0gICAgU3RyaW5nIHN0YXR1c0xpbmUgPSBTdHJpbmc6OmZvcm1hdCgiSFRUUCAlZCAi
LCByZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpKTsKLSAgICBzdHJpbmdCdWlsZGVyLmFwcGVuZChz
dGF0dXNMaW5lKTsKLSAgICBzdHJpbmdCdWlsZGVyLmFwcGVuZChyZXNwb25zZS5odHRwU3RhdHVz
VGV4dCgpKTsKLSAgICBzdHJpbmdCdWlsZGVyLmFwcGVuZCgnXG4nKTsKLSAgICAKLSAgICBIVFRQ
SGVhZGVyTWFwOjpjb25zdF9pdGVyYXRvciBlbmQgPSByZXNwb25zZS5odHRwSGVhZGVyRmllbGRz
KCkuZW5kKCk7Ci0gICAgZm9yIChIVFRQSGVhZGVyTWFwOjpjb25zdF9pdGVyYXRvciBpdCA9IHJl
c3BvbnNlLmh0dHBIZWFkZXJGaWVsZHMoKS5iZWdpbigpOyBpdCAhPSBlbmQ7ICsraXQpIHsKLSAg
ICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmQoaXQtPmtleSk7Ci0gICAgICAgIHN0cmluZ0J1aWxk
ZXIuYXBwZW5kTGl0ZXJhbCgiOiAiKTsKLSAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmQoaXQt
PnZhbHVlKTsKLSAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmQoJ1xuJyk7CisgICAgU3RyaW5n
QnVpbGRlciBoZWFkZXI7CisgICAgaGVhZGVyLmFwcGVuZExpdGVyYWwoIkhUVFAgIik7CisgICAg
aGVhZGVyLmFwcGVuZE51bWJlcihyZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpKTsKKyAgICBoZWFk
ZXIuYXBwZW5kKCcgJyk7CisgICAgaGVhZGVyLmFwcGVuZChyZXNwb25zZS5odHRwU3RhdHVzVGV4
dCgpKTsKKyAgICBoZWFkZXIuYXBwZW5kKCdcbicpOworICAgIGZvciAoYXV0byYgZmllbGQgOiBy
ZXNwb25zZS5odHRwSGVhZGVyRmllbGRzKCkpIHsKKyAgICAgICAgaGVhZGVyLmFwcGVuZChmaWVs
ZC5rZXkpOworICAgICAgICBoZWFkZXIuYXBwZW5kTGl0ZXJhbCgiOiAiKTsKKyAgICAgICAgaGVh
ZGVyLmFwcGVuZChmaWVsZC52YWx1ZSk7CisgICAgICAgIGhlYWRlci5hcHBlbmQoJ1xuJyk7CiAg
ICAgfQotICAgIAotICAgIFN0cmluZyBoZWFkZXJzID0gc3RyaW5nQnVpbGRlci50b1N0cmluZygp
OwotICAgIAorCiAgICAgLy8gSWYgdGhlIGNvbnRlbnQgaXMgZW5jb2RlZCAobW9zdCBsaWtlbHkg
Y29tcHJlc3NlZCksIHRoZW4gZG9uJ3Qgc2VuZCBpdHMgbGVuZ3RoIHRvIHRoZSBwbHVnaW4sCiAg
ICAgLy8gd2hpY2ggaXMgb25seSBpbnRlcmVzdGVkIGluIHRoZSBkZWNvZGVkIGxlbmd0aCwgbm90
IHlldCBrbm93biBhdCB0aGUgbW9tZW50LgogICAgIC8vIDxyZGFyOi8vcHJvYmxlbS80NDcwNTk5
PiB0cmFja3MgYSByZXF1ZXN0IGZvciAtW05TVVJMUmVzcG9uc2UgZXhwZWN0ZWRDb250ZW50TGVu
Z3RoXSB0byBpbmNvcnBvcmF0ZSB0aGlzIGxvZ2ljLgpAQCAtMjA5LDcgKzIwNSw3IEBAIHN0YXRp
YyBTdHJpbmcgYnVpbGRIVFRQSGVhZGVycyhjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25z
ZSwgbG9uZyBsb25nJiBleHBlCiAgICAgaWYgKCFjb250ZW50RW5jb2RpbmcuaXNOdWxsKCkgJiYg
Y29udGVudEVuY29kaW5nICE9ICJpZGVudGl0eSIpCiAgICAgICAgIGV4cGVjdGVkQ29udGVudExl
bmd0aCA9IC0xOwogCi0gICAgcmV0dXJuIGhlYWRlcnM7CisgICAgcmV0dXJuIGhlYWRlci50b1N0
cmluZygpOwogfQogCiBzdGF0aWMgdWludDMyX3QgbGFzdE1vZGlmaWVkRGF0ZU1TKGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQpAQCAtMjkyLDM3ICsyODgsMTkgQEAgc3RhdGljIGlu
bGluZSBXZWJQYWdlKiB3ZWJQYWdlKEhUTUxQbHVnSW5FbGVtZW50KiBwbHVnaW5FbGVtZW50KQog
ICAgIHJldHVybiB3ZWJGcmFtZS0+cGFnZSgpOwogfQogCi1SZWY8UGx1Z2luVmlldz4gUGx1Z2lu
Vmlldzo6Y3JlYXRlKFBhc3NSZWZQdHI8SFRNTFBsdWdJbkVsZW1lbnQ+IHBsdWdpbkVsZW1lbnQs
IFBhc3NSZWZQdHI8UGx1Z2luPiBwbHVnaW4sIGNvbnN0IFBsdWdpbjo6UGFyYW1ldGVycyYgcGFy
YW1ldGVycykKK1JlZjxQbHVnaW5WaWV3PiBQbHVnaW5WaWV3OjpjcmVhdGUoSFRNTFBsdWdJbkVs
ZW1lbnQmIHBsdWdpbkVsZW1lbnQsIFJlZjxQbHVnaW4+JiYgcGx1Z2luLCBjb25zdCBQbHVnaW46
OlBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgUGx1
Z2luVmlldyhwbHVnaW5FbGVtZW50LCBwbHVnaW4sIHBhcmFtZXRlcnMpKTsKKyAgICByZXR1cm4g
YWRvcHRSZWYoKm5ldyBQbHVnaW5WaWV3KHBsdWdpbkVsZW1lbnQsIFdURk1vdmUocGx1Z2luKSwg
cGFyYW1ldGVycykpOwogfQogCi1QbHVnaW5WaWV3OjpQbHVnaW5WaWV3KFBhc3NSZWZQdHI8SFRN
TFBsdWdJbkVsZW1lbnQ+IHBsdWdpbkVsZW1lbnQsIFBhc3NSZWZQdHI8UGx1Z2luPiBwbHVnaW4s
IGNvbnN0IFBsdWdpbjo6UGFyYW1ldGVycyYgcGFyYW1ldGVycykKK1BsdWdpblZpZXc6OlBsdWdp
blZpZXcoSFRNTFBsdWdJbkVsZW1lbnQmIHBsdWdpbkVsZW1lbnQsIFJlZjxQbHVnaW4+JiYgcGx1
Z2luLCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpCiAgICAgOiBQbHVnaW5W
aWV3QmFzZSgwKQotICAgICwgbV9wbHVnaW5FbGVtZW50KHBsdWdpbkVsZW1lbnQpCi0gICAgLCBt
X3BsdWdpbihwbHVnaW4pCisgICAgLCBtX3BsdWdpbkVsZW1lbnQoJnBsdWdpbkVsZW1lbnQpCisg
ICAgLCBtX3BsdWdpbihXVEZNb3ZlKHBsdWdpbikpCiAgICAgLCBtX3dlYlBhZ2Uod2ViUGFnZSht
X3BsdWdpbkVsZW1lbnQuZ2V0KCkpKQogICAgICwgbV9wYXJhbWV0ZXJzKHBhcmFtZXRlcnMpCi0g
ICAgLCBtX2lzSW5pdGlhbGl6ZWQoZmFsc2UpCi0gICAgLCBtX2lzV2FpdGluZ0ZvclN5bmNocm9u
b3VzSW5pdGlhbGl6YXRpb24oZmFsc2UpCi0gICAgLCBtX2lzV2FpdGluZ1VudGlsTWVkaWFDYW5T
dGFydChmYWxzZSkKLSAgICAsIG1faXNCZWluZ0Rlc3Ryb3llZChmYWxzZSkKLSAgICAsIG1fcGx1
Z2luUHJvY2Vzc0hhc0NyYXNoZWQoZmFsc2UpCi0jaWYgRU5BQkxFKFBSSU1BUllfU05BUFNIT1RU
RURfUExVR0lOX0hFVVJJU1RJQykKLSAgICAsIG1fZGlkUGx1Z0luU3RhcnRPZmZTY3JlZW4oZmFs
c2UpCi0jZW5kaWYKICAgICAsIG1fcGVuZGluZ1VSTFJlcXVlc3RzVGltZXIoUnVuTG9vcDo6bWFp
bigpLCB0aGlzLCAmUGx1Z2luVmlldzo6cGVuZGluZ1VSTFJlcXVlc3RzVGltZXJGaXJlZCkKLSNp
ZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKLSAgICAsIG1fbnBSdW50aW1lT2JqZWN0TWFw
KHRoaXMpCi0jZW5kaWYKLSAgICAsIG1fbWFudWFsU3RyZWFtU3RhdGUoU3RyZWFtU3RhdGVJbml0
aWFsKQogICAgICwgbV9wbHVnaW5TbmFwc2hvdFRpbWVyKCp0aGlzLCAmUGx1Z2luVmlldzo6cGx1
Z2luU25hcHNob3RUaW1lckZpcmVkLCBwbHVnaW5TbmFwc2hvdFRpbWVyRGVsYXkpCi0jaWYgRU5B
QkxFKFBSSU1BUllfU05BUFNIT1RURURfUExVR0lOX0hFVVJJU1RJQykgfHwgUExBVEZPUk0oQ09D
T0EpCi0gICAgLCBtX2NvdW50U25hcHNob3RSZXRyaWVzKDApCi0jZW5kaWYKLSAgICAsIG1fZGlk
UmVjZWl2ZVVzZXJJbnRlcmFjdGlvbihmYWxzZSkKLSAgICAsIG1fcGFnZVNjYWxlRmFjdG9yKDEp
Ci0gICAgLCBtX3BsdWdpbklzUGxheWluZ0F1ZGlvKGZhbHNlKQogewogICAgIG1fd2ViUGFnZS0+
YWRkUGx1Z2luVmlldyh0aGlzKTsKIH0KQEAgLTM3NCw3ICszNTIsNyBAQCB2b2lkIFBsdWdpblZp
ZXc6OmRlc3Ryb3lQbHVnaW5BbmRSZXNldCgpCiAgICAgY2FuY2VsQWxsU3RyZWFtcygpOwogfQog
Ci12b2lkIFBsdWdpblZpZXc6OnJlY3JlYXRlQW5kSW5pdGlhbGl6ZShQYXNzUmVmUHRyPFBsdWdp
bj4gcGx1Z2luKQordm9pZCBQbHVnaW5WaWV3OjpyZWNyZWF0ZUFuZEluaXRpYWxpemUoUmVmPFBs
dWdpbj4mJiBwbHVnaW4pCiB7CiAgICAgaWYgKG1fcGx1Z2luKSB7CiAgICAgICAgIGlmIChtX3Bs
dWdpblNuYXBzaG90VGltZXIuaXNBY3RpdmUoKSkKQEAgLTM4MiwxMyArMzYwLDEyIEBAIHZvaWQg
UGx1Z2luVmlldzo6cmVjcmVhdGVBbmRJbml0aWFsaXplKFBhc3NSZWZQdHI8UGx1Z2luPiBwbHVn
aW4pCiAgICAgICAgIGRlc3Ryb3lQbHVnaW5BbmRSZXNldCgpOwogICAgIH0KIAotICAgIC8vIFJl
c2V0IG1lbWJlciB2YXJpYWJsZXMgdG8gaW5pdGlhbCB2YWx1ZXMuCi0gICAgbV9wbHVnaW4gPSBw
bHVnaW47CisgICAgbV9wbHVnaW4gPSBXVEZNb3ZlKHBsdWdpbik7CiAgICAgbV9pc0luaXRpYWxp
emVkID0gZmFsc2U7CiAgICAgbV9pc1dhaXRpbmdGb3JTeW5jaHJvbm91c0luaXRpYWxpemF0aW9u
ID0gZmFsc2U7CiAgICAgbV9pc1dhaXRpbmdVbnRpbE1lZGlhQ2FuU3RhcnQgPSBmYWxzZTsKICAg
ICBtX2lzQmVpbmdEZXN0cm95ZWQgPSBmYWxzZTsKLSAgICBtX21hbnVhbFN0cmVhbVN0YXRlID0g
U3RyZWFtU3RhdGVJbml0aWFsOworICAgIG1fbWFudWFsU3RyZWFtU3RhdGUgPSBNYW51YWxTdHJl
YW1TdGF0ZTo6SW5pdGlhbDsKICAgICBtX3RyYW5zaWVudFBhaW50aW5nU25hcHNob3QgPSBudWxs
cHRyOwogCiAgICAgaW5pdGlhbGl6ZVBsdWdpbigpOwpAQCAtNDIxLDggKzM5OCw4IEBAIHZvaWQg
UGx1Z2luVmlldzo6bWFudWFsTG9hZERpZFJlY2VpdmVSZXNwb25zZShjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJiByZXNwb25zZSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKCFtX2lzSW5pdGlh
bGl6ZWQpIHsKLSAgICAgICAgQVNTRVJUKG1fbWFudWFsU3RyZWFtU3RhdGUgPT0gU3RyZWFtU3Rh
dGVJbml0aWFsKTsKLSAgICAgICAgbV9tYW51YWxTdHJlYW1TdGF0ZSA9IFN0cmVhbVN0YXRlSGFz
UmVjZWl2ZWRSZXNwb25zZTsKKyAgICAgICAgQVNTRVJUKG1fbWFudWFsU3RyZWFtU3RhdGUgPT0g
TWFudWFsU3RyZWFtU3RhdGU6OkluaXRpYWwpOworICAgICAgICBtX21hbnVhbFN0cmVhbVN0YXRl
ID0gTWFudWFsU3RyZWFtU3RhdGU6Okhhc1JlY2VpdmVkUmVzcG9uc2U7CiAgICAgICAgIG1fbWFu
dWFsU3RyZWFtUmVzcG9uc2UgPSByZXNwb25zZTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAg
LTQ0OCw3ICs0MjUsNyBAQCB2b2lkIFBsdWdpblZpZXc6Om1hbnVhbExvYWREaWRSZWNlaXZlRGF0
YShjb25zdCBjaGFyKiBieXRlcywgaW50IGxlbmd0aCkKICAgICAgICAgcmV0dXJuOwogCiAgICAg
aWYgKCFtX2lzSW5pdGlhbGl6ZWQpIHsKLSAgICAgICAgQVNTRVJUKG1fbWFudWFsU3RyZWFtU3Rh
dGUgPT0gU3RyZWFtU3RhdGVIYXNSZWNlaXZlZFJlc3BvbnNlKTsKKyAgICAgICAgQVNTRVJUKG1f
bWFudWFsU3RyZWFtU3RhdGUgPT0gTWFudWFsU3RyZWFtU3RhdGU6Okhhc1JlY2VpdmVkUmVzcG9u
c2UpOwogICAgICAgICBpZiAoIW1fbWFudWFsU3RyZWFtRGF0YSkKICAgICAgICAgICAgIG1fbWFu
dWFsU3RyZWFtRGF0YSA9IFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKCk7CiAKQEAgLTQ2Niw4ICs0NDMs
OCBAQCB2b2lkIFBsdWdpblZpZXc6Om1hbnVhbExvYWREaWRGaW5pc2hMb2FkaW5nKCkKICAgICAg
ICAgcmV0dXJuOwogCiAgICAgaWYgKCFtX2lzSW5pdGlhbGl6ZWQpIHsKLSAgICAgICAgQVNTRVJU
KG1fbWFudWFsU3RyZWFtU3RhdGUgPT0gU3RyZWFtU3RhdGVIYXNSZWNlaXZlZFJlc3BvbnNlKTsK
LSAgICAgICAgbV9tYW51YWxTdHJlYW1TdGF0ZSA9IFN0cmVhbVN0YXRlRmluaXNoZWQ7CisgICAg
ICAgIEFTU0VSVChtX21hbnVhbFN0cmVhbVN0YXRlID09IE1hbnVhbFN0cmVhbVN0YXRlOjpIYXNS
ZWNlaXZlZFJlc3BvbnNlKTsKKyAgICAgICAgbV9tYW51YWxTdHJlYW1TdGF0ZSA9IE1hbnVhbFN0
cmVhbVN0YXRlOjpGaW5pc2hlZDsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIApAQCAtNDgxLDcg
KzQ1OCw3IEBAIHZvaWQgUGx1Z2luVmlldzo6bWFudWFsTG9hZERpZEZhaWwoY29uc3QgUmVzb3Vy
Y2VFcnJvciYgZXJyb3IpCiAgICAgICAgIHJldHVybjsKIAogICAgIGlmICghbV9pc0luaXRpYWxp
emVkKSB7Ci0gICAgICAgIG1fbWFudWFsU3RyZWFtU3RhdGUgPSBTdHJlYW1TdGF0ZUZpbmlzaGVk
OworICAgICAgICBtX21hbnVhbFN0cmVhbVN0YXRlID0gTWFudWFsU3RyZWFtU3RhdGU6OkZpbmlz
aGVkOwogICAgICAgICBtX21hbnVhbFN0cmVhbUVycm9yID0gZXJyb3I7CiAgICAgICAgIG1fbWFu
dWFsU3RyZWFtRGF0YSA9IG51bGxwdHI7CiAgICAgICAgIHJldHVybjsKQEAgLTEwMDcsNyArOTg0
LDcgQEAgdm9pZCBQbHVnaW5WaWV3Ojp3aWxsRGV0YXRjaFJlbmRlcmVyKCkKICAgICBtX3BsdWdp
bi0+d2lsbERldGF0Y2hSZW5kZXJlcigpOwogfQogCi1QYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4g
UGx1Z2luVmlldzo6bGl2ZVJlc291cmNlRGF0YSgpIGNvbnN0CitSZWZQdHI8U2hhcmVkQnVmZmVy
PiBQbHVnaW5WaWV3OjpsaXZlUmVzb3VyY2VEYXRhKCkgY29uc3QKIHsKICAgICBpZiAoIW1faXNJ
bml0aWFsaXplZCB8fCAhbV9wbHVnaW4pCiAgICAgICAgIHJldHVybiAwOwpAQCAtMTMwOCwxMiAr
MTI4NSwxMiBAQCB2b2lkIFBsdWdpblZpZXc6OmNhbmNlbEFsbFN0cmVhbXMoKQogCiB2b2lkIFBs
dWdpblZpZXc6OnJlZGVsaXZlck1hbnVhbFN0cmVhbSgpCiB7Ci0gICAgaWYgKG1fbWFudWFsU3Ry
ZWFtU3RhdGUgPT0gU3RyZWFtU3RhdGVJbml0aWFsKSB7CisgICAgaWYgKG1fbWFudWFsU3RyZWFt
U3RhdGUgPT0gTWFudWFsU3RyZWFtU3RhdGU6OkluaXRpYWwpIHsKICAgICAgICAgLy8gTm90aGlu
ZyB0byBkby4KICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIGlmIChtX21hbnVhbFN0cmVh
bVN0YXRlID09IFN0cmVhbVN0YXRlRmFpbGVkKSB7CisgICAgaWYgKG1fbWFudWFsU3RyZWFtU3Rh
dGUgPT0gTWFudWFsU3RyZWFtU3RhdGU6OkZhaWxlZCkgewogICAgICAgICBtYW51YWxMb2FkRGlk
RmFpbChtX21hbnVhbFN0cmVhbUVycm9yKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTEz
MzQsNyArMTMxMSw3IEBAIHZvaWQgUGx1Z2luVmlldzo6cmVkZWxpdmVyTWFudWFsU3RyZWFtKCkK
ICAgICAgICAgbV9tYW51YWxTdHJlYW1EYXRhID0gbnVsbHB0cjsKICAgICB9CiAKLSAgICBpZiAo
bV9tYW51YWxTdHJlYW1TdGF0ZSA9PSBTdHJlYW1TdGF0ZUZpbmlzaGVkKQorICAgIGlmIChtX21h
bnVhbFN0cmVhbVN0YXRlID09IE1hbnVhbFN0cmVhbVN0YXRlOjpGaW5pc2hlZCkKICAgICAgICAg
bWFudWFsTG9hZERpZEZpbmlzaExvYWRpbmcoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuaCBiL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3LmgKaW5kZXggMDA3NTgzYzQzZDAzOGI5ZmFjYzJl
ZGI3M2QzYTEyNWI0YmNkYTQ4My4uMzhiZTYyMWI4MWFmNjlhNjM3MzczNjJhY2IyMDE3ZWQzNzgw
NzU4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdp
blZpZXcuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmll
dy5oCkBAIC02NCw5ICs2NCw5IEBAIGNsYXNzIFdlYkV2ZW50OwogCiBjbGFzcyBQbHVnaW5WaWV3
IDogcHVibGljIFdlYkNvcmU6OlBsdWdpblZpZXdCYXNlLCBwdWJsaWMgUGx1Z2luQ29udHJvbGxl
ciwgcHJpdmF0ZSBXZWJDb3JlOjpNZWRpYUNhblN0YXJ0TGlzdGVuZXIsIHByaXZhdGUgV2ViRnJh
bWU6OkxvYWRMaXN0ZW5lciwgcHJpdmF0ZSBXZWJDb3JlOjpNZWRpYVByb2R1Y2VyIHsKIHB1Ymxp
YzoKLSAgICBzdGF0aWMgUmVmPFBsdWdpblZpZXc+IGNyZWF0ZShQYXNzUmVmUHRyPFdlYkNvcmU6
OkhUTUxQbHVnSW5FbGVtZW50PiwgUGFzc1JlZlB0cjxQbHVnaW4+LCBjb25zdCBQbHVnaW46OlBh
cmFtZXRlcnMmKTsKKyAgICBzdGF0aWMgUmVmPFBsdWdpblZpZXc+IGNyZWF0ZShXZWJDb3JlOjpI
VE1MUGx1Z0luRWxlbWVudCYsIFJlZjxQbHVnaW4+JiYsIGNvbnN0IFBsdWdpbjo6UGFyYW1ldGVy
cyYpOwogCi0gICAgdm9pZCByZWNyZWF0ZUFuZEluaXRpYWxpemUoUGFzc1JlZlB0cjxQbHVnaW4+
KTsKKyAgICB2b2lkIHJlY3JlYXRlQW5kSW5pdGlhbGl6ZShSZWY8UGx1Z2luPiYmKTsKIAogICAg
IFdlYkNvcmU6OkZyYW1lKiBmcmFtZSgpIGNvbnN0OwogCkBAIC0xMTIsMTMgKzExMiwxMyBAQCBw
dWJsaWM6CiAKICAgICBib29sIHNob3VsZEFsbG93U2NyaXB0aW5nKCk7CiAKLSAgICBQYXNzUmVm
UHRyPFdlYkNvcmU6OlNoYXJlZEJ1ZmZlcj4gbGl2ZVJlc291cmNlRGF0YSgpIGNvbnN0OworICAg
IFJlZlB0cjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+IGxpdmVSZXNvdXJjZURhdGEoKSBjb25zdDsK
ICAgICBib29sIHBlcmZvcm1EaWN0aW9uYXJ5TG9va3VwQXRMb2NhdGlvbihjb25zdCBXZWJDb3Jl
OjpGbG9hdFBvaW50Jik7CiAgICAgU3RyaW5nIGdldFNlbGVjdGlvbkZvcldvcmRBdFBvaW50KGNv
bnN0IFdlYkNvcmU6OkZsb2F0UG9pbnQmKSBjb25zdDsKICAgICBib29sIGV4aXN0aW5nU2VsZWN0
aW9uQ29udGFpbnNQb2ludChjb25zdCBXZWJDb3JlOjpGbG9hdFBvaW50JikgY29uc3Q7CiAKIHBy
aXZhdGU6Ci0gICAgUGx1Z2luVmlldyhQYXNzUmVmUHRyPFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVt
ZW50PiwgUGFzc1JlZlB0cjxQbHVnaW4+LCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmIHBhcmFt
ZXRlcnMpOworICAgIFBsdWdpblZpZXcoV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQmLCBSZWY8
UGx1Z2luPiYmLCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmKTsKICAgICB2aXJ0dWFsIH5QbHVn
aW5WaWV3KCk7CiAKICAgICB2b2lkIGluaXRpYWxpemVQbHVnaW4oKTsKQEAgLTI0NCwxNCArMjQ0
LDE0IEBAIHByaXZhdGU6CiAgICAgV2ViUGFnZSogbV93ZWJQYWdlOwogICAgIFBsdWdpbjo6UGFy
YW1ldGVycyBtX3BhcmFtZXRlcnM7CiAKLSAgICBib29sIG1faXNJbml0aWFsaXplZDsKLSAgICBi
b29sIG1faXNXYWl0aW5nRm9yU3luY2hyb25vdXNJbml0aWFsaXphdGlvbjsKLSAgICBib29sIG1f
aXNXYWl0aW5nVW50aWxNZWRpYUNhblN0YXJ0OwotICAgIGJvb2wgbV9pc0JlaW5nRGVzdHJveWVk
OwotICAgIGJvb2wgbV9wbHVnaW5Qcm9jZXNzSGFzQ3Jhc2hlZDsKKyAgICBib29sIG1faXNJbml0
aWFsaXplZCB7IGZhbHNlIH07CisgICAgYm9vbCBtX2lzV2FpdGluZ0ZvclN5bmNocm9ub3VzSW5p
dGlhbGl6YXRpb24geyBmYWxzZSB9OworICAgIGJvb2wgbV9pc1dhaXRpbmdVbnRpbE1lZGlhQ2Fu
U3RhcnQgeyBmYWxzZSB9OworICAgIGJvb2wgbV9pc0JlaW5nRGVzdHJveWVkIHsgZmFsc2UgfTsK
KyAgICBib29sIG1fcGx1Z2luUHJvY2Vzc0hhc0NyYXNoZWQgeyBmYWxzZSB9OwogCiAjaWYgRU5B
QkxFKFBSSU1BUllfU05BUFNIT1RURURfUExVR0lOX0hFVVJJU1RJQykKLSAgICBib29sIG1fZGlk
UGx1Z0luU3RhcnRPZmZTY3JlZW47CisgICAgYm9vbCBtX2RpZFBsdWdJblN0YXJ0T2ZmU2NyZWVu
IHsgZmFsc2UgfTsKICNlbmRpZgogCiAgICAgLy8gUGVuZGluZyBVUkxSZXF1ZXN0cyB0aGF0IHRo
ZSBwbHVnLWluIGhhcyBtYWRlLgpAQCAtMjY3LDE4ICsyNjcsMTMgQEAgcHJpdmF0ZToKIAogI2lm
IEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgIC8vIEEgbWFwIG9mIGFsbCByZWxhdGVk
IE5QT2JqZWN0cyBmb3IgdGhpcyBwbHVnLWluIHZpZXcuCi0gICAgTlBSdW50aW1lT2JqZWN0TWFw
IG1fbnBSdW50aW1lT2JqZWN0TWFwOworICAgIE5QUnVudGltZU9iamVjdE1hcCBtX25wUnVudGlt
ZU9iamVjdE1hcCB7IHRoaXMgfTsKICNlbmRpZgogCiAgICAgLy8gVGhlIG1hbnVhbCBzdHJlYW0g
c3RhdGUuIFRoaXMgaXMgdXNlZCBzbyB3ZSBjYW4gZGVsaXZlciBhIG1hbnVhbCBzdHJlYW0gdG8g
YSBwbHVnLWluCiAgICAgLy8gd2hlbiBpdCBpcyBpbml0aWFsaXplZC4KLSAgICBlbnVtIE1hbnVh
bFN0cmVhbVN0YXRlIHsKLSAgICAgICAgU3RyZWFtU3RhdGVJbml0aWFsLAotICAgICAgICBTdHJl
YW1TdGF0ZUhhc1JlY2VpdmVkUmVzcG9uc2UsCi0gICAgICAgIFN0cmVhbVN0YXRlRmluaXNoZWQs
Ci0gICAgICAgIFN0cmVhbVN0YXRlRmFpbGVkCi0gICAgfTsKLSAgICBNYW51YWxTdHJlYW1TdGF0
ZSBtX21hbnVhbFN0cmVhbVN0YXRlOworICAgIGVudW0gY2xhc3MgTWFudWFsU3RyZWFtU3RhdGUg
eyBJbml0aWFsLCBIYXNSZWNlaXZlZFJlc3BvbnNlLCBGaW5pc2hlZCwgRmFpbGVkIH07CisgICAg
TWFudWFsU3RyZWFtU3RhdGUgbV9tYW51YWxTdHJlYW1TdGF0ZSB7IE1hbnVhbFN0cmVhbVN0YXRl
OjpJbml0aWFsIH07CiAKICAgICBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIG1fbWFudWFsU3Ry
ZWFtUmVzcG9uc2U7CiAgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBtX21hbnVhbFN0cmVhbUVy
cm9yOwpAQCAtMjg5LDEzICsyODQsMTMgQEAgcHJpdmF0ZToKICAgICAvLyBUaGlzIHRpbWVyIGlz
IHVzZWQgd2hlbiBwbHVnaW4gc25hcHNob3R0aW5nIGlzIGVuYWJsZWQsIHRvIGNhcHR1cmUgYSBw
bHVnaW4gcGxhY2Vob2xkZXIuCiAgICAgV2ViQ29yZTo6RGVmZXJyYWJsZU9uZVNob3RUaW1lciBt
X3BsdWdpblNuYXBzaG90VGltZXI7CiAjaWYgRU5BQkxFKFBSSU1BUllfU05BUFNIT1RURURfUExV
R0lOX0hFVVJJU1RJQykgfHwgUExBVEZPUk0oQ09DT0EpCi0gICAgdW5zaWduZWQgbV9jb3VudFNu
YXBzaG90UmV0cmllczsKKyAgICB1bnNpZ25lZCBtX2NvdW50U25hcHNob3RSZXRyaWVzIHsgMCB9
OwogI2VuZGlmCi0gICAgYm9vbCBtX2RpZFJlY2VpdmVVc2VySW50ZXJhY3Rpb247CisgICAgYm9v
bCBtX2RpZFJlY2VpdmVVc2VySW50ZXJhY3Rpb24geyBmYWxzZSB9OwogCi0gICAgZG91YmxlIG1f
cGFnZVNjYWxlRmFjdG9yOworICAgIGRvdWJsZSBtX3BhZ2VTY2FsZUZhY3RvciB7IDEgfTsKIAot
ICAgIGJvb2wgbV9wbHVnaW5Jc1BsYXlpbmdBdWRpbzsKKyAgICBib29sIG1fcGx1Z2luSXNQbGF5
aW5nQXVkaW8geyBmYWxzZSB9OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNs
aWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNo
cm9tZUNsaWVudC5jcHAKaW5kZXggZGMzZmVkNWM5YmJmZTMwYzhiZDIwYWVlOWU5YjAxZDgyZGZl
NGZlOC4uM2Q3MmM2NzMxNzZlMGQwMWNmNTMzYTNjYzM1OWU5YmIwYWMyNWE2YSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGll
bnQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2Vi
Q2hyb21lQ2xpZW50LmNwcApAQCAtMTAzLDIwICsxMDMsMjAgQEAgc3RhdGljIGRvdWJsZSBhcmVh
KFdlYkZyYW1lKiBmcmFtZSkKIH0KIAogCi1zdGF0aWMgV2ViRnJhbWUqIGZpbmRMYXJnZXN0RnJh
bWVJbkZyYW1lU2V0KFdlYlBhZ2UqIHBhZ2UpCitzdGF0aWMgV2ViRnJhbWUqIGZpbmRMYXJnZXN0
RnJhbWVJbkZyYW1lU2V0KFdlYlBhZ2UmIHBhZ2UpCiB7CiAgICAgLy8gQXBwcm94aW1hdGUgd2hh
dCBhIHVzZXIgY291bGQgY29uc2lkZXIgYSBkZWZhdWx0IHRhcmdldCBmcmFtZSBmb3IgYXBwbGlj
YXRpb24gbWVudSBvcGVyYXRpb25zLgogCi0gICAgV2ViRnJhbWUqIG1haW5GcmFtZSA9IHBhZ2Ut
Pm1haW5XZWJGcmFtZSgpOworICAgIFdlYkZyYW1lKiBtYWluRnJhbWUgPSBwYWdlLm1haW5XZWJG
cmFtZSgpOwogICAgIGlmICghbWFpbkZyYW1lIHx8ICFtYWluRnJhbWUtPmlzRnJhbWVTZXQoKSkK
LSAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgV2ViRnJh
bWUqIGxhcmdlc3RTb0ZhciA9IDA7CisgICAgV2ViRnJhbWUqIGxhcmdlc3RTb0ZhciA9IG51bGxw
dHI7CiAKICAgICBSZWY8QVBJOjpBcnJheT4gZnJhbWVDaGlsZHJlbiA9IG1haW5GcmFtZS0+Y2hp
bGRGcmFtZXMoKTsKICAgICBzaXplX3QgY291bnQgPSBmcmFtZUNoaWxkcmVuLT5zaXplKCk7CiAg
ICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBjb3VudDsgKytpKSB7Ci0gICAgICAgIFdlYkZyYW1l
KiBjaGlsZEZyYW1lID0gZnJhbWVDaGlsZHJlbi0+YXQ8V2ViRnJhbWU+KGkpOworICAgICAgICBh
dXRvKiBjaGlsZEZyYW1lID0gZnJhbWVDaGlsZHJlbi0+YXQ8V2ViRnJhbWU+KGkpOwogICAgICAg
ICBpZiAoIWxhcmdlc3RTb0ZhciB8fCBhcmVhKGNoaWxkRnJhbWUpID4gYXJlYShsYXJnZXN0U29G
YXIpKQogICAgICAgICAgICAgbGFyZ2VzdFNvRmFyID0gY2hpbGRGcmFtZTsKICAgICB9CkBAIC0x
MjQsNiArMTI0LDE1IEBAIHN0YXRpYyBXZWJGcmFtZSogZmluZExhcmdlc3RGcmFtZUluRnJhbWVT
ZXQoV2ViUGFnZSogcGFnZSkKICAgICByZXR1cm4gbGFyZ2VzdFNvRmFyOwogfQogCitXZWJDaHJv
bWVDbGllbnQ6OldlYkNocm9tZUNsaWVudChXZWJQYWdlJiBwYWdlKQorICAgIDogbV9wYWdlKHBh
Z2UpCit7Cit9CisKK2lubGluZSBXZWJDaHJvbWVDbGllbnQ6On5XZWJDaHJvbWVDbGllbnQoKQor
eworfQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y2hyb21lRGVzdHJveWVkKCkKIHsKICAgICBk
ZWxldGUgdGhpczsKQEAgLTEzMSw3ICsxNDAsNyBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y2hy
b21lRGVzdHJveWVkKCkKIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNldFdpbmRvd1JlY3QoY29u
c3QgRmxvYXRSZWN0JiB3aW5kb3dGcmFtZSkKIHsKLSAgICBtX3BhZ2UtPnNlbmRTZXRXaW5kb3dG
cmFtZSh3aW5kb3dGcmFtZSk7CisgICAgbV9wYWdlLnNlbmRTZXRXaW5kb3dGcmFtZSh3aW5kb3dG
cmFtZSk7CiB9CiAKIEZsb2F0UmVjdCBXZWJDaHJvbWVDbGllbnQ6OndpbmRvd1JlY3QoKQpAQCAt
MTQwLDEzICsxNDksMTMgQEAgRmxvYXRSZWN0IFdlYkNocm9tZUNsaWVudDo6d2luZG93UmVjdCgp
CiAgICAgcmV0dXJuIEZsb2F0UmVjdCgpOwogI2Vsc2UKICNpZiBQTEFURk9STShNQUMpCi0gICAg
aWYgKG1fcGFnZS0+aGFzQ2FjaGVkV2luZG93RnJhbWUoKSkKLSAgICAgICAgcmV0dXJuIG1fcGFn
ZS0+d2luZG93RnJhbWVJblVuZmxpcHBlZFNjcmVlbkNvb3JkaW5hdGVzKCk7CisgICAgaWYgKG1f
cGFnZS5oYXNDYWNoZWRXaW5kb3dGcmFtZSgpKQorICAgICAgICByZXR1cm4gbV9wYWdlLndpbmRv
d0ZyYW1lSW5VbmZsaXBwZWRTY3JlZW5Db29yZGluYXRlcygpOwogI2VuZGlmCiAKICAgICBGbG9h
dFJlY3QgbmV3V2luZG93RnJhbWU7CiAKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigp
LnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OkdldFdpbmRvd0ZyYW1lKCksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFdpbmRvd0Zy
YW1lOjpSZXBseShuZXdXaW5kb3dGcmFtZSksIG1fcGFnZS0+cGFnZUlEKCkpKQorICAgIGlmICgh
V2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5
bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0V2luZG93RnJhbWUoKSwgTWVzc2FnZXM6Oldl
YlBhZ2VQcm94eTo6R2V0V2luZG93RnJhbWU6OlJlcGx5KG5ld1dpbmRvd0ZyYW1lKSwgbV9wYWdl
LnBhZ2VJRCgpKSkKICAgICAgICAgcmV0dXJuIEZsb2F0UmVjdCgpOwogCiAgICAgcmV0dXJuIG5l
d1dpbmRvd0ZyYW1lOwpAQCAtMTU1LDMzICsxNjQsMzMgQEAgRmxvYXRSZWN0IFdlYkNocm9tZUNs
aWVudDo6d2luZG93UmVjdCgpCiAKIEZsb2F0UmVjdCBXZWJDaHJvbWVDbGllbnQ6OnBhZ2VSZWN0
KCkKIHsKLSAgICByZXR1cm4gRmxvYXRSZWN0KEZsb2F0UG9pbnQoKSwgbV9wYWdlLT5zaXplKCkp
OworICAgIHJldHVybiBGbG9hdFJlY3QoRmxvYXRQb2ludCgpLCBtX3BhZ2Uuc2l6ZSgpKTsKIH0K
IAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmZvY3VzKCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0Rm9jdXModHJ1ZSkpOworICAgIG1fcGFnZS5zZW5kKE1l
c3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldEZvY3VzKHRydWUpKTsKIH0KIAogdm9pZCBXZWJDaHJv
bWVDbGllbnQ6OnVuZm9jdXMoKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFn
ZVByb3h5OjpTZXRGb2N1cyhmYWxzZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OlNldEZvY3VzKGZhbHNlKSk7CiB9CiAKICNpZiBQTEFURk9STShDT0NPQSkKIHZv
aWQgV2ViQ2hyb21lQ2xpZW50OjplbGVtZW50RGlkRm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9kZSog
bm9kZSkKIHsKLSAgICBtX3BhZ2UtPmVsZW1lbnREaWRGb2N1cyhjb25zdF9jYXN0PFdlYkNvcmU6
Ok5vZGUqPihub2RlKSk7CisgICAgbV9wYWdlLmVsZW1lbnREaWRGb2N1cyhjb25zdF9jYXN0PFdl
YkNvcmU6Ok5vZGUqPihub2RlKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjplbGVtZW50
RGlkQmx1cihjb25zdCBXZWJDb3JlOjpOb2RlKiBub2RlKQogewotICAgIG1fcGFnZS0+ZWxlbWVu
dERpZEJsdXIoY29uc3RfY2FzdDxXZWJDb3JlOjpOb2RlKj4obm9kZSkpOworICAgIG1fcGFnZS5l
bGVtZW50RGlkQmx1cihjb25zdF9jYXN0PFdlYkNvcmU6Ok5vZGUqPihub2RlKSk7CiB9CiAKIHZv
aWQgV2ViQ2hyb21lQ2xpZW50OjptYWtlRmlyc3RSZXNwb25kZXIoKQogewotICAgIG1fcGFnZS0+
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpNYWtlRmlyc3RSZXNwb25kZXIoKSk7CisgICAg
bV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6TWFrZUZpcnN0UmVzcG9uZGVyKCkp
OwogfSAgICAKICNlbmRpZiAgICAKIApAQCAtMTkzLDcgKzIwMiw3IEBAIGJvb2wgV2ViQ2hyb21l
Q2xpZW50OjpjYW5UYWtlRm9jdXMoRm9jdXNEaXJlY3Rpb24pCiAKIHZvaWQgV2ViQ2hyb21lQ2xp
ZW50Ojp0YWtlRm9jdXMoRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9uKQogewotICAgIG1fcGFnZS0+
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpUYWtlRm9jdXMoZGlyZWN0aW9uKSk7CisgICAg
bV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6VGFrZUZvY3VzKGRpcmVjdGlvbikp
OwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6Zm9jdXNlZEVsZW1lbnRDaGFuZ2VkKEVsZW1l
bnQqIGVsZW1lbnQpCkBAIC0yMDcsMTQgKzIxNiwxNCBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6
Zm9jdXNlZEVsZW1lbnRDaGFuZ2VkKEVsZW1lbnQqIGVsZW1lbnQpCiAKICAgICBXZWJGcmFtZSog
d2ViRnJhbWUgPSBXZWJGcmFtZTo6ZnJvbUNvcmVGcmFtZSgqZWxlbWVudC0+ZG9jdW1lbnQoKS5m
cmFtZSgpKTsKICAgICBBU1NFUlQod2ViRnJhbWUpOwotICAgIG1fcGFnZS0+aW5qZWN0ZWRCdW5k
bGVGb3JtQ2xpZW50KCkuZGlkRm9jdXNUZXh0RmllbGQobV9wYWdlLCAmaW5wdXRFbGVtZW50LCB3
ZWJGcmFtZSk7CisgICAgbV9wYWdlLmluamVjdGVkQnVuZGxlRm9ybUNsaWVudCgpLmRpZEZvY3Vz
VGV4dEZpZWxkKCZtX3BhZ2UsICZpbnB1dEVsZW1lbnQsIHdlYkZyYW1lKTsKIH0KIAogdm9pZCBX
ZWJDaHJvbWVDbGllbnQ6OmZvY3VzZWRGcmFtZUNoYW5nZWQoRnJhbWUqIGZyYW1lKQogewogICAg
IFdlYkZyYW1lKiB3ZWJGcmFtZSA9IGZyYW1lID8gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZy
YW1lKSA6IG51bGxwdHI7CiAKLSAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9j
ZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZvY3VzZWRGcmFt
ZUNoYW5nZWQod2ViRnJhbWUgPyB3ZWJGcmFtZS0+ZnJhbWVJRCgpIDogMCksIG1fcGFnZS0+cGFn
ZUlEKCkpOworICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0
aW9uKCktPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6Rm9jdXNlZEZyYW1lQ2hhbmdlZCh3
ZWJGcmFtZSA/IHdlYkZyYW1lLT5mcmFtZUlEKCkgOiAwKSwgbV9wYWdlLnBhZ2VJRCgpKTsKIH0K
IAogUGFnZSogV2ViQ2hyb21lQ2xpZW50OjpjcmVhdGVXaW5kb3coRnJhbWUqIGZyYW1lLCBjb25z
dCBGcmFtZUxvYWRSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBXaW5kb3dGZWF0dXJlcyYgd2luZG93
RmVhdHVyZXMsIGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIG5hdmlnYXRpb25BY3Rpb24pCkBAIC0y
MzQsMTMgKzI0MywxMyBAQCBQYWdlKiBXZWJDaHJvbWVDbGllbnQ6OmNyZWF0ZVdpbmRvdyhGcmFt
ZSogZnJhbWUsIGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmIHJlcXVlcwogICAgIG5hdmlnYXRpb25B
Y3Rpb25EYXRhLm1vdXNlQnV0dG9uID0gSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uOjpt
b3VzZUJ1dHRvbkZvck5hdmlnYXRpb25BY3Rpb24obmF2aWdhdGlvbkFjdGlvbik7CiAgICAgbmF2
aWdhdGlvbkFjdGlvbkRhdGEuc3ludGhldGljQ2xpY2tUeXBlID0gSW5qZWN0ZWRCdW5kbGVOYXZp
Z2F0aW9uQWN0aW9uOjpzeW50aGV0aWNDbGlja1R5cGVGb3JOYXZpZ2F0aW9uQWN0aW9uKG5hdmln
YXRpb25BY3Rpb24pOwogICAgIG5hdmlnYXRpb25BY3Rpb25EYXRhLnVzZXJHZXN0dXJlVG9rZW5J
ZGVudGlmaWVyID0gd2ViUHJvY2Vzcy51c2VyR2VzdHVyZVRva2VuSWRlbnRpZmllcihuYXZpZ2F0
aW9uQWN0aW9uLnVzZXJHZXN0dXJlVG9rZW4oKSk7Ci0gICAgbmF2aWdhdGlvbkFjdGlvbkRhdGEu
Y2FuSGFuZGxlUmVxdWVzdCA9IG1fcGFnZS0+Y2FuSGFuZGxlUmVxdWVzdChyZXF1ZXN0LnJlc291
cmNlUmVxdWVzdCgpKTsKKyAgICBuYXZpZ2F0aW9uQWN0aW9uRGF0YS5jYW5IYW5kbGVSZXF1ZXN0
ID0gbV9wYWdlLmNhbkhhbmRsZVJlcXVlc3QocmVxdWVzdC5yZXNvdXJjZVJlcXVlc3QoKSk7CiAg
ICAgbmF2aWdhdGlvbkFjdGlvbkRhdGEuc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSA9IG5h
dmlnYXRpb25BY3Rpb24uc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSgpOwogICAgIG5hdmln
YXRpb25BY3Rpb25EYXRhLmRvd25sb2FkQXR0cmlidXRlID0gbmF2aWdhdGlvbkFjdGlvbi5kb3du
bG9hZEF0dHJpYnV0ZSgpOwogCiAgICAgdWludDY0X3QgbmV3UGFnZUlEID0gMDsKICAgICBXZWJQ
YWdlQ3JlYXRpb25QYXJhbWV0ZXJzIHBhcmFtZXRlcnM7Ci0gICAgaWYgKCF3ZWJQcm9jZXNzLnBh
cmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OkNyZWF0ZU5ld1BhZ2Uod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpm
cm9tRnJhbWUoZnJhbWUpLCByZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLCB3aW5kb3dGZWF0dXJl
cywgbmF2aWdhdGlvbkFjdGlvbkRhdGEpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpDcmVhdGVO
ZXdQYWdlOjpSZXBseShuZXdQYWdlSUQsIHBhcmFtZXRlcnMpLCBtX3BhZ2UtPnBhZ2VJRCgpKSkK
KyAgICBpZiAoIXdlYlByb2Nlc3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMo
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6Q3JlYXRlTmV3UGFnZSh3ZWJGcmFtZS0+ZnJhbWVJRCgp
LCBTZWN1cml0eU9yaWdpbkRhdGE6OmZyb21GcmFtZShmcmFtZSksIHJlcXVlc3QucmVzb3VyY2VS
ZXF1ZXN0KCksIHdpbmRvd0ZlYXR1cmVzLCBuYXZpZ2F0aW9uQWN0aW9uRGF0YSksIE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6OkNyZWF0ZU5ld1BhZ2U6OlJlcGx5KG5ld1BhZ2VJRCwgcGFyYW1ldGVy
cyksIG1fcGFnZS5wYWdlSUQoKSkpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCiAgICAgaWYg
KCFuZXdQYWdlSUQpCkBAIC0yNTIsMzIgKzI2MSwzMiBAQCBQYWdlKiBXZWJDaHJvbWVDbGllbnQ6
OmNyZWF0ZVdpbmRvdyhGcmFtZSogZnJhbWUsIGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmIHJlcXVl
cwogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2hvdygpCiB7Ci0gICAgbV9wYWdlLT5zaG93KCk7
CisgICAgbV9wYWdlLnNob3coKTsKIH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OmNhblJ1bk1v
ZGFsKCkKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5jYW5SdW5Nb2RhbCgpOworICAgIHJldHVybiBt
X3BhZ2UuY2FuUnVuTW9kYWwoKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJ1bk1vZGFs
KCkKIHsKLSAgICBtX3BhZ2UtPnJ1bk1vZGFsKCk7CisgICAgbV9wYWdlLnJ1bk1vZGFsKCk7CiB9
CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRUb29sYmFyc1Zpc2libGUoYm9vbCB0b29sYmFy
c0FyZVZpc2libGUpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OlNldFRvb2xiYXJzQXJlVmlzaWJsZSh0b29sYmFyc0FyZVZpc2libGUpKTsKKyAgICBtX3BhZ2Uu
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRUb29sYmFyc0FyZVZpc2libGUodG9vbGJh
cnNBcmVWaXNpYmxlKSk7CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50Ojp0b29sYmFyc1Zpc2li
bGUoKQogewotICAgIEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VVSUNsaWVudDo6VUlFbGVtZW50
VmlzaWJpbGl0eSB0b29sYmFyc1Zpc2liaWxpdHkgPSBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlD
bGllbnQoKS50b29sYmFyc0FyZVZpc2libGUobV9wYWdlKTsKKyAgICBBUEk6OkluamVjdGVkQnVu
ZGxlOjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHkgdG9vbGJhcnNWaXNpYmlsaXR5
ID0gbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS50b29sYmFyc0FyZVZpc2libGUoJm1f
cGFnZSk7CiAgICAgaWYgKHRvb2xiYXJzVmlzaWJpbGl0eSAhPSBBUEk6OkluamVjdGVkQnVuZGxl
OjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHk6OlVua25vd24pCiAgICAgICAgIHJl
dHVybiB0b29sYmFyc1Zpc2liaWxpdHkgPT0gQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xp
ZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5OjpWaXNpYmxlOwogICAgIAogICAgIGJvb2wgdG9vbGJh
cnNBcmVWaXNpYmxlID0gdHJ1ZTsKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBh
cmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OkdldFRvb2xiYXJzQXJlVmlzaWJsZSgpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRUb29s
YmFyc0FyZVZpc2libGU6OlJlcGx5KHRvb2xiYXJzQXJlVmlzaWJsZSksIG1fcGFnZS0+cGFnZUlE
KCkpKQorICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5l
Y3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0VG9vbGJhcnNBcmVW
aXNpYmxlKCksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFRvb2xiYXJzQXJlVmlzaWJsZTo6
UmVwbHkodG9vbGJhcnNBcmVWaXNpYmxlKSwgbV9wYWdlLnBhZ2VJRCgpKSkKICAgICAgICAgcmV0
dXJuIHRydWU7CiAKICAgICByZXR1cm4gdG9vbGJhcnNBcmVWaXNpYmxlOwpAQCAtMjg1LDE3ICsy
OTQsMTcgQEAgYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnRvb2xiYXJzVmlzaWJsZSgpCiAKIHZvaWQg
V2ViQ2hyb21lQ2xpZW50OjpzZXRTdGF0dXNiYXJWaXNpYmxlKGJvb2wgc3RhdHVzQmFySXNWaXNp
YmxlKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRTdGF0
dXNCYXJJc1Zpc2libGUoc3RhdHVzQmFySXNWaXNpYmxlKSk7CisgICAgbV9wYWdlLnNlbmQoTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0U3RhdHVzQmFySXNWaXNpYmxlKHN0YXR1c0JhcklzVmlz
aWJsZSkpOwogfQogCiBib29sIFdlYkNocm9tZUNsaWVudDo6c3RhdHVzYmFyVmlzaWJsZSgpCiB7
Ci0gICAgQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmls
aXR5IHN0YXR1c2JhclZpc2liaWxpdHkgPSBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQo
KS5zdGF0dXNCYXJJc1Zpc2libGUobV9wYWdlKTsKKyAgICBBUEk6OkluamVjdGVkQnVuZGxlOjpQ
YWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHkgc3RhdHVzYmFyVmlzaWJpbGl0eSA9IG1f
cGFnZS5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkuc3RhdHVzQmFySXNWaXNpYmxlKCZtX3BhZ2Up
OwogICAgIGlmIChzdGF0dXNiYXJWaXNpYmlsaXR5ICE9IEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBh
Z2VVSUNsaWVudDo6VUlFbGVtZW50VmlzaWJpbGl0eTo6VW5rbm93bikKICAgICAgICAgcmV0dXJu
IHN0YXR1c2JhclZpc2liaWxpdHkgPT0gQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50
OjpVSUVsZW1lbnRWaXNpYmlsaXR5OjpWaXNpYmxlOwogCiAgICAgYm9vbCBzdGF0dXNCYXJJc1Zp
c2libGUgPSB0cnVlOwotICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJv
Y2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0U3Rh
dHVzQmFySXNWaXNpYmxlKCksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFN0YXR1c0Jhcklz
VmlzaWJsZTo6UmVwbHkoc3RhdHVzQmFySXNWaXNpYmxlKSwgbV9wYWdlLT5wYWdlSUQoKSkpCisg
ICAgaWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigp
LT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRTdGF0dXNCYXJJc1Zpc2libGUo
KSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0U3RhdHVzQmFySXNWaXNpYmxlOjpSZXBseShz
dGF0dXNCYXJJc1Zpc2libGUpLCBtX3BhZ2UucGFnZUlEKCkpKQogICAgICAgICByZXR1cm4gdHJ1
ZTsKIAogICAgIHJldHVybiBzdGF0dXNCYXJJc1Zpc2libGU7CkBAIC0zMTQsMTcgKzMyMywxNyBA
QCBib29sIFdlYkNocm9tZUNsaWVudDo6c2Nyb2xsYmFyc1Zpc2libGUoKQogCiB2b2lkIFdlYkNo
cm9tZUNsaWVudDo6c2V0TWVudWJhclZpc2libGUoYm9vbCBtZW51QmFyVmlzaWJsZSkKIHsKLSAg
ICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0TWVudUJhcklzVmlzaWJs
ZShtZW51QmFyVmlzaWJsZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OlNldE1lbnVCYXJJc1Zpc2libGUobWVudUJhclZpc2libGUpKTsKIH0KIAogYm9vbCBXZWJD
aHJvbWVDbGllbnQ6Om1lbnViYXJWaXNpYmxlKCkKIHsKLSAgICBBUEk6OkluamVjdGVkQnVuZGxl
OjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHkgbWVudWJhclZpc2liaWxpdHkgPSBt
X3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5tZW51QmFySXNWaXNpYmxlKG1fcGFnZSk7
CisgICAgQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmls
aXR5IG1lbnViYXJWaXNpYmlsaXR5ID0gbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5t
ZW51QmFySXNWaXNpYmxlKCZtX3BhZ2UpOwogICAgIGlmIChtZW51YmFyVmlzaWJpbGl0eSAhPSBB
UEk6OkluamVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHk6OlVu
a25vd24pCiAgICAgICAgIHJldHVybiBtZW51YmFyVmlzaWJpbGl0eSA9PSBBUEk6OkluamVjdGVk
QnVuZGxlOjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHk6OlZpc2libGU7CiAgICAg
CiAgICAgYm9vbCBtZW51QmFySXNWaXNpYmxlID0gdHJ1ZTsKLSAgICBpZiAoIVdlYlByb2Nlc3M6
OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6OkdldE1lbnVCYXJJc1Zpc2libGUoKSwgTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6R2V0TWVudUJhcklzVmlzaWJsZTo6UmVwbHkobWVudUJhcklzVmlzaWJsZSksIG1fcGFn
ZS0+cGFnZUlEKCkpKQorICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJv
Y2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0TWVu
dUJhcklzVmlzaWJsZSgpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRNZW51QmFySXNWaXNp
YmxlOjpSZXBseShtZW51QmFySXNWaXNpYmxlKSwgbV9wYWdlLnBhZ2VJRCgpKSkKICAgICAgICAg
cmV0dXJuIHRydWU7CiAKICAgICByZXR1cm4gbWVudUJhcklzVmlzaWJsZTsKQEAgLTMzMiwxOCAr
MzQxLDE4IEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjptZW51YmFyVmlzaWJsZSgpCiAKIHZvaWQg
V2ViQ2hyb21lQ2xpZW50OjpzZXRSZXNpemFibGUoYm9vbCByZXNpemFibGUpCiB7Ci0gICAgbV9w
YWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldElzUmVzaXphYmxlKHJlc2l6YWJs
ZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldElzUmVzaXph
YmxlKHJlc2l6YWJsZSkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6YWRkTWVzc2FnZVRv
Q29uc29sZShNZXNzYWdlU291cmNlIHNvdXJjZSwgTWVzc2FnZUxldmVsIGxldmVsLCBjb25zdCBT
dHJpbmcmIG1lc3NhZ2UsIHVuc2lnbmVkIGxpbmVOdW1iZXIsIHVuc2lnbmVkIGNvbHVtbk51bWJl
ciwgY29uc3QgU3RyaW5nJiBzb3VyY2VJRCkKIHsKICAgICAvLyBOb3RpZnkgdGhlIGJ1bmRsZSBj
bGllbnQuCi0gICAgbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkud2lsbEFkZE1lc3Nh
Z2VUb0NvbnNvbGUobV9wYWdlLCBzb3VyY2UsIGxldmVsLCBtZXNzYWdlLCBsaW5lTnVtYmVyLCBj
b2x1bW5OdW1iZXIsIHNvdXJjZUlEKTsKKyAgICBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVu
dCgpLndpbGxBZGRNZXNzYWdlVG9Db25zb2xlKCZtX3BhZ2UsIHNvdXJjZSwgbGV2ZWwsIG1lc3Nh
Z2UsIGxpbmVOdW1iZXIsIGNvbHVtbk51bWJlciwgc291cmNlSUQpOwogfQogCiBib29sIFdlYkNo
cm9tZUNsaWVudDo6Y2FuUnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsKCkKIHsKLSAgICByZXR1
cm4gbV9wYWdlLT5jYW5SdW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoKTsKKyAgICByZXR1cm4g
bV9wYWdlLmNhblJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbCgpOwogfQogCiBib29sIFdlYkNo
cm9tZUNsaWVudDo6cnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsKGNvbnN0IFN0cmluZyYgbWVz
c2FnZSwgRnJhbWUqIGZyYW1lKQpAQCAtMzU0LDcgKzM2Myw3IEBAIGJvb2wgV2ViQ2hyb21lQ2xp
ZW50OjpydW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBG
cmFtZSoKIAogICAgIEhhbmdEZXRlY3Rpb25EaXNhYmxlciBoYW5nRGV0ZWN0aW9uRGlzYWJsZXI7
CiAKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0
aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJ1bkJlZm9yZVVubG9hZENv
bmZpcm1QYW5lbChtZXNzYWdlLCB3ZWJGcmFtZS0+ZnJhbWVJRCgpKSwgTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6UnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsOjpSZXBseShzaG91bGRDbG9zZSks
IG1fcGFnZS0+cGFnZUlEKCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRp
b246OkluZm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKSkKKyAgICBpZiAoIVdlYlByb2Nl
c3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OlJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbChtZXNzYWdlLCB3
ZWJGcmFtZS0+ZnJhbWVJRCgpKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuQmVmb3JlVW5s
b2FkQ29uZmlybVBhbmVsOjpSZXBseShzaG91bGRDbG9zZSksIG1fcGFnZS5wYWdlSUQoKSwgU2Vj
b25kczo6aW5maW5pdHkoKSwgSVBDOjpTZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9j
ZXNzV2lsbFN1c3BlbmQpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICByZXR1cm4gc2hv
dWxkQ2xvc2U7CkBAIC0zNjksMTQgKzM3OCwxNCBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y2xv
c2VXaW5kb3dTb29uKCkKICAgICAvLyBhIGNsb3NlIGV4ZWN1dGUgc3luY2hyb25vdXNseSBhcyBw
YXJ0IG9mIHdpbmRvdy5jbG9zZSwgYnV0IG90aGVyIHBhcnRzCiAgICAgLy8gbGF0ZXIgb24uCiAK
LSAgICBtX3BhZ2UtPmNvcmVQYWdlKCktPnNldEdyb3VwTmFtZShTdHJpbmcoKSk7CisgICAgbV9w
YWdlLmNvcmVQYWdlKCktPnNldEdyb3VwTmFtZShTdHJpbmcoKSk7CiAKLSAgICBpZiAoV2ViRnJh
bWUqIGZyYW1lID0gbV9wYWdlLT5tYWluV2ViRnJhbWUoKSkgeworICAgIGlmIChXZWJGcmFtZSog
ZnJhbWUgPSBtX3BhZ2UubWFpbldlYkZyYW1lKCkpIHsKICAgICAgICAgaWYgKEZyYW1lKiBjb3Jl
RnJhbWUgPSBmcmFtZS0+Y29yZUZyYW1lKCkpCiAgICAgICAgICAgICBjb3JlRnJhbWUtPmxvYWRl
cigpLnN0b3BGb3JVc2VyQ2FuY2VsKCk7CiAgICAgfQogCi0gICAgbV9wYWdlLT5zZW5kQ2xvc2Uo
KTsKKyAgICBtX3BhZ2Uuc2VuZENsb3NlKCk7CiB9CiAKIHN0YXRpYyBib29sIHNob3VsZFN1cHBy
ZXNzSmF2YVNjcmlwdERpYWxvZ3MoRnJhbWUmIGZyYW1lKQpAQCAtMzk2LDExICs0MDUsMTEgQEAg
dm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJ1bkphdmFTY3JpcHRBbGVydChGcmFtZSogZnJhbWUsIGNv
bnN0IFN0cmluZyYgYWxlcnRUZXh0KQogICAgIEFTU0VSVCh3ZWJGcmFtZSk7CiAKICAgICAvLyBO
b3RpZnkgdGhlIGJ1bmRsZSBjbGllbnQuCi0gICAgbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xp
ZW50KCkud2lsbFJ1bkphdmFTY3JpcHRBbGVydChtX3BhZ2UsIGFsZXJ0VGV4dCwgd2ViRnJhbWUp
OworICAgIG1fcGFnZS5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkud2lsbFJ1bkphdmFTY3JpcHRB
bGVydCgmbV9wYWdlLCBhbGVydFRleHQsIHdlYkZyYW1lKTsKIAogICAgIEhhbmdEZXRlY3Rpb25E
aXNhYmxlciBoYW5nRGV0ZWN0aW9uRGlzYWJsZXI7CiAKLSAgICBXZWJQcm9jZXNzOjpzaW5nbGV0
b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFn
ZVByb3h5OjpSdW5KYXZhU2NyaXB0QWxlcnQod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlP
cmlnaW5EYXRhOjpmcm9tRnJhbWUoZnJhbWUpLCBhbGVydFRleHQpLCBNZXNzYWdlczo6V2ViUGFn
ZVByb3h5OjpSdW5KYXZhU2NyaXB0QWxlcnQ6OlJlcGx5KCksIG1fcGFnZS0+cGFnZUlEKCksIFNl
Y29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246OkluZm9ybVBsYXRmb3JtUHJv
Y2Vzc1dpbGxTdXNwZW5kKTsKKyAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9j
ZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZh
U2NyaXB0QWxlcnQod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9t
RnJhbWUoZnJhbWUpLCBhbGVydFRleHQpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZh
U2NyaXB0QWxlcnQ6OlJlcGx5KCksIG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHko
KSwgSVBDOjpTZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQp
OwogfQogCiBib29sIFdlYkNocm9tZUNsaWVudDo6cnVuSmF2YVNjcmlwdENvbmZpcm0oRnJhbWUq
IGZyYW1lLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UpCkBAIC00MTIsMTIgKzQyMSwxMiBAQCBib29s
IFdlYkNocm9tZUNsaWVudDo6cnVuSmF2YVNjcmlwdENvbmZpcm0oRnJhbWUqIGZyYW1lLCBjb25z
dCBTdHJpbmcmIG1lc3NhZ2UpCiAgICAgQVNTRVJUKHdlYkZyYW1lKTsKIAogICAgIC8vIE5vdGlm
eSB0aGUgYnVuZGxlIGNsaWVudC4KLSAgICBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQo
KS53aWxsUnVuSmF2YVNjcmlwdENvbmZpcm0obV9wYWdlLCBtZXNzYWdlLCB3ZWJGcmFtZSk7Cisg
ICAgbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS53aWxsUnVuSmF2YVNjcmlwdENvbmZp
cm0oJm1fcGFnZSwgbWVzc2FnZSwgd2ViRnJhbWUpOwogCiAgICAgSGFuZ0RldGVjdGlvbkRpc2Fi
bGVyIGhhbmdEZXRlY3Rpb25EaXNhYmxlcjsKIAogICAgIGJvb2wgcmVzdWx0ID0gZmFsc2U7Ci0g
ICAgaWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigp
LT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2NyaXB0Q29uZmlybSh3
ZWJGcmFtZS0+ZnJhbWVJRCgpLCBTZWN1cml0eU9yaWdpbkRhdGE6OmZyb21GcmFtZShmcmFtZSks
IG1lc3NhZ2UpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2NyaXB0Q29uZmlybTo6
UmVwbHkocmVzdWx0KSwgbV9wYWdlLT5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBD
OjpTZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpKQorICAg
IGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+
c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdENvbmZpcm0od2Vi
RnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tRnJhbWUoZnJhbWUpLCBt
ZXNzYWdlKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdENvbmZpcm06OlJl
cGx5KHJlc3VsdCksIG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBDOjpT
ZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpKQogICAgICAg
ICByZXR1cm4gZmFsc2U7CiAKICAgICByZXR1cm4gcmVzdWx0OwpAQCAtNDMyLDExICs0NDEsMTEg
QEAgYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnJ1bkphdmFTY3JpcHRQcm9tcHQoRnJhbWUqIGZyYW1l
LCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIGMKICAgICBBU1NFUlQod2ViRnJhbWUpOwogCiAgICAg
Ly8gTm90aWZ5IHRoZSBidW5kbGUgY2xpZW50LgotICAgIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVV
SUNsaWVudCgpLndpbGxSdW5KYXZhU2NyaXB0UHJvbXB0KG1fcGFnZSwgbWVzc2FnZSwgZGVmYXVs
dFZhbHVlLCB3ZWJGcmFtZSk7CisgICAgbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS53
aWxsUnVuSmF2YVNjcmlwdFByb21wdCgmbV9wYWdlLCBtZXNzYWdlLCBkZWZhdWx0VmFsdWUsIHdl
YkZyYW1lKTsKIAogICAgIEhhbmdEZXRlY3Rpb25EaXNhYmxlciBoYW5nRGV0ZWN0aW9uRGlzYWJs
ZXI7CiAKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25u
ZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJ1bkphdmFTY3JpcHRQ
cm9tcHQod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tRnJhbWUo
ZnJhbWUpLCBtZXNzYWdlLCBkZWZhdWx0VmFsdWUpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpS
dW5KYXZhU2NyaXB0UHJvbXB0OjpSZXBseShyZXN1bHQpLCBtX3BhZ2UtPnBhZ2VJRCgpLCBTZWNv
bmRzOjppbmZpbml0eSgpLCBJUEM6OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0Zm9ybVByb2Nl
c3NXaWxsU3VzcGVuZCkpCisgICAgaWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQ
cm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5K
YXZhU2NyaXB0UHJvbXB0KHdlYkZyYW1lLT5mcmFtZUlEKCksIFNlY3VyaXR5T3JpZ2luRGF0YTo6
ZnJvbUZyYW1lKGZyYW1lKSwgbWVzc2FnZSwgZGVmYXVsdFZhbHVlKSwgTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6UnVuSmF2YVNjcmlwdFByb21wdDo6UmVwbHkocmVzdWx0KSwgbV9wYWdlLnBhZ2VJ
RCgpLCBTZWNvbmRzOjppbmZpbml0eSgpLCBJUEM6OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0
Zm9ybVByb2Nlc3NXaWxsU3VzcGVuZCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIHJl
dHVybiAhcmVzdWx0LmlzTnVsbCgpOwpAQCAtNDQ1LDI3ICs0NTQsMjkgQEAgYm9vbCBXZWJDaHJv
bWVDbGllbnQ6OnJ1bkphdmFTY3JpcHRQcm9tcHQoRnJhbWUqIGZyYW1lLCBjb25zdCBTdHJpbmcm
IG1lc3NhZ2UsIGMKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRTdGF0dXNiYXJUZXh0KGNvbnN0
IFN0cmluZyYgc3RhdHVzYmFyVGV4dCkKIHsKICAgICAvLyBOb3RpZnkgdGhlIGJ1bmRsZSBjbGll
bnQuCi0gICAgbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkud2lsbFNldFN0YXR1c2Jh
clRleHQobV9wYWdlLCBzdGF0dXNiYXJUZXh0KTsKKyAgICBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVV
SUNsaWVudCgpLndpbGxTZXRTdGF0dXNiYXJUZXh0KCZtX3BhZ2UsIHN0YXR1c2JhclRleHQpOwog
Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldFN0YXR1c1RleHQo
c3RhdHVzYmFyVGV4dCkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OlNldFN0YXR1c1RleHQoc3RhdHVzYmFyVGV4dCkpOwogfQogCiBLZXlib2FyZFVJTW9kZSBXZWJD
aHJvbWVDbGllbnQ6OmtleWJvYXJkVUlNb2RlKCkKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5rZXli
b2FyZFVJTW9kZSgpOworICAgIHJldHVybiBtX3BhZ2Uua2V5Ym9hcmRVSU1vZGUoKTsKIH0KIAog
I2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCisKIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpyZXF1ZXN0
UG9pbnRlckxvY2soKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjpSZXF1ZXN0UG9pbnRlckxvY2soKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6UmVxdWVzdFBvaW50ZXJMb2NrKCkpOwogICAgIHJldHVybiB0cnVlOwogfQogCiB2
b2lkIFdlYkNocm9tZUNsaWVudDo6cmVxdWVzdFBvaW50ZXJVbmxvY2soKQogewotICAgIG1fcGFn
ZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZXF1ZXN0UG9pbnRlclVubG9jaygpKTsK
KyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZXF1ZXN0UG9pbnRlclVu
bG9jaygpKTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjppbnZhbGlkYXRl
Um9vdFZpZXcoY29uc3QgSW50UmVjdCYpCkBAIC00NzUsNjEgKzQ4Niw2MSBAQCB2b2lkIFdlYkNo
cm9tZUNsaWVudDo6aW52YWxpZGF0ZVJvb3RWaWV3KGNvbnN0IEludFJlY3QmKQogCiB2b2lkIFdl
YkNocm9tZUNsaWVudDo6aW52YWxpZGF0ZUNvbnRlbnRzQW5kUm9vdFZpZXcoY29uc3QgSW50UmVj
dCYgcmVjdCkKIHsKLSAgICBpZiAoRG9jdW1lbnQqIGRvY3VtZW50ID0gbV9wYWdlLT5jb3JlUGFn
ZSgpLT5tYWluRnJhbWUoKS5kb2N1bWVudCgpKSB7CisgICAgaWYgKERvY3VtZW50KiBkb2N1bWVu
dCA9IG1fcGFnZS5jb3JlUGFnZSgpLT5tYWluRnJhbWUoKS5kb2N1bWVudCgpKSB7CiAgICAgICAg
IGlmIChkb2N1bWVudC0+cHJpbnRpbmcoKSkKICAgICAgICAgICAgIHJldHVybjsKICAgICB9CiAK
LSAgICBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPnNldE5lZWRzRGlzcGxheUluUmVjdChyZWN0KTsK
KyAgICBtX3BhZ2UuZHJhd2luZ0FyZWEoKS0+c2V0TmVlZHNEaXNwbGF5SW5SZWN0KHJlY3QpOwog
fQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6aW52YWxpZGF0ZUNvbnRlbnRzRm9yU2xvd1Njcm9s
bChjb25zdCBJbnRSZWN0JiByZWN0KQogewotICAgIGlmIChEb2N1bWVudCogZG9jdW1lbnQgPSBt
X3BhZ2UtPmNvcmVQYWdlKCktPm1haW5GcmFtZSgpLmRvY3VtZW50KCkpIHsKKyAgICBpZiAoRG9j
dW1lbnQqIGRvY3VtZW50ID0gbV9wYWdlLmNvcmVQYWdlKCktPm1haW5GcmFtZSgpLmRvY3VtZW50
KCkpIHsKICAgICAgICAgaWYgKGRvY3VtZW50LT5wcmludGluZygpKQogICAgICAgICAgICAgcmV0
dXJuOwogICAgIH0KIAotICAgIG1fcGFnZS0+cGFnZURpZFNjcm9sbCgpOworICAgIG1fcGFnZS5w
YWdlRGlkU2Nyb2xsKCk7CiAjaWYgVVNFKENPT1JESU5BVEVEX0dSQVBISUNTKQotICAgIG1fcGFn
ZS0+ZHJhd2luZ0FyZWEoKS0+c2Nyb2xsKHJlY3QsIEludFNpemUoKSk7CisgICAgbV9wYWdlLmRy
YXdpbmdBcmVhKCktPnNjcm9sbChyZWN0LCBJbnRTaXplKCkpOwogI2Vsc2UKLSAgICBtX3BhZ2Ut
PmRyYXdpbmdBcmVhKCktPnNldE5lZWRzRGlzcGxheUluUmVjdChyZWN0KTsKKyAgICBtX3BhZ2Uu
ZHJhd2luZ0FyZWEoKS0+c2V0TmVlZHNEaXNwbGF5SW5SZWN0KHJlY3QpOwogI2VuZGlmCiB9CiAK
IHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzY3JvbGwoY29uc3QgSW50U2l6ZSYgc2Nyb2xsRGVsdGEs
IGNvbnN0IEludFJlY3QmIHNjcm9sbFJlY3QsIGNvbnN0IEludFJlY3QmIGNsaXBSZWN0KQogewot
ICAgIG1fcGFnZS0+cGFnZURpZFNjcm9sbCgpOwotICAgIG1fcGFnZS0+ZHJhd2luZ0FyZWEoKS0+
c2Nyb2xsKGludGVyc2VjdGlvbihzY3JvbGxSZWN0LCBjbGlwUmVjdCksIHNjcm9sbERlbHRhKTsK
KyAgICBtX3BhZ2UucGFnZURpZFNjcm9sbCgpOworICAgIG1fcGFnZS5kcmF3aW5nQXJlYSgpLT5z
Y3JvbGwoaW50ZXJzZWN0aW9uKHNjcm9sbFJlY3QsIGNsaXBSZWN0KSwgc2Nyb2xsRGVsdGEpOwog
fQogCiAjaWYgVVNFKENPT1JESU5BVEVEX0dSQVBISUNTKQogdm9pZCBXZWJDaHJvbWVDbGllbnQ6
OmRlbGVnYXRlZFNjcm9sbFJlcXVlc3RlZChjb25zdCBJbnRQb2ludCYgc2Nyb2xsT2Zmc2V0KQog
ewotICAgIG1fcGFnZS0+cGFnZURpZFJlcXVlc3RTY3JvbGwoc2Nyb2xsT2Zmc2V0KTsKKyAgICBt
X3BhZ2UucGFnZURpZFJlcXVlc3RTY3JvbGwoc2Nyb2xsT2Zmc2V0KTsKIH0KICNlbmRpZgogCiBJ
bnRQb2ludCBXZWJDaHJvbWVDbGllbnQ6OnNjcmVlblRvUm9vdFZpZXcoY29uc3QgSW50UG9pbnQm
IHBvaW50KSBjb25zdAogewotICAgIHJldHVybiBtX3BhZ2UtPnNjcmVlblRvUm9vdFZpZXcocG9p
bnQpOworICAgIHJldHVybiBtX3BhZ2Uuc2NyZWVuVG9Sb290Vmlldyhwb2ludCk7CiB9CiAKIElu
dFJlY3QgV2ViQ2hyb21lQ2xpZW50Ojpyb290Vmlld1RvU2NyZWVuKGNvbnN0IEludFJlY3QmIHJl
Y3QpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+cm9vdFZpZXdUb1NjcmVlbihyZWN0KTsK
KyAgICByZXR1cm4gbV9wYWdlLnJvb3RWaWV3VG9TY3JlZW4ocmVjdCk7CiB9CiAgICAgCiAjaWYg
UExBVEZPUk0oSU9TKQogSW50UG9pbnQgV2ViQ2hyb21lQ2xpZW50OjphY2Nlc3NpYmlsaXR5U2Ny
ZWVuVG9Sb290Vmlldyhjb25zdCBJbnRQb2ludCYgcG9pbnQpIGNvbnN0CiB7Ci0gICAgcmV0dXJu
IG1fcGFnZS0+YWNjZXNzaWJpbGl0eVNjcmVlblRvUm9vdFZpZXcocG9pbnQpOworICAgIHJldHVy
biBtX3BhZ2UuYWNjZXNzaWJpbGl0eVNjcmVlblRvUm9vdFZpZXcocG9pbnQpOwogfQogCiBJbnRS
ZWN0IFdlYkNocm9tZUNsaWVudDo6cm9vdFZpZXdUb0FjY2Vzc2liaWxpdHlTY3JlZW4oY29uc3Qg
SW50UmVjdCYgcmVjdCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5yb290Vmlld1RvQWNj
ZXNzaWJpbGl0eVNjcmVlbihyZWN0KTsKKyAgICByZXR1cm4gbV9wYWdlLnJvb3RWaWV3VG9BY2Nl
c3NpYmlsaXR5U2NyZWVuKHJlY3QpOwogfQogI2VuZGlmCiAKQEAgLTU0MSwyMCArNTUyLDIwIEBA
IFBsYXRmb3JtUGFnZUNsaWVudCBXZWJDaHJvbWVDbGllbnQ6OnBsYXRmb3JtUGFnZUNsaWVudCgp
IGNvbnN0CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpjb250ZW50c1NpemVDaGFuZ2VkKEZyYW1l
KiBmcmFtZSwgY29uc3QgSW50U2l6ZSYgc2l6ZSkgY29uc3QKIHsKLSAgICBpZiAoIW1fcGFnZS0+
Y29yZVBhZ2UoKS0+c2V0dGluZ3MoKS5mcmFtZUZsYXR0ZW5pbmdFbmFibGVkKCkpIHsKKyAgICBp
ZiAoIW1fcGFnZS5jb3JlUGFnZSgpLT5zZXR0aW5ncygpLmZyYW1lRmxhdHRlbmluZ0VuYWJsZWQo
KSkgewogICAgICAgICBXZWJGcmFtZSogbGFyZ2VzdEZyYW1lID0gZmluZExhcmdlc3RGcmFtZUlu
RnJhbWVTZXQobV9wYWdlKTsKICAgICAgICAgaWYgKGxhcmdlc3RGcmFtZSAhPSBtX2NhY2hlZEZy
YW1lU2V0TGFyZ2VzdEZyYW1lLmdldCgpKSB7CiAgICAgICAgICAgICBtX2NhY2hlZEZyYW1lU2V0
TGFyZ2VzdEZyYW1lID0gbGFyZ2VzdEZyYW1lOwotICAgICAgICAgICAgbV9wYWdlLT5zZW5kKE1l
c3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZyYW1lU2V0TGFyZ2VzdEZyYW1lQ2hhbmdlZChsYXJnZXN0
RnJhbWUgPyBsYXJnZXN0RnJhbWUtPmZyYW1lSUQoKSA6IDApKTsKKyAgICAgICAgICAgIG1fcGFn
ZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZyYW1lU2V0TGFyZ2VzdEZyYW1lQ2hhbmdl
ZChsYXJnZXN0RnJhbWUgPyBsYXJnZXN0RnJhbWUtPmZyYW1lSUQoKSA6IDApKTsKICAgICAgICAg
fQogICAgIH0KIAogICAgIGlmICgmZnJhbWUtPnBhZ2UoKS0+bWFpbkZyYW1lKCkgIT0gZnJhbWUp
CiAgICAgICAgIHJldHVybjsKIAotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpEaWRDaGFuZ2VDb250ZW50U2l6ZShzaXplKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2Fn
ZXM6OldlYlBhZ2VQcm94eTo6RGlkQ2hhbmdlQ29udGVudFNpemUoc2l6ZSkpOwogCi0gICAgbV9w
YWdlLT5kcmF3aW5nQXJlYSgpLT5tYWluRnJhbWVDb250ZW50U2l6ZUNoYW5nZWQoc2l6ZSk7Cisg
ICAgbV9wYWdlLmRyYXdpbmdBcmVhKCktPm1haW5GcmFtZUNvbnRlbnRTaXplQ2hhbmdlZChzaXpl
KTsKIAogICAgIEZyYW1lVmlldyogZnJhbWVWaWV3ID0gZnJhbWUtPnZpZXcoKTsKICAgICBpZiAo
ZnJhbWVWaWV3ICYmICFmcmFtZVZpZXctPmRlbGVnYXRlc1Njcm9sbGluZygpKSAgewpAQCAtNTYy
LDcgKzU3Myw3IEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpjb250ZW50c1NpemVDaGFuZ2VkKEZy
YW1lKiBmcmFtZSwgY29uc3QgSW50U2l6ZSYgc2l6ZSkgY29uCiAgICAgICAgIGJvb2wgaGFzVmVy
dGljYWxTY3JvbGxiYXIgPSBmcmFtZVZpZXctPnZlcnRpY2FsU2Nyb2xsYmFyKCk7CiAKICAgICAg
ICAgaWYgKGhhc0hvcml6b250YWxTY3JvbGxiYXIgIT0gbV9jYWNoZWRNYWluRnJhbWVIYXNIb3Jp
em9udGFsU2Nyb2xsYmFyIHx8IGhhc1ZlcnRpY2FsU2Nyb2xsYmFyICE9IG1fY2FjaGVkTWFpbkZy
YW1lSGFzVmVydGljYWxTY3JvbGxiYXIpIHsKLSAgICAgICAgICAgIG1fcGFnZS0+c2VuZChNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpEaWRDaGFuZ2VTY3JvbGxiYXJzRm9yTWFpbkZyYW1lKGhhc0hv
cml6b250YWxTY3JvbGxiYXIsIGhhc1ZlcnRpY2FsU2Nyb2xsYmFyKSk7CisgICAgICAgICAgICBt
X3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRDaGFuZ2VTY3JvbGxiYXJzRm9y
TWFpbkZyYW1lKGhhc0hvcml6b250YWxTY3JvbGxiYXIsIGhhc1ZlcnRpY2FsU2Nyb2xsYmFyKSk7
CiAKICAgICAgICAgICAgIG1fY2FjaGVkTWFpbkZyYW1lSGFzSG9yaXpvbnRhbFNjcm9sbGJhciA9
IGhhc0hvcml6b250YWxTY3JvbGxiYXI7CiAgICAgICAgICAgICBtX2NhY2hlZE1haW5GcmFtZUhh
c1ZlcnRpY2FsU2Nyb2xsYmFyID0gaGFzVmVydGljYWxTY3JvbGxiYXI7CkBAIC02MDMsMTIgKzYx
NCwxMiBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6dW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlj
a2VkKEVsZW1lbnQqIGVsZW1lbnQsIFJlbmRlckVtYgogICAgIEhUTUxQbHVnSW5JbWFnZUVsZW1l
bnQqIHBsdWdpbkVsZW1lbnQgPSBzdGF0aWNfY2FzdDxIVE1MUGx1Z0luSW1hZ2VFbGVtZW50Kj4o
ZWxlbWVudCk7CiAKICAgICBTdHJpbmcgZnJhbWVVUkxTdHJpbmcgPSBwbHVnaW5FbGVtZW50LT5k
b2N1bWVudCgpLmZyYW1lKCktPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCktPnJlc3BvbnNlVVJM
KCkuc3RyaW5nKCk7Ci0gICAgU3RyaW5nIHBhZ2VVUkxTdHJpbmcgPSBtX3BhZ2UtPm1haW5GcmFt
ZSgpLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwor
ICAgIFN0cmluZyBwYWdlVVJMU3RyaW5nID0gbV9wYWdlLm1haW5GcmFtZSgpLT5sb2FkZXIoKS5k
b2N1bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwogICAgIFN0cmluZyBwbHVn
aW5VUkxTdHJpbmcgPSBwbHVnaW5FbGVtZW50LT5kb2N1bWVudCgpLmNvbXBsZXRlVVJMKHBsdWdp
bkVsZW1lbnQtPnVybCgpKS5zdHJpbmcoKTsKICAgICBVUkwgcGx1Z2luc3BhZ2VBdHRyaWJ1dGVV
UkwgPSBlbGVtZW50LT5kb2N1bWVudCgpLmNvbXBsZXRlVVJMKHN0cmlwTGVhZGluZ0FuZFRyYWls
aW5nSFRNTFNwYWNlcyhwbHVnaW5FbGVtZW50LT5nZXRBdHRyaWJ1dGUocGx1Z2luc3BhZ2VBdHRy
KSkpOwogICAgIGlmICghcGx1Z2luc3BhZ2VBdHRyaWJ1dGVVUkwucHJvdG9jb2xJc0luSFRUUEZh
bWlseSgpKQogICAgICAgICBwbHVnaW5zcGFnZUF0dHJpYnV0ZVVSTCA9IFVSTCgpOwotICAgIG1f
cGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpVbmF2YWlsYWJsZVBsdWdpbkJ1dHRv
bkNsaWNrZWQocGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24sIHBsdWdpbkVsZW1lbnQtPnNlcnZp
Y2VUeXBlKCksIHBsdWdpblVSTFN0cmluZywgcGx1Z2luc3BhZ2VBdHRyaWJ1dGVVUkwuc3RyaW5n
KCksIGZyYW1lVVJMU3RyaW5nLCBwYWdlVVJMU3RyaW5nKSk7CisgICAgbV9wYWdlLnNlbmQoTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6VW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2VkKHBsdWdp
blVuYXZhaWxhYmlsaXR5UmVhc29uLCBwbHVnaW5FbGVtZW50LT5zZXJ2aWNlVHlwZSgpLCBwbHVn
aW5VUkxTdHJpbmcsIHBsdWdpbnNwYWdlQXR0cmlidXRlVVJMLnN0cmluZygpLCBmcmFtZVVSTFN0
cmluZywgcGFnZVVSTFN0cmluZykpOwogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0oZWxlbWVudCk7
CiAgICAgVU5VU0VEX1BBUkFNKHBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKTsKQEAgLTYyNSwx
MSArNjM2LDExIEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojptb3VzZURpZE1vdmVPdmVyRWxlbWVu
dChjb25zdCBIaXRUZXN0UmVzdWx0JiBoaXRUZXN0UmVzdWx0CiAgICAgUmVmUHRyPEFQSTo6T2Jq
ZWN0PiB1c2VyRGF0YTsKIAogICAgIC8vIE5vdGlmeSB0aGUgYnVuZGxlIGNsaWVudC4KLSAgICBt
X3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5tb3VzZURpZE1vdmVPdmVyRWxlbWVudCht
X3BhZ2UsIGhpdFRlc3RSZXN1bHQsIHN0YXRpY19jYXN0PFdlYkV2ZW50OjpNb2RpZmllcnM+KG1v
ZGlmaWVyRmxhZ3MpLCB1c2VyRGF0YSk7CisgICAgbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGll
bnQoKS5tb3VzZURpZE1vdmVPdmVyRWxlbWVudCgmbV9wYWdlLCBoaXRUZXN0UmVzdWx0LCBzdGF0
aWNfY2FzdDxXZWJFdmVudDo6TW9kaWZpZXJzPihtb2RpZmllckZsYWdzKSwgdXNlckRhdGEpOwog
CiAgICAgLy8gTm90aWZ5IHRoZSBVSVByb2Nlc3MuCiAgICAgV2ViSGl0VGVzdFJlc3VsdERhdGEg
d2ViSGl0VGVzdFJlc3VsdERhdGEoaGl0VGVzdFJlc3VsdCk7Ci0gICAgbV9wYWdlLT5zZW5kKE1l
c3NhZ2VzOjpXZWJQYWdlUHJveHk6Ok1vdXNlRGlkTW92ZU92ZXJFbGVtZW50KHdlYkhpdFRlc3RS
ZXN1bHREYXRhLCBtb2RpZmllckZsYWdzLCBVc2VyRGF0YShXZWJQcm9jZXNzOjpzaW5nbGV0b24o
KS50cmFuc2Zvcm1PYmplY3RzVG9IYW5kbGVzKHVzZXJEYXRhLmdldCgpKS5nZXQoKSkpKTsKKyAg
ICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpNb3VzZURpZE1vdmVPdmVyRWxl
bWVudCh3ZWJIaXRUZXN0UmVzdWx0RGF0YSwgbW9kaWZpZXJGbGFncywgVXNlckRhdGEoV2ViUHJv
Y2Vzczo6c2luZ2xldG9uKCkudHJhbnNmb3JtT2JqZWN0c1RvSGFuZGxlcyh1c2VyRGF0YS5nZXQo
KSkuZ2V0KCkpKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRUb29sVGlwKGNvbnN0
IFN0cmluZyYgdG9vbFRpcCwgVGV4dERpcmVjdGlvbikKQEAgLTY0MCw3ICs2NTEsNyBAQCB2b2lk
IFdlYkNocm9tZUNsaWVudDo6c2V0VG9vbFRpcChjb25zdCBTdHJpbmcmIHRvb2xUaXAsIFRleHRE
aXJlY3Rpb24pCiAgICAgICAgIHJldHVybjsKICAgICBtX2NhY2hlZFRvb2xUaXAgPSB0b29sVGlw
OwogCi0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldFRvb2xUaXAo
bV9jYWNoZWRUb29sVGlwKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94
eTo6U2V0VG9vbFRpcChtX2NhY2hlZFRvb2xUaXApKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGll
bnQ6OnByaW50KEZyYW1lKiBmcmFtZSkKQEAgLTY2OCw3ICs2NzksNyBAQCB2b2lkIFdlYkNocm9t
ZUNsaWVudDo6cHJpbnQoRnJhbWUqIGZyYW1lKQogICAgIH0KICNlbmRpZgogCi0gICAgbV9wYWdl
LT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQcmludEZyYW1lKHdlYkZyYW1lLT5m
cmFtZUlEKCkpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQcmludEZyYW1lOjpSZXBseSgpLCBT
ZWNvbmRzOjppbmZpbml0eSgpLCBJUEM6OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0Zm9ybVBy
b2Nlc3NXaWxsU3VzcGVuZCk7CisgICAgbV9wYWdlLnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OlByaW50RnJhbWUod2ViRnJhbWUtPmZyYW1lSUQoKSksIE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OlByaW50RnJhbWU6OlJlcGx5KCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2Vu
ZFN5bmNPcHRpb246OkluZm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKTsKIH0KIAogdm9p
ZCBXZWJDaHJvbWVDbGllbnQ6OmV4Y2VlZGVkRGF0YWJhc2VRdW90YShGcmFtZSogZnJhbWUsIGNv
bnN0IFN0cmluZyYgZGF0YWJhc2VOYW1lLCBEYXRhYmFzZURldGFpbHMgZGV0YWlscykKQEAgLTY4
NiwxMiArNjk3LDEyIEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpleGNlZWRlZERhdGFiYXNlUXVv
dGEoRnJhbWUqIGZyYW1lLCBjb25zdCBTdHJpbmcmIGRhdGFiYXNlCiAgICAgYXV0byBjdXJyZW50
T3JpZ2luVXNhZ2UgPSB0cmFja2VyLnVzYWdlKG9yaWdpbkRhdGEpOwogICAgIHVpbnQ2NF90IG5l
d1F1b3RhID0gMDsKICAgICBSZWZQdHI8QVBJOjpTZWN1cml0eU9yaWdpbj4gc2VjdXJpdHlPcmln
aW4gPSBBUEk6OlNlY3VyaXR5T3JpZ2luOjpjcmVhdGUoV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5E
YXRhOjpmcm9tRGF0YWJhc2VJZGVudGlmaWVyKFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YTo6
ZnJvbVNlY3VyaXR5T3JpZ2luKCpvcmlnaW4pLmRhdGFiYXNlSWRlbnRpZmllcigpKS0+c2VjdXJp
dHlPcmlnaW4oKSk7Ci0gICAgbmV3UXVvdGEgPSBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGll
bnQoKS5kaWRFeGNlZWREYXRhYmFzZVF1b3RhKG1fcGFnZSwgc2VjdXJpdHlPcmlnaW4uZ2V0KCks
IGRhdGFiYXNlTmFtZSwgZGV0YWlscy5kaXNwbGF5TmFtZSgpLCBjdXJyZW50UXVvdGEsIGN1cnJl
bnRPcmlnaW5Vc2FnZSwgZGV0YWlscy5jdXJyZW50VXNhZ2UoKSwgZGV0YWlscy5leHBlY3RlZFVz
YWdlKCkpOworICAgIG5ld1F1b3RhID0gbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5k
aWRFeGNlZWREYXRhYmFzZVF1b3RhKCZtX3BhZ2UsIHNlY3VyaXR5T3JpZ2luLmdldCgpLCBkYXRh
YmFzZU5hbWUsIGRldGFpbHMuZGlzcGxheU5hbWUoKSwgY3VycmVudFF1b3RhLCBjdXJyZW50T3Jp
Z2luVXNhZ2UsIGRldGFpbHMuY3VycmVudFVzYWdlKCksIGRldGFpbHMuZXhwZWN0ZWRVc2FnZSgp
KTsKIAogICAgIGlmICghbmV3UXVvdGEpIHsKICAgICAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9u
KCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoCiAgICAgICAgICAgICBNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpFeGNlZWRlZERhdGFiYXNlUXVvdGEod2ViRnJhbWUtPmZyYW1l
SUQoKSwgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tU2VjdXJpdHlPcmlnaW4oKm9y
aWdpbikuZGF0YWJhc2VJZGVudGlmaWVyKCksIGRhdGFiYXNlTmFtZSwgZGV0YWlscy5kaXNwbGF5
TmFtZSgpLCBjdXJyZW50UXVvdGEsIGN1cnJlbnRPcmlnaW5Vc2FnZSwgZGV0YWlscy5jdXJyZW50
VXNhZ2UoKSwgZGV0YWlscy5leHBlY3RlZFVzYWdlKCkpLAotICAgICAgICAgICAgTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6RXhjZWVkZWREYXRhYmFzZVF1b3RhOjpSZXBseShuZXdRdW90YSksIG1f
cGFnZS0+cGFnZUlEKCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246
OkluZm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKTsKKyAgICAgICAgICAgIE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6OkV4Y2VlZGVkRGF0YWJhc2VRdW90YTo6UmVwbHkobmV3UXVvdGEpLCBt
X3BhZ2UucGFnZUlEKCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246
OkluZm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKTsKICAgICB9CiAKICAgICB0cmFja2Vy
LnNldFF1b3RhKG9yaWdpbkRhdGEsIG5ld1F1b3RhKTsKQEAgLTcwNSwxMCArNzE2LDEwIEBAIHZv
aWQgV2ViQ2hyb21lQ2xpZW50OjpyZWFjaGVkTWF4QXBwQ2FjaGVTaXplKGludDY0X3QpCiB2b2lk
IFdlYkNocm9tZUNsaWVudDo6cmVhY2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YShTZWN1
cml0eU9yaWdpbiogb3JpZ2luLCBpbnQ2NF90IHRvdGFsQnl0ZXNOZWVkZWQpCiB7CiAgICAgUmVm
UHRyPEFQSTo6U2VjdXJpdHlPcmlnaW4+IHNlY3VyaXR5T3JpZ2luID0gQVBJOjpTZWN1cml0eU9y
aWdpbjo6Y3JlYXRlRnJvbVN0cmluZyhvcmlnaW4tPnRvU3RyaW5nKCkpOwotICAgIGlmIChtX3Bh
Z2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5kaWRSZWFjaEFwcGxpY2F0aW9uQ2FjaGVPcmln
aW5RdW90YShtX3BhZ2UsIHNlY3VyaXR5T3JpZ2luLmdldCgpLCB0b3RhbEJ5dGVzTmVlZGVkKSkK
KyAgICBpZiAobV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5kaWRSZWFjaEFwcGxpY2F0
aW9uQ2FjaGVPcmlnaW5RdW90YSgmbV9wYWdlLCBzZWN1cml0eU9yaWdpbi5nZXQoKSwgdG90YWxC
eXRlc05lZWRlZCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGF1dG8mIGNhY2hlU3RvcmFnZSA9
IG1fcGFnZS0+Y29yZVBhZ2UoKS0+YXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKTsKKyAgICBhdXRv
JiBjYWNoZVN0b3JhZ2UgPSBtX3BhZ2UuY29yZVBhZ2UoKS0+YXBwbGljYXRpb25DYWNoZVN0b3Jh
Z2UoKTsKICAgICBpbnQ2NF90IGN1cnJlbnRRdW90YSA9IDA7CiAgICAgaWYgKCFjYWNoZVN0b3Jh
Z2UuY2FsY3VsYXRlUXVvdGFGb3JPcmlnaW4ob3JpZ2luLCBjdXJyZW50UXVvdGEpKQogICAgICAg
ICByZXR1cm47CkBAIC03MTYsNyArNzI3LDcgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJlYWNo
ZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoU2VjdXJpdHlPcmlnaW4qIG9yaWdpbiwKICAg
ICB1aW50NjRfdCBuZXdRdW90YSA9IDA7CiAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFy
ZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoCiAgICAgICAgIE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OlJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoV2ViQ29yZTo6U2Vj
dXJpdHlPcmlnaW5EYXRhOjpmcm9tU2VjdXJpdHlPcmlnaW4oKm9yaWdpbikuZGF0YWJhc2VJZGVu
dGlmaWVyKCksIGN1cnJlbnRRdW90YSwgdG90YWxCeXRlc05lZWRlZCksCi0gICAgICAgIE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OlJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGE6OlJl
cGx5KG5ld1F1b3RhKSwgbV9wYWdlLT5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBD
OjpTZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpOworICAg
ICAgICBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZWFjaGVkQXBwbGljYXRpb25DYWNoZU9yaWdp
blF1b3RhOjpSZXBseShuZXdRdW90YSksIG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5p
dHkoKSwgSVBDOjpTZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3Bl
bmQpOwogCiAgICAgY2FjaGVTdG9yYWdlLnN0b3JlVXBkYXRlZFF1b3RhRm9yT3JpZ2luKG9yaWdp
biwgbmV3UXVvdGEpOwogfQpAQCAtNzMwLDM1ICs3NDEsMzIgQEAgdm9pZCBXZWJDaHJvbWVDbGll
bnQ6OmFubm90YXRlZFJlZ2lvbnNDaGFuZ2VkKCkKIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnNo
b3VsZFJlcGxhY2VXaXRoR2VuZXJhdGVkRmlsZUZvclVwbG9hZChjb25zdCBTdHJpbmcmIHBhdGgs
IFN0cmluZyYgZ2VuZXJhdGVkRmlsZW5hbWUpCiB7Ci0gICAgZ2VuZXJhdGVkRmlsZW5hbWUgPSBt
X3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5zaG91bGRHZW5lcmF0ZUZpbGVGb3JVcGxv
YWQobV9wYWdlLCBwYXRoKTsKKyAgICBnZW5lcmF0ZWRGaWxlbmFtZSA9IG1fcGFnZS5pbmplY3Rl
ZEJ1bmRsZVVJQ2xpZW50KCkuc2hvdWxkR2VuZXJhdGVGaWxlRm9yVXBsb2FkKCZtX3BhZ2UsIHBh
dGgpOwogICAgIHJldHVybiAhZ2VuZXJhdGVkRmlsZW5hbWUuaXNOdWxsKCk7CiB9CiAKIFN0cmlu
ZyBXZWJDaHJvbWVDbGllbnQ6OmdlbmVyYXRlUmVwbGFjZW1lbnRGaWxlKGNvbnN0IFN0cmluZyYg
cGF0aCkKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkuZ2Vu
ZXJhdGVGaWxlRm9yVXBsb2FkKG1fcGFnZSwgcGF0aCk7CisgICAgcmV0dXJuIG1fcGFnZS5pbmpl
Y3RlZEJ1bmRsZVVJQ2xpZW50KCkuZ2VuZXJhdGVGaWxlRm9yVXBsb2FkKCZtX3BhZ2UsIHBhdGgp
OwogfQogCiAjaWYgRU5BQkxFKElOUFVUX1RZUEVfQ09MT1IpCiBzdGQ6OnVuaXF1ZV9wdHI8Q29s
b3JDaG9vc2VyPiBXZWJDaHJvbWVDbGllbnQ6OmNyZWF0ZUNvbG9yQ2hvb3NlcihDb2xvckNob29z
ZXJDbGllbnQqIGNsaWVudCwgY29uc3QgQ29sb3ImIGluaXRpYWxDb2xvcikKIHsKLSAgICByZXR1
cm4gc3RkOjptYWtlX3VuaXF1ZTxXZWJDb2xvckNob29zZXI+KG1fcGFnZSwgY2xpZW50LCBpbml0
aWFsQ29sb3IpOworICAgIHJldHVybiBzdGQ6Om1ha2VfdW5pcXVlPFdlYkNvbG9yQ2hvb3Nlcj4o
Jm1fcGFnZSwgY2xpZW50LCBpbml0aWFsQ29sb3IpOwogfQogI2VuZGlmCiAKLXZvaWQgV2ViQ2hy
b21lQ2xpZW50OjpydW5PcGVuUGFuZWwoRnJhbWUqIGZyYW1lLCBQYXNzUmVmUHRyPEZpbGVDaG9v
c2VyPiBwcnBGaWxlQ2hvb3NlcikKK3ZvaWQgV2ViQ2hyb21lQ2xpZW50OjpydW5PcGVuUGFuZWwo
RnJhbWUmIGZyYW1lLCBGaWxlQ2hvb3NlciYgZmlsZUNob29zZXIpCiB7Ci0gICAgaWYgKG1fcGFn
ZS0+YWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIoKSkKKyAgICBpZiAobV9wYWdlLmFjdGl2
ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIFJlZlB0
cjxGaWxlQ2hvb3Nlcj4gZmlsZUNob29zZXIgPSBwcnBGaWxlQ2hvb3NlcjsKKyAgICBtX3BhZ2Uu
c2V0QWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIoV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVu
ZXI6OmNyZWF0ZSgmbV9wYWdlLCAmZmlsZUNob29zZXIpKTsKIAotICAgIG1fcGFnZS0+c2V0QWN0
aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIoV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXI6OmNy
ZWF0ZShtX3BhZ2UsIGZpbGVDaG9vc2VyLmdldCgpKSk7Ci0KLSAgICBXZWJGcmFtZSogd2ViRnJh
bWUgPSBXZWJGcmFtZTo6ZnJvbUNvcmVGcmFtZSgqZnJhbWUpOworICAgIGF1dG8qIHdlYkZyYW1l
ID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoZnJhbWUpOwogICAgIEFTU0VSVCh3ZWJGcmFtZSk7
Ci0KLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuT3BlblBhbmVs
KHdlYkZyYW1lLT5mcmFtZUlEKCksIFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbUZyYW1lKGZyYW1l
KSwgZmlsZUNob29zZXItPnNldHRpbmdzKCkpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6
V2ViUGFnZVByb3h5OjpSdW5PcGVuUGFuZWwod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlP
cmlnaW5EYXRhOjpmcm9tRnJhbWUoJmZyYW1lKSwgZmlsZUNob29zZXIuc2V0dGluZ3MoKSkpOwog
fQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6bG9hZEljb25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8
U3RyaW5nPiYgZmlsZW5hbWVzLCBGaWxlSWNvbkxvYWRlciYgbG9hZGVyKQpAQCAtNzY3LDM0ICs3
NzUsMzggQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmxvYWRJY29uRm9yRmlsZXMoY29uc3QgVmVj
dG9yPFN0cmluZz4mIGZpbGVuYW1lcywgRmlsZUljb24KIH0KIAogI2lmICFQTEFURk9STShJT1Mp
CisKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRDdXJzb3IoY29uc3QgV2ViQ29yZTo6Q3Vyc29y
JiBjdXJzb3IpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNl
dEN1cnNvcihjdXJzb3IpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjpTZXRDdXJzb3IoY3Vyc29yKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRDdXJz
b3JIaWRkZW5VbnRpbE1vdXNlTW92ZXMoYm9vbCBoaWRkZW5VbnRpbE1vdXNlTW92ZXMpCiB7Ci0g
ICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldEN1cnNvckhpZGRlblVu
dGlsTW91c2VNb3ZlcyhoaWRkZW5VbnRpbE1vdXNlTW92ZXMpKTsKKyAgICBtX3BhZ2Uuc2VuZChN
ZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRDdXJzb3JIaWRkZW5VbnRpbE1vdXNlTW92ZXMoaGlk
ZGVuVW50aWxNb3VzZU1vdmVzKSk7CiB9CisKICNlbmRpZgogCiAjaWYgRU5BQkxFKFJFUVVFU1Rf
QU5JTUFUSU9OX0ZSQU1FKSAmJiAhVVNFKFJFUVVFU1RfQU5JTUFUSU9OX0ZSQU1FX1RJTUVSKQor
CiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2NoZWR1bGVBbmltYXRpb24oKQogewogI2lmIFVTRShD
T09SRElOQVRFRF9HUkFQSElDUykKLSAgICBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPmxheWVyVHJl
ZUhvc3QoKS0+c2NoZWR1bGVBbmltYXRpb24oKTsKKyAgICBtX3BhZ2UuZHJhd2luZ0FyZWEoKS0+
bGF5ZXJUcmVlSG9zdCgpLT5zY2hlZHVsZUFuaW1hdGlvbigpOwogI2VuZGlmCiB9CisKICNlbmRp
ZgogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xzKGNvbnN0
IFZlY3RvcjxSZWZQdHI8V2ViQ29yZTo6RWxlbWVudD4+JiBlbGVtZW50cykKIHsKLSAgICByZXR1
cm4gbV9wYWdlLT5pbmplY3RlZEJ1bmRsZUZvcm1DbGllbnQoKS5kaWRBc3NvY2lhdGVGb3JtQ29u
dHJvbHMobV9wYWdlLCBlbGVtZW50cyk7CisgICAgcmV0dXJuIG1fcGFnZS5pbmplY3RlZEJ1bmRs
ZUZvcm1DbGllbnQoKS5kaWRBc3NvY2lhdGVGb3JtQ29udHJvbHMoJm1fcGFnZSwgZWxlbWVudHMp
OwogfQogCiBib29sIFdlYkNocm9tZUNsaWVudDo6c2hvdWxkTm90aWZ5T25Gb3JtQ2hhbmdlcygp
CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCkuc2hvdWxk
Tm90aWZ5T25Gb3JtQ2hhbmdlcyhtX3BhZ2UpOworICAgIHJldHVybiBtX3BhZ2UuaW5qZWN0ZWRC
dW5kbGVGb3JtQ2xpZW50KCkuc2hvdWxkTm90aWZ5T25Gb3JtQ2hhbmdlcygmbV9wYWdlKTsKIH0K
IAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnNlbGVjdEl0ZW1Xcml0aW5nRGlyZWN0aW9uSXNOYXR1
cmFsKCkKQEAgLTgxOSwzOSArODMxLDQxIEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpoYXNPcGVu
ZWRQb3B1cCgpIGNvbnN0CiAKIFJlZlB0cjxXZWJDb3JlOjpQb3B1cE1lbnU+IFdlYkNocm9tZUNs
aWVudDo6Y3JlYXRlUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCogY2xpZW50KSBj
b25zdAogewotICAgIHJldHVybiBXZWJQb3B1cE1lbnU6OmNyZWF0ZShtX3BhZ2UsIGNsaWVudCk7
CisgICAgcmV0dXJuIFdlYlBvcHVwTWVudTo6Y3JlYXRlKCZtX3BhZ2UsIGNsaWVudCk7CiB9CiAK
IFJlZlB0cjxXZWJDb3JlOjpTZWFyY2hQb3B1cE1lbnU+IFdlYkNocm9tZUNsaWVudDo6Y3JlYXRl
U2VhcmNoUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCogY2xpZW50KSBjb25zdAog
ewotICAgIHJldHVybiBXZWJTZWFyY2hQb3B1cE1lbnU6OmNyZWF0ZShtX3BhZ2UsIGNsaWVudCk7
CisgICAgcmV0dXJuIFdlYlNlYXJjaFBvcHVwTWVudTo6Y3JlYXRlKCZtX3BhZ2UsIGNsaWVudCk7
CiB9CiAKIEdyYXBoaWNzTGF5ZXJGYWN0b3J5KiBXZWJDaHJvbWVDbGllbnQ6OmdyYXBoaWNzTGF5
ZXJGYWN0b3J5KCkgY29uc3QKIHsKLSAgICBpZiAoYXV0byBkcmF3aW5nQXJlYSA9IG1fcGFnZS0+
ZHJhd2luZ0FyZWEoKSkKKyAgICBpZiAoYXV0byBkcmF3aW5nQXJlYSA9IG1fcGFnZS5kcmF3aW5n
QXJlYSgpKQogICAgICAgICByZXR1cm4gZHJhd2luZ0FyZWEtPmdyYXBoaWNzTGF5ZXJGYWN0b3J5
KCk7CiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKICNpZiBVU0UoUkVRVUVTVF9BTklNQVRJT05f
RlJBTUVfRElTUExBWV9NT05JVE9SKQorCiBSZWZQdHI8V2ViQ29yZTo6RGlzcGxheVJlZnJlc2hN
b25pdG9yPiBXZWJDaHJvbWVDbGllbnQ6OmNyZWF0ZURpc3BsYXlSZWZyZXNoTW9uaXRvcihQbGF0
Zm9ybURpc3BsYXlJRCBkaXNwbGF5SUQpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+ZHJh
d2luZ0FyZWEoKS0+Y3JlYXRlRGlzcGxheVJlZnJlc2hNb25pdG9yKGRpc3BsYXlJRCk7CisgICAg
cmV0dXJuIG1fcGFnZS5kcmF3aW5nQXJlYSgpLT5jcmVhdGVEaXNwbGF5UmVmcmVzaE1vbml0b3Io
ZGlzcGxheUlEKTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjphdHRhY2hS
b290R3JhcGhpY3NMYXllcihGcmFtZSosIEdyYXBoaWNzTGF5ZXIqIGxheWVyKQogewogICAgIGlm
IChsYXllcikKLSAgICAgICAgbV9wYWdlLT5lbnRlckFjY2VsZXJhdGVkQ29tcG9zaXRpbmdNb2Rl
KGxheWVyKTsKKyAgICAgICAgbV9wYWdlLmVudGVyQWNjZWxlcmF0ZWRDb21wb3NpdGluZ01vZGUo
bGF5ZXIpOwogICAgIGVsc2UKLSAgICAgICAgbV9wYWdlLT5leGl0QWNjZWxlcmF0ZWRDb21wb3Np
dGluZ01vZGUoKTsKKyAgICAgICAgbV9wYWdlLmV4aXRBY2NlbGVyYXRlZENvbXBvc2l0aW5nTW9k
ZSgpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6YXR0YWNoVmlld092ZXJsYXlHcmFwaGlj
c0xheWVyKEZyYW1lKiBmcmFtZSwgR3JhcGhpY3NMYXllciogZ3JhcGhpY3NMYXllcikKIHsKLSAg
ICBpZiAoYXV0byBkcmF3aW5nQXJlYSA9IG1fcGFnZS0+ZHJhd2luZ0FyZWEoKSkKKyAgICBpZiAo
YXV0byBkcmF3aW5nQXJlYSA9IG1fcGFnZS5kcmF3aW5nQXJlYSgpKQogICAgICAgICBkcmF3aW5n
QXJlYS0+YXR0YWNoVmlld092ZXJsYXlHcmFwaGljc0xheWVyKGZyYW1lLCBncmFwaGljc0xheWVy
KTsKIH0KIApAQCAtODYyLDEyOCArODc2LDEzNiBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0
TmVlZHNPbmVTaG90RHJhd2luZ1N5bmNocm9uaXphdGlvbigpCiAKIHZvaWQgV2ViQ2hyb21lQ2xp
ZW50OjpzY2hlZHVsZUNvbXBvc2l0aW5nTGF5ZXJGbHVzaCgpCiB7Ci0gICAgaWYgKG1fcGFnZS0+
ZHJhd2luZ0FyZWEoKSkKLSAgICAgICAgbV9wYWdlLT5kcmF3aW5nQXJlYSgpLT5zY2hlZHVsZUNv
bXBvc2l0aW5nTGF5ZXJGbHVzaCgpOworICAgIGlmIChtX3BhZ2UuZHJhd2luZ0FyZWEoKSkKKyAg
ICAgICAgbV9wYWdlLmRyYXdpbmdBcmVhKCktPnNjaGVkdWxlQ29tcG9zaXRpbmdMYXllckZsdXNo
KCk7CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjphZGp1c3RMYXllckZsdXNoVGhyb3R0bGlu
ZyhXZWJDb3JlOjpMYXllckZsdXNoVGhyb3R0bGVTdGF0ZTo6RmxhZ3MgZmxhZ3MpCiB7Ci0gICAg
cmV0dXJuIG1fcGFnZS0+ZHJhd2luZ0FyZWEoKSAmJiBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPmFk
anVzdExheWVyRmx1c2hUaHJvdHRsaW5nKGZsYWdzKTsKKyAgICByZXR1cm4gbV9wYWdlLmRyYXdp
bmdBcmVhKCkgJiYgbV9wYWdlLmRyYXdpbmdBcmVhKCktPmFkanVzdExheWVyRmx1c2hUaHJvdHRs
aW5nKGZsYWdzKTsKIH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OmxheWVyVHJlZVN0YXRlSXNG
cm96ZW4oKSBjb25zdAogewotICAgIGlmIChtX3BhZ2UtPmRyYXdpbmdBcmVhKCkpCi0gICAgICAg
IHJldHVybiBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPmxheWVyVHJlZVN0YXRlSXNGcm96ZW4oKTsK
KyAgICBpZiAobV9wYWdlLmRyYXdpbmdBcmVhKCkpCisgICAgICAgIHJldHVybiBtX3BhZ2UuZHJh
d2luZ0FyZWEoKS0+bGF5ZXJUcmVlU3RhdGVJc0Zyb3plbigpOwogCiAgICAgcmV0dXJuIGZhbHNl
OwogfQogCiAjaWYgRU5BQkxFKEFTWU5DX1NDUk9MTElORykKKwogUGFzc1JlZlB0cjxTY3JvbGxp
bmdDb29yZGluYXRvcj4gV2ViQ2hyb21lQ2xpZW50OjpjcmVhdGVTY3JvbGxpbmdDb29yZGluYXRv
cihQYWdlKiBwYWdlKSBjb25zdAogewotICAgIEFTU0VSVChtX3BhZ2UtPmNvcmVQYWdlKCkgPT0g
cGFnZSk7Ci0gICAgaWYgKG1fcGFnZS0+ZHJhd2luZ0FyZWEoKS0+dHlwZSgpID09IERyYXdpbmdB
cmVhVHlwZVJlbW90ZUxheWVyVHJlZSkKLSAgICAgICAgcmV0dXJuIFJlbW90ZVNjcm9sbGluZ0Nv
b3JkaW5hdG9yOjpjcmVhdGUobV9wYWdlKTsKLQotICAgIHJldHVybiAwOworICAgIEFTU0VSVCht
X3BhZ2UuY29yZVBhZ2UoKSA9PSBwYWdlKTsKKyAgICBpZiAobV9wYWdlLmRyYXdpbmdBcmVhKCkt
PnR5cGUoKSAhPSBEcmF3aW5nQXJlYVR5cGVSZW1vdGVMYXllclRyZWUpCisgICAgICAgIHJldHVy
biBudWxscHRyOworICAgIHJldHVybiBSZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvcjo6Y3JlYXRl
KCZtX3BhZ2UpOwogfQorCiAjZW5kaWYKIAogI2lmIChQTEFURk9STShJT1MpICYmIEhBVkUoQVZL
SVQpKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUp
KQorCiBib29sIFdlYkNocm9tZUNsaWVudDo6c3VwcG9ydHNWaWRlb0Z1bGxzY3JlZW4oV2ViQ29y
ZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIG1vZGUpCiB7Ci0g
ICAgcmV0dXJuIG1fcGFnZS0+dmlkZW9GdWxsc2NyZWVuTWFuYWdlcigpLnN1cHBvcnRzVmlkZW9G
dWxsc2NyZWVuKG1vZGUpOworICAgIHJldHVybiBtX3BhZ2UudmlkZW9GdWxsc2NyZWVuTWFuYWdl
cigpLnN1cHBvcnRzVmlkZW9GdWxsc2NyZWVuKG1vZGUpOwogfQogCiB2b2lkIFdlYkNocm9tZUNs
aWVudDo6c2V0VXBQbGF5YmFja0NvbnRyb2xzTWFuYWdlcihXZWJDb3JlOjpIVE1MTWVkaWFFbGVt
ZW50JiBtZWRpYUVsZW1lbnQpCiB7Ci0gICAgbV9wYWdlLT5wbGF5YmFja1Nlc3Npb25NYW5hZ2Vy
KCkuc2V0VXBQbGF5YmFja0NvbnRyb2xzTWFuYWdlcihtZWRpYUVsZW1lbnQpOworICAgIG1fcGFn
ZS5wbGF5YmFja1Nlc3Npb25NYW5hZ2VyKCkuc2V0VXBQbGF5YmFja0NvbnRyb2xzTWFuYWdlciht
ZWRpYUVsZW1lbnQpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y2xlYXJQbGF5YmFja0Nv
bnRyb2xzTWFuYWdlcigpCiB7Ci0gICAgbV9wYWdlLT5wbGF5YmFja1Nlc3Npb25NYW5hZ2VyKCku
Y2xlYXJQbGF5YmFja0NvbnRyb2xzTWFuYWdlcigpOworICAgIG1fcGFnZS5wbGF5YmFja1Nlc3Np
b25NYW5hZ2VyKCkuY2xlYXJQbGF5YmFja0NvbnRyb2xzTWFuYWdlcigpOwogfQogCiB2b2lkIFdl
YkNocm9tZUNsaWVudDo6ZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoV2ViQ29y
ZTo6SFRNTFZpZGVvRWxlbWVudCYgdmlkZW9FbGVtZW50LCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVt
ZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUgbW9kZSkKIHsKICAgICBBU1NFUlQobW9kZSAh
PSBIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGVOb25lKTsKLSAgICBt
X3BhZ2UtPnZpZGVvRnVsbHNjcmVlbk1hbmFnZXIoKS5lbnRlclZpZGVvRnVsbHNjcmVlbkZvclZp
ZGVvRWxlbWVudCh2aWRlb0VsZW1lbnQsIG1vZGUpOworICAgIG1fcGFnZS52aWRlb0Z1bGxzY3Jl
ZW5NYW5hZ2VyKCkuZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQodmlkZW9FbGVt
ZW50LCBtb2RlKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmV4aXRWaWRlb0Z1bGxzY3Jl
ZW5Gb3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCYgdmlkZW9FbGVtZW50
KQogewotICAgIG1fcGFnZS0+dmlkZW9GdWxsc2NyZWVuTWFuYWdlcigpLmV4aXRWaWRlb0Z1bGxz
Y3JlZW5Gb3JWaWRlb0VsZW1lbnQodmlkZW9FbGVtZW50KTsKKyAgICBtX3BhZ2UudmlkZW9GdWxs
c2NyZWVuTWFuYWdlcigpLmV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQodmlkZW9F
bGVtZW50KTsKIH0KIAorI2VuZGlmCisKICNpZiBQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURF
T19QUkVTRU5UQVRJT05fTU9ERSkKKwogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmV4aXRWaWRlb0Z1
bGxzY3JlZW5Ub01vZGVXaXRob3V0QW5pbWF0aW9uKFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQm
IHZpZGVvRWxlbWVudCwgSFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2Rl
IHRhcmdldE1vZGUpCiB7Ci0gICAgbV9wYWdlLT52aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyKCkuZXhp
dFZpZGVvRnVsbHNjcmVlblRvTW9kZVdpdGhvdXRBbmltYXRpb24odmlkZW9FbGVtZW50LCB0YXJn
ZXRNb2RlKTsKKyAgICBtX3BhZ2UudmlkZW9GdWxsc2NyZWVuTWFuYWdlcigpLmV4aXRWaWRlb0Z1
bGxzY3JlZW5Ub01vZGVXaXRob3V0QW5pbWF0aW9uKHZpZGVvRWxlbWVudCwgdGFyZ2V0TW9kZSk7
CiB9Ci0jZW5kaWYKIAogI2VuZGlmCi0gICAgCisKICNpZiBFTkFCTEUoRlVMTFNDUkVFTl9BUEkp
CisKIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpzdXBwb3J0c0Z1bGxTY3JlZW5Gb3JFbGVtZW50KGNv
bnN0IFdlYkNvcmU6OkVsZW1lbnQqLCBib29sIHdpdGhLZXlib2FyZCkKIHsKLSAgICByZXR1cm4g
bV9wYWdlLT5mdWxsU2NyZWVuTWFuYWdlcigpLT5zdXBwb3J0c0Z1bGxTY3JlZW4od2l0aEtleWJv
YXJkKTsKKyAgICByZXR1cm4gbV9wYWdlLmZ1bGxTY3JlZW5NYW5hZ2VyKCktPnN1cHBvcnRzRnVs
bFNjcmVlbih3aXRoS2V5Ym9hcmQpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZW50ZXJG
dWxsU2NyZWVuRm9yRWxlbWVudChXZWJDb3JlOjpFbGVtZW50KiBlbGVtZW50KQogewotICAgIG1f
cGFnZS0+ZnVsbFNjcmVlbk1hbmFnZXIoKS0+ZW50ZXJGdWxsU2NyZWVuRm9yRWxlbWVudChlbGVt
ZW50KTsKKyAgICBtX3BhZ2UuZnVsbFNjcmVlbk1hbmFnZXIoKS0+ZW50ZXJGdWxsU2NyZWVuRm9y
RWxlbWVudChlbGVtZW50KTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmV4aXRGdWxsU2Ny
ZWVuRm9yRWxlbWVudChXZWJDb3JlOjpFbGVtZW50KiBlbGVtZW50KQogewotICAgIG1fcGFnZS0+
ZnVsbFNjcmVlbk1hbmFnZXIoKS0+ZXhpdEZ1bGxTY3JlZW5Gb3JFbGVtZW50KGVsZW1lbnQpOwor
ICAgIG1fcGFnZS5mdWxsU2NyZWVuTWFuYWdlcigpLT5leGl0RnVsbFNjcmVlbkZvckVsZW1lbnQo
ZWxlbWVudCk7CiB9CisKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oSU9TKQorCiBGbG9hdFNpemUg
V2ViQ2hyb21lQ2xpZW50OjpzY3JlZW5TaXplKCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9wYWdl
LT5zY3JlZW5TaXplKCk7CisgICAgcmV0dXJuIG1fcGFnZS5zY3JlZW5TaXplKCk7CiB9CiAKIEZs
b2F0U2l6ZSBXZWJDaHJvbWVDbGllbnQ6OmF2YWlsYWJsZVNjcmVlblNpemUoKSBjb25zdAogewot
ICAgIHJldHVybiBtX3BhZ2UtPmF2YWlsYWJsZVNjcmVlblNpemUoKTsKKyAgICByZXR1cm4gbV9w
YWdlLmF2YWlsYWJsZVNjcmVlblNpemUoKTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViQ2hyb21l
Q2xpZW50OjpkaXNwYXRjaFZpZXdwb3J0UHJvcGVydGllc0RpZENoYW5nZShjb25zdCBWaWV3cG9y
dEFyZ3VtZW50cyYgdmlld3BvcnRBcmd1bWVudHMpIGNvbnN0CiB7Ci0gICAgbV9wYWdlLT52aWV3
cG9ydFByb3BlcnRpZXNEaWRDaGFuZ2Uodmlld3BvcnRBcmd1bWVudHMpOworICAgIG1fcGFnZS52
aWV3cG9ydFByb3BlcnRpZXNEaWRDaGFuZ2Uodmlld3BvcnRBcmd1bWVudHMpOwogfQogCiB2b2lk
IFdlYkNocm9tZUNsaWVudDo6bm90aWZ5U2Nyb2xsZXJUaHVtYklzVmlzaWJsZUluUmVjdChjb25z
dCBJbnRSZWN0JiBzY3JvbGxlclRodW1iKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6
V2ViUGFnZVByb3h5OjpOb3RpZnlTY3JvbGxlclRodW1iSXNWaXNpYmxlSW5SZWN0KHNjcm9sbGVy
VGh1bWIpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpOb3RpZnlT
Y3JvbGxlclRodW1iSXNWaXNpYmxlSW5SZWN0KHNjcm9sbGVyVGh1bWIpKTsKIH0KIAogdm9pZCBX
ZWJDaHJvbWVDbGllbnQ6OnJlY29tbWVuZGVkU2Nyb2xsYmFyU3R5bGVEaWRDaGFuZ2UoU2Nyb2xs
YmFyU3R5bGUgbmV3U3R5bGUpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OlJlY29tbWVuZGVkU2Nyb2xsYmFyU3R5bGVEaWRDaGFuZ2Uoc3RhdGljX2Nhc3Q8aW50
MzJfdD4obmV3U3R5bGUpKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94
eTo6UmVjb21tZW5kZWRTY3JvbGxiYXJTdHlsZURpZENoYW5nZShzdGF0aWNfY2FzdDxpbnQzMl90
PihuZXdTdHlsZSkpKTsKIH0KIAogc3RkOjpvcHRpb25hbDxTY3JvbGxiYXJPdmVybGF5U3R5bGU+
IFdlYkNocm9tZUNsaWVudDo6cHJlZmVycmVkU2Nyb2xsYmFyT3ZlcmxheVN0eWxlKCkKIHsKLSAg
ICByZXR1cm4gbV9wYWdlLT5zY3JvbGxiYXJPdmVybGF5U3R5bGUoKTsgCisgICAgcmV0dXJuIG1f
cGFnZS5zY3JvbGxiYXJPdmVybGF5U3R5bGUoKTsKIH0KIAogQ29sb3IgV2ViQ2hyb21lQ2xpZW50
Ojp1bmRlcmxheUNvbG9yKCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT51bmRlcmxheUNv
bG9yKCk7CisgICAgcmV0dXJuIG1fcGFnZS51bmRlcmxheUNvbG9yKCk7CiB9CiAKIHZvaWQgV2Vi
Q2hyb21lQ2xpZW50OjpwYWdlRXh0ZW5kZWRCYWNrZ3JvdW5kQ29sb3JEaWRDaGFuZ2UoQ29sb3Ig
YmFja2dyb3VuZENvbG9yKSBjb25zdAogewogI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0o
RUZMKQotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQYWdlRXh0ZW5k
ZWRCYWNrZ3JvdW5kQ29sb3JEaWRDaGFuZ2UoYmFja2dyb3VuZENvbG9yKSk7CisgICAgbV9wYWdl
LnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UGFnZUV4dGVuZGVkQmFja2dyb3VuZENvbG9y
RGlkQ2hhbmdlKGJhY2tncm91bmRDb2xvcikpOwogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0oYmFj
a2dyb3VuZENvbG9yKTsKICNlbmRpZgpAQCAtOTkxLDQzICsxMDEzLDQzIEBAIHZvaWQgV2ViQ2hy
b21lQ2xpZW50OjpwYWdlRXh0ZW5kZWRCYWNrZ3JvdW5kQ29sb3JEaWRDaGFuZ2UoQ29sb3IgYmFj
a2dyb3VuZENvbG9yCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojp3aGVlbEV2ZW50SGFuZGxlcnND
aGFuZ2VkKGJvb2wgaGFzSGFuZGxlcnMpCiB7Ci0gICAgbV9wYWdlLT53aGVlbEV2ZW50SGFuZGxl
cnNDaGFuZ2VkKGhhc0hhbmRsZXJzKTsKKyAgICBtX3BhZ2Uud2hlZWxFdmVudEhhbmRsZXJzQ2hh
bmdlZChoYXNIYW5kbGVycyk7CiB9CiAKIFN0cmluZyBXZWJDaHJvbWVDbGllbnQ6OnBsdWdJblN0
YXJ0TGFiZWxUaXRsZShjb25zdCBTdHJpbmcmIG1pbWVUeXBlKSBjb25zdAogewotICAgIHJldHVy
biBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5wbHVnSW5TdGFydExhYmVsVGl0bGUo
bWltZVR5cGUpOworICAgIHJldHVybiBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLnBs
dWdJblN0YXJ0TGFiZWxUaXRsZShtaW1lVHlwZSk7CiB9CiAKIFN0cmluZyBXZWJDaHJvbWVDbGll
bnQ6OnBsdWdJblN0YXJ0TGFiZWxTdWJ0aXRsZShjb25zdCBTdHJpbmcmIG1pbWVUeXBlKSBjb25z
dAogewotICAgIHJldHVybiBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5wbHVnSW5T
dGFydExhYmVsU3VidGl0bGUobWltZVR5cGUpOworICAgIHJldHVybiBtX3BhZ2UuaW5qZWN0ZWRC
dW5kbGVVSUNsaWVudCgpLnBsdWdJblN0YXJ0TGFiZWxTdWJ0aXRsZShtaW1lVHlwZSk7CiB9CiAK
IFN0cmluZyBXZWJDaHJvbWVDbGllbnQ6OnBsdWdJbkV4dHJhU3R5bGVTaGVldCgpIGNvbnN0CiB7
Ci0gICAgcmV0dXJuIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLnBsdWdJbkV4dHJh
U3R5bGVTaGVldCgpOworICAgIHJldHVybiBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgp
LnBsdWdJbkV4dHJhU3R5bGVTaGVldCgpOwogfQogCiBTdHJpbmcgV2ViQ2hyb21lQ2xpZW50Ojpw
bHVnSW5FeHRyYVNjcmlwdCgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+aW5qZWN0ZWRC
dW5kbGVVSUNsaWVudCgpLnBsdWdJbkV4dHJhU2NyaXB0KCk7CisgICAgcmV0dXJuIG1fcGFnZS5p
bmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkucGx1Z0luRXh0cmFTY3JpcHQoKTsKIH0KIAogdm9pZCBX
ZWJDaHJvbWVDbGllbnQ6OmVuYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkKIHsKLSAgICBtX3BhZ2Ut
PnNlbmQoTWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6RW5hYmxlU3VkZGVuVGVybWluYXRpb24o
KSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6RW5hYmxlU3Vk
ZGVuVGVybWluYXRpb24oKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpkaXNhYmxlU3Vk
ZGVuVGVybWluYXRpb24oKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUHJvY2Vz
c1Byb3h5OjpEaXNhYmxlU3VkZGVuVGVybWluYXRpb24oKSk7CisgICAgbV9wYWdlLnNlbmQoTWVz
c2FnZXM6OldlYlByb2Nlc3NQcm94eTo6RGlzYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkpOwogfQog
CiB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZGlkQWRkSGVhZGVyTGF5ZXIoR3JhcGhpY3NMYXllciog
aGVhZGVyUGFyZW50KQogewogI2lmIEVOQUJMRShSVUJCRVJfQkFORElORykKLSAgICBpZiAoUGFn
ZUJhbm5lciogYmFubmVyID0gbV9wYWdlLT5oZWFkZXJQYWdlQmFubmVyKCkpCisgICAgaWYgKFBh
Z2VCYW5uZXIqIGJhbm5lciA9IG1fcGFnZS5oZWFkZXJQYWdlQmFubmVyKCkpCiAgICAgICAgIGJh
bm5lci0+ZGlkQWRkUGFyZW50TGF5ZXIoaGVhZGVyUGFyZW50KTsKICNlbHNlCiAgICAgVU5VU0VE
X1BBUkFNKGhlYWRlclBhcmVudCk7CkBAIC0xMDM3LDcgKzEwNTksNyBAQCB2b2lkIFdlYkNocm9t
ZUNsaWVudDo6ZGlkQWRkSGVhZGVyTGF5ZXIoR3JhcGhpY3NMYXllciogaGVhZGVyUGFyZW50KQog
dm9pZCBXZWJDaHJvbWVDbGllbnQ6OmRpZEFkZEZvb3RlckxheWVyKEdyYXBoaWNzTGF5ZXIqIGZv
b3RlclBhcmVudCkKIHsKICNpZiBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpCi0gICAgaWYgKFBhZ2VC
YW5uZXIqIGJhbm5lciA9IG1fcGFnZS0+Zm9vdGVyUGFnZUJhbm5lcigpKQorICAgIGlmIChQYWdl
QmFubmVyKiBiYW5uZXIgPSBtX3BhZ2UuZm9vdGVyUGFnZUJhbm5lcigpKQogICAgICAgICBiYW5u
ZXItPmRpZEFkZFBhcmVudExheWVyKGZvb3RlclBhcmVudCk7CiAjZWxzZQogICAgIFVOVVNFRF9Q
QVJBTShmb290ZXJQYXJlbnQpOwpAQCAtMTA0NiwzNiArMTA2OCwzOSBAQCB2b2lkIFdlYkNocm9t
ZUNsaWVudDo6ZGlkQWRkRm9vdGVyTGF5ZXIoR3JhcGhpY3NMYXllciogZm9vdGVyUGFyZW50KQog
CiBib29sIFdlYkNocm9tZUNsaWVudDo6c2hvdWxkVXNlVGlsZWRCYWNraW5nRm9yRnJhbWVWaWV3
KGNvbnN0IEZyYW1lVmlldyogZnJhbWVWaWV3KSBjb25zdAogewotICAgIHJldHVybiBtX3BhZ2Ut
PmRyYXdpbmdBcmVhKCktPnNob3VsZFVzZVRpbGVkQmFja2luZ0ZvckZyYW1lVmlldyhmcmFtZVZp
ZXcpOworICAgIHJldHVybiBtX3BhZ2UuZHJhd2luZ0FyZWEoKS0+c2hvdWxkVXNlVGlsZWRCYWNr
aW5nRm9yRnJhbWVWaWV3KGZyYW1lVmlldyk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpp
c1BsYXlpbmdNZWRpYURpZENoYW5nZShXZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpNZWRpYVN0YXRl
RmxhZ3Mgc3RhdGUsIHVpbnQ2NF90IHNvdXJjZUVsZW1lbnRJRCkKIHsKLSAgICBtX3BhZ2UtPnNl
bmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6SXNQbGF5aW5nTWVkaWFEaWRDaGFuZ2Uoc3RhdGUs
IHNvdXJjZUVsZW1lbnRJRCkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OklzUGxheWluZ01lZGlhRGlkQ2hhbmdlKHN0YXRlLCBzb3VyY2VFbGVtZW50SUQpKTsKIH0K
IAogI2lmIEVOQUJMRShNRURJQV9TRVNTSU9OKQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6aGFz
TWVkaWFTZXNzaW9uV2l0aEFjdGl2ZU1lZGlhRWxlbWVudHNEaWRDaGFuZ2UoYm9vbCBzdGF0ZSkK
IHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6SGFzTWVkaWFTZXNz
aW9uV2l0aEFjdGl2ZU1lZGlhRWxlbWVudHNEaWRDaGFuZ2Uoc3RhdGUpKTsKKyAgICBtX3BhZ2Uu
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpIYXNNZWRpYVNlc3Npb25XaXRoQWN0aXZlTWVk
aWFFbGVtZW50c0RpZENoYW5nZShzdGF0ZSkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6
bWVkaWFTZXNzaW9uTWV0YWRhdGFEaWRDaGFuZ2UoY29uc3QgV2ViQ29yZTo6TWVkaWFTZXNzaW9u
TWV0YWRhdGEmIG1ldGFkYXRhKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFn
ZVByb3h5OjpNZWRpYVNlc3Npb25NZXRhZGF0YURpZENoYW5nZShtZXRhZGF0YSkpOworICAgIG1f
cGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6Ok1lZGlhU2Vzc2lvbk1ldGFkYXRhRGlk
Q2hhbmdlKG1ldGFkYXRhKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpmb2N1c2VkQ29u
dGVudE1lZGlhRWxlbWVudERpZENoYW5nZSh1aW50NjRfdCBlbGVtZW50SUQpCiB7Ci0gICAgbV9w
YWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZvY3VzZWRDb250ZW50TWVkaWFFbGVt
ZW50RGlkQ2hhbmdlKGVsZW1lbnRJRCkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OkZvY3VzZWRDb250ZW50TWVkaWFFbGVtZW50RGlkQ2hhbmdlKGVsZW1lbnRJRCkp
OwogfQorCiAjZW5kaWYKIAogI2lmIEVOQUJMRShTVUJUTEVfQ1JZUFRPKQorCiBib29sIFdlYkNo
cm9tZUNsaWVudDo6d3JhcENyeXB0b0tleShjb25zdCBWZWN0b3I8dWludDhfdD4mIGtleSwgVmVj
dG9yPHVpbnQ4X3Q+JiB3cmFwcGVkS2V5KSBjb25zdAogewogICAgIGJvb2wgc3VjY2VlZGVkOwot
ICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24o
KS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6V3JhcENyeXB0b0tleShrZXkpLCBN
ZXNzYWdlczo6V2ViUGFnZVByb3h5OjpXcmFwQ3J5cHRvS2V5OjpSZXBseShzdWNjZWVkZWQsIHdy
YXBwZWRLZXkpLCBtX3BhZ2UtPnBhZ2VJRCgpKSkKKyAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmds
ZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OldyYXBDcnlwdG9LZXkoa2V5KSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6V3Jh
cENyeXB0b0tleTo6UmVwbHkoc3VjY2VlZGVkLCB3cmFwcGVkS2V5KSwgbV9wYWdlLnBhZ2VJRCgp
KSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIHJldHVybiBzdWNjZWVkZWQ7CiB9CkBAIC0x
MDgzLDM0ICsxMTA4LDM5IEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50Ojp3cmFwQ3J5cHRvS2V5KGNv
bnN0IFZlY3Rvcjx1aW50OF90PiYga2V5LCBWZWN0b3I8dWludDhfdD4mCiBib29sIFdlYkNocm9t
ZUNsaWVudDo6dW53cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90PiYgd3JhcHBlZEtl
eSwgVmVjdG9yPHVpbnQ4X3Q+JiBrZXkpIGNvbnN0CiB7CiAgICAgYm9vbCBzdWNjZWVkZWQ7Ci0g
ICAgaWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigp
LT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpVbndyYXBDcnlwdG9LZXkod3JhcHBl
ZEtleSksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlVud3JhcENyeXB0b0tleTo6UmVwbHkoc3Vj
Y2VlZGVkLCBrZXkpLCBtX3BhZ2UtPnBhZ2VJRCgpKSkKKyAgICBpZiAoIVdlYlByb2Nlc3M6OnNp
bmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OlVud3JhcENyeXB0b0tleSh3cmFwcGVkS2V5KSwgTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6VW53cmFwQ3J5cHRvS2V5OjpSZXBseShzdWNjZWVkZWQsIGtleSksIG1fcGFnZS5w
YWdlSUQoKSkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICByZXR1cm4gc3VjY2VlZGVkOwog
fQorCiAjZW5kaWYKIAogI2lmIEVOQUJMRShURUxFUEhPTkVfTlVNQkVSX0RFVEVDVElPTikgJiYg
UExBVEZPUk0oTUFDKQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6aGFuZGxlVGVsZXBob25lTnVt
YmVyQ2xpY2soY29uc3QgU3RyaW5nJiBudW1iZXIsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBw
b2ludCkKIHsKLSAgICBtX3BhZ2UtPmhhbmRsZVRlbGVwaG9uZU51bWJlckNsaWNrKG51bWJlciwg
cG9pbnQpOworICAgIG1fcGFnZS5oYW5kbGVUZWxlcGhvbmVOdW1iZXJDbGljayhudW1iZXIsIHBv
aW50KTsKIH0KKwogI2VuZGlmCiAKICNpZiBFTkFCTEUoU0VSVklDRV9DT05UUk9MUykKKwogdm9p
ZCBXZWJDaHJvbWVDbGllbnQ6OmhhbmRsZVNlbGVjdGlvblNlcnZpY2VDbGljayhXZWJDb3JlOjpG
cmFtZVNlbGVjdGlvbiYgc2VsZWN0aW9uLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgdGVsZXBob25l
TnVtYmVycywgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIHBvaW50KQogewotICAgIG1fcGFnZS0+
aGFuZGxlU2VsZWN0aW9uU2VydmljZUNsaWNrKHNlbGVjdGlvbiwgdGVsZXBob25lTnVtYmVycywg
cG9pbnQpOworICAgIG1fcGFnZS5oYW5kbGVTZWxlY3Rpb25TZXJ2aWNlQ2xpY2soc2VsZWN0aW9u
LCB0ZWxlcGhvbmVOdW1iZXJzLCBwb2ludCk7CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50Ojpo
YXNSZWxldmFudFNlbGVjdGlvblNlcnZpY2VzKGJvb2wgaXNUZXh0T25seSkgY29uc3QKIHsKICAg
ICByZXR1cm4gKGlzVGV4dE9ubHkgJiYgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuaGFzU2VsZWN0
aW9uU2VydmljZXMoKSkgfHwgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuaGFzUmljaENvbnRlbnRT
ZXJ2aWNlcygpOwogfQorCiAjZW5kaWYKIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnNob3VsZERp
c3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50cygpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+
c2hvdWxkRGlzcGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKCk7CisgICAgcmV0dXJuIG1fcGFnZS5z
aG91bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHMoKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVD
bGllbnQ6OmhhbmRsZUF1dG9GaWxsQnV0dG9uQ2xpY2soSFRNTElucHV0RWxlbWVudCYgaW5wdXRF
bGVtZW50KQpAQCAtMTExOSw2NCArMTE0OSw2NSBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6aGFu
ZGxlQXV0b0ZpbGxCdXR0b25DbGljayhIVE1MSW5wdXRFbGVtZW50JiBpbnB1dEVsZW1lbnQpCiAK
ICAgICAvLyBOb3RpZnkgdGhlIGJ1bmRsZSBjbGllbnQuCiAgICAgYXV0byBub2RlSGFuZGxlID0g
SW5qZWN0ZWRCdW5kbGVOb2RlSGFuZGxlOjpnZXRPckNyZWF0ZShpbnB1dEVsZW1lbnQpOwotICAg
IG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLmRpZENsaWNrQXV0b0ZpbGxCdXR0b24o
Km1fcGFnZSwgbm9kZUhhbmRsZS5nZXQoKSwgdXNlckRhdGEpOworICAgIG1fcGFnZS5pbmplY3Rl
ZEJ1bmRsZVVJQ2xpZW50KCkuZGlkQ2xpY2tBdXRvRmlsbEJ1dHRvbihtX3BhZ2UsIG5vZGVIYW5k
bGUuZ2V0KCksIHVzZXJEYXRhKTsKIAogICAgIC8vIE5vdGlmeSB0aGUgVUlQcm9jZXNzLgotICAg
IG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpIYW5kbGVBdXRvRmlsbEJ1dHRv
bkNsaWNrKFVzZXJEYXRhKFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnRyYW5zZm9ybU9iamVjdHNU
b0hhbmRsZXModXNlckRhdGEuZ2V0KCkpLmdldCgpKSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OkhhbmRsZUF1dG9GaWxsQnV0dG9uQ2xpY2soVXNlckRhdGEoV2Vi
UHJvY2Vzczo6c2luZ2xldG9uKCkudHJhbnNmb3JtT2JqZWN0c1RvSGFuZGxlcyh1c2VyRGF0YS5n
ZXQoKSkuZ2V0KCkpKSk7CiB9CiAKICNpZiBFTkFCTEUoV0lSRUxFU1NfUExBWUJBQ0tfVEFSR0VU
KSAmJiAhUExBVEZPUk0oSU9TKQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6YWRkUGxheWJhY2tU
YXJnZXRQaWNrZXJDbGllbnQodWludDY0X3QgY29udGV4dElkKQogewotICAgIG1fcGFnZS0+c2Vu
ZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpBZGRQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudChj
b250ZXh0SWQpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpBZGRQ
bGF5YmFja1RhcmdldFBpY2tlckNsaWVudChjb250ZXh0SWQpKTsKIH0KIAogdm9pZCBXZWJDaHJv
bWVDbGllbnQ6OnJlbW92ZVBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2NF90IGNvbnRl
eHRJZCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UmVtb3Zl
UGxheWJhY2tUYXJnZXRQaWNrZXJDbGllbnQoY29udGV4dElkKSk7CisgICAgbV9wYWdlLnNlbmQo
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UmVtb3ZlUGxheWJhY2tUYXJnZXRQaWNrZXJDbGllbnQo
Y29udGV4dElkKSk7CiB9CiAKLQogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNob3dQbGF5YmFja1Rh
cmdldFBpY2tlcih1aW50NjRfdCBjb250ZXh0SWQsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBw
b3NpdGlvbiwgYm9vbCBpc1ZpZGVvKQogewotICAgIEZyYW1lVmlldyogZnJhbWVWaWV3ID0gbV9w
YWdlLT5tYWluRnJhbWUoKS0+dmlldygpOworICAgIEZyYW1lVmlldyogZnJhbWVWaWV3ID0gbV9w
YWdlLm1haW5GcmFtZSgpLT52aWV3KCk7CiAgICAgRmxvYXRSZWN0IHJlY3QoZnJhbWVWaWV3LT5j
b250ZW50c1RvUm9vdFZpZXcoZnJhbWVWaWV3LT53aW5kb3dUb0NvbnRlbnRzKHBvc2l0aW9uKSks
IEZsb2F0U2l6ZSgpKTsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6
U2hvd1BsYXliYWNrVGFyZ2V0UGlja2VyKGNvbnRleHRJZCwgcmVjdCwgaXNWaWRlbykpOworICAg
IG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNob3dQbGF5YmFja1RhcmdldFBp
Y2tlcihjb250ZXh0SWQsIHJlY3QsIGlzVmlkZW8pKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGll
bnQ6OnBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50U3RhdGVEaWRDaGFuZ2UodWludDY0X3QgY29u
dGV4dElkLCBXZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpNZWRpYVN0YXRlRmxhZ3Mgc3RhdGUpCiB7
Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlBsYXliYWNrVGFyZ2V0
UGlja2VyQ2xpZW50U3RhdGVEaWRDaGFuZ2UoY29udGV4dElkLCBzdGF0ZSkpOworICAgIG1fcGFn
ZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50
U3RhdGVEaWRDaGFuZ2UoY29udGV4dElkLCBzdGF0ZSkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNs
aWVudDo6c2V0TW9ja01lZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJFbmFibGVkKGJvb2wgZW5hYmxl
ZCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0TW9ja01l
ZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJFbmFibGVkKGVuYWJsZWQpKTsKKyAgICBtX3BhZ2Uuc2Vu
ZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tl
ckVuYWJsZWQoZW5hYmxlZCkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0TW9ja01l
ZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJTdGF0ZShjb25zdCBTdHJpbmcmIG5hbWUsIFdlYkNvcmU6
Ok1lZGlhUGxheWJhY2tUYXJnZXRDb250ZXh0OjpTdGF0ZSBzdGF0ZSkKIHsKLSAgICBtX3BhZ2Ut
PnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0TW9ja01lZGlhUGxheWJhY2tUYXJnZXRQ
aWNrZXJTdGF0ZShuYW1lLCBzdGF0ZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OlNldE1vY2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyU3RhdGUobmFtZSwgc3Rh
dGUpKTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjppbWFnZU9yTWVkaWFE
b2N1bWVudFNpemVDaGFuZ2VkKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIG5ld1NpemUpCiB7Ci0g
ICAgbV9wYWdlLT5pbWFnZU9yTWVkaWFEb2N1bWVudFNpemVDaGFuZ2VkKG5ld1NpemUpOworICAg
IG1fcGFnZS5pbWFnZU9yTWVkaWFEb2N1bWVudFNpemVDaGFuZ2VkKG5ld1NpemUpOwogfQogCi0j
aWYgRU5BQkxFKFZJREVPKQotI2lmIFVTRShHU1RSRUFNRVIpCisjaWYgRU5BQkxFKFZJREVPKSAm
JiBVU0UoR1NUUkVBTUVSKQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6cmVxdWVzdEluc3RhbGxN
aXNzaW5nTWVkaWFQbHVnaW5zKGNvbnN0IFN0cmluZyYgZGV0YWlscywgY29uc3QgU3RyaW5nJiBk
ZXNjcmlwdGlvbiwgV2ViQ29yZTo6TWVkaWFQbGF5ZXJSZXF1ZXN0SW5zdGFsbE1pc3NpbmdQbHVn
aW5zQ2FsbGJhY2smIGNhbGxiYWNrKQogewotICAgIG1fcGFnZS0+cmVxdWVzdEluc3RhbGxNaXNz
aW5nTWVkaWFQbHVnaW5zKGRldGFpbHMsIGRlc2NyaXB0aW9uLCBjYWxsYmFjayk7CisgICAgbV9w
YWdlLnJlcXVlc3RJbnN0YWxsTWlzc2luZ01lZGlhUGx1Z2lucyhkZXRhaWxzLCBkZXNjcmlwdGlv
biwgY2FsbGJhY2spOwogfQorCiAjZW5kaWYKLSNlbmRpZiAvLyBFTkFCTEUoVklERU8pCiAKIHZv
aWQgV2ViQ2hyb21lQ2xpZW50OjpkaWRJbnZhbGlkYXRlRG9jdW1lbnRNYXJrZXJSZWN0cygpCiB7
Ci0gICAgbV9wYWdlLT5maW5kQ29udHJvbGxlcigpLmRpZEludmFsaWRhdGVEb2N1bWVudE1hcmtl
clJlY3RzKCk7CisgICAgbV9wYWdlLmZpbmRDb250cm9sbGVyKCkuZGlkSW52YWxpZGF0ZURvY3Vt
ZW50TWFya2VyUmVjdHMoKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVu
dC5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVD
bGllbnQuaAppbmRleCBhZjkwYjM4ZGQ5NWYzMmFmNDhhNDU4N2JhMjdmMmZiYzVkN2Q2YjFkLi5k
NGE5OTFiMjc0ODYwZmZjMzJkZjM0ZTBmMWJjNDczN2FhYjkwZTAwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xp
ZW50LmgKQEAgLTI2LDE5OCArMjYsMTk2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaW5jbHVkZSAi
V2ViRnJhbWUuaCIKICNpbmNsdWRlIDxXZWJDb3JlL0Nocm9tZUNsaWVudC5oPgotI2luY2x1ZGUg
PFdlYkNvcmUvVmlld3BvcnRBcmd1bWVudHMuaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJp
bmcuaD4KIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKK2NsYXNzIFdlYkZyYW1lOwogY2xhc3MgV2Vi
UGFnZTsKIAotY2xhc3MgV2ViQ2hyb21lQ2xpZW50IDogcHVibGljIFdlYkNvcmU6OkNocm9tZUNs
aWVudCB7CitjbGFzcyBXZWJDaHJvbWVDbGllbnQgZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6Q2hy
b21lQ2xpZW50IHsKIHB1YmxpYzoKLSAgICBXZWJDaHJvbWVDbGllbnQoV2ViUGFnZSogcGFnZSkK
LSAgICAgICAgOiBtX2NhY2hlZE1haW5GcmFtZUhhc0hvcml6b250YWxTY3JvbGxiYXIoZmFsc2Up
Ci0gICAgICAgICwgbV9jYWNoZWRNYWluRnJhbWVIYXNWZXJ0aWNhbFNjcm9sbGJhcihmYWxzZSkK
LSAgICAgICAgLCBtX3BhZ2UocGFnZSkKLSAgICB7Ci0gICAgfQotICAgIAotICAgIFdlYlBhZ2Uq
IHBhZ2UoKSBjb25zdCB7IHJldHVybiBtX3BhZ2U7IH0KKyAgICBXZWJDaHJvbWVDbGllbnQoV2Vi
UGFnZSYpOwogCi0gICAgdmlydHVhbCB2b2lkKiB3ZWJWaWV3KCkgY29uc3QgeyByZXR1cm4gMDsg
fQorICAgIFdlYlBhZ2UmIHBhZ2UoKSBjb25zdCB7IHJldHVybiBtX3BhZ2U7IH0KIAogcHJpdmF0
ZToKLSAgICB2b2lkIGNocm9tZURlc3Ryb3llZCgpIG92ZXJyaWRlOworICAgIH5XZWJDaHJvbWVD
bGllbnQoKTsKKworICAgIHZvaWQgY2hyb21lRGVzdHJveWVkKCkgZmluYWw7CiAgICAgCi0gICAg
dm9pZCBzZXRXaW5kb3dSZWN0KGNvbnN0IFdlYkNvcmU6OkZsb2F0UmVjdCYpIG92ZXJyaWRlOwot
ICAgIFdlYkNvcmU6OkZsb2F0UmVjdCB3aW5kb3dSZWN0KCkgb3ZlcnJpZGU7CisgICAgdm9pZCBz
ZXRXaW5kb3dSZWN0KGNvbnN0IFdlYkNvcmU6OkZsb2F0UmVjdCYpIGZpbmFsOworICAgIFdlYkNv
cmU6OkZsb2F0UmVjdCB3aW5kb3dSZWN0KCkgZmluYWw7CiAgICAgCi0gICAgV2ViQ29yZTo6Rmxv
YXRSZWN0IHBhZ2VSZWN0KCkgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6RmxvYXRSZWN0IHBhZ2VS
ZWN0KCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBmb2N1cygpIG92ZXJyaWRlOwotICAgIHZvaWQg
dW5mb2N1cygpIG92ZXJyaWRlOworICAgIHZvaWQgZm9jdXMoKSBmaW5hbDsKKyAgICB2b2lkIHVu
Zm9jdXMoKSBmaW5hbDsKICAgICAKLSAgICBib29sIGNhblRha2VGb2N1cyhXZWJDb3JlOjpGb2N1
c0RpcmVjdGlvbikgb3ZlcnJpZGU7Ci0gICAgdm9pZCB0YWtlRm9jdXMoV2ViQ29yZTo6Rm9jdXNE
aXJlY3Rpb24pIG92ZXJyaWRlOworICAgIGJvb2wgY2FuVGFrZUZvY3VzKFdlYkNvcmU6OkZvY3Vz
RGlyZWN0aW9uKSBmaW5hbDsKKyAgICB2b2lkIHRha2VGb2N1cyhXZWJDb3JlOjpGb2N1c0RpcmVj
dGlvbikgZmluYWw7CiAKLSAgICB2b2lkIGZvY3VzZWRFbGVtZW50Q2hhbmdlZChXZWJDb3JlOjpF
bGVtZW50Kikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBmb2N1c2VkRnJhbWVDaGFuZ2VkKFdlYkNvcmU6
OkZyYW1lKikgb3ZlcnJpZGU7CisgICAgdm9pZCBmb2N1c2VkRWxlbWVudENoYW5nZWQoV2ViQ29y
ZTo6RWxlbWVudCopIGZpbmFsOworICAgIHZvaWQgZm9jdXNlZEZyYW1lQ2hhbmdlZChXZWJDb3Jl
OjpGcmFtZSopIGZpbmFsOwogCiAgICAgLy8gVGhlIEZyYW1lIHBvaW50ZXIgcHJvdmlkZXMgdGhl
IENocm9tZUNsaWVudCB3aXRoIGNvbnRleHQgYWJvdXQgd2hpY2gKICAgICAvLyBGcmFtZSB3YW50
cyB0byBjcmVhdGUgdGhlIG5ldyBQYWdlLiAgQWxzbywgdGhlIG5ld2x5IGNyZWF0ZWQgd2luZG93
CiAgICAgLy8gc2hvdWxkIG5vdCBiZSBzaG93biB0byB0aGUgdXNlciB1bnRpbCB0aGUgQ2hyb21l
Q2xpZW50IG9mIHRoZSBuZXdseQogICAgIC8vIGNyZWF0ZWQgUGFnZSBoYXMgaXRzIHNob3cgbWV0
aG9kIGNhbGxlZC4KLSAgICBXZWJDb3JlOjpQYWdlKiBjcmVhdGVXaW5kb3coV2ViQ29yZTo6RnJh
bWUqLCBjb25zdCBXZWJDb3JlOjpGcmFtZUxvYWRSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6V2lu
ZG93RmVhdHVyZXMmLCBjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJikgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBzaG93KCkgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6UGFnZSogY3JlYXRlV2lu
ZG93KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV2ViQ29yZTo6RnJhbWVMb2FkUmVxdWVzdCYsIGNv
bnN0IFdlYkNvcmU6OldpbmRvd0ZlYXR1cmVzJiwgY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFj
dGlvbiYpIGZpbmFsOworICAgIHZvaWQgc2hvdygpIGZpbmFsOwogICAgIAotICAgIGJvb2wgY2Fu
UnVuTW9kYWwoKSBvdmVycmlkZTsKLSAgICB2b2lkIHJ1bk1vZGFsKCkgb3ZlcnJpZGU7CisgICAg
Ym9vbCBjYW5SdW5Nb2RhbCgpIGZpbmFsOworICAgIHZvaWQgcnVuTW9kYWwoKSBmaW5hbDsKICAg
ICAKLSAgICB2b2lkIHNldFRvb2xiYXJzVmlzaWJsZShib29sKSBvdmVycmlkZTsKLSAgICBib29s
IHRvb2xiYXJzVmlzaWJsZSgpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0VG9vbGJhcnNWaXNpYmxl
KGJvb2wpIGZpbmFsOworICAgIGJvb2wgdG9vbGJhcnNWaXNpYmxlKCkgZmluYWw7CiAgICAgCi0g
ICAgdm9pZCBzZXRTdGF0dXNiYXJWaXNpYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJvb2wgc3Rh
dHVzYmFyVmlzaWJsZSgpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0U3RhdHVzYmFyVmlzaWJsZShi
b29sKSBmaW5hbDsKKyAgICBib29sIHN0YXR1c2JhclZpc2libGUoKSBmaW5hbDsKICAgICAKLSAg
ICB2b2lkIHNldFNjcm9sbGJhcnNWaXNpYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJvb2wgc2Ny
b2xsYmFyc1Zpc2libGUoKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldFNjcm9sbGJhcnNWaXNpYmxl
KGJvb2wpIGZpbmFsOworICAgIGJvb2wgc2Nyb2xsYmFyc1Zpc2libGUoKSBmaW5hbDsKICAgICAK
LSAgICB2b2lkIHNldE1lbnViYXJWaXNpYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJvb2wgbWVu
dWJhclZpc2libGUoKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldE1lbnViYXJWaXNpYmxlKGJvb2wp
IGZpbmFsOworICAgIGJvb2wgbWVudWJhclZpc2libGUoKSBmaW5hbDsKICAgICAKLSAgICB2b2lk
IHNldFJlc2l6YWJsZShib29sKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldFJlc2l6YWJsZShib29s
KSBmaW5hbDsKICAgICAKLSAgICB2b2lkIGFkZE1lc3NhZ2VUb0NvbnNvbGUoSlNDOjpNZXNzYWdl
U291cmNlLCBKU0M6Ok1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCB1bnNpZ25l
ZCBsaW5lTnVtYmVyLCB1bnNpZ25lZCBjb2x1bW5OdW1iZXIsIGNvbnN0IFN0cmluZyYgc291cmNl
SUQpIG92ZXJyaWRlOworICAgIHZvaWQgYWRkTWVzc2FnZVRvQ29uc29sZShKU0M6Ok1lc3NhZ2VT
b3VyY2UsIEpTQzo6TWVzc2FnZUxldmVsLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIHVuc2lnbmVk
IGxpbmVOdW1iZXIsIHVuc2lnbmVkIGNvbHVtbk51bWJlciwgY29uc3QgU3RyaW5nJiBzb3VyY2VJ
RCkgZmluYWw7CiAgICAgCi0gICAgYm9vbCBjYW5SdW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwo
KSBvdmVycmlkZTsKLSAgICBib29sIHJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbChjb25zdCBT
dHJpbmcmIG1lc3NhZ2UsIFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7CisgICAgYm9vbCBjYW5S
dW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoKSBmaW5hbDsKKyAgICBib29sIHJ1bkJlZm9yZVVu
bG9hZENvbmZpcm1QYW5lbChjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIFdlYkNvcmU6OkZyYW1lKikg
ZmluYWw7CiAgICAgCi0gICAgdm9pZCBjbG9zZVdpbmRvd1Nvb24oKSBvdmVycmlkZTsKKyAgICB2
b2lkIGNsb3NlV2luZG93U29vbigpIGZpbmFsOwogICAgIAotICAgIHZvaWQgcnVuSmF2YVNjcmlw
dEFsZXJ0KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgYm9v
bCBydW5KYXZhU2NyaXB0Q29uZmlybShXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFN0cmluZyYpIG92
ZXJyaWRlOwotICAgIGJvb2wgcnVuSmF2YVNjcmlwdFByb21wdChXZWJDb3JlOjpGcmFtZSosIGNv
bnN0IFN0cmluZyYgbWVzc2FnZSwgY29uc3QgU3RyaW5nJiBkZWZhdWx0VmFsdWUsIFN0cmluZyYg
cmVzdWx0KSBvdmVycmlkZTsKLSAgICB2b2lkIHNldFN0YXR1c2JhclRleHQoY29uc3QgU3RyaW5n
Jikgb3ZlcnJpZGU7Ci0KLSAgICBXZWJDb3JlOjpLZXlib2FyZFVJTW9kZSBrZXlib2FyZFVJTW9k
ZSgpIG92ZXJyaWRlOwotCi0gICAgLy8gSG9zdFdpbmRvdyBtZW1iZXIgZnVuY3Rpb24gb3ZlcnJp
ZGVzLgotICAgIHZvaWQgaW52YWxpZGF0ZVJvb3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFJlY3Qm
KSBvdmVycmlkZTsKLSAgICB2b2lkIGludmFsaWRhdGVDb250ZW50c0FuZFJvb3RWaWV3KGNvbnN0
IFdlYkNvcmU6OkludFJlY3QmKSBvdmVycmlkZTsKLSAgICB2b2lkIGludmFsaWRhdGVDb250ZW50
c0ZvclNsb3dTY3JvbGwoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIG92ZXJyaWRlOwotICAgIHZv
aWQgc2Nyb2xsKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIHNjcm9sbERlbHRhLCBjb25zdCBXZWJD
b3JlOjpJbnRSZWN0JiBzY3JvbGxSZWN0LCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiBjbGlwUmVj
dCkgb3ZlcnJpZGU7CisgICAgdm9pZCBydW5KYXZhU2NyaXB0QWxlcnQoV2ViQ29yZTo6RnJhbWUq
LCBjb25zdCBTdHJpbmcmKSBmaW5hbDsKKyAgICBib29sIHJ1bkphdmFTY3JpcHRDb25maXJtKFdl
YkNvcmU6OkZyYW1lKiwgY29uc3QgU3RyaW5nJikgZmluYWw7CisgICAgYm9vbCBydW5KYXZhU2Ny
aXB0UHJvbXB0KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjb25zdCBT
dHJpbmcmIGRlZmF1bHRWYWx1ZSwgU3RyaW5nJiByZXN1bHQpIGZpbmFsOworICAgIHZvaWQgc2V0
U3RhdHVzYmFyVGV4dChjb25zdCBTdHJpbmcmKSBmaW5hbDsKKworICAgIFdlYkNvcmU6OktleWJv
YXJkVUlNb2RlIGtleWJvYXJkVUlNb2RlKCkgZmluYWw7CisKKyAgICAvLyBIb3N0V2luZG93IG1l
bWJlciBmdW5jdGlvbiBmaW5hbHMuCisgICAgdm9pZCBpbnZhbGlkYXRlUm9vdFZpZXcoY29uc3Qg
V2ViQ29yZTo6SW50UmVjdCYpIGZpbmFsOworICAgIHZvaWQgaW52YWxpZGF0ZUNvbnRlbnRzQW5k
Um9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGZpbmFsOworICAgIHZvaWQgaW52YWxp
ZGF0ZUNvbnRlbnRzRm9yU2xvd1Njcm9sbChjb25zdCBXZWJDb3JlOjpJbnRSZWN0JikgZmluYWw7
CisgICAgdm9pZCBzY3JvbGwoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgc2Nyb2xsRGVsdGEsIGNv
bnN0IFdlYkNvcmU6OkludFJlY3QmIHNjcm9sbFJlY3QsIGNvbnN0IFdlYkNvcmU6OkludFJlY3Qm
IGNsaXBSZWN0KSBmaW5hbDsKKwogI2lmIFVTRShDT09SRElOQVRFRF9HUkFQSElDUykKLSAgICB2
b2lkIGRlbGVnYXRlZFNjcm9sbFJlcXVlc3RlZChjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYgc2Ny
b2xsT2Zmc2V0KSBvdmVycmlkZTsKKyAgICB2b2lkIGRlbGVnYXRlZFNjcm9sbFJlcXVlc3RlZChj
b25zdCBXZWJDb3JlOjpJbnRQb2ludCYgc2Nyb2xsT2Zmc2V0KSBmaW5hbDsKICNlbmRpZgotICAg
IFdlYkNvcmU6OkludFBvaW50IHNjcmVlblRvUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UG9p
bnQmKSBjb25zdCBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpJbnRSZWN0IHJvb3RWaWV3VG9TY3Jl
ZW4oY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGNvbnN0IG92ZXJyaWRlOworCisgICAgV2ViQ29y
ZTo6SW50UG9pbnQgc2NyZWVuVG9Sb290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIGNv
bnN0IGZpbmFsOworICAgIFdlYkNvcmU6OkludFJlY3Qgcm9vdFZpZXdUb1NjcmVlbihjb25zdCBX
ZWJDb3JlOjpJbnRSZWN0JikgY29uc3QgZmluYWw7CisKICNpZiBQTEFURk9STShJT1MpCi0gICAg
V2ViQ29yZTo6SW50UG9pbnQgYWNjZXNzaWJpbGl0eVNjcmVlblRvUm9vdFZpZXcoY29uc3QgV2Vi
Q29yZTo6SW50UG9pbnQmKSBjb25zdCBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpJbnRSZWN0IHJv
b3RWaWV3VG9BY2Nlc3NpYmlsaXR5U2NyZWVuKGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBjb25z
dCBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpJbnRQb2ludCBhY2Nlc3NpYmlsaXR5U2NyZWVuVG9S
b290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIGNvbnN0IGZpbmFsOworICAgIFdlYkNv
cmU6OkludFJlY3Qgcm9vdFZpZXdUb0FjY2Vzc2liaWxpdHlTY3JlZW4oY29uc3QgV2ViQ29yZTo6
SW50UmVjdCYpIGNvbnN0IGZpbmFsOwogI2VuZGlmCi0gICAgUGxhdGZvcm1QYWdlQ2xpZW50IHBs
YXRmb3JtUGFnZUNsaWVudCgpIGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQgY29udGVudHNTaXpl
Q2hhbmdlZChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6OkludFNpemUmKSBjb25zdCBv
dmVycmlkZTsKLSAgICB2b2lkIHNjcm9sbFJlY3RJbnRvVmlldyhjb25zdCBXZWJDb3JlOjpJbnRS
ZWN0JikgY29uc3Qgb3ZlcnJpZGU7IC8vIEN1cnJlbnRseSBvbmx5IE1hYyBoYXMgYSBub24gZW1w
dHkgaW1wbGVtZW50YXRpb24uCiAKLSAgICBib29sIHNob3VsZFVuYXZhaWxhYmxlUGx1Z2luTWVz
c2FnZUJlQnV0dG9uKFdlYkNvcmU6OlJlbmRlckVtYmVkZGVkT2JqZWN0OjpQbHVnaW5VbmF2YWls
YWJpbGl0eVJlYXNvbikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCB1bmF2YWlsYWJsZVBsdWdp
bkJ1dHRvbkNsaWNrZWQoV2ViQ29yZTo6RWxlbWVudCosIFdlYkNvcmU6OlJlbmRlckVtYmVkZGVk
T2JqZWN0OjpQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbikgY29uc3Qgb3ZlcnJpZGU7CisgICAg
UGxhdGZvcm1QYWdlQ2xpZW50IHBsYXRmb3JtUGFnZUNsaWVudCgpIGNvbnN0IGZpbmFsOworICAg
IHZvaWQgY29udGVudHNTaXplQ2hhbmdlZChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6
OkludFNpemUmKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIHNjcm9sbFJlY3RJbnRvVmlldyhjb25z
dCBXZWJDb3JlOjpJbnRSZWN0JikgY29uc3QgZmluYWw7IC8vIEN1cnJlbnRseSBvbmx5IE1hYyBo
YXMgYSBub24gZW1wdHkgaW1wbGVtZW50YXRpb24uCiAKLSAgICB2b2lkIHNjcm9sbGJhcnNNb2Rl
RGlkQ2hhbmdlKCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCBtb3VzZURpZE1vdmVPdmVyRWxl
bWVudChjb25zdCBXZWJDb3JlOjpIaXRUZXN0UmVzdWx0JiwgdW5zaWduZWQgbW9kaWZpZXJGbGFn
cykgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRVbmF2YWlsYWJsZVBsdWdpbk1lc3NhZ2VCZUJ1
dHRvbihXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2luVW5hdmFpbGFiaWxpdHlS
ZWFzb24pIGNvbnN0IGZpbmFsOworICAgIHZvaWQgdW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlj
a2VkKFdlYkNvcmU6OkVsZW1lbnQqLCBXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6UGx1
Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24pIGNvbnN0IGZpbmFsOwogCi0gICAgdm9pZCBzZXRUb29s
VGlwKGNvbnN0IFN0cmluZyYsIFdlYkNvcmU6OlRleHREaXJlY3Rpb24pIG92ZXJyaWRlOworICAg
IHZvaWQgc2Nyb2xsYmFyc01vZGVEaWRDaGFuZ2UoKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIG1v
dXNlRGlkTW92ZU92ZXJFbGVtZW50KGNvbnN0IFdlYkNvcmU6OkhpdFRlc3RSZXN1bHQmLCB1bnNp
Z25lZCBtb2RpZmllckZsYWdzKSBmaW5hbDsKKworICAgIHZvaWQgc2V0VG9vbFRpcChjb25zdCBT
dHJpbmcmLCBXZWJDb3JlOjpUZXh0RGlyZWN0aW9uKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHBy
aW50KFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7CisgICAgdm9pZCBwcmludChXZWJDb3JlOjpG
cmFtZSopIGZpbmFsOwogCi0gICAgdm9pZCBleGNlZWRlZERhdGFiYXNlUXVvdGEoV2ViQ29yZTo6
RnJhbWUqLCBjb25zdCBTdHJpbmcmIGRhdGFiYXNlTmFtZSwgV2ViQ29yZTo6RGF0YWJhc2VEZXRh
aWxzKSBvdmVycmlkZTsKKyAgICB2b2lkIGV4Y2VlZGVkRGF0YWJhc2VRdW90YShXZWJDb3JlOjpG
cmFtZSosIGNvbnN0IFN0cmluZyYgZGF0YWJhc2VOYW1lLCBXZWJDb3JlOjpEYXRhYmFzZURldGFp
bHMpIGZpbmFsOwogCi0gICAgdm9pZCByZWFjaGVkTWF4QXBwQ2FjaGVTaXplKGludDY0X3Qgc3Bh
Y2VOZWVkZWQpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVhY2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmln
aW5RdW90YShXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiosIGludDY0X3Qgc3BhY2VOZWVkZWQpIG92
ZXJyaWRlOworICAgIHZvaWQgcmVhY2hlZE1heEFwcENhY2hlU2l6ZShpbnQ2NF90IHNwYWNlTmVl
ZGVkKSBmaW5hbDsKKyAgICB2b2lkIHJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEo
V2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4qLCBpbnQ2NF90IHNwYWNlTmVlZGVkKSBmaW5hbDsKIAog
I2lmIEVOQUJMRShEQVNIQk9BUkRfU1VQUE9SVCkKLSAgICB2b2lkIGFubm90YXRlZFJlZ2lvbnND
aGFuZ2VkKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBhbm5vdGF0ZWRSZWdpb25zQ2hhbmdlZCgpIGZp
bmFsOwogI2VuZGlmCiAKLSAgICBib29sIHNob3VsZFJlcGxhY2VXaXRoR2VuZXJhdGVkRmlsZUZv
clVwbG9hZChjb25zdCBTdHJpbmcmIHBhdGgsIFN0cmluZyYgZ2VuZXJhdGVkRmlsZW5hbWUpIG92
ZXJyaWRlOwotICAgIFN0cmluZyBnZW5lcmF0ZVJlcGxhY2VtZW50RmlsZShjb25zdCBTdHJpbmcm
IHBhdGgpIG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkUmVwbGFjZVdpdGhHZW5lcmF0ZWRGaWxl
Rm9yVXBsb2FkKGNvbnN0IFN0cmluZyYgcGF0aCwgU3RyaW5nJiBnZW5lcmF0ZWRGaWxlbmFtZSkg
ZmluYWw7CisgICAgU3RyaW5nIGdlbmVyYXRlUmVwbGFjZW1lbnRGaWxlKGNvbnN0IFN0cmluZyYg
cGF0aCkgZmluYWw7CiAgICAgCiAjaWYgRU5BQkxFKElOUFVUX1RZUEVfQ09MT1IpCi0gICAgc3Rk
Ojp1bmlxdWVfcHRyPFdlYkNvcmU6OkNvbG9yQ2hvb3Nlcj4gY3JlYXRlQ29sb3JDaG9vc2VyKFdl
YkNvcmU6OkNvbG9yQ2hvb3NlckNsaWVudCosIGNvbnN0IFdlYkNvcmU6OkNvbG9yJikgb3ZlcnJp
ZGU7CisgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6OkNvbG9yQ2hvb3Nlcj4gY3JlYXRlQ29s
b3JDaG9vc2VyKFdlYkNvcmU6OkNvbG9yQ2hvb3NlckNsaWVudCosIGNvbnN0IFdlYkNvcmU6OkNv
bG9yJikgZmluYWw7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShJT1NfVE9VQ0hfRVZFTlRTKQotICAg
IHZvaWQgZGlkUHJldmVudERlZmF1bHRGb3JFdmVudCgpIG92ZXJyaWRlOworICAgIHZvaWQgZGlk
UHJldmVudERlZmF1bHRGb3JFdmVudCgpIGZpbmFsOwogI2VuZGlmCiAKICNpZiBQTEFURk9STShJ
T1MpCi0gICAgdm9pZCBkaWRSZWNlaXZlTW9iaWxlRG9jVHlwZShib29sKSBvdmVycmlkZTsKLSAg
ICB2b2lkIHNldE5lZWRzU2Nyb2xsTm90aWZpY2F0aW9ucyhXZWJDb3JlOjpGcmFtZSosIGJvb2wp
IG92ZXJyaWRlOwotICAgIHZvaWQgb2JzZXJ2ZWRDb250ZW50Q2hhbmdlKFdlYkNvcmU6OkZyYW1l
Kikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBjbGVhckNvbnRlbnRDaGFuZ2VPYnNlcnZlcnMoV2ViQ29y
ZTo6RnJhbWUqKSBvdmVycmlkZTsKLSAgICB2b2lkIG5vdGlmeVJldmVhbGVkU2VsZWN0aW9uQnlT
Y3JvbGxpbmdGcmFtZShXZWJDb3JlOjpGcmFtZSopIG92ZXJyaWRlOwotICAgIGJvb2wgaXNTdG9w
cGluZygpIG92ZXJyaWRlOwotCi0gICAgdm9pZCBkaWRMYXlvdXQoTGF5b3V0VHlwZSA9IE5vcm1h
bExheW91dCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRTdGFydE92ZXJmbG93U2Nyb2xsKCkgb3Zl
cnJpZGU7Ci0gICAgdm9pZCBkaWRFbmRPdmVyZmxvd1Njcm9sbCgpIG92ZXJyaWRlOwotICAgIGJv
b2wgaGFzU3RhYmxlUGFnZVNjYWxlRmFjdG9yKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgdm9pZCBk
aWRSZWNlaXZlTW9iaWxlRG9jVHlwZShib29sKSBmaW5hbDsKKyAgICB2b2lkIHNldE5lZWRzU2Ny
b2xsTm90aWZpY2F0aW9ucyhXZWJDb3JlOjpGcmFtZSosIGJvb2wpIGZpbmFsOworICAgIHZvaWQg
b2JzZXJ2ZWRDb250ZW50Q2hhbmdlKFdlYkNvcmU6OkZyYW1lKikgZmluYWw7CisgICAgdm9pZCBj
bGVhckNvbnRlbnRDaGFuZ2VPYnNlcnZlcnMoV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKKyAgICB2
b2lkIG5vdGlmeVJldmVhbGVkU2VsZWN0aW9uQnlTY3JvbGxpbmdGcmFtZShXZWJDb3JlOjpGcmFt
ZSopIGZpbmFsOworICAgIGJvb2wgaXNTdG9wcGluZygpIGZpbmFsOworCisgICAgdm9pZCBkaWRM
YXlvdXQoTGF5b3V0VHlwZSA9IE5vcm1hbExheW91dCkgZmluYWw7CisgICAgdm9pZCBkaWRTdGFy
dE92ZXJmbG93U2Nyb2xsKCkgZmluYWw7CisgICAgdm9pZCBkaWRFbmRPdmVyZmxvd1Njcm9sbCgp
IGZpbmFsOworICAgIGJvb2wgaGFzU3RhYmxlUGFnZVNjYWxlRmFjdG9yKCkgY29uc3QgZmluYWw7
CiAKICAgICAvLyBGSVhNRTogU2VlIDxyZGFyOi8vcHJvYmxlbS81OTc1NTU5PgotICAgIHZvaWQg
c3VwcHJlc3NGb3JtTm90aWZpY2F0aW9ucygpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVzdG9yZUZv
cm1Ob3RpZmljYXRpb25zKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBzdXBwcmVzc0Zvcm1Ob3RpZmlj
YXRpb25zKCkgZmluYWw7CisgICAgdm9pZCByZXN0b3JlRm9ybU5vdGlmaWNhdGlvbnMoKSBmaW5h
bDsKIAotICAgIHZvaWQgYWRkT3JVcGRhdGVTY3JvbGxpbmdMYXllcihXZWJDb3JlOjpOb2RlKiwg
UGxhdGZvcm1MYXllciogc2Nyb2xsaW5nTGF5ZXIsIFBsYXRmb3JtTGF5ZXIqIGNvbnRlbnRzTGF5
ZXIsIGNvbnN0IFdlYkNvcmU6OkludFNpemUmIHNjcm9sbFNpemUsIGJvb2wgYWxsb3dIb3Jpem9u
dGFsU2Nyb2xsYmFyLCBib29sIGFsbG93VmVydGljYWxTY3JvbGxiYXIpIG92ZXJyaWRlOwotICAg
IHZvaWQgcmVtb3ZlU2Nyb2xsaW5nTGF5ZXIoV2ViQ29yZTo6Tm9kZSosIFBsYXRmb3JtTGF5ZXIq
IHNjcm9sbGluZ0xheWVyLCBQbGF0Zm9ybUxheWVyKiBjb250ZW50c0xheWVyKSBvdmVycmlkZTsK
KyAgICB2b2lkIGFkZE9yVXBkYXRlU2Nyb2xsaW5nTGF5ZXIoV2ViQ29yZTo6Tm9kZSosIFBsYXRm
b3JtTGF5ZXIqIHNjcm9sbGluZ0xheWVyLCBQbGF0Zm9ybUxheWVyKiBjb250ZW50c0xheWVyLCBj
b25zdCBXZWJDb3JlOjpJbnRTaXplJiBzY3JvbGxTaXplLCBib29sIGFsbG93SG9yaXpvbnRhbFNj
cm9sbGJhciwgYm9vbCBhbGxvd1ZlcnRpY2FsU2Nyb2xsYmFyKSBmaW5hbDsKKyAgICB2b2lkIHJl
bW92ZVNjcm9sbGluZ0xheWVyKFdlYkNvcmU6Ok5vZGUqLCBQbGF0Zm9ybUxheWVyKiBzY3JvbGxp
bmdMYXllciwgUGxhdGZvcm1MYXllciogY29udGVudHNMYXllcikgZmluYWw7CiAKLSAgICB2b2lk
IHdlYkFwcE9yaWVudGF0aW9uc1VwZGF0ZWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIHNob3dQbGF5
YmFja1RhcmdldFBpY2tlcihib29sIGhhc1ZpZGVvKSBvdmVycmlkZTsKKyAgICB2b2lkIHdlYkFw
cE9yaWVudGF0aW9uc1VwZGF0ZWQoKSBmaW5hbDsKKyAgICB2b2lkIHNob3dQbGF5YmFja1Rhcmdl
dFBpY2tlcihib29sIGhhc1ZpZGVvKSBmaW5hbDsKIAotICAgIFNlY29uZHMgZXZlbnRUaHJvdHRs
aW5nRGVsYXkoKSBvdmVycmlkZTsKKyAgICBTZWNvbmRzIGV2ZW50VGhyb3R0bGluZ0RlbGF5KCkg
ZmluYWw7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShPUklFTlRBVElPTl9FVkVOVFMpCi0gICAgaW50
IGRldmljZU9yaWVudGF0aW9uKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgaW50IGRldmljZU9yaWVu
dGF0aW9uKCkgY29uc3QgZmluYWw7CiAjZW5kaWYKIAotICAgIHZvaWQgcnVuT3BlblBhbmVsKFdl
YkNvcmU6OkZyYW1lKiwgUGFzc1JlZlB0cjxXZWJDb3JlOjpGaWxlQ2hvb3Nlcj4pIG92ZXJyaWRl
OwotICAgIHZvaWQgbG9hZEljb25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8U3RyaW5nPiYsIFdlYkNv
cmU6OkZpbGVJY29uTG9hZGVyJikgb3ZlcnJpZGU7CisgICAgdm9pZCBydW5PcGVuUGFuZWwoV2Vi
Q29yZTo6RnJhbWUmLCBXZWJDb3JlOjpGaWxlQ2hvb3NlciYpIGZpbmFsOworICAgIHZvaWQgbG9h
ZEljb25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8U3RyaW5nPiYsIFdlYkNvcmU6OkZpbGVJY29uTG9h
ZGVyJikgZmluYWw7CiAKICNpZiAhUExBVEZPUk0oSU9TKQotICAgIHZvaWQgc2V0Q3Vyc29yKGNv
bnN0IFdlYkNvcmU6OkN1cnNvciYpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0Q3Vyc29ySGlkZGVu
VW50aWxNb3VzZU1vdmVzKGJvb2wpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0Q3Vyc29yKGNvbnN0
IFdlYkNvcmU6OkN1cnNvciYpIGZpbmFsOworICAgIHZvaWQgc2V0Q3Vyc29ySGlkZGVuVW50aWxN
b3VzZU1vdmVzKGJvb2wpIGZpbmFsOwogI2VuZGlmCisKICNpZiBFTkFCTEUoUkVRVUVTVF9BTklN
QVRJT05fRlJBTUUpICYmICFVU0UoUkVRVUVTVF9BTklNQVRJT05fRlJBTUVfVElNRVIpCi0gICAg
dm9pZCBzY2hlZHVsZUFuaW1hdGlvbigpIG92ZXJyaWRlOworICAgIHZvaWQgc2NoZWR1bGVBbmlt
YXRpb24oKSBmaW5hbDsKICNlbmRpZgogICAgIAogI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCi0g
ICAgYm9vbCByZXF1ZXN0UG9pbnRlckxvY2soKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlcXVlc3RQ
b2ludGVyVW5sb2NrKCkgb3ZlcnJpZGU7CisgICAgYm9vbCByZXF1ZXN0UG9pbnRlckxvY2soKSBm
aW5hbDsKKyAgICB2b2lkIHJlcXVlc3RQb2ludGVyVW5sb2NrKCkgZmluYWw7CiAjZW5kaWYKIAot
ICAgIHZvaWQgZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xzKGNvbnN0IFZlY3RvcjxSZWZQdHI8V2Vi
Q29yZTo6RWxlbWVudD4+Jikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBzaG91bGROb3RpZnlPbkZvcm1D
aGFuZ2VzKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRBc3NvY2lhdGVGb3JtQ29udHJvbHMoY29u
c3QgVmVjdG9yPFJlZlB0cjxXZWJDb3JlOjpFbGVtZW50Pj4mKSBmaW5hbDsKKyAgICBib29sIHNo
b3VsZE5vdGlmeU9uRm9ybUNoYW5nZXMoKSBmaW5hbDsKIAotICAgIGJvb2wgc2VsZWN0SXRlbVdy
aXRpbmdEaXJlY3Rpb25Jc05hdHVyYWwoKSBvdmVycmlkZTsKLSAgICBib29sIHNlbGVjdEl0ZW1B
bGlnbm1lbnRGb2xsb3dzTWVudVdyaXRpbmdEaXJlY3Rpb24oKSBvdmVycmlkZTsKLSAgICBib29s
IGhhc09wZW5lZFBvcHVwKCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgUmVmUHRyPFdlYkNvcmU6OlBv
cHVwTWVudT4gY3JlYXRlUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCopIGNvbnN0
IG92ZXJyaWRlOwotICAgIFJlZlB0cjxXZWJDb3JlOjpTZWFyY2hQb3B1cE1lbnU+IGNyZWF0ZVNl
YXJjaFBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1lbnVDbGllbnQqKSBjb25zdCBvdmVycmlkZTsK
KyAgICBib29sIHNlbGVjdEl0ZW1Xcml0aW5nRGlyZWN0aW9uSXNOYXR1cmFsKCkgZmluYWw7Cisg
ICAgYm9vbCBzZWxlY3RJdGVtQWxpZ25tZW50Rm9sbG93c01lbnVXcml0aW5nRGlyZWN0aW9uKCkg
ZmluYWw7CisgICAgYm9vbCBoYXNPcGVuZWRQb3B1cCgpIGNvbnN0IGZpbmFsOworICAgIFJlZlB0
cjxXZWJDb3JlOjpQb3B1cE1lbnU+IGNyZWF0ZVBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1lbnVD
bGllbnQqKSBjb25zdCBmaW5hbDsKKyAgICBSZWZQdHI8V2ViQ29yZTo6U2VhcmNoUG9wdXBNZW51
PiBjcmVhdGVTZWFyY2hQb3B1cE1lbnUoV2ViQ29yZTo6UG9wdXBNZW51Q2xpZW50KikgY29uc3Qg
ZmluYWw7CiAKLSAgICBXZWJDb3JlOjpHcmFwaGljc0xheWVyRmFjdG9yeSogZ3JhcGhpY3NMYXll
ckZhY3RvcnkoKSBjb25zdCBvdmVycmlkZTsKLSAgICB2b2lkIGF0dGFjaFJvb3RHcmFwaGljc0xh
eWVyKFdlYkNvcmU6OkZyYW1lKiwgV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOwot
ICAgIHZvaWQgYXR0YWNoVmlld092ZXJsYXlHcmFwaGljc0xheWVyKFdlYkNvcmU6OkZyYW1lKiwg
V2ViQ29yZTo6R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0TmVlZHNPbmVT
aG90RHJhd2luZ1N5bmNocm9uaXphdGlvbigpIG92ZXJyaWRlOwotICAgIHZvaWQgc2NoZWR1bGVD
b21wb3NpdGluZ0xheWVyRmx1c2goKSBvdmVycmlkZTsKLSAgICBib29sIGFkanVzdExheWVyRmx1
c2hUaHJvdHRsaW5nKFdlYkNvcmU6OkxheWVyRmx1c2hUaHJvdHRsZVN0YXRlOjpGbGFncykgb3Zl
cnJpZGU7CisgICAgV2ViQ29yZTo6R3JhcGhpY3NMYXllckZhY3RvcnkqIGdyYXBoaWNzTGF5ZXJG
YWN0b3J5KCkgY29uc3QgZmluYWw7CisgICAgdm9pZCBhdHRhY2hSb290R3JhcGhpY3NMYXllcihX
ZWJDb3JlOjpGcmFtZSosIFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXIqKSBmaW5hbDsKKyAgICB2b2lk
IGF0dGFjaFZpZXdPdmVybGF5R3JhcGhpY3NMYXllcihXZWJDb3JlOjpGcmFtZSosIFdlYkNvcmU6
OkdyYXBoaWNzTGF5ZXIqKSBmaW5hbDsKKyAgICB2b2lkIHNldE5lZWRzT25lU2hvdERyYXdpbmdT
eW5jaHJvbml6YXRpb24oKSBmaW5hbDsKKyAgICB2b2lkIHNjaGVkdWxlQ29tcG9zaXRpbmdMYXll
ckZsdXNoKCkgZmluYWw7CisgICAgYm9vbCBhZGp1c3RMYXllckZsdXNoVGhyb3R0bGluZyhXZWJD
b3JlOjpMYXllckZsdXNoVGhyb3R0bGVTdGF0ZTo6RmxhZ3MpIGZpbmFsOwogCiAjaWYgVVNFKFJF
UVVFU1RfQU5JTUFUSU9OX0ZSQU1FX0RJU1BMQVlfTU9OSVRPUikKLSAgICBSZWZQdHI8V2ViQ29y
ZTo6RGlzcGxheVJlZnJlc2hNb25pdG9yPiBjcmVhdGVEaXNwbGF5UmVmcmVzaE1vbml0b3IoV2Vi
Q29yZTo6UGxhdGZvcm1EaXNwbGF5SUQpIGNvbnN0IG92ZXJyaWRlOworICAgIFJlZlB0cjxXZWJD
b3JlOjpEaXNwbGF5UmVmcmVzaE1vbml0b3I+IGNyZWF0ZURpc3BsYXlSZWZyZXNoTW9uaXRvcihX
ZWJDb3JlOjpQbGF0Zm9ybURpc3BsYXlJRCkgY29uc3QgZmluYWw7CiAjZW5kaWYKIAotICAgIENv
bXBvc2l0aW5nVHJpZ2dlckZsYWdzIGFsbG93ZWRDb21wb3NpdGluZ1RyaWdnZXJzKCkgY29uc3Qg
b3ZlcnJpZGUKKyAgICBDb21wb3NpdGluZ1RyaWdnZXJGbGFncyBhbGxvd2VkQ29tcG9zaXRpbmdU
cmlnZ2VycygpIGNvbnN0IGZpbmFsCiAgICAgewogICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8
Q29tcG9zaXRpbmdUcmlnZ2VyRmxhZ3M+KAogICAgICAgICAgICAgVGhyZWVEVHJhbnNmb3JtVHJp
Z2dlciB8CkBAIC0yMzAsMTE5ICsyMjgsMTIxIEBAIHByaXZhdGU6CiAgICAgICAgICAgICBBbmlt
YXRpb25UcmlnZ2VyKTsKICAgICB9CiAKLSAgICBib29sIGxheWVyVHJlZVN0YXRlSXNGcm96ZW4o
KSBjb25zdCBvdmVycmlkZTsKKyAgICBib29sIGxheWVyVHJlZVN0YXRlSXNGcm96ZW4oKSBjb25z
dCBmaW5hbDsKIAogI2lmIEVOQUJMRShBU1lOQ19TQ1JPTExJTkcpCi0gICAgUGFzc1JlZlB0cjxX
ZWJDb3JlOjpTY3JvbGxpbmdDb29yZGluYXRvcj4gY3JlYXRlU2Nyb2xsaW5nQ29vcmRpbmF0b3Io
V2ViQ29yZTo6UGFnZSopIGNvbnN0IG92ZXJyaWRlOworICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6
U2Nyb2xsaW5nQ29vcmRpbmF0b3I+IGNyZWF0ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yKFdlYkNvcmU6
OlBhZ2UqKSBjb25zdCBmaW5hbDsKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oSU9TKQotICAgIHZv
aWQgZWxlbWVudERpZFJlZm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9kZSopIG92ZXJyaWRlOworICAg
IHZvaWQgZWxlbWVudERpZFJlZm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9kZSopIGZpbmFsOwogI2Vu
ZGlmCiAKICNpZiAoUExBVEZPUk0oSU9TKSAmJiBIQVZFKEFWS0lUKSkgfHwgKFBMQVRGT1JNKE1B
QykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSkKLSAgICBib29sIHN1cHBvcnRz
VmlkZW9GdWxsc2NyZWVuKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxs
c2NyZWVuTW9kZSkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRVcFBsYXliYWNrQ29udHJvbHNNYW5h
Z2VyKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQmKSBvdmVycmlkZTsKLSAgICB2b2lkIGNsZWFy
UGxheWJhY2tDb250cm9sc01hbmFnZXIoKSBvdmVycmlkZTsKLSAgICB2b2lkIGVudGVyVmlkZW9G
dWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmLCBXZWJD
b3JlOjpIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIG92ZXJyaWRl
OwotICAgIHZvaWQgZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpI
VE1MVmlkZW9FbGVtZW50Jikgb3ZlcnJpZGU7Ci0jaWYgUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUo
VklERU9fUFJFU0VOVEFUSU9OX01PREUpCi0gICAgdm9pZCBleGl0VmlkZW9GdWxsc2NyZWVuVG9N
b2RlV2l0aG91dEFuaW1hdGlvbihXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50JiwgV2ViQ29yZTo6
SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlKSBvdmVycmlkZTsKKyAg
ICBib29sIHN1cHBvcnRzVmlkZW9GdWxsc2NyZWVuKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRF
bnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZSkgZmluYWw7CisgICAgdm9pZCBzZXRVcFBsYXliYWNr
Q29udHJvbHNNYW5hZ2VyKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQmKSBmaW5hbDsKKyAgICB2
b2lkIGNsZWFyUGxheWJhY2tDb250cm9sc01hbmFnZXIoKSBmaW5hbDsKKyAgICB2b2lkIGVudGVy
VmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQm
LCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIGZp
bmFsOworICAgIHZvaWQgZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3Jl
OjpIVE1MVmlkZW9FbGVtZW50JikgZmluYWw7CiAjZW5kaWYKKworI2lmIFBMQVRGT1JNKE1BQykg
JiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQorICAgIHZvaWQgZXhpdFZpZGVvRnVs
bHNjcmVlblRvTW9kZVdpdGhvdXRBbmltYXRpb24oV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCYs
IFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZSkgZmlu
YWw7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQSSkKLSAgICBib29sIHN1cHBv
cnRzRnVsbFNjcmVlbkZvckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6RWxlbWVudCosIGJvb2wgd2l0
aEtleWJvYXJkKSBvdmVycmlkZTsKLSAgICB2b2lkIGVudGVyRnVsbFNjcmVlbkZvckVsZW1lbnQo
V2ViQ29yZTo6RWxlbWVudCopIG92ZXJyaWRlOwotICAgIHZvaWQgZXhpdEZ1bGxTY3JlZW5Gb3JF
bGVtZW50KFdlYkNvcmU6OkVsZW1lbnQqKSBvdmVycmlkZTsKKyAgICBib29sIHN1cHBvcnRzRnVs
bFNjcmVlbkZvckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6RWxlbWVudCosIGJvb2wgd2l0aEtleWJv
YXJkKSBmaW5hbDsKKyAgICB2b2lkIGVudGVyRnVsbFNjcmVlbkZvckVsZW1lbnQoV2ViQ29yZTo6
RWxlbWVudCopIGZpbmFsOworICAgIHZvaWQgZXhpdEZ1bGxTY3JlZW5Gb3JFbGVtZW50KFdlYkNv
cmU6OkVsZW1lbnQqKSBmaW5hbDsKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oQ09DT0EpCi0gICAg
dm9pZCBlbGVtZW50RGlkRm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9kZSopIG92ZXJyaWRlOwotICAg
IHZvaWQgZWxlbWVudERpZEJsdXIoY29uc3QgV2ViQ29yZTo6Tm9kZSopIG92ZXJyaWRlOworICAg
IHZvaWQgZWxlbWVudERpZEZvY3VzKGNvbnN0IFdlYkNvcmU6Ok5vZGUqKSBmaW5hbDsKKyAgICB2
b2lkIGVsZW1lbnREaWRCbHVyKGNvbnN0IFdlYkNvcmU6Ok5vZGUqKSBmaW5hbDsKIAotICAgIHZv
aWQgbWFrZUZpcnN0UmVzcG9uZGVyKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBtYWtlRmlyc3RSZXNw
b25kZXIoKSBmaW5hbDsKICNlbmRpZgogCi0gICAgdm9pZCBlbmFibGVTdWRkZW5UZXJtaW5hdGlv
bigpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkgb3ZlcnJp
ZGU7CisgICAgdm9pZCBlbmFibGVTdWRkZW5UZXJtaW5hdGlvbigpIGZpbmFsOworICAgIHZvaWQg
ZGlzYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkgZmluYWw7CiAKICNpZiBQTEFURk9STShJT1MpCi0g
ICAgV2ViQ29yZTo6RmxvYXRTaXplIHNjcmVlblNpemUoKSBjb25zdCBvdmVycmlkZTsKLSAgICBX
ZWJDb3JlOjpGbG9hdFNpemUgYXZhaWxhYmxlU2NyZWVuU2l6ZSgpIGNvbnN0IG92ZXJyaWRlOwor
ICAgIFdlYkNvcmU6OkZsb2F0U2l6ZSBzY3JlZW5TaXplKCkgY29uc3QgZmluYWw7CisgICAgV2Vi
Q29yZTo6RmxvYXRTaXplIGF2YWlsYWJsZVNjcmVlblNpemUoKSBjb25zdCBmaW5hbDsKICNlbmRp
ZgotICAgIHZvaWQgZGlzcGF0Y2hWaWV3cG9ydFByb3BlcnRpZXNEaWRDaGFuZ2UoY29uc3QgV2Vi
Q29yZTo6Vmlld3BvcnRBcmd1bWVudHMmKSBjb25zdCBvdmVycmlkZTsKIAotICAgIHZvaWQgbm90
aWZ5U2Nyb2xsZXJUaHVtYklzVmlzaWJsZUluUmVjdChjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jikg
b3ZlcnJpZGU7Ci0gICAgdm9pZCByZWNvbW1lbmRlZFNjcm9sbGJhclN0eWxlRGlkQ2hhbmdlKFdl
YkNvcmU6OlNjcm9sbGJhclN0eWxlIG5ld1N0eWxlKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3Bh
dGNoVmlld3BvcnRQcm9wZXJ0aWVzRGlkQ2hhbmdlKGNvbnN0IFdlYkNvcmU6OlZpZXdwb3J0QXJn
dW1lbnRzJikgY29uc3QgZmluYWw7CiAKLSAgICBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlNjcm9s
bGJhck92ZXJsYXlTdHlsZT4gcHJlZmVycmVkU2Nyb2xsYmFyT3ZlcmxheVN0eWxlKCkgb3ZlcnJp
ZGU7CisgICAgdm9pZCBub3RpZnlTY3JvbGxlclRodW1iSXNWaXNpYmxlSW5SZWN0KGNvbnN0IFdl
YkNvcmU6OkludFJlY3QmKSBmaW5hbDsKKyAgICB2b2lkIHJlY29tbWVuZGVkU2Nyb2xsYmFyU3R5
bGVEaWRDaGFuZ2UoV2ViQ29yZTo6U2Nyb2xsYmFyU3R5bGUgbmV3U3R5bGUpIGZpbmFsOwogCi0g
ICAgV2ViQ29yZTo6Q29sb3IgdW5kZXJsYXlDb2xvcigpIGNvbnN0IG92ZXJyaWRlOworICAgIHN0
ZDo6b3B0aW9uYWw8V2ViQ29yZTo6U2Nyb2xsYmFyT3ZlcmxheVN0eWxlPiBwcmVmZXJyZWRTY3Jv
bGxiYXJPdmVybGF5U3R5bGUoKSBmaW5hbDsKIAotICAgIHZvaWQgcGFnZUV4dGVuZGVkQmFja2dy
b3VuZENvbG9yRGlkQ2hhbmdlKFdlYkNvcmU6OkNvbG9yKSBjb25zdCBvdmVycmlkZTsKKyAgICBX
ZWJDb3JlOjpDb2xvciB1bmRlcmxheUNvbG9yKCkgY29uc3QgZmluYWw7CisKKyAgICB2b2lkIHBh
Z2VFeHRlbmRlZEJhY2tncm91bmRDb2xvckRpZENoYW5nZShXZWJDb3JlOjpDb2xvcikgY29uc3Qg
ZmluYWw7CiAgICAgCi0gICAgdm9pZCB3aGVlbEV2ZW50SGFuZGxlcnNDaGFuZ2VkKGJvb2wpIG92
ZXJyaWRlOworICAgIHZvaWQgd2hlZWxFdmVudEhhbmRsZXJzQ2hhbmdlZChib29sKSBmaW5hbDsK
IAotICAgIFN0cmluZyBwbHVnSW5TdGFydExhYmVsVGl0bGUoY29uc3QgU3RyaW5nJiBtaW1lVHlw
ZSkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgU3RyaW5nIHBsdWdJblN0YXJ0TGFiZWxTdWJ0aXRsZShj
b25zdCBTdHJpbmcmIG1pbWVUeXBlKSBjb25zdCBvdmVycmlkZTsKLSAgICBTdHJpbmcgcGx1Z0lu
RXh0cmFTdHlsZVNoZWV0KCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgU3RyaW5nIHBsdWdJbkV4dHJh
U2NyaXB0KCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgU3RyaW5nIHBsdWdJblN0YXJ0TGFiZWxUaXRs
ZShjb25zdCBTdHJpbmcmIG1pbWVUeXBlKSBjb25zdCBmaW5hbDsKKyAgICBTdHJpbmcgcGx1Z0lu
U3RhcnRMYWJlbFN1YnRpdGxlKGNvbnN0IFN0cmluZyYgbWltZVR5cGUpIGNvbnN0IGZpbmFsOwor
ICAgIFN0cmluZyBwbHVnSW5FeHRyYVN0eWxlU2hlZXQoKSBjb25zdCBmaW5hbDsKKyAgICBTdHJp
bmcgcGx1Z0luRXh0cmFTY3JpcHQoKSBjb25zdCBmaW5hbDsKIAotICAgIHZvaWQgZGlkQWRkSGVh
ZGVyTGF5ZXIoV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOwotICAgIHZvaWQgZGlk
QWRkRm9vdGVyTGF5ZXIoV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOworICAgIHZv
aWQgZGlkQWRkSGVhZGVyTGF5ZXIoV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIGZpbmFsOworICAg
IHZvaWQgZGlkQWRkRm9vdGVyTGF5ZXIoV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIGZpbmFsOwog
Ci0gICAgYm9vbCBzaG91bGRVc2VUaWxlZEJhY2tpbmdGb3JGcmFtZVZpZXcoY29uc3QgV2ViQ29y
ZTo6RnJhbWVWaWV3KikgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRVc2VUaWxlZEJh
Y2tpbmdGb3JGcmFtZVZpZXcoY29uc3QgV2ViQ29yZTo6RnJhbWVWaWV3KikgY29uc3QgZmluYWw7
CiAKLSAgICB2b2lkIGlzUGxheWluZ01lZGlhRGlkQ2hhbmdlKFdlYkNvcmU6Ok1lZGlhUHJvZHVj
ZXI6Ok1lZGlhU3RhdGVGbGFncywgdWludDY0X3QpIG92ZXJyaWRlOworICAgIHZvaWQgaXNQbGF5
aW5nTWVkaWFEaWRDaGFuZ2UoV2ViQ29yZTo6TWVkaWFQcm9kdWNlcjo6TWVkaWFTdGF0ZUZsYWdz
LCB1aW50NjRfdCkgZmluYWw7CiAKICNpZiBFTkFCTEUoTUVESUFfU0VTU0lPTikKLSAgICB2b2lk
IGhhc01lZGlhU2Vzc2lvbldpdGhBY3RpdmVNZWRpYUVsZW1lbnRzRGlkQ2hhbmdlKGJvb2wpIG92
ZXJyaWRlOwotICAgIHZvaWQgbWVkaWFTZXNzaW9uTWV0YWRhdGFEaWRDaGFuZ2UoY29uc3QgV2Vi
Q29yZTo6TWVkaWFTZXNzaW9uTWV0YWRhdGEmKSBvdmVycmlkZTsKLSAgICB2b2lkIGZvY3VzZWRD
b250ZW50TWVkaWFFbGVtZW50RGlkQ2hhbmdlKHVpbnQ2NF90KSBvdmVycmlkZTsKKyAgICB2b2lk
IGhhc01lZGlhU2Vzc2lvbldpdGhBY3RpdmVNZWRpYUVsZW1lbnRzRGlkQ2hhbmdlKGJvb2wpIGZp
bmFsOworICAgIHZvaWQgbWVkaWFTZXNzaW9uTWV0YWRhdGFEaWRDaGFuZ2UoY29uc3QgV2ViQ29y
ZTo6TWVkaWFTZXNzaW9uTWV0YWRhdGEmKSBmaW5hbDsKKyAgICB2b2lkIGZvY3VzZWRDb250ZW50
TWVkaWFFbGVtZW50RGlkQ2hhbmdlKHVpbnQ2NF90KSBmaW5hbDsKICNlbmRpZgogCiAjaWYgRU5B
QkxFKFNVQlRMRV9DUllQVE8pCi0gICAgYm9vbCB3cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1
aW50OF90PiYsIFZlY3Rvcjx1aW50OF90PiYpIGNvbnN0IG92ZXJyaWRlOwotICAgIGJvb2wgdW53
cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90PiYsIFZlY3Rvcjx1aW50OF90PiYpIGNv
bnN0IG92ZXJyaWRlOworICAgIGJvb2wgd3JhcENyeXB0b0tleShjb25zdCBWZWN0b3I8dWludDhf
dD4mLCBWZWN0b3I8dWludDhfdD4mKSBjb25zdCBmaW5hbDsKKyAgICBib29sIHVud3JhcENyeXB0
b0tleShjb25zdCBWZWN0b3I8dWludDhfdD4mLCBWZWN0b3I8dWludDhfdD4mKSBjb25zdCBmaW5h
bDsKICNlbmRpZgogCiAjaWYgRU5BQkxFKFRFTEVQSE9ORV9OVU1CRVJfREVURUNUSU9OKSAmJiBQ
TEFURk9STShNQUMpCi0gICAgdm9pZCBoYW5kbGVUZWxlcGhvbmVOdW1iZXJDbGljayhjb25zdCBT
dHJpbmcmIG51bWJlciwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKSBvdmVycmlkZTsKKyAgICB2
b2lkIGhhbmRsZVRlbGVwaG9uZU51bWJlckNsaWNrKGNvbnN0IFN0cmluZyYgbnVtYmVyLCBjb25z
dCBXZWJDb3JlOjpJbnRQb2ludCYpIGZpbmFsOwogI2VuZGlmCisKICNpZiBFTkFCTEUoU0VSVklD
RV9DT05UUk9MUykKLSAgICB2b2lkIGhhbmRsZVNlbGVjdGlvblNlcnZpY2VDbGljayhXZWJDb3Jl
OjpGcmFtZVNlbGVjdGlvbiYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiB0ZWxlcGhvbmVOdW1iZXJz
LCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIG92ZXJyaWRlOwotICAgIGJvb2wgaGFzUmVsZXZh
bnRTZWxlY3Rpb25TZXJ2aWNlcyhib29sIGlzVGV4dE9ubHkpIGNvbnN0IG92ZXJyaWRlOworICAg
IHZvaWQgaGFuZGxlU2VsZWN0aW9uU2VydmljZUNsaWNrKFdlYkNvcmU6OkZyYW1lU2VsZWN0aW9u
JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHRlbGVwaG9uZU51bWJlcnMsIGNvbnN0IFdlYkNvcmU6
OkludFBvaW50JikgZmluYWw7CisgICAgYm9vbCBoYXNSZWxldmFudFNlbGVjdGlvblNlcnZpY2Vz
KGJvb2wgaXNUZXh0T25seSkgY29uc3QgZmluYWw7CiAjZW5kaWYKIAotICAgIGJvb2wgc2hvdWxk
RGlzcGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBz
aG91bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHMoKSBjb25zdCBmaW5hbDsKIAotICAgIHZv
aWQgaGFuZGxlQXV0b0ZpbGxCdXR0b25DbGljayhXZWJDb3JlOjpIVE1MSW5wdXRFbGVtZW50Jikg
b3ZlcnJpZGU7CisgICAgdm9pZCBoYW5kbGVBdXRvRmlsbEJ1dHRvbkNsaWNrKFdlYkNvcmU6OkhU
TUxJbnB1dEVsZW1lbnQmKSBmaW5hbDsKIAogI2lmIEVOQUJMRShXSVJFTEVTU19QTEFZQkFDS19U
QVJHRVQpICYmICFQTEFURk9STShJT1MpCi0gICAgdm9pZCBhZGRQbGF5YmFja1RhcmdldFBpY2tl
ckNsaWVudCh1aW50NjRfdCAvKmNvbnRleHRJZCovKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlbW92
ZVBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2NF90IC8qY29udGV4dElkKi8pIG92ZXJy
aWRlOwotICAgIHZvaWQgc2hvd1BsYXliYWNrVGFyZ2V0UGlja2VyKHVpbnQ2NF90IGNvbnRleHRJ
ZCwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmLCBib29sKSBvdmVycmlkZTsKLSAgICB2b2lkIHBs
YXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50U3RhdGVEaWRDaGFuZ2UodWludDY0X3QsIFdlYkNvcmU6
Ok1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncykgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRN
b2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVuYWJsZWQoYm9vbCkgb3ZlcnJpZGU7Ci0gICAg
dm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlclN0YXRlKGNvbnN0IFN0cmluZyYs
IFdlYkNvcmU6Ok1lZGlhUGxheWJhY2tUYXJnZXRDb250ZXh0OjpTdGF0ZSkgb3ZlcnJpZGU7Cisg
ICAgdm9pZCBhZGRQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudCh1aW50NjRfdCAvKmNvbnRleHRJ
ZCovKSBmaW5hbDsKKyAgICB2b2lkIHJlbW92ZVBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVp
bnQ2NF90IC8qY29udGV4dElkKi8pIGZpbmFsOworICAgIHZvaWQgc2hvd1BsYXliYWNrVGFyZ2V0
UGlja2VyKHVpbnQ2NF90IGNvbnRleHRJZCwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmLCBib29s
KSBmaW5hbDsKKyAgICB2b2lkIHBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50U3RhdGVEaWRDaGFu
Z2UodWludDY0X3QsIFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncykgZmlu
YWw7CisgICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVuYWJsZWQoYm9v
bCkgZmluYWw7CisgICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlclN0YXRl
KGNvbnN0IFN0cmluZyYsIFdlYkNvcmU6Ok1lZGlhUGxheWJhY2tUYXJnZXRDb250ZXh0OjpTdGF0
ZSkgZmluYWw7CiAjZW5kaWYKIAotICAgIHZvaWQgaW1hZ2VPck1lZGlhRG9jdW1lbnRTaXplQ2hh
bmdlZChjb25zdCBXZWJDb3JlOjpJbnRTaXplJikgb3ZlcnJpZGU7Ci0jaWYgRU5BQkxFKFZJREVP
KQotI2lmIFVTRShHU1RSRUFNRVIpCi0gICAgdm9pZCByZXF1ZXN0SW5zdGFsbE1pc3NpbmdNZWRp
YVBsdWdpbnMoY29uc3QgU3RyaW5nJiAvKmRldGFpbHMqLywgY29uc3QgU3RyaW5nJiAvKmRlc2Ny
aXB0aW9uKi8sIFdlYkNvcmU6Ok1lZGlhUGxheWVyUmVxdWVzdEluc3RhbGxNaXNzaW5nUGx1Z2lu
c0NhbGxiYWNrJikgb3ZlcnJpZGU7Ci0jZW5kaWYKKyAgICB2b2lkIGltYWdlT3JNZWRpYURvY3Vt
ZW50U2l6ZUNoYW5nZWQoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYpIGZpbmFsOworCisjaWYgRU5B
QkxFKFZJREVPKSAmJiBVU0UoR1NUUkVBTUVSKQorICAgIHZvaWQgcmVxdWVzdEluc3RhbGxNaXNz
aW5nTWVkaWFQbHVnaW5zKGNvbnN0IFN0cmluZyYgLypkZXRhaWxzKi8sIGNvbnN0IFN0cmluZyYg
LypkZXNjcmlwdGlvbiovLCBXZWJDb3JlOjpNZWRpYVBsYXllclJlcXVlc3RJbnN0YWxsTWlzc2lu
Z1BsdWdpbnNDYWxsYmFjayYpIGZpbmFsOwogI2VuZGlmCiAKLSAgICB2b2lkIGRpZEludmFsaWRh
dGVEb2N1bWVudE1hcmtlclJlY3RzKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRJbnZhbGlkYXRl
RG9jdW1lbnRNYXJrZXJSZWN0cygpIGZpbmFsOwogCiAgICAgU3RyaW5nIG1fY2FjaGVkVG9vbFRp
cDsKICAgICBtdXRhYmxlIFJlZlB0cjxXZWJGcmFtZT4gbV9jYWNoZWRGcmFtZVNldExhcmdlc3RG
cmFtZTsKLSAgICBtdXRhYmxlIGJvb2wgbV9jYWNoZWRNYWluRnJhbWVIYXNIb3Jpem9udGFsU2Ny
b2xsYmFyOwotICAgIG11dGFibGUgYm9vbCBtX2NhY2hlZE1haW5GcmFtZUhhc1ZlcnRpY2FsU2Ny
b2xsYmFyOworICAgIG11dGFibGUgYm9vbCBtX2NhY2hlZE1haW5GcmFtZUhhc0hvcml6b250YWxT
Y3JvbGxiYXIgeyBmYWxzZSB9OworICAgIG11dGFibGUgYm9vbCBtX2NhY2hlZE1haW5GcmFtZUhh
c1ZlcnRpY2FsU2Nyb2xsYmFyIHsgZmFsc2UgfTsKIAotICAgIFdlYlBhZ2UqIG1fcGFnZTsKKyAg
ICBXZWJQYWdlJiBtX3BhZ2U7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xp
ZW50LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRp
dG9yQ2xpZW50LmNwcAppbmRleCA1NGIyN2I0NDA0ODUyNjllNWU4N2Y4MmQwZmI1MDJhMWYwMjJh
YzMzLi44YjgwNzU1MmM0MTE0NTI2MjQ4ODAzODNmOWQzMmFiYWEwNzZiZWZiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVu
dC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJF
ZGl0b3JDbGllbnQuY3BwCkBAIC0yMzgsMjEgKzIzOCwyMSBAQCB2b2lkIFdlYkVkaXRvckNsaWVu
dDo6Z2V0Q2xpZW50UGFzdGVib2FyZERhdGFGb3JSYW5nZShSYW5nZSogcmFuZ2UsIFZlY3RvcjxT
dHJpbgogICAgIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVFZGl0b3JDbGllbnQoKS5nZXRQYXN0ZWJv
YXJkRGF0YUZvclJhbmdlKCptX3BhZ2UsIHJhbmdlLCBwYXN0ZWJvYXJkVHlwZXMsIHBhc3RlYm9h
cmREYXRhKTsKIH0KIAotdm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb1N0ZXAoUGFz
c1JlZlB0cjxVbmRvU3RlcD4gc3RlcCkKK3ZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVu
ZG9TdGVwKFVuZG9TdGVwJiBzdGVwKQogewogICAgIC8vIEZJWE1FOiBBZGQgYXNzZXJ0aW9uIHRo
YXQgdGhlIGNvbW1hbmQgYmVpbmcgcmVhcHBsaWVkIGlzIHRoZSBzYW1lIGNvbW1hbmQgdGhhdCBp
cwogICAgIC8vIGJlaW5nIHBhc3NlZCB0byB1cy4KICAgICBpZiAobV9wYWdlLT5pc0luUmVkbygp
KQogICAgICAgICByZXR1cm47CiAKLSAgICBSZWZQdHI8V2ViVW5kb1N0ZXA+IHdlYlN0ZXAgPSBX
ZWJVbmRvU3RlcDo6Y3JlYXRlKHN0ZXApOwotICAgIG1fcGFnZS0+YWRkV2ViVW5kb1N0ZXAod2Vi
U3RlcC0+c3RlcElEKCksIHdlYlN0ZXAuZ2V0KCkpOwotICAgIHVpbnQzMl90IGVkaXRBY3Rpb24g
PSBzdGF0aWNfY2FzdDx1aW50MzJfdD4od2ViU3RlcC0+c3RlcCgpLT5lZGl0aW5nQWN0aW9uKCkp
OworICAgIGF1dG8gd2ViU3RlcCA9IFdlYlVuZG9TdGVwOjpjcmVhdGUoJnN0ZXApOworICAgIGF1
dG8gZWRpdEFjdGlvbiA9IHN0YXRpY19jYXN0PHVpbnQzMl90Pih3ZWJTdGVwLT5zdGVwKCktPmVk
aXRpbmdBY3Rpb24oKSk7CiAKKyAgICBtX3BhZ2UtPmFkZFdlYlVuZG9TdGVwKHdlYlN0ZXAtPnN0
ZXBJRCgpLCB3ZWJTdGVwLnB0cigpKTsKICAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6UmVnaXN0ZXJFZGl0Q29tbWFuZEZvclVuZG8od2ViU3RlcC0+c3RlcElEKCksIGVk
aXRBY3Rpb24pKTsKIH0KIAotdm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyUmVkb1N0ZXAo
UGFzc1JlZlB0cjxVbmRvU3RlcD4pCit2b2lkIFdlYkVkaXRvckNsaWVudDo6cmVnaXN0ZXJSZWRv
U3RlcChVbmRvU3RlcCYpCiB7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oCmluZGV4IDhkODE3NGRj
OTEzYWY1ZTJjYjMwMTgwNzQyMDVhZDk1ODE5NjRhNjAuLmNlMmJjYzQ3MTg4NGFlZTFkOWRhNWMy
ZGE3YzVjNzhiNmVmODU0ZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuaApAQCAtNzEsOCArNzEsOCBA
QCBwcml2YXRlOgogICAgIHZvaWQgZGlkV3JpdGVTZWxlY3Rpb25Ub1Bhc3RlYm9hcmQoKSBmaW5h
bDsKICAgICB2b2lkIGdldENsaWVudFBhc3RlYm9hcmREYXRhRm9yUmFuZ2UoV2ViQ29yZTo6UmFu
Z2UqLCBWZWN0b3I8U3RyaW5nPiYgcGFzdGVib2FyZFR5cGVzLCBWZWN0b3I8UmVmUHRyPFdlYkNv
cmU6OlNoYXJlZEJ1ZmZlcj4+JiBwYXN0ZWJvYXJkRGF0YSkgZmluYWw7CiAgICAgCi0gICAgdm9p
ZCByZWdpc3RlclVuZG9TdGVwKFBhc3NSZWZQdHI8V2ViQ29yZTo6VW5kb1N0ZXA+KSBmaW5hbDsK
LSAgICB2b2lkIHJlZ2lzdGVyUmVkb1N0ZXAoUGFzc1JlZlB0cjxXZWJDb3JlOjpVbmRvU3RlcD4p
IGZpbmFsOworICAgIHZvaWQgcmVnaXN0ZXJVbmRvU3RlcChXZWJDb3JlOjpVbmRvU3RlcCYpIGZp
bmFsOworICAgIHZvaWQgcmVnaXN0ZXJSZWRvU3RlcChXZWJDb3JlOjpVbmRvU3RlcCYpIGZpbmFs
OwogICAgIHZvaWQgY2xlYXJVbmRvUmVkb09wZXJhdGlvbnMoKSBmaW5hbDsKIAogICAgIGJvb2wg
Y2FuQ29weUN1dChXZWJDb3JlOjpGcmFtZSosIGJvb2wgZGVmYXVsdFZhbHVlKSBjb25zdCBmaW5h
bDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
V2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKaW5kZXggZjE3NzVjNjg2ZjhmNDA2
NTA4Njg1MzUyNWUwMGYxZGQyYjEzMWJkZi4uOGE3NTk0ZTAxM2IyMzE3YTNhMzI3YmFiZDQ0OTJm
OTM0ZTIwMWRiZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3Jl
U3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKQEAgLTcwMSw3
ICs3MDEsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGlj
eUZvclJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9ucwogICAgICAgICBtX2ZyYW1lLT5kaWRS
ZWNlaXZlUG9saWN5RGVjaXNpb24obGlzdGVuZXJJRCwgc3RhdGljX2Nhc3Q8UG9saWN5QWN0aW9u
Pihwb2xpY3lBY3Rpb24pLCAwLCBkb3dubG9hZElEKTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRl
ckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2
aWdhdGlvbkFjdGlvbiYgbmF2aWdhdGlvbkFjdGlvbiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiBy
ZXF1ZXN0LCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4gZm9ybVN0YXRlLCBjb25zdCBTdHJpbmcmIGZy
YW1lTmFtZSwgRnJhbWVQb2xpY3lGdW5jdGlvbiBmdW5jdGlvbikKK3ZvaWQgV2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IE5h
dmlnYXRpb25BY3Rpb24mIG5hdmlnYXRpb25BY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYg
cmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBG
cmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQogewogICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBt
X2ZyYW1lLT5wYWdlKCk7CiAgICAgaWYgKCF3ZWJQYWdlKSB7CkBAIC03MzcsNyArNzM3LDcgQEAg
dm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5k
b3dBY3Rpb24oY29uc3QgTmF2aWdhdGkKICAgICB3ZWJQYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OkRlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihtX2ZyYW1lLT5mcmFtZUlE
KCksIFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbUZyYW1lKGNvcmVGcmFtZSksIG5hdmlnYXRpb25B
Y3Rpb25EYXRhLCByZXF1ZXN0LCBmcmFtZU5hbWUsIGxpc3RlbmVySUQsIFVzZXJEYXRhKFdlYlBy
b2Nlc3M6OnNpbmdsZXRvbigpLnRyYW5zZm9ybU9iamVjdHNUb0hhbmRsZXModXNlckRhdGEuZ2V0
KCkpLmdldCgpKSkpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERl
Y2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgbmF2
aWdhdGlvbkFjdGlvbiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBQYXNzUmVmUHRy
PEZvcm1TdGF0ZT4gcHJwRm9ybVN0YXRlLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQor
dm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0
aW9uQWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIG5hdmlnYXRpb25BY3Rpb24sIGNvbnN0
IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIEZyYW1lUG9s
aWN5RnVuY3Rpb24gZnVuY3Rpb24pCiB7CiAgICAgV2ViUGFnZSogd2ViUGFnZSA9IG1fZnJhbWUt
PnBhZ2UoKTsKICAgICBpZiAoIXdlYlBhZ2UpIHsKQEAgLTc1Miw3ICs3NTIsNiBAQCB2b2lkIFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rp
b24oY29uc3QgTmF2aWdhdAogICAgIH0KIAogICAgIFJlZlB0cjxBUEk6Ok9iamVjdD4gdXNlckRh
dGE7Ci0gICAgUmVmUHRyPEZvcm1TdGF0ZT4gZm9ybVN0YXRlID0gcHJwRm9ybVN0YXRlOwogCiAg
ICAgUmVmUHRyPEluamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbj4gYWN0aW9uID0gSW5qZWN0
ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uOjpjcmVhdGUobV9mcmFtZSwgbmF2aWdhdGlvbkFjdGlv
biwgZm9ybVN0YXRlKTsKIApAQCAtNzgyLDcgKzc4MSw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZp
Z2F0CiAgICAgY2FzZSBOYXZpZ2F0aW9uVHlwZTo6Rm9ybVN1Ym1pdHRlZDoKICAgICBjYXNlIE5h
dmlnYXRpb25UeXBlOjpGb3JtUmVzdWJtaXR0ZWQ6CiAgICAgICAgIGlmIChmb3JtU3RhdGUpCi0g
ICAgICAgICAgICBvcmlnaW5hdGluZ0ZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZv
cm1TdGF0ZS0+c291cmNlRG9jdW1lbnQoKS0+ZnJhbWUoKSk7CisgICAgICAgICAgICBvcmlnaW5h
dGluZ0ZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZvcm1TdGF0ZS0+c291cmNlRG9j
dW1lbnQoKS5mcmFtZSgpKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBOYXZpZ2F0aW9uVHlw
ZTo6QmFja0ZvcndhcmQ6CiAgICAgY2FzZSBOYXZpZ2F0aW9uVHlwZTo6UmVsb2FkOgpAQCAtODQz
LDQwICs4NDIsMzYgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hVbmFibGVU
b0ltcGxlbWVudFBvbGljeShjb25zdCBSZXNvdXJjZUVycm9yJgogICAgIHdlYlBhZ2UtPnNlbmQo
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6VW5hYmxlVG9JbXBsZW1lbnRQb2xpY3kobV9mcmFtZS0+
ZnJhbWVJRCgpLCBlcnJvciwgVXNlckRhdGEoV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkudHJhbnNm
b3JtT2JqZWN0c1RvSGFuZGxlcyh1c2VyRGF0YS5nZXQoKSkuZ2V0KCkpKSk7CiB9CiAKLXZvaWQg
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChQYXNzUmVm
UHRyPEZvcm1TdGF0ZT4gcHJwRm9ybVN0YXRlKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJlZjxGb3JtU3RhdGU+JiYgZm9ybVN0YXRlKQog
ewotICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7CisgICAgYXV0byogd2Vi
UGFnZSA9IG1fZnJhbWUtPnBhZ2UoKTsKICAgICBpZiAoIXdlYlBhZ2UpCiAgICAgICAgIHJldHVy
bjsKIAotICAgIFJlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSA9IHBycEZvcm1TdGF0ZTsKLSAg
ICBIVE1MRm9ybUVsZW1lbnQqIGZvcm0gPSBmb3JtU3RhdGUtPmZvcm0oKTsKKyAgICBhdXRvJiBm
b3JtID0gZm9ybVN0YXRlLT5mb3JtKCk7CiAKLSAgICBXZWJGcmFtZSogc291cmNlRnJhbWUgPSBX
ZWJGcmFtZTo6ZnJvbUNvcmVGcmFtZSgqZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLT5mcmFt
ZSgpKTsKKyAgICBBU1NFUlQoZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLmZyYW1lKCkpOwor
ICAgIGF1dG8qIHNvdXJjZUZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZvcm1TdGF0
ZS0+c291cmNlRG9jdW1lbnQoKS5mcmFtZSgpKTsKICAgICBBU1NFUlQoc291cmNlRnJhbWUpOwog
Ci0gICAgd2ViUGFnZS0+aW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCkud2lsbFNlbmRTdWJtaXRF
dmVudCh3ZWJQYWdlLCBmb3JtLCBtX2ZyYW1lLCBzb3VyY2VGcmFtZSwgZm9ybVN0YXRlLT50ZXh0
RmllbGRWYWx1ZXMoKSk7CisgICAgd2ViUGFnZS0+aW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCku
d2lsbFNlbmRTdWJtaXRFdmVudCh3ZWJQYWdlLCAmZm9ybSwgbV9mcmFtZSwgc291cmNlRnJhbWUs
IGZvcm1TdGF0ZS0+dGV4dEZpZWxkVmFsdWVzKCkpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiBwcnBG
b3JtU3RhdGUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24pCit2b2lkIFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKEZvcm1TdGF0ZSYgZm9ybVN0YXRlLCBG
cmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQogewogICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBt
X2ZyYW1lLT5wYWdlKCk7CiAgICAgaWYgKCF3ZWJQYWdlKQogICAgICAgICByZXR1cm47CiAKLSAg
ICAvLyBGSVhNRTogUGFzcyBtb3JlIG9mIHRoZSBmb3JtIHN0YXRlLgotICAgIFJlZlB0cjxGb3Jt
U3RhdGU+IGZvcm1TdGF0ZSA9IHBycEZvcm1TdGF0ZTsKLSAgICAKLSAgICBIVE1MRm9ybUVsZW1l
bnQqIGZvcm0gPSBmb3JtU3RhdGUtPmZvcm0oKTsKKyAgICBhdXRvJiBmb3JtID0gZm9ybVN0YXRl
LmZvcm0oKTsKIAotICAgIFdlYkZyYW1lKiBzb3VyY2VGcmFtZSA9IFdlYkZyYW1lOjpmcm9tQ29y
ZUZyYW1lKCpmb3JtU3RhdGUtPnNvdXJjZURvY3VtZW50KCktPmZyYW1lKCkpOworICAgIGF1dG8q
IHNvdXJjZUZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZvcm1TdGF0ZS5zb3VyY2VE
b2N1bWVudCgpLmZyYW1lKCkpOwogICAgIEFTU0VSVChzb3VyY2VGcmFtZSk7CiAKLSAgICBjb25z
dCBWZWN0b3I8c3RkOjpwYWlyPFN0cmluZywgU3RyaW5nPj4mIHZhbHVlcyA9IGZvcm1TdGF0ZS0+
dGV4dEZpZWxkVmFsdWVzKCk7CisgICAgYXV0byYgdmFsdWVzID0gZm9ybVN0YXRlLnRleHRGaWVs
ZFZhbHVlcygpOwogCiAgICAgUmVmUHRyPEFQSTo6T2JqZWN0PiB1c2VyRGF0YTsKLSAgICB3ZWJQ
YWdlLT5pbmplY3RlZEJ1bmRsZUZvcm1DbGllbnQoKS53aWxsU3VibWl0Rm9ybSh3ZWJQYWdlLCBm
b3JtLCBtX2ZyYW1lLCBzb3VyY2VGcmFtZSwgdmFsdWVzLCB1c2VyRGF0YSk7Ci0KKyAgICB3ZWJQ
YWdlLT5pbmplY3RlZEJ1bmRsZUZvcm1DbGllbnQoKS53aWxsU3VibWl0Rm9ybSh3ZWJQYWdlLCAm
Zm9ybSwgbV9mcmFtZSwgc291cmNlRnJhbWUsIHZhbHVlcywgdXNlckRhdGEpOwogCiAgICAgdWlu
dDY0X3QgbGlzdGVuZXJJRCA9IG1fZnJhbWUtPnNldFVwUG9saWN5TGlzdGVuZXIoV1RGTW92ZShm
dW5jdGlvbikpOwogCkBAIC0xNDAwLDE0ICsxMzk1LDEzIEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZChEb2N1bWVudExvYWRlciAq
ZG9jCiAgICAgbV9mcmFtZS0+Y29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKGRvY3Vt
ZW50TG9hZGVyLCBzZXNzaW9uSUQsIHJlcXVlc3QsIHJlc3BvbnNlKTsKIH0KIAotUmVmUHRyPEZy
YW1lPiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlRnJhbWUoY29uc3QgVVJMJiB1cmwsIGNv
bnN0IFN0cmluZyYgbmFtZSwgSFRNTEZyYW1lT3duZXJFbGVtZW50KiBvd25lckVsZW1lbnQsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg
U3RyaW5nJiByZWZlcnJlciwgYm9vbCAvKmFsbG93c1Njcm9sbGluZyovLCBpbnQgLyptYXJnaW5X
aWR0aCovLCBpbnQgLyptYXJnaW5IZWlnaHQqLykKK1JlZlB0cjxGcmFtZT4gV2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OmNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIG5hbWUs
IEhUTUxGcmFtZU93bmVyRWxlbWVudCYgb3duZXJFbGVtZW50LAorICAgIGNvbnN0IFN0cmluZyYg
cmVmZXJyZXIsIGJvb2wgLyphbGxvd3NTY3JvbGxpbmcqLywgaW50IC8qbWFyZ2luV2lkdGgqLywg
aW50IC8qbWFyZ2luSGVpZ2h0Ki8pCiB7Ci0gICAgV2ViUGFnZSogd2ViUGFnZSA9IG1fZnJhbWUt
PnBhZ2UoKTsKKyAgICBhdXRvKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpOwogCi0gICAgUmVm
UHRyPFdlYkZyYW1lPiBzdWJmcmFtZSA9IFdlYkZyYW1lOjpjcmVhdGVTdWJmcmFtZSh3ZWJQYWdl
LCBuYW1lLCBvd25lckVsZW1lbnQpOwotCi0gICAgRnJhbWUqIGNvcmVTdWJmcmFtZSA9IHN1YmZy
YW1lLT5jb3JlRnJhbWUoKTsKKyAgICBhdXRvIHN1YmZyYW1lID0gV2ViRnJhbWU6OmNyZWF0ZVN1
YmZyYW1lKHdlYlBhZ2UsIG5hbWUsICZvd25lckVsZW1lbnQpOworICAgIGF1dG8qIGNvcmVTdWJm
cmFtZSA9IHN1YmZyYW1lLT5jb3JlRnJhbWUoKTsKICAgICBpZiAoIWNvcmVTdWJmcmFtZSkKICAg
ICAgICAgcmV0dXJuIG51bGxwdHI7CiAKQEAgLTE0MjcsNyArMTQyMSw3IEBAIFJlZlB0cjxGcmFt
ZT4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYgdXJsLCBjb25z
dCBTdHJpbmcmIG5hCiAgICAgcmV0dXJuIGNvcmVTdWJmcmFtZTsKIH0KIAotUmVmUHRyPFdpZGdl
dD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiwgSFRN
TFBsdWdJbkVsZW1lbnQqIHBsdWdpbkVsZW1lbnQsIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBWZWN0
b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVz
LCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlLCBib29sIGxvYWRNYW51YWxseSkKK1JlZlB0cjxXaWRn
ZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYsIEhU
TUxQbHVnSW5FbGVtZW50JiBwbHVnaW5FbGVtZW50LCBjb25zdCBVUkwmIHVybCwgY29uc3QgVmVj
dG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVl
cywgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgYm9vbCBsb2FkTWFudWFsbHkpCiB7CiAgICAgQVNT
RVJUKHBhcmFtTmFtZXMuc2l6ZSgpID09IHBhcmFtVmFsdWVzLnNpemUoKSk7CiAgICAgQVNTRVJU
KG1fZnJhbWUtPnBhZ2UoKSk7CkBAIC0xNDQ0LDExICsxNDM4LDExIEBAIFJlZlB0cjxXaWRnZXQ+
IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYsIEhUTUxQ
bHVnSW5FbGVtCiAjZW5kaWYKIAogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQotICAg
IGF1dG8gcGx1Z2luID0gbV9mcmFtZS0+cGFnZSgpLT5jcmVhdGVQbHVnaW4obV9mcmFtZSwgcGx1
Z2luRWxlbWVudCwgcGFyYW1ldGVycywgcGFyYW1ldGVycy5taW1lVHlwZSk7CisgICAgYXV0byBw
bHVnaW4gPSBtX2ZyYW1lLT5wYWdlKCktPmNyZWF0ZVBsdWdpbihtX2ZyYW1lLCAmcGx1Z2luRWxl
bWVudCwgcGFyYW1ldGVycywgcGFyYW1ldGVycy5taW1lVHlwZSk7CiAgICAgaWYgKCFwbHVnaW4p
CiAgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgcmV0dXJuIFBsdWdpblZpZXc6OmNyZWF0
ZShwbHVnaW5FbGVtZW50LCBXVEZNb3ZlKHBsdWdpbiksIHBhcmFtZXRlcnMpOworICAgIHJldHVy
biBQbHVnaW5WaWV3OjpjcmVhdGUocGx1Z2luRWxlbWVudCwgcGx1Z2luLnJlbGVhc2VOb25OdWxs
KCksIHBhcmFtZXRlcnMpOwogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0ocGx1Z2luRWxlbWVudCk7
CiAgICAgcmV0dXJuIG51bGxwdHI7CkBAIC0xNDU4LDEzICsxNDUyLDE0IEBAIFJlZlB0cjxXaWRn
ZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYsIEhU
TUxQbHVnSW5FbGVtCiB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpyZWNyZWF0ZVBsdWdpbihX
aWRnZXQqIHdpZGdldCkKIHsKICNpZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKLSAgICBB
U1NFUlQod2lkZ2V0ICYmIHdpZGdldC0+aXNQbHVnaW5WaWV3QmFzZSgpKTsKKyAgICBBU1NFUlQo
d2lkZ2V0KTsKKyAgICBBU1NFUlQod2lkZ2V0LT5pc1BsdWdpblZpZXdCYXNlKCkpOwogICAgIEFT
U0VSVChtX2ZyYW1lLT5wYWdlKCkpOwogCi0gICAgUGx1Z2luVmlldyogcGx1Z2luVmlldyA9IHN0
YXRpY19jYXN0PFBsdWdpblZpZXcqPih3aWRnZXQpOworICAgIGF1dG8mIHBsdWdpblZpZXcgPSBz
dGF0aWNfY2FzdDxQbHVnaW5WaWV3Jj4oKndpZGdldCk7CiAgICAgU3RyaW5nIG5ld01JTUVUeXBl
OwotICAgIGF1dG8gcGx1Z2luID0gbV9mcmFtZS0+cGFnZSgpLT5jcmVhdGVQbHVnaW4obV9mcmFt
ZSwgcGx1Z2luVmlldy0+cGx1Z2luRWxlbWVudCgpLCBwbHVnaW5WaWV3LT5pbml0aWFsUGFyYW1l
dGVycygpLCBuZXdNSU1FVHlwZSk7Ci0gICAgcGx1Z2luVmlldy0+cmVjcmVhdGVBbmRJbml0aWFs
aXplKFdURk1vdmUocGx1Z2luKSk7CisgICAgYXV0byBwbHVnaW4gPSBtX2ZyYW1lLT5wYWdlKCkt
PmNyZWF0ZVBsdWdpbihtX2ZyYW1lLCBwbHVnaW5WaWV3LnBsdWdpbkVsZW1lbnQoKSwgcGx1Z2lu
Vmlldy5pbml0aWFsUGFyYW1ldGVycygpLCBuZXdNSU1FVHlwZSk7CisgICAgcGx1Z2luVmlldy5y
ZWNyZWF0ZUFuZEluaXRpYWxpemUocGx1Z2luLnJlbGVhc2VOb25OdWxsKCkpOwogI2Vsc2UKICAg
ICBVTlVTRURfUEFSQU0od2lkZ2V0KTsKICNlbmRpZgpAQCAtMTQ3Nyw5ICsxNDcyLDEwIEBAIHZv
aWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnJlZGlyZWN0RGF0YVRvUGx1Z2luKFdpZGdldCogcGx1
Z2luV2lkZ2V0KQogfQogCiAjaWYgRU5BQkxFKFdFQkdMKQorCiBXZWJDb3JlOjpXZWJHTExvYWRQ
b2xpY3kgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OndlYkdMUG9saWN5Rm9yVVJMKGNvbnN0IFN0cmlu
ZyYgdXJsKSBjb25zdAogewotICAgIGlmIChXZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFn
ZSgpKQorICAgIGlmIChhdXRvKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpKQogICAgICAgICBy
ZXR1cm4gd2ViUGFnZS0+d2ViR0xQb2xpY3lGb3JVUkwobV9mcmFtZSwgdXJsKTsKIAogICAgIHJl
dHVybiBXZWJHTEFsbG93Q3JlYXRpb247CkBAIC0xNDg3LDMxICsxNDgzLDMyIEBAIFdlYkNvcmU6
OldlYkdMTG9hZFBvbGljeSBXZWJGcmFtZUxvYWRlckNsaWVudDo6d2ViR0xQb2xpY3lGb3JVUkwo
Y29uc3QgU3RyaW5nJiB1CiAKIFdlYkNvcmU6OldlYkdMTG9hZFBvbGljeSBXZWJGcmFtZUxvYWRl
ckNsaWVudDo6cmVzb2x2ZVdlYkdMUG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYgdXJsKSBjb25z
dAogewotICAgIGlmIChXZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpKQorICAgIGlm
IChhdXRvKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpKQogICAgICAgICByZXR1cm4gd2ViUGFn
ZS0+cmVzb2x2ZVdlYkdMUG9saWN5Rm9yVVJMKG1fZnJhbWUsIHVybCk7CiAKICAgICByZXR1cm4g
V2ViR0xBbGxvd0NyZWF0aW9uOwogfQotI2VuZGlmIC8vIEVOQUJMRShXRUJHTCkKIAotUGFzc1Jl
ZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0
KGNvbnN0IEludFNpemUmIHBsdWdpblNpemUsIEhUTUxBcHBsZXRFbGVtZW50KiBhcHBsZXRFbGVt
ZW50LCBjb25zdCBVUkwmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3Qg
VmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKQorI2VuZGlmCisKK1JlZlB0cjxXaWRnZXQ+IFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUm
IHBsdWdpblNpemUsIEhUTUxBcHBsZXRFbGVtZW50JiBhcHBsZXRFbGVtZW50LCBjb25zdCBVUkwm
LCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4m
IHBhcmFtVmFsdWVzKQogewogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQotICAgIGF1
dG8gcGx1Z2luID0gY3JlYXRlUGx1Z2luKHBsdWdpblNpemUsIGFwcGxldEVsZW1lbnQsIFVSTCgp
LCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcywgYXBwbGV0RWxlbWVudC0+c2VydmljZVR5cGUoKSwg
ZmFsc2UpOworICAgIGF1dG8gcGx1Z2luID0gY3JlYXRlUGx1Z2luKHBsdWdpblNpemUsIGFwcGxl
dEVsZW1lbnQsIFVSTCgpLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcywgYXBwbGV0RWxlbWVudC5z
ZXJ2aWNlVHlwZSgpLCBmYWxzZSk7CiAgICAgaWYgKCFwbHVnaW4pIHsKLSAgICAgICAgaWYgKFdl
YlBhZ2UqIHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCkpIHsKLSAgICAgICAgICAgIFN0cmluZyBm
cmFtZVVSTFN0cmluZyA9IG1fZnJhbWUtPmNvcmVGcmFtZSgpLT5sb2FkZXIoKS5kb2N1bWVudExv
YWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwotICAgICAgICAgICAgU3RyaW5nIHBhZ2VV
UkxTdHJpbmcgPSB3ZWJQYWdlLT5jb3JlUGFnZSgpLT5tYWluRnJhbWUoKS5sb2FkZXIoKS5kb2N1
bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwotICAgICAgICAgICAgd2ViUGFn
ZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRGYWlsVG9Jbml0aWFsaXplUGx1Z2lu
KGFwcGxldEVsZW1lbnQtPnNlcnZpY2VUeXBlKCksIGZyYW1lVVJMU3RyaW5nLCBwYWdlVVJMU3Ry
aW5nKSk7CisgICAgICAgIGlmIChhdXRvKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpKSB7Cisg
ICAgICAgICAgICBhdXRvIGZyYW1lVVJMU3RyaW5nID0gbV9mcmFtZS0+Y29yZUZyYW1lKCktPmxv
YWRlcigpLmRvY3VtZW50TG9hZGVyKCktPnJlc3BvbnNlVVJMKCkuc3RyaW5nKCk7CisgICAgICAg
ICAgICBhdXRvIHBhZ2VVUkxTdHJpbmcgPSB3ZWJQYWdlLT5jb3JlUGFnZSgpLT5tYWluRnJhbWUo
KS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOworICAg
ICAgICAgICAgd2ViUGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRGYWlsVG9J
bml0aWFsaXplUGx1Z2luKGFwcGxldEVsZW1lbnQuc2VydmljZVR5cGUoKSwgZnJhbWVVUkxTdHJp
bmcsIHBhZ2VVUkxTdHJpbmcpKTsKICAgICAgICAgfQogICAgIH0KLSAgICByZXR1cm4gV1RGTW92
ZShwbHVnaW4pOworICAgIHJldHVybiBwbHVnaW47CiAjZWxzZQogICAgIFVOVVNFRF9QQVJBTShw
bHVnaW5TaXplKTsKICAgICBVTlVTRURfUEFSQU0oYXBwbGV0RWxlbWVudCk7CiAgICAgVU5VU0VE
X1BBUkFNKHBhcmFtTmFtZXMpOwogICAgIFVOVVNFRF9QQVJBTShwYXJhbVZhbHVlcyk7Ci0gICAg
cmV0dXJuIDA7CisgICAgcmV0dXJuIG51bGxwdHI7CiAjZW5kaWYKIH0KIApAQCAtMTcxNywxMyAr
MTcxNCwxMyBAQCBib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRGb3JjZVVuaXZlcnNh
bEFjY2Vzc0Zyb21Mb2NhbFVSTChjb25zdCBXZWJDb3JlOgogICAgIHJldHVybiB3ZWJQYWdlLT5p
bmplY3RlZEJ1bmRsZUxvYWRlckNsaWVudCgpLnNob3VsZEZvcmNlVW5pdmVyc2FsQWNjZXNzRnJv
bUxvY2FsVVJMKHdlYlBhZ2UsIHVybC5zdHJpbmcoKSk7CiB9CiAKLVBhc3NSZWZQdHI8RnJhbWVO
ZXR3b3JraW5nQ29udGV4dD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtpbmdD
b250ZXh0KCkKK1JlZjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBXZWJGcmFtZUxvYWRlckNsaWVu
dDo6Y3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKQogewotICAgIGF1dG8gY29udGV4dCA9IFdlYkZy
YW1lTmV0d29ya2luZ0NvbnRleHQ6OmNyZWF0ZShtX2ZyYW1lKTsKLSAgICByZXR1cm4gV1RGTW92
ZShjb250ZXh0KTsKKyAgICByZXR1cm4gV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dDo6Y3JlYXRl
KG1fZnJhbWUpOwogfQogCiAjaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQorCiB2b2lkIFdl
YkZyYW1lTG9hZGVyQ2xpZW50Ojpjb250ZW50RmlsdGVyRGlkQmxvY2tMb2FkKFdlYkNvcmU6OkNv
bnRlbnRGaWx0ZXJVbmJsb2NrSGFuZGxlciB1bmJsb2NrSGFuZGxlcikKIHsKICAgICBpZiAoIXVu
YmxvY2tIYW5kbGVyLm5lZWRzVUlQcm9jZXNzKCkpIHsKQEAgLTE3MzQsMTIgKzE3MzEsMTUgQEAg
dm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y29udGVudEZpbHRlckRpZEJsb2NrTG9hZChXZWJD
b3JlOjpDb250ZW50RmlsdGVyVW5ibG8KICAgICBpZiAoV2ViUGFnZSogd2ViUGFnZSB7IG1fZnJh
bWUtPnBhZ2UoKSB9KQogICAgICAgICB3ZWJQYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OkNvbnRlbnRGaWx0ZXJEaWRCbG9ja0xvYWRGb3JGcmFtZSh1bmJsb2NrSGFuZGxlciwgbV9m
cmFtZS0+ZnJhbWVJRCgpKSk7CiB9CisKICNlbmRpZgogCiAjaWYgRU5BQkxFKFJFUVVFU1RfQVVU
T0NPTVBMRVRFKQotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlkUmVxdWVzdEF1dG9jb21w
bGV0ZShQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4pCisKK3ZvaWQgV2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OmRpZFJlcXVlc3RBdXRvY29tcGxldGUoUmVmPFdlYkNvcmU6OkZvcm1TdGF0ZT4m
JikKIHsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnByZWZldGNo
RE5TKGNvbnN0IFN0cmluZyYgaG9zdG5hbWUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmggYi9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgK
aW5kZXggZGIyZjk0OTE0MDcyNDA3NzczYmQwODZmN2Y4YjlhY2QwN2VlYTc0Ni4uMGI4MjliNGEy
OTA3Yzg0ZTg5MTYwYzE4N2UzOGRlNGFmOTNhNTE5OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJD
bGllbnQuaApAQCAtMzYsNyArMzYsNyBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIGNsYXNzIFBsdWdp
blZpZXc7CiBjbGFzcyBXZWJGcmFtZTsKICAgICAKLWNsYXNzIFdlYkZyYW1lTG9hZGVyQ2xpZW50
IDogcHVibGljIFdlYkNvcmU6OkZyYW1lTG9hZGVyQ2xpZW50IHsKK2NsYXNzIFdlYkZyYW1lTG9h
ZGVyQ2xpZW50IGZpbmFsIDogcHVibGljIFdlYkNvcmU6OkZyYW1lTG9hZGVyQ2xpZW50IHsKIHB1
YmxpYzoKICAgICBXZWJGcmFtZUxvYWRlckNsaWVudCgpOwogICAgIH5XZWJGcmFtZUxvYWRlckNs
aWVudCgpOwpAQCAtNDksMjE3ICs0OSwyMTYgQEAgcHVibGljOgogICAgIHZvaWQgc2V0VXNlSWNv
bkxvYWRpbmdDbGllbnQoYm9vbCB1c2VJY29uTG9hZGluZ0NsaWVudCkgeyBtX3VzZUljb25Mb2Fk
aW5nQ2xpZW50ID0gdXNlSWNvbkxvYWRpbmdDbGllbnQ7IH0KIAogcHJpdmF0ZToKLSAgICB2b2lk
IGZyYW1lTG9hZGVyRGVzdHJveWVkKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBmcmFtZUxvYWRlckRl
c3Ryb3llZCgpIGZpbmFsOwogCi0gICAgYm9vbCBoYXNIVE1MVmlldygpIGNvbnN0IG92ZXJyaWRl
OwotICAgIGJvb2wgaGFzV2ViVmlldygpIGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wgaGFzSFRN
TFZpZXcoKSBjb25zdCBmaW5hbDsKKyAgICBib29sIGhhc1dlYlZpZXcoKSBjb25zdCBmaW5hbDsK
ICAgICAKLSAgICB2b2lkIG1ha2VSZXByZXNlbnRhdGlvbihXZWJDb3JlOjpEb2N1bWVudExvYWRl
ciopIG92ZXJyaWRlOworICAgIHZvaWQgbWFrZVJlcHJlc2VudGF0aW9uKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyKikgZmluYWw7CiAjaWYgUExBVEZPUk0oSU9TKQotICAgIGJvb2wgZm9yY2VMYXlv
dXRPblJlc3RvcmVGcm9tUGFnZUNhY2hlKCkgb3ZlcnJpZGU7CisgICAgYm9vbCBmb3JjZUxheW91
dE9uUmVzdG9yZUZyb21QYWdlQ2FjaGUoKSBmaW5hbDsKICNlbmRpZgotICAgIHZvaWQgZm9yY2VM
YXlvdXRGb3JOb25IVE1MKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBmb3JjZUxheW91dEZvck5vbkhU
TUwoKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHNldENvcGllc09uU2Nyb2xsKCkgb3ZlcnJpZGU7
CisgICAgdm9pZCBzZXRDb3BpZXNPblNjcm9sbCgpIGZpbmFsOwogICAgIAotICAgIHZvaWQgZGV0
YWNoZWRGcm9tUGFyZW50MigpIG92ZXJyaWRlOwotICAgIHZvaWQgZGV0YWNoZWRGcm9tUGFyZW50
MygpIG92ZXJyaWRlOworICAgIHZvaWQgZGV0YWNoZWRGcm9tUGFyZW50MigpIGZpbmFsOworICAg
IHZvaWQgZGV0YWNoZWRGcm9tUGFyZW50MygpIGZpbmFsOwogICAgIAotICAgIHZvaWQgYXNzaWdu
SWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJD
b3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92
ZXJyaWRlOworICAgIHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOwogICAgIAotICAgIHZvaWQgZGlzcGF0Y2hXaWxs
U2VuZFJlcXVlc3QoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpIG92ZXJyaWRlOwotICAgIGJvb2wgc2hvdWxkVXNl
Q3JlZGVudGlhbFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVu
dGljYXRpb25DaGFsbGVuZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikgb3Zl
cnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChXZWJDb3JlOjpEb2N1bWVu
dExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1
ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkg
ZmluYWw7CisgICAgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1
bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgZmluYWw7CisgICAgdm9pZCBk
aXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShXZWJDb3JlOjpEb2N1bWVu
dExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6QXV0aGVu
dGljYXRpb25DaGFsbGVuZ2UmKSBmaW5hbDsKICNpZiBVU0UoUFJPVEVDVElPTl9TUEFDRV9BVVRI
X0NBTExCQUNLKQotICAgIGJvb2wgY2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFj
ZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29u
c3QgV2ViQ29yZTo6UHJvdGVjdGlvblNwYWNlJikgb3ZlcnJpZGU7CisgICAgYm9vbCBjYW5BdXRo
ZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpQcm90ZWN0aW9uU3BhY2Um
KSBmaW5hbDsKICNlbmRpZgogI2lmIFBMQVRGT1JNKElPUykKLSAgICBSZXRhaW5QdHI8Q0ZEaWN0
aW9uYXJ5UmVmPiBjb25uZWN0aW9uUHJvcGVydGllcyhXZWJDb3JlOjpEb2N1bWVudExvYWRlcios
IHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgb3ZlcnJpZGU7CisgICAgUmV0YWluUHRyPENGRGlj
dGlvbmFyeVJlZj4gY29ubmVjdGlvblByb3BlcnRpZXMoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIq
LCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIGZpbmFsOwogI2VuZGlmCi0gICAgdm9pZCBkaXNw
YXRjaERpZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIG92ZXJy
aWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChXZWJDb3JlOjpE
b2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgaW50IGRhdGFMZW5ndGgp
IG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBvdmVycmlkZTsKLSAgICB2
b2lkIGRpc3BhdGNoRGlkRmFpbExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNp
Z25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVy
cmlkZTsKLSAgICBib29sIGRpc3BhdGNoRGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlKFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jiwg
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGludCBsZW5ndGgpIG92ZXJyaWRlOwor
ICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVz
cG9uc2UmKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgo
V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGludCBk
YXRhTGVuZ3RoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhXZWJD
b3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgZmluYWw7Cisg
ICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikg
ZmluYWw7CisgICAgYm9vbCBkaXNwYXRjaERpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYs
IGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBpbnQgbGVuZ3RoKSBmaW5hbDsKICNp
ZiBFTkFCTEUoREFUQV9ERVRFQ1RJT04pCi0gICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaERhdGFE
ZXRlY3Rpb24oTlNBcnJheSAqZGV0ZWN0aW9uUmVzdWx0cykgb3ZlcnJpZGU7CisgICAgdm9pZCBk
aXNwYXRjaERpZEZpbmlzaERhdGFEZXRlY3Rpb24oTlNBcnJheSAqZGV0ZWN0aW9uUmVzdWx0cykg
ZmluYWw7CiAjZW5kaWYKICAgICAKLSAgICB2b2lkIGRpc3BhdGNoRGlkRGlzcGF0Y2hPbmxvYWRF
dmVudHMoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVNlcnZlclJlZGly
ZWN0Rm9yUHJvdmlzaW9uYWxMb2FkKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZENo
YW5nZVByb3Zpc2lvbmFsVVJMKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZENhbmNl
bENsaWVudFJlZGlyZWN0KCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxQZXJmb3Jt
Q2xpZW50UmVkaXJlY3QoY29uc3QgV2ViQ29yZTo6VVJMJiwgZG91YmxlIGludGVydmFsLCBkb3Vi
bGUgZmlyZURhdGUpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRDaGFuZ2VMb2NhdGlv
bldpdGhpblBhZ2UoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUHVzaFN0YXRlV2l0
aGluUGFnZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZXBsYWNlU3RhdGVXaXRo
aW5QYWdlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFBvcFN0YXRlV2l0aGluUGFn
ZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hXaWxsQ2xvc2UoKSBvdmVycmlkZTsKLSAg
ICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUljb24oKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3Bh
dGNoRGlkU3RhcnRQcm92aXNpb25hbExvYWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNo
RGlkUmVjZWl2ZVRpdGxlKGNvbnN0IFdlYkNvcmU6OlN0cmluZ1dpdGhEaXJlY3Rpb24mKSBvdmVy
cmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkQ29tbWl0TG9hZChzdGQ6Om9wdGlvbmFsPFdlYkNv
cmU6Okhhc0luc2VjdXJlQ29udGVudD4pIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRG
YWlsUHJvdmlzaW9uYWxMb2FkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlk
ZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbExvYWQoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VF
cnJvciYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hEb2N1bWVudExvYWQo
KSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZCgpIG92ZXJyaWRlOwot
Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlYWNoTGF5b3V0TWlsZXN0b25lKFdlYkNvcmU6OkxheW91
dE1pbGVzdG9uZXMpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRMYXlvdXQoKSBvdmVy
cmlkZTsKLQotICAgIFdlYkNvcmU6OkZyYW1lKiBkaXNwYXRjaENyZWF0ZVBhZ2UoY29uc3QgV2Vi
Q29yZTo6TmF2aWdhdGlvbkFjdGlvbiYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hTaG93
KCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERpZERpc3BhdGNoT25sb2FkRXZlbnRzKCkg
ZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVTZXJ2ZXJSZWRpcmVjdEZvclByb3Zp
c2lvbmFsTG9hZCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRDaGFuZ2VQcm92aXNpb25h
bFVSTCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRDYW5jZWxDbGllbnRSZWRpcmVjdCgp
IGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsUGVyZm9ybUNsaWVudFJlZGlyZWN0KGNvbnN0
IFdlYkNvcmU6OlVSTCYsIGRvdWJsZSBpbnRlcnZhbCwgZG91YmxlIGZpcmVEYXRlKSBmaW5hbDsK
KyAgICB2b2lkIGRpc3BhdGNoRGlkQ2hhbmdlTG9jYXRpb25XaXRoaW5QYWdlKCkgZmluYWw7Cisg
ICAgdm9pZCBkaXNwYXRjaERpZFB1c2hTdGF0ZVdpdGhpblBhZ2UoKSBmaW5hbDsKKyAgICB2b2lk
IGRpc3BhdGNoRGlkUmVwbGFjZVN0YXRlV2l0aGluUGFnZSgpIGZpbmFsOworICAgIHZvaWQgZGlz
cGF0Y2hEaWRQb3BTdGF0ZVdpdGhpblBhZ2UoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoV2ls
bENsb3NlKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVJY29uKCkgZmluYWw7
CisgICAgdm9pZCBkaXNwYXRjaERpZFN0YXJ0UHJvdmlzaW9uYWxMb2FkKCkgZmluYWw7CisgICAg
dm9pZCBkaXNwYXRjaERpZFJlY2VpdmVUaXRsZShjb25zdCBXZWJDb3JlOjpTdHJpbmdXaXRoRGly
ZWN0aW9uJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZENvbW1pdExvYWQoc3RkOjpvcHRp
b25hbDxXZWJDb3JlOjpIYXNJbnNlY3VyZUNvbnRlbnQ+KSBmaW5hbDsKKyAgICB2b2lkIGRpc3Bh
dGNoRGlkRmFpbFByb3Zpc2lvbmFsTG9hZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikg
ZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkKGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlRXJyb3ImKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoRG9jdW1lbnRMb2Fk
KCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWQoKSBmaW5hbDsKKworICAg
IHZvaWQgZGlzcGF0Y2hEaWRSZWFjaExheW91dE1pbGVzdG9uZShXZWJDb3JlOjpMYXlvdXRNaWxl
c3RvbmVzKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkTGF5b3V0KCkgZmluYWw7CisKKyAg
ICBXZWJDb3JlOjpGcmFtZSogZGlzcGF0Y2hDcmVhdGVQYWdlKGNvbnN0IFdlYkNvcmU6Ok5hdmln
YXRpb25BY3Rpb24mKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoU2hvdygpIGZpbmFsOwogICAg
IAotICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JSZXNwb25zZShjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgV2Vi
Q29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERl
Y2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0
aW9uJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgUGFzc1JlZlB0cjxXZWJDb3Jl
OjpGb3JtU3RhdGU+LCBjb25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgV2ViQ29yZTo6RnJhbWVQb2xp
Y3lGdW5jdGlvbikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5h
dmlnYXRpb25BY3Rpb24oY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFdl
YkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0YXRlPiwg
V2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBjYW5jZWxQ
b2xpY3lDaGVjaygpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JS
ZXNwb25zZShjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0JiwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7Cisg
ICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBXZWJD
b3JlOjpOYXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jiwg
V2ViQ29yZTo6Rm9ybVN0YXRlKiwgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIFdlYkNvcmU6OkZy
YW1lUG9saWN5RnVuY3Rpb24pIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lG
b3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mLCBjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpGb3JtU3RhdGUqLCBXZWJDb3Jl
OjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsKKyAgICB2b2lkIGNhbmNlbFBvbGljeUNoZWNr
KCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBkaXNwYXRjaFVuYWJsZVRvSW1wbGVtZW50UG9saWN5
KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3Bh
dGNoVW5hYmxlVG9JbXBsZW1lbnRQb2xpY3koY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYp
IGZpbmFsOwogICAgIAotICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFBhc3NS
ZWZQdHI8V2ViQ29yZTo6Rm9ybVN0YXRlPikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdp
bGxTdWJtaXRGb3JtKFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0YXRlPiwgV2ViQ29yZTo6RnJh
bWVQb2xpY3lGdW5jdGlvbikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5kU3Vi
bWl0RXZlbnQoUmVmPFdlYkNvcmU6OkZvcm1TdGF0ZT4mJikgZmluYWw7CisgICAgdm9pZCBkaXNw
YXRjaFdpbGxTdWJtaXRGb3JtKFdlYkNvcmU6OkZvcm1TdGF0ZSYsIFdlYkNvcmU6OkZyYW1lUG9s
aWN5RnVuY3Rpb24pIGZpbmFsOwogICAgIAotICAgIHZvaWQgcmV2ZXJ0VG9Qcm92aXNpb25hbFN0
YXRlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRNYWlu
RG9jdW1lbnRFcnJvcihXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlRXJyb3ImKSBvdmVycmlkZTsKKyAgICB2b2lkIHJldmVydFRvUHJvdmlzaW9uYWxTdGF0
ZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIGZpbmFsOworICAgIHZvaWQgc2V0TWFpbkRvY3Vt
ZW50RXJyb3IoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZUVycm9yJikgZmluYWw7CiAgICAgCi0gICAgdm9pZCBzZXRNYWluRnJhbWVEb2N1bWVudFJlYWR5
KGJvb2wpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0TWFpbkZyYW1lRG9jdW1lbnRSZWFkeShib29s
KSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHN0YXJ0RG93bmxvYWQoY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0JiwgY29uc3QgU3RyaW5nJiBzdWdnZXN0ZWROYW1lID0gU3RyaW5nKCkpIG92
ZXJyaWRlOworICAgIHZvaWQgc3RhcnREb3dubG9hZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QmLCBjb25zdCBTdHJpbmcmIHN1Z2dlc3RlZE5hbWUgPSBTdHJpbmcoKSkgZmluYWw7CiAg
ICAgCi0gICAgdm9pZCB3aWxsQ2hhbmdlVGl0bGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBv
dmVycmlkZTsKLSAgICB2b2lkIGRpZENoYW5nZVRpdGxlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
Kikgb3ZlcnJpZGU7CisgICAgdm9pZCB3aWxsQ2hhbmdlVGl0bGUoV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXIqKSBmaW5hbDsKKyAgICB2b2lkIGRpZENoYW5nZVRpdGxlKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKikgZmluYWw7CiAKLSAgICB2b2lkIHdpbGxSZXBsYWNlTXVsdGlwYXJ0Q29udGVudCgp
IG92ZXJyaWRlOwotICAgIHZvaWQgZGlkUmVwbGFjZU11bHRpcGFydENvbnRlbnQoKSBvdmVycmlk
ZTsKKyAgICB2b2lkIHdpbGxSZXBsYWNlTXVsdGlwYXJ0Q29udGVudCgpIGZpbmFsOworICAgIHZv
aWQgZGlkUmVwbGFjZU11bHRpcGFydENvbnRlbnQoKSBmaW5hbDsKIAotICAgIHZvaWQgY29tbWl0
dGVkTG9hZChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IGNoYXIqLCBpbnQpIG92ZXJy
aWRlOwotICAgIHZvaWQgZmluaXNoZWRMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikg
b3ZlcnJpZGU7CisgICAgdm9pZCBjb21taXR0ZWRMb2FkKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
KiwgY29uc3QgY2hhciosIGludCkgZmluYWw7CisgICAgdm9pZCBmaW5pc2hlZExvYWRpbmcoV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXIqKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHVwZGF0ZUdsb2Jh
bEhpc3RvcnkoKSBvdmVycmlkZTsKLSAgICB2b2lkIHVwZGF0ZUdsb2JhbEhpc3RvcnlSZWRpcmVj
dExpbmtzKCkgb3ZlcnJpZGU7CisgICAgdm9pZCB1cGRhdGVHbG9iYWxIaXN0b3J5KCkgZmluYWw7
CisgICAgdm9pZCB1cGRhdGVHbG9iYWxIaXN0b3J5UmVkaXJlY3RMaW5rcygpIGZpbmFsOwogICAg
IAotICAgIGJvb2wgc2hvdWxkR29Ub0hpc3RvcnlJdGVtKFdlYkNvcmU6Okhpc3RvcnlJdGVtKikg
Y29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRHb1RvSGlzdG9yeUl0ZW0oV2ViQ29yZTo6
SGlzdG9yeUl0ZW0qKSBjb25zdCBmaW5hbDsKIAotICAgIHZvaWQgZGlkRGlzcGxheUluc2VjdXJl
Q29udGVudCgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkUnVuSW5zZWN1cmVDb250ZW50KFdlYkNv
cmU6OlNlY3VyaXR5T3JpZ2luKiwgY29uc3QgV2ViQ29yZTo6VVJMJikgb3ZlcnJpZGU7Ci0gICAg
dm9pZCBkaWREZXRlY3RYU1MoY29uc3QgV2ViQ29yZTo6VVJMJiwgYm9vbCBkaWRCbG9ja0VudGly
ZVBhZ2UpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkRGlzcGxheUluc2VjdXJlQ29udGVudCgpIGZp
bmFsOworICAgIHZvaWQgZGlkUnVuSW5zZWN1cmVDb250ZW50KFdlYkNvcmU6OlNlY3VyaXR5T3Jp
Z2luKiwgY29uc3QgV2ViQ29yZTo6VVJMJikgZmluYWw7CisgICAgdm9pZCBkaWREZXRlY3RYU1Mo
Y29uc3QgV2ViQ29yZTo6VVJMJiwgYm9vbCBkaWRCbG9ja0VudGlyZVBhZ2UpIGZpbmFsOwogCi0g
ICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBjYW5jZWxsZWRFcnJvcihjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGJs
b2NrZWRFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKLSAg
ICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGJsb2NrZWRCeUNvbnRlbnRCbG9ja2VyRXJyb3IoY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVz
b3VyY2VFcnJvciBjYW5ub3RTaG93VVJMRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1
ZXN0Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBpbnRlcnJ1cHRlZEZv
clBvbGljeUNoYW5nZUVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJy
aWRlOworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgY2FuY2VsbGVkRXJyb3IoY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJv
ciBibG9ja2VkRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7Cisg
ICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkQnlDb250ZW50QmxvY2tlckVycm9yKGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOworICAgIFdlYkNvcmU6OlJlc291
cmNlRXJyb3IgY2Fubm90U2hvd1VSTEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYpIGZpbmFsOworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgaW50ZXJydXB0ZWRGb3JQb2xp
Y3lDaGFuZ2VFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKICNp
ZiBFTkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCi0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBi
bG9ja2VkQnlDb250ZW50RmlsdGVyRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
Jikgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkQnlDb250ZW50
RmlsdGVyRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CiAjZW5k
aWYKICAgICAKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dNSU1FVHlwZUVy
cm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKLSAgICBXZWJD
b3JlOjpSZXNvdXJjZUVycm9yIGZpbGVEb2VzTm90RXhpc3RFcnJvcihjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBw
bHVnaW5XaWxsSGFuZGxlTG9hZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Um
KSBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dNSU1FVHlw
ZUVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICBXZWJD
b3JlOjpSZXNvdXJjZUVycm9yIGZpbGVEb2VzTm90RXhpc3RFcnJvcihjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBwbHVn
aW5XaWxsSGFuZGxlTG9hZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBm
aW5hbDsKICAgICAKLSAgICBib29sIHNob3VsZEZhbGxCYWNrKGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlRXJyb3ImKSBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZEZhbGxCYWNrKGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKICAgICAKLSAgICBib29sIGNhbkhhbmRsZVJlcXVl
c3QoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAg
Ym9vbCBjYW5TaG93TUlNRVR5cGUoY29uc3QgU3RyaW5nJiBNSU1FVHlwZSkgY29uc3Qgb3ZlcnJp
ZGU7Ci0gICAgYm9vbCBjYW5TaG93TUlNRVR5cGVBc0hUTUwoY29uc3QgU3RyaW5nJiBNSU1FVHlw
ZSkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgYm9vbCByZXByZXNlbnRhdGlvbkV4aXN0c0ZvclVSTFNj
aGVtZShjb25zdCBTdHJpbmcmIFVSTFNjaGVtZSkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgU3RyaW5n
IGdlbmVyYXRlZE1JTUVUeXBlRm9yVVJMU2NoZW1lKGNvbnN0IFN0cmluZyYgVVJMU2NoZW1lKSBj
b25zdCBvdmVycmlkZTsKKyAgICBib29sIGNhbkhhbmRsZVJlcXVlc3QoY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0JikgY29uc3QgZmluYWw7CisgICAgYm9vbCBjYW5TaG93TUlNRVR5cGUo
Y29uc3QgU3RyaW5nJiBNSU1FVHlwZSkgY29uc3QgZmluYWw7CisgICAgYm9vbCBjYW5TaG93TUlN
RVR5cGVBc0hUTUwoY29uc3QgU3RyaW5nJiBNSU1FVHlwZSkgY29uc3QgZmluYWw7CisgICAgYm9v
bCByZXByZXNlbnRhdGlvbkV4aXN0c0ZvclVSTFNjaGVtZShjb25zdCBTdHJpbmcmIFVSTFNjaGVt
ZSkgY29uc3QgZmluYWw7CisgICAgU3RyaW5nIGdlbmVyYXRlZE1JTUVUeXBlRm9yVVJMU2NoZW1l
KGNvbnN0IFN0cmluZyYgVVJMU2NoZW1lKSBjb25zdCBmaW5hbDsKICAgICAKLSAgICB2b2lkIGZy
YW1lTG9hZENvbXBsZXRlZCgpIG92ZXJyaWRlOwotICAgIHZvaWQgc2F2ZVZpZXdTdGF0ZVRvSXRl
bShXZWJDb3JlOjpIaXN0b3J5SXRlbSYpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVzdG9yZVZpZXdT
dGF0ZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgcHJvdmlzaW9uYWxMb2FkU3RhcnRlZCgpIG92ZXJy
aWRlOwotICAgIHZvaWQgZGlkRmluaXNoTG9hZCgpIG92ZXJyaWRlOwotICAgIHZvaWQgcHJlcGFy
ZUZvckRhdGFTb3VyY2VSZXBsYWNlbWVudCgpIG92ZXJyaWRlOworICAgIHZvaWQgZnJhbWVMb2Fk
Q29tcGxldGVkKCkgZmluYWw7CisgICAgdm9pZCBzYXZlVmlld1N0YXRlVG9JdGVtKFdlYkNvcmU6
Okhpc3RvcnlJdGVtJikgZmluYWw7CisgICAgdm9pZCByZXN0b3JlVmlld1N0YXRlKCkgZmluYWw7
CisgICAgdm9pZCBwcm92aXNpb25hbExvYWRTdGFydGVkKCkgZmluYWw7CisgICAgdm9pZCBkaWRG
aW5pc2hMb2FkKCkgZmluYWw7CisgICAgdm9pZCBwcmVwYXJlRm9yRGF0YVNvdXJjZVJlcGxhY2Vt
ZW50KCkgZmluYWw7CiAgICAgCi0gICAgUmVmPFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyPiBjcmVh
dGVEb2N1bWVudExvYWRlcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBX
ZWJDb3JlOjpTdWJzdGl0dXRlRGF0YSYpIG92ZXJyaWRlOwotICAgIHZvaWQgdXBkYXRlQ2FjaGVk
RG9jdW1lbnRMb2FkZXIoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXImKSBvdmVycmlkZTsKKyAgICBS
ZWY8V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI+IGNyZWF0ZURvY3VtZW50TG9hZGVyKGNvbnN0IFdl
YkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlN1YnN0aXR1dGVEYXRhJikg
ZmluYWw7CisgICAgdm9pZCB1cGRhdGVDYWNoZWREb2N1bWVudExvYWRlcihXZWJDb3JlOjpEb2N1
bWVudExvYWRlciYpIGZpbmFsOwogCi0gICAgdm9pZCBzZXRUaXRsZShjb25zdCBXZWJDb3JlOjpT
dHJpbmdXaXRoRGlyZWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6VVJMJikgb3ZlcnJpZGU7CisgICAg
dm9pZCBzZXRUaXRsZShjb25zdCBXZWJDb3JlOjpTdHJpbmdXaXRoRGlyZWN0aW9uJiwgY29uc3Qg
V2ViQ29yZTo6VVJMJikgZmluYWw7CiAgICAgCi0gICAgU3RyaW5nIHVzZXJBZ2VudChjb25zdCBX
ZWJDb3JlOjpVUkwmKSBvdmVycmlkZTsKKyAgICBTdHJpbmcgdXNlckFnZW50KGNvbnN0IFdlYkNv
cmU6OlVSTCYpIGZpbmFsOwogICAgIAotICAgIHZvaWQgc2F2ZVBsYXRmb3JtRGF0YVRvQ2FjaGVk
RnJhbWUoV2ViQ29yZTo6Q2FjaGVkRnJhbWUqKSBvdmVycmlkZTsKLSAgICB2b2lkIHRyYW5zaXRp
b25Ub0NvbW1pdHRlZEZyb21DYWNoZWRGcmFtZShXZWJDb3JlOjpDYWNoZWRGcmFtZSopIG92ZXJy
aWRlOworICAgIHZvaWQgc2F2ZVBsYXRmb3JtRGF0YVRvQ2FjaGVkRnJhbWUoV2ViQ29yZTo6Q2Fj
aGVkRnJhbWUqKSBmaW5hbDsKKyAgICB2b2lkIHRyYW5zaXRpb25Ub0NvbW1pdHRlZEZyb21DYWNo
ZWRGcmFtZShXZWJDb3JlOjpDYWNoZWRGcmFtZSopIGZpbmFsOwogI2lmIFBMQVRGT1JNKElPUykK
LSAgICB2b2lkIGRpZFJlc3RvcmVGcmFtZUhpZXJhcmNoeUZvckNhY2hlZEZyYW1lKCkgb3ZlcnJp
ZGU7CisgICAgdm9pZCBkaWRSZXN0b3JlRnJhbWVIaWVyYXJjaHlGb3JDYWNoZWRGcmFtZSgpIGZp
bmFsOwogI2VuZGlmCi0gICAgdm9pZCB0cmFuc2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdlKCkg
b3ZlcnJpZGU7CisgICAgdm9pZCB0cmFuc2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdlKCkgZmlu
YWw7CiAKLSAgICB2b2lkIGRpZFNhdmVUb1BhZ2VDYWNoZSgpIG92ZXJyaWRlOwotICAgIHZvaWQg
ZGlkUmVzdG9yZUZyb21QYWdlQ2FjaGUoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZFNhdmVUb1Bh
Z2VDYWNoZSgpIGZpbmFsOworICAgIHZvaWQgZGlkUmVzdG9yZUZyb21QYWdlQ2FjaGUoKSBmaW5h
bDsKIAotICAgIHZvaWQgZGlzcGF0Y2hEaWRCZWNvbWVGcmFtZXNldChib29sKSBvdmVycmlkZTsK
KyAgICB2b2lkIGRpc3BhdGNoRGlkQmVjb21lRnJhbWVzZXQoYm9vbCkgZmluYWw7CiAKLSAgICBi
b29sIGNhbkNhY2hlUGFnZSgpIGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQgY29udmVydE1haW5S
ZXNvdXJjZUxvYWRUb0Rvd25sb2FkKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6
U2Vzc2lvbklELCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CisgICAgYm9vbCBjYW5DYWNoZVBhZ2UoKSBj
b25zdCBmaW5hbDsKKyAgICB2b2lkIGNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZChX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlNlc3Npb25JRCwgY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIGZp
bmFsOwogCi0gICAgUmVmUHRyPFdlYkNvcmU6OkZyYW1lPiBjcmVhdGVGcmFtZShjb25zdCBXZWJD
b3JlOjpVUkwmLCBjb25zdCBTdHJpbmcmIG5hbWUsIFdlYkNvcmU6OkhUTUxGcmFtZU93bmVyRWxl
bWVudCosCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBT
dHJpbmcmIHJlZmVycmVyLCBib29sIGFsbG93c1Njcm9sbGluZywgaW50IG1hcmdpbldpZHRoLCBp
bnQgbWFyZ2luSGVpZ2h0KSBvdmVycmlkZTsKLSAgICAKLSAgICBSZWZQdHI8V2ViQ29yZTo6V2lk
Z2V0PiBjcmVhdGVQbHVnaW4oY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxQ
bHVnSW5FbGVtZW50KiwgY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4m
LCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFN0cmluZyYsIGJvb2wgbG9hZE1hbnVhbGx5
KSBvdmVycmlkZTsKLSAgICB2b2lkIHJlY3JlYXRlUGx1Z2luKFdlYkNvcmU6OldpZGdldCopIG92
ZXJyaWRlOwotICAgIHZvaWQgcmVkaXJlY3REYXRhVG9QbHVnaW4oV2ViQ29yZTo6V2lkZ2V0KiBw
bHVnaW5XaWRnZXQpIG92ZXJyaWRlOworICAgIFJlZlB0cjxXZWJDb3JlOjpGcmFtZT4gY3JlYXRl
RnJhbWUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgU3RyaW5nJiBuYW1lLCBXZWJDb3JlOjpI
VE1MRnJhbWVPd25lckVsZW1lbnQmLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBib29sIGFsbG93
c1Njcm9sbGluZywgaW50IG1hcmdpbldpZHRoLCBpbnQgbWFyZ2luSGVpZ2h0KSBmaW5hbDsKKwor
ICAgIFJlZlB0cjxXZWJDb3JlOjpXaWRnZXQ+IGNyZWF0ZVBsdWdpbihjb25zdCBXZWJDb3JlOjpJ
bnRTaXplJiwgV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQmLCBjb25zdCBXZWJDb3JlOjpVUkwm
LCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgU3Ry
aW5nJiwgYm9vbCBsb2FkTWFudWFsbHkpIGZpbmFsOworICAgIHZvaWQgcmVjcmVhdGVQbHVnaW4o
V2ViQ29yZTo6V2lkZ2V0KikgZmluYWw7CisgICAgdm9pZCByZWRpcmVjdERhdGFUb1BsdWdpbihX
ZWJDb3JlOjpXaWRnZXQqIHBsdWdpbldpZGdldCkgZmluYWw7CiAgICAgCiAjaWYgRU5BQkxFKFdF
QkdMKQotICAgIFdlYkNvcmU6OldlYkdMTG9hZFBvbGljeSB3ZWJHTFBvbGljeUZvclVSTChjb25z
dCBTdHJpbmcmKSBjb25zdCBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kg
cmVzb2x2ZVdlYkdMUG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYpIGNvbnN0IG92ZXJyaWRlOwor
ICAgIFdlYkNvcmU6OldlYkdMTG9hZFBvbGljeSB3ZWJHTFBvbGljeUZvclVSTChjb25zdCBTdHJp
bmcmKSBjb25zdCBmaW5hbDsKKyAgICBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgcmVzb2x2ZVdl
YkdMUG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYpIGNvbnN0IGZpbmFsOwogI2VuZGlmIC8vIEVO
QUJMRShXRUJHTCkKIAotICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6V2lkZ2V0PiBjcmVhdGVKYXZh
QXBwbGV0V2lkZ2V0KGNvbnN0IFdlYkNvcmU6OkludFNpemUmLCBXZWJDb3JlOjpIVE1MQXBwbGV0
RWxlbWVudCosIGNvbnN0IFdlYkNvcmU6OlVSTCYgYmFzZVVSTCwgY29uc3QgVmVjdG9yPFN0cmlu
Zz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykgb3ZlcnJp
ZGU7CisgICAgUmVmUHRyPFdlYkNvcmU6OldpZGdldD4gY3JlYXRlSmF2YUFwcGxldFdpZGdldChj
b25zdCBXZWJDb3JlOjpJbnRTaXplJiwgV2ViQ29yZTo6SFRNTEFwcGxldEVsZW1lbnQmLCBjb25z
dCBXZWJDb3JlOjpVUkwmIGJhc2VVUkwsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVz
LCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpIGZpbmFsOwogICAgIAotICAgIFdl
YkNvcmU6Ok9iamVjdENvbnRlbnRUeXBlIG9iamVjdENvbnRlbnRUeXBlKGNvbnN0IFdlYkNvcmU6
OlVSTCYsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUpIG92ZXJyaWRlOwotICAgIFN0cmluZyBvdmVy
cmlkZU1lZGlhVHlwZSgpIGNvbnN0IG92ZXJyaWRlOworICAgIFdlYkNvcmU6Ok9iamVjdENvbnRl
bnRUeXBlIG9iamVjdENvbnRlbnRUeXBlKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNvbnN0IFN0cmlu
ZyYgbWltZVR5cGUpIGZpbmFsOworICAgIFN0cmluZyBvdmVycmlkZU1lZGlhVHlwZSgpIGNvbnN0
IGZpbmFsOwogCi0gICAgdm9pZCBkaXNwYXRjaERpZENsZWFyV2luZG93T2JqZWN0SW5Xb3JsZChX
ZWJDb3JlOjpET01XcmFwcGVyV29ybGQmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGlk
Q2xlYXJXaW5kb3dPYmplY3RJbldvcmxkKFdlYkNvcmU6OkRPTVdyYXBwZXJXb3JsZCYpIGZpbmFs
OwogICAgIAotICAgIHZvaWQgZGlzcGF0Y2hHbG9iYWxPYmplY3RBdmFpbGFibGUoV2ViQ29yZTo6
RE9NV3JhcHBlcldvcmxkJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxEaXNjb25u
ZWN0RE9NV2luZG93RXh0ZW5zaW9uRnJvbUdsb2JhbE9iamVjdChXZWJDb3JlOjpET01XaW5kb3dF
eHRlbnNpb24qKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjb25uZWN0RE9NV2lu
ZG93RXh0ZW5zaW9uVG9HbG9iYWxPYmplY3QoV2ViQ29yZTo6RE9NV2luZG93RXh0ZW5zaW9uKikg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxEZXN0cm95R2xvYmFsT2JqZWN0Rm9yRE9N
V2luZG93RXh0ZW5zaW9uKFdlYkNvcmU6OkRPTVdpbmRvd0V4dGVuc2lvbiopIG92ZXJyaWRlOwor
ICAgIHZvaWQgZGlzcGF0Y2hHbG9iYWxPYmplY3RBdmFpbGFibGUoV2ViQ29yZTo6RE9NV3JhcHBl
cldvcmxkJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxEaXNjb25uZWN0RE9NV2luZG93
RXh0ZW5zaW9uRnJvbUdsb2JhbE9iamVjdChXZWJDb3JlOjpET01XaW5kb3dFeHRlbnNpb24qKSBm
aW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjb25uZWN0RE9NV2luZG93RXh0ZW5zaW9uVG9H
bG9iYWxPYmplY3QoV2ViQ29yZTo6RE9NV2luZG93RXh0ZW5zaW9uKikgZmluYWw7CisgICAgdm9p
ZCBkaXNwYXRjaFdpbGxEZXN0cm95R2xvYmFsT2JqZWN0Rm9yRE9NV2luZG93RXh0ZW5zaW9uKFdl
YkNvcmU6OkRPTVdpbmRvd0V4dGVuc2lvbiopIGZpbmFsOwogCi0gICAgdm9pZCByZWdpc3RlckZv
ckljb25Ob3RpZmljYXRpb24oYm9vbCBsaXN0ZW4gPSB0cnVlKSBvdmVycmlkZTsKKyAgICB2b2lk
IHJlZ2lzdGVyRm9ySWNvbk5vdGlmaWNhdGlvbihib29sIGxpc3RlbiA9IHRydWUpIGZpbmFsOwog
ICAgIAogI2lmIFBMQVRGT1JNKENPQ09BKQotICAgIFJlbW90ZUFYT2JqZWN0UmVmIGFjY2Vzc2li
aWxpdHlSZW1vdGVPYmplY3QoKSBvdmVycmlkZTsKKyAgICBSZW1vdGVBWE9iamVjdFJlZiBhY2Nl
c3NpYmlsaXR5UmVtb3RlT2JqZWN0KCkgZmluYWw7CiAgICAgCi0gICAgTlNDYWNoZWRVUkxSZXNw
b25zZSogd2lsbENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2UqKSBjb25zdCBvdmVycmlkZTsK
KyAgICBOU0NhY2hlZFVSTFJlc3BvbnNlKiB3aWxsQ2FjaGVSZXNwb25zZShXZWJDb3JlOjpEb2N1
bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25z
ZSopIGNvbnN0IGZpbmFsOwogCi0gICAgTlNEaWN0aW9uYXJ5ICpkYXRhRGV0ZWN0aW9uQ29udGV4
dCgpIG92ZXJyaWRlOworICAgIE5TRGljdGlvbmFyeSAqZGF0YURldGVjdGlvbkNvbnRleHQoKSBm
aW5hbDsKICNlbmRpZgogCi0gICAgYm9vbCBzaG91bGRBbHdheXNVc2VQbHVnaW5Eb2N1bWVudChj
b25zdCBTdHJpbmcmIC8qbWltZVR5cGUqLykgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91
bGRBbHdheXNVc2VQbHVnaW5Eb2N1bWVudChjb25zdCBTdHJpbmcmIC8qbWltZVR5cGUqLykgY29u
c3QgZmluYWw7CiAKLSAgICB2b2lkIGRpZENoYW5nZVNjcm9sbE9mZnNldCgpIG92ZXJyaWRlOwor
ICAgIHZvaWQgZGlkQ2hhbmdlU2Nyb2xsT2Zmc2V0KCkgZmluYWw7CiAKLSAgICBib29sIGFsbG93
U2NyaXB0KGJvb2wgZW5hYmxlZFBlclNldHRpbmdzKSBvdmVycmlkZTsKKyAgICBib29sIGFsbG93
U2NyaXB0KGJvb2wgZW5hYmxlZFBlclNldHRpbmdzKSBmaW5hbDsKIAotICAgIGJvb2wgc2hvdWxk
Rm9yY2VVbml2ZXJzYWxBY2Nlc3NGcm9tTG9jYWxVUkwoY29uc3QgV2ViQ29yZTo6VVJMJikgb3Zl
cnJpZGU7CisgICAgYm9vbCBzaG91bGRGb3JjZVVuaXZlcnNhbEFjY2Vzc0Zyb21Mb2NhbFVSTChj
b25zdCBXZWJDb3JlOjpVUkwmKSBmaW5hbDsKIAotICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6RnJh
bWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKSBvdmVycmlkZTsK
KyAgICBSZWY8V2ViQ29yZTo6RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRlTmV0d29ya2lu
Z0NvbnRleHQoKSBmaW5hbDsKIAogI2lmIEVOQUJMRShSRVFVRVNUX0FVVE9DT01QTEVURSkKLSAg
ICB2b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxldGUoUGFzc1JlZlB0cjxXZWJDb3JlOjpGb3JtU3Rh
dGU+KSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxldGUoUmVmPFdlYkNv
cmU6OkZvcm1TdGF0ZT4mJikgZmluYWw7CiAjZW5kaWYKIAotICAgIHZvaWQgZm9yY2VQYWdlVHJh
bnNpdGlvbklmTmVlZGVkKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBmb3JjZVBhZ2VUcmFuc2l0aW9u
SWZOZWVkZWQoKSBmaW5hbDsKIAogI2lmIFVTRShRVUlDS19MT09LKQotICAgIHZvaWQgZGlkQ3Jl
YXRlUXVpY2tMb29rSGFuZGxlKFdlYkNvcmU6OlF1aWNrTG9va0hhbmRsZSYpIG92ZXJyaWRlOwor
ICAgIHZvaWQgZGlkQ3JlYXRlUXVpY2tMb29rSGFuZGxlKFdlYkNvcmU6OlF1aWNrTG9va0hhbmRs
ZSYpIGZpbmFsOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCi0gICAg
dm9pZCBjb250ZW50RmlsdGVyRGlkQmxvY2tMb2FkKFdlYkNvcmU6OkNvbnRlbnRGaWx0ZXJVbmJs
b2NrSGFuZGxlcikgb3ZlcnJpZGU7CisgICAgdm9pZCBjb250ZW50RmlsdGVyRGlkQmxvY2tMb2Fk
KFdlYkNvcmU6OkNvbnRlbnRGaWx0ZXJVbmJsb2NrSGFuZGxlcikgZmluYWw7CiAjZW5kaWYKIAot
ICAgIHZvaWQgcHJlZmV0Y2hETlMoY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7CisgICAgdm9pZCBw
cmVmZXRjaEROUyhjb25zdCBTdHJpbmcmKSBmaW5hbDsKIAotICAgIHZvaWQgZGlkUmVzdG9yZVNj
cm9sbFBvc2l0aW9uKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRSZXN0b3JlU2Nyb2xsUG9zaXRp
b24oKSBmaW5hbDsKIAotICAgIGJvb2wgdXNlSWNvbkxvYWRpbmdDbGllbnQoKSBvdmVycmlkZTsK
LSAgICB2b2lkIGdldExvYWREZWNpc2lvbkZvckljb24oY29uc3QgV2ViQ29yZTo6TGlua0ljb24m
LCB1aW50NjRfdCBjYWxsYmFja0lEKSBvdmVycmlkZTsKLSAgICB2b2lkIGZpbmlzaGVkTG9hZGlu
Z0ljb24odWludDY0X3QgbG9hZElkZW50aWZpZXIsIFdlYkNvcmU6OlNoYXJlZEJ1ZmZlciopIG92
ZXJyaWRlOworICAgIGJvb2wgdXNlSWNvbkxvYWRpbmdDbGllbnQoKSBmaW5hbDsKKyAgICB2b2lk
IGdldExvYWREZWNpc2lvbkZvckljb24oY29uc3QgV2ViQ29yZTo6TGlua0ljb24mLCB1aW50NjRf
dCBjYWxsYmFja0lEKSBmaW5hbDsKKyAgICB2b2lkIGZpbmlzaGVkTG9hZGluZ0ljb24odWludDY0
X3QgbG9hZElkZW50aWZpZXIsIFdlYkNvcmU6OlNoYXJlZEJ1ZmZlciopIGZpbmFsOwogCiAgICAg
V2ViRnJhbWUqIG1fZnJhbWU7CiAgICAgUmVmUHRyPFBsdWdpblZpZXc+IG1fcGx1Z2luVmlldzsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNw
cCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAppbmRleCBl
OTRmODdhOWRkZjc5YWMzNDBkZmUwMTVkZDZiNWUzMmE0YWVkYjI4Li5jNTAyYzYyN2UyOTJiYmU1
MzUyMmE5YTc3NDMyMjA3YjE4MGUxNmExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlBhZ2UuY3BwCkBAIC0zNDIsNyArMzQyLDcgQEAgV2ViUGFnZTo6V2ViUGFn
ZSh1aW50NjRfdCBwYWdlSUQsIGNvbnN0IFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMmIHBhcmFt
ZXRlcnMpCiAjZW5kaWYKIAogICAgIFBhZ2VDb25maWd1cmF0aW9uIHBhZ2VDb25maWd1cmF0aW9u
KG1ha2VVbmlxdWVSZWY8V2ViRWRpdG9yQ2xpZW50Pih0aGlzKSwgV2ViU29ja2V0UHJvdmlkZXI6
OmNyZWF0ZSgpKTsKLSAgICBwYWdlQ29uZmlndXJhdGlvbi5jaHJvbWVDbGllbnQgPSBuZXcgV2Vi
Q2hyb21lQ2xpZW50KHRoaXMpOworICAgIHBhZ2VDb25maWd1cmF0aW9uLmNocm9tZUNsaWVudCA9
IG5ldyBXZWJDaHJvbWVDbGllbnQoKnRoaXMpOwogI2lmIEVOQUJMRShDT05URVhUX01FTlVTKQog
ICAgIHBhZ2VDb25maWd1cmF0aW9uLmNvbnRleHRNZW51Q2xpZW50ID0gbmV3IFdlYkNvbnRleHRN
ZW51Q2xpZW50KHRoaXMpOwogI2VuZGlmCkBAIC02OTgsNyArNjk4LDggQEAgdm9pZCBXZWJQYWdl
Ojppbml0aWFsaXplSW5qZWN0ZWRCdW5kbGVEaWFnbm9zdGljTG9nZ2luZ0NsaWVudChXS0J1bmRs
ZVBhZ2VEaWFnbm8KIH0KIAogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQotUGFzc1Jl
ZlB0cjxQbHVnaW4+IFdlYlBhZ2U6OmNyZWF0ZVBsdWdpbihXZWJGcmFtZSogZnJhbWUsIEhUTUxQ
bHVnSW5FbGVtZW50KiBwbHVnaW5FbGVtZW50LCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmIHBh
cmFtZXRlcnMsIFN0cmluZyYgbmV3TUlNRVR5cGUpCisKK1JlZlB0cjxQbHVnaW4+IFdlYlBhZ2U6
OmNyZWF0ZVBsdWdpbihXZWJGcmFtZSogZnJhbWUsIEhUTUxQbHVnSW5FbGVtZW50KiBwbHVnaW5F
bGVtZW50LCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmIHBhcmFtZXRlcnMsIFN0cmluZyYgbmV3
TUlNRVR5cGUpCiB7CiAgICAgU3RyaW5nIGZyYW1lVVJMU3RyaW5nID0gZnJhbWUtPmNvcmVGcmFt
ZSgpLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwog
ICAgIFN0cmluZyBwYWdlVVJMU3RyaW5nID0gbV9wYWdlLT5tYWluRnJhbWUoKS5sb2FkZXIoKS5k
b2N1bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwpAQCAtMTMyNSw3ICsxMzI2
LDcgQEAgdm9pZCBXZWJQYWdlOjpsYXlvdXRJZk5lZWRlZCgpCiAKIFdlYlBhZ2UqIFdlYlBhZ2U6
OmZyb21Db3JlUGFnZShQYWdlKiBwYWdlKQogewotICAgIHJldHVybiBzdGF0aWNfY2FzdDxXZWJD
aHJvbWVDbGllbnQmPihwYWdlLT5jaHJvbWUoKS5jbGllbnQoKSkucGFnZSgpOworICAgIHJldHVy
biAmc3RhdGljX2Nhc3Q8V2ViQ2hyb21lQ2xpZW50Jj4ocGFnZS0+Y2hyb21lKCkuY2xpZW50KCkp
LnBhZ2UoKTsKIH0KIAogdm9pZCBXZWJQYWdlOjpzZXRTaXplKGNvbnN0IFdlYkNvcmU6OkludFNp
emUmIHZpZXdTaXplKQpAQCAtMTc5MSw3ICsxNzkyLDggQEAgdm9pZCBXZWJQYWdlOjpwb3N0SW5q
ZWN0ZWRCdW5kbGVNZXNzYWdlKGNvbnN0IFN0cmluZyYgbWVzc2FnZU5hbWUsIGNvbnN0IFVzZXJE
YXQKIH0KIAogI2lmICFQTEFURk9STShJT1MpCi12b2lkIFdlYlBhZ2U6OnNldEhlYWRlclBhZ2VC
YW5uZXIoUGFzc1JlZlB0cjxQYWdlQmFubmVyPiBwYWdlQmFubmVyKQorCit2b2lkIFdlYlBhZ2U6
OnNldEhlYWRlclBhZ2VCYW5uZXIoUGFnZUJhbm5lciogcGFnZUJhbm5lcikKIHsKICAgICBpZiAo
bV9oZWFkZXJCYW5uZXIpCiAgICAgICAgIG1faGVhZGVyQmFubmVyLT5kZXRhY2hGcm9tUGFnZSgp
OwpAQCAtMTgwNyw3ICsxODA5LDcgQEAgUGFnZUJhbm5lciogV2ViUGFnZTo6aGVhZGVyUGFnZUJh
bm5lcigpCiAgICAgcmV0dXJuIG1faGVhZGVyQmFubmVyLmdldCgpOwogfQogCi12b2lkIFdlYlBh
Z2U6OnNldEZvb3RlclBhZ2VCYW5uZXIoUGFzc1JlZlB0cjxQYWdlQmFubmVyPiBwYWdlQmFubmVy
KQordm9pZCBXZWJQYWdlOjpzZXRGb290ZXJQYWdlQmFubmVyKFBhZ2VCYW5uZXIqIHBhZ2VCYW5u
ZXIpCiB7CiAgICAgaWYgKG1fZm9vdGVyQmFubmVyKQogICAgICAgICBtX2Zvb3RlckJhbm5lci0+
ZGV0YWNoRnJvbVBhZ2UoKTsKQEAgLTM1NzUsNiArMzU3Nyw3IEBAIHZvaWQgV2ViUGFnZTo6c2V0
QWN0aXZlUG9wdXBNZW51KFdlYlBvcHVwTWVudSogbWVudSkKIH0KIAogI2lmIEVOQUJMRShJTlBV
VF9UWVBFX0NPTE9SKQorCiB2b2lkIFdlYlBhZ2U6OnNldEFjdGl2ZUNvbG9yQ2hvb3NlcihXZWJD
b2xvckNob29zZXIqIGNvbG9yQ2hvb3NlcikKIHsKICAgICBtX2FjdGl2ZUNvbG9yQ2hvb3NlciA9
IGNvbG9yQ2hvb3NlcjsKQEAgLTM1ODksMTEgKzM1OTIsMTIgQEAgdm9pZCBXZWJQYWdlOjpkaWRD
aG9vc2VDb2xvcihjb25zdCBXZWJDb3JlOjpDb2xvciYgY29sb3IpCiB7CiAgICAgbV9hY3RpdmVD
b2xvckNob29zZXItPmRpZENob29zZUNvbG9yKGNvbG9yKTsKIH0KKwogI2VuZGlmCiAKLXZvaWQg
V2ViUGFnZTo6c2V0QWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIoUGFzc1JlZlB0cjxXZWJP
cGVuUGFuZWxSZXN1bHRMaXN0ZW5lcj4gb3BlblBhbmVsUmVzdWx0TGlzdGVuZXIpCit2b2lkIFdl
YlBhZ2U6OnNldEFjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyKFJlZjxXZWJPcGVuUGFuZWxS
ZXN1bHRMaXN0ZW5lcj4mJiBvcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcikKIHsKLSAgICBtX2FjdGl2
ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyID0gb3BlblBhbmVsUmVzdWx0TGlzdGVuZXI7CisgICAg
bV9hY3RpdmVPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lciA9IFdURk1vdmUob3BlblBhbmVsUmVzdWx0
TGlzdGVuZXIpOwogfQogCiBib29sIFdlYlBhZ2U6OmZpbmRTdHJpbmdGcm9tSW5qZWN0ZWRCdW5k
bGUoY29uc3QgU3RyaW5nJiB0YXJnZXQsIEZpbmRPcHRpb25zIG9wdGlvbnMpCkBAIC01NDA4LDEx
ICs1NDEyLDExIEBAIGJvb2wgV2ViUGFnZTo6cGx1Z0luSXNQcmltYXJ5U2l6ZShXZWJDb3JlOjpI
VE1MUGx1Z0luSW1hZ2VFbGVtZW50JiBwbHVnSW5JbWFnZUVsCiAKICNlbmRpZiAvLyBFTkFCTEUo
UFJJTUFSWV9TTkFQU0hPVFRFRF9QTFVHSU5fSEVVUklTVElDKQogCi1QYXNzUmVmUHRyPFJhbmdl
PiBXZWJQYWdlOjpjdXJyZW50U2VsZWN0aW9uQXNSYW5nZSgpCitSZWZQdHI8UmFuZ2U+IFdlYlBh
Z2U6OmN1cnJlbnRTZWxlY3Rpb25Bc1JhbmdlKCkKIHsKLSAgICBGcmFtZSogZnJhbWUgPSBmcmFt
ZVdpdGhTZWxlY3Rpb24obV9wYWdlLmdldCgpKTsKKyAgICBhdXRvKiBmcmFtZSA9IGZyYW1lV2l0
aFNlbGVjdGlvbihtX3BhZ2UuZ2V0KCkpOwogICAgIGlmICghZnJhbWUpCi0gICAgICAgIHJldHVy
biAwOworICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAogICAgIHJldHVybiBmcmFtZS0+c2VsZWN0
aW9uKCkudG9Ob3JtYWxpemVkUmFuZ2UoKTsKIH0KQEAgLTU1MTIsNyArNTUxNiw3IEBAIHZvaWQg
V2ViUGFnZTo6Z2V0U2FtcGxpbmdQcm9maWxlck91dHB1dCh1aW50NjRfdCBjYWxsYmFja0lEKQog
I2VuZGlmCiB9CiAKLVBhc3NSZWZQdHI8V2ViQ29yZTo6UmFuZ2U+IFdlYlBhZ2U6OnJhbmdlRnJv
bUVkaXRpbmdSYW5nZShXZWJDb3JlOjpGcmFtZSYgZnJhbWUsIGNvbnN0IEVkaXRpbmdSYW5nZSYg
cmFuZ2UsIEVkaXRpbmdSYW5nZUlzUmVsYXRpdmVUbyBlZGl0aW5nUmFuZ2VJc1JlbGF0aXZlVG8p
CitSZWZQdHI8V2ViQ29yZTo6UmFuZ2U+IFdlYlBhZ2U6OnJhbmdlRnJvbUVkaXRpbmdSYW5nZShX
ZWJDb3JlOjpGcmFtZSYgZnJhbWUsIGNvbnN0IEVkaXRpbmdSYW5nZSYgcmFuZ2UsIEVkaXRpbmdS
YW5nZUlzUmVsYXRpdmVUbyBlZGl0aW5nUmFuZ2VJc1JlbGF0aXZlVG8pCiB7CiAgICAgQVNTRVJU
KHJhbmdlLmxvY2F0aW9uICE9IG5vdEZvdW5kKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJQYWdlLmgKaW5kZXggODFjZTc1MWY4ZWJkMWQ4ZTBlMGI3ZGNhNWZmMDdi
YjczZDNkMjE2NS4uYjY1ZDkzYmM3YWVjZWM2ZDc4Mjk0YmYxZWNiYjY1OGE4ZjU5OGIyNiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCkBAIC03NCw3ICs3
NCw2IEBACiAjaW5jbHVkZSA8bWVtb3J5PgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAjaW5j
bHVkZSA8d3RmL01vbm90b25pY1RpbWUuaD4KLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgog
I2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvUnVuTG9vcC5oPgogI2luY2x1
ZGUgPHd0Zi9TZWNvbmRzLmg+CkBAIC0zMTQsNyArMzEzLDcgQEAgcHVibGljOgogI2VuZGlmCiAK
ICAgICBXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lciogYWN0aXZlT3BlblBhbmVsUmVzdWx0TGlz
dGVuZXIoKSBjb25zdCB7IHJldHVybiBtX2FjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLmdl
dCgpOyB9Ci0gICAgdm9pZCBzZXRBY3RpdmVPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcihQYXNzUmVm
UHRyPFdlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyPik7CisgICAgdm9pZCBzZXRBY3RpdmVPcGVu
UGFuZWxSZXN1bHRMaXN0ZW5lcihSZWY8V2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXI+JiYpOwog
CiAgICAgdm9pZCBkaWRSZWNlaXZlTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29k
ZXImKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZFJlY2VpdmVTeW5jTWVzc2FnZShJUEM6OkNvbm5l
Y3Rpb24mLCBJUEM6OkRlY29kZXImLCBzdGQ6OnVuaXF1ZV9wdHI8SVBDOjpFbmNvZGVyPiYpIG92
ZXJyaWRlOwpAQCAtMzU1LDE2ICszNTQsMTYgQEAgcHVibGljOgogICAgIFdlYkNvcmU6Ok1haW5G
cmFtZSogbWFpbkZyYW1lKCkgY29uc3Q7IC8vIE1heSByZXR1cm4gMC4KICAgICBXZWJDb3JlOjpG
cmFtZVZpZXcqIG1haW5GcmFtZVZpZXcoKSBjb25zdDsgLy8gTWF5IHJldHVybiAwLgogCi0gICAg
UGFzc1JlZlB0cjxXZWJDb3JlOjpSYW5nZT4gY3VycmVudFNlbGVjdGlvbkFzUmFuZ2UoKTsKKyAg
ICBSZWZQdHI8V2ViQ29yZTo6UmFuZ2U+IGN1cnJlbnRTZWxlY3Rpb25Bc1JhbmdlKCk7CiAKICNp
ZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKLSAgICBQYXNzUmVmUHRyPFBsdWdpbj4gY3Jl
YXRlUGx1Z2luKFdlYkZyYW1lKiwgV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQqLCBjb25zdCBQ
bHVnaW46OlBhcmFtZXRlcnMmLCBTdHJpbmcmIG5ld01JTUVUeXBlKTsKKyAgICBSZWZQdHI8UGx1
Z2luPiBjcmVhdGVQbHVnaW4oV2ViRnJhbWUqLCBXZWJDb3JlOjpIVE1MUGx1Z0luRWxlbWVudCos
IGNvbnN0IFBsdWdpbjo6UGFyYW1ldGVycyYsIFN0cmluZyYgbmV3TUlNRVR5cGUpOwogI2VuZGlm
CiAKICNpZiBFTkFCTEUoV0VCR0wpCiAgICAgV2ViQ29yZTo6V2ViR0xMb2FkUG9saWN5IHdlYkdM
UG9saWN5Rm9yVVJMKFdlYkZyYW1lKiwgY29uc3QgU3RyaW5nJik7CiAgICAgV2ViQ29yZTo6V2Vi
R0xMb2FkUG9saWN5IHJlc29sdmVXZWJHTFBvbGljeUZvclVSTChXZWJGcmFtZSosIGNvbnN0IFN0
cmluZyYpOwotI2VuZGlmIC8vIEVOQUJMRShXRUJHTCkKKyNlbmRpZgogICAgIAogICAgIGVudW0g
Y2xhc3MgSW5jbHVkZVBvc3RMYXlvdXREYXRhSGludCB7IE5vLCBZZXMgfTsKICAgICBFZGl0b3JT
dGF0ZSBlZGl0b3JTdGF0ZShJbmNsdWRlUG9zdExheW91dERhdGFIaW50ID0gSW5jbHVkZVBvc3RM
YXlvdXREYXRhSGludDo6WWVzKSBjb25zdDsKQEAgLTQ1NSwyMSArNDU0LDIxIEBAIHB1YmxpYzoK
IAogICAgIGJvb2wgaGFzQ2FjaGVkV2luZG93RnJhbWUoKSBjb25zdCB7IHJldHVybiBtX2hhc0Nh
Y2hlZFdpbmRvd0ZyYW1lOyB9CiAKLSNpZiAhUExBVEZPUk0oSU9TKQotICAgIHZvaWQgc2V0VG9w
T3ZlcmhhbmdJbWFnZShQYXNzUmVmUHRyPFdlYkltYWdlPik7Ci0gICAgdm9pZCBzZXRCb3R0b21P
dmVyaGFuZ0ltYWdlKFBhc3NSZWZQdHI8V2ViSW1hZ2U+KTsKLSNlbmRpZiAvLyAhUExBVEZPUk0o
SU9TKQotCiAgICAgdm9pZCB1cGRhdGVIZWFkZXJBbmRGb290ZXJMYXllcnNGb3JEZXZpY2VTY2Fs
ZUNoYW5nZShmbG9hdCBzY2FsZUZhY3Rvcik7Ci0jZW5kaWYgLy8gUExBVEZPUk0oQ09DT0EpCisj
ZW5kaWYKKworI2lmIFBMQVRGT1JNKE1BQykKKyAgICB2b2lkIHNldFRvcE92ZXJoYW5nSW1hZ2Uo
V2ViSW1hZ2UqKTsKKyAgICB2b2lkIHNldEJvdHRvbU92ZXJoYW5nSW1hZ2UoV2ViSW1hZ2UqKTsK
KyNlbmRpZgogCiAgICAgYm9vbCB3aW5kb3dJc0ZvY3VzZWQoKSBjb25zdDsKICAgICBib29sIHdp
bmRvd0FuZFdlYlBhZ2VBcmVGb2N1c2VkKCkgY29uc3Q7CiAKICNpZiAhUExBVEZPUk0oSU9TKQot
ICAgIHZvaWQgc2V0SGVhZGVyUGFnZUJhbm5lcihQYXNzUmVmUHRyPFBhZ2VCYW5uZXI+KTsKKyAg
ICB2b2lkIHNldEhlYWRlclBhZ2VCYW5uZXIoUGFnZUJhbm5lciopOwogICAgIFBhZ2VCYW5uZXIq
IGhlYWRlclBhZ2VCYW5uZXIoKTsKLSAgICB2b2lkIHNldEZvb3RlclBhZ2VCYW5uZXIoUGFzc1Jl
ZlB0cjxQYWdlQmFubmVyPik7CisgICAgdm9pZCBzZXRGb290ZXJQYWdlQmFubmVyKFBhZ2VCYW5u
ZXIqKTsKICAgICBQYWdlQmFubmVyKiBmb290ZXJQYWdlQmFubmVyKCk7CiAKICAgICB2b2lkIGhp
ZGVQYWdlQmFubmVycygpOwpAQCAtNDc3LDcgKzQ3Niw3IEBAIHB1YmxpYzoKICAgICAKICAgICB2
b2lkIHNldEhlYWRlckJhbm5lckhlaWdodEZvclRlc3RpbmcoaW50KTsKICAgICB2b2lkIHNldEZv
b3RlckJhbm5lckhlaWdodEZvclRlc3RpbmcoaW50KTsKLSNlbmRpZiAvLyAhUExBVEZPUk0oSU9T
KQorI2VuZGlmCiAKICAgICBXZWJDb3JlOjpJbnRQb2ludCBzY3JlZW5Ub1Jvb3RWaWV3KGNvbnN0
IFdlYkNvcmU6OkludFBvaW50Jik7CiAgICAgV2ViQ29yZTo6SW50UmVjdCByb290Vmlld1RvU2Ny
ZWVuKGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKTsKQEAgLTYyMSw3ICs2MjAsNyBAQCBwdWJsaWM6
CiAgICAgYm9vbCBoYXNMb2NhbERhdGFGb3JVUkwoY29uc3QgV2ViQ29yZTo6VVJMJik7CiAgICAg
U3RyaW5nIGNhY2hlZFJlc3BvbnNlTUlNRVR5cGVGb3JVUkwoY29uc3QgV2ViQ29yZTo6VVJMJik7
CiAgICAgU3RyaW5nIGNhY2hlZFN1Z2dlc3RlZEZpbGVuYW1lRm9yVVJMKGNvbnN0IFdlYkNvcmU6
OlVSTCYpOwotICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6U2hhcmVkQnVmZmVyPiBjYWNoZWRSZXNw
b25zZURhdGFGb3JVUkwoY29uc3QgV2ViQ29yZTo6VVJMJik7CisgICAgUmVmUHRyPFdlYkNvcmU6
OlNoYXJlZEJ1ZmZlcj4gY2FjaGVkUmVzcG9uc2VEYXRhRm9yVVJMKGNvbnN0IFdlYkNvcmU6OlVS
TCYpOwogCiAgICAgc3RhdGljIGJvb2wgY2FuSGFuZGxlUmVxdWVzdChjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmKTsKIApAQCAtMTAxNiw5ICsxMDE1LDExIEBAIHByaXZhdGU6CiAgICAg
Ym9vbCBzaG91bGRTd2l0Y2hUb0Jsb2NrTW9kZUZvckhhbmRsZShjb25zdCBXZWJDb3JlOjpJbnRQ
b2ludCYgaGFuZGxlUG9pbnQsIFNlbGVjdGlvbkhhbmRsZVBvc2l0aW9uKTsKICAgICBSZWZQdHI8
V2ViQ29yZTo6UmFuZ2U+IHN3aXRjaFRvQmxvY2tTZWxlY3Rpb25BdFBvaW50KGNvbnN0IFdlYkNv
cmU6OkludFBvaW50JiwgU2VsZWN0aW9uSGFuZGxlUG9zaXRpb24pOwogI2VuZGlmCisKICNpZiAh
UExBVEZPUk0oQ09DT0EpCiAgICAgc3RhdGljIGNvbnN0IGNoYXIqIGludGVycHJldEtleUV2ZW50
KGNvbnN0IFdlYkNvcmU6OktleWJvYXJkRXZlbnQqKTsKICNlbmRpZgorCiAgICAgYm9vbCBwZXJm
b3JtRGVmYXVsdEJlaGF2aW9yRm9yS2V5RXZlbnQoY29uc3QgV2ViS2V5Ym9hcmRFdmVudCYpOwog
CiAjaWYgUExBVEZPUk0oTUFDKQpAQCAtMTIwNiw3ICsxMjA3LDcgQEAgcHJpdmF0ZToKICAgICBz
dGF0aWMgUGx1Z2luVmlldyogZm9jdXNlZFBsdWdpblZpZXdGb3JGcmFtZShXZWJDb3JlOjpGcmFt
ZSYpOwogICAgIHN0YXRpYyBQbHVnaW5WaWV3KiBwbHVnaW5WaWV3Rm9yRnJhbWUoV2ViQ29yZTo6
RnJhbWUqKTsKIAotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFdlYkNvcmU6OlJhbmdlPiByYW5nZUZy
b21FZGl0aW5nUmFuZ2UoV2ViQ29yZTo6RnJhbWUmLCBjb25zdCBFZGl0aW5nUmFuZ2UmLCBFZGl0
aW5nUmFuZ2VJc1JlbGF0aXZlVG8gPSBFZGl0aW5nUmFuZ2VJc1JlbGF0aXZlVG86OkVkaXRhYmxl
Um9vdCk7CisgICAgc3RhdGljIFJlZlB0cjxXZWJDb3JlOjpSYW5nZT4gcmFuZ2VGcm9tRWRpdGlu
Z1JhbmdlKFdlYkNvcmU6OkZyYW1lJiwgY29uc3QgRWRpdGluZ1JhbmdlJiwgRWRpdGluZ1Jhbmdl
SXNSZWxhdGl2ZVRvID0gRWRpdGluZ1JhbmdlSXNSZWxhdGl2ZVRvOjpFZGl0YWJsZVJvb3QpOwog
CiAgICAgdm9pZCByZXBvcnRVc2VkRmVhdHVyZXMoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL2VmbC9XZWJQYWdlRWZsLmNwcCBiL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9lZmwvV2ViUGFnZUVmbC5jcHAKaW5kZXggMTVhMWRjZWEx
MTJjMmU3MTNiZDMxM2NmNjdiYWMzNjE2ZDZiMzA3Yy4uZDIxZWQ4YjBhN2Q4MzNmMGViN2NjZGE2
ZTk1MTVjYTczYjFiYmVmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJQYWdlL2VmbC9XZWJQYWdlRWZsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYlBhZ2UvZWZsL1dlYlBhZ2VFZmwuY3BwCkBAIC0xNTcsNyArMTU3LDcgQEAgU3RyaW5nIFdl
YlBhZ2U6OmNhY2hlZFN1Z2dlc3RlZEZpbGVuYW1lRm9yVVJMKGNvbnN0IFVSTCYpCiAgICAgcmV0
dXJuIFN0cmluZygpOwogfQogCi1QYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gV2ViUGFnZTo6Y2Fj
aGVkUmVzcG9uc2VEYXRhRm9yVVJMKGNvbnN0IFVSTCYpCitSZWZQdHI8U2hhcmVkQnVmZmVyPiBX
ZWJQYWdlOjpjYWNoZWRSZXNwb25zZURhdGFGb3JVUkwoY29uc3QgVVJMJikKIHsKICAgICBub3RJ
bXBsZW1lbnRlZCgpOwogICAgIHJldHVybiAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQYWdlL2d0ay9XZWJQYWdlR3RrLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViUGFnZS9ndGsvV2ViUGFnZUd0ay5jcHAKaW5kZXggZDc2NjY4MDQzMDJlNTI3
ZTQ3ZjI0Yjk5ODJkZGVkNjQ5YzBhNWQyMy4uZjBlMzRlZmRjMzNiNjg2ZTdiNzE0ZTA4MTA2NjMz
ZGEyOGM4ZWQ4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdl
L2d0ay9XZWJQYWdlR3RrLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBh
Z2UvZ3RrL1dlYlBhZ2VHdGsuY3BwCkBAIC0xODUsMTMgKzE4NSwxMiBAQCBTdHJpbmcgV2ViUGFn
ZTo6Y2FjaGVkU3VnZ2VzdGVkRmlsZW5hbWVGb3JVUkwoY29uc3QgVVJMJikKICAgICByZXR1cm4g
U3RyaW5nKCk7CiB9CiAKLVBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBXZWJQYWdlOjpjYWNoZWRS
ZXNwb25zZURhdGFGb3JVUkwoY29uc3QgVVJMJikKK1JlZlB0cjxTaGFyZWRCdWZmZXI+IFdlYlBh
Z2U6OmNhY2hlZFJlc3BvbnNlRGF0YUZvclVSTChjb25zdCBVUkwmKQogewogICAgIG5vdEltcGxl
bWVudGVkKCk7CiAgICAgcmV0dXJuIDA7CiB9CiAKLQogU3RyaW5nIFdlYlBhZ2U6OnBsYXRmb3Jt
VXNlckFnZW50KGNvbnN0IFVSTCYgdXJsKSBjb25zdAogewogICAgIGlmICh1cmwuaXNOdWxsKCkg
fHwgIW1fcGFnZS0+c2V0dGluZ3MoKS5uZWVkc1NpdGVTcGVjaWZpY1F1aXJrcygpKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9XZWJQYWdlTWFjLm1t
IGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9XZWJQYWdlTWFjLm1tCmlu
ZGV4IGY3ZWI4ZDcwYzZkNjI4ZTZlYmQzNzlhNjI4OTZmNDEyYTVjYmJlNWEuLjE2Y2M3MzRiZWNj
NWE2NmJkNzg5ODJkMTk5ODQyNTRhMTI3YWJjZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvV2ViUGFnZU1hYy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1dlYlBhZ2VNYWMubW0KQEAgLTcyNCw3ICs3MjQsNyBA
QCBTdHJpbmcgV2ViUGFnZTo6Y2FjaGVkUmVzcG9uc2VNSU1FVHlwZUZvclVSTChjb25zdCBVUkwm
IHVybCkKICAgICByZXR1cm4gW1tjYWNoZWRSZXNwb25zZUZvclVSTCh0aGlzLCB1cmwpIHJlc3Bv
bnNlXSBNSU1FVHlwZV07CiB9CiAKLVBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBXZWJQYWdlOjpj
YWNoZWRSZXNwb25zZURhdGFGb3JVUkwoY29uc3QgVVJMJiB1cmwpCitSZWZQdHI8U2hhcmVkQnVm
ZmVyPiBXZWJQYWdlOjpjYWNoZWRSZXNwb25zZURhdGFGb3JVUkwoY29uc3QgVVJMJiB1cmwpCiB7
CiAgICAgcmV0dXJuIFNoYXJlZEJ1ZmZlcjo6d3JhcE5TRGF0YShbY2FjaGVkUmVzcG9uc2VGb3JV
UkwodGhpcywgdXJsKSBkYXRhXSk7CiB9CkBAIC03NzMsMzcgKzc3MywzMyBAQCB2b2lkIFdlYlBh
Z2U6OmFjY2VwdHNGaXJzdE1vdXNlKGludCBldmVudE51bWJlciwgY29uc3QgV2ViS2l0OjpXZWJN
b3VzZUV2ZW50JiBldgogICAgICAgICByZXN1bHQgPSAhIWhpdFJlc3VsdC5zY3JvbGxiYXIoKTsK
IH0KIAotdm9pZCBXZWJQYWdlOjpzZXRUb3BPdmVyaGFuZ0ltYWdlKFBhc3NSZWZQdHI8V2ViSW1h
Z2U+IGltYWdlKQordm9pZCBXZWJQYWdlOjpzZXRUb3BPdmVyaGFuZ0ltYWdlKFdlYkltYWdlKiBp
bWFnZSkKIHsKLSAgICBGcmFtZVZpZXcqIGZyYW1lVmlldyA9IG1fbWFpbkZyYW1lLT5jb3JlRnJh
bWUoKS0+dmlldygpOworICAgIGF1dG8qIGZyYW1lVmlldyA9IG1fbWFpbkZyYW1lLT5jb3JlRnJh
bWUoKS0+dmlldygpOwogICAgIGlmICghZnJhbWVWaWV3KQogICAgICAgICByZXR1cm47CiAKLSAg
ICBHcmFwaGljc0xheWVyKiBsYXllciA9IGZyYW1lVmlldy0+c2V0V2FudHNMYXllckZvclRvcE92
ZXJIYW5nQXJlYShpbWFnZS5nZXQoKSk7CisgICAgYXV0byogbGF5ZXIgPSBmcmFtZVZpZXctPnNl
dFdhbnRzTGF5ZXJGb3JUb3BPdmVySGFuZ0FyZWEoaW1hZ2UpOwogICAgIGlmICghbGF5ZXIpCiAg
ICAgICAgIHJldHVybjsKIAogICAgIGxheWVyLT5zZXRTaXplKGltYWdlLT5zaXplKCkpOwogICAg
IGxheWVyLT5zZXRQb3NpdGlvbihGbG9hdFBvaW50KDAsIC1pbWFnZS0+c2l6ZSgpLmhlaWdodCgp
KSk7Ci0KLSAgICBSZXRhaW5QdHI8Q0dJbWFnZVJlZj4gY2dJbWFnZSA9IGltYWdlLT5iaXRtYXAo
KS5tYWtlQ0dJbWFnZUNvcHkoKTsKLSAgICBsYXllci0+cGxhdGZvcm1MYXllcigpLmNvbnRlbnRz
ID0gKGlkKWNnSW1hZ2UuZ2V0KCk7CisgICAgbGF5ZXItPnBsYXRmb3JtTGF5ZXIoKS5jb250ZW50
cyA9IChpZClpbWFnZS0+Yml0bWFwKCkubWFrZUNHSW1hZ2VDb3B5KCkuZ2V0KCk7CiB9CiAKLXZv
aWQgV2ViUGFnZTo6c2V0Qm90dG9tT3ZlcmhhbmdJbWFnZShQYXNzUmVmUHRyPFdlYkltYWdlPiBp
bWFnZSkKK3ZvaWQgV2ViUGFnZTo6c2V0Qm90dG9tT3ZlcmhhbmdJbWFnZShXZWJJbWFnZSogaW1h
Z2UpCiB7Ci0gICAgRnJhbWVWaWV3KiBmcmFtZVZpZXcgPSBtX21haW5GcmFtZS0+Y29yZUZyYW1l
KCktPnZpZXcoKTsKKyAgICBhdXRvKiBmcmFtZVZpZXcgPSBtX21haW5GcmFtZS0+Y29yZUZyYW1l
KCktPnZpZXcoKTsKICAgICBpZiAoIWZyYW1lVmlldykKICAgICAgICAgcmV0dXJuOwogCi0gICAg
R3JhcGhpY3NMYXllciogbGF5ZXIgPSBmcmFtZVZpZXctPnNldFdhbnRzTGF5ZXJGb3JCb3R0b21P
dmVySGFuZ0FyZWEoaW1hZ2UuZ2V0KCkpOworICAgIGF1dG8qIGxheWVyID0gZnJhbWVWaWV3LT5z
ZXRXYW50c0xheWVyRm9yQm90dG9tT3ZlckhhbmdBcmVhKGltYWdlKTsKICAgICBpZiAoIWxheWVy
KQogICAgICAgICByZXR1cm47CiAKICAgICBsYXllci0+c2V0U2l6ZShpbWFnZS0+c2l6ZSgpKTsK
LSAgICAKLSAgICBSZXRhaW5QdHI8Q0dJbWFnZVJlZj4gY2dJbWFnZSA9IGltYWdlLT5iaXRtYXAo
KS5tYWtlQ0dJbWFnZUNvcHkoKTsKLSAgICBsYXllci0+cGxhdGZvcm1MYXllcigpLmNvbnRlbnRz
ID0gKGlkKWNnSW1hZ2UuZ2V0KCk7CisgICAgbGF5ZXItPnBsYXRmb3JtTGF5ZXIoKS5jb250ZW50
cyA9IChpZClpbWFnZS0+Yml0bWFwKCkubWFrZUNHSW1hZ2VDb3B5KCkuZ2V0KCk7CiB9CiAKIHZv
aWQgV2ViUGFnZTo6dXBkYXRlSGVhZGVyQW5kRm9vdGVyTGF5ZXJzRm9yRGV2aWNlU2NhbGVDaGFu
Z2UoZmxvYXQgc2NhbGVGYWN0b3IpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYlByb2Nlc3MuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNz
LmNwcAppbmRleCBjMTI4MDE4MzAzNTYwMjJhYmYzMGY4Nzg3Mzc5NmMzNTNkZTNiYmY0Li4zZTVj
YmFkYWIyNDQ0Mjg2MDUwMTM3MDJlOTM0NTAyM2YxNjBiMjkyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAKQEAgLTE1OCwyMiArMTU4LDEyIEBAIFdlYlByb2Nlc3M6
OldlYlByb2Nlc3MoKQogI2lmIFBMQVRGT1JNKElPUykKICAgICAsIG1fdmlld1VwZGF0ZURpc3Bh
dGNoZXIoVmlld1VwZGF0ZURpc3BhdGNoZXI6OmNyZWF0ZSgpKQogI2VuZGlmCi0gICAgLCBtX2lu
RGlkQ2xvc2UoZmFsc2UpCi0gICAgLCBtX2hhc1NldENhY2hlTW9kZWwoZmFsc2UpCi0gICAgLCBt
X2NhY2hlTW9kZWwoQ2FjaGVNb2RlbERvY3VtZW50Vmlld2VyKQotICAgICwgbV9mdWxsS2V5Ym9h
cmRBY2Nlc3NFbmFibGVkKGZhbHNlKQotICAgICwgbV90ZXh0Q2hlY2tlclN0YXRlKCkKLSAgICAs
IG1faWNvbkRhdGFiYXNlUHJveHkoKm5ldyBXZWJJY29uRGF0YWJhc2VQcm94eSh0aGlzKSkKKyAg
ICAsIG1faWNvbkRhdGFiYXNlUHJveHkoKm5ldyBXZWJJY29uRGF0YWJhc2VQcm94eSgqdGhpcykp
CiAgICAgLCBtX3dlYkxvYWRlclN0cmF0ZWd5KCpuZXcgV2ViTG9hZGVyU3RyYXRlZ3kpCiAgICAg
LCBtX2Ruc1ByZWZldGNoSHlzdGVyZXJpcyhbdGhpc10oSHlzdGVyZXNpc1N0YXRlIHN0YXRlKSB7
IGlmIChzdGF0ZSA9PSBIeXN0ZXJlc2lzU3RhdGU6OlN0b3BwZWQpIG1fZG5zUHJlZmV0Y2hlZEhv
c3RzLmNsZWFyKCk7IH0pCiAjaWYgRU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCiAgICAgLCBt
X3BsdWdpblByb2Nlc3NDb25uZWN0aW9uTWFuYWdlcihQbHVnaW5Qcm9jZXNzQ29ubmVjdGlvbk1h
bmFnZXI6OmNyZWF0ZSgpKQogI2VuZGlmCi0jaWYgRU5BQkxFKFNFUlZJQ0VfQ09OVFJPTFMpCi0g
ICAgLCBtX2hhc0ltYWdlU2VydmljZXMoZmFsc2UpCi0gICAgLCBtX2hhc1NlbGVjdGlvblNlcnZp
Y2VzKGZhbHNlKQotICAgICwgbV9oYXNSaWNoQ29udGVudFNlcnZpY2VzKGZhbHNlKQotI2VuZGlm
CiAgICAgLCBtX25vblZpc2libGVQcm9jZXNzQ2xlYW51cFRpbWVyKCp0aGlzLCAmV2ViUHJvY2Vz
czo6bm9uVmlzaWJsZVByb2Nlc3NDbGVhbnVwVGltZXJGaXJlZCkKICAgICAsIG1fc3RhdGlzdGlj
c0NoYW5nZWRUaW1lcigqdGhpcywgJldlYlByb2Nlc3M6OnN0YXRpc3RpY3NDaGFuZ2VkVGltZXJG
aXJlZCkKICNpZiBQTEFURk9STShJT1MpCkBAIC0xOTQsOSArMTg0LDExIEBAIFdlYlByb2Nlc3M6
OldlYlByb2Nlc3MoKQogI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZ
X05PVElGSUNBVElPTlMpCiAgICAgYWRkU3VwcGxlbWVudDxXZWJOb3RpZmljYXRpb25NYW5hZ2Vy
PigpOwogI2VuZGlmCisKICNpZiBFTkFCTEUoTEVHQUNZX0VOQ1JZUFRFRF9NRURJQSkKICAgICBh
ZGRTdXBwbGVtZW50PFdlYk1lZGlhS2V5U3RvcmFnZU1hbmFnZXI+KCk7CiAjZW5kaWYKKwogICAg
IG1fcGx1Z0luQXV0b1N0YXJ0T3JpZ2luSGFzaGVzLmFkZChTZXNzaW9uSUQ6OmRlZmF1bHRTZXNz
aW9uSUQoKSwgSGFzaE1hcDx1bnNpZ25lZCwgZG91YmxlPigpKTsKIAogI2lmIEVOQUJMRShJTkRF
WEVEX0RBVEFCQVNFKQpAQCAtMjA3LDcgKzE5OSw2IEBAIFdlYlByb2Nlc3M6OldlYlByb2Nlc3Mo
KQogICAgIG1fcmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JhZ2UtPnNldE5vdGlmaWNhdGlvbkNh
bGxiYWNrKFt0aGlzXSB7CiAgICAgICAgIGlmIChtX3N0YXRpc3RpY3NDaGFuZ2VkVGltZXIuaXNB
Y3RpdmUoKSkKICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgCiAgICAgICAgIG1fc3RhdGlz
dGljc0NoYW5nZWRUaW1lci5zdGFydE9uZVNob3Qoc3RkOjpjaHJvbm86OnNlY29uZHMoNSkpOwog
ICAgIH0pOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9j
ZXNzLmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaAppbmRleCAyMjhm
MDQ2MTFkYjE4MGJiZmRlN2Y0ZDliNWYyMTNmZGI2M2NjOWUyLi4zNTQ0NjRhODFlNDBiMGRlNGVm
Y2FjYWQ1ZmI4NjRhYTkzNzAzMTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYlByb2Nlc3MuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nl
c3MuaApAQCAtMjMsOCArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgogICovCiAKLSNpZm5kZWYgV2ViUHJvY2Vzc19oCi0jZGVmaW5lIFdlYlByb2Nlc3NfaAorI3By
YWdtYSBvbmNlCiAKICNpbmNsdWRlICJDYWNoZU1vZGVsLmgiCiAjaW5jbHVkZSAiQ2hpbGRQcm9j
ZXNzLmgiCkBAIC0zNDYsMjAgKzM0NSwyMCBAQCBwcml2YXRlOgogICAgIFJlZlB0cjxWaWV3VXBk
YXRlRGlzcGF0Y2hlcj4gbV92aWV3VXBkYXRlRGlzcGF0Y2hlcjsKICNlbmRpZgogCi0gICAgYm9v
bCBtX2luRGlkQ2xvc2U7CisgICAgYm9vbCBtX2luRGlkQ2xvc2UgeyBmYWxzZSB9OwogCiAgICAg
SGFzaE1hcDxXZWJDb3JlOjpTZXNzaW9uSUQsIEhhc2hNYXA8dW5zaWduZWQsIGRvdWJsZT4+IG1f
cGx1Z0luQXV0b1N0YXJ0T3JpZ2luSGFzaGVzOwogICAgIEhhc2hTZXQ8U3RyaW5nPiBtX3BsdWdJ
bkF1dG9TdGFydE9yaWdpbnM7CiAKLSAgICBib29sIG1faGFzU2V0Q2FjaGVNb2RlbDsKLSAgICBD
YWNoZU1vZGVsIG1fY2FjaGVNb2RlbDsKKyAgICBib29sIG1faGFzU2V0Q2FjaGVNb2RlbCB7IGZh
bHNlIH07CisgICAgQ2FjaGVNb2RlbCBtX2NhY2hlTW9kZWwgeyBDYWNoZU1vZGVsRG9jdW1lbnRW
aWV3ZXIgfTsKIAogI2lmIFBMQVRGT1JNKENPQ09BKQogICAgIFdlYkNvcmU6Ok1hY2hTZW5kUmln
aHQgbV9jb21wb3NpdGluZ1JlbmRlclNlcnZlclBvcnQ7CiAgICAgcGlkX3QgbV9wcmVzZW50ZXJB
cHBsaWNhdGlvblBpZDsKICNlbmRpZgogCi0gICAgYm9vbCBtX2Z1bGxLZXlib2FyZEFjY2Vzc0Vu
YWJsZWQ7CisgICAgYm9vbCBtX2Z1bGxLZXlib2FyZEFjY2Vzc0VuYWJsZWQgeyBmYWxzZSB9Owog
CiAgICAgSGFzaE1hcDx1aW50NjRfdCwgV2ViRnJhbWUqPiBtX2ZyYW1lTWFwOwogCkBAIC0zODgs
OSArMzg3LDkgQEAgcHJpdmF0ZToKICNlbmRpZgogCiAjaWYgRU5BQkxFKFNFUlZJQ0VfQ09OVFJP
TFMpCi0gICAgYm9vbCBtX2hhc0ltYWdlU2VydmljZXM7Ci0gICAgYm9vbCBtX2hhc1NlbGVjdGlv
blNlcnZpY2VzOwotICAgIGJvb2wgbV9oYXNSaWNoQ29udGVudFNlcnZpY2VzOworICAgIGJvb2wg
bV9oYXNJbWFnZVNlcnZpY2VzIHsgZmFsc2UgfTsKKyAgICBib29sIG1faGFzU2VsZWN0aW9uU2Vy
dmljZXMgeyBmYWxzZSB9OworICAgIGJvb2wgbV9oYXNSaWNoQ29udGVudFNlcnZpY2VzIHsgZmFs
c2UgfTsKICNlbmRpZgogCiAgICAgSGFzaFNldDx1aW50NjRfdD4gbV9wYWdlc0luV2luZG93czsK
QEAgLTQxNiw1ICs0MTUsMyBAQCBwcml2YXRlOgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0
Ci0KLSNlbmRpZiAvLyBXZWJQcm9jZXNzX2gK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>298930</attachid>
            <date>2017-01-15 13:54:00 -0800</date>
            <delta_ts>2017-01-15 19:58:01 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-167055-20170115135213.patch</filename>
            <type>text/plain</type>
            <size>678407</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEwNzgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzVhMTgzNWE1NTg4NWM4
MjE0NmFhNzRiOGIwMGI1MjkyNGIzNDI3MS4uMmQ2NTgyNmZmMDU5MGNjYTJjMzViMjg5MWEyYmJl
NDNmYWM5MDEwZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxNCBAQAorMjAxNy0wMS0xNSAgRGFy
aW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIFBhc3NSZWZQdHIg
ZnJvbSAibG9hZGVyIiBkaXJlY3Rvcnkgb2YgV2ViQ29yZQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY3MDU1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6RG9jdW1lbnQ6OnByb2Nlc3NIdHRwRXF1aXYpOiBQYXNzIGEgcmVmZXJlbmNlLgor
ICAgICAgICAqIGVkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6RWRpdENvbW1hbmRDb21wb3NpdGlvbjo6dW5hcHBseSk6IERpdHRvLgorICAgICAgICAo
V2ViQ29yZTo6RWRpdENvbW1hbmRDb21wb3NpdGlvbjo6cmVhcHBseSk6IERpdHRvLgorICAgICAg
ICAoV2ViQ29yZTo6Q29tcG9zaXRlRWRpdENvbW1hbmQ6OmVuc3VyZUNvbXBvc2l0aW9uKTogUmV0
dXJuIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6Q29tcG9zaXRlRWRpdENvbW1hbmQ6
OmFwcGx5Q29tbWFuZFRvQ29tcG9zaXRlKTogVXNlIGEgcmVmZXJlbmNlLgorICAgICAgICAqIGVk
aXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuaDogVXBkYXRlZCBmb3IgYWJvdmUgY2hhbmdlcy4K
KworICAgICAgICAqIGVkaXRpbmcvRWRpdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRv
cjo6dW5hcHBsaWVkRWRpdGluZyk6IFRha2UgYSByZWZlcmVuY2UgaW5zdGVhZCBvZiBhIFBhc3NS
ZWZQdHIuCisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OnJlYXBwbGllZEVkaXRpbmcpOiBEaXR0
by4KKyAgICAgICAgKiBlZGl0aW5nL0VkaXRvci5oOiBVcGRhdGVkIGZvciBhYm92ZSBjaGFuZ2Vz
LiBBbHNvIGNoYW5nZWQgdGhlCisgICAgICAgIEZyYWdtZW50QW5kUmVzb3VyY2VzIHJlc291cmNl
cyB2ZWN0b3IgdG8gaG9sZCBSZWYgaW5zdGVhZCBvZiBSZWZQdHIuCisKKyAgICAgICAgKiBlZGl0
aW5nL2NvY29hL0VkaXRvckNvY29hLm1tOgorICAgICAgICAoV2ViQ29yZTo6RWRpdG9yOjpjcmVh
dGVGcmFnbWVudEFuZEFkZFJlc291cmNlcyk6IFVwZGF0ZWQgZm9yIGNoYW5nZSB0bworICAgICAg
ICBGcmFnbWVudEFuZFJlc291cmNlcy4KKworICAgICAgICAqIGVkaXRpbmcvaW9zL0VkaXRvcklP
Uy5tbToKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRvcjo6V2ViQ29udGVudFJlYWRlcjo6cmVhZFdl
YkFyY2hpdmUpOiBQYXNzIGEgcmVmZXJlbmNlLgorCisgICAgICAgICogZWRpdGluZy9tYWMvRWRp
dG9yTWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6RWRpdG9yOjpXZWJDb250ZW50UmVhZGVyOjpy
ZWFkV2ViQXJjaGl2ZSk6IFBhc3MgYSByZWZlcmVuY2UuCisKKyAgICAgICAgKiBoaXN0b3J5L1Bh
Z2VDYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpjYW5DYWNoZUZyYW1lKTogVXNlIGEgcmVm
ZXJlbmNlLgorCisgICAgICAgICogaHRtbC9GaWxlSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkZpbGVJbnB1dFR5cGU6OmhhbmRsZURPTUFjdGl2YXRlRXZlbnQpOiBQYXNzIHJlZmVy
ZW5jZXMuCisKKyAgICAgICAgKiBodG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6SFRNTEZvcm1Db250cm9sRWxlbWVudDo6Zm9ybU1ldGhvZCk6IFVzZSBh
dXRvLgorCisgICAgICAgICogaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTEZvcm1FbGVtZW50OjpwcmVwYXJlRm9yU3VibWlzc2lvbik6IFVwZGF0ZWQgdG8g
dXNlIGEgcmV0dXJuCisgICAgICAgIHZhbHVlcyBmb3IgdGV4dEZpZWxkVmFsdWVzIGludHNlYWQg
b2YgYW4gb3V0IGFyZ3VtZW50IHdpdGggZ2V0VGV4dEZpZWxkVmFsdWVzLgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTEZvcm1FbGVtZW50Ojp0ZXh0RmllbGRWYWx1ZXMpOiBSZW5hbWVkIGZyb20gZ2V0
VGV4dEZpZWxkVmFsdWVzCisgICAgICAgIGFuZCBjaGFuZ2VkIHRvIHVzZSBhIHJldHVybiB2YWx1
ZSBpbnN0ZWFkIG9mIGFuIG91dCBhcmd1bWVudC4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxGb3Jt
RWxlbWVudDo6c3VibWl0KTogUGFzcyBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYkNvcmU6OkhU
TUxGb3JtRWxlbWVudDo6cmVxdWVzdEF1dG9jb21wbGV0ZSk6IFBhc3MgYSBSZWYmJi4KKyAgICAg
ICAgKiBodG1sL0hUTUxGb3JtRWxlbWVudC5oOiBVcGRhdGVkIGZvciBhYm92ZSBjaGFuZ2VzLgor
CisgICAgICAgICogaHRtbC9IVE1MSHRtbEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
SFRNTEh0bWxFbGVtZW50OjppbnNlcnRlZEJ5UGFyc2VyKTogVXNlIGEgcmVmZXJlbmNlLgorCisg
ICAgICAgICogaHRtbC9IVE1MTGlua0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRN
TExpbmtFbGVtZW50Ojpwcm9jZXNzKTogUGFzcyBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYkNv
cmU6OkhUTUxMaW5rRWxlbWVudDo6c2V0Q1NTU3R5bGVTaGVldCk6IFVzZSBhdXRvLgorCisgICAg
ICAgICogaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxN
ZWRpYUVsZW1lbnQ6OmxvYWRSZXNvdXJjZSk6IFVzZSBhIHJlZmVyZW5jZS4KKworICAgICAgICAq
IGluc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50Ojp1cGRhdGVBcHBsaWNhdGlv
bkNhY2hlU3RhdHVzKTogVXNlIGEgcmVmZXJlbmNlLAorICAgICAgICBhbHNvIHVwZGF0ZSBmb3Ig
c3RydWN0LXN0eWxlIG1lbWJlciBuYW1lcyB3aXRob3UgbV8gcHJlZml4LgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpnZXRGcmFtZXNXaXRoTWFuaWZl
c3RzKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hl
QWdlbnQ6OmdldE1hbmlmZXN0Rm9yRnJhbWUpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6Oklu
c3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6Z2V0QXBwbGljYXRpb25DYWNoZUZvckZyYW1l
KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdl
bnQ6OmJ1aWxkT2JqZWN0Rm9yQXBwbGljYXRpb25DYWNoZSk6IERpdHRvLgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZEFycmF5Rm9yQXBwbGlj
YXRpb25DYWNoZVJlc291cmNlcyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
QXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGVSZXNv
dXJjZSk6IERpdHRvLgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNh
Y2hlQWdlbnQuaDogVXBkYXRlZCBmb3IgYWJvdmUgY2hhbmdlcy4KKworICAgICAgICAqIGluc3Bl
Y3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp1cGRhdGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzSW1wbCk6
IFRha2UgYSByZWZlcmVuY2UuCisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1l
bnRhdGlvbi5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIvRG9j
dW1lbnRMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OkRvY3Vt
ZW50TG9hZGVyKTogTW92ZSBtdWNoIGluaXRpYWxpemF0aW9uIHRvIGNsYXNzIGRlZmluaXRpb24u
CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6b3JpZ2luYWxSZXF1ZXN0KTogTW92
ZWQgdG8gaGVhZGVyIHRvIG1ha2UgaXQgaW5saW5lLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXI6Om9yaWdpbmFsUmVxdWVzdENvcHkpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyOjpyZXF1ZXN0KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpEb2N1
bWVudExvYWRlcjo6dXJsKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRl
cjo6c3RvcExvYWRpbmcpOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXI6OndpbGxTZW5kUmVxdWVzdCk6IFVwZGF0ZWQgdG8gdGFrZSBhIHJhdyBwb2lu
dGVyIGluc3RlYWQgb2YgYQorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXI6OmNvbW1pdERhdGEpOiBDYWxsIHNob3VsZFVzZU1haW5SZXNvdXJjZUVu
Y29kaW5nIGluc3RlYWQgb2YKKyAgICAgICAgc3BlY2lhbCBjYXNpbmcgV2ViQXJjaGl2ZS4KKyAg
ICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjptYXliZUNyZWF0ZUFyY2hpdmUpOiBQYXNz
IHJlZmVyZW5jZXMuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6c2V0QXJjaGl2
ZSk6IFRha2UgUmVmJiYgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXI6OmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMpOiBUYWtlIGEgcmVmZXJlbmNl
IGluc3RlYWQKKyAgICAgICAgb2YgYSBwb2ludGVyLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXI6OnBvcEFyY2hpdmVGb3JTdWJmcmFtZSk6IFJldHVybiBSZWZQdHIgaW5zdGVhZCBv
ZgorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6
OnN1YnJlc291cmNlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6
c3VicmVzb3VyY2VzKTogUmV0dXJuIGEgVmVjdG9yPFJlZj4gaW5zdGVhZCBvZiBhCisgICAgICAg
IFZlY3RvcjxSZWZQdHI+LgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OnN1YnN0
aXR1dGVSZXNvdXJjZURlbGl2ZXJ5VGltZXJGaXJlZCk6IFVzZSBtb3ZlCisgICAgICAgIGluc3Rl
YWQgb2Ygc3dhcC4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpzY2hlZHVsZUFy
Y2hpdmVMb2FkKTogVXNlIHNob3VsZExvYWRGcm9tQXJjaGl2ZU9ubHkKKyAgICAgICAgaW5zdGVh
ZCBvZiBhIHNwZWNpYWwgY2FzZSBmb3IgZWFjaCB0eXBlIG9mIGFyY2hpdmUuCisgICAgICAgIChX
ZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6b3JpZ2luYWxVUkwpOiBNb3ZlZCB0byBoZWFkZXIgdG8g
bWFrZSBpdCBpbmxpbmUuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6cmVzcG9u
c2VVUkwpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpkb2N1bWVu
dFVSTCk6IENhbGwgc2hvdWxkVXNlTWFpblJlc291cmNlVVJMIGluc3RlYWQgb2YKKyAgICAgICAg
c3BlY2lhbCBjYXNpbmcgV2ViQXJjaGl2ZS4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyOjpyZXNwb25zZU1JTUVUeXBlKTogTW92ZWQgdG8gaGVhZGVyIHRvIG1ha2UgaXQgaW5saW5l
LgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmN1cnJlbnRDb250ZW50VHlwZSk6
IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmNvbnRlbnRGaWx0ZXIp
OiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpnZXRJY29uTG9hZERl
Y2lzaW9uRm9ySWNvblVSTCk6IFBhc3MgYSByZWZlcmVuY2UuCisgICAgICAgIChXZWJDb3JlOjpE
b2N1bWVudExvYWRlcjo6Z2V0SWNvbkRhdGFGb3JJY29uVVJMKTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6ZGlzcGF0Y2hPbmxvYWRFdmVudHMpOiBVc2UgYSByZWZl
cmVuY2UuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6dW5yZWFjaGFibGVVUkwp
OiBNb3ZlZCB0byBoZWFkZXIgdG8gbWFrZSBpdCBpbmxpbmUuCisgICAgICAgICogbG9hZGVyL0Rv
Y3VtZW50TG9hZGVyLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRl
ci9FbXB0eUNsaWVudHMuY3BwOiBVcGRhdGVkIGZvciBjaGFuZ2VzIHRvIGNsaWVudCBpbnRlcmZh
Y2VzLgorICAgICAgICAqIGxvYWRlci9FbXB0eUNsaWVudHMuaDogRGl0dG8uCisKKyAgICAgICAg
KiBsb2FkZXIvRm9ybVN0YXRlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvcm1TdGF0ZTo6Rm9y
bVN0YXRlKTogVGFrZSByZWZlcmVuY2VzIGluc3RlYWQgb2YgUGFzc1JlZlB0ciwgYWxzbworICAg
ICAgICB0YWtlIFZlY3RvciYmIGluc3RlYWQgb2YgVmVjdG9yJiB3aGVuIHdlIHdhbnQgdG8gdGFr
ZSBvd25lcnNoaXAgYW5kIHVzZSBtb3ZlCisgICAgICAgIGluc3RlYWQgb2Ygc3dhcCB0byBkbyB0
aGF0LgorICAgICAgICAoV2ViQ29yZTo6Rm9ybVN0YXRlOjpjcmVhdGUpOiBEaXR0by4KKyAgICAg
ICAgKiBsb2FkZXIvRm9ybVN0YXRlLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4gQWxzbyBjaGFu
Z2VkIHJldHVybiB2YWx1ZXMgdG8gYmUKKyAgICAgICAgcmVmZXJlbmNlcyBpbnN0ZWFkIG9mIHBv
aW50ZXJzIGFuZCBtZW1iZXJzIHRvIGJlIFJlZiBpbnN0ZWFkIG9mIFJlZlB0ci4KKworICAgICAg
ICAqIGxvYWRlci9Gb3JtU3VibWlzc2lvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb3JtU3Vi
bWlzc2lvbjo6QXR0cmlidXRlczo6cGFyc2VNZXRob2RUeXBlKTogVXBkYXRlZCBmb3IgY2hhbmdl
CisgICAgICAgIHRvIHRoZSBNZXRob2QgZW51bWVyYXRpb24uCisgICAgICAgIChXZWJDb3JlOjpG
b3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6Y29weUZyb20pOiBEZWxldGVkLgorICAgICAgICAo
V2ViQ29yZTo6Rm9ybVN1Ym1pc3Npb246OkZvcm1TdWJtaXNzaW9uKTogVXNlIFJlZiYmIGluc3Rl
YWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYkNvcmU6OkZvcm1TdWJtaXNzaW9uOjpjcmVh
dGUpOiBVc2UgcmVmZXJlbmNlIGluc3RlYWQgb2YgcG9pbnRlciBhbmQKKyAgICAgICAgcmF3IHBv
aW50ZXIgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLiBBbHNvIGNvcHkgYXR0cmlidXRlcyB1c2luZyBj
b3B5IGNvbnN0cnVjdG9yCisgICAgICAgIGluc3RlYWQgb2YgYW4gZXhwbGljaXQgY29weUZyb20g
ZnVuY3Rpb24uCisgICAgICAgIChXZWJDb3JlOjpGb3JtU3VibWlzc2lvbjo6cmVxdWVzdFVSTCk6
IFVwZGF0ZWQgZm9yIGNoYW5nZSB0byB0aGUgTWV0aG9kCisgICAgICAgIGVudW1lcmF0aW9uLgor
ICAgICAgICAoV2ViQ29yZTo6Rm9ybVN1Ym1pc3Npb246OnBvcHVsYXRlRnJhbWVMb2FkUmVxdWVz
dCk6IERpdHRvLgorICAgICAgICAqIGxvYWRlci9Gb3JtU3VibWlzc2lvbi5oOiBVcGRhdGVkIGZv
ciB0aGUgYWJvdmUgY2hhbmdlcy4gTWFkZSB0aGUgQXR0cmlidXRlcworICAgICAgICBjbGFzcyBj
b3B5YWJsZSwgc2luY2Ugd2UgY29weSBpdC4gQ2hhbmdlZCBzb21lIGZ1bmN0aW9ucyB0byByZXR1
cm4gcmVmZXJlbmNlcworICAgICAgICBpbnN0ZWFkIG9mIHBvaW50ZXJzIGFuZCB1c2UgUmVmIGlu
c3RlYWQgb2YgUmVmUHRyIGZvciBkYXRhIG1lbWJlcnMuCisKKyAgICAgICAgKiBsb2FkZXIvRnJh
bWVMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6OnN1Ym1pdEZvcm0p
OiBVcGRhdGVkIGZvciBjaGFuZ2VzIHRvIEZvcm1TdWJtaXNzaW9uCisgICAgICAgIGFuZCBGb3Jt
U3RhdGUuCisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6cmVjZWl2ZWRGaXJzdERhdGEp
OiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2FkRnJhbWVSZXF1ZXN0
KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6bG9hZFJlc291cmNlU3lu
Y2hyb25vdXNseSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6OmNvbnRp
bnVlTG9hZEFmdGVyTmF2aWdhdGlvblBvbGljeSk6IERpdHRvLgorCisgICAgICAgICogbG9hZGVy
L0ZyYW1lTG9hZGVyQ2xpZW50Lmg6IFVzZSByZWZlcmVuY2VzLCBwb2ludGVycywgUmVmUHRyLCBh
bmQgUmVmCisgICAgICAgIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4gUmVtb3ZlZCB1bnVzZWQgZW1w
dHkgZGlzcGF0Y2hEaWRGYWlsVG9TdGFydFBsdWdpbi4KKworICAgICAgICAqIGxvYWRlci9IaXN0
b3J5Q29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5Q29udHJvbGxlcjo6
cHVzaFN0YXRlKTogVGFrZSBSZWZQdHImJiBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAg
IChXZWJDb3JlOjpIaXN0b3J5Q29udHJvbGxlcjo6cmVwbGFjZVN0YXRlKTogRGl0dG8uCisgICAg
ICAgICogbG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4K
KworICAgICAgICAqIGxvYWRlci9JbWFnZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJ
bWFnZUxvYWRlcjo6dXBkYXRlRnJvbUVsZW1lbnQpOiBQYXNzIGEgcmVmZXJlbmNlLgorCisgICAg
ICAgICogbG9hZGVyL05hdmlnYXRpb25TY2hlZHVsZXIuY3BwOiBVc2UgcmVmZXJuY2VzIGFuZCBS
ZWYmJiBpbnN0ZWFkIG9mCisgICAgICAgIHBvaW50ZXJzIGFuZCBQYXNzUmVmUHRyLgorICAgICAg
ICAoV2ViQ29yZTo6U2NoZWR1bGVkTmF2aWdhdGlvbjo6U2NoZWR1bGVkTmF2aWdhdGlvbik6IEFk
ZGVkIGFuIG92ZXJsb2FkCisgICAgICAgIHRoYXQgc2VzdHMgbV9zaG91bGRPcGVuRXh0ZXJuYWxV
UkxzUG9saWN5LgorICAgICAgICAqIGxvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmg6IFVwZGF0
ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWRlci5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcjo6c3RhcnQpOiBVc2UgYW5kIHBhc3Mg
cmVmZXJlbmNlcy4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZGVyOjp3aWxsU2VuZFJl
cXVlc3QpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZGVyOjpkaWRSZWNl
aXZlUmVzcG9uc2UpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZGVyOjpk
aWRGYWlsKTogRGl0dG8uCisKKyAgICAgICAgKiBsb2FkZXIvU3ViZnJhbWVMb2FkZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQp
OiBSZXR1cm4gUmVmUHRyIGluc3RlYWQKKyAgICAgICAgb2YgUGFzc1JlZlB0ci4gUGFzcyByZWZl
cmVuY2VzIGluc3RlYWQgb2YgcG9pbnRlcnMuCisgICAgICAgIChXZWJDb3JlOjpTdWJmcmFtZUxv
YWRlcjo6bG9hZE9yUmVkaXJlY3RTdWJmcmFtZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6
U3ViZnJhbWVMb2FkZXI6OmxvYWRTdWJmcmFtZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6
U3ViZnJhbWVMb2FkZXI6OmRvY3VtZW50KTogRGVsZXRlZC4gVGhpcyB3YXMgbmV2ZXIgcmVhbGx5
IHRoZQorICAgICAgICBjb3JyZWN0IGlkaW9tIGZvciBnZXR0aW5nIHRoZSBhcHByb3ByaWF0ZSBk
b2N1bWVudDsgaGlkaW5nIHRoZSBkZXBlbmRlbmN5CisgICAgICAgIG9uIG1fZnJhbWUgd2Fzbid0
IHBhaW5nIG9mZi4KKyAgICAgICAgKFdlYkNvcmU6OlN1YmZyYW1lTG9hZGVyOjpsb2FkUGx1Z2lu
KTogUGFzcyByZWZlcmVuY2UgaW5zdGVhZCBvZiBwb2ludGVyLgorICAgICAgICAoV2ViQ29yZTo6
U3ViZnJhbWVMb2FkZXI6OnNob3VsZENvbnZlcnRJbnZhbGlkVVJMc1RvQmxhbmspOiBFbGltaW5h
dGVkCisgICAgICAgIHVubmVlZGVkIG51bGwgY2hlY2tpbmcgYW5kIGNvbXBsZXhpdHkgZHVlIHRv
IGdvaW5nIHRocm91Z2ggdGhlIGRvY3VtZW50CisgICAgICAgIGluc3RlYWQgb2YgdGhlIGZyYW1l
IGZvciB0aGlzIGNoZWNrLgorICAgICAgICAqIGxvYWRlci9TdWJmcmFtZUxvYWRlci5oOiBVcGRh
dGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRp
b25DYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNh
dGlvbkNhY2hlKTogTW92ZWQgZGF0YSBtZW1iZXIKKyAgICAgICAgaW5pdGlhbGl6YXRpb24gdG8g
dGhlIGNsYXNzIGRlZmluaXRpb24uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hl
Ojp+QXBwbGljYXRpb25DYWNoZSk6IFBhc3MgYSByZWZlcmVuY2UgaW5zdGVhZAorICAgICAgICBv
ZiBhIHBvaW50ZXIuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlOjppc0NvbXBs
ZXRlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlOjpzZXRNYW5p
ZmVzdFJlc291cmNlKTogVGFrZSBSZWYmJiBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIu
CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlOjphZGRSZXNvdXJjZSk6IERpdHRv
LgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZTo6cmVtb3ZlUmVzb3VyY2UpOiBE
ZWxldGVkLiBXYXMgdW51c2VkLgorICAgICAgICAqIGxvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlv
bkNhY2hlLmg6IFVwZGF0ZWQgZm9yIGFib3ZlIGNoYW5nZXMuCisKKyAgICAgICAgKiBsb2FkZXIv
YXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFw
cGxpY2F0aW9uQ2FjaGVHcm91cDo6QXBwbGljYXRpb25DYWNoZUdyb3VwKTogTW92ZWQgbW9zdAor
ICAgICAgICBtZW1iZXIgaW5pdGlhbGl6YXRpb24gdG8gdGhlIGNsYXNzIGRlZmluaXRpb24uCisg
ICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6On5BcHBsaWNhdGlvbkNhY2hl
R3JvdXApOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25D
YWNoZUdyb3VwOjpjYWNoZUZvck1haW5SZXF1ZXN0KTogUmVtb3ZlZAorICAgICAgICB1bm5lY2Vz
c2FyeSBwcmVmbGlnaHQgZm9yIHJlbW92ZUZyYWdtZW50SWRlbnRpZmllciwgd2hpY2ggZWZmaWNp
ZW50bHkKKyAgICAgICAgZG9lcyBub3RoaW5nIGlmIHRoZXJlIGlzIG5vIGlkZW50aWZpZXIuIFVz
ZSBlYXJseSByZXR1cm4uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
OmZhbGxiYWNrQ2FjaGVGb3JNYWluUmVxdWVzdCk6IE1vcmUgb2YKKyAgICAgICAgdGhlIHNhbWUu
CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVjdENhY2hlKTog
RGl0dG8sIGFsc28gdGFrZSBhIHJlZmVyZW5jZSwKKyAgICAgICAgYW5kIHVzZSBldmVudCBuYW1l
cyBpbnN0ZWFkIG9mIGEgc3BlY2lhbCBlbnVtZXJhdGlvbiB0byBwb2FzdCBldmVudHMuCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVjdENhY2hlV2l0aG91dE1h
bmlmZXN0VVJMKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3Jv
dXA6OmZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29y
ZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKTogRGl0
dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRpc2Fzc29jaWF0
ZURvY3VtZW50TG9hZGVyKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNh
Y2hlR3JvdXA6OmNhY2hlRGVzdHJveWVkKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBs
aWNhdGlvbkNhY2hlR3JvdXA6OnN0b3BMb2FkaW5nSW5GcmFtZSk6IERpdHRvLgorICAgICAgICAo
V2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZXROZXdlc3RDYWNoZSk6IFVzZSBSZWYm
JiBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJDb3JlOjpBcHBs
aWNhdGlvbkNhY2hlR3JvdXA6Om1ha2VPYnNvbGV0ZSk6IE1vcmUgb2YgdGhlIHNhbWUuCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnVwZGF0ZSk6IERpdHRvLgorICAg
ICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjphYm9ydCk6IERpdHRvLgorICAg
ICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpkaWRSZWNlaXZlUmVzcG9uc2Up
OiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZGlkRmlu
aXNoTG9hZGluZyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdy
b3VwOjpkaWRGYWlsKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hl
R3JvdXA6OmRpZEZpbmlzaExvYWRpbmdNYW5pZmVzdCk6IERpdHRvLgorICAgICAgICAoV2ViQ29y
ZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjptYW5pZmVzdE5vdEZvdW5kKTogRGl0dG8uCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNoZWNrSWZMb2FkSXNDb21wbGV0
ZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpzdGFy
dExvYWRpbmdFbnRyeSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNo
ZUdyb3VwOjpkZWxpdmVyRGVsYXllZE1haW5SZXNvdXJjZXMpOiBVc2UgYSBtb2Rlcm4KKyAgICAg
ICAgZm9yIGxvb3AuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFk
ZEVudHJ5KTogVXNlIGF1dG8gYW5kIHNpbXBsaWZ5IGxvZ2ljCisgICAgICAgIGZvciBhZGRpbmcu
CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFzc29jaWF0ZURvY3Vt
ZW50TG9hZGVyV2l0aENhY2hlKTogVXBkYXRlIHNpbmNlCisgICAgICAgIGZ1bmN0aW9uIHJlc3Vs
dCBpcyBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVHcm91
cDo6c2NoZWR1bGVSZWFjaGVkTWF4QXBwQ2FjaGVTaXplQ2FsbGJhY2spOgorICAgICAgICBVc2Ug
YXV0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6cG9zdExpc3Rl
bmVyVGFzayk6IFRha2UgZXZlbnQgdHlwZSBpbnN0ZWFkIG9mCisgICAgICAgIHRha2luZyBhIHNw
ZWNpYWwgZW51bWVyYXRpb24uCisgICAgICAgICogbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9u
Q2FjaGVHcm91cC5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIv
YXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUhvc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QXBw
bGljYXRpb25DYWNoZUhvc3Q6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0KTogTW92ZSBtb3N0IG1lbWJl
cgorICAgICAgICBpbml0aWFsaXphdGlvbiB0byB0aGUgY2xhc3MgZGVmaW5pdGlvbi4KKyAgICAg
ICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojp+QXBwbGljYXRpb25DYWNoZUhvc3Qp
OiBVc2UgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhvc3Q6
OnNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpB
cHBsaWNhdGlvbkNhY2hlSG9zdDo6c2VsZWN0Q2FjaGVXaXRoTWFuaWZlc3QpOiBEaXR0by4KKyAg
ICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0OjptYWluUmVzb3VyY2VEYXRhUmVj
ZWl2ZWQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojpm
YWlsZWRMb2FkaW5nTWFpblJlc291cmNlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6ZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKTogRGl0dG8uCisg
ICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWF5YmVMb2FkRmFsbGJhY2tG
b3JSZWRpcmVjdCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhv
c3Q6Om1heWJlTG9hZEZhbGxiYWNrRm9yUmVzcG9uc2UpOiBEaXR0by4KKyAgICAgICAgKFdlYkNv
cmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpjcmVhdGVGaWxlVVJMKTogRGl0dG8uCisgICAgICAg
IChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWF5YmVMb2FkU3luY2hyb25vdXNseSk6
IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhvc3Q6Om5vdGlmeURP
TUFwcGxpY2F0aW9uQ2FjaGUpOiBUYWtlIGV2ZW50CisgICAgICAgIHR5cGUgaW5zdGVhZCBvZiBz
cGVjaWFsIGVudW1lcmF0aW9uLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhv
c3Q6OnN0b3BMb2FkaW5nSW5GcmFtZSk6IFVzZSByZWZlcmVuY2UuCisgICAgICAgIChXZWJDb3Jl
OjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c3RvcERlZmVycmluZ0V2ZW50cyk6IFVwZGF0ZWQgdG8g
dXNlCisgICAgICAgIGV2ZW50IHR5cGVzIGluc3RlYWQgb2Ygc3BlY2lhbCBlbnVtZXJhdGlvbiBh
bmQgYWxzbyByZXBhaXJlZCBwb3NzaWJsZQorICAgICAgICBlZGdlIGNhc2Ugd2hlcmUgY29kZSBp
biBldmVudCBoYW5kbGVyIHNvbWVob3cgdHJpZ2dlcnMgYWRkaXRpb25hbCBldmVudHMuCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6cmVzb3VyY2VMaXN0KTogUmVuYW1l
ZCBmcm9tIGZpbGxSZXNvdXJjZUxpc3QKKyAgICAgICAgYW5kIGNoYW5nZWQgdG8gcmV0dXJuIGEg
dmVjdG9yIGluc3RlYWQgb2YgcG9wdWxhdGluZyBvbmUuCisgICAgICAgIChXZWJDb3JlOjpBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6YXBwbGljYXRpb25DYWNoZUluZm8pOiBUd2VhayBjb2Rpbmcgc3R5
bGUgYSBiaXQuCisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVBcHBsaWNhdGlvbkNhY2hlRXZlbnQp
OiBGYWN0b3JlZCB0aGlzIGhlbHBlciBvdXQgb2YKKyAgICAgICAgZGlzcGF0Y2hET01FdmVudCBz
byB3ZSBjYW4gdXNlIFJlZiBpbnN0ZWFkIG9mIFJlZlB0ci4KKyAgICAgICAgKFdlYkNvcmU6OkFw
cGxpY2F0aW9uQ2FjaGVIb3N0OjpkaXNwYXRjaERPTUV2ZW50KTogVXBkYXRlZCB0byByZWNlbnQg
ZXZlbnQgdHlwZQorICAgICAgICByYXRoZXIgdGhhbiByZWNlaXZpbmcgYW4gZXZlbnQgaWQgYW5k
IG1hcHBpbmcgaXQgdG8gYSB0eXBlLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNo
ZUhvc3Q6OnNldEFwcGxpY2F0aW9uQ2FjaGUpOiBUYWtlIFJlZlB0ciYmIGluc3RlYWQgb2YKKyAg
ICAgICAgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0
Ojp1cGRhdGUpOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRp
b25DYWNoZUhvc3Q6OnN3YXBDYWNoZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGlj
YXRpb25DYWNoZUhvc3Q6OmFib3J0KTogRGl0dG8uCisgICAgICAgICogbG9hZGVyL2FwcGNhY2hl
L0FwcGxpY2F0aW9uQ2FjaGVIb3N0Lmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAg
ICAqIGxvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6bG9hZENhY2hlR3JvdXApOiBQYXNz
IGEgUmVmIGluc3RlYWQgb2YgUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25D
YWNoZVN0b3JhZ2U6OmNhY2hlR3JvdXBGb3JVUkwpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6
OkFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpmYWxsYmFja0NhY2hlR3JvdXBGb3JVUkwpOiBEaXR0
by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpjYWNoZUdyb3Vw
RGVzdHJveWVkKTogVGFrZSBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0
aW9uQ2FjaGVTdG9yYWdlOjpjYWNoZUdyb3VwTWFkZU9ic29sZXRlKTogRGl0dG8uCisgICAgICAg
IChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6c3RvcmVOZXdlc3RDYWNoZSk6IERp
dHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmxvYWRDYWNo
ZSk6IFJldHVybiBSZWZQdHIgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29y
ZTo6QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmRlbGV0ZUNhY2hlR3JvdXApOiBQYXNzIGEgcmVm
ZXJlbmNlLgorICAgICAgICAqIGxvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFn
ZS5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIvYXBwY2FjaGUv
RE9NQXBwbGljYXRpb25DYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpET01BcHBsaWNhdGlv
bkNhY2hlOjpET01BcHBsaWNhdGlvbkNhY2hlKTogVGFrZSBhIHJlZmVyZW5jZS4KKyAgICAgICAg
KFdlYkNvcmU6OkRPTUFwcGxpY2F0aW9uQ2FjaGU6OnRvRXZlbnRUeXBlKTogRGVsZXRlZC4KKyAg
ICAgICAgKiBsb2FkZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25DYWNoZS5oOiBVcGRhdGVkIGZv
ciB0aGUgYWJvdmUuIE1hZGUgbW9zdAorICAgICAgICBtZW1iZXJzIHByaXZhdGUuCisKKyAgICAg
ICAgKiBsb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFyY2hp
dmU6OmNsZWFyQWxsU3ViZnJhbWVBcmNoaXZlcyk6IFVzZSBhIHNldCBmb3IgdGhlIGxvZ2ljIHRo
YXQKKyAgICAgICAgcHJldmVudHMgdXMgZnJvbSB3YWxraW5nIHRoZSBzYW1lIGFyY2hpdmUgbW9y
ZSB0aGFuIG9uY2UsIHJhdGhlciB0aGFuIHVzaW5nCisgICAgICAgIGEgdmVjdG9yLiBMZWZ0IGl0
IHJlY3Vyc2l2ZSwgdGhvdWdoLgorICAgICAgICAqIGxvYWRlci9hcmNoaXZlL0FyY2hpdmUuaDog
R2l0IHJpZCBvZiB0aGUgdHlwZSBmdW5jdGlvbiwgcmVwbGFjaW5nIGl0IHdpdGgKKyAgICAgICAg
dGhyZWUgZnVuY3Rpb25zIGZvciB0aGUgZm91ciBkaWZmZXJlbnQgcG9saWNpZXMgd2UgY3VycmVu
dGx5IGhhdmUgYWJvdXQgdGhlCisgICAgICAgIGRpZmZlcmVudCBhcmNoaXZlIHR5cGVzLiBDaGFu
Z2VkIGZ1bmN0aW9ucyB0byB0YWtlIFJlZiYmIGluc3RlYWQgb2YgUGFzc1JlZlB0cgorICAgICAg
ICBhbmQgcmV0dXJuIGNvbnN0IFZlY3RvcjxSZWY+JiBpbnN0ZWFkIG9mIGNvbnN0IFZlY3RvcjxS
ZWZQdHI+JiwgY2hhbmdpbmcgdGhlCisgICAgICAgIGRhdGEgbWVtYmVycyB0byBtYXRjaC4KKwor
ICAgICAgICAqIGxvYWRlci9hcmNoaXZlL0FyY2hpdmVGYWN0b3J5LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OmNyZWF0ZUFyY2hpdmVNSU1FVHlwZXNNYXApOiBGYWN0b3JlZCB0aGlzIG91dCBvZiB0
aGUgYXJjaGl2ZU1JTUVUeXBlcworICAgICAgICBmdW5jdGlvbiBzbyB3ZSBkb24ndCBuZWVkIGEg
Ym9vbGVhbi4gQWxzbyB1c2UgQVNDSUlMaXRlcmFsLgorICAgICAgICAoV2ViQ29yZTo6YXJjaGl2
ZU1JTUVUeXBlcyk6IFVwZGF0ZWQgdG8gc2UgdGhlIGFib3ZlLgorCisgICAgICAgICogbG9hZGVy
L2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uOjphZGRBbGxSZXNvdXJjZXMpOiBUYWtlIGEgcmVm
ZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6QXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbjo6cG9w
U3ViZnJhbWVBcmNoaXZlKTogUmV0dXJuIFJlZlB0ciBpbnN0ZWFkCisgICAgICAgIG9mIFBhc3NS
ZWZQdHIuCisgICAgICAgICogbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlv
bi5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIvYXJjaGl2ZS9j
Zi9MZWdhY3lXZWJBcmNoaXZlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hp
dmU6OmNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKTogVXNlIGF1dG8gYW5kCisgICAg
ICAgIGZld2VyIGxvY2FsIHZhcmlhYmxlcywgbW9yZSByZWZlcmVuY2VzIGZvciBhcmd1bWVudCB0
eXBlcyBhbmQgcmV0dXJuIHZhbHVlcy4KKyAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hp
dmU6OmNyZWF0ZVJlc291cmNlUmVzcG9uc2VGcm9tUHJvcGVydHlMaXN0RGF0YSk6IERpdHRvLgor
ICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlUmVzb3VyY2UpOiBEaXR0
by4KKyAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZSk6IERpdHRvLgor
ICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6ZXh0cmFjdCk6IERpdHRvLgorICAg
ICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6dHlwZSk6IERlbGV0ZWQuCisgICAgICAg
IChXZWJDb3JlOjpMZWdhY3lXZWJBcmNoaXZlOjpyYXdEYXRhUmVwcmVzZW50YXRpb24pOiBNb3Jl
IG9mIHRoZSBzYW1lLgorICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRl
RnJvbVNlbGVjdGlvbik6IERpdHRvLgorICAgICAgICAqIGxvYWRlci9hcmNoaXZlL2NmL0xlZ2Fj
eVdlYkFyY2hpdmUuaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLiBBbHNvIG1hcmtlZCB0aGUKKyAg
ICAgICAgY2xhc3MgZmluYWwgYW5kIGFkZGVkIG92ZXJyaWRlcyBmb3IgdGhlIGZvdXIgbmV3IHBv
bGljeSBtZW1iZXIgZnVuY3Rpb25zLgorCisgICAgICAgICogbG9hZGVyL2FyY2hpdmUvbWh0bWwv
TUhUTUxBcmNoaXZlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1IVE1MQXJjaGl2ZTo6Y3JlYXRl
KTogUGFzcyByZWZlcmVuY2VzLgorICAgICAgICAoV2ViQ29yZTo6TUhUTUxBcmNoaXZlOjpnZW5l
cmF0ZU1IVE1MRGF0YSk6IFJldHVybiBSZWZQdHIgaW5zdGVhZCBvZgorICAgICAgICBQYXNzUmVm
UHRyLgorICAgICAgICAqIGxvYWRlci9hcmNoaXZlL21odG1sL01IVE1MQXJjaGl2ZS5oOiBVcGRh
dGVkIGZvciB0aGUgYWJvdmUuIEFsc28gbWFya2VkIHRoZQorICAgICAgICBjbGFzcyBmaW5hbCBh
bmQgYWRkZWQgb3ZlcnJpZGVzIGZvciB0aGUgZm91ciBuZXcgcG9saWN5IG1lbWJlciBmdW5jdGlv
bnMuCisKKyAgICAgICAgKiBsb2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRNTFBhcnNlci5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpNSFRNTFBhcnNlcjo6cGFyc2VBcmNoaXZlV2l0aEhlYWRlcik6IFBh
c3MgUmVmIGluc3RlYWQgb2YgUmVmUHRyCisgICAgICAgIHRvIHNldE1haW5SZXNvdXJjZSBhbmQg
YWRkU3ViZnJhbWVBcmNoaXZlLgorICAgICAgICAoV2ViQ29yZTo6TUhUTUxQYXJzZXI6OmFkZFJl
c291cmNlVG9BcmNoaXZlKTogRGl0dG8uCisKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVk
Q1NTU3R5bGVTaGVldC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRDU1NTdHlsZVNoZWV0
OjpyZXN0b3JlUGFyc2VkU3R5bGVTaGVldCk6IFJldHVybiBSZWZQdHIgaW5zdGVhZAorICAgICAg
ICBvZiBQYXNzUmVmUHRyLgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNo
ZWV0Lmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRlci9jYWNoZS9D
YWNoZWRSZXNvdXJjZVJlcXVlc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3Vy
Y2VSZXF1ZXN0OjpzZXRJbml0aWF0b3IpOiBUYWtlIGEgcmVmZXJlbmNlIGluc3RlYWQgb2YgYQor
ICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJj
ZVJlcXVlc3QuaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLgorCisgICAgICAgICogbG9hZGVyL2Nv
Y29hL0Rpc2tDYWNoZU1vbml0b3IuaDogUmVtb3ZlZC4gVGhpcyBpcyBhIGR1cGxpY2F0ZSwgdW51
c2VkIGNvcHkKKyAgICAgICAgb2YgRGlza0NhY2hlTW9uaXRvckNvY29hLmguCisKKyAgICAgICAg
KiBsb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvckNvY29hLmg6IFJlbW92ZWQgdW5uZWVkZWQg
ZXhwb3J0aW5nIGFuZCB2aXJ0dWFsCisgICAgICAgIG1lbWJlciBmdW5jdGlvbnMsIG1hZGUgbW9y
ZSB0aGluZ3MgcHJpdmF0ZSwgYW5kIGNoYW5nZWQgcmV0dXJuIHR5cGUgdG8gUmVmUHRyCisgICAg
ICAgIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKiBsb2FkZXIvY29jb2EvRGlza0Nh
Y2hlTW9uaXRvckNvY29hLm1tOgorICAgICAgICAoV2ViQ29yZTo6RGlza0NhY2hlTW9uaXRvcjo6
dHJ5R2V0RmlsZUJhY2tlZFNoYXJlZEJ1ZmZlckZyb21DRlVSTENhY2hlZFJlc3BvbnNlKToKKyAg
ICAgICAgQ2hhbmdlZCByZXR1cm4gdHlwZSB0byBSZWZQdHIgaW5zdGVhZCBvZiBQYXNzUmVmUHRy
LgorCisgICAgICAgICogbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6Okljb25EYXRhYmFzZTo6c2V0SWNvbkRhdGFGb3JJY29uVVJMKTogVGFrZSByYXcgcG9p
bnRlciBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJDb3JlOjpJ
Y29uRGF0YWJhc2U6OmdldE9yQ3JlYXRlSWNvblJlY29yZCk6IFJldHVybiBSZWYgaW5zdGVhZCBv
ZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6SWNvbkRhdGFiYXNlOjpnZXRJbWFnZURh
dGFGb3JJY29uVVJMRnJvbVNRTERhdGFiYXNlKTogUmV0dXJuIFJlZlB0cgorICAgICAgICBpbnN0
ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgICogbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmg6
IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4gQWxzbyBtYXJrZWQgZnVuY3Rpb25zIGZpbmFsCisgICAg
ICAgIGluc3RlYWQgb2Ygb3ZlcnJpZGUuCisgICAgICAgICogbG9hZGVyL2ljb24vSWNvbkRhdGFi
YXNlQmFzZS5oOiBEaXR0by4KKworICAgICAgICAqIGxvYWRlci9pY29uL1BhZ2VVUkxSZWNvcmQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6UGFnZVVSTFJlY29yZDo6UGFnZVVSTFJlY29yZCk6IE1v
dmVkIGluaXRpYWxpemF0aW9uIHRvIHRoZSBoZWFkZXIuCisgICAgICAgIChXZWJDb3JlOjpQYWdl
VVJMUmVjb3JkOjp+UGFnZVVSTFJlY29yZCk6IFdyb3RlIGNvZGUgaGVyZSBpbnN0ZWFkIG9mIGNh
bGxpbmcKKyAgICAgICAgc2V0SWNvblJlY29yZChudWxscHRyKS4KKyAgICAgICAgKFdlYkNvcmU6
OlBhZ2VVUkxSZWNvcmQ6OnNldEljb25SZWNvcmQpOiBUYWtlIFJlZlB0ciYmIGluc3RlYWQgb2Yg
UGFzc1JlZlB0ci4KKyAgICAgICAgKiBsb2FkZXIvaWNvbi9QYWdlVVJMUmVjb3JkLmg6IFVwZGF0
ZCBmb3IgdGhlIGFib3ZlLgorCisgICAgICAgICogbG9hZGVyL2lvcy9RdWlja0xvb2suaDoKKyAg
ICAgICAgKFdlYkNvcmU6OlF1aWNrTG9va0hhbmRsZTo6c2V0Q2xpZW50KTogVGFrZSBSZWYmJiBp
bnN0ZWFkIG9mIFBhc3NSZUZQdHIuCisgICAgICAgICogbG9hZGVyL2lvcy9RdWlja0xvb2subW06
CisgICAgICAgICgtW1dlYlJlc291cmNlTG9hZGVyUXVpY2tMb29rRGVsZWdhdGUgaW5pdFdpdGhS
ZXNvdXJjZUxvYWRlcjpdKTogVGFrZQorICAgICAgICByZWZlcmVuY2UgaW5zdGVhZCBvZiBQYXNz
UmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6UXVpY2tMb29rSGFuZGxlOjpjcmVhdGUpOiBQYXNz
IHJlZmVyZW5jZSBpbnN0ZWFkIG9mIHBvaW50ZXIuCisKKyAgICAgICAgKiBwYWdlL0Nocm9tZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpDaHJvbWU6OnJ1bk9wZW5QYW5lbCk6IFVwZGF0ZWQgdG8g
dGFrZSB0d28gcmVmZXJlbmNlcy4KKyAgICAgICAgKiBwYWdlL0Nocm9tZS5oOiBEaXR0by4KKyAg
ICAgICAgKiBwYWdlL0Nocm9tZUNsaWVudC5oOiBkaXR0by4KKworICAgICAgICAqIHBhZ2UvRE9N
V2luZG93LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRPTVdpbmRvdzo6YXBwbGljYXRpb25DYWNo
ZSk6IFBhc3MgYSByZWZlcmVuY2UuCisgICAgICAgIChXZWJDb3JlOjpET01XaW5kb3c6OnNldExv
Y2F0aW9uKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpET01XaW5kb3c6OmNyZWF0ZVdpbmRv
dyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RE9NV2luZG93OjpvcGVuKTogRGl0dG8uCisK
KyAgICAgICAgKiBwYWdlL0VkaXRvckNsaWVudC5oOiBDaGFuZ2VkIGFyZ3VtZW50cyB0byByZWZl
cmVuY2VzIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKworICAgICAgICAqIHBhZ2UvSGlzdG9yeS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5OjpzdGF0ZU9iamVjdEFkZGVkKTogUGFzcyBh
biBydmFsdWUgcmVmZXJlbmNlLgorCisgICAgICAgICogcGFnZS9Mb2NhdGlvbi5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpMb2NhdGlvbjo6cmVsb2FkKTogUGFzcyByZWZlcmVuY2UgaW5zdGVhZCBv
ZiBwb2ludGVyLgorICAgICAgICAoV2ViQ29yZTo6TG9jYXRpb246OnNldExvY2F0aW9uKTogRGl0
dG8uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9VUkwuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VVJM
OjpzZXRGcmFnbWVudElkZW50aWZpZXIpOiBUYWtlIGEgU3RyaW5nVmlldyByYXRoZXIgdGhhbgor
ICAgICAgICBhIFN0cmluZywgd2hpY2ggaXMgbW9yZSBmbGV4aWJsZSBmb3IgY2FsbGVycy4gQWxz
byBlbGltaW5hdGVkIGFuIHVubmVlZGVkCisgICAgICAgIHN0cmluZyBhbGxvY2F0aW9uIHdoZW4g
dGhlIG9sZCBzdHJpbmcgaGFkIGEgZnJhZ21lbnQgdGhhdCBpcyBiZWluZyByZXBsYWNlZC4KKyAg
ICAgICAgKiBwbGF0Zm9ybS9VUkwuaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLgorCisgICAgICAg
ICogcmVwbGF5L1JlcGxheUlucHV0RGlzcGF0Y2hNZXRob2RzLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkluaXRpYWxOYXZpZ2F0aW9uOjpkaXNwYXRjaCk6IFBhc3MgcmVmZXJlbmNlLgorICAgICAg
ICAqIHN2Zy9TVkdGRUltYWdlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdGRUlt
YWdlRWxlbWVudDo6cmVxdWVzdEltYWdlUmVzb3VyY2UpOiBEaXR0by4KKyAgICAgICAgKiBzdmcv
U1ZHRm9udEZhY2VVcmlFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR0ZvbnRGYWNl
VXJpRWxlbWVudDo6bG9hZEZvbnQpOiBEaXR0by4KKyAgICAgICAgKiBzdmcvU1ZHVXNlRWxlbWVu
dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdVc2VFbGVtZW50Ojp1cGRhdGVFeHRlcm5hbERv
Y3VtZW50KTogRGl0dG8uCisKIDIwMTctMDEtMTUgIE1pY2hhZWwgQ2F0YW56YXJvICA8bWNhdGFu
emFyb0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFtTT1VQXSBTb3VwTmV0d29ya1Nlc3Npb24gY29u
c3RydWN0b3Igc2hvdWxkIGJlIGV4cGxpY2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2lv
cy9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2lvcy9DaGFuZ2VMb2cKaW5kZXggNjFlODQyN2Y4
NmMwYjlmNjI0MzU2YjA3MWQ5MWUxMWJiNzI3MWE5ZS4uOTJlZDQ1NmU4NDIwNzU1ZGFjZGQ2Y2Qy
ZmMwYmIxMzI2OWI5NDJiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9pb3MvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJLaXQvaW9zL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDE3
LTAxLTE1ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUg
UGFzc1JlZlB0ciBmcm9tICJsb2FkZXIiIGRpcmVjdG9yeSBvZiBXZWJDb3JlCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjcwNTUKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dl
YkNocm9tZUNsaWVudElPUy5oOiBVcGRhdGVkIHJ1bk9wZW5QYW5lbCB0byB0YWtlIHJlZmVyZW5j
ZXMuCisgICAgICAgIE1hZGUgY2xhc3MgZmluYWwgYW5kIG1vc3QgZnVuY3Rpb25zIHByaXZhdGUg
YW5kIGZpbmFsLgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudElPUy5t
bToKKyAgICAgICAgKFdlYkNocm9tZUNsaWVudElPUzo6cnVuT3BlblBhbmVsKTogVXBkYXRlZCB0
byB0YWtlIHJlZmVyZW5jZXMuCisKIDIwMTYtMTItMzAgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBw
bGUuY29tPgogCiAgICAgICAgIFJlbW92ZSBQYXNzUmVmUHRyIHVzZSBmcm9tIHRoZSAiZG9tIiBk
aXJlY3RvcnksIHJlbGF0ZWQgY2xlYW51cApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMv
Q2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCmluZGV4IDc1OTM4ZjU2Njdi
NmE2OTQ1N2Q5MWM5MTkzMjIyYTY0Mzc5NjFmNDEuLjI4MDA4YmUwMDNiNjY2OGUxNTY0MDc0ZmZk
Y2ZjOTUwMjM2Zjk4ZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwor
KysgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSw5MCBAQAorMjAxNy0w
MS0xNSAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIFBh
c3NSZWZQdHIgZnJvbSAibG9hZGVyIiBkaXJlY3Rvcnkgb2YgV2ViQ29yZQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY3MDU1CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJD
aHJvbWVDbGllbnQuaDogVXBkYXRlZCBmb3IgY2hhbmdlcyB0byBDaHJvbWVDbGllbnQuCisgICAg
ICAgIEFsc28gbWFkZSBjbGFzcyBmaW5hbCBhbmQgbW9zdCBmdW5jdGlvbnMgcHJpdmF0ZSBhbmQg
ZmluYWwuCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50Lm1tOgorICAg
ICAgICAoV2ViQ2hyb21lQ2xpZW50OjpydW5PcGVuUGFuZWwpOiBVcGRhdGVkIHRvIHRha2UgcmVm
ZXJlbmNlcy4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oOiBV
cGRhdGVkIGZvciBjaGFuZ2VzIHRvIEVkaXRvckNsaWVudC4KKyAgICAgICAgKiBXZWJDb3JlU3Vw
cG9ydC9XZWJFZGl0b3JDbGllbnQubW06CisgICAgICAgICgtW1dlYlVuZG9TdGVwIGluaXRXaXRo
VW5kb1N0ZXA6XSk6IFRha2UgcmVmZXJlbmNlIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAg
ICAgKCtbV2ViVW5kb1N0ZXAgc3RlcFdpdGhVbmRvU3RlcDpdKTogRGl0dG8uCisgICAgICAgICgt
W1dlYlVuZG9TdGVwIHN0ZXBdKTogUmV0dXJuIHJlZmVyZW5jZSBpbnN0ZWFkIG9mIHBvaW50ZXIu
CisgICAgICAgICgtW1dlYkVkaXRvclVuZG9UYXJnZXQgdW5kb0VkaXRpbmc6XSk6IFVwZGF0ZWQg
Zm9yIHRoZSBhYm92ZS4KKyAgICAgICAgKC1bV2ViRWRpdG9yVW5kb1RhcmdldCByZWRvRWRpdGlu
ZzpdKTogRGl0dG8uCisgICAgICAgIChXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb09yUmVk
b1N0ZXApOiBUYWtlIHJlZmVyZW5jZSBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIuCisg
ICAgICAgIChXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb1N0ZXApOiBEaXR0by4KKyAgICAg
ICAgKFdlYkVkaXRvckNsaWVudDo6cmVnaXN0ZXJSZWRvU3RlcCk6IERpdHRvLgorCisgICAgICAg
ICogV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaDogVXBkYXRlZCBmb3IgY2hh
bmdlcyB0bworICAgICAgICBGcmFtZUxvYWRlckNsaWVudCwgbWFya2VkIGZ1bmN0aW9ucyBmaW5h
bCBpbnN0ZWFkIG9mIG92ZXJyaWRlLgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkZyYW1l
TG9hZGVyQ2xpZW50Lm1tOgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNo
RGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKTogVGFrZQorICAgICAgICBwb2ludGVyIGlu
c3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNw
YXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24pOiBEaXR0by4KKyAgICAgICAgKG1h
a2VGb3JtRmllbGRWYWx1ZXNEaWN0aW9uYXJ5KTogVGFrZSBhIHJlZmVyZW5jZS4KKyAgICAgICAg
KFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQpOiBUYWtl
IFJlZiYmIGluc3RlYWQKKyAgICAgICAgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYkZyYW1l
TG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKTogVGFrZSBhIHJlZmVyZW5jZSBp
bnN0ZWFkCisgICAgICAgIG9mIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJGcmFtZUxvYWRlckNs
aWVudDo6YWN0aW9uRGljdGlvbmFyeSk6IFRha2UgYSBwb2ludGVyIGluc3RlYWQgb2YgUGFzc1Jl
UHRyLgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1lKTogVGFrZSBh
IHJlZmVyZW5jZSBpbnN0ZWFkIG9mIGEgcG9pbnRlci4KKyAgICAgICAgKFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpjcmVhdGVQbHVnaW4pOiBEaXR0by4KKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xp
ZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KTogRGl0dG8uCisgICAgICAgIChXZWJGcmFtZUxv
YWRlckNsaWVudDo6Y3JlYXRlTmV0d29ya2luZ0NvbnRleHQpOiBEaXR0by4KKyAgICAgICAgKFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpkaWRDcmVhdGVRdWlja0xvb2tIYW5kbGUpOiBQYXNzIGEgcmVm
ZXJlbmNlLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVOZXR3b3JraW5nQ29u
dGV4dC5oOiBVc2UgUmVmIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKiBXZWJDb3Jl
U3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0Lm1tOiBUd2VhayBzdHlsZSBhIGJpdC4K
KworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLmg6
IFRha2UgYSByZWZlcmVuY2UgaW5zdGVhZCBvZgorICAgICAgICBQYXNzUmVmUHRyLiBVc2UgUmVm
UHRyIGZvciBjbGFzcyBmaWVsZC4KKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJPcGVuUGFu
ZWxSZXN1bHRMaXN0ZW5lci5tbToKKyAgICAgICAgKC1bV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVu
ZXIgZGVhbGxvY10pOiBEZWxldGVkLiBDb21waWxlciB3aWxsIG5vdyBkbyBpdAorICAgICAgICBj
b3JyZWN0bHkgd2l0aG91dCB1cyBkZWNsYXJpbmcgYW55dGhpbmcgZXhwbGljaXRseS4KKyAgICAg
ICAgKC1bV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIgY2FuY2VsXSk6IEdldCByaWQgb2YgaGFu
ZC13cml0dGVuIGRlcmVmIGNvZGUsCisgICAgICAgIGFuZCBsZXQgUmVmUHRyIGRvIHRoZSB3b3Jr
LgorICAgICAgICAoLVtXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lciBjaG9vc2VGaWxlbmFtZTpd
KTogRGl0dG8uCisgICAgICAgICgtW1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyIGNob29zZUZp
bGVuYW1lczpdKTogRGl0dG8uCisgICAgICAgICgtW1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVy
IGNob29zZUZpbGVuYW1lczpkaXNwbGF5U3RyaW5nOmljb25JbWFnZTpdKToKKyAgICAgICAgUmV3
cm90ZSB0byB1c2UgYSBtb2Rlcm4gT2JqZWN0aXZlLUMgZm9yIGxvb3AsIHJlc2VydmVJbml0aWFs
Q2FwYWNpdHksCisgICAgICAgIGFuZCB1bmNoZWNrZWRBcHBlbmQuCisKKyAgICAgICAgKiBXZWJW
aWV3L1dlYkFyY2hpdmUubW06CisgICAgICAgICgtW1dlYkFyY2hpdmUgaW5pdFdpdGhNYWluUmVz
b3VyY2U6c3VicmVzb3VyY2VzOnN1YmZyYW1lQXJjaGl2ZXM6XSk6CisgICAgICAgIFVwZGF0ZWQg
Zm9yIGNoYW5nZXMgdG8gTGVnYWN5V2ViQXJjaGl2ZS4KKyAgICAgICAgKC1bV2ViQXJjaGl2ZSBt
YWluUmVzb3VyY2VdKTogRGl0dG8uCisgICAgICAgICgtW1dlYkFyY2hpdmUgc3VicmVzb3VyY2Vz
XSk6IERpdHRvLgorICAgICAgICAoLVtXZWJBcmNoaXZlIHN1YmZyYW1lQXJjaGl2ZXNdKTogRGl0
dG8uCisKKyAgICAgICAgKiBXZWJWaWV3L1dlYkRhdGFTb3VyY2UubW06CisgICAgICAgICgtW1dl
YkRhdGFTb3VyY2UgX2FkZFN1YmZyYW1lQXJjaGl2ZXM6XSk6IFVzZSBhIG1vZGVybiBPYmplY3Rp
dmUtQyBmb3IgbG9vcAorICAgICAgICBpbnN0ZWFkIG9mIE5TRW51bWVyYXRvci4KKyAgICAgICAg
KC1bV2ViRGF0YVNvdXJjZSBfZmlsZVdyYXBwZXJGb3JVUkw6XSk6IFVzZSBhdXRvLgorICAgICAg
ICAoLVtXZWJEYXRhU291cmNlIF9kb2N1bWVudEZyYWdtZW50V2l0aEFyY2hpdmU6XSk6IFBhc3Mg
YSByZWZlcmVuY2UuCisgICAgICAgICgtW1dlYkRhdGFTb3VyY2UgbWFpblJlc291cmNlXSk6IERp
dHRvLgorICAgICAgICAoLVtXZWJEYXRhU291cmNlIHN1YnJlc291cmNlc10pOiBEaXR0by4KKyAg
ICAgICAgKC1bV2ViRGF0YVNvdXJjZSBzdWJyZXNvdXJjZUZvclVSTDpdKTogRGl0dG8uCisgICAg
ICAgICgtW1dlYkRhdGFTb3VyY2UgYWRkU3VicmVzb3VyY2U6XSk6IERpdHRvLgorCisgICAgICAg
ICogV2ViVmlldy9XZWJSZXNvdXJjZS5tbToKKyAgICAgICAgKC1bV2ViUmVzb3VyY2VQcml2YXRl
IGluaXRXaXRoQ29yZVJlc291cmNlOl0pOiBUYWtlIFJlZiYmIGluc3RlYWQgb2YgUGFzc1JlZlB0
ci4KKyAgICAgICAgKC1bV2ViUmVzb3VyY2VQcml2YXRlIGRlYWxsb2NdKTogUmVtb3ZlIGV4cGxp
Y2l0IGRlcmVmIHNpbmNlIFJlZlB0ciB3aWxsIG5vdyB0YWtlCisgICAgICAgIGNhcmUgb2YgaXQK
KyAgICAgICAgKC1bV2ViUmVzb3VyY2UgaW5pdFdpdGhDb2RlcjpdKTogUGFzcyBhIHJlZmVyZW5j
ZS4KKyAgICAgICAgKC1bV2ViUmVzb3VyY2UgZW5jb2RlV2l0aENvZGVyOl0pOiBVcGRhdGVkIHNp
bmNlIGNvcmVSZXNvdXJjZSBpcyBub3cgUmVmUHRyLgorICAgICAgICAoLVtXZWJSZXNvdXJjZSBf
aW5pdFdpdGhDb3JlUmVzb3VyY2U6XSk6IFRha2UgUmVmJiYgaW5zdGVhZCBvZiBQYXNzUmVmUHRy
LgorICAgICAgICAoLVtXZWJSZXNvdXJjZSBfY29yZVJlc291cmNlXSk6IFJldHVybiByZWZlcmVu
Y2UgcmF0aGVyIHRoYW4gcG9pbnRlci4KKyAgICAgICAgKC1bV2ViUmVzb3VyY2UgX2luaXRXaXRo
RGF0YTpVUkw6TUlNRVR5cGU6dGV4dEVuY29kaW5nTmFtZTpmcmFtZU5hbWU6cmVzcG9uc2U6Y29w
eURhdGE6XSk6CisgICAgICAgIEFkZGVkIGNvZGUgdG8gaGFuZGxlIHRoZSBudWxsIGNhc2UgYW5k
IHBhc3MgYSByZWZlcmVuY2UgcmF0aGVyIHRoYW4gYSBwb2ludGVyLgorICAgICAgICAqIFdlYlZp
ZXcvV2ViUmVzb3VyY2VJbnRlcm5hbC5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKIDIwMTct
MDEtMTUgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CiAKICAgICAgICAg
RGUtZHVwbGljYXRlIG1vcmUgKG5lYXJseSkgaWRlbnRpY2FsIGNvZGUgaW4gRWRpdG9yKE1hY3xJ
T1MpLm1tCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cgYi9Tb3VyY2Uv
V2ViS2l0L3dpbi9DaGFuZ2VMb2cKaW5kZXggY2Q3ZjY4ZGY1YmY2MTMzZTAyZDIxYzhlYzYyYjlj
OTJkZTU3MmUwMC4uNzA3YzY5YzlkMzBiMDE0MjE5OGNhYzg0ZDc0NDJhY2Q4NjNhN2VjZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQv
d2luL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDE3LTAxLTE1ICBEYXJpbiBBZGxlciAg
PGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgUGFzc1JlZlB0ciBmcm9tICJsb2Fk
ZXIiIGRpcmVjdG9yeSBvZiBXZWJDb3JlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xNjcwNTUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICAqIFBsdWdpbnMvUGx1Z2luVmlldy5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpQbHVnaW5WaWV3OjptZWRpYUNhblN0YXJ0KTogRml4IGNhbGwgdG8gZGlzcGF0Y2hEaWRG
YWlsVG9TdGFydFBsdWdpbgorICAgICAgICBieSBjYWxsaW5nIGl0IGRpcmVjdGx5IG9uIFdlYkZy
YW1lTG9hZGVyQ2xpZW50LiBJZiBteSB0aGVvcnkgaXMgY29ycmVjdCwgdGhlIG9sZAorICAgICAg
ICBjYWxsIGhhcyBiZWVuIGJyb2tlbiBhbmQgZG9pbmcgbm90aGluZyBzaW5jZSByMTc3OTQxLCB0
d28geWVhcnMgYWdvLCB3aGljaCBtYWRlCisgICAgICAgIHRoZSBhcmd1bWVudCB0eXBlcyBkaWZm
ZXJlbnQgYmV0d2VlbiBGcmFtZUxvYWRlckNsaWVudCBhbmQgV2ViRnJhbWVMb2FkZXJDbGllbnQs
CisgICAgICAgIGxlYXZpbmcgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmFpbFRv
U3RhcnRQbHVnaW4gYXMgZGVhZCBjb2RlLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2Vi
Q2hyb21lQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYkNocm9tZUNsaWVudDo6cnVuT3BlblBhbmVs
KTogVXBkYXRlZCBmb3IgY2hhbmdlIHRvIENocm9tZUNsaWVudC4KKyAgICAgICAgKiBXZWJDb3Jl
U3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaDogRGl0dG8uCisKKyAgICAgICAgKiBXZWJDb3JlU3Vw
cG9ydC9XZWJFZGl0b3JDbGllbnQuY3BwOgorICAgICAgICAoV2ViRWRpdG9yVW5kb0NvbW1hbmQ6
OldlYkVkaXRvclVuZG9Db21tYW5kKTogVGFrZSBhIHJlZmVyZW5jZSBpbnN0ZWFkIG9mCisgICAg
ICAgIGEgUGFzc1JlZlB0ci4gQWxzbyB1c2UgUmVmIGluc3RlYWQgb2YgUmVmUHRyLgorICAgICAg
ICAoV2ViRWRpdG9yQ2xpZW50OjpzaG91bGRDaGFuZ2VUeXBpbmdTdHlsZSk6IERlbGV0ZWQuIEVt
cHR5IGZ1bmN0aW9uIHRoYXQgd2FzCisgICAgICAgIG5ldmVyIGNhbGxlZC4KKyAgICAgICAgKFdl
YkVkaXRvckNsaWVudDo6d2ViVmlld0RpZENoYW5nZVR5cGluZ1N0eWxlKTogRGl0dG8uCisgICAg
ICAgIChXZWJFZGl0b3JDbGllbnQ6OndlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb24pOiBEaXR0by4K
KyAgICAgICAgKFdlYkVkaXRvckNsaWVudDo6cmVnaXN0ZXJVbmRvU3RlcCk6ICBUYWtlIHJlZmVy
ZW5jZSBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJFZGl0b3JDbGllbnQ6OnJl
Z2lzdGVyUmVkb1N0ZXApOiBEaXR0by4KKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJFZGl0
b3JDbGllbnQuaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLiBBbHNvIG1hcmtlZCB0aGUKKyAgICAg
ICAgY2xhc3MgYW5kIG1lbWJlciBmdW5jdGlvbnMgZmluYWwgYW5kIG1hZGUgdGhlbSBhbGwgcHJp
dmF0ZSwgd2hpY2ggd2lsbAorICAgICAgICBoZWxwIHVzIGNhdGNoIGlmIHRoZXJlIGFyZSBhbnkg
dGhhdCBkb24ndCBjb3JyZWN0bHkgbWF0Y2ggV2ViQ29yZS4KKworICAgICAgICAqIFdlYkNvcmVT
dXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbik6IFVwZGF0ZWQK
KyAgICAgICAgZm9yIGNoYW5nZSB0byBDaHJvbWVDbGllbnQuCisgICAgICAgIChXZWJGcmFtZUxv
YWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKTogRGl0
dG8uCisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1p
dEV2ZW50KTogRGl0dG8uCisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hX
aWxsU3VibWl0Rm9ybSk6IERpdHRvLgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNy
ZWF0ZUZyYW1lKTogRGl0dG8uIEFsc28gbWVyZ2VkIHR3byBmdW5jdGlvbnMgaW50bworICAgICAg
ICBvbmUgYmVjYXVzZSBvbmUgd2FzIHByaXZhdGUgYW5kIG9ubHkgY2FsbGVkIGJ5IHRoZSBvdGhl
ci4KKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4pOiBEaXR0by4K
KyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KTog
RGl0dG8uCisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlTmV0d29ya2luZ0Nv
bnRleHQpOiBEaXR0by4KKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNs
aWVudC5oOiBEaXR0by4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTmV0d29y
a2luZ0NvbnRleHQuaDoKKyAgICAgICAgKFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQ6OmNyZWF0
ZSk6IFJldHVybiBhIFJlZiBpbnN0ZWFkIG9mIGEgUGFzc1JlZlB0ci4KKwogMjAxNy0wMS0xMiAg
Sm9zZXBoIFBlY29yYXJvICA8cGVjb3Jhcm9AYXBwbGUuY29tPgogCiAgICAgICAgIFJlbW92ZSB1
bm5lY2Vzc2FyeSBpbmNsdWRlcyBvZiBQYWdlLmgKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCA3Yjg5M2IxMmRhMDQz
MzA1N2ZjYjAyYTMzZTkzYTNjZjE5NmVhNDVmLi4zMzQ1ZjQ4YTg0NmExNjQ3NTg5YmFiM2M1OGQ2
MmYyOGVlZGE5ODAzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQwIEBACisyMDE3LTAxLTE1ICBE
YXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgUGFzc1JlZlB0
ciBmcm9tICJsb2FkZXIiIGRpcmVjdG9yeSBvZiBXZWJDb3JlCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjcwNTUKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworMjAxNy0wMS0xNSAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBs
ZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIFBhc3NSZWZQdHIgZnJvbSAibG9hZGVyIiBkaXJlY3Rv
cnkgb2YgV2ViQ29yZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTY3MDU1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBTaGFyZWQvQVBJV2ViQXJjaGl2ZS5oOiBVc2UgUmVmUHRyJiYgaW5zdGVhZCBvZiBQ
YXNzUmVmUHRyLgorICAgICAgICAqIFNoYXJlZC9BUElXZWJBcmNoaXZlLm1tOgorICAgICAgICAo
QVBJOjpXZWJBcmNoaXZlOjpjcmVhdGUpOiBEaXR0by4KKyAgICAgICAgKEFQSTo6V2ViQXJjaGl2
ZTo6V2ViQXJjaGl2ZSk6IERpdHRvLgorICAgICAgICAoQVBJOjpXZWJBcmNoaXZlOjpzdWJyZXNv
dXJjZXMpOiBEaXR0by4KKyAgICAgICAgKEFQSTo6V2ViQXJjaGl2ZTo6c3ViZnJhbWVBcmNoaXZl
cyk6IERpdHRvLgorCisgICAgICAgICogU2hhcmVkL1RleHRDaGVja2VyU3RhdGUuaDogSW5pdGlh
bGl6ZSBkYXRhIG1lbWJlcnMgc28gY2xhc3NlcworICAgICAgICB1c2luZyB0aGlzIHdvbid0IGhh
dmUgdG8gZXhwbGljaXRseSBpbml0YWxpemUgdGhlbS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9X
ZWJJY29uRGF0YWJhc2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJJY29uRGF0YWJhc2U6OnNl
dEljb25EYXRhRm9ySWNvblVSTCk6IFBhc3MgYSByYXcKKyAgICAgICAgcG9pbnRlciB0byBXZWJD
b3JlLgorCisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oOiBSZW1vdmVkIGZvcndh
cmQgZGVjbGFyYXRpb24gb2YKKyAgICAgICAgU3RyaW5nUGFpclZlY3Rvciwgbm90IG5lZWRlZCBo
ZXJlLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9JY29uRGF0YWJhc2UvV2ViSWNvbkRhdGFiYXNl
UHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJJY29uRGF0YWJhc2VQcm94eTo6V2ViSWNv
bkRhdGFiYXNlUHJveHkpOiBUYWtlIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViS2l0OjpXZWJJ
Y29uRGF0YWJhc2VQcm94eTo6cmV0YWluSWNvbkZvclBhZ2VVUkwpOiBVcGRhdGVkIGZvciByZWZl
cmVuY2UuCisgICAgICAgIChXZWJLaXQ6OldlYkljb25EYXRhYmFzZVByb3h5OjpyZWxlYXNlSWNv
bkZvclBhZ2VVUkwpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViSWNvbkRhdGFiYXNlUHJv
eHk6OnN5bmNocm9ub3VzSWNvbkZvclBhZ2VVUkwpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6
V2ViSWNvbkRhdGFiYXNlUHJveHk6OmxvYWREZWNpc2lvbkZvckljb25VUkwpOiBEaXR0by4KKyAg
ICAgICAgKFdlYktpdDo6V2ViSWNvbkRhdGFiYXNlUHJveHk6OnJlY2VpdmVkSWNvbkxvYWREZWNp
c2lvbik6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJJY29uRGF0YWJhc2VQcm94eTo6aWNv
bkRhdGFGb3JJY29uVVJMKTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkljb25EYXRhYmFz
ZVByb3h5OjpzZXRJY29uVVJMRm9yUGFnZVVSTCk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpX
ZWJJY29uRGF0YWJhc2VQcm94eTo6c2V0SWNvbkRhdGFGb3JJY29uVVJMKTogRGl0dG8uCisgICAg
ICAgICogV2ViUHJvY2Vzcy9JY29uRGF0YWJhc2UvV2ViSWNvbkRhdGFiYXNlUHJveHkuaDogVXBk
YXRlZCBmb3IgdGhlIGFib3ZlLgorICAgICAgICBNYXJrZWQgdGhlIGNsYXNzIGZpbmFsLCBtYWRl
IG1vc3QgZnVuY3Rpb25zIHByaXZhdGUgYW5kIGZpbmFsLgorCisgICAgICAgICogV2ViUHJvY2Vz
cy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rpb24uY3BwOgorICAg
ICAgICAoV2ViS2l0OjpJbmplY3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rpb246OkluamVjdGVkQnVu
ZGxlTmF2aWdhdGlvbkFjdGlvbik6CisgICAgICAgIFJlbW92ZWQgYXNzZXJ0aW9uIHRoYXQgYSBw
b2ludGVyIGlzIG5vbi1udWxsIHNpbmNlIHRoYXQgcG9pbnRlciBpcyBub3cgYQorICAgICAgICBy
ZWZlcmVuY2UuIExlZnQgdXNlIG9mIFBhc3NSZWZQdHIgaGVyZSBmb3Igbm93LnoKKworICAgICAg
ICAqIFdlYlByb2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5jcHA6CisgICAgICAgIChX
ZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5OjpzY2hlZHVsZUxvYWQpOiBVcGRhdGVkIHNpbmNlIGFw
cGxpY2F0aW9uIGNhY2hlCisgICAgICAgIGhvc3QgaXMgbm93IGEgcmVmZXJlbmNlIHJhdGhlciB0
aG5hIGEgcG9pbnRlci4KKyAgICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VM
b2FkZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJSZXNvdXJjZUxvYWRlcjo6d2lsbFNlbmRS
ZXF1ZXN0KTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYlJlc291cmNlTG9hZGVyOjpkaWRS
ZWNlaXZlUmVzcG9uc2UpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViUmVzb3VyY2VMb2Fk
ZXI6OmRpZEZhaWxSZXNvdXJjZUxvYWQpOiBEaXR0by4KKworICAgICAgICAqIFdlYlByb2Nlc3Mv
UGx1Z2lucy9QbHVnaW5WaWV3LmNwcDoKKyAgICAgICAgKFdlYktpdDo6YnVpbGRIVFRQSGVhZGVy
cyk6IEdvdCByaWQgb2YgdW5uZWVkZWQgdXNlIG9mIFN0cmluZzo6Zm9ybWF0LgorICAgICAgICAo
V2ViS2l0OjpQbHVnaW5WaWV3OjpjcmVhdGUpOiBUYWtlIGEgcmVmZXJlbmNlIGluc3RlYWQgb2Yg
UGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYktpdDo6UGx1Z2luVmlldzo6UGx1Z2luVmlldyk6IERp
dHRvLiBBbHNvIG1vdmVkIG11Y2ggb2YgdGhlIGRhdGEKKyAgICAgICAgbWVtYmVyIGluaXRpYWxp
emF0aW9uIHRvIHRoZSBjbGFzcyBkZWZpbml0aW9uLgorICAgICAgICAoV2ViS2l0OjpQbHVnaW5W
aWV3OjpyZWNyZWF0ZUFuZEluaXRpYWxpemUpOiBUYWtlIFJlZiYmIGluc3RlYWQgb2YgUGFzc1Jl
ZlB0ci4KKyAgICAgICAgKFdlYktpdDo6UGx1Z2luVmlldzo6bWFudWFsTG9hZERpZFJlY2VpdmVS
ZXNwb25zZSk6IFVwZGF0ZWQgZm9yIGNoYW5nZSB0bworICAgICAgICBNYW51YWxTdHJlYW1TdGF0
ZSBlbnVtZXJhdGlvbi4KKyAgICAgICAgKFdlYktpdDo6UGx1Z2luVmlldzo6bWFudWFsTG9hZERp
ZFJlY2VpdmVEYXRhKTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OlBsdWdpblZpZXc6Om1hbnVh
bExvYWREaWRGaW5pc2hMb2FkaW5nIERpdHRvLik6CisgICAgICAgIChXZWJLaXQ6OlBsdWdpblZp
ZXc6Om1hbnVhbExvYWREaWRGYWlsKTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OlBsdWdpblZp
ZXc6OmxpdmVSZXNvdXJjZURhdGEpOiBSZXR1cm4gUmVmUHRyIGluc2VhZCBvZiBQYXNzUmVmUHRy
LgorICAgICAgICAoV2ViS2l0OjpQbHVnaW5WaWV3OjpyZWRlbGl2ZXJNYW51YWxTdHJlYW0pOiBV
cGRhdGVkIGZvciBNYW51YWxTdHJlYW1TdGF0ZS4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1BsdWdp
bnMvUGx1Z2luVmlldy5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuIEFsc28gY2hhbmdlZAorICAg
ICAgICBNYW51YWxTdHJlYW1TdGF0ZSBpbnRvIGFuIGVudW0gY2xhc3MuCisKKyAgICAgICAgKiBX
ZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHA6IENoYW5nZWQgbV9w
YWdlIHRvIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6OnJ1
bk9wZW5QYW5lbCk6IFRha2UgYm90aCBhcmd1bWVudHMgYXMgcmVmZXJlbmNlcy4KKyAgICAgICAg
KiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oOiBVcGRhdGVkIGZv
ciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVk
aXRvckNsaWVudC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkVkaXRvckNsaWVudDo6cmVnaXN0
ZXJVbmRvU3RlcCk6IFRha2UgcmVmZXJlbmNlIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAg
ICAgKFdlYktpdDo6V2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclJlZG9TdGVwKTogRGl0dG8uCisg
ICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuaDogVXBk
YXRlZCBmb3IgdGhlIGFib3ZlCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKToKKyAgICAg
ICAgVXBkYXRlZCBmb3IgY2hhbmdlIHRvIEZyYW1lTG9hZGVyQ2xpZW50LgorICAgICAgICAoV2Vi
S2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0
aW9uQWN0aW9uKTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50
OjpkaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0pOiBEaXR0by4KKyAg
ICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1lKTogRGl0dG8u
CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4pOiBE
aXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OnJlY3JlYXRlUGx1
Z2luKTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVh
dGVKYXZhQXBwbGV0V2lkZ2V0KTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpjcmVhdGVOZXR3b3JraW5nQ29udGV4dCk6IERpdHRvLgorICAgICAgICAoV2Vi
S2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlkUmVxdWVzdEF1dG9jb21wbGV0ZSk6IERpdHRv
LgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGll
bnQuaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9pb3MvV2ViQ2hyb21lQ2xpZW50SU9TLm1tOgorICAgICAgICAoV2ViS2l0OjpX
ZWJDaHJvbWVDbGllbnQ6OmRpZFJlY2VpdmVNb2JpbGVEb2NUeXBlKTogVXBkYXRlZCBzaW5jZSBt
X3BhZ2UgaXMgYQorICAgICAgICByZWZlcmVuY2Ugbm93LgorICAgICAgICAoV2ViS2l0OjpXZWJD
aHJvbWVDbGllbnQ6Om9ic2VydmVkQ29udGVudENoYW5nZSk6IERpdHRvLgorICAgICAgICAoV2Vi
S2l0OjpXZWJDaHJvbWVDbGllbnQ6Om5vdGlmeVJldmVhbGVkU2VsZWN0aW9uQnlTY3JvbGxpbmdG
cmFtZSk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6OmRpZExheW91
dCk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6OmRpZFN0YXJ0T3Zl
cmZsb3dTY3JvbGwpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViQ2hyb21lQ2xpZW50Ojpk
aWRFbmRPdmVyZmxvd1Njcm9sbCk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJvbWVD
bGllbnQ6Omhhc1N0YWJsZVBhZ2VTY2FsZUZhY3Rvcik6IERpdHRvLgorICAgICAgICAoV2ViS2l0
OjpXZWJDaHJvbWVDbGllbnQ6OnNob3dQbGF5YmFja1RhcmdldFBpY2tlcik6IERpdHRvLgorICAg
ICAgICAoV2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6OmV2ZW50VGhyb3R0bGluZ0RlbGF5KTogRGl0
dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkNocm9tZUNsaWVudDo6ZGV2aWNlT3JpZW50YXRpb24p
OiBEaXR0by4KKworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6V2ViUGFnZTo6V2ViUGFnZSk6IFBhc3MgcmVmZXJlbmNlLgorICAgICAg
ICAoV2ViS2l0OjpXZWJQYWdlOjpjcmVhdGVQbHVnaW4pOiBSZXR1cm4gUmVmUHRyIGluc3RlYWQg
b2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6ZnJvbUNvcmVQYWdlKTog
VXBkYXRlZCBmb3IgY2hhbmdlIHRvIFdlYkNocm9tZUNsaWVudC4KKyAgICAgICAgKFdlYktpdDo6
V2ViUGFnZTo6c2V0SGVhZGVyUGFnZUJhbm5lcik6IFRha2UgcG9pbnRlciBpbnN0ZWFkIG9mIFBh
c3NSZWZQdHIuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnNldEZvb3RlclBhZ2VCYW5uZXIp
OiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6c2V0QWN0aXZlT3BlblBhbmVsUmVz
dWx0TGlzdGVuZXIpOiBUYWtlIFJlZiYmIGluc3RlYWQgb2YKKyAgICAgICAgUGFzc1JlZlB0ci4K
KyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6Y3VycmVudFNlbGVjdGlvbkFzUmFuZ2UpOiBSZXR1
cm4gUmVmUHRyIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYktpdDo6V2ViUGFn
ZTo6cmFuZ2VGcm9tRWRpdGluZ1JhbmdlKTogRGl0dG8uCisgICAgICAgICogV2ViUHJvY2Vzcy9X
ZWJQYWdlL1dlYlBhZ2UuaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLgorCisgICAgICAgICogV2Vi
UHJvY2Vzcy9XZWJQYWdlL2VmbC9XZWJQYWdlRWZsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2Vi
UGFnZTo6Y2FjaGVkUmVzcG9uc2VEYXRhRm9yVVJMKTogUmV0dXJuIFJlZlB0ciBpbnN0ZWFkIG9m
IFBhc3NSZWZQdHIuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvZ3RrL1dlYlBhZ2VH
dGsuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpjYWNoZWRSZXNwb25zZURhdGFGb3JV
UkwpOiBSZXR1cm4gUmVmUHRyIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKworICAgICAgICAqIFdl
YlByb2Nlc3MvV2ViUGFnZS9tYWMvV2ViUGFnZU1hYy5tbToKKyAgICAgICAgKFdlYktpdDo6V2Vi
UGFnZTo6Y2FjaGVkUmVzcG9uc2VEYXRhRm9yVVJMKTogUmV0dXJuIFJlZlB0ciBpbnN0ZWFkIG9m
IFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnNldFRvcE92ZXJoYW5nSW1h
Z2UpOiBUYWtlIHJhdyBwb2ludGVyIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdl
YktpdDo6V2ViUGFnZTo6c2V0Qm90dG9tT3ZlcmhhbmdJbWFnZSk6IERpdHRvLgorCisgICAgICAg
ICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vz
czo6V2ViUHJvY2Vzcyk6IFBhc3MgYSByZWZlcmVuY2UuIE1vdmUgbW9zdCBpbml0aWFsaXphdGlv
biB0bworICAgICAgICB0aGUgY2xhc3MgZGVmaW5pdGlvbi4KKyAgICAgICAgKiBXZWJQcm9jZXNz
L1dlYlByb2Nlc3MuaDogVXBkYWVkIGZvciB0aGUgYWJvdmUuCisKIDIwMTctMDEtMTQgIFRpbSBI
b3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIHVudXNl
ZCBXS1ZpZXcgaW5pdGlhbGl6ZXIgcGFyYW1ldGVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9kb20vRG9jdW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAppbmRl
eCA3YWYyNjA4YzA5NmIyODc5M2Y2M2IyZDFiN2QzOTViNzliNDRmNzljLi4xODllZjFjMTZmMDAx
MTRmYmY0N2EyNjEzM2JmYzZlZGMwNWRlMTgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9k
b20vRG9jdW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKQEAg
LTMxNDEsNyArMzE0MSw3IEBAIHZvaWQgRG9jdW1lbnQ6OnByb2Nlc3NIdHRwRXF1aXYoY29uc3Qg
U3RyaW5nJiBlcXVpdiwgY29uc3QgU3RyaW5nJiBjb250ZW50LCBib29sCiAgICAgICAgICAgICBl
bHNlCiAgICAgICAgICAgICAgICAgY29tcGxldGVkVVJMID0gY29tcGxldGVVUkwodXJsU3RyaW5n
KTsKICAgICAgICAgICAgIGlmICghcHJvdG9jb2xJc0phdmFTY3JpcHQoY29tcGxldGVkVVJMKSkK
LSAgICAgICAgICAgICAgICBmcmFtZS0+bmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlUmVk
aXJlY3QodGhpcywgZGVsYXksIGNvbXBsZXRlZFVSTCk7CisgICAgICAgICAgICAgICAgZnJhbWUt
Pm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZVJlZGlyZWN0KCp0aGlzLCBkZWxheSwgY29t
cGxldGVkVVJMKTsKICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgIFN0cmluZyBt
ZXNzYWdlID0gIlJlZnVzZWQgdG8gcmVmcmVzaCAiICsgbV91cmwuc3RyaW5nQ2VudGVyRWxsaXBz
aXplZFRvTGVuZ3RoKCkgKyAiIHRvIGEgamF2YXNjcmlwdDogVVJMIjsKICAgICAgICAgICAgICAg
ICBhZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpTZWN1cml0eSwgTWVzc2FnZUxldmVs
OjpFcnJvciwgbWVzc2FnZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0Nv
bXBvc2l0ZUVkaXRDb21tYW5kLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRl
RWRpdENvbW1hbmQuY3BwCmluZGV4IGNjZTljYWFlYzFhMDFlZTlmNDhiM2FkYTU4MmFmYTJhNzEx
YzYxODAuLmY3ZmQ0ODQ4YjdlODM2M2UxZDliMDFlYTM5Nzc4YWJiNWJjOGQ0ODUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuY3BwCkBAIC0yMzks
NyArMjM5LDcgQEAgdm9pZCBFZGl0Q29tbWFuZENvbXBvc2l0aW9uOjp1bmFwcGx5KCkKICAgICBm
b3IgKHNpemVfdCBpID0gc2l6ZTsgaTsgLS1pKQogICAgICAgICBtX2NvbW1hbmRzW2kgLSAxXS0+
ZG9VbmFwcGx5KCk7CiAKLSAgICBmcmFtZS0+ZWRpdG9yKCkudW5hcHBsaWVkRWRpdGluZyh0aGlz
KTsKKyAgICBmcmFtZS0+ZWRpdG9yKCkudW5hcHBsaWVkRWRpdGluZygqdGhpcyk7CiAKICAgICBp
ZiAoQVhPYmplY3RDYWNoZTo6YWNjZXNzaWJpbGl0eUVuYWJsZWQoKSkKICAgICAgICAgbV9yZXBs
YWNlZFRleHQucG9zdFRleHRTdGF0ZUNoYW5nZU5vdGlmaWNhdGlvbkZvclVuYXBwbHkobV9kb2N1
bWVudC0+ZXhpc3RpbmdBWE9iamVjdENhY2hlKCkpOwpAQCAtMjY1LDcgKzI2NSw3IEBAIHZvaWQg
RWRpdENvbW1hbmRDb21wb3NpdGlvbjo6cmVhcHBseSgpCiAgICAgZm9yIChhdXRvJiBjb21tYW5k
IDogbV9jb21tYW5kcykKICAgICAgICAgY29tbWFuZC0+ZG9SZWFwcGx5KCk7CiAKLSAgICBmcmFt
ZS0+ZWRpdG9yKCkucmVhcHBsaWVkRWRpdGluZyh0aGlzKTsKKyAgICBmcmFtZS0+ZWRpdG9yKCku
cmVhcHBsaWVkRWRpdGluZygqdGhpcyk7CiAKICAgICBpZiAoQVhPYmplY3RDYWNoZTo6YWNjZXNz
aWJpbGl0eUVuYWJsZWQoKSkKICAgICAgICAgbV9yZXBsYWNlZFRleHQucG9zdFRleHRTdGF0ZUNo
YW5nZU5vdGlmaWNhdGlvbkZvclJlYXBwbHkobV9kb2N1bWVudC0+ZXhpc3RpbmdBWE9iamVjdENh
Y2hlKCkpOwpAQCAtNDE2LDE0ICs0MTYsMTQgQEAgRWRpdENvbW1hbmRDb21wb3NpdGlvbiogQ29t
cG9zaXRlRWRpdENvbW1hbmQ6OmNvbXBvc2l0aW9uKCkgY29uc3QKICAgICByZXR1cm4gbnVsbHB0
cjsKIH0KIAotRWRpdENvbW1hbmRDb21wb3NpdGlvbiogQ29tcG9zaXRlRWRpdENvbW1hbmQ6OmVu
c3VyZUNvbXBvc2l0aW9uKCkKK0VkaXRDb21tYW5kQ29tcG9zaXRpb24mIENvbXBvc2l0ZUVkaXRD
b21tYW5kOjplbnN1cmVDb21wb3NpdGlvbigpCiB7Ci0gICAgQ29tcG9zaXRlRWRpdENvbW1hbmQq
IGNvbW1hbmQgPSB0aGlzOwotICAgIHdoaWxlIChjb21tYW5kICYmIGNvbW1hbmQtPnBhcmVudCgp
KQotICAgICAgICBjb21tYW5kID0gY29tbWFuZC0+cGFyZW50KCk7CisgICAgYXV0byogY29tbWFu
ZCA9IHRoaXM7CisgICAgd2hpbGUgKGF1dG8qIHBhcmVudCA9IGNvbW1hbmQtPnBhcmVudCgpKQor
ICAgICAgICBjb21tYW5kID0gcGFyZW50OwogICAgIGlmICghY29tbWFuZC0+bV9jb21wb3NpdGlv
bikKICAgICAgICAgY29tbWFuZC0+bV9jb21wb3NpdGlvbiA9IEVkaXRDb21tYW5kQ29tcG9zaXRp
b246OmNyZWF0ZShkb2N1bWVudCgpLCBzdGFydGluZ1NlbGVjdGlvbigpLCBlbmRpbmdTZWxlY3Rp
b24oKSwgZWRpdGluZ0FjdGlvbigpKTsKLSAgICByZXR1cm4gY29tbWFuZC0+bV9jb21wb3NpdGlv
bi5nZXQoKTsKKyAgICByZXR1cm4gKmNvbW1hbmQtPm1fY29tcG9zaXRpb247CiB9CiAKIGJvb2wg
Q29tcG9zaXRlRWRpdENvbW1hbmQ6OmlzQ3JlYXRlTGlua0NvbW1hbmQoKSBjb25zdApAQCAtNDY1
LDcgKzQ2NSw3IEBAIHZvaWQgQ29tcG9zaXRlRWRpdENvbW1hbmQ6OmFwcGx5Q29tbWFuZFRvQ29t
cG9zaXRlKFBhc3NSZWZQdHI8RWRpdENvbW1hbmQ+IHBycENvCiAgICAgY29tbWFuZC0+ZG9BcHBs
eSgpOwogICAgIGlmIChjb21tYW5kLT5pc1NpbXBsZUVkaXRDb21tYW5kKCkpIHsKICAgICAgICAg
Y29tbWFuZC0+c2V0UGFyZW50KG51bGxwdHIpOwotICAgICAgICBlbnN1cmVDb21wb3NpdGlvbigp
LT5hcHBlbmQodG9TaW1wbGVFZGl0Q29tbWFuZChjb21tYW5kLmdldCgpKSk7CisgICAgICAgIGVu
c3VyZUNvbXBvc2l0aW9uKCkuYXBwZW5kKHRvU2ltcGxlRWRpdENvbW1hbmQoY29tbWFuZC5nZXQo
KSkpOwogICAgIH0KICAgICBtX2NvbW1hbmRzLmFwcGVuZChXVEZNb3ZlKGNvbW1hbmQpKTsKIH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQu
aCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuaAppbmRleCA4
NWY0MThmN2RiOTE3Y2NmMDE0OGE2Zjc0ZWJjMzhiZWIwNTAzOWIxLi4wMjIxZGM5OTljY2ZlNmZj
NTliMTgxYTlmZjc4MDk5YjZlMzVmM2I3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0
aW5nL0NvbXBvc2l0ZUVkaXRDb21tYW5kLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9D
b21wb3NpdGVFZGl0Q29tbWFuZC5oCkBAIC0xMDUsNyArMTA1LDcgQEAgcHVibGljOgogICAgIHZv
aWQgYXBwbHkoKTsKICAgICBib29sIGlzRmlyc3RDb21tYW5kKEVkaXRDb21tYW5kKiBjb21tYW5k
KSB7IHJldHVybiAhbV9jb21tYW5kcy5pc0VtcHR5KCkgJiYgbV9jb21tYW5kcy5maXJzdCgpID09
IGNvbW1hbmQ7IH0KICAgICBFZGl0Q29tbWFuZENvbXBvc2l0aW9uKiBjb21wb3NpdGlvbigpIGNv
bnN0OwotICAgIEVkaXRDb21tYW5kQ29tcG9zaXRpb24qIGVuc3VyZUNvbXBvc2l0aW9uKCk7Cisg
ICAgRWRpdENvbW1hbmRDb21wb3NpdGlvbiYgZW5zdXJlQ29tcG9zaXRpb24oKTsKIAogICAgIHZp
cnR1YWwgYm9vbCBpc0NyZWF0ZUxpbmtDb21tYW5kKCkgY29uc3Q7CiAgICAgdmlydHVhbCBib29s
IGlzVHlwaW5nQ29tbWFuZCgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRp
dGluZy9FZGl0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCmluZGV4
IDA4ZTUzOTE1Nzc4OGZiNTcxNWZhZWQ5YmNlYzVkNWZlNDNjMTI1ODIuLmZhYzZlNjU1ZjZlYTI1
MzkwOWU2YmUwZGU0ZTk0MjQ4Y2E4MGE0Y2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Vk
aXRpbmcvRWRpdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5jcHAK
QEAgLTk5NiwyMyArOTk2LDIzIEBAIGJvb2wgRWRpdG9yOjp3aWxsVW5hcHBseUVkaXRpbmcoY29u
c3QgRWRpdENvbW1hbmRDb21wb3NpdGlvbiYgY29tcG9zaXRpb24pIGNvbnN0CiAgICAgcmV0dXJu
IGRpc3BhdGNoQmVmb3JlSW5wdXRFdmVudHMoY29tcG9zaXRpb24uc3RhcnRpbmdSb290RWRpdGFi
bGVFbGVtZW50KCksIGNvbXBvc2l0aW9uLmVuZGluZ1Jvb3RFZGl0YWJsZUVsZW1lbnQoKSwgImhp
c3RvcnlVbmRvIik7CiB9CiAKLXZvaWQgRWRpdG9yOjp1bmFwcGxpZWRFZGl0aW5nKFBhc3NSZWZQ
dHI8RWRpdENvbW1hbmRDb21wb3NpdGlvbj4gY21kKQordm9pZCBFZGl0b3I6OnVuYXBwbGllZEVk
aXRpbmcoRWRpdENvbW1hbmRDb21wb3NpdGlvbiYgY29tcG9zaXRpb24pCiB7CiAgICAgZG9jdW1l
bnQoKS51cGRhdGVMYXlvdXQoKTsKIAotICAgIG5vdGlmeVRleHRGcm9tQ29udHJvbHMoY21kLT5z
dGFydGluZ1Jvb3RFZGl0YWJsZUVsZW1lbnQoKSwgY21kLT5lbmRpbmdSb290RWRpdGFibGVFbGVt
ZW50KCkpOworICAgIG5vdGlmeVRleHRGcm9tQ29udHJvbHMoY29tcG9zaXRpb24uc3RhcnRpbmdS
b290RWRpdGFibGVFbGVtZW50KCksIGNvbXBvc2l0aW9uLmVuZGluZ1Jvb3RFZGl0YWJsZUVsZW1l
bnQoKSk7CiAKLSAgICBWaXNpYmxlU2VsZWN0aW9uIG5ld1NlbGVjdGlvbihjbWQtPnN0YXJ0aW5n
U2VsZWN0aW9uKCkpOworICAgIFZpc2libGVTZWxlY3Rpb24gbmV3U2VsZWN0aW9uKGNvbXBvc2l0
aW9uLnN0YXJ0aW5nU2VsZWN0aW9uKCkpOwogICAgIGNoYW5nZVNlbGVjdGlvbkFmdGVyQ29tbWFu
ZChuZXdTZWxlY3Rpb24sIEZyYW1lU2VsZWN0aW9uOjpkZWZhdWx0U2V0U2VsZWN0aW9uT3B0aW9u
cygpKTsKLSAgICBkaXNwYXRjaElucHV0RXZlbnRzKGNtZC0+c3RhcnRpbmdSb290RWRpdGFibGVF
bGVtZW50KCksIGNtZC0+ZW5kaW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCAiaGlzdG9yeVVuZG8i
KTsKKyAgICBkaXNwYXRjaElucHV0RXZlbnRzKGNvbXBvc2l0aW9uLnN0YXJ0aW5nUm9vdEVkaXRh
YmxlRWxlbWVudCgpLCBjb21wb3NpdGlvbi5lbmRpbmdSb290RWRpdGFibGVFbGVtZW50KCksICJo
aXN0b3J5VW5kbyIpOwogCiAgICAgdXBkYXRlRWRpdG9yVUlOb3dJZlNjaGVkdWxlZCgpOwogCi0g
ICAgbV9hbHRlcm5hdGl2ZVRleHRDb250cm9sbGVyLT5yZXNwb25kVG9VbmFwcGxpZWRFZGl0aW5n
KGNtZC5nZXQoKSk7CisgICAgbV9hbHRlcm5hdGl2ZVRleHRDb250cm9sbGVyLT5yZXNwb25kVG9V
bmFwcGxpZWRFZGl0aW5nKCZjb21wb3NpdGlvbik7CiAKICAgICBtX2xhc3RFZGl0Q29tbWFuZCA9
IG51bGxwdHI7Ci0gICAgaWYgKGNsaWVudCgpKQotICAgICAgICBjbGllbnQoKS0+cmVnaXN0ZXJS
ZWRvU3RlcChjbWQpOworICAgIGlmIChhdXRvKiBjbGllbnQgPSB0aGlzLT5jbGllbnQoKSkKKyAg
ICAgICAgY2xpZW50LT5yZWdpc3RlclJlZG9TdGVwKGNvbXBvc2l0aW9uKTsKICAgICByZXNwb25k
VG9DaGFuZ2VkQ29udGVudHMobmV3U2VsZWN0aW9uKTsKIH0KIApAQCAtMTAyMSwyMSArMTAyMSwy
MSBAQCBib29sIEVkaXRvcjo6d2lsbFJlYXBwbHlFZGl0aW5nKGNvbnN0IEVkaXRDb21tYW5kQ29t
cG9zaXRpb24mIGNvbXBvc2l0aW9uKSBjb25zdAogICAgIHJldHVybiBkaXNwYXRjaEJlZm9yZUlu
cHV0RXZlbnRzKGNvbXBvc2l0aW9uLnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCBjb21w
b3NpdGlvbi5lbmRpbmdSb290RWRpdGFibGVFbGVtZW50KCksICJoaXN0b3J5UmVkbyIpOwogfQog
Ci12b2lkIEVkaXRvcjo6cmVhcHBsaWVkRWRpdGluZyhQYXNzUmVmUHRyPEVkaXRDb21tYW5kQ29t
cG9zaXRpb24+IGNtZCkKK3ZvaWQgRWRpdG9yOjpyZWFwcGxpZWRFZGl0aW5nKEVkaXRDb21tYW5k
Q29tcG9zaXRpb24mIGNvbXBvc2l0aW9uKQogewogICAgIGRvY3VtZW50KCkudXBkYXRlTGF5b3V0
KCk7CiAKLSAgICBub3RpZnlUZXh0RnJvbUNvbnRyb2xzKGNtZC0+c3RhcnRpbmdSb290RWRpdGFi
bGVFbGVtZW50KCksIGNtZC0+ZW5kaW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpKTsKKyAgICBub3Rp
ZnlUZXh0RnJvbUNvbnRyb2xzKGNvbXBvc2l0aW9uLnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVu
dCgpLCBjb21wb3NpdGlvbi5lbmRpbmdSb290RWRpdGFibGVFbGVtZW50KCkpOwogCi0gICAgVmlz
aWJsZVNlbGVjdGlvbiBuZXdTZWxlY3Rpb24oY21kLT5lbmRpbmdTZWxlY3Rpb24oKSk7CisgICAg
VmlzaWJsZVNlbGVjdGlvbiBuZXdTZWxlY3Rpb24oY29tcG9zaXRpb24uZW5kaW5nU2VsZWN0aW9u
KCkpOwogICAgIGNoYW5nZVNlbGVjdGlvbkFmdGVyQ29tbWFuZChuZXdTZWxlY3Rpb24sIEZyYW1l
U2VsZWN0aW9uOjpkZWZhdWx0U2V0U2VsZWN0aW9uT3B0aW9ucygpKTsKLSAgICBkaXNwYXRjaElu
cHV0RXZlbnRzKGNtZC0+c3RhcnRpbmdSb290RWRpdGFibGVFbGVtZW50KCksIGNtZC0+ZW5kaW5n
Um9vdEVkaXRhYmxlRWxlbWVudCgpLCAiaGlzdG9yeVJlZG8iKTsKKyAgICBkaXNwYXRjaElucHV0
RXZlbnRzKGNvbXBvc2l0aW9uLnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCBjb21wb3Np
dGlvbi5lbmRpbmdSb290RWRpdGFibGVFbGVtZW50KCksICJoaXN0b3J5UmVkbyIpOwogICAgIAog
ICAgIHVwZGF0ZUVkaXRvclVJTm93SWZTY2hlZHVsZWQoKTsKIAogICAgIG1fbGFzdEVkaXRDb21t
YW5kID0gbnVsbHB0cjsKLSAgICBpZiAoY2xpZW50KCkpCi0gICAgICAgIGNsaWVudCgpLT5yZWdp
c3RlclVuZG9TdGVwKGNtZCk7CisgICAgaWYgKGF1dG8qIGNsaWVudCA9IHRoaXMtPmNsaWVudCgp
KQorICAgICAgICBjbGllbnQtPnJlZ2lzdGVyVW5kb1N0ZXAoY29tcG9zaXRpb24pOwogICAgIHJl
c3BvbmRUb0NoYW5nZWRDb250ZW50cyhuZXdTZWxlY3Rpb24pOwogfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9F
ZGl0b3IuaAppbmRleCAyODAwYzMwOTA3ZDQxOGMyYzE2YWFiMjJhNWRiMGY2MWFkOGYzYWQ0Li5i
OGVhYWQwYzMyM2Q1YmFkYmJhMzExMTIxOTgzMThkZmU5MjAwYWUxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcv
RWRpdG9yLmgKQEAgLTk5LDEwICs5OSwxMiBAQCBlbnVtIGNsYXNzIE1haWxCbG9ja3F1b3RlSGFu
ZGxpbmcgewogfTsKIAogI2lmIFBMQVRGT1JNKENPQ09BKQorCiBzdHJ1Y3QgRnJhZ21lbnRBbmRS
ZXNvdXJjZXMgewogICAgIFJlZlB0cjxEb2N1bWVudEZyYWdtZW50PiBmcmFnbWVudDsKLSAgICBW
ZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+IHJlc291cmNlczsKKyAgICBWZWN0b3I8UmVm
PEFyY2hpdmVSZXNvdXJjZT4+IHJlc291cmNlczsKIH07CisKICNlbmRpZgogCiBjbGFzcyBFZGl0
b3IgewpAQCAtMjA2LDggKzIwOCw4IEBAIHB1YmxpYzoKICAgICBib29sIHdpbGxSZWFwcGx5RWRp
dGluZyhjb25zdCBFZGl0Q29tbWFuZENvbXBvc2l0aW9uJikgY29uc3Q7CiAKICAgICB2b2lkIGFw
cGxpZWRFZGl0aW5nKFBhc3NSZWZQdHI8Q29tcG9zaXRlRWRpdENvbW1hbmQ+KTsKLSAgICB2b2lk
IHVuYXBwbGllZEVkaXRpbmcoUGFzc1JlZlB0cjxFZGl0Q29tbWFuZENvbXBvc2l0aW9uPik7Ci0g
ICAgdm9pZCByZWFwcGxpZWRFZGl0aW5nKFBhc3NSZWZQdHI8RWRpdENvbW1hbmRDb21wb3NpdGlv
bj4pOworICAgIHZvaWQgdW5hcHBsaWVkRWRpdGluZyhFZGl0Q29tbWFuZENvbXBvc2l0aW9uJik7
CisgICAgdm9pZCByZWFwcGxpZWRFZGl0aW5nKEVkaXRDb21tYW5kQ29tcG9zaXRpb24mKTsKICAg
ICB2b2lkIHVuYXBwbGllZFNwZWxsQ29ycmVjdGlvbihjb25zdCBWaXNpYmxlU2VsZWN0aW9uJiBz
ZWxlY3Rpb25PZkNvcnJlY3RlZCwgY29uc3QgU3RyaW5nJiBjb3JyZWN0ZWQsIGNvbnN0IFN0cmlu
ZyYgY29ycmVjdGlvbik7CiAKICAgICAvLyBUaGlzIGlzIG9mZiBieSBkZWZhdWx0LCBzaW5jZSBt
b3N0IGVkaXRvcnMgd2FudCB0aGlzIGJlaGF2aW9yIChvcmlnaW5hbGx5IG1hdGNoZWQgSUUgYnV0
IG5vdCBGaXJlZm94KS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvY29jb2Ev
RWRpdG9yQ29jb2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2NvY29hL0VkaXRvckNvY29h
Lm1tCmluZGV4IDQ5NWUxZjhlODA2NDNmYjk5ZDliNWE5YzA1Mzk3ZDEwZTU0ZjRlYTQuLjQ3NTRl
Nzc0MDZiM2MwMGYwZGU3Y2Y5ZDllMDI2ZWFlYzk0MThlNGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2VkaXRpbmcvY29jb2EvRWRpdG9yQ29jb2EubW0KKysrIGIvU291cmNlL1dlYkNvcmUv
ZWRpdGluZy9jb2NvYS9FZGl0b3JDb2NvYS5tbQpAQCAtMjg1LDExICsyODUsOSBAQCBSZWZQdHI8
RG9jdW1lbnRGcmFnbWVudD4gRWRpdG9yOjpjcmVhdGVGcmFnbWVudEFuZEFkZFJlc291cmNlcyhO
U0F0dHJpYnV0ZWRTdHJpbgogCiAgICAgYXV0byBmcmFnbWVudEFuZFJlc291cmNlcyA9IGNyZWF0
ZUZyYWdtZW50KHN0cmluZyk7CiAKLSAgICBpZiAoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciA9IG1f
ZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSkgewotICAgICAgICBmb3IgKGF1dG8mIHJl
c291cmNlIDogZnJhZ21lbnRBbmRSZXNvdXJjZXMucmVzb3VyY2VzKSB7Ci0gICAgICAgICAgICBp
ZiAocmVzb3VyY2UpCi0gICAgICAgICAgICAgICAgbG9hZGVyLT5hZGRBcmNoaXZlUmVzb3VyY2Uo
cmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSk7Ci0gICAgICAgIH0KKyAgICBpZiAoYXV0byogbG9h
ZGVyID0gbV9mcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKSB7CisgICAgICAgIGZvciAo
YXV0byYgcmVzb3VyY2UgOiBmcmFnbWVudEFuZFJlc291cmNlcy5yZXNvdXJjZXMpCisgICAgICAg
ICAgICBsb2FkZXItPmFkZEFyY2hpdmVSZXNvdXJjZShXVEZNb3ZlKHJlc291cmNlKSk7CiAgICAg
fQogCiAgICAgaWYgKHdhc0ltYWdlc0VuYWJsZWQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9lZGl0aW5nL2lvcy9FZGl0b3JJT1MubW0gYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2lvcy9F
ZGl0b3JJT1MubW0KaW5kZXggYzdlZjY1YmU3YjAxYzczOTNlNjc4NzI2OWYyZTllMmNjNDFkOTI4
My4uZmFmNDRlYmUyY2I3YmZmY2Q4MWMxYWU1ZTMwNWU2Yzg5Nzk5YTNiOCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvZWRpdGluZy9pb3MvRWRpdG9ySU9TLm1tCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2VkaXRpbmcvaW9zL0VkaXRvcklPUy5tbQpAQCAtMjYyLDI3ICsyNjIsMjUgQEAgYm9vbCBF
ZGl0b3I6OldlYkNvbnRlbnRSZWFkZXI6OnJlYWRXZWJBcmNoaXZlKFNoYXJlZEJ1ZmZlciogYnVm
ZmVyKQogICAgIGlmICghYnVmZmVyKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAgICBSZWZQ
dHI8TGVnYWN5V2ViQXJjaGl2ZT4gYXJjaGl2ZSA9IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShV
UkwoKSwgKmJ1ZmZlcik7CisgICAgYXV0byBhcmNoaXZlID0gTGVnYWN5V2ViQXJjaGl2ZTo6Y3Jl
YXRlKFVSTCgpLCAqYnVmZmVyKTsKICAgICBpZiAoIWFyY2hpdmUpCiAgICAgICAgIHJldHVybiBm
YWxzZTsKIAotICAgIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IG1haW5SZXNvdXJjZSA9IGFyY2hp
dmUtPm1haW5SZXNvdXJjZSgpOworICAgIGF1dG8qIG1haW5SZXNvdXJjZSA9IGFyY2hpdmUtPm1h
aW5SZXNvdXJjZSgpOwogICAgIGlmICghbWFpblJlc291cmNlKQogICAgICAgICByZXR1cm4gZmFs
c2U7CiAKLSAgICBjb25zdCBTdHJpbmcmIHR5cGUgPSBtYWluUmVzb3VyY2UtPm1pbWVUeXBlKCk7
Ci0KLSAgICBpZiAoZnJhbWUubG9hZGVyKCkuY2xpZW50KCkuY2FuU2hvd01JTUVUeXBlQXNIVE1M
KHR5cGUpKSB7Ci0gICAgICAgIC8vIEZJWE1FOiBUaGUgY29kZSBpbiBjcmVhdGVGcmFnbWVudEFu
ZEFkZFJlc291cmNlcyBjYWxscyBzZXREZWZlcnNMb2FkaW5nKHRydWUpLiBEb24ndCB3ZSBuZWVk
IHRoYXQgaGVyZT8KLSAgICAgICAgaWYgKERvY3VtZW50TG9hZGVyKiBsb2FkZXIgPSBmcmFtZS5s
b2FkZXIoKS5kb2N1bWVudExvYWRlcigpKQotICAgICAgICAgICAgbG9hZGVyLT5hZGRBbGxBcmNo
aXZlUmVzb3VyY2VzKGFyY2hpdmUuZ2V0KCkpOworICAgIGF1dG8mIHR5cGUgPSBtYWluUmVzb3Vy
Y2UtPm1pbWVUeXBlKCk7CisgICAgaWYgKCFmcmFtZS5sb2FkZXIoKS5jbGllbnQoKS5jYW5TaG93
TUlNRVR5cGVBc0hUTUwodHlwZSkpCisgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgICAgICBT
dHJpbmcgbWFya3VwU3RyaW5nID0gU3RyaW5nOjpmcm9tVVRGOChtYWluUmVzb3VyY2UtPmRhdGEo
KS5kYXRhKCksIG1haW5SZXNvdXJjZS0+ZGF0YSgpLnNpemUoKSk7Ci0gICAgICAgIGFkZEZyYWdt
ZW50KGNyZWF0ZUZyYWdtZW50RnJvbU1hcmt1cCgqZnJhbWUuZG9jdW1lbnQoKSwgbWFya3VwU3Ry
aW5nLCBtYWluUmVzb3VyY2UtPnVybCgpLCBEaXNhbGxvd1NjcmlwdGluZ0FuZFBsdWdpbkNvbnRl
bnQpKTsKLSAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgfQorICAgIC8vIEZJWE1FOiBUaGUgY29k
ZSBpbiBjcmVhdGVGcmFnbWVudEFuZEFkZFJlc291cmNlcyBjYWxscyBzZXREZWZlcnNMb2FkaW5n
KHRydWUpLiBEb24ndCB3ZSBuZWVkIHRoYXQgaGVyZT8KKyAgICBpZiAoYXV0byogbG9hZGVyID0g
ZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSkKKyAgICAgICAgbG9hZGVyLT5hZGRBbGxB
cmNoaXZlUmVzb3VyY2VzKCphcmNoaXZlKTsKIAotICAgIHJldHVybiBmYWxzZTsKKyAgICBhdXRv
IG1hcmt1cFN0cmluZyA9IFN0cmluZzo6ZnJvbVVURjgobWFpblJlc291cmNlLT5kYXRhKCkuZGF0
YSgpLCBtYWluUmVzb3VyY2UtPmRhdGEoKS5zaXplKCkpOworICAgIGFkZEZyYWdtZW50KGNyZWF0
ZUZyYWdtZW50RnJvbU1hcmt1cCgqZnJhbWUuZG9jdW1lbnQoKSwgbWFya3VwU3RyaW5nLCBtYWlu
UmVzb3VyY2UtPnVybCgpLCBEaXNhbGxvd1NjcmlwdGluZ0FuZFBsdWdpbkNvbnRlbnQpKTsKKyAg
ICByZXR1cm4gdHJ1ZTsKIH0KIAogYm9vbCBFZGl0b3I6OldlYkNvbnRlbnRSZWFkZXI6OnJlYWRG
aWxlbmFtZXMoY29uc3QgVmVjdG9yPFN0cmluZz4mKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvZWRpdGluZy9tYWMvRWRpdG9yTWFjLm1tIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9tYWMv
RWRpdG9yTWFjLm1tCmluZGV4IDc0ZGNjMjQ0MWJiMmYzZTc5MDIzOTI3YzA1NGVkM2MxMmJiYjY5
NmQuLmVkYmMwNTU1ZWFkM2JkOGFkZGMwZjJmNThhMzQ0MmNiOTExZDhiNjMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvbWFjL0VkaXRvck1hYy5tbQorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9lZGl0aW5nL21hYy9FZGl0b3JNYWMubW0KQEAgLTMyOCw3ICszMjgsNyBAQCBib29sIEVk
aXRvcjo6V2ViQ29udGVudFJlYWRlcjo6cmVhZFdlYkFyY2hpdmUoU2hhcmVkQnVmZmVyKiBidWZm
ZXIpCiAgICAgaWYgKCFidWZmZXIpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIFJlZlB0
cjxMZWdhY3lXZWJBcmNoaXZlPiBhcmNoaXZlID0gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFVS
TCgpLCAqYnVmZmVyKTsKKyAgICBhdXRvIGFyY2hpdmUgPSBMZWdhY3lXZWJBcmNoaXZlOjpjcmVh
dGUoVVJMKCksICpidWZmZXIpOwogICAgIGlmICghYXJjaGl2ZSkKICAgICAgICAgcmV0dXJuIGZh
bHNlOwogCkBAIC0zNDEsNyArMzQxLDcgQEAgYm9vbCBFZGl0b3I6OldlYkNvbnRlbnRSZWFkZXI6
OnJlYWRXZWJBcmNoaXZlKFNoYXJlZEJ1ZmZlciogYnVmZmVyKQogICAgIGlmIChmcmFtZS5sb2Fk
ZXIoKS5jbGllbnQoKS5jYW5TaG93TUlNRVR5cGVBc0hUTUwodHlwZSkpIHsKICAgICAgICAgLy8g
RklYTUU6IFRoZSBjb2RlIGluIGNyZWF0ZUZyYWdtZW50QW5kQWRkUmVzb3VyY2VzIGNhbGxzIHNl
dERlZmVyc0xvYWRpbmcodHJ1ZSkuIERvbid0IHdlIG5lZWQgdGhhdCBoZXJlPwogICAgICAgICBp
ZiAoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciA9IGZyYW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVy
KCkpCi0gICAgICAgICAgICBsb2FkZXItPmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoYXJjaGl2ZS5n
ZXQoKSk7CisgICAgICAgICAgICBsb2FkZXItPmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoKmFyY2hp
dmUpOwogCiAgICAgICAgIFN0cmluZyBtYXJrdXBTdHJpbmcgPSBTdHJpbmc6OmZyb21VVEY4KG1h
aW5SZXNvdXJjZS0+ZGF0YSgpLmRhdGEoKSwgbWFpblJlc291cmNlLT5kYXRhKCkuc2l6ZSgpKTsK
ICAgICAgICAgZnJhZ21lbnQgPSBjcmVhdGVGcmFnbWVudEZyb21NYXJrdXAoKmZyYW1lLmRvY3Vt
ZW50KCksIG1hcmt1cFN0cmluZywgbWFpblJlc291cmNlLT51cmwoKSwgRGlzYWxsb3dTY3JpcHRp
bmdBbmRQbHVnaW5Db250ZW50KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2hpc3Rvcnkv
UGFnZUNhY2hlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2hpc3RvcnkvUGFnZUNhY2hlLmNwcAppbmRl
eCA2ZDAwNDM3ZTE5YTViMDg3MmM5NDFmYmJhMzQwMjc4OTg0N2U0NGQwLi5hOGE0OWY5NDAxM2Vk
MmQwMmJkMjNiZTZhYjMyZDljN2MyZWVjYzM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9o
aXN0b3J5L1BhZ2VDYWNoZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaGlzdG9yeS9QYWdlQ2Fj
aGUuY3BwCkBAIC0xNjQsNyArMTY0LDcgQEAgc3RhdGljIGJvb2wgY2FuQ2FjaGVGcmFtZShGcmFt
ZSYgZnJhbWUsIERpYWdub3N0aWNMb2dnaW5nQ2xpZW50JiBkaWFnbm9zdGljTG9nZ2kKICAgICB9
CiAgICAgLy8gRklYTUU6IFdlIHNob3VsZCBpbnZlc3RpZ2F0aW5nIGNhY2hpbmcgZnJhbWVzIHRo
YXQgaGF2ZSBhbiBhc3NvY2lhdGVkCiAgICAgLy8gYXBwbGljYXRpb24gY2FjaGUuIDxyZGFyOi8v
cHJvYmxlbS81OTE3ODk5PiB0cmFja3MgdGhhdCB3b3JrLgotICAgIGlmICghZG9jdW1lbnRMb2Fk
ZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPmNhbkNhY2hlSW5QYWdlQ2FjaGUoKSkgeworICAg
IGlmICghZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuY2FuQ2FjaGVJblBh
Z2VDYWNoZSgpKSB7CiAgICAgICAgIFBDTE9HKCIgICAtVGhlIERvY3VtZW50TG9hZGVyIHVzZXMg
YW4gYXBwbGljYXRpb24gY2FjaGUiKTsKICAgICAgICAgbG9nUGFnZUNhY2hlRmFpbHVyZURpYWdu
b3N0aWNNZXNzYWdlKGRpYWdub3N0aWNMb2dnaW5nQ2xpZW50LCBEaWFnbm9zdGljTG9nZ2luZ0tl
eXM6OmFwcGxpY2F0aW9uQ2FjaGVLZXkoKSk7CiAgICAgICAgIGlzQ2FjaGVhYmxlID0gZmFsc2U7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0ZpbGVJbnB1dFR5cGUuY3BwIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmNwcAppbmRleCA1N2QwZGMxYzc2M2Q2N2I2
YjAyMjhjODYwNTEzZDdmMWU5YzUzNjNiLi4yOGI2YzA2NjFmNGQzMTI5YjE2NzkzZWFlNDE0Yjdi
YTJmN2NlYjZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0ZpbGVJbnB1dFR5cGUu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlwZS5jcHAKQEAgLTE5MSw3
ICsxOTEsNyBAQCB2b2lkIEZpbGVJbnB1dFR5cGU6OmhhbmRsZURPTUFjdGl2YXRlRXZlbnQoRXZl
bnQmIGV2ZW50KQogICAgIGlmICghU2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJHZXN0
dXJlKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGlmIChDaHJvbWUqIGNocm9tZSA9IHRoaXMt
PmNocm9tZSgpKSB7CisgICAgaWYgKGF1dG8qIGNocm9tZSA9IHRoaXMtPmNocm9tZSgpKSB7CiAg
ICAgICAgIEZpbGVDaG9vc2VyU2V0dGluZ3Mgc2V0dGluZ3M7CiAgICAgICAgIEhUTUxJbnB1dEVs
ZW1lbnQmIGlucHV0ID0gZWxlbWVudCgpOwogICAgICAgICBzZXR0aW5ncy5hbGxvd3NNdWx0aXBs
ZUZpbGVzID0gaW5wdXQuaGFzQXR0cmlidXRlV2l0aG91dFN5bmNocm9uaXphdGlvbihtdWx0aXBs
ZUF0dHIpOwpAQCAtMjAxLDkgKzIwMSw4IEBAIHZvaWQgRmlsZUlucHV0VHlwZTo6aGFuZGxlRE9N
QWN0aXZhdGVFdmVudChFdmVudCYgZXZlbnQpCiAjaWYgRU5BQkxFKE1FRElBX0NBUFRVUkUpCiAg
ICAgICAgIHNldHRpbmdzLm1lZGlhQ2FwdHVyZVR5cGUgPSBpbnB1dC5tZWRpYUNhcHR1cmVUeXBl
KCk7CiAjZW5kaWYKLQogICAgICAgICBhcHBseUZpbGVDaG9vc2VyU2V0dGluZ3Moc2V0dGluZ3Mp
OwotICAgICAgICBjaHJvbWUtPnJ1bk9wZW5QYW5lbChpbnB1dC5kb2N1bWVudCgpLmZyYW1lKCks
IG1fZmlsZUNob29zZXIpOworICAgICAgICBjaHJvbWUtPnJ1bk9wZW5QYW5lbCgqaW5wdXQuZG9j
dW1lbnQoKS5mcmFtZSgpLCAqbV9maWxlQ2hvb3Nlcik7CiAgICAgfQogCiAgICAgZXZlbnQuc2V0
RGVmYXVsdEhhbmRsZWQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZv
cm1Db250cm9sRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29udHJv
bEVsZW1lbnQuY3BwCmluZGV4IDJlODcyYWFiYWU2NGIwNDQ4ZDIyMTRlOTYyYmIxNmY2Y2JmOTkw
MTIuLmVhOGEzYjMzZTAwMjc4MzJkNjcwZjllMDk4N2FjY2E4ZDM2OGJhYTIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVudC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50LmNwcApAQCAtODksNyArODks
NyBAQCB2b2lkIEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ6OnNldEZvcm1FbmN0eXBlKGNvbnN0IFN0
cmluZyYgdmFsdWUpCiAKIFN0cmluZyBIVE1MRm9ybUNvbnRyb2xFbGVtZW50Ojpmb3JtTWV0aG9k
KCkgY29uc3QKIHsKLSAgICBjb25zdCBBdG9taWNTdHJpbmcmIGZvcm1NZXRob2RBdHRyID0gYXR0
cmlidXRlV2l0aG91dFN5bmNocm9uaXphdGlvbihmb3JtbWV0aG9kQXR0cik7CisgICAgYXV0byYg
Zm9ybU1ldGhvZEF0dHIgPSBhdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKGZvcm1tZXRo
b2RBdHRyKTsKICAgICBpZiAoZm9ybU1ldGhvZEF0dHIuaXNOdWxsKCkpCiAgICAgICAgIHJldHVy
biBlbXB0eVN0cmluZygpOwogICAgIHJldHVybiBGb3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6
bWV0aG9kU3RyaW5nKEZvcm1TdWJtaXNzaW9uOjpBdHRyaWJ1dGVzOjpwYXJzZU1ldGhvZFR5cGUo
Zm9ybU1ldGhvZEF0dHIpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZv
cm1FbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmNwcApp
bmRleCA3NDc1ZjY0ZDI2ZGViMjU2MDk1ZWRhZDViMWMwNmVmMGVhNWQwMmQ4Li42NDBlMzNlZjNj
ODk0MmFiOGRkOTExODMwZmU2ODBmY2VjYmVlMGJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxGb3JtRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
Rm9ybUVsZW1lbnQuY3BwCkBAIC0yODksMTIgKzI4OSwxMSBAQCB2b2lkIEhUTUxGb3JtRWxlbWVu
dDo6cHJlcGFyZUZvclN1Ym1pc3Npb24oRXZlbnQmIGV2ZW50KQogICAgICAgICByZXR1cm47CiAg
ICAgfQogCi0gICAgU3RyaW5nUGFpclZlY3RvciBjb250cm9sTmFtZXNBbmRWYWx1ZXM7Ci0gICAg
Z2V0VGV4dEZpZWxkVmFsdWVzKGNvbnRyb2xOYW1lc0FuZFZhbHVlcyk7Ci0gICAgYXV0byBmb3Jt
U3RhdGUgPSBGb3JtU3RhdGU6OmNyZWF0ZSh0aGlzLCBjb250cm9sTmFtZXNBbmRWYWx1ZXMsICZk
b2N1bWVudCgpLCBOb3RTdWJtaXR0ZWRCeUphdmFTY3JpcHQpOworICAgIGF1dG8gZm9ybVN0YXRl
ID0gRm9ybVN0YXRlOjpjcmVhdGUoKnRoaXMsIHRleHRGaWVsZFZhbHVlcygpLCBkb2N1bWVudCgp
LCBOb3RTdWJtaXR0ZWRCeUphdmFTY3JpcHQpOwogICAgIGZyYW1lLT5sb2FkZXIoKS5jbGllbnQo
KS5kaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoV1RGTW92ZShmb3JtU3RhdGUpKTsKIAogICAg
IFJlZjxIVE1MRm9ybUVsZW1lbnQ+IHByb3RlY3RlZFRoaXMoKnRoaXMpOworCiAgICAgLy8gRXZl
bnQgaGFuZGxpbmcgY2FuIHJlc3VsdCBpbiBtX3Nob3VsZFN1Ym1pdCBiZWNvbWluZyB0cnVlLCBy
ZWdhcmRsZXNzIG9mIGRpc3BhdGNoRXZlbnQoKSByZXR1cm4gdmFsdWUuCiAgICAgaWYgKGRpc3Bh
dGNoRXZlbnQoRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkuc3VibWl0RXZlbnQsIHRydWUsIHRy
dWUpKSkKICAgICAgICAgbV9zaG91bGRTdWJtaXQgPSB0cnVlOwpAQCAtMzE1LDIwICszMTQsMjAg
QEAgdm9pZCBIVE1MRm9ybUVsZW1lbnQ6OnN1Ym1pdEZyb21KYXZhU2NyaXB0KCkKICAgICBzdWJt
aXQoMCwgZmFsc2UsIFNjcmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpLCBT
dWJtaXR0ZWRCeUphdmFTY3JpcHQpOwogfQogCi12b2lkIEhUTUxGb3JtRWxlbWVudDo6Z2V0VGV4
dEZpZWxkVmFsdWVzKFN0cmluZ1BhaXJWZWN0b3ImIGZpZWxkTmFtZXNBbmRWYWx1ZXMpIGNvbnN0
CitTdHJpbmdQYWlyVmVjdG9yIEhUTUxGb3JtRWxlbWVudDo6dGV4dEZpZWxkVmFsdWVzKCkgY29u
c3QKIHsKLSAgICBBU1NFUlRfQVJHKGZpZWxkTmFtZXNBbmRWYWx1ZXMsIGZpZWxkTmFtZXNBbmRW
YWx1ZXMuaXNFbXB0eSgpKTsKLQotICAgIGZpZWxkTmFtZXNBbmRWYWx1ZXMucmVzZXJ2ZUNhcGFj
aXR5KG1fYXNzb2NpYXRlZEVsZW1lbnRzLnNpemUoKSk7CisgICAgU3RyaW5nUGFpclZlY3RvciBy
ZXN1bHQ7CisgICAgcmVzdWx0LnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobV9hc3NvY2lhdGVkRWxl
bWVudHMuc2l6ZSgpKTsKICAgICBmb3IgKGF1dG8mIGFzc29jaWF0ZWRFbGVtZW50IDogbV9hc3Nv
Y2lhdGVkRWxlbWVudHMpIHsKLSAgICAgICAgSFRNTEVsZW1lbnQmIGVsZW1lbnQgPSBhc3NvY2lh
dGVkRWxlbWVudC0+YXNIVE1MRWxlbWVudCgpOworICAgICAgICBhdXRvJiBlbGVtZW50ID0gYXNz
b2NpYXRlZEVsZW1lbnQtPmFzSFRNTEVsZW1lbnQoKTsKICAgICAgICAgaWYgKCFpczxIVE1MSW5w
dXRFbGVtZW50PihlbGVtZW50KSkKICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICBIVE1M
SW5wdXRFbGVtZW50JiBpbnB1dCA9IGRvd25jYXN0PEhUTUxJbnB1dEVsZW1lbnQ+KGVsZW1lbnQp
OworICAgICAgICBhdXRvJiBpbnB1dCA9IGRvd25jYXN0PEhUTUxJbnB1dEVsZW1lbnQ+KGVsZW1l
bnQpOwogICAgICAgICBpZiAoIWlucHV0LmlzVGV4dEZpZWxkKCkpCiAgICAgICAgICAgICBjb250
aW51ZTsKLSAgICAgICAgZmllbGROYW1lc0FuZFZhbHVlcy5hcHBlbmQoc3RkOjptYWtlX3BhaXIo
aW5wdXQubmFtZSgpLnN0cmluZygpLCBpbnB1dC52YWx1ZSgpKSk7CisgICAgICAgIHJlc3VsdC51
bmNoZWNrZWRBcHBlbmQoeyBpbnB1dC5uYW1lKCkuc3RyaW5nKCksIGlucHV0LnZhbHVlKCkgfSk7
CiAgICAgfQorICAgIHJldHVybiByZXN1bHQ7CiB9CiAKIHZvaWQgSFRNTEZvcm1FbGVtZW50Ojpz
dWJtaXQoRXZlbnQqIGV2ZW50LCBib29sIGFjdGl2YXRlU3VibWl0QnV0dG9uLCBib29sIHByb2Nl
c3NpbmdVc2VyR2VzdHVyZSwgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIGZvcm1TdWJtaXNzaW9uVHJp
Z2dlcikKQEAgLTM2NCw5ICszNjMsMTAgQEAgdm9pZCBIVE1MRm9ybUVsZW1lbnQ6OnN1Ym1pdChF
dmVudCogZXZlbnQsIGJvb2wgYWN0aXZhdGVTdWJtaXRCdXR0b24sIGJvb2wgcHJvY2UKICAgICBp
ZiAobmVlZEJ1dHRvbkFjdGl2YXRpb24gJiYgZmlyc3RTdWNjZXNzZnVsU3VibWl0QnV0dG9uKQog
ICAgICAgICBmaXJzdFN1Y2Nlc3NmdWxTdWJtaXRCdXR0b24tPnNldEFjdGl2YXRlZFN1Ym1pdCh0
cnVlKTsKIAotICAgIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5ID0gcHJvY2Vzc2luZ1VzZXJHZXN0
dXJlID8gTG9ja0hpc3Rvcnk6Ok5vIDogTG9ja0hpc3Rvcnk6OlllczsKLSAgICBSZWY8SFRNTEZv
cm1FbGVtZW50PiBwcm90ZWN0ZWRUaGlzKCp0aGlzKTsgLy8gRm9ybSBzdWJtaXNzaW9uIGNhbiBl
eGVjdXRlIGFyYml0YXJ5IEphdmFTY3JpcHQuCi0gICAgZnJhbWUtPmxvYWRlcigpLnN1Ym1pdEZv
cm0oRm9ybVN1Ym1pc3Npb246OmNyZWF0ZSh0aGlzLCBtX2F0dHJpYnV0ZXMsIGV2ZW50LCBsb2Nr
SGlzdG9yeSwgZm9ybVN1Ym1pc3Npb25UcmlnZ2VyKSk7CisgICAgYXV0byBwcm90ZWN0ZWRUaGlz
ID0gbWFrZVJlZigqdGhpcyk7IC8vIEZvcm0gc3VibWlzc2lvbiBjYW4gZXhlY3V0ZSBhcmJpdGFy
eSBKYXZhU2NyaXB0LgorCisgICAgYXV0byBzaG91bGRMb2NrSGlzdG9yeSA9IHByb2Nlc3NpbmdV
c2VyR2VzdHVyZSA/IExvY2tIaXN0b3J5OjpObyA6IExvY2tIaXN0b3J5OjpZZXM7CisgICAgZnJh
bWUtPmxvYWRlcigpLnN1Ym1pdEZvcm0oRm9ybVN1Ym1pc3Npb246OmNyZWF0ZSgqdGhpcywgbV9h
dHRyaWJ1dGVzLCBldmVudCwgc2hvdWxkTG9ja0hpc3RvcnksIGZvcm1TdWJtaXNzaW9uVHJpZ2dl
cikpOwogCiAgICAgaWYgKG5lZWRCdXR0b25BY3RpdmF0aW9uICYmIGZpcnN0U3VjY2Vzc2Z1bFN1
Ym1pdEJ1dHRvbikKICAgICAgICAgZmlyc3RTdWNjZXNzZnVsU3VibWl0QnV0dG9uLT5zZXRBY3Rp
dmF0ZWRTdWJtaXQoZmFsc2UpOwpAQCAtNDM5LDggKzQzOSw4IEBAIHZvaWQgSFRNTEZvcm1FbGVt
ZW50OjpyZXF1ZXN0QXV0b2NvbXBsZXRlKCkKICAgICBTdHJpbmdQYWlyVmVjdG9yIGNvbnRyb2xO
YW1lc0FuZFZhbHVlczsKICAgICBnZXRUZXh0RmllbGRWYWx1ZXMoY29udHJvbE5hbWVzQW5kVmFs
dWVzKTsKIAotICAgIFJlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSA9IEZvcm1TdGF0ZTo6Y3Jl
YXRlKHRoaXMsIGNvbnRyb2xOYW1lc0FuZFZhbHVlcywgJmRvY3VtZW50KCksIFN1Ym1pdHRlZEJ5
SmF2YVNjcmlwdCk7Ci0gICAgZnJhbWUtPmxvYWRlcigpLmNsaWVudCgpLmRpZFJlcXVlc3RBdXRv
Y29tcGxldGUoZm9ybVN0YXRlLnJlbGVhc2UoKSk7CisgICAgYXV0byBmb3JtU3RhdGUgPSBGb3Jt
U3RhdGU6OmNyZWF0ZSh0aGlzLCBjb250cm9sTmFtZXNBbmRWYWx1ZXMsICZkb2N1bWVudCgpLCBT
dWJtaXR0ZWRCeUphdmFTY3JpcHQpOworICAgIGZyYW1lLT5sb2FkZXIoKS5jbGllbnQoKS5kaWRS
ZXF1ZXN0QXV0b2NvbXBsZXRlKFdURk1vdmUoZm9ybVN0YXRlKSk7CiB9CiAKIHZvaWQgSFRNTEZv
cm1FbGVtZW50OjpmaW5pc2hSZXF1ZXN0QXV0b2NvbXBsZXRlKEF1dG9jb21wbGV0ZVJlc3VsdCBy
ZXN1bHQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5o
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuaAppbmRleCBiYjUxNzk4OTc2
ZTNmNjY0M2Q4YmE0YTc1YTdiMTAzZTcyMDYyMzk3Li41ZGUxOTVlYjk2MTVjZWE2MmU1YTIxY2Jm
MDQ5Yjk3OWFiMjcxYjI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3Jt
RWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmgKQEAg
LTEyOCw3ICsxMjgsNyBAQCBwdWJsaWM6CiAgICAgY29uc3QgVmVjdG9yPEZvcm1Bc3NvY2lhdGVk
RWxlbWVudCo+JiBhc3NvY2lhdGVkRWxlbWVudHMoKSBjb25zdCB7IHJldHVybiBtX2Fzc29jaWF0
ZWRFbGVtZW50czsgfQogICAgIGNvbnN0IFZlY3RvcjxIVE1MSW1hZ2VFbGVtZW50Kj4mIGltYWdl
RWxlbWVudHMoKSBjb25zdCB7IHJldHVybiBtX2ltYWdlRWxlbWVudHM7IH0KIAotICAgIHZvaWQg
Z2V0VGV4dEZpZWxkVmFsdWVzKFN0cmluZ1BhaXJWZWN0b3ImIGZpZWxkTmFtZXNBbmRWYWx1ZXMp
IGNvbnN0OworICAgIFN0cmluZ1BhaXJWZWN0b3IgdGV4dEZpZWxkVmFsdWVzKCkgY29uc3Q7CiAK
ICAgICBzdGF0aWMgSFRNTEZvcm1FbGVtZW50KiBmaW5kQ2xvc2VzdEZvcm1BbmNlc3Rvcihjb25z
dCBFbGVtZW50Jik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEh0bWxF
bGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEh0bWxFbGVtZW50LmNwcAppbmRl
eCA1ODQ2ZjU2NDE5OGE5ZDlmZmUwMjMyZWJlMTVjMWZkNTBhZjMxOWM4Li40OWY4MzcyNTQzYzE5
YmRkOGExYmNkZmQzM2M1NTM1NmY2ODZmNTU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxIdG1sRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSHRt
bEVsZW1lbnQuY3BwCkBAIC02NiwxNSArNjYsMTUgQEAgdm9pZCBIVE1MSHRtbEVsZW1lbnQ6Omlu
c2VydGVkQnlQYXJzZXIoKQogICAgIGlmICghZG9jdW1lbnQoKS5mcmFtZSgpKQogICAgICAgICBy
ZXR1cm47CiAKLSAgICBEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIgPSBkb2N1bWVudCgp
LmZyYW1lKCktPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCk7CisgICAgYXV0byogZG9jdW1lbnRM
b2FkZXIgPSBkb2N1bWVudCgpLmZyYW1lKCktPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCk7CiAg
ICAgaWYgKCFkb2N1bWVudExvYWRlcikKICAgICAgICAgcmV0dXJuOwogCi0gICAgY29uc3QgQXRv
bWljU3RyaW5nJiBtYW5pZmVzdCA9IGF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24obWFu
aWZlc3RBdHRyKTsKKyAgICBhdXRvJiBtYW5pZmVzdCA9IGF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJv
bml6YXRpb24obWFuaWZlc3RBdHRyKTsKICAgICBpZiAobWFuaWZlc3QuaXNFbXB0eSgpKQotICAg
ICAgICBkb2N1bWVudExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+c2VsZWN0Q2FjaGVX
aXRob3V0TWFuaWZlc3QoKTsKKyAgICAgICAgZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KCkuc2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3QoKTsKICAgICBlbHNlCi0gICAgICAg
IGRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5zZWxlY3RDYWNoZVdpdGhN
YW5pZmVzdChkb2N1bWVudCgpLmNvbXBsZXRlVVJMKG1hbmlmZXN0KSk7CisgICAgICAgIGRvY3Vt
ZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLnNlbGVjdENhY2hlV2l0aE1hbmlmZXN0
KGRvY3VtZW50KCkuY29tcGxldGVVUkwobWFuaWZlc3QpKTsKIH0KIAogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGlua0VsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MTGlua0VsZW1lbnQuY3BwCmluZGV4IGQ3NzdhMzkzNzFjY2ZkOGMzM2EzZmU4MDk2
MDdlMjg5YjJlNDk5NTEuLjQ5NmFlZDZlYmU3NTk4NGI2YjIzMTE1ZWU3ZTMwMzBkOTg2OGRiZTAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExpbmtFbGVtZW50LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMaW5rRWxlbWVudC5jcHAKQEAgLTI2Nyw3ICsyNjcs
NyBAQCB2b2lkIEhUTUxMaW5rRWxlbWVudDo6cHJvY2VzcygpCiAgICAgICAgIGlmICghaXNBY3Rp
dmUpCiAgICAgICAgICAgICBwcmlvcml0eSA9IFJlc291cmNlTG9hZFByaW9yaXR5OjpWZXJ5TG93
OwogICAgICAgICBDYWNoZWRSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCh1cmwsIENhY2hlZFJlc291
cmNlTG9hZGVyOjpkZWZhdWx0Q2FjaGVkUmVzb3VyY2VPcHRpb25zKCksIHByaW9yaXR5LCBXVEZN
b3ZlKGNoYXJzZXQpKTsKLSAgICAgICAgcmVxdWVzdC5zZXRJbml0aWF0b3IodGhpcyk7CisgICAg
ICAgIHJlcXVlc3Quc2V0SW5pdGlhdG9yKCp0aGlzKTsKIAogICAgICAgICBpZiAoZG9jdW1lbnQo
KS5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dTdHlsZVdpdGhOb25jZShhdHRyaWJ1dGVX
aXRob3V0U3luY2hyb25pemF0aW9uKEhUTUxOYW1lczo6bm9uY2VBdHRyKSkpIHsKICAgICAgICAg
ICAgIFJlc291cmNlTG9hZGVyT3B0aW9ucyBvcHRpb25zID0gQ2FjaGVkUmVzb3VyY2VMb2FkZXI6
OmRlZmF1bHRDYWNoZWRSZXNvdXJjZU9wdGlvbnMoKTsKQEAgLTM2Nyw3ICszNjcsNyBAQCB2b2lk
IEhUTUxMaW5rRWxlbWVudDo6c2V0Q1NTU3R5bGVTaGVldChjb25zdCBTdHJpbmcmIGhyZWYsIGNv
bnN0IFVSTCYgYmFzZVVSTCwgYwogICAgIENTU1BhcnNlckNvbnRleHQgcGFyc2VyQ29udGV4dChk
b2N1bWVudCgpLCBiYXNlVVJMLCBjaGFyc2V0KTsKICAgICBhdXRvIGNhY2hlUG9saWN5ID0gZnJh
bWUtPmxvYWRlcigpLnN1YnJlc291cmNlQ2FjaGVQb2xpY3koKTsKIAotICAgIGlmIChSZWZQdHI8
U3R5bGVTaGVldENvbnRlbnRzPiByZXN0b3JlZFNoZWV0ID0gY29uc3RfY2FzdDxDYWNoZWRDU1NT
dHlsZVNoZWV0Kj4oY2FjaGVkU3R5bGVTaGVldCktPnJlc3RvcmVQYXJzZWRTdHlsZVNoZWV0KHBh
cnNlckNvbnRleHQsIGNhY2hlUG9saWN5KSkgeworICAgIGlmIChhdXRvIHJlc3RvcmVkU2hlZXQg
PSBjb25zdF9jYXN0PENhY2hlZENTU1N0eWxlU2hlZXQqPihjYWNoZWRTdHlsZVNoZWV0KS0+cmVz
dG9yZVBhcnNlZFN0eWxlU2hlZXQocGFyc2VyQ29udGV4dCwgY2FjaGVQb2xpY3kpKSB7CiAgICAg
ICAgIEFTU0VSVChyZXN0b3JlZFNoZWV0LT5pc0NhY2hlYWJsZSgpKTsKICAgICAgICAgQVNTRVJU
KCFyZXN0b3JlZFNoZWV0LT5pc0xvYWRpbmcoKSk7CiAgICAgICAgIGluaXRpYWxpemVTdHlsZVNo
ZWV0KHJlc3RvcmVkU2hlZXQucmVsZWFzZU5vbk51bGwoKSwgKmNhY2hlZFN0eWxlU2hlZXQpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKaW5kZXggNGM3ZGM5NzJjNWU2
YWM1NjllMDNjYzE0YjYyNjAwYWE5NDg1YTZlNC4uM2ZjMGM1OWM1YjdiMzE0Y2Q1N2FhOTgzOWQx
NmIwZGEzYmJhZGRlNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFF
bGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3Bw
CkBAIC0xNDI4LDExICsxNDI4LDggQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50Ojpsb2FkUmVzb3Vy
Y2UoY29uc3QgVVJMJiBpbml0aWFsVVJMLCBDb250ZW50VHlwZSYgY29udGVudFQKICAgICB9CiAK
ICNpZiBFTkFCTEUoQ09OVEVOVF9FWFRFTlNJT05TKQotICAgIERvY3VtZW50TG9hZGVyKiBkb2N1
bWVudExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwotCi0gICAgaWYg
KGRvY3VtZW50TG9hZGVyKSB7Ci0gICAgICAgIGF1dG8gYmxvY2tlZFN0YXR1cyA9IHBhZ2UtPnVz
ZXJDb250ZW50UHJvdmlkZXIoKS5wcm9jZXNzQ29udGVudEV4dGVuc2lvblJ1bGVzRm9yTG9hZCh1
cmwsIFJlc291cmNlVHlwZTo6TWVkaWEsICpkb2N1bWVudExvYWRlcik7Ci0gICAgICAgIGlmIChi
bG9ja2VkU3RhdHVzLmJsb2NrZWRMb2FkKSB7CisgICAgaWYgKGF1dG8qIGRvY3VtZW50TG9hZGVy
ID0gZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkpIHsKKyAgICAgICAgaWYgKHBhZ2Ut
PnVzZXJDb250ZW50UHJvdmlkZXIoKS5wcm9jZXNzQ29udGVudEV4dGVuc2lvblJ1bGVzRm9yTG9h
ZCh1cmwsIFJlc291cmNlVHlwZTo6TWVkaWEsICpkb2N1bWVudExvYWRlcikuYmxvY2tlZExvYWQp
IHsKICAgICAgICAgICAgIG1lZGlhTG9hZGluZ0ZhaWxlZChNZWRpYVBsYXllcjo6Rm9ybWF0RXJy
b3IpOwogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CkBAIC0xNDQyLDExICsxNDM5LDkg
QEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50Ojpsb2FkUmVzb3VyY2UoY29uc3QgVVJMJiBpbml0aWFs
VVJMLCBDb250ZW50VHlwZSYgY29udGVudFQKICAgICAvLyBUaGUgcmVzb3VyY2UgZmV0Y2ggYWxn
b3JpdGhtIAogICAgIG1fbmV0d29ya1N0YXRlID0gTkVUV09SS19MT0FESU5HOwogCi0gICAgLy8g
SWYgdGhlIHVybCBzaG91bGQgYmUgbG9hZGVkIGZyb20gdGhlIGFwcGxpY2F0aW9uIGNhY2hlLCBw
YXNzIHRoZSB1cmwgb2YgdGhlIGNhY2hlZCBmaWxlCi0gICAgLy8gdG8gdGhlIG1lZGlhIGVuZ2lu
ZS4KLSAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdCogY2FjaGVIb3N0ID0gZnJhbWUtPmxvYWRlcigp
LmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7CisgICAgLy8gSWYgdGhl
IFVSTCBzaG91bGQgYmUgbG9hZGVkIGZyb20gdGhlIGFwcGxpY2F0aW9uIGNhY2hlLCBwYXNzIHRo
ZSBVUkwgb2YgdGhlIGNhY2hlZCBmaWxlIHRvIHRoZSBtZWRpYSBlbmdpbmUuCiAgICAgQXBwbGlj
YXRpb25DYWNoZVJlc291cmNlKiByZXNvdXJjZSA9IG51bGxwdHI7Ci0gICAgaWYgKGNhY2hlSG9z
dCAmJiBjYWNoZUhvc3QtPnNob3VsZExvYWRSZXNvdXJjZUZyb21BcHBsaWNhdGlvbkNhY2hlKFJl
c291cmNlUmVxdWVzdCh1cmwpLCByZXNvdXJjZSkpIHsKKyAgICBpZiAoZnJhbWUtPmxvYWRlcigp
LmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2hvdWxkTG9hZFJlc291
cmNlRnJvbUFwcGxpY2F0aW9uQ2FjaGUoUmVzb3VyY2VSZXF1ZXN0KHVybCksIHJlc291cmNlKSkg
ewogICAgICAgICAvLyBSZXNvdXJjZXMgdGhhdCBhcmUgbm90IHByZXNlbnQgaW4gdGhlIG1hbmlm
ZXN0IHdpbGwgYWx3YXlzIGZhaWwgdG8gbG9hZCAoYXQgbGVhc3QsIGFmdGVyIHRoZQogICAgICAg
ICAvLyBjYWNoZSBoYXMgYmVlbiBwcmltZWQgdGhlIGZpcnN0IHRpbWUpLCBtYWtpbmcgdGhlIHRl
c3Rpbmcgb2Ygb2ZmbGluZSBhcHBsaWNhdGlvbnMgc2ltcGxlci4KICAgICAgICAgaWYgKCFyZXNv
dXJjZSB8fCByZXNvdXJjZS0+cGF0aCgpLmlzRW1wdHkoKSkgewpAQCAtMTQ2MCw3ICsxNDU1LDcg
QEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50Ojpsb2FkUmVzb3VyY2UoY29uc3QgVVJMJiBpbml0aWFs
VVJMLCBDb250ZW50VHlwZSYgY29udGVudFQKIAogICAgIG1fZmlyc3RUaW1lUGxheWluZyA9IHRy
dWU7CiAKLSAgICAvLyBTZXQgbV9jdXJyZW50U3JjICpiZWZvcmUqIGNoYW5naW5nIHRvIHRoZSBj
YWNoZSB1cmwsIHRoZSBmYWN0IHRoYXQgd2UgYXJlIGxvYWRpbmcgZnJvbSB0aGUgYXBwCisgICAg
Ly8gU2V0IG1fY3VycmVudFNyYyAqYmVmb3JlKiBjaGFuZ2luZyB0byB0aGUgY2FjaGUgVVJMLCB0
aGUgZmFjdCB0aGF0IHdlIGFyZSBsb2FkaW5nIGZyb20gdGhlIGFwcAogICAgIC8vIGNhY2hlIGlz
IGFuIGludGVybmFsIGRldGFpbCBub3QgZXhwb3NlZCB0aHJvdWdoIHRoZSBtZWRpYSBlbGVtZW50
IEFQSS4KICAgICBtX2N1cnJlbnRTcmMgPSB1cmw7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuY3BwIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5jcHAKaW5k
ZXggZmY0ZmYzMWNjMTlmNDkzNGQwNGIyMjk3Zjc2ZWI5NDU4ODQ4NWQyMi4uNmUzOWJjZGFkMGQ4
NGYwNDI3YTkyYzI3MTBmZmNmMmYxZTBiMDBjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5jcHAKQEAg
LTY4LDE2ICs2OCwxNyBAQCB2b2lkIEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6ZW5h
YmxlKEVycm9yU3RyaW5nJikKIAogdm9pZCBJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6
OnVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXMoRnJhbWUqIGZyYW1lKQogewotICAgIERvY3Vt
ZW50TG9hZGVyKiBkb2N1bWVudExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRl
cigpOworICAgIGlmICghZnJhbWUpCisgICAgICAgIHJldHVybjsKKyAgICBhdXRvKiBkb2N1bWVu
dExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwogICAgIGlmICghZG9j
dW1lbnRMb2FkZXIpCiAgICAgICAgIHJldHVybjsKIAotICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0
KiBob3N0ID0gZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7Ci0gICAgQXBw
bGljYXRpb25DYWNoZUhvc3Q6OlN0YXR1cyBzdGF0dXMgPSBob3N0LT5zdGF0dXMoKTsKLSAgICBB
cHBsaWNhdGlvbkNhY2hlSG9zdDo6Q2FjaGVJbmZvIGluZm8gPSBob3N0LT5hcHBsaWNhdGlvbkNh
Y2hlSW5mbygpOworICAgIGF1dG8mIGhvc3QgPSBkb2N1bWVudExvYWRlci0+YXBwbGljYXRpb25D
YWNoZUhvc3QoKTsKKyAgICBpbnQgc3RhdHVzID0gaG9zdC5zdGF0dXMoKTsKKyAgICBhdXRvIG1h
bmlmZXN0VVJMID0gaG9zdC5hcHBsaWNhdGlvbkNhY2hlSW5mbygpLm1hbmlmZXN0LnN0cmluZygp
OwogCi0gICAgU3RyaW5nIG1hbmlmZXN0VVJMID0gaW5mby5tX21hbmlmZXN0LnN0cmluZygpOwot
ICAgIG1fZnJvbnRlbmREaXNwYXRjaGVyLT5hcHBsaWNhdGlvbkNhY2hlU3RhdHVzVXBkYXRlZCht
X3BhZ2VBZ2VudC0+ZnJhbWVJZChmcmFtZSksIG1hbmlmZXN0VVJMLCBzdGF0aWNfY2FzdDxpbnQ+
KHN0YXR1cykpOworICAgIG1fZnJvbnRlbmREaXNwYXRjaGVyLT5hcHBsaWNhdGlvbkNhY2hlU3Rh
dHVzVXBkYXRlZChtX3BhZ2VBZ2VudC0+ZnJhbWVJZChmcmFtZSksIG1hbmlmZXN0VVJMLCBzdGF0
dXMpOwogfQogCiB2b2lkIEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6bmV0d29ya1N0
YXRlQ2hhbmdlZCgpCkBAIC05MSwyMCArOTIsMTggQEAgdm9pZCBJbnNwZWN0b3JBcHBsaWNhdGlv
bkNhY2hlQWdlbnQ6OmdldEZyYW1lc1dpdGhNYW5pZmVzdHMoRXJyb3JTdHJpbmcmLCBSZWZQdHIK
ICAgICByZXN1bHQgPSBJbnNwZWN0b3I6OlByb3RvY29sOjpBcnJheTxJbnNwZWN0b3I6OlByb3Rv
Y29sOjpBcHBsaWNhdGlvbkNhY2hlOjpGcmFtZVdpdGhNYW5pZmVzdD46OmNyZWF0ZSgpOwogCiAg
ICAgZm9yIChGcmFtZSogZnJhbWUgPSAmbV9wYWdlQWdlbnQtPm1haW5GcmFtZSgpOyBmcmFtZTsg
ZnJhbWUgPSBmcmFtZS0+dHJlZSgpLnRyYXZlcnNlTmV4dCgpKSB7Ci0gICAgICAgIERvY3VtZW50
TG9hZGVyKiBkb2N1bWVudExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigp
OworICAgICAgICBhdXRvKiBkb2N1bWVudExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVu
dExvYWRlcigpOwogICAgICAgICBpZiAoIWRvY3VtZW50TG9hZGVyKQogICAgICAgICAgICAgY29u
dGludWU7CiAKLSAgICAgICAgQXBwbGljYXRpb25DYWNoZUhvc3QqIGhvc3QgPSBkb2N1bWVudExv
YWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKTsKLSAgICAgICAgQXBwbGljYXRpb25DYWNoZUhv
c3Q6OkNhY2hlSW5mbyBpbmZvID0gaG9zdC0+YXBwbGljYXRpb25DYWNoZUluZm8oKTsKLSAgICAg
ICAgU3RyaW5nIG1hbmlmZXN0VVJMID0gaW5mby5tX21hbmlmZXN0LnN0cmluZygpOworICAgICAg
ICBhdXRvJiBob3N0ID0gZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7Cisg
ICAgICAgIFN0cmluZyBtYW5pZmVzdFVSTCA9IGhvc3QuYXBwbGljYXRpb25DYWNoZUluZm8oKS5t
YW5pZmVzdC5zdHJpbmcoKTsKICAgICAgICAgaWYgKCFtYW5pZmVzdFVSTC5pc0VtcHR5KCkpIHsK
LSAgICAgICAgICAgIFJlZjxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpG
cmFtZVdpdGhNYW5pZmVzdD4gdmFsdWUgPSBJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlv
bkNhY2hlOjpGcmFtZVdpdGhNYW5pZmVzdDo6Y3JlYXRlKCkKKyAgICAgICAgICAgIHJlc3VsdC0+
YWRkSXRlbShJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpGcmFtZVdpdGhN
YW5pZmVzdDo6Y3JlYXRlKCkKICAgICAgICAgICAgICAgICAuc2V0RnJhbWVJZChtX3BhZ2VBZ2Vu
dC0+ZnJhbWVJZChmcmFtZSkpCiAgICAgICAgICAgICAgICAgLnNldE1hbmlmZXN0VVJMKG1hbmlm
ZXN0VVJMKQotICAgICAgICAgICAgICAgIC5zZXRTdGF0dXMoc3RhdGljX2Nhc3Q8aW50Pihob3N0
LT5zdGF0dXMoKSkpCi0gICAgICAgICAgICAgICAgLnJlbGVhc2UoKTsKLSAgICAgICAgICAgIHJl
c3VsdC0+YWRkSXRlbShXVEZNb3ZlKHZhbHVlKSk7CisgICAgICAgICAgICAgICAgLnNldFN0YXR1
cyhzdGF0aWNfY2FzdDxpbnQ+KGhvc3Quc3RhdHVzKCkpKQorICAgICAgICAgICAgICAgIC5yZWxl
YXNlKCkpOwogICAgICAgICB9CiAgICAgfQogfQpAQCAtMTI0LDY4ICsxMjMsNjAgQEAgdm9pZCBJ
bnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6OmdldE1hbmlmZXN0Rm9yRnJhbWUoRXJyb3JT
dHJpbmcmIGVycm9yU3RyaW4KICAgICBpZiAoIWRvY3VtZW50TG9hZGVyKQogICAgICAgICByZXR1
cm47CiAKLSAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q2FjaGVJbmZvIGluZm8gPSBkb2N1bWVu
dExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+YXBwbGljYXRpb25DYWNoZUluZm8oKTsK
LSAgICAqbWFuaWZlc3RVUkwgPSBpbmZvLm1fbWFuaWZlc3Quc3RyaW5nKCk7CisgICAgKm1hbmlm
ZXN0VVJMID0gZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuYXBwbGljYXRp
b25DYWNoZUluZm8oKS5tYW5pZmVzdC5zdHJpbmcoKTsKIH0KIAogdm9pZCBJbnNwZWN0b3JBcHBs
aWNhdGlvbkNhY2hlQWdlbnQ6OmdldEFwcGxpY2F0aW9uQ2FjaGVGb3JGcmFtZShFcnJvclN0cmlu
ZyYgZXJyb3JTdHJpbmcsIGNvbnN0IFN0cmluZyYgZnJhbWVJZCwgUmVmUHRyPEluc3BlY3Rvcjo6
UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGU+JiBhcHBsaWNhdGlv
bkNhY2hlKQogewotICAgIERvY3VtZW50TG9hZGVyKiBkb2N1bWVudExvYWRlciA9IGFzc2VydEZy
YW1lV2l0aERvY3VtZW50TG9hZGVyKGVycm9yU3RyaW5nLCBmcmFtZUlkKTsKKyAgICBhdXRvKiBk
b2N1bWVudExvYWRlciA9IGFzc2VydEZyYW1lV2l0aERvY3VtZW50TG9hZGVyKGVycm9yU3RyaW5n
LCBmcmFtZUlkKTsKICAgICBpZiAoIWRvY3VtZW50TG9hZGVyKQogICAgICAgICByZXR1cm47CiAK
LSAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdCogaG9zdCA9IGRvY3VtZW50TG9hZGVyLT5hcHBsaWNh
dGlvbkNhY2hlSG9zdCgpOwotICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8gaW5m
byA9IGhvc3QtPmFwcGxpY2F0aW9uQ2FjaGVJbmZvKCk7Ci0KLSAgICBBcHBsaWNhdGlvbkNhY2hl
SG9zdDo6UmVzb3VyY2VJbmZvTGlzdCByZXNvdXJjZXM7Ci0gICAgaG9zdC0+ZmlsbFJlc291cmNl
TGlzdCgmcmVzb3VyY2VzKTsKLQotICAgIGFwcGxpY2F0aW9uQ2FjaGUgPSBidWlsZE9iamVjdEZv
ckFwcGxpY2F0aW9uQ2FjaGUocmVzb3VyY2VzLCBpbmZvKTsKKyAgICBhdXRvJiBob3N0ID0gZG9j
dW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7CisgICAgYXBwbGljYXRpb25DYWNo
ZSA9IGJ1aWxkT2JqZWN0Rm9yQXBwbGljYXRpb25DYWNoZShob3N0LnJlc291cmNlTGlzdCgpLCBo
b3N0LmFwcGxpY2F0aW9uQ2FjaGVJbmZvKCkpOwogfQogCi1SZWY8SW5zcGVjdG9yOjpQcm90b2Nv
bDo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZT4gSW5zcGVjdG9yQXBwbGljYXRp
b25DYWNoZUFnZW50OjpidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGUoY29uc3QgQXBwbGlj
YXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mb0xpc3QmIGFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJj
ZXMsIGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8mIGFwcGxpY2F0aW9uQ2Fj
aGVJbmZvKQorUmVmPEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxp
Y2F0aW9uQ2FjaGU+IEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6YnVpbGRPYmplY3RG
b3JBcHBsaWNhdGlvbkNhY2hlKGNvbnN0IFZlY3RvcjxBcHBsaWNhdGlvbkNhY2hlSG9zdDo6UmVz
b3VyY2VJbmZvPiYgYXBwbGljYXRpb25DYWNoZVJlc291cmNlcywgY29uc3QgQXBwbGljYXRpb25D
YWNoZUhvc3Q6OkNhY2hlSW5mbyYgYXBwbGljYXRpb25DYWNoZUluZm8pCiB7CiAgICAgcmV0dXJu
IEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGU6
OmNyZWF0ZSgpCi0gICAgICAgIC5zZXRNYW5pZmVzdFVSTChhcHBsaWNhdGlvbkNhY2hlSW5mby5t
X21hbmlmZXN0LnN0cmluZygpKQotICAgICAgICAuc2V0U2l6ZShhcHBsaWNhdGlvbkNhY2hlSW5m
by5tX3NpemUpCi0gICAgICAgIC5zZXRDcmVhdGlvblRpbWUoYXBwbGljYXRpb25DYWNoZUluZm8u
bV9jcmVhdGlvblRpbWUpCi0gICAgICAgIC5zZXRVcGRhdGVUaW1lKGFwcGxpY2F0aW9uQ2FjaGVJ
bmZvLm1fdXBkYXRlVGltZSkKKyAgICAgICAgLnNldE1hbmlmZXN0VVJMKGFwcGxpY2F0aW9uQ2Fj
aGVJbmZvLm1hbmlmZXN0LnN0cmluZygpKQorICAgICAgICAuc2V0U2l6ZShhcHBsaWNhdGlvbkNh
Y2hlSW5mby5zaXplKQorICAgICAgICAuc2V0Q3JlYXRpb25UaW1lKGFwcGxpY2F0aW9uQ2FjaGVJ
bmZvLmNyZWF0aW9uVGltZSkKKyAgICAgICAgLnNldFVwZGF0ZVRpbWUoYXBwbGljYXRpb25DYWNo
ZUluZm8udXBkYXRlVGltZSkKICAgICAgICAgLnNldFJlc291cmNlcyhidWlsZEFycmF5Rm9yQXBw
bGljYXRpb25DYWNoZVJlc291cmNlcyhhcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2VzKSkKICAgICAg
ICAgLnJlbGVhc2UoKTsKIH0KIAotUmVmPEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFycmF5PEluc3Bl
Y3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJj
ZT4+IEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6YnVpbGRBcnJheUZvckFwcGxpY2F0
aW9uQ2FjaGVSZXNvdXJjZXMoY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5m
b0xpc3QmIGFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMpCitSZWY8SW5zcGVjdG9yOjpQcm90b2Nv
bDo6QXJyYXk8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRp
b25DYWNoZVJlc291cmNlPj4gSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZEFy
cmF5Rm9yQXBwbGljYXRpb25DYWNoZVJlc291cmNlcyhjb25zdCBWZWN0b3I8QXBwbGljYXRpb25D
YWNoZUhvc3Q6OlJlc291cmNlSW5mbz4mIGFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMpCiB7Ci0g
ICAgYXV0byByZXNvdXJjZXMgPSBJbnNwZWN0b3I6OlByb3RvY29sOjpBcnJheTxJbnNwZWN0b3I6
OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+Ojpj
cmVhdGUoKTsKLQotICAgIGZvciAoY29uc3QgYXV0byYgcmVzb3VyY2VJbmZvIDogYXBwbGljYXRp
b25DYWNoZVJlc291cmNlcykKLSAgICAgICAgcmVzb3VyY2VzLT5hZGRJdGVtKGJ1aWxkT2JqZWN0
Rm9yQXBwbGljYXRpb25DYWNoZVJlc291cmNlKHJlc291cmNlSW5mbykpOwotCi0gICAgcmV0dXJu
IHJlc291cmNlczsKKyAgICBhdXRvIHJlc3VsdCA9IEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFycmF5
PEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGVS
ZXNvdXJjZT46OmNyZWF0ZSgpOworICAgIGZvciAoYXV0byYgaW5mbyA6IGFwcGxpY2F0aW9uQ2Fj
aGVSZXNvdXJjZXMpCisgICAgICAgIHJlc3VsdC0+YWRkSXRlbShidWlsZE9iamVjdEZvckFwcGxp
Y2F0aW9uQ2FjaGVSZXNvdXJjZShpbmZvKSk7CisgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAogUmVm
PEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGVS
ZXNvdXJjZT4gSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZE9iamVjdEZvckFw
cGxpY2F0aW9uQ2FjaGVSZXNvdXJjZShjb25zdCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6UmVzb3Vy
Y2VJbmZvJiByZXNvdXJjZUluZm8pCiB7CiAgICAgU3RyaW5nQnVpbGRlciB0eXBlczsKIAotICAg
IGlmIChyZXNvdXJjZUluZm8ubV9pc01hc3RlcikKKyAgICBpZiAocmVzb3VyY2VJbmZvLmlzTWFz
dGVyKQogICAgICAgICB0eXBlcy5hcHBlbmRMaXRlcmFsKCJNYXN0ZXIgIik7CiAKLSAgICBpZiAo
cmVzb3VyY2VJbmZvLm1faXNNYW5pZmVzdCkKKyAgICBpZiAocmVzb3VyY2VJbmZvLmlzTWFuaWZl
c3QpCiAgICAgICAgIHR5cGVzLmFwcGVuZExpdGVyYWwoIk1hbmlmZXN0ICIpOwogCi0gICAgaWYg
KHJlc291cmNlSW5mby5tX2lzRmFsbGJhY2spCisgICAgaWYgKHJlc291cmNlSW5mby5pc0ZhbGxi
YWNrKQogICAgICAgICB0eXBlcy5hcHBlbmRMaXRlcmFsKCJGYWxsYmFjayAiKTsKIAotICAgIGlm
IChyZXNvdXJjZUluZm8ubV9pc0ZvcmVpZ24pCisgICAgaWYgKHJlc291cmNlSW5mby5pc0ZvcmVp
Z24pCiAgICAgICAgIHR5cGVzLmFwcGVuZExpdGVyYWwoIkZvcmVpZ24gIik7CiAKLSAgICBpZiAo
cmVzb3VyY2VJbmZvLm1faXNFeHBsaWNpdCkKKyAgICBpZiAocmVzb3VyY2VJbmZvLmlzRXhwbGlj
aXQpCiAgICAgICAgIHR5cGVzLmFwcGVuZExpdGVyYWwoIkV4cGxpY2l0ICIpOwogCiAgICAgcmV0
dXJuIEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2Fj
aGVSZXNvdXJjZTo6Y3JlYXRlKCkKLSAgICAgICAgLnNldFVybChyZXNvdXJjZUluZm8ubV9yZXNv
dXJjZS5zdHJpbmcoKSkKLSAgICAgICAgLnNldFNpemUoc3RhdGljX2Nhc3Q8aW50PihyZXNvdXJj
ZUluZm8ubV9zaXplKSkKKyAgICAgICAgLnNldFVybChyZXNvdXJjZUluZm8ucmVzb3VyY2Uuc3Ry
aW5nKCkpCisgICAgICAgIC5zZXRTaXplKHN0YXRpY19jYXN0PGludD4ocmVzb3VyY2VJbmZvLnNp
emUpKQogICAgICAgICAuc2V0VHlwZSh0eXBlcy50b1N0cmluZygpKQogICAgICAgICAucmVsZWFz
ZSgpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFw
cGxpY2F0aW9uQ2FjaGVBZ2VudC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
ckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5oCmluZGV4IGQ1YzU3OWM3ZWFiZTdiMmJhZGM0NzRiMGY0
ODcxNmRkNjk0ZmViNzYuLjQ4NzUyZWZhMGNkNWY2YTc2MmRlNTNkYzJhMTEyZWZmNDY0ZjcyZmIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlv
bkNhY2hlQWdlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQXBw
bGljYXRpb25DYWNoZUFnZW50LmgKQEAgLTYyLDggKzYyLDggQEAgcHVibGljOgogICAgIHZvaWQg
Z2V0QXBwbGljYXRpb25DYWNoZUZvckZyYW1lKEVycm9yU3RyaW5nJiwgY29uc3QgU3RyaW5nJiBm
cmFtZUlkLCBSZWZQdHI8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6QXBw
bGljYXRpb25DYWNoZT4mKSBvdmVycmlkZTsKIAogcHJpdmF0ZToKLSAgICBSZWY8SW5zcGVjdG9y
OjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZT4gYnVpbGRPYmpl
Y3RGb3JBcHBsaWNhdGlvbkNhY2hlKGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpSZXNvdXJj
ZUluZm9MaXN0JiwgY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNhY2hlSW5mbyYpOwotICAg
IFJlZjxJbnNwZWN0b3I6OlByb3RvY29sOjpBcnJheTxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBs
aWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+PiBidWlsZEFycmF5Rm9yQXBw
bGljYXRpb25DYWNoZVJlc291cmNlcyhjb25zdCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6UmVzb3Vy
Y2VJbmZvTGlzdCYpOworICAgIFJlZjxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNh
Y2hlOjpBcHBsaWNhdGlvbkNhY2hlPiBidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGUoY29u
c3QgVmVjdG9yPEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpSZXNvdXJjZUluZm8+JiwgY29uc3QgQXBw
bGljYXRpb25DYWNoZUhvc3Q6OkNhY2hlSW5mbyYpOworICAgIFJlZjxJbnNwZWN0b3I6OlByb3Rv
Y29sOjpBcnJheTxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNh
dGlvbkNhY2hlUmVzb3VyY2U+PiBidWlsZEFycmF5Rm9yQXBwbGljYXRpb25DYWNoZVJlc291cmNl
cyhjb25zdCBWZWN0b3I8QXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mbz4mKTsKICAg
ICBSZWY8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25D
YWNoZVJlc291cmNlPiBidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZShjb25z
dCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6UmVzb3VyY2VJbmZvJik7CiAKICAgICBEb2N1bWVudExv
YWRlciogYXNzZXJ0RnJhbWVXaXRoRG9jdW1lbnRMb2FkZXIoRXJyb3JTdHJpbmcmLCBjb25zdCBT
dHJpbmcmIGZyYW1lSWQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0lu
c3BlY3Rvckluc3RydW1lbnRhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcAppbmRleCAyZTQzMzc5NmE2YWYzYjExYjkxZDdjYjA2
MjFhMTg0N2I1ZmMyNTdhLi5kNjhjNTIyZWZjZTAyY2ZlZDU5YThmMDg1OWY0NTRlMWM4YzJjYTgx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1
bWVudGF0aW9uLmNwcApAQCAtMSw2ICsxLDYgQEAKIC8qCiAqIENvcHlyaWdodCAoQykgMjAxMSBH
b29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotKiBDb3B5cmlnaHQgKEMpIDIwMTQsIDIw
MTUgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorKiBDb3B5cmlnaHQgKEMpIDIwMTQt
MjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAqCiAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMgYXJlCkBAIC0xMDczLDEwICsxMDczLDEwIEBAIHZvaWQgSW5zcGVjdG9ySW5zdHJ1
bWVudGF0aW9uOjpuZXR3b3JrU3RhdGVDaGFuZ2VkSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiBp
bnN0CiAgICAgICAgIGFwcGxpY2F0aW9uQ2FjaGVBZ2VudC0+bmV0d29ya1N0YXRlQ2hhbmdlZCgp
OwogfQogCi12b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6dXBkYXRlQXBwbGljYXRpb25D
YWNoZVN0YXR1c0ltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywg
RnJhbWUqIGZyYW1lKQordm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OnVwZGF0ZUFwcGxp
Y2F0aW9uQ2FjaGVTdGF0dXNJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRpbmdB
Z2VudHMsIEZyYW1lJiBmcmFtZSkKIHsKLSAgICBpZiAoSW5zcGVjdG9yQXBwbGljYXRpb25DYWNo
ZUFnZW50KiBhcHBsaWNhdGlvbkNhY2hlQWdlbnQgPSBpbnN0cnVtZW50aW5nQWdlbnRzLmluc3Bl
Y3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudCgpKQotICAgICAgICBhcHBsaWNhdGlvbkNhY2hlQWdl
bnQtPnVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXMoZnJhbWUpOworICAgIGlmIChhdXRvKiBh
cHBsaWNhdGlvbkNhY2hlQWdlbnQgPSBpbnN0cnVtZW50aW5nQWdlbnRzLmluc3BlY3RvckFwcGxp
Y2F0aW9uQ2FjaGVBZ2VudCgpKQorICAgICAgICBhcHBsaWNhdGlvbkNhY2hlQWdlbnQtPnVwZGF0
ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXMoJmZyYW1lKTsKIH0KIAogYm9vbCBJbnNwZWN0b3JJbnN0
cnVtZW50YXRpb246OmNvbnNvbGVBZ2VudEVuYWJsZWQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCog
c2NyaXB0RXhlY3V0aW9uQ29udGV4dCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaAppbmRleCA5YjYwMDEwNGRhMmYxZGQ1ZWQxMDJi
YmY5NDVhNmY1YWQ0OTk3ZjQyLi4yNDVjZGM4ODc1MmQwODUxZTU3MDQ0YmI3MjMzNWI2YTA4MjRh
YWZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1
bWVudGF0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3Ry
dW1lbnRhdGlvbi5oCkBAIC00MDcsNyArNDA3LDcgQEAgcHJpdmF0ZToKICNlbmRpZgogCiAgICAg
c3RhdGljIHZvaWQgbmV0d29ya1N0YXRlQ2hhbmdlZEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYp
OwotICAgIHN0YXRpYyB2b2lkIHVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXNJbXBsKEluc3Ry
dW1lbnRpbmdBZ2VudHMmLCBGcmFtZSopOworICAgIHN0YXRpYyB2b2lkIHVwZGF0ZUFwcGxpY2F0
aW9uQ2FjaGVTdGF0dXNJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBGcmFtZSYpOwogCiAgICAg
c3RhdGljIHZvaWQgbGF5ZXJUcmVlRGlkQ2hhbmdlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJik7
CiAgICAgc3RhdGljIHZvaWQgcmVuZGVyTGF5ZXJEZXN0cm95ZWRJbXBsKEluc3RydW1lbnRpbmdB
Z2VudHMmLCBjb25zdCBSZW5kZXJMYXllciYpOwpAQCAtMTE4MSw4ICsxMTgxLDggQEAgaW5saW5l
IHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpuZXR3b3JrU3RhdGVDaGFuZ2VkKFBhZ2Um
IHBhZ2UpCiBpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OnVwZGF0ZUFwcGxp
Y2F0aW9uQ2FjaGVTdGF0dXMoRnJhbWUqIGZyYW1lKQogewogICAgIEZBU1RfUkVUVVJOX0lGX05P
X0ZST05URU5EUyh2b2lkKCkpOwotICAgIGlmIChJbnN0cnVtZW50aW5nQWdlbnRzKiBpbnN0cnVt
ZW50aW5nQWdlbnRzID0gaW5zdHJ1bWVudGluZ0FnZW50c0ZvckZyYW1lKGZyYW1lKSkKLSAgICAg
ICAgdXBkYXRlQXBwbGljYXRpb25DYWNoZVN0YXR1c0ltcGwoKmluc3RydW1lbnRpbmdBZ2VudHMs
IGZyYW1lKTsKKyAgICBpZiAoYXV0byogaW5zdHJ1bWVudGluZ0FnZW50cyA9IGluc3RydW1lbnRp
bmdBZ2VudHNGb3JGcmFtZShmcmFtZSkpCisgICAgICAgIHVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVT
dGF0dXNJbXBsKCppbnN0cnVtZW50aW5nQWdlbnRzLCAqZnJhbWUpOwogfQogCiBpbmxpbmUgdm9p
ZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmFkZE1lc3NhZ2VUb0NvbnNvbGUoUGFnZSYgcGFn
ZSwgc3RkOjp1bmlxdWVfcHRyPEluc3BlY3Rvcjo6Q29uc29sZU1lc3NhZ2U+IG1lc3NhZ2UpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcAppbmRleCA5YjM4YzNiMzYyNzkw
NWUxYmVhYTM5ZjU1YmUzZGJjNjljMzc3YWU5Li5lZTY1OWNiNWY5Mzk1OTA3NjdlYzk4NGE2MTcx
ZmQ1MzkwZTU0ODFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRM
b2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5jcHAK
QEAgLTEyOSwzMCArMTI5LDE2IEBAIHN0YXRpYyBib29sIGFyZUFsbExvYWRlcnNQYWdlQ2FjaGVB
Y2NlcHRhYmxlKGNvbnN0IFJlc291cmNlTG9hZGVyTWFwJiBsb2FkZXJzKQogICAgIHJldHVybiB0
cnVlOwogfQogCi1Eb2N1bWVudExvYWRlcjo6RG9jdW1lbnRMb2FkZXIoY29uc3QgUmVzb3VyY2VS
ZXF1ZXN0JiByZXEsIGNvbnN0IFN1YnN0aXR1dGVEYXRhJiBzdWJzdGl0dXRlRGF0YSkKLSAgICA6
IG1fZGVmZXJNYWluUmVzb3VyY2VEYXRhTG9hZCh0cnVlKQotICAgICwgbV9mcmFtZShudWxscHRy
KQotICAgICwgbV9jYWNoZWRSZXNvdXJjZUxvYWRlcihDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Y3Jl
YXRlKHRoaXMpKQorRG9jdW1lbnRMb2FkZXI6OkRvY3VtZW50TG9hZGVyKGNvbnN0IFJlc291cmNl
UmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgU3Vic3RpdHV0ZURhdGEmIHN1YnN0aXR1dGVEYXRhKQor
ICAgIDogbV9jYWNoZWRSZXNvdXJjZUxvYWRlcihDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Y3JlYXRl
KHRoaXMpKQogICAgICwgbV93cml0ZXIobV9mcmFtZSkKLSAgICAsIG1fb3JpZ2luYWxSZXF1ZXN0
KHJlcSkKKyAgICAsIG1fb3JpZ2luYWxSZXF1ZXN0KHJlcXVlc3QpCiAgICAgLCBtX3N1YnN0aXR1
dGVEYXRhKHN1YnN0aXR1dGVEYXRhKQotICAgICwgbV9vcmlnaW5hbFJlcXVlc3RDb3B5KHJlcSkK
LSAgICAsIG1fcmVxdWVzdChyZXEpCisgICAgLCBtX29yaWdpbmFsUmVxdWVzdENvcHkocmVxdWVz
dCkKKyAgICAsIG1fcmVxdWVzdChyZXF1ZXN0KQogICAgICwgbV9vcmlnaW5hbFN1YnN0aXR1dGVE
YXRhV2FzVmFsaWQoc3Vic3RpdHV0ZURhdGEuaXNWYWxpZCgpKQotICAgICwgbV9jb21taXR0ZWQo
ZmFsc2UpCi0gICAgLCBtX2lzU3RvcHBpbmcoZmFsc2UpCi0gICAgLCBtX2dvdEZpcnN0Qnl0ZShm
YWxzZSkKLSAgICAsIG1faXNDbGllbnRSZWRpcmVjdChmYWxzZSkKLSAgICAsIG1faXNMb2FkaW5n
TXVsdGlwYXJ0Q29udGVudChmYWxzZSkKLSAgICAsIG1fd2FzT25sb2FkRGlzcGF0Y2hlZChmYWxz
ZSkKLSAgICAsIG1fc3RvcFJlY29yZGluZ1Jlc3BvbnNlcyhmYWxzZSkKICAgICAsIG1fc3Vic3Rp
dHV0ZVJlc291cmNlRGVsaXZlcnlUaW1lcigqdGhpcywgJkRvY3VtZW50TG9hZGVyOjpzdWJzdGl0
dXRlUmVzb3VyY2VEZWxpdmVyeVRpbWVyRmlyZWQpCi0gICAgLCBtX2RpZENyZWF0ZUdsb2JhbEhp
c3RvcnlFbnRyeShmYWxzZSkKLSAgICAsIG1fbG9hZGluZ01haW5SZXNvdXJjZShmYWxzZSkKLSAg
ICAsIG1fdGltZU9mTGFzdERhdGFSZWNlaXZlZCgwLjApCi0gICAgLCBtX2lkZW50aWZpZXJGb3JM
b2FkV2l0aG91dFJlc291cmNlTG9hZGVyKDApCiAgICAgLCBtX2RhdGFMb2FkVGltZXIoKnRoaXMs
ICZEb2N1bWVudExvYWRlcjo6aGFuZGxlU3Vic3RpdHV0ZURhdGFMb2FkTm93KQotICAgICwgbV9z
dWJyZXNvdXJjZUxvYWRlcnNBcmVQYWdlQ2FjaGVBY2NlcHRhYmxlKGZhbHNlKQogICAgICwgbV9h
cHBsaWNhdGlvbkNhY2hlSG9zdChzdGQ6Om1ha2VfdW5pcXVlPEFwcGxpY2F0aW9uQ2FjaGVIb3N0
PigqdGhpcykpCiB7CiB9CkBAIC0xNjYsNyArMTUyLDkgQEAgRnJhbWVMb2FkZXIqIERvY3VtZW50
TG9hZGVyOjpmcmFtZUxvYWRlcigpIGNvbnN0CiAKIFN1YnJlc291cmNlTG9hZGVyKiBEb2N1bWVu
dExvYWRlcjo6bWFpblJlc291cmNlTG9hZGVyKCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9tYWlu
UmVzb3VyY2UgPyBtX21haW5SZXNvdXJjZS0+bG9hZGVyKCkgOiAwOworICAgIGlmICghbV9tYWlu
UmVzb3VyY2UpCisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIHJldHVybiBtX21haW5SZXNv
dXJjZS0+bG9hZGVyKCk7CiB9CiAKIERvY3VtZW50TG9hZGVyOjp+RG9jdW1lbnRMb2FkZXIoKQpA
QCAtMTc5LDcgKzE2Nyw3IEBAIERvY3VtZW50TG9hZGVyOjp+RG9jdW1lbnRMb2FkZXIoKQogICAg
IGlmIChtX2ljb25EYXRhQ2FsbGJhY2spCiAgICAgICAgIG1faWNvbkRhdGFDYWxsYmFjay0+aW52
YWxpZGF0ZSgpOwogICAgIG1fY2FjaGVkUmVzb3VyY2VMb2FkZXItPmNsZWFyRG9jdW1lbnRMb2Fk
ZXIoKTsKLSAgICAKKwogICAgIGNsZWFyTWFpblJlc291cmNlKCk7CiB9CiAKQEAgLTE5OSwzMSAr
MTg3LDYgQEAgRG9jdW1lbnQqIERvY3VtZW50TG9hZGVyOjpkb2N1bWVudCgpIGNvbnN0CiAgICAg
cmV0dXJuIG51bGxwdHI7CiB9CiAKLWNvbnN0IFJlc291cmNlUmVxdWVzdCYgRG9jdW1lbnRMb2Fk
ZXI6Om9yaWdpbmFsUmVxdWVzdCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fb3JpZ2luYWxSZXF1
ZXN0OwotfQotCi1jb25zdCBSZXNvdXJjZVJlcXVlc3QmIERvY3VtZW50TG9hZGVyOjpvcmlnaW5h
bFJlcXVlc3RDb3B5KCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9vcmlnaW5hbFJlcXVlc3RDb3B5
OwotfQotCi1jb25zdCBSZXNvdXJjZVJlcXVlc3QmIERvY3VtZW50TG9hZGVyOjpyZXF1ZXN0KCkg
Y29uc3QKLXsKLSAgICByZXR1cm4gbV9yZXF1ZXN0OwotfQotCi1SZXNvdXJjZVJlcXVlc3QmIERv
Y3VtZW50TG9hZGVyOjpyZXF1ZXN0KCkKLXsKLSAgICByZXR1cm4gbV9yZXF1ZXN0OwotfQotCi1j
b25zdCBVUkwmIERvY3VtZW50TG9hZGVyOjp1cmwoKSBjb25zdAotewotICAgIHJldHVybiByZXF1
ZXN0KCkudXJsKCk7Ci19Ci0KIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnJlcGxhY2VSZXF1ZXN0VVJM
Rm9yU2FtZURvY3VtZW50TmF2aWdhdGlvbihjb25zdCBVUkwmIHVybCkKIHsKICAgICBtX29yaWdp
bmFsUmVxdWVzdENvcHkuc2V0VVJMKHVybCk7CkBAIC0zMTksNyArMjgyLDcgQEAgdm9pZCBEb2N1
bWVudExvYWRlcjo6c3RvcExvYWRpbmcoKQogICAgIGNhbmNlbEFsbChtX211bHRpcGFydFN1YnJl
c291cmNlTG9hZGVycyk7CiAKICAgICAvLyBBcHBjYWNoZSB1c2VzIFJlc291cmNlSGFuZGxlIGRp
cmVjdGx5LCBEb2N1bWVudExvYWRlciBkb2Vzbid0IGNvdW50IHRoZXNlIGxvYWRzLgotICAgIG1f
YXBwbGljYXRpb25DYWNoZUhvc3QtPnN0b3BMb2FkaW5nSW5GcmFtZShtX2ZyYW1lKTsKKyAgICBt
X2FwcGxpY2F0aW9uQ2FjaGVIb3N0LT5zdG9wTG9hZGluZ0luRnJhbWUoKm1fZnJhbWUpOwogICAg
IAogI2lmIEVOQUJMRShXRUJfQVJDSElWRSkgfHwgRU5BQkxFKE1IVE1MKQogICAgIGNsZWFyQXJj
aGl2ZVJlc291cmNlcygpOwpAQCAtNjAyLDcgKzU2NSw3IEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6
OndpbGxTZW5kUmVxdWVzdChSZXNvdXJjZVJlcXVlc3QmIG5ld1JlcXVlc3QsIGNvbnN0IFJlc291
cmNlCiAKICAgICBBU1NFUlQoIW1fd2FpdGluZ0Zvck5hdmlnYXRpb25Qb2xpY3kpOwogICAgIG1f
d2FpdGluZ0Zvck5hdmlnYXRpb25Qb2xpY3kgPSB0cnVlOwotICAgIGZyYW1lTG9hZGVyKCktPnBv
bGljeUNoZWNrZXIoKS5jaGVja05hdmlnYXRpb25Qb2xpY3kobmV3UmVxdWVzdCwgZGlkUmVjZWl2
ZVJlZGlyZWN0UmVzcG9uc2UsIFt0aGlzXShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3Qs
IFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwgYm9vbCBzaG91bGRDb250aW51ZSkgeworICAgIGZyYW1l
TG9hZGVyKCktPnBvbGljeUNoZWNrZXIoKS5jaGVja05hdmlnYXRpb25Qb2xpY3kobmV3UmVxdWVz
dCwgZGlkUmVjZWl2ZVJlZGlyZWN0UmVzcG9uc2UsIFt0aGlzXSAoY29uc3QgUmVzb3VyY2VSZXF1
ZXN0JiByZXF1ZXN0LCBGb3JtU3RhdGUqLCBib29sIHNob3VsZENvbnRpbnVlKSB7CiAgICAgICAg
IGNvbnRpbnVlQWZ0ZXJOYXZpZ2F0aW9uUG9saWN5KHJlcXVlc3QsIHNob3VsZENvbnRpbnVlKTsK
ICAgICB9KTsKIH0KQEAgLTkwMCwxMiArODYzLDggQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6Y29t
bWl0RGF0YShjb25zdCBjaGFyKiBieXRlcywgc2l6ZV90IGxlbmd0aCkKICAgICAgICAgaWYgKGZy
YW1lTG9hZGVyKCktPnN0YXRlTWFjaGluZSgpLmNyZWF0aW5nSW5pdGlhbEVtcHR5RG9jdW1lbnQo
KSkKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgCi0jaWYgRU5BQkxFKE1IVE1MKQotICAg
ICAgICAvLyBUaGUgb3JpZ2luIGlzIHRoZSBNSFRNTCBmaWxlLCB3ZSBuZWVkIHRvIHNldCB0aGUg
YmFzZSBVUkwgdG8gdGhlIGRvY3VtZW50IGVuY29kZWQgaW4gdGhlIE1IVE1MIHNvCi0gICAgICAg
IC8vIHJlbGF0aXZlIFVSTHMgYXJlIHJlc29sdmVkIHByb3Blcmx5LgotICAgICAgICBpZiAobV9h
cmNoaXZlICYmIG1fYXJjaGl2ZS0+dHlwZSgpID09IEFyY2hpdmU6Ok1IVE1MKQorICAgICAgICBp
ZiAobV9hcmNoaXZlICYmIG1fYXJjaGl2ZS0+c2hvdWxkT3ZlcnJpZGVCYXNlVVJMKCkpCiAgICAg
ICAgICAgICBtX2ZyYW1lLT5kb2N1bWVudCgpLT5zZXRCYXNlVVJMT3ZlcnJpZGUobV9hcmNoaXZl
LT5tYWluUmVzb3VyY2UoKS0+dXJsKCkpOwotI2VuZGlmCiAKICAgICAgICAgLy8gQ2FsbCByZWNl
aXZlZEZpcnN0RGF0YSgpIGV4YWN0bHkgb25jZSBwZXIgbG9hZC4gV2Ugc2hvdWxkIG9ubHkgcmVh
Y2ggdGhpcyBwb2ludCBtdWx0aXBsZSB0aW1lcwogICAgICAgICAvLyBmb3IgbXVsdGlwYXJ0IGxv
YWRzLCBhbmQgRnJhbWVMb2FkZXI6OmlzUmVwbGFjaW5nKCkgd2lsbCBiZSB0cnVlIGFmdGVyIHRo
ZSBmaXJzdCB0aW1lLgpAQCAtOTIxLDEwICs4ODAsOCBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpj
b21taXREYXRhKGNvbnN0IGNoYXIqIGJ5dGVzLCBzaXplX3QgbGVuZ3RoKQogICAgICAgICBpZiAo
b3ZlcnJpZGVFbmNvZGluZygpLmlzTnVsbCgpKSB7CiAgICAgICAgICAgICB1c2VyQ2hvc2VuID0g
ZmFsc2U7CiAgICAgICAgICAgICBlbmNvZGluZyA9IHJlc3BvbnNlKCkudGV4dEVuY29kaW5nTmFt
ZSgpOwotI2lmIEVOQUJMRShXRUJfQVJDSElWRSkKLSAgICAgICAgICAgIGlmIChtX2FyY2hpdmUg
JiYgbV9hcmNoaXZlLT50eXBlKCkgPT0gQXJjaGl2ZTo6V2ViQXJjaGl2ZSkKKyAgICAgICAgICAg
IGlmIChtX2FyY2hpdmUgJiYgbV9hcmNoaXZlLT5zaG91bGRVc2VNYWluUmVzb3VyY2VFbmNvZGlu
ZygpKQogICAgICAgICAgICAgICAgIGVuY29kaW5nID0gbV9hcmNoaXZlLT5tYWluUmVzb3VyY2Uo
KS0+dGV4dEVuY29kaW5nKCk7Ci0jZW5kaWYKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAg
IHVzZXJDaG9zZW4gPSB0cnVlOwogICAgICAgICAgICAgZW5jb2RpbmcgPSBvdmVycmlkZUVuY29k
aW5nKCk7CkBAIC0xMDgzLDE1ICsxMDQwLDE2IEBAIGJvb2wgRG9jdW1lbnRMb2FkZXI6OmlzTG9h
ZGluZ0luQVBJU2Vuc2UoKSBjb25zdAogICAgIGlmIChmcmFtZUxvYWRlcigpLT5zdGF0ZSgpICE9
IEZyYW1lU3RhdGVDb21wbGV0ZSkgewogICAgICAgICBpZiAobV9mcmFtZS0+c2V0dGluZ3MoKS5u
ZWVkc0lzTG9hZGluZ0luQVBJU2Vuc2VRdWlyaygpICYmICFtX3N1YnJlc291cmNlTG9hZGVycy5p
c0VtcHR5KCkpCiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICAKLSAgICAgICAgRG9jdW1l
bnQqIGRvYyA9IG1fZnJhbWUtPmRvY3VtZW50KCk7Ci0gICAgICAgIGlmICgoaXNMb2FkaW5nTWFp
blJlc291cmNlKCkgfHwgIW1fZnJhbWUtPmRvY3VtZW50KCktPmxvYWRFdmVudEZpbmlzaGVkKCkp
ICYmIGlzTG9hZGluZygpKQorCisgICAgICAgIEFTU0VSVChtX2ZyYW1lLT5kb2N1bWVudCgpKTsK
KyAgICAgICAgYXV0byYgZG9jdW1lbnQgPSAqbV9mcmFtZS0+ZG9jdW1lbnQoKTsKKyAgICAgICAg
aWYgKChpc0xvYWRpbmdNYWluUmVzb3VyY2UoKSB8fCAhZG9jdW1lbnQubG9hZEV2ZW50RmluaXNo
ZWQoKSkgJiYgaXNMb2FkaW5nKCkpCiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAg
aWYgKG1fY2FjaGVkUmVzb3VyY2VMb2FkZXItPnJlcXVlc3RDb3VudCgpKQogICAgICAgICAgICAg
cmV0dXJuIHRydWU7Ci0gICAgICAgIGlmIChkb2MtPnByb2Nlc3NpbmdMb2FkRXZlbnQoKSkKKyAg
ICAgICAgaWYgKGRvY3VtZW50LnByb2Nlc3NpbmdMb2FkRXZlbnQoKSkKICAgICAgICAgICAgIHJl
dHVybiB0cnVlOwotICAgICAgICBpZiAoZG9jLT5oYXNBY3RpdmVQYXJzZXIoKSkKKyAgICAgICAg
aWYgKGRvY3VtZW50Lmhhc0FjdGl2ZVBhcnNlcigpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7
CiAgICAgfQogICAgIHJldHVybiBmcmFtZUxvYWRlcigpLT5zdWJmcmFtZUlzTG9hZGluZygpOwpA
QCAtMTEwMiw0MCArMTA2MCwzNSBAQCBib29sIERvY3VtZW50TG9hZGVyOjptYXliZUNyZWF0ZUFy
Y2hpdmUoKQogI2lmICFFTkFCTEUoV0VCX0FSQ0hJVkUpICYmICFFTkFCTEUoTUhUTUwpCiAgICAg
cmV0dXJuIGZhbHNlOwogI2Vsc2UKLSAgICAKICAgICAvLyBHaXZlIHRoZSBhcmNoaXZlIG1hY2hp
bmVyeSBhIGNyYWNrIGF0IHRoaXMgZG9jdW1lbnQuIElmIHRoZSBNSU1FIHR5cGUgaXMgbm90IGFu
IGFyY2hpdmUgdHlwZSwgaXQgd2lsbCByZXR1cm4gMC4KICAgICBtX2FyY2hpdmUgPSBBcmNoaXZl
RmFjdG9yeTo6Y3JlYXRlKG1fcmVzcG9uc2UudXJsKCksIG1haW5SZXNvdXJjZURhdGEoKS5nZXQo
KSwgbV9yZXNwb25zZS5taW1lVHlwZSgpKTsKICAgICBpZiAoIW1fYXJjaGl2ZSkKICAgICAgICAg
cmV0dXJuIGZhbHNlOwogICAgIAotICAgIGFkZEFsbEFyY2hpdmVSZXNvdXJjZXMobV9hcmNoaXZl
LmdldCgpKTsKLSAgICBBcmNoaXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSA9IG1fYXJjaGl2ZS0+
bWFpblJlc291cmNlKCk7Ci0gICAgbV9wYXJzZWRBcmNoaXZlRGF0YSA9ICZtYWluUmVzb3VyY2Ut
PmRhdGEoKTsKLSAgICBtX3dyaXRlci5zZXRNSU1FVHlwZShtYWluUmVzb3VyY2UtPm1pbWVUeXBl
KCkpOwotICAgIAorICAgIGFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoKm1fYXJjaGl2ZSk7CisgICAg
QVNTRVJUKG1fYXJjaGl2ZS0+bWFpblJlc291cmNlKCkpOworICAgIGF1dG8mIG1haW5SZXNvdXJj
ZSA9ICptX2FyY2hpdmUtPm1haW5SZXNvdXJjZSgpOworICAgIG1fcGFyc2VkQXJjaGl2ZURhdGEg
PSAmbWFpblJlc291cmNlLmRhdGEoKTsKKyAgICBtX3dyaXRlci5zZXRNSU1FVHlwZShtYWluUmVz
b3VyY2UubWltZVR5cGUoKSk7CisKICAgICBBU1NFUlQobV9mcmFtZS0+ZG9jdW1lbnQoKSk7Ci0g
ICAgY29tbWl0RGF0YShtYWluUmVzb3VyY2UtPmRhdGEoKS5kYXRhKCksIG1haW5SZXNvdXJjZS0+
ZGF0YSgpLnNpemUoKSk7CisgICAgY29tbWl0RGF0YShtYWluUmVzb3VyY2UuZGF0YSgpLmRhdGEo
KSwgbWFpblJlc291cmNlLmRhdGEoKS5zaXplKCkpOwogICAgIHJldHVybiB0cnVlOwotI2VuZGlm
IC8vICFFTkFCTEUoV0VCX0FSQ0hJVkUpICYmICFFTkFCTEUoTUhUTUwpCisjZW5kaWYKIH0KIAog
I2lmIEVOQUJMRShXRUJfQVJDSElWRSkgfHwgRU5BQkxFKE1IVE1MKQogCi12b2lkIERvY3VtZW50
TG9hZGVyOjpzZXRBcmNoaXZlKFBhc3NSZWZQdHI8QXJjaGl2ZT4gYXJjaGl2ZSkKK3ZvaWQgRG9j
dW1lbnRMb2FkZXI6OnNldEFyY2hpdmUoUmVmPEFyY2hpdmU+JiYgYXJjaGl2ZSkKIHsKLSAgICBt
X2FyY2hpdmUgPSBhcmNoaXZlOwotICAgIGFkZEFsbEFyY2hpdmVSZXNvdXJjZXMobV9hcmNoaXZl
LmdldCgpKTsKKyAgICBtX2FyY2hpdmUgPSBXVEZNb3ZlKGFyY2hpdmUpOworICAgIGFkZEFsbEFy
Y2hpdmVSZXNvdXJjZXMoKm1fYXJjaGl2ZSk7CiB9CiAKLXZvaWQgRG9jdW1lbnRMb2FkZXI6OmFk
ZEFsbEFyY2hpdmVSZXNvdXJjZXMoQXJjaGl2ZSogYXJjaGl2ZSkKK3ZvaWQgRG9jdW1lbnRMb2Fk
ZXI6OmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoQXJjaGl2ZSYgYXJjaGl2ZSkKIHsKICAgICBpZiAo
IW1fYXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbikKICAgICAgICAgbV9hcmNoaXZlUmVzb3VyY2VD
b2xsZWN0aW9uID0gc3RkOjptYWtlX3VuaXF1ZTxBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uPigp
OwotICAgICAgICAKLSAgICBBU1NFUlQoYXJjaGl2ZSk7Ci0gICAgaWYgKCFhcmNoaXZlKQotICAg
ICAgICByZXR1cm47Ci0gICAgICAgIAogICAgIG1fYXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi0+
YWRkQWxsUmVzb3VyY2VzKGFyY2hpdmUpOwogfQogCkBAIC0xMTQ1LDEzICsxMDk4LDEyIEBAIHZv
aWQgRG9jdW1lbnRMb2FkZXI6OmFkZEFyY2hpdmVSZXNvdXJjZShSZWY8QXJjaGl2ZVJlc291cmNl
PiYmIHJlc291cmNlKQogewogICAgIGlmICghbV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uKQog
ICAgICAgICBtX2FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24gPSBzdGQ6Om1ha2VfdW5pcXVlPEFy
Y2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24+KCk7Ci0gICAgICAgIAogICAgIG1fYXJjaGl2ZVJlc291
cmNlQ29sbGVjdGlvbi0+YWRkUmVzb3VyY2UoV1RGTW92ZShyZXNvdXJjZSkpOwogfQogCi1QYXNz
UmVmUHRyPEFyY2hpdmU+IERvY3VtZW50TG9hZGVyOjpwb3BBcmNoaXZlRm9yU3ViZnJhbWUoY29u
c3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IFVSTCYgdXJsKQorUmVmUHRyPEFyY2hpdmU+IERv
Y3VtZW50TG9hZGVyOjpwb3BBcmNoaXZlRm9yU3ViZnJhbWUoY29uc3QgU3RyaW5nJiBmcmFtZU5h
bWUsIGNvbnN0IFVSTCYgdXJsKQogewotICAgIHJldHVybiBtX2FyY2hpdmVSZXNvdXJjZUNvbGxl
Y3Rpb24gPyBtX2FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24tPnBvcFN1YmZyYW1lQXJjaGl2ZShm
cmFtZU5hbWUsIHVybCkgOiBQYXNzUmVmUHRyPEFyY2hpdmU+KG51bGxwdHIpOworICAgIHJldHVy
biBtX2FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24gPyBtX2FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rp
b24tPnBvcFN1YmZyYW1lQXJjaGl2ZShmcmFtZU5hbWUsIHVybCkgOiBudWxscHRyOwogfQogCiB2
b2lkIERvY3VtZW50TG9hZGVyOjpjbGVhckFyY2hpdmVSZXNvdXJjZXMoKQpAQCAtMTE3MSw3ICsx
MTIzLDcgQEAgQXJjaGl2ZVJlc291cmNlKiBEb2N1bWVudExvYWRlcjo6YXJjaGl2ZVJlc291cmNl
Rm9yVVJMKGNvbnN0IFVSTCYgdXJsKSBjb25zdAogewogICAgIGlmICghbV9hcmNoaXZlUmVzb3Vy
Y2VDb2xsZWN0aW9uKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICBBcmNoaXZlUmVzb3Vy
Y2UqIHJlc291cmNlID0gbV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uLT5hcmNoaXZlUmVzb3Vy
Y2VGb3JVUkwodXJsKTsKKyAgICBhdXRvKiByZXNvdXJjZSA9IG1fYXJjaGl2ZVJlc291cmNlQ29s
bGVjdGlvbi0+YXJjaGl2ZVJlc291cmNlRm9yVVJMKHVybCk7CiAgICAgaWYgKCFyZXNvdXJjZSB8
fCByZXNvdXJjZS0+c2hvdWxkSWdub3JlV2hlblVuYXJjaGl2aW5nKCkpCiAgICAgICAgIHJldHVy
biBudWxscHRyOwogICAgIHJldHVybiByZXNvdXJjZTsKQEAgLTExODIsMTcgKzExMzQsMTYgQEAg
UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gRG9jdW1lbnRMb2FkZXI6Om1haW5SZXNvdXJjZSgpIGNv
bnN0CiAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZGF0YSA9IG1haW5SZXNvdXJjZURhdGEoKTsK
ICAgICBpZiAoIWRhdGEpCiAgICAgICAgIGRhdGEgPSBTaGFyZWRCdWZmZXI6OmNyZWF0ZSgpOwot
ICAgICAgICAKICAgICBhdXRvJiByZXNwb25zZSA9IHRoaXMtPnJlc3BvbnNlKCk7CiAgICAgcmV0
dXJuIEFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKFdURk1vdmUoZGF0YSksIHJlc3BvbnNlLnVybCgp
LCByZXNwb25zZS5taW1lVHlwZSgpLCByZXNwb25zZS50ZXh0RW5jb2RpbmdOYW1lKCksIGZyYW1l
KCktPnRyZWUoKS51bmlxdWVOYW1lKCkpOwogfQogCi1QYXNzUmVmUHRyPEFyY2hpdmVSZXNvdXJj
ZT4gRG9jdW1lbnRMb2FkZXI6OnN1YnJlc291cmNlKGNvbnN0IFVSTCYgdXJsKSBjb25zdAorUmVm
UHRyPEFyY2hpdmVSZXNvdXJjZT4gRG9jdW1lbnRMb2FkZXI6OnN1YnJlc291cmNlKGNvbnN0IFVS
TCYgdXJsKSBjb25zdAogewogICAgIGlmICghaXNDb21taXR0ZWQoKSkKICAgICAgICAgcmV0dXJu
IG51bGxwdHI7CiAgICAgCi0gICAgQ2FjaGVkUmVzb3VyY2UqIHJlc291cmNlID0gbV9jYWNoZWRS
ZXNvdXJjZUxvYWRlci0+Y2FjaGVkUmVzb3VyY2UodXJsKTsKKyAgICBhdXRvKiByZXNvdXJjZSA9
IG1fY2FjaGVkUmVzb3VyY2VMb2FkZXItPmNhY2hlZFJlc291cmNlKHVybCk7CiAgICAgaWYgKCFy
ZXNvdXJjZSB8fCAhcmVzb3VyY2UtPmlzTG9hZGVkKCkpCiAgICAgICAgIHJldHVybiBhcmNoaXZl
UmVzb3VyY2VGb3JVUkwodXJsKTsKIApAQCAtMTIwNiwxOCArMTE1NywxNiBAQCBQYXNzUmVmUHRy
PEFyY2hpdmVSZXNvdXJjZT4gRG9jdW1lbnRMb2FkZXI6OnN1YnJlc291cmNlKGNvbnN0IFVSTCYg
dXJsKSBjb25zdAogICAgIHJldHVybiBBcmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShkYXRhLCB1cmws
IHJlc291cmNlLT5yZXNwb25zZSgpKTsKIH0KIAotVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3Vy
Y2U+PiBEb2N1bWVudExvYWRlcjo6c3VicmVzb3VyY2VzKCkgY29uc3QKK1ZlY3RvcjxSZWY8QXJj
aGl2ZVJlc291cmNlPj4gRG9jdW1lbnRMb2FkZXI6OnN1YnJlc291cmNlcygpIGNvbnN0CiB7CiAg
ICAgaWYgKCFpc0NvbW1pdHRlZCgpKQogICAgICAgICByZXR1cm4geyB9OwogCi0gICAgVmVjdG9y
PFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+PiBzdWJyZXNvdXJjZXM7Ci0KLSAgICBmb3IgKGF1dG8m
IGNhY2hlZFJlc291cmNlSGFuZGxlIDogbV9jYWNoZWRSZXNvdXJjZUxvYWRlci0+YWxsQ2FjaGVk
UmVzb3VyY2VzKCkudmFsdWVzKCkpIHsKLSAgICAgICAgaWYgKFJlZlB0cjxBcmNoaXZlUmVzb3Vy
Y2U+IHN1YnJlc291cmNlID0gdGhpcy0+c3VicmVzb3VyY2UoVVJMKFBhcnNlZFVSTFN0cmluZywg
Y2FjaGVkUmVzb3VyY2VIYW5kbGUtPnVybCgpKSkpCi0gICAgICAgICAgICBzdWJyZXNvdXJjZXMu
YXBwZW5kKFdURk1vdmUoc3VicmVzb3VyY2UpKTsKKyAgICBWZWN0b3I8UmVmPEFyY2hpdmVSZXNv
dXJjZT4+IHN1YnJlc291cmNlczsKKyAgICBmb3IgKGF1dG8mIGhhbmRsZSA6IG1fY2FjaGVkUmVz
b3VyY2VMb2FkZXItPmFsbENhY2hlZFJlc291cmNlcygpLnZhbHVlcygpKSB7CisgICAgICAgIGlm
IChhdXRvIHN1YnJlc291cmNlID0gdGhpcy0+c3VicmVzb3VyY2UoeyBQYXJzZWRVUkxTdHJpbmcs
IGhhbmRsZS0+dXJsKCkgfSkpCisgICAgICAgICAgICBzdWJyZXNvdXJjZXMuYXBwZW5kKHN1YnJl
c291cmNlLnJlbGVhc2VOb25OdWxsKCkpOwogICAgIH0KLQogICAgIHJldHVybiBzdWJyZXNvdXJj
ZXM7CiB9CiAKQEAgLTEyMjUsOSArMTE3NCwxMSBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpkZWxp
dmVyU3Vic3RpdHV0ZVJlc291cmNlc0FmdGVyRGVsYXkoKQogewogICAgIGlmIChtX3BlbmRpbmdT
dWJzdGl0dXRlUmVzb3VyY2VzLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwotICAgIEFTU0VS
VChtX2ZyYW1lICYmIG1fZnJhbWUtPnBhZ2UoKSk7CisgICAgQVNTRVJUKG1fZnJhbWUpOworICAg
IEFTU0VSVChtX2ZyYW1lLT5wYWdlKCkpOwogICAgIGlmIChtX2ZyYW1lLT5wYWdlKCktPmRlZmVy
c0xvYWRpbmcoKSkKICAgICAgICAgcmV0dXJuOworCiAgICAgaWYgKCFtX3N1YnN0aXR1dGVSZXNv
dXJjZURlbGl2ZXJ5VGltZXIuaXNBY3RpdmUoKSkKICAgICAgICAgbV9zdWJzdGl0dXRlUmVzb3Vy
Y2VEZWxpdmVyeVRpbWVyLnN0YXJ0T25lU2hvdCgwKTsKIH0KQEAgLTEyMzYsMTggKzExODcsMTUg
QEAgdm9pZCBEb2N1bWVudExvYWRlcjo6c3Vic3RpdHV0ZVJlc291cmNlRGVsaXZlcnlUaW1lckZp
cmVkKCkKIHsKICAgICBpZiAobV9wZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlcy5pc0VtcHR5KCkp
CiAgICAgICAgIHJldHVybjsKLSAgICBBU1NFUlQobV9mcmFtZSAmJiBtX2ZyYW1lLT5wYWdlKCkp
OworICAgIEFTU0VSVChtX2ZyYW1lKTsKKyAgICBBU1NFUlQobV9mcmFtZS0+cGFnZSgpKTsKICAg
ICBpZiAobV9mcmFtZS0+cGFnZSgpLT5kZWZlcnNMb2FkaW5nKCkpCiAgICAgICAgIHJldHVybjsK
IAotICAgIFN1YnN0aXR1dGVSZXNvdXJjZU1hcCBjb3B5OwotICAgIGNvcHkuc3dhcChtX3BlbmRp
bmdTdWJzdGl0dXRlUmVzb3VyY2VzKTsKLQotICAgIGZvciAoYXV0byYgZW50cnkgOiBjb3B5KSB7
Ci0gICAgICAgIGF1dG8mIGxvYWRlciA9IGVudHJ5LmtleTsKLSAgICAgICAgU3Vic3RpdHV0ZVJl
c291cmNlKiByZXNvdXJjZSA9IGVudHJ5LnZhbHVlLmdldCgpOwotCi0gICAgICAgIGlmIChyZXNv
dXJjZSkKKyAgICBhdXRvIHBlbmRpbmdTdWJzdGl0dXRlUmVzb3VyY2VzID0gV1RGTW92ZShtX3Bl
bmRpbmdTdWJzdGl0dXRlUmVzb3VyY2VzKTsKKyAgICBmb3IgKGF1dG8mIHBlbmRpbmdTdWJzdGl0
dXRlUmVzb3VyY2UgOiBwZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlcykgeworICAgICAgICBhdXRv
JiBsb2FkZXIgPSBwZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlLmtleTsKKyAgICAgICAgaWYgKGF1
dG8mIHJlc291cmNlID0gcGVuZGluZ1N1YnN0aXR1dGVSZXNvdXJjZS52YWx1ZSkKICAgICAgICAg
ICAgIHJlc291cmNlLT5kZWxpdmVyKCpsb2FkZXIpOwogICAgICAgICBlbHNlIHsKICAgICAgICAg
ICAgIC8vIEEgbnVsbCByZXNvdXJjZSBtZWFucyB0aGF0IHdlIHNob3VsZCBmYWlsIHRoZSBsb2Fk
LgpAQCAtMTI1OCwxMCArMTIwNiwxMiBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpzdWJzdGl0dXRl
UmVzb3VyY2VEZWxpdmVyeVRpbWVyRmlyZWQoKQogfQogCiAjaWZuZGVmIE5ERUJVRworCiBib29s
IERvY3VtZW50TG9hZGVyOjppc1N1YnN0aXR1dGVMb2FkUGVuZGluZyhSZXNvdXJjZUxvYWRlciog
bG9hZGVyKSBjb25zdAogewogICAgIHJldHVybiBtX3BlbmRpbmdTdWJzdGl0dXRlUmVzb3VyY2Vz
LmNvbnRhaW5zKGxvYWRlcik7CiB9CisKICNlbmRpZgogCiB2b2lkIERvY3VtZW50TG9hZGVyOjpj
YW5jZWxQZW5kaW5nU3Vic3RpdHV0ZUxvYWQoUmVzb3VyY2VMb2FkZXIqIGxvYWRlcikKQEAgLTEy
NzQsOSArMTIyNCwxMCBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpjYW5jZWxQZW5kaW5nU3Vic3Rp
dHV0ZUxvYWQoUmVzb3VyY2VMb2FkZXIqIGxvYWRlcikKIH0KIAogI2lmIEVOQUJMRShXRUJfQVJD
SElWRSkgfHwgRU5BQkxFKE1IVE1MKQorCiBib29sIERvY3VtZW50TG9hZGVyOjpzY2hlZHVsZUFy
Y2hpdmVMb2FkKFJlc291cmNlTG9hZGVyJiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYg
cmVxdWVzdCkKIHsKLSAgICBpZiAoQXJjaGl2ZVJlc291cmNlKiByZXNvdXJjZSA9IGFyY2hpdmVS
ZXNvdXJjZUZvclVSTChyZXF1ZXN0LnVybCgpKSkgeworICAgIGlmIChhdXRvKiByZXNvdXJjZSA9
IGFyY2hpdmVSZXNvdXJjZUZvclVSTChyZXF1ZXN0LnVybCgpKSkgewogICAgICAgICBzY2hlZHVs
ZVN1YnN0aXR1dGVSZXNvdXJjZUxvYWQobG9hZGVyLCAqcmVzb3VyY2UpOwogICAgICAgICByZXR1
cm4gdHJ1ZTsKICAgICB9CkBAIC0xMjg0LDIxICsxMjM1LDE5IEBAIGJvb2wgRG9jdW1lbnRMb2Fk
ZXI6OnNjaGVkdWxlQXJjaGl2ZUxvYWQoUmVzb3VyY2VMb2FkZXImIGxvYWRlciwgY29uc3QgUmVz
b3VyY2VSCiAgICAgaWYgKCFtX2FyY2hpdmUpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAg
IHN3aXRjaCAobV9hcmNoaXZlLT50eXBlKCkpIHsKICNpZiBFTkFCTEUoV0VCX0FSQ0hJVkUpCi0g
ICAgY2FzZSBBcmNoaXZlOjpXZWJBcmNoaXZlOgotICAgICAgICAvLyBXZWJBcmNoaXZlRGVidWdN
b2RlIG1lYW5zIHdlIGZhaWwgbG9hZHMgaW5zdGVhZCBvZiB0cnlpbmcgdG8gZmV0Y2ggdGhlbSBm
cm9tIHRoZSBuZXR3b3JrIGlmIHRoZXkncmUgbm90IGluIHRoZSBhcmNoaXZlLgotICAgICAgICBy
ZXR1cm4gbV9mcmFtZS0+c2V0dGluZ3MoKS53ZWJBcmNoaXZlRGVidWdNb2RlRW5hYmxlZCgpICYm
IEFyY2hpdmVGYWN0b3J5Ojppc0FyY2hpdmVNaW1lVHlwZShyZXNwb25zZU1JTUVUeXBlKCkpOwot
I2VuZGlmCi0jaWYgRU5BQkxFKE1IVE1MKQotICAgIGNhc2UgQXJjaGl2ZTo6TUhUTUw6Ci0gICAg
ICAgIHJldHVybiB0cnVlOyAvLyBBbHdheXMgZmFpbCB0aGUgbG9hZCBmb3IgcmVzb3VyY2VzIG5v
dCBpbmNsdWRlZCBpbiB0aGUgTUhUTUwuCisgICAgLy8gVGhlIGlkZWEgb2YgV2ViQXJjaGl2ZURl
YnVnTW9kZSBpcyB0aGF0IHdlIHNob3VsZCBmYWlsIGluc3RlYWQgb2YgdHJ5aW5nIHRvIGZldGNo
IGZyb20gdGhlIG5ldHdvcmsuCisgICAgLy8gUmV0dXJuaW5nIHRydWUgZW5zdXJlcyB0aGUgY2Fs
bGVyIHdpbGwgbm90IHRyeSB0byBmZXRjaCBmcm9tIHRoZSBuZXR3b3JrLgorICAgIGlmIChtX2Zy
YW1lLT5zZXR0aW5ncygpLndlYkFyY2hpdmVEZWJ1Z01vZGVFbmFibGVkKCkgJiYgcmVzcG9uc2VN
SU1FVHlwZSgpID09ICJhcHBsaWNhdGlvbi94LXdlYmFyY2hpdmUiKQorICAgICAgICByZXR1cm4g
dHJ1ZTsKICNlbmRpZgotICAgIGRlZmF1bHQ6Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICB9
CisKKyAgICAvLyBJZiB3ZSB3YW50IHRvIGxvYWQgZnJvbSB0aGUgYXJjaGl2ZSBvbmx5LCB0aGVu
IHdlIHNob3VsZCBhbHdheXMgcmV0dXJuIHRydWUgc28gdGhhdCB0aGUgY2FsbGVyCisgICAgLy8g
ZG9lcyBub3QgdHJ5IHRvIGZldGNoIGZvcm0gdGhlIG5ldHdvcmsuCisgICAgcmV0dXJuIG1fYXJj
aGl2ZS0+c2hvdWxkTG9hZEZyb21BcmNoaXZlT25seSgpOwogfQotI2VuZGlmIC8vIEVOQUJMRShX
RUJfQVJDSElWRSkKKworI2VuZGlmCiAKIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnNjaGVkdWxlU3Vi
c3RpdHV0ZVJlc291cmNlTG9hZChSZXNvdXJjZUxvYWRlciYgbG9hZGVyLCBTdWJzdGl0dXRlUmVz
b3VyY2UmIHJlc291cmNlKQogewpAQCAtMTMwNiwxMCArMTI1NSwxMCBAQCB2b2lkIERvY3VtZW50
TG9hZGVyOjpzY2hlZHVsZVN1YnN0aXR1dGVSZXNvdXJjZUxvYWQoUmVzb3VyY2VMb2FkZXImIGxv
YWRlciwgU3VicwogICAgIGRlbGl2ZXJTdWJzdGl0dXRlUmVzb3VyY2VzQWZ0ZXJEZWxheSgpOwog
fQogCi12b2lkIERvY3VtZW50TG9hZGVyOjphZGRSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJiByKQordm9pZCBEb2N1bWVudExvYWRlcjo6YWRkUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgaWYgKCFtX3N0b3BSZWNvcmRpbmdSZXNwb25zZXMp
Ci0gICAgICAgIG1fcmVzcG9uc2VzLmFwcGVuZChyKTsKKyAgICAgICAgbV9yZXNwb25zZXMuYXBw
ZW5kKHJlc3BvbnNlKTsKIH0KIAogdm9pZCBEb2N1bWVudExvYWRlcjo6c3RvcFJlY29yZGluZ1Jl
c3BvbnNlcygpCkBAIC0xMzQ0LDIxICsxMjkzLDExIEBAIGJvb2wgRG9jdW1lbnRMb2FkZXI6OnVy
bEZvckhpc3RvcnlSZWZsZWN0c0ZhaWx1cmUoKSBjb25zdAogICAgIHJldHVybiBtX3N1YnN0aXR1
dGVEYXRhLmlzVmFsaWQoKSB8fCBtX3Jlc3BvbnNlLmh0dHBTdGF0dXNDb2RlKCkgPj0gNDAwOwog
fQogCi1jb25zdCBVUkwmIERvY3VtZW50TG9hZGVyOjpvcmlnaW5hbFVSTCgpIGNvbnN0Ci17Ci0g
ICAgcmV0dXJuIG1fb3JpZ2luYWxSZXF1ZXN0Q29weS51cmwoKTsKLX0KLQotY29uc3QgVVJMJiBE
b2N1bWVudExvYWRlcjo6cmVzcG9uc2VVUkwoKSBjb25zdAotewotICAgIHJldHVybiBtX3Jlc3Bv
bnNlLnVybCgpOwotfQotCiBVUkwgRG9jdW1lbnRMb2FkZXI6OmRvY3VtZW50VVJMKCkgY29uc3QK
IHsKICAgICBVUkwgdXJsID0gc3Vic3RpdHV0ZURhdGEoKS5yZXNwb25zZSgpLnVybCgpOwogI2lm
IEVOQUJMRShXRUJfQVJDSElWRSkKLSAgICBpZiAodXJsLmlzRW1wdHkoKSAmJiBtX2FyY2hpdmUg
JiYgbV9hcmNoaXZlLT50eXBlKCkgPT0gQXJjaGl2ZTo6V2ViQXJjaGl2ZSkKKyAgICBpZiAodXJs
LmlzRW1wdHkoKSAmJiBtX2FyY2hpdmUgJiYgbV9hcmNoaXZlLT5zaG91bGRVc2VNYWluUmVzb3Vy
Y2VVUkwoKSkKICAgICAgICAgdXJsID0gbV9hcmNoaXZlLT5tYWluUmVzb3VyY2UoKS0+dXJsKCk7
CiAjZW5kaWYKICAgICBpZiAodXJsLmlzRW1wdHkoKSkKQEAgLTEzNjgsMjggKzEzMDcsMTUgQEAg
VVJMIERvY3VtZW50TG9hZGVyOjpkb2N1bWVudFVSTCgpIGNvbnN0CiAgICAgcmV0dXJuIHVybDsK
IH0KIAotY29uc3QgU3RyaW5nJiBEb2N1bWVudExvYWRlcjo6cmVzcG9uc2VNSU1FVHlwZSgpIGNv
bnN0Ci17Ci0gICAgcmV0dXJuIG1fcmVzcG9uc2UubWltZVR5cGUoKTsKLX0KLQotY29uc3QgU3Ry
aW5nJiBEb2N1bWVudExvYWRlcjo6Y3VycmVudENvbnRlbnRUeXBlKCkgY29uc3QKLXsKLSAgICBy
ZXR1cm4gbV93cml0ZXIubWltZVR5cGUoKTsKLX0KLQogI2lmIFBMQVRGT1JNKElPUykKKwogLy8g
RklYTUU6IFRoaXMgbWV0aG9kIHNlZW1zIHRvIHZpb2xhdGUgdGhlIGVuY2Fwc3VsYXRpb24gb2Yg
dGhpcyBjbGFzcy4KIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnNldFJlc3BvbnNlTUlNRVR5cGUoY29u
c3QgU3RyaW5nJiByZXNwb25zZU1pbWVUeXBlKQogewogICAgIG1fcmVzcG9uc2Uuc2V0TWltZVR5
cGUocmVzcG9uc2VNaW1lVHlwZSk7CiB9Ci0jZW5kaWYKIAotY29uc3QgVVJMJiBEb2N1bWVudExv
YWRlcjo6dW5yZWFjaGFibGVVUkwoKSBjb25zdAotewotICAgIHJldHVybiBtX3N1YnN0aXR1dGVE
YXRhLmZhaWxpbmdVUkwoKTsKLX0KKyNlbmRpZgogCiB2b2lkIERvY3VtZW50TG9hZGVyOjpzZXRE
ZWZlcnNMb2FkaW5nKGJvb2wgZGVmZXJzKQogewpAQCAtMTY4Miw3ICsxNjA4LDcgQEAgdm9pZCBE
b2N1bWVudExvYWRlcjo6Z2V0SWNvbkxvYWREZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5n
JiB1cmxTdHJpbmcpCiAgICAgaWYgKG1faWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrKQogICAgICAg
ICBtX2ljb25Mb2FkRGVjaXNpb25DYWxsYmFjay0+aW52YWxpZGF0ZSgpOwogICAgIG1faWNvbkxv
YWREZWNpc2lvbkNhbGxiYWNrID0gSWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrOjpjcmVhdGUodGhp
cywgaWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrKTsKLSAgICBpY29uRGF0YWJhc2UoKS5sb2FkRGVj
aXNpb25Gb3JJY29uVVJMKHVybFN0cmluZywgbV9pY29uTG9hZERlY2lzaW9uQ2FsbGJhY2spOwor
ICAgIGljb25EYXRhYmFzZSgpLmxvYWREZWNpc2lvbkZvckljb25VUkwodXJsU3RyaW5nLCAqbV9p
Y29uTG9hZERlY2lzaW9uQ2FsbGJhY2spOwogfQogCiB2b2lkIERvY3VtZW50TG9hZGVyOjpjb250
aW51ZUljb25Mb2FkV2l0aERlY2lzaW9uKEljb25Mb2FkRGVjaXNpb24gZGVjaXNpb24pCkBAIC0x
NzAzLDcgKzE2MjksNyBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpnZXRJY29uRGF0YUZvckljb25V
UkwoY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcpCiAgICAgaWYgKG1faWNvbkRhdGFDYWxsYmFjaykK
ICAgICAgICAgbV9pY29uRGF0YUNhbGxiYWNrLT5pbnZhbGlkYXRlKCk7CiAgICAgbV9pY29uRGF0
YUNhbGxiYWNrID0gSWNvbkRhdGFDYWxsYmFjazo6Y3JlYXRlKHRoaXMsIGljb25EYXRhQ2FsbGJh
Y2spOwotICAgIGljb25EYXRhYmFzZSgpLmljb25EYXRhRm9ySWNvblVSTCh1cmxTdHJpbmcsIG1f
aWNvbkRhdGFDYWxsYmFjayk7CisgICAgaWNvbkRhdGFiYXNlKCkuaWNvbkRhdGFGb3JJY29uVVJM
KHVybFN0cmluZywgKm1faWNvbkRhdGFDYWxsYmFjayk7CiB9CiAKIHZvaWQgRG9jdW1lbnRMb2Fk
ZXI6OnN0YXJ0SWNvbkxvYWRpbmcoKQpAQCAtMTc0OSw3ICsxNjc1LDcgQEAgdm9pZCBEb2N1bWVu
dExvYWRlcjo6ZmluaXNoZWRMb2FkaW5nSWNvbihJY29uTG9hZGVyJiBsb2FkZXIsIFNoYXJlZEJ1
ZmZlciogYnVmZmUKIHZvaWQgRG9jdW1lbnRMb2FkZXI6OmRpc3BhdGNoT25sb2FkRXZlbnRzKCkK
IHsKICAgICBtX3dhc09ubG9hZERpc3BhdGNoZWQgPSB0cnVlOwotICAgIGFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KCktPnN0b3BEZWZlcnJpbmdFdmVudHMoKTsKKyAgICBtX2FwcGxpY2F0aW9uQ2FjaGVI
b3N0LT5zdG9wRGVmZXJyaW5nRXZlbnRzKCk7CiB9CiAKIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnNl
dFRyaWdnZXJpbmdBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgYWN0aW9uKQpAQCAtMTc4
OSwyMyArMTcxNSwxOCBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjphZGRQZW5kaW5nQ29udGVudEV4
dGVuc2lvbkRpc3BsYXlOb25lU2VsZWN0b3IoY29uc3QgU3RyaW5nJgogfQogI2VuZGlmCiAKLSNp
ZiBFTkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCi1Db250ZW50RmlsdGVyKiBEb2N1bWVudExvYWRl
cjo6Y29udGVudEZpbHRlcigpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fY29udGVudEZpbHRlci5n
ZXQoKTsKLX0KLSNlbmRpZgotCiBib29sIERvY3VtZW50TG9hZGVyOjppc0Fsd2F5c09uTG9nZ2lu
Z0FsbG93ZWQoKSBjb25zdAogewotICAgIHJldHVybiBtX2ZyYW1lID8gbV9mcmFtZS0+aXNBbHdh
eXNPbkxvZ2dpbmdBbGxvd2VkKCkgOiB0cnVlOworICAgIHJldHVybiAhbV9mcmFtZSB8fCBtX2Zy
YW1lLT5pc0Fsd2F5c09uTG9nZ2luZ0FsbG93ZWQoKTsKIH0KIAogI2lmIFVTRShRVUlDS19MT09L
KQorCiB2b2lkIERvY3VtZW50TG9hZGVyOjpzZXRRdWlja0xvb2tIYW5kbGUoc3RkOjp1bmlxdWVf
cHRyPFF1aWNrTG9va0hhbmRsZT4gcXVpY2tMb29rSGFuZGxlKQogewogICAgIG1fcXVpY2tMb29r
SGFuZGxlID0gV1RGTW92ZShxdWlja0xvb2tIYW5kbGUpOwogfQorCiAjZW5kaWYKIAogfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3Vt
ZW50TG9hZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuaAppbmRl
eCBkNzBiMzliODZmODJjMDcyM2QzMmZhNmU4MTU2NTkyNDg3ZTY2MDkyLi44N2U0ZWI3NjNiYWVh
MWRkNjU4NTM0ZDgyZjk0NzlhZjBjMjg1NWVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvRG9jdW1lbnRMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1l
bnRMb2FkZXIuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAx
NiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYt
MjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIw
MTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKQEAg
LTc2LDggKzc2LDcgQEAgY2xhc3MgU2hhcmVkQnVmZmVyOwogY2xhc3MgU3VicmVzb3VyY2VMb2Fk
ZXI7CiBjbGFzcyBTdWJzdGl0dXRlUmVzb3VyY2U7CiAKLXR5cGVkZWYgSGFzaE1hcDx1bnNpZ25l
ZCBsb25nLCBSZWZQdHI8UmVzb3VyY2VMb2FkZXI+PiBSZXNvdXJjZUxvYWRlck1hcDsKLXR5cGVk
ZWYgVmVjdG9yPFJlc291cmNlUmVzcG9uc2U+IFJlc3BvbnNlVmVjdG9yOwordXNpbmcgUmVzb3Vy
Y2VMb2FkZXJNYXAgPSBIYXNoTWFwPHVuc2lnbmVkIGxvbmcsIFJlZlB0cjxSZXNvdXJjZUxvYWRl
cj4+OwogCiBjbGFzcyBEb2N1bWVudExvYWRlciA6IHB1YmxpYyBSZWZDb3VudGVkPERvY3VtZW50
TG9hZGVyPiwgcHJpdmF0ZSBDYWNoZWRSYXdSZXNvdXJjZUNsaWVudCB7CiAgICAgV1RGX01BS0Vf
RkFTVF9BTExPQ0FURUQ7CkBAIC0xNTAsMTQgKzE0OSwxNSBAQCBwdWJsaWM6CiAjZW5kaWYKIAog
I2lmIEVOQUJMRShXRUJfQVJDSElWRSkgfHwgRU5BQkxFKE1IVE1MKQotICAgIHZvaWQgc2V0QXJj
aGl2ZShQYXNzUmVmUHRyPEFyY2hpdmU+KTsKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGFkZEFs
bEFyY2hpdmVSZXNvdXJjZXMoQXJjaGl2ZSopOworICAgIHZvaWQgc2V0QXJjaGl2ZShSZWY8QXJj
aGl2ZT4mJik7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBhZGRBbGxBcmNoaXZlUmVzb3VyY2Vz
KEFyY2hpdmUmKTsKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGFkZEFyY2hpdmVSZXNvdXJjZShS
ZWY8QXJjaGl2ZVJlc291cmNlPiYmKTsKLSAgICBQYXNzUmVmUHRyPEFyY2hpdmU+IHBvcEFyY2hp
dmVGb3JTdWJmcmFtZShjb25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgY29uc3QgVVJMJik7CisgICAg
UmVmUHRyPEFyY2hpdmU+IHBvcEFyY2hpdmVGb3JTdWJmcmFtZShjb25zdCBTdHJpbmcmIGZyYW1l
TmFtZSwgY29uc3QgVVJMJik7CiAgICAgV0VCQ09SRV9FWFBPUlQgU2hhcmVkQnVmZmVyKiBwYXJz
ZWRBcmNoaXZlRGF0YSgpIGNvbnN0OwogCiAgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBzY2hlZHVs
ZUFyY2hpdmVMb2FkKFJlc291cmNlTG9hZGVyJiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7CiAj
ZW5kaWYKKwogICAgIHZvaWQgc2NoZWR1bGVTdWJzdGl0dXRlUmVzb3VyY2VMb2FkKFJlc291cmNl
TG9hZGVyJiwgU3Vic3RpdHV0ZVJlc291cmNlJik7CiAKICAgICAvLyBSZXR1cm4gdGhlIEFyY2hp
dmVSZXNvdXJjZSBmb3IgdGhlIFVSTCBvbmx5IHdoZW4gbG9hZGluZyBhbiBBcmNoaXZlCkBAIC0x
NjYsOSArMTY2LDEwIEBAIHB1YmxpYzoKICAgICBXRUJDT1JFX0VYUE9SVCBSZWZQdHI8QXJjaGl2
ZVJlc291cmNlPiBtYWluUmVzb3VyY2UoKSBjb25zdDsKIAogICAgIC8vIFJldHVybiBhbiBBcmNo
aXZlUmVzb3VyY2UgZm9yIHRoZSBVUkwsIGVpdGhlciBjcmVhdGluZyBmcm9tIGxpdmUgZGF0YSBv
cgotICAgIC8vIHB1bGxpbmcgZnJvbSB0aGUgQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbgotICAg
IFdFQkNPUkVfRVhQT1JUIFBhc3NSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBzdWJyZXNvdXJjZShj
b25zdCBVUkwmKSBjb25zdDsKLSAgICBXRUJDT1JFX0VYUE9SVCBWZWN0b3I8UmVmUHRyPEFyY2hp
dmVSZXNvdXJjZT4+IHN1YnJlc291cmNlcygpIGNvbnN0OworICAgIC8vIHB1bGxpbmcgZnJvbSB0
aGUgQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi4KKyAgICBXRUJDT1JFX0VYUE9SVCBSZWZQdHI8
QXJjaGl2ZVJlc291cmNlPiBzdWJyZXNvdXJjZShjb25zdCBVUkwmKSBjb25zdDsKKworICAgIFdF
QkNPUkVfRVhQT1JUIFZlY3RvcjxSZWY8QXJjaGl2ZVJlc291cmNlPj4gc3VicmVzb3VyY2VzKCkg
Y29uc3Q7CiAKICNpZm5kZWYgTkRFQlVHCiAgICAgYm9vbCBpc1N1YnN0aXR1dGVMb2FkUGVuZGlu
ZyhSZXNvdXJjZUxvYWRlciopIGNvbnN0OwpAQCAtMTc2LDcgKzE3Nyw3IEBAIHB1YmxpYzoKICAg
ICB2b2lkIGNhbmNlbFBlbmRpbmdTdWJzdGl0dXRlTG9hZChSZXNvdXJjZUxvYWRlciopOyAgIAog
ICAgIAogICAgIHZvaWQgYWRkUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwotICAg
IGNvbnN0IFJlc3BvbnNlVmVjdG9yJiByZXNwb25zZXMoKSBjb25zdCB7IHJldHVybiBtX3Jlc3Bv
bnNlczsgfQorICAgIGNvbnN0IFZlY3RvcjxSZXNvdXJjZVJlc3BvbnNlPiYgcmVzcG9uc2VzKCkg
Y29uc3QgeyByZXR1cm4gbV9yZXNwb25zZXM7IH0KIAogICAgIGNvbnN0IE5hdmlnYXRpb25BY3Rp
b24mIHRyaWdnZXJpbmdBY3Rpb24oKSBjb25zdCB7IHJldHVybiBtX3RyaWdnZXJpbmdBY3Rpb247
IH0KICAgICB2b2lkIHNldFRyaWdnZXJpbmdBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYp
OwpAQCAtMjQwLDE3ICsyNDEsNyBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHNldERlZmVyTWFpblJl
c291cmNlRGF0YUxvYWQoYm9vbCBkZWZlcikgeyBtX2RlZmVyTWFpblJlc291cmNlRGF0YUxvYWQg
PSBkZWZlcjsgfQogICAgIAotICAgIHZvaWQgZGlkVGVsbENsaWVudEFib3V0TG9hZChjb25zdCBT
dHJpbmcmIHVybCkKLSAgICB7IAotI2lmICFQTEFURk9STShDT0NPQSkKLSAgICAgICAgLy8gRG9u
J3QgaW5jbHVkZSBkYXRhIHVybHMgaGVyZSwgYXMgaWYgYSBsb3Qgb2YgZGF0YSBpcyBsb2FkZWQK
LSAgICAgICAgLy8gdGhhdCB3YXksIHdlIGhvbGQgb24gdG8gdGhlIChsYXJnZSkgdXJsIHN0cmlu
ZyBmb3IgdG9vIGxvbmcuCi0gICAgICAgIGlmIChwcm90b2NvbElzKHVybCwgImRhdGEiKSkKLSAg
ICAgICAgICAgIHJldHVybjsKLSNlbmRpZgotICAgICAgICBpZiAoIXVybC5pc0VtcHR5KCkpCi0g
ICAgICAgICAgICBtX3Jlc291cmNlc0NsaWVudEtub3dzQWJvdXQuYWRkKHVybCk7Ci0gICAgfQor
ICAgIHZvaWQgZGlkVGVsbENsaWVudEFib3V0TG9hZChjb25zdCBTdHJpbmcmIHVybCk7CiAgICAg
Ym9vbCBoYXZlVG9sZENsaWVudEFib3V0TG9hZChjb25zdCBTdHJpbmcmIHVybCkgeyByZXR1cm4g
bV9yZXNvdXJjZXNDbGllbnRLbm93c0Fib3V0LmNvbnRhaW5zKHVybCk7IH0KICAgICB2b2lkIHJl
Y29yZE1lbW9yeUNhY2hlTG9hZEZvckZ1dHVyZUNsaWVudE5vdGlmaWNhdGlvbihjb25zdCBSZXNv
dXJjZVJlcXVlc3QmKTsKICAgICB2b2lkIHRha2VNZW1vcnlDYWNoZUxvYWRzRm9yQ2xpZW50Tm90
aWZpY2F0aW9uKFZlY3RvcjxSZXNvdXJjZVJlcXVlc3Q+JiBsb2Fkcyk7CkBAIC0yNTgsMTEgKzI0
OSwxMSBAQCBwdWJsaWM6CiAgICAgTG9hZFRpbWluZyYgdGltaW5nKCkgeyByZXR1cm4gbV9sb2Fk
VGltaW5nOyB9CiAgICAgdm9pZCByZXNldFRpbWluZygpIHsgbV9sb2FkVGltaW5nID0gTG9hZFRp
bWluZygpOyB9CiAKLSAgICAvLyBUaGUgV2ViS2l0IGxheWVyIGNhbGxzIHRoaXMgZnVuY3Rpb24g
d2hlbiBpdCdzIHJlYWR5IGZvciB0aGUgZGF0YSB0bwotICAgIC8vIGFjdHVhbGx5IGJlIGFkZGVk
IHRvIHRoZSBkb2N1bWVudC4KKyAgICAvLyBUaGUgV2ViS2l0IGxheWVyIGNhbGxzIHRoaXMgZnVu
Y3Rpb24gd2hlbiBpdCdzIHJlYWR5IGZvciB0aGUgZGF0YSB0byBhY3R1YWxseSBiZSBhZGRlZCB0
byB0aGUgZG9jdW1lbnQuCiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBjb21taXREYXRhKGNvbnN0
IGNoYXIqIGJ5dGVzLCBzaXplX3QgbGVuZ3RoKTsKIAotICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0
KiBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpIGNvbnN0IHsgcmV0dXJuIG1fYXBwbGljYXRpb25DYWNo
ZUhvc3QuZ2V0KCk7IH0KKyAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdCYgYXBwbGljYXRpb25DYWNo
ZUhvc3QoKSBjb25zdDsKKyAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdCogYXBwbGljYXRpb25DYWNo
ZUhvc3RVbmxlc3NCZWluZ0Rlc3Ryb3llZCgpIGNvbnN0OwogCiAgICAgdm9pZCBjaGVja0xvYWRD
b21wbGV0ZSgpOwogCkBAIC0yOTcsNyArMjg4LDcgQEAgcHJvdGVjdGVkOgogCiAgICAgV0VCQ09S
RV9FWFBPUlQgdmlydHVhbCB2b2lkIGF0dGFjaFRvRnJhbWUoKTsKIAotICAgIGJvb2wgbV9kZWZl
ck1haW5SZXNvdXJjZURhdGFMb2FkOworICAgIGJvb2wgbV9kZWZlck1haW5SZXNvdXJjZURhdGFM
b2FkIHsgdHJ1ZSB9OwogCiBwcml2YXRlOgogICAgIERvY3VtZW50KiBkb2N1bWVudCgpIGNvbnN0
OwpAQCAtMzU4LDcgKzM0OSw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBjYW5jZWxQb2xpY3lDaGVj
a0lmTmVlZGVkKCk7CiAgICAgdm9pZCBiZWNvbWVNYWluUmVzb3VyY2VDbGllbnQoKTsKIAotICAg
IEZyYW1lKiBtX2ZyYW1lOworICAgIEZyYW1lKiBtX2ZyYW1lIHsgbnVsbHB0ciB9OwogICAgIFJl
ZjxDYWNoZWRSZXNvdXJjZUxvYWRlcj4gbV9jYWNoZWRSZXNvdXJjZUxvYWRlcjsKIAogICAgIENh
Y2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFJhd1Jlc291cmNlPiBtX21haW5SZXNvdXJjZTsKQEAg
LTM5MCwxNSArMzgxLDE1IEBAIHByaXZhdGU6CiAgICAgUmVzb3VyY2VFcnJvciBtX21haW5Eb2N1
bWVudEVycm9yOyAgICAKIAogICAgIGJvb2wgbV9vcmlnaW5hbFN1YnN0aXR1dGVEYXRhV2FzVmFs
aWQ7Ci0gICAgYm9vbCBtX2NvbW1pdHRlZDsKLSAgICBib29sIG1faXNTdG9wcGluZzsKLSAgICBi
b29sIG1fZ290Rmlyc3RCeXRlOwotICAgIGJvb2wgbV9pc0NsaWVudFJlZGlyZWN0OwotICAgIGJv
b2wgbV9pc0xvYWRpbmdNdWx0aXBhcnRDb250ZW50OworICAgIGJvb2wgbV9jb21taXR0ZWQgeyBm
YWxzZSB9OworICAgIGJvb2wgbV9pc1N0b3BwaW5nIHsgZmFsc2UgfTsKKyAgICBib29sIG1fZ290
Rmlyc3RCeXRlIHsgZmFsc2UgfTsKKyAgICBib29sIG1faXNDbGllbnRSZWRpcmVjdCB7IGZhbHNl
IH07CisgICAgYm9vbCBtX2lzTG9hZGluZ011bHRpcGFydENvbnRlbnQgeyBmYWxzZSB9OwogCiAg
ICAgLy8gRklYTUU6IERvY3VtZW50OjptX3Byb2Nlc3NpbmdMb2FkRXZlbnQgYW5kIERvY3VtZW50
TG9hZGVyOjptX3dhc09ubG9hZERpc3BhdGNoZWQgYXJlIHJvdWdobHkgdGhlIHNhbWUKICAgICAv
LyBhbmQgc2hvdWxkIGJlIG1lcmdlZC4KLSAgICBib29sIG1fd2FzT25sb2FkRGlzcGF0Y2hlZDsK
KyAgICBib29sIG1fd2FzT25sb2FkRGlzcGF0Y2hlZCB7IGZhbHNlIH07CiAKICAgICBTdHJpbmdX
aXRoRGlyZWN0aW9uIG1fcGFnZVRpdGxlOwogCkBAIC00MTUsOCArNDA2LDggQEAgcHJpdmF0ZToK
ICAgICAvLyBXZSByZXRhaW4gYWxsIHRoZSByZWNlaXZlZCByZXNwb25zZXMgc28gd2UgY2FuIHBs
YXkgYmFjayB0aGUKICAgICAvLyBXZWJSZXNvdXJjZUxvYWREZWxlZ2F0ZSBtZXNzYWdlcyBpZiB0
aGUgaXRlbSBpcyBsb2FkZWQgZnJvbSB0aGUKICAgICAvLyBwYWdlIGNhY2hlLgotICAgIFJlc3Bv
bnNlVmVjdG9yIG1fcmVzcG9uc2VzOwotICAgIGJvb2wgbV9zdG9wUmVjb3JkaW5nUmVzcG9uc2Vz
OworICAgIFZlY3RvcjxSZXNvdXJjZVJlc3BvbnNlPiBtX3Jlc3BvbnNlczsKKyAgICBib29sIG1f
c3RvcFJlY29yZGluZ1Jlc3BvbnNlcyB7IGZhbHNlIH07CiAgICAgCiAgICAgdHlwZWRlZiBIYXNo
TWFwPFJlZlB0cjxSZXNvdXJjZUxvYWRlcj4sIFJlZlB0cjxTdWJzdGl0dXRlUmVzb3VyY2U+PiBT
dWJzdGl0dXRlUmVzb3VyY2VNYXA7CiAgICAgU3Vic3RpdHV0ZVJlc291cmNlTWFwIG1fcGVuZGlu
Z1N1YnN0aXR1dGVSZXNvdXJjZXM7CkBAIC00MzIsMTMgKzQyMywxMyBAQCBwcml2YXRlOgogICAg
IFZlY3RvcjxSZXNvdXJjZVJlcXVlc3Q+IG1fcmVzb3VyY2VzTG9hZGVkRnJvbU1lbW9yeUNhY2hl
Rm9yQ2xpZW50Tm90aWZpY2F0aW9uOwogICAgIAogICAgIFN0cmluZyBtX2NsaWVudFJlZGlyZWN0
U291cmNlRm9ySGlzdG9yeTsKLSAgICBib29sIG1fZGlkQ3JlYXRlR2xvYmFsSGlzdG9yeUVudHJ5
OworICAgIGJvb2wgbV9kaWRDcmVhdGVHbG9iYWxIaXN0b3J5RW50cnkgeyBmYWxzZSB9OwogCi0g
ICAgYm9vbCBtX2xvYWRpbmdNYWluUmVzb3VyY2U7CisgICAgYm9vbCBtX2xvYWRpbmdNYWluUmVz
b3VyY2UgeyBmYWxzZSB9OwogICAgIExvYWRUaW1pbmcgbV9sb2FkVGltaW5nOwogCi0gICAgZG91
YmxlIG1fdGltZU9mTGFzdERhdGFSZWNlaXZlZDsKLSAgICB1bnNpZ25lZCBsb25nIG1faWRlbnRp
ZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXI7CisgICAgZG91YmxlIG1fdGltZU9mTGFz
dERhdGFSZWNlaXZlZCB7IDAgfTsKKyAgICB1bnNpZ25lZCBsb25nIG1faWRlbnRpZmllckZvckxv
YWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgeyAwIH07CiAKICAgICBEb2N1bWVudExvYWRlclRpbWVy
IG1fZGF0YUxvYWRUaW1lcjsKICAgICBib29sIG1fd2FpdGluZ0ZvckNvbnRlbnRQb2xpY3kgeyBm
YWxzZSB9OwpAQCAtNDUyLDcgKzQ0Myw3IEBAIHByaXZhdGU6CiAgICAgSGFzaE1hcDx1aW50NjRf
dCwgTGlua0ljb24+IG1faWNvbnNQZW5kaW5nTG9hZERlY2lzaW9uOwogICAgIEhhc2hNYXA8c3Rk
Ojp1bmlxdWVfcHRyPEljb25Mb2FkZXI+LCB1aW50NjRfdD4gbV9pY29uTG9hZGVyczsKIAotICAg
IGJvb2wgbV9zdWJyZXNvdXJjZUxvYWRlcnNBcmVQYWdlQ2FjaGVBY2NlcHRhYmxlOworICAgIGJv
b2wgbV9zdWJyZXNvdXJjZUxvYWRlcnNBcmVQYWdlQ2FjaGVBY2NlcHRhYmxlIHsgZmFsc2UgfTsK
ICAgICBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5IG1fc2hvdWxkT3BlbkV4dGVybmFsVVJM
c1BvbGljeSB7IFNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3k6OlNob3VsZE5vdEFsbG93IH07
CiAKICAgICBzdGQ6OnVuaXF1ZV9wdHI8QXBwbGljYXRpb25DYWNoZUhvc3Q+IG1fYXBwbGljYXRp
b25DYWNoZUhvc3Q7CkBAIC00ODcsNCArNDc4LDg3IEBAIGlubGluZSB2b2lkIERvY3VtZW50TG9h
ZGVyOjp0YWtlTWVtb3J5Q2FjaGVMb2Fkc0ZvckNsaWVudE5vdGlmaWNhdGlvbihWZWN0b3I8UmVz
CiAgICAgbV9yZXNvdXJjZXNMb2FkZWRGcm9tTWVtb3J5Q2FjaGVGb3JDbGllbnROb3RpZmljYXRp
b24uY2xlYXIoKTsKIH0KIAoraW5saW5lIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgRG9jdW1lbnRM
b2FkZXI6Om9yaWdpbmFsUmVxdWVzdCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fb3JpZ2luYWxS
ZXF1ZXN0OworfQorCitpbmxpbmUgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiBEb2N1bWVudExvYWRl
cjo6b3JpZ2luYWxSZXF1ZXN0Q29weSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fb3JpZ2luYWxS
ZXF1ZXN0Q29weTsKK30KKworaW5saW5lIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgRG9jdW1lbnRM
b2FkZXI6OnJlcXVlc3QoKSBjb25zdAoreworICAgIHJldHVybiBtX3JlcXVlc3Q7Cit9CisKK2lu
bGluZSBSZXNvdXJjZVJlcXVlc3QmIERvY3VtZW50TG9hZGVyOjpyZXF1ZXN0KCkKK3sKKyAgICBy
ZXR1cm4gbV9yZXF1ZXN0OworfQorCitpbmxpbmUgY29uc3QgVVJMJiBEb2N1bWVudExvYWRlcjo6
dXJsKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9yZXF1ZXN0LnVybCgpOworfQorCitpbmxpbmUg
Y29uc3QgVVJMJiBEb2N1bWVudExvYWRlcjo6b3JpZ2luYWxVUkwoKSBjb25zdAoreworICAgIHJl
dHVybiBtX29yaWdpbmFsUmVxdWVzdENvcHkudXJsKCk7Cit9CisKK2lubGluZSBjb25zdCBVUkwm
IERvY3VtZW50TG9hZGVyOjpyZXNwb25zZVVSTCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fcmVz
cG9uc2UudXJsKCk7Cit9CisKK2lubGluZSBjb25zdCBTdHJpbmcmIERvY3VtZW50TG9hZGVyOjpy
ZXNwb25zZU1JTUVUeXBlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9yZXNwb25zZS5taW1lVHlw
ZSgpOworfQorCitpbmxpbmUgY29uc3QgU3RyaW5nJiBEb2N1bWVudExvYWRlcjo6Y3VycmVudENv
bnRlbnRUeXBlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV93cml0ZXIubWltZVR5cGUoKTsKK30K
KworaW5saW5lIGNvbnN0IFVSTCYgRG9jdW1lbnRMb2FkZXI6OnVucmVhY2hhYmxlVVJMKCkgY29u
c3QKK3sKKyAgICByZXR1cm4gbV9zdWJzdGl0dXRlRGF0YS5mYWlsaW5nVVJMKCk7Cit9CisKK2lu
bGluZSBBcHBsaWNhdGlvbkNhY2hlSG9zdCYgRG9jdW1lbnRMb2FkZXI6OmFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KCkgY29uc3QKK3sKKyAgICAvLyBGb3IgYSBzaG9ydCB0aW1lIHdoaWxlIHRoZSBkb2N1
bWVudCBsb2FkZXIgaXMgYmVpbmcgZGVzdHJveWVkLCBtX2FwcGxpY2F0aW9uQ2FjaGVIb3N0IGlz
IG51bGwuCisgICAgLy8gSXQncyBub3QgYWNjZXB0YWJsZSB0byBjYWxsIHRoaXMgZnVuY3Rpb24g
ZHVyaW5nIHRoYXQgdGltZS4KKyAgICBBU1NFUlQobV9hcHBsaWNhdGlvbkNhY2hlSG9zdCk7Cisg
ICAgcmV0dXJuICptX2FwcGxpY2F0aW9uQ2FjaGVIb3N0OworfQorCitpbmxpbmUgQXBwbGljYXRp
b25DYWNoZUhvc3QqIERvY3VtZW50TG9hZGVyOjphcHBsaWNhdGlvbkNhY2hlSG9zdFVubGVzc0Jl
aW5nRGVzdHJveWVkKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9hcHBsaWNhdGlvbkNhY2hlSG9z
dC5nZXQoKTsKK30KKworI2lmIEVOQUJMRShDT05URU5UX0ZJTFRFUklORykKKworaW5saW5lIENv
bnRlbnRGaWx0ZXIqIERvY3VtZW50TG9hZGVyOjpjb250ZW50RmlsdGVyKCkgY29uc3QKK3sKKyAg
ICByZXR1cm4gbV9jb250ZW50RmlsdGVyLmdldCgpOworfQorCisjZW5kaWYKKworaW5saW5lIHZv
aWQgRG9jdW1lbnRMb2FkZXI6OmRpZFRlbGxDbGllbnRBYm91dExvYWQoY29uc3QgU3RyaW5nJiB1
cmwpCit7CisjaWYgIVBMQVRGT1JNKENPQ09BKQorICAgIC8vIERvbid0IGluY2x1ZGUgZGF0YSBV
UkxzIGhlcmUsIGFzIGlmIGEgbG90IG9mIGRhdGEgaXMgbG9hZGVkIHRoYXQgd2F5LCB3ZSBob2xk
IG9uIHRvIHRoZSAobGFyZ2UpIFVSTCBzdHJpbmcgZm9yIHRvbyBsb25nLgorICAgIGlmIChwcm90
b2NvbElzKHVybCwgImRhdGEiKSkKKyAgICAgICAgcmV0dXJuOworI2VuZGlmCisgICAgaWYgKCF1
cmwuaXNFbXB0eSgpKQorICAgICAgICBtX3Jlc291cmNlc0NsaWVudEtub3dzQWJvdXQuYWRkKHVy
bCk7Cit9CisKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVu
dHMuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5jcHAKaW5kZXggZTBm
NmU1YjNlMzRhOGExZThkMzE0OWMwNDJlMWRhMGEzNzNkNGRhOS4uZWVmYzRhYTgzODMxMDQ0NmU5
MjFkNGYxNzI5NTgyZTgyNGM4YTVmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0VtcHR5Q2xpZW50cy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50
cy5jcHAKQEAgLTQ2LDYgKzQ2LDcgQEAKICNpbmNsdWRlICJIVE1MRm9ybUVsZW1lbnQuaCIKICNp
bmNsdWRlICJJblByb2Nlc3NJREJTZXJ2ZXIuaCIKICNpbmNsdWRlICJJbnNwZWN0b3JDbGllbnQu
aCIKKyNpbmNsdWRlICJOZXR3b3JrU3RvcmFnZVNlc3Npb24uaCIKICNpbmNsdWRlICJQYWdlLmgi
CiAjaW5jbHVkZSAiUGFnZUNvbmZpZ3VyYXRpb24uaCIKICNpbmNsdWRlICJQYXltZW50Q29vcmRp
bmF0b3JDbGllbnQuaCIKQEAgLTE3MSw4ICsxNzIsOCBAQCBwcml2YXRlOgogICAgIHZvaWQgcmVx
dWVzdENhbmRpZGF0ZXNGb3JTZWxlY3Rpb24oY29uc3QgVmlzaWJsZVNlbGVjdGlvbiYpIGZpbmFs
IHsgfQogICAgIHZvaWQgaGFuZGxlQWNjZXB0ZWRDYW5kaWRhdGVXaXRoU29mdFNwYWNlcyhUZXh0
Q2hlY2tpbmdSZXN1bHQpIGZpbmFsIHsgfQogCi0gICAgdm9pZCByZWdpc3RlclVuZG9TdGVwKFBh
c3NSZWZQdHI8VW5kb1N0ZXA+KSBmaW5hbDsKLSAgICB2b2lkIHJlZ2lzdGVyUmVkb1N0ZXAoUGFz
c1JlZlB0cjxVbmRvU3RlcD4pIGZpbmFsOworICAgIHZvaWQgcmVnaXN0ZXJVbmRvU3RlcChVbmRv
U3RlcCYpIGZpbmFsOworICAgIHZvaWQgcmVnaXN0ZXJSZWRvU3RlcChVbmRvU3RlcCYpIGZpbmFs
OwogICAgIHZvaWQgY2xlYXJVbmRvUmVkb09wZXJhdGlvbnMoKSBmaW5hbCB7IH0KIAogICAgIGJv
b2wgY2FuQ29weUN1dChGcmFtZSosIGJvb2wgZGVmYXVsdFZhbHVlKSBjb25zdCBmaW5hbCB7IHJl
dHVybiBkZWZhdWx0VmFsdWU7IH0KQEAgLTMzMSwxNCArMzMyLDE0IEBAIGNsYXNzIEVtcHR5RnJh
bWVMb2FkZXJDbGllbnQgZmluYWwgOiBwdWJsaWMgRnJhbWVMb2FkZXJDbGllbnQgewogICAgIHZv
aWQgZGlzcGF0Y2hTaG93KCkgZmluYWwgeyB9CiAKICAgICB2b2lkIGRpc3BhdGNoRGVjaWRlUG9s
aWN5Rm9yUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFJlc291cmNlUmVx
dWVzdCYsIEZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFsIHsgfQotICAgIHZvaWQgZGlzcGF0Y2hE
ZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNv
bnN0IFJlc291cmNlUmVxdWVzdCYsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwgY29uc3QgU3RyaW5n
JiwgRnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7Ci0gICAgdm9pZCBkaXNwYXRjaERlY2lkZVBv
bGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJl
c291cmNlUmVxdWVzdCYsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwgRnJhbWVQb2xpY3lGdW5jdGlv
bikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlv
bihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgRm9ybVN0
YXRlKiwgY29uc3QgU3RyaW5nJiwgRnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7CisgICAgdm9p
ZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdGlv
bkFjdGlvbiYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIEZvcm1TdGF0ZSosIEZyYW1lUG9saWN5
RnVuY3Rpb24pIGZpbmFsOwogICAgIHZvaWQgY2FuY2VsUG9saWN5Q2hlY2soKSBmaW5hbCB7IH0K
IAogICAgIHZvaWQgZGlzcGF0Y2hVbmFibGVUb0ltcGxlbWVudFBvbGljeShjb25zdCBSZXNvdXJj
ZUVycm9yJikgZmluYWwgeyB9CiAKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVu
dChQYXNzUmVmUHRyPEZvcm1TdGF0ZT4pIGZpbmFsOwotICAgIHZvaWQgZGlzcGF0Y2hXaWxsU3Vi
bWl0Rm9ybShQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIEZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFs
OworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJlZjxGb3JtU3RhdGU+JiYp
IGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShGb3JtU3RhdGUmLCBGcmFt
ZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsKIAogICAgIHZvaWQgcmV2ZXJ0VG9Qcm92aXNpb25hbFN0
YXRlKERvY3VtZW50TG9hZGVyKikgZmluYWwgeyB9CiAgICAgdm9pZCBzZXRNYWluRG9jdW1lbnRF
cnJvcihEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlRXJyb3ImKSBmaW5hbCB7IH0KQEAg
LTQxMCwxMCArNDExLDEwIEBAIGNsYXNzIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQgZmluYWwgOiBw
dWJsaWMgRnJhbWVMb2FkZXJDbGllbnQgewogICAgIHZvaWQgZGlkRGlzcGxheUluc2VjdXJlQ29u
dGVudCgpIGZpbmFsIHsgfQogICAgIHZvaWQgZGlkUnVuSW5zZWN1cmVDb250ZW50KFNlY3VyaXR5
T3JpZ2luKiwgY29uc3QgVVJMJikgZmluYWwgeyB9CiAgICAgdm9pZCBkaWREZXRlY3RYU1MoY29u
c3QgVVJMJiwgYm9vbCkgZmluYWwgeyB9Ci0gICAgUmVmUHRyPEZyYW1lPiBjcmVhdGVGcmFtZShj
b25zdCBVUkwmLCBjb25zdCBTdHJpbmcmLCBIVE1MRnJhbWVPd25lckVsZW1lbnQqLCBjb25zdCBT
dHJpbmcmLCBib29sLCBpbnQsIGludCkgZmluYWw7Ci0gICAgUmVmUHRyPFdpZGdldD4gY3JlYXRl
UGx1Z2luKGNvbnN0IEludFNpemUmLCBIVE1MUGx1Z0luRWxlbWVudCosIGNvbnN0IFVSTCYsIGNv
bnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBTdHJpbmcm
LCBib29sKSBmaW5hbDsKKyAgICBSZWZQdHI8RnJhbWU+IGNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYs
IGNvbnN0IFN0cmluZyYsIEhUTUxGcmFtZU93bmVyRWxlbWVudCYsIGNvbnN0IFN0cmluZyYsIGJv
b2wsIGludCwgaW50KSBmaW5hbDsKKyAgICBSZWZQdHI8V2lkZ2V0PiBjcmVhdGVQbHVnaW4oY29u
c3QgSW50U2l6ZSYsIEhUTUxQbHVnSW5FbGVtZW50JiwgY29uc3QgVVJMJiwgY29uc3QgVmVjdG9y
PFN0cmluZz4mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFN0cmluZyYsIGJvb2wpIGZp
bmFsOwogICAgIHZvaWQgcmVjcmVhdGVQbHVnaW4oV2lkZ2V0KikgZmluYWw7Ci0gICAgUGFzc1Jl
ZlB0cjxXaWRnZXQ+IGNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYsIEhUTUxB
cHBsZXRFbGVtZW50KiwgY29uc3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBW
ZWN0b3I8U3RyaW5nPiYpIGZpbmFsOworICAgIFJlZlB0cjxXaWRnZXQ+IGNyZWF0ZUphdmFBcHBs
ZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYsIEhUTUxBcHBsZXRFbGVtZW50JiwgY29uc3QgVVJMJiwg
Y29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYpIGZpbmFsOwogCiAg
ICAgT2JqZWN0Q29udGVudFR5cGUgb2JqZWN0Q29udGVudFR5cGUoY29uc3QgVVJMJiwgY29uc3Qg
U3RyaW5nJikgZmluYWwgeyByZXR1cm4gT2JqZWN0Q29udGVudFR5cGU6Ok5vbmU7IH0KICAgICBT
dHJpbmcgb3ZlcnJpZGVNZWRpYVR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiB7IH07IH0KQEAg
LTQzMiwxNiArNDMzLDM3IEBAIGNsYXNzIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQgZmluYWwgOiBw
dWJsaWMgRnJhbWVMb2FkZXJDbGllbnQgewogICAgIGJvb2wgc2hvdWxkQ2FjaGVSZXNwb25zZShE
b2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBj
b25zdCB1bnNpZ25lZCBjaGFyKiwgdW5zaWduZWQgbG9uZyBsb25nKSBmaW5hbCB7IHJldHVybiB0
cnVlOyB9CiAjZW5kaWYKIAotICAgIFBhc3NSZWZQdHI8RnJhbWVOZXR3b3JraW5nQ29udGV4dD4g
Y3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKSBmaW5hbDsKKyAgICBSZWY8RnJhbWVOZXR3b3JraW5n
Q29udGV4dD4gY3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKSBmaW5hbDsKIAogI2lmIEVOQUJMRShS
RVFVRVNUX0FVVE9DT01QTEVURSkKLSAgICB2b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxldGUoUGFz
c1JlZlB0cjxGb3JtU3RhdGU+KSBmaW5hbCB7IH0KKyAgICB2b2lkIGRpZFJlcXVlc3RBdXRvY29t
cGxldGUoUmVmPEZvcm1TdGF0ZT4mJikgZmluYWwgeyB9CiAjZW5kaWYKIAogICAgIGJvb2wgaXNF
bXB0eUZyYW1lTG9hZGVyQ2xpZW50KCkgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQogICAgIHZvaWQg
cHJlZmV0Y2hETlMoY29uc3QgU3RyaW5nJikgZmluYWwgeyB9CiB9OwogCitjbGFzcyBFbXB0eUZy
YW1lTmV0d29ya2luZ0NvbnRleHQgZmluYWwgOiBwdWJsaWMgRnJhbWVOZXR3b3JraW5nQ29udGV4
dCB7CitwdWJsaWM6CisgICAgc3RhdGljIFJlZjxFbXB0eUZyYW1lTmV0d29ya2luZ0NvbnRleHQ+
IGNyZWF0ZSgpIHsgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRW1wdHlGcmFtZU5ldHdvcmtpbmdDb250
ZXh0KTsgfQorCitwcml2YXRlOgorICAgIEVtcHR5RnJhbWVOZXR3b3JraW5nQ29udGV4dCgpOwor
CisgICAgYm9vbCBzaG91bGRDbGVhclJlZmVycmVyT25IVFRQU1RvSFRUUFJlZGlyZWN0KCkgY29u
c3QgeyByZXR1cm4gdHJ1ZTsgfQorICAgIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgc3RvcmFnZVNl
c3Npb24oKSBjb25zdCBmaW5hbCB7IHJldHVybiBOZXR3b3JrU3RvcmFnZVNlc3Npb246OmRlZmF1
bHRTdG9yYWdlU2Vzc2lvbigpOyB9CisKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICBib29sIGxv
Y2FsRmlsZUNvbnRlbnRTbmlmZmluZ0VuYWJsZWQoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQor
ICAgIFNjaGVkdWxlUGFpckhhc2hTZXQqIHNjaGVkdWxlZFJ1bkxvb3BQYWlycygpIGNvbnN0IHsg
cmV0dXJuIG51bGxwdHI7IH0KKyAgICBSZXRhaW5QdHI8Q0ZEYXRhUmVmPiBzb3VyY2VBcHBsaWNh
dGlvbkF1ZGl0RGF0YSgpIGNvbnN0IHsgcmV0dXJuIG51bGxwdHI7IH07CisjZW5kaWYKKworI2lm
IFBMQVRGT1JNKENPQ09BKSB8fCBQTEFURk9STShXSU4pCisgICAgUmVzb3VyY2VFcnJvciBibG9j
a2VkRXJyb3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JikgY29uc3QgZmluYWwgeyByZXR1cm4geyB9
OyB9CisjZW5kaWYKK307CisKIGNsYXNzIEVtcHR5SW5zcGVjdG9yQ2xpZW50IGZpbmFsIDogcHVi
bGljIEluc3BlY3RvckNsaWVudCB7CiAgICAgdm9pZCBpbnNwZWN0ZWRQYWdlRGVzdHJveWVkKCkg
ZmluYWwgeyB9CiAgICAgSW5zcGVjdG9yOjpGcm9udGVuZENoYW5uZWwqIG9wZW5Mb2NhbEZyb250
ZW5kKEluc3BlY3RvckNvbnRyb2xsZXIqKSBmaW5hbCB7IHJldHVybiBudWxscHRyOyB9CkBAIC01
NjksMjMgKzU5MSwyMyBAQCBzdGQ6OnVuaXF1ZV9wdHI8Q29sb3JDaG9vc2VyPiBFbXB0eUNocm9t
ZUNsaWVudDo6Y3JlYXRlQ29sb3JDaG9vc2VyKENvbG9yQ2hvb3NlcgogCiAjZW5kaWYKIAotdm9p
ZCBFbXB0eUNocm9tZUNsaWVudDo6cnVuT3BlblBhbmVsKEZyYW1lKiwgUGFzc1JlZlB0cjxGaWxl
Q2hvb3Nlcj4pCit2b2lkIEVtcHR5Q2hyb21lQ2xpZW50OjpydW5PcGVuUGFuZWwoRnJhbWUmLCBG
aWxlQ2hvb3NlciYpCiB7CiB9CiAKLXZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0
Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYs
IGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwgY29uc3QgU3Ry
aW5nJiwgRnJhbWVQb2xpY3lGdW5jdGlvbikKK3ZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFj
dGlvbiYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIEZvcm1TdGF0ZSosIGNvbnN0IFN0cmluZyYs
IEZyYW1lUG9saWN5RnVuY3Rpb24pCiB7CiB9CiAKLXZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVu
dDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5hdmlnYXRp
b25BY3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4s
IEZyYW1lUG9saWN5RnVuY3Rpb24pCit2b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3Bh
dGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9u
JiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgRm9ybVN0YXRlKiwgRnJhbWVQb2xpY3lGdW5jdGlv
bikKIHsKIH0KIAotdm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5k
U3VibWl0RXZlbnQoUGFzc1JlZlB0cjxGb3JtU3RhdGU+KQordm9pZCBFbXB0eUZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoUmVmPEZvcm1TdGF0ZT4mJikKIHsK
IH0KIAotdm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTdWJtaXRGb3Jt
KFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwgRnJhbWVQb2xpY3lGdW5jdGlvbikKK3ZvaWQgRW1wdHlG
cmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShGb3JtU3RhdGUmLCBGcmFt
ZVBvbGljeUZ1bmN0aW9uKQogewogfQogCkBAIC01OTQsMTIgKzYxNiwxMiBAQCBSZWY8RG9jdW1l
bnRMb2FkZXI+IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZURvY3VtZW50TG9hZGVyKGNv
bnN0IFJlc291cmNlUgogICAgIHJldHVybiBEb2N1bWVudExvYWRlcjo6Y3JlYXRlKHJlcXVlc3Qs
IHN1YnN0aXR1dGVEYXRhKTsKIH0KIAotUmVmUHRyPEZyYW1lPiBFbXB0eUZyYW1lTG9hZGVyQ2xp
ZW50OjpjcmVhdGVGcmFtZShjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmLCBIVE1MRnJhbWVPd25l
ckVsZW1lbnQqLCBjb25zdCBTdHJpbmcmLCBib29sLCBpbnQsIGludCkKK1JlZlB0cjxGcmFtZT4g
RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlRnJhbWUoY29uc3QgVVJMJiwgY29uc3QgU3Ry
aW5nJiwgSFRNTEZyYW1lT3duZXJFbGVtZW50JiwgY29uc3QgU3RyaW5nJiwgYm9vbCwgaW50LCBp
bnQpCiB7CiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLVJlZlB0cjxXaWRnZXQ+IEVtcHR5RnJh
bWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiwgSFRNTFBsdWdJbkVs
ZW1lbnQqLCBjb25zdCBVUkwmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFZlY3RvcjxT
dHJpbmc+JiwgY29uc3QgU3RyaW5nJiwgYm9vbCkKK1JlZlB0cjxXaWRnZXQ+IEVtcHR5RnJhbWVM
b2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiwgSFRNTFBsdWdJbkVsZW1l
bnQmLCBjb25zdCBVUkwmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFZlY3RvcjxTdHJp
bmc+JiwgY29uc3QgU3RyaW5nJiwgYm9vbCkKIHsKICAgICByZXR1cm4gbnVsbHB0cjsKIH0KQEAg
LTYwOCwyNSArNjMwLDMwIEBAIHZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6cmVjcmVhdGVQ
bHVnaW4oV2lkZ2V0KikKIHsKIH0KIAotUGFzc1JlZlB0cjxXaWRnZXQ+IEVtcHR5RnJhbWVMb2Fk
ZXJDbGllbnQ6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYsIEhUTUxBcHBs
ZXRFbGVtZW50KiwgY29uc3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBWZWN0
b3I8U3RyaW5nPiYpCitSZWZQdHI8V2lkZ2V0PiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpjcmVh
dGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmLCBIVE1MQXBwbGV0RWxlbWVudCYsIGNv
bnN0IFVSTCYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mKQog
ewogICAgIHJldHVybiBudWxscHRyOwogfQogCi1QYXNzUmVmUHRyPEZyYW1lTmV0d29ya2luZ0Nv
bnRleHQ+IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkK
K2lubGluZSBFbXB0eUZyYW1lTmV0d29ya2luZ0NvbnRleHQ6OkVtcHR5RnJhbWVOZXR3b3JraW5n
Q29udGV4dCgpCisgICAgOiBGcmFtZU5ldHdvcmtpbmdDb250ZXh0IHsgbnVsbHB0ciB9Cit7Cit9
CisKK1JlZjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojpj
cmVhdGVOZXR3b3JraW5nQ29udGV4dCgpCiB7Ci0gICAgcmV0dXJuIFBhc3NSZWZQdHI8RnJhbWVO
ZXR3b3JraW5nQ29udGV4dD4oKTsKKyAgICByZXR1cm4gRW1wdHlGcmFtZU5ldHdvcmtpbmdDb250
ZXh0OjpjcmVhdGUoKTsKIH0KIAogdm9pZCBFbXB0eUVkaXRvckNsaWVudDo6RW1wdHlUZXh0Q2hl
Y2tlckNsaWVudDo6cmVxdWVzdENoZWNraW5nT2ZTdHJpbmcoVGV4dENoZWNraW5nUmVxdWVzdCYs
IGNvbnN0IFZpc2libGVTZWxlY3Rpb24mKQogewogfQogCi12b2lkIEVtcHR5RWRpdG9yQ2xpZW50
OjpyZWdpc3RlclVuZG9TdGVwKFBhc3NSZWZQdHI8VW5kb1N0ZXA+KQordm9pZCBFbXB0eUVkaXRv
ckNsaWVudDo6cmVnaXN0ZXJVbmRvU3RlcChVbmRvU3RlcCYpCiB7CiB9CiAKLXZvaWQgRW1wdHlF
ZGl0b3JDbGllbnQ6OnJlZ2lzdGVyUmVkb1N0ZXAoUGFzc1JlZlB0cjxVbmRvU3RlcD4pCit2b2lk
IEVtcHR5RWRpdG9yQ2xpZW50OjpyZWdpc3RlclJlZG9TdGVwKFVuZG9TdGVwJikKIHsKIH0KIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5oIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5oCmluZGV4IDFhMWQ1M2MzNzQwOGFiOTljNjBk
ZjBlMmY3ZDgyYTQxYzFhZWQ2NjkuLjhmMjUyYmE3OTJmNzExOTdkMDkxMDkyNmM4NDBhMjkwODVh
ZDEwMzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmgKQEAgLTEzOCw3ICsxMzgs
NyBAQCBjbGFzcyBFbXB0eUNocm9tZUNsaWVudCA6IHB1YmxpYyBDaHJvbWVDbGllbnQgewogICAg
IHN0ZDo6dW5pcXVlX3B0cjxDb2xvckNob29zZXI+IGNyZWF0ZUNvbG9yQ2hvb3NlcihDb2xvckNo
b29zZXJDbGllbnQqLCBjb25zdCBDb2xvciYpIGZpbmFsOwogI2VuZGlmCiAKLSAgICB2b2lkIHJ1
bk9wZW5QYW5lbChGcmFtZSosIFBhc3NSZWZQdHI8RmlsZUNob29zZXI+KSBmaW5hbDsKKyAgICB2
b2lkIHJ1bk9wZW5QYW5lbChGcmFtZSYsIEZpbGVDaG9vc2VyJikgZmluYWw7CiAgICAgdm9pZCBs
b2FkSWNvbkZvckZpbGVzKGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgRmlsZUljb25Mb2FkZXImKSBm
aW5hbCB7IH0KIAogICAgIHZvaWQgZWxlbWVudERpZEZvY3VzKGNvbnN0IE5vZGUqKSBmaW5hbCB7
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3RhdGUuY3BwIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdGF0ZS5jcHAKaW5kZXggMzUxMGI4MDI1ZGRmYzM1MTYz
OGUwMzA2MDZmYWQ2MDQ1Y2M5NTE5Ni4uNWU4OTZlN2Y4NTJmOTZlMjU0MGVkOGQ0ZDE1MTc2MmI2
YjQwZDkxMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdGF0ZS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdGF0ZS5jcHAKQEAgLTEsNSArMSw1IEBA
CiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA2LCAyMDA5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNi0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMzQsMTcgKzM0
LDE3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotaW5saW5lIEZvcm1TdGF0ZTo6Rm9ybVN0
YXRlKFBhc3NSZWZQdHI8SFRNTEZvcm1FbGVtZW50PiBmb3JtLCBTdHJpbmdQYWlyVmVjdG9yJiB0
ZXh0RmllbGRWYWx1ZXNUb0Fkb3B0LCBQYXNzUmVmUHRyPERvY3VtZW50PiBzb3VyY2VEb2N1bWVu
dCwgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikKK2lubGluZSBG
b3JtU3RhdGU6OkZvcm1TdGF0ZShIVE1MRm9ybUVsZW1lbnQmIGZvcm0sIFN0cmluZ1BhaXJWZWN0
b3ImJiB0ZXh0RmllbGRWYWx1ZXMsIERvY3VtZW50JiBzb3VyY2VEb2N1bWVudCwgRm9ybVN1Ym1p
c3Npb25UcmlnZ2VyIGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikKICAgICA6IG1fZm9ybShmb3JtKQor
ICAgICwgbV90ZXh0RmllbGRWYWx1ZXMoV1RGTW92ZSh0ZXh0RmllbGRWYWx1ZXMpKQogICAgICwg
bV9zb3VyY2VEb2N1bWVudChzb3VyY2VEb2N1bWVudCkKICAgICAsIG1fZm9ybVN1Ym1pc3Npb25U
cmlnZ2VyKGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikKIHsKLSAgICBtX3RleHRGaWVsZFZhbHVlcy5z
d2FwKHRleHRGaWVsZFZhbHVlc1RvQWRvcHQpOwogfQogCi1SZWY8Rm9ybVN0YXRlPiBGb3JtU3Rh
dGU6OmNyZWF0ZShQYXNzUmVmUHRyPEhUTUxGb3JtRWxlbWVudD4gZm9ybSwgU3RyaW5nUGFpclZl
Y3RvciYgdGV4dEZpZWxkVmFsdWVzVG9BZG9wdCwgUGFzc1JlZlB0cjxEb2N1bWVudD4gc291cmNl
RG9jdW1lbnQsIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciBmb3JtU3VibWlzc2lvblRyaWdnZXIpCitS
ZWY8Rm9ybVN0YXRlPiBGb3JtU3RhdGU6OmNyZWF0ZShIVE1MRm9ybUVsZW1lbnQmIGZvcm0sIFN0
cmluZ1BhaXJWZWN0b3ImJiB0ZXh0RmllbGRWYWx1ZXMsIERvY3VtZW50JiBzb3VyY2VEb2N1bWVu
dCwgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikKIHsKLSAgICBy
ZXR1cm4gYWRvcHRSZWYoKm5ldyBGb3JtU3RhdGUoZm9ybSwgdGV4dEZpZWxkVmFsdWVzVG9BZG9w
dCwgc291cmNlRG9jdW1lbnQsIGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikpOworICAgIHJldHVybiBh
ZG9wdFJlZigqbmV3IEZvcm1TdGF0ZShmb3JtLCBXVEZNb3ZlKHRleHRGaWVsZFZhbHVlcyksIHNv
dXJjZURvY3VtZW50LCBmb3JtU3VibWlzc2lvblRyaWdnZXIpKTsKIH0KIAogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdGF0ZS5oIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0Zvcm1TdGF0ZS5oCmluZGV4IDk1MDQwZjljMjhkNDc5M2JiMTVmOGZmMzdhMGI2MjRkMjhi
ZDhjZjcuLjJkZWRkMDliZTUyYjBhZmM5NzAyODNhMTE0Y2NmMDM0ZjdiNjVmYWYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3RhdGUuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvRm9ybVN0YXRlLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChD
KSAyMDA2LCAyMDA5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdo
dCAoQykgMjAwNi0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMjgsMzcgKzI4LDMzIEBACiAKICNwcmFnbWEgb25j
ZQogCi0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZT
dHJpbmcuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi0gICAgY2xhc3MgRG9jdW1lbnQ7Ci0g
ICAgY2xhc3MgSFRNTEZvcm1FbGVtZW50OworY2xhc3MgRG9jdW1lbnQ7CitjbGFzcyBIVE1MRm9y
bUVsZW1lbnQ7CiAKLSAgICBlbnVtIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciB7Ci0gICAgICAgIFN1
Ym1pdHRlZEJ5SmF2YVNjcmlwdCwKLSAgICAgICAgTm90U3VibWl0dGVkQnlKYXZhU2NyaXB0Ci0g
ICAgfTsKLSAgICAKLSAgICB0eXBlZGVmIFZlY3RvcjxzdGQ6OnBhaXI8U3RyaW5nLCBTdHJpbmc+
PiBTdHJpbmdQYWlyVmVjdG9yOworZW51bSBGb3JtU3VibWlzc2lvblRyaWdnZXIgeyBTdWJtaXR0
ZWRCeUphdmFTY3JpcHQsIE5vdFN1Ym1pdHRlZEJ5SmF2YVNjcmlwdCB9OwogCi0gICAgY2xhc3Mg
Rm9ybVN0YXRlIDogcHVibGljIFJlZkNvdW50ZWQ8Rm9ybVN0YXRlPiB7Ci0gICAgcHVibGljOgot
ICAgICAgICBzdGF0aWMgUmVmPEZvcm1TdGF0ZT4gY3JlYXRlKFBhc3NSZWZQdHI8SFRNTEZvcm1F
bGVtZW50PiwgU3RyaW5nUGFpclZlY3RvciYgdGV4dEZpZWxkVmFsdWVzVG9BZG9wdCwgUGFzc1Jl
ZlB0cjxEb2N1bWVudD4sIEZvcm1TdWJtaXNzaW9uVHJpZ2dlcik7Cit1c2luZyBTdHJpbmdQYWly
VmVjdG9yID0gVmVjdG9yPHN0ZDo6cGFpcjxTdHJpbmcsIFN0cmluZz4+OwogCi0gICAgICAgIEhU
TUxGb3JtRWxlbWVudCogZm9ybSgpIGNvbnN0IHsgcmV0dXJuIG1fZm9ybS5nZXQoKTsgfQotICAg
ICAgICBjb25zdCBTdHJpbmdQYWlyVmVjdG9yJiB0ZXh0RmllbGRWYWx1ZXMoKSBjb25zdCB7IHJl
dHVybiBtX3RleHRGaWVsZFZhbHVlczsgfQotICAgICAgICBEb2N1bWVudCogc291cmNlRG9jdW1l
bnQoKSBjb25zdCB7IHJldHVybiBtX3NvdXJjZURvY3VtZW50LmdldCgpOyB9Ci0gICAgICAgIEZv
cm1TdWJtaXNzaW9uVHJpZ2dlciBmb3JtU3VibWlzc2lvblRyaWdnZXIoKSBjb25zdCB7IHJldHVy
biBtX2Zvcm1TdWJtaXNzaW9uVHJpZ2dlcjsgfQorY2xhc3MgRm9ybVN0YXRlIDogcHVibGljIFJl
ZkNvdW50ZWQ8Rm9ybVN0YXRlPiB7CitwdWJsaWM6CisgICAgc3RhdGljIFJlZjxGb3JtU3RhdGU+
IGNyZWF0ZShIVE1MRm9ybUVsZW1lbnQmLCBTdHJpbmdQYWlyVmVjdG9yJiYgdGV4dEZpZWxkVmFs
dWVzLCBEb2N1bWVudCYsIEZvcm1TdWJtaXNzaW9uVHJpZ2dlcik7CiAKLSAgICBwcml2YXRlOgot
ICAgICAgICBGb3JtU3RhdGUoUGFzc1JlZlB0cjxIVE1MRm9ybUVsZW1lbnQ+LCBTdHJpbmdQYWly
VmVjdG9yJiB0ZXh0RmllbGRWYWx1ZXNUb0Fkb3B0LCBQYXNzUmVmUHRyPERvY3VtZW50PiwgRm9y
bVN1Ym1pc3Npb25UcmlnZ2VyKTsKKyAgICBIVE1MRm9ybUVsZW1lbnQmIGZvcm0oKSBjb25zdCB7
IHJldHVybiBtX2Zvcm07IH0KKyAgICBjb25zdCBTdHJpbmdQYWlyVmVjdG9yJiB0ZXh0RmllbGRW
YWx1ZXMoKSBjb25zdCB7IHJldHVybiBtX3RleHRGaWVsZFZhbHVlczsgfQorICAgIERvY3VtZW50
JiBzb3VyY2VEb2N1bWVudCgpIGNvbnN0IHsgcmV0dXJuIG1fc291cmNlRG9jdW1lbnQ7IH0KKyAg
ICBGb3JtU3VibWlzc2lvblRyaWdnZXIgZm9ybVN1Ym1pc3Npb25UcmlnZ2VyKCkgY29uc3QgeyBy
ZXR1cm4gbV9mb3JtU3VibWlzc2lvblRyaWdnZXI7IH0KIAotICAgICAgICBSZWZQdHI8SFRNTEZv
cm1FbGVtZW50PiBtX2Zvcm07Ci0gICAgICAgIFN0cmluZ1BhaXJWZWN0b3IgbV90ZXh0RmllbGRW
YWx1ZXM7Ci0gICAgICAgIFJlZlB0cjxEb2N1bWVudD4gbV9zb3VyY2VEb2N1bWVudDsKLSAgICAg
ICAgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIG1fZm9ybVN1Ym1pc3Npb25UcmlnZ2VyOwotICAgIH07
Citwcml2YXRlOgorICAgIEZvcm1TdGF0ZShIVE1MRm9ybUVsZW1lbnQmLCBTdHJpbmdQYWlyVmVj
dG9yJiYgdGV4dEZpZWxkVmFsdWVzLCBEb2N1bWVudCYsIEZvcm1TdWJtaXNzaW9uVHJpZ2dlcik7
CisKKyAgICBSZWY8SFRNTEZvcm1FbGVtZW50PiBtX2Zvcm07CisgICAgU3RyaW5nUGFpclZlY3Rv
ciBtX3RleHRGaWVsZFZhbHVlczsKKyAgICBSZWY8RG9jdW1lbnQ+IG1fc291cmNlRG9jdW1lbnQ7
CisgICAgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIG1fZm9ybVN1Ym1pc3Npb25UcmlnZ2VyOworfTsK
IAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0Zvcm1TdWJtaXNzaW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3VibWlz
c2lvbi5jcHAKaW5kZXggMjBhYWY0YzRjNzI3YWY2OTJiNzk4ZTI2OTY1ZmI5NDA0Nzg2YzliMi4u
NzcwNzM0M2M1YzIzNzU5Nzk3YmJjYmYwNDE1MzkyMzAzNzlmNzljOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdWJtaXNzaW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvRm9ybVN1Ym1pc3Npb24uY3BwCkBAIC0xMDYsNyArMTA2LDcgQEAgdm9pZCBGb3Jt
U3VibWlzc2lvbjo6QXR0cmlidXRlczo6dXBkYXRlRW5jb2RpbmdUeXBlKGNvbnN0IFN0cmluZyYg
dHlwZSkKIAogRm9ybVN1Ym1pc3Npb246Ok1ldGhvZCBGb3JtU3VibWlzc2lvbjo6QXR0cmlidXRl
czo6cGFyc2VNZXRob2RUeXBlKGNvbnN0IFN0cmluZyYgdHlwZSkKIHsKLSAgICByZXR1cm4gZXF1
YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2UodHlwZSwgInBvc3QiKSA/IEZvcm1TdWJtaXNzaW9u
OjpQb3N0TWV0aG9kIDogRm9ybVN1Ym1pc3Npb246OkdldE1ldGhvZDsKKyAgICByZXR1cm4gZXF1
YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2UodHlwZSwgInBvc3QiKSA/IEZvcm1TdWJtaXNzaW9u
OjpNZXRob2Q6OlBvc3QgOiBGb3JtU3VibWlzc2lvbjo6TWV0aG9kOjpHZXQ7CiB9CiAKIHZvaWQg
Rm9ybVN1Ym1pc3Npb246OkF0dHJpYnV0ZXM6OnVwZGF0ZU1ldGhvZFR5cGUoY29uc3QgU3RyaW5n
JiB0eXBlKQpAQCAtMTE0LDI0ICsxMTQsMTMgQEAgdm9pZCBGb3JtU3VibWlzc2lvbjo6QXR0cmli
dXRlczo6dXBkYXRlTWV0aG9kVHlwZShjb25zdCBTdHJpbmcmIHR5cGUpCiAgICAgbV9tZXRob2Qg
PSBwYXJzZU1ldGhvZFR5cGUodHlwZSk7CiB9CiAKLXZvaWQgRm9ybVN1Ym1pc3Npb246OkF0dHJp
YnV0ZXM6OmNvcHlGcm9tKGNvbnN0IEF0dHJpYnV0ZXMmIG90aGVyKQotewotICAgIG1fbWV0aG9k
ID0gb3RoZXIubV9tZXRob2Q7Ci0gICAgbV9pc011bHRpUGFydEZvcm0gPSBvdGhlci5tX2lzTXVs
dGlQYXJ0Rm9ybTsKLQotICAgIG1fYWN0aW9uID0gb3RoZXIubV9hY3Rpb247Ci0gICAgbV90YXJn
ZXQgPSBvdGhlci5tX3RhcmdldDsKLSAgICBtX2VuY29kaW5nVHlwZSA9IG90aGVyLm1fZW5jb2Rp
bmdUeXBlOwotICAgIG1fYWNjZXB0Q2hhcnNldCA9IG90aGVyLm1fYWNjZXB0Q2hhcnNldDsKLX0K
LQotaW5saW5lIEZvcm1TdWJtaXNzaW9uOjpGb3JtU3VibWlzc2lvbihNZXRob2QgbWV0aG9kLCBj
b25zdCBVUkwmIGFjdGlvbiwgY29uc3QgU3RyaW5nJiB0YXJnZXQsIGNvbnN0IFN0cmluZyYgY29u
dGVudFR5cGUsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiBzdGF0ZSwgUGFzc1JlZlB0cjxGb3JtRGF0
YT4gZGF0YSwgY29uc3QgU3RyaW5nJiBib3VuZGFyeSwgTG9ja0hpc3RvcnkgbG9ja0hpc3Rvcnks
IFBhc3NSZWZQdHI8RXZlbnQ+IGV2ZW50KQoraW5saW5lIEZvcm1TdWJtaXNzaW9uOjpGb3JtU3Vi
bWlzc2lvbihNZXRob2QgbWV0aG9kLCBjb25zdCBVUkwmIGFjdGlvbiwgY29uc3QgU3RyaW5nJiB0
YXJnZXQsIGNvbnN0IFN0cmluZyYgY29udGVudFR5cGUsIFJlZjxGb3JtU3RhdGU+JiYgc3RhdGUs
IFJlZjxGb3JtRGF0YT4mJiBkYXRhLCBjb25zdCBTdHJpbmcmIGJvdW5kYXJ5LCBMb2NrSGlzdG9y
eSBsb2NrSGlzdG9yeSwgRXZlbnQqIGV2ZW50KQogICAgIDogbV9tZXRob2QobWV0aG9kKQogICAg
ICwgbV9hY3Rpb24oYWN0aW9uKQogICAgICwgbV90YXJnZXQodGFyZ2V0KQogICAgICwgbV9jb250
ZW50VHlwZShjb250ZW50VHlwZSkKLSAgICAsIG1fZm9ybVN0YXRlKHN0YXRlKQotICAgICwgbV9m
b3JtRGF0YShkYXRhKQorICAgICwgbV9mb3JtU3RhdGUoV1RGTW92ZShzdGF0ZSkpCisgICAgLCBt
X2Zvcm1EYXRhKFdURk1vdmUoZGF0YSkpCiAgICAgLCBtX2JvdW5kYXJ5KGJvdW5kYXJ5KQogICAg
ICwgbV9sb2NrSGlzdG9yeShsb2NrSGlzdG9yeSkKICAgICAsIG1fZXZlbnQoZXZlbnQpCkBAIC0x
NTUsMTAgKzE0NCw4IEBAIHN0YXRpYyBUZXh0RW5jb2RpbmcgZW5jb2RpbmdGcm9tQWNjZXB0Q2hh
cnNldChjb25zdCBTdHJpbmcmIGFjY2VwdENoYXJzZXQsIERvY3VtCiAgICAgcmV0dXJuIGRvY3Vt
ZW50LnRleHRFbmNvZGluZygpOwogfQogCi1SZWY8Rm9ybVN1Ym1pc3Npb24+IEZvcm1TdWJtaXNz
aW9uOjpjcmVhdGUoSFRNTEZvcm1FbGVtZW50KiBmb3JtLCBjb25zdCBBdHRyaWJ1dGVzJiBhdHRy
aWJ1dGVzLCBQYXNzUmVmUHRyPEV2ZW50PiBldmVudCwgTG9ja0hpc3RvcnkgbG9ja0hpc3Rvcnks
IEZvcm1TdWJtaXNzaW9uVHJpZ2dlciB0cmlnZ2VyKQorUmVmPEZvcm1TdWJtaXNzaW9uPiBGb3Jt
U3VibWlzc2lvbjo6Y3JlYXRlKEhUTUxGb3JtRWxlbWVudCYgZm9ybSwgY29uc3QgQXR0cmlidXRl
cyYgYXR0cmlidXRlcywgRXZlbnQqIGV2ZW50LCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSwgRm9y
bVN1Ym1pc3Npb25UcmlnZ2VyIHRyaWdnZXIpCiB7Ci0gICAgQVNTRVJUKGZvcm0pOwotCiAgICAg
SFRNTEZvcm1Db250cm9sRWxlbWVudCogc3VibWl0QnV0dG9uID0gbnVsbHB0cjsKICAgICBpZiAo
ZXZlbnQgJiYgZXZlbnQtPnRhcmdldCgpKSB7CiAgICAgICAgIGZvciAoTm9kZSogbm9kZSA9IGV2
ZW50LT50YXJnZXQoKS0+dG9Ob2RlKCk7IG5vZGU7IG5vZGUgPSBub2RlLT5wYXJlbnROb2RlKCkp
IHsKQEAgLTE2OSw4ICsxNTYsNyBAQCBSZWY8Rm9ybVN1Ym1pc3Npb24+IEZvcm1TdWJtaXNzaW9u
OjpjcmVhdGUoSFRNTEZvcm1FbGVtZW50KiBmb3JtLCBjb25zdCBBdHRyaWJ1dAogICAgICAgICB9
CiAgICAgfQogCi0gICAgRm9ybVN1Ym1pc3Npb246OkF0dHJpYnV0ZXMgY29waWVkQXR0cmlidXRl
czsKLSAgICBjb3BpZWRBdHRyaWJ1dGVzLmNvcHlGcm9tKGF0dHJpYnV0ZXMpOworICAgIGF1dG8g
Y29waWVkQXR0cmlidXRlcyA9IGF0dHJpYnV0ZXM7CiAgICAgaWYgKHN1Ym1pdEJ1dHRvbikgewog
ICAgICAgICBBdG9taWNTdHJpbmcgYXR0cmlidXRlVmFsdWU7CiAgICAgICAgIGlmICghKGF0dHJp
YnV0ZVZhbHVlID0gc3VibWl0QnV0dG9uLT5hdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9u
KGZvcm1hY3Rpb25BdHRyKSkuaXNOdWxsKCkpCkBAIC0xODMsMTUgKzE2OSwxNSBAQCBSZWY8Rm9y
bVN1Ym1pc3Npb24+IEZvcm1TdWJtaXNzaW9uOjpjcmVhdGUoSFRNTEZvcm1FbGVtZW50KiBmb3Jt
LCBjb25zdCBBdHRyaWJ1dAogICAgICAgICAgICAgY29waWVkQXR0cmlidXRlcy5zZXRUYXJnZXQo
YXR0cmlidXRlVmFsdWUpOwogICAgIH0KICAgICAKLSAgICBEb2N1bWVudCYgZG9jdW1lbnQgPSBm
b3JtLT5kb2N1bWVudCgpOwotICAgIFVSTCBhY3Rpb25VUkwgPSBkb2N1bWVudC5jb21wbGV0ZVVS
TChjb3BpZWRBdHRyaWJ1dGVzLmFjdGlvbigpLmlzRW1wdHkoKSA/IGRvY3VtZW50LnVybCgpLnN0
cmluZygpIDogY29waWVkQXR0cmlidXRlcy5hY3Rpb24oKSk7CisgICAgYXV0byYgZG9jdW1lbnQg
PSBmb3JtLmRvY3VtZW50KCk7CisgICAgYXV0byBhY3Rpb25VUkwgPSBkb2N1bWVudC5jb21wbGV0
ZVVSTChjb3BpZWRBdHRyaWJ1dGVzLmFjdGlvbigpLmlzRW1wdHkoKSA/IGRvY3VtZW50LnVybCgp
LnN0cmluZygpIDogY29waWVkQXR0cmlidXRlcy5hY3Rpb24oKSk7CiAgICAgYm9vbCBpc01haWx0
b0Zvcm0gPSBhY3Rpb25VUkwucHJvdG9jb2xJcygibWFpbHRvIik7CiAgICAgYm9vbCBpc011bHRp
UGFydEZvcm0gPSBmYWxzZTsKLSAgICBTdHJpbmcgZW5jb2RpbmdUeXBlID0gY29waWVkQXR0cmli
dXRlcy5lbmNvZGluZ1R5cGUoKTsKKyAgICBhdXRvIGVuY29kaW5nVHlwZSA9IGNvcGllZEF0dHJp
YnV0ZXMuZW5jb2RpbmdUeXBlKCk7CiAKICAgICBkb2N1bWVudC5jb250ZW50U2VjdXJpdHlQb2xp
Y3koKS0+dXBncmFkZUluc2VjdXJlUmVxdWVzdElmTmVlZGVkKGFjdGlvblVSTCwgQ29udGVudFNl
Y3VyaXR5UG9saWN5OjpJbnNlY3VyZVJlcXVlc3RUeXBlOjpGb3JtU3VibWlzc2lvbik7CiAKLSAg
ICBpZiAoY29waWVkQXR0cmlidXRlcy5tZXRob2QoKSA9PSBQb3N0TWV0aG9kKSB7CisgICAgaWYg
KGNvcGllZEF0dHJpYnV0ZXMubWV0aG9kKCkgPT0gTWV0aG9kOjpQb3N0KSB7CiAgICAgICAgIGlz
TXVsdGlQYXJ0Rm9ybSA9IGNvcGllZEF0dHJpYnV0ZXMuaXNNdWx0aVBhcnRGb3JtKCk7CiAgICAg
ICAgIGlmIChpc011bHRpUGFydEZvcm0gJiYgaXNNYWlsdG9Gb3JtKSB7CiAgICAgICAgICAgICBl
bmNvZGluZ1R5cGUgPSAiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIjsKQEAgLTE5
OSwxOSArMTg1LDE5IEBAIFJlZjxGb3JtU3VibWlzc2lvbj4gRm9ybVN1Ym1pc3Npb246OmNyZWF0
ZShIVE1MRm9ybUVsZW1lbnQqIGZvcm0sIGNvbnN0IEF0dHJpYnV0CiAgICAgICAgIH0KICAgICB9
CiAKLSAgICBUZXh0RW5jb2RpbmcgZGF0YUVuY29kaW5nID0gaXNNYWlsdG9Gb3JtID8gVVRGOEVu
Y29kaW5nKCkgOiBlbmNvZGluZ0Zyb21BY2NlcHRDaGFyc2V0KGNvcGllZEF0dHJpYnV0ZXMuYWNj
ZXB0Q2hhcnNldCgpLCBkb2N1bWVudCk7Ci0gICAgUmVmUHRyPERPTUZvcm1EYXRhPiBkb21Gb3Jt
RGF0YSA9IERPTUZvcm1EYXRhOjpjcmVhdGUoZGF0YUVuY29kaW5nLmVuY29kaW5nRm9yRm9ybVN1
Ym1pc3Npb24oKSk7Ci0gICAgVmVjdG9yPHN0ZDo6cGFpcjxTdHJpbmcsIFN0cmluZz4+IGZvcm1W
YWx1ZXM7CisgICAgYXV0byBkYXRhRW5jb2RpbmcgPSBpc01haWx0b0Zvcm0gPyBVVEY4RW5jb2Rp
bmcoKSA6IGVuY29kaW5nRnJvbUFjY2VwdENoYXJzZXQoY29waWVkQXR0cmlidXRlcy5hY2NlcHRD
aGFyc2V0KCksIGRvY3VtZW50KTsKKyAgICBhdXRvIGRvbUZvcm1EYXRhID0gRE9NRm9ybURhdGE6
OmNyZWF0ZShkYXRhRW5jb2RpbmcuZW5jb2RpbmdGb3JGb3JtU3VibWlzc2lvbigpKTsKKyAgICBT
dHJpbmdQYWlyVmVjdG9yIGZvcm1WYWx1ZXM7CiAKICAgICBib29sIGNvbnRhaW5zUGFzc3dvcmRE
YXRhID0gZmFsc2U7Ci0gICAgZm9yIChhdXRvJiBjb250cm9sIDogZm9ybS0+YXNzb2NpYXRlZEVs
ZW1lbnRzKCkpIHsKLSAgICAgICAgSFRNTEVsZW1lbnQmIGVsZW1lbnQgPSBjb250cm9sLT5hc0hU
TUxFbGVtZW50KCk7CisgICAgZm9yIChhdXRvJiBjb250cm9sIDogZm9ybS5hc3NvY2lhdGVkRWxl
bWVudHMoKSkgeworICAgICAgICBhdXRvJiBlbGVtZW50ID0gY29udHJvbC0+YXNIVE1MRWxlbWVu
dCgpOwogICAgICAgICBpZiAoIWVsZW1lbnQuaXNEaXNhYmxlZEZvcm1Db250cm9sKCkpCi0gICAg
ICAgICAgICBjb250cm9sLT5hcHBlbmRGb3JtRGF0YSgqZG9tRm9ybURhdGEsIGlzTXVsdGlQYXJ0
Rm9ybSk7CisgICAgICAgICAgICBjb250cm9sLT5hcHBlbmRGb3JtRGF0YShkb21Gb3JtRGF0YSwg
aXNNdWx0aVBhcnRGb3JtKTsKICAgICAgICAgaWYgKGlzPEhUTUxJbnB1dEVsZW1lbnQ+KGVsZW1l
bnQpKSB7Ci0gICAgICAgICAgICBIVE1MSW5wdXRFbGVtZW50JiBpbnB1dCA9IGRvd25jYXN0PEhU
TUxJbnB1dEVsZW1lbnQ+KGVsZW1lbnQpOworICAgICAgICAgICAgYXV0byYgaW5wdXQgPSBkb3du
Y2FzdDxIVE1MSW5wdXRFbGVtZW50PihlbGVtZW50KTsKICAgICAgICAgICAgIGlmIChpbnB1dC5p
c1RleHRGaWVsZCgpKSB7Ci0gICAgICAgICAgICAgICAgZm9ybVZhbHVlcy5hcHBlbmQoc3RkOjpw
YWlyPFN0cmluZywgU3RyaW5nPihpbnB1dC5uYW1lKCkuc3RyaW5nKCksIGlucHV0LnZhbHVlKCkp
KTsKKyAgICAgICAgICAgICAgICBmb3JtVmFsdWVzLmFwcGVuZCh7IGlucHV0Lm5hbWUoKS5zdHJp
bmcoKSwgaW5wdXQudmFsdWUoKSB9KTsKICAgICAgICAgICAgICAgICBpbnB1dC5hZGRTZWFyY2hS
ZXN1bHQoKTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGlmIChpbnB1dC5pc1Bhc3N3b3Jk
RmllbGQoKSAmJiAhaW5wdXQudmFsdWUoKS5pc0VtcHR5KCkpCkBAIC0yMjMsMTEgKzIwOSwxMSBA
QCBSZWY8Rm9ybVN1Ym1pc3Npb24+IEZvcm1TdWJtaXNzaW9uOjpjcmVhdGUoSFRNTEZvcm1FbGVt
ZW50KiBmb3JtLCBjb25zdCBBdHRyaWJ1dAogICAgIFN0cmluZyBib3VuZGFyeTsKIAogICAgIGlm
IChpc011bHRpUGFydEZvcm0pIHsKLSAgICAgICAgZm9ybURhdGEgPSBGb3JtRGF0YTo6Y3JlYXRl
TXVsdGlQYXJ0KCooc3RhdGljX2Nhc3Q8Rm9ybURhdGFMaXN0Kj4oZG9tRm9ybURhdGEuZ2V0KCkp
KSwgZG9tRm9ybURhdGEtPmVuY29kaW5nKCksICZkb2N1bWVudCk7CisgICAgICAgIGZvcm1EYXRh
ID0gRm9ybURhdGE6OmNyZWF0ZU11bHRpUGFydChkb21Gb3JtRGF0YSwgZG9tRm9ybURhdGEtPmVu
Y29kaW5nKCksICZkb2N1bWVudCk7CiAgICAgICAgIGJvdW5kYXJ5ID0gZm9ybURhdGEtPmJvdW5k
YXJ5KCkuZGF0YSgpOwogICAgIH0gZWxzZSB7Ci0gICAgICAgIGZvcm1EYXRhID0gRm9ybURhdGE6
OmNyZWF0ZSgqKHN0YXRpY19jYXN0PEZvcm1EYXRhTGlzdCo+KGRvbUZvcm1EYXRhLmdldCgpKSks
IGRvbUZvcm1EYXRhLT5lbmNvZGluZygpLCBhdHRyaWJ1dGVzLm1ldGhvZCgpID09IEdldE1ldGhv
ZCA/IEZvcm1EYXRhOjpGb3JtVVJMRW5jb2RlZCA6IEZvcm1EYXRhOjpwYXJzZUVuY29kaW5nVHlw
ZShlbmNvZGluZ1R5cGUpKTsKLSAgICAgICAgaWYgKGNvcGllZEF0dHJpYnV0ZXMubWV0aG9kKCkg
PT0gUG9zdE1ldGhvZCAmJiBpc01haWx0b0Zvcm0pIHsKKyAgICAgICAgZm9ybURhdGEgPSBGb3Jt
RGF0YTo6Y3JlYXRlKGRvbUZvcm1EYXRhLCBkb21Gb3JtRGF0YS0+ZW5jb2RpbmcoKSwgYXR0cmli
dXRlcy5tZXRob2QoKSA9PSBNZXRob2Q6OkdldCA/IEZvcm1EYXRhOjpGb3JtVVJMRW5jb2RlZCA6
IEZvcm1EYXRhOjpwYXJzZUVuY29kaW5nVHlwZShlbmNvZGluZ1R5cGUpKTsKKyAgICAgICAgaWYg
KGNvcGllZEF0dHJpYnV0ZXMubWV0aG9kKCkgPT0gTWV0aG9kOjpQb3N0ICYmIGlzTWFpbHRvRm9y
bSkgewogICAgICAgICAgICAgLy8gQ29udmVydCB0aGUgZm9ybSBkYXRhIGludG8gYSBzdHJpbmcg
dGhhdCB3ZSBwdXQgaW50byB0aGUgVVJMLgogICAgICAgICAgICAgYXBwZW5kTWFpbHRvUG9zdEZv
cm1EYXRhVG9VUkwoYWN0aW9uVVJMLCAqZm9ybURhdGEsIGVuY29kaW5nVHlwZSk7CiAgICAgICAg
ICAgICBmb3JtRGF0YSA9IEZvcm1EYXRhOjpjcmVhdGUoKTsKQEAgLTIzNiwxNCArMjIyLDE3IEBA
IFJlZjxGb3JtU3VibWlzc2lvbj4gRm9ybVN1Ym1pc3Npb246OmNyZWF0ZShIVE1MRm9ybUVsZW1l
bnQqIGZvcm0sIGNvbnN0IEF0dHJpYnV0CiAKICAgICBmb3JtRGF0YS0+c2V0SWRlbnRpZmllcihn
ZW5lcmF0ZUZvcm1EYXRhSWRlbnRpZmllcigpKTsKICAgICBmb3JtRGF0YS0+c2V0Q29udGFpbnNQ
YXNzd29yZERhdGEoY29udGFpbnNQYXNzd29yZERhdGEpOworCiAgICAgU3RyaW5nIHRhcmdldE9y
QmFzZVRhcmdldCA9IGNvcGllZEF0dHJpYnV0ZXMudGFyZ2V0KCkuaXNFbXB0eSgpID8gZG9jdW1l
bnQuYmFzZVRhcmdldCgpIDogY29waWVkQXR0cmlidXRlcy50YXJnZXQoKTsKLSAgICBhdXRvIGZv
cm1TdGF0ZSA9IEZvcm1TdGF0ZTo6Y3JlYXRlKGZvcm0sIGZvcm1WYWx1ZXMsICZkb2N1bWVudCwg
dHJpZ2dlcik7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRm9ybVN1Ym1pc3Npb24oY29waWVk
QXR0cmlidXRlcy5tZXRob2QoKSwgYWN0aW9uVVJMLCB0YXJnZXRPckJhc2VUYXJnZXQsIGVuY29k
aW5nVHlwZSwgV1RGTW92ZShmb3JtU3RhdGUpLCBXVEZNb3ZlKGZvcm1EYXRhKSwgYm91bmRhcnks
IGxvY2tIaXN0b3J5LCBldmVudCkpOworCisgICAgYXV0byBmb3JtU3RhdGUgPSBGb3JtU3RhdGU6
OmNyZWF0ZShmb3JtLCBXVEZNb3ZlKGZvcm1WYWx1ZXMpLCBkb2N1bWVudCwgdHJpZ2dlcik7CisK
KyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGb3JtU3VibWlzc2lvbihjb3BpZWRBdHRyaWJ1dGVz
Lm1ldGhvZCgpLCBhY3Rpb25VUkwsIHRhcmdldE9yQmFzZVRhcmdldCwgZW5jb2RpbmdUeXBlLCBX
VEZNb3ZlKGZvcm1TdGF0ZSksIGZvcm1EYXRhLnJlbGVhc2VOb25OdWxsKCksIGJvdW5kYXJ5LCBs
b2NrSGlzdG9yeSwgZXZlbnQpKTsKIH0KIAogVVJMIEZvcm1TdWJtaXNzaW9uOjpyZXF1ZXN0VVJM
KCkgY29uc3QKIHsKLSAgICBpZiAobV9tZXRob2QgPT0gRm9ybVN1Ym1pc3Npb246OlBvc3RNZXRo
b2QpCisgICAgaWYgKG1fbWV0aG9kID09IE1ldGhvZDo6UG9zdCkKICAgICAgICAgcmV0dXJuIG1f
YWN0aW9uOwogCiAgICAgVVJMIHJlcXVlc3RVUkwobV9hY3Rpb24pOwpAQCAtMjU5LDcgKzI0OCw3
IEBAIHZvaWQgRm9ybVN1Ym1pc3Npb246OnBvcHVsYXRlRnJhbWVMb2FkUmVxdWVzdChGcmFtZUxv
YWRSZXF1ZXN0JiBmcmFtZVJlcXVlc3QpCiAgICAgaWYgKCFtX3JlZmVycmVyLmlzRW1wdHkoKSkK
ICAgICAgICAgZnJhbWVSZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLnNldEhUVFBSZWZlcnJlciht
X3JlZmVycmVyKTsKIAotICAgIGlmIChtX21ldGhvZCA9PSBGb3JtU3VibWlzc2lvbjo6UG9zdE1l
dGhvZCkgeworICAgIGlmIChtX21ldGhvZCA9PSBNZXRob2Q6OlBvc3QpIHsKICAgICAgICAgZnJh
bWVSZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLnNldEhUVFBNZXRob2QoIlBPU1QiKTsKICAgICAg
ICAgZnJhbWVSZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLnNldEhUVFBCb2R5KG1fZm9ybURhdGEu
Y29weVJlZigpKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdWJt
aXNzaW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN1Ym1pc3Npb24uaAppbmRleCA0
MWIzN2UwNjQyYjE4YTgwZTE2NGYwNTY2YmVmODhkMmQxMGU3ZWY4Li4yNTI0MTJjMGMwMmIzOWJk
OWU4YjQ1MWFjNzUzNWE0NTczNTQ3NmEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvRm9ybVN1Ym1pc3Npb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN1Ym1p
c3Npb24uaApAQCAtMzYsMzEgKzM2LDIxIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xh
c3MgRG9jdW1lbnQ7CiBjbGFzcyBFdmVudDsKIGNsYXNzIEZvcm1EYXRhOworCiBzdHJ1Y3QgRnJh
bWVMb2FkUmVxdWVzdDsKLWNsYXNzIEhUTUxGb3JtRWxlbWVudDsKLWNsYXNzIFRleHRFbmNvZGlu
ZzsKIAogY2xhc3MgRm9ybVN1Ym1pc3Npb24gOiBwdWJsaWMgUmVmQ291bnRlZDxGb3JtU3VibWlz
c2lvbj4gewogcHVibGljOgotICAgIGVudW0gTWV0aG9kIHsgR2V0TWV0aG9kLCBQb3N0TWV0aG9k
IH07CisgICAgZW51bSBjbGFzcyBNZXRob2QgeyBHZXQsIFBvc3QgfTsKIAogICAgIGNsYXNzIEF0
dHJpYnV0ZXMgewotICAgICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShBdHRyaWJ1dGVzKTsKICAg
ICBwdWJsaWM6Ci0gICAgICAgIEF0dHJpYnV0ZXMoKQotICAgICAgICAgICAgOiBtX21ldGhvZChH
ZXRNZXRob2QpCi0gICAgICAgICAgICAsIG1faXNNdWx0aVBhcnRGb3JtKGZhbHNlKQotICAgICAg
ICAgICAgLCBtX2VuY29kaW5nVHlwZSgiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVk
IikKLSAgICAgICAgewotICAgICAgICB9Ci0KICAgICAgICAgTWV0aG9kIG1ldGhvZCgpIGNvbnN0
IHsgcmV0dXJuIG1fbWV0aG9kOyB9CiAgICAgICAgIHN0YXRpYyBNZXRob2QgcGFyc2VNZXRob2RU
eXBlKGNvbnN0IFN0cmluZyYpOwogICAgICAgICB2b2lkIHVwZGF0ZU1ldGhvZFR5cGUoY29uc3Qg
U3RyaW5nJik7Ci0gICAgICAgIHN0YXRpYyBTdHJpbmcgbWV0aG9kU3RyaW5nKE1ldGhvZCBtZXRo
b2QpIHsgcmV0dXJuIG1ldGhvZCA9PSBQb3N0TWV0aG9kID8gInBvc3QiIDogImdldCI7IH0KKyAg
ICAgICAgc3RhdGljIEFTQ0lJTGl0ZXJhbCBtZXRob2RTdHJpbmcoTWV0aG9kIG1ldGhvZCkgeyBy
ZXR1cm4gQVNDSUlMaXRlcmFsIHsgbWV0aG9kID09IE1ldGhvZDo6UG9zdCA/ICJwb3N0IiA6ICJn
ZXQiIH07IH0KIAogICAgICAgICBjb25zdCBTdHJpbmcmIGFjdGlvbigpIGNvbnN0IHsgcmV0dXJu
IG1fYWN0aW9uOyB9CiAgICAgICAgIHZvaWQgcGFyc2VBY3Rpb24oY29uc3QgU3RyaW5nJik7CkBA
IC03Niw1MCArNjYsNDYgQEAgcHVibGljOgogICAgICAgICBjb25zdCBTdHJpbmcmIGFjY2VwdENo
YXJzZXQoKSBjb25zdCB7IHJldHVybiBtX2FjY2VwdENoYXJzZXQ7IH0KICAgICAgICAgdm9pZCBz
ZXRBY2NlcHRDaGFyc2V0KGNvbnN0IFN0cmluZyYgdmFsdWUpIHsgbV9hY2NlcHRDaGFyc2V0ID0g
dmFsdWU7IH0KIAotICAgICAgICB2b2lkIGNvcHlGcm9tKGNvbnN0IEF0dHJpYnV0ZXMmKTsKLQog
ICAgIHByaXZhdGU6Ci0gICAgICAgIE1ldGhvZCBtX21ldGhvZDsKLSAgICAgICAgYm9vbCBtX2lz
TXVsdGlQYXJ0Rm9ybTsKLQorICAgICAgICBNZXRob2QgbV9tZXRob2QgeyBNZXRob2Q6OkdldCB9
OworICAgICAgICBib29sIG1faXNNdWx0aVBhcnRGb3JtIHsgZmFsc2UgfTsKICAgICAgICAgU3Ry
aW5nIG1fYWN0aW9uOwogICAgICAgICBTdHJpbmcgbV90YXJnZXQ7Ci0gICAgICAgIFN0cmluZyBt
X2VuY29kaW5nVHlwZTsKKyAgICAgICAgU3RyaW5nIG1fZW5jb2RpbmdUeXBlIHsgQVNDSUlMaXRl
cmFsIHsgImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIgfSB9OwogICAgICAgICBT
dHJpbmcgbV9hY2NlcHRDaGFyc2V0OwogICAgIH07CiAKLSAgICBzdGF0aWMgUmVmPEZvcm1TdWJt
aXNzaW9uPiBjcmVhdGUoSFRNTEZvcm1FbGVtZW50KiwgY29uc3QgQXR0cmlidXRlcyYsIFBhc3NS
ZWZQdHI8RXZlbnQ+IGV2ZW50LCBMb2NrSGlzdG9yeSwgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyKTsK
KyAgICBzdGF0aWMgUmVmPEZvcm1TdWJtaXNzaW9uPiBjcmVhdGUoSFRNTEZvcm1FbGVtZW50Jiwg
Y29uc3QgQXR0cmlidXRlcyYsIEV2ZW50KiwgTG9ja0hpc3RvcnksIEZvcm1TdWJtaXNzaW9uVHJp
Z2dlcik7CiAKICAgICB2b2lkIHBvcHVsYXRlRnJhbWVMb2FkUmVxdWVzdChGcmFtZUxvYWRSZXF1
ZXN0Jik7Ci0gICAgCiAgICAgVVJMIHJlcXVlc3RVUkwoKSBjb25zdDsKIAogICAgIE1ldGhvZCBt
ZXRob2QoKSBjb25zdCB7IHJldHVybiBtX21ldGhvZDsgfQogICAgIGNvbnN0IFVSTCYgYWN0aW9u
KCkgY29uc3QgeyByZXR1cm4gbV9hY3Rpb247IH0KICAgICBjb25zdCBTdHJpbmcmIHRhcmdldCgp
IGNvbnN0IHsgcmV0dXJuIG1fdGFyZ2V0OyB9Ci0gICAgdm9pZCBjbGVhclRhcmdldCgpIHsgbV90
YXJnZXQgPSBTdHJpbmcoKTsgfQogICAgIGNvbnN0IFN0cmluZyYgY29udGVudFR5cGUoKSBjb25z
dCB7IHJldHVybiBtX2NvbnRlbnRUeXBlOyB9Ci0gICAgRm9ybVN0YXRlKiBzdGF0ZSgpIGNvbnN0
IHsgcmV0dXJuIG1fZm9ybVN0YXRlLmdldCgpOyB9Ci0gICAgRm9ybURhdGEqIGRhdGEoKSBjb25z
dCB7IHJldHVybiBtX2Zvcm1EYXRhLmdldCgpOyB9CisgICAgRm9ybVN0YXRlJiBzdGF0ZSgpIGNv
bnN0IHsgcmV0dXJuIG1fZm9ybVN0YXRlOyB9CisgICAgRm9ybURhdGEmIGRhdGEoKSBjb25zdCB7
IHJldHVybiBtX2Zvcm1EYXRhOyB9CiAgICAgY29uc3QgU3RyaW5nIGJvdW5kYXJ5KCkgY29uc3Qg
eyByZXR1cm4gbV9ib3VuZGFyeTsgfQogICAgIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5KCkgY29u
c3QgeyByZXR1cm4gbV9sb2NrSGlzdG9yeTsgfQogICAgIEV2ZW50KiBldmVudCgpIGNvbnN0IHsg
cmV0dXJuIG1fZXZlbnQuZ2V0KCk7IH0KLQogICAgIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIoKSBj
b25zdCB7IHJldHVybiBtX3JlZmVycmVyOyB9Ci0gICAgdm9pZCBzZXRSZWZlcnJlcihjb25zdCBT
dHJpbmcmIHJlZmVycmVyKSB7IG1fcmVmZXJyZXIgPSByZWZlcnJlcjsgfQogICAgIGNvbnN0IFN0
cmluZyYgb3JpZ2luKCkgY29uc3QgeyByZXR1cm4gbV9vcmlnaW47IH0KKworICAgIHZvaWQgY2xl
YXJUYXJnZXQoKSB7IG1fdGFyZ2V0ID0geyB9OyB9CisgICAgdm9pZCBzZXRSZWZlcnJlcihjb25z
dCBTdHJpbmcmIHJlZmVycmVyKSB7IG1fcmVmZXJyZXIgPSByZWZlcnJlcjsgfQogICAgIHZvaWQg
c2V0T3JpZ2luKGNvbnN0IFN0cmluZyYgb3JpZ2luKSB7IG1fb3JpZ2luID0gb3JpZ2luOyB9CiAK
IHByaXZhdGU6Ci0gICAgRm9ybVN1Ym1pc3Npb24oTWV0aG9kLCBjb25zdCBVUkwmIGFjdGlvbiwg
Y29uc3QgU3RyaW5nJiB0YXJnZXQsIGNvbnN0IFN0cmluZyYgY29udGVudFR5cGUsIFBhc3NSZWZQ
dHI8Rm9ybVN0YXRlPiwgUGFzc1JlZlB0cjxGb3JtRGF0YT4sIGNvbnN0IFN0cmluZyYgYm91bmRh
cnksIExvY2tIaXN0b3J5LCBQYXNzUmVmUHRyPEV2ZW50Pik7CisgICAgRm9ybVN1Ym1pc3Npb24o
TWV0aG9kLCBjb25zdCBVUkwmIGFjdGlvbiwgY29uc3QgU3RyaW5nJiB0YXJnZXQsIGNvbnN0IFN0
cmluZyYgY29udGVudFR5cGUsIFJlZjxGb3JtU3RhdGU+JiYsIFJlZjxGb3JtRGF0YT4mJiwgY29u
c3QgU3RyaW5nJiBib3VuZGFyeSwgTG9ja0hpc3RvcnksIEV2ZW50Kik7CiAKICAgICAvLyBGSVhN
RTogSG9sZCBhbiBpbnN0YW5jZSBvZiBBdHRyaWJ1dGVzIGluc3RlYWQgb2YgaW5kaXZpZHVhbCBt
ZW1iZXJzLgogICAgIE1ldGhvZCBtX21ldGhvZDsKICAgICBVUkwgbV9hY3Rpb247CiAgICAgU3Ry
aW5nIG1fdGFyZ2V0OwogICAgIFN0cmluZyBtX2NvbnRlbnRUeXBlOwotICAgIFJlZlB0cjxGb3Jt
U3RhdGU+IG1fZm9ybVN0YXRlOwotICAgIFJlZlB0cjxGb3JtRGF0YT4gbV9mb3JtRGF0YTsKKyAg
ICBSZWY8Rm9ybVN0YXRlPiBtX2Zvcm1TdGF0ZTsKKyAgICBSZWY8Rm9ybURhdGE+IG1fZm9ybURh
dGE7CiAgICAgU3RyaW5nIG1fYm91bmRhcnk7CiAgICAgTG9ja0hpc3RvcnkgbV9sb2NrSGlzdG9y
eTsKICAgICBSZWZQdHI8RXZlbnQ+IG1fZXZlbnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9h
ZGVyLmNwcAppbmRleCA0Y2ZlYmVmMTFmYmVkMzczODkxMTFiMmIxYjQ0ZjhlNmZkNzQ0MzQzLi5l
NWNjODk1NWQzNmQ0YjA5ODQ0NTc1MjVkNzkxZGRjMjNjYTM5MmI0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9GcmFtZUxvYWRlci5jcHAKQEAgLTM2NiwxNyArMzY2LDE1IEBAIHZvaWQgRnJhbWVMb2Fk
ZXI6OnVybFNlbGVjdGVkKGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmIHBhc3NlZFJlcXVlc3QsIEV2
ZW50KiB0cmlnCiAKIHZvaWQgRnJhbWVMb2FkZXI6OnN1Ym1pdEZvcm0oUmVmPEZvcm1TdWJtaXNz
aW9uPiYmIHN1Ym1pc3Npb24pCiB7Ci0gICAgQVNTRVJUKHN1Ym1pc3Npb24tPm1ldGhvZCgpID09
IEZvcm1TdWJtaXNzaW9uOjpQb3N0TWV0aG9kIHx8IHN1Ym1pc3Npb24tPm1ldGhvZCgpID09IEZv
cm1TdWJtaXNzaW9uOjpHZXRNZXRob2QpOworICAgIEFTU0VSVChzdWJtaXNzaW9uLT5tZXRob2Qo
KSA9PSBGb3JtU3VibWlzc2lvbjo6TWV0aG9kOjpQb3N0IHx8IHN1Ym1pc3Npb24tPm1ldGhvZCgp
ID09IEZvcm1TdWJtaXNzaW9uOjpNZXRob2Q6OkdldCk7CiAKICAgICAvLyBGSVhNRTogRmluZCBh
IGdvb2Qgc3BvdCBmb3IgdGhlc2UuCi0gICAgQVNTRVJUKHN1Ym1pc3Npb24tPmRhdGEoKSk7Ci0g
ICAgQVNTRVJUKHN1Ym1pc3Npb24tPnN0YXRlKCkpOwotICAgIEFTU0VSVCghc3VibWlzc2lvbi0+
c3RhdGUoKS0+c291cmNlRG9jdW1lbnQoKS0+ZnJhbWUoKSB8fCBzdWJtaXNzaW9uLT5zdGF0ZSgp
LT5zb3VyY2VEb2N1bWVudCgpLT5mcmFtZSgpID09ICZtX2ZyYW1lKTsKKyAgICBBU1NFUlQoIXN1
Ym1pc3Npb24tPnN0YXRlKCkuc291cmNlRG9jdW1lbnQoKS5mcmFtZSgpIHx8IHN1Ym1pc3Npb24t
PnN0YXRlKCkuc291cmNlRG9jdW1lbnQoKS5mcmFtZSgpID09ICZtX2ZyYW1lKTsKIAogICAgIGlm
ICghbV9mcmFtZS5wYWdlKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGlmIChzdWJtaXNzaW9u
LT5zdGF0ZSgpLT5zb3VyY2VEb2N1bWVudCgpLT5wYWdlQ2FjaGVTdGF0ZSgpICE9IERvY3VtZW50
OjpOb3RJblBhZ2VDYWNoZSkKKyAgICBpZiAoc3VibWlzc2lvbi0+c3RhdGUoKS5zb3VyY2VEb2N1
bWVudCgpLnBhZ2VDYWNoZVN0YXRlKCkgIT0gRG9jdW1lbnQ6Ok5vdEluUGFnZUNhY2hlKQogICAg
ICAgICByZXR1cm47CiAKICAgICBpZiAoc3VibWlzc2lvbi0+YWN0aW9uKCkuaXNFbXB0eSgpKQpA
QCAtMzk4LDEyICszOTYsMTIgQEAgdm9pZCBGcmFtZUxvYWRlcjo6c3VibWl0Rm9ybShSZWY8Rm9y
bVN1Ym1pc3Npb24+JiYgc3VibWlzc2lvbikKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAg
IEZyYW1lKiB0YXJnZXRGcmFtZSA9IGZpbmRGcmFtZUZvck5hdmlnYXRpb24oc3VibWlzc2lvbi0+
dGFyZ2V0KCksIHN1Ym1pc3Npb24tPnN0YXRlKCktPnNvdXJjZURvY3VtZW50KCkpOworICAgIEZy
YW1lKiB0YXJnZXRGcmFtZSA9IGZpbmRGcmFtZUZvck5hdmlnYXRpb24oc3VibWlzc2lvbi0+dGFy
Z2V0KCksICZzdWJtaXNzaW9uLT5zdGF0ZSgpLnNvdXJjZURvY3VtZW50KCkpOwogICAgIGlmICgh
dGFyZ2V0RnJhbWUpIHsKICAgICAgICAgaWYgKCFET01XaW5kb3c6OmFsbG93UG9wVXAoJm1fZnJh
bWUpICYmICFTY3JpcHRDb250cm9sbGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSkKICAgICAg
ICAgICAgIHJldHVybjsKIAotICAgICAgICAvLyBGSVhNRTogdGFyZ2V0RnJhbWUgY2FuIGJlIDAg
Zm9yIHR3byBkaXN0aW5jdCByZWFzb25zOgorICAgICAgICAvLyBGSVhNRTogdGFyZ2V0RnJhbWUg
Y2FuIGJlIG51bGwgZm9yIHR3byBkaXN0aW5jdCByZWFzb25zOgogICAgICAgICAvLyAxLiBUaGUg
ZnJhbWUgd2FzIG5vdCBmb3VuZCBieSBuYW1lLCBzbyB3ZSBzaG91bGQgdHJ5IG9wZW5pbmcgYSBu
ZXcgd2luZG93LgogICAgICAgICAvLyAyLiBUaGUgZnJhbWUgd2FzIGZvdW5kLCBidXQgbmF2aWdh
dGluZyBpdCB3YXMgbm90IGFsbG93ZWQsIGUuZy4gYnkgSFRNTDUgc2FuZGJveCBvciBieSBvcmln
aW4gY2hlY2tzLgogICAgICAgICAvLyBDb250aW51aW5nIGZvcm0gc3VibWlzc2lvbiBtYWtlcyBu
byBzZW5zZSBpbiB0aGUgbGF0dGVyIGNhc2UuCkBAIC00MzQsNyArNDMyLDcgQEAgdm9pZCBGcmFt
ZUxvYWRlcjo6c3VibWl0Rm9ybShSZWY8Rm9ybVN1Ym1pc3Npb24+JiYgc3VibWlzc2lvbikKICAg
ICAgICAgbV9zdWJtaXR0ZWRGb3JtVVJMID0gc3VibWlzc2lvbi0+cmVxdWVzdFVSTCgpOwogICAg
IH0KIAotICAgIHN1Ym1pc3Npb24tPmRhdGEoKS0+Z2VuZXJhdGVGaWxlcyhtX2ZyYW1lLmRvY3Vt
ZW50KCkpOworICAgIHN1Ym1pc3Npb24tPmRhdGEoKS5nZW5lcmF0ZUZpbGVzKG1fZnJhbWUuZG9j
dW1lbnQoKSk7CiAgICAgc3VibWlzc2lvbi0+c2V0UmVmZXJyZXIob3V0Z29pbmdSZWZlcnJlcigp
KTsKICAgICBzdWJtaXNzaW9uLT5zZXRPcmlnaW4ob3V0Z29pbmdPcmlnaW4oKSk7CiAKQEAgLTY2
MCwyMCArNjU4LDE4IEBAIHZvaWQgRnJhbWVMb2FkZXI6OnJlY2VpdmVkRmlyc3REYXRhKCkKICAg
ICBpZiAoIW1fZG9jdW1lbnRMb2FkZXIpCiAgICAgICAgIHJldHVybjsKIAorICAgIEFTU0VSVCht
X2ZyYW1lLmRvY3VtZW50KCkpOworICAgIGF1dG8mIGRvY3VtZW50ID0gKm1fZnJhbWUuZG9jdW1l
bnQoKTsKKwogICAgIGRvdWJsZSBkZWxheTsKICAgICBTdHJpbmcgdXJsU3RyaW5nOwogICAgIGlm
ICghcGFyc2VIVFRQUmVmcmVzaChtX2RvY3VtZW50TG9hZGVyLT5yZXNwb25zZSgpLmh0dHBIZWFk
ZXJGaWVsZChIVFRQSGVhZGVyTmFtZTo6UmVmcmVzaCksIGRlbGF5LCB1cmxTdHJpbmcpKQogICAg
ICAgICByZXR1cm47Ci0gICAgVVJMIGNvbXBsZXRlZFVSTDsKLSAgICBpZiAodXJsU3RyaW5nLmlz
RW1wdHkoKSkKLSAgICAgICAgY29tcGxldGVkVVJMID0gbV9mcmFtZS5kb2N1bWVudCgpLT51cmwo
KTsKLSAgICBlbHNlCi0gICAgICAgIGNvbXBsZXRlZFVSTCA9IG1fZnJhbWUuZG9jdW1lbnQoKS0+
Y29tcGxldGVVUkwodXJsU3RyaW5nKTsKLQorICAgIGF1dG8gY29tcGxldGVkVVJMID0gdXJsU3Ry
aW5nLmlzRW1wdHkoKSA/IGRvY3VtZW50LnVybCgpIDogZG9jdW1lbnQuY29tcGxldGVVUkwodXJs
U3RyaW5nKTsKICAgICBpZiAoIXByb3RvY29sSXNKYXZhU2NyaXB0KGNvbXBsZXRlZFVSTCkpCi0g
ICAgICAgIG1fZnJhbWUubmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlUmVkaXJlY3QobV9m
cmFtZS5kb2N1bWVudCgpLCBkZWxheSwgY29tcGxldGVkVVJMKTsKKyAgICAgICAgbV9mcmFtZS5u
YXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVSZWRpcmVjdChkb2N1bWVudCwgZGVsYXksIGNv
bXBsZXRlZFVSTCk7CiAgICAgZWxzZSB7Ci0gICAgICAgIFN0cmluZyBtZXNzYWdlID0gIlJlZnVz
ZWQgdG8gcmVmcmVzaCAiICsgbV9mcmFtZS5kb2N1bWVudCgpLT51cmwoKS5zdHJpbmdDZW50ZXJF
bGxpcHNpemVkVG9MZW5ndGgoKSArICIgdG8gYSBqYXZhc2NyaXB0OiBVUkwiOworICAgICAgICBh
dXRvIG1lc3NhZ2UgPSAiUmVmdXNlZCB0byByZWZyZXNoICIgKyBkb2N1bWVudC51cmwoKS5zdHJp
bmdDZW50ZXJFbGxpcHNpemVkVG9MZW5ndGgoKSArICIgdG8gYSBqYXZhc2NyaXB0OiBVUkwiOwog
ICAgICAgICBtX2ZyYW1lLmRvY3VtZW50KCktPmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3Vy
Y2U6OlNlY3VyaXR5LCBNZXNzYWdlTGV2ZWw6OkVycm9yLCBtZXNzYWdlKTsKICAgICB9CiB9CkBA
IC0xMTM5LDcgKzExMzUsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpsb2FkRnJhbWVSZXF1ZXN0KGNv
bnN0IEZyYW1lTG9hZFJlcXVlc3QmIHJlcXVlc3QsIEV2ZW50KiBldmVudAogICAgICAgICB8fCBl
dmVudC0+dGFyZ2V0KCktPnRvTm9kZSgpLT5kb2N1bWVudCgpLnBhZ2VDYWNoZVN0YXRlKCkgPT0g
RG9jdW1lbnQ6Ok5vdEluUGFnZUNhY2hlKTsKIAogICAgIC8vIFByb3RlY3QgZnJhbWUgZnJvbSBn
ZXR0aW5nIGJsb3duIGF3YXkgaW5zaWRlIGRpc3BhdGNoQmVmb3JlTG9hZEV2ZW50IGluIGxvYWRX
aXRoRG9jdW1lbnRMb2FkZXIuCi0gICAgUmVmPEZyYW1lPiBwcm90ZWN0KG1fZnJhbWUpOworICAg
IGF1dG8gcHJvdGVjdEZyYW1lID0gbWFrZVJlZihtX2ZyYW1lKTsKIAogICAgIFVSTCB1cmwgPSBy
ZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLnVybCgpOwogCkBAIC0xMTcyLDcgKzExNjgsNyBAQCB2
b2lkIEZyYW1lTG9hZGVyOjpsb2FkRnJhbWVSZXF1ZXN0KGNvbnN0IEZyYW1lTG9hZFJlcXVlc3Qm
IHJlcXVlc3QsIEV2ZW50KiBldmVudAogCiAgICAgLy8gRklYTUU6IEl0J3MgcG9zc2libGUgdGhp
cyB0YXJnZXRGcmFtZSB3aWxsIG5vdCBiZSB0aGUgc2FtZSBmcmFtZSB0aGF0IHdhcyB0YXJnZXRl
ZCBieSB0aGUgYWN0dWFsCiAgICAgLy8gbG9hZCBpZiBmcmFtZSBuYW1lcyBoYXZlIGNoYW5nZWQu
Ci0gICAgRnJhbWUqIHNvdXJjZUZyYW1lID0gZm9ybVN0YXRlID8gZm9ybVN0YXRlLT5zb3VyY2VE
b2N1bWVudCgpLT5mcmFtZSgpIDogJm1fZnJhbWU7CisgICAgRnJhbWUqIHNvdXJjZUZyYW1lID0g
Zm9ybVN0YXRlID8gZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLmZyYW1lKCkgOiAmbV9mcmFt
ZTsKICAgICBpZiAoIXNvdXJjZUZyYW1lKQogICAgICAgICBzb3VyY2VGcmFtZSA9ICZtX2ZyYW1l
OwogICAgIEZyYW1lKiB0YXJnZXRGcmFtZSA9IHNvdXJjZUZyYW1lLT5sb2FkZXIoKS5maW5kRnJh
bWVGb3JOYXZpZ2F0aW9uKHJlcXVlc3QuZnJhbWVOYW1lKCkpOwpAQCAtMTI1Niw3ICsxMjUyLDcg
QEAgdm9pZCBGcmFtZUxvYWRlcjo6bG9hZFVSTChjb25zdCBGcmFtZUxvYWRSZXF1ZXN0JiBmcmFt
ZUxvYWRSZXF1ZXN0LCBjb25zdCBTdHJpbmcKICAgICAgICAgb2xkRG9jdW1lbnRMb2FkZXItPnNl
dExhc3RDaGVja2VkUmVxdWVzdChSZXNvdXJjZVJlcXVlc3QoKSk7CiAgICAgICAgIHBvbGljeUNo
ZWNrZXIoKS5zdG9wQ2hlY2soKTsKICAgICAgICAgcG9saWN5Q2hlY2tlcigpLnNldExvYWRUeXBl
KG5ld0xvYWRUeXBlKTsKLSAgICAgICAgcG9saWN5Q2hlY2tlcigpLmNoZWNrTmF2aWdhdGlvblBv
bGljeShyZXF1ZXN0LCBmYWxzZSAvKiBkaWRSZWNlaXZlUmVkaXJlY3RSZXNwb25zZSAqLywgb2xk
RG9jdW1lbnRMb2FkZXIuZ2V0KCksIGZvcm1TdGF0ZSwgW3RoaXNdKGNvbnN0IFJlc291cmNlUmVx
dWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiwgYm9vbCBzaG91bGRDb250aW51ZSkgeworICAgICAg
ICBwb2xpY3lDaGVja2VyKCkuY2hlY2tOYXZpZ2F0aW9uUG9saWN5KHJlcXVlc3QsIGZhbHNlIC8q
IGRpZFJlY2VpdmVSZWRpcmVjdFJlc3BvbnNlICovLCBvbGREb2N1bWVudExvYWRlci5nZXQoKSwg
Zm9ybVN0YXRlLCBbdGhpc10gKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0
YXRlKiwgYm9vbCBzaG91bGRDb250aW51ZSkgewogICAgICAgICAgICAgY29udGludWVGcmFnbWVu
dFNjcm9sbEFmdGVyTmF2aWdhdGlvblBvbGljeShyZXF1ZXN0LCBzaG91bGRDb250aW51ZSk7CiAg
ICAgICAgIH0pOwogICAgICAgICByZXR1cm47CkBAIC0xNDUyLDcgKzE0NDgsNyBAQCB2b2lkIEZy
YW1lTG9hZGVyOjpsb2FkV2l0aERvY3VtZW50TG9hZGVyKERvY3VtZW50TG9hZGVyKiBsb2FkZXIs
IEZyYW1lTG9hZFR5cGUgdAogICAgICAgICBvbGREb2N1bWVudExvYWRlci0+c2V0VHJpZ2dlcmlu
Z0FjdGlvbihhY3Rpb24pOwogICAgICAgICBvbGREb2N1bWVudExvYWRlci0+c2V0TGFzdENoZWNr
ZWRSZXF1ZXN0KFJlc291cmNlUmVxdWVzdCgpKTsKICAgICAgICAgcG9saWN5Q2hlY2tlcigpLnN0
b3BDaGVjaygpOwotICAgICAgICBwb2xpY3lDaGVja2VyKCkuY2hlY2tOYXZpZ2F0aW9uUG9saWN5
KGxvYWRlci0+cmVxdWVzdCgpLCBmYWxzZSAvKiBkaWRSZWNlaXZlUmVkaXJlY3RSZXNwb25zZSAq
Lywgb2xkRG9jdW1lbnRMb2FkZXIuZ2V0KCksIGZvcm1TdGF0ZSwgW3RoaXNdKGNvbnN0IFJlc291
cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiwgYm9vbCBzaG91bGRDb250aW51ZSkgewor
ICAgICAgICBwb2xpY3lDaGVja2VyKCkuY2hlY2tOYXZpZ2F0aW9uUG9saWN5KGxvYWRlci0+cmVx
dWVzdCgpLCBmYWxzZSAvKiBkaWRSZWNlaXZlUmVkaXJlY3RSZXNwb25zZSAqLywgb2xkRG9jdW1l
bnRMb2FkZXIuZ2V0KCksIGZvcm1TdGF0ZSwgW3RoaXNdIChjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
IHJlcXVlc3QsIEZvcm1TdGF0ZSosIGJvb2wgc2hvdWxkQ29udGludWUpIHsKICAgICAgICAgICAg
IGNvbnRpbnVlRnJhZ21lbnRTY3JvbGxBZnRlck5hdmlnYXRpb25Qb2xpY3kocmVxdWVzdCwgc2hv
dWxkQ29udGludWUpOwogICAgICAgICB9KTsKICAgICAgICAgcmV0dXJuOwpAQCAtMTQ3OSw3ICsx
NDc1LDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6bG9hZFdpdGhEb2N1bWVudExvYWRlcihEb2N1bWVu
dExvYWRlciogbG9hZGVyLCBGcmFtZUxvYWRUeXBlIHQKICAgICAgICAgfQogICAgIH0KIAotICAg
IHBvbGljeUNoZWNrZXIoKS5jaGVja05hdmlnYXRpb25Qb2xpY3kobG9hZGVyLT5yZXF1ZXN0KCks
IGZhbHNlIC8qIGRpZFJlY2VpdmVSZWRpcmVjdFJlc3BvbnNlICovLCBsb2FkZXIsIGZvcm1TdGF0
ZSwgW3RoaXMsIGFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTF0oY29uc3QgUmVzb3VyY2VSZXF1
ZXN0JiByZXF1ZXN0LCBGb3JtU3RhdGUqIGZvcm1TdGF0ZSwgYm9vbCBzaG91bGRDb250aW51ZSkg
eworICAgIHBvbGljeUNoZWNrZXIoKS5jaGVja05hdmlnYXRpb25Qb2xpY3kobG9hZGVyLT5yZXF1
ZXN0KCksIGZhbHNlIC8qIGRpZFJlY2VpdmVSZWRpcmVjdFJlc3BvbnNlICovLCBsb2FkZXIsIGZv
cm1TdGF0ZSwgW3RoaXMsIGFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTF0gKGNvbnN0IFJlc291
cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIGJvb2wgc2hvdWxkQ29u
dGludWUpIHsKICAgICAgICAgY29udGludWVMb2FkQWZ0ZXJOYXZpZ2F0aW9uUG9saWN5KHJlcXVl
c3QsIGZvcm1TdGF0ZSwgc2hvdWxkQ29udGludWUsIGFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVS
TCk7CiAgICAgfSk7CiB9CkBAIC0yNzExLDcgKzI3MDcsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjps
b2FkUG9zdFJlcXVlc3QoY29uc3QgRnJhbWVMb2FkUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgU3Ry
aW5nJgogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAKLSAgICAgICAgcG9saWN5Q2hl
Y2tlcigpLmNoZWNrTmV3V2luZG93UG9saWN5KGFjdGlvbiwgd29ya2luZ1Jlc291cmNlUmVxdWVz
dCwgV1RGTW92ZShmb3JtU3RhdGUpLCBmcmFtZU5hbWUsIFt0aGlzLCBhbGxvd05hdmlnYXRpb25U
b0ludmFsaWRVUkwsIG9wZW5lclBvbGljeV0oY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0
LCBGb3JtU3RhdGUqIGZvcm1TdGF0ZSwgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IE5h
dmlnYXRpb25BY3Rpb24mIGFjdGlvbiwgYm9vbCBzaG91bGRDb250aW51ZSkgeworICAgICAgICBw
b2xpY3lDaGVja2VyKCkuY2hlY2tOZXdXaW5kb3dQb2xpY3koYWN0aW9uLCB3b3JraW5nUmVzb3Vy
Y2VSZXF1ZXN0LCBXVEZNb3ZlKGZvcm1TdGF0ZSksIGZyYW1lTmFtZSwgW3RoaXMsIGFsbG93TmF2
aWdhdGlvblRvSW52YWxpZFVSTCwgb3BlbmVyUG9saWN5XSAoY29uc3QgUmVzb3VyY2VSZXF1ZXN0
JiByZXF1ZXN0LCBGb3JtU3RhdGUqIGZvcm1TdGF0ZSwgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUs
IGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIGFjdGlvbiwgYm9vbCBzaG91bGRDb250aW51ZSkgewog
ICAgICAgICAgICAgY29udGludWVMb2FkQWZ0ZXJOZXdXaW5kb3dQb2xpY3kocmVxdWVzdCwgZm9y
bVN0YXRlLCBmcmFtZU5hbWUsIGFjdGlvbiwgc2hvdWxkQ29udGludWUsIGFsbG93TmF2aWdhdGlv
blRvSW52YWxpZFVSTCwgb3BlbmVyUG9saWN5KTsKICAgICAgICAgfSk7CiAgICAgICAgIHJldHVy
bjsKQEAgLTI3NjksMTEgKzI3NjUsMTEgQEAgdW5zaWduZWQgbG9uZyBGcmFtZUxvYWRlcjo6bG9h
ZFJlc291cmNlU3luY2hyb25vdXNseShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXUKICAgICBp
ZiAoZXJyb3IuaXNOdWxsKCkpIHsKICAgICAgICAgQVNTRVJUKCFuZXdSZXF1ZXN0LmlzTnVsbCgp
KTsKIAotICAgICAgICBpZiAoIWRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCktPm1heWJlTG9hZFN5bmNocm9ub3VzbHkobmV3UmVxdWVzdCwgZXJyb3IsIHJlc3BvbnNlLCBk
YXRhKSkgeworICAgICAgICBpZiAoIWRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVI
b3N0KCkubWF5YmVMb2FkU3luY2hyb25vdXNseShuZXdSZXF1ZXN0LCBlcnJvciwgcmVzcG9uc2Us
IGRhdGEpKSB7CiAgICAgICAgICAgICBWZWN0b3I8Y2hhcj4gYnVmZmVyOwogICAgICAgICAgICAg
cGxhdGZvcm1TdHJhdGVnaWVzKCktPmxvYWRlclN0cmF0ZWd5KCktPmxvYWRSZXNvdXJjZVN5bmNo
cm9ub3VzbHkobmV0d29ya2luZ0NvbnRleHQoKSwgaWRlbnRpZmllciwgbmV3UmVxdWVzdCwgc3Rv
cmVkQ3JlZGVudGlhbHMsIGNsaWVudENyZWRlbnRpYWxQb2xpY3ksIGVycm9yLCByZXNwb25zZSwg
YnVmZmVyKTsKICAgICAgICAgICAgIGRhdGEgPSBTaGFyZWRCdWZmZXI6OmFkb3B0VmVjdG9yKGJ1
ZmZlcik7Ci0gICAgICAgICAgICBkb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9z
dCgpLT5tYXliZUxvYWRGYWxsYmFja1N5bmNocm9ub3VzbHkobmV3UmVxdWVzdCwgZXJyb3IsIHJl
c3BvbnNlLCBkYXRhKTsKKyAgICAgICAgICAgIGRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9u
Q2FjaGVIb3N0KCkubWF5YmVMb2FkRmFsbGJhY2tTeW5jaHJvbm91c2x5KG5ld1JlcXVlc3QsIGVy
cm9yLCByZXNwb25zZSwgZGF0YSk7CiAgICAgICAgICAgICBSZXNvdXJjZUxvYWRPYnNlcnZlcjo6
c2hhcmVkT2JzZXJ2ZXIoKS5sb2dTdWJyZXNvdXJjZUxvYWRpbmcoJm1fZnJhbWUsIG5ld1JlcXVl
c3QsIHJlc3BvbnNlKTsKICAgICAgICAgfQogICAgIH0KQEAgLTMxMDgsNyArMzEwNCw3IEBAIHZv
aWQgRnJhbWVMb2FkZXI6OmNvbnRpbnVlTG9hZEFmdGVyTmF2aWdhdGlvblBvbGljeShjb25zdCBS
ZXNvdXJjZVJlcXVlc3QmIHJlcXVlCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBtX2Ns
aWVudC5kaXNwYXRjaFdpbGxTdWJtaXRGb3JtKGZvcm1TdGF0ZSwgW3RoaXNdKFBvbGljeUFjdGlv
biBhY3Rpb24pIHsKKyAgICBtX2NsaWVudC5kaXNwYXRjaFdpbGxTdWJtaXRGb3JtKCpmb3JtU3Rh
dGUsIFt0aGlzXSAoUG9saWN5QWN0aW9uIGFjdGlvbikgewogICAgICAgICBwb2xpY3lDaGVja2Vy
KCkuY29udGludWVMb2FkQWZ0ZXJXaWxsU3VibWl0Rm9ybShhY3Rpb24pOwogICAgIH0pOwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50LmggYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaAppbmRleCBkMTNiMGEwNzlk
ZTk5ZjM4NzcwNTUyNDc4YTdmYmIzMjA4OGQ5Y2Y1Li5hODA5NDdiZTdmZGMyMDBlYjBjMjEyMGEz
MGM2ZDk0OTUwNzkxNjhhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVM
b2FkZXJDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXJDbGll
bnQuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNiBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29v
Z2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKQEAgLTE3Nywx
NCArMTc3LDE0IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hTaG93KCkgPSAw
OwogCiAgICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UoY29u
c3QgUmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIEZyYW1lUG9saWN5
RnVuY3Rpb24pID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JO
ZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJlc291cmNlUmVx
dWVzdCYsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIEZy
YW1lUG9saWN5RnVuY3Rpb24pID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hEZWNpZGVQ
b2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBS
ZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIEZyYW1lUG9saWN5RnVuY3Rp
b24pID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5k
b3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYs
IEZvcm1TdGF0ZSosIGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBGcmFtZVBvbGljeUZ1bmN0aW9u
KSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlv
bkFjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jiwg
Rm9ybVN0YXRlKiwgRnJhbWVQb2xpY3lGdW5jdGlvbikgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBj
YW5jZWxQb2xpY3lDaGVjaygpID0gMDsKIAogICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaFVuYWJs
ZVRvSW1wbGVtZW50UG9saWN5KGNvbnN0IFJlc291cmNlRXJyb3ImKSA9IDA7CiAKLSAgICB2aXJ0
dWFsIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFBhc3NSZWZQdHI8Rm9ybVN0YXRl
PikgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKFBhc3NSZWZQ
dHI8Rm9ybVN0YXRlPiwgRnJhbWVQb2xpY3lGdW5jdGlvbikgPSAwOworICAgIHZpcnR1YWwgdm9p
ZCBkaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoUmVmPEZvcm1TdGF0ZT4mJikgPSAwOworICAg
IHZpcnR1YWwgdm9pZCBkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKEZvcm1TdGF0ZSYsIEZyYW1lUG9s
aWN5RnVuY3Rpb24pID0gMDsKIAogICAgIHZpcnR1YWwgdm9pZCByZXZlcnRUb1Byb3Zpc2lvbmFs
U3RhdGUoRG9jdW1lbnRMb2FkZXIqKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNldE1haW5Eb2N1
bWVudEVycm9yKERvY3VtZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VFcnJvciYpID0gMDsKQEAg
LTI3MiwxNCArMjcyLDEyIEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIGJvb2wgY2FuQ2FjaGVQYWdl
KCkgY29uc3QgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBjb252ZXJ0TWFpblJlc291cmNlTG9hZFRv
RG93bmxvYWQoRG9jdW1lbnRMb2FkZXIqLCBTZXNzaW9uSUQsIGNvbnN0IFJlc291cmNlUmVxdWVz
dCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSA9IDA7CiAKLSAgICB2aXJ0dWFsIFJlZlB0cjxG
cmFtZT4gY3JlYXRlRnJhbWUoY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiBuYW1lLCBIVE1MRnJh
bWVPd25lckVsZW1lbnQqLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBib29sIGFsbG93c1Njcm9s
bGluZywgaW50IG1hcmdpbldpZHRoLCBpbnQgbWFyZ2luSGVpZ2h0KSA9IDA7Ci0gICAgdmlydHVh
bCBSZWZQdHI8V2lkZ2V0PiBjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYsIEhUTUxQbHVnSW5F
bGVtZW50KiwgY29uc3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBWZWN0b3I8
U3RyaW5nPiYsIGNvbnN0IFN0cmluZyYsIGJvb2wgbG9hZE1hbnVhbGx5KSA9IDA7CisgICAgdmly
dHVhbCBSZWZQdHI8RnJhbWU+IGNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYg
bmFtZSwgSFRNTEZyYW1lT3duZXJFbGVtZW50JiwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgYm9v
bCBhbGxvd3NTY3JvbGxpbmcsIGludCBtYXJnaW5XaWR0aCwgaW50IG1hcmdpbkhlaWdodCkgPSAw
OworICAgIHZpcnR1YWwgUmVmUHRyPFdpZGdldD4gY3JlYXRlUGx1Z2luKGNvbnN0IEludFNpemUm
LCBIVE1MUGx1Z0luRWxlbWVudCYsIGNvbnN0IFVSTCYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+Jiwg
Y29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBTdHJpbmcmLCBib29sIGxvYWRNYW51YWxseSkg
PSAwOwogICAgIHZpcnR1YWwgdm9pZCByZWNyZWF0ZVBsdWdpbihXaWRnZXQqKSA9IDA7CiAgICAg
dmlydHVhbCB2b2lkIHJlZGlyZWN0RGF0YVRvUGx1Z2luKFdpZGdldCogcGx1Z2luV2lkZ2V0KSA9
IDA7CiAKLSAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8V2lkZ2V0PiBjcmVhdGVKYXZhQXBwbGV0V2lk
Z2V0KGNvbnN0IEludFNpemUmLCBIVE1MQXBwbGV0RWxlbWVudCosIGNvbnN0IFVSTCYgYmFzZVVS
TCwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+
JiBwYXJhbVZhbHVlcykgPSAwOwotCi0gICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoRGlkRmFpbFRv
U3RhcnRQbHVnaW4oY29uc3QgUGx1Z2luVmlld0Jhc2UqKSBjb25zdCB7IH0KKyAgICB2aXJ0dWFs
IFJlZlB0cjxXaWRnZXQ+IGNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYsIEhU
TUxBcHBsZXRFbGVtZW50JiwgY29uc3QgVVJMJiBiYXNlVVJMLCBjb25zdCBWZWN0b3I8U3RyaW5n
PiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKSA9IDA7CiAK
ICAgICB2aXJ0dWFsIE9iamVjdENvbnRlbnRUeXBlIG9iamVjdENvbnRlbnRUeXBlKGNvbnN0IFVS
TCYsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUpID0gMDsKICAgICB2aXJ0dWFsIFN0cmluZyBvdmVy
cmlkZU1lZGlhVHlwZSgpIGNvbnN0ID0gMDsKQEAgLTI5NCw2ICsyOTIsNyBAQCBwdWJsaWM6CiAg
ICAgdmlydHVhbCBOU0NhY2hlZFVSTFJlc3BvbnNlKiB3aWxsQ2FjaGVSZXNwb25zZShEb2N1bWVu
dExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25zZSop
IGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIE5TRGljdGlvbmFyeSAqZGF0YURldGVjdGlvbkNvbnRl
eHQoKSB7IHJldHVybiBudWxscHRyOyB9CiAjZW5kaWYKKwogI2lmIFBMQVRGT1JNKFdJTikgJiYg
VVNFKENGVVJMQ09OTkVDVElPTikKICAgICAvLyBGSVhNRTogV2luZG93cyBzaG91bGQgdXNlIHdp
bGxDYWNoZVJlc3BvbnNlIC0gPGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD01NzI1Nz4uCiAgICAgdmlydHVhbCBib29sIHNob3VsZENhY2hlUmVzcG9uc2UoRG9jdW1lbnRM
b2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
LCBjb25zdCB1bnNpZ25lZCBjaGFyKiBkYXRhLCB1bnNpZ25lZCBsb25nIGxvbmcgbGVuZ3RoKSA9
IDA7CkBAIC0zMDksMTAgKzMwOCwxMCBAQCBwdWJsaWM6CiAgICAgLy8gQ2xpZW50cyB0aGF0IGdl
bmVyYWxseSBkaXNhbGxvdyB1bml2ZXJzYWwgYWNjZXNzIGNhbiBtYWtlIGV4Y2VwdGlvbnMgZm9y
IHBhcnRpY3VsYXIgVVJMcy4KICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkRm9yY2VVbml2ZXJzYWxB
Y2Nlc3NGcm9tTG9jYWxVUkwoY29uc3QgVVJMJikgeyByZXR1cm4gZmFsc2U7IH0KIAotICAgIHZp
cnR1YWwgUGFzc1JlZlB0cjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBjcmVhdGVOZXR3b3JraW5n
Q29udGV4dCgpID0gMDsKKyAgICB2aXJ0dWFsIFJlZjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBj
cmVhdGVOZXR3b3JraW5nQ29udGV4dCgpID0gMDsKIAogI2lmIEVOQUJMRShSRVFVRVNUX0FVVE9D
T01QTEVURSkKLSAgICB2aXJ0dWFsIHZvaWQgZGlkUmVxdWVzdEF1dG9jb21wbGV0ZShQYXNzUmVm
UHRyPEZvcm1TdGF0ZT4pID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZGlkUmVxdWVzdEF1dG9jb21w
bGV0ZShSZWY8Rm9ybVN0YXRlPiYmKSA9IDA7CiAjZW5kaWYKIAogICAgIHZpcnR1YWwgYm9vbCBz
aG91bGRQYWludEJyb2tlbkltYWdlKGNvbnN0IFVSTCYpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9IaXN0b3J5Q29udHJvbGxlci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvSGlzdG9yeUNvbnRyb2xsZXIuY3BwCmluZGV4IDI5NWI5
NGExYTU1NWIyYTI4ZTc1MDM2YzZiMWQwMjU3MDcyOTk3Y2MuLjI2YTRiMzM5NmQxZTg3YTAwNjNl
MGI0YzBjYTA2NjkyMjA0YTkzNzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9I
aXN0b3J5Q29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0hpc3RvcnlD
b250cm9sbGVyLmNwcApAQCAtODQ2LDcgKzg0Niw3IEBAIHZvaWQgSGlzdG9yeUNvbnRyb2xsZXI6
OnVwZGF0ZUN1cnJlbnRJdGVtKCkKICAgICB9CiB9CiAKLXZvaWQgSGlzdG9yeUNvbnRyb2xsZXI6
OnB1c2hTdGF0ZShQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gc3RhdGVPYmplY3Qs
IGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nKQordm9pZCBIaXN0
b3J5Q29udHJvbGxlcjo6cHVzaFN0YXRlKFJlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+JiYg
c3RhdGVPYmplY3QsIGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgdXJsU3RyaW5n
KQogewogICAgIGlmICghbV9jdXJyZW50SXRlbSkKICAgICAgICAgcmV0dXJuOwpAQCAtODYwLDcg
Kzg2MCw3IEBAIHZvaWQgSGlzdG9yeUNvbnRyb2xsZXI6OnB1c2hTdGF0ZShQYXNzUmVmUHRyPFNl
cmlhbGl6ZWRTY3JpcHRWYWx1ZT4gc3RhdGVPYmplY3QsCiAgICAgLy8gT3ZlcnJpZGUgZGF0YSBp
biB0aGUgY3VycmVudCBpdGVtIChjcmVhdGVkIGJ5IGNyZWF0ZUl0ZW1UcmVlKSB0byByZWZsZWN0
CiAgICAgLy8gdGhlIHB1c2hTdGF0ZSgpIGFyZ3VtZW50cy4KICAgICBtX2N1cnJlbnRJdGVtLT5z
ZXRUaXRsZSh0aXRsZSk7Ci0gICAgbV9jdXJyZW50SXRlbS0+c2V0U3RhdGVPYmplY3Qoc3RhdGVP
YmplY3QpOworICAgIG1fY3VycmVudEl0ZW0tPnNldFN0YXRlT2JqZWN0KFdURk1vdmUoc3RhdGVP
YmplY3QpKTsKICAgICBtX2N1cnJlbnRJdGVtLT5zZXRVUkxTdHJpbmcodXJsU3RyaW5nKTsKIAog
ICAgIExPRyhIaXN0b3J5LCAiSGlzdG9yeUNvbnRyb2xsZXIgJXAgcHVzaFN0YXRlOiBBZGRpbmcg
dG9wIGl0ZW0gJXAsIHNldHRpbmcgdXJsIG9mIGN1cnJlbnQgaXRlbSAlcCB0byAlcyIsIHRoaXMs
IHRvcEl0ZW0ucHRyKCksIG1fY3VycmVudEl0ZW0uZ2V0KCksIHVybFN0cmluZy5hc2NpaSgpLmRh
dGEoKSk7CkBAIC04NzQsNyArODc0LDcgQEAgdm9pZCBIaXN0b3J5Q29udHJvbGxlcjo6cHVzaFN0
YXRlKFBhc3NSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiBzdGF0ZU9iamVjdCwKICAgICBt
X2ZyYW1lLmxvYWRlcigpLmNsaWVudCgpLnVwZGF0ZUdsb2JhbEhpc3RvcnkoKTsKIH0KIAotdm9p
ZCBIaXN0b3J5Q29udHJvbGxlcjo6cmVwbGFjZVN0YXRlKFBhc3NSZWZQdHI8U2VyaWFsaXplZFNj
cmlwdFZhbHVlPiBzdGF0ZU9iamVjdCwgY29uc3QgU3RyaW5nJiB0aXRsZSwgY29uc3QgU3RyaW5n
JiB1cmxTdHJpbmcpCit2b2lkIEhpc3RvcnlDb250cm9sbGVyOjpyZXBsYWNlU3RhdGUoUmVmUHRy
PFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4mJiBzdGF0ZU9iamVjdCwgY29uc3QgU3RyaW5nJiB0aXRs
ZSwgY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcpCiB7CiAgICAgaWYgKCFtX2N1cnJlbnRJdGVtKQog
ICAgICAgICByZXR1cm47CkBAIC04ODQsNyArODg0LDcgQEAgdm9pZCBIaXN0b3J5Q29udHJvbGxl
cjo6cmVwbGFjZVN0YXRlKFBhc3NSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiBzdGF0ZU9i
amUKICAgICBpZiAoIXVybFN0cmluZy5pc0VtcHR5KCkpCiAgICAgICAgIG1fY3VycmVudEl0ZW0t
PnNldFVSTFN0cmluZyh1cmxTdHJpbmcpOwogICAgIG1fY3VycmVudEl0ZW0tPnNldFRpdGxlKHRp
dGxlKTsKLSAgICBtX2N1cnJlbnRJdGVtLT5zZXRTdGF0ZU9iamVjdChzdGF0ZU9iamVjdCk7Cisg
ICAgbV9jdXJyZW50SXRlbS0+c2V0U3RhdGVPYmplY3QoV1RGTW92ZShzdGF0ZU9iamVjdCkpOwog
ICAgIG1fY3VycmVudEl0ZW0tPnNldEZvcm1EYXRhKG51bGxwdHIpOwogICAgIG1fY3VycmVudEl0
ZW0tPnNldEZvcm1Db250ZW50VHlwZShTdHJpbmcoKSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9IaXN0b3J5Q29udHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0hpc3RvcnlDb250cm9sbGVyLmgKaW5kZXggMTBmZjFmMTRhMzNlZjc2YjkwYmZkMTNkNDY1Mjhj
Nzg3NWY1ZWJkNS4uM2QyNWUyODliMjJmYjFmOTk2M2Y2ZGZiMzM0Nzg5NTgxZDA5MjcwMSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmgKQEAgLTg0LDggKzg0LDgg
QEAgcHVibGljOgogICAgIEhpc3RvcnlJdGVtKiBwcm92aXNpb25hbEl0ZW0oKSBjb25zdCB7IHJl
dHVybiBtX3Byb3Zpc2lvbmFsSXRlbS5nZXQoKTsgfQogICAgIHZvaWQgc2V0UHJvdmlzaW9uYWxJ
dGVtKEhpc3RvcnlJdGVtKik7CiAKLSAgICB2b2lkIHB1c2hTdGF0ZShQYXNzUmVmUHRyPFNlcmlh
bGl6ZWRTY3JpcHRWYWx1ZT4sIGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgdXJs
KTsKLSAgICB2b2lkIHJlcGxhY2VTdGF0ZShQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1
ZT4sIGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgdXJsKTsKKyAgICB2b2lkIHB1
c2hTdGF0ZShSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiYmLCBjb25zdCBTdHJpbmcmIHRp
dGxlLCBjb25zdCBTdHJpbmcmIHVybCk7CisgICAgdm9pZCByZXBsYWNlU3RhdGUoUmVmUHRyPFNl
cmlhbGl6ZWRTY3JpcHRWYWx1ZT4mJiwgY29uc3QgU3RyaW5nJiB0aXRsZSwgY29uc3QgU3RyaW5n
JiB1cmwpOwogCiAgICAgdm9pZCBzZXREZWZlcnNMb2FkaW5nKGJvb2wpOwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvSW1hZ2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL0ltYWdlTG9hZGVyLmNwcAppbmRleCBhNTNhZjExYmI5ZjkzYmEyYTgxMjNkYjFhODEw
ZjM4ODc5OTZmZGM1Li4xYjJmYzFiYjQ5N2M3ZDQ5MTlkMTljNjM5YWMwZWY3MjhlY2UwNzkzIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvSW1hZ2VMb2FkZXIuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9JbWFnZUxvYWRlci5jcHAKQEAgLTE3OCw3ICsxNzgsNyBAQCB2
b2lkIEltYWdlTG9hZGVyOjp1cGRhdGVGcm9tRWxlbWVudCgpCiAgICAgICAgIG9wdGlvbnMuc2Ft
ZU9yaWdpbkRhdGFVUkxGbGFnID0gU2FtZU9yaWdpbkRhdGFVUkxGbGFnOjpTZXQ7CiAKICAgICAg
ICAgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QoUmVzb3VyY2VSZXF1ZXN0KGRvY3VtZW50
LmNvbXBsZXRlVVJMKHNvdXJjZVVSSShhdHRyKSkpLCBvcHRpb25zKTsKLSAgICAgICAgcmVxdWVz
dC5zZXRJbml0aWF0b3IoJmVsZW1lbnQoKSk7CisgICAgICAgIHJlcXVlc3Quc2V0SW5pdGlhdG9y
KGVsZW1lbnQoKSk7CiAKICAgICAgICAgcmVxdWVzdC5zZXRBc1BvdGVudGlhbGx5Q3Jvc3NPcmln
aW4oZWxlbWVudCgpLmF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24oSFRNTE5hbWVzOjpj
cm9zc29yaWdpbkF0dHIpLCBkb2N1bWVudCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9O
YXZpZ2F0aW9uU2NoZWR1bGVyLmNwcAppbmRleCA3ZWZmYWQ3ZmExYzVhYTM0NDZlYWMwMDI5NjE4
ZjEyYmI1NzViNGU1Li41Njk3NzUzMmI4YjEyYmUwOGE2MTljZDNmYjFjMTg3NWQzYjc2ZWIxIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL05hdmlnYXRpb25TY2hlZHVsZXIuY3BwCkBAIC02
OCw2ICs2OCwxNiBAQCBwdWJsaWM6CiAgICAgICAgICwgbV91c2VyR2VzdHVyZVRvRm9yd2FyZChV
c2VyR2VzdHVyZUluZGljYXRvcjo6Y3VycmVudFVzZXJHZXN0dXJlKCkpCiAgICAgewogICAgIH0K
KyAgICBTY2hlZHVsZWROYXZpZ2F0aW9uKGRvdWJsZSBkZWxheSwgTG9ja0hpc3RvcnkgbG9ja0hp
c3RvcnksIExvY2tCYWNrRm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3YXJkTGlzdCwgYm9vbCB3YXNE
dXJpbmdMb2FkLCBib29sIGlzTG9jYXRpb25DaGFuZ2UsIFNob3VsZE9wZW5FeHRlcm5hbFVSTHNQ
b2xpY3kgZXh0ZXJuYWxVUkxQb2xpY3kpCisgICAgICAgIDogbV9kZWxheShkZWxheSkKKyAgICAg
ICAgLCBtX2xvY2tIaXN0b3J5KGxvY2tIaXN0b3J5KQorICAgICAgICAsIG1fbG9ja0JhY2tGb3J3
YXJkTGlzdChsb2NrQmFja0ZvcndhcmRMaXN0KQorICAgICAgICAsIG1fd2FzRHVyaW5nTG9hZCh3
YXNEdXJpbmdMb2FkKQorICAgICAgICAsIG1faXNMb2NhdGlvbkNoYW5nZShpc0xvY2F0aW9uQ2hh
bmdlKQorICAgICAgICAsIG1fdXNlckdlc3R1cmVUb0ZvcndhcmQoVXNlckdlc3R1cmVJbmRpY2F0
b3I6OmN1cnJlbnRVc2VyR2VzdHVyZSgpKQorICAgICAgICAsIG1fc2hvdWxkT3BlbkV4dGVybmFs
VVJMc1BvbGljeShleHRlcm5hbFVSTFBvbGljeSkKKyAgICB7CisgICAgfQogICAgIHZpcnR1YWwg
flNjaGVkdWxlZE5hdmlnYXRpb24oKSB7IH0KIAogICAgIHZpcnR1YWwgdm9pZCBmaXJlKEZyYW1l
JikgPSAwOwpAQCAtODEsMTIgKzkxLDExIEBAIHB1YmxpYzoKICAgICBMb2NrQmFja0ZvcndhcmRM
aXN0IGxvY2tCYWNrRm9yd2FyZExpc3QoKSBjb25zdCB7IHJldHVybiBtX2xvY2tCYWNrRm9yd2Fy
ZExpc3Q7IH0KICAgICBib29sIHdhc0R1cmluZ0xvYWQoKSBjb25zdCB7IHJldHVybiBtX3dhc0R1
cmluZ0xvYWQ7IH0KICAgICBib29sIGlzTG9jYXRpb25DaGFuZ2UoKSBjb25zdCB7IHJldHVybiBt
X2lzTG9jYXRpb25DaGFuZ2U7IH0KLSAgICBSZWZQdHI8VXNlckdlc3R1cmVUb2tlbj4gdXNlckdl
c3R1cmVUb0ZvcndhcmQoKSBjb25zdCB7IHJldHVybiBtX3VzZXJHZXN0dXJlVG9Gb3J3YXJkOyB9
CisgICAgVXNlckdlc3R1cmVUb2tlbiogdXNlckdlc3R1cmVUb0ZvcndhcmQoKSBjb25zdCB7IHJl
dHVybiBtX3VzZXJHZXN0dXJlVG9Gb3J3YXJkLmdldCgpOyB9CiAKIHByb3RlY3RlZDoKICAgICB2
b2lkIGNsZWFyVXNlckdlc3R1cmUoKSB7IG1fdXNlckdlc3R1cmVUb0ZvcndhcmQgPSBudWxscHRy
OyB9Ci0KLSAgICBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5IG1fc2hvdWxkT3BlbkV4dGVy
bmFsVVJMc1BvbGljeSB7IFNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3k6OlNob3VsZE5vdEFs
bG93IH07CisgICAgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSBzaG91bGRPcGVuRXh0ZXJu
YWxVUkxzKCkgY29uc3QgeyByZXR1cm4gbV9zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5OyB9
CiAKIHByaXZhdGU6CiAgICAgZG91YmxlIG1fZGVsYXk7CkBAIC05NSwxOSArMTA0LDE3IEBAIHBy
aXZhdGU6CiAgICAgYm9vbCBtX3dhc0R1cmluZ0xvYWQ7CiAgICAgYm9vbCBtX2lzTG9jYXRpb25D
aGFuZ2U7CiAgICAgUmVmUHRyPFVzZXJHZXN0dXJlVG9rZW4+IG1fdXNlckdlc3R1cmVUb0Zvcndh
cmQ7CisgICAgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSBtX3Nob3VsZE9wZW5FeHRlcm5h
bFVSTHNQb2xpY3kgeyBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5OjpTaG91bGROb3RBbGxv
dyB9OwogfTsKIAogY2xhc3MgU2NoZWR1bGVkVVJMTmF2aWdhdGlvbiA6IHB1YmxpYyBTY2hlZHVs
ZWROYXZpZ2F0aW9uIHsKIHByb3RlY3RlZDoKLSAgICBTY2hlZHVsZWRVUkxOYXZpZ2F0aW9uKERv
Y3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQsIGRvdWJsZSBkZWxheSwgU2VjdXJpdHlPcmlnaW4q
IHNlY3VyaXR5T3JpZ2luLCBjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwg
TG9ja0hpc3RvcnkgbG9ja0hpc3RvcnksIExvY2tCYWNrRm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3
YXJkTGlzdCwgYm9vbCBkdXJpbmdMb2FkLCBib29sIGlzTG9jYXRpb25DaGFuZ2UpCi0gICAgICAg
IDogU2NoZWR1bGVkTmF2aWdhdGlvbihkZWxheSwgbG9ja0hpc3RvcnksIGxvY2tCYWNrRm9yd2Fy
ZExpc3QsIGR1cmluZ0xvYWQsIGlzTG9jYXRpb25DaGFuZ2UpCisgICAgU2NoZWR1bGVkVVJMTmF2
aWdhdGlvbihEb2N1bWVudCYgaW5pdGlhdGluZ0RvY3VtZW50LCBkb3VibGUgZGVsYXksIFNlY3Vy
aXR5T3JpZ2luKiBzZWN1cml0eU9yaWdpbiwgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYg
cmVmZXJyZXIsIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxv
Y2tCYWNrRm9yd2FyZExpc3QsIGJvb2wgZHVyaW5nTG9hZCwgYm9vbCBpc0xvY2F0aW9uQ2hhbmdl
KQorICAgICAgICA6IFNjaGVkdWxlZE5hdmlnYXRpb24oZGVsYXksIGxvY2tIaXN0b3J5LCBsb2Nr
QmFja0ZvcndhcmRMaXN0LCBkdXJpbmdMb2FkLCBpc0xvY2F0aW9uQ2hhbmdlLCBpbml0aWF0aW5n
RG9jdW1lbnQuc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeVRvUHJvcGFnYXRlKCkpCiAgICAg
ICAgICwgbV9zZWN1cml0eU9yaWdpbihzZWN1cml0eU9yaWdpbikKICAgICAgICAgLCBtX3VybCh1
cmwpCiAgICAgICAgICwgbV9yZWZlcnJlcihyZWZlcnJlcikKLSAgICAgICAgLCBtX2hhdmVUb2xk
Q2xpZW50KGZhbHNlKQogICAgIHsKLSAgICAgICAgaWYgKGluaXRpYXRpbmdEb2N1bWVudCkKLSAg
ICAgICAgICAgIG1fc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSA9IGluaXRpYXRpbmdEb2N1
bWVudC0+c2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeVRvUHJvcGFnYXRlKCk7CiAgICAgfQog
CiAgICAgdm9pZCBmaXJlKEZyYW1lJiBmcmFtZSkgb3ZlcnJpZGUKQEAgLTExNSw3ICsxMjIsNyBA
QCBwcm90ZWN0ZWQ6CiAgICAgICAgIFVzZXJHZXN0dXJlSW5kaWNhdG9yIGdlc3R1cmVJbmRpY2F0
b3IodXNlckdlc3R1cmVUb0ZvcndhcmQoKSk7CiAKICAgICAgICAgUmVzb3VyY2VSZXF1ZXN0IHJl
c291cmNlUmVxdWVzdChtX3VybCwgbV9yZWZlcnJlciwgVXNlUHJvdG9jb2xDYWNoZVBvbGljeSk7
Ci0gICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KG1fc2VjdXJpdHlPcmlnaW4u
Z2V0KCksIHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tG
b3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlk
VVJMOjpZZXMsIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxvdywgbV9zaG91bGRPcGVuRXh0ZXJu
YWxVUkxzUG9saWN5KTsKKyAgICAgICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFtZVJlcXVlc3QobV9z
ZWN1cml0eU9yaWdpbi5nZXQoKSwgcmVzb3VyY2VSZXF1ZXN0LCAiX3NlbGYiLCBsb2NrSGlzdG9y
eSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVycmVyLCBBbGxvd05hdmln
YXRpb25Ub0ludmFsaWRVUkw6OlllcywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBzaG91
bGRPcGVuRXh0ZXJuYWxVUkxzKCkpOwogCiAgICAgICAgIGZyYW1lLmxvYWRlcigpLmNoYW5nZUxv
Y2F0aW9uKGZyYW1lUmVxdWVzdCk7CiAgICAgfQpAQCAtMTUyLDEyICsxNTksMTIgQEAgcHJpdmF0
ZToKICAgICBSZWZQdHI8U2VjdXJpdHlPcmlnaW4+IG1fc2VjdXJpdHlPcmlnaW47CiAgICAgVVJM
IG1fdXJsOwogICAgIFN0cmluZyBtX3JlZmVycmVyOwotICAgIGJvb2wgbV9oYXZlVG9sZENsaWVu
dDsKKyAgICBib29sIG1faGF2ZVRvbGRDbGllbnQgeyBmYWxzZSB9OwogfTsKIAogY2xhc3MgU2No
ZWR1bGVkUmVkaXJlY3QgOiBwdWJsaWMgU2NoZWR1bGVkVVJMTmF2aWdhdGlvbiB7CiBwdWJsaWM6
Ci0gICAgU2NoZWR1bGVkUmVkaXJlY3QoRG9jdW1lbnQqIGluaXRpYXRpbmdEb2N1bWVudCwgZG91
YmxlIGRlbGF5LCBTZWN1cml0eU9yaWdpbiogc2VjdXJpdHlPcmlnaW4sIGNvbnN0IFVSTCYgdXJs
LCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSwgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0Zv
cndhcmRMaXN0KQorICAgIFNjaGVkdWxlZFJlZGlyZWN0KERvY3VtZW50JiBpbml0aWF0aW5nRG9j
dW1lbnQsIGRvdWJsZSBkZWxheSwgU2VjdXJpdHlPcmlnaW4qIHNlY3VyaXR5T3JpZ2luLCBjb25z
dCBVUkwmIHVybCwgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnksIExvY2tCYWNrRm9yd2FyZExpc3Qg
bG9ja0JhY2tGb3J3YXJkTGlzdCkKICAgICAgICAgOiBTY2hlZHVsZWRVUkxOYXZpZ2F0aW9uKGlu
aXRpYXRpbmdEb2N1bWVudCwgZGVsYXksIHNlY3VyaXR5T3JpZ2luLCB1cmwsIFN0cmluZygpLCBs
b2NrSGlzdG9yeSwgbG9ja0JhY2tGb3J3YXJkTGlzdCwgZmFsc2UsIGZhbHNlKQogICAgIHsKICAg
ICAgICAgY2xlYXJVc2VyR2VzdHVyZSgpOwpAQCAtMTczLDcgKzE4MCw3IEBAIHB1YmxpYzoKICAg
ICAgICAgVXNlckdlc3R1cmVJbmRpY2F0b3IgZ2VzdHVyZUluZGljYXRvcih1c2VyR2VzdHVyZVRv
Rm9yd2FyZCgpKTsKICAgICAgICAgYm9vbCByZWZyZXNoID0gZXF1YWxJZ25vcmluZ0ZyYWdtZW50
SWRlbnRpZmllcihmcmFtZS5kb2N1bWVudCgpLT51cmwoKSwgdXJsKCkpOwogICAgICAgICBSZXNv
dXJjZVJlcXVlc3QgcmVzb3VyY2VSZXF1ZXN0KHVybCgpLCByZWZlcnJlcigpLCByZWZyZXNoID8g
UmVsb2FkSWdub3JpbmdDYWNoZURhdGEgOiBVc2VQcm90b2NvbENhY2hlUG9saWN5KTsKLSAgICAg
ICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFtZVJlcXVlc3Qoc2VjdXJpdHlPcmlnaW4oKSwgcmVzb3Vy
Y2VSZXF1ZXN0LCAiX3NlbGYiLCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0KCks
IE1heWJlU2VuZFJlZmVycmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkw6Ok5vLCBOZXdG
cmFtZU9wZW5lclBvbGljeTo6QWxsb3csIG1fc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSk7
CisgICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KHNlY3VyaXR5T3JpZ2luKCks
IHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJk
TGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpO
bywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzKCkp
OwogCiAgICAgICAgIGZyYW1lLmxvYWRlcigpLmNoYW5nZUxvY2F0aW9uKGZyYW1lUmVxdWVzdCk7
CiAgICAgfQpAQCAtMTgxLDcgKzE4OCw3IEBAIHB1YmxpYzoKIAogY2xhc3MgU2NoZWR1bGVkTG9j
YXRpb25DaGFuZ2UgOiBwdWJsaWMgU2NoZWR1bGVkVVJMTmF2aWdhdGlvbiB7CiBwdWJsaWM6Ci0g
ICAgU2NoZWR1bGVkTG9jYXRpb25DaGFuZ2UoRG9jdW1lbnQqIGluaXRpYXRpbmdEb2N1bWVudCwg
U2VjdXJpdHlPcmlnaW4qIHNlY3VyaXR5T3JpZ2luLCBjb25zdCBVUkwmIHVybCwgY29uc3QgU3Ry
aW5nJiByZWZlcnJlciwgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnksIExvY2tCYWNrRm9yd2FyZExp
c3QgbG9ja0JhY2tGb3J3YXJkTGlzdCwgYm9vbCBkdXJpbmdMb2FkKQorICAgIFNjaGVkdWxlZExv
Y2F0aW9uQ2hhbmdlKERvY3VtZW50JiBpbml0aWF0aW5nRG9jdW1lbnQsIFNlY3VyaXR5T3JpZ2lu
KiBzZWN1cml0eU9yaWdpbiwgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIs
IExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9y
d2FyZExpc3QsIGJvb2wgZHVyaW5nTG9hZCkKICAgICAgICAgOiBTY2hlZHVsZWRVUkxOYXZpZ2F0
aW9uKGluaXRpYXRpbmdEb2N1bWVudCwgMC4wLCBzZWN1cml0eU9yaWdpbiwgdXJsLCByZWZlcnJl
ciwgbG9ja0hpc3RvcnksIGxvY2tCYWNrRm9yd2FyZExpc3QsIGR1cmluZ0xvYWQsIHRydWUpIHsg
fQogCiAgICAgdm9pZCBmaXJlKEZyYW1lJiBmcmFtZSkgb3ZlcnJpZGUKQEAgLTE4OSwxNCArMTk2
LDE0IEBAIHB1YmxpYzoKICAgICAgICAgVXNlckdlc3R1cmVJbmRpY2F0b3IgZ2VzdHVyZUluZGlj
YXRvcih1c2VyR2VzdHVyZVRvRm9yd2FyZCgpKTsKIAogICAgICAgICBSZXNvdXJjZVJlcXVlc3Qg
cmVzb3VyY2VSZXF1ZXN0KHVybCgpLCByZWZlcnJlcigpLCBVc2VQcm90b2NvbENhY2hlUG9saWN5
KTsKLSAgICAgICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFtZVJlcXVlc3Qoc2VjdXJpdHlPcmlnaW4o
KSwgcmVzb3VyY2VSZXF1ZXN0LCAiX3NlbGYiLCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFja0Zvcndh
cmRMaXN0KCksIE1heWJlU2VuZFJlZmVycmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkw6
Ok5vLCBOZXdGcmFtZU9wZW5lclBvbGljeTo6QWxsb3csIG1fc2hvdWxkT3BlbkV4dGVybmFsVVJM
c1BvbGljeSk7CisgICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KHNlY3VyaXR5
T3JpZ2luKCksIHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hpc3RvcnkoKSwgbG9ja0Jh
Y2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZh
bGlkVVJMOjpObywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBzaG91bGRPcGVuRXh0ZXJu
YWxVUkxzKCkpOwogICAgICAgICBmcmFtZS5sb2FkZXIoKS5jaGFuZ2VMb2NhdGlvbihmcmFtZVJl
cXVlc3QpOwogICAgIH0KIH07CiAKIGNsYXNzIFNjaGVkdWxlZFJlZnJlc2ggOiBwdWJsaWMgU2No
ZWR1bGVkVVJMTmF2aWdhdGlvbiB7CiBwdWJsaWM6Ci0gICAgU2NoZWR1bGVkUmVmcmVzaChEb2N1
bWVudCogaW5pdGlhdGluZ0RvY3VtZW50LCBTZWN1cml0eU9yaWdpbiogc2VjdXJpdHlPcmlnaW4s
IGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyKQorICAgIFNjaGVkdWxlZFJl
ZnJlc2goRG9jdW1lbnQmIGluaXRpYXRpbmdEb2N1bWVudCwgU2VjdXJpdHlPcmlnaW4qIHNlY3Vy
aXR5T3JpZ2luLCBjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiByZWZlcnJlcikKICAgICAg
ICAgOiBTY2hlZHVsZWRVUkxOYXZpZ2F0aW9uKGluaXRpYXRpbmdEb2N1bWVudCwgMC4wLCBzZWN1
cml0eU9yaWdpbiwgdXJsLCByZWZlcnJlciwgTG9ja0hpc3Rvcnk6OlllcywgTG9ja0JhY2tGb3J3
YXJkTGlzdDo6WWVzLCBmYWxzZSwgdHJ1ZSkKICAgICB7CiAgICAgfQpAQCAtMjA2LDcgKzIxMyw3
IEBAIHB1YmxpYzoKICAgICAgICAgVXNlckdlc3R1cmVJbmRpY2F0b3IgZ2VzdHVyZUluZGljYXRv
cih1c2VyR2VzdHVyZVRvRm9yd2FyZCgpKTsKIAogICAgICAgICBSZXNvdXJjZVJlcXVlc3QgcmVz
b3VyY2VSZXF1ZXN0KHVybCgpLCByZWZlcnJlcigpLCBSZWxvYWRJZ25vcmluZ0NhY2hlRGF0YSk7
Ci0gICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KHNlY3VyaXR5T3JpZ2luKCks
IHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJk
TGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpZ
ZXMsIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxvdywgbV9zaG91bGRPcGVuRXh0ZXJuYWxVUkxz
UG9saWN5KTsKKyAgICAgICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFtZVJlcXVlc3Qoc2VjdXJpdHlP
cmlnaW4oKSwgcmVzb3VyY2VSZXF1ZXN0LCAiX3NlbGYiLCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFj
a0ZvcndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVycmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFs
aWRVUkw6OlllcywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBzaG91bGRPcGVuRXh0ZXJu
YWxVUkxzKCkpOwogICAgICAgICBmcmFtZS5sb2FkZXIoKS5jaGFuZ2VMb2NhdGlvbihmcmFtZVJl
cXVlc3QpOwogICAgIH0KIH07CkBAIC0yMjYsNyArMjMzLDcgQEAgcHVibGljOgogICAgICAgICBp
ZiAoIW1faGlzdG9yeVN0ZXBzKSB7CiAgICAgICAgICAgICAvLyBTcGVjaWFsIGNhc2UgZm9yIGdv
KDApIGZyb20gYSBmcmFtZSAtPiByZWxvYWQgb25seSB0aGUgZnJhbWUKICAgICAgICAgICAgIC8v
IFRvIGZvbGxvdyBGaXJlZm94IGFuZCBJRSdzIGJlaGF2aW9yLCBoaXN0b3J5IHJlbG9hZCBjYW4g
b25seSBuYXZpZ2F0ZSB0aGUgc2VsZiBmcmFtZS4KLSAgICAgICAgICAgIGZyYW1lLmxvYWRlcigp
LnVybFNlbGVjdGVkKGZyYW1lLmRvY3VtZW50KCktPnVybCgpLCAiX3NlbGYiLCAwLCBsb2NrSGlz
dG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVycmVyLCBtX3Nob3Vs
ZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kpOworICAgICAgICAgICAgZnJhbWUubG9hZGVyKCkudXJs
U2VsZWN0ZWQoZnJhbWUuZG9jdW1lbnQoKS0+dXJsKCksICJfc2VsZiIsIDAsIGxvY2tIaXN0b3J5
KCksIGxvY2tCYWNrRm9yd2FyZExpc3QoKSwgTWF5YmVTZW5kUmVmZXJyZXIsIHNob3VsZE9wZW5F
eHRlcm5hbFVSTHMoKSk7CiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0KICAgICAgICAg
CkBAIC0yNDEsMTUgKzI0OCwxMCBAQCBwcml2YXRlOgogCiBjbGFzcyBTY2hlZHVsZWRGb3JtU3Vi
bWlzc2lvbiA6IHB1YmxpYyBTY2hlZHVsZWROYXZpZ2F0aW9uIHsKIHB1YmxpYzoKLSAgICBTY2hl
ZHVsZWRGb3JtU3VibWlzc2lvbihQYXNzUmVmUHRyPEZvcm1TdWJtaXNzaW9uPiBzdWJtaXNzaW9u
LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QsIGJvb2wgZHVyaW5nTG9h
ZCkKLSAgICAgICAgOiBTY2hlZHVsZWROYXZpZ2F0aW9uKDAsIHN1Ym1pc3Npb24tPmxvY2tIaXN0
b3J5KCksIGxvY2tCYWNrRm9yd2FyZExpc3QsIGR1cmluZ0xvYWQsIHRydWUpCi0gICAgICAgICwg
bV9zdWJtaXNzaW9uKHN1Ym1pc3Npb24pCi0gICAgICAgICwgbV9oYXZlVG9sZENsaWVudChmYWxz
ZSkKKyAgICBTY2hlZHVsZWRGb3JtU3VibWlzc2lvbihSZWY8Rm9ybVN1Ym1pc3Npb24+JiYgc3Vi
bWlzc2lvbiwgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0LCBib29sIGR1
cmluZ0xvYWQpCisgICAgICAgIDogU2NoZWR1bGVkTmF2aWdhdGlvbigwLCBzdWJtaXNzaW9uLT5s
b2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0LCBkdXJpbmdMb2FkLCB0cnVlLCBzdWJt
aXNzaW9uLT5zdGF0ZSgpLnNvdXJjZURvY3VtZW50KCkuc2hvdWxkT3BlbkV4dGVybmFsVVJMc1Bv
bGljeVRvUHJvcGFnYXRlKCkpCisgICAgICAgICwgbV9zdWJtaXNzaW9uKFdURk1vdmUoc3VibWlz
c2lvbikpCiAgICAgewotICAgICAgICBBU1NFUlQobV9zdWJtaXNzaW9uLT5zdGF0ZSgpKTsKLQot
ICAgICAgICBpZiAoRG9jdW1lbnQqIGRvY3VtZW50ID0gbV9zdWJtaXNzaW9uLT5zdGF0ZSgpLT5z
b3VyY2VEb2N1bWVudCgpKQotICAgICAgICAgICAgbV9zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9s
aWN5ID0gZG9jdW1lbnQtPnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3lUb1Byb3BhZ2F0ZSgp
OwogICAgIH0KIAogICAgIHZvaWQgZmlyZShGcmFtZSYgZnJhbWUpIG92ZXJyaWRlCkBAIC0yNjAs
MTQgKzI2MiwxNCBAQCBwdWJsaWM6CiAgICAgICAgIC8vIE5vdyB0aGF0IHRoZSB0aW1lciBoYXMg
ZmlyZWQsIHdlIG5lZWQgdG8gcmVwZWF0IHRoZSBzZWN1cml0eSBjaGVjayB3aGljaCBub3JtYWxs
eSBpcyBkb25lIHdoZW4KICAgICAgICAgLy8gc2VsZWN0aW5nIGEgdGFyZ2V0LCBpbiBjYXNlIGNv
bmRpdGlvbnMgaGF2ZSBjaGFuZ2VkLiBPdGhlciBjb2RlIHBhdGhzIGF2b2lkIHRoaXMgYnkgdGFy
Z2V0aW5nCiAgICAgICAgIC8vIHdpdGhvdXQgbGVhdmluZyBhIHRpbWUgd2luZG93LiBJZiB3ZSBm
YWlsIHRoZSBjaGVjayBqdXN0IHNpbGVudGx5IGRyb3AgdGhlIGZvcm0gc3VibWlzc2lvbi4KLSAg
ICAgICAgRG9jdW1lbnQqIHJlcXVlc3RpbmdEb2N1bWVudCA9IG1fc3VibWlzc2lvbi0+c3RhdGUo
KS0+c291cmNlRG9jdW1lbnQoKTsKLSAgICAgICAgaWYgKCFyZXF1ZXN0aW5nRG9jdW1lbnQtPmNh
bk5hdmlnYXRlKCZmcmFtZSkpCisgICAgICAgIGF1dG8mIHJlcXVlc3RpbmdEb2N1bWVudCA9IG1f
c3VibWlzc2lvbi0+c3RhdGUoKS5zb3VyY2VEb2N1bWVudCgpOworICAgICAgICBpZiAoIXJlcXVl
c3RpbmdEb2N1bWVudC5jYW5OYXZpZ2F0ZSgmZnJhbWUpKQogICAgICAgICAgICAgcmV0dXJuOwot
ICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1lUmVxdWVzdChyZXF1ZXN0aW5nRG9jdW1lbnQt
PnNlY3VyaXR5T3JpZ2luKCksIGxvY2tIaXN0b3J5KCksIGxvY2tCYWNrRm9yd2FyZExpc3QoKSwg
TWF5YmVTZW5kUmVmZXJyZXIsIEFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTDo6WWVzLCBOZXdG
cmFtZU9wZW5lclBvbGljeTo6QWxsb3csIG1fc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSk7
CisgICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KHJlcXVlc3RpbmdEb2N1bWVu
dC5zZWN1cml0eU9yaWdpbigpLCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0KCks
IE1heWJlU2VuZFJlZmVycmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkw6OlllcywgTmV3
RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzKCkpOwogICAg
ICAgICBtX3N1Ym1pc3Npb24tPnBvcHVsYXRlRnJhbWVMb2FkUmVxdWVzdChmcmFtZVJlcXVlc3Qp
OwotICAgICAgICBmcmFtZS5sb2FkZXIoKS5sb2FkRnJhbWVSZXF1ZXN0KGZyYW1lUmVxdWVzdCwg
bV9zdWJtaXNzaW9uLT5ldmVudCgpLCBtX3N1Ym1pc3Npb24tPnN0YXRlKCkpOworICAgICAgICBm
cmFtZS5sb2FkZXIoKS5sb2FkRnJhbWVSZXF1ZXN0KGZyYW1lUmVxdWVzdCwgbV9zdWJtaXNzaW9u
LT5ldmVudCgpLCAmbV9zdWJtaXNzaW9uLT5zdGF0ZSgpKTsKICAgICB9Ci0gICAgCisKICAgICB2
b2lkIGRpZFN0YXJ0VGltZXIoRnJhbWUmIGZyYW1lLCBUaW1lciYgdGltZXIpIG92ZXJyaWRlCiAg
ICAgewogICAgICAgICBpZiAobV9oYXZlVG9sZENsaWVudCkKQEAgLTI5Myw4ICsyOTUsOCBAQCBw
dWJsaWM6CiAgICAgfQogCiBwcml2YXRlOgotICAgIFJlZlB0cjxGb3JtU3VibWlzc2lvbj4gbV9z
dWJtaXNzaW9uOwotICAgIGJvb2wgbV9oYXZlVG9sZENsaWVudDsKKyAgICBSZWY8Rm9ybVN1Ym1p
c3Npb24+IG1fc3VibWlzc2lvbjsKKyAgICBib29sIG1faGF2ZVRvbGRDbGllbnQgeyBmYWxzZSB9
OwogfTsKIAogY2xhc3MgU2NoZWR1bGVkUGFnZUJsb2NrIGZpbmFsIDogcHVibGljIFNjaGVkdWxl
ZE5hdmlnYXRpb24gewpAQCAtMzEzLDcgKzMxNSw3IEBAIHB1YmxpYzoKICAgICAgICAgU3Vic3Rp
dHV0ZURhdGEgcmVwbGFjZW1lbnREYXRhKFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKCksIG1fb3JpZ2lu
RG9jdW1lbnQudXJsKCksIHJlcGxhY2VtZW50UmVzcG9uc2UsIFN1YnN0aXR1dGVEYXRhOjpTZXNz
aW9uSGlzdG9yeVZpc2liaWxpdHk6OkhpZGRlbik7CiAKICAgICAgICAgUmVzb3VyY2VSZXF1ZXN0
IHJlc291cmNlUmVxdWVzdChtX29yaWdpbkRvY3VtZW50LnVybCgpLCBlbXB0eVN0cmluZygpLCBS
ZWxvYWRJZ25vcmluZ0NhY2hlRGF0YSk7Ci0gICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVS
ZXF1ZXN0KG1fb3JpZ2luRG9jdW1lbnQuc2VjdXJpdHlPcmlnaW4oKSwgcmVzb3VyY2VSZXF1ZXN0
LCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVycmVy
LCBBbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkw6OlllcywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6
OkFsbG93LCBtX3Nob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kpOworICAgICAgICBGcmFtZUxv
YWRSZXF1ZXN0IGZyYW1lUmVxdWVzdChtX29yaWdpbkRvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCks
IHJlc291cmNlUmVxdWVzdCwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBN
YXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpZZXMsIE5ld0Zy
YW1lT3BlbmVyUG9saWN5OjpBbGxvdywgc2hvdWxkT3BlbkV4dGVybmFsVVJMcygpKTsKICAgICAg
ICAgZnJhbWVSZXF1ZXN0LnNldFN1YnN0aXR1dGVEYXRhKHJlcGxhY2VtZW50RGF0YSk7CiAgICAg
ICAgIGZyYW1lLmxvYWRlcigpLmxvYWQoZnJhbWVSZXF1ZXN0KTsKICAgICB9CkBAIC0zNjQsNyAr
MzY2LDcgQEAgaW5saW5lIGJvb2wgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2hvdWxkU2NoZWR1bGVO
YXZpZ2F0aW9uKGNvbnN0IFVSTCYgdXJsKSBjb25zdAogICAgIHJldHVybiBOYXZpZ2F0aW9uRGlz
YWJsZXJGb3JCZWZvcmVVbmxvYWQ6OmlzTmF2aWdhdGlvbkFsbG93ZWQoKTsKIH0KIAotdm9pZCBO
YXZpZ2F0aW9uU2NoZWR1bGVyOjpzY2hlZHVsZVJlZGlyZWN0KERvY3VtZW50KiBpbml0aWF0aW5n
RG9jdW1lbnQsIGRvdWJsZSBkZWxheSwgY29uc3QgVVJMJiB1cmwpCit2b2lkIE5hdmlnYXRpb25T
Y2hlZHVsZXI6OnNjaGVkdWxlUmVkaXJlY3QoRG9jdW1lbnQmIGluaXRpYXRpbmdEb2N1bWVudCwg
ZG91YmxlIGRlbGF5LCBjb25zdCBVUkwmIHVybCkKIHsKICAgICBpZiAoIXNob3VsZFNjaGVkdWxl
TmF2aWdhdGlvbih1cmwpKQogICAgICAgICByZXR1cm47CkBAIC0zNzUsNyArMzc3LDcgQEAgdm9p
ZCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjpzY2hlZHVsZVJlZGlyZWN0KERvY3VtZW50KiBpbml0aWF0
aW5nRG9jdW1lbnQsIGRvdWJsZQogCiAgICAgLy8gV2Ugd2FudCBhIG5ldyBiYWNrL2ZvcndhcmQg
bGlzdCBpdGVtIGlmIHRoZSByZWZyZXNoIHRpbWVvdXQgaXMgPiAxIHNlY29uZC4KICAgICBpZiAo
IW1fcmVkaXJlY3QgfHwgZGVsYXkgPD0gbV9yZWRpcmVjdC0+ZGVsYXkoKSkgewotICAgICAgICBM
b2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QgPSBkZWxheSA8PSAxID8gTG9j
a0JhY2tGb3J3YXJkTGlzdDo6WWVzIDogTG9ja0JhY2tGb3J3YXJkTGlzdDo6Tm87CisgICAgICAg
IGF1dG8gbG9ja0JhY2tGb3J3YXJkTGlzdCA9IGRlbGF5IDw9IDEgPyBMb2NrQmFja0ZvcndhcmRM
aXN0OjpZZXMgOiBMb2NrQmFja0ZvcndhcmRMaXN0OjpObzsKICAgICAgICAgc2NoZWR1bGUoc3Rk
OjptYWtlX3VuaXF1ZTxTY2hlZHVsZWRSZWRpcmVjdD4oaW5pdGlhdGluZ0RvY3VtZW50LCBkZWxh
eSwgbV9mcmFtZS5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLCB1cmwsIExvY2tIaXN0b3J5
OjpZZXMsIGxvY2tCYWNrRm9yd2FyZExpc3QpKTsKICAgICB9CiB9CkBAIC0zOTgsNyArNDAwLDcg
QEAgTG9ja0JhY2tGb3J3YXJkTGlzdCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjptdXN0TG9ja0JhY2tG
b3J3YXJkTGlzdChGcmFtZSYgdGFyZ2V0RnIKICAgICByZXR1cm4gTG9ja0JhY2tGb3J3YXJkTGlz
dDo6Tm87CiB9CiAKLXZvaWQgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2NoZWR1bGVMb2NhdGlvbkNo
YW5nZShEb2N1bWVudCogaW5pdGlhdGluZ0RvY3VtZW50LCBTZWN1cml0eU9yaWdpbiogc2VjdXJp
dHlPcmlnaW4sIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBMb2NrSGlz
dG9yeSBsb2NrSGlzdG9yeSwgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0
KQordm9pZCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjpzY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKERvY3Vt
ZW50JiBpbml0aWF0aW5nRG9jdW1lbnQsIFNlY3VyaXR5T3JpZ2luKiBzZWN1cml0eU9yaWdpbiwg
Y29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIExvY2tIaXN0b3J5IGxvY2tI
aXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QpCiB7CiAgICAg
aWYgKCFzaG91bGRTY2hlZHVsZU5hdmlnYXRpb24odXJsKSkKICAgICAgICAgcmV0dXJuOwpAQCAt
NDEyLDEwICs0MTQsNyBAQCB2b2lkIE5hdmlnYXRpb25TY2hlZHVsZXI6OnNjaGVkdWxlTG9jYXRp
b25DaGFuZ2UoRG9jdW1lbnQqIGluaXRpYXRpbmdEb2N1bWVudCwgUwogICAgIC8vIGZyYWdtZW50
IHBhcnQsIHdlIGRvbid0IG5lZWQgdG8gc2NoZWR1bGUgdGhlIGxvY2F0aW9uIGNoYW5nZS4KICAg
ICBpZiAodXJsLmhhc0ZyYWdtZW50SWRlbnRpZmllcigpICYmIGVxdWFsSWdub3JpbmdGcmFnbWVu
dElkZW50aWZpZXIobV9mcmFtZS5kb2N1bWVudCgpLT51cmwoKSwgdXJsKSkgewogICAgICAgICBS
ZXNvdXJjZVJlcXVlc3QgcmVzb3VyY2VSZXF1ZXN0KG1fZnJhbWUuZG9jdW1lbnQoKS0+Y29tcGxl
dGVVUkwodXJsKSwgcmVmZXJyZXIsIFVzZVByb3RvY29sQ2FjaGVQb2xpY3kpOwotICAgICAgICBT
aG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5IHNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kg
PSBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5OjpTaG91bGROb3RBbGxvdzsKLSAgICAgICAg
aWYgKGluaXRpYXRpbmdEb2N1bWVudCkKLSAgICAgICAgICAgIHNob3VsZE9wZW5FeHRlcm5hbFVS
THNQb2xpY3kgPSBpbml0aWF0aW5nRG9jdW1lbnQtPnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xp
Y3lUb1Byb3BhZ2F0ZSgpOwotICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1lUmVxdWVzdChz
ZWN1cml0eU9yaWdpbiwgcmVzb3VyY2VSZXF1ZXN0LCAiX3NlbGYiLCBsb2NrSGlzdG9yeSwgbG9j
a0JhY2tGb3J3YXJkTGlzdCwgTWF5YmVTZW5kUmVmZXJyZXIsIEFsbG93TmF2aWdhdGlvblRvSW52
YWxpZFVSTDo6Tm8sIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxvdywgUmVwbGFjZURvY3VtZW50
SWZKYXZhU2NyaXB0VVJMLCBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5KTsKKyAgICAgICAg
RnJhbWVMb2FkUmVxdWVzdCBmcmFtZVJlcXVlc3Qoc2VjdXJpdHlPcmlnaW4sIHJlc291cmNlUmVx
dWVzdCwgIl9zZWxmIiwgbG9ja0hpc3RvcnksIGxvY2tCYWNrRm9yd2FyZExpc3QsIE1heWJlU2Vu
ZFJlZmVycmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkw6Ok5vLCBOZXdGcmFtZU9wZW5l
clBvbGljeTo6QWxsb3csIFJlcGxhY2VEb2N1bWVudElmSmF2YVNjcmlwdFVSTCwgaW5pdGlhdGlu
Z0RvY3VtZW50LnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3lUb1Byb3BhZ2F0ZSgpKTsKICAg
ICAgICAgbG9hZGVyLmNoYW5nZUxvY2F0aW9uKGZyYW1lUmVxdWVzdCk7CiAgICAgICAgIHJldHVy
bjsKICAgICB9CkBAIC00MjcsNyArNDI2LDcgQEAgdm9pZCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjpz
Y2hlZHVsZUxvY2F0aW9uQ2hhbmdlKERvY3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQsIFMKICAg
ICBzY2hlZHVsZShzdGQ6Om1ha2VfdW5pcXVlPFNjaGVkdWxlZExvY2F0aW9uQ2hhbmdlPihpbml0
aWF0aW5nRG9jdW1lbnQsIHNlY3VyaXR5T3JpZ2luLCB1cmwsIHJlZmVycmVyLCBsb2NrSGlzdG9y
eSwgbG9ja0JhY2tGb3J3YXJkTGlzdCwgZHVyaW5nTG9hZCkpOwogfQogCi12b2lkIE5hdmlnYXRp
b25TY2hlZHVsZXI6OnNjaGVkdWxlRm9ybVN1Ym1pc3Npb24oUGFzc1JlZlB0cjxGb3JtU3VibWlz
c2lvbj4gc3VibWlzc2lvbikKK3ZvaWQgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2NoZWR1bGVGb3Jt
U3VibWlzc2lvbihSZWY8Rm9ybVN1Ym1pc3Npb24+JiYgc3VibWlzc2lvbikKIHsKICAgICBBU1NF
UlQobV9mcmFtZS5wYWdlKCkpOwogCkBAIC00NDMsMTQgKzQ0MiwxNCBAQCB2b2lkIE5hdmlnYXRp
b25TY2hlZHVsZXI6OnNjaGVkdWxlRm9ybVN1Ym1pc3Npb24oUGFzc1JlZlB0cjxGb3JtU3VibWlz
c2lvbj4gc3VibQogICAgIC8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MzIzODMgZm9yIHRoZSBvcmlnaW5hbCBtb3RpdmF0aW9uIGZvciB0aGlzLgogICAgIExv
Y2tCYWNrRm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3YXJkTGlzdCA9IG11c3RMb2NrQmFja0Zvcndh
cmRMaXN0KG1fZnJhbWUpOwogICAgIGlmIChsb2NrQmFja0ZvcndhcmRMaXN0ID09IExvY2tCYWNr
Rm9yd2FyZExpc3Q6Ok5vCi0gICAgICAgICYmIChzdWJtaXNzaW9uLT5zdGF0ZSgpLT5mb3JtU3Vi
bWlzc2lvblRyaWdnZXIoKSA9PSBTdWJtaXR0ZWRCeUphdmFTY3JpcHQgJiYgbV9mcmFtZS50cmVl
KCkucGFyZW50KCkgJiYgIVVzZXJHZXN0dXJlSW5kaWNhdG9yOjpwcm9jZXNzaW5nVXNlckdlc3R1
cmUoKSkpIHsKKyAgICAgICAgJiYgKHN1Ym1pc3Npb24tPnN0YXRlKCkuZm9ybVN1Ym1pc3Npb25U
cmlnZ2VyKCkgPT0gU3VibWl0dGVkQnlKYXZhU2NyaXB0ICYmIG1fZnJhbWUudHJlZSgpLnBhcmVu
dCgpICYmICFVc2VyR2VzdHVyZUluZGljYXRvcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkpKSB7
CiAgICAgICAgIGxvY2tCYWNrRm9yd2FyZExpc3QgPSBMb2NrQmFja0ZvcndhcmRMaXN0OjpZZXM7
CiAgICAgfQogICAgIAotICAgIHNjaGVkdWxlKHN0ZDo6bWFrZV91bmlxdWU8U2NoZWR1bGVkRm9y
bVN1Ym1pc3Npb24+KHN1Ym1pc3Npb24sIGxvY2tCYWNrRm9yd2FyZExpc3QsIGR1cmluZ0xvYWQp
KTsKKyAgICBzY2hlZHVsZShzdGQ6Om1ha2VfdW5pcXVlPFNjaGVkdWxlZEZvcm1TdWJtaXNzaW9u
PihXVEZNb3ZlKHN1Ym1pc3Npb24pLCBsb2NrQmFja0ZvcndhcmRMaXN0LCBkdXJpbmdMb2FkKSk7
CiB9CiAKLXZvaWQgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2NoZWR1bGVSZWZyZXNoKERvY3VtZW50
KiBpbml0aWF0aW5nRG9jdW1lbnQpCit2b2lkIE5hdmlnYXRpb25TY2hlZHVsZXI6OnNjaGVkdWxl
UmVmcmVzaChEb2N1bWVudCYgaW5pdGlhdGluZ0RvY3VtZW50KQogewogICAgIGlmICghc2hvdWxk
U2NoZWR1bGVOYXZpZ2F0aW9uKCkpCiAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5oCmluZGV4IDQ5YzQzYmUyYmIxNWViYTgwNTY1NzY2
MTJkMTVkMWFiY2YzMDc3MTcuLjBhZTE3MTE0NThjMzc0NmY3NzgxNmZlZDkzNjdiYTQ4YmY2MTZm
ZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVy
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL05hdmlnYXRpb25TY2hlZHVsZXIuaApAQCAt
MSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNiBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDgsIDIwMDkgVG9yY2gg
TW9iaWxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4gKGh0dHA6Ly93d3cudG9yY2htb2JpbGUu
Y29tLykKICAqIENvcHlyaWdodCAoQykgMjAwOSBBZGFtIEJhcnRoLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgogICoKQEAgLTY4LDEwICs2OCwxMCBAQCBwdWJsaWM6CiAgICAgYm9vbCByZWRpcmVjdFNj
aGVkdWxlZER1cmluZ0xvYWQoKTsKICAgICBib29sIGxvY2F0aW9uQ2hhbmdlUGVuZGluZygpOwog
Ci0gICAgdm9pZCBzY2hlZHVsZVJlZGlyZWN0KERvY3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQs
IGRvdWJsZSBkZWxheSwgY29uc3QgVVJMJik7Ci0gICAgdm9pZCBzY2hlZHVsZUxvY2F0aW9uQ2hh
bmdlKERvY3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQsIFNlY3VyaXR5T3JpZ2luKiwgY29uc3Qg
VVJMJiwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgTG9ja0hpc3RvcnkgPSBMb2NrSGlzdG9yeTo6
WWVzLCBMb2NrQmFja0ZvcndhcmRMaXN0ID0gTG9ja0JhY2tGb3J3YXJkTGlzdDo6WWVzKTsKLSAg
ICB2b2lkIHNjaGVkdWxlRm9ybVN1Ym1pc3Npb24oUGFzc1JlZlB0cjxGb3JtU3VibWlzc2lvbj4p
OwotICAgIHZvaWQgc2NoZWR1bGVSZWZyZXNoKERvY3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQp
OworICAgIHZvaWQgc2NoZWR1bGVSZWRpcmVjdChEb2N1bWVudCYgaW5pdGlhdGluZ0RvY3VtZW50
LCBkb3VibGUgZGVsYXksIGNvbnN0IFVSTCYpOworICAgIHZvaWQgc2NoZWR1bGVMb2NhdGlvbkNo
YW5nZShEb2N1bWVudCYgaW5pdGlhdGluZ0RvY3VtZW50LCBTZWN1cml0eU9yaWdpbiosIGNvbnN0
IFVSTCYsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIExvY2tIaXN0b3J5ID0gTG9ja0hpc3Rvcnk6
OlllcywgTG9ja0JhY2tGb3J3YXJkTGlzdCA9IExvY2tCYWNrRm9yd2FyZExpc3Q6Olllcyk7Cisg
ICAgdm9pZCBzY2hlZHVsZUZvcm1TdWJtaXNzaW9uKFJlZjxGb3JtU3VibWlzc2lvbj4mJik7Cisg
ICAgdm9pZCBzY2hlZHVsZVJlZnJlc2goRG9jdW1lbnQmIGluaXRpYXRpbmdEb2N1bWVudCk7CiAg
ICAgdm9pZCBzY2hlZHVsZUhpc3RvcnlOYXZpZ2F0aW9uKGludCBzdGVwcyk7CiAgICAgdm9pZCBz
Y2hlZHVsZVBhZ2VCbG9jayhEb2N1bWVudCYgb3JpZ2luRG9jdW1lbnQpOwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcAppbmRleCA5ZTJhYmRhZGNhMTc4MWFkMTA1YzM5
NDlmMmYwY2QxMGZlZWFhZDdhLi4zNjUwZWJiNTg4ZDgwMmE4NjFlMzMwYTFlZDc3MDBhOTUzYzY3
ZjQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5jcHAKQEAgLTE5MSw3
ICsxOTEsNyBAQCB2b2lkIFJlc291cmNlTG9hZGVyOjpzdGFydCgpCiAgICAgICAgIHJldHVybjsK
ICNlbmRpZgogCi0gICAgaWYgKG1fZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCktPm1heWJlTG9hZFJlc291cmNlKCp0aGlzLCBtX3JlcXVlc3QsIG1fcmVxdWVzdC51cmwoKSkp
CisgICAgaWYgKG1fZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWF5YmVM
b2FkUmVzb3VyY2UoKnRoaXMsIG1fcmVxdWVzdCwgbV9yZXF1ZXN0LnVybCgpKSkKICAgICAgICAg
cmV0dXJuOwogCiAgICAgaWYgKG1fZGVmZXJzTG9hZGluZykgewpAQCAtNjA3LDcgKzYwNyw3IEBA
IFJlc291cmNlRXJyb3IgUmVzb3VyY2VMb2FkZXI6OmNhbm5vdFNob3dVUkxFcnJvcigpCiAKIFJl
c291cmNlUmVxdWVzdCBSZXNvdXJjZUxvYWRlcjo6d2lsbFNlbmRSZXF1ZXN0KFJlc291cmNlSGFu
ZGxlKiwgUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCwgUmVzb3VyY2VSZXNwb25zZSYmIHJlZGly
ZWN0UmVzcG9uc2UpCiB7Ci0gICAgaWYgKGRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KCktPm1heWJlTG9hZEZhbGxiYWNrRm9yUmVkaXJlY3QodGhpcywgcmVxdWVzdCwgcmVk
aXJlY3RSZXNwb25zZSkpCisgICAgaWYgKGRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KCkubWF5YmVMb2FkRmFsbGJhY2tGb3JSZWRpcmVjdCh0aGlzLCByZXF1ZXN0LCByZWRp
cmVjdFJlc3BvbnNlKSkKICAgICAgICAgcmV0dXJuIFdURk1vdmUocmVxdWVzdCk7CiAgICAgd2ls
bFNlbmRSZXF1ZXN0SW50ZXJuYWwocmVxdWVzdCwgcmVkaXJlY3RSZXNwb25zZSk7CiAgICAgcmV0
dXJuIFdURk1vdmUocmVxdWVzdCk7CkBAIC02MjAsNyArNjIwLDcgQEAgdm9pZCBSZXNvdXJjZUxv
YWRlcjo6ZGlkU2VuZERhdGEoUmVzb3VyY2VIYW5kbGUqLCB1bnNpZ25lZCBsb25nIGxvbmcgYnl0
ZXNTZW50LAogCiB2b2lkIFJlc291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3Vy
Y2VIYW5kbGUqLCBSZXNvdXJjZVJlc3BvbnNlJiYgcmVzcG9uc2UpCiB7Ci0gICAgaWYgKGRvY3Vt
ZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZEZhbGxiYWNrRm9y
UmVzcG9uc2UodGhpcywgcmVzcG9uc2UpKQorICAgIGlmIChkb2N1bWVudExvYWRlcigpLT5hcHBs
aWNhdGlvbkNhY2hlSG9zdCgpLm1heWJlTG9hZEZhbGxiYWNrRm9yUmVzcG9uc2UodGhpcywgcmVz
cG9uc2UpKQogICAgICAgICByZXR1cm47CiAgICAgZGlkUmVjZWl2ZVJlc3BvbnNlKHJlc3BvbnNl
KTsKIH0KQEAgLTY0Miw3ICs2NDIsNyBAQCB2b2lkIFJlc291cmNlTG9hZGVyOjpkaWRGaW5pc2hM
b2FkaW5nKFJlc291cmNlSGFuZGxlKiwgZG91YmxlIGZpbmlzaFRpbWUpCiAKIHZvaWQgUmVzb3Vy
Y2VMb2FkZXI6OmRpZEZhaWwoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBSZXNvdXJjZUVycm9yJiBl
cnJvcikKIHsKLSAgICBpZiAoZG9jdW1lbnRMb2FkZXIoKS0+YXBwbGljYXRpb25DYWNoZUhvc3Qo
KS0+bWF5YmVMb2FkRmFsbGJhY2tGb3JFcnJvcih0aGlzLCBlcnJvcikpCisgICAgaWYgKGRvY3Vt
ZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWF5YmVMb2FkRmFsbGJhY2tGb3JF
cnJvcih0aGlzLCBlcnJvcikpCiAgICAgICAgIHJldHVybjsKICAgICBkaWRGYWlsKGVycm9yKTsK
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJmcmFtZUxvYWRlci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3ViZnJhbWVMb2FkZXIuY3BwCmluZGV4IGFmNmMxNjQ0
MmUxZTJlNTMzZjMwMzNmMDA0ZjNmNzc5ODgwZjFmMWYuLjAxYWU1M2E4Y2Q2MzBjZWExOTJmYzM1
MDhkODQyOTM4YWYyNzg2YTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJm
cmFtZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YmZyYW1lTG9hZGVy
LmNwcApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNiBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDggTm9r
aWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCiAgKiBDb3B5cmlnaHQg
KEMpIDIwMDgsIDIwMDkgVG9yY2ggTW9iaWxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4gKGh0
dHA6Ly93d3cudG9yY2htb2JpbGUuY29tLykKICAqIENvcHlyaWdodCAoQykgMjAwOCBBbHAgVG9r
ZXIgPGFscEBhdG9rZXIuY29tPgpAQCAtMTA5LDIzICsxMDksMjUgQEAgYm9vbCBTdWJmcmFtZUxv
YWRlcjo6cmVzb3VyY2VXaWxsVXNlUGx1Z2luKGNvbnN0IFN0cmluZyYgdXJsLCBjb25zdCBTdHJp
bmcmIG1pbWUKIAogYm9vbCBTdWJmcmFtZUxvYWRlcjo6cGx1Z2luSXNMb2FkYWJsZShjb25zdCBV
UkwmIHVybCwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkKIHsKKyAgICBhdXRvKiBkb2N1bWVudCA9
IG1fZnJhbWUuZG9jdW1lbnQoKTsKKwogICAgIGlmIChNSU1FVHlwZVJlZ2lzdHJ5Ojppc0phdmFB
cHBsZXRNSU1FVHlwZShtaW1lVHlwZSkpIHsKICAgICAgICAgaWYgKCFtX2ZyYW1lLnNldHRpbmdz
KCkuaXNKYXZhRW5hYmxlZCgpKQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICBp
ZiAoZG9jdW1lbnQoKSAmJiBkb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5pc0xvY2FsKCkg
JiYgIW1fZnJhbWUuc2V0dGluZ3MoKS5pc0phdmFFbmFibGVkRm9yTG9jYWxGaWxlcygpKQorICAg
ICAgICBpZiAoZG9jdW1lbnQgJiYgZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCktPmlzTG9jYWwo
KSAmJiAhbV9mcmFtZS5zZXR0aW5ncygpLmlzSmF2YUVuYWJsZWRGb3JMb2NhbEZpbGVzKCkpCiAg
ICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogCi0gICAgaWYgKGRvY3VtZW50KCkpIHsK
LSAgICAgICAgaWYgKGRvY3VtZW50KCktPmlzU2FuZGJveGVkKFNhbmRib3hQbHVnaW5zKSkKKyAg
ICBpZiAoZG9jdW1lbnQpIHsKKyAgICAgICAgaWYgKGRvY3VtZW50LT5pc1NhbmRib3hlZChTYW5k
Ym94UGx1Z2lucykpCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAgICAgICAgaWYgKCFk
b2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5jYW5EaXNwbGF5KHVybCkpIHsKKyAgICAgICAg
aWYgKCFkb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuRGlzcGxheSh1cmwpKSB7CiAgICAg
ICAgICAgICBGcmFtZUxvYWRlcjo6cmVwb3J0TG9jYWxMb2FkRmFpbGVkKCZtX2ZyYW1lLCB1cmwu
c3RyaW5nKCkpOwogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICB9CiAKLSAgICAg
ICAgaWYgKCFtX2ZyYW1lLmxvYWRlcigpLm1peGVkQ29udGVudENoZWNrZXIoKS5jYW5SdW5JbnNl
Y3VyZUNvbnRlbnQoZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSwgdXJsKSkKKyAgICAgICAg
aWYgKCFtX2ZyYW1lLmxvYWRlcigpLm1peGVkQ29udGVudENoZWNrZXIoKS5jYW5SdW5JbnNlY3Vy
ZUNvbnRlbnQoZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCksIHVybCkpCiAgICAgICAgICAgICBy
ZXR1cm4gZmFsc2U7CiAgICAgfQogCkBAIC0yMDYsMTggKzIwOCwyMCBAQCBib29sIFN1YmZyYW1l
TG9hZGVyOjpyZXF1ZXN0T2JqZWN0KEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQmIG93bmVyRWxlbWVu
dCwgY29uc3QgUwogICAgIGlmICh1cmwuaXNFbXB0eSgpICYmIG1pbWVUeXBlLmlzRW1wdHkoKSkK
ICAgICAgICAgcmV0dXJuIGZhbHNlOwogCisgICAgYXV0byYgZG9jdW1lbnQgPSBvd25lckVsZW1l
bnQuZG9jdW1lbnQoKTsKKwogICAgIFVSTCBjb21wbGV0ZWRVUkw7CiAgICAgaWYgKCF1cmwuaXNF
bXB0eSgpKQogICAgICAgICBjb21wbGV0ZWRVUkwgPSBjb21wbGV0ZVVSTCh1cmwpOwogCi0gICAg
ZG9jdW1lbnQoKS0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPnVwZ3JhZGVJbnNlY3VyZVJlcXVl
c3RJZk5lZWRlZChjb21wbGV0ZWRVUkwsIENvbnRlbnRTZWN1cml0eVBvbGljeTo6SW5zZWN1cmVS
ZXF1ZXN0VHlwZTo6TG9hZCk7CisgICAgZG9jdW1lbnQuY29udGVudFNlY3VyaXR5UG9saWN5KCkt
PnVwZ3JhZGVJbnNlY3VyZVJlcXVlc3RJZk5lZWRlZChjb21wbGV0ZWRVUkwsIENvbnRlbnRTZWN1
cml0eVBvbGljeTo6SW5zZWN1cmVSZXF1ZXN0VHlwZTo6TG9hZCk7CiAKICAgICBib29sIGhhc0Zh
bGxiYWNrQ29udGVudCA9IGlzPEhUTUxPYmplY3RFbGVtZW50Pihvd25lckVsZW1lbnQpICYmIGRv
d25jYXN0PEhUTUxPYmplY3RFbGVtZW50Pihvd25lckVsZW1lbnQpLmhhc0ZhbGxiYWNrQ29udGVu
dCgpOwogCiAgICAgYm9vbCB1c2VGYWxsYmFjazsKICAgICBpZiAoc2hvdWxkVXNlUGx1Z2luKGNv
bXBsZXRlZFVSTCwgbWltZVR5cGUsIGhhc0ZhbGxiYWNrQ29udGVudCwgdXNlRmFsbGJhY2spKSB7
CiAgICAgICAgIGJvb2wgc3VjY2VzcyA9IHJlcXVlc3RQbHVnaW4ob3duZXJFbGVtZW50LCBjb21w
bGV0ZWRVUkwsIG1pbWVUeXBlLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcywgdXNlRmFsbGJhY2sp
OwotICAgICAgICBsb2dQbHVnaW5SZXF1ZXN0KGRvY3VtZW50KCktPnBhZ2UoKSwgbWltZVR5cGUs
IGNvbXBsZXRlZFVSTCwgc3VjY2Vzcyk7CisgICAgICAgIGxvZ1BsdWdpblJlcXVlc3QoZG9jdW1l
bnQucGFnZSgpLCBtaW1lVHlwZSwgY29tcGxldGVkVVJMLCBzdWNjZXNzKTsKICAgICAgICAgcmV0
dXJuIHN1Y2Nlc3M7CiAgICAgfQogCkBAIC0yMjcsNyArMjMxLDcgQEAgYm9vbCBTdWJmcmFtZUxv
YWRlcjo6cmVxdWVzdE9iamVjdChIVE1MUGx1Z0luSW1hZ2VFbGVtZW50JiBvd25lckVsZW1lbnQs
IGNvbnN0IFMKICAgICByZXR1cm4gbG9hZE9yUmVkaXJlY3RTdWJmcmFtZShvd25lckVsZW1lbnQs
IGNvbXBsZXRlZFVSTCwgZnJhbWVOYW1lLCBMb2NrSGlzdG9yeTo6WWVzLCBMb2NrQmFja0Zvcndh
cmRMaXN0OjpZZXMpOwogfQogCi1QYXNzUmVmUHRyPFdpZGdldD4gU3ViZnJhbWVMb2FkZXI6OmNy
ZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYgc2l6ZSwgSFRNTEFwcGxldEVsZW1l
bnQmIGVsZW1lbnQsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0
b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpCitSZWZQdHI8V2lkZ2V0PiBTdWJmcmFtZUxvYWRlcjo6
Y3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXplJiBzaXplLCBIVE1MQXBwbGV0RWxl
bWVudCYgZWxlbWVudCwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZl
Y3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykKIHsKICAgICBTdHJpbmcgYmFzZVVSTFN0cmluZzsK
ICAgICBTdHJpbmcgY29kZUJhc2VVUkxTdHJpbmc7CkBAIC0yNTYsMTQgKzI2MCwxNCBAQCBQYXNz
UmVmUHRyPFdpZGdldD4gU3ViZnJhbWVMb2FkZXI6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29u
c3QgSW50U2l6ZSYgc2l6ZSwgSAogICAgIH0KIAogICAgIGlmIChiYXNlVVJMU3RyaW5nLmlzRW1w
dHkoKSkKLSAgICAgICAgYmFzZVVSTFN0cmluZyA9IG1fZnJhbWUuZG9jdW1lbnQoKS0+YmFzZVVS
TCgpLnN0cmluZygpOworICAgICAgICBiYXNlVVJMU3RyaW5nID0gZWxlbWVudC5kb2N1bWVudCgp
LmJhc2VVUkwoKS5zdHJpbmcoKTsKICAgICBVUkwgYmFzZVVSTCA9IGNvbXBsZXRlVVJMKGJhc2VV
UkxTdHJpbmcpOwogCiAgICAgUmVmUHRyPFdpZGdldD4gd2lkZ2V0OwogICAgIGlmIChhbGxvd1Bs
dWdpbnMoKSkKLSAgICAgICAgd2lkZ2V0ID0gbV9mcmFtZS5sb2FkZXIoKS5jbGllbnQoKS5jcmVh
dGVKYXZhQXBwbGV0V2lkZ2V0KHNpemUsICZlbGVtZW50LCBiYXNlVVJMLCBwYXJhbU5hbWVzLCBw
YXJhbVZhbHVlcyk7CisgICAgICAgIHdpZGdldCA9IG1fZnJhbWUubG9hZGVyKCkuY2xpZW50KCku
Y3JlYXRlSmF2YUFwcGxldFdpZGdldChzaXplLCBlbGVtZW50LCBiYXNlVVJMLCBwYXJhbU5hbWVz
LCBwYXJhbVZhbHVlcyk7CiAKLSAgICBsb2dQbHVnaW5SZXF1ZXN0KGRvY3VtZW50KCktPnBhZ2Uo
KSwgZWxlbWVudC5zZXJ2aWNlVHlwZSgpLCBTdHJpbmcoKSwgd2lkZ2V0KTsKKyAgICBsb2dQbHVn
aW5SZXF1ZXN0KG1fZnJhbWUucGFnZSgpLCBlbGVtZW50LnNlcnZpY2VUeXBlKCksIFN0cmluZygp
LCB3aWRnZXQpOwogCiAgICAgaWYgKCF3aWRnZXQpIHsKICAgICAgICAgUmVuZGVyRW1iZWRkZWRP
YmplY3QqIHJlbmRlcmVyID0gZWxlbWVudC5yZW5kZXJFbWJlZGRlZE9iamVjdCgpOwpAQCAtMjc3
LDE2ICsyODEsMTggQEAgUGFzc1JlZlB0cjxXaWRnZXQ+IFN1YmZyYW1lTG9hZGVyOjpjcmVhdGVK
YXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmIHNpemUsIEgKICAgICByZXR1cm4gd2lkZ2V0
OwogfQogCi1GcmFtZSogU3ViZnJhbWVMb2FkZXI6OmxvYWRPclJlZGlyZWN0U3ViZnJhbWUoSFRN
TEZyYW1lT3duZXJFbGVtZW50JiBvd25lckVsZW1lbnQsIGNvbnN0IFVSTCYgcmVxdWVzdFVybCwg
Y29uc3QgQXRvbWljU3RyaW5nJiBmcmFtZU5hbWUsIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBM
b2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QpCitGcmFtZSogU3ViZnJhbWVM
b2FkZXI6OmxvYWRPclJlZGlyZWN0U3ViZnJhbWUoSFRNTEZyYW1lT3duZXJFbGVtZW50JiBvd25l
ckVsZW1lbnQsIGNvbnN0IFVSTCYgcmVxdWVzdFVSTCwgY29uc3QgQXRvbWljU3RyaW5nJiBmcmFt
ZU5hbWUsIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tC
YWNrRm9yd2FyZExpc3QpCiB7Ci0gICAgVVJMIHVybCA9IHJlcXVlc3RVcmw7Ci0gICAgb3duZXJF
bGVtZW50LmRvY3VtZW50KCkuY29udGVudFNlY3VyaXR5UG9saWN5KCktPnVwZ3JhZGVJbnNlY3Vy
ZVJlcXVlc3RJZk5lZWRlZCh1cmwsIENvbnRlbnRTZWN1cml0eVBvbGljeTo6SW5zZWN1cmVSZXF1
ZXN0VHlwZTo6TG9hZCk7CisgICAgYXV0byYgaW5pdGlhdGluZ0RvY3VtZW50ID0gb3duZXJFbGVt
ZW50LmRvY3VtZW50KCk7CisKKyAgICBVUkwgdXBncmFkZWRSZXF1ZXN0VVJMID0gcmVxdWVzdFVS
TDsKKyAgICBpbml0aWF0aW5nRG9jdW1lbnQuY29udGVudFNlY3VyaXR5UG9saWN5KCktPnVwZ3Jh
ZGVJbnNlY3VyZVJlcXVlc3RJZk5lZWRlZCh1cGdyYWRlZFJlcXVlc3RVUkwsIENvbnRlbnRTZWN1
cml0eVBvbGljeTo6SW5zZWN1cmVSZXF1ZXN0VHlwZTo6TG9hZCk7CiAKLSAgICBGcmFtZSogZnJh
bWUgPSBvd25lckVsZW1lbnQuY29udGVudEZyYW1lKCk7CisgICAgYXV0byogZnJhbWUgPSBvd25l
ckVsZW1lbnQuY29udGVudEZyYW1lKCk7CiAgICAgaWYgKGZyYW1lKQotICAgICAgICBmcmFtZS0+
bmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UobV9mcmFtZS5kb2N1
bWVudCgpLCBtX2ZyYW1lLmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCksIHVybCwgbV9mcmFt
ZS5sb2FkZXIoKS5vdXRnb2luZ1JlZmVycmVyKCksIGxvY2tIaXN0b3J5LCBsb2NrQmFja0Zvcndh
cmRMaXN0KTsKKyAgICAgICAgZnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxv
Y2F0aW9uQ2hhbmdlKGluaXRpYXRpbmdEb2N1bWVudCwgaW5pdGlhdGluZ0RvY3VtZW50LnNlY3Vy
aXR5T3JpZ2luKCksIHVwZ3JhZGVkUmVxdWVzdFVSTCwgbV9mcmFtZS5sb2FkZXIoKS5vdXRnb2lu
Z1JlZmVycmVyKCksIGxvY2tIaXN0b3J5LCBsb2NrQmFja0ZvcndhcmRMaXN0KTsKICAgICBlbHNl
Ci0gICAgICAgIGZyYW1lID0gbG9hZFN1YmZyYW1lKG93bmVyRWxlbWVudCwgdXJsLCBmcmFtZU5h
bWUsIG1fZnJhbWUubG9hZGVyKCkub3V0Z29pbmdSZWZlcnJlcigpKTsKKyAgICAgICAgZnJhbWUg
PSBsb2FkU3ViZnJhbWUob3duZXJFbGVtZW50LCB1cGdyYWRlZFJlcXVlc3RVUkwsIGZyYW1lTmFt
ZSwgbV9mcmFtZS5sb2FkZXIoKS5vdXRnb2luZ1JlZmVycmVyKCkpOwogCiAgICAgaWYgKCFmcmFt
ZSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CkBAIC0zMDMsMTMgKzMwOSwxNSBAQCBGcmFtZSog
U3ViZnJhbWVMb2FkZXI6OmxvYWRTdWJmcmFtZShIVE1MRnJhbWVPd25lckVsZW1lbnQmIG93bmVy
RWxlbWVudCwgY29uc3QgVQogICAgIGludCBtYXJnaW5XaWR0aCA9IC0xOwogICAgIGludCBtYXJn
aW5IZWlnaHQgPSAtMTsKICAgICBpZiAoaXM8SFRNTEZyYW1lRWxlbWVudEJhc2U+KG93bmVyRWxl
bWVudCkpIHsKLSAgICAgICAgSFRNTEZyYW1lRWxlbWVudEJhc2UmIGZyYW1lRWxlbWVudEJhc2Ug
PSBkb3duY2FzdDxIVE1MRnJhbWVFbGVtZW50QmFzZT4ob3duZXJFbGVtZW50KTsKKyAgICAgICAg
YXV0byYgZnJhbWVFbGVtZW50QmFzZSA9IGRvd25jYXN0PEhUTUxGcmFtZUVsZW1lbnRCYXNlPihv
d25lckVsZW1lbnQpOwogICAgICAgICBhbGxvd3NTY3JvbGxpbmcgPSBmcmFtZUVsZW1lbnRCYXNl
LnNjcm9sbGluZ01vZGUoKSAhPSBTY3JvbGxiYXJBbHdheXNPZmY7CiAgICAgICAgIG1hcmdpbldp
ZHRoID0gZnJhbWVFbGVtZW50QmFzZS5tYXJnaW5XaWR0aCgpOwogICAgICAgICBtYXJnaW5IZWln
aHQgPSBmcmFtZUVsZW1lbnRCYXNlLm1hcmdpbkhlaWdodCgpOwogICAgIH0KIAotICAgIGlmICgh
b3duZXJFbGVtZW50LmRvY3VtZW50KCkuc2VjdXJpdHlPcmlnaW4oKS0+Y2FuRGlzcGxheSh1cmwp
KSB7CisgICAgYXV0byBkb2N1bWVudCA9IG1ha2VSZWYob3duZXJFbGVtZW50LmRvY3VtZW50KCkp
OworCisgICAgaWYgKCFkb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuRGlzcGxheSh1cmwp
KSB7CiAgICAgICAgIEZyYW1lTG9hZGVyOjpyZXBvcnRMb2NhbExvYWRGYWlsZWQoJm1fZnJhbWUs
IHVybC5zdHJpbmcoKSk7CiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIH0KQEAgLTMxNywy
MCArMzI1LDIwIEBAIEZyYW1lKiBTdWJmcmFtZUxvYWRlcjo6bG9hZFN1YmZyYW1lKEhUTUxGcmFt
ZU93bmVyRWxlbWVudCYgb3duZXJFbGVtZW50LCBjb25zdCBVCiAgICAgaWYgKCFTdWJmcmFtZUxv
YWRpbmdEaXNhYmxlcjo6Y2FuTG9hZEZyYW1lKG93bmVyRWxlbWVudCkpCiAgICAgICAgIHJldHVy
biBudWxscHRyOwogCi0gICAgU3RyaW5nIHJlZmVycmVyVG9Vc2UgPSBTZWN1cml0eVBvbGljeTo6
Z2VuZXJhdGVSZWZlcnJlckhlYWRlcihvd25lckVsZW1lbnQuZG9jdW1lbnQoKS5yZWZlcnJlclBv
bGljeSgpLCB1cmwsIHJlZmVycmVyKTsKKyAgICBTdHJpbmcgcmVmZXJyZXJUb1VzZSA9IFNlY3Vy
aXR5UG9saWN5OjpnZW5lcmF0ZVJlZmVycmVySGVhZGVyKGRvY3VtZW50LT5yZWZlcnJlclBvbGlj
eSgpLCB1cmwsIHJlZmVycmVyKTsKIAogICAgIC8vIFByZXZlbnQgaW5pdGlhbCBlbXB0eSBkb2N1
bWVudCBsb2FkIGZyb20gdHJpZ2dlcmluZyBsb2FkIGV2ZW50cy4KLSAgICBtX2ZyYW1lLmRvY3Vt
ZW50KCktPmluY3JlbWVudExvYWRFdmVudERlbGF5Q291bnQoKTsKKyAgICBkb2N1bWVudC0+aW5j
cmVtZW50TG9hZEV2ZW50RGVsYXlDb3VudCgpOwogCi0gICAgUmVmUHRyPEZyYW1lPiBmcmFtZSA9
IG1fZnJhbWUubG9hZGVyKCkuY2xpZW50KCkuY3JlYXRlRnJhbWUodXJsLCBuYW1lLCAmb3duZXJF
bGVtZW50LCByZWZlcnJlclRvVXNlLCBhbGxvd3NTY3JvbGxpbmcsIG1hcmdpbldpZHRoLCBtYXJn
aW5IZWlnaHQpOworICAgIGF1dG8gZnJhbWUgPSBtX2ZyYW1lLmxvYWRlcigpLmNsaWVudCgpLmNy
ZWF0ZUZyYW1lKHVybCwgbmFtZSwgb3duZXJFbGVtZW50LCByZWZlcnJlclRvVXNlLCBhbGxvd3NT
Y3JvbGxpbmcsIG1hcmdpbldpZHRoLCBtYXJnaW5IZWlnaHQpOwogCi0gICAgbV9mcmFtZS5kb2N1
bWVudCgpLT5kZWNyZW1lbnRMb2FkRXZlbnREZWxheUNvdW50KCk7CisgICAgZG9jdW1lbnQtPmRl
Y3JlbWVudExvYWRFdmVudERlbGF5Q291bnQoKTsKIAogICAgIGlmICghZnJhbWUpICB7CiAgICAg
ICAgIG1fZnJhbWUubG9hZGVyKCkuY2hlY2tDYWxsSW1wbGljaXRDbG9zZSgpOwogICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKICAgICB9Ci0gICAgCisKICAgICAvLyBBbGwgbmV3IGZyYW1lcyB3aWxs
IGhhdmUgbV9pc0NvbXBsZXRlIHNldCB0byB0cnVlIGF0IHRoaXMgcG9pbnQgZHVlIHRvIHN5bmNo
cm9ub3VzbHkgbG9hZGluZwogICAgIC8vIGFuIGVtcHR5IGRvY3VtZW50IGluIEZyYW1lTG9hZGVy
Ojppbml0KCkuIEJ1dCBtYW55IGZyYW1lcyB3aWxsIG5vdyBiZSBzdGFydGluZyBhbgogICAgIC8v
IGFzeW5jaHJvbm91cyBsb2FkIG9mIHVybCwgc28gd2Ugc2V0IG1faXNDb21wbGV0ZSB0byBmYWxz
ZSBhbmQgdGhlbiBjaGVjayBpZiB0aGUgbG9hZCBpcwpAQCAtMzQwLDEyICszNDgsMTIgQEAgRnJh
bWUqIFN1YmZyYW1lTG9hZGVyOjpsb2FkU3ViZnJhbWUoSFRNTEZyYW1lT3duZXJFbGVtZW50JiBv
d25lckVsZW1lbnQsIGNvbnN0IFUKICAgICBmcmFtZS0+bG9hZGVyKCkuc3RhcnRlZCgpOwogICAg
CiAgICAgYXV0byogcmVuZGVyZXIgPSBvd25lckVsZW1lbnQucmVuZGVyZXIoKTsKLSAgICBGcmFt
ZVZpZXcqIHZpZXcgPSBmcmFtZS0+dmlldygpOworICAgIGF1dG8qIHZpZXcgPSBmcmFtZS0+dmll
dygpOwogICAgIGlmIChpczxSZW5kZXJXaWRnZXQ+KHJlbmRlcmVyKSAmJiB2aWV3KQogICAgICAg
ICBkb3duY2FzdDxSZW5kZXJXaWRnZXQ+KCpyZW5kZXJlcikuc2V0V2lkZ2V0KHZpZXcpOwotICAg
IAorCiAgICAgbV9mcmFtZS5sb2FkZXIoKS5jaGVja0NhbGxJbXBsaWNpdENsb3NlKCk7Ci0gICAg
CisKICAgICAvLyBTb21lIGxvYWRzIGFyZSBwZXJmb3JtZWQgc3luY2hyb25vdXNseSAoZS5nLiwg
YWJvdXQ6YmxhbmsgYW5kIGxvYWRzCiAgICAgLy8gY2FuY2VsbGVkIGJ5IHJldHVybmluZyBhIG51
bGwgUmVzb3VyY2VSZXF1ZXN0IGZyb20gcmVxdWVzdEZyb21EZWxlZ2F0ZSkuCiAgICAgLy8gSW4g
dGhlc2UgY2FzZXMsIHRoZSBzeW5jaHJvbm91cyBsb2FkIHdvdWxkIGhhdmUgZmluaXNoZWQKQEAg
LTM4MSwxNyArMzg5LDE0IEBAIGJvb2wgU3ViZnJhbWVMb2FkZXI6OnNob3VsZFVzZVBsdWdpbihj
b25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgYm9vCiAgICAgcmV0dXJuIG9i
amVjdFR5cGUgPT0gT2JqZWN0Q29udGVudFR5cGU6Ok5vbmUgfHwgb2JqZWN0VHlwZSA9PSBPYmpl
Y3RDb250ZW50VHlwZTo6UGx1Z0luOwogfQogCi1Eb2N1bWVudCogU3ViZnJhbWVMb2FkZXI6OmRv
Y3VtZW50KCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9mcmFtZS5kb2N1bWVudCgpOwotfQotCiBi
b29sIFN1YmZyYW1lTG9hZGVyOjpsb2FkUGx1Z2luKEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQmIHBs
dWdpbkVsZW1lbnQsIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlLCBjb25z
dCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFt
VmFsdWVzLCBib29sIHVzZUZhbGxiYWNrKQogewogICAgIGlmICh1c2VGYWxsYmFjaykKICAgICAg
ICAgcmV0dXJuIGZhbHNlOwogCi0gICAgUmVuZGVyRW1iZWRkZWRPYmplY3QqIHJlbmRlcmVyID0g
cGx1Z2luRWxlbWVudC5yZW5kZXJFbWJlZGRlZE9iamVjdCgpOworICAgIGF1dG8mIGRvY3VtZW50
ID0gcGx1Z2luRWxlbWVudC5kb2N1bWVudCgpOworICAgIGF1dG8qIHJlbmRlcmVyID0gcGx1Z2lu
RWxlbWVudC5yZW5kZXJFbWJlZGRlZE9iamVjdCgpOworCiAgICAgLy8gRklYTUU6IFRoaXMgY29k
ZSBzaG91bGQgbm90IGRlcGVuZCBvbiByZW5kZXJlciEKICAgICBpZiAoIXJlbmRlcmVyKQogICAg
ICAgICByZXR1cm4gZmFsc2U7CkBAIC0zOTksMTcgKzQwNCwxOSBAQCBib29sIFN1YmZyYW1lTG9h
ZGVyOjpsb2FkUGx1Z2luKEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQmIHBsdWdpbkVsZW1lbnQsIGNv
bnN0IFVSTAogICAgIHBsdWdpbkVsZW1lbnQuc3ViZnJhbWVMb2FkZXJXaWxsQ3JlYXRlUGx1Z0lu
KHVybCk7CiAKICAgICBJbnRTaXplIGNvbnRlbnRTaXplID0gcm91bmRlZEludFNpemUoTGF5b3V0
U2l6ZShyZW5kZXJlci0+Y29udGVudFdpZHRoKCksIHJlbmRlcmVyLT5jb250ZW50SGVpZ2h0KCkp
KTsKLSAgICBib29sIGxvYWRNYW51YWxseSA9IGlzPFBsdWdpbkRvY3VtZW50PigqZG9jdW1lbnQo
KSkgJiYgIW1fY29udGFpbnNQbHVnaW5zICYmIGRvd25jYXN0PFBsdWdpbkRvY3VtZW50PigqZG9j
dW1lbnQoKSkuc2hvdWxkTG9hZFBsdWdpbk1hbnVhbGx5KCk7CisgICAgYm9vbCBsb2FkTWFudWFs
bHkgPSBpczxQbHVnaW5Eb2N1bWVudD4oZG9jdW1lbnQpICYmICFtX2NvbnRhaW5zUGx1Z2lucyAm
JiBkb3duY2FzdDxQbHVnaW5Eb2N1bWVudD4oZG9jdW1lbnQpLnNob3VsZExvYWRQbHVnaW5NYW51
YWxseSgpOwogCiAjaWYgUExBVEZPUk0oSU9TKQogICAgIC8vIE9uIGlPUywgd2Ugb25seSB0ZWxs
IHRoZSBwbHVnaW4gdG8gYmUgaW4gZnVsbCBwYWdlIG1vZGUgaWYgdGhlIGNvbnRhaW5pbmcgcGx1
Z2luIGRvY3VtZW50IGlzIHRoZSB0b3AgbGV2ZWwgZG9jdW1lbnQuCi0gICAgaWYgKGRvY3VtZW50
KCktPm93bmVyRWxlbWVudCgpKQorICAgIGlmIChkb2N1bWVudC5vd25lckVsZW1lbnQoKSkKICAg
ICAgICAgbG9hZE1hbnVhbGx5ID0gZmFsc2U7CiAjZW5kaWYKIAotICAgIFdlYWtQdHI8UmVuZGVy
V2lkZ2V0PiB3ZWFrUmVuZGVyZXIgPSByZW5kZXJlci0+Y3JlYXRlV2Vha1B0cigpOwotICAgIC8v
IGNyZWF0ZVBsdWdpbiAqbWF5KiBjYXVzZSB0aGlzIHJlbmRlcmVyIHRvIGRpc2FwcGVhciBmcm9t
IHVuZGVybmVhdGguCi0gICAgUmVmUHRyPFdpZGdldD4gd2lkZ2V0ID0gbV9mcmFtZS5sb2FkZXIo
KS5jbGllbnQoKS5jcmVhdGVQbHVnaW4oY29udGVudFNpemUsICZwbHVnaW5FbGVtZW50LCB1cmws
IHBhcmFtTmFtZXMsIHBhcmFtVmFsdWVzLCBtaW1lVHlwZSwgbG9hZE1hbnVhbGx5KTsKKyAgICBh
dXRvIHdlYWtSZW5kZXJlciA9IHJlbmRlcmVyLT5jcmVhdGVXZWFrUHRyKCk7CisKKyAgICBhdXRv
IHdpZGdldCA9IG1fZnJhbWUubG9hZGVyKCkuY2xpZW50KCkuY3JlYXRlUGx1Z2luKGNvbnRlbnRT
aXplLCBwbHVnaW5FbGVtZW50LCB1cmwsIHBhcmFtTmFtZXMsIHBhcmFtVmFsdWVzLCBtaW1lVHlw
ZSwgbG9hZE1hbnVhbGx5KTsKKworICAgIC8vIFRoZSBjYWxsIHRvIGNyZWF0ZVBsdWdpbiAqbWF5
KiBjYXVzZSB0aGlzIHJlbmRlcmVyIHRvIGRpc2FwcGVhciBmcm9tIHVuZGVybmVhdGguCiAgICAg
aWYgKCF3ZWFrUmVuZGVyZXIpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIApAQCAtNDMzLDkgKzQ0
MCw3IEBAIFVSTCBTdWJmcmFtZUxvYWRlcjo6Y29tcGxldGVVUkwoY29uc3QgU3RyaW5nJiB1cmwp
IGNvbnN0CiAKIGJvb2wgU3ViZnJhbWVMb2FkZXI6OnNob3VsZENvbnZlcnRJbnZhbGlkVVJMc1Rv
QmxhbmsoKSBjb25zdAogewotICAgIGlmIChTZXR0aW5ncyogc2V0dGluZ3MgPSBkb2N1bWVudCgp
ID8gZG9jdW1lbnQoKS0+c2V0dGluZ3MoKSA6IG51bGxwdHIpCi0gICAgICAgIHJldHVybiBzZXR0
aW5ncy0+c2hvdWxkQ29udmVydEludmFsaWRVUkxzVG9CbGFuaygpOwotICAgIHJldHVybiB0cnVl
OworICAgIHJldHVybiBtX2ZyYW1lLnNldHRpbmdzKCkuc2hvdWxkQ29udmVydEludmFsaWRVUkxz
VG9CbGFuaygpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvU3ViZnJhbWVMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9TdWJmcmFtZUxvYWRlci5oCmluZGV4IDk1MTM5NzRiODE3MDVhZWM2NWQxNTUwMjMzOTM1ZDRh
NTQyM2I3ODUuLjEyYmY3NzE3ZTc0MzIzNWNjYzdkYTdkY2NjMzM3ZDQyNjkyYWE5NjEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJmcmFtZUxvYWRlci5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9TdWJmcmFtZUxvYWRlci5oCkBAIC02MSw3ICs2MSw3IEBAIHB1Ymxp
YzoKICAgICBib29sIHJlcXVlc3RPYmplY3QoSFRNTFBsdWdJbkltYWdlRWxlbWVudCYsIGNvbnN0
IFN0cmluZyYgdXJsLCBjb25zdCBBdG9taWNTdHJpbmcmIGZyYW1lTmFtZSwKICAgICAgICAgY29u
c3QgU3RyaW5nJiBzZXJ2aWNlVHlwZSwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMs
IGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcyk7CiAKLSAgICBQYXNzUmVmUHRyPFdp
ZGdldD4gY3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXplJiwgSFRNTEFwcGxldEVs
ZW1lbnQmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0
cmluZz4mIHBhcmFtVmFsdWVzKTsKKyAgICBSZWZQdHI8V2lkZ2V0PiBjcmVhdGVKYXZhQXBwbGV0
V2lkZ2V0KGNvbnN0IEludFNpemUmLCBIVE1MQXBwbGV0RWxlbWVudCYsIGNvbnN0IFZlY3RvcjxT
dHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpOwog
CiAgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBhbGxvd1BsdWdpbnMoKTsKIApAQCAtNzgsMTQgKzc4
LDEyIEBAIHByaXZhdGU6CiAgICAgYm9vbCBzaG91bGRVc2VQbHVnaW4oY29uc3QgVVJMJiwgY29u
c3QgU3RyaW5nJiBtaW1lVHlwZSwgYm9vbCBoYXNGYWxsYmFjaywgYm9vbCYgdXNlRmFsbGJhY2sp
OwogICAgIGJvb2wgcGx1Z2luSXNMb2FkYWJsZShjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIG1p
bWVUeXBlKTsKIAotICAgIERvY3VtZW50KiBkb2N1bWVudCgpIGNvbnN0OworICAgIFVSTCBjb21w
bGV0ZVVSTChjb25zdCBTdHJpbmcmKSBjb25zdDsKIAogICAgIGJvb2wgc2hvdWxkQ29udmVydElu
dmFsaWRVUkxzVG9CbGFuaygpIGNvbnN0OwogCiAgICAgYm9vbCBtX2NvbnRhaW5zUGx1Z2luczsK
ICAgICBGcmFtZSYgbV9mcmFtZTsKLQotICAgIFVSTCBjb21wbGV0ZVVSTChjb25zdCBTdHJpbmcm
KSBjb25zdDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwCmluZGV4IGI2YTYzNDEwZDNlYzY2Zjk1ZTY2MTA1
YWFkZjdjMzMyZjliNDQxYTYuLjZlOTdmYTQ5MWY0MmJhNGNlNTI5MjY1OTE5YjM2YjgzZjUzMWMz
NTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YnJlc291cmNlTG9hZGVyLmNwcApAQCAt
MjU2LDYgKzI1Niw3IEBAIHZvaWQgU3VicmVzb3VyY2VMb2FkZXI6OmRpZFNlbmREYXRhKHVuc2ln
bmVkIGxvbmcgbG9uZyBieXRlc1NlbnQsIHVuc2lnbmVkIGxvbmcKIH0KIAogI2lmIFVTRShRVUlD
S19MT09LKQorCiBib29sIFN1YnJlc291cmNlTG9hZGVyOjpzaG91bGRDcmVhdGVRdWlja0xvb2tI
YW5kbGVGb3JSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkgY29uc3QK
IHsKICAgICBpZiAobV9yZXNvdXJjZS0+dHlwZSgpICE9IENhY2hlZFJlc291cmNlOjpNYWluUmVz
b3VyY2UpCkBAIC0yNjYsNiArMjY3LDcgQEAgYm9vbCBTdWJyZXNvdXJjZUxvYWRlcjo6c2hvdWxk
Q3JlYXRlUXVpY2tMb29rSGFuZGxlRm9yUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXMKIAogICAg
IHJldHVybiBRdWlja0xvb2tIYW5kbGU6OnNob3VsZENyZWF0ZUZvck1JTUVUeXBlKHJlc3BvbnNl
Lm1pbWVUeXBlKCkpOwogfQorCiAjZW5kaWYKIAogdm9pZCBTdWJyZXNvdXJjZUxvYWRlcjo6ZGlk
UmVjZWl2ZVJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGUuY3BwCmlu
ZGV4IDZmODJlMWRjNzk2YTk2MDIwOTFiZDY4MmM5NzQ3YzI0OGI5NTRhZDEuLjYwMDljY2E3NzJm
ZTJiY2E3NjAyYzczMTQ2NzhmZTRhMjQ4YjU5YmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZS5jcHAKQEAgLTQzLDE3ICs0MywxMyBA
QCBzdGF0aWMgaW5saW5lIGJvb2wgZmFsbGJhY2tVUkxMb25nZXJUaGFuKGNvbnN0IHN0ZDo6cGFp
cjxVUkwsIFVSTD4mIGxocywgY29uc3QgcwogfQogCiBBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNh
dGlvbkNhY2hlKCkKLSAgICA6IG1fZ3JvdXAobnVsbHB0cikKLSAgICAsIG1fbWFuaWZlc3QobnVs
bHB0cikKLSAgICAsIG1fZXN0aW1hdGVkU2l6ZUluU3RvcmFnZSgwKQotICAgICwgbV9zdG9yYWdl
SUQoMCkKIHsKIH0KIAogQXBwbGljYXRpb25DYWNoZTo6fkFwcGxpY2F0aW9uQ2FjaGUoKQogewog
ICAgIGlmIChtX2dyb3VwKQotICAgICAgICBtX2dyb3VwLT5jYWNoZURlc3Ryb3llZCh0aGlzKTsK
KyAgICAgICAgbV9ncm91cC0+Y2FjaGVEZXN0cm95ZWQoKnRoaXMpOwogfQogICAgIAogdm9pZCBB
cHBsaWNhdGlvbkNhY2hlOjpzZXRHcm91cChBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwKQpA
QCAtNjQsNTcgKzYwLDM5IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZTo6c2V0R3JvdXAoQXBwbGlj
YXRpb25DYWNoZUdyb3VwKiBncm91cCkKIAogYm9vbCBBcHBsaWNhdGlvbkNhY2hlOjppc0NvbXBs
ZXRlKCkKIHsKLSAgICByZXR1cm4gbV9ncm91cCAmJiBtX2dyb3VwLT5jYWNoZUlzQ29tcGxldGUo
dGhpcyk7CisgICAgcmV0dXJuIG1fZ3JvdXAgJiYgbV9ncm91cC0+Y2FjaGVJc0NvbXBsZXRlKCp0
aGlzKTsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlOjpzZXRNYW5pZmVzdFJlc291cmNlKFBh
c3NSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiBtYW5pZmVzdCkKK3ZvaWQgQXBwbGlj
YXRpb25DYWNoZTo6c2V0TWFuaWZlc3RSZXNvdXJjZShSZWY8QXBwbGljYXRpb25DYWNoZVJlc291
cmNlPiYmIG1hbmlmZXN0KQogewotICAgIEFTU0VSVChtYW5pZmVzdCk7CiAgICAgQVNTRVJUKCFt
X21hbmlmZXN0KTsKICAgICBBU1NFUlQobWFuaWZlc3QtPnR5cGUoKSAmIEFwcGxpY2F0aW9uQ2Fj
aGVSZXNvdXJjZTo6TWFuaWZlc3QpOwotICAgIAotICAgIG1fbWFuaWZlc3QgPSBtYW5pZmVzdC5n
ZXQoKTsKLSAgICAKLSAgICBhZGRSZXNvdXJjZShtYW5pZmVzdCk7CisKKyAgICBtX21hbmlmZXN0
ID0gbWFuaWZlc3QucHRyKCk7CisKKyAgICBhZGRSZXNvdXJjZShXVEZNb3ZlKG1hbmlmZXN0KSk7
CiB9CiAgICAgCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGU6OmFkZFJlc291cmNlKFBhc3NSZWZQdHI8
QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiByZXNvdXJjZSkKK3ZvaWQgQXBwbGljYXRpb25DYWNo
ZTo6YWRkUmVzb3VyY2UoUmVmPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4mJiByZXNvdXJjZSkK
IHsKLSAgICBBU1NFUlQocmVzb3VyY2UpOwotICAgIAotICAgIGNvbnN0IFN0cmluZyYgdXJsID0g
cmVzb3VyY2UtPnVybCgpOwotICAgIAorICAgIGF1dG8mIHVybCA9IHJlc291cmNlLT51cmwoKTsK
KworICAgIEFTU0VSVCghVVJMKFBhcnNlZFVSTFN0cmluZywgdXJsKS5oYXNGcmFnbWVudElkZW50
aWZpZXIoKSk7CiAgICAgQVNTRVJUKCFtX3Jlc291cmNlcy5jb250YWlucyh1cmwpKTsKLSAgICAK
KwogICAgIGlmIChtX3N0b3JhZ2VJRCkgewogICAgICAgICBBU1NFUlQoIXJlc291cmNlLT5zdG9y
YWdlSUQoKSk7CiAgICAgICAgIEFTU0VSVChyZXNvdXJjZS0+dHlwZSgpICYgQXBwbGljYXRpb25D
YWNoZVJlc291cmNlOjpNYXN0ZXIpOwotICAgICAgICAKKwogICAgICAgICAvLyBBZGQgdGhlIHJl
c291cmNlIHRvIHRoZSBzdG9yYWdlLgotICAgICAgICBtX2dyb3VwLT5zdG9yYWdlKCkuc3RvcmUo
cmVzb3VyY2UuZ2V0KCksIHRoaXMpOworICAgICAgICBtX2dyb3VwLT5zdG9yYWdlKCkuc3RvcmUo
cmVzb3VyY2UucHRyKCksIHRoaXMpOwogICAgIH0KIAogICAgIG1fZXN0aW1hdGVkU2l6ZUluU3Rv
cmFnZSArPSByZXNvdXJjZS0+ZXN0aW1hdGVkU2l6ZUluU3RvcmFnZSgpOwogCi0gICAgbV9yZXNv
dXJjZXMuc2V0KHVybCwgcmVzb3VyY2UpOworICAgIG1fcmVzb3VyY2VzLnNldCh1cmwsIFdURk1v
dmUocmVzb3VyY2UpKTsKIH0KIAotdW5zaWduZWQgQXBwbGljYXRpb25DYWNoZTo6cmVtb3ZlUmVz
b3VyY2UoY29uc3QgU3RyaW5nJiB1cmwpCi17Ci0gICAgSGFzaE1hcDxTdHJpbmcsIFJlZlB0cjxB
cHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+Pjo6aXRlcmF0b3IgaXQgPSBtX3Jlc291cmNlcy5maW5k
KHVybCk7Ci0gICAgaWYgKGl0ID09IG1fcmVzb3VyY2VzLmVuZCgpKQotICAgICAgICByZXR1cm4g
MDsKLQotICAgIC8vIFRoZSByZXNvdXJjZSBleGlzdHMsIGdldCBpdHMgdHlwZSBzbyB3ZSBjYW4g
cmV0dXJuIGl0LgotICAgIHVuc2lnbmVkIHR5cGUgPSBpdC0+dmFsdWUtPnR5cGUoKTsKLQotICAg
IG1fZXN0aW1hdGVkU2l6ZUluU3RvcmFnZSAtPSBpdC0+dmFsdWUtPmVzdGltYXRlZFNpemVJblN0
b3JhZ2UoKTsKLQotICAgIG1fcmVzb3VyY2VzLnJlbW92ZShpdCk7Ci0KLSAgICByZXR1cm4gdHlw
ZTsKLX0gICAgCi0gICAgCiBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqIEFwcGxpY2F0aW9uQ2Fj
aGU6OnJlc291cmNlRm9yVVJMKGNvbnN0IFN0cmluZyYgdXJsKQogewogICAgIEFTU0VSVCghVVJM
KFBhcnNlZFVSTFN0cmluZywgdXJsKS5oYXNGcmFnbWVudElkZW50aWZpZXIoKSk7CkBAIC0xMzMs
OSArMTExLDcgQEAgQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiBBcHBsaWNhdGlvbkNhY2hlOjpy
ZXNvdXJjZUZvclJlcXVlc3QoY29uc3QgUmVzb3VyY2VSZXEKICAgICAgICAgcmV0dXJuIG51bGxw
dHI7CiAKICAgICBVUkwgdXJsKHJlcXVlc3QudXJsKCkpOwotICAgIGlmICh1cmwuaGFzRnJhZ21l
bnRJZGVudGlmaWVyKCkpCi0gICAgICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsK
LQorICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKICAgICByZXR1cm4gcmVzb3Vy
Y2VGb3JVUkwodXJsKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Fw
cGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGUuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNo
ZS9BcHBsaWNhdGlvbkNhY2hlLmgKaW5kZXggNzYxNzY2MjBmY2Q2ZmEzOWFkMmE1YzM5NjFiYWMy
M2IxN2E3YzAyNS4uOWE0NThjNzEwYzRhZDAxOWIxMzVmZjE0NjcwMDZkZjgwOTQ4MTdmYSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGUu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZS5o
CkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCBBcHBsZSBJbmMuIEFs
bCBSaWdodHMgUmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxNyBBcHBsZSBJbmMu
IEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAg
LTI2LDM1ICsyNiwyOCBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5o
PgotI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+Ci0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4K
LSNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0hh
c2guaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdlYkNv
cmUgewogCiBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlR3JvdXA7CiBjbGFzcyBBcHBsaWNhdGlvbkNh
Y2hlUmVzb3VyY2U7Ci1jbGFzcyBEb2N1bWVudExvYWRlcjsKIGNsYXNzIFVSTDsKIGNsYXNzIFJl
c291cmNlUmVxdWVzdDsKLWNsYXNzIFNlY3VyaXR5T3JpZ2luOwogCi10eXBlZGVmIFZlY3Rvcjxz
dGQ6OnBhaXI8VVJMLCBVUkw+PiBGYWxsYmFja1VSTFZlY3RvcjsKK3VzaW5nIEZhbGxiYWNrVVJM
VmVjdG9yID0gVmVjdG9yPHN0ZDo6cGFpcjxVUkwsIFVSTD4+OwogCiBjbGFzcyBBcHBsaWNhdGlv
bkNhY2hlIDogcHVibGljIFJlZkNvdW50ZWQ8QXBwbGljYXRpb25DYWNoZT4gewogcHVibGljOgog
ICAgIHN0YXRpYyBSZWY8QXBwbGljYXRpb25DYWNoZT4gY3JlYXRlKCkgeyByZXR1cm4gYWRvcHRS
ZWYoKm5ldyBBcHBsaWNhdGlvbkNhY2hlKTsgfQotICAgIAorCiAgICAgfkFwcGxpY2F0aW9uQ2Fj
aGUoKTsKIAotICAgIHZvaWQgYWRkUmVzb3VyY2UoUGFzc1JlZlB0cjxBcHBsaWNhdGlvbkNhY2hl
UmVzb3VyY2U+IHJlc291cmNlKTsKLSAgICB1bnNpZ25lZCByZW1vdmVSZXNvdXJjZShjb25zdCBT
dHJpbmcmIHVybCk7Ci0gICAgCi0gICAgdm9pZCBzZXRNYW5pZmVzdFJlc291cmNlKFBhc3NSZWZQ
dHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiBtYW5pZmVzdCk7CisgICAgdm9pZCBhZGRSZXNv
dXJjZShSZWY8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiYmKTsKKworICAgIHZvaWQgc2V0TWFu
aWZlc3RSZXNvdXJjZShSZWY8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiYmKTsKICAgICBBcHBs
aWNhdGlvbkNhY2hlUmVzb3VyY2UqIG1hbmlmZXN0UmVzb3VyY2UoKSBjb25zdCB7IHJldHVybiBt
X21hbmlmZXN0OyB9Ci0gICAgCisKICAgICB2b2lkIHNldEdyb3VwKEFwcGxpY2F0aW9uQ2FjaGVH
cm91cCopOwogICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAoKSBjb25zdCB7IHJldHVy
biBtX2dyb3VwOyB9CiAKQEAgLTcyLDM5ICs2NSwzOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRG
YWxsYmFja1VSTHMoY29uc3QgRmFsbGJhY2tVUkxWZWN0b3ImKTsKICAgICBjb25zdCBGYWxsYmFj
a1VSTFZlY3RvciYgZmFsbGJhY2tVUkxzKCkgY29uc3QgeyByZXR1cm4gbV9mYWxsYmFja1VSTHM7
IH0KICAgICBib29sIHVybE1hdGNoZXNGYWxsYmFja05hbWVzcGFjZShjb25zdCBVUkwmLCBVUkwq
IGZhbGxiYWNrVVJMID0gbnVsbHB0cik7Ci0gICAgCisKICNpZm5kZWYgTkRFQlVHCiAgICAgdm9p
ZCBkdW1wKCk7CiAjZW5kaWYKIAotICAgIHR5cGVkZWYgSGFzaE1hcDxTdHJpbmcsIFJlZlB0cjxB
cHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+PiBSZXNvdXJjZU1hcDsKKyAgICB1c2luZyBSZXNvdXJj
ZU1hcCA9IEhhc2hNYXA8U3RyaW5nLCBSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPj47
CiAgICAgY29uc3QgUmVzb3VyY2VNYXAmIHJlc291cmNlcygpIGNvbnN0IHsgcmV0dXJuIG1fcmVz
b3VyY2VzOyB9Ci0gICAgCisKICAgICB2b2lkIHNldFN0b3JhZ2VJRCh1bnNpZ25lZCBzdG9yYWdl
SUQpIHsgbV9zdG9yYWdlSUQgPSBzdG9yYWdlSUQ7IH0KICAgICB1bnNpZ25lZCBzdG9yYWdlSUQo
KSBjb25zdCB7IHJldHVybiBtX3N0b3JhZ2VJRDsgfQogICAgIHZvaWQgY2xlYXJTdG9yYWdlSUQo
KTsKLSAgICAKKwogICAgIHN0YXRpYyBib29sIHJlcXVlc3RJc0hUVFBPckhUVFBTR2V0KGNvbnN0
IFJlc291cmNlUmVxdWVzdCYpOwogCiAgICAgaW50NjRfdCBlc3RpbWF0ZWRTaXplSW5TdG9yYWdl
KCkgY29uc3QgeyByZXR1cm4gbV9lc3RpbWF0ZWRTaXplSW5TdG9yYWdlOyB9CiAKIHByaXZhdGU6
CiAgICAgQXBwbGljYXRpb25DYWNoZSgpOwotICAgIAotICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91
cCogbV9ncm91cDsKKworICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogbV9ncm91cCB7IG51bGxw
dHIgfTsKICAgICBSZXNvdXJjZU1hcCBtX3Jlc291cmNlczsKLSAgICBBcHBsaWNhdGlvbkNhY2hl
UmVzb3VyY2UqIG1fbWFuaWZlc3Q7CisgICAgQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiBtX21h
bmlmZXN0IHsgbnVsbHB0ciB9OwogCi0gICAgYm9vbCBtX2FsbG93QWxsTmV0d29ya1JlcXVlc3Rz
OworICAgIGJvb2wgbV9hbGxvd0FsbE5ldHdvcmtSZXF1ZXN0cyB7IGZhbHNlIH07CiAgICAgVmVj
dG9yPFVSTD4gbV9vbmxpbmVXaGl0ZWxpc3Q7CiAgICAgRmFsbGJhY2tVUkxWZWN0b3IgbV9mYWxs
YmFja1VSTHM7CiAKICAgICAvLyBUaGUgdG90YWwgc2l6ZSBvZiB0aGUgcmVzb3VyY2VzIGJlbG9u
Z2luZyB0byB0aGlzIEFwcGxpY2F0aW9uIENhY2hlIGluc3RhbmNlLgotICAgIC8vIFRoaXMgaXMg
YW4gZXN0aW1hdGlvbiBvZiB0aGUgc2l6ZSB0aGlzIEFwcGxpY2F0aW9uIENhY2hlIG9jY3VwaWVz
IGluIHRoZQotICAgIC8vIGRhdGFiYXNlIGZpbGUuCi0gICAgaW50NjRfdCBtX2VzdGltYXRlZFNp
emVJblN0b3JhZ2U7CisgICAgLy8gVGhpcyBpcyBhbiBlc3RpbWF0aW9uIG9mIHRoZSBzaXplIHRo
aXMgQXBwbGljYXRpb24gQ2FjaGUgb2NjdXBpZXMgaW4gdGhlIGRhdGFiYXNlIGZpbGUuCisgICAg
aW50NjRfdCBtX2VzdGltYXRlZFNpemVJblN0b3JhZ2UgeyAwIH07CiAKLSAgICB1bnNpZ25lZCBt
X3N0b3JhZ2VJRDsKKyAgICB1bnNpZ25lZCBtX3N0b3JhZ2VJRCB7IDAgfTsKIH07CiAKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBj
YWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Fw
cGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5jcHAKaW5kZXggODZlOWE1YTg4NDkwN2NkZDNk
NDZhZmNjZGUwM2Y4ZDNmYTA5ODUzYS4uOTg4MWIyNWU1YWNiMGZlOTY0MjVmNjdhZGIzNDMxODQx
NDdiZTA4ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxp
Y2F0aW9uQ2FjaGVHcm91cC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hl
L0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJp
Z2h0IChDKSAyMDA4LCAyMDA5LCAyMDEwIEFwcGxlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4K
KyAqIENvcHlyaWdodCAoQykgMjAwOC0yMDE3IEFwcGxlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZl
ZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMzQsNiArMzQsNyBAQAogI2lu
Y2x1ZGUgIkNocm9tZUNsaWVudC5oIgogI2luY2x1ZGUgIkRPTUFwcGxpY2F0aW9uQ2FjaGUuaCIK
ICNpbmNsdWRlICJEb2N1bWVudExvYWRlci5oIgorI2luY2x1ZGUgIkV2ZW50TmFtZXMuaCIKICNp
bmNsdWRlICJGcmFtZS5oIgogI2luY2x1ZGUgIkZyYW1lTG9hZGVyLmgiCiAjaW5jbHVkZSAiRnJh
bWVMb2FkZXJDbGllbnQuaCIKQEAgLTU0LDE3ICs1NSw3IEBAIEFwcGxpY2F0aW9uQ2FjaGVHcm91
cDo6QXBwbGljYXRpb25DYWNoZUdyb3VwKFJlZjxBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZT4mJiBz
dG9yCiAgICAgOiBtX3N0b3JhZ2UoV1RGTW92ZShzdG9yYWdlKSkKICAgICAsIG1fbWFuaWZlc3RV
UkwobWFuaWZlc3RVUkwpCiAgICAgLCBtX29yaWdpbihTZWN1cml0eU9yaWdpbjo6Y3JlYXRlKG1h
bmlmZXN0VVJMKSkKLSAgICAsIG1fdXBkYXRlU3RhdHVzKElkbGUpCi0gICAgLCBtX2Rvd25sb2Fk
aW5nUGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVyc0NvdW50KDApCi0gICAgLCBtX3Byb2dyZXNz
VG90YWwoMCkKLSAgICAsIG1fcHJvZ3Jlc3NEb25lKDApCi0gICAgLCBtX2ZyYW1lKG51bGxwdHIp
Ci0gICAgLCBtX3N0b3JhZ2VJRCgwKQotICAgICwgbV9pc09ic29sZXRlKGZhbHNlKQotICAgICwg
bV9jb21wbGV0aW9uVHlwZShOb25lKQotICAgICwgbV9jYWxsZWRSZWFjaGVkTWF4QXBwQ2FjaGVT
aXplKGZhbHNlKQogICAgICwgbV9hdmFpbGFibGVTcGFjZUluUXVvdGEoQXBwbGljYXRpb25DYWNo
ZVN0b3JhZ2U6OnVua25vd25RdW90YSgpKQotICAgICwgbV9vcmlnaW5RdW90YUV4Y2VlZGVkUHJl
dmlvdXNseShmYWxzZSkKIHsKIH0KIApAQCAtNzIsMTAgKzYzLDEwIEBAIEFwcGxpY2F0aW9uQ2Fj
aGVHcm91cDo6fkFwcGxpY2F0aW9uQ2FjaGVHcm91cCgpCiB7CiAgICAgQVNTRVJUKCFtX25ld2Vz
dENhY2hlKTsKICAgICBBU1NFUlQobV9jYWNoZXMuaXNFbXB0eSgpKTsKLSAgICAKKwogICAgIHN0
b3BMb2FkaW5nKCk7CiAKLSAgICBtX3N0b3JhZ2UtPmNhY2hlR3JvdXBEZXN0cm95ZWQodGhpcyk7
CisgICAgbV9zdG9yYWdlLT5jYWNoZUdyb3VwRGVzdHJveWVkKCp0aGlzKTsKIH0KICAgICAKIEFw
cGxpY2F0aW9uQ2FjaGUqIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6Y2FjaGVGb3JNYWluUmVxdWVz
dChjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIERvY3VtZW50TG9hZGVyKiBkb2N1bWVu
dExvYWRlcikKQEAgLTg0LDIxICs3NSwyMCBAQCBBcHBsaWNhdGlvbkNhY2hlKiBBcHBsaWNhdGlv
bkNhY2hlR3JvdXA6OmNhY2hlRm9yTWFpblJlcXVlc3QoY29uc3QgUmVzb3VyY2VSZXF1ZQogICAg
ICAgICByZXR1cm4gbnVsbHB0cjsKIAogICAgIFVSTCB1cmwocmVxdWVzdC51cmwoKSk7Ci0gICAg
aWYgKHVybC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSkKLSAgICAgICAgdXJsLnJlbW92ZUZyYWdt
ZW50SWRlbnRpZmllcigpOworICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKIAog
ICAgIGF1dG8qIHBhZ2UgPSBkb2N1bWVudExvYWRlci0+ZnJhbWUoKSA/IGRvY3VtZW50TG9hZGVy
LT5mcmFtZSgpLT5wYWdlKCkgOiBudWxscHRyOwogICAgIGlmICghcGFnZSB8fCBwYWdlLT51c2Vz
RXBoZW1lcmFsU2Vzc2lvbigpKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAotICAgIGlmIChB
cHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwID0gcGFnZS0+YXBwbGljYXRpb25DYWNoZVN0b3Jh
Z2UoKS5jYWNoZUdyb3VwRm9yVVJMKHVybCkpIHsKLSAgICAgICAgQVNTRVJUKGdyb3VwLT5uZXdl
c3RDYWNoZSgpKTsKLSAgICAgICAgQVNTRVJUKCFncm91cC0+aXNPYnNvbGV0ZSgpKTsKLSAgICAg
ICAgCi0gICAgICAgIHJldHVybiBncm91cC0+bmV3ZXN0Q2FjaGUoKTsKLSAgICB9Ci0gICAgCi0g
ICAgcmV0dXJuIG51bGxwdHI7CisgICAgYXV0byogZ3JvdXAgPSBwYWdlLT5hcHBsaWNhdGlvbkNh
Y2hlU3RvcmFnZSgpLmNhY2hlR3JvdXBGb3JVUkwodXJsKTsKKyAgICBpZiAoIWdyb3VwKQorICAg
ICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIEFTU0VSVChncm91cC0+bmV3ZXN0Q2FjaGUoKSk7
CisgICAgQVNTRVJUKCFncm91cC0+aXNPYnNvbGV0ZSgpKTsKKworICAgIHJldHVybiBncm91cC0+
bmV3ZXN0Q2FjaGUoKTsKIH0KICAgICAKIEFwcGxpY2F0aW9uQ2FjaGUqIEFwcGxpY2F0aW9uQ2Fj
aGVHcm91cDo6ZmFsbGJhY2tDYWNoZUZvck1haW5SZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVxdWVz
dCYgcmVxdWVzdCwgRG9jdW1lbnRMb2FkZXIqIGRvY3VtZW50TG9hZGVyKQpAQCAtMTA2LDgxICs5
Niw4NyBAQCBBcHBsaWNhdGlvbkNhY2hlKiBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmZhbGxiYWNr
Q2FjaGVGb3JNYWluUmVxdWVzdChjb25zdCBSZXNvdQogICAgIGlmICghQXBwbGljYXRpb25DYWNo
ZTo6cmVxdWVzdElzSFRUUE9ySFRUUFNHZXQocmVxdWVzdCkpCiAgICAgICAgIHJldHVybiBudWxs
cHRyOwogCi0gICAgVVJMIHVybChyZXF1ZXN0LnVybCgpKTsKLSAgICBpZiAodXJsLmhhc0ZyYWdt
ZW50SWRlbnRpZmllcigpKQotICAgICAgICB1cmwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7
CisgICAgYXV0byogZnJhbWUgPSBkb2N1bWVudExvYWRlci0+ZnJhbWUoKTsKKyAgICBpZiAoIWZy
YW1lKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAotICAgIGF1dG8qIHBhZ2UgPSBkb2N1bWVu
dExvYWRlci0+ZnJhbWUoKSA/IGRvY3VtZW50TG9hZGVyLT5mcmFtZSgpLT5wYWdlKCkgOiBudWxs
cHRyOworICAgIGF1dG8qIHBhZ2UgPSBmcmFtZS0+cGFnZSgpOwogICAgIGlmICghcGFnZSkKICAg
ICAgICAgcmV0dXJuIG51bGxwdHI7CiAKLSAgICBpZiAoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBn
cm91cCA9IHBhZ2UtPmFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlKCkuZmFsbGJhY2tDYWNoZUdyb3Vw
Rm9yVVJMKHVybCkpIHsKLSAgICAgICAgQVNTRVJUKGdyb3VwLT5uZXdlc3RDYWNoZSgpKTsKLSAg
ICAgICAgQVNTRVJUKCFncm91cC0+aXNPYnNvbGV0ZSgpKTsKKyAgICBVUkwgdXJsKHJlcXVlc3Qu
dXJsKCkpOworICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKIAotICAgICAgICBy
ZXR1cm4gZ3JvdXAtPm5ld2VzdENhY2hlKCk7Ci0gICAgfQotICAgIAotICAgIHJldHVybiBudWxs
cHRyOworICAgIGF1dG8qIGdyb3VwID0gcGFnZS0+YXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKS5m
YWxsYmFja0NhY2hlR3JvdXBGb3JVUkwodXJsKTsKKyAgICBpZiAoIWdyb3VwKQorICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKKworICAgIEFTU0VSVChncm91cC0+bmV3ZXN0Q2FjaGUoKSk7CisgICAg
QVNTRVJUKCFncm91cC0+aXNPYnNvbGV0ZSgpKTsKKworICAgIHJldHVybiBncm91cC0+bmV3ZXN0
Q2FjaGUoKTsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVjdENhY2hlKEZy
YW1lKiBmcmFtZSwgY29uc3QgVVJMJiBwYXNzZWRNYW5pZmVzdFVSTCkKK3ZvaWQgQXBwbGljYXRp
b25DYWNoZUdyb3VwOjpzZWxlY3RDYWNoZShGcmFtZSYgZnJhbWUsIGNvbnN0IFVSTCYgcGFzc2Vk
TWFuaWZlc3RVUkwpCiB7Ci0gICAgQVNTRVJUKGZyYW1lICYmIGZyYW1lLT5wYWdlKCkpOwotICAg
IAotICAgIGlmICghZnJhbWUtPnNldHRpbmdzKCkub2ZmbGluZVdlYkFwcGxpY2F0aW9uQ2FjaGVF
bmFibGVkKCkpCisgICAgQVNTRVJUKGZyYW1lLmRvY3VtZW50KCkpOworICAgIEFTU0VSVChmcmFt
ZS5wYWdlKCkpOworICAgIEFTU0VSVChmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKTsK
KworICAgIGlmICghZnJhbWUuc2V0dGluZ3MoKS5vZmZsaW5lV2ViQXBwbGljYXRpb25DYWNoZUVu
YWJsZWQoKSkKICAgICAgICAgcmV0dXJuOwotICAgIAotICAgIERvY3VtZW50TG9hZGVyKiBkb2N1
bWVudExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwotICAgIEFTU0VS
VCghZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPmFwcGxpY2F0aW9uQ2Fj
aGUoKSk7CisKKyAgICBhdXRvJiBkb2N1bWVudExvYWRlciA9ICpmcmFtZS5sb2FkZXIoKS5kb2N1
bWVudExvYWRlcigpOworICAgIEFTU0VSVCghZG9jdW1lbnRMb2FkZXIuYXBwbGljYXRpb25DYWNo
ZUhvc3QoKS5hcHBsaWNhdGlvbkNhY2hlKCkpOwogCiAgICAgaWYgKHBhc3NlZE1hbmlmZXN0VVJM
LmlzTnVsbCgpKSB7Ci0gICAgICAgIHNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0VVJMKGZyYW1l
KTsgICAgICAgIAorICAgICAgICBzZWxlY3RDYWNoZVdpdGhvdXRNYW5pZmVzdFVSTChmcmFtZSk7
CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKICAgICAvLyBEb24ndCBhY2Nlc3MgYW55dGhpbmcg
b24gZGlzayBpZiBwcml2YXRlIGJyb3dzaW5nIGlzIGVuYWJsZWQuCi0gICAgaWYgKGZyYW1lLT5w
YWdlKCktPnVzZXNFcGhlbWVyYWxTZXNzaW9uKCkgfHwgIWZyYW1lLT5kb2N1bWVudCgpLT5zZWN1
cml0eU9yaWdpbigpLT5jYW5BY2Nlc3NBcHBsaWNhdGlvbkNhY2hlKGZyYW1lLT50cmVlKCkudG9w
KCkuZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSkpIHsKLSAgICAgICAgcG9zdExpc3RlbmVy
VGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q0hFQ0tJTkdfRVZFTlQsIGRvY3VtZW50TG9hZGVy
KTsKLSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RVJST1Jf
RVZFTlQsIGRvY3VtZW50TG9hZGVyKTsKKyAgICBpZiAoZnJhbWUucGFnZSgpLT51c2VzRXBoZW1l
cmFsU2Vzc2lvbigpIHx8ICFmcmFtZS5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5jYW5B
Y2Nlc3NBcHBsaWNhdGlvbkNhY2hlKGZyYW1lLnRyZWUoKS50b3AoKS5kb2N1bWVudCgpLT5zZWN1
cml0eU9yaWdpbigpKSkgeworICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5j
aGVja2luZ0V2ZW50LCBkb2N1bWVudExvYWRlcik7CisgICAgICAgIHBvc3RMaXN0ZW5lclRhc2so
ZXZlbnROYW1lcygpLmVycm9yRXZlbnQsIGRvY3VtZW50TG9hZGVyKTsKICAgICAgICAgcmV0dXJu
OwogICAgIH0KIAogICAgIFVSTCBtYW5pZmVzdFVSTChwYXNzZWRNYW5pZmVzdFVSTCk7Ci0gICAg
aWYgKG1hbmlmZXN0VVJMLmhhc0ZyYWdtZW50SWRlbnRpZmllcigpKQotICAgICAgICBtYW5pZmVz
dFVSTC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKKyAgICBtYW5pZmVzdFVSTC5yZW1vdmVG
cmFnbWVudElkZW50aWZpZXIoKTsKIAotICAgIEFwcGxpY2F0aW9uQ2FjaGUqIG1haW5SZXNvdXJj
ZUNhY2hlID0gZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1haW5SZXNv
dXJjZUFwcGxpY2F0aW9uQ2FjaGUoKTsKKyAgICBhdXRvKiBtYWluUmVzb3VyY2VDYWNoZSA9IGRv
Y3VtZW50TG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWFpblJlc291cmNlQXBwbGljYXRp
b25DYWNoZSgpOwogICAgIAogICAgIGlmIChtYWluUmVzb3VyY2VDYWNoZSkgeworICAgICAgICBB
U1NFUlQobWFpblJlc291cmNlQ2FjaGUtPmdyb3VwKCkpOwogICAgICAgICBpZiAobWFuaWZlc3RV
UkwgPT0gbWFpblJlc291cmNlQ2FjaGUtPmdyb3VwKCktPm1fbWFuaWZlc3RVUkwpIHsKICAgICAg
ICAgICAgIC8vIFRoZSBjYWNoZSBtYXkgaGF2ZSBnb3R0ZW4gb2Jzb2xldGVkIGFmdGVyIHdlJ3Zl
IGxvYWRlZCBmcm9tIGl0LCBidXQgYmVmb3JlIHdlIHBhcnNlZCB0aGUgZG9jdW1lbnQgYW5kIHNh
dyBjYWNoZSBtYW5pZmVzdC4KICAgICAgICAgICAgIGlmIChtYWluUmVzb3VyY2VDYWNoZS0+Z3Jv
dXAoKS0+aXNPYnNvbGV0ZSgpKQogICAgICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgICAg
IG1haW5SZXNvdXJjZUNhY2hlLT5ncm91cCgpLT5hc3NvY2lhdGVEb2N1bWVudExvYWRlcldpdGhD
YWNoZShkb2N1bWVudExvYWRlciwgbWFpblJlc291cmNlQ2FjaGUpOworICAgICAgICAgICAgbWFp
blJlc291cmNlQ2FjaGUtPmdyb3VwKCktPmFzc29jaWF0ZURvY3VtZW50TG9hZGVyV2l0aENhY2hl
KCZkb2N1bWVudExvYWRlciwgbWFpblJlc291cmNlQ2FjaGUpOwogICAgICAgICAgICAgbWFpblJl
c291cmNlQ2FjaGUtPmdyb3VwKCktPnVwZGF0ZShmcmFtZSwgQXBwbGljYXRpb25DYWNoZVVwZGF0
ZVdpdGhCcm93c2luZ0NvbnRleHQpOwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgLy8g
VGhlIG1haW4gcmVzb3VyY2Ugd2FzIGxvYWRlZCBmcm9tIGNhY2hlLCBzbyB0aGUgY2FjaGUgbXVz
dCBoYXZlIGFuIGVudHJ5IGZvciBpdC4gTWFyayBpdCBhcyBmb3JlaWduLgotICAgICAgICAgICAg
VVJMIHJlc291cmNlVVJMKGRvY3VtZW50TG9hZGVyLT5yZXNwb25zZVVSTCgpKTsKLSAgICAgICAg
ICAgIGlmIChyZXNvdXJjZVVSTC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSkKLSAgICAgICAgICAg
ICAgICByZXNvdXJjZVVSTC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKLSAgICAgICAgICAg
IEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSogcmVzb3VyY2UgPSBtYWluUmVzb3VyY2VDYWNoZS0+
cmVzb3VyY2VGb3JVUkwocmVzb3VyY2VVUkwpOwotICAgICAgICAgICAgYm9vbCBpblN0b3JhZ2Ug
PSByZXNvdXJjZS0+c3RvcmFnZUlEKCk7Ci0gICAgICAgICAgICByZXNvdXJjZS0+YWRkVHlwZShB
cHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6OkZvcmVpZ24pOworICAgICAgICAgICAgVVJMIHJlc291
cmNlVVJMIHsgZG9jdW1lbnRMb2FkZXIucmVzcG9uc2VVUkwoKSB9OworICAgICAgICAgICAgcmVz
b3VyY2VVUkwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CisKKyAgICAgICAgICAgIEFTU0VS
VChtYWluUmVzb3VyY2VDYWNoZS0+cmVzb3VyY2VGb3JVUkwocmVzb3VyY2VVUkwpKTsKKyAgICAg
ICAgICAgIGF1dG8mIHJlc291cmNlID0gKm1haW5SZXNvdXJjZUNhY2hlLT5yZXNvdXJjZUZvclVS
TChyZXNvdXJjZVVSTCk7CisKKyAgICAgICAgICAgIGJvb2wgaW5TdG9yYWdlID0gcmVzb3VyY2Uu
c3RvcmFnZUlEKCk7CisgICAgICAgICAgICByZXNvdXJjZS5hZGRUeXBlKEFwcGxpY2F0aW9uQ2Fj
aGVSZXNvdXJjZTo6Rm9yZWlnbik7CiAgICAgICAgICAgICBpZiAoaW5TdG9yYWdlKQotICAgICAg
ICAgICAgICAgIGZyYW1lLT5wYWdlKCktPmFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlKCkuc3RvcmVV
cGRhdGVkVHlwZShyZXNvdXJjZSwgbWFpblJlc291cmNlQ2FjaGUpOworICAgICAgICAgICAgICAg
IGZyYW1lLnBhZ2UoKS0+YXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKS5zdG9yZVVwZGF0ZWRUeXBl
KCZyZXNvdXJjZSwgbWFpblJlc291cmNlQ2FjaGUpOwogCiAgICAgICAgICAgICAvLyBSZXN0YXJ0
IHRoZSBjdXJyZW50IG5hdmlnYXRpb24gZnJvbSB0aGUgdG9wIG9mIHRoZSBuYXZpZ2F0aW9uIGFs
Z29yaXRobSwgdW5kb2luZyBhbnkgY2hhbmdlcyB0aGF0IHdlcmUgbWFkZQogICAgICAgICAgICAg
Ly8gYXMgcGFydCBvZiB0aGUgaW5pdGlhbCBsb2FkLgogICAgICAgICAgICAgLy8gVGhlIG5hdmln
YXRpb24gd2lsbCBub3QgcmVzdWx0IGluIHRoZSBzYW1lIHJlc291cmNlIGJlaW5nIGxvYWRlZCwg
YmVjYXVzZSAiZm9yZWlnbiIgZW50cmllcyBhcmUgbmV2ZXIgcGlja2VkIGR1cmluZyBuYXZpZ2F0
aW9uLgotICAgICAgICAgICAgZnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxv
Y2F0aW9uQ2hhbmdlKGZyYW1lLT5kb2N1bWVudCgpLCBmcmFtZS0+ZG9jdW1lbnQoKS0+c2VjdXJp
dHlPcmlnaW4oKSwgZG9jdW1lbnRMb2FkZXItPnVybCgpLCBmcmFtZS0+bG9hZGVyKCkucmVmZXJy
ZXIoKSk7CisgICAgICAgICAgICBmcmFtZS5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVM
b2NhdGlvbkNoYW5nZSgqZnJhbWUuZG9jdW1lbnQoKSwgZnJhbWUuZG9jdW1lbnQoKS0+c2VjdXJp
dHlPcmlnaW4oKSwgZG9jdW1lbnRMb2FkZXIudXJsKCksIGZyYW1lLmxvYWRlcigpLnJlZmVycmVy
KCkpOwogICAgICAgICB9Ci0gICAgICAgIAogICAgICAgICByZXR1cm47CiAgICAgfQotICAgIAor
CiAgICAgLy8gVGhlIHJlc291cmNlIHdhcyBsb2FkZWQgZnJvbSB0aGUgbmV0d29yaywgY2hlY2sg
aWYgaXQgaXMgYSBIVFRQL0hUVFBTIEdFVC4gICAgCi0gICAgY29uc3QgUmVzb3VyY2VSZXF1ZXN0
JiByZXF1ZXN0ID0gZnJhbWUtPmxvYWRlcigpLmFjdGl2ZURvY3VtZW50TG9hZGVyKCktPnJlcXVl
c3QoKTsKKyAgICBhdXRvJiByZXF1ZXN0ID0gZnJhbWUubG9hZGVyKCkuYWN0aXZlRG9jdW1lbnRM
b2FkZXIoKS0+cmVxdWVzdCgpOwogCiAgICAgaWYgKCFBcHBsaWNhdGlvbkNhY2hlOjpyZXF1ZXN0
SXNIVFRQT3JIVFRQU0dldChyZXF1ZXN0KSkKICAgICAgICAgcmV0dXJuOwpAQCAtMTg5LDQ2ICsx
ODUsNDggQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVjdENhY2hlKEZyYW1lKiBm
cmFtZSwgY29uc3QgVVJMJiBwYXNzZWRNYW5pZmVzdFUKICAgICBpZiAoIXByb3RvY29sSG9zdEFu
ZFBvcnRBcmVFcXVhbChtYW5pZmVzdFVSTCwgcmVxdWVzdC51cmwoKSkpCiAgICAgICAgIHJldHVy
bjsKIAotICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAgPSBmcmFtZS0+cGFnZSgpLT5h
cHBsaWNhdGlvbkNhY2hlU3RvcmFnZSgpLmZpbmRPckNyZWF0ZUNhY2hlR3JvdXAobWFuaWZlc3RV
UkwpOworICAgIGF1dG8mIGdyb3VwID0gKmZyYW1lLnBhZ2UoKS0+YXBwbGljYXRpb25DYWNoZVN0
b3JhZ2UoKS5maW5kT3JDcmVhdGVDYWNoZUdyb3VwKG1hbmlmZXN0VVJMKTsKIAotICAgIGRvY3Vt
ZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5zZXRDYW5kaWRhdGVBcHBsaWNhdGlv
bkNhY2hlR3JvdXAoZ3JvdXApOwotICAgIGdyb3VwLT5tX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxv
YWRlcnMuYWRkKGRvY3VtZW50TG9hZGVyKTsKLSAgICBncm91cC0+bV9kb3dubG9hZGluZ1BlbmRp
bmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnNDb3VudCsrOworICAgIGRvY3VtZW50TG9hZGVyLmFwcGxp
Y2F0aW9uQ2FjaGVIb3N0KCkuc2V0Q2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKCZncm91
cCk7CisgICAgZ3JvdXAubV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLmFkZCgmZG9jdW1l
bnRMb2FkZXIpOworICAgIGdyb3VwLm1fZG93bmxvYWRpbmdQZW5kaW5nTWFzdGVyUmVzb3VyY2VM
b2FkZXJzQ291bnQrKzsKIAotICAgIEFTU0VSVCghZ3JvdXAtPm1fY2FjaGVCZWluZ1VwZGF0ZWQg
fHwgZ3JvdXAtPm1fdXBkYXRlU3RhdHVzICE9IElkbGUpOwotICAgIGdyb3VwLT51cGRhdGUoZnJh
bWUsIEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVXaXRoQnJvd3NpbmdDb250ZXh0KTsKKyAgICBBU1NF
UlQoIWdyb3VwLm1fY2FjaGVCZWluZ1VwZGF0ZWQgfHwgZ3JvdXAubV91cGRhdGVTdGF0dXMgIT0g
SWRsZSk7CisgICAgZ3JvdXAudXBkYXRlKGZyYW1lLCBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlV2l0
aEJyb3dzaW5nQ29udGV4dCk7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZWxl
Y3RDYWNoZVdpdGhvdXRNYW5pZmVzdFVSTChGcmFtZSogZnJhbWUpCit2b2lkIEFwcGxpY2F0aW9u
Q2FjaGVHcm91cDo6c2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3RVUkwoRnJhbWUmIGZyYW1lKQog
ewotICAgIGlmICghZnJhbWUtPnNldHRpbmdzKCkub2ZmbGluZVdlYkFwcGxpY2F0aW9uQ2FjaGVF
bmFibGVkKCkpCisgICAgaWYgKCFmcmFtZS5zZXR0aW5ncygpLm9mZmxpbmVXZWJBcHBsaWNhdGlv
bkNhY2hlRW5hYmxlZCgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBEb2N1bWVudExvYWRlciog
ZG9jdW1lbnRMb2FkZXIgPSBmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKLSAgICBB
U1NFUlQoIWRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5hcHBsaWNhdGlv
bkNhY2hlKCkpOworICAgIEFTU0VSVChmcmFtZS5kb2N1bWVudCgpKTsKKyAgICBBU1NFUlQoZnJh
bWUucGFnZSgpKTsKKyAgICBBU1NFUlQoZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSk7
CisgICAgYXV0byYgZG9jdW1lbnRMb2FkZXIgPSAqZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2Fk
ZXIoKTsKKyAgICBBU1NFUlQoIWRvY3VtZW50TG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCku
YXBwbGljYXRpb25DYWNoZSgpKTsKIAogICAgIC8vIERvbid0IGFjY2VzcyBhbnl0aGluZyBvbiBk
aXNrIGlmIHByaXZhdGUgYnJvd3NpbmcgaXMgZW5hYmxlZC4KLSAgICBpZiAoZnJhbWUtPnBhZ2Uo
KS0+dXNlc0VwaGVtZXJhbFNlc3Npb24oKSB8fCAhZnJhbWUtPmRvY3VtZW50KCktPnNlY3VyaXR5
T3JpZ2luKCktPmNhbkFjY2Vzc0FwcGxpY2F0aW9uQ2FjaGUoZnJhbWUtPnRyZWUoKS50b3AoKS5k
b2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpKSkgewotICAgICAgICBwb3N0TGlzdGVuZXJUYXNr
KEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDSEVDS0lOR19FVkVOVCwgZG9jdW1lbnRMb2FkZXIpOwot
ICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFUlJPUl9FVkVO
VCwgZG9jdW1lbnRMb2FkZXIpOworICAgIGlmIChmcmFtZS5wYWdlKCktPnVzZXNFcGhlbWVyYWxT
ZXNzaW9uKCkgfHwgIWZyYW1lLmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPmNhbkFjY2Vz
c0FwcGxpY2F0aW9uQ2FjaGUoZnJhbWUudHJlZSgpLnRvcCgpLmRvY3VtZW50KCktPnNlY3VyaXR5
T3JpZ2luKCkpKSB7CisgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmNoZWNr
aW5nRXZlbnQsIGRvY3VtZW50TG9hZGVyKTsKKyAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVu
dE5hbWVzKCkuZXJyb3JFdmVudCwgZG9jdW1lbnRMb2FkZXIpOwogICAgICAgICByZXR1cm47CiAg
ICAgfQogCi0gICAgQXBwbGljYXRpb25DYWNoZSogbWFpblJlc291cmNlQ2FjaGUgPSBkb2N1bWVu
dExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+bWFpblJlc291cmNlQXBwbGljYXRpb25D
YWNoZSgpOwotCi0gICAgaWYgKG1haW5SZXNvdXJjZUNhY2hlKSB7Ci0gICAgICAgIG1haW5SZXNv
dXJjZUNhY2hlLT5ncm91cCgpLT5hc3NvY2lhdGVEb2N1bWVudExvYWRlcldpdGhDYWNoZShkb2N1
bWVudExvYWRlciwgbWFpblJlc291cmNlQ2FjaGUpOwotICAgICAgICBtYWluUmVzb3VyY2VDYWNo
ZS0+Z3JvdXAoKS0+dXBkYXRlKGZyYW1lLCBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlV2l0aEJyb3dz
aW5nQ29udGV4dCk7CisgICAgaWYgKGF1dG8qIG1haW5SZXNvdXJjZUNhY2hlID0gZG9jdW1lbnRM
b2FkZXIuYXBwbGljYXRpb25DYWNoZUhvc3QoKS5tYWluUmVzb3VyY2VBcHBsaWNhdGlvbkNhY2hl
KCkpIHsKKyAgICAgICAgQVNTRVJUKG1haW5SZXNvdXJjZUNhY2hlLT5ncm91cCgpKTsKKyAgICAg
ICAgYXV0byYgZ3JvdXAgPSAqbWFpblJlc291cmNlQ2FjaGUtPmdyb3VwKCk7CisgICAgICAgIGdy
b3VwLmFzc29jaWF0ZURvY3VtZW50TG9hZGVyV2l0aENhY2hlKCZkb2N1bWVudExvYWRlciwgbWFp
blJlc291cmNlQ2FjaGUpOworICAgICAgICBncm91cC51cGRhdGUoZnJhbWUsIEFwcGxpY2F0aW9u
Q2FjaGVVcGRhdGVXaXRoQnJvd3NpbmdDb250ZXh0KTsKICAgICB9CiB9CiAKLXZvaWQgQXBwbGlj
YXRpb25DYWNoZUdyb3VwOjpmaW5pc2hlZExvYWRpbmdNYWluUmVzb3VyY2UoRG9jdW1lbnRMb2Fk
ZXIqIGxvYWRlcikKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpmaW5pc2hlZExvYWRpbmdN
YWluUmVzb3VyY2UoRG9jdW1lbnRMb2FkZXImIGxvYWRlcikKIHsKLSAgICBBU1NFUlQobV9wZW5k
aW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLmNvbnRhaW5zKGxvYWRlcikpOworICAgIEFTU0VSVCht
X3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMuY29udGFpbnMoJmxvYWRlcikpOwogICAgIEFT
U0VSVChtX2NvbXBsZXRpb25UeXBlID09IE5vbmUgfHwgbV9wZW5kaW5nRW50cmllcy5pc0VtcHR5
KCkpOwotICAgIFVSTCB1cmwgPSBsb2FkZXItPnVybCgpOwotICAgIGlmICh1cmwuaGFzRnJhZ21l
bnRJZGVudGlmaWVyKCkpCi0gICAgICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsK
KyAgICBVUkwgdXJsID0gbG9hZGVyLnVybCgpOworICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50
aWZpZXIoKTsKIAogICAgIHN3aXRjaCAobV9jb21wbGV0aW9uVHlwZSkgewogICAgIGNhc2UgTm9u
ZToKQEAgLTIzNiwzNCArMjM0LDMyIEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpmaW5p
c2hlZExvYWRpbmdNYWluUmVzb3VyY2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlcikKICAgICAgICAg
cmV0dXJuOwogICAgIGNhc2UgTm9VcGRhdGU6CiAgICAgICAgIEFTU0VSVCghbV9jYWNoZUJlaW5n
VXBkYXRlZCk7Ci0gICAgICAgIGFzc29jaWF0ZURvY3VtZW50TG9hZGVyV2l0aENhY2hlKGxvYWRl
ciwgbV9uZXdlc3RDYWNoZS5nZXQoKSk7Ci0KLSAgICAgICAgaWYgKEFwcGxpY2F0aW9uQ2FjaGVS
ZXNvdXJjZSogcmVzb3VyY2UgPSBtX25ld2VzdENhY2hlLT5yZXNvdXJjZUZvclVSTCh1cmwpKSB7
CisgICAgICAgIGFzc29jaWF0ZURvY3VtZW50TG9hZGVyV2l0aENhY2hlKCZsb2FkZXIsIG1fbmV3
ZXN0Q2FjaGUuZ2V0KCkpOworICAgICAgICBpZiAoYXV0byogcmVzb3VyY2UgPSBtX25ld2VzdENh
Y2hlLT5yZXNvdXJjZUZvclVSTCh1cmwpKSB7CiAgICAgICAgICAgICBpZiAoIShyZXNvdXJjZS0+
dHlwZSgpICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIpKSB7CiAgICAgICAgICAg
ICAgICAgcmVzb3VyY2UtPmFkZFR5cGUoQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIp
OwogICAgICAgICAgICAgICAgIEFTU0VSVCghcmVzb3VyY2UtPnN0b3JhZ2VJRCgpKTsKICAgICAg
ICAgICAgIH0KICAgICAgICAgfSBlbHNlCi0gICAgICAgICAgICBtX25ld2VzdENhY2hlLT5hZGRS
ZXNvdXJjZShBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6OmNyZWF0ZSh1cmwsIGxvYWRlci0+cmVz
cG9uc2UoKSwgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIsIGxvYWRlci0+bWFpblJl
c291cmNlRGF0YSgpKSk7CisgICAgICAgICAgICBtX25ld2VzdENhY2hlLT5hZGRSZXNvdXJjZShB
cHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6OmNyZWF0ZSh1cmwsIGxvYWRlci5yZXNwb25zZSgpLCBB
cHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6Ok1hc3RlciwgbG9hZGVyLm1haW5SZXNvdXJjZURhdGEo
KSkpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIEZhaWx1cmU6CiAgICAgICAgIC8vIENhY2hl
IHVwZGF0ZSBoYXMgYmVlbiBhIGZhaWx1cmUsIHNvIHRoZXJlIGlzIG5vIHJlYXNvbiB0byBrZWVw
IHRoZSBkb2N1bWVudCBhc3NvY2lhdGVkIHdpdGggdGhlIGluY29tcGxldGUgY2FjaGUKICAgICAg
ICAgLy8gKGl0cyBtYWluIHJlc291cmNlIHdhcyBub3QgY2FjaGVkIHlldCwgc28gaXQgaXMgbGlr
ZWx5IHRoYXQgdGhlIGFwcGxpY2F0aW9uIGNoYW5nZWQgc2lnbmlmaWNhbnRseSBzZXJ2ZXItc2lk
ZSkuCiAgICAgICAgIEFTU0VSVCghbV9jYWNoZUJlaW5nVXBkYXRlZCk7IC8vIEFscmVhZHkgY2xl
YXJlZCBvdXQgYnkgc3RvcExvYWRpbmcoKS4KLSAgICAgICAgbG9hZGVyLT5hcHBsaWNhdGlvbkNh
Y2hlSG9zdCgpLT5zZXRBcHBsaWNhdGlvbkNhY2hlKG51bGxwdHIpOyAvLyBXaWxsIHVuc2V0IGNh
bmRpZGF0ZSwgdG9vLgotICAgICAgICBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMucmVtb3Zl
KGxvYWRlcik7Ci0gICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6
OkVSUk9SX0VWRU5ULCBsb2FkZXIpOworICAgICAgICBsb2FkZXIuYXBwbGljYXRpb25DYWNoZUhv
c3QoKS5zZXRBcHBsaWNhdGlvbkNhY2hlKG51bGxwdHIpOyAvLyBXaWxsIHVuc2V0IGNhbmRpZGF0
ZSwgdG9vLgorICAgICAgICBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMucmVtb3ZlKCZsb2Fk
ZXIpOworICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBs
b2FkZXIpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIENvbXBsZXRlZDoKLSAgICAgICAgQVNT
RVJUKG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycy5jb250YWlucyhsb2FkZXIpKTsKLQotICAg
ICAgICBpZiAoQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiByZXNvdXJjZSA9IG1fY2FjaGVCZWlu
Z1VwZGF0ZWQtPnJlc291cmNlRm9yVVJMKHVybCkpIHsKKyAgICAgICAgQVNTRVJUKG1fYXNzb2Np
YXRlZERvY3VtZW50TG9hZGVycy5jb250YWlucygmbG9hZGVyKSk7CisgICAgICAgIGlmIChhdXRv
KiByZXNvdXJjZSA9IG1fY2FjaGVCZWluZ1VwZGF0ZWQtPnJlc291cmNlRm9yVVJMKHVybCkpIHsK
ICAgICAgICAgICAgIGlmICghKHJlc291cmNlLT50eXBlKCkgJiBBcHBsaWNhdGlvbkNhY2hlUmVz
b3VyY2U6Ok1hc3RlcikpIHsKICAgICAgICAgICAgICAgICByZXNvdXJjZS0+YWRkVHlwZShBcHBs
aWNhdGlvbkNhY2hlUmVzb3VyY2U6Ok1hc3Rlcik7CiAgICAgICAgICAgICAgICAgQVNTRVJUKCFy
ZXNvdXJjZS0+c3RvcmFnZUlEKCkpOwogICAgICAgICAgICAgfQogICAgICAgICB9IGVsc2UKLSAg
ICAgICAgICAgIG1fY2FjaGVCZWluZ1VwZGF0ZWQtPmFkZFJlc291cmNlKEFwcGxpY2F0aW9uQ2Fj
aGVSZXNvdXJjZTo6Y3JlYXRlKHVybCwgbG9hZGVyLT5yZXNwb25zZSgpLCBBcHBsaWNhdGlvbkNh
Y2hlUmVzb3VyY2U6Ok1hc3RlciwgbG9hZGVyLT5tYWluUmVzb3VyY2VEYXRhKCkpKTsKKyAgICAg
ICAgICAgIG1fY2FjaGVCZWluZ1VwZGF0ZWQtPmFkZFJlc291cmNlKEFwcGxpY2F0aW9uQ2FjaGVS
ZXNvdXJjZTo6Y3JlYXRlKHVybCwgbG9hZGVyLnJlc3BvbnNlKCksIEFwcGxpY2F0aW9uQ2FjaGVS
ZXNvdXJjZTo6TWFzdGVyLCBsb2FkZXIubWFpblJlc291cmNlRGF0YSgpKSk7CiAgICAgICAgIC8v
IFRoZSAiY2FjaGVkIiBldmVudCB3aWxsIGJlIHBvc3RlZCB0byBhbGwgYXNzb2NpYXRlZCBkb2N1
bWVudHMgb25jZSB1cGRhdGUgaXMgY29tcGxldGUuCiAgICAgICAgIGJyZWFrOwogICAgIH0KQEAg
LTI3Myw5ICsyNjksOSBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZmluaXNoZWRMb2Fk
aW5nTWFpblJlc291cmNlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCiAgICAgY2hlY2tJZkxvYWRJ
c0NvbXBsZXRlKCk7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpmYWlsZWRMb2Fk
aW5nTWFpblJlc291cmNlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCit2b2lkIEFwcGxpY2F0aW9u
Q2FjaGVHcm91cDo6ZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZShEb2N1bWVudExvYWRlciYgbG9h
ZGVyKQogewotICAgIEFTU0VSVChtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMuY29udGFp
bnMobG9hZGVyKSk7CisgICAgQVNTRVJUKG1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5j
b250YWlucygmbG9hZGVyKSk7CiAgICAgQVNTRVJUKG1fY29tcGxldGlvblR5cGUgPT0gTm9uZSB8
fCBtX3BlbmRpbmdFbnRyaWVzLmlzRW1wdHkoKSk7CiAKICAgICBzd2l0Y2ggKG1fY29tcGxldGlv
blR5cGUpIHsKQEAgLTI4NCwzMiArMjgwLDI3IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3Vw
OjpmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCiAgICAg
ICAgIHJldHVybjsKICAgICBjYXNlIE5vVXBkYXRlOgogICAgICAgICBBU1NFUlQoIW1fY2FjaGVC
ZWluZ1VwZGF0ZWQpOwotCiAgICAgICAgIC8vIFRoZSBtYW5pZmVzdCBkaWRuJ3QgY2hhbmdlLCBh
bmQgd2UgaGF2ZSBhIHJlbGV2YW50IGNhY2hlIC0gYnV0IHRoZSBtYWluIHJlc291cmNlIGRvd25s
b2FkIGZhaWxlZCBtaWQtd2F5LCBzbyBpdCBjYW5ub3QgYmUgc3RvcmVkIHRvIHRoZSBjYWNoZSwK
ICAgICAgICAgLy8gYW5kIHRoZSBsb2FkZXIgZG9lcyBub3QgZ2V0IGFzc29jaWF0ZWQgdG8gaXQu
IElmIHRoZXJlIGFyZSBvdGhlciBtYWluIHJlc291cmNlcyBiZWluZyBkb3dubG9hZGVkIGZvciB0
aGlzIGNhY2hlIGdyb3VwLCB0aGV5IG1heSBzdGlsbCBzdWNjZWVkLgotICAgICAgICBwb3N0TGlz
dGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFUlJPUl9FVkVOVCwgbG9hZGVyKTsKLQor
ICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBsb2FkZXIp
OwogICAgICAgICBicmVhazsKICAgICBjYXNlIEZhaWx1cmU6CiAgICAgICAgIC8vIENhY2hlIHVw
ZGF0ZSBmYWlsZWQsIHRvby4KICAgICAgICAgQVNTRVJUKCFtX2NhY2hlQmVpbmdVcGRhdGVkKTsg
Ly8gQWxyZWFkeSBjbGVhcmVkIG91dCBieSBzdG9wTG9hZGluZygpLgotICAgICAgICBBU1NFUlQo
IWxvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+YXBwbGljYXRpb25DYWNoZSgpIHx8IGxv
YWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+YXBwbGljYXRpb25DYWNoZSgpLT5ncm91cCgp
ID09IHRoaXMpOwotCi0gICAgICAgIGxvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+c2V0
QXBwbGljYXRpb25DYWNoZShudWxscHRyKTsgLy8gV2lsbCB1bnNldCBjYW5kaWRhdGUsIHRvby4K
LSAgICAgICAgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzLnJlbW92ZShsb2FkZXIpOwotICAg
ICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFUlJPUl9FVkVOVCwg
bG9hZGVyKTsKKyAgICAgICAgQVNTRVJUKCFsb2FkZXIuYXBwbGljYXRpb25DYWNoZUhvc3QoKS5h
cHBsaWNhdGlvbkNhY2hlKCkgfHwgbG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuYXBwbGlj
YXRpb25DYWNoZSgpLT5ncm91cCgpID09IHRoaXMpOworICAgICAgICBsb2FkZXIuYXBwbGljYXRp
b25DYWNoZUhvc3QoKS5zZXRBcHBsaWNhdGlvbkNhY2hlKG51bGxwdHIpOyAvLyBXaWxsIHVuc2V0
IGNhbmRpZGF0ZSwgdG9vLgorICAgICAgICBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMucmVt
b3ZlKCZsb2FkZXIpOworICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5lcnJv
ckV2ZW50LCBsb2FkZXIpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIENvbXBsZXRlZDoKICAg
ICAgICAgLy8gVGhlIGNhY2hlIG1hbmlmZXN0IGRpZG4ndCBsaXN0IHRoaXMgbWFpbiByZXNvdXJj
ZSwgYW5kIGFsbCBjYWNoZSBlbnRyaWVzIHdlcmUgYWxyZWFkeSB1cGRhdGVkIHN1Y2Nlc3NmdWxs
eSAtIGJ1dCB0aGUgbWFpbiByZXNvdXJjZSBmYWlsZWQgdG8gbG9hZCwKICAgICAgICAgLy8gc28g
aXQgY2Fubm90IGJlIHN0b3JlZCB0byB0aGUgY2FjaGUuIElmIHRoZXJlIGFyZSBvdGhlciBtYWlu
IHJlc291cmNlcyBiZWluZyBkb3dubG9hZGVkIGZvciB0aGlzIGNhY2hlIGdyb3VwLCB0aGV5IG1h
eSBzdGlsbCBzdWNjZWVkLgotICAgICAgICBBU1NFUlQobV9hc3NvY2lhdGVkRG9jdW1lbnRMb2Fk
ZXJzLmNvbnRhaW5zKGxvYWRlcikpOwotICAgICAgICBBU1NFUlQobG9hZGVyLT5hcHBsaWNhdGlv
bkNhY2hlSG9zdCgpLT5hcHBsaWNhdGlvbkNhY2hlKCkgPT0gbV9jYWNoZUJlaW5nVXBkYXRlZCk7
Ci0gICAgICAgIEFTU0VSVCghbG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5jYW5kaWRh
dGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKSk7Ci0gICAgICAgIG1fYXNzb2NpYXRlZERvY3VtZW50
TG9hZGVycy5yZW1vdmUobG9hZGVyKTsKLSAgICAgICAgbG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hl
SG9zdCgpLT5zZXRBcHBsaWNhdGlvbkNhY2hlKG51bGxwdHIpOwotCi0gICAgICAgIHBvc3RMaXN0
ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkVSUk9SX0VWRU5ULCBsb2FkZXIpOwotCisg
ICAgICAgIEFTU0VSVChtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMuY29udGFpbnMoJmxvYWRl
cikpOworICAgICAgICBBU1NFUlQobG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuYXBwbGlj
YXRpb25DYWNoZSgpID09IG1fY2FjaGVCZWluZ1VwZGF0ZWQpOworICAgICAgICBBU1NFUlQoIWxv
YWRlci5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLmNhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91
cCgpKTsKKyAgICAgICAgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzLnJlbW92ZSgmbG9hZGVy
KTsKKyAgICAgICAgbG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2V0QXBwbGljYXRpb25D
YWNoZShudWxscHRyKTsKKyAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkuZXJy
b3JFdmVudCwgbG9hZGVyKTsKICAgICAgICAgYnJlYWs7CiAgICAgfQogCkBAIC0zNDYsMTIgKzMz
NywxMiBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c3RvcExvYWRpbmcoKQogICAgIG1f
cGVuZGluZ0VudHJpZXMuY2xlYXIoKTsKIH0gICAgCiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdy
b3VwOjpkaXNhc3NvY2lhdGVEb2N1bWVudExvYWRlcihEb2N1bWVudExvYWRlciogbG9hZGVyKQor
dm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKERv
Y3VtZW50TG9hZGVyJiBsb2FkZXIpCiB7Ci0gICAgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJz
LnJlbW92ZShsb2FkZXIpOwotICAgIG1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5yZW1v
dmUobG9hZGVyKTsKKyAgICBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMucmVtb3ZlKCZsb2Fk
ZXIpOworICAgIG1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5yZW1vdmUoJmxvYWRlcik7
CiAKLSAgICBpZiAoYXV0byogaG9zdCA9IGxvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKSkK
KyAgICBpZiAoYXV0byogaG9zdCA9IGxvYWRlci5hcHBsaWNhdGlvbkNhY2hlSG9zdFVubGVzc0Jl
aW5nRGVzdHJveWVkKCkpCiAgICAgICAgIGhvc3QtPnNldEFwcGxpY2F0aW9uQ2FjaGUobnVsbHB0
cik7IC8vIFdpbGwgc2V0IGNhbmRpZGF0ZSBncm91cCB0byBudWxsLCB0b28uCiAKICAgICBpZiAo
IW1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycy5pc0VtcHR5KCkgfHwgIW1fcGVuZGluZ01hc3Rl
clJlc291cmNlTG9hZGVycy5pc0VtcHR5KCkpCkBAIC0zNzIsMjYgKzM2MywyNiBAQCB2b2lkIEFw
cGxpY2F0aW9uQ2FjaGVHcm91cDo6ZGlzYXNzb2NpYXRlRG9jdW1lbnRMb2FkZXIoRG9jdW1lbnRM
b2FkZXIqIGxvYWRlcikKICAgICBtX25ld2VzdENhY2hlID0gbnVsbHB0cjsKIH0KIAotdm9pZCBB
cHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNhY2hlRGVzdHJveWVkKEFwcGxpY2F0aW9uQ2FjaGUqIGNh
Y2hlKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNhY2hlRGVzdHJveWVkKEFwcGxpY2F0
aW9uQ2FjaGUmIGNhY2hlKQogewotICAgIGlmIChtX2NhY2hlcy5yZW1vdmUoY2FjaGUpICYmIG1f
Y2FjaGVzLmlzRW1wdHkoKSkgeworICAgIGlmIChtX2NhY2hlcy5yZW1vdmUoJmNhY2hlKSAmJiBt
X2NhY2hlcy5pc0VtcHR5KCkpIHsKICAgICAgICAgQVNTRVJUKG1fYXNzb2NpYXRlZERvY3VtZW50
TG9hZGVycy5pc0VtcHR5KCkpOwogICAgICAgICBBU1NFUlQobV9wZW5kaW5nTWFzdGVyUmVzb3Vy
Y2VMb2FkZXJzLmlzRW1wdHkoKSk7CiAgICAgICAgIGRlbGV0ZSB0aGlzOwogICAgIH0KIH0KIAot
dm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnN0b3BMb2FkaW5nSW5GcmFtZShGcmFtZSogZnJh
bWUpCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c3RvcExvYWRpbmdJbkZyYW1lKEZyYW1l
JiBmcmFtZSkKIHsKLSAgICBpZiAoZnJhbWUgIT0gbV9mcmFtZSkKKyAgICBpZiAoJmZyYW1lICE9
IG1fZnJhbWUpCiAgICAgICAgIHJldHVybjsKIAogICAgIGNhY2hlVXBkYXRlRmFpbGVkKCk7CiB9
CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZXROZXdlc3RDYWNoZShQYXNzUmVmUHRy
PEFwcGxpY2F0aW9uQ2FjaGU+IG5ld2VzdENhY2hlKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlR3Jv
dXA6OnNldE5ld2VzdENhY2hlKFJlZjxBcHBsaWNhdGlvbkNhY2hlPiYmIG5ld2VzdENhY2hlKQog
ewotICAgIG1fbmV3ZXN0Q2FjaGUgPSBuZXdlc3RDYWNoZTsKKyAgICBtX25ld2VzdENhY2hlID0g
V1RGTW92ZShuZXdlc3RDYWNoZSk7CiAKICAgICBtX2NhY2hlcy5hZGQobV9uZXdlc3RDYWNoZS5n
ZXQoKSk7CiAgICAgbV9uZXdlc3RDYWNoZS0+c2V0R3JvdXAodGhpcyk7CkBAIC00MDMsNDAgKzM5
NCw0MyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6bWFrZU9ic29sZXRlKCkKICAgICAg
ICAgcmV0dXJuOwogCiAgICAgbV9pc09ic29sZXRlID0gdHJ1ZTsKLSAgICBtX3N0b3JhZ2UtPmNh
Y2hlR3JvdXBNYWRlT2Jzb2xldGUodGhpcyk7CisgICAgbV9zdG9yYWdlLT5jYWNoZUdyb3VwTWFk
ZU9ic29sZXRlKCp0aGlzKTsKICAgICBBU1NFUlQoIW1fc3RvcmFnZUlEKTsKIH0KIAotdm9pZCBB
cHBsaWNhdGlvbkNhY2hlR3JvdXA6OnVwZGF0ZShGcmFtZSogZnJhbWUsIEFwcGxpY2F0aW9uQ2Fj
aGVVcGRhdGVPcHRpb24gdXBkYXRlT3B0aW9uKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
OnVwZGF0ZShGcmFtZSYgZnJhbWUsIEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVPcHRpb24gdXBkYXRl
T3B0aW9uKQogeworICAgIEFTU0VSVChmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKTsK
KyAgICBhdXRvJiBkb2N1bWVudExvYWRlciA9ICpmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRl
cigpOworCiAgICAgaWYgKG1fdXBkYXRlU3RhdHVzID09IENoZWNraW5nIHx8IG1fdXBkYXRlU3Rh
dHVzID09IERvd25sb2FkaW5nKSB7CiAgICAgICAgIGlmICh1cGRhdGVPcHRpb24gPT0gQXBwbGlj
YXRpb25DYWNoZVVwZGF0ZVdpdGhCcm93c2luZ0NvbnRleHQpIHsKLSAgICAgICAgICAgIHBvc3RM
aXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNIRUNLSU5HX0VWRU5ULCBmcmFtZS0+
bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSk7CisgICAgICAgICAgICBwb3N0TGlzdGVuZXJUYXNr
KGV2ZW50TmFtZXMoKS5jaGVja2luZ0V2ZW50LCBkb2N1bWVudExvYWRlcik7CiAgICAgICAgICAg
ICBpZiAobV91cGRhdGVTdGF0dXMgPT0gRG93bmxvYWRpbmcpCi0gICAgICAgICAgICAgICAgcG9z
dExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RE9XTkxPQURJTkdfRVZFTlQsIGZy
YW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKTsKKyAgICAgICAgICAgICAgICBwb3N0TGlz
dGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5kb3dubG9hZGluZ0V2ZW50LCBkb2N1bWVudExvYWRlcik7
CiAgICAgICAgIH0KICAgICAgICAgcmV0dXJuOwogICAgIH0KIAogICAgIC8vIERvbid0IGFjY2Vz
cyBhbnl0aGluZyBvbiBkaXNrIGlmIHByaXZhdGUgYnJvd3NpbmcgaXMgZW5hYmxlZC4KLSAgICBp
ZiAoZnJhbWUtPnBhZ2UoKS0+dXNlc0VwaGVtZXJhbFNlc3Npb24oKSB8fCAhZnJhbWUtPmRvY3Vt
ZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPmNhbkFjY2Vzc0FwcGxpY2F0aW9uQ2FjaGUoZnJhbWUt
PnRyZWUoKS50b3AoKS5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpKSkgeworICAgIGlmIChm
cmFtZS5wYWdlKCktPnVzZXNFcGhlbWVyYWxTZXNzaW9uKCkgfHwgIWZyYW1lLmRvY3VtZW50KCkt
PnNlY3VyaXR5T3JpZ2luKCktPmNhbkFjY2Vzc0FwcGxpY2F0aW9uQ2FjaGUoZnJhbWUudHJlZSgp
LnRvcCgpLmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCkpKSB7CiAgICAgICAgIEFTU0VSVCht
X3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMuaXNFbXB0eSgpKTsKICAgICAgICAgQVNTRVJU
KG1fcGVuZGluZ0VudHJpZXMuaXNFbXB0eSgpKTsKICAgICAgICAgQVNTRVJUKCFtX2NhY2hlQmVp
bmdVcGRhdGVkKTsKLSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9z
dDo6Q0hFQ0tJTkdfRVZFTlQsIGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKTsKLSAg
ICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RVJST1JfRVZFTlQs
IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKTsKKyAgICAgICAgcG9zdExpc3RlbmVy
VGFzayhldmVudE5hbWVzKCkuY2hlY2tpbmdFdmVudCwgZG9jdW1lbnRMb2FkZXIpOworICAgICAg
ICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBkb2N1bWVudExvYWRl
cik7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKICAgICBBU1NFUlQoIW1fZnJhbWUpOwotICAg
IG1fZnJhbWUgPSBmcmFtZTsKKyAgICBtX2ZyYW1lID0gJmZyYW1lOwogCiAgICAgc2V0VXBkYXRl
U3RhdHVzKENoZWNraW5nKTsKIAotICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNo
ZUhvc3Q6OkNIRUNLSU5HX0VWRU5ULCBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOworICAg
IHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmNoZWNraW5nRXZlbnQsIG1fYXNzb2NpYXRl
ZERvY3VtZW50TG9hZGVycyk7CiAgICAgaWYgKCFtX25ld2VzdENhY2hlKSB7CiAgICAgICAgIEFT
U0VSVCh1cGRhdGVPcHRpb24gPT0gQXBwbGljYXRpb25DYWNoZVVwZGF0ZVdpdGhCcm93c2luZ0Nv
bnRleHQpOwotICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpD
SEVDS0lOR19FVkVOVCwgZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkpOworICAgICAg
ICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5jaGVja2luZ0V2ZW50LCBkb2N1bWVudExv
YWRlcik7CiAgICAgfQogICAgIAogICAgIEFTU0VSVCghbV9tYW5pZmVzdEhhbmRsZSk7CkBAIC00
NDksNyArNDQzLDcgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnVwZGF0ZShGcmFtZSog
ZnJhbWUsIEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVPcHRpb24gdXAKICAgICBtX21hbmlmZXN0SGFu
ZGxlID0gY3JlYXRlUmVzb3VyY2VIYW5kbGUobV9tYW5pZmVzdFVSTCwgbV9uZXdlc3RDYWNoZSA/
IG1fbmV3ZXN0Q2FjaGUtPm1hbmlmZXN0UmVzb3VyY2UoKSA6IDApOwogfQogCi12b2lkIEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cDo6YWJvcnQoRnJhbWUqIGZyYW1lKQordm9pZCBBcHBsaWNhdGlvbkNh
Y2hlR3JvdXA6OmFib3J0KEZyYW1lJiBmcmFtZSkKIHsKICAgICBpZiAobV91cGRhdGVTdGF0dXMg
PT0gSWRsZSkKICAgICAgICAgcmV0dXJuOwpAQCAtNDU4LDcgKzQ1Miw3IEBAIHZvaWQgQXBwbGlj
YXRpb25DYWNoZUdyb3VwOjphYm9ydChGcmFtZSogZnJhbWUpCiAgICAgaWYgKG1fY29tcGxldGlv
blR5cGUgIT0gTm9uZSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgZnJhbWUtPmRvY3VtZW50KCkt
PmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OkFwcENhY2hlLCBNZXNzYWdlTGV2ZWw6
OkRlYnVnLCBBU0NJSUxpdGVyYWwoIkFwcGxpY2F0aW9uIENhY2hlIGRvd25sb2FkIHByb2Nlc3Mg
d2FzIGFib3J0ZWQuIikpOworICAgIGZyYW1lLmRvY3VtZW50KCktPmFkZENvbnNvbGVNZXNzYWdl
KE1lc3NhZ2VTb3VyY2U6OkFwcENhY2hlLCBNZXNzYWdlTGV2ZWw6OkRlYnVnLCBBU0NJSUxpdGVy
YWwoIkFwcGxpY2F0aW9uIENhY2hlIGRvd25sb2FkIHByb2Nlc3Mgd2FzIGFib3J0ZWQuIikpOwog
ICAgIGNhY2hlVXBkYXRlRmFpbGVkKCk7CiB9CiAKQEAgLTUwMiw4ICs0OTYsNyBAQCB2b2lkIEFw
cGxpY2F0aW9uQ2FjaGVHcm91cDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlSGFuZGxlKiBo
YW5kbGUsIFJlc291cmNlUgogICAgIEFTU0VSVChoYW5kbGUgPT0gbV9jdXJyZW50SGFuZGxlKTsK
IAogICAgIFVSTCB1cmwoaGFuZGxlLT5maXJzdFJlcXVlc3QoKS51cmwoKSk7Ci0gICAgaWYgKHVy
bC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSkKLSAgICAgICAgdXJsLnJlbW92ZUZyYWdtZW50SWRl
bnRpZmllcigpOworICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKICAgICAKICAg
ICBBU1NFUlQoIW1fY3VycmVudFJlc291cmNlKTsKICAgICBBU1NFUlQobV9wZW5kaW5nRW50cmll
cy5jb250YWlucyh1cmwpKTsKQEAgLTU5Myw3ICs1ODYsNyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2Fj
aGVHcm91cDo6ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUhhbmRsZSogaGFuZGxlLCBkb3VibGUg
ZmluaQogICAgIAogICAgIEFTU0VSVChtX2NhY2hlQmVpbmdVcGRhdGVkKTsKIAotICAgIG1fY2Fj
aGVCZWluZ1VwZGF0ZWQtPmFkZFJlc291cmNlKFdURk1vdmUobV9jdXJyZW50UmVzb3VyY2UpKTsK
KyAgICBtX2NhY2hlQmVpbmdVcGRhdGVkLT5hZGRSZXNvdXJjZShtX2N1cnJlbnRSZXNvdXJjZS5y
ZWxlYXNlTm9uTnVsbCgpKTsKICAgICBtX2N1cnJlbnRIYW5kbGUgPSBudWxscHRyOwogCiAgICAg
Ly8gV2hpbGUgZG93bmxvYWRpbmcgY2hlY2sgdG8gc2VlIGlmIHdlIGhhdmUgZXhjZWVkZWQgdGhl
IGF2YWlsYWJsZSBxdW90YS4KQEAgLTYyNiw4ICs2MTksNyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2Fj
aGVHcm91cDo6ZGlkRmFpbChSZXNvdXJjZUhhbmRsZSogaGFuZGxlLCBjb25zdCBSZXNvdXJjZUVy
cm9yJgogCiAgICAgdW5zaWduZWQgdHlwZSA9IG1fY3VycmVudFJlc291cmNlID8gbV9jdXJyZW50
UmVzb3VyY2UtPnR5cGUoKSA6IG1fcGVuZGluZ0VudHJpZXMuZ2V0KGhhbmRsZS0+Zmlyc3RSZXF1
ZXN0KCkudXJsKCkpOwogICAgIFVSTCB1cmwoaGFuZGxlLT5maXJzdFJlcXVlc3QoKS51cmwoKSk7
Ci0gICAgaWYgKHVybC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSkKLSAgICAgICAgdXJsLnJlbW92
ZUZyYWdtZW50SWRlbnRpZmllcigpOworICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIo
KTsKIAogICAgIEFTU0VSVCghbV9jdXJyZW50UmVzb3VyY2UgfHwgIW1fcGVuZGluZ0VudHJpZXMu
Y29udGFpbnModXJsKSk7CiAgICAgbV9jdXJyZW50UmVzb3VyY2UgPSBudWxscHRyOwpAQCAtNzM0
LDcgKzcyNiw3IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpkaWRGaW5pc2hMb2FkaW5n
TWFuaWZlc3QoKQogICAgIC8vIFdlIGhhdmUgdGhlIG1hbmlmZXN0LCBub3cgZG93bmxvYWQgdGhl
IHJlc291cmNlcy4KICAgICBzZXRVcGRhdGVTdGF0dXMoRG93bmxvYWRpbmcpOwogICAgIAotICAg
IHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkRPV05MT0FESU5HX0VWRU5U
LCBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOworICAgIHBvc3RMaXN0ZW5lclRhc2soZXZl
bnROYW1lcygpLmRvd25sb2FkaW5nRXZlbnQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7
CiAKICAgICBBU1NFUlQobV9wZW5kaW5nRW50cmllcy5pc0VtcHR5KCkpOwogCkBAIC04MDIsOCAr
Nzk0LDggQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6Om1hbmlmZXN0Tm90Rm91bmQoKQog
ewogICAgIG1ha2VPYnNvbGV0ZSgpOwogCi0gICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlv
bkNhY2hlSG9zdDo6T0JTT0xFVEVfRVZFTlQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7
Ci0gICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RVJST1JfRVZFTlQs
IG1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycyk7CisgICAgcG9zdExpc3RlbmVyVGFzayhl
dmVudE5hbWVzKCkub2Jzb2xldGVFdmVudCwgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsK
KyAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBtX3BlbmRpbmdN
YXN0ZXJSZXNvdXJjZUxvYWRlcnMpOwogCiAgICAgc3RvcExvYWRpbmcoKTsKIApAQCAtODEzLDE2
ICs4MDUsMTYgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6Om1hbmlmZXN0Tm90Rm91bmQo
KQogICAgIHdoaWxlICghbV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLmlzRW1wdHkoKSkg
ewogICAgICAgICBIYXNoU2V0PERvY3VtZW50TG9hZGVyKj46Oml0ZXJhdG9yIGl0ID0gbV9wZW5k
aW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLmJlZ2luKCk7CiAgICAgICAgIAotICAgICAgICBBU1NF
UlQoKCppdCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPmNhbmRpZGF0ZUFwcGxpY2F0aW9uQ2Fj
aGVHcm91cCgpID09IHRoaXMpOwotICAgICAgICBBU1NFUlQoISgqaXQpLT5hcHBsaWNhdGlvbkNh
Y2hlSG9zdCgpLT5hcHBsaWNhdGlvbkNhY2hlKCkpOwotICAgICAgICAoKml0KS0+YXBwbGljYXRp
b25DYWNoZUhvc3QoKS0+c2V0Q2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKG51bGxwdHIp
OworICAgICAgICBBU1NFUlQoKCppdCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuY2FuZGlkYXRl
QXBwbGljYXRpb25DYWNoZUdyb3VwKCkgPT0gdGhpcyk7CisgICAgICAgIEFTU0VSVCghKCppdCkt
PmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuYXBwbGljYXRpb25DYWNoZSgpKTsKKyAgICAgICAgKCpp
dCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2V0Q2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdy
b3VwKG51bGxwdHIpOwogICAgICAgICBtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMucmVt
b3ZlKGl0KTsKICAgICB9CiAKICAgICBtX2Rvd25sb2FkaW5nUGVuZGluZ01hc3RlclJlc291cmNl
TG9hZGVyc0NvdW50ID0gMDsKICAgICBzZXRVcGRhdGVTdGF0dXMoSWRsZSk7ICAgIAogICAgIG1f
ZnJhbWUgPSBudWxscHRyOwotICAgIAorCiAgICAgaWYgKG1fY2FjaGVzLmlzRW1wdHkoKSkgewog
ICAgICAgICBBU1NFUlQobV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzLmlzRW1wdHkoKSk7CiAg
ICAgICAgIEFTU0VSVCghbV9jYWNoZUJlaW5nVXBkYXRlZCk7CkBAIC04NDksMTMgKzg0MSwxMyBA
QCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6Y2hlY2tJZkxvYWRJc0NvbXBsZXRlKCkKIAog
ICAgICAgICAvLyBUaGUgc3RvcmFnZSBjb3VsZCBoYXZlIGJlZW4gbWFudWFsbHkgZW1wdGllZCBi
eSB0aGUgdXNlci4KICAgICAgICAgaWYgKCFtX3N0b3JhZ2VJRCkKLSAgICAgICAgICAgIG1fc3Rv
cmFnZS0+c3RvcmVOZXdlc3RDYWNoZSh0aGlzKTsKKyAgICAgICAgICAgIG1fc3RvcmFnZS0+c3Rv
cmVOZXdlc3RDYWNoZSgqdGhpcyk7CiAKLSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNh
dGlvbkNhY2hlSG9zdDo6Tk9VUERBVEVfRVZFTlQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVy
cyk7CisgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLm5vdXBkYXRlRXZlbnQs
IG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2Ug
RmFpbHVyZToKICAgICAgICAgQVNTRVJUKCFtX2NhY2hlQmVpbmdVcGRhdGVkKTsKLSAgICAgICAg
cG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RVJST1JfRVZFTlQsIG1fYXNz
b2NpYXRlZERvY3VtZW50TG9hZGVycyk7CisgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnRO
YW1lcygpLmVycm9yRXZlbnQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CiAgICAgICAg
IGlmIChtX2NhY2hlcy5pc0VtcHR5KCkpIHsKICAgICAgICAgICAgIEFTU0VSVChtX2Fzc29jaWF0
ZWREb2N1bWVudExvYWRlcnMuaXNFbXB0eSgpKTsKICAgICAgICAgICAgIGRlbGV0ZSB0aGlzOwpA
QCAtODY3LDcgKzg1OSw3IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpjaGVja0lmTG9h
ZElzQ29tcGxldGUoKQogCiAgICAgICAgIEFTU0VSVChtX2NhY2hlQmVpbmdVcGRhdGVkKTsKICAg
ICAgICAgaWYgKG1fbWFuaWZlc3RSZXNvdXJjZSkKLSAgICAgICAgICAgIG1fY2FjaGVCZWluZ1Vw
ZGF0ZWQtPnNldE1hbmlmZXN0UmVzb3VyY2UoV1RGTW92ZShtX21hbmlmZXN0UmVzb3VyY2UpKTsK
KyAgICAgICAgICAgIG1fY2FjaGVCZWluZ1VwZGF0ZWQtPnNldE1hbmlmZXN0UmVzb3VyY2UobV9t
YW5pZmVzdFJlc291cmNlLnJlbGVhc2VOb25OdWxsKCkpOwogICAgICAgICBlbHNlIHsKICAgICAg
ICAgICAgIC8vIFdlIGNhbiBnZXQgaGVyZSBhcyBhIHJlc3VsdCBvZiByZXRyeWluZyB0aGUgQ29t
cGxldGUgc3RlcCwgZm9sbG93aW5nCiAgICAgICAgICAgICAvLyBhIGZhaWx1cmUgb2YgdGhlIGNh
Y2hlIHN0b3JhZ2UgdG8gc2F2ZSB0aGUgbmV3ZXN0IGNhY2hlIGR1ZSB0byBoaXR0aW5nCkBAIC04
ODcsMTggKzg3OSwxOCBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6Y2hlY2tJZkxvYWRJ
c0NvbXBsZXRlKCkKICAgICAgICAgICAgIGRpZFJlYWNoT3JpZ2luUXVvdGEodG90YWxTcGFjZU5l
ZWRlZCk7CiAKICAgICAgICAgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OkZhaWx1cmVSZWFzb24g
ZmFpbHVyZVJlYXNvbjsKLSAgICAgICAgc2V0TmV3ZXN0Q2FjaGUoV1RGTW92ZShtX2NhY2hlQmVp
bmdVcGRhdGVkKSk7Ci0gICAgICAgIGlmIChtX3N0b3JhZ2UtPnN0b3JlTmV3ZXN0Q2FjaGUodGhp
cywgb2xkTmV3ZXN0Q2FjaGUuZ2V0KCksIGZhaWx1cmVSZWFzb24pKSB7CisgICAgICAgIHNldE5l
d2VzdENhY2hlKG1fY2FjaGVCZWluZ1VwZGF0ZWQucmVsZWFzZU5vbk51bGwoKSk7CisgICAgICAg
IGlmIChtX3N0b3JhZ2UtPnN0b3JlTmV3ZXN0Q2FjaGUoKnRoaXMsIG9sZE5ld2VzdENhY2hlLmdl
dCgpLCBmYWlsdXJlUmVhc29uKSkgewogICAgICAgICAgICAgLy8gTmV3IGNhY2hlIHN0b3JlZCwg
bm93IHJlbW92ZSB0aGUgb2xkIGNhY2hlLgogICAgICAgICAgICAgaWYgKG9sZE5ld2VzdENhY2hl
KQogICAgICAgICAgICAgICAgIG1fc3RvcmFnZS0+cmVtb3ZlKG9sZE5ld2VzdENhY2hlLmdldCgp
KTsKIAogICAgICAgICAgICAgLy8gRmlyZSB0aGUgZmluYWwgcHJvZ3Jlc3MgZXZlbnQuCiAgICAg
ICAgICAgICBBU1NFUlQobV9wcm9ncmVzc0RvbmUgPT0gbV9wcm9ncmVzc1RvdGFsKTsKLSAgICAg
ICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OlBST0dSRVNTX0VW
RU5ULCBtX3Byb2dyZXNzVG90YWwsIG1fcHJvZ3Jlc3NEb25lLCBtX2Fzc29jaWF0ZWREb2N1bWVu
dExvYWRlcnMpOworICAgICAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkucHJv
Z3Jlc3NFdmVudCwgbV9wcm9ncmVzc1RvdGFsLCBtX3Byb2dyZXNzRG9uZSwgbV9hc3NvY2lhdGVk
RG9jdW1lbnRMb2FkZXJzKTsKIAogICAgICAgICAgICAgLy8gRmlyZSB0aGUgc3VjY2VzcyBldmVu
dC4KLSAgICAgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soaXNVcGdyYWRlQXR0ZW1wdCA/IEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0OjpVUERBVEVSRUFEWV9FVkVOVCA6IEFwcGxpY2F0aW9uQ2FjaGVIb3N0
OjpDQUNIRURfRVZFTlQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CisgICAgICAgICAg
ICBwb3N0TGlzdGVuZXJUYXNrKGlzVXBncmFkZUF0dGVtcHQgPyBldmVudE5hbWVzKCkudXBkYXRl
cmVhZHlFdmVudCA6IGV2ZW50TmFtZXMoKS5jYWNoZWRFdmVudCwgbV9hc3NvY2lhdGVkRG9jdW1l
bnRMb2FkZXJzKTsKICAgICAgICAgICAgIC8vIEl0IGlzIGNsZWFyIHRoYXQgdGhlIG9yaWdpbiBx
dW90YSB3YXMgbm90IHJlYWNoZWQsIHNvIGNsZWFyIHRoZSBmbGFnIGlmIGl0IHdhcyBzZXQuCiAg
ICAgICAgICAgICBtX29yaWdpblF1b3RhRXhjZWVkZWRQcmV2aW91c2x5ID0gZmFsc2U7CiAgICAg
ICAgIH0gZWxzZSB7CkBAIC05MTksMTAgKzkxMSw4IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdy
b3VwOjpjaGVja0lmTG9hZElzQ29tcGxldGUoKQogCiAgICAgICAgICAgICAgICAgLy8gU2F2ZSBh
IHJlZmVyZW5jZSB0byB0aGUgbmV3IGNhY2hlLgogICAgICAgICAgICAgICAgIG1fY2FjaGVCZWlu
Z1VwZGF0ZWQgPSBXVEZNb3ZlKG1fbmV3ZXN0Q2FjaGUpOwotICAgICAgICAgICAgICAgIGlmIChv
bGROZXdlc3RDYWNoZSkgewotICAgICAgICAgICAgICAgICAgICAvLyBSZWluc3RhdGUgdGhlIG9s
ZE5ld2VzdENhY2hlLgotICAgICAgICAgICAgICAgICAgICBzZXROZXdlc3RDYWNoZShXVEZNb3Zl
KG9sZE5ld2VzdENhY2hlKSk7Ci0gICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGlm
IChvbGROZXdlc3RDYWNoZSkKKyAgICAgICAgICAgICAgICAgICAgc2V0TmV3ZXN0Q2FjaGUob2xk
TmV3ZXN0Q2FjaGUucmVsZWFzZU5vbk51bGwoKSk7CiAgICAgICAgICAgICAgICAgc2NoZWR1bGVS
ZWFjaGVkTWF4QXBwQ2FjaGVTaXplQ2FsbGJhY2soKTsKICAgICAgICAgICAgICAgICByZXR1cm47
CiAgICAgICAgICAgICB9CkBAIC05MzAsNyArOTIwLDcgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hl
R3JvdXA6OmNoZWNrSWZMb2FkSXNDb21wbGV0ZSgpCiAgICAgICAgICAgICAvLyBSdW4gdGhlICJj
YWNoZSBmYWlsdXJlIHN0ZXBzIgogICAgICAgICAgICAgLy8gRmlyZSB0aGUgZXJyb3IgZXZlbnRz
IHRvIGFsbCBwZW5kaW5nIG1hc3RlciBlbnRyaWVzLCBhcyB3ZWxsIGFueSBvdGhlciBjYWNoZSBo
b3N0cwogICAgICAgICAgICAgLy8gY3VycmVudGx5IGFzc29jaWF0ZWQgd2l0aCBhIGNhY2hlIGlu
IHRoaXMgZ3JvdXAuCi0gICAgICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2Fj
aGVIb3N0OjpFUlJPUl9FVkVOVCwgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsKKyAgICAg
ICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmVycm9yRXZlbnQsIG1fYXNzb2Np
YXRlZERvY3VtZW50TG9hZGVycyk7CiAgICAgICAgICAgICAvLyBEaXNhc3NvY2lhdGUgdGhlIHBl
bmRpbmcgbWFzdGVyIGVudHJpZXMgZnJvbSB0aGUgZmFpbGVkIG5ldyBjYWNoZS4gTm90ZSB0aGF0
CiAgICAgICAgICAgICAvLyBhbGwgb3RoZXIgbG9hZGVycyBpbiB0aGUgbV9hc3NvY2lhdGVkRG9j
dW1lbnRMb2FkZXJzIGFyZSBzdGlsbCBhc3NvY2lhdGVkIHdpdGgKICAgICAgICAgICAgIC8vIHNv
bWUgb3RoZXIgY2FjaGUgaW4gdGhpcyBncm91cC4gVGhleSBhcmUgbm90IGFzc29jaWF0ZWQgd2l0
aCB0aGUgZmFpbGVkIG5ldyBjYWNoZS4KQEAgLTkzOSwxMiArOTI5LDEyIEBAIHZvaWQgQXBwbGlj
YXRpb25DYWNoZUdyb3VwOjpjaGVja0lmTG9hZElzQ29tcGxldGUoKQogICAgICAgICAgICAgVmVj
dG9yPERvY3VtZW50TG9hZGVyKj4gbG9hZGVyczsKICAgICAgICAgICAgIGNvcHlUb1ZlY3Rvciht
X3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMsIGxvYWRlcnMpOwogICAgICAgICAgICAgZm9y
IChhdXRvJiBsb2FkZXIgOiBsb2FkZXJzKQotICAgICAgICAgICAgICAgIGRpc2Fzc29jaWF0ZURv
Y3VtZW50TG9hZGVyKGxvYWRlcik7IC8vIFRoaXMgY2FuIGRlbGV0ZSB0aGlzIGdyb3VwLgorICAg
ICAgICAgICAgICAgIGRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKCpsb2FkZXIpOyAvLyBUaGlz
IGNhbiBkZWxldGUgdGhpcyBncm91cC4KIAogICAgICAgICAgICAgLy8gUmVpbnN0YXRlIHRoZSBv
bGROZXdlc3RDYWNoZSwgaWYgdGhlcmUgd2FzIG9uZS4KICAgICAgICAgICAgIGlmIChvbGROZXdl
c3RDYWNoZSkgewogICAgICAgICAgICAgICAgIC8vIFRoaXMgd2lsbCBkaXNjYXJkIHRoZSBmYWls
ZWQgbmV3IGNhY2hlLgotICAgICAgICAgICAgICAgIHNldE5ld2VzdENhY2hlKFdURk1vdmUob2xk
TmV3ZXN0Q2FjaGUpKTsKKyAgICAgICAgICAgICAgICBzZXROZXdlc3RDYWNoZShvbGROZXdlc3RD
YWNoZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAg
ICAgICAgLy8gV2UgbXVzdCBoYXZlIGJlZW4gZGVsZXRlZCBieSB0aGUgbGFzdCBjYWxsIHRvIGRp
c2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKCkuCiAgICAgICAgICAgICAgICAgcmV0dXJuOwpAQCAt
OTczLDE0ICs5NjMsMTMgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnN0YXJ0TG9hZGlu
Z0VudHJ5KCkKICAgICAgICAgcmV0dXJuOwogICAgIH0KICAgICAKLSAgICBFbnRyeU1hcDo6Y29u
c3RfaXRlcmF0b3IgaXQgPSBtX3BlbmRpbmdFbnRyaWVzLmJlZ2luKCk7CisgICAgYXV0byBmaXJz
dFBlbmRpbmdFbnRyeVVSTCA9IG1fcGVuZGluZ0VudHJpZXMuYmVnaW4oKS0+a2V5OwogCi0gICAg
cG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6UFJPR1JFU1NfRVZFTlQsIG1f
cHJvZ3Jlc3NUb3RhbCwgbV9wcm9ncmVzc0RvbmUsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVy
cyk7CisgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkucHJvZ3Jlc3NFdmVudCwgbV9w
cm9ncmVzc1RvdGFsLCBtX3Byb2dyZXNzRG9uZSwgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJz
KTsKICAgICBtX3Byb2dyZXNzRG9uZSsrOwogCiAgICAgQVNTRVJUKCFtX2N1cnJlbnRIYW5kbGUp
OwotICAgIAotICAgIG1fY3VycmVudEhhbmRsZSA9IGNyZWF0ZVJlc291cmNlSGFuZGxlKFVSTChQ
YXJzZWRVUkxTdHJpbmcsIGl0LT5rZXkpLCBtX25ld2VzdENhY2hlID8gbV9uZXdlc3RDYWNoZS0+
cmVzb3VyY2VGb3JVUkwoaXQtPmtleSkgOiAwKTsKKyAgICBtX2N1cnJlbnRIYW5kbGUgPSBjcmVh
dGVSZXNvdXJjZUhhbmRsZShVUkwoUGFyc2VkVVJMU3RyaW5nLCBmaXJzdFBlbmRpbmdFbnRyeVVS
TCksIG1fbmV3ZXN0Q2FjaGUgPyBtX25ld2VzdENhY2hlLT5yZXNvdXJjZUZvclVSTChmaXJzdFBl
bmRpbmdFbnRyeVVSTCkgOiAwKTsKIH0KIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRl
bGl2ZXJEZWxheWVkTWFpblJlc291cmNlcygpCkBAIC05ODgsMTkgKzk3NywxNSBAQCB2b2lkIEFw
cGxpY2F0aW9uQ2FjaGVHcm91cDo6ZGVsaXZlckRlbGF5ZWRNYWluUmVzb3VyY2VzKCkKICAgICAv
LyBOZWVkIHRvIGNvcHkgbG9hZGVycywgYmVjYXVzZSB0aGUgY2FjaGUgZ3JvdXAgbWF5IGJlIGRl
c3Ryb3llZCBhdCB0aGUgZW5kIG9mIGl0ZXJhdGlvbi4KICAgICBWZWN0b3I8RG9jdW1lbnRMb2Fk
ZXIqPiBsb2FkZXJzOwogICAgIGNvcHlUb1ZlY3RvcihtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxv
YWRlcnMsIGxvYWRlcnMpOwotICAgIHNpemVfdCBjb3VudCA9IGxvYWRlcnMuc2l6ZSgpOwotICAg
IGZvciAoc2l6ZV90IGkgPSAwOyBpICE9IGNvdW50OyArK2kpIHsKLSAgICAgICAgRG9jdW1lbnRM
b2FkZXIqIGxvYWRlciA9IGxvYWRlcnNbaV07CisgICAgZm9yIChhdXRvKiBsb2FkZXIgOiBsb2Fk
ZXJzKSB7CiAgICAgICAgIGlmIChsb2FkZXItPmlzTG9hZGluZ01haW5SZXNvdXJjZSgpKQogICAg
ICAgICAgICAgY29udGludWU7Ci0KLSAgICAgICAgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3Ig
PSBsb2FkZXItPm1haW5Eb2N1bWVudEVycm9yKCk7Ci0gICAgICAgIGlmIChlcnJvci5pc051bGwo
KSkKLSAgICAgICAgICAgIGZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZShsb2FkZXIpOworICAg
ICAgICBpZiAobG9hZGVyLT5tYWluRG9jdW1lbnRFcnJvcigpLmlzTnVsbCgpKQorICAgICAgICAg
ICAgZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKCpsb2FkZXIpOwogICAgICAgICBlbHNlCi0g
ICAgICAgICAgICBmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKGxvYWRlcik7CisgICAgICAgICAg
ICBmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKCpsb2FkZXIpOwogICAgIH0KLSAgICBpZiAoIWNv
dW50KQorICAgIGlmIChsb2FkZXJzLmlzRW1wdHkoKSkKICAgICAgICAgY2hlY2tJZkxvYWRJc0Nv
bXBsZXRlKCk7CiB9CiAKQEAgLTEwMDgsMTMgKzk5MywxMiBAQCB2b2lkIEFwcGxpY2F0aW9uQ2Fj
aGVHcm91cDo6YWRkRW50cnkoY29uc3QgU3RyaW5nJiB1cmwsIHVuc2lnbmVkIHR5cGUpCiB7CiAg
ICAgQVNTRVJUKG1fY2FjaGVCZWluZ1VwZGF0ZWQpOwogICAgIEFTU0VSVCghVVJMKFBhcnNlZFVS
TFN0cmluZywgdXJsKS5oYXNGcmFnbWVudElkZW50aWZpZXIoKSk7Ci0gICAgCisKICAgICAvLyBE
b24ndCBhZGQgdGhlIFVSTCBpZiB3ZSBhbHJlYWR5IGhhdmUgYW4gbWFzdGVyIHJlc291cmNlIGlu
IHRoZSBjYWNoZQogICAgIC8vIChpLmUuLCB0aGUgbWFpbiByZXNvdXJjZSBmaW5pc2hlZCBsb2Fk
aW5nIGJlZm9yZSB0aGUgbWFuaWZlc3QpLgotICAgIGlmIChBcHBsaWNhdGlvbkNhY2hlUmVzb3Vy
Y2UqIHJlc291cmNlID0gbV9jYWNoZUJlaW5nVXBkYXRlZC0+cmVzb3VyY2VGb3JVUkwodXJsKSkg
eworICAgIGlmIChhdXRvKiByZXNvdXJjZSA9IG1fY2FjaGVCZWluZ1VwZGF0ZWQtPnJlc291cmNl
Rm9yVVJMKHVybCkpIHsKICAgICAgICAgQVNTRVJUKHJlc291cmNlLT50eXBlKCkgJiBBcHBsaWNh
dGlvbkNhY2hlUmVzb3VyY2U6Ok1hc3Rlcik7CiAgICAgICAgIEFTU0VSVCghbV9mcmFtZS0+bG9h
ZGVyKCkuZG9jdW1lbnRMb2FkZXIoKS0+aXNMb2FkaW5nTWFpblJlc291cmNlKCkpOwotICAgIAog
ICAgICAgICByZXNvdXJjZS0+YWRkVHlwZSh0eXBlKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0K
QEAgLTEwMjUsMTEgKzEwMDksOCBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6YWRkRW50
cnkoY29uc3QgU3RyaW5nJiB1cmwsIHVuc2lnbmVkIHR5cGUpCiAgICAgICAgIG1fbWFuaWZlc3RS
ZXNvdXJjZS0+YWRkVHlwZSh0eXBlKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KLSAgICAKLSAg
ICBFbnRyeU1hcDo6QWRkUmVzdWx0IHJlc3VsdCA9IG1fcGVuZGluZ0VudHJpZXMuYWRkKHVybCwg
dHlwZSk7Ci0gICAgCi0gICAgaWYgKCFyZXN1bHQuaXNOZXdFbnRyeSkKLSAgICAgICAgcmVzdWx0
Lml0ZXJhdG9yLT52YWx1ZSB8PSB0eXBlOworCisgICAgbV9wZW5kaW5nRW50cmllcy5hZGQodXJs
LCB0eXBlKS5pdGVyYXRvci0+dmFsdWUgfD0gdHlwZTsKIH0KIAogdm9pZCBBcHBsaWNhdGlvbkNh
Y2hlR3JvdXA6OmFzc29jaWF0ZURvY3VtZW50TG9hZGVyV2l0aENhY2hlKERvY3VtZW50TG9hZGVy
KiBsb2FkZXIsIEFwcGxpY2F0aW9uQ2FjaGUqIGNhY2hlKQpAQCAtMTA0MCw2MyArMTAyMSw2MyBA
QCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6YXNzb2NpYXRlRG9jdW1lbnRMb2FkZXJXaXRo
Q2FjaGUoRG9jdW1lbnRMb2FkZXIqIGxvYQogCiAgICAgQVNTRVJUKCFtX2lzT2Jzb2xldGUpOwog
Ci0gICAgbG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5zZXRBcHBsaWNhdGlvbkNhY2hl
KGNhY2hlKTsKKyAgICBsb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2V0QXBwbGljYXRp
b25DYWNoZShjYWNoZSk7CiAKICAgICBBU1NFUlQoIW1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVy
cy5jb250YWlucyhsb2FkZXIpKTsKICAgICBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMuYWRk
KGxvYWRlcik7CiB9CiAKLWNsYXNzIENocm9tZUNsaWVudENhbGxiYWNrVGltZXI6IHB1YmxpYyBU
aW1lckJhc2UgeworY2xhc3MgQ2hyb21lQ2xpZW50Q2FsbGJhY2tUaW1lciBmaW5hbCA6IHB1Ymxp
YyBUaW1lckJhc2UgewogcHVibGljOgotICAgIENocm9tZUNsaWVudENhbGxiYWNrVGltZXIoQXBw
bGljYXRpb25DYWNoZUdyb3VwKiBjYWNoZUdyb3VwKQotICAgICAgICA6IG1fY2FjaGVHcm91cChj
YWNoZUdyb3VwKQorICAgIENocm9tZUNsaWVudENhbGxiYWNrVGltZXIoQXBwbGljYXRpb25DYWNo
ZUdyb3VwJiBncm91cCkKKyAgICAgICAgOiBtX2dyb3VwKGdyb3VwKQogICAgIHsKICAgICB9CiAK
IHByaXZhdGU6Ci0gICAgdm9pZCBmaXJlZCgpIG92ZXJyaWRlCisgICAgdm9pZCBmaXJlZCgpIGZp
bmFsCiAgICAgewotICAgICAgICBtX2NhY2hlR3JvdXAtPmRpZFJlYWNoTWF4QXBwQ2FjaGVTaXpl
KCk7CisgICAgICAgIG1fZ3JvdXAuZGlkUmVhY2hNYXhBcHBDYWNoZVNpemUoKTsKICAgICAgICAg
ZGVsZXRlIHRoaXM7CiAgICAgfQotICAgIC8vIE5vdGUgdGhhdCB0aGVyZSBpcyBubyBuZWVkIHRv
IHVzZSBhIFJlZlB0ciBoZXJlLiBUaGUgQXBwbGljYXRpb25DYWNoZUdyb3VwIGluc3RhbmNlIGlz
IGd1YXJhbnRlZWQKLSAgICAvLyB0byBiZSBhbGl2ZSB3aGVuIHRoZSB0aW1lciBmaXJlcyBzaW5j
ZSBpbnZva2luZyB0aGUgQ2hyb21lQ2xpZW50IGNhbGxiYWNrIGlzIHBhcnQgb2YgaXRzIG5vcm1h
bAorCisgICAgLy8gTm90ZSB0aGF0IHRoZXJlIGlzIG5vIG5lZWQgdG8gdXNlIGEgUmVmIGhlcmUu
IFRoZSBBcHBsaWNhdGlvbkNhY2hlR3JvdXAgaW5zdGFuY2UgaXMgZ3VhcmFudGVlZAorICAgIC8v
IHRvIGJlIGFsaXZlIHdoZW4gdGhlIHRpbWVyIGZpcmVzIHNpbmNlIGludm9raW5nIHRoZSBjYWxs
YmFjayBpcyBwYXJ0IG9mIGl0cyBub3JtYWwKICAgICAvLyB1cGRhdGUgbWFjaGluZXJ5IGFuZCBu
b3RoaW5nIGNhbiB5ZXQgY2F1c2UgaXQgdG8gZ2V0IGRlbGV0ZWQuCi0gICAgQXBwbGljYXRpb25D
YWNoZUdyb3VwKiBtX2NhY2hlR3JvdXA7CisgICAgQXBwbGljYXRpb25DYWNoZUdyb3VwJiBtX2dy
b3VwOwogfTsKIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNjaGVkdWxlUmVhY2hlZE1h
eEFwcENhY2hlU2l6ZUNhbGxiYWNrKCkKIHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwot
ICAgIENocm9tZUNsaWVudENhbGxiYWNrVGltZXIqIHRpbWVyID0gbmV3IENocm9tZUNsaWVudENh
bGxiYWNrVGltZXIodGhpcyk7CisgICAgYXV0byogdGltZXIgPSBuZXcgQ2hyb21lQ2xpZW50Q2Fs
bGJhY2tUaW1lcigqdGhpcyk7CiAgICAgdGltZXItPnN0YXJ0T25lU2hvdCgwKTsKICAgICAvLyBU
aGUgdGltZXIgd2lsbCBkZWxldGUgaXRzZWxmIG9uY2UgaXQgZmlyZXMuCiB9CiAKLXZvaWQgQXBw
bGljYXRpb25DYWNoZUdyb3VwOjpwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0
OjpFdmVudElEIGV2ZW50SUQsIGludCBwcm9ncmVzc1RvdGFsLCBpbnQgcHJvZ3Jlc3NEb25lLCBj
b25zdCBIYXNoU2V0PERvY3VtZW50TG9hZGVyKj4mIGxvYWRlclNldCkKK3ZvaWQgQXBwbGljYXRp
b25DYWNoZUdyb3VwOjpwb3N0TGlzdGVuZXJUYXNrKGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRU
eXBlLCBpbnQgcHJvZ3Jlc3NUb3RhbCwgaW50IHByb2dyZXNzRG9uZSwgY29uc3QgSGFzaFNldDxE
b2N1bWVudExvYWRlcio+JiBsb2FkZXJTZXQpCiB7CiAgICAgZm9yIChhdXRvJiBsb2FkZXIgOiBs
b2FkZXJTZXQpCi0gICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnRJRCwgcHJvZ3Jlc3NUb3Rh
bCwgcHJvZ3Jlc3NEb25lLCBsb2FkZXIpOworICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50
VHlwZSwgcHJvZ3Jlc3NUb3RhbCwgcHJvZ3Jlc3NEb25lLCAqbG9hZGVyKTsKIH0KIAotdm9pZCBB
cHBsaWNhdGlvbkNhY2hlR3JvdXA6OnBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhv
c3Q6OkV2ZW50SUQgZXZlbnRJRCwgaW50IHByb2dyZXNzVG90YWwsIGludCBwcm9ncmVzc0RvbmUs
IERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6cG9z
dExpc3RlbmVyVGFzayhjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgaW50IHByb2dyZXNz
VG90YWwsIGludCBwcm9ncmVzc0RvbmUsIERvY3VtZW50TG9hZGVyJiBsb2FkZXIpCiB7Ci0gICAg
RnJhbWUqIGZyYW1lID0gbG9hZGVyLT5mcmFtZSgpOworICAgIGF1dG8qIGZyYW1lID0gbG9hZGVy
LmZyYW1lKCk7CiAgICAgaWYgKCFmcmFtZSkKICAgICAgICAgcmV0dXJuOwogICAgIAotICAgIEFT
U0VSVChmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSA9PSBsb2FkZXIpOworICAgIEFT
U0VSVChmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSA9PSAmbG9hZGVyKTsKIAotICAg
IFJlZlB0cjxEb2N1bWVudExvYWRlcj4gbG9hZGVyUHJvdGVjdG9yKGxvYWRlcik7Ci0gICAgZnJh
bWUtPmRvY3VtZW50KCktPnBvc3RUYXNrKFtsb2FkZXJQcm90ZWN0b3IsIGV2ZW50SUQsIHByb2dy
ZXNzVG90YWwsIHByb2dyZXNzRG9uZV0gKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQp
IHsKKyAgICBSZWZQdHI8RG9jdW1lbnRMb2FkZXI+IHByb3RlY3RlZExvYWRlcigmbG9hZGVyKTsK
KyAgICBmcmFtZS0+ZG9jdW1lbnQoKS0+cG9zdFRhc2soW3Byb3RlY3RlZExvYWRlciwgJmV2ZW50
VHlwZSwgcHJvZ3Jlc3NUb3RhbCwgcHJvZ3Jlc3NEb25lXSAoU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCYgY29udGV4dCkgewogICAgICAgICBBU1NFUlRfVU5VU0VEKGNvbnRleHQsIGNvbnRleHQuaXNE
b2N1bWVudCgpKTsKLSAgICAgICAgRnJhbWUqIGZyYW1lID0gbG9hZGVyUHJvdGVjdG9yLT5mcmFt
ZSgpOworICAgICAgICBhdXRvKiBmcmFtZSA9IHByb3RlY3RlZExvYWRlci0+ZnJhbWUoKTsKICAg
ICAgICAgaWYgKCFmcmFtZSkKICAgICAgICAgICAgIHJldHVybjsKIAotICAgICAgICBBU1NFUlQo
ZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkgPT0gbG9hZGVyUHJvdGVjdG9yKTsKLQot
ICAgICAgICBsb2FkZXJQcm90ZWN0b3ItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm5vdGlmeURP
TUFwcGxpY2F0aW9uQ2FjaGUoZXZlbnRJRCwgcHJvZ3Jlc3NUb3RhbCwgcHJvZ3Jlc3NEb25lKTsK
KyAgICAgICAgQVNTRVJUKGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpID09IHByb3Rl
Y3RlZExvYWRlcik7CisgICAgICAgIHByb3RlY3RlZExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhv
c3QoKS5ub3RpZnlET01BcHBsaWNhdGlvbkNhY2hlKGV2ZW50VHlwZSwgcHJvZ3Jlc3NUb3RhbCwg
cHJvZ3Jlc3NEb25lKTsKICAgICB9KTsKIH0KIApAQCAtMTEwOCw4ICsxMDg5LDcgQEAgdm9pZCBB
cHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNldFVwZGF0ZVN0YXR1cyhVcGRhdGVTdGF0dXMgc3RhdHVz
KQogdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNsZWFyU3RvcmFnZUlEKCkKIHsKICAgICBt
X3N0b3JhZ2VJRCA9IDA7Ci0gICAgCi0gICAgZm9yIChjb25zdCBhdXRvJiBjYWNoZSA6IG1fY2Fj
aGVzKQorICAgIGZvciAoYXV0byYgY2FjaGUgOiBtX2NhY2hlcykKICAgICAgICAgY2FjaGUtPmNs
ZWFyU3RvcmFnZUlEKCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9h
cHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9h
cHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuaAppbmRleCBiMDY0NGM0NmM4NjY5MWNhOGQw
MDkzNTU3NjhmYjU4OTE2ZGY3OWIxLi5mYzg1MWRhN2NmYThjNDMzMmY2ODVlYTI5MTIyZTM3ZDRk
YjdhYWEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGlj
YXRpb25DYWNoZUdyb3VwLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0Fw
cGxpY2F0aW9uQ2FjaGVHcm91cC5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAo
QykgMjAwOCwgMjAwOSwgMjAxMCBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisgKiBD
b3B5cmlnaHQgKEMpIDIwMDgtMjAxNyBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAg
KgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTQ5LDggKzQ5LDkgQEAgZW51bSBBcHBs
aWNhdGlvbkNhY2hlVXBkYXRlT3B0aW9uIHsKICAgICBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlV2l0
aG91dEJyb3dzaW5nQ29udGV4dAogfTsKIAotY2xhc3MgQXBwbGljYXRpb25DYWNoZUdyb3VwIDog
UmVzb3VyY2VIYW5kbGVDbGllbnQgewotICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKEFwcGxpY2F0
aW9uQ2FjaGVHcm91cCk7IFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworY2xhc3MgQXBwbGljYXRp
b25DYWNoZUdyb3VwIGZpbmFsIDogcHJpdmF0ZSBSZXNvdXJjZUhhbmRsZUNsaWVudCB7CisgICAg
V1RGX01BS0VfTk9OQ09QWUFCTEUoQXBwbGljYXRpb25DYWNoZUdyb3VwKTsKKyAgICBXVEZfTUFL
RV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKICAgICBleHBsaWNpdCBBcHBsaWNhdGlvbkNhY2hl
R3JvdXAoUmVmPEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlPiYmLCBjb25zdCBVUkwmIG1hbmlmZXN0
VVJMKTsKICAgICB2aXJ0dWFsIH5BcHBsaWNhdGlvbkNhY2hlR3JvdXAoKTsKQEAgLTYwLDggKzYx
LDggQEAgcHVibGljOgogICAgIHN0YXRpYyBBcHBsaWNhdGlvbkNhY2hlKiBjYWNoZUZvck1haW5S
ZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIERvY3VtZW50TG9hZGVyKik7CiAgICAgc3Rh
dGljIEFwcGxpY2F0aW9uQ2FjaGUqIGZhbGxiYWNrQ2FjaGVGb3JNYWluUmVxdWVzdChjb25zdCBS
ZXNvdXJjZVJlcXVlc3QmLCBEb2N1bWVudExvYWRlciopOwogICAgIAotICAgIHN0YXRpYyB2b2lk
IHNlbGVjdENhY2hlKEZyYW1lKiwgY29uc3QgVVJMJiBtYW5pZmVzdFVSTCk7Ci0gICAgc3RhdGlj
IHZvaWQgc2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3RVUkwoRnJhbWUqKTsKKyAgICBzdGF0aWMg
dm9pZCBzZWxlY3RDYWNoZShGcmFtZSYsIGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwpOworICAgIHN0
YXRpYyB2b2lkIHNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0VVJMKEZyYW1lJik7CiAKICAgICBB
cHBsaWNhdGlvbkNhY2hlU3RvcmFnZSYgc3RvcmFnZSgpIHsgcmV0dXJuIG1fc3RvcmFnZTsgfQog
ICAgIGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwoKSBjb25zdCB7IHJldHVybiBtX21hbmlmZXN0VVJM
OyB9CkBAIC03MywzMSArNzQsMzEgQEAgcHVibGljOgogICAgIHVuc2lnbmVkIHN0b3JhZ2VJRCgp
IGNvbnN0IHsgcmV0dXJuIG1fc3RvcmFnZUlEOyB9CiAgICAgdm9pZCBjbGVhclN0b3JhZ2VJRCgp
OwogICAgIAotICAgIHZvaWQgdXBkYXRlKEZyYW1lKiwgQXBwbGljYXRpb25DYWNoZVVwZGF0ZU9w
dGlvbik7IC8vIEZJWE1FOiBGcmFtZSBzaG91bGQgbm90IGJlIG5lZWRlZCB3aGVuIHVwZGF0aW5n
IHdpdGhvdXQgYnJvd3NpbmcgY29udGV4dC4KLSAgICB2b2lkIGNhY2hlRGVzdHJveWVkKEFwcGxp
Y2F0aW9uQ2FjaGUqKTsKKyAgICB2b2lkIHVwZGF0ZShGcmFtZSYsIEFwcGxpY2F0aW9uQ2FjaGVV
cGRhdGVPcHRpb24pOyAvLyBGSVhNRTogRnJhbWUgc2hvdWxkIG5vdCBiZSBuZWVkZWQgd2hlbiB1
cGRhdGluZyB3aXRob3V0IGJyb3dzaW5nIGNvbnRleHQuCisgICAgdm9pZCBjYWNoZURlc3Ryb3ll
ZChBcHBsaWNhdGlvbkNhY2hlJik7CiAgICAgCi0gICAgdm9pZCBhYm9ydChGcmFtZSopOworICAg
IHZvaWQgYWJvcnQoRnJhbWUmKTsKIAotICAgIGJvb2wgY2FjaGVJc0NvbXBsZXRlKEFwcGxpY2F0
aW9uQ2FjaGUqIGNhY2hlKSB7IHJldHVybiBtX2NhY2hlcy5jb250YWlucyhjYWNoZSk7IH0KKyAg
ICBib29sIGNhY2hlSXNDb21wbGV0ZShBcHBsaWNhdGlvbkNhY2hlJiBjYWNoZSkgeyByZXR1cm4g
bV9jYWNoZXMuY29udGFpbnMoJmNhY2hlKTsgfQogCi0gICAgdm9pZCBzdG9wTG9hZGluZ0luRnJh
bWUoRnJhbWUqKTsKKyAgICB2b2lkIHN0b3BMb2FkaW5nSW5GcmFtZShGcmFtZSYpOwogCiAgICAg
QXBwbGljYXRpb25DYWNoZSogbmV3ZXN0Q2FjaGUoKSBjb25zdCB7IHJldHVybiBtX25ld2VzdENh
Y2hlLmdldCgpOyB9Ci0gICAgdm9pZCBzZXROZXdlc3RDYWNoZShQYXNzUmVmUHRyPEFwcGxpY2F0
aW9uQ2FjaGU+KTsKKyAgICB2b2lkIHNldE5ld2VzdENhY2hlKFJlZjxBcHBsaWNhdGlvbkNhY2hl
PiYmKTsKIAogICAgIHZvaWQgbWFrZU9ic29sZXRlKCk7CiAgICAgYm9vbCBpc09ic29sZXRlKCkg
Y29uc3QgeyByZXR1cm4gbV9pc09ic29sZXRlOyB9CiAKLSAgICB2b2lkIGZpbmlzaGVkTG9hZGlu
Z01haW5SZXNvdXJjZShEb2N1bWVudExvYWRlciopOwotICAgIHZvaWQgZmFpbGVkTG9hZGluZ01h
aW5SZXNvdXJjZShEb2N1bWVudExvYWRlciopOworICAgIHZvaWQgZmluaXNoZWRMb2FkaW5nTWFp
blJlc291cmNlKERvY3VtZW50TG9hZGVyJik7CisgICAgdm9pZCBmYWlsZWRMb2FkaW5nTWFpblJl
c291cmNlKERvY3VtZW50TG9hZGVyJik7CiAKLSAgICB2b2lkIGRpc2Fzc29jaWF0ZURvY3VtZW50
TG9hZGVyKERvY3VtZW50TG9hZGVyKik7CisgICAgdm9pZCBkaXNhc3NvY2lhdGVEb2N1bWVudExv
YWRlcihEb2N1bWVudExvYWRlciYpOwogCiBwcml2YXRlOgotICAgIHN0YXRpYyB2b2lkIHBvc3RM
aXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkV2ZW50SUQgaWQsIGNvbnN0IEhhc2hT
ZXQ8RG9jdW1lbnRMb2FkZXIqPiYgc2V0KSB7IHBvc3RMaXN0ZW5lclRhc2soaWQsIDAsIDAsIHNl
dCk7IH0KLSAgICBzdGF0aWMgdm9pZCBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVI
b3N0OjpFdmVudElEIGlkLCBEb2N1bWVudExvYWRlciogbG9hZGVyKSAgeyBwb3N0TGlzdGVuZXJU
YXNrKGlkLCAwLCAwLCBsb2FkZXIpOyB9Ci0gICAgc3RhdGljIHZvaWQgcG9zdExpc3RlbmVyVGFz
ayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RXZlbnRJRCwgaW50IHByb2dyZXNzVG90YWwsIGludCBw
cm9ncmVzc0RvbmUsIGNvbnN0IEhhc2hTZXQ8RG9jdW1lbnRMb2FkZXIqPiYpOwotICAgIHN0YXRp
YyB2b2lkIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkV2ZW50SUQsIGlu
dCBwcm9ncmVzc1RvdGFsLCBpbnQgcHJvZ3Jlc3NEb25lLCBEb2N1bWVudExvYWRlciopOworICAg
IHN0YXRpYyB2b2lkIHBvc3RMaXN0ZW5lclRhc2soY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5
cGUsIGNvbnN0IEhhc2hTZXQ8RG9jdW1lbnRMb2FkZXIqPiYgc2V0KSB7IHBvc3RMaXN0ZW5lclRh
c2soZXZlbnRUeXBlLCAwLCAwLCBzZXQpOyB9CisgICAgc3RhdGljIHZvaWQgcG9zdExpc3RlbmVy
VGFzayhjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgRG9jdW1lbnRMb2FkZXImIGxvYWRl
cikgIHsgcG9zdExpc3RlbmVyVGFzayhldmVudFR5cGUsIDAsIDAsIGxvYWRlcik7IH0KKyAgICBz
dGF0aWMgdm9pZCBwb3N0TGlzdGVuZXJUYXNrKGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBl
LCBpbnQgcHJvZ3Jlc3NUb3RhbCwgaW50IHByb2dyZXNzRG9uZSwgY29uc3QgSGFzaFNldDxEb2N1
bWVudExvYWRlcio+Jik7CisgICAgc3RhdGljIHZvaWQgcG9zdExpc3RlbmVyVGFzayhjb25zdCBB
dG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgaW50IHByb2dyZXNzVG90YWwsIGludCBwcm9ncmVzc0Rv
bmUsIERvY3VtZW50TG9hZGVyJik7CiAKICAgICB2b2lkIHNjaGVkdWxlUmVhY2hlZE1heEFwcENh
Y2hlU2l6ZUNhbGxiYWNrKCk7CiAKQEAgLTEzNSw3ICsxMzYsNyBAQCBwcml2YXRlOgogCiAgICAg
VVJMIG1fbWFuaWZlc3RVUkw7CiAgICAgUmVmUHRyPFNlY3VyaXR5T3JpZ2luPiBtX29yaWdpbjsK
LSAgICBVcGRhdGVTdGF0dXMgbV91cGRhdGVTdGF0dXM7CisgICAgVXBkYXRlU3RhdHVzIG1fdXBk
YXRlU3RhdHVzIHsgSWRsZSB9OwogICAgIAogICAgIC8vIFRoaXMgaXMgdGhlIG5ld2VzdCBjb21w
bGV0ZSBjYWNoZSBpbiB0aGUgZ3JvdXAuCiAgICAgUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+IG1f
bmV3ZXN0Q2FjaGU7CkBAIC0xNTAsMjYgKzE1MSwyNSBAQCBwcml2YXRlOgogICAgIC8vIExpc3Qg
b2YgcGVuZGluZyBtYXN0ZXIgZW50cmllcywgdXNlZCBkdXJpbmcgdGhlIHVwZGF0ZSBwcm9jZXNz
IHRvIGVuc3VyZSB0aGF0IG5ldyBtYXN0ZXIgZW50cmllcyBhcmUgY2FjaGVkLgogICAgIEhhc2hT
ZXQ8RG9jdW1lbnRMb2FkZXIqPiBtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnM7CiAgICAg
Ly8gSG93IG1hbnkgb2YgdGhlIGFib3ZlIHBlbmRpbmcgbWFzdGVyIGVudHJpZXMgaGF2ZSBub3Qg
eWV0IGZpbmlzaGVkIGRvd25sb2FkaW5nLgotICAgIGludCBtX2Rvd25sb2FkaW5nUGVuZGluZ01h
c3RlclJlc291cmNlTG9hZGVyc0NvdW50OworICAgIGludCBtX2Rvd25sb2FkaW5nUGVuZGluZ01h
c3RlclJlc291cmNlTG9hZGVyc0NvdW50IHsgMCB9OwogICAgIAogICAgIC8vIFRoZXNlIGFyZSBh
bGwgdGhlIGRvY3VtZW50IGxvYWRlcnMgdGhhdCBhcmUgYXNzb2NpYXRlZCB3aXRoIGEgY2FjaGUg
aW4gdGhpcyBncm91cC4KICAgICBIYXNoU2V0PERvY3VtZW50TG9hZGVyKj4gbV9hc3NvY2lhdGVk
RG9jdW1lbnRMb2FkZXJzOwogCiAgICAgLy8gVGhlIFVSTHMgYW5kIHR5cGVzIG9mIHBlbmRpbmcg
Y2FjaGUgZW50cmllcy4KLSAgICB0eXBlZGVmIEhhc2hNYXA8U3RyaW5nLCB1bnNpZ25lZD4gRW50
cnlNYXA7Ci0gICAgRW50cnlNYXAgbV9wZW5kaW5nRW50cmllczsKKyAgICBIYXNoTWFwPFN0cmlu
ZywgdW5zaWduZWQ+IG1fcGVuZGluZ0VudHJpZXM7CiAgICAgCiAgICAgLy8gVGhlIHRvdGFsIG51
bWJlciBvZiBpdGVtcyB0byBiZSBwcm9jZXNzZWQgdG8gdXBkYXRlIHRoZSBjYWNoZSBncm91cCBh
bmQgdGhlIG51bWJlciB0aGF0IGhhdmUgYmVlbiBkb25lLgotICAgIGludCBtX3Byb2dyZXNzVG90
YWw7Ci0gICAgaW50IG1fcHJvZ3Jlc3NEb25lOworICAgIGludCBtX3Byb2dyZXNzVG90YWwgeyAw
IH07CisgICAgaW50IG1fcHJvZ3Jlc3NEb25lIHsgMCB9OwogCiAgICAgLy8gRnJhbWUgdXNlZCBm
b3IgZmV0Y2hpbmcgcmVzb3VyY2VzIHdoZW4gdXBkYXRpbmcuCiAgICAgLy8gRklYTUU6IEFuIHVw
ZGF0ZSBzdGFydGVkIGJ5IGEgcGFydGljdWxhciBmcmFtZSBzaG91bGQgbm90IHN0b3AgaWYgaXQg
aXMgZGVzdHJveWVkLCBidXQgdGhlcmUgYXJlIG90aGVyIGZyYW1lcyBhc3NvY2lhdGVkIHdpdGgg
dGhlIHNhbWUgY2FjaGUgZ3JvdXAuCi0gICAgRnJhbWUqIG1fZnJhbWU7CisgICAgRnJhbWUqIG1f
ZnJhbWUgeyBudWxscHRyIH07CiAgIAogICAgIC8vIEFuIG9ic29sZXRlIGNhY2hlIGdyb3VwIGlz
IG5ldmVyIHN0b3JlZCwgYnV0IHRoZSBvcHBvc2l0ZSBpcyBub3QgdHJ1ZSAtIHN0b3JpbmcgbWF5
IGZhaWwgZm9yIG11bHRpcGxlIHJlYXNvbnMsIHN1Y2ggYXMgZXhjZWVkaW5nIGRpc2sgcXVvdGEu
Ci0gICAgdW5zaWduZWQgbV9zdG9yYWdlSUQ7Ci0gICAgYm9vbCBtX2lzT2Jzb2xldGU7CisgICAg
dW5zaWduZWQgbV9zdG9yYWdlSUQgeyAwIH07CisgICAgYm9vbCBtX2lzT2Jzb2xldGUgeyBmYWxz
ZSB9OwogCiAgICAgLy8gRHVyaW5nIHVwZGF0ZSwgdGhpcyBpcyB1c2VkIHRvIGhhbmRsZSBhc3lu
Y2hyb25vdXNseSBhcnJpdmluZyByZXN1bHRzLgogICAgIGVudW0gQ29tcGxldGlvblR5cGUgewpA
QCAtMTc4LDEyICsxNzgsMTIgQEAgcHJpdmF0ZToKICAgICAgICAgRmFpbHVyZSwKICAgICAgICAg
Q29tcGxldGVkCiAgICAgfTsKLSAgICBDb21wbGV0aW9uVHlwZSBtX2NvbXBsZXRpb25UeXBlOwor
ICAgIENvbXBsZXRpb25UeXBlIG1fY29tcGxldGlvblR5cGUgeyBOb25lIH07CiAKICAgICAvLyBU
aGlzIGZsYWcgaXMgc2V0IGltbWVkaWF0ZWx5IGFmdGVyIHRoZSBDaHJvbWVDbGllbnQ6OnJlYWNo
ZWRNYXhBcHBDYWNoZVNpemUoKSBjYWxsYmFjayBpcyBpbnZva2VkIGFzIGEgcmVzdWx0IG9mIHRo
ZSBzdG9yYWdlIGxheWVyIGZhaWxpbmcgdG8gc2F2ZSBhIGNhY2hlCiAgICAgLy8gZHVlIHRvIHJl
YWNoaW5nIHRoZSBtYXhpbXVtIHNpemUgb2YgdGhlIGFwcGxpY2F0aW9uIGNhY2hlIGRhdGFiYXNl
IGZpbGUuIFRoaXMgZmxhZyBpcyB1c2VkIGJ5IEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6Y2hlY2tJ
ZkxvYWRJc0NvbXBsZXRlKCkgdG8gZGVjaWRlCiAgICAgLy8gdGhlIGNvdXJzZSBvZiBhY3Rpb24g
aW4gY2FzZSBvZiB0aGlzIGZhaWx1cmUgKGkuZS4gY2FsbCB0aGUgQ2hyb21lQ2xpZW50IGNhbGxi
YWNrIG9yIHJ1biB0aGUgZmFpbHVyZSBzdGVwcykuCi0gICAgYm9vbCBtX2NhbGxlZFJlYWNoZWRN
YXhBcHBDYWNoZVNpemU7CisgICAgYm9vbCBtX2NhbGxlZFJlYWNoZWRNYXhBcHBDYWNoZVNpemUg
eyBmYWxzZSB9OwogICAgIAogICAgIFJlZlB0cjxSZXNvdXJjZUhhbmRsZT4gbV9jdXJyZW50SGFu
ZGxlOwogICAgIFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+IG1fY3VycmVudFJlc291
cmNlOwpAQCAtMTkzLDcgKzE5Myw3IEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPFJlc291cmNlSGFu
ZGxlPiBtX21hbmlmZXN0SGFuZGxlOwogCiAgICAgaW50NjRfdCBtX2F2YWlsYWJsZVNwYWNlSW5R
dW90YTsKLSAgICBib29sIG1fb3JpZ2luUXVvdGFFeGNlZWRlZFByZXZpb3VzbHk7CisgICAgYm9v
bCBtX29yaWdpblF1b3RhRXhjZWVkZWRQcmV2aW91c2x5IHsgZmFsc2UgfTsKIAogICAgIGZyaWVu
ZCBjbGFzcyBDaHJvbWVDbGllbnRDYWxsYmFja1RpbWVyOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlSG9zdC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUhvc3QuY3BwCmluZGV4
IDdmNTAwNGM5ODlmOTllM2VlNzVlZjVkOWZjNjU5ZmVhNWQ0ZWM4M2IuLjkxMTQ2OTljODdmZjg1
YzIxM2UwZGRhYTM4ZTM2ODZjNTVkYmJhOGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlSG9zdC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVIb3N0LmNwcApAQCAtMzIsNiArMzIs
NyBAQAogI2luY2x1ZGUgIkNvbnRlbnRTZWN1cml0eVBvbGljeS5oIgogI2luY2x1ZGUgIkRvY3Vt
ZW50TG9hZGVyLmgiCiAjaW5jbHVkZSAiRE9NQXBwbGljYXRpb25DYWNoZS5oIgorI2luY2x1ZGUg
IkV2ZW50TmFtZXMuaCIKICNpbmNsdWRlICJGaWxlU3lzdGVtLmgiCiAjaW5jbHVkZSAiRnJhbWUu
aCIKICNpbmNsdWRlICJGcmFtZUxvYWRlci5oIgpAQCAtNDgsMzEgKzQ5LDI5IEBACiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpBcHBsaWNhdGlvbkNhY2hlSG9z
dChEb2N1bWVudExvYWRlciYgZG9jdW1lbnRMb2FkZXIpCi0gICAgOiBtX2RvbUFwcGxpY2F0aW9u
Q2FjaGUobnVsbHB0cikKLSAgICAsIG1fZG9jdW1lbnRMb2FkZXIoZG9jdW1lbnRMb2FkZXIpCi0g
ICAgLCBtX2RlZmVyc0V2ZW50cyh0cnVlKQotICAgICwgbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNh
Y2hlR3JvdXAobnVsbHB0cikKKyAgICA6IG1fZG9jdW1lbnRMb2FkZXIoZG9jdW1lbnRMb2FkZXIp
CiB7CiB9CiAKIEFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojp+QXBwbGljYXRpb25DYWNoZUhvc3QoKQog
ewogICAgIEFTU0VSVCghbV9hcHBsaWNhdGlvbkNhY2hlIHx8ICFtX2NhbmRpZGF0ZUFwcGxpY2F0
aW9uQ2FjaGVHcm91cCB8fCBtX2FwcGxpY2F0aW9uQ2FjaGUtPmdyb3VwKCkgPT0gbV9jYW5kaWRh
dGVBcHBsaWNhdGlvbkNhY2hlR3JvdXApOwotCiAgICAgaWYgKG1fYXBwbGljYXRpb25DYWNoZSkK
LSAgICAgICAgbV9hcHBsaWNhdGlvbkNhY2hlLT5ncm91cCgpLT5kaXNhc3NvY2lhdGVEb2N1bWVu
dExvYWRlcigmbV9kb2N1bWVudExvYWRlcik7CisgICAgICAgIG1fYXBwbGljYXRpb25DYWNoZS0+
Z3JvdXAoKS0+ZGlzYXNzb2NpYXRlRG9jdW1lbnRMb2FkZXIobV9kb2N1bWVudExvYWRlcik7CiAg
ICAgZWxzZSBpZiAobV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXApCi0gICAgICAgIG1f
Y2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwLT5kaXNhc3NvY2lhdGVEb2N1bWVudExvYWRl
cigmbV9kb2N1bWVudExvYWRlcik7CisgICAgICAgIG1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNo
ZUdyb3VwLT5kaXNhc3NvY2lhdGVEb2N1bWVudExvYWRlcihtX2RvY3VtZW50TG9hZGVyKTsKIH0K
IAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3Qo
KQogewotICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZl
c3RVUkwobV9kb2N1bWVudExvYWRlci5mcmFtZSgpKTsKKyAgICBBU1NFUlQobV9kb2N1bWVudExv
YWRlci5mcmFtZSgpKTsKKyAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVjdENhY2hlV2l0
aG91dE1hbmlmZXN0VVJMKCptX2RvY3VtZW50TG9hZGVyLmZyYW1lKCkpOwogfQogCiB2b2lkIEFw
cGxpY2F0aW9uQ2FjaGVIb3N0OjpzZWxlY3RDYWNoZVdpdGhNYW5pZmVzdChjb25zdCBVUkwmIG1h
bmlmZXN0VVJMKQogewotICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c2VsZWN0Q2FjaGUobV9k
b2N1bWVudExvYWRlci5mcmFtZSgpLCBtYW5pZmVzdFVSTCk7CisgICAgQVNTRVJUKG1fZG9jdW1l
bnRMb2FkZXIuZnJhbWUoKSk7CisgICAgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZWxlY3RDYWNo
ZSgqbV9kb2N1bWVudExvYWRlci5mcmFtZSgpLCBtYW5pZmVzdFVSTCk7CiB9CiAKIHZvaWQgQXBw
bGljYXRpb25DYWNoZUhvc3Q6Om1heWJlTG9hZE1haW5SZXNvdXJjZShSZXNvdXJjZVJlcXVlc3Qm
IHJlcXVlc3QsIFN1YnN0aXR1dGVEYXRhJiBzdWJzdGl0dXRlRGF0YSkKQEAgLTE0MCwxMiArMTM5
LDExIEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZUhvc3Q6Om1heWJlTG9hZEZhbGxiYWNrRm9yTWFp
bkVycm9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYKIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9z
dDo6bWFpblJlc291cmNlRGF0YVJlY2VpdmVkKGNvbnN0IGNoYXIqLCBpbnQsIGxvbmcgbG9uZywg
Ym9vbCkKIHsKLSAgICAvLyBUaGlzIG1ldGhvZCBpcyBoZXJlIHRvIGZhY2lsaXRhdGUgYWx0ZXJu
YXRlIGltcGxlbWV0YXRpb25zIG9mIHRoaXMgaW50ZXJmYWNlIGJ5IHRoZSBob3N0IGJyb3dzZXIu
CiB9CiAKIHZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmZhaWxlZExvYWRpbmdNYWluUmVzb3Vy
Y2UoKQogewotICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAgPSBtX2NhbmRpZGF0ZUFw
cGxpY2F0aW9uQ2FjaGVHcm91cDsKKyAgICBhdXRvKiBncm91cCA9IG1fY2FuZGlkYXRlQXBwbGlj
YXRpb25DYWNoZUdyb3VwOwogICAgIGlmICghZ3JvdXAgJiYgbV9hcHBsaWNhdGlvbkNhY2hlKSB7
CiAgICAgICAgIGlmIChtYWluUmVzb3VyY2VBcHBsaWNhdGlvbkNhY2hlKCkpIHsKICAgICAgICAg
ICAgIC8vIEV2ZW4gd2hlbiB0aGUgbWFpbiByZXNvdXJjZSBpcyBiZWluZyBsb2FkZWQgZnJvbSBh
biBhcHBsaWNhdGlvbiBjYWNoZSwgbG9hZGluZyBjYW4gZmFpbCBpZiBhYm9ydGVkLgpAQCAtMTU1
LDE3ICsxNTMsMTcgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6ZmFpbGVkTG9hZGluZ01h
aW5SZXNvdXJjZSgpCiAgICAgfQogICAgIAogICAgIGlmIChncm91cCkKLSAgICAgICAgZ3JvdXAt
PmZhaWxlZExvYWRpbmdNYWluUmVzb3VyY2UoJm1fZG9jdW1lbnRMb2FkZXIpOworICAgICAgICBn
cm91cC0+ZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZShtX2RvY3VtZW50TG9hZGVyKTsKIH0KIAog
dm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6ZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKCkK
IHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwID0gY2FuZGlkYXRlQXBwbGljYXRp
b25DYWNoZUdyb3VwKCk7CisgICAgYXV0byogZ3JvdXAgPSBjYW5kaWRhdGVBcHBsaWNhdGlvbkNh
Y2hlR3JvdXAoKTsKICAgICBpZiAoIWdyb3VwICYmIGFwcGxpY2F0aW9uQ2FjaGUoKSAmJiAhbWFp
blJlc291cmNlQXBwbGljYXRpb25DYWNoZSgpKQogICAgICAgICBncm91cCA9IGFwcGxpY2F0aW9u
Q2FjaGUoKS0+Z3JvdXAoKTsKICAgICAKICAgICBpZiAoZ3JvdXApCi0gICAgICAgIGdyb3VwLT5m
aW5pc2hlZExvYWRpbmdNYWluUmVzb3VyY2UoJm1fZG9jdW1lbnRMb2FkZXIpOworICAgICAgICBn
cm91cC0+ZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKG1fZG9jdW1lbnRMb2FkZXIpOwogfQog
CiBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjptYXliZUxvYWRSZXNvdXJjZShSZXNvdXJjZUxv
YWRlciYgbG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFVSTCYg
b3JpZ2luYWxVUkwpCkBAIC0xODYsMTcgKzE4NCwxOSBAQCBib29sIEFwcGxpY2F0aW9uQ2FjaGVI
b3N0OjptYXliZUxvYWRSZXNvdXJjZShSZXNvdXJjZUxvYWRlciYgbG9hZGVyLCBjb25zdCBSZXNv
dQogCiBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjptYXliZUxvYWRGYWxsYmFja0ZvclJlZGly
ZWN0KFJlc291cmNlTG9hZGVyKiByZXNvdXJjZUxvYWRlciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1
ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKQogewotICAgIGlm
ICghcmVkaXJlY3RSZXNwb25zZS5pc051bGwoKSAmJiAhcHJvdG9jb2xIb3N0QW5kUG9ydEFyZUVx
dWFsKHJlcXVlc3QudXJsKCksIHJlZGlyZWN0UmVzcG9uc2UudXJsKCkpKQorICAgIGlmICghcmVk
aXJlY3RSZXNwb25zZS5pc051bGwoKSAmJiAhcHJvdG9jb2xIb3N0QW5kUG9ydEFyZUVxdWFsKHJl
cXVlc3QudXJsKCksIHJlZGlyZWN0UmVzcG9uc2UudXJsKCkpKSB7CiAgICAgICAgIGlmIChzY2hl
ZHVsZUxvYWRGYWxsYmFja1Jlc291cmNlRnJvbUFwcGxpY2F0aW9uQ2FjaGUocmVzb3VyY2VMb2Fk
ZXIpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQogICAgIHJldHVybiBmYWxzZTsK
IH0KIAogYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWF5YmVMb2FkRmFsbGJhY2tGb3JSZXNw
b25zZShSZXNvdXJjZUxvYWRlciogcmVzb3VyY2VMb2FkZXIsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmIHJlc3BvbnNlKQogewotICAgIGlmIChyZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpIC8gMTAw
ID09IDQgfHwgcmVzcG9uc2UuaHR0cFN0YXR1c0NvZGUoKSAvIDEwMCA9PSA1KQorICAgIGlmIChy
ZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpIC8gMTAwID09IDQgfHwgcmVzcG9uc2UuaHR0cFN0YXR1
c0NvZGUoKSAvIDEwMCA9PSA1KSB7CiAgICAgICAgIGlmIChzY2hlZHVsZUxvYWRGYWxsYmFja1Jl
c291cmNlRnJvbUFwcGxpY2F0aW9uQ2FjaGUocmVzb3VyY2VMb2FkZXIpKQogICAgICAgICAgICAg
cmV0dXJuIHRydWU7CisgICAgfQogICAgIHJldHVybiBmYWxzZTsKIH0KIApAQCAtMjIwLDExICsy
MjAsOSBAQCBVUkwgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmNyZWF0ZUZpbGVVUkwoY29uc3QgU3Ry
aW5nJiBwYXRoKQogICAgIC8vIGFwcCBjYWNoZSBtZWRpYSBmaWxlcyBhcmUgYWx3YXlzIGNyZWF0
ZWQgd2l0aCBlbmNvZGVGb3JGaWxlTmFtZShjcmVhdGVDYW5vbmljYWxVVUlEU3RyaW5nKCkpLgog
CiAjaWYgVVNFKENGKSAmJiBQTEFURk9STShXSU4pCi0gICAgUmV0YWluUHRyPENGVVJMUmVmPiBj
ZlVSTCA9IGFkb3B0Q0YoQ0ZVUkxDcmVhdGVXaXRoRmlsZVN5c3RlbVBhdGgoMCwgcGF0aC5jcmVh
dGVDRlN0cmluZygpLmdldCgpLCBrQ0ZVUkxXaW5kb3dzUGF0aFN0eWxlLCBmYWxzZSkpOwotICAg
IFVSTCB1cmwoY2ZVUkwuZ2V0KCkpOworICAgIFVSTCB1cmwoYWRvcHRDRihDRlVSTENyZWF0ZVdp
dGhGaWxlU3lzdGVtUGF0aCgwLCBwYXRoLmNyZWF0ZUNGU3RyaW5nKCkuZ2V0KCksIGtDRlVSTFdp
bmRvd3NQYXRoU3R5bGUsIGZhbHNlKSkuZ2V0KCkpOwogI2Vsc2UKICAgICBVUkwgdXJsOwotCiAg
ICAgdXJsLnNldFByb3RvY29sKEFTQ0lJTGl0ZXJhbCgiZmlsZSIpKTsKICAgICB1cmwuc2V0UGF0
aChwYXRoKTsKICNlbmRpZgpAQCAtMjQ2LDcgKzI0NCw3IEBAIGJvb2wgQXBwbGljYXRpb25DYWNo
ZUhvc3Q6Om1heWJlTG9hZFN5bmNocm9ub3VzbHkoUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBS
ZXNvCiAgICAgaWYgKCFzaG91bGRMb2FkUmVzb3VyY2VGcm9tQXBwbGljYXRpb25DYWNoZShyZXF1
ZXN0LCByZXNvdXJjZSkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIFJlZlB0cjxTaGFy
ZWRCdWZmZXI+IHJlc3BvbnNlRGF0YSA9IHJlc291cmNlID8gYnVmZmVyRnJvbVJlc291cmNlKCpy
ZXNvdXJjZSkgOiBudWxscHRyOworICAgIGF1dG8gcmVzcG9uc2VEYXRhID0gcmVzb3VyY2UgPyBi
dWZmZXJGcm9tUmVzb3VyY2UoKnJlc291cmNlKSA6IG51bGxwdHI7CiAgICAgaWYgKCFyZXNwb25z
ZURhdGEpIHsKICAgICAgICAgZXJyb3IgPSBtX2RvY3VtZW50TG9hZGVyLmZyYW1lTG9hZGVyKCkt
PmNsaWVudCgpLmNhbm5vdFNob3dVUkxFcnJvcihyZXF1ZXN0KTsKICAgICAgICAgcmV0dXJuIHRy
dWU7CkBAIC0yODYsMjAgKzI4NCwyMSBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpzZXRE
T01BcHBsaWNhdGlvbkNhY2hlKERPTUFwcGxpY2F0aW9uQ2FjaGUqIGRvbUFwcGxpYwogICAgIG1f
ZG9tQXBwbGljYXRpb25DYWNoZSA9IGRvbUFwcGxpY2F0aW9uQ2FjaGU7CiB9CiAKLXZvaWQgQXBw
bGljYXRpb25DYWNoZUhvc3Q6Om5vdGlmeURPTUFwcGxpY2F0aW9uQ2FjaGUoRXZlbnRJRCBpZCwg
aW50IHRvdGFsLCBpbnQgZG9uZSkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6Om5vdGlmeURP
TUFwcGxpY2F0aW9uQ2FjaGUoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGludCB0b3Rh
bCwgaW50IGRvbmUpCiB7Ci0gICAgaWYgKGlkICE9IFBST0dSRVNTX0VWRU5UKQorICAgIGlmIChl
dmVudFR5cGUgIT0gZXZlbnROYW1lcygpLnByb2dyZXNzRXZlbnQpCiAgICAgICAgIEluc3BlY3Rv
ckluc3RydW1lbnRhdGlvbjo6dXBkYXRlQXBwbGljYXRpb25DYWNoZVN0YXR1cyhtX2RvY3VtZW50
TG9hZGVyLmZyYW1lKCkpOwogCiAgICAgaWYgKG1fZGVmZXJzRXZlbnRzKSB7CiAgICAgICAgIC8v
IEV2ZW50IGRpc3BhdGNoaW5nIGlzIGRlZmVycmVkIHVudGlsIGRvY3VtZW50Lm9ubG9hZCBoYXMg
ZmlyZWQuCi0gICAgICAgIG1fZGVmZXJyZWRFdmVudHMuYXBwZW5kKERlZmVycmVkRXZlbnQoaWQs
IHRvdGFsLCBkb25lKSk7CisgICAgICAgIG1fZGVmZXJyZWRFdmVudHMuYXBwZW5kKHsgZXZlbnRU
eXBlLCB0b3RhbCwgZG9uZSB9KTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KLSAgICBkaXNwYXRj
aERPTUV2ZW50KGlkLCB0b3RhbCwgZG9uZSk7CisKKyAgICBkaXNwYXRjaERPTUV2ZW50KGV2ZW50
VHlwZSwgdG90YWwsIGRvbmUpOwogfQogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpzdG9w
TG9hZGluZ0luRnJhbWUoRnJhbWUqIGZyYW1lKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6
c3RvcExvYWRpbmdJbkZyYW1lKEZyYW1lJiBmcmFtZSkKIHsKICAgICBBU1NFUlQoIW1fYXBwbGlj
YXRpb25DYWNoZSB8fCAhbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAgfHwgbV9hcHBs
aWNhdGlvbkNhY2hlLT5ncm91cCgpID09IG1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3Vw
KTsKIApAQCAtMzEyLDUzICszMTEsNjggQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c3Rv
cExvYWRpbmdJbkZyYW1lKEZyYW1lKiBmcmFtZSkKIHZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6
OnN0b3BEZWZlcnJpbmdFdmVudHMoKQogewogICAgIFJlZjxEb2N1bWVudExvYWRlcj4gcHJvdGVj
dChtX2RvY3VtZW50TG9hZGVyKTsKLSAgICBmb3IgKGF1dG8mIGV2ZW50IDogbV9kZWZlcnJlZEV2
ZW50cykKLSAgICAgICAgZGlzcGF0Y2hET01FdmVudChldmVudC5ldmVudElELCBldmVudC5wcm9n
cmVzc1RvdGFsLCBldmVudC5wcm9ncmVzc0RvbmUpOworCisgICAgLy8gTm90ZSwgZG8gbm90IGNh
Y2hlIHRoZSBzaXplIGluIGEgbG9jYWwgdmFyaWFibGUuCisgICAgLy8gVGhpcyBjb2RlIG5lZWRz
IHRvIHByb3Blcmx5IGhhbmRsZSB0aGUgY2FzZSB3aGVyZSBtb3JlIGV2ZW50cyBhcmUgYWRkZWQg
dG8KKyAgICAvLyBtX2RlZmVycmVkRXZlbnRzIHdoaWxlIGl0ZXJhdGluZyBpdC4gVGhpcyBpcyB3
aHkgd2UgZG9uJ3QgdXNlIGEgbW9kZXJuIGZvciBsb29wLgorICAgIGZvciAoc2l6ZV90IGkgPSAw
OyBpIDwgbV9kZWZlcnJlZEV2ZW50cy5zaXplKCk7ICsraSkgeworICAgICAgICBhdXRvJiBldmVu
dCA9IG1fZGVmZXJyZWRFdmVudHNbaV07CisgICAgICAgIGRpc3BhdGNoRE9NRXZlbnQoZXZlbnQu
ZXZlbnRUeXBlLCBldmVudC5wcm9ncmVzc1RvdGFsLCBldmVudC5wcm9ncmVzc0RvbmUpOworICAg
IH0KKwogICAgIG1fZGVmZXJyZWRFdmVudHMuY2xlYXIoKTsKICAgICBtX2RlZmVyc0V2ZW50cyA9
IGZhbHNlOwogfQogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpmaWxsUmVzb3VyY2VMaXN0
KFJlc291cmNlSW5mb0xpc3QqIHJlc291cmNlcykKK1ZlY3RvcjxBcHBsaWNhdGlvbkNhY2hlSG9z
dDo6UmVzb3VyY2VJbmZvPiBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6cmVzb3VyY2VMaXN0KCkKIHsK
LSAgICBBcHBsaWNhdGlvbkNhY2hlKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKTsKKyAgICBW
ZWN0b3I8UmVzb3VyY2VJbmZvPiByZXN1bHQ7CisKKyAgICBhdXRvKiBjYWNoZSA9IGFwcGxpY2F0
aW9uQ2FjaGUoKTsKICAgICBpZiAoIWNhY2hlIHx8ICFjYWNoZS0+aXNDb21wbGV0ZSgpKQotICAg
ICAgICByZXR1cm47CisgICAgICAgIHJldHVybiByZXN1bHQ7CiAKLSAgICBmb3IgKGNvbnN0IGF1
dG8mIHVybEFuZFJlc291cmNlIDogY2FjaGUtPnJlc291cmNlcygpKSB7Ci0gICAgICAgIEFwcGxp
Y2F0aW9uQ2FjaGVSZXNvdXJjZSogcmVzb3VyY2UgPSB1cmxBbmRSZXNvdXJjZS52YWx1ZS5nZXQo
KTsKKyAgICByZXN1bHQucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShjYWNoZS0+cmVzb3VyY2VzKCku
c2l6ZSgpKTsKIAotICAgICAgICB1bnNpZ25lZCB0eXBlID0gcmVzb3VyY2UtPnR5cGUoKTsKKyAg
ICBmb3IgKGF1dG8mIHVybEFuZFJlc291cmNlIDogY2FjaGUtPnJlc291cmNlcygpKSB7CisgICAg
ICAgIEFTU0VSVCh1cmxBbmRSZXNvdXJjZS52YWx1ZSk7CisgICAgICAgIGF1dG8mIHJlc291cmNl
ID0gKnVybEFuZFJlc291cmNlLnZhbHVlOworCisgICAgICAgIHVuc2lnbmVkIHR5cGUgPSByZXNv
dXJjZS50eXBlKCk7CiAgICAgICAgIGJvb2wgaXNNYXN0ZXIgPSB0eXBlICYgQXBwbGljYXRpb25D
YWNoZVJlc291cmNlOjpNYXN0ZXI7CiAgICAgICAgIGJvb2wgaXNNYW5pZmVzdCA9IHR5cGUgJiBB
cHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6Ok1hbmlmZXN0OwogICAgICAgICBib29sIGlzRXhwbGlj
aXQgPSB0eXBlICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpFeHBsaWNpdDsKICAgICAgICAg
Ym9vbCBpc0ZvcmVpZ24gPSB0eXBlICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpGb3JlaWdu
OwogICAgICAgICBib29sIGlzRmFsbGJhY2sgPSB0eXBlICYgQXBwbGljYXRpb25DYWNoZVJlc291
cmNlOjpGYWxsYmFjazsKIAotICAgICAgICByZXNvdXJjZXMtPmFwcGVuZChSZXNvdXJjZUluZm8o
cmVzb3VyY2UtPnVybCgpLCBpc01hc3RlciwgaXNNYW5pZmVzdCwgaXNGYWxsYmFjaywgaXNGb3Jl
aWduLCBpc0V4cGxpY2l0LCByZXNvdXJjZS0+ZXN0aW1hdGVkU2l6ZUluU3RvcmFnZSgpKSk7Cisg
ICAgICAgIHJlc3VsdC51bmNoZWNrZWRBcHBlbmQoeyByZXNvdXJjZS51cmwoKSwgaXNNYXN0ZXIs
IGlzTWFuaWZlc3QsIGlzRmFsbGJhY2ssIGlzRm9yZWlnbiwgaXNFeHBsaWNpdCwgcmVzb3VyY2Uu
ZXN0aW1hdGVkU2l6ZUluU3RvcmFnZSgpIH0pOwogICAgIH0KKworICAgIHJldHVybiByZXN1bHQ7
CiB9CiAKIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8gQXBwbGljYXRpb25DYWNoZUhv
c3Q6OmFwcGxpY2F0aW9uQ2FjaGVJbmZvKCkKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlKiBjYWNo
ZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKTsKKyAgICBhdXRvKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2Fj
aGUoKTsKICAgICBpZiAoIWNhY2hlIHx8ICFjYWNoZS0+aXNDb21wbGV0ZSgpKQotICAgICAgICBy
ZXR1cm4gQ2FjaGVJbmZvKFVSTCgpLCAwLCAwLCAwKTsKKyAgICAgICAgcmV0dXJuIHsgeyB9LCAw
LCAwLCAwIH07CiAKICAgICAvLyBGSVhNRTogQWRkICJDcmVhdGlvbiBUaW1lIiBhbmQgIlVwZGF0
ZSBUaW1lIiB0byBBcHBsaWNhdGlvbiBDYWNoZXMuCi0gICAgcmV0dXJuIENhY2hlSW5mbyhjYWNo
ZS0+bWFuaWZlc3RSZXNvdXJjZSgpLT51cmwoKSwgMCwgMCwgY2FjaGUtPmVzdGltYXRlZFNpemVJ
blN0b3JhZ2UoKSk7CisgICAgcmV0dXJuIHsgY2FjaGUtPm1hbmlmZXN0UmVzb3VyY2UoKS0+dXJs
KCksIDAsIDAsIGNhY2hlLT5lc3RpbWF0ZWRTaXplSW5TdG9yYWdlKCkgfTsKIH0KIAotdm9pZCBB
cHBsaWNhdGlvbkNhY2hlSG9zdDo6ZGlzcGF0Y2hET01FdmVudChFdmVudElEIGlkLCBpbnQgdG90
YWwsIGludCBkb25lKQorc3RhdGljIFJlZjxFdmVudD4gY3JlYXRlQXBwbGljYXRpb25DYWNoZUV2
ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBpbnQgdG90YWwsIGludCBkb25lKQog
ewotICAgIGlmIChtX2RvbUFwcGxpY2F0aW9uQ2FjaGUpIHsKLSAgICAgICAgY29uc3QgQXRvbWlj
U3RyaW5nJiBldmVudFR5cGUgPSBET01BcHBsaWNhdGlvbkNhY2hlOjp0b0V2ZW50VHlwZShpZCk7
Ci0gICAgICAgIFJlZlB0cjxFdmVudD4gZXZlbnQ7Ci0gICAgICAgIGlmIChpZCA9PSBQUk9HUkVT
U19FVkVOVCkKLSAgICAgICAgICAgIGV2ZW50ID0gUHJvZ3Jlc3NFdmVudDo6Y3JlYXRlKGV2ZW50
VHlwZSwgdHJ1ZSwgZG9uZSwgdG90YWwpOwotICAgICAgICBlbHNlCi0gICAgICAgICAgICBldmVu
dCA9IEV2ZW50OjpjcmVhdGUoZXZlbnRUeXBlLCBmYWxzZSwgZmFsc2UpOwotICAgICAgICBtX2Rv
bUFwcGxpY2F0aW9uQ2FjaGUtPmRpc3BhdGNoRXZlbnQoKmV2ZW50KTsKLSAgICB9CisgICAgaWYg
KGV2ZW50VHlwZSA9PSBldmVudE5hbWVzKCkucHJvZ3Jlc3NFdmVudCkKKyAgICAgICAgcmV0dXJu
IFByb2dyZXNzRXZlbnQ6OmNyZWF0ZShldmVudFR5cGUsIHRydWUsIGRvbmUsIHRvdGFsKTsKKyAg
ICByZXR1cm4gRXZlbnQ6OmNyZWF0ZShldmVudFR5cGUsIGZhbHNlLCBmYWxzZSk7Cit9CisKK3Zv
aWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmRpc3BhdGNoRE9NRXZlbnQoY29uc3QgQXRvbWljU3Ry
aW5nJiBldmVudFR5cGUsIGludCB0b3RhbCwgaW50IGRvbmUpCit7CisgICAgaWYgKCFtX2RvbUFw
cGxpY2F0aW9uQ2FjaGUpCisgICAgICAgIHJldHVybjsKKyAgICBtX2RvbUFwcGxpY2F0aW9uQ2Fj
aGUtPmRpc3BhdGNoRXZlbnQoY3JlYXRlQXBwbGljYXRpb25DYWNoZUV2ZW50KGV2ZW50VHlwZSwg
dG90YWwsIGRvbmUpKTsKIH0KIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c2V0Q2FuZGlk
YXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXApCkBA
IC0zNjcsMjUgKzM4MSwyNCBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpzZXRDYW5kaWRh
dGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoQXBwbGljYXRpb25DYWNoZUdybwogICAgIG1fY2FuZGlk
YXRlQXBwbGljYXRpb25DYWNoZUdyb3VwID0gZ3JvdXA7CiB9CiAgICAgCi12b2lkIEFwcGxpY2F0
aW9uQ2FjaGVIb3N0OjpzZXRBcHBsaWNhdGlvbkNhY2hlKFBhc3NSZWZQdHI8QXBwbGljYXRpb25D
YWNoZT4gYXBwbGljYXRpb25DYWNoZSkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OnNldEFw
cGxpY2F0aW9uQ2FjaGUoUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+JiYgYXBwbGljYXRpb25DYWNo
ZSkKIHsKICAgICBpZiAobV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXApIHsKICAgICAg
ICAgQVNTRVJUKCFtX2FwcGxpY2F0aW9uQ2FjaGUpOwogICAgICAgICBtX2NhbmRpZGF0ZUFwcGxp
Y2F0aW9uQ2FjaGVHcm91cCA9IG51bGxwdHI7CiAgICAgfQotCi0gICAgbV9hcHBsaWNhdGlvbkNh
Y2hlID0gYXBwbGljYXRpb25DYWNoZTsKKyAgICBtX2FwcGxpY2F0aW9uQ2FjaGUgPSBXVEZNb3Zl
KGFwcGxpY2F0aW9uQ2FjaGUpOwogfQogCiBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpzaG91
bGRMb2FkUmVzb3VyY2VGcm9tQXBwbGljYXRpb25DYWNoZShjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
IG9yaWdpbmFsUmVxdWVzdCwgQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiYgcmVzb3VyY2UpCiB7
Ci0gICAgQXBwbGljYXRpb25DYWNoZSogY2FjaGUgPSBhcHBsaWNhdGlvbkNhY2hlKCk7CisgICAg
YXV0byogY2FjaGUgPSBhcHBsaWNhdGlvbkNhY2hlKCk7CiAgICAgaWYgKCFjYWNoZSB8fCAhY2Fj
aGUtPmlzQ29tcGxldGUoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgUmVzb3VyY2VS
ZXF1ZXN0IHJlcXVlc3Qob3JpZ2luYWxSZXF1ZXN0KTsKLSAgICBpZiAoRnJhbWUqIGxvYWRlckZy
YW1lID0gbV9kb2N1bWVudExvYWRlci5mcmFtZSgpKSB7Ci0gICAgICAgIGlmIChEb2N1bWVudCog
ZG9jdW1lbnQgPSBsb2FkZXJGcmFtZS0+ZG9jdW1lbnQoKSkKKyAgICBpZiAoYXV0byogbG9hZGVy
RnJhbWUgPSBtX2RvY3VtZW50TG9hZGVyLmZyYW1lKCkpIHsKKyAgICAgICAgaWYgKGF1dG8qIGRv
Y3VtZW50ID0gbG9hZGVyRnJhbWUtPmRvY3VtZW50KCkpCiAgICAgICAgICAgICBkb2N1bWVudC0+
Y29udGVudFNlY3VyaXR5UG9saWN5KCktPnVwZ3JhZGVJbnNlY3VyZVJlcXVlc3RJZk5lZWRlZChy
ZXF1ZXN0LCBDb250ZW50U2VjdXJpdHlQb2xpY3k6Okluc2VjdXJlUmVxdWVzdFR5cGU6OkxvYWQp
OwogICAgIH0KICAgICAKQEAgLTQzMCw3ICs0NDMsNiBAQCBib29sIEFwcGxpY2F0aW9uQ2FjaGVI
b3N0OjpnZXRBcHBsaWNhdGlvbkNhY2hlRmFsbGJhY2tSZXNvdXJjZShjb25zdCBSZXNvdXJjZVJl
cQogCiAgICAgcmVzb3VyY2UgPSBjYWNoZS0+cmVzb3VyY2VGb3JVUkwoZmFsbGJhY2tVUkwpOwog
ICAgIEFTU0VSVChyZXNvdXJjZSk7Ci0KICAgICByZXR1cm4gdHJ1ZTsKIH0KIApAQCAtNDQ0LDMw
ICs0NTYsMjcgQEAgYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c2NoZWR1bGVMb2FkRmFsbGJh
Y2tSZXNvdXJjZUZyb21BcHBsaWNhdGlvbkNhY2hlKFJlc28KICAgICAgICAgcmV0dXJuIGZhbHNl
OwogCiAgICAgbG9hZGVyLT53aWxsU3dpdGNoVG9TdWJzdGl0dXRlUmVzb3VyY2UoKTsKLQogICAg
IG1fZG9jdW1lbnRMb2FkZXIuc2NoZWR1bGVTdWJzdGl0dXRlUmVzb3VyY2VMb2FkKCpsb2FkZXIs
ICpyZXNvdXJjZSk7Ci0KICAgICByZXR1cm4gdHJ1ZTsKIH0KIAogQXBwbGljYXRpb25DYWNoZUhv
c3Q6OlN0YXR1cyBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c3RhdHVzKCkgY29uc3QKIHsKLSAgICBB
cHBsaWNhdGlvbkNhY2hlKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKTsgICAgCisgICAgYXV0
byogY2FjaGUgPSBhcHBsaWNhdGlvbkNhY2hlKCk7CiAgICAgaWYgKCFjYWNoZSkKICAgICAgICAg
cmV0dXJuIFVOQ0FDSEVEOwogCiAgICAgc3dpdGNoIChjYWNoZS0+Z3JvdXAoKS0+dXBkYXRlU3Rh
dHVzKCkpIHsKLSAgICAgICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OkNoZWNraW5nOgot
ICAgICAgICAgICAgcmV0dXJuIENIRUNLSU5HOwotICAgICAgICBjYXNlIEFwcGxpY2F0aW9uQ2Fj
aGVHcm91cDo6RG93bmxvYWRpbmc6Ci0gICAgICAgICAgICByZXR1cm4gRE9XTkxPQURJTkc7Ci0g
ICAgICAgIGNhc2UgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpJZGxlOiB7Ci0gICAgICAgICAgICBp
ZiAoY2FjaGUtPmdyb3VwKCktPmlzT2Jzb2xldGUoKSkKLSAgICAgICAgICAgICAgICByZXR1cm4g
T0JTT0xFVEU7Ci0gICAgICAgICAgICBpZiAoY2FjaGUgIT0gY2FjaGUtPmdyb3VwKCktPm5ld2Vz
dENhY2hlKCkpCi0gICAgICAgICAgICAgICAgcmV0dXJuIFVQREFURVJFQURZOwotICAgICAgICAg
ICAgcmV0dXJuIElETEU7Ci0gICAgICAgIH0KKyAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVHcm91
cDo6Q2hlY2tpbmc6CisgICAgICAgIHJldHVybiBDSEVDS0lORzsKKyAgICBjYXNlIEFwcGxpY2F0
aW9uQ2FjaGVHcm91cDo6RG93bmxvYWRpbmc6CisgICAgICAgIHJldHVybiBET1dOTE9BRElORzsK
KyAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6SWRsZToKKyAgICAgICAgaWYgKGNhY2hl
LT5ncm91cCgpLT5pc09ic29sZXRlKCkpCisgICAgICAgICAgICByZXR1cm4gT0JTT0xFVEU7Cisg
ICAgICAgIGlmIChjYWNoZSAhPSBjYWNoZS0+Z3JvdXAoKS0+bmV3ZXN0Q2FjaGUoKSkKKyAgICAg
ICAgICAgIHJldHVybiBVUERBVEVSRUFEWTsKKyAgICAgICAgcmV0dXJuIElETEU7CiAgICAgfQog
CiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CkBAIC00NzYsMjcgKzQ4NSwzMCBAQCBBcHBsaWNh
dGlvbkNhY2hlSG9zdDo6U3RhdHVzIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpzdGF0dXMoKSBjb25z
dAogCiBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojp1cGRhdGUoKQogewotICAgIEFwcGxpY2F0
aW9uQ2FjaGUqIGNhY2hlID0gYXBwbGljYXRpb25DYWNoZSgpOworICAgIGF1dG8qIGNhY2hlID0g
YXBwbGljYXRpb25DYWNoZSgpOwogICAgIGlmICghY2FjaGUpCiAgICAgICAgIHJldHVybiBmYWxz
ZTsKLSAgICBjYWNoZS0+Z3JvdXAoKS0+dXBkYXRlKG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUoKSwg
QXBwbGljYXRpb25DYWNoZVVwZGF0ZVdpdGhvdXRCcm93c2luZ0NvbnRleHQpOworICAgIGF1dG8q
IGZyYW1lID0gbV9kb2N1bWVudExvYWRlci5mcmFtZSgpOworICAgIGlmICghZnJhbWUpCisgICAg
ICAgIHJldHVybiBmYWxzZTsKKyAgICBjYWNoZS0+Z3JvdXAoKS0+dXBkYXRlKCpmcmFtZSwgQXBw
bGljYXRpb25DYWNoZVVwZGF0ZVdpdGhvdXRCcm93c2luZ0NvbnRleHQpOwogICAgIHJldHVybiB0
cnVlOwogfQogCiBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojpzd2FwQ2FjaGUoKQogewotICAg
IEFwcGxpY2F0aW9uQ2FjaGUqIGNhY2hlID0gYXBwbGljYXRpb25DYWNoZSgpOworICAgIGF1dG8q
IGNhY2hlID0gYXBwbGljYXRpb25DYWNoZSgpOwogICAgIGlmICghY2FjaGUpCiAgICAgICAgIHJl
dHVybiBmYWxzZTsKIAogICAgIC8vIElmIHRoZSBncm91cCBvZiBhcHBsaWNhdGlvbiBjYWNoZXMg
dG8gd2hpY2ggY2FjaGUgYmVsb25ncyBoYXMgdGhlIGxpZmVjeWNsZSBzdGF0dXMgb2Jzb2xldGUs
IHVuYXNzb2NpYXRlIGRvY3VtZW50IGZyb20gY2FjaGUuCiAgICAgaWYgKGNhY2hlLT5ncm91cCgp
LT5pc09ic29sZXRlKCkpIHsKLSAgICAgICAgY2FjaGUtPmdyb3VwKCktPmRpc2Fzc29jaWF0ZURv
Y3VtZW50TG9hZGVyKCZtX2RvY3VtZW50TG9hZGVyKTsKKyAgICAgICAgY2FjaGUtPmdyb3VwKCkt
PmRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKG1fZG9jdW1lbnRMb2FkZXIpOwogICAgICAgICBy
ZXR1cm4gdHJ1ZTsKICAgICB9CiAKICAgICAvLyBJZiB0aGVyZSBpcyBubyBuZXdlciBjYWNoZSwg
cmFpc2UgYW4gSU5WQUxJRF9TVEFURV9FUlIgZXhjZXB0aW9uLgotICAgIEFwcGxpY2F0aW9uQ2Fj
aGUqIG5ld2VzdENhY2hlID0gY2FjaGUtPmdyb3VwKCktPm5ld2VzdENhY2hlKCk7CisgICAgYXV0
byogbmV3ZXN0Q2FjaGUgPSBjYWNoZS0+Z3JvdXAoKS0+bmV3ZXN0Q2FjaGUoKTsKICAgICBpZiAo
Y2FjaGUgPT0gbmV3ZXN0Q2FjaGUpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAKQEAgLTUw
OCwxNCArNTIwLDEzIEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZUhvc3Q6OnN3YXBDYWNoZSgpCiAK
IHZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmFib3J0KCkKIHsKLSAgICBBcHBsaWNhdGlvbkNh
Y2hlR3JvdXAqIGNhY2hlR3JvdXAgPSBjYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKTsK
LSAgICBpZiAoY2FjaGVHcm91cCkKLSAgICAgICAgY2FjaGVHcm91cC0+YWJvcnQobV9kb2N1bWVu
dExvYWRlci5mcmFtZSgpKTsKLSAgICBlbHNlIHsKLSAgICAgICAgQXBwbGljYXRpb25DYWNoZSog
Y2FjaGUgPSBhcHBsaWNhdGlvbkNhY2hlKCk7Ci0gICAgICAgIGlmIChjYWNoZSkKLSAgICAgICAg
ICAgIGNhY2hlLT5ncm91cCgpLT5hYm9ydChtX2RvY3VtZW50TG9hZGVyLmZyYW1lKCkpOwotICAg
IH0KKyAgICBhdXRvKiBmcmFtZSA9IG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUoKTsKKyAgICBpZiAo
IWZyYW1lKQorICAgICAgICByZXR1cm47CisgICAgaWYgKGF1dG8qIGNhY2hlR3JvdXAgPSBjYW5k
aWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKSkKKyAgICAgICAgY2FjaGVHcm91cC0+YWJvcnQo
KmZyYW1lKTsKKyAgICBlbHNlIGlmIChhdXRvKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKSkK
KyAgICAgICAgY2FjaGUtPmdyb3VwKCktPmFib3J0KCpmcmFtZSk7CiB9CiAKIGJvb2wgQXBwbGlj
YXRpb25DYWNoZUhvc3Q6OmlzQXBwbGljYXRpb25DYWNoZUVuYWJsZWQoKQpAQCAtNTI1LDE1ICs1
MzYsMTIgQEAgYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6aXNBcHBsaWNhdGlvbkNhY2hlRW5h
YmxlZCgpCiAKIGJvb2wgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmlzQXBwbGljYXRpb25DYWNoZUJs
b2NrZWRGb3JSZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKIHsKLSAgICBG
cmFtZSogZnJhbWUgPSBtX2RvY3VtZW50TG9hZGVyLmZyYW1lKCk7CisgICAgYXV0byogZnJhbWUg
PSBtX2RvY3VtZW50TG9hZGVyLmZyYW1lKCk7CiAgICAgaWYgKCFmcmFtZSkKICAgICAgICAgcmV0
dXJuIGZhbHNlOwotCiAgICAgaWYgKGZyYW1lLT5pc01haW5GcmFtZSgpKQogICAgICAgICByZXR1
cm4gZmFsc2U7Ci0KLSAgICBSZWY8U2VjdXJpdHlPcmlnaW4+IG9yaWdpbihTZWN1cml0eU9yaWdp
bjo6Y3JlYXRlKHJlcXVlc3QudXJsKCkpKTsKLSAgICByZXR1cm4gIW9yaWdpbi5nZXQoKS5jYW5B
Y2Nlc3NBcHBsaWNhdGlvbkNhY2hlKGZyYW1lLT5kb2N1bWVudCgpLT50b3BPcmlnaW4oKSk7Cisg
ICAgcmV0dXJuICFTZWN1cml0eU9yaWdpbjo6Y3JlYXRlKHJlcXVlc3QudXJsKCkpLT5jYW5BY2Nl
c3NBcHBsaWNhdGlvbkNhY2hlKGZyYW1lLT5kb2N1bWVudCgpLT50b3BPcmlnaW4oKSk7CiB9CiAK
IH0gIC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUhvc3QuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlSG9zdC5oCmluZGV4IGM5NWIyM2IyODc0ODI3OTYw
NzU4ZjMyODA2N2IxZGZiYWViODc4YmEuLjJiZmRjNjJmOTM5OGQwMGY0Y2IxZTkxYjg2ZDdmMzZj
ODUzYjc3ODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBs
aWNhdGlvbkNhY2hlSG9zdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9B
cHBsaWNhdGlvbkNhY2hlSG9zdC5oCkBAIC0xLDYgKzEsNyBAQAogLyoKLSAqIENvcHlyaWdodCAo
YykgMjAwOSwgR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAKKyAqIENvcHly
aWdodCAoYykgMjAwOSwgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHly
aWdodCAoYykgMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgogICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCiAgKiBtZXQ6CkBAIC0zMCwxNjUgKzMxLDEzNiBAQAog
CiAjcHJhZ21hIG9uY2UKIAotI2luY2x1ZGUgIlBsYXRmb3JtRXhwb3J0TWFjcm9zLmgiCiAjaW5j
bHVkZSAiVVJMLmgiCiAjaW5jbHVkZSA8d3RmL0RlcXVlLmg+Ci0jaW5jbHVkZSA8d3RmL1Bhc3NS
ZWZQdHIuaD4KLSNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5o
PgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7Ci0gICAgY2xhc3MgRE9NQXBwbGljYXRpb25DYWNoZTsK
LSAgICBjbGFzcyBEb2N1bWVudExvYWRlcjsKLSAgICBjbGFzcyBGcmFtZTsKLSAgICBjbGFzcyBS
ZXNvdXJjZUVycm9yOwotICAgIGNsYXNzIFJlc291cmNlTG9hZGVyOwotICAgIGNsYXNzIFJlc291
cmNlUmVxdWVzdDsKLSAgICBjbGFzcyBSZXNvdXJjZVJlc3BvbnNlOwotICAgIGNsYXNzIFNoYXJl
ZEJ1ZmZlcjsKLSAgICBjbGFzcyBTdWJzdGl0dXRlRGF0YTsKLSAgICBjbGFzcyBBcHBsaWNhdGlv
bkNhY2hlOwotICAgIGNsYXNzIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDsKLSAgICBjbGFzcyBBcHBs
aWNhdGlvbkNhY2hlUmVzb3VyY2U7Ci0gICAgY2xhc3MgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U7
Ci0KLSAgICBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlSG9zdCB7Ci0gICAgICAgIFdURl9NQUtFX05P
TkNPUFlBQkxFKEFwcGxpY2F0aW9uQ2FjaGVIb3N0KTsgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7
Ci0gICAgcHVibGljOgotICAgICAgICAvLyBUaGUgU3RhdHVzIG51bWVyaWMgdmFsdWVzIGFyZSBz
cGVjaWZpZWQgaW4gdGhlIEhUTUw1IHNwZWMuCi0gICAgICAgIGVudW0gU3RhdHVzIHsKLSAgICAg
ICAgICAgIFVOQ0FDSEVEID0gMCwKLSAgICAgICAgICAgIElETEUgPSAxLAotICAgICAgICAgICAg
Q0hFQ0tJTkcgPSAyLAotICAgICAgICAgICAgRE9XTkxPQURJTkcgPSAzLAotICAgICAgICAgICAg
VVBEQVRFUkVBRFkgPSA0LAotICAgICAgICAgICAgT0JTT0xFVEUgPSA1Ci0gICAgICAgIH07Ci0K
LSAgICAgICAgZW51bSBFdmVudElEIHsKLSAgICAgICAgICAgIENIRUNLSU5HX0VWRU5UID0gMCwK
LSAgICAgICAgICAgIEVSUk9SX0VWRU5ULAotICAgICAgICAgICAgTk9VUERBVEVfRVZFTlQsCi0g
ICAgICAgICAgICBET1dOTE9BRElOR19FVkVOVCwKLSAgICAgICAgICAgIFBST0dSRVNTX0VWRU5U
LAotICAgICAgICAgICAgVVBEQVRFUkVBRFlfRVZFTlQsCi0gICAgICAgICAgICBDQUNIRURfRVZF
TlQsCi0gICAgICAgICAgICBPQlNPTEVURV9FVkVOVCAgLy8gTXVzdCByZW1haW4gdGhlIGxhc3Qg
dmFsdWUsIHRoaXMgaXMgdXNlZCB0byBzaXplIGFycmF5cy4KLSAgICAgICAgfTsKLQotICAgICAg
ICBzdHJ1Y3QgQ2FjaGVJbmZvIHsKLSAgICAgICAgICAgIENhY2hlSW5mbyhjb25zdCBVUkwmIG1h
bmlmZXN0LCBkb3VibGUgY3JlYXRpb25UaW1lLCBkb3VibGUgdXBkYXRlVGltZSwgbG9uZyBsb25n
IHNpemUpCi0gICAgICAgICAgICAgICAgOiBtX21hbmlmZXN0KG1hbmlmZXN0KQotICAgICAgICAg
ICAgICAgICwgbV9jcmVhdGlvblRpbWUoY3JlYXRpb25UaW1lKQotICAgICAgICAgICAgICAgICwg
bV91cGRhdGVUaW1lKHVwZGF0ZVRpbWUpCi0gICAgICAgICAgICAgICAgLCBtX3NpemUoc2l6ZSkg
eyB9Ci0gICAgICAgICAgICBVUkwgbV9tYW5pZmVzdDsKLSAgICAgICAgICAgIGRvdWJsZSBtX2Ny
ZWF0aW9uVGltZTsKLSAgICAgICAgICAgIGRvdWJsZSBtX3VwZGF0ZVRpbWU7Ci0gICAgICAgICAg
ICBsb25nIGxvbmcgbV9zaXplOwotICAgICAgICB9OwotCi0gICAgICAgIHN0cnVjdCBSZXNvdXJj
ZUluZm8gewotICAgICAgICAgICAgUmVzb3VyY2VJbmZvKGNvbnN0IFVSTCYgcmVzb3VyY2UsIGJv
b2wgaXNNYXN0ZXIsIGJvb2wgaXNNYW5pZmVzdCwgYm9vbCBpc0ZhbGxiYWNrLCBib29sIGlzRm9y
ZWlnbiwgYm9vbCBpc0V4cGxpY2l0LCBsb25nIGxvbmcgc2l6ZSkKLSAgICAgICAgICAgICAgICA6
IG1fcmVzb3VyY2UocmVzb3VyY2UpCi0gICAgICAgICAgICAgICAgLCBtX2lzTWFzdGVyKGlzTWFz
dGVyKQotICAgICAgICAgICAgICAgICwgbV9pc01hbmlmZXN0KGlzTWFuaWZlc3QpCi0gICAgICAg
ICAgICAgICAgLCBtX2lzRmFsbGJhY2soaXNGYWxsYmFjaykKLSAgICAgICAgICAgICAgICAsIG1f
aXNGb3JlaWduKGlzRm9yZWlnbikKLSAgICAgICAgICAgICAgICAsIG1faXNFeHBsaWNpdChpc0V4
cGxpY2l0KQotICAgICAgICAgICAgICAgICwgbV9zaXplKHNpemUpIHsgfQotICAgICAgICAgICAg
VVJMIG1fcmVzb3VyY2U7Ci0gICAgICAgICAgICBib29sIG1faXNNYXN0ZXI7Ci0gICAgICAgICAg
ICBib29sIG1faXNNYW5pZmVzdDsKLSAgICAgICAgICAgIGJvb2wgbV9pc0ZhbGxiYWNrOwotICAg
ICAgICAgICAgYm9vbCBtX2lzRm9yZWlnbjsKLSAgICAgICAgICAgIGJvb2wgbV9pc0V4cGxpY2l0
OwotICAgICAgICAgICAgbG9uZyBsb25nIG1fc2l6ZTsKLSAgICAgICAgfTsKLQotICAgICAgICB0
eXBlZGVmIFZlY3RvcjxSZXNvdXJjZUluZm8+IFJlc291cmNlSW5mb0xpc3Q7Ci0KLSAgICAgICAg
ZXhwbGljaXQgQXBwbGljYXRpb25DYWNoZUhvc3QoRG9jdW1lbnRMb2FkZXImKTsKLSAgICAgICAg
fkFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7Ci0KLSAgICAgICAgc3RhdGljIFVSTCBjcmVhdGVGaWxl
VVJMKGNvbnN0IFN0cmluZyYpOwotCi0gICAgICAgIHZvaWQgc2VsZWN0Q2FjaGVXaXRob3V0TWFu
aWZlc3QoKTsKLSAgICAgICAgdm9pZCBzZWxlY3RDYWNoZVdpdGhNYW5pZmVzdChjb25zdCBVUkwm
IG1hbmlmZXN0VVJMKTsKLQotICAgICAgICB2b2lkIG1heWJlTG9hZE1haW5SZXNvdXJjZShSZXNv
dXJjZVJlcXVlc3QmLCBTdWJzdGl0dXRlRGF0YSYpOwotICAgICAgICB2b2lkIG1heWJlTG9hZE1h
aW5SZXNvdXJjZUZvclJlZGlyZWN0KFJlc291cmNlUmVxdWVzdCYsIFN1YnN0aXR1dGVEYXRhJik7
Ci0gICAgICAgIGJvb2wgbWF5YmVMb2FkRmFsbGJhY2tGb3JNYWluUmVzcG9uc2UoY29uc3QgUmVz
b3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwotICAgICAgICB2b2lkIG1h
aW5SZXNvdXJjZURhdGFSZWNlaXZlZChjb25zdCBjaGFyKiBkYXRhLCBpbnQgbGVuZ3RoLCBsb25n
IGxvbmcgZW5jb2RlZERhdGFMZW5ndGgsIGJvb2wgYWxsQXRPbmNlKTsKLSAgICAgICAgdm9pZCBm
aW5pc2hlZExvYWRpbmdNYWluUmVzb3VyY2UoKTsKLSAgICAgICAgdm9pZCBmYWlsZWRMb2FkaW5n
TWFpblJlc291cmNlKCk7Ci0KLSAgICAgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBtYXliZUxvYWRS
ZXNvdXJjZShSZXNvdXJjZUxvYWRlciYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFVS
TCYgb3JpZ2luYWxVUkwpOwotICAgICAgICBXRUJDT1JFX0VYUE9SVCBib29sIG1heWJlTG9hZEZh
bGxiYWNrRm9yUmVkaXJlY3QoUmVzb3VyY2VMb2FkZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBjb25z
dCBSZXNvdXJjZVJlc3BvbnNlJik7Ci0gICAgICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgbWF5YmVM
b2FkRmFsbGJhY2tGb3JSZXNwb25zZShSZXNvdXJjZUxvYWRlciosIGNvbnN0IFJlc291cmNlUmVz
cG9uc2UmKTsKLSAgICAgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBtYXliZUxvYWRGYWxsYmFja0Zv
ckVycm9yKFJlc291cmNlTG9hZGVyKiwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwotCi0gICAgICAg
IGJvb2wgbWF5YmVMb2FkU3luY2hyb25vdXNseShSZXNvdXJjZVJlcXVlc3QmLCBSZXNvdXJjZUVy
cm9yJiwgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+Jik7Ci0gICAgICAg
IHZvaWQgbWF5YmVMb2FkRmFsbGJhY2tTeW5jaHJvbm91c2x5KGNvbnN0IFJlc291cmNlUmVxdWVz
dCYsIFJlc291cmNlRXJyb3ImLCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZl
cj4mKTsKLQotICAgICAgICBib29sIGNhbkNhY2hlSW5QYWdlQ2FjaGUoKTsKLQotICAgICAgICBT
dGF0dXMgc3RhdHVzKCkgY29uc3Q7ICAKLSAgICAgICAgYm9vbCB1cGRhdGUoKTsKLSAgICAgICAg
Ym9vbCBzd2FwQ2FjaGUoKTsKLSAgICAgICAgdm9pZCBhYm9ydCgpOwotCi0gICAgICAgIHZvaWQg
c2V0RE9NQXBwbGljYXRpb25DYWNoZShET01BcHBsaWNhdGlvbkNhY2hlKik7Ci0gICAgICAgIHZv
aWQgbm90aWZ5RE9NQXBwbGljYXRpb25DYWNoZShFdmVudElELCBpbnQgcHJvZ3Jlc3NUb3RhbCwg
aW50IHByb2dyZXNzRG9uZSk7Ci0KLSAgICAgICAgdm9pZCBzdG9wTG9hZGluZ0luRnJhbWUoRnJh
bWUqKTsKLQotICAgICAgICB2b2lkIHN0b3BEZWZlcnJpbmdFdmVudHMoKTsgLy8gQWxzbyByYWlz
ZXMgdGhlIGV2ZW50cyB0aGF0IGhhdmUgYmVlbiBxdWV1ZWQgdXAuCi0KLSAgICAgICAgdm9pZCBm
aWxsUmVzb3VyY2VMaXN0KFJlc291cmNlSW5mb0xpc3QqKTsKLSAgICAgICAgQ2FjaGVJbmZvIGFw
cGxpY2F0aW9uQ2FjaGVJbmZvKCk7Ci0KLSAgICAgICAgYm9vbCBzaG91bGRMb2FkUmVzb3VyY2VG
cm9tQXBwbGljYXRpb25DYWNoZShjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBBcHBsaWNhdGlvbkNh
Y2hlUmVzb3VyY2UqJik7Ci0gICAgICAgIGJvb2wgZ2V0QXBwbGljYXRpb25DYWNoZUZhbGxiYWNr
UmVzb3VyY2UoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgQXBwbGljYXRpb25DYWNoZVJlc291cmNl
KiYsIEFwcGxpY2F0aW9uQ2FjaGUqID0gbnVsbHB0cik7Ci0KLSAgICBwcml2YXRlOgotICAgICAg
ICBib29sIGlzQXBwbGljYXRpb25DYWNoZUVuYWJsZWQoKTsKLSAgICAgICAgYm9vbCBpc0FwcGxp
Y2F0aW9uQ2FjaGVCbG9ja2VkRm9yUmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmKTsKLQot
ICAgICAgICBzdHJ1Y3QgRGVmZXJyZWRFdmVudCB7Ci0gICAgICAgICAgICBFdmVudElEIGV2ZW50
SUQ7Ci0gICAgICAgICAgICBpbnQgcHJvZ3Jlc3NUb3RhbDsKLSAgICAgICAgICAgIGludCBwcm9n
cmVzc0RvbmU7Ci0gICAgICAgICAgICBEZWZlcnJlZEV2ZW50KEV2ZW50SUQgaWQsIGludCB0b3Rh
bCwgaW50IGRvbmUpIDogZXZlbnRJRChpZCksIHByb2dyZXNzVG90YWwodG90YWwpLCBwcm9ncmVz
c0RvbmUoZG9uZSkgeyB9Ci0gICAgICAgIH07Ci0KLSAgICAgICAgRE9NQXBwbGljYXRpb25DYWNo
ZSogbV9kb21BcHBsaWNhdGlvbkNhY2hlOwotICAgICAgICBEb2N1bWVudExvYWRlciYgbV9kb2N1
bWVudExvYWRlcjsKLSAgICAgICAgYm9vbCBtX2RlZmVyc0V2ZW50czsgLy8gRXZlbnRzIGFyZSBk
ZWZlcnJlZCB1bnRpbCBhZnRlciBkb2N1bWVudCBvbmxvYWQuCi0gICAgICAgIFZlY3RvcjxEZWZl
cnJlZEV2ZW50PiBtX2RlZmVycmVkRXZlbnRzOwotCi0gICAgICAgIHZvaWQgZGlzcGF0Y2hET01F
dmVudChFdmVudElELCBpbnQgcHJvZ3Jlc3NUb3RhbCwgaW50IHByb2dyZXNzRG9uZSk7Ci0KLSAg
ICAgICAgZnJpZW5kIGNsYXNzIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDsKLSAgICAgICAgZnJpZW5k
IGNsYXNzIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOwotCi0gICAgICAgIGJvb2wgc2NoZWR1bGVM
b2FkRmFsbGJhY2tSZXNvdXJjZUZyb21BcHBsaWNhdGlvbkNhY2hlKFJlc291cmNlTG9hZGVyKiwg
QXBwbGljYXRpb25DYWNoZSogPSBudWxscHRyKTsKLSAgICAgICAgdm9pZCBzZXRDYW5kaWRhdGVB
cHBsaWNhdGlvbkNhY2hlR3JvdXAoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCk7Ci0gICAg
ICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3Vw
KCkgY29uc3QgeyByZXR1cm4gbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXA7IH0KLSAg
ICAgICAgdm9pZCBzZXRBcHBsaWNhdGlvbkNhY2hlKFBhc3NSZWZQdHI8QXBwbGljYXRpb25DYWNo
ZT4gYXBwbGljYXRpb25DYWNoZSk7Ci0gICAgICAgIEFwcGxpY2F0aW9uQ2FjaGUqIGFwcGxpY2F0
aW9uQ2FjaGUoKSBjb25zdCB7IHJldHVybiBtX2FwcGxpY2F0aW9uQ2FjaGUuZ2V0KCk7IH0KLSAg
ICAgICAgQXBwbGljYXRpb25DYWNoZSogbWFpblJlc291cmNlQXBwbGljYXRpb25DYWNoZSgpIGNv
bnN0IHsgcmV0dXJuIG1fbWFpblJlc291cmNlQXBwbGljYXRpb25DYWNoZS5nZXQoKTsgfQotICAg
ICAgICBib29sIG1heWJlTG9hZEZhbGxiYWNrRm9yTWFpbkVycm9yKGNvbnN0IFJlc291cmNlUmVx
dWVzdCYsIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKLQotICAgICAgICAvLyBUaGUgYXBwbGljYXRp
b24gY2FjaGUgdGhhdCB0aGUgZG9jdW1lbnQgbG9hZGVyIGlzIGFzc29jaWF0ZWQgd2l0aCAoaWYg
YW55KS4KLSAgICAgICAgUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+IG1fYXBwbGljYXRpb25DYWNo
ZTsKLQotICAgICAgICAvLyBCZWZvcmUgYW4gYXBwbGljYXRpb24gY2FjaGUgaGFzIGZpbmlzaGVk
IGxvYWRpbmcsIHRoaXMgd2lsbCBiZSB0aGUgY2FuZGlkYXRlIGFwcGxpY2F0aW9uCi0gICAgICAg
IC8vIGdyb3VwIHRoYXQgdGhlIGRvY3VtZW50IGxvYWRlciBpcyBhc3NvY2lhdGVkIHdpdGguCi0g
ICAgICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hl
R3JvdXA7Ci0KLSAgICAgICAgLy8gVGhpcyBpcyB0aGUgYXBwbGljYXRpb24gY2FjaGUgdGhlIG1h
aW4gcmVzb3VyY2Ugd2FzIGxvYWRlZCBmcm9tIChpZiBhbnkpLgotICAgICAgICBSZWZQdHI8QXBw
bGljYXRpb25DYWNoZT4gbV9tYWluUmVzb3VyY2VBcHBsaWNhdGlvbkNhY2hlOworCitjbGFzcyBB
cHBsaWNhdGlvbkNhY2hlOworY2xhc3MgQXBwbGljYXRpb25DYWNoZUdyb3VwOworY2xhc3MgQXBw
bGljYXRpb25DYWNoZVJlc291cmNlOworY2xhc3MgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U7Citj
bGFzcyBET01BcHBsaWNhdGlvbkNhY2hlOworY2xhc3MgRG9jdW1lbnRMb2FkZXI7CitjbGFzcyBG
cmFtZTsKK2NsYXNzIFJlc291cmNlRXJyb3I7CitjbGFzcyBSZXNvdXJjZUxvYWRlcjsKK2NsYXNz
IFJlc291cmNlUmVxdWVzdDsKK2NsYXNzIFJlc291cmNlUmVzcG9uc2U7CitjbGFzcyBTaGFyZWRC
dWZmZXI7CitjbGFzcyBTdWJzdGl0dXRlRGF0YTsKKworY2xhc3MgQXBwbGljYXRpb25DYWNoZUhv
c3QgeworICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKEFwcGxpY2F0aW9uQ2FjaGVIb3N0KTsgV1RG
X01BS0VfRkFTVF9BTExPQ0FURUQ7CitwdWJsaWM6CisgICAgLy8gVGhlIFN0YXR1cyBudW1lcmlj
IHZhbHVlcyBhcmUgc3BlY2lmaWVkIGluIHRoZSBIVE1MNSBzcGVjLgorICAgIGVudW0gU3RhdHVz
IHsKKyAgICAgICAgVU5DQUNIRUQgPSAwLAorICAgICAgICBJRExFID0gMSwKKyAgICAgICAgQ0hF
Q0tJTkcgPSAyLAorICAgICAgICBET1dOTE9BRElORyA9IDMsCisgICAgICAgIFVQREFURVJFQURZ
ID0gNCwKKyAgICAgICAgT0JTT0xFVEUgPSA1CisgICAgfTsKKworICAgIHN0cnVjdCBDYWNoZUlu
Zm8geworICAgICAgICBVUkwgbWFuaWZlc3Q7CisgICAgICAgIGRvdWJsZSBjcmVhdGlvblRpbWU7
CisgICAgICAgIGRvdWJsZSB1cGRhdGVUaW1lOworICAgICAgICBsb25nIGxvbmcgc2l6ZTsKKyAg
ICB9OworCisgICAgc3RydWN0IFJlc291cmNlSW5mbyB7CisgICAgICAgIFVSTCByZXNvdXJjZTsK
KyAgICAgICAgYm9vbCBpc01hc3RlcjsKKyAgICAgICAgYm9vbCBpc01hbmlmZXN0OworICAgICAg
ICBib29sIGlzRmFsbGJhY2s7CisgICAgICAgIGJvb2wgaXNGb3JlaWduOworICAgICAgICBib29s
IGlzRXhwbGljaXQ7CisgICAgICAgIGxvbmcgbG9uZyBzaXplOworICAgIH07CisKKyAgICBleHBs
aWNpdCBBcHBsaWNhdGlvbkNhY2hlSG9zdChEb2N1bWVudExvYWRlciYpOworICAgIH5BcHBsaWNh
dGlvbkNhY2hlSG9zdCgpOworCisgICAgc3RhdGljIFVSTCBjcmVhdGVGaWxlVVJMKGNvbnN0IFN0
cmluZyYpOworCisgICAgdm9pZCBzZWxlY3RDYWNoZVdpdGhvdXRNYW5pZmVzdCgpOworICAgIHZv
aWQgc2VsZWN0Q2FjaGVXaXRoTWFuaWZlc3QoY29uc3QgVVJMJiBtYW5pZmVzdFVSTCk7CisKKyAg
ICB2b2lkIG1heWJlTG9hZE1haW5SZXNvdXJjZShSZXNvdXJjZVJlcXVlc3QmLCBTdWJzdGl0dXRl
RGF0YSYpOworICAgIHZvaWQgbWF5YmVMb2FkTWFpblJlc291cmNlRm9yUmVkaXJlY3QoUmVzb3Vy
Y2VSZXF1ZXN0JiwgU3Vic3RpdHV0ZURhdGEmKTsKKyAgICBib29sIG1heWJlTG9hZEZhbGxiYWNr
Rm9yTWFpblJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVz
cG9uc2UmKTsKKyAgICB2b2lkIG1haW5SZXNvdXJjZURhdGFSZWNlaXZlZChjb25zdCBjaGFyKiBk
YXRhLCBpbnQgbGVuZ3RoLCBsb25nIGxvbmcgZW5jb2RlZERhdGFMZW5ndGgsIGJvb2wgYWxsQXRP
bmNlKTsKKyAgICB2b2lkIGZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZSgpOworICAgIHZvaWQg
ZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZSgpOworCisgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBt
YXliZUxvYWRSZXNvdXJjZShSZXNvdXJjZUxvYWRlciYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYs
IGNvbnN0IFVSTCYgb3JpZ2luYWxVUkwpOworICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgbWF5YmVM
b2FkRmFsbGJhY2tGb3JSZWRpcmVjdChSZXNvdXJjZUxvYWRlciosIFJlc291cmNlUmVxdWVzdCYs
IGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKKyAgICBXRUJDT1JFX0VYUE9SVCBib29sIG1heWJl
TG9hZEZhbGxiYWNrRm9yUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJik7CisgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBtYXliZUxvYWRGYWxsYmFja0ZvckVy
cm9yKFJlc291cmNlTG9hZGVyKiwgY29uc3QgUmVzb3VyY2VFcnJvciYpOworCisgICAgYm9vbCBt
YXliZUxvYWRTeW5jaHJvbm91c2x5KFJlc291cmNlUmVxdWVzdCYsIFJlc291cmNlRXJyb3ImLCBS
ZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4mKTsKKyAgICB2b2lkIG1heWJl
TG9hZEZhbGxiYWNrU3luY2hyb25vdXNseShjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBSZXNvdXJj
ZUVycm9yJiwgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+Jik7CisKKyAg
ICBib29sIGNhbkNhY2hlSW5QYWdlQ2FjaGUoKTsKKworICAgIFN0YXR1cyBzdGF0dXMoKSBjb25z
dDsKKyAgICBib29sIHVwZGF0ZSgpOworICAgIGJvb2wgc3dhcENhY2hlKCk7CisgICAgdm9pZCBh
Ym9ydCgpOworCisgICAgdm9pZCBzZXRET01BcHBsaWNhdGlvbkNhY2hlKERPTUFwcGxpY2F0aW9u
Q2FjaGUqKTsKKyAgICB2b2lkIG5vdGlmeURPTUFwcGxpY2F0aW9uQ2FjaGUoY29uc3QgQXRvbWlj
U3RyaW5nJiBldmVudFR5cGUsIGludCBwcm9ncmVzc1RvdGFsLCBpbnQgcHJvZ3Jlc3NEb25lKTsK
KworICAgIHZvaWQgc3RvcExvYWRpbmdJbkZyYW1lKEZyYW1lJik7CisKKyAgICB2b2lkIHN0b3BE
ZWZlcnJpbmdFdmVudHMoKTsgLy8gQWxzbyByYWlzZXMgdGhlIGV2ZW50cyB0aGF0IGhhdmUgYmVl
biBxdWV1ZWQgdXAuCisKKyAgICBWZWN0b3I8UmVzb3VyY2VJbmZvPiByZXNvdXJjZUxpc3QoKTsK
KyAgICBDYWNoZUluZm8gYXBwbGljYXRpb25DYWNoZUluZm8oKTsKKworICAgIGJvb2wgc2hvdWxk
TG9hZFJlc291cmNlRnJvbUFwcGxpY2F0aW9uQ2FjaGUoY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jiwg
QXBwbGljYXRpb25DYWNoZVJlc291cmNlKiYpOworICAgIGJvb2wgZ2V0QXBwbGljYXRpb25DYWNo
ZUZhbGxiYWNrUmVzb3VyY2UoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgQXBwbGljYXRpb25DYWNo
ZVJlc291cmNlKiYsIEFwcGxpY2F0aW9uQ2FjaGUqID0gbnVsbHB0cik7CisKK3ByaXZhdGU6Cisg
ICAgZnJpZW5kIGNsYXNzIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDsKKworICAgIHN0cnVjdCBEZWZl
cnJlZEV2ZW50IHsKKyAgICAgICAgQXRvbWljU3RyaW5nIGV2ZW50VHlwZTsKKyAgICAgICAgaW50
IHByb2dyZXNzVG90YWw7CisgICAgICAgIGludCBwcm9ncmVzc0RvbmU7CiAgICAgfTsKIAorICAg
IGJvb2wgaXNBcHBsaWNhdGlvbkNhY2hlRW5hYmxlZCgpOworICAgIGJvb2wgaXNBcHBsaWNhdGlv
bkNhY2hlQmxvY2tlZEZvclJlcXVlc3QoY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7CisKKyAgICB2
b2lkIGRpc3BhdGNoRE9NRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGludCBw
cm9ncmVzc1RvdGFsLCBpbnQgcHJvZ3Jlc3NEb25lKTsKKworICAgIGJvb2wgc2NoZWR1bGVMb2Fk
RmFsbGJhY2tSZXNvdXJjZUZyb21BcHBsaWNhdGlvbkNhY2hlKFJlc291cmNlTG9hZGVyKiwgQXBw
bGljYXRpb25DYWNoZSogPSBudWxscHRyKTsKKyAgICB2b2lkIHNldENhbmRpZGF0ZUFwcGxpY2F0
aW9uQ2FjaGVHcm91cChBcHBsaWNhdGlvbkNhY2hlR3JvdXAqKTsKKyAgICBBcHBsaWNhdGlvbkNh
Y2hlR3JvdXAqIGNhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCgpIGNvbnN0IHsgcmV0dXJu
IG1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwOyB9CisgICAgdm9pZCBzZXRBcHBsaWNh
dGlvbkNhY2hlKFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hlPiYmKTsKKyAgICBBcHBsaWNhdGlvbkNh
Y2hlKiBhcHBsaWNhdGlvbkNhY2hlKCkgY29uc3QgeyByZXR1cm4gbV9hcHBsaWNhdGlvbkNhY2hl
LmdldCgpOyB9CisgICAgQXBwbGljYXRpb25DYWNoZSogbWFpblJlc291cmNlQXBwbGljYXRpb25D
YWNoZSgpIGNvbnN0IHsgcmV0dXJuIG1fbWFpblJlc291cmNlQXBwbGljYXRpb25DYWNoZS5nZXQo
KTsgfQorICAgIGJvb2wgbWF5YmVMb2FkRmFsbGJhY2tGb3JNYWluRXJyb3IoY29uc3QgUmVzb3Vy
Y2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VFcnJvciYpOworCisgICAgRE9NQXBwbGljYXRpb25D
YWNoZSogbV9kb21BcHBsaWNhdGlvbkNhY2hlIHsgbnVsbHB0ciB9OworICAgIERvY3VtZW50TG9h
ZGVyJiBtX2RvY3VtZW50TG9hZGVyOworCisgICAgYm9vbCBtX2RlZmVyc0V2ZW50cyB7IHRydWUg
fTsgLy8gRXZlbnRzIGFyZSBkZWZlcnJlZCB1bnRpbCBhZnRlciBkb2N1bWVudCBvbmxvYWQuCisg
ICAgVmVjdG9yPERlZmVycmVkRXZlbnQ+IG1fZGVmZXJyZWRFdmVudHM7CisKKyAgICAvLyBUaGUg
YXBwbGljYXRpb24gY2FjaGUgdGhhdCB0aGUgZG9jdW1lbnQgbG9hZGVyIGlzIGFzc29jaWF0ZWQg
d2l0aCAoaWYgYW55KS4KKyAgICBSZWZQdHI8QXBwbGljYXRpb25DYWNoZT4gbV9hcHBsaWNhdGlv
bkNhY2hlOworCisgICAgLy8gQmVmb3JlIGFuIGFwcGxpY2F0aW9uIGNhY2hlIGhhcyBmaW5pc2hl
ZCBsb2FkaW5nLCB0aGlzIHdpbGwgYmUgdGhlIGNhbmRpZGF0ZSBhcHBsaWNhdGlvbgorICAgIC8v
IGdyb3VwIHRoYXQgdGhlIGRvY3VtZW50IGxvYWRlciBpcyBhc3NvY2lhdGVkIHdpdGguCisgICAg
QXBwbGljYXRpb25DYWNoZUdyb3VwKiBtX2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCB7
IG51bGxwdHIgfTsKKworICAgIC8vIFRoaXMgaXMgdGhlIGFwcGxpY2F0aW9uIGNhY2hlIHRoZSBt
YWluIHJlc291cmNlIHdhcyBsb2FkZWQgZnJvbSAoaWYgYW55KS4KKyAgICBSZWZQdHI8QXBwbGlj
YXRpb25DYWNoZT4gbV9tYWluUmVzb3VyY2VBcHBsaWNhdGlvbkNhY2hlOworfTsKKwogfSAgLy8g
bmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBj
YWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
YXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UuY3BwCmluZGV4IGRmMTAzZTRhMmI4ZWI0
NTU4M2UwZWE5MzY1N2ZkZTZjODYxMDQ5MDYuLmY0ZmE5NWI1MTdlYzc3OTE2MjRmYzBmMjVhNjU2
YjBjMDk0NDE0NzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9B
cHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Fw
cGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlLmNwcApAQCAtMTI2LDM2ICsxMjYsMzIgQEAg
QXBwbGljYXRpb25DYWNoZUdyb3VwKiBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6bG9hZENhY2hl
R3JvdXAoY29uc3QgVVJMJiBtYW5pZmUKICAgICBpZiAoIWNhY2hlKQogICAgICAgICByZXR1cm4g
bnVsbHB0cjsKICAgICAgICAgCi0gICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCA9IG5l
dyBBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKnRoaXMsIG1hbmlmZXN0VVJMKTsKLSAgICAgIAotICAg
IGdyb3VwLT5zZXRTdG9yYWdlSUQoc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHN0YXRlbWVudC5nZXRD
b2x1bW5JbnQ2NCgwKSkpOwotICAgIGdyb3VwLT5zZXROZXdlc3RDYWNoZShXVEZNb3ZlKGNhY2hl
KSk7Ci0KLSAgICByZXR1cm4gZ3JvdXA7CisgICAgYXV0byYgZ3JvdXAgPSAqbmV3IEFwcGxpY2F0
aW9uQ2FjaGVHcm91cCgqdGhpcywgbWFuaWZlc3RVUkwpOworICAgIGdyb3VwLnNldFN0b3JhZ2VJ
RChzdGF0aWNfY2FzdDx1bnNpZ25lZD4oc3RhdGVtZW50LmdldENvbHVtbkludDY0KDApKSk7Cisg
ICAgZ3JvdXAuc2V0TmV3ZXN0Q2FjaGUoY2FjaGUucmVsZWFzZU5vbk51bGwoKSk7CisgICAgcmV0
dXJuICZncm91cDsKIH0gICAgCiAKIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogQXBwbGljYXRpb25D
YWNoZVN0b3JhZ2U6OmZpbmRPckNyZWF0ZUNhY2hlR3JvdXAoY29uc3QgVVJMJiBtYW5pZmVzdFVS
TCkKIHsKICAgICBBU1NFUlQoIW1hbmlmZXN0VVJMLmhhc0ZyYWdtZW50SWRlbnRpZmllcigpKTsK
IAotICAgIENhY2hlR3JvdXBNYXA6OkFkZFJlc3VsdCByZXN1bHQgPSBtX2NhY2hlc0luTWVtb3J5
LmFkZChtYW5pZmVzdFVSTCwgbnVsbHB0cik7Ci0gICAgCisgICAgYXV0byByZXN1bHQgPSBtX2Nh
Y2hlc0luTWVtb3J5LmFkZChtYW5pZmVzdFVSTCwgbnVsbHB0cik7CiAgICAgaWYgKCFyZXN1bHQu
aXNOZXdFbnRyeSkgewogICAgICAgICBBU1NFUlQocmVzdWx0Lml0ZXJhdG9yLT52YWx1ZSk7CiAg
ICAgICAgIHJldHVybiByZXN1bHQuaXRlcmF0b3ItPnZhbHVlOwogICAgIH0KIAogICAgIC8vIExv
b2sgdXAgdGhlIGdyb3VwIGluIHRoZSBkYXRhYmFzZQotICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91
cCogZ3JvdXAgPSBsb2FkQ2FjaGVHcm91cChtYW5pZmVzdFVSTCk7CisgICAgYXV0byogZ3JvdXAg
PSBsb2FkQ2FjaGVHcm91cChtYW5pZmVzdFVSTCk7CiAgICAgCiAgICAgLy8gSWYgdGhlIGdyb3Vw
IHdhcyBub3QgZm91bmQgd2UgbmVlZCB0byBjcmVhdGUgaXQKICAgICBpZiAoIWdyb3VwKSB7CiAg
ICAgICAgIGdyb3VwID0gbmV3IEFwcGxpY2F0aW9uQ2FjaGVHcm91cCgqdGhpcywgbWFuaWZlc3RV
UkwpOwogICAgICAgICBtX2NhY2hlSG9zdFNldC5hZGQodXJsSG9zdEhhc2gobWFuaWZlc3RVUkwp
KTsKICAgICB9Ci0gICAgCisKICAgICByZXN1bHQuaXRlcmF0b3ItPnZhbHVlID0gZ3JvdXA7Ci0g
ICAgCiAgICAgcmV0dXJuIGdyb3VwOwogfQogCkBAIC0yNDQsMjAgKzI0MCwxOCBAQCBBcHBsaWNh
dGlvbkNhY2hlR3JvdXAqIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpjYWNoZUdyb3VwRm9yVVJM
KGNvbnN0IFVSTCYgdXJsKQogICAgICAgICBpZiAoIWNhY2hlKQogICAgICAgICAgICAgY29udGlu
dWU7CiAKLSAgICAgICAgQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiByZXNvdXJjZSA9IGNhY2hl
LT5yZXNvdXJjZUZvclVSTCh1cmwpOworICAgICAgICBhdXRvKiByZXNvdXJjZSA9IGNhY2hlLT5y
ZXNvdXJjZUZvclVSTCh1cmwpOwogICAgICAgICBpZiAoIXJlc291cmNlKQogICAgICAgICAgICAg
Y29udGludWU7CiAgICAgICAgIGlmIChyZXNvdXJjZS0+dHlwZSgpICYgQXBwbGljYXRpb25DYWNo
ZVJlc291cmNlOjpGb3JlaWduKQogICAgICAgICAgICAgY29udGludWU7CiAKLSAgICAgICAgQXBw
bGljYXRpb25DYWNoZUdyb3VwKiBncm91cCA9IG5ldyBBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKnRo
aXMsIG1hbmlmZXN0VVJMKTsKLSAgICAgICAgCi0gICAgICAgIGdyb3VwLT5zZXRTdG9yYWdlSUQo
c3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHN0YXRlbWVudC5nZXRDb2x1bW5JbnQ2NCgwKSkpOwotICAg
ICAgICBncm91cC0+c2V0TmV3ZXN0Q2FjaGUoV1RGTW92ZShjYWNoZSkpOwotICAgICAgICAKLSAg
ICAgICAgbV9jYWNoZXNJbk1lbW9yeS5zZXQoZ3JvdXAtPm1hbmlmZXN0VVJMKCksIGdyb3VwKTsK
LSAgICAgICAgCi0gICAgICAgIHJldHVybiBncm91cDsKKyAgICAgICAgYXV0byYgZ3JvdXAgPSAq
bmV3IEFwcGxpY2F0aW9uQ2FjaGVHcm91cCgqdGhpcywgbWFuaWZlc3RVUkwpOworICAgICAgICBn
cm91cC5zZXRTdG9yYWdlSUQoc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHN0YXRlbWVudC5nZXRDb2x1
bW5JbnQ2NCgwKSkpOworICAgICAgICBncm91cC5zZXROZXdlc3RDYWNoZShjYWNoZS5yZWxlYXNl
Tm9uTnVsbCgpKTsKKyAgICAgICAgbV9jYWNoZXNJbk1lbW9yeS5zZXQoZ3JvdXAubWFuaWZlc3RV
UkwoKSwgJmdyb3VwKTsKKworICAgICAgICByZXR1cm4gJmdyb3VwOwogICAgIH0KIAogICAgIGlm
IChyZXN1bHQgIT0gU1FMSVRFX0RPTkUpCkBAIC0zMjAsMTQgKzMxNCwxMyBAQCBBcHBsaWNhdGlv
bkNhY2hlR3JvdXAqIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpmYWxsYmFja0NhY2hlR3JvdXBG
b3JVUkwoY29uc3QgVQogICAgICAgICBpZiAoY2FjaGUtPnJlc291cmNlRm9yVVJMKGZhbGxiYWNr
VVJMKS0+dHlwZSgpICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpGb3JlaWduKQogICAgICAg
ICAgICAgY29udGludWU7CiAKLSAgICAgICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCA9
IG5ldyBBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKnRoaXMsIG1hbmlmZXN0VVJMKTsKLSAgICAgICAg
Ci0gICAgICAgIGdyb3VwLT5zZXRTdG9yYWdlSUQoc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHN0YXRl
bWVudC5nZXRDb2x1bW5JbnQ2NCgwKSkpOwotICAgICAgICBncm91cC0+c2V0TmV3ZXN0Q2FjaGUo
V1RGTW92ZShjYWNoZSkpOwotICAgICAgICAKLSAgICAgICAgbV9jYWNoZXNJbk1lbW9yeS5zZXQo
Z3JvdXAtPm1hbmlmZXN0VVJMKCksIGdyb3VwKTsKLSAgICAgICAgCi0gICAgICAgIHJldHVybiBn
cm91cDsKKyAgICAgICAgYXV0byYgZ3JvdXAgPSAqbmV3IEFwcGxpY2F0aW9uQ2FjaGVHcm91cCgq
dGhpcywgbWFuaWZlc3RVUkwpOworICAgICAgICBncm91cC5zZXRTdG9yYWdlSUQoc3RhdGljX2Nh
c3Q8dW5zaWduZWQ+KHN0YXRlbWVudC5nZXRDb2x1bW5JbnQ2NCgwKSkpOworICAgICAgICBncm91
cC5zZXROZXdlc3RDYWNoZShjYWNoZS5yZWxlYXNlTm9uTnVsbCgpKTsKKworICAgICAgICBtX2Nh
Y2hlc0luTWVtb3J5LnNldChncm91cC5tYW5pZmVzdFVSTCgpLCAmZ3JvdXApOworCisgICAgICAg
IHJldHVybiAmZ3JvdXA7CiAgICAgfQogCiAgICAgaWYgKHJlc3VsdCAhPSBTUUxJVEVfRE9ORSkK
QEAgLTMzNiwzMyArMzI5LDMzIEBAIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogQXBwbGljYXRpb25D
YWNoZVN0b3JhZ2U6OmZhbGxiYWNrQ2FjaGVHcm91cEZvclVSTChjb25zdCBVCiAgICAgcmV0dXJu
IG51bGxwdHI7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmNhY2hlR3JvdXBE
ZXN0cm95ZWQoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCkKK3ZvaWQgQXBwbGljYXRpb25D
YWNoZVN0b3JhZ2U6OmNhY2hlR3JvdXBEZXN0cm95ZWQoQXBwbGljYXRpb25DYWNoZUdyb3VwJiBn
cm91cCkKIHsKLSAgICBpZiAoZ3JvdXAtPmlzT2Jzb2xldGUoKSkgewotICAgICAgICBBU1NFUlQo
IWdyb3VwLT5zdG9yYWdlSUQoKSk7Ci0gICAgICAgIEFTU0VSVChtX2NhY2hlc0luTWVtb3J5Lmdl
dChncm91cC0+bWFuaWZlc3RVUkwoKSkgIT0gZ3JvdXApOworICAgIGlmIChncm91cC5pc09ic29s
ZXRlKCkpIHsKKyAgICAgICAgQVNTRVJUKCFncm91cC5zdG9yYWdlSUQoKSk7CisgICAgICAgIEFT
U0VSVChtX2NhY2hlc0luTWVtb3J5LmdldChncm91cC5tYW5pZmVzdFVSTCgpKSAhPSAmZ3JvdXAp
OwogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgQVNTRVJUKG1fY2FjaGVzSW5NZW1vcnku
Z2V0KGdyb3VwLT5tYW5pZmVzdFVSTCgpKSA9PSBncm91cCk7CisgICAgQVNTRVJUKG1fY2FjaGVz
SW5NZW1vcnkuZ2V0KGdyb3VwLm1hbmlmZXN0VVJMKCkpID09ICZncm91cCk7CiAKLSAgICBtX2Nh
Y2hlc0luTWVtb3J5LnJlbW92ZShncm91cC0+bWFuaWZlc3RVUkwoKSk7CisgICAgbV9jYWNoZXNJ
bk1lbW9yeS5yZW1vdmUoZ3JvdXAubWFuaWZlc3RVUkwoKSk7CiAgICAgCiAgICAgLy8gSWYgdGhl
IGNhY2hlIGdyb3VwIGlzIGhhbGYtY3JlYXRlZCwgd2UgZG9uJ3Qgd2FudCBpdCBpbiB0aGUgc2F2
ZWQgc2V0IChhcyBpdCBpcyBub3Qgc3RvcmVkIGluIGRhdGFiYXNlKS4KLSAgICBpZiAoIWdyb3Vw
LT5zdG9yYWdlSUQoKSkKLSAgICAgICAgbV9jYWNoZUhvc3RTZXQucmVtb3ZlKHVybEhvc3RIYXNo
KGdyb3VwLT5tYW5pZmVzdFVSTCgpKSk7CisgICAgaWYgKCFncm91cC5zdG9yYWdlSUQoKSkKKyAg
ICAgICAgbV9jYWNoZUhvc3RTZXQucmVtb3ZlKHVybEhvc3RIYXNoKGdyb3VwLm1hbmlmZXN0VVJM
KCkpKTsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6Y2FjaGVHcm91cE1hZGVP
YnNvbGV0ZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwKQordm9pZCBBcHBsaWNhdGlvbkNh
Y2hlU3RvcmFnZTo6Y2FjaGVHcm91cE1hZGVPYnNvbGV0ZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAm
IGdyb3VwKQogewotICAgIEFTU0VSVChtX2NhY2hlc0luTWVtb3J5LmdldChncm91cC0+bWFuaWZl
c3RVUkwoKSkgPT0gZ3JvdXApOwotICAgIEFTU0VSVChtX2NhY2hlSG9zdFNldC5jb250YWlucyh1
cmxIb3N0SGFzaChncm91cC0+bWFuaWZlc3RVUkwoKSkpKTsKKyAgICBBU1NFUlQobV9jYWNoZXNJ
bk1lbW9yeS5nZXQoZ3JvdXAubWFuaWZlc3RVUkwoKSkgPT0gJmdyb3VwKTsKKyAgICBBU1NFUlQo
bV9jYWNoZUhvc3RTZXQuY29udGFpbnModXJsSG9zdEhhc2goZ3JvdXAubWFuaWZlc3RVUkwoKSkp
KTsKIAotICAgIGlmIChBcHBsaWNhdGlvbkNhY2hlKiBuZXdlc3RDYWNoZSA9IGdyb3VwLT5uZXdl
c3RDYWNoZSgpKQorICAgIGlmIChhdXRvKiBuZXdlc3RDYWNoZSA9IGdyb3VwLm5ld2VzdENhY2hl
KCkpCiAgICAgICAgIHJlbW92ZShuZXdlc3RDYWNoZSk7CiAKLSAgICBtX2NhY2hlc0luTWVtb3J5
LnJlbW92ZShncm91cC0+bWFuaWZlc3RVUkwoKSk7Ci0gICAgbV9jYWNoZUhvc3RTZXQucmVtb3Zl
KHVybEhvc3RIYXNoKGdyb3VwLT5tYW5pZmVzdFVSTCgpKSk7CisgICAgbV9jYWNoZXNJbk1lbW9y
eS5yZW1vdmUoZ3JvdXAubWFuaWZlc3RVUkwoKSk7CisgICAgbV9jYWNoZUhvc3RTZXQucmVtb3Zl
KHVybEhvc3RIYXNoKGdyb3VwLm1hbmlmZXN0VVJMKCkpKTsKIH0KIAogY29uc3QgU3RyaW5nJiBB
cHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6Y2FjaGVEaXJlY3RvcnkoKSBjb25zdApAQCAtOTk2LDcg
Kzk4OSw3IEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmNoZWNrT3JpZ2luUXVvdGEo
QXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCwgQXBwCiAgICAgcmV0dXJuIHRydWU7CiB9CiAK
LWJvb2wgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OnN0b3JlTmV3ZXN0Q2FjaGUoQXBwbGljYXRp
b25DYWNoZUdyb3VwKiBncm91cCwgQXBwbGljYXRpb25DYWNoZSogb2xkQ2FjaGUsIEZhaWx1cmVS
ZWFzb24mIGZhaWx1cmVSZWFzb24pCitib29sIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpzdG9y
ZU5ld2VzdENhY2hlKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCYgZ3JvdXAsIEFwcGxpY2F0aW9uQ2Fj
aGUqIG9sZENhY2hlLCBGYWlsdXJlUmVhc29uJiBmYWlsdXJlUmVhc29uKQogewogICAgIG9wZW5E
YXRhYmFzZSh0cnVlKTsKIApAQCAtMTAxMiwyNCArMTAwNSwyNCBAQCBib29sIEFwcGxpY2F0aW9u
Q2FjaGVTdG9yYWdlOjpzdG9yZU5ld2VzdENhY2hlKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3Jv
dXAsIEFwcAogCiAgICAgLy8gQ2hlY2sgaWYgdGhpcyB3b3VsZCByZWFjaCB0aGUgcGVyLW9yaWdp
biBxdW90YS4KICAgICBpbnQ2NF90IHRvdGFsU3BhY2VOZWVkZWRJZ25vcmVkOwotICAgIGlmICgh
Y2hlY2tPcmlnaW5RdW90YShncm91cCwgb2xkQ2FjaGUsIGdyb3VwLT5uZXdlc3RDYWNoZSgpLCB0
b3RhbFNwYWNlTmVlZGVkSWdub3JlZCkpIHsKKyAgICBpZiAoIWNoZWNrT3JpZ2luUXVvdGEoJmdy
b3VwLCBvbGRDYWNoZSwgZ3JvdXAubmV3ZXN0Q2FjaGUoKSwgdG90YWxTcGFjZU5lZWRlZElnbm9y
ZWQpKSB7CiAgICAgICAgIGZhaWx1cmVSZWFzb24gPSBPcmlnaW5RdW90YVJlYWNoZWQ7CiAgICAg
ICAgIHJldHVybiBmYWxzZTsKICAgICB9CiAKICAgICBHcm91cFN0b3JhZ2VJREpvdXJuYWwgZ3Jv
dXBTdG9yYWdlSURKb3VybmFsOwotICAgIGlmICghZ3JvdXAtPnN0b3JhZ2VJRCgpKSB7CisgICAg
aWYgKCFncm91cC5zdG9yYWdlSUQoKSkgewogICAgICAgICAvLyBTdG9yZSB0aGUgZ3JvdXAKLSAg
ICAgICAgaWYgKCFzdG9yZShncm91cCwgJmdyb3VwU3RvcmFnZUlESm91cm5hbCkpIHsKKyAgICAg
ICAgaWYgKCFzdG9yZSgmZ3JvdXAsICZncm91cFN0b3JhZ2VJREpvdXJuYWwpKSB7CiAgICAgICAg
ICAgICBjaGVja0Zvck1heFNpemVSZWFjaGVkKCk7CiAgICAgICAgICAgICBmYWlsdXJlUmVhc29u
ID0gaXNNYXhpbXVtU2l6ZVJlYWNoZWQoKSA/IFRvdGFsUXVvdGFSZWFjaGVkIDogRGlza09yT3Bl
cmF0aW9uRmFpbHVyZTsKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgfQogICAg
IH0KICAgICAKLSAgICBBU1NFUlQoZ3JvdXAtPm5ld2VzdENhY2hlKCkpOwotICAgIEFTU0VSVCgh
Z3JvdXAtPmlzT2Jzb2xldGUoKSk7Ci0gICAgQVNTRVJUKCFncm91cC0+bmV3ZXN0Q2FjaGUoKS0+
c3RvcmFnZUlEKCkpOworICAgIEFTU0VSVChncm91cC5uZXdlc3RDYWNoZSgpKTsKKyAgICBBU1NF
UlQoIWdyb3VwLmlzT2Jzb2xldGUoKSk7CisgICAgQVNTRVJUKCFncm91cC5uZXdlc3RDYWNoZSgp
LT5zdG9yYWdlSUQoKSk7CiAgICAgCiAgICAgLy8gTG9nIHRoZSBzdG9yYWdlSUQgY2hhbmdlcyB0
byB0aGUgaW4tbWVtb3J5IHJlc291cmNlIG9iamVjdHMuIFRoZSBqb3VybmFsCiAgICAgLy8gb2Jq
ZWN0IHdpbGwgcm9sbCB0aGVtIGJhY2sgYXV0b21hdGljYWxseSBpbiBjYXNlIGEgZGF0YWJhc2Ug
b3BlcmF0aW9uCkBAIC0xMDM3LDcgKzEwMzAsNyBAQCBib29sIEFwcGxpY2F0aW9uQ2FjaGVTdG9y
YWdlOjpzdG9yZU5ld2VzdENhY2hlKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAsIEFwcAog
ICAgIFJlc291cmNlU3RvcmFnZUlESm91cm5hbCByZXNvdXJjZVN0b3JhZ2VJREpvdXJuYWw7CiAK
ICAgICAvLyBTdG9yZSB0aGUgbmV3ZXN0IGNhY2hlCi0gICAgaWYgKCFzdG9yZShncm91cC0+bmV3
ZXN0Q2FjaGUoKSwgJnJlc291cmNlU3RvcmFnZUlESm91cm5hbCkpIHsKKyAgICBpZiAoIXN0b3Jl
KGdyb3VwLm5ld2VzdENhY2hlKCksICZyZXNvdXJjZVN0b3JhZ2VJREpvdXJuYWwpKSB7CiAgICAg
ICAgIGNoZWNrRm9yTWF4U2l6ZVJlYWNoZWQoKTsKICAgICAgICAgZmFpbHVyZVJlYXNvbiA9IGlz
TWF4aW11bVNpemVSZWFjaGVkKCkgPyBUb3RhbFF1b3RhUmVhY2hlZCA6IERpc2tPck9wZXJhdGlv
bkZhaWx1cmU7CiAgICAgICAgIHJldHVybiBmYWxzZTsKQEAgLTEwNTEsOCArMTA0NCw4IEBAIGJv
b2wgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OnN0b3JlTmV3ZXN0Q2FjaGUoQXBwbGljYXRpb25D
YWNoZUdyb3VwKiBncm91cCwgQXBwCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9CiAgICAg
Ci0gICAgc3RhdGVtZW50LmJpbmRJbnQ2NCgxLCBncm91cC0+bmV3ZXN0Q2FjaGUoKS0+c3RvcmFn
ZUlEKCkpOwotICAgIHN0YXRlbWVudC5iaW5kSW50NjQoMiwgZ3JvdXAtPnN0b3JhZ2VJRCgpKTsK
KyAgICBzdGF0ZW1lbnQuYmluZEludDY0KDEsIGdyb3VwLm5ld2VzdENhY2hlKCktPnN0b3JhZ2VJ
RCgpKTsKKyAgICBzdGF0ZW1lbnQuYmluZEludDY0KDIsIGdyb3VwLnN0b3JhZ2VJRCgpKTsKICAg
ICAKICAgICBpZiAoIWV4ZWN1dGVTdGF0ZW1lbnQoc3RhdGVtZW50KSkgewogICAgICAgICBmYWls
dXJlUmVhc29uID0gRGlza09yT3BlcmF0aW9uRmFpbHVyZTsKQEAgLTEwNjUsMjIgKzEwNTgsMjQg
QEAgYm9vbCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6c3RvcmVOZXdlc3RDYWNoZShBcHBsaWNh
dGlvbkNhY2hlR3JvdXAqIGdyb3VwLCBBcHAKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotYm9vbCBB
cHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6c3RvcmVOZXdlc3RDYWNoZShBcHBsaWNhdGlvbkNhY2hl
R3JvdXAqIGdyb3VwKQorYm9vbCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6c3RvcmVOZXdlc3RD
YWNoZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAmIGdyb3VwKQogewogICAgIC8vIElnbm9yZSB0aGUg
cmVhc29uIGZvciBmYWlsaW5nLCBqdXN0IGF0dGVtcHQgdGhlIHN0b3JlLgogICAgIEZhaWx1cmVS
ZWFzb24gaWdub3JlZEZhaWx1cmVSZWFzb247Ci0gICAgcmV0dXJuIHN0b3JlTmV3ZXN0Q2FjaGUo
Z3JvdXAsIDAsIGlnbm9yZWRGYWlsdXJlUmVhc29uKTsKKyAgICByZXR1cm4gc3RvcmVOZXdlc3RD
YWNoZShncm91cCwgbnVsbHB0ciwgaWdub3JlZEZhaWx1cmVSZWFzb24pOwogfQogCi10ZW1wbGF0
ZSA8dHlwZW5hbWUgQ2hhcmFjdGVyVHlwZT4KLXN0YXRpYyBpbmxpbmUgdm9pZCBwYXJzZUhlYWRl
cihjb25zdCBDaGFyYWN0ZXJUeXBlKiBoZWFkZXIsIHNpemVfdCBoZWFkZXJMZW5ndGgsIFJlc291
cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordGVtcGxhdGU8dHlwZW5hbWUgQ2hhcmFjdGVyVHlwZT4K
K3N0YXRpYyBpbmxpbmUgdm9pZCBwYXJzZUhlYWRlcihjb25zdCBDaGFyYWN0ZXJUeXBlKiBoZWFk
ZXIsIHVuc2lnbmVkIGhlYWRlckxlbmd0aCwgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7
Ci0gICAgc2l6ZV90IHBvcyA9IGZpbmQoaGVhZGVyLCBoZWFkZXJMZW5ndGgsICc6Jyk7Ci0gICAg
QVNTRVJUKHBvcyAhPSBub3RGb3VuZCk7Ci0gICAgCi0gICAgU3RyaW5nIGhlYWRlck5hbWUgPSBB
dG9taWNTdHJpbmcoaGVhZGVyLCBwb3MpOwotICAgIFN0cmluZyBoZWFkZXJWYWx1ZSA9IFN0cmlu
ZyhoZWFkZXIgKyBwb3MgKyAxLCBoZWFkZXJMZW5ndGggLSBwb3MgLSAxKTsKLSAgICAKKyAgICBB
U1NFUlQoZmluZChoZWFkZXIsIGhlYWRlckxlbmd0aCwgJzonKSAhPSBub3RGb3VuZCk7CisgICAg
dW5zaWduZWQgY29sb25Qb3NpdGlvbiA9IGZpbmQoaGVhZGVyLCBoZWFkZXJMZW5ndGgsICc6Jyk7
CisKKyAgICAvLyBTYXZlIG1lbW9yeSBieSBwdXR0aW5nIHRoZSBoZWFkZXIgbmFtZXMgaW50byBh
dG9taWMgc3RyaW5ncyBzbyBlYWNoIGlzIHN0b3JlZCBvbmx5IG9uY2UsCisgICAgLy8gZXZlbiB0
aG91Z2ggdGhlIHNldEhUVFBIZWFkZXJGaWVsZCBmdW5jdGlvbiBkb2VzIG5vdCByZXF1aXJlIGFu
IGF0b21pYyBzdHJpbmcuCisgICAgQXRvbWljU3RyaW5nIGhlYWRlck5hbWUgeyBoZWFkZXIsIGNv
bG9uUG9zaXRpb24gfTsKKyAgICBTdHJpbmcgaGVhZGVyVmFsdWUgeyBoZWFkZXIgKyBjb2xvblBv
c2l0aW9uICsgMSwgaGVhZGVyTGVuZ3RoIC0gY29sb25Qb3NpdGlvbiAtIDEgfTsKKwogICAgIHJl
c3BvbnNlLnNldEhUVFBIZWFkZXJGaWVsZChoZWFkZXJOYW1lLCBoZWFkZXJWYWx1ZSk7CiB9CiAK
QEAgLTExMDcsNyArMTEwMiw3IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBwYXJzZUhlYWRlcnMoY29u
c3QgU3RyaW5nJiBoZWFkZXJzLCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zCiAgICAgfQogfQog
ICAgIAotUGFzc1JlZlB0cjxBcHBsaWNhdGlvbkNhY2hlPiBBcHBsaWNhdGlvbkNhY2hlU3RvcmFn
ZTo6bG9hZENhY2hlKHVuc2lnbmVkIHN0b3JhZ2VJRCkKK1JlZlB0cjxBcHBsaWNhdGlvbkNhY2hl
PiBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6bG9hZENhY2hlKHVuc2lnbmVkIHN0b3JhZ2VJRCkK
IHsKICAgICBBU1NFUlQoU1FMaXRlRGF0YWJhc2VUcmFja2VyOjpoYXNUcmFuc2FjdGlvbkluUHJv
Z3Jlc3MoKSk7CiAgICAgU1FMaXRlU3RhdGVtZW50IGNhY2hlU3RhdGVtZW50KG1fZGF0YWJhc2Us
CkBAIC0xNDA4LDEwICsxNDAzLDExIEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmRl
bGV0ZUNhY2hlR3JvdXAoY29uc3QgU3RyaW5nJiBtYW5pZmVzdFVSTCkKICAgICBTUUxpdGVUcmFu
c2FjdGlvbkluUHJvZ3Jlc3NBdXRvQ291bnRlciB0cmFuc2FjdGlvbkNvdW50ZXI7CiAKICAgICBT
UUxpdGVUcmFuc2FjdGlvbiBkZWxldGVUcmFuc2FjdGlvbihtX2RhdGFiYXNlKTsKKwogICAgIC8v
IENoZWNrIHRvIHNlZSBpZiB0aGUgZ3JvdXAgaXMgaW4gbWVtb3J5LgotICAgIEFwcGxpY2F0aW9u
Q2FjaGVHcm91cCogZ3JvdXAgPSBtX2NhY2hlc0luTWVtb3J5LmdldChtYW5pZmVzdFVSTCk7Cisg
ICAgYXV0byogZ3JvdXAgPSBtX2NhY2hlc0luTWVtb3J5LmdldChtYW5pZmVzdFVSTCk7CiAgICAg
aWYgKGdyb3VwKQotICAgICAgICBjYWNoZUdyb3VwTWFkZU9ic29sZXRlKGdyb3VwKTsKKyAgICAg
ICAgY2FjaGVHcm91cE1hZGVPYnNvbGV0ZSgqZ3JvdXApOwogICAgIGVsc2UgewogICAgICAgICAv
LyBUaGUgY2FjaGUgZ3JvdXAgaXMgbm90IGluIG1lbW9yeSwgc28gcmVtb3ZlIGl0IGZyb20gdGhl
IGRpc2suCiAgICAgICAgIG9wZW5EYXRhYmFzZShmYWxzZSk7CkBAIC0xNDI0LDkgKzE0MjAsOSBA
QCBib29sIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpkZWxldGVDYWNoZUdyb3VwKGNvbnN0IFN0
cmluZyYgbWFuaWZlc3RVUkwpCiAgICAgfQogCiAgICAgZGVsZXRlVHJhbnNhY3Rpb24uY29tbWl0
KCk7Ci0gICAgCisKICAgICBjaGVja0ZvckRlbGV0ZWRSZXNvdXJjZXMoKTsKLSAgICAKKwogICAg
IHJldHVybiB0cnVlOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBw
Y2FjaGUvQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9h
cHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5oCmluZGV4IGU0OGU4NjY3MzUzNjJkOTQ3
N2E4YTI1MTAwM2NjODYxNTA1MjdkMTYuLjlmYTI5MmVlNTBmYWVlODljMzVjODYxYThmOTlmYTE2
ZjkwNTQ3NmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBs
aWNhdGlvbkNhY2hlU3RvcmFnZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNo
ZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHly
aWdodCAoQykgMjAwOCwgMjAxMCwgMjAxMSBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQu
CisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxNyBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2
ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTQxLDcgKzQxLDcgQEAgY2xh
c3MgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOwogY2xhc3MgVVJMOwogY2xhc3MgU2VjdXJpdHlP
cmlnaW47CiBjbGFzcyBTaGFyZWRCdWZmZXI7Ci10ZW1wbGF0ZSA8Y2xhc3MgVD4gY2xhc3MgU3Rv
cmFnZUlESm91cm5hbDsKK3RlbXBsYXRlPHR5cGVuYW1lPiBjbGFzcyBTdG9yYWdlSURKb3VybmFs
OwogCiBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZSA6IHB1YmxpYyBSZWZDb3VudGVkPEFw
cGxpY2F0aW9uQ2FjaGVTdG9yYWdlPiB7CiBwdWJsaWM6CkBAIC03MywxOSArNzMsMTkgQEAgcHVi
bGljOgogCiAgICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBmaW5kT3JDcmVhdGVDYWNoZUdyb3Vw
KGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwpOwogICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZmlu
ZEluTWVtb3J5Q2FjaGVHcm91cChjb25zdCBVUkwmIG1hbmlmZXN0VVJMKSBjb25zdDsKLSAgICB2
b2lkIGNhY2hlR3JvdXBEZXN0cm95ZWQoQXBwbGljYXRpb25DYWNoZUdyb3VwKik7Ci0gICAgdm9p
ZCBjYWNoZUdyb3VwTWFkZU9ic29sZXRlKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCopOwotICAgICAg
ICAKLSAgICBib29sIHN0b3JlTmV3ZXN0Q2FjaGUoQXBwbGljYXRpb25DYWNoZUdyb3VwKiwgQXBw
bGljYXRpb25DYWNoZSogb2xkQ2FjaGUsIEZhaWx1cmVSZWFzb24mIGZhaWx1cmVSZWFzb24pOwot
ICAgIGJvb2wgc3RvcmVOZXdlc3RDYWNoZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAqKTsgLy8gVXBk
YXRlcyB0aGUgY2FjaGUgZ3JvdXAsIGJ1dCBkb2Vzbid0IHJlbW92ZSBvbGQgY2FjaGUuCisgICAg
dm9pZCBjYWNoZUdyb3VwRGVzdHJveWVkKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCYpOworICAgIHZv
aWQgY2FjaGVHcm91cE1hZGVPYnNvbGV0ZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAmKTsKKworICAg
IGJvb2wgc3RvcmVOZXdlc3RDYWNoZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAmLCBBcHBsaWNhdGlv
bkNhY2hlKiBvbGRDYWNoZSwgRmFpbHVyZVJlYXNvbiYpOworICAgIGJvb2wgc3RvcmVOZXdlc3RD
YWNoZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAmKTsgLy8gVXBkYXRlcyB0aGUgY2FjaGUgZ3JvdXAs
IGJ1dCBkb2Vzbid0IHJlbW92ZSBvbGQgY2FjaGUuCiAgICAgYm9vbCBzdG9yZShBcHBsaWNhdGlv
bkNhY2hlUmVzb3VyY2UqLCBBcHBsaWNhdGlvbkNhY2hlKik7CiAgICAgYm9vbCBzdG9yZVVwZGF0
ZWRUeXBlKEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSosIEFwcGxpY2F0aW9uQ2FjaGUqKTsKIAog
ICAgIC8vIFJlbW92ZXMgdGhlIGdyb3VwIGlmIHRoZSBjYWNoZSB0byBiZSByZW1vdmVkIGlzIHRo
ZSBuZXdlc3Qgb25lIChzbywgc3RvcmVOZXdlc3RDYWNoZSgpIG5lZWRzIHRvIGJlIGNhbGxlZCBi
ZWZvcmVoYW5kIHdoZW4gdXBkYXRpbmcpLgogICAgIHZvaWQgcmVtb3ZlKEFwcGxpY2F0aW9uQ2Fj
aGUqKTsKLSAgICAKKwogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgZW1wdHkoKTsKLSAgICAKKwog
ICAgIGJvb2wgZ2V0TWFuaWZlc3RVUkxzKFZlY3RvcjxVUkw+KiB1cmxzKTsKICAgICBib29sIGNh
Y2hlR3JvdXBTaXplKGNvbnN0IFN0cmluZyYgbWFuaWZlc3RVUkwsIGludDY0X3QqIHNpemUpOwog
ICAgIGJvb2wgZGVsZXRlQ2FjaGVHcm91cChjb25zdCBTdHJpbmcmIG1hbmlmZXN0VVJMKTsKQEAg
LTEwNSwxNCArMTA1LDE1IEBAIHB1YmxpYzoKIAogICAgIHN0YXRpYyBpbnQ2NF90IHVua25vd25R
dW90YSgpIHsgcmV0dXJuIC0xOyB9CiAgICAgc3RhdGljIGludDY0X3Qgbm9RdW90YSgpIHsgcmV0
dXJuIHN0ZDo6bnVtZXJpY19saW1pdHM8aW50NjRfdD46Om1heCgpOyB9CisKIHByaXZhdGU6CiAg
ICAgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoY29uc3QgU3RyaW5nJiBjYWNoZURpcmVjdG9yeSwg
Y29uc3QgU3RyaW5nJiBmbGF0RmlsZVN1YmRpcmVjdG9yeU5hbWUpOwogCi0gICAgUGFzc1JlZlB0
cjxBcHBsaWNhdGlvbkNhY2hlPiBsb2FkQ2FjaGUodW5zaWduZWQgc3RvcmFnZUlEKTsKKyAgICBS
ZWZQdHI8QXBwbGljYXRpb25DYWNoZT4gbG9hZENhY2hlKHVuc2lnbmVkIHN0b3JhZ2VJRCk7CiAg
ICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBsb2FkQ2FjaGVHcm91cChjb25zdCBVUkwmIG1hbmlm
ZXN0VVJMKTsKICAgICAKLSAgICB0eXBlZGVmIFN0b3JhZ2VJREpvdXJuYWw8QXBwbGljYXRpb25D
YWNoZVJlc291cmNlPiBSZXNvdXJjZVN0b3JhZ2VJREpvdXJuYWw7Ci0gICAgdHlwZWRlZiBTdG9y
YWdlSURKb3VybmFsPEFwcGxpY2F0aW9uQ2FjaGVHcm91cD4gR3JvdXBTdG9yYWdlSURKb3VybmFs
OworICAgIHVzaW5nIFJlc291cmNlU3RvcmFnZUlESm91cm5hbCA9IFN0b3JhZ2VJREpvdXJuYWw8
QXBwbGljYXRpb25DYWNoZVJlc291cmNlPjsKKyAgICB1c2luZyBHcm91cFN0b3JhZ2VJREpvdXJu
YWwgPSBTdG9yYWdlSURKb3VybmFsPEFwcGxpY2F0aW9uQ2FjaGVHcm91cD47CiAKICAgICBib29s
IHN0b3JlKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCosIEdyb3VwU3RvcmFnZUlESm91cm5hbCopOwog
ICAgIGJvb2wgc3RvcmUoQXBwbGljYXRpb25DYWNoZSosIFJlc291cmNlU3RvcmFnZUlESm91cm5h
bCopOwpAQCAtMTUyLDggKzE1Myw3IEBAIHByaXZhdGU6CiAgICAgLy8gd2Uga2VlcCBhIGhhc2gg
c2V0IG9mIHRoZSBob3N0cyBvZiB0aGUgbWFuaWZlc3QgVVJMcyBvZiBhbGwgbm9uLW9ic29sZXRl
IGNhY2hlIGdyb3Vwcy4KICAgICBIYXNoQ291bnRlZFNldDx1bnNpZ25lZCwgQWxyZWFkeUhhc2hl
ZD4gbV9jYWNoZUhvc3RTZXQ7CiAgICAgCi0gICAgdHlwZWRlZiBIYXNoTWFwPFN0cmluZywgQXBw
bGljYXRpb25DYWNoZUdyb3VwKj4gQ2FjaGVHcm91cE1hcDsKLSAgICBDYWNoZUdyb3VwTWFwIG1f
Y2FjaGVzSW5NZW1vcnk7IC8vIEV4Y2x1ZGVzIG9ic29sZXRlIGNhY2hlIGdyb3Vwcy4KKyAgICBI
YXNoTWFwPFN0cmluZywgQXBwbGljYXRpb25DYWNoZUdyb3VwKj4gbV9jYWNoZXNJbk1lbW9yeTsg
Ly8gRXhjbHVkZXMgb2Jzb2xldGUgY2FjaGUgZ3JvdXBzLgogCiAgICAgZnJpZW5kIGNsYXNzIFdU
Rjo6TmV2ZXJEZXN0cm95ZWQ8QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U+OwogfTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9ET01BcHBsaWNhdGlvbkNhY2hlLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9ET01BcHBsaWNhdGlvbkNhY2hlLmNw
cAppbmRleCA0ZDBlZWYyMjRjMGFiZDE4OTE1YjM2M2UxNTFlMDAwNDVkMDk4OTFjLi5lZDhmYWQ4
ZjY5NjEwYTczZWY1ZGYxYTc3ZTM3Y2VmMmVhNDQ1ZjAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25DYWNoZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0RPTUFwcGxpY2F0aW9uQ2FjaGUuY3BwCkBAIC0xLDUg
KzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCwgMjAwOSBBcHBsZSBJbmMuIEFsbCBS
aWdodHMgUmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxNyBBcHBsZSBJbmMuIEFs
bCBSaWdodHMgUmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTI5
LDExMSArMjksODQgQEAKICNpbmNsdWRlICJBcHBsaWNhdGlvbkNhY2hlSG9zdC5oIgogI2luY2x1
ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnRMb2FkZXIuaCIKLSNpbmNsdWRlICJF
dmVudC5oIgotI2luY2x1ZGUgIkV2ZW50TGlzdGVuZXIuaCIKLSNpbmNsdWRlICJFdmVudE5hbWVz
LmgiCiAjaW5jbHVkZSAiRXhjZXB0aW9uQ29kZS5oIgogI2luY2x1ZGUgIkZyYW1lLmgiCi0jaW5j
bHVkZSAiRnJhbWVMb2FkZXIuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1ET01BcHBsaWNh
dGlvbkNhY2hlOjpET01BcHBsaWNhdGlvbkNhY2hlKEZyYW1lKiBmcmFtZSkKLSAgICA6IERPTVdp
bmRvd1Byb3BlcnR5KGZyYW1lKQorRE9NQXBwbGljYXRpb25DYWNoZTo6RE9NQXBwbGljYXRpb25D
YWNoZShGcmFtZSYgZnJhbWUpCisgICAgOiBET01XaW5kb3dQcm9wZXJ0eSgmZnJhbWUpCiB7Ci0g
ICAgQXBwbGljYXRpb25DYWNoZUhvc3QqIGNhY2hlSG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCk7Ci0gICAgaWYgKGNhY2hlSG9zdCkKLSAgICAgICAgY2FjaGVIb3N0LT5zZXRET01BcHBsaWNh
dGlvbkNhY2hlKHRoaXMpOworICAgIGlmIChhdXRvKiBob3N0ID0gYXBwbGljYXRpb25DYWNoZUhv
c3QoKSkKKyAgICAgICAgaG9zdC0+c2V0RE9NQXBwbGljYXRpb25DYWNoZSh0aGlzKTsKIH0KIAog
dm9pZCBET01BcHBsaWNhdGlvbkNhY2hlOjpkaXNjb25uZWN0RnJhbWVGb3JEb2N1bWVudFN1c3Bl
bnNpb24oKQogewotICAgIGlmIChBcHBsaWNhdGlvbkNhY2hlSG9zdCogY2FjaGVIb3N0ID0gYXBw
bGljYXRpb25DYWNoZUhvc3QoKSkKLSAgICAgICAgY2FjaGVIb3N0LT5zZXRET01BcHBsaWNhdGlv
bkNhY2hlKG51bGxwdHIpOworICAgIGlmIChhdXRvKiBob3N0ID0gYXBwbGljYXRpb25DYWNoZUhv
c3QoKSkKKyAgICAgICAgaG9zdC0+c2V0RE9NQXBwbGljYXRpb25DYWNoZShudWxscHRyKTsKICAg
ICBET01XaW5kb3dQcm9wZXJ0eTo6ZGlzY29ubmVjdEZyYW1lRm9yRG9jdW1lbnRTdXNwZW5zaW9u
KCk7CiB9CiAKIHZvaWQgRE9NQXBwbGljYXRpb25DYWNoZTo6cmVjb25uZWN0RnJhbWVGcm9tRG9j
dW1lbnRTdXNwZW5zaW9uKEZyYW1lKiBmcmFtZSkKIHsKICAgICBET01XaW5kb3dQcm9wZXJ0eTo6
cmVjb25uZWN0RnJhbWVGcm9tRG9jdW1lbnRTdXNwZW5zaW9uKGZyYW1lKTsKLSAgICBpZiAoQXBw
bGljYXRpb25DYWNoZUhvc3QqIGNhY2hlSG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkpCi0g
ICAgICAgIGNhY2hlSG9zdC0+c2V0RE9NQXBwbGljYXRpb25DYWNoZSh0aGlzKTsKKyAgICBpZiAo
YXV0byogaG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkpCisgICAgICAgIGhvc3QtPnNldERP
TUFwcGxpY2F0aW9uQ2FjaGUodGhpcyk7CiB9CiAKIHZvaWQgRE9NQXBwbGljYXRpb25DYWNoZTo6
d2lsbERlc3Ryb3lHbG9iYWxPYmplY3RJbkZyYW1lKCkKIHsKLSAgICBpZiAoQXBwbGljYXRpb25D
YWNoZUhvc3QqIGNhY2hlSG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkpCi0gICAgICAgIGNh
Y2hlSG9zdC0+c2V0RE9NQXBwbGljYXRpb25DYWNoZShudWxscHRyKTsKKyAgICBpZiAoYXV0byog
aG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkpCisgICAgICAgIGhvc3QtPnNldERPTUFwcGxp
Y2F0aW9uQ2FjaGUobnVsbHB0cik7CiAgICAgRE9NV2luZG93UHJvcGVydHk6OndpbGxEZXN0cm95
R2xvYmFsT2JqZWN0SW5GcmFtZSgpOwogfQogCiBBcHBsaWNhdGlvbkNhY2hlSG9zdCogRE9NQXBw
bGljYXRpb25DYWNoZTo6YXBwbGljYXRpb25DYWNoZUhvc3QoKSBjb25zdAogewotICAgIGlmICgh
bV9mcmFtZSB8fCAhbV9mcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSkKKyAgICBpZiAo
IW1fZnJhbWUpCiAgICAgICAgIHJldHVybiBudWxscHRyOwotICAgIHJldHVybiBtX2ZyYW1lLT5s
b2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpOworICAgIGF1
dG8qIGRvY3VtZW50TG9hZGVyID0gbV9mcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsK
KyAgICBpZiAoIWRvY3VtZW50TG9hZGVyKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICBy
ZXR1cm4gJmRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpOwogfQogCiB1bnNp
Z25lZCBzaG9ydCBET01BcHBsaWNhdGlvbkNhY2hlOjpzdGF0dXMoKSBjb25zdAogewotICAgIEFw
cGxpY2F0aW9uQ2FjaGVIb3N0KiBjYWNoZUhvc3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpOwot
ICAgIGlmICghY2FjaGVIb3N0KQorICAgIGF1dG8qIGhvc3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9z
dCgpOworICAgIGlmICghaG9zdCkKICAgICAgICAgcmV0dXJuIEFwcGxpY2F0aW9uQ2FjaGVIb3N0
OjpVTkNBQ0hFRDsKLSAgICByZXR1cm4gY2FjaGVIb3N0LT5zdGF0dXMoKTsKKyAgICByZXR1cm4g
aG9zdC0+c3RhdHVzKCk7CiB9CiAKIEV4Y2VwdGlvbk9yPHZvaWQ+IERPTUFwcGxpY2F0aW9uQ2Fj
aGU6OnVwZGF0ZSgpCiB7Ci0gICAgYXV0byogY2FjaGVIb3N0ID0gYXBwbGljYXRpb25DYWNoZUhv
c3QoKTsKLSAgICBpZiAoIWNhY2hlSG9zdCB8fCAhY2FjaGVIb3N0LT51cGRhdGUoKSkKKyAgICBh
dXRvKiBob3N0ID0gYXBwbGljYXRpb25DYWNoZUhvc3QoKTsKKyAgICBpZiAoIWhvc3QgfHwgIWhv
c3QtPnVwZGF0ZSgpKQogICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSU5WQUxJRF9TVEFURV9F
UlIgfTsKICAgICByZXR1cm4geyB9OwogfQogCiBFeGNlcHRpb25Pcjx2b2lkPiBET01BcHBsaWNh
dGlvbkNhY2hlOjpzd2FwQ2FjaGUoKQogewotICAgIGF1dG8qIGNhY2hlSG9zdCA9IGFwcGxpY2F0
aW9uQ2FjaGVIb3N0KCk7Ci0gICAgaWYgKCFjYWNoZUhvc3QgfHwgIWNhY2hlSG9zdC0+c3dhcENh
Y2hlKCkpCisgICAgYXV0byogaG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7CisgICAgaWYg
KCFob3N0IHx8ICFob3N0LT5zd2FwQ2FjaGUoKSkKICAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7
IElOVkFMSURfU1RBVEVfRVJSIH07CiAgICAgcmV0dXJuIHsgfTsKIH0KIAogdm9pZCBET01BcHBs
aWNhdGlvbkNhY2hlOjphYm9ydCgpCiB7Ci0gICAgQXBwbGljYXRpb25DYWNoZUhvc3QqIGNhY2hl
SG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7Ci0gICAgaWYgKGNhY2hlSG9zdCkKLSAgICAg
ICAgY2FjaGVIb3N0LT5hYm9ydCgpOworICAgIGlmIChhdXRvKiBob3N0ID0gYXBwbGljYXRpb25D
YWNoZUhvc3QoKSkKKyAgICAgICAgaG9zdC0+YWJvcnQoKTsKIH0KIAogU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCogRE9NQXBwbGljYXRpb25DYWNoZTo6c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNv
bnN0CiB7Ci0gICAgaWYgKG1fZnJhbWUpCi0gICAgICAgIHJldHVybiBtX2ZyYW1lLT5kb2N1bWVu
dCgpOwotICAgIHJldHVybiBudWxscHRyOwotfQotCi1jb25zdCBBdG9taWNTdHJpbmcmIERPTUFw
cGxpY2F0aW9uQ2FjaGU6OnRvRXZlbnRUeXBlKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFdmVudElE
IGlkKQotewotICAgIHN3aXRjaCAoaWQpIHsKLSAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVIb3N0
OjpDSEVDS0lOR19FVkVOVDoKLSAgICAgICAgcmV0dXJuIGV2ZW50TmFtZXMoKS5jaGVja2luZ0V2
ZW50OwotICAgIGNhc2UgQXBwbGljYXRpb25DYWNoZUhvc3Q6OkVSUk9SX0VWRU5UOgotICAgICAg
ICByZXR1cm4gZXZlbnROYW1lcygpLmVycm9yRXZlbnQ7Ci0gICAgY2FzZSBBcHBsaWNhdGlvbkNh
Y2hlSG9zdDo6Tk9VUERBVEVfRVZFTlQ6Ci0gICAgICAgIHJldHVybiBldmVudE5hbWVzKCkubm91
cGRhdGVFdmVudDsKLSAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpET1dOTE9BRElOR19F
VkVOVDoKLSAgICAgICAgcmV0dXJuIGV2ZW50TmFtZXMoKS5kb3dubG9hZGluZ0V2ZW50OwotICAg
IGNhc2UgQXBwbGljYXRpb25DYWNoZUhvc3Q6OlBST0dSRVNTX0VWRU5UOgotICAgICAgICByZXR1
cm4gZXZlbnROYW1lcygpLnByb2dyZXNzRXZlbnQ7Ci0gICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hl
SG9zdDo6VVBEQVRFUkVBRFlfRVZFTlQ6Ci0gICAgICAgIHJldHVybiBldmVudE5hbWVzKCkudXBk
YXRlcmVhZHlFdmVudDsKLSAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDQUNIRURfRVZF
TlQ6Ci0gICAgICAgIHJldHVybiBldmVudE5hbWVzKCkuY2FjaGVkRXZlbnQ7Ci0gICAgY2FzZSBB
cHBsaWNhdGlvbkNhY2hlSG9zdDo6T0JTT0xFVEVfRVZFTlQ6ICAgICAgICAgICAgCi0gICAgICAg
IHJldHVybiBldmVudE5hbWVzKCkub2Jzb2xldGVFdmVudDsKLSAgICB9Ci0gICAgQVNTRVJUX05P
VF9SRUFDSEVEKCk7Ci0gICAgcmV0dXJuIGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50OworICAgIGlm
ICghbV9mcmFtZSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgcmV0dXJuIG1fZnJhbWUt
PmRvY3VtZW50KCk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9ET01BcHBsaWNhdGlvbkNhY2hlLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25DYWNoZS5oCmluZGV4IDNm
MjBkOGMyYjc1MTk3MzJmYWExZjdkMGVlMGY5MDRhOTc4NTAxOWQuLmNmNmQyYTlkOTlmNzA2OGMw
NmNjMmY0YTI3MTExZTJkY2RjMWU2NzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9hcHBjYWNoZS9ET01BcHBsaWNhdGlvbkNhY2hlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2FwcGNhY2hlL0RPTUFwcGxpY2F0aW9uQ2FjaGUuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0g
KiBDb3B5cmlnaHQgKEMpIDIwMDgsIDIwMDkgQXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVk
LgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2Vy
dmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yNSw0NiArMjUsMzkgQEAK
IAogI3ByYWdtYSBvbmNlCiAKLSNpbmNsdWRlICJBcHBsaWNhdGlvbkNhY2hlSG9zdC5oIgogI2lu
Y2x1ZGUgIkRPTVdpbmRvd1Byb3BlcnR5LmgiCiAjaW5jbHVkZSAiRXZlbnRUYXJnZXQuaCIKLSNp
bmNsdWRlICJFeGNlcHRpb25Pci5oIgotI2luY2x1ZGUgIlNjcmlwdFdyYXBwYWJsZS5oIgotI2lu
Y2x1ZGUgPHd0Zi9IYXNoTWFwLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvQXRvbWljU3RyaW5nSGFz
aC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2NsYXNzIEFwcGxpY2F0aW9uQ2FjaGVIb3N0
OwogY2xhc3MgRnJhbWU7Ci1jbGFzcyBVUkw7CiAKIGNsYXNzIERPTUFwcGxpY2F0aW9uQ2FjaGUg
ZmluYWwgOiBwdWJsaWMgUmVmQ291bnRlZDxET01BcHBsaWNhdGlvbkNhY2hlPiwgcHVibGljIEV2
ZW50VGFyZ2V0V2l0aElubGluZURhdGEsIHB1YmxpYyBET01XaW5kb3dQcm9wZXJ0eSB7CiBwdWJs
aWM6Ci0gICAgc3RhdGljIFJlZjxET01BcHBsaWNhdGlvbkNhY2hlPiBjcmVhdGUoRnJhbWUqIGZy
YW1lKSB7IHJldHVybiBhZG9wdFJlZigqbmV3IERPTUFwcGxpY2F0aW9uQ2FjaGUoZnJhbWUpKTsg
fQorICAgIHN0YXRpYyBSZWY8RE9NQXBwbGljYXRpb25DYWNoZT4gY3JlYXRlKEZyYW1lJiBmcmFt
ZSkgeyByZXR1cm4gYWRvcHRSZWYoKm5ldyBET01BcHBsaWNhdGlvbkNhY2hlKGZyYW1lKSk7IH0K
ICAgICB2aXJ0dWFsIH5ET01BcHBsaWNhdGlvbkNhY2hlKCkgeyBBU1NFUlQoIW1fZnJhbWUpOyB9
CiAKLSAgICB2b2lkIGRpc2Nvbm5lY3RGcmFtZUZvckRvY3VtZW50U3VzcGVuc2lvbigpIG92ZXJy
aWRlOwotICAgIHZvaWQgcmVjb25uZWN0RnJhbWVGcm9tRG9jdW1lbnRTdXNwZW5zaW9uKEZyYW1l
Kikgb3ZlcnJpZGU7Ci0gICAgdm9pZCB3aWxsRGVzdHJveUdsb2JhbE9iamVjdEluRnJhbWUoKSBv
dmVycmlkZTsKLQogICAgIHVuc2lnbmVkIHNob3J0IHN0YXR1cygpIGNvbnN0OwogICAgIEV4Y2Vw
dGlvbk9yPHZvaWQ+IHVwZGF0ZSgpOwogICAgIEV4Y2VwdGlvbk9yPHZvaWQ+IHN3YXBDYWNoZSgp
OwogICAgIHZvaWQgYWJvcnQoKTsKIAotICAgIHVzaW5nIFJlZkNvdW50ZWQ8RE9NQXBwbGljYXRp
b25DYWNoZT46OnJlZjsKLSAgICB1c2luZyBSZWZDb3VudGVkPERPTUFwcGxpY2F0aW9uQ2FjaGU+
OjpkZXJlZjsKKyAgICB1c2luZyBSZWZDb3VudGVkOjpyZWY7CisgICAgdXNpbmcgUmVmQ291bnRl
ZDo6ZGVyZWY7CiAKLSAgICBFdmVudFRhcmdldEludGVyZmFjZSBldmVudFRhcmdldEludGVyZmFj
ZSgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIERPTUFwcGxpY2F0aW9uQ2FjaGVFdmVudFRhcmdl
dEludGVyZmFjZVR5cGU7IH0KLSAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVj
dXRpb25Db250ZXh0KCkgY29uc3Qgb3ZlcnJpZGU7Citwcml2YXRlOgorICAgIGV4cGxpY2l0IERP
TUFwcGxpY2F0aW9uQ2FjaGUoRnJhbWUmKTsKIAotICAgIHN0YXRpYyBjb25zdCBBdG9taWNTdHJp
bmcmIHRvRXZlbnRUeXBlKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFdmVudElEIGlkKTsKKyAgICB2
b2lkIHJlZkV2ZW50VGFyZ2V0KCkgZmluYWwgeyByZWYoKTsgfQorICAgIHZvaWQgZGVyZWZFdmVu
dFRhcmdldCgpIGZpbmFsIHsgZGVyZWYoKTsgfQogCi1wcml2YXRlOgotICAgIGV4cGxpY2l0IERP
TUFwcGxpY2F0aW9uQ2FjaGUoRnJhbWUqKTsKKyAgICBFdmVudFRhcmdldEludGVyZmFjZSBldmVu
dFRhcmdldEludGVyZmFjZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIERPTUFwcGxpY2F0aW9uQ2Fj
aGVFdmVudFRhcmdldEludGVyZmFjZVR5cGU7IH0KKyAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0
KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29uc3QgZmluYWw7CiAKLSAgICB2b2lkIHJlZkV2
ZW50VGFyZ2V0KCkgb3ZlcnJpZGUgeyByZWYoKTsgfQotICAgIHZvaWQgZGVyZWZFdmVudFRhcmdl
dCgpIG92ZXJyaWRlIHsgZGVyZWYoKTsgfQorICAgIHZvaWQgZGlzY29ubmVjdEZyYW1lRm9yRG9j
dW1lbnRTdXNwZW5zaW9uKCkgZmluYWw7CisgICAgdm9pZCByZWNvbm5lY3RGcmFtZUZyb21Eb2N1
bWVudFN1c3BlbnNpb24oRnJhbWUqKSBmaW5hbDsKKyAgICB2b2lkIHdpbGxEZXN0cm95R2xvYmFs
T2JqZWN0SW5GcmFtZSgpIGZpbmFsOwogCiAgICAgQXBwbGljYXRpb25DYWNoZUhvc3QqIGFwcGxp
Y2F0aW9uQ2FjaGVIb3N0KCkgY29uc3Q7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2FwcGNhY2hlL01hbmlmZXN0UGFyc2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9hcHBjYWNoZS9NYW5pZmVzdFBhcnNlci5jcHAKaW5kZXggNjAxMTQxZDZmZjY2NDY1NTQ2Yjgx
YzI0YTBmYThiOWI5MWRjNGM5NS4uNWMxNTEzNTlkZTk4M2E4MWE3NTYwNTNiYmVjZGNmYjg5YjQ1
ODI2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL01hbmlmZXN0
UGFyc2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvTWFuaWZlc3RQ
YXJzZXIuY3BwCkBAIC0xMTksOCArMTE5LDcgQEAgYm9vbCBwYXJzZU1hbmlmZXN0KGNvbnN0IFVS
TCYgbWFuaWZlc3RVUkwsIGNvbnN0IGNoYXIqIGRhdGEsIGludCBsZW5ndGgsIE1hbmlmZXMKICAg
ICAgICAgICAgIGlmICghdXJsLmlzVmFsaWQoKSkKICAgICAgICAgICAgICAgICBjb250aW51ZTsK
IAotICAgICAgICAgICAgaWYgKHVybC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSkKLSAgICAgICAg
ICAgICAgICB1cmwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CisgICAgICAgICAgICB1cmwu
cmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CiAgICAgICAgICAgICAKICAgICAgICAgICAgIGlm
ICghZXF1YWxJZ25vcmluZ0FTQ0lJQ2FzZSh1cmwucHJvdG9jb2woKSwgbWFuaWZlc3RVUkwucHJv
dG9jb2woKSkpCiAgICAgICAgICAgICAgICAgY29udGludWU7CkBAIC0xNTAsOCArMTQ5LDcgQEAg
Ym9vbCBwYXJzZU1hbmlmZXN0KGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwsIGNvbnN0IGNoYXIqIGRh
dGEsIGludCBsZW5ndGgsIE1hbmlmZXMKICAgICAgICAgICAgIFVSTCBuYW1lc3BhY2VVUkwobWFu
aWZlc3RVUkwsIGxpbmUuc3Vic3RyaW5nKDAsIHAgLSB1cGNvbnZlcnRlZExpbmVDaGFyYWN0ZXJz
KSk7CiAgICAgICAgICAgICBpZiAoIW5hbWVzcGFjZVVSTC5pc1ZhbGlkKCkpCiAgICAgICAgICAg
ICAgICAgY29udGludWU7Ci0gICAgICAgICAgICBpZiAobmFtZXNwYWNlVVJMLmhhc0ZyYWdtZW50
SWRlbnRpZmllcigpKQotICAgICAgICAgICAgICAgIG5hbWVzcGFjZVVSTC5yZW1vdmVGcmFnbWVu
dElkZW50aWZpZXIoKTsKKyAgICAgICAgICAgIG5hbWVzcGFjZVVSTC5yZW1vdmVGcmFnbWVudElk
ZW50aWZpZXIoKTsKIAogICAgICAgICAgICAgaWYgKCFwcm90b2NvbEhvc3RBbmRQb3J0QXJlRXF1
YWwobWFuaWZlc3RVUkwsIG5hbWVzcGFjZVVSTCkpCiAgICAgICAgICAgICAgICAgY29udGludWU7
CkBAIC0xNjgsOCArMTY2LDcgQEAgYm9vbCBwYXJzZU1hbmlmZXN0KGNvbnN0IFVSTCYgbWFuaWZl
c3RVUkwsIGNvbnN0IGNoYXIqIGRhdGEsIGludCBsZW5ndGgsIE1hbmlmZXMKICAgICAgICAgICAg
IFVSTCBmYWxsYmFja1VSTChtYW5pZmVzdFVSTCwgU3RyaW5nKGZhbGxiYWNrU3RhcnQsIHAgLSBm
YWxsYmFja1N0YXJ0KSk7CiAgICAgICAgICAgICBpZiAoIWZhbGxiYWNrVVJMLmlzVmFsaWQoKSkK
ICAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAgIGlmIChmYWxsYmFja1VSTC5o
YXNGcmFnbWVudElkZW50aWZpZXIoKSkKLSAgICAgICAgICAgICAgICBmYWxsYmFja1VSTC5yZW1v
dmVGcmFnbWVudElkZW50aWZpZXIoKTsKKyAgICAgICAgICAgIGZhbGxiYWNrVVJMLnJlbW92ZUZy
YWdtZW50SWRlbnRpZmllcigpOwogCiAgICAgICAgICAgICBpZiAoIXByb3RvY29sSG9zdEFuZFBv
cnRBcmVFcXVhbChtYW5pZmVzdFVSTCwgZmFsbGJhY2tVUkwpKQogICAgICAgICAgICAgICAgIGNv
bnRpbnVlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL01hbmlm
ZXN0UGFyc2VyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvTWFuaWZlc3RQYXJz
ZXIuaAppbmRleCA2NjEyYzAwZjc5NTE3ZDg2ZGFjZTQzOTcxYjM1ZjdiMGExNmZhNjc1Li5iMjgy
NDllYmU0N2Y1ZDY2ZDJlMjE0NjM5NzMxMDZmMTBjYzJiZjU2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvTWFuaWZlc3RQYXJzZXIuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvYXBwY2FjaGUvTWFuaWZlc3RQYXJzZXIuaApAQCAtMjYsMTggKzI2LDE5IEBA
CiAjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgIkFwcGxpY2F0aW9uQ2FjaGUuaCIKKyNpbmNsdWRl
IDx3dGYvSGFzaFNldC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLSAgICBjbGFzcyBVUkw7
CitjbGFzcyBVUkw7CiAKLSAgICBzdHJ1Y3QgTWFuaWZlc3QgewotICAgICAgICBWZWN0b3I8VVJM
PiBvbmxpbmVXaGl0ZWxpc3RlZFVSTHM7Ci0gICAgICAgIEhhc2hTZXQ8U3RyaW5nPiBleHBsaWNp
dFVSTHM7Ci0gICAgICAgIEZhbGxiYWNrVVJMVmVjdG9yIGZhbGxiYWNrVVJMczsKLSAgICAgICAg
Ym9vbCBhbGxvd0FsbE5ldHdvcmtSZXF1ZXN0czsgLy8gV2lsZGNhcmQgZm91bmQgaW4gTkVUV09S
SyBzZWN0aW9uLgotICAgIH07CitzdHJ1Y3QgTWFuaWZlc3QgeworICAgIFZlY3RvcjxVUkw+IG9u
bGluZVdoaXRlbGlzdGVkVVJMczsKKyAgICBIYXNoU2V0PFN0cmluZz4gZXhwbGljaXRVUkxzOwor
ICAgIEZhbGxiYWNrVVJMVmVjdG9yIGZhbGxiYWNrVVJMczsKKyAgICBib29sIGFsbG93QWxsTmV0
d29ya1JlcXVlc3RzOyAvLyBXaWxkY2FyZCBmb3VuZCBpbiBORVRXT1JLIHNlY3Rpb24uCit9Owog
Ci0gICAgYm9vbCBwYXJzZU1hbmlmZXN0KGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwsIGNvbnN0IGNo
YXIqIGRhdGEsIGludCBsZW5ndGgsIE1hbmlmZXN0Jik7Citib29sIHBhcnNlTWFuaWZlc3QoY29u
c3QgVVJMJiBtYW5pZmVzdFVSTCwgY29uc3QgY2hhciogZGF0YSwgaW50IGxlbmd0aCwgTWFuaWZl
c3QmKTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJj
aGl2ZS9BcmNoaXZlLmNwcAppbmRleCBlODlhNDk5ZGY0MDQ0NmMzMjYwYmJmZjFiMjhkZTBkOWFk
OTc3YTBlLi41ZTA1YmUyMmM3ZDRlYTdmMTIyYmE0MTE3ODY5M2YyNWVkMmUwZWRhIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmNwcApAQCAtMSw1ICsxLDUgQEAKIC8q
Ci0gKiBDb3B5cmlnaHQgKEMpIDIwMDggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0zNywxNyArMzcsMTcgQEAgQXJj
aGl2ZTo6fkFyY2hpdmUoKQogCiB2b2lkIEFyY2hpdmU6OmNsZWFyQWxsU3ViZnJhbWVBcmNoaXZl
cygpCiB7Ci0gICAgVmVjdG9yPFJlZlB0cjxBcmNoaXZlPj4gY2xlYXJlZEFyY2hpdmVzOwotICAg
IGNsZWFyQWxsU3ViZnJhbWVBcmNoaXZlc0ltcGwoJmNsZWFyZWRBcmNoaXZlcyk7CisgICAgSGFz
aFNldDxBcmNoaXZlKj4gY2xlYXJlZEFyY2hpdmVzOworICAgIGNsZWFyZWRBcmNoaXZlcy5hZGQo
dGhpcyk7CisgICAgY2xlYXJBbGxTdWJmcmFtZUFyY2hpdmVzKGNsZWFyZWRBcmNoaXZlcyk7CiB9
CiAKLXZvaWQgQXJjaGl2ZTo6Y2xlYXJBbGxTdWJmcmFtZUFyY2hpdmVzSW1wbChWZWN0b3I8UmVm
UHRyPEFyY2hpdmU+PiogY2xlYXJlZEFyY2hpdmVzKQordm9pZCBBcmNoaXZlOjpjbGVhckFsbFN1
YmZyYW1lQXJjaGl2ZXMoSGFzaFNldDxBcmNoaXZlKj4mIGNsZWFyZWRBcmNoaXZlcykKIHsKKyAg
ICBBU1NFUlQoY2xlYXJlZEFyY2hpdmVzLmNvbnRhaW5zKHRoaXMpKTsKICAgICBmb3IgKGF1dG8m
IGFyY2hpdmUgOiBtX3N1YmZyYW1lQXJjaGl2ZXMpIHsKLSAgICAgICAgaWYgKCFjbGVhcmVkQXJj
aGl2ZXMtPmNvbnRhaW5zKGFyY2hpdmUpKSB7Ci0gICAgICAgICAgICBjbGVhcmVkQXJjaGl2ZXMt
PmFwcGVuZChhcmNoaXZlKTsKLSAgICAgICAgICAgIGFyY2hpdmUtPmNsZWFyQWxsU3ViZnJhbWVB
cmNoaXZlc0ltcGwoY2xlYXJlZEFyY2hpdmVzKTsKLSAgICAgICAgfQorICAgICAgICBpZiAoY2xl
YXJlZEFyY2hpdmVzLmFkZChhcmNoaXZlLnB0cigpKSkKKyAgICAgICAgICAgIGFyY2hpdmUtPmNs
ZWFyQWxsU3ViZnJhbWVBcmNoaXZlcyhjbGVhcmVkQXJjaGl2ZXMpOwogICAgIH0KICAgICBtX3N1
YmZyYW1lQXJjaGl2ZXMuY2xlYXIoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9hcmNoaXZlL0FyY2hpdmUuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0Fy
Y2hpdmUuaAppbmRleCBmMjA2NTQ5MzIyNDIzYTdmYjI0MDBkZTU4YzlmNGExOTIyZGRhZWU3Li5m
Zjc0Y2UyODMxYWE0ZDI3MzU0MmYxMmQ5OTM3ODI0NTE2MDJlM2M3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2FyY2hpdmUvQXJjaGl2ZS5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdo
dCAoQykgMjAwOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQg
KEMpIDIwMDgtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTI5LDQxICsyOSwzOCBAQAogI3ByYWdtYSBvbmNlCiAK
ICNpbmNsdWRlICJBcmNoaXZlUmVzb3VyY2UuaCIKLQotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRy
Lmg+Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLSNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+
Ci0jaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgQXJjaGl2ZSA6IHB1YmxpYyBSZWZDb3VudGVkPEFy
Y2hpdmU+IHsKIHB1YmxpYzoKLSAgICBlbnVtIFR5cGUgewotICAgICAgV2ViQXJjaGl2ZSwKLSAg
ICAgIE1IVE1MCi0gICAgfTsKICAgICB2aXJ0dWFsIH5BcmNoaXZlKCk7Ci0gICAgdmlydHVhbCBU
eXBlIHR5cGUoKSBjb25zdCA9IDA7CisKKyAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkTG9hZEZyb21B
cmNoaXZlT25seSgpIGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkT3ZlcnJpZGVC
YXNlVVJMKCkgY29uc3QgPSAwOworICAgIHZpcnR1YWwgYm9vbCBzaG91bGRVc2VNYWluUmVzb3Vy
Y2VFbmNvZGluZygpIGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkVXNlTWFpblJl
c291cmNlVVJMKCkgY29uc3QgPSAwOworCiAgICAgQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3Vy
Y2UoKSB7IHJldHVybiBtX21haW5SZXNvdXJjZS5nZXQoKTsgfQotICAgIGNvbnN0IFZlY3RvcjxS
ZWZQdHI8QXJjaGl2ZVJlc291cmNlPj4mIHN1YnJlc291cmNlcygpIGNvbnN0IHsgcmV0dXJuIG1f
c3VicmVzb3VyY2VzOyB9Ci0gICAgY29uc3QgVmVjdG9yPFJlZlB0cjxBcmNoaXZlPj4mIHN1YmZy
YW1lQXJjaGl2ZXMoKSBjb25zdCB7IHJldHVybiBtX3N1YmZyYW1lQXJjaGl2ZXM7IH0KKyAgICBj
b25zdCBWZWN0b3I8UmVmPEFyY2hpdmVSZXNvdXJjZT4+JiBzdWJyZXNvdXJjZXMoKSBjb25zdCB7
IHJldHVybiBtX3N1YnJlc291cmNlczsgfQorICAgIGNvbnN0IFZlY3RvcjxSZWY8QXJjaGl2ZT4+
JiBzdWJmcmFtZUFyY2hpdmVzKCkgY29uc3QgeyByZXR1cm4gbV9zdWJmcmFtZUFyY2hpdmVzOyB9
CiAKIHByb3RlY3RlZDoKICAgICAvLyBUaGVzZSBtZXRob2RzIGFyZSBtZWFudCBmb3Igc3ViY2xh
c3NlcyBmb3IgZGlmZmVyZW50IGFyY2hpdmUgdHlwZXMgdG8gYWRkIHJlc291cmNlcyBpbiB0byB0
aGUgYXJjaGl2ZSwKICAgICAvLyBhbmQgc2hvdWxkIG5vdCBiZSBleHBvc2VkIGFzIGFyY2hpdmVz
IHNob3VsZCBiZSBpbW11dGFibGUgdG8gY2xpZW50cwotICAgIHZvaWQgc2V0TWFpblJlc291cmNl
KFBhc3NSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBtYWluUmVzb3VyY2UpIHsgbV9tYWluUmVzb3Vy
Y2UgPSBtYWluUmVzb3VyY2U7IH0KLSAgICB2b2lkIGFkZFN1YnJlc291cmNlKFBhc3NSZWZQdHI8
QXJjaGl2ZVJlc291cmNlPiBzdWJSZXNvdXJjZSkgeyBtX3N1YnJlc291cmNlcy5hcHBlbmQoc3Vi
UmVzb3VyY2UpOyB9Ci0gICAgdm9pZCBhZGRTdWJmcmFtZUFyY2hpdmUoUGFzc1JlZlB0cjxBcmNo
aXZlPiBzdWJmcmFtZUFyY2hpdmUpIHsgbV9zdWJmcmFtZUFyY2hpdmVzLmFwcGVuZChzdWJmcmFt
ZUFyY2hpdmUpOyB9CisgICAgdm9pZCBzZXRNYWluUmVzb3VyY2UoUmVmPEFyY2hpdmVSZXNvdXJj
ZT4mJiBtYWluUmVzb3VyY2UpIHsgbV9tYWluUmVzb3VyY2UgPSBXVEZNb3ZlKG1haW5SZXNvdXJj
ZSk7IH0KKyAgICB2b2lkIGFkZFN1YnJlc291cmNlKFJlZjxBcmNoaXZlUmVzb3VyY2U+JiYgcmVz
b3VyY2UpIHsgbV9zdWJyZXNvdXJjZXMuYXBwZW5kKFdURk1vdmUocmVzb3VyY2UpKTsgfQorICAg
IHZvaWQgYWRkU3ViZnJhbWVBcmNoaXZlKFJlZjxBcmNoaXZlPiYmIHN1YmZyYW1lQXJjaGl2ZSkg
eyBtX3N1YmZyYW1lQXJjaGl2ZXMuYXBwZW5kKFdURk1vdmUoc3ViZnJhbWVBcmNoaXZlKSk7IH0K
IAogICAgIHZvaWQgY2xlYXJBbGxTdWJmcmFtZUFyY2hpdmVzKCk7CiAKIHByaXZhdGU6Ci0gICAg
dm9pZCBjbGVhckFsbFN1YmZyYW1lQXJjaGl2ZXNJbXBsKFZlY3RvcjxSZWZQdHI8QXJjaGl2ZT4+
KiBjbGVhcmVkQXJjaGl2ZXMpOworICAgIHZvaWQgY2xlYXJBbGxTdWJmcmFtZUFyY2hpdmVzKEhh
c2hTZXQ8QXJjaGl2ZSo+Jik7CiAKICAgICBSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBtX21haW5S
ZXNvdXJjZTsKLSAgICBWZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+IG1fc3VicmVzb3Vy
Y2VzOwotICAgIFZlY3RvcjxSZWZQdHI8QXJjaGl2ZT4+IG1fc3ViZnJhbWVBcmNoaXZlczsKKyAg
ICBWZWN0b3I8UmVmPEFyY2hpdmVSZXNvdXJjZT4+IG1fc3VicmVzb3VyY2VzOworICAgIFZlY3Rv
cjxSZWY8QXJjaGl2ZT4+IG1fc3ViZnJhbWVBcmNoaXZlczsKIH07CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hp
dmVGYWN0b3J5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmVGYWN0
b3J5LmNwcAppbmRleCA5MGI2Nzk5NTE1NmRiMDhlZTRiZTQ3NTQ4NzVhZGU1Y2ZhMzYyZDljLi40
MTdhYzQ3YTczNmNlNjViMjIzM2MxZmNiNTYyZGY3MTZlYjZhYmIyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlRmFjdG9yeS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZUZhY3RvcnkuY3BwCkBAIC00OSwzMSArNDks
MzMgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogdHlwZWRlZiBSZWZQdHI8QXJjaGl2ZT4gUmF3RGF0
YUNyZWF0aW9uRnVuY3Rpb24oY29uc3QgVVJMJiwgU2hhcmVkQnVmZmVyJik7CiB0eXBlZGVmIEhh
c2hNYXA8U3RyaW5nLCBSYXdEYXRhQ3JlYXRpb25GdW5jdGlvbiosIEFTQ0lJQ2FzZUluc2Vuc2l0
aXZlSGFzaD4gQXJjaGl2ZU1JTUVUeXBlc01hcDsKIAotLy8gVGhlIGNyZWF0ZSBmdW5jdGlvbnMg
aW4gdGhlIGFyY2hpdmUgY2xhc3NlcyByZXR1cm4gUGFzc1JlZlB0ciB0byBjb25jcmV0ZSBzdWJj
bGFzc2VzCisvLyBUaGUgY3JlYXRlIGZ1bmN0aW9ucyBpbiB0aGUgYXJjaGl2ZSBjbGFzc2VzIHJl
dHVybiBSZWZQdHIgdG8gY29uY3JldGUgc3ViY2xhc3NlcwogLy8gb2YgQXJjaGl2ZS4gVGhpcyBh
ZGFwdG9yIG1ha2VzIHRoZSBmdW5jdGlvbnMgaGF2ZSBhIHVuaWZvcm0gcmV0dXJuIHR5cGUuCi10
ZW1wbGF0ZSA8dHlwZW5hbWUgQXJjaGl2ZUNsYXNzPiBzdGF0aWMgUmVmUHRyPEFyY2hpdmU+IGFy
Y2hpdmVGYWN0b3J5Q3JlYXRlKGNvbnN0IFVSTCYgdXJsLCBTaGFyZWRCdWZmZXImIGJ1ZmZlcikK
K3RlbXBsYXRlPHR5cGVuYW1lIEFyY2hpdmVDbGFzcz4gc3RhdGljIFJlZlB0cjxBcmNoaXZlPiBh
cmNoaXZlRmFjdG9yeUNyZWF0ZShjb25zdCBVUkwmIHVybCwgU2hhcmVkQnVmZmVyJiBidWZmZXIp
CiB7CiAgICAgcmV0dXJuIEFyY2hpdmVDbGFzczo6Y3JlYXRlKHVybCwgYnVmZmVyKTsKIH0KIAot
c3RhdGljIEFyY2hpdmVNSU1FVHlwZXNNYXAmIGFyY2hpdmVNSU1FVHlwZXMoKQorc3RhdGljIEFy
Y2hpdmVNSU1FVHlwZXNNYXAgY3JlYXRlQXJjaGl2ZU1JTUVUeXBlc01hcCgpCiB7Ci0gICAgc3Rh
dGljIE5ldmVyRGVzdHJveWVkPEFyY2hpdmVNSU1FVHlwZXNNYXA+IG1pbWVUeXBlczsKLSAgICBz
dGF0aWMgYm9vbCBpbml0aWFsaXplZCA9IGZhbHNlOwotCi0gICAgaWYgKGluaXRpYWxpemVkKQot
ICAgICAgICByZXR1cm4gbWltZVR5cGVzOworICAgIEFyY2hpdmVNSU1FVHlwZXNNYXAgbWFwOwog
CiAjaWYgRU5BQkxFKFdFQl9BUkNISVZFKSAmJiBVU0UoQ0YpCi0gICAgbWltZVR5cGVzLmdldCgp
LnNldCgiYXBwbGljYXRpb24veC13ZWJhcmNoaXZlIiwgYXJjaGl2ZUZhY3RvcnlDcmVhdGU8TGVn
YWN5V2ViQXJjaGl2ZT4pOworICAgIG1hcC5hZGQoQVNDSUlMaXRlcmFsIHsgImFwcGxpY2F0aW9u
L3gtd2ViYXJjaGl2ZSIgfSwgYXJjaGl2ZUZhY3RvcnlDcmVhdGU8TGVnYWN5V2ViQXJjaGl2ZT4p
OwogI2VuZGlmCisKICNpZiBFTkFCTEUoTUhUTUwpCi0gICAgbWltZVR5cGVzLmdldCgpLnNldCgi
bXVsdGlwYXJ0L3JlbGF0ZWQiLCBhcmNoaXZlRmFjdG9yeUNyZWF0ZTxNSFRNTEFyY2hpdmU+KTsK
LSAgICBtaW1lVHlwZXMuZ2V0KCkuc2V0KCJhcHBsaWNhdGlvbi94LW1pbWVhcmNoaXZlIiwgYXJj
aGl2ZUZhY3RvcnlDcmVhdGU8TUhUTUxBcmNoaXZlPik7CisgICAgbWFwLmFkZChBU0NJSUxpdGVy
YWwgeyAibXVsdGlwYXJ0L3JlbGF0ZWQiIH0sIGFyY2hpdmVGYWN0b3J5Q3JlYXRlPE1IVE1MQXJj
aGl2ZT4pOworICAgIG1hcC5hZGQoQVNDSUlMaXRlcmFsIHsgImFwcGxpY2F0aW9uL3gtbWltZWFy
Y2hpdmUiIH0sIGFyY2hpdmVGYWN0b3J5Q3JlYXRlPE1IVE1MQXJjaGl2ZT4pOwogI2VuZGlmCiAK
LSAgICBpbml0aWFsaXplZCA9IHRydWU7Ci0gICAgcmV0dXJuIG1pbWVUeXBlczsKKyAgICByZXR1
cm4gbWFwOworfQorCitzdGF0aWMgQXJjaGl2ZU1JTUVUeXBlc01hcCYgYXJjaGl2ZU1JTUVUeXBl
cygpCit7CisgICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPEFyY2hpdmVNSU1FVHlwZXNNYXA+IG1h
cCA9IGNyZWF0ZUFyY2hpdmVNSU1FVHlwZXNNYXAoKTsKKyAgICByZXR1cm4gbWFwOwogfQogCiBi
b29sIEFyY2hpdmVGYWN0b3J5Ojppc0FyY2hpdmVNaW1lVHlwZShjb25zdCBTdHJpbmcmIG1pbWVU
eXBlKQpAQCAtODMsMTAgKzg1LDE0IEBAIGJvb2wgQXJjaGl2ZUZhY3Rvcnk6OmlzQXJjaGl2ZU1p
bWVUeXBlKGNvbnN0IFN0cmluZyYgbWltZVR5cGUpCiAKIFJlZlB0cjxBcmNoaXZlPiBBcmNoaXZl
RmFjdG9yeTo6Y3JlYXRlKGNvbnN0IFVSTCYgdXJsLCBTaGFyZWRCdWZmZXIqIGRhdGEsIGNvbnN0
IFN0cmluZyYgbWltZVR5cGUpCiB7Ci0gICAgUmF3RGF0YUNyZWF0aW9uRnVuY3Rpb24qIGZ1bmN0
aW9uID0gbWltZVR5cGUuaXNFbXB0eSgpID8gMCA6IGFyY2hpdmVNSU1FVHlwZXMoKS5nZXQobWlt
ZVR5cGUpOwogICAgIGlmICghZGF0YSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgcmV0
dXJuIGZ1bmN0aW9uID8gZnVuY3Rpb24odXJsLCAqZGF0YSkgOiBSZWZQdHI8QXJjaGl2ZT4obnVs
bHB0cik7CisgICAgaWYgKG1pbWVUeXBlLmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIG51bGxw
dHI7CisgICAgYXV0byogZnVuY3Rpb24gPSBhcmNoaXZlTUlNRVR5cGVzKCkuZ2V0KG1pbWVUeXBl
KTsKKyAgICBpZiAoIWZ1bmN0aW9uKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICByZXR1
cm4gZnVuY3Rpb24odXJsLCAqZGF0YSk7CiB9CiAKIHZvaWQgQXJjaGl2ZUZhY3Rvcnk6OnJlZ2lz
dGVyS25vd25BcmNoaXZlTUlNRVR5cGVzKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9hcmNoaXZlL0FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24uY3BwIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5jcHAKaW5kZXggOThm
NmMxZTJmYTFkNGE1MDkxMzAwZDU4NzgwNDQyMTFkOGY3YjIzYi4uYTM3MDVlYzc3YWQyNjMxZTU5
NjhkODVhY2U5N2RmMGZkMTU3YzFlYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5jcHAKQEAgLTEsNSAr
MSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOC0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMjksMzEgKzI5
LDIzIEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiQXJjaGl2ZVJlc291cmNlQ29s
bGVjdGlvbi5oIgogCi1uYW1lc3BhY2UgV2ViQ29yZSB7CisjaW5jbHVkZSAiQXJjaGl2ZS5oIgog
Ci1BcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uOjpBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uKCkK
LXsKLX0KK25hbWVzcGFjZSBXZWJDb3JlIHsKIAotdm9pZCBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0
aW9uOjphZGRBbGxSZXNvdXJjZXMoQXJjaGl2ZSogYXJjaGl2ZSkKK3ZvaWQgQXJjaGl2ZVJlc291
cmNlQ29sbGVjdGlvbjo6YWRkQWxsUmVzb3VyY2VzKEFyY2hpdmUmIGFyY2hpdmUpCiB7Ci0gICAg
QVNTRVJUKGFyY2hpdmUpOwotICAgIGlmICghYXJjaGl2ZSkKLSAgICAgICAgcmV0dXJuOworICAg
IGZvciAoYXV0byYgc3VicmVzb3VyY2UgOiBhcmNoaXZlLnN1YnJlc291cmNlcygpKQorICAgICAg
ICBtX3N1YnJlc291cmNlcy5zZXQoc3VicmVzb3VyY2UtPnVybCgpLCBzdWJyZXNvdXJjZS5wdHIo
KSk7CiAKLSAgICBmb3IgKGF1dG8mIHN1YnJlc291cmNlIDogYXJjaGl2ZS0+c3VicmVzb3VyY2Vz
KCkpCi0gICAgICAgIG1fc3VicmVzb3VyY2VzLnNldChzdWJyZXNvdXJjZS0+dXJsKCksIHN1YnJl
c291cmNlLmdldCgpKTsKLQotICAgIGZvciAoYXV0byYgc3ViZnJhbWVBcmNoaXZlIDogYXJjaGl2
ZS0+c3ViZnJhbWVBcmNoaXZlcygpKSB7CisgICAgZm9yIChhdXRvJiBzdWJmcmFtZUFyY2hpdmUg
OiBhcmNoaXZlLnN1YmZyYW1lQXJjaGl2ZXMoKSkgewogICAgICAgICBBU1NFUlQoc3ViZnJhbWVB
cmNoaXZlLT5tYWluUmVzb3VyY2UoKSk7Ci0KLSAgICAgICAgY29uc3QgU3RyaW5nJiBmcmFtZU5h
bWUgPSBzdWJmcmFtZUFyY2hpdmUtPm1haW5SZXNvdXJjZSgpLT5mcmFtZU5hbWUoKTsKLSAgICAg
ICAgaWYgKCFmcmFtZU5hbWUuaXNOdWxsKCkpCi0gICAgICAgICAgICBtX3N1YmZyYW1lcy5zZXQo
ZnJhbWVOYW1lLCBzdWJmcmFtZUFyY2hpdmUuZ2V0KCkpOwotICAgICAgICBlbHNlIHsKLSAgICAg
ICAgICAgIC8vIEluIHRoZSBNSFRNTCBjYXNlLCBmcmFtZXMgZG9uJ3QgaGF2ZSBhIG5hbWUgc28g
d2UgdXNlIHRoZSBVUkwgaW5zdGVhZC4KLSAgICAgICAgICAgIG1fc3ViZnJhbWVzLnNldChzdWJm
cmFtZUFyY2hpdmUtPm1haW5SZXNvdXJjZSgpLT51cmwoKS5zdHJpbmcoKSwgc3ViZnJhbWVBcmNo
aXZlLmdldCgpKTsKKyAgICAgICAgYXV0byBmcmFtZU5hbWUgPSBzdWJmcmFtZUFyY2hpdmUtPm1h
aW5SZXNvdXJjZSgpLT5mcmFtZU5hbWUoKTsKKyAgICAgICAgaWYgKGZyYW1lTmFtZS5pc051bGwo
KSkgeworICAgICAgICAgICAgLy8gSW4gdGhlIE1IVE1MIGNhc2UsIGZyYW1lcyBkb24ndCBoYXZl
IGEgbmFtZSwgc28gd2UgdXNlIHRoZSBVUkwgaW5zdGVhZC4KKyAgICAgICAgICAgIGZyYW1lTmFt
ZSA9IHN1YmZyYW1lQXJjaGl2ZS0+bWFpblJlc291cmNlKCktPnVybCgpLnN0cmluZygpOwogICAg
ICAgICB9CisgICAgICAgIG1fc3ViZnJhbWVzLnNldChmcmFtZU5hbWUsIHN1YmZyYW1lQXJjaGl2
ZS5wdHIoKSk7CiAgICAgfQogfQogCkBAIC02MSwyNSArNTMsMTkgQEAgdm9pZCBBcmNoaXZlUmVz
b3VyY2VDb2xsZWN0aW9uOjphZGRBbGxSZXNvdXJjZXMoQXJjaGl2ZSogYXJjaGl2ZSkKIC8vIENh
biB3ZSBjaGFuZ2UgdGhlIGRlc2lnbiBpbiBhIG1hbm5lciB0aGF0IHdpbGwgbGV0IHVzIGRlcHJl
Y2F0ZSB0aGF0IEFQSSB3aXRob3V0IHJlZHVjaW5nIGZ1bmN0aW9uYWxpdHkgb2YgdGhvc2UgYXBw
cz8KIHZvaWQgQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbjo6YWRkUmVzb3VyY2UoUmVmPEFyY2hp
dmVSZXNvdXJjZT4mJiByZXNvdXJjZSkKIHsKLSAgICBjb25zdCBVUkwmIHVybCA9IHJlc291cmNl
LT51cmwoKTsKKyAgICBhdXRvJiB1cmwgPSByZXNvdXJjZS0+dXJsKCk7CiAgICAgbV9zdWJyZXNv
dXJjZXMuc2V0KHVybCwgV1RGTW92ZShyZXNvdXJjZSkpOwogfQogCiBBcmNoaXZlUmVzb3VyY2Uq
IEFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb246OmFyY2hpdmVSZXNvdXJjZUZvclVSTChjb25zdCBV
UkwmIHVybCkKIHsKLSAgICBBcmNoaXZlUmVzb3VyY2UqIHJlc291cmNlID0gbV9zdWJyZXNvdXJj
ZXMuZ2V0KHVybCk7Ci0gICAgaWYgKCFyZXNvdXJjZSkKLSAgICAgICAgcmV0dXJuIG51bGxwdHI7
Ci0gICAgICAgIAotICAgIHJldHVybiByZXNvdXJjZTsKKyAgICByZXR1cm4gbV9zdWJyZXNvdXJj
ZXMuZ2V0KHVybCk7CiB9CiAKLVBhc3NSZWZQdHI8QXJjaGl2ZT4gQXJjaGl2ZVJlc291cmNlQ29s
bGVjdGlvbjo6cG9wU3ViZnJhbWVBcmNoaXZlKGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBjb25z
dCBVUkwmIHVybCkKK1JlZlB0cjxBcmNoaXZlPiBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uOjpw
b3BTdWJmcmFtZUFyY2hpdmUoY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IFVSTCYgdXJs
KQogewotICAgIGF1dG8gYXJjaGl2ZSA9IG1fc3ViZnJhbWVzLnRha2UoZnJhbWVOYW1lKTsKLSAg
ICBpZiAoYXJjaGl2ZSkKLSAgICAgICAgcmV0dXJuIFdURk1vdmUoYXJjaGl2ZSk7Ci0KKyAgICBp
ZiAoYXV0byBhcmNoaXZlID0gbV9zdWJmcmFtZXMudGFrZShmcmFtZU5hbWUpKQorICAgICAgICBy
ZXR1cm4gYXJjaGl2ZTsKICAgICByZXR1cm4gbV9zdWJmcmFtZXMudGFrZSh1cmwuc3RyaW5nKCkp
OwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZl
UmVzb3VyY2VDb2xsZWN0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNo
aXZlUmVzb3VyY2VDb2xsZWN0aW9uLmgKaW5kZXggNWM2MjBiNTFmMzFlNjM4MmQ3ZWYxY2MyNDhi
OTMyMGY1NmM4OTdhNy4uMzdkZjY4YjM2NmNmZjg1MzliOTVjODIzZjJlOTEyNGQzNWVhOTkzOCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291cmNl
Q29sbGVjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmVS
ZXNvdXJjZUNvbGxlY3Rpb24uaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMp
IDIwMDggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAy
MDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCkBAIC0yOCwyNCArMjgsMjkgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNp
bmNsdWRlICJBcmNoaXZlLmgiCi0jaW5jbHVkZSAiQXJjaGl2ZVJlc291cmNlLmgiCi0jaW5jbHVk
ZSAiVVJMLmgiCisjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KICNpbmNsdWRlIDx3dGYvSGFzaE1h
cC5oPgotI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgorI2luY2x1ZGUgPHd0Zi9Ob25j
b3B5YWJsZS5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0hhc2guaD4KIAogbmFtZXNwYWNl
IFdlYkNvcmUgewogCitjbGFzcyBBcmNoaXZlOworY2xhc3MgQXJjaGl2ZVJlc291cmNlOworY2xh
c3MgVVJMOworCiBjbGFzcyBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uIHsKLSAgICBXVEZfTUFL
RV9OT05DT1BZQUJMRShBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uKTsgV1RGX01BS0VfRkFTVF9B
TExPQ0FURUQ7CisgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoQXJjaGl2ZVJlc291cmNlQ29sbGVj
dGlvbik7CisgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CisKIHB1YmxpYzoKLSAgICBBcmNo
aXZlUmVzb3VyY2VDb2xsZWN0aW9uKCk7CisgICAgQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbigp
ID0gZGVmYXVsdDsKIAogICAgIHZvaWQgYWRkUmVzb3VyY2UoUmVmPEFyY2hpdmVSZXNvdXJjZT4m
Jik7Ci0gICAgdm9pZCBhZGRBbGxSZXNvdXJjZXMoQXJjaGl2ZSopOworICAgIHZvaWQgYWRkQWxs
UmVzb3VyY2VzKEFyY2hpdmUmKTsKICAgICAKICAgICBXRUJDT1JFX0VYUE9SVCBBcmNoaXZlUmVz
b3VyY2UqIGFyY2hpdmVSZXNvdXJjZUZvclVSTChjb25zdCBVUkwmKTsKLSAgICBQYXNzUmVmUHRy
PEFyY2hpdmU+IHBvcFN1YmZyYW1lQXJjaGl2ZShjb25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgY29u
c3QgVVJMJik7CisgICAgUmVmUHRyPEFyY2hpdmU+IHBvcFN1YmZyYW1lQXJjaGl2ZShjb25zdCBT
dHJpbmcmIGZyYW1lTmFtZSwgY29uc3QgVVJMJik7CiAgICAgCiBwcml2YXRlOiAgICAKICAgICBI
YXNoTWFwPFN0cmluZywgUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+IG1fc3VicmVzb3VyY2VzOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvY2YvTGVnYWN5V2ViQXJj
aGl2ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNo
aXZlLmNwcAppbmRleCBlMDQ5MDYzMDA4MWEwMTJhNDMzMzI2YmUyNDIzMTgyN2RkZmNlOTcxLi4z
OWQ4MzUyMDZjNzEwMWVlNGMxOTBjNDI4ZjRiY2VkYjUzMTMzMWFmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNoaXZlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNoaXZlLmNwcApAQCAt
ODAsMTggKzgwLDE2IEBAIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IExlZ2FjeVdlYkFyY2hp
dmU6OmNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKEFyCiAgICAgICAgIENGRGljdGlv
bmFyeVNldFZhbHVlKHByb3BlcnR5TGlzdC5nZXQoKSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNl
TUlNRVR5cGVLZXksIDApOwogICAgICAgICByZXR1cm4gcHJvcGVydHlMaXN0OwogICAgIH0KLSAg
ICAKLSAgICBSZXRhaW5QdHI8Q0ZNdXRhYmxlRGljdGlvbmFyeVJlZj4gcHJvcGVydHlMaXN0ID0g
YWRvcHRDRihDRkRpY3Rpb25hcnlDcmVhdGVNdXRhYmxlKDAsIDYsIDAsICZrQ0ZUeXBlRGljdGlv
bmFyeVZhbHVlQ2FsbEJhY2tzKSk7Ci0gICAgCisKKyAgICBhdXRvIHByb3BlcnR5TGlzdCA9IGFk
b3B0Q0YoQ0ZEaWN0aW9uYXJ5Q3JlYXRlTXV0YWJsZSgwLCA2LCAwLCAma0NGVHlwZURpY3Rpb25h
cnlWYWx1ZUNhbGxCYWNrcykpOworCiAgICAgLy8gUmVzb3VyY2UgZGF0YSBjYW4gYmUgZW1wdHks
IGJ1dCBtdXN0IGJlIHJlcHJlc2VudGVkIGJ5IGFuIGVtcHR5IENGRGF0YVJlZgotICAgIFNoYXJl
ZEJ1ZmZlciYgZGF0YSA9IHJlc291cmNlLT5kYXRhKCk7Ci0gICAgUmV0YWluUHRyPENGRGF0YVJl
Zj4gY2ZEYXRhOwotICAgIGNmRGF0YSA9IGRhdGEuY3JlYXRlQ0ZEYXRhKCk7CisgICAgYXV0byYg
ZGF0YSA9IHJlc291cmNlLT5kYXRhKCk7CisKKyAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShwcm9w
ZXJ0eUxpc3QuZ2V0KCksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZURhdGFLZXksIGRhdGEuY3Jl
YXRlQ0ZEYXRhKCkuZ2V0KCkpOwogCi0gICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJvcGVydHlM
aXN0LmdldCgpLCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VEYXRhS2V5LCBjZkRhdGEuZ2V0KCkp
OwotICAgIAogICAgIC8vIFJlc291cmNlIFVSTCBjYW5ub3QgYmUgbnVsbAotICAgIGlmIChSZXRh
aW5QdHI8Q0ZTdHJpbmdSZWY+IGNmVVJMID0gcmVzb3VyY2UtPnVybCgpLnN0cmluZygpLmNyZWF0
ZUNGU3RyaW5nKCkpCisgICAgaWYgKGF1dG8gY2ZVUkwgPSByZXNvdXJjZS0+dXJsKCkuc3RyaW5n
KCkuY3JlYXRlQ0ZTdHJpbmcoKSkKICAgICAgICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJvcGVy
dHlMaXN0LmdldCgpLCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VVUkxLZXksIGNmVVJMLmdldCgp
KTsKICAgICBlbHNlIHsKICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAt
IE5VTEwgcmVzb3VyY2UgVVJMIGlzIGludmFsaWQgLSByZXR1cm5pbmcgbnVsbCBwcm9wZXJ0eSBs
aXN0Iik7CkBAIC05OSw0MiArOTcsNDEgQEAgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gTGVn
YWN5V2ViQXJjaGl2ZTo6Y3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24oQXIKICAgICB9
CiAKICAgICAvLyBGcmFtZU5hbWUgc2hvdWxkIGJlIGxlZnQgb3V0IGlmIGVtcHR5IGZvciBzdWJy
ZXNvdXJjZXMsIGJ1dCBhbHdheXMgaW5jbHVkZWQgZm9yIG1haW4gcmVzb3VyY2VzCi0gICAgY29u
c3QgU3RyaW5nJiBmcmFtZU5hbWUocmVzb3VyY2UtPmZyYW1lTmFtZSgpKTsKKyAgICBhdXRvJiBm
cmFtZU5hbWUgPSByZXNvdXJjZS0+ZnJhbWVOYW1lKCk7CiAgICAgaWYgKCFmcmFtZU5hbWUuaXNF
bXB0eSgpIHx8IGlzTWFpblJlc291cmNlKQogICAgICAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShw
cm9wZXJ0eUxpc3QuZ2V0KCksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZUZyYW1lTmFtZUtleSwg
ZnJhbWVOYW1lLmNyZWF0ZUNGU3RyaW5nKCkuZ2V0KCkpOwotICAgIAorCiAgICAgLy8gU2V0IE1J
TUVUeXBlLCBUZXh0RW5jb2RpbmdOYW1lLCBhbmQgUmVzb3VyY2VSZXNwb25zZSBvbmx5IGlmIHRo
ZXkgYWN0dWFsbHkgZXhpc3QKLSAgICBjb25zdCBTdHJpbmcmIG1pbWVUeXBlKHJlc291cmNlLT5t
aW1lVHlwZSgpKTsKKyAgICBhdXRvJiBtaW1lVHlwZSA9IHJlc291cmNlLT5taW1lVHlwZSgpOwog
ICAgIGlmICghbWltZVR5cGUuaXNFbXB0eSgpKQogICAgICAgICBDRkRpY3Rpb25hcnlTZXRWYWx1
ZShwcm9wZXJ0eUxpc3QuZ2V0KCksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZU1JTUVUeXBlS2V5
LCBtaW1lVHlwZS5jcmVhdGVDRlN0cmluZygpLmdldCgpKTsKLSAgICAKLSAgICBjb25zdCBTdHJp
bmcmIHRleHRFbmNvZGluZyhyZXNvdXJjZS0+dGV4dEVuY29kaW5nKCkpOworCisgICAgYXV0byYg
dGV4dEVuY29kaW5nID0gcmVzb3VyY2UtPnRleHRFbmNvZGluZygpOwogICAgIGlmICghdGV4dEVu
Y29kaW5nLmlzRW1wdHkoKSkKICAgICAgICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJvcGVydHlM
aXN0LmdldCgpLCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VUZXh0RW5jb2RpbmdOYW1lS2V5LCB0
ZXh0RW5jb2RpbmcuY3JlYXRlQ0ZTdHJpbmcoKS5nZXQoKSk7CiAKICAgICAvLyBEb24ndCBpbmNs
dWRlIHRoZSByZXNvdXJjZSByZXNwb25zZSBmb3IgdGhlIG1haW4gcmVzb3VyY2UKICAgICBpZiAo
IWlzTWFpblJlc291cmNlKSB7Ci0gICAgICAgIFJldGFpblB0cjxDRkRhdGFSZWY+IHJlc291cmNl
UmVzcG9uc2VEYXRhID0gY3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24ocmVzb3VyY2Ut
PnJlc3BvbnNlKCkpOwotICAgICAgICBpZiAocmVzb3VyY2VSZXNwb25zZURhdGEpCisgICAgICAg
IGlmIChhdXRvIHJlc291cmNlUmVzcG9uc2VEYXRhID0gY3JlYXRlUHJvcGVydHlMaXN0UmVwcmVz
ZW50YXRpb24ocmVzb3VyY2UtPnJlc3BvbnNlKCkpKQogICAgICAgICAgICAgQ0ZEaWN0aW9uYXJ5
U2V0VmFsdWUocHJvcGVydHlMaXN0LmdldCgpLCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VSZXNw
b25zZUtleSwgcmVzb3VyY2VSZXNwb25zZURhdGEuZ2V0KCkpOyAgICAKICAgICB9CiAgICAgCiAg
ICAgcmV0dXJuIHByb3BlcnR5TGlzdDsKIH0KIAotUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4g
TGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24oQXJjaGl2
ZSogYXJjaGl2ZSkKK1JldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IExlZ2FjeVdlYkFyY2hpdmU6
OmNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKEFyY2hpdmUmIGFyY2hpdmUpCiB7Ci0g
ICAgUmV0YWluUHRyPENGTXV0YWJsZURpY3Rpb25hcnlSZWY+IHByb3BlcnR5TGlzdCA9IGFkb3B0
Q0YoQ0ZEaWN0aW9uYXJ5Q3JlYXRlTXV0YWJsZSgwLCAzLCAwLCAma0NGVHlwZURpY3Rpb25hcnlW
YWx1ZUNhbGxCYWNrcykpOwotICAgIAotICAgIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IG1h
aW5SZXNvdXJjZURpY3QgPSBjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihhcmNoaXZl
LT5tYWluUmVzb3VyY2UoKSwgTWFpblJlc291cmNlKTsKKyAgICBhdXRvIHByb3BlcnR5TGlzdCA9
IGFkb3B0Q0YoQ0ZEaWN0aW9uYXJ5Q3JlYXRlTXV0YWJsZSgwLCAzLCAwLCAma0NGVHlwZURpY3Rp
b25hcnlWYWx1ZUNhbGxCYWNrcykpOworCisgICAgYXV0byBtYWluUmVzb3VyY2VEaWN0ID0gY3Jl
YXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24oYXJjaGl2ZS5tYWluUmVzb3VyY2UoKSwgTWFp
blJlc291cmNlKTsKICAgICBBU1NFUlQobWFpblJlc291cmNlRGljdCk7CiAgICAgaWYgKCFtYWlu
UmVzb3VyY2VEaWN0KQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICBDRkRpY3Rpb25hcnlT
ZXRWYWx1ZShwcm9wZXJ0eUxpc3QuZ2V0KCksIExlZ2FjeVdlYkFyY2hpdmVNYWluUmVzb3VyY2VL
ZXksIG1haW5SZXNvdXJjZURpY3QuZ2V0KCkpOwogCi0gICAgUmV0YWluUHRyPENGTXV0YWJsZUFy
cmF5UmVmPiBzdWJyZXNvdXJjZXNBcnJheSA9IGFkb3B0Q0YoQ0ZBcnJheUNyZWF0ZU11dGFibGUo
MCwgYXJjaGl2ZS0+c3VicmVzb3VyY2VzKCkuc2l6ZSgpLCAma0NGVHlwZUFycmF5Q2FsbEJhY2tz
KSk7Ci0gICAgZm9yIChhdXRvJiByZXNvdXJjZSA6IGFyY2hpdmUtPnN1YnJlc291cmNlcygpKSB7
Ci0gICAgICAgIGlmIChSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBzdWJyZXNvdXJjZSA9IGNy
ZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKHJlc291cmNlLmdldCgpLCBTdWJyZXNvdXJj
ZSkpCisgICAgYXV0byBzdWJyZXNvdXJjZXNBcnJheSA9IGFkb3B0Q0YoQ0ZBcnJheUNyZWF0ZU11
dGFibGUoMCwgYXJjaGl2ZS5zdWJyZXNvdXJjZXMoKS5zaXplKCksICZrQ0ZUeXBlQXJyYXlDYWxs
QmFja3MpKTsKKyAgICBmb3IgKGF1dG8mIHJlc291cmNlIDogYXJjaGl2ZS5zdWJyZXNvdXJjZXMo
KSkgeworICAgICAgICBpZiAoYXV0byBzdWJyZXNvdXJjZSA9IGNyZWF0ZVByb3BlcnR5TGlzdFJl
cHJlc2VudGF0aW9uKHJlc291cmNlLnB0cigpLCBTdWJyZXNvdXJjZSkpCiAgICAgICAgICAgICBD
RkFycmF5QXBwZW5kVmFsdWUoc3VicmVzb3VyY2VzQXJyYXkuZ2V0KCksIHN1YnJlc291cmNlLmdl
dCgpKTsKICAgICAgICAgZWxzZQogICAgICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2Vi
QXJjaGl2ZSAtIEZhaWxlZCB0byBjcmVhdGUgcHJvcGVydHkgbGlzdCBmb3Igc3VicmVzb3VyY2Ui
KTsKQEAgLTE0Miw5ICsxMzksOSBAQCBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBMZWdhY3lX
ZWJBcmNoaXZlOjpjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihBcgogICAgIGlmIChD
RkFycmF5R2V0Q291bnQoc3VicmVzb3VyY2VzQXJyYXkuZ2V0KCkpKQogICAgICAgICBDRkRpY3Rp
b25hcnlTZXRWYWx1ZShwcm9wZXJ0eUxpc3QuZ2V0KCksIExlZ2FjeVdlYkFyY2hpdmVTdWJyZXNv
dXJjZXNLZXksIHN1YnJlc291cmNlc0FycmF5LmdldCgpKTsKIAotICAgIFJldGFpblB0cjxDRk11
dGFibGVBcnJheVJlZj4gc3ViZnJhbWVzQXJyYXkgPSBhZG9wdENGKENGQXJyYXlDcmVhdGVNdXRh
YmxlKDAsIGFyY2hpdmUtPnN1YmZyYW1lQXJjaGl2ZXMoKS5zaXplKCksICZrQ0ZUeXBlQXJyYXlD
YWxsQmFja3MpKTsKLSAgICBmb3IgKGF1dG8mIHN1YmZyYW1lIDogYXJjaGl2ZS0+c3ViZnJhbWVB
cmNoaXZlcygpKSB7Ci0gICAgICAgIGlmIChSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBzdWJm
cmFtZUFyY2hpdmUgPSBjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihzdWJmcmFtZS5n
ZXQoKSkpCisgICAgYXV0byBzdWJmcmFtZXNBcnJheSA9IGFkb3B0Q0YoQ0ZBcnJheUNyZWF0ZU11
dGFibGUoMCwgYXJjaGl2ZS5zdWJmcmFtZUFyY2hpdmVzKCkuc2l6ZSgpLCAma0NGVHlwZUFycmF5
Q2FsbEJhY2tzKSk7CisgICAgZm9yIChhdXRvJiBzdWJmcmFtZSA6IGFyY2hpdmUuc3ViZnJhbWVB
cmNoaXZlcygpKSB7CisgICAgICAgIGlmIChhdXRvIHN1YmZyYW1lQXJjaGl2ZSA9IGNyZWF0ZVBy
b3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKHN1YmZyYW1lLmdldCgpKSkKICAgICAgICAgICAgIENG
QXJyYXlBcHBlbmRWYWx1ZShzdWJmcmFtZXNBcnJheS5nZXQoKSwgc3ViZnJhbWVBcmNoaXZlLmdl
dCgpKTsKICAgICAgICAgZWxzZQogICAgICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2Vi
QXJjaGl2ZSAtIEZhaWxlZCB0byBjcmVhdGUgcHJvcGVydHkgbGlzdCBmb3Igc3ViZnJhbWUgYXJj
aGl2ZSIpOwpAQCAtMTYwLDEzICsxNTcsMTMgQEAgUmVzb3VyY2VSZXNwb25zZSBMZWdhY3lXZWJB
cmNoaXZlOjpjcmVhdGVSZXNvdXJjZVJlc3BvbnNlRnJvbVByb3BlcnR5TGlzdERhdGEoQ0YKICAg
ICBBU1NFUlQoZGF0YSk7CiAgICAgaWYgKCFkYXRhKQogICAgICAgICByZXR1cm4gUmVzb3VyY2VS
ZXNwb25zZSgpOwotICAgIAorCiAgICAgLy8gSWYgdGhlIFJlc291cmNlUmVzcG9uc2VWZXJzaW9u
IChwYXNzZWQgaW4gYXMgcmVzcG9uc2VEYXRhVHlwZSkgZXhpc3RzIGF0IGFsbCwgdGhpcyBpcyBh
ICJuZXciIHdlYiBhcmNoaXZlIHRoYXQgd2UKICAgICAvLyBjYW4gcGFyc2Ugd2VsbCBpbiBhIGNy
b3NzIHBsYXRmb3JtIG1hbm5lciBJZiBpdCBkb2Vzbid0IGV4aXN0LCB3ZSB3aWxsIGFzc3VtZSB0
aGlzIGlzIGFuICJvbGQiIHdlYiBhcmNoaXZlIHdpdGgsCiAgICAgLy8gTlNVUkxSZXNwb25zZSBv
YmplY3RzIGluIGl0IGFuZCBwYXJzZSB0aGUgUmVzb3VyY2VSZXNwb25zZSBhcyBzdWNoLgogICAg
IGlmICghcmVzcG9uc2VEYXRhVHlwZSkKICAgICAgICAgcmV0dXJuIGNyZWF0ZVJlc291cmNlUmVz
cG9uc2VGcm9tTWFjQXJjaGl2ZWREYXRhKGRhdGEpOwotICAgICAgICAKKwogICAgIC8vIEZJWE1F
OiBQYXJzZSB0aGUgIm5ldyIgZm9ybWF0IHRoYXQgdGhlIGFib3ZlIGNvbW1lbnQgcmVmZXJlbmNl
cyBoZXJlLiBUaGlzIGZvcm1hdCBkb2Vzbid0IGV4aXN0IHlldC4KICAgICByZXR1cm4gUmVzb3Vy
Y2VSZXNwb25zZSgpOwogfQpAQCAtMTc2LDQ3ICsxNzMsNDYgQEAgUmVmUHRyPEFyY2hpdmVSZXNv
dXJjZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlUmVzb3VyY2UoQ0ZEaWN0aW9uYXJ5UmVmIGRp
Y3Rpb24KICAgICBBU1NFUlQoZGljdGlvbmFyeSk7CiAgICAgaWYgKCFkaWN0aW9uYXJ5KQogICAg
ICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICAgICAgCi0gICAgQ0ZEYXRhUmVmIHJlc291cmNlRGF0
YSA9IHN0YXRpY19jYXN0PENGRGF0YVJlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFy
eSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlRGF0YUtleSkpOworCisgICAgYXV0byByZXNvdXJj
ZURhdGEgPSBzdGF0aWNfY2FzdDxDRkRhdGFSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rp
b25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZURhdGFLZXkpKTsKICAgICBpZiAocmVzb3Vy
Y2VEYXRhICYmIENGR2V0VHlwZUlEKHJlc291cmNlRGF0YSkgIT0gQ0ZEYXRhR2V0VHlwZUlEKCkp
IHsKICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIFJlc291cmNlIGRh
dGEgaXMgbm90IG9mIHR5cGUgQ0ZEYXRhLCBjYW5ub3QgY3JlYXRlIGludmFsaWQgcmVzb3VyY2Ui
KTsKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQotICAgIAotICAgIENGU3RyaW5nUmVm
IGZyYW1lTmFtZSA9IHN0YXRpY19jYXN0PENGU3RyaW5nUmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1
ZShkaWN0aW9uYXJ5LCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VGcmFtZU5hbWVLZXkpKTsKKwor
ICAgIGF1dG8gZnJhbWVOYW1lID0gc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFy
eUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZUZyYW1lTmFtZUtl
eSkpOwogICAgIGlmIChmcmFtZU5hbWUgJiYgQ0ZHZXRUeXBlSUQoZnJhbWVOYW1lKSAhPSBDRlN0
cmluZ0dldFR5cGVJRCgpKSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hp
dmUgLSBGcmFtZSBuYW1lIGlzIG5vdCBvZiB0eXBlIENGU3RyaW5nLCBjYW5ub3QgY3JlYXRlIGlu
dmFsaWQgcmVzb3VyY2UiKTsKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQotICAgIAot
ICAgIENGU3RyaW5nUmVmIG1pbWVUeXBlID0gc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KENGRGlj
dGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZU1JTUVU
eXBlS2V5KSk7CisKKyAgICBhdXRvIG1pbWVUeXBlID0gc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+
KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJj
ZU1JTUVUeXBlS2V5KSk7CiAgICAgaWYgKG1pbWVUeXBlICYmIENGR2V0VHlwZUlEKG1pbWVUeXBl
KSAhPSBDRlN0cmluZ0dldFR5cGVJRCgpKSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2Fj
eVdlYkFyY2hpdmUgLSBNSU1FIHR5cGUgaXMgbm90IG9mIHR5cGUgQ0ZTdHJpbmcsIGNhbm5vdCBj
cmVhdGUgaW52YWxpZCByZXNvdXJjZSIpOwogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICB9
Ci0gICAgCi0gICAgQ0ZTdHJpbmdSZWYgdXJsID0gc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KENG
RGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZVVS
TEtleSkpOworCisgICAgYXV0byB1cmwgPSBzdGF0aWNfY2FzdDxDRlN0cmluZ1JlZj4oQ0ZEaWN0
aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlVVJMS2V5
KSk7CiAgICAgaWYgKHVybCAmJiBDRkdldFR5cGVJRCh1cmwpICE9IENGU3RyaW5nR2V0VHlwZUlE
KCkpIHsKICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIFVSTCBpcyBu
b3Qgb2YgdHlwZSBDRlN0cmluZywgY2Fubm90IGNyZWF0ZSBpbnZhbGlkIHJlc291cmNlIik7CiAg
ICAgICAgIHJldHVybiBudWxscHRyOwogICAgIH0KLSAgICAKLSAgICBDRlN0cmluZ1JlZiB0ZXh0
RW5jb2RpbmcgPSBzdGF0aWNfY2FzdDxDRlN0cmluZ1JlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUo
ZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlVGV4dEVuY29kaW5nTmFtZUtleSkp
OworCisgICAgYXV0byB0ZXh0RW5jb2RpbmcgPSBzdGF0aWNfY2FzdDxDRlN0cmluZ1JlZj4oQ0ZE
aWN0aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlVGV4
dEVuY29kaW5nTmFtZUtleSkpOwogICAgIGlmICh0ZXh0RW5jb2RpbmcgJiYgQ0ZHZXRUeXBlSUQo
dGV4dEVuY29kaW5nKSAhPSBDRlN0cmluZ0dldFR5cGVJRCgpKSB7CiAgICAgICAgIExPRyhBcmNo
aXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBUZXh0IGVuY29kaW5nIGlzIG5vdCBvZiB0eXBlIENG
U3RyaW5nLCBjYW5ub3QgY3JlYXRlIGludmFsaWQgcmVzb3VyY2UiKTsKICAgICAgICAgcmV0dXJu
IG51bGxwdHI7CiAgICAgfQogCiAgICAgUmVzb3VyY2VSZXNwb25zZSByZXNwb25zZTsKLSAgICAK
LSAgICBDRkRhdGFSZWYgcmVzb3VyY2VSZXNwb25zZURhdGEgPSBzdGF0aWNfY2FzdDxDRkRhdGFS
ZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNv
dXJjZVJlc3BvbnNlS2V5KSk7Ci0gICAgaWYgKHJlc291cmNlUmVzcG9uc2VEYXRhKSB7CisKKyAg
ICBpZiAoYXV0byByZXNvdXJjZVJlc3BvbnNlRGF0YSA9IHN0YXRpY19jYXN0PENGRGF0YVJlZj4o
Q0ZEaWN0aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNl
UmVzcG9uc2VLZXkpKSkgewogICAgICAgICBpZiAoQ0ZHZXRUeXBlSUQocmVzb3VyY2VSZXNwb25z
ZURhdGEpICE9IENGRGF0YUdldFR5cGVJRCgpKSB7CiAgICAgICAgICAgICBMT0coQXJjaGl2ZXMs
ICJMZWdhY3lXZWJBcmNoaXZlIC0gUmVzb3VyY2UgcmVzcG9uc2UgZGF0YSBpcyBub3Qgb2YgdHlw
ZSBDRkRhdGEsIGNhbm5vdCBjcmVhdGUgaW52YWxpZCByZXNvdXJjZSIpOwogICAgICAgICAgICAg
cmV0dXJuIG51bGxwdHI7CiAgICAgICAgIH0KICAgICAgICAgCi0gICAgICAgIENGU3RyaW5nUmVm
IHJlc291cmNlUmVzcG9uc2VWZXJzaW9uID0gc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KENGRGlj
dGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZVJlc3Bv
bnNlVmVyc2lvbktleSkpOworICAgICAgICBhdXRvIHJlc291cmNlUmVzcG9uc2VWZXJzaW9uID0g
c3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnks
IExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZVJlc3BvbnNlVmVyc2lvbktleSkpOwogICAgICAgICBp
ZiAocmVzb3VyY2VSZXNwb25zZVZlcnNpb24gJiYgQ0ZHZXRUeXBlSUQocmVzb3VyY2VSZXNwb25z
ZVZlcnNpb24pICE9IENGU3RyaW5nR2V0VHlwZUlEKCkpIHsKICAgICAgICAgICAgIExPRyhBcmNo
aXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBSZXNvdXJjZSByZXNwb25zZSB2ZXJzaW9uIGlzIG5v
dCBvZiB0eXBlIENGU3RyaW5nLCBjYW5ub3QgY3JlYXRlIGludmFsaWQgcmVzb3VyY2UiKTsKICAg
ICAgICAgICAgIHJldHVybiBudWxscHRyOwpAQCAtMjI0LDcgKzIyMCw3IEBAIFJlZlB0cjxBcmNo
aXZlUmVzb3VyY2U+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVJlc291cmNlKENGRGljdGlvbmFy
eVJlZiBkaWN0aW9uCiAgICAgICAgIAogICAgICAgICByZXNwb25zZSA9IGNyZWF0ZVJlc291cmNl
UmVzcG9uc2VGcm9tUHJvcGVydHlMaXN0RGF0YShyZXNvdXJjZVJlc3BvbnNlRGF0YSwgcmVzb3Vy
Y2VSZXNwb25zZVZlcnNpb24pOwogICAgIH0KLSAgICAKKwogICAgIHJldHVybiBBcmNoaXZlUmVz
b3VyY2U6OmNyZWF0ZShTaGFyZWRCdWZmZXI6OndyYXBDRkRhdGEocmVzb3VyY2VEYXRhKSwgVVJM
KFVSTCgpLCB1cmwpLCBtaW1lVHlwZSwgdGV4dEVuY29kaW5nLCBmcmFtZU5hbWUsIHJlc3BvbnNl
KTsKIH0KIApAQCAtMjMzLDIxICsyMjksMTkgQEAgUmVmPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2Fj
eVdlYkFyY2hpdmU6OmNyZWF0ZSgpCiAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgTGVnYWN5V2Vi
QXJjaGl2ZSk7CiB9CiAKLVJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZl
OjpjcmVhdGUoUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4mJiBtYWluUmVzb3VyY2UsIFZlY3RvcjxS
ZWZQdHI8QXJjaGl2ZVJlc291cmNlPj4mJiBzdWJyZXNvdXJjZXMsIFZlY3RvcjxSZWZQdHI8TGVn
YWN5V2ViQXJjaGl2ZT4+JiYgc3ViZnJhbWVBcmNoaXZlcykKK1JlZjxMZWdhY3lXZWJBcmNoaXZl
PiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoUmVmPEFyY2hpdmVSZXNvdXJjZT4mJiBtYWluUmVz
b3VyY2UsIFZlY3RvcjxSZWY8QXJjaGl2ZVJlc291cmNlPj4mJiBzdWJyZXNvdXJjZXMsIFZlY3Rv
cjxSZWY8TGVnYWN5V2ViQXJjaGl2ZT4+JiYgc3ViZnJhbWVBcmNoaXZlcykKIHsKLSAgICBpZiAo
IW1haW5SZXNvdXJjZSkKLSAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0KICAgICBhdXRvIGFyY2hp
dmUgPSBjcmVhdGUoKTsKKwogICAgIGFyY2hpdmUtPnNldE1haW5SZXNvdXJjZShXVEZNb3ZlKG1h
aW5SZXNvdXJjZSkpOwotICAgIAorCiAgICAgZm9yIChhdXRvJiBzdWJyZXNvdXJjZSA6IHN1YnJl
c291cmNlcykKICAgICAgICAgYXJjaGl2ZS0+YWRkU3VicmVzb3VyY2UoV1RGTW92ZShzdWJyZXNv
dXJjZSkpOwogCiAgICAgZm9yIChhdXRvJiBzdWJmcmFtZUFyY2hpdmUgOiBzdWJmcmFtZUFyY2hp
dmVzKQogICAgICAgICBhcmNoaXZlLT5hZGRTdWJmcmFtZUFyY2hpdmUoV1RGTW92ZShzdWJmcmFt
ZUFyY2hpdmUpKTsKIAotICAgIHJldHVybiBXVEZNb3ZlKGFyY2hpdmUpOworICAgIHJldHVybiBh
cmNoaXZlOwogfQogCiBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6
Y3JlYXRlKFNoYXJlZEJ1ZmZlciYgZGF0YSkKQEAgLTMwNyw0OCArMzAxLDUwIEBAIGJvb2wgTGVn
YWN5V2ViQXJjaGl2ZTo6ZXh0cmFjdChDRkRpY3Rpb25hcnlSZWYgZGljdGlvbmFyeSkKICAgICAg
ICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIE1haW4gcmVzb3VyY2UgaXMgbm90
IHRoZSBleHBlY3RlZCBDRkRpY3Rpb25hcnksIGFib3J0aW5nIGludmFsaWQgV2ViQXJjaGl2ZSIp
OwogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQotICAgIAotICAgIHNldE1haW5SZXNvdXJj
ZShjcmVhdGVSZXNvdXJjZShtYWluUmVzb3VyY2VEaWN0KSk7Ci0gICAgaWYgKCFtYWluUmVzb3Vy
Y2UoKSkgeworCisgICAgYXV0byBtYWluUmVzb3VyY2UgPSBjcmVhdGVSZXNvdXJjZShtYWluUmVz
b3VyY2VEaWN0KTsKKyAgICBpZiAoIW1haW5SZXNvdXJjZSkgewogICAgICAgICBMT0coQXJjaGl2
ZXMsICJMZWdhY3lXZWJBcmNoaXZlIC0gRmFpbGVkIHRvIHBhcnNlIG1haW4gcmVzb3VyY2UgZnJv
bSBDRkRpY3Rpb25hcnkgb3IgbWFpbiByZXNvdXJjZSBkb2VzIG5vdCBleGlzdCwgYWJvcnRpbmcg
aW52YWxpZCBXZWJBcmNoaXZlIik7CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9Ci0gICAg
Ci0gICAgaWYgKG1haW5SZXNvdXJjZSgpLT5taW1lVHlwZSgpLmlzTnVsbCgpKSB7CisKKyAgICBp
ZiAobWFpblJlc291cmNlLT5taW1lVHlwZSgpLmlzTnVsbCgpKSB7CiAgICAgICAgIExPRyhBcmNo
aXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBNYWluIHJlc291cmNlIE1JTUUgdHlwZSBpcyByZXF1
aXJlZCwgYnV0IHdhcyBudWxsLiIpOwogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQotICAg
IAotICAgIENGQXJyYXlSZWYgc3VicmVzb3VyY2VBcnJheSA9IHN0YXRpY19jYXN0PENGQXJyYXlS
ZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVTdWJy
ZXNvdXJjZXNLZXkpKTsKKworICAgIHNldE1haW5SZXNvdXJjZShtYWluUmVzb3VyY2UucmVsZWFz
ZU5vbk51bGwoKSk7CisKKyAgICBhdXRvIHN1YnJlc291cmNlQXJyYXkgPSBzdGF0aWNfY2FzdDxD
RkFycmF5UmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBMZWdhY3lXZWJBcmNo
aXZlU3VicmVzb3VyY2VzS2V5KSk7CiAgICAgaWYgKHN1YnJlc291cmNlQXJyYXkgJiYgQ0ZHZXRU
eXBlSUQoc3VicmVzb3VyY2VBcnJheSkgIT0gQ0ZBcnJheUdldFR5cGVJRCgpKSB7CiAgICAgICAg
IExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBTdWJyZXNvdXJjZXMgaXMgbm90IHRo
ZSBleHBlY3RlZCBBcnJheSwgYWJvcnRpbmcgaW52YWxpZCBXZWJBcmNoaXZlIik7CiAgICAgICAg
IHJldHVybiBmYWxzZTsKICAgICB9Ci0gICAgCisKICAgICBpZiAoc3VicmVzb3VyY2VBcnJheSkg
ewotICAgICAgICBDRkluZGV4IGNvdW50ID0gQ0ZBcnJheUdldENvdW50KHN1YnJlc291cmNlQXJy
YXkpOworICAgICAgICBhdXRvIGNvdW50ID0gQ0ZBcnJheUdldENvdW50KHN1YnJlc291cmNlQXJy
YXkpOwogICAgICAgICBmb3IgKENGSW5kZXggaSA9IDA7IGkgPCBjb3VudDsgKytpKSB7Ci0gICAg
ICAgICAgICBDRkRpY3Rpb25hcnlSZWYgc3VicmVzb3VyY2VEaWN0ID0gc3RhdGljX2Nhc3Q8Q0ZE
aWN0aW9uYXJ5UmVmPihDRkFycmF5R2V0VmFsdWVBdEluZGV4KHN1YnJlc291cmNlQXJyYXksIGkp
KTsKKyAgICAgICAgICAgIGF1dG8gc3VicmVzb3VyY2VEaWN0ID0gc3RhdGljX2Nhc3Q8Q0ZEaWN0
aW9uYXJ5UmVmPihDRkFycmF5R2V0VmFsdWVBdEluZGV4KHN1YnJlc291cmNlQXJyYXksIGkpKTsK
ICAgICAgICAgICAgIGlmIChDRkdldFR5cGVJRChzdWJyZXNvdXJjZURpY3QpICE9IENGRGljdGlv
bmFyeUdldFR5cGVJRCgpKSB7CiAgICAgICAgICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5
V2ViQXJjaGl2ZSAtIFN1YnJlc291cmNlIGlzIG5vdCBleHBlY3RlZCBDRkRpY3Rpb25hcnksIGFi
b3J0aW5nIGludmFsaWQgV2ViQXJjaGl2ZSIpOwogICAgICAgICAgICAgICAgIHJldHVybiBmYWxz
ZTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIAogICAgICAgICAgICAgaWYgKGF1dG8gc3Vi
cmVzb3VyY2UgPSBjcmVhdGVSZXNvdXJjZShzdWJyZXNvdXJjZURpY3QpKQotICAgICAgICAgICAg
ICAgIGFkZFN1YnJlc291cmNlKFdURk1vdmUoc3VicmVzb3VyY2UpKTsKKyAgICAgICAgICAgICAg
ICBhZGRTdWJyZXNvdXJjZShzdWJyZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICAgICAg
fQogICAgIH0KLSAgICAKLSAgICBDRkFycmF5UmVmIHN1YmZyYW1lQXJyYXkgPSBzdGF0aWNfY2Fz
dDxDRkFycmF5UmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBMZWdhY3lXZWJB
cmNoaXZlU3ViZnJhbWVBcmNoaXZlc0tleSkpOworCisgICAgYXV0byBzdWJmcmFtZUFycmF5ID0g
c3RhdGljX2Nhc3Q8Q0ZBcnJheVJlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwg
TGVnYWN5V2ViQXJjaGl2ZVN1YmZyYW1lQXJjaGl2ZXNLZXkpKTsKICAgICBpZiAoc3ViZnJhbWVB
cnJheSAmJiBDRkdldFR5cGVJRChzdWJmcmFtZUFycmF5KSAhPSBDRkFycmF5R2V0VHlwZUlEKCkp
IHsKICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIFN1YmZyYW1lIGFy
Y2hpdmVzIGlzIG5vdCB0aGUgZXhwZWN0ZWQgQXJyYXksIGFib3J0aW5nIGludmFsaWQgV2ViQXJj
aGl2ZSIpOwogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQotICAgIAorCiAgICAgaWYgKHN1
YmZyYW1lQXJyYXkpIHsKLSAgICAgICAgQ0ZJbmRleCBjb3VudCA9IENGQXJyYXlHZXRDb3VudChz
dWJmcmFtZUFycmF5KTsKKyAgICAgICAgYXV0byBjb3VudCA9IENGQXJyYXlHZXRDb3VudChzdWJm
cmFtZUFycmF5KTsKICAgICAgICAgZm9yIChDRkluZGV4IGkgPSAwOyBpIDwgY291bnQ7ICsraSkg
ewotICAgICAgICAgICAgQ0ZEaWN0aW9uYXJ5UmVmIHN1YmZyYW1lRGljdCA9IHN0YXRpY19jYXN0
PENGRGljdGlvbmFyeVJlZj4oQ0ZBcnJheUdldFZhbHVlQXRJbmRleChzdWJmcmFtZUFycmF5LCBp
KSk7CisgICAgICAgICAgICBhdXRvIHN1YmZyYW1lRGljdCA9IHN0YXRpY19jYXN0PENGRGljdGlv
bmFyeVJlZj4oQ0ZBcnJheUdldFZhbHVlQXRJbmRleChzdWJmcmFtZUFycmF5LCBpKSk7CiAgICAg
ICAgICAgICBpZiAoQ0ZHZXRUeXBlSUQoc3ViZnJhbWVEaWN0KSAhPSBDRkRpY3Rpb25hcnlHZXRU
eXBlSUQoKSkgewogICAgICAgICAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hp
dmUgLSBTdWJmcmFtZSBhcnJheSBpcyBub3QgZXhwZWN0ZWQgQ0ZEaWN0aW9uYXJ5LCBhYm9ydGlu
ZyBpbnZhbGlkIFdlYkFyY2hpdmUiKTsKICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CkBA
IC0zNjUsMjYgKzM2MSwyMSBAQCBib29sIExlZ2FjeVdlYkFyY2hpdmU6OmV4dHJhY3QoQ0ZEaWN0
aW9uYXJ5UmVmIGRpY3Rpb25hcnkpCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLUFyY2hpdmU6OlR5
cGUgTGVnYWN5V2ViQXJjaGl2ZTo6dHlwZSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIEFyY2hpdmU6
OldlYkFyY2hpdmU7Ci19Ci0gICAgCiBSZXRhaW5QdHI8Q0ZEYXRhUmVmPiBMZWdhY3lXZWJBcmNo
aXZlOjpyYXdEYXRhUmVwcmVzZW50YXRpb24oKQogewotICAgIFJldGFpblB0cjxDRkRpY3Rpb25h
cnlSZWY+IHByb3BlcnR5TGlzdCA9IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKHRo
aXMpOworICAgIGF1dG8gcHJvcGVydHlMaXN0ID0gY3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50
YXRpb24oKnRoaXMpOwogICAgIEFTU0VSVChwcm9wZXJ0eUxpc3QpOwogICAgIGlmICghcHJvcGVy
dHlMaXN0KSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBGYWls
ZWQgdG8gY3JlYXRlIHByb3BlcnR5IGxpc3QgZm9yIGFyY2hpdmUsIHJldHVybmluZyBubyBkYXRh
Iik7CiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIH0KIAotICAgIFJldGFpblB0cjxDRldy
aXRlU3RyZWFtUmVmPiBzdHJlYW0gPSBhZG9wdENGKENGV3JpdGVTdHJlYW1DcmVhdGVXaXRoQWxs
b2NhdGVkQnVmZmVycygwLCAwKSk7CisgICAgYXV0byBzdHJlYW0gPSBhZG9wdENGKENGV3JpdGVT
dHJlYW1DcmVhdGVXaXRoQWxsb2NhdGVkQnVmZmVycygwLCAwKSk7CiAKICAgICBDRldyaXRlU3Ry
ZWFtT3BlbihzdHJlYW0uZ2V0KCkpOwogICAgIENGUHJvcGVydHlMaXN0V3JpdGUocHJvcGVydHlM
aXN0LmdldCgpLCBzdHJlYW0uZ2V0KCksIGtDRlByb3BlcnR5TGlzdEJpbmFyeUZvcm1hdF92MV8w
LCAwLCAwKTsKIAotICAgIFJldGFpblB0cjxDRkRhdGFSZWY+IHBsaXN0RGF0YSA9IGFkb3B0Q0Yo
c3RhdGljX2Nhc3Q8Q0ZEYXRhUmVmPihDRldyaXRlU3RyZWFtQ29weVByb3BlcnR5KHN0cmVhbS5n
ZXQoKSwga0NGU3RyZWFtUHJvcGVydHlEYXRhV3JpdHRlbikpKTsKKyAgICBhdXRvIHBsaXN0RGF0
YSA9IGFkb3B0Q0Yoc3RhdGljX2Nhc3Q8Q0ZEYXRhUmVmPihDRldyaXRlU3RyZWFtQ29weVByb3Bl
cnR5KHN0cmVhbS5nZXQoKSwga0NGU3RyZWFtUHJvcGVydHlEYXRhV3JpdHRlbikpKTsKICAgICBB
U1NFUlQocGxpc3REYXRhKTsKIAogICAgIENGV3JpdGVTdHJlYW1DbG9zZShzdHJlYW0uZ2V0KCkp
OwpAQCAtNDMyLDcgKzQyMyw3IEBAIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJB
cmNoaXZlOjpjcmVhdGUoTm9kZSYgbm9kZSwgc3RkOjpmdW5jdGlvbjxib29sCiAKICAgICBWZWN0
b3I8Tm9kZSo+IG5vZGVMaXN0OwogICAgIFN0cmluZyBtYXJrdXBTdHJpbmcgPSBjcmVhdGVNYXJr
dXAobm9kZSwgSW5jbHVkZU5vZGUsICZub2RlTGlzdCwgRG9Ob3RSZXNvbHZlVVJMcywgdGFnTmFt
ZXNUb0ZpbHRlci5nZXQoKSk7Ci0gICAgTm9kZTo6Tm9kZVR5cGUgbm9kZVR5cGUgPSBub2RlLm5v
ZGVUeXBlKCk7CisgICAgYXV0byBub2RlVHlwZSA9IG5vZGUubm9kZVR5cGUoKTsKICAgICBpZiAo
bm9kZVR5cGUgIT0gTm9kZTo6RE9DVU1FTlRfTk9ERSAmJiBub2RlVHlwZSAhPSBOb2RlOjpET0NV
TUVOVF9UWVBFX05PREUpCiAgICAgICAgIG1hcmt1cFN0cmluZyA9IGRvY3VtZW50VHlwZVN0cmlu
Zyhub2RlLmRvY3VtZW50KCkpICsgbWFya3VwU3RyaW5nOwogCkBAIC00NDEsMjAgKzQzMiwyMSBA
QCBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKE5vZGUm
IG5vZGUsIHN0ZDo6ZnVuY3Rpb248Ym9vbAogCiBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVn
YWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKEZyYW1lJiBmcmFtZSkKIHsKLSAgICBEb2N1bWVudExvYWRl
ciogZG9jdW1lbnRMb2FkZXIgPSBmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwotCisg
ICAgYXV0byogZG9jdW1lbnRMb2FkZXIgPSBmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigp
OwogICAgIGlmICghZG9jdW1lbnRMb2FkZXIpCiAgICAgICAgIHJldHVybiBudWxscHRyOwotICAg
ICAgICAKLSAgICBWZWN0b3I8UmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+PiBzdWJmcmFtZUFyY2hp
dmVzOwotICAgIAorCisgICAgYXV0byBtYWluUmVzb3VyY2UgPSBkb2N1bWVudExvYWRlci0+bWFp
blJlc291cmNlKCk7CisgICAgaWYgKCFtYWluUmVzb3VyY2UpCisgICAgICAgIHJldHVybiBudWxs
cHRyOworCisgICAgVmVjdG9yPFJlZjxMZWdhY3lXZWJBcmNoaXZlPj4gc3ViZnJhbWVBcmNoaXZl
czsKICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgZnJhbWUudHJlZSgpLmNoaWxkQ291bnQo
KTsgKytpKSB7Ci0gICAgICAgIGlmIChSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gY2hpbGRGcmFt
ZUFyY2hpdmUgPSBjcmVhdGUoKmZyYW1lLnRyZWUoKS5jaGlsZChpKSkpCi0gICAgICAgICAgICBz
dWJmcmFtZUFyY2hpdmVzLmFwcGVuZChXVEZNb3ZlKGNoaWxkRnJhbWVBcmNoaXZlKSk7CisgICAg
ICAgIGlmIChhdXRvIGNoaWxkRnJhbWVBcmNoaXZlID0gY3JlYXRlKCpmcmFtZS50cmVlKCkuY2hp
bGQoaSkpKQorICAgICAgICAgICAgc3ViZnJhbWVBcmNoaXZlcy5hcHBlbmQoY2hpbGRGcmFtZUFy
Y2hpdmUucmVsZWFzZU5vbk51bGwoKSk7CiAgICAgfQogCi0gICAgYXV0byBzdWJyZXNvdXJjZXMg
PSBkb2N1bWVudExvYWRlci0+c3VicmVzb3VyY2VzKCk7Ci0gICAgcmV0dXJuIGNyZWF0ZShkb2N1
bWVudExvYWRlci0+bWFpblJlc291cmNlKCksIFdURk1vdmUoc3VicmVzb3VyY2VzKSwgV1RGTW92
ZShzdWJmcmFtZUFyY2hpdmVzKSk7CisgICAgcmV0dXJuIGNyZWF0ZShtYWluUmVzb3VyY2UucmVs
ZWFzZU5vbk51bGwoKSwgZG9jdW1lbnRMb2FkZXItPnN1YnJlc291cmNlcygpLCBXVEZNb3ZlKHN1
YmZyYW1lQXJjaGl2ZXMpKTsKIH0KIAogUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdl
YkFyY2hpdmU6OmNyZWF0ZShSYW5nZSogcmFuZ2UpCkBAIC00NjIsMjIgKzQ1NCwyMCBAQCBSZWZQ
dHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFJhbmdlKiByYW5n
ZSkKICAgICBpZiAoIXJhbmdlKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICAgICAgCi0g
ICAgRG9jdW1lbnQmIGRvY3VtZW50ID0gcmFuZ2UtPnN0YXJ0Q29udGFpbmVyKCkuZG9jdW1lbnQo
KTsKLQotICAgIEZyYW1lKiBmcmFtZSA9IGRvY3VtZW50LmZyYW1lKCk7CisgICAgYXV0byYgZG9j
dW1lbnQgPSByYW5nZS0+c3RhcnRDb250YWluZXIoKS5kb2N1bWVudCgpOworICAgIGF1dG8qIGZy
YW1lID0gZG9jdW1lbnQuZnJhbWUoKTsKICAgICBpZiAoIWZyYW1lKQogICAgICAgICByZXR1cm4g
bnVsbHB0cjsKLSAgICAKLSAgICAvLyBGSVhNRTogVGhpcyBpcyBhbHdheXMgImZvciBpbnRlcmNo
YW5nZSIuIElzIHRoYXQgcmlnaHQ/IFNlZSB0aGUgcHJldmlvdXMgbWV0aG9kLgorCisgICAgLy8g
RklYTUU6IFRoaXMgaXMgYWx3YXlzICJmb3IgaW50ZXJjaGFuZ2UiLiBJcyB0aGF0IHJpZ2h0Pwog
ICAgIFZlY3RvcjxOb2RlKj4gbm9kZUxpc3Q7CiAgICAgU3RyaW5nIG1hcmt1cFN0cmluZyA9IGRv
Y3VtZW50VHlwZVN0cmluZyhkb2N1bWVudCkgKyBjcmVhdGVNYXJrdXAoKnJhbmdlLCAmbm9kZUxp
c3QsIEFubm90YXRlRm9ySW50ZXJjaGFuZ2UpOwotCiAgICAgcmV0dXJuIGNyZWF0ZShtYXJrdXBT
dHJpbmcsICpmcmFtZSwgbm9kZUxpc3QsIG51bGxwdHIpOwogfQogCiBSZWZQdHI8TGVnYWN5V2Vi
QXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKGNvbnN0IFN0cmluZyYgbWFya3VwU3Ry
aW5nLCBGcmFtZSYgZnJhbWUsIGNvbnN0IFZlY3RvcjxOb2RlKj4mIG5vZGVzLCBzdGQ6OmZ1bmN0
aW9uPGJvb2wgKEZyYW1lJik+IGZyYW1lRmlsdGVyKQogewotICAgIGNvbnN0IFJlc291cmNlUmVz
cG9uc2UmIHJlc3BvbnNlID0gZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKS0+cmVzcG9u
c2UoKTsKKyAgICBhdXRvJiByZXNwb25zZSA9IGZyYW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVy
KCktPnJlc3BvbnNlKCk7CiAgICAgVVJMIHJlc3BvbnNlVVJMID0gcmVzcG9uc2UudXJsKCk7CiAg
ICAgCiAgICAgLy8gaXQncyBwb3NzaWJsZSB0byBoYXZlIGEgcmVzcG9uc2Ugd2l0aG91dCBhIFVS
TCBoZXJlCkBAIC00ODUsNDIgKzQ3NSw0MSBAQCBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVn
YWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKGNvbnN0IFN0cmluZyYgbWFya3VwU3RyaW5nLCBGcgogICAg
IGlmIChyZXNwb25zZVVSTC5pc051bGwoKSkKICAgICAgICAgcmVzcG9uc2VVUkwgPSBVUkwoUGFy
c2VkVVJMU3RyaW5nLCBlbXB0eVN0cmluZygpKTsKIAotICAgIFJlZlB0cjxBcmNoaXZlUmVzb3Vy
Y2U+IG1haW5SZXNvdXJjZSA9IEFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKHV0ZjhCdWZmZXIobWFy
a3VwU3RyaW5nKSwgcmVzcG9uc2VVUkwsIHJlc3BvbnNlLm1pbWVUeXBlKCksICJVVEYtOCIsIGZy
YW1lLnRyZWUoKS51bmlxdWVOYW1lKCkpOworICAgIGF1dG8gbWFpblJlc291cmNlID0gQXJjaGl2
ZVJlc291cmNlOjpjcmVhdGUodXRmOEJ1ZmZlcihtYXJrdXBTdHJpbmcpLCByZXNwb25zZVVSTCwg
cmVzcG9uc2UubWltZVR5cGUoKSwgIlVURi04IiwgZnJhbWUudHJlZSgpLnVuaXF1ZU5hbWUoKSk7
CiAgICAgaWYgKCFtYWluUmVzb3VyY2UpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAg
VmVjdG9yPFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPj4gc3ViZnJhbWVBcmNoaXZlczsKLSAgICBW
ZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+IHN1YnJlc291cmNlczsKKyAgICBWZWN0b3I8
UmVmPExlZ2FjeVdlYkFyY2hpdmU+PiBzdWJmcmFtZUFyY2hpdmVzOworICAgIFZlY3RvcjxSZWY8
QXJjaGl2ZVJlc291cmNlPj4gc3VicmVzb3VyY2VzOwogICAgIEhhc2hTZXQ8VVJMPiB1bmlxdWVT
dWJyZXNvdXJjZXM7CiAKLSAgICBzaXplX3Qgbm9kZXNTaXplID0gbm9kZXMuc2l6ZSgpOyAgICAK
LSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG5vZGVzU2l6ZTsgKytpKSB7Ci0gICAgICAgIE5v
ZGUmIG5vZGUgPSAqbm9kZXNbaV07CisgICAgZm9yIChhdXRvJiBub2RlUHRyIDogbm9kZXMpIHsK
KyAgICAgICAgTm9kZSYgbm9kZSA9ICpub2RlUHRyOwogICAgICAgICBGcmFtZSogY2hpbGRGcmFt
ZTsKICAgICAgICAgaWYgKChpczxIVE1MRnJhbWVFbGVtZW50QmFzZT4obm9kZSkgfHwgaXM8SFRN
TE9iamVjdEVsZW1lbnQ+KG5vZGUpKQogICAgICAgICAgICAgJiYgKGNoaWxkRnJhbWUgPSBkb3du
Y2FzdDxIVE1MRnJhbWVPd25lckVsZW1lbnQ+KG5vZGUpLmNvbnRlbnRGcmFtZSgpKSkgewogICAg
ICAgICAgICAgaWYgKGZyYW1lRmlsdGVyICYmICFmcmFtZUZpbHRlcigqY2hpbGRGcmFtZSkpCiAg
ICAgICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgICAgICAgICAgCi0gICAgICAgICAgICBp
ZiAoUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IHN1YmZyYW1lQXJjaGl2ZSA9IGNyZWF0ZSgqY2hp
bGRGcmFtZS0+ZG9jdW1lbnQoKSwgZnJhbWVGaWx0ZXIpKQotICAgICAgICAgICAgICAgIHN1YmZy
YW1lQXJjaGl2ZXMuYXBwZW5kKFdURk1vdmUoc3ViZnJhbWVBcmNoaXZlKSk7CisgICAgICAgICAg
ICBpZiAoYXV0byBzdWJmcmFtZUFyY2hpdmUgPSBjcmVhdGUoKmNoaWxkRnJhbWUtPmRvY3VtZW50
KCksIGZyYW1lRmlsdGVyKSkKKyAgICAgICAgICAgICAgICBzdWJmcmFtZUFyY2hpdmVzLmFwcGVu
ZChzdWJmcmFtZUFyY2hpdmUucmVsZWFzZU5vbk51bGwoKSk7CiAgICAgICAgICAgICBlbHNlCiAg
ICAgICAgICAgICAgICAgTE9HX0VSUk9SKCJVbmFibGVkIHRvIGFyY2hpdmUgc3ViZnJhbWUgJXMi
LCBjaGlsZEZyYW1lLT50cmVlKCkudW5pcXVlTmFtZSgpLnN0cmluZygpLnV0ZjgoKS5kYXRhKCkp
OwogCiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBMaXN0SGFzaFNldDxVUkw+IHN1YnJl
c291cmNlVVJMczsKICAgICAgICAgICAgIG5vZGUuZ2V0U3VicmVzb3VyY2VVUkxzKHN1YnJlc291
cmNlVVJMcyk7Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIERvY3VtZW50TG9hZGVyKiBkb2N1
bWVudExvYWRlciA9IGZyYW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCk7CiAKLSAgICAgICAg
ICAgIGZvciAoY29uc3QgYXV0byYgc3VicmVzb3VyY2VVUkwgOiBzdWJyZXNvdXJjZVVSTHMpIHsK
KyAgICAgICAgICAgIEFTU0VSVChmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKTsKKyAg
ICAgICAgICAgIGF1dG8mIGRvY3VtZW50TG9hZGVyID0gKmZyYW1lLmxvYWRlcigpLmRvY3VtZW50
TG9hZGVyKCk7CisKKyAgICAgICAgICAgIGZvciAoYXV0byYgc3VicmVzb3VyY2VVUkwgOiBzdWJy
ZXNvdXJjZVVSTHMpIHsKICAgICAgICAgICAgICAgICBpZiAodW5pcXVlU3VicmVzb3VyY2VzLmNv
bnRhaW5zKHN1YnJlc291cmNlVVJMKSkKICAgICAgICAgICAgICAgICAgICAgY29udGludWU7CiAK
ICAgICAgICAgICAgICAgICB1bmlxdWVTdWJyZXNvdXJjZXMuYWRkKHN1YnJlc291cmNlVVJMKTsK
IAotICAgICAgICAgICAgICAgIGlmIChSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiByZXNvdXJjZSA9
IGRvY3VtZW50TG9hZGVyLT5zdWJyZXNvdXJjZShzdWJyZXNvdXJjZVVSTCkpIHsKLSAgICAgICAg
ICAgICAgICAgICAgc3VicmVzb3VyY2VzLmFwcGVuZChXVEZNb3ZlKHJlc291cmNlKSk7CisgICAg
ICAgICAgICAgICAgaWYgKGF1dG8gcmVzb3VyY2UgPSBkb2N1bWVudExvYWRlci5zdWJyZXNvdXJj
ZShzdWJyZXNvdXJjZVVSTCkpIHsKKyAgICAgICAgICAgICAgICAgICAgc3VicmVzb3VyY2VzLmFw
cGVuZChyZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICAgICAgICAgICAgICAgICAgY29u
dGludWU7CiAgICAgICAgICAgICAgICAgfQogCkBAIC01MjgsMTAgKzUxNyw5IEBAIFJlZlB0cjxM
ZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoY29uc3QgU3RyaW5nJiBt
YXJrdXBTdHJpbmcsIEZyCiAjaWYgRU5BQkxFKENBQ0hFX1BBUlRJVElPTklORykKICAgICAgICAg
ICAgICAgICByZXF1ZXN0LnNldERvbWFpbkZvckNhY2hlUGFydGl0aW9uKGZyYW1lLmRvY3VtZW50
KCktPnRvcE9yaWdpbigpLT5kb21haW5Gb3JDYWNoZVBhcnRpdGlvbigpKTsKICNlbmRpZgotICAg
ICAgICAgICAgICAgIENhY2hlZFJlc291cmNlKiBjYWNoZWRSZXNvdXJjZSA9IE1lbW9yeUNhY2hl
OjpzaW5nbGV0b24oKS5yZXNvdXJjZUZvclJlcXVlc3QocmVxdWVzdCwgZnJhbWUucGFnZSgpLT5z
ZXNzaW9uSUQoKSk7Ci0gICAgICAgICAgICAgICAgaWYgKGNhY2hlZFJlc291cmNlKSB7Ci0gICAg
ICAgICAgICAgICAgICAgIGlmIChSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiByZXNvdXJjZSA9IEFy
Y2hpdmVSZXNvdXJjZTo6Y3JlYXRlKGNhY2hlZFJlc291cmNlLT5yZXNvdXJjZUJ1ZmZlcigpLCBz
dWJyZXNvdXJjZVVSTCwgY2FjaGVkUmVzb3VyY2UtPnJlc3BvbnNlKCkpKSB7Ci0gICAgICAgICAg
ICAgICAgICAgICAgICBzdWJyZXNvdXJjZXMuYXBwZW5kKFdURk1vdmUocmVzb3VyY2UpKTsKKyAg
ICAgICAgICAgICAgICBpZiAoYXV0byogY2FjaGVkUmVzb3VyY2UgPSBNZW1vcnlDYWNoZTo6c2lu
Z2xldG9uKCkucmVzb3VyY2VGb3JSZXF1ZXN0KHJlcXVlc3QsIGZyYW1lLnBhZ2UoKS0+c2Vzc2lv
bklEKCkpKSB7CisgICAgICAgICAgICAgICAgICAgIGlmIChhdXRvIHJlc291cmNlID0gQXJjaGl2
ZVJlc291cmNlOjpjcmVhdGUoY2FjaGVkUmVzb3VyY2UtPnJlc291cmNlQnVmZmVyKCksIHN1YnJl
c291cmNlVVJMLCBjYWNoZWRSZXNvdXJjZS0+cmVzcG9uc2UoKSkpIHsKKyAgICAgICAgICAgICAg
ICAgICAgICAgIHN1YnJlc291cmNlcy5hcHBlbmQocmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSk7
CiAgICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICAgICAgICAg
fQogICAgICAgICAgICAgICAgIH0KQEAgLTU0MywxNyArNTMxLDE3IEBAIFJlZlB0cjxMZWdhY3lX
ZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoY29uc3QgU3RyaW5nJiBtYXJrdXBT
dHJpbmcsIEZyCiAgICAgfQogCiAgICAgLy8gQWRkIGZhdmljb24gaWYgb25lIGV4aXN0cyBmb3Ig
dGhpcyBwYWdlLCBpZiB3ZSBhcmUgYXJjaGl2aW5nIHRoZSBlbnRpcmUgcGFnZS4KLSAgICBpZiAo
bm9kZXNTaXplICYmIG5vZGVzWzBdLT5pc0RvY3VtZW50Tm9kZSgpICYmIGljb25EYXRhYmFzZSgp
LmlzRW5hYmxlZCgpKSB7Ci0gICAgICAgIGNvbnN0IFN0cmluZyYgaWNvblVSTCA9IGljb25EYXRh
YmFzZSgpLnN5bmNocm9ub3VzSWNvblVSTEZvclBhZ2VVUkwocmVzcG9uc2VVUkwpOworICAgIGlm
ICghbm9kZXMuaXNFbXB0eSgpICYmIG5vZGVzWzBdLT5pc0RvY3VtZW50Tm9kZSgpICYmIGljb25E
YXRhYmFzZSgpLmlzRW5hYmxlZCgpKSB7CisgICAgICAgIGF1dG8gaWNvblVSTCA9IGljb25EYXRh
YmFzZSgpLnN5bmNocm9ub3VzSWNvblVSTEZvclBhZ2VVUkwocmVzcG9uc2VVUkwpOwogICAgICAg
ICBpZiAoIWljb25VUkwuaXNFbXB0eSgpICYmIGljb25EYXRhYmFzZSgpLnN5bmNocm9ub3VzSWNv
bkRhdGFLbm93bkZvckljb25VUkwoaWNvblVSTCkpIHsKLSAgICAgICAgICAgIGlmIChJbWFnZSog
aWNvbkltYWdlID0gaWNvbkRhdGFiYXNlKCkuc3luY2hyb25vdXNJY29uRm9yUGFnZVVSTChyZXNw
b25zZVVSTCwgSW50U2l6ZSgxNiwgMTYpKSkgeworICAgICAgICAgICAgaWYgKGF1dG8qIGljb25J
bWFnZSA9IGljb25EYXRhYmFzZSgpLnN5bmNocm9ub3VzSWNvbkZvclBhZ2VVUkwocmVzcG9uc2VV
UkwsIEludFNpemUoMTYsIDE2KSkpIHsKICAgICAgICAgICAgICAgICBpZiAoYXV0byByZXNvdXJj
ZSA9IEFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKGljb25JbWFnZS0+ZGF0YSgpLCBVUkwoUGFyc2Vk
VVJMU3RyaW5nLCBpY29uVVJMKSwgImltYWdlL3gtaWNvbiIsICIiLCAiIikpCi0gICAgICAgICAg
ICAgICAgICAgIHN1YnJlc291cmNlcy5hcHBlbmQoV1RGTW92ZShyZXNvdXJjZSkpOworICAgICAg
ICAgICAgICAgICAgICBzdWJyZXNvdXJjZXMuYXBwZW5kKHJlc291cmNlLnJlbGVhc2VOb25OdWxs
KCkpOwogICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgfQogCi0gICAgcmV0dXJuIGNyZWF0
ZShXVEZNb3ZlKG1haW5SZXNvdXJjZSksIFdURk1vdmUoc3VicmVzb3VyY2VzKSwgV1RGTW92ZShz
dWJmcmFtZUFyY2hpdmVzKSk7CisgICAgcmV0dXJuIGNyZWF0ZShtYWluUmVzb3VyY2UucmVsZWFz
ZU5vbk51bGwoKSwgV1RGTW92ZShzdWJyZXNvdXJjZXMpLCBXVEZNb3ZlKHN1YmZyYW1lQXJjaGl2
ZXMpKTsKIH0KIAogUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNy
ZWF0ZUZyb21TZWxlY3Rpb24oRnJhbWUqIGZyYW1lKQpAQCAtNTYxLDcgKzU0OSw3IEBAIFJlZlB0
cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVGcm9tU2VsZWN0aW9u
KEZyYW1lKiBmcmFtZSkKICAgICBpZiAoIWZyYW1lKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsK
IAotICAgIERvY3VtZW50KiBkb2N1bWVudCA9IGZyYW1lLT5kb2N1bWVudCgpOworICAgIGF1dG8q
IGRvY3VtZW50ID0gZnJhbWUtPmRvY3VtZW50KCk7CiAgICAgaWYgKCFkb2N1bWVudCkKICAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CiAKQEAgLTU2OSwxMiArNTU3LDEwIEBAIFJlZlB0cjxMZWdhY3lX
ZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVGcm9tU2VsZWN0aW9uKEZyYW1lKiBm
cmFtZSkKICAgICBidWlsZGVyLmFwcGVuZChkb2N1bWVudFR5cGVTdHJpbmcoKmRvY3VtZW50KSk7
CiAKICAgICBWZWN0b3I8Tm9kZSo+IG5vZGVMaXN0OwotICAgIFJlZlB0cjxSYW5nZT4gc2VsZWN0
aW9uUmFuZ2UgPSBmcmFtZS0+c2VsZWN0aW9uKCkudG9Ob3JtYWxpemVkUmFuZ2UoKTsKLSAgICBp
ZiAoc2VsZWN0aW9uUmFuZ2UpCisgICAgaWYgKGF1dG8gc2VsZWN0aW9uUmFuZ2UgPSBmcmFtZS0+
c2VsZWN0aW9uKCkudG9Ob3JtYWxpemVkUmFuZ2UoKSkKICAgICAgICAgYnVpbGRlci5hcHBlbmQo
Y3JlYXRlTWFya3VwKCpzZWxlY3Rpb25SYW5nZSwgJm5vZGVMaXN0LCBBbm5vdGF0ZUZvckludGVy
Y2hhbmdlKSk7CiAKLSAgICBTdHJpbmcgbWFya3VwU3RyaW5nID0gYnVpbGRlci50b1N0cmluZygp
OwotICAgIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBhcmNoaXZlID0gY3JlYXRlKG1hcmt1cFN0
cmluZywgKmZyYW1lLCBub2RlTGlzdCwgbnVsbHB0cik7CisgICAgYXV0byBhcmNoaXZlID0gY3Jl
YXRlKGJ1aWxkZXIudG9TdHJpbmcoKSwgKmZyYW1lLCBub2RlTGlzdCwgbnVsbHB0cik7CiAgICAg
CiAgICAgaWYgKCFkb2N1bWVudC0+aXNGcmFtZVNldCgpKQogICAgICAgICByZXR1cm4gYXJjaGl2
ZTsKQEAgLTU4NCw3ICs1NzAsMTEgQEAgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdl
YkFyY2hpdmU6OmNyZWF0ZUZyb21TZWxlY3Rpb24oRnJhbWUqIGZyYW1lKQogICAgIFN0cmluZyBp
ZnJhbWVNYXJrdXAgPSAiPGlmcmFtZSBmcmFtZWJvcmRlcj1cIm5vXCIgbWFyZ2lud2lkdGg9XCIw
XCIgbWFyZ2luaGVpZ2h0PVwiMFwiIHdpZHRoPVwiOTglJVwiIGhlaWdodD1cIjk4JSVcIiBzcmM9
XCIiICsgZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCktPnJlc3BvbnNlKCkudXJsKCku
c3RyaW5nKCkgKyAiXCI+PC9pZnJhbWU+IjsKICAgICBhdXRvIGlmcmFtZVJlc291cmNlID0gQXJj
aGl2ZVJlc291cmNlOjpjcmVhdGUodXRmOEJ1ZmZlcihpZnJhbWVNYXJrdXApLCBibGFua1VSTCgp
LCAidGV4dC9odG1sIiwgIlVURi04IiwgU3RyaW5nKCkpOwogCi0gICAgcmV0dXJuIGNyZWF0ZShX
VEZNb3ZlKGlmcmFtZVJlc291cmNlKSwgVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+Pigp
LCBWZWN0b3I8UmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+PiB7IGFyY2hpdmUgfSk7CisgICAgVmVj
dG9yPFJlZjxMZWdhY3lXZWJBcmNoaXZlPj4gc3ViZnJhbWVBcmNoaXZlczsKKyAgICBzdWJmcmFt
ZUFyY2hpdmVzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkoMSk7CisgICAgc3ViZnJhbWVBcmNoaXZl
cy51bmNoZWNrZWRBcHBlbmQoYXJjaGl2ZS5yZWxlYXNlTm9uTnVsbCgpKTsKKworICAgIHJldHVy
biBjcmVhdGUoaWZyYW1lUmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSwgeyB9LCBXVEZNb3ZlKHN1
YmZyYW1lQXJjaGl2ZXMpKTsKIH0KIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2FyY2hpdmUvY2YvTGVnYWN5V2ViQXJjaGl2ZS5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2FyY2hpdmUvY2YvTGVnYWN5V2ViQXJjaGl2ZS5oCmluZGV4IDM1ZGRmM2MyYTU5YzA4NjMzYmRk
OWIyMTM0N2IzNmY4ZDI3NjJjMWEuLjQ0NjdkMGQ2YTAzZTA4MDNhZTZiYTc1NjM5NzZlYmU1MjJh
MTQ5OGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL2NmL0xlZ2Fj
eVdlYkFyY2hpdmUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9jZi9MZWdh
Y3lXZWJBcmNoaXZlLmgKQEAgLTM3LDIzICszNywyNiBAQCBjbGFzcyBGcmFtZTsKIGNsYXNzIE5v
ZGU7CiBjbGFzcyBSYW5nZTsKIAotY2xhc3MgTGVnYWN5V2ViQXJjaGl2ZSA6IHB1YmxpYyBBcmNo
aXZlIHsKK2NsYXNzIExlZ2FjeVdlYkFyY2hpdmUgZmluYWwgOiBwdWJsaWMgQXJjaGl2ZSB7CiBw
dWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxMZWdhY3lXZWJBcmNoaXZlPiBj
cmVhdGUoKTsKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmUHRyPExlZ2FjeVdlYkFyY2hp
dmU+IGNyZWF0ZShTaGFyZWRCdWZmZXImKTsKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVm
UHRyPExlZ2FjeVdlYkFyY2hpdmU+IGNyZWF0ZShjb25zdCBVUkwmLCBTaGFyZWRCdWZmZXImKTsK
LSAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IGNyZWF0
ZShSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiYmIG1haW5SZXNvdXJjZSwgVmVjdG9yPFJlZlB0cjxB
cmNoaXZlUmVzb3VyY2U+PiYmIHN1YnJlc291cmNlcywgVmVjdG9yPFJlZlB0cjxMZWdhY3lXZWJB
cmNoaXZlPj4mJiBzdWJmcmFtZUFyY2hpdmVzKTsKKyAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMg
UmVmPExlZ2FjeVdlYkFyY2hpdmU+IGNyZWF0ZShSZWY8QXJjaGl2ZVJlc291cmNlPiYmIG1haW5S
ZXNvdXJjZSwgVmVjdG9yPFJlZjxBcmNoaXZlUmVzb3VyY2U+PiYmIHN1YnJlc291cmNlcywgVmVj
dG9yPFJlZjxMZWdhY3lXZWJBcmNoaXZlPj4mJiBzdWJmcmFtZUFyY2hpdmVzKTsKICAgICBXRUJD
T1JFX0VYUE9SVCBzdGF0aWMgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IGNyZWF0ZShOb2RlJiwg
c3RkOjpmdW5jdGlvbjxib29sKEZyYW1lJik+IGZyYW1lRmlsdGVyID0gbnVsbHB0cik7CiAgICAg
V0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBjcmVhdGUoRnJh
bWUmKTsKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+
IGNyZWF0ZUZyb21TZWxlY3Rpb24oRnJhbWUqKTsKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMg
UmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IGNyZWF0ZShSYW5nZSopOwogCi0gICAgVHlwZSB0eXBl
KCkgY29uc3Qgb3ZlcnJpZGU7Ci0KICAgICBXRUJDT1JFX0VYUE9SVCBSZXRhaW5QdHI8Q0ZEYXRh
UmVmPiByYXdEYXRhUmVwcmVzZW50YXRpb24oKTsKIAogcHJpdmF0ZToKLSAgICBMZWdhY3lXZWJB
cmNoaXZlKCkgeyB9CisgICAgTGVnYWN5V2ViQXJjaGl2ZSgpID0gZGVmYXVsdDsKKworICAgIGJv
b2wgc2hvdWxkTG9hZEZyb21BcmNoaXZlT25seSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIGZhbHNl
OyB9CisgICAgYm9vbCBzaG91bGRPdmVycmlkZUJhc2VVUkwoKSBjb25zdCBmaW5hbCB7IHJldHVy
biBmYWxzZTsgfQorICAgIGJvb2wgc2hvdWxkVXNlTWFpblJlc291cmNlRW5jb2RpbmcoKSBjb25z
dCBmaW5hbCB7IHJldHVybiB0cnVlOyB9CisgICAgYm9vbCBzaG91bGRVc2VNYWluUmVzb3VyY2VV
UkwoKSBjb25zdCBmaW5hbCB7IHJldHVybiB0cnVlOyB9CiAKICAgICBlbnVtIE1haW5SZXNvdXJj
ZVN0YXR1cyB7IFN1YnJlc291cmNlLCBNYWluUmVzb3VyY2UgfTsKIApAQCAtNjIsNyArNjUsNyBA
QCBwcml2YXRlOgogICAgIHN0YXRpYyBSZXNvdXJjZVJlc3BvbnNlIGNyZWF0ZVJlc291cmNlUmVz
cG9uc2VGcm9tTWFjQXJjaGl2ZWREYXRhKENGRGF0YVJlZik7CiAgICAgc3RhdGljIFJlc291cmNl
UmVzcG9uc2UgY3JlYXRlUmVzb3VyY2VSZXNwb25zZUZyb21Qcm9wZXJ0eUxpc3REYXRhKENGRGF0
YVJlZiwgQ0ZTdHJpbmdSZWYgcmVzcG9uc2VEYXRhVHlwZSk7CiAgICAgc3RhdGljIFJldGFpblB0
cjxDRkRhdGFSZWY+IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmKTsKLSAgICBzdGF0aWMgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gY3Jl
YXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24oQXJjaGl2ZSopOworICAgIHN0YXRpYyBSZXRh
aW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihB
cmNoaXZlJik7CiAgICAgc3RhdGljIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IGNyZWF0ZVBy
b3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKEFyY2hpdmVSZXNvdXJjZSosIE1haW5SZXNvdXJjZVN0
YXR1cyk7CiAKICAgICBib29sIGV4dHJhY3QoQ0ZEaWN0aW9uYXJ5UmVmKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL21odG1sL01IVE1MQXJjaGl2ZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRNTEFyY2hpdmUuY3BwCmluZGV4
IGUxZjNhZDA2YTVmN2YyYjgwNTUzMTA0NWRhNGI4NmMyZDNjODJkZDMuLmE5MjFiMDVlODQ2YTA1
YTVhZmNlNjMwM2FhMThmOGJmMzA3MDlkYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9hcmNoaXZlL21odG1sL01IVE1MQXJjaGl2ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2FyY2hpdmUvbWh0bWwvTUhUTUxBcmNoaXZlLmNwcApAQCAtMTIyLDE1ICsxMjIsMTUg
QEAgUmVmUHRyPE1IVE1MQXJjaGl2ZT4gTUhUTUxBcmNoaXZlOjpjcmVhdGUoY29uc3QgVVJMJiB1
cmwsIFNoYXJlZEJ1ZmZlciYgZGF0YSkKICAgICAgICAgUmVmUHRyPE1IVE1MQXJjaGl2ZT4gYXJj
aGl2ZSA9IHBhcnNlci5mcmFtZUF0KGkpOwogICAgICAgICBmb3IgKHNpemVfdCBqID0gMTsgaiA8
IHBhcnNlci5mcmFtZUNvdW50KCk7ICsraikgewogICAgICAgICAgICAgaWYgKGkgIT0gaikKLSAg
ICAgICAgICAgICAgICBhcmNoaXZlLT5hZGRTdWJmcmFtZUFyY2hpdmUocGFyc2VyLmZyYW1lQXQo
aikpOworICAgICAgICAgICAgICAgIGFyY2hpdmUtPmFkZFN1YmZyYW1lQXJjaGl2ZSgqcGFyc2Vy
LmZyYW1lQXQoaikpOwogICAgICAgICB9CiAgICAgICAgIGZvciAoc2l6ZV90IGogPSAwOyBqIDwg
cGFyc2VyLnN1YlJlc291cmNlQ291bnQoKTsgKytqKQotICAgICAgICAgICAgYXJjaGl2ZS0+YWRk
U3VicmVzb3VyY2UocGFyc2VyLnN1YlJlc291cmNlQXQoaikpOworICAgICAgICAgICAgYXJjaGl2
ZS0+YWRkU3VicmVzb3VyY2UoKnBhcnNlci5zdWJSZXNvdXJjZUF0KGopKTsKICAgICB9CiAgICAg
cmV0dXJuIG1haW5BcmNoaXZlOwogfQogCi1QYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gTUhUTUxB
cmNoaXZlOjpnZW5lcmF0ZU1IVE1MRGF0YShQYWdlKiBwYWdlKQorUmVmUHRyPFNoYXJlZEJ1ZmZl
cj4gTUhUTUxBcmNoaXZlOjpnZW5lcmF0ZU1IVE1MRGF0YShQYWdlKiBwYWdlKQogewogICAgIFZl
Y3RvcjxQYWdlU2VyaWFsaXplcjo6UmVzb3VyY2U+IHJlc291cmNlczsKICAgICBQYWdlU2VyaWFs
aXplciBwYWdlU2VyaWFsaXplcigmcmVzb3VyY2VzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9hcmNoaXZlL21odG1sL01IVE1MQXJjaGl2ZS5oIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2FyY2hpdmUvbWh0bWwvTUhUTUxBcmNoaXZlLmgKaW5kZXggY2EyMDAwMzc5YmRmNDEy
ZjRlNDEyNGVhZjIxYWJhNjZhMTVlMzRiMi4uODUyNDY1OWFhYjIyMGRlMDc1YzY3N2FiNzBmMTlh
Y2NjODgxOGRmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvbWh0
bWwvTUhUTUxBcmNoaXZlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvbWh0
bWwvTUhUTUxBcmNoaXZlLmgKQEAgLTQwLDIyICs0MCwyNCBAQCBjbGFzcyBNSFRNTFBhcnNlcjsK
IGNsYXNzIFBhZ2U7CiBjbGFzcyBTaGFyZWRCdWZmZXI7CiAKLWNsYXNzIE1IVE1MQXJjaGl2ZSA6
IHB1YmxpYyBBcmNoaXZlIHsKK2NsYXNzIE1IVE1MQXJjaGl2ZSBmaW5hbCA6IHB1YmxpYyBBcmNo
aXZlIHsKIHB1YmxpYzoKLSAgICBUeXBlIHR5cGUoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBN
SFRNTDsgfQotCiAgICAgc3RhdGljIFJlZjxNSFRNTEFyY2hpdmU+IGNyZWF0ZSgpOwogICAgIHN0
YXRpYyBSZWZQdHI8TUhUTUxBcmNoaXZlPiBjcmVhdGUoY29uc3QgVVJMJiwgU2hhcmVkQnVmZmVy
Jik7CiAKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGdlbmVyYXRlTUhUTUxE
YXRhKFBhZ2UqKTsKKyAgICBzdGF0aWMgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZ2VuZXJhdGVNSFRN
TERhdGEoUGFnZSopOwogCiAgICAgdmlydHVhbCB+TUhUTUxBcmNoaXZlKCk7CiAKIHByaXZhdGU6
Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBnZW5lcmF0ZU1IVE1MRGF0YShQ
YWdlKiwgYm9vbCB1c2VCaW5hcnlFbmNvZGluZyk7Ci0KICAgICBmcmllbmQgY2xhc3MgTUhUTUxQ
YXJzZXI7CisKICAgICBNSFRNTEFyY2hpdmUoKTsKKworICAgIGJvb2wgc2hvdWxkTG9hZEZyb21B
cmNoaXZlT25seSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KKyAgICBib29sIHNob3Vs
ZE92ZXJyaWRlQmFzZVVSTCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KKyAgICBib29s
IHNob3VsZFVzZU1haW5SZXNvdXJjZUVuY29kaW5nKCkgY29uc3QgZmluYWwgeyByZXR1cm4gZmFs
c2U7IH0KKyAgICBib29sIHNob3VsZFVzZU1haW5SZXNvdXJjZVVSTCgpIGNvbnN0IGZpbmFsIHsg
cmV0dXJuIGZhbHNlOyB9CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRNTFBhcnNlci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRNTFBhcnNlci5jcHAKaW5kZXgg
ZjhhMDdlZGRhYTZhODMzMDA2YWUwMDY4MGM5N2ZkNzA5MWM2ZDljYS4uYjA0MTRlYmM5NjE1NWIx
NWJhMTRjNmYzZDU4ODk1ZjZmMzI3MDJhMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2FyY2hpdmUvbWh0bWwvTUhUTUxQYXJzZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9hcmNoaXZlL21odG1sL01IVE1MUGFyc2VyLmNwcApAQCAtNzUsNyArNzUsNyBAQCBSZWZQ
dHI8TUhUTUxBcmNoaXZlPiBNSFRNTFBhcnNlcjo6cGFyc2VBcmNoaXZlV2l0aEhlYWRlcihNSU1F
SGVhZGVyKiBoZWFkZXIpCiAgICAgICAgIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IHJlc291cmNl
ID0gcGFyc2VOZXh0UGFydCgqaGVhZGVyLCBTdHJpbmcoKSwgU3RyaW5nKCksIGVuZE9mQXJjaGl2
ZVJlYWNoZWQpOwogICAgICAgICBpZiAoIXJlc291cmNlKQogICAgICAgICAgICAgcmV0dXJuIG51
bGxwdHI7Ci0gICAgICAgIGFyY2hpdmUtPnNldE1haW5SZXNvdXJjZShyZXNvdXJjZSk7CisgICAg
ICAgIGFyY2hpdmUtPnNldE1haW5SZXNvdXJjZShyZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpKTsK
ICAgICAgICAgcmV0dXJuIGFyY2hpdmU7CiAgICAgfQogCkBAIC0xMDEsNyArMTAxLDcgQEAgUmVm
UHRyPE1IVE1MQXJjaGl2ZT4gTUhUTUxQYXJzZXI6OnBhcnNlQXJjaGl2ZVdpdGhIZWFkZXIoTUlN
RUhlYWRlciogaGVhZGVyKQogICAgICAgICAgICAgLy8gVGhlIHRvcC1mcmFtZSBpcyB0aGUgZmly
c3QgZnJhbWUgZm91bmQsIHJlZ2FyZGxlc3Mgb2YgdGhlIG5lc3RpbmcgbGV2ZWwuCiAgICAgICAg
ICAgICBpZiAoc3ViZnJhbWVBcmNoaXZlLT5tYWluUmVzb3VyY2UoKSkKICAgICAgICAgICAgICAg
ICBhZGRSZXNvdXJjZVRvQXJjaGl2ZShzdWJmcmFtZUFyY2hpdmUtPm1haW5SZXNvdXJjZSgpLCBh
cmNoaXZlLmdldCgpKTsKLSAgICAgICAgICAgIGFyY2hpdmUtPmFkZFN1YmZyYW1lQXJjaGl2ZShz
dWJmcmFtZUFyY2hpdmUpOworICAgICAgICAgICAgYXJjaGl2ZS0+YWRkU3ViZnJhbWVBcmNoaXZl
KHN1YmZyYW1lQXJjaGl2ZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICAgICAgICAgIGNvbnRpbnVl
OwogICAgICAgICB9CiAKQEAgLTEyNiwxMyArMTI2LDEzIEBAIHZvaWQgTUhUTUxQYXJzZXI6OmFk
ZFJlc291cmNlVG9BcmNoaXZlKEFyY2hpdmVSZXNvdXJjZSogcmVzb3VyY2UsIE1IVE1MQXJjaGl2
ZSoKIAogICAgIC8vIFRoZSBmaXJzdCBkb2N1bWVudCBzdWl0YWJsZSByZXNvdXJjZSBpcyB0aGUg
bWFpbiBmcmFtZS4KICAgICBpZiAoIWFyY2hpdmUtPm1haW5SZXNvdXJjZSgpKSB7Ci0gICAgICAg
IGFyY2hpdmUtPnNldE1haW5SZXNvdXJjZShyZXNvdXJjZSk7CisgICAgICAgIGFyY2hpdmUtPnNl
dE1haW5SZXNvdXJjZSgqcmVzb3VyY2UpOwogICAgICAgICBtX2ZyYW1lcy5hcHBlbmQoYXJjaGl2
ZSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKICAgICBSZWZQdHI8TUhUTUxBcmNoaXZlPiBz
dWJmcmFtZSA9IE1IVE1MQXJjaGl2ZTo6Y3JlYXRlKCk7Ci0gICAgc3ViZnJhbWUtPnNldE1haW5S
ZXNvdXJjZShyZXNvdXJjZSk7CisgICAgc3ViZnJhbWUtPnNldE1haW5SZXNvdXJjZSgqcmVzb3Vy
Y2UpOwogICAgIG1fZnJhbWVzLmFwcGVuZChzdWJmcmFtZSk7CiB9CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmNwcAppbmRleCA4YmYw
NjkxYWM0OTY2NTUxOGNmYThhYjVlOTExMDUwN2RlZDc3MDY5Li5hZjQwY2MyMDRhZDA0N2Y4NWMy
MzQxN2NiY2U3ZjE5N2UzYmU2MjQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
Y2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZENTU1N0eWxlU2hlZXQuY3BwCkBAIC0zLDcgKzMsNyBAQAogICAgIENvcHly
aWdodCAoQykgMjAwMSBEaXJrIE11ZWxsZXIgKG11ZWxsZXJAa2RlLm9yZykKICAgICBDb3B5cmln
aHQgKEMpIDIwMDIgV2FsZG8gQmFzdGlhbiAoYmFzdGlhbkBrZGUub3JnKQogICAgIENvcHlyaWdo
dCAoQykgMjAwNiBTYW11ZWwgV2VpbmlnIChzYW0ud2VpbmlnQGdtYWlsLmNvbSkKLSAgICBDb3B5
cmlnaHQgKEMpIDIwMDQsIDIwMDUsIDIwMDYgQXBwbGUgSW5jLgorICAgIENvcHlyaWdodCAoQykg
MjAwNC0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KIAogICAgIFRoaXMgbGli
cmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICAg
ICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1
YmxpYwpAQCAtMTksOSArMTksNiBAQAogICAgIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUg
dGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCiAgICAgdGhlIEZyZWUgU29m
dHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwK
ICAgICBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KLQotICAgIFRoaXMgY2xhc3MgcHJvdmlk
ZXMgYWxsIGZ1bmN0aW9uYWxpdHkgbmVlZGVkIGZvciBsb2FkaW5nIGltYWdlcywgc3R5bGUgc2hl
ZXRzIGFuZCBodG1sCi0gICAgcGFnZXMgZnJvbSB0aGUgd2ViLiBJdCBoYXMgYSBtZW1vcnkgY2Fj
aGUgZm9yIHRoZXNlIG9iamVjdHMuCiAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCkBAIC0xNTYs
NyArMTUzLDcgQEAgdm9pZCBDYWNoZWRDU1NTdHlsZVNoZWV0OjpkZXN0cm95RGVjb2RlZERhdGEo
KQogICAgIHNldERlY29kZWRTaXplKDApOwogfQogCi1QYXNzUmVmUHRyPFN0eWxlU2hlZXRDb250
ZW50cz4gQ2FjaGVkQ1NTU3R5bGVTaGVldDo6cmVzdG9yZVBhcnNlZFN0eWxlU2hlZXQoY29uc3Qg
Q1NTUGFyc2VyQ29udGV4dCYgY29udGV4dCwgQ2FjaGVQb2xpY3kgY2FjaGVQb2xpY3kpCitSZWZQ
dHI8U3R5bGVTaGVldENvbnRlbnRzPiBDYWNoZWRDU1NTdHlsZVNoZWV0OjpyZXN0b3JlUGFyc2Vk
U3R5bGVTaGVldChjb25zdCBDU1NQYXJzZXJDb250ZXh0JiBjb250ZXh0LCBDYWNoZVBvbGljeSBj
YWNoZVBvbGljeSkKIHsKICAgICBpZiAoIW1fcGFyc2VkU3R5bGVTaGVldENhY2hlKQogICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKQEAgLTE4MCw3ICsxNzcsNyBAQCBQYXNzUmVmUHRyPFN0eWxlU2hl
ZXRDb250ZW50cz4gQ2FjaGVkQ1NTU3R5bGVTaGVldDo6cmVzdG9yZVBhcnNlZFN0eWxlU2hlZXQo
Y29ucwogCiB2b2lkIENhY2hlZENTU1N0eWxlU2hlZXQ6OnNhdmVQYXJzZWRTdHlsZVNoZWV0KFJl
ZjxTdHlsZVNoZWV0Q29udGVudHM+JiYgc2hlZXQpCiB7Ci0gICAgQVNTRVJUKHNoZWV0LmdldCgp
LmlzQ2FjaGVhYmxlKCkpOworICAgIEFTU0VSVChzaGVldC0+aXNDYWNoZWFibGUoKSk7CiAKICAg
ICBpZiAobV9wYXJzZWRTdHlsZVNoZWV0Q2FjaGUpCiAgICAgICAgIG1fcGFyc2VkU3R5bGVTaGVl
dENhY2hlLT5yZW1vdmVkRnJvbU1lbW9yeUNhY2hlKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5oIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZENTU1N0eWxlU2hlZXQuaAppbmRleCAzYzhhZTI4ZGQyN2FlZjgw
YWUyZGVlYjRhMzM2ZTc0ODU0ZTdlZjBjLi5jMzNhYTJlNDA4NTUzOGJjN2I0NTZmNDE2MzljMmNj
MTg3OWY4NzRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
Q1NTU3R5bGVTaGVldC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRD
U1NTdHlsZVNoZWV0LmgKQEAgLTIsNyArMiw3IEBACiAgICAgQ29weXJpZ2h0IChDKSAxOTk4IExh
cnMgS25vbGwgKGtub2xsQG1waS1oZC5tcGcuZGUpCiAgICAgQ29weXJpZ2h0IChDKSAyMDAxIERp
cmsgTXVlbGxlciA8bXVlbGxlckBrZGUub3JnPgogICAgIENvcHlyaWdodCAoQykgMjAwNiBTYW11
ZWwgV2VpbmlnIChzYW0ud2VpbmlnQGdtYWlsLmNvbSkKLSAgICBDb3B5cmlnaHQgKEMpIDIwMDQs
IDIwMDUsIDIwMDYsIDIwMDcsIDIwMDggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICAgIENvcHlyaWdodCAoQykgMjAwNC0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KIAogICAgIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJp
YnV0ZSBpdCBhbmQvb3IKICAgICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUg
TGlicmFyeSBHZW5lcmFsIFB1YmxpYwpAQCAtMTgsOSArMTgsNiBAQAogICAgIGFsb25nIHdpdGgg
dGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRv
CiAgICAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3Ry
ZWV0LCBGaWZ0aCBGbG9vciwKICAgICBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KLQotICAg
IFRoaXMgY2xhc3MgcHJvdmlkZXMgYWxsIGZ1bmN0aW9uYWxpdHkgbmVlZGVkIGZvciBsb2FkaW5n
IGltYWdlcywgc3R5bGUgc2hlZXRzIGFuZCBodG1sCi0gICAgcGFnZXMgZnJvbSB0aGUgd2ViLiBJ
dCBoYXMgYSBtZW1vcnkgY2FjaGUgZm9yIHRoZXNlIG9iamVjdHMuCiAqLwogCiAjcHJhZ21hIG9u
Y2UKQEAgLTI5LDQ0ICsyNiw0NCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLSAgICBjbGFz
cyBDYWNoZWRSZXNvdXJjZUNsaWVudDsKLSAgICBjbGFzcyBTdHlsZVNoZWV0Q29udGVudHM7Ci0g
ICAgY2xhc3MgVGV4dFJlc291cmNlRGVjb2RlcjsKLSAgICBzdHJ1Y3QgQ1NTUGFyc2VyQ29udGV4
dDsKK2NsYXNzIFN0eWxlU2hlZXRDb250ZW50czsKK2NsYXNzIFRleHRSZXNvdXJjZURlY29kZXI7
CisKK3N0cnVjdCBDU1NQYXJzZXJDb250ZXh0OwogCi0gICAgY2xhc3MgQ2FjaGVkQ1NTU3R5bGVT
aGVldCBmaW5hbCA6IHB1YmxpYyBDYWNoZWRSZXNvdXJjZSB7Ci0gICAgcHVibGljOgotICAgICAg
ICBDYWNoZWRDU1NTdHlsZVNoZWV0KENhY2hlZFJlc291cmNlUmVxdWVzdCYmLCBTZXNzaW9uSUQp
OwotICAgICAgICB2aXJ0dWFsIH5DYWNoZWRDU1NTdHlsZVNoZWV0KCk7CitjbGFzcyBDYWNoZWRD
U1NTdHlsZVNoZWV0IGZpbmFsIDogcHVibGljIENhY2hlZFJlc291cmNlIHsKK3B1YmxpYzoKKyAg
ICBDYWNoZWRDU1NTdHlsZVNoZWV0KENhY2hlZFJlc291cmNlUmVxdWVzdCYmLCBTZXNzaW9uSUQp
OworICAgIHZpcnR1YWwgfkNhY2hlZENTU1N0eWxlU2hlZXQoKTsKIAotICAgICAgICBlbnVtIGNs
YXNzIE1JTUVUeXBlQ2hlY2sgeyBTdHJpY3QsIExheCB9OwotICAgICAgICBjb25zdCBTdHJpbmcg
c2hlZXRUZXh0KE1JTUVUeXBlQ2hlY2sgPSBNSU1FVHlwZUNoZWNrOjpTdHJpY3QsIGJvb2wqIGhh
c1ZhbGlkTUlNRVR5cGUgPSBudWxscHRyKSBjb25zdDsKKyAgICBlbnVtIGNsYXNzIE1JTUVUeXBl
Q2hlY2sgeyBTdHJpY3QsIExheCB9OworICAgIGNvbnN0IFN0cmluZyBzaGVldFRleHQoTUlNRVR5
cGVDaGVjayA9IE1JTUVUeXBlQ2hlY2s6OlN0cmljdCwgYm9vbCogaGFzVmFsaWRNSU1FVHlwZSA9
IG51bGxwdHIpIGNvbnN0OwogCi0gICAgICAgIFBhc3NSZWZQdHI8U3R5bGVTaGVldENvbnRlbnRz
PiByZXN0b3JlUGFyc2VkU3R5bGVTaGVldChjb25zdCBDU1NQYXJzZXJDb250ZXh0JiwgQ2FjaGVQ
b2xpY3kpOwotICAgICAgICB2b2lkIHNhdmVQYXJzZWRTdHlsZVNoZWV0KFJlZjxTdHlsZVNoZWV0
Q29udGVudHM+JiYpOworICAgIFJlZlB0cjxTdHlsZVNoZWV0Q29udGVudHM+IHJlc3RvcmVQYXJz
ZWRTdHlsZVNoZWV0KGNvbnN0IENTU1BhcnNlckNvbnRleHQmLCBDYWNoZVBvbGljeSk7CisgICAg
dm9pZCBzYXZlUGFyc2VkU3R5bGVTaGVldChSZWY8U3R5bGVTaGVldENvbnRlbnRzPiYmKTsKIAot
ICAgIHByaXZhdGU6Ci0gICAgICAgIGJvb2wgY2FuVXNlU2hlZXQoTUlNRVR5cGVDaGVjaywgYm9v
bCogaGFzVmFsaWRNSU1FVHlwZSkgY29uc3Q7Ci0gICAgICAgIGJvb2wgbWF5VHJ5UmVwbGFjZUVu
Y29kZWREYXRhKCkgY29uc3QgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQorcHJpdmF0ZToKKyAgICBi
b29sIGNhblVzZVNoZWV0KE1JTUVUeXBlQ2hlY2ssIGJvb2wqIGhhc1ZhbGlkTUlNRVR5cGUpIGNv
bnN0OworICAgIGJvb2wgbWF5VHJ5UmVwbGFjZUVuY29kZWREYXRhKCkgY29uc3QgZmluYWwgeyBy
ZXR1cm4gdHJ1ZTsgfQogCi0gICAgICAgIHZvaWQgZGlkQWRkQ2xpZW50KENhY2hlZFJlc291cmNl
Q2xpZW50JikgZmluYWw7CisgICAgdm9pZCBkaWRBZGRDbGllbnQoQ2FjaGVkUmVzb3VyY2VDbGll
bnQmKSBmaW5hbDsKIAotICAgICAgICB2b2lkIHNldEVuY29kaW5nKGNvbnN0IFN0cmluZyYpIGZp
bmFsOwotICAgICAgICBTdHJpbmcgZW5jb2RpbmcoKSBjb25zdCBmaW5hbDsKLSAgICAgICAgY29u
c3QgVGV4dFJlc291cmNlRGVjb2RlciogdGV4dFJlc291cmNlRGVjb2RlcigpIGNvbnN0IGZpbmFs
IHsgcmV0dXJuIG1fZGVjb2Rlci5nZXQoKTsgfQotICAgICAgICB2b2lkIGZpbmlzaExvYWRpbmco
U2hhcmVkQnVmZmVyKikgZmluYWw7Ci0gICAgICAgIHZvaWQgZGVzdHJveURlY29kZWREYXRhKCkg
ZmluYWw7CisgICAgdm9pZCBzZXRFbmNvZGluZyhjb25zdCBTdHJpbmcmKSBmaW5hbDsKKyAgICBT
dHJpbmcgZW5jb2RpbmcoKSBjb25zdCBmaW5hbDsKKyAgICBjb25zdCBUZXh0UmVzb3VyY2VEZWNv
ZGVyKiB0ZXh0UmVzb3VyY2VEZWNvZGVyKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9kZWNvZGVy
LmdldCgpOyB9CisgICAgdm9pZCBmaW5pc2hMb2FkaW5nKFNoYXJlZEJ1ZmZlciopIGZpbmFsOwor
ICAgIHZvaWQgZGVzdHJveURlY29kZWREYXRhKCkgZmluYWw7CiAKLSAgICAgICAgdm9pZCBzZXRC
b2R5RGF0YUZyb20oY29uc3QgQ2FjaGVkUmVzb3VyY2UmKSBmaW5hbDsKKyAgICB2b2lkIHNldEJv
ZHlEYXRhRnJvbShjb25zdCBDYWNoZWRSZXNvdXJjZSYpIGZpbmFsOwogCi0gICAgcHJvdGVjdGVk
OgotICAgICAgICB2b2lkIGNoZWNrTm90aWZ5KCkgZmluYWw7Citwcm90ZWN0ZWQ6CisgICAgdm9p
ZCBjaGVja05vdGlmeSgpIGZpbmFsOwogCi0gICAgICAgIFJlZlB0cjxUZXh0UmVzb3VyY2VEZWNv
ZGVyPiBtX2RlY29kZXI7Ci0gICAgICAgIFN0cmluZyBtX2RlY29kZWRTaGVldFRleHQ7CisgICAg
UmVmUHRyPFRleHRSZXNvdXJjZURlY29kZXI+IG1fZGVjb2RlcjsKKyAgICBTdHJpbmcgbV9kZWNv
ZGVkU2hlZXRUZXh0OwogCi0gICAgICAgIFJlZlB0cjxTdHlsZVNoZWV0Q29udGVudHM+IG1fcGFy
c2VkU3R5bGVTaGVldENhY2hlOwotICAgIH07CisgICAgUmVmUHRyPFN0eWxlU2hlZXRDb250ZW50
cz4gbV9wYXJzZWRTdHlsZVNoZWV0Q2FjaGU7Cit9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJj
ZVJlcXVlc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNl
UmVxdWVzdC5jcHAKaW5kZXggNDczYWNkNTlmMDM0YTExMmJlZTY0MzUxNWQ2Y2IyOWI1YjUwMTU0
Yi4uNmQwYzIyMTE5YWUzNGIxY2QwNGZhM2YxMGE1MzQ2ZWY2MWIwNjI1ZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdC5jcHAK
QEAgLTU5LDE1ICs1OSwxNyBAQCBTdHJpbmcgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0OjpzcGxpdEZy
YWdtZW50SWRlbnRpZmllckZyb21SZXF1ZXN0VVJMKFJlc291cmNlUmVxdQogICAgIHJldHVybiBm
cmFnbWVudElkZW50aWZpZXI7CiB9CiAKLXZvaWQgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0OjpzZXRJ
bml0aWF0b3IoUGFzc1JlZlB0cjxFbGVtZW50PiBlbGVtZW50KQordm9pZCBDYWNoZWRSZXNvdXJj
ZVJlcXVlc3Q6OnNldEluaXRpYXRvcihFbGVtZW50JiBlbGVtZW50KQogewotICAgIEFTU0VSVCgh
bV9pbml0aWF0b3JFbGVtZW50ICYmIG1faW5pdGlhdG9yTmFtZS5pc0VtcHR5KCkpOwotICAgIG1f
aW5pdGlhdG9yRWxlbWVudCA9IGVsZW1lbnQ7CisgICAgQVNTRVJUKCFtX2luaXRpYXRvckVsZW1l
bnQpOworICAgIEFTU0VSVChtX2luaXRpYXRvck5hbWUuaXNFbXB0eSgpKTsKKyAgICBtX2luaXRp
YXRvckVsZW1lbnQgPSAmZWxlbWVudDsKIH0KIAogdm9pZCBDYWNoZWRSZXNvdXJjZVJlcXVlc3Q6
OnNldEluaXRpYXRvcihjb25zdCBBdG9taWNTdHJpbmcmIG5hbWUpCiB7Ci0gICAgQVNTRVJUKCFt
X2luaXRpYXRvckVsZW1lbnQgJiYgbV9pbml0aWF0b3JOYW1lLmlzRW1wdHkoKSk7CisgICAgQVNT
RVJUKCFtX2luaXRpYXRvckVsZW1lbnQpOworICAgIEFTU0VSVChtX2luaXRpYXRvck5hbWUuaXNF
bXB0eSgpKTsKICAgICBtX2luaXRpYXRvck5hbWUgPSBuYW1lOwogfQogCkBAIC0yMDksMTAgKzIx
MSwxMiBAQCB2b2lkIENhY2hlZFJlc291cmNlUmVxdWVzdDo6cmVtb3ZlRnJhZ21lbnRJZGVudGlm
aWVySWZOZWVkZWQoKQogfQogCiAjaWYgRU5BQkxFKENPTlRFTlRfRVhURU5TSU9OUykKKwogdm9p
ZCBDYWNoZWRSZXNvdXJjZVJlcXVlc3Q6OmFwcGx5QmxvY2tlZFN0YXR1cyhjb25zdCBDb250ZW50
RXh0ZW5zaW9uczo6QmxvY2tlZFN0YXR1cyYgYmxvY2tlZFN0YXR1cykKIHsKICAgICBDb250ZW50
RXh0ZW5zaW9uczo6YXBwbHlCbG9ja2VkU3RhdHVzVG9SZXF1ZXN0KGJsb2NrZWRTdGF0dXMsIG1f
cmVzb3VyY2VSZXF1ZXN0KTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgQ2FjaGVkUmVzb3VyY2VSZXF1
ZXN0Ojp1cGRhdGVSZWZlcnJlck9yaWdpbkFuZFVzZXJBZ2VudEhlYWRlcnMoRnJhbWVMb2FkZXIm
IGZyYW1lTG9hZGVyLCBSZWZlcnJlclBvbGljeSBkZWZhdWx0UG9saWN5KQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdC5oIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdC5oCmluZGV4IDBl
OGE0YzNmYjkzYmU1MTMyOTRkNGYwNDVlOTllZjlhZTcxMDc2MDAuLmVlZWQxYTFmZmY0NTZmMmZj
MzEzNjJiY2U0YWM2ZmZjODI3ZGZiNjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmgKQEAgLTU4LDcgKzU4LDcgQEAgcHVibGlj
OgogICAgIGNvbnN0IFJlc291cmNlTG9hZGVyT3B0aW9ucyYgb3B0aW9ucygpIGNvbnN0IHsgcmV0
dXJuIG1fb3B0aW9uczsgfQogICAgIHZvaWQgc2V0T3B0aW9ucyhjb25zdCBSZXNvdXJjZUxvYWRl
ck9wdGlvbnMmIG9wdGlvbnMpIHsgbV9vcHRpb25zID0gb3B0aW9uczsgfQogICAgIGNvbnN0IHN0
ZDo6b3B0aW9uYWw8UmVzb3VyY2VMb2FkUHJpb3JpdHk+JiBwcmlvcml0eSgpIGNvbnN0IHsgcmV0
dXJuIG1fcHJpb3JpdHk7IH0KLSAgICB2b2lkIHNldEluaXRpYXRvcihQYXNzUmVmUHRyPEVsZW1l
bnQ+KTsKKyAgICB2b2lkIHNldEluaXRpYXRvcihFbGVtZW50Jik7CiAgICAgdm9pZCBzZXRJbml0
aWF0b3IoY29uc3QgQXRvbWljU3RyaW5nJiBuYW1lKTsKICAgICBjb25zdCBBdG9taWNTdHJpbmcm
IGluaXRpYXRvck5hbWUoKSBjb25zdDsKICAgICBib29sIGFsbG93c0NhY2hpbmcoKSBjb25zdCB7
IHJldHVybiBtX29wdGlvbnMuY2FjaGluZ1BvbGljeSA9PSBDYWNoaW5nUG9saWN5OjpBbGxvd0Nh
Y2hpbmc7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jb2NvYS9EaXNrQ2Fj
aGVNb25pdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRv
ci5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4NWRhZWM3MGEyMDljNzJkZWM5NmIy
ZGFmY2I0Yzc3NThkYmNlMjdkLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jb2NvYS9EaXNrQ2FjaGVNb25pdG9yLmgK
KysrIC9kZXYvbnVsbApAQCAtMSw2MiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE0
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBB
UyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJV
VE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
Ci0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI3ByYWdtYSBvbmNl
Ci0KLSNpbmNsdWRlICJSZXNvdXJjZVJlcXVlc3QuaCIKLSNpbmNsdWRlICJTZXNzaW9uSUQuaCIK
LSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgotCi10eXBlZGVmIGNvbnN0IHN0cnVjdCBfQ0ZD
YWNoZWRVUkxSZXNwb25zZSogQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZjsKLQotbmFtZXNwYWNlIFdl
YkNvcmUgewotCi1jbGFzcyBTaGFyZWRCdWZmZXI7Ci0KLWNsYXNzIERpc2tDYWNoZU1vbml0b3Ig
ewotcHVibGljOgotICAgIHN0YXRpYyB2b2lkIG1vbml0b3JGaWxlQmFja2luZ1N0b3JlQ3JlYXRp
b24oY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgU2Vzc2lvbklELCBDRkNhY2hlZFVSTFJlc3BvbnNl
UmVmKTsKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IHRyeUdldEZpbGVCYWNr
ZWRTaGFyZWRCdWZmZXJGcm9tQ0ZVUkxDYWNoZWRSZXNwb25zZShDRkNhY2hlZFVSTFJlc3BvbnNl
UmVmKTsKLSAgICB2aXJ0dWFsIH5EaXNrQ2FjaGVNb25pdG9yKCkgeyB9Ci0KLXByb3RlY3RlZDoK
LSAgICBEaXNrQ2FjaGVNb25pdG9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIFNlc3Npb25JRCwg
Q0ZDYWNoZWRVUkxSZXNwb25zZVJlZik7Ci0KLSAgICB2aXJ0dWFsIHZvaWQgcmVzb3VyY2VCZWNh
bWVGaWxlQmFja2VkKFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPik7Ci0KLSAgICBjb25zdCBSZXNv
dXJjZVJlcXVlc3QmIHJlc291cmNlUmVxdWVzdCgpIGNvbnN0IHsgcmV0dXJuIG1fcmVzb3VyY2VS
ZXF1ZXN0OyB9Ci0gICAgU2Vzc2lvbklEIHNlc3Npb25JRCgpIGNvbnN0IHsgcmV0dXJuIG1fc2Vz
c2lvbklEOyB9Ci0KLXByaXZhdGU6Ci0gICAgUmVzb3VyY2VSZXF1ZXN0IG1fcmVzb3VyY2VSZXF1
ZXN0OwotICAgIFNlc3Npb25JRCBtX3Nlc3Npb25JRDsKLX07Ci0KLSNpZiAoUExBVEZPUk0oSU9T
KSAmJiBfX0lQSE9ORV9PU19WRVJTSU9OX01JTl9SRVFVSVJFRCA8IDgwMDAwKSB8fCAoUExBVEZP
Uk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEIDwgMTA5MCkKLXZvaWQg
RGlza0NhY2hlTW9uaXRvcjo6bW9uaXRvckZpbGVCYWNraW5nU3RvcmVDcmVhdGlvbihjb25zdCBS
ZXNvdXJjZVJlcXVlc3QmLCBTZXNzaW9uSUQsIENGQ2FjaGVkVVJMUmVzcG9uc2VSZWYpIHsgfQot
UGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IERpc2tDYWNoZU1vbml0b3I6OnRyeUdldEZpbGVCYWNr
ZWRTaGFyZWRCdWZmZXJGcm9tQ0ZVUkxDYWNoZWRSZXNwb25zZShDRkNhY2hlZFVSTFJlc3BvbnNl
UmVmKSB7IHJldHVybiBudWxscHRyOyB9Ci0jZW5kaWYKLQotfSAvLyBuYW1lc3BhY2UgV2ViS2l0
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRv
ckNvY29hLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvckNv
Y29hLmgKaW5kZXggMTg2YzM0YWY5N2ZiZWViMzhmNjQzZDQxNzI3ZjE0OGY1MTZhYWE2ZC4uNjMw
NGYxZjA2ZWQwMWFjMGRjZmY4ZDNkYjNiNjUxNzdmMWY3OTIxZSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2NvY29hL0Rpc2tDYWNoZU1vbml0b3JDb2NvYS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9jb2NvYS9EaXNrQ2FjaGVNb25pdG9yQ29jb2EuaApAQCAtMSw1ICsx
LDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTQgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDE0LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yNyw3ICsyNyw2
IEBACiAKICNpbmNsdWRlICJSZXNvdXJjZVJlcXVlc3QuaCIKICNpbmNsdWRlICJTZXNzaW9uSUQu
aCIKLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogCiB0eXBlZGVmIGNvbnN0IHN0cnVjdCBf
Q0ZDYWNoZWRVUkxSZXNwb25zZSogQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZjsKIApAQCAtMzUsMjEg
KzM0LDE5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgU2hhcmVkQnVmZmVyOwogCi1j
bGFzcyBXRUJDT1JFX0VYUE9SVCBEaXNrQ2FjaGVNb25pdG9yIHsKK2NsYXNzIERpc2tDYWNoZU1v
bml0b3IgewogcHVibGljOgogICAgIHN0YXRpYyB2b2lkIG1vbml0b3JGaWxlQmFja2luZ1N0b3Jl
Q3JlYXRpb24oY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgU2Vzc2lvbklELCBDRkNhY2hlZFVSTFJl
c3BvbnNlUmVmKTsKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IHRyeUdldEZp
bGVCYWNrZWRTaGFyZWRCdWZmZXJGcm9tQ0ZVUkxDYWNoZWRSZXNwb25zZShDRkNhY2hlZFVSTFJl
c3BvbnNlUmVmKTsKLSAgICB2aXJ0dWFsIH5EaXNrQ2FjaGVNb25pdG9yKCkgeyB9CisgICAgc3Rh
dGljIFJlZlB0cjxTaGFyZWRCdWZmZXI+IHRyeUdldEZpbGVCYWNrZWRTaGFyZWRCdWZmZXJGcm9t
Q0ZVUkxDYWNoZWRSZXNwb25zZShDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKTsKIAotcHJvdGVjdGVk
OgotICAgIFdFQkNPUkVfRVhQT1JUIERpc2tDYWNoZU1vbml0b3IoY29uc3QgUmVzb3VyY2VSZXF1
ZXN0JiwgU2Vzc2lvbklELCBDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKTsKK3ByaXZhdGU6CisgICAg
RGlza0NhY2hlTW9uaXRvcihjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBTZXNzaW9uSUQsIENGQ2Fj
aGVkVVJMUmVzcG9uc2VSZWYpOwogCi0gICAgdmlydHVhbCB2b2lkIHJlc291cmNlQmVjYW1lRmls
ZUJhY2tlZChTaGFyZWRCdWZmZXImKTsKKyAgICB2b2lkIHJlc291cmNlQmVjYW1lRmlsZUJhY2tl
ZChTaGFyZWRCdWZmZXImKTsKIAogICAgIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVzb3VyY2VS
ZXF1ZXN0KCkgY29uc3QgeyByZXR1cm4gbV9yZXNvdXJjZVJlcXVlc3Q7IH0KICAgICBTZXNzaW9u
SUQgc2Vzc2lvbklEKCkgY29uc3QgeyByZXR1cm4gbV9zZXNzaW9uSUQ7IH0KIAotcHJpdmF0ZToK
ICAgICBSZXNvdXJjZVJlcXVlc3QgbV9yZXNvdXJjZVJlcXVlc3Q7CiAgICAgU2Vzc2lvbklEIG1f
c2Vzc2lvbklEOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jb2NvYS9E
aXNrQ2FjaGVNb25pdG9yQ29jb2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY29jb2EvRGlz
a0NhY2hlTW9uaXRvckNvY29hLm1tCmluZGV4IDY4NTgwMzYwYjhlYmNkY2FjYThhM2U5Mzg0OThh
MTk3NTUyZGMxNmEuLjZhYzQ1YTE2ZmU5NmMzOGE3MjkyOGMxOWM1NWRjMWVlM2NjZWFhNGUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jb2NvYS9EaXNrQ2FjaGVNb25pdG9yQ29j
b2EubW0KKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NvY29hL0Rpc2tDYWNoZU1vbml0b3JD
b2NvYS5tbQpAQCAtMjksMTEgKzI5LDggQEAKICNpbXBvcnQgIkNGTmV0d29ya1NQSS5oIgogI2lt
cG9ydCAiQ2FjaGVkUmVzb3VyY2UuaCIKICNpbXBvcnQgIk1lbW9yeUNhY2hlLmgiCi0jaW1wb3J0
ICJSZXNvdXJjZVJlcXVlc3QuaCIKLSNpbXBvcnQgIlNlc3Npb25JRC5oIgogI2ltcG9ydCAiU2hh
cmVkQnVmZmVyLmgiCiAjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5oPgotI2ltcG9ydCA8d3RmL1Bh
c3NSZWZQdHIuaD4KICNpbXBvcnQgPHd0Zi9SZWZQdHIuaD4KIAogI2lmIFVTRShXRUJfVEhSRUFE
KQpAQCAtNDUsOSArNDIsOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAvLyBUaGUgbWF4aW11bSBu
dW1iZXIgb2Ygc2Vjb25kcyB3ZSdsbCB0cnkgdG8gd2FpdCBmb3IgYSByZXNvdXJjZSB0byBiZSBk
aXNrIGNhY2hlZCBiZWZvcmUgd2UgZm9yZ2V0IHRoZSByZXF1ZXN0Lgogc3RhdGljIGNvbnN0IGRv
dWJsZSBkaXNrQ2FjaGVNb25pdG9yVGltZW91dCA9IDIwOwogCi1QYXNzUmVmUHRyPFNoYXJlZEJ1
ZmZlcj4gRGlza0NhY2hlTW9uaXRvcjo6dHJ5R2V0RmlsZUJhY2tlZFNoYXJlZEJ1ZmZlckZyb21D
RlVSTENhY2hlZFJlc3BvbnNlKENGQ2FjaGVkVVJMUmVzcG9uc2VSZWYgY2FjaGVkUmVzcG9uc2Up
CitSZWZQdHI8U2hhcmVkQnVmZmVyPiBEaXNrQ2FjaGVNb25pdG9yOjp0cnlHZXRGaWxlQmFja2Vk
U2hhcmVkQnVmZmVyRnJvbUNGVVJMQ2FjaGVkUmVzcG9uc2UoQ0ZDYWNoZWRVUkxSZXNwb25zZVJl
ZiBjYWNoZWRSZXNwb25zZSkKIHsKLSAgICBDRkRhdGFSZWYgZGF0YSA9IF9DRkNhY2hlZFVSTFJl
c3BvbnNlR2V0TWVtTWFwcGVkRGF0YShjYWNoZWRSZXNwb25zZSk7CisgICAgYXV0byBkYXRhID0g
X0NGQ2FjaGVkVVJMUmVzcG9uc2VHZXRNZW1NYXBwZWREYXRhKGNhY2hlZFJlc3BvbnNlKTsKICAg
ICBpZiAoIWRhdGEpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCkBAIC04Nyw4ICs4NCw3IEBA
IERpc2tDYWNoZU1vbml0b3I6OkRpc2tDYWNoZU1vbml0b3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0
JiByZXF1ZXN0LCBTZXNzaW9uSUQgc2VzCiAgICAgZGlzcGF0Y2hfYWZ0ZXIoZGlzcGF0Y2hfdGlt
ZShESVNQQVRDSF9USU1FX05PVywgTlNFQ19QRVJfU0VDICogZGlza0NhY2hlTW9uaXRvclRpbWVv
dXQpLCBkaXNwYXRjaF9nZXRfbWFpbl9xdWV1ZSgpLCBjYW5jZWxNb25pdG9yQmxvY2tUb1J1bik7
CiAKICAgICAvLyBTZXQgdXAgdGhlIGRpc2sgY2FjaGluZyBjYWxsYmFjayB0byBjcmVhdGUgdGhl
IFNoYXJlYWJsZVJlc291cmNlIGFuZCBzZW5kIGl0IHRvIHRoZSBXZWJQcm9jZXNzLgotICAgIENG
Q2FjaGVkVVJMUmVzcG9uc2VDYWxsQmFja0Jsb2NrIGJsb2NrID0gXihDRkNhY2hlZFVSTFJlc3Bv
bnNlUmVmIGNhY2hlZFJlc3BvbnNlKQotICAgIHsKKyAgICBhdXRvIGJsb2NrID0gXihDRkNhY2hl
ZFVSTFJlc3BvbnNlUmVmIGNhY2hlZFJlc3BvbnNlKSB7CiAgICAgICAgIEFTU0VSVChpc01haW5U
aHJlYWQoKSk7CiAgICAgICAgIC8vIElmIHRoZSBtb25pdG9yIGlzbid0IHRoZXJlIHRoZW4gaXQg
dGltZWQgb3V0IGJlZm9yZSB0aGlzIHJlc291cmNlIHdhcyBjYWNoZWQgdG8gZGlzay4KICAgICAg
ICAgaWYgKCFyYXdNb25pdG9yKQpAQCAtOTcsNyArOTMsNyBAQCBEaXNrQ2FjaGVNb25pdG9yOjpE
aXNrQ2FjaGVNb25pdG9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgU2Vzc2lvbklE
IHNlcwogICAgICAgICBhdXRvIG1vbml0b3IgPSBzdGQ6OnVuaXF1ZV9wdHI8RGlza0NhY2hlTW9u
aXRvcj4ocmF3TW9uaXRvcik7IC8vIEJhbGFuY2VkIGJ5ICJuZXcgRGlza0NhY2hlTW9uaXRvciIg
aW4gbW9uaXRvckZpbGVCYWNraW5nU3RvcmVDcmVhdGlvbi4KICAgICAgICAgcmF3TW9uaXRvciA9
IG51bGxwdHI7CiAKLSAgICAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZmlsZUJhY2tlZEJ1ZmZl
ciA9IERpc2tDYWNoZU1vbml0b3I6OnRyeUdldEZpbGVCYWNrZWRTaGFyZWRCdWZmZXJGcm9tQ0ZV
UkxDYWNoZWRSZXNwb25zZShjYWNoZWRSZXNwb25zZSk7CisgICAgICAgIGF1dG8gZmlsZUJhY2tl
ZEJ1ZmZlciA9IERpc2tDYWNoZU1vbml0b3I6OnRyeUdldEZpbGVCYWNrZWRTaGFyZWRCdWZmZXJG
cm9tQ0ZVUkxDYWNoZWRSZXNwb25zZShjYWNoZWRSZXNwb25zZSk7CiAgICAgICAgIGlmICghZmls
ZUJhY2tlZEJ1ZmZlcikKICAgICAgICAgICAgIHJldHVybjsKIApAQCAtMTA1LDggKzEwMSw3IEBA
IERpc2tDYWNoZU1vbml0b3I6OkRpc2tDYWNoZU1vbml0b3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0
JiByZXF1ZXN0LCBTZXNzaW9uSUQgc2VzCiAgICAgfTsKIAogI2lmIFVTRShXRUJfVEhSRUFEKQot
ICAgIENGQ2FjaGVkVVJMUmVzcG9uc2VDYWxsQmFja0Jsb2NrIGJsb2NrVG9SdW4gPSBeKENGQ2Fj
aGVkVVJMUmVzcG9uc2VSZWYgcmVzcG9uc2UpCi0gICAgeworICAgIGF1dG8gYmxvY2tUb1J1biA9
IF4oQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZiByZXNwb25zZSkgewogICAgICAgICBDRlJldGFpbihy
ZXNwb25zZSk7CiAgICAgICAgIFdlYlRocmVhZFJ1biheewogICAgICAgICAgICAgYmxvY2socmVz
cG9uc2UpOwpAQCAtMTE0LDE0ICsxMDksMTQgQEAgRGlza0NhY2hlTW9uaXRvcjo6RGlza0NhY2hl
TW9uaXRvcihjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFNlc3Npb25JRCBzZXMKICAg
ICAgICAgfSk7CiAgICAgfTsKICNlbHNlCi0gICAgQ0ZDYWNoZWRVUkxSZXNwb25zZUNhbGxCYWNr
QmxvY2sgYmxvY2tUb1J1biA9IGJsb2NrOworICAgIGF1dG8gYmxvY2tUb1J1biA9IGJsb2NrOwog
I2VuZGlmCiAgICAgX0NGQ2FjaGVkVVJMUmVzcG9uc2VTZXRCZWNhbWVGaWxlQmFja2VkQ2FsbEJh
Y2tCbG9jayhjYWNoZWRSZXNwb25zZSwgYmxvY2tUb1J1biwgZGlzcGF0Y2hfZ2V0X21haW5fcXVl
dWUoKSk7CiB9CiAKIHZvaWQgRGlza0NhY2hlTW9uaXRvcjo6cmVzb3VyY2VCZWNhbWVGaWxlQmFj
a2VkKFNoYXJlZEJ1ZmZlciYgZmlsZUJhY2tlZEJ1ZmZlcikKIHsKLSAgICBDYWNoZWRSZXNvdXJj
ZSogcmVzb3VyY2UgPSBNZW1vcnlDYWNoZTo6c2luZ2xldG9uKCkucmVzb3VyY2VGb3JSZXF1ZXN0
KG1fcmVzb3VyY2VSZXF1ZXN0LCBtX3Nlc3Npb25JRCk7CisgICAgYXV0byogcmVzb3VyY2UgPSBN
ZW1vcnlDYWNoZTo6c2luZ2xldG9uKCkucmVzb3VyY2VGb3JSZXF1ZXN0KG1fcmVzb3VyY2VSZXF1
ZXN0LCBtX3Nlc3Npb25JRCk7CiAgICAgaWYgKCFyZXNvdXJjZSkKICAgICAgICAgcmV0dXJuOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2UuY3Bw
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmNwcAppbmRleCBlZTQz
N2U4NjI4ZWJmNGU4NjMyN2NjNzcwMzBmNWY2OTRlMzBiYjJkLi5kY2NlMGE1YzNjZDgxNmNjODQ3
YmM3YWZlMmJhMjE2N2FjZDA4ODBjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
aWNvbi9JY29uRGF0YWJhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL0lj
b25EYXRhYmFzZS5jcHAKQEAgLTUzMyw3ICs1MzMsNyBAQCB2b2lkIEljb25EYXRhYmFzZTo6cGVy
Zm9ybVJlbGVhc2VJY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIHBhZ2VVUkxPcmlnaW5hbCwg
aQogICAgIGRlbGV0ZSBwYWdlUmVjb3JkOwogfQogCi12b2lkIEljb25EYXRhYmFzZTo6c2V0SWNv
bkRhdGFGb3JJY29uVVJMKFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBkYXRhT3JpZ2luYWwsIGNv
bnN0IFN0cmluZyYgaWNvblVSTE9yaWdpbmFsKQordm9pZCBJY29uRGF0YWJhc2U6OnNldEljb25E
YXRhRm9ySWNvblVSTChTaGFyZWRCdWZmZXIqIGRhdGFPcmlnaW5hbCwgY29uc3QgU3RyaW5nJiBp
Y29uVVJMT3JpZ2luYWwpCiB7ICAgIAogICAgIEFTU0VSVF9OT1RfU1lOQ19USFJFQUQoKTsKICAg
ICAKQEAgLTU0Miw3ICs1NDIsNyBAQCB2b2lkIEljb25EYXRhYmFzZTo6c2V0SWNvbkRhdGFGb3JJ
Y29uVVJMKFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBkYXRhT3JpZ2luYWwsCiAgICAgaWYgKCFp
c09wZW4oKSB8fCBpY29uVVJMT3JpZ2luYWwuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm47CiAg
ICAgCi0gICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZGF0YSA9IGRhdGFPcmlnaW5hbCA/IGRhdGFP
cmlnaW5hbC0+Y29weSgpIDogUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+KG51bGxwdHIpOworICAg
IGF1dG8gZGF0YSA9IGRhdGFPcmlnaW5hbCA/IFJlZlB0cjxTaGFyZWRCdWZmZXI+IHsgZGF0YU9y
aWdpbmFsLT5jb3B5KCkgfSA6IG51bGxwdHI7CiAgICAgU3RyaW5nIGljb25VUkwgPSBpY29uVVJM
T3JpZ2luYWwuaXNvbGF0ZWRDb3B5KCk7CiAgICAgCiAgICAgVmVjdG9yPFN0cmluZz4gcGFnZVVS
THM7CkBAIC04ODUsMTggKzg4NSwxNyBAQCBTdHJpbmcgSWNvbkRhdGFiYXNlOjpkZWZhdWx0RGF0
YWJhc2VGaWxlbmFtZSgpCiB9CiAKIC8vIFVubGlrZSBnZXRPckNyZWF0ZVBhZ2VVUkxSZWNvcmQo
KSwgZ2V0T3JDcmVhdGVJY29uUmVjb3JkKCkgZG9lcyBub3QgbWFyayB0aGUgaWNvbiBhcyAiaW50
ZXJlc3RlZCBpbiBpbXBvcnQiCi1QYXNzUmVmUHRyPEljb25SZWNvcmQ+IEljb25EYXRhYmFzZTo6
Z2V0T3JDcmVhdGVJY29uUmVjb3JkKGNvbnN0IFN0cmluZyYgaWNvblVSTCkKK1JlZjxJY29uUmVj
b3JkPiBJY29uRGF0YWJhc2U6OmdldE9yQ3JlYXRlSWNvblJlY29yZChjb25zdCBTdHJpbmcmIGlj
b25VUkwpCiB7CiAgICAgLy8gQ2xpZW50cyBvZiBnZXRPckNyZWF0ZUljb25SZWNvcmQoKSBhcmUg
cmVxdWlyZWQgdG8gYWNxdWlyZSB0aGUgbV91cmxBbmRJY29uTG9jayBiZWZvcmUgY2FsbGluZyB0
aGlzIG1ldGhvZAogICAgIEFTU0VSVCghbV91cmxBbmRJY29uTG9jay50cnlMb2NrKCkpOwogCi0g
ICAgaWYgKEljb25SZWNvcmQqIGljb24gPSBtX2ljb25VUkxUb1JlY29yZE1hcC5nZXQoaWNvblVS
TCkpCi0gICAgICAgIHJldHVybiBpY29uOworICAgIGlmIChhdXRvKiBpY29uID0gbV9pY29uVVJM
VG9SZWNvcmRNYXAuZ2V0KGljb25VUkwpKQorICAgICAgICByZXR1cm4gKmljb247CiAKICAgICBh
dXRvIG5ld0ljb24gPSBJY29uUmVjb3JkOjpjcmVhdGUoaWNvblVSTCk7CiAgICAgbV9pY29uVVJM
VG9SZWNvcmRNYXAuc2V0KGljb25VUkwsIG5ld0ljb24ucHRyKCkpOwotCi0gICAgcmV0dXJuIFdU
Rk1vdmUobmV3SWNvbik7CisgICAgcmV0dXJuIG5ld0ljb247CiB9CiAKIC8vIFRoaXMgbWV0aG9k
IHJldHJpZXZlcyB0aGUgZXhpc3RpbmcgUGFnZVVSTFJlY29yZCwgb3IgY3JlYXRlcyBhIG5ldyBv
bmUgYW5kIG1hcmtzIGl0IGFzICJpbnRlcmVzdGVkIGluIHRoZSBpbXBvcnQiIGZvciBsYXRlciBu
b3RpZmljYXRpb24KQEAgLTE5MTcsNyArMTkxNiw3IEBAIGludDY0X3QgSWNvbkRhdGFiYXNlOjph
ZGRJY29uVVJMVG9TUUxEYXRhYmFzZShjb25zdCBTdHJpbmcmIGljb25VUkwpCiAgICAgcmV0dXJu
IGljb25JRDsKIH0KIAotUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IEljb25EYXRhYmFzZTo6Z2V0
SW1hZ2VEYXRhRm9ySWNvblVSTEZyb21TUUxEYXRhYmFzZShjb25zdCBTdHJpbmcmIGljb25VUkwp
CitSZWZQdHI8U2hhcmVkQnVmZmVyPiBJY29uRGF0YWJhc2U6OmdldEltYWdlRGF0YUZvckljb25V
UkxGcm9tU1FMRGF0YWJhc2UoY29uc3QgU3RyaW5nJiBpY29uVVJMKQogewogICAgIEFTU0VSVF9J
Q09OX1NZTkNfVEhSRUFEKCk7CiAgICAgCkBAIC0xOTM2LDcgKzE5MzUsNyBAQCBQYXNzUmVmUHRy
PFNoYXJlZEJ1ZmZlcj4gSWNvbkRhdGFiYXNlOjpnZXRJbWFnZURhdGFGb3JJY29uVVJMRnJvbVNR
TERhdGFiYXNlKGNvbgogCiAgICAgbV9nZXRJbWFnZURhdGFGb3JJY29uVVJMU3RhdGVtZW50LT5y
ZXNldCgpOwogICAgIAotICAgIHJldHVybiBXVEZNb3ZlKGltYWdlRGF0YSk7CisgICAgcmV0dXJu
IGltYWdlRGF0YTsKIH0KIAogdm9pZCBJY29uRGF0YWJhc2U6OnJlbW92ZUljb25Gcm9tU1FMRGF0
YWJhc2UoY29uc3QgU3RyaW5nJiBpY29uVVJMKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9J
Y29uRGF0YWJhc2UuaAppbmRleCBkNWQ0NTJjZWZkMzdjMGFjZTgxMmFkYTM1MDM0NzBhZTYyOGQ3
YzllLi4wNjFhZjRhMTI1NTc3MWRlMTFhMzJmNTY4M2MwZWZkYTU5MjkzYjlkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2UuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2UuaApAQCAtNDUsNiArNDUsNyBAQCBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAvLyBEdW1teSB2ZXJzaW9uIG9mIEljb25EYXRhYmFzZSB0aGF0IGRv
ZXMgbm90aGluZy4KIGNsYXNzIEljb25EYXRhYmFzZSBmaW5hbCA6IHB1YmxpYyBJY29uRGF0YWJh
c2VCYXNlIHsKICAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKKwogcHVibGljOgogICAgIHN0
YXRpYyB2b2lkIGRlbGF5RGF0YWJhc2VDbGVhbnVwKCkgeyB9CiAgICAgc3RhdGljIHZvaWQgYWxs
b3dEYXRhYmFzZUNsZWFudXAoKSB7IH0KQEAgLTcwLDMyICs3MSwzMiBAQCBwdWJsaWM6CiAgICAg
V0VCQ09SRV9FWFBPUlQgSWNvbkRhdGFiYXNlKCk7CiAgICAgfkljb25EYXRhYmFzZSgpOwogCi0g
ICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRDbGllbnQoSWNvbkRhdGFiYXNlQ2xpZW50Kikgb3Zl
cnJpZGU7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRDbGllbnQoSWNvbkRhdGFiYXNlQ2xp
ZW50KikgZmluYWw7CiAKLSAgICBXRUJDT1JFX0VYUE9SVCBib29sIG9wZW4oY29uc3QgU3RyaW5n
JiBkaXJlY3RvcnksIGNvbnN0IFN0cmluZyYgZmlsZW5hbWUpIG92ZXJyaWRlOwotICAgIFdFQkNP
UkVfRVhQT1JUIHZvaWQgY2xvc2UoKSBvdmVycmlkZTsKKyAgICBXRUJDT1JFX0VYUE9SVCBib29s
IG9wZW4oY29uc3QgU3RyaW5nJiBkaXJlY3RvcnksIGNvbnN0IFN0cmluZyYgZmlsZW5hbWUpIGZp
bmFsOworICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgY2xvc2UoKSBmaW5hbDsKICAgICAgICAgICAg
IAotICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgcmVtb3ZlQWxsSWNvbnMoKSBvdmVycmlkZTsKKyAg
ICBXRUJDT1JFX0VYUE9SVCB2b2lkIHJlbW92ZUFsbEljb25zKCkgZmluYWw7CiAKICAgICB2b2lk
IHJlYWRJY29uRm9yUGFnZVVSTEZyb21EaXNrKGNvbnN0IFN0cmluZyYpOwogCi0gICAgV0VCQ09S
RV9FWFBPUlQgSW1hZ2UqIGRlZmF1bHRJY29uKGNvbnN0IEludFNpemUmKSBvdmVycmlkZTsKKyAg
ICBXRUJDT1JFX0VYUE9SVCBJbWFnZSogZGVmYXVsdEljb24oY29uc3QgSW50U2l6ZSYpIGZpbmFs
OwogCi0gICAgV0VCQ09SRV9FWFBPUlQgdm9pZCByZXRhaW5JY29uRm9yUGFnZVVSTChjb25zdCBT
dHJpbmcmKSBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHJlbGVhc2VJY29uRm9y
UGFnZVVSTChjb25zdCBTdHJpbmcmKSBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lk
IHNldEljb25EYXRhRm9ySWNvblVSTChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZGF0YSwgY29u
c3QgU3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRJY29uVVJM
Rm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIGljb25VUkwsIGNvbnN0IFN0cmluZyYgcGFnZVVSTCkg
b3ZlcnJpZGU7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCByZXRhaW5JY29uRm9yUGFnZVVSTChj
b25zdCBTdHJpbmcmKSBmaW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHJlbGVhc2VJY29u
Rm9yUGFnZVVSTChjb25zdCBTdHJpbmcmKSBmaW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lk
IHNldEljb25EYXRhRm9ySWNvblVSTChTaGFyZWRCdWZmZXIqIGRhdGEsIGNvbnN0IFN0cmluZyYg
aWNvblVSTCkgZmluYWw7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRJY29uVVJMRm9yUGFn
ZVVSTChjb25zdCBTdHJpbmcmIGljb25VUkwsIGNvbnN0IFN0cmluZyYgcGFnZVVSTCkgZmluYWw7
CiAKLSAgICBXRUJDT1JFX0VYUE9SVCBJbWFnZSogc3luY2hyb25vdXNJY29uRm9yUGFnZVVSTChj
b25zdCBTdHJpbmcmLCBjb25zdCBJbnRTaXplJikgb3ZlcnJpZGU7Ci0gICAgTmF0aXZlSW1hZ2VQ
dHIgc3luY2hyb25vdXNOYXRpdmVJY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIHBhZ2VVUkxP
cmlnaW5hbCwgY29uc3QgSW50U2l6ZSYpIG92ZXJyaWRlOwotICAgIFdFQkNPUkVfRVhQT1JUIFN0
cmluZyBzeW5jaHJvbm91c0ljb25VUkxGb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRl
OwotICAgIGJvb2wgc3luY2hyb25vdXNJY29uRGF0YUtub3duRm9ySWNvblVSTChjb25zdCBTdHJp
bmcmKSBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCBJY29uTG9hZERlY2lzaW9uIHN5bmNo
cm9ub3VzTG9hZERlY2lzaW9uRm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBEb2N1bWVudExvYWRl
ciopIG92ZXJyaWRlOworICAgIFdFQkNPUkVfRVhQT1JUIEltYWdlKiBzeW5jaHJvbm91c0ljb25G
b3JQYWdlVVJMKGNvbnN0IFN0cmluZyYsIGNvbnN0IEludFNpemUmKSBmaW5hbDsKKyAgICBOYXRp
dmVJbWFnZVB0ciBzeW5jaHJvbm91c05hdGl2ZUljb25Gb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYg
cGFnZVVSTE9yaWdpbmFsLCBjb25zdCBJbnRTaXplJikgZmluYWw7CisgICAgV0VCQ09SRV9FWFBP
UlQgU3RyaW5nIHN5bmNocm9ub3VzSWNvblVSTEZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikgZmlu
YWw7CisgICAgYm9vbCBzeW5jaHJvbm91c0ljb25EYXRhS25vd25Gb3JJY29uVVJMKGNvbnN0IFN0
cmluZyYpIGZpbmFsOworICAgIFdFQkNPUkVfRVhQT1JUIEljb25Mb2FkRGVjaXNpb24gc3luY2hy
b25vdXNMb2FkRGVjaXNpb25Gb3JJY29uVVJMKGNvbnN0IFN0cmluZyYsIERvY3VtZW50TG9hZGVy
KikgZmluYWw7CiAKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldEVuYWJsZWQoYm9vbCkgb3Zl
cnJpZGU7Ci0gICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBpc0VuYWJsZWQoKSBjb25zdCBvdmVycmlk
ZTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldEVuYWJsZWQoYm9vbCk7CisgICAgV0VCQ09S
RV9FWFBPUlQgYm9vbCBpc0VuYWJsZWQoKSBjb25zdCBmaW5hbDsKIAotICAgIFdFQkNPUkVfRVhQ
T1JUIHZvaWQgc2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZChib29sIGZsYWcpIG92ZXJyaWRlOwor
ICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZChib29sIGZs
YWcpIGZpbmFsOwogICAgIGJvb2wgaXNQcml2YXRlQnJvd3NpbmdFbmFibGVkKCkgY29uc3Q7CiAK
ICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgdm9pZCBkZWxheURhdGFiYXNlQ2xlYW51cCgpOwpA
QCAtMTAzLDEwICsxMDQsMTAgQEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyB2
b2lkIGNoZWNrSW50ZWdyaXR5QmVmb3JlT3BlbmluZygpOwogCiAgICAgLy8gU3VwcG9ydCBmb3Ig
V2ViQ29yZVN0YXRpc3RpY3MgaW4gV2ViS2l0Ci0gICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90IHBh
Z2VVUkxNYXBwaW5nQ291bnQoKSBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCBzaXplX3Qg
cmV0YWluZWRQYWdlVVJMQ291bnQoKSBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCBzaXpl
X3QgaWNvblJlY29yZENvdW50KCkgb3ZlcnJpZGU7Ci0gICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90
IGljb25SZWNvcmRDb3VudFdpdGhEYXRhKCkgb3ZlcnJpZGU7CisgICAgV0VCQ09SRV9FWFBPUlQg
c2l6ZV90IHBhZ2VVUkxNYXBwaW5nQ291bnQoKSBmaW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCBz
aXplX3QgcmV0YWluZWRQYWdlVVJMQ291bnQoKSBmaW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCBz
aXplX3QgaWNvblJlY29yZENvdW50KCkgZmluYWw7CisgICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90
IGljb25SZWNvcmRDb3VudFdpdGhEYXRhKCkgZmluYWw7CiAKIHByaXZhdGU6CiAgICAgZnJpZW5k
IEljb25EYXRhYmFzZUJhc2UmIGljb25EYXRhYmFzZSgpOwpAQCAtMTMwLDEyICsxMzEsMTIgQEAg
cHJpdmF0ZToKIAogLy8gKioqIEFueSBUaHJlYWQgKioqCiBwdWJsaWM6Ci0gICAgV0VCQ09SRV9F
WFBPUlQgYm9vbCBpc09wZW4oKSBjb25zdCBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCBT
dHJpbmcgZGF0YWJhc2VQYXRoKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgV0VCQ09SRV9FWFBPUlQg
Ym9vbCBpc09wZW4oKSBjb25zdCBmaW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCBTdHJpbmcgZGF0
YWJhc2VQYXRoKCkgY29uc3QgZmluYWw7CiAgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFN0cmlu
ZyBkZWZhdWx0RGF0YWJhc2VGaWxlbmFtZSgpOwogCiBwcml2YXRlOgotICAgIFBhc3NSZWZQdHI8
SWNvblJlY29yZD4gZ2V0T3JDcmVhdGVJY29uUmVjb3JkKGNvbnN0IFN0cmluZyYgaWNvblVSTCk7
CisgICAgUmVmPEljb25SZWNvcmQ+IGdldE9yQ3JlYXRlSWNvblJlY29yZChjb25zdCBTdHJpbmcm
IGljb25VUkwpOwogICAgIFBhZ2VVUkxSZWNvcmQqIGdldE9yQ3JlYXRlUGFnZVVSTFJlY29yZChj
b25zdCBTdHJpbmcmIHBhZ2VVUkwpOwogICAgIAogICAgIGJvb2wgbV9pc0VuYWJsZWQ7CkBAIC0x
NzgsNyArMTc5LDcgQEAgcHJpdmF0ZToKIAogLy8gKioqIFN5bmMgVGhyZWFkIE9ubHkgKioqCiBw
dWJsaWM6Ci0gICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBzaG91bGRTdG9wVGhyZWFkQWN0aXZpdHko
KSBjb25zdCBvdmVycmlkZTsKKyAgICBXRUJDT1JFX0VYUE9SVCBib29sIHNob3VsZFN0b3BUaHJl
YWRBY3Rpdml0eSgpIGNvbnN0IGZpbmFsOwogCiBwcml2YXRlOiAgICAKICAgICBzdGF0aWMgdm9p
ZCBpY29uRGF0YWJhc2VTeW5jVGhyZWFkU3RhcnQodm9pZCAqKTsKQEAgLTIxMyw3ICsyMTQsNyBA
QCBwcml2YXRlOgogICAgIHZvaWQgcmVtb3ZlUGFnZVVSTEZyb21TUUxEYXRhYmFzZShjb25zdCBT
dHJpbmcmIHBhZ2VVUkwpOwogICAgIGludDY0X3QgZ2V0SWNvbklERm9ySWNvblVSTEZyb21TUUxE
YXRhYmFzZShjb25zdCBTdHJpbmcmIGljb25VUkwpOwogICAgIGludDY0X3QgYWRkSWNvblVSTFRv
U1FMRGF0YWJhc2UoY29uc3QgU3RyaW5nJik7Ci0gICAgUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+
IGdldEltYWdlRGF0YUZvckljb25VUkxGcm9tU1FMRGF0YWJhc2UoY29uc3QgU3RyaW5nJiBpY29u
VVJMKTsKKyAgICBSZWZQdHI8U2hhcmVkQnVmZmVyPiBnZXRJbWFnZURhdGFGb3JJY29uVVJMRnJv
bVNRTERhdGFiYXNlKGNvbnN0IFN0cmluZyYgaWNvblVSTCk7CiAgICAgdm9pZCByZW1vdmVJY29u
RnJvbVNRTERhdGFiYXNlKGNvbnN0IFN0cmluZyYgaWNvblVSTCk7CiAgICAgdm9pZCB3cml0ZUlj
b25TbmFwc2hvdFRvU1FMRGF0YWJhc2UoY29uc3QgSWNvblNuYXBzaG90Jik7ICAgIAogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2VCYXNlLmggYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2VCYXNlLmgKaW5kZXggOTg2ZDRk
OTZmNTcyN2Y0NmExZjJlODc1MDM5ZTZjODYwMzJmNjM4MS4uZDQwNTFiOTM2YzcxMGZjMjljNzFk
NTJlNDcyN2JhODViMGFlYjk5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2lj
b24vSWNvbkRhdGFiYXNlQmFzZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL0lj
b25EYXRhYmFzZUJhc2UuaApAQCAtMjgsNyArMjgsNiBAQAogI2luY2x1ZGUgIk5hdGl2ZUltYWdl
LmgiCiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KICNpbmNsdWRlIDx3dGYvTm9uY29weWFibGUu
aD4KLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVk
Lmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTM5LDExICszOCw3IEBAIGNsYXNzIEltYWdl
OwogY2xhc3MgSW50U2l6ZTsKIGNsYXNzIFNoYXJlZEJ1ZmZlcjsKIAotZW51bSBJY29uTG9hZERl
Y2lzaW9uIHsKLSAgICBJY29uTG9hZFllcywKLSAgICBJY29uTG9hZE5vLAotICAgIEljb25Mb2Fk
VW5rbm93bgotfTsKK2VudW0gSWNvbkxvYWREZWNpc2lvbiB7IEljb25Mb2FkWWVzLCBJY29uTG9h
ZE5vLCBJY29uTG9hZFVua25vd24gfTsKIAogY2xhc3MgQ2FsbGJhY2tCYXNlIDogcHVibGljIFJl
ZkNvdW50ZWQ8Q2FsbGJhY2tCYXNlPiB7CiBwdWJsaWM6CkBAIC0xMzQsNyArMTI5LDcgQEAgcHVi
bGljOgogICAgICAgICBtX2NhbGxiYWNrKHJlc3VsdCwgY29udGV4dCgpKTsKICAgICAgICAgbV9j
YWxsYmFjayA9IG51bGxwdHI7CiAgICAgfQotICAgIAorCiAgICAgdm9pZCBpbnZhbGlkYXRlKCkK
ICAgICB7CiAgICAgICAgIG1fY2FsbGJhY2sgPSBudWxscHRyOwpAQCAtMTUxLDI2ICsxNDYsMjIg
QEAgcHJpdmF0ZToKICAgICBDYWxsYmFja0Z1bmN0aW9uIG1fY2FsbGJhY2s7CiB9OwogCi10eXBl
ZGVmIEVudW1DYWxsYmFjazxJY29uTG9hZERlY2lzaW9uPiBJY29uTG9hZERlY2lzaW9uQ2FsbGJh
Y2s7Ci10eXBlZGVmIE9iamVjdENhbGxiYWNrPFNoYXJlZEJ1ZmZlcio+IEljb25EYXRhQ2FsbGJh
Y2s7Cit1c2luZyBJY29uTG9hZERlY2lzaW9uQ2FsbGJhY2sgPSBFbnVtQ2FsbGJhY2s8SWNvbkxv
YWREZWNpc2lvbj47Cit1c2luZyBJY29uRGF0YUNhbGxiYWNrID0gT2JqZWN0Q2FsbGJhY2s8U2hh
cmVkQnVmZmVyKj47CiAKIGNsYXNzIFdFQkNPUkVfRVhQT1JUIEljb25EYXRhYmFzZUJhc2Ugewog
ICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKEljb25EYXRhYmFzZUJhc2UpOwogCi1wcm90ZWN0ZWQ6
Ci0gICAgSWNvbkRhdGFiYXNlQmFzZSgpIHsgfQotCiBwdWJsaWM6CiAgICAgdmlydHVhbCB+SWNv
bkRhdGFiYXNlQmFzZSgpIHsgfQogCi0gICAgLy8gVXNlZCBpbnRlcm5hbGx5IGJ5IFdlYkNvcmUK
ICAgICB2aXJ0dWFsIGJvb2wgaXNFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KLSAg
ICAgICAgCisKICAgICB2aXJ0dWFsIHZvaWQgcmV0YWluSWNvbkZvclBhZ2VVUkwoY29uc3QgU3Ry
aW5nJikgeyB9CiAgICAgdmlydHVhbCB2b2lkIHJlbGVhc2VJY29uRm9yUGFnZVVSTChjb25zdCBT
dHJpbmcmKSB7IH0KIAotICAgIHZpcnR1YWwgdm9pZCBzZXRJY29uVVJMRm9yUGFnZVVSTChjb25z
dCBTdHJpbmcmLCBjb25zdCBTdHJpbmcmKSB7IH0KLSAgICB2aXJ0dWFsIHZvaWQgc2V0SWNvbkRh
dGFGb3JJY29uVVJMKFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiwgY29uc3QgU3RyaW5nJikgeyB9
CisgICAgdmlydHVhbCB2b2lkIHNldEljb25VUkxGb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYgLypp
Y29uVVJMKi8sIGNvbnN0IFN0cmluZyYgLypwYWdlVVJMKi8pIHsgfQorICAgIHZpcnR1YWwgdm9p
ZCBzZXRJY29uRGF0YUZvckljb25VUkwoU2hhcmVkQnVmZmVyKiwgY29uc3QgU3RyaW5nJiAvKmlj
b25VUkwqLykgeyB9CiAKICAgICAvLyBTeW5jaHJvbm91cyBjYWxscyB1c2VkIGludGVybmFsbHkg
YnkgV2ViQ29yZS4KICAgICAvLyBVc2FnZSBzaG91bGQgYmUgcmVwbGFjZWQgYnkgYXN5bmNocm9u
b3VzIGNhbGxzLgpAQCAtMTgyLDEyICsxNzMsMTIgQEAgcHVibGljOgogCiAgICAgLy8gQXN5bmNo
cm9ub3VzIGNhbGxzIHdlIHNob3VsZCB1c2UgdG8gcmVwbGFjZSB0aGUgYWJvdmUgd2hlbiBzdXBw
b3J0ZWQuCiAgICAgdmlydHVhbCBib29sIHN1cHBvcnRzQXN5bmNocm9ub3VzTW9kZSgpIHsgcmV0
dXJuIGZhbHNlOyB9Ci0gICAgdmlydHVhbCB2b2lkIGxvYWREZWNpc2lvbkZvckljb25VUkwoY29u
c3QgU3RyaW5nJiwgUGFzc1JlZlB0cjxJY29uTG9hZERlY2lzaW9uQ2FsbGJhY2s+KSB7IH0KLSAg
ICB2aXJ0dWFsIHZvaWQgaWNvbkRhdGFGb3JJY29uVVJMKGNvbnN0IFN0cmluZyYsIFBhc3NSZWZQ
dHI8SWNvbkRhdGFDYWxsYmFjaz4pIHsgfQotICAgIAorICAgIHZpcnR1YWwgdm9pZCBsb2FkRGVj
aXNpb25Gb3JJY29uVVJMKGNvbnN0IFN0cmluZyYsIEljb25Mb2FkRGVjaXNpb25DYWxsYmFjayYp
IHsgfQorICAgIHZpcnR1YWwgdm9pZCBpY29uRGF0YUZvckljb25VUkwoY29uc3QgU3RyaW5nJiwg
SWNvbkRhdGFDYWxsYmFjayYpIHsgfQogCiAgICAgLy8gVXNlZCB3aXRoaW4gb25lIG9yIG1vcmUg
V2ViS2l0IHBvcnRzLgogICAgIC8vIFdlIHNob3VsZCB0cnkgdG8gcmVtb3ZlIHRoZXNlIGRlcGVu
ZGVuY2llcyBmcm9tIHRoZSBJY29uRGF0YWJhc2VCYXNlIGNsYXNzLgorCiAgICAgdmlydHVhbCB2
b2lkIHNldEVuYWJsZWQoYm9vbCkgeyB9CiAKICAgICB2aXJ0dWFsIEltYWdlKiBkZWZhdWx0SWNv
bihjb25zdCBJbnRTaXplJikgeyByZXR1cm4gbnVsbHB0cjsgfQpAQCAtMjA1LDEwICsxOTYsMTIg
QEAgcHVibGljOgogCiAgICAgdmlydHVhbCB2b2lkIHNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQo
Ym9vbCkgeyB9CiAgICAgdmlydHVhbCB2b2lkIHNldENsaWVudChJY29uRGF0YWJhc2VDbGllbnQq
KSB7IH0KLSAgICAKKwogICAgIHZpcnR1YWwgYm9vbCBpc09wZW4oKSBjb25zdCB7IHJldHVybiBm
YWxzZTsgfQogICAgIHZpcnR1YWwgU3RyaW5nIGRhdGFiYXNlUGF0aCgpIGNvbnN0OwogCitwcm90
ZWN0ZWQ6CisgICAgSWNvbkRhdGFiYXNlQmFzZSgpID0gZGVmYXVsdDsKIH07CiAKIC8vIEZ1bmN0
aW9ucyB0byBnZXQvc2V0IHRoZSBnbG9iYWwgaWNvbiBkYXRhYmFzZS4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL1BhZ2VVUkxSZWNvcmQuY3BwIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2ljb24vUGFnZVVSTFJlY29yZC5jcHAKaW5kZXggZjhiMjMxNGNmMTE4Y2I5ZDg2
OGMxNDBkOGI4MmVhMTM1NDFkYjhiMC4uOTlkZGVkOGYyMDVmM2FhYmY0ZWNmODBkMDc1YWFjODVm
OTYyOTFiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vUGFnZVVSTFJl
Y29yZC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vUGFnZVVSTFJlY29yZC5j
cHAKQEAgLTM1LDI5ICszNSwyOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFBhZ2VVUkxSZWNv
cmQ6OlBhZ2VVUkxSZWNvcmQoY29uc3QgU3RyaW5nJiBwYWdlVVJMKQogICAgIDogbV9wYWdlVVJM
KHBhZ2VVUkwpCi0gICAgLCBtX3JldGFpbkNvdW50KDApCiB7CiB9CiAKIFBhZ2VVUkxSZWNvcmQ6
On5QYWdlVVJMUmVjb3JkKCkKIHsKLSAgICBzZXRJY29uUmVjb3JkKG51bGxwdHIpOworICAgIGlm
IChtX2ljb25SZWNvcmQpCisgICAgICAgIG1faWNvblJlY29yZC0+bV9yZXRhaW5pbmdQYWdlVVJM
cy5yZW1vdmUobV9wYWdlVVJMKTsKIH0KIAotdm9pZCBQYWdlVVJMUmVjb3JkOjpzZXRJY29uUmVj
b3JkKFBhc3NSZWZQdHI8SWNvblJlY29yZD4gaWNvbikKK3ZvaWQgUGFnZVVSTFJlY29yZDo6c2V0
SWNvblJlY29yZChSZWZQdHI8SWNvblJlY29yZD4mJiBpY29uKQogewogICAgIGlmIChtX2ljb25S
ZWNvcmQpCiAgICAgICAgIG1faWNvblJlY29yZC0+bV9yZXRhaW5pbmdQYWdlVVJMcy5yZW1vdmUo
bV9wYWdlVVJMKTsKLSAgICAgICAgCi0gICAgbV9pY29uUmVjb3JkID0gaWNvbjsKLSAgICAKKwor
ICAgIG1faWNvblJlY29yZCA9IFdURk1vdmUoaWNvbik7CisKICAgICBpZiAobV9pY29uUmVjb3Jk
KQogICAgICAgICBtX2ljb25SZWNvcmQtPm1fcmV0YWluaW5nUGFnZVVSTHMuYWRkKG1fcGFnZVVS
TCk7CiB9CiAgICAgCiBQYWdlVVJMU25hcHNob3QgUGFnZVVSTFJlY29yZDo6c25hcHNob3QoYm9v
bCBmb3JEZWxldGlvbikgY29uc3QgCiB7Ci0gICAgcmV0dXJuIFBhZ2VVUkxTbmFwc2hvdChtX3Bh
Z2VVUkwsIChtX2ljb25SZWNvcmQgJiYgIWZvckRlbGV0aW9uKSA/IG1faWNvblJlY29yZC0+aWNv
blVSTCgpIDogU3RyaW5nKCkpOworICAgIHJldHVybiB7IG1fcGFnZVVSTCwgKG1faWNvblJlY29y
ZCAmJiAhZm9yRGVsZXRpb24pID8gbV9pY29uUmVjb3JkLT5pY29uVVJMKCkgOiBTdHJpbmcoKSB9
OwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvaWNvbi9QYWdlVVJMUmVjb3JkLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNv
bi9QYWdlVVJMUmVjb3JkLmgKaW5kZXggZWZlZDM0NTBjNTJkNzkwNDNmM2JiNjJmNzBmMjZmM2Zk
ZmNlY2IzZC4uMTg5ODc1ZTMyZDhhNzRkZTQxN2Q1OWUxNmJkNDBjYTc4YTkyMGU4MSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vUGFnZVVSTFJlY29yZC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL1BhZ2VVUkxSZWNvcmQuaApAQCAtNjEsNyArNjEsNyBA
QCBwdWJsaWM6CiAKICAgICBpbmxpbmUgU3RyaW5nIHVybCgpIGNvbnN0IHsgcmV0dXJuIG1fcGFn
ZVVSTDsgfQogICAgIAotICAgIHZvaWQgc2V0SWNvblJlY29yZChQYXNzUmVmUHRyPEljb25SZWNv
cmQ+KTsKKyAgICB2b2lkIHNldEljb25SZWNvcmQoUmVmUHRyPEljb25SZWNvcmQ+JiYpOwogICAg
IEljb25SZWNvcmQqIGljb25SZWNvcmQoKSB7IHJldHVybiBtX2ljb25SZWNvcmQuZ2V0KCk7IH0K
IAogICAgIFBhZ2VVUkxTbmFwc2hvdCBzbmFwc2hvdChib29sIGZvckRlbGV0aW9uID0gZmFsc2Up
IGNvbnN0OwpAQCAtODIsMTIgKzgyLDEyIEBAIHB1YmxpYzoKICAgICAgICAgcmV0dXJuIG1fcmV0
YWluQ291bnQgPiAwOwogICAgIH0KIAotICAgIGlubGluZSBpbnQgcmV0YWluQ291bnQoKSBjb25z
dCB7IHJldHVybiBtX3JldGFpbkNvdW50OyB9CisgICAgaW50IHJldGFpbkNvdW50KCkgY29uc3Qg
eyByZXR1cm4gbV9yZXRhaW5Db3VudDsgfQogCiBwcml2YXRlOgogICAgIFN0cmluZyBtX3BhZ2VV
Ukw7CiAgICAgUmVmUHRyPEljb25SZWNvcmQ+IG1faWNvblJlY29yZDsKLSAgICBpbnQgbV9yZXRh
aW5Db3VudDsKKyAgICBpbnQgbV9yZXRhaW5Db3VudCB7IDAgfTsKIH07CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pb3MvUXVpY2tM
b29rLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaW9zL1F1aWNrTG9vay5oCmluZGV4IDU1M2Nl
ZDUyNTY1ZjlhYjZkNDAzODhjMTM2ZTUzYTdlNjllNGM3NjEuLjZmZDFjYzY4ZWI2ZDRmMThhZTgx
ZTU3MzE3N2I3NmE1ZGE0NGQ1YTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9p
b3MvUXVpY2tMb29rLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2lvcy9RdWlja0xvb2su
aApAQCAtODQsNyArODQsNyBAQCBwdWJsaWM6CiAKICAgICBXRUJDT1JFX0VYUE9SVCBOU1VSTFJl
c3BvbnNlICpuc1Jlc3BvbnNlKCk7CiAKLSAgICB2b2lkIHNldENsaWVudChQYXNzUmVmUHRyPFF1
aWNrTG9va0hhbmRsZUNsaWVudD4gY2xpZW50KSB7IG1fY2xpZW50ID0gY2xpZW50OyB9CisgICAg
dm9pZCBzZXRDbGllbnQoUmVmPFF1aWNrTG9va0hhbmRsZUNsaWVudD4mJiBjbGllbnQpIHsgbV9j
bGllbnQgPSBXVEZNb3ZlKGNsaWVudCk7IH0KIAogICAgIFdFQkNPUkVfRVhQT1JUIFN0cmluZyBw
cmV2aWV3RmlsZU5hbWUoKSBjb25zdDsKICAgICBXRUJDT1JFX0VYUE9SVCBTdHJpbmcgcHJldmll
d1VUSSgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2lvcy9RdWlj
a0xvb2subW0gYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaW9zL1F1aWNrTG9vay5tbQppbmRleCBk
MTQyMTQ3NjdjYjU3YWMzMDJjYjFlYjFiNTY3MjIwMzQ1Mjc3ZjNiLi4yODRkNDJlMWZmNTI0OGRk
NGMzYjI2NmNiODRiOTI0ZWMzNWI3NDIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvaW9zL1F1aWNrTG9vay5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaW9zL1F1aWNr
TG9vay5tbQpAQCAtMTg5LDEzICsxODksMTMgQEAgQGVuZAogCiBAaW1wbGVtZW50YXRpb24gV2Vi
UmVzb3VyY2VMb2FkZXJRdWlja0xvb2tEZWxlZ2F0ZQogCi0tIChpZClpbml0V2l0aFJlc291cmNl
TG9hZGVyOihQYXNzUmVmUHRyPFJlc291cmNlTG9hZGVyPilyZXNvdXJjZUxvYWRlcgorLSAoaWQp
aW5pdFdpdGhSZXNvdXJjZUxvYWRlcjooUmVzb3VyY2VMb2FkZXImKXJlc291cmNlTG9hZGVyCiB7
CiAgICAgc2VsZiA9IFtzdXBlciBpbml0XTsKICAgICBpZiAoIXNlbGYpCiAgICAgICAgIHJldHVy
biBuaWw7CiAKLSAgICBfcmVzb3VyY2VMb2FkZXIgPSByZXNvdXJjZUxvYWRlcjsKKyAgICBfcmVz
b3VyY2VMb2FkZXIgPSAmcmVzb3VyY2VMb2FkZXI7CiAgICAgcmV0dXJuIHNlbGY7CiB9CiAKQEAg
LTMzMSw3ICszMzEsNyBAQCBzdGQ6OnVuaXF1ZV9wdHI8UXVpY2tMb29rSGFuZGxlPiBRdWlja0xv
b2tIYW5kbGU6OmNyZWF0ZShSZXNvdXJjZUxvYWRlciYgbG9hZGVyLAogewogICAgIEFTU0VSVChz
aG91bGRDcmVhdGVGb3JNSU1FVHlwZShyZXNwb25zZS5taW1lVHlwZSgpKSk7CiAKLSAgICBSZXRh
aW5QdHI8V2ViUmVzb3VyY2VMb2FkZXJRdWlja0xvb2tEZWxlZ2F0ZT4gZGVsZWdhdGUgPSBhZG9w
dE5TKFtbV2ViUmVzb3VyY2VMb2FkZXJRdWlja0xvb2tEZWxlZ2F0ZSBhbGxvY10gaW5pdFdpdGhS
ZXNvdXJjZUxvYWRlcjombG9hZGVyXSk7CisgICAgUmV0YWluUHRyPFdlYlJlc291cmNlTG9hZGVy
UXVpY2tMb29rRGVsZWdhdGU+IGRlbGVnYXRlID0gYWRvcHROUyhbW1dlYlJlc291cmNlTG9hZGVy
UXVpY2tMb29rRGVsZWdhdGUgYWxsb2NdIGluaXRXaXRoUmVzb3VyY2VMb2FkZXI6bG9hZGVyXSk7
CiAgICAgc3RkOjp1bmlxdWVfcHRyPFF1aWNrTG9va0hhbmRsZT4gcXVpY2tMb29rSGFuZGxlKG5l
dyBRdWlja0xvb2tIYW5kbGUoW2xvYWRlci5vcmlnaW5hbFJlcXVlc3QoKS5uc1VSTFJlcXVlc3Qo
RG9Ob3RVcGRhdGVIVFRQQm9keSkgVVJMXSwgcmVzcG9uc2UubnNVUkxSZXNwb25zZSgpLCBkZWxl
Z2F0ZS5nZXQoKSkpOwogICAgIFtkZWxlZ2F0ZSBzZXRRdWlja0xvb2tIYW5kbGU6cXVpY2tMb29r
SGFuZGxlLmdldCgpXTsKICAgICBsb2FkZXIuZGlkQ3JlYXRlUXVpY2tMb29rSGFuZGxlKCpxdWlj
a0xvb2tIYW5kbGUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWUuY3BwCmluZGV4IGQwMTViYTQ1YTMzYWViY2Ux
NzI5ZDNiOTliMjU1ZjU0NTMwMWU3NmEuLjFlYzY2ZTk5MTBmNTU2NDllZTYwYjlmNmRjMjkwZjEz
MzI0MGFkNGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21lLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZS5jcHAKQEAgLTQzMiw3ICs0MzIsNyBAQCBzdGQ6
OnVuaXF1ZV9wdHI8Q29sb3JDaG9vc2VyPiBDaHJvbWU6OmNyZWF0ZUNvbG9yQ2hvb3NlcihDb2xv
ckNob29zZXJDbGllbnQqIGNsaQogfQogI2VuZGlmCiAKLXZvaWQgQ2hyb21lOjpydW5PcGVuUGFu
ZWwoRnJhbWUqIGZyYW1lLCBQYXNzUmVmUHRyPEZpbGVDaG9vc2VyPiBmaWxlQ2hvb3NlcikKK3Zv
aWQgQ2hyb21lOjpydW5PcGVuUGFuZWwoRnJhbWUmIGZyYW1lLCBGaWxlQ2hvb3NlciYgZmlsZUNo
b29zZXIpCiB7CiAgICAgbm90aWZ5UG9wdXBPcGVuaW5nT2JzZXJ2ZXJzKCk7CiAgICAgbV9jbGll
bnQucnVuT3BlblBhbmVsKGZyYW1lLCBmaWxlQ2hvb3Nlcik7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0Nocm9tZS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWUuaAppbmRl
eCBmMjM4NjBhMmJkYWYzYzI5M2UwMTkzYzJjYTQ5MmJhNmE4OGY3YzUyLi5iNTBmNzg3M2YxMDQ5
ZTA2MTZkNzIzOTgwMTNkMzE0NjI3NGIzZjc0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL0Nocm9tZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21lLmgKQEAgLTE1Niw3
ICsxNTYsNyBAQCBwdWJsaWM6CiAgICAgc3RkOjp1bmlxdWVfcHRyPENvbG9yQ2hvb3Nlcj4gY3Jl
YXRlQ29sb3JDaG9vc2VyKENvbG9yQ2hvb3NlckNsaWVudCosIGNvbnN0IENvbG9yJiBpbml0aWFs
Q29sb3IpOwogI2VuZGlmCiAKLSAgICB2b2lkIHJ1bk9wZW5QYW5lbChGcmFtZSosIFBhc3NSZWZQ
dHI8RmlsZUNob29zZXI+KTsKKyAgICB2b2lkIHJ1bk9wZW5QYW5lbChGcmFtZSYsIEZpbGVDaG9v
c2VyJik7CiAgICAgdm9pZCBsb2FkSWNvbkZvckZpbGVzKGNvbnN0IFZlY3RvcjxTdHJpbmc+Jiwg
RmlsZUljb25Mb2FkZXImKTsKIAogICAgIHZvaWQgZGlzcGF0Y2hWaWV3cG9ydFByb3BlcnRpZXNE
aWRDaGFuZ2UoY29uc3QgVmlld3BvcnRBcmd1bWVudHMmKSBjb25zdDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21lQ2xpZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0No
cm9tZUNsaWVudC5oCmluZGV4IGEwOWZlM2NiMzBiYTNkODE4YzE0ZDFkMThlZDY1MzVlMWZlMzg4
MTUuLjg2ODI2ZTU5NTA4OWYyNGMyNWIyNzg2YzFmNGU5ODIyZGM0NGRlZGYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21lQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9DaHJvbWVDbGllbnQuaApAQCAtMjczLDcgKzI3Myw3IEBAIHB1YmxpYzoKICAgICB2aXJ0
dWFsIHN0ZDo6dW5pcXVlX3B0cjxDb2xvckNob29zZXI+IGNyZWF0ZUNvbG9yQ2hvb3NlcihDb2xv
ckNob29zZXJDbGllbnQqLCBjb25zdCBDb2xvciYpID0gMDsKICNlbmRpZgogCi0gICAgdmlydHVh
bCB2b2lkIHJ1bk9wZW5QYW5lbChGcmFtZSosIFBhc3NSZWZQdHI8RmlsZUNob29zZXI+KSA9IDA7
CisgICAgdmlydHVhbCB2b2lkIHJ1bk9wZW5QYW5lbChGcmFtZSYsIEZpbGVDaG9vc2VyJikgPSAw
OwogICAgIC8vIEFzeW5jaHJvbm91cyByZXF1ZXN0IHRvIGxvYWQgYW4gaWNvbiBmb3Igc3BlY2lm
aWVkIGZpbGVuYW1lcy4KICAgICB2aXJ0dWFsIHZvaWQgbG9hZEljb25Gb3JGaWxlcyhjb25zdCBW
ZWN0b3I8U3RyaW5nPiYsIEZpbGVJY29uTG9hZGVyJikgPSAwOwogICAgICAgICAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvRE9NV2luZG93LmNwcAppbmRleCA2YTI3YjJjMjliZDJmZTQ0MWEyMDgyMmQ0ZDlkNWRiNTc5
ZWE3NzZkLi45ZjdhNmFjNTAxYTM2Yjg0Y2RiNTcxNGEyZGMyNGViZjcyZGFiNTNlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9ET01XaW5kb3cuY3BwCkBAIC03NzMsNyArNzczLDcgQEAgRE9NQXBwbGljYXRpb25D
YWNoZSogRE9NV2luZG93OjphcHBsaWNhdGlvbkNhY2hlKCkgY29uc3QKICAgICBpZiAoIWlzQ3Vy
cmVudGx5RGlzcGxheWVkSW5GcmFtZSgpKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICBp
ZiAoIW1fYXBwbGljYXRpb25DYWNoZSkKLSAgICAgICAgbV9hcHBsaWNhdGlvbkNhY2hlID0gRE9N
QXBwbGljYXRpb25DYWNoZTo6Y3JlYXRlKG1fZnJhbWUpOworICAgICAgICBtX2FwcGxpY2F0aW9u
Q2FjaGUgPSBET01BcHBsaWNhdGlvbkNhY2hlOjpjcmVhdGUoKm1fZnJhbWUpOwogICAgIHJldHVy
biBtX2FwcGxpY2F0aW9uQ2FjaGUuZ2V0KCk7CiB9CiAKQEAgLTIwODcsNyArMjA4Nyw3IEBAIHZv
aWQgRE9NV2luZG93OjpzZXRMb2NhdGlvbihET01XaW5kb3cmIGFjdGl2ZVdpbmRvdywgRE9NV2lu
ZG93JiBmaXJzdFdpbmRvdywgY29uCiAgICAgLy8gV2Ugd2FudCBhIG5ldyBoaXN0b3J5IGl0ZW0g
aWYgd2UgYXJlIHByb2Nlc3NpbmcgYSB1c2VyIGdlc3R1cmUuCiAgICAgTG9ja0hpc3RvcnkgbG9j
a0hpc3RvcnkgPSAobG9ja2luZyAhPSBMb2NrSGlzdG9yeUJhc2VkT25HZXN0dXJlU3RhdGUgfHwg
IVNjcmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpKSA/IExvY2tIaXN0b3J5
OjpZZXMgOiBMb2NrSGlzdG9yeTo6Tm87CiAgICAgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFj
a0ZvcndhcmRMaXN0ID0gKGxvY2tpbmcgIT0gTG9ja0hpc3RvcnlCYXNlZE9uR2VzdHVyZVN0YXRl
KSA/IExvY2tCYWNrRm9yd2FyZExpc3Q6OlllcyA6IExvY2tCYWNrRm9yd2FyZExpc3Q6Ok5vOwot
ICAgIG1fZnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdl
KGFjdGl2ZURvY3VtZW50LCBhY3RpdmVEb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKSwKKyAgICBt
X2ZyYW1lLT5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZSgqYWN0
aXZlRG9jdW1lbnQsIGFjdGl2ZURvY3VtZW50LT5zZWN1cml0eU9yaWdpbigpLAogICAgICAgICAv
LyBGSVhNRTogV2hhdCBpZiBhY3RpdmVEb2N1bWVudCgpLT5mcmFtZSgpIGlzIDA/CiAgICAgICAg
IGNvbXBsZXRlZFVSTCwgYWN0aXZlRG9jdW1lbnQtPmZyYW1lKCktPmxvYWRlcigpLm91dGdvaW5n
UmVmZXJyZXIoKSwKICAgICAgICAgbG9ja0hpc3RvcnksIGxvY2tCYWNrRm9yd2FyZExpc3QpOwpA
QCAtMjIxMyw3ICsyMjEzLDcgQEAgUmVmUHRyPEZyYW1lPiBET01XaW5kb3c6OmNyZWF0ZVdpbmRv
dyhjb25zdCBTdHJpbmcmIHVybFN0cmluZywgY29uc3QgQXRvbWljU3RyaW4KICAgICAgICAgbmV3
RnJhbWUtPmxvYWRlcigpLmNoYW5nZUxvY2F0aW9uKGZyYW1lUmVxdWVzdCk7CiAgICAgfSBlbHNl
IGlmICghdXJsU3RyaW5nLmlzRW1wdHkoKSkgewogICAgICAgICBMb2NrSGlzdG9yeSBsb2NrSGlz
dG9yeSA9IFNjcmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpID8gTG9ja0hp
c3Rvcnk6Ok5vIDogTG9ja0hpc3Rvcnk6OlllczsKLSAgICAgICAgbmV3RnJhbWUtPm5hdmlnYXRp
b25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKGFjdGl2ZVdpbmRvdy5kb2N1bWVu
dCgpLCBhY3RpdmVXaW5kb3cuZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSwgY29tcGxldGVk
VVJMLCByZWZlcnJlciwgbG9ja0hpc3RvcnksIExvY2tCYWNrRm9yd2FyZExpc3Q6Ok5vKTsKKyAg
ICAgICAgbmV3RnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hh
bmdlKCphY3RpdmVXaW5kb3cuZG9jdW1lbnQoKSwgYWN0aXZlV2luZG93LmRvY3VtZW50KCktPnNl
Y3VyaXR5T3JpZ2luKCksIGNvbXBsZXRlZFVSTCwgcmVmZXJyZXIsIGxvY2tIaXN0b3J5LCBMb2Nr
QmFja0ZvcndhcmRMaXN0OjpObyk7CiAgICAgfQogCiAgICAgLy8gTmF2aWdhdGluZyB0aGUgbmV3
IGZyYW1lIGNvdWxkIHJlc3VsdCBpbiBpdCBiZWluZyBkZXRhY2hlZCBmcm9tIGl0cyBwYWdlIGJ5
IGEgbmF2aWdhdGlvbiBwb2xpY3kgZGVsZWdhdGUuCkBAIC0yMjIzLDI4ICsyMjIzLDI2IEBAIFJl
ZlB0cjxGcmFtZT4gRE9NV2luZG93OjpjcmVhdGVXaW5kb3coY29uc3QgU3RyaW5nJiB1cmxTdHJp
bmcsIGNvbnN0IEF0b21pY1N0cmluCiAgICAgcmV0dXJuIG5ld0ZyYW1lOwogfQogCi1SZWZQdHI8
RE9NV2luZG93PiBET01XaW5kb3c6Om9wZW4oY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcsIGNvbnN0
IEF0b21pY1N0cmluZyYgZnJhbWVOYW1lLCBjb25zdCBTdHJpbmcmIHdpbmRvd0ZlYXR1cmVzU3Ry
aW5nLAotICAgIERPTVdpbmRvdyYgYWN0aXZlV2luZG93LCBET01XaW5kb3cmIGZpcnN0V2luZG93
KQorUmVmUHRyPERPTVdpbmRvdz4gRE9NV2luZG93OjpvcGVuKGNvbnN0IFN0cmluZyYgdXJsU3Ry
aW5nLCBjb25zdCBBdG9taWNTdHJpbmcmIGZyYW1lTmFtZSwgY29uc3QgU3RyaW5nJiB3aW5kb3dG
ZWF0dXJlc1N0cmluZywgRE9NV2luZG93JiBhY3RpdmVXaW5kb3csIERPTVdpbmRvdyYgZmlyc3RX
aW5kb3cpCiB7CiAgICAgaWYgKCFpc0N1cnJlbnRseURpc3BsYXllZEluRnJhbWUoKSkKICAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CiAKLSAgICBEb2N1bWVudCogYWN0aXZlRG9jdW1lbnQgPSBhY3Rp
dmVXaW5kb3cuZG9jdW1lbnQoKTsKKyAgICBhdXRvKiBhY3RpdmVEb2N1bWVudCA9IGFjdGl2ZVdp
bmRvdy5kb2N1bWVudCgpOwogICAgIGlmICghYWN0aXZlRG9jdW1lbnQpCiAgICAgICAgIHJldHVy
biBudWxscHRyOwogCi0gICAgRnJhbWUqIGZpcnN0RnJhbWUgPSBmaXJzdFdpbmRvdy5mcmFtZSgp
OworICAgIGF1dG8qIGZpcnN0RnJhbWUgPSBmaXJzdFdpbmRvdy5mcmFtZSgpOwogICAgIGlmICgh
Zmlyc3RGcmFtZSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKICNpZiBFTkFCTEUoQ09OVEVO
VF9FWFRFTlNJT05TKQogICAgIGlmIChmaXJzdEZyYW1lLT5kb2N1bWVudCgpCi0gICAgICAgICYm
IGZpcnN0RnJhbWUtPm1haW5GcmFtZSgpLnBhZ2UoKQorICAgICAgICAmJiBmaXJzdEZyYW1lLT5w
YWdlKCkKICAgICAgICAgJiYgZmlyc3RGcmFtZS0+bWFpbkZyYW1lKCkuZG9jdW1lbnQoKQogICAg
ICAgICAmJiBmaXJzdEZyYW1lLT5tYWluRnJhbWUoKS5kb2N1bWVudCgpLT5sb2FkZXIoKSkgewot
ICAgICAgICBSZXNvdXJjZUxvYWRJbmZvIHJlc291cmNlTG9hZEluZm8gPSB7IGZpcnN0RnJhbWUt
PmRvY3VtZW50KCktPmNvbXBsZXRlVVJMKHVybFN0cmluZyksIGZpcnN0RnJhbWUtPm1haW5GcmFt
ZSgpLmRvY3VtZW50KCktPnVybCgpLCBSZXNvdXJjZVR5cGU6OlBvcHVwIH07Ci0gICAgICAgIFZl
Y3RvcjxDb250ZW50RXh0ZW5zaW9uczo6QWN0aW9uPiBhY3Rpb25zID0gZmlyc3RGcmFtZS0+bWFp
bkZyYW1lKCkucGFnZSgpLT51c2VyQ29udGVudFByb3ZpZGVyKCkuYWN0aW9uc0ZvclJlc291cmNl
TG9hZChyZXNvdXJjZUxvYWRJbmZvLCAqZmlyc3RGcmFtZS0+bWFpbkZyYW1lKCkuZG9jdW1lbnQo
KS0+bG9hZGVyKCkpOwotICAgICAgICBmb3IgKGNvbnN0IENvbnRlbnRFeHRlbnNpb25zOjpBY3Rp
b24mIGFjdGlvbiA6IGFjdGlvbnMpIHsKKyAgICAgICAgUmVzb3VyY2VMb2FkSW5mbyByZXNvdXJj
ZUxvYWRJbmZvIHsgZmlyc3RGcmFtZS0+ZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwodXJsU3RyaW5n
KSwgZmlyc3RGcmFtZS0+bWFpbkZyYW1lKCkuZG9jdW1lbnQoKS0+dXJsKCksIFJlc291cmNlVHlw
ZTo6UG9wdXAgfTsKKyAgICAgICAgZm9yIChhdXRvJiBhY3Rpb24gOiBmaXJzdEZyYW1lLT5wYWdl
KCktPnVzZXJDb250ZW50UHJvdmlkZXIoKS5hY3Rpb25zRm9yUmVzb3VyY2VMb2FkKHJlc291cmNl
TG9hZEluZm8sICpmaXJzdEZyYW1lLT5tYWluRnJhbWUoKS5kb2N1bWVudCgpLT5sb2FkZXIoKSkp
IHsKICAgICAgICAgICAgIGlmIChhY3Rpb24udHlwZSgpID09IENvbnRlbnRFeHRlbnNpb25zOjpB
Y3Rpb25UeXBlOjpCbG9ja0xvYWQpCiAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAg
ICAgICAgIH0KQEAgLTIyODQsNyArMjI4Miw3IEBAIFJlZlB0cjxET01XaW5kb3c+IERPTVdpbmRv
dzo6b3Blbihjb25zdCBTdHJpbmcmIHVybFN0cmluZywgY29uc3QgQXRvbWljU3RyaW5nJiBmCiAg
ICAgICAgIC8vIEZvciB3aGF0ZXZlciByZWFzb24sIEZpcmVmb3ggdXNlcyB0aGUgZmlyc3Qgd2lu
ZG93IHJhdGhlciB0aGFuIHRoZSBhY3RpdmUgd2luZG93IHRvCiAgICAgICAgIC8vIGRldGVybWlu
ZSB0aGUgb3V0Z29pbmcgcmVmZXJyZXIuIFdlIHJlcGxpY2F0ZSB0aGF0IGJlaGF2aW9yIGhlcmUu
CiAgICAgICAgIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5ID0gU2NyaXB0Q29udHJvbGxlcjo6cHJv
Y2Vzc2luZ1VzZXJHZXN0dXJlKCkgPyBMb2NrSGlzdG9yeTo6Tm8gOiBMb2NrSGlzdG9yeTo6WWVz
OwotICAgICAgICB0YXJnZXRGcmFtZS0+bmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlTG9j
YXRpb25DaGFuZ2UoYWN0aXZlRG9jdW1lbnQsIGFjdGl2ZURvY3VtZW50LT5zZWN1cml0eU9yaWdp
bigpLCBjb21wbGV0ZWRVUkwsIGZpcnN0RnJhbWUtPmxvYWRlcigpLm91dGdvaW5nUmVmZXJyZXIo
KSwKKyAgICAgICAgdGFyZ2V0RnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxv
Y2F0aW9uQ2hhbmdlKCphY3RpdmVEb2N1bWVudCwgYWN0aXZlRG9jdW1lbnQtPnNlY3VyaXR5T3Jp
Z2luKCksIGNvbXBsZXRlZFVSTCwgZmlyc3RGcmFtZS0+bG9hZGVyKCkub3V0Z29pbmdSZWZlcnJl
cigpLAogICAgICAgICAgICAgbG9ja0hpc3RvcnksIExvY2tCYWNrRm9yd2FyZExpc3Q6Ok5vKTsK
ICAgICAgICAgcmV0dXJuIHRhcmdldEZyYW1lLT5kb2N1bWVudCgpLT5kb21XaW5kb3coKTsKICAg
ICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0VkaXRvckNsaWVudC5oIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9FZGl0b3JDbGllbnQuaAppbmRleCBlYjFhNDJlMmVlZDAzYTUxNGQx
MjM2MDhiY2U3M2I0ZTJkNTY3ODBhLi5mNDEzMjEwOWY2NDkzYzMwNTgyYTk4OTE5MmM4ZGIzNTU5
OTk3ODRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0VkaXRvckNsaWVudC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRWRpdG9yQ2xpZW50LmgKQEAgLTEwNCw4ICsxMDQsOCBA
QCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIGRpc2NhcmRlZENvbXBvc2l0aW9uKEZyYW1lKikg
PSAwOwogICAgIHZpcnR1YWwgdm9pZCBjYW5jZWxlZENvbXBvc2l0aW9uKCkgPSAwOwogCi0gICAg
dmlydHVhbCB2b2lkIHJlZ2lzdGVyVW5kb1N0ZXAoUGFzc1JlZlB0cjxVbmRvU3RlcD4pID0gMDsK
LSAgICB2aXJ0dWFsIHZvaWQgcmVnaXN0ZXJSZWRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPikg
PSAwOworICAgIHZpcnR1YWwgdm9pZCByZWdpc3RlclVuZG9TdGVwKFVuZG9TdGVwJikgPSAwOwor
ICAgIHZpcnR1YWwgdm9pZCByZWdpc3RlclJlZG9TdGVwKFVuZG9TdGVwJikgPSAwOwogICAgIHZp
cnR1YWwgdm9pZCBjbGVhclVuZG9SZWRvT3BlcmF0aW9ucygpID0gMDsKIAogICAgIHZpcnR1YWwg
Ym9vbCBjYW5Db3B5Q3V0KEZyYW1lKiwgYm9vbCBkZWZhdWx0VmFsdWUpIGNvbnN0ID0gMDsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvSGlzdG9yeS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0hpc3RvcnkuY3BwCmluZGV4IDFkNDU0MmI4N2VhNjEyNTBhODRiZDdjZDkxNjcyZDVl
YWZiMzg0ZGYuLjYzZWQzZDAwN2ViZWQxYTgyMzkwYmFlMTk4NzViMzUyNzY5ZmU4ZTMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvSGlzdG9yeS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9IaXN0b3J5LmNwcApAQCAtMjA3LDEwICsyMDcsMTAgQEAgRXhjZXB0aW9uT3I8dm9p
ZD4gSGlzdG9yeTo6c3RhdGVPYmplY3RBZGRlZChSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVl
PiYmIGRhdGEKICAgICAgICAgbV9mcmFtZS0+ZG9jdW1lbnQoKS0+dXBkYXRlVVJMRm9yUHVzaE9y
UmVwbGFjZVN0YXRlKGZ1bGxVUkwpOwogCiAgICAgaWYgKHN0YXRlT2JqZWN0VHlwZSA9PSBTdGF0
ZU9iamVjdFR5cGU6OlB1c2gpIHsKLSAgICAgICAgbV9mcmFtZS0+bG9hZGVyKCkuaGlzdG9yeSgp
LnB1c2hTdGF0ZShkYXRhLCB0aXRsZSwgZnVsbFVSTC5zdHJpbmcoKSk7CisgICAgICAgIG1fZnJh
bWUtPmxvYWRlcigpLmhpc3RvcnkoKS5wdXNoU3RhdGUoV1RGTW92ZShkYXRhKSwgdGl0bGUsIGZ1
bGxVUkwuc3RyaW5nKCkpOwogICAgICAgICBtX2ZyYW1lLT5sb2FkZXIoKS5jbGllbnQoKS5kaXNw
YXRjaERpZFB1c2hTdGF0ZVdpdGhpblBhZ2UoKTsKICAgICB9IGVsc2UgaWYgKHN0YXRlT2JqZWN0
VHlwZSA9PSBTdGF0ZU9iamVjdFR5cGU6OlJlcGxhY2UpIHsKLSAgICAgICAgbV9mcmFtZS0+bG9h
ZGVyKCkuaGlzdG9yeSgpLnJlcGxhY2VTdGF0ZShkYXRhLCB0aXRsZSwgZnVsbFVSTC5zdHJpbmco
KSk7CisgICAgICAgIG1fZnJhbWUtPmxvYWRlcigpLmhpc3RvcnkoKS5yZXBsYWNlU3RhdGUoV1RG
TW92ZShkYXRhKSwgdGl0bGUsIGZ1bGxVUkwuc3RyaW5nKCkpOwogICAgICAgICBtX2ZyYW1lLT5s
b2FkZXIoKS5jbGllbnQoKS5kaXNwYXRjaERpZFJlcGxhY2VTdGF0ZVdpdGhpblBhZ2UoKTsKICAg
ICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTG9jYXRpb24uY3BwIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9Mb2NhdGlvbi5jcHAKaW5kZXggOGQ4MzlkMTNhOTE5ODBlMWEwMjhk
YmM1ODBiYmJmMWQzNjZkNDU2Zi4uYmRiNTQ4YjBiNzg5MzRhYzYyYzE3MWU2OWY3ZjEyOTNiZmZh
NDI3NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Mb2NhdGlvbi5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9Mb2NhdGlvbi5jcHAKQEAgLTIyMSw5ICsyMjEsMTAgQEAgdm9p
ZCBMb2NhdGlvbjo6c2V0SGFzaChET01XaW5kb3cmIGFjdGl2ZVdpbmRvdywgRE9NV2luZG93JiBm
aXJzdFdpbmRvdywgY29uc3QgU3QKIHsKICAgICBpZiAoIW1fZnJhbWUpCiAgICAgICAgIHJldHVy
bjsKLSAgICBVUkwgdXJsID0gbV9mcmFtZS0+ZG9jdW1lbnQoKS0+dXJsKCk7Ci0gICAgU3RyaW5n
IG9sZEZyYWdtZW50SWRlbnRpZmllciA9IHVybC5mcmFnbWVudElkZW50aWZpZXIoKTsKLSAgICBT
dHJpbmcgbmV3RnJhZ21lbnRJZGVudGlmaWVyID0gaGFzaDsKKyAgICBBU1NFUlQobV9mcmFtZS0+
ZG9jdW1lbnQoKSk7CisgICAgYXV0byB1cmwgPSBtX2ZyYW1lLT5kb2N1bWVudCgpLT51cmwoKTsK
KyAgICBhdXRvIG9sZEZyYWdtZW50SWRlbnRpZmllciA9IHVybC5mcmFnbWVudElkZW50aWZpZXIo
KTsKKyAgICBhdXRvIG5ld0ZyYWdtZW50SWRlbnRpZmllciA9IGhhc2g7CiAgICAgaWYgKGhhc2hb
MF0gPT0gJyMnKQogICAgICAgICBuZXdGcmFnbWVudElkZW50aWZpZXIgPSBoYXNoLnN1YnN0cmlu
ZygxKTsKICAgICB1cmwuc2V0RnJhZ21lbnRJZGVudGlmaWVyKG5ld0ZyYWdtZW50SWRlbnRpZmll
cik7CkBAIC0yNDYsNyArMjQ3LDkgQEAgdm9pZCBMb2NhdGlvbjo6cmVwbGFjZShET01XaW5kb3cm
IGFjdGl2ZVdpbmRvdywgRE9NV2luZG93JiBmaXJzdFdpbmRvdywgY29uc3QgU3QKIHsKICAgICBp
ZiAoIW1fZnJhbWUpCiAgICAgICAgIHJldHVybjsKLSAgICAvLyBOb3RlOiBXZSBjYWxsIERPTVdp
bmRvdzo6c2V0TG9jYXRpb24gZGlyZWN0bHkgaGVyZSBiZWNhdXNlIHJlcGxhY2UoKSBhbHdheXMg
b3BlcmF0ZXMgb24gdGhlIGN1cnJlbnQgZnJhbWUuCisgICAgQVNTRVJUKG1fZnJhbWUtPmRvY3Vt
ZW50KCkpOworICAgIEFTU0VSVChtX2ZyYW1lLT5kb2N1bWVudCgpLT5kb21XaW5kb3coKSk7Cisg
ICAgLy8gV2UgY2FsbCBET01XaW5kb3c6OnNldExvY2F0aW9uIGRpcmVjdGx5IGhlcmUgYmVjYXVz
ZSByZXBsYWNlKCkgYWx3YXlzIG9wZXJhdGVzIG9uIHRoZSBjdXJyZW50IGZyYW1lLgogICAgIG1f
ZnJhbWUtPmRvY3VtZW50KCktPmRvbVdpbmRvdygpLT5zZXRMb2NhdGlvbihhY3RpdmVXaW5kb3cs
IGZpcnN0V2luZG93LCB1cmwsIExvY2tIaXN0b3J5QW5kQmFja0ZvcndhcmRMaXN0KTsKIH0KIApA
QCAtMjU0LDI2ICsyNTcsMzggQEAgdm9pZCBMb2NhdGlvbjo6cmVsb2FkKERPTVdpbmRvdyYgYWN0
aXZlV2luZG93KQogewogICAgIGlmICghbV9mcmFtZSkKICAgICAgICAgcmV0dXJuOworCisgICAg
QVNTRVJUKGFjdGl2ZVdpbmRvdy5kb2N1bWVudCgpKTsKKyAgICBBU1NFUlQobV9mcmFtZS0+ZG9j
dW1lbnQoKSk7CisgICAgQVNTRVJUKG1fZnJhbWUtPmRvY3VtZW50KCktPmRvbVdpbmRvdygpKTsK
KworICAgIGF1dG8mIGFjdGl2ZURvY3VtZW50ID0gKmFjdGl2ZVdpbmRvdy5kb2N1bWVudCgpOwor
ICAgIGF1dG8mIHRhcmdldERvY3VtZW50ID0gKm1fZnJhbWUtPmRvY3VtZW50KCk7CisKICAgICAv
LyBGSVhNRTogSXQncyBub3QgY2xlYXIgdGhpcyBjcm9zcy1vcmlnaW4gc2VjdXJpdHkgY2hlY2sg
aXMgdmFsdWFibGUuCiAgICAgLy8gV2UgYWxsb3cgb25lIHBhZ2UgdG8gY2hhbmdlIHRoZSBsb2Nh
dGlvbiBvZiBhbm90aGVyLiBXaHkgYmxvY2sgYXR0ZW1wdHMgdG8gcmVsb2FkPwogICAgIC8vIE90
aGVyIGxvY2F0aW9uIG9wZXJhdGlvbnMgc2ltcGx5IGJsb2NrIHVzZSBvZiBKYXZhU2NyaXB0IFVS
THMgY3Jvc3Mgb3JpZ2luLgotICAgIERPTVdpbmRvdyogdGFyZ2V0V2luZG93ID0gbV9mcmFtZS0+
ZG9jdW1lbnQoKS0+ZG9tV2luZG93KCk7Ci0gICAgaWYgKCFhY3RpdmVXaW5kb3cuZG9jdW1lbnQo
KS0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuQWNjZXNzKG1fZnJhbWUtPmRvY3VtZW50KCktPnNlY3Vy
aXR5T3JpZ2luKCkpKSB7Ci0gICAgICAgIHRhcmdldFdpbmRvdy0+cHJpbnRFcnJvck1lc3NhZ2Uo
dGFyZ2V0V2luZG93LT5jcm9zc0RvbWFpbkFjY2Vzc0Vycm9yTWVzc2FnZShhY3RpdmVXaW5kb3cp
KTsKKyAgICBpZiAoIWFjdGl2ZURvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCktPmNhbkFjY2Vzcyh0
YXJnZXREb2N1bWVudC5zZWN1cml0eU9yaWdpbigpKSkgeworICAgICAgICBhdXRvJiB0YXJnZXRX
aW5kb3cgPSAqdGFyZ2V0RG9jdW1lbnQuZG9tV2luZG93KCk7CisgICAgICAgIHRhcmdldFdpbmRv
dy5wcmludEVycm9yTWVzc2FnZSh0YXJnZXRXaW5kb3cuY3Jvc3NEb21haW5BY2Nlc3NFcnJvck1l
c3NhZ2UoYWN0aXZlV2luZG93KSk7CiAgICAgICAgIHJldHVybjsKICAgICB9Ci0gICAgaWYgKHBy
b3RvY29sSXNKYXZhU2NyaXB0KG1fZnJhbWUtPmRvY3VtZW50KCktPnVybCgpKSkKKworICAgIGlm
IChwcm90b2NvbElzSmF2YVNjcmlwdCh0YXJnZXREb2N1bWVudC51cmwoKSkpCiAgICAgICAgIHJl
dHVybjsKLSAgICBtX2ZyYW1lLT5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVSZWZyZXNo
KGFjdGl2ZVdpbmRvdy5kb2N1bWVudCgpKTsKKworICAgIG1fZnJhbWUtPm5hdmlnYXRpb25TY2hl
ZHVsZXIoKS5zY2hlZHVsZVJlZnJlc2goYWN0aXZlRG9jdW1lbnQpOwogfQogCiB2b2lkIExvY2F0
aW9uOjpzZXRMb2NhdGlvbihET01XaW5kb3cmIGFjdGl2ZVdpbmRvdywgRE9NV2luZG93JiBmaXJz
dFdpbmRvdywgY29uc3QgU3RyaW5nJiB1cmwpCiB7CiAgICAgQVNTRVJUKG1fZnJhbWUpOwotICAg
IEZyYW1lKiBmcmFtZSA9IG1fZnJhbWUtPmxvYWRlcigpLmZpbmRGcmFtZUZvck5hdmlnYXRpb24o
U3RyaW5nKCksIGFjdGl2ZVdpbmRvdy5kb2N1bWVudCgpKTsKLSAgICBpZiAoIWZyYW1lKQorICAg
IGF1dG8qIHRhcmdldEZyYW1lID0gbV9mcmFtZS0+bG9hZGVyKCkuZmluZEZyYW1lRm9yTmF2aWdh
dGlvbih7IH0sIGFjdGl2ZVdpbmRvdy5kb2N1bWVudCgpKTsKKyAgICBpZiAoIXRhcmdldEZyYW1l
KQogICAgICAgICByZXR1cm47Ci0gICAgZnJhbWUtPmRvY3VtZW50KCktPmRvbVdpbmRvdygpLT5z
ZXRMb2NhdGlvbihhY3RpdmVXaW5kb3csIGZpcnN0V2luZG93LCB1cmwpOworICAgIEFTU0VSVCh0
YXJnZXRGcmFtZS0+ZG9jdW1lbnQoKSk7CisgICAgQVNTRVJUKHRhcmdldEZyYW1lLT5kb2N1bWVu
dCgpLT5kb21XaW5kb3coKSk7CisgICAgdGFyZ2V0RnJhbWUtPmRvY3VtZW50KCktPmRvbVdpbmRv
dygpLT5zZXRMb2NhdGlvbihhY3RpdmVXaW5kb3csIGZpcnN0V2luZG93LCB1cmwpOwogfQogCiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9VUkwuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVVJMLmNwcAppbmRleCBlNzBhMGY3
YjgzZTllMmY4NDU0Y2QxMWY1YTY0OTg2MWEwMjYzODkzLi41ZWZiODVhMzAzNGVlM2VlZDAwYmFm
ZGNmMGU2ODMyMjY1MDc3OGExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9V
UkwuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1VSTC5jcHAKQEAgLTExMjYsMTcg
KzExMjYsMTcgQEAgdm9pZCBVUkw6OnNldFBhc3MoY29uc3QgU3RyaW5nJiBwYXNzd29yZCkKICAg
ICB9CiB9CiAKLXZvaWQgVVJMOjpzZXRGcmFnbWVudElkZW50aWZpZXIoY29uc3QgU3RyaW5nJiBz
KQordm9pZCBVUkw6OnNldEZyYWdtZW50SWRlbnRpZmllcihTdHJpbmdWaWV3IGlkZW50aWZpZXIp
CiB7CiAgICAgaWYgKCFtX2lzVmFsaWQpCiAgICAgICAgIHJldHVybjsKIAotICAgIC8vIEZJWE1F
OiBOb24tQVNDSUkgY2hhcmFjdGVycyBtdXN0IGJlIGVuY29kZWQgYW5kIGVzY2FwZWQgdG8gbWF0
Y2ggcGFyc2UoKSBleHBlY3RhdGlvbnMuCi0gICAgaWYgKFVSTFBhcnNlcjo6ZW5hYmxlZCgpKSB7
Ci0gICAgICAgIFVSTFBhcnNlciBwYXJzZXIobWFrZVN0cmluZyhtX3N0cmluZy5sZWZ0KG1fcXVl
cnlFbmQpLCAiIyIsIHMpKTsKLSAgICAgICAgKnRoaXMgPSBwYXJzZXIucmVzdWx0KCk7Ci0gICAg
fSBlbHNlCi0gICAgICAgIHBhcnNlKG1fc3RyaW5nLmxlZnQobV9xdWVyeUVuZCkgKyAiIyIgKyBz
KTsKKyAgICAvLyBGSVhNRTogT3B0aW1pemUgdGhlIGNhc2Ugd2hlcmUgdGhlIGlkZW50aWZpZXIg
YWxyZWFkeSBoYXBwZW5zIHRvIGJlIGVxdWFsIHRvIHdoYXQgd2FzIHBhc3NlZD8KKyAgICAvLyBG
SVhNRTogSXMgaXQgY29ycmVjdCB0byBkbyB0aGlzIHdpdGhvdXQgZW5jb2RpbmcgYW5kIGVzY2Fw
aW5nIG5vbi1BU0NJSSBjaGFyYWN0ZXJzPworICAgIGlmIChVUkxQYXJzZXI6OmVuYWJsZWQoKSkK
KyAgICAgICAgKnRoaXMgPSBVUkxQYXJzZXIgeyBtYWtlU3RyaW5nKFN0cmluZ1ZpZXcgeyBtX3N0
cmluZyB9LnN1YnN0cmluZygwLCBtX3F1ZXJ5RW5kKSwgJyMnLCBpZGVudGlmaWVyKSB9LnJlc3Vs
dCgpOworICAgIGVsc2UKKyAgICAgICAgcGFyc2UobV9zdHJpbmcubGVmdChtX3F1ZXJ5RW5kKSAr
ICIjIiArIGlkZW50aWZpZXIpOwogfQogCiB2b2lkIFVSTDo6cmVtb3ZlRnJhZ21lbnRJZGVudGlm
aWVyKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1VSTC5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vVVJMLmgKaW5kZXggNWFiZjA1ZmU3YzYzNzRmZDU1MmE4MDFkYzc4
ZGEyZGI2YTZjY2VmZS4uYjJjMjNkZTQxMTc4NDAwMDIwNDMzZDNiMzRiZDY3YzE2YTU0NWRkMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVVJMLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vVVJMLmgKQEAgLTE1OCw3ICsxNTgsNyBAQCBwdWJsaWM6CiAgICAgLy8g
VVJMICh3aXRoIG5vdGhpbmcgYWZ0ZXIgaXQpLiBUbyBjbGVhciB0aGUgcXVlcnksIHBhc3MgYSBu
dWxsIHN0cmluZy4KICAgICB2b2lkIHNldFF1ZXJ5KGNvbnN0IFN0cmluZyYpOwogCi0gICAgdm9p
ZCBzZXRGcmFnbWVudElkZW50aWZpZXIoY29uc3QgU3RyaW5nJik7CisgICAgdm9pZCBzZXRGcmFn
bWVudElkZW50aWZpZXIoU3RyaW5nVmlldyk7CiAgICAgdm9pZCByZW1vdmVGcmFnbWVudElkZW50
aWZpZXIoKTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIGZyaWVuZCBib29sIGVxdWFsSWdub3JpbmdG
cmFnbWVudElkZW50aWZpZXIoY29uc3QgVVJMJiwgY29uc3QgVVJMJik7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9yZXBsYXkvUmVwbGF5SW5wdXREaXNwYXRjaE1ldGhvZHMuY3BwIGIvU291
cmNlL1dlYkNvcmUvcmVwbGF5L1JlcGxheUlucHV0RGlzcGF0Y2hNZXRob2RzLmNwcAppbmRleCA4
NDc1MmEyMzJmZWE2ZTM5ZWM1NzYxNDJmZTM1NzBjMWJjM2QyNDE2Li43ZjNjMzAwM2MxNTJhZWMw
ODJmYTk3ZjYwMjZmNzg2ZmE5MmNmNGI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZXBs
YXkvUmVwbGF5SW5wdXREaXNwYXRjaE1ldGhvZHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Jl
cGxheS9SZXBsYXlJbnB1dERpc3BhdGNoTWV0aG9kcy5jcHAKQEAgLTUwLDggKzUwLDkgQEAgdm9p
ZCBFbmRTZWdtZW50U2VudGluZWw6OmRpc3BhdGNoKFJlcGxheUNvbnRyb2xsZXImKQogLy8gTmF2
aWdhdGlvbiBpbnB1dHMuCiB2b2lkIEluaXRpYWxOYXZpZ2F0aW9uOjpkaXNwYXRjaChSZXBsYXlD
b250cm9sbGVyJiBjb250cm9sbGVyKQogewotICAgIEZyYW1lJiBmcmFtZSA9IGNvbnRyb2xsZXIu
cGFnZSgpLm1haW5GcmFtZSgpOwotICAgIGZyYW1lLm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hl
ZHVsZUxvY2F0aW9uQ2hhbmdlKGZyYW1lLmRvY3VtZW50KCksIG1fc2VjdXJpdHlPcmlnaW4uZ2V0
KCksIG1fdXJsLCBtX3JlZmVycmVyKTsKKyAgICBhdXRvJiBmcmFtZSA9IGNvbnRyb2xsZXIucGFn
ZSgpLm1haW5GcmFtZSgpOworICAgIEFTU0VSVChmcmFtZS5kb2N1bWVudCgpKTsKKyAgICBmcmFt
ZS5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZSgqZnJhbWUuZG9j
dW1lbnQoKSwgbV9zZWN1cml0eU9yaWdpbi5nZXQoKSwgbV91cmwsIG1fcmVmZXJyZXIpOwogfQog
CiB2b2lkIEhhbmRsZUtleVByZXNzOjpkaXNwYXRjaChSZXBsYXlDb250cm9sbGVyJiBjb250cm9s
bGVyKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZFSW1hZ2VFbGVtZW50LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGRUltYWdlRWxlbWVudC5jcHAKaW5kZXggMGIzMjcx
MGI2ZmE5ZDQzM2ZiODJhYTkxMTZiMjBkNjgxOGQ1YWZiMi4uYzJjZDZmNjViMzBiN2EwYmVmNDQ3
OGQ1YWM0NzA5ZWQ5Y2ZkMjFhMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZF
SW1hZ2VFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRkVJbWFnZUVsZW1l
bnQuY3BwCkBAIC04OCw3ICs4OCw3IEBAIHZvaWQgU1ZHRkVJbWFnZUVsZW1lbnQ6OnJlcXVlc3RJ
bWFnZVJlc291cmNlKCkKICAgICBvcHRpb25zLmNvbnRlbnRTZWN1cml0eVBvbGljeUltcG9zaXRp
b24gPSBpc0luVXNlckFnZW50U2hhZG93VHJlZSgpID8gQ29udGVudFNlY3VyaXR5UG9saWN5SW1w
b3NpdGlvbjo6U2tpcFBvbGljeUNoZWNrIDogQ29udGVudFNlY3VyaXR5UG9saWN5SW1wb3NpdGlv
bjo6RG9Qb2xpY3lDaGVjazsKIAogICAgIENhY2hlZFJlc291cmNlUmVxdWVzdCByZXF1ZXN0KFJl
c291cmNlUmVxdWVzdChkb2N1bWVudCgpLmNvbXBsZXRlVVJMKGhyZWYoKSkpLCBvcHRpb25zKTsK
LSAgICByZXF1ZXN0LnNldEluaXRpYXRvcih0aGlzKTsKKyAgICByZXF1ZXN0LnNldEluaXRpYXRv
cigqdGhpcyk7CiAgICAgbV9jYWNoZWRJbWFnZSA9IGRvY3VtZW50KCkuY2FjaGVkUmVzb3VyY2VM
b2FkZXIoKS5yZXF1ZXN0SW1hZ2UoV1RGTW92ZShyZXF1ZXN0KSk7CiAKICAgICBpZiAobV9jYWNo
ZWRJbWFnZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGb250RmFjZVVyaUVs
ZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvbnRGYWNlVXJpRWxlbWVudC5jcHAK
aW5kZXggMzU2NmFjNDY1MzI5ZjdmYTFjZDQ0NmVmMTdhMzY1ZDc1ZWY2ZjI0My4uNTZkNWU2M2Mz
YzE1YWFmNmY1ZjZlOWI2OTk0YTkwZTZmZDYyMjM0NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvc3ZnL1NWR0ZvbnRGYWNlVXJpRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3Zn
L1NWR0ZvbnRGYWNlVXJpRWxlbWVudC5jcHAKQEAgLTEwNSw3ICsxMDUsNyBAQCB2b2lkIFNWR0Zv
bnRGYWNlVXJpRWxlbWVudDo6bG9hZEZvbnQoKQogCiAgICAgICAgIENhY2hlZFJlc291cmNlTG9h
ZGVyJiBjYWNoZWRSZXNvdXJjZUxvYWRlciA9IGRvY3VtZW50KCkuY2FjaGVkUmVzb3VyY2VMb2Fk
ZXIoKTsKICAgICAgICAgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QoUmVzb3VyY2VSZXF1
ZXN0KGRvY3VtZW50KCkuY29tcGxldGVVUkwoaHJlZikpLCBvcHRpb25zKTsKLSAgICAgICAgcmVx
dWVzdC5zZXRJbml0aWF0b3IodGhpcyk7CisgICAgICAgIHJlcXVlc3Quc2V0SW5pdGlhdG9yKCp0
aGlzKTsKICAgICAgICAgbV9jYWNoZWRGb250ID0gY2FjaGVkUmVzb3VyY2VMb2FkZXIucmVxdWVz
dEZvbnQoV1RGTW92ZShyZXF1ZXN0KSwgaXNTVkdGb250VGFyZ2V0KCp0aGlzKSk7CiAgICAgICAg
IGlmIChtX2NhY2hlZEZvbnQpIHsKICAgICAgICAgICAgIG1fY2FjaGVkRm9udC0+YWRkQ2xpZW50
KCp0aGlzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdVc2VFbGVtZW50LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdVc2VFbGVtZW50LmNwcAppbmRleCA4ZjUwMDk5MmY1
NWViMjY1NjFhNThmYmMxNTliNjIzMTI3YjE1ODY3Li5lNmI0ZWY2OTczZjM2MmFiOGRmZjU2ZTkz
MDkxZGI5ZGZkOGYyMTkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVXNlRWxl
bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1VzZUVsZW1lbnQuY3BwCkBAIC01
NzIsNyArNTcyLDcgQEAgdm9pZCBTVkdVc2VFbGVtZW50Ojp1cGRhdGVFeHRlcm5hbERvY3VtZW50
KCkKICAgICAgICAgb3B0aW9ucy5jb250ZW50U2VjdXJpdHlQb2xpY3lJbXBvc2l0aW9uID0gaXNJ
blVzZXJBZ2VudFNoYWRvd1RyZWUoKSA/IENvbnRlbnRTZWN1cml0eVBvbGljeUltcG9zaXRpb246
OlNraXBQb2xpY3lDaGVjayA6IENvbnRlbnRTZWN1cml0eVBvbGljeUltcG9zaXRpb246OkRvUG9s
aWN5Q2hlY2s7CiAgICAgICAgIG9wdGlvbnMubW9kZSA9IEZldGNoT3B0aW9uczo6TW9kZTo6U2Ft
ZU9yaWdpbjsKICAgICAgICAgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QgeyBSZXNvdXJj
ZVJlcXVlc3QgeyBleHRlcm5hbERvY3VtZW50VVJMIH0sIG9wdGlvbnMgfTsKLSAgICAgICAgcmVx
dWVzdC5zZXRJbml0aWF0b3IodGhpcyk7CisgICAgICAgIHJlcXVlc3Quc2V0SW5pdGlhdG9yKCp0
aGlzKTsKICAgICAgICAgbV9leHRlcm5hbERvY3VtZW50ID0gZG9jdW1lbnQoKS5jYWNoZWRSZXNv
dXJjZUxvYWRlcigpLnJlcXVlc3RTVkdEb2N1bWVudChXVEZNb3ZlKHJlcXVlc3QpKTsKICAgICAg
ICAgaWYgKG1fZXh0ZXJuYWxEb2N1bWVudCkKICAgICAgICAgICAgIG1fZXh0ZXJuYWxEb2N1bWVu
dC0+YWRkQ2xpZW50KCp0aGlzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvaW9zL1dlYkNv
cmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudElPUy5oIGIvU291cmNlL1dlYktpdC9pb3MvV2ViQ29y
ZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50SU9TLmgKaW5kZXggNjNmNDMwNGEwMzYyZTUzMzUxYzk2
ZDBkN2VkMDdkOTFiMGEwNmY5NC4uNmNkNzAzZDg3M2JkODY1OTgwMDNlMzEzZTJlNGQ4MmRkYjg2
MDc4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9pb3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hy
b21lQ2xpZW50SU9TLmgKKysrIGIvU291cmNlL1dlYktpdC9pb3MvV2ViQ29yZVN1cHBvcnQvV2Vi
Q2hyb21lQ2xpZW50SU9TLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAy
MDA4LCAyMDA5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAo
QykgMjAwOC0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMjQsNzMgKzI0LDc3IEBACiAgKi8KIAogI2lmIFBMQVRG
T1JNKElPUykKKwogI2ltcG9ydCAiV2ViQ2hyb21lQ2xpZW50LmgiCiAKLWNsYXNzIFdlYkNocm9t
ZUNsaWVudElPUyA6IHB1YmxpYyBXZWJDaHJvbWVDbGllbnQgeworY2xhc3MgV2ViQ2hyb21lQ2xp
ZW50SU9TIGZpbmFsIDogcHVibGljIFdlYkNocm9tZUNsaWVudCB7CiBwdWJsaWM6Ci0gICAgV2Vi
Q2hyb21lQ2xpZW50SU9TKFdlYlZpZXcgKndlYlZpZXcpCisgICAgV2ViQ2hyb21lQ2xpZW50SU9T
KFdlYlZpZXcqIHdlYlZpZXcpCiAgICAgICAgIDogV2ViQ2hyb21lQ2xpZW50KHdlYlZpZXcpCi0g
ICAgICAgICwgbV9mb3JtTm90aWZpY2F0aW9uU3VwcHJlc3Npb25zKDApIHsgfQotICAgIAotICAg
IHZvaWQgc2V0V2luZG93UmVjdChjb25zdCBXZWJDb3JlOjpGbG9hdFJlY3QmKSBvdmVycmlkZTsK
LSAgICBXZWJDb3JlOjpGbG9hdFJlY3Qgd2luZG93UmVjdCgpIG92ZXJyaWRlOwotICAgIHZvaWQg
c2V0U3RhdHVzYmFyVGV4dChjb25zdCBXVEY6OlN0cmluZyYpIG92ZXJyaWRlIHsgfQorICAgIHsK
KyAgICB9CisKK3ByaXZhdGU6CisgICAgdm9pZCBzZXRXaW5kb3dSZWN0KGNvbnN0IFdlYkNvcmU6
OkZsb2F0UmVjdCYpIGZpbmFsOworICAgIFdlYkNvcmU6OkZsb2F0UmVjdCB3aW5kb3dSZWN0KCkg
ZmluYWw7CisgICAgdm9pZCBzZXRTdGF0dXNiYXJUZXh0KGNvbnN0IFdURjo6U3RyaW5nJikgZmlu
YWwgeyB9CiAKLSAgICB2b2lkIGZvY3VzKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCB0YWtlRm9jdXMo
V2ViQ29yZTo6Rm9jdXNEaXJlY3Rpb24pIG92ZXJyaWRlIHsgfQorICAgIHZvaWQgZm9jdXMoKSBm
aW5hbDsKKyAgICB2b2lkIHRha2VGb2N1cyhXZWJDb3JlOjpGb2N1c0RpcmVjdGlvbikgZmluYWwg
eyB9CiAKLSAgICB2b2lkIHJ1bkphdmFTY3JpcHRBbGVydChXZWJDb3JlOjpGcmFtZSosIGNvbnN0
IFdURjo6U3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBydW5KYXZhU2NyaXB0Q29uZmlybShX
ZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdURjo6U3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBy
dW5KYXZhU2NyaXB0UHJvbXB0KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV1RGOjpTdHJpbmcmIG1l
c3NhZ2UsIGNvbnN0IFdURjo6U3RyaW5nJiBkZWZhdWx0VmFsdWUsIFdURjo6U3RyaW5nJiByZXN1
bHQpIG92ZXJyaWRlOworICAgIHZvaWQgcnVuSmF2YVNjcmlwdEFsZXJ0KFdlYkNvcmU6OkZyYW1l
KiwgY29uc3QgV1RGOjpTdHJpbmcmKSBmaW5hbDsKKyAgICBib29sIHJ1bkphdmFTY3JpcHRDb25m
aXJtKFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV1RGOjpTdHJpbmcmKSBmaW5hbDsKKyAgICBib29s
IHJ1bkphdmFTY3JpcHRQcm9tcHQoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXVEY6OlN0cmluZyYg
bWVzc2FnZSwgY29uc3QgV1RGOjpTdHJpbmcmIGRlZmF1bHRWYWx1ZSwgV1RGOjpTdHJpbmcmIHJl
c3VsdCkgZmluYWw7CiAKLSAgICB2b2lkIHJ1bk9wZW5QYW5lbChXZWJDb3JlOjpGcmFtZSosIFBh
c3NSZWZQdHI8V2ViQ29yZTo6RmlsZUNob29zZXI+KSBvdmVycmlkZTsKKyAgICB2b2lkIHJ1bk9w
ZW5QYW5lbChXZWJDb3JlOjpGcmFtZSYsIFdlYkNvcmU6OkZpbGVDaG9vc2VyJikgZmluYWw7CiAK
ICNpZiBFTkFCTEUoVE9VQ0hfRVZFTlRTKQotICAgIHZvaWQgZGlkUHJldmVudERlZmF1bHRGb3JF
dmVudCgpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkUHJldmVudERlZmF1bHRGb3JFdmVudCgpIGZp
bmFsOwogI2VuZGlmCi0gICAgdm9pZCBkaWRSZWNlaXZlTW9iaWxlRG9jVHlwZShib29sKSBvdmVy
cmlkZTsKLSAgICB2b2lkIHNldE5lZWRzU2Nyb2xsTm90aWZpY2F0aW9ucyhXZWJDb3JlOjpGcmFt
ZSosIGJvb2wpIG92ZXJyaWRlOwotICAgIHZvaWQgb2JzZXJ2ZWRDb250ZW50Q2hhbmdlKFdlYkNv
cmU6OkZyYW1lKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBjbGVhckNvbnRlbnRDaGFuZ2VPYnNlcnZl
cnMoV2ViQ29yZTo6RnJhbWUqKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpGbG9hdFNpemUgc2Ny
ZWVuU2l6ZSgpIGNvbnN0IG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OkZsb2F0U2l6ZSBhdmFpbGFi
bGVTY3JlZW5TaXplKCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFZpZXdwb3J0
UHJvcGVydGllc0RpZENoYW5nZShjb25zdCBXZWJDb3JlOjpWaWV3cG9ydEFyZ3VtZW50cyYpIGNv
bnN0IG92ZXJyaWRlOwotICAgIHZvaWQgbm90aWZ5UmV2ZWFsZWRTZWxlY3Rpb25CeVNjcm9sbGlu
Z0ZyYW1lKFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBpc1N0b3BwaW5nKCkg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRMYXlvdXQoTGF5b3V0VHlwZSkgb3ZlcnJpZGU7Ci0gICAg
dm9pZCBkaWRTdGFydE92ZXJmbG93U2Nyb2xsKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRFbmRP
dmVyZmxvd1Njcm9sbCgpIG92ZXJyaWRlOwotCi0gICAgdm9pZCBzdXBwcmVzc0Zvcm1Ob3RpZmlj
YXRpb25zKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCByZXN0b3JlRm9ybU5vdGlmaWNhdGlvbnMoKSBv
dmVycmlkZTsKKworICAgIHZvaWQgZGlkUmVjZWl2ZU1vYmlsZURvY1R5cGUoYm9vbCkgZmluYWw7
CisgICAgdm9pZCBzZXROZWVkc1Njcm9sbE5vdGlmaWNhdGlvbnMoV2ViQ29yZTo6RnJhbWUqLCBi
b29sKSBmaW5hbDsKKyAgICB2b2lkIG9ic2VydmVkQ29udGVudENoYW5nZShXZWJDb3JlOjpGcmFt
ZSopIGZpbmFsOworICAgIHZvaWQgY2xlYXJDb250ZW50Q2hhbmdlT2JzZXJ2ZXJzKFdlYkNvcmU6
OkZyYW1lKikgZmluYWw7CisgICAgV2ViQ29yZTo6RmxvYXRTaXplIHNjcmVlblNpemUoKSBjb25z
dCBmaW5hbDsKKyAgICBXZWJDb3JlOjpGbG9hdFNpemUgYXZhaWxhYmxlU2NyZWVuU2l6ZSgpIGNv
bnN0IGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hWaWV3cG9ydFByb3BlcnRpZXNEaWRDaGFuZ2Uo
Y29uc3QgV2ViQ29yZTo6Vmlld3BvcnRBcmd1bWVudHMmKSBjb25zdCBmaW5hbDsKKyAgICB2b2lk
IG5vdGlmeVJldmVhbGVkU2VsZWN0aW9uQnlTY3JvbGxpbmdGcmFtZShXZWJDb3JlOjpGcmFtZSop
IGZpbmFsOworICAgIGJvb2wgaXNTdG9wcGluZygpIGZpbmFsOworICAgIHZvaWQgZGlkTGF5b3V0
KExheW91dFR5cGUpIGZpbmFsOworICAgIHZvaWQgZGlkU3RhcnRPdmVyZmxvd1Njcm9sbCgpIGZp
bmFsOworICAgIHZvaWQgZGlkRW5kT3ZlcmZsb3dTY3JvbGwoKSBmaW5hbDsKKworICAgIHZvaWQg
c3VwcHJlc3NGb3JtTm90aWZpY2F0aW9ucygpIGZpbmFsOworICAgIHZvaWQgcmVzdG9yZUZvcm1O
b3RpZmljYXRpb25zKCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBlbGVtZW50RGlkRm9jdXMoY29u
c3QgV2ViQ29yZTo6Tm9kZSopIG92ZXJyaWRlOwotICAgIHZvaWQgZWxlbWVudERpZEJsdXIoY29u
c3QgV2ViQ29yZTo6Tm9kZSopIG92ZXJyaWRlOworICAgIHZvaWQgZWxlbWVudERpZEZvY3VzKGNv
bnN0IFdlYkNvcmU6Ok5vZGUqKSBmaW5hbDsKKyAgICB2b2lkIGVsZW1lbnREaWRCbHVyKGNvbnN0
IFdlYkNvcmU6Ok5vZGUqKSBmaW5hbDsKIAotICAgIHZvaWQgYXR0YWNoUm9vdEdyYXBoaWNzTGF5
ZXIoV2ViQ29yZTo6RnJhbWUqLCBXZWJDb3JlOjpHcmFwaGljc0xheWVyKikgb3ZlcnJpZGU7Cisg
ICAgdm9pZCBhdHRhY2hSb290R3JhcGhpY3NMYXllcihXZWJDb3JlOjpGcmFtZSosIFdlYkNvcmU6
OkdyYXBoaWNzTGF5ZXIqKSBmaW5hbDsKIAotICAgIHZvaWQgZGlkRmx1c2hDb21wb3NpdGluZ0xh
eWVycygpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkRmx1c2hDb21wb3NpdGluZ0xheWVycygpIGZp
bmFsOwogCi0gICAgdm9pZCB1cGRhdGVWaWV3cG9ydENvbnN0cmFpbmVkTGF5ZXJzKEhhc2hNYXA8
UGxhdGZvcm1MYXllciosIHN0ZDo6dW5pcXVlX3B0cjxXZWJDb3JlOjpWaWV3cG9ydENvbnN0cmFp
bnRzPj4mLCBIYXNoTWFwPFBsYXRmb3JtTGF5ZXIqLCBQbGF0Zm9ybUxheWVyKj4mKSBvdmVycmlk
ZTsKKyAgICB2b2lkIHVwZGF0ZVZpZXdwb3J0Q29uc3RyYWluZWRMYXllcnMoSGFzaE1hcDxQbGF0
Zm9ybUxheWVyKiwgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6OlZpZXdwb3J0Q29uc3RyYWludHM+
PiYsIEhhc2hNYXA8UGxhdGZvcm1MYXllciosIFBsYXRmb3JtTGF5ZXIqPiYpIGZpbmFsOwogCi0g
ICAgYm9vbCBmZXRjaEN1c3RvbUZpeGVkUG9zaXRpb25MYXlvdXRSZWN0KFdlYkNvcmU6OkludFJl
Y3QmKSBvdmVycmlkZTsKLSAgICB2b2lkIGFkZE9yVXBkYXRlU2Nyb2xsaW5nTGF5ZXIoV2ViQ29y
ZTo6Tm9kZSosIFBsYXRmb3JtTGF5ZXIqLCBQbGF0Zm9ybUxheWVyKiwgY29uc3QgV2ViQ29yZTo6
SW50U2l6ZSYsIGJvb2wgYWxsb3dIb3Jpem9udGFsU2Nyb2xsYmFyLCBib29sIGFsbG93VmVydGlj
YWxTY3JvbGxiYXIpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVtb3ZlU2Nyb2xsaW5nTGF5ZXIoV2Vi
Q29yZTo6Tm9kZSosIFBsYXRmb3JtTGF5ZXIqLCBQbGF0Zm9ybUxheWVyKikgb3ZlcnJpZGU7Cisg
ICAgYm9vbCBmZXRjaEN1c3RvbUZpeGVkUG9zaXRpb25MYXlvdXRSZWN0KFdlYkNvcmU6OkludFJl
Y3QmKSBmaW5hbDsKKyAgICB2b2lkIGFkZE9yVXBkYXRlU2Nyb2xsaW5nTGF5ZXIoV2ViQ29yZTo6
Tm9kZSosIFBsYXRmb3JtTGF5ZXIqLCBQbGF0Zm9ybUxheWVyKiwgY29uc3QgV2ViQ29yZTo6SW50
U2l6ZSYsIGJvb2wgYWxsb3dIb3Jpem9udGFsU2Nyb2xsYmFyLCBib29sIGFsbG93VmVydGljYWxT
Y3JvbGxiYXIpIGZpbmFsOworICAgIHZvaWQgcmVtb3ZlU2Nyb2xsaW5nTGF5ZXIoV2ViQ29yZTo6
Tm9kZSosIFBsYXRmb3JtTGF5ZXIqLCBQbGF0Zm9ybUxheWVyKikgZmluYWw7CiAKLSAgICBib29s
IHNlbGVjdEl0ZW1Xcml0aW5nRGlyZWN0aW9uSXNOYXR1cmFsKCkgb3ZlcnJpZGU7Ci0gICAgYm9v
bCBzZWxlY3RJdGVtQWxpZ25tZW50Rm9sbG93c01lbnVXcml0aW5nRGlyZWN0aW9uKCkgb3ZlcnJp
ZGU7Ci0gICAgUmVmUHRyPFdlYkNvcmU6OlBvcHVwTWVudT4gY3JlYXRlUG9wdXBNZW51KFdlYkNv
cmU6OlBvcHVwTWVudUNsaWVudCopIGNvbnN0IG92ZXJyaWRlOwotICAgIFJlZlB0cjxXZWJDb3Jl
OjpTZWFyY2hQb3B1cE1lbnU+IGNyZWF0ZVNlYXJjaFBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1l
bnVDbGllbnQqKSBjb25zdCBvdmVycmlkZTsKKyAgICBib29sIHNlbGVjdEl0ZW1Xcml0aW5nRGly
ZWN0aW9uSXNOYXR1cmFsKCkgZmluYWw7CisgICAgYm9vbCBzZWxlY3RJdGVtQWxpZ25tZW50Rm9s
bG93c01lbnVXcml0aW5nRGlyZWN0aW9uKCkgZmluYWw7CisgICAgUmVmUHRyPFdlYkNvcmU6OlBv
cHVwTWVudT4gY3JlYXRlUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCopIGNvbnN0
IGZpbmFsOworICAgIFJlZlB0cjxXZWJDb3JlOjpTZWFyY2hQb3B1cE1lbnU+IGNyZWF0ZVNlYXJj
aFBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1lbnVDbGllbnQqKSBjb25zdCBmaW5hbDsKIAotICAg
IHZvaWQgd2ViQXBwT3JpZW50YXRpb25zVXBkYXRlZCgpIG92ZXJyaWRlOwotICAgIHZvaWQgZm9j
dXNlZEVsZW1lbnRDaGFuZ2VkKFdlYkNvcmU6OkVsZW1lbnQqKSBvdmVycmlkZTsKLSAgICB2b2lk
IHNob3dQbGF5YmFja1RhcmdldFBpY2tlcihib29sIGhhc1ZpZGVvKSBvdmVycmlkZTsKKyAgICB2
b2lkIHdlYkFwcE9yaWVudGF0aW9uc1VwZGF0ZWQoKSBmaW5hbDsKKyAgICB2b2lkIGZvY3VzZWRF
bGVtZW50Q2hhbmdlZChXZWJDb3JlOjpFbGVtZW50KikgZmluYWw7CisgICAgdm9pZCBzaG93UGxh
eWJhY2tUYXJnZXRQaWNrZXIoYm9vbCBoYXNWaWRlbykgZmluYWw7CiAKICNpZiBFTkFCTEUoT1JJ
RU5UQVRJT05fRVZFTlRTKQotICAgIGludCBkZXZpY2VPcmllbnRhdGlvbigpIGNvbnN0IG92ZXJy
aWRlOworICAgIGludCBkZXZpY2VPcmllbnRhdGlvbigpIGNvbnN0IGZpbmFsOwogI2VuZGlmCiAK
LXByaXZhdGU6Ci0gICAgaW50IG1fZm9ybU5vdGlmaWNhdGlvblN1cHByZXNzaW9uczsKKyAgICBp
bnQgbV9mb3JtTm90aWZpY2F0aW9uU3VwcHJlc3Npb25zIHsgMCB9OwogfTsKKwogI2VuZGlmCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2lvcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGll
bnRJT1MubW0gYi9Tb3VyY2UvV2ViS2l0L2lvcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGll
bnRJT1MubW0KaW5kZXggMTFmODRlYjlmOTNkN2RmMWM4MmViODQyNTI0NGE2YWMxZDgyYzBlYy4u
NTNlOGYwZWJiZTUyODQzMmEwZjllNGJlNGNmY2Q0MjNmZDczZTAzOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9pb3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50SU9TLm1tCisrKyBi
L1NvdXJjZS9XZWJLaXQvaW9zL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudElPUy5tbQpA
QCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDgsIDIwMDkgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CkBAIC0yMyw5ICsyMywxMCBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgog
ICovCiAKLSNpZiBQTEFURk9STShJT1MpCiAjaW1wb3J0ICJXZWJDaHJvbWVDbGllbnRJT1MuaCIK
IAorI2lmIFBMQVRGT1JNKElPUykKKwogI2ltcG9ydCAiRE9NTm9kZUludGVybmFsLmgiCiAjaW1w
b3J0ICJQb3B1cE1lbnVJT1MuaCIKICNpbXBvcnQgIlNlYXJjaFBvcHVwTWVudUlPUy5oIgpAQCAt
NDMsOSArNDQsNiBAQAogI2ltcG9ydCAiV2ViVmlldy5oIgogI2ltcG9ydCAiV2ViVmlld0ludGVy
bmFsLmgiCiAjaW1wb3J0ICJXZWJWaWV3UHJpdmF0ZS5oIgotCi0jaW1wb3J0IDx3dGYvSGFzaE1h
cC5oPgotI2ltcG9ydCA8d3RmL1JlZlB0ci5oPgogI2ltcG9ydCA8V2ViQ29yZS9GaWxlQ2hvb3Nl
ci5oPgogI2ltcG9ydCA8V2ViQ29yZS9GbG9hdFJlY3QuaD4KICNpbXBvcnQgPFdlYkNvcmUvRnJh
bWUuaD4KQEAgLTYxLDYgKzU5LDggQEAKICNpbXBvcnQgPFdlYkNvcmUvU2Nyb2xsaW5nQ29uc3Ry
YWludHMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV0FLV2luZG93Lmg+CiAjaW1wb3J0IDxXZWJDb3Jl
L1dlYkNvcmVUaHJlYWRNZXNzYWdlLmg+CisjaW1wb3J0IDx3dGYvSGFzaE1hcC5oPgorI2ltcG9y
dCA8d3RmL1JlZlB0ci5oPgogCiBOU1N0cmluZyAqIGNvbnN0IFdlYk9wZW5QYW5lbENvbmZpZ3Vy
YXRpb25BbGxvd011bHRpcGxlRmlsZXNLZXkgPSBAIldlYk9wZW5QYW5lbENvbmZpZ3VyYXRpb25B
bGxvd011bHRpcGxlRmlsZXNLZXkiOwogTlNTdHJpbmcgKiBjb25zdCBXZWJPcGVuUGFuZWxDb25m
aWd1cmF0aW9uTWVkaWFDYXB0dXJlVHlwZUtleSA9IEAiV2ViT3BlblBhbmVsQ29uZmlndXJhdGlv
bk1lZGlhQ2FwdHVyZVR5cGVLZXkiOwpAQCAtNjksOSArNjksMTAgQEAgTlNTdHJpbmcgKiBjb25z
dCBXZWJPcGVuUGFuZWxDb25maWd1cmF0aW9uTWltZVR5cGVzS2V5ID0gQCJXZWJPcGVuUGFuZWxD
b25maWd1cmEKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCiAjaWYgRU5BQkxFKE1FRElBX0NB
UFRVUkUpCi1zdGF0aWMgV2ViTWVkaWFDYXB0dXJlVHlwZSB3ZWJNZWRpYUNhcHR1cmVUeXBlKE1l
ZGlhQ2FwdHVyZVR5cGUgbWVkaWFDYXB0dXJlVHlwZSkKKworc3RhdGljIFdlYk1lZGlhQ2FwdHVy
ZVR5cGUgd2ViTWVkaWFDYXB0dXJlVHlwZShNZWRpYUNhcHR1cmVUeXBlIHR5cGUpCiB7Ci0gICAg
c3dpdGNoIChtZWRpYUNhcHR1cmVUeXBlKSB7CisgICAgc3dpdGNoICh0eXBlKSB7CiAgICAgY2Fz
ZSBNZWRpYUNhcHR1cmVUeXBlTm9uZToKICAgICAgICAgcmV0dXJuIFdlYk1lZGlhQ2FwdHVyZVR5
cGVOb25lOwogICAgIGNhc2UgTWVkaWFDYXB0dXJlVHlwZVVzZXI6CkBAIC04Myw2ICs4NCw3IEBA
IHN0YXRpYyBXZWJNZWRpYUNhcHR1cmVUeXBlIHdlYk1lZGlhQ2FwdHVyZVR5cGUoTWVkaWFDYXB0
dXJlVHlwZSBtZWRpYUNhcHR1cmVUeXBlCiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAg
cmV0dXJuIFdlYk1lZGlhQ2FwdHVyZVR5cGVOb25lOwogfQorCiAjZW5kaWYKIAogdm9pZCBXZWJD
aHJvbWVDbGllbnRJT1M6OnNldFdpbmRvd1JlY3QoY29uc3QgV2ViQ29yZTo6RmxvYXRSZWN0JiBy
KQpAQCAtMTI0LDE4ICsxMjYsMTUgQEAgYm9vbCBXZWJDaHJvbWVDbGllbnRJT1M6OnJ1bkphdmFT
Y3JpcHRQcm9tcHQoRnJhbWUqIGZyYW1lLCBjb25zdCBXVEY6OlN0cmluZyYgcHIKICAgICByZXR1
cm4gIXJlc3VsdC5pc051bGwoKTsKIH0KIAotdm9pZCBXZWJDaHJvbWVDbGllbnRJT1M6OnJ1bk9w
ZW5QYW5lbChGcmFtZSosIFBhc3NSZWZQdHI8RmlsZUNob29zZXI+IGNob29zZXIpCit2b2lkIFdl
YkNocm9tZUNsaWVudElPUzo6cnVuT3BlblBhbmVsKEZyYW1lJiwgRmlsZUNob29zZXImIGNob29z
ZXIpCiB7Ci0gICAgY29uc3QgRmlsZUNob29zZXJTZXR0aW5ncyYgc2V0dGluZ3MgPSBjaG9vc2Vy
LT5zZXR0aW5ncygpOworICAgIGF1dG8mIHNldHRpbmdzID0gY2hvb3Nlci5zZXR0aW5ncygpOwog
ICAgIEJPT0wgYWxsb3dNdWx0aXBsZUZpbGVzID0gc2V0dGluZ3MuYWxsb3dzTXVsdGlwbGVGaWxl
czsKLSAgICBWZWN0b3I8U3RyaW5nPiBhY2NlcHRNSU1FVHlwZXMgPSBzZXR0aW5ncy5hY2NlcHRN
SU1FVHlwZXM7CiAgICAgV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIgKmxpc3RlbmVyID0gW1tX
ZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lciBhbGxvY10gaW5pdFdpdGhDaG9vc2VyOmNob29zZXJd
OwogCi0gICAgLy8gQ29udmVydCB0aGUgYWNjZXB0IGF0dHJpYnV0ZSBzdHJpbmcgaW50byBhIGxp
c3Qgb2YgTUlNRSB0eXBlcy4KLSAgICBzaXplX3QgbnVtTUlNRVR5cGVzID0gYWNjZXB0TUlNRVR5
cGVzLnNpemUoKTsKLSAgICBOU011dGFibGVBcnJheSAqbWltZVR5cGVzID0gW05TTXV0YWJsZUFy
cmF5IGFycmF5V2l0aENhcGFjaXR5Om51bU1JTUVUeXBlc107Ci0gICAgZm9yIChzaXplX3QgaSA9
IDA7IGkgPCBudW1NSU1FVHlwZXM7ICsraSkKLSAgICAgICAgW21pbWVUeXBlcyBhZGRPYmplY3Q6
YWNjZXB0TUlNRVR5cGVzW2ldXTsKKyAgICBOU011dGFibGVBcnJheSAqbWltZVR5cGVzID0gW05T
TXV0YWJsZUFycmF5IGFycmF5V2l0aENhcGFjaXR5OnNldHRpbmdzLmFjY2VwdE1JTUVUeXBlcy5z
aXplKCldOworICAgIGZvciAoYXV0byYgdHlwZSA6IHNldHRpbmdzLmFjY2VwdE1JTUVUeXBlcykK
KyAgICAgICAgW21pbWVUeXBlcyBhZGRPYmplY3Q6dHlwZV07CiAKICAgICBXZWJNZWRpYUNhcHR1
cmVUeXBlIGNhcHR1cmVUeXBlID0gV2ViTWVkaWFDYXB0dXJlVHlwZU5vbmU7CiAjaWYgRU5BQkxF
KE1FRElBX0NBUFRVUkUpCkBAIC0xNTgsMTAgKzE1NywxMiBAQCB2b2lkIFdlYkNocm9tZUNsaWVu
dElPUzo6cnVuT3BlblBhbmVsKEZyYW1lKiwgUGFzc1JlZlB0cjxGaWxlQ2hvb3Nlcj4gY2hvb3Nl
cikKIH0KIAogI2lmIEVOQUJMRShJT1NfVE9VQ0hfRVZFTlRTKQorCiB2b2lkIFdlYkNocm9tZUNs
aWVudElPUzo6ZGlkUHJldmVudERlZmF1bHRGb3JFdmVudCgpCiB7CiAgICAgW1t3ZWJWaWV3KCkg
X1VJS2l0RGVsZWdhdGVGb3J3YXJkZXJdIHdlYlZpZXdEaWRQcmV2ZW50RGVmYXVsdEZvckV2ZW50
OndlYlZpZXcoKV07CiB9CisKICNlbmRpZgogCiB2b2lkIFdlYkNocm9tZUNsaWVudElPUzo6ZGlk
UmVjZWl2ZU1vYmlsZURvY1R5cGUoYm9vbCBpc01vYmlsZURvY3R5cGUpCkBAIC0zNTUsMTAgKzM1
NiwxMiBAQCB2b2lkIFdlYkNocm9tZUNsaWVudElPUzo6c2hvd1BsYXliYWNrVGFyZ2V0UGlja2Vy
KGJvb2wgaGFzVmlkZW8pCiB9CiAKICNpZiBFTkFCTEUoT1JJRU5UQVRJT05fRVZFTlRTKQorCiBp
bnQgV2ViQ2hyb21lQ2xpZW50SU9TOjpkZXZpY2VPcmllbnRhdGlvbigpIGNvbnN0CiB7CiAgICAg
cmV0dXJuIFtbd2ViVmlldygpIF9VSUtpdERlbGVnYXRlRm9yd2FyZGVyXSBkZXZpY2VPcmllbnRh
dGlvbl07CiB9CisKICNlbmRpZgogCiAjZW5kaWYgLy8gUExBVEZPUk0oSU9TKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmggYi9T
b3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaAppbmRleCA0
OGFiZTMwOGE4ZmVmNzVhZjg2ODZlMWU1M2E4M2M4NzIxZjgyN2Y5Li5mNGYwOTZjNWQ2NDczZWJj
NmU3YWJkNTgzYjZkZmVmNGFhYTRkMTU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9X
ZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9X
ZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaApAQCAtMzMsMTMwICszMywxMzggQEAKIAog
QGNsYXNzIFdlYlZpZXc7CiAKKy8vIEZJWE1FOiBUaGlzIGNsYXNzIGlzIHVzZWQgYXMgYSBjb25j
cmV0ZSBjbGFzcyBvbiBNYWMsIGJ1dCBvbiBpT1MgdGhpcyBpcyBhbiBhYnN0cmFjdAorLy8gYmFz
ZSBjbGFzcyBvZiB0aGUgY29uY3JldGUgY2xhc3MsIFdlYkNocm9tZUNsaWVudElPUy4gQmVjYXVz
ZSBvZiB0aGF0LCB0aGlzIGNsYXNzIGFuZAorLy8gbWFueSBvZiBpdHMgZnVuY3Rpb25zIGFyZSBu
b3QgbWFya2VkIGZpbmFsLiBUaGF0IGlzIG1lc3N5IHdheSB0byBvcmdhbml6ZSB0aGluZ3MuCiBj
bGFzcyBXZWJDaHJvbWVDbGllbnQgOiBwdWJsaWMgV2ViQ29yZTo6Q2hyb21lQ2xpZW50IHsKIHB1
YmxpYzoKICAgICBXZWJDaHJvbWVDbGllbnQoV2ViVmlldyopOwotICAgIAotICAgIHZvaWQgY2hy
b21lRGVzdHJveWVkKCkgb3ZlcnJpZGU7Ci0gICAgCisKKyAgICBXZWJWaWV3KiB3ZWJWaWV3KCkg
Y29uc3QgeyByZXR1cm4gbV93ZWJWaWV3OyB9CisKK3ByaXZhdGU6CisgICAgdm9pZCBjaHJvbWVE
ZXN0cm95ZWQoKSBmaW5hbDsKKwogICAgIHZvaWQgc2V0V2luZG93UmVjdChjb25zdCBXZWJDb3Jl
OjpGbG9hdFJlY3QmKSBvdmVycmlkZTsKICAgICBXZWJDb3JlOjpGbG9hdFJlY3Qgd2luZG93UmVj
dCgpIG92ZXJyaWRlOwogCi0gICAgV2ViQ29yZTo6RmxvYXRSZWN0IHBhZ2VSZWN0KCkgb3ZlcnJp
ZGU7CisgICAgV2ViQ29yZTo6RmxvYXRSZWN0IHBhZ2VSZWN0KCkgZmluYWw7CiAKICAgICB2b2lk
IGZvY3VzKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCB1bmZvY3VzKCkgb3ZlcnJpZGU7Ci0gICAgCi0g
ICAgYm9vbCBjYW5UYWtlRm9jdXMoV2ViQ29yZTo6Rm9jdXNEaXJlY3Rpb24pIG92ZXJyaWRlOwor
ICAgIHZvaWQgdW5mb2N1cygpIGZpbmFsOworCisgICAgYm9vbCBjYW5UYWtlRm9jdXMoV2ViQ29y
ZTo6Rm9jdXNEaXJlY3Rpb24pIGZpbmFsOwogICAgIHZvaWQgdGFrZUZvY3VzKFdlYkNvcmU6OkZv
Y3VzRGlyZWN0aW9uKSBvdmVycmlkZTsKIAogICAgIHZvaWQgZm9jdXNlZEVsZW1lbnRDaGFuZ2Vk
KFdlYkNvcmU6OkVsZW1lbnQqKSBvdmVycmlkZTsKLSAgICB2b2lkIGZvY3VzZWRGcmFtZUNoYW5n
ZWQoV2ViQ29yZTo6RnJhbWUqKSBvdmVycmlkZTsKLQotICAgIFdlYkNvcmU6OlBhZ2UqIGNyZWF0
ZVdpbmRvdyhXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6OkZyYW1lTG9hZFJlcXVlc3Qm
LCBjb25zdCBXZWJDb3JlOjpXaW5kb3dGZWF0dXJlcyYsIGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRp
b25BY3Rpb24mKSBvdmVycmlkZTsKLSAgICB2b2lkIHNob3coKSBvdmVycmlkZTsKLQotICAgIGJv
b2wgY2FuUnVuTW9kYWwoKSBvdmVycmlkZTsKLSAgICB2b2lkIHJ1bk1vZGFsKCkgb3ZlcnJpZGU7
Ci0KLSAgICB2b2lkIHNldFRvb2xiYXJzVmlzaWJsZShib29sKSBvdmVycmlkZTsKLSAgICBib29s
IHRvb2xiYXJzVmlzaWJsZSgpIG92ZXJyaWRlOwotICAgIAotICAgIHZvaWQgc2V0U3RhdHVzYmFy
VmlzaWJsZShib29sKSBvdmVycmlkZTsKLSAgICBib29sIHN0YXR1c2JhclZpc2libGUoKSBvdmVy
cmlkZTsKLSAgICAKLSAgICB2b2lkIHNldFNjcm9sbGJhcnNWaXNpYmxlKGJvb2wpIG92ZXJyaWRl
OwotICAgIGJvb2wgc2Nyb2xsYmFyc1Zpc2libGUoKSBvdmVycmlkZTsKLSAgICAKLSAgICB2b2lk
IHNldE1lbnViYXJWaXNpYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJvb2wgbWVudWJhclZpc2li
bGUoKSBvdmVycmlkZTsKLSAgICAKLSAgICB2b2lkIHNldFJlc2l6YWJsZShib29sKSBvdmVycmlk
ZTsKLSAgICAKLSAgICB2b2lkIGFkZE1lc3NhZ2VUb0NvbnNvbGUoSlNDOjpNZXNzYWdlU291cmNl
LCBKU0M6Ok1lc3NhZ2VMZXZlbCwgY29uc3QgV1RGOjpTdHJpbmcmIG1lc3NhZ2UsIHVuc2lnbmVk
IGxpbmVOdW1iZXIsIHVuc2lnbmVkIGNvbHVtbk51bWJlciwgY29uc3QgV1RGOjpTdHJpbmcmIHNv
dXJjZVVSTCkgb3ZlcnJpZGU7Ci0KLSAgICBib29sIGNhblJ1bkJlZm9yZVVubG9hZENvbmZpcm1Q
YW5lbCgpIG92ZXJyaWRlOwotICAgIGJvb2wgcnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsKGNv
bnN0IFdURjo6U3RyaW5nJiBtZXNzYWdlLCBXZWJDb3JlOjpGcmFtZSopIG92ZXJyaWRlOwotCi0g
ICAgdm9pZCBjbG9zZVdpbmRvd1Nvb24oKSBvdmVycmlkZTsKKyAgICB2b2lkIGZvY3VzZWRGcmFt
ZUNoYW5nZWQoV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKKworICAgIFdlYkNvcmU6OlBhZ2UqIGNy
ZWF0ZVdpbmRvdyhXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6OkZyYW1lTG9hZFJlcXVl
c3QmLCBjb25zdCBXZWJDb3JlOjpXaW5kb3dGZWF0dXJlcyYsIGNvbnN0IFdlYkNvcmU6Ok5hdmln
YXRpb25BY3Rpb24mKSBmaW5hbDsKKyAgICB2b2lkIHNob3coKSBmaW5hbDsKKworICAgIGJvb2wg
Y2FuUnVuTW9kYWwoKSBmaW5hbDsKKyAgICB2b2lkIHJ1bk1vZGFsKCkgZmluYWw7CisKKyAgICB2
b2lkIHNldFRvb2xiYXJzVmlzaWJsZShib29sKSBmaW5hbDsKKyAgICBib29sIHRvb2xiYXJzVmlz
aWJsZSgpIGZpbmFsOworCisgICAgdm9pZCBzZXRTdGF0dXNiYXJWaXNpYmxlKGJvb2wpIGZpbmFs
OworICAgIGJvb2wgc3RhdHVzYmFyVmlzaWJsZSgpIGZpbmFsOworCisgICAgdm9pZCBzZXRTY3Jv
bGxiYXJzVmlzaWJsZShib29sKSBmaW5hbDsKKyAgICBib29sIHNjcm9sbGJhcnNWaXNpYmxlKCkg
ZmluYWw7CisKKyAgICB2b2lkIHNldE1lbnViYXJWaXNpYmxlKGJvb2wpIGZpbmFsOworICAgIGJv
b2wgbWVudWJhclZpc2libGUoKSBmaW5hbDsKKworICAgIHZvaWQgc2V0UmVzaXphYmxlKGJvb2wp
IGZpbmFsOworCisgICAgdm9pZCBhZGRNZXNzYWdlVG9Db25zb2xlKEpTQzo6TWVzc2FnZVNvdXJj
ZSwgSlNDOjpNZXNzYWdlTGV2ZWwsIGNvbnN0IFdURjo6U3RyaW5nJiBtZXNzYWdlLCB1bnNpZ25l
ZCBsaW5lTnVtYmVyLCB1bnNpZ25lZCBjb2x1bW5OdW1iZXIsIGNvbnN0IFdURjo6U3RyaW5nJiBz
b3VyY2VVUkwpIGZpbmFsOworCisgICAgYm9vbCBjYW5SdW5CZWZvcmVVbmxvYWRDb25maXJtUGFu
ZWwoKSBmaW5hbDsKKyAgICBib29sIHJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbChjb25zdCBX
VEY6OlN0cmluZyYgbWVzc2FnZSwgV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKKworICAgIHZvaWQg
Y2xvc2VXaW5kb3dTb29uKCkgZmluYWw7CiAKICAgICB2b2lkIHJ1bkphdmFTY3JpcHRBbGVydChX
ZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdURjo6U3RyaW5nJikgb3ZlcnJpZGU7CiAgICAgYm9vbCBy
dW5KYXZhU2NyaXB0Q29uZmlybShXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdURjo6U3RyaW5nJikg
b3ZlcnJpZGU7CiAgICAgYm9vbCBydW5KYXZhU2NyaXB0UHJvbXB0KFdlYkNvcmU6OkZyYW1lKiwg
Y29uc3QgV1RGOjpTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFdURjo6U3RyaW5nJiBkZWZhdWx0VmFs
dWUsIFdURjo6U3RyaW5nJiByZXN1bHQpIG92ZXJyaWRlOwogCi0gICAgYm9vbCBzdXBwb3J0c0lt
bWVkaWF0ZUludmFsaWRhdGlvbigpIG92ZXJyaWRlOwotICAgIHZvaWQgaW52YWxpZGF0ZVJvb3RW
aWV3KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBvdmVycmlkZTsKLSAgICB2b2lkIGludmFsaWRh
dGVDb250ZW50c0FuZFJvb3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBvdmVycmlkZTsK
LSAgICB2b2lkIGludmFsaWRhdGVDb250ZW50c0ZvclNsb3dTY3JvbGwoY29uc3QgV2ViQ29yZTo6
SW50UmVjdCYpIG92ZXJyaWRlOwotICAgIHZvaWQgc2Nyb2xsKGNvbnN0IFdlYkNvcmU6OkludFNp
emUmIHNjcm9sbERlbHRhLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiByZWN0VG9TY3JvbGwsIGNv
bnN0IFdlYkNvcmU6OkludFJlY3QmIGNsaXBSZWN0KSBvdmVycmlkZTsKKyAgICBib29sIHN1cHBv
cnRzSW1tZWRpYXRlSW52YWxpZGF0aW9uKCkgZmluYWw7CisgICAgdm9pZCBpbnZhbGlkYXRlUm9v
dFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGZpbmFsOworICAgIHZvaWQgaW52YWxpZGF0
ZUNvbnRlbnRzQW5kUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGZpbmFsOworICAg
IHZvaWQgaW52YWxpZGF0ZUNvbnRlbnRzRm9yU2xvd1Njcm9sbChjb25zdCBXZWJDb3JlOjpJbnRS
ZWN0JikgZmluYWw7CisgICAgdm9pZCBzY3JvbGwoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgc2Ny
b2xsRGVsdGEsIGNvbnN0IFdlYkNvcmU6OkludFJlY3QmIHJlY3RUb1Njcm9sbCwgY29uc3QgV2Vi
Q29yZTo6SW50UmVjdCYgY2xpcFJlY3QpIGZpbmFsOworCisgICAgV2ViQ29yZTo6SW50UG9pbnQg
c2NyZWVuVG9Sb290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIGNvbnN0IGZpbmFsOwor
ICAgIFdlYkNvcmU6OkludFJlY3Qgcm9vdFZpZXdUb1NjcmVlbihjb25zdCBXZWJDb3JlOjpJbnRS
ZWN0JikgY29uc3QgZmluYWw7CiAKLSAgICBXZWJDb3JlOjpJbnRQb2ludCBzY3JlZW5Ub1Jvb3RW
aWV3KGNvbnN0IFdlYkNvcmU6OkludFBvaW50JikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgV2ViQ29y
ZTo6SW50UmVjdCByb290Vmlld1RvU2NyZWVuKGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBjb25z
dCBvdmVycmlkZTsKICNpZiBQTEFURk9STShJT1MpCi0gICAgV2ViQ29yZTo6SW50UG9pbnQgYWNj
ZXNzaWJpbGl0eVNjcmVlblRvUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKSBjb25z
dCBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpJbnRSZWN0IHJvb3RWaWV3VG9BY2Nlc3NpYmlsaXR5
U2NyZWVuKGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBjb25zdCBvdmVycmlkZTsKKyAgICBXZWJD
b3JlOjpJbnRQb2ludCBhY2Nlc3NpYmlsaXR5U2NyZWVuVG9Sb290Vmlldyhjb25zdCBXZWJDb3Jl
OjpJbnRQb2ludCYpIGNvbnN0IGZpbmFsOworICAgIFdlYkNvcmU6OkludFJlY3Qgcm9vdFZpZXdU
b0FjY2Vzc2liaWxpdHlTY3JlZW4oY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGNvbnN0IGZpbmFs
OwogI2VuZGlmCi0gICAgUGxhdGZvcm1QYWdlQ2xpZW50IHBsYXRmb3JtUGFnZUNsaWVudCgpIGNv
bnN0IG92ZXJyaWRlOwotICAgIHZvaWQgY29udGVudHNTaXplQ2hhbmdlZChXZWJDb3JlOjpGcmFt
ZSosIGNvbnN0IFdlYkNvcmU6OkludFNpemUmKSBjb25zdCBvdmVycmlkZTsKLSAgICB2b2lkIHNj
cm9sbFJlY3RJbnRvVmlldyhjb25zdCBXZWJDb3JlOjpJbnRSZWN0JikgY29uc3Qgb3ZlcnJpZGU7
Ci0gICAgCisKKyAgICBQbGF0Zm9ybVBhZ2VDbGllbnQgcGxhdGZvcm1QYWdlQ2xpZW50KCkgY29u
c3QgZmluYWw7CisgICAgdm9pZCBjb250ZW50c1NpemVDaGFuZ2VkKFdlYkNvcmU6OkZyYW1lKiwg
Y29uc3QgV2ViQ29yZTo6SW50U2l6ZSYpIGNvbnN0IGZpbmFsOworICAgIHZvaWQgc2Nyb2xsUmVj
dEludG9WaWV3KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBjb25zdCBmaW5hbDsKKwogICAgIHZv
aWQgc2V0U3RhdHVzYmFyVGV4dChjb25zdCBXVEY6OlN0cmluZyYpIG92ZXJyaWRlOwogCi0gICAg
dm9pZCBzY3JvbGxiYXJzTW9kZURpZENoYW5nZSgpIGNvbnN0IG92ZXJyaWRlIHsgfQotICAgIGJv
b2wgc2hvdWxkVW5hdmFpbGFibGVQbHVnaW5NZXNzYWdlQmVCdXR0b24oV2ViQ29yZTo6UmVuZGVy
RW1iZWRkZWRPYmplY3Q6OlBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKSBjb25zdCBvdmVycmlk
ZTsKLSAgICB2b2lkIHVuYXZhaWxhYmxlUGx1Z2luQnV0dG9uQ2xpY2tlZChXZWJDb3JlOjpFbGVt
ZW50KiwgV2ViQ29yZTo6UmVuZGVyRW1iZWRkZWRPYmplY3Q6OlBsdWdpblVuYXZhaWxhYmlsaXR5
UmVhc29uKSBjb25zdCBvdmVycmlkZTsKLSAgICB2b2lkIG1vdXNlRGlkTW92ZU92ZXJFbGVtZW50
KGNvbnN0IFdlYkNvcmU6OkhpdFRlc3RSZXN1bHQmLCB1bnNpZ25lZCBtb2RpZmllckZsYWdzKSBv
dmVycmlkZTsKKyAgICB2b2lkIHNjcm9sbGJhcnNNb2RlRGlkQ2hhbmdlKCkgY29uc3QgZmluYWwg
eyB9CisgICAgYm9vbCBzaG91bGRVbmF2YWlsYWJsZVBsdWdpbk1lc3NhZ2VCZUJ1dHRvbihXZWJD
b3JlOjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24pIGNv
bnN0IGZpbmFsOworICAgIHZvaWQgdW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2VkKFdlYkNv
cmU6OkVsZW1lbnQqLCBXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2luVW5hdmFp
bGFiaWxpdHlSZWFzb24pIGNvbnN0IGZpbmFsOworICAgIHZvaWQgbW91c2VEaWRNb3ZlT3ZlckVs
ZW1lbnQoY29uc3QgV2ViQ29yZTo6SGl0VGVzdFJlc3VsdCYsIHVuc2lnbmVkIG1vZGlmaWVyRmxh
Z3MpIGZpbmFsOwogCi0gICAgdm9pZCBzZXRUb29sVGlwKGNvbnN0IFdURjo6U3RyaW5nJiwgV2Vi
Q29yZTo6VGV4dERpcmVjdGlvbikgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRUb29sVGlwKGNvbnN0
IFdURjo6U3RyaW5nJiwgV2ViQ29yZTo6VGV4dERpcmVjdGlvbikgZmluYWw7CiAKLSAgICB2b2lk
IHByaW50KFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBleGNlZWRlZERhdGFi
YXNlUXVvdGEoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXVEY6OlN0cmluZyYgZGF0YWJhc2VOYW1l
LCBXZWJDb3JlOjpEYXRhYmFzZURldGFpbHMpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVhY2hlZE1h
eEFwcENhY2hlU2l6ZShpbnQ2NF90IHNwYWNlTmVlZGVkKSBvdmVycmlkZTsKLSAgICB2b2lkIHJl
YWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4q
LCBpbnQ2NF90IHRvdGFsU3BhY2VOZWVkZWQpIG92ZXJyaWRlOworICAgIHZvaWQgcHJpbnQoV2Vi
Q29yZTo6RnJhbWUqKSBmaW5hbDsKKyAgICB2b2lkIGV4Y2VlZGVkRGF0YWJhc2VRdW90YShXZWJD
b3JlOjpGcmFtZSosIGNvbnN0IFdURjo6U3RyaW5nJiBkYXRhYmFzZU5hbWUsIFdlYkNvcmU6OkRh
dGFiYXNlRGV0YWlscykgZmluYWw7CisgICAgdm9pZCByZWFjaGVkTWF4QXBwQ2FjaGVTaXplKGlu
dDY0X3Qgc3BhY2VOZWVkZWQpIGZpbmFsOworICAgIHZvaWQgcmVhY2hlZEFwcGxpY2F0aW9uQ2Fj
aGVPcmlnaW5RdW90YShXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiosIGludDY0X3QgdG90YWxTcGFj
ZU5lZWRlZCkgZmluYWw7CiAKICNpZiBFTkFCTEUoREFTSEJPQVJEX1NVUFBPUlQpCi0gICAgdm9p
ZCBhbm5vdGF0ZWRSZWdpb25zQ2hhbmdlZCgpIG92ZXJyaWRlOworICAgIHZvaWQgYW5ub3RhdGVk
UmVnaW9uc0NoYW5nZWQoKSBmaW5hbDsKICNlbmRpZgogCi0gICAgdm9pZCBydW5PcGVuUGFuZWwo
V2ViQ29yZTo6RnJhbWUqLCBQYXNzUmVmUHRyPFdlYkNvcmU6OkZpbGVDaG9vc2VyPikgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCBsb2FkSWNvbkZvckZpbGVzKGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4m
LCBXZWJDb3JlOjpGaWxlSWNvbkxvYWRlciYpIG92ZXJyaWRlOworICAgIHZvaWQgcnVuT3BlblBh
bmVsKFdlYkNvcmU6OkZyYW1lJiwgV2ViQ29yZTo6RmlsZUNob29zZXImKSBvdmVycmlkZTsKKyAg
ICB2b2lkIGxvYWRJY29uRm9yRmlsZXMoY29uc3QgVmVjdG9yPFdURjo6U3RyaW5nPiYsIFdlYkNv
cmU6OkZpbGVJY29uTG9hZGVyJikgZmluYWw7CiAKICNpZiAhUExBVEZPUk0oSU9TKQotICAgIHZv
aWQgc2V0Q3Vyc29yKGNvbnN0IFdlYkNvcmU6OkN1cnNvciYpIG92ZXJyaWRlOwotICAgIHZvaWQg
c2V0Q3Vyc29ySGlkZGVuVW50aWxNb3VzZU1vdmVzKGJvb2wpIG92ZXJyaWRlOworICAgIHZvaWQg
c2V0Q3Vyc29yKGNvbnN0IFdlYkNvcmU6OkN1cnNvciYpIGZpbmFsOworICAgIHZvaWQgc2V0Q3Vy
c29ySGlkZGVuVW50aWxNb3VzZU1vdmVzKGJvb2wpIGZpbmFsOwogI2VuZGlmCiAKICNpZiBFTkFC
TEUoSU5QVVRfVFlQRV9DT0xPUikKLSAgICBzdGQ6OnVuaXF1ZV9wdHI8V2ViQ29yZTo6Q29sb3JD
aG9vc2VyPiBjcmVhdGVDb2xvckNob29zZXIoV2ViQ29yZTo6Q29sb3JDaG9vc2VyQ2xpZW50Kiwg
Y29uc3QgV2ViQ29yZTo6Q29sb3ImKSBvdmVycmlkZTsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8V2Vi
Q29yZTo6Q29sb3JDaG9vc2VyPiBjcmVhdGVDb2xvckNob29zZXIoV2ViQ29yZTo6Q29sb3JDaG9v
c2VyQ2xpZW50KiwgY29uc3QgV2ViQ29yZTo6Q29sb3ImKSBmaW5hbDsKICNlbmRpZgotICAgIAor
CiAjaWYgRU5BQkxFKFBPSU5URVJfTE9DSykKLSAgICBib29sIHJlcXVlc3RQb2ludGVyTG9jaygp
IG92ZXJyaWRlOwotICAgIHZvaWQgcmVxdWVzdFBvaW50ZXJVbmxvY2soKSBvdmVycmlkZTsKKyAg
ICBib29sIHJlcXVlc3RQb2ludGVyTG9jaygpIGZpbmFsOworICAgIHZvaWQgcmVxdWVzdFBvaW50
ZXJVbmxvY2soKSBmaW5hbDsKICNlbmRpZgogCi0gICAgV2ViQ29yZTo6S2V5Ym9hcmRVSU1vZGUg
a2V5Ym9hcmRVSU1vZGUoKSBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpLZXlib2FyZFVJTW9kZSBr
ZXlib2FyZFVJTW9kZSgpIGZpbmFsOworCisgICAgTlNSZXNwb25kZXIgKmZpcnN0UmVzcG9uZGVy
KCkgZmluYWw7CisgICAgdm9pZCBtYWtlRmlyc3RSZXNwb25kZXIoTlNSZXNwb25kZXIgKikgZmlu
YWw7CiAKLSAgICBOU1Jlc3BvbmRlciAqZmlyc3RSZXNwb25kZXIoKSBvdmVycmlkZTsKLSAgICB2
b2lkIG1ha2VGaXJzdFJlc3BvbmRlcihOU1Jlc3BvbmRlciAqKSBvdmVycmlkZTsKKyAgICB2b2lk
IGVuYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkgZmluYWw7CisgICAgdm9pZCBkaXNhYmxlU3VkZGVu
VGVybWluYXRpb24oKSBmaW5hbDsKIAotICAgIHZvaWQgZW5hYmxlU3VkZGVuVGVybWluYXRpb24o
KSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc2FibGVTdWRkZW5UZXJtaW5hdGlvbigpIG92ZXJyaWRl
OwotICAgIAotICAgIGJvb2wgc2hvdWxkUmVwbGFjZVdpdGhHZW5lcmF0ZWRGaWxlRm9yVXBsb2Fk
KGNvbnN0IFdURjo6U3RyaW5nJiBwYXRoLCBXVEY6OlN0cmluZyAmZ2VuZXJhdGVkRmlsZW5hbWUp
IG92ZXJyaWRlOwotICAgIFdURjo6U3RyaW5nIGdlbmVyYXRlUmVwbGFjZW1lbnRGaWxlKGNvbnN0
IFdURjo6U3RyaW5nJiBwYXRoKSBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZFJlcGxhY2VXaXRo
R2VuZXJhdGVkRmlsZUZvclVwbG9hZChjb25zdCBXVEY6OlN0cmluZyYgcGF0aCwgV1RGOjpTdHJp
bmcgJmdlbmVyYXRlZEZpbGVuYW1lKSBmaW5hbDsKKyAgICBXVEY6OlN0cmluZyBnZW5lcmF0ZVJl
cGxhY2VtZW50RmlsZShjb25zdCBXVEY6OlN0cmluZyYgcGF0aCkgZmluYWw7CiAKICAgICB2b2lk
IGVsZW1lbnREaWRGb2N1cyhjb25zdCBXZWJDb3JlOjpOb2RlKikgb3ZlcnJpZGU7CiAgICAgdm9p
ZCBlbGVtZW50RGlkQmx1cihjb25zdCBXZWJDb3JlOjpOb2RlKikgb3ZlcnJpZGU7CiAKLSAgICBi
b29sIHNob3VsZFBhaW50RW50aXJlQ29udGVudHMoKSBjb25zdCBvdmVycmlkZTsKKyAgICBib29s
IHNob3VsZFBhaW50RW50aXJlQ29udGVudHMoKSBjb25zdCBmaW5hbDsKIAogICAgIHZvaWQgYXR0
YWNoUm9vdEdyYXBoaWNzTGF5ZXIoV2ViQ29yZTo6RnJhbWUqLCBXZWJDb3JlOjpHcmFwaGljc0xh
eWVyKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBhdHRhY2hWaWV3T3ZlcmxheUdyYXBoaWNzTGF5ZXIo
V2ViQ29yZTo6RnJhbWUqLCBXZWJDb3JlOjpHcmFwaGljc0xheWVyKikgb3ZlcnJpZGU7Ci0gICAg
dm9pZCBzZXROZWVkc09uZVNob3REcmF3aW5nU3luY2hyb25pemF0aW9uKCkgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBzY2hlZHVsZUNvbXBvc2l0aW5nTGF5ZXJGbHVzaCgpIG92ZXJyaWRlOworICAgIHZv
aWQgYXR0YWNoVmlld092ZXJsYXlHcmFwaGljc0xheWVyKFdlYkNvcmU6OkZyYW1lKiwgV2ViQ29y
ZTo6R3JhcGhpY3NMYXllciopIGZpbmFsOworICAgIHZvaWQgc2V0TmVlZHNPbmVTaG90RHJhd2lu
Z1N5bmNocm9uaXphdGlvbigpIGZpbmFsOworICAgIHZvaWQgc2NoZWR1bGVDb21wb3NpdGluZ0xh
eWVyRmx1c2goKSBmaW5hbDsKIAotICAgIENvbXBvc2l0aW5nVHJpZ2dlckZsYWdzIGFsbG93ZWRD
b21wb3NpdGluZ1RyaWdnZXJzKCkgY29uc3Qgb3ZlcnJpZGUKKyAgICBDb21wb3NpdGluZ1RyaWdn
ZXJGbGFncyBhbGxvd2VkQ29tcG9zaXRpbmdUcmlnZ2VycygpIGNvbnN0IGZpbmFsCiAgICAgewog
ICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8Q29tcG9zaXRpbmdUcmlnZ2VyRmxhZ3M+KAogICAg
ICAgICAgICAgVGhyZWVEVHJhbnNmb3JtVHJpZ2dlciB8CkBAIC0xNjksNTIgKzE3Nyw0OSBAQCBw
dWJsaWM6CiAgICAgICAgICAgICBBbmltYXRpb25UcmlnZ2VyKTsKICAgICB9CiAKLSNpZiBFTkFC
TEUoVklERU8pCi0jaWYgUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9O
X01PREUpCi0gICAgdm9pZCBzZXRVcFBsYXliYWNrQ29udHJvbHNNYW5hZ2VyKFdlYkNvcmU6OkhU
TUxNZWRpYUVsZW1lbnQmKSBvdmVycmlkZTsKLSAgICB2b2lkIGNsZWFyUGxheWJhY2tDb250cm9s
c01hbmFnZXIoKSBvdmVycmlkZTsKKyNpZiBFTkFCTEUoVklERU8pICYmIFBMQVRGT1JNKE1BQykg
JiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQorICAgIHZvaWQgc2V0VXBQbGF5YmFj
a0NvbnRyb2xzTWFuYWdlcihXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50JikgZmluYWw7CisgICAg
dm9pZCBjbGVhclBsYXliYWNrQ29udHJvbHNNYW5hZ2VyKCkgZmluYWw7CiAjZW5kaWYKIAotICAg
IGJvb2wgc3VwcG9ydHNWaWRlb0Z1bGxzY3JlZW4oV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVu
dW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlKSBvdmVycmlkZTsKLSAgICB2b2lkIGVudGVyVmlkZW9G
dWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmLCBXZWJD
b3JlOjpIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIG92ZXJyaWRl
OwotICAgIHZvaWQgZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpI
VE1MVmlkZW9FbGVtZW50Jikgb3ZlcnJpZGU7CisjaWYgRU5BQkxFKFZJREVPKQorICAgIGJvb2wg
c3VwcG9ydHNWaWRlb0Z1bGxzY3JlZW4oV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpW
aWRlb0Z1bGxzY3JlZW5Nb2RlKSBmaW5hbDsKKyAgICB2b2lkIGVudGVyVmlkZW9GdWxsc2NyZWVu
Rm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmLCBXZWJDb3JlOjpIVE1M
TWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIGZpbmFsOworICAgIHZvaWQg
ZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlkZW9FbGVt
ZW50JikgZmluYWw7CiAjZW5kaWYKLSAgICAKKwogI2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQSSkK
LSAgICBib29sIHN1cHBvcnRzRnVsbFNjcmVlbkZvckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6RWxl
bWVudCosIGJvb2wgd2l0aEtleWJvYXJkKSBvdmVycmlkZTsKLSAgICB2b2lkIGVudGVyRnVsbFNj
cmVlbkZvckVsZW1lbnQoV2ViQ29yZTo6RWxlbWVudCopIG92ZXJyaWRlOwotICAgIHZvaWQgZXhp
dEZ1bGxTY3JlZW5Gb3JFbGVtZW50KFdlYkNvcmU6OkVsZW1lbnQqKSBvdmVycmlkZTsKKyAgICBi
b29sIHN1cHBvcnRzRnVsbFNjcmVlbkZvckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6RWxlbWVudCos
IGJvb2wgd2l0aEtleWJvYXJkKSBmaW5hbDsKKyAgICB2b2lkIGVudGVyRnVsbFNjcmVlbkZvckVs
ZW1lbnQoV2ViQ29yZTo6RWxlbWVudCopIGZpbmFsOworICAgIHZvaWQgZXhpdEZ1bGxTY3JlZW5G
b3JFbGVtZW50KFdlYkNvcmU6OkVsZW1lbnQqKSBmaW5hbDsKICNlbmRpZgogCiAgICAgYm9vbCBz
ZWxlY3RJdGVtV3JpdGluZ0RpcmVjdGlvbklzTmF0dXJhbCgpIG92ZXJyaWRlOwogICAgIGJvb2wg
c2VsZWN0SXRlbUFsaWdubWVudEZvbGxvd3NNZW51V3JpdGluZ0RpcmVjdGlvbigpIG92ZXJyaWRl
OwotICAgIGJvb2wgaGFzT3BlbmVkUG9wdXAoKSBjb25zdCBvdmVycmlkZTsKKyAgICBib29sIGhh
c09wZW5lZFBvcHVwKCkgY29uc3QgZmluYWw7CiAgICAgUmVmUHRyPFdlYkNvcmU6OlBvcHVwTWVu
dT4gY3JlYXRlUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCopIGNvbnN0IG92ZXJy
aWRlOwogICAgIFJlZlB0cjxXZWJDb3JlOjpTZWFyY2hQb3B1cE1lbnU+IGNyZWF0ZVNlYXJjaFBv
cHVwTWVudShXZWJDb3JlOjpQb3B1cE1lbnVDbGllbnQqKSBjb25zdCBvdmVycmlkZTsKIAotICAg
IHZvaWQgd2hlZWxFdmVudEhhbmRsZXJzQ2hhbmdlZChib29sKSBvdmVycmlkZSB7IH0KKyAgICB2
b2lkIHdoZWVsRXZlbnRIYW5kbGVyc0NoYW5nZWQoYm9vbCkgZmluYWwgeyB9CiAKICNpZiBFTkFC
TEUoU1VCVExFX0NSWVBUTykKLSAgICBib29sIHdyYXBDcnlwdG9LZXkoY29uc3QgVmVjdG9yPHVp
bnQ4X3Q+JiwgVmVjdG9yPHVpbnQ4X3Q+JikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgYm9vbCB1bndy
YXBDcnlwdG9LZXkoY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiwgVmVjdG9yPHVpbnQ4X3Q+JikgY29u
c3Qgb3ZlcnJpZGU7CisgICAgYm9vbCB3cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90
PiYsIFZlY3Rvcjx1aW50OF90PiYpIGNvbnN0IGZpbmFsOworICAgIGJvb2wgdW53cmFwQ3J5cHRv
S2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90PiYsIFZlY3Rvcjx1aW50OF90PiYpIGNvbnN0IGZpbmFs
OwogI2VuZGlmCiAKICNpZiBFTkFCTEUoU0VSVklDRV9DT05UUk9MUykKLSAgICB2b2lkIGhhbmRs
ZVNlbGVjdGlvblNlcnZpY2VDbGljayhXZWJDb3JlOjpGcmFtZVNlbGVjdGlvbiYsIGNvbnN0IFZl
Y3RvcjxTdHJpbmc+JiB0ZWxlcGhvbmVOdW1iZXJzLCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYp
IG92ZXJyaWRlOwotICAgIGJvb2wgaGFzUmVsZXZhbnRTZWxlY3Rpb25TZXJ2aWNlcyhib29sIGlz
VGV4dE9ubHkpIGNvbnN0IG92ZXJyaWRlOworICAgIHZvaWQgaGFuZGxlU2VsZWN0aW9uU2Vydmlj
ZUNsaWNrKFdlYkNvcmU6OkZyYW1lU2VsZWN0aW9uJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHRl
bGVwaG9uZU51bWJlcnMsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JikgZmluYWw7CisgICAgYm9v
bCBoYXNSZWxldmFudFNlbGVjdGlvblNlcnZpY2VzKGJvb2wgaXNUZXh0T25seSkgY29uc3QgZmlu
YWw7CiAjZW5kaWYKIAotICAgIFdlYlZpZXcqIHdlYlZpZXcoKSBjb25zdCB7IHJldHVybiBtX3dl
YlZpZXc7IH0KLQogI2lmIEVOQUJMRShXSVJFTEVTU19QTEFZQkFDS19UQVJHRVQpICYmICFQTEFU
Rk9STShJT1MpCi0gICAgdm9pZCBhZGRQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudCh1aW50NjRf
dCAvKmNvbnRleHRJZCovKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlbW92ZVBsYXliYWNrVGFyZ2V0
UGlja2VyQ2xpZW50KHVpbnQ2NF90IC8qY29udGV4dElkKi8pIG92ZXJyaWRlOwotICAgIHZvaWQg
c2hvd1BsYXliYWNrVGFyZ2V0UGlja2VyKHVpbnQ2NF90IC8qY29udGV4dElkKi8sIGNvbnN0IFdl
YkNvcmU6OkludFBvaW50JiwgYm9vbCAvKiBoYXNWaWRlbyAqLykgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBwbGF5YmFja1RhcmdldFBpY2tlckNsaWVudFN0YXRlRGlkQ2hhbmdlKHVpbnQ2NF90IC8qY29u
dGV4dElkKi8sIFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncykgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVuYWJsZWQoYm9v
bCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlclN0
YXRlKGNvbnN0IFN0cmluZyYsIFdlYkNvcmU6Ok1lZGlhUGxheWJhY2tUYXJnZXRDb250ZXh0OjpT
dGF0ZSkgb3ZlcnJpZGU7CisgICAgdm9pZCBhZGRQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudCh1
aW50NjRfdCAvKmNvbnRleHRJZCovKSBmaW5hbDsKKyAgICB2b2lkIHJlbW92ZVBsYXliYWNrVGFy
Z2V0UGlja2VyQ2xpZW50KHVpbnQ2NF90IC8qY29udGV4dElkKi8pIGZpbmFsOworICAgIHZvaWQg
c2hvd1BsYXliYWNrVGFyZ2V0UGlja2VyKHVpbnQ2NF90IC8qY29udGV4dElkKi8sIGNvbnN0IFdl
YkNvcmU6OkludFBvaW50JiwgYm9vbCAvKiBoYXNWaWRlbyAqLykgZmluYWw7CisgICAgdm9pZCBw
bGF5YmFja1RhcmdldFBpY2tlckNsaWVudFN0YXRlRGlkQ2hhbmdlKHVpbnQ2NF90IC8qY29udGV4
dElkKi8sIFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncykgZmluYWw7Cisg
ICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVuYWJsZWQoYm9vbCkgZmlu
YWw7CisgICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlclN0YXRlKGNvbnN0
IFN0cmluZyYsIFdlYkNvcmU6Ok1lZGlhUGxheWJhY2tUYXJnZXRDb250ZXh0OjpTdGF0ZSkgZmlu
YWw7CiAjZW5kaWYKIAotcHJpdmF0ZToKICAgICBXZWJWaWV3ICptX3dlYlZpZXc7CiB9OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50
Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50Lm1t
CmluZGV4IGQ3ZWM4Y2IxYjQ2YWI3ODE4ZTBkZTIyNDEyNmNhYTVhMDY1ZGEyOTEuLmE1MmE0NjAx
YzE2NDdkZTQ1ZDQwOTk1N2E4MTMyYTIzZDFhMzYwNjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5tbQorKysgYi9Tb3VyY2UvV2Vi
S2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQubW0KQEAgLTc0MSwxMCArNzQx
LDEwIEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpyZXF1ZXN0UG9pbnRlclVubG9jaygpCiB9CiAj
ZW5kaWYKIAotdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJ1bk9wZW5QYW5lbChGcmFtZSosIFBhc3NS
ZWZQdHI8RmlsZUNob29zZXI+IGNob29zZXIpCit2b2lkIFdlYkNocm9tZUNsaWVudDo6cnVuT3Bl
blBhbmVsKEZyYW1lJiwgRmlsZUNob29zZXImIGNob29zZXIpCiB7CiAgICAgQkVHSU5fQkxPQ0tf
T0JKQ19FWENFUFRJT05TOwotICAgIEJPT0wgYWxsb3dNdWx0aXBsZUZpbGVzID0gY2hvb3Nlci0+
c2V0dGluZ3MoKS5hbGxvd3NNdWx0aXBsZUZpbGVzOworICAgIEJPT0wgYWxsb3dNdWx0aXBsZUZp
bGVzID0gY2hvb3Nlci5zZXR0aW5ncygpLmFsbG93c011bHRpcGxlRmlsZXM7CiAgICAgV2ViT3Bl
blBhbmVsUmVzdWx0TGlzdGVuZXIgKmxpc3RlbmVyID0gW1tXZWJPcGVuUGFuZWxSZXN1bHRMaXN0
ZW5lciBhbGxvY10gaW5pdFdpdGhDaG9vc2VyOmNob29zZXJdOwogICAgIGlkIGRlbGVnYXRlID0g
W21fd2ViVmlldyBVSURlbGVnYXRlXTsKICAgICBpZiAoW2RlbGVnYXRlIHJlc3BvbmRzVG9TZWxl
Y3RvcjpAc2VsZWN0b3Iod2ViVmlldzpydW5PcGVuUGFuZWxGb3JGaWxlQnV0dG9uV2l0aFJlc3Vs
dExpc3RlbmVyOmFsbG93TXVsdGlwbGVGaWxlczopXSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oIGIvU291cmNlL1dlYktpdC9t
YWMvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmgKaW5kZXggM2IzNWQ0ZDIxMTBmNDlm
MWM0OTNmZWFjY2QwODQ3MzhiODIzOGFmOS4uODgyMTUzMTA0YzUwMDllNWU3ZWEwYWU3ZjkwOGIz
NzZjNzBjZjdjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQv
V2ViRWRpdG9yQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQv
V2ViRWRpdG9yQ2xpZW50LmgKQEAgLTExNSw4ICsxMTUsOCBAQCBwcml2YXRlOgogICAgIHZvaWQg
ZGlzY2FyZGVkQ29tcG9zaXRpb24oV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKICAgICB2b2lkIGNh
bmNlbGVkQ29tcG9zaXRpb24oKSBmaW5hbDsKIAotICAgIHZvaWQgcmVnaXN0ZXJVbmRvU3RlcChQ
YXNzUmVmUHRyPFdlYkNvcmU6OlVuZG9TdGVwPikgZmluYWw7Ci0gICAgdm9pZCByZWdpc3RlclJl
ZG9TdGVwKFBhc3NSZWZQdHI8V2ViQ29yZTo6VW5kb1N0ZXA+KSBmaW5hbDsKKyAgICB2b2lkIHJl
Z2lzdGVyVW5kb1N0ZXAoV2ViQ29yZTo6VW5kb1N0ZXAmKSBmaW5hbDsKKyAgICB2b2lkIHJlZ2lz
dGVyUmVkb1N0ZXAoV2ViQ29yZTo6VW5kb1N0ZXAmKSBmaW5hbDsKICAgICB2b2lkIGNsZWFyVW5k
b1JlZG9PcGVyYXRpb25zKCkgZmluYWw7CiAKICAgICBib29sIGNhbkNvcHlDdXQoV2ViQ29yZTo6
RnJhbWUqLCBib29sIGRlZmF1bHRWYWx1ZSkgY29uc3QgZmluYWw7CkBAIC0xNzQsNyArMTc0LDcg
QEAgcHJpdmF0ZToKICAgICB2b2lkIGhhbmRsZUFjY2VwdGVkQ2FuZGlkYXRlV2l0aFNvZnRTcGFj
ZXMoV2ViQ29yZTo6VGV4dENoZWNraW5nUmVzdWx0KSBmaW5hbDsKICNlbmRpZgogCi0gICAgdm9p
ZCByZWdpc3RlclVuZG9PclJlZG9TdGVwKFBhc3NSZWZQdHI8V2ViQ29yZTo6VW5kb1N0ZXA+LCBi
b29sIGlzUmVkbyk7CisgICAgdm9pZCByZWdpc3RlclVuZG9PclJlZG9TdGVwKFdlYkNvcmU6OlVu
ZG9TdGVwJiwgYm9vbCBpc1JlZG8pOwogCiAgICAgV2ViVmlldyAqbV93ZWJWaWV3OwogICAgIFJl
dGFpblB0cjxXZWJFZGl0b3JVbmRvVGFyZ2V0PiBtX3VuZG9UYXJnZXQ7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQubW0gYi9Tb3Vy
Y2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQubW0KaW5kZXggN2Y5
ZjQxN2FkMWM0M2E4NmFhMjVkMjE0OGU1NDY5NWUxZGI3MDI4ZS4uZjM4YTlmMGNkYzJkNDk1MGRk
MDY0NmQ3MDM4ZjhjNWEzMzNlMDQ4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2Vi
Q29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dl
YkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5tbQpAQCAtMTE5LDggKzExOSw4IEBAIEBpbnRl
cmZhY2UgV2ViVW5kb1N0ZXAgOiBOU09iamVjdAogICAgIFJlZlB0cjxVbmRvU3RlcD4gbV9zdGVw
OyAgIAogfQogCi0rIChXZWJVbmRvU3RlcCAqKXN0ZXBXaXRoVW5kb1N0ZXA6KFBhc3NSZWZQdHI8
VW5kb1N0ZXA+KXN0ZXA7Ci0tIChVbmRvU3RlcCAqKXN0ZXA7CisrIChXZWJVbmRvU3RlcCAqKXN0
ZXBXaXRoVW5kb1N0ZXA6KFVuZG9TdGVwJilzdGVwOworLSAoVW5kb1N0ZXAmKXN0ZXA7CiAKIEBl
bmQKIApAQCAtMTM1LDEzICsxMzUsMTIgQEAgKyAodm9pZClpbml0aWFsaXplCiAjZW5kaWYKIH0K
IAotLSAoaWQpaW5pdFdpdGhVbmRvU3RlcDooUGFzc1JlZlB0cjxVbmRvU3RlcD4pc3RlcAorLSAo
aWQpaW5pdFdpdGhVbmRvU3RlcDooVW5kb1N0ZXAmKXN0ZXAKIHsKLSAgICBBU1NFUlQoc3RlcCk7
CiAgICAgc2VsZiA9IFtzdXBlciBpbml0XTsKICAgICBpZiAoIXNlbGYpCiAgICAgICAgIHJldHVy
biBuaWw7Ci0gICAgbV9zdGVwID0gc3RlcDsKKyAgICBtX3N0ZXAgPSAmc3RlcDsKICAgICByZXR1
cm4gc2VsZjsKIH0KIApAQCAtMTUzLDE0ICsxNTIsMTQgQEAgLSAodm9pZClkZWFsbG9jCiAgICAg
W3N1cGVyIGRlYWxsb2NdOwogfQogCi0rIChXZWJVbmRvU3RlcCAqKXN0ZXBXaXRoVW5kb1N0ZXA6
KFBhc3NSZWZQdHI8VW5kb1N0ZXA+KXN0ZXAKKysgKFdlYlVuZG9TdGVwICopc3RlcFdpdGhVbmRv
U3RlcDooVW5kb1N0ZXAmKXN0ZXAKIHsKICAgICByZXR1cm4gW1tbV2ViVW5kb1N0ZXAgYWxsb2Nd
IGluaXRXaXRoVW5kb1N0ZXA6c3RlcF0gYXV0b3JlbGVhc2VdOwogfQogCi0tIChVbmRvU3RlcCAq
KXN0ZXAKKy0gKFVuZG9TdGVwJilzdGVwCiB7Ci0gICAgcmV0dXJuIG1fc3RlcC5nZXQoKTsKKyAg
ICByZXR1cm4gKm1fc3RlcDsKIH0KIAogQGVuZApAQCAtMTc3LDEzICsxNzYsMTMgQEAgQGltcGxl
bWVudGF0aW9uIFdlYkVkaXRvclVuZG9UYXJnZXQKIC0gKHZvaWQpdW5kb0VkaXRpbmc6KGlkKWFy
ZwogewogICAgIEFTU0VSVChbYXJnIGlzS2luZE9mQ2xhc3M6W1dlYlVuZG9TdGVwIGNsYXNzXV0p
OwotICAgIFthcmcgc3RlcF0tPnVuYXBwbHkoKTsKKyAgICBbYXJnIHN0ZXBdLnVuYXBwbHkoKTsK
IH0KIAogLSAodm9pZClyZWRvRWRpdGluZzooaWQpYXJnCiB7CiAgICAgQVNTRVJUKFthcmcgaXNL
aW5kT2ZDbGFzczpbV2ViVW5kb1N0ZXAgY2xhc3NdXSk7Ci0gICAgW2FyZyBzdGVwXS0+cmVhcHBs
eSgpOworICAgIFthcmcgc3RlcF0ucmVhcHBseSgpOwogfQogCiBAZW5kCkBAIC02NDIsMTAgKzY0
MSw4IEBAIHN0YXRpYyBOU1N0cmluZyogdW5kb05hbWVGb3JFZGl0QWN0aW9uKEVkaXRBY3Rpb24g
ZWRpdEFjdGlvbikKICAgICByZXR1cm4gbmlsOwogfQogCi12b2lkIFdlYkVkaXRvckNsaWVudDo6
cmVnaXN0ZXJVbmRvT3JSZWRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPiBzdGVwLCBib29sIGlz
UmVkbykKK3ZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9PclJlZG9TdGVwKFVuZG9T
dGVwJiBzdGVwLCBib29sIGlzUmVkbykKIHsKLSAgICBBU1NFUlQoc3RlcCk7Ci0gICAgCiAgICAg
TlNVbmRvTWFuYWdlciAqdW5kb01hbmFnZXIgPSBbbV93ZWJWaWV3IHVuZG9NYW5hZ2VyXTsKIAog
I2lmIFBMQVRGT1JNKElPUykKQEAgLTY1Niw3ICs2NTMsNyBAQCB2b2lkIFdlYkVkaXRvckNsaWVu
dDo6cmVnaXN0ZXJVbmRvT3JSZWRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPiBzdGVwLCBib29s
IGlzUgogICAgICAgICByZXR1cm47CiAjZW5kaWYKIAotICAgIE5TU3RyaW5nICphY3Rpb25OYW1l
ID0gdW5kb05hbWVGb3JFZGl0QWN0aW9uKHN0ZXAtPmVkaXRpbmdBY3Rpb24oKSk7CisgICAgTlNT
dHJpbmcgKmFjdGlvbk5hbWUgPSB1bmRvTmFtZUZvckVkaXRBY3Rpb24oc3RlcC5lZGl0aW5nQWN0
aW9uKCkpOwogICAgIFdlYlVuZG9TdGVwICp3ZWJFbnRyeSA9IFtXZWJVbmRvU3RlcCBzdGVwV2l0
aFVuZG9TdGVwOnN0ZXBdOwogICAgIFt1bmRvTWFuYWdlciByZWdpc3RlclVuZG9XaXRoVGFyZ2V0
Om1fdW5kb1RhcmdldC5nZXQoKSBzZWxlY3RvcjooaXNSZWRvID8gQHNlbGVjdG9yKHJlZG9FZGl0
aW5nOikgOiBAc2VsZWN0b3IodW5kb0VkaXRpbmc6KSkgb2JqZWN0OndlYkVudHJ5XTsKICAgICBp
ZiAoYWN0aW9uTmFtZSkKQEAgLTY4NCwxMiArNjgxLDEyIEBAIHZvaWQgV2ViRWRpdG9yQ2xpZW50
Ojp1cGRhdGVFZGl0b3JTdGF0ZUFmdGVyTGF5b3V0SWZFZGl0YWJpbGl0eUNoYW5nZWQoKQogICAg
ICAgICBbbV93ZWJWaWV3IHVwZGF0ZVRvdWNoQmFyXTsKIH0KIAotdm9pZCBXZWJFZGl0b3JDbGll
bnQ6OnJlZ2lzdGVyVW5kb1N0ZXAoUGFzc1JlZlB0cjxVbmRvU3RlcD4gY21kKQordm9pZCBXZWJF
ZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb1N0ZXAoVW5kb1N0ZXAmIGNtZCkKIHsKICAgICByZWdp
c3RlclVuZG9PclJlZG9TdGVwKGNtZCwgZmFsc2UpOwogfQogCi12b2lkIFdlYkVkaXRvckNsaWVu
dDo6cmVnaXN0ZXJSZWRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPiBjbWQpCit2b2lkIFdlYkVk
aXRvckNsaWVudDo6cmVnaXN0ZXJSZWRvU3RlcChVbmRvU3RlcCYgY21kKQogewogICAgIHJlZ2lz
dGVyVW5kb09yUmVkb1N0ZXAoY21kLCB0cnVlKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2Vi
S2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCmluZGV4IGExMWZi
ODhiZGJkOTFiYWQ4ZmQ4ZGY5ZmQyOTJmODI1ODhmYzQ1ZjYuLmJmYmQyZjc4MzZmNjQ4YjgwNzBh
Yzc0M2YyZWFjODM2YTVjOTY5MTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNv
cmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMv
V2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaApAQCAtMSw1ICsxLDUgQEAKIC8q
Ci0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTU4LDIwMiArNTgsMjAy
IEBAIHB1YmxpYzoKICAgICBXZWJGcmFtZSogd2ViRnJhbWUoKSBjb25zdCB7IHJldHVybiBtX3dl
YkZyYW1lLmdldCgpOyB9CiAKIHByaXZhdGU6Ci0gICAgdm9pZCBmcmFtZUxvYWRlckRlc3Ryb3ll
ZCgpIG92ZXJyaWRlOwotICAgIGJvb2wgaGFzV2ViVmlldygpIGNvbnN0IG92ZXJyaWRlOyAvLyBt
YWlubHkgZm9yIGFzc2VydGlvbnMKKyAgICB2b2lkIGZyYW1lTG9hZGVyRGVzdHJveWVkKCkgZmlu
YWw7CisgICAgYm9vbCBoYXNXZWJWaWV3KCkgY29uc3QgZmluYWw7IC8vIG1haW5seSBmb3IgYXNz
ZXJ0aW9ucwogCi0gICAgdm9pZCBtYWtlUmVwcmVzZW50YXRpb24oV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXIqKSBvdmVycmlkZTsKLSAgICBib29sIGhhc0hUTUxWaWV3KCkgY29uc3Qgb3ZlcnJpZGU7
CisgICAgdm9pZCBtYWtlUmVwcmVzZW50YXRpb24oV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBm
aW5hbDsKKyAgICBib29sIGhhc0hUTUxWaWV3KCkgY29uc3QgZmluYWw7CiAjaWYgUExBVEZPUk0o
SU9TKQotICAgIGJvb2wgZm9yY2VMYXlvdXRPblJlc3RvcmVGcm9tUGFnZUNhY2hlKCkgb3ZlcnJp
ZGU7CisgICAgYm9vbCBmb3JjZUxheW91dE9uUmVzdG9yZUZyb21QYWdlQ2FjaGUoKSBmaW5hbDsK
ICNlbmRpZgotICAgIHZvaWQgZm9yY2VMYXlvdXRGb3JOb25IVE1MKCkgb3ZlcnJpZGU7CisgICAg
dm9pZCBmb3JjZUxheW91dEZvck5vbkhUTUwoKSBmaW5hbDsKIAotICAgIHZvaWQgc2V0Q29waWVz
T25TY3JvbGwoKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldENvcGllc09uU2Nyb2xsKCkgZmluYWw7
CiAKLSAgICB2b2lkIGRldGFjaGVkRnJvbVBhcmVudDIoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRl
dGFjaGVkRnJvbVBhcmVudDMoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRldGFjaGVkRnJvbVBhcmVu
dDIoKSBmaW5hbDsKKyAgICB2b2lkIGRldGFjaGVkRnJvbVBhcmVudDMoKSBmaW5hbDsKIAotICAg
IHZvaWQgY29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiwgV2ViQ29yZTo6U2Vzc2lvbklELCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CisgICAgdm9p
ZCBjb252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxvYWQoV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXIqLCBXZWJDb3JlOjpTZXNzaW9uSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYs
IGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKIAotICAgIHZvaWQgYXNz
aWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYp
IG92ZXJyaWRlOworICAgIHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdl
YkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOwogCi0gICAgdm9pZCBkaXNwYXRjaFdpbGxT
ZW5kUmVxdWVzdChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VS
ZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkgb3ZlcnJpZGU7Ci0gICAgYm9vbCBzaG91bGRVc2VD
cmVkZW50aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllcikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50
aWNhdGlvbkNoYWxsZW5nZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKSBvdmVy
cmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKSBm
aW5hbDsKKyAgICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKKyAgICB2b2lkIGRp
c3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpBdXRoZW50
aWNhdGlvbkNoYWxsZW5nZSYpIGZpbmFsOwogI2lmIFVTRShQUk9URUNUSU9OX1NQQUNFX0FVVEhf
Q0FMTEJBQ0spCi0gICAgYm9vbCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNl
KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25z
dCBXZWJDb3JlOjpQcm90ZWN0aW9uU3BhY2UmKSBvdmVycmlkZTsKKyAgICBib29sIGNhbkF1dGhl
bnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlByb3RlY3Rpb25TcGFjZSYp
IGZpbmFsOwogI2VuZGlmCiAKICNpZiBQTEFURk9STShJT1MpCi0gICAgUmV0YWluUHRyPENGRGlj
dGlvbmFyeVJlZj4gY29ubmVjdGlvblByb3BlcnRpZXMoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIq
LCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIG92ZXJyaWRlOworICAgIFJldGFpblB0cjxDRkRp
Y3Rpb25hcnlSZWY+IGNvbm5lY3Rpb25Qcm9wZXJ0aWVzKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
KiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKICNlbmRpZgogCi0gICAgdm9pZCBk
aXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIG92
ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgaW50IGRhdGFMZW5n
dGgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBvdmVycmlkZTsKKyAg
ICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
KiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3Bv
bnNlJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBpbnQgZGF0
YUxlbmd0aCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoV2ViQ29y
ZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIGZpbmFsOwogI2lm
IEVOQUJMRShEQVRBX0RFVEVDVElPTikKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoRGF0YURl
dGVjdGlvbihOU0FycmF5ICpkZXRlY3Rpb25SZXN1bHRzKSBvdmVycmlkZTsKKyAgICB2b2lkIGRp
c3BhdGNoRGlkRmluaXNoRGF0YURldGVjdGlvbihOU0FycmF5ICpkZXRlY3Rpb25SZXN1bHRzKSBm
aW5hbDsKICNlbmRpZgotICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhXZWJDb3JlOjpE
b2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwotCi0gICAgTlNDYWNoZWRVUkxSZXNwb25zZSogd2ls
bENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2UqKSBjb25zdCBvdmVycmlkZTsKLQotICAgIHZv
aWQgZGlzcGF0Y2hEaWREaXNwYXRjaE9ubG9hZEV2ZW50cygpIG92ZXJyaWRlOwotICAgIHZvaWQg
ZGlzcGF0Y2hEaWRSZWNlaXZlU2VydmVyUmVkaXJlY3RGb3JQcm92aXNpb25hbExvYWQoKSBvdmVy
cmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkQ2FuY2VsQ2xpZW50UmVkaXJlY3QoKSBvdmVycmlk
ZTsKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFBlcmZvcm1DbGllbnRSZWRpcmVjdChjb25zdCBXZWJD
b3JlOjpVUkwmLCBkb3VibGUgaW50ZXJ2YWwsIGRvdWJsZSBmaXJlRGF0ZSkgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBkaXNwYXRjaERpZENoYW5nZUxvY2F0aW9uV2l0aGluUGFnZSgpIG92ZXJyaWRlOwot
ICAgIHZvaWQgZGlzcGF0Y2hEaWRQdXNoU3RhdGVXaXRoaW5QYWdlKCkgb3ZlcnJpZGU7Ci0gICAg
dm9pZCBkaXNwYXRjaERpZFJlcGxhY2VTdGF0ZVdpdGhpblBhZ2UoKSBvdmVycmlkZTsKLSAgICB2
b2lkIGRpc3BhdGNoRGlkUG9wU3RhdGVXaXRoaW5QYWdlKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBk
aXNwYXRjaERpZEZhaWxMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmluYWw7CisK
KyAgICBOU0NhY2hlZFVSTFJlc3BvbnNlKiB3aWxsQ2FjaGVSZXNwb25zZShXZWJDb3JlOjpEb2N1
bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25z
ZSopIGNvbnN0IGZpbmFsOworCisgICAgdm9pZCBkaXNwYXRjaERpZERpc3BhdGNoT25sb2FkRXZl
bnRzKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVTZXJ2ZXJSZWRpcmVjdEZv
clByb3Zpc2lvbmFsTG9hZCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRDYW5jZWxDbGll
bnRSZWRpcmVjdCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsUGVyZm9ybUNsaWVudFJl
ZGlyZWN0KGNvbnN0IFdlYkNvcmU6OlVSTCYsIGRvdWJsZSBpbnRlcnZhbCwgZG91YmxlIGZpcmVE
YXRlKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkQ2hhbmdlTG9jYXRpb25XaXRoaW5QYWdl
KCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFB1c2hTdGF0ZVdpdGhpblBhZ2UoKSBmaW5h
bDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVwbGFjZVN0YXRlV2l0aGluUGFnZSgpIGZpbmFsOwor
ICAgIHZvaWQgZGlzcGF0Y2hEaWRQb3BTdGF0ZVdpdGhpblBhZ2UoKSBmaW5hbDsKICAgICAKLSAg
ICB2b2lkIGRpc3BhdGNoV2lsbENsb3NlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERp
ZFJlY2VpdmVJY29uKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFN0YXJ0UHJvdmlz
aW9uYWxMb2FkKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVUaXRsZShj
b25zdCBXZWJDb3JlOjpTdHJpbmdXaXRoRGlyZWN0aW9uJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBk
aXNwYXRjaERpZENvbW1pdExvYWQoc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpIYXNJbnNlY3VyZUNv
bnRlbnQ+KSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbFByb3Zpc2lvbmFsTG9h
ZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNw
YXRjaERpZEZhaWxMb2FkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsK
LSAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoRG9jdW1lbnRMb2FkKCkgb3ZlcnJpZGU7Ci0gICAg
dm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNo
RGlkUmVhY2hMYXlvdXRNaWxlc3RvbmUoV2ViQ29yZTo6TGF5b3V0TWlsZXN0b25lcykgb3ZlcnJp
ZGU7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxDbG9zZSgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0
Y2hEaWRSZWNlaXZlSWNvbigpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRTdGFydFByb3Zp
c2lvbmFsTG9hZCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlVGl0bGUoY29u
c3QgV2ViQ29yZTo6U3RyaW5nV2l0aERpcmVjdGlvbiYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0
Y2hEaWRDb21taXRMb2FkKHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6SGFzSW5zZWN1cmVDb250ZW50
PikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxQcm92aXNpb25hbExvYWQoY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWls
TG9hZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmluYWw7CisgICAgdm9pZCBkaXNw
YXRjaERpZEZpbmlzaERvY3VtZW50TG9hZCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRG
aW5pc2hMb2FkKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlYWNoTGF5b3V0TWlsZXN0
b25lKFdlYkNvcmU6OkxheW91dE1pbGVzdG9uZXMpIGZpbmFsOwogCi0gICAgV2ViQ29yZTo6RnJh
bWUqIGRpc3BhdGNoQ3JlYXRlUGFnZShjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJikg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFNob3coKSBvdmVycmlkZTsKKyAgICBXZWJDb3Jl
OjpGcmFtZSogZGlzcGF0Y2hDcmVhdGVQYWdlKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rp
b24mKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoU2hvdygpIGZpbmFsOwogCi0gICAgdm9pZCBk
aXNwYXRjaERlY2lkZVBvbGljeUZvclJlc3BvbnNlKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVz
cG9uc2UmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpGcmFtZVBv
bGljeUZ1bmN0aW9uKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9y
TmV3V2luZG93QWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4s
IGNvbnN0IFdURjo6U3RyaW5nJiBmcmFtZU5hbWUsIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rp
b24pIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9u
QWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4sIFdlYkNvcmU6
OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOwotICAgIHZvaWQgY2FuY2VsUG9saWN5Q2hl
Y2soKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yUmVzcG9uc2Uo
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYsIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFsOworICAgIHZvaWQg
ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgV2ViQ29yZTo6TmF2
aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFdlYkNvcmU6
OkZvcm1TdGF0ZSosIGNvbnN0IFdURjo6U3RyaW5nJiBmcmFtZU5hbWUsIFdlYkNvcmU6OkZyYW1l
UG9saWN5RnVuY3Rpb24pIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JO
YXZpZ2F0aW9uQWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpGb3JtU3RhdGUqLCBXZWJDb3JlOjpG
cmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsKKyAgICB2b2lkIGNhbmNlbFBvbGljeUNoZWNrKCkg
ZmluYWw7CiAKLSAgICB2b2lkIGRpc3BhdGNoVW5hYmxlVG9JbXBsZW1lbnRQb2xpY3koY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hVbmFi
bGVUb0ltcGxlbWVudFBvbGljeShjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmluYWw7
CiAKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChQYXNzUmVmUHRyPFdlYkNv
cmU6OkZvcm1TdGF0ZT4pIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hXaWxsU3VibWl0Rm9y
bShQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4sIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVu
Y3Rpb24pIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJl
ZjxXZWJDb3JlOjpGb3JtU3RhdGU+JiYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU3Vi
bWl0Rm9ybShXZWJDb3JlOjpGb3JtU3RhdGUmLCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9u
KSBmaW5hbDsKIAotICAgIHZvaWQgcmV2ZXJ0VG9Qcm92aXNpb25hbFN0YXRlKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRNYWluRG9jdW1lbnRFcnJvcihX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBv
dmVycmlkZTsKLSAgICBib29sIGRpc3BhdGNoRGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hl
KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGludCBsZW5ndGgpIG92ZXJyaWRl
OworICAgIHZvaWQgcmV2ZXJ0VG9Qcm92aXNpb25hbFN0YXRlKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKikgZmluYWw7CisgICAgdm9pZCBzZXRNYWluRG9jdW1lbnRFcnJvcihXZWJDb3JlOjpEb2N1
bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKKyAgICBi
b29sIGRpc3BhdGNoRGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VSZXNwb25zZSYsIGludCBsZW5ndGgpIGZpbmFsOwogCi0gICAgdm9pZCBzZXRN
YWluRnJhbWVEb2N1bWVudFJlYWR5KGJvb2wpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0TWFpbkZy
YW1lRG9jdW1lbnRSZWFkeShib29sKSBmaW5hbDsKIAotICAgIHZvaWQgc3RhcnREb3dubG9hZChj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBTdHJpbmcmIHN1Z2dlc3RlZE5h
bWUgPSBTdHJpbmcoKSkgb3ZlcnJpZGU7CisgICAgdm9pZCBzdGFydERvd25sb2FkKGNvbnN0IFdl
YkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFN0cmluZyYgc3VnZ2VzdGVkTmFtZSA9IFN0
cmluZygpKSBmaW5hbDsKIAotICAgIHZvaWQgd2lsbENoYW5nZVRpdGxlKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRDaGFuZ2VUaXRsZShXZWJDb3JlOjpE
b2N1bWVudExvYWRlciopIG92ZXJyaWRlOworICAgIHZvaWQgd2lsbENoYW5nZVRpdGxlKFdlYkNv
cmU6OkRvY3VtZW50TG9hZGVyKikgZmluYWw7CisgICAgdm9pZCBkaWRDaGFuZ2VUaXRsZShXZWJD
b3JlOjpEb2N1bWVudExvYWRlciopIGZpbmFsOwogCi0gICAgdm9pZCB3aWxsUmVwbGFjZU11bHRp
cGFydENvbnRlbnQoKSBvdmVycmlkZSB7IH0KLSAgICB2b2lkIGRpZFJlcGxhY2VNdWx0aXBhcnRD
b250ZW50KCkgb3ZlcnJpZGU7CisgICAgdm9pZCB3aWxsUmVwbGFjZU11bHRpcGFydENvbnRlbnQo
KSBmaW5hbCB7IH0KKyAgICB2b2lkIGRpZFJlcGxhY2VNdWx0aXBhcnRDb250ZW50KCkgZmluYWw7
CiAKLSAgICB2b2lkIGNvbW1pdHRlZExvYWQoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25z
dCBjaGFyKiwgaW50KSBvdmVycmlkZTsKLSAgICB2b2lkIGZpbmlzaGVkTG9hZGluZyhXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciopIG92ZXJyaWRlOwotICAgIHZvaWQgdXBkYXRlR2xvYmFsSGlzdG9y
eSgpIG92ZXJyaWRlOwotICAgIHZvaWQgdXBkYXRlR2xvYmFsSGlzdG9yeVJlZGlyZWN0TGlua3Mo
KSBvdmVycmlkZTsKKyAgICB2b2lkIGNvbW1pdHRlZExvYWQoV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXIqLCBjb25zdCBjaGFyKiwgaW50KSBmaW5hbDsKKyAgICB2b2lkIGZpbmlzaGVkTG9hZGluZyhX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciopIGZpbmFsOworICAgIHZvaWQgdXBkYXRlR2xvYmFsSGlz
dG9yeSgpIGZpbmFsOworICAgIHZvaWQgdXBkYXRlR2xvYmFsSGlzdG9yeVJlZGlyZWN0TGlua3Mo
KSBmaW5hbDsKIAotICAgIGJvb2wgc2hvdWxkR29Ub0hpc3RvcnlJdGVtKFdlYkNvcmU6Okhpc3Rv
cnlJdGVtKikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCB1cGRhdGVHbG9iYWxIaXN0b3J5SXRl
bUZvclBhZ2UoKSBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZEdvVG9IaXN0b3J5SXRlbShXZWJD
b3JlOjpIaXN0b3J5SXRlbSopIGNvbnN0IGZpbmFsOworICAgIHZvaWQgdXBkYXRlR2xvYmFsSGlz
dG9yeUl0ZW1Gb3JQYWdlKCkgZmluYWw7CiAKLSAgICB2b2lkIGRpZERpc3BsYXlJbnNlY3VyZUNv
bnRlbnQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZFJ1bkluc2VjdXJlQ29udGVudChXZWJDb3Jl
OjpTZWN1cml0eU9yaWdpbiosIGNvbnN0IFdlYkNvcmU6OlVSTCYpIG92ZXJyaWRlOwotICAgIHZv
aWQgZGlkRGV0ZWN0WFNTKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGJvb2wgZGlkQmxvY2tFbnRpcmVQ
YWdlKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZERpc3BsYXlJbnNlY3VyZUNvbnRlbnQoKSBmaW5h
bDsKKyAgICB2b2lkIGRpZFJ1bkluc2VjdXJlQ29udGVudChXZWJDb3JlOjpTZWN1cml0eU9yaWdp
biosIGNvbnN0IFdlYkNvcmU6OlVSTCYpIGZpbmFsOworICAgIHZvaWQgZGlkRGV0ZWN0WFNTKGNv
bnN0IFdlYkNvcmU6OlVSTCYsIGJvb2wgZGlkQmxvY2tFbnRpcmVQYWdlKSBmaW5hbDsKIAotICAg
IFdlYkNvcmU6OlJlc291cmNlRXJyb3IgY2FuY2VsbGVkRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9j
a2VkRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7Ci0gICAg
V2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkQnlDb250ZW50QmxvY2tlckVycm9yKGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OlJlc291
cmNlRXJyb3IgY2Fubm90U2hvd1VSTEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYpIG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgaW50ZXJydXB0ZWRGb3JQ
b2xpY3lDaGFuZ2VFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlk
ZTsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbmNlbGxlZEVycm9yKGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3Ig
YmxvY2tlZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOworICAg
IFdlYkNvcmU6OlJlc291cmNlRXJyb3IgYmxvY2tlZEJ5Q29udGVudEJsb2NrZXJFcnJvcihjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKKyAgICBXZWJDb3JlOjpSZXNvdXJj
ZUVycm9yIGNhbm5vdFNob3dVUkxFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qm
KSBmaW5hbDsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGludGVycnVwdGVkRm9yUG9saWN5
Q2hhbmdlRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CiAjaWYg
RU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQotICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgYmxv
Y2tlZEJ5Q29udGVudEZpbHRlckVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYp
IG92ZXJyaWRlOworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgYmxvY2tlZEJ5Q29udGVudEZp
bHRlckVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOwogI2VuZGlm
CiAKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dNSU1FVHlwZUVycm9yKGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpS
ZXNvdXJjZUVycm9yIGZpbGVEb2VzTm90RXhpc3RFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZVJlc3BvbnNlJikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBwbHVnaW5X
aWxsSGFuZGxlTG9hZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBvdmVy
cmlkZTsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dNSU1FVHlwZUVycm9y
KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICBXZWJDb3JlOjpS
ZXNvdXJjZUVycm9yIGZpbGVEb2VzTm90RXhpc3RFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZVJlc3BvbnNlJikgZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBwbHVnaW5XaWxs
SGFuZGxlTG9hZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsK
IAotICAgIGJvb2wgc2hvdWxkRmFsbEJhY2soY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYp
IG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkRmFsbEJhY2soY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VFcnJvciYpIGZpbmFsOwogCi0gICAgV1RGOjpTdHJpbmcgdXNlckFnZW50KGNvbnN0IFdlYkNv
cmU6OlVSTCYpIG92ZXJyaWRlOworICAgIFdURjo6U3RyaW5nIHVzZXJBZ2VudChjb25zdCBXZWJD
b3JlOjpVUkwmKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHNhdmVQbGF0Zm9ybURhdGFUb0NhY2hl
ZEZyYW1lKFdlYkNvcmU6OkNhY2hlZEZyYW1lKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCB0cmFuc2l0
aW9uVG9Db21taXR0ZWRGcm9tQ2FjaGVkRnJhbWUoV2ViQ29yZTo6Q2FjaGVkRnJhbWUqKSBvdmVy
cmlkZTsKKyAgICB2b2lkIHNhdmVQbGF0Zm9ybURhdGFUb0NhY2hlZEZyYW1lKFdlYkNvcmU6OkNh
Y2hlZEZyYW1lKikgZmluYWw7CisgICAgdm9pZCB0cmFuc2l0aW9uVG9Db21taXR0ZWRGcm9tQ2Fj
aGVkRnJhbWUoV2ViQ29yZTo6Q2FjaGVkRnJhbWUqKSBmaW5hbDsKICNpZiBQTEFURk9STShJT1Mp
Ci0gICAgdm9pZCBkaWRSZXN0b3JlRnJhbWVIaWVyYXJjaHlGb3JDYWNoZWRGcmFtZSgpIG92ZXJy
aWRlOworICAgIHZvaWQgZGlkUmVzdG9yZUZyYW1lSGllcmFyY2h5Rm9yQ2FjaGVkRnJhbWUoKSBm
aW5hbDsKICNlbmRpZgotICAgIHZvaWQgdHJhbnNpdGlvblRvQ29tbWl0dGVkRm9yTmV3UGFnZSgp
IG92ZXJyaWRlOworICAgIHZvaWQgdHJhbnNpdGlvblRvQ29tbWl0dGVkRm9yTmV3UGFnZSgpIGZp
bmFsOwogCi0gICAgdm9pZCBkaWRTYXZlVG9QYWdlQ2FjaGUoKSBvdmVycmlkZTsKLSAgICB2b2lk
IGRpZFJlc3RvcmVGcm9tUGFnZUNhY2hlKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRTYXZlVG9Q
YWdlQ2FjaGUoKSBmaW5hbDsKKyAgICB2b2lkIGRpZFJlc3RvcmVGcm9tUGFnZUNhY2hlKCkgZmlu
YWw7CiAKLSAgICB2b2lkIGRpc3BhdGNoRGlkQmVjb21lRnJhbWVzZXQoYm9vbCkgb3ZlcnJpZGU7
CisgICAgdm9pZCBkaXNwYXRjaERpZEJlY29tZUZyYW1lc2V0KGJvb2wpIGZpbmFsOwogCi0gICAg
Ym9vbCBjYW5IYW5kbGVSZXF1ZXN0KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGNv
bnN0IG92ZXJyaWRlOwotICAgIGJvb2wgY2FuU2hvd01JTUVUeXBlKGNvbnN0IFdURjo6U3RyaW5n
JiBNSU1FVHlwZSkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgYm9vbCBjYW5TaG93TUlNRVR5cGVBc0hU
TUwoY29uc3QgV1RGOjpTdHJpbmcmIE1JTUVUeXBlKSBjb25zdCBvdmVycmlkZTsKLSAgICBib29s
IHJlcHJlc2VudGF0aW9uRXhpc3RzRm9yVVJMU2NoZW1lKGNvbnN0IFdURjo6U3RyaW5nJiBVUkxT
Y2hlbWUpIGNvbnN0IG92ZXJyaWRlOwotICAgIFdURjo6U3RyaW5nIGdlbmVyYXRlZE1JTUVUeXBl
Rm9yVVJMU2NoZW1lKGNvbnN0IFdURjo6U3RyaW5nJiBVUkxTY2hlbWUpIGNvbnN0IG92ZXJyaWRl
OworICAgIGJvb2wgY2FuSGFuZGxlUmVxdWVzdChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QmKSBjb25zdCBmaW5hbDsKKyAgICBib29sIGNhblNob3dNSU1FVHlwZShjb25zdCBXVEY6OlN0
cmluZyYgTUlNRVR5cGUpIGNvbnN0IGZpbmFsOworICAgIGJvb2wgY2FuU2hvd01JTUVUeXBlQXNI
VE1MKGNvbnN0IFdURjo6U3RyaW5nJiBNSU1FVHlwZSkgY29uc3QgZmluYWw7CisgICAgYm9vbCBy
ZXByZXNlbnRhdGlvbkV4aXN0c0ZvclVSTFNjaGVtZShjb25zdCBXVEY6OlN0cmluZyYgVVJMU2No
ZW1lKSBjb25zdCBmaW5hbDsKKyAgICBXVEY6OlN0cmluZyBnZW5lcmF0ZWRNSU1FVHlwZUZvclVS
TFNjaGVtZShjb25zdCBXVEY6OlN0cmluZyYgVVJMU2NoZW1lKSBjb25zdCBmaW5hbDsKIAotICAg
IHZvaWQgZnJhbWVMb2FkQ29tcGxldGVkKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzYXZlVmlld1N0
YXRlVG9JdGVtKFdlYkNvcmU6Okhpc3RvcnlJdGVtJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCByZXN0
b3JlVmlld1N0YXRlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBwcm92aXNpb25hbExvYWRTdGFydGVk
KCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRGaW5pc2hMb2FkKCkgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBwcmVwYXJlRm9yRGF0YVNvdXJjZVJlcGxhY2VtZW50KCkgb3ZlcnJpZGU7Ci0gICAgUmVmPFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyPiBjcmVhdGVEb2N1bWVudExvYWRlcihjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpTdWJzdGl0dXRlRGF0YSYpIG92ZXJy
aWRlOwotICAgIHZvaWQgdXBkYXRlQ2FjaGVkRG9jdW1lbnRMb2FkZXIoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXImKSBvdmVycmlkZSB7IH0KKyAgICB2b2lkIGZyYW1lTG9hZENvbXBsZXRlZCgpIGZp
bmFsOworICAgIHZvaWQgc2F2ZVZpZXdTdGF0ZVRvSXRlbShXZWJDb3JlOjpIaXN0b3J5SXRlbSYp
IGZpbmFsOworICAgIHZvaWQgcmVzdG9yZVZpZXdTdGF0ZSgpIGZpbmFsOworICAgIHZvaWQgcHJv
dmlzaW9uYWxMb2FkU3RhcnRlZCgpIGZpbmFsOworICAgIHZvaWQgZGlkRmluaXNoTG9hZCgpIGZp
bmFsOworICAgIHZvaWQgcHJlcGFyZUZvckRhdGFTb3VyY2VSZXBsYWNlbWVudCgpIGZpbmFsOwor
ICAgIFJlZjxXZWJDb3JlOjpEb2N1bWVudExvYWRlcj4gY3JlYXRlRG9jdW1lbnRMb2FkZXIoY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6U3Vic3RpdHV0ZURh
dGEmKSBmaW5hbDsKKyAgICB2b2lkIHVwZGF0ZUNhY2hlZERvY3VtZW50TG9hZGVyKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyJikgZmluYWwgeyB9CiAKLSAgICB2b2lkIHNldFRpdGxlKGNvbnN0IFdl
YkNvcmU6OlN0cmluZ1dpdGhEaXJlY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpVUkwmKSBvdmVycmlk
ZTsKKyAgICB2b2lkIHNldFRpdGxlKGNvbnN0IFdlYkNvcmU6OlN0cmluZ1dpdGhEaXJlY3Rpb24m
LCBjb25zdCBXZWJDb3JlOjpVUkwmKSBmaW5hbDsKIAotICAgIFJlZlB0cjxXZWJDb3JlOjpGcmFt
ZT4gY3JlYXRlRnJhbWUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgV1RGOjpTdHJpbmcmIG5h
bWUsIFdlYkNvcmU6OkhUTUxGcmFtZU93bmVyRWxlbWVudCosCi0gICAgICAgIGNvbnN0IFdURjo6
U3RyaW5nJiByZWZlcnJlciwgYm9vbCBhbGxvd3NTY3JvbGxpbmcsIGludCBtYXJnaW5XaWR0aCwg
aW50IG1hcmdpbkhlaWdodCkgb3ZlcnJpZGU7Ci0gICAgUmVmUHRyPFdlYkNvcmU6OldpZGdldD4g
Y3JlYXRlUGx1Z2luKGNvbnN0IFdlYkNvcmU6OkludFNpemUmLCBXZWJDb3JlOjpIVE1MUGx1Z0lu
RWxlbWVudCosIGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4m
LAotICAgICAgICBjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiwgY29uc3QgV1RGOjpTdHJpbmcm
LCBib29sKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlY3JlYXRlUGx1Z2luKFdlYkNvcmU6OldpZGdl
dCopIG92ZXJyaWRlOwotICAgIHZvaWQgcmVkaXJlY3REYXRhVG9QbHVnaW4oV2ViQ29yZTo6V2lk
Z2V0KiBwbHVnaW5XaWRnZXQpIG92ZXJyaWRlOworICAgIFJlZlB0cjxXZWJDb3JlOjpGcmFtZT4g
Y3JlYXRlRnJhbWUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgV1RGOjpTdHJpbmcmIG5hbWUs
IFdlYkNvcmU6OkhUTUxGcmFtZU93bmVyRWxlbWVudCYsCisgICAgICAgIGNvbnN0IFdURjo6U3Ry
aW5nJiByZWZlcnJlciwgYm9vbCBhbGxvd3NTY3JvbGxpbmcsIGludCBtYXJnaW5XaWR0aCwgaW50
IG1hcmdpbkhlaWdodCkgZmluYWw7CisgICAgUmVmUHRyPFdlYkNvcmU6OldpZGdldD4gY3JlYXRl
UGx1Z2luKGNvbnN0IFdlYkNvcmU6OkludFNpemUmLCBXZWJDb3JlOjpIVE1MUGx1Z0luRWxlbWVu
dCYsIGNvbnN0IFdlYkNvcmU6OlVSTCYsCisgICAgICAgIGNvbnN0IFZlY3RvcjxXVEY6OlN0cmlu
Zz4mLCBjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiwgY29uc3QgV1RGOjpTdHJpbmcmLCBib29s
KSBmaW5hbDsKKyAgICB2b2lkIHJlY3JlYXRlUGx1Z2luKFdlYkNvcmU6OldpZGdldCopIGZpbmFs
OworICAgIHZvaWQgcmVkaXJlY3REYXRhVG9QbHVnaW4oV2ViQ29yZTo6V2lkZ2V0KiBwbHVnaW5X
aWRnZXQpIGZpbmFsOwogCiAjaWYgRU5BQkxFKFdFQkdMKQotICAgIFdlYkNvcmU6OldlYkdMTG9h
ZFBvbGljeSB3ZWJHTFBvbGljeUZvclVSTChjb25zdCBTdHJpbmcmKSBjb25zdCBvdmVycmlkZTsK
LSAgICBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgcmVzb2x2ZVdlYkdMUG9saWN5Rm9yVVJMKGNv
bnN0IFN0cmluZyYpIGNvbnN0IG92ZXJyaWRlOwotI2VuZGlmIC8vIEVOQUJMRShXRUJHTCkKKyAg
ICBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgd2ViR0xQb2xpY3lGb3JVUkwoY29uc3QgU3RyaW5n
JikgY29uc3QgZmluYWw7CisgICAgV2ViQ29yZTo6V2ViR0xMb2FkUG9saWN5IHJlc29sdmVXZWJH
TFBvbGljeUZvclVSTChjb25zdCBTdHJpbmcmKSBjb25zdCBmaW5hbDsKKyNlbmRpZgogCi0gICAg
UGFzc1JlZlB0cjxXZWJDb3JlOjpXaWRnZXQ+IGNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3Qg
V2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxBcHBsZXRFbGVtZW50KiwgY29uc3QgV2Vi
Q29yZTo6VVJMJiBiYXNlVVJMLAotICAgICAgICBjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiBw
YXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiBwYXJhbVZhbHVlcykgb3ZlcnJp
ZGU7CisgICAgUmVmUHRyPFdlYkNvcmU6OldpZGdldD4gY3JlYXRlSmF2YUFwcGxldFdpZGdldChj
b25zdCBXZWJDb3JlOjpJbnRTaXplJiwgV2ViQ29yZTo6SFRNTEFwcGxldEVsZW1lbnQmLCBjb25z
dCBXZWJDb3JlOjpVUkwmIGJhc2VVUkwsCisgICAgICAgIGNvbnN0IFZlY3RvcjxXVEY6OlN0cmlu
Zz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mIHBhcmFtVmFsdWVzKSBm
aW5hbDsKICAgICAKLSAgICBXZWJDb3JlOjpPYmplY3RDb250ZW50VHlwZSBvYmplY3RDb250ZW50
VHlwZShjb25zdCBXZWJDb3JlOjpVUkwmLCBjb25zdCBXVEY6OlN0cmluZyYgbWltZVR5cGUpIG92
ZXJyaWRlOwotICAgIFdURjo6U3RyaW5nIG92ZXJyaWRlTWVkaWFUeXBlKCkgY29uc3Qgb3ZlcnJp
ZGU7CisgICAgV2ViQ29yZTo6T2JqZWN0Q29udGVudFR5cGUgb2JqZWN0Q29udGVudFR5cGUoY29u
c3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgV1RGOjpTdHJpbmcmIG1pbWVUeXBlKSBmaW5hbDsKKyAg
ICBXVEY6OlN0cmluZyBvdmVycmlkZU1lZGlhVHlwZSgpIGNvbnN0IGZpbmFsOwogICAgIAotICAg
IHZvaWQgZGlzcGF0Y2hEaWRDbGVhcldpbmRvd09iamVjdEluV29ybGQoV2ViQ29yZTo6RE9NV3Jh
cHBlcldvcmxkJikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERpZENsZWFyV2luZG93T2Jq
ZWN0SW5Xb3JsZChXZWJDb3JlOjpET01XcmFwcGVyV29ybGQmKSBmaW5hbDsKIAotICAgIHZvaWQg
cmVnaXN0ZXJGb3JJY29uTm90aWZpY2F0aW9uKGJvb2wgbGlzdGVuKSBvdmVycmlkZTsKKyAgICB2
b2lkIHJlZ2lzdGVyRm9ySWNvbk5vdGlmaWNhdGlvbihib29sIGxpc3RlbikgZmluYWw7CiAKICNp
ZiBQTEFURk9STShJT1MpCi0gICAgYm9vbCBzaG91bGRMb2FkTWVkaWFFbGVtZW50VVJMKGNvbnN0
IFdlYkNvcmU6OlVSTCYpIGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkTG9hZE1lZGlh
RWxlbWVudFVSTChjb25zdCBXZWJDb3JlOjpVUkwmKSBjb25zdCBmaW5hbDsKICNlbmRpZgogCi0g
ICAgUmVtb3RlQVhPYmplY3RSZWYgYWNjZXNzaWJpbGl0eVJlbW90ZU9iamVjdCgpIG92ZXJyaWRl
IHsgcmV0dXJuIDA7IH0KKyAgICBSZW1vdGVBWE9iamVjdFJlZiBhY2Nlc3NpYmlsaXR5UmVtb3Rl
T2JqZWN0KCkgZmluYWwgeyByZXR1cm4gMDsgfQogICAgIAogICAgIFJldGFpblB0cjxXZWJGcmFt
ZVBvbGljeUxpc3RlbmVyPiBzZXRVcFBvbGljeUxpc3RlbmVyKFdlYkNvcmU6OkZyYW1lUG9saWN5
RnVuY3Rpb24sIE5TVVJMICphcHBMaW5rVVJMID0gbmlsKTsKIAotICAgIE5TRGljdGlvbmFyeSAq
YWN0aW9uRGljdGlvbmFyeShjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJiwgUGFzc1Jl
ZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+KSBjb25zdDsKKyAgICBOU0RpY3Rpb25hcnkgKmFjdGlv
bkRpY3Rpb25hcnkoY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYsIFdlYkNvcmU6OkZv
cm1TdGF0ZSopIGNvbnN0OwogICAgIAotICAgIGJvb2wgY2FuQ2FjaGVQYWdlKCkgY29uc3Qgb3Zl
cnJpZGU7CisgICAgYm9vbCBjYW5DYWNoZVBhZ2UoKSBjb25zdCBmaW5hbDsKIAotICAgIFBhc3NS
ZWZQdHI8V2ViQ29yZTo6RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRlTmV0d29ya2luZ0Nv
bnRleHQoKSBvdmVycmlkZTsKKyAgICBSZWY8V2ViQ29yZTo6RnJhbWVOZXR3b3JraW5nQ29udGV4
dD4gY3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKSBmaW5hbDsKIAogI2lmIEVOQUJMRShSRVFVRVNU
X0FVVE9DT01QTEVURSkKLSAgICB2b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxldGUoUGFzc1JlZlB0
cjxXZWJDb3JlOjpGb3JtU3RhdGU+KSBvdmVycmlkZSB7IH0KKyAgICB2b2lkIGRpZFJlcXVlc3RB
dXRvY29tcGxldGUoUmVmPFdlYkNvcmU6OkZvcm1TdGF0ZT4mJikgZmluYWwgeyB9CiAjZW5kaWYK
IAotICAgIGJvb2wgc2hvdWxkUGFpbnRCcm9rZW5JbWFnZShjb25zdCBXZWJDb3JlOjpVUkwmKSBj
b25zdCBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZFBhaW50QnJva2VuSW1hZ2UoY29uc3QgV2Vi
Q29yZTo6VVJMJikgY29uc3QgZmluYWw7CiAKICNpZiBVU0UoUVVJQ0tfTE9PSykKLSAgICB2b2lk
IGRpZENyZWF0ZVF1aWNrTG9va0hhbmRsZShXZWJDb3JlOjpRdWlja0xvb2tIYW5kbGUmKSBvdmVy
cmlkZTsKKyAgICB2b2lkIGRpZENyZWF0ZVF1aWNrTG9va0hhbmRsZShXZWJDb3JlOjpRdWlja0xv
b2tIYW5kbGUmKSBmaW5hbDsKICNlbmRpZgogCiAjaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5H
KQotICAgIHZvaWQgY29udGVudEZpbHRlckRpZEJsb2NrTG9hZChXZWJDb3JlOjpDb250ZW50Rmls
dGVyVW5ibG9ja0hhbmRsZXIpIG92ZXJyaWRlOworICAgIHZvaWQgY29udGVudEZpbHRlckRpZEJs
b2NrTG9hZChXZWJDb3JlOjpDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXIpIGZpbmFsOwogI2Vu
ZGlmCiAKLSAgICB2b2lkIHByZWZldGNoRE5TKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOworICAg
IHZvaWQgcHJlZmV0Y2hETlMoY29uc3QgU3RyaW5nJikgZmluYWw7CiAKICAgICBSZXRhaW5QdHI8
V2ViRnJhbWU+IG1fd2ViRnJhbWU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dl
YkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1tIGIvU291cmNlL1dlYktpdC9tYWMv
V2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW0KaW5kZXggNGU5YjJlMjcyZDJk
MzlkYWE4MGRhMGNjYTQzZGQyZmEwOTg5YzEwNS4uNjI1ZTg1YTY0ZTZjNTM2ZjBiNzM4MThjMzBl
MzAxNGE5NmViOWVjMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBv
cnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29y
ZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW0KQEAgLTEsNSArMSw1IEBACiAvKgotICog
Q29weXJpZ2h0IChDKSAyMDA2LTIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0xMjgsNyArMTI4LDcgQEAKICNp
bXBvcnQgPHJ1bnRpbWUvSW5pdGlhbGl6ZVRocmVhZGluZy5oPgogI2ltcG9ydCA8d3RmL0Jsb2Nr
T2JqQ0V4Y2VwdGlvbnMuaD4KICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+Ci0jaW1wb3J0IDx3
dGYvUGFzc1JlZlB0ci5oPgorI2ltcG9ydCA8d3RmL1JlZi5oPgogI2ltcG9ydCA8d3RmL1J1bkxv
b3AuaD4KICNpbXBvcnQgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC04ODQsNyArODg0LDcg
QEAgc3RhdGljIEJPT0wgc2hvdWxkVHJ5QXBwTGluayhXZWJWaWV3ICp3ZWJWaWV3LCBjb25zdCBO
YXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIEYKICNlbmRpZgogfQogCi12b2lkIFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBO
YXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwg
UGFzc1JlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSwgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUs
IEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24pCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50
OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBOYXZpZ2F0aW9u
QWN0aW9uJiBhY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRl
KiBmb3JtU3RhdGUsIGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBGcmFtZVBvbGljeUZ1bmN0aW9u
IGZ1bmN0aW9uKQogewogICAgIFdlYlZpZXcgKndlYlZpZXcgPSBnZXRXZWJWaWV3KG1fd2ViRnJh
bWUuZ2V0KCkpOwogICAgIEJPT0wgdHJ5QXBwTGluayA9IHNob3VsZFRyeUFwcExpbmsod2ViVmll
dywgYWN0aW9uLCBudWxscHRyKTsKQEAgLTg5Niw3ICs4OTYsNyBAQCB2b2lkIFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBO
YXZpZ2F0aQogICAgICAgICAgICAgICAgICAgICAgICAgICBkZWNpc2lvbkxpc3RlbmVyOnNldFVw
UG9saWN5TGlzdGVuZXIoV1RGTW92ZShmdW5jdGlvbiksIHRyeUFwcExpbmsgPyAoTlNVUkwgKily
ZXF1ZXN0LnVybCgpIDogbmlsKS5nZXQoKV07CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0
aW9uQWN0aW9uJiBhY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgUGFzc1Jl
ZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSwgRnJhbWVQb2xpY3lGdW5jdGlvbiBmdW5jdGlvbikK
K3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdh
dGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIGNvbnN0IFJlc291cmNl
UmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIEZyYW1lUG9saWN5RnVuY3Rp
b24gZnVuY3Rpb24pCiB7CiAgICAgV2ViVmlldyAqd2ViVmlldyA9IGdldFdlYlZpZXcobV93ZWJG
cmFtZS5nZXQoKSk7CiAgICAgQk9PTCB0cnlBcHBMaW5rID0gc2hvdWxkVHJ5QXBwTGluayh3ZWJW
aWV3LCBhY3Rpb24sIGNvcmUobV93ZWJGcmFtZS5nZXQoKSkpOwpAQCAtOTIwLDI5ICs5MjAsMjgg
QEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hVbmFibGVUb0ltcGxlbWVudFBv
bGljeShjb25zdCBSZXNvdXJjZUVycm9yJgogICAgIFtbd2ViVmlldyBfcG9saWN5RGVsZWdhdGVG
b3J3YXJkZXJdIHdlYlZpZXc6d2ViVmlldyB1bmFibGVUb0ltcGxlbWVudFBvbGljeVdpdGhFcnJv
cjplcnJvciBmcmFtZTptX3dlYkZyYW1lLmdldCgpXTsgICAgCiB9CiAKLXN0YXRpYyBOU0RpY3Rp
b25hcnkgKm1ha2VGb3JtRmllbGRWYWx1ZXNEaWN0aW9uYXJ5KEZvcm1TdGF0ZSogZm9ybVN0YXRl
KQorc3RhdGljIE5TRGljdGlvbmFyeSAqbWFrZUZvcm1GaWVsZFZhbHVlc0RpY3Rpb25hcnkoRm9y
bVN0YXRlJiBmb3JtU3RhdGUpCiB7Ci0gICAgY29uc3QgU3RyaW5nUGFpclZlY3RvciYgdGV4dEZp
ZWxkVmFsdWVzID0gZm9ybVN0YXRlLT50ZXh0RmllbGRWYWx1ZXMoKTsKKyAgICBhdXRvJiB0ZXh0
RmllbGRWYWx1ZXMgPSBmb3JtU3RhdGUudGV4dEZpZWxkVmFsdWVzKCk7CiAgICAgc2l6ZV90IHNp
emUgPSB0ZXh0RmllbGRWYWx1ZXMuc2l6ZSgpOwogICAgIE5TTXV0YWJsZURpY3Rpb25hcnkgKmRp
Y3Rpb25hcnkgPSBbW05TTXV0YWJsZURpY3Rpb25hcnkgYWxsb2NdIGluaXRXaXRoQ2FwYWNpdHk6
c2l6ZV07Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzaXplOyArK2kpCi0gICAgICAgIFtk
aWN0aW9uYXJ5IHNldE9iamVjdDp0ZXh0RmllbGRWYWx1ZXNbaV0uc2Vjb25kIGZvcktleTp0ZXh0
RmllbGRWYWx1ZXNbaV0uZmlyc3RdOwotCisgICAgZm9yIChhdXRvJiB2YWx1ZSA6IHRleHRGaWVs
ZFZhbHVlcykKKyAgICAgICAgW2RpY3Rpb25hcnkgc2V0T2JqZWN0OnZhbHVlLnNlY29uZCBmb3JL
ZXk6dmFsdWUuZmlyc3RdOwogICAgIHJldHVybiBbZGljdGlvbmFyeSBhdXRvcmVsZWFzZV07CiB9
CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVu
dChQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4gZm9ybVN0YXRlKQordm9pZCBXZWJGcmFt
ZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJlZjxXZWJDb3JlOjpG
b3JtU3RhdGU+JiYgZm9ybVN0YXRlKQogewogICAgIGlkIDxXZWJGb3JtRGVsZWdhdGU+IGZvcm1E
ZWxlZ2F0ZSA9IFtnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkpIF9mb3JtRGVsZWdhdGVdOwog
ICAgIGlmICghZm9ybURlbGVnYXRlKQogICAgICAgICByZXR1cm47CiAKLSAgICBET01IVE1MRm9y
bUVsZW1lbnQgKmZvcm1FbGVtZW50ID0ga2l0KGZvcm1TdGF0ZS0+Zm9ybSgpKTsKKyAgICBET01I
VE1MRm9ybUVsZW1lbnQgKmZvcm1FbGVtZW50ID0ga2l0KCZmb3JtU3RhdGUtPmZvcm0oKSk7CiAg
ICAgTlNEaWN0aW9uYXJ5ICp2YWx1ZXMgPSBtYWtlRm9ybUZpZWxkVmFsdWVzRGljdGlvbmFyeShm
b3JtU3RhdGUuZ2V0KCkpOwogICAgIENhbGxGb3JtRGVsZWdhdGUoZ2V0V2ViVmlldyhtX3dlYkZy
YW1lLmdldCgpKSwgQHNlbGVjdG9yKHdpbGxTZW5kU3VibWl0RXZlbnRUb0Zvcm06aW5GcmFtZTp3
aXRoVmFsdWVzOiksIGZvcm1FbGVtZW50LCBtX3dlYkZyYW1lLmdldCgpLCB2YWx1ZXMpOwogfQog
Ci12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKFBhc3NS
ZWZQdHI8Rm9ybVN0YXRlPiBmb3JtU3RhdGUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24p
Cit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKEZvcm1T
dGF0ZSYgZm9ybVN0YXRlLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQogewogICAgIGlk
IDxXZWJGb3JtRGVsZWdhdGU+IGZvcm1EZWxlZ2F0ZSA9IFtnZXRXZWJWaWV3KG1fd2ViRnJhbWUu
Z2V0KCkpIF9mb3JtRGVsZWdhdGVdOwogICAgIGlmICghZm9ybURlbGVnYXRlKSB7CkBAIC05NTAs
OCArOTQ5LDggQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU3VibWl0
Rm9ybShQYXNzUmVmUHRyPEZvcm1TdGF0ZT4gZm9ybVN0YXQKICAgICAgICAgcmV0dXJuOwogICAg
IH0KIAotICAgIE5TRGljdGlvbmFyeSAqdmFsdWVzID0gbWFrZUZvcm1GaWVsZFZhbHVlc0RpY3Rp
b25hcnkoZm9ybVN0YXRlLmdldCgpKTsKLSAgICBDYWxsRm9ybURlbGVnYXRlKGdldFdlYlZpZXco
bV93ZWJGcmFtZS5nZXQoKSksIEBzZWxlY3RvcihmcmFtZTpzb3VyY2VGcmFtZTp3aWxsU3VibWl0
Rm9ybTp3aXRoVmFsdWVzOnN1Ym1pc3Npb25MaXN0ZW5lcjopLCBtX3dlYkZyYW1lLmdldCgpLCBr
aXQoZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLT5mcmFtZSgpKSwga2l0KGZvcm1TdGF0ZS0+
Zm9ybSgpKSwgdmFsdWVzLCBzZXRVcFBvbGljeUxpc3RlbmVyKFdURk1vdmUoZnVuY3Rpb24pKS5n
ZXQoKSk7CisgICAgTlNEaWN0aW9uYXJ5ICp2YWx1ZXMgPSBtYWtlRm9ybUZpZWxkVmFsdWVzRGlj
dGlvbmFyeShmb3JtU3RhdGUpOworICAgIENhbGxGb3JtRGVsZWdhdGUoZ2V0V2ViVmlldyhtX3dl
YkZyYW1lLmdldCgpKSwgQHNlbGVjdG9yKGZyYW1lOnNvdXJjZUZyYW1lOndpbGxTdWJtaXRGb3Jt
OndpdGhWYWx1ZXM6c3VibWlzc2lvbkxpc3RlbmVyOiksIG1fd2ViRnJhbWUuZ2V0KCksIGtpdChm
b3JtU3RhdGUuc291cmNlRG9jdW1lbnQoKS5mcmFtZSgpKSwga2l0KCZmb3JtU3RhdGUuZm9ybSgp
KSwgdmFsdWVzLCBzZXRVcFBvbGljeUxpc3RlbmVyKFdURk1vdmUoZnVuY3Rpb24pKS5nZXQoKSk7
CiB9CiAKIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnJldmVydFRvUHJvdmlzaW9uYWxTdGF0
ZShEb2N1bWVudExvYWRlciogbG9hZGVyKQpAQCAtMTU1Miw3ICsxNTUxLDcgQEAgc3RhdGljIGNv
bnN0IE1vdXNlRXZlbnQqIGZpbmRNb3VzZUV2ZW50KGNvbnN0IEV2ZW50KiBldmVudCkKICAgICBy
ZXR1cm4gMDsKIH0KIAotTlNEaWN0aW9uYXJ5ICpXZWJGcmFtZUxvYWRlckNsaWVudDo6YWN0aW9u
RGljdGlvbmFyeShjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIFBhc3NSZWZQdHI8Rm9y
bVN0YXRlPiBmb3JtU3RhdGUpIGNvbnN0CitOU0RpY3Rpb25hcnkgKldlYkZyYW1lTG9hZGVyQ2xp
ZW50OjphY3Rpb25EaWN0aW9uYXJ5KGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIGFjdGlvbiwgRm9y
bVN0YXRlKiBmb3JtU3RhdGUpIGNvbnN0CiB7CiAgICAgdW5zaWduZWQgbW9kaWZpZXJGbGFncyA9
IDA7CiAgICAgY29uc3QgRXZlbnQqIGV2ZW50ID0gYWN0aW9uLmV2ZW50KCk7CkBAIC0xNTkzLDEw
ICsxNTkyLDggQEAgTlNEaWN0aW9uYXJ5ICpXZWJGcmFtZUxvYWRlckNsaWVudDo6YWN0aW9uRGlj
dGlvbmFyeShjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3QKICAgICAgICAgICAgIFtyZXN1bHQg
c2V0T2JqZWN0OltOU051bWJlciBudW1iZXJXaXRoSW50OldlYkNvcmU6Ok5vQnV0dG9uXSBmb3JL
ZXk6V2ViQWN0aW9uQnV0dG9uS2V5XTsKICAgICB9CiAKLSAgICBpZiAoZm9ybVN0YXRlKSB7Ci0g
ICAgICAgIEFTU0VSVChmb3JtU3RhdGUtPmZvcm0oKSk7Ci0gICAgICAgIFtyZXN1bHQgc2V0T2Jq
ZWN0OmtpdChmb3JtU3RhdGUtPmZvcm0oKSkgZm9yS2V5OldlYkFjdGlvbkZvcm1LZXldOwotICAg
IH0KKyAgICBpZiAoZm9ybVN0YXRlKQorICAgICAgICBbcmVzdWx0IHNldE9iamVjdDpraXQoJmZv
cm1TdGF0ZS0+Zm9ybSgpKSBmb3JLZXk6V2ViQWN0aW9uRm9ybUtleV07CiAKICAgICByZXR1cm4g
cmVzdWx0OwogfQpAQCAtMTYyMiw3ICsxNjE5LDcgQEAgYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVu
dDo6Y2FuQ2FjaGVQYWdlKCkgY29uc3QKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotUmVmUHRyPEZy
YW1lPiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlRnJhbWUoY29uc3QgVVJMJiB1cmwsIGNv
bnN0IFN0cmluZyYgbmFtZSwgSFRNTEZyYW1lT3duZXJFbGVtZW50KiBvd25lckVsZW1lbnQsCitS
ZWZQdHI8RnJhbWU+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVGcmFtZShjb25zdCBVUkwm
IHVybCwgY29uc3QgU3RyaW5nJiBuYW1lLCBIVE1MRnJhbWVPd25lckVsZW1lbnQmIG93bmVyRWxl
bWVudCwKICAgICBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBib29sIGFsbG93c1Njcm9sbGluZywg
aW50IG1hcmdpbldpZHRoLCBpbnQgbWFyZ2luSGVpZ2h0KQogewogICAgIEJFR0lOX0JMT0NLX09C
SkNfRVhDRVBUSU9OUzsKQEAgLTE2MzEsNyArMTYyOCw3IEBAIFJlZlB0cjxGcmFtZT4gV2ViRnJh
bWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcm
IG5hCiAgICAgCiAgICAgV2ViRnJhbWVWaWV3ICpjaGlsZFZpZXcgPSBbW1dlYkZyYW1lVmlldyBh
bGxvY10gaW5pdF07CiAgICAgCi0gICAgUmVmUHRyPEZyYW1lPiByZXN1bHQgPSBbV2ViRnJhbWUg
X2NyZWF0ZVN1YmZyYW1lV2l0aE93bmVyRWxlbWVudDpvd25lckVsZW1lbnQgZnJhbWVOYW1lOm5h
bWUgZnJhbWVWaWV3OmNoaWxkVmlld107CisgICAgUmVmUHRyPEZyYW1lPiByZXN1bHQgPSBbV2Vi
RnJhbWUgX2NyZWF0ZVN1YmZyYW1lV2l0aE93bmVyRWxlbWVudDomb3duZXJFbGVtZW50IGZyYW1l
TmFtZTpuYW1lIGZyYW1lVmlldzpjaGlsZFZpZXddOwogICAgIFtjaGlsZFZpZXcgcmVsZWFzZV07
CiAKICAgICBXZWJGcmFtZSAqbmV3RnJhbWUgPSBraXQocmVzdWx0LmdldCgpKTsKQEAgLTE5MDks
NyArMTkwNiw3IEBAIHN0YXRpYyBib29sIHNob3VsZEJsb2NrUGx1Z2luKFdlYkJhc2VQbHVnaW5Q
YWNrYWdlICpwbHVnaW5QYWNrYWdlKQogI2VuZGlmCiB9CiAKLVJlZlB0cjxXaWRnZXQ+IFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYgc2l6ZSwgSFRNTFBs
dWdJbkVsZW1lbnQqIGVsZW1lbnQsIGNvbnN0IFVSTCYgdXJsLAorUmVmUHRyPFdpZGdldD4gV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiBzaXplLCBIVE1M
UGx1Z0luRWxlbWVudCYgZWxlbWVudCwgY29uc3QgVVJMJiB1cmwsCiAgICAgY29uc3QgVmVjdG9y
PFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcywg
Y29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgYm9vbCBsb2FkTWFudWFsbHkpCiB7CiAgICAgQkVHSU5f
QkxPQ0tfT0JKQ19FWENFUFRJT05TOwpAQCAtMTk0OCw3ICsxOTQ1LDcgQEAgUmVmUHRyPFdpZGdl
dD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiBzaXpl
LCBIVE1MUGx1Z0kKICAgICAgICAgICAgIGF0dHJpYnV0ZXMsIFdlYlBsdWdJbkF0dHJpYnV0ZXNL
ZXksCiAgICAgICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEludDpsb2FkTWFudWFsbHkgPyBX
ZWJQbHVnSW5Nb2RlRnVsbCA6IFdlYlBsdWdJbk1vZGVFbWJlZF0sIFdlYlBsdWdJbk1vZGVLZXks
CiAgICAgICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6IWxvYWRNYW51YWxseV0sIFdl
YlBsdWdJblNob3VsZExvYWRNYWluUmVzb3VyY2VLZXksCi0gICAgICAgICAgICBraXQoZWxlbWVu
dCksIFdlYlBsdWdJbkNvbnRhaW5pbmdFbGVtZW50S2V5LAorICAgICAgICAgICAga2l0KCZlbGVt
ZW50KSwgV2ViUGx1Z0luQ29udGFpbmluZ0VsZW1lbnRLZXksCiAgICAgICAgICAgICAvLyBGSVhN
RTogV2Ugc2hvdWxkIGJlIHBhc3NpbmcgYmFzZSBVUkwsIHNlZSA8aHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTM1MjE1Pi4KICAgICAgICAgICAgIHBsdWdpblVSTCwgV2Vi
UGx1Z0luQmFzZVVSTEtleSwgLy8gcGx1Z2luVVJMIG1pZ2h0IGJlIG5pbCwgc28gYWRkIGl0IGxh
c3QKICAgICAgICAgICAgIG5pbF07CkBAIC0xOTk0LDExICsxOTkxLDExIEBAIFJlZlB0cjxXaWRn
ZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYgc2l6
ZSwgSFRNTFBsdWdJCiAgICAgaWYgKHBsdWdpblBhY2thZ2UpIHsKICAgICAgICAgaWYgKHNob3Vs
ZEJsb2NrUGx1Z2luKHBsdWdpblBhY2thZ2UpKSB7CiAgICAgICAgICAgICBlcnJvckNvZGUgPSBX
ZWJLaXRFcnJvckJsb2NrZWRQbHVnSW5WZXJzaW9uOwotICAgICAgICAgICAgaWYgKGlzPFJlbmRl
ckVtYmVkZGVkT2JqZWN0PihlbGVtZW50LT5yZW5kZXJlcigpKSkKLSAgICAgICAgICAgICAgICBk
b3duY2FzdDxSZW5kZXJFbWJlZGRlZE9iamVjdD4oKmVsZW1lbnQtPnJlbmRlcmVyKCkpLnNldFBs
dWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKFJlbmRlckVtYmVkZGVkT2JqZWN0OjpJbnNlY3VyZVBs
dWdpblZlcnNpb24pOworICAgICAgICAgICAgaWYgKGlzPFJlbmRlckVtYmVkZGVkT2JqZWN0Pihl
bGVtZW50LnJlbmRlcmVyKCkpKQorICAgICAgICAgICAgICAgIGRvd25jYXN0PFJlbmRlckVtYmVk
ZGVkT2JqZWN0PigqZWxlbWVudC5yZW5kZXJlcigpKS5zZXRQbHVnaW5VbmF2YWlsYWJpbGl0eVJl
YXNvbihSZW5kZXJFbWJlZGRlZE9iamVjdDo6SW5zZWN1cmVQbHVnaW5WZXJzaW9uKTsKICAgICAg
ICAgfSBlbHNlIHsKICAgICAgICAgICAgIGlmIChbcGx1Z2luUGFja2FnZSBpc0tpbmRPZkNsYXNz
OltXZWJQbHVnaW5QYWNrYWdlIGNsYXNzXV0pCi0gICAgICAgICAgICAgICAgdmlldyA9IHBsdWdp
blZpZXcobV93ZWJGcmFtZS5nZXQoKSwgKFdlYlBsdWdpblBhY2thZ2UgKilwbHVnaW5QYWNrYWdl
LCBhdHRyaWJ1dGVLZXlzLCBraXQocGFyYW1WYWx1ZXMpLCBiYXNlVVJMLCBraXQoZWxlbWVudCks
IGxvYWRNYW51YWxseSk7CisgICAgICAgICAgICAgICAgdmlldyA9IHBsdWdpblZpZXcobV93ZWJG
cmFtZS5nZXQoKSwgKFdlYlBsdWdpblBhY2thZ2UgKilwbHVnaW5QYWNrYWdlLCBhdHRyaWJ1dGVL
ZXlzLCBraXQocGFyYW1WYWx1ZXMpLCBiYXNlVVJMLCBraXQoJmVsZW1lbnQpLCBsb2FkTWFudWFs
bHkpOwogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgICAgICAgICAgZWxzZSBp
ZiAoW3BsdWdpblBhY2thZ2UgaXNLaW5kT2ZDbGFzczpbV2ViTmV0c2NhcGVQbHVnaW5QYWNrYWdl
IGNsYXNzXV0pIHsKICAgICAgICAgICAgICAgICBXZWJCYXNlTmV0c2NhcGVQbHVnaW5WaWV3ICpw
bHVnaW5WaWV3ID0gW1tbTkVUU0NBUEVfUExVR0lOX1ZJRVcgYWxsb2NdCkBAIC0yMDEwLDcgKzIw
MDcsNyBAQCBSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlUGx1Z2lu
KGNvbnN0IEludFNpemUmIHNpemUsIEhUTUxQbHVnSQogICAgICAgICAgICAgICAgICAgICBhdHRy
aWJ1dGVLZXlzOmF0dHJpYnV0ZUtleXMKICAgICAgICAgICAgICAgICAgICAgYXR0cmlidXRlVmFs
dWVzOmtpdChwYXJhbVZhbHVlcykKICAgICAgICAgICAgICAgICAgICAgbG9hZE1hbnVhbGx5Omxv
YWRNYW51YWxseQotICAgICAgICAgICAgICAgICAgICBlbGVtZW50OmVsZW1lbnRdIGF1dG9yZWxl
YXNlXTsKKyAgICAgICAgICAgICAgICAgICAgZWxlbWVudDomZWxlbWVudF0gYXV0b3JlbGVhc2Vd
OwogCiAgICAgICAgICAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBOZXRzY2FwZVBsdWdpbldp
ZGdldChwbHVnaW5WaWV3KSk7CiAgICAgICAgICAgICB9CkBAIC0yMDgxLDcgKzIwNzgsNyBAQCB2
b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpyZWRpcmVjdERhdGFUb1BsdWdpbihXaWRnZXQqIHBs
dWdpbldpZGdldCkKICAgICBFTkRfQkxPQ0tfT0JKQ19FWENFUFRJT05TOwogfQogICAgIAotUGFz
c1JlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lk
Z2V0KGNvbnN0IEludFNpemUmIHNpemUsIEhUTUxBcHBsZXRFbGVtZW50KiBlbGVtZW50LCBjb25z
dCBVUkwmIGJhc2VVUkwsIAorUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNy
ZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYgc2l6ZSwgSFRNTEFwcGxldEVsZW1l
bnQmIGVsZW1lbnQsIGNvbnN0IFVSTCYgYmFzZVVSTCwKICAgICBjb25zdCBWZWN0b3I8U3RyaW5n
PiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKQogewogICAg
IEJFR0lOX0JMT0NLX09CSkNfRVhDRVBUSU9OUzsKQEAgLTIwOTksOCArMjA5Niw4IEBAIFBhc3NS
ZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlSmF2YUFwcGxldFdpZGdl
dChjb25zdCBJbnRTaXplJiBzCiAgICAgaWYgKHBsdWdpblBhY2thZ2UpIHsKICAgICAgICAgaWYg
KHNob3VsZEJsb2NrUGx1Z2luKHBsdWdpblBhY2thZ2UpKSB7CiAgICAgICAgICAgICBlcnJvckNv
ZGUgPSBXZWJLaXRFcnJvckJsb2NrZWRQbHVnSW5WZXJzaW9uOwotICAgICAgICAgICAgaWYgKGlz
PFJlbmRlckVtYmVkZGVkT2JqZWN0PihlbGVtZW50LT5yZW5kZXJlcigpKSkKLSAgICAgICAgICAg
ICAgICBkb3duY2FzdDxSZW5kZXJFbWJlZGRlZE9iamVjdD4oKmVsZW1lbnQtPnJlbmRlcmVyKCkp
LnNldFBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKFJlbmRlckVtYmVkZGVkT2JqZWN0OjpJbnNl
Y3VyZVBsdWdpblZlcnNpb24pOworICAgICAgICAgICAgaWYgKGlzPFJlbmRlckVtYmVkZGVkT2Jq
ZWN0PihlbGVtZW50LnJlbmRlcmVyKCkpKQorICAgICAgICAgICAgICAgIGRvd25jYXN0PFJlbmRl
ckVtYmVkZGVkT2JqZWN0PigqZWxlbWVudC5yZW5kZXJlcigpKS5zZXRQbHVnaW5VbmF2YWlsYWJp
bGl0eVJlYXNvbihSZW5kZXJFbWJlZGRlZE9iamVjdDo6SW5zZWN1cmVQbHVnaW5WZXJzaW9uKTsK
ICAgICAgICAgfSBlbHNlIHsKICNpZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKICAgICAg
ICAgICAgIGlmIChbcGx1Z2luUGFja2FnZSBpc0tpbmRPZkNsYXNzOltXZWJOZXRzY2FwZVBsdWdp
blBhY2thZ2UgY2xhc3NdXSkgewpAQCAtMjExMiw3ICsyMTA5LDcgQEAgUGFzc1JlZlB0cjxXaWRn
ZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IElu
dFNpemUmIHMKICAgICAgICAgICAgICAgICAgICAgYXR0cmlidXRlS2V5czpraXQocGFyYW1OYW1l
cykKICAgICAgICAgICAgICAgICAgICAgYXR0cmlidXRlVmFsdWVzOmtpdChwYXJhbVZhbHVlcykK
ICAgICAgICAgICAgICAgICAgICAgbG9hZE1hbnVhbGx5Ok5PCi0gICAgICAgICAgICAgICAgICAg
IGVsZW1lbnQ6ZWxlbWVudF0gYXV0b3JlbGVhc2VdOworICAgICAgICAgICAgICAgICAgICBlbGVt
ZW50OiZlbGVtZW50XSBhdXRvcmVsZWFzZV07CiAgICAgICAgICAgICAgICAgaWYgKHZpZXcpCiAg
ICAgICAgICAgICAgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgTmV0c2NhcGVQbHVnaW5XaWRn
ZXQoc3RhdGljX2Nhc3Q8V2ViQmFzZU5ldHNjYXBlUGx1Z2luVmlldyAqPih2aWV3KSkpOwogICAg
ICAgICAgICAgfQpAQCAtMjIwOSw3ICsyMjA2LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVu
dDo6cmVnaXN0ZXJGb3JJY29uTm90aWZpY2F0aW9uKGJvb2wgbGlzdGVuKQogI2VuZGlmCiB9CiAK
LVBhc3NSZWZQdHI8RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkKK1JlZjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBX
ZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKQogewogICAgIHJl
dHVybiBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0OjpjcmVhdGUoY29yZShtX3dlYkZyYW1lLmdl
dCgpKSk7CiB9CkBAIC0yMjgzLDcgKzIyODAsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50
OjpkaWRDcmVhdGVRdWlja0xvb2tIYW5kbGUoV2ViQ29yZTo6UXVpY2tMb29rSGFuZGxlJiBoYQog
ICAgICAgICAgICAgcmVtb3ZlUUxQcmV2aWV3Q29udmVydGVyRm9yVVJMKG1fZmlyc3RSZXF1ZXN0
VVJMLmdldCgpKTsKICAgICAgICAgfQogICAgIH07Ci0gICAgaGFuZGxlLnNldENsaWVudChhZG9w
dFJlZihuZXcgUXVpY2tMb29rRG9jdW1lbnRXcml0ZXIoaGFuZGxlKSkpOworICAgIGhhbmRsZS5z
ZXRDbGllbnQoYWRvcHRSZWYoKm5ldyBRdWlja0xvb2tEb2N1bWVudFdyaXRlcihoYW5kbGUpKSk7
CiB9CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBv
cnQvV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dC5oIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29y
ZVN1cHBvcnQvV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dC5oCmluZGV4IGIwOGQ1NmUxOGM5Yzhl
ZTY0MTgwYTIxNGY1ZmJiMGVkZTA0ZjVhNGQuLjk3ZTBlYWQ5ZjA4YjdmMzYxMjc4YTNkNzU2ZDYy
OGE1ZmFlYWE5MTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0
L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJD
b3JlU3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0LmgKQEAgLTIzLDE2ICsyMywxNSBA
QAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV2Vi
RnJhbWVOZXR3b3JraW5nQ29udGV4dF9oCi0jZGVmaW5lIFdlYkZyYW1lTmV0d29ya2luZ0NvbnRl
eHRfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxXZWJDb3JlL0ZyYW1lTmV0d29ya2luZ0Nv
bnRleHQuaD4KIAogY2xhc3MgV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dCA6IHB1YmxpYyBXZWJD
b3JlOjpGcmFtZU5ldHdvcmtpbmdDb250ZXh0IHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1Jl
ZlB0cjxXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBjcmVhdGUoV2ViQ29yZTo6RnJhbWUqIGZy
YW1lKQorICAgIHN0YXRpYyBSZWY8V2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRlKFdl
YkNvcmU6OkZyYW1lKiBmcmFtZSkKICAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcg
V2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dChmcmFtZSkpOworICAgICAgICByZXR1cm4gYWRvcHRS
ZWYoKm5ldyBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0KGZyYW1lKSk7CiAgICAgfQogCiAgICAg
c3RhdGljIFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgZW5zdXJlUHJpdmF0ZUJyb3dz
aW5nU2Vzc2lvbigpOwpAQCAtNTEsNyArNTAsNCBAQCBwcml2YXRlOgogICAgIFN0cmluZyBzb3Vy
Y2VBcHBsaWNhdGlvbklkZW50aWZpZXIoKSBjb25zdCBvdmVycmlkZTsKICAgICBXZWJDb3JlOjpS
ZXNvdXJjZUVycm9yIGJsb2NrZWRFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qm
KSBjb25zdCBvdmVycmlkZTsKICAgICBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb24mIHN0
b3JhZ2VTZXNzaW9uKCkgY29uc3Qgb3ZlcnJpZGU7Ci0KIH07Ci0KLSNlbmRpZgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVOZXR3b3JraW5nQ29u
dGV4dC5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTmV0d29y
a2luZ0NvbnRleHQubW0KaW5kZXggOTNlNzRiYmU2Mjg0YjYzYzIzMjEyOWQxNzQ4ZTBkOTE2MmQx
YTE5Yy4uZWVmNzAyYzU2ZmQwZWQ2N2QzNzBmMzRhNjY5OWUyNTM2NzJkODA0YSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVOZXR3b3JraW5nQ29u
dGV4dC5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZU5l
dHdvcmtpbmdDb250ZXh0Lm1tCkBAIC00NywxNiArNDcsMTMgQEAgdXNpbmcgbmFtZXNwYWNlIFdl
YkNvcmU7CiBOZXR3b3JrU3RvcmFnZVNlc3Npb24mIFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQ6
OmVuc3VyZVByaXZhdGVCcm93c2luZ1Nlc3Npb24oKQogewogICAgIEFTU0VSVChpc01haW5UaHJl
YWQoKSk7Ci0KICAgICBOZXR3b3JrU3RvcmFnZVNlc3Npb246OmVuc3VyZVByaXZhdGVCcm93c2lu
Z1Nlc3Npb24oU2Vzc2lvbklEOjpsZWdhY3lQcml2YXRlU2Vzc2lvbklEKCksIFtbTlNCdW5kbGUg
bWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0pOwotCiAgICAgcmV0dXJuICpOZXR3b3JrU3Rv
cmFnZVNlc3Npb246OnN0b3JhZ2VTZXNzaW9uKFNlc3Npb25JRDo6bGVnYWN5UHJpdmF0ZVNlc3Np
b25JRCgpKTsKIH0KIAogdm9pZCBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0OjpkZXN0cm95UHJp
dmF0ZUJyb3dzaW5nU2Vzc2lvbigpCiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKLQog
ICAgIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6ZGVzdHJveVNlc3Npb24oU2Vzc2lvbklEOjpsZWdh
Y3lQcml2YXRlU2Vzc2lvbklEKCkpOwogfQogCkBAIC02OCwxOSArNjUsMTkgQEAgYm9vbCBXZWJG
cmFtZU5ldHdvcmtpbmdDb250ZXh0Ojpsb2NhbEZpbGVDb250ZW50U25pZmZpbmdFbmFibGVkKCkg
Y29uc3QKIFNjaGVkdWxlUGFpckhhc2hTZXQqIFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQ6OnNj
aGVkdWxlZFJ1bkxvb3BQYWlycygpIGNvbnN0CiB7CiAgICAgaWYgKCFmcmFtZSgpIHx8ICFmcmFt
ZSgpLT5wYWdlKCkpCi0gICAgICAgIHJldHVybiAwOworICAgICAgICByZXR1cm4gbnVsbHB0cjsK
ICAgICByZXR1cm4gZnJhbWUoKS0+cGFnZSgpLT5zY2hlZHVsZWRSdW5Mb29wUGFpcnMoKTsKIH0K
IAogUmV0YWluUHRyPENGRGF0YVJlZj4gV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dDo6c291cmNl
QXBwbGljYXRpb25BdWRpdERhdGEoKSBjb25zdAogewogICAgIGlmICghZnJhbWUoKSB8fCAhZnJh
bWUoKS0+cGFnZSgpKQotICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7
CiAgICAgCiAgICAgV2ViVmlldyAqd2VidmlldyA9IGtpdChmcmFtZSgpLT5wYWdlKCkpOwotICAg
IAogICAgIGlmICghd2VidmlldykKLSAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIHJldHVybiBu
dWxscHRyOworCiAgICAgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8Q0ZEYXRhUmVmPih3ZWJ2aWV3
Ll9zb3VyY2VBcHBsaWNhdGlvbkF1ZGl0RGF0YSk7CiB9CiAKQEAgLTk4LDcgKzk1LDcgQEAgTmV0
d29ya1N0b3JhZ2VTZXNzaW9uJiBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0OjpzdG9yYWdlU2Vz
c2lvbigpIGNvbnN0CiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKICAgICBpZiAoZnJh
bWUoKSAmJiBmcmFtZSgpLT5wYWdlKCktPnNlc3Npb25JRCgpLmlzRXBoZW1lcmFsKCkpIHsKLSAg
ICAgICAgaWYgKE5ldHdvcmtTdG9yYWdlU2Vzc2lvbiogc2Vzc2lvbiA9IE5ldHdvcmtTdG9yYWdl
U2Vzc2lvbjo6c3RvcmFnZVNlc3Npb24oU2Vzc2lvbklEOjpsZWdhY3lQcml2YXRlU2Vzc2lvbklE
KCkpKQorICAgICAgICBpZiAoYXV0byogc2Vzc2lvbiA9IE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6
c3RvcmFnZVNlc3Npb24oU2Vzc2lvbklEOjpsZWdhY3lQcml2YXRlU2Vzc2lvbklEKCkpKQogICAg
ICAgICAgICAgcmV0dXJuICpzZXNzaW9uOwogICAgICAgICAvLyBTb21lIHJlcXVlc3RzIG1heSBz
dGlsbCBiZSBjb21pbmcgc2hvcnRseSBiZWZvcmUgV2ViQ29yZSB1cGRhdGVzIHRoZSBzZXNzaW9u
IElEIGFuZCBhZnRlciBXZWJLaXQgZGVzdHJveXMgdGhlIHByaXZhdGUgYnJvd3Npbmcgc2Vzc2lv
bi4KICAgICAgICAgTE9HX0VSUk9SKCJJbnZhbGlkIHNlc3Npb24gSUQuIFBsZWFzZSBmaWxlIGEg
YnVnIHVubGVzcyB5b3UganVzdCBkaXNhYmxlZCBwcml2YXRlIGJyb3dzaW5nLCBpbiB3aGljaCBj
YXNlIGl0J3MgYW4gZXhwZWN0ZWQgcmFjZS4iKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
bWFjL1dlYkNvcmVTdXBwb3J0L1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLmggYi9Tb3VyY2Uv
V2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lci5oCmlu
ZGV4IGFjYzYyY2FkNzQwMWM1NWRmYzc4MDg3YWVjOWZiYmI0YmFjYzI5NTIuLjBlNDBhYTJlZDI1
OTNkMTc1YzUwZDhkMDdhMjdhYjA2ZGUxZDFlNTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
bWFjL1dlYkNvcmVTdXBwb3J0L1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLmgKKysrIGIvU291
cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIu
aApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDggQXBwbGUgSW5jLiAg
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOC0yMDE3IEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpA
QCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbXBvcnQgIldlYlVJRGVsZWdhdGUuaCIKLSNpbXBv
cnQgPHd0Zi9Gb3J3YXJkLmg+CisjaW1wb3J0IDx3dGYvUmVmUHRyLmg+CiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIGNsYXNzIEZpbGVDaG9vc2VyOwpAQCAtMzIsOSArMzIsOSBAQCBjbGFzcyBGaWxl
Q2hvb3NlcjsKIAogQGludGVyZmFjZSBXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lciA6IE5TT2Jq
ZWN0IDxXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcj4KIHsKLSAgICBXZWJDb3JlOjpGaWxlQ2hv
b3NlciogX2Nob29zZXI7CisgICAgUmVmUHRyPFdlYkNvcmU6OkZpbGVDaG9vc2VyPiBfY2hvb3Nl
cjsKIH0KIAotLSAoaWQpaW5pdFdpdGhDaG9vc2VyOihQYXNzUmVmUHRyPFdlYkNvcmU6OkZpbGVD
aG9vc2VyPiljaG9vc2VyOworLSAoaWQpaW5pdFdpdGhDaG9vc2VyOihXZWJDb3JlOjpGaWxlQ2hv
b3NlciYpY2hvb3NlcjsKIAogQGVuZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2Vi
Q29yZVN1cHBvcnQvV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIubW0gYi9Tb3VyY2UvV2ViS2l0
L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lci5tbQppbmRleCBi
NmJkMjY3YmRlZDgxYTdiNGY4N2ZkOGNmM2NkZDAwYWM0MTJhOGVhLi44YjI1MjA5MDcwM2FlNDdk
N2JiYWZhYTY1YjMyNmZlZWZjYzMwNDdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9X
ZWJDb3JlU3VwcG9ydC9XZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lci5tbQorKysgYi9Tb3VyY2Uv
V2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lci5tbQpA
QCAtMzYsMzAgKzM2LDE4IEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCiBAaW1wbGVtZW50
YXRpb24gV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIKIAotLSAoaWQpaW5pdFdpdGhDaG9vc2Vy
OihQYXNzUmVmUHRyPEZpbGVDaG9vc2VyPiljaG9vc2VyCistIChpZClpbml0V2l0aENob29zZXI6
KEZpbGVDaG9vc2VyJiljaG9vc2VyCiB7CiAgICAgc2VsZiA9IFtzdXBlciBpbml0XTsKICAgICBp
ZiAoIXNlbGYpCiAgICAgICAgIHJldHVybiBuaWw7Ci0gICAgX2Nob29zZXIgPSBjaG9vc2VyLmxl
YWtSZWYoKTsKKyAgICBfY2hvb3NlciA9ICZjaG9vc2VyOwogICAgIHJldHVybiBzZWxmOwogfQog
Ci0jaWZuZGVmIE5ERUJVRwotLSAodm9pZClkZWFsbG9jCi17Ci0gICAgQVNTRVJUKCFfY2hvb3Nl
cik7Ci0gICAgW3N1cGVyIGRlYWxsb2NdOwotfQotI2VuZGlmCi0KIC0gKHZvaWQpY2FuY2VsCiB7
Ci0gICAgQVNTRVJUKF9jaG9vc2VyKTsKLSAgICBpZiAoIV9jaG9vc2VyKQotICAgICAgICByZXR1
cm47Ci0gICAgX2Nob29zZXItPmRlcmVmKCk7Ci0gICAgX2Nob29zZXIgPSAwOworICAgIF9jaG9v
c2VyID0gbnVsbHB0cjsKIH0KIAogLSAodm9pZCljaG9vc2VGaWxlbmFtZTooTlNTdHJpbmcgKilm
aWxlbmFtZQpAQCAtNjgsOCArNTYsNyBAQCAtICh2b2lkKWNob29zZUZpbGVuYW1lOihOU1N0cmlu
ZyAqKWZpbGVuYW1lCiAgICAgaWYgKCFfY2hvb3NlcikKICAgICAgICAgcmV0dXJuOwogICAgIF9j
aG9vc2VyLT5jaG9vc2VGaWxlKGZpbGVuYW1lKTsKLSAgICBfY2hvb3Nlci0+ZGVyZWYoKTsKLSAg
ICBfY2hvb3NlciA9IDA7CisgICAgX2Nob29zZXIgPSBudWxscHRyOwogfQogCiAtICh2b2lkKWNo
b29zZUZpbGVuYW1lczooTlNBcnJheSAqKWZpbGVuYW1lcwpAQCAtODIsMTEgKzY5LDExIEBAIC0g
KHZvaWQpY2hvb3NlRmlsZW5hbWVzOihOU0FycmF5ICopZmlsZW5hbWVzCiAgICAgZm9yIChOU1VJ
bnRlZ2VyIGkgPSAwOyBpIDwgY291bnQ7IGkrKykKICAgICAgICAgbmFtZXNbaV0gPSBbZmlsZW5h
bWVzIG9iamVjdEF0SW5kZXg6aV07CiAgICAgX2Nob29zZXItPmNob29zZUZpbGVzKG5hbWVzKTsK
LSAgICBfY2hvb3Nlci0+ZGVyZWYoKTsKLSAgICBfY2hvb3NlciA9IDA7CisgICAgX2Nob29zZXIg
PSBudWxscHRyOwogfQogCiAjaWYgUExBVEZPUk0oSU9TKQorCiAtICh2b2lkKWNob29zZUZpbGVu
YW1lOihOU1N0cmluZyAqKWZpbGVuYW1lIGRpc3BsYXlTdHJpbmc6KE5TU3RyaW5nICopZGlzcGxh
eVN0cmluZyBpY29uSW1hZ2U6KENHSW1hZ2VSZWYpaW1hZ2VSZWYKIHsKICAgICBbc2VsZiBjaG9v
c2VGaWxlbmFtZXM6W05TQXJyYXkgYXJyYXlXaXRoT2JqZWN0OmZpbGVuYW1lXSBkaXNwbGF5U3Ry
aW5nOmRpc3BsYXlTdHJpbmcgaWNvbkltYWdlOmltYWdlUmVmXTsKQEAgLTk4LDE4ICs4NSwxNCBA
QCAtICh2b2lkKWNob29zZUZpbGVuYW1lczooTlNBcnJheSAqKWZpbGVuYW1lcyBkaXNwbGF5U3Ry
aW5nOihOU1N0cmluZyAqKWRpc3BsYXlTdAogICAgIGlmICghX2Nob29zZXIpCiAgICAgICAgIHJl
dHVybjsKIAotICAgIFJlZlB0cjxJY29uPiBpY29uID0gSWNvbjo6Y3JlYXRlSWNvbkZvckltYWdl
KGltYWdlUmVmKTsKLQotICAgIE5TVUludGVnZXIgY291bnQgPSBbZmlsZW5hbWVzIGNvdW50XTsK
LSAgICBWZWN0b3I8U3RyaW5nPiBuYW1lcyhjb3VudCk7Ci0gICAgZm9yIChOU1VJbnRlZ2VyIGkg
PSAwOyBpIDwgY291bnQ7ICsraSkKLSAgICAgICAgbmFtZXNbaV0gPSBbZmlsZW5hbWVzIG9iamVj
dEF0SW5kZXg6aV07Ci0gICAgX2Nob29zZXItPmNob29zZU1lZGlhRmlsZXMobmFtZXMsIGRpc3Bs
YXlTdHJpbmcsIGljb24uZ2V0KCkpOwotICAgIAotICAgIC8vIEZJWE1FOiB3ZSBzaG91bGRuJ3Qg
YmUgbWFudWFsbHkgZGVyZWYoKSdpbmcgaGVyZS4KLSAgICBfY2hvb3Nlci0+ZGVyZWYoKTsKKyAg
ICBWZWN0b3I8U3RyaW5nPiBuYW1lczsKKyAgICBuYW1lcy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5
KFtmaWxlbmFtZXMgY291bnRdKTsKKyAgICBmb3IgKE5TU3RyaW5nICpmaWxlbmFtZSBpbiBmaWxl
bmFtZXMpCisgICAgICAgIG5hbWVzLnVuY2hlY2tlZEFwcGVuZChmaWxlbmFtZSk7CisgICAgX2No
b29zZXItPmNob29zZU1lZGlhRmlsZXMobmFtZXMsIGRpc3BsYXlTdHJpbmcsIEljb246OmNyZWF0
ZUljb25Gb3JJbWFnZShpbWFnZVJlZikuZ2V0KCkpOwogICAgIF9jaG9vc2VyID0gbnVsbHB0cjsK
IH0KKwogI2VuZGlmCiAKIEBlbmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZp
ZXcvV2ViQXJjaGl2ZS5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViQXJjaGl2ZS5t
bQppbmRleCBlOTZjNjA3Y2ZiODRjODVhMWViZmFhYmRjMzFjZWJhMDRlYTVjM2U4Li5mZjc1NDZk
ODVmOGE1NWE1OWI4MGFhZjE3YjU0ZTcyZWE2MWY5Njc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L21hYy9XZWJWaWV3L1dlYkFyY2hpdmUubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2Vi
Vmlldy9XZWJBcmNoaXZlLm1tCkBAIC0xNzQsMjUgKzE3NCwxNiBAQCAtIChpbnN0YW5jZXR5cGUp
aW5pdFdpdGhNYWluUmVzb3VyY2U6KFdlYlJlc291cmNlICopbWFpblJlc291cmNlIHN1YnJlc291
cmNlczooTgogICAgICAgICBbc2VsZiByZWxlYXNlXTsKICAgICAgICAgcmV0dXJuIG5pbDsKICAg
ICB9Ci0gICAgCi0gICAgUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gY29yZU1haW5SZXNvdXJjZSA9
IG1haW5SZXNvdXJjZSA/IFttYWluUmVzb3VyY2UgX2NvcmVSZXNvdXJjZV0gOiBudWxscHRyOwog
Ci0gICAgVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+PiBjb3JlUmVzb3VyY2VzOworICAg
IFZlY3RvcjxSZWY8QXJjaGl2ZVJlc291cmNlPj4gY29yZVJlc291cmNlczsKICAgICBmb3IgKFdl
YlJlc291cmNlICpzdWJyZXNvdXJjZSBpbiBzdWJyZXNvdXJjZXMpCiAgICAgICAgIGNvcmVSZXNv
dXJjZXMuYXBwZW5kKFtzdWJyZXNvdXJjZSBfY29yZVJlc291cmNlXSk7CiAKLSAgICBWZWN0b3I8
UmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+PiBjb3JlQXJjaGl2ZXM7CisgICAgVmVjdG9yPFJlZjxM
ZWdhY3lXZWJBcmNoaXZlPj4gY29yZUFyY2hpdmVzOwogICAgIGZvciAoV2ViQXJjaGl2ZSAqc3Vi
ZnJhbWVBcmNoaXZlIGluIHN1YmZyYW1lQXJjaGl2ZXMpCi0gICAgICAgIGNvcmVBcmNoaXZlcy5h
cHBlbmQoW3N1YmZyYW1lQXJjaGl2ZS0+X3ByaXZhdGUgY29yZUFyY2hpdmVdKTsKLQotICAgIGF1
dG8gY29yZUFyY2hpdmUgPSBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoV1RGTW92ZShjb3JlTWFp
blJlc291cmNlKSwgV1RGTW92ZShjb3JlUmVzb3VyY2VzKSwgV1RGTW92ZShjb3JlQXJjaGl2ZXMp
KTsKLSAgICBpZiAoIWNvcmVBcmNoaXZlKSB7Ci0gICAgICAgIFtzZWxmIHJlbGVhc2VdOwotICAg
ICAgICByZXR1cm4gbmlsOwotICAgIH0KLQotICAgIFtfcHJpdmF0ZSBzZXRDb3JlQXJjaGl2ZTpX
VEZNb3ZlKGNvcmVBcmNoaXZlKV07CisgICAgICAgIGNvcmVBcmNoaXZlcy5hcHBlbmQoKltzdWJm
cmFtZUFyY2hpdmUtPl9wcml2YXRlIGNvcmVBcmNoaXZlXSk7CiAKKyAgICBbX3ByaXZhdGUgc2V0
Q29yZUFyY2hpdmU6TGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFttYWluUmVzb3VyY2UgX2NvcmVS
ZXNvdXJjZV0sIFdURk1vdmUoY29yZVJlc291cmNlcyksIFdURk1vdmUoY29yZUFyY2hpdmVzKSld
OwogICAgIHJldHVybiBzZWxmOwogfQogCkBAIC0yNzUsOSArMjY2LDEwIEBAIC0gKFdlYlJlc291
cmNlICopbWFpblJlc291cmNlCiAgICAgLy8gQ3VycmVudGx5IGZyb20gV2ViS2l0IEFQSSBwZXJz
cGVjdGl2ZSwgV2ViQXJjaGl2ZXMgYXJlIGVudGlyZWx5IGltbXV0YWJsZSBvbmNlIGNyZWF0ZWQK
ICAgICAvLyBJZiB0aGV5IGV2ZXIgYmVjb21lIG11dGFibGUsIHdlJ2xsIG5lZWQgdG8gcmV0aGlu
ayB0aGlzLiAKICAgICBpZiAoIV9wcml2YXRlLT5jYWNoZWRNYWluUmVzb3VyY2UpIHsKLSAgICAg
ICAgTGVnYWN5V2ViQXJjaGl2ZSogY29yZUFyY2hpdmUgPSBbX3ByaXZhdGUgY29yZUFyY2hpdmVd
OwotICAgICAgICBpZiAoY29yZUFyY2hpdmUpCi0gICAgICAgICAgICBfcHJpdmF0ZS0+Y2FjaGVk
TWFpblJlc291cmNlID0gW1tXZWJSZXNvdXJjZSBhbGxvY10gX2luaXRXaXRoQ29yZVJlc291cmNl
OmNvcmVBcmNoaXZlLT5tYWluUmVzb3VyY2UoKV07CisgICAgICAgIGlmIChhdXRvKiBjb3JlQXJj
aGl2ZSA9IFtfcHJpdmF0ZSBjb3JlQXJjaGl2ZV0pIHsKKyAgICAgICAgICAgIGlmIChhdXRvKiBt
YWluUmVzb3VyY2UgPSBjb3JlQXJjaGl2ZS0+bWFpblJlc291cmNlKCkpCisgICAgICAgICAgICAg
ICAgX3ByaXZhdGUtPmNhY2hlZE1haW5SZXNvdXJjZSA9IFtbV2ViUmVzb3VyY2UgYWxsb2NdIF9p
bml0V2l0aENvcmVSZXNvdXJjZToqbWFpblJlc291cmNlXTsKKyAgICAgICAgfQogICAgIH0KICAg
ICAKICAgICByZXR1cm4gW1tfcHJpdmF0ZS0+Y2FjaGVkTWFpblJlc291cmNlIHJldGFpbl0gYXV0
b3JlbGVhc2VdOwpAQCAtMjk0LDEyICsyODYsMTEgQEAgLSAoTlNBcnJheSAqKXN1YnJlc291cmNl
cwogICAgICAgICBpZiAoIWNvcmVBcmNoaXZlKQogICAgICAgICAgICAgX3ByaXZhdGUtPmNhY2hl
ZFN1YnJlc291cmNlcyA9IFtbTlNBcnJheSBhbGxvY10gaW5pdF07CiAgICAgICAgIGVsc2Ugewot
ICAgICAgICAgICAgY29uc3QgVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+PiYgc3VicmVz
b3VyY2VzKGNvcmVBcmNoaXZlLT5zdWJyZXNvdXJjZXMoKSk7CisgICAgICAgICAgICBhdXRvJiBz
dWJyZXNvdXJjZXMgPSBjb3JlQXJjaGl2ZS0+c3VicmVzb3VyY2VzKCk7CiAgICAgICAgICAgICBO
U011dGFibGVBcnJheSAqbXV0YWJsZUFycmF5ID0gW1tOU011dGFibGVBcnJheSBhbGxvY10gaW5p
dFdpdGhDYXBhY2l0eTpzdWJyZXNvdXJjZXMuc2l6ZSgpXTsKICAgICAgICAgICAgIF9wcml2YXRl
LT5jYWNoZWRTdWJyZXNvdXJjZXMgPSBtdXRhYmxlQXJyYXk7Ci0gICAgICAgICAgICBmb3IgKHVu
c2lnbmVkIGkgPSAwOyBpIDwgc3VicmVzb3VyY2VzLnNpemUoKTsgKytpKSB7Ci0gICAgICAgICAg
ICAgICAgV2ViUmVzb3VyY2UgKnJlc291cmNlID0gW1tXZWJSZXNvdXJjZSBhbGxvY10gX2luaXRX
aXRoQ29yZVJlc291cmNlOnN1YnJlc291cmNlc1tpXS5nZXQoKV07Ci0gICAgICAgICAgICAgICAg
aWYgKHJlc291cmNlKSB7CisgICAgICAgICAgICBmb3IgKGF1dG8mIHN1YnJlc291cmNlIDogc3Vi
cmVzb3VyY2VzKSB7CisgICAgICAgICAgICAgICAgaWYgKFdlYlJlc291cmNlICpyZXNvdXJjZSA9
IFtbV2ViUmVzb3VyY2UgYWxsb2NdIF9pbml0V2l0aENvcmVSZXNvdXJjZTpzdWJyZXNvdXJjZS5n
ZXQoKV0pIHsKICAgICAgICAgICAgICAgICAgICAgW211dGFibGVBcnJheSBhZGRPYmplY3Q6cmVz
b3VyY2VdOwogICAgICAgICAgICAgICAgICAgICBbcmVzb3VyY2UgcmVsZWFzZV07CiAgICAgICAg
ICAgICAgICAgfQpAQCAtMzE4LDE1ICszMDksMTUgQEAgLSAoTlNBcnJheSAqKXN1YmZyYW1lQXJj
aGl2ZXMKICAgICAvLyBDdXJyZW50bHkgZnJvbSBXZWJLaXQgQVBJIHBlcnNwZWN0aXZlLCBXZWJB
cmNoaXZlcyBhcmUgZW50aXJlbHkgaW1tdXRhYmxlIG9uY2UgY3JlYXRlZAogICAgIC8vIElmIHRo
ZXkgZXZlciBiZWNvbWUgbXV0YWJsZSwgd2UnbGwgbmVlZCB0byByZXRoaW5rIHRoaXMuICAKICAg
ICBpZiAoIV9wcml2YXRlLT5jYWNoZWRTdWJmcmFtZUFyY2hpdmVzKSB7Ci0gICAgICAgIExlZ2Fj
eVdlYkFyY2hpdmUqIGNvcmVBcmNoaXZlID0gW19wcml2YXRlIGNvcmVBcmNoaXZlXTsKKyAgICAg
ICAgYXV0byogY29yZUFyY2hpdmUgPSBbX3ByaXZhdGUgY29yZUFyY2hpdmVdOwogICAgICAgICBp
ZiAoIWNvcmVBcmNoaXZlKQogICAgICAgICAgICAgX3ByaXZhdGUtPmNhY2hlZFN1YmZyYW1lQXJj
aGl2ZXMgPSBbW05TQXJyYXkgYWxsb2NdIGluaXRdOwogICAgICAgICBlbHNlIHsKLSAgICAgICAg
ICAgIGNvbnN0IFZlY3RvcjxSZWZQdHI8QXJjaGl2ZT4+JiBzdWJmcmFtZUFyY2hpdmVzKGNvcmVB
cmNoaXZlLT5zdWJmcmFtZUFyY2hpdmVzKCkpOwotICAgICAgICAgICAgTlNNdXRhYmxlQXJyYXkg
Km11dGFibGVBcnJheSA9IFtbTlNNdXRhYmxlQXJyYXkgYWxsb2NdIGluaXRXaXRoQ2FwYWNpdHk6
c3ViZnJhbWVBcmNoaXZlcy5zaXplKCldOworICAgICAgICAgICAgYXV0byYgc3ViZnJhbWVBcmNo
aXZlcyA9IGNvcmVBcmNoaXZlLT5zdWJmcmFtZUFyY2hpdmVzKCk7CisgICAgICAgICAgICBhdXRv
IG11dGFibGVBcnJheSA9IFtbTlNNdXRhYmxlQXJyYXkgYWxsb2NdIGluaXRXaXRoQ2FwYWNpdHk6
c3ViZnJhbWVBcmNoaXZlcy5zaXplKCldOwogICAgICAgICAgICAgX3ByaXZhdGUtPmNhY2hlZFN1
YmZyYW1lQXJjaGl2ZXMgPSBtdXRhYmxlQXJyYXk7CiAgICAgICAgICAgICBmb3IgKHVuc2lnbmVk
IGkgPSAwOyBpIDwgc3ViZnJhbWVBcmNoaXZlcy5zaXplKCk7ICsraSkgewotICAgICAgICAgICAg
ICAgIFdlYkFyY2hpdmUgKmFyY2hpdmUgPSBbW1dlYkFyY2hpdmUgYWxsb2NdIF9pbml0V2l0aENv
cmVMZWdhY3lXZWJBcmNoaXZlOihMZWdhY3lXZWJBcmNoaXZlICopc3ViZnJhbWVBcmNoaXZlc1tp
XS5nZXQoKV07CisgICAgICAgICAgICAgICAgV2ViQXJjaGl2ZSAqYXJjaGl2ZSA9IFtbV2ViQXJj
aGl2ZSBhbGxvY10gX2luaXRXaXRoQ29yZUxlZ2FjeVdlYkFyY2hpdmU6KExlZ2FjeVdlYkFyY2hp
dmUgKilzdWJmcmFtZUFyY2hpdmVzW2ldLnB0cigpXTsKICAgICAgICAgICAgICAgICBbbXV0YWJs
ZUFycmF5IGFkZE9iamVjdDphcmNoaXZlXTsKICAgICAgICAgICAgICAgICBbYXJjaGl2ZSByZWxl
YXNlXTsKICAgICAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZp
ZXcvV2ViRGF0YVNvdXJjZS5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViRGF0YVNv
dXJjZS5tbQppbmRleCA2MDY0NzIyYTU2MzYxNDg1ODQyY2Y1N2ZkOTMwZjc1NTg4ZDZlOGY2Li4x
OGNmOWY3ZGI0YzYzODc4NDcxNzA4OTI4YmFiODk1OGE0NzkyNzAxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkRhdGFTb3VyY2UubW0KKysrIGIvU291cmNlL1dlYktp
dC9tYWMvV2ViVmlldy9XZWJEYXRhU291cmNlLm1tCkBAIC0xNjYsMjUgKzE2NiwyMiBAQCAtIChO
U0Vycm9yICopX21haW5Eb2N1bWVudEVycm9yCiAKIC0gKHZvaWQpX2FkZFN1YmZyYW1lQXJjaGl2
ZXM6KE5TQXJyYXkgKilzdWJmcmFtZUFyY2hpdmVzCiB7Ci0gICAgLy8gRklYTUU6IFRoaXMgU1BJ
IGlzIHBvb3IsIHBvb3IgZGVzaWduLiAgQ2FuIHdlIGNvbWUgdXAgd2l0aCBhbm90aGVyIHNvbHV0
aW9uIGZvciB0aG9zZSB3aG8gbmVlZCBpdD8KLSAgICBOU0VudW1lcmF0b3IgKmVudW1lcmF0b3Ig
PSBbc3ViZnJhbWVBcmNoaXZlcyBvYmplY3RFbnVtZXJhdG9yXTsKLSAgICBXZWJBcmNoaXZlICph
cmNoaXZlOwotICAgIHdoaWxlICgoYXJjaGl2ZSA9IFtlbnVtZXJhdG9yIG5leHRPYmplY3RdKSAh
PSBuaWwpCi0gICAgICAgIHRvUHJpdmF0ZShfcHJpdmF0ZSktPmxvYWRlci0+YWRkQWxsQXJjaGl2
ZVJlc291cmNlcyhbYXJjaGl2ZSBfY29yZUxlZ2FjeVdlYkFyY2hpdmVdKTsKKyAgICAvLyBGSVhN
RTogVGhpcyBTUEkgaXMgcG9vciwgcG9vciBkZXNpZ24uIENhbiB3ZSBjb21lIHVwIHdpdGggYW5v
dGhlciBzb2x1dGlvbiBmb3IgdGhvc2Ugd2hvIG5lZWQgaXQ/CisgICAgZm9yIChXZWJBcmNoaXZl
ICphcmNoaXZlIGluIHN1YmZyYW1lQXJjaGl2ZXMpCisgICAgICAgIHRvUHJpdmF0ZShfcHJpdmF0
ZSktPmxvYWRlci0+YWRkQWxsQXJjaGl2ZVJlc291cmNlcygqW2FyY2hpdmUgX2NvcmVMZWdhY3lX
ZWJBcmNoaXZlXSk7CiB9CiAKICNpZiAhUExBVEZPUk0oSU9TKQorCiAtIChOU0ZpbGVXcmFwcGVy
ICopX2ZpbGVXcmFwcGVyRm9yVVJMOihOU1VSTCAqKVVSTAogewogICAgIGlmIChbVVJMIGlzRmls
ZVVSTF0pCiAgICAgICAgIHJldHVybiBbW1tOU0ZpbGVXcmFwcGVyIGFsbG9jXSBpbml0V2l0aFVS
TDpbVVJMIFVSTEJ5UmVzb2x2aW5nU3ltbGlua3NJblBhdGhdIG9wdGlvbnM6MCBlcnJvcjpudWxs
cHRyXSBhdXRvcmVsZWFzZV07CiAKLSAgICBXZWJSZXNvdXJjZSAqcmVzb3VyY2UgPSBbc2VsZiBz
dWJyZXNvdXJjZUZvclVSTDpVUkxdOwotICAgIGlmIChyZXNvdXJjZSkKKyAgICBpZiAoYXV0byBy
ZXNvdXJjZSA9IFtzZWxmIHN1YnJlc291cmNlRm9yVVJMOlVSTF0pCiAgICAgICAgIHJldHVybiBb
cmVzb3VyY2UgX2ZpbGVXcmFwcGVyUmVwcmVzZW50YXRpb25dOwotICAgIAotICAgIE5TQ2FjaGVk
VVJMUmVzcG9uc2UgKmNhY2hlZFJlc3BvbnNlID0gW1tzZWxmIF93ZWJWaWV3XSBfY2FjaGVkUmVz
cG9uc2VGb3JVUkw6VVJMXTsKLSAgICBpZiAoY2FjaGVkUmVzcG9uc2UpIHsKKworICAgIGlmIChh
dXRvIGNhY2hlZFJlc3BvbnNlID0gW1tzZWxmIF93ZWJWaWV3XSBfY2FjaGVkUmVzcG9uc2VGb3JV
Ukw6VVJMXSkgewogICAgICAgICBOU0ZpbGVXcmFwcGVyICp3cmFwcGVyID0gW1tbTlNGaWxlV3Jh
cHBlciBhbGxvY10gaW5pdFJlZ3VsYXJGaWxlV2l0aENvbnRlbnRzOltjYWNoZWRSZXNwb25zZSBk
YXRhXV0gYXV0b3JlbGVhc2VdOwogICAgICAgICBbd3JhcHBlciBzZXRQcmVmZXJyZWRGaWxlbmFt
ZTpbW2NhY2hlZFJlc3BvbnNlIHJlc3BvbnNlXSBzdWdnZXN0ZWRGaWxlbmFtZV1dOwogICAgICAg
ICByZXR1cm4gd3JhcHBlcjsKQEAgLTE5Miw2ICsxODksNyBAQCAtIChOU0ZpbGVXcmFwcGVyICop
X2ZpbGVXcmFwcGVyRm9yVVJMOihOU1VSTCAqKVVSTAogICAgIAogICAgIHJldHVybiBuaWw7CiB9
CisKICNlbmRpZgogCiAtIChOU1N0cmluZyAqKV9yZXNwb25zZU1JTUVUeXBlCkBAIC0zMDUsOSAr
MzAzLDEwIEBAIC0gKERPTURvY3VtZW50RnJhZ21lbnQgKilfZG9jdW1lbnRGcmFnbWVudFdpdGhB
cmNoaXZlOihXZWJBcmNoaXZlICopYXJjaGl2ZQogICAgICAgICBOU1N0cmluZyAqTUlNRVR5cGUg
PSBbbWFpblJlc291cmNlIE1JTUVUeXBlXTsKICAgICAgICAgaWYgKFtXZWJWaWV3IGNhblNob3dN
SU1FVHlwZUFzSFRNTDpNSU1FVHlwZV0pIHsKICAgICAgICAgICAgIE5TU3RyaW5nICptYXJrdXBT
dHJpbmcgPSBbW05TU3RyaW5nIGFsbG9jXSBpbml0V2l0aERhdGE6W21haW5SZXNvdXJjZSBkYXRh
XSBlbmNvZGluZzpOU1VURjhTdHJpbmdFbmNvZGluZ107CisKICAgICAgICAgICAgIC8vIEZJWE1F
OiBzZWVtcyBwb29yIGZvcm0gdG8gZG8gdGhpcyBhcyBhIHNpZGUgZWZmZWN0IG9mIGdldHRpbmcg
YSBkb2N1bWVudCBmcmFnbWVudAogICAgICAgICAgICAgaWYgKHRvUHJpdmF0ZShfcHJpdmF0ZSkt
PmxvYWRlcikKLSAgICAgICAgICAgICAgICB0b1ByaXZhdGUoX3ByaXZhdGUpLT5sb2FkZXItPmFk
ZEFsbEFyY2hpdmVSZXNvdXJjZXMoW2FyY2hpdmUgX2NvcmVMZWdhY3lXZWJBcmNoaXZlXSk7Cisg
ICAgICAgICAgICAgICAgdG9Qcml2YXRlKF9wcml2YXRlKS0+bG9hZGVyLT5hZGRBbGxBcmNoaXZl
UmVzb3VyY2VzKCpbYXJjaGl2ZSBfY29yZUxlZ2FjeVdlYkFyY2hpdmVdKTsKIAogICAgICAgICAg
ICAgRE9NRG9jdW1lbnRGcmFnbWVudCAqZnJhZ21lbnQgPSBbW3NlbGYgd2ViRnJhbWVdIF9kb2N1
bWVudEZyYWdtZW50V2l0aE1hcmt1cFN0cmluZzptYXJrdXBTdHJpbmcgYmFzZVVSTFN0cmluZzpb
W21haW5SZXNvdXJjZSBVUkxdIF93ZWJfb3JpZ2luYWxEYXRhQXNTdHJpbmddXTsKICAgICAgICAg
ICAgIFttYXJrdXBTdHJpbmcgcmVsZWFzZV07CkBAIC0zMjQsNyArMzIzLDcgQEAgLSAoRE9NRG9j
dW1lbnRGcmFnbWVudCAqKV9kb2N1bWVudEZyYWdtZW50V2l0aEltYWdlUmVzb3VyY2U6KFdlYlJl
c291cmNlICopcmVzb3UKIHsKICAgICBET01FbGVtZW50ICppbWFnZUVsZW1lbnQgPSBbc2VsZiBf
aW1hZ2VFbGVtZW50V2l0aEltYWdlUmVzb3VyY2U6cmVzb3VyY2VdOwogICAgIGlmICghaW1hZ2VF
bGVtZW50KQotICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgcmV0dXJuIG5pbDsKICAgICBET01E
b2N1bWVudEZyYWdtZW50ICpmcmFnbWVudCA9IFtbW3NlbGYgd2ViRnJhbWVdIERPTURvY3VtZW50
XSBjcmVhdGVEb2N1bWVudEZyYWdtZW50XTsKICAgICBbZnJhZ21lbnQgYXBwZW5kQ2hpbGQ6aW1h
Z2VFbGVtZW50XTsKICAgICByZXR1cm4gZnJhZ21lbnQ7CkBAIC01MTksMzIgKzUxOCwzMSBAQCAt
IChXZWJBcmNoaXZlICopd2ViQXJjaGl2ZQogLSAoV2ViUmVzb3VyY2UgKiltYWluUmVzb3VyY2UK
IHsKICAgICBhdXRvIGNvcmVSZXNvdXJjZSA9IHRvUHJpdmF0ZShfcHJpdmF0ZSktPmxvYWRlci0+
bWFpblJlc291cmNlKCk7Ci0gICAgcmV0dXJuIFtbW1dlYlJlc291cmNlIGFsbG9jXSBfaW5pdFdp
dGhDb3JlUmVzb3VyY2U6V1RGTW92ZShjb3JlUmVzb3VyY2UpXSBhdXRvcmVsZWFzZV07CisgICAg
aWYgKCFjb3JlUmVzb3VyY2UpCisgICAgICAgIHJldHVybiBuaWw7CisgICAgcmV0dXJuIFtbW1dl
YlJlc291cmNlIGFsbG9jXSBfaW5pdFdpdGhDb3JlUmVzb3VyY2U6Y29yZVJlc291cmNlLnJlbGVh
c2VOb25OdWxsKCldIGF1dG9yZWxlYXNlXTsKIH0KIAogLSAoTlNBcnJheSAqKXN1YnJlc291cmNl
cwogewogICAgIGF1dG8gY29yZVN1YnJlc291cmNlcyA9IHRvUHJpdmF0ZShfcHJpdmF0ZSktPmxv
YWRlci0+c3VicmVzb3VyY2VzKCk7Ci0KICAgICBhdXRvIHN1YnJlc291cmNlcyA9IGFkb3B0TlMo
W1tOU011dGFibGVBcnJheSBhbGxvY10gaW5pdFdpdGhDYXBhY2l0eTpjb3JlU3VicmVzb3VyY2Vz
LnNpemUoKV0pOwotICAgIGZvciAoY29uc3QgYXV0byYgY29yZVN1YnJlc291cmNlIDogY29yZVN1
YnJlc291cmNlcykgewotICAgICAgICBpZiAoYXV0byByZXNvdXJjZSA9IGFkb3B0TlMoW1tXZWJS
ZXNvdXJjZSBhbGxvY10gX2luaXRXaXRoQ29yZVJlc291cmNlOmNvcmVTdWJyZXNvdXJjZV0pKQor
ICAgIGZvciAoYXV0byYgY29yZVN1YnJlc291cmNlIDogY29yZVN1YnJlc291cmNlcykgeworICAg
ICAgICBpZiAoYXV0byByZXNvdXJjZSA9IGFkb3B0TlMoW1tXZWJSZXNvdXJjZSBhbGxvY10gX2lu
aXRXaXRoQ29yZVJlc291cmNlOmNvcmVTdWJyZXNvdXJjZS5jb3B5UmVmKCldKSkKICAgICAgICAg
ICAgIFtzdWJyZXNvdXJjZXMgYWRkT2JqZWN0OnJlc291cmNlLmdldCgpXTsKICAgICB9Ci0KICAg
ICByZXR1cm4gc3VicmVzb3VyY2VzLmF1dG9yZWxlYXNlKCk7CiB9CiAKIC0gKFdlYlJlc291cmNl
ICopc3VicmVzb3VyY2VGb3JVUkw6KE5TVVJMICopVVJMCiB7Ci0gICAgUmVmUHRyPEFyY2hpdmVS
ZXNvdXJjZT4gc3VicmVzb3VyY2UgPSB0b1ByaXZhdGUoX3ByaXZhdGUpLT5sb2FkZXItPnN1YnJl
c291cmNlKFVSTCk7Ci0gICAgCi0gICAgcmV0dXJuIHN1YnJlc291cmNlID8gW1tbV2ViUmVzb3Vy
Y2UgYWxsb2NdIF9pbml0V2l0aENvcmVSZXNvdXJjZTpzdWJyZXNvdXJjZS5nZXQoKV0gYXV0b3Jl
bGVhc2VdIDogbmlsOworICAgIGF1dG8gc3VicmVzb3VyY2UgPSB0b1ByaXZhdGUoX3ByaXZhdGUp
LT5sb2FkZXItPnN1YnJlc291cmNlKFVSTCk7CisgICAgcmV0dXJuIHN1YnJlc291cmNlID8gW1tb
V2ViUmVzb3VyY2UgYWxsb2NdIF9pbml0V2l0aENvcmVSZXNvdXJjZTpzdWJyZXNvdXJjZS5yZWxl
YXNlTm9uTnVsbCgpXSBhdXRvcmVsZWFzZV0gOiBuaWw7CiB9CiAKIC0gKHZvaWQpYWRkU3VicmVz
b3VyY2U6KFdlYlJlc291cmNlICopc3VicmVzb3VyY2UKIHsgICAgCi0gICAgdG9Qcml2YXRlKF9w
cml2YXRlKS0+bG9hZGVyLT5hZGRBcmNoaXZlUmVzb3VyY2UoKltzdWJyZXNvdXJjZSBfY29yZVJl
c291cmNlXSk7CisgICAgdG9Qcml2YXRlKF9wcml2YXRlKS0+bG9hZGVyLT5hZGRBcmNoaXZlUmVz
b3VyY2UoW3N1YnJlc291cmNlIF9jb3JlUmVzb3VyY2VdKTsKIH0KIAogQGVuZApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJSZXNvdXJjZS5tbSBiL1NvdXJjZS9XZWJL
aXQvbWFjL1dlYlZpZXcvV2ViUmVzb3VyY2UubW0KaW5kZXggZTVkOGZkNGFmYmQ0ZDJmYWM5Y2Qz
OTIxOTE2YTQ5YjhmMTczNWVmNi4uYjNiYjc1YmE5ZDE4ZGM2OTA4YWJlZTljMmRjYjA2NjViMTE0
YWZiMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJSZXNvdXJjZS5t
bQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlJlc291cmNlLm1tCkBAIC0xLDUg
KzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNSwgMjAwNiwgMjAwNywgMjAwOCBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDUtMjAxNyBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKQEAgLTU3LDkgKzU3LDkgQEAgc3RhdGljIE5TU3RyaW5nICogY29uc3QgV2ViUmVzb3Vy
Y2VSZXNwb25zZUtleSA9ICAgICAgICAgIEAiV2ViUmVzb3VyY2VSZXNwb25zZSIKIAogQGludGVy
ZmFjZSBXZWJSZXNvdXJjZVByaXZhdGUgOiBOU09iamVjdCB7CiBAcHVibGljCi0gICAgQXJjaGl2
ZVJlc291cmNlKiBjb3JlUmVzb3VyY2U7CisgICAgUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gY29y
ZVJlc291cmNlOwogfQotLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoQ29yZVJlc291cmNlOihQYXNz
UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4pY29yZVJlc291cmNlOworLSAoaW5zdGFuY2V0eXBlKWlu
aXRXaXRoQ29yZVJlc291cmNlOihSZWY8QXJjaGl2ZVJlc291cmNlPiYmKWNvcmVSZXNvdXJjZTsK
IEBlbmQKIAogQGltcGxlbWVudGF0aW9uIFdlYlJlc291cmNlUHJpdmF0ZQpAQCAtNzgsMTMgKzc4
LDEyIEBAIC0gKGluc3RhbmNldHlwZSlpbml0CiAgICAgcmV0dXJuIFtzdXBlciBpbml0XTsKIH0K
IAotLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoQ29yZVJlc291cmNlOihQYXNzUmVmUHRyPEFyY2hp
dmVSZXNvdXJjZT4pcGFzc2VkUmVzb3VyY2UKKy0gKGluc3RhbmNldHlwZSlpbml0V2l0aENvcmVS
ZXNvdXJjZTooUmVmPEFyY2hpdmVSZXNvdXJjZT4mJilwYXNzZWRSZXNvdXJjZQogewogICAgIHNl
bGYgPSBbc3VwZXIgaW5pdF07CiAgICAgaWYgKCFzZWxmKQogICAgICAgICByZXR1cm4gbmlsOwot
ICAgIC8vIEFjcXVpcmUgdGhlIFBhc3NSZWZQdHI8PidzIHJlZiBhcyBvdXIgb3duIG1hbnVhbCBy
ZWYKLSAgICBjb3JlUmVzb3VyY2UgPSBwYXNzZWRSZXNvdXJjZS5sZWFrUmVmKCk7CisgICAgY29y
ZVJlc291cmNlID0gV1RGTW92ZShwYXNzZWRSZXNvdXJjZSk7CiAgICAgcmV0dXJuIHNlbGY7CiB9
CiAKQEAgLTkyLDkgKzkxLDYgQEAgLSAodm9pZClkZWFsbG9jCiB7CiAgICAgaWYgKFdlYkNvcmVP
YmpDU2NoZWR1bGVEZWFsbG9jYXRlT25NYWluVGhyZWFkKFtXZWJSZXNvdXJjZVByaXZhdGUgY2xh
c3NdLCBzZWxmKSkKICAgICAgICAgcmV0dXJuOwotCi0gICAgaWYgKGNvcmVSZXNvdXJjZSkKLSAg
ICAgICAgY29yZVJlc291cmNlLT5kZXJlZigpOwogICAgIFtzdXBlciBkZWFsbG9jXTsKIH0KIApA
QCAtMTUzLDE0ICsxNDksMTkgQEAgLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoQ29kZXI6KE5TQ29k
ZXIgKilkZWNvZGVyCiAgICAgICAgIHJldHVybiBuaWw7CiAgICAgfQogCi0gICAgX3ByaXZhdGUg
PSBbW1dlYlJlc291cmNlUHJpdmF0ZSBhbGxvY10gaW5pdFdpdGhDb3JlUmVzb3VyY2U6QXJjaGl2
ZVJlc291cmNlOjpjcmVhdGUoU2hhcmVkQnVmZmVyOjp3cmFwTlNEYXRhKGRhdGEpLCB1cmwsIG1p
bWVUeXBlLCB0ZXh0RW5jb2RpbmcsIGZyYW1lTmFtZSwgcmVzcG9uc2UpXTsKKyAgICBhdXRvIGNv
cmVSZXNvdXJjZSA9IEFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKFNoYXJlZEJ1ZmZlcjo6d3JhcE5T
RGF0YShkYXRhKSwgdXJsLCBtaW1lVHlwZSwgdGV4dEVuY29kaW5nLCBmcmFtZU5hbWUsIHJlc3Bv
bnNlKTsKKyAgICBpZiAoIWNvcmVSZXNvdXJjZSkgeworICAgICAgICBbc2VsZiByZWxlYXNlXTsK
KyAgICAgICAgcmV0dXJuIG5pbDsKKyAgICB9CiAKKyAgICBfcHJpdmF0ZSA9IFtbV2ViUmVzb3Vy
Y2VQcml2YXRlIGFsbG9jXSBpbml0V2l0aENvcmVSZXNvdXJjZTpjb3JlUmVzb3VyY2UucmVsZWFz
ZU5vbk51bGwoKV07CiAgICAgcmV0dXJuIHNlbGY7CiB9CiAKIC0gKHZvaWQpZW5jb2RlV2l0aENv
ZGVyOihOU0NvZGVyICopZW5jb2RlcgogewotICAgIEFyY2hpdmVSZXNvdXJjZSAqcmVzb3VyY2Ug
PSBfcHJpdmF0ZS0+Y29yZVJlc291cmNlOworICAgIGF1dG8qIHJlc291cmNlID0gX3ByaXZhdGUt
PmNvcmVSZXNvdXJjZS5nZXQoKTsKICAgICAKICAgICBOU0RhdGEgKmRhdGEgPSBuaWw7CiAgICAg
TlNVUkwgKnVybCA9IG5pbDsKQEAgLTIwOSw4ICsyMTAsNyBAQCAtIChOU1VSTCAqKVVSTAogCiAg
ICAgaWYgKCFfcHJpdmF0ZS0+Y29yZVJlc291cmNlKQogICAgICAgICByZXR1cm4gbmlsOwotICAg
IE5TVVJMICp1cmwgPSBfcHJpdmF0ZS0+Y29yZVJlc291cmNlLT51cmwoKTsKLSAgICByZXR1cm4g
dXJsOworICAgIHJldHVybiBfcHJpdmF0ZS0+Y29yZVJlc291cmNlLT51cmwoKTsKIH0KIAogLSAo
TlNTdHJpbmcgKilNSU1FVHlwZQpAQCAtMjUyLDIyICsyNTIsMTkgQEAgQGVuZAogCiBAaW1wbGVt
ZW50YXRpb24gV2ViUmVzb3VyY2UgKFdlYlJlc291cmNlSW50ZXJuYWwpCiAKLS0gKGlkKV9pbml0
V2l0aENvcmVSZXNvdXJjZTooUGFzc1JlZlB0cjxBcmNoaXZlUmVzb3VyY2U+KWNvcmVSZXNvdXJj
ZQorLSAoaWQpX2luaXRXaXRoQ29yZVJlc291cmNlOihSZWY8QXJjaGl2ZVJlc291cmNlPiYmKWNv
cmVSZXNvdXJjZQogewogICAgIHNlbGYgPSBbc3VwZXIgaW5pdF07CiAgICAgaWYgKCFzZWxmKQog
ICAgICAgICByZXR1cm4gbmlsOwotICAgICAgICAgICAgCi0gICAgQVNTRVJUKGNvcmVSZXNvdXJj
ZSk7Ci0gICAgCi0gICAgX3ByaXZhdGUgPSBbW1dlYlJlc291cmNlUHJpdmF0ZSBhbGxvY10gaW5p
dFdpdGhDb3JlUmVzb3VyY2U6Y29yZVJlc291cmNlXTsKLSAgICAgICAgICAgIAorCisgICAgX3By
aXZhdGUgPSBbW1dlYlJlc291cmNlUHJpdmF0ZSBhbGxvY10gaW5pdFdpdGhDb3JlUmVzb3VyY2U6
V1RGTW92ZShjb3JlUmVzb3VyY2UpXTsKICAgICByZXR1cm4gc2VsZjsKIH0KIAotLSAoV2ViQ29y
ZTo6QXJjaGl2ZVJlc291cmNlICopX2NvcmVSZXNvdXJjZQorLSAoV2ViQ29yZTo6QXJjaGl2ZVJl
c291cmNlJilfY29yZVJlc291cmNlCiB7Ci0gICAgcmV0dXJuIF9wcml2YXRlLT5jb3JlUmVzb3Vy
Y2U7CisgICAgcmV0dXJuICpfcHJpdmF0ZS0+Y29yZVJlc291cmNlOwogfQogCiBAZW5kCkBAIC0z
MDQsOCArMzAxLDEzIEBAIC0gKGlkKV9pbml0V2l0aERhdGE6KE5TRGF0YSAqKWRhdGEKICAgICAg
ICAgcmV0dXJuIG5pbDsKICAgICB9CiAKLSAgICBfcHJpdmF0ZSA9IFtbV2ViUmVzb3VyY2VQcml2
YXRlIGFsbG9jXSBpbml0V2l0aENvcmVSZXNvdXJjZTpBcmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShT
aGFyZWRCdWZmZXI6OndyYXBOU0RhdGEoY29weURhdGEgPyBbW2RhdGEgY29weV0gYXV0b3JlbGVh
c2VdIDogZGF0YSksIFVSTCwgTUlNRVR5cGUsIHRleHRFbmNvZGluZ05hbWUsIGZyYW1lTmFtZSwg
cmVzcG9uc2UpXTsKKyAgICBhdXRvIGNvcmVSZXNvdXJjZSA9IEFyY2hpdmVSZXNvdXJjZTo6Y3Jl
YXRlKFNoYXJlZEJ1ZmZlcjo6d3JhcE5TRGF0YShjb3B5RGF0YSA/IFtbZGF0YSBjb3B5XSBhdXRv
cmVsZWFzZV0gOiBkYXRhKSwgVVJMLCBNSU1FVHlwZSwgdGV4dEVuY29kaW5nTmFtZSwgZnJhbWVO
YW1lLCByZXNwb25zZSk7CisgICAgaWYgKCFjb3JlUmVzb3VyY2UpIHsKKyAgICAgICAgW3NlbGYg
cmVsZWFzZV07CisgICAgICAgIHJldHVybiBuaWw7CisgICAgfQogCisgICAgX3ByaXZhdGUgPSBb
W1dlYlJlc291cmNlUHJpdmF0ZSBhbGxvY10gaW5pdFdpdGhDb3JlUmVzb3VyY2U6Y29yZVJlc291
cmNlLnJlbGVhc2VOb25OdWxsKCldOwogICAgIHJldHVybiBzZWxmOwogfQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlJlc291cmNlSW50ZXJuYWwuaCBiL1NvdXJj
ZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUmVzb3VyY2VJbnRlcm5hbC5oCmluZGV4IDJmNDY5MTJl
OGJlOGQzYjM5MmNmNTczOTJmMDc5ZGFiOWQ4MDllMjUuLjgwYzk3NmViNmIzNjU0ZmMxYzY4OGMy
YTk2YjgzYmRiN2FmNzcyNTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcv
V2ViUmVzb3VyY2VJbnRlcm5hbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2Vi
UmVzb3VyY2VJbnRlcm5hbC5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykg
MjAwOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIw
MDgtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKQEAgLTI3LDEzICsyNywxMyBAQAogICovCiAKICNpbXBvcnQgIldlYlJl
c291cmNlUHJpdmF0ZS5oIgotI2ltcG9ydCA8d3RmL1Bhc3NSZWZQdHIuaD4KKyNpbXBvcnQgPHd0
Zi9SZWYuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIGNsYXNzIEFyY2hpdmVSZXNvdXJj
ZTsKIH0KIAogQGludGVyZmFjZSBXZWJSZXNvdXJjZSAoV2ViUmVzb3VyY2VJbnRlcm5hbCkKLS0g
KGlkKV9pbml0V2l0aENvcmVSZXNvdXJjZTooUGFzc1JlZlB0cjxXZWJDb3JlOjpBcmNoaXZlUmVz
b3VyY2U+KWNvcmVSZXNvdXJjZTsKLS0gKFdlYkNvcmU6OkFyY2hpdmVSZXNvdXJjZSopX2NvcmVS
ZXNvdXJjZTsKKy0gKGlkKV9pbml0V2l0aENvcmVSZXNvdXJjZTooUmVmPFdlYkNvcmU6OkFyY2hp
dmVSZXNvdXJjZT4mJiljb3JlUmVzb3VyY2U7CistIChXZWJDb3JlOjpBcmNoaXZlUmVzb3VyY2Um
KV9jb3JlUmVzb3VyY2U7CiBAZW5kCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9QbHVn
aW5zL1BsdWdpblZpZXcuY3BwIGIvU291cmNlL1dlYktpdC93aW4vUGx1Z2lucy9QbHVnaW5WaWV3
LmNwcAppbmRleCA1ODNkMTkxNDM2NmJkNzQ3NmY4ZTI5N2Q1MDYzMTY4NzRhYWE4MzI2Li42NWEx
Y2E0N2FkZTRhOTU5MjYxYzQ1NGFhNzcxYzY1MDM0YjE1NmFjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L3dpbi9QbHVnaW5zL1BsdWdpblZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvd2lu
L1BsdWdpbnMvUGx1Z2luVmlldy5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0
IChDKSAyMDA2LCAyMDA3LCAyMDA4LCAyMDA5LCAyMDEwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNi0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KICAqIENvcHlyaWdodCAoQykgMjAwOCBDb2xsYWJvcmEgTHRkLiBBbGwgcmln
aHRzIHJlc2VydmVkLgogICogQ29weXJpZ2h0IChDKSAyMDEwIEdpcmlzaCBSYW1ha3Jpc2huYW4g
PGdpcmlzaEBmb3J3YXJkYmlhcy5pbj4KICAqCkBAIC0zMSw2ICszMSw3IEBACiAjaW5jbHVkZSAi
UGx1Z2luRGF0YWJhc2UuaCIKICNpbmNsdWRlICJQbHVnaW5EZWJ1Zy5oIgogI2luY2x1ZGUgIlBs
dWdpblBhY2thZ2UuaCIKKyNpbmNsdWRlICJXZWJGcmFtZUxvYWRlckNsaWVudC5oIgogI2luY2x1
ZGUgPFdlYkNvcmUvQnJpZGdlSlNDLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9DaHJvbWUuaD4KICNp
bmNsdWRlIDxXZWJDb3JlL0NvbW1vblZNLmg+CkBAIC0yNzUsNyArMjc2LDcgQEAgdm9pZCBQbHVn
aW5WaWV3OjptZWRpYUNhblN0YXJ0KERvY3VtZW50JikKIHsKICAgICBBU1NFUlQoIW1faXNTdGFy
dGVkKTsKICAgICBpZiAoIXN0YXJ0KCkpCi0gICAgICAgIHBhcmVudEZyYW1lKCktPmxvYWRlcigp
LmNsaWVudCgpLmRpc3BhdGNoRGlkRmFpbFRvU3RhcnRQbHVnaW4odGhpcyk7CisgICAgICAgIHN0
YXRpY19jYXN0PFdlYkZyYW1lTG9hZGVyQ2xpZW50Jj4ocGFyZW50RnJhbWUoKS0+bG9hZGVyKCku
Y2xpZW50KCkpLmRpc3BhdGNoRGlkRmFpbFRvU3RhcnRQbHVnaW4odGhpcyk7CiB9CiAKIFBsdWdp
blZpZXc6On5QbHVnaW5WaWV3KCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNv
cmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3Jl
U3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwCmluZGV4IGYyNGU2MzM0NDVlNDM1NWIzYjQyOGY5
OTg3ZGM0MmY4MTJjMWJmZmMuLmEzOWQ1ODc1MWI2ZTRiZTgyOGY1ZGQ1MmVmOGQ3YjAyNjUzN2My
ZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9t
ZUNsaWVudC5jcHAKKysrIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViQ2hy
b21lQ2xpZW50LmNwcApAQCAtNjE4LDE1ICs2MTgsMTMgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6
OnJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoU2VjdXJpdHlPcmlnaW4qLCBpbnQ2
NF8KICAgICBub3RJbXBsZW1lbnRlZCgpOwogfQogCi12b2lkIFdlYkNocm9tZUNsaWVudDo6cnVu
T3BlblBhbmVsKEZyYW1lKiwgUGFzc1JlZlB0cjxGaWxlQ2hvb3Nlcj4gcHJwRmlsZUNob29zZXIp
Cit2b2lkIFdlYkNocm9tZUNsaWVudDo6cnVuT3BlblBhbmVsKEZyYW1lJiwgRmlsZUNob29zZXIm
IGZpbGVDaG9vc2VyKQogewotICAgIFJlZlB0cjxGaWxlQ2hvb3Nlcj4gZmlsZUNob29zZXIgPSBw
cnBGaWxlQ2hvb3NlcjsKLQogICAgIEhXTkQgdmlld1dpbmRvdzsKICAgICBpZiAoRkFJTEVEKG1f
d2ViVmlldy0+dmlld1dpbmRvdygmdmlld1dpbmRvdykpKQogICAgICAgICByZXR1cm47CiAKLSAg
ICBib29sIG11bHRpRmlsZSA9IGZpbGVDaG9vc2VyLT5zZXR0aW5ncygpLmFsbG93c011bHRpcGxl
RmlsZXM7CisgICAgYm9vbCBtdWx0aUZpbGUgPSBmaWxlQ2hvb3Nlci5zZXR0aW5ncygpLmFsbG93
c011bHRpcGxlRmlsZXM7CiAgICAgVmVjdG9yPFdDSEFSPiBmaWxlQnVmKG11bHRpRmlsZSA/IG1h
eEZpbGVQYXRoc0xpc3RTaXplIDogTUFYX1BBVEgpOwogCiAgICAgT1BFTkZJTEVOQU1FIG9mbjsK
QEAgLTY3NSw3ICs2NzMsNyBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6cnVuT3BlblBhbmVsKEZy
YW1lKiwgUGFzc1JlZlB0cjxGaWxlQ2hvb3Nlcj4gcHJwRmlsZUNob29zZQogICAgICAgICB9IGVs
c2UKICAgICAgICAgICAgIGZpbGVMaXN0LmFwcGVuZChmaWxlKTsKICAgICAgICAgQVNTRVJUKGZp
bGVMaXN0LnNpemUoKSk7Ci0gICAgICAgIGZpbGVDaG9vc2VyLT5jaG9vc2VGaWxlcyhmaWxlTGlz
dCk7CisgICAgICAgIGZpbGVDaG9vc2VyLmNob29zZUZpbGVzKGZpbGVMaXN0KTsKICAgICB9CiAg
ICAgLy8gRklYTUU6IFNob3cgc29tZSBzb3J0IG9mIGVycm9yIGlmIHRvbyBtYW55IGZpbGVzIGFy
ZSBzZWxlY3RlZCBhbmQgdGhlIGJ1ZmZlciBpcyB0b28gc21hbGwuICBGb3Igbm93LCB0aGlzIHdp
bGwgZmFpbCBzaWxlbnRseS4KIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNv
cmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1
cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmgKaW5kZXggNDkzZGUxNjIzMmNjZGI2MWQ5YWQ4OTMzOGJh
OTdjYTYyZTBiMjYyMi4uOTI4NzJiNDFjMTJmYjMxNWU1NDFlY2JkYjk1ZGJjYjE1NjYyNzJkYyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xp
ZW50LmgKKysrIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xp
ZW50LmgKQEAgLTExNSw3ICsxMTUsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHJlYWNo
ZWRNYXhBcHBDYWNoZVNpemUoaW50NjRfdCBzcGFjZU5lZWRlZCk7CiAgICAgdmlydHVhbCB2b2lk
IHJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoV2ViQ29yZTo6U2VjdXJpdHlPcmln
aW4qLCBpbnQ2NF90IHRvdGFsU3BhY2VOZWVkZWQpOwogCi0gICAgdmlydHVhbCB2b2lkIHJ1bk9w
ZW5QYW5lbChXZWJDb3JlOjpGcmFtZSosIFBhc3NSZWZQdHI8V2ViQ29yZTo6RmlsZUNob29zZXI+
KTsKKyAgICB2aXJ0dWFsIHZvaWQgcnVuT3BlblBhbmVsKFdlYkNvcmU6OkZyYW1lJiwgV2ViQ29y
ZTo6RmlsZUNob29zZXImKTsKICAgICB2aXJ0dWFsIHZvaWQgbG9hZEljb25Gb3JGaWxlcyhjb25z
dCBWZWN0b3I8V1RGOjpTdHJpbmc+JiwgV2ViQ29yZTo6RmlsZUljb25Mb2FkZXImKTsKIAogICAg
IHZpcnR1YWwgdm9pZCBzZXRDdXJzb3IoY29uc3QgV2ViQ29yZTo6Q3Vyc29yJik7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuY3Bw
IGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmNwcApp
bmRleCBmYjIzNDI3ZDFiY2UwOTNiOTljMTBhY2NmOWI3ZDljN2ZlNzQ2OTU1Li43MjQ0NTc4NDEz
MGVmNWMzNTRhYTEwMDhjMDdhNjc4ZjE5NjdjMjIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5jcHAKQEAgLTEsNSArMSw1IEBA
CiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMDcsIDIwMTEsIDIwMTQtMjAxNSBBcHBsZSBJ
bmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTcgQXBw
bGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucwpAQCAtMzc0LDIyICszNzQsNiBAQCBib29sIFdlYkVkaXRvckNsaWVudDo6c2hvdWxkTW92
ZVJhbmdlQWZ0ZXJEZWxldGUoUmFuZ2UqLCBSYW5nZSopCiAgICAgcmV0dXJuIHRydWU7CiB9CiAK
LWJvb2wgV2ViRWRpdG9yQ2xpZW50OjpzaG91bGRDaGFuZ2VUeXBpbmdTdHlsZShTdHlsZVByb3Bl
cnRpZXMqLCBTdHlsZVByb3BlcnRpZXMqKQotewotICAgIG5vdEltcGxlbWVudGVkKCk7Ci0gICAg
cmV0dXJuIGZhbHNlOwotfQotCi12b2lkIFdlYkVkaXRvckNsaWVudDo6d2ViVmlld0RpZENoYW5n
ZVR5cGluZ1N0eWxlKFdlYk5vdGlmaWNhdGlvbiogLypub3RpZmljYXRpb24qLykKLXsKLSAgICBu
b3RJbXBsZW1lbnRlZCgpOwotfQotCi12b2lkIFdlYkVkaXRvckNsaWVudDo6d2ViVmlld0RpZENo
YW5nZVNlbGVjdGlvbihXZWJOb3RpZmljYXRpb24qIC8qbm90aWZpY2F0aW9uKi8pCi17Ci0gICAg
bm90SW1wbGVtZW50ZWQoKTsKLX0KLQogYm9vbCBXZWJFZGl0b3JDbGllbnQ6OnNtYXJ0SW5zZXJ0
RGVsZXRlRW5hYmxlZCh2b2lkKQogewogICAgIFBhZ2UqIHBhZ2UgPSBtX3dlYlZpZXctPnBhZ2Uo
KTsKQEAgLTUyMSw3ICs1MDUsNyBAQCB2b2lkIFdlYkVkaXRvckNsaWVudDo6dGV4dERpZENoYW5n
ZUluVGV4dEFyZWEoRWxlbWVudCogZSkKIGNsYXNzIFdlYkVkaXRvclVuZG9Db21tYW5kIDogcHVi
bGljIElXZWJVbmRvQ29tbWFuZAogewogcHVibGljOgotICAgIFdlYkVkaXRvclVuZG9Db21tYW5k
KFBhc3NSZWZQdHI8VW5kb1N0ZXA+LCBib29sIGlzVW5kbyk7CisgICAgV2ViRWRpdG9yVW5kb0Nv
bW1hbmQoVW5kb1N0ZXAmLCBib29sIGlzVW5kbyk7CiAgICAgdm9pZCBleGVjdXRlKCk7CiAKICAg
ICAvLyBJVW5rbm93bgpAQCAtNTMxLDExICs1MTUsMTEgQEAgcHVibGljOgogCiBwcml2YXRlOgog
ICAgIFVMT05HIG1fcmVmQ291bnQ7Ci0gICAgUmVmUHRyPFVuZG9TdGVwPiBtX3N0ZXA7CisgICAg
UmVmPFVuZG9TdGVwPiBtX3N0ZXA7CiAgICAgYm9vbCBtX2lzVW5kbzsKIH07CiAKLVdlYkVkaXRv
clVuZG9Db21tYW5kOjpXZWJFZGl0b3JVbmRvQ29tbWFuZChQYXNzUmVmUHRyPFVuZG9TdGVwPiBz
dGVwLCBib29sIGlzVW5kbykKK1dlYkVkaXRvclVuZG9Db21tYW5kOjpXZWJFZGl0b3JVbmRvQ29t
bWFuZChVbmRvU3RlcCYgc3RlcCwgYm9vbCBpc1VuZG8pCiAgICAgOiBtX3N0ZXAoc3RlcCkKICAg
ICAsIG1faXNVbmRvKGlzVW5kbykgCiAgICAgLCBtX3JlZkNvdW50KDEpCkBAIC02NDAsMTEgKzYy
NCwxMSBAQCBzdGF0aWMgU3RyaW5nIHVuZG9OYW1lRm9yRWRpdEFjdGlvbihFZGl0QWN0aW9uIGVk
aXRBY3Rpb24pCiAgICAgcmV0dXJuIFN0cmluZygpOwogfQogCi12b2lkIFdlYkVkaXRvckNsaWVu
dDo6cmVnaXN0ZXJVbmRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPiBzdGVwKQordm9pZCBXZWJF
ZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb1N0ZXAoVW5kb1N0ZXAmIHN0ZXApCiB7CiAgICAgSVdl
YlVJRGVsZWdhdGUqIHVpRGVsZWdhdGUgPSAwOwogICAgIGlmIChTVUNDRUVERUQobV93ZWJWaWV3
LT51aURlbGVnYXRlKCZ1aURlbGVnYXRlKSkpIHsKLSAgICAgICAgU3RyaW5nIGFjdGlvbk5hbWUg
PSB1bmRvTmFtZUZvckVkaXRBY3Rpb24oc3RlcC0+ZWRpdGluZ0FjdGlvbigpKTsKKyAgICAgICAg
U3RyaW5nIGFjdGlvbk5hbWUgPSB1bmRvTmFtZUZvckVkaXRBY3Rpb24oc3RlcC5lZGl0aW5nQWN0
aW9uKCkpOwogICAgICAgICBXZWJFZGl0b3JVbmRvQ29tbWFuZCogdW5kb0NvbW1hbmQgPSBuZXcg
V2ViRWRpdG9yVW5kb0NvbW1hbmQoc3RlcCwgdHJ1ZSk7CiAgICAgICAgIGlmICghdW5kb0NvbW1h
bmQpCiAgICAgICAgICAgICByZXR1cm47CkBAIC02NTYsNyArNjQwLDcgQEAgdm9pZCBXZWJFZGl0
b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb1N0ZXAoUGFzc1JlZlB0cjxVbmRvU3RlcD4gc3RlcCkKICAg
ICB9CiB9CiAKLXZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclJlZG9TdGVwKFBhc3NSZWZQ
dHI8VW5kb1N0ZXA+IHN0ZXApCit2b2lkIFdlYkVkaXRvckNsaWVudDo6cmVnaXN0ZXJSZWRvU3Rl
cChVbmRvU3RlcCYgc3RlcCkKIHsKICAgICBJV2ViVUlEZWxlZ2F0ZSogdWlEZWxlZ2F0ZSA9IDA7
CiAgICAgaWYgKFNVQ0NFRURFRChtX3dlYlZpZXctPnVpRGVsZWdhdGUoJnVpRGVsZWdhdGUpKSkg
ewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9y
Q2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGll
bnQuaAppbmRleCBiMTQ4YmU3MmFmZmFiMWJmMzQ1ZTAxMTA3ZmJmNTI3NThiODYzZTVlLi40ZTBm
YzlmODRkNTQ2MmNlNDY3ODg5NjhkZWQ2ZWM5NjYxNjZmMTk1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuaApAQCAtMSw1ICsxLDUg
QEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAwNyBBcHBsZSBJbmMuICBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTcgQXBwbGUgSW5jLiAgQWxsIHJp
Z2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMzMsOTEg
KzMzLDg3IEBAIGNsYXNzIFdlYlZpZXc7CiBjbGFzcyBXZWJOb3RpZmljYXRpb247CiBjbGFzcyBX
ZWJFZGl0b3JVbmRvVGFyZ2V0OwogCi1jbGFzcyBXZWJFZGl0b3JDbGllbnQgOiBwdWJsaWMgV2Vi
Q29yZTo6RWRpdG9yQ2xpZW50LCBwdWJsaWMgV2ViQ29yZTo6VGV4dENoZWNrZXJDbGllbnQgewor
Y2xhc3MgV2ViRWRpdG9yQ2xpZW50IGZpbmFsIDogcHVibGljIFdlYkNvcmU6OkVkaXRvckNsaWVu
dCwgcHVibGljIFdlYkNvcmU6OlRleHRDaGVja2VyQ2xpZW50IHsKIHB1YmxpYzoKICAgICBXZWJF
ZGl0b3JDbGllbnQoV2ViVmlldyopOwogICAgIH5XZWJFZGl0b3JDbGllbnQoKTsKIAotICAgIHZp
cnR1YWwgYm9vbCBpc0NvbnRpbnVvdXNTcGVsbENoZWNraW5nRW5hYmxlZCgpOwotICAgIHZpcnR1
YWwgdm9pZCB0b2dnbGVHcmFtbWFyQ2hlY2tpbmcoKTsKLSAgICB2aXJ0dWFsIGJvb2wgaXNHcmFt
bWFyQ2hlY2tpbmdFbmFibGVkKCk7Ci0gICAgdmlydHVhbCB2b2lkIHRvZ2dsZUNvbnRpbnVvdXNT
cGVsbENoZWNraW5nKCk7Ci0gICAgdmlydHVhbCBpbnQgc3BlbGxDaGVja2VyRG9jdW1lbnRUYWco
KTsKLQotICAgIHZpcnR1YWwgYm9vbCBzaG91bGRCZWdpbkVkaXRpbmcoV2ViQ29yZTo6UmFuZ2Uq
KTsKLSAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkRW5kRWRpdGluZyhXZWJDb3JlOjpSYW5nZSopOwot
ICAgIHZpcnR1YWwgYm9vbCBzaG91bGRJbnNlcnRUZXh0KGNvbnN0IFdURjo6U3RyaW5nJiwgV2Vi
Q29yZTo6UmFuZ2UqLCBXZWJDb3JlOjpFZGl0b3JJbnNlcnRBY3Rpb24pOwotCi0gICAgdmlydHVh
bCB2b2lkIGRpZEJlZ2luRWRpdGluZygpOwotICAgIHZpcnR1YWwgdm9pZCBkaWRFbmRFZGl0aW5n
KCk7Ci0gICAgdmlydHVhbCB2b2lkIHdpbGxXcml0ZVNlbGVjdGlvblRvUGFzdGVib2FyZChXZWJD
b3JlOjpSYW5nZSopOwotICAgIHZpcnR1YWwgdm9pZCBkaWRXcml0ZVNlbGVjdGlvblRvUGFzdGVi
b2FyZCgpOwotICAgIHZpcnR1YWwgdm9pZCBnZXRDbGllbnRQYXN0ZWJvYXJkRGF0YUZvclJhbmdl
KFdlYkNvcmU6OlJhbmdlKiwgVmVjdG9yPFN0cmluZz4mIHBhc3RlYm9hcmRUeXBlcywgVmVjdG9y
PFJlZlB0cjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+ID4mIHBhc3RlYm9hcmREYXRhKTsKLQotICAg
IHZpcnR1YWwgdm9pZCByZXNwb25kVG9DaGFuZ2VkQ29udGVudHMoKTsKLSAgICB2aXJ0dWFsIHZv
aWQgcmVzcG9uZFRvQ2hhbmdlZFNlbGVjdGlvbihXZWJDb3JlOjpGcmFtZSopOworcHJpdmF0ZToK
KyAgICBib29sIGlzQ29udGludW91c1NwZWxsQ2hlY2tpbmdFbmFibGVkKCkgZmluYWw7CisgICAg
dm9pZCB0b2dnbGVHcmFtbWFyQ2hlY2tpbmcoKSBmaW5hbDsKKyAgICBib29sIGlzR3JhbW1hckNo
ZWNraW5nRW5hYmxlZCgpIGZpbmFsOworICAgIHZvaWQgdG9nZ2xlQ29udGludW91c1NwZWxsQ2hl
Y2tpbmcoKSBmaW5hbDsKKyAgICBpbnQgc3BlbGxDaGVja2VyRG9jdW1lbnRUYWcoKSBmaW5hbDsK
KworICAgIGJvb2wgc2hvdWxkQmVnaW5FZGl0aW5nKFdlYkNvcmU6OlJhbmdlKikgZmluYWw7Cisg
ICAgYm9vbCBzaG91bGRFbmRFZGl0aW5nKFdlYkNvcmU6OlJhbmdlKikgZmluYWw7CisgICAgYm9v
bCBzaG91bGRJbnNlcnRUZXh0KGNvbnN0IFdURjo6U3RyaW5nJiwgV2ViQ29yZTo6UmFuZ2UqLCBX
ZWJDb3JlOjpFZGl0b3JJbnNlcnRBY3Rpb24pIGZpbmFsOworCisgICAgdm9pZCBkaWRCZWdpbkVk
aXRpbmcoKSBmaW5hbDsKKyAgICB2b2lkIGRpZEVuZEVkaXRpbmcoKSBmaW5hbDsKKyAgICB2b2lk
IHdpbGxXcml0ZVNlbGVjdGlvblRvUGFzdGVib2FyZChXZWJDb3JlOjpSYW5nZSopIGZpbmFsOwor
ICAgIHZvaWQgZGlkV3JpdGVTZWxlY3Rpb25Ub1Bhc3RlYm9hcmQoKSBmaW5hbDsKKyAgICB2b2lk
IGdldENsaWVudFBhc3RlYm9hcmREYXRhRm9yUmFuZ2UoV2ViQ29yZTo6UmFuZ2UqLCBWZWN0b3I8
U3RyaW5nPiYgcGFzdGVib2FyZFR5cGVzLCBWZWN0b3I8UmVmUHRyPFdlYkNvcmU6OlNoYXJlZEJ1
ZmZlcj4+JiBwYXN0ZWJvYXJkRGF0YSkgZmluYWw7CisKKyAgICB2b2lkIHJlc3BvbmRUb0NoYW5n
ZWRDb250ZW50cygpIGZpbmFsOworICAgIHZvaWQgcmVzcG9uZFRvQ2hhbmdlZFNlbGVjdGlvbihX
ZWJDb3JlOjpGcmFtZSopIGZpbmFsOwogICAgIHZvaWQgZGlkQ2hhbmdlU2VsZWN0aW9uQW5kVXBk
YXRlTGF5b3V0KCkgZmluYWwgeyB9CiAgICAgdm9pZCB1cGRhdGVFZGl0b3JTdGF0ZUFmdGVyTGF5
b3V0SWZFZGl0YWJpbGl0eUNoYW5nZWQoKSBmaW5hbCB7IH0gCiAgICAgdm9pZCBjYW5jZWxlZENv
bXBvc2l0aW9uKCkgZmluYWw7CiAgICAgdm9pZCBkaXNjYXJkZWRDb21wb3NpdGlvbihXZWJDb3Jl
OjpGcmFtZSopIGZpbmFsOwogCi0gICAgYm9vbCBzaG91bGREZWxldGVSYW5nZShXZWJDb3JlOjpS
YW5nZSopOwotCi0gICAgYm9vbCBzaG91bGRJbnNlcnROb2RlKFdlYkNvcmU6Ok5vZGUqLCBXZWJD
b3JlOjpSYW5nZSogcmVwbGFjaW5nUmFuZ2UsIFdlYkNvcmU6OkVkaXRvckluc2VydEFjdGlvbik7
Ci0gICAgYm9vbCBzaG91bGRBcHBseVN0eWxlKFdlYkNvcmU6OlN0eWxlUHJvcGVydGllcyosIFdl
YkNvcmU6OlJhbmdlKik7Ci0gICAgdm9pZCBkaWRBcHBseVN0eWxlKCk7Ci0gICAgYm9vbCBzaG91
bGRNb3ZlUmFuZ2VBZnRlckRlbGV0ZShXZWJDb3JlOjpSYW5nZSosIFdlYkNvcmU6OlJhbmdlKik7
Ci0gICAgYm9vbCBzaG91bGRDaGFuZ2VUeXBpbmdTdHlsZShXZWJDb3JlOjpTdHlsZVByb3BlcnRp
ZXMqIGN1cnJlbnRTdHlsZSwgV2ViQ29yZTo6U3R5bGVQcm9wZXJ0aWVzKiB0b1Byb3Bvc2VkU3R5
bGUpOworICAgIGJvb2wgc2hvdWxkRGVsZXRlUmFuZ2UoV2ViQ29yZTo6UmFuZ2UqKSBmaW5hbDsK
IAotICAgIHZvaWQgd2ViVmlld0RpZENoYW5nZVR5cGluZ1N0eWxlKFdlYk5vdGlmaWNhdGlvbiop
OwotICAgIHZvaWQgd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbihXZWJOb3RpZmljYXRpb24qKTsK
KyAgICBib29sIHNob3VsZEluc2VydE5vZGUoV2ViQ29yZTo6Tm9kZSosIFdlYkNvcmU6OlJhbmdl
KiByZXBsYWNpbmdSYW5nZSwgV2ViQ29yZTo6RWRpdG9ySW5zZXJ0QWN0aW9uKSBmaW5hbDsKKyAg
ICBib29sIHNob3VsZEFwcGx5U3R5bGUoV2ViQ29yZTo6U3R5bGVQcm9wZXJ0aWVzKiwgV2ViQ29y
ZTo6UmFuZ2UqKSBmaW5hbDsKKyAgICB2b2lkIGRpZEFwcGx5U3R5bGUoKSBmaW5hbDsKKyAgICBi
b29sIHNob3VsZE1vdmVSYW5nZUFmdGVyRGVsZXRlKFdlYkNvcmU6OlJhbmdlKiwgV2ViQ29yZTo6
UmFuZ2UqKSBmaW5hbDsKIAotICAgIGJvb2wgc21hcnRJbnNlcnREZWxldGVFbmFibGVkKCk7Ci0g
ICAgYm9vbCBpc1NlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQoKTsKKyAgICBib29sIHNt
YXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCgpIGZpbmFsOworICAgIGJvb2wgaXNTZWxlY3RUcmFpbGlu
Z1doaXRlc3BhY2VFbmFibGVkKCkgZmluYWw7CiAKLSAgICB2b2lkIHJlZ2lzdGVyVW5kb1N0ZXAo
UGFzc1JlZlB0cjxXZWJDb3JlOjpVbmRvU3RlcD4pOwotICAgIHZvaWQgcmVnaXN0ZXJSZWRvU3Rl
cChQYXNzUmVmUHRyPFdlYkNvcmU6OlVuZG9TdGVwPik7CisgICAgdm9pZCByZWdpc3RlclVuZG9T
dGVwKFdlYkNvcmU6OlVuZG9TdGVwJikgZmluYWw7CisgICAgdm9pZCByZWdpc3RlclJlZG9TdGVw
KFdlYkNvcmU6OlVuZG9TdGVwJikgZmluYWw7CiAgICAgdm9pZCBjbGVhclVuZG9SZWRvT3BlcmF0
aW9ucygpOwogCi0gICAgYm9vbCBjYW5Db3B5Q3V0KFdlYkNvcmU6OkZyYW1lKiwgYm9vbCBkZWZh
dWx0VmFsdWUpIGNvbnN0OwotICAgIGJvb2wgY2FuUGFzdGUoV2ViQ29yZTo6RnJhbWUqLCBib29s
IGRlZmF1bHRWYWx1ZSkgY29uc3Q7Ci0gICAgYm9vbCBjYW5VbmRvKCkgY29uc3Q7Ci0gICAgYm9v
bCBjYW5SZWRvKCkgY29uc3Q7CisgICAgYm9vbCBjYW5Db3B5Q3V0KFdlYkNvcmU6OkZyYW1lKiwg
Ym9vbCBkZWZhdWx0VmFsdWUpIGNvbnN0IGZpbmFsOworICAgIGJvb2wgY2FuUGFzdGUoV2ViQ29y
ZTo6RnJhbWUqLCBib29sIGRlZmF1bHRWYWx1ZSkgY29uc3QgZmluYWw7CisgICAgYm9vbCBjYW5V
bmRvKCkgY29uc3QgZmluYWw7CisgICAgYm9vbCBjYW5SZWRvKCkgY29uc3QgZmluYWw7CiAgICAg
Ci0gICAgdm9pZCB1bmRvKCk7Ci0gICAgdm9pZCByZWRvKCk7ICAgIAorICAgIHZvaWQgdW5kbygp
IGZpbmFsOworICAgIHZvaWQgcmVkbygpIGZpbmFsOwogICAgIAotICAgIGJvb2wgc2hvdWxkQ2hh
bmdlU2VsZWN0ZWRSYW5nZShXZWJDb3JlOjpSYW5nZSogZnJvbVJhbmdlLCBXZWJDb3JlOjpSYW5n
ZSogdG9SYW5nZSwgV2ViQ29yZTo6RUFmZmluaXR5LCBib29sIHN0aWxsU2VsZWN0aW5nKSBvdmVy
cmlkZTsKLSAgICB2b2lkIHRleHRGaWVsZERpZEJlZ2luRWRpdGluZyhXZWJDb3JlOjpFbGVtZW50
Kikgb3ZlcnJpZGU7Ci0gICAgdm9pZCB0ZXh0RmllbGREaWRFbmRFZGl0aW5nKFdlYkNvcmU6OkVs
ZW1lbnQqKSBvdmVycmlkZTsKLSAgICB2b2lkIHRleHREaWRDaGFuZ2VJblRleHRGaWVsZChXZWJD
b3JlOjpFbGVtZW50Kikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBkb1RleHRGaWVsZENvbW1hbmRGcm9t
RXZlbnQoV2ViQ29yZTo6RWxlbWVudCosIFdlYkNvcmU6OktleWJvYXJkRXZlbnQqKSBvdmVycmlk
ZTsKLSAgICB2b2lkIHRleHRXaWxsQmVEZWxldGVkSW5UZXh0RmllbGQoV2ViQ29yZTo6RWxlbWVu
dCogaW5wdXQpIG92ZXJyaWRlOwotICAgIHZvaWQgdGV4dERpZENoYW5nZUluVGV4dEFyZWEoV2Vi
Q29yZTo6RWxlbWVudCopIG92ZXJyaWRlOwotICAgIHZvaWQgb3ZlcmZsb3dTY3JvbGxQb3NpdGlv
bkNoYW5nZWQoKSBvdmVycmlkZSB7IH0KLQotICAgIHZvaWQgaGFuZGxlS2V5Ym9hcmRFdmVudChX
ZWJDb3JlOjpLZXlib2FyZEV2ZW50Kik7Ci0gICAgdm9pZCBoYW5kbGVJbnB1dE1ldGhvZEtleWRv
d24oV2ViQ29yZTo6S2V5Ym9hcmRFdmVudCopOwotCi0gICAgYm9vbCBzaG91bGRFcmFzZU1hcmtl
cnNBZnRlckNoYW5nZVNlbGVjdGlvbihXZWJDb3JlOjpUZXh0Q2hlY2tpbmdUeXBlKSBjb25zdCBv
dmVycmlkZTsKLSAgICB2b2lkIGlnbm9yZVdvcmRJblNwZWxsRG9jdW1lbnQoY29uc3QgV1RGOjpT
dHJpbmcmKSBvdmVycmlkZTsKLSAgICB2b2lkIGxlYXJuV29yZChjb25zdCBXVEY6OlN0cmluZyYp
IG92ZXJyaWRlOwotICAgIHZvaWQgY2hlY2tTcGVsbGluZ09mU3RyaW5nKFN0cmluZ1ZpZXcsIGlu
dCogbWlzc3BlbGxpbmdMb2NhdGlvbiwgaW50KiBtaXNzcGVsbGluZ0xlbmd0aCkgb3ZlcnJpZGU7
Ci0gICAgV1RGOjpTdHJpbmcgZ2V0QXV0b0NvcnJlY3RTdWdnZXN0aW9uRm9yTWlzc3BlbGxlZFdv
cmQoY29uc3QgV1RGOjpTdHJpbmcmKSBvdmVycmlkZTsKLSAgICB2b2lkIGNoZWNrR3JhbW1hck9m
U3RyaW5nKFN0cmluZ1ZpZXcsIFZlY3RvcjxXZWJDb3JlOjpHcmFtbWFyRGV0YWlsPiYsIGludCog
YmFkR3JhbW1hckxvY2F0aW9uLCBpbnQqIGJhZEdyYW1tYXJMZW5ndGgpIG92ZXJyaWRlOwotICAg
IHZvaWQgdXBkYXRlU3BlbGxpbmdVSVdpdGhHcmFtbWFyU3RyaW5nKGNvbnN0IFdURjo6U3RyaW5n
JiwgY29uc3QgV2ViQ29yZTo6R3JhbW1hckRldGFpbCYpIG92ZXJyaWRlOwotICAgIHZvaWQgdXBk
YXRlU3BlbGxpbmdVSVdpdGhNaXNzcGVsbGVkV29yZChjb25zdCBXVEY6OlN0cmluZyYpIG92ZXJy
aWRlOwotICAgIHZvaWQgc2hvd1NwZWxsaW5nVUkoYm9vbCBzaG93KSBvdmVycmlkZTsKLSAgICBi
b29sIHNwZWxsaW5nVUlJc1Nob3dpbmcoKSBvdmVycmlkZTsKLSAgICB2b2lkIGdldEd1ZXNzZXNG
b3JXb3JkKGNvbnN0IFdURjo6U3RyaW5nJiB3b3JkLCBjb25zdCBXVEY6OlN0cmluZyYgY29udGV4
dCwgY29uc3QgV2ViQ29yZTo6VmlzaWJsZVNlbGVjdGlvbiYgY3VycmVudFNlbGVjdGlvbiwgV1RG
OjpWZWN0b3I8V1RGOjpTdHJpbmc+JiBndWVzc2VzKSBvdmVycmlkZTsKLQotICAgIHZvaWQgd2ls
bFNldElucHV0TWV0aG9kU3RhdGUoKSBvdmVycmlkZTsKLSAgICB2b2lkIHNldElucHV0TWV0aG9k
U3RhdGUoYm9vbCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCByZXF1ZXN0Q2hlY2tpbmdPZlN0cmluZyhX
ZWJDb3JlOjpUZXh0Q2hlY2tpbmdSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6VmlzaWJsZVNlbGVj
dGlvbiYpIG92ZXJyaWRlIHsgfQotCi0gICAgV2ViQ29yZTo6VGV4dENoZWNrZXJDbGllbnQqIHRl
eHRDaGVja2VyKCkgb3ZlcnJpZGUgeyByZXR1cm4gdGhpczsgfQorICAgIGJvb2wgc2hvdWxkQ2hh
bmdlU2VsZWN0ZWRSYW5nZShXZWJDb3JlOjpSYW5nZSogZnJvbVJhbmdlLCBXZWJDb3JlOjpSYW5n
ZSogdG9SYW5nZSwgV2ViQ29yZTo6RUFmZmluaXR5LCBib29sIHN0aWxsU2VsZWN0aW5nKSBmaW5h
bDsKKyAgICB2b2lkIHRleHRGaWVsZERpZEJlZ2luRWRpdGluZyhXZWJDb3JlOjpFbGVtZW50Kikg
ZmluYWw7CisgICAgdm9pZCB0ZXh0RmllbGREaWRFbmRFZGl0aW5nKFdlYkNvcmU6OkVsZW1lbnQq
KSBmaW5hbDsKKyAgICB2b2lkIHRleHREaWRDaGFuZ2VJblRleHRGaWVsZChXZWJDb3JlOjpFbGVt
ZW50KikgZmluYWw7CisgICAgYm9vbCBkb1RleHRGaWVsZENvbW1hbmRGcm9tRXZlbnQoV2ViQ29y
ZTo6RWxlbWVudCosIFdlYkNvcmU6OktleWJvYXJkRXZlbnQqKSBmaW5hbDsKKyAgICB2b2lkIHRl
eHRXaWxsQmVEZWxldGVkSW5UZXh0RmllbGQoV2ViQ29yZTo6RWxlbWVudCogaW5wdXQpIGZpbmFs
OworICAgIHZvaWQgdGV4dERpZENoYW5nZUluVGV4dEFyZWEoV2ViQ29yZTo6RWxlbWVudCopIGZp
bmFsOworICAgIHZvaWQgb3ZlcmZsb3dTY3JvbGxQb3NpdGlvbkNoYW5nZWQoKSBmaW5hbCB7IH0K
KworICAgIHZvaWQgaGFuZGxlS2V5Ym9hcmRFdmVudChXZWJDb3JlOjpLZXlib2FyZEV2ZW50Kikg
ZmluYWw7CisgICAgdm9pZCBoYW5kbGVJbnB1dE1ldGhvZEtleWRvd24oV2ViQ29yZTo6S2V5Ym9h
cmRFdmVudCopIGZpbmFsOworCisgICAgYm9vbCBzaG91bGRFcmFzZU1hcmtlcnNBZnRlckNoYW5n
ZVNlbGVjdGlvbihXZWJDb3JlOjpUZXh0Q2hlY2tpbmdUeXBlKSBjb25zdCBmaW5hbDsKKyAgICB2
b2lkIGlnbm9yZVdvcmRJblNwZWxsRG9jdW1lbnQoY29uc3QgV1RGOjpTdHJpbmcmKSBmaW5hbDsK
KyAgICB2b2lkIGxlYXJuV29yZChjb25zdCBXVEY6OlN0cmluZyYpIGZpbmFsOworICAgIHZvaWQg
Y2hlY2tTcGVsbGluZ09mU3RyaW5nKFN0cmluZ1ZpZXcsIGludCogbWlzc3BlbGxpbmdMb2NhdGlv
biwgaW50KiBtaXNzcGVsbGluZ0xlbmd0aCkgZmluYWw7CisgICAgV1RGOjpTdHJpbmcgZ2V0QXV0
b0NvcnJlY3RTdWdnZXN0aW9uRm9yTWlzc3BlbGxlZFdvcmQoY29uc3QgV1RGOjpTdHJpbmcmKSBm
aW5hbDsKKyAgICB2b2lkIGNoZWNrR3JhbW1hck9mU3RyaW5nKFN0cmluZ1ZpZXcsIFZlY3RvcjxX
ZWJDb3JlOjpHcmFtbWFyRGV0YWlsPiYsIGludCogYmFkR3JhbW1hckxvY2F0aW9uLCBpbnQqIGJh
ZEdyYW1tYXJMZW5ndGgpIGZpbmFsOworICAgIHZvaWQgdXBkYXRlU3BlbGxpbmdVSVdpdGhHcmFt
bWFyU3RyaW5nKGNvbnN0IFdURjo6U3RyaW5nJiwgY29uc3QgV2ViQ29yZTo6R3JhbW1hckRldGFp
bCYpIGZpbmFsOworICAgIHZvaWQgdXBkYXRlU3BlbGxpbmdVSVdpdGhNaXNzcGVsbGVkV29yZChj
b25zdCBXVEY6OlN0cmluZyYpIGZpbmFsOworICAgIHZvaWQgc2hvd1NwZWxsaW5nVUkoYm9vbCBz
aG93KSBmaW5hbDsKKyAgICBib29sIHNwZWxsaW5nVUlJc1Nob3dpbmcoKSBmaW5hbDsKKyAgICB2
b2lkIGdldEd1ZXNzZXNGb3JXb3JkKGNvbnN0IFdURjo6U3RyaW5nJiB3b3JkLCBjb25zdCBXVEY6
OlN0cmluZyYgY29udGV4dCwgY29uc3QgV2ViQ29yZTo6VmlzaWJsZVNlbGVjdGlvbiYgY3VycmVu
dFNlbGVjdGlvbiwgV1RGOjpWZWN0b3I8V1RGOjpTdHJpbmc+JiBndWVzc2VzKSBmaW5hbDsKKwor
ICAgIHZvaWQgd2lsbFNldElucHV0TWV0aG9kU3RhdGUoKSBmaW5hbDsKKyAgICB2b2lkIHNldElu
cHV0TWV0aG9kU3RhdGUoYm9vbCkgZmluYWw7CisgICAgdm9pZCByZXF1ZXN0Q2hlY2tpbmdPZlN0
cmluZyhXZWJDb3JlOjpUZXh0Q2hlY2tpbmdSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6VmlzaWJs
ZVNlbGVjdGlvbiYpIGZpbmFsIHsgfQorCisgICAgV2ViQ29yZTo6VGV4dENoZWNrZXJDbGllbnQq
IHRleHRDaGVja2VyKCkgZmluYWwgeyByZXR1cm4gdGhpczsgfQogCi1wcml2YXRlOgogICAgIFdl
YlZpZXcqIG1fd2ViVmlldzsKICAgICBXZWJFZGl0b3JVbmRvVGFyZ2V0KiBtX3VuZG9UYXJnZXQ7
CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViRnJh
bWVMb2FkZXJDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2Vi
RnJhbWVMb2FkZXJDbGllbnQuY3BwCmluZGV4IGVhMmJhY2MxNGM3YWJhY2FmNWI4Y2IwMzRmMWUz
ZDg1MTdiNjRjYWMuLjM4NTY4YzBjN2UzYTQ5OWU5ODAwMzc2MDAwYTcxOGY3ZTk3YzcyNjkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVy
Q2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFt
ZUxvYWRlckNsaWVudC5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAy
MDA2LTIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChD
KSAyMDA2LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCkBAIC01MzMsNyArNTMzLDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRl
ckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JSZXNwb25zZShjb25zdCBSZXNvdXJjZVJl
c3BvbnMKICAgICBmdW5jdGlvbihQb2xpY3lVc2UpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBOYXZp
Z2F0aW9uQWN0aW9uJiBhY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgUGFz
c1JlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSwgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIEZy
YW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24pCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpk
aXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0
aW9uJiBhY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBm
b3JtU3RhdGUsIGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1
bmN0aW9uKQogewogICAgIFdlYlZpZXcqIHdlYlZpZXcgPSBtX3dlYkZyYW1lLT53ZWJWaWV3KCk7
CiAgICAgRnJhbWUqIGNvcmVGcmFtZSA9IGNvcmUobV93ZWJGcmFtZSk7CkBAIC01NDQsNyArNTQ0
LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JO
ZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGkKICAgICAgICAgcG9saWN5RGVsZWdhdGUgPSBE
ZWZhdWx0UG9saWN5RGVsZWdhdGU6OnNoYXJlZEluc3RhbmNlKCk7CiAKICAgICBDT01QdHI8SVdl
YlVSTFJlcXVlc3Q+IHVybFJlcXVlc3QoQWRvcHRDT00sIFdlYk11dGFibGVVUkxSZXF1ZXN0Ojpj
cmVhdGVJbnN0YW5jZShyZXF1ZXN0KSk7Ci0gICAgQ09NUHRyPFdlYkFjdGlvblByb3BlcnR5QmFn
PiBhY3Rpb25JbmZvcm1hdGlvbihBZG9wdENPTSwgV2ViQWN0aW9uUHJvcGVydHlCYWc6OmNyZWF0
ZUluc3RhbmNlKGFjdGlvbiwgZm9ybVN0YXRlID8gZm9ybVN0YXRlLT5mb3JtKCkgOiAwLCBjb3Jl
RnJhbWUpKTsKKyAgICBDT01QdHI8V2ViQWN0aW9uUHJvcGVydHlCYWc+IGFjdGlvbkluZm9ybWF0
aW9uKEFkb3B0Q09NLCBXZWJBY3Rpb25Qcm9wZXJ0eUJhZzo6Y3JlYXRlSW5zdGFuY2UoYWN0aW9u
LCBmb3JtU3RhdGUgPyAmZm9ybVN0YXRlLT5mb3JtKCkgOiBudWxscHRyLCBjb3JlRnJhbWUpKTsK
IAogICAgIGlmIChTVUNDRUVERUQocG9saWN5RGVsZWdhdGUtPmRlY2lkZVBvbGljeUZvck5ld1dp
bmRvd0FjdGlvbih3ZWJWaWV3LCBhY3Rpb25JbmZvcm1hdGlvbi5nZXQoKSwgdXJsUmVxdWVzdC5n
ZXQoKSwgQlN0cmluZyhmcmFtZU5hbWUpLCBzZXRVcFBvbGljeUxpc3RlbmVyKGZ1bmN0aW9uKS5n
ZXQoKSkpKQogICAgICAgICByZXR1cm47CkBAIC01NTIsNyArNTUyLDcgQEAgdm9pZCBXZWJGcmFt
ZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29u
c3QgTmF2aWdhdGkKICAgICBmdW5jdGlvbihQb2xpY3lVc2UpOwogfQogCi12b2lkIFdlYkZyYW1l
TG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29u
c3QgTmF2aWdhdGlvbkFjdGlvbiYgYWN0aW9uLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVl
c3QsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiBmb3JtU3RhdGUsIEZyYW1lUG9saWN5RnVuY3Rpb24g
ZnVuY3Rpb24pCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGlj
eUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgYWN0aW9uLCBjb25z
dCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSogZm9ybVN0YXRlLCBGcmFtZVBv
bGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQogewogICAgIFdlYlZpZXcqIHdlYlZpZXcgPSBtX3dlYkZy
YW1lLT53ZWJWaWV3KCk7CiAgICAgRnJhbWUqIGNvcmVGcmFtZSA9IGNvcmUobV93ZWJGcmFtZSk7
CkBAIC01NjMsNyArNTYzLDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hE
ZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5hdmlnYXQKICAgICAgICAgcG9s
aWN5RGVsZWdhdGUgPSBEZWZhdWx0UG9saWN5RGVsZWdhdGU6OnNoYXJlZEluc3RhbmNlKCk7CiAK
ICAgICBDT01QdHI8SVdlYlVSTFJlcXVlc3Q+IHVybFJlcXVlc3QoQWRvcHRDT00sIFdlYk11dGFi
bGVVUkxSZXF1ZXN0OjpjcmVhdGVJbnN0YW5jZShyZXF1ZXN0KSk7Ci0gICAgQ09NUHRyPFdlYkFj
dGlvblByb3BlcnR5QmFnPiBhY3Rpb25JbmZvcm1hdGlvbihBZG9wdENPTSwgV2ViQWN0aW9uUHJv
cGVydHlCYWc6OmNyZWF0ZUluc3RhbmNlKGFjdGlvbiwgZm9ybVN0YXRlID8gZm9ybVN0YXRlLT5m
b3JtKCkgOiAwLCBjb3JlRnJhbWUpKTsKKyAgICBDT01QdHI8V2ViQWN0aW9uUHJvcGVydHlCYWc+
IGFjdGlvbkluZm9ybWF0aW9uKEFkb3B0Q09NLCBXZWJBY3Rpb25Qcm9wZXJ0eUJhZzo6Y3JlYXRl
SW5zdGFuY2UoYWN0aW9uLCBmb3JtU3RhdGUgPyAmZm9ybVN0YXRlLT5mb3JtKCkgOiBudWxscHRy
LCBjb3JlRnJhbWUpKTsKIAogICAgIGlmIChTVUNDRUVERUQocG9saWN5RGVsZWdhdGUtPmRlY2lk
ZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24od2ViVmlldywgYWN0aW9uSW5mb3JtYXRpb24uZ2V0
KCksIHVybFJlcXVlc3QuZ2V0KCksIG1fd2ViRnJhbWUsIHNldFVwUG9saWN5TGlzdGVuZXIoZnVu
Y3Rpb24pLmdldCgpKSkpCiAgICAgICAgIHJldHVybjsKQEAgLTU4MiwxMSArNTgyLDExIEBAIHZv
aWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoVW5hYmxlVG9JbXBsZW1lbnRQb2xpY3ko
Y29uc3QgUmVzb3VyY2VFcnJvciYKICAgICBwb2xpY3lEZWxlZ2F0ZS0+dW5hYmxlVG9JbXBsZW1l
bnRQb2xpY3lXaXRoRXJyb3Iod2ViVmlldywgd2ViRXJyb3IuZ2V0KCksIG1fd2ViRnJhbWUpOwog
fQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZl
bnQoUGFzc1JlZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+KQordm9pZCBXZWJGcmFtZUxvYWRlckNs
aWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJlZjxXZWJDb3JlOjpGb3JtU3RhdGU+
JiYpCiB7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFN1Ym1p
dEZvcm0oUGFzc1JlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSwgRnJhbWVQb2xpY3lGdW5jdGlv
biBmdW5jdGlvbikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFN1Ym1p
dEZvcm0oRm9ybVN0YXRlJiBmb3JtU3RhdGUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24p
CiB7CiAgICAgV2ViVmlldyogd2ViVmlldyA9IG1fd2ViRnJhbWUtPndlYlZpZXcoKTsKICAgICBG
cmFtZSogY29yZUZyYW1lID0gY29yZShtX3dlYkZyYW1lKTsKQEAgLTU5OSwxNyArNTk5LDE3IEBA
IHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0oUGFzc1Jl
ZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBD
T01QdHI8SURPTUVsZW1lbnQ+IGZvcm1FbGVtZW50KEFkb3B0Q09NLCBET01FbGVtZW50OjpjcmVh
dGVJbnN0YW5jZShmb3JtU3RhdGUtPmZvcm0oKSkpOworICAgIENPTVB0cjxJRE9NRWxlbWVudD4g
Zm9ybUVsZW1lbnQoQWRvcHRDT00sIERPTUVsZW1lbnQ6OmNyZWF0ZUluc3RhbmNlKCZmb3JtU3Rh
dGUuZm9ybSgpKSk7CiAKICAgICBIYXNoTWFwPFN0cmluZywgU3RyaW5nPiBmb3JtVmFsdWVzTWFw
OwotICAgIGNvbnN0IFN0cmluZ1BhaXJWZWN0b3ImIHRleHRGaWVsZFZhbHVlcyA9IGZvcm1TdGF0
ZS0+dGV4dEZpZWxkVmFsdWVzKCk7CisgICAgY29uc3QgU3RyaW5nUGFpclZlY3RvciYgdGV4dEZp
ZWxkVmFsdWVzID0gZm9ybVN0YXRlLnRleHRGaWVsZFZhbHVlcygpOwogICAgIHNpemVfdCBzaXpl
ID0gdGV4dEZpZWxkVmFsdWVzLnNpemUoKTsKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHNp
emU7ICsraSkKICAgICAgICAgZm9ybVZhbHVlc01hcC5hZGQodGV4dEZpZWxkVmFsdWVzW2ldLmZp
cnN0LCB0ZXh0RmllbGRWYWx1ZXNbaV0uc2Vjb25kKTsKIAogICAgIENPTVB0cjxJUHJvcGVydHlC
YWc+IGZvcm1WYWx1ZXNQcm9wZXJ0eUJhZyhBZG9wdENPTSwgQ09NUHJvcGVydHlCYWc8U3RyaW5n
Pjo6Y3JlYXRlSW5zdGFuY2UoZm9ybVZhbHVlc01hcCkpOwogCi0gICAgQ09NUHRyPFdlYkZyYW1l
PiBzb3VyY2VGcmFtZShraXQoZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLT5mcmFtZSgpKSk7
CisgICAgQ09NUHRyPFdlYkZyYW1lPiBzb3VyY2VGcmFtZShraXQoZm9ybVN0YXRlLnNvdXJjZURv
Y3VtZW50KCkuZnJhbWUoKSkpOwogICAgIGlmIChTVUNDRUVERUQoZm9ybURlbGVnYXRlLT53aWxs
U3VibWl0Rm9ybShtX3dlYkZyYW1lLCBzb3VyY2VGcmFtZS5nZXQoKSwgZm9ybUVsZW1lbnQuZ2V0
KCksIGZvcm1WYWx1ZXNQcm9wZXJ0eUJhZy5nZXQoKSwgc2V0VXBQb2xpY3lMaXN0ZW5lcihmdW5j
dGlvbikuZ2V0KCkpKSkKICAgICAgICAgcmV0dXJuOwogCkBAIC0xMDEyLDI5ICsxMDEyLDIxIEBA
IGJvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNhbkNhY2hlUGFnZSgpIGNvbnN0CiAgICAgcmV0
dXJuIHRydWU7CiB9CiAKLVJlZlB0cjxGcmFtZT4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0
ZUZyYW1lKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIG5hbWUsIEhUTUxGcmFtZU93bmVy
RWxlbWVudCogb3duZXJFbGVtZW50LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0
IFN0cmluZyYgcmVmZXJyZXIsIGJvb2wgLyphbGxvd3NTY3JvbGxpbmcqLywgaW50IC8qbWFyZ2lu
V2lkdGgqLywgaW50IC8qbWFyZ2luSGVpZ2h0Ki8pCi17Ci0gICAgUmVmUHRyPEZyYW1lPiByZXN1
bHQgPSBjcmVhdGVGcmFtZSh1cmwsIG5hbWUsIG93bmVyRWxlbWVudCwgcmVmZXJyZXIpOwotICAg
IGlmICghcmVzdWx0KQotICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICByZXR1cm4gcmVzdWx0
OwotfQotCi1SZWZQdHI8RnJhbWU+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVGcmFtZShj
b25zdCBVUkwmIFVSTCwgY29uc3QgU3RyaW5nJiBuYW1lLCBIVE1MRnJhbWVPd25lckVsZW1lbnQq
IG93bmVyRWxlbWVudCwgY29uc3QgU3RyaW5nJiByZWZlcnJlcikKK1JlZlB0cjxGcmFtZT4gV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJp
bmcmIG5hbWUsIEhUTUxGcmFtZU93bmVyRWxlbWVudCYgb3duZXJFbGVtZW50LAorICAgIGNvbnN0
IFN0cmluZyYgcmVmZXJyZXIsIGJvb2wgLyphbGxvd3NTY3JvbGxpbmcqLywgaW50IC8qbWFyZ2lu
V2lkdGgqLywgaW50IC8qbWFyZ2luSGVpZ2h0Ki8pCiB7CiAgICAgRnJhbWUqIGNvcmVGcmFtZSA9
IGNvcmUobV93ZWJGcmFtZSk7CiAgICAgQVNTRVJUKGNvcmVGcmFtZSk7CiAKICAgICBDT01QdHI8
V2ViRnJhbWU+IHdlYkZyYW1lKEFkb3B0Q09NLCBXZWJGcmFtZTo6Y3JlYXRlSW5zdGFuY2UoKSk7
CiAKLSAgICBSZWZQdHI8RnJhbWU+IGNoaWxkRnJhbWUgPSB3ZWJGcmFtZS0+Y3JlYXRlU3ViZnJh
bWVXaXRoT3duZXJFbGVtZW50KG1fd2ViRnJhbWUtPndlYlZpZXcoKSwgY29yZUZyYW1lLT5wYWdl
KCksIG93bmVyRWxlbWVudCk7CisgICAgUmVmUHRyPEZyYW1lPiBjaGlsZEZyYW1lID0gd2ViRnJh
bWUtPmNyZWF0ZVN1YmZyYW1lV2l0aE93bmVyRWxlbWVudChtX3dlYkZyYW1lLT53ZWJWaWV3KCks
IGNvcmVGcmFtZS0+cGFnZSgpLCAmb3duZXJFbGVtZW50KTsKIAogICAgIGNoaWxkRnJhbWUtPnRy
ZWUoKS5zZXROYW1lKG5hbWUpOwogICAgIGNvcmVGcmFtZS0+dHJlZSgpLmFwcGVuZENoaWxkKGNo
aWxkRnJhbWUpOwogICAgIGNoaWxkRnJhbWUtPmluaXQoKTsKIAotICAgIGNvcmVGcmFtZS0+bG9h
ZGVyKCkubG9hZFVSTEludG9DaGlsZEZyYW1lKFVSTCwgcmVmZXJyZXIsIGNoaWxkRnJhbWUuZ2V0
KCkpOworICAgIGNvcmVGcmFtZS0+bG9hZGVyKCkubG9hZFVSTEludG9DaGlsZEZyYW1lKHVybCwg
cmVmZXJyZXIsIGNoaWxkRnJhbWUuZ2V0KCkpOwogCiAgICAgLy8gVGhlIGZyYW1lJ3Mgb25sb2Fk
IGhhbmRsZXIgbWF5IGhhdmUgcmVtb3ZlZCBpdCBmcm9tIHRoZSBkb2N1bWVudC4KICAgICBpZiAo
IWNoaWxkRnJhbWUtPnRyZWUoKS5wYXJlbnQoKSkKQEAgLTExMzAsNyArMTEyMiw3IEBAIHZvaWQg
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmFpbFRvU3RhcnRQbHVnaW4oY29uc3Qg
UGx1Z2luVmlldyogcGx1Z2luCiAgICAgcmVzb3VyY2VMb2FkRGVsZWdhdGUtPnBsdWdJbkZhaWxl
ZFdpdGhFcnJvcih3ZWJWaWV3LCBlcnJvci5nZXQoKSwgZ2V0V2ViRGF0YVNvdXJjZShmcmFtZS0+
bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSkpOwogfQogCi1SZWZQdHI8V2lkZ2V0PiBXZWJGcmFt
ZUxvYWRlckNsaWVudDo6Y3JlYXRlUGx1Z2luKGNvbnN0IEludFNpemUmIHBsdWdpblNpemUsIEhU
TUxQbHVnSW5FbGVtZW50KiBlbGVtZW50LCBjb25zdCBVUkwmIHVybCwgY29uc3QgVmVjdG9yPFN0
cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcywgY29u
c3QgU3RyaW5nJiBtaW1lVHlwZSwgYm9vbCBsb2FkTWFudWFsbHkpCitSZWZQdHI8V2lkZ2V0PiBX
ZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlUGx1Z2luKGNvbnN0IEludFNpemUmIHBsdWdpblNp
emUsIEhUTUxQbHVnSW5FbGVtZW50JiBlbGVtZW50LCBjb25zdCBVUkwmIHVybCwgY29uc3QgVmVj
dG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVl
cywgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgYm9vbCBsb2FkTWFudWFsbHkpCiB7CiAgICAgV2Vi
Vmlldyogd2ViVmlldyA9IG1fd2ViRnJhbWUtPndlYlZpZXcoKTsKIApAQCAtMTE0NCw3ICsxMTM2
LDcgQEAgUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihj
b25zdCBJbnRTaXplJiBwbHVnaW5TaXplLCBIVE0KICAgICAgICAgICAgIGZvciAodW5zaWduZWQg
aSA9IDA7IGkgPCBwYXJhbU5hbWVzLnNpemUoKTsgaSsrKSAKICAgICAgICAgICAgICAgICB2aWV3
QXJndW1lbnRzLnNldChwYXJhbU5hbWVzW2ldLCBwYXJhbVZhbHVlc1tpXSk7CiAgICAgICAgICAg
ICBDT01QdHI8SVByb3BlcnR5QmFnPiB2aWV3QXJndW1lbnRzQmFnKEFkb3B0Q09NLCBDT01Qcm9w
ZXJ0eUJhZzxTdHJpbmc+OjphZG9wdCh2aWV3QXJndW1lbnRzKSk7Ci0gICAgICAgICAgICBDT01Q
dHI8SURPTUVsZW1lbnQ+IGNvbnRhaW5pbmdFbGVtZW50KEFkb3B0Q09NLCBET01FbGVtZW50Ojpj
cmVhdGVJbnN0YW5jZShlbGVtZW50KSk7CisgICAgICAgICAgICBDT01QdHI8SURPTUVsZW1lbnQ+
IGNvbnRhaW5pbmdFbGVtZW50KEFkb3B0Q09NLCBET01FbGVtZW50OjpjcmVhdGVJbnN0YW5jZSgm
ZWxlbWVudCkpOwogCiAgICAgICAgICAgICBIYXNoTWFwPFN0cmluZywgQ09NVmFyaWFudD4gYXJn
dW1lbnRzOwogCkBAIC0xMTYyLDEzICsxMTU0LDEzIEBAIFJlZlB0cjxXaWRnZXQ+IFdlYkZyYW1l
TG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYgcGx1Z2luU2l6ZSwgSFRN
CiAgICAgICAgICAgICAgICAgSFJFU1VMVCBociA9IHdlYlZpZXctPnZpZXdXaW5kb3coJnBhcmVu
dFdpbmRvdyk7CiAgICAgICAgICAgICAgICAgQVNTRVJUKFNVQ0NFRURFRChocikpOwogCi0gICAg
ICAgICAgICAgICAgcmV0dXJuIEVtYmVkZGVkV2lkZ2V0OjpjcmVhdGUodmlldy5nZXQoKSwgZWxl
bWVudCwgcGFyZW50V2luZG93LCBwbHVnaW5TaXplKTsKKyAgICAgICAgICAgICAgICByZXR1cm4g
RW1iZWRkZWRXaWRnZXQ6OmNyZWF0ZSh2aWV3LmdldCgpLCAmZWxlbWVudCwgcGFyZW50V2luZG93
LCBwbHVnaW5TaXplKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0KIAogICAgIEZy
YW1lKiBmcmFtZSA9IGNvcmUobV93ZWJGcmFtZSk7Ci0gICAgUmVmUHRyPFBsdWdpblZpZXc+IHBs
dWdpblZpZXcgPSBQbHVnaW5WaWV3OjpjcmVhdGUoZnJhbWUsIHBsdWdpblNpemUsIGVsZW1lbnQs
IHVybCwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMsIG1pbWVUeXBlLCBsb2FkTWFudWFsbHkpOwor
ICAgIFJlZlB0cjxQbHVnaW5WaWV3PiBwbHVnaW5WaWV3ID0gUGx1Z2luVmlldzo6Y3JlYXRlKGZy
YW1lLCBwbHVnaW5TaXplLCAmZWxlbWVudCwgdXJsLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcywg
bWltZVR5cGUsIGxvYWRNYW51YWxseSk7CiAKICAgICBpZiAocGx1Z2luVmlldy0+c3RhdHVzKCkg
PT0gUGx1Z2luU3RhdHVzTG9hZGVkU3VjY2Vzc2Z1bGx5KQogICAgICAgICByZXR1cm4gcGx1Z2lu
VmlldzsKQEAgLTExODcsMTggKzExNzksMTggQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
cmVkaXJlY3REYXRhVG9QbHVnaW4oV2lkZ2V0KiBwbHVnaW5XaWRnZXQpCiAgICAgICAgIG1fbWFu
dWFsTG9hZGVyID0gc3RhdGljX2Nhc3Q8RW1iZWRkZWRXaWRnZXQqPihwbHVnaW5XaWRnZXQpOwog
fQogCi1QYXNzUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUphdmFB
cHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYgcGx1Z2luU2l6ZSwgSFRNTEFwcGxldEVsZW1lbnQq
IGVsZW1lbnQsIGNvbnN0IFVSTCYgLypiYXNlVVJMKi8sIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBw
YXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpCitSZWZQdHI8V2lk
Z2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJ
bnRTaXplJiBwbHVnaW5TaXplLCBIVE1MQXBwbGV0RWxlbWVudCYgZWxlbWVudCwgY29uc3QgVVJM
JiAvKmJhc2VVUkwqLywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZl
Y3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykKIHsKLSAgICBSZWZQdHI8UGx1Z2luVmlldz4gcGx1
Z2luVmlldyA9IFBsdWdpblZpZXc6OmNyZWF0ZShjb3JlKG1fd2ViRnJhbWUpLCBwbHVnaW5TaXpl
LCBlbGVtZW50LCBVUkwoKSwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMsICJhcHBsaWNhdGlvbi94
LWphdmEtYXBwbGV0IiwgZmFsc2UpOworICAgIFJlZlB0cjxQbHVnaW5WaWV3PiBwbHVnaW5WaWV3
ID0gUGx1Z2luVmlldzo6Y3JlYXRlKGNvcmUobV93ZWJGcmFtZSksIHBsdWdpblNpemUsICZlbGVt
ZW50LCBVUkwoKSwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMsICJhcHBsaWNhdGlvbi94LWphdmEt
YXBwbGV0IiwgZmFsc2UpOwogCiAgICAgLy8gQ2hlY2sgaWYgdGhlIHBsdWdpbiBjYW4gYmUgbG9h
ZGVkIHN1Y2Nlc3NmdWxseQogICAgIGlmIChwbHVnaW5WaWV3LT5wbHVnaW4oKSAmJiBwbHVnaW5W
aWV3LT5wbHVnaW4oKS0+bG9hZCgpKQotICAgICAgICByZXR1cm4gcGx1Z2luVmlldzsKKyAgICAg
ICAgcmV0dXJuIFdURk1vdmUocGx1Z2luVmlldyk7CiAKICAgICBXZWJWaWV3KiB3ZWJWaWV3ID0g
bV93ZWJGcmFtZS0+d2ViVmlldygpOwogICAgIENPTVB0cjxJV2ViUmVzb3VyY2VMb2FkRGVsZWdh
dGU+IHJlc291cmNlTG9hZERlbGVnYXRlOwogICAgIGlmIChGQUlMRUQod2ViVmlldy0+cmVzb3Vy
Y2VMb2FkRGVsZWdhdGUoJnJlc291cmNlTG9hZERlbGVnYXRlKSkpCi0gICAgICAgIHJldHVybiBw
bHVnaW5WaWV3OworICAgICAgICByZXR1cm4gV1RGTW92ZShwbHVnaW5WaWV3KTsKIAogICAgIENP
TVB0cjxDRkRpY3Rpb25hcnlQcm9wZXJ0eUJhZz4gdXNlckluZm9CYWcgPSBDRkRpY3Rpb25hcnlQ
cm9wZXJ0eUJhZzo6Y3JlYXRlSW5zdGFuY2UoKTsKIApAQCAtMTIxMCw3ICsxMjAyLDcgQEAgUGFz
c1JlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lk
Z2V0KGNvbnN0IEludFNpemUmIHAKIAogICAgIHJlc291cmNlTG9hZERlbGVnYXRlLT5wbHVnSW5G
YWlsZWRXaXRoRXJyb3Iod2ViVmlldywgZXJyb3IuZ2V0KCksIGdldFdlYkRhdGFTb3VyY2UoY29y
ZUZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKSk7CiAKLSAgICByZXR1cm4gcGx1Z2lu
VmlldzsKKyAgICByZXR1cm4gV1RGTW92ZShwbHVnaW5WaWV3KTsKIH0KIAogV2ViSGlzdG9yeSog
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OndlYkhpc3RvcnkoKSBjb25zdApAQCAtMTI2MCw3ICsxMjUy
LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6cmVnaXN0ZXJGb3JJY29uTm90aWZpY2F0
aW9uKGJvb2wgbGlzdGVuKQogICAgIG1fd2ViRnJhbWUtPndlYlZpZXcoKS0+cmVnaXN0ZXJGb3JJ
Y29uTm90aWZpY2F0aW9uKGxpc3Rlbik7CiB9CiAKLVBhc3NSZWZQdHI8RnJhbWVOZXR3b3JraW5n
Q29udGV4dD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkK
K1JlZjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRl
TmV0d29ya2luZ0NvbnRleHQoKQogewogICAgIHJldHVybiBXZWJGcmFtZU5ldHdvcmtpbmdDb250
ZXh0OjpjcmVhdGUoY29yZShtX3dlYkZyYW1lKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oIGIvU291cmNlL1dl
YktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaAppbmRleCA4Y2E5
YjlkZWNkMTljZWM5N2U0YmE3ZDNkNTE2ODY0Y2UxODllZTc4Li5jNzY1NzVjOGNkOWJlZmU1OWYz
NDA3NTY2YmE5MjU3YzFiZDRjMTZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJD
b3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvd2lu
L1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKQEAgLTEsNSArMSw1IEBACiAv
KgotICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC00OSw5ICs0OSw5IEBA
IHB1YmxpYzoKICAgICB2b2lkIHNldFdlYkZyYW1lKFdlYkZyYW1lKiB3ZWJGcmFtZSkgeyBtX3dl
YkZyYW1lID0gd2ViRnJhbWU7IH0KICAgICBXZWJGcmFtZSogd2ViRnJhbWUoKSBjb25zdCB7IHJl
dHVybiBtX3dlYkZyYW1lOyB9CiAKLSAgICB2aXJ0dWFsIGJvb2wgaGFzV2ViVmlldygpIGNvbnN0
OworICAgIGJvb2wgaGFzV2ViVmlldygpIGNvbnN0IG92ZXJyaWRlOwogCi0gICAgdmlydHVhbCBQ
YXNzUmVmUHRyPFdlYkNvcmU6OkZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZU5ldHdvcmtp
bmdDb250ZXh0KCk7CisgICAgUmVmPFdlYkNvcmU6OkZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IGNy
ZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkgb3ZlcnJpZGU7CiAKICAgICB2b2lkIGZyYW1lTG9hZGVy
RGVzdHJveWVkKCkgb3ZlcnJpZGU7CiAgICAgdm9pZCBtYWtlUmVwcmVzZW50YXRpb24oV2ViQ29y
ZTo6RG9jdW1lbnRMb2FkZXIqKSBvdmVycmlkZTsKQEAgLTYzLDcgKzYzLDcgQEAgcHVibGljOgog
ICAgIHZvaWQgZGV0YWNoZWRGcm9tUGFyZW50MygpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBjb252
ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxvYWQoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBX
ZWJDb3JlOjpTZXNzaW9uSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQg
YXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
LCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYpOworICAgIHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5k
UmVxdWVzdChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNw
b25zZSYgcmVkaXJlY3RSZXNwb25zZSkgb3ZlcnJpZGU7CiAgICAgYm9vbCBzaG91bGRVc2VDcmVk
ZW50aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllcikgb3ZlcnJpZGU7CkBAIC03Miw3ICs3Miw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGRp
c3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoKSBvdmVycmlkZTsKICAgICB2
b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllcikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaXNwYXRjaERpZEZh
aWxMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7Ci0gICAgdmlydHVh
bCBib29sIHNob3VsZENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNp
Z25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBj
b25zdCB1bnNpZ25lZCBjaGFyKiBkYXRhLCB1bnNpZ25lZCBsb25nIGxvbmcgbGVuZ3RoKTsKKyAg
ICBib29sIHNob3VsZENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNp
Z25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBj
b25zdCB1bnNpZ25lZCBjaGFyKiBkYXRhLCB1bnNpZ25lZCBsb25nIGxvbmcgbGVuZ3RoKSBvdmVy
cmlkZTsKIAogICAgIHZvaWQgZGlzcGF0Y2hEaWREaXNwYXRjaE9ubG9hZEV2ZW50cygpIG92ZXJy
aWRlOwogICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlU2VydmVyUmVkaXJlY3RGb3JQcm92aXNp
b25hbExvYWQoKSBvdmVycmlkZTsKQEAgLTk0LDE0ICs5NCwxNCBAQCBwdWJsaWM6CiAgICAgdm9p
ZCBkaXNwYXRjaERpZFJlYWNoTGF5b3V0TWlsZXN0b25lKFdlYkNvcmU6OkxheW91dE1pbGVzdG9u
ZXMpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvclJlc3BvbnNl
KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZVJlcXVlc3QmLCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBvdmVycmlkZTsKLSAgICB2
b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IFdlYkNvcmU6
Ok5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBQYXNz
UmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4sIGNvbnN0IFdURjo6U3RyaW5nJiBmcmFtZU5hbWUs
IFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0
Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRp
b25BY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPFdl
YkNvcmU6OkZvcm1TdGF0ZT4sIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRl
OworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3Qg
V2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYsIFdlYkNvcmU6OkZvcm1TdGF0ZSosIGNvbnN0IFdURjo6U3RyaW5nJiBmcmFtZU5hbWUsIFdl
YkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hE
ZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25B
Y3Rpb24mLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpGb3JtU3Rh
dGUqLCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBvdmVycmlkZTsKICAgICB2b2lkIGNh
bmNlbFBvbGljeUNoZWNrKCkgb3ZlcnJpZGU7CiAKICAgICB2b2lkIGRpc3BhdGNoVW5hYmxlVG9J
bXBsZW1lbnRQb2xpY3koY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwog
Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoUGFzc1JlZlB0cjxXZWJDb3Jl
OjpGb3JtU3RhdGU+KSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0o
UGFzc1JlZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+LCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0
aW9uKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChSZWY8
V2ViQ29yZTo6Rm9ybVN0YXRlPiYmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFN1
Ym1pdEZvcm0oV2ViQ29yZTo6Rm9ybVN0YXRlJiwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlv
bikgb3ZlcnJpZGU7CiAKICAgICB2b2lkIHJldmVydFRvUHJvdmlzaW9uYWxTdGF0ZShXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciopIG92ZXJyaWRlOwogICAgIGJvb2wgZGlzcGF0Y2hEaWRMb2FkUmVz
b3VyY2VGcm9tTWVtb3J5Q2FjaGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwg
aW50IGxlbmd0aCkgb3ZlcnJpZGU7CkBAIC0xMTQsOSArMTE0LDkgQEAgcHVibGljOgogCiAgICAg
dm9pZCBzdGFydERvd25sb2FkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0
IFN0cmluZyYgc3VnZ2VzdGVkTmFtZSA9IFN0cmluZygpKSBvdmVycmlkZTsKIAotICAgIHZpcnR1
YWwgdm9pZCBwcm9ncmVzc1N0YXJ0ZWQoV2ViQ29yZTo6RnJhbWUmKTsKLSAgICB2aXJ0dWFsIHZv
aWQgcHJvZ3Jlc3NFc3RpbWF0ZUNoYW5nZWQoV2ViQ29yZTo6RnJhbWUmKTsKLSAgICB2aXJ0dWFs
IHZvaWQgcHJvZ3Jlc3NGaW5pc2hlZChXZWJDb3JlOjpGcmFtZSYpOworICAgIHZvaWQgcHJvZ3Jl
c3NTdGFydGVkKFdlYkNvcmU6OkZyYW1lJikgb3ZlcnJpZGU7CisgICAgdm9pZCBwcm9ncmVzc0Vz
dGltYXRlQ2hhbmdlZChXZWJDb3JlOjpGcmFtZSYpIG92ZXJyaWRlOworICAgIHZvaWQgcHJvZ3Jl
c3NGaW5pc2hlZChXZWJDb3JlOjpGcmFtZSYpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBjb21taXR0
ZWRMb2FkKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgY2hhciosIGludCkgb3ZlcnJp
ZGU7CiAgICAgdm9pZCBmaW5pc2hlZExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBv
dmVycmlkZTsKQEAgLTE0OSwxMCArMTQ5LDEwIEBAIHB1YmxpYzoKIAogICAgIFdURjo6U3RyaW5n
IHVzZXJBZ2VudChjb25zdCBXZWJDb3JlOjpVUkwmKSBvdmVycmlkZTsKIAotICAgIHZpcnR1YWwg
UmVmPFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyPiBjcmVhdGVEb2N1bWVudExvYWRlcihjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpTdWJzdGl0dXRlRGF0YSYp
OworICAgIFJlZjxXZWJDb3JlOjpEb2N1bWVudExvYWRlcj4gY3JlYXRlRG9jdW1lbnRMb2FkZXIo
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6U3Vic3RpdHV0
ZURhdGEmKSBvdmVycmlkZTsKICAgICB2b2lkIHVwZGF0ZUNhY2hlZERvY3VtZW50TG9hZGVyKFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyJikgb3ZlcnJpZGUgeyB9CiAKLSAgICB2aXJ0dWFsIHZvaWQg
c2V0VGl0bGUoY29uc3QgV2ViQ29yZTo6U3RyaW5nV2l0aERpcmVjdGlvbiYsIGNvbnN0IFdlYkNv
cmU6OlVSTCYpOworICAgIHZvaWQgc2V0VGl0bGUoY29uc3QgV2ViQ29yZTo6U3RyaW5nV2l0aERp
cmVjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlVSTCYpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBzYXZl
UGxhdGZvcm1EYXRhVG9DYWNoZWRGcmFtZShXZWJDb3JlOjpDYWNoZWRGcmFtZSopIG92ZXJyaWRl
OwogICAgIHZvaWQgdHJhbnNpdGlvblRvQ29tbWl0dGVkRnJvbUNhY2hlZEZyYW1lKFdlYkNvcmU6
OkNhY2hlZEZyYW1lKikgb3ZlcnJpZGU7CkBAIC0xNzYsMTUgKzE3NiwxNSBAQCBwdWJsaWM6CiAK
ICAgICB2b2lkIGRpc3BhdGNoRGlkQmVjb21lRnJhbWVzZXQoYm9vbCkgb3ZlcnJpZGU7CiAKLSAg
ICB2aXJ0dWFsIGJvb2wgY2FuQ2FjaGVQYWdlKCkgY29uc3Q7CisgICAgYm9vbCBjYW5DYWNoZVBh
Z2UoKSBjb25zdCBvdmVycmlkZTsKIAotICAgIFJlZlB0cjxXZWJDb3JlOjpGcmFtZT4gY3JlYXRl
RnJhbWUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgV1RGOjpTdHJpbmcmIG5hbWUsIFdlYkNv
cmU6OkhUTUxGcmFtZU93bmVyRWxlbWVudCosCisgICAgUmVmUHRyPFdlYkNvcmU6OkZyYW1lPiBj
cmVhdGVGcmFtZShjb25zdCBXZWJDb3JlOjpVUkwmLCBjb25zdCBXVEY6OlN0cmluZyYgbmFtZSwg
V2ViQ29yZTo6SFRNTEZyYW1lT3duZXJFbGVtZW50JiwKICAgICAgICAgY29uc3QgV1RGOjpTdHJp
bmcmIHJlZmVycmVyLCBib29sIGFsbG93c1Njcm9sbGluZywgaW50IG1hcmdpbldpZHRoLCBpbnQg
bWFyZ2luSGVpZ2h0KSBvdmVycmlkZTsKLSAgICBSZWZQdHI8V2ViQ29yZTo6V2lkZ2V0PiBjcmVh
dGVQbHVnaW4oY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVt
ZW50KiwgY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgVmVjdG9yPFdURjo6U3RyaW5nPiYsIGNv
bnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mLCBjb25zdCBXVEY6OlN0cmluZyYsIGJvb2wgbG9hZE1h
bnVhbGx5KSBvdmVycmlkZTsKKyAgICBSZWZQdHI8V2ViQ29yZTo6V2lkZ2V0PiBjcmVhdGVQbHVn
aW4oY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50Jiwg
Y29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgVmVjdG9yPFdURjo6U3RyaW5nPiYsIGNvbnN0IFZl
Y3RvcjxXVEY6OlN0cmluZz4mLCBjb25zdCBXVEY6OlN0cmluZyYsIGJvb2wgbG9hZE1hbnVhbGx5
KSBvdmVycmlkZTsKICAgICB2b2lkIHJlY3JlYXRlUGx1Z2luKFdlYkNvcmU6OldpZGdldCopIG92
ZXJyaWRlIHsgfQogICAgIHZvaWQgcmVkaXJlY3REYXRhVG9QbHVnaW4oV2ViQ29yZTo6V2lkZ2V0
KiBwbHVnaW5XaWRnZXQpIG92ZXJyaWRlOwogCi0gICAgUGFzc1JlZlB0cjxXZWJDb3JlOjpXaWRn
ZXQ+IGNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNv
cmU6OkhUTUxBcHBsZXRFbGVtZW50KiwgY29uc3QgV2ViQ29yZTo6VVJMJiBiYXNlVVJMLCBjb25z
dCBWZWN0b3I8V1RGOjpTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8V1RGOjpTdHJp
bmc+JiBwYXJhbVZhbHVlcykgb3ZlcnJpZGU7CisgICAgUmVmUHRyPFdlYkNvcmU6OldpZGdldD4g
Y3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBXZWJDb3JlOjpJbnRTaXplJiwgV2ViQ29yZTo6
SFRNTEFwcGxldEVsZW1lbnQmLCBjb25zdCBXZWJDb3JlOjpVUkwmIGJhc2VVUkwsIGNvbnN0IFZl
Y3RvcjxXVEY6OlN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4m
IHBhcmFtVmFsdWVzKSBvdmVycmlkZTsKIAogICAgIFdlYkNvcmU6Ok9iamVjdENvbnRlbnRUeXBl
IG9iamVjdENvbnRlbnRUeXBlKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNvbnN0IFdURjo6U3RyaW5n
JiBtaW1lVHlwZSkgb3ZlcnJpZGU7CiAgICAgV1RGOjpTdHJpbmcgb3ZlcnJpZGVNZWRpYVR5cGUo
KSBjb25zdCBvdmVycmlkZTsKQEAgLTE5NiwyMCArMTk2LDE4IEBAIHB1YmxpYzoKIAogICAgIHZv
aWQgcmVnaXN0ZXJGb3JJY29uTm90aWZpY2F0aW9uKGJvb2wgbGlzdGVuKSBvdmVycmlkZTsKIAot
ICAgIHZpcnR1YWwgYm9vbCBzaG91bGRBbHdheXNVc2VQbHVnaW5Eb2N1bWVudChjb25zdCBXVEY6
OlN0cmluZyYgbWltZVR5cGUpIGNvbnN0OwotCi0gICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoRGlk
RmFpbFRvU3RhcnRQbHVnaW4oY29uc3QgV2ViQ29yZTo6UGx1Z2luVmlldyopIGNvbnN0OworICAg
IGJvb2wgc2hvdWxkQWx3YXlzVXNlUGx1Z2luRG9jdW1lbnQoY29uc3QgV1RGOjpTdHJpbmcmIG1p
bWVUeXBlKSBjb25zdCBvdmVycmlkZTsKIAogICAgIHZvaWQgcHJlZmV0Y2hETlMoY29uc3QgU3Ry
aW5nJikgb3ZlcnJpZGU7CiAKLXByb3RlY3RlZDoKLSAgICBjbGFzcyBXZWJGcmFtZVBvbGljeUxp
c3RlbmVyUHJpdmF0ZTsKLSAgICBzdGQ6OnVuaXF1ZV9wdHI8V2ViRnJhbWVQb2xpY3lMaXN0ZW5l
clByaXZhdGU+IG1fcG9saWN5TGlzdGVuZXJQcml2YXRlOwotCiBwcml2YXRlOgotICAgIFJlZlB0
cjxXZWJDb3JlOjpGcmFtZT4gY3JlYXRlRnJhbWUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3Qg
V1RGOjpTdHJpbmcmIG5hbWUsIFdlYkNvcmU6OkhUTUxGcmFtZU93bmVyRWxlbWVudCosIGNvbnN0
IFdURjo6U3RyaW5nJiByZWZlcnJlcik7CiAgICAgV2ViSGlzdG9yeSogd2ViSGlzdG9yeSgpIGNv
bnN0OwogCisgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxUb1N0YXJ0UGx1Z2luKGNvbnN0IFdlYkNv
cmU6OlBsdWdpblZpZXcqKSBjb25zdDsKKworICAgIGNsYXNzIFdlYkZyYW1lUG9saWN5TGlzdGVu
ZXJQcml2YXRlOworICAgIHN0ZDo6dW5pcXVlX3B0cjxXZWJGcmFtZVBvbGljeUxpc3RlbmVyUHJp
dmF0ZT4gbV9wb2xpY3lMaXN0ZW5lclByaXZhdGU7CisKICAgICBXZWJGcmFtZSogbV93ZWJGcmFt
ZTsKIAogICAgIC8vIFBvaW50cyB0byB0aGUgbWFudWFsIGxvYWRlciB0aGF0IGRhdGEgc2hvdWxk
IGJlIHJlZGlyZWN0ZWQgdG8uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3Jl
U3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0LmggYi9Tb3VyY2UvV2ViS2l0L3dpbi9X
ZWJDb3JlU3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0LmgKaW5kZXggZWFjMzA3MjBh
YzFhNTRmODY1MTAxYmZmNTE0MGM3NGRlMGFmYjBmOS4uZmIyYTc4MzVkOGY4NzM5ZDRjMTUwYWI1
MjgzZTViN2QyMGI1OGVhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1
cHBvcnQvV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvd2lu
L1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQuaApAQCAtMjgsOSArMjgs
OSBAQAogCiBjbGFzcyBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0IDogcHVibGljIFdlYkNvcmU6
OkZyYW1lTmV0d29ya2luZ0NvbnRleHQgewogcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRy
PFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZShXZWJDb3JlOjpGcmFtZSogZnJhbWUp
CisgICAgc3RhdGljIFJlZjxXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBjcmVhdGUoV2ViQ29y
ZTo6RnJhbWUqIGZyYW1lKQogICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBXZWJG
cmFtZU5ldHdvcmtpbmdDb250ZXh0KGZyYW1lKSk7CisgICAgICAgIHJldHVybiBhZG9wdFJlZigq
bmV3IFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQoZnJhbWUpKTsKICAgICB9CiAKICNpZiBVU0Uo
Q0ZVUkxDT05ORUNUSU9OKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSVdl
YkFyY2hpdmUuaCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUElXZWJBcmNoaXZlLmgKaW5kZXgg
ZDk2YjU5NmRhYmZiZTkwNjhhYzUzNDEwNjg3YmZhMmQxODYxOGIyMy4uODM3NTc3N2RiODBmZTA3
ZWFjODM0OTMwMzNiZDE4NjRhYmFjN2E3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hh
cmVkL0FQSVdlYkFyY2hpdmUuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJV2ViQXJj
aGl2ZS5oCkBAIC0yOSw3ICsyOSw2IEBACiAjaWYgUExBVEZPUk0oQ09DT0EpCiAKICNpbmNsdWRl
ICJBUElPYmplY3QuaCIKLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0
Zi9SZWZQdHIuaD4KIAogbmFtZXNwYWNlIEFQSSB7CkBAIC01MCw5ICs0OSw5IEBAIGNsYXNzIFdl
YkFyY2hpdmUgOiBwdWJsaWMgQVBJOjpPYmplY3RJbXBsPEFQSTo6T2JqZWN0OjpUeXBlOjpXZWJB
cmNoaXZlPiB7CiBwdWJsaWM6CiAgICAgdmlydHVhbCB+V2ViQXJjaGl2ZSgpOwogCi0gICAgc3Rh
dGljIFJlZjxXZWJBcmNoaXZlPiBjcmVhdGUoV2ViQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3Vy
Y2UsIFBhc3NSZWZQdHI8QVBJOjpBcnJheT4gc3VicmVzb3VyY2VzLCBQYXNzUmVmUHRyPEFQSTo6
QXJyYXk+IHN1YmZyYW1lQXJjaGl2ZXMpOworICAgIHN0YXRpYyBSZWY8V2ViQXJjaGl2ZT4gY3Jl
YXRlKFdlYkFyY2hpdmVSZXNvdXJjZSogbWFpblJlc291cmNlLCBSZWZQdHI8QVBJOjpBcnJheT4m
JiBzdWJyZXNvdXJjZXMsIFJlZlB0cjxBUEk6OkFycmF5PiYmIHN1YmZyYW1lQXJjaGl2ZXMpOwog
ICAgIHN0YXRpYyBSZWY8V2ViQXJjaGl2ZT4gY3JlYXRlKEFQSTo6RGF0YSopOwotICAgIHN0YXRp
YyBSZWY8V2ViQXJjaGl2ZT4gY3JlYXRlKFBhc3NSZWZQdHI8V2ViQ29yZTo6TGVnYWN5V2ViQXJj
aGl2ZT4pOworICAgIHN0YXRpYyBSZWY8V2ViQXJjaGl2ZT4gY3JlYXRlKFJlZlB0cjxXZWJDb3Jl
OjpMZWdhY3lXZWJBcmNoaXZlPiYmKTsKICAgICBzdGF0aWMgUmVmPFdlYkFyY2hpdmU+IGNyZWF0
ZShXZWJDb3JlOjpSYW5nZSopOwogCiAgICAgV2ViQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3Vy
Y2UoKTsKQEAgLTY0LDkgKzYzLDkgQEAgcHVibGljOgogICAgIFdlYkNvcmU6OkxlZ2FjeVdlYkFy
Y2hpdmUqIGNvcmVMZWdhY3lXZWJBcmNoaXZlKCk7CiAKIHByaXZhdGU6Ci0gICAgV2ViQXJjaGl2
ZShXZWJBcmNoaXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSwgUGFzc1JlZlB0cjxBUEk6OkFycmF5
PiBzdWJyZXNvdXJjZXMsIFBhc3NSZWZQdHI8QVBJOjpBcnJheT4gc3ViZnJhbWVBcmNoaXZlcyk7
CisgICAgV2ViQXJjaGl2ZShXZWJBcmNoaXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSwgUmVmUHRy
PEFQSTo6QXJyYXk+JiYgc3VicmVzb3VyY2VzLCBSZWZQdHI8QVBJOjpBcnJheT4mJiBzdWJmcmFt
ZUFyY2hpdmVzKTsKICAgICBXZWJBcmNoaXZlKEFQSTo6RGF0YSopOwotICAgIFdlYkFyY2hpdmUo
UGFzc1JlZlB0cjxXZWJDb3JlOjpMZWdhY3lXZWJBcmNoaXZlPik7CisgICAgV2ViQXJjaGl2ZShS
ZWZQdHI8V2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZT4mJik7CiAKICAgICBSZWZQdHI8V2ViQ29y
ZTo6TGVnYWN5V2ViQXJjaGl2ZT4gbV9sZWdhY3lXZWJBcmNoaXZlOwogICAgIFJlZlB0cjxXZWJB
cmNoaXZlUmVzb3VyY2U+IG1fY2FjaGVkTWFpblJlc291cmNlOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvU2hhcmVkL0FQSVdlYkFyY2hpdmUubW0gYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
QVBJV2ViQXJjaGl2ZS5tbQppbmRleCA5MjkwM2IzNDdhNDlmY2VjZmE2YzM1YzU5ZTJmNmQ2OTE2
ZDk4MmU5Li5mMmYwZmUwMTcxZjllMzMzMTQ0N2QzNmQwYTQ3YzZkYmUwMWEyMzJlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJV2ViQXJjaGl2ZS5tbQorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9TaGFyZWQvQVBJV2ViQXJjaGl2ZS5tbQpAQCAtMzgsOSArMzgsOSBAQCB1c2luZyBu
YW1lc3BhY2UgV2ViQ29yZTsKIAogbmFtZXNwYWNlIEFQSSB7CiAKLVJlZjxXZWJBcmNoaXZlPiBX
ZWJBcmNoaXZlOjpjcmVhdGUoV2ViQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3VyY2UsIFBhc3NS
ZWZQdHI8QVBJOjpBcnJheT4gc3VicmVzb3VyY2VzLCBQYXNzUmVmUHRyPEFQSTo6QXJyYXk+IHN1
YmZyYW1lQXJjaGl2ZXMpCitSZWY8V2ViQXJjaGl2ZT4gV2ViQXJjaGl2ZTo6Y3JlYXRlKFdlYkFy
Y2hpdmVSZXNvdXJjZSogbWFpblJlc291cmNlLCBSZWZQdHI8QVBJOjpBcnJheT4mJiBzdWJyZXNv
dXJjZXMsIFJlZlB0cjxBUEk6OkFycmF5PiYmIHN1YmZyYW1lQXJjaGl2ZXMpCiB7Ci0gICAgcmV0
dXJuIGFkb3B0UmVmKCpuZXcgV2ViQXJjaGl2ZShtYWluUmVzb3VyY2UsIHN1YnJlc291cmNlcywg
c3ViZnJhbWVBcmNoaXZlcykpOworICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYkFyY2hpdmUo
bWFpblJlc291cmNlLCBXVEZNb3ZlKHN1YnJlc291cmNlcyksIFdURk1vdmUoc3ViZnJhbWVBcmNo
aXZlcykpKTsKIH0KIAogUmVmPFdlYkFyY2hpdmU+IFdlYkFyY2hpdmU6OmNyZWF0ZShBUEk6OkRh
dGEqIGRhdGEpCkBAIC00OCw5ICs0OCw5IEBAIFJlZjxXZWJBcmNoaXZlPiBXZWJBcmNoaXZlOjpj
cmVhdGUoQVBJOjpEYXRhKiBkYXRhKQogICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYkFyY2hp
dmUoZGF0YSkpOwogfQogCi1SZWY8V2ViQXJjaGl2ZT4gV2ViQXJjaGl2ZTo6Y3JlYXRlKFBhc3NS
ZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gbGVnYWN5V2ViQXJjaGl2ZSkKK1JlZjxXZWJBcmNoaXZl
PiBXZWJBcmNoaXZlOjpjcmVhdGUoUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+JiYgbGVnYWN5V2Vi
QXJjaGl2ZSkKIHsKLSAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBXZWJBcmNoaXZlKGxlZ2FjeVdl
YkFyY2hpdmUpKTsKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBXZWJBcmNoaXZlKGxlZ2FjeVdl
YkFyY2hpdmUucmVsZWFzZU5vbk51bGwoKSkpOwogfQogCiBSZWY8V2ViQXJjaGl2ZT4gV2ViQXJj
aGl2ZTo6Y3JlYXRlKFJhbmdlKiByYW5nZSkKQEAgLTU4LDMxICs1OCwzMiBAQCBSZWY8V2ViQXJj
aGl2ZT4gV2ViQXJjaGl2ZTo6Y3JlYXRlKFJhbmdlKiByYW5nZSkKICAgICByZXR1cm4gYWRvcHRS
ZWYoKm5ldyBXZWJBcmNoaXZlKExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShyYW5nZSkpKTsKIH0K
IAotV2ViQXJjaGl2ZTo6V2ViQXJjaGl2ZShXZWJBcmNoaXZlUmVzb3VyY2UqIG1haW5SZXNvdXJj
ZSwgUGFzc1JlZlB0cjxBUEk6OkFycmF5PiBzdWJyZXNvdXJjZXMsIFBhc3NSZWZQdHI8QVBJOjpB
cnJheT4gc3ViZnJhbWVBcmNoaXZlcykKK1dlYkFyY2hpdmU6OldlYkFyY2hpdmUoV2ViQXJjaGl2
ZVJlc291cmNlKiBtYWluUmVzb3VyY2UsIFJlZlB0cjxBUEk6OkFycmF5PiYmIHN1YnJlc291cmNl
cywgUmVmUHRyPEFQSTo6QXJyYXk+JiYgc3ViZnJhbWVBcmNoaXZlcykKICAgICA6IG1fY2FjaGVk
TWFpblJlc291cmNlKG1haW5SZXNvdXJjZSkKICAgICAsIG1fY2FjaGVkU3VicmVzb3VyY2VzKHN1
YnJlc291cmNlcykKICAgICAsIG1fY2FjaGVkU3ViZnJhbWVBcmNoaXZlcyhzdWJmcmFtZUFyY2hp
dmVzKQogewotICAgIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IGNvcmVNYWluUmVzb3VyY2UgPSBt
X2NhY2hlZE1haW5SZXNvdXJjZS0+Y29yZUFyY2hpdmVSZXNvdXJjZSgpOworICAgIGF1dG8gY29y
ZU1haW5SZXNvdXJjZSA9IG1fY2FjaGVkTWFpblJlc291cmNlLT5jb3JlQXJjaGl2ZVJlc291cmNl
KCk7CiAKLSAgICBWZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+IGNvcmVBcmNoaXZlUmVz
b3VyY2VzOworICAgIFZlY3RvcjxSZWY8QXJjaGl2ZVJlc291cmNlPj4gY29yZUFyY2hpdmVSZXNv
dXJjZXM7CiAgICAgY29yZUFyY2hpdmVSZXNvdXJjZXMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eSht
X2NhY2hlZFN1YnJlc291cmNlcy0+c2l6ZSgpKTsKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8
IG1fY2FjaGVkU3VicmVzb3VyY2VzLT5zaXplKCk7ICsraSkgewotICAgICAgICBSZWZQdHI8V2Vi
QXJjaGl2ZVJlc291cmNlPiByZXNvdXJjZSA9IG1fY2FjaGVkU3VicmVzb3VyY2VzLT5hdDxXZWJB
cmNoaXZlUmVzb3VyY2U+KGkpOworICAgICAgICBhdXRvIHJlc291cmNlID0gbV9jYWNoZWRTdWJy
ZXNvdXJjZXMtPmF0PFdlYkFyY2hpdmVSZXNvdXJjZT4oaSk7CiAgICAgICAgIEFTU0VSVChyZXNv
dXJjZSk7Ci0gICAgICAgIGNvcmVBcmNoaXZlUmVzb3VyY2VzLnVuY2hlY2tlZEFwcGVuZChyZXNv
dXJjZS0+Y29yZUFyY2hpdmVSZXNvdXJjZSgpKTsKKyAgICAgICAgQVNTRVJUKHJlc291cmNlLT5j
b3JlQXJjaGl2ZVJlc291cmNlKCkpOworICAgICAgICBjb3JlQXJjaGl2ZVJlc291cmNlcy51bmNo
ZWNrZWRBcHBlbmQoKnJlc291cmNlLT5jb3JlQXJjaGl2ZVJlc291cmNlKCkpOwogICAgIH0KIAot
ICAgIFZlY3RvcjxSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4+IGNvcmVTdWJmcmFtZUxlZ2FjeVdl
YkFyY2hpdmVzOworICAgIFZlY3RvcjxSZWY8TGVnYWN5V2ViQXJjaGl2ZT4+IGNvcmVTdWJmcmFt
ZUxlZ2FjeVdlYkFyY2hpdmVzOwogICAgIGNvcmVTdWJmcmFtZUxlZ2FjeVdlYkFyY2hpdmVzLnJl
c2VydmVJbml0aWFsQ2FwYWNpdHkobV9jYWNoZWRTdWJmcmFtZUFyY2hpdmVzLT5zaXplKCkpOwot
CiAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX2NhY2hlZFN1YmZyYW1lQXJjaGl2ZXMtPnNp
emUoKTsgKytpKSB7Ci0gICAgICAgIFJlZlB0cjxXZWJBcmNoaXZlPiBzdWJmcmFtZVdlYkFyY2hp
dmUgPSBtX2NhY2hlZFN1YmZyYW1lQXJjaGl2ZXMtPmF0PFdlYkFyY2hpdmU+KGkpOworICAgICAg
ICBhdXRvIHN1YmZyYW1lV2ViQXJjaGl2ZSA9IG1fY2FjaGVkU3ViZnJhbWVBcmNoaXZlcy0+YXQ8
V2ViQXJjaGl2ZT4oaSk7CiAgICAgICAgIEFTU0VSVChzdWJmcmFtZVdlYkFyY2hpdmUpOwotICAg
ICAgICBjb3JlU3ViZnJhbWVMZWdhY3lXZWJBcmNoaXZlcy51bmNoZWNrZWRBcHBlbmQoc3ViZnJh
bWVXZWJBcmNoaXZlLT5jb3JlTGVnYWN5V2ViQXJjaGl2ZSgpKTsKKyAgICAgICAgQVNTRVJUKHN1
YmZyYW1lV2ViQXJjaGl2ZS0+Y29yZUxlZ2FjeVdlYkFyY2hpdmUoKSk7CisgICAgICAgIGNvcmVT
dWJmcmFtZUxlZ2FjeVdlYkFyY2hpdmVzLnVuY2hlY2tlZEFwcGVuZCgqc3ViZnJhbWVXZWJBcmNo
aXZlLT5jb3JlTGVnYWN5V2ViQXJjaGl2ZSgpKTsKICAgICB9CiAKLSAgICBtX2xlZ2FjeVdlYkFy
Y2hpdmUgPSBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoV1RGTW92ZShjb3JlTWFpblJlc291cmNl
KSwgV1RGTW92ZShjb3JlQXJjaGl2ZVJlc291cmNlcyksIFdURk1vdmUoY29yZVN1YmZyYW1lTGVn
YWN5V2ViQXJjaGl2ZXMpKTsKKyAgICBtX2xlZ2FjeVdlYkFyY2hpdmUgPSBMZWdhY3lXZWJBcmNo
aXZlOjpjcmVhdGUoKmNvcmVNYWluUmVzb3VyY2UsIFdURk1vdmUoY29yZUFyY2hpdmVSZXNvdXJj
ZXMpLCBXVEZNb3ZlKGNvcmVTdWJmcmFtZUxlZ2FjeVdlYkFyY2hpdmVzKSk7CiB9CiAKIFdlYkFy
Y2hpdmU6OldlYkFyY2hpdmUoQVBJOjpEYXRhKiBkYXRhKQpAQCAtOTAsNyArOTEsNyBAQCBXZWJB
cmNoaXZlOjpXZWJBcmNoaXZlKEFQSTo6RGF0YSogZGF0YSkKICAgICBtX2xlZ2FjeVdlYkFyY2hp
dmUgPSBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoU2hhcmVkQnVmZmVyOjpjcmVhdGUoZGF0YS0+
Ynl0ZXMoKSwgZGF0YS0+c2l6ZSgpKS5nZXQoKSk7CiB9CiAKLVdlYkFyY2hpdmU6OldlYkFyY2hp
dmUoUGFzc1JlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBsZWdhY3lXZWJBcmNoaXZlKQorV2ViQXJj
aGl2ZTo6V2ViQXJjaGl2ZShSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4mJiBsZWdhY3lXZWJBcmNo
aXZlKQogICAgIDogbV9sZWdhY3lXZWJBcmNoaXZlKGxlZ2FjeVdlYkFyY2hpdmUpCiB7CiB9CkBA
IC0xMTEsMTAgKzExMiw4IEBAIEFQSTo6QXJyYXkqIFdlYkFyY2hpdmU6OnN1YnJlc291cmNlcygp
CiAgICAgaWYgKCFtX2NhY2hlZFN1YnJlc291cmNlcykgewogICAgICAgICBWZWN0b3I8UmVmUHRy
PEFQSTo6T2JqZWN0Pj4gc3VicmVzb3VyY2VzOwogICAgICAgICBzdWJyZXNvdXJjZXMucmVzZXJ2
ZUluaXRpYWxDYXBhY2l0eShtX2xlZ2FjeVdlYkFyY2hpdmUtPnN1YnJlc291cmNlcygpLnNpemUo
KSk7Ci0KLSAgICAgICAgZm9yIChjb25zdCBhdXRvJiBzdWJyZXNvdXJjZSA6IG1fbGVnYWN5V2Vi
QXJjaGl2ZS0+c3VicmVzb3VyY2VzKCkpCi0gICAgICAgICAgICBzdWJyZXNvdXJjZXMudW5jaGVj
a2VkQXBwZW5kKFdlYkFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKHN1YnJlc291cmNlKSk7Ci0KKyAg
ICAgICAgZm9yIChhdXRvJiBzdWJyZXNvdXJjZSA6IG1fbGVnYWN5V2ViQXJjaGl2ZS0+c3VicmVz
b3VyY2VzKCkpCisgICAgICAgICAgICBzdWJyZXNvdXJjZXMudW5jaGVja2VkQXBwZW5kKFdlYkFy
Y2hpdmVSZXNvdXJjZTo6Y3JlYXRlKHN1YnJlc291cmNlLnB0cigpKSk7CiAgICAgICAgIG1fY2Fj
aGVkU3VicmVzb3VyY2VzID0gQVBJOjpBcnJheTo6Y3JlYXRlKFdURk1vdmUoc3VicmVzb3VyY2Vz
KSk7CiAgICAgfQogCkBAIC0xMjYsMTAgKzEyNSw4IEBAIEFQSTo6QXJyYXkqIFdlYkFyY2hpdmU6
OnN1YmZyYW1lQXJjaGl2ZXMoKQogICAgIGlmICghbV9jYWNoZWRTdWJmcmFtZUFyY2hpdmVzKSB7
CiAgICAgICAgIFZlY3RvcjxSZWZQdHI8QVBJOjpPYmplY3Q+PiBzdWJmcmFtZVdlYkFyY2hpdmVz
OwogICAgICAgICBzdWJmcmFtZVdlYkFyY2hpdmVzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobV9s
ZWdhY3lXZWJBcmNoaXZlLT5zdWJmcmFtZUFyY2hpdmVzKCkuc2l6ZSgpKTsKLQotICAgICAgICBm
b3IgKGNvbnN0IGF1dG8mIHN1YmZyYW1lQXJjaGl2ZSA6IG1fbGVnYWN5V2ViQXJjaGl2ZS0+c3Vi
ZnJhbWVBcmNoaXZlcygpKQotICAgICAgICAgICAgc3ViZnJhbWVXZWJBcmNoaXZlcy51bmNoZWNr
ZWRBcHBlbmQoV2ViQXJjaGl2ZTo6Y3JlYXRlKHN0YXRpY19jYXN0PExlZ2FjeVdlYkFyY2hpdmUq
PihzdWJmcmFtZUFyY2hpdmUuZ2V0KCkpKSk7Ci0KKyAgICAgICAgZm9yIChhdXRvJiBzdWJmcmFt
ZUFyY2hpdmUgOiBtX2xlZ2FjeVdlYkFyY2hpdmUtPnN1YmZyYW1lQXJjaGl2ZXMoKSkKKyAgICAg
ICAgICAgIHN1YmZyYW1lV2ViQXJjaGl2ZXMudW5jaGVja2VkQXBwZW5kKFdlYkFyY2hpdmU6OmNy
ZWF0ZShzdGF0aWNfY2FzdDxMZWdhY3lXZWJBcmNoaXZlKj4oc3ViZnJhbWVBcmNoaXZlLnB0cigp
KSkpOwogICAgICAgICBtX2NhY2hlZFN1YmZyYW1lQXJjaGl2ZXMgPSBBUEk6OkFycmF5OjpjcmVh
dGUoV1RGTW92ZShzdWJmcmFtZVdlYkFyY2hpdmVzKSk7CiAgICAgfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9TaGFyZWQvVGV4dENoZWNrZXJTdGF0ZS5oIGIvU291cmNlL1dlYktpdDIv
U2hhcmVkL1RleHRDaGVja2VyU3RhdGUuaAppbmRleCBiY2M5ZmVjY2NjYjJmNjliNzY3OTg0Njg1
MTljZDQyYjAzN2NhMmRkLi5jZTY2ZjEwMjUwMjNhYWRlZjg4ZDM1Nzg2Nzg5OTg2MTA5YjJjY2Zi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvVGV4dENoZWNrZXJTdGF0ZS5oCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9UZXh0Q2hlY2tlclN0YXRlLmgKQEAgLTIzLDIzICsy
MywyMiBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5k
ZWYgVGV4dENoZWNrZXJTdGF0ZV9oCi0jZGVmaW5lIFRleHRDaGVja2VyU3RhdGVfaAorI3ByYWdt
YSBvbmNlCiAKICNpbmNsdWRlICJBcmd1bWVudENvZGVycy5oIgogCiBuYW1lc3BhY2UgV2ViS2l0
IHsKIAogc3RydWN0IFRleHRDaGVja2VyU3RhdGUgewotICAgIGJvb2wgaXNDb250aW51b3VzU3Bl
bGxDaGVja2luZ0VuYWJsZWQ7Ci0gICAgYm9vbCBpc0dyYW1tYXJDaGVja2luZ0VuYWJsZWQ7Cisg
ICAgYm9vbCBpc0NvbnRpbnVvdXNTcGVsbENoZWNraW5nRW5hYmxlZCB7IGZhbHNlIH07CisgICAg
Ym9vbCBpc0dyYW1tYXJDaGVja2luZ0VuYWJsZWQgeyBmYWxzZSB9OwogCiAjaWYgVVNFKEFQUEtJ
VCkKLSAgICBib29sIGlzQXV0b21hdGljU3BlbGxpbmdDb3JyZWN0aW9uRW5hYmxlZDsKLSAgICBi
b29sIGlzQXV0b21hdGljUXVvdGVTdWJzdGl0dXRpb25FbmFibGVkOwotICAgIGJvb2wgaXNBdXRv
bWF0aWNEYXNoU3Vic3RpdHV0aW9uRW5hYmxlZDsKLSAgICBib29sIGlzQXV0b21hdGljTGlua0Rl
dGVjdGlvbkVuYWJsZWQ7Ci0gICAgYm9vbCBpc0F1dG9tYXRpY1RleHRSZXBsYWNlbWVudEVuYWJs
ZWQ7CisgICAgYm9vbCBpc0F1dG9tYXRpY1NwZWxsaW5nQ29ycmVjdGlvbkVuYWJsZWQgeyBmYWxz
ZSB9OworICAgIGJvb2wgaXNBdXRvbWF0aWNRdW90ZVN1YnN0aXR1dGlvbkVuYWJsZWQgeyBmYWxz
ZSB9OworICAgIGJvb2wgaXNBdXRvbWF0aWNEYXNoU3Vic3RpdHV0aW9uRW5hYmxlZCB7IGZhbHNl
IH07CisgICAgYm9vbCBpc0F1dG9tYXRpY0xpbmtEZXRlY3Rpb25FbmFibGVkIHsgZmFsc2UgfTsK
KyAgICBib29sIGlzQXV0b21hdGljVGV4dFJlcGxhY2VtZW50RW5hYmxlZCB7IGZhbHNlIH07CiAj
ZW5kaWYKIH07CiAKQEAgLTQ4LDUgKzQ3LDMgQEAgc3RydWN0IFRleHRDaGVja2VyU3RhdGUgewog
bmFtZXNwYWNlIElQQyB7CiB0ZW1wbGF0ZTw+IHN0cnVjdCBBcmd1bWVudENvZGVyPFdlYktpdDo6
VGV4dENoZWNrZXJTdGF0ZT4gOiBTaW1wbGVBcmd1bWVudENvZGVyPFdlYktpdDo6VGV4dENoZWNr
ZXJTdGF0ZT4geyB9OwogfTsKLQotI2VuZGlmIC8vIFRleHRDaGVja2VyU3RhdGVfaApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkljb25EYXRhYmFzZS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViSWNvbkRhdGFiYXNlLmNwcAppbmRleCA1NmY1ZGExYTIw
MTNhMDlhNjlhNWZiZWEyNGZlNGE2YmJiYjBhMDA0Li44OTJjMDVmZGFjZjRiMzNhYzg1YzZjNDU1
ZDU4M2E0ZTg3OWZiYmYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2Vi
SWNvbkRhdGFiYXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViSWNvbkRh
dGFiYXNlLmNwcApAQCAtMTMwLDcgKzEzMCw3IEBAIHZvaWQgV2ViSWNvbkRhdGFiYXNlOjpzZXRJ
Y29uRGF0YUZvckljb25VUkwoY29uc3QgSVBDOjpEYXRhUmVmZXJlbmNlJiBpY29uRGF0YSwKICAg
ICBMT0coSWNvbkRhdGFiYXNlLCAiV0syIFVJUHJvY2VzcyBzZXR0aW5nIGljb24gZGF0YSAoJWkg
Ynl0ZXMpIGZvciBwYWdlIFVSTCAlcyIsIChpbnQpaWNvbkRhdGEuc2l6ZSgpLCBpY29uVVJMLmFz
Y2lpKCkuZGF0YSgpKTsKICAgICBpZiAoIW1faWNvbkRhdGFiYXNlSW1wbCkKICAgICAgICAgcmV0
dXJuOwotICAgIG1faWNvbkRhdGFiYXNlSW1wbC0+c2V0SWNvbkRhdGFGb3JJY29uVVJMKFNoYXJl
ZEJ1ZmZlcjo6Y3JlYXRlKGljb25EYXRhLmRhdGEoKSwgaWNvbkRhdGEuc2l6ZSgpKSwgaWNvblVS
TCk7CisgICAgbV9pY29uRGF0YWJhc2VJbXBsLT5zZXRJY29uRGF0YUZvckljb25VUkwoU2hhcmVk
QnVmZmVyOjpjcmVhdGUoaWNvbkRhdGEuZGF0YSgpLCBpY29uRGF0YS5zaXplKCkpLnB0cigpLCBp
Y29uVVJMKTsKIH0KIAogdm9pZCBXZWJJY29uRGF0YWJhc2U6OnN5bmNocm9ub3VzSWNvbkRhdGFG
b3JQYWdlVVJMKGNvbnN0IFN0cmluZyYsIElQQzo6RGF0YVJlZmVyZW5jZSYgaWNvbkRhdGEpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmggYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKaW5kZXggNzU4YzIzOTU5ODUwNTI0
Mzk4NmMwNzM3NTE0OWMzZWVlYjEzNzI4Ni4uNDYwNmRmMTE0YWQ3Nzc0ZTQzNzk0MGU0ZmMwOTg3
YTlmMWFkZjZhZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaApAQCAt
MTg2LDcgKzE4Niw2IEBAIGNsYXNzIFBhZ2VDbGllbnQ7CiBjbGFzcyBSZW1vdGVMYXllclRyZWVT
Y3JvbGxpbmdQZXJmb3JtYW5jZURhdGE7CiBjbGFzcyBSZW1vdGVMYXllclRyZWVUcmFuc2FjdGlv
bjsKIGNsYXNzIFJlbW90ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yUHJveHk7Ci1jbGFzcyBTdHJpbmdQ
YWlyVmVjdG9yOwogY2xhc3MgVXNlckRhdGE7CiBjbGFzcyBWaWV3U25hcHNob3Q7CiBjbGFzcyBW
aXNpdGVkTGlua1N0b3JlOwpAQCAtMjA2LDExICsyMDUsMTIgQEAgY2xhc3MgV2ViUHJvY2Vzc1By
b3h5OwogY2xhc3MgV2ViVXNlckNvbnRlbnRDb250cm9sbGVyUHJveHk7CiBjbGFzcyBXZWJXaGVl
bEV2ZW50OwogY2xhc3MgV2Vic2l0ZURhdGFTdG9yZTsKK2NsYXNzIEdhbWVwYWREYXRhOworCiBz
dHJ1Y3QgQXR0cmlidXRlZFN0cmluZzsKIHN0cnVjdCBDb2xvclNwYWNlRGF0YTsKIHN0cnVjdCBF
ZGl0aW5nUmFuZ2U7CiBzdHJ1Y3QgRWRpdG9yU3RhdGU7Ci1jbGFzcyBHYW1lcGFkRGF0YTsKIHN0
cnVjdCBJbnRlcmFjdGlvbkluZm9ybWF0aW9uUmVxdWVzdDsKIHN0cnVjdCBMb2FkUGFyYW1ldGVy
czsKIHN0cnVjdCBQbGF0Zm9ybVBvcHVwTWVudURhdGE7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5jcHAgYi9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94
eS5jcHAKaW5kZXggMzNmZTU4N2U0MTU3NjM4NDAwMzMxNTA5ZDhmN2IyNTNjNzMzZTg5ZC4uNTQy
ZWRkZDZkYzA5YjNiYWMxNDdlODNlMWNiNzY0NTk4OTg5N2IzNiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9JY29uRGF0YWJhc2UvV2ViSWNvbkRhdGFiYXNlUHJveHkuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSWNvbkRhdGFiYXNlL1dlYkljb25EYXRh
YmFzZVByb3h5LmNwcApAQCAtNDIsMTEgKzQyLDEwIEBAIFdlYkljb25EYXRhYmFzZVByb3h5Ojp+
V2ViSWNvbkRhdGFiYXNlUHJveHkoKQogewogfQogCi1XZWJJY29uRGF0YWJhc2VQcm94eTo6V2Vi
SWNvbkRhdGFiYXNlUHJveHkoV2ViUHJvY2VzcyogcHJvY2VzcykKLSAgICA6IG1faXNFbmFibGVk
KGZhbHNlKQotICAgICwgbV9wcm9jZXNzKHByb2Nlc3MpCitXZWJJY29uRGF0YWJhc2VQcm94eTo6
V2ViSWNvbkRhdGFiYXNlUHJveHkoV2ViUHJvY2VzcyYgcHJvY2VzcykKKyAgICA6IG1fcHJvY2Vz
cyhwcm9jZXNzKQogewotICAgIG1fcHJvY2Vzcy0+YWRkTWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2Vz
OjpXZWJJY29uRGF0YWJhc2VQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCAqdGhpcyk7Cisg
ICAgbV9wcm9jZXNzLmFkZE1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNl
UHJveHk6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSwgKnRoaXMpOwogfQogCiBib29sIFdlYkljb25E
YXRhYmFzZVByb3h5Ojppc0VuYWJsZWQoKSBjb25zdApAQCAtNjUsMTggKzY0LDE4IEBAIHZvaWQg
V2ViSWNvbkRhdGFiYXNlUHJveHk6OnNldEVuYWJsZWQoYm9vbCBlbmFibGVkKQogCiB2b2lkIFdl
Ykljb25EYXRhYmFzZVByb3h5OjpyZXRhaW5JY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIHBh
Z2VVUkwpCiB7Ci0gICAgbV9wcm9jZXNzLT5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5k
KE1lc3NhZ2VzOjpXZWJQcm9jZXNzUHJveHk6OlJldGFpbkljb25Gb3JQYWdlVVJMKHBhZ2VVUkwp
LCAwKTsKKyAgICBtX3Byb2Nlc3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNz
YWdlczo6V2ViUHJvY2Vzc1Byb3h5OjpSZXRhaW5JY29uRm9yUGFnZVVSTChwYWdlVVJMKSwgMCk7
CiB9CiAKIHZvaWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnJlbGVhc2VJY29uRm9yUGFnZVVSTChj
b25zdCBTdHJpbmcmIHBhZ2VVUkwpCiB7Ci0gICAgbV9wcm9jZXNzLT5wYXJlbnRQcm9jZXNzQ29u
bmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpXZWJQcm9jZXNzUHJveHk6OlJlbGVhc2VJY29uRm9y
UGFnZVVSTChwYWdlVVJMKSwgMCk7CisgICAgbV9wcm9jZXNzLnBhcmVudFByb2Nlc3NDb25uZWN0
aW9uKCktPnNlbmQoTWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6UmVsZWFzZUljb25Gb3JQYWdl
VVJMKHBhZ2VVUkwpLCAwKTsKIH0KIAogSW1hZ2UqIFdlYkljb25EYXRhYmFzZVByb3h5OjpzeW5j
aHJvbm91c0ljb25Gb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYgcGFnZVVSTCwgY29uc3QgSW50U2l6
ZSYgLypzaXplKi8pCiB7CiAgICAgSVBDOjpEYXRhUmVmZXJlbmNlIHJlc3VsdDsKLSAgICBpZiAo
IW1fcHJvY2Vzcy0+cGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6
OldlYkljb25EYXRhYmFzZTo6U3luY2hyb25vdXNJY29uRGF0YUZvclBhZ2VVUkwocGFnZVVSTCks
IE1lc3NhZ2VzOjpXZWJJY29uRGF0YWJhc2U6OlN5bmNocm9ub3VzSWNvbkRhdGFGb3JQYWdlVVJM
OjpSZXBseShyZXN1bHQpLCAwKSkKKyAgICBpZiAoIW1fcHJvY2Vzcy5wYXJlbnRQcm9jZXNzQ29u
bmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpTeW5jaHJvbm91
c0ljb25EYXRhRm9yUGFnZVVSTChwYWdlVVJMKSwgTWVzc2FnZXM6OldlYkljb25EYXRhYmFzZTo6
U3luY2hyb25vdXNJY29uRGF0YUZvclBhZ2VVUkw6OlJlcGx5KHJlc3VsdCksIDApKQogICAgICAg
ICByZXR1cm4gMDsKICAgICAKICAgICAvLyBGSVhNRTogUmV0dXJuIEltYWdlIGNyZWF0ZWQgd2l0
aCB0aGUgYWJvdmUgZGF0YS4KQEAgLTExMCwzNCArMTA5LDMyIEBAIGJvb2wgV2ViSWNvbkRhdGFi
YXNlUHJveHk6OnN1cHBvcnRzQXN5bmNocm9ub3VzTW9kZSgpCiAgICAgcmV0dXJuIHRydWU7CiB9
CiAKLXZvaWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OmxvYWREZWNpc2lvbkZvckljb25VUkwoY29u
c3QgU3RyaW5nJiBpY29uVVJMLCBQYXNzUmVmUHRyPFdlYkNvcmU6Okljb25Mb2FkRGVjaXNpb25D
YWxsYmFjaz4gY2FsbGJhY2spCit2b2lkIFdlYkljb25EYXRhYmFzZVByb3h5Ojpsb2FkRGVjaXNp
b25Gb3JJY29uVVJMKGNvbnN0IFN0cmluZyYgaWNvblVSTCwgV2ViQ29yZTo6SWNvbkxvYWREZWNp
c2lvbkNhbGxiYWNrJiBjYWxsYmFjaykKIHsKLSAgICB1aW50NjRfdCBpZCA9IGNhbGxiYWNrLT5j
YWxsYmFja0lEKCk7Ci0gICAgbV9pY29uTG9hZERlY2lzaW9uQ2FsbGJhY2tzLmFkZChpZCwgY2Fs
bGJhY2spOwotICAgIAotICAgIG1fcHJvY2Vzcy0+cGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+
c2VuZChNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpHZXRMb2FkRGVjaXNpb25Gb3JJY29uVVJM
KGljb25VUkwsIGlkKSwgMCk7CisgICAgdWludDY0X3QgaWQgPSBjYWxsYmFjay5jYWxsYmFja0lE
KCk7CisgICAgbV9pY29uTG9hZERlY2lzaW9uQ2FsbGJhY2tzLmFkZChpZCwgJmNhbGxiYWNrKTsK
KyAgICBtX3Byb2Nlc3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6
V2ViSWNvbkRhdGFiYXNlOjpHZXRMb2FkRGVjaXNpb25Gb3JJY29uVVJMKGljb25VUkwsIGlkKSwg
MCk7CiB9CiAKIHZvaWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnJlY2VpdmVkSWNvbkxvYWREZWNp
c2lvbihpbnQgZGVjaXNpb24sIHVpbnQ2NF90IGNhbGxiYWNrSUQpCiB7Ci0gICAgUmVmUHRyPFdl
YkNvcmU6Okljb25Mb2FkRGVjaXNpb25DYWxsYmFjaz4gY2FsbGJhY2sgPSBtX2ljb25Mb2FkRGVj
aXNpb25DYWxsYmFja3MudGFrZShjYWxsYmFja0lEKTsKLSAgICBpZiAoY2FsbGJhY2spCisgICAg
aWYgKGF1dG8gY2FsbGJhY2sgPSBtX2ljb25Mb2FkRGVjaXNpb25DYWxsYmFja3MudGFrZShjYWxs
YmFja0lEKSkKICAgICAgICAgY2FsbGJhY2stPnBlcmZvcm1DYWxsYmFjayhzdGF0aWNfY2FzdDxX
ZWJDb3JlOjpJY29uTG9hZERlY2lzaW9uPihkZWNpc2lvbikpOwogfQogCi12b2lkIFdlYkljb25E
YXRhYmFzZVByb3h5OjppY29uRGF0YUZvckljb25VUkwoY29uc3QgU3RyaW5nJiAvKmljb25VUkwq
LywgUGFzc1JlZlB0cjxXZWJDb3JlOjpJY29uRGF0YUNhbGxiYWNrPikKK3ZvaWQgV2ViSWNvbkRh
dGFiYXNlUHJveHk6Omljb25EYXRhRm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpJ
Y29uRGF0YUNhbGxiYWNrJikKIHsKIH0KIAogdm9pZCBXZWJJY29uRGF0YWJhc2VQcm94eTo6c2V0
SWNvblVSTEZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJiBpY29uVVJMLCBjb25zdCBTdHJpbmcmIHBh
Z2VVUkwpCiB7Ci0gICAgbV9wcm9jZXNzLT5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5k
KE1lc3NhZ2VzOjpXZWJJY29uRGF0YWJhc2U6OlNldEljb25VUkxGb3JQYWdlVVJMKGljb25VUkws
IHBhZ2VVUkwpLCAwKTsKKyAgICBtX3Byb2Nlc3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+
c2VuZChNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpTZXRJY29uVVJMRm9yUGFnZVVSTChpY29u
VVJMLCBwYWdlVVJMKSwgMCk7CiB9CiAKLXZvaWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnNldElj
b25EYXRhRm9ySWNvblVSTChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaWNvbkRhdGEsIGNvbnN0
IFN0cmluZyYgaWNvblVSTCkKK3ZvaWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnNldEljb25EYXRh
Rm9ySWNvblVSTChTaGFyZWRCdWZmZXIqIGljb25EYXRhLCBjb25zdCBTdHJpbmcmIGljb25VUkwp
CiB7Ci0gICAgSVBDOjpEYXRhUmVmZXJlbmNlIGRhdGEocmVpbnRlcnByZXRfY2FzdDxjb25zdCB1
aW50OF90Kj4oaWNvbkRhdGEgPyBpY29uRGF0YS0+ZGF0YSgpIDogMCksIGljb25EYXRhID8gaWNv
bkRhdGEtPnNpemUoKSA6IDApOwotICAgIG1fcHJvY2Vzcy0+cGFyZW50UHJvY2Vzc0Nvbm5lY3Rp
b24oKS0+c2VuZChNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpTZXRJY29uRGF0YUZvckljb25V
UkwoZGF0YSwgaWNvblVSTCksIDApOworICAgIElQQzo6RGF0YVJlZmVyZW5jZSBkYXRhKHJlaW50
ZXJwcmV0X2Nhc3Q8Y29uc3QgdWludDhfdCo+KGljb25EYXRhID8gaWNvbkRhdGEtPmRhdGEoKSA6
IG51bGxwdHIpLCBpY29uRGF0YSA/IGljb25EYXRhLT5zaXplKCkgOiAwKTsKKyAgICBtX3Byb2Nl
c3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViSWNvbkRhdGFi
YXNlOjpTZXRJY29uRGF0YUZvckljb25VUkwoZGF0YSwgaWNvblVSTCksIDApOwogfQogCiB2b2lk
IFdlYkljb25EYXRhYmFzZVByb3h5Ojp1cmxJbXBvcnRGaW5pc2hlZCgpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94
eS5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JY29uRGF0YWJhc2UvV2ViSWNvbkRhdGFi
YXNlUHJveHkuaAppbmRleCA2MmEwNmMzZjk0ZjdkN2UwOTc2MzViNTJiNzhjNDMzOGViM2NhOGJk
Li5iZGY4ZDRjZjYzYWJlOWNlYTNkMmFjMTk4MWU5MDZlYjY2MWY1YTNlIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94
eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSWNvbkRhdGFiYXNlL1dlYkljb25E
YXRhYmFzZVByb3h5LmgKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFdlYkljb25EYXRhYmFzZVByb3h5X2gKLSNkZWZp
bmUgV2ViSWNvbkRhdGFiYXNlUHJveHlfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJBUElP
YmplY3QuaCIKICNpbmNsdWRlICJNZXNzYWdlUmVjZWl2ZXIuaCIKQEAgLTM3LDQzICszNiw0MSBA
QCBuYW1lc3BhY2UgV2ViS2l0IHsKIAogY2xhc3MgV2ViUHJvY2VzczsKIAotY2xhc3MgV2ViSWNv
bkRhdGFiYXNlUHJveHkgOiBwdWJsaWMgV2ViQ29yZTo6SWNvbkRhdGFiYXNlQmFzZSwgcHJpdmF0
ZSBJUEM6Ok1lc3NhZ2VSZWNlaXZlciB7CitjbGFzcyBXZWJJY29uRGF0YWJhc2VQcm94eSBmaW5h
bCA6IHB1YmxpYyBXZWJDb3JlOjpJY29uRGF0YWJhc2VCYXNlLCBwcml2YXRlIElQQzo6TWVzc2Fn
ZVJlY2VpdmVyIHsKIHB1YmxpYzoKLSAgICBleHBsaWNpdCBXZWJJY29uRGF0YWJhc2VQcm94eShX
ZWJQcm9jZXNzKik7CisgICAgZXhwbGljaXQgV2ViSWNvbkRhdGFiYXNlUHJveHkoV2ViUHJvY2Vz
cyYpOwogICAgIHZpcnR1YWwgfldlYkljb25EYXRhYmFzZVByb3h5KCk7CiAKLSAgICBib29sIGlz
RW5hYmxlZCgpIGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQgc2V0RW5hYmxlZChib29sKSBvdmVy
cmlkZTsKKyAgICB2b2lkIHNldEVuYWJsZWQoYm9vbCkgZmluYWw7CiAKLSAgICB2b2lkIHJldGFp
bkljb25Gb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVsZWFz
ZUljb25Gb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0SWNv
blVSTEZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJiwgY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBzZXRJY29uRGF0YUZvckljb25VUkwoUGFzc1JlZlB0cjxXZWJDb3JlOjpTaGFyZWRC
dWZmZXI+LCBjb25zdCBTdHJpbmcmKSBvdmVycmlkZTsKK3ByaXZhdGU6CisgICAgYm9vbCBpc0Vu
YWJsZWQoKSBjb25zdCBmaW5hbDsKKworICAgIHZvaWQgcmV0YWluSWNvbkZvclBhZ2VVUkwoY29u
c3QgU3RyaW5nJikgZmluYWw7CisgICAgdm9pZCByZWxlYXNlSWNvbkZvclBhZ2VVUkwoY29uc3Qg
U3RyaW5nJikgZmluYWw7CisgICAgdm9pZCBzZXRJY29uVVJMRm9yUGFnZVVSTChjb25zdCBTdHJp
bmcmLCBjb25zdCBTdHJpbmcmKSBmaW5hbDsKKyAgICB2b2lkIHNldEljb25EYXRhRm9ySWNvblVS
TChXZWJDb3JlOjpTaGFyZWRCdWZmZXIqLCBjb25zdCBTdHJpbmcmKSBmaW5hbDsKIAotICAgIFN0
cmluZyBzeW5jaHJvbm91c0ljb25VUkxGb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRl
OwotICAgIGJvb2wgc3luY2hyb25vdXNJY29uRGF0YUtub3duRm9ySWNvblVSTChjb25zdCBTdHJp
bmcmKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpJY29uTG9hZERlY2lzaW9uIHN5bmNocm9ub3Vz
TG9hZERlY2lzaW9uRm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpEb2N1bWVudExv
YWRlciopIG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OkltYWdlKiBzeW5jaHJvbm91c0ljb25Gb3JQ
YWdlVVJMKGNvbnN0IFN0cmluZyYsIGNvbnN0IFdlYkNvcmU6OkludFNpemUmKSBvdmVycmlkZTsK
KyAgICBTdHJpbmcgc3luY2hyb25vdXNJY29uVVJMRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmKSBm
aW5hbDsKKyAgICBib29sIHN5bmNocm9ub3VzSWNvbkRhdGFLbm93bkZvckljb25VUkwoY29uc3Qg
U3RyaW5nJikgZmluYWw7CisgICAgV2ViQ29yZTo6SWNvbkxvYWREZWNpc2lvbiBzeW5jaHJvbm91
c0xvYWREZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5nJiwgV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXIqKSBmaW5hbDsKKyAgICBXZWJDb3JlOjpJbWFnZSogc3luY2hyb25vdXNJY29uRm9yUGFn
ZVVSTChjb25zdCBTdHJpbmcmLCBjb25zdCBXZWJDb3JlOjpJbnRTaXplJikgZmluYWw7CiAgICAg
Ci0gICAgLy8gQXN5bmNocm9ub3VzIGNhbGxzIHdlIHNob3VsZCB1c2UgdG8gcmVwbGFjZSB0aGUg
YWJvdmUgd2hlbiBzdXBwb3J0ZWQuCi0gICAgYm9vbCBzdXBwb3J0c0FzeW5jaHJvbm91c01vZGUo
KSBvdmVycmlkZTsKLSAgICB2b2lkIGxvYWREZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5n
JiwgUGFzc1JlZlB0cjxXZWJDb3JlOjpJY29uTG9hZERlY2lzaW9uQ2FsbGJhY2s+KSBvdmVycmlk
ZTsKKyAgICBib29sIHN1cHBvcnRzQXN5bmNocm9ub3VzTW9kZSgpIGZpbmFsOworICAgIHZvaWQg
bG9hZERlY2lzaW9uRm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpJY29uTG9hZERl
Y2lzaW9uQ2FsbGJhY2smKSBmaW5hbDsKICAgICB2b2lkIHJlY2VpdmVkSWNvbkxvYWREZWNpc2lv
bihpbnQgZGVjaXNpb24sIHVpbnQ2NF90IGNhbGxiYWNrSUQpOwotICAgIHZvaWQgaWNvbkRhdGFG
b3JJY29uVVJMKGNvbnN0IFN0cmluZyYsIFBhc3NSZWZQdHI8V2ViQ29yZTo6SWNvbkRhdGFDYWxs
YmFjaz4pIG92ZXJyaWRlOworICAgIHZvaWQgaWNvbkRhdGFGb3JJY29uVVJMKGNvbnN0IFN0cmlu
ZyYsIFdlYkNvcmU6Okljb25EYXRhQ2FsbGJhY2smKSBmaW5hbDsKIAotcHJpdmF0ZToKICAgICAv
LyBJUEM6Ok1lc3NhZ2VSZWNlaXZlcgotICAgIHZvaWQgZGlkUmVjZWl2ZU1lc3NhZ2UoSVBDOjpD
b25uZWN0aW9uJiwgSVBDOjpEZWNvZGVyJikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRSZWNlaXZl
TWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXImKSBmaW5hbDsKICAgICAKICAg
ICAvLyBDYWxsYmFja3MgZnJvbSB0aGUgVUlQcm9jZXNzCiAgICAgdm9pZCB1cmxJbXBvcnRGaW5p
c2hlZCgpOwogCi0gICAgYm9vbCBtX2lzRW5hYmxlZDsKLSAgICBXZWJQcm9jZXNzKiBtX3Byb2Nl
c3M7CisgICAgYm9vbCBtX2lzRW5hYmxlZCB7IGZhbHNlIH07CisgICAgV2ViUHJvY2VzcyYgbV9w
cm9jZXNzOwogICAgIAogICAgIEhhc2hNYXA8dWludDY0X3QsIFJlZlB0cjxXZWJDb3JlOjpJY29u
TG9hZERlY2lzaW9uQ2FsbGJhY2s+PiBtX2ljb25Mb2FkRGVjaXNpb25DYWxsYmFja3M7CiB9Owog
CiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKLQotI2VuZGlmIC8vIFdlYkljb25EYXRhYmFzZVByb3h5
X2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUv
SW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uLmNwcApp
bmRleCAxOTYzYTFhMDI2NTUzOTEwYzJlZGM2YTY0N2EzOWRhOTllMmI4MTIxLi4zNTY5ZmQ4NzVi
ZTg2Yzk1ODZmMGVlN2IyNTAwMTNjOTdjM2M1M2RlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlv
bi5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9Jbmpl
Y3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rpb24uY3BwCkBAIC0xMDIsNyArMTAyLDcgQEAgUmVmPElu
amVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbj4gSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0
aW9uOjpjcmVhdGUoV2ViRnIKICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBJbmplY3RlZEJ1bmRs
ZU5hdmlnYXRpb25BY3Rpb24oZnJhbWUsIGFjdGlvbiwgZm9ybVN0YXRlKSk7CiB9CiAKLUluamVj
dGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbjo6SW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9u
KFdlYkZyYW1lKiBmcmFtZSwgY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgbmF2aWdhdGlvbkFjdGlv
biwgUGFzc1JlZlB0cjxGb3JtU3RhdGU+IHBycEZvcm1TdGF0ZSkKK0luamVjdGVkQnVuZGxlTmF2
aWdhdGlvbkFjdGlvbjo6SW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uKFdlYkZyYW1lKiBm
cmFtZSwgY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgbmF2aWdhdGlvbkFjdGlvbiwgUGFzc1JlZlB0
cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSkKICAgICA6IG1fbmF2aWdhdGlvblR5cGUobmF2aWdhdGlv
bkFjdGlvbi50eXBlKCkpCiAgICAgLCBtX21vZGlmaWVycyhtb2RpZmllcnNGb3JOYXZpZ2F0aW9u
QWN0aW9uKG5hdmlnYXRpb25BY3Rpb24pKQogICAgICwgbV9tb3VzZUJ1dHRvbihXZWJNb3VzZUV2
ZW50OjpOb0J1dHRvbikKQEAgLTExNiwxMSArMTE2LDggQEAgSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0
aW9uQWN0aW9uOjpJbmplY3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rpb24oV2ViRnJhbWUqIGZyYW1l
LAogICAgICAgICBtX3N5bnRoZXRpY0NsaWNrVHlwZSA9IHN5bnRoZXRpY0NsaWNrVHlwZUZvck5h
dmlnYXRpb25BY3Rpb24obmF2aWdhdGlvbkFjdGlvbik7CiAgICAgfQogCi0gICAgUmVmUHRyPEZv
cm1TdGF0ZT4gZm9ybVN0YXRlID0gcHJwRm9ybVN0YXRlOwotICAgIGlmIChmb3JtU3RhdGUpIHsK
LSAgICAgICAgQVNTRVJUKGZvcm1TdGF0ZS0+Zm9ybSgpKTsKLSAgICAgICAgbV9mb3JtRWxlbWVu
dCAgID0gSW5qZWN0ZWRCdW5kbGVOb2RlSGFuZGxlOjpnZXRPckNyZWF0ZShmb3JtU3RhdGUtPmZv
cm0oKSk7Ci0gICAgfQorICAgIGlmIChmb3JtU3RhdGUpCisgICAgICAgIG1fZm9ybUVsZW1lbnQg
PSBJbmplY3RlZEJ1bmRsZU5vZGVIYW5kbGU6OmdldE9yQ3JlYXRlKGZvcm1TdGF0ZS0+Zm9ybSgp
KTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwIGIvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmNwcAppbmRleCAxMjEwMjUx
ZjU0ZDdmMjU1NjVmODliZWY1NDQ3YmMxZDQ4YWFhNmQ1Li4zNjFmOWUyY2FiODI5ZDgzMjUwMGYz
YTY0MTU0NTA1NmExOTA0MGNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5jcHAKQEAgLTE2Myw3ICsxNjMsNyBAQCB2
b2lkIFdlYkxvYWRlclN0cmF0ZWd5OjpzY2hlZHVsZUxvYWQoUmVzb3VyY2VMb2FkZXImIHJlc291
cmNlTG9hZGVyLCBDYWNoZWRSZXNvdQogICAgIH0KICNlbmRpZgogCi0gICAgaWYgKHJlc291cmNl
TG9hZGVyLmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9h
ZFJlc291cmNlKHJlc291cmNlTG9hZGVyLCByZXNvdXJjZUxvYWRlci5yZXF1ZXN0KCksIHJlc291
cmNlTG9hZGVyLnJlcXVlc3QoKS51cmwoKSkpIHsKKyAgICBpZiAocmVzb3VyY2VMb2FkZXIuZG9j
dW1lbnRMb2FkZXIoKS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS5tYXliZUxvYWRSZXNvdXJjZShy
ZXNvdXJjZUxvYWRlciwgcmVzb3VyY2VMb2FkZXIucmVxdWVzdCgpLCByZXNvdXJjZUxvYWRlci5y
ZXF1ZXN0KCkudXJsKCkpKSB7CiAgICAgICAgIExPRyhOZXR3b3JrU2NoZWR1bGluZywgIihXZWJQ
cm9jZXNzKSBXZWJMb2FkZXJTdHJhdGVneTo6c2NoZWR1bGVMb2FkLCB1cmwgJyVzJyB3aWxsIGJl
IGxvYWRlZCBmcm9tIGFwcGxpY2F0aW9uIGNhY2hlLiIsIHJlc291cmNlTG9hZGVyLnVybCgpLnN0
cmluZygpLnV0ZjgoKS5kYXRhKCkpOwogICAgICAgICBSRUxFQVNFX0xPR19JRl9BTExPV0VEKHJl
c291cmNlTG9hZGVyLCAic2NoZWR1bGVMb2FkOiBVUkwgd2lsbCBiZSBsb2FkZWQgZnJvbSBhcHBs
aWNhdGlvbiBjYWNoZSAoZnJhbWUgPSAlcCwgcmVzb3VyY2VJRCA9ICUiIFBSSXU2NCAiKSIsIHJl
c291cmNlTG9hZGVyLmZyYW1lKCksIGlkZW50aWZpZXIpOwogICAgICAgICBtX3dlYlJlc291cmNl
TG9hZGVycy5zZXQoaWRlbnRpZmllciwgV2ViUmVzb3VyY2VMb2FkZXI6OmNyZWF0ZShyZXNvdXJj
ZUxvYWRlciwgdHJhY2tpbmdQYXJhbWV0ZXJzKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlTG9hZGVyLmNwcAppbmRleCA3MzhiMWRj
YzMzOTM3MjY5NjhhNjJjNTczYzM4Mjg4ZDk3ZjdiM2QxLi4zOGE4ODJiYjhmNGU5MTAyNjBiOWU1
MmQ4ZTU1ZGMxMTllZDBiMzE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUxvYWRlci5jcHAKQEAgLTg3LDcgKzg3LDcgQEAgdm9p
ZCBXZWJSZXNvdXJjZUxvYWRlcjo6d2lsbFNlbmRSZXF1ZXN0KFJlc291cmNlUmVxdWVzdCYmIHBy
b3Bvc2VkUmVxdWVzdCwgUmVzb3UKIAogICAgIFJlZlB0cjxXZWJSZXNvdXJjZUxvYWRlcj4gcHJv
dGVjdGVkVGhpcyh0aGlzKTsKIAotICAgIGlmIChtX2NvcmVMb2FkZXItPmRvY3VtZW50TG9hZGVy
KCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZEZhbGxiYWNrRm9yUmVkaXJlY3Qo
bV9jb3JlTG9hZGVyLmdldCgpLCBwcm9wb3NlZFJlcXVlc3QsIHJlZGlyZWN0UmVzcG9uc2UpKQor
ICAgIGlmIChtX2NvcmVMb2FkZXItPmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVI
b3N0KCkubWF5YmVMb2FkRmFsbGJhY2tGb3JSZWRpcmVjdChtX2NvcmVMb2FkZXIuZ2V0KCksIHBy
b3Bvc2VkUmVxdWVzdCwgcmVkaXJlY3RSZXNwb25zZSkpCiAgICAgICAgIHJldHVybjsKIAogICAg
IG1fY29yZUxvYWRlci0+d2lsbFNlbmRSZXF1ZXN0KFdURk1vdmUocHJvcG9zZWRSZXF1ZXN0KSwg
cmVkaXJlY3RSZXNwb25zZSwgW3Byb3RlY3RlZFRoaXNdKFJlc291cmNlUmVxdWVzdCYmIHJlcXVl
c3QpIHsKQEAgLTExMCw3ICsxMTAsNyBAQCB2b2lkIFdlYlJlc291cmNlTG9hZGVyOjpkaWRSZWNl
aXZlUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIGJvbwogCiAgICAg
UmVmPFdlYlJlc291cmNlTG9hZGVyPiBwcm90ZWN0KCp0aGlzKTsKIAotICAgIGlmIChtX2NvcmVM
b2FkZXItPmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9h
ZEZhbGxiYWNrRm9yUmVzcG9uc2UobV9jb3JlTG9hZGVyLmdldCgpLCByZXNwb25zZSkpCisgICAg
aWYgKG1fY29yZUxvYWRlci0+ZG9jdW1lbnRMb2FkZXIoKS0+YXBwbGljYXRpb25DYWNoZUhvc3Qo
KS5tYXliZUxvYWRGYWxsYmFja0ZvclJlc3BvbnNlKG1fY29yZUxvYWRlci5nZXQoKSwgcmVzcG9u
c2UpKQogICAgICAgICByZXR1cm47CiAKICAgICBtX2NvcmVMb2FkZXItPmRpZFJlY2VpdmVSZXNw
b25zZShyZXNwb25zZSk7CkBAIC0xNDgsNyArMTQ4LDcgQEAgdm9pZCBXZWJSZXNvdXJjZUxvYWRl
cjo6ZGlkRmFpbFJlc291cmNlTG9hZChjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKICAgICBM
T0coTmV0d29yaywgIihXZWJQcm9jZXNzKSBXZWJSZXNvdXJjZUxvYWRlcjo6ZGlkRmFpbFJlc291
cmNlTG9hZCBmb3IgJyVzJyIsIG1fY29yZUxvYWRlci0+dXJsKCkuc3RyaW5nKCkubGF0aW4xKCku
ZGF0YSgpKTsKICAgICBSRUxFQVNFX0xPR19JRl9BTExPV0VEKCJkaWRGYWlsUmVzb3VyY2VMb2Fk
OiAocGFnZUlEID0gJSIgUFJJdTY0ICIsIGZyYW1lSUQgPSAlIiBQUkl1NjQgIiwgcmVzb3VyY2VJ
RCA9ICUiIFBSSXU2NCAiKSIsIG1fdHJhY2tpbmdQYXJhbWV0ZXJzLnBhZ2VJRCwgbV90cmFja2lu
Z1BhcmFtZXRlcnMuZnJhbWVJRCwgbV90cmFja2luZ1BhcmFtZXRlcnMucmVzb3VyY2VJRCk7CiAK
LSAgICBpZiAobV9jb3JlTG9hZGVyLT5kb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hl
SG9zdCgpLT5tYXliZUxvYWRGYWxsYmFja0ZvckVycm9yKG1fY29yZUxvYWRlci5nZXQoKSwgZXJy
b3IpKQorICAgIGlmIChtX2NvcmVMb2FkZXItPmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9u
Q2FjaGVIb3N0KCkubWF5YmVMb2FkRmFsbGJhY2tGb3JFcnJvcihtX2NvcmVMb2FkZXIuZ2V0KCks
IGVycm9yKSkKICAgICAgICAgcmV0dXJuOwogICAgIG1fY29yZUxvYWRlci0+ZGlkRmFpbChlcnJv
cik7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1
Z2luVmlldy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmll
dy5jcHAKaW5kZXggYWMxZGFhYmFkMDYzYTQ5NjI2YjM3ZTA0MDJlOWViZjU0OTJkM2IxYi4uNzg4
NjI2ODU5YTY4NjUxNDY1YmMxNzFmYTFhYjBiMmI1MmFmODczMCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3LmNwcApAQCAtMTg1LDIzICsxODUs
MTkgQEAgc3RhdGljIFN0cmluZyBidWlsZEhUVFBIZWFkZXJzKGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmIHJlc3BvbnNlLCBsb25nIGxvbmcmIGV4cGUKICAgICBpZiAoIXJlc3BvbnNlLmlzSFRUUCgp
KQogICAgICAgICByZXR1cm4gU3RyaW5nKCk7CiAKLSAgICBTdHJpbmdCdWlsZGVyIHN0cmluZ0J1
aWxkZXI7Ci0gICAgCi0gICAgU3RyaW5nIHN0YXR1c0xpbmUgPSBTdHJpbmc6OmZvcm1hdCgiSFRU
UCAlZCAiLCByZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpKTsKLSAgICBzdHJpbmdCdWlsZGVyLmFw
cGVuZChzdGF0dXNMaW5lKTsKLSAgICBzdHJpbmdCdWlsZGVyLmFwcGVuZChyZXNwb25zZS5odHRw
U3RhdHVzVGV4dCgpKTsKLSAgICBzdHJpbmdCdWlsZGVyLmFwcGVuZCgnXG4nKTsKLSAgICAKLSAg
ICBIVFRQSGVhZGVyTWFwOjpjb25zdF9pdGVyYXRvciBlbmQgPSByZXNwb25zZS5odHRwSGVhZGVy
RmllbGRzKCkuZW5kKCk7Ci0gICAgZm9yIChIVFRQSGVhZGVyTWFwOjpjb25zdF9pdGVyYXRvciBp
dCA9IHJlc3BvbnNlLmh0dHBIZWFkZXJGaWVsZHMoKS5iZWdpbigpOyBpdCAhPSBlbmQ7ICsraXQp
IHsKLSAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmQoaXQtPmtleSk7Ci0gICAgICAgIHN0cmlu
Z0J1aWxkZXIuYXBwZW5kTGl0ZXJhbCgiOiAiKTsKLSAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBl
bmQoaXQtPnZhbHVlKTsKLSAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmQoJ1xuJyk7CisgICAg
U3RyaW5nQnVpbGRlciBoZWFkZXI7CisgICAgaGVhZGVyLmFwcGVuZExpdGVyYWwoIkhUVFAgIik7
CisgICAgaGVhZGVyLmFwcGVuZE51bWJlcihyZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpKTsKKyAg
ICBoZWFkZXIuYXBwZW5kKCcgJyk7CisgICAgaGVhZGVyLmFwcGVuZChyZXNwb25zZS5odHRwU3Rh
dHVzVGV4dCgpKTsKKyAgICBoZWFkZXIuYXBwZW5kKCdcbicpOworICAgIGZvciAoYXV0byYgZmll
bGQgOiByZXNwb25zZS5odHRwSGVhZGVyRmllbGRzKCkpIHsKKyAgICAgICAgaGVhZGVyLmFwcGVu
ZChmaWVsZC5rZXkpOworICAgICAgICBoZWFkZXIuYXBwZW5kTGl0ZXJhbCgiOiAiKTsKKyAgICAg
ICAgaGVhZGVyLmFwcGVuZChmaWVsZC52YWx1ZSk7CisgICAgICAgIGhlYWRlci5hcHBlbmQoJ1xu
Jyk7CiAgICAgfQotICAgIAotICAgIFN0cmluZyBoZWFkZXJzID0gc3RyaW5nQnVpbGRlci50b1N0
cmluZygpOwotICAgIAorCiAgICAgLy8gSWYgdGhlIGNvbnRlbnQgaXMgZW5jb2RlZCAobW9zdCBs
aWtlbHkgY29tcHJlc3NlZCksIHRoZW4gZG9uJ3Qgc2VuZCBpdHMgbGVuZ3RoIHRvIHRoZSBwbHVn
aW4sCiAgICAgLy8gd2hpY2ggaXMgb25seSBpbnRlcmVzdGVkIGluIHRoZSBkZWNvZGVkIGxlbmd0
aCwgbm90IHlldCBrbm93biBhdCB0aGUgbW9tZW50LgogICAgIC8vIDxyZGFyOi8vcHJvYmxlbS80
NDcwNTk5PiB0cmFja3MgYSByZXF1ZXN0IGZvciAtW05TVVJMUmVzcG9uc2UgZXhwZWN0ZWRDb250
ZW50TGVuZ3RoXSB0byBpbmNvcnBvcmF0ZSB0aGlzIGxvZ2ljLgpAQCAtMjA5LDcgKzIwNSw3IEBA
IHN0YXRpYyBTdHJpbmcgYnVpbGRIVFRQSGVhZGVycyhjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiBy
ZXNwb25zZSwgbG9uZyBsb25nJiBleHBlCiAgICAgaWYgKCFjb250ZW50RW5jb2RpbmcuaXNOdWxs
KCkgJiYgY29udGVudEVuY29kaW5nICE9ICJpZGVudGl0eSIpCiAgICAgICAgIGV4cGVjdGVkQ29u
dGVudExlbmd0aCA9IC0xOwogCi0gICAgcmV0dXJuIGhlYWRlcnM7CisgICAgcmV0dXJuIGhlYWRl
ci50b1N0cmluZygpOwogfQogCiBzdGF0aWMgdWludDMyX3QgbGFzdE1vZGlmaWVkRGF0ZU1TKGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQpAQCAtMjkyLDM3ICsyODgsMTkgQEAgc3Rh
dGljIGlubGluZSBXZWJQYWdlKiB3ZWJQYWdlKEhUTUxQbHVnSW5FbGVtZW50KiBwbHVnaW5FbGVt
ZW50KQogICAgIHJldHVybiB3ZWJGcmFtZS0+cGFnZSgpOwogfQogCi1SZWY8UGx1Z2luVmlldz4g
UGx1Z2luVmlldzo6Y3JlYXRlKFBhc3NSZWZQdHI8SFRNTFBsdWdJbkVsZW1lbnQ+IHBsdWdpbkVs
ZW1lbnQsIFBhc3NSZWZQdHI8UGx1Z2luPiBwbHVnaW4sIGNvbnN0IFBsdWdpbjo6UGFyYW1ldGVy
cyYgcGFyYW1ldGVycykKK1JlZjxQbHVnaW5WaWV3PiBQbHVnaW5WaWV3OjpjcmVhdGUoSFRNTFBs
dWdJbkVsZW1lbnQmIHBsdWdpbkVsZW1lbnQsIFJlZjxQbHVnaW4+JiYgcGx1Z2luLCBjb25zdCBQ
bHVnaW46OlBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpu
ZXcgUGx1Z2luVmlldyhwbHVnaW5FbGVtZW50LCBwbHVnaW4sIHBhcmFtZXRlcnMpKTsKKyAgICBy
ZXR1cm4gYWRvcHRSZWYoKm5ldyBQbHVnaW5WaWV3KHBsdWdpbkVsZW1lbnQsIFdURk1vdmUocGx1
Z2luKSwgcGFyYW1ldGVycykpOwogfQogCi1QbHVnaW5WaWV3OjpQbHVnaW5WaWV3KFBhc3NSZWZQ
dHI8SFRNTFBsdWdJbkVsZW1lbnQ+IHBsdWdpbkVsZW1lbnQsIFBhc3NSZWZQdHI8UGx1Z2luPiBw
bHVnaW4sIGNvbnN0IFBsdWdpbjo6UGFyYW1ldGVycyYgcGFyYW1ldGVycykKK1BsdWdpblZpZXc6
OlBsdWdpblZpZXcoSFRNTFBsdWdJbkVsZW1lbnQmIHBsdWdpbkVsZW1lbnQsIFJlZjxQbHVnaW4+
JiYgcGx1Z2luLCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpCiAgICAgOiBQ
bHVnaW5WaWV3QmFzZSgwKQotICAgICwgbV9wbHVnaW5FbGVtZW50KHBsdWdpbkVsZW1lbnQpCi0g
ICAgLCBtX3BsdWdpbihwbHVnaW4pCisgICAgLCBtX3BsdWdpbkVsZW1lbnQoJnBsdWdpbkVsZW1l
bnQpCisgICAgLCBtX3BsdWdpbihXVEZNb3ZlKHBsdWdpbikpCiAgICAgLCBtX3dlYlBhZ2Uod2Vi
UGFnZShtX3BsdWdpbkVsZW1lbnQuZ2V0KCkpKQogICAgICwgbV9wYXJhbWV0ZXJzKHBhcmFtZXRl
cnMpCi0gICAgLCBtX2lzSW5pdGlhbGl6ZWQoZmFsc2UpCi0gICAgLCBtX2lzV2FpdGluZ0ZvclN5
bmNocm9ub3VzSW5pdGlhbGl6YXRpb24oZmFsc2UpCi0gICAgLCBtX2lzV2FpdGluZ1VudGlsTWVk
aWFDYW5TdGFydChmYWxzZSkKLSAgICAsIG1faXNCZWluZ0Rlc3Ryb3llZChmYWxzZSkKLSAgICAs
IG1fcGx1Z2luUHJvY2Vzc0hhc0NyYXNoZWQoZmFsc2UpCi0jaWYgRU5BQkxFKFBSSU1BUllfU05B
UFNIT1RURURfUExVR0lOX0hFVVJJU1RJQykKLSAgICAsIG1fZGlkUGx1Z0luU3RhcnRPZmZTY3Jl
ZW4oZmFsc2UpCi0jZW5kaWYKICAgICAsIG1fcGVuZGluZ1VSTFJlcXVlc3RzVGltZXIoUnVuTG9v
cDo6bWFpbigpLCB0aGlzLCAmUGx1Z2luVmlldzo6cGVuZGluZ1VSTFJlcXVlc3RzVGltZXJGaXJl
ZCkKLSNpZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKLSAgICAsIG1fbnBSdW50aW1lT2Jq
ZWN0TWFwKHRoaXMpCi0jZW5kaWYKLSAgICAsIG1fbWFudWFsU3RyZWFtU3RhdGUoU3RyZWFtU3Rh
dGVJbml0aWFsKQogICAgICwgbV9wbHVnaW5TbmFwc2hvdFRpbWVyKCp0aGlzLCAmUGx1Z2luVmll
dzo6cGx1Z2luU25hcHNob3RUaW1lckZpcmVkLCBwbHVnaW5TbmFwc2hvdFRpbWVyRGVsYXkpCi0j
aWYgRU5BQkxFKFBSSU1BUllfU05BUFNIT1RURURfUExVR0lOX0hFVVJJU1RJQykgfHwgUExBVEZP
Uk0oQ09DT0EpCi0gICAgLCBtX2NvdW50U25hcHNob3RSZXRyaWVzKDApCi0jZW5kaWYKLSAgICAs
IG1fZGlkUmVjZWl2ZVVzZXJJbnRlcmFjdGlvbihmYWxzZSkKLSAgICAsIG1fcGFnZVNjYWxlRmFj
dG9yKDEpCi0gICAgLCBtX3BsdWdpbklzUGxheWluZ0F1ZGlvKGZhbHNlKQogewogICAgIG1fd2Vi
UGFnZS0+YWRkUGx1Z2luVmlldyh0aGlzKTsKIH0KQEAgLTM3NCw3ICszNTIsNyBAQCB2b2lkIFBs
dWdpblZpZXc6OmRlc3Ryb3lQbHVnaW5BbmRSZXNldCgpCiAgICAgY2FuY2VsQWxsU3RyZWFtcygp
OwogfQogCi12b2lkIFBsdWdpblZpZXc6OnJlY3JlYXRlQW5kSW5pdGlhbGl6ZShQYXNzUmVmUHRy
PFBsdWdpbj4gcGx1Z2luKQordm9pZCBQbHVnaW5WaWV3OjpyZWNyZWF0ZUFuZEluaXRpYWxpemUo
UmVmPFBsdWdpbj4mJiBwbHVnaW4pCiB7CiAgICAgaWYgKG1fcGx1Z2luKSB7CiAgICAgICAgIGlm
IChtX3BsdWdpblNuYXBzaG90VGltZXIuaXNBY3RpdmUoKSkKQEAgLTM4MiwxMyArMzYwLDEyIEBA
IHZvaWQgUGx1Z2luVmlldzo6cmVjcmVhdGVBbmRJbml0aWFsaXplKFBhc3NSZWZQdHI8UGx1Z2lu
PiBwbHVnaW4pCiAgICAgICAgIGRlc3Ryb3lQbHVnaW5BbmRSZXNldCgpOwogICAgIH0KIAotICAg
IC8vIFJlc2V0IG1lbWJlciB2YXJpYWJsZXMgdG8gaW5pdGlhbCB2YWx1ZXMuCi0gICAgbV9wbHVn
aW4gPSBwbHVnaW47CisgICAgbV9wbHVnaW4gPSBXVEZNb3ZlKHBsdWdpbik7CiAgICAgbV9pc0lu
aXRpYWxpemVkID0gZmFsc2U7CiAgICAgbV9pc1dhaXRpbmdGb3JTeW5jaHJvbm91c0luaXRpYWxp
emF0aW9uID0gZmFsc2U7CiAgICAgbV9pc1dhaXRpbmdVbnRpbE1lZGlhQ2FuU3RhcnQgPSBmYWxz
ZTsKICAgICBtX2lzQmVpbmdEZXN0cm95ZWQgPSBmYWxzZTsKLSAgICBtX21hbnVhbFN0cmVhbVN0
YXRlID0gU3RyZWFtU3RhdGVJbml0aWFsOworICAgIG1fbWFudWFsU3RyZWFtU3RhdGUgPSBNYW51
YWxTdHJlYW1TdGF0ZTo6SW5pdGlhbDsKICAgICBtX3RyYW5zaWVudFBhaW50aW5nU25hcHNob3Qg
PSBudWxscHRyOwogCiAgICAgaW5pdGlhbGl6ZVBsdWdpbigpOwpAQCAtNDIxLDggKzM5OCw4IEBA
IHZvaWQgUGx1Z2luVmlldzo6bWFudWFsTG9hZERpZFJlY2VpdmVSZXNwb25zZShjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJiByZXNwb25zZSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKCFtX2lz
SW5pdGlhbGl6ZWQpIHsKLSAgICAgICAgQVNTRVJUKG1fbWFudWFsU3RyZWFtU3RhdGUgPT0gU3Ry
ZWFtU3RhdGVJbml0aWFsKTsKLSAgICAgICAgbV9tYW51YWxTdHJlYW1TdGF0ZSA9IFN0cmVhbVN0
YXRlSGFzUmVjZWl2ZWRSZXNwb25zZTsKKyAgICAgICAgQVNTRVJUKG1fbWFudWFsU3RyZWFtU3Rh
dGUgPT0gTWFudWFsU3RyZWFtU3RhdGU6OkluaXRpYWwpOworICAgICAgICBtX21hbnVhbFN0cmVh
bVN0YXRlID0gTWFudWFsU3RyZWFtU3RhdGU6Okhhc1JlY2VpdmVkUmVzcG9uc2U7CiAgICAgICAg
IG1fbWFudWFsU3RyZWFtUmVzcG9uc2UgPSByZXNwb25zZTsKICAgICAgICAgcmV0dXJuOwogICAg
IH0KQEAgLTQ0OCw3ICs0MjUsNyBAQCB2b2lkIFBsdWdpblZpZXc6Om1hbnVhbExvYWREaWRSZWNl
aXZlRGF0YShjb25zdCBjaGFyKiBieXRlcywgaW50IGxlbmd0aCkKICAgICAgICAgcmV0dXJuOwog
CiAgICAgaWYgKCFtX2lzSW5pdGlhbGl6ZWQpIHsKLSAgICAgICAgQVNTRVJUKG1fbWFudWFsU3Ry
ZWFtU3RhdGUgPT0gU3RyZWFtU3RhdGVIYXNSZWNlaXZlZFJlc3BvbnNlKTsKKyAgICAgICAgQVNT
RVJUKG1fbWFudWFsU3RyZWFtU3RhdGUgPT0gTWFudWFsU3RyZWFtU3RhdGU6Okhhc1JlY2VpdmVk
UmVzcG9uc2UpOwogICAgICAgICBpZiAoIW1fbWFudWFsU3RyZWFtRGF0YSkKICAgICAgICAgICAg
IG1fbWFudWFsU3RyZWFtRGF0YSA9IFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKCk7CiAKQEAgLTQ2Niw4
ICs0NDMsOCBAQCB2b2lkIFBsdWdpblZpZXc6Om1hbnVhbExvYWREaWRGaW5pc2hMb2FkaW5nKCkK
ICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKCFtX2lzSW5pdGlhbGl6ZWQpIHsKLSAgICAgICAg
QVNTRVJUKG1fbWFudWFsU3RyZWFtU3RhdGUgPT0gU3RyZWFtU3RhdGVIYXNSZWNlaXZlZFJlc3Bv
bnNlKTsKLSAgICAgICAgbV9tYW51YWxTdHJlYW1TdGF0ZSA9IFN0cmVhbVN0YXRlRmluaXNoZWQ7
CisgICAgICAgIEFTU0VSVChtX21hbnVhbFN0cmVhbVN0YXRlID09IE1hbnVhbFN0cmVhbVN0YXRl
OjpIYXNSZWNlaXZlZFJlc3BvbnNlKTsKKyAgICAgICAgbV9tYW51YWxTdHJlYW1TdGF0ZSA9IE1h
bnVhbFN0cmVhbVN0YXRlOjpGaW5pc2hlZDsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIApAQCAt
NDgxLDcgKzQ1OCw3IEBAIHZvaWQgUGx1Z2luVmlldzo6bWFudWFsTG9hZERpZEZhaWwoY29uc3Qg
UmVzb3VyY2VFcnJvciYgZXJyb3IpCiAgICAgICAgIHJldHVybjsKIAogICAgIGlmICghbV9pc0lu
aXRpYWxpemVkKSB7Ci0gICAgICAgIG1fbWFudWFsU3RyZWFtU3RhdGUgPSBTdHJlYW1TdGF0ZUZp
bmlzaGVkOworICAgICAgICBtX21hbnVhbFN0cmVhbVN0YXRlID0gTWFudWFsU3RyZWFtU3RhdGU6
OkZpbmlzaGVkOwogICAgICAgICBtX21hbnVhbFN0cmVhbUVycm9yID0gZXJyb3I7CiAgICAgICAg
IG1fbWFudWFsU3RyZWFtRGF0YSA9IG51bGxwdHI7CiAgICAgICAgIHJldHVybjsKQEAgLTEwMDcs
NyArOTg0LDcgQEAgdm9pZCBQbHVnaW5WaWV3Ojp3aWxsRGV0YXRjaFJlbmRlcmVyKCkKICAgICBt
X3BsdWdpbi0+d2lsbERldGF0Y2hSZW5kZXJlcigpOwogfQogCi1QYXNzUmVmUHRyPFNoYXJlZEJ1
ZmZlcj4gUGx1Z2luVmlldzo6bGl2ZVJlc291cmNlRGF0YSgpIGNvbnN0CitSZWZQdHI8U2hhcmVk
QnVmZmVyPiBQbHVnaW5WaWV3OjpsaXZlUmVzb3VyY2VEYXRhKCkgY29uc3QKIHsKICAgICBpZiAo
IW1faXNJbml0aWFsaXplZCB8fCAhbV9wbHVnaW4pCiAgICAgICAgIHJldHVybiAwOwpAQCAtMTMw
OCwxMiArMTI4NSwxMiBAQCB2b2lkIFBsdWdpblZpZXc6OmNhbmNlbEFsbFN0cmVhbXMoKQogCiB2
b2lkIFBsdWdpblZpZXc6OnJlZGVsaXZlck1hbnVhbFN0cmVhbSgpCiB7Ci0gICAgaWYgKG1fbWFu
dWFsU3RyZWFtU3RhdGUgPT0gU3RyZWFtU3RhdGVJbml0aWFsKSB7CisgICAgaWYgKG1fbWFudWFs
U3RyZWFtU3RhdGUgPT0gTWFudWFsU3RyZWFtU3RhdGU6OkluaXRpYWwpIHsKICAgICAgICAgLy8g
Tm90aGluZyB0byBkby4KICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIGlmIChtX21hbnVh
bFN0cmVhbVN0YXRlID09IFN0cmVhbVN0YXRlRmFpbGVkKSB7CisgICAgaWYgKG1fbWFudWFsU3Ry
ZWFtU3RhdGUgPT0gTWFudWFsU3RyZWFtU3RhdGU6OkZhaWxlZCkgewogICAgICAgICBtYW51YWxM
b2FkRGlkRmFpbChtX21hbnVhbFN0cmVhbUVycm9yKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0K
QEAgLTEzMzQsNyArMTMxMSw3IEBAIHZvaWQgUGx1Z2luVmlldzo6cmVkZWxpdmVyTWFudWFsU3Ry
ZWFtKCkKICAgICAgICAgbV9tYW51YWxTdHJlYW1EYXRhID0gbnVsbHB0cjsKICAgICB9CiAKLSAg
ICBpZiAobV9tYW51YWxTdHJlYW1TdGF0ZSA9PSBTdHJlYW1TdGF0ZUZpbmlzaGVkKQorICAgIGlm
IChtX21hbnVhbFN0cmVhbVN0YXRlID09IE1hbnVhbFN0cmVhbVN0YXRlOjpGaW5pc2hlZCkKICAg
ICAgICAgbWFudWFsTG9hZERpZEZpbmlzaExvYWRpbmcoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuaCBiL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3LmgKaW5kZXggMDA3NTgzYzQzZDAzOGI5
ZmFjYzJlZGI3M2QzYTEyNWI0YmNkYTQ4My4uMzhiZTYyMWI4MWFmNjlhNjM3MzczNjJhY2IyMDE3
ZWQzNzgwNzU4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5z
L1BsdWdpblZpZXcuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1
Z2luVmlldy5oCkBAIC02NCw5ICs2NCw5IEBAIGNsYXNzIFdlYkV2ZW50OwogCiBjbGFzcyBQbHVn
aW5WaWV3IDogcHVibGljIFdlYkNvcmU6OlBsdWdpblZpZXdCYXNlLCBwdWJsaWMgUGx1Z2luQ29u
dHJvbGxlciwgcHJpdmF0ZSBXZWJDb3JlOjpNZWRpYUNhblN0YXJ0TGlzdGVuZXIsIHByaXZhdGUg
V2ViRnJhbWU6OkxvYWRMaXN0ZW5lciwgcHJpdmF0ZSBXZWJDb3JlOjpNZWRpYVByb2R1Y2VyIHsK
IHB1YmxpYzoKLSAgICBzdGF0aWMgUmVmPFBsdWdpblZpZXc+IGNyZWF0ZShQYXNzUmVmUHRyPFdl
YkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50PiwgUGFzc1JlZlB0cjxQbHVnaW4+LCBjb25zdCBQbHVn
aW46OlBhcmFtZXRlcnMmKTsKKyAgICBzdGF0aWMgUmVmPFBsdWdpblZpZXc+IGNyZWF0ZShXZWJD
b3JlOjpIVE1MUGx1Z0luRWxlbWVudCYsIFJlZjxQbHVnaW4+JiYsIGNvbnN0IFBsdWdpbjo6UGFy
YW1ldGVycyYpOwogCi0gICAgdm9pZCByZWNyZWF0ZUFuZEluaXRpYWxpemUoUGFzc1JlZlB0cjxQ
bHVnaW4+KTsKKyAgICB2b2lkIHJlY3JlYXRlQW5kSW5pdGlhbGl6ZShSZWY8UGx1Z2luPiYmKTsK
IAogICAgIFdlYkNvcmU6OkZyYW1lKiBmcmFtZSgpIGNvbnN0OwogCkBAIC0xMTIsMTMgKzExMiwx
MyBAQCBwdWJsaWM6CiAKICAgICBib29sIHNob3VsZEFsbG93U2NyaXB0aW5nKCk7CiAKLSAgICBQ
YXNzUmVmUHRyPFdlYkNvcmU6OlNoYXJlZEJ1ZmZlcj4gbGl2ZVJlc291cmNlRGF0YSgpIGNvbnN0
OworICAgIFJlZlB0cjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+IGxpdmVSZXNvdXJjZURhdGEoKSBj
b25zdDsKICAgICBib29sIHBlcmZvcm1EaWN0aW9uYXJ5TG9va3VwQXRMb2NhdGlvbihjb25zdCBX
ZWJDb3JlOjpGbG9hdFBvaW50Jik7CiAgICAgU3RyaW5nIGdldFNlbGVjdGlvbkZvcldvcmRBdFBv
aW50KGNvbnN0IFdlYkNvcmU6OkZsb2F0UG9pbnQmKSBjb25zdDsKICAgICBib29sIGV4aXN0aW5n
U2VsZWN0aW9uQ29udGFpbnNQb2ludChjb25zdCBXZWJDb3JlOjpGbG9hdFBvaW50JikgY29uc3Q7
CiAKIHByaXZhdGU6Ci0gICAgUGx1Z2luVmlldyhQYXNzUmVmUHRyPFdlYkNvcmU6OkhUTUxQbHVn
SW5FbGVtZW50PiwgUGFzc1JlZlB0cjxQbHVnaW4+LCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMm
IHBhcmFtZXRlcnMpOworICAgIFBsdWdpblZpZXcoV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQm
LCBSZWY8UGx1Z2luPiYmLCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmKTsKICAgICB2aXJ0dWFs
IH5QbHVnaW5WaWV3KCk7CiAKICAgICB2b2lkIGluaXRpYWxpemVQbHVnaW4oKTsKQEAgLTI0NCwx
NCArMjQ0LDE0IEBAIHByaXZhdGU6CiAgICAgV2ViUGFnZSogbV93ZWJQYWdlOwogICAgIFBsdWdp
bjo6UGFyYW1ldGVycyBtX3BhcmFtZXRlcnM7CiAKLSAgICBib29sIG1faXNJbml0aWFsaXplZDsK
LSAgICBib29sIG1faXNXYWl0aW5nRm9yU3luY2hyb25vdXNJbml0aWFsaXphdGlvbjsKLSAgICBi
b29sIG1faXNXYWl0aW5nVW50aWxNZWRpYUNhblN0YXJ0OwotICAgIGJvb2wgbV9pc0JlaW5nRGVz
dHJveWVkOwotICAgIGJvb2wgbV9wbHVnaW5Qcm9jZXNzSGFzQ3Jhc2hlZDsKKyAgICBib29sIG1f
aXNJbml0aWFsaXplZCB7IGZhbHNlIH07CisgICAgYm9vbCBtX2lzV2FpdGluZ0ZvclN5bmNocm9u
b3VzSW5pdGlhbGl6YXRpb24geyBmYWxzZSB9OworICAgIGJvb2wgbV9pc1dhaXRpbmdVbnRpbE1l
ZGlhQ2FuU3RhcnQgeyBmYWxzZSB9OworICAgIGJvb2wgbV9pc0JlaW5nRGVzdHJveWVkIHsgZmFs
c2UgfTsKKyAgICBib29sIG1fcGx1Z2luUHJvY2Vzc0hhc0NyYXNoZWQgeyBmYWxzZSB9OwogCiAj
aWYgRU5BQkxFKFBSSU1BUllfU05BUFNIT1RURURfUExVR0lOX0hFVVJJU1RJQykKLSAgICBib29s
IG1fZGlkUGx1Z0luU3RhcnRPZmZTY3JlZW47CisgICAgYm9vbCBtX2RpZFBsdWdJblN0YXJ0T2Zm
U2NyZWVuIHsgZmFsc2UgfTsKICNlbmRpZgogCiAgICAgLy8gUGVuZGluZyBVUkxSZXF1ZXN0cyB0
aGF0IHRoZSBwbHVnLWluIGhhcyBtYWRlLgpAQCAtMjY3LDE4ICsyNjcsMTMgQEAgcHJpdmF0ZToK
IAogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgIC8vIEEgbWFwIG9mIGFsbCBy
ZWxhdGVkIE5QT2JqZWN0cyBmb3IgdGhpcyBwbHVnLWluIHZpZXcuCi0gICAgTlBSdW50aW1lT2Jq
ZWN0TWFwIG1fbnBSdW50aW1lT2JqZWN0TWFwOworICAgIE5QUnVudGltZU9iamVjdE1hcCBtX25w
UnVudGltZU9iamVjdE1hcCB7IHRoaXMgfTsKICNlbmRpZgogCiAgICAgLy8gVGhlIG1hbnVhbCBz
dHJlYW0gc3RhdGUuIFRoaXMgaXMgdXNlZCBzbyB3ZSBjYW4gZGVsaXZlciBhIG1hbnVhbCBzdHJl
YW0gdG8gYSBwbHVnLWluCiAgICAgLy8gd2hlbiBpdCBpcyBpbml0aWFsaXplZC4KLSAgICBlbnVt
IE1hbnVhbFN0cmVhbVN0YXRlIHsKLSAgICAgICAgU3RyZWFtU3RhdGVJbml0aWFsLAotICAgICAg
ICBTdHJlYW1TdGF0ZUhhc1JlY2VpdmVkUmVzcG9uc2UsCi0gICAgICAgIFN0cmVhbVN0YXRlRmlu
aXNoZWQsCi0gICAgICAgIFN0cmVhbVN0YXRlRmFpbGVkCi0gICAgfTsKLSAgICBNYW51YWxTdHJl
YW1TdGF0ZSBtX21hbnVhbFN0cmVhbVN0YXRlOworICAgIGVudW0gY2xhc3MgTWFudWFsU3RyZWFt
U3RhdGUgeyBJbml0aWFsLCBIYXNSZWNlaXZlZFJlc3BvbnNlLCBGaW5pc2hlZCwgRmFpbGVkIH07
CisgICAgTWFudWFsU3RyZWFtU3RhdGUgbV9tYW51YWxTdHJlYW1TdGF0ZSB7IE1hbnVhbFN0cmVh
bVN0YXRlOjpJbml0aWFsIH07CiAKICAgICBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIG1fbWFu
dWFsU3RyZWFtUmVzcG9uc2U7CiAgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBtX21hbnVhbFN0
cmVhbUVycm9yOwpAQCAtMjg5LDEzICsyODQsMTMgQEAgcHJpdmF0ZToKICAgICAvLyBUaGlzIHRp
bWVyIGlzIHVzZWQgd2hlbiBwbHVnaW4gc25hcHNob3R0aW5nIGlzIGVuYWJsZWQsIHRvIGNhcHR1
cmUgYSBwbHVnaW4gcGxhY2Vob2xkZXIuCiAgICAgV2ViQ29yZTo6RGVmZXJyYWJsZU9uZVNob3RU
aW1lciBtX3BsdWdpblNuYXBzaG90VGltZXI7CiAjaWYgRU5BQkxFKFBSSU1BUllfU05BUFNIT1RU
RURfUExVR0lOX0hFVVJJU1RJQykgfHwgUExBVEZPUk0oQ09DT0EpCi0gICAgdW5zaWduZWQgbV9j
b3VudFNuYXBzaG90UmV0cmllczsKKyAgICB1bnNpZ25lZCBtX2NvdW50U25hcHNob3RSZXRyaWVz
IHsgMCB9OwogI2VuZGlmCi0gICAgYm9vbCBtX2RpZFJlY2VpdmVVc2VySW50ZXJhY3Rpb247Cisg
ICAgYm9vbCBtX2RpZFJlY2VpdmVVc2VySW50ZXJhY3Rpb24geyBmYWxzZSB9OwogCi0gICAgZG91
YmxlIG1fcGFnZVNjYWxlRmFjdG9yOworICAgIGRvdWJsZSBtX3BhZ2VTY2FsZUZhY3RvciB7IDEg
fTsKIAotICAgIGJvb2wgbV9wbHVnaW5Jc1BsYXlpbmdBdWRpbzsKKyAgICBib29sIG1fcGx1Z2lu
SXNQbGF5aW5nQXVkaW8geyBmYWxzZSB9OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNo
cm9tZUNsaWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L1dlYkNocm9tZUNsaWVudC5jcHAKaW5kZXggZGMzZmVkNWM5YmJmZTMwYzhiZDIwYWVlOWU5YjAx
ZDgyZGZlNGZlOC4uM2Q3MmM2NzMxNzZlMGQwMWNmNTMzYTNjYzM1OWU5YmIwYWMyNWE2YSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJv
bWVDbGllbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvV2ViQ2hyb21lQ2xpZW50LmNwcApAQCAtMTAzLDIwICsxMDMsMjAgQEAgc3RhdGljIGRvdWJs
ZSBhcmVhKFdlYkZyYW1lKiBmcmFtZSkKIH0KIAogCi1zdGF0aWMgV2ViRnJhbWUqIGZpbmRMYXJn
ZXN0RnJhbWVJbkZyYW1lU2V0KFdlYlBhZ2UqIHBhZ2UpCitzdGF0aWMgV2ViRnJhbWUqIGZpbmRM
YXJnZXN0RnJhbWVJbkZyYW1lU2V0KFdlYlBhZ2UmIHBhZ2UpCiB7CiAgICAgLy8gQXBwcm94aW1h
dGUgd2hhdCBhIHVzZXIgY291bGQgY29uc2lkZXIgYSBkZWZhdWx0IHRhcmdldCBmcmFtZSBmb3Ig
YXBwbGljYXRpb24gbWVudSBvcGVyYXRpb25zLgogCi0gICAgV2ViRnJhbWUqIG1haW5GcmFtZSA9
IHBhZ2UtPm1haW5XZWJGcmFtZSgpOworICAgIFdlYkZyYW1lKiBtYWluRnJhbWUgPSBwYWdlLm1h
aW5XZWJGcmFtZSgpOwogICAgIGlmICghbWFpbkZyYW1lIHx8ICFtYWluRnJhbWUtPmlzRnJhbWVT
ZXQoKSkKLSAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAg
V2ViRnJhbWUqIGxhcmdlc3RTb0ZhciA9IDA7CisgICAgV2ViRnJhbWUqIGxhcmdlc3RTb0ZhciA9
IG51bGxwdHI7CiAKICAgICBSZWY8QVBJOjpBcnJheT4gZnJhbWVDaGlsZHJlbiA9IG1haW5GcmFt
ZS0+Y2hpbGRGcmFtZXMoKTsKICAgICBzaXplX3QgY291bnQgPSBmcmFtZUNoaWxkcmVuLT5zaXpl
KCk7CiAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBjb3VudDsgKytpKSB7Ci0gICAgICAgIFdl
YkZyYW1lKiBjaGlsZEZyYW1lID0gZnJhbWVDaGlsZHJlbi0+YXQ8V2ViRnJhbWU+KGkpOworICAg
ICAgICBhdXRvKiBjaGlsZEZyYW1lID0gZnJhbWVDaGlsZHJlbi0+YXQ8V2ViRnJhbWU+KGkpOwog
ICAgICAgICBpZiAoIWxhcmdlc3RTb0ZhciB8fCBhcmVhKGNoaWxkRnJhbWUpID4gYXJlYShsYXJn
ZXN0U29GYXIpKQogICAgICAgICAgICAgbGFyZ2VzdFNvRmFyID0gY2hpbGRGcmFtZTsKICAgICB9
CkBAIC0xMjQsNiArMTI0LDE1IEBAIHN0YXRpYyBXZWJGcmFtZSogZmluZExhcmdlc3RGcmFtZUlu
RnJhbWVTZXQoV2ViUGFnZSogcGFnZSkKICAgICByZXR1cm4gbGFyZ2VzdFNvRmFyOwogfQogCitX
ZWJDaHJvbWVDbGllbnQ6OldlYkNocm9tZUNsaWVudChXZWJQYWdlJiBwYWdlKQorICAgIDogbV9w
YWdlKHBhZ2UpCit7Cit9CisKK2lubGluZSBXZWJDaHJvbWVDbGllbnQ6On5XZWJDaHJvbWVDbGll
bnQoKQoreworfQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y2hyb21lRGVzdHJveWVkKCkKIHsK
ICAgICBkZWxldGUgdGhpczsKQEAgLTEzMSw3ICsxNDAsNyBAQCB2b2lkIFdlYkNocm9tZUNsaWVu
dDo6Y2hyb21lRGVzdHJveWVkKCkKIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNldFdpbmRvd1Jl
Y3QoY29uc3QgRmxvYXRSZWN0JiB3aW5kb3dGcmFtZSkKIHsKLSAgICBtX3BhZ2UtPnNlbmRTZXRX
aW5kb3dGcmFtZSh3aW5kb3dGcmFtZSk7CisgICAgbV9wYWdlLnNlbmRTZXRXaW5kb3dGcmFtZSh3
aW5kb3dGcmFtZSk7CiB9CiAKIEZsb2F0UmVjdCBXZWJDaHJvbWVDbGllbnQ6OndpbmRvd1JlY3Qo
KQpAQCAtMTQwLDEzICsxNDksMTMgQEAgRmxvYXRSZWN0IFdlYkNocm9tZUNsaWVudDo6d2luZG93
UmVjdCgpCiAgICAgcmV0dXJuIEZsb2F0UmVjdCgpOwogI2Vsc2UKICNpZiBQTEFURk9STShNQUMp
Ci0gICAgaWYgKG1fcGFnZS0+aGFzQ2FjaGVkV2luZG93RnJhbWUoKSkKLSAgICAgICAgcmV0dXJu
IG1fcGFnZS0+d2luZG93RnJhbWVJblVuZmxpcHBlZFNjcmVlbkNvb3JkaW5hdGVzKCk7CisgICAg
aWYgKG1fcGFnZS5oYXNDYWNoZWRXaW5kb3dGcmFtZSgpKQorICAgICAgICByZXR1cm4gbV9wYWdl
LndpbmRvd0ZyYW1lSW5VbmZsaXBwZWRTY3JlZW5Db29yZGluYXRlcygpOwogI2VuZGlmCiAKICAg
ICBGbG9hdFJlY3QgbmV3V2luZG93RnJhbWU7CiAKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmds
ZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OkdldFdpbmRvd0ZyYW1lKCksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFdp
bmRvd0ZyYW1lOjpSZXBseShuZXdXaW5kb3dGcmFtZSksIG1fcGFnZS0+cGFnZUlEKCkpKQorICAg
IGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+
c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0V2luZG93RnJhbWUoKSwgTWVzc2Fn
ZXM6OldlYlBhZ2VQcm94eTo6R2V0V2luZG93RnJhbWU6OlJlcGx5KG5ld1dpbmRvd0ZyYW1lKSwg
bV9wYWdlLnBhZ2VJRCgpKSkKICAgICAgICAgcmV0dXJuIEZsb2F0UmVjdCgpOwogCiAgICAgcmV0
dXJuIG5ld1dpbmRvd0ZyYW1lOwpAQCAtMTU1LDMzICsxNjQsMzMgQEAgRmxvYXRSZWN0IFdlYkNo
cm9tZUNsaWVudDo6d2luZG93UmVjdCgpCiAKIEZsb2F0UmVjdCBXZWJDaHJvbWVDbGllbnQ6OnBh
Z2VSZWN0KCkKIHsKLSAgICByZXR1cm4gRmxvYXRSZWN0KEZsb2F0UG9pbnQoKSwgbV9wYWdlLT5z
aXplKCkpOworICAgIHJldHVybiBGbG9hdFJlY3QoRmxvYXRQb2ludCgpLCBtX3BhZ2Uuc2l6ZSgp
KTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmZvY3VzKCkKIHsKLSAgICBtX3BhZ2UtPnNl
bmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0Rm9jdXModHJ1ZSkpOworICAgIG1fcGFnZS5z
ZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldEZvY3VzKHRydWUpKTsKIH0KIAogdm9pZCBX
ZWJDaHJvbWVDbGllbnQ6OnVuZm9jdXMoKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6
V2ViUGFnZVByb3h5OjpTZXRGb2N1cyhmYWxzZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6OlNldEZvY3VzKGZhbHNlKSk7CiB9CiAKICNpZiBQTEFURk9STShDT0NP
QSkKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjplbGVtZW50RGlkRm9jdXMoY29uc3QgV2ViQ29yZTo6
Tm9kZSogbm9kZSkKIHsKLSAgICBtX3BhZ2UtPmVsZW1lbnREaWRGb2N1cyhjb25zdF9jYXN0PFdl
YkNvcmU6Ok5vZGUqPihub2RlKSk7CisgICAgbV9wYWdlLmVsZW1lbnREaWRGb2N1cyhjb25zdF9j
YXN0PFdlYkNvcmU6Ok5vZGUqPihub2RlKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpl
bGVtZW50RGlkQmx1cihjb25zdCBXZWJDb3JlOjpOb2RlKiBub2RlKQogewotICAgIG1fcGFnZS0+
ZWxlbWVudERpZEJsdXIoY29uc3RfY2FzdDxXZWJDb3JlOjpOb2RlKj4obm9kZSkpOworICAgIG1f
cGFnZS5lbGVtZW50RGlkQmx1cihjb25zdF9jYXN0PFdlYkNvcmU6Ok5vZGUqPihub2RlKSk7CiB9
CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjptYWtlRmlyc3RSZXNwb25kZXIoKQogewotICAgIG1f
cGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpNYWtlRmlyc3RSZXNwb25kZXIoKSk7
CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6TWFrZUZpcnN0UmVzcG9u
ZGVyKCkpOwogfSAgICAKICNlbmRpZiAgICAKIApAQCAtMTkzLDcgKzIwMiw3IEBAIGJvb2wgV2Vi
Q2hyb21lQ2xpZW50OjpjYW5UYWtlRm9jdXMoRm9jdXNEaXJlY3Rpb24pCiAKIHZvaWQgV2ViQ2hy
b21lQ2xpZW50Ojp0YWtlRm9jdXMoRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9uKQogewotICAgIG1f
cGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpUYWtlRm9jdXMoZGlyZWN0aW9uKSk7
CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6VGFrZUZvY3VzKGRpcmVj
dGlvbikpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6Zm9jdXNlZEVsZW1lbnRDaGFuZ2Vk
KEVsZW1lbnQqIGVsZW1lbnQpCkBAIC0yMDcsMTQgKzIxNiwxNCBAQCB2b2lkIFdlYkNocm9tZUNs
aWVudDo6Zm9jdXNlZEVsZW1lbnRDaGFuZ2VkKEVsZW1lbnQqIGVsZW1lbnQpCiAKICAgICBXZWJG
cmFtZSogd2ViRnJhbWUgPSBXZWJGcmFtZTo6ZnJvbUNvcmVGcmFtZSgqZWxlbWVudC0+ZG9jdW1l
bnQoKS5mcmFtZSgpKTsKICAgICBBU1NFUlQod2ViRnJhbWUpOwotICAgIG1fcGFnZS0+aW5qZWN0
ZWRCdW5kbGVGb3JtQ2xpZW50KCkuZGlkRm9jdXNUZXh0RmllbGQobV9wYWdlLCAmaW5wdXRFbGVt
ZW50LCB3ZWJGcmFtZSk7CisgICAgbV9wYWdlLmluamVjdGVkQnVuZGxlRm9ybUNsaWVudCgpLmRp
ZEZvY3VzVGV4dEZpZWxkKCZtX3BhZ2UsICZpbnB1dEVsZW1lbnQsIHdlYkZyYW1lKTsKIH0KIAog
dm9pZCBXZWJDaHJvbWVDbGllbnQ6OmZvY3VzZWRGcmFtZUNoYW5nZWQoRnJhbWUqIGZyYW1lKQog
ewogICAgIFdlYkZyYW1lKiB3ZWJGcmFtZSA9IGZyYW1lID8gV2ViRnJhbWU6OmZyb21Db3JlRnJh
bWUoKmZyYW1lKSA6IG51bGxwdHI7CiAKLSAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJl
bnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZvY3Vz
ZWRGcmFtZUNoYW5nZWQod2ViRnJhbWUgPyB3ZWJGcmFtZS0+ZnJhbWVJRCgpIDogMCksIG1fcGFn
ZS0+cGFnZUlEKCkpOworICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3ND
b25uZWN0aW9uKCktPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6Rm9jdXNlZEZyYW1lQ2hh
bmdlZCh3ZWJGcmFtZSA/IHdlYkZyYW1lLT5mcmFtZUlEKCkgOiAwKSwgbV9wYWdlLnBhZ2VJRCgp
KTsKIH0KIAogUGFnZSogV2ViQ2hyb21lQ2xpZW50OjpjcmVhdGVXaW5kb3coRnJhbWUqIGZyYW1l
LCBjb25zdCBGcmFtZUxvYWRSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBXaW5kb3dGZWF0dXJlcyYg
d2luZG93RmVhdHVyZXMsIGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIG5hdmlnYXRpb25BY3Rpb24p
CkBAIC0yMzQsMTMgKzI0MywxMyBAQCBQYWdlKiBXZWJDaHJvbWVDbGllbnQ6OmNyZWF0ZVdpbmRv
dyhGcmFtZSogZnJhbWUsIGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmIHJlcXVlcwogICAgIG5hdmln
YXRpb25BY3Rpb25EYXRhLm1vdXNlQnV0dG9uID0gSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0
aW9uOjptb3VzZUJ1dHRvbkZvck5hdmlnYXRpb25BY3Rpb24obmF2aWdhdGlvbkFjdGlvbik7CiAg
ICAgbmF2aWdhdGlvbkFjdGlvbkRhdGEuc3ludGhldGljQ2xpY2tUeXBlID0gSW5qZWN0ZWRCdW5k
bGVOYXZpZ2F0aW9uQWN0aW9uOjpzeW50aGV0aWNDbGlja1R5cGVGb3JOYXZpZ2F0aW9uQWN0aW9u
KG5hdmlnYXRpb25BY3Rpb24pOwogICAgIG5hdmlnYXRpb25BY3Rpb25EYXRhLnVzZXJHZXN0dXJl
VG9rZW5JZGVudGlmaWVyID0gd2ViUHJvY2Vzcy51c2VyR2VzdHVyZVRva2VuSWRlbnRpZmllcihu
YXZpZ2F0aW9uQWN0aW9uLnVzZXJHZXN0dXJlVG9rZW4oKSk7Ci0gICAgbmF2aWdhdGlvbkFjdGlv
bkRhdGEuY2FuSGFuZGxlUmVxdWVzdCA9IG1fcGFnZS0+Y2FuSGFuZGxlUmVxdWVzdChyZXF1ZXN0
LnJlc291cmNlUmVxdWVzdCgpKTsKKyAgICBuYXZpZ2F0aW9uQWN0aW9uRGF0YS5jYW5IYW5kbGVS
ZXF1ZXN0ID0gbV9wYWdlLmNhbkhhbmRsZVJlcXVlc3QocmVxdWVzdC5yZXNvdXJjZVJlcXVlc3Qo
KSk7CiAgICAgbmF2aWdhdGlvbkFjdGlvbkRhdGEuc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGlj
eSA9IG5hdmlnYXRpb25BY3Rpb24uc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSgpOwogICAg
IG5hdmlnYXRpb25BY3Rpb25EYXRhLmRvd25sb2FkQXR0cmlidXRlID0gbmF2aWdhdGlvbkFjdGlv
bi5kb3dubG9hZEF0dHJpYnV0ZSgpOwogCiAgICAgdWludDY0X3QgbmV3UGFnZUlEID0gMDsKICAg
ICBXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzIHBhcmFtZXRlcnM7Ci0gICAgaWYgKCF3ZWJQcm9j
ZXNzLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OkNyZWF0ZU5ld1BhZ2Uod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5E
YXRhOjpmcm9tRnJhbWUoZnJhbWUpLCByZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLCB3aW5kb3dG
ZWF0dXJlcywgbmF2aWdhdGlvbkFjdGlvbkRhdGEpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpD
cmVhdGVOZXdQYWdlOjpSZXBseShuZXdQYWdlSUQsIHBhcmFtZXRlcnMpLCBtX3BhZ2UtPnBhZ2VJ
RCgpKSkKKyAgICBpZiAoIXdlYlByb2Nlc3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2Vu
ZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6Q3JlYXRlTmV3UGFnZSh3ZWJGcmFtZS0+ZnJh
bWVJRCgpLCBTZWN1cml0eU9yaWdpbkRhdGE6OmZyb21GcmFtZShmcmFtZSksIHJlcXVlc3QucmVz
b3VyY2VSZXF1ZXN0KCksIHdpbmRvd0ZlYXR1cmVzLCBuYXZpZ2F0aW9uQWN0aW9uRGF0YSksIE1l
c3NhZ2VzOjpXZWJQYWdlUHJveHk6OkNyZWF0ZU5ld1BhZ2U6OlJlcGx5KG5ld1BhZ2VJRCwgcGFy
YW1ldGVycyksIG1fcGFnZS5wYWdlSUQoKSkpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCiAg
ICAgaWYgKCFuZXdQYWdlSUQpCkBAIC0yNTIsMzIgKzI2MSwzMiBAQCBQYWdlKiBXZWJDaHJvbWVD
bGllbnQ6OmNyZWF0ZVdpbmRvdyhGcmFtZSogZnJhbWUsIGNvbnN0IEZyYW1lTG9hZFJlcXVlc3Qm
IHJlcXVlcwogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2hvdygpCiB7Ci0gICAgbV9wYWdlLT5z
aG93KCk7CisgICAgbV9wYWdlLnNob3coKTsKIH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OmNh
blJ1bk1vZGFsKCkKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5jYW5SdW5Nb2RhbCgpOworICAgIHJl
dHVybiBtX3BhZ2UuY2FuUnVuTW9kYWwoKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJ1
bk1vZGFsKCkKIHsKLSAgICBtX3BhZ2UtPnJ1bk1vZGFsKCk7CisgICAgbV9wYWdlLnJ1bk1vZGFs
KCk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRUb29sYmFyc1Zpc2libGUoYm9vbCB0
b29sYmFyc0FyZVZpc2libGUpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OlNldFRvb2xiYXJzQXJlVmlzaWJsZSh0b29sYmFyc0FyZVZpc2libGUpKTsKKyAgICBt
X3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRUb29sYmFyc0FyZVZpc2libGUo
dG9vbGJhcnNBcmVWaXNpYmxlKSk7CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50Ojp0b29sYmFy
c1Zpc2libGUoKQogewotICAgIEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VVSUNsaWVudDo6VUlF
bGVtZW50VmlzaWJpbGl0eSB0b29sYmFyc1Zpc2liaWxpdHkgPSBtX3BhZ2UtPmluamVjdGVkQnVu
ZGxlVUlDbGllbnQoKS50b29sYmFyc0FyZVZpc2libGUobV9wYWdlKTsKKyAgICBBUEk6OkluamVj
dGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHkgdG9vbGJhcnNWaXNp
YmlsaXR5ID0gbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS50b29sYmFyc0FyZVZpc2li
bGUoJm1fcGFnZSk7CiAgICAgaWYgKHRvb2xiYXJzVmlzaWJpbGl0eSAhPSBBUEk6OkluamVjdGVk
QnVuZGxlOjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHk6OlVua25vd24pCiAgICAg
ICAgIHJldHVybiB0b29sYmFyc1Zpc2liaWxpdHkgPT0gQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFn
ZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5OjpWaXNpYmxlOwogICAgIAogICAgIGJvb2wg
dG9vbGJhcnNBcmVWaXNpYmxlID0gdHJ1ZTsKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRv
bigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OkdldFRvb2xiYXJzQXJlVmlzaWJsZSgpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpH
ZXRUb29sYmFyc0FyZVZpc2libGU6OlJlcGx5KHRvb2xiYXJzQXJlVmlzaWJsZSksIG1fcGFnZS0+
cGFnZUlEKCkpKQorICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vz
c0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0VG9vbGJh
cnNBcmVWaXNpYmxlKCksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFRvb2xiYXJzQXJlVmlz
aWJsZTo6UmVwbHkodG9vbGJhcnNBcmVWaXNpYmxlKSwgbV9wYWdlLnBhZ2VJRCgpKSkKICAgICAg
ICAgcmV0dXJuIHRydWU7CiAKICAgICByZXR1cm4gdG9vbGJhcnNBcmVWaXNpYmxlOwpAQCAtMjg1
LDE3ICsyOTQsMTcgQEAgYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnRvb2xiYXJzVmlzaWJsZSgpCiAK
IHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRTdGF0dXNiYXJWaXNpYmxlKGJvb2wgc3RhdHVzQmFy
SXNWaXNpYmxlKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpT
ZXRTdGF0dXNCYXJJc1Zpc2libGUoc3RhdHVzQmFySXNWaXNpYmxlKSk7CisgICAgbV9wYWdlLnNl
bmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0U3RhdHVzQmFySXNWaXNpYmxlKHN0YXR1c0Jh
cklzVmlzaWJsZSkpOwogfQogCiBib29sIFdlYkNocm9tZUNsaWVudDo6c3RhdHVzYmFyVmlzaWJs
ZSgpCiB7Ci0gICAgQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRW
aXNpYmlsaXR5IHN0YXR1c2JhclZpc2liaWxpdHkgPSBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlD
bGllbnQoKS5zdGF0dXNCYXJJc1Zpc2libGUobV9wYWdlKTsKKyAgICBBUEk6OkluamVjdGVkQnVu
ZGxlOjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHkgc3RhdHVzYmFyVmlzaWJpbGl0
eSA9IG1fcGFnZS5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkuc3RhdHVzQmFySXNWaXNpYmxlKCZt
X3BhZ2UpOwogICAgIGlmIChzdGF0dXNiYXJWaXNpYmlsaXR5ICE9IEFQSTo6SW5qZWN0ZWRCdW5k
bGU6OlBhZ2VVSUNsaWVudDo6VUlFbGVtZW50VmlzaWJpbGl0eTo6VW5rbm93bikKICAgICAgICAg
cmV0dXJuIHN0YXR1c2JhclZpc2liaWxpdHkgPT0gQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJ
Q2xpZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5OjpWaXNpYmxlOwogCiAgICAgYm9vbCBzdGF0dXNC
YXJJc1Zpc2libGUgPSB0cnVlOwotICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFy
ZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6
R2V0U3RhdHVzQmFySXNWaXNpYmxlKCksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFN0YXR1
c0JhcklzVmlzaWJsZTo6UmVwbHkoc3RhdHVzQmFySXNWaXNpYmxlKSwgbV9wYWdlLT5wYWdlSUQo
KSkpCisgICAgaWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVj
dGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRTdGF0dXNCYXJJc1Zp
c2libGUoKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0U3RhdHVzQmFySXNWaXNpYmxlOjpS
ZXBseShzdGF0dXNCYXJJc1Zpc2libGUpLCBtX3BhZ2UucGFnZUlEKCkpKQogICAgICAgICByZXR1
cm4gdHJ1ZTsKIAogICAgIHJldHVybiBzdGF0dXNCYXJJc1Zpc2libGU7CkBAIC0zMTQsMTcgKzMy
MywxNyBAQCBib29sIFdlYkNocm9tZUNsaWVudDo6c2Nyb2xsYmFyc1Zpc2libGUoKQogCiB2b2lk
IFdlYkNocm9tZUNsaWVudDo6c2V0TWVudWJhclZpc2libGUoYm9vbCBtZW51QmFyVmlzaWJsZSkK
IHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0TWVudUJhcklz
VmlzaWJsZShtZW51QmFyVmlzaWJsZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OlNldE1lbnVCYXJJc1Zpc2libGUobWVudUJhclZpc2libGUpKTsKIH0KIAogYm9v
bCBXZWJDaHJvbWVDbGllbnQ6Om1lbnViYXJWaXNpYmxlKCkKIHsKLSAgICBBUEk6OkluamVjdGVk
QnVuZGxlOjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHkgbWVudWJhclZpc2liaWxp
dHkgPSBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5tZW51QmFySXNWaXNpYmxlKG1f
cGFnZSk7CisgICAgQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRW
aXNpYmlsaXR5IG1lbnViYXJWaXNpYmlsaXR5ID0gbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGll
bnQoKS5tZW51QmFySXNWaXNpYmxlKCZtX3BhZ2UpOwogICAgIGlmIChtZW51YmFyVmlzaWJpbGl0
eSAhPSBBUEk6OkluamVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxp
dHk6OlVua25vd24pCiAgICAgICAgIHJldHVybiBtZW51YmFyVmlzaWJpbGl0eSA9PSBBUEk6Oklu
amVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHk6OlZpc2libGU7
CiAgICAgCiAgICAgYm9vbCBtZW51QmFySXNWaXNpYmxlID0gdHJ1ZTsKLSAgICBpZiAoIVdlYlBy
b2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1l
c3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldE1lbnVCYXJJc1Zpc2libGUoKSwgTWVzc2FnZXM6Oldl
YlBhZ2VQcm94eTo6R2V0TWVudUJhcklzVmlzaWJsZTo6UmVwbHkobWVudUJhcklzVmlzaWJsZSks
IG1fcGFnZS0+cGFnZUlEKCkpKQorICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFy
ZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6
R2V0TWVudUJhcklzVmlzaWJsZSgpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRNZW51QmFy
SXNWaXNpYmxlOjpSZXBseShtZW51QmFySXNWaXNpYmxlKSwgbV9wYWdlLnBhZ2VJRCgpKSkKICAg
ICAgICAgcmV0dXJuIHRydWU7CiAKICAgICByZXR1cm4gbWVudUJhcklzVmlzaWJsZTsKQEAgLTMz
MiwxOCArMzQxLDE4IEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjptZW51YmFyVmlzaWJsZSgpCiAK
IHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRSZXNpemFibGUoYm9vbCByZXNpemFibGUpCiB7Ci0g
ICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldElzUmVzaXphYmxlKHJl
c2l6YWJsZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldElz
UmVzaXphYmxlKHJlc2l6YWJsZSkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6YWRkTWVz
c2FnZVRvQ29uc29sZShNZXNzYWdlU291cmNlIHNvdXJjZSwgTWVzc2FnZUxldmVsIGxldmVsLCBj
b25zdCBTdHJpbmcmIG1lc3NhZ2UsIHVuc2lnbmVkIGxpbmVOdW1iZXIsIHVuc2lnbmVkIGNvbHVt
bk51bWJlciwgY29uc3QgU3RyaW5nJiBzb3VyY2VJRCkKIHsKICAgICAvLyBOb3RpZnkgdGhlIGJ1
bmRsZSBjbGllbnQuCi0gICAgbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkud2lsbEFk
ZE1lc3NhZ2VUb0NvbnNvbGUobV9wYWdlLCBzb3VyY2UsIGxldmVsLCBtZXNzYWdlLCBsaW5lTnVt
YmVyLCBjb2x1bW5OdW1iZXIsIHNvdXJjZUlEKTsKKyAgICBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVV
SUNsaWVudCgpLndpbGxBZGRNZXNzYWdlVG9Db25zb2xlKCZtX3BhZ2UsIHNvdXJjZSwgbGV2ZWws
IG1lc3NhZ2UsIGxpbmVOdW1iZXIsIGNvbHVtbk51bWJlciwgc291cmNlSUQpOwogfQogCiBib29s
IFdlYkNocm9tZUNsaWVudDo6Y2FuUnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsKCkKIHsKLSAg
ICByZXR1cm4gbV9wYWdlLT5jYW5SdW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoKTsKKyAgICBy
ZXR1cm4gbV9wYWdlLmNhblJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbCgpOwogfQogCiBib29s
IFdlYkNocm9tZUNsaWVudDo6cnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsKGNvbnN0IFN0cmlu
ZyYgbWVzc2FnZSwgRnJhbWUqIGZyYW1lKQpAQCAtMzU0LDcgKzM2Myw3IEBAIGJvb2wgV2ViQ2hy
b21lQ2xpZW50OjpydW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoY29uc3QgU3RyaW5nJiBtZXNz
YWdlLCBGcmFtZSoKIAogICAgIEhhbmdEZXRlY3Rpb25EaXNhYmxlciBoYW5nRGV0ZWN0aW9uRGlz
YWJsZXI7CiAKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3ND
b25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJ1bkJlZm9yZVVu
bG9hZENvbmZpcm1QYW5lbChtZXNzYWdlLCB3ZWJGcmFtZS0+ZnJhbWVJRCgpKSwgTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6UnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsOjpSZXBseShzaG91bGRD
bG9zZSksIG1fcGFnZS0+cGFnZUlEKCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5
bmNPcHRpb246OkluZm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKSkKKyAgICBpZiAoIVdl
YlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5j
KE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbChtZXNz
YWdlLCB3ZWJGcmFtZS0+ZnJhbWVJRCgpKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuQmVm
b3JlVW5sb2FkQ29uZmlybVBhbmVsOjpSZXBseShzaG91bGRDbG9zZSksIG1fcGFnZS5wYWdlSUQo
KSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBDOjpTZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZv
cm1Qcm9jZXNzV2lsbFN1c3BlbmQpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICByZXR1
cm4gc2hvdWxkQ2xvc2U7CkBAIC0zNjksMTQgKzM3OCwxNCBAQCB2b2lkIFdlYkNocm9tZUNsaWVu
dDo6Y2xvc2VXaW5kb3dTb29uKCkKICAgICAvLyBhIGNsb3NlIGV4ZWN1dGUgc3luY2hyb25vdXNs
eSBhcyBwYXJ0IG9mIHdpbmRvdy5jbG9zZSwgYnV0IG90aGVyIHBhcnRzCiAgICAgLy8gbGF0ZXIg
b24uCiAKLSAgICBtX3BhZ2UtPmNvcmVQYWdlKCktPnNldEdyb3VwTmFtZShTdHJpbmcoKSk7Cisg
ICAgbV9wYWdlLmNvcmVQYWdlKCktPnNldEdyb3VwTmFtZShTdHJpbmcoKSk7CiAKLSAgICBpZiAo
V2ViRnJhbWUqIGZyYW1lID0gbV9wYWdlLT5tYWluV2ViRnJhbWUoKSkgeworICAgIGlmIChXZWJG
cmFtZSogZnJhbWUgPSBtX3BhZ2UubWFpbldlYkZyYW1lKCkpIHsKICAgICAgICAgaWYgKEZyYW1l
KiBjb3JlRnJhbWUgPSBmcmFtZS0+Y29yZUZyYW1lKCkpCiAgICAgICAgICAgICBjb3JlRnJhbWUt
PmxvYWRlcigpLnN0b3BGb3JVc2VyQ2FuY2VsKCk7CiAgICAgfQogCi0gICAgbV9wYWdlLT5zZW5k
Q2xvc2UoKTsKKyAgICBtX3BhZ2Uuc2VuZENsb3NlKCk7CiB9CiAKIHN0YXRpYyBib29sIHNob3Vs
ZFN1cHByZXNzSmF2YVNjcmlwdERpYWxvZ3MoRnJhbWUmIGZyYW1lKQpAQCAtMzk2LDExICs0MDUs
MTEgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJ1bkphdmFTY3JpcHRBbGVydChGcmFtZSogZnJh
bWUsIGNvbnN0IFN0cmluZyYgYWxlcnRUZXh0KQogICAgIEFTU0VSVCh3ZWJGcmFtZSk7CiAKICAg
ICAvLyBOb3RpZnkgdGhlIGJ1bmRsZSBjbGllbnQuCi0gICAgbV9wYWdlLT5pbmplY3RlZEJ1bmRs
ZVVJQ2xpZW50KCkud2lsbFJ1bkphdmFTY3JpcHRBbGVydChtX3BhZ2UsIGFsZXJ0VGV4dCwgd2Vi
RnJhbWUpOworICAgIG1fcGFnZS5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkud2lsbFJ1bkphdmFT
Y3JpcHRBbGVydCgmbV9wYWdlLCBhbGVydFRleHQsIHdlYkZyYW1lKTsKIAogICAgIEhhbmdEZXRl
Y3Rpb25EaXNhYmxlciBoYW5nRGV0ZWN0aW9uRGlzYWJsZXI7CiAKLSAgICBXZWJQcm9jZXNzOjpz
aW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6
V2ViUGFnZVByb3h5OjpSdW5KYXZhU2NyaXB0QWxlcnQod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2Vj
dXJpdHlPcmlnaW5EYXRhOjpmcm9tRnJhbWUoZnJhbWUpLCBhbGVydFRleHQpLCBNZXNzYWdlczo6
V2ViUGFnZVByb3h5OjpSdW5KYXZhU2NyaXB0QWxlcnQ6OlJlcGx5KCksIG1fcGFnZS0+cGFnZUlE
KCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246OkluZm9ybVBsYXRm
b3JtUHJvY2Vzc1dpbGxTdXNwZW5kKTsKKyAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJl
bnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpS
dW5KYXZhU2NyaXB0QWxlcnQod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRh
Ojpmcm9tRnJhbWUoZnJhbWUpLCBhbGVydFRleHQpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpS
dW5KYXZhU2NyaXB0QWxlcnQ6OlJlcGx5KCksIG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25kczo6aW5m
aW5pdHkoKSwgSVBDOjpTZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1
c3BlbmQpOwogfQogCiBib29sIFdlYkNocm9tZUNsaWVudDo6cnVuSmF2YVNjcmlwdENvbmZpcm0o
RnJhbWUqIGZyYW1lLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UpCkBAIC00MTIsMTIgKzQyMSwxMiBA
QCBib29sIFdlYkNocm9tZUNsaWVudDo6cnVuSmF2YVNjcmlwdENvbmZpcm0oRnJhbWUqIGZyYW1l
LCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UpCiAgICAgQVNTRVJUKHdlYkZyYW1lKTsKIAogICAgIC8v
IE5vdGlmeSB0aGUgYnVuZGxlIGNsaWVudC4KLSAgICBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlD
bGllbnQoKS53aWxsUnVuSmF2YVNjcmlwdENvbmZpcm0obV9wYWdlLCBtZXNzYWdlLCB3ZWJGcmFt
ZSk7CisgICAgbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS53aWxsUnVuSmF2YVNjcmlw
dENvbmZpcm0oJm1fcGFnZSwgbWVzc2FnZSwgd2ViRnJhbWUpOwogCiAgICAgSGFuZ0RldGVjdGlv
bkRpc2FibGVyIGhhbmdEZXRlY3Rpb25EaXNhYmxlcjsKIAogICAgIGJvb2wgcmVzdWx0ID0gZmFs
c2U7Ci0gICAgaWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVj
dGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2NyaXB0Q29u
ZmlybSh3ZWJGcmFtZS0+ZnJhbWVJRCgpLCBTZWN1cml0eU9yaWdpbkRhdGE6OmZyb21GcmFtZShm
cmFtZSksIG1lc3NhZ2UpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2NyaXB0Q29u
ZmlybTo6UmVwbHkocmVzdWx0KSwgbV9wYWdlLT5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHko
KSwgSVBDOjpTZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQp
KQorICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rp
b24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdENvbmZp
cm0od2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tRnJhbWUoZnJh
bWUpLCBtZXNzYWdlKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdENvbmZp
cm06OlJlcGx5KHJlc3VsdCksIG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwg
SVBDOjpTZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpKQog
ICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICByZXR1cm4gcmVzdWx0OwpAQCAtNDMyLDExICs0
NDEsMTEgQEAgYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnJ1bkphdmFTY3JpcHRQcm9tcHQoRnJhbWUq
IGZyYW1lLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIGMKICAgICBBU1NFUlQod2ViRnJhbWUpOwog
CiAgICAgLy8gTm90aWZ5IHRoZSBidW5kbGUgY2xpZW50LgotICAgIG1fcGFnZS0+aW5qZWN0ZWRC
dW5kbGVVSUNsaWVudCgpLndpbGxSdW5KYXZhU2NyaXB0UHJvbXB0KG1fcGFnZSwgbWVzc2FnZSwg
ZGVmYXVsdFZhbHVlLCB3ZWJGcmFtZSk7CisgICAgbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGll
bnQoKS53aWxsUnVuSmF2YVNjcmlwdFByb21wdCgmbV9wYWdlLCBtZXNzYWdlLCBkZWZhdWx0VmFs
dWUsIHdlYkZyYW1lKTsKIAogICAgIEhhbmdEZXRlY3Rpb25EaXNhYmxlciBoYW5nRGV0ZWN0aW9u
RGlzYWJsZXI7CiAKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nl
c3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJ1bkphdmFT
Y3JpcHRQcm9tcHQod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9t
RnJhbWUoZnJhbWUpLCBtZXNzYWdlLCBkZWZhdWx0VmFsdWUpLCBNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpSdW5KYXZhU2NyaXB0UHJvbXB0OjpSZXBseShyZXN1bHQpLCBtX3BhZ2UtPnBhZ2VJRCgp
LCBTZWNvbmRzOjppbmZpbml0eSgpLCBJUEM6OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0Zm9y
bVByb2Nlc3NXaWxsU3VzcGVuZCkpCisgICAgaWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5w
YXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjpSdW5KYXZhU2NyaXB0UHJvbXB0KHdlYkZyYW1lLT5mcmFtZUlEKCksIFNlY3VyaXR5T3JpZ2lu
RGF0YTo6ZnJvbUZyYW1lKGZyYW1lKSwgbWVzc2FnZSwgZGVmYXVsdFZhbHVlKSwgTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdFByb21wdDo6UmVwbHkocmVzdWx0KSwgbV9wYWdl
LnBhZ2VJRCgpLCBTZWNvbmRzOjppbmZpbml0eSgpLCBJUEM6OlNlbmRTeW5jT3B0aW9uOjpJbmZv
cm1QbGF0Zm9ybVByb2Nlc3NXaWxsU3VzcGVuZCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAog
ICAgIHJldHVybiAhcmVzdWx0LmlzTnVsbCgpOwpAQCAtNDQ1LDI3ICs0NTQsMjkgQEAgYm9vbCBX
ZWJDaHJvbWVDbGllbnQ6OnJ1bkphdmFTY3JpcHRQcm9tcHQoRnJhbWUqIGZyYW1lLCBjb25zdCBT
dHJpbmcmIG1lc3NhZ2UsIGMKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRTdGF0dXNiYXJUZXh0
KGNvbnN0IFN0cmluZyYgc3RhdHVzYmFyVGV4dCkKIHsKICAgICAvLyBOb3RpZnkgdGhlIGJ1bmRs
ZSBjbGllbnQuCi0gICAgbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkud2lsbFNldFN0
YXR1c2JhclRleHQobV9wYWdlLCBzdGF0dXNiYXJUZXh0KTsKKyAgICBtX3BhZ2UuaW5qZWN0ZWRC
dW5kbGVVSUNsaWVudCgpLndpbGxTZXRTdGF0dXNiYXJUZXh0KCZtX3BhZ2UsIHN0YXR1c2JhclRl
eHQpOwogCi0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldFN0YXR1
c1RleHQoc3RhdHVzYmFyVGV4dCkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OlNldFN0YXR1c1RleHQoc3RhdHVzYmFyVGV4dCkpOwogfQogCiBLZXlib2FyZFVJTW9k
ZSBXZWJDaHJvbWVDbGllbnQ6OmtleWJvYXJkVUlNb2RlKCkKIHsKLSAgICByZXR1cm4gbV9wYWdl
LT5rZXlib2FyZFVJTW9kZSgpOworICAgIHJldHVybiBtX3BhZ2Uua2V5Ym9hcmRVSU1vZGUoKTsK
IH0KIAogI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCisKIGJvb2wgV2ViQ2hyb21lQ2xpZW50Ojpy
ZXF1ZXN0UG9pbnRlckxvY2soKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFn
ZVByb3h5OjpSZXF1ZXN0UG9pbnRlckxvY2soKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6UmVxdWVzdFBvaW50ZXJMb2NrKCkpOwogICAgIHJldHVybiB0cnVlOwog
fQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6cmVxdWVzdFBvaW50ZXJVbmxvY2soKQogewotICAg
IG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZXF1ZXN0UG9pbnRlclVubG9j
aygpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZXF1ZXN0UG9p
bnRlclVubG9jaygpKTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjppbnZh
bGlkYXRlUm9vdFZpZXcoY29uc3QgSW50UmVjdCYpCkBAIC00NzUsNjEgKzQ4Niw2MSBAQCB2b2lk
IFdlYkNocm9tZUNsaWVudDo6aW52YWxpZGF0ZVJvb3RWaWV3KGNvbnN0IEludFJlY3QmKQogCiB2
b2lkIFdlYkNocm9tZUNsaWVudDo6aW52YWxpZGF0ZUNvbnRlbnRzQW5kUm9vdFZpZXcoY29uc3Qg
SW50UmVjdCYgcmVjdCkKIHsKLSAgICBpZiAoRG9jdW1lbnQqIGRvY3VtZW50ID0gbV9wYWdlLT5j
b3JlUGFnZSgpLT5tYWluRnJhbWUoKS5kb2N1bWVudCgpKSB7CisgICAgaWYgKERvY3VtZW50KiBk
b2N1bWVudCA9IG1fcGFnZS5jb3JlUGFnZSgpLT5tYWluRnJhbWUoKS5kb2N1bWVudCgpKSB7CiAg
ICAgICAgIGlmIChkb2N1bWVudC0+cHJpbnRpbmcoKSkKICAgICAgICAgICAgIHJldHVybjsKICAg
ICB9CiAKLSAgICBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPnNldE5lZWRzRGlzcGxheUluUmVjdChy
ZWN0KTsKKyAgICBtX3BhZ2UuZHJhd2luZ0FyZWEoKS0+c2V0TmVlZHNEaXNwbGF5SW5SZWN0KHJl
Y3QpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6aW52YWxpZGF0ZUNvbnRlbnRzRm9yU2xv
d1Njcm9sbChjb25zdCBJbnRSZWN0JiByZWN0KQogewotICAgIGlmIChEb2N1bWVudCogZG9jdW1l
bnQgPSBtX3BhZ2UtPmNvcmVQYWdlKCktPm1haW5GcmFtZSgpLmRvY3VtZW50KCkpIHsKKyAgICBp
ZiAoRG9jdW1lbnQqIGRvY3VtZW50ID0gbV9wYWdlLmNvcmVQYWdlKCktPm1haW5GcmFtZSgpLmRv
Y3VtZW50KCkpIHsKICAgICAgICAgaWYgKGRvY3VtZW50LT5wcmludGluZygpKQogICAgICAgICAg
ICAgcmV0dXJuOwogICAgIH0KIAotICAgIG1fcGFnZS0+cGFnZURpZFNjcm9sbCgpOworICAgIG1f
cGFnZS5wYWdlRGlkU2Nyb2xsKCk7CiAjaWYgVVNFKENPT1JESU5BVEVEX0dSQVBISUNTKQotICAg
IG1fcGFnZS0+ZHJhd2luZ0FyZWEoKS0+c2Nyb2xsKHJlY3QsIEludFNpemUoKSk7CisgICAgbV9w
YWdlLmRyYXdpbmdBcmVhKCktPnNjcm9sbChyZWN0LCBJbnRTaXplKCkpOwogI2Vsc2UKLSAgICBt
X3BhZ2UtPmRyYXdpbmdBcmVhKCktPnNldE5lZWRzRGlzcGxheUluUmVjdChyZWN0KTsKKyAgICBt
X3BhZ2UuZHJhd2luZ0FyZWEoKS0+c2V0TmVlZHNEaXNwbGF5SW5SZWN0KHJlY3QpOwogI2VuZGlm
CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzY3JvbGwoY29uc3QgSW50U2l6ZSYgc2Nyb2xs
RGVsdGEsIGNvbnN0IEludFJlY3QmIHNjcm9sbFJlY3QsIGNvbnN0IEludFJlY3QmIGNsaXBSZWN0
KQogewotICAgIG1fcGFnZS0+cGFnZURpZFNjcm9sbCgpOwotICAgIG1fcGFnZS0+ZHJhd2luZ0Fy
ZWEoKS0+c2Nyb2xsKGludGVyc2VjdGlvbihzY3JvbGxSZWN0LCBjbGlwUmVjdCksIHNjcm9sbERl
bHRhKTsKKyAgICBtX3BhZ2UucGFnZURpZFNjcm9sbCgpOworICAgIG1fcGFnZS5kcmF3aW5nQXJl
YSgpLT5zY3JvbGwoaW50ZXJzZWN0aW9uKHNjcm9sbFJlY3QsIGNsaXBSZWN0KSwgc2Nyb2xsRGVs
dGEpOwogfQogCiAjaWYgVVNFKENPT1JESU5BVEVEX0dSQVBISUNTKQogdm9pZCBXZWJDaHJvbWVD
bGllbnQ6OmRlbGVnYXRlZFNjcm9sbFJlcXVlc3RlZChjb25zdCBJbnRQb2ludCYgc2Nyb2xsT2Zm
c2V0KQogewotICAgIG1fcGFnZS0+cGFnZURpZFJlcXVlc3RTY3JvbGwoc2Nyb2xsT2Zmc2V0KTsK
KyAgICBtX3BhZ2UucGFnZURpZFJlcXVlc3RTY3JvbGwoc2Nyb2xsT2Zmc2V0KTsKIH0KICNlbmRp
ZgogCiBJbnRQb2ludCBXZWJDaHJvbWVDbGllbnQ6OnNjcmVlblRvUm9vdFZpZXcoY29uc3QgSW50
UG9pbnQmIHBvaW50KSBjb25zdAogewotICAgIHJldHVybiBtX3BhZ2UtPnNjcmVlblRvUm9vdFZp
ZXcocG9pbnQpOworICAgIHJldHVybiBtX3BhZ2Uuc2NyZWVuVG9Sb290Vmlldyhwb2ludCk7CiB9
CiAKIEludFJlY3QgV2ViQ2hyb21lQ2xpZW50Ojpyb290Vmlld1RvU2NyZWVuKGNvbnN0IEludFJl
Y3QmIHJlY3QpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+cm9vdFZpZXdUb1NjcmVlbihy
ZWN0KTsKKyAgICByZXR1cm4gbV9wYWdlLnJvb3RWaWV3VG9TY3JlZW4ocmVjdCk7CiB9CiAgICAg
CiAjaWYgUExBVEZPUk0oSU9TKQogSW50UG9pbnQgV2ViQ2hyb21lQ2xpZW50OjphY2Nlc3NpYmls
aXR5U2NyZWVuVG9Sb290Vmlldyhjb25zdCBJbnRQb2ludCYgcG9pbnQpIGNvbnN0CiB7Ci0gICAg
cmV0dXJuIG1fcGFnZS0+YWNjZXNzaWJpbGl0eVNjcmVlblRvUm9vdFZpZXcocG9pbnQpOworICAg
IHJldHVybiBtX3BhZ2UuYWNjZXNzaWJpbGl0eVNjcmVlblRvUm9vdFZpZXcocG9pbnQpOwogfQog
CiBJbnRSZWN0IFdlYkNocm9tZUNsaWVudDo6cm9vdFZpZXdUb0FjY2Vzc2liaWxpdHlTY3JlZW4o
Y29uc3QgSW50UmVjdCYgcmVjdCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5yb290Vmll
d1RvQWNjZXNzaWJpbGl0eVNjcmVlbihyZWN0KTsKKyAgICByZXR1cm4gbV9wYWdlLnJvb3RWaWV3
VG9BY2Nlc3NpYmlsaXR5U2NyZWVuKHJlY3QpOwogfQogI2VuZGlmCiAKQEAgLTU0MSwyMCArNTUy
LDIwIEBAIFBsYXRmb3JtUGFnZUNsaWVudCBXZWJDaHJvbWVDbGllbnQ6OnBsYXRmb3JtUGFnZUNs
aWVudCgpIGNvbnN0CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpjb250ZW50c1NpemVDaGFuZ2Vk
KEZyYW1lKiBmcmFtZSwgY29uc3QgSW50U2l6ZSYgc2l6ZSkgY29uc3QKIHsKLSAgICBpZiAoIW1f
cGFnZS0+Y29yZVBhZ2UoKS0+c2V0dGluZ3MoKS5mcmFtZUZsYXR0ZW5pbmdFbmFibGVkKCkpIHsK
KyAgICBpZiAoIW1fcGFnZS5jb3JlUGFnZSgpLT5zZXR0aW5ncygpLmZyYW1lRmxhdHRlbmluZ0Vu
YWJsZWQoKSkgewogICAgICAgICBXZWJGcmFtZSogbGFyZ2VzdEZyYW1lID0gZmluZExhcmdlc3RG
cmFtZUluRnJhbWVTZXQobV9wYWdlKTsKICAgICAgICAgaWYgKGxhcmdlc3RGcmFtZSAhPSBtX2Nh
Y2hlZEZyYW1lU2V0TGFyZ2VzdEZyYW1lLmdldCgpKSB7CiAgICAgICAgICAgICBtX2NhY2hlZEZy
YW1lU2V0TGFyZ2VzdEZyYW1lID0gbGFyZ2VzdEZyYW1lOwotICAgICAgICAgICAgbV9wYWdlLT5z
ZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZyYW1lU2V0TGFyZ2VzdEZyYW1lQ2hhbmdlZChs
YXJnZXN0RnJhbWUgPyBsYXJnZXN0RnJhbWUtPmZyYW1lSUQoKSA6IDApKTsKKyAgICAgICAgICAg
IG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZyYW1lU2V0TGFyZ2VzdEZyYW1l
Q2hhbmdlZChsYXJnZXN0RnJhbWUgPyBsYXJnZXN0RnJhbWUtPmZyYW1lSUQoKSA6IDApKTsKICAg
ICAgICAgfQogICAgIH0KIAogICAgIGlmICgmZnJhbWUtPnBhZ2UoKS0+bWFpbkZyYW1lKCkgIT0g
ZnJhbWUpCiAgICAgICAgIHJldHVybjsKIAotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2Vi
UGFnZVByb3h5OjpEaWRDaGFuZ2VDb250ZW50U2l6ZShzaXplKSk7CisgICAgbV9wYWdlLnNlbmQo
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RGlkQ2hhbmdlQ29udGVudFNpemUoc2l6ZSkpOwogCi0g
ICAgbV9wYWdlLT5kcmF3aW5nQXJlYSgpLT5tYWluRnJhbWVDb250ZW50U2l6ZUNoYW5nZWQoc2l6
ZSk7CisgICAgbV9wYWdlLmRyYXdpbmdBcmVhKCktPm1haW5GcmFtZUNvbnRlbnRTaXplQ2hhbmdl
ZChzaXplKTsKIAogICAgIEZyYW1lVmlldyogZnJhbWVWaWV3ID0gZnJhbWUtPnZpZXcoKTsKICAg
ICBpZiAoZnJhbWVWaWV3ICYmICFmcmFtZVZpZXctPmRlbGVnYXRlc1Njcm9sbGluZygpKSAgewpA
QCAtNTYyLDcgKzU3Myw3IEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpjb250ZW50c1NpemVDaGFu
Z2VkKEZyYW1lKiBmcmFtZSwgY29uc3QgSW50U2l6ZSYgc2l6ZSkgY29uCiAgICAgICAgIGJvb2wg
aGFzVmVydGljYWxTY3JvbGxiYXIgPSBmcmFtZVZpZXctPnZlcnRpY2FsU2Nyb2xsYmFyKCk7CiAK
ICAgICAgICAgaWYgKGhhc0hvcml6b250YWxTY3JvbGxiYXIgIT0gbV9jYWNoZWRNYWluRnJhbWVI
YXNIb3Jpem9udGFsU2Nyb2xsYmFyIHx8IGhhc1ZlcnRpY2FsU2Nyb2xsYmFyICE9IG1fY2FjaGVk
TWFpbkZyYW1lSGFzVmVydGljYWxTY3JvbGxiYXIpIHsKLSAgICAgICAgICAgIG1fcGFnZS0+c2Vu
ZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRDaGFuZ2VTY3JvbGxiYXJzRm9yTWFpbkZyYW1l
KGhhc0hvcml6b250YWxTY3JvbGxiYXIsIGhhc1ZlcnRpY2FsU2Nyb2xsYmFyKSk7CisgICAgICAg
ICAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRDaGFuZ2VTY3JvbGxi
YXJzRm9yTWFpbkZyYW1lKGhhc0hvcml6b250YWxTY3JvbGxiYXIsIGhhc1ZlcnRpY2FsU2Nyb2xs
YmFyKSk7CiAKICAgICAgICAgICAgIG1fY2FjaGVkTWFpbkZyYW1lSGFzSG9yaXpvbnRhbFNjcm9s
bGJhciA9IGhhc0hvcml6b250YWxTY3JvbGxiYXI7CiAgICAgICAgICAgICBtX2NhY2hlZE1haW5G
cmFtZUhhc1ZlcnRpY2FsU2Nyb2xsYmFyID0gaGFzVmVydGljYWxTY3JvbGxiYXI7CkBAIC02MDMs
MTIgKzYxNCwxMiBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6dW5hdmFpbGFibGVQbHVnaW5CdXR0
b25DbGlja2VkKEVsZW1lbnQqIGVsZW1lbnQsIFJlbmRlckVtYgogICAgIEhUTUxQbHVnSW5JbWFn
ZUVsZW1lbnQqIHBsdWdpbkVsZW1lbnQgPSBzdGF0aWNfY2FzdDxIVE1MUGx1Z0luSW1hZ2VFbGVt
ZW50Kj4oZWxlbWVudCk7CiAKICAgICBTdHJpbmcgZnJhbWVVUkxTdHJpbmcgPSBwbHVnaW5FbGVt
ZW50LT5kb2N1bWVudCgpLmZyYW1lKCktPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCktPnJlc3Bv
bnNlVVJMKCkuc3RyaW5nKCk7Ci0gICAgU3RyaW5nIHBhZ2VVUkxTdHJpbmcgPSBtX3BhZ2UtPm1h
aW5GcmFtZSgpLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmlu
ZygpOworICAgIFN0cmluZyBwYWdlVVJMU3RyaW5nID0gbV9wYWdlLm1haW5GcmFtZSgpLT5sb2Fk
ZXIoKS5kb2N1bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwogICAgIFN0cmlu
ZyBwbHVnaW5VUkxTdHJpbmcgPSBwbHVnaW5FbGVtZW50LT5kb2N1bWVudCgpLmNvbXBsZXRlVVJM
KHBsdWdpbkVsZW1lbnQtPnVybCgpKS5zdHJpbmcoKTsKICAgICBVUkwgcGx1Z2luc3BhZ2VBdHRy
aWJ1dGVVUkwgPSBlbGVtZW50LT5kb2N1bWVudCgpLmNvbXBsZXRlVVJMKHN0cmlwTGVhZGluZ0Fu
ZFRyYWlsaW5nSFRNTFNwYWNlcyhwbHVnaW5FbGVtZW50LT5nZXRBdHRyaWJ1dGUocGx1Z2luc3Bh
Z2VBdHRyKSkpOwogICAgIGlmICghcGx1Z2luc3BhZ2VBdHRyaWJ1dGVVUkwucHJvdG9jb2xJc0lu
SFRUUEZhbWlseSgpKQogICAgICAgICBwbHVnaW5zcGFnZUF0dHJpYnV0ZVVSTCA9IFVSTCgpOwot
ICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpVbmF2YWlsYWJsZVBsdWdp
bkJ1dHRvbkNsaWNrZWQocGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24sIHBsdWdpbkVsZW1lbnQt
PnNlcnZpY2VUeXBlKCksIHBsdWdpblVSTFN0cmluZywgcGx1Z2luc3BhZ2VBdHRyaWJ1dGVVUkwu
c3RyaW5nKCksIGZyYW1lVVJMU3RyaW5nLCBwYWdlVVJMU3RyaW5nKSk7CisgICAgbV9wYWdlLnNl
bmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6VW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2Vk
KHBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uLCBwbHVnaW5FbGVtZW50LT5zZXJ2aWNlVHlwZSgp
LCBwbHVnaW5VUkxTdHJpbmcsIHBsdWdpbnNwYWdlQXR0cmlidXRlVVJMLnN0cmluZygpLCBmcmFt
ZVVSTFN0cmluZywgcGFnZVVSTFN0cmluZykpOwogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0oZWxl
bWVudCk7CiAgICAgVU5VU0VEX1BBUkFNKHBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKTsKQEAg
LTYyNSwxMSArNjM2LDExIEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojptb3VzZURpZE1vdmVPdmVy
RWxlbWVudChjb25zdCBIaXRUZXN0UmVzdWx0JiBoaXRUZXN0UmVzdWx0CiAgICAgUmVmUHRyPEFQ
STo6T2JqZWN0PiB1c2VyRGF0YTsKIAogICAgIC8vIE5vdGlmeSB0aGUgYnVuZGxlIGNsaWVudC4K
LSAgICBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5tb3VzZURpZE1vdmVPdmVyRWxl
bWVudChtX3BhZ2UsIGhpdFRlc3RSZXN1bHQsIHN0YXRpY19jYXN0PFdlYkV2ZW50OjpNb2RpZmll
cnM+KG1vZGlmaWVyRmxhZ3MpLCB1c2VyRGF0YSk7CisgICAgbV9wYWdlLmluamVjdGVkQnVuZGxl
VUlDbGllbnQoKS5tb3VzZURpZE1vdmVPdmVyRWxlbWVudCgmbV9wYWdlLCBoaXRUZXN0UmVzdWx0
LCBzdGF0aWNfY2FzdDxXZWJFdmVudDo6TW9kaWZpZXJzPihtb2RpZmllckZsYWdzKSwgdXNlckRh
dGEpOwogCiAgICAgLy8gTm90aWZ5IHRoZSBVSVByb2Nlc3MuCiAgICAgV2ViSGl0VGVzdFJlc3Vs
dERhdGEgd2ViSGl0VGVzdFJlc3VsdERhdGEoaGl0VGVzdFJlc3VsdCk7Ci0gICAgbV9wYWdlLT5z
ZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6Ok1vdXNlRGlkTW92ZU92ZXJFbGVtZW50KHdlYkhp
dFRlc3RSZXN1bHREYXRhLCBtb2RpZmllckZsYWdzLCBVc2VyRGF0YShXZWJQcm9jZXNzOjpzaW5n
bGV0b24oKS50cmFuc2Zvcm1PYmplY3RzVG9IYW5kbGVzKHVzZXJEYXRhLmdldCgpKS5nZXQoKSkp
KTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpNb3VzZURpZE1vdmVP
dmVyRWxlbWVudCh3ZWJIaXRUZXN0UmVzdWx0RGF0YSwgbW9kaWZpZXJGbGFncywgVXNlckRhdGEo
V2ViUHJvY2Vzczo6c2luZ2xldG9uKCkudHJhbnNmb3JtT2JqZWN0c1RvSGFuZGxlcyh1c2VyRGF0
YS5nZXQoKSkuZ2V0KCkpKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRUb29sVGlw
KGNvbnN0IFN0cmluZyYgdG9vbFRpcCwgVGV4dERpcmVjdGlvbikKQEAgLTY0MCw3ICs2NTEsNyBA
QCB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0VG9vbFRpcChjb25zdCBTdHJpbmcmIHRvb2xUaXAs
IFRleHREaXJlY3Rpb24pCiAgICAgICAgIHJldHVybjsKICAgICBtX2NhY2hlZFRvb2xUaXAgPSB0
b29sVGlwOwogCi0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldFRv
b2xUaXAobV9jYWNoZWRUb29sVGlwKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6U2V0VG9vbFRpcChtX2NhY2hlZFRvb2xUaXApKTsKIH0KIAogdm9pZCBXZWJDaHJv
bWVDbGllbnQ6OnByaW50KEZyYW1lKiBmcmFtZSkKQEAgLTY2OCw3ICs2NzksNyBAQCB2b2lkIFdl
YkNocm9tZUNsaWVudDo6cHJpbnQoRnJhbWUqIGZyYW1lKQogICAgIH0KICNlbmRpZgogCi0gICAg
bV9wYWdlLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQcmludEZyYW1lKHdlYkZy
YW1lLT5mcmFtZUlEKCkpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQcmludEZyYW1lOjpSZXBs
eSgpLCBTZWNvbmRzOjppbmZpbml0eSgpLCBJUEM6OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0
Zm9ybVByb2Nlc3NXaWxsU3VzcGVuZCk7CisgICAgbV9wYWdlLnNlbmRTeW5jKE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OlByaW50RnJhbWUod2ViRnJhbWUtPmZyYW1lSUQoKSksIE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OlByaW50RnJhbWU6OlJlcGx5KCksIFNlY29uZHM6OmluZmluaXR5KCksIElQ
Qzo6U2VuZFN5bmNPcHRpb246OkluZm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKTsKIH0K
IAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmV4Y2VlZGVkRGF0YWJhc2VRdW90YShGcmFtZSogZnJh
bWUsIGNvbnN0IFN0cmluZyYgZGF0YWJhc2VOYW1lLCBEYXRhYmFzZURldGFpbHMgZGV0YWlscykK
QEAgLTY4NiwxMiArNjk3LDEyIEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpleGNlZWRlZERhdGFi
YXNlUXVvdGEoRnJhbWUqIGZyYW1lLCBjb25zdCBTdHJpbmcmIGRhdGFiYXNlCiAgICAgYXV0byBj
dXJyZW50T3JpZ2luVXNhZ2UgPSB0cmFja2VyLnVzYWdlKG9yaWdpbkRhdGEpOwogICAgIHVpbnQ2
NF90IG5ld1F1b3RhID0gMDsKICAgICBSZWZQdHI8QVBJOjpTZWN1cml0eU9yaWdpbj4gc2VjdXJp
dHlPcmlnaW4gPSBBUEk6OlNlY3VyaXR5T3JpZ2luOjpjcmVhdGUoV2ViQ29yZTo6U2VjdXJpdHlP
cmlnaW5EYXRhOjpmcm9tRGF0YWJhc2VJZGVudGlmaWVyKFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2lu
RGF0YTo6ZnJvbVNlY3VyaXR5T3JpZ2luKCpvcmlnaW4pLmRhdGFiYXNlSWRlbnRpZmllcigpKS0+
c2VjdXJpdHlPcmlnaW4oKSk7Ci0gICAgbmV3UXVvdGEgPSBtX3BhZ2UtPmluamVjdGVkQnVuZGxl
VUlDbGllbnQoKS5kaWRFeGNlZWREYXRhYmFzZVF1b3RhKG1fcGFnZSwgc2VjdXJpdHlPcmlnaW4u
Z2V0KCksIGRhdGFiYXNlTmFtZSwgZGV0YWlscy5kaXNwbGF5TmFtZSgpLCBjdXJyZW50UXVvdGEs
IGN1cnJlbnRPcmlnaW5Vc2FnZSwgZGV0YWlscy5jdXJyZW50VXNhZ2UoKSwgZGV0YWlscy5leHBl
Y3RlZFVzYWdlKCkpOworICAgIG5ld1F1b3RhID0gbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGll
bnQoKS5kaWRFeGNlZWREYXRhYmFzZVF1b3RhKCZtX3BhZ2UsIHNlY3VyaXR5T3JpZ2luLmdldCgp
LCBkYXRhYmFzZU5hbWUsIGRldGFpbHMuZGlzcGxheU5hbWUoKSwgY3VycmVudFF1b3RhLCBjdXJy
ZW50T3JpZ2luVXNhZ2UsIGRldGFpbHMuY3VycmVudFVzYWdlKCksIGRldGFpbHMuZXhwZWN0ZWRV
c2FnZSgpKTsKIAogICAgIGlmICghbmV3UXVvdGEpIHsKICAgICAgICAgV2ViUHJvY2Vzczo6c2lu
Z2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoCiAgICAgICAgICAg
ICBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpFeGNlZWRlZERhdGFiYXNlUXVvdGEod2ViRnJhbWUt
PmZyYW1lSUQoKSwgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tU2VjdXJpdHlPcmln
aW4oKm9yaWdpbikuZGF0YWJhc2VJZGVudGlmaWVyKCksIGRhdGFiYXNlTmFtZSwgZGV0YWlscy5k
aXNwbGF5TmFtZSgpLCBjdXJyZW50UXVvdGEsIGN1cnJlbnRPcmlnaW5Vc2FnZSwgZGV0YWlscy5j
dXJyZW50VXNhZ2UoKSwgZGV0YWlscy5leHBlY3RlZFVzYWdlKCkpLAotICAgICAgICAgICAgTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6RXhjZWVkZWREYXRhYmFzZVF1b3RhOjpSZXBseShuZXdRdW90
YSksIG1fcGFnZS0+cGFnZUlEKCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNP
cHRpb246OkluZm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKTsKKyAgICAgICAgICAgIE1l
c3NhZ2VzOjpXZWJQYWdlUHJveHk6OkV4Y2VlZGVkRGF0YWJhc2VRdW90YTo6UmVwbHkobmV3UXVv
dGEpLCBtX3BhZ2UucGFnZUlEKCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNP
cHRpb246OkluZm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKTsKICAgICB9CiAKICAgICB0
cmFja2VyLnNldFF1b3RhKG9yaWdpbkRhdGEsIG5ld1F1b3RhKTsKQEAgLTcwNSwxMCArNzE2LDEw
IEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpyZWFjaGVkTWF4QXBwQ2FjaGVTaXplKGludDY0X3Qp
CiB2b2lkIFdlYkNocm9tZUNsaWVudDo6cmVhY2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90
YShTZWN1cml0eU9yaWdpbiogb3JpZ2luLCBpbnQ2NF90IHRvdGFsQnl0ZXNOZWVkZWQpCiB7CiAg
ICAgUmVmUHRyPEFQSTo6U2VjdXJpdHlPcmlnaW4+IHNlY3VyaXR5T3JpZ2luID0gQVBJOjpTZWN1
cml0eU9yaWdpbjo6Y3JlYXRlRnJvbVN0cmluZyhvcmlnaW4tPnRvU3RyaW5nKCkpOwotICAgIGlm
IChtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5kaWRSZWFjaEFwcGxpY2F0aW9uQ2Fj
aGVPcmlnaW5RdW90YShtX3BhZ2UsIHNlY3VyaXR5T3JpZ2luLmdldCgpLCB0b3RhbEJ5dGVzTmVl
ZGVkKSkKKyAgICBpZiAobV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5kaWRSZWFjaEFw
cGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YSgmbV9wYWdlLCBzZWN1cml0eU9yaWdpbi5nZXQoKSwg
dG90YWxCeXRlc05lZWRlZCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGF1dG8mIGNhY2hlU3Rv
cmFnZSA9IG1fcGFnZS0+Y29yZVBhZ2UoKS0+YXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKTsKKyAg
ICBhdXRvJiBjYWNoZVN0b3JhZ2UgPSBtX3BhZ2UuY29yZVBhZ2UoKS0+YXBwbGljYXRpb25DYWNo
ZVN0b3JhZ2UoKTsKICAgICBpbnQ2NF90IGN1cnJlbnRRdW90YSA9IDA7CiAgICAgaWYgKCFjYWNo
ZVN0b3JhZ2UuY2FsY3VsYXRlUXVvdGFGb3JPcmlnaW4ob3JpZ2luLCBjdXJyZW50UXVvdGEpKQog
ICAgICAgICByZXR1cm47CkBAIC03MTYsNyArNzI3LDcgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6
OnJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoU2VjdXJpdHlPcmlnaW4qIG9yaWdp
biwKICAgICB1aW50NjRfdCBuZXdRdW90YSA9IDA7CiAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9u
KCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoCiAgICAgICAgIE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6OlJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoV2ViQ29y
ZTo6U2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tU2VjdXJpdHlPcmlnaW4oKm9yaWdpbikuZGF0YWJh
c2VJZGVudGlmaWVyKCksIGN1cnJlbnRRdW90YSwgdG90YWxCeXRlc05lZWRlZCksCi0gICAgICAg
IE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVv
dGE6OlJlcGx5KG5ld1F1b3RhKSwgbV9wYWdlLT5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHko
KSwgSVBDOjpTZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQp
OworICAgICAgICBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZWFjaGVkQXBwbGljYXRpb25DYWNo
ZU9yaWdpblF1b3RhOjpSZXBseShuZXdRdW90YSksIG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25kczo6
aW5maW5pdHkoKSwgSVBDOjpTZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2ls
bFN1c3BlbmQpOwogCiAgICAgY2FjaGVTdG9yYWdlLnN0b3JlVXBkYXRlZFF1b3RhRm9yT3JpZ2lu
KG9yaWdpbiwgbmV3UXVvdGEpOwogfQpAQCAtNzMwLDM1ICs3NDEsMzIgQEAgdm9pZCBXZWJDaHJv
bWVDbGllbnQ6OmFubm90YXRlZFJlZ2lvbnNDaGFuZ2VkKCkKIAogYm9vbCBXZWJDaHJvbWVDbGll
bnQ6OnNob3VsZFJlcGxhY2VXaXRoR2VuZXJhdGVkRmlsZUZvclVwbG9hZChjb25zdCBTdHJpbmcm
IHBhdGgsIFN0cmluZyYgZ2VuZXJhdGVkRmlsZW5hbWUpCiB7Ci0gICAgZ2VuZXJhdGVkRmlsZW5h
bWUgPSBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5zaG91bGRHZW5lcmF0ZUZpbGVG
b3JVcGxvYWQobV9wYWdlLCBwYXRoKTsKKyAgICBnZW5lcmF0ZWRGaWxlbmFtZSA9IG1fcGFnZS5p
bmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkuc2hvdWxkR2VuZXJhdGVGaWxlRm9yVXBsb2FkKCZtX3Bh
Z2UsIHBhdGgpOwogICAgIHJldHVybiAhZ2VuZXJhdGVkRmlsZW5hbWUuaXNOdWxsKCk7CiB9CiAK
IFN0cmluZyBXZWJDaHJvbWVDbGllbnQ6OmdlbmVyYXRlUmVwbGFjZW1lbnRGaWxlKGNvbnN0IFN0
cmluZyYgcGF0aCkKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50
KCkuZ2VuZXJhdGVGaWxlRm9yVXBsb2FkKG1fcGFnZSwgcGF0aCk7CisgICAgcmV0dXJuIG1fcGFn
ZS5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkuZ2VuZXJhdGVGaWxlRm9yVXBsb2FkKCZtX3BhZ2Us
IHBhdGgpOwogfQogCiAjaWYgRU5BQkxFKElOUFVUX1RZUEVfQ09MT1IpCiBzdGQ6OnVuaXF1ZV9w
dHI8Q29sb3JDaG9vc2VyPiBXZWJDaHJvbWVDbGllbnQ6OmNyZWF0ZUNvbG9yQ2hvb3NlcihDb2xv
ckNob29zZXJDbGllbnQqIGNsaWVudCwgY29uc3QgQ29sb3ImIGluaXRpYWxDb2xvcikKIHsKLSAg
ICByZXR1cm4gc3RkOjptYWtlX3VuaXF1ZTxXZWJDb2xvckNob29zZXI+KG1fcGFnZSwgY2xpZW50
LCBpbml0aWFsQ29sb3IpOworICAgIHJldHVybiBzdGQ6Om1ha2VfdW5pcXVlPFdlYkNvbG9yQ2hv
b3Nlcj4oJm1fcGFnZSwgY2xpZW50LCBpbml0aWFsQ29sb3IpOwogfQogI2VuZGlmCiAKLXZvaWQg
V2ViQ2hyb21lQ2xpZW50OjpydW5PcGVuUGFuZWwoRnJhbWUqIGZyYW1lLCBQYXNzUmVmUHRyPEZp
bGVDaG9vc2VyPiBwcnBGaWxlQ2hvb3NlcikKK3ZvaWQgV2ViQ2hyb21lQ2xpZW50OjpydW5PcGVu
UGFuZWwoRnJhbWUmIGZyYW1lLCBGaWxlQ2hvb3NlciYgZmlsZUNob29zZXIpCiB7Ci0gICAgaWYg
KG1fcGFnZS0+YWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIoKSkKKyAgICBpZiAobV9wYWdl
LmFjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyKCkpCiAgICAgICAgIHJldHVybjsKIAotICAg
IFJlZlB0cjxGaWxlQ2hvb3Nlcj4gZmlsZUNob29zZXIgPSBwcnBGaWxlQ2hvb3NlcjsKKyAgICBt
X3BhZ2Uuc2V0QWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIoV2ViT3BlblBhbmVsUmVzdWx0
TGlzdGVuZXI6OmNyZWF0ZSgmbV9wYWdlLCAmZmlsZUNob29zZXIpKTsKIAotICAgIG1fcGFnZS0+
c2V0QWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIoV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVu
ZXI6OmNyZWF0ZShtX3BhZ2UsIGZpbGVDaG9vc2VyLmdldCgpKSk7Ci0KLSAgICBXZWJGcmFtZSog
d2ViRnJhbWUgPSBXZWJGcmFtZTo6ZnJvbUNvcmVGcmFtZSgqZnJhbWUpOworICAgIGF1dG8qIHdl
YkZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoZnJhbWUpOwogICAgIEFTU0VSVCh3ZWJG
cmFtZSk7Ci0KLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuT3Bl
blBhbmVsKHdlYkZyYW1lLT5mcmFtZUlEKCksIFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbUZyYW1l
KGZyYW1lKSwgZmlsZUNob29zZXItPnNldHRpbmdzKCkpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpSdW5PcGVuUGFuZWwod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2Vj
dXJpdHlPcmlnaW5EYXRhOjpmcm9tRnJhbWUoJmZyYW1lKSwgZmlsZUNob29zZXIuc2V0dGluZ3Mo
KSkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6bG9hZEljb25Gb3JGaWxlcyhjb25zdCBW
ZWN0b3I8U3RyaW5nPiYgZmlsZW5hbWVzLCBGaWxlSWNvbkxvYWRlciYgbG9hZGVyKQpAQCAtNzY3
LDM0ICs3NzUsMzggQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmxvYWRJY29uRm9yRmlsZXMoY29u
c3QgVmVjdG9yPFN0cmluZz4mIGZpbGVuYW1lcywgRmlsZUljb24KIH0KIAogI2lmICFQTEFURk9S
TShJT1MpCisKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRDdXJzb3IoY29uc3QgV2ViQ29yZTo6
Q3Vyc29yJiBjdXJzb3IpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OlNldEN1cnNvcihjdXJzb3IpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFn
ZVByb3h5OjpTZXRDdXJzb3IoY3Vyc29yKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpz
ZXRDdXJzb3JIaWRkZW5VbnRpbE1vdXNlTW92ZXMoYm9vbCBoaWRkZW5VbnRpbE1vdXNlTW92ZXMp
CiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldEN1cnNvckhp
ZGRlblVudGlsTW91c2VNb3ZlcyhoaWRkZW5VbnRpbE1vdXNlTW92ZXMpKTsKKyAgICBtX3BhZ2Uu
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRDdXJzb3JIaWRkZW5VbnRpbE1vdXNlTW92
ZXMoaGlkZGVuVW50aWxNb3VzZU1vdmVzKSk7CiB9CisKICNlbmRpZgogCiAjaWYgRU5BQkxFKFJF
UVVFU1RfQU5JTUFUSU9OX0ZSQU1FKSAmJiAhVVNFKFJFUVVFU1RfQU5JTUFUSU9OX0ZSQU1FX1RJ
TUVSKQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2NoZWR1bGVBbmltYXRpb24oKQogewogI2lm
IFVTRShDT09SRElOQVRFRF9HUkFQSElDUykKLSAgICBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPmxh
eWVyVHJlZUhvc3QoKS0+c2NoZWR1bGVBbmltYXRpb24oKTsKKyAgICBtX3BhZ2UuZHJhd2luZ0Fy
ZWEoKS0+bGF5ZXJUcmVlSG9zdCgpLT5zY2hlZHVsZUFuaW1hdGlvbigpOwogI2VuZGlmCiB9CisK
ICNlbmRpZgogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xz
KGNvbnN0IFZlY3RvcjxSZWZQdHI8V2ViQ29yZTo6RWxlbWVudD4+JiBlbGVtZW50cykKIHsKLSAg
ICByZXR1cm4gbV9wYWdlLT5pbmplY3RlZEJ1bmRsZUZvcm1DbGllbnQoKS5kaWRBc3NvY2lhdGVG
b3JtQ29udHJvbHMobV9wYWdlLCBlbGVtZW50cyk7CisgICAgcmV0dXJuIG1fcGFnZS5pbmplY3Rl
ZEJ1bmRsZUZvcm1DbGllbnQoKS5kaWRBc3NvY2lhdGVGb3JtQ29udHJvbHMoJm1fcGFnZSwgZWxl
bWVudHMpOwogfQogCiBib29sIFdlYkNocm9tZUNsaWVudDo6c2hvdWxkTm90aWZ5T25Gb3JtQ2hh
bmdlcygpCiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCku
c2hvdWxkTm90aWZ5T25Gb3JtQ2hhbmdlcyhtX3BhZ2UpOworICAgIHJldHVybiBtX3BhZ2UuaW5q
ZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCkuc2hvdWxkTm90aWZ5T25Gb3JtQ2hhbmdlcygmbV9wYWdl
KTsKIH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnNlbGVjdEl0ZW1Xcml0aW5nRGlyZWN0aW9u
SXNOYXR1cmFsKCkKQEAgLTgxOSwzOSArODMxLDQxIEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50Ojpo
YXNPcGVuZWRQb3B1cCgpIGNvbnN0CiAKIFJlZlB0cjxXZWJDb3JlOjpQb3B1cE1lbnU+IFdlYkNo
cm9tZUNsaWVudDo6Y3JlYXRlUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCogY2xp
ZW50KSBjb25zdAogewotICAgIHJldHVybiBXZWJQb3B1cE1lbnU6OmNyZWF0ZShtX3BhZ2UsIGNs
aWVudCk7CisgICAgcmV0dXJuIFdlYlBvcHVwTWVudTo6Y3JlYXRlKCZtX3BhZ2UsIGNsaWVudCk7
CiB9CiAKIFJlZlB0cjxXZWJDb3JlOjpTZWFyY2hQb3B1cE1lbnU+IFdlYkNocm9tZUNsaWVudDo6
Y3JlYXRlU2VhcmNoUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCogY2xpZW50KSBj
b25zdAogewotICAgIHJldHVybiBXZWJTZWFyY2hQb3B1cE1lbnU6OmNyZWF0ZShtX3BhZ2UsIGNs
aWVudCk7CisgICAgcmV0dXJuIFdlYlNlYXJjaFBvcHVwTWVudTo6Y3JlYXRlKCZtX3BhZ2UsIGNs
aWVudCk7CiB9CiAKIEdyYXBoaWNzTGF5ZXJGYWN0b3J5KiBXZWJDaHJvbWVDbGllbnQ6OmdyYXBo
aWNzTGF5ZXJGYWN0b3J5KCkgY29uc3QKIHsKLSAgICBpZiAoYXV0byBkcmF3aW5nQXJlYSA9IG1f
cGFnZS0+ZHJhd2luZ0FyZWEoKSkKKyAgICBpZiAoYXV0byBkcmF3aW5nQXJlYSA9IG1fcGFnZS5k
cmF3aW5nQXJlYSgpKQogICAgICAgICByZXR1cm4gZHJhd2luZ0FyZWEtPmdyYXBoaWNzTGF5ZXJG
YWN0b3J5KCk7CiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKICNpZiBVU0UoUkVRVUVTVF9BTklN
QVRJT05fRlJBTUVfRElTUExBWV9NT05JVE9SKQorCiBSZWZQdHI8V2ViQ29yZTo6RGlzcGxheVJl
ZnJlc2hNb25pdG9yPiBXZWJDaHJvbWVDbGllbnQ6OmNyZWF0ZURpc3BsYXlSZWZyZXNoTW9uaXRv
cihQbGF0Zm9ybURpc3BsYXlJRCBkaXNwbGF5SUQpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFn
ZS0+ZHJhd2luZ0FyZWEoKS0+Y3JlYXRlRGlzcGxheVJlZnJlc2hNb25pdG9yKGRpc3BsYXlJRCk7
CisgICAgcmV0dXJuIG1fcGFnZS5kcmF3aW5nQXJlYSgpLT5jcmVhdGVEaXNwbGF5UmVmcmVzaE1v
bml0b3IoZGlzcGxheUlEKTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojph
dHRhY2hSb290R3JhcGhpY3NMYXllcihGcmFtZSosIEdyYXBoaWNzTGF5ZXIqIGxheWVyKQogewog
ICAgIGlmIChsYXllcikKLSAgICAgICAgbV9wYWdlLT5lbnRlckFjY2VsZXJhdGVkQ29tcG9zaXRp
bmdNb2RlKGxheWVyKTsKKyAgICAgICAgbV9wYWdlLmVudGVyQWNjZWxlcmF0ZWRDb21wb3NpdGlu
Z01vZGUobGF5ZXIpOwogICAgIGVsc2UKLSAgICAgICAgbV9wYWdlLT5leGl0QWNjZWxlcmF0ZWRD
b21wb3NpdGluZ01vZGUoKTsKKyAgICAgICAgbV9wYWdlLmV4aXRBY2NlbGVyYXRlZENvbXBvc2l0
aW5nTW9kZSgpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6YXR0YWNoVmlld092ZXJsYXlH
cmFwaGljc0xheWVyKEZyYW1lKiBmcmFtZSwgR3JhcGhpY3NMYXllciogZ3JhcGhpY3NMYXllcikK
IHsKLSAgICBpZiAoYXV0byBkcmF3aW5nQXJlYSA9IG1fcGFnZS0+ZHJhd2luZ0FyZWEoKSkKKyAg
ICBpZiAoYXV0byBkcmF3aW5nQXJlYSA9IG1fcGFnZS5kcmF3aW5nQXJlYSgpKQogICAgICAgICBk
cmF3aW5nQXJlYS0+YXR0YWNoVmlld092ZXJsYXlHcmFwaGljc0xheWVyKGZyYW1lLCBncmFwaGlj
c0xheWVyKTsKIH0KIApAQCAtODYyLDEyOCArODc2LDEzNiBAQCB2b2lkIFdlYkNocm9tZUNsaWVu
dDo6c2V0TmVlZHNPbmVTaG90RHJhd2luZ1N5bmNocm9uaXphdGlvbigpCiAKIHZvaWQgV2ViQ2hy
b21lQ2xpZW50OjpzY2hlZHVsZUNvbXBvc2l0aW5nTGF5ZXJGbHVzaCgpCiB7Ci0gICAgaWYgKG1f
cGFnZS0+ZHJhd2luZ0FyZWEoKSkKLSAgICAgICAgbV9wYWdlLT5kcmF3aW5nQXJlYSgpLT5zY2hl
ZHVsZUNvbXBvc2l0aW5nTGF5ZXJGbHVzaCgpOworICAgIGlmIChtX3BhZ2UuZHJhd2luZ0FyZWEo
KSkKKyAgICAgICAgbV9wYWdlLmRyYXdpbmdBcmVhKCktPnNjaGVkdWxlQ29tcG9zaXRpbmdMYXll
ckZsdXNoKCk7CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjphZGp1c3RMYXllckZsdXNoVGhy
b3R0bGluZyhXZWJDb3JlOjpMYXllckZsdXNoVGhyb3R0bGVTdGF0ZTo6RmxhZ3MgZmxhZ3MpCiB7
Ci0gICAgcmV0dXJuIG1fcGFnZS0+ZHJhd2luZ0FyZWEoKSAmJiBtX3BhZ2UtPmRyYXdpbmdBcmVh
KCktPmFkanVzdExheWVyRmx1c2hUaHJvdHRsaW5nKGZsYWdzKTsKKyAgICByZXR1cm4gbV9wYWdl
LmRyYXdpbmdBcmVhKCkgJiYgbV9wYWdlLmRyYXdpbmdBcmVhKCktPmFkanVzdExheWVyRmx1c2hU
aHJvdHRsaW5nKGZsYWdzKTsKIH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OmxheWVyVHJlZVN0
YXRlSXNGcm96ZW4oKSBjb25zdAogewotICAgIGlmIChtX3BhZ2UtPmRyYXdpbmdBcmVhKCkpCi0g
ICAgICAgIHJldHVybiBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPmxheWVyVHJlZVN0YXRlSXNGcm96
ZW4oKTsKKyAgICBpZiAobV9wYWdlLmRyYXdpbmdBcmVhKCkpCisgICAgICAgIHJldHVybiBtX3Bh
Z2UuZHJhd2luZ0FyZWEoKS0+bGF5ZXJUcmVlU3RhdGVJc0Zyb3plbigpOwogCiAgICAgcmV0dXJu
IGZhbHNlOwogfQogCiAjaWYgRU5BQkxFKEFTWU5DX1NDUk9MTElORykKKwogUGFzc1JlZlB0cjxT
Y3JvbGxpbmdDb29yZGluYXRvcj4gV2ViQ2hyb21lQ2xpZW50OjpjcmVhdGVTY3JvbGxpbmdDb29y
ZGluYXRvcihQYWdlKiBwYWdlKSBjb25zdAogewotICAgIEFTU0VSVChtX3BhZ2UtPmNvcmVQYWdl
KCkgPT0gcGFnZSk7Ci0gICAgaWYgKG1fcGFnZS0+ZHJhd2luZ0FyZWEoKS0+dHlwZSgpID09IERy
YXdpbmdBcmVhVHlwZVJlbW90ZUxheWVyVHJlZSkKLSAgICAgICAgcmV0dXJuIFJlbW90ZVNjcm9s
bGluZ0Nvb3JkaW5hdG9yOjpjcmVhdGUobV9wYWdlKTsKLQotICAgIHJldHVybiAwOworICAgIEFT
U0VSVChtX3BhZ2UuY29yZVBhZ2UoKSA9PSBwYWdlKTsKKyAgICBpZiAobV9wYWdlLmRyYXdpbmdB
cmVhKCktPnR5cGUoKSAhPSBEcmF3aW5nQXJlYVR5cGVSZW1vdGVMYXllclRyZWUpCisgICAgICAg
IHJldHVybiBudWxscHRyOworICAgIHJldHVybiBSZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvcjo6
Y3JlYXRlKCZtX3BhZ2UpOwogfQorCiAjZW5kaWYKIAogI2lmIChQTEFURk9STShJT1MpICYmIEhB
VkUoQVZLSVQpKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9O
X01PREUpKQorCiBib29sIFdlYkNocm9tZUNsaWVudDo6c3VwcG9ydHNWaWRlb0Z1bGxzY3JlZW4o
V2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIG1vZGUp
CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+dmlkZW9GdWxsc2NyZWVuTWFuYWdlcigpLnN1cHBvcnRz
VmlkZW9GdWxsc2NyZWVuKG1vZGUpOworICAgIHJldHVybiBtX3BhZ2UudmlkZW9GdWxsc2NyZWVu
TWFuYWdlcigpLnN1cHBvcnRzVmlkZW9GdWxsc2NyZWVuKG1vZGUpOwogfQogCiB2b2lkIFdlYkNo
cm9tZUNsaWVudDo6c2V0VXBQbGF5YmFja0NvbnRyb2xzTWFuYWdlcihXZWJDb3JlOjpIVE1MTWVk
aWFFbGVtZW50JiBtZWRpYUVsZW1lbnQpCiB7Ci0gICAgbV9wYWdlLT5wbGF5YmFja1Nlc3Npb25N
YW5hZ2VyKCkuc2V0VXBQbGF5YmFja0NvbnRyb2xzTWFuYWdlcihtZWRpYUVsZW1lbnQpOworICAg
IG1fcGFnZS5wbGF5YmFja1Nlc3Npb25NYW5hZ2VyKCkuc2V0VXBQbGF5YmFja0NvbnRyb2xzTWFu
YWdlcihtZWRpYUVsZW1lbnQpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y2xlYXJQbGF5
YmFja0NvbnRyb2xzTWFuYWdlcigpCiB7Ci0gICAgbV9wYWdlLT5wbGF5YmFja1Nlc3Npb25NYW5h
Z2VyKCkuY2xlYXJQbGF5YmFja0NvbnRyb2xzTWFuYWdlcigpOworICAgIG1fcGFnZS5wbGF5YmFj
a1Nlc3Npb25NYW5hZ2VyKCkuY2xlYXJQbGF5YmFja0NvbnRyb2xzTWFuYWdlcigpOwogfQogCiB2
b2lkIFdlYkNocm9tZUNsaWVudDo6ZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQo
V2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCYgdmlkZW9FbGVtZW50LCBXZWJDb3JlOjpIVE1MTWVk
aWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUgbW9kZSkKIHsKICAgICBBU1NFUlQo
bW9kZSAhPSBIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGVOb25lKTsK
LSAgICBtX3BhZ2UtPnZpZGVvRnVsbHNjcmVlbk1hbmFnZXIoKS5lbnRlclZpZGVvRnVsbHNjcmVl
bkZvclZpZGVvRWxlbWVudCh2aWRlb0VsZW1lbnQsIG1vZGUpOworICAgIG1fcGFnZS52aWRlb0Z1
bGxzY3JlZW5NYW5hZ2VyKCkuZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQodmlk
ZW9FbGVtZW50LCBtb2RlKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmV4aXRWaWRlb0Z1
bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCYgdmlkZW9F
bGVtZW50KQogewotICAgIG1fcGFnZS0+dmlkZW9GdWxsc2NyZWVuTWFuYWdlcigpLmV4aXRWaWRl
b0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQodmlkZW9FbGVtZW50KTsKKyAgICBtX3BhZ2Uudmlk
ZW9GdWxsc2NyZWVuTWFuYWdlcigpLmV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQo
dmlkZW9FbGVtZW50KTsKIH0KIAorI2VuZGlmCisKICNpZiBQTEFURk9STShNQUMpICYmIEVOQUJM
RShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKKwogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmV4aXRW
aWRlb0Z1bGxzY3JlZW5Ub01vZGVXaXRob3V0QW5pbWF0aW9uKFdlYkNvcmU6OkhUTUxWaWRlb0Vs
ZW1lbnQmIHZpZGVvRWxlbWVudCwgSFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3Jl
ZW5Nb2RlIHRhcmdldE1vZGUpCiB7Ci0gICAgbV9wYWdlLT52aWRlb0Z1bGxzY3JlZW5NYW5hZ2Vy
KCkuZXhpdFZpZGVvRnVsbHNjcmVlblRvTW9kZVdpdGhvdXRBbmltYXRpb24odmlkZW9FbGVtZW50
LCB0YXJnZXRNb2RlKTsKKyAgICBtX3BhZ2UudmlkZW9GdWxsc2NyZWVuTWFuYWdlcigpLmV4aXRW
aWRlb0Z1bGxzY3JlZW5Ub01vZGVXaXRob3V0QW5pbWF0aW9uKHZpZGVvRWxlbWVudCwgdGFyZ2V0
TW9kZSk7CiB9Ci0jZW5kaWYKIAogI2VuZGlmCi0gICAgCisKICNpZiBFTkFCTEUoRlVMTFNDUkVF
Tl9BUEkpCisKIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpzdXBwb3J0c0Z1bGxTY3JlZW5Gb3JFbGVt
ZW50KGNvbnN0IFdlYkNvcmU6OkVsZW1lbnQqLCBib29sIHdpdGhLZXlib2FyZCkKIHsKLSAgICBy
ZXR1cm4gbV9wYWdlLT5mdWxsU2NyZWVuTWFuYWdlcigpLT5zdXBwb3J0c0Z1bGxTY3JlZW4od2l0
aEtleWJvYXJkKTsKKyAgICByZXR1cm4gbV9wYWdlLmZ1bGxTY3JlZW5NYW5hZ2VyKCktPnN1cHBv
cnRzRnVsbFNjcmVlbih3aXRoS2V5Ym9hcmQpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6
ZW50ZXJGdWxsU2NyZWVuRm9yRWxlbWVudChXZWJDb3JlOjpFbGVtZW50KiBlbGVtZW50KQogewot
ICAgIG1fcGFnZS0+ZnVsbFNjcmVlbk1hbmFnZXIoKS0+ZW50ZXJGdWxsU2NyZWVuRm9yRWxlbWVu
dChlbGVtZW50KTsKKyAgICBtX3BhZ2UuZnVsbFNjcmVlbk1hbmFnZXIoKS0+ZW50ZXJGdWxsU2Ny
ZWVuRm9yRWxlbWVudChlbGVtZW50KTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmV4aXRG
dWxsU2NyZWVuRm9yRWxlbWVudChXZWJDb3JlOjpFbGVtZW50KiBlbGVtZW50KQogewotICAgIG1f
cGFnZS0+ZnVsbFNjcmVlbk1hbmFnZXIoKS0+ZXhpdEZ1bGxTY3JlZW5Gb3JFbGVtZW50KGVsZW1l
bnQpOworICAgIG1fcGFnZS5mdWxsU2NyZWVuTWFuYWdlcigpLT5leGl0RnVsbFNjcmVlbkZvckVs
ZW1lbnQoZWxlbWVudCk7CiB9CisKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oSU9TKQorCiBGbG9h
dFNpemUgV2ViQ2hyb21lQ2xpZW50OjpzY3JlZW5TaXplKCkgY29uc3QKIHsKLSAgICByZXR1cm4g
bV9wYWdlLT5zY3JlZW5TaXplKCk7CisgICAgcmV0dXJuIG1fcGFnZS5zY3JlZW5TaXplKCk7CiB9
CiAKIEZsb2F0U2l6ZSBXZWJDaHJvbWVDbGllbnQ6OmF2YWlsYWJsZVNjcmVlblNpemUoKSBjb25z
dAogewotICAgIHJldHVybiBtX3BhZ2UtPmF2YWlsYWJsZVNjcmVlblNpemUoKTsKKyAgICByZXR1
cm4gbV9wYWdlLmF2YWlsYWJsZVNjcmVlblNpemUoKTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2Vi
Q2hyb21lQ2xpZW50OjpkaXNwYXRjaFZpZXdwb3J0UHJvcGVydGllc0RpZENoYW5nZShjb25zdCBW
aWV3cG9ydEFyZ3VtZW50cyYgdmlld3BvcnRBcmd1bWVudHMpIGNvbnN0CiB7Ci0gICAgbV9wYWdl
LT52aWV3cG9ydFByb3BlcnRpZXNEaWRDaGFuZ2Uodmlld3BvcnRBcmd1bWVudHMpOworICAgIG1f
cGFnZS52aWV3cG9ydFByb3BlcnRpZXNEaWRDaGFuZ2Uodmlld3BvcnRBcmd1bWVudHMpOwogfQog
CiB2b2lkIFdlYkNocm9tZUNsaWVudDo6bm90aWZ5U2Nyb2xsZXJUaHVtYklzVmlzaWJsZUluUmVj
dChjb25zdCBJbnRSZWN0JiBzY3JvbGxlclRodW1iKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpOb3RpZnlTY3JvbGxlclRodW1iSXNWaXNpYmxlSW5SZWN0KHNj
cm9sbGVyVGh1bWIpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpO
b3RpZnlTY3JvbGxlclRodW1iSXNWaXNpYmxlSW5SZWN0KHNjcm9sbGVyVGh1bWIpKTsKIH0KIAog
dm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJlY29tbWVuZGVkU2Nyb2xsYmFyU3R5bGVEaWRDaGFuZ2Uo
U2Nyb2xsYmFyU3R5bGUgbmV3U3R5bGUpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OlJlY29tbWVuZGVkU2Nyb2xsYmFyU3R5bGVEaWRDaGFuZ2Uoc3RhdGljX2Nh
c3Q8aW50MzJfdD4obmV3U3R5bGUpKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6UmVjb21tZW5kZWRTY3JvbGxiYXJTdHlsZURpZENoYW5nZShzdGF0aWNfY2FzdDxp
bnQzMl90PihuZXdTdHlsZSkpKTsKIH0KIAogc3RkOjpvcHRpb25hbDxTY3JvbGxiYXJPdmVybGF5
U3R5bGU+IFdlYkNocm9tZUNsaWVudDo6cHJlZmVycmVkU2Nyb2xsYmFyT3ZlcmxheVN0eWxlKCkK
IHsKLSAgICByZXR1cm4gbV9wYWdlLT5zY3JvbGxiYXJPdmVybGF5U3R5bGUoKTsgCisgICAgcmV0
dXJuIG1fcGFnZS5zY3JvbGxiYXJPdmVybGF5U3R5bGUoKTsKIH0KIAogQ29sb3IgV2ViQ2hyb21l
Q2xpZW50Ojp1bmRlcmxheUNvbG9yKCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT51bmRl
cmxheUNvbG9yKCk7CisgICAgcmV0dXJuIG1fcGFnZS51bmRlcmxheUNvbG9yKCk7CiB9CiAKIHZv
aWQgV2ViQ2hyb21lQ2xpZW50OjpwYWdlRXh0ZW5kZWRCYWNrZ3JvdW5kQ29sb3JEaWRDaGFuZ2Uo
Q29sb3IgYmFja2dyb3VuZENvbG9yKSBjb25zdAogewogI2lmIFBMQVRGT1JNKE1BQykgfHwgUExB
VEZPUk0oRUZMKQotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQYWdl
RXh0ZW5kZWRCYWNrZ3JvdW5kQ29sb3JEaWRDaGFuZ2UoYmFja2dyb3VuZENvbG9yKSk7CisgICAg
bV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UGFnZUV4dGVuZGVkQmFja2dyb3Vu
ZENvbG9yRGlkQ2hhbmdlKGJhY2tncm91bmRDb2xvcikpOwogI2Vsc2UKICAgICBVTlVTRURfUEFS
QU0oYmFja2dyb3VuZENvbG9yKTsKICNlbmRpZgpAQCAtOTkxLDQzICsxMDEzLDQzIEBAIHZvaWQg
V2ViQ2hyb21lQ2xpZW50OjpwYWdlRXh0ZW5kZWRCYWNrZ3JvdW5kQ29sb3JEaWRDaGFuZ2UoQ29s
b3IgYmFja2dyb3VuZENvbG9yCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojp3aGVlbEV2ZW50SGFu
ZGxlcnNDaGFuZ2VkKGJvb2wgaGFzSGFuZGxlcnMpCiB7Ci0gICAgbV9wYWdlLT53aGVlbEV2ZW50
SGFuZGxlcnNDaGFuZ2VkKGhhc0hhbmRsZXJzKTsKKyAgICBtX3BhZ2Uud2hlZWxFdmVudEhhbmRs
ZXJzQ2hhbmdlZChoYXNIYW5kbGVycyk7CiB9CiAKIFN0cmluZyBXZWJDaHJvbWVDbGllbnQ6OnBs
dWdJblN0YXJ0TGFiZWxUaXRsZShjb25zdCBTdHJpbmcmIG1pbWVUeXBlKSBjb25zdAogewotICAg
IHJldHVybiBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5wbHVnSW5TdGFydExhYmVs
VGl0bGUobWltZVR5cGUpOworICAgIHJldHVybiBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVu
dCgpLnBsdWdJblN0YXJ0TGFiZWxUaXRsZShtaW1lVHlwZSk7CiB9CiAKIFN0cmluZyBXZWJDaHJv
bWVDbGllbnQ6OnBsdWdJblN0YXJ0TGFiZWxTdWJ0aXRsZShjb25zdCBTdHJpbmcmIG1pbWVUeXBl
KSBjb25zdAogewotICAgIHJldHVybiBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5w
bHVnSW5TdGFydExhYmVsU3VidGl0bGUobWltZVR5cGUpOworICAgIHJldHVybiBtX3BhZ2UuaW5q
ZWN0ZWRCdW5kbGVVSUNsaWVudCgpLnBsdWdJblN0YXJ0TGFiZWxTdWJ0aXRsZShtaW1lVHlwZSk7
CiB9CiAKIFN0cmluZyBXZWJDaHJvbWVDbGllbnQ6OnBsdWdJbkV4dHJhU3R5bGVTaGVldCgpIGNv
bnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLnBsdWdJ
bkV4dHJhU3R5bGVTaGVldCgpOworICAgIHJldHVybiBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNs
aWVudCgpLnBsdWdJbkV4dHJhU3R5bGVTaGVldCgpOwogfQogCiBTdHJpbmcgV2ViQ2hyb21lQ2xp
ZW50OjpwbHVnSW5FeHRyYVNjcmlwdCgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+aW5q
ZWN0ZWRCdW5kbGVVSUNsaWVudCgpLnBsdWdJbkV4dHJhU2NyaXB0KCk7CisgICAgcmV0dXJuIG1f
cGFnZS5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkucGx1Z0luRXh0cmFTY3JpcHQoKTsKIH0KIAog
dm9pZCBXZWJDaHJvbWVDbGllbnQ6OmVuYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkKIHsKLSAgICBt
X3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6RW5hYmxlU3VkZGVuVGVybWlu
YXRpb24oKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6RW5h
YmxlU3VkZGVuVGVybWluYXRpb24oKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpkaXNh
YmxlU3VkZGVuVGVybWluYXRpb24oKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2Vi
UHJvY2Vzc1Byb3h5OjpEaXNhYmxlU3VkZGVuVGVybWluYXRpb24oKSk7CisgICAgbV9wYWdlLnNl
bmQoTWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6RGlzYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkp
OwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZGlkQWRkSGVhZGVyTGF5ZXIoR3JhcGhpY3NM
YXllciogaGVhZGVyUGFyZW50KQogewogI2lmIEVOQUJMRShSVUJCRVJfQkFORElORykKLSAgICBp
ZiAoUGFnZUJhbm5lciogYmFubmVyID0gbV9wYWdlLT5oZWFkZXJQYWdlQmFubmVyKCkpCisgICAg
aWYgKFBhZ2VCYW5uZXIqIGJhbm5lciA9IG1fcGFnZS5oZWFkZXJQYWdlQmFubmVyKCkpCiAgICAg
ICAgIGJhbm5lci0+ZGlkQWRkUGFyZW50TGF5ZXIoaGVhZGVyUGFyZW50KTsKICNlbHNlCiAgICAg
VU5VU0VEX1BBUkFNKGhlYWRlclBhcmVudCk7CkBAIC0xMDM3LDcgKzEwNTksNyBAQCB2b2lkIFdl
YkNocm9tZUNsaWVudDo6ZGlkQWRkSGVhZGVyTGF5ZXIoR3JhcGhpY3NMYXllciogaGVhZGVyUGFy
ZW50KQogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmRpZEFkZEZvb3RlckxheWVyKEdyYXBoaWNzTGF5
ZXIqIGZvb3RlclBhcmVudCkKIHsKICNpZiBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpCi0gICAgaWYg
KFBhZ2VCYW5uZXIqIGJhbm5lciA9IG1fcGFnZS0+Zm9vdGVyUGFnZUJhbm5lcigpKQorICAgIGlm
IChQYWdlQmFubmVyKiBiYW5uZXIgPSBtX3BhZ2UuZm9vdGVyUGFnZUJhbm5lcigpKQogICAgICAg
ICBiYW5uZXItPmRpZEFkZFBhcmVudExheWVyKGZvb3RlclBhcmVudCk7CiAjZWxzZQogICAgIFVO
VVNFRF9QQVJBTShmb290ZXJQYXJlbnQpOwpAQCAtMTA0NiwzNiArMTA2OCwzOSBAQCB2b2lkIFdl
YkNocm9tZUNsaWVudDo6ZGlkQWRkRm9vdGVyTGF5ZXIoR3JhcGhpY3NMYXllciogZm9vdGVyUGFy
ZW50KQogCiBib29sIFdlYkNocm9tZUNsaWVudDo6c2hvdWxkVXNlVGlsZWRCYWNraW5nRm9yRnJh
bWVWaWV3KGNvbnN0IEZyYW1lVmlldyogZnJhbWVWaWV3KSBjb25zdAogewotICAgIHJldHVybiBt
X3BhZ2UtPmRyYXdpbmdBcmVhKCktPnNob3VsZFVzZVRpbGVkQmFja2luZ0ZvckZyYW1lVmlldyhm
cmFtZVZpZXcpOworICAgIHJldHVybiBtX3BhZ2UuZHJhd2luZ0FyZWEoKS0+c2hvdWxkVXNlVGls
ZWRCYWNraW5nRm9yRnJhbWVWaWV3KGZyYW1lVmlldyk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xp
ZW50Ojppc1BsYXlpbmdNZWRpYURpZENoYW5nZShXZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpNZWRp
YVN0YXRlRmxhZ3Mgc3RhdGUsIHVpbnQ2NF90IHNvdXJjZUVsZW1lbnRJRCkKIHsKLSAgICBtX3Bh
Z2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6SXNQbGF5aW5nTWVkaWFEaWRDaGFuZ2Uo
c3RhdGUsIHNvdXJjZUVsZW1lbnRJRCkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OklzUGxheWluZ01lZGlhRGlkQ2hhbmdlKHN0YXRlLCBzb3VyY2VFbGVtZW50SUQp
KTsKIH0KIAogI2lmIEVOQUJMRShNRURJQV9TRVNTSU9OKQorCiB2b2lkIFdlYkNocm9tZUNsaWVu
dDo6aGFzTWVkaWFTZXNzaW9uV2l0aEFjdGl2ZU1lZGlhRWxlbWVudHNEaWRDaGFuZ2UoYm9vbCBz
dGF0ZSkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6SGFzTWVk
aWFTZXNzaW9uV2l0aEFjdGl2ZU1lZGlhRWxlbWVudHNEaWRDaGFuZ2Uoc3RhdGUpKTsKKyAgICBt
X3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpIYXNNZWRpYVNlc3Npb25XaXRoQWN0
aXZlTWVkaWFFbGVtZW50c0RpZENoYW5nZShzdGF0ZSkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNs
aWVudDo6bWVkaWFTZXNzaW9uTWV0YWRhdGFEaWRDaGFuZ2UoY29uc3QgV2ViQ29yZTo6TWVkaWFT
ZXNzaW9uTWV0YWRhdGEmIG1ldGFkYXRhKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6
V2ViUGFnZVByb3h5OjpNZWRpYVNlc3Npb25NZXRhZGF0YURpZENoYW5nZShtZXRhZGF0YSkpOwor
ICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6Ok1lZGlhU2Vzc2lvbk1ldGFk
YXRhRGlkQ2hhbmdlKG1ldGFkYXRhKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpmb2N1
c2VkQ29udGVudE1lZGlhRWxlbWVudERpZENoYW5nZSh1aW50NjRfdCBlbGVtZW50SUQpCiB7Ci0g
ICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZvY3VzZWRDb250ZW50TWVk
aWFFbGVtZW50RGlkQ2hhbmdlKGVsZW1lbnRJRCkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6OkZvY3VzZWRDb250ZW50TWVkaWFFbGVtZW50RGlkQ2hhbmdlKGVsZW1l
bnRJRCkpOwogfQorCiAjZW5kaWYKIAogI2lmIEVOQUJMRShTVUJUTEVfQ1JZUFRPKQorCiBib29s
IFdlYkNocm9tZUNsaWVudDo6d3JhcENyeXB0b0tleShjb25zdCBWZWN0b3I8dWludDhfdD4mIGtl
eSwgVmVjdG9yPHVpbnQ4X3Q+JiB3cmFwcGVkS2V5KSBjb25zdAogewogICAgIGJvb2wgc3VjY2Vl
ZGVkOwotICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5l
Y3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6V3JhcENyeXB0b0tleShr
ZXkpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpXcmFwQ3J5cHRvS2V5OjpSZXBseShzdWNjZWVk
ZWQsIHdyYXBwZWRLZXkpLCBtX3BhZ2UtPnBhZ2VJRCgpKSkKKyAgICBpZiAoIVdlYlByb2Nlc3M6
OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6OldyYXBDcnlwdG9LZXkoa2V5KSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94
eTo6V3JhcENyeXB0b0tleTo6UmVwbHkoc3VjY2VlZGVkLCB3cmFwcGVkS2V5KSwgbV9wYWdlLnBh
Z2VJRCgpKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIHJldHVybiBzdWNjZWVkZWQ7CiB9
CkBAIC0xMDgzLDM0ICsxMTA4LDM5IEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50Ojp3cmFwQ3J5cHRv
S2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90PiYga2V5LCBWZWN0b3I8dWludDhfdD4mCiBib29sIFdl
YkNocm9tZUNsaWVudDo6dW53cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90PiYgd3Jh
cHBlZEtleSwgVmVjdG9yPHVpbnQ4X3Q+JiBrZXkpIGNvbnN0CiB7CiAgICAgYm9vbCBzdWNjZWVk
ZWQ7Ci0gICAgaWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVj
dGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpVbndyYXBDcnlwdG9LZXko
d3JhcHBlZEtleSksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlVud3JhcENyeXB0b0tleTo6UmVw
bHkoc3VjY2VlZGVkLCBrZXkpLCBtX3BhZ2UtPnBhZ2VJRCgpKSkKKyAgICBpZiAoIVdlYlByb2Nl
c3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OlVud3JhcENyeXB0b0tleSh3cmFwcGVkS2V5KSwgTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6VW53cmFwQ3J5cHRvS2V5OjpSZXBseShzdWNjZWVkZWQsIGtleSksIG1f
cGFnZS5wYWdlSUQoKSkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICByZXR1cm4gc3VjY2Vl
ZGVkOwogfQorCiAjZW5kaWYKIAogI2lmIEVOQUJMRShURUxFUEhPTkVfTlVNQkVSX0RFVEVDVElP
TikgJiYgUExBVEZPUk0oTUFDKQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6aGFuZGxlVGVsZXBo
b25lTnVtYmVyQ2xpY2soY29uc3QgU3RyaW5nJiBudW1iZXIsIGNvbnN0IFdlYkNvcmU6OkludFBv
aW50JiBwb2ludCkKIHsKLSAgICBtX3BhZ2UtPmhhbmRsZVRlbGVwaG9uZU51bWJlckNsaWNrKG51
bWJlciwgcG9pbnQpOworICAgIG1fcGFnZS5oYW5kbGVUZWxlcGhvbmVOdW1iZXJDbGljayhudW1i
ZXIsIHBvaW50KTsKIH0KKwogI2VuZGlmCiAKICNpZiBFTkFCTEUoU0VSVklDRV9DT05UUk9MUykK
Kwogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmhhbmRsZVNlbGVjdGlvblNlcnZpY2VDbGljayhXZWJD
b3JlOjpGcmFtZVNlbGVjdGlvbiYgc2VsZWN0aW9uLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgdGVs
ZXBob25lTnVtYmVycywgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIHBvaW50KQogewotICAgIG1f
cGFnZS0+aGFuZGxlU2VsZWN0aW9uU2VydmljZUNsaWNrKHNlbGVjdGlvbiwgdGVsZXBob25lTnVt
YmVycywgcG9pbnQpOworICAgIG1fcGFnZS5oYW5kbGVTZWxlY3Rpb25TZXJ2aWNlQ2xpY2soc2Vs
ZWN0aW9uLCB0ZWxlcGhvbmVOdW1iZXJzLCBwb2ludCk7CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xp
ZW50OjpoYXNSZWxldmFudFNlbGVjdGlvblNlcnZpY2VzKGJvb2wgaXNUZXh0T25seSkgY29uc3QK
IHsKICAgICByZXR1cm4gKGlzVGV4dE9ubHkgJiYgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuaGFz
U2VsZWN0aW9uU2VydmljZXMoKSkgfHwgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuaGFzUmljaENv
bnRlbnRTZXJ2aWNlcygpOwogfQorCiAjZW5kaWYKIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnNo
b3VsZERpc3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50cygpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1f
cGFnZS0+c2hvdWxkRGlzcGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKCk7CisgICAgcmV0dXJuIG1f
cGFnZS5zaG91bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHMoKTsKIH0KIAogdm9pZCBXZWJD
aHJvbWVDbGllbnQ6OmhhbmRsZUF1dG9GaWxsQnV0dG9uQ2xpY2soSFRNTElucHV0RWxlbWVudCYg
aW5wdXRFbGVtZW50KQpAQCAtMTExOSw2NCArMTE0OSw2NSBAQCB2b2lkIFdlYkNocm9tZUNsaWVu
dDo6aGFuZGxlQXV0b0ZpbGxCdXR0b25DbGljayhIVE1MSW5wdXRFbGVtZW50JiBpbnB1dEVsZW1l
bnQpCiAKICAgICAvLyBOb3RpZnkgdGhlIGJ1bmRsZSBjbGllbnQuCiAgICAgYXV0byBub2RlSGFu
ZGxlID0gSW5qZWN0ZWRCdW5kbGVOb2RlSGFuZGxlOjpnZXRPckNyZWF0ZShpbnB1dEVsZW1lbnQp
OwotICAgIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLmRpZENsaWNrQXV0b0ZpbGxC
dXR0b24oKm1fcGFnZSwgbm9kZUhhbmRsZS5nZXQoKSwgdXNlckRhdGEpOworICAgIG1fcGFnZS5p
bmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkuZGlkQ2xpY2tBdXRvRmlsbEJ1dHRvbihtX3BhZ2UsIG5v
ZGVIYW5kbGUuZ2V0KCksIHVzZXJEYXRhKTsKIAogICAgIC8vIE5vdGlmeSB0aGUgVUlQcm9jZXNz
LgotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpIYW5kbGVBdXRvRmls
bEJ1dHRvbkNsaWNrKFVzZXJEYXRhKFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnRyYW5zZm9ybU9i
amVjdHNUb0hhbmRsZXModXNlckRhdGEuZ2V0KCkpLmdldCgpKSkpOworICAgIG1fcGFnZS5zZW5k
KE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkhhbmRsZUF1dG9GaWxsQnV0dG9uQ2xpY2soVXNlckRh
dGEoV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkudHJhbnNmb3JtT2JqZWN0c1RvSGFuZGxlcyh1c2Vy
RGF0YS5nZXQoKSkuZ2V0KCkpKSk7CiB9CiAKICNpZiBFTkFCTEUoV0lSRUxFU1NfUExBWUJBQ0tf
VEFSR0VUKSAmJiAhUExBVEZPUk0oSU9TKQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6YWRkUGxh
eWJhY2tUYXJnZXRQaWNrZXJDbGllbnQodWludDY0X3QgY29udGV4dElkKQogewotICAgIG1fcGFn
ZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpBZGRQbGF5YmFja1RhcmdldFBpY2tlckNs
aWVudChjb250ZXh0SWQpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjpBZGRQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudChjb250ZXh0SWQpKTsKIH0KIAogdm9pZCBX
ZWJDaHJvbWVDbGllbnQ6OnJlbW92ZVBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2NF90
IGNvbnRleHRJZCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6
UmVtb3ZlUGxheWJhY2tUYXJnZXRQaWNrZXJDbGllbnQoY29udGV4dElkKSk7CisgICAgbV9wYWdl
LnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UmVtb3ZlUGxheWJhY2tUYXJnZXRQaWNrZXJD
bGllbnQoY29udGV4dElkKSk7CiB9CiAKLQogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNob3dQbGF5
YmFja1RhcmdldFBpY2tlcih1aW50NjRfdCBjb250ZXh0SWQsIGNvbnN0IFdlYkNvcmU6OkludFBv
aW50JiBwb3NpdGlvbiwgYm9vbCBpc1ZpZGVvKQogewotICAgIEZyYW1lVmlldyogZnJhbWVWaWV3
ID0gbV9wYWdlLT5tYWluRnJhbWUoKS0+dmlldygpOworICAgIEZyYW1lVmlldyogZnJhbWVWaWV3
ID0gbV9wYWdlLm1haW5GcmFtZSgpLT52aWV3KCk7CiAgICAgRmxvYXRSZWN0IHJlY3QoZnJhbWVW
aWV3LT5jb250ZW50c1RvUm9vdFZpZXcoZnJhbWVWaWV3LT53aW5kb3dUb0NvbnRlbnRzKHBvc2l0
aW9uKSksIEZsb2F0U2l6ZSgpKTsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6U2hvd1BsYXliYWNrVGFyZ2V0UGlja2VyKGNvbnRleHRJZCwgcmVjdCwgaXNWaWRlbykp
OworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNob3dQbGF5YmFja1Rh
cmdldFBpY2tlcihjb250ZXh0SWQsIHJlY3QsIGlzVmlkZW8pKTsKIH0KIAogdm9pZCBXZWJDaHJv
bWVDbGllbnQ6OnBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50U3RhdGVEaWRDaGFuZ2UodWludDY0
X3QgY29udGV4dElkLCBXZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpNZWRpYVN0YXRlRmxhZ3Mgc3Rh
dGUpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlBsYXliYWNr
VGFyZ2V0UGlja2VyQ2xpZW50U3RhdGVEaWRDaGFuZ2UoY29udGV4dElkLCBzdGF0ZSkpOworICAg
IG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlBsYXliYWNrVGFyZ2V0UGlja2Vy
Q2xpZW50U3RhdGVEaWRDaGFuZ2UoY29udGV4dElkLCBzdGF0ZSkpOwogfQogCiB2b2lkIFdlYkNo
cm9tZUNsaWVudDo6c2V0TW9ja01lZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJFbmFibGVkKGJvb2wg
ZW5hYmxlZCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0
TW9ja01lZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJFbmFibGVkKGVuYWJsZWQpKTsKKyAgICBtX3Bh
Z2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRNb2NrTWVkaWFQbGF5YmFja1Rhcmdl
dFBpY2tlckVuYWJsZWQoZW5hYmxlZCkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0
TW9ja01lZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJTdGF0ZShjb25zdCBTdHJpbmcmIG5hbWUsIFdl
YkNvcmU6Ok1lZGlhUGxheWJhY2tUYXJnZXRDb250ZXh0OjpTdGF0ZSBzdGF0ZSkKIHsKLSAgICBt
X3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0TW9ja01lZGlhUGxheWJhY2tU
YXJnZXRQaWNrZXJTdGF0ZShuYW1lLCBzdGF0ZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6OlNldE1vY2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyU3RhdGUobmFt
ZSwgc3RhdGUpKTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjppbWFnZU9y
TWVkaWFEb2N1bWVudFNpemVDaGFuZ2VkKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIG5ld1NpemUp
CiB7Ci0gICAgbV9wYWdlLT5pbWFnZU9yTWVkaWFEb2N1bWVudFNpemVDaGFuZ2VkKG5ld1NpemUp
OworICAgIG1fcGFnZS5pbWFnZU9yTWVkaWFEb2N1bWVudFNpemVDaGFuZ2VkKG5ld1NpemUpOwog
fQogCi0jaWYgRU5BQkxFKFZJREVPKQotI2lmIFVTRShHU1RSRUFNRVIpCisjaWYgRU5BQkxFKFZJ
REVPKSAmJiBVU0UoR1NUUkVBTUVSKQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6cmVxdWVzdElu
c3RhbGxNaXNzaW5nTWVkaWFQbHVnaW5zKGNvbnN0IFN0cmluZyYgZGV0YWlscywgY29uc3QgU3Ry
aW5nJiBkZXNjcmlwdGlvbiwgV2ViQ29yZTo6TWVkaWFQbGF5ZXJSZXF1ZXN0SW5zdGFsbE1pc3Np
bmdQbHVnaW5zQ2FsbGJhY2smIGNhbGxiYWNrKQogewotICAgIG1fcGFnZS0+cmVxdWVzdEluc3Rh
bGxNaXNzaW5nTWVkaWFQbHVnaW5zKGRldGFpbHMsIGRlc2NyaXB0aW9uLCBjYWxsYmFjayk7Cisg
ICAgbV9wYWdlLnJlcXVlc3RJbnN0YWxsTWlzc2luZ01lZGlhUGx1Z2lucyhkZXRhaWxzLCBkZXNj
cmlwdGlvbiwgY2FsbGJhY2spOwogfQorCiAjZW5kaWYKLSNlbmRpZiAvLyBFTkFCTEUoVklERU8p
CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpkaWRJbnZhbGlkYXRlRG9jdW1lbnRNYXJrZXJSZWN0
cygpCiB7Ci0gICAgbV9wYWdlLT5maW5kQ29udHJvbGxlcigpLmRpZEludmFsaWRhdGVEb2N1bWVu
dE1hcmtlclJlY3RzKCk7CisgICAgbV9wYWdlLmZpbmRDb250cm9sbGVyKCkuZGlkSW52YWxpZGF0
ZURvY3VtZW50TWFya2VyUmVjdHMoKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9t
ZUNsaWVudC5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJD
aHJvbWVDbGllbnQuaAppbmRleCBhZjkwYjM4ZGQ5NWYzMmFmNDhhNDU4N2JhMjdmMmZiYzVkN2Q2
YjFkLi5kNGE5OTFiMjc0ODYwZmZjMzJkZjM0ZTBmMWJjNDczN2FhYjkwZTAwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVu
dC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hy
b21lQ2xpZW50LmgKQEAgLTI2LDE5OCArMjYsMTk2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaW5j
bHVkZSAiV2ViRnJhbWUuaCIKICNpbmNsdWRlIDxXZWJDb3JlL0Nocm9tZUNsaWVudC5oPgotI2lu
Y2x1ZGUgPFdlYkNvcmUvVmlld3BvcnRBcmd1bWVudHMuaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9X
VEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKK2NsYXNzIFdlYkZyYW1lOwogY2xh
c3MgV2ViUGFnZTsKIAotY2xhc3MgV2ViQ2hyb21lQ2xpZW50IDogcHVibGljIFdlYkNvcmU6OkNo
cm9tZUNsaWVudCB7CitjbGFzcyBXZWJDaHJvbWVDbGllbnQgZmluYWwgOiBwdWJsaWMgV2ViQ29y
ZTo6Q2hyb21lQ2xpZW50IHsKIHB1YmxpYzoKLSAgICBXZWJDaHJvbWVDbGllbnQoV2ViUGFnZSog
cGFnZSkKLSAgICAgICAgOiBtX2NhY2hlZE1haW5GcmFtZUhhc0hvcml6b250YWxTY3JvbGxiYXIo
ZmFsc2UpCi0gICAgICAgICwgbV9jYWNoZWRNYWluRnJhbWVIYXNWZXJ0aWNhbFNjcm9sbGJhcihm
YWxzZSkKLSAgICAgICAgLCBtX3BhZ2UocGFnZSkKLSAgICB7Ci0gICAgfQotICAgIAotICAgIFdl
YlBhZ2UqIHBhZ2UoKSBjb25zdCB7IHJldHVybiBtX3BhZ2U7IH0KKyAgICBXZWJDaHJvbWVDbGll
bnQoV2ViUGFnZSYpOwogCi0gICAgdmlydHVhbCB2b2lkKiB3ZWJWaWV3KCkgY29uc3QgeyByZXR1
cm4gMDsgfQorICAgIFdlYlBhZ2UmIHBhZ2UoKSBjb25zdCB7IHJldHVybiBtX3BhZ2U7IH0KIAog
cHJpdmF0ZToKLSAgICB2b2lkIGNocm9tZURlc3Ryb3llZCgpIG92ZXJyaWRlOworICAgIH5XZWJD
aHJvbWVDbGllbnQoKTsKKworICAgIHZvaWQgY2hyb21lRGVzdHJveWVkKCkgZmluYWw7CiAgICAg
Ci0gICAgdm9pZCBzZXRXaW5kb3dSZWN0KGNvbnN0IFdlYkNvcmU6OkZsb2F0UmVjdCYpIG92ZXJy
aWRlOwotICAgIFdlYkNvcmU6OkZsb2F0UmVjdCB3aW5kb3dSZWN0KCkgb3ZlcnJpZGU7CisgICAg
dm9pZCBzZXRXaW5kb3dSZWN0KGNvbnN0IFdlYkNvcmU6OkZsb2F0UmVjdCYpIGZpbmFsOworICAg
IFdlYkNvcmU6OkZsb2F0UmVjdCB3aW5kb3dSZWN0KCkgZmluYWw7CiAgICAgCi0gICAgV2ViQ29y
ZTo6RmxvYXRSZWN0IHBhZ2VSZWN0KCkgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6RmxvYXRSZWN0
IHBhZ2VSZWN0KCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBmb2N1cygpIG92ZXJyaWRlOwotICAg
IHZvaWQgdW5mb2N1cygpIG92ZXJyaWRlOworICAgIHZvaWQgZm9jdXMoKSBmaW5hbDsKKyAgICB2
b2lkIHVuZm9jdXMoKSBmaW5hbDsKICAgICAKLSAgICBib29sIGNhblRha2VGb2N1cyhXZWJDb3Jl
OjpGb2N1c0RpcmVjdGlvbikgb3ZlcnJpZGU7Ci0gICAgdm9pZCB0YWtlRm9jdXMoV2ViQ29yZTo6
Rm9jdXNEaXJlY3Rpb24pIG92ZXJyaWRlOworICAgIGJvb2wgY2FuVGFrZUZvY3VzKFdlYkNvcmU6
OkZvY3VzRGlyZWN0aW9uKSBmaW5hbDsKKyAgICB2b2lkIHRha2VGb2N1cyhXZWJDb3JlOjpGb2N1
c0RpcmVjdGlvbikgZmluYWw7CiAKLSAgICB2b2lkIGZvY3VzZWRFbGVtZW50Q2hhbmdlZChXZWJD
b3JlOjpFbGVtZW50Kikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBmb2N1c2VkRnJhbWVDaGFuZ2VkKFdl
YkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7CisgICAgdm9pZCBmb2N1c2VkRWxlbWVudENoYW5nZWQo
V2ViQ29yZTo6RWxlbWVudCopIGZpbmFsOworICAgIHZvaWQgZm9jdXNlZEZyYW1lQ2hhbmdlZChX
ZWJDb3JlOjpGcmFtZSopIGZpbmFsOwogCiAgICAgLy8gVGhlIEZyYW1lIHBvaW50ZXIgcHJvdmlk
ZXMgdGhlIENocm9tZUNsaWVudCB3aXRoIGNvbnRleHQgYWJvdXQgd2hpY2gKICAgICAvLyBGcmFt
ZSB3YW50cyB0byBjcmVhdGUgdGhlIG5ldyBQYWdlLiAgQWxzbywgdGhlIG5ld2x5IGNyZWF0ZWQg
d2luZG93CiAgICAgLy8gc2hvdWxkIG5vdCBiZSBzaG93biB0byB0aGUgdXNlciB1bnRpbCB0aGUg
Q2hyb21lQ2xpZW50IG9mIHRoZSBuZXdseQogICAgIC8vIGNyZWF0ZWQgUGFnZSBoYXMgaXRzIHNo
b3cgbWV0aG9kIGNhbGxlZC4KLSAgICBXZWJDb3JlOjpQYWdlKiBjcmVhdGVXaW5kb3coV2ViQ29y
ZTo6RnJhbWUqLCBjb25zdCBXZWJDb3JlOjpGcmFtZUxvYWRSZXF1ZXN0JiwgY29uc3QgV2ViQ29y
ZTo6V2luZG93RmVhdHVyZXMmLCBjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJikgb3Zl
cnJpZGU7Ci0gICAgdm9pZCBzaG93KCkgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6UGFnZSogY3Jl
YXRlV2luZG93KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV2ViQ29yZTo6RnJhbWVMb2FkUmVxdWVz
dCYsIGNvbnN0IFdlYkNvcmU6OldpbmRvd0ZlYXR1cmVzJiwgY29uc3QgV2ViQ29yZTo6TmF2aWdh
dGlvbkFjdGlvbiYpIGZpbmFsOworICAgIHZvaWQgc2hvdygpIGZpbmFsOwogICAgIAotICAgIGJv
b2wgY2FuUnVuTW9kYWwoKSBvdmVycmlkZTsKLSAgICB2b2lkIHJ1bk1vZGFsKCkgb3ZlcnJpZGU7
CisgICAgYm9vbCBjYW5SdW5Nb2RhbCgpIGZpbmFsOworICAgIHZvaWQgcnVuTW9kYWwoKSBmaW5h
bDsKICAgICAKLSAgICB2b2lkIHNldFRvb2xiYXJzVmlzaWJsZShib29sKSBvdmVycmlkZTsKLSAg
ICBib29sIHRvb2xiYXJzVmlzaWJsZSgpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0VG9vbGJhcnNW
aXNpYmxlKGJvb2wpIGZpbmFsOworICAgIGJvb2wgdG9vbGJhcnNWaXNpYmxlKCkgZmluYWw7CiAg
ICAgCi0gICAgdm9pZCBzZXRTdGF0dXNiYXJWaXNpYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJv
b2wgc3RhdHVzYmFyVmlzaWJsZSgpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0U3RhdHVzYmFyVmlz
aWJsZShib29sKSBmaW5hbDsKKyAgICBib29sIHN0YXR1c2JhclZpc2libGUoKSBmaW5hbDsKICAg
ICAKLSAgICB2b2lkIHNldFNjcm9sbGJhcnNWaXNpYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJv
b2wgc2Nyb2xsYmFyc1Zpc2libGUoKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldFNjcm9sbGJhcnNW
aXNpYmxlKGJvb2wpIGZpbmFsOworICAgIGJvb2wgc2Nyb2xsYmFyc1Zpc2libGUoKSBmaW5hbDsK
ICAgICAKLSAgICB2b2lkIHNldE1lbnViYXJWaXNpYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJv
b2wgbWVudWJhclZpc2libGUoKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldE1lbnViYXJWaXNpYmxl
KGJvb2wpIGZpbmFsOworICAgIGJvb2wgbWVudWJhclZpc2libGUoKSBmaW5hbDsKICAgICAKLSAg
ICB2b2lkIHNldFJlc2l6YWJsZShib29sKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldFJlc2l6YWJs
ZShib29sKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIGFkZE1lc3NhZ2VUb0NvbnNvbGUoSlNDOjpN
ZXNzYWdlU291cmNlLCBKU0M6Ok1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCB1
bnNpZ25lZCBsaW5lTnVtYmVyLCB1bnNpZ25lZCBjb2x1bW5OdW1iZXIsIGNvbnN0IFN0cmluZyYg
c291cmNlSUQpIG92ZXJyaWRlOworICAgIHZvaWQgYWRkTWVzc2FnZVRvQ29uc29sZShKU0M6Ok1l
c3NhZ2VTb3VyY2UsIEpTQzo6TWVzc2FnZUxldmVsLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIHVu
c2lnbmVkIGxpbmVOdW1iZXIsIHVuc2lnbmVkIGNvbHVtbk51bWJlciwgY29uc3QgU3RyaW5nJiBz
b3VyY2VJRCkgZmluYWw7CiAgICAgCi0gICAgYm9vbCBjYW5SdW5CZWZvcmVVbmxvYWRDb25maXJt
UGFuZWwoKSBvdmVycmlkZTsKLSAgICBib29sIHJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbChj
b25zdCBTdHJpbmcmIG1lc3NhZ2UsIFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7CisgICAgYm9v
bCBjYW5SdW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoKSBmaW5hbDsKKyAgICBib29sIHJ1bkJl
Zm9yZVVubG9hZENvbmZpcm1QYW5lbChjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIFdlYkNvcmU6OkZy
YW1lKikgZmluYWw7CiAgICAgCi0gICAgdm9pZCBjbG9zZVdpbmRvd1Nvb24oKSBvdmVycmlkZTsK
KyAgICB2b2lkIGNsb3NlV2luZG93U29vbigpIGZpbmFsOwogICAgIAotICAgIHZvaWQgcnVuSmF2
YVNjcmlwdEFsZXJ0KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7Ci0g
ICAgYm9vbCBydW5KYXZhU2NyaXB0Q29uZmlybShXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFN0cmlu
ZyYpIG92ZXJyaWRlOwotICAgIGJvb2wgcnVuSmF2YVNjcmlwdFByb21wdChXZWJDb3JlOjpGcmFt
ZSosIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgY29uc3QgU3RyaW5nJiBkZWZhdWx0VmFsdWUsIFN0
cmluZyYgcmVzdWx0KSBvdmVycmlkZTsKLSAgICB2b2lkIHNldFN0YXR1c2JhclRleHQoY29uc3Qg
U3RyaW5nJikgb3ZlcnJpZGU7Ci0KLSAgICBXZWJDb3JlOjpLZXlib2FyZFVJTW9kZSBrZXlib2Fy
ZFVJTW9kZSgpIG92ZXJyaWRlOwotCi0gICAgLy8gSG9zdFdpbmRvdyBtZW1iZXIgZnVuY3Rpb24g
b3ZlcnJpZGVzLgotICAgIHZvaWQgaW52YWxpZGF0ZVJvb3RWaWV3KGNvbnN0IFdlYkNvcmU6Oklu
dFJlY3QmKSBvdmVycmlkZTsKLSAgICB2b2lkIGludmFsaWRhdGVDb250ZW50c0FuZFJvb3RWaWV3
KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBvdmVycmlkZTsKLSAgICB2b2lkIGludmFsaWRhdGVD
b250ZW50c0ZvclNsb3dTY3JvbGwoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIG92ZXJyaWRlOwot
ICAgIHZvaWQgc2Nyb2xsKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIHNjcm9sbERlbHRhLCBjb25z
dCBXZWJDb3JlOjpJbnRSZWN0JiBzY3JvbGxSZWN0LCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiBj
bGlwUmVjdCkgb3ZlcnJpZGU7CisgICAgdm9pZCBydW5KYXZhU2NyaXB0QWxlcnQoV2ViQ29yZTo6
RnJhbWUqLCBjb25zdCBTdHJpbmcmKSBmaW5hbDsKKyAgICBib29sIHJ1bkphdmFTY3JpcHRDb25m
aXJtKFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgU3RyaW5nJikgZmluYWw7CisgICAgYm9vbCBydW5K
YXZhU2NyaXB0UHJvbXB0KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBj
b25zdCBTdHJpbmcmIGRlZmF1bHRWYWx1ZSwgU3RyaW5nJiByZXN1bHQpIGZpbmFsOworICAgIHZv
aWQgc2V0U3RhdHVzYmFyVGV4dChjb25zdCBTdHJpbmcmKSBmaW5hbDsKKworICAgIFdlYkNvcmU6
OktleWJvYXJkVUlNb2RlIGtleWJvYXJkVUlNb2RlKCkgZmluYWw7CisKKyAgICAvLyBIb3N0V2lu
ZG93IG1lbWJlciBmdW5jdGlvbiBmaW5hbHMuCisgICAgdm9pZCBpbnZhbGlkYXRlUm9vdFZpZXco
Y29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGZpbmFsOworICAgIHZvaWQgaW52YWxpZGF0ZUNvbnRl
bnRzQW5kUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGZpbmFsOworICAgIHZvaWQg
aW52YWxpZGF0ZUNvbnRlbnRzRm9yU2xvd1Njcm9sbChjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jikg
ZmluYWw7CisgICAgdm9pZCBzY3JvbGwoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgc2Nyb2xsRGVs
dGEsIGNvbnN0IFdlYkNvcmU6OkludFJlY3QmIHNjcm9sbFJlY3QsIGNvbnN0IFdlYkNvcmU6Oklu
dFJlY3QmIGNsaXBSZWN0KSBmaW5hbDsKKwogI2lmIFVTRShDT09SRElOQVRFRF9HUkFQSElDUykK
LSAgICB2b2lkIGRlbGVnYXRlZFNjcm9sbFJlcXVlc3RlZChjb25zdCBXZWJDb3JlOjpJbnRQb2lu
dCYgc2Nyb2xsT2Zmc2V0KSBvdmVycmlkZTsKKyAgICB2b2lkIGRlbGVnYXRlZFNjcm9sbFJlcXVl
c3RlZChjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYgc2Nyb2xsT2Zmc2V0KSBmaW5hbDsKICNlbmRp
ZgotICAgIFdlYkNvcmU6OkludFBvaW50IHNjcmVlblRvUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6
SW50UG9pbnQmKSBjb25zdCBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpJbnRSZWN0IHJvb3RWaWV3
VG9TY3JlZW4oY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGNvbnN0IG92ZXJyaWRlOworCisgICAg
V2ViQ29yZTo6SW50UG9pbnQgc2NyZWVuVG9Sb290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRQb2lu
dCYpIGNvbnN0IGZpbmFsOworICAgIFdlYkNvcmU6OkludFJlY3Qgcm9vdFZpZXdUb1NjcmVlbihj
b25zdCBXZWJDb3JlOjpJbnRSZWN0JikgY29uc3QgZmluYWw7CisKICNpZiBQTEFURk9STShJT1Mp
Ci0gICAgV2ViQ29yZTo6SW50UG9pbnQgYWNjZXNzaWJpbGl0eVNjcmVlblRvUm9vdFZpZXcoY29u
c3QgV2ViQ29yZTo6SW50UG9pbnQmKSBjb25zdCBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpJbnRS
ZWN0IHJvb3RWaWV3VG9BY2Nlc3NpYmlsaXR5U2NyZWVuKGNvbnN0IFdlYkNvcmU6OkludFJlY3Qm
KSBjb25zdCBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpJbnRQb2ludCBhY2Nlc3NpYmlsaXR5U2Ny
ZWVuVG9Sb290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIGNvbnN0IGZpbmFsOworICAg
IFdlYkNvcmU6OkludFJlY3Qgcm9vdFZpZXdUb0FjY2Vzc2liaWxpdHlTY3JlZW4oY29uc3QgV2Vi
Q29yZTo6SW50UmVjdCYpIGNvbnN0IGZpbmFsOwogI2VuZGlmCi0gICAgUGxhdGZvcm1QYWdlQ2xp
ZW50IHBsYXRmb3JtUGFnZUNsaWVudCgpIGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQgY29udGVu
dHNTaXplQ2hhbmdlZChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6OkludFNpemUmKSBj
b25zdCBvdmVycmlkZTsKLSAgICB2b2lkIHNjcm9sbFJlY3RJbnRvVmlldyhjb25zdCBXZWJDb3Jl
OjpJbnRSZWN0JikgY29uc3Qgb3ZlcnJpZGU7IC8vIEN1cnJlbnRseSBvbmx5IE1hYyBoYXMgYSBu
b24gZW1wdHkgaW1wbGVtZW50YXRpb24uCiAKLSAgICBib29sIHNob3VsZFVuYXZhaWxhYmxlUGx1
Z2luTWVzc2FnZUJlQnV0dG9uKFdlYkNvcmU6OlJlbmRlckVtYmVkZGVkT2JqZWN0OjpQbHVnaW5V
bmF2YWlsYWJpbGl0eVJlYXNvbikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCB1bmF2YWlsYWJs
ZVBsdWdpbkJ1dHRvbkNsaWNrZWQoV2ViQ29yZTo6RWxlbWVudCosIFdlYkNvcmU6OlJlbmRlckVt
YmVkZGVkT2JqZWN0OjpQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbikgY29uc3Qgb3ZlcnJpZGU7
CisgICAgUGxhdGZvcm1QYWdlQ2xpZW50IHBsYXRmb3JtUGFnZUNsaWVudCgpIGNvbnN0IGZpbmFs
OworICAgIHZvaWQgY29udGVudHNTaXplQ2hhbmdlZChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdl
YkNvcmU6OkludFNpemUmKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIHNjcm9sbFJlY3RJbnRvVmll
dyhjb25zdCBXZWJDb3JlOjpJbnRSZWN0JikgY29uc3QgZmluYWw7IC8vIEN1cnJlbnRseSBvbmx5
IE1hYyBoYXMgYSBub24gZW1wdHkgaW1wbGVtZW50YXRpb24uCiAKLSAgICB2b2lkIHNjcm9sbGJh
cnNNb2RlRGlkQ2hhbmdlKCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCBtb3VzZURpZE1vdmVP
dmVyRWxlbWVudChjb25zdCBXZWJDb3JlOjpIaXRUZXN0UmVzdWx0JiwgdW5zaWduZWQgbW9kaWZp
ZXJGbGFncykgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRVbmF2YWlsYWJsZVBsdWdpbk1lc3Nh
Z2VCZUJ1dHRvbihXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2luVW5hdmFpbGFi
aWxpdHlSZWFzb24pIGNvbnN0IGZpbmFsOworICAgIHZvaWQgdW5hdmFpbGFibGVQbHVnaW5CdXR0
b25DbGlja2VkKFdlYkNvcmU6OkVsZW1lbnQqLCBXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVj
dDo6UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24pIGNvbnN0IGZpbmFsOwogCi0gICAgdm9pZCBz
ZXRUb29sVGlwKGNvbnN0IFN0cmluZyYsIFdlYkNvcmU6OlRleHREaXJlY3Rpb24pIG92ZXJyaWRl
OworICAgIHZvaWQgc2Nyb2xsYmFyc01vZGVEaWRDaGFuZ2UoKSBjb25zdCBmaW5hbDsKKyAgICB2
b2lkIG1vdXNlRGlkTW92ZU92ZXJFbGVtZW50KGNvbnN0IFdlYkNvcmU6OkhpdFRlc3RSZXN1bHQm
LCB1bnNpZ25lZCBtb2RpZmllckZsYWdzKSBmaW5hbDsKKworICAgIHZvaWQgc2V0VG9vbFRpcChj
b25zdCBTdHJpbmcmLCBXZWJDb3JlOjpUZXh0RGlyZWN0aW9uKSBmaW5hbDsKICAgICAKLSAgICB2
b2lkIHByaW50KFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7CisgICAgdm9pZCBwcmludChXZWJD
b3JlOjpGcmFtZSopIGZpbmFsOwogCi0gICAgdm9pZCBleGNlZWRlZERhdGFiYXNlUXVvdGEoV2Vi
Q29yZTo6RnJhbWUqLCBjb25zdCBTdHJpbmcmIGRhdGFiYXNlTmFtZSwgV2ViQ29yZTo6RGF0YWJh
c2VEZXRhaWxzKSBvdmVycmlkZTsKKyAgICB2b2lkIGV4Y2VlZGVkRGF0YWJhc2VRdW90YShXZWJD
b3JlOjpGcmFtZSosIGNvbnN0IFN0cmluZyYgZGF0YWJhc2VOYW1lLCBXZWJDb3JlOjpEYXRhYmFz
ZURldGFpbHMpIGZpbmFsOwogCi0gICAgdm9pZCByZWFjaGVkTWF4QXBwQ2FjaGVTaXplKGludDY0
X3Qgc3BhY2VOZWVkZWQpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVhY2hlZEFwcGxpY2F0aW9uQ2Fj
aGVPcmlnaW5RdW90YShXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiosIGludDY0X3Qgc3BhY2VOZWVk
ZWQpIG92ZXJyaWRlOworICAgIHZvaWQgcmVhY2hlZE1heEFwcENhY2hlU2l6ZShpbnQ2NF90IHNw
YWNlTmVlZGVkKSBmaW5hbDsKKyAgICB2b2lkIHJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2lu
UXVvdGEoV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4qLCBpbnQ2NF90IHNwYWNlTmVlZGVkKSBmaW5h
bDsKIAogI2lmIEVOQUJMRShEQVNIQk9BUkRfU1VQUE9SVCkKLSAgICB2b2lkIGFubm90YXRlZFJl
Z2lvbnNDaGFuZ2VkKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBhbm5vdGF0ZWRSZWdpb25zQ2hhbmdl
ZCgpIGZpbmFsOwogI2VuZGlmCiAKLSAgICBib29sIHNob3VsZFJlcGxhY2VXaXRoR2VuZXJhdGVk
RmlsZUZvclVwbG9hZChjb25zdCBTdHJpbmcmIHBhdGgsIFN0cmluZyYgZ2VuZXJhdGVkRmlsZW5h
bWUpIG92ZXJyaWRlOwotICAgIFN0cmluZyBnZW5lcmF0ZVJlcGxhY2VtZW50RmlsZShjb25zdCBT
dHJpbmcmIHBhdGgpIG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkUmVwbGFjZVdpdGhHZW5lcmF0
ZWRGaWxlRm9yVXBsb2FkKGNvbnN0IFN0cmluZyYgcGF0aCwgU3RyaW5nJiBnZW5lcmF0ZWRGaWxl
bmFtZSkgZmluYWw7CisgICAgU3RyaW5nIGdlbmVyYXRlUmVwbGFjZW1lbnRGaWxlKGNvbnN0IFN0
cmluZyYgcGF0aCkgZmluYWw7CiAgICAgCiAjaWYgRU5BQkxFKElOUFVUX1RZUEVfQ09MT1IpCi0g
ICAgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6OkNvbG9yQ2hvb3Nlcj4gY3JlYXRlQ29sb3JDaG9v
c2VyKFdlYkNvcmU6OkNvbG9yQ2hvb3NlckNsaWVudCosIGNvbnN0IFdlYkNvcmU6OkNvbG9yJikg
b3ZlcnJpZGU7CisgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6OkNvbG9yQ2hvb3Nlcj4gY3Jl
YXRlQ29sb3JDaG9vc2VyKFdlYkNvcmU6OkNvbG9yQ2hvb3NlckNsaWVudCosIGNvbnN0IFdlYkNv
cmU6OkNvbG9yJikgZmluYWw7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShJT1NfVE9VQ0hfRVZFTlRT
KQotICAgIHZvaWQgZGlkUHJldmVudERlZmF1bHRGb3JFdmVudCgpIG92ZXJyaWRlOworICAgIHZv
aWQgZGlkUHJldmVudERlZmF1bHRGb3JFdmVudCgpIGZpbmFsOwogI2VuZGlmCiAKICNpZiBQTEFU
Rk9STShJT1MpCi0gICAgdm9pZCBkaWRSZWNlaXZlTW9iaWxlRG9jVHlwZShib29sKSBvdmVycmlk
ZTsKLSAgICB2b2lkIHNldE5lZWRzU2Nyb2xsTm90aWZpY2F0aW9ucyhXZWJDb3JlOjpGcmFtZSos
IGJvb2wpIG92ZXJyaWRlOwotICAgIHZvaWQgb2JzZXJ2ZWRDb250ZW50Q2hhbmdlKFdlYkNvcmU6
OkZyYW1lKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBjbGVhckNvbnRlbnRDaGFuZ2VPYnNlcnZlcnMo
V2ViQ29yZTo6RnJhbWUqKSBvdmVycmlkZTsKLSAgICB2b2lkIG5vdGlmeVJldmVhbGVkU2VsZWN0
aW9uQnlTY3JvbGxpbmdGcmFtZShXZWJDb3JlOjpGcmFtZSopIG92ZXJyaWRlOwotICAgIGJvb2wg
aXNTdG9wcGluZygpIG92ZXJyaWRlOwotCi0gICAgdm9pZCBkaWRMYXlvdXQoTGF5b3V0VHlwZSA9
IE5vcm1hbExheW91dCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRTdGFydE92ZXJmbG93U2Nyb2xs
KCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRFbmRPdmVyZmxvd1Njcm9sbCgpIG92ZXJyaWRlOwot
ICAgIGJvb2wgaGFzU3RhYmxlUGFnZVNjYWxlRmFjdG9yKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAg
dm9pZCBkaWRSZWNlaXZlTW9iaWxlRG9jVHlwZShib29sKSBmaW5hbDsKKyAgICB2b2lkIHNldE5l
ZWRzU2Nyb2xsTm90aWZpY2F0aW9ucyhXZWJDb3JlOjpGcmFtZSosIGJvb2wpIGZpbmFsOworICAg
IHZvaWQgb2JzZXJ2ZWRDb250ZW50Q2hhbmdlKFdlYkNvcmU6OkZyYW1lKikgZmluYWw7CisgICAg
dm9pZCBjbGVhckNvbnRlbnRDaGFuZ2VPYnNlcnZlcnMoV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsK
KyAgICB2b2lkIG5vdGlmeVJldmVhbGVkU2VsZWN0aW9uQnlTY3JvbGxpbmdGcmFtZShXZWJDb3Jl
OjpGcmFtZSopIGZpbmFsOworICAgIGJvb2wgaXNTdG9wcGluZygpIGZpbmFsOworCisgICAgdm9p
ZCBkaWRMYXlvdXQoTGF5b3V0VHlwZSA9IE5vcm1hbExheW91dCkgZmluYWw7CisgICAgdm9pZCBk
aWRTdGFydE92ZXJmbG93U2Nyb2xsKCkgZmluYWw7CisgICAgdm9pZCBkaWRFbmRPdmVyZmxvd1Nj
cm9sbCgpIGZpbmFsOworICAgIGJvb2wgaGFzU3RhYmxlUGFnZVNjYWxlRmFjdG9yKCkgY29uc3Qg
ZmluYWw7CiAKICAgICAvLyBGSVhNRTogU2VlIDxyZGFyOi8vcHJvYmxlbS81OTc1NTU5PgotICAg
IHZvaWQgc3VwcHJlc3NGb3JtTm90aWZpY2F0aW9ucygpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVz
dG9yZUZvcm1Ob3RpZmljYXRpb25zKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBzdXBwcmVzc0Zvcm1O
b3RpZmljYXRpb25zKCkgZmluYWw7CisgICAgdm9pZCByZXN0b3JlRm9ybU5vdGlmaWNhdGlvbnMo
KSBmaW5hbDsKIAotICAgIHZvaWQgYWRkT3JVcGRhdGVTY3JvbGxpbmdMYXllcihXZWJDb3JlOjpO
b2RlKiwgUGxhdGZvcm1MYXllciogc2Nyb2xsaW5nTGF5ZXIsIFBsYXRmb3JtTGF5ZXIqIGNvbnRl
bnRzTGF5ZXIsIGNvbnN0IFdlYkNvcmU6OkludFNpemUmIHNjcm9sbFNpemUsIGJvb2wgYWxsb3dI
b3Jpem9udGFsU2Nyb2xsYmFyLCBib29sIGFsbG93VmVydGljYWxTY3JvbGxiYXIpIG92ZXJyaWRl
OwotICAgIHZvaWQgcmVtb3ZlU2Nyb2xsaW5nTGF5ZXIoV2ViQ29yZTo6Tm9kZSosIFBsYXRmb3Jt
TGF5ZXIqIHNjcm9sbGluZ0xheWVyLCBQbGF0Zm9ybUxheWVyKiBjb250ZW50c0xheWVyKSBvdmVy
cmlkZTsKKyAgICB2b2lkIGFkZE9yVXBkYXRlU2Nyb2xsaW5nTGF5ZXIoV2ViQ29yZTo6Tm9kZSos
IFBsYXRmb3JtTGF5ZXIqIHNjcm9sbGluZ0xheWVyLCBQbGF0Zm9ybUxheWVyKiBjb250ZW50c0xh
eWVyLCBjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBzY3JvbGxTaXplLCBib29sIGFsbG93SG9yaXpv
bnRhbFNjcm9sbGJhciwgYm9vbCBhbGxvd1ZlcnRpY2FsU2Nyb2xsYmFyKSBmaW5hbDsKKyAgICB2
b2lkIHJlbW92ZVNjcm9sbGluZ0xheWVyKFdlYkNvcmU6Ok5vZGUqLCBQbGF0Zm9ybUxheWVyKiBz
Y3JvbGxpbmdMYXllciwgUGxhdGZvcm1MYXllciogY29udGVudHNMYXllcikgZmluYWw7CiAKLSAg
ICB2b2lkIHdlYkFwcE9yaWVudGF0aW9uc1VwZGF0ZWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIHNo
b3dQbGF5YmFja1RhcmdldFBpY2tlcihib29sIGhhc1ZpZGVvKSBvdmVycmlkZTsKKyAgICB2b2lk
IHdlYkFwcE9yaWVudGF0aW9uc1VwZGF0ZWQoKSBmaW5hbDsKKyAgICB2b2lkIHNob3dQbGF5YmFj
a1RhcmdldFBpY2tlcihib29sIGhhc1ZpZGVvKSBmaW5hbDsKIAotICAgIFNlY29uZHMgZXZlbnRU
aHJvdHRsaW5nRGVsYXkoKSBvdmVycmlkZTsKKyAgICBTZWNvbmRzIGV2ZW50VGhyb3R0bGluZ0Rl
bGF5KCkgZmluYWw7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShPUklFTlRBVElPTl9FVkVOVFMpCi0g
ICAgaW50IGRldmljZU9yaWVudGF0aW9uKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgaW50IGRldmlj
ZU9yaWVudGF0aW9uKCkgY29uc3QgZmluYWw7CiAjZW5kaWYKIAotICAgIHZvaWQgcnVuT3BlblBh
bmVsKFdlYkNvcmU6OkZyYW1lKiwgUGFzc1JlZlB0cjxXZWJDb3JlOjpGaWxlQ2hvb3Nlcj4pIG92
ZXJyaWRlOwotICAgIHZvaWQgbG9hZEljb25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8U3RyaW5nPiYs
IFdlYkNvcmU6OkZpbGVJY29uTG9hZGVyJikgb3ZlcnJpZGU7CisgICAgdm9pZCBydW5PcGVuUGFu
ZWwoV2ViQ29yZTo6RnJhbWUmLCBXZWJDb3JlOjpGaWxlQ2hvb3NlciYpIGZpbmFsOworICAgIHZv
aWQgbG9hZEljb25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8U3RyaW5nPiYsIFdlYkNvcmU6OkZpbGVJ
Y29uTG9hZGVyJikgZmluYWw7CiAKICNpZiAhUExBVEZPUk0oSU9TKQotICAgIHZvaWQgc2V0Q3Vy
c29yKGNvbnN0IFdlYkNvcmU6OkN1cnNvciYpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0Q3Vyc29y
SGlkZGVuVW50aWxNb3VzZU1vdmVzKGJvb2wpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0Q3Vyc29y
KGNvbnN0IFdlYkNvcmU6OkN1cnNvciYpIGZpbmFsOworICAgIHZvaWQgc2V0Q3Vyc29ySGlkZGVu
VW50aWxNb3VzZU1vdmVzKGJvb2wpIGZpbmFsOwogI2VuZGlmCisKICNpZiBFTkFCTEUoUkVRVUVT
VF9BTklNQVRJT05fRlJBTUUpICYmICFVU0UoUkVRVUVTVF9BTklNQVRJT05fRlJBTUVfVElNRVIp
Ci0gICAgdm9pZCBzY2hlZHVsZUFuaW1hdGlvbigpIG92ZXJyaWRlOworICAgIHZvaWQgc2NoZWR1
bGVBbmltYXRpb24oKSBmaW5hbDsKICNlbmRpZgogICAgIAogI2lmIEVOQUJMRShQT0lOVEVSX0xP
Q0spCi0gICAgYm9vbCByZXF1ZXN0UG9pbnRlckxvY2soKSBvdmVycmlkZTsKLSAgICB2b2lkIHJl
cXVlc3RQb2ludGVyVW5sb2NrKCkgb3ZlcnJpZGU7CisgICAgYm9vbCByZXF1ZXN0UG9pbnRlckxv
Y2soKSBmaW5hbDsKKyAgICB2b2lkIHJlcXVlc3RQb2ludGVyVW5sb2NrKCkgZmluYWw7CiAjZW5k
aWYKIAotICAgIHZvaWQgZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xzKGNvbnN0IFZlY3RvcjxSZWZQ
dHI8V2ViQ29yZTo6RWxlbWVudD4+Jikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBzaG91bGROb3RpZnlP
bkZvcm1DaGFuZ2VzKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRBc3NvY2lhdGVGb3JtQ29udHJv
bHMoY29uc3QgVmVjdG9yPFJlZlB0cjxXZWJDb3JlOjpFbGVtZW50Pj4mKSBmaW5hbDsKKyAgICBi
b29sIHNob3VsZE5vdGlmeU9uRm9ybUNoYW5nZXMoKSBmaW5hbDsKIAotICAgIGJvb2wgc2VsZWN0
SXRlbVdyaXRpbmdEaXJlY3Rpb25Jc05hdHVyYWwoKSBvdmVycmlkZTsKLSAgICBib29sIHNlbGVj
dEl0ZW1BbGlnbm1lbnRGb2xsb3dzTWVudVdyaXRpbmdEaXJlY3Rpb24oKSBvdmVycmlkZTsKLSAg
ICBib29sIGhhc09wZW5lZFBvcHVwKCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgUmVmUHRyPFdlYkNv
cmU6OlBvcHVwTWVudT4gY3JlYXRlUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCop
IGNvbnN0IG92ZXJyaWRlOwotICAgIFJlZlB0cjxXZWJDb3JlOjpTZWFyY2hQb3B1cE1lbnU+IGNy
ZWF0ZVNlYXJjaFBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1lbnVDbGllbnQqKSBjb25zdCBvdmVy
cmlkZTsKKyAgICBib29sIHNlbGVjdEl0ZW1Xcml0aW5nRGlyZWN0aW9uSXNOYXR1cmFsKCkgZmlu
YWw7CisgICAgYm9vbCBzZWxlY3RJdGVtQWxpZ25tZW50Rm9sbG93c01lbnVXcml0aW5nRGlyZWN0
aW9uKCkgZmluYWw7CisgICAgYm9vbCBoYXNPcGVuZWRQb3B1cCgpIGNvbnN0IGZpbmFsOworICAg
IFJlZlB0cjxXZWJDb3JlOjpQb3B1cE1lbnU+IGNyZWF0ZVBvcHVwTWVudShXZWJDb3JlOjpQb3B1
cE1lbnVDbGllbnQqKSBjb25zdCBmaW5hbDsKKyAgICBSZWZQdHI8V2ViQ29yZTo6U2VhcmNoUG9w
dXBNZW51PiBjcmVhdGVTZWFyY2hQb3B1cE1lbnUoV2ViQ29yZTo6UG9wdXBNZW51Q2xpZW50Kikg
Y29uc3QgZmluYWw7CiAKLSAgICBXZWJDb3JlOjpHcmFwaGljc0xheWVyRmFjdG9yeSogZ3JhcGhp
Y3NMYXllckZhY3RvcnkoKSBjb25zdCBvdmVycmlkZTsKLSAgICB2b2lkIGF0dGFjaFJvb3RHcmFw
aGljc0xheWVyKFdlYkNvcmU6OkZyYW1lKiwgV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIG92ZXJy
aWRlOwotICAgIHZvaWQgYXR0YWNoVmlld092ZXJsYXlHcmFwaGljc0xheWVyKFdlYkNvcmU6OkZy
YW1lKiwgV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0TmVl
ZHNPbmVTaG90RHJhd2luZ1N5bmNocm9uaXphdGlvbigpIG92ZXJyaWRlOwotICAgIHZvaWQgc2No
ZWR1bGVDb21wb3NpdGluZ0xheWVyRmx1c2goKSBvdmVycmlkZTsKLSAgICBib29sIGFkanVzdExh
eWVyRmx1c2hUaHJvdHRsaW5nKFdlYkNvcmU6OkxheWVyRmx1c2hUaHJvdHRsZVN0YXRlOjpGbGFn
cykgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6R3JhcGhpY3NMYXllckZhY3RvcnkqIGdyYXBoaWNz
TGF5ZXJGYWN0b3J5KCkgY29uc3QgZmluYWw7CisgICAgdm9pZCBhdHRhY2hSb290R3JhcGhpY3NM
YXllcihXZWJDb3JlOjpGcmFtZSosIFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXIqKSBmaW5hbDsKKyAg
ICB2b2lkIGF0dGFjaFZpZXdPdmVybGF5R3JhcGhpY3NMYXllcihXZWJDb3JlOjpGcmFtZSosIFdl
YkNvcmU6OkdyYXBoaWNzTGF5ZXIqKSBmaW5hbDsKKyAgICB2b2lkIHNldE5lZWRzT25lU2hvdERy
YXdpbmdTeW5jaHJvbml6YXRpb24oKSBmaW5hbDsKKyAgICB2b2lkIHNjaGVkdWxlQ29tcG9zaXRp
bmdMYXllckZsdXNoKCkgZmluYWw7CisgICAgYm9vbCBhZGp1c3RMYXllckZsdXNoVGhyb3R0bGlu
ZyhXZWJDb3JlOjpMYXllckZsdXNoVGhyb3R0bGVTdGF0ZTo6RmxhZ3MpIGZpbmFsOwogCiAjaWYg
VVNFKFJFUVVFU1RfQU5JTUFUSU9OX0ZSQU1FX0RJU1BMQVlfTU9OSVRPUikKLSAgICBSZWZQdHI8
V2ViQ29yZTo6RGlzcGxheVJlZnJlc2hNb25pdG9yPiBjcmVhdGVEaXNwbGF5UmVmcmVzaE1vbml0
b3IoV2ViQ29yZTo6UGxhdGZvcm1EaXNwbGF5SUQpIGNvbnN0IG92ZXJyaWRlOworICAgIFJlZlB0
cjxXZWJDb3JlOjpEaXNwbGF5UmVmcmVzaE1vbml0b3I+IGNyZWF0ZURpc3BsYXlSZWZyZXNoTW9u
aXRvcihXZWJDb3JlOjpQbGF0Zm9ybURpc3BsYXlJRCkgY29uc3QgZmluYWw7CiAjZW5kaWYKIAot
ICAgIENvbXBvc2l0aW5nVHJpZ2dlckZsYWdzIGFsbG93ZWRDb21wb3NpdGluZ1RyaWdnZXJzKCkg
Y29uc3Qgb3ZlcnJpZGUKKyAgICBDb21wb3NpdGluZ1RyaWdnZXJGbGFncyBhbGxvd2VkQ29tcG9z
aXRpbmdUcmlnZ2VycygpIGNvbnN0IGZpbmFsCiAgICAgewogICAgICAgICByZXR1cm4gc3RhdGlj
X2Nhc3Q8Q29tcG9zaXRpbmdUcmlnZ2VyRmxhZ3M+KAogICAgICAgICAgICAgVGhyZWVEVHJhbnNm
b3JtVHJpZ2dlciB8CkBAIC0yMzAsMTE5ICsyMjgsMTIxIEBAIHByaXZhdGU6CiAgICAgICAgICAg
ICBBbmltYXRpb25UcmlnZ2VyKTsKICAgICB9CiAKLSAgICBib29sIGxheWVyVHJlZVN0YXRlSXNG
cm96ZW4oKSBjb25zdCBvdmVycmlkZTsKKyAgICBib29sIGxheWVyVHJlZVN0YXRlSXNGcm96ZW4o
KSBjb25zdCBmaW5hbDsKIAogI2lmIEVOQUJMRShBU1lOQ19TQ1JPTExJTkcpCi0gICAgUGFzc1Jl
ZlB0cjxXZWJDb3JlOjpTY3JvbGxpbmdDb29yZGluYXRvcj4gY3JlYXRlU2Nyb2xsaW5nQ29vcmRp
bmF0b3IoV2ViQ29yZTo6UGFnZSopIGNvbnN0IG92ZXJyaWRlOworICAgIFBhc3NSZWZQdHI8V2Vi
Q29yZTo6U2Nyb2xsaW5nQ29vcmRpbmF0b3I+IGNyZWF0ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yKFdl
YkNvcmU6OlBhZ2UqKSBjb25zdCBmaW5hbDsKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oSU9TKQot
ICAgIHZvaWQgZWxlbWVudERpZFJlZm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9kZSopIG92ZXJyaWRl
OworICAgIHZvaWQgZWxlbWVudERpZFJlZm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9kZSopIGZpbmFs
OwogI2VuZGlmCiAKICNpZiAoUExBVEZPUk0oSU9TKSAmJiBIQVZFKEFWS0lUKSkgfHwgKFBMQVRG
T1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSkKLSAgICBib29sIHN1
cHBvcnRzVmlkZW9GdWxsc2NyZWVuKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6Vmlk
ZW9GdWxsc2NyZWVuTW9kZSkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRVcFBsYXliYWNrQ29udHJv
bHNNYW5hZ2VyKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQmKSBvdmVycmlkZTsKLSAgICB2b2lk
IGNsZWFyUGxheWJhY2tDb250cm9sc01hbmFnZXIoKSBvdmVycmlkZTsKLSAgICB2b2lkIGVudGVy
VmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQm
LCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIG92
ZXJyaWRlOwotICAgIHZvaWQgZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJD
b3JlOjpIVE1MVmlkZW9FbGVtZW50Jikgb3ZlcnJpZGU7Ci0jaWYgUExBVEZPUk0oTUFDKSAmJiBF
TkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCi0gICAgdm9pZCBleGl0VmlkZW9GdWxsc2Ny
ZWVuVG9Nb2RlV2l0aG91dEFuaW1hdGlvbihXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50JiwgV2Vi
Q29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlKSBvdmVycmlk
ZTsKKyAgICBib29sIHN1cHBvcnRzVmlkZW9GdWxsc2NyZWVuKFdlYkNvcmU6OkhUTUxNZWRpYUVs
ZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZSkgZmluYWw7CisgICAgdm9pZCBzZXRVcFBs
YXliYWNrQ29udHJvbHNNYW5hZ2VyKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQmKSBmaW5hbDsK
KyAgICB2b2lkIGNsZWFyUGxheWJhY2tDb250cm9sc01hbmFnZXIoKSBmaW5hbDsKKyAgICB2b2lk
IGVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0Vs
ZW1lbnQmLCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1v
ZGUpIGZpbmFsOworICAgIHZvaWQgZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChX
ZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50JikgZmluYWw7CiAjZW5kaWYKKworI2lmIFBMQVRGT1JN
KE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQorICAgIHZvaWQgZXhpdFZp
ZGVvRnVsbHNjcmVlblRvTW9kZVdpdGhvdXRBbmltYXRpb24oV2ViQ29yZTo6SFRNTFZpZGVvRWxl
bWVudCYsIFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVuTW9k
ZSkgZmluYWw7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQSSkKLSAgICBib29s
IHN1cHBvcnRzRnVsbFNjcmVlbkZvckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6RWxlbWVudCosIGJv
b2wgd2l0aEtleWJvYXJkKSBvdmVycmlkZTsKLSAgICB2b2lkIGVudGVyRnVsbFNjcmVlbkZvckVs
ZW1lbnQoV2ViQ29yZTo6RWxlbWVudCopIG92ZXJyaWRlOwotICAgIHZvaWQgZXhpdEZ1bGxTY3Jl
ZW5Gb3JFbGVtZW50KFdlYkNvcmU6OkVsZW1lbnQqKSBvdmVycmlkZTsKKyAgICBib29sIHN1cHBv
cnRzRnVsbFNjcmVlbkZvckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6RWxlbWVudCosIGJvb2wgd2l0
aEtleWJvYXJkKSBmaW5hbDsKKyAgICB2b2lkIGVudGVyRnVsbFNjcmVlbkZvckVsZW1lbnQoV2Vi
Q29yZTo6RWxlbWVudCopIGZpbmFsOworICAgIHZvaWQgZXhpdEZ1bGxTY3JlZW5Gb3JFbGVtZW50
KFdlYkNvcmU6OkVsZW1lbnQqKSBmaW5hbDsKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oQ09DT0Ep
Ci0gICAgdm9pZCBlbGVtZW50RGlkRm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9kZSopIG92ZXJyaWRl
OwotICAgIHZvaWQgZWxlbWVudERpZEJsdXIoY29uc3QgV2ViQ29yZTo6Tm9kZSopIG92ZXJyaWRl
OworICAgIHZvaWQgZWxlbWVudERpZEZvY3VzKGNvbnN0IFdlYkNvcmU6Ok5vZGUqKSBmaW5hbDsK
KyAgICB2b2lkIGVsZW1lbnREaWRCbHVyKGNvbnN0IFdlYkNvcmU6Ok5vZGUqKSBmaW5hbDsKIAot
ICAgIHZvaWQgbWFrZUZpcnN0UmVzcG9uZGVyKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBtYWtlRmly
c3RSZXNwb25kZXIoKSBmaW5hbDsKICNlbmRpZgogCi0gICAgdm9pZCBlbmFibGVTdWRkZW5UZXJt
aW5hdGlvbigpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkg
b3ZlcnJpZGU7CisgICAgdm9pZCBlbmFibGVTdWRkZW5UZXJtaW5hdGlvbigpIGZpbmFsOworICAg
IHZvaWQgZGlzYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkgZmluYWw7CiAKICNpZiBQTEFURk9STShJ
T1MpCi0gICAgV2ViQ29yZTo6RmxvYXRTaXplIHNjcmVlblNpemUoKSBjb25zdCBvdmVycmlkZTsK
LSAgICBXZWJDb3JlOjpGbG9hdFNpemUgYXZhaWxhYmxlU2NyZWVuU2l6ZSgpIGNvbnN0IG92ZXJy
aWRlOworICAgIFdlYkNvcmU6OkZsb2F0U2l6ZSBzY3JlZW5TaXplKCkgY29uc3QgZmluYWw7Cisg
ICAgV2ViQ29yZTo6RmxvYXRTaXplIGF2YWlsYWJsZVNjcmVlblNpemUoKSBjb25zdCBmaW5hbDsK
ICNlbmRpZgotICAgIHZvaWQgZGlzcGF0Y2hWaWV3cG9ydFByb3BlcnRpZXNEaWRDaGFuZ2UoY29u
c3QgV2ViQ29yZTo6Vmlld3BvcnRBcmd1bWVudHMmKSBjb25zdCBvdmVycmlkZTsKIAotICAgIHZv
aWQgbm90aWZ5U2Nyb2xsZXJUaHVtYklzVmlzaWJsZUluUmVjdChjb25zdCBXZWJDb3JlOjpJbnRS
ZWN0Jikgb3ZlcnJpZGU7Ci0gICAgdm9pZCByZWNvbW1lbmRlZFNjcm9sbGJhclN0eWxlRGlkQ2hh
bmdlKFdlYkNvcmU6OlNjcm9sbGJhclN0eWxlIG5ld1N0eWxlKSBvdmVycmlkZTsKKyAgICB2b2lk
IGRpc3BhdGNoVmlld3BvcnRQcm9wZXJ0aWVzRGlkQ2hhbmdlKGNvbnN0IFdlYkNvcmU6OlZpZXdw
b3J0QXJndW1lbnRzJikgY29uc3QgZmluYWw7CiAKLSAgICBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6
OlNjcm9sbGJhck92ZXJsYXlTdHlsZT4gcHJlZmVycmVkU2Nyb2xsYmFyT3ZlcmxheVN0eWxlKCkg
b3ZlcnJpZGU7CisgICAgdm9pZCBub3RpZnlTY3JvbGxlclRodW1iSXNWaXNpYmxlSW5SZWN0KGNv
bnN0IFdlYkNvcmU6OkludFJlY3QmKSBmaW5hbDsKKyAgICB2b2lkIHJlY29tbWVuZGVkU2Nyb2xs
YmFyU3R5bGVEaWRDaGFuZ2UoV2ViQ29yZTo6U2Nyb2xsYmFyU3R5bGUgbmV3U3R5bGUpIGZpbmFs
OwogCi0gICAgV2ViQ29yZTo6Q29sb3IgdW5kZXJsYXlDb2xvcigpIGNvbnN0IG92ZXJyaWRlOwor
ICAgIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6U2Nyb2xsYmFyT3ZlcmxheVN0eWxlPiBwcmVmZXJy
ZWRTY3JvbGxiYXJPdmVybGF5U3R5bGUoKSBmaW5hbDsKIAotICAgIHZvaWQgcGFnZUV4dGVuZGVk
QmFja2dyb3VuZENvbG9yRGlkQ2hhbmdlKFdlYkNvcmU6OkNvbG9yKSBjb25zdCBvdmVycmlkZTsK
KyAgICBXZWJDb3JlOjpDb2xvciB1bmRlcmxheUNvbG9yKCkgY29uc3QgZmluYWw7CisKKyAgICB2
b2lkIHBhZ2VFeHRlbmRlZEJhY2tncm91bmRDb2xvckRpZENoYW5nZShXZWJDb3JlOjpDb2xvcikg
Y29uc3QgZmluYWw7CiAgICAgCi0gICAgdm9pZCB3aGVlbEV2ZW50SGFuZGxlcnNDaGFuZ2VkKGJv
b2wpIG92ZXJyaWRlOworICAgIHZvaWQgd2hlZWxFdmVudEhhbmRsZXJzQ2hhbmdlZChib29sKSBm
aW5hbDsKIAotICAgIFN0cmluZyBwbHVnSW5TdGFydExhYmVsVGl0bGUoY29uc3QgU3RyaW5nJiBt
aW1lVHlwZSkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgU3RyaW5nIHBsdWdJblN0YXJ0TGFiZWxTdWJ0
aXRsZShjb25zdCBTdHJpbmcmIG1pbWVUeXBlKSBjb25zdCBvdmVycmlkZTsKLSAgICBTdHJpbmcg
cGx1Z0luRXh0cmFTdHlsZVNoZWV0KCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgU3RyaW5nIHBsdWdJ
bkV4dHJhU2NyaXB0KCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgU3RyaW5nIHBsdWdJblN0YXJ0TGFi
ZWxUaXRsZShjb25zdCBTdHJpbmcmIG1pbWVUeXBlKSBjb25zdCBmaW5hbDsKKyAgICBTdHJpbmcg
cGx1Z0luU3RhcnRMYWJlbFN1YnRpdGxlKGNvbnN0IFN0cmluZyYgbWltZVR5cGUpIGNvbnN0IGZp
bmFsOworICAgIFN0cmluZyBwbHVnSW5FeHRyYVN0eWxlU2hlZXQoKSBjb25zdCBmaW5hbDsKKyAg
ICBTdHJpbmcgcGx1Z0luRXh0cmFTY3JpcHQoKSBjb25zdCBmaW5hbDsKIAotICAgIHZvaWQgZGlk
QWRkSGVhZGVyTGF5ZXIoV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOwotICAgIHZv
aWQgZGlkQWRkRm9vdGVyTGF5ZXIoV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOwor
ICAgIHZvaWQgZGlkQWRkSGVhZGVyTGF5ZXIoV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIGZpbmFs
OworICAgIHZvaWQgZGlkQWRkRm9vdGVyTGF5ZXIoV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIGZp
bmFsOwogCi0gICAgYm9vbCBzaG91bGRVc2VUaWxlZEJhY2tpbmdGb3JGcmFtZVZpZXcoY29uc3Qg
V2ViQ29yZTo6RnJhbWVWaWV3KikgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRVc2VU
aWxlZEJhY2tpbmdGb3JGcmFtZVZpZXcoY29uc3QgV2ViQ29yZTo6RnJhbWVWaWV3KikgY29uc3Qg
ZmluYWw7CiAKLSAgICB2b2lkIGlzUGxheWluZ01lZGlhRGlkQ2hhbmdlKFdlYkNvcmU6Ok1lZGlh
UHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncywgdWludDY0X3QpIG92ZXJyaWRlOworICAgIHZvaWQg
aXNQbGF5aW5nTWVkaWFEaWRDaGFuZ2UoV2ViQ29yZTo6TWVkaWFQcm9kdWNlcjo6TWVkaWFTdGF0
ZUZsYWdzLCB1aW50NjRfdCkgZmluYWw7CiAKICNpZiBFTkFCTEUoTUVESUFfU0VTU0lPTikKLSAg
ICB2b2lkIGhhc01lZGlhU2Vzc2lvbldpdGhBY3RpdmVNZWRpYUVsZW1lbnRzRGlkQ2hhbmdlKGJv
b2wpIG92ZXJyaWRlOwotICAgIHZvaWQgbWVkaWFTZXNzaW9uTWV0YWRhdGFEaWRDaGFuZ2UoY29u
c3QgV2ViQ29yZTo6TWVkaWFTZXNzaW9uTWV0YWRhdGEmKSBvdmVycmlkZTsKLSAgICB2b2lkIGZv
Y3VzZWRDb250ZW50TWVkaWFFbGVtZW50RGlkQ2hhbmdlKHVpbnQ2NF90KSBvdmVycmlkZTsKKyAg
ICB2b2lkIGhhc01lZGlhU2Vzc2lvbldpdGhBY3RpdmVNZWRpYUVsZW1lbnRzRGlkQ2hhbmdlKGJv
b2wpIGZpbmFsOworICAgIHZvaWQgbWVkaWFTZXNzaW9uTWV0YWRhdGFEaWRDaGFuZ2UoY29uc3Qg
V2ViQ29yZTo6TWVkaWFTZXNzaW9uTWV0YWRhdGEmKSBmaW5hbDsKKyAgICB2b2lkIGZvY3VzZWRD
b250ZW50TWVkaWFFbGVtZW50RGlkQ2hhbmdlKHVpbnQ2NF90KSBmaW5hbDsKICNlbmRpZgogCiAj
aWYgRU5BQkxFKFNVQlRMRV9DUllQVE8pCi0gICAgYm9vbCB3cmFwQ3J5cHRvS2V5KGNvbnN0IFZl
Y3Rvcjx1aW50OF90PiYsIFZlY3Rvcjx1aW50OF90PiYpIGNvbnN0IG92ZXJyaWRlOwotICAgIGJv
b2wgdW53cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90PiYsIFZlY3Rvcjx1aW50OF90
PiYpIGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wgd3JhcENyeXB0b0tleShjb25zdCBWZWN0b3I8
dWludDhfdD4mLCBWZWN0b3I8dWludDhfdD4mKSBjb25zdCBmaW5hbDsKKyAgICBib29sIHVud3Jh
cENyeXB0b0tleShjb25zdCBWZWN0b3I8dWludDhfdD4mLCBWZWN0b3I8dWludDhfdD4mKSBjb25z
dCBmaW5hbDsKICNlbmRpZgogCiAjaWYgRU5BQkxFKFRFTEVQSE9ORV9OVU1CRVJfREVURUNUSU9O
KSAmJiBQTEFURk9STShNQUMpCi0gICAgdm9pZCBoYW5kbGVUZWxlcGhvbmVOdW1iZXJDbGljayhj
b25zdCBTdHJpbmcmIG51bWJlciwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKSBvdmVycmlkZTsK
KyAgICB2b2lkIGhhbmRsZVRlbGVwaG9uZU51bWJlckNsaWNrKGNvbnN0IFN0cmluZyYgbnVtYmVy
LCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIGZpbmFsOwogI2VuZGlmCisKICNpZiBFTkFCTEUo
U0VSVklDRV9DT05UUk9MUykKLSAgICB2b2lkIGhhbmRsZVNlbGVjdGlvblNlcnZpY2VDbGljayhX
ZWJDb3JlOjpGcmFtZVNlbGVjdGlvbiYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiB0ZWxlcGhvbmVO
dW1iZXJzLCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIG92ZXJyaWRlOwotICAgIGJvb2wgaGFz
UmVsZXZhbnRTZWxlY3Rpb25TZXJ2aWNlcyhib29sIGlzVGV4dE9ubHkpIGNvbnN0IG92ZXJyaWRl
OworICAgIHZvaWQgaGFuZGxlU2VsZWN0aW9uU2VydmljZUNsaWNrKFdlYkNvcmU6OkZyYW1lU2Vs
ZWN0aW9uJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHRlbGVwaG9uZU51bWJlcnMsIGNvbnN0IFdl
YkNvcmU6OkludFBvaW50JikgZmluYWw7CisgICAgYm9vbCBoYXNSZWxldmFudFNlbGVjdGlvblNl
cnZpY2VzKGJvb2wgaXNUZXh0T25seSkgY29uc3QgZmluYWw7CiAjZW5kaWYKIAotICAgIGJvb2wg
c2hvdWxkRGlzcGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAg
Ym9vbCBzaG91bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHMoKSBjb25zdCBmaW5hbDsKIAot
ICAgIHZvaWQgaGFuZGxlQXV0b0ZpbGxCdXR0b25DbGljayhXZWJDb3JlOjpIVE1MSW5wdXRFbGVt
ZW50Jikgb3ZlcnJpZGU7CisgICAgdm9pZCBoYW5kbGVBdXRvRmlsbEJ1dHRvbkNsaWNrKFdlYkNv
cmU6OkhUTUxJbnB1dEVsZW1lbnQmKSBmaW5hbDsKIAogI2lmIEVOQUJMRShXSVJFTEVTU19QTEFZ
QkFDS19UQVJHRVQpICYmICFQTEFURk9STShJT1MpCi0gICAgdm9pZCBhZGRQbGF5YmFja1Rhcmdl
dFBpY2tlckNsaWVudCh1aW50NjRfdCAvKmNvbnRleHRJZCovKSBvdmVycmlkZTsKLSAgICB2b2lk
IHJlbW92ZVBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2NF90IC8qY29udGV4dElkKi8p
IG92ZXJyaWRlOwotICAgIHZvaWQgc2hvd1BsYXliYWNrVGFyZ2V0UGlja2VyKHVpbnQ2NF90IGNv
bnRleHRJZCwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmLCBib29sKSBvdmVycmlkZTsKLSAgICB2
b2lkIHBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50U3RhdGVEaWRDaGFuZ2UodWludDY0X3QsIFdl
YkNvcmU6Ok1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncykgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVuYWJsZWQoYm9vbCkgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlclN0YXRlKGNvbnN0IFN0
cmluZyYsIFdlYkNvcmU6Ok1lZGlhUGxheWJhY2tUYXJnZXRDb250ZXh0OjpTdGF0ZSkgb3ZlcnJp
ZGU7CisgICAgdm9pZCBhZGRQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudCh1aW50NjRfdCAvKmNv
bnRleHRJZCovKSBmaW5hbDsKKyAgICB2b2lkIHJlbW92ZVBsYXliYWNrVGFyZ2V0UGlja2VyQ2xp
ZW50KHVpbnQ2NF90IC8qY29udGV4dElkKi8pIGZpbmFsOworICAgIHZvaWQgc2hvd1BsYXliYWNr
VGFyZ2V0UGlja2VyKHVpbnQ2NF90IGNvbnRleHRJZCwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQm
LCBib29sKSBmaW5hbDsKKyAgICB2b2lkIHBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50U3RhdGVE
aWRDaGFuZ2UodWludDY0X3QsIFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFn
cykgZmluYWw7CisgICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVuYWJs
ZWQoYm9vbCkgZmluYWw7CisgICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tl
clN0YXRlKGNvbnN0IFN0cmluZyYsIFdlYkNvcmU6Ok1lZGlhUGxheWJhY2tUYXJnZXRDb250ZXh0
OjpTdGF0ZSkgZmluYWw7CiAjZW5kaWYKIAotICAgIHZvaWQgaW1hZ2VPck1lZGlhRG9jdW1lbnRT
aXplQ2hhbmdlZChjb25zdCBXZWJDb3JlOjpJbnRTaXplJikgb3ZlcnJpZGU7Ci0jaWYgRU5BQkxF
KFZJREVPKQotI2lmIFVTRShHU1RSRUFNRVIpCi0gICAgdm9pZCByZXF1ZXN0SW5zdGFsbE1pc3Np
bmdNZWRpYVBsdWdpbnMoY29uc3QgU3RyaW5nJiAvKmRldGFpbHMqLywgY29uc3QgU3RyaW5nJiAv
KmRlc2NyaXB0aW9uKi8sIFdlYkNvcmU6Ok1lZGlhUGxheWVyUmVxdWVzdEluc3RhbGxNaXNzaW5n
UGx1Z2luc0NhbGxiYWNrJikgb3ZlcnJpZGU7Ci0jZW5kaWYKKyAgICB2b2lkIGltYWdlT3JNZWRp
YURvY3VtZW50U2l6ZUNoYW5nZWQoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYpIGZpbmFsOworCisj
aWYgRU5BQkxFKFZJREVPKSAmJiBVU0UoR1NUUkVBTUVSKQorICAgIHZvaWQgcmVxdWVzdEluc3Rh
bGxNaXNzaW5nTWVkaWFQbHVnaW5zKGNvbnN0IFN0cmluZyYgLypkZXRhaWxzKi8sIGNvbnN0IFN0
cmluZyYgLypkZXNjcmlwdGlvbiovLCBXZWJDb3JlOjpNZWRpYVBsYXllclJlcXVlc3RJbnN0YWxs
TWlzc2luZ1BsdWdpbnNDYWxsYmFjayYpIGZpbmFsOwogI2VuZGlmCiAKLSAgICB2b2lkIGRpZElu
dmFsaWRhdGVEb2N1bWVudE1hcmtlclJlY3RzKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRJbnZh
bGlkYXRlRG9jdW1lbnRNYXJrZXJSZWN0cygpIGZpbmFsOwogCiAgICAgU3RyaW5nIG1fY2FjaGVk
VG9vbFRpcDsKICAgICBtdXRhYmxlIFJlZlB0cjxXZWJGcmFtZT4gbV9jYWNoZWRGcmFtZVNldExh
cmdlc3RGcmFtZTsKLSAgICBtdXRhYmxlIGJvb2wgbV9jYWNoZWRNYWluRnJhbWVIYXNIb3Jpem9u
dGFsU2Nyb2xsYmFyOwotICAgIG11dGFibGUgYm9vbCBtX2NhY2hlZE1haW5GcmFtZUhhc1ZlcnRp
Y2FsU2Nyb2xsYmFyOworICAgIG11dGFibGUgYm9vbCBtX2NhY2hlZE1haW5GcmFtZUhhc0hvcml6
b250YWxTY3JvbGxiYXIgeyBmYWxzZSB9OworICAgIG11dGFibGUgYm9vbCBtX2NhY2hlZE1haW5G
cmFtZUhhc1ZlcnRpY2FsU2Nyb2xsYmFyIHsgZmFsc2UgfTsKIAotICAgIFdlYlBhZ2UqIG1fcGFn
ZTsKKyAgICBXZWJQYWdlJiBtX3BhZ2U7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRp
dG9yQ2xpZW50LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
V2ViRWRpdG9yQ2xpZW50LmNwcAppbmRleCA1NGIyN2I0NDA0ODUyNjllNWU4N2Y4MmQwZmI1MDJh
MWYwMjJhYzMzLi44YjgwNzU1MmM0MTE0NTI2MjQ4ODAzODNmOWQzMmFiYWEwNzZiZWZiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRv
ckNsaWVudC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9XZWJFZGl0b3JDbGllbnQuY3BwCkBAIC0yMzgsMjEgKzIzOCwyMSBAQCB2b2lkIFdlYkVkaXRv
ckNsaWVudDo6Z2V0Q2xpZW50UGFzdGVib2FyZERhdGFGb3JSYW5nZShSYW5nZSogcmFuZ2UsIFZl
Y3RvcjxTdHJpbgogICAgIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVFZGl0b3JDbGllbnQoKS5nZXRQ
YXN0ZWJvYXJkRGF0YUZvclJhbmdlKCptX3BhZ2UsIHJhbmdlLCBwYXN0ZWJvYXJkVHlwZXMsIHBh
c3RlYm9hcmREYXRhKTsKIH0KIAotdm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb1N0
ZXAoUGFzc1JlZlB0cjxVbmRvU3RlcD4gc3RlcCkKK3ZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdp
c3RlclVuZG9TdGVwKFVuZG9TdGVwJiBzdGVwKQogewogICAgIC8vIEZJWE1FOiBBZGQgYXNzZXJ0
aW9uIHRoYXQgdGhlIGNvbW1hbmQgYmVpbmcgcmVhcHBsaWVkIGlzIHRoZSBzYW1lIGNvbW1hbmQg
dGhhdCBpcwogICAgIC8vIGJlaW5nIHBhc3NlZCB0byB1cy4KICAgICBpZiAobV9wYWdlLT5pc0lu
UmVkbygpKQogICAgICAgICByZXR1cm47CiAKLSAgICBSZWZQdHI8V2ViVW5kb1N0ZXA+IHdlYlN0
ZXAgPSBXZWJVbmRvU3RlcDo6Y3JlYXRlKHN0ZXApOwotICAgIG1fcGFnZS0+YWRkV2ViVW5kb1N0
ZXAod2ViU3RlcC0+c3RlcElEKCksIHdlYlN0ZXAuZ2V0KCkpOwotICAgIHVpbnQzMl90IGVkaXRB
Y3Rpb24gPSBzdGF0aWNfY2FzdDx1aW50MzJfdD4od2ViU3RlcC0+c3RlcCgpLT5lZGl0aW5nQWN0
aW9uKCkpOworICAgIGF1dG8gd2ViU3RlcCA9IFdlYlVuZG9TdGVwOjpjcmVhdGUoJnN0ZXApOwor
ICAgIGF1dG8gZWRpdEFjdGlvbiA9IHN0YXRpY19jYXN0PHVpbnQzMl90Pih3ZWJTdGVwLT5zdGVw
KCktPmVkaXRpbmdBY3Rpb24oKSk7CiAKKyAgICBtX3BhZ2UtPmFkZFdlYlVuZG9TdGVwKHdlYlN0
ZXAtPnN0ZXBJRCgpLCB3ZWJTdGVwLnB0cigpKTsKICAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6UmVnaXN0ZXJFZGl0Q29tbWFuZEZvclVuZG8od2ViU3RlcC0+c3RlcElE
KCksIGVkaXRBY3Rpb24pKTsKIH0KIAotdm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyUmVk
b1N0ZXAoUGFzc1JlZlB0cjxVbmRvU3RlcD4pCit2b2lkIFdlYkVkaXRvckNsaWVudDo6cmVnaXN0
ZXJSZWRvU3RlcChVbmRvU3RlcCYpCiB7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmggYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oCmluZGV4IDhk
ODE3NGRjOTEzYWY1ZTJjYjMwMTgwNzQyMDVhZDk1ODE5NjRhNjAuLmNlMmJjYzQ3MTg4NGFlZTFk
OWRhNWMyZGE3YzVjNzhiNmVmODU0ZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuaApAQCAtNzEsOCAr
NzEsOCBAQCBwcml2YXRlOgogICAgIHZvaWQgZGlkV3JpdGVTZWxlY3Rpb25Ub1Bhc3RlYm9hcmQo
KSBmaW5hbDsKICAgICB2b2lkIGdldENsaWVudFBhc3RlYm9hcmREYXRhRm9yUmFuZ2UoV2ViQ29y
ZTo6UmFuZ2UqLCBWZWN0b3I8U3RyaW5nPiYgcGFzdGVib2FyZFR5cGVzLCBWZWN0b3I8UmVmUHRy
PFdlYkNvcmU6OlNoYXJlZEJ1ZmZlcj4+JiBwYXN0ZWJvYXJkRGF0YSkgZmluYWw7CiAgICAgCi0g
ICAgdm9pZCByZWdpc3RlclVuZG9TdGVwKFBhc3NSZWZQdHI8V2ViQ29yZTo6VW5kb1N0ZXA+KSBm
aW5hbDsKLSAgICB2b2lkIHJlZ2lzdGVyUmVkb1N0ZXAoUGFzc1JlZlB0cjxXZWJDb3JlOjpVbmRv
U3RlcD4pIGZpbmFsOworICAgIHZvaWQgcmVnaXN0ZXJVbmRvU3RlcChXZWJDb3JlOjpVbmRvU3Rl
cCYpIGZpbmFsOworICAgIHZvaWQgcmVnaXN0ZXJSZWRvU3RlcChXZWJDb3JlOjpVbmRvU3RlcCYp
IGZpbmFsOwogICAgIHZvaWQgY2xlYXJVbmRvUmVkb09wZXJhdGlvbnMoKSBmaW5hbDsKIAogICAg
IGJvb2wgY2FuQ29weUN1dChXZWJDb3JlOjpGcmFtZSosIGJvb2wgZGVmYXVsdFZhbHVlKSBjb25z
dCBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKaW5kZXggZjE3NzVjNjg2
ZjhmNDA2NTA4Njg1MzUyNWUwMGYxZGQyYjEzMWJkZi4uOGE3NTk0ZTAxM2IyMzE3YTNhMzI3YmFi
ZDQ0OTJmOTM0ZTIwMWRiZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKKysrIGIvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKQEAg
LTcwMSw3ICs3MDEsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lk
ZVBvbGljeUZvclJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9ucwogICAgICAgICBtX2ZyYW1l
LT5kaWRSZWNlaXZlUG9saWN5RGVjaXNpb24obGlzdGVuZXJJRCwgc3RhdGljX2Nhc3Q8UG9saWN5
QWN0aW9uPihwb2xpY3lBY3Rpb24pLCAwLCBkb3dubG9hZElEKTsKIH0KIAotdm9pZCBXZWJGcmFt
ZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29u
c3QgTmF2aWdhdGlvbkFjdGlvbiYgbmF2aWdhdGlvbkFjdGlvbiwgY29uc3QgUmVzb3VyY2VSZXF1
ZXN0JiByZXF1ZXN0LCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4gZm9ybVN0YXRlLCBjb25zdCBTdHJp
bmcmIGZyYW1lTmFtZSwgRnJhbWVQb2xpY3lGdW5jdGlvbiBmdW5jdGlvbikKK3ZvaWQgV2ViRnJh
bWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNv
bnN0IE5hdmlnYXRpb25BY3Rpb24mIG5hdmlnYXRpb25BY3Rpb24sIGNvbnN0IFJlc291cmNlUmVx
dWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIGNvbnN0IFN0cmluZyYgZnJhbWVO
YW1lLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQogewogICAgIFdlYlBhZ2UqIHdlYlBh
Z2UgPSBtX2ZyYW1lLT5wYWdlKCk7CiAgICAgaWYgKCF3ZWJQYWdlKSB7CkBAIC03MzcsNyArNzM3
LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JO
ZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGkKICAgICB3ZWJQYWdlLT5zZW5kKE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6OkRlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihtX2ZyYW1lLT5m
cmFtZUlEKCksIFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbUZyYW1lKGNvcmVGcmFtZSksIG5hdmln
YXRpb25BY3Rpb25EYXRhLCByZXF1ZXN0LCBmcmFtZU5hbWUsIGxpc3RlbmVySUQsIFVzZXJEYXRh
KFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnRyYW5zZm9ybU9iamVjdHNUb0hhbmRsZXModXNlckRh
dGEuZ2V0KCkpLmdldCgpKSkpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNw
YXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlv
biYgbmF2aWdhdGlvbkFjdGlvbiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBQYXNz
UmVmUHRyPEZvcm1TdGF0ZT4gcHJwRm9ybVN0YXRlLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0
aW9uKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JO
YXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIG5hdmlnYXRpb25BY3Rpb24s
IGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIEZy
YW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24pCiB7CiAgICAgV2ViUGFnZSogd2ViUGFnZSA9IG1f
ZnJhbWUtPnBhZ2UoKTsKICAgICBpZiAoIXdlYlBhZ2UpIHsKQEAgLTc1Miw3ICs3NTIsNiBAQCB2
b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRp
b25BY3Rpb24oY29uc3QgTmF2aWdhdAogICAgIH0KIAogICAgIFJlZlB0cjxBUEk6Ok9iamVjdD4g
dXNlckRhdGE7Ci0gICAgUmVmUHRyPEZvcm1TdGF0ZT4gZm9ybVN0YXRlID0gcHJwRm9ybVN0YXRl
OwogCiAgICAgUmVmUHRyPEluamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbj4gYWN0aW9uID0g
SW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uOjpjcmVhdGUobV9mcmFtZSwgbmF2aWdhdGlv
bkFjdGlvbiwgZm9ybVN0YXRlKTsKIApAQCAtNzgyLDcgKzc4MSw3IEBAIHZvaWQgV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25z
dCBOYXZpZ2F0CiAgICAgY2FzZSBOYXZpZ2F0aW9uVHlwZTo6Rm9ybVN1Ym1pdHRlZDoKICAgICBj
YXNlIE5hdmlnYXRpb25UeXBlOjpGb3JtUmVzdWJtaXR0ZWQ6CiAgICAgICAgIGlmIChmb3JtU3Rh
dGUpCi0gICAgICAgICAgICBvcmlnaW5hdGluZ0ZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJh
bWUoKmZvcm1TdGF0ZS0+c291cmNlRG9jdW1lbnQoKS0+ZnJhbWUoKSk7CisgICAgICAgICAgICBv
cmlnaW5hdGluZ0ZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZvcm1TdGF0ZS0+c291
cmNlRG9jdW1lbnQoKS5mcmFtZSgpKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBOYXZpZ2F0
aW9uVHlwZTo6QmFja0ZvcndhcmQ6CiAgICAgY2FzZSBOYXZpZ2F0aW9uVHlwZTo6UmVsb2FkOgpA
QCAtODQzLDQwICs4NDIsMzYgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hV
bmFibGVUb0ltcGxlbWVudFBvbGljeShjb25zdCBSZXNvdXJjZUVycm9yJgogICAgIHdlYlBhZ2Ut
PnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6VW5hYmxlVG9JbXBsZW1lbnRQb2xpY3kobV9m
cmFtZS0+ZnJhbWVJRCgpLCBlcnJvciwgVXNlckRhdGEoV2ViUHJvY2Vzczo6c2luZ2xldG9uKCku
dHJhbnNmb3JtT2JqZWN0c1RvSGFuZGxlcyh1c2VyRGF0YS5nZXQoKSkuZ2V0KCkpKSk7CiB9CiAK
LXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChQ
YXNzUmVmUHRyPEZvcm1TdGF0ZT4gcHJwRm9ybVN0YXRlKQordm9pZCBXZWJGcmFtZUxvYWRlckNs
aWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJlZjxGb3JtU3RhdGU+JiYgZm9ybVN0
YXRlKQogewotICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7CisgICAgYXV0
byogd2ViUGFnZSA9IG1fZnJhbWUtPnBhZ2UoKTsKICAgICBpZiAoIXdlYlBhZ2UpCiAgICAgICAg
IHJldHVybjsKIAotICAgIFJlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSA9IHBycEZvcm1TdGF0
ZTsKLSAgICBIVE1MRm9ybUVsZW1lbnQqIGZvcm0gPSBmb3JtU3RhdGUtPmZvcm0oKTsKKyAgICBh
dXRvJiBmb3JtID0gZm9ybVN0YXRlLT5mb3JtKCk7CiAKLSAgICBXZWJGcmFtZSogc291cmNlRnJh
bWUgPSBXZWJGcmFtZTo6ZnJvbUNvcmVGcmFtZSgqZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgp
LT5mcmFtZSgpKTsKKyAgICBBU1NFUlQoZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLmZyYW1l
KCkpOworICAgIGF1dG8qIHNvdXJjZUZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZv
cm1TdGF0ZS0+c291cmNlRG9jdW1lbnQoKS5mcmFtZSgpKTsKICAgICBBU1NFUlQoc291cmNlRnJh
bWUpOwogCi0gICAgd2ViUGFnZS0+aW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCkud2lsbFNlbmRT
dWJtaXRFdmVudCh3ZWJQYWdlLCBmb3JtLCBtX2ZyYW1lLCBzb3VyY2VGcmFtZSwgZm9ybVN0YXRl
LT50ZXh0RmllbGRWYWx1ZXMoKSk7CisgICAgd2ViUGFnZS0+aW5qZWN0ZWRCdW5kbGVGb3JtQ2xp
ZW50KCkud2lsbFNlbmRTdWJtaXRFdmVudCh3ZWJQYWdlLCAmZm9ybSwgbV9mcmFtZSwgc291cmNl
RnJhbWUsIGZvcm1TdGF0ZS0+dGV4dEZpZWxkVmFsdWVzKCkpOwogfQogCi12b2lkIFdlYkZyYW1l
TG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKFBhc3NSZWZQdHI8Rm9ybVN0YXRl
PiBwcnBGb3JtU3RhdGUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24pCit2b2lkIFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKEZvcm1TdGF0ZSYgZm9ybVN0
YXRlLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQogewogICAgIFdlYlBhZ2UqIHdlYlBh
Z2UgPSBtX2ZyYW1lLT5wYWdlKCk7CiAgICAgaWYgKCF3ZWJQYWdlKQogICAgICAgICByZXR1cm47
CiAKLSAgICAvLyBGSVhNRTogUGFzcyBtb3JlIG9mIHRoZSBmb3JtIHN0YXRlLgotICAgIFJlZlB0
cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSA9IHBycEZvcm1TdGF0ZTsKLSAgICAKLSAgICBIVE1MRm9y
bUVsZW1lbnQqIGZvcm0gPSBmb3JtU3RhdGUtPmZvcm0oKTsKKyAgICBhdXRvJiBmb3JtID0gZm9y
bVN0YXRlLmZvcm0oKTsKIAotICAgIFdlYkZyYW1lKiBzb3VyY2VGcmFtZSA9IFdlYkZyYW1lOjpm
cm9tQ29yZUZyYW1lKCpmb3JtU3RhdGUtPnNvdXJjZURvY3VtZW50KCktPmZyYW1lKCkpOworICAg
IGF1dG8qIHNvdXJjZUZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZvcm1TdGF0ZS5z
b3VyY2VEb2N1bWVudCgpLmZyYW1lKCkpOwogICAgIEFTU0VSVChzb3VyY2VGcmFtZSk7CiAKLSAg
ICBjb25zdCBWZWN0b3I8c3RkOjpwYWlyPFN0cmluZywgU3RyaW5nPj4mIHZhbHVlcyA9IGZvcm1T
dGF0ZS0+dGV4dEZpZWxkVmFsdWVzKCk7CisgICAgYXV0byYgdmFsdWVzID0gZm9ybVN0YXRlLnRl
eHRGaWVsZFZhbHVlcygpOwogCiAgICAgUmVmUHRyPEFQSTo6T2JqZWN0PiB1c2VyRGF0YTsKLSAg
ICB3ZWJQYWdlLT5pbmplY3RlZEJ1bmRsZUZvcm1DbGllbnQoKS53aWxsU3VibWl0Rm9ybSh3ZWJQ
YWdlLCBmb3JtLCBtX2ZyYW1lLCBzb3VyY2VGcmFtZSwgdmFsdWVzLCB1c2VyRGF0YSk7Ci0KKyAg
ICB3ZWJQYWdlLT5pbmplY3RlZEJ1bmRsZUZvcm1DbGllbnQoKS53aWxsU3VibWl0Rm9ybSh3ZWJQ
YWdlLCAmZm9ybSwgbV9mcmFtZSwgc291cmNlRnJhbWUsIHZhbHVlcywgdXNlckRhdGEpOwogCiAg
ICAgdWludDY0X3QgbGlzdGVuZXJJRCA9IG1fZnJhbWUtPnNldFVwUG9saWN5TGlzdGVuZXIoV1RG
TW92ZShmdW5jdGlvbikpOwogCkBAIC0xNDAwLDE0ICsxMzk1LDEzIEBAIHZvaWQgV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZChEb2N1bWVudExv
YWRlciAqZG9jCiAgICAgbV9mcmFtZS0+Y29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2Fk
KGRvY3VtZW50TG9hZGVyLCBzZXNzaW9uSUQsIHJlcXVlc3QsIHJlc3BvbnNlKTsKIH0KIAotUmVm
UHRyPEZyYW1lPiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlRnJhbWUoY29uc3QgVVJMJiB1
cmwsIGNvbnN0IFN0cmluZyYgbmFtZSwgSFRNTEZyYW1lT3duZXJFbGVtZW50KiBvd25lckVsZW1l
bnQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Y29uc3QgU3RyaW5nJiByZWZlcnJlciwgYm9vbCAvKmFsbG93c1Njcm9sbGluZyovLCBpbnQgLypt
YXJnaW5XaWR0aCovLCBpbnQgLyptYXJnaW5IZWlnaHQqLykKK1JlZlB0cjxGcmFtZT4gV2ViRnJh
bWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcm
IG5hbWUsIEhUTUxGcmFtZU93bmVyRWxlbWVudCYgb3duZXJFbGVtZW50LAorICAgIGNvbnN0IFN0
cmluZyYgcmVmZXJyZXIsIGJvb2wgLyphbGxvd3NTY3JvbGxpbmcqLywgaW50IC8qbWFyZ2luV2lk
dGgqLywgaW50IC8qbWFyZ2luSGVpZ2h0Ki8pCiB7Ci0gICAgV2ViUGFnZSogd2ViUGFnZSA9IG1f
ZnJhbWUtPnBhZ2UoKTsKKyAgICBhdXRvKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpOwogCi0g
ICAgUmVmUHRyPFdlYkZyYW1lPiBzdWJmcmFtZSA9IFdlYkZyYW1lOjpjcmVhdGVTdWJmcmFtZSh3
ZWJQYWdlLCBuYW1lLCBvd25lckVsZW1lbnQpOwotCi0gICAgRnJhbWUqIGNvcmVTdWJmcmFtZSA9
IHN1YmZyYW1lLT5jb3JlRnJhbWUoKTsKKyAgICBhdXRvIHN1YmZyYW1lID0gV2ViRnJhbWU6OmNy
ZWF0ZVN1YmZyYW1lKHdlYlBhZ2UsIG5hbWUsICZvd25lckVsZW1lbnQpOworICAgIGF1dG8qIGNv
cmVTdWJmcmFtZSA9IHN1YmZyYW1lLT5jb3JlRnJhbWUoKTsKICAgICBpZiAoIWNvcmVTdWJmcmFt
ZSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKQEAgLTE0MjcsNyArMTQyMSw3IEBAIFJlZlB0
cjxGcmFtZT4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYgdXJs
LCBjb25zdCBTdHJpbmcmIG5hCiAgICAgcmV0dXJuIGNvcmVTdWJmcmFtZTsKIH0KIAotUmVmUHRy
PFdpZGdldD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXpl
JiwgSFRNTFBsdWdJbkVsZW1lbnQqIHBsdWdpbkVsZW1lbnQsIGNvbnN0IFVSTCYgdXJsLCBjb25z
dCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFt
VmFsdWVzLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlLCBib29sIGxvYWRNYW51YWxseSkKK1JlZlB0
cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6
ZSYsIEhUTUxQbHVnSW5FbGVtZW50JiBwbHVnaW5FbGVtZW50LCBjb25zdCBVUkwmIHVybCwgY29u
c3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJh
bVZhbHVlcywgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgYm9vbCBsb2FkTWFudWFsbHkpCiB7CiAg
ICAgQVNTRVJUKHBhcmFtTmFtZXMuc2l6ZSgpID09IHBhcmFtVmFsdWVzLnNpemUoKSk7CiAgICAg
QVNTRVJUKG1fZnJhbWUtPnBhZ2UoKSk7CkBAIC0xNDQ0LDExICsxNDM4LDExIEBAIFJlZlB0cjxX
aWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYs
IEhUTUxQbHVnSW5FbGVtCiAjZW5kaWYKIAogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJ
KQotICAgIGF1dG8gcGx1Z2luID0gbV9mcmFtZS0+cGFnZSgpLT5jcmVhdGVQbHVnaW4obV9mcmFt
ZSwgcGx1Z2luRWxlbWVudCwgcGFyYW1ldGVycywgcGFyYW1ldGVycy5taW1lVHlwZSk7CisgICAg
YXV0byBwbHVnaW4gPSBtX2ZyYW1lLT5wYWdlKCktPmNyZWF0ZVBsdWdpbihtX2ZyYW1lLCAmcGx1
Z2luRWxlbWVudCwgcGFyYW1ldGVycywgcGFyYW1ldGVycy5taW1lVHlwZSk7CiAgICAgaWYgKCFw
bHVnaW4pCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgcmV0dXJuIFBsdWdpblZpZXc6
OmNyZWF0ZShwbHVnaW5FbGVtZW50LCBXVEZNb3ZlKHBsdWdpbiksIHBhcmFtZXRlcnMpOworICAg
IHJldHVybiBQbHVnaW5WaWV3OjpjcmVhdGUocGx1Z2luRWxlbWVudCwgcGx1Z2luLnJlbGVhc2VO
b25OdWxsKCksIHBhcmFtZXRlcnMpOwogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0ocGx1Z2luRWxl
bWVudCk7CiAgICAgcmV0dXJuIG51bGxwdHI7CkBAIC0xNDU4LDEzICsxNDUyLDE0IEBAIFJlZlB0
cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6
ZSYsIEhUTUxQbHVnSW5FbGVtCiB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpyZWNyZWF0ZVBs
dWdpbihXaWRnZXQqIHdpZGdldCkKIHsKICNpZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkK
LSAgICBBU1NFUlQod2lkZ2V0ICYmIHdpZGdldC0+aXNQbHVnaW5WaWV3QmFzZSgpKTsKKyAgICBB
U1NFUlQod2lkZ2V0KTsKKyAgICBBU1NFUlQod2lkZ2V0LT5pc1BsdWdpblZpZXdCYXNlKCkpOwog
ICAgIEFTU0VSVChtX2ZyYW1lLT5wYWdlKCkpOwogCi0gICAgUGx1Z2luVmlldyogcGx1Z2luVmll
dyA9IHN0YXRpY19jYXN0PFBsdWdpblZpZXcqPih3aWRnZXQpOworICAgIGF1dG8mIHBsdWdpblZp
ZXcgPSBzdGF0aWNfY2FzdDxQbHVnaW5WaWV3Jj4oKndpZGdldCk7CiAgICAgU3RyaW5nIG5ld01J
TUVUeXBlOwotICAgIGF1dG8gcGx1Z2luID0gbV9mcmFtZS0+cGFnZSgpLT5jcmVhdGVQbHVnaW4o
bV9mcmFtZSwgcGx1Z2luVmlldy0+cGx1Z2luRWxlbWVudCgpLCBwbHVnaW5WaWV3LT5pbml0aWFs
UGFyYW1ldGVycygpLCBuZXdNSU1FVHlwZSk7Ci0gICAgcGx1Z2luVmlldy0+cmVjcmVhdGVBbmRJ
bml0aWFsaXplKFdURk1vdmUocGx1Z2luKSk7CisgICAgYXV0byBwbHVnaW4gPSBtX2ZyYW1lLT5w
YWdlKCktPmNyZWF0ZVBsdWdpbihtX2ZyYW1lLCBwbHVnaW5WaWV3LnBsdWdpbkVsZW1lbnQoKSwg
cGx1Z2luVmlldy5pbml0aWFsUGFyYW1ldGVycygpLCBuZXdNSU1FVHlwZSk7CisgICAgcGx1Z2lu
Vmlldy5yZWNyZWF0ZUFuZEluaXRpYWxpemUocGx1Z2luLnJlbGVhc2VOb25OdWxsKCkpOwogI2Vs
c2UKICAgICBVTlVTRURfUEFSQU0od2lkZ2V0KTsKICNlbmRpZgpAQCAtMTQ3Nyw5ICsxNDcyLDEw
IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnJlZGlyZWN0RGF0YVRvUGx1Z2luKFdpZGdl
dCogcGx1Z2luV2lkZ2V0KQogfQogCiAjaWYgRU5BQkxFKFdFQkdMKQorCiBXZWJDb3JlOjpXZWJH
TExvYWRQb2xpY3kgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OndlYkdMUG9saWN5Rm9yVVJMKGNvbnN0
IFN0cmluZyYgdXJsKSBjb25zdAogewotICAgIGlmIChXZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFt
ZS0+cGFnZSgpKQorICAgIGlmIChhdXRvKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpKQogICAg
ICAgICByZXR1cm4gd2ViUGFnZS0+d2ViR0xQb2xpY3lGb3JVUkwobV9mcmFtZSwgdXJsKTsKIAog
ICAgIHJldHVybiBXZWJHTEFsbG93Q3JlYXRpb247CkBAIC0xNDg3LDMxICsxNDgzLDMyIEBAIFdl
YkNvcmU6OldlYkdMTG9hZFBvbGljeSBXZWJGcmFtZUxvYWRlckNsaWVudDo6d2ViR0xQb2xpY3lG
b3JVUkwoY29uc3QgU3RyaW5nJiB1CiAKIFdlYkNvcmU6OldlYkdMTG9hZFBvbGljeSBXZWJGcmFt
ZUxvYWRlckNsaWVudDo6cmVzb2x2ZVdlYkdMUG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYgdXJs
KSBjb25zdAogewotICAgIGlmIChXZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpKQor
ICAgIGlmIChhdXRvKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpKQogICAgICAgICByZXR1cm4g
d2ViUGFnZS0+cmVzb2x2ZVdlYkdMUG9saWN5Rm9yVVJMKG1fZnJhbWUsIHVybCk7CiAKICAgICBy
ZXR1cm4gV2ViR0xBbGxvd0NyZWF0aW9uOwogfQotI2VuZGlmIC8vIEVOQUJMRShXRUJHTCkKIAot
UGFzc1JlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0
V2lkZ2V0KGNvbnN0IEludFNpemUmIHBsdWdpblNpemUsIEhUTUxBcHBsZXRFbGVtZW50KiBhcHBs
ZXRFbGVtZW50LCBjb25zdCBVUkwmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywg
Y29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKQorI2VuZGlmCisKK1JlZlB0cjxXaWRn
ZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IElu
dFNpemUmIHBsdWdpblNpemUsIEhUTUxBcHBsZXRFbGVtZW50JiBhcHBsZXRFbGVtZW50LCBjb25z
dCBVUkwmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0
cmluZz4mIHBhcmFtVmFsdWVzKQogewogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQot
ICAgIGF1dG8gcGx1Z2luID0gY3JlYXRlUGx1Z2luKHBsdWdpblNpemUsIGFwcGxldEVsZW1lbnQs
IFVSTCgpLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcywgYXBwbGV0RWxlbWVudC0+c2VydmljZVR5
cGUoKSwgZmFsc2UpOworICAgIGF1dG8gcGx1Z2luID0gY3JlYXRlUGx1Z2luKHBsdWdpblNpemUs
IGFwcGxldEVsZW1lbnQsIFVSTCgpLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcywgYXBwbGV0RWxl
bWVudC5zZXJ2aWNlVHlwZSgpLCBmYWxzZSk7CiAgICAgaWYgKCFwbHVnaW4pIHsKLSAgICAgICAg
aWYgKFdlYlBhZ2UqIHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCkpIHsKLSAgICAgICAgICAgIFN0
cmluZyBmcmFtZVVSTFN0cmluZyA9IG1fZnJhbWUtPmNvcmVGcmFtZSgpLT5sb2FkZXIoKS5kb2N1
bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwotICAgICAgICAgICAgU3RyaW5n
IHBhZ2VVUkxTdHJpbmcgPSB3ZWJQYWdlLT5jb3JlUGFnZSgpLT5tYWluRnJhbWUoKS5sb2FkZXIo
KS5kb2N1bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwotICAgICAgICAgICAg
d2ViUGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRGYWlsVG9Jbml0aWFsaXpl
UGx1Z2luKGFwcGxldEVsZW1lbnQtPnNlcnZpY2VUeXBlKCksIGZyYW1lVVJMU3RyaW5nLCBwYWdl
VVJMU3RyaW5nKSk7CisgICAgICAgIGlmIChhdXRvKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgp
KSB7CisgICAgICAgICAgICBhdXRvIGZyYW1lVVJMU3RyaW5nID0gbV9mcmFtZS0+Y29yZUZyYW1l
KCktPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCktPnJlc3BvbnNlVVJMKCkuc3RyaW5nKCk7Cisg
ICAgICAgICAgICBhdXRvIHBhZ2VVUkxTdHJpbmcgPSB3ZWJQYWdlLT5jb3JlUGFnZSgpLT5tYWlu
RnJhbWUoKS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygp
OworICAgICAgICAgICAgd2ViUGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRG
YWlsVG9Jbml0aWFsaXplUGx1Z2luKGFwcGxldEVsZW1lbnQuc2VydmljZVR5cGUoKSwgZnJhbWVV
UkxTdHJpbmcsIHBhZ2VVUkxTdHJpbmcpKTsKICAgICAgICAgfQogICAgIH0KLSAgICByZXR1cm4g
V1RGTW92ZShwbHVnaW4pOworICAgIHJldHVybiBwbHVnaW47CiAjZWxzZQogICAgIFVOVVNFRF9Q
QVJBTShwbHVnaW5TaXplKTsKICAgICBVTlVTRURfUEFSQU0oYXBwbGV0RWxlbWVudCk7CiAgICAg
VU5VU0VEX1BBUkFNKHBhcmFtTmFtZXMpOwogICAgIFVOVVNFRF9QQVJBTShwYXJhbVZhbHVlcyk7
Ci0gICAgcmV0dXJuIDA7CisgICAgcmV0dXJuIG51bGxwdHI7CiAjZW5kaWYKIH0KIApAQCAtMTcx
NywxMyArMTcxNCwxMyBAQCBib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRGb3JjZVVu
aXZlcnNhbEFjY2Vzc0Zyb21Mb2NhbFVSTChjb25zdCBXZWJDb3JlOgogICAgIHJldHVybiB3ZWJQ
YWdlLT5pbmplY3RlZEJ1bmRsZUxvYWRlckNsaWVudCgpLnNob3VsZEZvcmNlVW5pdmVyc2FsQWNj
ZXNzRnJvbUxvY2FsVVJMKHdlYlBhZ2UsIHVybC5zdHJpbmcoKSk7CiB9CiAKLVBhc3NSZWZQdHI8
RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdv
cmtpbmdDb250ZXh0KCkKK1JlZjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBXZWJGcmFtZUxvYWRl
ckNsaWVudDo6Y3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKQogewotICAgIGF1dG8gY29udGV4dCA9
IFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQ6OmNyZWF0ZShtX2ZyYW1lKTsKLSAgICByZXR1cm4g
V1RGTW92ZShjb250ZXh0KTsKKyAgICByZXR1cm4gV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dDo6
Y3JlYXRlKG1fZnJhbWUpOwogfQogCiAjaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQorCiB2
b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpjb250ZW50RmlsdGVyRGlkQmxvY2tMb2FkKFdlYkNv
cmU6OkNvbnRlbnRGaWx0ZXJVbmJsb2NrSGFuZGxlciB1bmJsb2NrSGFuZGxlcikKIHsKICAgICBp
ZiAoIXVuYmxvY2tIYW5kbGVyLm5lZWRzVUlQcm9jZXNzKCkpIHsKQEAgLTE3MzQsMTIgKzE3MzEs
MTUgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y29udGVudEZpbHRlckRpZEJsb2NrTG9h
ZChXZWJDb3JlOjpDb250ZW50RmlsdGVyVW5ibG8KICAgICBpZiAoV2ViUGFnZSogd2ViUGFnZSB7
IG1fZnJhbWUtPnBhZ2UoKSB9KQogICAgICAgICB3ZWJQYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OkNvbnRlbnRGaWx0ZXJEaWRCbG9ja0xvYWRGb3JGcmFtZSh1bmJsb2NrSGFuZGxl
ciwgbV9mcmFtZS0+ZnJhbWVJRCgpKSk7CiB9CisKICNlbmRpZgogCiAjaWYgRU5BQkxFKFJFUVVF
U1RfQVVUT0NPTVBMRVRFKQotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlkUmVxdWVzdEF1
dG9jb21wbGV0ZShQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4pCisKK3ZvaWQgV2ViRnJh
bWVMb2FkZXJDbGllbnQ6OmRpZFJlcXVlc3RBdXRvY29tcGxldGUoUmVmPFdlYkNvcmU6OkZvcm1T
dGF0ZT4mJikKIHsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnBy
ZWZldGNoRE5TKGNvbnN0IFN0cmluZyYgaG9zdG5hbWUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmggYi9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xp
ZW50LmgKaW5kZXggZGIyZjk0OTE0MDcyNDA3NzczYmQwODZmN2Y4YjlhY2QwN2VlYTc0Ni4uMGI4
MjliNGEyOTA3Yzg0ZTg5MTYwYzE4N2UzOGRlNGFmOTNhNTE5OSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5o
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVM
b2FkZXJDbGllbnQuaApAQCAtMzYsNyArMzYsNyBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIGNsYXNz
IFBsdWdpblZpZXc7CiBjbGFzcyBXZWJGcmFtZTsKICAgICAKLWNsYXNzIFdlYkZyYW1lTG9hZGVy
Q2xpZW50IDogcHVibGljIFdlYkNvcmU6OkZyYW1lTG9hZGVyQ2xpZW50IHsKK2NsYXNzIFdlYkZy
YW1lTG9hZGVyQ2xpZW50IGZpbmFsIDogcHVibGljIFdlYkNvcmU6OkZyYW1lTG9hZGVyQ2xpZW50
IHsKIHB1YmxpYzoKICAgICBXZWJGcmFtZUxvYWRlckNsaWVudCgpOwogICAgIH5XZWJGcmFtZUxv
YWRlckNsaWVudCgpOwpAQCAtNDksMjE3ICs0OSwyMTYgQEAgcHVibGljOgogICAgIHZvaWQgc2V0
VXNlSWNvbkxvYWRpbmdDbGllbnQoYm9vbCB1c2VJY29uTG9hZGluZ0NsaWVudCkgeyBtX3VzZUlj
b25Mb2FkaW5nQ2xpZW50ID0gdXNlSWNvbkxvYWRpbmdDbGllbnQ7IH0KIAogcHJpdmF0ZToKLSAg
ICB2b2lkIGZyYW1lTG9hZGVyRGVzdHJveWVkKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBmcmFtZUxv
YWRlckRlc3Ryb3llZCgpIGZpbmFsOwogCi0gICAgYm9vbCBoYXNIVE1MVmlldygpIGNvbnN0IG92
ZXJyaWRlOwotICAgIGJvb2wgaGFzV2ViVmlldygpIGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wg
aGFzSFRNTFZpZXcoKSBjb25zdCBmaW5hbDsKKyAgICBib29sIGhhc1dlYlZpZXcoKSBjb25zdCBm
aW5hbDsKICAgICAKLSAgICB2b2lkIG1ha2VSZXByZXNlbnRhdGlvbihXZWJDb3JlOjpEb2N1bWVu
dExvYWRlciopIG92ZXJyaWRlOworICAgIHZvaWQgbWFrZVJlcHJlc2VudGF0aW9uKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyKikgZmluYWw7CiAjaWYgUExBVEZPUk0oSU9TKQotICAgIGJvb2wgZm9y
Y2VMYXlvdXRPblJlc3RvcmVGcm9tUGFnZUNhY2hlKCkgb3ZlcnJpZGU7CisgICAgYm9vbCBmb3Jj
ZUxheW91dE9uUmVzdG9yZUZyb21QYWdlQ2FjaGUoKSBmaW5hbDsKICNlbmRpZgotICAgIHZvaWQg
Zm9yY2VMYXlvdXRGb3JOb25IVE1MKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBmb3JjZUxheW91dEZv
ck5vbkhUTUwoKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHNldENvcGllc09uU2Nyb2xsKCkgb3Zl
cnJpZGU7CisgICAgdm9pZCBzZXRDb3BpZXNPblNjcm9sbCgpIGZpbmFsOwogICAgIAotICAgIHZv
aWQgZGV0YWNoZWRGcm9tUGFyZW50MigpIG92ZXJyaWRlOwotICAgIHZvaWQgZGV0YWNoZWRGcm9t
UGFyZW50MygpIG92ZXJyaWRlOworICAgIHZvaWQgZGV0YWNoZWRGcm9tUGFyZW50MigpIGZpbmFs
OworICAgIHZvaWQgZGV0YWNoZWRGcm9tUGFyZW50MygpIGZpbmFsOwogICAgIAotICAgIHZvaWQg
YXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
LCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYpIG92ZXJyaWRlOworICAgIHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3Qo
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOwogICAgIAotICAgIHZvaWQgZGlzcGF0
Y2hXaWxsU2VuZFJlcXVlc3QoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpIG92ZXJyaWRlOwotICAgIGJvb2wgc2hv
dWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZl
QXV0aGVudGljYXRpb25DaGFsbGVuZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdl
Jikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChXZWJDb3JlOjpE
b2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNw
b25zZSkgZmluYWw7CisgICAgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgZmluYWw7CisgICAg
dm9pZCBkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShXZWJDb3JlOjpE
b2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6
QXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKSBmaW5hbDsKICNpZiBVU0UoUFJPVEVDVElPTl9TUEFD
RV9BVVRIX0NBTExCQUNLKQotICAgIGJvb2wgY2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rp
b25TcGFjZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgY29uc3QgV2ViQ29yZTo6UHJvdGVjdGlvblNwYWNlJikgb3ZlcnJpZGU7CisgICAgYm9vbCBj
YW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpQcm90ZWN0aW9u
U3BhY2UmKSBmaW5hbDsKICNlbmRpZgogI2lmIFBMQVRGT1JNKElPUykKLSAgICBSZXRhaW5QdHI8
Q0ZEaWN0aW9uYXJ5UmVmPiBjb25uZWN0aW9uUHJvcGVydGllcyhXZWJDb3JlOjpEb2N1bWVudExv
YWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgb3ZlcnJpZGU7CisgICAgUmV0YWluUHRy
PENGRGljdGlvbmFyeVJlZj4gY29ubmVjdGlvblByb3BlcnRpZXMoV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIGZpbmFsOwogI2VuZGlmCi0gICAgdm9p
ZCBkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYp
IG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChXZWJD
b3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgaW50IGRhdGFM
ZW5ndGgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKFdlYkNv
cmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBvdmVycmlkZTsK
LSAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIq
LCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3Im
KSBvdmVycmlkZTsKLSAgICBib29sIGRpc3BhdGNoRGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNh
Y2hlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1
ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGludCBsZW5ndGgpIG92ZXJy
aWRlOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRM
ZW5ndGgoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IGludCBkYXRhTGVuZ3RoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZGlu
ZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgZmlu
YWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVy
cm9yJikgZmluYWw7CisgICAgYm9vbCBkaXNwYXRjaERpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlD
YWNoZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVx
dWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBpbnQgbGVuZ3RoKSBmaW5h
bDsKICNpZiBFTkFCTEUoREFUQV9ERVRFQ1RJT04pCi0gICAgdm9pZCBkaXNwYXRjaERpZEZpbmlz
aERhdGFEZXRlY3Rpb24oTlNBcnJheSAqZGV0ZWN0aW9uUmVzdWx0cykgb3ZlcnJpZGU7CisgICAg
dm9pZCBkaXNwYXRjaERpZEZpbmlzaERhdGFEZXRlY3Rpb24oTlNBcnJheSAqZGV0ZWN0aW9uUmVz
dWx0cykgZmluYWw7CiAjZW5kaWYKICAgICAKLSAgICB2b2lkIGRpc3BhdGNoRGlkRGlzcGF0Y2hP
bmxvYWRFdmVudHMoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVNlcnZl
clJlZGlyZWN0Rm9yUHJvdmlzaW9uYWxMb2FkKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRj
aERpZENoYW5nZVByb3Zpc2lvbmFsVVJMKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERp
ZENhbmNlbENsaWVudFJlZGlyZWN0KCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxQ
ZXJmb3JtQ2xpZW50UmVkaXJlY3QoY29uc3QgV2ViQ29yZTo6VVJMJiwgZG91YmxlIGludGVydmFs
LCBkb3VibGUgZmlyZURhdGUpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRDaGFuZ2VM
b2NhdGlvbldpdGhpblBhZ2UoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUHVzaFN0
YXRlV2l0aGluUGFnZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZXBsYWNlU3Rh
dGVXaXRoaW5QYWdlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFBvcFN0YXRlV2l0
aGluUGFnZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hXaWxsQ2xvc2UoKSBvdmVycmlk
ZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUljb24oKSBvdmVycmlkZTsKLSAgICB2b2lk
IGRpc3BhdGNoRGlkU3RhcnRQcm92aXNpb25hbExvYWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRp
c3BhdGNoRGlkUmVjZWl2ZVRpdGxlKGNvbnN0IFdlYkNvcmU6OlN0cmluZ1dpdGhEaXJlY3Rpb24m
KSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkQ29tbWl0TG9hZChzdGQ6Om9wdGlvbmFs
PFdlYkNvcmU6Okhhc0luc2VjdXJlQ29udGVudD4pIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0
Y2hEaWRGYWlsUHJvdmlzaW9uYWxMb2FkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBv
dmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbExvYWQoY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VFcnJvciYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hEb2N1bWVu
dExvYWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZCgpIG92ZXJy
aWRlOwotCi0gICAgdm9pZCBkaXNwYXRjaERpZFJlYWNoTGF5b3V0TWlsZXN0b25lKFdlYkNvcmU6
OkxheW91dE1pbGVzdG9uZXMpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRMYXlvdXQo
KSBvdmVycmlkZTsKLQotICAgIFdlYkNvcmU6OkZyYW1lKiBkaXNwYXRjaENyZWF0ZVBhZ2UoY29u
c3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0
Y2hTaG93KCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERpZERpc3BhdGNoT25sb2FkRXZl
bnRzKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVTZXJ2ZXJSZWRpcmVjdEZv
clByb3Zpc2lvbmFsTG9hZCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRDaGFuZ2VQcm92
aXNpb25hbFVSTCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRDYW5jZWxDbGllbnRSZWRp
cmVjdCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsUGVyZm9ybUNsaWVudFJlZGlyZWN0
KGNvbnN0IFdlYkNvcmU6OlVSTCYsIGRvdWJsZSBpbnRlcnZhbCwgZG91YmxlIGZpcmVEYXRlKSBm
aW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkQ2hhbmdlTG9jYXRpb25XaXRoaW5QYWdlKCkgZmlu
YWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFB1c2hTdGF0ZVdpdGhpblBhZ2UoKSBmaW5hbDsKKyAg
ICB2b2lkIGRpc3BhdGNoRGlkUmVwbGFjZVN0YXRlV2l0aGluUGFnZSgpIGZpbmFsOworICAgIHZv
aWQgZGlzcGF0Y2hEaWRQb3BTdGF0ZVdpdGhpblBhZ2UoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3Bh
dGNoV2lsbENsb3NlKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVJY29uKCkg
ZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFN0YXJ0UHJvdmlzaW9uYWxMb2FkKCkgZmluYWw7
CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVUaXRsZShjb25zdCBXZWJDb3JlOjpTdHJpbmdX
aXRoRGlyZWN0aW9uJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZENvbW1pdExvYWQoc3Rk
OjpvcHRpb25hbDxXZWJDb3JlOjpIYXNJbnNlY3VyZUNvbnRlbnQ+KSBmaW5hbDsKKyAgICB2b2lk
IGRpc3BhdGNoRGlkRmFpbFByb3Zpc2lvbmFsTG9hZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVy
cm9yJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkKGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoRG9jdW1l
bnRMb2FkKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWQoKSBmaW5hbDsK
KworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWFjaExheW91dE1pbGVzdG9uZShXZWJDb3JlOjpMYXlv
dXRNaWxlc3RvbmVzKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkTGF5b3V0KCkgZmluYWw7
CisKKyAgICBXZWJDb3JlOjpGcmFtZSogZGlzcGF0Y2hDcmVhdGVQYWdlKGNvbnN0IFdlYkNvcmU6
Ok5hdmlnYXRpb25BY3Rpb24mKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoU2hvdygpIGZpbmFs
OwogICAgIAotICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JSZXNwb25zZShjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
JiwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNw
YXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBXZWJDb3JlOjpOYXZpZ2F0
aW9uQWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgUGFzc1JlZlB0cjxX
ZWJDb3JlOjpGb3JtU3RhdGU+LCBjb25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgV2ViQ29yZTo6RnJh
bWVQb2xpY3lGdW5jdGlvbikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGlj
eUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYsIGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0
YXRlPiwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBj
YW5jZWxQb2xpY3lDaGVjaygpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xp
Y3lGb3JSZXNwb25zZShjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgZmlu
YWw7CisgICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25z
dCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1
ZXN0JiwgV2ViQ29yZTo6Rm9ybVN0YXRlKiwgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIFdlYkNv
cmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQ
b2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24m
LCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpGb3JtU3RhdGUqLCBX
ZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsKKyAgICB2b2lkIGNhbmNlbFBvbGlj
eUNoZWNrKCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBkaXNwYXRjaFVuYWJsZVRvSW1wbGVtZW50
UG9saWN5KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKKyAgICB2b2lk
IGRpc3BhdGNoVW5hYmxlVG9JbXBsZW1lbnRQb2xpY3koY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VF
cnJvciYpIGZpbmFsOwogICAgIAotICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50
KFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0YXRlPikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNw
YXRjaFdpbGxTdWJtaXRGb3JtKFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0YXRlPiwgV2ViQ29y
ZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxT
ZW5kU3VibWl0RXZlbnQoUmVmPFdlYkNvcmU6OkZvcm1TdGF0ZT4mJikgZmluYWw7CisgICAgdm9p
ZCBkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKFdlYkNvcmU6OkZvcm1TdGF0ZSYsIFdlYkNvcmU6OkZy
YW1lUG9saWN5RnVuY3Rpb24pIGZpbmFsOwogICAgIAotICAgIHZvaWQgcmV2ZXJ0VG9Qcm92aXNp
b25hbFN0YXRlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBz
ZXRNYWluRG9jdW1lbnRFcnJvcihXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKKyAgICB2b2lkIHJldmVydFRvUHJvdmlzaW9u
YWxTdGF0ZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIGZpbmFsOworICAgIHZvaWQgc2V0TWFp
bkRvY3VtZW50RXJyb3IoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZUVycm9yJikgZmluYWw7CiAgICAgCi0gICAgdm9pZCBzZXRNYWluRnJhbWVEb2N1bWVu
dFJlYWR5KGJvb2wpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0TWFpbkZyYW1lRG9jdW1lbnRSZWFk
eShib29sKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHN0YXJ0RG93bmxvYWQoY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgU3RyaW5nJiBzdWdnZXN0ZWROYW1lID0gU3RyaW5n
KCkpIG92ZXJyaWRlOworICAgIHZvaWQgc3RhcnREb3dubG9hZChjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmLCBjb25zdCBTdHJpbmcmIHN1Z2dlc3RlZE5hbWUgPSBTdHJpbmcoKSkgZmlu
YWw7CiAgICAgCi0gICAgdm9pZCB3aWxsQ2hhbmdlVGl0bGUoV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXIqKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZENoYW5nZVRpdGxlKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKikgb3ZlcnJpZGU7CisgICAgdm9pZCB3aWxsQ2hhbmdlVGl0bGUoV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXIqKSBmaW5hbDsKKyAgICB2b2lkIGRpZENoYW5nZVRpdGxlKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKikgZmluYWw7CiAKLSAgICB2b2lkIHdpbGxSZXBsYWNlTXVsdGlwYXJ0Q29u
dGVudCgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkUmVwbGFjZU11bHRpcGFydENvbnRlbnQoKSBv
dmVycmlkZTsKKyAgICB2b2lkIHdpbGxSZXBsYWNlTXVsdGlwYXJ0Q29udGVudCgpIGZpbmFsOwor
ICAgIHZvaWQgZGlkUmVwbGFjZU11bHRpcGFydENvbnRlbnQoKSBmaW5hbDsKIAotICAgIHZvaWQg
Y29tbWl0dGVkTG9hZChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IGNoYXIqLCBpbnQp
IG92ZXJyaWRlOwotICAgIHZvaWQgZmluaXNoZWRMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKikgb3ZlcnJpZGU7CisgICAgdm9pZCBjb21taXR0ZWRMb2FkKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiwgY29uc3QgY2hhciosIGludCkgZmluYWw7CisgICAgdm9pZCBmaW5pc2hlZExvYWRp
bmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHVwZGF0
ZUdsb2JhbEhpc3RvcnkoKSBvdmVycmlkZTsKLSAgICB2b2lkIHVwZGF0ZUdsb2JhbEhpc3RvcnlS
ZWRpcmVjdExpbmtzKCkgb3ZlcnJpZGU7CisgICAgdm9pZCB1cGRhdGVHbG9iYWxIaXN0b3J5KCkg
ZmluYWw7CisgICAgdm9pZCB1cGRhdGVHbG9iYWxIaXN0b3J5UmVkaXJlY3RMaW5rcygpIGZpbmFs
OwogICAgIAotICAgIGJvb2wgc2hvdWxkR29Ub0hpc3RvcnlJdGVtKFdlYkNvcmU6Okhpc3RvcnlJ
dGVtKikgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRHb1RvSGlzdG9yeUl0ZW0oV2Vi
Q29yZTo6SGlzdG9yeUl0ZW0qKSBjb25zdCBmaW5hbDsKIAotICAgIHZvaWQgZGlkRGlzcGxheUlu
c2VjdXJlQ29udGVudCgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkUnVuSW5zZWN1cmVDb250ZW50
KFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luKiwgY29uc3QgV2ViQ29yZTo6VVJMJikgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBkaWREZXRlY3RYU1MoY29uc3QgV2ViQ29yZTo6VVJMJiwgYm9vbCBkaWRCbG9j
a0VudGlyZVBhZ2UpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkRGlzcGxheUluc2VjdXJlQ29udGVu
dCgpIGZpbmFsOworICAgIHZvaWQgZGlkUnVuSW5zZWN1cmVDb250ZW50KFdlYkNvcmU6OlNlY3Vy
aXR5T3JpZ2luKiwgY29uc3QgV2ViQ29yZTo6VVJMJikgZmluYWw7CisgICAgdm9pZCBkaWREZXRl
Y3RYU1MoY29uc3QgV2ViQ29yZTo6VVJMJiwgYm9vbCBkaWRCbG9ja0VudGlyZVBhZ2UpIGZpbmFs
OwogCi0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBjYW5jZWxsZWRFcnJvcihjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVy
cm9yIGJsb2NrZWRFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlk
ZTsKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGJsb2NrZWRCeUNvbnRlbnRCbG9ja2VyRXJy
b3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29y
ZTo6UmVzb3VyY2VFcnJvciBjYW5ub3RTaG93VVJMRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBpbnRlcnJ1
cHRlZEZvclBvbGljeUNoYW5nZUVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYp
IG92ZXJyaWRlOworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgY2FuY2VsbGVkRXJyb3IoY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3Vy
Y2VFcnJvciBibG9ja2VkRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmlu
YWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkQnlDb250ZW50QmxvY2tlckVy
cm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOworICAgIFdlYkNvcmU6
OlJlc291cmNlRXJyb3IgY2Fubm90U2hvd1VSTEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYpIGZpbmFsOworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgaW50ZXJydXB0ZWRG
b3JQb2xpY3lDaGFuZ2VFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5h
bDsKICNpZiBFTkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCi0gICAgV2ViQ29yZTo6UmVzb3VyY2VF
cnJvciBibG9ja2VkQnlDb250ZW50RmlsdGVyRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VS
ZXF1ZXN0Jikgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkQnlD
b250ZW50RmlsdGVyRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7
CiAjZW5kaWYKICAgICAKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dNSU1F
VHlwZUVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKLSAg
ICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGZpbGVEb2VzTm90RXhpc3RFcnJvcihjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VF
cnJvciBwbHVnaW5XaWxsSGFuZGxlTG9hZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVz
cG9uc2UmKSBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dN
SU1FVHlwZUVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAg
ICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGZpbGVEb2VzTm90RXhpc3RFcnJvcihjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJv
ciBwbHVnaW5XaWxsSGFuZGxlTG9hZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2UmKSBmaW5hbDsKICAgICAKLSAgICBib29sIHNob3VsZEZhbGxCYWNrKGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZEZhbGxCYWNrKGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKICAgICAKLSAgICBib29sIGNhbkhhbmRs
ZVJlcXVlc3QoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgY29uc3Qgb3ZlcnJpZGU7
Ci0gICAgYm9vbCBjYW5TaG93TUlNRVR5cGUoY29uc3QgU3RyaW5nJiBNSU1FVHlwZSkgY29uc3Qg
b3ZlcnJpZGU7Ci0gICAgYm9vbCBjYW5TaG93TUlNRVR5cGVBc0hUTUwoY29uc3QgU3RyaW5nJiBN
SU1FVHlwZSkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgYm9vbCByZXByZXNlbnRhdGlvbkV4aXN0c0Zv
clVSTFNjaGVtZShjb25zdCBTdHJpbmcmIFVSTFNjaGVtZSkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAg
U3RyaW5nIGdlbmVyYXRlZE1JTUVUeXBlRm9yVVJMU2NoZW1lKGNvbnN0IFN0cmluZyYgVVJMU2No
ZW1lKSBjb25zdCBvdmVycmlkZTsKKyAgICBib29sIGNhbkhhbmRsZVJlcXVlc3QoY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgY29uc3QgZmluYWw7CisgICAgYm9vbCBjYW5TaG93TUlN
RVR5cGUoY29uc3QgU3RyaW5nJiBNSU1FVHlwZSkgY29uc3QgZmluYWw7CisgICAgYm9vbCBjYW5T
aG93TUlNRVR5cGVBc0hUTUwoY29uc3QgU3RyaW5nJiBNSU1FVHlwZSkgY29uc3QgZmluYWw7Cisg
ICAgYm9vbCByZXByZXNlbnRhdGlvbkV4aXN0c0ZvclVSTFNjaGVtZShjb25zdCBTdHJpbmcmIFVS
TFNjaGVtZSkgY29uc3QgZmluYWw7CisgICAgU3RyaW5nIGdlbmVyYXRlZE1JTUVUeXBlRm9yVVJM
U2NoZW1lKGNvbnN0IFN0cmluZyYgVVJMU2NoZW1lKSBjb25zdCBmaW5hbDsKICAgICAKLSAgICB2
b2lkIGZyYW1lTG9hZENvbXBsZXRlZCgpIG92ZXJyaWRlOwotICAgIHZvaWQgc2F2ZVZpZXdTdGF0
ZVRvSXRlbShXZWJDb3JlOjpIaXN0b3J5SXRlbSYpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVzdG9y
ZVZpZXdTdGF0ZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgcHJvdmlzaW9uYWxMb2FkU3RhcnRlZCgp
IG92ZXJyaWRlOwotICAgIHZvaWQgZGlkRmluaXNoTG9hZCgpIG92ZXJyaWRlOwotICAgIHZvaWQg
cHJlcGFyZUZvckRhdGFTb3VyY2VSZXBsYWNlbWVudCgpIG92ZXJyaWRlOworICAgIHZvaWQgZnJh
bWVMb2FkQ29tcGxldGVkKCkgZmluYWw7CisgICAgdm9pZCBzYXZlVmlld1N0YXRlVG9JdGVtKFdl
YkNvcmU6Okhpc3RvcnlJdGVtJikgZmluYWw7CisgICAgdm9pZCByZXN0b3JlVmlld1N0YXRlKCkg
ZmluYWw7CisgICAgdm9pZCBwcm92aXNpb25hbExvYWRTdGFydGVkKCkgZmluYWw7CisgICAgdm9p
ZCBkaWRGaW5pc2hMb2FkKCkgZmluYWw7CisgICAgdm9pZCBwcmVwYXJlRm9yRGF0YVNvdXJjZVJl
cGxhY2VtZW50KCkgZmluYWw7CiAgICAgCi0gICAgUmVmPFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
PiBjcmVhdGVEb2N1bWVudExvYWRlcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBj
b25zdCBXZWJDb3JlOjpTdWJzdGl0dXRlRGF0YSYpIG92ZXJyaWRlOwotICAgIHZvaWQgdXBkYXRl
Q2FjaGVkRG9jdW1lbnRMb2FkZXIoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXImKSBvdmVycmlkZTsK
KyAgICBSZWY8V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI+IGNyZWF0ZURvY3VtZW50TG9hZGVyKGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlN1YnN0aXR1dGVE
YXRhJikgZmluYWw7CisgICAgdm9pZCB1cGRhdGVDYWNoZWREb2N1bWVudExvYWRlcihXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciYpIGZpbmFsOwogCi0gICAgdm9pZCBzZXRUaXRsZShjb25zdCBXZWJD
b3JlOjpTdHJpbmdXaXRoRGlyZWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6VVJMJikgb3ZlcnJpZGU7
CisgICAgdm9pZCBzZXRUaXRsZShjb25zdCBXZWJDb3JlOjpTdHJpbmdXaXRoRGlyZWN0aW9uJiwg
Y29uc3QgV2ViQ29yZTo6VVJMJikgZmluYWw7CiAgICAgCi0gICAgU3RyaW5nIHVzZXJBZ2VudChj
b25zdCBXZWJDb3JlOjpVUkwmKSBvdmVycmlkZTsKKyAgICBTdHJpbmcgdXNlckFnZW50KGNvbnN0
IFdlYkNvcmU6OlVSTCYpIGZpbmFsOwogICAgIAotICAgIHZvaWQgc2F2ZVBsYXRmb3JtRGF0YVRv
Q2FjaGVkRnJhbWUoV2ViQ29yZTo6Q2FjaGVkRnJhbWUqKSBvdmVycmlkZTsKLSAgICB2b2lkIHRy
YW5zaXRpb25Ub0NvbW1pdHRlZEZyb21DYWNoZWRGcmFtZShXZWJDb3JlOjpDYWNoZWRGcmFtZSop
IG92ZXJyaWRlOworICAgIHZvaWQgc2F2ZVBsYXRmb3JtRGF0YVRvQ2FjaGVkRnJhbWUoV2ViQ29y
ZTo6Q2FjaGVkRnJhbWUqKSBmaW5hbDsKKyAgICB2b2lkIHRyYW5zaXRpb25Ub0NvbW1pdHRlZEZy
b21DYWNoZWRGcmFtZShXZWJDb3JlOjpDYWNoZWRGcmFtZSopIGZpbmFsOwogI2lmIFBMQVRGT1JN
KElPUykKLSAgICB2b2lkIGRpZFJlc3RvcmVGcmFtZUhpZXJhcmNoeUZvckNhY2hlZEZyYW1lKCkg
b3ZlcnJpZGU7CisgICAgdm9pZCBkaWRSZXN0b3JlRnJhbWVIaWVyYXJjaHlGb3JDYWNoZWRGcmFt
ZSgpIGZpbmFsOwogI2VuZGlmCi0gICAgdm9pZCB0cmFuc2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQ
YWdlKCkgb3ZlcnJpZGU7CisgICAgdm9pZCB0cmFuc2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdl
KCkgZmluYWw7CiAKLSAgICB2b2lkIGRpZFNhdmVUb1BhZ2VDYWNoZSgpIG92ZXJyaWRlOwotICAg
IHZvaWQgZGlkUmVzdG9yZUZyb21QYWdlQ2FjaGUoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZFNh
dmVUb1BhZ2VDYWNoZSgpIGZpbmFsOworICAgIHZvaWQgZGlkUmVzdG9yZUZyb21QYWdlQ2FjaGUo
KSBmaW5hbDsKIAotICAgIHZvaWQgZGlzcGF0Y2hEaWRCZWNvbWVGcmFtZXNldChib29sKSBvdmVy
cmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGlkQmVjb21lRnJhbWVzZXQoYm9vbCkgZmluYWw7CiAK
LSAgICBib29sIGNhbkNhY2hlUGFnZSgpIGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQgY29udmVy
dE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2Vi
Q29yZTo6U2Vzc2lvbklELCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CisgICAgYm9vbCBjYW5DYWNoZVBh
Z2UoKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIGNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3du
bG9hZChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlNlc3Npb25JRCwgY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25z
ZSYpIGZpbmFsOwogCi0gICAgUmVmUHRyPFdlYkNvcmU6OkZyYW1lPiBjcmVhdGVGcmFtZShjb25z
dCBXZWJDb3JlOjpVUkwmLCBjb25zdCBTdHJpbmcmIG5hbWUsIFdlYkNvcmU6OkhUTUxGcmFtZU93
bmVyRWxlbWVudCosCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj
b25zdCBTdHJpbmcmIHJlZmVycmVyLCBib29sIGFsbG93c1Njcm9sbGluZywgaW50IG1hcmdpbldp
ZHRoLCBpbnQgbWFyZ2luSGVpZ2h0KSBvdmVycmlkZTsKLSAgICAKLSAgICBSZWZQdHI8V2ViQ29y
ZTo6V2lkZ2V0PiBjcmVhdGVQbHVnaW4oY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6
OkhUTUxQbHVnSW5FbGVtZW50KiwgY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgVmVjdG9yPFN0
cmluZz4mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFN0cmluZyYsIGJvb2wgbG9hZE1h
bnVhbGx5KSBvdmVycmlkZTsKLSAgICB2b2lkIHJlY3JlYXRlUGx1Z2luKFdlYkNvcmU6OldpZGdl
dCopIG92ZXJyaWRlOwotICAgIHZvaWQgcmVkaXJlY3REYXRhVG9QbHVnaW4oV2ViQ29yZTo6V2lk
Z2V0KiBwbHVnaW5XaWRnZXQpIG92ZXJyaWRlOworICAgIFJlZlB0cjxXZWJDb3JlOjpGcmFtZT4g
Y3JlYXRlRnJhbWUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgU3RyaW5nJiBuYW1lLCBXZWJD
b3JlOjpIVE1MRnJhbWVPd25lckVsZW1lbnQmLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBib29s
IGFsbG93c1Njcm9sbGluZywgaW50IG1hcmdpbldpZHRoLCBpbnQgbWFyZ2luSGVpZ2h0KSBmaW5h
bDsKKworICAgIFJlZlB0cjxXZWJDb3JlOjpXaWRnZXQ+IGNyZWF0ZVBsdWdpbihjb25zdCBXZWJD
b3JlOjpJbnRTaXplJiwgV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQmLCBjb25zdCBXZWJDb3Jl
OjpVUkwmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29u
c3QgU3RyaW5nJiwgYm9vbCBsb2FkTWFudWFsbHkpIGZpbmFsOworICAgIHZvaWQgcmVjcmVhdGVQ
bHVnaW4oV2ViQ29yZTo6V2lkZ2V0KikgZmluYWw7CisgICAgdm9pZCByZWRpcmVjdERhdGFUb1Bs
dWdpbihXZWJDb3JlOjpXaWRnZXQqIHBsdWdpbldpZGdldCkgZmluYWw7CiAgICAgCiAjaWYgRU5B
QkxFKFdFQkdMKQotICAgIFdlYkNvcmU6OldlYkdMTG9hZFBvbGljeSB3ZWJHTFBvbGljeUZvclVS
TChjb25zdCBTdHJpbmcmKSBjb25zdCBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpXZWJHTExvYWRQ
b2xpY3kgcmVzb2x2ZVdlYkdMUG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYpIGNvbnN0IG92ZXJy
aWRlOworICAgIFdlYkNvcmU6OldlYkdMTG9hZFBvbGljeSB3ZWJHTFBvbGljeUZvclVSTChjb25z
dCBTdHJpbmcmKSBjb25zdCBmaW5hbDsKKyAgICBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgcmVz
b2x2ZVdlYkdMUG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYpIGNvbnN0IGZpbmFsOwogI2VuZGlm
IC8vIEVOQUJMRShXRUJHTCkKIAotICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6V2lkZ2V0PiBjcmVh
dGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IFdlYkNvcmU6OkludFNpemUmLCBXZWJDb3JlOjpIVE1M
QXBwbGV0RWxlbWVudCosIGNvbnN0IFdlYkNvcmU6OlVSTCYgYmFzZVVSTCwgY29uc3QgVmVjdG9y
PFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykg
b3ZlcnJpZGU7CisgICAgUmVmUHRyPFdlYkNvcmU6OldpZGdldD4gY3JlYXRlSmF2YUFwcGxldFdp
ZGdldChjb25zdCBXZWJDb3JlOjpJbnRTaXplJiwgV2ViQ29yZTo6SFRNTEFwcGxldEVsZW1lbnQm
LCBjb25zdCBXZWJDb3JlOjpVUkwmIGJhc2VVUkwsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJh
bU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpIGZpbmFsOwogICAgIAot
ICAgIFdlYkNvcmU6Ok9iamVjdENvbnRlbnRUeXBlIG9iamVjdENvbnRlbnRUeXBlKGNvbnN0IFdl
YkNvcmU6OlVSTCYsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUpIG92ZXJyaWRlOwotICAgIFN0cmlu
ZyBvdmVycmlkZU1lZGlhVHlwZSgpIGNvbnN0IG92ZXJyaWRlOworICAgIFdlYkNvcmU6Ok9iamVj
dENvbnRlbnRUeXBlIG9iamVjdENvbnRlbnRUeXBlKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNvbnN0
IFN0cmluZyYgbWltZVR5cGUpIGZpbmFsOworICAgIFN0cmluZyBvdmVycmlkZU1lZGlhVHlwZSgp
IGNvbnN0IGZpbmFsOwogCi0gICAgdm9pZCBkaXNwYXRjaERpZENsZWFyV2luZG93T2JqZWN0SW5X
b3JsZChXZWJDb3JlOjpET01XcmFwcGVyV29ybGQmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3Bh
dGNoRGlkQ2xlYXJXaW5kb3dPYmplY3RJbldvcmxkKFdlYkNvcmU6OkRPTVdyYXBwZXJXb3JsZCYp
IGZpbmFsOwogICAgIAotICAgIHZvaWQgZGlzcGF0Y2hHbG9iYWxPYmplY3RBdmFpbGFibGUoV2Vi
Q29yZTo6RE9NV3JhcHBlcldvcmxkJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxE
aXNjb25uZWN0RE9NV2luZG93RXh0ZW5zaW9uRnJvbUdsb2JhbE9iamVjdChXZWJDb3JlOjpET01X
aW5kb3dFeHRlbnNpb24qKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjb25uZWN0
RE9NV2luZG93RXh0ZW5zaW9uVG9HbG9iYWxPYmplY3QoV2ViQ29yZTo6RE9NV2luZG93RXh0ZW5z
aW9uKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxEZXN0cm95R2xvYmFsT2JqZWN0
Rm9yRE9NV2luZG93RXh0ZW5zaW9uKFdlYkNvcmU6OkRPTVdpbmRvd0V4dGVuc2lvbiopIG92ZXJy
aWRlOworICAgIHZvaWQgZGlzcGF0Y2hHbG9iYWxPYmplY3RBdmFpbGFibGUoV2ViQ29yZTo6RE9N
V3JhcHBlcldvcmxkJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxEaXNjb25uZWN0RE9N
V2luZG93RXh0ZW5zaW9uRnJvbUdsb2JhbE9iamVjdChXZWJDb3JlOjpET01XaW5kb3dFeHRlbnNp
b24qKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjb25uZWN0RE9NV2luZG93RXh0ZW5z
aW9uVG9HbG9iYWxPYmplY3QoV2ViQ29yZTo6RE9NV2luZG93RXh0ZW5zaW9uKikgZmluYWw7Cisg
ICAgdm9pZCBkaXNwYXRjaFdpbGxEZXN0cm95R2xvYmFsT2JqZWN0Rm9yRE9NV2luZG93RXh0ZW5z
aW9uKFdlYkNvcmU6OkRPTVdpbmRvd0V4dGVuc2lvbiopIGZpbmFsOwogCi0gICAgdm9pZCByZWdp
c3RlckZvckljb25Ob3RpZmljYXRpb24oYm9vbCBsaXN0ZW4gPSB0cnVlKSBvdmVycmlkZTsKKyAg
ICB2b2lkIHJlZ2lzdGVyRm9ySWNvbk5vdGlmaWNhdGlvbihib29sIGxpc3RlbiA9IHRydWUpIGZp
bmFsOwogICAgIAogI2lmIFBMQVRGT1JNKENPQ09BKQotICAgIFJlbW90ZUFYT2JqZWN0UmVmIGFj
Y2Vzc2liaWxpdHlSZW1vdGVPYmplY3QoKSBvdmVycmlkZTsKKyAgICBSZW1vdGVBWE9iamVjdFJl
ZiBhY2Nlc3NpYmlsaXR5UmVtb3RlT2JqZWN0KCkgZmluYWw7CiAgICAgCi0gICAgTlNDYWNoZWRV
UkxSZXNwb25zZSogd2lsbENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2UqKSBjb25zdCBvdmVy
cmlkZTsKKyAgICBOU0NhY2hlZFVSTFJlc3BvbnNlKiB3aWxsQ2FjaGVSZXNwb25zZShXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgTlNDYWNoZWRVUkxS
ZXNwb25zZSopIGNvbnN0IGZpbmFsOwogCi0gICAgTlNEaWN0aW9uYXJ5ICpkYXRhRGV0ZWN0aW9u
Q29udGV4dCgpIG92ZXJyaWRlOworICAgIE5TRGljdGlvbmFyeSAqZGF0YURldGVjdGlvbkNvbnRl
eHQoKSBmaW5hbDsKICNlbmRpZgogCi0gICAgYm9vbCBzaG91bGRBbHdheXNVc2VQbHVnaW5Eb2N1
bWVudChjb25zdCBTdHJpbmcmIC8qbWltZVR5cGUqLykgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9v
bCBzaG91bGRBbHdheXNVc2VQbHVnaW5Eb2N1bWVudChjb25zdCBTdHJpbmcmIC8qbWltZVR5cGUq
LykgY29uc3QgZmluYWw7CiAKLSAgICB2b2lkIGRpZENoYW5nZVNjcm9sbE9mZnNldCgpIG92ZXJy
aWRlOworICAgIHZvaWQgZGlkQ2hhbmdlU2Nyb2xsT2Zmc2V0KCkgZmluYWw7CiAKLSAgICBib29s
IGFsbG93U2NyaXB0KGJvb2wgZW5hYmxlZFBlclNldHRpbmdzKSBvdmVycmlkZTsKKyAgICBib29s
IGFsbG93U2NyaXB0KGJvb2wgZW5hYmxlZFBlclNldHRpbmdzKSBmaW5hbDsKIAotICAgIGJvb2wg
c2hvdWxkRm9yY2VVbml2ZXJzYWxBY2Nlc3NGcm9tTG9jYWxVUkwoY29uc3QgV2ViQ29yZTo6VVJM
Jikgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRGb3JjZVVuaXZlcnNhbEFjY2Vzc0Zyb21Mb2Nh
bFVSTChjb25zdCBXZWJDb3JlOjpVUkwmKSBmaW5hbDsKIAotICAgIFBhc3NSZWZQdHI8V2ViQ29y
ZTo6RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKSBvdmVy
cmlkZTsKKyAgICBSZWY8V2ViQ29yZTo6RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRlTmV0
d29ya2luZ0NvbnRleHQoKSBmaW5hbDsKIAogI2lmIEVOQUJMRShSRVFVRVNUX0FVVE9DT01QTEVU
RSkKLSAgICB2b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxldGUoUGFzc1JlZlB0cjxXZWJDb3JlOjpG
b3JtU3RhdGU+KSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxldGUoUmVm
PFdlYkNvcmU6OkZvcm1TdGF0ZT4mJikgZmluYWw7CiAjZW5kaWYKIAotICAgIHZvaWQgZm9yY2VQ
YWdlVHJhbnNpdGlvbklmTmVlZGVkKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBmb3JjZVBhZ2VUcmFu
c2l0aW9uSWZOZWVkZWQoKSBmaW5hbDsKIAogI2lmIFVTRShRVUlDS19MT09LKQotICAgIHZvaWQg
ZGlkQ3JlYXRlUXVpY2tMb29rSGFuZGxlKFdlYkNvcmU6OlF1aWNrTG9va0hhbmRsZSYpIG92ZXJy
aWRlOworICAgIHZvaWQgZGlkQ3JlYXRlUXVpY2tMb29rSGFuZGxlKFdlYkNvcmU6OlF1aWNrTG9v
a0hhbmRsZSYpIGZpbmFsOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoQ09OVEVOVF9GSUxURVJJTkcp
Ci0gICAgdm9pZCBjb250ZW50RmlsdGVyRGlkQmxvY2tMb2FkKFdlYkNvcmU6OkNvbnRlbnRGaWx0
ZXJVbmJsb2NrSGFuZGxlcikgb3ZlcnJpZGU7CisgICAgdm9pZCBjb250ZW50RmlsdGVyRGlkQmxv
Y2tMb2FkKFdlYkNvcmU6OkNvbnRlbnRGaWx0ZXJVbmJsb2NrSGFuZGxlcikgZmluYWw7CiAjZW5k
aWYKIAotICAgIHZvaWQgcHJlZmV0Y2hETlMoY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7CisgICAg
dm9pZCBwcmVmZXRjaEROUyhjb25zdCBTdHJpbmcmKSBmaW5hbDsKIAotICAgIHZvaWQgZGlkUmVz
dG9yZVNjcm9sbFBvc2l0aW9uKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRSZXN0b3JlU2Nyb2xs
UG9zaXRpb24oKSBmaW5hbDsKIAotICAgIGJvb2wgdXNlSWNvbkxvYWRpbmdDbGllbnQoKSBvdmVy
cmlkZTsKLSAgICB2b2lkIGdldExvYWREZWNpc2lvbkZvckljb24oY29uc3QgV2ViQ29yZTo6TGlu
a0ljb24mLCB1aW50NjRfdCBjYWxsYmFja0lEKSBvdmVycmlkZTsKLSAgICB2b2lkIGZpbmlzaGVk
TG9hZGluZ0ljb24odWludDY0X3QgbG9hZElkZW50aWZpZXIsIFdlYkNvcmU6OlNoYXJlZEJ1ZmZl
ciopIG92ZXJyaWRlOworICAgIGJvb2wgdXNlSWNvbkxvYWRpbmdDbGllbnQoKSBmaW5hbDsKKyAg
ICB2b2lkIGdldExvYWREZWNpc2lvbkZvckljb24oY29uc3QgV2ViQ29yZTo6TGlua0ljb24mLCB1
aW50NjRfdCBjYWxsYmFja0lEKSBmaW5hbDsKKyAgICB2b2lkIGZpbmlzaGVkTG9hZGluZ0ljb24o
dWludDY0X3QgbG9hZElkZW50aWZpZXIsIFdlYkNvcmU6OlNoYXJlZEJ1ZmZlciopIGZpbmFsOwog
CiAgICAgV2ViRnJhbWUqIG1fZnJhbWU7CiAgICAgUmVmUHRyPFBsdWdpblZpZXc+IG1fcGx1Z2lu
VmlldzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvaW9zL1dlYkNocm9tZUNsaWVudElPUy5tbSBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViQ29yZVN1cHBvcnQvaW9zL1dlYkNocm9tZUNsaWVudElPUy5tbQppbmRleCAwZGZmODA4NDk2
NmNiNTllMDA5YzVhOGZlNmIxNzZkZDhmYTg4MzY2Li5iZDAxNTVkY2MzY2RlY2U5ZmYyMGZhOTg2
NmRmMzc5ZjgyYTM2OGM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YkNvcmVTdXBwb3J0L2lvcy9XZWJDaHJvbWVDbGllbnRJT1MubW0KKysrIGIvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9pb3MvV2ViQ2hyb21lQ2xpZW50SU9TLm1tCkBA
IC0zOCwxMCArMzgsMTIgQEAKIG5hbWVzcGFjZSBXZWJLaXQgewogCiAjaWYgRU5BQkxFKElPU19U
T1VDSF9FVkVOVFMpCisKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpkaWRQcmV2ZW50RGVmYXVsdEZv
ckV2ZW50KCkKIHsKICAgICBub3RJbXBsZW1lbnRlZCgpOwogfQorCiAjZW5kaWYKIAogdm9pZCBX
ZWJDaHJvbWVDbGllbnQ6OmVsZW1lbnREaWRSZWZvY3VzKGNvbnN0IFdlYkNvcmU6Ok5vZGUqIG5v
ZGUpCkBAIC01MSw3ICs1Myw3IEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjplbGVtZW50RGlkUmVm
b2N1cyhjb25zdCBXZWJDb3JlOjpOb2RlKiBub2RlKQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6
ZGlkUmVjZWl2ZU1vYmlsZURvY1R5cGUoYm9vbCBpc01vYmlsZURvY3R5cGUpCiB7Ci0gICAgbV9w
YWdlLT5kaWRSZWNlaXZlTW9iaWxlRG9jVHlwZShpc01vYmlsZURvY3R5cGUpOworICAgIG1fcGFn
ZS5kaWRSZWNlaXZlTW9iaWxlRG9jVHlwZShpc01vYmlsZURvY3R5cGUpOwogfQogCiB2b2lkIFdl
YkNocm9tZUNsaWVudDo6c2V0TmVlZHNTY3JvbGxOb3RpZmljYXRpb25zKFdlYkNvcmU6OkZyYW1l
KiwgYm9vbCkKQEAgLTYxLDcgKzYzLDcgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNldE5lZWRz
U2Nyb2xsTm90aWZpY2F0aW9ucyhXZWJDb3JlOjpGcmFtZSosIGJvb2wpCiAKIHZvaWQgV2ViQ2hy
b21lQ2xpZW50OjpvYnNlcnZlZENvbnRlbnRDaGFuZ2UoV2ViQ29yZTo6RnJhbWUqKQogewotICAg
IG1fcGFnZS0+Y29tcGxldGVQZW5kaW5nU3ludGhldGljQ2xpY2tGb3JDb250ZW50Q2hhbmdlT2Jz
ZXJ2ZXIoKTsKKyAgICBtX3BhZ2UuY29tcGxldGVQZW5kaW5nU3ludGhldGljQ2xpY2tGb3JDb250
ZW50Q2hhbmdlT2JzZXJ2ZXIoKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmNsZWFyQ29u
dGVudENoYW5nZU9ic2VydmVycyhXZWJDb3JlOjpGcmFtZSopCkBAIC03MSw3ICs3Myw3IEBAIHZv
aWQgV2ViQ2hyb21lQ2xpZW50OjpjbGVhckNvbnRlbnRDaGFuZ2VPYnNlcnZlcnMoV2ViQ29yZTo6
RnJhbWUqKQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6bm90aWZ5UmV2ZWFsZWRTZWxlY3Rpb25C
eVNjcm9sbGluZ0ZyYW1lKFdlYkNvcmU6OkZyYW1lKikKIHsKLSAgICBtX3BhZ2UtPmRpZENoYW5n
ZVNlbGVjdGlvbigpOworICAgIG1fcGFnZS5kaWRDaGFuZ2VTZWxlY3Rpb24oKTsKIH0KIAogYm9v
bCBXZWJDaHJvbWVDbGllbnQ6OmlzU3RvcHBpbmcoKQpAQCAtODMsMjIgKzg1LDIyIEBAIGJvb2wg
V2ViQ2hyb21lQ2xpZW50Ojppc1N0b3BwaW5nKCkKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpkaWRM
YXlvdXQoTGF5b3V0VHlwZSB0eXBlKQogewogICAgIGlmICh0eXBlID09IFNjcm9sbCkKLSAgICAg
ICAgbV9wYWdlLT5kaWRDaGFuZ2VTZWxlY3Rpb24oKTsKKyAgICAgICAgbV9wYWdlLmRpZENoYW5n
ZVNlbGVjdGlvbigpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZGlkU3RhcnRPdmVyZmxv
d1Njcm9sbCgpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6Ok92
ZXJmbG93U2Nyb2xsV2lsbFN0YXJ0U2Nyb2xsKCkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6Ok92ZXJmbG93U2Nyb2xsV2lsbFN0YXJ0U2Nyb2xsKCkpOwogfQogCiB2
b2lkIFdlYkNocm9tZUNsaWVudDo6ZGlkRW5kT3ZlcmZsb3dTY3JvbGwoKQogewotICAgIG1fcGFn
ZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpPdmVyZmxvd1Njcm9sbERpZEVuZFNjcm9s
bCgpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpPdmVyZmxvd1Nj
cm9sbERpZEVuZFNjcm9sbCgpKTsKIH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6Omhhc1N0YWJs
ZVBhZ2VTY2FsZUZhY3RvcigpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+aGFzU3RhYmxl
UGFnZVNjYWxlRmFjdG9yKCk7CisgICAgcmV0dXJuIG1fcGFnZS5oYXNTdGFibGVQYWdlU2NhbGVG
YWN0b3IoKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnN1cHByZXNzRm9ybU5vdGlmaWNh
dGlvbnMoKQpAQCAtMTI4LDE3ICsxMzAsMTcgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OndlYkFw
cE9yaWVudGF0aW9uc1VwZGF0ZWQoKQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2hvd1BsYXli
YWNrVGFyZ2V0UGlja2VyKGJvb2wgaGFzVmlkZW8pCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OlNob3dQbGF5YmFja1RhcmdldFBpY2tlcihoYXNWaWRlbywgbV9w
YWdlLT5yZWN0Rm9yRWxlbWVudEF0SW50ZXJhY3Rpb25Mb2NhdGlvbigpKSk7CisgICAgbV9wYWdl
LnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2hvd1BsYXliYWNrVGFyZ2V0UGlja2VyKGhh
c1ZpZGVvLCBtX3BhZ2UucmVjdEZvckVsZW1lbnRBdEludGVyYWN0aW9uTG9jYXRpb24oKSkpOwog
fQogCiBTZWNvbmRzIFdlYkNocm9tZUNsaWVudDo6ZXZlbnRUaHJvdHRsaW5nRGVsYXkoKQogewot
ICAgIHJldHVybiBtX3BhZ2UtPmV2ZW50VGhyb3R0bGluZ0RlbGF5KCk7CisgICAgcmV0dXJuIG1f
cGFnZS5ldmVudFRocm90dGxpbmdEZWxheSgpOwogfQogCiBpbnQgV2ViQ2hyb21lQ2xpZW50Ojpk
ZXZpY2VPcmllbnRhdGlvbigpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+ZGV2aWNlT3Jp
ZW50YXRpb24oKTsKKyAgICByZXR1cm4gbV9wYWdlLmRldmljZU9yaWVudGF0aW9uKCk7CiB9CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlBhZ2UuY3BwCmluZGV4IGU5NGY4N2E5ZGRmNzlhYzM0MGRmZTAxNWRkNmI1ZTMyYTRh
ZWRiMjguLmM1MDJjNjI3ZTI5MmJiZTUzNTIyYTlhNzc0MzIyMDdiMTgwZTE2YTEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKQEAgLTM0Miw3ICsz
NDIsNyBAQCBXZWJQYWdlOjpXZWJQYWdlKHVpbnQ2NF90IHBhZ2VJRCwgY29uc3QgV2ViUGFnZUNy
ZWF0aW9uUGFyYW1ldGVycyYgcGFyYW1ldGVycykKICNlbmRpZgogCiAgICAgUGFnZUNvbmZpZ3Vy
YXRpb24gcGFnZUNvbmZpZ3VyYXRpb24obWFrZVVuaXF1ZVJlZjxXZWJFZGl0b3JDbGllbnQ+KHRo
aXMpLCBXZWJTb2NrZXRQcm92aWRlcjo6Y3JlYXRlKCkpOwotICAgIHBhZ2VDb25maWd1cmF0aW9u
LmNocm9tZUNsaWVudCA9IG5ldyBXZWJDaHJvbWVDbGllbnQodGhpcyk7CisgICAgcGFnZUNvbmZp
Z3VyYXRpb24uY2hyb21lQ2xpZW50ID0gbmV3IFdlYkNocm9tZUNsaWVudCgqdGhpcyk7CiAjaWYg
RU5BQkxFKENPTlRFWFRfTUVOVVMpCiAgICAgcGFnZUNvbmZpZ3VyYXRpb24uY29udGV4dE1lbnVD
bGllbnQgPSBuZXcgV2ViQ29udGV4dE1lbnVDbGllbnQodGhpcyk7CiAjZW5kaWYKQEAgLTY5OCw3
ICs2OTgsOCBAQCB2b2lkIFdlYlBhZ2U6OmluaXRpYWxpemVJbmplY3RlZEJ1bmRsZURpYWdub3N0
aWNMb2dnaW5nQ2xpZW50KFdLQnVuZGxlUGFnZURpYWdubwogfQogCiAjaWYgRU5BQkxFKE5FVFND
QVBFX1BMVUdJTl9BUEkpCi1QYXNzUmVmUHRyPFBsdWdpbj4gV2ViUGFnZTo6Y3JlYXRlUGx1Z2lu
KFdlYkZyYW1lKiBmcmFtZSwgSFRNTFBsdWdJbkVsZW1lbnQqIHBsdWdpbkVsZW1lbnQsIGNvbnN0
IFBsdWdpbjo6UGFyYW1ldGVycyYgcGFyYW1ldGVycywgU3RyaW5nJiBuZXdNSU1FVHlwZSkKKwor
UmVmUHRyPFBsdWdpbj4gV2ViUGFnZTo6Y3JlYXRlUGx1Z2luKFdlYkZyYW1lKiBmcmFtZSwgSFRN
TFBsdWdJbkVsZW1lbnQqIHBsdWdpbkVsZW1lbnQsIGNvbnN0IFBsdWdpbjo6UGFyYW1ldGVycyYg
cGFyYW1ldGVycywgU3RyaW5nJiBuZXdNSU1FVHlwZSkKIHsKICAgICBTdHJpbmcgZnJhbWVVUkxT
dHJpbmcgPSBmcmFtZS0+Y29yZUZyYW1lKCktPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCktPnJl
c3BvbnNlVVJMKCkuc3RyaW5nKCk7CiAgICAgU3RyaW5nIHBhZ2VVUkxTdHJpbmcgPSBtX3BhZ2Ut
Pm1haW5GcmFtZSgpLmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCktPnJlc3BvbnNlVVJMKCkuc3Ry
aW5nKCk7CkBAIC0xMzI1LDcgKzEzMjYsNyBAQCB2b2lkIFdlYlBhZ2U6OmxheW91dElmTmVlZGVk
KCkKIAogV2ViUGFnZSogV2ViUGFnZTo6ZnJvbUNvcmVQYWdlKFBhZ2UqIHBhZ2UpCiB7Ci0gICAg
cmV0dXJuIHN0YXRpY19jYXN0PFdlYkNocm9tZUNsaWVudCY+KHBhZ2UtPmNocm9tZSgpLmNsaWVu
dCgpKS5wYWdlKCk7CisgICAgcmV0dXJuICZzdGF0aWNfY2FzdDxXZWJDaHJvbWVDbGllbnQmPihw
YWdlLT5jaHJvbWUoKS5jbGllbnQoKSkucGFnZSgpOwogfQogCiB2b2lkIFdlYlBhZ2U6OnNldFNp
emUoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgdmlld1NpemUpCkBAIC0xNzkxLDcgKzE3OTIsOCBA
QCB2b2lkIFdlYlBhZ2U6OnBvc3RJbmplY3RlZEJ1bmRsZU1lc3NhZ2UoY29uc3QgU3RyaW5nJiBt
ZXNzYWdlTmFtZSwgY29uc3QgVXNlckRhdAogfQogCiAjaWYgIVBMQVRGT1JNKElPUykKLXZvaWQg
V2ViUGFnZTo6c2V0SGVhZGVyUGFnZUJhbm5lcihQYXNzUmVmUHRyPFBhZ2VCYW5uZXI+IHBhZ2VC
YW5uZXIpCisKK3ZvaWQgV2ViUGFnZTo6c2V0SGVhZGVyUGFnZUJhbm5lcihQYWdlQmFubmVyKiBw
YWdlQmFubmVyKQogewogICAgIGlmIChtX2hlYWRlckJhbm5lcikKICAgICAgICAgbV9oZWFkZXJC
YW5uZXItPmRldGFjaEZyb21QYWdlKCk7CkBAIC0xODA3LDcgKzE4MDksNyBAQCBQYWdlQmFubmVy
KiBXZWJQYWdlOjpoZWFkZXJQYWdlQmFubmVyKCkKICAgICByZXR1cm4gbV9oZWFkZXJCYW5uZXIu
Z2V0KCk7CiB9CiAKLXZvaWQgV2ViUGFnZTo6c2V0Rm9vdGVyUGFnZUJhbm5lcihQYXNzUmVmUHRy
PFBhZ2VCYW5uZXI+IHBhZ2VCYW5uZXIpCit2b2lkIFdlYlBhZ2U6OnNldEZvb3RlclBhZ2VCYW5u
ZXIoUGFnZUJhbm5lciogcGFnZUJhbm5lcikKIHsKICAgICBpZiAobV9mb290ZXJCYW5uZXIpCiAg
ICAgICAgIG1fZm9vdGVyQmFubmVyLT5kZXRhY2hGcm9tUGFnZSgpOwpAQCAtMzU3NSw2ICszNTc3
LDcgQEAgdm9pZCBXZWJQYWdlOjpzZXRBY3RpdmVQb3B1cE1lbnUoV2ViUG9wdXBNZW51KiBtZW51
KQogfQogCiAjaWYgRU5BQkxFKElOUFVUX1RZUEVfQ09MT1IpCisKIHZvaWQgV2ViUGFnZTo6c2V0
QWN0aXZlQ29sb3JDaG9vc2VyKFdlYkNvbG9yQ2hvb3NlciogY29sb3JDaG9vc2VyKQogewogICAg
IG1fYWN0aXZlQ29sb3JDaG9vc2VyID0gY29sb3JDaG9vc2VyOwpAQCAtMzU4OSwxMSArMzU5Miwx
MiBAQCB2b2lkIFdlYlBhZ2U6OmRpZENob29zZUNvbG9yKGNvbnN0IFdlYkNvcmU6OkNvbG9yJiBj
b2xvcikKIHsKICAgICBtX2FjdGl2ZUNvbG9yQ2hvb3Nlci0+ZGlkQ2hvb3NlQ29sb3IoY29sb3Ip
OwogfQorCiAjZW5kaWYKIAotdm9pZCBXZWJQYWdlOjpzZXRBY3RpdmVPcGVuUGFuZWxSZXN1bHRM
aXN0ZW5lcihQYXNzUmVmUHRyPFdlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyPiBvcGVuUGFuZWxS
ZXN1bHRMaXN0ZW5lcikKK3ZvaWQgV2ViUGFnZTo6c2V0QWN0aXZlT3BlblBhbmVsUmVzdWx0TGlz
dGVuZXIoUmVmPFdlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyPiYmIG9wZW5QYW5lbFJlc3VsdExp
c3RlbmVyKQogewotICAgIG1fYWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIgPSBvcGVuUGFu
ZWxSZXN1bHRMaXN0ZW5lcjsKKyAgICBtX2FjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyID0g
V1RGTW92ZShvcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcik7CiB9CiAKIGJvb2wgV2ViUGFnZTo6Zmlu
ZFN0cmluZ0Zyb21JbmplY3RlZEJ1bmRsZShjb25zdCBTdHJpbmcmIHRhcmdldCwgRmluZE9wdGlv
bnMgb3B0aW9ucykKQEAgLTU0MDgsMTEgKzU0MTIsMTEgQEAgYm9vbCBXZWJQYWdlOjpwbHVnSW5J
c1ByaW1hcnlTaXplKFdlYkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVsZW1lbnQmIHBsdWdJbkltYWdl
RWwKIAogI2VuZGlmIC8vIEVOQUJMRShQUklNQVJZX1NOQVBTSE9UVEVEX1BMVUdJTl9IRVVSSVNU
SUMpCiAKLVBhc3NSZWZQdHI8UmFuZ2U+IFdlYlBhZ2U6OmN1cnJlbnRTZWxlY3Rpb25Bc1Jhbmdl
KCkKK1JlZlB0cjxSYW5nZT4gV2ViUGFnZTo6Y3VycmVudFNlbGVjdGlvbkFzUmFuZ2UoKQogewot
ICAgIEZyYW1lKiBmcmFtZSA9IGZyYW1lV2l0aFNlbGVjdGlvbihtX3BhZ2UuZ2V0KCkpOworICAg
IGF1dG8qIGZyYW1lID0gZnJhbWVXaXRoU2VsZWN0aW9uKG1fcGFnZS5nZXQoKSk7CiAgICAgaWYg
KCFmcmFtZSkKLSAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIHJldHVybiBudWxscHRyOwogCiAg
ICAgcmV0dXJuIGZyYW1lLT5zZWxlY3Rpb24oKS50b05vcm1hbGl6ZWRSYW5nZSgpOwogfQpAQCAt
NTUxMiw3ICs1NTE2LDcgQEAgdm9pZCBXZWJQYWdlOjpnZXRTYW1wbGluZ1Byb2ZpbGVyT3V0cHV0
KHVpbnQ2NF90IGNhbGxiYWNrSUQpCiAjZW5kaWYKIH0KIAotUGFzc1JlZlB0cjxXZWJDb3JlOjpS
YW5nZT4gV2ViUGFnZTo6cmFuZ2VGcm9tRWRpdGluZ1JhbmdlKFdlYkNvcmU6OkZyYW1lJiBmcmFt
ZSwgY29uc3QgRWRpdGluZ1JhbmdlJiByYW5nZSwgRWRpdGluZ1JhbmdlSXNSZWxhdGl2ZVRvIGVk
aXRpbmdSYW5nZUlzUmVsYXRpdmVUbykKK1JlZlB0cjxXZWJDb3JlOjpSYW5nZT4gV2ViUGFnZTo6
cmFuZ2VGcm9tRWRpdGluZ1JhbmdlKFdlYkNvcmU6OkZyYW1lJiBmcmFtZSwgY29uc3QgRWRpdGlu
Z1JhbmdlJiByYW5nZSwgRWRpdGluZ1JhbmdlSXNSZWxhdGl2ZVRvIGVkaXRpbmdSYW5nZUlzUmVs
YXRpdmVUbykKIHsKICAgICBBU1NFUlQocmFuZ2UubG9jYXRpb24gIT0gbm90Rm91bmQpOwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oIGIv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAppbmRleCA4MWNlNzUx
ZjhlYmQxZDhlMGUwYjdkY2E1ZmYwN2JiNzNkM2QyMTY1Li5iNjVkOTNiYzdhZWNlYzZkNzgyOTRi
ZjFlY2JiNjU4YThmNTk4YjI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYlBhZ2UvV2ViUGFnZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJQYWdlLmgKQEAgLTc0LDcgKzc0LDYgQEAKICNpbmNsdWRlIDxtZW1vcnk+CiAjaW5jbHVk
ZSA8d3RmL0hhc2hNYXAuaD4KICNpbmNsdWRlIDx3dGYvTW9ub3RvbmljVGltZS5oPgotI2luY2x1
ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgogI2luY2x1ZGUg
PHd0Zi9SdW5Mb29wLmg+CiAjaW5jbHVkZSA8d3RmL1NlY29uZHMuaD4KQEAgLTMxNCw3ICszMTMs
NyBAQCBwdWJsaWM6CiAjZW5kaWYKIAogICAgIFdlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyKiBh
Y3RpdmVPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcigpIGNvbnN0IHsgcmV0dXJuIG1fYWN0aXZlT3Bl
blBhbmVsUmVzdWx0TGlzdGVuZXIuZ2V0KCk7IH0KLSAgICB2b2lkIHNldEFjdGl2ZU9wZW5QYW5l
bFJlc3VsdExpc3RlbmVyKFBhc3NSZWZQdHI8V2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXI+KTsK
KyAgICB2b2lkIHNldEFjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyKFJlZjxXZWJPcGVuUGFu
ZWxSZXN1bHRMaXN0ZW5lcj4mJik7CiAKICAgICB2b2lkIGRpZFJlY2VpdmVNZXNzYWdlKElQQzo6
Q29ubmVjdGlvbiYsIElQQzo6RGVjb2RlciYpIG92ZXJyaWRlOwogICAgIHZvaWQgZGlkUmVjZWl2
ZVN5bmNNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYsIElQQzo6RGVjb2RlciYsIHN0ZDo6dW5pcXVl
X3B0cjxJUEM6OkVuY29kZXI+Jikgb3ZlcnJpZGU7CkBAIC0zNTUsMTYgKzM1NCwxNiBAQCBwdWJs
aWM6CiAgICAgV2ViQ29yZTo6TWFpbkZyYW1lKiBtYWluRnJhbWUoKSBjb25zdDsgLy8gTWF5IHJl
dHVybiAwLgogICAgIFdlYkNvcmU6OkZyYW1lVmlldyogbWFpbkZyYW1lVmlldygpIGNvbnN0OyAv
LyBNYXkgcmV0dXJuIDAuCiAKLSAgICBQYXNzUmVmUHRyPFdlYkNvcmU6OlJhbmdlPiBjdXJyZW50
U2VsZWN0aW9uQXNSYW5nZSgpOworICAgIFJlZlB0cjxXZWJDb3JlOjpSYW5nZT4gY3VycmVudFNl
bGVjdGlvbkFzUmFuZ2UoKTsKIAogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQotICAg
IFBhc3NSZWZQdHI8UGx1Z2luPiBjcmVhdGVQbHVnaW4oV2ViRnJhbWUqLCBXZWJDb3JlOjpIVE1M
UGx1Z0luRWxlbWVudCosIGNvbnN0IFBsdWdpbjo6UGFyYW1ldGVycyYsIFN0cmluZyYgbmV3TUlN
RVR5cGUpOworICAgIFJlZlB0cjxQbHVnaW4+IGNyZWF0ZVBsdWdpbihXZWJGcmFtZSosIFdlYkNv
cmU6OkhUTUxQbHVnSW5FbGVtZW50KiwgY29uc3QgUGx1Z2luOjpQYXJhbWV0ZXJzJiwgU3RyaW5n
JiBuZXdNSU1FVHlwZSk7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShXRUJHTCkKICAgICBXZWJDb3Jl
OjpXZWJHTExvYWRQb2xpY3kgd2ViR0xQb2xpY3lGb3JVUkwoV2ViRnJhbWUqLCBjb25zdCBTdHJp
bmcmKTsKICAgICBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgcmVzb2x2ZVdlYkdMUG9saWN5Rm9y
VVJMKFdlYkZyYW1lKiwgY29uc3QgU3RyaW5nJik7Ci0jZW5kaWYgLy8gRU5BQkxFKFdFQkdMKQor
I2VuZGlmCiAgICAgCiAgICAgZW51bSBjbGFzcyBJbmNsdWRlUG9zdExheW91dERhdGFIaW50IHsg
Tm8sIFllcyB9OwogICAgIEVkaXRvclN0YXRlIGVkaXRvclN0YXRlKEluY2x1ZGVQb3N0TGF5b3V0
RGF0YUhpbnQgPSBJbmNsdWRlUG9zdExheW91dERhdGFIaW50OjpZZXMpIGNvbnN0OwpAQCAtNDU1
LDIxICs0NTQsMjEgQEAgcHVibGljOgogCiAgICAgYm9vbCBoYXNDYWNoZWRXaW5kb3dGcmFtZSgp
IGNvbnN0IHsgcmV0dXJuIG1faGFzQ2FjaGVkV2luZG93RnJhbWU7IH0KIAotI2lmICFQTEFURk9S
TShJT1MpCi0gICAgdm9pZCBzZXRUb3BPdmVyaGFuZ0ltYWdlKFBhc3NSZWZQdHI8V2ViSW1hZ2U+
KTsKLSAgICB2b2lkIHNldEJvdHRvbU92ZXJoYW5nSW1hZ2UoUGFzc1JlZlB0cjxXZWJJbWFnZT4p
OwotI2VuZGlmIC8vICFQTEFURk9STShJT1MpCi0KICAgICB2b2lkIHVwZGF0ZUhlYWRlckFuZEZv
b3RlckxheWVyc0ZvckRldmljZVNjYWxlQ2hhbmdlKGZsb2F0IHNjYWxlRmFjdG9yKTsKLSNlbmRp
ZiAvLyBQTEFURk9STShDT0NPQSkKKyNlbmRpZgorCisjaWYgUExBVEZPUk0oTUFDKQorICAgIHZv
aWQgc2V0VG9wT3ZlcmhhbmdJbWFnZShXZWJJbWFnZSopOworICAgIHZvaWQgc2V0Qm90dG9tT3Zl
cmhhbmdJbWFnZShXZWJJbWFnZSopOworI2VuZGlmCiAKICAgICBib29sIHdpbmRvd0lzRm9jdXNl
ZCgpIGNvbnN0OwogICAgIGJvb2wgd2luZG93QW5kV2ViUGFnZUFyZUZvY3VzZWQoKSBjb25zdDsK
IAogI2lmICFQTEFURk9STShJT1MpCi0gICAgdm9pZCBzZXRIZWFkZXJQYWdlQmFubmVyKFBhc3NS
ZWZQdHI8UGFnZUJhbm5lcj4pOworICAgIHZvaWQgc2V0SGVhZGVyUGFnZUJhbm5lcihQYWdlQmFu
bmVyKik7CiAgICAgUGFnZUJhbm5lciogaGVhZGVyUGFnZUJhbm5lcigpOwotICAgIHZvaWQgc2V0
Rm9vdGVyUGFnZUJhbm5lcihQYXNzUmVmUHRyPFBhZ2VCYW5uZXI+KTsKKyAgICB2b2lkIHNldEZv
b3RlclBhZ2VCYW5uZXIoUGFnZUJhbm5lciopOwogICAgIFBhZ2VCYW5uZXIqIGZvb3RlclBhZ2VC
YW5uZXIoKTsKIAogICAgIHZvaWQgaGlkZVBhZ2VCYW5uZXJzKCk7CkBAIC00NzcsNyArNDc2LDcg
QEAgcHVibGljOgogICAgIAogICAgIHZvaWQgc2V0SGVhZGVyQmFubmVySGVpZ2h0Rm9yVGVzdGlu
ZyhpbnQpOwogICAgIHZvaWQgc2V0Rm9vdGVyQmFubmVySGVpZ2h0Rm9yVGVzdGluZyhpbnQpOwot
I2VuZGlmIC8vICFQTEFURk9STShJT1MpCisjZW5kaWYKIAogICAgIFdlYkNvcmU6OkludFBvaW50
IHNjcmVlblRvUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKTsKICAgICBXZWJDb3Jl
OjpJbnRSZWN0IHJvb3RWaWV3VG9TY3JlZW4oY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpOwpAQCAt
NjIxLDcgKzYyMCw3IEBAIHB1YmxpYzoKICAgICBib29sIGhhc0xvY2FsRGF0YUZvclVSTChjb25z
dCBXZWJDb3JlOjpVUkwmKTsKICAgICBTdHJpbmcgY2FjaGVkUmVzcG9uc2VNSU1FVHlwZUZvclVS
TChjb25zdCBXZWJDb3JlOjpVUkwmKTsKICAgICBTdHJpbmcgY2FjaGVkU3VnZ2VzdGVkRmlsZW5h
bWVGb3JVUkwoY29uc3QgV2ViQ29yZTo6VVJMJik7Ci0gICAgUGFzc1JlZlB0cjxXZWJDb3JlOjpT
aGFyZWRCdWZmZXI+IGNhY2hlZFJlc3BvbnNlRGF0YUZvclVSTChjb25zdCBXZWJDb3JlOjpVUkwm
KTsKKyAgICBSZWZQdHI8V2ViQ29yZTo6U2hhcmVkQnVmZmVyPiBjYWNoZWRSZXNwb25zZURhdGFG
b3JVUkwoY29uc3QgV2ViQ29yZTo6VVJMJik7CiAKICAgICBzdGF0aWMgYm9vbCBjYW5IYW5kbGVS
ZXF1ZXN0KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpOwogCkBAIC0xMDE2LDkgKzEw
MTUsMTEgQEAgcHJpdmF0ZToKICAgICBib29sIHNob3VsZFN3aXRjaFRvQmxvY2tNb2RlRm9ySGFu
ZGxlKGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBoYW5kbGVQb2ludCwgU2VsZWN0aW9uSGFuZGxl
UG9zaXRpb24pOwogICAgIFJlZlB0cjxXZWJDb3JlOjpSYW5nZT4gc3dpdGNoVG9CbG9ja1NlbGVj
dGlvbkF0UG9pbnQoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmLCBTZWxlY3Rpb25IYW5kbGVQb3Np
dGlvbik7CiAjZW5kaWYKKwogI2lmICFQTEFURk9STShDT0NPQSkKICAgICBzdGF0aWMgY29uc3Qg
Y2hhciogaW50ZXJwcmV0S2V5RXZlbnQoY29uc3QgV2ViQ29yZTo6S2V5Ym9hcmRFdmVudCopOwog
I2VuZGlmCisKICAgICBib29sIHBlcmZvcm1EZWZhdWx0QmVoYXZpb3JGb3JLZXlFdmVudChjb25z
dCBXZWJLZXlib2FyZEV2ZW50Jik7CiAKICNpZiBQTEFURk9STShNQUMpCkBAIC0xMjA2LDcgKzEy
MDcsNyBAQCBwcml2YXRlOgogICAgIHN0YXRpYyBQbHVnaW5WaWV3KiBmb2N1c2VkUGx1Z2luVmll
d0ZvckZyYW1lKFdlYkNvcmU6OkZyYW1lJik7CiAgICAgc3RhdGljIFBsdWdpblZpZXcqIHBsdWdp
blZpZXdGb3JGcmFtZShXZWJDb3JlOjpGcmFtZSopOwogCi0gICAgc3RhdGljIFBhc3NSZWZQdHI8
V2ViQ29yZTo6UmFuZ2U+IHJhbmdlRnJvbUVkaXRpbmdSYW5nZShXZWJDb3JlOjpGcmFtZSYsIGNv
bnN0IEVkaXRpbmdSYW5nZSYsIEVkaXRpbmdSYW5nZUlzUmVsYXRpdmVUbyA9IEVkaXRpbmdSYW5n
ZUlzUmVsYXRpdmVUbzo6RWRpdGFibGVSb290KTsKKyAgICBzdGF0aWMgUmVmUHRyPFdlYkNvcmU6
OlJhbmdlPiByYW5nZUZyb21FZGl0aW5nUmFuZ2UoV2ViQ29yZTo6RnJhbWUmLCBjb25zdCBFZGl0
aW5nUmFuZ2UmLCBFZGl0aW5nUmFuZ2VJc1JlbGF0aXZlVG8gPSBFZGl0aW5nUmFuZ2VJc1JlbGF0
aXZlVG86OkVkaXRhYmxlUm9vdCk7CiAKICAgICB2b2lkIHJlcG9ydFVzZWRGZWF0dXJlcygpOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvZWZsL1dlYlBh
Z2VFZmwuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL2VmbC9XZWJQYWdl
RWZsLmNwcAppbmRleCAxNWExZGNlYTExMmMyZTcxM2JkMzEzY2Y2N2JhYzM2MTZkNmIzMDdjLi5k
MjFlZDhiMGE3ZDgzM2YwZWI3Y2NkYTZlOTUxNWNhNzNiMWJiZWY2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvZWZsL1dlYlBhZ2VFZmwuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9lZmwvV2ViUGFnZUVmbC5jcHAKQEAgLTE1
Nyw3ICsxNTcsNyBAQCBTdHJpbmcgV2ViUGFnZTo6Y2FjaGVkU3VnZ2VzdGVkRmlsZW5hbWVGb3JV
UkwoY29uc3QgVVJMJikKICAgICByZXR1cm4gU3RyaW5nKCk7CiB9CiAKLVBhc3NSZWZQdHI8U2hh
cmVkQnVmZmVyPiBXZWJQYWdlOjpjYWNoZWRSZXNwb25zZURhdGFGb3JVUkwoY29uc3QgVVJMJikK
K1JlZlB0cjxTaGFyZWRCdWZmZXI+IFdlYlBhZ2U6OmNhY2hlZFJlc3BvbnNlRGF0YUZvclVSTChj
b25zdCBVUkwmKQogewogICAgIG5vdEltcGxlbWVudGVkKCk7CiAgICAgcmV0dXJuIDA7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvZ3RrL1dlYlBhZ2VHdGsu
Y3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL2d0ay9XZWJQYWdlR3RrLmNw
cAppbmRleCBkNzY2NjgwNDMwMmU1MjdlNDdmMjRiOTk4MmRkZWQ2NDljMGE1ZDIzLi5mMGUzNGVm
ZGMzM2I2ODZlN2I3MTRlMDgxMDY2MzNkYTI4YzhlZDg5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvZ3RrL1dlYlBhZ2VHdGsuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9ndGsvV2ViUGFnZUd0ay5jcHAKQEAgLTE4NSwxMyAr
MTg1LDEyIEBAIFN0cmluZyBXZWJQYWdlOjpjYWNoZWRTdWdnZXN0ZWRGaWxlbmFtZUZvclVSTChj
b25zdCBVUkwmKQogICAgIHJldHVybiBTdHJpbmcoKTsKIH0KIAotUGFzc1JlZlB0cjxTaGFyZWRC
dWZmZXI+IFdlYlBhZ2U6OmNhY2hlZFJlc3BvbnNlRGF0YUZvclVSTChjb25zdCBVUkwmKQorUmVm
UHRyPFNoYXJlZEJ1ZmZlcj4gV2ViUGFnZTo6Y2FjaGVkUmVzcG9uc2VEYXRhRm9yVVJMKGNvbnN0
IFVSTCYpCiB7CiAgICAgbm90SW1wbGVtZW50ZWQoKTsKICAgICByZXR1cm4gMDsKIH0KIAotCiBT
dHJpbmcgV2ViUGFnZTo6cGxhdGZvcm1Vc2VyQWdlbnQoY29uc3QgVVJMJiB1cmwpIGNvbnN0CiB7
CiAgICAgaWYgKHVybC5pc051bGwoKSB8fCAhbV9wYWdlLT5zZXR0aW5ncygpLm5lZWRzU2l0ZVNw
ZWNpZmljUXVpcmtzKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvbWFjL1dlYlBhZ2VNYWMubW0gYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBh
Z2UvbWFjL1dlYlBhZ2VNYWMubW0KaW5kZXggZjdlYjhkNzBjNmQ2MjhlNmViZDM3OWE2Mjg5NmY0
MTJhNWNiYmU1YS4uMTZjYzczNGJlY2M1YTY2YmQ3ODk4MmQxOTk4NDI1NGExMjdhYmNmNiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9XZWJQYWdlTWFj
Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvV2ViUGFnZU1h
Yy5tbQpAQCAtNzI0LDcgKzcyNCw3IEBAIFN0cmluZyBXZWJQYWdlOjpjYWNoZWRSZXNwb25zZU1J
TUVUeXBlRm9yVVJMKGNvbnN0IFVSTCYgdXJsKQogICAgIHJldHVybiBbW2NhY2hlZFJlc3BvbnNl
Rm9yVVJMKHRoaXMsIHVybCkgcmVzcG9uc2VdIE1JTUVUeXBlXTsKIH0KIAotUGFzc1JlZlB0cjxT
aGFyZWRCdWZmZXI+IFdlYlBhZ2U6OmNhY2hlZFJlc3BvbnNlRGF0YUZvclVSTChjb25zdCBVUkwm
IHVybCkKK1JlZlB0cjxTaGFyZWRCdWZmZXI+IFdlYlBhZ2U6OmNhY2hlZFJlc3BvbnNlRGF0YUZv
clVSTChjb25zdCBVUkwmIHVybCkKIHsKICAgICByZXR1cm4gU2hhcmVkQnVmZmVyOjp3cmFwTlNE
YXRhKFtjYWNoZWRSZXNwb25zZUZvclVSTCh0aGlzLCB1cmwpIGRhdGFdKTsKIH0KQEAgLTc3Mywz
NyArNzczLDMzIEBAIHZvaWQgV2ViUGFnZTo6YWNjZXB0c0ZpcnN0TW91c2UoaW50IGV2ZW50TnVt
YmVyLCBjb25zdCBXZWJLaXQ6OldlYk1vdXNlRXZlbnQmIGV2CiAgICAgICAgIHJlc3VsdCA9ICEh
aGl0UmVzdWx0LnNjcm9sbGJhcigpOwogfQogCi12b2lkIFdlYlBhZ2U6OnNldFRvcE92ZXJoYW5n
SW1hZ2UoUGFzc1JlZlB0cjxXZWJJbWFnZT4gaW1hZ2UpCit2b2lkIFdlYlBhZ2U6OnNldFRvcE92
ZXJoYW5nSW1hZ2UoV2ViSW1hZ2UqIGltYWdlKQogewotICAgIEZyYW1lVmlldyogZnJhbWVWaWV3
ID0gbV9tYWluRnJhbWUtPmNvcmVGcmFtZSgpLT52aWV3KCk7CisgICAgYXV0byogZnJhbWVWaWV3
ID0gbV9tYWluRnJhbWUtPmNvcmVGcmFtZSgpLT52aWV3KCk7CiAgICAgaWYgKCFmcmFtZVZpZXcp
CiAgICAgICAgIHJldHVybjsKIAotICAgIEdyYXBoaWNzTGF5ZXIqIGxheWVyID0gZnJhbWVWaWV3
LT5zZXRXYW50c0xheWVyRm9yVG9wT3ZlckhhbmdBcmVhKGltYWdlLmdldCgpKTsKKyAgICBhdXRv
KiBsYXllciA9IGZyYW1lVmlldy0+c2V0V2FudHNMYXllckZvclRvcE92ZXJIYW5nQXJlYShpbWFn
ZSk7CiAgICAgaWYgKCFsYXllcikKICAgICAgICAgcmV0dXJuOwogCiAgICAgbGF5ZXItPnNldFNp
emUoaW1hZ2UtPnNpemUoKSk7CiAgICAgbGF5ZXItPnNldFBvc2l0aW9uKEZsb2F0UG9pbnQoMCwg
LWltYWdlLT5zaXplKCkuaGVpZ2h0KCkpKTsKLQotICAgIFJldGFpblB0cjxDR0ltYWdlUmVmPiBj
Z0ltYWdlID0gaW1hZ2UtPmJpdG1hcCgpLm1ha2VDR0ltYWdlQ29weSgpOwotICAgIGxheWVyLT5w
bGF0Zm9ybUxheWVyKCkuY29udGVudHMgPSAoaWQpY2dJbWFnZS5nZXQoKTsKKyAgICBsYXllci0+
cGxhdGZvcm1MYXllcigpLmNvbnRlbnRzID0gKGlkKWltYWdlLT5iaXRtYXAoKS5tYWtlQ0dJbWFn
ZUNvcHkoKS5nZXQoKTsKIH0KIAotdm9pZCBXZWJQYWdlOjpzZXRCb3R0b21PdmVyaGFuZ0ltYWdl
KFBhc3NSZWZQdHI8V2ViSW1hZ2U+IGltYWdlKQordm9pZCBXZWJQYWdlOjpzZXRCb3R0b21PdmVy
aGFuZ0ltYWdlKFdlYkltYWdlKiBpbWFnZSkKIHsKLSAgICBGcmFtZVZpZXcqIGZyYW1lVmlldyA9
IG1fbWFpbkZyYW1lLT5jb3JlRnJhbWUoKS0+dmlldygpOworICAgIGF1dG8qIGZyYW1lVmlldyA9
IG1fbWFpbkZyYW1lLT5jb3JlRnJhbWUoKS0+dmlldygpOwogICAgIGlmICghZnJhbWVWaWV3KQog
ICAgICAgICByZXR1cm47CiAKLSAgICBHcmFwaGljc0xheWVyKiBsYXllciA9IGZyYW1lVmlldy0+
c2V0V2FudHNMYXllckZvckJvdHRvbU92ZXJIYW5nQXJlYShpbWFnZS5nZXQoKSk7CisgICAgYXV0
byogbGF5ZXIgPSBmcmFtZVZpZXctPnNldFdhbnRzTGF5ZXJGb3JCb3R0b21PdmVySGFuZ0FyZWEo
aW1hZ2UpOwogICAgIGlmICghbGF5ZXIpCiAgICAgICAgIHJldHVybjsKIAogICAgIGxheWVyLT5z
ZXRTaXplKGltYWdlLT5zaXplKCkpOwotICAgIAotICAgIFJldGFpblB0cjxDR0ltYWdlUmVmPiBj
Z0ltYWdlID0gaW1hZ2UtPmJpdG1hcCgpLm1ha2VDR0ltYWdlQ29weSgpOwotICAgIGxheWVyLT5w
bGF0Zm9ybUxheWVyKCkuY29udGVudHMgPSAoaWQpY2dJbWFnZS5nZXQoKTsKKyAgICBsYXllci0+
cGxhdGZvcm1MYXllcigpLmNvbnRlbnRzID0gKGlkKWltYWdlLT5iaXRtYXAoKS5tYWtlQ0dJbWFn
ZUNvcHkoKS5nZXQoKTsKIH0KIAogdm9pZCBXZWJQYWdlOjp1cGRhdGVIZWFkZXJBbmRGb290ZXJM
YXllcnNGb3JEZXZpY2VTY2FsZUNoYW5nZShmbG9hdCBzY2FsZUZhY3RvcikKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCmluZGV4IGMxMjgwMTgzMDM1NjAyMmFiZjMwZjg3
ODczNzk2YzM1M2RlM2JiZjQuLjNlNWNiYWRhYjI0NDQyODYwNTAxMzcwMmU5MzQ1MDIzZjE2MGIy
OTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAK
KysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcApAQCAtMTU4LDIy
ICsxNTgsMTIgQEAgV2ViUHJvY2Vzczo6V2ViUHJvY2VzcygpCiAjaWYgUExBVEZPUk0oSU9TKQog
ICAgICwgbV92aWV3VXBkYXRlRGlzcGF0Y2hlcihWaWV3VXBkYXRlRGlzcGF0Y2hlcjo6Y3JlYXRl
KCkpCiAjZW5kaWYKLSAgICAsIG1faW5EaWRDbG9zZShmYWxzZSkKLSAgICAsIG1faGFzU2V0Q2Fj
aGVNb2RlbChmYWxzZSkKLSAgICAsIG1fY2FjaGVNb2RlbChDYWNoZU1vZGVsRG9jdW1lbnRWaWV3
ZXIpCi0gICAgLCBtX2Z1bGxLZXlib2FyZEFjY2Vzc0VuYWJsZWQoZmFsc2UpCi0gICAgLCBtX3Rl
eHRDaGVja2VyU3RhdGUoKQotICAgICwgbV9pY29uRGF0YWJhc2VQcm94eSgqbmV3IFdlYkljb25E
YXRhYmFzZVByb3h5KHRoaXMpKQorICAgICwgbV9pY29uRGF0YWJhc2VQcm94eSgqbmV3IFdlYklj
b25EYXRhYmFzZVByb3h5KCp0aGlzKSkKICAgICAsIG1fd2ViTG9hZGVyU3RyYXRlZ3koKm5ldyBX
ZWJMb2FkZXJTdHJhdGVneSkKICAgICAsIG1fZG5zUHJlZmV0Y2hIeXN0ZXJlcmlzKFt0aGlzXShI
eXN0ZXJlc2lzU3RhdGUgc3RhdGUpIHsgaWYgKHN0YXRlID09IEh5c3RlcmVzaXNTdGF0ZTo6U3Rv
cHBlZCkgbV9kbnNQcmVmZXRjaGVkSG9zdHMuY2xlYXIoKTsgfSkKICNpZiBFTkFCTEUoTkVUU0NB
UEVfUExVR0lOX0FQSSkKICAgICAsIG1fcGx1Z2luUHJvY2Vzc0Nvbm5lY3Rpb25NYW5hZ2VyKFBs
dWdpblByb2Nlc3NDb25uZWN0aW9uTWFuYWdlcjo6Y3JlYXRlKCkpCiAjZW5kaWYKLSNpZiBFTkFC
TEUoU0VSVklDRV9DT05UUk9MUykKLSAgICAsIG1faGFzSW1hZ2VTZXJ2aWNlcyhmYWxzZSkKLSAg
ICAsIG1faGFzU2VsZWN0aW9uU2VydmljZXMoZmFsc2UpCi0gICAgLCBtX2hhc1JpY2hDb250ZW50
U2VydmljZXMoZmFsc2UpCi0jZW5kaWYKICAgICAsIG1fbm9uVmlzaWJsZVByb2Nlc3NDbGVhbnVw
VGltZXIoKnRoaXMsICZXZWJQcm9jZXNzOjpub25WaXNpYmxlUHJvY2Vzc0NsZWFudXBUaW1lckZp
cmVkKQogICAgICwgbV9zdGF0aXN0aWNzQ2hhbmdlZFRpbWVyKCp0aGlzLCAmV2ViUHJvY2Vzczo6
c3RhdGlzdGljc0NoYW5nZWRUaW1lckZpcmVkKQogI2lmIFBMQVRGT1JNKElPUykKQEAgLTE5NCw5
ICsxODQsMTEgQEAgV2ViUHJvY2Vzczo6V2ViUHJvY2VzcygpCiAjaWYgRU5BQkxFKE5PVElGSUNB
VElPTlMpIHx8IEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9OUykKICAgICBhZGRTdXBwbGVtZW50
PFdlYk5vdGlmaWNhdGlvbk1hbmFnZXI+KCk7CiAjZW5kaWYKKwogI2lmIEVOQUJMRShMRUdBQ1lf
RU5DUllQVEVEX01FRElBKQogICAgIGFkZFN1cHBsZW1lbnQ8V2ViTWVkaWFLZXlTdG9yYWdlTWFu
YWdlcj4oKTsKICNlbmRpZgorCiAgICAgbV9wbHVnSW5BdXRvU3RhcnRPcmlnaW5IYXNoZXMuYWRk
KFNlc3Npb25JRDo6ZGVmYXVsdFNlc3Npb25JRCgpLCBIYXNoTWFwPHVuc2lnbmVkLCBkb3VibGU+
KCkpOwogCiAjaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkBAIC0yMDcsNyArMTk5LDYgQEAg
V2ViUHJvY2Vzczo6V2ViUHJvY2VzcygpCiAgICAgbV9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3Rv
cmFnZS0+c2V0Tm90aWZpY2F0aW9uQ2FsbGJhY2soW3RoaXNdIHsKICAgICAgICAgaWYgKG1fc3Rh
dGlzdGljc0NoYW5nZWRUaW1lci5pc0FjdGl2ZSgpKQogICAgICAgICAgICAgcmV0dXJuOwotICAg
ICAgICAKICAgICAgICAgbV9zdGF0aXN0aWNzQ2hhbmdlZFRpbWVyLnN0YXJ0T25lU2hvdChzdGQ6
OmNocm9ubzo6c2Vjb25kcyg1KSk7CiAgICAgfSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViUHJvY2Vzcy5oCmluZGV4IDIyOGYwNDYxMWRiMTgwYmJmZGU3ZjRkOWI1ZjIxM2ZkYjYzY2M5
ZTIuLjM1NDQ2NGE4MWU0MGIwZGU0ZWZjYWNhZDVmYjg2NGFhOTM3MDMxM2UgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5oCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5oCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBXZWJQcm9jZXNzX2gKLSNk
ZWZpbmUgV2ViUHJvY2Vzc19oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgIkNhY2hlTW9kZWwu
aCIKICNpbmNsdWRlICJDaGlsZFByb2Nlc3MuaCIKQEAgLTM0NiwyMCArMzQ1LDIwIEBAIHByaXZh
dGU6CiAgICAgUmVmUHRyPFZpZXdVcGRhdGVEaXNwYXRjaGVyPiBtX3ZpZXdVcGRhdGVEaXNwYXRj
aGVyOwogI2VuZGlmCiAKLSAgICBib29sIG1faW5EaWRDbG9zZTsKKyAgICBib29sIG1faW5EaWRD
bG9zZSB7IGZhbHNlIH07CiAKICAgICBIYXNoTWFwPFdlYkNvcmU6OlNlc3Npb25JRCwgSGFzaE1h
cDx1bnNpZ25lZCwgZG91YmxlPj4gbV9wbHVnSW5BdXRvU3RhcnRPcmlnaW5IYXNoZXM7CiAgICAg
SGFzaFNldDxTdHJpbmc+IG1fcGx1Z0luQXV0b1N0YXJ0T3JpZ2luczsKIAotICAgIGJvb2wgbV9o
YXNTZXRDYWNoZU1vZGVsOwotICAgIENhY2hlTW9kZWwgbV9jYWNoZU1vZGVsOworICAgIGJvb2wg
bV9oYXNTZXRDYWNoZU1vZGVsIHsgZmFsc2UgfTsKKyAgICBDYWNoZU1vZGVsIG1fY2FjaGVNb2Rl
bCB7IENhY2hlTW9kZWxEb2N1bWVudFZpZXdlciB9OwogCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAg
ICAgV2ViQ29yZTo6TWFjaFNlbmRSaWdodCBtX2NvbXBvc2l0aW5nUmVuZGVyU2VydmVyUG9ydDsK
ICAgICBwaWRfdCBtX3ByZXNlbnRlckFwcGxpY2F0aW9uUGlkOwogI2VuZGlmCiAKLSAgICBib29s
IG1fZnVsbEtleWJvYXJkQWNjZXNzRW5hYmxlZDsKKyAgICBib29sIG1fZnVsbEtleWJvYXJkQWNj
ZXNzRW5hYmxlZCB7IGZhbHNlIH07CiAKICAgICBIYXNoTWFwPHVpbnQ2NF90LCBXZWJGcmFtZSo+
IG1fZnJhbWVNYXA7CiAKQEAgLTM4OCw5ICszODcsOSBAQCBwcml2YXRlOgogI2VuZGlmCiAKICNp
ZiBFTkFCTEUoU0VSVklDRV9DT05UUk9MUykKLSAgICBib29sIG1faGFzSW1hZ2VTZXJ2aWNlczsK
LSAgICBib29sIG1faGFzU2VsZWN0aW9uU2VydmljZXM7Ci0gICAgYm9vbCBtX2hhc1JpY2hDb250
ZW50U2VydmljZXM7CisgICAgYm9vbCBtX2hhc0ltYWdlU2VydmljZXMgeyBmYWxzZSB9OworICAg
IGJvb2wgbV9oYXNTZWxlY3Rpb25TZXJ2aWNlcyB7IGZhbHNlIH07CisgICAgYm9vbCBtX2hhc1Jp
Y2hDb250ZW50U2VydmljZXMgeyBmYWxzZSB9OwogI2VuZGlmCiAKICAgICBIYXNoU2V0PHVpbnQ2
NF90PiBtX3BhZ2VzSW5XaW5kb3dzOwpAQCAtNDE2LDUgKzQxNSwzIEBAIHByaXZhdGU6CiB9Owog
CiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKLQotI2VuZGlmIC8vIFdlYlByb2Nlc3NfaAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>298935</attachid>
            <date>2017-01-15 19:58:06 -0800</date>
            <delta_ts>2017-01-17 16:27:05 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-167055-20170115195620.patch</filename>
            <type>text/plain</type>
            <size>678966</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEwNzg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzVhMTgzNWE1NTg4NWM4
MjE0NmFhNzRiOGIwMGI1MjkyNGIzNDI3MS4uMmQ2NTgyNmZmMDU5MGNjYTJjMzViMjg5MWEyYmJl
NDNmYWM5MDEwZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxNCBAQAorMjAxNy0wMS0xNSAgRGFy
aW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIFBhc3NSZWZQdHIg
ZnJvbSAibG9hZGVyIiBkaXJlY3Rvcnkgb2YgV2ViQ29yZQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY3MDU1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6RG9jdW1lbnQ6OnByb2Nlc3NIdHRwRXF1aXYpOiBQYXNzIGEgcmVmZXJlbmNlLgor
ICAgICAgICAqIGVkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6RWRpdENvbW1hbmRDb21wb3NpdGlvbjo6dW5hcHBseSk6IERpdHRvLgorICAgICAgICAo
V2ViQ29yZTo6RWRpdENvbW1hbmRDb21wb3NpdGlvbjo6cmVhcHBseSk6IERpdHRvLgorICAgICAg
ICAoV2ViQ29yZTo6Q29tcG9zaXRlRWRpdENvbW1hbmQ6OmVuc3VyZUNvbXBvc2l0aW9uKTogUmV0
dXJuIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6Q29tcG9zaXRlRWRpdENvbW1hbmQ6
OmFwcGx5Q29tbWFuZFRvQ29tcG9zaXRlKTogVXNlIGEgcmVmZXJlbmNlLgorICAgICAgICAqIGVk
aXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuaDogVXBkYXRlZCBmb3IgYWJvdmUgY2hhbmdlcy4K
KworICAgICAgICAqIGVkaXRpbmcvRWRpdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRv
cjo6dW5hcHBsaWVkRWRpdGluZyk6IFRha2UgYSByZWZlcmVuY2UgaW5zdGVhZCBvZiBhIFBhc3NS
ZWZQdHIuCisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OnJlYXBwbGllZEVkaXRpbmcpOiBEaXR0
by4KKyAgICAgICAgKiBlZGl0aW5nL0VkaXRvci5oOiBVcGRhdGVkIGZvciBhYm92ZSBjaGFuZ2Vz
LiBBbHNvIGNoYW5nZWQgdGhlCisgICAgICAgIEZyYWdtZW50QW5kUmVzb3VyY2VzIHJlc291cmNl
cyB2ZWN0b3IgdG8gaG9sZCBSZWYgaW5zdGVhZCBvZiBSZWZQdHIuCisKKyAgICAgICAgKiBlZGl0
aW5nL2NvY29hL0VkaXRvckNvY29hLm1tOgorICAgICAgICAoV2ViQ29yZTo6RWRpdG9yOjpjcmVh
dGVGcmFnbWVudEFuZEFkZFJlc291cmNlcyk6IFVwZGF0ZWQgZm9yIGNoYW5nZSB0bworICAgICAg
ICBGcmFnbWVudEFuZFJlc291cmNlcy4KKworICAgICAgICAqIGVkaXRpbmcvaW9zL0VkaXRvcklP
Uy5tbToKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRvcjo6V2ViQ29udGVudFJlYWRlcjo6cmVhZFdl
YkFyY2hpdmUpOiBQYXNzIGEgcmVmZXJlbmNlLgorCisgICAgICAgICogZWRpdGluZy9tYWMvRWRp
dG9yTWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6RWRpdG9yOjpXZWJDb250ZW50UmVhZGVyOjpy
ZWFkV2ViQXJjaGl2ZSk6IFBhc3MgYSByZWZlcmVuY2UuCisKKyAgICAgICAgKiBoaXN0b3J5L1Bh
Z2VDYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpjYW5DYWNoZUZyYW1lKTogVXNlIGEgcmVm
ZXJlbmNlLgorCisgICAgICAgICogaHRtbC9GaWxlSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkZpbGVJbnB1dFR5cGU6OmhhbmRsZURPTUFjdGl2YXRlRXZlbnQpOiBQYXNzIHJlZmVy
ZW5jZXMuCisKKyAgICAgICAgKiBodG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6SFRNTEZvcm1Db250cm9sRWxlbWVudDo6Zm9ybU1ldGhvZCk6IFVzZSBh
dXRvLgorCisgICAgICAgICogaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTEZvcm1FbGVtZW50OjpwcmVwYXJlRm9yU3VibWlzc2lvbik6IFVwZGF0ZWQgdG8g
dXNlIGEgcmV0dXJuCisgICAgICAgIHZhbHVlcyBmb3IgdGV4dEZpZWxkVmFsdWVzIGludHNlYWQg
b2YgYW4gb3V0IGFyZ3VtZW50IHdpdGggZ2V0VGV4dEZpZWxkVmFsdWVzLgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTEZvcm1FbGVtZW50Ojp0ZXh0RmllbGRWYWx1ZXMpOiBSZW5hbWVkIGZyb20gZ2V0
VGV4dEZpZWxkVmFsdWVzCisgICAgICAgIGFuZCBjaGFuZ2VkIHRvIHVzZSBhIHJldHVybiB2YWx1
ZSBpbnN0ZWFkIG9mIGFuIG91dCBhcmd1bWVudC4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxGb3Jt
RWxlbWVudDo6c3VibWl0KTogUGFzcyBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYkNvcmU6OkhU
TUxGb3JtRWxlbWVudDo6cmVxdWVzdEF1dG9jb21wbGV0ZSk6IFBhc3MgYSBSZWYmJi4KKyAgICAg
ICAgKiBodG1sL0hUTUxGb3JtRWxlbWVudC5oOiBVcGRhdGVkIGZvciBhYm92ZSBjaGFuZ2VzLgor
CisgICAgICAgICogaHRtbC9IVE1MSHRtbEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
SFRNTEh0bWxFbGVtZW50OjppbnNlcnRlZEJ5UGFyc2VyKTogVXNlIGEgcmVmZXJlbmNlLgorCisg
ICAgICAgICogaHRtbC9IVE1MTGlua0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRN
TExpbmtFbGVtZW50Ojpwcm9jZXNzKTogUGFzcyBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYkNv
cmU6OkhUTUxMaW5rRWxlbWVudDo6c2V0Q1NTU3R5bGVTaGVldCk6IFVzZSBhdXRvLgorCisgICAg
ICAgICogaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxN
ZWRpYUVsZW1lbnQ6OmxvYWRSZXNvdXJjZSk6IFVzZSBhIHJlZmVyZW5jZS4KKworICAgICAgICAq
IGluc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50Ojp1cGRhdGVBcHBsaWNhdGlv
bkNhY2hlU3RhdHVzKTogVXNlIGEgcmVmZXJlbmNlLAorICAgICAgICBhbHNvIHVwZGF0ZSBmb3Ig
c3RydWN0LXN0eWxlIG1lbWJlciBuYW1lcyB3aXRob3UgbV8gcHJlZml4LgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpnZXRGcmFtZXNXaXRoTWFuaWZl
c3RzKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hl
QWdlbnQ6OmdldE1hbmlmZXN0Rm9yRnJhbWUpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6Oklu
c3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6Z2V0QXBwbGljYXRpb25DYWNoZUZvckZyYW1l
KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdl
bnQ6OmJ1aWxkT2JqZWN0Rm9yQXBwbGljYXRpb25DYWNoZSk6IERpdHRvLgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZEFycmF5Rm9yQXBwbGlj
YXRpb25DYWNoZVJlc291cmNlcyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
QXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGVSZXNv
dXJjZSk6IERpdHRvLgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNh
Y2hlQWdlbnQuaDogVXBkYXRlZCBmb3IgYWJvdmUgY2hhbmdlcy4KKworICAgICAgICAqIGluc3Bl
Y3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp1cGRhdGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzSW1wbCk6
IFRha2UgYSByZWZlcmVuY2UuCisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1l
bnRhdGlvbi5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIvRG9j
dW1lbnRMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OkRvY3Vt
ZW50TG9hZGVyKTogTW92ZSBtdWNoIGluaXRpYWxpemF0aW9uIHRvIGNsYXNzIGRlZmluaXRpb24u
CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6b3JpZ2luYWxSZXF1ZXN0KTogTW92
ZWQgdG8gaGVhZGVyIHRvIG1ha2UgaXQgaW5saW5lLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXI6Om9yaWdpbmFsUmVxdWVzdENvcHkpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyOjpyZXF1ZXN0KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpEb2N1
bWVudExvYWRlcjo6dXJsKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRl
cjo6c3RvcExvYWRpbmcpOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXI6OndpbGxTZW5kUmVxdWVzdCk6IFVwZGF0ZWQgdG8gdGFrZSBhIHJhdyBwb2lu
dGVyIGluc3RlYWQgb2YgYQorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXI6OmNvbW1pdERhdGEpOiBDYWxsIHNob3VsZFVzZU1haW5SZXNvdXJjZUVu
Y29kaW5nIGluc3RlYWQgb2YKKyAgICAgICAgc3BlY2lhbCBjYXNpbmcgV2ViQXJjaGl2ZS4KKyAg
ICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjptYXliZUNyZWF0ZUFyY2hpdmUpOiBQYXNz
IHJlZmVyZW5jZXMuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6c2V0QXJjaGl2
ZSk6IFRha2UgUmVmJiYgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXI6OmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMpOiBUYWtlIGEgcmVmZXJlbmNl
IGluc3RlYWQKKyAgICAgICAgb2YgYSBwb2ludGVyLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXI6OnBvcEFyY2hpdmVGb3JTdWJmcmFtZSk6IFJldHVybiBSZWZQdHIgaW5zdGVhZCBv
ZgorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6
OnN1YnJlc291cmNlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6
c3VicmVzb3VyY2VzKTogUmV0dXJuIGEgVmVjdG9yPFJlZj4gaW5zdGVhZCBvZiBhCisgICAgICAg
IFZlY3RvcjxSZWZQdHI+LgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OnN1YnN0
aXR1dGVSZXNvdXJjZURlbGl2ZXJ5VGltZXJGaXJlZCk6IFVzZSBtb3ZlCisgICAgICAgIGluc3Rl
YWQgb2Ygc3dhcC4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpzY2hlZHVsZUFy
Y2hpdmVMb2FkKTogVXNlIHNob3VsZExvYWRGcm9tQXJjaGl2ZU9ubHkKKyAgICAgICAgaW5zdGVh
ZCBvZiBhIHNwZWNpYWwgY2FzZSBmb3IgZWFjaCB0eXBlIG9mIGFyY2hpdmUuCisgICAgICAgIChX
ZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6b3JpZ2luYWxVUkwpOiBNb3ZlZCB0byBoZWFkZXIgdG8g
bWFrZSBpdCBpbmxpbmUuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6cmVzcG9u
c2VVUkwpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpkb2N1bWVu
dFVSTCk6IENhbGwgc2hvdWxkVXNlTWFpblJlc291cmNlVVJMIGluc3RlYWQgb2YKKyAgICAgICAg
c3BlY2lhbCBjYXNpbmcgV2ViQXJjaGl2ZS4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyOjpyZXNwb25zZU1JTUVUeXBlKTogTW92ZWQgdG8gaGVhZGVyIHRvIG1ha2UgaXQgaW5saW5l
LgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmN1cnJlbnRDb250ZW50VHlwZSk6
IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmNvbnRlbnRGaWx0ZXIp
OiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpnZXRJY29uTG9hZERl
Y2lzaW9uRm9ySWNvblVSTCk6IFBhc3MgYSByZWZlcmVuY2UuCisgICAgICAgIChXZWJDb3JlOjpE
b2N1bWVudExvYWRlcjo6Z2V0SWNvbkRhdGFGb3JJY29uVVJMKTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6ZGlzcGF0Y2hPbmxvYWRFdmVudHMpOiBVc2UgYSByZWZl
cmVuY2UuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6dW5yZWFjaGFibGVVUkwp
OiBNb3ZlZCB0byBoZWFkZXIgdG8gbWFrZSBpdCBpbmxpbmUuCisgICAgICAgICogbG9hZGVyL0Rv
Y3VtZW50TG9hZGVyLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRl
ci9FbXB0eUNsaWVudHMuY3BwOiBVcGRhdGVkIGZvciBjaGFuZ2VzIHRvIGNsaWVudCBpbnRlcmZh
Y2VzLgorICAgICAgICAqIGxvYWRlci9FbXB0eUNsaWVudHMuaDogRGl0dG8uCisKKyAgICAgICAg
KiBsb2FkZXIvRm9ybVN0YXRlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvcm1TdGF0ZTo6Rm9y
bVN0YXRlKTogVGFrZSByZWZlcmVuY2VzIGluc3RlYWQgb2YgUGFzc1JlZlB0ciwgYWxzbworICAg
ICAgICB0YWtlIFZlY3RvciYmIGluc3RlYWQgb2YgVmVjdG9yJiB3aGVuIHdlIHdhbnQgdG8gdGFr
ZSBvd25lcnNoaXAgYW5kIHVzZSBtb3ZlCisgICAgICAgIGluc3RlYWQgb2Ygc3dhcCB0byBkbyB0
aGF0LgorICAgICAgICAoV2ViQ29yZTo6Rm9ybVN0YXRlOjpjcmVhdGUpOiBEaXR0by4KKyAgICAg
ICAgKiBsb2FkZXIvRm9ybVN0YXRlLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4gQWxzbyBjaGFu
Z2VkIHJldHVybiB2YWx1ZXMgdG8gYmUKKyAgICAgICAgcmVmZXJlbmNlcyBpbnN0ZWFkIG9mIHBv
aW50ZXJzIGFuZCBtZW1iZXJzIHRvIGJlIFJlZiBpbnN0ZWFkIG9mIFJlZlB0ci4KKworICAgICAg
ICAqIGxvYWRlci9Gb3JtU3VibWlzc2lvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb3JtU3Vi
bWlzc2lvbjo6QXR0cmlidXRlczo6cGFyc2VNZXRob2RUeXBlKTogVXBkYXRlZCBmb3IgY2hhbmdl
CisgICAgICAgIHRvIHRoZSBNZXRob2QgZW51bWVyYXRpb24uCisgICAgICAgIChXZWJDb3JlOjpG
b3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6Y29weUZyb20pOiBEZWxldGVkLgorICAgICAgICAo
V2ViQ29yZTo6Rm9ybVN1Ym1pc3Npb246OkZvcm1TdWJtaXNzaW9uKTogVXNlIFJlZiYmIGluc3Rl
YWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYkNvcmU6OkZvcm1TdWJtaXNzaW9uOjpjcmVh
dGUpOiBVc2UgcmVmZXJlbmNlIGluc3RlYWQgb2YgcG9pbnRlciBhbmQKKyAgICAgICAgcmF3IHBv
aW50ZXIgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLiBBbHNvIGNvcHkgYXR0cmlidXRlcyB1c2luZyBj
b3B5IGNvbnN0cnVjdG9yCisgICAgICAgIGluc3RlYWQgb2YgYW4gZXhwbGljaXQgY29weUZyb20g
ZnVuY3Rpb24uCisgICAgICAgIChXZWJDb3JlOjpGb3JtU3VibWlzc2lvbjo6cmVxdWVzdFVSTCk6
IFVwZGF0ZWQgZm9yIGNoYW5nZSB0byB0aGUgTWV0aG9kCisgICAgICAgIGVudW1lcmF0aW9uLgor
ICAgICAgICAoV2ViQ29yZTo6Rm9ybVN1Ym1pc3Npb246OnBvcHVsYXRlRnJhbWVMb2FkUmVxdWVz
dCk6IERpdHRvLgorICAgICAgICAqIGxvYWRlci9Gb3JtU3VibWlzc2lvbi5oOiBVcGRhdGVkIGZv
ciB0aGUgYWJvdmUgY2hhbmdlcy4gTWFkZSB0aGUgQXR0cmlidXRlcworICAgICAgICBjbGFzcyBj
b3B5YWJsZSwgc2luY2Ugd2UgY29weSBpdC4gQ2hhbmdlZCBzb21lIGZ1bmN0aW9ucyB0byByZXR1
cm4gcmVmZXJlbmNlcworICAgICAgICBpbnN0ZWFkIG9mIHBvaW50ZXJzIGFuZCB1c2UgUmVmIGlu
c3RlYWQgb2YgUmVmUHRyIGZvciBkYXRhIG1lbWJlcnMuCisKKyAgICAgICAgKiBsb2FkZXIvRnJh
bWVMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6OnN1Ym1pdEZvcm0p
OiBVcGRhdGVkIGZvciBjaGFuZ2VzIHRvIEZvcm1TdWJtaXNzaW9uCisgICAgICAgIGFuZCBGb3Jt
U3RhdGUuCisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6cmVjZWl2ZWRGaXJzdERhdGEp
OiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2FkRnJhbWVSZXF1ZXN0
KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6bG9hZFJlc291cmNlU3lu
Y2hyb25vdXNseSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6OmNvbnRp
bnVlTG9hZEFmdGVyTmF2aWdhdGlvblBvbGljeSk6IERpdHRvLgorCisgICAgICAgICogbG9hZGVy
L0ZyYW1lTG9hZGVyQ2xpZW50Lmg6IFVzZSByZWZlcmVuY2VzLCBwb2ludGVycywgUmVmUHRyLCBh
bmQgUmVmCisgICAgICAgIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4gUmVtb3ZlZCB1bnVzZWQgZW1w
dHkgZGlzcGF0Y2hEaWRGYWlsVG9TdGFydFBsdWdpbi4KKworICAgICAgICAqIGxvYWRlci9IaXN0
b3J5Q29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5Q29udHJvbGxlcjo6
cHVzaFN0YXRlKTogVGFrZSBSZWZQdHImJiBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAg
IChXZWJDb3JlOjpIaXN0b3J5Q29udHJvbGxlcjo6cmVwbGFjZVN0YXRlKTogRGl0dG8uCisgICAg
ICAgICogbG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4K
KworICAgICAgICAqIGxvYWRlci9JbWFnZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJ
bWFnZUxvYWRlcjo6dXBkYXRlRnJvbUVsZW1lbnQpOiBQYXNzIGEgcmVmZXJlbmNlLgorCisgICAg
ICAgICogbG9hZGVyL05hdmlnYXRpb25TY2hlZHVsZXIuY3BwOiBVc2UgcmVmZXJuY2VzIGFuZCBS
ZWYmJiBpbnN0ZWFkIG9mCisgICAgICAgIHBvaW50ZXJzIGFuZCBQYXNzUmVmUHRyLgorICAgICAg
ICAoV2ViQ29yZTo6U2NoZWR1bGVkTmF2aWdhdGlvbjo6U2NoZWR1bGVkTmF2aWdhdGlvbik6IEFk
ZGVkIGFuIG92ZXJsb2FkCisgICAgICAgIHRoYXQgc2VzdHMgbV9zaG91bGRPcGVuRXh0ZXJuYWxV
UkxzUG9saWN5LgorICAgICAgICAqIGxvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmg6IFVwZGF0
ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWRlci5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcjo6c3RhcnQpOiBVc2UgYW5kIHBhc3Mg
cmVmZXJlbmNlcy4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZGVyOjp3aWxsU2VuZFJl
cXVlc3QpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZGVyOjpkaWRSZWNl
aXZlUmVzcG9uc2UpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZGVyOjpk
aWRGYWlsKTogRGl0dG8uCisKKyAgICAgICAgKiBsb2FkZXIvU3ViZnJhbWVMb2FkZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQp
OiBSZXR1cm4gUmVmUHRyIGluc3RlYWQKKyAgICAgICAgb2YgUGFzc1JlZlB0ci4gUGFzcyByZWZl
cmVuY2VzIGluc3RlYWQgb2YgcG9pbnRlcnMuCisgICAgICAgIChXZWJDb3JlOjpTdWJmcmFtZUxv
YWRlcjo6bG9hZE9yUmVkaXJlY3RTdWJmcmFtZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6
U3ViZnJhbWVMb2FkZXI6OmxvYWRTdWJmcmFtZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6
U3ViZnJhbWVMb2FkZXI6OmRvY3VtZW50KTogRGVsZXRlZC4gVGhpcyB3YXMgbmV2ZXIgcmVhbGx5
IHRoZQorICAgICAgICBjb3JyZWN0IGlkaW9tIGZvciBnZXR0aW5nIHRoZSBhcHByb3ByaWF0ZSBk
b2N1bWVudDsgaGlkaW5nIHRoZSBkZXBlbmRlbmN5CisgICAgICAgIG9uIG1fZnJhbWUgd2Fzbid0
IHBhaW5nIG9mZi4KKyAgICAgICAgKFdlYkNvcmU6OlN1YmZyYW1lTG9hZGVyOjpsb2FkUGx1Z2lu
KTogUGFzcyByZWZlcmVuY2UgaW5zdGVhZCBvZiBwb2ludGVyLgorICAgICAgICAoV2ViQ29yZTo6
U3ViZnJhbWVMb2FkZXI6OnNob3VsZENvbnZlcnRJbnZhbGlkVVJMc1RvQmxhbmspOiBFbGltaW5h
dGVkCisgICAgICAgIHVubmVlZGVkIG51bGwgY2hlY2tpbmcgYW5kIGNvbXBsZXhpdHkgZHVlIHRv
IGdvaW5nIHRocm91Z2ggdGhlIGRvY3VtZW50CisgICAgICAgIGluc3RlYWQgb2YgdGhlIGZyYW1l
IGZvciB0aGlzIGNoZWNrLgorICAgICAgICAqIGxvYWRlci9TdWJmcmFtZUxvYWRlci5oOiBVcGRh
dGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRp
b25DYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNh
dGlvbkNhY2hlKTogTW92ZWQgZGF0YSBtZW1iZXIKKyAgICAgICAgaW5pdGlhbGl6YXRpb24gdG8g
dGhlIGNsYXNzIGRlZmluaXRpb24uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hl
Ojp+QXBwbGljYXRpb25DYWNoZSk6IFBhc3MgYSByZWZlcmVuY2UgaW5zdGVhZAorICAgICAgICBv
ZiBhIHBvaW50ZXIuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlOjppc0NvbXBs
ZXRlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlOjpzZXRNYW5p
ZmVzdFJlc291cmNlKTogVGFrZSBSZWYmJiBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIu
CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlOjphZGRSZXNvdXJjZSk6IERpdHRv
LgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZTo6cmVtb3ZlUmVzb3VyY2UpOiBE
ZWxldGVkLiBXYXMgdW51c2VkLgorICAgICAgICAqIGxvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlv
bkNhY2hlLmg6IFVwZGF0ZWQgZm9yIGFib3ZlIGNoYW5nZXMuCisKKyAgICAgICAgKiBsb2FkZXIv
YXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFw
cGxpY2F0aW9uQ2FjaGVHcm91cDo6QXBwbGljYXRpb25DYWNoZUdyb3VwKTogTW92ZWQgbW9zdAor
ICAgICAgICBtZW1iZXIgaW5pdGlhbGl6YXRpb24gdG8gdGhlIGNsYXNzIGRlZmluaXRpb24uCisg
ICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6On5BcHBsaWNhdGlvbkNhY2hl
R3JvdXApOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25D
YWNoZUdyb3VwOjpjYWNoZUZvck1haW5SZXF1ZXN0KTogUmVtb3ZlZAorICAgICAgICB1bm5lY2Vz
c2FyeSBwcmVmbGlnaHQgZm9yIHJlbW92ZUZyYWdtZW50SWRlbnRpZmllciwgd2hpY2ggZWZmaWNp
ZW50bHkKKyAgICAgICAgZG9lcyBub3RoaW5nIGlmIHRoZXJlIGlzIG5vIGlkZW50aWZpZXIuIFVz
ZSBlYXJseSByZXR1cm4uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
OmZhbGxiYWNrQ2FjaGVGb3JNYWluUmVxdWVzdCk6IE1vcmUgb2YKKyAgICAgICAgdGhlIHNhbWUu
CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVjdENhY2hlKTog
RGl0dG8sIGFsc28gdGFrZSBhIHJlZmVyZW5jZSwKKyAgICAgICAgYW5kIHVzZSBldmVudCBuYW1l
cyBpbnN0ZWFkIG9mIGEgc3BlY2lhbCBlbnVtZXJhdGlvbiB0byBwb2FzdCBldmVudHMuCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVjdENhY2hlV2l0aG91dE1h
bmlmZXN0VVJMKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3Jv
dXA6OmZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29y
ZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKTogRGl0
dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRpc2Fzc29jaWF0
ZURvY3VtZW50TG9hZGVyKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNh
Y2hlR3JvdXA6OmNhY2hlRGVzdHJveWVkKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBs
aWNhdGlvbkNhY2hlR3JvdXA6OnN0b3BMb2FkaW5nSW5GcmFtZSk6IERpdHRvLgorICAgICAgICAo
V2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZXROZXdlc3RDYWNoZSk6IFVzZSBSZWYm
JiBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJDb3JlOjpBcHBs
aWNhdGlvbkNhY2hlR3JvdXA6Om1ha2VPYnNvbGV0ZSk6IE1vcmUgb2YgdGhlIHNhbWUuCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnVwZGF0ZSk6IERpdHRvLgorICAg
ICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjphYm9ydCk6IERpdHRvLgorICAg
ICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpkaWRSZWNlaXZlUmVzcG9uc2Up
OiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZGlkRmlu
aXNoTG9hZGluZyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdy
b3VwOjpkaWRGYWlsKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hl
R3JvdXA6OmRpZEZpbmlzaExvYWRpbmdNYW5pZmVzdCk6IERpdHRvLgorICAgICAgICAoV2ViQ29y
ZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjptYW5pZmVzdE5vdEZvdW5kKTogRGl0dG8uCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNoZWNrSWZMb2FkSXNDb21wbGV0
ZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpzdGFy
dExvYWRpbmdFbnRyeSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNo
ZUdyb3VwOjpkZWxpdmVyRGVsYXllZE1haW5SZXNvdXJjZXMpOiBVc2UgYSBtb2Rlcm4KKyAgICAg
ICAgZm9yIGxvb3AuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFk
ZEVudHJ5KTogVXNlIGF1dG8gYW5kIHNpbXBsaWZ5IGxvZ2ljCisgICAgICAgIGZvciBhZGRpbmcu
CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFzc29jaWF0ZURvY3Vt
ZW50TG9hZGVyV2l0aENhY2hlKTogVXBkYXRlIHNpbmNlCisgICAgICAgIGZ1bmN0aW9uIHJlc3Vs
dCBpcyBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVHcm91
cDo6c2NoZWR1bGVSZWFjaGVkTWF4QXBwQ2FjaGVTaXplQ2FsbGJhY2spOgorICAgICAgICBVc2Ug
YXV0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6cG9zdExpc3Rl
bmVyVGFzayk6IFRha2UgZXZlbnQgdHlwZSBpbnN0ZWFkIG9mCisgICAgICAgIHRha2luZyBhIHNw
ZWNpYWwgZW51bWVyYXRpb24uCisgICAgICAgICogbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9u
Q2FjaGVHcm91cC5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIv
YXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUhvc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QXBw
bGljYXRpb25DYWNoZUhvc3Q6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0KTogTW92ZSBtb3N0IG1lbWJl
cgorICAgICAgICBpbml0aWFsaXphdGlvbiB0byB0aGUgY2xhc3MgZGVmaW5pdGlvbi4KKyAgICAg
ICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojp+QXBwbGljYXRpb25DYWNoZUhvc3Qp
OiBVc2UgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhvc3Q6
OnNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpB
cHBsaWNhdGlvbkNhY2hlSG9zdDo6c2VsZWN0Q2FjaGVXaXRoTWFuaWZlc3QpOiBEaXR0by4KKyAg
ICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0OjptYWluUmVzb3VyY2VEYXRhUmVj
ZWl2ZWQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojpm
YWlsZWRMb2FkaW5nTWFpblJlc291cmNlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6ZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKTogRGl0dG8uCisg
ICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWF5YmVMb2FkRmFsbGJhY2tG
b3JSZWRpcmVjdCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhv
c3Q6Om1heWJlTG9hZEZhbGxiYWNrRm9yUmVzcG9uc2UpOiBEaXR0by4KKyAgICAgICAgKFdlYkNv
cmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpjcmVhdGVGaWxlVVJMKTogRGl0dG8uCisgICAgICAg
IChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWF5YmVMb2FkU3luY2hyb25vdXNseSk6
IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhvc3Q6Om5vdGlmeURP
TUFwcGxpY2F0aW9uQ2FjaGUpOiBUYWtlIGV2ZW50CisgICAgICAgIHR5cGUgaW5zdGVhZCBvZiBz
cGVjaWFsIGVudW1lcmF0aW9uLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhv
c3Q6OnN0b3BMb2FkaW5nSW5GcmFtZSk6IFVzZSByZWZlcmVuY2UuCisgICAgICAgIChXZWJDb3Jl
OjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c3RvcERlZmVycmluZ0V2ZW50cyk6IFVwZGF0ZWQgdG8g
dXNlCisgICAgICAgIGV2ZW50IHR5cGVzIGluc3RlYWQgb2Ygc3BlY2lhbCBlbnVtZXJhdGlvbiBh
bmQgYWxzbyByZXBhaXJlZCBwb3NzaWJsZQorICAgICAgICBlZGdlIGNhc2Ugd2hlcmUgY29kZSBp
biBldmVudCBoYW5kbGVyIHNvbWVob3cgdHJpZ2dlcnMgYWRkaXRpb25hbCBldmVudHMuCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6cmVzb3VyY2VMaXN0KTogUmVuYW1l
ZCBmcm9tIGZpbGxSZXNvdXJjZUxpc3QKKyAgICAgICAgYW5kIGNoYW5nZWQgdG8gcmV0dXJuIGEg
dmVjdG9yIGluc3RlYWQgb2YgcG9wdWxhdGluZyBvbmUuCisgICAgICAgIChXZWJDb3JlOjpBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6YXBwbGljYXRpb25DYWNoZUluZm8pOiBUd2VhayBjb2Rpbmcgc3R5
bGUgYSBiaXQuCisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVBcHBsaWNhdGlvbkNhY2hlRXZlbnQp
OiBGYWN0b3JlZCB0aGlzIGhlbHBlciBvdXQgb2YKKyAgICAgICAgZGlzcGF0Y2hET01FdmVudCBz
byB3ZSBjYW4gdXNlIFJlZiBpbnN0ZWFkIG9mIFJlZlB0ci4KKyAgICAgICAgKFdlYkNvcmU6OkFw
cGxpY2F0aW9uQ2FjaGVIb3N0OjpkaXNwYXRjaERPTUV2ZW50KTogVXBkYXRlZCB0byByZWNlbnQg
ZXZlbnQgdHlwZQorICAgICAgICByYXRoZXIgdGhhbiByZWNlaXZpbmcgYW4gZXZlbnQgaWQgYW5k
IG1hcHBpbmcgaXQgdG8gYSB0eXBlLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNo
ZUhvc3Q6OnNldEFwcGxpY2F0aW9uQ2FjaGUpOiBUYWtlIFJlZlB0ciYmIGluc3RlYWQgb2YKKyAg
ICAgICAgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0
Ojp1cGRhdGUpOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRp
b25DYWNoZUhvc3Q6OnN3YXBDYWNoZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGlj
YXRpb25DYWNoZUhvc3Q6OmFib3J0KTogRGl0dG8uCisgICAgICAgICogbG9hZGVyL2FwcGNhY2hl
L0FwcGxpY2F0aW9uQ2FjaGVIb3N0Lmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAg
ICAqIGxvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6bG9hZENhY2hlR3JvdXApOiBQYXNz
IGEgUmVmIGluc3RlYWQgb2YgUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25D
YWNoZVN0b3JhZ2U6OmNhY2hlR3JvdXBGb3JVUkwpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6
OkFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpmYWxsYmFja0NhY2hlR3JvdXBGb3JVUkwpOiBEaXR0
by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpjYWNoZUdyb3Vw
RGVzdHJveWVkKTogVGFrZSBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0
aW9uQ2FjaGVTdG9yYWdlOjpjYWNoZUdyb3VwTWFkZU9ic29sZXRlKTogRGl0dG8uCisgICAgICAg
IChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6c3RvcmVOZXdlc3RDYWNoZSk6IERp
dHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmxvYWRDYWNo
ZSk6IFJldHVybiBSZWZQdHIgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29y
ZTo6QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmRlbGV0ZUNhY2hlR3JvdXApOiBQYXNzIGEgcmVm
ZXJlbmNlLgorICAgICAgICAqIGxvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFn
ZS5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIvYXBwY2FjaGUv
RE9NQXBwbGljYXRpb25DYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpET01BcHBsaWNhdGlv
bkNhY2hlOjpET01BcHBsaWNhdGlvbkNhY2hlKTogVGFrZSBhIHJlZmVyZW5jZS4KKyAgICAgICAg
KFdlYkNvcmU6OkRPTUFwcGxpY2F0aW9uQ2FjaGU6OnRvRXZlbnRUeXBlKTogRGVsZXRlZC4KKyAg
ICAgICAgKiBsb2FkZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25DYWNoZS5oOiBVcGRhdGVkIGZv
ciB0aGUgYWJvdmUuIE1hZGUgbW9zdAorICAgICAgICBtZW1iZXJzIHByaXZhdGUuCisKKyAgICAg
ICAgKiBsb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFyY2hp
dmU6OmNsZWFyQWxsU3ViZnJhbWVBcmNoaXZlcyk6IFVzZSBhIHNldCBmb3IgdGhlIGxvZ2ljIHRo
YXQKKyAgICAgICAgcHJldmVudHMgdXMgZnJvbSB3YWxraW5nIHRoZSBzYW1lIGFyY2hpdmUgbW9y
ZSB0aGFuIG9uY2UsIHJhdGhlciB0aGFuIHVzaW5nCisgICAgICAgIGEgdmVjdG9yLiBMZWZ0IGl0
IHJlY3Vyc2l2ZSwgdGhvdWdoLgorICAgICAgICAqIGxvYWRlci9hcmNoaXZlL0FyY2hpdmUuaDog
R2l0IHJpZCBvZiB0aGUgdHlwZSBmdW5jdGlvbiwgcmVwbGFjaW5nIGl0IHdpdGgKKyAgICAgICAg
dGhyZWUgZnVuY3Rpb25zIGZvciB0aGUgZm91ciBkaWZmZXJlbnQgcG9saWNpZXMgd2UgY3VycmVu
dGx5IGhhdmUgYWJvdXQgdGhlCisgICAgICAgIGRpZmZlcmVudCBhcmNoaXZlIHR5cGVzLiBDaGFu
Z2VkIGZ1bmN0aW9ucyB0byB0YWtlIFJlZiYmIGluc3RlYWQgb2YgUGFzc1JlZlB0cgorICAgICAg
ICBhbmQgcmV0dXJuIGNvbnN0IFZlY3RvcjxSZWY+JiBpbnN0ZWFkIG9mIGNvbnN0IFZlY3RvcjxS
ZWZQdHI+JiwgY2hhbmdpbmcgdGhlCisgICAgICAgIGRhdGEgbWVtYmVycyB0byBtYXRjaC4KKwor
ICAgICAgICAqIGxvYWRlci9hcmNoaXZlL0FyY2hpdmVGYWN0b3J5LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OmNyZWF0ZUFyY2hpdmVNSU1FVHlwZXNNYXApOiBGYWN0b3JlZCB0aGlzIG91dCBvZiB0
aGUgYXJjaGl2ZU1JTUVUeXBlcworICAgICAgICBmdW5jdGlvbiBzbyB3ZSBkb24ndCBuZWVkIGEg
Ym9vbGVhbi4gQWxzbyB1c2UgQVNDSUlMaXRlcmFsLgorICAgICAgICAoV2ViQ29yZTo6YXJjaGl2
ZU1JTUVUeXBlcyk6IFVwZGF0ZWQgdG8gc2UgdGhlIGFib3ZlLgorCisgICAgICAgICogbG9hZGVy
L2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uOjphZGRBbGxSZXNvdXJjZXMpOiBUYWtlIGEgcmVm
ZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6QXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbjo6cG9w
U3ViZnJhbWVBcmNoaXZlKTogUmV0dXJuIFJlZlB0ciBpbnN0ZWFkCisgICAgICAgIG9mIFBhc3NS
ZWZQdHIuCisgICAgICAgICogbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlv
bi5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIvYXJjaGl2ZS9j
Zi9MZWdhY3lXZWJBcmNoaXZlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hp
dmU6OmNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKTogVXNlIGF1dG8gYW5kCisgICAg
ICAgIGZld2VyIGxvY2FsIHZhcmlhYmxlcywgbW9yZSByZWZlcmVuY2VzIGZvciBhcmd1bWVudCB0
eXBlcyBhbmQgcmV0dXJuIHZhbHVlcy4KKyAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hp
dmU6OmNyZWF0ZVJlc291cmNlUmVzcG9uc2VGcm9tUHJvcGVydHlMaXN0RGF0YSk6IERpdHRvLgor
ICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlUmVzb3VyY2UpOiBEaXR0
by4KKyAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZSk6IERpdHRvLgor
ICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6ZXh0cmFjdCk6IERpdHRvLgorICAg
ICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6dHlwZSk6IERlbGV0ZWQuCisgICAgICAg
IChXZWJDb3JlOjpMZWdhY3lXZWJBcmNoaXZlOjpyYXdEYXRhUmVwcmVzZW50YXRpb24pOiBNb3Jl
IG9mIHRoZSBzYW1lLgorICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRl
RnJvbVNlbGVjdGlvbik6IERpdHRvLgorICAgICAgICAqIGxvYWRlci9hcmNoaXZlL2NmL0xlZ2Fj
eVdlYkFyY2hpdmUuaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLiBBbHNvIG1hcmtlZCB0aGUKKyAg
ICAgICAgY2xhc3MgZmluYWwgYW5kIGFkZGVkIG92ZXJyaWRlcyBmb3IgdGhlIGZvdXIgbmV3IHBv
bGljeSBtZW1iZXIgZnVuY3Rpb25zLgorCisgICAgICAgICogbG9hZGVyL2FyY2hpdmUvbWh0bWwv
TUhUTUxBcmNoaXZlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1IVE1MQXJjaGl2ZTo6Y3JlYXRl
KTogUGFzcyByZWZlcmVuY2VzLgorICAgICAgICAoV2ViQ29yZTo6TUhUTUxBcmNoaXZlOjpnZW5l
cmF0ZU1IVE1MRGF0YSk6IFJldHVybiBSZWZQdHIgaW5zdGVhZCBvZgorICAgICAgICBQYXNzUmVm
UHRyLgorICAgICAgICAqIGxvYWRlci9hcmNoaXZlL21odG1sL01IVE1MQXJjaGl2ZS5oOiBVcGRh
dGVkIGZvciB0aGUgYWJvdmUuIEFsc28gbWFya2VkIHRoZQorICAgICAgICBjbGFzcyBmaW5hbCBh
bmQgYWRkZWQgb3ZlcnJpZGVzIGZvciB0aGUgZm91ciBuZXcgcG9saWN5IG1lbWJlciBmdW5jdGlv
bnMuCisKKyAgICAgICAgKiBsb2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRNTFBhcnNlci5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpNSFRNTFBhcnNlcjo6cGFyc2VBcmNoaXZlV2l0aEhlYWRlcik6IFBh
c3MgUmVmIGluc3RlYWQgb2YgUmVmUHRyCisgICAgICAgIHRvIHNldE1haW5SZXNvdXJjZSBhbmQg
YWRkU3ViZnJhbWVBcmNoaXZlLgorICAgICAgICAoV2ViQ29yZTo6TUhUTUxQYXJzZXI6OmFkZFJl
c291cmNlVG9BcmNoaXZlKTogRGl0dG8uCisKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVk
Q1NTU3R5bGVTaGVldC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRDU1NTdHlsZVNoZWV0
OjpyZXN0b3JlUGFyc2VkU3R5bGVTaGVldCk6IFJldHVybiBSZWZQdHIgaW5zdGVhZAorICAgICAg
ICBvZiBQYXNzUmVmUHRyLgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNo
ZWV0Lmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRlci9jYWNoZS9D
YWNoZWRSZXNvdXJjZVJlcXVlc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3Vy
Y2VSZXF1ZXN0OjpzZXRJbml0aWF0b3IpOiBUYWtlIGEgcmVmZXJlbmNlIGluc3RlYWQgb2YgYQor
ICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJj
ZVJlcXVlc3QuaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLgorCisgICAgICAgICogbG9hZGVyL2Nv
Y29hL0Rpc2tDYWNoZU1vbml0b3IuaDogUmVtb3ZlZC4gVGhpcyBpcyBhIGR1cGxpY2F0ZSwgdW51
c2VkIGNvcHkKKyAgICAgICAgb2YgRGlza0NhY2hlTW9uaXRvckNvY29hLmguCisKKyAgICAgICAg
KiBsb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvckNvY29hLmg6IFJlbW92ZWQgdW5uZWVkZWQg
ZXhwb3J0aW5nIGFuZCB2aXJ0dWFsCisgICAgICAgIG1lbWJlciBmdW5jdGlvbnMsIG1hZGUgbW9y
ZSB0aGluZ3MgcHJpdmF0ZSwgYW5kIGNoYW5nZWQgcmV0dXJuIHR5cGUgdG8gUmVmUHRyCisgICAg
ICAgIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKiBsb2FkZXIvY29jb2EvRGlza0Nh
Y2hlTW9uaXRvckNvY29hLm1tOgorICAgICAgICAoV2ViQ29yZTo6RGlza0NhY2hlTW9uaXRvcjo6
dHJ5R2V0RmlsZUJhY2tlZFNoYXJlZEJ1ZmZlckZyb21DRlVSTENhY2hlZFJlc3BvbnNlKToKKyAg
ICAgICAgQ2hhbmdlZCByZXR1cm4gdHlwZSB0byBSZWZQdHIgaW5zdGVhZCBvZiBQYXNzUmVmUHRy
LgorCisgICAgICAgICogbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6Okljb25EYXRhYmFzZTo6c2V0SWNvbkRhdGFGb3JJY29uVVJMKTogVGFrZSByYXcgcG9p
bnRlciBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJDb3JlOjpJ
Y29uRGF0YWJhc2U6OmdldE9yQ3JlYXRlSWNvblJlY29yZCk6IFJldHVybiBSZWYgaW5zdGVhZCBv
ZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6SWNvbkRhdGFiYXNlOjpnZXRJbWFnZURh
dGFGb3JJY29uVVJMRnJvbVNRTERhdGFiYXNlKTogUmV0dXJuIFJlZlB0cgorICAgICAgICBpbnN0
ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgICogbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmg6
IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4gQWxzbyBtYXJrZWQgZnVuY3Rpb25zIGZpbmFsCisgICAg
ICAgIGluc3RlYWQgb2Ygb3ZlcnJpZGUuCisgICAgICAgICogbG9hZGVyL2ljb24vSWNvbkRhdGFi
YXNlQmFzZS5oOiBEaXR0by4KKworICAgICAgICAqIGxvYWRlci9pY29uL1BhZ2VVUkxSZWNvcmQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6UGFnZVVSTFJlY29yZDo6UGFnZVVSTFJlY29yZCk6IE1v
dmVkIGluaXRpYWxpemF0aW9uIHRvIHRoZSBoZWFkZXIuCisgICAgICAgIChXZWJDb3JlOjpQYWdl
VVJMUmVjb3JkOjp+UGFnZVVSTFJlY29yZCk6IFdyb3RlIGNvZGUgaGVyZSBpbnN0ZWFkIG9mIGNh
bGxpbmcKKyAgICAgICAgc2V0SWNvblJlY29yZChudWxscHRyKS4KKyAgICAgICAgKFdlYkNvcmU6
OlBhZ2VVUkxSZWNvcmQ6OnNldEljb25SZWNvcmQpOiBUYWtlIFJlZlB0ciYmIGluc3RlYWQgb2Yg
UGFzc1JlZlB0ci4KKyAgICAgICAgKiBsb2FkZXIvaWNvbi9QYWdlVVJMUmVjb3JkLmg6IFVwZGF0
ZCBmb3IgdGhlIGFib3ZlLgorCisgICAgICAgICogbG9hZGVyL2lvcy9RdWlja0xvb2suaDoKKyAg
ICAgICAgKFdlYkNvcmU6OlF1aWNrTG9va0hhbmRsZTo6c2V0Q2xpZW50KTogVGFrZSBSZWYmJiBp
bnN0ZWFkIG9mIFBhc3NSZUZQdHIuCisgICAgICAgICogbG9hZGVyL2lvcy9RdWlja0xvb2subW06
CisgICAgICAgICgtW1dlYlJlc291cmNlTG9hZGVyUXVpY2tMb29rRGVsZWdhdGUgaW5pdFdpdGhS
ZXNvdXJjZUxvYWRlcjpdKTogVGFrZQorICAgICAgICByZWZlcmVuY2UgaW5zdGVhZCBvZiBQYXNz
UmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6UXVpY2tMb29rSGFuZGxlOjpjcmVhdGUpOiBQYXNz
IHJlZmVyZW5jZSBpbnN0ZWFkIG9mIHBvaW50ZXIuCisKKyAgICAgICAgKiBwYWdlL0Nocm9tZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpDaHJvbWU6OnJ1bk9wZW5QYW5lbCk6IFVwZGF0ZWQgdG8g
dGFrZSB0d28gcmVmZXJlbmNlcy4KKyAgICAgICAgKiBwYWdlL0Nocm9tZS5oOiBEaXR0by4KKyAg
ICAgICAgKiBwYWdlL0Nocm9tZUNsaWVudC5oOiBkaXR0by4KKworICAgICAgICAqIHBhZ2UvRE9N
V2luZG93LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRPTVdpbmRvdzo6YXBwbGljYXRpb25DYWNo
ZSk6IFBhc3MgYSByZWZlcmVuY2UuCisgICAgICAgIChXZWJDb3JlOjpET01XaW5kb3c6OnNldExv
Y2F0aW9uKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpET01XaW5kb3c6OmNyZWF0ZVdpbmRv
dyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RE9NV2luZG93OjpvcGVuKTogRGl0dG8uCisK
KyAgICAgICAgKiBwYWdlL0VkaXRvckNsaWVudC5oOiBDaGFuZ2VkIGFyZ3VtZW50cyB0byByZWZl
cmVuY2VzIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKworICAgICAgICAqIHBhZ2UvSGlzdG9yeS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5OjpzdGF0ZU9iamVjdEFkZGVkKTogUGFzcyBh
biBydmFsdWUgcmVmZXJlbmNlLgorCisgICAgICAgICogcGFnZS9Mb2NhdGlvbi5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpMb2NhdGlvbjo6cmVsb2FkKTogUGFzcyByZWZlcmVuY2UgaW5zdGVhZCBv
ZiBwb2ludGVyLgorICAgICAgICAoV2ViQ29yZTo6TG9jYXRpb246OnNldExvY2F0aW9uKTogRGl0
dG8uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9VUkwuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VVJM
OjpzZXRGcmFnbWVudElkZW50aWZpZXIpOiBUYWtlIGEgU3RyaW5nVmlldyByYXRoZXIgdGhhbgor
ICAgICAgICBhIFN0cmluZywgd2hpY2ggaXMgbW9yZSBmbGV4aWJsZSBmb3IgY2FsbGVycy4gQWxz
byBlbGltaW5hdGVkIGFuIHVubmVlZGVkCisgICAgICAgIHN0cmluZyBhbGxvY2F0aW9uIHdoZW4g
dGhlIG9sZCBzdHJpbmcgaGFkIGEgZnJhZ21lbnQgdGhhdCBpcyBiZWluZyByZXBsYWNlZC4KKyAg
ICAgICAgKiBwbGF0Zm9ybS9VUkwuaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLgorCisgICAgICAg
ICogcmVwbGF5L1JlcGxheUlucHV0RGlzcGF0Y2hNZXRob2RzLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkluaXRpYWxOYXZpZ2F0aW9uOjpkaXNwYXRjaCk6IFBhc3MgcmVmZXJlbmNlLgorICAgICAg
ICAqIHN2Zy9TVkdGRUltYWdlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdGRUlt
YWdlRWxlbWVudDo6cmVxdWVzdEltYWdlUmVzb3VyY2UpOiBEaXR0by4KKyAgICAgICAgKiBzdmcv
U1ZHRm9udEZhY2VVcmlFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR0ZvbnRGYWNl
VXJpRWxlbWVudDo6bG9hZEZvbnQpOiBEaXR0by4KKyAgICAgICAgKiBzdmcvU1ZHVXNlRWxlbWVu
dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdVc2VFbGVtZW50Ojp1cGRhdGVFeHRlcm5hbERv
Y3VtZW50KTogRGl0dG8uCisKIDIwMTctMDEtMTUgIE1pY2hhZWwgQ2F0YW56YXJvICA8bWNhdGFu
emFyb0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFtTT1VQXSBTb3VwTmV0d29ya1Nlc3Npb24gY29u
c3RydWN0b3Igc2hvdWxkIGJlIGV4cGxpY2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2lv
cy9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2lvcy9DaGFuZ2VMb2cKaW5kZXggNjFlODQyN2Y4
NmMwYjlmNjI0MzU2YjA3MWQ5MWUxMWJiNzI3MWE5ZS4uOTJlZDQ1NmU4NDIwNzU1ZGFjZGQ2Y2Qy
ZmMwYmIxMzI2OWI5NDJiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9pb3MvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJLaXQvaW9zL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDE3
LTAxLTE1ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUg
UGFzc1JlZlB0ciBmcm9tICJsb2FkZXIiIGRpcmVjdG9yeSBvZiBXZWJDb3JlCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjcwNTUKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dl
YkNocm9tZUNsaWVudElPUy5oOiBVcGRhdGVkIHJ1bk9wZW5QYW5lbCB0byB0YWtlIHJlZmVyZW5j
ZXMuCisgICAgICAgIE1hZGUgY2xhc3MgZmluYWwgYW5kIG1vc3QgZnVuY3Rpb25zIHByaXZhdGUg
YW5kIGZpbmFsLgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudElPUy5t
bToKKyAgICAgICAgKFdlYkNocm9tZUNsaWVudElPUzo6cnVuT3BlblBhbmVsKTogVXBkYXRlZCB0
byB0YWtlIHJlZmVyZW5jZXMuCisKIDIwMTYtMTItMzAgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBw
bGUuY29tPgogCiAgICAgICAgIFJlbW92ZSBQYXNzUmVmUHRyIHVzZSBmcm9tIHRoZSAiZG9tIiBk
aXJlY3RvcnksIHJlbGF0ZWQgY2xlYW51cApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMv
Q2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCmluZGV4IDc1OTM4ZjU2Njdi
NmE2OTQ1N2Q5MWM5MTkzMjIyYTY0Mzc5NjFmNDEuLjI4MDA4YmUwMDNiNjY2OGUxNTY0MDc0ZmZk
Y2ZjOTUwMjM2Zjk4ZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwor
KysgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSw5MCBAQAorMjAxNy0w
MS0xNSAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIFBh
c3NSZWZQdHIgZnJvbSAibG9hZGVyIiBkaXJlY3Rvcnkgb2YgV2ViQ29yZQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY3MDU1CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJD
aHJvbWVDbGllbnQuaDogVXBkYXRlZCBmb3IgY2hhbmdlcyB0byBDaHJvbWVDbGllbnQuCisgICAg
ICAgIEFsc28gbWFkZSBjbGFzcyBmaW5hbCBhbmQgbW9zdCBmdW5jdGlvbnMgcHJpdmF0ZSBhbmQg
ZmluYWwuCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50Lm1tOgorICAg
ICAgICAoV2ViQ2hyb21lQ2xpZW50OjpydW5PcGVuUGFuZWwpOiBVcGRhdGVkIHRvIHRha2UgcmVm
ZXJlbmNlcy4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oOiBV
cGRhdGVkIGZvciBjaGFuZ2VzIHRvIEVkaXRvckNsaWVudC4KKyAgICAgICAgKiBXZWJDb3JlU3Vw
cG9ydC9XZWJFZGl0b3JDbGllbnQubW06CisgICAgICAgICgtW1dlYlVuZG9TdGVwIGluaXRXaXRo
VW5kb1N0ZXA6XSk6IFRha2UgcmVmZXJlbmNlIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAg
ICAgKCtbV2ViVW5kb1N0ZXAgc3RlcFdpdGhVbmRvU3RlcDpdKTogRGl0dG8uCisgICAgICAgICgt
W1dlYlVuZG9TdGVwIHN0ZXBdKTogUmV0dXJuIHJlZmVyZW5jZSBpbnN0ZWFkIG9mIHBvaW50ZXIu
CisgICAgICAgICgtW1dlYkVkaXRvclVuZG9UYXJnZXQgdW5kb0VkaXRpbmc6XSk6IFVwZGF0ZWQg
Zm9yIHRoZSBhYm92ZS4KKyAgICAgICAgKC1bV2ViRWRpdG9yVW5kb1RhcmdldCByZWRvRWRpdGlu
ZzpdKTogRGl0dG8uCisgICAgICAgIChXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb09yUmVk
b1N0ZXApOiBUYWtlIHJlZmVyZW5jZSBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIuCisg
ICAgICAgIChXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb1N0ZXApOiBEaXR0by4KKyAgICAg
ICAgKFdlYkVkaXRvckNsaWVudDo6cmVnaXN0ZXJSZWRvU3RlcCk6IERpdHRvLgorCisgICAgICAg
ICogV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaDogVXBkYXRlZCBmb3IgY2hh
bmdlcyB0bworICAgICAgICBGcmFtZUxvYWRlckNsaWVudCwgbWFya2VkIGZ1bmN0aW9ucyBmaW5h
bCBpbnN0ZWFkIG9mIG92ZXJyaWRlLgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkZyYW1l
TG9hZGVyQ2xpZW50Lm1tOgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNo
RGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKTogVGFrZQorICAgICAgICBwb2ludGVyIGlu
c3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNw
YXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24pOiBEaXR0by4KKyAgICAgICAgKG1h
a2VGb3JtRmllbGRWYWx1ZXNEaWN0aW9uYXJ5KTogVGFrZSBhIHJlZmVyZW5jZS4KKyAgICAgICAg
KFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQpOiBUYWtl
IFJlZiYmIGluc3RlYWQKKyAgICAgICAgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYkZyYW1l
TG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKTogVGFrZSBhIHJlZmVyZW5jZSBp
bnN0ZWFkCisgICAgICAgIG9mIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJGcmFtZUxvYWRlckNs
aWVudDo6YWN0aW9uRGljdGlvbmFyeSk6IFRha2UgYSBwb2ludGVyIGluc3RlYWQgb2YgUGFzc1Jl
UHRyLgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1lKTogVGFrZSBh
IHJlZmVyZW5jZSBpbnN0ZWFkIG9mIGEgcG9pbnRlci4KKyAgICAgICAgKFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpjcmVhdGVQbHVnaW4pOiBEaXR0by4KKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xp
ZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KTogRGl0dG8uCisgICAgICAgIChXZWJGcmFtZUxv
YWRlckNsaWVudDo6Y3JlYXRlTmV0d29ya2luZ0NvbnRleHQpOiBEaXR0by4KKyAgICAgICAgKFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpkaWRDcmVhdGVRdWlja0xvb2tIYW5kbGUpOiBQYXNzIGEgcmVm
ZXJlbmNlLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVOZXR3b3JraW5nQ29u
dGV4dC5oOiBVc2UgUmVmIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKiBXZWJDb3Jl
U3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0Lm1tOiBUd2VhayBzdHlsZSBhIGJpdC4K
KworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLmg6
IFRha2UgYSByZWZlcmVuY2UgaW5zdGVhZCBvZgorICAgICAgICBQYXNzUmVmUHRyLiBVc2UgUmVm
UHRyIGZvciBjbGFzcyBmaWVsZC4KKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJPcGVuUGFu
ZWxSZXN1bHRMaXN0ZW5lci5tbToKKyAgICAgICAgKC1bV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVu
ZXIgZGVhbGxvY10pOiBEZWxldGVkLiBDb21waWxlciB3aWxsIG5vdyBkbyBpdAorICAgICAgICBj
b3JyZWN0bHkgd2l0aG91dCB1cyBkZWNsYXJpbmcgYW55dGhpbmcgZXhwbGljaXRseS4KKyAgICAg
ICAgKC1bV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIgY2FuY2VsXSk6IEdldCByaWQgb2YgaGFu
ZC13cml0dGVuIGRlcmVmIGNvZGUsCisgICAgICAgIGFuZCBsZXQgUmVmUHRyIGRvIHRoZSB3b3Jr
LgorICAgICAgICAoLVtXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lciBjaG9vc2VGaWxlbmFtZTpd
KTogRGl0dG8uCisgICAgICAgICgtW1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyIGNob29zZUZp
bGVuYW1lczpdKTogRGl0dG8uCisgICAgICAgICgtW1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVy
IGNob29zZUZpbGVuYW1lczpkaXNwbGF5U3RyaW5nOmljb25JbWFnZTpdKToKKyAgICAgICAgUmV3
cm90ZSB0byB1c2UgYSBtb2Rlcm4gT2JqZWN0aXZlLUMgZm9yIGxvb3AsIHJlc2VydmVJbml0aWFs
Q2FwYWNpdHksCisgICAgICAgIGFuZCB1bmNoZWNrZWRBcHBlbmQuCisKKyAgICAgICAgKiBXZWJW
aWV3L1dlYkFyY2hpdmUubW06CisgICAgICAgICgtW1dlYkFyY2hpdmUgaW5pdFdpdGhNYWluUmVz
b3VyY2U6c3VicmVzb3VyY2VzOnN1YmZyYW1lQXJjaGl2ZXM6XSk6CisgICAgICAgIFVwZGF0ZWQg
Zm9yIGNoYW5nZXMgdG8gTGVnYWN5V2ViQXJjaGl2ZS4KKyAgICAgICAgKC1bV2ViQXJjaGl2ZSBt
YWluUmVzb3VyY2VdKTogRGl0dG8uCisgICAgICAgICgtW1dlYkFyY2hpdmUgc3VicmVzb3VyY2Vz
XSk6IERpdHRvLgorICAgICAgICAoLVtXZWJBcmNoaXZlIHN1YmZyYW1lQXJjaGl2ZXNdKTogRGl0
dG8uCisKKyAgICAgICAgKiBXZWJWaWV3L1dlYkRhdGFTb3VyY2UubW06CisgICAgICAgICgtW1dl
YkRhdGFTb3VyY2UgX2FkZFN1YmZyYW1lQXJjaGl2ZXM6XSk6IFVzZSBhIG1vZGVybiBPYmplY3Rp
dmUtQyBmb3IgbG9vcAorICAgICAgICBpbnN0ZWFkIG9mIE5TRW51bWVyYXRvci4KKyAgICAgICAg
KC1bV2ViRGF0YVNvdXJjZSBfZmlsZVdyYXBwZXJGb3JVUkw6XSk6IFVzZSBhdXRvLgorICAgICAg
ICAoLVtXZWJEYXRhU291cmNlIF9kb2N1bWVudEZyYWdtZW50V2l0aEFyY2hpdmU6XSk6IFBhc3Mg
YSByZWZlcmVuY2UuCisgICAgICAgICgtW1dlYkRhdGFTb3VyY2UgbWFpblJlc291cmNlXSk6IERp
dHRvLgorICAgICAgICAoLVtXZWJEYXRhU291cmNlIHN1YnJlc291cmNlc10pOiBEaXR0by4KKyAg
ICAgICAgKC1bV2ViRGF0YVNvdXJjZSBzdWJyZXNvdXJjZUZvclVSTDpdKTogRGl0dG8uCisgICAg
ICAgICgtW1dlYkRhdGFTb3VyY2UgYWRkU3VicmVzb3VyY2U6XSk6IERpdHRvLgorCisgICAgICAg
ICogV2ViVmlldy9XZWJSZXNvdXJjZS5tbToKKyAgICAgICAgKC1bV2ViUmVzb3VyY2VQcml2YXRl
IGluaXRXaXRoQ29yZVJlc291cmNlOl0pOiBUYWtlIFJlZiYmIGluc3RlYWQgb2YgUGFzc1JlZlB0
ci4KKyAgICAgICAgKC1bV2ViUmVzb3VyY2VQcml2YXRlIGRlYWxsb2NdKTogUmVtb3ZlIGV4cGxp
Y2l0IGRlcmVmIHNpbmNlIFJlZlB0ciB3aWxsIG5vdyB0YWtlCisgICAgICAgIGNhcmUgb2YgaXQK
KyAgICAgICAgKC1bV2ViUmVzb3VyY2UgaW5pdFdpdGhDb2RlcjpdKTogUGFzcyBhIHJlZmVyZW5j
ZS4KKyAgICAgICAgKC1bV2ViUmVzb3VyY2UgZW5jb2RlV2l0aENvZGVyOl0pOiBVcGRhdGVkIHNp
bmNlIGNvcmVSZXNvdXJjZSBpcyBub3cgUmVmUHRyLgorICAgICAgICAoLVtXZWJSZXNvdXJjZSBf
aW5pdFdpdGhDb3JlUmVzb3VyY2U6XSk6IFRha2UgUmVmJiYgaW5zdGVhZCBvZiBQYXNzUmVmUHRy
LgorICAgICAgICAoLVtXZWJSZXNvdXJjZSBfY29yZVJlc291cmNlXSk6IFJldHVybiByZWZlcmVu
Y2UgcmF0aGVyIHRoYW4gcG9pbnRlci4KKyAgICAgICAgKC1bV2ViUmVzb3VyY2UgX2luaXRXaXRo
RGF0YTpVUkw6TUlNRVR5cGU6dGV4dEVuY29kaW5nTmFtZTpmcmFtZU5hbWU6cmVzcG9uc2U6Y29w
eURhdGE6XSk6CisgICAgICAgIEFkZGVkIGNvZGUgdG8gaGFuZGxlIHRoZSBudWxsIGNhc2UgYW5k
IHBhc3MgYSByZWZlcmVuY2UgcmF0aGVyIHRoYW4gYSBwb2ludGVyLgorICAgICAgICAqIFdlYlZp
ZXcvV2ViUmVzb3VyY2VJbnRlcm5hbC5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKIDIwMTct
MDEtMTUgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CiAKICAgICAgICAg
RGUtZHVwbGljYXRlIG1vcmUgKG5lYXJseSkgaWRlbnRpY2FsIGNvZGUgaW4gRWRpdG9yKE1hY3xJ
T1MpLm1tCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cgYi9Tb3VyY2Uv
V2ViS2l0L3dpbi9DaGFuZ2VMb2cKaW5kZXggY2Q3ZjY4ZGY1YmY2MTMzZTAyZDIxYzhlYzYyYjlj
OTJkZTU3MmUwMC4uNzA3YzY5YzlkMzBiMDE0MjE5OGNhYzg0ZDc0NDJhY2Q4NjNhN2VjZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQv
d2luL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDE3LTAxLTE1ICBEYXJpbiBBZGxlciAg
PGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgUGFzc1JlZlB0ciBmcm9tICJsb2Fk
ZXIiIGRpcmVjdG9yeSBvZiBXZWJDb3JlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xNjcwNTUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICAqIFBsdWdpbnMvUGx1Z2luVmlldy5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpQbHVnaW5WaWV3OjptZWRpYUNhblN0YXJ0KTogRml4IGNhbGwgdG8gZGlzcGF0Y2hEaWRG
YWlsVG9TdGFydFBsdWdpbgorICAgICAgICBieSBjYWxsaW5nIGl0IGRpcmVjdGx5IG9uIFdlYkZy
YW1lTG9hZGVyQ2xpZW50LiBJZiBteSB0aGVvcnkgaXMgY29ycmVjdCwgdGhlIG9sZAorICAgICAg
ICBjYWxsIGhhcyBiZWVuIGJyb2tlbiBhbmQgZG9pbmcgbm90aGluZyBzaW5jZSByMTc3OTQxLCB0
d28geWVhcnMgYWdvLCB3aGljaCBtYWRlCisgICAgICAgIHRoZSBhcmd1bWVudCB0eXBlcyBkaWZm
ZXJlbnQgYmV0d2VlbiBGcmFtZUxvYWRlckNsaWVudCBhbmQgV2ViRnJhbWVMb2FkZXJDbGllbnQs
CisgICAgICAgIGxlYXZpbmcgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmFpbFRv
U3RhcnRQbHVnaW4gYXMgZGVhZCBjb2RlLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2Vi
Q2hyb21lQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYkNocm9tZUNsaWVudDo6cnVuT3BlblBhbmVs
KTogVXBkYXRlZCBmb3IgY2hhbmdlIHRvIENocm9tZUNsaWVudC4KKyAgICAgICAgKiBXZWJDb3Jl
U3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaDogRGl0dG8uCisKKyAgICAgICAgKiBXZWJDb3JlU3Vw
cG9ydC9XZWJFZGl0b3JDbGllbnQuY3BwOgorICAgICAgICAoV2ViRWRpdG9yVW5kb0NvbW1hbmQ6
OldlYkVkaXRvclVuZG9Db21tYW5kKTogVGFrZSBhIHJlZmVyZW5jZSBpbnN0ZWFkIG9mCisgICAg
ICAgIGEgUGFzc1JlZlB0ci4gQWxzbyB1c2UgUmVmIGluc3RlYWQgb2YgUmVmUHRyLgorICAgICAg
ICAoV2ViRWRpdG9yQ2xpZW50OjpzaG91bGRDaGFuZ2VUeXBpbmdTdHlsZSk6IERlbGV0ZWQuIEVt
cHR5IGZ1bmN0aW9uIHRoYXQgd2FzCisgICAgICAgIG5ldmVyIGNhbGxlZC4KKyAgICAgICAgKFdl
YkVkaXRvckNsaWVudDo6d2ViVmlld0RpZENoYW5nZVR5cGluZ1N0eWxlKTogRGl0dG8uCisgICAg
ICAgIChXZWJFZGl0b3JDbGllbnQ6OndlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb24pOiBEaXR0by4K
KyAgICAgICAgKFdlYkVkaXRvckNsaWVudDo6cmVnaXN0ZXJVbmRvU3RlcCk6ICBUYWtlIHJlZmVy
ZW5jZSBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJFZGl0b3JDbGllbnQ6OnJl
Z2lzdGVyUmVkb1N0ZXApOiBEaXR0by4KKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJFZGl0
b3JDbGllbnQuaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLiBBbHNvIG1hcmtlZCB0aGUKKyAgICAg
ICAgY2xhc3MgYW5kIG1lbWJlciBmdW5jdGlvbnMgZmluYWwgYW5kIG1hZGUgdGhlbSBhbGwgcHJp
dmF0ZSwgd2hpY2ggd2lsbAorICAgICAgICBoZWxwIHVzIGNhdGNoIGlmIHRoZXJlIGFyZSBhbnkg
dGhhdCBkb24ndCBjb3JyZWN0bHkgbWF0Y2ggV2ViQ29yZS4KKworICAgICAgICAqIFdlYkNvcmVT
dXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbik6IFVwZGF0ZWQK
KyAgICAgICAgZm9yIGNoYW5nZSB0byBDaHJvbWVDbGllbnQuCisgICAgICAgIChXZWJGcmFtZUxv
YWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKTogRGl0
dG8uCisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1p
dEV2ZW50KTogRGl0dG8uCisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hX
aWxsU3VibWl0Rm9ybSk6IERpdHRvLgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNy
ZWF0ZUZyYW1lKTogRGl0dG8uIEFsc28gbWVyZ2VkIHR3byBmdW5jdGlvbnMgaW50bworICAgICAg
ICBvbmUgYmVjYXVzZSBvbmUgd2FzIHByaXZhdGUgYW5kIG9ubHkgY2FsbGVkIGJ5IHRoZSBvdGhl
ci4KKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4pOiBEaXR0by4K
KyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KTog
RGl0dG8uCisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlTmV0d29ya2luZ0Nv
bnRleHQpOiBEaXR0by4KKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNs
aWVudC5oOiBEaXR0by4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTmV0d29y
a2luZ0NvbnRleHQuaDoKKyAgICAgICAgKFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQ6OmNyZWF0
ZSk6IFJldHVybiBhIFJlZiBpbnN0ZWFkIG9mIGEgUGFzc1JlZlB0ci4KKwogMjAxNy0wMS0xMiAg
Sm9zZXBoIFBlY29yYXJvICA8cGVjb3Jhcm9AYXBwbGUuY29tPgogCiAgICAgICAgIFJlbW92ZSB1
bm5lY2Vzc2FyeSBpbmNsdWRlcyBvZiBQYWdlLmgKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCA3Yjg5M2IxMmRhMDQz
MzA1N2ZjYjAyYTMzZTkzYTNjZjE5NmVhNDVmLi4wZWQ4N2EyYzc0N2Q0M2NmNTE1OGE1YTc2NThk
ZTg3NzIyZjA3M2VjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMzIEBACisyMDE3LTAxLTE1ICBE
YXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgUGFzc1JlZlB0
ciBmcm9tICJsb2FkZXIiIGRpcmVjdG9yeSBvZiBXZWJDb3JlCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjcwNTUKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNoYXJlZC9BUElXZWJBcmNoaXZlLmg6IFVz
ZSBSZWZQdHImJiBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgICogU2hhcmVkL0FQSVdl
YkFyY2hpdmUubW06CisgICAgICAgIChBUEk6OldlYkFyY2hpdmU6OmNyZWF0ZSk6IERpdHRvLgor
ICAgICAgICAoQVBJOjpXZWJBcmNoaXZlOjpXZWJBcmNoaXZlKTogRGl0dG8uCisgICAgICAgIChB
UEk6OldlYkFyY2hpdmU6OnN1YnJlc291cmNlcyk6IERpdHRvLgorICAgICAgICAoQVBJOjpXZWJB
cmNoaXZlOjpzdWJmcmFtZUFyY2hpdmVzKTogRGl0dG8uCisKKyAgICAgICAgKiBTaGFyZWQvVGV4
dENoZWNrZXJTdGF0ZS5oOiBJbml0aWFsaXplIGRhdGEgbWVtYmVycyBzbyBjbGFzc2VzCisgICAg
ICAgIHVzaW5nIHRoaXMgd29uJ3QgaGF2ZSB0byBleHBsaWNpdGx5IGluaXRhbGl6ZSB0aGVtLgor
CisgICAgICAgICogVUlQcm9jZXNzL1dlYkljb25EYXRhYmFzZS5jcHA6CisgICAgICAgIChXZWJL
aXQ6OldlYkljb25EYXRhYmFzZTo6c2V0SWNvbkRhdGFGb3JJY29uVVJMKTogUGFzcyBhIHJhdwor
ICAgICAgICBwb2ludGVyIHRvIFdlYkNvcmUuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFn
ZVByb3h5Lmg6IFJlbW92ZWQgZm9yd2FyZCBkZWNsYXJhdGlvbiBvZgorICAgICAgICBTdHJpbmdQ
YWlyVmVjdG9yLCBub3QgbmVlZGVkIGhlcmUuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0ljb25E
YXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYklj
b25EYXRhYmFzZVByb3h5OjpXZWJJY29uRGF0YWJhc2VQcm94eSk6IFRha2UgYSByZWZlcmVuY2Uu
CisgICAgICAgIChXZWJLaXQ6OldlYkljb25EYXRhYmFzZVByb3h5OjpyZXRhaW5JY29uRm9yUGFn
ZVVSTCk6IFVwZGF0ZWQgZm9yIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYktpdDo6V2ViSWNvbkRh
dGFiYXNlUHJveHk6OnJlbGVhc2VJY29uRm9yUGFnZVVSTCk6IERpdHRvLgorICAgICAgICAoV2Vi
S2l0OjpXZWJJY29uRGF0YWJhc2VQcm94eTo6c3luY2hyb25vdXNJY29uRm9yUGFnZVVSTCk6IERp
dHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJJY29uRGF0YWJhc2VQcm94eTo6bG9hZERlY2lzaW9u
Rm9ySWNvblVSTCk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJJY29uRGF0YWJhc2VQcm94
eTo6cmVjZWl2ZWRJY29uTG9hZERlY2lzaW9uKTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6Oldl
Ykljb25EYXRhYmFzZVByb3h5OjppY29uRGF0YUZvckljb25VUkwpOiBEaXR0by4KKyAgICAgICAg
KFdlYktpdDo6V2ViSWNvbkRhdGFiYXNlUHJveHk6OnNldEljb25VUkxGb3JQYWdlVVJMKTogRGl0
dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkljb25EYXRhYmFzZVByb3h5OjpzZXRJY29uRGF0YUZv
ckljb25VUkwpOiBEaXR0by4KKyAgICAgICAgKiBXZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJ
Y29uRGF0YWJhc2VQcm94eS5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisgICAgICAgIE1hcmtl
ZCB0aGUgY2xhc3MgZmluYWwsIG1hZGUgbW9zdCBmdW5jdGlvbnMgcHJpdmF0ZSBhbmQgZmluYWwu
CisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlTmF2
aWdhdGlvbkFjdGlvbi5jcHA6CisgICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlTmF2aWdh
dGlvbkFjdGlvbjo6SW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uKToKKyAgICAgICAgUmVt
b3ZlZCBhc3NlcnRpb24gdGhhdCBhIHBvaW50ZXIgaXMgbm9uLW51bGwgc2luY2UgdGhhdCBwb2lu
dGVyIGlzIG5vdyBhCisgICAgICAgIHJlZmVyZW5jZS4gTGVmdCB1c2Ugb2YgUGFzc1JlZlB0ciBo
ZXJlIGZvciBub3cuegorCisgICAgICAgICogV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0
cmF0ZWd5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViTG9hZGVyU3RyYXRlZ3k6OnNjaGVkdWxl
TG9hZCk6IFVwZGF0ZWQgc2luY2UgYXBwbGljYXRpb24gY2FjaGUKKyAgICAgICAgaG9zdCBpcyBu
b3cgYSByZWZlcmVuY2UgcmF0aGVyIHRobmEgYSBwb2ludGVyLgorICAgICAgICAqIFdlYlByb2Nl
c3MvTmV0d29yay9XZWJSZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlJl
c291cmNlTG9hZGVyOjp3aWxsU2VuZFJlcXVlc3QpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6
V2ViUmVzb3VyY2VMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZSk6IERpdHRvLgorICAgICAgICAo
V2ViS2l0OjpXZWJSZXNvdXJjZUxvYWRlcjo6ZGlkRmFpbFJlc291cmNlTG9hZCk6IERpdHRvLgor
CisgICAgICAgICogV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuY3BwOgorICAgICAgICAo
V2ViS2l0OjpidWlsZEhUVFBIZWFkZXJzKTogR290IHJpZCBvZiB1bm5lZWRlZCB1c2Ugb2YgU3Ry
aW5nOjpmb3JtYXQuCisgICAgICAgIChXZWJLaXQ6OlBsdWdpblZpZXc6OmNyZWF0ZSk6IFRha2Ug
YSByZWZlcmVuY2UgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViS2l0OjpQbHVn
aW5WaWV3OjpQbHVnaW5WaWV3KTogRGl0dG8uIEFsc28gbW92ZWQgbXVjaCBvZiB0aGUgZGF0YQor
ICAgICAgICBtZW1iZXIgaW5pdGlhbGl6YXRpb24gdG8gdGhlIGNsYXNzIGRlZmluaXRpb24uCisg
ICAgICAgIChXZWJLaXQ6OlBsdWdpblZpZXc6OnJlY3JlYXRlQW5kSW5pdGlhbGl6ZSk6IFRha2Ug
UmVmJiYgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViS2l0OjpQbHVnaW5WaWV3
OjptYW51YWxMb2FkRGlkUmVjZWl2ZVJlc3BvbnNlKTogVXBkYXRlZCBmb3IgY2hhbmdlIHRvCisg
ICAgICAgIE1hbnVhbFN0cmVhbVN0YXRlIGVudW1lcmF0aW9uLgorICAgICAgICAoV2ViS2l0OjpQ
bHVnaW5WaWV3OjptYW51YWxMb2FkRGlkUmVjZWl2ZURhdGEpOiBEaXR0by4KKyAgICAgICAgKFdl
YktpdDo6UGx1Z2luVmlldzo6bWFudWFsTG9hZERpZEZpbmlzaExvYWRpbmcgRGl0dG8uKToKKyAg
ICAgICAgKFdlYktpdDo6UGx1Z2luVmlldzo6bWFudWFsTG9hZERpZEZhaWwpOiBEaXR0by4KKyAg
ICAgICAgKFdlYktpdDo6UGx1Z2luVmlldzo6bGl2ZVJlc291cmNlRGF0YSk6IFJldHVybiBSZWZQ
dHIgaW5zZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJLaXQ6OlBsdWdpblZpZXc6OnJl
ZGVsaXZlck1hbnVhbFN0cmVhbSk6IFVwZGF0ZWQgZm9yIE1hbnVhbFN0cmVhbVN0YXRlLgorICAg
ICAgICAqIFdlYlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3Lmg6IFVwZGF0ZWQgZm9yIHRoZSBh
Ym92ZS4gQWxzbyBjaGFuZ2VkCisgICAgICAgIE1hbnVhbFN0cmVhbVN0YXRlIGludG8gYW4gZW51
bSBjbGFzcy4KKworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21l
Q2xpZW50LmNwcDogQ2hhbmdlZCBtX3BhZ2UgdG8gYSByZWZlcmVuY2UuCisgICAgICAgIChXZWJL
aXQ6OldlYkNocm9tZUNsaWVudDo6cnVuT3BlblBhbmVsKTogVGFrZSBib3RoIGFyZ3VtZW50cyBh
cyByZWZlcmVuY2VzLgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hy
b21lQ2xpZW50Lmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIFdlYlByb2Nl
c3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktpdDo6
V2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9TdGVwKTogVGFrZSByZWZlcmVuY2UgaW5zdGVh
ZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViS2l0OjpXZWJFZGl0b3JDbGllbnQ6OnJlZ2lz
dGVyUmVkb1N0ZXApOiBEaXR0by4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L1dlYkVkaXRvckNsaWVudC5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUKKworICAgICAgICAqIFdl
YlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JO
ZXdXaW5kb3dBY3Rpb24pOgorICAgICAgICBVcGRhdGVkIGZvciBjaGFuZ2UgdG8gRnJhbWVMb2Fk
ZXJDbGllbnQuCisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24pOiBEaXR0by4KKyAgICAgICAgKFdlYktp
dDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudCk6IERp
dHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxs
U3VibWl0Rm9ybSk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVu
dDo6Y3JlYXRlRnJhbWUpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmNyZWF0ZVBsdWdpbik6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxv
YWRlckNsaWVudDo6cmVjcmVhdGVQbHVnaW4pOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQpOiBEaXR0by4KKyAgICAg
ICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0
KTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaWRSZXF1
ZXN0QXV0b2NvbXBsZXRlKTogRGl0dG8uCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3Vw
cG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAg
ICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L2lvcy9XZWJDaHJvbWVDbGllbnRJT1Mu
bW06CisgICAgICAgIChXZWJLaXQ6OldlYkNocm9tZUNsaWVudDo6ZGlkUmVjZWl2ZU1vYmlsZURv
Y1R5cGUpOiBVcGRhdGVkIHNpbmNlIG1fcGFnZSBpcyBhCisgICAgICAgIHJlZmVyZW5jZSBub3cu
CisgICAgICAgIChXZWJLaXQ6OldlYkNocm9tZUNsaWVudDo6b2JzZXJ2ZWRDb250ZW50Q2hhbmdl
KTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkNocm9tZUNsaWVudDo6bm90aWZ5UmV2ZWFs
ZWRTZWxlY3Rpb25CeVNjcm9sbGluZ0ZyYW1lKTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6Oldl
YkNocm9tZUNsaWVudDo6ZGlkTGF5b3V0KTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkNo
cm9tZUNsaWVudDo6ZGlkU3RhcnRPdmVyZmxvd1Njcm9sbCk6IERpdHRvLgorICAgICAgICAoV2Vi
S2l0OjpXZWJDaHJvbWVDbGllbnQ6OmRpZEVuZE92ZXJmbG93U2Nyb2xsKTogRGl0dG8uCisgICAg
ICAgIChXZWJLaXQ6OldlYkNocm9tZUNsaWVudDo6aGFzU3RhYmxlUGFnZVNjYWxlRmFjdG9yKTog
RGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkNocm9tZUNsaWVudDo6c2hvd1BsYXliYWNrVGFy
Z2V0UGlja2VyKTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkNocm9tZUNsaWVudDo6ZXZl
bnRUaHJvdHRsaW5nRGVsYXkpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViQ2hyb21lQ2xp
ZW50OjpkZXZpY2VPcmllbnRhdGlvbik6IERpdHRvLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9X
ZWJQYWdlL1dlYlBhZ2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpXZWJQYWdlKTog
UGFzcyByZWZlcmVuY2UuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OmNyZWF0ZVBsdWdpbik6
IFJldHVybiBSZWZQdHIgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViS2l0OjpX
ZWJQYWdlOjpmcm9tQ29yZVBhZ2UpOiBVcGRhdGVkIGZvciBjaGFuZ2UgdG8gV2ViQ2hyb21lQ2xp
ZW50LgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpzZXRIZWFkZXJQYWdlQmFubmVyKTogVGFr
ZSBwb2ludGVyIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYktpdDo6V2ViUGFn
ZTo6c2V0Rm9vdGVyUGFnZUJhbm5lcik6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdl
OjpzZXRBY3RpdmVPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcik6IFRha2UgUmVmJiYgaW5zdGVhZCBv
ZgorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpjdXJyZW50
U2VsZWN0aW9uQXNSYW5nZSk6IFJldHVybiBSZWZQdHIgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgor
ICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpyYW5nZUZyb21FZGl0aW5nUmFuZ2UpOiBEaXR0by4K
KyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oOiBVcGRhdGVkIGZvciB0aGUg
YWJvdmUuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvZWZsL1dlYlBhZ2VFZmwuY3Bw
OgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpjYWNoZWRSZXNwb25zZURhdGFGb3JVUkwpOiBS
ZXR1cm4gUmVmUHRyIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKiBXZWJQcm9jZXNz
L1dlYlBhZ2UvZ3RrL1dlYlBhZ2VHdGsuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpj
YWNoZWRSZXNwb25zZURhdGFGb3JVUkwpOiBEaXR0by4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dl
YlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW06CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OmNhY2hl
ZFJlc3BvbnNlRGF0YUZvclVSTCk6IERpdHRvLgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFn
ZS9tYWMvV2ViUGFnZU1hYy5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6Y2FjaGVkUmVz
cG9uc2VEYXRhRm9yVVJMKTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnNldFRv
cE92ZXJoYW5nSW1hZ2UpOiBUYWtlIHJhdyBwb2ludGVyIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4K
KyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6c2V0Qm90dG9tT3ZlcmhhbmdJbWFnZSk6IERpdHRv
LgorCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6V2ViUHJvY2Vzczo6V2ViUHJvY2Vzcyk6IFBhc3MgYSByZWZlcmVuY2UuIE1vdmUgbW9zdCBp
bml0aWFsaXphdGlvbiB0bworICAgICAgICB0aGUgY2xhc3MgZGVmaW5pdGlvbi4KKyAgICAgICAg
KiBXZWJQcm9jZXNzL1dlYlByb2Nlc3MuaDogVXBkYWVkIGZvciB0aGUgYWJvdmUuCisKIDIwMTct
MDEtMTQgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CiAKICAgICAgICAg
UmVtb3ZlIHVudXNlZCBXS1ZpZXcgaW5pdGlhbGl6ZXIgcGFyYW1ldGVyCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3Vt
ZW50LmNwcAppbmRleCA3YWYyNjA4YzA5NmIyODc5M2Y2M2IyZDFiN2QzOTViNzliNDRmNzljLi4x
ODllZjFjMTZmMDAxMTRmYmY0N2EyNjEzM2JmYzZlZGMwNWRlMTgzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1
bWVudC5jcHAKQEAgLTMxNDEsNyArMzE0MSw3IEBAIHZvaWQgRG9jdW1lbnQ6OnByb2Nlc3NIdHRw
RXF1aXYoY29uc3QgU3RyaW5nJiBlcXVpdiwgY29uc3QgU3RyaW5nJiBjb250ZW50LCBib29sCiAg
ICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgY29tcGxldGVkVVJMID0gY29tcGxldGVV
UkwodXJsU3RyaW5nKTsKICAgICAgICAgICAgIGlmICghcHJvdG9jb2xJc0phdmFTY3JpcHQoY29t
cGxldGVkVVJMKSkKLSAgICAgICAgICAgICAgICBmcmFtZS0+bmF2aWdhdGlvblNjaGVkdWxlcigp
LnNjaGVkdWxlUmVkaXJlY3QodGhpcywgZGVsYXksIGNvbXBsZXRlZFVSTCk7CisgICAgICAgICAg
ICAgICAgZnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZVJlZGlyZWN0KCp0aGlz
LCBkZWxheSwgY29tcGxldGVkVVJMKTsKICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAg
ICAgIFN0cmluZyBtZXNzYWdlID0gIlJlZnVzZWQgdG8gcmVmcmVzaCAiICsgbV91cmwuc3RyaW5n
Q2VudGVyRWxsaXBzaXplZFRvTGVuZ3RoKCkgKyAiIHRvIGEgamF2YXNjcmlwdDogVVJMIjsKICAg
ICAgICAgICAgICAgICBhZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpTZWN1cml0eSwg
TWVzc2FnZUxldmVsOjpFcnJvciwgbWVzc2FnZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9lZGl0aW5nL0NvbXBvc2l0ZUVkaXRDb21tYW5kLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRp
bmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuY3BwCmluZGV4IGNjZTljYWFlYzFhMDFlZTlmNDhiM2Fk
YTU4MmFmYTJhNzExYzYxODAuLmY3ZmQ0ODQ4YjdlODM2M2UxZDliMDFlYTM5Nzc4YWJiNWJjOGQ0
ODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1h
bmQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQu
Y3BwCkBAIC0yMzksNyArMjM5LDcgQEAgdm9pZCBFZGl0Q29tbWFuZENvbXBvc2l0aW9uOjp1bmFw
cGx5KCkKICAgICBmb3IgKHNpemVfdCBpID0gc2l6ZTsgaTsgLS1pKQogICAgICAgICBtX2NvbW1h
bmRzW2kgLSAxXS0+ZG9VbmFwcGx5KCk7CiAKLSAgICBmcmFtZS0+ZWRpdG9yKCkudW5hcHBsaWVk
RWRpdGluZyh0aGlzKTsKKyAgICBmcmFtZS0+ZWRpdG9yKCkudW5hcHBsaWVkRWRpdGluZygqdGhp
cyk7CiAKICAgICBpZiAoQVhPYmplY3RDYWNoZTo6YWNjZXNzaWJpbGl0eUVuYWJsZWQoKSkKICAg
ICAgICAgbV9yZXBsYWNlZFRleHQucG9zdFRleHRTdGF0ZUNoYW5nZU5vdGlmaWNhdGlvbkZvclVu
YXBwbHkobV9kb2N1bWVudC0+ZXhpc3RpbmdBWE9iamVjdENhY2hlKCkpOwpAQCAtMjY1LDcgKzI2
NSw3IEBAIHZvaWQgRWRpdENvbW1hbmRDb21wb3NpdGlvbjo6cmVhcHBseSgpCiAgICAgZm9yIChh
dXRvJiBjb21tYW5kIDogbV9jb21tYW5kcykKICAgICAgICAgY29tbWFuZC0+ZG9SZWFwcGx5KCk7
CiAKLSAgICBmcmFtZS0+ZWRpdG9yKCkucmVhcHBsaWVkRWRpdGluZyh0aGlzKTsKKyAgICBmcmFt
ZS0+ZWRpdG9yKCkucmVhcHBsaWVkRWRpdGluZygqdGhpcyk7CiAKICAgICBpZiAoQVhPYmplY3RD
YWNoZTo6YWNjZXNzaWJpbGl0eUVuYWJsZWQoKSkKICAgICAgICAgbV9yZXBsYWNlZFRleHQucG9z
dFRleHRTdGF0ZUNoYW5nZU5vdGlmaWNhdGlvbkZvclJlYXBwbHkobV9kb2N1bWVudC0+ZXhpc3Rp
bmdBWE9iamVjdENhY2hlKCkpOwpAQCAtNDE2LDE0ICs0MTYsMTQgQEAgRWRpdENvbW1hbmRDb21w
b3NpdGlvbiogQ29tcG9zaXRlRWRpdENvbW1hbmQ6OmNvbXBvc2l0aW9uKCkgY29uc3QKICAgICBy
ZXR1cm4gbnVsbHB0cjsKIH0KIAotRWRpdENvbW1hbmRDb21wb3NpdGlvbiogQ29tcG9zaXRlRWRp
dENvbW1hbmQ6OmVuc3VyZUNvbXBvc2l0aW9uKCkKK0VkaXRDb21tYW5kQ29tcG9zaXRpb24mIENv
bXBvc2l0ZUVkaXRDb21tYW5kOjplbnN1cmVDb21wb3NpdGlvbigpCiB7Ci0gICAgQ29tcG9zaXRl
RWRpdENvbW1hbmQqIGNvbW1hbmQgPSB0aGlzOwotICAgIHdoaWxlIChjb21tYW5kICYmIGNvbW1h
bmQtPnBhcmVudCgpKQotICAgICAgICBjb21tYW5kID0gY29tbWFuZC0+cGFyZW50KCk7CisgICAg
YXV0byogY29tbWFuZCA9IHRoaXM7CisgICAgd2hpbGUgKGF1dG8qIHBhcmVudCA9IGNvbW1hbmQt
PnBhcmVudCgpKQorICAgICAgICBjb21tYW5kID0gcGFyZW50OwogICAgIGlmICghY29tbWFuZC0+
bV9jb21wb3NpdGlvbikKICAgICAgICAgY29tbWFuZC0+bV9jb21wb3NpdGlvbiA9IEVkaXRDb21t
YW5kQ29tcG9zaXRpb246OmNyZWF0ZShkb2N1bWVudCgpLCBzdGFydGluZ1NlbGVjdGlvbigpLCBl
bmRpbmdTZWxlY3Rpb24oKSwgZWRpdGluZ0FjdGlvbigpKTsKLSAgICByZXR1cm4gY29tbWFuZC0+
bV9jb21wb3NpdGlvbi5nZXQoKTsKKyAgICByZXR1cm4gKmNvbW1hbmQtPm1fY29tcG9zaXRpb247
CiB9CiAKIGJvb2wgQ29tcG9zaXRlRWRpdENvbW1hbmQ6OmlzQ3JlYXRlTGlua0NvbW1hbmQoKSBj
b25zdApAQCAtNDY1LDcgKzQ2NSw3IEBAIHZvaWQgQ29tcG9zaXRlRWRpdENvbW1hbmQ6OmFwcGx5
Q29tbWFuZFRvQ29tcG9zaXRlKFBhc3NSZWZQdHI8RWRpdENvbW1hbmQ+IHBycENvCiAgICAgY29t
bWFuZC0+ZG9BcHBseSgpOwogICAgIGlmIChjb21tYW5kLT5pc1NpbXBsZUVkaXRDb21tYW5kKCkp
IHsKICAgICAgICAgY29tbWFuZC0+c2V0UGFyZW50KG51bGxwdHIpOwotICAgICAgICBlbnN1cmVD
b21wb3NpdGlvbigpLT5hcHBlbmQodG9TaW1wbGVFZGl0Q29tbWFuZChjb21tYW5kLmdldCgpKSk7
CisgICAgICAgIGVuc3VyZUNvbXBvc2l0aW9uKCkuYXBwZW5kKHRvU2ltcGxlRWRpdENvbW1hbmQo
Y29tbWFuZC5nZXQoKSkpOwogICAgIH0KICAgICBtX2NvbW1hbmRzLmFwcGVuZChXVEZNb3ZlKGNv
bW1hbmQpKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRl
RWRpdENvbW1hbmQuaCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1h
bmQuaAppbmRleCA4NWY0MThmN2RiOTE3Y2NmMDE0OGE2Zjc0ZWJjMzhiZWIwNTAzOWIxLi4wMjIx
ZGM5OTljY2ZlNmZjNTliMTgxYTlmZjc4MDk5YjZlMzVmM2I3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9lZGl0aW5nL0NvbXBvc2l0ZUVkaXRDb21tYW5kLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvZWRpdGluZy9Db21wb3NpdGVFZGl0Q29tbWFuZC5oCkBAIC0xMDUsNyArMTA1LDcgQEAgcHVi
bGljOgogICAgIHZvaWQgYXBwbHkoKTsKICAgICBib29sIGlzRmlyc3RDb21tYW5kKEVkaXRDb21t
YW5kKiBjb21tYW5kKSB7IHJldHVybiAhbV9jb21tYW5kcy5pc0VtcHR5KCkgJiYgbV9jb21tYW5k
cy5maXJzdCgpID09IGNvbW1hbmQ7IH0KICAgICBFZGl0Q29tbWFuZENvbXBvc2l0aW9uKiBjb21w
b3NpdGlvbigpIGNvbnN0OwotICAgIEVkaXRDb21tYW5kQ29tcG9zaXRpb24qIGVuc3VyZUNvbXBv
c2l0aW9uKCk7CisgICAgRWRpdENvbW1hbmRDb21wb3NpdGlvbiYgZW5zdXJlQ29tcG9zaXRpb24o
KTsKIAogICAgIHZpcnR1YWwgYm9vbCBpc0NyZWF0ZUxpbmtDb21tYW5kKCkgY29uc3Q7CiAgICAg
dmlydHVhbCBib29sIGlzVHlwaW5nQ29tbWFuZCgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0
b3IuY3BwCmluZGV4IDA4ZTUzOTE1Nzc4OGZiNTcxNWZhZWQ5YmNlYzVkNWZlNDNjMTI1ODIuLmZh
YzZlNjU1ZjZlYTI1MzkwOWU2YmUwZGU0ZTk0MjQ4Y2E4MGE0Y2YgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5n
L0VkaXRvci5jcHAKQEAgLTk5NiwyMyArOTk2LDIzIEBAIGJvb2wgRWRpdG9yOjp3aWxsVW5hcHBs
eUVkaXRpbmcoY29uc3QgRWRpdENvbW1hbmRDb21wb3NpdGlvbiYgY29tcG9zaXRpb24pIGNvbnN0
CiAgICAgcmV0dXJuIGRpc3BhdGNoQmVmb3JlSW5wdXRFdmVudHMoY29tcG9zaXRpb24uc3RhcnRp
bmdSb290RWRpdGFibGVFbGVtZW50KCksIGNvbXBvc2l0aW9uLmVuZGluZ1Jvb3RFZGl0YWJsZUVs
ZW1lbnQoKSwgImhpc3RvcnlVbmRvIik7CiB9CiAKLXZvaWQgRWRpdG9yOjp1bmFwcGxpZWRFZGl0
aW5nKFBhc3NSZWZQdHI8RWRpdENvbW1hbmRDb21wb3NpdGlvbj4gY21kKQordm9pZCBFZGl0b3I6
OnVuYXBwbGllZEVkaXRpbmcoRWRpdENvbW1hbmRDb21wb3NpdGlvbiYgY29tcG9zaXRpb24pCiB7
CiAgICAgZG9jdW1lbnQoKS51cGRhdGVMYXlvdXQoKTsKIAotICAgIG5vdGlmeVRleHRGcm9tQ29u
dHJvbHMoY21kLT5zdGFydGluZ1Jvb3RFZGl0YWJsZUVsZW1lbnQoKSwgY21kLT5lbmRpbmdSb290
RWRpdGFibGVFbGVtZW50KCkpOworICAgIG5vdGlmeVRleHRGcm9tQ29udHJvbHMoY29tcG9zaXRp
b24uc3RhcnRpbmdSb290RWRpdGFibGVFbGVtZW50KCksIGNvbXBvc2l0aW9uLmVuZGluZ1Jvb3RF
ZGl0YWJsZUVsZW1lbnQoKSk7CiAKLSAgICBWaXNpYmxlU2VsZWN0aW9uIG5ld1NlbGVjdGlvbihj
bWQtPnN0YXJ0aW5nU2VsZWN0aW9uKCkpOworICAgIFZpc2libGVTZWxlY3Rpb24gbmV3U2VsZWN0
aW9uKGNvbXBvc2l0aW9uLnN0YXJ0aW5nU2VsZWN0aW9uKCkpOwogICAgIGNoYW5nZVNlbGVjdGlv
bkFmdGVyQ29tbWFuZChuZXdTZWxlY3Rpb24sIEZyYW1lU2VsZWN0aW9uOjpkZWZhdWx0U2V0U2Vs
ZWN0aW9uT3B0aW9ucygpKTsKLSAgICBkaXNwYXRjaElucHV0RXZlbnRzKGNtZC0+c3RhcnRpbmdS
b290RWRpdGFibGVFbGVtZW50KCksIGNtZC0+ZW5kaW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCAi
aGlzdG9yeVVuZG8iKTsKKyAgICBkaXNwYXRjaElucHV0RXZlbnRzKGNvbXBvc2l0aW9uLnN0YXJ0
aW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCBjb21wb3NpdGlvbi5lbmRpbmdSb290RWRpdGFibGVF
bGVtZW50KCksICJoaXN0b3J5VW5kbyIpOwogCiAgICAgdXBkYXRlRWRpdG9yVUlOb3dJZlNjaGVk
dWxlZCgpOwogCi0gICAgbV9hbHRlcm5hdGl2ZVRleHRDb250cm9sbGVyLT5yZXNwb25kVG9VbmFw
cGxpZWRFZGl0aW5nKGNtZC5nZXQoKSk7CisgICAgbV9hbHRlcm5hdGl2ZVRleHRDb250cm9sbGVy
LT5yZXNwb25kVG9VbmFwcGxpZWRFZGl0aW5nKCZjb21wb3NpdGlvbik7CiAKICAgICBtX2xhc3RF
ZGl0Q29tbWFuZCA9IG51bGxwdHI7Ci0gICAgaWYgKGNsaWVudCgpKQotICAgICAgICBjbGllbnQo
KS0+cmVnaXN0ZXJSZWRvU3RlcChjbWQpOworICAgIGlmIChhdXRvKiBjbGllbnQgPSB0aGlzLT5j
bGllbnQoKSkKKyAgICAgICAgY2xpZW50LT5yZWdpc3RlclJlZG9TdGVwKGNvbXBvc2l0aW9uKTsK
ICAgICByZXNwb25kVG9DaGFuZ2VkQ29udGVudHMobmV3U2VsZWN0aW9uKTsKIH0KIApAQCAtMTAy
MSwyMSArMTAyMSwyMSBAQCBib29sIEVkaXRvcjo6d2lsbFJlYXBwbHlFZGl0aW5nKGNvbnN0IEVk
aXRDb21tYW5kQ29tcG9zaXRpb24mIGNvbXBvc2l0aW9uKSBjb25zdAogICAgIHJldHVybiBkaXNw
YXRjaEJlZm9yZUlucHV0RXZlbnRzKGNvbXBvc2l0aW9uLnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxl
bWVudCgpLCBjb21wb3NpdGlvbi5lbmRpbmdSb290RWRpdGFibGVFbGVtZW50KCksICJoaXN0b3J5
UmVkbyIpOwogfQogCi12b2lkIEVkaXRvcjo6cmVhcHBsaWVkRWRpdGluZyhQYXNzUmVmUHRyPEVk
aXRDb21tYW5kQ29tcG9zaXRpb24+IGNtZCkKK3ZvaWQgRWRpdG9yOjpyZWFwcGxpZWRFZGl0aW5n
KEVkaXRDb21tYW5kQ29tcG9zaXRpb24mIGNvbXBvc2l0aW9uKQogewogICAgIGRvY3VtZW50KCku
dXBkYXRlTGF5b3V0KCk7CiAKLSAgICBub3RpZnlUZXh0RnJvbUNvbnRyb2xzKGNtZC0+c3RhcnRp
bmdSb290RWRpdGFibGVFbGVtZW50KCksIGNtZC0+ZW5kaW5nUm9vdEVkaXRhYmxlRWxlbWVudCgp
KTsKKyAgICBub3RpZnlUZXh0RnJvbUNvbnRyb2xzKGNvbXBvc2l0aW9uLnN0YXJ0aW5nUm9vdEVk
aXRhYmxlRWxlbWVudCgpLCBjb21wb3NpdGlvbi5lbmRpbmdSb290RWRpdGFibGVFbGVtZW50KCkp
OwogCi0gICAgVmlzaWJsZVNlbGVjdGlvbiBuZXdTZWxlY3Rpb24oY21kLT5lbmRpbmdTZWxlY3Rp
b24oKSk7CisgICAgVmlzaWJsZVNlbGVjdGlvbiBuZXdTZWxlY3Rpb24oY29tcG9zaXRpb24uZW5k
aW5nU2VsZWN0aW9uKCkpOwogICAgIGNoYW5nZVNlbGVjdGlvbkFmdGVyQ29tbWFuZChuZXdTZWxl
Y3Rpb24sIEZyYW1lU2VsZWN0aW9uOjpkZWZhdWx0U2V0U2VsZWN0aW9uT3B0aW9ucygpKTsKLSAg
ICBkaXNwYXRjaElucHV0RXZlbnRzKGNtZC0+c3RhcnRpbmdSb290RWRpdGFibGVFbGVtZW50KCks
IGNtZC0+ZW5kaW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCAiaGlzdG9yeVJlZG8iKTsKKyAgICBk
aXNwYXRjaElucHV0RXZlbnRzKGNvbXBvc2l0aW9uLnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVu
dCgpLCBjb21wb3NpdGlvbi5lbmRpbmdSb290RWRpdGFibGVFbGVtZW50KCksICJoaXN0b3J5UmVk
byIpOwogICAgIAogICAgIHVwZGF0ZUVkaXRvclVJTm93SWZTY2hlZHVsZWQoKTsKIAogICAgIG1f
bGFzdEVkaXRDb21tYW5kID0gbnVsbHB0cjsKLSAgICBpZiAoY2xpZW50KCkpCi0gICAgICAgIGNs
aWVudCgpLT5yZWdpc3RlclVuZG9TdGVwKGNtZCk7CisgICAgaWYgKGF1dG8qIGNsaWVudCA9IHRo
aXMtPmNsaWVudCgpKQorICAgICAgICBjbGllbnQtPnJlZ2lzdGVyVW5kb1N0ZXAoY29tcG9zaXRp
b24pOwogICAgIHJlc3BvbmRUb0NoYW5nZWRDb250ZW50cyhuZXdTZWxlY3Rpb24pOwogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oIGIvU291cmNlL1dlYkNv
cmUvZWRpdGluZy9FZGl0b3IuaAppbmRleCAyODAwYzMwOTA3ZDQxOGMyYzE2YWFiMjJhNWRiMGY2
MWFkOGYzYWQ0Li5iOGVhYWQwYzMyM2Q1YmFkYmJhMzExMTIxOTgzMThkZmU5MjAwYWUxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2VkaXRpbmcvRWRpdG9yLmgKQEAgLTk5LDEwICs5OSwxMiBAQCBlbnVtIGNsYXNzIE1haWxC
bG9ja3F1b3RlSGFuZGxpbmcgewogfTsKIAogI2lmIFBMQVRGT1JNKENPQ09BKQorCiBzdHJ1Y3Qg
RnJhZ21lbnRBbmRSZXNvdXJjZXMgewogICAgIFJlZlB0cjxEb2N1bWVudEZyYWdtZW50PiBmcmFn
bWVudDsKLSAgICBWZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+IHJlc291cmNlczsKKyAg
ICBWZWN0b3I8UmVmPEFyY2hpdmVSZXNvdXJjZT4+IHJlc291cmNlczsKIH07CisKICNlbmRpZgog
CiBjbGFzcyBFZGl0b3IgewpAQCAtMjA2LDggKzIwOCw4IEBAIHB1YmxpYzoKICAgICBib29sIHdp
bGxSZWFwcGx5RWRpdGluZyhjb25zdCBFZGl0Q29tbWFuZENvbXBvc2l0aW9uJikgY29uc3Q7CiAK
ICAgICB2b2lkIGFwcGxpZWRFZGl0aW5nKFBhc3NSZWZQdHI8Q29tcG9zaXRlRWRpdENvbW1hbmQ+
KTsKLSAgICB2b2lkIHVuYXBwbGllZEVkaXRpbmcoUGFzc1JlZlB0cjxFZGl0Q29tbWFuZENvbXBv
c2l0aW9uPik7Ci0gICAgdm9pZCByZWFwcGxpZWRFZGl0aW5nKFBhc3NSZWZQdHI8RWRpdENvbW1h
bmRDb21wb3NpdGlvbj4pOworICAgIHZvaWQgdW5hcHBsaWVkRWRpdGluZyhFZGl0Q29tbWFuZENv
bXBvc2l0aW9uJik7CisgICAgdm9pZCByZWFwcGxpZWRFZGl0aW5nKEVkaXRDb21tYW5kQ29tcG9z
aXRpb24mKTsKICAgICB2b2lkIHVuYXBwbGllZFNwZWxsQ29ycmVjdGlvbihjb25zdCBWaXNpYmxl
U2VsZWN0aW9uJiBzZWxlY3Rpb25PZkNvcnJlY3RlZCwgY29uc3QgU3RyaW5nJiBjb3JyZWN0ZWQs
IGNvbnN0IFN0cmluZyYgY29ycmVjdGlvbik7CiAKICAgICAvLyBUaGlzIGlzIG9mZiBieSBkZWZh
dWx0LCBzaW5jZSBtb3N0IGVkaXRvcnMgd2FudCB0aGlzIGJlaGF2aW9yIChvcmlnaW5hbGx5IG1h
dGNoZWQgSUUgYnV0IG5vdCBGaXJlZm94KS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Vk
aXRpbmcvY29jb2EvRWRpdG9yQ29jb2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2NvY29h
L0VkaXRvckNvY29hLm1tCmluZGV4IDQ5NWUxZjhlODA2NDNmYjk5ZDliNWE5YzA1Mzk3ZDEwZTU0
ZjRlYTQuLjQ3NTRlNzc0MDZiM2MwMGYwZGU3Y2Y5ZDllMDI2ZWFlYzk0MThlNGUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvY29jb2EvRWRpdG9yQ29jb2EubW0KKysrIGIvU291
cmNlL1dlYkNvcmUvZWRpdGluZy9jb2NvYS9FZGl0b3JDb2NvYS5tbQpAQCAtMjg1LDExICsyODUs
OSBAQCBSZWZQdHI8RG9jdW1lbnRGcmFnbWVudD4gRWRpdG9yOjpjcmVhdGVGcmFnbWVudEFuZEFk
ZFJlc291cmNlcyhOU0F0dHJpYnV0ZWRTdHJpbgogCiAgICAgYXV0byBmcmFnbWVudEFuZFJlc291
cmNlcyA9IGNyZWF0ZUZyYWdtZW50KHN0cmluZyk7CiAKLSAgICBpZiAoRG9jdW1lbnRMb2FkZXIq
IGxvYWRlciA9IG1fZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSkgewotICAgICAgICBm
b3IgKGF1dG8mIHJlc291cmNlIDogZnJhZ21lbnRBbmRSZXNvdXJjZXMucmVzb3VyY2VzKSB7Ci0g
ICAgICAgICAgICBpZiAocmVzb3VyY2UpCi0gICAgICAgICAgICAgICAgbG9hZGVyLT5hZGRBcmNo
aXZlUmVzb3VyY2UocmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSk7Ci0gICAgICAgIH0KKyAgICBp
ZiAoYXV0byogbG9hZGVyID0gbV9mcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKSB7Cisg
ICAgICAgIGZvciAoYXV0byYgcmVzb3VyY2UgOiBmcmFnbWVudEFuZFJlc291cmNlcy5yZXNvdXJj
ZXMpCisgICAgICAgICAgICBsb2FkZXItPmFkZEFyY2hpdmVSZXNvdXJjZShXVEZNb3ZlKHJlc291
cmNlKSk7CiAgICAgfQogCiAgICAgaWYgKHdhc0ltYWdlc0VuYWJsZWQpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9lZGl0aW5nL2lvcy9FZGl0b3JJT1MubW0gYi9Tb3VyY2UvV2ViQ29yZS9l
ZGl0aW5nL2lvcy9FZGl0b3JJT1MubW0KaW5kZXggYzdlZjY1YmU3YjAxYzczOTNlNjc4NzI2OWYy
ZTllMmNjNDFkOTI4My4uZmFmNDRlYmUyY2I3YmZmY2Q4MWMxYWU1ZTMwNWU2Yzg5Nzk5YTNiOCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9pb3MvRWRpdG9ySU9TLm1tCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvaW9zL0VkaXRvcklPUy5tbQpAQCAtMjYyLDI3ICsyNjIs
MjUgQEAgYm9vbCBFZGl0b3I6OldlYkNvbnRlbnRSZWFkZXI6OnJlYWRXZWJBcmNoaXZlKFNoYXJl
ZEJ1ZmZlciogYnVmZmVyKQogICAgIGlmICghYnVmZmVyKQogICAgICAgICByZXR1cm4gZmFsc2U7
CiAKLSAgICBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gYXJjaGl2ZSA9IExlZ2FjeVdlYkFyY2hp
dmU6OmNyZWF0ZShVUkwoKSwgKmJ1ZmZlcik7CisgICAgYXV0byBhcmNoaXZlID0gTGVnYWN5V2Vi
QXJjaGl2ZTo6Y3JlYXRlKFVSTCgpLCAqYnVmZmVyKTsKICAgICBpZiAoIWFyY2hpdmUpCiAgICAg
ICAgIHJldHVybiBmYWxzZTsKIAotICAgIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IG1haW5SZXNv
dXJjZSA9IGFyY2hpdmUtPm1haW5SZXNvdXJjZSgpOworICAgIGF1dG8qIG1haW5SZXNvdXJjZSA9
IGFyY2hpdmUtPm1haW5SZXNvdXJjZSgpOwogICAgIGlmICghbWFpblJlc291cmNlKQogICAgICAg
ICByZXR1cm4gZmFsc2U7CiAKLSAgICBjb25zdCBTdHJpbmcmIHR5cGUgPSBtYWluUmVzb3VyY2Ut
Pm1pbWVUeXBlKCk7Ci0KLSAgICBpZiAoZnJhbWUubG9hZGVyKCkuY2xpZW50KCkuY2FuU2hvd01J
TUVUeXBlQXNIVE1MKHR5cGUpKSB7Ci0gICAgICAgIC8vIEZJWE1FOiBUaGUgY29kZSBpbiBjcmVh
dGVGcmFnbWVudEFuZEFkZFJlc291cmNlcyBjYWxscyBzZXREZWZlcnNMb2FkaW5nKHRydWUpLiBE
b24ndCB3ZSBuZWVkIHRoYXQgaGVyZT8KLSAgICAgICAgaWYgKERvY3VtZW50TG9hZGVyKiBsb2Fk
ZXIgPSBmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKQotICAgICAgICAgICAgbG9hZGVy
LT5hZGRBbGxBcmNoaXZlUmVzb3VyY2VzKGFyY2hpdmUuZ2V0KCkpOworICAgIGF1dG8mIHR5cGUg
PSBtYWluUmVzb3VyY2UtPm1pbWVUeXBlKCk7CisgICAgaWYgKCFmcmFtZS5sb2FkZXIoKS5jbGll
bnQoKS5jYW5TaG93TUlNRVR5cGVBc0hUTUwodHlwZSkpCisgICAgICAgIHJldHVybiBmYWxzZTsK
IAotICAgICAgICBTdHJpbmcgbWFya3VwU3RyaW5nID0gU3RyaW5nOjpmcm9tVVRGOChtYWluUmVz
b3VyY2UtPmRhdGEoKS5kYXRhKCksIG1haW5SZXNvdXJjZS0+ZGF0YSgpLnNpemUoKSk7Ci0gICAg
ICAgIGFkZEZyYWdtZW50KGNyZWF0ZUZyYWdtZW50RnJvbU1hcmt1cCgqZnJhbWUuZG9jdW1lbnQo
KSwgbWFya3VwU3RyaW5nLCBtYWluUmVzb3VyY2UtPnVybCgpLCBEaXNhbGxvd1NjcmlwdGluZ0Fu
ZFBsdWdpbkNvbnRlbnQpKTsKLSAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgfQorICAgIC8vIEZJ
WE1FOiBUaGUgY29kZSBpbiBjcmVhdGVGcmFnbWVudEFuZEFkZFJlc291cmNlcyBjYWxscyBzZXRE
ZWZlcnNMb2FkaW5nKHRydWUpLiBEb24ndCB3ZSBuZWVkIHRoYXQgaGVyZT8KKyAgICBpZiAoYXV0
byogbG9hZGVyID0gZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSkKKyAgICAgICAgbG9h
ZGVyLT5hZGRBbGxBcmNoaXZlUmVzb3VyY2VzKCphcmNoaXZlKTsKIAotICAgIHJldHVybiBmYWxz
ZTsKKyAgICBhdXRvIG1hcmt1cFN0cmluZyA9IFN0cmluZzo6ZnJvbVVURjgobWFpblJlc291cmNl
LT5kYXRhKCkuZGF0YSgpLCBtYWluUmVzb3VyY2UtPmRhdGEoKS5zaXplKCkpOworICAgIGFkZEZy
YWdtZW50KGNyZWF0ZUZyYWdtZW50RnJvbU1hcmt1cCgqZnJhbWUuZG9jdW1lbnQoKSwgbWFya3Vw
U3RyaW5nLCBtYWluUmVzb3VyY2UtPnVybCgpLCBEaXNhbGxvd1NjcmlwdGluZ0FuZFBsdWdpbkNv
bnRlbnQpKTsKKyAgICByZXR1cm4gdHJ1ZTsKIH0KIAogYm9vbCBFZGl0b3I6OldlYkNvbnRlbnRS
ZWFkZXI6OnJlYWRGaWxlbmFtZXMoY29uc3QgVmVjdG9yPFN0cmluZz4mKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvZWRpdGluZy9tYWMvRWRpdG9yTWFjLm1tIGIvU291cmNlL1dlYkNvcmUv
ZWRpdGluZy9tYWMvRWRpdG9yTWFjLm1tCmluZGV4IDc0ZGNjMjQ0MWJiMmYzZTc5MDIzOTI3YzA1
NGVkM2MxMmJiYjY5NmQuLmVkYmMwNTU1ZWFkM2JkOGFkZGMwZjJmNThhMzQ0MmNiOTExZDhiNjMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvbWFjL0VkaXRvck1hYy5tbQorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL21hYy9FZGl0b3JNYWMubW0KQEAgLTMyOCw3ICszMjgs
NyBAQCBib29sIEVkaXRvcjo6V2ViQ29udGVudFJlYWRlcjo6cmVhZFdlYkFyY2hpdmUoU2hhcmVk
QnVmZmVyKiBidWZmZXIpCiAgICAgaWYgKCFidWZmZXIpCiAgICAgICAgIHJldHVybiBmYWxzZTsK
IAotICAgIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBhcmNoaXZlID0gTGVnYWN5V2ViQXJjaGl2
ZTo6Y3JlYXRlKFVSTCgpLCAqYnVmZmVyKTsKKyAgICBhdXRvIGFyY2hpdmUgPSBMZWdhY3lXZWJB
cmNoaXZlOjpjcmVhdGUoVVJMKCksICpidWZmZXIpOwogICAgIGlmICghYXJjaGl2ZSkKICAgICAg
ICAgcmV0dXJuIGZhbHNlOwogCkBAIC0zNDEsNyArMzQxLDcgQEAgYm9vbCBFZGl0b3I6OldlYkNv
bnRlbnRSZWFkZXI6OnJlYWRXZWJBcmNoaXZlKFNoYXJlZEJ1ZmZlciogYnVmZmVyKQogICAgIGlm
IChmcmFtZS5sb2FkZXIoKS5jbGllbnQoKS5jYW5TaG93TUlNRVR5cGVBc0hUTUwodHlwZSkpIHsK
ICAgICAgICAgLy8gRklYTUU6IFRoZSBjb2RlIGluIGNyZWF0ZUZyYWdtZW50QW5kQWRkUmVzb3Vy
Y2VzIGNhbGxzIHNldERlZmVyc0xvYWRpbmcodHJ1ZSkuIERvbid0IHdlIG5lZWQgdGhhdCBoZXJl
PwogICAgICAgICBpZiAoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciA9IGZyYW1lLmxvYWRlcigpLmRv
Y3VtZW50TG9hZGVyKCkpCi0gICAgICAgICAgICBsb2FkZXItPmFkZEFsbEFyY2hpdmVSZXNvdXJj
ZXMoYXJjaGl2ZS5nZXQoKSk7CisgICAgICAgICAgICBsb2FkZXItPmFkZEFsbEFyY2hpdmVSZXNv
dXJjZXMoKmFyY2hpdmUpOwogCiAgICAgICAgIFN0cmluZyBtYXJrdXBTdHJpbmcgPSBTdHJpbmc6
OmZyb21VVEY4KG1haW5SZXNvdXJjZS0+ZGF0YSgpLmRhdGEoKSwgbWFpblJlc291cmNlLT5kYXRh
KCkuc2l6ZSgpKTsKICAgICAgICAgZnJhZ21lbnQgPSBjcmVhdGVGcmFnbWVudEZyb21NYXJrdXAo
KmZyYW1lLmRvY3VtZW50KCksIG1hcmt1cFN0cmluZywgbWFpblJlc291cmNlLT51cmwoKSwgRGlz
YWxsb3dTY3JpcHRpbmdBbmRQbHVnaW5Db250ZW50KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2hpc3RvcnkvUGFnZUNhY2hlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2hpc3RvcnkvUGFnZUNh
Y2hlLmNwcAppbmRleCA2ZDAwNDM3ZTE5YTViMDg3MmM5NDFmYmJhMzQwMjc4OTg0N2U0NGQwLi5h
OGE0OWY5NDAxM2VkMmQwMmJkMjNiZTZhYjMyZDljN2MyZWVjYzM4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9oaXN0b3J5L1BhZ2VDYWNoZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaGlz
dG9yeS9QYWdlQ2FjaGUuY3BwCkBAIC0xNjQsNyArMTY0LDcgQEAgc3RhdGljIGJvb2wgY2FuQ2Fj
aGVGcmFtZShGcmFtZSYgZnJhbWUsIERpYWdub3N0aWNMb2dnaW5nQ2xpZW50JiBkaWFnbm9zdGlj
TG9nZ2kKICAgICB9CiAgICAgLy8gRklYTUU6IFdlIHNob3VsZCBpbnZlc3RpZ2F0aW5nIGNhY2hp
bmcgZnJhbWVzIHRoYXQgaGF2ZSBhbiBhc3NvY2lhdGVkCiAgICAgLy8gYXBwbGljYXRpb24gY2Fj
aGUuIDxyZGFyOi8vcHJvYmxlbS81OTE3ODk5PiB0cmFja3MgdGhhdCB3b3JrLgotICAgIGlmICgh
ZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPmNhbkNhY2hlSW5QYWdlQ2Fj
aGUoKSkgeworICAgIGlmICghZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCku
Y2FuQ2FjaGVJblBhZ2VDYWNoZSgpKSB7CiAgICAgICAgIFBDTE9HKCIgICAtVGhlIERvY3VtZW50
TG9hZGVyIHVzZXMgYW4gYXBwbGljYXRpb24gY2FjaGUiKTsKICAgICAgICAgbG9nUGFnZUNhY2hl
RmFpbHVyZURpYWdub3N0aWNNZXNzYWdlKGRpYWdub3N0aWNMb2dnaW5nQ2xpZW50LCBEaWFnbm9z
dGljTG9nZ2luZ0tleXM6OmFwcGxpY2F0aW9uQ2FjaGVLZXkoKSk7CiAgICAgICAgIGlzQ2FjaGVh
YmxlID0gZmFsc2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0ZpbGVJbnB1dFR5
cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmNwcAppbmRleCA1N2Qw
ZGMxYzc2M2Q2N2I2YjAyMjhjODYwNTEzZDdmMWU5YzUzNjNiLi4yOGI2YzA2NjFmNGQzMTI5YjE2
NzkzZWFlNDE0YjdiYTJmN2NlYjZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Zp
bGVJbnB1dFR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlwZS5j
cHAKQEAgLTE5MSw3ICsxOTEsNyBAQCB2b2lkIEZpbGVJbnB1dFR5cGU6OmhhbmRsZURPTUFjdGl2
YXRlRXZlbnQoRXZlbnQmIGV2ZW50KQogICAgIGlmICghU2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vz
c2luZ1VzZXJHZXN0dXJlKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGlmIChDaHJvbWUqIGNo
cm9tZSA9IHRoaXMtPmNocm9tZSgpKSB7CisgICAgaWYgKGF1dG8qIGNocm9tZSA9IHRoaXMtPmNo
cm9tZSgpKSB7CiAgICAgICAgIEZpbGVDaG9vc2VyU2V0dGluZ3Mgc2V0dGluZ3M7CiAgICAgICAg
IEhUTUxJbnB1dEVsZW1lbnQmIGlucHV0ID0gZWxlbWVudCgpOwogICAgICAgICBzZXR0aW5ncy5h
bGxvd3NNdWx0aXBsZUZpbGVzID0gaW5wdXQuaGFzQXR0cmlidXRlV2l0aG91dFN5bmNocm9uaXph
dGlvbihtdWx0aXBsZUF0dHIpOwpAQCAtMjAxLDkgKzIwMSw4IEBAIHZvaWQgRmlsZUlucHV0VHlw
ZTo6aGFuZGxlRE9NQWN0aXZhdGVFdmVudChFdmVudCYgZXZlbnQpCiAjaWYgRU5BQkxFKE1FRElB
X0NBUFRVUkUpCiAgICAgICAgIHNldHRpbmdzLm1lZGlhQ2FwdHVyZVR5cGUgPSBpbnB1dC5tZWRp
YUNhcHR1cmVUeXBlKCk7CiAjZW5kaWYKLQogICAgICAgICBhcHBseUZpbGVDaG9vc2VyU2V0dGlu
Z3Moc2V0dGluZ3MpOwotICAgICAgICBjaHJvbWUtPnJ1bk9wZW5QYW5lbChpbnB1dC5kb2N1bWVu
dCgpLmZyYW1lKCksIG1fZmlsZUNob29zZXIpOworICAgICAgICBjaHJvbWUtPnJ1bk9wZW5QYW5l
bCgqaW5wdXQuZG9jdW1lbnQoKS5mcmFtZSgpLCAqbV9maWxlQ2hvb3Nlcik7CiAgICAgfQogCiAg
ICAgZXZlbnQuc2V0RGVmYXVsdEhhbmRsZWQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwCmluZGV4IDJlODcyYWFiYWU2NGIwNDQ4ZDIyMTRlOTYy
YmIxNmY2Y2JmOTkwMTIuLmVhOGEzYjMzZTAwMjc4MzJkNjcwZjllMDk4N2FjY2E4ZDM2OGJhYTIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVudC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50LmNwcApA
QCAtODksNyArODksNyBAQCB2b2lkIEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ6OnNldEZvcm1FbmN0
eXBlKGNvbnN0IFN0cmluZyYgdmFsdWUpCiAKIFN0cmluZyBIVE1MRm9ybUNvbnRyb2xFbGVtZW50
Ojpmb3JtTWV0aG9kKCkgY29uc3QKIHsKLSAgICBjb25zdCBBdG9taWNTdHJpbmcmIGZvcm1NZXRo
b2RBdHRyID0gYXR0cmlidXRlV2l0aG91dFN5bmNocm9uaXphdGlvbihmb3JtbWV0aG9kQXR0cik7
CisgICAgYXV0byYgZm9ybU1ldGhvZEF0dHIgPSBhdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0
aW9uKGZvcm1tZXRob2RBdHRyKTsKICAgICBpZiAoZm9ybU1ldGhvZEF0dHIuaXNOdWxsKCkpCiAg
ICAgICAgIHJldHVybiBlbXB0eVN0cmluZygpOwogICAgIHJldHVybiBGb3JtU3VibWlzc2lvbjo6
QXR0cmlidXRlczo6bWV0aG9kU3RyaW5nKEZvcm1TdWJtaXNzaW9uOjpBdHRyaWJ1dGVzOjpwYXJz
ZU1ldGhvZFR5cGUoZm9ybU1ldGhvZEF0dHIpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTEZvcm1FbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1F
bGVtZW50LmNwcAppbmRleCA3NDc1ZjY0ZDI2ZGViMjU2MDk1ZWRhZDViMWMwNmVmMGVhNWQwMmQ4
Li42NDBlMzNlZjNjODk0MmFiOGRkOTExODMwZmU2ODBmY2VjYmVlMGJlIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwCkBAIC0yODksMTIgKzI4OSwxMSBAQCB2b2lkIEhU
TUxGb3JtRWxlbWVudDo6cHJlcGFyZUZvclN1Ym1pc3Npb24oRXZlbnQmIGV2ZW50KQogICAgICAg
ICByZXR1cm47CiAgICAgfQogCi0gICAgU3RyaW5nUGFpclZlY3RvciBjb250cm9sTmFtZXNBbmRW
YWx1ZXM7Ci0gICAgZ2V0VGV4dEZpZWxkVmFsdWVzKGNvbnRyb2xOYW1lc0FuZFZhbHVlcyk7Ci0g
ICAgYXV0byBmb3JtU3RhdGUgPSBGb3JtU3RhdGU6OmNyZWF0ZSh0aGlzLCBjb250cm9sTmFtZXNB
bmRWYWx1ZXMsICZkb2N1bWVudCgpLCBOb3RTdWJtaXR0ZWRCeUphdmFTY3JpcHQpOworICAgIGF1
dG8gZm9ybVN0YXRlID0gRm9ybVN0YXRlOjpjcmVhdGUoKnRoaXMsIHRleHRGaWVsZFZhbHVlcygp
LCBkb2N1bWVudCgpLCBOb3RTdWJtaXR0ZWRCeUphdmFTY3JpcHQpOwogICAgIGZyYW1lLT5sb2Fk
ZXIoKS5jbGllbnQoKS5kaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoV1RGTW92ZShmb3JtU3Rh
dGUpKTsKIAogICAgIFJlZjxIVE1MRm9ybUVsZW1lbnQ+IHByb3RlY3RlZFRoaXMoKnRoaXMpOwor
CiAgICAgLy8gRXZlbnQgaGFuZGxpbmcgY2FuIHJlc3VsdCBpbiBtX3Nob3VsZFN1Ym1pdCBiZWNv
bWluZyB0cnVlLCByZWdhcmRsZXNzIG9mIGRpc3BhdGNoRXZlbnQoKSByZXR1cm4gdmFsdWUuCiAg
ICAgaWYgKGRpc3BhdGNoRXZlbnQoRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkuc3VibWl0RXZl
bnQsIHRydWUsIHRydWUpKSkKICAgICAgICAgbV9zaG91bGRTdWJtaXQgPSB0cnVlOwpAQCAtMzE1
LDIwICszMTQsMjAgQEAgdm9pZCBIVE1MRm9ybUVsZW1lbnQ6OnN1Ym1pdEZyb21KYXZhU2NyaXB0
KCkKICAgICBzdWJtaXQoMCwgZmFsc2UsIFNjcmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2Vy
R2VzdHVyZSgpLCBTdWJtaXR0ZWRCeUphdmFTY3JpcHQpOwogfQogCi12b2lkIEhUTUxGb3JtRWxl
bWVudDo6Z2V0VGV4dEZpZWxkVmFsdWVzKFN0cmluZ1BhaXJWZWN0b3ImIGZpZWxkTmFtZXNBbmRW
YWx1ZXMpIGNvbnN0CitTdHJpbmdQYWlyVmVjdG9yIEhUTUxGb3JtRWxlbWVudDo6dGV4dEZpZWxk
VmFsdWVzKCkgY29uc3QKIHsKLSAgICBBU1NFUlRfQVJHKGZpZWxkTmFtZXNBbmRWYWx1ZXMsIGZp
ZWxkTmFtZXNBbmRWYWx1ZXMuaXNFbXB0eSgpKTsKLQotICAgIGZpZWxkTmFtZXNBbmRWYWx1ZXMu
cmVzZXJ2ZUNhcGFjaXR5KG1fYXNzb2NpYXRlZEVsZW1lbnRzLnNpemUoKSk7CisgICAgU3RyaW5n
UGFpclZlY3RvciByZXN1bHQ7CisgICAgcmVzdWx0LnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobV9h
c3NvY2lhdGVkRWxlbWVudHMuc2l6ZSgpKTsKICAgICBmb3IgKGF1dG8mIGFzc29jaWF0ZWRFbGVt
ZW50IDogbV9hc3NvY2lhdGVkRWxlbWVudHMpIHsKLSAgICAgICAgSFRNTEVsZW1lbnQmIGVsZW1l
bnQgPSBhc3NvY2lhdGVkRWxlbWVudC0+YXNIVE1MRWxlbWVudCgpOworICAgICAgICBhdXRvJiBl
bGVtZW50ID0gYXNzb2NpYXRlZEVsZW1lbnQtPmFzSFRNTEVsZW1lbnQoKTsKICAgICAgICAgaWYg
KCFpczxIVE1MSW5wdXRFbGVtZW50PihlbGVtZW50KSkKICAgICAgICAgICAgIGNvbnRpbnVlOwot
ICAgICAgICBIVE1MSW5wdXRFbGVtZW50JiBpbnB1dCA9IGRvd25jYXN0PEhUTUxJbnB1dEVsZW1l
bnQ+KGVsZW1lbnQpOworICAgICAgICBhdXRvJiBpbnB1dCA9IGRvd25jYXN0PEhUTUxJbnB1dEVs
ZW1lbnQ+KGVsZW1lbnQpOwogICAgICAgICBpZiAoIWlucHV0LmlzVGV4dEZpZWxkKCkpCiAgICAg
ICAgICAgICBjb250aW51ZTsKLSAgICAgICAgZmllbGROYW1lc0FuZFZhbHVlcy5hcHBlbmQoc3Rk
OjptYWtlX3BhaXIoaW5wdXQubmFtZSgpLnN0cmluZygpLCBpbnB1dC52YWx1ZSgpKSk7CisgICAg
ICAgIHJlc3VsdC51bmNoZWNrZWRBcHBlbmQoeyBpbnB1dC5uYW1lKCkuc3RyaW5nKCksIGlucHV0
LnZhbHVlKCkgfSk7CiAgICAgfQorICAgIHJldHVybiByZXN1bHQ7CiB9CiAKIHZvaWQgSFRNTEZv
cm1FbGVtZW50OjpzdWJtaXQoRXZlbnQqIGV2ZW50LCBib29sIGFjdGl2YXRlU3VibWl0QnV0dG9u
LCBib29sIHByb2Nlc3NpbmdVc2VyR2VzdHVyZSwgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIGZvcm1T
dWJtaXNzaW9uVHJpZ2dlcikKQEAgLTM2NCw5ICszNjMsMTAgQEAgdm9pZCBIVE1MRm9ybUVsZW1l
bnQ6OnN1Ym1pdChFdmVudCogZXZlbnQsIGJvb2wgYWN0aXZhdGVTdWJtaXRCdXR0b24sIGJvb2wg
cHJvY2UKICAgICBpZiAobmVlZEJ1dHRvbkFjdGl2YXRpb24gJiYgZmlyc3RTdWNjZXNzZnVsU3Vi
bWl0QnV0dG9uKQogICAgICAgICBmaXJzdFN1Y2Nlc3NmdWxTdWJtaXRCdXR0b24tPnNldEFjdGl2
YXRlZFN1Ym1pdCh0cnVlKTsKIAotICAgIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5ID0gcHJvY2Vz
c2luZ1VzZXJHZXN0dXJlID8gTG9ja0hpc3Rvcnk6Ok5vIDogTG9ja0hpc3Rvcnk6OlllczsKLSAg
ICBSZWY8SFRNTEZvcm1FbGVtZW50PiBwcm90ZWN0ZWRUaGlzKCp0aGlzKTsgLy8gRm9ybSBzdWJt
aXNzaW9uIGNhbiBleGVjdXRlIGFyYml0YXJ5IEphdmFTY3JpcHQuCi0gICAgZnJhbWUtPmxvYWRl
cigpLnN1Ym1pdEZvcm0oRm9ybVN1Ym1pc3Npb246OmNyZWF0ZSh0aGlzLCBtX2F0dHJpYnV0ZXMs
IGV2ZW50LCBsb2NrSGlzdG9yeSwgZm9ybVN1Ym1pc3Npb25UcmlnZ2VyKSk7CisgICAgYXV0byBw
cm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyk7IC8vIEZvcm0gc3VibWlzc2lvbiBjYW4gZXhl
Y3V0ZSBhcmJpdGFyeSBKYXZhU2NyaXB0LgorCisgICAgYXV0byBzaG91bGRMb2NrSGlzdG9yeSA9
IHByb2Nlc3NpbmdVc2VyR2VzdHVyZSA/IExvY2tIaXN0b3J5OjpObyA6IExvY2tIaXN0b3J5OjpZ
ZXM7CisgICAgZnJhbWUtPmxvYWRlcigpLnN1Ym1pdEZvcm0oRm9ybVN1Ym1pc3Npb246OmNyZWF0
ZSgqdGhpcywgbV9hdHRyaWJ1dGVzLCBldmVudCwgc2hvdWxkTG9ja0hpc3RvcnksIGZvcm1TdWJt
aXNzaW9uVHJpZ2dlcikpOwogCiAgICAgaWYgKG5lZWRCdXR0b25BY3RpdmF0aW9uICYmIGZpcnN0
U3VjY2Vzc2Z1bFN1Ym1pdEJ1dHRvbikKICAgICAgICAgZmlyc3RTdWNjZXNzZnVsU3VibWl0QnV0
dG9uLT5zZXRBY3RpdmF0ZWRTdWJtaXQoZmFsc2UpOwpAQCAtNDM5LDggKzQzOSw4IEBAIHZvaWQg
SFRNTEZvcm1FbGVtZW50OjpyZXF1ZXN0QXV0b2NvbXBsZXRlKCkKICAgICBTdHJpbmdQYWlyVmVj
dG9yIGNvbnRyb2xOYW1lc0FuZFZhbHVlczsKICAgICBnZXRUZXh0RmllbGRWYWx1ZXMoY29udHJv
bE5hbWVzQW5kVmFsdWVzKTsKIAotICAgIFJlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSA9IEZv
cm1TdGF0ZTo6Y3JlYXRlKHRoaXMsIGNvbnRyb2xOYW1lc0FuZFZhbHVlcywgJmRvY3VtZW50KCks
IFN1Ym1pdHRlZEJ5SmF2YVNjcmlwdCk7Ci0gICAgZnJhbWUtPmxvYWRlcigpLmNsaWVudCgpLmRp
ZFJlcXVlc3RBdXRvY29tcGxldGUoZm9ybVN0YXRlLnJlbGVhc2UoKSk7CisgICAgYXV0byBmb3Jt
U3RhdGUgPSBGb3JtU3RhdGU6OmNyZWF0ZSh0aGlzLCBjb250cm9sTmFtZXNBbmRWYWx1ZXMsICZk
b2N1bWVudCgpLCBTdWJtaXR0ZWRCeUphdmFTY3JpcHQpOworICAgIGZyYW1lLT5sb2FkZXIoKS5j
bGllbnQoKS5kaWRSZXF1ZXN0QXV0b2NvbXBsZXRlKFdURk1vdmUoZm9ybVN0YXRlKSk7CiB9CiAK
IHZvaWQgSFRNTEZvcm1FbGVtZW50OjpmaW5pc2hSZXF1ZXN0QXV0b2NvbXBsZXRlKEF1dG9jb21w
bGV0ZVJlc3VsdCByZXN1bHQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxG
b3JtRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuaAppbmRl
eCBiYjUxNzk4OTc2ZTNmNjY0M2Q4YmE0YTc1YTdiMTAzZTcyMDYyMzk3Li41ZGUxOTVlYjk2MTVj
ZWE2MmU1YTIxY2JmMDQ5Yjk3OWFiMjcxYjI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxGb3JtRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1F
bGVtZW50LmgKQEAgLTEyOCw3ICsxMjgsNyBAQCBwdWJsaWM6CiAgICAgY29uc3QgVmVjdG9yPEZv
cm1Bc3NvY2lhdGVkRWxlbWVudCo+JiBhc3NvY2lhdGVkRWxlbWVudHMoKSBjb25zdCB7IHJldHVy
biBtX2Fzc29jaWF0ZWRFbGVtZW50czsgfQogICAgIGNvbnN0IFZlY3RvcjxIVE1MSW1hZ2VFbGVt
ZW50Kj4mIGltYWdlRWxlbWVudHMoKSBjb25zdCB7IHJldHVybiBtX2ltYWdlRWxlbWVudHM7IH0K
IAotICAgIHZvaWQgZ2V0VGV4dEZpZWxkVmFsdWVzKFN0cmluZ1BhaXJWZWN0b3ImIGZpZWxkTmFt
ZXNBbmRWYWx1ZXMpIGNvbnN0OworICAgIFN0cmluZ1BhaXJWZWN0b3IgdGV4dEZpZWxkVmFsdWVz
KCkgY29uc3Q7CiAKICAgICBzdGF0aWMgSFRNTEZvcm1FbGVtZW50KiBmaW5kQ2xvc2VzdEZvcm1B
bmNlc3Rvcihjb25zdCBFbGVtZW50Jik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTEh0bWxFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEh0bWxFbGVt
ZW50LmNwcAppbmRleCA1ODQ2ZjU2NDE5OGE5ZDlmZmUwMjMyZWJlMTVjMWZkNTBhZjMxOWM4Li40
OWY4MzcyNTQzYzE5YmRkOGExYmNkZmQzM2M1NTM1NmY2ODZmNTU5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxIdG1sRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MSHRtbEVsZW1lbnQuY3BwCkBAIC02NiwxNSArNjYsMTUgQEAgdm9pZCBIVE1MSHRt
bEVsZW1lbnQ6Omluc2VydGVkQnlQYXJzZXIoKQogICAgIGlmICghZG9jdW1lbnQoKS5mcmFtZSgp
KQogICAgICAgICByZXR1cm47CiAKLSAgICBEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIg
PSBkb2N1bWVudCgpLmZyYW1lKCktPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCk7CisgICAgYXV0
byogZG9jdW1lbnRMb2FkZXIgPSBkb2N1bWVudCgpLmZyYW1lKCktPmxvYWRlcigpLmRvY3VtZW50
TG9hZGVyKCk7CiAgICAgaWYgKCFkb2N1bWVudExvYWRlcikKICAgICAgICAgcmV0dXJuOwogCi0g
ICAgY29uc3QgQXRvbWljU3RyaW5nJiBtYW5pZmVzdCA9IGF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJv
bml6YXRpb24obWFuaWZlc3RBdHRyKTsKKyAgICBhdXRvJiBtYW5pZmVzdCA9IGF0dHJpYnV0ZVdp
dGhvdXRTeW5jaHJvbml6YXRpb24obWFuaWZlc3RBdHRyKTsKICAgICBpZiAobWFuaWZlc3QuaXNF
bXB0eSgpKQotICAgICAgICBkb2N1bWVudExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+
c2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3QoKTsKKyAgICAgICAgZG9jdW1lbnRMb2FkZXItPmFw
cGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3QoKTsKICAgICBl
bHNlCi0gICAgICAgIGRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5zZWxl
Y3RDYWNoZVdpdGhNYW5pZmVzdChkb2N1bWVudCgpLmNvbXBsZXRlVVJMKG1hbmlmZXN0KSk7Cisg
ICAgICAgIGRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLnNlbGVjdENhY2hl
V2l0aE1hbmlmZXN0KGRvY3VtZW50KCkuY29tcGxldGVVUkwobWFuaWZlc3QpKTsKIH0KIAogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGlua0VsZW1lbnQuY3BwIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGlua0VsZW1lbnQuY3BwCmluZGV4IGQ3NzdhMzkzNzFjY2Zk
OGMzM2EzZmU4MDk2MDdlMjg5YjJlNDk5NTEuLjQ5NmFlZDZlYmU3NTk4NGI2YjIzMTE1ZWU3ZTMw
MzBkOTg2OGRiZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExpbmtFbGVt
ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMaW5rRWxlbWVudC5jcHAKQEAg
LTI2Nyw3ICsyNjcsNyBAQCB2b2lkIEhUTUxMaW5rRWxlbWVudDo6cHJvY2VzcygpCiAgICAgICAg
IGlmICghaXNBY3RpdmUpCiAgICAgICAgICAgICBwcmlvcml0eSA9IFJlc291cmNlTG9hZFByaW9y
aXR5OjpWZXJ5TG93OwogICAgICAgICBDYWNoZWRSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCh1cmws
IENhY2hlZFJlc291cmNlTG9hZGVyOjpkZWZhdWx0Q2FjaGVkUmVzb3VyY2VPcHRpb25zKCksIHBy
aW9yaXR5LCBXVEZNb3ZlKGNoYXJzZXQpKTsKLSAgICAgICAgcmVxdWVzdC5zZXRJbml0aWF0b3Io
dGhpcyk7CisgICAgICAgIHJlcXVlc3Quc2V0SW5pdGlhdG9yKCp0aGlzKTsKIAogICAgICAgICBp
ZiAoZG9jdW1lbnQoKS5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dTdHlsZVdpdGhOb25j
ZShhdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKEhUTUxOYW1lczo6bm9uY2VBdHRyKSkp
IHsKICAgICAgICAgICAgIFJlc291cmNlTG9hZGVyT3B0aW9ucyBvcHRpb25zID0gQ2FjaGVkUmVz
b3VyY2VMb2FkZXI6OmRlZmF1bHRDYWNoZWRSZXNvdXJjZU9wdGlvbnMoKTsKQEAgLTM2Nyw3ICsz
NjcsNyBAQCB2b2lkIEhUTUxMaW5rRWxlbWVudDo6c2V0Q1NTU3R5bGVTaGVldChjb25zdCBTdHJp
bmcmIGhyZWYsIGNvbnN0IFVSTCYgYmFzZVVSTCwgYwogICAgIENTU1BhcnNlckNvbnRleHQgcGFy
c2VyQ29udGV4dChkb2N1bWVudCgpLCBiYXNlVVJMLCBjaGFyc2V0KTsKICAgICBhdXRvIGNhY2hl
UG9saWN5ID0gZnJhbWUtPmxvYWRlcigpLnN1YnJlc291cmNlQ2FjaGVQb2xpY3koKTsKIAotICAg
IGlmIChSZWZQdHI8U3R5bGVTaGVldENvbnRlbnRzPiByZXN0b3JlZFNoZWV0ID0gY29uc3RfY2Fz
dDxDYWNoZWRDU1NTdHlsZVNoZWV0Kj4oY2FjaGVkU3R5bGVTaGVldCktPnJlc3RvcmVQYXJzZWRT
dHlsZVNoZWV0KHBhcnNlckNvbnRleHQsIGNhY2hlUG9saWN5KSkgeworICAgIGlmIChhdXRvIHJl
c3RvcmVkU2hlZXQgPSBjb25zdF9jYXN0PENhY2hlZENTU1N0eWxlU2hlZXQqPihjYWNoZWRTdHls
ZVNoZWV0KS0+cmVzdG9yZVBhcnNlZFN0eWxlU2hlZXQocGFyc2VyQ29udGV4dCwgY2FjaGVQb2xp
Y3kpKSB7CiAgICAgICAgIEFTU0VSVChyZXN0b3JlZFNoZWV0LT5pc0NhY2hlYWJsZSgpKTsKICAg
ICAgICAgQVNTRVJUKCFyZXN0b3JlZFNoZWV0LT5pc0xvYWRpbmcoKSk7CiAgICAgICAgIGluaXRp
YWxpemVTdHlsZVNoZWV0KHJlc3RvcmVkU2hlZXQucmVsZWFzZU5vbk51bGwoKSwgKmNhY2hlZFN0
eWxlU2hlZXQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVt
ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKaW5kZXgg
NGM3ZGM5NzJjNWU2YWM1NjllMDNjYzE0YjYyNjAwYWE5NDg1YTZlNC4uM2ZjMGM1OWM1YjdiMzE0
Y2Q1N2FhOTgzOWQxNmIwZGEzYmJhZGRlNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MTWVkaWFFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRp
YUVsZW1lbnQuY3BwCkBAIC0xNDI4LDExICsxNDI4LDggQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50
Ojpsb2FkUmVzb3VyY2UoY29uc3QgVVJMJiBpbml0aWFsVVJMLCBDb250ZW50VHlwZSYgY29udGVu
dFQKICAgICB9CiAKICNpZiBFTkFCTEUoQ09OVEVOVF9FWFRFTlNJT05TKQotICAgIERvY3VtZW50
TG9hZGVyKiBkb2N1bWVudExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigp
OwotCi0gICAgaWYgKGRvY3VtZW50TG9hZGVyKSB7Ci0gICAgICAgIGF1dG8gYmxvY2tlZFN0YXR1
cyA9IHBhZ2UtPnVzZXJDb250ZW50UHJvdmlkZXIoKS5wcm9jZXNzQ29udGVudEV4dGVuc2lvblJ1
bGVzRm9yTG9hZCh1cmwsIFJlc291cmNlVHlwZTo6TWVkaWEsICpkb2N1bWVudExvYWRlcik7Ci0g
ICAgICAgIGlmIChibG9ja2VkU3RhdHVzLmJsb2NrZWRMb2FkKSB7CisgICAgaWYgKGF1dG8qIGRv
Y3VtZW50TG9hZGVyID0gZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkpIHsKKyAgICAg
ICAgaWYgKHBhZ2UtPnVzZXJDb250ZW50UHJvdmlkZXIoKS5wcm9jZXNzQ29udGVudEV4dGVuc2lv
blJ1bGVzRm9yTG9hZCh1cmwsIFJlc291cmNlVHlwZTo6TWVkaWEsICpkb2N1bWVudExvYWRlciku
YmxvY2tlZExvYWQpIHsKICAgICAgICAgICAgIG1lZGlhTG9hZGluZ0ZhaWxlZChNZWRpYVBsYXll
cjo6Rm9ybWF0RXJyb3IpOwogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CkBAIC0xNDQy
LDExICsxNDM5LDkgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50Ojpsb2FkUmVzb3VyY2UoY29uc3Qg
VVJMJiBpbml0aWFsVVJMLCBDb250ZW50VHlwZSYgY29udGVudFQKICAgICAvLyBUaGUgcmVzb3Vy
Y2UgZmV0Y2ggYWxnb3JpdGhtIAogICAgIG1fbmV0d29ya1N0YXRlID0gTkVUV09SS19MT0FESU5H
OwogCi0gICAgLy8gSWYgdGhlIHVybCBzaG91bGQgYmUgbG9hZGVkIGZyb20gdGhlIGFwcGxpY2F0
aW9uIGNhY2hlLCBwYXNzIHRoZSB1cmwgb2YgdGhlIGNhY2hlZCBmaWxlCi0gICAgLy8gdG8gdGhl
IG1lZGlhIGVuZ2luZS4KLSAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdCogY2FjaGVIb3N0ID0gZnJh
bWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7Cisg
ICAgLy8gSWYgdGhlIFVSTCBzaG91bGQgYmUgbG9hZGVkIGZyb20gdGhlIGFwcGxpY2F0aW9uIGNh
Y2hlLCBwYXNzIHRoZSBVUkwgb2YgdGhlIGNhY2hlZCBmaWxlIHRvIHRoZSBtZWRpYSBlbmdpbmUu
CiAgICAgQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiByZXNvdXJjZSA9IG51bGxwdHI7Ci0gICAg
aWYgKGNhY2hlSG9zdCAmJiBjYWNoZUhvc3QtPnNob3VsZExvYWRSZXNvdXJjZUZyb21BcHBsaWNh
dGlvbkNhY2hlKFJlc291cmNlUmVxdWVzdCh1cmwpLCByZXNvdXJjZSkpIHsKKyAgICBpZiAoZnJh
bWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2hv
dWxkTG9hZFJlc291cmNlRnJvbUFwcGxpY2F0aW9uQ2FjaGUoUmVzb3VyY2VSZXF1ZXN0KHVybCks
IHJlc291cmNlKSkgewogICAgICAgICAvLyBSZXNvdXJjZXMgdGhhdCBhcmUgbm90IHByZXNlbnQg
aW4gdGhlIG1hbmlmZXN0IHdpbGwgYWx3YXlzIGZhaWwgdG8gbG9hZCAoYXQgbGVhc3QsIGFmdGVy
IHRoZQogICAgICAgICAvLyBjYWNoZSBoYXMgYmVlbiBwcmltZWQgdGhlIGZpcnN0IHRpbWUpLCBt
YWtpbmcgdGhlIHRlc3Rpbmcgb2Ygb2ZmbGluZSBhcHBsaWNhdGlvbnMgc2ltcGxlci4KICAgICAg
ICAgaWYgKCFyZXNvdXJjZSB8fCByZXNvdXJjZS0+cGF0aCgpLmlzRW1wdHkoKSkgewpAQCAtMTQ2
MCw3ICsxNDU1LDcgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50Ojpsb2FkUmVzb3VyY2UoY29uc3Qg
VVJMJiBpbml0aWFsVVJMLCBDb250ZW50VHlwZSYgY29udGVudFQKIAogICAgIG1fZmlyc3RUaW1l
UGxheWluZyA9IHRydWU7CiAKLSAgICAvLyBTZXQgbV9jdXJyZW50U3JjICpiZWZvcmUqIGNoYW5n
aW5nIHRvIHRoZSBjYWNoZSB1cmwsIHRoZSBmYWN0IHRoYXQgd2UgYXJlIGxvYWRpbmcgZnJvbSB0
aGUgYXBwCisgICAgLy8gU2V0IG1fY3VycmVudFNyYyAqYmVmb3JlKiBjaGFuZ2luZyB0byB0aGUg
Y2FjaGUgVVJMLCB0aGUgZmFjdCB0aGF0IHdlIGFyZSBsb2FkaW5nIGZyb20gdGhlIGFwcAogICAg
IC8vIGNhY2hlIGlzIGFuIGludGVybmFsIGRldGFpbCBub3QgZXhwb3NlZCB0aHJvdWdoIHRoZSBt
ZWRpYSBlbGVtZW50IEFQSS4KICAgICBtX2N1cnJlbnRTcmMgPSB1cmw7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVB
Z2VudC5jcHAKaW5kZXggZmY0ZmYzMWNjMTlmNDkzNGQwNGIyMjk3Zjc2ZWI5NDU4ODQ4NWQyMi4u
NmUzOWJjZGFkMGQ4NGYwNDI3YTkyYzI3MTBmZmNmMmYxZTBiMDBjNCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVB
Z2VudC5jcHAKQEAgLTY4LDE2ICs2OCwxNyBAQCB2b2lkIEluc3BlY3RvckFwcGxpY2F0aW9uQ2Fj
aGVBZ2VudDo6ZW5hYmxlKEVycm9yU3RyaW5nJikKIAogdm9pZCBJbnNwZWN0b3JBcHBsaWNhdGlv
bkNhY2hlQWdlbnQ6OnVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXMoRnJhbWUqIGZyYW1lKQog
ewotICAgIERvY3VtZW50TG9hZGVyKiBkb2N1bWVudExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5k
b2N1bWVudExvYWRlcigpOworICAgIGlmICghZnJhbWUpCisgICAgICAgIHJldHVybjsKKyAgICBh
dXRvKiBkb2N1bWVudExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwog
ICAgIGlmICghZG9jdW1lbnRMb2FkZXIpCiAgICAgICAgIHJldHVybjsKIAotICAgIEFwcGxpY2F0
aW9uQ2FjaGVIb3N0KiBob3N0ID0gZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCk7Ci0gICAgQXBwbGljYXRpb25DYWNoZUhvc3Q6OlN0YXR1cyBzdGF0dXMgPSBob3N0LT5zdGF0
dXMoKTsKLSAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q2FjaGVJbmZvIGluZm8gPSBob3N0LT5h
cHBsaWNhdGlvbkNhY2hlSW5mbygpOworICAgIGF1dG8mIGhvc3QgPSBkb2N1bWVudExvYWRlci0+
YXBwbGljYXRpb25DYWNoZUhvc3QoKTsKKyAgICBpbnQgc3RhdHVzID0gaG9zdC5zdGF0dXMoKTsK
KyAgICBhdXRvIG1hbmlmZXN0VVJMID0gaG9zdC5hcHBsaWNhdGlvbkNhY2hlSW5mbygpLm1hbmlm
ZXN0LnN0cmluZygpOwogCi0gICAgU3RyaW5nIG1hbmlmZXN0VVJMID0gaW5mby5tX21hbmlmZXN0
LnN0cmluZygpOwotICAgIG1fZnJvbnRlbmREaXNwYXRjaGVyLT5hcHBsaWNhdGlvbkNhY2hlU3Rh
dHVzVXBkYXRlZChtX3BhZ2VBZ2VudC0+ZnJhbWVJZChmcmFtZSksIG1hbmlmZXN0VVJMLCBzdGF0
aWNfY2FzdDxpbnQ+KHN0YXR1cykpOworICAgIG1fZnJvbnRlbmREaXNwYXRjaGVyLT5hcHBsaWNh
dGlvbkNhY2hlU3RhdHVzVXBkYXRlZChtX3BhZ2VBZ2VudC0+ZnJhbWVJZChmcmFtZSksIG1hbmlm
ZXN0VVJMLCBzdGF0dXMpOwogfQogCiB2b2lkIEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2Vu
dDo6bmV0d29ya1N0YXRlQ2hhbmdlZCgpCkBAIC05MSwyMCArOTIsMTggQEAgdm9pZCBJbnNwZWN0
b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6OmdldEZyYW1lc1dpdGhNYW5pZmVzdHMoRXJyb3JTdHJp
bmcmLCBSZWZQdHIKICAgICByZXN1bHQgPSBJbnNwZWN0b3I6OlByb3RvY29sOjpBcnJheTxJbnNw
ZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpGcmFtZVdpdGhNYW5pZmVzdD46OmNy
ZWF0ZSgpOwogCiAgICAgZm9yIChGcmFtZSogZnJhbWUgPSAmbV9wYWdlQWdlbnQtPm1haW5GcmFt
ZSgpOyBmcmFtZTsgZnJhbWUgPSBmcmFtZS0+dHJlZSgpLnRyYXZlcnNlTmV4dCgpKSB7Ci0gICAg
ICAgIERvY3VtZW50TG9hZGVyKiBkb2N1bWVudExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1
bWVudExvYWRlcigpOworICAgICAgICBhdXRvKiBkb2N1bWVudExvYWRlciA9IGZyYW1lLT5sb2Fk
ZXIoKS5kb2N1bWVudExvYWRlcigpOwogICAgICAgICBpZiAoIWRvY3VtZW50TG9hZGVyKQogICAg
ICAgICAgICAgY29udGludWU7CiAKLSAgICAgICAgQXBwbGljYXRpb25DYWNoZUhvc3QqIGhvc3Qg
PSBkb2N1bWVudExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKTsKLSAgICAgICAgQXBwbGlj
YXRpb25DYWNoZUhvc3Q6OkNhY2hlSW5mbyBpbmZvID0gaG9zdC0+YXBwbGljYXRpb25DYWNoZUlu
Zm8oKTsKLSAgICAgICAgU3RyaW5nIG1hbmlmZXN0VVJMID0gaW5mby5tX21hbmlmZXN0LnN0cmlu
ZygpOworICAgICAgICBhdXRvJiBob3N0ID0gZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KCk7CisgICAgICAgIFN0cmluZyBtYW5pZmVzdFVSTCA9IGhvc3QuYXBwbGljYXRpb25D
YWNoZUluZm8oKS5tYW5pZmVzdC5zdHJpbmcoKTsKICAgICAgICAgaWYgKCFtYW5pZmVzdFVSTC5p
c0VtcHR5KCkpIHsKLSAgICAgICAgICAgIFJlZjxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNh
dGlvbkNhY2hlOjpGcmFtZVdpdGhNYW5pZmVzdD4gdmFsdWUgPSBJbnNwZWN0b3I6OlByb3RvY29s
OjpBcHBsaWNhdGlvbkNhY2hlOjpGcmFtZVdpdGhNYW5pZmVzdDo6Y3JlYXRlKCkKKyAgICAgICAg
ICAgIHJlc3VsdC0+YWRkSXRlbShJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hl
OjpGcmFtZVdpdGhNYW5pZmVzdDo6Y3JlYXRlKCkKICAgICAgICAgICAgICAgICAuc2V0RnJhbWVJ
ZChtX3BhZ2VBZ2VudC0+ZnJhbWVJZChmcmFtZSkpCiAgICAgICAgICAgICAgICAgLnNldE1hbmlm
ZXN0VVJMKG1hbmlmZXN0VVJMKQotICAgICAgICAgICAgICAgIC5zZXRTdGF0dXMoc3RhdGljX2Nh
c3Q8aW50Pihob3N0LT5zdGF0dXMoKSkpCi0gICAgICAgICAgICAgICAgLnJlbGVhc2UoKTsKLSAg
ICAgICAgICAgIHJlc3VsdC0+YWRkSXRlbShXVEZNb3ZlKHZhbHVlKSk7CisgICAgICAgICAgICAg
ICAgLnNldFN0YXR1cyhzdGF0aWNfY2FzdDxpbnQ+KGhvc3Quc3RhdHVzKCkpKQorICAgICAgICAg
ICAgICAgIC5yZWxlYXNlKCkpOwogICAgICAgICB9CiAgICAgfQogfQpAQCAtMTI0LDY4ICsxMjMs
NjAgQEAgdm9pZCBJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6OmdldE1hbmlmZXN0Rm9y
RnJhbWUoRXJyb3JTdHJpbmcmIGVycm9yU3RyaW4KICAgICBpZiAoIWRvY3VtZW50TG9hZGVyKQog
ICAgICAgICByZXR1cm47CiAKLSAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q2FjaGVJbmZvIGlu
Zm8gPSBkb2N1bWVudExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+YXBwbGljYXRpb25D
YWNoZUluZm8oKTsKLSAgICAqbWFuaWZlc3RVUkwgPSBpbmZvLm1fbWFuaWZlc3Quc3RyaW5nKCk7
CisgICAgKm1hbmlmZXN0VVJMID0gZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCkuYXBwbGljYXRpb25DYWNoZUluZm8oKS5tYW5pZmVzdC5zdHJpbmcoKTsKIH0KIAogdm9pZCBJ
bnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6OmdldEFwcGxpY2F0aW9uQ2FjaGVGb3JGcmFt
ZShFcnJvclN0cmluZyYgZXJyb3JTdHJpbmcsIGNvbnN0IFN0cmluZyYgZnJhbWVJZCwgUmVmUHRy
PEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGU+
JiBhcHBsaWNhdGlvbkNhY2hlKQogewotICAgIERvY3VtZW50TG9hZGVyKiBkb2N1bWVudExvYWRl
ciA9IGFzc2VydEZyYW1lV2l0aERvY3VtZW50TG9hZGVyKGVycm9yU3RyaW5nLCBmcmFtZUlkKTsK
KyAgICBhdXRvKiBkb2N1bWVudExvYWRlciA9IGFzc2VydEZyYW1lV2l0aERvY3VtZW50TG9hZGVy
KGVycm9yU3RyaW5nLCBmcmFtZUlkKTsKICAgICBpZiAoIWRvY3VtZW50TG9hZGVyKQogICAgICAg
ICByZXR1cm47CiAKLSAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdCogaG9zdCA9IGRvY3VtZW50TG9h
ZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpOwotICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpD
YWNoZUluZm8gaW5mbyA9IGhvc3QtPmFwcGxpY2F0aW9uQ2FjaGVJbmZvKCk7Ci0KLSAgICBBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6UmVzb3VyY2VJbmZvTGlzdCByZXNvdXJjZXM7Ci0gICAgaG9zdC0+
ZmlsbFJlc291cmNlTGlzdCgmcmVzb3VyY2VzKTsKLQotICAgIGFwcGxpY2F0aW9uQ2FjaGUgPSBi
dWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGUocmVzb3VyY2VzLCBpbmZvKTsKKyAgICBhdXRv
JiBob3N0ID0gZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7CisgICAgYXBw
bGljYXRpb25DYWNoZSA9IGJ1aWxkT2JqZWN0Rm9yQXBwbGljYXRpb25DYWNoZShob3N0LnJlc291
cmNlTGlzdCgpLCBob3N0LmFwcGxpY2F0aW9uQ2FjaGVJbmZvKCkpOwogfQogCi1SZWY8SW5zcGVj
dG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZT4gSW5zcGVj
dG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGUo
Y29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mb0xpc3QmIGFwcGxpY2F0aW9u
Q2FjaGVSZXNvdXJjZXMsIGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8mIGFw
cGxpY2F0aW9uQ2FjaGVJbmZvKQorUmVmPEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9u
Q2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGU+IEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6
YnVpbGRPYmplY3RGb3JBcHBsaWNhdGlvbkNhY2hlKGNvbnN0IFZlY3RvcjxBcHBsaWNhdGlvbkNh
Y2hlSG9zdDo6UmVzb3VyY2VJbmZvPiYgYXBwbGljYXRpb25DYWNoZVJlc291cmNlcywgY29uc3Qg
QXBwbGljYXRpb25DYWNoZUhvc3Q6OkNhY2hlSW5mbyYgYXBwbGljYXRpb25DYWNoZUluZm8pCiB7
CiAgICAgcmV0dXJuIEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxp
Y2F0aW9uQ2FjaGU6OmNyZWF0ZSgpCi0gICAgICAgIC5zZXRNYW5pZmVzdFVSTChhcHBsaWNhdGlv
bkNhY2hlSW5mby5tX21hbmlmZXN0LnN0cmluZygpKQotICAgICAgICAuc2V0U2l6ZShhcHBsaWNh
dGlvbkNhY2hlSW5mby5tX3NpemUpCi0gICAgICAgIC5zZXRDcmVhdGlvblRpbWUoYXBwbGljYXRp
b25DYWNoZUluZm8ubV9jcmVhdGlvblRpbWUpCi0gICAgICAgIC5zZXRVcGRhdGVUaW1lKGFwcGxp
Y2F0aW9uQ2FjaGVJbmZvLm1fdXBkYXRlVGltZSkKKyAgICAgICAgLnNldE1hbmlmZXN0VVJMKGFw
cGxpY2F0aW9uQ2FjaGVJbmZvLm1hbmlmZXN0LnN0cmluZygpKQorICAgICAgICAuc2V0U2l6ZShh
cHBsaWNhdGlvbkNhY2hlSW5mby5zaXplKQorICAgICAgICAuc2V0Q3JlYXRpb25UaW1lKGFwcGxp
Y2F0aW9uQ2FjaGVJbmZvLmNyZWF0aW9uVGltZSkKKyAgICAgICAgLnNldFVwZGF0ZVRpbWUoYXBw
bGljYXRpb25DYWNoZUluZm8udXBkYXRlVGltZSkKICAgICAgICAgLnNldFJlc291cmNlcyhidWls
ZEFycmF5Rm9yQXBwbGljYXRpb25DYWNoZVJlc291cmNlcyhhcHBsaWNhdGlvbkNhY2hlUmVzb3Vy
Y2VzKSkKICAgICAgICAgLnJlbGVhc2UoKTsKIH0KIAotUmVmPEluc3BlY3Rvcjo6UHJvdG9jb2w6
OkFycmF5PEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9u
Q2FjaGVSZXNvdXJjZT4+IEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6YnVpbGRBcnJh
eUZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMoY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6
OlJlc291cmNlSW5mb0xpc3QmIGFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMpCitSZWY8SW5zcGVj
dG9yOjpQcm90b2NvbDo6QXJyYXk8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNo
ZTo6QXBwbGljYXRpb25DYWNoZVJlc291cmNlPj4gSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFn
ZW50OjpidWlsZEFycmF5Rm9yQXBwbGljYXRpb25DYWNoZVJlc291cmNlcyhjb25zdCBWZWN0b3I8
QXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mbz4mIGFwcGxpY2F0aW9uQ2FjaGVSZXNv
dXJjZXMpCiB7Ci0gICAgYXV0byByZXNvdXJjZXMgPSBJbnNwZWN0b3I6OlByb3RvY29sOjpBcnJh
eTxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hl
UmVzb3VyY2U+OjpjcmVhdGUoKTsKLQotICAgIGZvciAoY29uc3QgYXV0byYgcmVzb3VyY2VJbmZv
IDogYXBwbGljYXRpb25DYWNoZVJlc291cmNlcykKLSAgICAgICAgcmVzb3VyY2VzLT5hZGRJdGVt
KGJ1aWxkT2JqZWN0Rm9yQXBwbGljYXRpb25DYWNoZVJlc291cmNlKHJlc291cmNlSW5mbykpOwot
Ci0gICAgcmV0dXJuIHJlc291cmNlczsKKyAgICBhdXRvIHJlc3VsdCA9IEluc3BlY3Rvcjo6UHJv
dG9jb2w6OkFycmF5PEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxp
Y2F0aW9uQ2FjaGVSZXNvdXJjZT46OmNyZWF0ZSgpOworICAgIGZvciAoYXV0byYgaW5mbyA6IGFw
cGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMpCisgICAgICAgIHJlc3VsdC0+YWRkSXRlbShidWlsZE9i
amVjdEZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZShpbmZvKSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKIH0KIAogUmVmPEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxp
Y2F0aW9uQ2FjaGVSZXNvdXJjZT4gSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWls
ZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZShjb25zdCBBcHBsaWNhdGlvbkNhY2hl
SG9zdDo6UmVzb3VyY2VJbmZvJiByZXNvdXJjZUluZm8pCiB7CiAgICAgU3RyaW5nQnVpbGRlciB0
eXBlczsKIAotICAgIGlmIChyZXNvdXJjZUluZm8ubV9pc01hc3RlcikKKyAgICBpZiAocmVzb3Vy
Y2VJbmZvLmlzTWFzdGVyKQogICAgICAgICB0eXBlcy5hcHBlbmRMaXRlcmFsKCJNYXN0ZXIgIik7
CiAKLSAgICBpZiAocmVzb3VyY2VJbmZvLm1faXNNYW5pZmVzdCkKKyAgICBpZiAocmVzb3VyY2VJ
bmZvLmlzTWFuaWZlc3QpCiAgICAgICAgIHR5cGVzLmFwcGVuZExpdGVyYWwoIk1hbmlmZXN0ICIp
OwogCi0gICAgaWYgKHJlc291cmNlSW5mby5tX2lzRmFsbGJhY2spCisgICAgaWYgKHJlc291cmNl
SW5mby5pc0ZhbGxiYWNrKQogICAgICAgICB0eXBlcy5hcHBlbmRMaXRlcmFsKCJGYWxsYmFjayAi
KTsKIAotICAgIGlmIChyZXNvdXJjZUluZm8ubV9pc0ZvcmVpZ24pCisgICAgaWYgKHJlc291cmNl
SW5mby5pc0ZvcmVpZ24pCiAgICAgICAgIHR5cGVzLmFwcGVuZExpdGVyYWwoIkZvcmVpZ24gIik7
CiAKLSAgICBpZiAocmVzb3VyY2VJbmZvLm1faXNFeHBsaWNpdCkKKyAgICBpZiAocmVzb3VyY2VJ
bmZvLmlzRXhwbGljaXQpCiAgICAgICAgIHR5cGVzLmFwcGVuZExpdGVyYWwoIkV4cGxpY2l0ICIp
OwogCiAgICAgcmV0dXJuIEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFw
cGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6Y3JlYXRlKCkKLSAgICAgICAgLnNldFVybChyZXNvdXJj
ZUluZm8ubV9yZXNvdXJjZS5zdHJpbmcoKSkKLSAgICAgICAgLnNldFNpemUoc3RhdGljX2Nhc3Q8
aW50PihyZXNvdXJjZUluZm8ubV9zaXplKSkKKyAgICAgICAgLnNldFVybChyZXNvdXJjZUluZm8u
cmVzb3VyY2Uuc3RyaW5nKCkpCisgICAgICAgIC5zZXRTaXplKHN0YXRpY19jYXN0PGludD4ocmVz
b3VyY2VJbmZvLnNpemUpKQogICAgICAgICAuc2V0VHlwZSh0eXBlcy50b1N0cmluZygpKQogICAg
ICAgICAucmVsZWFzZSgpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5oCmluZGV4IGQ1YzU3OWM3ZWFiZTdi
MmJhZGM0NzRiMGY0ODcxNmRkNjk0ZmViNzYuLjQ4NzUyZWZhMGNkNWY2YTc2MmRlNTNkYzJhMTEy
ZWZmNDY0ZjcyZmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0
b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50LmgKQEAgLTYyLDggKzYyLDggQEAgcHVibGlj
OgogICAgIHZvaWQgZ2V0QXBwbGljYXRpb25DYWNoZUZvckZyYW1lKEVycm9yU3RyaW5nJiwgY29u
c3QgU3RyaW5nJiBmcmFtZUlkLCBSZWZQdHI8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRp
b25DYWNoZTo6QXBwbGljYXRpb25DYWNoZT4mKSBvdmVycmlkZTsKIAogcHJpdmF0ZToKLSAgICBS
ZWY8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNo
ZT4gYnVpbGRPYmplY3RGb3JBcHBsaWNhdGlvbkNhY2hlKGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVI
b3N0OjpSZXNvdXJjZUluZm9MaXN0JiwgY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNhY2hl
SW5mbyYpOwotICAgIFJlZjxJbnNwZWN0b3I6OlByb3RvY29sOjpBcnJheTxJbnNwZWN0b3I6OlBy
b3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+PiBidWls
ZEFycmF5Rm9yQXBwbGljYXRpb25DYWNoZVJlc291cmNlcyhjb25zdCBBcHBsaWNhdGlvbkNhY2hl
SG9zdDo6UmVzb3VyY2VJbmZvTGlzdCYpOworICAgIFJlZjxJbnNwZWN0b3I6OlByb3RvY29sOjpB
cHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlPiBidWlsZE9iamVjdEZvckFwcGxpY2F0
aW9uQ2FjaGUoY29uc3QgVmVjdG9yPEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpSZXNvdXJjZUluZm8+
JiwgY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNhY2hlSW5mbyYpOworICAgIFJlZjxJbnNw
ZWN0b3I6OlByb3RvY29sOjpBcnJheTxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNh
Y2hlOjpBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+PiBidWlsZEFycmF5Rm9yQXBwbGljYXRpb25D
YWNoZVJlc291cmNlcyhjb25zdCBWZWN0b3I8QXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNl
SW5mbz4mKTsKICAgICBSZWY8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6
QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiBidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGVS
ZXNvdXJjZShjb25zdCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6UmVzb3VyY2VJbmZvJik7CiAKICAg
ICBEb2N1bWVudExvYWRlciogYXNzZXJ0RnJhbWVXaXRoRG9jdW1lbnRMb2FkZXIoRXJyb3JTdHJp
bmcmLCBjb25zdCBTdHJpbmcmIGZyYW1lSWQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcAppbmRleCAyZTQzMzc5NmE2YWYz
YjExYjkxZDdjYjA2MjFhMTg0N2I1ZmMyNTdhLi5kNjhjNTIyZWZjZTAyY2ZlZDU5YThmMDg1OWY0
NTRlMWM4YzJjYTgxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcApAQCAtMSw2ICsxLDYgQEAKIC8qCiAqIENvcHlyaWdo
dCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotKiBDb3B5cmlnaHQg
KEMpIDIwMTQsIDIwMTUgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorKiBDb3B5cmln
aHQgKEMpIDIwMTQtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAqCiAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAogKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCkBAIC0xMDczLDEwICsxMDczLDEwIEBAIHZvaWQgSW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpuZXR3b3JrU3RhdGVDaGFuZ2VkSW1wbChJbnN0cnVtZW50
aW5nQWdlbnRzJiBpbnN0CiAgICAgICAgIGFwcGxpY2F0aW9uQ2FjaGVBZ2VudC0+bmV0d29ya1N0
YXRlQ2hhbmdlZCgpOwogfQogCi12b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6dXBkYXRl
QXBwbGljYXRpb25DYWNoZVN0YXR1c0ltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVu
dGluZ0FnZW50cywgRnJhbWUqIGZyYW1lKQordm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246
OnVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXNJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGlu
c3RydW1lbnRpbmdBZ2VudHMsIEZyYW1lJiBmcmFtZSkKIHsKLSAgICBpZiAoSW5zcGVjdG9yQXBw
bGljYXRpb25DYWNoZUFnZW50KiBhcHBsaWNhdGlvbkNhY2hlQWdlbnQgPSBpbnN0cnVtZW50aW5n
QWdlbnRzLmluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudCgpKQotICAgICAgICBhcHBsaWNh
dGlvbkNhY2hlQWdlbnQtPnVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXMoZnJhbWUpOworICAg
IGlmIChhdXRvKiBhcHBsaWNhdGlvbkNhY2hlQWdlbnQgPSBpbnN0cnVtZW50aW5nQWdlbnRzLmlu
c3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudCgpKQorICAgICAgICBhcHBsaWNhdGlvbkNhY2hl
QWdlbnQtPnVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXMoJmZyYW1lKTsKIH0KIAogYm9vbCBJ
bnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmNvbnNvbGVBZ2VudEVuYWJsZWQoU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaCBiL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaAppbmRleCA5YjYwMDEwNGRh
MmYxZGQ1ZWQxMDJiYmY5NDVhNmY1YWQ0OTk3ZjQyLi4yNDVjZGM4ODc1MmQwODUxZTU3MDQ0YmI3
MjMzNWI2YTA4MjRhYWZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0lu
c3BlY3Rvckluc3RydW1lbnRhdGlvbi5oCkBAIC00MDcsNyArNDA3LDcgQEAgcHJpdmF0ZToKICNl
bmRpZgogCiAgICAgc3RhdGljIHZvaWQgbmV0d29ya1N0YXRlQ2hhbmdlZEltcGwoSW5zdHJ1bWVu
dGluZ0FnZW50cyYpOwotICAgIHN0YXRpYyB2b2lkIHVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0
dXNJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBGcmFtZSopOworICAgIHN0YXRpYyB2b2lkIHVw
ZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXNJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBGcmFt
ZSYpOwogCiAgICAgc3RhdGljIHZvaWQgbGF5ZXJUcmVlRGlkQ2hhbmdlSW1wbChJbnN0cnVtZW50
aW5nQWdlbnRzJik7CiAgICAgc3RhdGljIHZvaWQgcmVuZGVyTGF5ZXJEZXN0cm95ZWRJbXBsKElu
c3RydW1lbnRpbmdBZ2VudHMmLCBjb25zdCBSZW5kZXJMYXllciYpOwpAQCAtMTE4MSw4ICsxMTgx
LDggQEAgaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpuZXR3b3JrU3RhdGVD
aGFuZ2VkKFBhZ2UmIHBhZ2UpCiBpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246
OnVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXMoRnJhbWUqIGZyYW1lKQogewogICAgIEZBU1Rf
UkVUVVJOX0lGX05PX0ZST05URU5EUyh2b2lkKCkpOwotICAgIGlmIChJbnN0cnVtZW50aW5nQWdl
bnRzKiBpbnN0cnVtZW50aW5nQWdlbnRzID0gaW5zdHJ1bWVudGluZ0FnZW50c0ZvckZyYW1lKGZy
YW1lKSkKLSAgICAgICAgdXBkYXRlQXBwbGljYXRpb25DYWNoZVN0YXR1c0ltcGwoKmluc3RydW1l
bnRpbmdBZ2VudHMsIGZyYW1lKTsKKyAgICBpZiAoYXV0byogaW5zdHJ1bWVudGluZ0FnZW50cyA9
IGluc3RydW1lbnRpbmdBZ2VudHNGb3JGcmFtZShmcmFtZSkpCisgICAgICAgIHVwZGF0ZUFwcGxp
Y2F0aW9uQ2FjaGVTdGF0dXNJbXBsKCppbnN0cnVtZW50aW5nQWdlbnRzLCAqZnJhbWUpOwogfQog
CiBpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmFkZE1lc3NhZ2VUb0NvbnNv
bGUoUGFnZSYgcGFnZSwgc3RkOjp1bmlxdWVfcHRyPEluc3BlY3Rvcjo6Q29uc29sZU1lc3NhZ2U+
IG1lc3NhZ2UpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2Fk
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcAppbmRleCA5
YjM4YzNiMzYyNzkwNWUxYmVhYTM5ZjU1YmUzZGJjNjljMzc3YWU5Li5lZTY1OWNiNWY5Mzk1OTA3
NjdlYzk4NGE2MTcxZmQ1MzkwZTU0ODFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvRG9jdW1lbnRMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVu
dExvYWRlci5jcHAKQEAgLTEyOSwzMCArMTI5LDE2IEBAIHN0YXRpYyBib29sIGFyZUFsbExvYWRl
cnNQYWdlQ2FjaGVBY2NlcHRhYmxlKGNvbnN0IFJlc291cmNlTG9hZGVyTWFwJiBsb2FkZXJzKQog
ICAgIHJldHVybiB0cnVlOwogfQogCi1Eb2N1bWVudExvYWRlcjo6RG9jdW1lbnRMb2FkZXIoY29u
c3QgUmVzb3VyY2VSZXF1ZXN0JiByZXEsIGNvbnN0IFN1YnN0aXR1dGVEYXRhJiBzdWJzdGl0dXRl
RGF0YSkKLSAgICA6IG1fZGVmZXJNYWluUmVzb3VyY2VEYXRhTG9hZCh0cnVlKQotICAgICwgbV9m
cmFtZShudWxscHRyKQotICAgICwgbV9jYWNoZWRSZXNvdXJjZUxvYWRlcihDYWNoZWRSZXNvdXJj
ZUxvYWRlcjo6Y3JlYXRlKHRoaXMpKQorRG9jdW1lbnRMb2FkZXI6OkRvY3VtZW50TG9hZGVyKGNv
bnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgU3Vic3RpdHV0ZURhdGEmIHN1YnN0
aXR1dGVEYXRhKQorICAgIDogbV9jYWNoZWRSZXNvdXJjZUxvYWRlcihDYWNoZWRSZXNvdXJjZUxv
YWRlcjo6Y3JlYXRlKHRoaXMpKQogICAgICwgbV93cml0ZXIobV9mcmFtZSkKLSAgICAsIG1fb3Jp
Z2luYWxSZXF1ZXN0KHJlcSkKKyAgICAsIG1fb3JpZ2luYWxSZXF1ZXN0KHJlcXVlc3QpCiAgICAg
LCBtX3N1YnN0aXR1dGVEYXRhKHN1YnN0aXR1dGVEYXRhKQotICAgICwgbV9vcmlnaW5hbFJlcXVl
c3RDb3B5KHJlcSkKLSAgICAsIG1fcmVxdWVzdChyZXEpCisgICAgLCBtX29yaWdpbmFsUmVxdWVz
dENvcHkocmVxdWVzdCkKKyAgICAsIG1fcmVxdWVzdChyZXF1ZXN0KQogICAgICwgbV9vcmlnaW5h
bFN1YnN0aXR1dGVEYXRhV2FzVmFsaWQoc3Vic3RpdHV0ZURhdGEuaXNWYWxpZCgpKQotICAgICwg
bV9jb21taXR0ZWQoZmFsc2UpCi0gICAgLCBtX2lzU3RvcHBpbmcoZmFsc2UpCi0gICAgLCBtX2dv
dEZpcnN0Qnl0ZShmYWxzZSkKLSAgICAsIG1faXNDbGllbnRSZWRpcmVjdChmYWxzZSkKLSAgICAs
IG1faXNMb2FkaW5nTXVsdGlwYXJ0Q29udGVudChmYWxzZSkKLSAgICAsIG1fd2FzT25sb2FkRGlz
cGF0Y2hlZChmYWxzZSkKLSAgICAsIG1fc3RvcFJlY29yZGluZ1Jlc3BvbnNlcyhmYWxzZSkKICAg
ICAsIG1fc3Vic3RpdHV0ZVJlc291cmNlRGVsaXZlcnlUaW1lcigqdGhpcywgJkRvY3VtZW50TG9h
ZGVyOjpzdWJzdGl0dXRlUmVzb3VyY2VEZWxpdmVyeVRpbWVyRmlyZWQpCi0gICAgLCBtX2RpZENy
ZWF0ZUdsb2JhbEhpc3RvcnlFbnRyeShmYWxzZSkKLSAgICAsIG1fbG9hZGluZ01haW5SZXNvdXJj
ZShmYWxzZSkKLSAgICAsIG1fdGltZU9mTGFzdERhdGFSZWNlaXZlZCgwLjApCi0gICAgLCBtX2lk
ZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyKDApCiAgICAgLCBtX2RhdGFMb2Fk
VGltZXIoKnRoaXMsICZEb2N1bWVudExvYWRlcjo6aGFuZGxlU3Vic3RpdHV0ZURhdGFMb2FkTm93
KQotICAgICwgbV9zdWJyZXNvdXJjZUxvYWRlcnNBcmVQYWdlQ2FjaGVBY2NlcHRhYmxlKGZhbHNl
KQogICAgICwgbV9hcHBsaWNhdGlvbkNhY2hlSG9zdChzdGQ6Om1ha2VfdW5pcXVlPEFwcGxpY2F0
aW9uQ2FjaGVIb3N0PigqdGhpcykpCiB7CiB9CkBAIC0xNjYsNyArMTUyLDkgQEAgRnJhbWVMb2Fk
ZXIqIERvY3VtZW50TG9hZGVyOjpmcmFtZUxvYWRlcigpIGNvbnN0CiAKIFN1YnJlc291cmNlTG9h
ZGVyKiBEb2N1bWVudExvYWRlcjo6bWFpblJlc291cmNlTG9hZGVyKCkgY29uc3QKIHsKLSAgICBy
ZXR1cm4gbV9tYWluUmVzb3VyY2UgPyBtX21haW5SZXNvdXJjZS0+bG9hZGVyKCkgOiAwOworICAg
IGlmICghbV9tYWluUmVzb3VyY2UpCisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIHJldHVy
biBtX21haW5SZXNvdXJjZS0+bG9hZGVyKCk7CiB9CiAKIERvY3VtZW50TG9hZGVyOjp+RG9jdW1l
bnRMb2FkZXIoKQpAQCAtMTc5LDcgKzE2Nyw3IEBAIERvY3VtZW50TG9hZGVyOjp+RG9jdW1lbnRM
b2FkZXIoKQogICAgIGlmIChtX2ljb25EYXRhQ2FsbGJhY2spCiAgICAgICAgIG1faWNvbkRhdGFD
YWxsYmFjay0+aW52YWxpZGF0ZSgpOwogICAgIG1fY2FjaGVkUmVzb3VyY2VMb2FkZXItPmNsZWFy
RG9jdW1lbnRMb2FkZXIoKTsKLSAgICAKKwogICAgIGNsZWFyTWFpblJlc291cmNlKCk7CiB9CiAK
QEAgLTE5OSwzMSArMTg3LDYgQEAgRG9jdW1lbnQqIERvY3VtZW50TG9hZGVyOjpkb2N1bWVudCgp
IGNvbnN0CiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLWNvbnN0IFJlc291cmNlUmVxdWVzdCYg
RG9jdW1lbnRMb2FkZXI6Om9yaWdpbmFsUmVxdWVzdCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1f
b3JpZ2luYWxSZXF1ZXN0OwotfQotCi1jb25zdCBSZXNvdXJjZVJlcXVlc3QmIERvY3VtZW50TG9h
ZGVyOjpvcmlnaW5hbFJlcXVlc3RDb3B5KCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9vcmlnaW5h
bFJlcXVlc3RDb3B5OwotfQotCi1jb25zdCBSZXNvdXJjZVJlcXVlc3QmIERvY3VtZW50TG9hZGVy
OjpyZXF1ZXN0KCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9yZXF1ZXN0OwotfQotCi1SZXNvdXJj
ZVJlcXVlc3QmIERvY3VtZW50TG9hZGVyOjpyZXF1ZXN0KCkKLXsKLSAgICByZXR1cm4gbV9yZXF1
ZXN0OwotfQotCi1jb25zdCBVUkwmIERvY3VtZW50TG9hZGVyOjp1cmwoKSBjb25zdAotewotICAg
IHJldHVybiByZXF1ZXN0KCkudXJsKCk7Ci19Ci0KIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnJlcGxh
Y2VSZXF1ZXN0VVJMRm9yU2FtZURvY3VtZW50TmF2aWdhdGlvbihjb25zdCBVUkwmIHVybCkKIHsK
ICAgICBtX29yaWdpbmFsUmVxdWVzdENvcHkuc2V0VVJMKHVybCk7CkBAIC0zMTksNyArMjgyLDcg
QEAgdm9pZCBEb2N1bWVudExvYWRlcjo6c3RvcExvYWRpbmcoKQogICAgIGNhbmNlbEFsbChtX211
bHRpcGFydFN1YnJlc291cmNlTG9hZGVycyk7CiAKICAgICAvLyBBcHBjYWNoZSB1c2VzIFJlc291
cmNlSGFuZGxlIGRpcmVjdGx5LCBEb2N1bWVudExvYWRlciBkb2Vzbid0IGNvdW50IHRoZXNlIGxv
YWRzLgotICAgIG1fYXBwbGljYXRpb25DYWNoZUhvc3QtPnN0b3BMb2FkaW5nSW5GcmFtZShtX2Zy
YW1lKTsKKyAgICBtX2FwcGxpY2F0aW9uQ2FjaGVIb3N0LT5zdG9wTG9hZGluZ0luRnJhbWUoKm1f
ZnJhbWUpOwogICAgIAogI2lmIEVOQUJMRShXRUJfQVJDSElWRSkgfHwgRU5BQkxFKE1IVE1MKQog
ICAgIGNsZWFyQXJjaGl2ZVJlc291cmNlcygpOwpAQCAtNjAyLDcgKzU2NSw3IEBAIHZvaWQgRG9j
dW1lbnRMb2FkZXI6OndpbGxTZW5kUmVxdWVzdChSZXNvdXJjZVJlcXVlc3QmIG5ld1JlcXVlc3Qs
IGNvbnN0IFJlc291cmNlCiAKICAgICBBU1NFUlQoIW1fd2FpdGluZ0Zvck5hdmlnYXRpb25Qb2xp
Y3kpOwogICAgIG1fd2FpdGluZ0Zvck5hdmlnYXRpb25Qb2xpY3kgPSB0cnVlOwotICAgIGZyYW1l
TG9hZGVyKCktPnBvbGljeUNoZWNrZXIoKS5jaGVja05hdmlnYXRpb25Qb2xpY3kobmV3UmVxdWVz
dCwgZGlkUmVjZWl2ZVJlZGlyZWN0UmVzcG9uc2UsIFt0aGlzXShjb25zdCBSZXNvdXJjZVJlcXVl
c3QmIHJlcXVlc3QsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwgYm9vbCBzaG91bGRDb250aW51ZSkg
eworICAgIGZyYW1lTG9hZGVyKCktPnBvbGljeUNoZWNrZXIoKS5jaGVja05hdmlnYXRpb25Qb2xp
Y3kobmV3UmVxdWVzdCwgZGlkUmVjZWl2ZVJlZGlyZWN0UmVzcG9uc2UsIFt0aGlzXSAoY29uc3Qg
UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBGb3JtU3RhdGUqLCBib29sIHNob3VsZENvbnRpbnVl
KSB7CiAgICAgICAgIGNvbnRpbnVlQWZ0ZXJOYXZpZ2F0aW9uUG9saWN5KHJlcXVlc3QsIHNob3Vs
ZENvbnRpbnVlKTsKICAgICB9KTsKIH0KQEAgLTkwMCwxMiArODYzLDggQEAgdm9pZCBEb2N1bWVu
dExvYWRlcjo6Y29tbWl0RGF0YShjb25zdCBjaGFyKiBieXRlcywgc2l6ZV90IGxlbmd0aCkKICAg
ICAgICAgaWYgKGZyYW1lTG9hZGVyKCktPnN0YXRlTWFjaGluZSgpLmNyZWF0aW5nSW5pdGlhbEVt
cHR5RG9jdW1lbnQoKSkKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgCi0jaWYgRU5BQkxF
KE1IVE1MKQotICAgICAgICAvLyBUaGUgb3JpZ2luIGlzIHRoZSBNSFRNTCBmaWxlLCB3ZSBuZWVk
IHRvIHNldCB0aGUgYmFzZSBVUkwgdG8gdGhlIGRvY3VtZW50IGVuY29kZWQgaW4gdGhlIE1IVE1M
IHNvCi0gICAgICAgIC8vIHJlbGF0aXZlIFVSTHMgYXJlIHJlc29sdmVkIHByb3Blcmx5LgotICAg
ICAgICBpZiAobV9hcmNoaXZlICYmIG1fYXJjaGl2ZS0+dHlwZSgpID09IEFyY2hpdmU6Ok1IVE1M
KQorICAgICAgICBpZiAobV9hcmNoaXZlICYmIG1fYXJjaGl2ZS0+c2hvdWxkT3ZlcnJpZGVCYXNl
VVJMKCkpCiAgICAgICAgICAgICBtX2ZyYW1lLT5kb2N1bWVudCgpLT5zZXRCYXNlVVJMT3ZlcnJp
ZGUobV9hcmNoaXZlLT5tYWluUmVzb3VyY2UoKS0+dXJsKCkpOwotI2VuZGlmCiAKICAgICAgICAg
Ly8gQ2FsbCByZWNlaXZlZEZpcnN0RGF0YSgpIGV4YWN0bHkgb25jZSBwZXIgbG9hZC4gV2Ugc2hv
dWxkIG9ubHkgcmVhY2ggdGhpcyBwb2ludCBtdWx0aXBsZSB0aW1lcwogICAgICAgICAvLyBmb3Ig
bXVsdGlwYXJ0IGxvYWRzLCBhbmQgRnJhbWVMb2FkZXI6OmlzUmVwbGFjaW5nKCkgd2lsbCBiZSB0
cnVlIGFmdGVyIHRoZSBmaXJzdCB0aW1lLgpAQCAtOTIxLDEwICs4ODAsOCBAQCB2b2lkIERvY3Vt
ZW50TG9hZGVyOjpjb21taXREYXRhKGNvbnN0IGNoYXIqIGJ5dGVzLCBzaXplX3QgbGVuZ3RoKQog
ICAgICAgICBpZiAob3ZlcnJpZGVFbmNvZGluZygpLmlzTnVsbCgpKSB7CiAgICAgICAgICAgICB1
c2VyQ2hvc2VuID0gZmFsc2U7CiAgICAgICAgICAgICBlbmNvZGluZyA9IHJlc3BvbnNlKCkudGV4
dEVuY29kaW5nTmFtZSgpOwotI2lmIEVOQUJMRShXRUJfQVJDSElWRSkKLSAgICAgICAgICAgIGlm
IChtX2FyY2hpdmUgJiYgbV9hcmNoaXZlLT50eXBlKCkgPT0gQXJjaGl2ZTo6V2ViQXJjaGl2ZSkK
KyAgICAgICAgICAgIGlmIChtX2FyY2hpdmUgJiYgbV9hcmNoaXZlLT5zaG91bGRVc2VNYWluUmVz
b3VyY2VFbmNvZGluZygpKQogICAgICAgICAgICAgICAgIGVuY29kaW5nID0gbV9hcmNoaXZlLT5t
YWluUmVzb3VyY2UoKS0+dGV4dEVuY29kaW5nKCk7Ci0jZW5kaWYKICAgICAgICAgfSBlbHNlIHsK
ICAgICAgICAgICAgIHVzZXJDaG9zZW4gPSB0cnVlOwogICAgICAgICAgICAgZW5jb2RpbmcgPSBv
dmVycmlkZUVuY29kaW5nKCk7CkBAIC0xMDgzLDE1ICsxMDQwLDE2IEBAIGJvb2wgRG9jdW1lbnRM
b2FkZXI6OmlzTG9hZGluZ0luQVBJU2Vuc2UoKSBjb25zdAogICAgIGlmIChmcmFtZUxvYWRlcigp
LT5zdGF0ZSgpICE9IEZyYW1lU3RhdGVDb21wbGV0ZSkgewogICAgICAgICBpZiAobV9mcmFtZS0+
c2V0dGluZ3MoKS5uZWVkc0lzTG9hZGluZ0luQVBJU2Vuc2VRdWlyaygpICYmICFtX3N1YnJlc291
cmNlTG9hZGVycy5pc0VtcHR5KCkpCiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICAKLSAg
ICAgICAgRG9jdW1lbnQqIGRvYyA9IG1fZnJhbWUtPmRvY3VtZW50KCk7Ci0gICAgICAgIGlmICgo
aXNMb2FkaW5nTWFpblJlc291cmNlKCkgfHwgIW1fZnJhbWUtPmRvY3VtZW50KCktPmxvYWRFdmVu
dEZpbmlzaGVkKCkpICYmIGlzTG9hZGluZygpKQorCisgICAgICAgIEFTU0VSVChtX2ZyYW1lLT5k
b2N1bWVudCgpKTsKKyAgICAgICAgYXV0byYgZG9jdW1lbnQgPSAqbV9mcmFtZS0+ZG9jdW1lbnQo
KTsKKyAgICAgICAgaWYgKChpc0xvYWRpbmdNYWluUmVzb3VyY2UoKSB8fCAhZG9jdW1lbnQubG9h
ZEV2ZW50RmluaXNoZWQoKSkgJiYgaXNMb2FkaW5nKCkpCiAgICAgICAgICAgICByZXR1cm4gdHJ1
ZTsKICAgICAgICAgaWYgKG1fY2FjaGVkUmVzb3VyY2VMb2FkZXItPnJlcXVlc3RDb3VudCgpKQog
ICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgICAgIGlmIChkb2MtPnByb2Nlc3NpbmdMb2Fk
RXZlbnQoKSkKKyAgICAgICAgaWYgKGRvY3VtZW50LnByb2Nlc3NpbmdMb2FkRXZlbnQoKSkKICAg
ICAgICAgICAgIHJldHVybiB0cnVlOwotICAgICAgICBpZiAoZG9jLT5oYXNBY3RpdmVQYXJzZXIo
KSkKKyAgICAgICAgaWYgKGRvY3VtZW50Lmhhc0FjdGl2ZVBhcnNlcigpKQogICAgICAgICAgICAg
cmV0dXJuIHRydWU7CiAgICAgfQogICAgIHJldHVybiBmcmFtZUxvYWRlcigpLT5zdWJmcmFtZUlz
TG9hZGluZygpOwpAQCAtMTEwMiw0MCArMTA2MCwzNSBAQCBib29sIERvY3VtZW50TG9hZGVyOjpt
YXliZUNyZWF0ZUFyY2hpdmUoKQogI2lmICFFTkFCTEUoV0VCX0FSQ0hJVkUpICYmICFFTkFCTEUo
TUhUTUwpCiAgICAgcmV0dXJuIGZhbHNlOwogI2Vsc2UKLSAgICAKICAgICAvLyBHaXZlIHRoZSBh
cmNoaXZlIG1hY2hpbmVyeSBhIGNyYWNrIGF0IHRoaXMgZG9jdW1lbnQuIElmIHRoZSBNSU1FIHR5
cGUgaXMgbm90IGFuIGFyY2hpdmUgdHlwZSwgaXQgd2lsbCByZXR1cm4gMC4KICAgICBtX2FyY2hp
dmUgPSBBcmNoaXZlRmFjdG9yeTo6Y3JlYXRlKG1fcmVzcG9uc2UudXJsKCksIG1haW5SZXNvdXJj
ZURhdGEoKS5nZXQoKSwgbV9yZXNwb25zZS5taW1lVHlwZSgpKTsKICAgICBpZiAoIW1fYXJjaGl2
ZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIAotICAgIGFkZEFsbEFyY2hpdmVSZXNvdXJj
ZXMobV9hcmNoaXZlLmdldCgpKTsKLSAgICBBcmNoaXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSA9
IG1fYXJjaGl2ZS0+bWFpblJlc291cmNlKCk7Ci0gICAgbV9wYXJzZWRBcmNoaXZlRGF0YSA9ICZt
YWluUmVzb3VyY2UtPmRhdGEoKTsKLSAgICBtX3dyaXRlci5zZXRNSU1FVHlwZShtYWluUmVzb3Vy
Y2UtPm1pbWVUeXBlKCkpOwotICAgIAorICAgIGFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoKm1fYXJj
aGl2ZSk7CisgICAgQVNTRVJUKG1fYXJjaGl2ZS0+bWFpblJlc291cmNlKCkpOworICAgIGF1dG8m
IG1haW5SZXNvdXJjZSA9ICptX2FyY2hpdmUtPm1haW5SZXNvdXJjZSgpOworICAgIG1fcGFyc2Vk
QXJjaGl2ZURhdGEgPSAmbWFpblJlc291cmNlLmRhdGEoKTsKKyAgICBtX3dyaXRlci5zZXRNSU1F
VHlwZShtYWluUmVzb3VyY2UubWltZVR5cGUoKSk7CisKICAgICBBU1NFUlQobV9mcmFtZS0+ZG9j
dW1lbnQoKSk7Ci0gICAgY29tbWl0RGF0YShtYWluUmVzb3VyY2UtPmRhdGEoKS5kYXRhKCksIG1h
aW5SZXNvdXJjZS0+ZGF0YSgpLnNpemUoKSk7CisgICAgY29tbWl0RGF0YShtYWluUmVzb3VyY2Uu
ZGF0YSgpLmRhdGEoKSwgbWFpblJlc291cmNlLmRhdGEoKS5zaXplKCkpOwogICAgIHJldHVybiB0
cnVlOwotI2VuZGlmIC8vICFFTkFCTEUoV0VCX0FSQ0hJVkUpICYmICFFTkFCTEUoTUhUTUwpCisj
ZW5kaWYKIH0KIAogI2lmIEVOQUJMRShXRUJfQVJDSElWRSkgfHwgRU5BQkxFKE1IVE1MKQogCi12
b2lkIERvY3VtZW50TG9hZGVyOjpzZXRBcmNoaXZlKFBhc3NSZWZQdHI8QXJjaGl2ZT4gYXJjaGl2
ZSkKK3ZvaWQgRG9jdW1lbnRMb2FkZXI6OnNldEFyY2hpdmUoUmVmPEFyY2hpdmU+JiYgYXJjaGl2
ZSkKIHsKLSAgICBtX2FyY2hpdmUgPSBhcmNoaXZlOwotICAgIGFkZEFsbEFyY2hpdmVSZXNvdXJj
ZXMobV9hcmNoaXZlLmdldCgpKTsKKyAgICBtX2FyY2hpdmUgPSBXVEZNb3ZlKGFyY2hpdmUpOwor
ICAgIGFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoKm1fYXJjaGl2ZSk7CiB9CiAKLXZvaWQgRG9jdW1l
bnRMb2FkZXI6OmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoQXJjaGl2ZSogYXJjaGl2ZSkKK3ZvaWQg
RG9jdW1lbnRMb2FkZXI6OmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoQXJjaGl2ZSYgYXJjaGl2ZSkK
IHsKICAgICBpZiAoIW1fYXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbikKICAgICAgICAgbV9hcmNo
aXZlUmVzb3VyY2VDb2xsZWN0aW9uID0gc3RkOjptYWtlX3VuaXF1ZTxBcmNoaXZlUmVzb3VyY2VD
b2xsZWN0aW9uPigpOwotICAgICAgICAKLSAgICBBU1NFUlQoYXJjaGl2ZSk7Ci0gICAgaWYgKCFh
cmNoaXZlKQotICAgICAgICByZXR1cm47Ci0gICAgICAgIAogICAgIG1fYXJjaGl2ZVJlc291cmNl
Q29sbGVjdGlvbi0+YWRkQWxsUmVzb3VyY2VzKGFyY2hpdmUpOwogfQogCkBAIC0xMTQ1LDEzICsx
MDk4LDEyIEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6OmFkZEFyY2hpdmVSZXNvdXJjZShSZWY8QXJj
aGl2ZVJlc291cmNlPiYmIHJlc291cmNlKQogewogICAgIGlmICghbV9hcmNoaXZlUmVzb3VyY2VD
b2xsZWN0aW9uKQogICAgICAgICBtX2FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24gPSBzdGQ6Om1h
a2VfdW5pcXVlPEFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24+KCk7Ci0gICAgICAgIAogICAgIG1f
YXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi0+YWRkUmVzb3VyY2UoV1RGTW92ZShyZXNvdXJjZSkp
OwogfQogCi1QYXNzUmVmUHRyPEFyY2hpdmU+IERvY3VtZW50TG9hZGVyOjpwb3BBcmNoaXZlRm9y
U3ViZnJhbWUoY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IFVSTCYgdXJsKQorUmVmUHRy
PEFyY2hpdmU+IERvY3VtZW50TG9hZGVyOjpwb3BBcmNoaXZlRm9yU3ViZnJhbWUoY29uc3QgU3Ry
aW5nJiBmcmFtZU5hbWUsIGNvbnN0IFVSTCYgdXJsKQogewotICAgIHJldHVybiBtX2FyY2hpdmVS
ZXNvdXJjZUNvbGxlY3Rpb24gPyBtX2FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24tPnBvcFN1YmZy
YW1lQXJjaGl2ZShmcmFtZU5hbWUsIHVybCkgOiBQYXNzUmVmUHRyPEFyY2hpdmU+KG51bGxwdHIp
OworICAgIHJldHVybiBtX2FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24gPyBtX2FyY2hpdmVSZXNv
dXJjZUNvbGxlY3Rpb24tPnBvcFN1YmZyYW1lQXJjaGl2ZShmcmFtZU5hbWUsIHVybCkgOiBudWxs
cHRyOwogfQogCiB2b2lkIERvY3VtZW50TG9hZGVyOjpjbGVhckFyY2hpdmVSZXNvdXJjZXMoKQpA
QCAtMTE3MSw3ICsxMTIzLDcgQEAgQXJjaGl2ZVJlc291cmNlKiBEb2N1bWVudExvYWRlcjo6YXJj
aGl2ZVJlc291cmNlRm9yVVJMKGNvbnN0IFVSTCYgdXJsKSBjb25zdAogewogICAgIGlmICghbV9h
cmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICBB
cmNoaXZlUmVzb3VyY2UqIHJlc291cmNlID0gbV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uLT5h
cmNoaXZlUmVzb3VyY2VGb3JVUkwodXJsKTsKKyAgICBhdXRvKiByZXNvdXJjZSA9IG1fYXJjaGl2
ZVJlc291cmNlQ29sbGVjdGlvbi0+YXJjaGl2ZVJlc291cmNlRm9yVVJMKHVybCk7CiAgICAgaWYg
KCFyZXNvdXJjZSB8fCByZXNvdXJjZS0+c2hvdWxkSWdub3JlV2hlblVuYXJjaGl2aW5nKCkpCiAg
ICAgICAgIHJldHVybiBudWxscHRyOwogICAgIHJldHVybiByZXNvdXJjZTsKQEAgLTExODIsMTcg
KzExMzQsMTYgQEAgUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gRG9jdW1lbnRMb2FkZXI6Om1haW5S
ZXNvdXJjZSgpIGNvbnN0CiAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZGF0YSA9IG1haW5SZXNv
dXJjZURhdGEoKTsKICAgICBpZiAoIWRhdGEpCiAgICAgICAgIGRhdGEgPSBTaGFyZWRCdWZmZXI6
OmNyZWF0ZSgpOwotICAgICAgICAKICAgICBhdXRvJiByZXNwb25zZSA9IHRoaXMtPnJlc3BvbnNl
KCk7CiAgICAgcmV0dXJuIEFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKFdURk1vdmUoZGF0YSksIHJl
c3BvbnNlLnVybCgpLCByZXNwb25zZS5taW1lVHlwZSgpLCByZXNwb25zZS50ZXh0RW5jb2RpbmdO
YW1lKCksIGZyYW1lKCktPnRyZWUoKS51bmlxdWVOYW1lKCkpOwogfQogCi1QYXNzUmVmUHRyPEFy
Y2hpdmVSZXNvdXJjZT4gRG9jdW1lbnRMb2FkZXI6OnN1YnJlc291cmNlKGNvbnN0IFVSTCYgdXJs
KSBjb25zdAorUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gRG9jdW1lbnRMb2FkZXI6OnN1YnJlc291
cmNlKGNvbnN0IFVSTCYgdXJsKSBjb25zdAogewogICAgIGlmICghaXNDb21taXR0ZWQoKSkKICAg
ICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgCi0gICAgQ2FjaGVkUmVzb3VyY2UqIHJlc291cmNl
ID0gbV9jYWNoZWRSZXNvdXJjZUxvYWRlci0+Y2FjaGVkUmVzb3VyY2UodXJsKTsKKyAgICBhdXRv
KiByZXNvdXJjZSA9IG1fY2FjaGVkUmVzb3VyY2VMb2FkZXItPmNhY2hlZFJlc291cmNlKHVybCk7
CiAgICAgaWYgKCFyZXNvdXJjZSB8fCAhcmVzb3VyY2UtPmlzTG9hZGVkKCkpCiAgICAgICAgIHJl
dHVybiBhcmNoaXZlUmVzb3VyY2VGb3JVUkwodXJsKTsKIApAQCAtMTIwNiwxOCArMTE1NywxNiBA
QCBQYXNzUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gRG9jdW1lbnRMb2FkZXI6OnN1YnJlc291cmNl
KGNvbnN0IFVSTCYgdXJsKSBjb25zdAogICAgIHJldHVybiBBcmNoaXZlUmVzb3VyY2U6OmNyZWF0
ZShkYXRhLCB1cmwsIHJlc291cmNlLT5yZXNwb25zZSgpKTsKIH0KIAotVmVjdG9yPFJlZlB0cjxB
cmNoaXZlUmVzb3VyY2U+PiBEb2N1bWVudExvYWRlcjo6c3VicmVzb3VyY2VzKCkgY29uc3QKK1Zl
Y3RvcjxSZWY8QXJjaGl2ZVJlc291cmNlPj4gRG9jdW1lbnRMb2FkZXI6OnN1YnJlc291cmNlcygp
IGNvbnN0CiB7CiAgICAgaWYgKCFpc0NvbW1pdHRlZCgpKQogICAgICAgICByZXR1cm4geyB9Owog
Ci0gICAgVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+PiBzdWJyZXNvdXJjZXM7Ci0KLSAg
ICBmb3IgKGF1dG8mIGNhY2hlZFJlc291cmNlSGFuZGxlIDogbV9jYWNoZWRSZXNvdXJjZUxvYWRl
ci0+YWxsQ2FjaGVkUmVzb3VyY2VzKCkudmFsdWVzKCkpIHsKLSAgICAgICAgaWYgKFJlZlB0cjxB
cmNoaXZlUmVzb3VyY2U+IHN1YnJlc291cmNlID0gdGhpcy0+c3VicmVzb3VyY2UoVVJMKFBhcnNl
ZFVSTFN0cmluZywgY2FjaGVkUmVzb3VyY2VIYW5kbGUtPnVybCgpKSkpCi0gICAgICAgICAgICBz
dWJyZXNvdXJjZXMuYXBwZW5kKFdURk1vdmUoc3VicmVzb3VyY2UpKTsKKyAgICBWZWN0b3I8UmVm
PEFyY2hpdmVSZXNvdXJjZT4+IHN1YnJlc291cmNlczsKKyAgICBmb3IgKGF1dG8mIGhhbmRsZSA6
IG1fY2FjaGVkUmVzb3VyY2VMb2FkZXItPmFsbENhY2hlZFJlc291cmNlcygpLnZhbHVlcygpKSB7
CisgICAgICAgIGlmIChhdXRvIHN1YnJlc291cmNlID0gdGhpcy0+c3VicmVzb3VyY2UoeyBQYXJz
ZWRVUkxTdHJpbmcsIGhhbmRsZS0+dXJsKCkgfSkpCisgICAgICAgICAgICBzdWJyZXNvdXJjZXMu
YXBwZW5kKHN1YnJlc291cmNlLnJlbGVhc2VOb25OdWxsKCkpOwogICAgIH0KLQogICAgIHJldHVy
biBzdWJyZXNvdXJjZXM7CiB9CiAKQEAgLTEyMjUsOSArMTE3NCwxMSBAQCB2b2lkIERvY3VtZW50
TG9hZGVyOjpkZWxpdmVyU3Vic3RpdHV0ZVJlc291cmNlc0FmdGVyRGVsYXkoKQogewogICAgIGlm
IChtX3BlbmRpbmdTdWJzdGl0dXRlUmVzb3VyY2VzLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJu
OwotICAgIEFTU0VSVChtX2ZyYW1lICYmIG1fZnJhbWUtPnBhZ2UoKSk7CisgICAgQVNTRVJUKG1f
ZnJhbWUpOworICAgIEFTU0VSVChtX2ZyYW1lLT5wYWdlKCkpOwogICAgIGlmIChtX2ZyYW1lLT5w
YWdlKCktPmRlZmVyc0xvYWRpbmcoKSkKICAgICAgICAgcmV0dXJuOworCiAgICAgaWYgKCFtX3N1
YnN0aXR1dGVSZXNvdXJjZURlbGl2ZXJ5VGltZXIuaXNBY3RpdmUoKSkKICAgICAgICAgbV9zdWJz
dGl0dXRlUmVzb3VyY2VEZWxpdmVyeVRpbWVyLnN0YXJ0T25lU2hvdCgwKTsKIH0KQEAgLTEyMzYs
MTggKzExODcsMTUgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6c3Vic3RpdHV0ZVJlc291cmNlRGVs
aXZlcnlUaW1lckZpcmVkKCkKIHsKICAgICBpZiAobV9wZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNl
cy5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybjsKLSAgICBBU1NFUlQobV9mcmFtZSAmJiBtX2Zy
YW1lLT5wYWdlKCkpOworICAgIEFTU0VSVChtX2ZyYW1lKTsKKyAgICBBU1NFUlQobV9mcmFtZS0+
cGFnZSgpKTsKICAgICBpZiAobV9mcmFtZS0+cGFnZSgpLT5kZWZlcnNMb2FkaW5nKCkpCiAgICAg
ICAgIHJldHVybjsKIAotICAgIFN1YnN0aXR1dGVSZXNvdXJjZU1hcCBjb3B5OwotICAgIGNvcHku
c3dhcChtX3BlbmRpbmdTdWJzdGl0dXRlUmVzb3VyY2VzKTsKLQotICAgIGZvciAoYXV0byYgZW50
cnkgOiBjb3B5KSB7Ci0gICAgICAgIGF1dG8mIGxvYWRlciA9IGVudHJ5LmtleTsKLSAgICAgICAg
U3Vic3RpdHV0ZVJlc291cmNlKiByZXNvdXJjZSA9IGVudHJ5LnZhbHVlLmdldCgpOwotCi0gICAg
ICAgIGlmIChyZXNvdXJjZSkKKyAgICBhdXRvIHBlbmRpbmdTdWJzdGl0dXRlUmVzb3VyY2VzID0g
V1RGTW92ZShtX3BlbmRpbmdTdWJzdGl0dXRlUmVzb3VyY2VzKTsKKyAgICBmb3IgKGF1dG8mIHBl
bmRpbmdTdWJzdGl0dXRlUmVzb3VyY2UgOiBwZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlcykgewor
ICAgICAgICBhdXRvJiBsb2FkZXIgPSBwZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlLmtleTsKKyAg
ICAgICAgaWYgKGF1dG8mIHJlc291cmNlID0gcGVuZGluZ1N1YnN0aXR1dGVSZXNvdXJjZS52YWx1
ZSkKICAgICAgICAgICAgIHJlc291cmNlLT5kZWxpdmVyKCpsb2FkZXIpOwogICAgICAgICBlbHNl
IHsKICAgICAgICAgICAgIC8vIEEgbnVsbCByZXNvdXJjZSBtZWFucyB0aGF0IHdlIHNob3VsZCBm
YWlsIHRoZSBsb2FkLgpAQCAtMTI1OCwxMCArMTIwNiwxMiBAQCB2b2lkIERvY3VtZW50TG9hZGVy
OjpzdWJzdGl0dXRlUmVzb3VyY2VEZWxpdmVyeVRpbWVyRmlyZWQoKQogfQogCiAjaWZuZGVmIE5E
RUJVRworCiBib29sIERvY3VtZW50TG9hZGVyOjppc1N1YnN0aXR1dGVMb2FkUGVuZGluZyhSZXNv
dXJjZUxvYWRlciogbG9hZGVyKSBjb25zdAogewogICAgIHJldHVybiBtX3BlbmRpbmdTdWJzdGl0
dXRlUmVzb3VyY2VzLmNvbnRhaW5zKGxvYWRlcik7CiB9CisKICNlbmRpZgogCiB2b2lkIERvY3Vt
ZW50TG9hZGVyOjpjYW5jZWxQZW5kaW5nU3Vic3RpdHV0ZUxvYWQoUmVzb3VyY2VMb2FkZXIqIGxv
YWRlcikKQEAgLTEyNzQsOSArMTIyNCwxMCBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpjYW5jZWxQ
ZW5kaW5nU3Vic3RpdHV0ZUxvYWQoUmVzb3VyY2VMb2FkZXIqIGxvYWRlcikKIH0KIAogI2lmIEVO
QUJMRShXRUJfQVJDSElWRSkgfHwgRU5BQkxFKE1IVE1MKQorCiBib29sIERvY3VtZW50TG9hZGVy
OjpzY2hlZHVsZUFyY2hpdmVMb2FkKFJlc291cmNlTG9hZGVyJiBsb2FkZXIsIGNvbnN0IFJlc291
cmNlUmVxdWVzdCYgcmVxdWVzdCkKIHsKLSAgICBpZiAoQXJjaGl2ZVJlc291cmNlKiByZXNvdXJj
ZSA9IGFyY2hpdmVSZXNvdXJjZUZvclVSTChyZXF1ZXN0LnVybCgpKSkgeworICAgIGlmIChhdXRv
KiByZXNvdXJjZSA9IGFyY2hpdmVSZXNvdXJjZUZvclVSTChyZXF1ZXN0LnVybCgpKSkgewogICAg
ICAgICBzY2hlZHVsZVN1YnN0aXR1dGVSZXNvdXJjZUxvYWQobG9hZGVyLCAqcmVzb3VyY2UpOwog
ICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CkBAIC0xMjg0LDIxICsxMjM1LDE5IEBAIGJvb2wg
RG9jdW1lbnRMb2FkZXI6OnNjaGVkdWxlQXJjaGl2ZUxvYWQoUmVzb3VyY2VMb2FkZXImIGxvYWRl
ciwgY29uc3QgUmVzb3VyY2VSCiAgICAgaWYgKCFtX2FyY2hpdmUpCiAgICAgICAgIHJldHVybiBm
YWxzZTsKIAotICAgIHN3aXRjaCAobV9hcmNoaXZlLT50eXBlKCkpIHsKICNpZiBFTkFCTEUoV0VC
X0FSQ0hJVkUpCi0gICAgY2FzZSBBcmNoaXZlOjpXZWJBcmNoaXZlOgotICAgICAgICAvLyBXZWJB
cmNoaXZlRGVidWdNb2RlIG1lYW5zIHdlIGZhaWwgbG9hZHMgaW5zdGVhZCBvZiB0cnlpbmcgdG8g
ZmV0Y2ggdGhlbSBmcm9tIHRoZSBuZXR3b3JrIGlmIHRoZXkncmUgbm90IGluIHRoZSBhcmNoaXZl
LgotICAgICAgICByZXR1cm4gbV9mcmFtZS0+c2V0dGluZ3MoKS53ZWJBcmNoaXZlRGVidWdNb2Rl
RW5hYmxlZCgpICYmIEFyY2hpdmVGYWN0b3J5Ojppc0FyY2hpdmVNaW1lVHlwZShyZXNwb25zZU1J
TUVUeXBlKCkpOwotI2VuZGlmCi0jaWYgRU5BQkxFKE1IVE1MKQotICAgIGNhc2UgQXJjaGl2ZTo6
TUhUTUw6Ci0gICAgICAgIHJldHVybiB0cnVlOyAvLyBBbHdheXMgZmFpbCB0aGUgbG9hZCBmb3Ig
cmVzb3VyY2VzIG5vdCBpbmNsdWRlZCBpbiB0aGUgTUhUTUwuCisgICAgLy8gVGhlIGlkZWEgb2Yg
V2ViQXJjaGl2ZURlYnVnTW9kZSBpcyB0aGF0IHdlIHNob3VsZCBmYWlsIGluc3RlYWQgb2YgdHJ5
aW5nIHRvIGZldGNoIGZyb20gdGhlIG5ldHdvcmsuCisgICAgLy8gUmV0dXJuaW5nIHRydWUgZW5z
dXJlcyB0aGUgY2FsbGVyIHdpbGwgbm90IHRyeSB0byBmZXRjaCBmcm9tIHRoZSBuZXR3b3JrLgor
ICAgIGlmIChtX2ZyYW1lLT5zZXR0aW5ncygpLndlYkFyY2hpdmVEZWJ1Z01vZGVFbmFibGVkKCkg
JiYgcmVzcG9uc2VNSU1FVHlwZSgpID09ICJhcHBsaWNhdGlvbi94LXdlYmFyY2hpdmUiKQorICAg
ICAgICByZXR1cm4gdHJ1ZTsKICNlbmRpZgotICAgIGRlZmF1bHQ6Ci0gICAgICAgIHJldHVybiBm
YWxzZTsKLSAgICB9CisKKyAgICAvLyBJZiB3ZSB3YW50IHRvIGxvYWQgZnJvbSB0aGUgYXJjaGl2
ZSBvbmx5LCB0aGVuIHdlIHNob3VsZCBhbHdheXMgcmV0dXJuIHRydWUgc28gdGhhdCB0aGUgY2Fs
bGVyCisgICAgLy8gZG9lcyBub3QgdHJ5IHRvIGZldGNoIGZvcm0gdGhlIG5ldHdvcmsuCisgICAg
cmV0dXJuIG1fYXJjaGl2ZS0+c2hvdWxkTG9hZEZyb21BcmNoaXZlT25seSgpOwogfQotI2VuZGlm
IC8vIEVOQUJMRShXRUJfQVJDSElWRSkKKworI2VuZGlmCiAKIHZvaWQgRG9jdW1lbnRMb2FkZXI6
OnNjaGVkdWxlU3Vic3RpdHV0ZVJlc291cmNlTG9hZChSZXNvdXJjZUxvYWRlciYgbG9hZGVyLCBT
dWJzdGl0dXRlUmVzb3VyY2UmIHJlc291cmNlKQogewpAQCAtMTMwNiwxMCArMTI1NSwxMCBAQCB2
b2lkIERvY3VtZW50TG9hZGVyOjpzY2hlZHVsZVN1YnN0aXR1dGVSZXNvdXJjZUxvYWQoUmVzb3Vy
Y2VMb2FkZXImIGxvYWRlciwgU3VicwogICAgIGRlbGl2ZXJTdWJzdGl0dXRlUmVzb3VyY2VzQWZ0
ZXJEZWxheSgpOwogfQogCi12b2lkIERvY3VtZW50TG9hZGVyOjphZGRSZXNwb25zZShjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiByKQordm9pZCBEb2N1bWVudExvYWRlcjo6YWRkUmVzcG9uc2UoY29u
c3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgaWYgKCFtX3N0b3BSZWNvcmRp
bmdSZXNwb25zZXMpCi0gICAgICAgIG1fcmVzcG9uc2VzLmFwcGVuZChyKTsKKyAgICAgICAgbV9y
ZXNwb25zZXMuYXBwZW5kKHJlc3BvbnNlKTsKIH0KIAogdm9pZCBEb2N1bWVudExvYWRlcjo6c3Rv
cFJlY29yZGluZ1Jlc3BvbnNlcygpCkBAIC0xMzQ0LDIxICsxMjkzLDExIEBAIGJvb2wgRG9jdW1l
bnRMb2FkZXI6OnVybEZvckhpc3RvcnlSZWZsZWN0c0ZhaWx1cmUoKSBjb25zdAogICAgIHJldHVy
biBtX3N1YnN0aXR1dGVEYXRhLmlzVmFsaWQoKSB8fCBtX3Jlc3BvbnNlLmh0dHBTdGF0dXNDb2Rl
KCkgPj0gNDAwOwogfQogCi1jb25zdCBVUkwmIERvY3VtZW50TG9hZGVyOjpvcmlnaW5hbFVSTCgp
IGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fb3JpZ2luYWxSZXF1ZXN0Q29weS51cmwoKTsKLX0KLQot
Y29uc3QgVVJMJiBEb2N1bWVudExvYWRlcjo6cmVzcG9uc2VVUkwoKSBjb25zdAotewotICAgIHJl
dHVybiBtX3Jlc3BvbnNlLnVybCgpOwotfQotCiBVUkwgRG9jdW1lbnRMb2FkZXI6OmRvY3VtZW50
VVJMKCkgY29uc3QKIHsKICAgICBVUkwgdXJsID0gc3Vic3RpdHV0ZURhdGEoKS5yZXNwb25zZSgp
LnVybCgpOwogI2lmIEVOQUJMRShXRUJfQVJDSElWRSkKLSAgICBpZiAodXJsLmlzRW1wdHkoKSAm
JiBtX2FyY2hpdmUgJiYgbV9hcmNoaXZlLT50eXBlKCkgPT0gQXJjaGl2ZTo6V2ViQXJjaGl2ZSkK
KyAgICBpZiAodXJsLmlzRW1wdHkoKSAmJiBtX2FyY2hpdmUgJiYgbV9hcmNoaXZlLT5zaG91bGRV
c2VNYWluUmVzb3VyY2VVUkwoKSkKICAgICAgICAgdXJsID0gbV9hcmNoaXZlLT5tYWluUmVzb3Vy
Y2UoKS0+dXJsKCk7CiAjZW5kaWYKICAgICBpZiAodXJsLmlzRW1wdHkoKSkKQEAgLTEzNjgsMjgg
KzEzMDcsMTUgQEAgVVJMIERvY3VtZW50TG9hZGVyOjpkb2N1bWVudFVSTCgpIGNvbnN0CiAgICAg
cmV0dXJuIHVybDsKIH0KIAotY29uc3QgU3RyaW5nJiBEb2N1bWVudExvYWRlcjo6cmVzcG9uc2VN
SU1FVHlwZSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fcmVzcG9uc2UubWltZVR5cGUoKTsKLX0K
LQotY29uc3QgU3RyaW5nJiBEb2N1bWVudExvYWRlcjo6Y3VycmVudENvbnRlbnRUeXBlKCkgY29u
c3QKLXsKLSAgICByZXR1cm4gbV93cml0ZXIubWltZVR5cGUoKTsKLX0KLQogI2lmIFBMQVRGT1JN
KElPUykKKwogLy8gRklYTUU6IFRoaXMgbWV0aG9kIHNlZW1zIHRvIHZpb2xhdGUgdGhlIGVuY2Fw
c3VsYXRpb24gb2YgdGhpcyBjbGFzcy4KIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnNldFJlc3BvbnNl
TUlNRVR5cGUoY29uc3QgU3RyaW5nJiByZXNwb25zZU1pbWVUeXBlKQogewogICAgIG1fcmVzcG9u
c2Uuc2V0TWltZVR5cGUocmVzcG9uc2VNaW1lVHlwZSk7CiB9Ci0jZW5kaWYKIAotY29uc3QgVVJM
JiBEb2N1bWVudExvYWRlcjo6dW5yZWFjaGFibGVVUkwoKSBjb25zdAotewotICAgIHJldHVybiBt
X3N1YnN0aXR1dGVEYXRhLmZhaWxpbmdVUkwoKTsKLX0KKyNlbmRpZgogCiB2b2lkIERvY3VtZW50
TG9hZGVyOjpzZXREZWZlcnNMb2FkaW5nKGJvb2wgZGVmZXJzKQogewpAQCAtMTY4Miw3ICsxNjA4
LDcgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6Z2V0SWNvbkxvYWREZWNpc2lvbkZvckljb25VUkwo
Y29uc3QgU3RyaW5nJiB1cmxTdHJpbmcpCiAgICAgaWYgKG1faWNvbkxvYWREZWNpc2lvbkNhbGxi
YWNrKQogICAgICAgICBtX2ljb25Mb2FkRGVjaXNpb25DYWxsYmFjay0+aW52YWxpZGF0ZSgpOwog
ICAgIG1faWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrID0gSWNvbkxvYWREZWNpc2lvbkNhbGxiYWNr
OjpjcmVhdGUodGhpcywgaWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrKTsKLSAgICBpY29uRGF0YWJh
c2UoKS5sb2FkRGVjaXNpb25Gb3JJY29uVVJMKHVybFN0cmluZywgbV9pY29uTG9hZERlY2lzaW9u
Q2FsbGJhY2spOworICAgIGljb25EYXRhYmFzZSgpLmxvYWREZWNpc2lvbkZvckljb25VUkwodXJs
U3RyaW5nLCAqbV9pY29uTG9hZERlY2lzaW9uQ2FsbGJhY2spOwogfQogCiB2b2lkIERvY3VtZW50
TG9hZGVyOjpjb250aW51ZUljb25Mb2FkV2l0aERlY2lzaW9uKEljb25Mb2FkRGVjaXNpb24gZGVj
aXNpb24pCkBAIC0xNzAzLDcgKzE2MjksNyBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpnZXRJY29u
RGF0YUZvckljb25VUkwoY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcpCiAgICAgaWYgKG1faWNvbkRh
dGFDYWxsYmFjaykKICAgICAgICAgbV9pY29uRGF0YUNhbGxiYWNrLT5pbnZhbGlkYXRlKCk7CiAg
ICAgbV9pY29uRGF0YUNhbGxiYWNrID0gSWNvbkRhdGFDYWxsYmFjazo6Y3JlYXRlKHRoaXMsIGlj
b25EYXRhQ2FsbGJhY2spOwotICAgIGljb25EYXRhYmFzZSgpLmljb25EYXRhRm9ySWNvblVSTCh1
cmxTdHJpbmcsIG1faWNvbkRhdGFDYWxsYmFjayk7CisgICAgaWNvbkRhdGFiYXNlKCkuaWNvbkRh
dGFGb3JJY29uVVJMKHVybFN0cmluZywgKm1faWNvbkRhdGFDYWxsYmFjayk7CiB9CiAKIHZvaWQg
RG9jdW1lbnRMb2FkZXI6OnN0YXJ0SWNvbkxvYWRpbmcoKQpAQCAtMTc0OSw3ICsxNjc1LDcgQEAg
dm9pZCBEb2N1bWVudExvYWRlcjo6ZmluaXNoZWRMb2FkaW5nSWNvbihJY29uTG9hZGVyJiBsb2Fk
ZXIsIFNoYXJlZEJ1ZmZlciogYnVmZmUKIHZvaWQgRG9jdW1lbnRMb2FkZXI6OmRpc3BhdGNoT25s
b2FkRXZlbnRzKCkKIHsKICAgICBtX3dhc09ubG9hZERpc3BhdGNoZWQgPSB0cnVlOwotICAgIGFw
cGxpY2F0aW9uQ2FjaGVIb3N0KCktPnN0b3BEZWZlcnJpbmdFdmVudHMoKTsKKyAgICBtX2FwcGxp
Y2F0aW9uQ2FjaGVIb3N0LT5zdG9wRGVmZXJyaW5nRXZlbnRzKCk7CiB9CiAKIHZvaWQgRG9jdW1l
bnRMb2FkZXI6OnNldFRyaWdnZXJpbmdBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgYWN0
aW9uKQpAQCAtMTc4OSwyMyArMTcxNSwxOCBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjphZGRQZW5k
aW5nQ29udGVudEV4dGVuc2lvbkRpc3BsYXlOb25lU2VsZWN0b3IoY29uc3QgU3RyaW5nJgogfQog
I2VuZGlmCiAKLSNpZiBFTkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCi1Db250ZW50RmlsdGVyKiBE
b2N1bWVudExvYWRlcjo6Y29udGVudEZpbHRlcigpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fY29u
dGVudEZpbHRlci5nZXQoKTsKLX0KLSNlbmRpZgotCiBib29sIERvY3VtZW50TG9hZGVyOjppc0Fs
d2F5c09uTG9nZ2luZ0FsbG93ZWQoKSBjb25zdAogewotICAgIHJldHVybiBtX2ZyYW1lID8gbV9m
cmFtZS0+aXNBbHdheXNPbkxvZ2dpbmdBbGxvd2VkKCkgOiB0cnVlOworICAgIHJldHVybiAhbV9m
cmFtZSB8fCBtX2ZyYW1lLT5pc0Fsd2F5c09uTG9nZ2luZ0FsbG93ZWQoKTsKIH0KIAogI2lmIFVT
RShRVUlDS19MT09LKQorCiB2b2lkIERvY3VtZW50TG9hZGVyOjpzZXRRdWlja0xvb2tIYW5kbGUo
c3RkOjp1bmlxdWVfcHRyPFF1aWNrTG9va0hhbmRsZT4gcXVpY2tMb29rSGFuZGxlKQogewogICAg
IG1fcXVpY2tMb29rSGFuZGxlID0gV1RGTW92ZShxdWlja0xvb2tIYW5kbGUpOwogfQorCiAjZW5k
aWYKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL0RvY3VtZW50TG9hZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRM
b2FkZXIuaAppbmRleCBkNzBiMzliODZmODJjMDcyM2QzMmZhNmU4MTU2NTkyNDg3ZTY2MDkyLi44
N2U0ZWI3NjNiYWVhMWRkNjU4NTM0ZDgyZjk0NzlhZjBjMjg1NWVmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvRG9jdW1lbnRMb2FkZXIuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQg
KEMpIDIwMDYtMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmln
aHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5
cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKQEAgLTc2LDggKzc2LDcgQEAgY2xhc3MgU2hhcmVkQnVmZmVyOwogY2xhc3MgU3Vi
cmVzb3VyY2VMb2FkZXI7CiBjbGFzcyBTdWJzdGl0dXRlUmVzb3VyY2U7CiAKLXR5cGVkZWYgSGFz
aE1hcDx1bnNpZ25lZCBsb25nLCBSZWZQdHI8UmVzb3VyY2VMb2FkZXI+PiBSZXNvdXJjZUxvYWRl
ck1hcDsKLXR5cGVkZWYgVmVjdG9yPFJlc291cmNlUmVzcG9uc2U+IFJlc3BvbnNlVmVjdG9yOwor
dXNpbmcgUmVzb3VyY2VMb2FkZXJNYXAgPSBIYXNoTWFwPHVuc2lnbmVkIGxvbmcsIFJlZlB0cjxS
ZXNvdXJjZUxvYWRlcj4+OwogCiBjbGFzcyBEb2N1bWVudExvYWRlciA6IHB1YmxpYyBSZWZDb3Vu
dGVkPERvY3VtZW50TG9hZGVyPiwgcHJpdmF0ZSBDYWNoZWRSYXdSZXNvdXJjZUNsaWVudCB7CiAg
ICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CkBAIC0xNTAsMTQgKzE0OSwxNSBAQCBwdWJsaWM6
CiAjZW5kaWYKIAogI2lmIEVOQUJMRShXRUJfQVJDSElWRSkgfHwgRU5BQkxFKE1IVE1MKQotICAg
IHZvaWQgc2V0QXJjaGl2ZShQYXNzUmVmUHRyPEFyY2hpdmU+KTsKLSAgICBXRUJDT1JFX0VYUE9S
VCB2b2lkIGFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoQXJjaGl2ZSopOworICAgIHZvaWQgc2V0QXJj
aGl2ZShSZWY8QXJjaGl2ZT4mJik7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBhZGRBbGxBcmNo
aXZlUmVzb3VyY2VzKEFyY2hpdmUmKTsKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGFkZEFyY2hp
dmVSZXNvdXJjZShSZWY8QXJjaGl2ZVJlc291cmNlPiYmKTsKLSAgICBQYXNzUmVmUHRyPEFyY2hp
dmU+IHBvcEFyY2hpdmVGb3JTdWJmcmFtZShjb25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgY29uc3Qg
VVJMJik7CisgICAgUmVmUHRyPEFyY2hpdmU+IHBvcEFyY2hpdmVGb3JTdWJmcmFtZShjb25zdCBT
dHJpbmcmIGZyYW1lTmFtZSwgY29uc3QgVVJMJik7CiAgICAgV0VCQ09SRV9FWFBPUlQgU2hhcmVk
QnVmZmVyKiBwYXJzZWRBcmNoaXZlRGF0YSgpIGNvbnN0OwogCiAgICAgV0VCQ09SRV9FWFBPUlQg
Ym9vbCBzY2hlZHVsZUFyY2hpdmVMb2FkKFJlc291cmNlTG9hZGVyJiwgY29uc3QgUmVzb3VyY2VS
ZXF1ZXN0Jik7CiAjZW5kaWYKKwogICAgIHZvaWQgc2NoZWR1bGVTdWJzdGl0dXRlUmVzb3VyY2VM
b2FkKFJlc291cmNlTG9hZGVyJiwgU3Vic3RpdHV0ZVJlc291cmNlJik7CiAKICAgICAvLyBSZXR1
cm4gdGhlIEFyY2hpdmVSZXNvdXJjZSBmb3IgdGhlIFVSTCBvbmx5IHdoZW4gbG9hZGluZyBhbiBB
cmNoaXZlCkBAIC0xNjYsOSArMTY2LDEwIEBAIHB1YmxpYzoKICAgICBXRUJDT1JFX0VYUE9SVCBS
ZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBtYWluUmVzb3VyY2UoKSBjb25zdDsKIAogICAgIC8vIFJl
dHVybiBhbiBBcmNoaXZlUmVzb3VyY2UgZm9yIHRoZSBVUkwsIGVpdGhlciBjcmVhdGluZyBmcm9t
IGxpdmUgZGF0YSBvcgotICAgIC8vIHB1bGxpbmcgZnJvbSB0aGUgQXJjaGl2ZVJlc291cmNlQ29s
bGVjdGlvbgotICAgIFdFQkNPUkVfRVhQT1JUIFBhc3NSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBz
dWJyZXNvdXJjZShjb25zdCBVUkwmKSBjb25zdDsKLSAgICBXRUJDT1JFX0VYUE9SVCBWZWN0b3I8
UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+IHN1YnJlc291cmNlcygpIGNvbnN0OworICAgIC8vIHB1
bGxpbmcgZnJvbSB0aGUgQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi4KKyAgICBXRUJDT1JFX0VY
UE9SVCBSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBzdWJyZXNvdXJjZShjb25zdCBVUkwmKSBjb25z
dDsKKworICAgIFdFQkNPUkVfRVhQT1JUIFZlY3RvcjxSZWY8QXJjaGl2ZVJlc291cmNlPj4gc3Vi
cmVzb3VyY2VzKCkgY29uc3Q7CiAKICNpZm5kZWYgTkRFQlVHCiAgICAgYm9vbCBpc1N1YnN0aXR1
dGVMb2FkUGVuZGluZyhSZXNvdXJjZUxvYWRlciopIGNvbnN0OwpAQCAtMTc2LDcgKzE3Nyw3IEBA
IHB1YmxpYzoKICAgICB2b2lkIGNhbmNlbFBlbmRpbmdTdWJzdGl0dXRlTG9hZChSZXNvdXJjZUxv
YWRlciopOyAgIAogICAgIAogICAgIHZvaWQgYWRkUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYpOwotICAgIGNvbnN0IFJlc3BvbnNlVmVjdG9yJiByZXNwb25zZXMoKSBjb25zdCB7IHJl
dHVybiBtX3Jlc3BvbnNlczsgfQorICAgIGNvbnN0IFZlY3RvcjxSZXNvdXJjZVJlc3BvbnNlPiYg
cmVzcG9uc2VzKCkgY29uc3QgeyByZXR1cm4gbV9yZXNwb25zZXM7IH0KIAogICAgIGNvbnN0IE5h
dmlnYXRpb25BY3Rpb24mIHRyaWdnZXJpbmdBY3Rpb24oKSBjb25zdCB7IHJldHVybiBtX3RyaWdn
ZXJpbmdBY3Rpb247IH0KICAgICB2b2lkIHNldFRyaWdnZXJpbmdBY3Rpb24oY29uc3QgTmF2aWdh
dGlvbkFjdGlvbiYpOwpAQCAtMjQwLDE3ICsyNDEsNyBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHNl
dERlZmVyTWFpblJlc291cmNlRGF0YUxvYWQoYm9vbCBkZWZlcikgeyBtX2RlZmVyTWFpblJlc291
cmNlRGF0YUxvYWQgPSBkZWZlcjsgfQogICAgIAotICAgIHZvaWQgZGlkVGVsbENsaWVudEFib3V0
TG9hZChjb25zdCBTdHJpbmcmIHVybCkKLSAgICB7IAotI2lmICFQTEFURk9STShDT0NPQSkKLSAg
ICAgICAgLy8gRG9uJ3QgaW5jbHVkZSBkYXRhIHVybHMgaGVyZSwgYXMgaWYgYSBsb3Qgb2YgZGF0
YSBpcyBsb2FkZWQKLSAgICAgICAgLy8gdGhhdCB3YXksIHdlIGhvbGQgb24gdG8gdGhlIChsYXJn
ZSkgdXJsIHN0cmluZyBmb3IgdG9vIGxvbmcuCi0gICAgICAgIGlmIChwcm90b2NvbElzKHVybCwg
ImRhdGEiKSkKLSAgICAgICAgICAgIHJldHVybjsKLSNlbmRpZgotICAgICAgICBpZiAoIXVybC5p
c0VtcHR5KCkpCi0gICAgICAgICAgICBtX3Jlc291cmNlc0NsaWVudEtub3dzQWJvdXQuYWRkKHVy
bCk7Ci0gICAgfQorICAgIHZvaWQgZGlkVGVsbENsaWVudEFib3V0TG9hZChjb25zdCBTdHJpbmcm
IHVybCk7CiAgICAgYm9vbCBoYXZlVG9sZENsaWVudEFib3V0TG9hZChjb25zdCBTdHJpbmcmIHVy
bCkgeyByZXR1cm4gbV9yZXNvdXJjZXNDbGllbnRLbm93c0Fib3V0LmNvbnRhaW5zKHVybCk7IH0K
ICAgICB2b2lkIHJlY29yZE1lbW9yeUNhY2hlTG9hZEZvckZ1dHVyZUNsaWVudE5vdGlmaWNhdGlv
bihjb25zdCBSZXNvdXJjZVJlcXVlc3QmKTsKICAgICB2b2lkIHRha2VNZW1vcnlDYWNoZUxvYWRz
Rm9yQ2xpZW50Tm90aWZpY2F0aW9uKFZlY3RvcjxSZXNvdXJjZVJlcXVlc3Q+JiBsb2Fkcyk7CkBA
IC0yNTgsMTEgKzI0OSwxMSBAQCBwdWJsaWM6CiAgICAgTG9hZFRpbWluZyYgdGltaW5nKCkgeyBy
ZXR1cm4gbV9sb2FkVGltaW5nOyB9CiAgICAgdm9pZCByZXNldFRpbWluZygpIHsgbV9sb2FkVGlt
aW5nID0gTG9hZFRpbWluZygpOyB9CiAKLSAgICAvLyBUaGUgV2ViS2l0IGxheWVyIGNhbGxzIHRo
aXMgZnVuY3Rpb24gd2hlbiBpdCdzIHJlYWR5IGZvciB0aGUgZGF0YSB0bwotICAgIC8vIGFjdHVh
bGx5IGJlIGFkZGVkIHRvIHRoZSBkb2N1bWVudC4KKyAgICAvLyBUaGUgV2ViS2l0IGxheWVyIGNh
bGxzIHRoaXMgZnVuY3Rpb24gd2hlbiBpdCdzIHJlYWR5IGZvciB0aGUgZGF0YSB0byBhY3R1YWxs
eSBiZSBhZGRlZCB0byB0aGUgZG9jdW1lbnQuCiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBjb21t
aXREYXRhKGNvbnN0IGNoYXIqIGJ5dGVzLCBzaXplX3QgbGVuZ3RoKTsKIAotICAgIEFwcGxpY2F0
aW9uQ2FjaGVIb3N0KiBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpIGNvbnN0IHsgcmV0dXJuIG1fYXBw
bGljYXRpb25DYWNoZUhvc3QuZ2V0KCk7IH0KKyAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdCYgYXBw
bGljYXRpb25DYWNoZUhvc3QoKSBjb25zdDsKKyAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdCogYXBw
bGljYXRpb25DYWNoZUhvc3RVbmxlc3NCZWluZ0Rlc3Ryb3llZCgpIGNvbnN0OwogCiAgICAgdm9p
ZCBjaGVja0xvYWRDb21wbGV0ZSgpOwogCkBAIC0yOTcsNyArMjg4LDcgQEAgcHJvdGVjdGVkOgog
CiAgICAgV0VCQ09SRV9FWFBPUlQgdmlydHVhbCB2b2lkIGF0dGFjaFRvRnJhbWUoKTsKIAotICAg
IGJvb2wgbV9kZWZlck1haW5SZXNvdXJjZURhdGFMb2FkOworICAgIGJvb2wgbV9kZWZlck1haW5S
ZXNvdXJjZURhdGFMb2FkIHsgdHJ1ZSB9OwogCiBwcml2YXRlOgogICAgIERvY3VtZW50KiBkb2N1
bWVudCgpIGNvbnN0OwpAQCAtMzU4LDcgKzM0OSw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBjYW5j
ZWxQb2xpY3lDaGVja0lmTmVlZGVkKCk7CiAgICAgdm9pZCBiZWNvbWVNYWluUmVzb3VyY2VDbGll
bnQoKTsKIAotICAgIEZyYW1lKiBtX2ZyYW1lOworICAgIEZyYW1lKiBtX2ZyYW1lIHsgbnVsbHB0
ciB9OwogICAgIFJlZjxDYWNoZWRSZXNvdXJjZUxvYWRlcj4gbV9jYWNoZWRSZXNvdXJjZUxvYWRl
cjsKIAogICAgIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFJhd1Jlc291cmNlPiBtX21haW5S
ZXNvdXJjZTsKQEAgLTM5MCwxNSArMzgxLDE1IEBAIHByaXZhdGU6CiAgICAgUmVzb3VyY2VFcnJv
ciBtX21haW5Eb2N1bWVudEVycm9yOyAgICAKIAogICAgIGJvb2wgbV9vcmlnaW5hbFN1YnN0aXR1
dGVEYXRhV2FzVmFsaWQ7Ci0gICAgYm9vbCBtX2NvbW1pdHRlZDsKLSAgICBib29sIG1faXNTdG9w
cGluZzsKLSAgICBib29sIG1fZ290Rmlyc3RCeXRlOwotICAgIGJvb2wgbV9pc0NsaWVudFJlZGly
ZWN0OwotICAgIGJvb2wgbV9pc0xvYWRpbmdNdWx0aXBhcnRDb250ZW50OworICAgIGJvb2wgbV9j
b21taXR0ZWQgeyBmYWxzZSB9OworICAgIGJvb2wgbV9pc1N0b3BwaW5nIHsgZmFsc2UgfTsKKyAg
ICBib29sIG1fZ290Rmlyc3RCeXRlIHsgZmFsc2UgfTsKKyAgICBib29sIG1faXNDbGllbnRSZWRp
cmVjdCB7IGZhbHNlIH07CisgICAgYm9vbCBtX2lzTG9hZGluZ011bHRpcGFydENvbnRlbnQgeyBm
YWxzZSB9OwogCiAgICAgLy8gRklYTUU6IERvY3VtZW50OjptX3Byb2Nlc3NpbmdMb2FkRXZlbnQg
YW5kIERvY3VtZW50TG9hZGVyOjptX3dhc09ubG9hZERpc3BhdGNoZWQgYXJlIHJvdWdobHkgdGhl
IHNhbWUKICAgICAvLyBhbmQgc2hvdWxkIGJlIG1lcmdlZC4KLSAgICBib29sIG1fd2FzT25sb2Fk
RGlzcGF0Y2hlZDsKKyAgICBib29sIG1fd2FzT25sb2FkRGlzcGF0Y2hlZCB7IGZhbHNlIH07CiAK
ICAgICBTdHJpbmdXaXRoRGlyZWN0aW9uIG1fcGFnZVRpdGxlOwogCkBAIC00MTUsOCArNDA2LDgg
QEAgcHJpdmF0ZToKICAgICAvLyBXZSByZXRhaW4gYWxsIHRoZSByZWNlaXZlZCByZXNwb25zZXMg
c28gd2UgY2FuIHBsYXkgYmFjayB0aGUKICAgICAvLyBXZWJSZXNvdXJjZUxvYWREZWxlZ2F0ZSBt
ZXNzYWdlcyBpZiB0aGUgaXRlbSBpcyBsb2FkZWQgZnJvbSB0aGUKICAgICAvLyBwYWdlIGNhY2hl
LgotICAgIFJlc3BvbnNlVmVjdG9yIG1fcmVzcG9uc2VzOwotICAgIGJvb2wgbV9zdG9wUmVjb3Jk
aW5nUmVzcG9uc2VzOworICAgIFZlY3RvcjxSZXNvdXJjZVJlc3BvbnNlPiBtX3Jlc3BvbnNlczsK
KyAgICBib29sIG1fc3RvcFJlY29yZGluZ1Jlc3BvbnNlcyB7IGZhbHNlIH07CiAgICAgCiAgICAg
dHlwZWRlZiBIYXNoTWFwPFJlZlB0cjxSZXNvdXJjZUxvYWRlcj4sIFJlZlB0cjxTdWJzdGl0dXRl
UmVzb3VyY2U+PiBTdWJzdGl0dXRlUmVzb3VyY2VNYXA7CiAgICAgU3Vic3RpdHV0ZVJlc291cmNl
TWFwIG1fcGVuZGluZ1N1YnN0aXR1dGVSZXNvdXJjZXM7CkBAIC00MzIsMTMgKzQyMywxMyBAQCBw
cml2YXRlOgogICAgIFZlY3RvcjxSZXNvdXJjZVJlcXVlc3Q+IG1fcmVzb3VyY2VzTG9hZGVkRnJv
bU1lbW9yeUNhY2hlRm9yQ2xpZW50Tm90aWZpY2F0aW9uOwogICAgIAogICAgIFN0cmluZyBtX2Ns
aWVudFJlZGlyZWN0U291cmNlRm9ySGlzdG9yeTsKLSAgICBib29sIG1fZGlkQ3JlYXRlR2xvYmFs
SGlzdG9yeUVudHJ5OworICAgIGJvb2wgbV9kaWRDcmVhdGVHbG9iYWxIaXN0b3J5RW50cnkgeyBm
YWxzZSB9OwogCi0gICAgYm9vbCBtX2xvYWRpbmdNYWluUmVzb3VyY2U7CisgICAgYm9vbCBtX2xv
YWRpbmdNYWluUmVzb3VyY2UgeyBmYWxzZSB9OwogICAgIExvYWRUaW1pbmcgbV9sb2FkVGltaW5n
OwogCi0gICAgZG91YmxlIG1fdGltZU9mTGFzdERhdGFSZWNlaXZlZDsKLSAgICB1bnNpZ25lZCBs
b25nIG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXI7CisgICAgZG91Ymxl
IG1fdGltZU9mTGFzdERhdGFSZWNlaXZlZCB7IDAgfTsKKyAgICB1bnNpZ25lZCBsb25nIG1faWRl
bnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgeyAwIH07CiAKICAgICBEb2N1bWVu
dExvYWRlclRpbWVyIG1fZGF0YUxvYWRUaW1lcjsKICAgICBib29sIG1fd2FpdGluZ0ZvckNvbnRl
bnRQb2xpY3kgeyBmYWxzZSB9OwpAQCAtNDUyLDcgKzQ0Myw3IEBAIHByaXZhdGU6CiAgICAgSGFz
aE1hcDx1aW50NjRfdCwgTGlua0ljb24+IG1faWNvbnNQZW5kaW5nTG9hZERlY2lzaW9uOwogICAg
IEhhc2hNYXA8c3RkOjp1bmlxdWVfcHRyPEljb25Mb2FkZXI+LCB1aW50NjRfdD4gbV9pY29uTG9h
ZGVyczsKIAotICAgIGJvb2wgbV9zdWJyZXNvdXJjZUxvYWRlcnNBcmVQYWdlQ2FjaGVBY2NlcHRh
YmxlOworICAgIGJvb2wgbV9zdWJyZXNvdXJjZUxvYWRlcnNBcmVQYWdlQ2FjaGVBY2NlcHRhYmxl
IHsgZmFsc2UgfTsKICAgICBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5IG1fc2hvdWxkT3Bl
bkV4dGVybmFsVVJMc1BvbGljeSB7IFNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3k6OlNob3Vs
ZE5vdEFsbG93IH07CiAKICAgICBzdGQ6OnVuaXF1ZV9wdHI8QXBwbGljYXRpb25DYWNoZUhvc3Q+
IG1fYXBwbGljYXRpb25DYWNoZUhvc3Q7CkBAIC00ODcsNCArNDc4LDg3IEBAIGlubGluZSB2b2lk
IERvY3VtZW50TG9hZGVyOjp0YWtlTWVtb3J5Q2FjaGVMb2Fkc0ZvckNsaWVudE5vdGlmaWNhdGlv
bihWZWN0b3I8UmVzCiAgICAgbV9yZXNvdXJjZXNMb2FkZWRGcm9tTWVtb3J5Q2FjaGVGb3JDbGll
bnROb3RpZmljYXRpb24uY2xlYXIoKTsKIH0KIAoraW5saW5lIGNvbnN0IFJlc291cmNlUmVxdWVz
dCYgRG9jdW1lbnRMb2FkZXI6Om9yaWdpbmFsUmVxdWVzdCgpIGNvbnN0Cit7CisgICAgcmV0dXJu
IG1fb3JpZ2luYWxSZXF1ZXN0OworfQorCitpbmxpbmUgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiBE
b2N1bWVudExvYWRlcjo6b3JpZ2luYWxSZXF1ZXN0Q29weSgpIGNvbnN0Cit7CisgICAgcmV0dXJu
IG1fb3JpZ2luYWxSZXF1ZXN0Q29weTsKK30KKworaW5saW5lIGNvbnN0IFJlc291cmNlUmVxdWVz
dCYgRG9jdW1lbnRMb2FkZXI6OnJlcXVlc3QoKSBjb25zdAoreworICAgIHJldHVybiBtX3JlcXVl
c3Q7Cit9CisKK2lubGluZSBSZXNvdXJjZVJlcXVlc3QmIERvY3VtZW50TG9hZGVyOjpyZXF1ZXN0
KCkKK3sKKyAgICByZXR1cm4gbV9yZXF1ZXN0OworfQorCitpbmxpbmUgY29uc3QgVVJMJiBEb2N1
bWVudExvYWRlcjo6dXJsKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9yZXF1ZXN0LnVybCgpOwor
fQorCitpbmxpbmUgY29uc3QgVVJMJiBEb2N1bWVudExvYWRlcjo6b3JpZ2luYWxVUkwoKSBjb25z
dAoreworICAgIHJldHVybiBtX29yaWdpbmFsUmVxdWVzdENvcHkudXJsKCk7Cit9CisKK2lubGlu
ZSBjb25zdCBVUkwmIERvY3VtZW50TG9hZGVyOjpyZXNwb25zZVVSTCgpIGNvbnN0Cit7CisgICAg
cmV0dXJuIG1fcmVzcG9uc2UudXJsKCk7Cit9CisKK2lubGluZSBjb25zdCBTdHJpbmcmIERvY3Vt
ZW50TG9hZGVyOjpyZXNwb25zZU1JTUVUeXBlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9yZXNw
b25zZS5taW1lVHlwZSgpOworfQorCitpbmxpbmUgY29uc3QgU3RyaW5nJiBEb2N1bWVudExvYWRl
cjo6Y3VycmVudENvbnRlbnRUeXBlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV93cml0ZXIubWlt
ZVR5cGUoKTsKK30KKworaW5saW5lIGNvbnN0IFVSTCYgRG9jdW1lbnRMb2FkZXI6OnVucmVhY2hh
YmxlVVJMKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9zdWJzdGl0dXRlRGF0YS5mYWlsaW5nVVJM
KCk7Cit9CisKK2lubGluZSBBcHBsaWNhdGlvbkNhY2hlSG9zdCYgRG9jdW1lbnRMb2FkZXI6OmFw
cGxpY2F0aW9uQ2FjaGVIb3N0KCkgY29uc3QKK3sKKyAgICAvLyBGb3IgYSBzaG9ydCB0aW1lIHdo
aWxlIHRoZSBkb2N1bWVudCBsb2FkZXIgaXMgYmVpbmcgZGVzdHJveWVkLCBtX2FwcGxpY2F0aW9u
Q2FjaGVIb3N0IGlzIG51bGwuCisgICAgLy8gSXQncyBub3QgYWNjZXB0YWJsZSB0byBjYWxsIHRo
aXMgZnVuY3Rpb24gZHVyaW5nIHRoYXQgdGltZS4KKyAgICBBU1NFUlQobV9hcHBsaWNhdGlvbkNh
Y2hlSG9zdCk7CisgICAgcmV0dXJuICptX2FwcGxpY2F0aW9uQ2FjaGVIb3N0OworfQorCitpbmxp
bmUgQXBwbGljYXRpb25DYWNoZUhvc3QqIERvY3VtZW50TG9hZGVyOjphcHBsaWNhdGlvbkNhY2hl
SG9zdFVubGVzc0JlaW5nRGVzdHJveWVkKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9hcHBsaWNh
dGlvbkNhY2hlSG9zdC5nZXQoKTsKK30KKworI2lmIEVOQUJMRShDT05URU5UX0ZJTFRFUklORykK
KworaW5saW5lIENvbnRlbnRGaWx0ZXIqIERvY3VtZW50TG9hZGVyOjpjb250ZW50RmlsdGVyKCkg
Y29uc3QKK3sKKyAgICByZXR1cm4gbV9jb250ZW50RmlsdGVyLmdldCgpOworfQorCisjZW5kaWYK
KworaW5saW5lIHZvaWQgRG9jdW1lbnRMb2FkZXI6OmRpZFRlbGxDbGllbnRBYm91dExvYWQoY29u
c3QgU3RyaW5nJiB1cmwpCit7CisjaWYgIVBMQVRGT1JNKENPQ09BKQorICAgIC8vIERvbid0IGlu
Y2x1ZGUgZGF0YSBVUkxzIGhlcmUsIGFzIGlmIGEgbG90IG9mIGRhdGEgaXMgbG9hZGVkIHRoYXQg
d2F5LCB3ZSBob2xkIG9uIHRvIHRoZSAobGFyZ2UpIFVSTCBzdHJpbmcgZm9yIHRvbyBsb25nLgor
ICAgIGlmIChwcm90b2NvbElzKHVybCwgImRhdGEiKSkKKyAgICAgICAgcmV0dXJuOworI2VuZGlm
CisgICAgaWYgKCF1cmwuaXNFbXB0eSgpKQorICAgICAgICBtX3Jlc291cmNlc0NsaWVudEtub3dz
QWJvdXQuYWRkKHVybCk7Cit9CisKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9FbXB0eUNsaWVudHMuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5j
cHAKaW5kZXggZTBmNmU1YjNlMzRhOGExZThkMzE0OWMwNDJlMWRhMGEzNzNkNGRhOS4uZWVmYzRh
YTgzODMxMDQ0NmU5MjFkNGYxNzI5NTgyZTgyNGM4YTVmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0VtcHR5Q2xpZW50cy5jcHAKQEAgLTQ2LDYgKzQ2LDcgQEAKICNpbmNsdWRlICJIVE1MRm9ybUVs
ZW1lbnQuaCIKICNpbmNsdWRlICJJblByb2Nlc3NJREJTZXJ2ZXIuaCIKICNpbmNsdWRlICJJbnNw
ZWN0b3JDbGllbnQuaCIKKyNpbmNsdWRlICJOZXR3b3JrU3RvcmFnZVNlc3Npb24uaCIKICNpbmNs
dWRlICJQYWdlLmgiCiAjaW5jbHVkZSAiUGFnZUNvbmZpZ3VyYXRpb24uaCIKICNpbmNsdWRlICJQ
YXltZW50Q29vcmRpbmF0b3JDbGllbnQuaCIKQEAgLTE3MSw4ICsxNzIsOCBAQCBwcml2YXRlOgog
ICAgIHZvaWQgcmVxdWVzdENhbmRpZGF0ZXNGb3JTZWxlY3Rpb24oY29uc3QgVmlzaWJsZVNlbGVj
dGlvbiYpIGZpbmFsIHsgfQogICAgIHZvaWQgaGFuZGxlQWNjZXB0ZWRDYW5kaWRhdGVXaXRoU29m
dFNwYWNlcyhUZXh0Q2hlY2tpbmdSZXN1bHQpIGZpbmFsIHsgfQogCi0gICAgdm9pZCByZWdpc3Rl
clVuZG9TdGVwKFBhc3NSZWZQdHI8VW5kb1N0ZXA+KSBmaW5hbDsKLSAgICB2b2lkIHJlZ2lzdGVy
UmVkb1N0ZXAoUGFzc1JlZlB0cjxVbmRvU3RlcD4pIGZpbmFsOworICAgIHZvaWQgcmVnaXN0ZXJV
bmRvU3RlcChVbmRvU3RlcCYpIGZpbmFsOworICAgIHZvaWQgcmVnaXN0ZXJSZWRvU3RlcChVbmRv
U3RlcCYpIGZpbmFsOwogICAgIHZvaWQgY2xlYXJVbmRvUmVkb09wZXJhdGlvbnMoKSBmaW5hbCB7
IH0KIAogICAgIGJvb2wgY2FuQ29weUN1dChGcmFtZSosIGJvb2wgZGVmYXVsdFZhbHVlKSBjb25z
dCBmaW5hbCB7IHJldHVybiBkZWZhdWx0VmFsdWU7IH0KQEAgLTMzMSwxNCArMzMyLDE0IEBAIGNs
YXNzIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQgZmluYWwgOiBwdWJsaWMgRnJhbWVMb2FkZXJDbGll
bnQgewogICAgIHZvaWQgZGlzcGF0Y2hTaG93KCkgZmluYWwgeyB9CiAKICAgICB2b2lkIGRpc3Bh
dGNoRGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0
IFJlc291cmNlUmVxdWVzdCYsIEZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFsIHsgfQotICAgIHZv
aWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGlv
bkFjdGlvbiYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwg
Y29uc3QgU3RyaW5nJiwgRnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7Ci0gICAgdm9pZCBkaXNw
YXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlv
biYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwgRnJhbWVQ
b2xpY3lGdW5jdGlvbikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5l
d1dpbmRvd0FjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgUmVzb3VyY2VSZXF1
ZXN0JiwgRm9ybVN0YXRlKiwgY29uc3QgU3RyaW5nJiwgRnJhbWVQb2xpY3lGdW5jdGlvbikgZmlu
YWw7CisgICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29u
c3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIEZvcm1TdGF0ZSos
IEZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFsOwogICAgIHZvaWQgY2FuY2VsUG9saWN5Q2hlY2so
KSBmaW5hbCB7IH0KIAogICAgIHZvaWQgZGlzcGF0Y2hVbmFibGVUb0ltcGxlbWVudFBvbGljeShj
b25zdCBSZXNvdXJjZUVycm9yJikgZmluYWwgeyB9CiAKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFNl
bmRTdWJtaXRFdmVudChQYXNzUmVmUHRyPEZvcm1TdGF0ZT4pIGZpbmFsOwotICAgIHZvaWQgZGlz
cGF0Y2hXaWxsU3VibWl0Rm9ybShQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIEZyYW1lUG9saWN5RnVu
Y3Rpb24pIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJlZjxG
b3JtU3RhdGU+JiYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShGb3Jt
U3RhdGUmLCBGcmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsKIAogICAgIHZvaWQgcmV2ZXJ0VG9Q
cm92aXNpb25hbFN0YXRlKERvY3VtZW50TG9hZGVyKikgZmluYWwgeyB9CiAgICAgdm9pZCBzZXRN
YWluRG9jdW1lbnRFcnJvcihEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlRXJyb3ImKSBm
aW5hbCB7IH0KQEAgLTQxMCwxMCArNDExLDEwIEBAIGNsYXNzIEVtcHR5RnJhbWVMb2FkZXJDbGll
bnQgZmluYWwgOiBwdWJsaWMgRnJhbWVMb2FkZXJDbGllbnQgewogICAgIHZvaWQgZGlkRGlzcGxh
eUluc2VjdXJlQ29udGVudCgpIGZpbmFsIHsgfQogICAgIHZvaWQgZGlkUnVuSW5zZWN1cmVDb250
ZW50KFNlY3VyaXR5T3JpZ2luKiwgY29uc3QgVVJMJikgZmluYWwgeyB9CiAgICAgdm9pZCBkaWRE
ZXRlY3RYU1MoY29uc3QgVVJMJiwgYm9vbCkgZmluYWwgeyB9Ci0gICAgUmVmUHRyPEZyYW1lPiBj
cmVhdGVGcmFtZShjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmLCBIVE1MRnJhbWVPd25lckVsZW1l
bnQqLCBjb25zdCBTdHJpbmcmLCBib29sLCBpbnQsIGludCkgZmluYWw7Ci0gICAgUmVmUHRyPFdp
ZGdldD4gY3JlYXRlUGx1Z2luKGNvbnN0IEludFNpemUmLCBIVE1MUGx1Z0luRWxlbWVudCosIGNv
bnN0IFVSTCYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBj
b25zdCBTdHJpbmcmLCBib29sKSBmaW5hbDsKKyAgICBSZWZQdHI8RnJhbWU+IGNyZWF0ZUZyYW1l
KGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYsIEhUTUxGcmFtZU93bmVyRWxlbWVudCYsIGNvbnN0
IFN0cmluZyYsIGJvb2wsIGludCwgaW50KSBmaW5hbDsKKyAgICBSZWZQdHI8V2lkZ2V0PiBjcmVh
dGVQbHVnaW4oY29uc3QgSW50U2l6ZSYsIEhUTUxQbHVnSW5FbGVtZW50JiwgY29uc3QgVVJMJiwg
Y29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFN0cmlu
ZyYsIGJvb2wpIGZpbmFsOwogICAgIHZvaWQgcmVjcmVhdGVQbHVnaW4oV2lkZ2V0KikgZmluYWw7
Ci0gICAgUGFzc1JlZlB0cjxXaWRnZXQ+IGNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50
U2l6ZSYsIEhUTUxBcHBsZXRFbGVtZW50KiwgY29uc3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0cmlu
Zz4mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYpIGZpbmFsOworICAgIFJlZlB0cjxXaWRnZXQ+IGNy
ZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYsIEhUTUxBcHBsZXRFbGVtZW50Jiwg
Y29uc3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYp
IGZpbmFsOwogCiAgICAgT2JqZWN0Q29udGVudFR5cGUgb2JqZWN0Q29udGVudFR5cGUoY29uc3Qg
VVJMJiwgY29uc3QgU3RyaW5nJikgZmluYWwgeyByZXR1cm4gT2JqZWN0Q29udGVudFR5cGU6Ok5v
bmU7IH0KICAgICBTdHJpbmcgb3ZlcnJpZGVNZWRpYVR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVy
biB7IH07IH0KQEAgLTQzMiwxNiArNDMzLDM3IEBAIGNsYXNzIEVtcHR5RnJhbWVMb2FkZXJDbGll
bnQgZmluYWwgOiBwdWJsaWMgRnJhbWVMb2FkZXJDbGllbnQgewogICAgIGJvb2wgc2hvdWxkQ2Fj
aGVSZXNwb25zZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmLCBjb25zdCB1bnNpZ25lZCBjaGFyKiwgdW5zaWduZWQgbG9uZyBsb25nKSBmaW5h
bCB7IHJldHVybiB0cnVlOyB9CiAjZW5kaWYKIAotICAgIFBhc3NSZWZQdHI8RnJhbWVOZXR3b3Jr
aW5nQ29udGV4dD4gY3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKSBmaW5hbDsKKyAgICBSZWY8RnJh
bWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKSBmaW5hbDsKIAog
I2lmIEVOQUJMRShSRVFVRVNUX0FVVE9DT01QTEVURSkKLSAgICB2b2lkIGRpZFJlcXVlc3RBdXRv
Y29tcGxldGUoUGFzc1JlZlB0cjxGb3JtU3RhdGU+KSBmaW5hbCB7IH0KKyAgICB2b2lkIGRpZFJl
cXVlc3RBdXRvY29tcGxldGUoUmVmPEZvcm1TdGF0ZT4mJikgZmluYWwgeyB9CiAjZW5kaWYKIAog
ICAgIGJvb2wgaXNFbXB0eUZyYW1lTG9hZGVyQ2xpZW50KCkgZmluYWwgeyByZXR1cm4gdHJ1ZTsg
fQogICAgIHZvaWQgcHJlZmV0Y2hETlMoY29uc3QgU3RyaW5nJikgZmluYWwgeyB9CiB9OwogCitj
bGFzcyBFbXB0eUZyYW1lTmV0d29ya2luZ0NvbnRleHQgZmluYWwgOiBwdWJsaWMgRnJhbWVOZXR3
b3JraW5nQ29udGV4dCB7CitwdWJsaWM6CisgICAgc3RhdGljIFJlZjxFbXB0eUZyYW1lTmV0d29y
a2luZ0NvbnRleHQ+IGNyZWF0ZSgpIHsgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRW1wdHlGcmFtZU5l
dHdvcmtpbmdDb250ZXh0KTsgfQorCitwcml2YXRlOgorICAgIEVtcHR5RnJhbWVOZXR3b3JraW5n
Q29udGV4dCgpOworCisgICAgYm9vbCBzaG91bGRDbGVhclJlZmVycmVyT25IVFRQU1RvSFRUUFJl
ZGlyZWN0KCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQorICAgIE5ldHdvcmtTdG9yYWdlU2Vzc2lv
biYgc3RvcmFnZVNlc3Npb24oKSBjb25zdCBmaW5hbCB7IHJldHVybiBOZXR3b3JrU3RvcmFnZVNl
c3Npb246OmRlZmF1bHRTdG9yYWdlU2Vzc2lvbigpOyB9CisKKyNpZiBQTEFURk9STShDT0NPQSkK
KyAgICBib29sIGxvY2FsRmlsZUNvbnRlbnRTbmlmZmluZ0VuYWJsZWQoKSBjb25zdCB7IHJldHVy
biBmYWxzZTsgfQorICAgIFNjaGVkdWxlUGFpckhhc2hTZXQqIHNjaGVkdWxlZFJ1bkxvb3BQYWly
cygpIGNvbnN0IHsgcmV0dXJuIG51bGxwdHI7IH0KKyAgICBSZXRhaW5QdHI8Q0ZEYXRhUmVmPiBz
b3VyY2VBcHBsaWNhdGlvbkF1ZGl0RGF0YSgpIGNvbnN0IHsgcmV0dXJuIG51bGxwdHI7IH07Cisj
ZW5kaWYKKworI2lmIFBMQVRGT1JNKENPQ09BKSB8fCBQTEFURk9STShXSU4pCisgICAgUmVzb3Vy
Y2VFcnJvciBibG9ja2VkRXJyb3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JikgY29uc3QgZmluYWwg
eyByZXR1cm4geyB9OyB9CisjZW5kaWYKK307CisKIGNsYXNzIEVtcHR5SW5zcGVjdG9yQ2xpZW50
IGZpbmFsIDogcHVibGljIEluc3BlY3RvckNsaWVudCB7CiAgICAgdm9pZCBpbnNwZWN0ZWRQYWdl
RGVzdHJveWVkKCkgZmluYWwgeyB9CiAgICAgSW5zcGVjdG9yOjpGcm9udGVuZENoYW5uZWwqIG9w
ZW5Mb2NhbEZyb250ZW5kKEluc3BlY3RvckNvbnRyb2xsZXIqKSBmaW5hbCB7IHJldHVybiBudWxs
cHRyOyB9CkBAIC01NjksMjMgKzU5MSwyMyBAQCBzdGQ6OnVuaXF1ZV9wdHI8Q29sb3JDaG9vc2Vy
PiBFbXB0eUNocm9tZUNsaWVudDo6Y3JlYXRlQ29sb3JDaG9vc2VyKENvbG9yQ2hvb3NlcgogCiAj
ZW5kaWYKIAotdm9pZCBFbXB0eUNocm9tZUNsaWVudDo6cnVuT3BlblBhbmVsKEZyYW1lKiwgUGFz
c1JlZlB0cjxGaWxlQ2hvb3Nlcj4pCit2b2lkIEVtcHR5Q2hyb21lQ2xpZW50OjpydW5PcGVuUGFu
ZWwoRnJhbWUmLCBGaWxlQ2hvb3NlciYpCiB7CiB9CiAKLXZvaWQgRW1wdHlGcmFtZUxvYWRlckNs
aWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdh
dGlvbkFjdGlvbiYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIFBhc3NSZWZQdHI8Rm9ybVN0YXRl
PiwgY29uc3QgU3RyaW5nJiwgRnJhbWVQb2xpY3lGdW5jdGlvbikKK3ZvaWQgRW1wdHlGcmFtZUxv
YWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3Qg
TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIEZvcm1TdGF0ZSosIGNv
bnN0IFN0cmluZyYsIEZyYW1lUG9saWN5RnVuY3Rpb24pCiB7CiB9CiAKLXZvaWQgRW1wdHlGcmFt
ZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNv
bnN0IE5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRy
PEZvcm1TdGF0ZT4sIEZyYW1lUG9saWN5RnVuY3Rpb24pCit2b2lkIEVtcHR5RnJhbWVMb2FkZXJD
bGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZp
Z2F0aW9uQWN0aW9uJiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgRm9ybVN0YXRlKiwgRnJhbWVQ
b2xpY3lGdW5jdGlvbikKIHsKIH0KIAotdm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNw
YXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoUGFzc1JlZlB0cjxGb3JtU3RhdGU+KQordm9pZCBFbXB0
eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoUmVmPEZvcm1T
dGF0ZT4mJikKIHsKIH0KIAotdm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdp
bGxTdWJtaXRGb3JtKFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwgRnJhbWVQb2xpY3lGdW5jdGlvbikK
K3ZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShGb3Jt
U3RhdGUmLCBGcmFtZVBvbGljeUZ1bmN0aW9uKQogewogfQogCkBAIC01OTQsMTIgKzYxNiwxMiBA
QCBSZWY8RG9jdW1lbnRMb2FkZXI+IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZURvY3Vt
ZW50TG9hZGVyKGNvbnN0IFJlc291cmNlUgogICAgIHJldHVybiBEb2N1bWVudExvYWRlcjo6Y3Jl
YXRlKHJlcXVlc3QsIHN1YnN0aXR1dGVEYXRhKTsKIH0KIAotUmVmUHRyPEZyYW1lPiBFbXB0eUZy
YW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVGcmFtZShjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmLCBI
VE1MRnJhbWVPd25lckVsZW1lbnQqLCBjb25zdCBTdHJpbmcmLCBib29sLCBpbnQsIGludCkKK1Jl
ZlB0cjxGcmFtZT4gRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlRnJhbWUoY29uc3QgVVJM
JiwgY29uc3QgU3RyaW5nJiwgSFRNTEZyYW1lT3duZXJFbGVtZW50JiwgY29uc3QgU3RyaW5nJiwg
Ym9vbCwgaW50LCBpbnQpCiB7CiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLVJlZlB0cjxXaWRn
ZXQ+IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiwg
SFRNTFBsdWdJbkVsZW1lbnQqLCBjb25zdCBVUkwmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNv
bnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgU3RyaW5nJiwgYm9vbCkKK1JlZlB0cjxXaWRnZXQ+
IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiwgSFRN
TFBsdWdJbkVsZW1lbnQmLCBjb25zdCBVUkwmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0
IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgU3RyaW5nJiwgYm9vbCkKIHsKICAgICByZXR1cm4gbnVs
bHB0cjsKIH0KQEAgLTYwOCwyNSArNjMwLDMwIEBAIHZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVu
dDo6cmVjcmVhdGVQbHVnaW4oV2lkZ2V0KikKIHsKIH0KIAotUGFzc1JlZlB0cjxXaWRnZXQ+IEVt
cHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6
ZSYsIEhUTUxBcHBsZXRFbGVtZW50KiwgY29uc3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4m
LCBjb25zdCBWZWN0b3I8U3RyaW5nPiYpCitSZWZQdHI8V2lkZ2V0PiBFbXB0eUZyYW1lTG9hZGVy
Q2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmLCBIVE1MQXBwbGV0
RWxlbWVudCYsIGNvbnN0IFVSTCYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgVmVjdG9y
PFN0cmluZz4mKQogewogICAgIHJldHVybiBudWxscHRyOwogfQogCi1QYXNzUmVmUHRyPEZyYW1l
TmV0d29ya2luZ0NvbnRleHQ+IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtp
bmdDb250ZXh0KCkKK2lubGluZSBFbXB0eUZyYW1lTmV0d29ya2luZ0NvbnRleHQ6OkVtcHR5RnJh
bWVOZXR3b3JraW5nQ29udGV4dCgpCisgICAgOiBGcmFtZU5ldHdvcmtpbmdDb250ZXh0IHsgbnVs
bHB0ciB9Cit7Cit9CisKK1JlZjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBFbXB0eUZyYW1lTG9h
ZGVyQ2xpZW50OjpjcmVhdGVOZXR3b3JraW5nQ29udGV4dCgpCiB7Ci0gICAgcmV0dXJuIFBhc3NS
ZWZQdHI8RnJhbWVOZXR3b3JraW5nQ29udGV4dD4oKTsKKyAgICByZXR1cm4gRW1wdHlGcmFtZU5l
dHdvcmtpbmdDb250ZXh0OjpjcmVhdGUoKTsKIH0KIAogdm9pZCBFbXB0eUVkaXRvckNsaWVudDo6
RW1wdHlUZXh0Q2hlY2tlckNsaWVudDo6cmVxdWVzdENoZWNraW5nT2ZTdHJpbmcoVGV4dENoZWNr
aW5nUmVxdWVzdCYsIGNvbnN0IFZpc2libGVTZWxlY3Rpb24mKQogewogfQogCi12b2lkIEVtcHR5
RWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9TdGVwKFBhc3NSZWZQdHI8VW5kb1N0ZXA+KQordm9p
ZCBFbXB0eUVkaXRvckNsaWVudDo6cmVnaXN0ZXJVbmRvU3RlcChVbmRvU3RlcCYpCiB7CiB9CiAK
LXZvaWQgRW1wdHlFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyUmVkb1N0ZXAoUGFzc1JlZlB0cjxVbmRv
U3RlcD4pCit2b2lkIEVtcHR5RWRpdG9yQ2xpZW50OjpyZWdpc3RlclJlZG9TdGVwKFVuZG9TdGVw
JikKIHsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50
cy5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5oCmluZGV4IDFhMWQ1M2Mz
NzQwOGFiOTljNjBkZjBlMmY3ZDgyYTQxYzFhZWQ2NjkuLjhmMjUyYmE3OTJmNzExOTdkMDkxMDky
NmM4NDBhMjkwODVhZDEwMzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0
eUNsaWVudHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmgKQEAg
LTEzOCw3ICsxMzgsNyBAQCBjbGFzcyBFbXB0eUNocm9tZUNsaWVudCA6IHB1YmxpYyBDaHJvbWVD
bGllbnQgewogICAgIHN0ZDo6dW5pcXVlX3B0cjxDb2xvckNob29zZXI+IGNyZWF0ZUNvbG9yQ2hv
b3NlcihDb2xvckNob29zZXJDbGllbnQqLCBjb25zdCBDb2xvciYpIGZpbmFsOwogI2VuZGlmCiAK
LSAgICB2b2lkIHJ1bk9wZW5QYW5lbChGcmFtZSosIFBhc3NSZWZQdHI8RmlsZUNob29zZXI+KSBm
aW5hbDsKKyAgICB2b2lkIHJ1bk9wZW5QYW5lbChGcmFtZSYsIEZpbGVDaG9vc2VyJikgZmluYWw7
CiAgICAgdm9pZCBsb2FkSWNvbkZvckZpbGVzKGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgRmlsZUlj
b25Mb2FkZXImKSBmaW5hbCB7IH0KIAogICAgIHZvaWQgZWxlbWVudERpZEZvY3VzKGNvbnN0IE5v
ZGUqKSBmaW5hbCB7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3Rh
dGUuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdGF0ZS5jcHAKaW5kZXggMzUxMGI4
MDI1ZGRmYzM1MTYzOGUwMzA2MDZmYWQ2MDQ1Y2M5NTE5Ni4uNWU4OTZlN2Y4NTJmOTZlMjU0MGVk
OGQ0ZDE1MTc2MmI2YjQwZDkxMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zv
cm1TdGF0ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdGF0ZS5jcHAKQEAg
LTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA2LCAyMDA5IEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNi0yMDE3IEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpA
QCAtMzQsMTcgKzM0LDE3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotaW5saW5lIEZvcm1T
dGF0ZTo6Rm9ybVN0YXRlKFBhc3NSZWZQdHI8SFRNTEZvcm1FbGVtZW50PiBmb3JtLCBTdHJpbmdQ
YWlyVmVjdG9yJiB0ZXh0RmllbGRWYWx1ZXNUb0Fkb3B0LCBQYXNzUmVmUHRyPERvY3VtZW50PiBz
b3VyY2VEb2N1bWVudCwgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIGZvcm1TdWJtaXNzaW9uVHJpZ2dl
cikKK2lubGluZSBGb3JtU3RhdGU6OkZvcm1TdGF0ZShIVE1MRm9ybUVsZW1lbnQmIGZvcm0sIFN0
cmluZ1BhaXJWZWN0b3ImJiB0ZXh0RmllbGRWYWx1ZXMsIERvY3VtZW50JiBzb3VyY2VEb2N1bWVu
dCwgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikKICAgICA6IG1f
Zm9ybShmb3JtKQorICAgICwgbV90ZXh0RmllbGRWYWx1ZXMoV1RGTW92ZSh0ZXh0RmllbGRWYWx1
ZXMpKQogICAgICwgbV9zb3VyY2VEb2N1bWVudChzb3VyY2VEb2N1bWVudCkKICAgICAsIG1fZm9y
bVN1Ym1pc3Npb25UcmlnZ2VyKGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikKIHsKLSAgICBtX3RleHRG
aWVsZFZhbHVlcy5zd2FwKHRleHRGaWVsZFZhbHVlc1RvQWRvcHQpOwogfQogCi1SZWY8Rm9ybVN0
YXRlPiBGb3JtU3RhdGU6OmNyZWF0ZShQYXNzUmVmUHRyPEhUTUxGb3JtRWxlbWVudD4gZm9ybSwg
U3RyaW5nUGFpclZlY3RvciYgdGV4dEZpZWxkVmFsdWVzVG9BZG9wdCwgUGFzc1JlZlB0cjxEb2N1
bWVudD4gc291cmNlRG9jdW1lbnQsIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciBmb3JtU3VibWlzc2lv
blRyaWdnZXIpCitSZWY8Rm9ybVN0YXRlPiBGb3JtU3RhdGU6OmNyZWF0ZShIVE1MRm9ybUVsZW1l
bnQmIGZvcm0sIFN0cmluZ1BhaXJWZWN0b3ImJiB0ZXh0RmllbGRWYWx1ZXMsIERvY3VtZW50JiBz
b3VyY2VEb2N1bWVudCwgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIGZvcm1TdWJtaXNzaW9uVHJpZ2dl
cikKIHsKLSAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGb3JtU3RhdGUoZm9ybSwgdGV4dEZpZWxk
VmFsdWVzVG9BZG9wdCwgc291cmNlRG9jdW1lbnQsIGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikpOwor
ICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEZvcm1TdGF0ZShmb3JtLCBXVEZNb3ZlKHRleHRGaWVs
ZFZhbHVlcyksIHNvdXJjZURvY3VtZW50LCBmb3JtU3VibWlzc2lvblRyaWdnZXIpKTsKIH0KIAog
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdGF0ZS5oIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0Zvcm1TdGF0ZS5oCmluZGV4IDk1MDQwZjljMjhkNDc5M2JiMTVmOGZm
MzdhMGI2MjRkMjhiZDhjZjcuLjJkZWRkMDliZTUyYjBhZmM5NzAyODNhMTE0Y2NmMDM0ZjdiNjVm
YWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3RhdGUuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN0YXRlLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICog
Q29weXJpZ2h0IChDKSAyMDA2LCAyMDA5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqIENvcHlyaWdodCAoQykgMjAwNi0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMjgsMzcgKzI4LDMzIEBACiAK
ICNwcmFnbWEgb25jZQogCi0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KICNpbmNsdWRlIDx3
dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi0gICAgY2xhc3Mg
RG9jdW1lbnQ7Ci0gICAgY2xhc3MgSFRNTEZvcm1FbGVtZW50OworY2xhc3MgRG9jdW1lbnQ7Citj
bGFzcyBIVE1MRm9ybUVsZW1lbnQ7CiAKLSAgICBlbnVtIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciB7
Ci0gICAgICAgIFN1Ym1pdHRlZEJ5SmF2YVNjcmlwdCwKLSAgICAgICAgTm90U3VibWl0dGVkQnlK
YXZhU2NyaXB0Ci0gICAgfTsKLSAgICAKLSAgICB0eXBlZGVmIFZlY3RvcjxzdGQ6OnBhaXI8U3Ry
aW5nLCBTdHJpbmc+PiBTdHJpbmdQYWlyVmVjdG9yOworZW51bSBGb3JtU3VibWlzc2lvblRyaWdn
ZXIgeyBTdWJtaXR0ZWRCeUphdmFTY3JpcHQsIE5vdFN1Ym1pdHRlZEJ5SmF2YVNjcmlwdCB9Owog
Ci0gICAgY2xhc3MgRm9ybVN0YXRlIDogcHVibGljIFJlZkNvdW50ZWQ8Rm9ybVN0YXRlPiB7Ci0g
ICAgcHVibGljOgotICAgICAgICBzdGF0aWMgUmVmPEZvcm1TdGF0ZT4gY3JlYXRlKFBhc3NSZWZQ
dHI8SFRNTEZvcm1FbGVtZW50PiwgU3RyaW5nUGFpclZlY3RvciYgdGV4dEZpZWxkVmFsdWVzVG9B
ZG9wdCwgUGFzc1JlZlB0cjxEb2N1bWVudD4sIEZvcm1TdWJtaXNzaW9uVHJpZ2dlcik7Cit1c2lu
ZyBTdHJpbmdQYWlyVmVjdG9yID0gVmVjdG9yPHN0ZDo6cGFpcjxTdHJpbmcsIFN0cmluZz4+Owog
Ci0gICAgICAgIEhUTUxGb3JtRWxlbWVudCogZm9ybSgpIGNvbnN0IHsgcmV0dXJuIG1fZm9ybS5n
ZXQoKTsgfQotICAgICAgICBjb25zdCBTdHJpbmdQYWlyVmVjdG9yJiB0ZXh0RmllbGRWYWx1ZXMo
KSBjb25zdCB7IHJldHVybiBtX3RleHRGaWVsZFZhbHVlczsgfQotICAgICAgICBEb2N1bWVudCog
c291cmNlRG9jdW1lbnQoKSBjb25zdCB7IHJldHVybiBtX3NvdXJjZURvY3VtZW50LmdldCgpOyB9
Ci0gICAgICAgIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciBmb3JtU3VibWlzc2lvblRyaWdnZXIoKSBj
b25zdCB7IHJldHVybiBtX2Zvcm1TdWJtaXNzaW9uVHJpZ2dlcjsgfQorY2xhc3MgRm9ybVN0YXRl
IDogcHVibGljIFJlZkNvdW50ZWQ8Rm9ybVN0YXRlPiB7CitwdWJsaWM6CisgICAgc3RhdGljIFJl
ZjxGb3JtU3RhdGU+IGNyZWF0ZShIVE1MRm9ybUVsZW1lbnQmLCBTdHJpbmdQYWlyVmVjdG9yJiYg
dGV4dEZpZWxkVmFsdWVzLCBEb2N1bWVudCYsIEZvcm1TdWJtaXNzaW9uVHJpZ2dlcik7CiAKLSAg
ICBwcml2YXRlOgotICAgICAgICBGb3JtU3RhdGUoUGFzc1JlZlB0cjxIVE1MRm9ybUVsZW1lbnQ+
LCBTdHJpbmdQYWlyVmVjdG9yJiB0ZXh0RmllbGRWYWx1ZXNUb0Fkb3B0LCBQYXNzUmVmUHRyPERv
Y3VtZW50PiwgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyKTsKKyAgICBIVE1MRm9ybUVsZW1lbnQmIGZv
cm0oKSBjb25zdCB7IHJldHVybiBtX2Zvcm07IH0KKyAgICBjb25zdCBTdHJpbmdQYWlyVmVjdG9y
JiB0ZXh0RmllbGRWYWx1ZXMoKSBjb25zdCB7IHJldHVybiBtX3RleHRGaWVsZFZhbHVlczsgfQor
ICAgIERvY3VtZW50JiBzb3VyY2VEb2N1bWVudCgpIGNvbnN0IHsgcmV0dXJuIG1fc291cmNlRG9j
dW1lbnQ7IH0KKyAgICBGb3JtU3VibWlzc2lvblRyaWdnZXIgZm9ybVN1Ym1pc3Npb25UcmlnZ2Vy
KCkgY29uc3QgeyByZXR1cm4gbV9mb3JtU3VibWlzc2lvblRyaWdnZXI7IH0KIAotICAgICAgICBS
ZWZQdHI8SFRNTEZvcm1FbGVtZW50PiBtX2Zvcm07Ci0gICAgICAgIFN0cmluZ1BhaXJWZWN0b3Ig
bV90ZXh0RmllbGRWYWx1ZXM7Ci0gICAgICAgIFJlZlB0cjxEb2N1bWVudD4gbV9zb3VyY2VEb2N1
bWVudDsKLSAgICAgICAgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIG1fZm9ybVN1Ym1pc3Npb25Ucmln
Z2VyOwotICAgIH07Citwcml2YXRlOgorICAgIEZvcm1TdGF0ZShIVE1MRm9ybUVsZW1lbnQmLCBT
dHJpbmdQYWlyVmVjdG9yJiYgdGV4dEZpZWxkVmFsdWVzLCBEb2N1bWVudCYsIEZvcm1TdWJtaXNz
aW9uVHJpZ2dlcik7CisKKyAgICBSZWY8SFRNTEZvcm1FbGVtZW50PiBtX2Zvcm07CisgICAgU3Ry
aW5nUGFpclZlY3RvciBtX3RleHRGaWVsZFZhbHVlczsKKyAgICBSZWY8RG9jdW1lbnQ+IG1fc291
cmNlRG9jdW1lbnQ7CisgICAgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIG1fZm9ybVN1Ym1pc3Npb25U
cmlnZ2VyOworfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0Zvcm1TdWJtaXNzaW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9Gb3JtU3VibWlzc2lvbi5jcHAKaW5kZXggMjBhYWY0YzRjNzI3YWY2OTJiNzk4ZTI2OTY1ZmI5
NDA0Nzg2YzliMi4uNzcwNzM0M2M1YzIzNzU5Nzk3YmJjYmYwNDE1MzkyMzAzNzlmNzljOSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdWJtaXNzaW9uLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN1Ym1pc3Npb24uY3BwCkBAIC0xMDYsNyArMTA2LDcg
QEAgdm9pZCBGb3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6dXBkYXRlRW5jb2RpbmdUeXBlKGNv
bnN0IFN0cmluZyYgdHlwZSkKIAogRm9ybVN1Ym1pc3Npb246Ok1ldGhvZCBGb3JtU3VibWlzc2lv
bjo6QXR0cmlidXRlczo6cGFyc2VNZXRob2RUeXBlKGNvbnN0IFN0cmluZyYgdHlwZSkKIHsKLSAg
ICByZXR1cm4gZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2UodHlwZSwgInBvc3QiKSA/IEZv
cm1TdWJtaXNzaW9uOjpQb3N0TWV0aG9kIDogRm9ybVN1Ym1pc3Npb246OkdldE1ldGhvZDsKKyAg
ICByZXR1cm4gZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2UodHlwZSwgInBvc3QiKSA/IEZv
cm1TdWJtaXNzaW9uOjpNZXRob2Q6OlBvc3QgOiBGb3JtU3VibWlzc2lvbjo6TWV0aG9kOjpHZXQ7
CiB9CiAKIHZvaWQgRm9ybVN1Ym1pc3Npb246OkF0dHJpYnV0ZXM6OnVwZGF0ZU1ldGhvZFR5cGUo
Y29uc3QgU3RyaW5nJiB0eXBlKQpAQCAtMTE0LDI0ICsxMTQsMTMgQEAgdm9pZCBGb3JtU3VibWlz
c2lvbjo6QXR0cmlidXRlczo6dXBkYXRlTWV0aG9kVHlwZShjb25zdCBTdHJpbmcmIHR5cGUpCiAg
ICAgbV9tZXRob2QgPSBwYXJzZU1ldGhvZFR5cGUodHlwZSk7CiB9CiAKLXZvaWQgRm9ybVN1Ym1p
c3Npb246OkF0dHJpYnV0ZXM6OmNvcHlGcm9tKGNvbnN0IEF0dHJpYnV0ZXMmIG90aGVyKQotewot
ICAgIG1fbWV0aG9kID0gb3RoZXIubV9tZXRob2Q7Ci0gICAgbV9pc011bHRpUGFydEZvcm0gPSBv
dGhlci5tX2lzTXVsdGlQYXJ0Rm9ybTsKLQotICAgIG1fYWN0aW9uID0gb3RoZXIubV9hY3Rpb247
Ci0gICAgbV90YXJnZXQgPSBvdGhlci5tX3RhcmdldDsKLSAgICBtX2VuY29kaW5nVHlwZSA9IG90
aGVyLm1fZW5jb2RpbmdUeXBlOwotICAgIG1fYWNjZXB0Q2hhcnNldCA9IG90aGVyLm1fYWNjZXB0
Q2hhcnNldDsKLX0KLQotaW5saW5lIEZvcm1TdWJtaXNzaW9uOjpGb3JtU3VibWlzc2lvbihNZXRo
b2QgbWV0aG9kLCBjb25zdCBVUkwmIGFjdGlvbiwgY29uc3QgU3RyaW5nJiB0YXJnZXQsIGNvbnN0
IFN0cmluZyYgY29udGVudFR5cGUsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiBzdGF0ZSwgUGFzc1Jl
ZlB0cjxGb3JtRGF0YT4gZGF0YSwgY29uc3QgU3RyaW5nJiBib3VuZGFyeSwgTG9ja0hpc3Rvcnkg
bG9ja0hpc3RvcnksIFBhc3NSZWZQdHI8RXZlbnQ+IGV2ZW50KQoraW5saW5lIEZvcm1TdWJtaXNz
aW9uOjpGb3JtU3VibWlzc2lvbihNZXRob2QgbWV0aG9kLCBjb25zdCBVUkwmIGFjdGlvbiwgY29u
c3QgU3RyaW5nJiB0YXJnZXQsIGNvbnN0IFN0cmluZyYgY29udGVudFR5cGUsIFJlZjxGb3JtU3Rh
dGU+JiYgc3RhdGUsIFJlZjxGb3JtRGF0YT4mJiBkYXRhLCBjb25zdCBTdHJpbmcmIGJvdW5kYXJ5
LCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSwgRXZlbnQqIGV2ZW50KQogICAgIDogbV9tZXRob2Qo
bWV0aG9kKQogICAgICwgbV9hY3Rpb24oYWN0aW9uKQogICAgICwgbV90YXJnZXQodGFyZ2V0KQog
ICAgICwgbV9jb250ZW50VHlwZShjb250ZW50VHlwZSkKLSAgICAsIG1fZm9ybVN0YXRlKHN0YXRl
KQotICAgICwgbV9mb3JtRGF0YShkYXRhKQorICAgICwgbV9mb3JtU3RhdGUoV1RGTW92ZShzdGF0
ZSkpCisgICAgLCBtX2Zvcm1EYXRhKFdURk1vdmUoZGF0YSkpCiAgICAgLCBtX2JvdW5kYXJ5KGJv
dW5kYXJ5KQogICAgICwgbV9sb2NrSGlzdG9yeShsb2NrSGlzdG9yeSkKICAgICAsIG1fZXZlbnQo
ZXZlbnQpCkBAIC0xNTUsMTAgKzE0NCw4IEBAIHN0YXRpYyBUZXh0RW5jb2RpbmcgZW5jb2RpbmdG
cm9tQWNjZXB0Q2hhcnNldChjb25zdCBTdHJpbmcmIGFjY2VwdENoYXJzZXQsIERvY3VtCiAgICAg
cmV0dXJuIGRvY3VtZW50LnRleHRFbmNvZGluZygpOwogfQogCi1SZWY8Rm9ybVN1Ym1pc3Npb24+
IEZvcm1TdWJtaXNzaW9uOjpjcmVhdGUoSFRNTEZvcm1FbGVtZW50KiBmb3JtLCBjb25zdCBBdHRy
aWJ1dGVzJiBhdHRyaWJ1dGVzLCBQYXNzUmVmUHRyPEV2ZW50PiBldmVudCwgTG9ja0hpc3Rvcnkg
bG9ja0hpc3RvcnksIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciB0cmlnZ2VyKQorUmVmPEZvcm1TdWJt
aXNzaW9uPiBGb3JtU3VibWlzc2lvbjo6Y3JlYXRlKEhUTUxGb3JtRWxlbWVudCYgZm9ybSwgY29u
c3QgQXR0cmlidXRlcyYgYXR0cmlidXRlcywgRXZlbnQqIGV2ZW50LCBMb2NrSGlzdG9yeSBsb2Nr
SGlzdG9yeSwgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIHRyaWdnZXIpCiB7Ci0gICAgQVNTRVJUKGZv
cm0pOwotCiAgICAgSFRNTEZvcm1Db250cm9sRWxlbWVudCogc3VibWl0QnV0dG9uID0gbnVsbHB0
cjsKICAgICBpZiAoZXZlbnQgJiYgZXZlbnQtPnRhcmdldCgpKSB7CiAgICAgICAgIGZvciAoTm9k
ZSogbm9kZSA9IGV2ZW50LT50YXJnZXQoKS0+dG9Ob2RlKCk7IG5vZGU7IG5vZGUgPSBub2RlLT5w
YXJlbnROb2RlKCkpIHsKQEAgLTE2OSw4ICsxNTYsNyBAQCBSZWY8Rm9ybVN1Ym1pc3Npb24+IEZv
cm1TdWJtaXNzaW9uOjpjcmVhdGUoSFRNTEZvcm1FbGVtZW50KiBmb3JtLCBjb25zdCBBdHRyaWJ1
dAogICAgICAgICB9CiAgICAgfQogCi0gICAgRm9ybVN1Ym1pc3Npb246OkF0dHJpYnV0ZXMgY29w
aWVkQXR0cmlidXRlczsKLSAgICBjb3BpZWRBdHRyaWJ1dGVzLmNvcHlGcm9tKGF0dHJpYnV0ZXMp
OworICAgIGF1dG8gY29waWVkQXR0cmlidXRlcyA9IGF0dHJpYnV0ZXM7CiAgICAgaWYgKHN1Ym1p
dEJ1dHRvbikgewogICAgICAgICBBdG9taWNTdHJpbmcgYXR0cmlidXRlVmFsdWU7CiAgICAgICAg
IGlmICghKGF0dHJpYnV0ZVZhbHVlID0gc3VibWl0QnV0dG9uLT5hdHRyaWJ1dGVXaXRob3V0U3lu
Y2hyb25pemF0aW9uKGZvcm1hY3Rpb25BdHRyKSkuaXNOdWxsKCkpCkBAIC0xODMsMTUgKzE2OSwx
NSBAQCBSZWY8Rm9ybVN1Ym1pc3Npb24+IEZvcm1TdWJtaXNzaW9uOjpjcmVhdGUoSFRNTEZvcm1F
bGVtZW50KiBmb3JtLCBjb25zdCBBdHRyaWJ1dAogICAgICAgICAgICAgY29waWVkQXR0cmlidXRl
cy5zZXRUYXJnZXQoYXR0cmlidXRlVmFsdWUpOwogICAgIH0KICAgICAKLSAgICBEb2N1bWVudCYg
ZG9jdW1lbnQgPSBmb3JtLT5kb2N1bWVudCgpOwotICAgIFVSTCBhY3Rpb25VUkwgPSBkb2N1bWVu
dC5jb21wbGV0ZVVSTChjb3BpZWRBdHRyaWJ1dGVzLmFjdGlvbigpLmlzRW1wdHkoKSA/IGRvY3Vt
ZW50LnVybCgpLnN0cmluZygpIDogY29waWVkQXR0cmlidXRlcy5hY3Rpb24oKSk7CisgICAgYXV0
byYgZG9jdW1lbnQgPSBmb3JtLmRvY3VtZW50KCk7CisgICAgYXV0byBhY3Rpb25VUkwgPSBkb2N1
bWVudC5jb21wbGV0ZVVSTChjb3BpZWRBdHRyaWJ1dGVzLmFjdGlvbigpLmlzRW1wdHkoKSA/IGRv
Y3VtZW50LnVybCgpLnN0cmluZygpIDogY29waWVkQXR0cmlidXRlcy5hY3Rpb24oKSk7CiAgICAg
Ym9vbCBpc01haWx0b0Zvcm0gPSBhY3Rpb25VUkwucHJvdG9jb2xJcygibWFpbHRvIik7CiAgICAg
Ym9vbCBpc011bHRpUGFydEZvcm0gPSBmYWxzZTsKLSAgICBTdHJpbmcgZW5jb2RpbmdUeXBlID0g
Y29waWVkQXR0cmlidXRlcy5lbmNvZGluZ1R5cGUoKTsKKyAgICBhdXRvIGVuY29kaW5nVHlwZSA9
IGNvcGllZEF0dHJpYnV0ZXMuZW5jb2RpbmdUeXBlKCk7CiAKICAgICBkb2N1bWVudC5jb250ZW50
U2VjdXJpdHlQb2xpY3koKS0+dXBncmFkZUluc2VjdXJlUmVxdWVzdElmTmVlZGVkKGFjdGlvblVS
TCwgQ29udGVudFNlY3VyaXR5UG9saWN5OjpJbnNlY3VyZVJlcXVlc3RUeXBlOjpGb3JtU3VibWlz
c2lvbik7CiAKLSAgICBpZiAoY29waWVkQXR0cmlidXRlcy5tZXRob2QoKSA9PSBQb3N0TWV0aG9k
KSB7CisgICAgaWYgKGNvcGllZEF0dHJpYnV0ZXMubWV0aG9kKCkgPT0gTWV0aG9kOjpQb3N0KSB7
CiAgICAgICAgIGlzTXVsdGlQYXJ0Rm9ybSA9IGNvcGllZEF0dHJpYnV0ZXMuaXNNdWx0aVBhcnRG
b3JtKCk7CiAgICAgICAgIGlmIChpc011bHRpUGFydEZvcm0gJiYgaXNNYWlsdG9Gb3JtKSB7CiAg
ICAgICAgICAgICBlbmNvZGluZ1R5cGUgPSAiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNv
ZGVkIjsKQEAgLTE5OSwxOSArMTg1LDE5IEBAIFJlZjxGb3JtU3VibWlzc2lvbj4gRm9ybVN1Ym1p
c3Npb246OmNyZWF0ZShIVE1MRm9ybUVsZW1lbnQqIGZvcm0sIGNvbnN0IEF0dHJpYnV0CiAgICAg
ICAgIH0KICAgICB9CiAKLSAgICBUZXh0RW5jb2RpbmcgZGF0YUVuY29kaW5nID0gaXNNYWlsdG9G
b3JtID8gVVRGOEVuY29kaW5nKCkgOiBlbmNvZGluZ0Zyb21BY2NlcHRDaGFyc2V0KGNvcGllZEF0
dHJpYnV0ZXMuYWNjZXB0Q2hhcnNldCgpLCBkb2N1bWVudCk7Ci0gICAgUmVmUHRyPERPTUZvcm1E
YXRhPiBkb21Gb3JtRGF0YSA9IERPTUZvcm1EYXRhOjpjcmVhdGUoZGF0YUVuY29kaW5nLmVuY29k
aW5nRm9yRm9ybVN1Ym1pc3Npb24oKSk7Ci0gICAgVmVjdG9yPHN0ZDo6cGFpcjxTdHJpbmcsIFN0
cmluZz4+IGZvcm1WYWx1ZXM7CisgICAgYXV0byBkYXRhRW5jb2RpbmcgPSBpc01haWx0b0Zvcm0g
PyBVVEY4RW5jb2RpbmcoKSA6IGVuY29kaW5nRnJvbUFjY2VwdENoYXJzZXQoY29waWVkQXR0cmli
dXRlcy5hY2NlcHRDaGFyc2V0KCksIGRvY3VtZW50KTsKKyAgICBhdXRvIGRvbUZvcm1EYXRhID0g
RE9NRm9ybURhdGE6OmNyZWF0ZShkYXRhRW5jb2RpbmcuZW5jb2RpbmdGb3JGb3JtU3VibWlzc2lv
bigpKTsKKyAgICBTdHJpbmdQYWlyVmVjdG9yIGZvcm1WYWx1ZXM7CiAKICAgICBib29sIGNvbnRh
aW5zUGFzc3dvcmREYXRhID0gZmFsc2U7Ci0gICAgZm9yIChhdXRvJiBjb250cm9sIDogZm9ybS0+
YXNzb2NpYXRlZEVsZW1lbnRzKCkpIHsKLSAgICAgICAgSFRNTEVsZW1lbnQmIGVsZW1lbnQgPSBj
b250cm9sLT5hc0hUTUxFbGVtZW50KCk7CisgICAgZm9yIChhdXRvJiBjb250cm9sIDogZm9ybS5h
c3NvY2lhdGVkRWxlbWVudHMoKSkgeworICAgICAgICBhdXRvJiBlbGVtZW50ID0gY29udHJvbC0+
YXNIVE1MRWxlbWVudCgpOwogICAgICAgICBpZiAoIWVsZW1lbnQuaXNEaXNhYmxlZEZvcm1Db250
cm9sKCkpCi0gICAgICAgICAgICBjb250cm9sLT5hcHBlbmRGb3JtRGF0YSgqZG9tRm9ybURhdGEs
IGlzTXVsdGlQYXJ0Rm9ybSk7CisgICAgICAgICAgICBjb250cm9sLT5hcHBlbmRGb3JtRGF0YShk
b21Gb3JtRGF0YSwgaXNNdWx0aVBhcnRGb3JtKTsKICAgICAgICAgaWYgKGlzPEhUTUxJbnB1dEVs
ZW1lbnQ+KGVsZW1lbnQpKSB7Ci0gICAgICAgICAgICBIVE1MSW5wdXRFbGVtZW50JiBpbnB1dCA9
IGRvd25jYXN0PEhUTUxJbnB1dEVsZW1lbnQ+KGVsZW1lbnQpOworICAgICAgICAgICAgYXV0byYg
aW5wdXQgPSBkb3duY2FzdDxIVE1MSW5wdXRFbGVtZW50PihlbGVtZW50KTsKICAgICAgICAgICAg
IGlmIChpbnB1dC5pc1RleHRGaWVsZCgpKSB7Ci0gICAgICAgICAgICAgICAgZm9ybVZhbHVlcy5h
cHBlbmQoc3RkOjpwYWlyPFN0cmluZywgU3RyaW5nPihpbnB1dC5uYW1lKCkuc3RyaW5nKCksIGlu
cHV0LnZhbHVlKCkpKTsKKyAgICAgICAgICAgICAgICBmb3JtVmFsdWVzLmFwcGVuZCh7IGlucHV0
Lm5hbWUoKS5zdHJpbmcoKSwgaW5wdXQudmFsdWUoKSB9KTsKICAgICAgICAgICAgICAgICBpbnB1
dC5hZGRTZWFyY2hSZXN1bHQoKTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGlmIChpbnB1
dC5pc1Bhc3N3b3JkRmllbGQoKSAmJiAhaW5wdXQudmFsdWUoKS5pc0VtcHR5KCkpCkBAIC0yMjMs
MTEgKzIwOSwxMSBAQCBSZWY8Rm9ybVN1Ym1pc3Npb24+IEZvcm1TdWJtaXNzaW9uOjpjcmVhdGUo
SFRNTEZvcm1FbGVtZW50KiBmb3JtLCBjb25zdCBBdHRyaWJ1dAogICAgIFN0cmluZyBib3VuZGFy
eTsKIAogICAgIGlmIChpc011bHRpUGFydEZvcm0pIHsKLSAgICAgICAgZm9ybURhdGEgPSBGb3Jt
RGF0YTo6Y3JlYXRlTXVsdGlQYXJ0KCooc3RhdGljX2Nhc3Q8Rm9ybURhdGFMaXN0Kj4oZG9tRm9y
bURhdGEuZ2V0KCkpKSwgZG9tRm9ybURhdGEtPmVuY29kaW5nKCksICZkb2N1bWVudCk7CisgICAg
ICAgIGZvcm1EYXRhID0gRm9ybURhdGE6OmNyZWF0ZU11bHRpUGFydChkb21Gb3JtRGF0YSwgZG9t
Rm9ybURhdGEtPmVuY29kaW5nKCksICZkb2N1bWVudCk7CiAgICAgICAgIGJvdW5kYXJ5ID0gZm9y
bURhdGEtPmJvdW5kYXJ5KCkuZGF0YSgpOwogICAgIH0gZWxzZSB7Ci0gICAgICAgIGZvcm1EYXRh
ID0gRm9ybURhdGE6OmNyZWF0ZSgqKHN0YXRpY19jYXN0PEZvcm1EYXRhTGlzdCo+KGRvbUZvcm1E
YXRhLmdldCgpKSksIGRvbUZvcm1EYXRhLT5lbmNvZGluZygpLCBhdHRyaWJ1dGVzLm1ldGhvZCgp
ID09IEdldE1ldGhvZCA/IEZvcm1EYXRhOjpGb3JtVVJMRW5jb2RlZCA6IEZvcm1EYXRhOjpwYXJz
ZUVuY29kaW5nVHlwZShlbmNvZGluZ1R5cGUpKTsKLSAgICAgICAgaWYgKGNvcGllZEF0dHJpYnV0
ZXMubWV0aG9kKCkgPT0gUG9zdE1ldGhvZCAmJiBpc01haWx0b0Zvcm0pIHsKKyAgICAgICAgZm9y
bURhdGEgPSBGb3JtRGF0YTo6Y3JlYXRlKGRvbUZvcm1EYXRhLCBkb21Gb3JtRGF0YS0+ZW5jb2Rp
bmcoKSwgYXR0cmlidXRlcy5tZXRob2QoKSA9PSBNZXRob2Q6OkdldCA/IEZvcm1EYXRhOjpGb3Jt
VVJMRW5jb2RlZCA6IEZvcm1EYXRhOjpwYXJzZUVuY29kaW5nVHlwZShlbmNvZGluZ1R5cGUpKTsK
KyAgICAgICAgaWYgKGNvcGllZEF0dHJpYnV0ZXMubWV0aG9kKCkgPT0gTWV0aG9kOjpQb3N0ICYm
IGlzTWFpbHRvRm9ybSkgewogICAgICAgICAgICAgLy8gQ29udmVydCB0aGUgZm9ybSBkYXRhIGlu
dG8gYSBzdHJpbmcgdGhhdCB3ZSBwdXQgaW50byB0aGUgVVJMLgogICAgICAgICAgICAgYXBwZW5k
TWFpbHRvUG9zdEZvcm1EYXRhVG9VUkwoYWN0aW9uVVJMLCAqZm9ybURhdGEsIGVuY29kaW5nVHlw
ZSk7CiAgICAgICAgICAgICBmb3JtRGF0YSA9IEZvcm1EYXRhOjpjcmVhdGUoKTsKQEAgLTIzNiwx
NCArMjIyLDE3IEBAIFJlZjxGb3JtU3VibWlzc2lvbj4gRm9ybVN1Ym1pc3Npb246OmNyZWF0ZShI
VE1MRm9ybUVsZW1lbnQqIGZvcm0sIGNvbnN0IEF0dHJpYnV0CiAKICAgICBmb3JtRGF0YS0+c2V0
SWRlbnRpZmllcihnZW5lcmF0ZUZvcm1EYXRhSWRlbnRpZmllcigpKTsKICAgICBmb3JtRGF0YS0+
c2V0Q29udGFpbnNQYXNzd29yZERhdGEoY29udGFpbnNQYXNzd29yZERhdGEpOworCiAgICAgU3Ry
aW5nIHRhcmdldE9yQmFzZVRhcmdldCA9IGNvcGllZEF0dHJpYnV0ZXMudGFyZ2V0KCkuaXNFbXB0
eSgpID8gZG9jdW1lbnQuYmFzZVRhcmdldCgpIDogY29waWVkQXR0cmlidXRlcy50YXJnZXQoKTsK
LSAgICBhdXRvIGZvcm1TdGF0ZSA9IEZvcm1TdGF0ZTo6Y3JlYXRlKGZvcm0sIGZvcm1WYWx1ZXMs
ICZkb2N1bWVudCwgdHJpZ2dlcik7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRm9ybVN1Ym1p
c3Npb24oY29waWVkQXR0cmlidXRlcy5tZXRob2QoKSwgYWN0aW9uVVJMLCB0YXJnZXRPckJhc2VU
YXJnZXQsIGVuY29kaW5nVHlwZSwgV1RGTW92ZShmb3JtU3RhdGUpLCBXVEZNb3ZlKGZvcm1EYXRh
KSwgYm91bmRhcnksIGxvY2tIaXN0b3J5LCBldmVudCkpOworCisgICAgYXV0byBmb3JtU3RhdGUg
PSBGb3JtU3RhdGU6OmNyZWF0ZShmb3JtLCBXVEZNb3ZlKGZvcm1WYWx1ZXMpLCBkb2N1bWVudCwg
dHJpZ2dlcik7CisKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGb3JtU3VibWlzc2lvbihjb3Bp
ZWRBdHRyaWJ1dGVzLm1ldGhvZCgpLCBhY3Rpb25VUkwsIHRhcmdldE9yQmFzZVRhcmdldCwgZW5j
b2RpbmdUeXBlLCBXVEZNb3ZlKGZvcm1TdGF0ZSksIGZvcm1EYXRhLnJlbGVhc2VOb25OdWxsKCks
IGJvdW5kYXJ5LCBsb2NrSGlzdG9yeSwgZXZlbnQpKTsKIH0KIAogVVJMIEZvcm1TdWJtaXNzaW9u
OjpyZXF1ZXN0VVJMKCkgY29uc3QKIHsKLSAgICBpZiAobV9tZXRob2QgPT0gRm9ybVN1Ym1pc3Np
b246OlBvc3RNZXRob2QpCisgICAgaWYgKG1fbWV0aG9kID09IE1ldGhvZDo6UG9zdCkKICAgICAg
ICAgcmV0dXJuIG1fYWN0aW9uOwogCiAgICAgVVJMIHJlcXVlc3RVUkwobV9hY3Rpb24pOwpAQCAt
MjU5LDcgKzI0OCw3IEBAIHZvaWQgRm9ybVN1Ym1pc3Npb246OnBvcHVsYXRlRnJhbWVMb2FkUmVx
dWVzdChGcmFtZUxvYWRSZXF1ZXN0JiBmcmFtZVJlcXVlc3QpCiAgICAgaWYgKCFtX3JlZmVycmVy
LmlzRW1wdHkoKSkKICAgICAgICAgZnJhbWVSZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLnNldEhU
VFBSZWZlcnJlcihtX3JlZmVycmVyKTsKIAotICAgIGlmIChtX21ldGhvZCA9PSBGb3JtU3VibWlz
c2lvbjo6UG9zdE1ldGhvZCkgeworICAgIGlmIChtX21ldGhvZCA9PSBNZXRob2Q6OlBvc3QpIHsK
ICAgICAgICAgZnJhbWVSZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLnNldEhUVFBNZXRob2QoIlBP
U1QiKTsKICAgICAgICAgZnJhbWVSZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLnNldEhUVFBCb2R5
KG1fZm9ybURhdGEuY29weVJlZigpKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0Zvcm1TdWJtaXNzaW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN1Ym1pc3Np
b24uaAppbmRleCA0MWIzN2UwNjQyYjE4YTgwZTE2NGYwNTY2YmVmODhkMmQxMGU3ZWY4Li4yNTI0
MTJjMGMwMmIzOWJkOWU4YjQ1MWFjNzUzNWE0NTczNTQ3NmEwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvRm9ybVN1Ym1pc3Npb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvRm9ybVN1Ym1pc3Npb24uaApAQCAtMzYsMzEgKzM2LDIxIEBACiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAotY2xhc3MgRG9jdW1lbnQ7CiBjbGFzcyBFdmVudDsKIGNsYXNzIEZvcm1EYXRhOwor
CiBzdHJ1Y3QgRnJhbWVMb2FkUmVxdWVzdDsKLWNsYXNzIEhUTUxGb3JtRWxlbWVudDsKLWNsYXNz
IFRleHRFbmNvZGluZzsKIAogY2xhc3MgRm9ybVN1Ym1pc3Npb24gOiBwdWJsaWMgUmVmQ291bnRl
ZDxGb3JtU3VibWlzc2lvbj4gewogcHVibGljOgotICAgIGVudW0gTWV0aG9kIHsgR2V0TWV0aG9k
LCBQb3N0TWV0aG9kIH07CisgICAgZW51bSBjbGFzcyBNZXRob2QgeyBHZXQsIFBvc3QgfTsKIAog
ICAgIGNsYXNzIEF0dHJpYnV0ZXMgewotICAgICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShBdHRy
aWJ1dGVzKTsKICAgICBwdWJsaWM6Ci0gICAgICAgIEF0dHJpYnV0ZXMoKQotICAgICAgICAgICAg
OiBtX21ldGhvZChHZXRNZXRob2QpCi0gICAgICAgICAgICAsIG1faXNNdWx0aVBhcnRGb3JtKGZh
bHNlKQotICAgICAgICAgICAgLCBtX2VuY29kaW5nVHlwZSgiYXBwbGljYXRpb24veC13d3ctZm9y
bS11cmxlbmNvZGVkIikKLSAgICAgICAgewotICAgICAgICB9Ci0KICAgICAgICAgTWV0aG9kIG1l
dGhvZCgpIGNvbnN0IHsgcmV0dXJuIG1fbWV0aG9kOyB9CiAgICAgICAgIHN0YXRpYyBNZXRob2Qg
cGFyc2VNZXRob2RUeXBlKGNvbnN0IFN0cmluZyYpOwogICAgICAgICB2b2lkIHVwZGF0ZU1ldGhv
ZFR5cGUoY29uc3QgU3RyaW5nJik7Ci0gICAgICAgIHN0YXRpYyBTdHJpbmcgbWV0aG9kU3RyaW5n
KE1ldGhvZCBtZXRob2QpIHsgcmV0dXJuIG1ldGhvZCA9PSBQb3N0TWV0aG9kID8gInBvc3QiIDog
ImdldCI7IH0KKyAgICAgICAgc3RhdGljIEFTQ0lJTGl0ZXJhbCBtZXRob2RTdHJpbmcoTWV0aG9k
IG1ldGhvZCkgeyByZXR1cm4gQVNDSUlMaXRlcmFsIHsgbWV0aG9kID09IE1ldGhvZDo6UG9zdCA/
ICJwb3N0IiA6ICJnZXQiIH07IH0KIAogICAgICAgICBjb25zdCBTdHJpbmcmIGFjdGlvbigpIGNv
bnN0IHsgcmV0dXJuIG1fYWN0aW9uOyB9CiAgICAgICAgIHZvaWQgcGFyc2VBY3Rpb24oY29uc3Qg
U3RyaW5nJik7CkBAIC03Niw1MCArNjYsNDYgQEAgcHVibGljOgogICAgICAgICBjb25zdCBTdHJp
bmcmIGFjY2VwdENoYXJzZXQoKSBjb25zdCB7IHJldHVybiBtX2FjY2VwdENoYXJzZXQ7IH0KICAg
ICAgICAgdm9pZCBzZXRBY2NlcHRDaGFyc2V0KGNvbnN0IFN0cmluZyYgdmFsdWUpIHsgbV9hY2Nl
cHRDaGFyc2V0ID0gdmFsdWU7IH0KIAotICAgICAgICB2b2lkIGNvcHlGcm9tKGNvbnN0IEF0dHJp
YnV0ZXMmKTsKLQogICAgIHByaXZhdGU6Ci0gICAgICAgIE1ldGhvZCBtX21ldGhvZDsKLSAgICAg
ICAgYm9vbCBtX2lzTXVsdGlQYXJ0Rm9ybTsKLQorICAgICAgICBNZXRob2QgbV9tZXRob2QgeyBN
ZXRob2Q6OkdldCB9OworICAgICAgICBib29sIG1faXNNdWx0aVBhcnRGb3JtIHsgZmFsc2UgfTsK
ICAgICAgICAgU3RyaW5nIG1fYWN0aW9uOwogICAgICAgICBTdHJpbmcgbV90YXJnZXQ7Ci0gICAg
ICAgIFN0cmluZyBtX2VuY29kaW5nVHlwZTsKKyAgICAgICAgU3RyaW5nIG1fZW5jb2RpbmdUeXBl
IHsgQVNDSUlMaXRlcmFsIHsgImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIgfSB9
OwogICAgICAgICBTdHJpbmcgbV9hY2NlcHRDaGFyc2V0OwogICAgIH07CiAKLSAgICBzdGF0aWMg
UmVmPEZvcm1TdWJtaXNzaW9uPiBjcmVhdGUoSFRNTEZvcm1FbGVtZW50KiwgY29uc3QgQXR0cmli
dXRlcyYsIFBhc3NSZWZQdHI8RXZlbnQ+IGV2ZW50LCBMb2NrSGlzdG9yeSwgRm9ybVN1Ym1pc3Np
b25UcmlnZ2VyKTsKKyAgICBzdGF0aWMgUmVmPEZvcm1TdWJtaXNzaW9uPiBjcmVhdGUoSFRNTEZv
cm1FbGVtZW50JiwgY29uc3QgQXR0cmlidXRlcyYsIEV2ZW50KiwgTG9ja0hpc3RvcnksIEZvcm1T
dWJtaXNzaW9uVHJpZ2dlcik7CiAKICAgICB2b2lkIHBvcHVsYXRlRnJhbWVMb2FkUmVxdWVzdChG
cmFtZUxvYWRSZXF1ZXN0Jik7Ci0gICAgCiAgICAgVVJMIHJlcXVlc3RVUkwoKSBjb25zdDsKIAog
ICAgIE1ldGhvZCBtZXRob2QoKSBjb25zdCB7IHJldHVybiBtX21ldGhvZDsgfQogICAgIGNvbnN0
IFVSTCYgYWN0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9hY3Rpb247IH0KICAgICBjb25zdCBTdHJp
bmcmIHRhcmdldCgpIGNvbnN0IHsgcmV0dXJuIG1fdGFyZ2V0OyB9Ci0gICAgdm9pZCBjbGVhclRh
cmdldCgpIHsgbV90YXJnZXQgPSBTdHJpbmcoKTsgfQogICAgIGNvbnN0IFN0cmluZyYgY29udGVu
dFR5cGUoKSBjb25zdCB7IHJldHVybiBtX2NvbnRlbnRUeXBlOyB9Ci0gICAgRm9ybVN0YXRlKiBz
dGF0ZSgpIGNvbnN0IHsgcmV0dXJuIG1fZm9ybVN0YXRlLmdldCgpOyB9Ci0gICAgRm9ybURhdGEq
IGRhdGEoKSBjb25zdCB7IHJldHVybiBtX2Zvcm1EYXRhLmdldCgpOyB9CisgICAgRm9ybVN0YXRl
JiBzdGF0ZSgpIGNvbnN0IHsgcmV0dXJuIG1fZm9ybVN0YXRlOyB9CisgICAgRm9ybURhdGEmIGRh
dGEoKSBjb25zdCB7IHJldHVybiBtX2Zvcm1EYXRhOyB9CiAgICAgY29uc3QgU3RyaW5nIGJvdW5k
YXJ5KCkgY29uc3QgeyByZXR1cm4gbV9ib3VuZGFyeTsgfQogICAgIExvY2tIaXN0b3J5IGxvY2tI
aXN0b3J5KCkgY29uc3QgeyByZXR1cm4gbV9sb2NrSGlzdG9yeTsgfQogICAgIEV2ZW50KiBldmVu
dCgpIGNvbnN0IHsgcmV0dXJuIG1fZXZlbnQuZ2V0KCk7IH0KLQogICAgIGNvbnN0IFN0cmluZyYg
cmVmZXJyZXIoKSBjb25zdCB7IHJldHVybiBtX3JlZmVycmVyOyB9Ci0gICAgdm9pZCBzZXRSZWZl
cnJlcihjb25zdCBTdHJpbmcmIHJlZmVycmVyKSB7IG1fcmVmZXJyZXIgPSByZWZlcnJlcjsgfQog
ICAgIGNvbnN0IFN0cmluZyYgb3JpZ2luKCkgY29uc3QgeyByZXR1cm4gbV9vcmlnaW47IH0KKwor
ICAgIHZvaWQgY2xlYXJUYXJnZXQoKSB7IG1fdGFyZ2V0ID0geyB9OyB9CisgICAgdm9pZCBzZXRS
ZWZlcnJlcihjb25zdCBTdHJpbmcmIHJlZmVycmVyKSB7IG1fcmVmZXJyZXIgPSByZWZlcnJlcjsg
fQogICAgIHZvaWQgc2V0T3JpZ2luKGNvbnN0IFN0cmluZyYgb3JpZ2luKSB7IG1fb3JpZ2luID0g
b3JpZ2luOyB9CiAKIHByaXZhdGU6Ci0gICAgRm9ybVN1Ym1pc3Npb24oTWV0aG9kLCBjb25zdCBV
UkwmIGFjdGlvbiwgY29uc3QgU3RyaW5nJiB0YXJnZXQsIGNvbnN0IFN0cmluZyYgY29udGVudFR5
cGUsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwgUGFzc1JlZlB0cjxGb3JtRGF0YT4sIGNvbnN0IFN0
cmluZyYgYm91bmRhcnksIExvY2tIaXN0b3J5LCBQYXNzUmVmUHRyPEV2ZW50Pik7CisgICAgRm9y
bVN1Ym1pc3Npb24oTWV0aG9kLCBjb25zdCBVUkwmIGFjdGlvbiwgY29uc3QgU3RyaW5nJiB0YXJn
ZXQsIGNvbnN0IFN0cmluZyYgY29udGVudFR5cGUsIFJlZjxGb3JtU3RhdGU+JiYsIFJlZjxGb3Jt
RGF0YT4mJiwgY29uc3QgU3RyaW5nJiBib3VuZGFyeSwgTG9ja0hpc3RvcnksIEV2ZW50Kik7CiAK
ICAgICAvLyBGSVhNRTogSG9sZCBhbiBpbnN0YW5jZSBvZiBBdHRyaWJ1dGVzIGluc3RlYWQgb2Yg
aW5kaXZpZHVhbCBtZW1iZXJzLgogICAgIE1ldGhvZCBtX21ldGhvZDsKICAgICBVUkwgbV9hY3Rp
b247CiAgICAgU3RyaW5nIG1fdGFyZ2V0OwogICAgIFN0cmluZyBtX2NvbnRlbnRUeXBlOwotICAg
IFJlZlB0cjxGb3JtU3RhdGU+IG1fZm9ybVN0YXRlOwotICAgIFJlZlB0cjxGb3JtRGF0YT4gbV9m
b3JtRGF0YTsKKyAgICBSZWY8Rm9ybVN0YXRlPiBtX2Zvcm1TdGF0ZTsKKyAgICBSZWY8Rm9ybURh
dGE+IG1fZm9ybURhdGE7CiAgICAgU3RyaW5nIG1fYm91bmRhcnk7CiAgICAgTG9ja0hpc3Rvcnkg
bV9sb2NrSGlzdG9yeTsKICAgICBSZWZQdHI8RXZlbnQ+IG1fZXZlbnQ7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0ZyYW1lTG9hZGVyLmNwcAppbmRleCA0Y2ZlYmVmMTFmYmVkMzczODkxMTFiMmIxYjQ0Zjhl
NmZkNzQ0MzQzLi5lNWNjODk1NWQzNmQ0YjA5ODQ0NTc1MjVkNzkxZGRjMjNjYTM5MmI0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAKQEAgLTM2NiwxNyArMzY2LDE1IEBAIHZv
aWQgRnJhbWVMb2FkZXI6OnVybFNlbGVjdGVkKGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmIHBhc3Nl
ZFJlcXVlc3QsIEV2ZW50KiB0cmlnCiAKIHZvaWQgRnJhbWVMb2FkZXI6OnN1Ym1pdEZvcm0oUmVm
PEZvcm1TdWJtaXNzaW9uPiYmIHN1Ym1pc3Npb24pCiB7Ci0gICAgQVNTRVJUKHN1Ym1pc3Npb24t
Pm1ldGhvZCgpID09IEZvcm1TdWJtaXNzaW9uOjpQb3N0TWV0aG9kIHx8IHN1Ym1pc3Npb24tPm1l
dGhvZCgpID09IEZvcm1TdWJtaXNzaW9uOjpHZXRNZXRob2QpOworICAgIEFTU0VSVChzdWJtaXNz
aW9uLT5tZXRob2QoKSA9PSBGb3JtU3VibWlzc2lvbjo6TWV0aG9kOjpQb3N0IHx8IHN1Ym1pc3Np
b24tPm1ldGhvZCgpID09IEZvcm1TdWJtaXNzaW9uOjpNZXRob2Q6OkdldCk7CiAKICAgICAvLyBG
SVhNRTogRmluZCBhIGdvb2Qgc3BvdCBmb3IgdGhlc2UuCi0gICAgQVNTRVJUKHN1Ym1pc3Npb24t
PmRhdGEoKSk7Ci0gICAgQVNTRVJUKHN1Ym1pc3Npb24tPnN0YXRlKCkpOwotICAgIEFTU0VSVCgh
c3VibWlzc2lvbi0+c3RhdGUoKS0+c291cmNlRG9jdW1lbnQoKS0+ZnJhbWUoKSB8fCBzdWJtaXNz
aW9uLT5zdGF0ZSgpLT5zb3VyY2VEb2N1bWVudCgpLT5mcmFtZSgpID09ICZtX2ZyYW1lKTsKKyAg
ICBBU1NFUlQoIXN1Ym1pc3Npb24tPnN0YXRlKCkuc291cmNlRG9jdW1lbnQoKS5mcmFtZSgpIHx8
IHN1Ym1pc3Npb24tPnN0YXRlKCkuc291cmNlRG9jdW1lbnQoKS5mcmFtZSgpID09ICZtX2ZyYW1l
KTsKIAogICAgIGlmICghbV9mcmFtZS5wYWdlKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGlm
IChzdWJtaXNzaW9uLT5zdGF0ZSgpLT5zb3VyY2VEb2N1bWVudCgpLT5wYWdlQ2FjaGVTdGF0ZSgp
ICE9IERvY3VtZW50OjpOb3RJblBhZ2VDYWNoZSkKKyAgICBpZiAoc3VibWlzc2lvbi0+c3RhdGUo
KS5zb3VyY2VEb2N1bWVudCgpLnBhZ2VDYWNoZVN0YXRlKCkgIT0gRG9jdW1lbnQ6Ok5vdEluUGFn
ZUNhY2hlKQogICAgICAgICByZXR1cm47CiAKICAgICBpZiAoc3VibWlzc2lvbi0+YWN0aW9uKCku
aXNFbXB0eSgpKQpAQCAtMzk4LDEyICszOTYsMTIgQEAgdm9pZCBGcmFtZUxvYWRlcjo6c3VibWl0
Rm9ybShSZWY8Rm9ybVN1Ym1pc3Npb24+JiYgc3VibWlzc2lvbikKICAgICAgICAgcmV0dXJuOwog
ICAgIH0KIAotICAgIEZyYW1lKiB0YXJnZXRGcmFtZSA9IGZpbmRGcmFtZUZvck5hdmlnYXRpb24o
c3VibWlzc2lvbi0+dGFyZ2V0KCksIHN1Ym1pc3Npb24tPnN0YXRlKCktPnNvdXJjZURvY3VtZW50
KCkpOworICAgIEZyYW1lKiB0YXJnZXRGcmFtZSA9IGZpbmRGcmFtZUZvck5hdmlnYXRpb24oc3Vi
bWlzc2lvbi0+dGFyZ2V0KCksICZzdWJtaXNzaW9uLT5zdGF0ZSgpLnNvdXJjZURvY3VtZW50KCkp
OwogICAgIGlmICghdGFyZ2V0RnJhbWUpIHsKICAgICAgICAgaWYgKCFET01XaW5kb3c6OmFsbG93
UG9wVXAoJm1fZnJhbWUpICYmICFTY3JpcHRDb250cm9sbGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1
cmUoKSkKICAgICAgICAgICAgIHJldHVybjsKIAotICAgICAgICAvLyBGSVhNRTogdGFyZ2V0RnJh
bWUgY2FuIGJlIDAgZm9yIHR3byBkaXN0aW5jdCByZWFzb25zOgorICAgICAgICAvLyBGSVhNRTog
dGFyZ2V0RnJhbWUgY2FuIGJlIG51bGwgZm9yIHR3byBkaXN0aW5jdCByZWFzb25zOgogICAgICAg
ICAvLyAxLiBUaGUgZnJhbWUgd2FzIG5vdCBmb3VuZCBieSBuYW1lLCBzbyB3ZSBzaG91bGQgdHJ5
IG9wZW5pbmcgYSBuZXcgd2luZG93LgogICAgICAgICAvLyAyLiBUaGUgZnJhbWUgd2FzIGZvdW5k
LCBidXQgbmF2aWdhdGluZyBpdCB3YXMgbm90IGFsbG93ZWQsIGUuZy4gYnkgSFRNTDUgc2FuZGJv
eCBvciBieSBvcmlnaW4gY2hlY2tzLgogICAgICAgICAvLyBDb250aW51aW5nIGZvcm0gc3VibWlz
c2lvbiBtYWtlcyBubyBzZW5zZSBpbiB0aGUgbGF0dGVyIGNhc2UuCkBAIC00MzQsNyArNDMyLDcg
QEAgdm9pZCBGcmFtZUxvYWRlcjo6c3VibWl0Rm9ybShSZWY8Rm9ybVN1Ym1pc3Npb24+JiYgc3Vi
bWlzc2lvbikKICAgICAgICAgbV9zdWJtaXR0ZWRGb3JtVVJMID0gc3VibWlzc2lvbi0+cmVxdWVz
dFVSTCgpOwogICAgIH0KIAotICAgIHN1Ym1pc3Npb24tPmRhdGEoKS0+Z2VuZXJhdGVGaWxlcyht
X2ZyYW1lLmRvY3VtZW50KCkpOworICAgIHN1Ym1pc3Npb24tPmRhdGEoKS5nZW5lcmF0ZUZpbGVz
KG1fZnJhbWUuZG9jdW1lbnQoKSk7CiAgICAgc3VibWlzc2lvbi0+c2V0UmVmZXJyZXIob3V0Z29p
bmdSZWZlcnJlcigpKTsKICAgICBzdWJtaXNzaW9uLT5zZXRPcmlnaW4ob3V0Z29pbmdPcmlnaW4o
KSk7CiAKQEAgLTY2MCwyMCArNjU4LDE4IEBAIHZvaWQgRnJhbWVMb2FkZXI6OnJlY2VpdmVkRmly
c3REYXRhKCkKICAgICBpZiAoIW1fZG9jdW1lbnRMb2FkZXIpCiAgICAgICAgIHJldHVybjsKIAor
ICAgIEFTU0VSVChtX2ZyYW1lLmRvY3VtZW50KCkpOworICAgIGF1dG8mIGRvY3VtZW50ID0gKm1f
ZnJhbWUuZG9jdW1lbnQoKTsKKwogICAgIGRvdWJsZSBkZWxheTsKICAgICBTdHJpbmcgdXJsU3Ry
aW5nOwogICAgIGlmICghcGFyc2VIVFRQUmVmcmVzaChtX2RvY3VtZW50TG9hZGVyLT5yZXNwb25z
ZSgpLmh0dHBIZWFkZXJGaWVsZChIVFRQSGVhZGVyTmFtZTo6UmVmcmVzaCksIGRlbGF5LCB1cmxT
dHJpbmcpKQogICAgICAgICByZXR1cm47Ci0gICAgVVJMIGNvbXBsZXRlZFVSTDsKLSAgICBpZiAo
dXJsU3RyaW5nLmlzRW1wdHkoKSkKLSAgICAgICAgY29tcGxldGVkVVJMID0gbV9mcmFtZS5kb2N1
bWVudCgpLT51cmwoKTsKLSAgICBlbHNlCi0gICAgICAgIGNvbXBsZXRlZFVSTCA9IG1fZnJhbWUu
ZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwodXJsU3RyaW5nKTsKLQorICAgIGF1dG8gY29tcGxldGVk
VVJMID0gdXJsU3RyaW5nLmlzRW1wdHkoKSA/IGRvY3VtZW50LnVybCgpIDogZG9jdW1lbnQuY29t
cGxldGVVUkwodXJsU3RyaW5nKTsKICAgICBpZiAoIXByb3RvY29sSXNKYXZhU2NyaXB0KGNvbXBs
ZXRlZFVSTCkpCi0gICAgICAgIG1fZnJhbWUubmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxl
UmVkaXJlY3QobV9mcmFtZS5kb2N1bWVudCgpLCBkZWxheSwgY29tcGxldGVkVVJMKTsKKyAgICAg
ICAgbV9mcmFtZS5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVSZWRpcmVjdChkb2N1bWVu
dCwgZGVsYXksIGNvbXBsZXRlZFVSTCk7CiAgICAgZWxzZSB7Ci0gICAgICAgIFN0cmluZyBtZXNz
YWdlID0gIlJlZnVzZWQgdG8gcmVmcmVzaCAiICsgbV9mcmFtZS5kb2N1bWVudCgpLT51cmwoKS5z
dHJpbmdDZW50ZXJFbGxpcHNpemVkVG9MZW5ndGgoKSArICIgdG8gYSBqYXZhc2NyaXB0OiBVUkwi
OworICAgICAgICBhdXRvIG1lc3NhZ2UgPSAiUmVmdXNlZCB0byByZWZyZXNoICIgKyBkb2N1bWVu
dC51cmwoKS5zdHJpbmdDZW50ZXJFbGxpcHNpemVkVG9MZW5ndGgoKSArICIgdG8gYSBqYXZhc2Ny
aXB0OiBVUkwiOwogICAgICAgICBtX2ZyYW1lLmRvY3VtZW50KCktPmFkZENvbnNvbGVNZXNzYWdl
KE1lc3NhZ2VTb3VyY2U6OlNlY3VyaXR5LCBNZXNzYWdlTGV2ZWw6OkVycm9yLCBtZXNzYWdlKTsK
ICAgICB9CiB9CkBAIC0xMTM5LDcgKzExMzUsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpsb2FkRnJh
bWVSZXF1ZXN0KGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmIHJlcXVlc3QsIEV2ZW50KiBldmVudAog
ICAgICAgICB8fCBldmVudC0+dGFyZ2V0KCktPnRvTm9kZSgpLT5kb2N1bWVudCgpLnBhZ2VDYWNo
ZVN0YXRlKCkgPT0gRG9jdW1lbnQ6Ok5vdEluUGFnZUNhY2hlKTsKIAogICAgIC8vIFByb3RlY3Qg
ZnJhbWUgZnJvbSBnZXR0aW5nIGJsb3duIGF3YXkgaW5zaWRlIGRpc3BhdGNoQmVmb3JlTG9hZEV2
ZW50IGluIGxvYWRXaXRoRG9jdW1lbnRMb2FkZXIuCi0gICAgUmVmPEZyYW1lPiBwcm90ZWN0KG1f
ZnJhbWUpOworICAgIGF1dG8gcHJvdGVjdEZyYW1lID0gbWFrZVJlZihtX2ZyYW1lKTsKIAogICAg
IFVSTCB1cmwgPSByZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLnVybCgpOwogCkBAIC0xMTcyLDcg
KzExNjgsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpsb2FkRnJhbWVSZXF1ZXN0KGNvbnN0IEZyYW1l
TG9hZFJlcXVlc3QmIHJlcXVlc3QsIEV2ZW50KiBldmVudAogCiAgICAgLy8gRklYTUU6IEl0J3Mg
cG9zc2libGUgdGhpcyB0YXJnZXRGcmFtZSB3aWxsIG5vdCBiZSB0aGUgc2FtZSBmcmFtZSB0aGF0
IHdhcyB0YXJnZXRlZCBieSB0aGUgYWN0dWFsCiAgICAgLy8gbG9hZCBpZiBmcmFtZSBuYW1lcyBo
YXZlIGNoYW5nZWQuCi0gICAgRnJhbWUqIHNvdXJjZUZyYW1lID0gZm9ybVN0YXRlID8gZm9ybVN0
YXRlLT5zb3VyY2VEb2N1bWVudCgpLT5mcmFtZSgpIDogJm1fZnJhbWU7CisgICAgRnJhbWUqIHNv
dXJjZUZyYW1lID0gZm9ybVN0YXRlID8gZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLmZyYW1l
KCkgOiAmbV9mcmFtZTsKICAgICBpZiAoIXNvdXJjZUZyYW1lKQogICAgICAgICBzb3VyY2VGcmFt
ZSA9ICZtX2ZyYW1lOwogICAgIEZyYW1lKiB0YXJnZXRGcmFtZSA9IHNvdXJjZUZyYW1lLT5sb2Fk
ZXIoKS5maW5kRnJhbWVGb3JOYXZpZ2F0aW9uKHJlcXVlc3QuZnJhbWVOYW1lKCkpOwpAQCAtMTI1
Niw3ICsxMjUyLDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6bG9hZFVSTChjb25zdCBGcmFtZUxvYWRS
ZXF1ZXN0JiBmcmFtZUxvYWRSZXF1ZXN0LCBjb25zdCBTdHJpbmcKICAgICAgICAgb2xkRG9jdW1l
bnRMb2FkZXItPnNldExhc3RDaGVja2VkUmVxdWVzdChSZXNvdXJjZVJlcXVlc3QoKSk7CiAgICAg
ICAgIHBvbGljeUNoZWNrZXIoKS5zdG9wQ2hlY2soKTsKICAgICAgICAgcG9saWN5Q2hlY2tlcigp
LnNldExvYWRUeXBlKG5ld0xvYWRUeXBlKTsKLSAgICAgICAgcG9saWN5Q2hlY2tlcigpLmNoZWNr
TmF2aWdhdGlvblBvbGljeShyZXF1ZXN0LCBmYWxzZSAvKiBkaWRSZWNlaXZlUmVkaXJlY3RSZXNw
b25zZSAqLywgb2xkRG9jdW1lbnRMb2FkZXIuZ2V0KCksIGZvcm1TdGF0ZSwgW3RoaXNdKGNvbnN0
IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiwgYm9vbCBzaG91bGRDb250aW51
ZSkgeworICAgICAgICBwb2xpY3lDaGVja2VyKCkuY2hlY2tOYXZpZ2F0aW9uUG9saWN5KHJlcXVl
c3QsIGZhbHNlIC8qIGRpZFJlY2VpdmVSZWRpcmVjdFJlc3BvbnNlICovLCBvbGREb2N1bWVudExv
YWRlci5nZXQoKSwgZm9ybVN0YXRlLCBbdGhpc10gKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVx
dWVzdCwgRm9ybVN0YXRlKiwgYm9vbCBzaG91bGRDb250aW51ZSkgewogICAgICAgICAgICAgY29u
dGludWVGcmFnbWVudFNjcm9sbEFmdGVyTmF2aWdhdGlvblBvbGljeShyZXF1ZXN0LCBzaG91bGRD
b250aW51ZSk7CiAgICAgICAgIH0pOwogICAgICAgICByZXR1cm47CkBAIC0xNDUyLDcgKzE0NDgs
NyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpsb2FkV2l0aERvY3VtZW50TG9hZGVyKERvY3VtZW50TG9h
ZGVyKiBsb2FkZXIsIEZyYW1lTG9hZFR5cGUgdAogICAgICAgICBvbGREb2N1bWVudExvYWRlci0+
c2V0VHJpZ2dlcmluZ0FjdGlvbihhY3Rpb24pOwogICAgICAgICBvbGREb2N1bWVudExvYWRlci0+
c2V0TGFzdENoZWNrZWRSZXF1ZXN0KFJlc291cmNlUmVxdWVzdCgpKTsKICAgICAgICAgcG9saWN5
Q2hlY2tlcigpLnN0b3BDaGVjaygpOwotICAgICAgICBwb2xpY3lDaGVja2VyKCkuY2hlY2tOYXZp
Z2F0aW9uUG9saWN5KGxvYWRlci0+cmVxdWVzdCgpLCBmYWxzZSAvKiBkaWRSZWNlaXZlUmVkaXJl
Y3RSZXNwb25zZSAqLywgb2xkRG9jdW1lbnRMb2FkZXIuZ2V0KCksIGZvcm1TdGF0ZSwgW3RoaXNd
KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiwgYm9vbCBzaG91bGRD
b250aW51ZSkgeworICAgICAgICBwb2xpY3lDaGVja2VyKCkuY2hlY2tOYXZpZ2F0aW9uUG9saWN5
KGxvYWRlci0+cmVxdWVzdCgpLCBmYWxzZSAvKiBkaWRSZWNlaXZlUmVkaXJlY3RSZXNwb25zZSAq
Lywgb2xkRG9jdW1lbnRMb2FkZXIuZ2V0KCksIGZvcm1TdGF0ZSwgW3RoaXNdIChjb25zdCBSZXNv
dXJjZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSosIGJvb2wgc2hvdWxkQ29udGludWUpIHsK
ICAgICAgICAgICAgIGNvbnRpbnVlRnJhZ21lbnRTY3JvbGxBZnRlck5hdmlnYXRpb25Qb2xpY3ko
cmVxdWVzdCwgc2hvdWxkQ29udGludWUpOwogICAgICAgICB9KTsKICAgICAgICAgcmV0dXJuOwpA
QCAtMTQ3OSw3ICsxNDc1LDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6bG9hZFdpdGhEb2N1bWVudExv
YWRlcihEb2N1bWVudExvYWRlciogbG9hZGVyLCBGcmFtZUxvYWRUeXBlIHQKICAgICAgICAgfQog
ICAgIH0KIAotICAgIHBvbGljeUNoZWNrZXIoKS5jaGVja05hdmlnYXRpb25Qb2xpY3kobG9hZGVy
LT5yZXF1ZXN0KCksIGZhbHNlIC8qIGRpZFJlY2VpdmVSZWRpcmVjdFJlc3BvbnNlICovLCBsb2Fk
ZXIsIGZvcm1TdGF0ZSwgW3RoaXMsIGFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTF0oY29uc3Qg
UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBGb3JtU3RhdGUqIGZvcm1TdGF0ZSwgYm9vbCBzaG91
bGRDb250aW51ZSkgeworICAgIHBvbGljeUNoZWNrZXIoKS5jaGVja05hdmlnYXRpb25Qb2xpY3ko
bG9hZGVyLT5yZXF1ZXN0KCksIGZhbHNlIC8qIGRpZFJlY2VpdmVSZWRpcmVjdFJlc3BvbnNlICov
LCBsb2FkZXIsIGZvcm1TdGF0ZSwgW3RoaXMsIGFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTF0g
KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIGJv
b2wgc2hvdWxkQ29udGludWUpIHsKICAgICAgICAgY29udGludWVMb2FkQWZ0ZXJOYXZpZ2F0aW9u
UG9saWN5KHJlcXVlc3QsIGZvcm1TdGF0ZSwgc2hvdWxkQ29udGludWUsIGFsbG93TmF2aWdhdGlv
blRvSW52YWxpZFVSTCk7CiAgICAgfSk7CiB9CkBAIC0yNzExLDcgKzI3MDcsNyBAQCB2b2lkIEZy
YW1lTG9hZGVyOjpsb2FkUG9zdFJlcXVlc3QoY29uc3QgRnJhbWVMb2FkUmVxdWVzdCYgcmVxdWVz
dCwgY29uc3QgU3RyaW5nJgogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAKLSAgICAg
ICAgcG9saWN5Q2hlY2tlcigpLmNoZWNrTmV3V2luZG93UG9saWN5KGFjdGlvbiwgd29ya2luZ1Jl
c291cmNlUmVxdWVzdCwgV1RGTW92ZShmb3JtU3RhdGUpLCBmcmFtZU5hbWUsIFt0aGlzLCBhbGxv
d05hdmlnYXRpb25Ub0ludmFsaWRVUkwsIG9wZW5lclBvbGljeV0oY29uc3QgUmVzb3VyY2VSZXF1
ZXN0JiByZXF1ZXN0LCBGb3JtU3RhdGUqIGZvcm1TdGF0ZSwgY29uc3QgU3RyaW5nJiBmcmFtZU5h
bWUsIGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIGFjdGlvbiwgYm9vbCBzaG91bGRDb250aW51ZSkg
eworICAgICAgICBwb2xpY3lDaGVja2VyKCkuY2hlY2tOZXdXaW5kb3dQb2xpY3koYWN0aW9uLCB3
b3JraW5nUmVzb3VyY2VSZXF1ZXN0LCBXVEZNb3ZlKGZvcm1TdGF0ZSksIGZyYW1lTmFtZSwgW3Ro
aXMsIGFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTCwgb3BlbmVyUG9saWN5XSAoY29uc3QgUmVz
b3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBGb3JtU3RhdGUqIGZvcm1TdGF0ZSwgY29uc3QgU3RyaW5n
JiBmcmFtZU5hbWUsIGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIGFjdGlvbiwgYm9vbCBzaG91bGRD
b250aW51ZSkgewogICAgICAgICAgICAgY29udGludWVMb2FkQWZ0ZXJOZXdXaW5kb3dQb2xpY3ko
cmVxdWVzdCwgZm9ybVN0YXRlLCBmcmFtZU5hbWUsIGFjdGlvbiwgc2hvdWxkQ29udGludWUsIGFs
bG93TmF2aWdhdGlvblRvSW52YWxpZFVSTCwgb3BlbmVyUG9saWN5KTsKICAgICAgICAgfSk7CiAg
ICAgICAgIHJldHVybjsKQEAgLTI3NjksMTEgKzI3NjUsMTEgQEAgdW5zaWduZWQgbG9uZyBGcmFt
ZUxvYWRlcjo6bG9hZFJlc291cmNlU3luY2hyb25vdXNseShjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
IHJlcXUKICAgICBpZiAoZXJyb3IuaXNOdWxsKCkpIHsKICAgICAgICAgQVNTRVJUKCFuZXdSZXF1
ZXN0LmlzTnVsbCgpKTsKIAotICAgICAgICBpZiAoIWRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0
aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZFN5bmNocm9ub3VzbHkobmV3UmVxdWVzdCwgZXJyb3Is
IHJlc3BvbnNlLCBkYXRhKSkgeworICAgICAgICBpZiAoIWRvY3VtZW50TG9hZGVyKCktPmFwcGxp
Y2F0aW9uQ2FjaGVIb3N0KCkubWF5YmVMb2FkU3luY2hyb25vdXNseShuZXdSZXF1ZXN0LCBlcnJv
ciwgcmVzcG9uc2UsIGRhdGEpKSB7CiAgICAgICAgICAgICBWZWN0b3I8Y2hhcj4gYnVmZmVyOwog
ICAgICAgICAgICAgcGxhdGZvcm1TdHJhdGVnaWVzKCktPmxvYWRlclN0cmF0ZWd5KCktPmxvYWRS
ZXNvdXJjZVN5bmNocm9ub3VzbHkobmV0d29ya2luZ0NvbnRleHQoKSwgaWRlbnRpZmllciwgbmV3
UmVxdWVzdCwgc3RvcmVkQ3JlZGVudGlhbHMsIGNsaWVudENyZWRlbnRpYWxQb2xpY3ksIGVycm9y
LCByZXNwb25zZSwgYnVmZmVyKTsKICAgICAgICAgICAgIGRhdGEgPSBTaGFyZWRCdWZmZXI6OmFk
b3B0VmVjdG9yKGJ1ZmZlcik7Ci0gICAgICAgICAgICBkb2N1bWVudExvYWRlcigpLT5hcHBsaWNh
dGlvbkNhY2hlSG9zdCgpLT5tYXliZUxvYWRGYWxsYmFja1N5bmNocm9ub3VzbHkobmV3UmVxdWVz
dCwgZXJyb3IsIHJlc3BvbnNlLCBkYXRhKTsKKyAgICAgICAgICAgIGRvY3VtZW50TG9hZGVyKCkt
PmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWF5YmVMb2FkRmFsbGJhY2tTeW5jaHJvbm91c2x5KG5l
d1JlcXVlc3QsIGVycm9yLCByZXNwb25zZSwgZGF0YSk7CiAgICAgICAgICAgICBSZXNvdXJjZUxv
YWRPYnNlcnZlcjo6c2hhcmVkT2JzZXJ2ZXIoKS5sb2dTdWJyZXNvdXJjZUxvYWRpbmcoJm1fZnJh
bWUsIG5ld1JlcXVlc3QsIHJlc3BvbnNlKTsKICAgICAgICAgfQogICAgIH0KQEAgLTMxMDgsNyAr
MzEwNCw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6OmNvbnRpbnVlTG9hZEFmdGVyTmF2aWdhdGlvblBv
bGljeShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlCiAgICAgICAgIHJldHVybjsKICAgICB9
CiAKLSAgICBtX2NsaWVudC5kaXNwYXRjaFdpbGxTdWJtaXRGb3JtKGZvcm1TdGF0ZSwgW3RoaXNd
KFBvbGljeUFjdGlvbiBhY3Rpb24pIHsKKyAgICBtX2NsaWVudC5kaXNwYXRjaFdpbGxTdWJtaXRG
b3JtKCpmb3JtU3RhdGUsIFt0aGlzXSAoUG9saWN5QWN0aW9uIGFjdGlvbikgewogICAgICAgICBw
b2xpY3lDaGVja2VyKCkuY29udGludWVMb2FkQWZ0ZXJXaWxsU3VibWl0Rm9ybShhY3Rpb24pOwog
ICAgIH0pOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVy
Q2xpZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaAppbmRl
eCBkMTNiMGEwNzlkZTk5ZjM4NzcwNTUyNDc4YTdmYmIzMjA4OGQ5Y2Y1Li5hODA5NDdiZTdmZGMy
MDBlYjBjMjEyMGEzMGM2ZDk0OTUwNzkxNjhhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJh
bWVMb2FkZXJDbGllbnQuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MDYtMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMp
IDIwMDYtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQg
KEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKQEAgLTE3NywxNCArMTc3LDE0IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0
Y2hTaG93KCkgPSAwOwogCiAgICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9y
UmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYs
IEZyYW1lUG9saWN5RnVuY3Rpb24pID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hEZWNp
ZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0
IFJlc291cmNlUmVxdWVzdCYsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwgY29uc3QgU3RyaW5nJiBm
cmFtZU5hbWUsIEZyYW1lUG9saWN5RnVuY3Rpb24pID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgZGlz
cGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rp
b24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIEZyYW1l
UG9saWN5RnVuY3Rpb24pID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xp
Y3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJlc291
cmNlUmVxdWVzdCYsIEZvcm1TdGF0ZSosIGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBGcmFtZVBv
bGljeUZ1bmN0aW9uKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5
Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgUmVzb3Vy
Y2VSZXF1ZXN0JiwgRm9ybVN0YXRlKiwgRnJhbWVQb2xpY3lGdW5jdGlvbikgPSAwOwogICAgIHZp
cnR1YWwgdm9pZCBjYW5jZWxQb2xpY3lDaGVjaygpID0gMDsKIAogICAgIHZpcnR1YWwgdm9pZCBk
aXNwYXRjaFVuYWJsZVRvSW1wbGVtZW50UG9saWN5KGNvbnN0IFJlc291cmNlRXJyb3ImKSA9IDA7
CiAKLSAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFBhc3NSZWZQ
dHI8Rm9ybVN0YXRlPikgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaFdpbGxTdWJtaXRG
b3JtKFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwgRnJhbWVQb2xpY3lGdW5jdGlvbikgPSAwOworICAg
IHZpcnR1YWwgdm9pZCBkaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoUmVmPEZvcm1TdGF0ZT4m
JikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKEZvcm1TdGF0
ZSYsIEZyYW1lUG9saWN5RnVuY3Rpb24pID0gMDsKIAogICAgIHZpcnR1YWwgdm9pZCByZXZlcnRU
b1Byb3Zpc2lvbmFsU3RhdGUoRG9jdW1lbnRMb2FkZXIqKSA9IDA7CiAgICAgdmlydHVhbCB2b2lk
IHNldE1haW5Eb2N1bWVudEVycm9yKERvY3VtZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VFcnJv
ciYpID0gMDsKQEAgLTI3MiwxNCArMjcyLDEyIEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIGJvb2wg
Y2FuQ2FjaGVQYWdlKCkgY29uc3QgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBjb252ZXJ0TWFpblJl
c291cmNlTG9hZFRvRG93bmxvYWQoRG9jdW1lbnRMb2FkZXIqLCBTZXNzaW9uSUQsIGNvbnN0IFJl
c291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSA9IDA7CiAKLSAgICB2aXJ0
dWFsIFJlZlB0cjxGcmFtZT4gY3JlYXRlRnJhbWUoY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiBu
YW1lLCBIVE1MRnJhbWVPd25lckVsZW1lbnQqLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBib29s
IGFsbG93c1Njcm9sbGluZywgaW50IG1hcmdpbldpZHRoLCBpbnQgbWFyZ2luSGVpZ2h0KSA9IDA7
Ci0gICAgdmlydHVhbCBSZWZQdHI8V2lkZ2V0PiBjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYs
IEhUTUxQbHVnSW5FbGVtZW50KiwgY29uc3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBj
b25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFN0cmluZyYsIGJvb2wgbG9hZE1hbnVhbGx5KSA9
IDA7CisgICAgdmlydHVhbCBSZWZQdHI8RnJhbWU+IGNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYsIGNv
bnN0IFN0cmluZyYgbmFtZSwgSFRNTEZyYW1lT3duZXJFbGVtZW50JiwgY29uc3QgU3RyaW5nJiBy
ZWZlcnJlciwgYm9vbCBhbGxvd3NTY3JvbGxpbmcsIGludCBtYXJnaW5XaWR0aCwgaW50IG1hcmdp
bkhlaWdodCkgPSAwOworICAgIHZpcnR1YWwgUmVmUHRyPFdpZGdldD4gY3JlYXRlUGx1Z2luKGNv
bnN0IEludFNpemUmLCBIVE1MUGx1Z0luRWxlbWVudCYsIGNvbnN0IFVSTCYsIGNvbnN0IFZlY3Rv
cjxTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBTdHJpbmcmLCBib29sIGxv
YWRNYW51YWxseSkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCByZWNyZWF0ZVBsdWdpbihXaWRnZXQq
KSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHJlZGlyZWN0RGF0YVRvUGx1Z2luKFdpZGdldCogcGx1
Z2luV2lkZ2V0KSA9IDA7CiAKLSAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8V2lkZ2V0PiBjcmVhdGVK
YXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmLCBIVE1MQXBwbGV0RWxlbWVudCosIGNvbnN0
IFVSTCYgYmFzZVVSTCwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZl
Y3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykgPSAwOwotCi0gICAgdmlydHVhbCB2b2lkIGRpc3Bh
dGNoRGlkRmFpbFRvU3RhcnRQbHVnaW4oY29uc3QgUGx1Z2luVmlld0Jhc2UqKSBjb25zdCB7IH0K
KyAgICB2aXJ0dWFsIFJlZlB0cjxXaWRnZXQ+IGNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3Qg
SW50U2l6ZSYsIEhUTUxBcHBsZXRFbGVtZW50JiwgY29uc3QgVVJMJiBiYXNlVVJMLCBjb25zdCBW
ZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFs
dWVzKSA9IDA7CiAKICAgICB2aXJ0dWFsIE9iamVjdENvbnRlbnRUeXBlIG9iamVjdENvbnRlbnRU
eXBlKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUpID0gMDsKICAgICB2aXJ0dWFs
IFN0cmluZyBvdmVycmlkZU1lZGlhVHlwZSgpIGNvbnN0ID0gMDsKQEAgLTI5NCw2ICsyOTIsNyBA
QCBwdWJsaWM6CiAgICAgdmlydHVhbCBOU0NhY2hlZFVSTFJlc3BvbnNlKiB3aWxsQ2FjaGVSZXNw
b25zZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgTlNDYWNoZWRV
UkxSZXNwb25zZSopIGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIE5TRGljdGlvbmFyeSAqZGF0YURl
dGVjdGlvbkNvbnRleHQoKSB7IHJldHVybiBudWxscHRyOyB9CiAjZW5kaWYKKwogI2lmIFBMQVRG
T1JNKFdJTikgJiYgVVNFKENGVVJMQ09OTkVDVElPTikKICAgICAvLyBGSVhNRTogV2luZG93cyBz
aG91bGQgdXNlIHdpbGxDYWNoZVJlc3BvbnNlIC0gPGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD01NzI1Nz4uCiAgICAgdmlydHVhbCBib29sIHNob3VsZENhY2hlUmVzcG9u
c2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmLCBjb25zdCB1bnNpZ25lZCBjaGFyKiBkYXRhLCB1bnNpZ25lZCBsb25nIGxv
bmcgbGVuZ3RoKSA9IDA7CkBAIC0zMDksMTAgKzMwOCwxMCBAQCBwdWJsaWM6CiAgICAgLy8gQ2xp
ZW50cyB0aGF0IGdlbmVyYWxseSBkaXNhbGxvdyB1bml2ZXJzYWwgYWNjZXNzIGNhbiBtYWtlIGV4
Y2VwdGlvbnMgZm9yIHBhcnRpY3VsYXIgVVJMcy4KICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkRm9y
Y2VVbml2ZXJzYWxBY2Nlc3NGcm9tTG9jYWxVUkwoY29uc3QgVVJMJikgeyByZXR1cm4gZmFsc2U7
IH0KIAotICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBjcmVh
dGVOZXR3b3JraW5nQ29udGV4dCgpID0gMDsKKyAgICB2aXJ0dWFsIFJlZjxGcmFtZU5ldHdvcmtp
bmdDb250ZXh0PiBjcmVhdGVOZXR3b3JraW5nQ29udGV4dCgpID0gMDsKIAogI2lmIEVOQUJMRShS
RVFVRVNUX0FVVE9DT01QTEVURSkKLSAgICB2aXJ0dWFsIHZvaWQgZGlkUmVxdWVzdEF1dG9jb21w
bGV0ZShQYXNzUmVmUHRyPEZvcm1TdGF0ZT4pID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZGlkUmVx
dWVzdEF1dG9jb21wbGV0ZShSZWY8Rm9ybVN0YXRlPiYmKSA9IDA7CiAjZW5kaWYKIAogICAgIHZp
cnR1YWwgYm9vbCBzaG91bGRQYWludEJyb2tlbkltYWdlKGNvbnN0IFVSTCYpIGNvbnN0IHsgcmV0
dXJuIHRydWU7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9IaXN0b3J5Q29u
dHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvSGlzdG9yeUNvbnRyb2xsZXIuY3Bw
CmluZGV4IDI5NWI5NGExYTU1NWIyYTI4ZTc1MDM2YzZiMWQwMjU3MDcyOTk3Y2MuLjI2YTRiMzM5
NmQxZTg3YTAwNjNlMGI0YzBjYTA2NjkyMjA0YTkzNzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9IaXN0b3J5Q29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0hpc3RvcnlDb250cm9sbGVyLmNwcApAQCAtODQ2LDcgKzg0Niw3IEBAIHZvaWQgSGlzdG9y
eUNvbnRyb2xsZXI6OnVwZGF0ZUN1cnJlbnRJdGVtKCkKICAgICB9CiB9CiAKLXZvaWQgSGlzdG9y
eUNvbnRyb2xsZXI6OnB1c2hTdGF0ZShQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4g
c3RhdGVPYmplY3QsIGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgdXJsU3RyaW5n
KQordm9pZCBIaXN0b3J5Q29udHJvbGxlcjo6cHVzaFN0YXRlKFJlZlB0cjxTZXJpYWxpemVkU2Ny
aXB0VmFsdWU+JiYgc3RhdGVPYmplY3QsIGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0cmlu
ZyYgdXJsU3RyaW5nKQogewogICAgIGlmICghbV9jdXJyZW50SXRlbSkKICAgICAgICAgcmV0dXJu
OwpAQCAtODYwLDcgKzg2MCw3IEBAIHZvaWQgSGlzdG9yeUNvbnRyb2xsZXI6OnB1c2hTdGF0ZShQ
YXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gc3RhdGVPYmplY3QsCiAgICAgLy8gT3Zl
cnJpZGUgZGF0YSBpbiB0aGUgY3VycmVudCBpdGVtIChjcmVhdGVkIGJ5IGNyZWF0ZUl0ZW1UcmVl
KSB0byByZWZsZWN0CiAgICAgLy8gdGhlIHB1c2hTdGF0ZSgpIGFyZ3VtZW50cy4KICAgICBtX2N1
cnJlbnRJdGVtLT5zZXRUaXRsZSh0aXRsZSk7Ci0gICAgbV9jdXJyZW50SXRlbS0+c2V0U3RhdGVP
YmplY3Qoc3RhdGVPYmplY3QpOworICAgIG1fY3VycmVudEl0ZW0tPnNldFN0YXRlT2JqZWN0KFdU
Rk1vdmUoc3RhdGVPYmplY3QpKTsKICAgICBtX2N1cnJlbnRJdGVtLT5zZXRVUkxTdHJpbmcodXJs
U3RyaW5nKTsKIAogICAgIExPRyhIaXN0b3J5LCAiSGlzdG9yeUNvbnRyb2xsZXIgJXAgcHVzaFN0
YXRlOiBBZGRpbmcgdG9wIGl0ZW0gJXAsIHNldHRpbmcgdXJsIG9mIGN1cnJlbnQgaXRlbSAlcCB0
byAlcyIsIHRoaXMsIHRvcEl0ZW0ucHRyKCksIG1fY3VycmVudEl0ZW0uZ2V0KCksIHVybFN0cmlu
Zy5hc2NpaSgpLmRhdGEoKSk7CkBAIC04NzQsNyArODc0LDcgQEAgdm9pZCBIaXN0b3J5Q29udHJv
bGxlcjo6cHVzaFN0YXRlKFBhc3NSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiBzdGF0ZU9i
amVjdCwKICAgICBtX2ZyYW1lLmxvYWRlcigpLmNsaWVudCgpLnVwZGF0ZUdsb2JhbEhpc3Rvcnko
KTsKIH0KIAotdm9pZCBIaXN0b3J5Q29udHJvbGxlcjo6cmVwbGFjZVN0YXRlKFBhc3NSZWZQdHI8
U2VyaWFsaXplZFNjcmlwdFZhbHVlPiBzdGF0ZU9iamVjdCwgY29uc3QgU3RyaW5nJiB0aXRsZSwg
Y29uc3QgU3RyaW5nJiB1cmxTdHJpbmcpCit2b2lkIEhpc3RvcnlDb250cm9sbGVyOjpyZXBsYWNl
U3RhdGUoUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4mJiBzdGF0ZU9iamVjdCwgY29uc3Qg
U3RyaW5nJiB0aXRsZSwgY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcpCiB7CiAgICAgaWYgKCFtX2N1
cnJlbnRJdGVtKQogICAgICAgICByZXR1cm47CkBAIC04ODQsNyArODg0LDcgQEAgdm9pZCBIaXN0
b3J5Q29udHJvbGxlcjo6cmVwbGFjZVN0YXRlKFBhc3NSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZh
bHVlPiBzdGF0ZU9iamUKICAgICBpZiAoIXVybFN0cmluZy5pc0VtcHR5KCkpCiAgICAgICAgIG1f
Y3VycmVudEl0ZW0tPnNldFVSTFN0cmluZyh1cmxTdHJpbmcpOwogICAgIG1fY3VycmVudEl0ZW0t
PnNldFRpdGxlKHRpdGxlKTsKLSAgICBtX2N1cnJlbnRJdGVtLT5zZXRTdGF0ZU9iamVjdChzdGF0
ZU9iamVjdCk7CisgICAgbV9jdXJyZW50SXRlbS0+c2V0U3RhdGVPYmplY3QoV1RGTW92ZShzdGF0
ZU9iamVjdCkpOwogICAgIG1fY3VycmVudEl0ZW0tPnNldEZvcm1EYXRhKG51bGxwdHIpOwogICAg
IG1fY3VycmVudEl0ZW0tPnNldEZvcm1Db250ZW50VHlwZShTdHJpbmcoKSk7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9IaXN0b3J5Q29udHJvbGxlci5oIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmgKaW5kZXggMTBmZjFmMTRhMzNlZjc2Yjkw
YmZkMTNkNDY1MjhjNzg3NWY1ZWJkNS4uM2QyNWUyODliMjJmYjFmOTk2M2Y2ZGZiMzM0Nzg5NTgx
ZDA5MjcwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0hpc3RvcnlDb250cm9s
bGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmgKQEAg
LTg0LDggKzg0LDggQEAgcHVibGljOgogICAgIEhpc3RvcnlJdGVtKiBwcm92aXNpb25hbEl0ZW0o
KSBjb25zdCB7IHJldHVybiBtX3Byb3Zpc2lvbmFsSXRlbS5nZXQoKTsgfQogICAgIHZvaWQgc2V0
UHJvdmlzaW9uYWxJdGVtKEhpc3RvcnlJdGVtKik7CiAKLSAgICB2b2lkIHB1c2hTdGF0ZShQYXNz
UmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4sIGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0
IFN0cmluZyYgdXJsKTsKLSAgICB2b2lkIHJlcGxhY2VTdGF0ZShQYXNzUmVmUHRyPFNlcmlhbGl6
ZWRTY3JpcHRWYWx1ZT4sIGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgdXJsKTsK
KyAgICB2b2lkIHB1c2hTdGF0ZShSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiYmLCBjb25z
dCBTdHJpbmcmIHRpdGxlLCBjb25zdCBTdHJpbmcmIHVybCk7CisgICAgdm9pZCByZXBsYWNlU3Rh
dGUoUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4mJiwgY29uc3QgU3RyaW5nJiB0aXRsZSwg
Y29uc3QgU3RyaW5nJiB1cmwpOwogCiAgICAgdm9pZCBzZXREZWZlcnNMb2FkaW5nKGJvb2wpOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvSW1hZ2VMb2FkZXIuY3BwIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL0ltYWdlTG9hZGVyLmNwcAppbmRleCBhNTNhZjExYmI5ZjkzYmEy
YTgxMjNkYjFhODEwZjM4ODc5OTZmZGM1Li4xYjJmYzFiYjQ5N2M3ZDQ5MTlkMTljNjM5YWMwZWY3
MjhlY2UwNzkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvSW1hZ2VMb2FkZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9JbWFnZUxvYWRlci5jcHAKQEAgLTE3OCw3
ICsxNzgsNyBAQCB2b2lkIEltYWdlTG9hZGVyOjp1cGRhdGVGcm9tRWxlbWVudCgpCiAgICAgICAg
IG9wdGlvbnMuc2FtZU9yaWdpbkRhdGFVUkxGbGFnID0gU2FtZU9yaWdpbkRhdGFVUkxGbGFnOjpT
ZXQ7CiAKICAgICAgICAgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QoUmVzb3VyY2VSZXF1
ZXN0KGRvY3VtZW50LmNvbXBsZXRlVVJMKHNvdXJjZVVSSShhdHRyKSkpLCBvcHRpb25zKTsKLSAg
ICAgICAgcmVxdWVzdC5zZXRJbml0aWF0b3IoJmVsZW1lbnQoKSk7CisgICAgICAgIHJlcXVlc3Qu
c2V0SW5pdGlhdG9yKGVsZW1lbnQoKSk7CiAKICAgICAgICAgcmVxdWVzdC5zZXRBc1BvdGVudGlh
bGx5Q3Jvc3NPcmlnaW4oZWxlbWVudCgpLmF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24o
SFRNTE5hbWVzOjpjcm9zc29yaWdpbkF0dHIpLCBkb2N1bWVudCk7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmNwcAppbmRleCA3ZWZmYWQ3ZmExYzVhYTM0
NDZlYWMwMDI5NjE4ZjEyYmI1NzViNGU1Li41Njk3NzUzMmI4YjEyYmUwOGE2MTljZDNmYjFjMTg3
NWQzYjc2ZWIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvblNj
aGVkdWxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL05hdmlnYXRpb25TY2hlZHVs
ZXIuY3BwCkBAIC02OCw2ICs2OCwxNiBAQCBwdWJsaWM6CiAgICAgICAgICwgbV91c2VyR2VzdHVy
ZVRvRm9yd2FyZChVc2VyR2VzdHVyZUluZGljYXRvcjo6Y3VycmVudFVzZXJHZXN0dXJlKCkpCiAg
ICAgewogICAgIH0KKyAgICBTY2hlZHVsZWROYXZpZ2F0aW9uKGRvdWJsZSBkZWxheSwgTG9ja0hp
c3RvcnkgbG9ja0hpc3RvcnksIExvY2tCYWNrRm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3YXJkTGlz
dCwgYm9vbCB3YXNEdXJpbmdMb2FkLCBib29sIGlzTG9jYXRpb25DaGFuZ2UsIFNob3VsZE9wZW5F
eHRlcm5hbFVSTHNQb2xpY3kgZXh0ZXJuYWxVUkxQb2xpY3kpCisgICAgICAgIDogbV9kZWxheShk
ZWxheSkKKyAgICAgICAgLCBtX2xvY2tIaXN0b3J5KGxvY2tIaXN0b3J5KQorICAgICAgICAsIG1f
bG9ja0JhY2tGb3J3YXJkTGlzdChsb2NrQmFja0ZvcndhcmRMaXN0KQorICAgICAgICAsIG1fd2Fz
RHVyaW5nTG9hZCh3YXNEdXJpbmdMb2FkKQorICAgICAgICAsIG1faXNMb2NhdGlvbkNoYW5nZShp
c0xvY2F0aW9uQ2hhbmdlKQorICAgICAgICAsIG1fdXNlckdlc3R1cmVUb0ZvcndhcmQoVXNlckdl
c3R1cmVJbmRpY2F0b3I6OmN1cnJlbnRVc2VyR2VzdHVyZSgpKQorICAgICAgICAsIG1fc2hvdWxk
T3BlbkV4dGVybmFsVVJMc1BvbGljeShleHRlcm5hbFVSTFBvbGljeSkKKyAgICB7CisgICAgfQog
ICAgIHZpcnR1YWwgflNjaGVkdWxlZE5hdmlnYXRpb24oKSB7IH0KIAogICAgIHZpcnR1YWwgdm9p
ZCBmaXJlKEZyYW1lJikgPSAwOwpAQCAtODEsMTIgKzkxLDExIEBAIHB1YmxpYzoKICAgICBMb2Nr
QmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QoKSBjb25zdCB7IHJldHVybiBtX2xv
Y2tCYWNrRm9yd2FyZExpc3Q7IH0KICAgICBib29sIHdhc0R1cmluZ0xvYWQoKSBjb25zdCB7IHJl
dHVybiBtX3dhc0R1cmluZ0xvYWQ7IH0KICAgICBib29sIGlzTG9jYXRpb25DaGFuZ2UoKSBjb25z
dCB7IHJldHVybiBtX2lzTG9jYXRpb25DaGFuZ2U7IH0KLSAgICBSZWZQdHI8VXNlckdlc3R1cmVU
b2tlbj4gdXNlckdlc3R1cmVUb0ZvcndhcmQoKSBjb25zdCB7IHJldHVybiBtX3VzZXJHZXN0dXJl
VG9Gb3J3YXJkOyB9CisgICAgVXNlckdlc3R1cmVUb2tlbiogdXNlckdlc3R1cmVUb0ZvcndhcmQo
KSBjb25zdCB7IHJldHVybiBtX3VzZXJHZXN0dXJlVG9Gb3J3YXJkLmdldCgpOyB9CiAKIHByb3Rl
Y3RlZDoKICAgICB2b2lkIGNsZWFyVXNlckdlc3R1cmUoKSB7IG1fdXNlckdlc3R1cmVUb0Zvcndh
cmQgPSBudWxscHRyOyB9Ci0KLSAgICBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5IG1fc2hv
dWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSB7IFNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3k6
OlNob3VsZE5vdEFsbG93IH07CisgICAgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSBzaG91
bGRPcGVuRXh0ZXJuYWxVUkxzKCkgY29uc3QgeyByZXR1cm4gbV9zaG91bGRPcGVuRXh0ZXJuYWxV
UkxzUG9saWN5OyB9CiAKIHByaXZhdGU6CiAgICAgZG91YmxlIG1fZGVsYXk7CkBAIC05NSwxOSAr
MTA0LDE3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX3dhc0R1cmluZ0xvYWQ7CiAgICAgYm9vbCBt
X2lzTG9jYXRpb25DaGFuZ2U7CiAgICAgUmVmUHRyPFVzZXJHZXN0dXJlVG9rZW4+IG1fdXNlckdl
c3R1cmVUb0ZvcndhcmQ7CisgICAgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSBtX3Nob3Vs
ZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgeyBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5OjpT
aG91bGROb3RBbGxvdyB9OwogfTsKIAogY2xhc3MgU2NoZWR1bGVkVVJMTmF2aWdhdGlvbiA6IHB1
YmxpYyBTY2hlZHVsZWROYXZpZ2F0aW9uIHsKIHByb3RlY3RlZDoKLSAgICBTY2hlZHVsZWRVUkxO
YXZpZ2F0aW9uKERvY3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQsIGRvdWJsZSBkZWxheSwgU2Vj
dXJpdHlPcmlnaW4qIHNlY3VyaXR5T3JpZ2luLCBjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5n
JiByZWZlcnJlciwgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnksIExvY2tCYWNrRm9yd2FyZExpc3Qg
bG9ja0JhY2tGb3J3YXJkTGlzdCwgYm9vbCBkdXJpbmdMb2FkLCBib29sIGlzTG9jYXRpb25DaGFu
Z2UpCi0gICAgICAgIDogU2NoZWR1bGVkTmF2aWdhdGlvbihkZWxheSwgbG9ja0hpc3RvcnksIGxv
Y2tCYWNrRm9yd2FyZExpc3QsIGR1cmluZ0xvYWQsIGlzTG9jYXRpb25DaGFuZ2UpCisgICAgU2No
ZWR1bGVkVVJMTmF2aWdhdGlvbihEb2N1bWVudCYgaW5pdGlhdGluZ0RvY3VtZW50LCBkb3VibGUg
ZGVsYXksIFNlY3VyaXR5T3JpZ2luKiBzZWN1cml0eU9yaWdpbiwgY29uc3QgVVJMJiB1cmwsIGNv
bnN0IFN0cmluZyYgcmVmZXJyZXIsIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBMb2NrQmFja0Zv
cndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QsIGJvb2wgZHVyaW5nTG9hZCwgYm9vbCBpc0xv
Y2F0aW9uQ2hhbmdlKQorICAgICAgICA6IFNjaGVkdWxlZE5hdmlnYXRpb24oZGVsYXksIGxvY2tI
aXN0b3J5LCBsb2NrQmFja0ZvcndhcmRMaXN0LCBkdXJpbmdMb2FkLCBpc0xvY2F0aW9uQ2hhbmdl
LCBpbml0aWF0aW5nRG9jdW1lbnQuc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeVRvUHJvcGFn
YXRlKCkpCiAgICAgICAgICwgbV9zZWN1cml0eU9yaWdpbihzZWN1cml0eU9yaWdpbikKICAgICAg
ICAgLCBtX3VybCh1cmwpCiAgICAgICAgICwgbV9yZWZlcnJlcihyZWZlcnJlcikKLSAgICAgICAg
LCBtX2hhdmVUb2xkQ2xpZW50KGZhbHNlKQogICAgIHsKLSAgICAgICAgaWYgKGluaXRpYXRpbmdE
b2N1bWVudCkKLSAgICAgICAgICAgIG1fc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSA9IGlu
aXRpYXRpbmdEb2N1bWVudC0+c2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeVRvUHJvcGFnYXRl
KCk7CiAgICAgfQogCiAgICAgdm9pZCBmaXJlKEZyYW1lJiBmcmFtZSkgb3ZlcnJpZGUKQEAgLTEx
NSw3ICsxMjIsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgICAgIFVzZXJHZXN0dXJlSW5kaWNhdG9yIGdl
c3R1cmVJbmRpY2F0b3IodXNlckdlc3R1cmVUb0ZvcndhcmQoKSk7CiAKICAgICAgICAgUmVzb3Vy
Y2VSZXF1ZXN0IHJlc291cmNlUmVxdWVzdChtX3VybCwgbV9yZWZlcnJlciwgVXNlUHJvdG9jb2xD
YWNoZVBvbGljeSk7Ci0gICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KG1fc2Vj
dXJpdHlPcmlnaW4uZ2V0KCksIHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hpc3Rvcnko
KSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0
aW9uVG9JbnZhbGlkVVJMOjpZZXMsIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxvdywgbV9zaG91
bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5KTsKKyAgICAgICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFt
ZVJlcXVlc3QobV9zZWN1cml0eU9yaWdpbi5nZXQoKSwgcmVzb3VyY2VSZXF1ZXN0LCAiX3NlbGYi
LCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVycmVy
LCBBbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkw6OlllcywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6
OkFsbG93LCBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzKCkpOwogCiAgICAgICAgIGZyYW1lLmxvYWRl
cigpLmNoYW5nZUxvY2F0aW9uKGZyYW1lUmVxdWVzdCk7CiAgICAgfQpAQCAtMTUyLDEyICsxNTks
MTIgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8U2VjdXJpdHlPcmlnaW4+IG1fc2VjdXJpdHlPcmln
aW47CiAgICAgVVJMIG1fdXJsOwogICAgIFN0cmluZyBtX3JlZmVycmVyOwotICAgIGJvb2wgbV9o
YXZlVG9sZENsaWVudDsKKyAgICBib29sIG1faGF2ZVRvbGRDbGllbnQgeyBmYWxzZSB9OwogfTsK
IAogY2xhc3MgU2NoZWR1bGVkUmVkaXJlY3QgOiBwdWJsaWMgU2NoZWR1bGVkVVJMTmF2aWdhdGlv
biB7CiBwdWJsaWM6Ci0gICAgU2NoZWR1bGVkUmVkaXJlY3QoRG9jdW1lbnQqIGluaXRpYXRpbmdE
b2N1bWVudCwgZG91YmxlIGRlbGF5LCBTZWN1cml0eU9yaWdpbiogc2VjdXJpdHlPcmlnaW4sIGNv
bnN0IFVSTCYgdXJsLCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSwgTG9ja0JhY2tGb3J3YXJkTGlz
dCBsb2NrQmFja0ZvcndhcmRMaXN0KQorICAgIFNjaGVkdWxlZFJlZGlyZWN0KERvY3VtZW50JiBp
bml0aWF0aW5nRG9jdW1lbnQsIGRvdWJsZSBkZWxheSwgU2VjdXJpdHlPcmlnaW4qIHNlY3VyaXR5
T3JpZ2luLCBjb25zdCBVUkwmIHVybCwgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnksIExvY2tCYWNr
Rm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3YXJkTGlzdCkKICAgICAgICAgOiBTY2hlZHVsZWRVUkxO
YXZpZ2F0aW9uKGluaXRpYXRpbmdEb2N1bWVudCwgZGVsYXksIHNlY3VyaXR5T3JpZ2luLCB1cmws
IFN0cmluZygpLCBsb2NrSGlzdG9yeSwgbG9ja0JhY2tGb3J3YXJkTGlzdCwgZmFsc2UsIGZhbHNl
KQogICAgIHsKICAgICAgICAgY2xlYXJVc2VyR2VzdHVyZSgpOwpAQCAtMTczLDcgKzE4MCw3IEBA
IHB1YmxpYzoKICAgICAgICAgVXNlckdlc3R1cmVJbmRpY2F0b3IgZ2VzdHVyZUluZGljYXRvcih1
c2VyR2VzdHVyZVRvRm9yd2FyZCgpKTsKICAgICAgICAgYm9vbCByZWZyZXNoID0gZXF1YWxJZ25v
cmluZ0ZyYWdtZW50SWRlbnRpZmllcihmcmFtZS5kb2N1bWVudCgpLT51cmwoKSwgdXJsKCkpOwog
ICAgICAgICBSZXNvdXJjZVJlcXVlc3QgcmVzb3VyY2VSZXF1ZXN0KHVybCgpLCByZWZlcnJlcigp
LCByZWZyZXNoID8gUmVsb2FkSWdub3JpbmdDYWNoZURhdGEgOiBVc2VQcm90b2NvbENhY2hlUG9s
aWN5KTsKLSAgICAgICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFtZVJlcXVlc3Qoc2VjdXJpdHlPcmln
aW4oKSwgcmVzb3VyY2VSZXF1ZXN0LCAiX3NlbGYiLCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFja0Zv
cndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVycmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFsaWRV
Ukw6Ok5vLCBOZXdGcmFtZU9wZW5lclBvbGljeTo6QWxsb3csIG1fc2hvdWxkT3BlbkV4dGVybmFs
VVJMc1BvbGljeSk7CisgICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KHNlY3Vy
aXR5T3JpZ2luKCksIHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hpc3RvcnkoKSwgbG9j
a0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9J
bnZhbGlkVVJMOjpObywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBzaG91bGRPcGVuRXh0
ZXJuYWxVUkxzKCkpOwogCiAgICAgICAgIGZyYW1lLmxvYWRlcigpLmNoYW5nZUxvY2F0aW9uKGZy
YW1lUmVxdWVzdCk7CiAgICAgfQpAQCAtMTgxLDcgKzE4OCw3IEBAIHB1YmxpYzoKIAogY2xhc3Mg
U2NoZWR1bGVkTG9jYXRpb25DaGFuZ2UgOiBwdWJsaWMgU2NoZWR1bGVkVVJMTmF2aWdhdGlvbiB7
CiBwdWJsaWM6Ci0gICAgU2NoZWR1bGVkTG9jYXRpb25DaGFuZ2UoRG9jdW1lbnQqIGluaXRpYXRp
bmdEb2N1bWVudCwgU2VjdXJpdHlPcmlnaW4qIHNlY3VyaXR5T3JpZ2luLCBjb25zdCBVUkwmIHVy
bCwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnksIExvY2tC
YWNrRm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3YXJkTGlzdCwgYm9vbCBkdXJpbmdMb2FkKQorICAg
IFNjaGVkdWxlZExvY2F0aW9uQ2hhbmdlKERvY3VtZW50JiBpbml0aWF0aW5nRG9jdW1lbnQsIFNl
Y3VyaXR5T3JpZ2luKiBzZWN1cml0eU9yaWdpbiwgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmlu
ZyYgcmVmZXJyZXIsIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0
IGxvY2tCYWNrRm9yd2FyZExpc3QsIGJvb2wgZHVyaW5nTG9hZCkKICAgICAgICAgOiBTY2hlZHVs
ZWRVUkxOYXZpZ2F0aW9uKGluaXRpYXRpbmdEb2N1bWVudCwgMC4wLCBzZWN1cml0eU9yaWdpbiwg
dXJsLCByZWZlcnJlciwgbG9ja0hpc3RvcnksIGxvY2tCYWNrRm9yd2FyZExpc3QsIGR1cmluZ0xv
YWQsIHRydWUpIHsgfQogCiAgICAgdm9pZCBmaXJlKEZyYW1lJiBmcmFtZSkgb3ZlcnJpZGUKQEAg
LTE4OSwxNCArMTk2LDE0IEBAIHB1YmxpYzoKICAgICAgICAgVXNlckdlc3R1cmVJbmRpY2F0b3Ig
Z2VzdHVyZUluZGljYXRvcih1c2VyR2VzdHVyZVRvRm9yd2FyZCgpKTsKIAogICAgICAgICBSZXNv
dXJjZVJlcXVlc3QgcmVzb3VyY2VSZXF1ZXN0KHVybCgpLCByZWZlcnJlcigpLCBVc2VQcm90b2Nv
bENhY2hlUG9saWN5KTsKLSAgICAgICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFtZVJlcXVlc3Qoc2Vj
dXJpdHlPcmlnaW4oKSwgcmVzb3VyY2VSZXF1ZXN0LCAiX3NlbGYiLCBsb2NrSGlzdG9yeSgpLCBs
b2NrQmFja0ZvcndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVycmVyLCBBbGxvd05hdmlnYXRpb25U
b0ludmFsaWRVUkw6Ok5vLCBOZXdGcmFtZU9wZW5lclBvbGljeTo6QWxsb3csIG1fc2hvdWxkT3Bl
bkV4dGVybmFsVVJMc1BvbGljeSk7CisgICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1
ZXN0KHNlY3VyaXR5T3JpZ2luKCksIHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hpc3Rv
cnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZp
Z2F0aW9uVG9JbnZhbGlkVVJMOjpObywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBzaG91
bGRPcGVuRXh0ZXJuYWxVUkxzKCkpOwogICAgICAgICBmcmFtZS5sb2FkZXIoKS5jaGFuZ2VMb2Nh
dGlvbihmcmFtZVJlcXVlc3QpOwogICAgIH0KIH07CiAKIGNsYXNzIFNjaGVkdWxlZFJlZnJlc2gg
OiBwdWJsaWMgU2NoZWR1bGVkVVJMTmF2aWdhdGlvbiB7CiBwdWJsaWM6Ci0gICAgU2NoZWR1bGVk
UmVmcmVzaChEb2N1bWVudCogaW5pdGlhdGluZ0RvY3VtZW50LCBTZWN1cml0eU9yaWdpbiogc2Vj
dXJpdHlPcmlnaW4sIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyKQorICAg
IFNjaGVkdWxlZFJlZnJlc2goRG9jdW1lbnQmIGluaXRpYXRpbmdEb2N1bWVudCwgU2VjdXJpdHlP
cmlnaW4qIHNlY3VyaXR5T3JpZ2luLCBjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiByZWZl
cnJlcikKICAgICAgICAgOiBTY2hlZHVsZWRVUkxOYXZpZ2F0aW9uKGluaXRpYXRpbmdEb2N1bWVu
dCwgMC4wLCBzZWN1cml0eU9yaWdpbiwgdXJsLCByZWZlcnJlciwgTG9ja0hpc3Rvcnk6Olllcywg
TG9ja0JhY2tGb3J3YXJkTGlzdDo6WWVzLCBmYWxzZSwgdHJ1ZSkKICAgICB7CiAgICAgfQpAQCAt
MjA2LDcgKzIxMyw3IEBAIHB1YmxpYzoKICAgICAgICAgVXNlckdlc3R1cmVJbmRpY2F0b3IgZ2Vz
dHVyZUluZGljYXRvcih1c2VyR2VzdHVyZVRvRm9yd2FyZCgpKTsKIAogICAgICAgICBSZXNvdXJj
ZVJlcXVlc3QgcmVzb3VyY2VSZXF1ZXN0KHVybCgpLCByZWZlcnJlcigpLCBSZWxvYWRJZ25vcmlu
Z0NhY2hlRGF0YSk7Ci0gICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KHNlY3Vy
aXR5T3JpZ2luKCksIHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hpc3RvcnkoKSwgbG9j
a0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9J
bnZhbGlkVVJMOjpZZXMsIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxvdywgbV9zaG91bGRPcGVu
RXh0ZXJuYWxVUkxzUG9saWN5KTsKKyAgICAgICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFtZVJlcXVl
c3Qoc2VjdXJpdHlPcmlnaW4oKSwgcmVzb3VyY2VSZXF1ZXN0LCAiX3NlbGYiLCBsb2NrSGlzdG9y
eSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVycmVyLCBBbGxvd05hdmln
YXRpb25Ub0ludmFsaWRVUkw6OlllcywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBzaG91
bGRPcGVuRXh0ZXJuYWxVUkxzKCkpOwogICAgICAgICBmcmFtZS5sb2FkZXIoKS5jaGFuZ2VMb2Nh
dGlvbihmcmFtZVJlcXVlc3QpOwogICAgIH0KIH07CkBAIC0yMjYsNyArMjMzLDcgQEAgcHVibGlj
OgogICAgICAgICBpZiAoIW1faGlzdG9yeVN0ZXBzKSB7CiAgICAgICAgICAgICAvLyBTcGVjaWFs
IGNhc2UgZm9yIGdvKDApIGZyb20gYSBmcmFtZSAtPiByZWxvYWQgb25seSB0aGUgZnJhbWUKICAg
ICAgICAgICAgIC8vIFRvIGZvbGxvdyBGaXJlZm94IGFuZCBJRSdzIGJlaGF2aW9yLCBoaXN0b3J5
IHJlbG9hZCBjYW4gb25seSBuYXZpZ2F0ZSB0aGUgc2VsZiBmcmFtZS4KLSAgICAgICAgICAgIGZy
YW1lLmxvYWRlcigpLnVybFNlbGVjdGVkKGZyYW1lLmRvY3VtZW50KCktPnVybCgpLCAiX3NlbGYi
LCAwLCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVy
cmVyLCBtX3Nob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kpOworICAgICAgICAgICAgZnJhbWUu
bG9hZGVyKCkudXJsU2VsZWN0ZWQoZnJhbWUuZG9jdW1lbnQoKS0+dXJsKCksICJfc2VsZiIsIDAs
IGxvY2tIaXN0b3J5KCksIGxvY2tCYWNrRm9yd2FyZExpc3QoKSwgTWF5YmVTZW5kUmVmZXJyZXIs
IHNob3VsZE9wZW5FeHRlcm5hbFVSTHMoKSk7CiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAg
IH0KICAgICAgICAgCkBAIC0yNDEsMTUgKzI0OCwxMCBAQCBwcml2YXRlOgogCiBjbGFzcyBTY2hl
ZHVsZWRGb3JtU3VibWlzc2lvbiA6IHB1YmxpYyBTY2hlZHVsZWROYXZpZ2F0aW9uIHsKIHB1Ymxp
YzoKLSAgICBTY2hlZHVsZWRGb3JtU3VibWlzc2lvbihQYXNzUmVmUHRyPEZvcm1TdWJtaXNzaW9u
PiBzdWJtaXNzaW9uLCBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QsIGJv
b2wgZHVyaW5nTG9hZCkKLSAgICAgICAgOiBTY2hlZHVsZWROYXZpZ2F0aW9uKDAsIHN1Ym1pc3Np
b24tPmxvY2tIaXN0b3J5KCksIGxvY2tCYWNrRm9yd2FyZExpc3QsIGR1cmluZ0xvYWQsIHRydWUp
Ci0gICAgICAgICwgbV9zdWJtaXNzaW9uKHN1Ym1pc3Npb24pCi0gICAgICAgICwgbV9oYXZlVG9s
ZENsaWVudChmYWxzZSkKKyAgICBTY2hlZHVsZWRGb3JtU3VibWlzc2lvbihSZWY8Rm9ybVN1Ym1p
c3Npb24+JiYgc3VibWlzc2lvbiwgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRM
aXN0LCBib29sIGR1cmluZ0xvYWQpCisgICAgICAgIDogU2NoZWR1bGVkTmF2aWdhdGlvbigwLCBz
dWJtaXNzaW9uLT5sb2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0LCBkdXJpbmdMb2Fk
LCB0cnVlLCBzdWJtaXNzaW9uLT5zdGF0ZSgpLnNvdXJjZURvY3VtZW50KCkuc2hvdWxkT3BlbkV4
dGVybmFsVVJMc1BvbGljeVRvUHJvcGFnYXRlKCkpCisgICAgICAgICwgbV9zdWJtaXNzaW9uKFdU
Rk1vdmUoc3VibWlzc2lvbikpCiAgICAgewotICAgICAgICBBU1NFUlQobV9zdWJtaXNzaW9uLT5z
dGF0ZSgpKTsKLQotICAgICAgICBpZiAoRG9jdW1lbnQqIGRvY3VtZW50ID0gbV9zdWJtaXNzaW9u
LT5zdGF0ZSgpLT5zb3VyY2VEb2N1bWVudCgpKQotICAgICAgICAgICAgbV9zaG91bGRPcGVuRXh0
ZXJuYWxVUkxzUG9saWN5ID0gZG9jdW1lbnQtPnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3lU
b1Byb3BhZ2F0ZSgpOwogICAgIH0KIAogICAgIHZvaWQgZmlyZShGcmFtZSYgZnJhbWUpIG92ZXJy
aWRlCkBAIC0yNjAsMTQgKzI2MiwxNCBAQCBwdWJsaWM6CiAgICAgICAgIC8vIE5vdyB0aGF0IHRo
ZSB0aW1lciBoYXMgZmlyZWQsIHdlIG5lZWQgdG8gcmVwZWF0IHRoZSBzZWN1cml0eSBjaGVjayB3
aGljaCBub3JtYWxseSBpcyBkb25lIHdoZW4KICAgICAgICAgLy8gc2VsZWN0aW5nIGEgdGFyZ2V0
LCBpbiBjYXNlIGNvbmRpdGlvbnMgaGF2ZSBjaGFuZ2VkLiBPdGhlciBjb2RlIHBhdGhzIGF2b2lk
IHRoaXMgYnkgdGFyZ2V0aW5nCiAgICAgICAgIC8vIHdpdGhvdXQgbGVhdmluZyBhIHRpbWUgd2lu
ZG93LiBJZiB3ZSBmYWlsIHRoZSBjaGVjayBqdXN0IHNpbGVudGx5IGRyb3AgdGhlIGZvcm0gc3Vi
bWlzc2lvbi4KLSAgICAgICAgRG9jdW1lbnQqIHJlcXVlc3RpbmdEb2N1bWVudCA9IG1fc3VibWlz
c2lvbi0+c3RhdGUoKS0+c291cmNlRG9jdW1lbnQoKTsKLSAgICAgICAgaWYgKCFyZXF1ZXN0aW5n
RG9jdW1lbnQtPmNhbk5hdmlnYXRlKCZmcmFtZSkpCisgICAgICAgIGF1dG8mIHJlcXVlc3RpbmdE
b2N1bWVudCA9IG1fc3VibWlzc2lvbi0+c3RhdGUoKS5zb3VyY2VEb2N1bWVudCgpOworICAgICAg
ICBpZiAoIXJlcXVlc3RpbmdEb2N1bWVudC5jYW5OYXZpZ2F0ZSgmZnJhbWUpKQogICAgICAgICAg
ICAgcmV0dXJuOwotICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1lUmVxdWVzdChyZXF1ZXN0
aW5nRG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCksIGxvY2tIaXN0b3J5KCksIGxvY2tCYWNrRm9y
d2FyZExpc3QoKSwgTWF5YmVTZW5kUmVmZXJyZXIsIEFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVS
TDo6WWVzLCBOZXdGcmFtZU9wZW5lclBvbGljeTo6QWxsb3csIG1fc2hvdWxkT3BlbkV4dGVybmFs
VVJMc1BvbGljeSk7CisgICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KHJlcXVl
c3RpbmdEb2N1bWVudC5zZWN1cml0eU9yaWdpbigpLCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFja0Zv
cndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVycmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFsaWRV
Ukw6OlllcywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBzaG91bGRPcGVuRXh0ZXJuYWxV
UkxzKCkpOwogICAgICAgICBtX3N1Ym1pc3Npb24tPnBvcHVsYXRlRnJhbWVMb2FkUmVxdWVzdChm
cmFtZVJlcXVlc3QpOwotICAgICAgICBmcmFtZS5sb2FkZXIoKS5sb2FkRnJhbWVSZXF1ZXN0KGZy
YW1lUmVxdWVzdCwgbV9zdWJtaXNzaW9uLT5ldmVudCgpLCBtX3N1Ym1pc3Npb24tPnN0YXRlKCkp
OworICAgICAgICBmcmFtZS5sb2FkZXIoKS5sb2FkRnJhbWVSZXF1ZXN0KGZyYW1lUmVxdWVzdCwg
bV9zdWJtaXNzaW9uLT5ldmVudCgpLCAmbV9zdWJtaXNzaW9uLT5zdGF0ZSgpKTsKICAgICB9Ci0g
ICAgCisKICAgICB2b2lkIGRpZFN0YXJ0VGltZXIoRnJhbWUmIGZyYW1lLCBUaW1lciYgdGltZXIp
IG92ZXJyaWRlCiAgICAgewogICAgICAgICBpZiAobV9oYXZlVG9sZENsaWVudCkKQEAgLTI5Myw4
ICsyOTUsOCBAQCBwdWJsaWM6CiAgICAgfQogCiBwcml2YXRlOgotICAgIFJlZlB0cjxGb3JtU3Vi
bWlzc2lvbj4gbV9zdWJtaXNzaW9uOwotICAgIGJvb2wgbV9oYXZlVG9sZENsaWVudDsKKyAgICBS
ZWY8Rm9ybVN1Ym1pc3Npb24+IG1fc3VibWlzc2lvbjsKKyAgICBib29sIG1faGF2ZVRvbGRDbGll
bnQgeyBmYWxzZSB9OwogfTsKIAogY2xhc3MgU2NoZWR1bGVkUGFnZUJsb2NrIGZpbmFsIDogcHVi
bGljIFNjaGVkdWxlZE5hdmlnYXRpb24gewpAQCAtMzEzLDcgKzMxNSw3IEBAIHB1YmxpYzoKICAg
ICAgICAgU3Vic3RpdHV0ZURhdGEgcmVwbGFjZW1lbnREYXRhKFNoYXJlZEJ1ZmZlcjo6Y3JlYXRl
KCksIG1fb3JpZ2luRG9jdW1lbnQudXJsKCksIHJlcGxhY2VtZW50UmVzcG9uc2UsIFN1YnN0aXR1
dGVEYXRhOjpTZXNzaW9uSGlzdG9yeVZpc2liaWxpdHk6OkhpZGRlbik7CiAKICAgICAgICAgUmVz
b3VyY2VSZXF1ZXN0IHJlc291cmNlUmVxdWVzdChtX29yaWdpbkRvY3VtZW50LnVybCgpLCBlbXB0
eVN0cmluZygpLCBSZWxvYWRJZ25vcmluZ0NhY2hlRGF0YSk7Ci0gICAgICAgIEZyYW1lTG9hZFJl
cXVlc3QgZnJhbWVSZXF1ZXN0KG1fb3JpZ2luRG9jdW1lbnQuc2VjdXJpdHlPcmlnaW4oKSwgcmVz
b3VyY2VSZXF1ZXN0LCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0KCksIE1heWJl
U2VuZFJlZmVycmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkw6OlllcywgTmV3RnJhbWVP
cGVuZXJQb2xpY3k6OkFsbG93LCBtX3Nob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kpOworICAg
ICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1lUmVxdWVzdChtX29yaWdpbkRvY3VtZW50LnNlY3Vy
aXR5T3JpZ2luKCksIHJlc291cmNlUmVxdWVzdCwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3
YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJM
OjpZZXMsIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxvdywgc2hvdWxkT3BlbkV4dGVybmFsVVJM
cygpKTsKICAgICAgICAgZnJhbWVSZXF1ZXN0LnNldFN1YnN0aXR1dGVEYXRhKHJlcGxhY2VtZW50
RGF0YSk7CiAgICAgICAgIGZyYW1lLmxvYWRlcigpLmxvYWQoZnJhbWVSZXF1ZXN0KTsKICAgICB9
CkBAIC0zNjQsNyArMzY2LDcgQEAgaW5saW5lIGJvb2wgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2hv
dWxkU2NoZWR1bGVOYXZpZ2F0aW9uKGNvbnN0IFVSTCYgdXJsKSBjb25zdAogICAgIHJldHVybiBO
YXZpZ2F0aW9uRGlzYWJsZXJGb3JCZWZvcmVVbmxvYWQ6OmlzTmF2aWdhdGlvbkFsbG93ZWQoKTsK
IH0KIAotdm9pZCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjpzY2hlZHVsZVJlZGlyZWN0KERvY3VtZW50
KiBpbml0aWF0aW5nRG9jdW1lbnQsIGRvdWJsZSBkZWxheSwgY29uc3QgVVJMJiB1cmwpCit2b2lk
IE5hdmlnYXRpb25TY2hlZHVsZXI6OnNjaGVkdWxlUmVkaXJlY3QoRG9jdW1lbnQmIGluaXRpYXRp
bmdEb2N1bWVudCwgZG91YmxlIGRlbGF5LCBjb25zdCBVUkwmIHVybCkKIHsKICAgICBpZiAoIXNo
b3VsZFNjaGVkdWxlTmF2aWdhdGlvbih1cmwpKQogICAgICAgICByZXR1cm47CkBAIC0zNzUsNyAr
Mzc3LDcgQEAgdm9pZCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjpzY2hlZHVsZVJlZGlyZWN0KERvY3Vt
ZW50KiBpbml0aWF0aW5nRG9jdW1lbnQsIGRvdWJsZQogCiAgICAgLy8gV2Ugd2FudCBhIG5ldyBi
YWNrL2ZvcndhcmQgbGlzdCBpdGVtIGlmIHRoZSByZWZyZXNoIHRpbWVvdXQgaXMgPiAxIHNlY29u
ZC4KICAgICBpZiAoIW1fcmVkaXJlY3QgfHwgZGVsYXkgPD0gbV9yZWRpcmVjdC0+ZGVsYXkoKSkg
ewotICAgICAgICBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QgPSBkZWxh
eSA8PSAxID8gTG9ja0JhY2tGb3J3YXJkTGlzdDo6WWVzIDogTG9ja0JhY2tGb3J3YXJkTGlzdDo6
Tm87CisgICAgICAgIGF1dG8gbG9ja0JhY2tGb3J3YXJkTGlzdCA9IGRlbGF5IDw9IDEgPyBMb2Nr
QmFja0ZvcndhcmRMaXN0OjpZZXMgOiBMb2NrQmFja0ZvcndhcmRMaXN0OjpObzsKICAgICAgICAg
c2NoZWR1bGUoc3RkOjptYWtlX3VuaXF1ZTxTY2hlZHVsZWRSZWRpcmVjdD4oaW5pdGlhdGluZ0Rv
Y3VtZW50LCBkZWxheSwgbV9mcmFtZS5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLCB1cmws
IExvY2tIaXN0b3J5OjpZZXMsIGxvY2tCYWNrRm9yd2FyZExpc3QpKTsKICAgICB9CiB9CkBAIC0z
OTgsNyArNDAwLDcgQEAgTG9ja0JhY2tGb3J3YXJkTGlzdCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjpt
dXN0TG9ja0JhY2tGb3J3YXJkTGlzdChGcmFtZSYgdGFyZ2V0RnIKICAgICByZXR1cm4gTG9ja0Jh
Y2tGb3J3YXJkTGlzdDo6Tm87CiB9CiAKLXZvaWQgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2NoZWR1
bGVMb2NhdGlvbkNoYW5nZShEb2N1bWVudCogaW5pdGlhdGluZ0RvY3VtZW50LCBTZWN1cml0eU9y
aWdpbiogc2VjdXJpdHlPcmlnaW4sIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIHJlZmVy
cmVyLCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSwgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFj
a0ZvcndhcmRMaXN0KQordm9pZCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjpzY2hlZHVsZUxvY2F0aW9u
Q2hhbmdlKERvY3VtZW50JiBpbml0aWF0aW5nRG9jdW1lbnQsIFNlY3VyaXR5T3JpZ2luKiBzZWN1
cml0eU9yaWdpbiwgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIExvY2tI
aXN0b3J5IGxvY2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExp
c3QpCiB7CiAgICAgaWYgKCFzaG91bGRTY2hlZHVsZU5hdmlnYXRpb24odXJsKSkKICAgICAgICAg
cmV0dXJuOwpAQCAtNDEyLDEwICs0MTQsNyBAQCB2b2lkIE5hdmlnYXRpb25TY2hlZHVsZXI6OnNj
aGVkdWxlTG9jYXRpb25DaGFuZ2UoRG9jdW1lbnQqIGluaXRpYXRpbmdEb2N1bWVudCwgUwogICAg
IC8vIGZyYWdtZW50IHBhcnQsIHdlIGRvbid0IG5lZWQgdG8gc2NoZWR1bGUgdGhlIGxvY2F0aW9u
IGNoYW5nZS4KICAgICBpZiAodXJsLmhhc0ZyYWdtZW50SWRlbnRpZmllcigpICYmIGVxdWFsSWdu
b3JpbmdGcmFnbWVudElkZW50aWZpZXIobV9mcmFtZS5kb2N1bWVudCgpLT51cmwoKSwgdXJsKSkg
ewogICAgICAgICBSZXNvdXJjZVJlcXVlc3QgcmVzb3VyY2VSZXF1ZXN0KG1fZnJhbWUuZG9jdW1l
bnQoKS0+Y29tcGxldGVVUkwodXJsKSwgcmVmZXJyZXIsIFVzZVByb3RvY29sQ2FjaGVQb2xpY3kp
OwotICAgICAgICBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5IHNob3VsZE9wZW5FeHRlcm5h
bFVSTHNQb2xpY3kgPSBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5OjpTaG91bGROb3RBbGxv
dzsKLSAgICAgICAgaWYgKGluaXRpYXRpbmdEb2N1bWVudCkKLSAgICAgICAgICAgIHNob3VsZE9w
ZW5FeHRlcm5hbFVSTHNQb2xpY3kgPSBpbml0aWF0aW5nRG9jdW1lbnQtPnNob3VsZE9wZW5FeHRl
cm5hbFVSTHNQb2xpY3lUb1Byb3BhZ2F0ZSgpOwotICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZy
YW1lUmVxdWVzdChzZWN1cml0eU9yaWdpbiwgcmVzb3VyY2VSZXF1ZXN0LCAiX3NlbGYiLCBsb2Nr
SGlzdG9yeSwgbG9ja0JhY2tGb3J3YXJkTGlzdCwgTWF5YmVTZW5kUmVmZXJyZXIsIEFsbG93TmF2
aWdhdGlvblRvSW52YWxpZFVSTDo6Tm8sIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxvdywgUmVw
bGFjZURvY3VtZW50SWZKYXZhU2NyaXB0VVJMLCBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5
KTsKKyAgICAgICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFtZVJlcXVlc3Qoc2VjdXJpdHlPcmlnaW4s
IHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hpc3RvcnksIGxvY2tCYWNrRm9yd2FyZExp
c3QsIE1heWJlU2VuZFJlZmVycmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkw6Ok5vLCBO
ZXdGcmFtZU9wZW5lclBvbGljeTo6QWxsb3csIFJlcGxhY2VEb2N1bWVudElmSmF2YVNjcmlwdFVS
TCwgaW5pdGlhdGluZ0RvY3VtZW50LnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3lUb1Byb3Bh
Z2F0ZSgpKTsKICAgICAgICAgbG9hZGVyLmNoYW5nZUxvY2F0aW9uKGZyYW1lUmVxdWVzdCk7CiAg
ICAgICAgIHJldHVybjsKICAgICB9CkBAIC00MjcsNyArNDI2LDcgQEAgdm9pZCBOYXZpZ2F0aW9u
U2NoZWR1bGVyOjpzY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKERvY3VtZW50KiBpbml0aWF0aW5nRG9j
dW1lbnQsIFMKICAgICBzY2hlZHVsZShzdGQ6Om1ha2VfdW5pcXVlPFNjaGVkdWxlZExvY2F0aW9u
Q2hhbmdlPihpbml0aWF0aW5nRG9jdW1lbnQsIHNlY3VyaXR5T3JpZ2luLCB1cmwsIHJlZmVycmVy
LCBsb2NrSGlzdG9yeSwgbG9ja0JhY2tGb3J3YXJkTGlzdCwgZHVyaW5nTG9hZCkpOwogfQogCi12
b2lkIE5hdmlnYXRpb25TY2hlZHVsZXI6OnNjaGVkdWxlRm9ybVN1Ym1pc3Npb24oUGFzc1JlZlB0
cjxGb3JtU3VibWlzc2lvbj4gc3VibWlzc2lvbikKK3ZvaWQgTmF2aWdhdGlvblNjaGVkdWxlcjo6
c2NoZWR1bGVGb3JtU3VibWlzc2lvbihSZWY8Rm9ybVN1Ym1pc3Npb24+JiYgc3VibWlzc2lvbikK
IHsKICAgICBBU1NFUlQobV9mcmFtZS5wYWdlKCkpOwogCkBAIC00NDMsMTQgKzQ0MiwxNCBAQCB2
b2lkIE5hdmlnYXRpb25TY2hlZHVsZXI6OnNjaGVkdWxlRm9ybVN1Ym1pc3Npb24oUGFzc1JlZlB0
cjxGb3JtU3VibWlzc2lvbj4gc3VibQogICAgIC8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MzIzODMgZm9yIHRoZSBvcmlnaW5hbCBtb3RpdmF0aW9uIGZvciB0
aGlzLgogICAgIExvY2tCYWNrRm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3YXJkTGlzdCA9IG11c3RM
b2NrQmFja0ZvcndhcmRMaXN0KG1fZnJhbWUpOwogICAgIGlmIChsb2NrQmFja0ZvcndhcmRMaXN0
ID09IExvY2tCYWNrRm9yd2FyZExpc3Q6Ok5vCi0gICAgICAgICYmIChzdWJtaXNzaW9uLT5zdGF0
ZSgpLT5mb3JtU3VibWlzc2lvblRyaWdnZXIoKSA9PSBTdWJtaXR0ZWRCeUphdmFTY3JpcHQgJiYg
bV9mcmFtZS50cmVlKCkucGFyZW50KCkgJiYgIVVzZXJHZXN0dXJlSW5kaWNhdG9yOjpwcm9jZXNz
aW5nVXNlckdlc3R1cmUoKSkpIHsKKyAgICAgICAgJiYgKHN1Ym1pc3Npb24tPnN0YXRlKCkuZm9y
bVN1Ym1pc3Npb25UcmlnZ2VyKCkgPT0gU3VibWl0dGVkQnlKYXZhU2NyaXB0ICYmIG1fZnJhbWUu
dHJlZSgpLnBhcmVudCgpICYmICFVc2VyR2VzdHVyZUluZGljYXRvcjo6cHJvY2Vzc2luZ1VzZXJH
ZXN0dXJlKCkpKSB7CiAgICAgICAgIGxvY2tCYWNrRm9yd2FyZExpc3QgPSBMb2NrQmFja0Zvcndh
cmRMaXN0OjpZZXM7CiAgICAgfQogICAgIAotICAgIHNjaGVkdWxlKHN0ZDo6bWFrZV91bmlxdWU8
U2NoZWR1bGVkRm9ybVN1Ym1pc3Npb24+KHN1Ym1pc3Npb24sIGxvY2tCYWNrRm9yd2FyZExpc3Qs
IGR1cmluZ0xvYWQpKTsKKyAgICBzY2hlZHVsZShzdGQ6Om1ha2VfdW5pcXVlPFNjaGVkdWxlZEZv
cm1TdWJtaXNzaW9uPihXVEZNb3ZlKHN1Ym1pc3Npb24pLCBsb2NrQmFja0ZvcndhcmRMaXN0LCBk
dXJpbmdMb2FkKSk7CiB9CiAKLXZvaWQgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2NoZWR1bGVSZWZy
ZXNoKERvY3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQpCit2b2lkIE5hdmlnYXRpb25TY2hlZHVs
ZXI6OnNjaGVkdWxlUmVmcmVzaChEb2N1bWVudCYgaW5pdGlhdGluZ0RvY3VtZW50KQogewogICAg
IGlmICghc2hvdWxkU2NoZWR1bGVOYXZpZ2F0aW9uKCkpCiAgICAgICAgIHJldHVybjsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5oCmluZGV4IDQ5YzQzYmUyYmIx
NWViYTgwNTY1NzY2MTJkMTVkMWFiY2YzMDc3MTcuLjBhZTE3MTE0NThjMzc0NmY3NzgxNmZlZDkz
NjdiYTQ4YmY2MTZmZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0
aW9uU2NoZWR1bGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL05hdmlnYXRpb25TY2hl
ZHVsZXIuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNiBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAx
NyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDgs
IDIwMDkgVG9yY2ggTW9iaWxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4gKGh0dHA6Ly93d3cu
dG9yY2htb2JpbGUuY29tLykKICAqIENvcHlyaWdodCAoQykgMjAwOSBBZGFtIEJhcnRoLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgogICoKQEAgLTY4LDEwICs2OCwxMCBAQCBwdWJsaWM6CiAgICAgYm9v
bCByZWRpcmVjdFNjaGVkdWxlZER1cmluZ0xvYWQoKTsKICAgICBib29sIGxvY2F0aW9uQ2hhbmdl
UGVuZGluZygpOwogCi0gICAgdm9pZCBzY2hlZHVsZVJlZGlyZWN0KERvY3VtZW50KiBpbml0aWF0
aW5nRG9jdW1lbnQsIGRvdWJsZSBkZWxheSwgY29uc3QgVVJMJik7Ci0gICAgdm9pZCBzY2hlZHVs
ZUxvY2F0aW9uQ2hhbmdlKERvY3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQsIFNlY3VyaXR5T3Jp
Z2luKiwgY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgTG9ja0hpc3RvcnkgPSBM
b2NrSGlzdG9yeTo6WWVzLCBMb2NrQmFja0ZvcndhcmRMaXN0ID0gTG9ja0JhY2tGb3J3YXJkTGlz
dDo6WWVzKTsKLSAgICB2b2lkIHNjaGVkdWxlRm9ybVN1Ym1pc3Npb24oUGFzc1JlZlB0cjxGb3Jt
U3VibWlzc2lvbj4pOwotICAgIHZvaWQgc2NoZWR1bGVSZWZyZXNoKERvY3VtZW50KiBpbml0aWF0
aW5nRG9jdW1lbnQpOworICAgIHZvaWQgc2NoZWR1bGVSZWRpcmVjdChEb2N1bWVudCYgaW5pdGlh
dGluZ0RvY3VtZW50LCBkb3VibGUgZGVsYXksIGNvbnN0IFVSTCYpOworICAgIHZvaWQgc2NoZWR1
bGVMb2NhdGlvbkNoYW5nZShEb2N1bWVudCYgaW5pdGlhdGluZ0RvY3VtZW50LCBTZWN1cml0eU9y
aWdpbiosIGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIExvY2tIaXN0b3J5ID0g
TG9ja0hpc3Rvcnk6OlllcywgTG9ja0JhY2tGb3J3YXJkTGlzdCA9IExvY2tCYWNrRm9yd2FyZExp
c3Q6Olllcyk7CisgICAgdm9pZCBzY2hlZHVsZUZvcm1TdWJtaXNzaW9uKFJlZjxGb3JtU3VibWlz
c2lvbj4mJik7CisgICAgdm9pZCBzY2hlZHVsZVJlZnJlc2goRG9jdW1lbnQmIGluaXRpYXRpbmdE
b2N1bWVudCk7CiAgICAgdm9pZCBzY2hlZHVsZUhpc3RvcnlOYXZpZ2F0aW9uKGludCBzdGVwcyk7
CiAgICAgdm9pZCBzY2hlZHVsZVBhZ2VCbG9jayhEb2N1bWVudCYgb3JpZ2luRG9jdW1lbnQpOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcAppbmRleCA5ZTJhYmRhZGNh
MTc4MWFkMTA1YzM5NDlmMmYwY2QxMGZlZWFhZDdhLi4zNjUwZWJiNTg4ZDgwMmE4NjFlMzMwYTFl
ZDc3MDBhOTUzYzY3ZjQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3Vy
Y2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5j
cHAKQEAgLTE5MSw3ICsxOTEsNyBAQCB2b2lkIFJlc291cmNlTG9hZGVyOjpzdGFydCgpCiAgICAg
ICAgIHJldHVybjsKICNlbmRpZgogCi0gICAgaWYgKG1fZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0
aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZFJlc291cmNlKCp0aGlzLCBtX3JlcXVlc3QsIG1fcmVx
dWVzdC51cmwoKSkpCisgICAgaWYgKG1fZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVI
b3N0KCkubWF5YmVMb2FkUmVzb3VyY2UoKnRoaXMsIG1fcmVxdWVzdCwgbV9yZXF1ZXN0LnVybCgp
KSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKG1fZGVmZXJzTG9hZGluZykgewpAQCAtNjA3
LDcgKzYwNyw3IEBAIFJlc291cmNlRXJyb3IgUmVzb3VyY2VMb2FkZXI6OmNhbm5vdFNob3dVUkxF
cnJvcigpCiAKIFJlc291cmNlUmVxdWVzdCBSZXNvdXJjZUxvYWRlcjo6d2lsbFNlbmRSZXF1ZXN0
KFJlc291cmNlSGFuZGxlKiwgUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCwgUmVzb3VyY2VSZXNw
b25zZSYmIHJlZGlyZWN0UmVzcG9uc2UpCiB7Ci0gICAgaWYgKGRvY3VtZW50TG9hZGVyKCktPmFw
cGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZEZhbGxiYWNrRm9yUmVkaXJlY3QodGhpcywg
cmVxdWVzdCwgcmVkaXJlY3RSZXNwb25zZSkpCisgICAgaWYgKGRvY3VtZW50TG9hZGVyKCktPmFw
cGxpY2F0aW9uQ2FjaGVIb3N0KCkubWF5YmVMb2FkRmFsbGJhY2tGb3JSZWRpcmVjdCh0aGlzLCBy
ZXF1ZXN0LCByZWRpcmVjdFJlc3BvbnNlKSkKICAgICAgICAgcmV0dXJuIFdURk1vdmUocmVxdWVz
dCk7CiAgICAgd2lsbFNlbmRSZXF1ZXN0SW50ZXJuYWwocmVxdWVzdCwgcmVkaXJlY3RSZXNwb25z
ZSk7CiAgICAgcmV0dXJuIFdURk1vdmUocmVxdWVzdCk7CkBAIC02MjAsNyArNjIwLDcgQEAgdm9p
ZCBSZXNvdXJjZUxvYWRlcjo6ZGlkU2VuZERhdGEoUmVzb3VyY2VIYW5kbGUqLCB1bnNpZ25lZCBs
b25nIGxvbmcgYnl0ZXNTZW50LAogCiB2b2lkIFJlc291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVz
cG9uc2UoUmVzb3VyY2VIYW5kbGUqLCBSZXNvdXJjZVJlc3BvbnNlJiYgcmVzcG9uc2UpCiB7Ci0g
ICAgaWYgKGRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9h
ZEZhbGxiYWNrRm9yUmVzcG9uc2UodGhpcywgcmVzcG9uc2UpKQorICAgIGlmIChkb2N1bWVudExv
YWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLm1heWJlTG9hZEZhbGxiYWNrRm9yUmVzcG9u
c2UodGhpcywgcmVzcG9uc2UpKQogICAgICAgICByZXR1cm47CiAgICAgZGlkUmVjZWl2ZVJlc3Bv
bnNlKHJlc3BvbnNlKTsKIH0KQEAgLTY0Miw3ICs2NDIsNyBAQCB2b2lkIFJlc291cmNlTG9hZGVy
OjpkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFuZGxlKiwgZG91YmxlIGZpbmlzaFRpbWUpCiAK
IHZvaWQgUmVzb3VyY2VMb2FkZXI6OmRpZEZhaWwoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBSZXNv
dXJjZUVycm9yJiBlcnJvcikKIHsKLSAgICBpZiAoZG9jdW1lbnRMb2FkZXIoKS0+YXBwbGljYXRp
b25DYWNoZUhvc3QoKS0+bWF5YmVMb2FkRmFsbGJhY2tGb3JFcnJvcih0aGlzLCBlcnJvcikpCisg
ICAgaWYgKGRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWF5YmVMb2Fk
RmFsbGJhY2tGb3JFcnJvcih0aGlzLCBlcnJvcikpCiAgICAgICAgIHJldHVybjsKICAgICBkaWRG
YWlsKGVycm9yKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJmcmFt
ZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3ViZnJhbWVMb2FkZXIuY3BwCmlu
ZGV4IGFmNmMxNjQ0MmUxZTJlNTMzZjMwMzNmMDA0ZjNmNzc5ODgwZjFmMWYuLjAxYWU1M2E4Y2Q2
MzBjZWExOTJmYzM1MDhkODQyOTM4YWYyNzg2YTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9TdWJmcmFtZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1
YmZyYW1lTG9hZGVyLmNwcApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MDYtMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMp
IDIwMDYtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQg
KEMpIDIwMDggTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCiAg
KiBDb3B5cmlnaHQgKEMpIDIwMDgsIDIwMDkgVG9yY2ggTW9iaWxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4gKGh0dHA6Ly93d3cudG9yY2htb2JpbGUuY29tLykKICAqIENvcHlyaWdodCAoQykg
MjAwOCBBbHAgVG9rZXIgPGFscEBhdG9rZXIuY29tPgpAQCAtMTA5LDIzICsxMDksMjUgQEAgYm9v
bCBTdWJmcmFtZUxvYWRlcjo6cmVzb3VyY2VXaWxsVXNlUGx1Z2luKGNvbnN0IFN0cmluZyYgdXJs
LCBjb25zdCBTdHJpbmcmIG1pbWUKIAogYm9vbCBTdWJmcmFtZUxvYWRlcjo6cGx1Z2luSXNMb2Fk
YWJsZShjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkKIHsKKyAgICBhdXRv
KiBkb2N1bWVudCA9IG1fZnJhbWUuZG9jdW1lbnQoKTsKKwogICAgIGlmIChNSU1FVHlwZVJlZ2lz
dHJ5Ojppc0phdmFBcHBsZXRNSU1FVHlwZShtaW1lVHlwZSkpIHsKICAgICAgICAgaWYgKCFtX2Zy
YW1lLnNldHRpbmdzKCkuaXNKYXZhRW5hYmxlZCgpKQogICAgICAgICAgICAgcmV0dXJuIGZhbHNl
OwotICAgICAgICBpZiAoZG9jdW1lbnQoKSAmJiBkb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigp
LT5pc0xvY2FsKCkgJiYgIW1fZnJhbWUuc2V0dGluZ3MoKS5pc0phdmFFbmFibGVkRm9yTG9jYWxG
aWxlcygpKQorICAgICAgICBpZiAoZG9jdW1lbnQgJiYgZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2lu
KCktPmlzTG9jYWwoKSAmJiAhbV9mcmFtZS5zZXR0aW5ncygpLmlzSmF2YUVuYWJsZWRGb3JMb2Nh
bEZpbGVzKCkpCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogCi0gICAgaWYgKGRv
Y3VtZW50KCkpIHsKLSAgICAgICAgaWYgKGRvY3VtZW50KCktPmlzU2FuZGJveGVkKFNhbmRib3hQ
bHVnaW5zKSkKKyAgICBpZiAoZG9jdW1lbnQpIHsKKyAgICAgICAgaWYgKGRvY3VtZW50LT5pc1Nh
bmRib3hlZChTYW5kYm94UGx1Z2lucykpCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAg
ICAgICAgaWYgKCFkb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5jYW5EaXNwbGF5KHVybCkp
IHsKKyAgICAgICAgaWYgKCFkb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuRGlzcGxheSh1
cmwpKSB7CiAgICAgICAgICAgICBGcmFtZUxvYWRlcjo6cmVwb3J0TG9jYWxMb2FkRmFpbGVkKCZt
X2ZyYW1lLCB1cmwuc3RyaW5nKCkpOwogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAg
ICB9CiAKLSAgICAgICAgaWYgKCFtX2ZyYW1lLmxvYWRlcigpLm1peGVkQ29udGVudENoZWNrZXIo
KS5jYW5SdW5JbnNlY3VyZUNvbnRlbnQoZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSwgdXJs
KSkKKyAgICAgICAgaWYgKCFtX2ZyYW1lLmxvYWRlcigpLm1peGVkQ29udGVudENoZWNrZXIoKS5j
YW5SdW5JbnNlY3VyZUNvbnRlbnQoZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCksIHVybCkpCiAg
ICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogCkBAIC0yMDYsMTggKzIwOCwyMCBAQCBi
b29sIFN1YmZyYW1lTG9hZGVyOjpyZXF1ZXN0T2JqZWN0KEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQm
IG93bmVyRWxlbWVudCwgY29uc3QgUwogICAgIGlmICh1cmwuaXNFbXB0eSgpICYmIG1pbWVUeXBl
LmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCisgICAgYXV0byYgZG9jdW1lbnQg
PSBvd25lckVsZW1lbnQuZG9jdW1lbnQoKTsKKwogICAgIFVSTCBjb21wbGV0ZWRVUkw7CiAgICAg
aWYgKCF1cmwuaXNFbXB0eSgpKQogICAgICAgICBjb21wbGV0ZWRVUkwgPSBjb21wbGV0ZVVSTCh1
cmwpOwogCi0gICAgZG9jdW1lbnQoKS0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPnVwZ3JhZGVJ
bnNlY3VyZVJlcXVlc3RJZk5lZWRlZChjb21wbGV0ZWRVUkwsIENvbnRlbnRTZWN1cml0eVBvbGlj
eTo6SW5zZWN1cmVSZXF1ZXN0VHlwZTo6TG9hZCk7CisgICAgZG9jdW1lbnQuY29udGVudFNlY3Vy
aXR5UG9saWN5KCktPnVwZ3JhZGVJbnNlY3VyZVJlcXVlc3RJZk5lZWRlZChjb21wbGV0ZWRVUkws
IENvbnRlbnRTZWN1cml0eVBvbGljeTo6SW5zZWN1cmVSZXF1ZXN0VHlwZTo6TG9hZCk7CiAKICAg
ICBib29sIGhhc0ZhbGxiYWNrQ29udGVudCA9IGlzPEhUTUxPYmplY3RFbGVtZW50Pihvd25lckVs
ZW1lbnQpICYmIGRvd25jYXN0PEhUTUxPYmplY3RFbGVtZW50Pihvd25lckVsZW1lbnQpLmhhc0Zh
bGxiYWNrQ29udGVudCgpOwogCiAgICAgYm9vbCB1c2VGYWxsYmFjazsKICAgICBpZiAoc2hvdWxk
VXNlUGx1Z2luKGNvbXBsZXRlZFVSTCwgbWltZVR5cGUsIGhhc0ZhbGxiYWNrQ29udGVudCwgdXNl
RmFsbGJhY2spKSB7CiAgICAgICAgIGJvb2wgc3VjY2VzcyA9IHJlcXVlc3RQbHVnaW4ob3duZXJF
bGVtZW50LCBjb21wbGV0ZWRVUkwsIG1pbWVUeXBlLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcywg
dXNlRmFsbGJhY2spOwotICAgICAgICBsb2dQbHVnaW5SZXF1ZXN0KGRvY3VtZW50KCktPnBhZ2Uo
KSwgbWltZVR5cGUsIGNvbXBsZXRlZFVSTCwgc3VjY2Vzcyk7CisgICAgICAgIGxvZ1BsdWdpblJl
cXVlc3QoZG9jdW1lbnQucGFnZSgpLCBtaW1lVHlwZSwgY29tcGxldGVkVVJMLCBzdWNjZXNzKTsK
ICAgICAgICAgcmV0dXJuIHN1Y2Nlc3M7CiAgICAgfQogCkBAIC0yMjcsNyArMjMxLDcgQEAgYm9v
bCBTdWJmcmFtZUxvYWRlcjo6cmVxdWVzdE9iamVjdChIVE1MUGx1Z0luSW1hZ2VFbGVtZW50JiBv
d25lckVsZW1lbnQsIGNvbnN0IFMKICAgICByZXR1cm4gbG9hZE9yUmVkaXJlY3RTdWJmcmFtZShv
d25lckVsZW1lbnQsIGNvbXBsZXRlZFVSTCwgZnJhbWVOYW1lLCBMb2NrSGlzdG9yeTo6WWVzLCBM
b2NrQmFja0ZvcndhcmRMaXN0OjpZZXMpOwogfQogCi1QYXNzUmVmUHRyPFdpZGdldD4gU3ViZnJh
bWVMb2FkZXI6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYgc2l6ZSwgSFRN
TEFwcGxldEVsZW1lbnQmIGVsZW1lbnQsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVz
LCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpCitSZWZQdHI8V2lkZ2V0PiBTdWJm
cmFtZUxvYWRlcjo6Y3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXplJiBzaXplLCBI
VE1MQXBwbGV0RWxlbWVudCYgZWxlbWVudCwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFt
ZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykKIHsKICAgICBTdHJpbmcgYmFz
ZVVSTFN0cmluZzsKICAgICBTdHJpbmcgY29kZUJhc2VVUkxTdHJpbmc7CkBAIC0yNTYsMTQgKzI2
MCwxNCBAQCBQYXNzUmVmUHRyPFdpZGdldD4gU3ViZnJhbWVMb2FkZXI6OmNyZWF0ZUphdmFBcHBs
ZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYgc2l6ZSwgSAogICAgIH0KIAogICAgIGlmIChiYXNlVVJM
U3RyaW5nLmlzRW1wdHkoKSkKLSAgICAgICAgYmFzZVVSTFN0cmluZyA9IG1fZnJhbWUuZG9jdW1l
bnQoKS0+YmFzZVVSTCgpLnN0cmluZygpOworICAgICAgICBiYXNlVVJMU3RyaW5nID0gZWxlbWVu
dC5kb2N1bWVudCgpLmJhc2VVUkwoKS5zdHJpbmcoKTsKICAgICBVUkwgYmFzZVVSTCA9IGNvbXBs
ZXRlVVJMKGJhc2VVUkxTdHJpbmcpOwogCiAgICAgUmVmUHRyPFdpZGdldD4gd2lkZ2V0OwogICAg
IGlmIChhbGxvd1BsdWdpbnMoKSkKLSAgICAgICAgd2lkZ2V0ID0gbV9mcmFtZS5sb2FkZXIoKS5j
bGllbnQoKS5jcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KHNpemUsICZlbGVtZW50LCBiYXNlVVJMLCBw
YXJhbU5hbWVzLCBwYXJhbVZhbHVlcyk7CisgICAgICAgIHdpZGdldCA9IG1fZnJhbWUubG9hZGVy
KCkuY2xpZW50KCkuY3JlYXRlSmF2YUFwcGxldFdpZGdldChzaXplLCBlbGVtZW50LCBiYXNlVVJM
LCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcyk7CiAKLSAgICBsb2dQbHVnaW5SZXF1ZXN0KGRvY3Vt
ZW50KCktPnBhZ2UoKSwgZWxlbWVudC5zZXJ2aWNlVHlwZSgpLCBTdHJpbmcoKSwgd2lkZ2V0KTsK
KyAgICBsb2dQbHVnaW5SZXF1ZXN0KG1fZnJhbWUucGFnZSgpLCBlbGVtZW50LnNlcnZpY2VUeXBl
KCksIFN0cmluZygpLCB3aWRnZXQpOwogCiAgICAgaWYgKCF3aWRnZXQpIHsKICAgICAgICAgUmVu
ZGVyRW1iZWRkZWRPYmplY3QqIHJlbmRlcmVyID0gZWxlbWVudC5yZW5kZXJFbWJlZGRlZE9iamVj
dCgpOwpAQCAtMjc3LDE2ICsyODEsMTggQEAgUGFzc1JlZlB0cjxXaWRnZXQ+IFN1YmZyYW1lTG9h
ZGVyOjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmIHNpemUsIEgKICAgICBy
ZXR1cm4gd2lkZ2V0OwogfQogCi1GcmFtZSogU3ViZnJhbWVMb2FkZXI6OmxvYWRPclJlZGlyZWN0
U3ViZnJhbWUoSFRNTEZyYW1lT3duZXJFbGVtZW50JiBvd25lckVsZW1lbnQsIGNvbnN0IFVSTCYg
cmVxdWVzdFVybCwgY29uc3QgQXRvbWljU3RyaW5nJiBmcmFtZU5hbWUsIExvY2tIaXN0b3J5IGxv
Y2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QpCitGcmFt
ZSogU3ViZnJhbWVMb2FkZXI6OmxvYWRPclJlZGlyZWN0U3ViZnJhbWUoSFRNTEZyYW1lT3duZXJF
bGVtZW50JiBvd25lckVsZW1lbnQsIGNvbnN0IFVSTCYgcmVxdWVzdFVSTCwgY29uc3QgQXRvbWlj
U3RyaW5nJiBmcmFtZU5hbWUsIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBMb2NrQmFja0Zvcndh
cmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QpCiB7Ci0gICAgVVJMIHVybCA9IHJlcXVlc3RVcmw7
Ci0gICAgb3duZXJFbGVtZW50LmRvY3VtZW50KCkuY29udGVudFNlY3VyaXR5UG9saWN5KCktPnVw
Z3JhZGVJbnNlY3VyZVJlcXVlc3RJZk5lZWRlZCh1cmwsIENvbnRlbnRTZWN1cml0eVBvbGljeTo6
SW5zZWN1cmVSZXF1ZXN0VHlwZTo6TG9hZCk7CisgICAgYXV0byYgaW5pdGlhdGluZ0RvY3VtZW50
ID0gb3duZXJFbGVtZW50LmRvY3VtZW50KCk7CisKKyAgICBVUkwgdXBncmFkZWRSZXF1ZXN0VVJM
ID0gcmVxdWVzdFVSTDsKKyAgICBpbml0aWF0aW5nRG9jdW1lbnQuY29udGVudFNlY3VyaXR5UG9s
aWN5KCktPnVwZ3JhZGVJbnNlY3VyZVJlcXVlc3RJZk5lZWRlZCh1cGdyYWRlZFJlcXVlc3RVUkws
IENvbnRlbnRTZWN1cml0eVBvbGljeTo6SW5zZWN1cmVSZXF1ZXN0VHlwZTo6TG9hZCk7CiAKLSAg
ICBGcmFtZSogZnJhbWUgPSBvd25lckVsZW1lbnQuY29udGVudEZyYW1lKCk7CisgICAgYXV0byog
ZnJhbWUgPSBvd25lckVsZW1lbnQuY29udGVudEZyYW1lKCk7CiAgICAgaWYgKGZyYW1lKQotICAg
ICAgICBmcmFtZS0+bmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlTG9jYXRpb25DaGFuZ2Uo
bV9mcmFtZS5kb2N1bWVudCgpLCBtX2ZyYW1lLmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCks
IHVybCwgbV9mcmFtZS5sb2FkZXIoKS5vdXRnb2luZ1JlZmVycmVyKCksIGxvY2tIaXN0b3J5LCBs
b2NrQmFja0ZvcndhcmRMaXN0KTsKKyAgICAgICAgZnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIo
KS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKGluaXRpYXRpbmdEb2N1bWVudCwgaW5pdGlhdGluZ0Rv
Y3VtZW50LnNlY3VyaXR5T3JpZ2luKCksIHVwZ3JhZGVkUmVxdWVzdFVSTCwgbV9mcmFtZS5sb2Fk
ZXIoKS5vdXRnb2luZ1JlZmVycmVyKCksIGxvY2tIaXN0b3J5LCBsb2NrQmFja0ZvcndhcmRMaXN0
KTsKICAgICBlbHNlCi0gICAgICAgIGZyYW1lID0gbG9hZFN1YmZyYW1lKG93bmVyRWxlbWVudCwg
dXJsLCBmcmFtZU5hbWUsIG1fZnJhbWUubG9hZGVyKCkub3V0Z29pbmdSZWZlcnJlcigpKTsKKyAg
ICAgICAgZnJhbWUgPSBsb2FkU3ViZnJhbWUob3duZXJFbGVtZW50LCB1cGdyYWRlZFJlcXVlc3RV
UkwsIGZyYW1lTmFtZSwgbV9mcmFtZS5sb2FkZXIoKS5vdXRnb2luZ1JlZmVycmVyKCkpOwogCiAg
ICAgaWYgKCFmcmFtZSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CkBAIC0zMDMsMTMgKzMwOSwx
NSBAQCBGcmFtZSogU3ViZnJhbWVMb2FkZXI6OmxvYWRTdWJmcmFtZShIVE1MRnJhbWVPd25lckVs
ZW1lbnQmIG93bmVyRWxlbWVudCwgY29uc3QgVQogICAgIGludCBtYXJnaW5XaWR0aCA9IC0xOwog
ICAgIGludCBtYXJnaW5IZWlnaHQgPSAtMTsKICAgICBpZiAoaXM8SFRNTEZyYW1lRWxlbWVudEJh
c2U+KG93bmVyRWxlbWVudCkpIHsKLSAgICAgICAgSFRNTEZyYW1lRWxlbWVudEJhc2UmIGZyYW1l
RWxlbWVudEJhc2UgPSBkb3duY2FzdDxIVE1MRnJhbWVFbGVtZW50QmFzZT4ob3duZXJFbGVtZW50
KTsKKyAgICAgICAgYXV0byYgZnJhbWVFbGVtZW50QmFzZSA9IGRvd25jYXN0PEhUTUxGcmFtZUVs
ZW1lbnRCYXNlPihvd25lckVsZW1lbnQpOwogICAgICAgICBhbGxvd3NTY3JvbGxpbmcgPSBmcmFt
ZUVsZW1lbnRCYXNlLnNjcm9sbGluZ01vZGUoKSAhPSBTY3JvbGxiYXJBbHdheXNPZmY7CiAgICAg
ICAgIG1hcmdpbldpZHRoID0gZnJhbWVFbGVtZW50QmFzZS5tYXJnaW5XaWR0aCgpOwogICAgICAg
ICBtYXJnaW5IZWlnaHQgPSBmcmFtZUVsZW1lbnRCYXNlLm1hcmdpbkhlaWdodCgpOwogICAgIH0K
IAotICAgIGlmICghb3duZXJFbGVtZW50LmRvY3VtZW50KCkuc2VjdXJpdHlPcmlnaW4oKS0+Y2Fu
RGlzcGxheSh1cmwpKSB7CisgICAgYXV0byBkb2N1bWVudCA9IG1ha2VSZWYob3duZXJFbGVtZW50
LmRvY3VtZW50KCkpOworCisgICAgaWYgKCFkb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKS0+Y2Fu
RGlzcGxheSh1cmwpKSB7CiAgICAgICAgIEZyYW1lTG9hZGVyOjpyZXBvcnRMb2NhbExvYWRGYWls
ZWQoJm1fZnJhbWUsIHVybC5zdHJpbmcoKSk7CiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAg
IH0KQEAgLTMxNywyMCArMzI1LDIwIEBAIEZyYW1lKiBTdWJmcmFtZUxvYWRlcjo6bG9hZFN1YmZy
YW1lKEhUTUxGcmFtZU93bmVyRWxlbWVudCYgb3duZXJFbGVtZW50LCBjb25zdCBVCiAgICAgaWYg
KCFTdWJmcmFtZUxvYWRpbmdEaXNhYmxlcjo6Y2FuTG9hZEZyYW1lKG93bmVyRWxlbWVudCkpCiAg
ICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgU3RyaW5nIHJlZmVycmVyVG9Vc2UgPSBTZWN1
cml0eVBvbGljeTo6Z2VuZXJhdGVSZWZlcnJlckhlYWRlcihvd25lckVsZW1lbnQuZG9jdW1lbnQo
KS5yZWZlcnJlclBvbGljeSgpLCB1cmwsIHJlZmVycmVyKTsKKyAgICBTdHJpbmcgcmVmZXJyZXJU
b1VzZSA9IFNlY3VyaXR5UG9saWN5OjpnZW5lcmF0ZVJlZmVycmVySGVhZGVyKGRvY3VtZW50LT5y
ZWZlcnJlclBvbGljeSgpLCB1cmwsIHJlZmVycmVyKTsKIAogICAgIC8vIFByZXZlbnQgaW5pdGlh
bCBlbXB0eSBkb2N1bWVudCBsb2FkIGZyb20gdHJpZ2dlcmluZyBsb2FkIGV2ZW50cy4KLSAgICBt
X2ZyYW1lLmRvY3VtZW50KCktPmluY3JlbWVudExvYWRFdmVudERlbGF5Q291bnQoKTsKKyAgICBk
b2N1bWVudC0+aW5jcmVtZW50TG9hZEV2ZW50RGVsYXlDb3VudCgpOwogCi0gICAgUmVmUHRyPEZy
YW1lPiBmcmFtZSA9IG1fZnJhbWUubG9hZGVyKCkuY2xpZW50KCkuY3JlYXRlRnJhbWUodXJsLCBu
YW1lLCAmb3duZXJFbGVtZW50LCByZWZlcnJlclRvVXNlLCBhbGxvd3NTY3JvbGxpbmcsIG1hcmdp
bldpZHRoLCBtYXJnaW5IZWlnaHQpOworICAgIGF1dG8gZnJhbWUgPSBtX2ZyYW1lLmxvYWRlcigp
LmNsaWVudCgpLmNyZWF0ZUZyYW1lKHVybCwgbmFtZSwgb3duZXJFbGVtZW50LCByZWZlcnJlclRv
VXNlLCBhbGxvd3NTY3JvbGxpbmcsIG1hcmdpbldpZHRoLCBtYXJnaW5IZWlnaHQpOwogCi0gICAg
bV9mcmFtZS5kb2N1bWVudCgpLT5kZWNyZW1lbnRMb2FkRXZlbnREZWxheUNvdW50KCk7CisgICAg
ZG9jdW1lbnQtPmRlY3JlbWVudExvYWRFdmVudERlbGF5Q291bnQoKTsKIAogICAgIGlmICghZnJh
bWUpICB7CiAgICAgICAgIG1fZnJhbWUubG9hZGVyKCkuY2hlY2tDYWxsSW1wbGljaXRDbG9zZSgp
OwogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICB9Ci0gICAgCisKICAgICAvLyBBbGwgbmV3
IGZyYW1lcyB3aWxsIGhhdmUgbV9pc0NvbXBsZXRlIHNldCB0byB0cnVlIGF0IHRoaXMgcG9pbnQg
ZHVlIHRvIHN5bmNocm9ub3VzbHkgbG9hZGluZwogICAgIC8vIGFuIGVtcHR5IGRvY3VtZW50IGlu
IEZyYW1lTG9hZGVyOjppbml0KCkuIEJ1dCBtYW55IGZyYW1lcyB3aWxsIG5vdyBiZSBzdGFydGlu
ZyBhbgogICAgIC8vIGFzeW5jaHJvbm91cyBsb2FkIG9mIHVybCwgc28gd2Ugc2V0IG1faXNDb21w
bGV0ZSB0byBmYWxzZSBhbmQgdGhlbiBjaGVjayBpZiB0aGUgbG9hZCBpcwpAQCAtMzQwLDEyICsz
NDgsMTIgQEAgRnJhbWUqIFN1YmZyYW1lTG9hZGVyOjpsb2FkU3ViZnJhbWUoSFRNTEZyYW1lT3du
ZXJFbGVtZW50JiBvd25lckVsZW1lbnQsIGNvbnN0IFUKICAgICBmcmFtZS0+bG9hZGVyKCkuc3Rh
cnRlZCgpOwogICAgCiAgICAgYXV0byogcmVuZGVyZXIgPSBvd25lckVsZW1lbnQucmVuZGVyZXIo
KTsKLSAgICBGcmFtZVZpZXcqIHZpZXcgPSBmcmFtZS0+dmlldygpOworICAgIGF1dG8qIHZpZXcg
PSBmcmFtZS0+dmlldygpOwogICAgIGlmIChpczxSZW5kZXJXaWRnZXQ+KHJlbmRlcmVyKSAmJiB2
aWV3KQogICAgICAgICBkb3duY2FzdDxSZW5kZXJXaWRnZXQ+KCpyZW5kZXJlcikuc2V0V2lkZ2V0
KHZpZXcpOwotICAgIAorCiAgICAgbV9mcmFtZS5sb2FkZXIoKS5jaGVja0NhbGxJbXBsaWNpdENs
b3NlKCk7Ci0gICAgCisKICAgICAvLyBTb21lIGxvYWRzIGFyZSBwZXJmb3JtZWQgc3luY2hyb25v
dXNseSAoZS5nLiwgYWJvdXQ6YmxhbmsgYW5kIGxvYWRzCiAgICAgLy8gY2FuY2VsbGVkIGJ5IHJl
dHVybmluZyBhIG51bGwgUmVzb3VyY2VSZXF1ZXN0IGZyb20gcmVxdWVzdEZyb21EZWxlZ2F0ZSku
CiAgICAgLy8gSW4gdGhlc2UgY2FzZXMsIHRoZSBzeW5jaHJvbm91cyBsb2FkIHdvdWxkIGhhdmUg
ZmluaXNoZWQKQEAgLTM4MSwxNyArMzg5LDE0IEBAIGJvb2wgU3ViZnJhbWVMb2FkZXI6OnNob3Vs
ZFVzZVBsdWdpbihjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgYm9vCiAg
ICAgcmV0dXJuIG9iamVjdFR5cGUgPT0gT2JqZWN0Q29udGVudFR5cGU6Ok5vbmUgfHwgb2JqZWN0
VHlwZSA9PSBPYmplY3RDb250ZW50VHlwZTo6UGx1Z0luOwogfQogCi1Eb2N1bWVudCogU3ViZnJh
bWVMb2FkZXI6OmRvY3VtZW50KCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9mcmFtZS5kb2N1bWVu
dCgpOwotfQotCiBib29sIFN1YmZyYW1lTG9hZGVyOjpsb2FkUGx1Z2luKEhUTUxQbHVnSW5JbWFn
ZUVsZW1lbnQmIHBsdWdpbkVsZW1lbnQsIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIG1p
bWVUeXBlLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0
cmluZz4mIHBhcmFtVmFsdWVzLCBib29sIHVzZUZhbGxiYWNrKQogewogICAgIGlmICh1c2VGYWxs
YmFjaykKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgUmVuZGVyRW1iZWRkZWRPYmplY3Qq
IHJlbmRlcmVyID0gcGx1Z2luRWxlbWVudC5yZW5kZXJFbWJlZGRlZE9iamVjdCgpOworICAgIGF1
dG8mIGRvY3VtZW50ID0gcGx1Z2luRWxlbWVudC5kb2N1bWVudCgpOworICAgIGF1dG8qIHJlbmRl
cmVyID0gcGx1Z2luRWxlbWVudC5yZW5kZXJFbWJlZGRlZE9iamVjdCgpOworCiAgICAgLy8gRklY
TUU6IFRoaXMgY29kZSBzaG91bGQgbm90IGRlcGVuZCBvbiByZW5kZXJlciEKICAgICBpZiAoIXJl
bmRlcmVyKQogICAgICAgICByZXR1cm4gZmFsc2U7CkBAIC0zOTksMTcgKzQwNCwxOSBAQCBib29s
IFN1YmZyYW1lTG9hZGVyOjpsb2FkUGx1Z2luKEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQmIHBsdWdp
bkVsZW1lbnQsIGNvbnN0IFVSTAogICAgIHBsdWdpbkVsZW1lbnQuc3ViZnJhbWVMb2FkZXJXaWxs
Q3JlYXRlUGx1Z0luKHVybCk7CiAKICAgICBJbnRTaXplIGNvbnRlbnRTaXplID0gcm91bmRlZElu
dFNpemUoTGF5b3V0U2l6ZShyZW5kZXJlci0+Y29udGVudFdpZHRoKCksIHJlbmRlcmVyLT5jb250
ZW50SGVpZ2h0KCkpKTsKLSAgICBib29sIGxvYWRNYW51YWxseSA9IGlzPFBsdWdpbkRvY3VtZW50
PigqZG9jdW1lbnQoKSkgJiYgIW1fY29udGFpbnNQbHVnaW5zICYmIGRvd25jYXN0PFBsdWdpbkRv
Y3VtZW50PigqZG9jdW1lbnQoKSkuc2hvdWxkTG9hZFBsdWdpbk1hbnVhbGx5KCk7CisgICAgYm9v
bCBsb2FkTWFudWFsbHkgPSBpczxQbHVnaW5Eb2N1bWVudD4oZG9jdW1lbnQpICYmICFtX2NvbnRh
aW5zUGx1Z2lucyAmJiBkb3duY2FzdDxQbHVnaW5Eb2N1bWVudD4oZG9jdW1lbnQpLnNob3VsZExv
YWRQbHVnaW5NYW51YWxseSgpOwogCiAjaWYgUExBVEZPUk0oSU9TKQogICAgIC8vIE9uIGlPUywg
d2Ugb25seSB0ZWxsIHRoZSBwbHVnaW4gdG8gYmUgaW4gZnVsbCBwYWdlIG1vZGUgaWYgdGhlIGNv
bnRhaW5pbmcgcGx1Z2luIGRvY3VtZW50IGlzIHRoZSB0b3AgbGV2ZWwgZG9jdW1lbnQuCi0gICAg
aWYgKGRvY3VtZW50KCktPm93bmVyRWxlbWVudCgpKQorICAgIGlmIChkb2N1bWVudC5vd25lckVs
ZW1lbnQoKSkKICAgICAgICAgbG9hZE1hbnVhbGx5ID0gZmFsc2U7CiAjZW5kaWYKIAotICAgIFdl
YWtQdHI8UmVuZGVyV2lkZ2V0PiB3ZWFrUmVuZGVyZXIgPSByZW5kZXJlci0+Y3JlYXRlV2Vha1B0
cigpOwotICAgIC8vIGNyZWF0ZVBsdWdpbiAqbWF5KiBjYXVzZSB0aGlzIHJlbmRlcmVyIHRvIGRp
c2FwcGVhciBmcm9tIHVuZGVybmVhdGguCi0gICAgUmVmUHRyPFdpZGdldD4gd2lkZ2V0ID0gbV9m
cmFtZS5sb2FkZXIoKS5jbGllbnQoKS5jcmVhdGVQbHVnaW4oY29udGVudFNpemUsICZwbHVnaW5F
bGVtZW50LCB1cmwsIHBhcmFtTmFtZXMsIHBhcmFtVmFsdWVzLCBtaW1lVHlwZSwgbG9hZE1hbnVh
bGx5KTsKKyAgICBhdXRvIHdlYWtSZW5kZXJlciA9IHJlbmRlcmVyLT5jcmVhdGVXZWFrUHRyKCk7
CisKKyAgICBhdXRvIHdpZGdldCA9IG1fZnJhbWUubG9hZGVyKCkuY2xpZW50KCkuY3JlYXRlUGx1
Z2luKGNvbnRlbnRTaXplLCBwbHVnaW5FbGVtZW50LCB1cmwsIHBhcmFtTmFtZXMsIHBhcmFtVmFs
dWVzLCBtaW1lVHlwZSwgbG9hZE1hbnVhbGx5KTsKKworICAgIC8vIFRoZSBjYWxsIHRvIGNyZWF0
ZVBsdWdpbiAqbWF5KiBjYXVzZSB0aGlzIHJlbmRlcmVyIHRvIGRpc2FwcGVhciBmcm9tIHVuZGVy
bmVhdGguCiAgICAgaWYgKCF3ZWFrUmVuZGVyZXIpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIApA
QCAtNDMzLDkgKzQ0MCw3IEBAIFVSTCBTdWJmcmFtZUxvYWRlcjo6Y29tcGxldGVVUkwoY29uc3Qg
U3RyaW5nJiB1cmwpIGNvbnN0CiAKIGJvb2wgU3ViZnJhbWVMb2FkZXI6OnNob3VsZENvbnZlcnRJ
bnZhbGlkVVJMc1RvQmxhbmsoKSBjb25zdAogewotICAgIGlmIChTZXR0aW5ncyogc2V0dGluZ3Mg
PSBkb2N1bWVudCgpID8gZG9jdW1lbnQoKS0+c2V0dGluZ3MoKSA6IG51bGxwdHIpCi0gICAgICAg
IHJldHVybiBzZXR0aW5ncy0+c2hvdWxkQ29udmVydEludmFsaWRVUkxzVG9CbGFuaygpOwotICAg
IHJldHVybiB0cnVlOworICAgIHJldHVybiBtX2ZyYW1lLnNldHRpbmdzKCkuc2hvdWxkQ29udmVy
dEludmFsaWRVUkxzVG9CbGFuaygpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3ViZnJhbWVMb2FkZXIuaCBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9TdWJmcmFtZUxvYWRlci5oCmluZGV4IDk1MTM5NzRiODE3MDVhZWM2NWQx
NTUwMjMzOTM1ZDRhNTQyM2I3ODUuLjEyYmY3NzE3ZTc0MzIzNWNjYzdkYTdkY2NjMzM3ZDQyNjky
YWE5NjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJmcmFtZUxvYWRlci5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJmcmFtZUxvYWRlci5oCkBAIC02MSw3ICs2
MSw3IEBAIHB1YmxpYzoKICAgICBib29sIHJlcXVlc3RPYmplY3QoSFRNTFBsdWdJbkltYWdlRWxl
bWVudCYsIGNvbnN0IFN0cmluZyYgdXJsLCBjb25zdCBBdG9taWNTdHJpbmcmIGZyYW1lTmFtZSwK
ICAgICAgICAgY29uc3QgU3RyaW5nJiBzZXJ2aWNlVHlwZSwgY29uc3QgVmVjdG9yPFN0cmluZz4m
IHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcyk7CiAKLSAgICBQ
YXNzUmVmUHRyPFdpZGdldD4gY3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXplJiwg
SFRNTEFwcGxldEVsZW1lbnQmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29u
c3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKTsKKyAgICBSZWZQdHI8V2lkZ2V0PiBjcmVh
dGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmLCBIVE1MQXBwbGV0RWxlbWVudCYsIGNv
bnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFy
YW1WYWx1ZXMpOwogCiAgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBhbGxvd1BsdWdpbnMoKTsKIApA
QCAtNzgsMTQgKzc4LDEyIEBAIHByaXZhdGU6CiAgICAgYm9vbCBzaG91bGRVc2VQbHVnaW4oY29u
c3QgVVJMJiwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgYm9vbCBoYXNGYWxsYmFjaywgYm9vbCYg
dXNlRmFsbGJhY2spOwogICAgIGJvb2wgcGx1Z2luSXNMb2FkYWJsZShjb25zdCBVUkwmLCBjb25z
dCBTdHJpbmcmIG1pbWVUeXBlKTsKIAotICAgIERvY3VtZW50KiBkb2N1bWVudCgpIGNvbnN0Owor
ICAgIFVSTCBjb21wbGV0ZVVSTChjb25zdCBTdHJpbmcmKSBjb25zdDsKIAogICAgIGJvb2wgc2hv
dWxkQ29udmVydEludmFsaWRVUkxzVG9CbGFuaygpIGNvbnN0OwogCiAgICAgYm9vbCBtX2NvbnRh
aW5zUGx1Z2luczsKICAgICBGcmFtZSYgbV9mcmFtZTsKLQotICAgIFVSTCBjb21wbGV0ZVVSTChj
b25zdCBTdHJpbmcmKSBjb25zdDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwCmluZGV4IGI2YTYzNDEwZDNl
YzY2Zjk1ZTY2MTA1YWFkZjdjMzMyZjliNDQxYTYuLjZlOTdmYTQ5MWY0MmJhNGNlNTI5MjY1OTE5
YjM2YjgzZjUzMWMzNTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNv
dXJjZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YnJlc291cmNlTG9h
ZGVyLmNwcApAQCAtMjU2LDYgKzI1Niw3IEBAIHZvaWQgU3VicmVzb3VyY2VMb2FkZXI6OmRpZFNl
bmREYXRhKHVuc2lnbmVkIGxvbmcgbG9uZyBieXRlc1NlbnQsIHVuc2lnbmVkIGxvbmcKIH0KIAog
I2lmIFVTRShRVUlDS19MT09LKQorCiBib29sIFN1YnJlc291cmNlTG9hZGVyOjpzaG91bGRDcmVh
dGVRdWlja0xvb2tIYW5kbGVGb3JSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNw
b25zZSkgY29uc3QKIHsKICAgICBpZiAobV9yZXNvdXJjZS0+dHlwZSgpICE9IENhY2hlZFJlc291
cmNlOjpNYWluUmVzb3VyY2UpCkBAIC0yNjYsNiArMjY3LDcgQEAgYm9vbCBTdWJyZXNvdXJjZUxv
YWRlcjo6c2hvdWxkQ3JlYXRlUXVpY2tMb29rSGFuZGxlRm9yUmVzcG9uc2UoY29uc3QgUmVzb3Vy
Y2VSZXMKIAogICAgIHJldHVybiBRdWlja0xvb2tIYW5kbGU6OnNob3VsZENyZWF0ZUZvck1JTUVU
eXBlKHJlc3BvbnNlLm1pbWVUeXBlKCkpOwogfQorCiAjZW5kaWYKIAogdm9pZCBTdWJyZXNvdXJj
ZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3Bv
bnNlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0
aW9uQ2FjaGUuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9u
Q2FjaGUuY3BwCmluZGV4IDZmODJlMWRjNzk2YTk2MDIwOTFiZDY4MmM5NzQ3YzI0OGI5NTRhZDEu
LjYwMDljY2E3NzJmZTJiY2E3NjAyYzczMTQ2NzhmZTRhMjQ4YjU5YmQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZS5jcHAKQEAgLTQz
LDE3ICs0MywxMyBAQCBzdGF0aWMgaW5saW5lIGJvb2wgZmFsbGJhY2tVUkxMb25nZXJUaGFuKGNv
bnN0IHN0ZDo6cGFpcjxVUkwsIFVSTD4mIGxocywgY29uc3QgcwogfQogCiBBcHBsaWNhdGlvbkNh
Y2hlOjpBcHBsaWNhdGlvbkNhY2hlKCkKLSAgICA6IG1fZ3JvdXAobnVsbHB0cikKLSAgICAsIG1f
bWFuaWZlc3QobnVsbHB0cikKLSAgICAsIG1fZXN0aW1hdGVkU2l6ZUluU3RvcmFnZSgwKQotICAg
ICwgbV9zdG9yYWdlSUQoMCkKIHsKIH0KIAogQXBwbGljYXRpb25DYWNoZTo6fkFwcGxpY2F0aW9u
Q2FjaGUoKQogewogICAgIGlmIChtX2dyb3VwKQotICAgICAgICBtX2dyb3VwLT5jYWNoZURlc3Ry
b3llZCh0aGlzKTsKKyAgICAgICAgbV9ncm91cC0+Y2FjaGVEZXN0cm95ZWQoKnRoaXMpOwogfQog
ICAgIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlOjpzZXRHcm91cChBcHBsaWNhdGlvbkNhY2hlR3Jv
dXAqIGdyb3VwKQpAQCAtNjQsNTcgKzYwLDM5IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZTo6c2V0
R3JvdXAoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCkKIAogYm9vbCBBcHBsaWNhdGlvbkNh
Y2hlOjppc0NvbXBsZXRlKCkKIHsKLSAgICByZXR1cm4gbV9ncm91cCAmJiBtX2dyb3VwLT5jYWNo
ZUlzQ29tcGxldGUodGhpcyk7CisgICAgcmV0dXJuIG1fZ3JvdXAgJiYgbV9ncm91cC0+Y2FjaGVJ
c0NvbXBsZXRlKCp0aGlzKTsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlOjpzZXRNYW5pZmVz
dFJlc291cmNlKFBhc3NSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiBtYW5pZmVzdCkK
K3ZvaWQgQXBwbGljYXRpb25DYWNoZTo6c2V0TWFuaWZlc3RSZXNvdXJjZShSZWY8QXBwbGljYXRp
b25DYWNoZVJlc291cmNlPiYmIG1hbmlmZXN0KQogewotICAgIEFTU0VSVChtYW5pZmVzdCk7CiAg
ICAgQVNTRVJUKCFtX21hbmlmZXN0KTsKICAgICBBU1NFUlQobWFuaWZlc3QtPnR5cGUoKSAmIEFw
cGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6TWFuaWZlc3QpOwotICAgIAotICAgIG1fbWFuaWZlc3Qg
PSBtYW5pZmVzdC5nZXQoKTsKLSAgICAKLSAgICBhZGRSZXNvdXJjZShtYW5pZmVzdCk7CisKKyAg
ICBtX21hbmlmZXN0ID0gbWFuaWZlc3QucHRyKCk7CisKKyAgICBhZGRSZXNvdXJjZShXVEZNb3Zl
KG1hbmlmZXN0KSk7CiB9CiAgICAgCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGU6OmFkZFJlc291cmNl
KFBhc3NSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiByZXNvdXJjZSkKK3ZvaWQgQXBw
bGljYXRpb25DYWNoZTo6YWRkUmVzb3VyY2UoUmVmPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4m
JiByZXNvdXJjZSkKIHsKLSAgICBBU1NFUlQocmVzb3VyY2UpOwotICAgIAotICAgIGNvbnN0IFN0
cmluZyYgdXJsID0gcmVzb3VyY2UtPnVybCgpOwotICAgIAorICAgIGF1dG8mIHVybCA9IHJlc291
cmNlLT51cmwoKTsKKworICAgIEFTU0VSVCghVVJMKFBhcnNlZFVSTFN0cmluZywgdXJsKS5oYXNG
cmFnbWVudElkZW50aWZpZXIoKSk7CiAgICAgQVNTRVJUKCFtX3Jlc291cmNlcy5jb250YWlucyh1
cmwpKTsKLSAgICAKKwogICAgIGlmIChtX3N0b3JhZ2VJRCkgewogICAgICAgICBBU1NFUlQoIXJl
c291cmNlLT5zdG9yYWdlSUQoKSk7CiAgICAgICAgIEFTU0VSVChyZXNvdXJjZS0+dHlwZSgpICYg
QXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIpOwotICAgICAgICAKKwogICAgICAgICAv
LyBBZGQgdGhlIHJlc291cmNlIHRvIHRoZSBzdG9yYWdlLgotICAgICAgICBtX2dyb3VwLT5zdG9y
YWdlKCkuc3RvcmUocmVzb3VyY2UuZ2V0KCksIHRoaXMpOworICAgICAgICBtX2dyb3VwLT5zdG9y
YWdlKCkuc3RvcmUocmVzb3VyY2UucHRyKCksIHRoaXMpOwogICAgIH0KIAogICAgIG1fZXN0aW1h
dGVkU2l6ZUluU3RvcmFnZSArPSByZXNvdXJjZS0+ZXN0aW1hdGVkU2l6ZUluU3RvcmFnZSgpOwog
Ci0gICAgbV9yZXNvdXJjZXMuc2V0KHVybCwgcmVzb3VyY2UpOworICAgIG1fcmVzb3VyY2VzLnNl
dCh1cmwsIFdURk1vdmUocmVzb3VyY2UpKTsKIH0KIAotdW5zaWduZWQgQXBwbGljYXRpb25DYWNo
ZTo6cmVtb3ZlUmVzb3VyY2UoY29uc3QgU3RyaW5nJiB1cmwpCi17Ci0gICAgSGFzaE1hcDxTdHJp
bmcsIFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+Pjo6aXRlcmF0b3IgaXQgPSBtX3Jl
c291cmNlcy5maW5kKHVybCk7Ci0gICAgaWYgKGl0ID09IG1fcmVzb3VyY2VzLmVuZCgpKQotICAg
ICAgICByZXR1cm4gMDsKLQotICAgIC8vIFRoZSByZXNvdXJjZSBleGlzdHMsIGdldCBpdHMgdHlw
ZSBzbyB3ZSBjYW4gcmV0dXJuIGl0LgotICAgIHVuc2lnbmVkIHR5cGUgPSBpdC0+dmFsdWUtPnR5
cGUoKTsKLQotICAgIG1fZXN0aW1hdGVkU2l6ZUluU3RvcmFnZSAtPSBpdC0+dmFsdWUtPmVzdGlt
YXRlZFNpemVJblN0b3JhZ2UoKTsKLQotICAgIG1fcmVzb3VyY2VzLnJlbW92ZShpdCk7Ci0KLSAg
ICByZXR1cm4gdHlwZTsKLX0gICAgCi0gICAgCiBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqIEFw
cGxpY2F0aW9uQ2FjaGU6OnJlc291cmNlRm9yVVJMKGNvbnN0IFN0cmluZyYgdXJsKQogewogICAg
IEFTU0VSVCghVVJMKFBhcnNlZFVSTFN0cmluZywgdXJsKS5oYXNGcmFnbWVudElkZW50aWZpZXIo
KSk7CkBAIC0xMzMsOSArMTExLDcgQEAgQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiBBcHBsaWNh
dGlvbkNhY2hlOjpyZXNvdXJjZUZvclJlcXVlc3QoY29uc3QgUmVzb3VyY2VSZXEKICAgICAgICAg
cmV0dXJuIG51bGxwdHI7CiAKICAgICBVUkwgdXJsKHJlcXVlc3QudXJsKCkpOwotICAgIGlmICh1
cmwuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkpCi0gICAgICAgIHVybC5yZW1vdmVGcmFnbWVudElk
ZW50aWZpZXIoKTsKLQorICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKICAgICBy
ZXR1cm4gcmVzb3VyY2VGb3JVUkwodXJsKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGUuaCBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlLmgKaW5kZXggNzYxNzY2MjBmY2Q2ZmEzOWFk
MmE1YzM5NjFiYWMyM2IxN2E3YzAyNS4uOWE0NThjNzEwYzRhZDAxOWIxMzVmZjE0NjcwMDZkZjgw
OTQ4MTdmYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxp
Y2F0aW9uQ2FjaGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGlj
YXRpb25DYWNoZS5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCBB
cHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAx
NyBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKQEAgLTI2LDM1ICsyNiwyOCBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3
dGYvSGFzaE1hcC5oPgotI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+Ci0jaW5jbHVkZSA8d3RmL1Bh
c3NSZWZQdHIuaD4KLSNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgogI2luY2x1ZGUgPHd0Zi90
ZXh0L1N0cmluZ0hhc2guaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFt
ZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlR3JvdXA7CiBjbGFzcyBB
cHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U7Ci1jbGFzcyBEb2N1bWVudExvYWRlcjsKIGNsYXNzIFVS
TDsKIGNsYXNzIFJlc291cmNlUmVxdWVzdDsKLWNsYXNzIFNlY3VyaXR5T3JpZ2luOwogCi10eXBl
ZGVmIFZlY3RvcjxzdGQ6OnBhaXI8VVJMLCBVUkw+PiBGYWxsYmFja1VSTFZlY3RvcjsKK3VzaW5n
IEZhbGxiYWNrVVJMVmVjdG9yID0gVmVjdG9yPHN0ZDo6cGFpcjxVUkwsIFVSTD4+OwogCiBjbGFz
cyBBcHBsaWNhdGlvbkNhY2hlIDogcHVibGljIFJlZkNvdW50ZWQ8QXBwbGljYXRpb25DYWNoZT4g
ewogcHVibGljOgogICAgIHN0YXRpYyBSZWY8QXBwbGljYXRpb25DYWNoZT4gY3JlYXRlKCkgeyBy
ZXR1cm4gYWRvcHRSZWYoKm5ldyBBcHBsaWNhdGlvbkNhY2hlKTsgfQotICAgIAorCiAgICAgfkFw
cGxpY2F0aW9uQ2FjaGUoKTsKIAotICAgIHZvaWQgYWRkUmVzb3VyY2UoUGFzc1JlZlB0cjxBcHBs
aWNhdGlvbkNhY2hlUmVzb3VyY2U+IHJlc291cmNlKTsKLSAgICB1bnNpZ25lZCByZW1vdmVSZXNv
dXJjZShjb25zdCBTdHJpbmcmIHVybCk7Ci0gICAgCi0gICAgdm9pZCBzZXRNYW5pZmVzdFJlc291
cmNlKFBhc3NSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiBtYW5pZmVzdCk7CisgICAg
dm9pZCBhZGRSZXNvdXJjZShSZWY8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiYmKTsKKworICAg
IHZvaWQgc2V0TWFuaWZlc3RSZXNvdXJjZShSZWY8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiYm
KTsKICAgICBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqIG1hbmlmZXN0UmVzb3VyY2UoKSBjb25z
dCB7IHJldHVybiBtX21hbmlmZXN0OyB9Ci0gICAgCisKICAgICB2b2lkIHNldEdyb3VwKEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cCopOwogICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAoKSBj
b25zdCB7IHJldHVybiBtX2dyb3VwOyB9CiAKQEAgLTcyLDM5ICs2NSwzOCBAQCBwdWJsaWM6CiAg
ICAgdm9pZCBzZXRGYWxsYmFja1VSTHMoY29uc3QgRmFsbGJhY2tVUkxWZWN0b3ImKTsKICAgICBj
b25zdCBGYWxsYmFja1VSTFZlY3RvciYgZmFsbGJhY2tVUkxzKCkgY29uc3QgeyByZXR1cm4gbV9m
YWxsYmFja1VSTHM7IH0KICAgICBib29sIHVybE1hdGNoZXNGYWxsYmFja05hbWVzcGFjZShjb25z
dCBVUkwmLCBVUkwqIGZhbGxiYWNrVVJMID0gbnVsbHB0cik7Ci0gICAgCisKICNpZm5kZWYgTkRF
QlVHCiAgICAgdm9pZCBkdW1wKCk7CiAjZW5kaWYKIAotICAgIHR5cGVkZWYgSGFzaE1hcDxTdHJp
bmcsIFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+PiBSZXNvdXJjZU1hcDsKKyAgICB1
c2luZyBSZXNvdXJjZU1hcCA9IEhhc2hNYXA8U3RyaW5nLCBSZWZQdHI8QXBwbGljYXRpb25DYWNo
ZVJlc291cmNlPj47CiAgICAgY29uc3QgUmVzb3VyY2VNYXAmIHJlc291cmNlcygpIGNvbnN0IHsg
cmV0dXJuIG1fcmVzb3VyY2VzOyB9Ci0gICAgCisKICAgICB2b2lkIHNldFN0b3JhZ2VJRCh1bnNp
Z25lZCBzdG9yYWdlSUQpIHsgbV9zdG9yYWdlSUQgPSBzdG9yYWdlSUQ7IH0KICAgICB1bnNpZ25l
ZCBzdG9yYWdlSUQoKSBjb25zdCB7IHJldHVybiBtX3N0b3JhZ2VJRDsgfQogICAgIHZvaWQgY2xl
YXJTdG9yYWdlSUQoKTsKLSAgICAKKwogICAgIHN0YXRpYyBib29sIHJlcXVlc3RJc0hUVFBPckhU
VFBTR2V0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYpOwogCiAgICAgaW50NjRfdCBlc3RpbWF0ZWRT
aXplSW5TdG9yYWdlKCkgY29uc3QgeyByZXR1cm4gbV9lc3RpbWF0ZWRTaXplSW5TdG9yYWdlOyB9
CiAKIHByaXZhdGU6CiAgICAgQXBwbGljYXRpb25DYWNoZSgpOwotICAgIAotICAgIEFwcGxpY2F0
aW9uQ2FjaGVHcm91cCogbV9ncm91cDsKKworICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogbV9n
cm91cCB7IG51bGxwdHIgfTsKICAgICBSZXNvdXJjZU1hcCBtX3Jlc291cmNlczsKLSAgICBBcHBs
aWNhdGlvbkNhY2hlUmVzb3VyY2UqIG1fbWFuaWZlc3Q7CisgICAgQXBwbGljYXRpb25DYWNoZVJl
c291cmNlKiBtX21hbmlmZXN0IHsgbnVsbHB0ciB9OwogCi0gICAgYm9vbCBtX2FsbG93QWxsTmV0
d29ya1JlcXVlc3RzOworICAgIGJvb2wgbV9hbGxvd0FsbE5ldHdvcmtSZXF1ZXN0cyB7IGZhbHNl
IH07CiAgICAgVmVjdG9yPFVSTD4gbV9vbmxpbmVXaGl0ZWxpc3Q7CiAgICAgRmFsbGJhY2tVUkxW
ZWN0b3IgbV9mYWxsYmFja1VSTHM7CiAKICAgICAvLyBUaGUgdG90YWwgc2l6ZSBvZiB0aGUgcmVz
b3VyY2VzIGJlbG9uZ2luZyB0byB0aGlzIEFwcGxpY2F0aW9uIENhY2hlIGluc3RhbmNlLgotICAg
IC8vIFRoaXMgaXMgYW4gZXN0aW1hdGlvbiBvZiB0aGUgc2l6ZSB0aGlzIEFwcGxpY2F0aW9uIENh
Y2hlIG9jY3VwaWVzIGluIHRoZQotICAgIC8vIGRhdGFiYXNlIGZpbGUuCi0gICAgaW50NjRfdCBt
X2VzdGltYXRlZFNpemVJblN0b3JhZ2U7CisgICAgLy8gVGhpcyBpcyBhbiBlc3RpbWF0aW9uIG9m
IHRoZSBzaXplIHRoaXMgQXBwbGljYXRpb24gQ2FjaGUgb2NjdXBpZXMgaW4gdGhlIGRhdGFiYXNl
IGZpbGUuCisgICAgaW50NjRfdCBtX2VzdGltYXRlZFNpemVJblN0b3JhZ2UgeyAwIH07CiAKLSAg
ICB1bnNpZ25lZCBtX3N0b3JhZ2VJRDsKKyAgICB1bnNpZ25lZCBtX3N0b3JhZ2VJRCB7IDAgfTsK
IH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuY3BwIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5jcHAKaW5kZXggODZlOWE1
YTg4NDkwN2NkZDNkNDZhZmNjZGUwM2Y4ZDNmYTA5ODUzYS4uOTg4MWIyNWU1YWNiMGZlOTY0MjVm
NjdhZGIzNDMxODQxNDdiZTA4ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Fw
cGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5jcHAKQEAgLTEsNSArMSw1IEBACiAv
KgotICogQ29weXJpZ2h0IChDKSAyMDA4LCAyMDA5LCAyMDEwIEFwcGxlIEluYy4gQWxsIFJpZ2h0
cyBSZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOC0yMDE3IEFwcGxlIEluYy4gQWxsIFJp
Z2h0cyBSZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMzQsNiAr
MzQsNyBAQAogI2luY2x1ZGUgIkNocm9tZUNsaWVudC5oIgogI2luY2x1ZGUgIkRPTUFwcGxpY2F0
aW9uQ2FjaGUuaCIKICNpbmNsdWRlICJEb2N1bWVudExvYWRlci5oIgorI2luY2x1ZGUgIkV2ZW50
TmFtZXMuaCIKICNpbmNsdWRlICJGcmFtZS5oIgogI2luY2x1ZGUgIkZyYW1lTG9hZGVyLmgiCiAj
aW5jbHVkZSAiRnJhbWVMb2FkZXJDbGllbnQuaCIKQEAgLTU0LDE3ICs1NSw3IEBAIEFwcGxpY2F0
aW9uQ2FjaGVHcm91cDo6QXBwbGljYXRpb25DYWNoZUdyb3VwKFJlZjxBcHBsaWNhdGlvbkNhY2hl
U3RvcmFnZT4mJiBzdG9yCiAgICAgOiBtX3N0b3JhZ2UoV1RGTW92ZShzdG9yYWdlKSkKICAgICAs
IG1fbWFuaWZlc3RVUkwobWFuaWZlc3RVUkwpCiAgICAgLCBtX29yaWdpbihTZWN1cml0eU9yaWdp
bjo6Y3JlYXRlKG1hbmlmZXN0VVJMKSkKLSAgICAsIG1fdXBkYXRlU3RhdHVzKElkbGUpCi0gICAg
LCBtX2Rvd25sb2FkaW5nUGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVyc0NvdW50KDApCi0gICAg
LCBtX3Byb2dyZXNzVG90YWwoMCkKLSAgICAsIG1fcHJvZ3Jlc3NEb25lKDApCi0gICAgLCBtX2Zy
YW1lKG51bGxwdHIpCi0gICAgLCBtX3N0b3JhZ2VJRCgwKQotICAgICwgbV9pc09ic29sZXRlKGZh
bHNlKQotICAgICwgbV9jb21wbGV0aW9uVHlwZShOb25lKQotICAgICwgbV9jYWxsZWRSZWFjaGVk
TWF4QXBwQ2FjaGVTaXplKGZhbHNlKQogICAgICwgbV9hdmFpbGFibGVTcGFjZUluUXVvdGEoQXBw
bGljYXRpb25DYWNoZVN0b3JhZ2U6OnVua25vd25RdW90YSgpKQotICAgICwgbV9vcmlnaW5RdW90
YUV4Y2VlZGVkUHJldmlvdXNseShmYWxzZSkKIHsKIH0KIApAQCAtNzIsMTAgKzYzLDEwIEBAIEFw
cGxpY2F0aW9uQ2FjaGVHcm91cDo6fkFwcGxpY2F0aW9uQ2FjaGVHcm91cCgpCiB7CiAgICAgQVNT
RVJUKCFtX25ld2VzdENhY2hlKTsKICAgICBBU1NFUlQobV9jYWNoZXMuaXNFbXB0eSgpKTsKLSAg
ICAKKwogICAgIHN0b3BMb2FkaW5nKCk7CiAKLSAgICBtX3N0b3JhZ2UtPmNhY2hlR3JvdXBEZXN0
cm95ZWQodGhpcyk7CisgICAgbV9zdG9yYWdlLT5jYWNoZUdyb3VwRGVzdHJveWVkKCp0aGlzKTsK
IH0KICAgICAKIEFwcGxpY2F0aW9uQ2FjaGUqIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6Y2FjaGVG
b3JNYWluUmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIERvY3VtZW50TG9h
ZGVyKiBkb2N1bWVudExvYWRlcikKQEAgLTg0LDIxICs3NSwyMCBAQCBBcHBsaWNhdGlvbkNhY2hl
KiBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNhY2hlRm9yTWFpblJlcXVlc3QoY29uc3QgUmVzb3Vy
Y2VSZXF1ZQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAogICAgIFVSTCB1cmwocmVxdWVzdC51
cmwoKSk7Ci0gICAgaWYgKHVybC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSkKLSAgICAgICAgdXJs
LnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpOworICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50
aWZpZXIoKTsKIAogICAgIGF1dG8qIHBhZ2UgPSBkb2N1bWVudExvYWRlci0+ZnJhbWUoKSA/IGRv
Y3VtZW50TG9hZGVyLT5mcmFtZSgpLT5wYWdlKCkgOiBudWxscHRyOwogICAgIGlmICghcGFnZSB8
fCBwYWdlLT51c2VzRXBoZW1lcmFsU2Vzc2lvbigpKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsK
IAotICAgIGlmIChBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwID0gcGFnZS0+YXBwbGljYXRp
b25DYWNoZVN0b3JhZ2UoKS5jYWNoZUdyb3VwRm9yVVJMKHVybCkpIHsKLSAgICAgICAgQVNTRVJU
KGdyb3VwLT5uZXdlc3RDYWNoZSgpKTsKLSAgICAgICAgQVNTRVJUKCFncm91cC0+aXNPYnNvbGV0
ZSgpKTsKLSAgICAgICAgCi0gICAgICAgIHJldHVybiBncm91cC0+bmV3ZXN0Q2FjaGUoKTsKLSAg
ICB9Ci0gICAgCi0gICAgcmV0dXJuIG51bGxwdHI7CisgICAgYXV0byogZ3JvdXAgPSBwYWdlLT5h
cHBsaWNhdGlvbkNhY2hlU3RvcmFnZSgpLmNhY2hlR3JvdXBGb3JVUkwodXJsKTsKKyAgICBpZiAo
IWdyb3VwKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIEFTU0VSVChncm91cC0+bmV3
ZXN0Q2FjaGUoKSk7CisgICAgQVNTRVJUKCFncm91cC0+aXNPYnNvbGV0ZSgpKTsKKworICAgIHJl
dHVybiBncm91cC0+bmV3ZXN0Q2FjaGUoKTsKIH0KICAgICAKIEFwcGxpY2F0aW9uQ2FjaGUqIEFw
cGxpY2F0aW9uQ2FjaGVHcm91cDo6ZmFsbGJhY2tDYWNoZUZvck1haW5SZXF1ZXN0KGNvbnN0IFJl
c291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRG9jdW1lbnRMb2FkZXIqIGRvY3VtZW50TG9hZGVyKQpA
QCAtMTA2LDgxICs5Niw4NyBAQCBBcHBsaWNhdGlvbkNhY2hlKiBBcHBsaWNhdGlvbkNhY2hlR3Jv
dXA6OmZhbGxiYWNrQ2FjaGVGb3JNYWluUmVxdWVzdChjb25zdCBSZXNvdQogICAgIGlmICghQXBw
bGljYXRpb25DYWNoZTo6cmVxdWVzdElzSFRUUE9ySFRUUFNHZXQocmVxdWVzdCkpCiAgICAgICAg
IHJldHVybiBudWxscHRyOwogCi0gICAgVVJMIHVybChyZXF1ZXN0LnVybCgpKTsKLSAgICBpZiAo
dXJsLmhhc0ZyYWdtZW50SWRlbnRpZmllcigpKQotICAgICAgICB1cmwucmVtb3ZlRnJhZ21lbnRJ
ZGVudGlmaWVyKCk7CisgICAgYXV0byogZnJhbWUgPSBkb2N1bWVudExvYWRlci0+ZnJhbWUoKTsK
KyAgICBpZiAoIWZyYW1lKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAotICAgIGF1dG8qIHBh
Z2UgPSBkb2N1bWVudExvYWRlci0+ZnJhbWUoKSA/IGRvY3VtZW50TG9hZGVyLT5mcmFtZSgpLT5w
YWdlKCkgOiBudWxscHRyOworICAgIGF1dG8qIHBhZ2UgPSBmcmFtZS0+cGFnZSgpOwogICAgIGlm
ICghcGFnZSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKLSAgICBpZiAoQXBwbGljYXRpb25D
YWNoZUdyb3VwKiBncm91cCA9IHBhZ2UtPmFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlKCkuZmFsbGJh
Y2tDYWNoZUdyb3VwRm9yVVJMKHVybCkpIHsKLSAgICAgICAgQVNTRVJUKGdyb3VwLT5uZXdlc3RD
YWNoZSgpKTsKLSAgICAgICAgQVNTRVJUKCFncm91cC0+aXNPYnNvbGV0ZSgpKTsKKyAgICBVUkwg
dXJsKHJlcXVlc3QudXJsKCkpOworICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsK
IAotICAgICAgICByZXR1cm4gZ3JvdXAtPm5ld2VzdENhY2hlKCk7Ci0gICAgfQotICAgIAotICAg
IHJldHVybiBudWxscHRyOworICAgIGF1dG8qIGdyb3VwID0gcGFnZS0+YXBwbGljYXRpb25DYWNo
ZVN0b3JhZ2UoKS5mYWxsYmFja0NhY2hlR3JvdXBGb3JVUkwodXJsKTsKKyAgICBpZiAoIWdyb3Vw
KQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIEFTU0VSVChncm91cC0+bmV3ZXN0Q2Fj
aGUoKSk7CisgICAgQVNTRVJUKCFncm91cC0+aXNPYnNvbGV0ZSgpKTsKKworICAgIHJldHVybiBn
cm91cC0+bmV3ZXN0Q2FjaGUoKTsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNl
bGVjdENhY2hlKEZyYW1lKiBmcmFtZSwgY29uc3QgVVJMJiBwYXNzZWRNYW5pZmVzdFVSTCkKK3Zv
aWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZWxlY3RDYWNoZShGcmFtZSYgZnJhbWUsIGNvbnN0
IFVSTCYgcGFzc2VkTWFuaWZlc3RVUkwpCiB7Ci0gICAgQVNTRVJUKGZyYW1lICYmIGZyYW1lLT5w
YWdlKCkpOwotICAgIAotICAgIGlmICghZnJhbWUtPnNldHRpbmdzKCkub2ZmbGluZVdlYkFwcGxp
Y2F0aW9uQ2FjaGVFbmFibGVkKCkpCisgICAgQVNTRVJUKGZyYW1lLmRvY3VtZW50KCkpOworICAg
IEFTU0VSVChmcmFtZS5wYWdlKCkpOworICAgIEFTU0VSVChmcmFtZS5sb2FkZXIoKS5kb2N1bWVu
dExvYWRlcigpKTsKKworICAgIGlmICghZnJhbWUuc2V0dGluZ3MoKS5vZmZsaW5lV2ViQXBwbGlj
YXRpb25DYWNoZUVuYWJsZWQoKSkKICAgICAgICAgcmV0dXJuOwotICAgIAotICAgIERvY3VtZW50
TG9hZGVyKiBkb2N1bWVudExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigp
OwotICAgIEFTU0VSVCghZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPmFw
cGxpY2F0aW9uQ2FjaGUoKSk7CisKKyAgICBhdXRvJiBkb2N1bWVudExvYWRlciA9ICpmcmFtZS5s
b2FkZXIoKS5kb2N1bWVudExvYWRlcigpOworICAgIEFTU0VSVCghZG9jdW1lbnRMb2FkZXIuYXBw
bGljYXRpb25DYWNoZUhvc3QoKS5hcHBsaWNhdGlvbkNhY2hlKCkpOwogCiAgICAgaWYgKHBhc3Nl
ZE1hbmlmZXN0VVJMLmlzTnVsbCgpKSB7Ci0gICAgICAgIHNlbGVjdENhY2hlV2l0aG91dE1hbmlm
ZXN0VVJMKGZyYW1lKTsgICAgICAgIAorICAgICAgICBzZWxlY3RDYWNoZVdpdGhvdXRNYW5pZmVz
dFVSTChmcmFtZSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKICAgICAvLyBEb24ndCBhY2Nl
c3MgYW55dGhpbmcgb24gZGlzayBpZiBwcml2YXRlIGJyb3dzaW5nIGlzIGVuYWJsZWQuCi0gICAg
aWYgKGZyYW1lLT5wYWdlKCktPnVzZXNFcGhlbWVyYWxTZXNzaW9uKCkgfHwgIWZyYW1lLT5kb2N1
bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5jYW5BY2Nlc3NBcHBsaWNhdGlvbkNhY2hlKGZyYW1l
LT50cmVlKCkudG9wKCkuZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSkpIHsKLSAgICAgICAg
cG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q0hFQ0tJTkdfRVZFTlQsIGRv
Y3VtZW50TG9hZGVyKTsKLSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hl
SG9zdDo6RVJST1JfRVZFTlQsIGRvY3VtZW50TG9hZGVyKTsKKyAgICBpZiAoZnJhbWUucGFnZSgp
LT51c2VzRXBoZW1lcmFsU2Vzc2lvbigpIHx8ICFmcmFtZS5kb2N1bWVudCgpLT5zZWN1cml0eU9y
aWdpbigpLT5jYW5BY2Nlc3NBcHBsaWNhdGlvbkNhY2hlKGZyYW1lLnRyZWUoKS50b3AoKS5kb2N1
bWVudCgpLT5zZWN1cml0eU9yaWdpbigpKSkgeworICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2
ZW50TmFtZXMoKS5jaGVja2luZ0V2ZW50LCBkb2N1bWVudExvYWRlcik7CisgICAgICAgIHBvc3RM
aXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmVycm9yRXZlbnQsIGRvY3VtZW50TG9hZGVyKTsKICAg
ICAgICAgcmV0dXJuOwogICAgIH0KIAogICAgIFVSTCBtYW5pZmVzdFVSTChwYXNzZWRNYW5pZmVz
dFVSTCk7Ci0gICAgaWYgKG1hbmlmZXN0VVJMLmhhc0ZyYWdtZW50SWRlbnRpZmllcigpKQotICAg
ICAgICBtYW5pZmVzdFVSTC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKKyAgICBtYW5pZmVz
dFVSTC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKIAotICAgIEFwcGxpY2F0aW9uQ2FjaGUq
IG1haW5SZXNvdXJjZUNhY2hlID0gZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCktPm1haW5SZXNvdXJjZUFwcGxpY2F0aW9uQ2FjaGUoKTsKKyAgICBhdXRvKiBtYWluUmVzb3Vy
Y2VDYWNoZSA9IGRvY3VtZW50TG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWFpblJlc291
cmNlQXBwbGljYXRpb25DYWNoZSgpOwogICAgIAogICAgIGlmIChtYWluUmVzb3VyY2VDYWNoZSkg
eworICAgICAgICBBU1NFUlQobWFpblJlc291cmNlQ2FjaGUtPmdyb3VwKCkpOwogICAgICAgICBp
ZiAobWFuaWZlc3RVUkwgPT0gbWFpblJlc291cmNlQ2FjaGUtPmdyb3VwKCktPm1fbWFuaWZlc3RV
UkwpIHsKICAgICAgICAgICAgIC8vIFRoZSBjYWNoZSBtYXkgaGF2ZSBnb3R0ZW4gb2Jzb2xldGVk
IGFmdGVyIHdlJ3ZlIGxvYWRlZCBmcm9tIGl0LCBidXQgYmVmb3JlIHdlIHBhcnNlZCB0aGUgZG9j
dW1lbnQgYW5kIHNhdyBjYWNoZSBtYW5pZmVzdC4KICAgICAgICAgICAgIGlmIChtYWluUmVzb3Vy
Y2VDYWNoZS0+Z3JvdXAoKS0+aXNPYnNvbGV0ZSgpKQogICAgICAgICAgICAgICAgIHJldHVybjsK
LSAgICAgICAgICAgIG1haW5SZXNvdXJjZUNhY2hlLT5ncm91cCgpLT5hc3NvY2lhdGVEb2N1bWVu
dExvYWRlcldpdGhDYWNoZShkb2N1bWVudExvYWRlciwgbWFpblJlc291cmNlQ2FjaGUpOworICAg
ICAgICAgICAgbWFpblJlc291cmNlQ2FjaGUtPmdyb3VwKCktPmFzc29jaWF0ZURvY3VtZW50TG9h
ZGVyV2l0aENhY2hlKCZkb2N1bWVudExvYWRlciwgbWFpblJlc291cmNlQ2FjaGUpOwogICAgICAg
ICAgICAgbWFpblJlc291cmNlQ2FjaGUtPmdyb3VwKCktPnVwZGF0ZShmcmFtZSwgQXBwbGljYXRp
b25DYWNoZVVwZGF0ZVdpdGhCcm93c2luZ0NvbnRleHQpOwogICAgICAgICB9IGVsc2UgewogICAg
ICAgICAgICAgLy8gVGhlIG1haW4gcmVzb3VyY2Ugd2FzIGxvYWRlZCBmcm9tIGNhY2hlLCBzbyB0
aGUgY2FjaGUgbXVzdCBoYXZlIGFuIGVudHJ5IGZvciBpdC4gTWFyayBpdCBhcyBmb3JlaWduLgot
ICAgICAgICAgICAgVVJMIHJlc291cmNlVVJMKGRvY3VtZW50TG9hZGVyLT5yZXNwb25zZVVSTCgp
KTsKLSAgICAgICAgICAgIGlmIChyZXNvdXJjZVVSTC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSkK
LSAgICAgICAgICAgICAgICByZXNvdXJjZVVSTC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsK
LSAgICAgICAgICAgIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSogcmVzb3VyY2UgPSBtYWluUmVz
b3VyY2VDYWNoZS0+cmVzb3VyY2VGb3JVUkwocmVzb3VyY2VVUkwpOwotICAgICAgICAgICAgYm9v
bCBpblN0b3JhZ2UgPSByZXNvdXJjZS0+c3RvcmFnZUlEKCk7Ci0gICAgICAgICAgICByZXNvdXJj
ZS0+YWRkVHlwZShBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6OkZvcmVpZ24pOworICAgICAgICAg
ICAgVVJMIHJlc291cmNlVVJMIHsgZG9jdW1lbnRMb2FkZXIucmVzcG9uc2VVUkwoKSB9OworICAg
ICAgICAgICAgcmVzb3VyY2VVUkwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CisKKyAgICAg
ICAgICAgIEFTU0VSVChtYWluUmVzb3VyY2VDYWNoZS0+cmVzb3VyY2VGb3JVUkwocmVzb3VyY2VV
UkwpKTsKKyAgICAgICAgICAgIGF1dG8mIHJlc291cmNlID0gKm1haW5SZXNvdXJjZUNhY2hlLT5y
ZXNvdXJjZUZvclVSTChyZXNvdXJjZVVSTCk7CisKKyAgICAgICAgICAgIGJvb2wgaW5TdG9yYWdl
ID0gcmVzb3VyY2Uuc3RvcmFnZUlEKCk7CisgICAgICAgICAgICByZXNvdXJjZS5hZGRUeXBlKEFw
cGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6Rm9yZWlnbik7CiAgICAgICAgICAgICBpZiAoaW5TdG9y
YWdlKQotICAgICAgICAgICAgICAgIGZyYW1lLT5wYWdlKCktPmFwcGxpY2F0aW9uQ2FjaGVTdG9y
YWdlKCkuc3RvcmVVcGRhdGVkVHlwZShyZXNvdXJjZSwgbWFpblJlc291cmNlQ2FjaGUpOworICAg
ICAgICAgICAgICAgIGZyYW1lLnBhZ2UoKS0+YXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKS5zdG9y
ZVVwZGF0ZWRUeXBlKCZyZXNvdXJjZSwgbWFpblJlc291cmNlQ2FjaGUpOwogCiAgICAgICAgICAg
ICAvLyBSZXN0YXJ0IHRoZSBjdXJyZW50IG5hdmlnYXRpb24gZnJvbSB0aGUgdG9wIG9mIHRoZSBu
YXZpZ2F0aW9uIGFsZ29yaXRobSwgdW5kb2luZyBhbnkgY2hhbmdlcyB0aGF0IHdlcmUgbWFkZQog
ICAgICAgICAgICAgLy8gYXMgcGFydCBvZiB0aGUgaW5pdGlhbCBsb2FkLgogICAgICAgICAgICAg
Ly8gVGhlIG5hdmlnYXRpb24gd2lsbCBub3QgcmVzdWx0IGluIHRoZSBzYW1lIHJlc291cmNlIGJl
aW5nIGxvYWRlZCwgYmVjYXVzZSAiZm9yZWlnbiIgZW50cmllcyBhcmUgbmV2ZXIgcGlja2VkIGR1
cmluZyBuYXZpZ2F0aW9uLgotICAgICAgICAgICAgZnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIo
KS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKGZyYW1lLT5kb2N1bWVudCgpLCBmcmFtZS0+ZG9jdW1l
bnQoKS0+c2VjdXJpdHlPcmlnaW4oKSwgZG9jdW1lbnRMb2FkZXItPnVybCgpLCBmcmFtZS0+bG9h
ZGVyKCkucmVmZXJyZXIoKSk7CisgICAgICAgICAgICBmcmFtZS5uYXZpZ2F0aW9uU2NoZWR1bGVy
KCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZSgqZnJhbWUuZG9jdW1lbnQoKSwgZnJhbWUuZG9jdW1l
bnQoKS0+c2VjdXJpdHlPcmlnaW4oKSwgZG9jdW1lbnRMb2FkZXIudXJsKCksIGZyYW1lLmxvYWRl
cigpLnJlZmVycmVyKCkpOwogICAgICAgICB9Ci0gICAgICAgIAogICAgICAgICByZXR1cm47CiAg
ICAgfQotICAgIAorCiAgICAgLy8gVGhlIHJlc291cmNlIHdhcyBsb2FkZWQgZnJvbSB0aGUgbmV0
d29yaywgY2hlY2sgaWYgaXQgaXMgYSBIVFRQL0hUVFBTIEdFVC4gICAgCi0gICAgY29uc3QgUmVz
b3VyY2VSZXF1ZXN0JiByZXF1ZXN0ID0gZnJhbWUtPmxvYWRlcigpLmFjdGl2ZURvY3VtZW50TG9h
ZGVyKCktPnJlcXVlc3QoKTsKKyAgICBhdXRvJiByZXF1ZXN0ID0gZnJhbWUubG9hZGVyKCkuYWN0
aXZlRG9jdW1lbnRMb2FkZXIoKS0+cmVxdWVzdCgpOwogCiAgICAgaWYgKCFBcHBsaWNhdGlvbkNh
Y2hlOjpyZXF1ZXN0SXNIVFRQT3JIVFRQU0dldChyZXF1ZXN0KSkKICAgICAgICAgcmV0dXJuOwpA
QCAtMTg5LDQ2ICsxODUsNDggQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVjdENh
Y2hlKEZyYW1lKiBmcmFtZSwgY29uc3QgVVJMJiBwYXNzZWRNYW5pZmVzdFUKICAgICBpZiAoIXBy
b3RvY29sSG9zdEFuZFBvcnRBcmVFcXVhbChtYW5pZmVzdFVSTCwgcmVxdWVzdC51cmwoKSkpCiAg
ICAgICAgIHJldHVybjsKIAotICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAgPSBmcmFt
ZS0+cGFnZSgpLT5hcHBsaWNhdGlvbkNhY2hlU3RvcmFnZSgpLmZpbmRPckNyZWF0ZUNhY2hlR3Jv
dXAobWFuaWZlc3RVUkwpOworICAgIGF1dG8mIGdyb3VwID0gKmZyYW1lLnBhZ2UoKS0+YXBwbGlj
YXRpb25DYWNoZVN0b3JhZ2UoKS5maW5kT3JDcmVhdGVDYWNoZUdyb3VwKG1hbmlmZXN0VVJMKTsK
IAotICAgIGRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5zZXRDYW5kaWRh
dGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoZ3JvdXApOwotICAgIGdyb3VwLT5tX3BlbmRpbmdNYXN0
ZXJSZXNvdXJjZUxvYWRlcnMuYWRkKGRvY3VtZW50TG9hZGVyKTsKLSAgICBncm91cC0+bV9kb3du
bG9hZGluZ1BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnNDb3VudCsrOworICAgIGRvY3VtZW50
TG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2V0Q2FuZGlkYXRlQXBwbGljYXRpb25DYWNo
ZUdyb3VwKCZncm91cCk7CisgICAgZ3JvdXAubV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJz
LmFkZCgmZG9jdW1lbnRMb2FkZXIpOworICAgIGdyb3VwLm1fZG93bmxvYWRpbmdQZW5kaW5nTWFz
dGVyUmVzb3VyY2VMb2FkZXJzQ291bnQrKzsKIAotICAgIEFTU0VSVCghZ3JvdXAtPm1fY2FjaGVC
ZWluZ1VwZGF0ZWQgfHwgZ3JvdXAtPm1fdXBkYXRlU3RhdHVzICE9IElkbGUpOwotICAgIGdyb3Vw
LT51cGRhdGUoZnJhbWUsIEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVXaXRoQnJvd3NpbmdDb250ZXh0
KTsKKyAgICBBU1NFUlQoIWdyb3VwLm1fY2FjaGVCZWluZ1VwZGF0ZWQgfHwgZ3JvdXAubV91cGRh
dGVTdGF0dXMgIT0gSWRsZSk7CisgICAgZ3JvdXAudXBkYXRlKGZyYW1lLCBBcHBsaWNhdGlvbkNh
Y2hlVXBkYXRlV2l0aEJyb3dzaW5nQ29udGV4dCk7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNo
ZUdyb3VwOjpzZWxlY3RDYWNoZVdpdGhvdXRNYW5pZmVzdFVSTChGcmFtZSogZnJhbWUpCit2b2lk
IEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3RVUkwoRnJh
bWUmIGZyYW1lKQogewotICAgIGlmICghZnJhbWUtPnNldHRpbmdzKCkub2ZmbGluZVdlYkFwcGxp
Y2F0aW9uQ2FjaGVFbmFibGVkKCkpCisgICAgaWYgKCFmcmFtZS5zZXR0aW5ncygpLm9mZmxpbmVX
ZWJBcHBsaWNhdGlvbkNhY2hlRW5hYmxlZCgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBEb2N1
bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIgPSBmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2Fk
ZXIoKTsKLSAgICBBU1NFUlQoIWRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgp
LT5hcHBsaWNhdGlvbkNhY2hlKCkpOworICAgIEFTU0VSVChmcmFtZS5kb2N1bWVudCgpKTsKKyAg
ICBBU1NFUlQoZnJhbWUucGFnZSgpKTsKKyAgICBBU1NFUlQoZnJhbWUubG9hZGVyKCkuZG9jdW1l
bnRMb2FkZXIoKSk7CisgICAgYXV0byYgZG9jdW1lbnRMb2FkZXIgPSAqZnJhbWUubG9hZGVyKCku
ZG9jdW1lbnRMb2FkZXIoKTsKKyAgICBBU1NFUlQoIWRvY3VtZW50TG9hZGVyLmFwcGxpY2F0aW9u
Q2FjaGVIb3N0KCkuYXBwbGljYXRpb25DYWNoZSgpKTsKIAogICAgIC8vIERvbid0IGFjY2VzcyBh
bnl0aGluZyBvbiBkaXNrIGlmIHByaXZhdGUgYnJvd3NpbmcgaXMgZW5hYmxlZC4KLSAgICBpZiAo
ZnJhbWUtPnBhZ2UoKS0+dXNlc0VwaGVtZXJhbFNlc3Npb24oKSB8fCAhZnJhbWUtPmRvY3VtZW50
KCktPnNlY3VyaXR5T3JpZ2luKCktPmNhbkFjY2Vzc0FwcGxpY2F0aW9uQ2FjaGUoZnJhbWUtPnRy
ZWUoKS50b3AoKS5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpKSkgewotICAgICAgICBwb3N0
TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDSEVDS0lOR19FVkVOVCwgZG9jdW1l
bnRMb2FkZXIpOwotICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0
OjpFUlJPUl9FVkVOVCwgZG9jdW1lbnRMb2FkZXIpOworICAgIGlmIChmcmFtZS5wYWdlKCktPnVz
ZXNFcGhlbWVyYWxTZXNzaW9uKCkgfHwgIWZyYW1lLmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2lu
KCktPmNhbkFjY2Vzc0FwcGxpY2F0aW9uQ2FjaGUoZnJhbWUudHJlZSgpLnRvcCgpLmRvY3VtZW50
KCktPnNlY3VyaXR5T3JpZ2luKCkpKSB7CisgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnRO
YW1lcygpLmNoZWNraW5nRXZlbnQsIGRvY3VtZW50TG9hZGVyKTsKKyAgICAgICAgcG9zdExpc3Rl
bmVyVGFzayhldmVudE5hbWVzKCkuZXJyb3JFdmVudCwgZG9jdW1lbnRMb2FkZXIpOwogICAgICAg
ICByZXR1cm47CiAgICAgfQogCi0gICAgQXBwbGljYXRpb25DYWNoZSogbWFpblJlc291cmNlQ2Fj
aGUgPSBkb2N1bWVudExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+bWFpblJlc291cmNl
QXBwbGljYXRpb25DYWNoZSgpOwotCi0gICAgaWYgKG1haW5SZXNvdXJjZUNhY2hlKSB7Ci0gICAg
ICAgIG1haW5SZXNvdXJjZUNhY2hlLT5ncm91cCgpLT5hc3NvY2lhdGVEb2N1bWVudExvYWRlcldp
dGhDYWNoZShkb2N1bWVudExvYWRlciwgbWFpblJlc291cmNlQ2FjaGUpOwotICAgICAgICBtYWlu
UmVzb3VyY2VDYWNoZS0+Z3JvdXAoKS0+dXBkYXRlKGZyYW1lLCBBcHBsaWNhdGlvbkNhY2hlVXBk
YXRlV2l0aEJyb3dzaW5nQ29udGV4dCk7CisgICAgaWYgKGF1dG8qIG1haW5SZXNvdXJjZUNhY2hl
ID0gZG9jdW1lbnRMb2FkZXIuYXBwbGljYXRpb25DYWNoZUhvc3QoKS5tYWluUmVzb3VyY2VBcHBs
aWNhdGlvbkNhY2hlKCkpIHsKKyAgICAgICAgQVNTRVJUKG1haW5SZXNvdXJjZUNhY2hlLT5ncm91
cCgpKTsKKyAgICAgICAgYXV0byYgZ3JvdXAgPSAqbWFpblJlc291cmNlQ2FjaGUtPmdyb3VwKCk7
CisgICAgICAgIGdyb3VwLmFzc29jaWF0ZURvY3VtZW50TG9hZGVyV2l0aENhY2hlKCZkb2N1bWVu
dExvYWRlciwgbWFpblJlc291cmNlQ2FjaGUpOworICAgICAgICBncm91cC51cGRhdGUoZnJhbWUs
IEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVXaXRoQnJvd3NpbmdDb250ZXh0KTsKICAgICB9CiB9CiAK
LXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpmaW5pc2hlZExvYWRpbmdNYWluUmVzb3VyY2Uo
RG9jdW1lbnRMb2FkZXIqIGxvYWRlcikKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpmaW5p
c2hlZExvYWRpbmdNYWluUmVzb3VyY2UoRG9jdW1lbnRMb2FkZXImIGxvYWRlcikKIHsKLSAgICBB
U1NFUlQobV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLmNvbnRhaW5zKGxvYWRlcikpOwor
ICAgIEFTU0VSVChtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMuY29udGFpbnMoJmxvYWRl
cikpOwogICAgIEFTU0VSVChtX2NvbXBsZXRpb25UeXBlID09IE5vbmUgfHwgbV9wZW5kaW5nRW50
cmllcy5pc0VtcHR5KCkpOwotICAgIFVSTCB1cmwgPSBsb2FkZXItPnVybCgpOwotICAgIGlmICh1
cmwuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkpCi0gICAgICAgIHVybC5yZW1vdmVGcmFnbWVudElk
ZW50aWZpZXIoKTsKKyAgICBVUkwgdXJsID0gbG9hZGVyLnVybCgpOworICAgIHVybC5yZW1vdmVG
cmFnbWVudElkZW50aWZpZXIoKTsKIAogICAgIHN3aXRjaCAobV9jb21wbGV0aW9uVHlwZSkgewog
ICAgIGNhc2UgTm9uZToKQEAgLTIzNiwzNCArMjM0LDMyIEBAIHZvaWQgQXBwbGljYXRpb25DYWNo
ZUdyb3VwOjpmaW5pc2hlZExvYWRpbmdNYWluUmVzb3VyY2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRl
cikKICAgICAgICAgcmV0dXJuOwogICAgIGNhc2UgTm9VcGRhdGU6CiAgICAgICAgIEFTU0VSVCgh
bV9jYWNoZUJlaW5nVXBkYXRlZCk7Ci0gICAgICAgIGFzc29jaWF0ZURvY3VtZW50TG9hZGVyV2l0
aENhY2hlKGxvYWRlciwgbV9uZXdlc3RDYWNoZS5nZXQoKSk7Ci0KLSAgICAgICAgaWYgKEFwcGxp
Y2F0aW9uQ2FjaGVSZXNvdXJjZSogcmVzb3VyY2UgPSBtX25ld2VzdENhY2hlLT5yZXNvdXJjZUZv
clVSTCh1cmwpKSB7CisgICAgICAgIGFzc29jaWF0ZURvY3VtZW50TG9hZGVyV2l0aENhY2hlKCZs
b2FkZXIsIG1fbmV3ZXN0Q2FjaGUuZ2V0KCkpOworICAgICAgICBpZiAoYXV0byogcmVzb3VyY2Ug
PSBtX25ld2VzdENhY2hlLT5yZXNvdXJjZUZvclVSTCh1cmwpKSB7CiAgICAgICAgICAgICBpZiAo
IShyZXNvdXJjZS0+dHlwZSgpICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIpKSB7
CiAgICAgICAgICAgICAgICAgcmVzb3VyY2UtPmFkZFR5cGUoQXBwbGljYXRpb25DYWNoZVJlc291
cmNlOjpNYXN0ZXIpOwogICAgICAgICAgICAgICAgIEFTU0VSVCghcmVzb3VyY2UtPnN0b3JhZ2VJ
RCgpKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfSBlbHNlCi0gICAgICAgICAgICBtX25ld2Vz
dENhY2hlLT5hZGRSZXNvdXJjZShBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6OmNyZWF0ZSh1cmws
IGxvYWRlci0+cmVzcG9uc2UoKSwgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIsIGxv
YWRlci0+bWFpblJlc291cmNlRGF0YSgpKSk7CisgICAgICAgICAgICBtX25ld2VzdENhY2hlLT5h
ZGRSZXNvdXJjZShBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6OmNyZWF0ZSh1cmwsIGxvYWRlci5y
ZXNwb25zZSgpLCBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6Ok1hc3RlciwgbG9hZGVyLm1haW5S
ZXNvdXJjZURhdGEoKSkpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIEZhaWx1cmU6CiAgICAg
ICAgIC8vIENhY2hlIHVwZGF0ZSBoYXMgYmVlbiBhIGZhaWx1cmUsIHNvIHRoZXJlIGlzIG5vIHJl
YXNvbiB0byBrZWVwIHRoZSBkb2N1bWVudCBhc3NvY2lhdGVkIHdpdGggdGhlIGluY29tcGxldGUg
Y2FjaGUKICAgICAgICAgLy8gKGl0cyBtYWluIHJlc291cmNlIHdhcyBub3QgY2FjaGVkIHlldCwg
c28gaXQgaXMgbGlrZWx5IHRoYXQgdGhlIGFwcGxpY2F0aW9uIGNoYW5nZWQgc2lnbmlmaWNhbnRs
eSBzZXJ2ZXItc2lkZSkuCiAgICAgICAgIEFTU0VSVCghbV9jYWNoZUJlaW5nVXBkYXRlZCk7IC8v
IEFscmVhZHkgY2xlYXJlZCBvdXQgYnkgc3RvcExvYWRpbmcoKS4KLSAgICAgICAgbG9hZGVyLT5h
cHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5zZXRBcHBsaWNhdGlvbkNhY2hlKG51bGxwdHIpOyAvLyBX
aWxsIHVuc2V0IGNhbmRpZGF0ZSwgdG9vLgotICAgICAgICBtX2Fzc29jaWF0ZWREb2N1bWVudExv
YWRlcnMucmVtb3ZlKGxvYWRlcik7Ci0gICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRp
b25DYWNoZUhvc3Q6OkVSUk9SX0VWRU5ULCBsb2FkZXIpOworICAgICAgICBsb2FkZXIuYXBwbGlj
YXRpb25DYWNoZUhvc3QoKS5zZXRBcHBsaWNhdGlvbkNhY2hlKG51bGxwdHIpOyAvLyBXaWxsIHVu
c2V0IGNhbmRpZGF0ZSwgdG9vLgorICAgICAgICBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMu
cmVtb3ZlKCZsb2FkZXIpOworICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5l
cnJvckV2ZW50LCBsb2FkZXIpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIENvbXBsZXRlZDoK
LSAgICAgICAgQVNTRVJUKG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycy5jb250YWlucyhsb2Fk
ZXIpKTsKLQotICAgICAgICBpZiAoQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiByZXNvdXJjZSA9
IG1fY2FjaGVCZWluZ1VwZGF0ZWQtPnJlc291cmNlRm9yVVJMKHVybCkpIHsKKyAgICAgICAgQVNT
RVJUKG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycy5jb250YWlucygmbG9hZGVyKSk7CisgICAg
ICAgIGlmIChhdXRvKiByZXNvdXJjZSA9IG1fY2FjaGVCZWluZ1VwZGF0ZWQtPnJlc291cmNlRm9y
VVJMKHVybCkpIHsKICAgICAgICAgICAgIGlmICghKHJlc291cmNlLT50eXBlKCkgJiBBcHBsaWNh
dGlvbkNhY2hlUmVzb3VyY2U6Ok1hc3RlcikpIHsKICAgICAgICAgICAgICAgICByZXNvdXJjZS0+
YWRkVHlwZShBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6Ok1hc3Rlcik7CiAgICAgICAgICAgICAg
ICAgQVNTRVJUKCFyZXNvdXJjZS0+c3RvcmFnZUlEKCkpOwogICAgICAgICAgICAgfQogICAgICAg
ICB9IGVsc2UKLSAgICAgICAgICAgIG1fY2FjaGVCZWluZ1VwZGF0ZWQtPmFkZFJlc291cmNlKEFw
cGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6Y3JlYXRlKHVybCwgbG9hZGVyLT5yZXNwb25zZSgpLCBB
cHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6Ok1hc3RlciwgbG9hZGVyLT5tYWluUmVzb3VyY2VEYXRh
KCkpKTsKKyAgICAgICAgICAgIG1fY2FjaGVCZWluZ1VwZGF0ZWQtPmFkZFJlc291cmNlKEFwcGxp
Y2F0aW9uQ2FjaGVSZXNvdXJjZTo6Y3JlYXRlKHVybCwgbG9hZGVyLnJlc3BvbnNlKCksIEFwcGxp
Y2F0aW9uQ2FjaGVSZXNvdXJjZTo6TWFzdGVyLCBsb2FkZXIubWFpblJlc291cmNlRGF0YSgpKSk7
CiAgICAgICAgIC8vIFRoZSAiY2FjaGVkIiBldmVudCB3aWxsIGJlIHBvc3RlZCB0byBhbGwgYXNz
b2NpYXRlZCBkb2N1bWVudHMgb25jZSB1cGRhdGUgaXMgY29tcGxldGUuCiAgICAgICAgIGJyZWFr
OwogICAgIH0KQEAgLTI3Myw5ICsyNjksOSBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6
ZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCiAgICAg
Y2hlY2tJZkxvYWRJc0NvbXBsZXRlKCk7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3Vw
OjpmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCit2b2lk
IEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZShEb2N1bWVu
dExvYWRlciYgbG9hZGVyKQogewotICAgIEFTU0VSVChtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxv
YWRlcnMuY29udGFpbnMobG9hZGVyKSk7CisgICAgQVNTRVJUKG1fcGVuZGluZ01hc3RlclJlc291
cmNlTG9hZGVycy5jb250YWlucygmbG9hZGVyKSk7CiAgICAgQVNTRVJUKG1fY29tcGxldGlvblR5
cGUgPT0gTm9uZSB8fCBtX3BlbmRpbmdFbnRyaWVzLmlzRW1wdHkoKSk7CiAKICAgICBzd2l0Y2gg
KG1fY29tcGxldGlvblR5cGUpIHsKQEAgLTI4NCwzMiArMjgwLDI3IEBAIHZvaWQgQXBwbGljYXRp
b25DYWNoZUdyb3VwOjpmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKERvY3VtZW50TG9hZGVyKiBs
b2FkZXIpCiAgICAgICAgIHJldHVybjsKICAgICBjYXNlIE5vVXBkYXRlOgogICAgICAgICBBU1NF
UlQoIW1fY2FjaGVCZWluZ1VwZGF0ZWQpOwotCiAgICAgICAgIC8vIFRoZSBtYW5pZmVzdCBkaWRu
J3QgY2hhbmdlLCBhbmQgd2UgaGF2ZSBhIHJlbGV2YW50IGNhY2hlIC0gYnV0IHRoZSBtYWluIHJl
c291cmNlIGRvd25sb2FkIGZhaWxlZCBtaWQtd2F5LCBzbyBpdCBjYW5ub3QgYmUgc3RvcmVkIHRv
IHRoZSBjYWNoZSwKICAgICAgICAgLy8gYW5kIHRoZSBsb2FkZXIgZG9lcyBub3QgZ2V0IGFzc29j
aWF0ZWQgdG8gaXQuIElmIHRoZXJlIGFyZSBvdGhlciBtYWluIHJlc291cmNlcyBiZWluZyBkb3du
bG9hZGVkIGZvciB0aGlzIGNhY2hlIGdyb3VwLCB0aGV5IG1heSBzdGlsbCBzdWNjZWVkLgotICAg
ICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFUlJPUl9FVkVOVCwg
bG9hZGVyKTsKLQorICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5lcnJvckV2
ZW50LCBsb2FkZXIpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIEZhaWx1cmU6CiAgICAgICAg
IC8vIENhY2hlIHVwZGF0ZSBmYWlsZWQsIHRvby4KICAgICAgICAgQVNTRVJUKCFtX2NhY2hlQmVp
bmdVcGRhdGVkKTsgLy8gQWxyZWFkeSBjbGVhcmVkIG91dCBieSBzdG9wTG9hZGluZygpLgotICAg
ICAgICBBU1NFUlQoIWxvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+YXBwbGljYXRpb25D
YWNoZSgpIHx8IGxvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+YXBwbGljYXRpb25DYWNo
ZSgpLT5ncm91cCgpID09IHRoaXMpOwotCi0gICAgICAgIGxvYWRlci0+YXBwbGljYXRpb25DYWNo
ZUhvc3QoKS0+c2V0QXBwbGljYXRpb25DYWNoZShudWxscHRyKTsgLy8gV2lsbCB1bnNldCBjYW5k
aWRhdGUsIHRvby4KLSAgICAgICAgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzLnJlbW92ZShs
b2FkZXIpOwotICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpF
UlJPUl9FVkVOVCwgbG9hZGVyKTsKKyAgICAgICAgQVNTRVJUKCFsb2FkZXIuYXBwbGljYXRpb25D
YWNoZUhvc3QoKS5hcHBsaWNhdGlvbkNhY2hlKCkgfHwgbG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVI
b3N0KCkuYXBwbGljYXRpb25DYWNoZSgpLT5ncm91cCgpID09IHRoaXMpOworICAgICAgICBsb2Fk
ZXIuYXBwbGljYXRpb25DYWNoZUhvc3QoKS5zZXRBcHBsaWNhdGlvbkNhY2hlKG51bGxwdHIpOyAv
LyBXaWxsIHVuc2V0IGNhbmRpZGF0ZSwgdG9vLgorICAgICAgICBtX2Fzc29jaWF0ZWREb2N1bWVu
dExvYWRlcnMucmVtb3ZlKCZsb2FkZXIpOworICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50
TmFtZXMoKS5lcnJvckV2ZW50LCBsb2FkZXIpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIENv
bXBsZXRlZDoKICAgICAgICAgLy8gVGhlIGNhY2hlIG1hbmlmZXN0IGRpZG4ndCBsaXN0IHRoaXMg
bWFpbiByZXNvdXJjZSwgYW5kIGFsbCBjYWNoZSBlbnRyaWVzIHdlcmUgYWxyZWFkeSB1cGRhdGVk
IHN1Y2Nlc3NmdWxseSAtIGJ1dCB0aGUgbWFpbiByZXNvdXJjZSBmYWlsZWQgdG8gbG9hZCwKICAg
ICAgICAgLy8gc28gaXQgY2Fubm90IGJlIHN0b3JlZCB0byB0aGUgY2FjaGUuIElmIHRoZXJlIGFy
ZSBvdGhlciBtYWluIHJlc291cmNlcyBiZWluZyBkb3dubG9hZGVkIGZvciB0aGlzIGNhY2hlIGdy
b3VwLCB0aGV5IG1heSBzdGlsbCBzdWNjZWVkLgotICAgICAgICBBU1NFUlQobV9hc3NvY2lhdGVk
RG9jdW1lbnRMb2FkZXJzLmNvbnRhaW5zKGxvYWRlcikpOwotICAgICAgICBBU1NFUlQobG9hZGVy
LT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5hcHBsaWNhdGlvbkNhY2hlKCkgPT0gbV9jYWNoZUJl
aW5nVXBkYXRlZCk7Ci0gICAgICAgIEFTU0VSVCghbG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9z
dCgpLT5jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKSk7Ci0gICAgICAgIG1fYXNzb2Np
YXRlZERvY3VtZW50TG9hZGVycy5yZW1vdmUobG9hZGVyKTsKLSAgICAgICAgbG9hZGVyLT5hcHBs
aWNhdGlvbkNhY2hlSG9zdCgpLT5zZXRBcHBsaWNhdGlvbkNhY2hlKG51bGxwdHIpOwotCi0gICAg
ICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkVSUk9SX0VWRU5ULCBs
b2FkZXIpOwotCisgICAgICAgIEFTU0VSVChtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMuY29u
dGFpbnMoJmxvYWRlcikpOworICAgICAgICBBU1NFUlQobG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVI
b3N0KCkuYXBwbGljYXRpb25DYWNoZSgpID09IG1fY2FjaGVCZWluZ1VwZGF0ZWQpOworICAgICAg
ICBBU1NFUlQoIWxvYWRlci5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLmNhbmRpZGF0ZUFwcGxpY2F0
aW9uQ2FjaGVHcm91cCgpKTsKKyAgICAgICAgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzLnJl
bW92ZSgmbG9hZGVyKTsKKyAgICAgICAgbG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2V0
QXBwbGljYXRpb25DYWNoZShudWxscHRyKTsKKyAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVu
dE5hbWVzKCkuZXJyb3JFdmVudCwgbG9hZGVyKTsKICAgICAgICAgYnJlYWs7CiAgICAgfQogCkBA
IC0zNDYsMTIgKzMzNywxMiBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c3RvcExvYWRp
bmcoKQogICAgIG1fcGVuZGluZ0VudHJpZXMuY2xlYXIoKTsKIH0gICAgCiAKLXZvaWQgQXBwbGlj
YXRpb25DYWNoZUdyb3VwOjpkaXNhc3NvY2lhdGVEb2N1bWVudExvYWRlcihEb2N1bWVudExvYWRl
ciogbG9hZGVyKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRpc2Fzc29jaWF0ZURvY3Vt
ZW50TG9hZGVyKERvY3VtZW50TG9hZGVyJiBsb2FkZXIpCiB7Ci0gICAgbV9hc3NvY2lhdGVkRG9j
dW1lbnRMb2FkZXJzLnJlbW92ZShsb2FkZXIpOwotICAgIG1fcGVuZGluZ01hc3RlclJlc291cmNl
TG9hZGVycy5yZW1vdmUobG9hZGVyKTsKKyAgICBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMu
cmVtb3ZlKCZsb2FkZXIpOworICAgIG1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5yZW1v
dmUoJmxvYWRlcik7CiAKLSAgICBpZiAoYXV0byogaG9zdCA9IGxvYWRlci0+YXBwbGljYXRpb25D
YWNoZUhvc3QoKSkKKyAgICBpZiAoYXV0byogaG9zdCA9IGxvYWRlci5hcHBsaWNhdGlvbkNhY2hl
SG9zdFVubGVzc0JlaW5nRGVzdHJveWVkKCkpCiAgICAgICAgIGhvc3QtPnNldEFwcGxpY2F0aW9u
Q2FjaGUobnVsbHB0cik7IC8vIFdpbGwgc2V0IGNhbmRpZGF0ZSBncm91cCB0byBudWxsLCB0b28u
CiAKICAgICBpZiAoIW1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycy5pc0VtcHR5KCkgfHwgIW1f
cGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5pc0VtcHR5KCkpCkBAIC0zNzIsMjYgKzM2Mywy
NiBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZGlzYXNzb2NpYXRlRG9jdW1lbnRMb2Fk
ZXIoRG9jdW1lbnRMb2FkZXIqIGxvYWRlcikKICAgICBtX25ld2VzdENhY2hlID0gbnVsbHB0cjsK
IH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNhY2hlRGVzdHJveWVkKEFwcGxpY2F0
aW9uQ2FjaGUqIGNhY2hlKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNhY2hlRGVzdHJv
eWVkKEFwcGxpY2F0aW9uQ2FjaGUmIGNhY2hlKQogewotICAgIGlmIChtX2NhY2hlcy5yZW1vdmUo
Y2FjaGUpICYmIG1fY2FjaGVzLmlzRW1wdHkoKSkgeworICAgIGlmIChtX2NhY2hlcy5yZW1vdmUo
JmNhY2hlKSAmJiBtX2NhY2hlcy5pc0VtcHR5KCkpIHsKICAgICAgICAgQVNTRVJUKG1fYXNzb2Np
YXRlZERvY3VtZW50TG9hZGVycy5pc0VtcHR5KCkpOwogICAgICAgICBBU1NFUlQobV9wZW5kaW5n
TWFzdGVyUmVzb3VyY2VMb2FkZXJzLmlzRW1wdHkoKSk7CiAgICAgICAgIGRlbGV0ZSB0aGlzOwog
ICAgIH0KIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnN0b3BMb2FkaW5nSW5GcmFt
ZShGcmFtZSogZnJhbWUpCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c3RvcExvYWRpbmdJ
bkZyYW1lKEZyYW1lJiBmcmFtZSkKIHsKLSAgICBpZiAoZnJhbWUgIT0gbV9mcmFtZSkKKyAgICBp
ZiAoJmZyYW1lICE9IG1fZnJhbWUpCiAgICAgICAgIHJldHVybjsKIAogICAgIGNhY2hlVXBkYXRl
RmFpbGVkKCk7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZXROZXdlc3RDYWNo
ZShQYXNzUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+IG5ld2VzdENhY2hlKQordm9pZCBBcHBsaWNh
dGlvbkNhY2hlR3JvdXA6OnNldE5ld2VzdENhY2hlKFJlZjxBcHBsaWNhdGlvbkNhY2hlPiYmIG5l
d2VzdENhY2hlKQogewotICAgIG1fbmV3ZXN0Q2FjaGUgPSBuZXdlc3RDYWNoZTsKKyAgICBtX25l
d2VzdENhY2hlID0gV1RGTW92ZShuZXdlc3RDYWNoZSk7CiAKICAgICBtX2NhY2hlcy5hZGQobV9u
ZXdlc3RDYWNoZS5nZXQoKSk7CiAgICAgbV9uZXdlc3RDYWNoZS0+c2V0R3JvdXAodGhpcyk7CkBA
IC00MDMsNDAgKzM5NCw0MyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6bWFrZU9ic29s
ZXRlKCkKICAgICAgICAgcmV0dXJuOwogCiAgICAgbV9pc09ic29sZXRlID0gdHJ1ZTsKLSAgICBt
X3N0b3JhZ2UtPmNhY2hlR3JvdXBNYWRlT2Jzb2xldGUodGhpcyk7CisgICAgbV9zdG9yYWdlLT5j
YWNoZUdyb3VwTWFkZU9ic29sZXRlKCp0aGlzKTsKICAgICBBU1NFUlQoIW1fc3RvcmFnZUlEKTsK
IH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnVwZGF0ZShGcmFtZSogZnJhbWUsIEFw
cGxpY2F0aW9uQ2FjaGVVcGRhdGVPcHRpb24gdXBkYXRlT3B0aW9uKQordm9pZCBBcHBsaWNhdGlv
bkNhY2hlR3JvdXA6OnVwZGF0ZShGcmFtZSYgZnJhbWUsIEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVP
cHRpb24gdXBkYXRlT3B0aW9uKQogeworICAgIEFTU0VSVChmcmFtZS5sb2FkZXIoKS5kb2N1bWVu
dExvYWRlcigpKTsKKyAgICBhdXRvJiBkb2N1bWVudExvYWRlciA9ICpmcmFtZS5sb2FkZXIoKS5k
b2N1bWVudExvYWRlcigpOworCiAgICAgaWYgKG1fdXBkYXRlU3RhdHVzID09IENoZWNraW5nIHx8
IG1fdXBkYXRlU3RhdHVzID09IERvd25sb2FkaW5nKSB7CiAgICAgICAgIGlmICh1cGRhdGVPcHRp
b24gPT0gQXBwbGljYXRpb25DYWNoZVVwZGF0ZVdpdGhCcm93c2luZ0NvbnRleHQpIHsKLSAgICAg
ICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNIRUNLSU5HX0VW
RU5ULCBmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSk7CisgICAgICAgICAgICBwb3N0
TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5jaGVja2luZ0V2ZW50LCBkb2N1bWVudExvYWRlcik7
CiAgICAgICAgICAgICBpZiAobV91cGRhdGVTdGF0dXMgPT0gRG93bmxvYWRpbmcpCi0gICAgICAg
ICAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RE9XTkxPQURJ
TkdfRVZFTlQsIGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKTsKKyAgICAgICAgICAg
ICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5kb3dubG9hZGluZ0V2ZW50LCBkb2N1
bWVudExvYWRlcik7CiAgICAgICAgIH0KICAgICAgICAgcmV0dXJuOwogICAgIH0KIAogICAgIC8v
IERvbid0IGFjY2VzcyBhbnl0aGluZyBvbiBkaXNrIGlmIHByaXZhdGUgYnJvd3NpbmcgaXMgZW5h
YmxlZC4KLSAgICBpZiAoZnJhbWUtPnBhZ2UoKS0+dXNlc0VwaGVtZXJhbFNlc3Npb24oKSB8fCAh
ZnJhbWUtPmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPmNhbkFjY2Vzc0FwcGxpY2F0aW9u
Q2FjaGUoZnJhbWUtPnRyZWUoKS50b3AoKS5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpKSkg
eworICAgIGlmIChmcmFtZS5wYWdlKCktPnVzZXNFcGhlbWVyYWxTZXNzaW9uKCkgfHwgIWZyYW1l
LmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPmNhbkFjY2Vzc0FwcGxpY2F0aW9uQ2FjaGUo
ZnJhbWUudHJlZSgpLnRvcCgpLmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCkpKSB7CiAgICAg
ICAgIEFTU0VSVChtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMuaXNFbXB0eSgpKTsKICAg
ICAgICAgQVNTRVJUKG1fcGVuZGluZ0VudHJpZXMuaXNFbXB0eSgpKTsKICAgICAgICAgQVNTRVJU
KCFtX2NhY2hlQmVpbmdVcGRhdGVkKTsKLSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNh
dGlvbkNhY2hlSG9zdDo6Q0hFQ0tJTkdfRVZFTlQsIGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExv
YWRlcigpKTsKLSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6
RVJST1JfRVZFTlQsIGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKTsKKyAgICAgICAg
cG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkuY2hlY2tpbmdFdmVudCwgZG9jdW1lbnRMb2Fk
ZXIpOworICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBk
b2N1bWVudExvYWRlcik7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKICAgICBBU1NFUlQoIW1f
ZnJhbWUpOwotICAgIG1fZnJhbWUgPSBmcmFtZTsKKyAgICBtX2ZyYW1lID0gJmZyYW1lOwogCiAg
ICAgc2V0VXBkYXRlU3RhdHVzKENoZWNraW5nKTsKIAotICAgIHBvc3RMaXN0ZW5lclRhc2soQXBw
bGljYXRpb25DYWNoZUhvc3Q6OkNIRUNLSU5HX0VWRU5ULCBtX2Fzc29jaWF0ZWREb2N1bWVudExv
YWRlcnMpOworICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmNoZWNraW5nRXZlbnQs
IG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CiAgICAgaWYgKCFtX25ld2VzdENhY2hlKSB7
CiAgICAgICAgIEFTU0VSVCh1cGRhdGVPcHRpb24gPT0gQXBwbGljYXRpb25DYWNoZVVwZGF0ZVdp
dGhCcm93c2luZ0NvbnRleHQpOwotICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9u
Q2FjaGVIb3N0OjpDSEVDS0lOR19FVkVOVCwgZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVy
KCkpOworICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5jaGVja2luZ0V2ZW50
LCBkb2N1bWVudExvYWRlcik7CiAgICAgfQogICAgIAogICAgIEFTU0VSVCghbV9tYW5pZmVzdEhh
bmRsZSk7CkBAIC00NDksNyArNDQzLDcgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnVw
ZGF0ZShGcmFtZSogZnJhbWUsIEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVPcHRpb24gdXAKICAgICBt
X21hbmlmZXN0SGFuZGxlID0gY3JlYXRlUmVzb3VyY2VIYW5kbGUobV9tYW5pZmVzdFVSTCwgbV9u
ZXdlc3RDYWNoZSA/IG1fbmV3ZXN0Q2FjaGUtPm1hbmlmZXN0UmVzb3VyY2UoKSA6IDApOwogfQog
Ci12b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6YWJvcnQoRnJhbWUqIGZyYW1lKQordm9pZCBB
cHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFib3J0KEZyYW1lJiBmcmFtZSkKIHsKICAgICBpZiAobV91
cGRhdGVTdGF0dXMgPT0gSWRsZSkKICAgICAgICAgcmV0dXJuOwpAQCAtNDU4LDcgKzQ1Miw3IEBA
IHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjphYm9ydChGcmFtZSogZnJhbWUpCiAgICAgaWYg
KG1fY29tcGxldGlvblR5cGUgIT0gTm9uZSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgZnJhbWUt
PmRvY3VtZW50KCktPmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OkFwcENhY2hlLCBN
ZXNzYWdlTGV2ZWw6OkRlYnVnLCBBU0NJSUxpdGVyYWwoIkFwcGxpY2F0aW9uIENhY2hlIGRvd25s
b2FkIHByb2Nlc3Mgd2FzIGFib3J0ZWQuIikpOworICAgIGZyYW1lLmRvY3VtZW50KCktPmFkZENv
bnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OkFwcENhY2hlLCBNZXNzYWdlTGV2ZWw6OkRlYnVn
LCBBU0NJSUxpdGVyYWwoIkFwcGxpY2F0aW9uIENhY2hlIGRvd25sb2FkIHByb2Nlc3Mgd2FzIGFi
b3J0ZWQuIikpOwogICAgIGNhY2hlVXBkYXRlRmFpbGVkKCk7CiB9CiAKQEAgLTUwMiw4ICs0OTYs
NyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291
cmNlSGFuZGxlKiBoYW5kbGUsIFJlc291cmNlUgogICAgIEFTU0VSVChoYW5kbGUgPT0gbV9jdXJy
ZW50SGFuZGxlKTsKIAogICAgIFVSTCB1cmwoaGFuZGxlLT5maXJzdFJlcXVlc3QoKS51cmwoKSk7
Ci0gICAgaWYgKHVybC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSkKLSAgICAgICAgdXJsLnJlbW92
ZUZyYWdtZW50SWRlbnRpZmllcigpOworICAgIHVybC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIo
KTsKICAgICAKICAgICBBU1NFUlQoIW1fY3VycmVudFJlc291cmNlKTsKICAgICBBU1NFUlQobV9w
ZW5kaW5nRW50cmllcy5jb250YWlucyh1cmwpKTsKQEAgLTU5Myw3ICs1ODYsNyBAQCB2b2lkIEFw
cGxpY2F0aW9uQ2FjaGVHcm91cDo6ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUhhbmRsZSogaGFu
ZGxlLCBkb3VibGUgZmluaQogICAgIAogICAgIEFTU0VSVChtX2NhY2hlQmVpbmdVcGRhdGVkKTsK
IAotICAgIG1fY2FjaGVCZWluZ1VwZGF0ZWQtPmFkZFJlc291cmNlKFdURk1vdmUobV9jdXJyZW50
UmVzb3VyY2UpKTsKKyAgICBtX2NhY2hlQmVpbmdVcGRhdGVkLT5hZGRSZXNvdXJjZShtX2N1cnJl
bnRSZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICBtX2N1cnJlbnRIYW5kbGUgPSBudWxs
cHRyOwogCiAgICAgLy8gV2hpbGUgZG93bmxvYWRpbmcgY2hlY2sgdG8gc2VlIGlmIHdlIGhhdmUg
ZXhjZWVkZWQgdGhlIGF2YWlsYWJsZSBxdW90YS4KQEAgLTYyNiw4ICs2MTksNyBAQCB2b2lkIEFw
cGxpY2F0aW9uQ2FjaGVHcm91cDo6ZGlkRmFpbChSZXNvdXJjZUhhbmRsZSogaGFuZGxlLCBjb25z
dCBSZXNvdXJjZUVycm9yJgogCiAgICAgdW5zaWduZWQgdHlwZSA9IG1fY3VycmVudFJlc291cmNl
ID8gbV9jdXJyZW50UmVzb3VyY2UtPnR5cGUoKSA6IG1fcGVuZGluZ0VudHJpZXMuZ2V0KGhhbmRs
ZS0+Zmlyc3RSZXF1ZXN0KCkudXJsKCkpOwogICAgIFVSTCB1cmwoaGFuZGxlLT5maXJzdFJlcXVl
c3QoKS51cmwoKSk7Ci0gICAgaWYgKHVybC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSkKLSAgICAg
ICAgdXJsLnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpOworICAgIHVybC5yZW1vdmVGcmFnbWVu
dElkZW50aWZpZXIoKTsKIAogICAgIEFTU0VSVCghbV9jdXJyZW50UmVzb3VyY2UgfHwgIW1fcGVu
ZGluZ0VudHJpZXMuY29udGFpbnModXJsKSk7CiAgICAgbV9jdXJyZW50UmVzb3VyY2UgPSBudWxs
cHRyOwpAQCAtNzM0LDcgKzcyNiw3IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpkaWRG
aW5pc2hMb2FkaW5nTWFuaWZlc3QoKQogICAgIC8vIFdlIGhhdmUgdGhlIG1hbmlmZXN0LCBub3cg
ZG93bmxvYWQgdGhlIHJlc291cmNlcy4KICAgICBzZXRVcGRhdGVTdGF0dXMoRG93bmxvYWRpbmcp
OwogICAgIAotICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkRPV05M
T0FESU5HX0VWRU5ULCBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOworICAgIHBvc3RMaXN0
ZW5lclRhc2soZXZlbnROYW1lcygpLmRvd25sb2FkaW5nRXZlbnQsIG1fYXNzb2NpYXRlZERvY3Vt
ZW50TG9hZGVycyk7CiAKICAgICBBU1NFUlQobV9wZW5kaW5nRW50cmllcy5pc0VtcHR5KCkpOwog
CkBAIC04MDIsOCArNzk0LDggQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6Om1hbmlmZXN0
Tm90Rm91bmQoKQogewogICAgIG1ha2VPYnNvbGV0ZSgpOwogCi0gICAgcG9zdExpc3RlbmVyVGFz
ayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6T0JTT0xFVEVfRVZFTlQsIG1fYXNzb2NpYXRlZERvY3Vt
ZW50TG9hZGVycyk7Ci0gICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6
RVJST1JfRVZFTlQsIG1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycyk7CisgICAgcG9zdExp
c3RlbmVyVGFzayhldmVudE5hbWVzKCkub2Jzb2xldGVFdmVudCwgbV9hc3NvY2lhdGVkRG9jdW1l
bnRMb2FkZXJzKTsKKyAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50
LCBtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMpOwogCiAgICAgc3RvcExvYWRpbmcoKTsK
IApAQCAtODEzLDE2ICs4MDUsMTYgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6Om1hbmlm
ZXN0Tm90Rm91bmQoKQogICAgIHdoaWxlICghbV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJz
LmlzRW1wdHkoKSkgewogICAgICAgICBIYXNoU2V0PERvY3VtZW50TG9hZGVyKj46Oml0ZXJhdG9y
IGl0ID0gbV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLmJlZ2luKCk7CiAgICAgICAgIAot
ICAgICAgICBBU1NFUlQoKCppdCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPmNhbmRpZGF0ZUFw
cGxpY2F0aW9uQ2FjaGVHcm91cCgpID09IHRoaXMpOwotICAgICAgICBBU1NFUlQoISgqaXQpLT5h
cHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5hcHBsaWNhdGlvbkNhY2hlKCkpOwotICAgICAgICAoKml0
KS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+c2V0Q2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdy
b3VwKG51bGxwdHIpOworICAgICAgICBBU1NFUlQoKCppdCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCkuY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKCkgPT0gdGhpcyk7CisgICAgICAgIEFT
U0VSVCghKCppdCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuYXBwbGljYXRpb25DYWNoZSgpKTsK
KyAgICAgICAgKCppdCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkuc2V0Q2FuZGlkYXRlQXBwbGlj
YXRpb25DYWNoZUdyb3VwKG51bGxwdHIpOwogICAgICAgICBtX3BlbmRpbmdNYXN0ZXJSZXNvdXJj
ZUxvYWRlcnMucmVtb3ZlKGl0KTsKICAgICB9CiAKICAgICBtX2Rvd25sb2FkaW5nUGVuZGluZ01h
c3RlclJlc291cmNlTG9hZGVyc0NvdW50ID0gMDsKICAgICBzZXRVcGRhdGVTdGF0dXMoSWRsZSk7
ICAgIAogICAgIG1fZnJhbWUgPSBudWxscHRyOwotICAgIAorCiAgICAgaWYgKG1fY2FjaGVzLmlz
RW1wdHkoKSkgewogICAgICAgICBBU1NFUlQobV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzLmlz
RW1wdHkoKSk7CiAgICAgICAgIEFTU0VSVCghbV9jYWNoZUJlaW5nVXBkYXRlZCk7CkBAIC04NDks
MTMgKzg0MSwxMyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6Y2hlY2tJZkxvYWRJc0Nv
bXBsZXRlKCkKIAogICAgICAgICAvLyBUaGUgc3RvcmFnZSBjb3VsZCBoYXZlIGJlZW4gbWFudWFs
bHkgZW1wdGllZCBieSB0aGUgdXNlci4KICAgICAgICAgaWYgKCFtX3N0b3JhZ2VJRCkKLSAgICAg
ICAgICAgIG1fc3RvcmFnZS0+c3RvcmVOZXdlc3RDYWNoZSh0aGlzKTsKKyAgICAgICAgICAgIG1f
c3RvcmFnZS0+c3RvcmVOZXdlc3RDYWNoZSgqdGhpcyk7CiAKLSAgICAgICAgcG9zdExpc3RlbmVy
VGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Tk9VUERBVEVfRVZFTlQsIG1fYXNzb2NpYXRlZERv
Y3VtZW50TG9hZGVycyk7CisgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLm5v
dXBkYXRlRXZlbnQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CiAgICAgICAgIGJyZWFr
OwogICAgIGNhc2UgRmFpbHVyZToKICAgICAgICAgQVNTRVJUKCFtX2NhY2hlQmVpbmdVcGRhdGVk
KTsKLSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RVJST1Jf
RVZFTlQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CisgICAgICAgIHBvc3RMaXN0ZW5l
clRhc2soZXZlbnROYW1lcygpLmVycm9yRXZlbnQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVy
cyk7CiAgICAgICAgIGlmIChtX2NhY2hlcy5pc0VtcHR5KCkpIHsKICAgICAgICAgICAgIEFTU0VS
VChtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMuaXNFbXB0eSgpKTsKICAgICAgICAgICAgIGRl
bGV0ZSB0aGlzOwpAQCAtODY3LDcgKzg1OSw3IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3Vw
OjpjaGVja0lmTG9hZElzQ29tcGxldGUoKQogCiAgICAgICAgIEFTU0VSVChtX2NhY2hlQmVpbmdV
cGRhdGVkKTsKICAgICAgICAgaWYgKG1fbWFuaWZlc3RSZXNvdXJjZSkKLSAgICAgICAgICAgIG1f
Y2FjaGVCZWluZ1VwZGF0ZWQtPnNldE1hbmlmZXN0UmVzb3VyY2UoV1RGTW92ZShtX21hbmlmZXN0
UmVzb3VyY2UpKTsKKyAgICAgICAgICAgIG1fY2FjaGVCZWluZ1VwZGF0ZWQtPnNldE1hbmlmZXN0
UmVzb3VyY2UobV9tYW5pZmVzdFJlc291cmNlLnJlbGVhc2VOb25OdWxsKCkpOwogICAgICAgICBl
bHNlIHsKICAgICAgICAgICAgIC8vIFdlIGNhbiBnZXQgaGVyZSBhcyBhIHJlc3VsdCBvZiByZXRy
eWluZyB0aGUgQ29tcGxldGUgc3RlcCwgZm9sbG93aW5nCiAgICAgICAgICAgICAvLyBhIGZhaWx1
cmUgb2YgdGhlIGNhY2hlIHN0b3JhZ2UgdG8gc2F2ZSB0aGUgbmV3ZXN0IGNhY2hlIGR1ZSB0byBo
aXR0aW5nCkBAIC04ODcsMTggKzg3OSwxOCBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6
Y2hlY2tJZkxvYWRJc0NvbXBsZXRlKCkKICAgICAgICAgICAgIGRpZFJlYWNoT3JpZ2luUXVvdGEo
dG90YWxTcGFjZU5lZWRlZCk7CiAKICAgICAgICAgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OkZh
aWx1cmVSZWFzb24gZmFpbHVyZVJlYXNvbjsKLSAgICAgICAgc2V0TmV3ZXN0Q2FjaGUoV1RGTW92
ZShtX2NhY2hlQmVpbmdVcGRhdGVkKSk7Ci0gICAgICAgIGlmIChtX3N0b3JhZ2UtPnN0b3JlTmV3
ZXN0Q2FjaGUodGhpcywgb2xkTmV3ZXN0Q2FjaGUuZ2V0KCksIGZhaWx1cmVSZWFzb24pKSB7Cisg
ICAgICAgIHNldE5ld2VzdENhY2hlKG1fY2FjaGVCZWluZ1VwZGF0ZWQucmVsZWFzZU5vbk51bGwo
KSk7CisgICAgICAgIGlmIChtX3N0b3JhZ2UtPnN0b3JlTmV3ZXN0Q2FjaGUoKnRoaXMsIG9sZE5l
d2VzdENhY2hlLmdldCgpLCBmYWlsdXJlUmVhc29uKSkgewogICAgICAgICAgICAgLy8gTmV3IGNh
Y2hlIHN0b3JlZCwgbm93IHJlbW92ZSB0aGUgb2xkIGNhY2hlLgogICAgICAgICAgICAgaWYgKG9s
ZE5ld2VzdENhY2hlKQogICAgICAgICAgICAgICAgIG1fc3RvcmFnZS0+cmVtb3ZlKG9sZE5ld2Vz
dENhY2hlLmdldCgpKTsKIAogICAgICAgICAgICAgLy8gRmlyZSB0aGUgZmluYWwgcHJvZ3Jlc3Mg
ZXZlbnQuCiAgICAgICAgICAgICBBU1NFUlQobV9wcm9ncmVzc0RvbmUgPT0gbV9wcm9ncmVzc1Rv
dGFsKTsKLSAgICAgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6
OlBST0dSRVNTX0VWRU5ULCBtX3Byb2dyZXNzVG90YWwsIG1fcHJvZ3Jlc3NEb25lLCBtX2Fzc29j
aWF0ZWREb2N1bWVudExvYWRlcnMpOworICAgICAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVu
dE5hbWVzKCkucHJvZ3Jlc3NFdmVudCwgbV9wcm9ncmVzc1RvdGFsLCBtX3Byb2dyZXNzRG9uZSwg
bV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsKIAogICAgICAgICAgICAgLy8gRmlyZSB0aGUg
c3VjY2VzcyBldmVudC4KLSAgICAgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soaXNVcGdyYWRlQXR0
ZW1wdCA/IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpVUERBVEVSRUFEWV9FVkVOVCA6IEFwcGxpY2F0
aW9uQ2FjaGVIb3N0OjpDQUNIRURfRVZFTlQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7
CisgICAgICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGlzVXBncmFkZUF0dGVtcHQgPyBldmVudE5h
bWVzKCkudXBkYXRlcmVhZHlFdmVudCA6IGV2ZW50TmFtZXMoKS5jYWNoZWRFdmVudCwgbV9hc3Nv
Y2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsKICAgICAgICAgICAgIC8vIEl0IGlzIGNsZWFyIHRoYXQg
dGhlIG9yaWdpbiBxdW90YSB3YXMgbm90IHJlYWNoZWQsIHNvIGNsZWFyIHRoZSBmbGFnIGlmIGl0
IHdhcyBzZXQuCiAgICAgICAgICAgICBtX29yaWdpblF1b3RhRXhjZWVkZWRQcmV2aW91c2x5ID0g
ZmFsc2U7CiAgICAgICAgIH0gZWxzZSB7CkBAIC05MTksMTAgKzkxMSw4IEBAIHZvaWQgQXBwbGlj
YXRpb25DYWNoZUdyb3VwOjpjaGVja0lmTG9hZElzQ29tcGxldGUoKQogCiAgICAgICAgICAgICAg
ICAgLy8gU2F2ZSBhIHJlZmVyZW5jZSB0byB0aGUgbmV3IGNhY2hlLgogICAgICAgICAgICAgICAg
IG1fY2FjaGVCZWluZ1VwZGF0ZWQgPSBXVEZNb3ZlKG1fbmV3ZXN0Q2FjaGUpOwotICAgICAgICAg
ICAgICAgIGlmIChvbGROZXdlc3RDYWNoZSkgewotICAgICAgICAgICAgICAgICAgICAvLyBSZWlu
c3RhdGUgdGhlIG9sZE5ld2VzdENhY2hlLgotICAgICAgICAgICAgICAgICAgICBzZXROZXdlc3RD
YWNoZShXVEZNb3ZlKG9sZE5ld2VzdENhY2hlKSk7Ci0gICAgICAgICAgICAgICAgfQorICAgICAg
ICAgICAgICAgIGlmIChvbGROZXdlc3RDYWNoZSkKKyAgICAgICAgICAgICAgICAgICAgc2V0TmV3
ZXN0Q2FjaGUob2xkTmV3ZXN0Q2FjaGUucmVsZWFzZU5vbk51bGwoKSk7CiAgICAgICAgICAgICAg
ICAgc2NoZWR1bGVSZWFjaGVkTWF4QXBwQ2FjaGVTaXplQ2FsbGJhY2soKTsKICAgICAgICAgICAg
ICAgICByZXR1cm47CiAgICAgICAgICAgICB9CkBAIC05MzAsNyArOTIwLDcgQEAgdm9pZCBBcHBs
aWNhdGlvbkNhY2hlR3JvdXA6OmNoZWNrSWZMb2FkSXNDb21wbGV0ZSgpCiAgICAgICAgICAgICAv
LyBSdW4gdGhlICJjYWNoZSBmYWlsdXJlIHN0ZXBzIgogICAgICAgICAgICAgLy8gRmlyZSB0aGUg
ZXJyb3IgZXZlbnRzIHRvIGFsbCBwZW5kaW5nIG1hc3RlciBlbnRyaWVzLCBhcyB3ZWxsIGFueSBv
dGhlciBjYWNoZSBob3N0cwogICAgICAgICAgICAgLy8gY3VycmVudGx5IGFzc29jaWF0ZWQgd2l0
aCBhIGNhY2hlIGluIHRoaXMgZ3JvdXAuCi0gICAgICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFw
cGxpY2F0aW9uQ2FjaGVIb3N0OjpFUlJPUl9FVkVOVCwgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2Fk
ZXJzKTsKKyAgICAgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLmVycm9yRXZl
bnQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7CiAgICAgICAgICAgICAvLyBEaXNhc3Nv
Y2lhdGUgdGhlIHBlbmRpbmcgbWFzdGVyIGVudHJpZXMgZnJvbSB0aGUgZmFpbGVkIG5ldyBjYWNo
ZS4gTm90ZSB0aGF0CiAgICAgICAgICAgICAvLyBhbGwgb3RoZXIgbG9hZGVycyBpbiB0aGUgbV9h
c3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzIGFyZSBzdGlsbCBhc3NvY2lhdGVkIHdpdGgKICAgICAg
ICAgICAgIC8vIHNvbWUgb3RoZXIgY2FjaGUgaW4gdGhpcyBncm91cC4gVGhleSBhcmUgbm90IGFz
c29jaWF0ZWQgd2l0aCB0aGUgZmFpbGVkIG5ldyBjYWNoZS4KQEAgLTkzOSwxMiArOTI5LDEyIEBA
IHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpjaGVja0lmTG9hZElzQ29tcGxldGUoKQogICAg
ICAgICAgICAgVmVjdG9yPERvY3VtZW50TG9hZGVyKj4gbG9hZGVyczsKICAgICAgICAgICAgIGNv
cHlUb1ZlY3RvcihtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMsIGxvYWRlcnMpOwogICAg
ICAgICAgICAgZm9yIChhdXRvJiBsb2FkZXIgOiBsb2FkZXJzKQotICAgICAgICAgICAgICAgIGRp
c2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKGxvYWRlcik7IC8vIFRoaXMgY2FuIGRlbGV0ZSB0aGlz
IGdyb3VwLgorICAgICAgICAgICAgICAgIGRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKCpsb2Fk
ZXIpOyAvLyBUaGlzIGNhbiBkZWxldGUgdGhpcyBncm91cC4KIAogICAgICAgICAgICAgLy8gUmVp
bnN0YXRlIHRoZSBvbGROZXdlc3RDYWNoZSwgaWYgdGhlcmUgd2FzIG9uZS4KICAgICAgICAgICAg
IGlmIChvbGROZXdlc3RDYWNoZSkgewogICAgICAgICAgICAgICAgIC8vIFRoaXMgd2lsbCBkaXNj
YXJkIHRoZSBmYWlsZWQgbmV3IGNhY2hlLgotICAgICAgICAgICAgICAgIHNldE5ld2VzdENhY2hl
KFdURk1vdmUob2xkTmV3ZXN0Q2FjaGUpKTsKKyAgICAgICAgICAgICAgICBzZXROZXdlc3RDYWNo
ZShvbGROZXdlc3RDYWNoZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICAgICAgICAgIH0gZWxzZSB7
CiAgICAgICAgICAgICAgICAgLy8gV2UgbXVzdCBoYXZlIGJlZW4gZGVsZXRlZCBieSB0aGUgbGFz
dCBjYWxsIHRvIGRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKCkuCiAgICAgICAgICAgICAgICAg
cmV0dXJuOwpAQCAtOTczLDE0ICs5NjMsMTMgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
OnN0YXJ0TG9hZGluZ0VudHJ5KCkKICAgICAgICAgcmV0dXJuOwogICAgIH0KICAgICAKLSAgICBF
bnRyeU1hcDo6Y29uc3RfaXRlcmF0b3IgaXQgPSBtX3BlbmRpbmdFbnRyaWVzLmJlZ2luKCk7Cisg
ICAgYXV0byBmaXJzdFBlbmRpbmdFbnRyeVVSTCA9IG1fcGVuZGluZ0VudHJpZXMuYmVnaW4oKS0+
a2V5OwogCi0gICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6UFJPR1JF
U1NfRVZFTlQsIG1fcHJvZ3Jlc3NUb3RhbCwgbV9wcm9ncmVzc0RvbmUsIG1fYXNzb2NpYXRlZERv
Y3VtZW50TG9hZGVycyk7CisgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkucHJvZ3Jl
c3NFdmVudCwgbV9wcm9ncmVzc1RvdGFsLCBtX3Byb2dyZXNzRG9uZSwgbV9hc3NvY2lhdGVkRG9j
dW1lbnRMb2FkZXJzKTsKICAgICBtX3Byb2dyZXNzRG9uZSsrOwogCiAgICAgQVNTRVJUKCFtX2N1
cnJlbnRIYW5kbGUpOwotICAgIAotICAgIG1fY3VycmVudEhhbmRsZSA9IGNyZWF0ZVJlc291cmNl
SGFuZGxlKFVSTChQYXJzZWRVUkxTdHJpbmcsIGl0LT5rZXkpLCBtX25ld2VzdENhY2hlID8gbV9u
ZXdlc3RDYWNoZS0+cmVzb3VyY2VGb3JVUkwoaXQtPmtleSkgOiAwKTsKKyAgICBtX2N1cnJlbnRI
YW5kbGUgPSBjcmVhdGVSZXNvdXJjZUhhbmRsZShVUkwoUGFyc2VkVVJMU3RyaW5nLCBmaXJzdFBl
bmRpbmdFbnRyeVVSTCksIG1fbmV3ZXN0Q2FjaGUgPyBtX25ld2VzdENhY2hlLT5yZXNvdXJjZUZv
clVSTChmaXJzdFBlbmRpbmdFbnRyeVVSTCkgOiAwKTsKIH0KIAogdm9pZCBBcHBsaWNhdGlvbkNh
Y2hlR3JvdXA6OmRlbGl2ZXJEZWxheWVkTWFpblJlc291cmNlcygpCkBAIC05ODgsMTkgKzk3Nywx
NSBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZGVsaXZlckRlbGF5ZWRNYWluUmVzb3Vy
Y2VzKCkKICAgICAvLyBOZWVkIHRvIGNvcHkgbG9hZGVycywgYmVjYXVzZSB0aGUgY2FjaGUgZ3Jv
dXAgbWF5IGJlIGRlc3Ryb3llZCBhdCB0aGUgZW5kIG9mIGl0ZXJhdGlvbi4KICAgICBWZWN0b3I8
RG9jdW1lbnRMb2FkZXIqPiBsb2FkZXJzOwogICAgIGNvcHlUb1ZlY3RvcihtX3BlbmRpbmdNYXN0
ZXJSZXNvdXJjZUxvYWRlcnMsIGxvYWRlcnMpOwotICAgIHNpemVfdCBjb3VudCA9IGxvYWRlcnMu
c2l6ZSgpOwotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpICE9IGNvdW50OyArK2kpIHsKLSAgICAg
ICAgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciA9IGxvYWRlcnNbaV07CisgICAgZm9yIChhdXRvKiBs
b2FkZXIgOiBsb2FkZXJzKSB7CiAgICAgICAgIGlmIChsb2FkZXItPmlzTG9hZGluZ01haW5SZXNv
dXJjZSgpKQogICAgICAgICAgICAgY29udGludWU7Ci0KLSAgICAgICAgY29uc3QgUmVzb3VyY2VF
cnJvciYgZXJyb3IgPSBsb2FkZXItPm1haW5Eb2N1bWVudEVycm9yKCk7Ci0gICAgICAgIGlmIChl
cnJvci5pc051bGwoKSkKLSAgICAgICAgICAgIGZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZShs
b2FkZXIpOworICAgICAgICBpZiAobG9hZGVyLT5tYWluRG9jdW1lbnRFcnJvcigpLmlzTnVsbCgp
KQorICAgICAgICAgICAgZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKCpsb2FkZXIpOwogICAg
ICAgICBlbHNlCi0gICAgICAgICAgICBmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKGxvYWRlcik7
CisgICAgICAgICAgICBmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKCpsb2FkZXIpOwogICAgIH0K
LSAgICBpZiAoIWNvdW50KQorICAgIGlmIChsb2FkZXJzLmlzRW1wdHkoKSkKICAgICAgICAgY2hl
Y2tJZkxvYWRJc0NvbXBsZXRlKCk7CiB9CiAKQEAgLTEwMDgsMTMgKzk5MywxMiBAQCB2b2lkIEFw
cGxpY2F0aW9uQ2FjaGVHcm91cDo6YWRkRW50cnkoY29uc3QgU3RyaW5nJiB1cmwsIHVuc2lnbmVk
IHR5cGUpCiB7CiAgICAgQVNTRVJUKG1fY2FjaGVCZWluZ1VwZGF0ZWQpOwogICAgIEFTU0VSVCgh
VVJMKFBhcnNlZFVSTFN0cmluZywgdXJsKS5oYXNGcmFnbWVudElkZW50aWZpZXIoKSk7Ci0gICAg
CisKICAgICAvLyBEb24ndCBhZGQgdGhlIFVSTCBpZiB3ZSBhbHJlYWR5IGhhdmUgYW4gbWFzdGVy
IHJlc291cmNlIGluIHRoZSBjYWNoZQogICAgIC8vIChpLmUuLCB0aGUgbWFpbiByZXNvdXJjZSBm
aW5pc2hlZCBsb2FkaW5nIGJlZm9yZSB0aGUgbWFuaWZlc3QpLgotICAgIGlmIChBcHBsaWNhdGlv
bkNhY2hlUmVzb3VyY2UqIHJlc291cmNlID0gbV9jYWNoZUJlaW5nVXBkYXRlZC0+cmVzb3VyY2VG
b3JVUkwodXJsKSkgeworICAgIGlmIChhdXRvKiByZXNvdXJjZSA9IG1fY2FjaGVCZWluZ1VwZGF0
ZWQtPnJlc291cmNlRm9yVVJMKHVybCkpIHsKICAgICAgICAgQVNTRVJUKHJlc291cmNlLT50eXBl
KCkgJiBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6Ok1hc3Rlcik7CiAgICAgICAgIEFTU0VSVCgh
bV9mcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKS0+aXNMb2FkaW5nTWFpblJlc291cmNl
KCkpOwotICAgIAogICAgICAgICByZXNvdXJjZS0+YWRkVHlwZSh0eXBlKTsKICAgICAgICAgcmV0
dXJuOwogICAgIH0KQEAgLTEwMjUsMTEgKzEwMDksOCBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVH
cm91cDo6YWRkRW50cnkoY29uc3QgU3RyaW5nJiB1cmwsIHVuc2lnbmVkIHR5cGUpCiAgICAgICAg
IG1fbWFuaWZlc3RSZXNvdXJjZS0+YWRkVHlwZSh0eXBlKTsKICAgICAgICAgcmV0dXJuOwogICAg
IH0KLSAgICAKLSAgICBFbnRyeU1hcDo6QWRkUmVzdWx0IHJlc3VsdCA9IG1fcGVuZGluZ0VudHJp
ZXMuYWRkKHVybCwgdHlwZSk7Ci0gICAgCi0gICAgaWYgKCFyZXN1bHQuaXNOZXdFbnRyeSkKLSAg
ICAgICAgcmVzdWx0Lml0ZXJhdG9yLT52YWx1ZSB8PSB0eXBlOworCisgICAgbV9wZW5kaW5nRW50
cmllcy5hZGQodXJsLCB0eXBlKS5pdGVyYXRvci0+dmFsdWUgfD0gdHlwZTsKIH0KIAogdm9pZCBB
cHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFzc29jaWF0ZURvY3VtZW50TG9hZGVyV2l0aENhY2hlKERv
Y3VtZW50TG9hZGVyKiBsb2FkZXIsIEFwcGxpY2F0aW9uQ2FjaGUqIGNhY2hlKQpAQCAtMTA0MCw2
MyArMTAyMSw2MyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6YXNzb2NpYXRlRG9jdW1l
bnRMb2FkZXJXaXRoQ2FjaGUoRG9jdW1lbnRMb2FkZXIqIGxvYQogCiAgICAgQVNTRVJUKCFtX2lz
T2Jzb2xldGUpOwogCi0gICAgbG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5zZXRBcHBs
aWNhdGlvbkNhY2hlKGNhY2hlKTsKKyAgICBsb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCku
c2V0QXBwbGljYXRpb25DYWNoZShjYWNoZSk7CiAKICAgICBBU1NFUlQoIW1fYXNzb2NpYXRlZERv
Y3VtZW50TG9hZGVycy5jb250YWlucyhsb2FkZXIpKTsKICAgICBtX2Fzc29jaWF0ZWREb2N1bWVu
dExvYWRlcnMuYWRkKGxvYWRlcik7CiB9CiAKLWNsYXNzIENocm9tZUNsaWVudENhbGxiYWNrVGlt
ZXI6IHB1YmxpYyBUaW1lckJhc2UgeworY2xhc3MgQ2hyb21lQ2xpZW50Q2FsbGJhY2tUaW1lciBm
aW5hbCA6IHB1YmxpYyBUaW1lckJhc2UgewogcHVibGljOgotICAgIENocm9tZUNsaWVudENhbGxi
YWNrVGltZXIoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBjYWNoZUdyb3VwKQotICAgICAgICA6IG1f
Y2FjaGVHcm91cChjYWNoZUdyb3VwKQorICAgIENocm9tZUNsaWVudENhbGxiYWNrVGltZXIoQXBw
bGljYXRpb25DYWNoZUdyb3VwJiBncm91cCkKKyAgICAgICAgOiBtX2dyb3VwKGdyb3VwKQogICAg
IHsKICAgICB9CiAKIHByaXZhdGU6Ci0gICAgdm9pZCBmaXJlZCgpIG92ZXJyaWRlCisgICAgdm9p
ZCBmaXJlZCgpIGZpbmFsCiAgICAgewotICAgICAgICBtX2NhY2hlR3JvdXAtPmRpZFJlYWNoTWF4
QXBwQ2FjaGVTaXplKCk7CisgICAgICAgIG1fZ3JvdXAuZGlkUmVhY2hNYXhBcHBDYWNoZVNpemUo
KTsKICAgICAgICAgZGVsZXRlIHRoaXM7CiAgICAgfQotICAgIC8vIE5vdGUgdGhhdCB0aGVyZSBp
cyBubyBuZWVkIHRvIHVzZSBhIFJlZlB0ciBoZXJlLiBUaGUgQXBwbGljYXRpb25DYWNoZUdyb3Vw
IGluc3RhbmNlIGlzIGd1YXJhbnRlZWQKLSAgICAvLyB0byBiZSBhbGl2ZSB3aGVuIHRoZSB0aW1l
ciBmaXJlcyBzaW5jZSBpbnZva2luZyB0aGUgQ2hyb21lQ2xpZW50IGNhbGxiYWNrIGlzIHBhcnQg
b2YgaXRzIG5vcm1hbAorCisgICAgLy8gTm90ZSB0aGF0IHRoZXJlIGlzIG5vIG5lZWQgdG8gdXNl
IGEgUmVmIGhlcmUuIFRoZSBBcHBsaWNhdGlvbkNhY2hlR3JvdXAgaW5zdGFuY2UgaXMgZ3VhcmFu
dGVlZAorICAgIC8vIHRvIGJlIGFsaXZlIHdoZW4gdGhlIHRpbWVyIGZpcmVzIHNpbmNlIGludm9r
aW5nIHRoZSBjYWxsYmFjayBpcyBwYXJ0IG9mIGl0cyBub3JtYWwKICAgICAvLyB1cGRhdGUgbWFj
aGluZXJ5IGFuZCBub3RoaW5nIGNhbiB5ZXQgY2F1c2UgaXQgdG8gZ2V0IGRlbGV0ZWQuCi0gICAg
QXBwbGljYXRpb25DYWNoZUdyb3VwKiBtX2NhY2hlR3JvdXA7CisgICAgQXBwbGljYXRpb25DYWNo
ZUdyb3VwJiBtX2dyb3VwOwogfTsKIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNjaGVk
dWxlUmVhY2hlZE1heEFwcENhY2hlU2l6ZUNhbGxiYWNrKCkKIHsKICAgICBBU1NFUlQoaXNNYWlu
VGhyZWFkKCkpOwotICAgIENocm9tZUNsaWVudENhbGxiYWNrVGltZXIqIHRpbWVyID0gbmV3IENo
cm9tZUNsaWVudENhbGxiYWNrVGltZXIodGhpcyk7CisgICAgYXV0byogdGltZXIgPSBuZXcgQ2hy
b21lQ2xpZW50Q2FsbGJhY2tUaW1lcigqdGhpcyk7CiAgICAgdGltZXItPnN0YXJ0T25lU2hvdCgw
KTsKICAgICAvLyBUaGUgdGltZXIgd2lsbCBkZWxldGUgaXRzZWxmIG9uY2UgaXQgZmlyZXMuCiB9
CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0
aW9uQ2FjaGVIb3N0OjpFdmVudElEIGV2ZW50SUQsIGludCBwcm9ncmVzc1RvdGFsLCBpbnQgcHJv
Z3Jlc3NEb25lLCBjb25zdCBIYXNoU2V0PERvY3VtZW50TG9hZGVyKj4mIGxvYWRlclNldCkKK3Zv
aWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpwb3N0TGlzdGVuZXJUYXNrKGNvbnN0IEF0b21pY1N0
cmluZyYgZXZlbnRUeXBlLCBpbnQgcHJvZ3Jlc3NUb3RhbCwgaW50IHByb2dyZXNzRG9uZSwgY29u
c3QgSGFzaFNldDxEb2N1bWVudExvYWRlcio+JiBsb2FkZXJTZXQpCiB7CiAgICAgZm9yIChhdXRv
JiBsb2FkZXIgOiBsb2FkZXJTZXQpCi0gICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnRJRCwg
cHJvZ3Jlc3NUb3RhbCwgcHJvZ3Jlc3NEb25lLCBsb2FkZXIpOworICAgICAgICBwb3N0TGlzdGVu
ZXJUYXNrKGV2ZW50VHlwZSwgcHJvZ3Jlc3NUb3RhbCwgcHJvZ3Jlc3NEb25lLCAqbG9hZGVyKTsK
IH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnBvc3RMaXN0ZW5lclRhc2soQXBwbGlj
YXRpb25DYWNoZUhvc3Q6OkV2ZW50SUQgZXZlbnRJRCwgaW50IHByb2dyZXNzVG90YWwsIGludCBw
cm9ncmVzc0RvbmUsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCit2b2lkIEFwcGxpY2F0aW9uQ2Fj
aGVHcm91cDo6cG9zdExpc3RlbmVyVGFzayhjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwg
aW50IHByb2dyZXNzVG90YWwsIGludCBwcm9ncmVzc0RvbmUsIERvY3VtZW50TG9hZGVyJiBsb2Fk
ZXIpCiB7Ci0gICAgRnJhbWUqIGZyYW1lID0gbG9hZGVyLT5mcmFtZSgpOworICAgIGF1dG8qIGZy
YW1lID0gbG9hZGVyLmZyYW1lKCk7CiAgICAgaWYgKCFmcmFtZSkKICAgICAgICAgcmV0dXJuOwog
ICAgIAotICAgIEFTU0VSVChmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSA9PSBsb2Fk
ZXIpOworICAgIEFTU0VSVChmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSA9PSAmbG9h
ZGVyKTsKIAotICAgIFJlZlB0cjxEb2N1bWVudExvYWRlcj4gbG9hZGVyUHJvdGVjdG9yKGxvYWRl
cik7Ci0gICAgZnJhbWUtPmRvY3VtZW50KCktPnBvc3RUYXNrKFtsb2FkZXJQcm90ZWN0b3IsIGV2
ZW50SUQsIHByb2dyZXNzVG90YWwsIHByb2dyZXNzRG9uZV0gKFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQmIGNvbnRleHQpIHsKKyAgICBSZWZQdHI8RG9jdW1lbnRMb2FkZXI+IHByb3RlY3RlZExvYWRl
cigmbG9hZGVyKTsKKyAgICBmcmFtZS0+ZG9jdW1lbnQoKS0+cG9zdFRhc2soW3Byb3RlY3RlZExv
YWRlciwgJmV2ZW50VHlwZSwgcHJvZ3Jlc3NUb3RhbCwgcHJvZ3Jlc3NEb25lXSAoU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCYgY29udGV4dCkgewogICAgICAgICBBU1NFUlRfVU5VU0VEKGNvbnRleHQs
IGNvbnRleHQuaXNEb2N1bWVudCgpKTsKLSAgICAgICAgRnJhbWUqIGZyYW1lID0gbG9hZGVyUHJv
dGVjdG9yLT5mcmFtZSgpOworICAgICAgICBhdXRvKiBmcmFtZSA9IHByb3RlY3RlZExvYWRlci0+
ZnJhbWUoKTsKICAgICAgICAgaWYgKCFmcmFtZSkKICAgICAgICAgICAgIHJldHVybjsKIAotICAg
ICAgICBBU1NFUlQoZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkgPT0gbG9hZGVyUHJv
dGVjdG9yKTsKLQotICAgICAgICBsb2FkZXJQcm90ZWN0b3ItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCktPm5vdGlmeURPTUFwcGxpY2F0aW9uQ2FjaGUoZXZlbnRJRCwgcHJvZ3Jlc3NUb3RhbCwgcHJv
Z3Jlc3NEb25lKTsKKyAgICAgICAgQVNTRVJUKGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRl
cigpID09IHByb3RlY3RlZExvYWRlcik7CisgICAgICAgIHByb3RlY3RlZExvYWRlci0+YXBwbGlj
YXRpb25DYWNoZUhvc3QoKS5ub3RpZnlET01BcHBsaWNhdGlvbkNhY2hlKGV2ZW50VHlwZSwgcHJv
Z3Jlc3NUb3RhbCwgcHJvZ3Jlc3NEb25lKTsKICAgICB9KTsKIH0KIApAQCAtMTEwOCw4ICsxMDg5
LDcgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNldFVwZGF0ZVN0YXR1cyhVcGRhdGVT
dGF0dXMgc3RhdHVzKQogdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNsZWFyU3RvcmFnZUlE
KCkKIHsKICAgICBtX3N0b3JhZ2VJRCA9IDA7Ci0gICAgCi0gICAgZm9yIChjb25zdCBhdXRvJiBj
YWNoZSA6IG1fY2FjaGVzKQorICAgIGZvciAoYXV0byYgY2FjaGUgOiBtX2NhY2hlcykKICAgICAg
ICAgY2FjaGUtPmNsZWFyU3RvcmFnZUlEKCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuaCBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuaAppbmRleCBiMDY0NGM0
NmM4NjY5MWNhOGQwMDkzNTU3NjhmYjU4OTE2ZGY3OWIxLi5mYzg1MWRhN2NmYThjNDMzMmY2ODVl
YTI5MTIyZTM3ZDRkYjdhYWEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBw
Y2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAq
IENvcHlyaWdodCAoQykgMjAwOCwgMjAwOSwgMjAxMCBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVz
ZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxNyBBcHBsZSBJbmMuIEFsbCBSaWdodHMg
UmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTQ5LDggKzQ5LDkg
QEAgZW51bSBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlT3B0aW9uIHsKICAgICBBcHBsaWNhdGlvbkNh
Y2hlVXBkYXRlV2l0aG91dEJyb3dzaW5nQ29udGV4dAogfTsKIAotY2xhc3MgQXBwbGljYXRpb25D
YWNoZUdyb3VwIDogUmVzb3VyY2VIYW5kbGVDbGllbnQgewotICAgIFdURl9NQUtFX05PTkNPUFlB
QkxFKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCk7IFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworY2xh
c3MgQXBwbGljYXRpb25DYWNoZUdyb3VwIGZpbmFsIDogcHJpdmF0ZSBSZXNvdXJjZUhhbmRsZUNs
aWVudCB7CisgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoQXBwbGljYXRpb25DYWNoZUdyb3VwKTsK
KyAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKICAgICBleHBsaWNpdCBBcHBs
aWNhdGlvbkNhY2hlR3JvdXAoUmVmPEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlPiYmLCBjb25zdCBV
UkwmIG1hbmlmZXN0VVJMKTsKICAgICB2aXJ0dWFsIH5BcHBsaWNhdGlvbkNhY2hlR3JvdXAoKTsK
QEAgLTYwLDggKzYxLDggQEAgcHVibGljOgogICAgIHN0YXRpYyBBcHBsaWNhdGlvbkNhY2hlKiBj
YWNoZUZvck1haW5SZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIERvY3VtZW50TG9hZGVy
Kik7CiAgICAgc3RhdGljIEFwcGxpY2F0aW9uQ2FjaGUqIGZhbGxiYWNrQ2FjaGVGb3JNYWluUmVx
dWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBEb2N1bWVudExvYWRlciopOwogICAgIAotICAg
IHN0YXRpYyB2b2lkIHNlbGVjdENhY2hlKEZyYW1lKiwgY29uc3QgVVJMJiBtYW5pZmVzdFVSTCk7
Ci0gICAgc3RhdGljIHZvaWQgc2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3RVUkwoRnJhbWUqKTsK
KyAgICBzdGF0aWMgdm9pZCBzZWxlY3RDYWNoZShGcmFtZSYsIGNvbnN0IFVSTCYgbWFuaWZlc3RV
UkwpOworICAgIHN0YXRpYyB2b2lkIHNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0VVJMKEZyYW1l
Jik7CiAKICAgICBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZSYgc3RvcmFnZSgpIHsgcmV0dXJuIG1f
c3RvcmFnZTsgfQogICAgIGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwoKSBjb25zdCB7IHJldHVybiBt
X21hbmlmZXN0VVJMOyB9CkBAIC03MywzMSArNzQsMzEgQEAgcHVibGljOgogICAgIHVuc2lnbmVk
IHN0b3JhZ2VJRCgpIGNvbnN0IHsgcmV0dXJuIG1fc3RvcmFnZUlEOyB9CiAgICAgdm9pZCBjbGVh
clN0b3JhZ2VJRCgpOwogICAgIAotICAgIHZvaWQgdXBkYXRlKEZyYW1lKiwgQXBwbGljYXRpb25D
YWNoZVVwZGF0ZU9wdGlvbik7IC8vIEZJWE1FOiBGcmFtZSBzaG91bGQgbm90IGJlIG5lZWRlZCB3
aGVuIHVwZGF0aW5nIHdpdGhvdXQgYnJvd3NpbmcgY29udGV4dC4KLSAgICB2b2lkIGNhY2hlRGVz
dHJveWVkKEFwcGxpY2F0aW9uQ2FjaGUqKTsKKyAgICB2b2lkIHVwZGF0ZShGcmFtZSYsIEFwcGxp
Y2F0aW9uQ2FjaGVVcGRhdGVPcHRpb24pOyAvLyBGSVhNRTogRnJhbWUgc2hvdWxkIG5vdCBiZSBu
ZWVkZWQgd2hlbiB1cGRhdGluZyB3aXRob3V0IGJyb3dzaW5nIGNvbnRleHQuCisgICAgdm9pZCBj
YWNoZURlc3Ryb3llZChBcHBsaWNhdGlvbkNhY2hlJik7CiAgICAgCi0gICAgdm9pZCBhYm9ydChG
cmFtZSopOworICAgIHZvaWQgYWJvcnQoRnJhbWUmKTsKIAotICAgIGJvb2wgY2FjaGVJc0NvbXBs
ZXRlKEFwcGxpY2F0aW9uQ2FjaGUqIGNhY2hlKSB7IHJldHVybiBtX2NhY2hlcy5jb250YWlucyhj
YWNoZSk7IH0KKyAgICBib29sIGNhY2hlSXNDb21wbGV0ZShBcHBsaWNhdGlvbkNhY2hlJiBjYWNo
ZSkgeyByZXR1cm4gbV9jYWNoZXMuY29udGFpbnMoJmNhY2hlKTsgfQogCi0gICAgdm9pZCBzdG9w
TG9hZGluZ0luRnJhbWUoRnJhbWUqKTsKKyAgICB2b2lkIHN0b3BMb2FkaW5nSW5GcmFtZShGcmFt
ZSYpOwogCiAgICAgQXBwbGljYXRpb25DYWNoZSogbmV3ZXN0Q2FjaGUoKSBjb25zdCB7IHJldHVy
biBtX25ld2VzdENhY2hlLmdldCgpOyB9Ci0gICAgdm9pZCBzZXROZXdlc3RDYWNoZShQYXNzUmVm
UHRyPEFwcGxpY2F0aW9uQ2FjaGU+KTsKKyAgICB2b2lkIHNldE5ld2VzdENhY2hlKFJlZjxBcHBs
aWNhdGlvbkNhY2hlPiYmKTsKIAogICAgIHZvaWQgbWFrZU9ic29sZXRlKCk7CiAgICAgYm9vbCBp
c09ic29sZXRlKCkgY29uc3QgeyByZXR1cm4gbV9pc09ic29sZXRlOyB9CiAKLSAgICB2b2lkIGZp
bmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZShEb2N1bWVudExvYWRlciopOwotICAgIHZvaWQgZmFp
bGVkTG9hZGluZ01haW5SZXNvdXJjZShEb2N1bWVudExvYWRlciopOworICAgIHZvaWQgZmluaXNo
ZWRMb2FkaW5nTWFpblJlc291cmNlKERvY3VtZW50TG9hZGVyJik7CisgICAgdm9pZCBmYWlsZWRM
b2FkaW5nTWFpblJlc291cmNlKERvY3VtZW50TG9hZGVyJik7CiAKLSAgICB2b2lkIGRpc2Fzc29j
aWF0ZURvY3VtZW50TG9hZGVyKERvY3VtZW50TG9hZGVyKik7CisgICAgdm9pZCBkaXNhc3NvY2lh
dGVEb2N1bWVudExvYWRlcihEb2N1bWVudExvYWRlciYpOwogCiBwcml2YXRlOgotICAgIHN0YXRp
YyB2b2lkIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkV2ZW50SUQgaWQs
IGNvbnN0IEhhc2hTZXQ8RG9jdW1lbnRMb2FkZXIqPiYgc2V0KSB7IHBvc3RMaXN0ZW5lclRhc2so
aWQsIDAsIDAsIHNldCk7IH0KLSAgICBzdGF0aWMgdm9pZCBwb3N0TGlzdGVuZXJUYXNrKEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0OjpFdmVudElEIGlkLCBEb2N1bWVudExvYWRlciogbG9hZGVyKSAgeyBw
b3N0TGlzdGVuZXJUYXNrKGlkLCAwLCAwLCBsb2FkZXIpOyB9Ci0gICAgc3RhdGljIHZvaWQgcG9z
dExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RXZlbnRJRCwgaW50IHByb2dyZXNz
VG90YWwsIGludCBwcm9ncmVzc0RvbmUsIGNvbnN0IEhhc2hTZXQ8RG9jdW1lbnRMb2FkZXIqPiYp
OwotICAgIHN0YXRpYyB2b2lkIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6
OkV2ZW50SUQsIGludCBwcm9ncmVzc1RvdGFsLCBpbnQgcHJvZ3Jlc3NEb25lLCBEb2N1bWVudExv
YWRlciopOworICAgIHN0YXRpYyB2b2lkIHBvc3RMaXN0ZW5lclRhc2soY29uc3QgQXRvbWljU3Ry
aW5nJiBldmVudFR5cGUsIGNvbnN0IEhhc2hTZXQ8RG9jdW1lbnRMb2FkZXIqPiYgc2V0KSB7IHBv
c3RMaXN0ZW5lclRhc2soZXZlbnRUeXBlLCAwLCAwLCBzZXQpOyB9CisgICAgc3RhdGljIHZvaWQg
cG9zdExpc3RlbmVyVGFzayhjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgRG9jdW1lbnRM
b2FkZXImIGxvYWRlcikgIHsgcG9zdExpc3RlbmVyVGFzayhldmVudFR5cGUsIDAsIDAsIGxvYWRl
cik7IH0KKyAgICBzdGF0aWMgdm9pZCBwb3N0TGlzdGVuZXJUYXNrKGNvbnN0IEF0b21pY1N0cmlu
ZyYgZXZlbnRUeXBlLCBpbnQgcHJvZ3Jlc3NUb3RhbCwgaW50IHByb2dyZXNzRG9uZSwgY29uc3Qg
SGFzaFNldDxEb2N1bWVudExvYWRlcio+Jik7CisgICAgc3RhdGljIHZvaWQgcG9zdExpc3RlbmVy
VGFzayhjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgaW50IHByb2dyZXNzVG90YWwsIGlu
dCBwcm9ncmVzc0RvbmUsIERvY3VtZW50TG9hZGVyJik7CiAKICAgICB2b2lkIHNjaGVkdWxlUmVh
Y2hlZE1heEFwcENhY2hlU2l6ZUNhbGxiYWNrKCk7CiAKQEAgLTEzNSw3ICsxMzYsNyBAQCBwcml2
YXRlOgogCiAgICAgVVJMIG1fbWFuaWZlc3RVUkw7CiAgICAgUmVmUHRyPFNlY3VyaXR5T3JpZ2lu
PiBtX29yaWdpbjsKLSAgICBVcGRhdGVTdGF0dXMgbV91cGRhdGVTdGF0dXM7CisgICAgVXBkYXRl
U3RhdHVzIG1fdXBkYXRlU3RhdHVzIHsgSWRsZSB9OwogICAgIAogICAgIC8vIFRoaXMgaXMgdGhl
IG5ld2VzdCBjb21wbGV0ZSBjYWNoZSBpbiB0aGUgZ3JvdXAuCiAgICAgUmVmUHRyPEFwcGxpY2F0
aW9uQ2FjaGU+IG1fbmV3ZXN0Q2FjaGU7CkBAIC0xNTAsMjYgKzE1MSwyNSBAQCBwcml2YXRlOgog
ICAgIC8vIExpc3Qgb2YgcGVuZGluZyBtYXN0ZXIgZW50cmllcywgdXNlZCBkdXJpbmcgdGhlIHVw
ZGF0ZSBwcm9jZXNzIHRvIGVuc3VyZSB0aGF0IG5ldyBtYXN0ZXIgZW50cmllcyBhcmUgY2FjaGVk
LgogICAgIEhhc2hTZXQ8RG9jdW1lbnRMb2FkZXIqPiBtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxv
YWRlcnM7CiAgICAgLy8gSG93IG1hbnkgb2YgdGhlIGFib3ZlIHBlbmRpbmcgbWFzdGVyIGVudHJp
ZXMgaGF2ZSBub3QgeWV0IGZpbmlzaGVkIGRvd25sb2FkaW5nLgotICAgIGludCBtX2Rvd25sb2Fk
aW5nUGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVyc0NvdW50OworICAgIGludCBtX2Rvd25sb2Fk
aW5nUGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVyc0NvdW50IHsgMCB9OwogICAgIAogICAgIC8v
IFRoZXNlIGFyZSBhbGwgdGhlIGRvY3VtZW50IGxvYWRlcnMgdGhhdCBhcmUgYXNzb2NpYXRlZCB3
aXRoIGEgY2FjaGUgaW4gdGhpcyBncm91cC4KICAgICBIYXNoU2V0PERvY3VtZW50TG9hZGVyKj4g
bV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzOwogCiAgICAgLy8gVGhlIFVSTHMgYW5kIHR5cGVz
IG9mIHBlbmRpbmcgY2FjaGUgZW50cmllcy4KLSAgICB0eXBlZGVmIEhhc2hNYXA8U3RyaW5nLCB1
bnNpZ25lZD4gRW50cnlNYXA7Ci0gICAgRW50cnlNYXAgbV9wZW5kaW5nRW50cmllczsKKyAgICBI
YXNoTWFwPFN0cmluZywgdW5zaWduZWQ+IG1fcGVuZGluZ0VudHJpZXM7CiAgICAgCiAgICAgLy8g
VGhlIHRvdGFsIG51bWJlciBvZiBpdGVtcyB0byBiZSBwcm9jZXNzZWQgdG8gdXBkYXRlIHRoZSBj
YWNoZSBncm91cCBhbmQgdGhlIG51bWJlciB0aGF0IGhhdmUgYmVlbiBkb25lLgotICAgIGludCBt
X3Byb2dyZXNzVG90YWw7Ci0gICAgaW50IG1fcHJvZ3Jlc3NEb25lOworICAgIGludCBtX3Byb2dy
ZXNzVG90YWwgeyAwIH07CisgICAgaW50IG1fcHJvZ3Jlc3NEb25lIHsgMCB9OwogCiAgICAgLy8g
RnJhbWUgdXNlZCBmb3IgZmV0Y2hpbmcgcmVzb3VyY2VzIHdoZW4gdXBkYXRpbmcuCiAgICAgLy8g
RklYTUU6IEFuIHVwZGF0ZSBzdGFydGVkIGJ5IGEgcGFydGljdWxhciBmcmFtZSBzaG91bGQgbm90
IHN0b3AgaWYgaXQgaXMgZGVzdHJveWVkLCBidXQgdGhlcmUgYXJlIG90aGVyIGZyYW1lcyBhc3Nv
Y2lhdGVkIHdpdGggdGhlIHNhbWUgY2FjaGUgZ3JvdXAuCi0gICAgRnJhbWUqIG1fZnJhbWU7Cisg
ICAgRnJhbWUqIG1fZnJhbWUgeyBudWxscHRyIH07CiAgIAogICAgIC8vIEFuIG9ic29sZXRlIGNh
Y2hlIGdyb3VwIGlzIG5ldmVyIHN0b3JlZCwgYnV0IHRoZSBvcHBvc2l0ZSBpcyBub3QgdHJ1ZSAt
IHN0b3JpbmcgbWF5IGZhaWwgZm9yIG11bHRpcGxlIHJlYXNvbnMsIHN1Y2ggYXMgZXhjZWVkaW5n
IGRpc2sgcXVvdGEuCi0gICAgdW5zaWduZWQgbV9zdG9yYWdlSUQ7Ci0gICAgYm9vbCBtX2lzT2Jz
b2xldGU7CisgICAgdW5zaWduZWQgbV9zdG9yYWdlSUQgeyAwIH07CisgICAgYm9vbCBtX2lzT2Jz
b2xldGUgeyBmYWxzZSB9OwogCiAgICAgLy8gRHVyaW5nIHVwZGF0ZSwgdGhpcyBpcyB1c2VkIHRv
IGhhbmRsZSBhc3luY2hyb25vdXNseSBhcnJpdmluZyByZXN1bHRzLgogICAgIGVudW0gQ29tcGxl
dGlvblR5cGUgewpAQCAtMTc4LDEyICsxNzgsMTIgQEAgcHJpdmF0ZToKICAgICAgICAgRmFpbHVy
ZSwKICAgICAgICAgQ29tcGxldGVkCiAgICAgfTsKLSAgICBDb21wbGV0aW9uVHlwZSBtX2NvbXBs
ZXRpb25UeXBlOworICAgIENvbXBsZXRpb25UeXBlIG1fY29tcGxldGlvblR5cGUgeyBOb25lIH07
CiAKICAgICAvLyBUaGlzIGZsYWcgaXMgc2V0IGltbWVkaWF0ZWx5IGFmdGVyIHRoZSBDaHJvbWVD
bGllbnQ6OnJlYWNoZWRNYXhBcHBDYWNoZVNpemUoKSBjYWxsYmFjayBpcyBpbnZva2VkIGFzIGEg
cmVzdWx0IG9mIHRoZSBzdG9yYWdlIGxheWVyIGZhaWxpbmcgdG8gc2F2ZSBhIGNhY2hlCiAgICAg
Ly8gZHVlIHRvIHJlYWNoaW5nIHRoZSBtYXhpbXVtIHNpemUgb2YgdGhlIGFwcGxpY2F0aW9uIGNh
Y2hlIGRhdGFiYXNlIGZpbGUuIFRoaXMgZmxhZyBpcyB1c2VkIGJ5IEFwcGxpY2F0aW9uQ2FjaGVH
cm91cDo6Y2hlY2tJZkxvYWRJc0NvbXBsZXRlKCkgdG8gZGVjaWRlCiAgICAgLy8gdGhlIGNvdXJz
ZSBvZiBhY3Rpb24gaW4gY2FzZSBvZiB0aGlzIGZhaWx1cmUgKGkuZS4gY2FsbCB0aGUgQ2hyb21l
Q2xpZW50IGNhbGxiYWNrIG9yIHJ1biB0aGUgZmFpbHVyZSBzdGVwcykuCi0gICAgYm9vbCBtX2Nh
bGxlZFJlYWNoZWRNYXhBcHBDYWNoZVNpemU7CisgICAgYm9vbCBtX2NhbGxlZFJlYWNoZWRNYXhB
cHBDYWNoZVNpemUgeyBmYWxzZSB9OwogICAgIAogICAgIFJlZlB0cjxSZXNvdXJjZUhhbmRsZT4g
bV9jdXJyZW50SGFuZGxlOwogICAgIFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+IG1f
Y3VycmVudFJlc291cmNlOwpAQCAtMTkzLDcgKzE5Myw3IEBAIHByaXZhdGU6CiAgICAgUmVmUHRy
PFJlc291cmNlSGFuZGxlPiBtX21hbmlmZXN0SGFuZGxlOwogCiAgICAgaW50NjRfdCBtX2F2YWls
YWJsZVNwYWNlSW5RdW90YTsKLSAgICBib29sIG1fb3JpZ2luUXVvdGFFeGNlZWRlZFByZXZpb3Vz
bHk7CisgICAgYm9vbCBtX29yaWdpblF1b3RhRXhjZWVkZWRQcmV2aW91c2x5IHsgZmFsc2UgfTsK
IAogICAgIGZyaWVuZCBjbGFzcyBDaHJvbWVDbGllbnRDYWxsYmFja1RpbWVyOwogfTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlSG9z
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUhv
c3QuY3BwCmluZGV4IDdmNTAwNGM5ODlmOTllM2VlNzVlZjVkOWZjNjU5ZmVhNWQ0ZWM4M2IuLjkx
MTQ2OTljODdmZjg1YzIxM2UwZGRhYTM4ZTM2ODZjNTVkYmJhOGEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlSG9zdC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVIb3N0LmNwcApA
QCAtMzIsNiArMzIsNyBAQAogI2luY2x1ZGUgIkNvbnRlbnRTZWN1cml0eVBvbGljeS5oIgogI2lu
Y2x1ZGUgIkRvY3VtZW50TG9hZGVyLmgiCiAjaW5jbHVkZSAiRE9NQXBwbGljYXRpb25DYWNoZS5o
IgorI2luY2x1ZGUgIkV2ZW50TmFtZXMuaCIKICNpbmNsdWRlICJGaWxlU3lzdGVtLmgiCiAjaW5j
bHVkZSAiRnJhbWUuaCIKICNpbmNsdWRlICJGcmFtZUxvYWRlci5oIgpAQCAtNDgsMzEgKzQ5LDI5
IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpBcHBsaWNh
dGlvbkNhY2hlSG9zdChEb2N1bWVudExvYWRlciYgZG9jdW1lbnRMb2FkZXIpCi0gICAgOiBtX2Rv
bUFwcGxpY2F0aW9uQ2FjaGUobnVsbHB0cikKLSAgICAsIG1fZG9jdW1lbnRMb2FkZXIoZG9jdW1l
bnRMb2FkZXIpCi0gICAgLCBtX2RlZmVyc0V2ZW50cyh0cnVlKQotICAgICwgbV9jYW5kaWRhdGVB
cHBsaWNhdGlvbkNhY2hlR3JvdXAobnVsbHB0cikKKyAgICA6IG1fZG9jdW1lbnRMb2FkZXIoZG9j
dW1lbnRMb2FkZXIpCiB7CiB9CiAKIEFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojp+QXBwbGljYXRpb25D
YWNoZUhvc3QoKQogewogICAgIEFTU0VSVCghbV9hcHBsaWNhdGlvbkNhY2hlIHx8ICFtX2NhbmRp
ZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCB8fCBtX2FwcGxpY2F0aW9uQ2FjaGUtPmdyb3VwKCkg
PT0gbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXApOwotCiAgICAgaWYgKG1fYXBwbGlj
YXRpb25DYWNoZSkKLSAgICAgICAgbV9hcHBsaWNhdGlvbkNhY2hlLT5ncm91cCgpLT5kaXNhc3Nv
Y2lhdGVEb2N1bWVudExvYWRlcigmbV9kb2N1bWVudExvYWRlcik7CisgICAgICAgIG1fYXBwbGlj
YXRpb25DYWNoZS0+Z3JvdXAoKS0+ZGlzYXNzb2NpYXRlRG9jdW1lbnRMb2FkZXIobV9kb2N1bWVu
dExvYWRlcik7CiAgICAgZWxzZSBpZiAobV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAp
Ci0gICAgICAgIG1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwLT5kaXNhc3NvY2lhdGVE
b2N1bWVudExvYWRlcigmbV9kb2N1bWVudExvYWRlcik7CisgICAgICAgIG1fY2FuZGlkYXRlQXBw
bGljYXRpb25DYWNoZUdyb3VwLT5kaXNhc3NvY2lhdGVEb2N1bWVudExvYWRlcihtX2RvY3VtZW50
TG9hZGVyKTsKIH0KIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c2VsZWN0Q2FjaGVXaXRo
b3V0TWFuaWZlc3QoKQogewotICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c2VsZWN0Q2FjaGVX
aXRob3V0TWFuaWZlc3RVUkwobV9kb2N1bWVudExvYWRlci5mcmFtZSgpKTsKKyAgICBBU1NFUlQo
bV9kb2N1bWVudExvYWRlci5mcmFtZSgpKTsKKyAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNl
bGVjdENhY2hlV2l0aG91dE1hbmlmZXN0VVJMKCptX2RvY3VtZW50TG9hZGVyLmZyYW1lKCkpOwog
fQogCiB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpzZWxlY3RDYWNoZVdpdGhNYW5pZmVzdChj
b25zdCBVUkwmIG1hbmlmZXN0VVJMKQogewotICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c2Vs
ZWN0Q2FjaGUobV9kb2N1bWVudExvYWRlci5mcmFtZSgpLCBtYW5pZmVzdFVSTCk7CisgICAgQVNT
RVJUKG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUoKSk7CisgICAgQXBwbGljYXRpb25DYWNoZUdyb3Vw
OjpzZWxlY3RDYWNoZSgqbV9kb2N1bWVudExvYWRlci5mcmFtZSgpLCBtYW5pZmVzdFVSTCk7CiB9
CiAKIHZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6Om1heWJlTG9hZE1haW5SZXNvdXJjZShSZXNv
dXJjZVJlcXVlc3QmIHJlcXVlc3QsIFN1YnN0aXR1dGVEYXRhJiBzdWJzdGl0dXRlRGF0YSkKQEAg
LTE0MCwxMiArMTM5LDExIEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZUhvc3Q6Om1heWJlTG9hZEZh
bGxiYWNrRm9yTWFpbkVycm9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYKIAogdm9pZCBBcHBsaWNh
dGlvbkNhY2hlSG9zdDo6bWFpblJlc291cmNlRGF0YVJlY2VpdmVkKGNvbnN0IGNoYXIqLCBpbnQs
IGxvbmcgbG9uZywgYm9vbCkKIHsKLSAgICAvLyBUaGlzIG1ldGhvZCBpcyBoZXJlIHRvIGZhY2ls
aXRhdGUgYWx0ZXJuYXRlIGltcGxlbWV0YXRpb25zIG9mIHRoaXMgaW50ZXJmYWNlIGJ5IHRoZSBo
b3N0IGJyb3dzZXIuCiB9CiAKIHZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmZhaWxlZExvYWRp
bmdNYWluUmVzb3VyY2UoKQogewotICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAgPSBt
X2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cDsKKyAgICBhdXRvKiBncm91cCA9IG1fY2Fu
ZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwOwogICAgIGlmICghZ3JvdXAgJiYgbV9hcHBsaWNh
dGlvbkNhY2hlKSB7CiAgICAgICAgIGlmIChtYWluUmVzb3VyY2VBcHBsaWNhdGlvbkNhY2hlKCkp
IHsKICAgICAgICAgICAgIC8vIEV2ZW4gd2hlbiB0aGUgbWFpbiByZXNvdXJjZSBpcyBiZWluZyBs
b2FkZWQgZnJvbSBhbiBhcHBsaWNhdGlvbiBjYWNoZSwgbG9hZGluZyBjYW4gZmFpbCBpZiBhYm9y
dGVkLgpAQCAtMTU1LDE3ICsxNTMsMTcgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6ZmFp
bGVkTG9hZGluZ01haW5SZXNvdXJjZSgpCiAgICAgfQogICAgIAogICAgIGlmIChncm91cCkKLSAg
ICAgICAgZ3JvdXAtPmZhaWxlZExvYWRpbmdNYWluUmVzb3VyY2UoJm1fZG9jdW1lbnRMb2FkZXIp
OworICAgICAgICBncm91cC0+ZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZShtX2RvY3VtZW50TG9h
ZGVyKTsKIH0KIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6ZmluaXNoZWRMb2FkaW5nTWFp
blJlc291cmNlKCkKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwID0gY2FuZGlk
YXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKCk7CisgICAgYXV0byogZ3JvdXAgPSBjYW5kaWRhdGVB
cHBsaWNhdGlvbkNhY2hlR3JvdXAoKTsKICAgICBpZiAoIWdyb3VwICYmIGFwcGxpY2F0aW9uQ2Fj
aGUoKSAmJiAhbWFpblJlc291cmNlQXBwbGljYXRpb25DYWNoZSgpKQogICAgICAgICBncm91cCA9
IGFwcGxpY2F0aW9uQ2FjaGUoKS0+Z3JvdXAoKTsKICAgICAKICAgICBpZiAoZ3JvdXApCi0gICAg
ICAgIGdyb3VwLT5maW5pc2hlZExvYWRpbmdNYWluUmVzb3VyY2UoJm1fZG9jdW1lbnRMb2FkZXIp
OworICAgICAgICBncm91cC0+ZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKG1fZG9jdW1lbnRM
b2FkZXIpOwogfQogCiBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjptYXliZUxvYWRSZXNvdXJj
ZShSZXNvdXJjZUxvYWRlciYgbG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3Qs
IGNvbnN0IFVSTCYgb3JpZ2luYWxVUkwpCkBAIC0xODYsMTcgKzE4NCwxOSBAQCBib29sIEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0OjptYXliZUxvYWRSZXNvdXJjZShSZXNvdXJjZUxvYWRlciYgbG9hZGVy
LCBjb25zdCBSZXNvdQogCiBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjptYXliZUxvYWRGYWxs
YmFja0ZvclJlZGlyZWN0KFJlc291cmNlTG9hZGVyKiByZXNvdXJjZUxvYWRlciwgUmVzb3VyY2VS
ZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNl
KQogewotICAgIGlmICghcmVkaXJlY3RSZXNwb25zZS5pc051bGwoKSAmJiAhcHJvdG9jb2xIb3N0
QW5kUG9ydEFyZUVxdWFsKHJlcXVlc3QudXJsKCksIHJlZGlyZWN0UmVzcG9uc2UudXJsKCkpKQor
ICAgIGlmICghcmVkaXJlY3RSZXNwb25zZS5pc051bGwoKSAmJiAhcHJvdG9jb2xIb3N0QW5kUG9y
dEFyZUVxdWFsKHJlcXVlc3QudXJsKCksIHJlZGlyZWN0UmVzcG9uc2UudXJsKCkpKSB7CiAgICAg
ICAgIGlmIChzY2hlZHVsZUxvYWRGYWxsYmFja1Jlc291cmNlRnJvbUFwcGxpY2F0aW9uQ2FjaGUo
cmVzb3VyY2VMb2FkZXIpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQogICAgIHJl
dHVybiBmYWxzZTsKIH0KIAogYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWF5YmVMb2FkRmFs
bGJhY2tGb3JSZXNwb25zZShSZXNvdXJjZUxvYWRlciogcmVzb3VyY2VMb2FkZXIsIGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewotICAgIGlmIChyZXNwb25zZS5odHRwU3RhdHVz
Q29kZSgpIC8gMTAwID09IDQgfHwgcmVzcG9uc2UuaHR0cFN0YXR1c0NvZGUoKSAvIDEwMCA9PSA1
KQorICAgIGlmIChyZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpIC8gMTAwID09IDQgfHwgcmVzcG9u
c2UuaHR0cFN0YXR1c0NvZGUoKSAvIDEwMCA9PSA1KSB7CiAgICAgICAgIGlmIChzY2hlZHVsZUxv
YWRGYWxsYmFja1Jlc291cmNlRnJvbUFwcGxpY2F0aW9uQ2FjaGUocmVzb3VyY2VMb2FkZXIpKQog
ICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQogICAgIHJldHVybiBmYWxzZTsKIH0KIApA
QCAtMjIwLDExICsyMjAsOSBAQCBVUkwgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmNyZWF0ZUZpbGVV
UkwoY29uc3QgU3RyaW5nJiBwYXRoKQogICAgIC8vIGFwcCBjYWNoZSBtZWRpYSBmaWxlcyBhcmUg
YWx3YXlzIGNyZWF0ZWQgd2l0aCBlbmNvZGVGb3JGaWxlTmFtZShjcmVhdGVDYW5vbmljYWxVVUlE
U3RyaW5nKCkpLgogCiAjaWYgVVNFKENGKSAmJiBQTEFURk9STShXSU4pCi0gICAgUmV0YWluUHRy
PENGVVJMUmVmPiBjZlVSTCA9IGFkb3B0Q0YoQ0ZVUkxDcmVhdGVXaXRoRmlsZVN5c3RlbVBhdGgo
MCwgcGF0aC5jcmVhdGVDRlN0cmluZygpLmdldCgpLCBrQ0ZVUkxXaW5kb3dzUGF0aFN0eWxlLCBm
YWxzZSkpOwotICAgIFVSTCB1cmwoY2ZVUkwuZ2V0KCkpOworICAgIFVSTCB1cmwoYWRvcHRDRihD
RlVSTENyZWF0ZVdpdGhGaWxlU3lzdGVtUGF0aCgwLCBwYXRoLmNyZWF0ZUNGU3RyaW5nKCkuZ2V0
KCksIGtDRlVSTFdpbmRvd3NQYXRoU3R5bGUsIGZhbHNlKSkuZ2V0KCkpOwogI2Vsc2UKICAgICBV
UkwgdXJsOwotCiAgICAgdXJsLnNldFByb3RvY29sKEFTQ0lJTGl0ZXJhbCgiZmlsZSIpKTsKICAg
ICB1cmwuc2V0UGF0aChwYXRoKTsKICNlbmRpZgpAQCAtMjQ2LDcgKzI0NCw3IEBAIGJvb2wgQXBw
bGljYXRpb25DYWNoZUhvc3Q6Om1heWJlTG9hZFN5bmNocm9ub3VzbHkoUmVzb3VyY2VSZXF1ZXN0
JiByZXF1ZXN0LCBSZXNvCiAgICAgaWYgKCFzaG91bGRMb2FkUmVzb3VyY2VGcm9tQXBwbGljYXRp
b25DYWNoZShyZXF1ZXN0LCByZXNvdXJjZSkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAg
IFJlZlB0cjxTaGFyZWRCdWZmZXI+IHJlc3BvbnNlRGF0YSA9IHJlc291cmNlID8gYnVmZmVyRnJv
bVJlc291cmNlKCpyZXNvdXJjZSkgOiBudWxscHRyOworICAgIGF1dG8gcmVzcG9uc2VEYXRhID0g
cmVzb3VyY2UgPyBidWZmZXJGcm9tUmVzb3VyY2UoKnJlc291cmNlKSA6IG51bGxwdHI7CiAgICAg
aWYgKCFyZXNwb25zZURhdGEpIHsKICAgICAgICAgZXJyb3IgPSBtX2RvY3VtZW50TG9hZGVyLmZy
YW1lTG9hZGVyKCktPmNsaWVudCgpLmNhbm5vdFNob3dVUkxFcnJvcihyZXF1ZXN0KTsKICAgICAg
ICAgcmV0dXJuIHRydWU7CkBAIC0yODYsMjAgKzI4NCwyMSBAQCB2b2lkIEFwcGxpY2F0aW9uQ2Fj
aGVIb3N0OjpzZXRET01BcHBsaWNhdGlvbkNhY2hlKERPTUFwcGxpY2F0aW9uQ2FjaGUqIGRvbUFw
cGxpYwogICAgIG1fZG9tQXBwbGljYXRpb25DYWNoZSA9IGRvbUFwcGxpY2F0aW9uQ2FjaGU7CiB9
CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6Om5vdGlmeURPTUFwcGxpY2F0aW9uQ2FjaGUo
RXZlbnRJRCBpZCwgaW50IHRvdGFsLCBpbnQgZG9uZSkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUhv
c3Q6Om5vdGlmeURPTUFwcGxpY2F0aW9uQ2FjaGUoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5
cGUsIGludCB0b3RhbCwgaW50IGRvbmUpCiB7Ci0gICAgaWYgKGlkICE9IFBST0dSRVNTX0VWRU5U
KQorICAgIGlmIChldmVudFR5cGUgIT0gZXZlbnROYW1lcygpLnByb2dyZXNzRXZlbnQpCiAgICAg
ICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6dXBkYXRlQXBwbGljYXRpb25DYWNoZVN0YXR1
cyhtX2RvY3VtZW50TG9hZGVyLmZyYW1lKCkpOwogCiAgICAgaWYgKG1fZGVmZXJzRXZlbnRzKSB7
CiAgICAgICAgIC8vIEV2ZW50IGRpc3BhdGNoaW5nIGlzIGRlZmVycmVkIHVudGlsIGRvY3VtZW50
Lm9ubG9hZCBoYXMgZmlyZWQuCi0gICAgICAgIG1fZGVmZXJyZWRFdmVudHMuYXBwZW5kKERlZmVy
cmVkRXZlbnQoaWQsIHRvdGFsLCBkb25lKSk7CisgICAgICAgIG1fZGVmZXJyZWRFdmVudHMuYXBw
ZW5kKHsgZXZlbnRUeXBlLCB0b3RhbCwgZG9uZSB9KTsKICAgICAgICAgcmV0dXJuOwogICAgIH0K
LSAgICBkaXNwYXRjaERPTUV2ZW50KGlkLCB0b3RhbCwgZG9uZSk7CisKKyAgICBkaXNwYXRjaERP
TUV2ZW50KGV2ZW50VHlwZSwgdG90YWwsIGRvbmUpOwogfQogCi12b2lkIEFwcGxpY2F0aW9uQ2Fj
aGVIb3N0OjpzdG9wTG9hZGluZ0luRnJhbWUoRnJhbWUqIGZyYW1lKQordm9pZCBBcHBsaWNhdGlv
bkNhY2hlSG9zdDo6c3RvcExvYWRpbmdJbkZyYW1lKEZyYW1lJiBmcmFtZSkKIHsKICAgICBBU1NF
UlQoIW1fYXBwbGljYXRpb25DYWNoZSB8fCAhbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3Jv
dXAgfHwgbV9hcHBsaWNhdGlvbkNhY2hlLT5ncm91cCgpID09IG1fY2FuZGlkYXRlQXBwbGljYXRp
b25DYWNoZUdyb3VwKTsKIApAQCAtMzEyLDUzICszMTEsNjggQEAgdm9pZCBBcHBsaWNhdGlvbkNh
Y2hlSG9zdDo6c3RvcExvYWRpbmdJbkZyYW1lKEZyYW1lKiBmcmFtZSkKIHZvaWQgQXBwbGljYXRp
b25DYWNoZUhvc3Q6OnN0b3BEZWZlcnJpbmdFdmVudHMoKQogewogICAgIFJlZjxEb2N1bWVudExv
YWRlcj4gcHJvdGVjdChtX2RvY3VtZW50TG9hZGVyKTsKLSAgICBmb3IgKGF1dG8mIGV2ZW50IDog
bV9kZWZlcnJlZEV2ZW50cykKLSAgICAgICAgZGlzcGF0Y2hET01FdmVudChldmVudC5ldmVudElE
LCBldmVudC5wcm9ncmVzc1RvdGFsLCBldmVudC5wcm9ncmVzc0RvbmUpOworCisgICAgLy8gTm90
ZSwgZG8gbm90IGNhY2hlIHRoZSBzaXplIGluIGEgbG9jYWwgdmFyaWFibGUuCisgICAgLy8gVGhp
cyBjb2RlIG5lZWRzIHRvIHByb3Blcmx5IGhhbmRsZSB0aGUgY2FzZSB3aGVyZSBtb3JlIGV2ZW50
cyBhcmUgYWRkZWQgdG8KKyAgICAvLyBtX2RlZmVycmVkRXZlbnRzIHdoaWxlIGl0ZXJhdGluZyBp
dC4gVGhpcyBpcyB3aHkgd2UgZG9uJ3QgdXNlIGEgbW9kZXJuIGZvciBsb29wLgorICAgIGZvciAo
c2l6ZV90IGkgPSAwOyBpIDwgbV9kZWZlcnJlZEV2ZW50cy5zaXplKCk7ICsraSkgeworICAgICAg
ICBhdXRvJiBldmVudCA9IG1fZGVmZXJyZWRFdmVudHNbaV07CisgICAgICAgIGRpc3BhdGNoRE9N
RXZlbnQoZXZlbnQuZXZlbnRUeXBlLCBldmVudC5wcm9ncmVzc1RvdGFsLCBldmVudC5wcm9ncmVz
c0RvbmUpOworICAgIH0KKwogICAgIG1fZGVmZXJyZWRFdmVudHMuY2xlYXIoKTsKICAgICBtX2Rl
ZmVyc0V2ZW50cyA9IGZhbHNlOwogfQogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpmaWxs
UmVzb3VyY2VMaXN0KFJlc291cmNlSW5mb0xpc3QqIHJlc291cmNlcykKK1ZlY3RvcjxBcHBsaWNh
dGlvbkNhY2hlSG9zdDo6UmVzb3VyY2VJbmZvPiBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6cmVzb3Vy
Y2VMaXN0KCkKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2Fj
aGUoKTsKKyAgICBWZWN0b3I8UmVzb3VyY2VJbmZvPiByZXN1bHQ7CisKKyAgICBhdXRvKiBjYWNo
ZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKTsKICAgICBpZiAoIWNhY2hlIHx8ICFjYWNoZS0+aXNDb21w
bGV0ZSgpKQotICAgICAgICByZXR1cm47CisgICAgICAgIHJldHVybiByZXN1bHQ7CiAKLSAgICBm
b3IgKGNvbnN0IGF1dG8mIHVybEFuZFJlc291cmNlIDogY2FjaGUtPnJlc291cmNlcygpKSB7Ci0g
ICAgICAgIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSogcmVzb3VyY2UgPSB1cmxBbmRSZXNvdXJj
ZS52YWx1ZS5nZXQoKTsKKyAgICByZXN1bHQucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShjYWNoZS0+
cmVzb3VyY2VzKCkuc2l6ZSgpKTsKIAotICAgICAgICB1bnNpZ25lZCB0eXBlID0gcmVzb3VyY2Ut
PnR5cGUoKTsKKyAgICBmb3IgKGF1dG8mIHVybEFuZFJlc291cmNlIDogY2FjaGUtPnJlc291cmNl
cygpKSB7CisgICAgICAgIEFTU0VSVCh1cmxBbmRSZXNvdXJjZS52YWx1ZSk7CisgICAgICAgIGF1
dG8mIHJlc291cmNlID0gKnVybEFuZFJlc291cmNlLnZhbHVlOworCisgICAgICAgIHVuc2lnbmVk
IHR5cGUgPSByZXNvdXJjZS50eXBlKCk7CiAgICAgICAgIGJvb2wgaXNNYXN0ZXIgPSB0eXBlICYg
QXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXI7CiAgICAgICAgIGJvb2wgaXNNYW5pZmVz
dCA9IHR5cGUgJiBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6Ok1hbmlmZXN0OwogICAgICAgICBi
b29sIGlzRXhwbGljaXQgPSB0eXBlICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpFeHBsaWNp
dDsKICAgICAgICAgYm9vbCBpc0ZvcmVpZ24gPSB0eXBlICYgQXBwbGljYXRpb25DYWNoZVJlc291
cmNlOjpGb3JlaWduOwogICAgICAgICBib29sIGlzRmFsbGJhY2sgPSB0eXBlICYgQXBwbGljYXRp
b25DYWNoZVJlc291cmNlOjpGYWxsYmFjazsKIAotICAgICAgICByZXNvdXJjZXMtPmFwcGVuZChS
ZXNvdXJjZUluZm8ocmVzb3VyY2UtPnVybCgpLCBpc01hc3RlciwgaXNNYW5pZmVzdCwgaXNGYWxs
YmFjaywgaXNGb3JlaWduLCBpc0V4cGxpY2l0LCByZXNvdXJjZS0+ZXN0aW1hdGVkU2l6ZUluU3Rv
cmFnZSgpKSk7CisgICAgICAgIHJlc3VsdC51bmNoZWNrZWRBcHBlbmQoeyByZXNvdXJjZS51cmwo
KSwgaXNNYXN0ZXIsIGlzTWFuaWZlc3QsIGlzRmFsbGJhY2ssIGlzRm9yZWlnbiwgaXNFeHBsaWNp
dCwgcmVzb3VyY2UuZXN0aW1hdGVkU2l6ZUluU3RvcmFnZSgpIH0pOwogICAgIH0KKworICAgIHJl
dHVybiByZXN1bHQ7CiB9CiAKIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8gQXBwbGlj
YXRpb25DYWNoZUhvc3Q6OmFwcGxpY2F0aW9uQ2FjaGVJbmZvKCkKIHsKLSAgICBBcHBsaWNhdGlv
bkNhY2hlKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKTsKKyAgICBhdXRvKiBjYWNoZSA9IGFw
cGxpY2F0aW9uQ2FjaGUoKTsKICAgICBpZiAoIWNhY2hlIHx8ICFjYWNoZS0+aXNDb21wbGV0ZSgp
KQotICAgICAgICByZXR1cm4gQ2FjaGVJbmZvKFVSTCgpLCAwLCAwLCAwKTsKKyAgICAgICAgcmV0
dXJuIHsgeyB9LCAwLCAwLCAwIH07CiAKICAgICAvLyBGSVhNRTogQWRkICJDcmVhdGlvbiBUaW1l
IiBhbmQgIlVwZGF0ZSBUaW1lIiB0byBBcHBsaWNhdGlvbiBDYWNoZXMuCi0gICAgcmV0dXJuIENh
Y2hlSW5mbyhjYWNoZS0+bWFuaWZlc3RSZXNvdXJjZSgpLT51cmwoKSwgMCwgMCwgY2FjaGUtPmVz
dGltYXRlZFNpemVJblN0b3JhZ2UoKSk7CisgICAgcmV0dXJuIHsgY2FjaGUtPm1hbmlmZXN0UmVz
b3VyY2UoKS0+dXJsKCksIDAsIDAsIGNhY2hlLT5lc3RpbWF0ZWRTaXplSW5TdG9yYWdlKCkgfTsK
IH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6ZGlzcGF0Y2hET01FdmVudChFdmVudElE
IGlkLCBpbnQgdG90YWwsIGludCBkb25lKQorc3RhdGljIFJlZjxFdmVudD4gY3JlYXRlQXBwbGlj
YXRpb25DYWNoZUV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBpbnQgdG90YWws
IGludCBkb25lKQogewotICAgIGlmIChtX2RvbUFwcGxpY2F0aW9uQ2FjaGUpIHsKLSAgICAgICAg
Y29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUgPSBET01BcHBsaWNhdGlvbkNhY2hlOjp0b0V2
ZW50VHlwZShpZCk7Ci0gICAgICAgIFJlZlB0cjxFdmVudD4gZXZlbnQ7Ci0gICAgICAgIGlmIChp
ZCA9PSBQUk9HUkVTU19FVkVOVCkKLSAgICAgICAgICAgIGV2ZW50ID0gUHJvZ3Jlc3NFdmVudDo6
Y3JlYXRlKGV2ZW50VHlwZSwgdHJ1ZSwgZG9uZSwgdG90YWwpOwotICAgICAgICBlbHNlCi0gICAg
ICAgICAgICBldmVudCA9IEV2ZW50OjpjcmVhdGUoZXZlbnRUeXBlLCBmYWxzZSwgZmFsc2UpOwot
ICAgICAgICBtX2RvbUFwcGxpY2F0aW9uQ2FjaGUtPmRpc3BhdGNoRXZlbnQoKmV2ZW50KTsKLSAg
ICB9CisgICAgaWYgKGV2ZW50VHlwZSA9PSBldmVudE5hbWVzKCkucHJvZ3Jlc3NFdmVudCkKKyAg
ICAgICAgcmV0dXJuIFByb2dyZXNzRXZlbnQ6OmNyZWF0ZShldmVudFR5cGUsIHRydWUsIGRvbmUs
IHRvdGFsKTsKKyAgICByZXR1cm4gRXZlbnQ6OmNyZWF0ZShldmVudFR5cGUsIGZhbHNlLCBmYWxz
ZSk7Cit9CisKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmRpc3BhdGNoRE9NRXZlbnQoY29u
c3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGludCB0b3RhbCwgaW50IGRvbmUpCit7CisgICAg
aWYgKCFtX2RvbUFwcGxpY2F0aW9uQ2FjaGUpCisgICAgICAgIHJldHVybjsKKyAgICBtX2RvbUFw
cGxpY2F0aW9uQ2FjaGUtPmRpc3BhdGNoRXZlbnQoY3JlYXRlQXBwbGljYXRpb25DYWNoZUV2ZW50
KGV2ZW50VHlwZSwgdG90YWwsIGRvbmUpKTsKIH0KIAogdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9z
dDo6c2V0Q2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKEFwcGxpY2F0aW9uQ2FjaGVHcm91
cCogZ3JvdXApCkBAIC0zNjcsMjUgKzM4MSwyNCBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0
OjpzZXRDYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoQXBwbGljYXRpb25DYWNoZUdybwog
ICAgIG1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwID0gZ3JvdXA7CiB9CiAgICAgCi12
b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpzZXRBcHBsaWNhdGlvbkNhY2hlKFBhc3NSZWZQdHI8
QXBwbGljYXRpb25DYWNoZT4gYXBwbGljYXRpb25DYWNoZSkKK3ZvaWQgQXBwbGljYXRpb25DYWNo
ZUhvc3Q6OnNldEFwcGxpY2F0aW9uQ2FjaGUoUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+JiYgYXBw
bGljYXRpb25DYWNoZSkKIHsKICAgICBpZiAobV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3Jv
dXApIHsKICAgICAgICAgQVNTRVJUKCFtX2FwcGxpY2F0aW9uQ2FjaGUpOwogICAgICAgICBtX2Nh
bmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCA9IG51bGxwdHI7CiAgICAgfQotCi0gICAgbV9h
cHBsaWNhdGlvbkNhY2hlID0gYXBwbGljYXRpb25DYWNoZTsKKyAgICBtX2FwcGxpY2F0aW9uQ2Fj
aGUgPSBXVEZNb3ZlKGFwcGxpY2F0aW9uQ2FjaGUpOwogfQogCiBib29sIEFwcGxpY2F0aW9uQ2Fj
aGVIb3N0OjpzaG91bGRMb2FkUmVzb3VyY2VGcm9tQXBwbGljYXRpb25DYWNoZShjb25zdCBSZXNv
dXJjZVJlcXVlc3QmIG9yaWdpbmFsUmVxdWVzdCwgQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiYg
cmVzb3VyY2UpCiB7Ci0gICAgQXBwbGljYXRpb25DYWNoZSogY2FjaGUgPSBhcHBsaWNhdGlvbkNh
Y2hlKCk7CisgICAgYXV0byogY2FjaGUgPSBhcHBsaWNhdGlvbkNhY2hlKCk7CiAgICAgaWYgKCFj
YWNoZSB8fCAhY2FjaGUtPmlzQ29tcGxldGUoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAg
ICAgUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3Qob3JpZ2luYWxSZXF1ZXN0KTsKLSAgICBpZiAoRnJh
bWUqIGxvYWRlckZyYW1lID0gbV9kb2N1bWVudExvYWRlci5mcmFtZSgpKSB7Ci0gICAgICAgIGlm
IChEb2N1bWVudCogZG9jdW1lbnQgPSBsb2FkZXJGcmFtZS0+ZG9jdW1lbnQoKSkKKyAgICBpZiAo
YXV0byogbG9hZGVyRnJhbWUgPSBtX2RvY3VtZW50TG9hZGVyLmZyYW1lKCkpIHsKKyAgICAgICAg
aWYgKGF1dG8qIGRvY3VtZW50ID0gbG9hZGVyRnJhbWUtPmRvY3VtZW50KCkpCiAgICAgICAgICAg
ICBkb2N1bWVudC0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPnVwZ3JhZGVJbnNlY3VyZVJlcXVl
c3RJZk5lZWRlZChyZXF1ZXN0LCBDb250ZW50U2VjdXJpdHlQb2xpY3k6Okluc2VjdXJlUmVxdWVz
dFR5cGU6OkxvYWQpOwogICAgIH0KICAgICAKQEAgLTQzMCw3ICs0NDMsNiBAQCBib29sIEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0OjpnZXRBcHBsaWNhdGlvbkNhY2hlRmFsbGJhY2tSZXNvdXJjZShjb25z
dCBSZXNvdXJjZVJlcQogCiAgICAgcmVzb3VyY2UgPSBjYWNoZS0+cmVzb3VyY2VGb3JVUkwoZmFs
bGJhY2tVUkwpOwogICAgIEFTU0VSVChyZXNvdXJjZSk7Ci0KICAgICByZXR1cm4gdHJ1ZTsKIH0K
IApAQCAtNDQ0LDMwICs0NTYsMjcgQEAgYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c2NoZWR1
bGVMb2FkRmFsbGJhY2tSZXNvdXJjZUZyb21BcHBsaWNhdGlvbkNhY2hlKFJlc28KICAgICAgICAg
cmV0dXJuIGZhbHNlOwogCiAgICAgbG9hZGVyLT53aWxsU3dpdGNoVG9TdWJzdGl0dXRlUmVzb3Vy
Y2UoKTsKLQogICAgIG1fZG9jdW1lbnRMb2FkZXIuc2NoZWR1bGVTdWJzdGl0dXRlUmVzb3VyY2VM
b2FkKCpsb2FkZXIsICpyZXNvdXJjZSk7Ci0KICAgICByZXR1cm4gdHJ1ZTsKIH0KIAogQXBwbGlj
YXRpb25DYWNoZUhvc3Q6OlN0YXR1cyBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c3RhdHVzKCkgY29u
c3QKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKTsg
ICAgCisgICAgYXV0byogY2FjaGUgPSBhcHBsaWNhdGlvbkNhY2hlKCk7CiAgICAgaWYgKCFjYWNo
ZSkKICAgICAgICAgcmV0dXJuIFVOQ0FDSEVEOwogCiAgICAgc3dpdGNoIChjYWNoZS0+Z3JvdXAo
KS0+dXBkYXRlU3RhdHVzKCkpIHsKLSAgICAgICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
OkNoZWNraW5nOgotICAgICAgICAgICAgcmV0dXJuIENIRUNLSU5HOwotICAgICAgICBjYXNlIEFw
cGxpY2F0aW9uQ2FjaGVHcm91cDo6RG93bmxvYWRpbmc6Ci0gICAgICAgICAgICByZXR1cm4gRE9X
TkxPQURJTkc7Ci0gICAgICAgIGNhc2UgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpJZGxlOiB7Ci0g
ICAgICAgICAgICBpZiAoY2FjaGUtPmdyb3VwKCktPmlzT2Jzb2xldGUoKSkKLSAgICAgICAgICAg
ICAgICByZXR1cm4gT0JTT0xFVEU7Ci0gICAgICAgICAgICBpZiAoY2FjaGUgIT0gY2FjaGUtPmdy
b3VwKCktPm5ld2VzdENhY2hlKCkpCi0gICAgICAgICAgICAgICAgcmV0dXJuIFVQREFURVJFQURZ
OwotICAgICAgICAgICAgcmV0dXJuIElETEU7Ci0gICAgICAgIH0KKyAgICBjYXNlIEFwcGxpY2F0
aW9uQ2FjaGVHcm91cDo6Q2hlY2tpbmc6CisgICAgICAgIHJldHVybiBDSEVDS0lORzsKKyAgICBj
YXNlIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6RG93bmxvYWRpbmc6CisgICAgICAgIHJldHVybiBE
T1dOTE9BRElORzsKKyAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6SWRsZToKKyAgICAg
ICAgaWYgKGNhY2hlLT5ncm91cCgpLT5pc09ic29sZXRlKCkpCisgICAgICAgICAgICByZXR1cm4g
T0JTT0xFVEU7CisgICAgICAgIGlmIChjYWNoZSAhPSBjYWNoZS0+Z3JvdXAoKS0+bmV3ZXN0Q2Fj
aGUoKSkKKyAgICAgICAgICAgIHJldHVybiBVUERBVEVSRUFEWTsKKyAgICAgICAgcmV0dXJuIElE
TEU7CiAgICAgfQogCiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CkBAIC00NzYsMjcgKzQ4NSwz
MCBAQCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6U3RhdHVzIEFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojpz
dGF0dXMoKSBjb25zdAogCiBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojp1cGRhdGUoKQogewot
ICAgIEFwcGxpY2F0aW9uQ2FjaGUqIGNhY2hlID0gYXBwbGljYXRpb25DYWNoZSgpOworICAgIGF1
dG8qIGNhY2hlID0gYXBwbGljYXRpb25DYWNoZSgpOwogICAgIGlmICghY2FjaGUpCiAgICAgICAg
IHJldHVybiBmYWxzZTsKLSAgICBjYWNoZS0+Z3JvdXAoKS0+dXBkYXRlKG1fZG9jdW1lbnRMb2Fk
ZXIuZnJhbWUoKSwgQXBwbGljYXRpb25DYWNoZVVwZGF0ZVdpdGhvdXRCcm93c2luZ0NvbnRleHQp
OworICAgIGF1dG8qIGZyYW1lID0gbV9kb2N1bWVudExvYWRlci5mcmFtZSgpOworICAgIGlmICgh
ZnJhbWUpCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICBjYWNoZS0+Z3JvdXAoKS0+dXBkYXRl
KCpmcmFtZSwgQXBwbGljYXRpb25DYWNoZVVwZGF0ZVdpdGhvdXRCcm93c2luZ0NvbnRleHQpOwog
ICAgIHJldHVybiB0cnVlOwogfQogCiBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojpzd2FwQ2Fj
aGUoKQogewotICAgIEFwcGxpY2F0aW9uQ2FjaGUqIGNhY2hlID0gYXBwbGljYXRpb25DYWNoZSgp
OworICAgIGF1dG8qIGNhY2hlID0gYXBwbGljYXRpb25DYWNoZSgpOwogICAgIGlmICghY2FjaGUp
CiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIC8vIElmIHRoZSBncm91cCBvZiBhcHBsaWNh
dGlvbiBjYWNoZXMgdG8gd2hpY2ggY2FjaGUgYmVsb25ncyBoYXMgdGhlIGxpZmVjeWNsZSBzdGF0
dXMgb2Jzb2xldGUsIHVuYXNzb2NpYXRlIGRvY3VtZW50IGZyb20gY2FjaGUuCiAgICAgaWYgKGNh
Y2hlLT5ncm91cCgpLT5pc09ic29sZXRlKCkpIHsKLSAgICAgICAgY2FjaGUtPmdyb3VwKCktPmRp
c2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKCZtX2RvY3VtZW50TG9hZGVyKTsKKyAgICAgICAgY2Fj
aGUtPmdyb3VwKCktPmRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKG1fZG9jdW1lbnRMb2FkZXIp
OwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAKICAgICAvLyBJZiB0aGVyZSBpcyBubyBu
ZXdlciBjYWNoZSwgcmFpc2UgYW4gSU5WQUxJRF9TVEFURV9FUlIgZXhjZXB0aW9uLgotICAgIEFw
cGxpY2F0aW9uQ2FjaGUqIG5ld2VzdENhY2hlID0gY2FjaGUtPmdyb3VwKCktPm5ld2VzdENhY2hl
KCk7CisgICAgYXV0byogbmV3ZXN0Q2FjaGUgPSBjYWNoZS0+Z3JvdXAoKS0+bmV3ZXN0Q2FjaGUo
KTsKICAgICBpZiAoY2FjaGUgPT0gbmV3ZXN0Q2FjaGUpCiAgICAgICAgIHJldHVybiBmYWxzZTsK
ICAgICAKQEAgLTUwOCwxNCArNTIwLDEzIEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZUhvc3Q6OnN3
YXBDYWNoZSgpCiAKIHZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmFib3J0KCkKIHsKLSAgICBB
cHBsaWNhdGlvbkNhY2hlR3JvdXAqIGNhY2hlR3JvdXAgPSBjYW5kaWRhdGVBcHBsaWNhdGlvbkNh
Y2hlR3JvdXAoKTsKLSAgICBpZiAoY2FjaGVHcm91cCkKLSAgICAgICAgY2FjaGVHcm91cC0+YWJv
cnQobV9kb2N1bWVudExvYWRlci5mcmFtZSgpKTsKLSAgICBlbHNlIHsKLSAgICAgICAgQXBwbGlj
YXRpb25DYWNoZSogY2FjaGUgPSBhcHBsaWNhdGlvbkNhY2hlKCk7Ci0gICAgICAgIGlmIChjYWNo
ZSkKLSAgICAgICAgICAgIGNhY2hlLT5ncm91cCgpLT5hYm9ydChtX2RvY3VtZW50TG9hZGVyLmZy
YW1lKCkpOwotICAgIH0KKyAgICBhdXRvKiBmcmFtZSA9IG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUo
KTsKKyAgICBpZiAoIWZyYW1lKQorICAgICAgICByZXR1cm47CisgICAgaWYgKGF1dG8qIGNhY2hl
R3JvdXAgPSBjYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKSkKKyAgICAgICAgY2FjaGVH
cm91cC0+YWJvcnQoKmZyYW1lKTsKKyAgICBlbHNlIGlmIChhdXRvKiBjYWNoZSA9IGFwcGxpY2F0
aW9uQ2FjaGUoKSkKKyAgICAgICAgY2FjaGUtPmdyb3VwKCktPmFib3J0KCpmcmFtZSk7CiB9CiAK
IGJvb2wgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmlzQXBwbGljYXRpb25DYWNoZUVuYWJsZWQoKQpA
QCAtNTI1LDE1ICs1MzYsMTIgQEAgYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6aXNBcHBsaWNh
dGlvbkNhY2hlRW5hYmxlZCgpCiAKIGJvb2wgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmlzQXBwbGlj
YXRpb25DYWNoZUJsb2NrZWRGb3JSZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVz
dCkKIHsKLSAgICBGcmFtZSogZnJhbWUgPSBtX2RvY3VtZW50TG9hZGVyLmZyYW1lKCk7CisgICAg
YXV0byogZnJhbWUgPSBtX2RvY3VtZW50TG9hZGVyLmZyYW1lKCk7CiAgICAgaWYgKCFmcmFtZSkK
ICAgICAgICAgcmV0dXJuIGZhbHNlOwotCiAgICAgaWYgKGZyYW1lLT5pc01haW5GcmFtZSgpKQog
ICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICBSZWY8U2VjdXJpdHlPcmlnaW4+IG9yaWdpbihT
ZWN1cml0eU9yaWdpbjo6Y3JlYXRlKHJlcXVlc3QudXJsKCkpKTsKLSAgICByZXR1cm4gIW9yaWdp
bi5nZXQoKS5jYW5BY2Nlc3NBcHBsaWNhdGlvbkNhY2hlKGZyYW1lLT5kb2N1bWVudCgpLT50b3BP
cmlnaW4oKSk7CisgICAgcmV0dXJuICFTZWN1cml0eU9yaWdpbjo6Y3JlYXRlKHJlcXVlc3QudXJs
KCkpLT5jYW5BY2Nlc3NBcHBsaWNhdGlvbkNhY2hlKGZyYW1lLT5kb2N1bWVudCgpLT50b3BPcmln
aW4oKSk7CiB9CiAKIH0gIC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUhvc3QuaCBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlSG9zdC5oCmluZGV4IGM5NWIy
M2IyODc0ODI3OTYwNzU4ZjMyODA2N2IxZGZiYWViODc4YmEuLjJiZmRjNjJmOTM5OGQwMGY0Y2Ix
ZTkxYjg2ZDdmMzZjODUzYjc3ODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9h
cHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlSG9zdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlSG9zdC5oCkBAIC0xLDYgKzEsNyBAQAogLyoKLSAq
IENvcHlyaWdodCAoYykgMjAwOSwgR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0g
KiAKKyAqIENvcHlyaWdodCAoYykgMjAwOSwgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqIENvcHlyaWdodCAoYykgMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCiAgKiBtZXQ6CkBAIC0zMCwxNjUg
KzMxLDEzNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2luY2x1ZGUgIlBsYXRmb3JtRXhwb3J0TWFj
cm9zLmgiCiAjaW5jbHVkZSAiVVJMLmgiCiAjaW5jbHVkZSA8d3RmL0RlcXVlLmg+Ci0jaW5jbHVk
ZSA8d3RmL1Bhc3NSZWZQdHIuaD4KLSNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAjaW5jbHVkZSA8
d3RmL1ZlY3Rvci5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7Ci0gICAgY2xhc3MgRE9NQXBwbGlj
YXRpb25DYWNoZTsKLSAgICBjbGFzcyBEb2N1bWVudExvYWRlcjsKLSAgICBjbGFzcyBGcmFtZTsK
LSAgICBjbGFzcyBSZXNvdXJjZUVycm9yOwotICAgIGNsYXNzIFJlc291cmNlTG9hZGVyOwotICAg
IGNsYXNzIFJlc291cmNlUmVxdWVzdDsKLSAgICBjbGFzcyBSZXNvdXJjZVJlc3BvbnNlOwotICAg
IGNsYXNzIFNoYXJlZEJ1ZmZlcjsKLSAgICBjbGFzcyBTdWJzdGl0dXRlRGF0YTsKLSAgICBjbGFz
cyBBcHBsaWNhdGlvbkNhY2hlOwotICAgIGNsYXNzIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDsKLSAg
ICBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U7Ci0gICAgY2xhc3MgQXBwbGljYXRpb25D
YWNoZVN0b3JhZ2U7Ci0KLSAgICBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlSG9zdCB7Ci0gICAgICAg
IFdURl9NQUtFX05PTkNPUFlBQkxFKEFwcGxpY2F0aW9uQ2FjaGVIb3N0KTsgV1RGX01BS0VfRkFT
VF9BTExPQ0FURUQ7Ci0gICAgcHVibGljOgotICAgICAgICAvLyBUaGUgU3RhdHVzIG51bWVyaWMg
dmFsdWVzIGFyZSBzcGVjaWZpZWQgaW4gdGhlIEhUTUw1IHNwZWMuCi0gICAgICAgIGVudW0gU3Rh
dHVzIHsKLSAgICAgICAgICAgIFVOQ0FDSEVEID0gMCwKLSAgICAgICAgICAgIElETEUgPSAxLAot
ICAgICAgICAgICAgQ0hFQ0tJTkcgPSAyLAotICAgICAgICAgICAgRE9XTkxPQURJTkcgPSAzLAot
ICAgICAgICAgICAgVVBEQVRFUkVBRFkgPSA0LAotICAgICAgICAgICAgT0JTT0xFVEUgPSA1Ci0g
ICAgICAgIH07Ci0KLSAgICAgICAgZW51bSBFdmVudElEIHsKLSAgICAgICAgICAgIENIRUNLSU5H
X0VWRU5UID0gMCwKLSAgICAgICAgICAgIEVSUk9SX0VWRU5ULAotICAgICAgICAgICAgTk9VUERB
VEVfRVZFTlQsCi0gICAgICAgICAgICBET1dOTE9BRElOR19FVkVOVCwKLSAgICAgICAgICAgIFBS
T0dSRVNTX0VWRU5ULAotICAgICAgICAgICAgVVBEQVRFUkVBRFlfRVZFTlQsCi0gICAgICAgICAg
ICBDQUNIRURfRVZFTlQsCi0gICAgICAgICAgICBPQlNPTEVURV9FVkVOVCAgLy8gTXVzdCByZW1h
aW4gdGhlIGxhc3QgdmFsdWUsIHRoaXMgaXMgdXNlZCB0byBzaXplIGFycmF5cy4KLSAgICAgICAg
fTsKLQotICAgICAgICBzdHJ1Y3QgQ2FjaGVJbmZvIHsKLSAgICAgICAgICAgIENhY2hlSW5mbyhj
b25zdCBVUkwmIG1hbmlmZXN0LCBkb3VibGUgY3JlYXRpb25UaW1lLCBkb3VibGUgdXBkYXRlVGlt
ZSwgbG9uZyBsb25nIHNpemUpCi0gICAgICAgICAgICAgICAgOiBtX21hbmlmZXN0KG1hbmlmZXN0
KQotICAgICAgICAgICAgICAgICwgbV9jcmVhdGlvblRpbWUoY3JlYXRpb25UaW1lKQotICAgICAg
ICAgICAgICAgICwgbV91cGRhdGVUaW1lKHVwZGF0ZVRpbWUpCi0gICAgICAgICAgICAgICAgLCBt
X3NpemUoc2l6ZSkgeyB9Ci0gICAgICAgICAgICBVUkwgbV9tYW5pZmVzdDsKLSAgICAgICAgICAg
IGRvdWJsZSBtX2NyZWF0aW9uVGltZTsKLSAgICAgICAgICAgIGRvdWJsZSBtX3VwZGF0ZVRpbWU7
Ci0gICAgICAgICAgICBsb25nIGxvbmcgbV9zaXplOwotICAgICAgICB9OwotCi0gICAgICAgIHN0
cnVjdCBSZXNvdXJjZUluZm8gewotICAgICAgICAgICAgUmVzb3VyY2VJbmZvKGNvbnN0IFVSTCYg
cmVzb3VyY2UsIGJvb2wgaXNNYXN0ZXIsIGJvb2wgaXNNYW5pZmVzdCwgYm9vbCBpc0ZhbGxiYWNr
LCBib29sIGlzRm9yZWlnbiwgYm9vbCBpc0V4cGxpY2l0LCBsb25nIGxvbmcgc2l6ZSkKLSAgICAg
ICAgICAgICAgICA6IG1fcmVzb3VyY2UocmVzb3VyY2UpCi0gICAgICAgICAgICAgICAgLCBtX2lz
TWFzdGVyKGlzTWFzdGVyKQotICAgICAgICAgICAgICAgICwgbV9pc01hbmlmZXN0KGlzTWFuaWZl
c3QpCi0gICAgICAgICAgICAgICAgLCBtX2lzRmFsbGJhY2soaXNGYWxsYmFjaykKLSAgICAgICAg
ICAgICAgICAsIG1faXNGb3JlaWduKGlzRm9yZWlnbikKLSAgICAgICAgICAgICAgICAsIG1faXNF
eHBsaWNpdChpc0V4cGxpY2l0KQotICAgICAgICAgICAgICAgICwgbV9zaXplKHNpemUpIHsgfQot
ICAgICAgICAgICAgVVJMIG1fcmVzb3VyY2U7Ci0gICAgICAgICAgICBib29sIG1faXNNYXN0ZXI7
Ci0gICAgICAgICAgICBib29sIG1faXNNYW5pZmVzdDsKLSAgICAgICAgICAgIGJvb2wgbV9pc0Zh
bGxiYWNrOwotICAgICAgICAgICAgYm9vbCBtX2lzRm9yZWlnbjsKLSAgICAgICAgICAgIGJvb2wg
bV9pc0V4cGxpY2l0OwotICAgICAgICAgICAgbG9uZyBsb25nIG1fc2l6ZTsKLSAgICAgICAgfTsK
LQotICAgICAgICB0eXBlZGVmIFZlY3RvcjxSZXNvdXJjZUluZm8+IFJlc291cmNlSW5mb0xpc3Q7
Ci0KLSAgICAgICAgZXhwbGljaXQgQXBwbGljYXRpb25DYWNoZUhvc3QoRG9jdW1lbnRMb2FkZXIm
KTsKLSAgICAgICAgfkFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7Ci0KLSAgICAgICAgc3RhdGljIFVS
TCBjcmVhdGVGaWxlVVJMKGNvbnN0IFN0cmluZyYpOwotCi0gICAgICAgIHZvaWQgc2VsZWN0Q2Fj
aGVXaXRob3V0TWFuaWZlc3QoKTsKLSAgICAgICAgdm9pZCBzZWxlY3RDYWNoZVdpdGhNYW5pZmVz
dChjb25zdCBVUkwmIG1hbmlmZXN0VVJMKTsKLQotICAgICAgICB2b2lkIG1heWJlTG9hZE1haW5S
ZXNvdXJjZShSZXNvdXJjZVJlcXVlc3QmLCBTdWJzdGl0dXRlRGF0YSYpOwotICAgICAgICB2b2lk
IG1heWJlTG9hZE1haW5SZXNvdXJjZUZvclJlZGlyZWN0KFJlc291cmNlUmVxdWVzdCYsIFN1YnN0
aXR1dGVEYXRhJik7Ci0gICAgICAgIGJvb2wgbWF5YmVMb2FkRmFsbGJhY2tGb3JNYWluUmVzcG9u
c2UoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwotICAg
ICAgICB2b2lkIG1haW5SZXNvdXJjZURhdGFSZWNlaXZlZChjb25zdCBjaGFyKiBkYXRhLCBpbnQg
bGVuZ3RoLCBsb25nIGxvbmcgZW5jb2RlZERhdGFMZW5ndGgsIGJvb2wgYWxsQXRPbmNlKTsKLSAg
ICAgICAgdm9pZCBmaW5pc2hlZExvYWRpbmdNYWluUmVzb3VyY2UoKTsKLSAgICAgICAgdm9pZCBm
YWlsZWRMb2FkaW5nTWFpblJlc291cmNlKCk7Ci0KLSAgICAgICAgV0VCQ09SRV9FWFBPUlQgYm9v
bCBtYXliZUxvYWRSZXNvdXJjZShSZXNvdXJjZUxvYWRlciYsIGNvbnN0IFJlc291cmNlUmVxdWVz
dCYsIGNvbnN0IFVSTCYgb3JpZ2luYWxVUkwpOwotICAgICAgICBXRUJDT1JFX0VYUE9SVCBib29s
IG1heWJlTG9hZEZhbGxiYWNrRm9yUmVkaXJlY3QoUmVzb3VyY2VMb2FkZXIqLCBSZXNvdXJjZVJl
cXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7Ci0gICAgICAgIFdFQkNPUkVfRVhQT1JU
IGJvb2wgbWF5YmVMb2FkRmFsbGJhY2tGb3JSZXNwb25zZShSZXNvdXJjZUxvYWRlciosIGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICAgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBtYXliZUxv
YWRGYWxsYmFja0ZvckVycm9yKFJlc291cmNlTG9hZGVyKiwgY29uc3QgUmVzb3VyY2VFcnJvciYp
OwotCi0gICAgICAgIGJvb2wgbWF5YmVMb2FkU3luY2hyb25vdXNseShSZXNvdXJjZVJlcXVlc3Qm
LCBSZXNvdXJjZUVycm9yJiwgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+
Jik7Ci0gICAgICAgIHZvaWQgbWF5YmVMb2FkRmFsbGJhY2tTeW5jaHJvbm91c2x5KGNvbnN0IFJl
c291cmNlUmVxdWVzdCYsIFJlc291cmNlRXJyb3ImLCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRy
PFNoYXJlZEJ1ZmZlcj4mKTsKLQotICAgICAgICBib29sIGNhbkNhY2hlSW5QYWdlQ2FjaGUoKTsK
LQotICAgICAgICBTdGF0dXMgc3RhdHVzKCkgY29uc3Q7ICAKLSAgICAgICAgYm9vbCB1cGRhdGUo
KTsKLSAgICAgICAgYm9vbCBzd2FwQ2FjaGUoKTsKLSAgICAgICAgdm9pZCBhYm9ydCgpOwotCi0g
ICAgICAgIHZvaWQgc2V0RE9NQXBwbGljYXRpb25DYWNoZShET01BcHBsaWNhdGlvbkNhY2hlKik7
Ci0gICAgICAgIHZvaWQgbm90aWZ5RE9NQXBwbGljYXRpb25DYWNoZShFdmVudElELCBpbnQgcHJv
Z3Jlc3NUb3RhbCwgaW50IHByb2dyZXNzRG9uZSk7Ci0KLSAgICAgICAgdm9pZCBzdG9wTG9hZGlu
Z0luRnJhbWUoRnJhbWUqKTsKLQotICAgICAgICB2b2lkIHN0b3BEZWZlcnJpbmdFdmVudHMoKTsg
Ly8gQWxzbyByYWlzZXMgdGhlIGV2ZW50cyB0aGF0IGhhdmUgYmVlbiBxdWV1ZWQgdXAuCi0KLSAg
ICAgICAgdm9pZCBmaWxsUmVzb3VyY2VMaXN0KFJlc291cmNlSW5mb0xpc3QqKTsKLSAgICAgICAg
Q2FjaGVJbmZvIGFwcGxpY2F0aW9uQ2FjaGVJbmZvKCk7Ci0KLSAgICAgICAgYm9vbCBzaG91bGRM
b2FkUmVzb3VyY2VGcm9tQXBwbGljYXRpb25DYWNoZShjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBB
cHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqJik7Ci0gICAgICAgIGJvb2wgZ2V0QXBwbGljYXRpb25D
YWNoZUZhbGxiYWNrUmVzb3VyY2UoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgQXBwbGljYXRpb25D
YWNoZVJlc291cmNlKiYsIEFwcGxpY2F0aW9uQ2FjaGUqID0gbnVsbHB0cik7Ci0KLSAgICBwcml2
YXRlOgotICAgICAgICBib29sIGlzQXBwbGljYXRpb25DYWNoZUVuYWJsZWQoKTsKLSAgICAgICAg
Ym9vbCBpc0FwcGxpY2F0aW9uQ2FjaGVCbG9ja2VkRm9yUmVxdWVzdChjb25zdCBSZXNvdXJjZVJl
cXVlc3QmKTsKLQotICAgICAgICBzdHJ1Y3QgRGVmZXJyZWRFdmVudCB7Ci0gICAgICAgICAgICBF
dmVudElEIGV2ZW50SUQ7Ci0gICAgICAgICAgICBpbnQgcHJvZ3Jlc3NUb3RhbDsKLSAgICAgICAg
ICAgIGludCBwcm9ncmVzc0RvbmU7Ci0gICAgICAgICAgICBEZWZlcnJlZEV2ZW50KEV2ZW50SUQg
aWQsIGludCB0b3RhbCwgaW50IGRvbmUpIDogZXZlbnRJRChpZCksIHByb2dyZXNzVG90YWwodG90
YWwpLCBwcm9ncmVzc0RvbmUoZG9uZSkgeyB9Ci0gICAgICAgIH07Ci0KLSAgICAgICAgRE9NQXBw
bGljYXRpb25DYWNoZSogbV9kb21BcHBsaWNhdGlvbkNhY2hlOwotICAgICAgICBEb2N1bWVudExv
YWRlciYgbV9kb2N1bWVudExvYWRlcjsKLSAgICAgICAgYm9vbCBtX2RlZmVyc0V2ZW50czsgLy8g
RXZlbnRzIGFyZSBkZWZlcnJlZCB1bnRpbCBhZnRlciBkb2N1bWVudCBvbmxvYWQuCi0gICAgICAg
IFZlY3RvcjxEZWZlcnJlZEV2ZW50PiBtX2RlZmVycmVkRXZlbnRzOwotCi0gICAgICAgIHZvaWQg
ZGlzcGF0Y2hET01FdmVudChFdmVudElELCBpbnQgcHJvZ3Jlc3NUb3RhbCwgaW50IHByb2dyZXNz
RG9uZSk7Ci0KLSAgICAgICAgZnJpZW5kIGNsYXNzIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDsKLSAg
ICAgICAgZnJpZW5kIGNsYXNzIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOwotCi0gICAgICAgIGJv
b2wgc2NoZWR1bGVMb2FkRmFsbGJhY2tSZXNvdXJjZUZyb21BcHBsaWNhdGlvbkNhY2hlKFJlc291
cmNlTG9hZGVyKiwgQXBwbGljYXRpb25DYWNoZSogPSBudWxscHRyKTsKLSAgICAgICAgdm9pZCBz
ZXRDYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBn
cm91cCk7Ci0gICAgICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogY2FuZGlkYXRlQXBwbGljYXRp
b25DYWNoZUdyb3VwKCkgY29uc3QgeyByZXR1cm4gbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hl
R3JvdXA7IH0KLSAgICAgICAgdm9pZCBzZXRBcHBsaWNhdGlvbkNhY2hlKFBhc3NSZWZQdHI8QXBw
bGljYXRpb25DYWNoZT4gYXBwbGljYXRpb25DYWNoZSk7Ci0gICAgICAgIEFwcGxpY2F0aW9uQ2Fj
aGUqIGFwcGxpY2F0aW9uQ2FjaGUoKSBjb25zdCB7IHJldHVybiBtX2FwcGxpY2F0aW9uQ2FjaGUu
Z2V0KCk7IH0KLSAgICAgICAgQXBwbGljYXRpb25DYWNoZSogbWFpblJlc291cmNlQXBwbGljYXRp
b25DYWNoZSgpIGNvbnN0IHsgcmV0dXJuIG1fbWFpblJlc291cmNlQXBwbGljYXRpb25DYWNoZS5n
ZXQoKTsgfQotICAgICAgICBib29sIG1heWJlTG9hZEZhbGxiYWNrRm9yTWFpbkVycm9yKGNvbnN0
IFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKLQotICAgICAgICAvLyBU
aGUgYXBwbGljYXRpb24gY2FjaGUgdGhhdCB0aGUgZG9jdW1lbnQgbG9hZGVyIGlzIGFzc29jaWF0
ZWQgd2l0aCAoaWYgYW55KS4KLSAgICAgICAgUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+IG1fYXBw
bGljYXRpb25DYWNoZTsKLQotICAgICAgICAvLyBCZWZvcmUgYW4gYXBwbGljYXRpb24gY2FjaGUg
aGFzIGZpbmlzaGVkIGxvYWRpbmcsIHRoaXMgd2lsbCBiZSB0aGUgY2FuZGlkYXRlIGFwcGxpY2F0
aW9uCi0gICAgICAgIC8vIGdyb3VwIHRoYXQgdGhlIGRvY3VtZW50IGxvYWRlciBpcyBhc3NvY2lh
dGVkIHdpdGguCi0gICAgICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogbV9jYW5kaWRhdGVBcHBs
aWNhdGlvbkNhY2hlR3JvdXA7Ci0KLSAgICAgICAgLy8gVGhpcyBpcyB0aGUgYXBwbGljYXRpb24g
Y2FjaGUgdGhlIG1haW4gcmVzb3VyY2Ugd2FzIGxvYWRlZCBmcm9tIChpZiBhbnkpLgotICAgICAg
ICBSZWZQdHI8QXBwbGljYXRpb25DYWNoZT4gbV9tYWluUmVzb3VyY2VBcHBsaWNhdGlvbkNhY2hl
OworCitjbGFzcyBBcHBsaWNhdGlvbkNhY2hlOworY2xhc3MgQXBwbGljYXRpb25DYWNoZUdyb3Vw
OworY2xhc3MgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOworY2xhc3MgQXBwbGljYXRpb25DYWNo
ZVN0b3JhZ2U7CitjbGFzcyBET01BcHBsaWNhdGlvbkNhY2hlOworY2xhc3MgRG9jdW1lbnRMb2Fk
ZXI7CitjbGFzcyBGcmFtZTsKK2NsYXNzIFJlc291cmNlRXJyb3I7CitjbGFzcyBSZXNvdXJjZUxv
YWRlcjsKK2NsYXNzIFJlc291cmNlUmVxdWVzdDsKK2NsYXNzIFJlc291cmNlUmVzcG9uc2U7Citj
bGFzcyBTaGFyZWRCdWZmZXI7CitjbGFzcyBTdWJzdGl0dXRlRGF0YTsKKworY2xhc3MgQXBwbGlj
YXRpb25DYWNoZUhvc3QgeworICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKEFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KTsgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CitwdWJsaWM6CisgICAgLy8gVGhlIFN0
YXR1cyBudW1lcmljIHZhbHVlcyBhcmUgc3BlY2lmaWVkIGluIHRoZSBIVE1MNSBzcGVjLgorICAg
IGVudW0gU3RhdHVzIHsKKyAgICAgICAgVU5DQUNIRUQgPSAwLAorICAgICAgICBJRExFID0gMSwK
KyAgICAgICAgQ0hFQ0tJTkcgPSAyLAorICAgICAgICBET1dOTE9BRElORyA9IDMsCisgICAgICAg
IFVQREFURVJFQURZID0gNCwKKyAgICAgICAgT0JTT0xFVEUgPSA1CisgICAgfTsKKworICAgIHN0
cnVjdCBDYWNoZUluZm8geworICAgICAgICBVUkwgbWFuaWZlc3Q7CisgICAgICAgIGRvdWJsZSBj
cmVhdGlvblRpbWU7CisgICAgICAgIGRvdWJsZSB1cGRhdGVUaW1lOworICAgICAgICBsb25nIGxv
bmcgc2l6ZTsKKyAgICB9OworCisgICAgc3RydWN0IFJlc291cmNlSW5mbyB7CisgICAgICAgIFVS
TCByZXNvdXJjZTsKKyAgICAgICAgYm9vbCBpc01hc3RlcjsKKyAgICAgICAgYm9vbCBpc01hbmlm
ZXN0OworICAgICAgICBib29sIGlzRmFsbGJhY2s7CisgICAgICAgIGJvb2wgaXNGb3JlaWduOwor
ICAgICAgICBib29sIGlzRXhwbGljaXQ7CisgICAgICAgIGxvbmcgbG9uZyBzaXplOworICAgIH07
CisKKyAgICBleHBsaWNpdCBBcHBsaWNhdGlvbkNhY2hlSG9zdChEb2N1bWVudExvYWRlciYpOwor
ICAgIH5BcHBsaWNhdGlvbkNhY2hlSG9zdCgpOworCisgICAgc3RhdGljIFVSTCBjcmVhdGVGaWxl
VVJMKGNvbnN0IFN0cmluZyYpOworCisgICAgdm9pZCBzZWxlY3RDYWNoZVdpdGhvdXRNYW5pZmVz
dCgpOworICAgIHZvaWQgc2VsZWN0Q2FjaGVXaXRoTWFuaWZlc3QoY29uc3QgVVJMJiBtYW5pZmVz
dFVSTCk7CisKKyAgICB2b2lkIG1heWJlTG9hZE1haW5SZXNvdXJjZShSZXNvdXJjZVJlcXVlc3Qm
LCBTdWJzdGl0dXRlRGF0YSYpOworICAgIHZvaWQgbWF5YmVMb2FkTWFpblJlc291cmNlRm9yUmVk
aXJlY3QoUmVzb3VyY2VSZXF1ZXN0JiwgU3Vic3RpdHV0ZURhdGEmKTsKKyAgICBib29sIG1heWJl
TG9hZEZhbGxiYWNrRm9yTWFpblJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmKTsKKyAgICB2b2lkIG1haW5SZXNvdXJjZURhdGFSZWNlaXZlZChj
b25zdCBjaGFyKiBkYXRhLCBpbnQgbGVuZ3RoLCBsb25nIGxvbmcgZW5jb2RlZERhdGFMZW5ndGgs
IGJvb2wgYWxsQXRPbmNlKTsKKyAgICB2b2lkIGZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZSgp
OworICAgIHZvaWQgZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZSgpOworCisgICAgV0VCQ09SRV9F
WFBPUlQgYm9vbCBtYXliZUxvYWRSZXNvdXJjZShSZXNvdXJjZUxvYWRlciYsIGNvbnN0IFJlc291
cmNlUmVxdWVzdCYsIGNvbnN0IFVSTCYgb3JpZ2luYWxVUkwpOworICAgIFdFQkNPUkVfRVhQT1JU
IGJvb2wgbWF5YmVMb2FkRmFsbGJhY2tGb3JSZWRpcmVjdChSZXNvdXJjZUxvYWRlciosIFJlc291
cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKKyAgICBXRUJDT1JFX0VYUE9S
VCBib29sIG1heWJlTG9hZEZhbGxiYWNrRm9yUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXIqLCBjb25z
dCBSZXNvdXJjZVJlc3BvbnNlJik7CisgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBtYXliZUxvYWRG
YWxsYmFja0ZvckVycm9yKFJlc291cmNlTG9hZGVyKiwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwor
CisgICAgYm9vbCBtYXliZUxvYWRTeW5jaHJvbm91c2x5KFJlc291cmNlUmVxdWVzdCYsIFJlc291
cmNlRXJyb3ImLCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4mKTsKKyAg
ICB2b2lkIG1heWJlTG9hZEZhbGxiYWNrU3luY2hyb25vdXNseShjb25zdCBSZXNvdXJjZVJlcXVl
c3QmLCBSZXNvdXJjZUVycm9yJiwgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZm
ZXI+Jik7CisKKyAgICBib29sIGNhbkNhY2hlSW5QYWdlQ2FjaGUoKTsKKworICAgIFN0YXR1cyBz
dGF0dXMoKSBjb25zdDsKKyAgICBib29sIHVwZGF0ZSgpOworICAgIGJvb2wgc3dhcENhY2hlKCk7
CisgICAgdm9pZCBhYm9ydCgpOworCisgICAgdm9pZCBzZXRET01BcHBsaWNhdGlvbkNhY2hlKERP
TUFwcGxpY2F0aW9uQ2FjaGUqKTsKKyAgICB2b2lkIG5vdGlmeURPTUFwcGxpY2F0aW9uQ2FjaGUo
Y29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGludCBwcm9ncmVzc1RvdGFsLCBpbnQgcHJv
Z3Jlc3NEb25lKTsKKworICAgIHZvaWQgc3RvcExvYWRpbmdJbkZyYW1lKEZyYW1lJik7CisKKyAg
ICB2b2lkIHN0b3BEZWZlcnJpbmdFdmVudHMoKTsgLy8gQWxzbyByYWlzZXMgdGhlIGV2ZW50cyB0
aGF0IGhhdmUgYmVlbiBxdWV1ZWQgdXAuCisKKyAgICBWZWN0b3I8UmVzb3VyY2VJbmZvPiByZXNv
dXJjZUxpc3QoKTsKKyAgICBDYWNoZUluZm8gYXBwbGljYXRpb25DYWNoZUluZm8oKTsKKworICAg
IGJvb2wgc2hvdWxkTG9hZFJlc291cmNlRnJvbUFwcGxpY2F0aW9uQ2FjaGUoY29uc3QgUmVzb3Vy
Y2VSZXF1ZXN0JiwgQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiYpOworICAgIGJvb2wgZ2V0QXBw
bGljYXRpb25DYWNoZUZhbGxiYWNrUmVzb3VyY2UoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgQXBw
bGljYXRpb25DYWNoZVJlc291cmNlKiYsIEFwcGxpY2F0aW9uQ2FjaGUqID0gbnVsbHB0cik7CisK
K3ByaXZhdGU6CisgICAgZnJpZW5kIGNsYXNzIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDsKKworICAg
IHN0cnVjdCBEZWZlcnJlZEV2ZW50IHsKKyAgICAgICAgQXRvbWljU3RyaW5nIGV2ZW50VHlwZTsK
KyAgICAgICAgaW50IHByb2dyZXNzVG90YWw7CisgICAgICAgIGludCBwcm9ncmVzc0RvbmU7CiAg
ICAgfTsKIAorICAgIGJvb2wgaXNBcHBsaWNhdGlvbkNhY2hlRW5hYmxlZCgpOworICAgIGJvb2wg
aXNBcHBsaWNhdGlvbkNhY2hlQmxvY2tlZEZvclJlcXVlc3QoY29uc3QgUmVzb3VyY2VSZXF1ZXN0
Jik7CisKKyAgICB2b2lkIGRpc3BhdGNoRE9NRXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiBldmVu
dFR5cGUsIGludCBwcm9ncmVzc1RvdGFsLCBpbnQgcHJvZ3Jlc3NEb25lKTsKKworICAgIGJvb2wg
c2NoZWR1bGVMb2FkRmFsbGJhY2tSZXNvdXJjZUZyb21BcHBsaWNhdGlvbkNhY2hlKFJlc291cmNl
TG9hZGVyKiwgQXBwbGljYXRpb25DYWNoZSogPSBudWxscHRyKTsKKyAgICB2b2lkIHNldENhbmRp
ZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cChBcHBsaWNhdGlvbkNhY2hlR3JvdXAqKTsKKyAgICBB
cHBsaWNhdGlvbkNhY2hlR3JvdXAqIGNhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCgpIGNv
bnN0IHsgcmV0dXJuIG1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwOyB9CisgICAgdm9p
ZCBzZXRBcHBsaWNhdGlvbkNhY2hlKFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hlPiYmKTsKKyAgICBB
cHBsaWNhdGlvbkNhY2hlKiBhcHBsaWNhdGlvbkNhY2hlKCkgY29uc3QgeyByZXR1cm4gbV9hcHBs
aWNhdGlvbkNhY2hlLmdldCgpOyB9CisgICAgQXBwbGljYXRpb25DYWNoZSogbWFpblJlc291cmNl
QXBwbGljYXRpb25DYWNoZSgpIGNvbnN0IHsgcmV0dXJuIG1fbWFpblJlc291cmNlQXBwbGljYXRp
b25DYWNoZS5nZXQoKTsgfQorICAgIGJvb2wgbWF5YmVMb2FkRmFsbGJhY2tGb3JNYWluRXJyb3Io
Y29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VFcnJvciYpOworCisgICAgRE9N
QXBwbGljYXRpb25DYWNoZSogbV9kb21BcHBsaWNhdGlvbkNhY2hlIHsgbnVsbHB0ciB9OworICAg
IERvY3VtZW50TG9hZGVyJiBtX2RvY3VtZW50TG9hZGVyOworCisgICAgYm9vbCBtX2RlZmVyc0V2
ZW50cyB7IHRydWUgfTsgLy8gRXZlbnRzIGFyZSBkZWZlcnJlZCB1bnRpbCBhZnRlciBkb2N1bWVu
dCBvbmxvYWQuCisgICAgVmVjdG9yPERlZmVycmVkRXZlbnQ+IG1fZGVmZXJyZWRFdmVudHM7CisK
KyAgICAvLyBUaGUgYXBwbGljYXRpb24gY2FjaGUgdGhhdCB0aGUgZG9jdW1lbnQgbG9hZGVyIGlz
IGFzc29jaWF0ZWQgd2l0aCAoaWYgYW55KS4KKyAgICBSZWZQdHI8QXBwbGljYXRpb25DYWNoZT4g
bV9hcHBsaWNhdGlvbkNhY2hlOworCisgICAgLy8gQmVmb3JlIGFuIGFwcGxpY2F0aW9uIGNhY2hl
IGhhcyBmaW5pc2hlZCBsb2FkaW5nLCB0aGlzIHdpbGwgYmUgdGhlIGNhbmRpZGF0ZSBhcHBsaWNh
dGlvbgorICAgIC8vIGdyb3VwIHRoYXQgdGhlIGRvY3VtZW50IGxvYWRlciBpcyBhc3NvY2lhdGVk
IHdpdGguCisgICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBtX2NhbmRpZGF0ZUFwcGxpY2F0aW9u
Q2FjaGVHcm91cCB7IG51bGxwdHIgfTsKKworICAgIC8vIFRoaXMgaXMgdGhlIGFwcGxpY2F0aW9u
IGNhY2hlIHRoZSBtYWluIHJlc291cmNlIHdhcyBsb2FkZWQgZnJvbSAoaWYgYW55KS4KKyAgICBS
ZWZQdHI8QXBwbGljYXRpb25DYWNoZT4gbV9tYWluUmVzb3VyY2VBcHBsaWNhdGlvbkNhY2hlOwor
fTsKKwogfSAgLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UuY3BwCmluZGV4IGRm
MTAzZTRhMmI4ZWI0NTU4M2UwZWE5MzY1N2ZkZTZjODYxMDQ5MDYuLmY0ZmE5NWI1MTdlYzc3OTE2
MjRmYzBmMjVhNjU2YjBjMDk0NDE0NzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlLmNwcApAQCAtMTI2LDM2
ICsxMjYsMzIgQEAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBBcHBsaWNhdGlvbkNhY2hlU3RvcmFn
ZTo6bG9hZENhY2hlR3JvdXAoY29uc3QgVVJMJiBtYW5pZmUKICAgICBpZiAoIWNhY2hlKQogICAg
ICAgICByZXR1cm4gbnVsbHB0cjsKICAgICAgICAgCi0gICAgQXBwbGljYXRpb25DYWNoZUdyb3Vw
KiBncm91cCA9IG5ldyBBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKnRoaXMsIG1hbmlmZXN0VVJMKTsK
LSAgICAgIAotICAgIGdyb3VwLT5zZXRTdG9yYWdlSUQoc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHN0
YXRlbWVudC5nZXRDb2x1bW5JbnQ2NCgwKSkpOwotICAgIGdyb3VwLT5zZXROZXdlc3RDYWNoZShX
VEZNb3ZlKGNhY2hlKSk7Ci0KLSAgICByZXR1cm4gZ3JvdXA7CisgICAgYXV0byYgZ3JvdXAgPSAq
bmV3IEFwcGxpY2F0aW9uQ2FjaGVHcm91cCgqdGhpcywgbWFuaWZlc3RVUkwpOworICAgIGdyb3Vw
LnNldFN0b3JhZ2VJRChzdGF0aWNfY2FzdDx1bnNpZ25lZD4oc3RhdGVtZW50LmdldENvbHVtbklu
dDY0KDApKSk7CisgICAgZ3JvdXAuc2V0TmV3ZXN0Q2FjaGUoY2FjaGUucmVsZWFzZU5vbk51bGwo
KSk7CisgICAgcmV0dXJuICZncm91cDsKIH0gICAgCiAKIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCog
QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmZpbmRPckNyZWF0ZUNhY2hlR3JvdXAoY29uc3QgVVJM
JiBtYW5pZmVzdFVSTCkKIHsKICAgICBBU1NFUlQoIW1hbmlmZXN0VVJMLmhhc0ZyYWdtZW50SWRl
bnRpZmllcigpKTsKIAotICAgIENhY2hlR3JvdXBNYXA6OkFkZFJlc3VsdCByZXN1bHQgPSBtX2Nh
Y2hlc0luTWVtb3J5LmFkZChtYW5pZmVzdFVSTCwgbnVsbHB0cik7Ci0gICAgCisgICAgYXV0byBy
ZXN1bHQgPSBtX2NhY2hlc0luTWVtb3J5LmFkZChtYW5pZmVzdFVSTCwgbnVsbHB0cik7CiAgICAg
aWYgKCFyZXN1bHQuaXNOZXdFbnRyeSkgewogICAgICAgICBBU1NFUlQocmVzdWx0Lml0ZXJhdG9y
LT52YWx1ZSk7CiAgICAgICAgIHJldHVybiByZXN1bHQuaXRlcmF0b3ItPnZhbHVlOwogICAgIH0K
IAogICAgIC8vIExvb2sgdXAgdGhlIGdyb3VwIGluIHRoZSBkYXRhYmFzZQotICAgIEFwcGxpY2F0
aW9uQ2FjaGVHcm91cCogZ3JvdXAgPSBsb2FkQ2FjaGVHcm91cChtYW5pZmVzdFVSTCk7CisgICAg
YXV0byogZ3JvdXAgPSBsb2FkQ2FjaGVHcm91cChtYW5pZmVzdFVSTCk7CiAgICAgCiAgICAgLy8g
SWYgdGhlIGdyb3VwIHdhcyBub3QgZm91bmQgd2UgbmVlZCB0byBjcmVhdGUgaXQKICAgICBpZiAo
IWdyb3VwKSB7CiAgICAgICAgIGdyb3VwID0gbmV3IEFwcGxpY2F0aW9uQ2FjaGVHcm91cCgqdGhp
cywgbWFuaWZlc3RVUkwpOwogICAgICAgICBtX2NhY2hlSG9zdFNldC5hZGQodXJsSG9zdEhhc2go
bWFuaWZlc3RVUkwpKTsKICAgICB9Ci0gICAgCisKICAgICByZXN1bHQuaXRlcmF0b3ItPnZhbHVl
ID0gZ3JvdXA7Ci0gICAgCiAgICAgcmV0dXJuIGdyb3VwOwogfQogCkBAIC0yNDQsMjAgKzI0MCwx
OCBAQCBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpjYWNo
ZUdyb3VwRm9yVVJMKGNvbnN0IFVSTCYgdXJsKQogICAgICAgICBpZiAoIWNhY2hlKQogICAgICAg
ICAgICAgY29udGludWU7CiAKLSAgICAgICAgQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiByZXNv
dXJjZSA9IGNhY2hlLT5yZXNvdXJjZUZvclVSTCh1cmwpOworICAgICAgICBhdXRvKiByZXNvdXJj
ZSA9IGNhY2hlLT5yZXNvdXJjZUZvclVSTCh1cmwpOwogICAgICAgICBpZiAoIXJlc291cmNlKQog
ICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIGlmIChyZXNvdXJjZS0+dHlwZSgpICYgQXBw
bGljYXRpb25DYWNoZVJlc291cmNlOjpGb3JlaWduKQogICAgICAgICAgICAgY29udGludWU7CiAK
LSAgICAgICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCA9IG5ldyBBcHBsaWNhdGlvbkNh
Y2hlR3JvdXAoKnRoaXMsIG1hbmlmZXN0VVJMKTsKLSAgICAgICAgCi0gICAgICAgIGdyb3VwLT5z
ZXRTdG9yYWdlSUQoc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHN0YXRlbWVudC5nZXRDb2x1bW5JbnQ2
NCgwKSkpOwotICAgICAgICBncm91cC0+c2V0TmV3ZXN0Q2FjaGUoV1RGTW92ZShjYWNoZSkpOwot
ICAgICAgICAKLSAgICAgICAgbV9jYWNoZXNJbk1lbW9yeS5zZXQoZ3JvdXAtPm1hbmlmZXN0VVJM
KCksIGdyb3VwKTsKLSAgICAgICAgCi0gICAgICAgIHJldHVybiBncm91cDsKKyAgICAgICAgYXV0
byYgZ3JvdXAgPSAqbmV3IEFwcGxpY2F0aW9uQ2FjaGVHcm91cCgqdGhpcywgbWFuaWZlc3RVUkwp
OworICAgICAgICBncm91cC5zZXRTdG9yYWdlSUQoc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHN0YXRl
bWVudC5nZXRDb2x1bW5JbnQ2NCgwKSkpOworICAgICAgICBncm91cC5zZXROZXdlc3RDYWNoZShj
YWNoZS5yZWxlYXNlTm9uTnVsbCgpKTsKKyAgICAgICAgbV9jYWNoZXNJbk1lbW9yeS5zZXQoZ3Jv
dXAubWFuaWZlc3RVUkwoKSwgJmdyb3VwKTsKKworICAgICAgICByZXR1cm4gJmdyb3VwOwogICAg
IH0KIAogICAgIGlmIChyZXN1bHQgIT0gU1FMSVRFX0RPTkUpCkBAIC0zMjAsMTQgKzMxNCwxMyBA
QCBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpmYWxsYmFj
a0NhY2hlR3JvdXBGb3JVUkwoY29uc3QgVQogICAgICAgICBpZiAoY2FjaGUtPnJlc291cmNlRm9y
VVJMKGZhbGxiYWNrVVJMKS0+dHlwZSgpICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpGb3Jl
aWduKQogICAgICAgICAgICAgY29udGludWU7CiAKLSAgICAgICAgQXBwbGljYXRpb25DYWNoZUdy
b3VwKiBncm91cCA9IG5ldyBBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKnRoaXMsIG1hbmlmZXN0VVJM
KTsKLSAgICAgICAgCi0gICAgICAgIGdyb3VwLT5zZXRTdG9yYWdlSUQoc3RhdGljX2Nhc3Q8dW5z
aWduZWQ+KHN0YXRlbWVudC5nZXRDb2x1bW5JbnQ2NCgwKSkpOwotICAgICAgICBncm91cC0+c2V0
TmV3ZXN0Q2FjaGUoV1RGTW92ZShjYWNoZSkpOwotICAgICAgICAKLSAgICAgICAgbV9jYWNoZXNJ
bk1lbW9yeS5zZXQoZ3JvdXAtPm1hbmlmZXN0VVJMKCksIGdyb3VwKTsKLSAgICAgICAgCi0gICAg
ICAgIHJldHVybiBncm91cDsKKyAgICAgICAgYXV0byYgZ3JvdXAgPSAqbmV3IEFwcGxpY2F0aW9u
Q2FjaGVHcm91cCgqdGhpcywgbWFuaWZlc3RVUkwpOworICAgICAgICBncm91cC5zZXRTdG9yYWdl
SUQoc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHN0YXRlbWVudC5nZXRDb2x1bW5JbnQ2NCgwKSkpOwor
ICAgICAgICBncm91cC5zZXROZXdlc3RDYWNoZShjYWNoZS5yZWxlYXNlTm9uTnVsbCgpKTsKKwor
ICAgICAgICBtX2NhY2hlc0luTWVtb3J5LnNldChncm91cC5tYW5pZmVzdFVSTCgpLCAmZ3JvdXAp
OworCisgICAgICAgIHJldHVybiAmZ3JvdXA7CiAgICAgfQogCiAgICAgaWYgKHJlc3VsdCAhPSBT
UUxJVEVfRE9ORSkKQEAgLTMzNiwzMyArMzI5LDMzIEBAIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCog
QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmZhbGxiYWNrQ2FjaGVHcm91cEZvclVSTChjb25zdCBV
CiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6
OmNhY2hlR3JvdXBEZXN0cm95ZWQoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCkKK3ZvaWQg
QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmNhY2hlR3JvdXBEZXN0cm95ZWQoQXBwbGljYXRpb25D
YWNoZUdyb3VwJiBncm91cCkKIHsKLSAgICBpZiAoZ3JvdXAtPmlzT2Jzb2xldGUoKSkgewotICAg
ICAgICBBU1NFUlQoIWdyb3VwLT5zdG9yYWdlSUQoKSk7Ci0gICAgICAgIEFTU0VSVChtX2NhY2hl
c0luTWVtb3J5LmdldChncm91cC0+bWFuaWZlc3RVUkwoKSkgIT0gZ3JvdXApOworICAgIGlmIChn
cm91cC5pc09ic29sZXRlKCkpIHsKKyAgICAgICAgQVNTRVJUKCFncm91cC5zdG9yYWdlSUQoKSk7
CisgICAgICAgIEFTU0VSVChtX2NhY2hlc0luTWVtb3J5LmdldChncm91cC5tYW5pZmVzdFVSTCgp
KSAhPSAmZ3JvdXApOwogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgQVNTRVJUKG1fY2Fj
aGVzSW5NZW1vcnkuZ2V0KGdyb3VwLT5tYW5pZmVzdFVSTCgpKSA9PSBncm91cCk7CisgICAgQVNT
RVJUKG1fY2FjaGVzSW5NZW1vcnkuZ2V0KGdyb3VwLm1hbmlmZXN0VVJMKCkpID09ICZncm91cCk7
CiAKLSAgICBtX2NhY2hlc0luTWVtb3J5LnJlbW92ZShncm91cC0+bWFuaWZlc3RVUkwoKSk7Cisg
ICAgbV9jYWNoZXNJbk1lbW9yeS5yZW1vdmUoZ3JvdXAubWFuaWZlc3RVUkwoKSk7CiAgICAgCiAg
ICAgLy8gSWYgdGhlIGNhY2hlIGdyb3VwIGlzIGhhbGYtY3JlYXRlZCwgd2UgZG9uJ3Qgd2FudCBp
dCBpbiB0aGUgc2F2ZWQgc2V0IChhcyBpdCBpcyBub3Qgc3RvcmVkIGluIGRhdGFiYXNlKS4KLSAg
ICBpZiAoIWdyb3VwLT5zdG9yYWdlSUQoKSkKLSAgICAgICAgbV9jYWNoZUhvc3RTZXQucmVtb3Zl
KHVybEhvc3RIYXNoKGdyb3VwLT5tYW5pZmVzdFVSTCgpKSk7CisgICAgaWYgKCFncm91cC5zdG9y
YWdlSUQoKSkKKyAgICAgICAgbV9jYWNoZUhvc3RTZXQucmVtb3ZlKHVybEhvc3RIYXNoKGdyb3Vw
Lm1hbmlmZXN0VVJMKCkpKTsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6Y2Fj
aGVHcm91cE1hZGVPYnNvbGV0ZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwKQordm9pZCBB
cHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6Y2FjaGVHcm91cE1hZGVPYnNvbGV0ZShBcHBsaWNhdGlv
bkNhY2hlR3JvdXAmIGdyb3VwKQogewotICAgIEFTU0VSVChtX2NhY2hlc0luTWVtb3J5LmdldChn
cm91cC0+bWFuaWZlc3RVUkwoKSkgPT0gZ3JvdXApOwotICAgIEFTU0VSVChtX2NhY2hlSG9zdFNl
dC5jb250YWlucyh1cmxIb3N0SGFzaChncm91cC0+bWFuaWZlc3RVUkwoKSkpKTsKKyAgICBBU1NF
UlQobV9jYWNoZXNJbk1lbW9yeS5nZXQoZ3JvdXAubWFuaWZlc3RVUkwoKSkgPT0gJmdyb3VwKTsK
KyAgICBBU1NFUlQobV9jYWNoZUhvc3RTZXQuY29udGFpbnModXJsSG9zdEhhc2goZ3JvdXAubWFu
aWZlc3RVUkwoKSkpKTsKIAotICAgIGlmIChBcHBsaWNhdGlvbkNhY2hlKiBuZXdlc3RDYWNoZSA9
IGdyb3VwLT5uZXdlc3RDYWNoZSgpKQorICAgIGlmIChhdXRvKiBuZXdlc3RDYWNoZSA9IGdyb3Vw
Lm5ld2VzdENhY2hlKCkpCiAgICAgICAgIHJlbW92ZShuZXdlc3RDYWNoZSk7CiAKLSAgICBtX2Nh
Y2hlc0luTWVtb3J5LnJlbW92ZShncm91cC0+bWFuaWZlc3RVUkwoKSk7Ci0gICAgbV9jYWNoZUhv
c3RTZXQucmVtb3ZlKHVybEhvc3RIYXNoKGdyb3VwLT5tYW5pZmVzdFVSTCgpKSk7CisgICAgbV9j
YWNoZXNJbk1lbW9yeS5yZW1vdmUoZ3JvdXAubWFuaWZlc3RVUkwoKSk7CisgICAgbV9jYWNoZUhv
c3RTZXQucmVtb3ZlKHVybEhvc3RIYXNoKGdyb3VwLm1hbmlmZXN0VVJMKCkpKTsKIH0KIAogY29u
c3QgU3RyaW5nJiBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6Y2FjaGVEaXJlY3RvcnkoKSBjb25z
dApAQCAtOTk2LDcgKzk4OSw3IEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmNoZWNr
T3JpZ2luUXVvdGEoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCwgQXBwCiAgICAgcmV0dXJu
IHRydWU7CiB9CiAKLWJvb2wgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OnN0b3JlTmV3ZXN0Q2Fj
aGUoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCwgQXBwbGljYXRpb25DYWNoZSogb2xkQ2Fj
aGUsIEZhaWx1cmVSZWFzb24mIGZhaWx1cmVSZWFzb24pCitib29sIEFwcGxpY2F0aW9uQ2FjaGVT
dG9yYWdlOjpzdG9yZU5ld2VzdENhY2hlKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCYgZ3JvdXAsIEFw
cGxpY2F0aW9uQ2FjaGUqIG9sZENhY2hlLCBGYWlsdXJlUmVhc29uJiBmYWlsdXJlUmVhc29uKQog
ewogICAgIG9wZW5EYXRhYmFzZSh0cnVlKTsKIApAQCAtMTAxMiwyNCArMTAwNSwyNCBAQCBib29s
IEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpzdG9yZU5ld2VzdENhY2hlKEFwcGxpY2F0aW9uQ2Fj
aGVHcm91cCogZ3JvdXAsIEFwcAogCiAgICAgLy8gQ2hlY2sgaWYgdGhpcyB3b3VsZCByZWFjaCB0
aGUgcGVyLW9yaWdpbiBxdW90YS4KICAgICBpbnQ2NF90IHRvdGFsU3BhY2VOZWVkZWRJZ25vcmVk
OwotICAgIGlmICghY2hlY2tPcmlnaW5RdW90YShncm91cCwgb2xkQ2FjaGUsIGdyb3VwLT5uZXdl
c3RDYWNoZSgpLCB0b3RhbFNwYWNlTmVlZGVkSWdub3JlZCkpIHsKKyAgICBpZiAoIWNoZWNrT3Jp
Z2luUXVvdGEoJmdyb3VwLCBvbGRDYWNoZSwgZ3JvdXAubmV3ZXN0Q2FjaGUoKSwgdG90YWxTcGFj
ZU5lZWRlZElnbm9yZWQpKSB7CiAgICAgICAgIGZhaWx1cmVSZWFzb24gPSBPcmlnaW5RdW90YVJl
YWNoZWQ7CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9CiAKICAgICBHcm91cFN0b3JhZ2VJ
REpvdXJuYWwgZ3JvdXBTdG9yYWdlSURKb3VybmFsOwotICAgIGlmICghZ3JvdXAtPnN0b3JhZ2VJ
RCgpKSB7CisgICAgaWYgKCFncm91cC5zdG9yYWdlSUQoKSkgewogICAgICAgICAvLyBTdG9yZSB0
aGUgZ3JvdXAKLSAgICAgICAgaWYgKCFzdG9yZShncm91cCwgJmdyb3VwU3RvcmFnZUlESm91cm5h
bCkpIHsKKyAgICAgICAgaWYgKCFzdG9yZSgmZ3JvdXAsICZncm91cFN0b3JhZ2VJREpvdXJuYWwp
KSB7CiAgICAgICAgICAgICBjaGVja0Zvck1heFNpemVSZWFjaGVkKCk7CiAgICAgICAgICAgICBm
YWlsdXJlUmVhc29uID0gaXNNYXhpbXVtU2l6ZVJlYWNoZWQoKSA/IFRvdGFsUXVvdGFSZWFjaGVk
IDogRGlza09yT3BlcmF0aW9uRmFpbHVyZTsKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAg
ICAgICAgfQogICAgIH0KICAgICAKLSAgICBBU1NFUlQoZ3JvdXAtPm5ld2VzdENhY2hlKCkpOwot
ICAgIEFTU0VSVCghZ3JvdXAtPmlzT2Jzb2xldGUoKSk7Ci0gICAgQVNTRVJUKCFncm91cC0+bmV3
ZXN0Q2FjaGUoKS0+c3RvcmFnZUlEKCkpOworICAgIEFTU0VSVChncm91cC5uZXdlc3RDYWNoZSgp
KTsKKyAgICBBU1NFUlQoIWdyb3VwLmlzT2Jzb2xldGUoKSk7CisgICAgQVNTRVJUKCFncm91cC5u
ZXdlc3RDYWNoZSgpLT5zdG9yYWdlSUQoKSk7CiAgICAgCiAgICAgLy8gTG9nIHRoZSBzdG9yYWdl
SUQgY2hhbmdlcyB0byB0aGUgaW4tbWVtb3J5IHJlc291cmNlIG9iamVjdHMuIFRoZSBqb3VybmFs
CiAgICAgLy8gb2JqZWN0IHdpbGwgcm9sbCB0aGVtIGJhY2sgYXV0b21hdGljYWxseSBpbiBjYXNl
IGEgZGF0YWJhc2Ugb3BlcmF0aW9uCkBAIC0xMDM3LDcgKzEwMzAsNyBAQCBib29sIEFwcGxpY2F0
aW9uQ2FjaGVTdG9yYWdlOjpzdG9yZU5ld2VzdENhY2hlKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCog
Z3JvdXAsIEFwcAogICAgIFJlc291cmNlU3RvcmFnZUlESm91cm5hbCByZXNvdXJjZVN0b3JhZ2VJ
REpvdXJuYWw7CiAKICAgICAvLyBTdG9yZSB0aGUgbmV3ZXN0IGNhY2hlCi0gICAgaWYgKCFzdG9y
ZShncm91cC0+bmV3ZXN0Q2FjaGUoKSwgJnJlc291cmNlU3RvcmFnZUlESm91cm5hbCkpIHsKKyAg
ICBpZiAoIXN0b3JlKGdyb3VwLm5ld2VzdENhY2hlKCksICZyZXNvdXJjZVN0b3JhZ2VJREpvdXJu
YWwpKSB7CiAgICAgICAgIGNoZWNrRm9yTWF4U2l6ZVJlYWNoZWQoKTsKICAgICAgICAgZmFpbHVy
ZVJlYXNvbiA9IGlzTWF4aW11bVNpemVSZWFjaGVkKCkgPyBUb3RhbFF1b3RhUmVhY2hlZCA6IERp
c2tPck9wZXJhdGlvbkZhaWx1cmU7CiAgICAgICAgIHJldHVybiBmYWxzZTsKQEAgLTEwNTEsOCAr
MTA0NCw4IEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OnN0b3JlTmV3ZXN0Q2FjaGUo
QXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCwgQXBwCiAgICAgICAgIHJldHVybiBmYWxzZTsK
ICAgICB9CiAgICAgCi0gICAgc3RhdGVtZW50LmJpbmRJbnQ2NCgxLCBncm91cC0+bmV3ZXN0Q2Fj
aGUoKS0+c3RvcmFnZUlEKCkpOwotICAgIHN0YXRlbWVudC5iaW5kSW50NjQoMiwgZ3JvdXAtPnN0
b3JhZ2VJRCgpKTsKKyAgICBzdGF0ZW1lbnQuYmluZEludDY0KDEsIGdyb3VwLm5ld2VzdENhY2hl
KCktPnN0b3JhZ2VJRCgpKTsKKyAgICBzdGF0ZW1lbnQuYmluZEludDY0KDIsIGdyb3VwLnN0b3Jh
Z2VJRCgpKTsKICAgICAKICAgICBpZiAoIWV4ZWN1dGVTdGF0ZW1lbnQoc3RhdGVtZW50KSkgewog
ICAgICAgICBmYWlsdXJlUmVhc29uID0gRGlza09yT3BlcmF0aW9uRmFpbHVyZTsKQEAgLTEwNjUs
MjIgKzEwNTgsMjQgQEAgYm9vbCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6c3RvcmVOZXdlc3RD
YWNoZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwLCBBcHAKICAgICByZXR1cm4gdHJ1ZTsK
IH0KIAotYm9vbCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6c3RvcmVOZXdlc3RDYWNoZShBcHBs
aWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwKQorYm9vbCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6
c3RvcmVOZXdlc3RDYWNoZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAmIGdyb3VwKQogewogICAgIC8v
IElnbm9yZSB0aGUgcmVhc29uIGZvciBmYWlsaW5nLCBqdXN0IGF0dGVtcHQgdGhlIHN0b3JlLgog
ICAgIEZhaWx1cmVSZWFzb24gaWdub3JlZEZhaWx1cmVSZWFzb247Ci0gICAgcmV0dXJuIHN0b3Jl
TmV3ZXN0Q2FjaGUoZ3JvdXAsIDAsIGlnbm9yZWRGYWlsdXJlUmVhc29uKTsKKyAgICByZXR1cm4g
c3RvcmVOZXdlc3RDYWNoZShncm91cCwgbnVsbHB0ciwgaWdub3JlZEZhaWx1cmVSZWFzb24pOwog
fQogCi10ZW1wbGF0ZSA8dHlwZW5hbWUgQ2hhcmFjdGVyVHlwZT4KLXN0YXRpYyBpbmxpbmUgdm9p
ZCBwYXJzZUhlYWRlcihjb25zdCBDaGFyYWN0ZXJUeXBlKiBoZWFkZXIsIHNpemVfdCBoZWFkZXJM
ZW5ndGgsIFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordGVtcGxhdGU8dHlwZW5hbWUgQ2hh
cmFjdGVyVHlwZT4KK3N0YXRpYyBpbmxpbmUgdm9pZCBwYXJzZUhlYWRlcihjb25zdCBDaGFyYWN0
ZXJUeXBlKiBoZWFkZXIsIHVuc2lnbmVkIGhlYWRlckxlbmd0aCwgUmVzb3VyY2VSZXNwb25zZSYg
cmVzcG9uc2UpCiB7Ci0gICAgc2l6ZV90IHBvcyA9IGZpbmQoaGVhZGVyLCBoZWFkZXJMZW5ndGgs
ICc6Jyk7Ci0gICAgQVNTRVJUKHBvcyAhPSBub3RGb3VuZCk7Ci0gICAgCi0gICAgU3RyaW5nIGhl
YWRlck5hbWUgPSBBdG9taWNTdHJpbmcoaGVhZGVyLCBwb3MpOwotICAgIFN0cmluZyBoZWFkZXJW
YWx1ZSA9IFN0cmluZyhoZWFkZXIgKyBwb3MgKyAxLCBoZWFkZXJMZW5ndGggLSBwb3MgLSAxKTsK
LSAgICAKKyAgICBBU1NFUlQoZmluZChoZWFkZXIsIGhlYWRlckxlbmd0aCwgJzonKSAhPSBub3RG
b3VuZCk7CisgICAgdW5zaWduZWQgY29sb25Qb3NpdGlvbiA9IGZpbmQoaGVhZGVyLCBoZWFkZXJM
ZW5ndGgsICc6Jyk7CisKKyAgICAvLyBTYXZlIG1lbW9yeSBieSBwdXR0aW5nIHRoZSBoZWFkZXIg
bmFtZXMgaW50byBhdG9taWMgc3RyaW5ncyBzbyBlYWNoIGlzIHN0b3JlZCBvbmx5IG9uY2UsCisg
ICAgLy8gZXZlbiB0aG91Z2ggdGhlIHNldEhUVFBIZWFkZXJGaWVsZCBmdW5jdGlvbiBkb2VzIG5v
dCByZXF1aXJlIGFuIGF0b21pYyBzdHJpbmcuCisgICAgQXRvbWljU3RyaW5nIGhlYWRlck5hbWUg
eyBoZWFkZXIsIGNvbG9uUG9zaXRpb24gfTsKKyAgICBTdHJpbmcgaGVhZGVyVmFsdWUgeyBoZWFk
ZXIgKyBjb2xvblBvc2l0aW9uICsgMSwgaGVhZGVyTGVuZ3RoIC0gY29sb25Qb3NpdGlvbiAtIDEg
fTsKKwogICAgIHJlc3BvbnNlLnNldEhUVFBIZWFkZXJGaWVsZChoZWFkZXJOYW1lLCBoZWFkZXJW
YWx1ZSk7CiB9CiAKQEAgLTExMDcsNyArMTEwMiw3IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBwYXJz
ZUhlYWRlcnMoY29uc3QgU3RyaW5nJiBoZWFkZXJzLCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25z
CiAgICAgfQogfQogICAgIAotUGFzc1JlZlB0cjxBcHBsaWNhdGlvbkNhY2hlPiBBcHBsaWNhdGlv
bkNhY2hlU3RvcmFnZTo6bG9hZENhY2hlKHVuc2lnbmVkIHN0b3JhZ2VJRCkKK1JlZlB0cjxBcHBs
aWNhdGlvbkNhY2hlPiBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6bG9hZENhY2hlKHVuc2lnbmVk
IHN0b3JhZ2VJRCkKIHsKICAgICBBU1NFUlQoU1FMaXRlRGF0YWJhc2VUcmFja2VyOjpoYXNUcmFu
c2FjdGlvbkluUHJvZ3Jlc3MoKSk7CiAgICAgU1FMaXRlU3RhdGVtZW50IGNhY2hlU3RhdGVtZW50
KG1fZGF0YWJhc2UsCkBAIC0xNDA4LDEwICsxNDAzLDExIEBAIGJvb2wgQXBwbGljYXRpb25DYWNo
ZVN0b3JhZ2U6OmRlbGV0ZUNhY2hlR3JvdXAoY29uc3QgU3RyaW5nJiBtYW5pZmVzdFVSTCkKICAg
ICBTUUxpdGVUcmFuc2FjdGlvbkluUHJvZ3Jlc3NBdXRvQ291bnRlciB0cmFuc2FjdGlvbkNvdW50
ZXI7CiAKICAgICBTUUxpdGVUcmFuc2FjdGlvbiBkZWxldGVUcmFuc2FjdGlvbihtX2RhdGFiYXNl
KTsKKwogICAgIC8vIENoZWNrIHRvIHNlZSBpZiB0aGUgZ3JvdXAgaXMgaW4gbWVtb3J5LgotICAg
IEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAgPSBtX2NhY2hlc0luTWVtb3J5LmdldChtYW5p
ZmVzdFVSTCk7CisgICAgYXV0byogZ3JvdXAgPSBtX2NhY2hlc0luTWVtb3J5LmdldChtYW5pZmVz
dFVSTCk7CiAgICAgaWYgKGdyb3VwKQotICAgICAgICBjYWNoZUdyb3VwTWFkZU9ic29sZXRlKGdy
b3VwKTsKKyAgICAgICAgY2FjaGVHcm91cE1hZGVPYnNvbGV0ZSgqZ3JvdXApOwogICAgIGVsc2Ug
ewogICAgICAgICAvLyBUaGUgY2FjaGUgZ3JvdXAgaXMgbm90IGluIG1lbW9yeSwgc28gcmVtb3Zl
IGl0IGZyb20gdGhlIGRpc2suCiAgICAgICAgIG9wZW5EYXRhYmFzZShmYWxzZSk7CkBAIC0xNDI0
LDkgKzE0MjAsOSBAQCBib29sIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpkZWxldGVDYWNoZUdy
b3VwKGNvbnN0IFN0cmluZyYgbWFuaWZlc3RVUkwpCiAgICAgfQogCiAgICAgZGVsZXRlVHJhbnNh
Y3Rpb24uY29tbWl0KCk7Ci0gICAgCisKICAgICBjaGVja0ZvckRlbGV0ZWRSZXNvdXJjZXMoKTsK
LSAgICAKKwogICAgIHJldHVybiB0cnVlOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UuaCBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5oCmluZGV4IGU0OGU4
NjY3MzUzNjJkOTQ3N2E4YTI1MTAwM2NjODYxNTA1MjdkMTYuLjlmYTI5MmVlNTBmYWVlODljMzVj
ODYxYThmOTlmYTE2ZjkwNTQ3NmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9h
cHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5oCkBAIC0xLDUgKzEsNSBAQAog
LyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCwgMjAxMCwgMjAxMSBBcHBsZSBJbmMuIEFsbCBSaWdo
dHMgUmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxNyBBcHBsZSBJbmMuIEFsbCBS
aWdodHMgUmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTQxLDcg
KzQxLDcgQEAgY2xhc3MgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOwogY2xhc3MgVVJMOwogY2xh
c3MgU2VjdXJpdHlPcmlnaW47CiBjbGFzcyBTaGFyZWRCdWZmZXI7Ci10ZW1wbGF0ZSA8Y2xhc3Mg
VD4gY2xhc3MgU3RvcmFnZUlESm91cm5hbDsKK3RlbXBsYXRlPHR5cGVuYW1lPiBjbGFzcyBTdG9y
YWdlSURKb3VybmFsOwogCiBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZSA6IHB1YmxpYyBS
ZWZDb3VudGVkPEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlPiB7CiBwdWJsaWM6CkBAIC03MywxOSAr
NzMsMTkgQEAgcHVibGljOgogCiAgICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBmaW5kT3JDcmVh
dGVDYWNoZUdyb3VwKGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwpOwogICAgIEFwcGxpY2F0aW9uQ2Fj
aGVHcm91cCogZmluZEluTWVtb3J5Q2FjaGVHcm91cChjb25zdCBVUkwmIG1hbmlmZXN0VVJMKSBj
b25zdDsKLSAgICB2b2lkIGNhY2hlR3JvdXBEZXN0cm95ZWQoQXBwbGljYXRpb25DYWNoZUdyb3Vw
Kik7Ci0gICAgdm9pZCBjYWNoZUdyb3VwTWFkZU9ic29sZXRlKEFwcGxpY2F0aW9uQ2FjaGVHcm91
cCopOwotICAgICAgICAKLSAgICBib29sIHN0b3JlTmV3ZXN0Q2FjaGUoQXBwbGljYXRpb25DYWNo
ZUdyb3VwKiwgQXBwbGljYXRpb25DYWNoZSogb2xkQ2FjaGUsIEZhaWx1cmVSZWFzb24mIGZhaWx1
cmVSZWFzb24pOwotICAgIGJvb2wgc3RvcmVOZXdlc3RDYWNoZShBcHBsaWNhdGlvbkNhY2hlR3Jv
dXAqKTsgLy8gVXBkYXRlcyB0aGUgY2FjaGUgZ3JvdXAsIGJ1dCBkb2Vzbid0IHJlbW92ZSBvbGQg
Y2FjaGUuCisgICAgdm9pZCBjYWNoZUdyb3VwRGVzdHJveWVkKEFwcGxpY2F0aW9uQ2FjaGVHcm91
cCYpOworICAgIHZvaWQgY2FjaGVHcm91cE1hZGVPYnNvbGV0ZShBcHBsaWNhdGlvbkNhY2hlR3Jv
dXAmKTsKKworICAgIGJvb2wgc3RvcmVOZXdlc3RDYWNoZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAm
LCBBcHBsaWNhdGlvbkNhY2hlKiBvbGRDYWNoZSwgRmFpbHVyZVJlYXNvbiYpOworICAgIGJvb2wg
c3RvcmVOZXdlc3RDYWNoZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAmKTsgLy8gVXBkYXRlcyB0aGUg
Y2FjaGUgZ3JvdXAsIGJ1dCBkb2Vzbid0IHJlbW92ZSBvbGQgY2FjaGUuCiAgICAgYm9vbCBzdG9y
ZShBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqLCBBcHBsaWNhdGlvbkNhY2hlKik7CiAgICAgYm9v
bCBzdG9yZVVwZGF0ZWRUeXBlKEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSosIEFwcGxpY2F0aW9u
Q2FjaGUqKTsKIAogICAgIC8vIFJlbW92ZXMgdGhlIGdyb3VwIGlmIHRoZSBjYWNoZSB0byBiZSBy
ZW1vdmVkIGlzIHRoZSBuZXdlc3Qgb25lIChzbywgc3RvcmVOZXdlc3RDYWNoZSgpIG5lZWRzIHRv
IGJlIGNhbGxlZCBiZWZvcmVoYW5kIHdoZW4gdXBkYXRpbmcpLgogICAgIHZvaWQgcmVtb3ZlKEFw
cGxpY2F0aW9uQ2FjaGUqKTsKLSAgICAKKwogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgZW1wdHko
KTsKLSAgICAKKwogICAgIGJvb2wgZ2V0TWFuaWZlc3RVUkxzKFZlY3RvcjxVUkw+KiB1cmxzKTsK
ICAgICBib29sIGNhY2hlR3JvdXBTaXplKGNvbnN0IFN0cmluZyYgbWFuaWZlc3RVUkwsIGludDY0
X3QqIHNpemUpOwogICAgIGJvb2wgZGVsZXRlQ2FjaGVHcm91cChjb25zdCBTdHJpbmcmIG1hbmlm
ZXN0VVJMKTsKQEAgLTEwNSwxNCArMTA1LDE1IEBAIHB1YmxpYzoKIAogICAgIHN0YXRpYyBpbnQ2
NF90IHVua25vd25RdW90YSgpIHsgcmV0dXJuIC0xOyB9CiAgICAgc3RhdGljIGludDY0X3Qgbm9R
dW90YSgpIHsgcmV0dXJuIHN0ZDo6bnVtZXJpY19saW1pdHM8aW50NjRfdD46Om1heCgpOyB9CisK
IHByaXZhdGU6CiAgICAgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoY29uc3QgU3RyaW5nJiBjYWNo
ZURpcmVjdG9yeSwgY29uc3QgU3RyaW5nJiBmbGF0RmlsZVN1YmRpcmVjdG9yeU5hbWUpOwogCi0g
ICAgUGFzc1JlZlB0cjxBcHBsaWNhdGlvbkNhY2hlPiBsb2FkQ2FjaGUodW5zaWduZWQgc3RvcmFn
ZUlEKTsKKyAgICBSZWZQdHI8QXBwbGljYXRpb25DYWNoZT4gbG9hZENhY2hlKHVuc2lnbmVkIHN0
b3JhZ2VJRCk7CiAgICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBsb2FkQ2FjaGVHcm91cChjb25z
dCBVUkwmIG1hbmlmZXN0VVJMKTsKICAgICAKLSAgICB0eXBlZGVmIFN0b3JhZ2VJREpvdXJuYWw8
QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiBSZXNvdXJjZVN0b3JhZ2VJREpvdXJuYWw7Ci0gICAg
dHlwZWRlZiBTdG9yYWdlSURKb3VybmFsPEFwcGxpY2F0aW9uQ2FjaGVHcm91cD4gR3JvdXBTdG9y
YWdlSURKb3VybmFsOworICAgIHVzaW5nIFJlc291cmNlU3RvcmFnZUlESm91cm5hbCA9IFN0b3Jh
Z2VJREpvdXJuYWw8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPjsKKyAgICB1c2luZyBHcm91cFN0
b3JhZ2VJREpvdXJuYWwgPSBTdG9yYWdlSURKb3VybmFsPEFwcGxpY2F0aW9uQ2FjaGVHcm91cD47
CiAKICAgICBib29sIHN0b3JlKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCosIEdyb3VwU3RvcmFnZUlE
Sm91cm5hbCopOwogICAgIGJvb2wgc3RvcmUoQXBwbGljYXRpb25DYWNoZSosIFJlc291cmNlU3Rv
cmFnZUlESm91cm5hbCopOwpAQCAtMTUyLDggKzE1Myw3IEBAIHByaXZhdGU6CiAgICAgLy8gd2Ug
a2VlcCBhIGhhc2ggc2V0IG9mIHRoZSBob3N0cyBvZiB0aGUgbWFuaWZlc3QgVVJMcyBvZiBhbGwg
bm9uLW9ic29sZXRlIGNhY2hlIGdyb3Vwcy4KICAgICBIYXNoQ291bnRlZFNldDx1bnNpZ25lZCwg
QWxyZWFkeUhhc2hlZD4gbV9jYWNoZUhvc3RTZXQ7CiAgICAgCi0gICAgdHlwZWRlZiBIYXNoTWFw
PFN0cmluZywgQXBwbGljYXRpb25DYWNoZUdyb3VwKj4gQ2FjaGVHcm91cE1hcDsKLSAgICBDYWNo
ZUdyb3VwTWFwIG1fY2FjaGVzSW5NZW1vcnk7IC8vIEV4Y2x1ZGVzIG9ic29sZXRlIGNhY2hlIGdy
b3Vwcy4KKyAgICBIYXNoTWFwPFN0cmluZywgQXBwbGljYXRpb25DYWNoZUdyb3VwKj4gbV9jYWNo
ZXNJbk1lbW9yeTsgLy8gRXhjbHVkZXMgb2Jzb2xldGUgY2FjaGUgZ3JvdXBzLgogCiAgICAgZnJp
ZW5kIGNsYXNzIFdURjo6TmV2ZXJEZXN0cm95ZWQ8QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U+Owog
fTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9ET01BcHBsaWNh
dGlvbkNhY2hlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9ET01BcHBsaWNh
dGlvbkNhY2hlLmNwcAppbmRleCA0ZDBlZWYyMjRjMGFiZDE4OTE1YjM2M2UxNTFlMDAwNDVkMDk4
OTFjLi5lZDhmYWQ4ZjY5NjEwYTczZWY1ZGYxYTc3ZTM3Y2VmMmVhNDQ1ZjAxIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25DYWNoZS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0RPTUFwcGxpY2F0aW9uQ2FjaGUu
Y3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCwgMjAwOSBBcHBs
ZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxNyBB
cHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKQEAgLTI5LDExMSArMjksODQgQEAKICNpbmNsdWRlICJBcHBsaWNhdGlvbkNhY2hlSG9z
dC5oIgogI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnRMb2FkZXIuaCIK
LSNpbmNsdWRlICJFdmVudC5oIgotI2luY2x1ZGUgIkV2ZW50TGlzdGVuZXIuaCIKLSNpbmNsdWRl
ICJFdmVudE5hbWVzLmgiCiAjaW5jbHVkZSAiRXhjZXB0aW9uQ29kZS5oIgogI2luY2x1ZGUgIkZy
YW1lLmgiCi0jaW5jbHVkZSAiRnJhbWVMb2FkZXIuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewog
Ci1ET01BcHBsaWNhdGlvbkNhY2hlOjpET01BcHBsaWNhdGlvbkNhY2hlKEZyYW1lKiBmcmFtZSkK
LSAgICA6IERPTVdpbmRvd1Byb3BlcnR5KGZyYW1lKQorRE9NQXBwbGljYXRpb25DYWNoZTo6RE9N
QXBwbGljYXRpb25DYWNoZShGcmFtZSYgZnJhbWUpCisgICAgOiBET01XaW5kb3dQcm9wZXJ0eSgm
ZnJhbWUpCiB7Ci0gICAgQXBwbGljYXRpb25DYWNoZUhvc3QqIGNhY2hlSG9zdCA9IGFwcGxpY2F0
aW9uQ2FjaGVIb3N0KCk7Ci0gICAgaWYgKGNhY2hlSG9zdCkKLSAgICAgICAgY2FjaGVIb3N0LT5z
ZXRET01BcHBsaWNhdGlvbkNhY2hlKHRoaXMpOworICAgIGlmIChhdXRvKiBob3N0ID0gYXBwbGlj
YXRpb25DYWNoZUhvc3QoKSkKKyAgICAgICAgaG9zdC0+c2V0RE9NQXBwbGljYXRpb25DYWNoZSh0
aGlzKTsKIH0KIAogdm9pZCBET01BcHBsaWNhdGlvbkNhY2hlOjpkaXNjb25uZWN0RnJhbWVGb3JE
b2N1bWVudFN1c3BlbnNpb24oKQogewotICAgIGlmIChBcHBsaWNhdGlvbkNhY2hlSG9zdCogY2Fj
aGVIb3N0ID0gYXBwbGljYXRpb25DYWNoZUhvc3QoKSkKLSAgICAgICAgY2FjaGVIb3N0LT5zZXRE
T01BcHBsaWNhdGlvbkNhY2hlKG51bGxwdHIpOworICAgIGlmIChhdXRvKiBob3N0ID0gYXBwbGlj
YXRpb25DYWNoZUhvc3QoKSkKKyAgICAgICAgaG9zdC0+c2V0RE9NQXBwbGljYXRpb25DYWNoZShu
dWxscHRyKTsKICAgICBET01XaW5kb3dQcm9wZXJ0eTo6ZGlzY29ubmVjdEZyYW1lRm9yRG9jdW1l
bnRTdXNwZW5zaW9uKCk7CiB9CiAKIHZvaWQgRE9NQXBwbGljYXRpb25DYWNoZTo6cmVjb25uZWN0
RnJhbWVGcm9tRG9jdW1lbnRTdXNwZW5zaW9uKEZyYW1lKiBmcmFtZSkKIHsKICAgICBET01XaW5k
b3dQcm9wZXJ0eTo6cmVjb25uZWN0RnJhbWVGcm9tRG9jdW1lbnRTdXNwZW5zaW9uKGZyYW1lKTsK
LSAgICBpZiAoQXBwbGljYXRpb25DYWNoZUhvc3QqIGNhY2hlSG9zdCA9IGFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KCkpCi0gICAgICAgIGNhY2hlSG9zdC0+c2V0RE9NQXBwbGljYXRpb25DYWNoZSh0aGlz
KTsKKyAgICBpZiAoYXV0byogaG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkpCisgICAgICAg
IGhvc3QtPnNldERPTUFwcGxpY2F0aW9uQ2FjaGUodGhpcyk7CiB9CiAKIHZvaWQgRE9NQXBwbGlj
YXRpb25DYWNoZTo6d2lsbERlc3Ryb3lHbG9iYWxPYmplY3RJbkZyYW1lKCkKIHsKLSAgICBpZiAo
QXBwbGljYXRpb25DYWNoZUhvc3QqIGNhY2hlSG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkp
Ci0gICAgICAgIGNhY2hlSG9zdC0+c2V0RE9NQXBwbGljYXRpb25DYWNoZShudWxscHRyKTsKKyAg
ICBpZiAoYXV0byogaG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkpCisgICAgICAgIGhvc3Qt
PnNldERPTUFwcGxpY2F0aW9uQ2FjaGUobnVsbHB0cik7CiAgICAgRE9NV2luZG93UHJvcGVydHk6
OndpbGxEZXN0cm95R2xvYmFsT2JqZWN0SW5GcmFtZSgpOwogfQogCiBBcHBsaWNhdGlvbkNhY2hl
SG9zdCogRE9NQXBwbGljYXRpb25DYWNoZTo6YXBwbGljYXRpb25DYWNoZUhvc3QoKSBjb25zdAog
ewotICAgIGlmICghbV9mcmFtZSB8fCAhbV9mcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIo
KSkKKyAgICBpZiAoIW1fZnJhbWUpCiAgICAgICAgIHJldHVybiBudWxscHRyOwotICAgIHJldHVy
biBtX2ZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9z
dCgpOworICAgIGF1dG8qIGRvY3VtZW50TG9hZGVyID0gbV9mcmFtZS0+bG9hZGVyKCkuZG9jdW1l
bnRMb2FkZXIoKTsKKyAgICBpZiAoIWRvY3VtZW50TG9hZGVyKQorICAgICAgICByZXR1cm4gbnVs
bHB0cjsKKyAgICByZXR1cm4gJmRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgp
OwogfQogCiB1bnNpZ25lZCBzaG9ydCBET01BcHBsaWNhdGlvbkNhY2hlOjpzdGF0dXMoKSBjb25z
dAogewotICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0KiBjYWNoZUhvc3QgPSBhcHBsaWNhdGlvbkNh
Y2hlSG9zdCgpOwotICAgIGlmICghY2FjaGVIb3N0KQorICAgIGF1dG8qIGhvc3QgPSBhcHBsaWNh
dGlvbkNhY2hlSG9zdCgpOworICAgIGlmICghaG9zdCkKICAgICAgICAgcmV0dXJuIEFwcGxpY2F0
aW9uQ2FjaGVIb3N0OjpVTkNBQ0hFRDsKLSAgICByZXR1cm4gY2FjaGVIb3N0LT5zdGF0dXMoKTsK
KyAgICByZXR1cm4gaG9zdC0+c3RhdHVzKCk7CiB9CiAKIEV4Y2VwdGlvbk9yPHZvaWQ+IERPTUFw
cGxpY2F0aW9uQ2FjaGU6OnVwZGF0ZSgpCiB7Ci0gICAgYXV0byogY2FjaGVIb3N0ID0gYXBwbGlj
YXRpb25DYWNoZUhvc3QoKTsKLSAgICBpZiAoIWNhY2hlSG9zdCB8fCAhY2FjaGVIb3N0LT51cGRh
dGUoKSkKKyAgICBhdXRvKiBob3N0ID0gYXBwbGljYXRpb25DYWNoZUhvc3QoKTsKKyAgICBpZiAo
IWhvc3QgfHwgIWhvc3QtPnVwZGF0ZSgpKQogICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSU5W
QUxJRF9TVEFURV9FUlIgfTsKICAgICByZXR1cm4geyB9OwogfQogCiBFeGNlcHRpb25Pcjx2b2lk
PiBET01BcHBsaWNhdGlvbkNhY2hlOjpzd2FwQ2FjaGUoKQogewotICAgIGF1dG8qIGNhY2hlSG9z
dCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7Ci0gICAgaWYgKCFjYWNoZUhvc3QgfHwgIWNhY2hl
SG9zdC0+c3dhcENhY2hlKCkpCisgICAgYXV0byogaG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCk7CisgICAgaWYgKCFob3N0IHx8ICFob3N0LT5zd2FwQ2FjaGUoKSkKICAgICAgICAgcmV0dXJu
IEV4Y2VwdGlvbiB7IElOVkFMSURfU1RBVEVfRVJSIH07CiAgICAgcmV0dXJuIHsgfTsKIH0KIAog
dm9pZCBET01BcHBsaWNhdGlvbkNhY2hlOjphYm9ydCgpCiB7Ci0gICAgQXBwbGljYXRpb25DYWNo
ZUhvc3QqIGNhY2hlSG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7Ci0gICAgaWYgKGNhY2hl
SG9zdCkKLSAgICAgICAgY2FjaGVIb3N0LT5hYm9ydCgpOworICAgIGlmIChhdXRvKiBob3N0ID0g
YXBwbGljYXRpb25DYWNoZUhvc3QoKSkKKyAgICAgICAgaG9zdC0+YWJvcnQoKTsKIH0KIAogU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCogRE9NQXBwbGljYXRpb25DYWNoZTo6c2NyaXB0RXhlY3V0aW9u
Q29udGV4dCgpIGNvbnN0CiB7Ci0gICAgaWYgKG1fZnJhbWUpCi0gICAgICAgIHJldHVybiBtX2Zy
YW1lLT5kb2N1bWVudCgpOwotICAgIHJldHVybiBudWxscHRyOwotfQotCi1jb25zdCBBdG9taWNT
dHJpbmcmIERPTUFwcGxpY2F0aW9uQ2FjaGU6OnRvRXZlbnRUeXBlKEFwcGxpY2F0aW9uQ2FjaGVI
b3N0OjpFdmVudElEIGlkKQotewotICAgIHN3aXRjaCAoaWQpIHsKLSAgICBjYXNlIEFwcGxpY2F0
aW9uQ2FjaGVIb3N0OjpDSEVDS0lOR19FVkVOVDoKLSAgICAgICAgcmV0dXJuIGV2ZW50TmFtZXMo
KS5jaGVja2luZ0V2ZW50OwotICAgIGNhc2UgQXBwbGljYXRpb25DYWNoZUhvc3Q6OkVSUk9SX0VW
RU5UOgotICAgICAgICByZXR1cm4gZXZlbnROYW1lcygpLmVycm9yRXZlbnQ7Ci0gICAgY2FzZSBB
cHBsaWNhdGlvbkNhY2hlSG9zdDo6Tk9VUERBVEVfRVZFTlQ6Ci0gICAgICAgIHJldHVybiBldmVu
dE5hbWVzKCkubm91cGRhdGVFdmVudDsKLSAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpE
T1dOTE9BRElOR19FVkVOVDoKLSAgICAgICAgcmV0dXJuIGV2ZW50TmFtZXMoKS5kb3dubG9hZGlu
Z0V2ZW50OwotICAgIGNhc2UgQXBwbGljYXRpb25DYWNoZUhvc3Q6OlBST0dSRVNTX0VWRU5UOgot
ICAgICAgICByZXR1cm4gZXZlbnROYW1lcygpLnByb2dyZXNzRXZlbnQ7Ci0gICAgY2FzZSBBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6VVBEQVRFUkVBRFlfRVZFTlQ6Ci0gICAgICAgIHJldHVybiBldmVu
dE5hbWVzKCkudXBkYXRlcmVhZHlFdmVudDsKLSAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVIb3N0
OjpDQUNIRURfRVZFTlQ6Ci0gICAgICAgIHJldHVybiBldmVudE5hbWVzKCkuY2FjaGVkRXZlbnQ7
Ci0gICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6T0JTT0xFVEVfRVZFTlQ6ICAgICAgICAg
ICAgCi0gICAgICAgIHJldHVybiBldmVudE5hbWVzKCkub2Jzb2xldGVFdmVudDsKLSAgICB9Ci0g
ICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgcmV0dXJuIGV2ZW50TmFtZXMoKS5lcnJvckV2
ZW50OworICAgIGlmICghbV9mcmFtZSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgcmV0
dXJuIG1fZnJhbWUtPmRvY3VtZW50KCk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9ET01BcHBsaWNhdGlvbkNh
Y2hlLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25DYWNo
ZS5oCmluZGV4IDNmMjBkOGMyYjc1MTk3MzJmYWExZjdkMGVlMGY5MDRhOTc4NTAxOWQuLmNmNmQy
YTlkOTlmNzA2OGMwNmNjMmY0YTI3MTExZTJkY2RjMWU2NzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9ET01BcHBsaWNhdGlvbkNhY2hlLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0RPTUFwcGxpY2F0aW9uQ2FjaGUuaApAQCAtMSw1ICsx
LDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDgsIDIwMDkgQXBwbGUgSW5jLiBBbGwgUmln
aHRzIFJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwg
UmlnaHRzIFJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yNSw0
NiArMjUsMzkgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpbmNsdWRlICJBcHBsaWNhdGlvbkNhY2hl
SG9zdC5oIgogI2luY2x1ZGUgIkRPTVdpbmRvd1Byb3BlcnR5LmgiCiAjaW5jbHVkZSAiRXZlbnRU
YXJnZXQuaCIKLSNpbmNsdWRlICJFeGNlcHRpb25Pci5oIgotI2luY2x1ZGUgIlNjcmlwdFdyYXBw
YWJsZS5oIgotI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvQXRv
bWljU3RyaW5nSGFzaC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2NsYXNzIEFwcGxpY2F0
aW9uQ2FjaGVIb3N0OwogY2xhc3MgRnJhbWU7Ci1jbGFzcyBVUkw7CiAKIGNsYXNzIERPTUFwcGxp
Y2F0aW9uQ2FjaGUgZmluYWwgOiBwdWJsaWMgUmVmQ291bnRlZDxET01BcHBsaWNhdGlvbkNhY2hl
PiwgcHVibGljIEV2ZW50VGFyZ2V0V2l0aElubGluZURhdGEsIHB1YmxpYyBET01XaW5kb3dQcm9w
ZXJ0eSB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFJlZjxET01BcHBsaWNhdGlvbkNhY2hlPiBjcmVh
dGUoRnJhbWUqIGZyYW1lKSB7IHJldHVybiBhZG9wdFJlZigqbmV3IERPTUFwcGxpY2F0aW9uQ2Fj
aGUoZnJhbWUpKTsgfQorICAgIHN0YXRpYyBSZWY8RE9NQXBwbGljYXRpb25DYWNoZT4gY3JlYXRl
KEZyYW1lJiBmcmFtZSkgeyByZXR1cm4gYWRvcHRSZWYoKm5ldyBET01BcHBsaWNhdGlvbkNhY2hl
KGZyYW1lKSk7IH0KICAgICB2aXJ0dWFsIH5ET01BcHBsaWNhdGlvbkNhY2hlKCkgeyBBU1NFUlQo
IW1fZnJhbWUpOyB9CiAKLSAgICB2b2lkIGRpc2Nvbm5lY3RGcmFtZUZvckRvY3VtZW50U3VzcGVu
c2lvbigpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVjb25uZWN0RnJhbWVGcm9tRG9jdW1lbnRTdXNw
ZW5zaW9uKEZyYW1lKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCB3aWxsRGVzdHJveUdsb2JhbE9iamVj
dEluRnJhbWUoKSBvdmVycmlkZTsKLQogICAgIHVuc2lnbmVkIHNob3J0IHN0YXR1cygpIGNvbnN0
OwogICAgIEV4Y2VwdGlvbk9yPHZvaWQ+IHVwZGF0ZSgpOwogICAgIEV4Y2VwdGlvbk9yPHZvaWQ+
IHN3YXBDYWNoZSgpOwogICAgIHZvaWQgYWJvcnQoKTsKIAotICAgIHVzaW5nIFJlZkNvdW50ZWQ8
RE9NQXBwbGljYXRpb25DYWNoZT46OnJlZjsKLSAgICB1c2luZyBSZWZDb3VudGVkPERPTUFwcGxp
Y2F0aW9uQ2FjaGU+OjpkZXJlZjsKKyAgICB1c2luZyBSZWZDb3VudGVkOjpyZWY7CisgICAgdXNp
bmcgUmVmQ291bnRlZDo6ZGVyZWY7CiAKLSAgICBFdmVudFRhcmdldEludGVyZmFjZSBldmVudFRh
cmdldEludGVyZmFjZSgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIERPTUFwcGxpY2F0aW9uQ2Fj
aGVFdmVudFRhcmdldEludGVyZmFjZVR5cGU7IH0KLSAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0
KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29uc3Qgb3ZlcnJpZGU7Citwcml2YXRlOgorICAg
IGV4cGxpY2l0IERPTUFwcGxpY2F0aW9uQ2FjaGUoRnJhbWUmKTsKIAotICAgIHN0YXRpYyBjb25z
dCBBdG9taWNTdHJpbmcmIHRvRXZlbnRUeXBlKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFdmVudElE
IGlkKTsKKyAgICB2b2lkIHJlZkV2ZW50VGFyZ2V0KCkgZmluYWwgeyByZWYoKTsgfQorICAgIHZv
aWQgZGVyZWZFdmVudFRhcmdldCgpIGZpbmFsIHsgZGVyZWYoKTsgfQogCi1wcml2YXRlOgotICAg
IGV4cGxpY2l0IERPTUFwcGxpY2F0aW9uQ2FjaGUoRnJhbWUqKTsKKyAgICBFdmVudFRhcmdldElu
dGVyZmFjZSBldmVudFRhcmdldEludGVyZmFjZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIERPTUFw
cGxpY2F0aW9uQ2FjaGVFdmVudFRhcmdldEludGVyZmFjZVR5cGU7IH0KKyAgICBTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29uc3QgZmluYWw7CiAKLSAg
ICB2b2lkIHJlZkV2ZW50VGFyZ2V0KCkgb3ZlcnJpZGUgeyByZWYoKTsgfQotICAgIHZvaWQgZGVy
ZWZFdmVudFRhcmdldCgpIG92ZXJyaWRlIHsgZGVyZWYoKTsgfQorICAgIHZvaWQgZGlzY29ubmVj
dEZyYW1lRm9yRG9jdW1lbnRTdXNwZW5zaW9uKCkgZmluYWw7CisgICAgdm9pZCByZWNvbm5lY3RG
cmFtZUZyb21Eb2N1bWVudFN1c3BlbnNpb24oRnJhbWUqKSBmaW5hbDsKKyAgICB2b2lkIHdpbGxE
ZXN0cm95R2xvYmFsT2JqZWN0SW5GcmFtZSgpIGZpbmFsOwogCiAgICAgQXBwbGljYXRpb25DYWNo
ZUhvc3QqIGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkgY29uc3Q7CiB9OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL01hbmlmZXN0UGFyc2VyLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9NYW5pZmVzdFBhcnNlci5jcHAKaW5kZXggNjAxMTQxZDZm
ZjY2NDY1NTQ2YjgxYzI0YTBmYThiOWI5MWRjNGM5NS4uNWMxNTEzNTlkZTk4M2E4MWE3NTYwNTNi
YmVjZGNmYjg5YjQ1ODI2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNh
Y2hlL01hbmlmZXN0UGFyc2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2Fj
aGUvTWFuaWZlc3RQYXJzZXIuY3BwCkBAIC0xMTksOCArMTE5LDcgQEAgYm9vbCBwYXJzZU1hbmlm
ZXN0KGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwsIGNvbnN0IGNoYXIqIGRhdGEsIGludCBsZW5ndGgs
IE1hbmlmZXMKICAgICAgICAgICAgIGlmICghdXJsLmlzVmFsaWQoKSkKICAgICAgICAgICAgICAg
ICBjb250aW51ZTsKIAotICAgICAgICAgICAgaWYgKHVybC5oYXNGcmFnbWVudElkZW50aWZpZXIo
KSkKLSAgICAgICAgICAgICAgICB1cmwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CisgICAg
ICAgICAgICB1cmwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CiAgICAgICAgICAgICAKICAg
ICAgICAgICAgIGlmICghZXF1YWxJZ25vcmluZ0FTQ0lJQ2FzZSh1cmwucHJvdG9jb2woKSwgbWFu
aWZlc3RVUkwucHJvdG9jb2woKSkpCiAgICAgICAgICAgICAgICAgY29udGludWU7CkBAIC0xNTAs
OCArMTQ5LDcgQEAgYm9vbCBwYXJzZU1hbmlmZXN0KGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwsIGNv
bnN0IGNoYXIqIGRhdGEsIGludCBsZW5ndGgsIE1hbmlmZXMKICAgICAgICAgICAgIFVSTCBuYW1l
c3BhY2VVUkwobWFuaWZlc3RVUkwsIGxpbmUuc3Vic3RyaW5nKDAsIHAgLSB1cGNvbnZlcnRlZExp
bmVDaGFyYWN0ZXJzKSk7CiAgICAgICAgICAgICBpZiAoIW5hbWVzcGFjZVVSTC5pc1ZhbGlkKCkp
CiAgICAgICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgICAgICBpZiAobmFtZXNwYWNlVVJM
Lmhhc0ZyYWdtZW50SWRlbnRpZmllcigpKQotICAgICAgICAgICAgICAgIG5hbWVzcGFjZVVSTC5y
ZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKKyAgICAgICAgICAgIG5hbWVzcGFjZVVSTC5yZW1v
dmVGcmFnbWVudElkZW50aWZpZXIoKTsKIAogICAgICAgICAgICAgaWYgKCFwcm90b2NvbEhvc3RB
bmRQb3J0QXJlRXF1YWwobWFuaWZlc3RVUkwsIG5hbWVzcGFjZVVSTCkpCiAgICAgICAgICAgICAg
ICAgY29udGludWU7CkBAIC0xNjgsOCArMTY2LDcgQEAgYm9vbCBwYXJzZU1hbmlmZXN0KGNvbnN0
IFVSTCYgbWFuaWZlc3RVUkwsIGNvbnN0IGNoYXIqIGRhdGEsIGludCBsZW5ndGgsIE1hbmlmZXMK
ICAgICAgICAgICAgIFVSTCBmYWxsYmFja1VSTChtYW5pZmVzdFVSTCwgU3RyaW5nKGZhbGxiYWNr
U3RhcnQsIHAgLSBmYWxsYmFja1N0YXJ0KSk7CiAgICAgICAgICAgICBpZiAoIWZhbGxiYWNrVVJM
LmlzVmFsaWQoKSkKICAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAgIGlmIChm
YWxsYmFja1VSTC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSkKLSAgICAgICAgICAgICAgICBmYWxs
YmFja1VSTC5yZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKKyAgICAgICAgICAgIGZhbGxiYWNr
VVJMLnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpOwogCiAgICAgICAgICAgICBpZiAoIXByb3Rv
Y29sSG9zdEFuZFBvcnRBcmVFcXVhbChtYW5pZmVzdFVSTCwgZmFsbGJhY2tVUkwpKQogICAgICAg
ICAgICAgICAgIGNvbnRpbnVlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Fw
cGNhY2hlL01hbmlmZXN0UGFyc2VyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUv
TWFuaWZlc3RQYXJzZXIuaAppbmRleCA2NjEyYzAwZjc5NTE3ZDg2ZGFjZTQzOTcxYjM1ZjdiMGEx
NmZhNjc1Li5iMjgyNDllYmU0N2Y1ZDY2ZDJlMjE0NjM5NzMxMDZmMTBjYzJiZjU2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvTWFuaWZlc3RQYXJzZXIuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvTWFuaWZlc3RQYXJzZXIuaApAQCAtMjYs
MTggKzI2LDE5IEBACiAjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgIkFwcGxpY2F0aW9uQ2FjaGUu
aCIKKyNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLSAg
ICBjbGFzcyBVUkw7CitjbGFzcyBVUkw7CiAKLSAgICBzdHJ1Y3QgTWFuaWZlc3QgewotICAgICAg
ICBWZWN0b3I8VVJMPiBvbmxpbmVXaGl0ZWxpc3RlZFVSTHM7Ci0gICAgICAgIEhhc2hTZXQ8U3Ry
aW5nPiBleHBsaWNpdFVSTHM7Ci0gICAgICAgIEZhbGxiYWNrVVJMVmVjdG9yIGZhbGxiYWNrVVJM
czsKLSAgICAgICAgYm9vbCBhbGxvd0FsbE5ldHdvcmtSZXF1ZXN0czsgLy8gV2lsZGNhcmQgZm91
bmQgaW4gTkVUV09SSyBzZWN0aW9uLgotICAgIH07CitzdHJ1Y3QgTWFuaWZlc3QgeworICAgIFZl
Y3RvcjxVUkw+IG9ubGluZVdoaXRlbGlzdGVkVVJMczsKKyAgICBIYXNoU2V0PFN0cmluZz4gZXhw
bGljaXRVUkxzOworICAgIEZhbGxiYWNrVVJMVmVjdG9yIGZhbGxiYWNrVVJMczsKKyAgICBib29s
IGFsbG93QWxsTmV0d29ya1JlcXVlc3RzOyAvLyBXaWxkY2FyZCBmb3VuZCBpbiBORVRXT1JLIHNl
Y3Rpb24uCit9OwogCi0gICAgYm9vbCBwYXJzZU1hbmlmZXN0KGNvbnN0IFVSTCYgbWFuaWZlc3RV
UkwsIGNvbnN0IGNoYXIqIGRhdGEsIGludCBsZW5ndGgsIE1hbmlmZXN0Jik7Citib29sIHBhcnNl
TWFuaWZlc3QoY29uc3QgVVJMJiBtYW5pZmVzdFVSTCwgY29uc3QgY2hhciogZGF0YSwgaW50IGxl
bmd0aCwgTWFuaWZlc3QmKTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmNwcAppbmRleCBlODlhNDk5ZGY0MDQ0NmMzMjYwYmJm
ZjFiMjhkZTBkOWFkOTc3YTBlLi41ZTA1YmUyMmM3ZDRlYTdmMTIyYmE0MTE3ODY5M2YyNWVkMmUw
ZWRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmNwcApAQCAtMSw1
ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDggQXBwbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0zNywxNyAr
MzcsMTcgQEAgQXJjaGl2ZTo6fkFyY2hpdmUoKQogCiB2b2lkIEFyY2hpdmU6OmNsZWFyQWxsU3Vi
ZnJhbWVBcmNoaXZlcygpCiB7Ci0gICAgVmVjdG9yPFJlZlB0cjxBcmNoaXZlPj4gY2xlYXJlZEFy
Y2hpdmVzOwotICAgIGNsZWFyQWxsU3ViZnJhbWVBcmNoaXZlc0ltcGwoJmNsZWFyZWRBcmNoaXZl
cyk7CisgICAgSGFzaFNldDxBcmNoaXZlKj4gY2xlYXJlZEFyY2hpdmVzOworICAgIGNsZWFyZWRB
cmNoaXZlcy5hZGQodGhpcyk7CisgICAgY2xlYXJBbGxTdWJmcmFtZUFyY2hpdmVzKGNsZWFyZWRB
cmNoaXZlcyk7CiB9CiAKLXZvaWQgQXJjaGl2ZTo6Y2xlYXJBbGxTdWJmcmFtZUFyY2hpdmVzSW1w
bChWZWN0b3I8UmVmUHRyPEFyY2hpdmU+PiogY2xlYXJlZEFyY2hpdmVzKQordm9pZCBBcmNoaXZl
OjpjbGVhckFsbFN1YmZyYW1lQXJjaGl2ZXMoSGFzaFNldDxBcmNoaXZlKj4mIGNsZWFyZWRBcmNo
aXZlcykKIHsKKyAgICBBU1NFUlQoY2xlYXJlZEFyY2hpdmVzLmNvbnRhaW5zKHRoaXMpKTsKICAg
ICBmb3IgKGF1dG8mIGFyY2hpdmUgOiBtX3N1YmZyYW1lQXJjaGl2ZXMpIHsKLSAgICAgICAgaWYg
KCFjbGVhcmVkQXJjaGl2ZXMtPmNvbnRhaW5zKGFyY2hpdmUpKSB7Ci0gICAgICAgICAgICBjbGVh
cmVkQXJjaGl2ZXMtPmFwcGVuZChhcmNoaXZlKTsKLSAgICAgICAgICAgIGFyY2hpdmUtPmNsZWFy
QWxsU3ViZnJhbWVBcmNoaXZlc0ltcGwoY2xlYXJlZEFyY2hpdmVzKTsKLSAgICAgICAgfQorICAg
ICAgICBpZiAoY2xlYXJlZEFyY2hpdmVzLmFkZChhcmNoaXZlLnB0cigpKSkKKyAgICAgICAgICAg
IGFyY2hpdmUtPmNsZWFyQWxsU3ViZnJhbWVBcmNoaXZlcyhjbGVhcmVkQXJjaGl2ZXMpOwogICAg
IH0KICAgICBtX3N1YmZyYW1lQXJjaGl2ZXMuY2xlYXIoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmUuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9hcmNoaXZlL0FyY2hpdmUuaAppbmRleCBmMjA2NTQ5MzIyNDIzYTdmYjI0MDBkZTU4YzlmNGEx
OTIyZGRhZWU3Li5mZjc0Y2UyODMxYWE0ZDI3MzU0MmYxMmQ5OTM3ODI0NTE2MDJlM2M3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZS5oCkBAIC0xLDUgKzEsNSBAQAogLyoK
LSAqIENvcHlyaWdodCAoQykgMjAwOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTI5LDQxICsyOSwzOCBAQAogI3By
YWdtYSBvbmNlCiAKICNpbmNsdWRlICJBcmNoaXZlUmVzb3VyY2UuaCIKLQotI2luY2x1ZGUgPHd0
Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLSNpbmNsdWRlIDx3
dGYvUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorI2luY2x1ZGUgPHd0Zi9IYXNo
U2V0Lmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgQXJjaGl2ZSA6IHB1YmxpYyBS
ZWZDb3VudGVkPEFyY2hpdmU+IHsKIHB1YmxpYzoKLSAgICBlbnVtIFR5cGUgewotICAgICAgV2Vi
QXJjaGl2ZSwKLSAgICAgIE1IVE1MCi0gICAgfTsKICAgICB2aXJ0dWFsIH5BcmNoaXZlKCk7Ci0g
ICAgdmlydHVhbCBUeXBlIHR5cGUoKSBjb25zdCA9IDA7CisKKyAgICB2aXJ0dWFsIGJvb2wgc2hv
dWxkTG9hZEZyb21BcmNoaXZlT25seSgpIGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFsIGJvb2wgc2hv
dWxkT3ZlcnJpZGVCYXNlVVJMKCkgY29uc3QgPSAwOworICAgIHZpcnR1YWwgYm9vbCBzaG91bGRV
c2VNYWluUmVzb3VyY2VFbmNvZGluZygpIGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFsIGJvb2wgc2hv
dWxkVXNlTWFpblJlc291cmNlVVJMKCkgY29uc3QgPSAwOworCiAgICAgQXJjaGl2ZVJlc291cmNl
KiBtYWluUmVzb3VyY2UoKSB7IHJldHVybiBtX21haW5SZXNvdXJjZS5nZXQoKTsgfQotICAgIGNv
bnN0IFZlY3RvcjxSZWZQdHI8QXJjaGl2ZVJlc291cmNlPj4mIHN1YnJlc291cmNlcygpIGNvbnN0
IHsgcmV0dXJuIG1fc3VicmVzb3VyY2VzOyB9Ci0gICAgY29uc3QgVmVjdG9yPFJlZlB0cjxBcmNo
aXZlPj4mIHN1YmZyYW1lQXJjaGl2ZXMoKSBjb25zdCB7IHJldHVybiBtX3N1YmZyYW1lQXJjaGl2
ZXM7IH0KKyAgICBjb25zdCBWZWN0b3I8UmVmPEFyY2hpdmVSZXNvdXJjZT4+JiBzdWJyZXNvdXJj
ZXMoKSBjb25zdCB7IHJldHVybiBtX3N1YnJlc291cmNlczsgfQorICAgIGNvbnN0IFZlY3RvcjxS
ZWY8QXJjaGl2ZT4+JiBzdWJmcmFtZUFyY2hpdmVzKCkgY29uc3QgeyByZXR1cm4gbV9zdWJmcmFt
ZUFyY2hpdmVzOyB9CiAKIHByb3RlY3RlZDoKICAgICAvLyBUaGVzZSBtZXRob2RzIGFyZSBtZWFu
dCBmb3Igc3ViY2xhc3NlcyBmb3IgZGlmZmVyZW50IGFyY2hpdmUgdHlwZXMgdG8gYWRkIHJlc291
cmNlcyBpbiB0byB0aGUgYXJjaGl2ZSwKICAgICAvLyBhbmQgc2hvdWxkIG5vdCBiZSBleHBvc2Vk
IGFzIGFyY2hpdmVzIHNob3VsZCBiZSBpbW11dGFibGUgdG8gY2xpZW50cwotICAgIHZvaWQgc2V0
TWFpblJlc291cmNlKFBhc3NSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBtYWluUmVzb3VyY2UpIHsg
bV9tYWluUmVzb3VyY2UgPSBtYWluUmVzb3VyY2U7IH0KLSAgICB2b2lkIGFkZFN1YnJlc291cmNl
KFBhc3NSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBzdWJSZXNvdXJjZSkgeyBtX3N1YnJlc291cmNl
cy5hcHBlbmQoc3ViUmVzb3VyY2UpOyB9Ci0gICAgdm9pZCBhZGRTdWJmcmFtZUFyY2hpdmUoUGFz
c1JlZlB0cjxBcmNoaXZlPiBzdWJmcmFtZUFyY2hpdmUpIHsgbV9zdWJmcmFtZUFyY2hpdmVzLmFw
cGVuZChzdWJmcmFtZUFyY2hpdmUpOyB9CisgICAgdm9pZCBzZXRNYWluUmVzb3VyY2UoUmVmPEFy
Y2hpdmVSZXNvdXJjZT4mJiBtYWluUmVzb3VyY2UpIHsgbV9tYWluUmVzb3VyY2UgPSBXVEZNb3Zl
KG1haW5SZXNvdXJjZSk7IH0KKyAgICB2b2lkIGFkZFN1YnJlc291cmNlKFJlZjxBcmNoaXZlUmVz
b3VyY2U+JiYgcmVzb3VyY2UpIHsgbV9zdWJyZXNvdXJjZXMuYXBwZW5kKFdURk1vdmUocmVzb3Vy
Y2UpKTsgfQorICAgIHZvaWQgYWRkU3ViZnJhbWVBcmNoaXZlKFJlZjxBcmNoaXZlPiYmIHN1YmZy
YW1lQXJjaGl2ZSkgeyBtX3N1YmZyYW1lQXJjaGl2ZXMuYXBwZW5kKFdURk1vdmUoc3ViZnJhbWVB
cmNoaXZlKSk7IH0KIAogICAgIHZvaWQgY2xlYXJBbGxTdWJmcmFtZUFyY2hpdmVzKCk7CiAKIHBy
aXZhdGU6Ci0gICAgdm9pZCBjbGVhckFsbFN1YmZyYW1lQXJjaGl2ZXNJbXBsKFZlY3RvcjxSZWZQ
dHI8QXJjaGl2ZT4+KiBjbGVhcmVkQXJjaGl2ZXMpOworICAgIHZvaWQgY2xlYXJBbGxTdWJmcmFt
ZUFyY2hpdmVzKEhhc2hTZXQ8QXJjaGl2ZSo+Jik7CiAKICAgICBSZWZQdHI8QXJjaGl2ZVJlc291
cmNlPiBtX21haW5SZXNvdXJjZTsKLSAgICBWZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+
IG1fc3VicmVzb3VyY2VzOwotICAgIFZlY3RvcjxSZWZQdHI8QXJjaGl2ZT4+IG1fc3ViZnJhbWVB
cmNoaXZlczsKKyAgICBWZWN0b3I8UmVmPEFyY2hpdmVSZXNvdXJjZT4+IG1fc3VicmVzb3VyY2Vz
OworICAgIFZlY3RvcjxSZWY8QXJjaGl2ZT4+IG1fc3ViZnJhbWVBcmNoaXZlczsKIH07CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9h
cmNoaXZlL0FyY2hpdmVGYWN0b3J5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZl
L0FyY2hpdmVGYWN0b3J5LmNwcAppbmRleCA5MGI2Nzk5NTE1NmRiMDhlZTRiZTQ3NTQ4NzVhZGU1
Y2ZhMzYyZDljLi40MTdhYzQ3YTczNmNlNjViMjIzM2MxZmNiNTYyZGY3MTZlYjZhYmIyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlRmFjdG9yeS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZUZhY3RvcnkuY3BwCkBA
IC00OSwzMSArNDksMzMgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogdHlwZWRlZiBSZWZQdHI8QXJj
aGl2ZT4gUmF3RGF0YUNyZWF0aW9uRnVuY3Rpb24oY29uc3QgVVJMJiwgU2hhcmVkQnVmZmVyJik7
CiB0eXBlZGVmIEhhc2hNYXA8U3RyaW5nLCBSYXdEYXRhQ3JlYXRpb25GdW5jdGlvbiosIEFTQ0lJ
Q2FzZUluc2Vuc2l0aXZlSGFzaD4gQXJjaGl2ZU1JTUVUeXBlc01hcDsKIAotLy8gVGhlIGNyZWF0
ZSBmdW5jdGlvbnMgaW4gdGhlIGFyY2hpdmUgY2xhc3NlcyByZXR1cm4gUGFzc1JlZlB0ciB0byBj
b25jcmV0ZSBzdWJjbGFzc2VzCisvLyBUaGUgY3JlYXRlIGZ1bmN0aW9ucyBpbiB0aGUgYXJjaGl2
ZSBjbGFzc2VzIHJldHVybiBSZWZQdHIgdG8gY29uY3JldGUgc3ViY2xhc3NlcwogLy8gb2YgQXJj
aGl2ZS4gVGhpcyBhZGFwdG9yIG1ha2VzIHRoZSBmdW5jdGlvbnMgaGF2ZSBhIHVuaWZvcm0gcmV0
dXJuIHR5cGUuCi10ZW1wbGF0ZSA8dHlwZW5hbWUgQXJjaGl2ZUNsYXNzPiBzdGF0aWMgUmVmUHRy
PEFyY2hpdmU+IGFyY2hpdmVGYWN0b3J5Q3JlYXRlKGNvbnN0IFVSTCYgdXJsLCBTaGFyZWRCdWZm
ZXImIGJ1ZmZlcikKK3RlbXBsYXRlPHR5cGVuYW1lIEFyY2hpdmVDbGFzcz4gc3RhdGljIFJlZlB0
cjxBcmNoaXZlPiBhcmNoaXZlRmFjdG9yeUNyZWF0ZShjb25zdCBVUkwmIHVybCwgU2hhcmVkQnVm
ZmVyJiBidWZmZXIpCiB7CiAgICAgcmV0dXJuIEFyY2hpdmVDbGFzczo6Y3JlYXRlKHVybCwgYnVm
ZmVyKTsKIH0KIAotc3RhdGljIEFyY2hpdmVNSU1FVHlwZXNNYXAmIGFyY2hpdmVNSU1FVHlwZXMo
KQorc3RhdGljIEFyY2hpdmVNSU1FVHlwZXNNYXAgY3JlYXRlQXJjaGl2ZU1JTUVUeXBlc01hcCgp
CiB7Ci0gICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPEFyY2hpdmVNSU1FVHlwZXNNYXA+IG1pbWVU
eXBlczsKLSAgICBzdGF0aWMgYm9vbCBpbml0aWFsaXplZCA9IGZhbHNlOwotCi0gICAgaWYgKGlu
aXRpYWxpemVkKQotICAgICAgICByZXR1cm4gbWltZVR5cGVzOworICAgIEFyY2hpdmVNSU1FVHlw
ZXNNYXAgbWFwOwogCiAjaWYgRU5BQkxFKFdFQl9BUkNISVZFKSAmJiBVU0UoQ0YpCi0gICAgbWlt
ZVR5cGVzLmdldCgpLnNldCgiYXBwbGljYXRpb24veC13ZWJhcmNoaXZlIiwgYXJjaGl2ZUZhY3Rv
cnlDcmVhdGU8TGVnYWN5V2ViQXJjaGl2ZT4pOworICAgIG1hcC5hZGQoQVNDSUlMaXRlcmFsIHsg
ImFwcGxpY2F0aW9uL3gtd2ViYXJjaGl2ZSIgfSwgYXJjaGl2ZUZhY3RvcnlDcmVhdGU8TGVnYWN5
V2ViQXJjaGl2ZT4pOwogI2VuZGlmCisKICNpZiBFTkFCTEUoTUhUTUwpCi0gICAgbWltZVR5cGVz
LmdldCgpLnNldCgibXVsdGlwYXJ0L3JlbGF0ZWQiLCBhcmNoaXZlRmFjdG9yeUNyZWF0ZTxNSFRN
TEFyY2hpdmU+KTsKLSAgICBtaW1lVHlwZXMuZ2V0KCkuc2V0KCJhcHBsaWNhdGlvbi94LW1pbWVh
cmNoaXZlIiwgYXJjaGl2ZUZhY3RvcnlDcmVhdGU8TUhUTUxBcmNoaXZlPik7CisgICAgbWFwLmFk
ZChBU0NJSUxpdGVyYWwgeyAibXVsdGlwYXJ0L3JlbGF0ZWQiIH0sIGFyY2hpdmVGYWN0b3J5Q3Jl
YXRlPE1IVE1MQXJjaGl2ZT4pOworICAgIG1hcC5hZGQoQVNDSUlMaXRlcmFsIHsgImFwcGxpY2F0
aW9uL3gtbWltZWFyY2hpdmUiIH0sIGFyY2hpdmVGYWN0b3J5Q3JlYXRlPE1IVE1MQXJjaGl2ZT4p
OwogI2VuZGlmCiAKLSAgICBpbml0aWFsaXplZCA9IHRydWU7Ci0gICAgcmV0dXJuIG1pbWVUeXBl
czsKKyAgICByZXR1cm4gbWFwOworfQorCitzdGF0aWMgQXJjaGl2ZU1JTUVUeXBlc01hcCYgYXJj
aGl2ZU1JTUVUeXBlcygpCit7CisgICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPEFyY2hpdmVNSU1F
VHlwZXNNYXA+IG1hcCA9IGNyZWF0ZUFyY2hpdmVNSU1FVHlwZXNNYXAoKTsKKyAgICByZXR1cm4g
bWFwOwogfQogCiBib29sIEFyY2hpdmVGYWN0b3J5Ojppc0FyY2hpdmVNaW1lVHlwZShjb25zdCBT
dHJpbmcmIG1pbWVUeXBlKQpAQCAtODMsMTAgKzg1LDE0IEBAIGJvb2wgQXJjaGl2ZUZhY3Rvcnk6
OmlzQXJjaGl2ZU1pbWVUeXBlKGNvbnN0IFN0cmluZyYgbWltZVR5cGUpCiAKIFJlZlB0cjxBcmNo
aXZlPiBBcmNoaXZlRmFjdG9yeTo6Y3JlYXRlKGNvbnN0IFVSTCYgdXJsLCBTaGFyZWRCdWZmZXIq
IGRhdGEsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUpCiB7Ci0gICAgUmF3RGF0YUNyZWF0aW9uRnVu
Y3Rpb24qIGZ1bmN0aW9uID0gbWltZVR5cGUuaXNFbXB0eSgpID8gMCA6IGFyY2hpdmVNSU1FVHlw
ZXMoKS5nZXQobWltZVR5cGUpOwogICAgIGlmICghZGF0YSkKICAgICAgICAgcmV0dXJuIG51bGxw
dHI7Ci0gICAgcmV0dXJuIGZ1bmN0aW9uID8gZnVuY3Rpb24odXJsLCAqZGF0YSkgOiBSZWZQdHI8
QXJjaGl2ZT4obnVsbHB0cik7CisgICAgaWYgKG1pbWVUeXBlLmlzRW1wdHkoKSkKKyAgICAgICAg
cmV0dXJuIG51bGxwdHI7CisgICAgYXV0byogZnVuY3Rpb24gPSBhcmNoaXZlTUlNRVR5cGVzKCku
Z2V0KG1pbWVUeXBlKTsKKyAgICBpZiAoIWZ1bmN0aW9uKQorICAgICAgICByZXR1cm4gbnVsbHB0
cjsKKyAgICByZXR1cm4gZnVuY3Rpb24odXJsLCAqZGF0YSk7CiB9CiAKIHZvaWQgQXJjaGl2ZUZh
Y3Rvcnk6OnJlZ2lzdGVyS25vd25BcmNoaXZlTUlNRVR5cGVzKCkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24uY3BwIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5j
cHAKaW5kZXggOThmNmMxZTJmYTFkNGE1MDkxMzAwZDU4NzgwNDQyMTFkOGY3YjIzYi4uYTM3MDVl
Yzc3YWQyNjMxZTU5NjhkODVhY2U5N2RmMGZkMTU3YzFlYSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5j
cHAKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA4IEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOC0yMDE3IEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpA
QCAtMjksMzEgKzI5LDIzIEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiQXJjaGl2
ZVJlc291cmNlQ29sbGVjdGlvbi5oIgogCi1uYW1lc3BhY2UgV2ViQ29yZSB7CisjaW5jbHVkZSAi
QXJjaGl2ZS5oIgogCi1BcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uOjpBcmNoaXZlUmVzb3VyY2VD
b2xsZWN0aW9uKCkKLXsKLX0KK25hbWVzcGFjZSBXZWJDb3JlIHsKIAotdm9pZCBBcmNoaXZlUmVz
b3VyY2VDb2xsZWN0aW9uOjphZGRBbGxSZXNvdXJjZXMoQXJjaGl2ZSogYXJjaGl2ZSkKK3ZvaWQg
QXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbjo6YWRkQWxsUmVzb3VyY2VzKEFyY2hpdmUmIGFyY2hp
dmUpCiB7Ci0gICAgQVNTRVJUKGFyY2hpdmUpOwotICAgIGlmICghYXJjaGl2ZSkKLSAgICAgICAg
cmV0dXJuOworICAgIGZvciAoYXV0byYgc3VicmVzb3VyY2UgOiBhcmNoaXZlLnN1YnJlc291cmNl
cygpKQorICAgICAgICBtX3N1YnJlc291cmNlcy5zZXQoc3VicmVzb3VyY2UtPnVybCgpLCBzdWJy
ZXNvdXJjZS5wdHIoKSk7CiAKLSAgICBmb3IgKGF1dG8mIHN1YnJlc291cmNlIDogYXJjaGl2ZS0+
c3VicmVzb3VyY2VzKCkpCi0gICAgICAgIG1fc3VicmVzb3VyY2VzLnNldChzdWJyZXNvdXJjZS0+
dXJsKCksIHN1YnJlc291cmNlLmdldCgpKTsKLQotICAgIGZvciAoYXV0byYgc3ViZnJhbWVBcmNo
aXZlIDogYXJjaGl2ZS0+c3ViZnJhbWVBcmNoaXZlcygpKSB7CisgICAgZm9yIChhdXRvJiBzdWJm
cmFtZUFyY2hpdmUgOiBhcmNoaXZlLnN1YmZyYW1lQXJjaGl2ZXMoKSkgewogICAgICAgICBBU1NF
UlQoc3ViZnJhbWVBcmNoaXZlLT5tYWluUmVzb3VyY2UoKSk7Ci0KLSAgICAgICAgY29uc3QgU3Ry
aW5nJiBmcmFtZU5hbWUgPSBzdWJmcmFtZUFyY2hpdmUtPm1haW5SZXNvdXJjZSgpLT5mcmFtZU5h
bWUoKTsKLSAgICAgICAgaWYgKCFmcmFtZU5hbWUuaXNOdWxsKCkpCi0gICAgICAgICAgICBtX3N1
YmZyYW1lcy5zZXQoZnJhbWVOYW1lLCBzdWJmcmFtZUFyY2hpdmUuZ2V0KCkpOwotICAgICAgICBl
bHNlIHsKLSAgICAgICAgICAgIC8vIEluIHRoZSBNSFRNTCBjYXNlLCBmcmFtZXMgZG9uJ3QgaGF2
ZSBhIG5hbWUgc28gd2UgdXNlIHRoZSBVUkwgaW5zdGVhZC4KLSAgICAgICAgICAgIG1fc3ViZnJh
bWVzLnNldChzdWJmcmFtZUFyY2hpdmUtPm1haW5SZXNvdXJjZSgpLT51cmwoKS5zdHJpbmcoKSwg
c3ViZnJhbWVBcmNoaXZlLmdldCgpKTsKKyAgICAgICAgYXV0byBmcmFtZU5hbWUgPSBzdWJmcmFt
ZUFyY2hpdmUtPm1haW5SZXNvdXJjZSgpLT5mcmFtZU5hbWUoKTsKKyAgICAgICAgaWYgKGZyYW1l
TmFtZS5pc051bGwoKSkgeworICAgICAgICAgICAgLy8gSW4gdGhlIE1IVE1MIGNhc2UsIGZyYW1l
cyBkb24ndCBoYXZlIGEgbmFtZSwgc28gd2UgdXNlIHRoZSBVUkwgaW5zdGVhZC4KKyAgICAgICAg
ICAgIGZyYW1lTmFtZSA9IHN1YmZyYW1lQXJjaGl2ZS0+bWFpblJlc291cmNlKCktPnVybCgpLnN0
cmluZygpOwogICAgICAgICB9CisgICAgICAgIG1fc3ViZnJhbWVzLnNldChmcmFtZU5hbWUsIHN1
YmZyYW1lQXJjaGl2ZS5wdHIoKSk7CiAgICAgfQogfQogCkBAIC02MSwyNSArNTMsMTkgQEAgdm9p
ZCBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uOjphZGRBbGxSZXNvdXJjZXMoQXJjaGl2ZSogYXJj
aGl2ZSkKIC8vIENhbiB3ZSBjaGFuZ2UgdGhlIGRlc2lnbiBpbiBhIG1hbm5lciB0aGF0IHdpbGwg
bGV0IHVzIGRlcHJlY2F0ZSB0aGF0IEFQSSB3aXRob3V0IHJlZHVjaW5nIGZ1bmN0aW9uYWxpdHkg
b2YgdGhvc2UgYXBwcz8KIHZvaWQgQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbjo6YWRkUmVzb3Vy
Y2UoUmVmPEFyY2hpdmVSZXNvdXJjZT4mJiByZXNvdXJjZSkKIHsKLSAgICBjb25zdCBVUkwmIHVy
bCA9IHJlc291cmNlLT51cmwoKTsKKyAgICBhdXRvJiB1cmwgPSByZXNvdXJjZS0+dXJsKCk7CiAg
ICAgbV9zdWJyZXNvdXJjZXMuc2V0KHVybCwgV1RGTW92ZShyZXNvdXJjZSkpOwogfQogCiBBcmNo
aXZlUmVzb3VyY2UqIEFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb246OmFyY2hpdmVSZXNvdXJjZUZv
clVSTChjb25zdCBVUkwmIHVybCkKIHsKLSAgICBBcmNoaXZlUmVzb3VyY2UqIHJlc291cmNlID0g
bV9zdWJyZXNvdXJjZXMuZ2V0KHVybCk7Ci0gICAgaWYgKCFyZXNvdXJjZSkKLSAgICAgICAgcmV0
dXJuIG51bGxwdHI7Ci0gICAgICAgIAotICAgIHJldHVybiByZXNvdXJjZTsKKyAgICByZXR1cm4g
bV9zdWJyZXNvdXJjZXMuZ2V0KHVybCk7CiB9CiAKLVBhc3NSZWZQdHI8QXJjaGl2ZT4gQXJjaGl2
ZVJlc291cmNlQ29sbGVjdGlvbjo6cG9wU3ViZnJhbWVBcmNoaXZlKGNvbnN0IFN0cmluZyYgZnJh
bWVOYW1lLCBjb25zdCBVUkwmIHVybCkKK1JlZlB0cjxBcmNoaXZlPiBBcmNoaXZlUmVzb3VyY2VD
b2xsZWN0aW9uOjpwb3BTdWJmcmFtZUFyY2hpdmUoY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNv
bnN0IFVSTCYgdXJsKQogewotICAgIGF1dG8gYXJjaGl2ZSA9IG1fc3ViZnJhbWVzLnRha2UoZnJh
bWVOYW1lKTsKLSAgICBpZiAoYXJjaGl2ZSkKLSAgICAgICAgcmV0dXJuIFdURk1vdmUoYXJjaGl2
ZSk7Ci0KKyAgICBpZiAoYXV0byBhcmNoaXZlID0gbV9zdWJmcmFtZXMudGFrZShmcmFtZU5hbWUp
KQorICAgICAgICByZXR1cm4gYXJjaGl2ZTsKICAgICByZXR1cm4gbV9zdWJmcmFtZXMudGFrZSh1
cmwuc3RyaW5nKCkpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJj
aGl2ZS9BcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
YXJjaGl2ZS9BcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uLmgKaW5kZXggNWM2MjBiNTFmMzFlNjM4
MmQ3ZWYxY2MyNDhiOTMyMGY1NmM4OTdhNy4uMzdkZjY4YjM2NmNmZjg1MzliOTVjODIzZjJlOTEy
NGQzNWVhOTkzOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJj
aGl2ZVJlc291cmNlQ29sbGVjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNo
aXZlL0FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24uaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMDggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29w
eXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoK
ICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yOCwyNCArMjgsMjkgQEAKIAogI3ByYWdt
YSBvbmNlCiAKLSNpbmNsdWRlICJBcmNoaXZlLmgiCi0jaW5jbHVkZSAiQXJjaGl2ZVJlc291cmNl
LmgiCi0jaW5jbHVkZSAiVVJMLmgiCisjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KICNpbmNsdWRl
IDx3dGYvSGFzaE1hcC5oPgotI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgorI2luY2x1
ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0hhc2guaD4K
IAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitjbGFzcyBBcmNoaXZlOworY2xhc3MgQXJjaGl2ZVJl
c291cmNlOworY2xhc3MgVVJMOworCiBjbGFzcyBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uIHsK
LSAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uKTsgV1RG
X01BS0VfRkFTVF9BTExPQ0FURUQ7CisgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoQXJjaGl2ZVJl
c291cmNlQ29sbGVjdGlvbik7CisgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CisKIHB1Ymxp
YzoKLSAgICBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uKCk7CisgICAgQXJjaGl2ZVJlc291cmNl
Q29sbGVjdGlvbigpID0gZGVmYXVsdDsKIAogICAgIHZvaWQgYWRkUmVzb3VyY2UoUmVmPEFyY2hp
dmVSZXNvdXJjZT4mJik7Ci0gICAgdm9pZCBhZGRBbGxSZXNvdXJjZXMoQXJjaGl2ZSopOworICAg
IHZvaWQgYWRkQWxsUmVzb3VyY2VzKEFyY2hpdmUmKTsKICAgICAKICAgICBXRUJDT1JFX0VYUE9S
VCBBcmNoaXZlUmVzb3VyY2UqIGFyY2hpdmVSZXNvdXJjZUZvclVSTChjb25zdCBVUkwmKTsKLSAg
ICBQYXNzUmVmUHRyPEFyY2hpdmU+IHBvcFN1YmZyYW1lQXJjaGl2ZShjb25zdCBTdHJpbmcmIGZy
YW1lTmFtZSwgY29uc3QgVVJMJik7CisgICAgUmVmUHRyPEFyY2hpdmU+IHBvcFN1YmZyYW1lQXJj
aGl2ZShjb25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgY29uc3QgVVJMJik7CiAgICAgCiBwcml2YXRl
OiAgICAKICAgICBIYXNoTWFwPFN0cmluZywgUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+IG1fc3Vi
cmVzb3VyY2VzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvY2Yv
TGVnYWN5V2ViQXJjaGl2ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9jZi9M
ZWdhY3lXZWJBcmNoaXZlLmNwcAppbmRleCBlMDQ5MDYzMDA4MWEwMTJhNDMzMzI2YmUyNDIzMTgy
N2RkZmNlOTcxLi4zOWQ4MzUyMDZjNzEwMWVlNGMxOTBjNDI4ZjRiY2VkYjUzMTMzMWFmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNoaXZl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNo
aXZlLmNwcApAQCAtODAsMTggKzgwLDE2IEBAIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IExl
Z2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKEFyCiAgICAg
ICAgIENGRGljdGlvbmFyeVNldFZhbHVlKHByb3BlcnR5TGlzdC5nZXQoKSwgTGVnYWN5V2ViQXJj
aGl2ZVJlc291cmNlTUlNRVR5cGVLZXksIDApOwogICAgICAgICByZXR1cm4gcHJvcGVydHlMaXN0
OwogICAgIH0KLSAgICAKLSAgICBSZXRhaW5QdHI8Q0ZNdXRhYmxlRGljdGlvbmFyeVJlZj4gcHJv
cGVydHlMaXN0ID0gYWRvcHRDRihDRkRpY3Rpb25hcnlDcmVhdGVNdXRhYmxlKDAsIDYsIDAsICZr
Q0ZUeXBlRGljdGlvbmFyeVZhbHVlQ2FsbEJhY2tzKSk7Ci0gICAgCisKKyAgICBhdXRvIHByb3Bl
cnR5TGlzdCA9IGFkb3B0Q0YoQ0ZEaWN0aW9uYXJ5Q3JlYXRlTXV0YWJsZSgwLCA2LCAwLCAma0NG
VHlwZURpY3Rpb25hcnlWYWx1ZUNhbGxCYWNrcykpOworCiAgICAgLy8gUmVzb3VyY2UgZGF0YSBj
YW4gYmUgZW1wdHksIGJ1dCBtdXN0IGJlIHJlcHJlc2VudGVkIGJ5IGFuIGVtcHR5IENGRGF0YVJl
ZgotICAgIFNoYXJlZEJ1ZmZlciYgZGF0YSA9IHJlc291cmNlLT5kYXRhKCk7Ci0gICAgUmV0YWlu
UHRyPENGRGF0YVJlZj4gY2ZEYXRhOwotICAgIGNmRGF0YSA9IGRhdGEuY3JlYXRlQ0ZEYXRhKCk7
CisgICAgYXV0byYgZGF0YSA9IHJlc291cmNlLT5kYXRhKCk7CisKKyAgICBDRkRpY3Rpb25hcnlT
ZXRWYWx1ZShwcm9wZXJ0eUxpc3QuZ2V0KCksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZURhdGFL
ZXksIGRhdGEuY3JlYXRlQ0ZEYXRhKCkuZ2V0KCkpOwogCi0gICAgQ0ZEaWN0aW9uYXJ5U2V0VmFs
dWUocHJvcGVydHlMaXN0LmdldCgpLCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VEYXRhS2V5LCBj
ZkRhdGEuZ2V0KCkpOwotICAgIAogICAgIC8vIFJlc291cmNlIFVSTCBjYW5ub3QgYmUgbnVsbAot
ICAgIGlmIChSZXRhaW5QdHI8Q0ZTdHJpbmdSZWY+IGNmVVJMID0gcmVzb3VyY2UtPnVybCgpLnN0
cmluZygpLmNyZWF0ZUNGU3RyaW5nKCkpCisgICAgaWYgKGF1dG8gY2ZVUkwgPSByZXNvdXJjZS0+
dXJsKCkuc3RyaW5nKCkuY3JlYXRlQ0ZTdHJpbmcoKSkKICAgICAgICAgQ0ZEaWN0aW9uYXJ5U2V0
VmFsdWUocHJvcGVydHlMaXN0LmdldCgpLCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VVUkxLZXks
IGNmVVJMLmdldCgpKTsKICAgICBlbHNlIHsKICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5
V2ViQXJjaGl2ZSAtIE5VTEwgcmVzb3VyY2UgVVJMIGlzIGludmFsaWQgLSByZXR1cm5pbmcgbnVs
bCBwcm9wZXJ0eSBsaXN0Iik7CkBAIC05OSw0MiArOTcsNDEgQEAgUmV0YWluUHRyPENGRGljdGlv
bmFyeVJlZj4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRp
b24oQXIKICAgICB9CiAKICAgICAvLyBGcmFtZU5hbWUgc2hvdWxkIGJlIGxlZnQgb3V0IGlmIGVt
cHR5IGZvciBzdWJyZXNvdXJjZXMsIGJ1dCBhbHdheXMgaW5jbHVkZWQgZm9yIG1haW4gcmVzb3Vy
Y2VzCi0gICAgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUocmVzb3VyY2UtPmZyYW1lTmFtZSgpKTsK
KyAgICBhdXRvJiBmcmFtZU5hbWUgPSByZXNvdXJjZS0+ZnJhbWVOYW1lKCk7CiAgICAgaWYgKCFm
cmFtZU5hbWUuaXNFbXB0eSgpIHx8IGlzTWFpblJlc291cmNlKQogICAgICAgICBDRkRpY3Rpb25h
cnlTZXRWYWx1ZShwcm9wZXJ0eUxpc3QuZ2V0KCksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZUZy
YW1lTmFtZUtleSwgZnJhbWVOYW1lLmNyZWF0ZUNGU3RyaW5nKCkuZ2V0KCkpOwotICAgIAorCiAg
ICAgLy8gU2V0IE1JTUVUeXBlLCBUZXh0RW5jb2RpbmdOYW1lLCBhbmQgUmVzb3VyY2VSZXNwb25z
ZSBvbmx5IGlmIHRoZXkgYWN0dWFsbHkgZXhpc3QKLSAgICBjb25zdCBTdHJpbmcmIG1pbWVUeXBl
KHJlc291cmNlLT5taW1lVHlwZSgpKTsKKyAgICBhdXRvJiBtaW1lVHlwZSA9IHJlc291cmNlLT5t
aW1lVHlwZSgpOwogICAgIGlmICghbWltZVR5cGUuaXNFbXB0eSgpKQogICAgICAgICBDRkRpY3Rp
b25hcnlTZXRWYWx1ZShwcm9wZXJ0eUxpc3QuZ2V0KCksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJj
ZU1JTUVUeXBlS2V5LCBtaW1lVHlwZS5jcmVhdGVDRlN0cmluZygpLmdldCgpKTsKLSAgICAKLSAg
ICBjb25zdCBTdHJpbmcmIHRleHRFbmNvZGluZyhyZXNvdXJjZS0+dGV4dEVuY29kaW5nKCkpOwor
CisgICAgYXV0byYgdGV4dEVuY29kaW5nID0gcmVzb3VyY2UtPnRleHRFbmNvZGluZygpOwogICAg
IGlmICghdGV4dEVuY29kaW5nLmlzRW1wdHkoKSkKICAgICAgICAgQ0ZEaWN0aW9uYXJ5U2V0VmFs
dWUocHJvcGVydHlMaXN0LmdldCgpLCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VUZXh0RW5jb2Rp
bmdOYW1lS2V5LCB0ZXh0RW5jb2RpbmcuY3JlYXRlQ0ZTdHJpbmcoKS5nZXQoKSk7CiAKICAgICAv
LyBEb24ndCBpbmNsdWRlIHRoZSByZXNvdXJjZSByZXNwb25zZSBmb3IgdGhlIG1haW4gcmVzb3Vy
Y2UKICAgICBpZiAoIWlzTWFpblJlc291cmNlKSB7Ci0gICAgICAgIFJldGFpblB0cjxDRkRhdGFS
ZWY+IHJlc291cmNlUmVzcG9uc2VEYXRhID0gY3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRp
b24ocmVzb3VyY2UtPnJlc3BvbnNlKCkpOwotICAgICAgICBpZiAocmVzb3VyY2VSZXNwb25zZURh
dGEpCisgICAgICAgIGlmIChhdXRvIHJlc291cmNlUmVzcG9uc2VEYXRhID0gY3JlYXRlUHJvcGVy
dHlMaXN0UmVwcmVzZW50YXRpb24ocmVzb3VyY2UtPnJlc3BvbnNlKCkpKQogICAgICAgICAgICAg
Q0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJvcGVydHlMaXN0LmdldCgpLCBMZWdhY3lXZWJBcmNoaXZl
UmVzb3VyY2VSZXNwb25zZUtleSwgcmVzb3VyY2VSZXNwb25zZURhdGEuZ2V0KCkpOyAgICAKICAg
ICB9CiAgICAgCiAgICAgcmV0dXJuIHByb3BlcnR5TGlzdDsKIH0KIAotUmV0YWluUHRyPENGRGlj
dGlvbmFyeVJlZj4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50
YXRpb24oQXJjaGl2ZSogYXJjaGl2ZSkKK1JldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IExlZ2Fj
eVdlYkFyY2hpdmU6OmNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKEFyY2hpdmUmIGFy
Y2hpdmUpCiB7Ci0gICAgUmV0YWluUHRyPENGTXV0YWJsZURpY3Rpb25hcnlSZWY+IHByb3BlcnR5
TGlzdCA9IGFkb3B0Q0YoQ0ZEaWN0aW9uYXJ5Q3JlYXRlTXV0YWJsZSgwLCAzLCAwLCAma0NGVHlw
ZURpY3Rpb25hcnlWYWx1ZUNhbGxCYWNrcykpOwotICAgIAotICAgIFJldGFpblB0cjxDRkRpY3Rp
b25hcnlSZWY+IG1haW5SZXNvdXJjZURpY3QgPSBjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRh
dGlvbihhcmNoaXZlLT5tYWluUmVzb3VyY2UoKSwgTWFpblJlc291cmNlKTsKKyAgICBhdXRvIHBy
b3BlcnR5TGlzdCA9IGFkb3B0Q0YoQ0ZEaWN0aW9uYXJ5Q3JlYXRlTXV0YWJsZSgwLCAzLCAwLCAm
a0NGVHlwZURpY3Rpb25hcnlWYWx1ZUNhbGxCYWNrcykpOworCisgICAgYXV0byBtYWluUmVzb3Vy
Y2VEaWN0ID0gY3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24oYXJjaGl2ZS5tYWluUmVz
b3VyY2UoKSwgTWFpblJlc291cmNlKTsKICAgICBBU1NFUlQobWFpblJlc291cmNlRGljdCk7CiAg
ICAgaWYgKCFtYWluUmVzb3VyY2VEaWN0KQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICBD
RkRpY3Rpb25hcnlTZXRWYWx1ZShwcm9wZXJ0eUxpc3QuZ2V0KCksIExlZ2FjeVdlYkFyY2hpdmVN
YWluUmVzb3VyY2VLZXksIG1haW5SZXNvdXJjZURpY3QuZ2V0KCkpOwogCi0gICAgUmV0YWluUHRy
PENGTXV0YWJsZUFycmF5UmVmPiBzdWJyZXNvdXJjZXNBcnJheSA9IGFkb3B0Q0YoQ0ZBcnJheUNy
ZWF0ZU11dGFibGUoMCwgYXJjaGl2ZS0+c3VicmVzb3VyY2VzKCkuc2l6ZSgpLCAma0NGVHlwZUFy
cmF5Q2FsbEJhY2tzKSk7Ci0gICAgZm9yIChhdXRvJiByZXNvdXJjZSA6IGFyY2hpdmUtPnN1YnJl
c291cmNlcygpKSB7Ci0gICAgICAgIGlmIChSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBzdWJy
ZXNvdXJjZSA9IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKHJlc291cmNlLmdldCgp
LCBTdWJyZXNvdXJjZSkpCisgICAgYXV0byBzdWJyZXNvdXJjZXNBcnJheSA9IGFkb3B0Q0YoQ0ZB
cnJheUNyZWF0ZU11dGFibGUoMCwgYXJjaGl2ZS5zdWJyZXNvdXJjZXMoKS5zaXplKCksICZrQ0ZU
eXBlQXJyYXlDYWxsQmFja3MpKTsKKyAgICBmb3IgKGF1dG8mIHJlc291cmNlIDogYXJjaGl2ZS5z
dWJyZXNvdXJjZXMoKSkgeworICAgICAgICBpZiAoYXV0byBzdWJyZXNvdXJjZSA9IGNyZWF0ZVBy
b3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKHJlc291cmNlLnB0cigpLCBTdWJyZXNvdXJjZSkpCiAg
ICAgICAgICAgICBDRkFycmF5QXBwZW5kVmFsdWUoc3VicmVzb3VyY2VzQXJyYXkuZ2V0KCksIHN1
YnJlc291cmNlLmdldCgpKTsKICAgICAgICAgZWxzZQogICAgICAgICAgICAgTE9HKEFyY2hpdmVz
LCAiTGVnYWN5V2ViQXJjaGl2ZSAtIEZhaWxlZCB0byBjcmVhdGUgcHJvcGVydHkgbGlzdCBmb3Ig
c3VicmVzb3VyY2UiKTsKQEAgLTE0Miw5ICsxMzksOSBAQCBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5
UmVmPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihB
cgogICAgIGlmIChDRkFycmF5R2V0Q291bnQoc3VicmVzb3VyY2VzQXJyYXkuZ2V0KCkpKQogICAg
ICAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShwcm9wZXJ0eUxpc3QuZ2V0KCksIExlZ2FjeVdlYkFy
Y2hpdmVTdWJyZXNvdXJjZXNLZXksIHN1YnJlc291cmNlc0FycmF5LmdldCgpKTsKIAotICAgIFJl
dGFpblB0cjxDRk11dGFibGVBcnJheVJlZj4gc3ViZnJhbWVzQXJyYXkgPSBhZG9wdENGKENGQXJy
YXlDcmVhdGVNdXRhYmxlKDAsIGFyY2hpdmUtPnN1YmZyYW1lQXJjaGl2ZXMoKS5zaXplKCksICZr
Q0ZUeXBlQXJyYXlDYWxsQmFja3MpKTsKLSAgICBmb3IgKGF1dG8mIHN1YmZyYW1lIDogYXJjaGl2
ZS0+c3ViZnJhbWVBcmNoaXZlcygpKSB7Ci0gICAgICAgIGlmIChSZXRhaW5QdHI8Q0ZEaWN0aW9u
YXJ5UmVmPiBzdWJmcmFtZUFyY2hpdmUgPSBjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlv
bihzdWJmcmFtZS5nZXQoKSkpCisgICAgYXV0byBzdWJmcmFtZXNBcnJheSA9IGFkb3B0Q0YoQ0ZB
cnJheUNyZWF0ZU11dGFibGUoMCwgYXJjaGl2ZS5zdWJmcmFtZUFyY2hpdmVzKCkuc2l6ZSgpLCAm
a0NGVHlwZUFycmF5Q2FsbEJhY2tzKSk7CisgICAgZm9yIChhdXRvJiBzdWJmcmFtZSA6IGFyY2hp
dmUuc3ViZnJhbWVBcmNoaXZlcygpKSB7CisgICAgICAgIGlmIChhdXRvIHN1YmZyYW1lQXJjaGl2
ZSA9IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKHN1YmZyYW1lLmdldCgpKSkKICAg
ICAgICAgICAgIENGQXJyYXlBcHBlbmRWYWx1ZShzdWJmcmFtZXNBcnJheS5nZXQoKSwgc3ViZnJh
bWVBcmNoaXZlLmdldCgpKTsKICAgICAgICAgZWxzZQogICAgICAgICAgICAgTE9HKEFyY2hpdmVz
LCAiTGVnYWN5V2ViQXJjaGl2ZSAtIEZhaWxlZCB0byBjcmVhdGUgcHJvcGVydHkgbGlzdCBmb3Ig
c3ViZnJhbWUgYXJjaGl2ZSIpOwpAQCAtMTYwLDEzICsxNTcsMTMgQEAgUmVzb3VyY2VSZXNwb25z
ZSBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVSZXNvdXJjZVJlc3BvbnNlRnJvbVByb3BlcnR5TGlz
dERhdGEoQ0YKICAgICBBU1NFUlQoZGF0YSk7CiAgICAgaWYgKCFkYXRhKQogICAgICAgICByZXR1
cm4gUmVzb3VyY2VSZXNwb25zZSgpOwotICAgIAorCiAgICAgLy8gSWYgdGhlIFJlc291cmNlUmVz
cG9uc2VWZXJzaW9uIChwYXNzZWQgaW4gYXMgcmVzcG9uc2VEYXRhVHlwZSkgZXhpc3RzIGF0IGFs
bCwgdGhpcyBpcyBhICJuZXciIHdlYiBhcmNoaXZlIHRoYXQgd2UKICAgICAvLyBjYW4gcGFyc2Ug
d2VsbCBpbiBhIGNyb3NzIHBsYXRmb3JtIG1hbm5lciBJZiBpdCBkb2Vzbid0IGV4aXN0LCB3ZSB3
aWxsIGFzc3VtZSB0aGlzIGlzIGFuICJvbGQiIHdlYiBhcmNoaXZlIHdpdGgsCiAgICAgLy8gTlNV
UkxSZXNwb25zZSBvYmplY3RzIGluIGl0IGFuZCBwYXJzZSB0aGUgUmVzb3VyY2VSZXNwb25zZSBh
cyBzdWNoLgogICAgIGlmICghcmVzcG9uc2VEYXRhVHlwZSkKICAgICAgICAgcmV0dXJuIGNyZWF0
ZVJlc291cmNlUmVzcG9uc2VGcm9tTWFjQXJjaGl2ZWREYXRhKGRhdGEpOwotICAgICAgICAKKwog
ICAgIC8vIEZJWE1FOiBQYXJzZSB0aGUgIm5ldyIgZm9ybWF0IHRoYXQgdGhlIGFib3ZlIGNvbW1l
bnQgcmVmZXJlbmNlcyBoZXJlLiBUaGlzIGZvcm1hdCBkb2Vzbid0IGV4aXN0IHlldC4KICAgICBy
ZXR1cm4gUmVzb3VyY2VSZXNwb25zZSgpOwogfQpAQCAtMTc2LDQ3ICsxNzMsNDYgQEAgUmVmUHRy
PEFyY2hpdmVSZXNvdXJjZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlUmVzb3VyY2UoQ0ZEaWN0
aW9uYXJ5UmVmIGRpY3Rpb24KICAgICBBU1NFUlQoZGljdGlvbmFyeSk7CiAgICAgaWYgKCFkaWN0
aW9uYXJ5KQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICAgICAgCi0gICAgQ0ZEYXRhUmVm
IHJlc291cmNlRGF0YSA9IHN0YXRpY19jYXN0PENGRGF0YVJlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFs
dWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlRGF0YUtleSkpOworCisgICAg
YXV0byByZXNvdXJjZURhdGEgPSBzdGF0aWNfY2FzdDxDRkRhdGFSZWY+KENGRGljdGlvbmFyeUdl
dFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZURhdGFLZXkpKTsKICAg
ICBpZiAocmVzb3VyY2VEYXRhICYmIENGR2V0VHlwZUlEKHJlc291cmNlRGF0YSkgIT0gQ0ZEYXRh
R2V0VHlwZUlEKCkpIHsKICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAt
IFJlc291cmNlIGRhdGEgaXMgbm90IG9mIHR5cGUgQ0ZEYXRhLCBjYW5ub3QgY3JlYXRlIGludmFs
aWQgcmVzb3VyY2UiKTsKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQotICAgIAotICAg
IENGU3RyaW5nUmVmIGZyYW1lTmFtZSA9IHN0YXRpY19jYXN0PENGU3RyaW5nUmVmPihDRkRpY3Rp
b25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VGcmFtZU5h
bWVLZXkpKTsKKworICAgIGF1dG8gZnJhbWVOYW1lID0gc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+
KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJj
ZUZyYW1lTmFtZUtleSkpOwogICAgIGlmIChmcmFtZU5hbWUgJiYgQ0ZHZXRUeXBlSUQoZnJhbWVO
YW1lKSAhPSBDRlN0cmluZ0dldFR5cGVJRCgpKSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxl
Z2FjeVdlYkFyY2hpdmUgLSBGcmFtZSBuYW1lIGlzIG5vdCBvZiB0eXBlIENGU3RyaW5nLCBjYW5u
b3QgY3JlYXRlIGludmFsaWQgcmVzb3VyY2UiKTsKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAg
ICAgfQotICAgIAotICAgIENGU3RyaW5nUmVmIG1pbWVUeXBlID0gc3RhdGljX2Nhc3Q8Q0ZTdHJp
bmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVS
ZXNvdXJjZU1JTUVUeXBlS2V5KSk7CisKKyAgICBhdXRvIG1pbWVUeXBlID0gc3RhdGljX2Nhc3Q8
Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFy
Y2hpdmVSZXNvdXJjZU1JTUVUeXBlS2V5KSk7CiAgICAgaWYgKG1pbWVUeXBlICYmIENGR2V0VHlw
ZUlEKG1pbWVUeXBlKSAhPSBDRlN0cmluZ0dldFR5cGVJRCgpKSB7CiAgICAgICAgIExPRyhBcmNo
aXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBNSU1FIHR5cGUgaXMgbm90IG9mIHR5cGUgQ0ZTdHJp
bmcsIGNhbm5vdCBjcmVhdGUgaW52YWxpZCByZXNvdXJjZSIpOwogICAgICAgICByZXR1cm4gbnVs
bHB0cjsKICAgICB9Ci0gICAgCi0gICAgQ0ZTdHJpbmdSZWYgdXJsID0gc3RhdGljX2Nhc3Q8Q0ZT
dHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hp
dmVSZXNvdXJjZVVSTEtleSkpOworCisgICAgYXV0byB1cmwgPSBzdGF0aWNfY2FzdDxDRlN0cmlu
Z1JlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVJl
c291cmNlVVJMS2V5KSk7CiAgICAgaWYgKHVybCAmJiBDRkdldFR5cGVJRCh1cmwpICE9IENGU3Ry
aW5nR2V0VHlwZUlEKCkpIHsKICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2
ZSAtIFVSTCBpcyBub3Qgb2YgdHlwZSBDRlN0cmluZywgY2Fubm90IGNyZWF0ZSBpbnZhbGlkIHJl
c291cmNlIik7CiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIH0KLSAgICAKLSAgICBDRlN0
cmluZ1JlZiB0ZXh0RW5jb2RpbmcgPSBzdGF0aWNfY2FzdDxDRlN0cmluZ1JlZj4oQ0ZEaWN0aW9u
YXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlVGV4dEVuY29k
aW5nTmFtZUtleSkpOworCisgICAgYXV0byB0ZXh0RW5jb2RpbmcgPSBzdGF0aWNfY2FzdDxDRlN0
cmluZ1JlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2
ZVJlc291cmNlVGV4dEVuY29kaW5nTmFtZUtleSkpOwogICAgIGlmICh0ZXh0RW5jb2RpbmcgJiYg
Q0ZHZXRUeXBlSUQodGV4dEVuY29kaW5nKSAhPSBDRlN0cmluZ0dldFR5cGVJRCgpKSB7CiAgICAg
ICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBUZXh0IGVuY29kaW5nIGlzIG5v
dCBvZiB0eXBlIENGU3RyaW5nLCBjYW5ub3QgY3JlYXRlIGludmFsaWQgcmVzb3VyY2UiKTsKICAg
ICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQogCiAgICAgUmVzb3VyY2VSZXNwb25zZSByZXNw
b25zZTsKLSAgICAKLSAgICBDRkRhdGFSZWYgcmVzb3VyY2VSZXNwb25zZURhdGEgPSBzdGF0aWNf
Y2FzdDxDRkRhdGFSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdl
YkFyY2hpdmVSZXNvdXJjZVJlc3BvbnNlS2V5KSk7Ci0gICAgaWYgKHJlc291cmNlUmVzcG9uc2VE
YXRhKSB7CisKKyAgICBpZiAoYXV0byByZXNvdXJjZVJlc3BvbnNlRGF0YSA9IHN0YXRpY19jYXN0
PENGRGF0YVJlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJj
aGl2ZVJlc291cmNlUmVzcG9uc2VLZXkpKSkgewogICAgICAgICBpZiAoQ0ZHZXRUeXBlSUQocmVz
b3VyY2VSZXNwb25zZURhdGEpICE9IENGRGF0YUdldFR5cGVJRCgpKSB7CiAgICAgICAgICAgICBM
T0coQXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZlIC0gUmVzb3VyY2UgcmVzcG9uc2UgZGF0YSBp
cyBub3Qgb2YgdHlwZSBDRkRhdGEsIGNhbm5vdCBjcmVhdGUgaW52YWxpZCByZXNvdXJjZSIpOwog
ICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgICAgIH0KICAgICAgICAgCi0gICAgICAg
IENGU3RyaW5nUmVmIHJlc291cmNlUmVzcG9uc2VWZXJzaW9uID0gc3RhdGljX2Nhc3Q8Q0ZTdHJp
bmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVS
ZXNvdXJjZVJlc3BvbnNlVmVyc2lvbktleSkpOworICAgICAgICBhdXRvIHJlc291cmNlUmVzcG9u
c2VWZXJzaW9uID0gc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVl
KGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZVJlc3BvbnNlVmVyc2lvbktleSkp
OwogICAgICAgICBpZiAocmVzb3VyY2VSZXNwb25zZVZlcnNpb24gJiYgQ0ZHZXRUeXBlSUQocmVz
b3VyY2VSZXNwb25zZVZlcnNpb24pICE9IENGU3RyaW5nR2V0VHlwZUlEKCkpIHsKICAgICAgICAg
ICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBSZXNvdXJjZSByZXNwb25zZSB2
ZXJzaW9uIGlzIG5vdCBvZiB0eXBlIENGU3RyaW5nLCBjYW5ub3QgY3JlYXRlIGludmFsaWQgcmVz
b3VyY2UiKTsKICAgICAgICAgICAgIHJldHVybiBudWxscHRyOwpAQCAtMjI0LDcgKzIyMCw3IEBA
IFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVJlc291cmNl
KENGRGljdGlvbmFyeVJlZiBkaWN0aW9uCiAgICAgICAgIAogICAgICAgICByZXNwb25zZSA9IGNy
ZWF0ZVJlc291cmNlUmVzcG9uc2VGcm9tUHJvcGVydHlMaXN0RGF0YShyZXNvdXJjZVJlc3BvbnNl
RGF0YSwgcmVzb3VyY2VSZXNwb25zZVZlcnNpb24pOwogICAgIH0KLSAgICAKKwogICAgIHJldHVy
biBBcmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShTaGFyZWRCdWZmZXI6OndyYXBDRkRhdGEocmVzb3Vy
Y2VEYXRhKSwgVVJMKFVSTCgpLCB1cmwpLCBtaW1lVHlwZSwgdGV4dEVuY29kaW5nLCBmcmFtZU5h
bWUsIHJlc3BvbnNlKTsKIH0KIApAQCAtMjMzLDIxICsyMjksMTkgQEAgUmVmPExlZ2FjeVdlYkFy
Y2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZSgpCiAgICAgcmV0dXJuIGFkb3B0UmVmKCpu
ZXcgTGVnYWN5V2ViQXJjaGl2ZSk7CiB9CiAKLVJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdh
Y3lXZWJBcmNoaXZlOjpjcmVhdGUoUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4mJiBtYWluUmVzb3Vy
Y2UsIFZlY3RvcjxSZWZQdHI8QXJjaGl2ZVJlc291cmNlPj4mJiBzdWJyZXNvdXJjZXMsIFZlY3Rv
cjxSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4+JiYgc3ViZnJhbWVBcmNoaXZlcykKK1JlZjxMZWdh
Y3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoUmVmPEFyY2hpdmVSZXNvdXJj
ZT4mJiBtYWluUmVzb3VyY2UsIFZlY3RvcjxSZWY8QXJjaGl2ZVJlc291cmNlPj4mJiBzdWJyZXNv
dXJjZXMsIFZlY3RvcjxSZWY8TGVnYWN5V2ViQXJjaGl2ZT4+JiYgc3ViZnJhbWVBcmNoaXZlcykK
IHsKLSAgICBpZiAoIW1haW5SZXNvdXJjZSkKLSAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0KICAg
ICBhdXRvIGFyY2hpdmUgPSBjcmVhdGUoKTsKKwogICAgIGFyY2hpdmUtPnNldE1haW5SZXNvdXJj
ZShXVEZNb3ZlKG1haW5SZXNvdXJjZSkpOwotICAgIAorCiAgICAgZm9yIChhdXRvJiBzdWJyZXNv
dXJjZSA6IHN1YnJlc291cmNlcykKICAgICAgICAgYXJjaGl2ZS0+YWRkU3VicmVzb3VyY2UoV1RG
TW92ZShzdWJyZXNvdXJjZSkpOwogCiAgICAgZm9yIChhdXRvJiBzdWJmcmFtZUFyY2hpdmUgOiBz
dWJmcmFtZUFyY2hpdmVzKQogICAgICAgICBhcmNoaXZlLT5hZGRTdWJmcmFtZUFyY2hpdmUoV1RG
TW92ZShzdWJmcmFtZUFyY2hpdmUpKTsKIAotICAgIHJldHVybiBXVEZNb3ZlKGFyY2hpdmUpOwor
ICAgIHJldHVybiBhcmNoaXZlOwogfQogCiBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5
V2ViQXJjaGl2ZTo6Y3JlYXRlKFNoYXJlZEJ1ZmZlciYgZGF0YSkKQEAgLTMwNyw0OCArMzAxLDUw
IEBAIGJvb2wgTGVnYWN5V2ViQXJjaGl2ZTo6ZXh0cmFjdChDRkRpY3Rpb25hcnlSZWYgZGljdGlv
bmFyeSkKICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIE1haW4gcmVz
b3VyY2UgaXMgbm90IHRoZSBleHBlY3RlZCBDRkRpY3Rpb25hcnksIGFib3J0aW5nIGludmFsaWQg
V2ViQXJjaGl2ZSIpOwogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQotICAgIAotICAgIHNl
dE1haW5SZXNvdXJjZShjcmVhdGVSZXNvdXJjZShtYWluUmVzb3VyY2VEaWN0KSk7Ci0gICAgaWYg
KCFtYWluUmVzb3VyY2UoKSkgeworCisgICAgYXV0byBtYWluUmVzb3VyY2UgPSBjcmVhdGVSZXNv
dXJjZShtYWluUmVzb3VyY2VEaWN0KTsKKyAgICBpZiAoIW1haW5SZXNvdXJjZSkgewogICAgICAg
ICBMT0coQXJjaGl2ZXMsICJMZWdhY3lXZWJBcmNoaXZlIC0gRmFpbGVkIHRvIHBhcnNlIG1haW4g
cmVzb3VyY2UgZnJvbSBDRkRpY3Rpb25hcnkgb3IgbWFpbiByZXNvdXJjZSBkb2VzIG5vdCBleGlz
dCwgYWJvcnRpbmcgaW52YWxpZCBXZWJBcmNoaXZlIik7CiAgICAgICAgIHJldHVybiBmYWxzZTsK
ICAgICB9Ci0gICAgCi0gICAgaWYgKG1haW5SZXNvdXJjZSgpLT5taW1lVHlwZSgpLmlzTnVsbCgp
KSB7CisKKyAgICBpZiAobWFpblJlc291cmNlLT5taW1lVHlwZSgpLmlzTnVsbCgpKSB7CiAgICAg
ICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBNYWluIHJlc291cmNlIE1JTUUg
dHlwZSBpcyByZXF1aXJlZCwgYnV0IHdhcyBudWxsLiIpOwogICAgICAgICByZXR1cm4gZmFsc2U7
CiAgICAgfQotICAgIAotICAgIENGQXJyYXlSZWYgc3VicmVzb3VyY2VBcnJheSA9IHN0YXRpY19j
YXN0PENGQXJyYXlSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdl
YkFyY2hpdmVTdWJyZXNvdXJjZXNLZXkpKTsKKworICAgIHNldE1haW5SZXNvdXJjZShtYWluUmVz
b3VyY2UucmVsZWFzZU5vbk51bGwoKSk7CisKKyAgICBhdXRvIHN1YnJlc291cmNlQXJyYXkgPSBz
dGF0aWNfY2FzdDxDRkFycmF5UmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBM
ZWdhY3lXZWJBcmNoaXZlU3VicmVzb3VyY2VzS2V5KSk7CiAgICAgaWYgKHN1YnJlc291cmNlQXJy
YXkgJiYgQ0ZHZXRUeXBlSUQoc3VicmVzb3VyY2VBcnJheSkgIT0gQ0ZBcnJheUdldFR5cGVJRCgp
KSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBTdWJyZXNvdXJj
ZXMgaXMgbm90IHRoZSBleHBlY3RlZCBBcnJheSwgYWJvcnRpbmcgaW52YWxpZCBXZWJBcmNoaXZl
Iik7CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9Ci0gICAgCisKICAgICBpZiAoc3VicmVz
b3VyY2VBcnJheSkgewotICAgICAgICBDRkluZGV4IGNvdW50ID0gQ0ZBcnJheUdldENvdW50KHN1
YnJlc291cmNlQXJyYXkpOworICAgICAgICBhdXRvIGNvdW50ID0gQ0ZBcnJheUdldENvdW50KHN1
YnJlc291cmNlQXJyYXkpOwogICAgICAgICBmb3IgKENGSW5kZXggaSA9IDA7IGkgPCBjb3VudDsg
KytpKSB7Ci0gICAgICAgICAgICBDRkRpY3Rpb25hcnlSZWYgc3VicmVzb3VyY2VEaWN0ID0gc3Rh
dGljX2Nhc3Q8Q0ZEaWN0aW9uYXJ5UmVmPihDRkFycmF5R2V0VmFsdWVBdEluZGV4KHN1YnJlc291
cmNlQXJyYXksIGkpKTsKKyAgICAgICAgICAgIGF1dG8gc3VicmVzb3VyY2VEaWN0ID0gc3RhdGlj
X2Nhc3Q8Q0ZEaWN0aW9uYXJ5UmVmPihDRkFycmF5R2V0VmFsdWVBdEluZGV4KHN1YnJlc291cmNl
QXJyYXksIGkpKTsKICAgICAgICAgICAgIGlmIChDRkdldFR5cGVJRChzdWJyZXNvdXJjZURpY3Qp
ICE9IENGRGljdGlvbmFyeUdldFR5cGVJRCgpKSB7CiAgICAgICAgICAgICAgICAgTE9HKEFyY2hp
dmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIFN1YnJlc291cmNlIGlzIG5vdCBleHBlY3RlZCBDRkRp
Y3Rpb25hcnksIGFib3J0aW5nIGludmFsaWQgV2ViQXJjaGl2ZSIpOwogICAgICAgICAgICAgICAg
IHJldHVybiBmYWxzZTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIAogICAgICAgICAgICAg
aWYgKGF1dG8gc3VicmVzb3VyY2UgPSBjcmVhdGVSZXNvdXJjZShzdWJyZXNvdXJjZURpY3QpKQot
ICAgICAgICAgICAgICAgIGFkZFN1YnJlc291cmNlKFdURk1vdmUoc3VicmVzb3VyY2UpKTsKKyAg
ICAgICAgICAgICAgICBhZGRTdWJyZXNvdXJjZShzdWJyZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgp
KTsKICAgICAgICAgfQogICAgIH0KLSAgICAKLSAgICBDRkFycmF5UmVmIHN1YmZyYW1lQXJyYXkg
PSBzdGF0aWNfY2FzdDxDRkFycmF5UmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5
LCBMZWdhY3lXZWJBcmNoaXZlU3ViZnJhbWVBcmNoaXZlc0tleSkpOworCisgICAgYXV0byBzdWJm
cmFtZUFycmF5ID0gc3RhdGljX2Nhc3Q8Q0ZBcnJheVJlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUo
ZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVN1YmZyYW1lQXJjaGl2ZXNLZXkpKTsKICAgICBp
ZiAoc3ViZnJhbWVBcnJheSAmJiBDRkdldFR5cGVJRChzdWJmcmFtZUFycmF5KSAhPSBDRkFycmF5
R2V0VHlwZUlEKCkpIHsKICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAt
IFN1YmZyYW1lIGFyY2hpdmVzIGlzIG5vdCB0aGUgZXhwZWN0ZWQgQXJyYXksIGFib3J0aW5nIGlu
dmFsaWQgV2ViQXJjaGl2ZSIpOwogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQotICAgIAor
CiAgICAgaWYgKHN1YmZyYW1lQXJyYXkpIHsKLSAgICAgICAgQ0ZJbmRleCBjb3VudCA9IENGQXJy
YXlHZXRDb3VudChzdWJmcmFtZUFycmF5KTsKKyAgICAgICAgYXV0byBjb3VudCA9IENGQXJyYXlH
ZXRDb3VudChzdWJmcmFtZUFycmF5KTsKICAgICAgICAgZm9yIChDRkluZGV4IGkgPSAwOyBpIDwg
Y291bnQ7ICsraSkgewotICAgICAgICAgICAgQ0ZEaWN0aW9uYXJ5UmVmIHN1YmZyYW1lRGljdCA9
IHN0YXRpY19jYXN0PENGRGljdGlvbmFyeVJlZj4oQ0ZBcnJheUdldFZhbHVlQXRJbmRleChzdWJm
cmFtZUFycmF5LCBpKSk7CisgICAgICAgICAgICBhdXRvIHN1YmZyYW1lRGljdCA9IHN0YXRpY19j
YXN0PENGRGljdGlvbmFyeVJlZj4oQ0ZBcnJheUdldFZhbHVlQXRJbmRleChzdWJmcmFtZUFycmF5
LCBpKSk7CiAgICAgICAgICAgICBpZiAoQ0ZHZXRUeXBlSUQoc3ViZnJhbWVEaWN0KSAhPSBDRkRp
Y3Rpb25hcnlHZXRUeXBlSUQoKSkgewogICAgICAgICAgICAgICAgIExPRyhBcmNoaXZlcywgIkxl
Z2FjeVdlYkFyY2hpdmUgLSBTdWJmcmFtZSBhcnJheSBpcyBub3QgZXhwZWN0ZWQgQ0ZEaWN0aW9u
YXJ5LCBhYm9ydGluZyBpbnZhbGlkIFdlYkFyY2hpdmUiKTsKICAgICAgICAgICAgICAgICByZXR1
cm4gZmFsc2U7CkBAIC0zNjUsMjYgKzM2MSwyMSBAQCBib29sIExlZ2FjeVdlYkFyY2hpdmU6OmV4
dHJhY3QoQ0ZEaWN0aW9uYXJ5UmVmIGRpY3Rpb25hcnkpCiAgICAgcmV0dXJuIHRydWU7CiB9CiAK
LUFyY2hpdmU6OlR5cGUgTGVnYWN5V2ViQXJjaGl2ZTo6dHlwZSgpIGNvbnN0Ci17Ci0gICAgcmV0
dXJuIEFyY2hpdmU6OldlYkFyY2hpdmU7Ci19Ci0gICAgCiBSZXRhaW5QdHI8Q0ZEYXRhUmVmPiBM
ZWdhY3lXZWJBcmNoaXZlOjpyYXdEYXRhUmVwcmVzZW50YXRpb24oKQogewotICAgIFJldGFpblB0
cjxDRkRpY3Rpb25hcnlSZWY+IHByb3BlcnR5TGlzdCA9IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJl
c2VudGF0aW9uKHRoaXMpOworICAgIGF1dG8gcHJvcGVydHlMaXN0ID0gY3JlYXRlUHJvcGVydHlM
aXN0UmVwcmVzZW50YXRpb24oKnRoaXMpOwogICAgIEFTU0VSVChwcm9wZXJ0eUxpc3QpOwogICAg
IGlmICghcHJvcGVydHlMaXN0KSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFy
Y2hpdmUgLSBGYWlsZWQgdG8gY3JlYXRlIHByb3BlcnR5IGxpc3QgZm9yIGFyY2hpdmUsIHJldHVy
bmluZyBubyBkYXRhIik7CiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIH0KIAotICAgIFJl
dGFpblB0cjxDRldyaXRlU3RyZWFtUmVmPiBzdHJlYW0gPSBhZG9wdENGKENGV3JpdGVTdHJlYW1D
cmVhdGVXaXRoQWxsb2NhdGVkQnVmZmVycygwLCAwKSk7CisgICAgYXV0byBzdHJlYW0gPSBhZG9w
dENGKENGV3JpdGVTdHJlYW1DcmVhdGVXaXRoQWxsb2NhdGVkQnVmZmVycygwLCAwKSk7CiAKICAg
ICBDRldyaXRlU3RyZWFtT3BlbihzdHJlYW0uZ2V0KCkpOwogICAgIENGUHJvcGVydHlMaXN0V3Jp
dGUocHJvcGVydHlMaXN0LmdldCgpLCBzdHJlYW0uZ2V0KCksIGtDRlByb3BlcnR5TGlzdEJpbmFy
eUZvcm1hdF92MV8wLCAwLCAwKTsKIAotICAgIFJldGFpblB0cjxDRkRhdGFSZWY+IHBsaXN0RGF0
YSA9IGFkb3B0Q0Yoc3RhdGljX2Nhc3Q8Q0ZEYXRhUmVmPihDRldyaXRlU3RyZWFtQ29weVByb3Bl
cnR5KHN0cmVhbS5nZXQoKSwga0NGU3RyZWFtUHJvcGVydHlEYXRhV3JpdHRlbikpKTsKKyAgICBh
dXRvIHBsaXN0RGF0YSA9IGFkb3B0Q0Yoc3RhdGljX2Nhc3Q8Q0ZEYXRhUmVmPihDRldyaXRlU3Ry
ZWFtQ29weVByb3BlcnR5KHN0cmVhbS5nZXQoKSwga0NGU3RyZWFtUHJvcGVydHlEYXRhV3JpdHRl
bikpKTsKICAgICBBU1NFUlQocGxpc3REYXRhKTsKIAogICAgIENGV3JpdGVTdHJlYW1DbG9zZShz
dHJlYW0uZ2V0KCkpOwpAQCAtNDMyLDcgKzQyMyw3IEBAIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZl
PiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoTm9kZSYgbm9kZSwgc3RkOjpmdW5jdGlvbjxib29s
CiAKICAgICBWZWN0b3I8Tm9kZSo+IG5vZGVMaXN0OwogICAgIFN0cmluZyBtYXJrdXBTdHJpbmcg
PSBjcmVhdGVNYXJrdXAobm9kZSwgSW5jbHVkZU5vZGUsICZub2RlTGlzdCwgRG9Ob3RSZXNvbHZl
VVJMcywgdGFnTmFtZXNUb0ZpbHRlci5nZXQoKSk7Ci0gICAgTm9kZTo6Tm9kZVR5cGUgbm9kZVR5
cGUgPSBub2RlLm5vZGVUeXBlKCk7CisgICAgYXV0byBub2RlVHlwZSA9IG5vZGUubm9kZVR5cGUo
KTsKICAgICBpZiAobm9kZVR5cGUgIT0gTm9kZTo6RE9DVU1FTlRfTk9ERSAmJiBub2RlVHlwZSAh
PSBOb2RlOjpET0NVTUVOVF9UWVBFX05PREUpCiAgICAgICAgIG1hcmt1cFN0cmluZyA9IGRvY3Vt
ZW50VHlwZVN0cmluZyhub2RlLmRvY3VtZW50KCkpICsgbWFya3VwU3RyaW5nOwogCkBAIC00NDEs
MjAgKzQzMiwyMSBAQCBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6
Y3JlYXRlKE5vZGUmIG5vZGUsIHN0ZDo6ZnVuY3Rpb248Ym9vbAogCiBSZWZQdHI8TGVnYWN5V2Vi
QXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKEZyYW1lJiBmcmFtZSkKIHsKLSAgICBE
b2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIgPSBmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExv
YWRlcigpOwotCisgICAgYXV0byogZG9jdW1lbnRMb2FkZXIgPSBmcmFtZS5sb2FkZXIoKS5kb2N1
bWVudExvYWRlcigpOwogICAgIGlmICghZG9jdW1lbnRMb2FkZXIpCiAgICAgICAgIHJldHVybiBu
dWxscHRyOwotICAgICAgICAKLSAgICBWZWN0b3I8UmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+PiBz
dWJmcmFtZUFyY2hpdmVzOwotICAgIAorCisgICAgYXV0byBtYWluUmVzb3VyY2UgPSBkb2N1bWVu
dExvYWRlci0+bWFpblJlc291cmNlKCk7CisgICAgaWYgKCFtYWluUmVzb3VyY2UpCisgICAgICAg
IHJldHVybiBudWxscHRyOworCisgICAgVmVjdG9yPFJlZjxMZWdhY3lXZWJBcmNoaXZlPj4gc3Vi
ZnJhbWVBcmNoaXZlczsKICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgZnJhbWUudHJlZSgp
LmNoaWxkQ291bnQoKTsgKytpKSB7Ci0gICAgICAgIGlmIChSZWZQdHI8TGVnYWN5V2ViQXJjaGl2
ZT4gY2hpbGRGcmFtZUFyY2hpdmUgPSBjcmVhdGUoKmZyYW1lLnRyZWUoKS5jaGlsZChpKSkpCi0g
ICAgICAgICAgICBzdWJmcmFtZUFyY2hpdmVzLmFwcGVuZChXVEZNb3ZlKGNoaWxkRnJhbWVBcmNo
aXZlKSk7CisgICAgICAgIGlmIChhdXRvIGNoaWxkRnJhbWVBcmNoaXZlID0gY3JlYXRlKCpmcmFt
ZS50cmVlKCkuY2hpbGQoaSkpKQorICAgICAgICAgICAgc3ViZnJhbWVBcmNoaXZlcy5hcHBlbmQo
Y2hpbGRGcmFtZUFyY2hpdmUucmVsZWFzZU5vbk51bGwoKSk7CiAgICAgfQogCi0gICAgYXV0byBz
dWJyZXNvdXJjZXMgPSBkb2N1bWVudExvYWRlci0+c3VicmVzb3VyY2VzKCk7Ci0gICAgcmV0dXJu
IGNyZWF0ZShkb2N1bWVudExvYWRlci0+bWFpblJlc291cmNlKCksIFdURk1vdmUoc3VicmVzb3Vy
Y2VzKSwgV1RGTW92ZShzdWJmcmFtZUFyY2hpdmVzKSk7CisgICAgcmV0dXJuIGNyZWF0ZShtYWlu
UmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSwgZG9jdW1lbnRMb2FkZXItPnN1YnJlc291cmNlcygp
LCBXVEZNb3ZlKHN1YmZyYW1lQXJjaGl2ZXMpKTsKIH0KIAogUmVmUHRyPExlZ2FjeVdlYkFyY2hp
dmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShSYW5nZSogcmFuZ2UpCkBAIC00NjIsMjIgKzQ1
NCwyMCBAQCBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRl
KFJhbmdlKiByYW5nZSkKICAgICBpZiAoIXJhbmdlKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsK
ICAgICAgICAgCi0gICAgRG9jdW1lbnQmIGRvY3VtZW50ID0gcmFuZ2UtPnN0YXJ0Q29udGFpbmVy
KCkuZG9jdW1lbnQoKTsKLQotICAgIEZyYW1lKiBmcmFtZSA9IGRvY3VtZW50LmZyYW1lKCk7Cisg
ICAgYXV0byYgZG9jdW1lbnQgPSByYW5nZS0+c3RhcnRDb250YWluZXIoKS5kb2N1bWVudCgpOwor
ICAgIGF1dG8qIGZyYW1lID0gZG9jdW1lbnQuZnJhbWUoKTsKICAgICBpZiAoIWZyYW1lKQogICAg
ICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICAKLSAgICAvLyBGSVhNRTogVGhpcyBpcyBhbHdheXMg
ImZvciBpbnRlcmNoYW5nZSIuIElzIHRoYXQgcmlnaHQ/IFNlZSB0aGUgcHJldmlvdXMgbWV0aG9k
LgorCisgICAgLy8gRklYTUU6IFRoaXMgaXMgYWx3YXlzICJmb3IgaW50ZXJjaGFuZ2UiLiBJcyB0
aGF0IHJpZ2h0PwogICAgIFZlY3RvcjxOb2RlKj4gbm9kZUxpc3Q7CiAgICAgU3RyaW5nIG1hcmt1
cFN0cmluZyA9IGRvY3VtZW50VHlwZVN0cmluZyhkb2N1bWVudCkgKyBjcmVhdGVNYXJrdXAoKnJh
bmdlLCAmbm9kZUxpc3QsIEFubm90YXRlRm9ySW50ZXJjaGFuZ2UpOwotCiAgICAgcmV0dXJuIGNy
ZWF0ZShtYXJrdXBTdHJpbmcsICpmcmFtZSwgbm9kZUxpc3QsIG51bGxwdHIpOwogfQogCiBSZWZQ
dHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKGNvbnN0IFN0cmlu
ZyYgbWFya3VwU3RyaW5nLCBGcmFtZSYgZnJhbWUsIGNvbnN0IFZlY3RvcjxOb2RlKj4mIG5vZGVz
LCBzdGQ6OmZ1bmN0aW9uPGJvb2wgKEZyYW1lJik+IGZyYW1lRmlsdGVyKQogewotICAgIGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlID0gZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2Fk
ZXIoKS0+cmVzcG9uc2UoKTsKKyAgICBhdXRvJiByZXNwb25zZSA9IGZyYW1lLmxvYWRlcigpLmRv
Y3VtZW50TG9hZGVyKCktPnJlc3BvbnNlKCk7CiAgICAgVVJMIHJlc3BvbnNlVVJMID0gcmVzcG9u
c2UudXJsKCk7CiAgICAgCiAgICAgLy8gaXQncyBwb3NzaWJsZSB0byBoYXZlIGEgcmVzcG9uc2Ug
d2l0aG91dCBhIFVSTCBoZXJlCkBAIC00ODUsNDIgKzQ3NSw0MSBAQCBSZWZQdHI8TGVnYWN5V2Vi
QXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKGNvbnN0IFN0cmluZyYgbWFya3VwU3Ry
aW5nLCBGcgogICAgIGlmIChyZXNwb25zZVVSTC5pc051bGwoKSkKICAgICAgICAgcmVzcG9uc2VV
UkwgPSBVUkwoUGFyc2VkVVJMU3RyaW5nLCBlbXB0eVN0cmluZygpKTsKIAotICAgIFJlZlB0cjxB
cmNoaXZlUmVzb3VyY2U+IG1haW5SZXNvdXJjZSA9IEFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKHV0
ZjhCdWZmZXIobWFya3VwU3RyaW5nKSwgcmVzcG9uc2VVUkwsIHJlc3BvbnNlLm1pbWVUeXBlKCks
ICJVVEYtOCIsIGZyYW1lLnRyZWUoKS51bmlxdWVOYW1lKCkpOworICAgIGF1dG8gbWFpblJlc291
cmNlID0gQXJjaGl2ZVJlc291cmNlOjpjcmVhdGUodXRmOEJ1ZmZlcihtYXJrdXBTdHJpbmcpLCBy
ZXNwb25zZVVSTCwgcmVzcG9uc2UubWltZVR5cGUoKSwgIlVURi04IiwgZnJhbWUudHJlZSgpLnVu
aXF1ZU5hbWUoKSk7CiAgICAgaWYgKCFtYWluUmVzb3VyY2UpCiAgICAgICAgIHJldHVybiBudWxs
cHRyOwogCi0gICAgVmVjdG9yPFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPj4gc3ViZnJhbWVBcmNo
aXZlczsKLSAgICBWZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+IHN1YnJlc291cmNlczsK
KyAgICBWZWN0b3I8UmVmPExlZ2FjeVdlYkFyY2hpdmU+PiBzdWJmcmFtZUFyY2hpdmVzOworICAg
IFZlY3RvcjxSZWY8QXJjaGl2ZVJlc291cmNlPj4gc3VicmVzb3VyY2VzOwogICAgIEhhc2hTZXQ8
VVJMPiB1bmlxdWVTdWJyZXNvdXJjZXM7CiAKLSAgICBzaXplX3Qgbm9kZXNTaXplID0gbm9kZXMu
c2l6ZSgpOyAgICAKLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG5vZGVzU2l6ZTsgKytpKSB7
Ci0gICAgICAgIE5vZGUmIG5vZGUgPSAqbm9kZXNbaV07CisgICAgZm9yIChhdXRvJiBub2RlUHRy
IDogbm9kZXMpIHsKKyAgICAgICAgTm9kZSYgbm9kZSA9ICpub2RlUHRyOwogICAgICAgICBGcmFt
ZSogY2hpbGRGcmFtZTsKICAgICAgICAgaWYgKChpczxIVE1MRnJhbWVFbGVtZW50QmFzZT4obm9k
ZSkgfHwgaXM8SFRNTE9iamVjdEVsZW1lbnQ+KG5vZGUpKQogICAgICAgICAgICAgJiYgKGNoaWxk
RnJhbWUgPSBkb3duY2FzdDxIVE1MRnJhbWVPd25lckVsZW1lbnQ+KG5vZGUpLmNvbnRlbnRGcmFt
ZSgpKSkgewogICAgICAgICAgICAgaWYgKGZyYW1lRmlsdGVyICYmICFmcmFtZUZpbHRlcigqY2hp
bGRGcmFtZSkpCiAgICAgICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgICAgICAgICAgCi0g
ICAgICAgICAgICBpZiAoUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IHN1YmZyYW1lQXJjaGl2ZSA9
IGNyZWF0ZSgqY2hpbGRGcmFtZS0+ZG9jdW1lbnQoKSwgZnJhbWVGaWx0ZXIpKQotICAgICAgICAg
ICAgICAgIHN1YmZyYW1lQXJjaGl2ZXMuYXBwZW5kKFdURk1vdmUoc3ViZnJhbWVBcmNoaXZlKSk7
CisgICAgICAgICAgICBpZiAoYXV0byBzdWJmcmFtZUFyY2hpdmUgPSBjcmVhdGUoKmNoaWxkRnJh
bWUtPmRvY3VtZW50KCksIGZyYW1lRmlsdGVyKSkKKyAgICAgICAgICAgICAgICBzdWJmcmFtZUFy
Y2hpdmVzLmFwcGVuZChzdWJmcmFtZUFyY2hpdmUucmVsZWFzZU5vbk51bGwoKSk7CiAgICAgICAg
ICAgICBlbHNlCiAgICAgICAgICAgICAgICAgTE9HX0VSUk9SKCJVbmFibGVkIHRvIGFyY2hpdmUg
c3ViZnJhbWUgJXMiLCBjaGlsZEZyYW1lLT50cmVlKCkudW5pcXVlTmFtZSgpLnN0cmluZygpLnV0
ZjgoKS5kYXRhKCkpOwogCiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBMaXN0SGFzaFNl
dDxVUkw+IHN1YnJlc291cmNlVVJMczsKICAgICAgICAgICAgIG5vZGUuZ2V0U3VicmVzb3VyY2VV
UkxzKHN1YnJlc291cmNlVVJMcyk7Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIERvY3VtZW50
TG9hZGVyKiBkb2N1bWVudExvYWRlciA9IGZyYW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCk7
CiAKLSAgICAgICAgICAgIGZvciAoY29uc3QgYXV0byYgc3VicmVzb3VyY2VVUkwgOiBzdWJyZXNv
dXJjZVVSTHMpIHsKKyAgICAgICAgICAgIEFTU0VSVChmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExv
YWRlcigpKTsKKyAgICAgICAgICAgIGF1dG8mIGRvY3VtZW50TG9hZGVyID0gKmZyYW1lLmxvYWRl
cigpLmRvY3VtZW50TG9hZGVyKCk7CisKKyAgICAgICAgICAgIGZvciAoYXV0byYgc3VicmVzb3Vy
Y2VVUkwgOiBzdWJyZXNvdXJjZVVSTHMpIHsKICAgICAgICAgICAgICAgICBpZiAodW5pcXVlU3Vi
cmVzb3VyY2VzLmNvbnRhaW5zKHN1YnJlc291cmNlVVJMKSkKICAgICAgICAgICAgICAgICAgICAg
Y29udGludWU7CiAKICAgICAgICAgICAgICAgICB1bmlxdWVTdWJyZXNvdXJjZXMuYWRkKHN1YnJl
c291cmNlVVJMKTsKIAotICAgICAgICAgICAgICAgIGlmIChSZWZQdHI8QXJjaGl2ZVJlc291cmNl
PiByZXNvdXJjZSA9IGRvY3VtZW50TG9hZGVyLT5zdWJyZXNvdXJjZShzdWJyZXNvdXJjZVVSTCkp
IHsKLSAgICAgICAgICAgICAgICAgICAgc3VicmVzb3VyY2VzLmFwcGVuZChXVEZNb3ZlKHJlc291
cmNlKSk7CisgICAgICAgICAgICAgICAgaWYgKGF1dG8gcmVzb3VyY2UgPSBkb2N1bWVudExvYWRl
ci5zdWJyZXNvdXJjZShzdWJyZXNvdXJjZVVSTCkpIHsKKyAgICAgICAgICAgICAgICAgICAgc3Vi
cmVzb3VyY2VzLmFwcGVuZChyZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICAgICAgICAg
ICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgICAgfQogCkBAIC01MjgsMTAgKzUxNyw5
IEBAIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoY29u
c3QgU3RyaW5nJiBtYXJrdXBTdHJpbmcsIEZyCiAjaWYgRU5BQkxFKENBQ0hFX1BBUlRJVElPTklO
RykKICAgICAgICAgICAgICAgICByZXF1ZXN0LnNldERvbWFpbkZvckNhY2hlUGFydGl0aW9uKGZy
YW1lLmRvY3VtZW50KCktPnRvcE9yaWdpbigpLT5kb21haW5Gb3JDYWNoZVBhcnRpdGlvbigpKTsK
ICNlbmRpZgotICAgICAgICAgICAgICAgIENhY2hlZFJlc291cmNlKiBjYWNoZWRSZXNvdXJjZSA9
IE1lbW9yeUNhY2hlOjpzaW5nbGV0b24oKS5yZXNvdXJjZUZvclJlcXVlc3QocmVxdWVzdCwgZnJh
bWUucGFnZSgpLT5zZXNzaW9uSUQoKSk7Ci0gICAgICAgICAgICAgICAgaWYgKGNhY2hlZFJlc291
cmNlKSB7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBy
ZXNvdXJjZSA9IEFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKGNhY2hlZFJlc291cmNlLT5yZXNvdXJj
ZUJ1ZmZlcigpLCBzdWJyZXNvdXJjZVVSTCwgY2FjaGVkUmVzb3VyY2UtPnJlc3BvbnNlKCkpKSB7
Ci0gICAgICAgICAgICAgICAgICAgICAgICBzdWJyZXNvdXJjZXMuYXBwZW5kKFdURk1vdmUocmVz
b3VyY2UpKTsKKyAgICAgICAgICAgICAgICBpZiAoYXV0byogY2FjaGVkUmVzb3VyY2UgPSBNZW1v
cnlDYWNoZTo6c2luZ2xldG9uKCkucmVzb3VyY2VGb3JSZXF1ZXN0KHJlcXVlc3QsIGZyYW1lLnBh
Z2UoKS0+c2Vzc2lvbklEKCkpKSB7CisgICAgICAgICAgICAgICAgICAgIGlmIChhdXRvIHJlc291
cmNlID0gQXJjaGl2ZVJlc291cmNlOjpjcmVhdGUoY2FjaGVkUmVzb3VyY2UtPnJlc291cmNlQnVm
ZmVyKCksIHN1YnJlc291cmNlVVJMLCBjYWNoZWRSZXNvdXJjZS0+cmVzcG9uc2UoKSkpIHsKKyAg
ICAgICAgICAgICAgICAgICAgICAgIHN1YnJlc291cmNlcy5hcHBlbmQocmVzb3VyY2UucmVsZWFz
ZU5vbk51bGwoKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAg
ICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIH0KQEAgLTU0MywxNyArNTMxLDE3IEBAIFJl
ZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoY29uc3QgU3Ry
aW5nJiBtYXJrdXBTdHJpbmcsIEZyCiAgICAgfQogCiAgICAgLy8gQWRkIGZhdmljb24gaWYgb25l
IGV4aXN0cyBmb3IgdGhpcyBwYWdlLCBpZiB3ZSBhcmUgYXJjaGl2aW5nIHRoZSBlbnRpcmUgcGFn
ZS4KLSAgICBpZiAobm9kZXNTaXplICYmIG5vZGVzWzBdLT5pc0RvY3VtZW50Tm9kZSgpICYmIGlj
b25EYXRhYmFzZSgpLmlzRW5hYmxlZCgpKSB7Ci0gICAgICAgIGNvbnN0IFN0cmluZyYgaWNvblVS
TCA9IGljb25EYXRhYmFzZSgpLnN5bmNocm9ub3VzSWNvblVSTEZvclBhZ2VVUkwocmVzcG9uc2VV
UkwpOworICAgIGlmICghbm9kZXMuaXNFbXB0eSgpICYmIG5vZGVzWzBdLT5pc0RvY3VtZW50Tm9k
ZSgpICYmIGljb25EYXRhYmFzZSgpLmlzRW5hYmxlZCgpKSB7CisgICAgICAgIGF1dG8gaWNvblVS
TCA9IGljb25EYXRhYmFzZSgpLnN5bmNocm9ub3VzSWNvblVSTEZvclBhZ2VVUkwocmVzcG9uc2VV
UkwpOwogICAgICAgICBpZiAoIWljb25VUkwuaXNFbXB0eSgpICYmIGljb25EYXRhYmFzZSgpLnN5
bmNocm9ub3VzSWNvbkRhdGFLbm93bkZvckljb25VUkwoaWNvblVSTCkpIHsKLSAgICAgICAgICAg
IGlmIChJbWFnZSogaWNvbkltYWdlID0gaWNvbkRhdGFiYXNlKCkuc3luY2hyb25vdXNJY29uRm9y
UGFnZVVSTChyZXNwb25zZVVSTCwgSW50U2l6ZSgxNiwgMTYpKSkgeworICAgICAgICAgICAgaWYg
KGF1dG8qIGljb25JbWFnZSA9IGljb25EYXRhYmFzZSgpLnN5bmNocm9ub3VzSWNvbkZvclBhZ2VV
UkwocmVzcG9uc2VVUkwsIEludFNpemUoMTYsIDE2KSkpIHsKICAgICAgICAgICAgICAgICBpZiAo
YXV0byByZXNvdXJjZSA9IEFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKGljb25JbWFnZS0+ZGF0YSgp
LCBVUkwoUGFyc2VkVVJMU3RyaW5nLCBpY29uVVJMKSwgImltYWdlL3gtaWNvbiIsICIiLCAiIikp
Ci0gICAgICAgICAgICAgICAgICAgIHN1YnJlc291cmNlcy5hcHBlbmQoV1RGTW92ZShyZXNvdXJj
ZSkpOworICAgICAgICAgICAgICAgICAgICBzdWJyZXNvdXJjZXMuYXBwZW5kKHJlc291cmNlLnJl
bGVhc2VOb25OdWxsKCkpOwogICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgfQogCi0gICAg
cmV0dXJuIGNyZWF0ZShXVEZNb3ZlKG1haW5SZXNvdXJjZSksIFdURk1vdmUoc3VicmVzb3VyY2Vz
KSwgV1RGTW92ZShzdWJmcmFtZUFyY2hpdmVzKSk7CisgICAgcmV0dXJuIGNyZWF0ZShtYWluUmVz
b3VyY2UucmVsZWFzZU5vbk51bGwoKSwgV1RGTW92ZShzdWJyZXNvdXJjZXMpLCBXVEZNb3ZlKHN1
YmZyYW1lQXJjaGl2ZXMpKTsKIH0KIAogUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdl
YkFyY2hpdmU6OmNyZWF0ZUZyb21TZWxlY3Rpb24oRnJhbWUqIGZyYW1lKQpAQCAtNTYxLDcgKzU0
OSw3IEBAIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVG
cm9tU2VsZWN0aW9uKEZyYW1lKiBmcmFtZSkKICAgICBpZiAoIWZyYW1lKQogICAgICAgICByZXR1
cm4gbnVsbHB0cjsKIAotICAgIERvY3VtZW50KiBkb2N1bWVudCA9IGZyYW1lLT5kb2N1bWVudCgp
OworICAgIGF1dG8qIGRvY3VtZW50ID0gZnJhbWUtPmRvY3VtZW50KCk7CiAgICAgaWYgKCFkb2N1
bWVudCkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKQEAgLTU2OSwxMiArNTU3LDEwIEBAIFJl
ZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVGcm9tU2VsZWN0
aW9uKEZyYW1lKiBmcmFtZSkKICAgICBidWlsZGVyLmFwcGVuZChkb2N1bWVudFR5cGVTdHJpbmco
KmRvY3VtZW50KSk7CiAKICAgICBWZWN0b3I8Tm9kZSo+IG5vZGVMaXN0OwotICAgIFJlZlB0cjxS
YW5nZT4gc2VsZWN0aW9uUmFuZ2UgPSBmcmFtZS0+c2VsZWN0aW9uKCkudG9Ob3JtYWxpemVkUmFu
Z2UoKTsKLSAgICBpZiAoc2VsZWN0aW9uUmFuZ2UpCisgICAgaWYgKGF1dG8gc2VsZWN0aW9uUmFu
Z2UgPSBmcmFtZS0+c2VsZWN0aW9uKCkudG9Ob3JtYWxpemVkUmFuZ2UoKSkKICAgICAgICAgYnVp
bGRlci5hcHBlbmQoY3JlYXRlTWFya3VwKCpzZWxlY3Rpb25SYW5nZSwgJm5vZGVMaXN0LCBBbm5v
dGF0ZUZvckludGVyY2hhbmdlKSk7CiAKLSAgICBTdHJpbmcgbWFya3VwU3RyaW5nID0gYnVpbGRl
ci50b1N0cmluZygpOwotICAgIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBhcmNoaXZlID0gY3Jl
YXRlKG1hcmt1cFN0cmluZywgKmZyYW1lLCBub2RlTGlzdCwgbnVsbHB0cik7CisgICAgYXV0byBh
cmNoaXZlID0gY3JlYXRlKGJ1aWxkZXIudG9TdHJpbmcoKSwgKmZyYW1lLCBub2RlTGlzdCwgbnVs
bHB0cik7CiAgICAgCiAgICAgaWYgKCFkb2N1bWVudC0+aXNGcmFtZVNldCgpKQogICAgICAgICBy
ZXR1cm4gYXJjaGl2ZTsKQEAgLTU4NCw3ICs1NzAsMTEgQEAgUmVmUHRyPExlZ2FjeVdlYkFyY2hp
dmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZUZyb21TZWxlY3Rpb24oRnJhbWUqIGZyYW1lKQog
ICAgIFN0cmluZyBpZnJhbWVNYXJrdXAgPSAiPGlmcmFtZSBmcmFtZWJvcmRlcj1cIm5vXCIgbWFy
Z2lud2lkdGg9XCIwXCIgbWFyZ2luaGVpZ2h0PVwiMFwiIHdpZHRoPVwiOTglJVwiIGhlaWdodD1c
Ijk4JSVcIiBzcmM9XCIiICsgZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCktPnJlc3Bv
bnNlKCkudXJsKCkuc3RyaW5nKCkgKyAiXCI+PC9pZnJhbWU+IjsKICAgICBhdXRvIGlmcmFtZVJl
c291cmNlID0gQXJjaGl2ZVJlc291cmNlOjpjcmVhdGUodXRmOEJ1ZmZlcihpZnJhbWVNYXJrdXAp
LCBibGFua1VSTCgpLCAidGV4dC9odG1sIiwgIlVURi04IiwgU3RyaW5nKCkpOwogCi0gICAgcmV0
dXJuIGNyZWF0ZShXVEZNb3ZlKGlmcmFtZVJlc291cmNlKSwgVmVjdG9yPFJlZlB0cjxBcmNoaXZl
UmVzb3VyY2U+PigpLCBWZWN0b3I8UmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+PiB7IGFyY2hpdmUg
fSk7CisgICAgVmVjdG9yPFJlZjxMZWdhY3lXZWJBcmNoaXZlPj4gc3ViZnJhbWVBcmNoaXZlczsK
KyAgICBzdWJmcmFtZUFyY2hpdmVzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkoMSk7CisgICAgc3Vi
ZnJhbWVBcmNoaXZlcy51bmNoZWNrZWRBcHBlbmQoYXJjaGl2ZS5yZWxlYXNlTm9uTnVsbCgpKTsK
KworICAgIHJldHVybiBjcmVhdGUoaWZyYW1lUmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSwgeyB9
LCBXVEZNb3ZlKHN1YmZyYW1lQXJjaGl2ZXMpKTsKIH0KIAogfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvY2YvTGVnYWN5V2ViQXJjaGl2ZS5oIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2FyY2hpdmUvY2YvTGVnYWN5V2ViQXJjaGl2ZS5oCmluZGV4IDM1ZGRmM2My
YTU5YzA4NjMzYmRkOWIyMTM0N2IzNmY4ZDI3NjJjMWEuLjQ0NjdkMGQ2YTAzZTA4MDNhZTZiYTc1
NjM5NzZlYmU1MjJhMTQ5OGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNo
aXZlL2NmL0xlZ2FjeVdlYkFyY2hpdmUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJj
aGl2ZS9jZi9MZWdhY3lXZWJBcmNoaXZlLmgKQEAgLTM3LDIzICszNywyNiBAQCBjbGFzcyBGcmFt
ZTsKIGNsYXNzIE5vZGU7CiBjbGFzcyBSYW5nZTsKIAotY2xhc3MgTGVnYWN5V2ViQXJjaGl2ZSA6
IHB1YmxpYyBBcmNoaXZlIHsKK2NsYXNzIExlZ2FjeVdlYkFyY2hpdmUgZmluYWwgOiBwdWJsaWMg
QXJjaGl2ZSB7CiBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxMZWdhY3lX
ZWJBcmNoaXZlPiBjcmVhdGUoKTsKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmUHRyPExl
Z2FjeVdlYkFyY2hpdmU+IGNyZWF0ZShTaGFyZWRCdWZmZXImKTsKICAgICBXRUJDT1JFX0VYUE9S
VCBzdGF0aWMgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IGNyZWF0ZShjb25zdCBVUkwmLCBTaGFy
ZWRCdWZmZXImKTsKLSAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmUHRyPExlZ2FjeVdlYkFy
Y2hpdmU+IGNyZWF0ZShSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiYmIG1haW5SZXNvdXJjZSwgVmVj
dG9yPFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+PiYmIHN1YnJlc291cmNlcywgVmVjdG9yPFJlZlB0
cjxMZWdhY3lXZWJBcmNoaXZlPj4mJiBzdWJmcmFtZUFyY2hpdmVzKTsKKyAgICBXRUJDT1JFX0VY
UE9SVCBzdGF0aWMgUmVmPExlZ2FjeVdlYkFyY2hpdmU+IGNyZWF0ZShSZWY8QXJjaGl2ZVJlc291
cmNlPiYmIG1haW5SZXNvdXJjZSwgVmVjdG9yPFJlZjxBcmNoaXZlUmVzb3VyY2U+PiYmIHN1YnJl
c291cmNlcywgVmVjdG9yPFJlZjxMZWdhY3lXZWJBcmNoaXZlPj4mJiBzdWJmcmFtZUFyY2hpdmVz
KTsKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IGNy
ZWF0ZShOb2RlJiwgc3RkOjpmdW5jdGlvbjxib29sKEZyYW1lJik+IGZyYW1lRmlsdGVyID0gbnVs
bHB0cik7CiAgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZl
PiBjcmVhdGUoRnJhbWUmKTsKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmUHRyPExlZ2Fj
eVdlYkFyY2hpdmU+IGNyZWF0ZUZyb21TZWxlY3Rpb24oRnJhbWUqKTsKICAgICBXRUJDT1JFX0VY
UE9SVCBzdGF0aWMgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IGNyZWF0ZShSYW5nZSopOwogCi0g
ICAgVHlwZSB0eXBlKCkgY29uc3Qgb3ZlcnJpZGU7Ci0KICAgICBXRUJDT1JFX0VYUE9SVCBSZXRh
aW5QdHI8Q0ZEYXRhUmVmPiByYXdEYXRhUmVwcmVzZW50YXRpb24oKTsKIAogcHJpdmF0ZToKLSAg
ICBMZWdhY3lXZWJBcmNoaXZlKCkgeyB9CisgICAgTGVnYWN5V2ViQXJjaGl2ZSgpID0gZGVmYXVs
dDsKKworICAgIGJvb2wgc2hvdWxkTG9hZEZyb21BcmNoaXZlT25seSgpIGNvbnN0IGZpbmFsIHsg
cmV0dXJuIGZhbHNlOyB9CisgICAgYm9vbCBzaG91bGRPdmVycmlkZUJhc2VVUkwoKSBjb25zdCBm
aW5hbCB7IHJldHVybiBmYWxzZTsgfQorICAgIGJvb2wgc2hvdWxkVXNlTWFpblJlc291cmNlRW5j
b2RpbmcoKSBjb25zdCBmaW5hbCB7IHJldHVybiB0cnVlOyB9CisgICAgYm9vbCBzaG91bGRVc2VN
YWluUmVzb3VyY2VVUkwoKSBjb25zdCBmaW5hbCB7IHJldHVybiB0cnVlOyB9CiAKICAgICBlbnVt
IE1haW5SZXNvdXJjZVN0YXR1cyB7IFN1YnJlc291cmNlLCBNYWluUmVzb3VyY2UgfTsKIApAQCAt
NjIsNyArNjUsNyBAQCBwcml2YXRlOgogICAgIHN0YXRpYyBSZXNvdXJjZVJlc3BvbnNlIGNyZWF0
ZVJlc291cmNlUmVzcG9uc2VGcm9tTWFjQXJjaGl2ZWREYXRhKENGRGF0YVJlZik7CiAgICAgc3Rh
dGljIFJlc291cmNlUmVzcG9uc2UgY3JlYXRlUmVzb3VyY2VSZXNwb25zZUZyb21Qcm9wZXJ0eUxp
c3REYXRhKENGRGF0YVJlZiwgQ0ZTdHJpbmdSZWYgcmVzcG9uc2VEYXRhVHlwZSk7CiAgICAgc3Rh
dGljIFJldGFpblB0cjxDRkRhdGFSZWY+IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9u
KGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICBzdGF0aWMgUmV0YWluUHRyPENGRGljdGlv
bmFyeVJlZj4gY3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24oQXJjaGl2ZSopOworICAg
IHN0YXRpYyBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBjcmVhdGVQcm9wZXJ0eUxpc3RSZXBy
ZXNlbnRhdGlvbihBcmNoaXZlJik7CiAgICAgc3RhdGljIFJldGFpblB0cjxDRkRpY3Rpb25hcnlS
ZWY+IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKEFyY2hpdmVSZXNvdXJjZSosIE1h
aW5SZXNvdXJjZVN0YXR1cyk7CiAKICAgICBib29sIGV4dHJhY3QoQ0ZEaWN0aW9uYXJ5UmVmKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL21odG1sL01IVE1MQXJj
aGl2ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRNTEFyY2hp
dmUuY3BwCmluZGV4IGUxZjNhZDA2YTVmN2YyYjgwNTUzMTA0NWRhNGI4NmMyZDNjODJkZDMuLmE5
MjFiMDVlODQ2YTA1YTVhZmNlNjMwM2FhMThmOGJmMzA3MDlkYjQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL21odG1sL01IVE1MQXJjaGl2ZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvbWh0bWwvTUhUTUxBcmNoaXZlLmNwcApAQCAtMTIy
LDE1ICsxMjIsMTUgQEAgUmVmUHRyPE1IVE1MQXJjaGl2ZT4gTUhUTUxBcmNoaXZlOjpjcmVhdGUo
Y29uc3QgVVJMJiB1cmwsIFNoYXJlZEJ1ZmZlciYgZGF0YSkKICAgICAgICAgUmVmUHRyPE1IVE1M
QXJjaGl2ZT4gYXJjaGl2ZSA9IHBhcnNlci5mcmFtZUF0KGkpOwogICAgICAgICBmb3IgKHNpemVf
dCBqID0gMTsgaiA8IHBhcnNlci5mcmFtZUNvdW50KCk7ICsraikgewogICAgICAgICAgICAgaWYg
KGkgIT0gaikKLSAgICAgICAgICAgICAgICBhcmNoaXZlLT5hZGRTdWJmcmFtZUFyY2hpdmUocGFy
c2VyLmZyYW1lQXQoaikpOworICAgICAgICAgICAgICAgIGFyY2hpdmUtPmFkZFN1YmZyYW1lQXJj
aGl2ZSgqcGFyc2VyLmZyYW1lQXQoaikpOwogICAgICAgICB9CiAgICAgICAgIGZvciAoc2l6ZV90
IGogPSAwOyBqIDwgcGFyc2VyLnN1YlJlc291cmNlQ291bnQoKTsgKytqKQotICAgICAgICAgICAg
YXJjaGl2ZS0+YWRkU3VicmVzb3VyY2UocGFyc2VyLnN1YlJlc291cmNlQXQoaikpOworICAgICAg
ICAgICAgYXJjaGl2ZS0+YWRkU3VicmVzb3VyY2UoKnBhcnNlci5zdWJSZXNvdXJjZUF0KGopKTsK
ICAgICB9CiAgICAgcmV0dXJuIG1haW5BcmNoaXZlOwogfQogCi1QYXNzUmVmUHRyPFNoYXJlZEJ1
ZmZlcj4gTUhUTUxBcmNoaXZlOjpnZW5lcmF0ZU1IVE1MRGF0YShQYWdlKiBwYWdlKQorUmVmUHRy
PFNoYXJlZEJ1ZmZlcj4gTUhUTUxBcmNoaXZlOjpnZW5lcmF0ZU1IVE1MRGF0YShQYWdlKiBwYWdl
KQogewogICAgIFZlY3RvcjxQYWdlU2VyaWFsaXplcjo6UmVzb3VyY2U+IHJlc291cmNlczsKICAg
ICBQYWdlU2VyaWFsaXplciBwYWdlU2VyaWFsaXplcigmcmVzb3VyY2VzKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL21odG1sL01IVE1MQXJjaGl2ZS5oIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvbWh0bWwvTUhUTUxBcmNoaXZlLmgKaW5kZXggY2Ey
MDAwMzc5YmRmNDEyZjRlNDEyNGVhZjIxYWJhNjZhMTVlMzRiMi4uODUyNDY1OWFhYjIyMGRlMDc1
YzY3N2FiNzBmMTlhY2NjODgxOGRmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2FyY2hpdmUvbWh0bWwvTUhUTUxBcmNoaXZlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2FyY2hpdmUvbWh0bWwvTUhUTUxBcmNoaXZlLmgKQEAgLTQwLDIyICs0MCwyNCBAQCBjbGFzcyBN
SFRNTFBhcnNlcjsKIGNsYXNzIFBhZ2U7CiBjbGFzcyBTaGFyZWRCdWZmZXI7CiAKLWNsYXNzIE1I
VE1MQXJjaGl2ZSA6IHB1YmxpYyBBcmNoaXZlIHsKK2NsYXNzIE1IVE1MQXJjaGl2ZSBmaW5hbCA6
IHB1YmxpYyBBcmNoaXZlIHsKIHB1YmxpYzoKLSAgICBUeXBlIHR5cGUoKSBjb25zdCBvdmVycmlk
ZSB7IHJldHVybiBNSFRNTDsgfQotCiAgICAgc3RhdGljIFJlZjxNSFRNTEFyY2hpdmU+IGNyZWF0
ZSgpOwogICAgIHN0YXRpYyBSZWZQdHI8TUhUTUxBcmNoaXZlPiBjcmVhdGUoY29uc3QgVVJMJiwg
U2hhcmVkQnVmZmVyJik7CiAKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGdl
bmVyYXRlTUhUTUxEYXRhKFBhZ2UqKTsKKyAgICBzdGF0aWMgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4g
Z2VuZXJhdGVNSFRNTERhdGEoUGFnZSopOwogCiAgICAgdmlydHVhbCB+TUhUTUxBcmNoaXZlKCk7
CiAKIHByaXZhdGU6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBnZW5lcmF0
ZU1IVE1MRGF0YShQYWdlKiwgYm9vbCB1c2VCaW5hcnlFbmNvZGluZyk7Ci0KICAgICBmcmllbmQg
Y2xhc3MgTUhUTUxQYXJzZXI7CisKICAgICBNSFRNTEFyY2hpdmUoKTsKKworICAgIGJvb2wgc2hv
dWxkTG9hZEZyb21BcmNoaXZlT25seSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KKyAg
ICBib29sIHNob3VsZE92ZXJyaWRlQmFzZVVSTCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7
IH0KKyAgICBib29sIHNob3VsZFVzZU1haW5SZXNvdXJjZUVuY29kaW5nKCkgY29uc3QgZmluYWwg
eyByZXR1cm4gZmFsc2U7IH0KKyAgICBib29sIHNob3VsZFVzZU1haW5SZXNvdXJjZVVSTCgpIGNv
bnN0IGZpbmFsIHsgcmV0dXJuIGZhbHNlOyB9CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRNTFBh
cnNlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRNTFBhcnNl
ci5jcHAKaW5kZXggZjhhMDdlZGRhYTZhODMzMDA2YWUwMDY4MGM5N2ZkNzA5MWM2ZDljYS4uYjA0
MTRlYmM5NjE1NWIxNWJhMTRjNmYzZDU4ODk1ZjZmMzI3MDJhMiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvbWh0bWwvTUhUTUxQYXJzZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL21odG1sL01IVE1MUGFyc2VyLmNwcApAQCAtNzUsNyAr
NzUsNyBAQCBSZWZQdHI8TUhUTUxBcmNoaXZlPiBNSFRNTFBhcnNlcjo6cGFyc2VBcmNoaXZlV2l0
aEhlYWRlcihNSU1FSGVhZGVyKiBoZWFkZXIpCiAgICAgICAgIFJlZlB0cjxBcmNoaXZlUmVzb3Vy
Y2U+IHJlc291cmNlID0gcGFyc2VOZXh0UGFydCgqaGVhZGVyLCBTdHJpbmcoKSwgU3RyaW5nKCks
IGVuZE9mQXJjaGl2ZVJlYWNoZWQpOwogICAgICAgICBpZiAoIXJlc291cmNlKQogICAgICAgICAg
ICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgICAgIGFyY2hpdmUtPnNldE1haW5SZXNvdXJjZShyZXNv
dXJjZSk7CisgICAgICAgIGFyY2hpdmUtPnNldE1haW5SZXNvdXJjZShyZXNvdXJjZS5yZWxlYXNl
Tm9uTnVsbCgpKTsKICAgICAgICAgcmV0dXJuIGFyY2hpdmU7CiAgICAgfQogCkBAIC0xMDEsNyAr
MTAxLDcgQEAgUmVmUHRyPE1IVE1MQXJjaGl2ZT4gTUhUTUxQYXJzZXI6OnBhcnNlQXJjaGl2ZVdp
dGhIZWFkZXIoTUlNRUhlYWRlciogaGVhZGVyKQogICAgICAgICAgICAgLy8gVGhlIHRvcC1mcmFt
ZSBpcyB0aGUgZmlyc3QgZnJhbWUgZm91bmQsIHJlZ2FyZGxlc3Mgb2YgdGhlIG5lc3RpbmcgbGV2
ZWwuCiAgICAgICAgICAgICBpZiAoc3ViZnJhbWVBcmNoaXZlLT5tYWluUmVzb3VyY2UoKSkKICAg
ICAgICAgICAgICAgICBhZGRSZXNvdXJjZVRvQXJjaGl2ZShzdWJmcmFtZUFyY2hpdmUtPm1haW5S
ZXNvdXJjZSgpLCBhcmNoaXZlLmdldCgpKTsKLSAgICAgICAgICAgIGFyY2hpdmUtPmFkZFN1YmZy
YW1lQXJjaGl2ZShzdWJmcmFtZUFyY2hpdmUpOworICAgICAgICAgICAgYXJjaGl2ZS0+YWRkU3Vi
ZnJhbWVBcmNoaXZlKHN1YmZyYW1lQXJjaGl2ZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICAgICAg
ICAgIGNvbnRpbnVlOwogICAgICAgICB9CiAKQEAgLTEyNiwxMyArMTI2LDEzIEBAIHZvaWQgTUhU
TUxQYXJzZXI6OmFkZFJlc291cmNlVG9BcmNoaXZlKEFyY2hpdmVSZXNvdXJjZSogcmVzb3VyY2Us
IE1IVE1MQXJjaGl2ZSoKIAogICAgIC8vIFRoZSBmaXJzdCBkb2N1bWVudCBzdWl0YWJsZSByZXNv
dXJjZSBpcyB0aGUgbWFpbiBmcmFtZS4KICAgICBpZiAoIWFyY2hpdmUtPm1haW5SZXNvdXJjZSgp
KSB7Ci0gICAgICAgIGFyY2hpdmUtPnNldE1haW5SZXNvdXJjZShyZXNvdXJjZSk7CisgICAgICAg
IGFyY2hpdmUtPnNldE1haW5SZXNvdXJjZSgqcmVzb3VyY2UpOwogICAgICAgICBtX2ZyYW1lcy5h
cHBlbmQoYXJjaGl2ZSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKICAgICBSZWZQdHI8TUhU
TUxBcmNoaXZlPiBzdWJmcmFtZSA9IE1IVE1MQXJjaGl2ZTo6Y3JlYXRlKCk7Ci0gICAgc3ViZnJh
bWUtPnNldE1haW5SZXNvdXJjZShyZXNvdXJjZSk7CisgICAgc3ViZnJhbWUtPnNldE1haW5SZXNv
dXJjZSgqcmVzb3VyY2UpOwogICAgIG1fZnJhbWVzLmFwcGVuZChzdWJmcmFtZSk7CiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmNw
cAppbmRleCA4YmYwNjkxYWM0OTY2NTUxOGNmYThhYjVlOTExMDUwN2RlZDc3MDY5Li5hZjQwY2My
MDRhZDA0N2Y4NWMyMzQxN2NiY2U3ZjE5N2UzYmU2MjQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZENTU1N0eWxlU2hlZXQuY3BwCkBAIC0zLDcgKzMsNyBA
QAogICAgIENvcHlyaWdodCAoQykgMjAwMSBEaXJrIE11ZWxsZXIgKG11ZWxsZXJAa2RlLm9yZykK
ICAgICBDb3B5cmlnaHQgKEMpIDIwMDIgV2FsZG8gQmFzdGlhbiAoYmFzdGlhbkBrZGUub3JnKQog
ICAgIENvcHlyaWdodCAoQykgMjAwNiBTYW11ZWwgV2VpbmlnIChzYW0ud2VpbmlnQGdtYWlsLmNv
bSkKLSAgICBDb3B5cmlnaHQgKEMpIDIwMDQsIDIwMDUsIDIwMDYgQXBwbGUgSW5jLgorICAgIENv
cHlyaWdodCAoQykgMjAwNC0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KIAog
ICAgIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBp
dCBhbmQvb3IKICAgICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFy
eSBHZW5lcmFsIFB1YmxpYwpAQCAtMTksOSArMTksNiBAQAogICAgIGFsb25nIHdpdGggdGhpcyBs
aWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCiAgICAg
dGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBG
aWZ0aCBGbG9vciwKICAgICBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KLQotICAgIFRoaXMg
Y2xhc3MgcHJvdmlkZXMgYWxsIGZ1bmN0aW9uYWxpdHkgbmVlZGVkIGZvciBsb2FkaW5nIGltYWdl
cywgc3R5bGUgc2hlZXRzIGFuZCBodG1sCi0gICAgcGFnZXMgZnJvbSB0aGUgd2ViLiBJdCBoYXMg
YSBtZW1vcnkgY2FjaGUgZm9yIHRoZXNlIG9iamVjdHMuCiAqLwogCiAjaW5jbHVkZSAiY29uZmln
LmgiCkBAIC0xNTYsNyArMTUzLDcgQEAgdm9pZCBDYWNoZWRDU1NTdHlsZVNoZWV0OjpkZXN0cm95
RGVjb2RlZERhdGEoKQogICAgIHNldERlY29kZWRTaXplKDApOwogfQogCi1QYXNzUmVmUHRyPFN0
eWxlU2hlZXRDb250ZW50cz4gQ2FjaGVkQ1NTU3R5bGVTaGVldDo6cmVzdG9yZVBhcnNlZFN0eWxl
U2hlZXQoY29uc3QgQ1NTUGFyc2VyQ29udGV4dCYgY29udGV4dCwgQ2FjaGVQb2xpY3kgY2FjaGVQ
b2xpY3kpCitSZWZQdHI8U3R5bGVTaGVldENvbnRlbnRzPiBDYWNoZWRDU1NTdHlsZVNoZWV0Ojpy
ZXN0b3JlUGFyc2VkU3R5bGVTaGVldChjb25zdCBDU1NQYXJzZXJDb250ZXh0JiBjb250ZXh0LCBD
YWNoZVBvbGljeSBjYWNoZVBvbGljeSkKIHsKICAgICBpZiAoIW1fcGFyc2VkU3R5bGVTaGVldENh
Y2hlKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKQEAgLTE4MCw3ICsxNzcsNyBAQCBQYXNzUmVm
UHRyPFN0eWxlU2hlZXRDb250ZW50cz4gQ2FjaGVkQ1NTU3R5bGVTaGVldDo6cmVzdG9yZVBhcnNl
ZFN0eWxlU2hlZXQoY29ucwogCiB2b2lkIENhY2hlZENTU1N0eWxlU2hlZXQ6OnNhdmVQYXJzZWRT
dHlsZVNoZWV0KFJlZjxTdHlsZVNoZWV0Q29udGVudHM+JiYgc2hlZXQpCiB7Ci0gICAgQVNTRVJU
KHNoZWV0LmdldCgpLmlzQ2FjaGVhYmxlKCkpOworICAgIEFTU0VSVChzaGVldC0+aXNDYWNoZWFi
bGUoKSk7CiAKICAgICBpZiAobV9wYXJzZWRTdHlsZVNoZWV0Q2FjaGUpCiAgICAgICAgIG1fcGFy
c2VkU3R5bGVTaGVldENhY2hlLT5yZW1vdmVkRnJvbU1lbW9yeUNhY2hlKCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5oIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZENTU1N0eWxlU2hlZXQuaAppbmRleCAzYzhh
ZTI4ZGQyN2FlZjgwYWUyZGVlYjRhMzM2ZTc0ODU0ZTdlZjBjLi5jMzNhYTJlNDA4NTUzOGJjN2I0
NTZmNDE2MzljMmNjMTg3OWY4NzRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
Y2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9j
YWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmgKQEAgLTIsNyArMiw3IEBACiAgICAgQ29weXJpZ2h0
IChDKSAxOTk4IExhcnMgS25vbGwgKGtub2xsQG1waS1oZC5tcGcuZGUpCiAgICAgQ29weXJpZ2h0
IChDKSAyMDAxIERpcmsgTXVlbGxlciA8bXVlbGxlckBrZGUub3JnPgogICAgIENvcHlyaWdodCAo
QykgMjAwNiBTYW11ZWwgV2VpbmlnIChzYW0ud2VpbmlnQGdtYWlsLmNvbSkKLSAgICBDb3B5cmln
aHQgKEMpIDIwMDQsIDIwMDUsIDIwMDYsIDIwMDcsIDIwMDggQXBwbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICAgIENvcHlyaWdodCAoQykgMjAwNC0yMDE3IEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KIAogICAgIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3Ug
Y2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICAgICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1z
IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYwpAQCAtMTgsOSArMTgsNiBAQAogICAg
IGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBu
b3QsIHdyaXRlIHRvCiAgICAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEg
RnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKICAgICBCb3N0b24sIE1BIDAyMTEwLTEzMDEs
IFVTQS4KLQotICAgIFRoaXMgY2xhc3MgcHJvdmlkZXMgYWxsIGZ1bmN0aW9uYWxpdHkgbmVlZGVk
IGZvciBsb2FkaW5nIGltYWdlcywgc3R5bGUgc2hlZXRzIGFuZCBodG1sCi0gICAgcGFnZXMgZnJv
bSB0aGUgd2ViLiBJdCBoYXMgYSBtZW1vcnkgY2FjaGUgZm9yIHRoZXNlIG9iamVjdHMuCiAqLwog
CiAjcHJhZ21hIG9uY2UKQEAgLTI5LDQ0ICsyNiw0NCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKLSAgICBjbGFzcyBDYWNoZWRSZXNvdXJjZUNsaWVudDsKLSAgICBjbGFzcyBTdHlsZVNoZWV0
Q29udGVudHM7Ci0gICAgY2xhc3MgVGV4dFJlc291cmNlRGVjb2RlcjsKLSAgICBzdHJ1Y3QgQ1NT
UGFyc2VyQ29udGV4dDsKK2NsYXNzIFN0eWxlU2hlZXRDb250ZW50czsKK2NsYXNzIFRleHRSZXNv
dXJjZURlY29kZXI7CisKK3N0cnVjdCBDU1NQYXJzZXJDb250ZXh0OwogCi0gICAgY2xhc3MgQ2Fj
aGVkQ1NTU3R5bGVTaGVldCBmaW5hbCA6IHB1YmxpYyBDYWNoZWRSZXNvdXJjZSB7Ci0gICAgcHVi
bGljOgotICAgICAgICBDYWNoZWRDU1NTdHlsZVNoZWV0KENhY2hlZFJlc291cmNlUmVxdWVzdCYm
LCBTZXNzaW9uSUQpOwotICAgICAgICB2aXJ0dWFsIH5DYWNoZWRDU1NTdHlsZVNoZWV0KCk7Citj
bGFzcyBDYWNoZWRDU1NTdHlsZVNoZWV0IGZpbmFsIDogcHVibGljIENhY2hlZFJlc291cmNlIHsK
K3B1YmxpYzoKKyAgICBDYWNoZWRDU1NTdHlsZVNoZWV0KENhY2hlZFJlc291cmNlUmVxdWVzdCYm
LCBTZXNzaW9uSUQpOworICAgIHZpcnR1YWwgfkNhY2hlZENTU1N0eWxlU2hlZXQoKTsKIAotICAg
ICAgICBlbnVtIGNsYXNzIE1JTUVUeXBlQ2hlY2sgeyBTdHJpY3QsIExheCB9OwotICAgICAgICBj
b25zdCBTdHJpbmcgc2hlZXRUZXh0KE1JTUVUeXBlQ2hlY2sgPSBNSU1FVHlwZUNoZWNrOjpTdHJp
Y3QsIGJvb2wqIGhhc1ZhbGlkTUlNRVR5cGUgPSBudWxscHRyKSBjb25zdDsKKyAgICBlbnVtIGNs
YXNzIE1JTUVUeXBlQ2hlY2sgeyBTdHJpY3QsIExheCB9OworICAgIGNvbnN0IFN0cmluZyBzaGVl
dFRleHQoTUlNRVR5cGVDaGVjayA9IE1JTUVUeXBlQ2hlY2s6OlN0cmljdCwgYm9vbCogaGFzVmFs
aWRNSU1FVHlwZSA9IG51bGxwdHIpIGNvbnN0OwogCi0gICAgICAgIFBhc3NSZWZQdHI8U3R5bGVT
aGVldENvbnRlbnRzPiByZXN0b3JlUGFyc2VkU3R5bGVTaGVldChjb25zdCBDU1NQYXJzZXJDb250
ZXh0JiwgQ2FjaGVQb2xpY3kpOwotICAgICAgICB2b2lkIHNhdmVQYXJzZWRTdHlsZVNoZWV0KFJl
ZjxTdHlsZVNoZWV0Q29udGVudHM+JiYpOworICAgIFJlZlB0cjxTdHlsZVNoZWV0Q29udGVudHM+
IHJlc3RvcmVQYXJzZWRTdHlsZVNoZWV0KGNvbnN0IENTU1BhcnNlckNvbnRleHQmLCBDYWNoZVBv
bGljeSk7CisgICAgdm9pZCBzYXZlUGFyc2VkU3R5bGVTaGVldChSZWY8U3R5bGVTaGVldENvbnRl
bnRzPiYmKTsKIAotICAgIHByaXZhdGU6Ci0gICAgICAgIGJvb2wgY2FuVXNlU2hlZXQoTUlNRVR5
cGVDaGVjaywgYm9vbCogaGFzVmFsaWRNSU1FVHlwZSkgY29uc3Q7Ci0gICAgICAgIGJvb2wgbWF5
VHJ5UmVwbGFjZUVuY29kZWREYXRhKCkgY29uc3QgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQorcHJp
dmF0ZToKKyAgICBib29sIGNhblVzZVNoZWV0KE1JTUVUeXBlQ2hlY2ssIGJvb2wqIGhhc1ZhbGlk
TUlNRVR5cGUpIGNvbnN0OworICAgIGJvb2wgbWF5VHJ5UmVwbGFjZUVuY29kZWREYXRhKCkgY29u
c3QgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQogCi0gICAgICAgIHZvaWQgZGlkQWRkQ2xpZW50KENh
Y2hlZFJlc291cmNlQ2xpZW50JikgZmluYWw7CisgICAgdm9pZCBkaWRBZGRDbGllbnQoQ2FjaGVk
UmVzb3VyY2VDbGllbnQmKSBmaW5hbDsKIAotICAgICAgICB2b2lkIHNldEVuY29kaW5nKGNvbnN0
IFN0cmluZyYpIGZpbmFsOwotICAgICAgICBTdHJpbmcgZW5jb2RpbmcoKSBjb25zdCBmaW5hbDsK
LSAgICAgICAgY29uc3QgVGV4dFJlc291cmNlRGVjb2RlciogdGV4dFJlc291cmNlRGVjb2Rlcigp
IGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fZGVjb2Rlci5nZXQoKTsgfQotICAgICAgICB2b2lkIGZp
bmlzaExvYWRpbmcoU2hhcmVkQnVmZmVyKikgZmluYWw7Ci0gICAgICAgIHZvaWQgZGVzdHJveURl
Y29kZWREYXRhKCkgZmluYWw7CisgICAgdm9pZCBzZXRFbmNvZGluZyhjb25zdCBTdHJpbmcmKSBm
aW5hbDsKKyAgICBTdHJpbmcgZW5jb2RpbmcoKSBjb25zdCBmaW5hbDsKKyAgICBjb25zdCBUZXh0
UmVzb3VyY2VEZWNvZGVyKiB0ZXh0UmVzb3VyY2VEZWNvZGVyKCkgY29uc3QgZmluYWwgeyByZXR1
cm4gbV9kZWNvZGVyLmdldCgpOyB9CisgICAgdm9pZCBmaW5pc2hMb2FkaW5nKFNoYXJlZEJ1ZmZl
ciopIGZpbmFsOworICAgIHZvaWQgZGVzdHJveURlY29kZWREYXRhKCkgZmluYWw7CiAKLSAgICAg
ICAgdm9pZCBzZXRCb2R5RGF0YUZyb20oY29uc3QgQ2FjaGVkUmVzb3VyY2UmKSBmaW5hbDsKKyAg
ICB2b2lkIHNldEJvZHlEYXRhRnJvbShjb25zdCBDYWNoZWRSZXNvdXJjZSYpIGZpbmFsOwogCi0g
ICAgcHJvdGVjdGVkOgotICAgICAgICB2b2lkIGNoZWNrTm90aWZ5KCkgZmluYWw7Citwcm90ZWN0
ZWQ6CisgICAgdm9pZCBjaGVja05vdGlmeSgpIGZpbmFsOwogCi0gICAgICAgIFJlZlB0cjxUZXh0
UmVzb3VyY2VEZWNvZGVyPiBtX2RlY29kZXI7Ci0gICAgICAgIFN0cmluZyBtX2RlY29kZWRTaGVl
dFRleHQ7CisgICAgUmVmUHRyPFRleHRSZXNvdXJjZURlY29kZXI+IG1fZGVjb2RlcjsKKyAgICBT
dHJpbmcgbV9kZWNvZGVkU2hlZXRUZXh0OwogCi0gICAgICAgIFJlZlB0cjxTdHlsZVNoZWV0Q29u
dGVudHM+IG1fcGFyc2VkU3R5bGVTaGVldENhY2hlOwotICAgIH07CisgICAgUmVmUHRyPFN0eWxl
U2hlZXRDb250ZW50cz4gbV9wYXJzZWRTdHlsZVNoZWV0Q2FjaGU7Cit9OwogCiB9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9D
YWNoZWRSZXNvdXJjZVJlcXVlc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0Nh
Y2hlZFJlc291cmNlUmVxdWVzdC5jcHAKaW5kZXggNDczYWNkNTlmMDM0YTExMmJlZTY0MzUxNWQ2
Y2IyOWI1YjUwMTU0Yi4uNmQwYzIyMTE5YWUzNGIxY2QwNGZhM2YxMGE1MzQ2ZWY2MWIwNjI1ZSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVx
dWVzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNl
UmVxdWVzdC5jcHAKQEAgLTU5LDE1ICs1OSwxNyBAQCBTdHJpbmcgQ2FjaGVkUmVzb3VyY2VSZXF1
ZXN0OjpzcGxpdEZyYWdtZW50SWRlbnRpZmllckZyb21SZXF1ZXN0VVJMKFJlc291cmNlUmVxdQog
ICAgIHJldHVybiBmcmFnbWVudElkZW50aWZpZXI7CiB9CiAKLXZvaWQgQ2FjaGVkUmVzb3VyY2VS
ZXF1ZXN0OjpzZXRJbml0aWF0b3IoUGFzc1JlZlB0cjxFbGVtZW50PiBlbGVtZW50KQordm9pZCBD
YWNoZWRSZXNvdXJjZVJlcXVlc3Q6OnNldEluaXRpYXRvcihFbGVtZW50JiBlbGVtZW50KQogewot
ICAgIEFTU0VSVCghbV9pbml0aWF0b3JFbGVtZW50ICYmIG1faW5pdGlhdG9yTmFtZS5pc0VtcHR5
KCkpOwotICAgIG1faW5pdGlhdG9yRWxlbWVudCA9IGVsZW1lbnQ7CisgICAgQVNTRVJUKCFtX2lu
aXRpYXRvckVsZW1lbnQpOworICAgIEFTU0VSVChtX2luaXRpYXRvck5hbWUuaXNFbXB0eSgpKTsK
KyAgICBtX2luaXRpYXRvckVsZW1lbnQgPSAmZWxlbWVudDsKIH0KIAogdm9pZCBDYWNoZWRSZXNv
dXJjZVJlcXVlc3Q6OnNldEluaXRpYXRvcihjb25zdCBBdG9taWNTdHJpbmcmIG5hbWUpCiB7Ci0g
ICAgQVNTRVJUKCFtX2luaXRpYXRvckVsZW1lbnQgJiYgbV9pbml0aWF0b3JOYW1lLmlzRW1wdHko
KSk7CisgICAgQVNTRVJUKCFtX2luaXRpYXRvckVsZW1lbnQpOworICAgIEFTU0VSVChtX2luaXRp
YXRvck5hbWUuaXNFbXB0eSgpKTsKICAgICBtX2luaXRpYXRvck5hbWUgPSBuYW1lOwogfQogCkBA
IC0yMDksMTAgKzIxMSwxMiBAQCB2b2lkIENhY2hlZFJlc291cmNlUmVxdWVzdDo6cmVtb3ZlRnJh
Z21lbnRJZGVudGlmaWVySWZOZWVkZWQoKQogfQogCiAjaWYgRU5BQkxFKENPTlRFTlRfRVhURU5T
SU9OUykKKwogdm9pZCBDYWNoZWRSZXNvdXJjZVJlcXVlc3Q6OmFwcGx5QmxvY2tlZFN0YXR1cyhj
b25zdCBDb250ZW50RXh0ZW5zaW9uczo6QmxvY2tlZFN0YXR1cyYgYmxvY2tlZFN0YXR1cykKIHsK
ICAgICBDb250ZW50RXh0ZW5zaW9uczo6YXBwbHlCbG9ja2VkU3RhdHVzVG9SZXF1ZXN0KGJsb2Nr
ZWRTdGF0dXMsIG1fcmVzb3VyY2VSZXF1ZXN0KTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgQ2FjaGVk
UmVzb3VyY2VSZXF1ZXN0Ojp1cGRhdGVSZWZlcnJlck9yaWdpbkFuZFVzZXJBZ2VudEhlYWRlcnMo
RnJhbWVMb2FkZXImIGZyYW1lTG9hZGVyLCBSZWZlcnJlclBvbGljeSBkZWZhdWx0UG9saWN5KQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVx
dWVzdC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVz
dC5oCmluZGV4IDBlOGE0YzNmYjkzYmU1MTMyOTRkNGYwNDVlOTllZjlhZTcxMDc2MDAuLmVlZWQx
YTFmZmY0NTZmMmZjMzEzNjJiY2U0YWM2ZmZjODI3ZGZiNjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3QuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmgKQEAgLTU4LDcgKzU4
LDcgQEAgcHVibGljOgogICAgIGNvbnN0IFJlc291cmNlTG9hZGVyT3B0aW9ucyYgb3B0aW9ucygp
IGNvbnN0IHsgcmV0dXJuIG1fb3B0aW9uczsgfQogICAgIHZvaWQgc2V0T3B0aW9ucyhjb25zdCBS
ZXNvdXJjZUxvYWRlck9wdGlvbnMmIG9wdGlvbnMpIHsgbV9vcHRpb25zID0gb3B0aW9uczsgfQog
ICAgIGNvbnN0IHN0ZDo6b3B0aW9uYWw8UmVzb3VyY2VMb2FkUHJpb3JpdHk+JiBwcmlvcml0eSgp
IGNvbnN0IHsgcmV0dXJuIG1fcHJpb3JpdHk7IH0KLSAgICB2b2lkIHNldEluaXRpYXRvcihQYXNz
UmVmUHRyPEVsZW1lbnQ+KTsKKyAgICB2b2lkIHNldEluaXRpYXRvcihFbGVtZW50Jik7CiAgICAg
dm9pZCBzZXRJbml0aWF0b3IoY29uc3QgQXRvbWljU3RyaW5nJiBuYW1lKTsKICAgICBjb25zdCBB
dG9taWNTdHJpbmcmIGluaXRpYXRvck5hbWUoKSBjb25zdDsKICAgICBib29sIGFsbG93c0NhY2hp
bmcoKSBjb25zdCB7IHJldHVybiBtX29wdGlvbnMuY2FjaGluZ1BvbGljeSA9PSBDYWNoaW5nUG9s
aWN5OjpBbGxvd0NhY2hpbmc7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9j
b2NvYS9EaXNrQ2FjaGVNb25pdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY29jb2EvRGlz
a0NhY2hlTW9uaXRvci5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4NWRhZWM3MGEy
MDljNzJkZWM5NmIyZGFmY2I0Yzc3NThkYmNlMjdkLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jb2NvYS9EaXNrQ2Fj
aGVNb25pdG9yLmgKKysrIC9kZXYvbnVsbApAQCAtMSw2MiArMCwwIEBACi0vKgotICogQ29weXJp
Z2h0IChDKSAyMDE0IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
Ci0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAq
Ci0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAq
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQot
I3ByYWdtYSBvbmNlCi0KLSNpbmNsdWRlICJSZXNvdXJjZVJlcXVlc3QuaCIKLSNpbmNsdWRlICJT
ZXNzaW9uSUQuaCIKLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgotCi10eXBlZGVmIGNvbnN0
IHN0cnVjdCBfQ0ZDYWNoZWRVUkxSZXNwb25zZSogQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZjsKLQot
bmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBTaGFyZWRCdWZmZXI7Ci0KLWNsYXNzIERpc2tD
YWNoZU1vbml0b3IgewotcHVibGljOgotICAgIHN0YXRpYyB2b2lkIG1vbml0b3JGaWxlQmFja2lu
Z1N0b3JlQ3JlYXRpb24oY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgU2Vzc2lvbklELCBDRkNhY2hl
ZFVSTFJlc3BvbnNlUmVmKTsKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IHRy
eUdldEZpbGVCYWNrZWRTaGFyZWRCdWZmZXJGcm9tQ0ZVUkxDYWNoZWRSZXNwb25zZShDRkNhY2hl
ZFVSTFJlc3BvbnNlUmVmKTsKLSAgICB2aXJ0dWFsIH5EaXNrQ2FjaGVNb25pdG9yKCkgeyB9Ci0K
LXByb3RlY3RlZDoKLSAgICBEaXNrQ2FjaGVNb25pdG9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYs
IFNlc3Npb25JRCwgQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZik7Ci0KLSAgICB2aXJ0dWFsIHZvaWQg
cmVzb3VyY2VCZWNhbWVGaWxlQmFja2VkKFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPik7Ci0KLSAg
ICBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlc291cmNlUmVxdWVzdCgpIGNvbnN0IHsgcmV0dXJu
IG1fcmVzb3VyY2VSZXF1ZXN0OyB9Ci0gICAgU2Vzc2lvbklEIHNlc3Npb25JRCgpIGNvbnN0IHsg
cmV0dXJuIG1fc2Vzc2lvbklEOyB9Ci0KLXByaXZhdGU6Ci0gICAgUmVzb3VyY2VSZXF1ZXN0IG1f
cmVzb3VyY2VSZXF1ZXN0OwotICAgIFNlc3Npb25JRCBtX3Nlc3Npb25JRDsKLX07Ci0KLSNpZiAo
UExBVEZPUk0oSU9TKSAmJiBfX0lQSE9ORV9PU19WRVJTSU9OX01JTl9SRVFVSVJFRCA8IDgwMDAw
KSB8fCAoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEIDwg
MTA5MCkKLXZvaWQgRGlza0NhY2hlTW9uaXRvcjo6bW9uaXRvckZpbGVCYWNraW5nU3RvcmVDcmVh
dGlvbihjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBTZXNzaW9uSUQsIENGQ2FjaGVkVVJMUmVzcG9u
c2VSZWYpIHsgfQotUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IERpc2tDYWNoZU1vbml0b3I6OnRy
eUdldEZpbGVCYWNrZWRTaGFyZWRCdWZmZXJGcm9tQ0ZVUkxDYWNoZWRSZXNwb25zZShDRkNhY2hl
ZFVSTFJlc3BvbnNlUmVmKSB7IHJldHVybiBudWxscHRyOyB9Ci0jZW5kaWYKLQotfSAvLyBuYW1l
c3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY29jb2EvRGlz
a0NhY2hlTW9uaXRvckNvY29hLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY29jb2EvRGlza0Nh
Y2hlTW9uaXRvckNvY29hLmgKaW5kZXggMTg2YzM0YWY5N2ZiZWViMzhmNjQzZDQxNzI3ZjE0OGY1
MTZhYWE2ZC4uNjMwNGYxZjA2ZWQwMWFjMGRjZmY4ZDNkYjNiNjUxNzdmMWY3OTIxZSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NvY29hL0Rpc2tDYWNoZU1vbml0b3JDb2NvYS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jb2NvYS9EaXNrQ2FjaGVNb25pdG9yQ29jb2Eu
aApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTQgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDE0LTIwMTcgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBA
IC0yNyw3ICsyNyw2IEBACiAKICNpbmNsdWRlICJSZXNvdXJjZVJlcXVlc3QuaCIKICNpbmNsdWRl
ICJTZXNzaW9uSUQuaCIKLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogCiB0eXBlZGVmIGNv
bnN0IHN0cnVjdCBfQ0ZDYWNoZWRVUkxSZXNwb25zZSogQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZjsK
IApAQCAtMzUsMjEgKzM0LDE5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgU2hhcmVk
QnVmZmVyOwogCi1jbGFzcyBXRUJDT1JFX0VYUE9SVCBEaXNrQ2FjaGVNb25pdG9yIHsKK2NsYXNz
IERpc2tDYWNoZU1vbml0b3IgewogcHVibGljOgogICAgIHN0YXRpYyB2b2lkIG1vbml0b3JGaWxl
QmFja2luZ1N0b3JlQ3JlYXRpb24oY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgU2Vzc2lvbklELCBD
RkNhY2hlZFVSTFJlc3BvbnNlUmVmKTsKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxTaGFyZWRCdWZm
ZXI+IHRyeUdldEZpbGVCYWNrZWRTaGFyZWRCdWZmZXJGcm9tQ0ZVUkxDYWNoZWRSZXNwb25zZShD
RkNhY2hlZFVSTFJlc3BvbnNlUmVmKTsKLSAgICB2aXJ0dWFsIH5EaXNrQ2FjaGVNb25pdG9yKCkg
eyB9CisgICAgc3RhdGljIFJlZlB0cjxTaGFyZWRCdWZmZXI+IHRyeUdldEZpbGVCYWNrZWRTaGFy
ZWRCdWZmZXJGcm9tQ0ZVUkxDYWNoZWRSZXNwb25zZShDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKTsK
IAotcHJvdGVjdGVkOgotICAgIFdFQkNPUkVfRVhQT1JUIERpc2tDYWNoZU1vbml0b3IoY29uc3Qg
UmVzb3VyY2VSZXF1ZXN0JiwgU2Vzc2lvbklELCBDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKTsKK3By
aXZhdGU6CisgICAgRGlza0NhY2hlTW9uaXRvcihjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBTZXNz
aW9uSUQsIENGQ2FjaGVkVVJMUmVzcG9uc2VSZWYpOwogCi0gICAgdmlydHVhbCB2b2lkIHJlc291
cmNlQmVjYW1lRmlsZUJhY2tlZChTaGFyZWRCdWZmZXImKTsKKyAgICB2b2lkIHJlc291cmNlQmVj
YW1lRmlsZUJhY2tlZChTaGFyZWRCdWZmZXImKTsKIAogICAgIGNvbnN0IFJlc291cmNlUmVxdWVz
dCYgcmVzb3VyY2VSZXF1ZXN0KCkgY29uc3QgeyByZXR1cm4gbV9yZXNvdXJjZVJlcXVlc3Q7IH0K
ICAgICBTZXNzaW9uSUQgc2Vzc2lvbklEKCkgY29uc3QgeyByZXR1cm4gbV9zZXNzaW9uSUQ7IH0K
IAotcHJpdmF0ZToKICAgICBSZXNvdXJjZVJlcXVlc3QgbV9yZXNvdXJjZVJlcXVlc3Q7CiAgICAg
U2Vzc2lvbklEIG1fc2Vzc2lvbklEOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9jb2NvYS9EaXNrQ2FjaGVNb25pdG9yQ29jb2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvckNvY29hLm1tCmluZGV4IDY4NTgwMzYwYjhlYmNkY2Fj
YThhM2U5Mzg0OThhMTk3NTUyZGMxNmEuLjZhYzQ1YTE2ZmU5NmMzOGE3MjkyOGMxOWM1NWRjMWVl
M2NjZWFhNGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jb2NvYS9EaXNrQ2Fj
aGVNb25pdG9yQ29jb2EubW0KKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NvY29hL0Rpc2tD
YWNoZU1vbml0b3JDb2NvYS5tbQpAQCAtMjksMTEgKzI5LDggQEAKICNpbXBvcnQgIkNGTmV0d29y
a1NQSS5oIgogI2ltcG9ydCAiQ2FjaGVkUmVzb3VyY2UuaCIKICNpbXBvcnQgIk1lbW9yeUNhY2hl
LmgiCi0jaW1wb3J0ICJSZXNvdXJjZVJlcXVlc3QuaCIKLSNpbXBvcnQgIlNlc3Npb25JRC5oIgog
I2ltcG9ydCAiU2hhcmVkQnVmZmVyLmgiCiAjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5oPgotI2lt
cG9ydCA8d3RmL1Bhc3NSZWZQdHIuaD4KICNpbXBvcnQgPHd0Zi9SZWZQdHIuaD4KIAogI2lmIFVT
RShXRUJfVEhSRUFEKQpAQCAtNDUsOSArNDIsOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAvLyBU
aGUgbWF4aW11bSBudW1iZXIgb2Ygc2Vjb25kcyB3ZSdsbCB0cnkgdG8gd2FpdCBmb3IgYSByZXNv
dXJjZSB0byBiZSBkaXNrIGNhY2hlZCBiZWZvcmUgd2UgZm9yZ2V0IHRoZSByZXF1ZXN0Lgogc3Rh
dGljIGNvbnN0IGRvdWJsZSBkaXNrQ2FjaGVNb25pdG9yVGltZW91dCA9IDIwOwogCi1QYXNzUmVm
UHRyPFNoYXJlZEJ1ZmZlcj4gRGlza0NhY2hlTW9uaXRvcjo6dHJ5R2V0RmlsZUJhY2tlZFNoYXJl
ZEJ1ZmZlckZyb21DRlVSTENhY2hlZFJlc3BvbnNlKENGQ2FjaGVkVVJMUmVzcG9uc2VSZWYgY2Fj
aGVkUmVzcG9uc2UpCitSZWZQdHI8U2hhcmVkQnVmZmVyPiBEaXNrQ2FjaGVNb25pdG9yOjp0cnlH
ZXRGaWxlQmFja2VkU2hhcmVkQnVmZmVyRnJvbUNGVVJMQ2FjaGVkUmVzcG9uc2UoQ0ZDYWNoZWRV
UkxSZXNwb25zZVJlZiBjYWNoZWRSZXNwb25zZSkKIHsKLSAgICBDRkRhdGFSZWYgZGF0YSA9IF9D
RkNhY2hlZFVSTFJlc3BvbnNlR2V0TWVtTWFwcGVkRGF0YShjYWNoZWRSZXNwb25zZSk7CisgICAg
YXV0byBkYXRhID0gX0NGQ2FjaGVkVVJMUmVzcG9uc2VHZXRNZW1NYXBwZWREYXRhKGNhY2hlZFJl
c3BvbnNlKTsKICAgICBpZiAoIWRhdGEpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCkBAIC04
Nyw4ICs4NCw3IEBAIERpc2tDYWNoZU1vbml0b3I6OkRpc2tDYWNoZU1vbml0b3IoY29uc3QgUmVz
b3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBTZXNzaW9uSUQgc2VzCiAgICAgZGlzcGF0Y2hfYWZ0ZXIo
ZGlzcGF0Y2hfdGltZShESVNQQVRDSF9USU1FX05PVywgTlNFQ19QRVJfU0VDICogZGlza0NhY2hl
TW9uaXRvclRpbWVvdXQpLCBkaXNwYXRjaF9nZXRfbWFpbl9xdWV1ZSgpLCBjYW5jZWxNb25pdG9y
QmxvY2tUb1J1bik7CiAKICAgICAvLyBTZXQgdXAgdGhlIGRpc2sgY2FjaGluZyBjYWxsYmFjayB0
byBjcmVhdGUgdGhlIFNoYXJlYWJsZVJlc291cmNlIGFuZCBzZW5kIGl0IHRvIHRoZSBXZWJQcm9j
ZXNzLgotICAgIENGQ2FjaGVkVVJMUmVzcG9uc2VDYWxsQmFja0Jsb2NrIGJsb2NrID0gXihDRkNh
Y2hlZFVSTFJlc3BvbnNlUmVmIGNhY2hlZFJlc3BvbnNlKQotICAgIHsKKyAgICBhdXRvIGJsb2Nr
ID0gXihDRkNhY2hlZFVSTFJlc3BvbnNlUmVmIGNhY2hlZFJlc3BvbnNlKSB7CiAgICAgICAgIEFT
U0VSVChpc01haW5UaHJlYWQoKSk7CiAgICAgICAgIC8vIElmIHRoZSBtb25pdG9yIGlzbid0IHRo
ZXJlIHRoZW4gaXQgdGltZWQgb3V0IGJlZm9yZSB0aGlzIHJlc291cmNlIHdhcyBjYWNoZWQgdG8g
ZGlzay4KICAgICAgICAgaWYgKCFyYXdNb25pdG9yKQpAQCAtOTcsNyArOTMsNyBAQCBEaXNrQ2Fj
aGVNb25pdG9yOjpEaXNrQ2FjaGVNb25pdG9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVz
dCwgU2Vzc2lvbklEIHNlcwogICAgICAgICBhdXRvIG1vbml0b3IgPSBzdGQ6OnVuaXF1ZV9wdHI8
RGlza0NhY2hlTW9uaXRvcj4ocmF3TW9uaXRvcik7IC8vIEJhbGFuY2VkIGJ5ICJuZXcgRGlza0Nh
Y2hlTW9uaXRvciIgaW4gbW9uaXRvckZpbGVCYWNraW5nU3RvcmVDcmVhdGlvbi4KICAgICAgICAg
cmF3TW9uaXRvciA9IG51bGxwdHI7CiAKLSAgICAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZmls
ZUJhY2tlZEJ1ZmZlciA9IERpc2tDYWNoZU1vbml0b3I6OnRyeUdldEZpbGVCYWNrZWRTaGFyZWRC
dWZmZXJGcm9tQ0ZVUkxDYWNoZWRSZXNwb25zZShjYWNoZWRSZXNwb25zZSk7CisgICAgICAgIGF1
dG8gZmlsZUJhY2tlZEJ1ZmZlciA9IERpc2tDYWNoZU1vbml0b3I6OnRyeUdldEZpbGVCYWNrZWRT
aGFyZWRCdWZmZXJGcm9tQ0ZVUkxDYWNoZWRSZXNwb25zZShjYWNoZWRSZXNwb25zZSk7CiAgICAg
ICAgIGlmICghZmlsZUJhY2tlZEJ1ZmZlcikKICAgICAgICAgICAgIHJldHVybjsKIApAQCAtMTA1
LDggKzEwMSw3IEBAIERpc2tDYWNoZU1vbml0b3I6OkRpc2tDYWNoZU1vbml0b3IoY29uc3QgUmVz
b3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBTZXNzaW9uSUQgc2VzCiAgICAgfTsKIAogI2lmIFVTRShX
RUJfVEhSRUFEKQotICAgIENGQ2FjaGVkVVJMUmVzcG9uc2VDYWxsQmFja0Jsb2NrIGJsb2NrVG9S
dW4gPSBeKENGQ2FjaGVkVVJMUmVzcG9uc2VSZWYgcmVzcG9uc2UpCi0gICAgeworICAgIGF1dG8g
YmxvY2tUb1J1biA9IF4oQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZiByZXNwb25zZSkgewogICAgICAg
ICBDRlJldGFpbihyZXNwb25zZSk7CiAgICAgICAgIFdlYlRocmVhZFJ1biheewogICAgICAgICAg
ICAgYmxvY2socmVzcG9uc2UpOwpAQCAtMTE0LDE0ICsxMDksMTQgQEAgRGlza0NhY2hlTW9uaXRv
cjo6RGlza0NhY2hlTW9uaXRvcihjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFNlc3Np
b25JRCBzZXMKICAgICAgICAgfSk7CiAgICAgfTsKICNlbHNlCi0gICAgQ0ZDYWNoZWRVUkxSZXNw
b25zZUNhbGxCYWNrQmxvY2sgYmxvY2tUb1J1biA9IGJsb2NrOworICAgIGF1dG8gYmxvY2tUb1J1
biA9IGJsb2NrOwogI2VuZGlmCiAgICAgX0NGQ2FjaGVkVVJMUmVzcG9uc2VTZXRCZWNhbWVGaWxl
QmFja2VkQ2FsbEJhY2tCbG9jayhjYWNoZWRSZXNwb25zZSwgYmxvY2tUb1J1biwgZGlzcGF0Y2hf
Z2V0X21haW5fcXVldWUoKSk7CiB9CiAKIHZvaWQgRGlza0NhY2hlTW9uaXRvcjo6cmVzb3VyY2VC
ZWNhbWVGaWxlQmFja2VkKFNoYXJlZEJ1ZmZlciYgZmlsZUJhY2tlZEJ1ZmZlcikKIHsKLSAgICBD
YWNoZWRSZXNvdXJjZSogcmVzb3VyY2UgPSBNZW1vcnlDYWNoZTo6c2luZ2xldG9uKCkucmVzb3Vy
Y2VGb3JSZXF1ZXN0KG1fcmVzb3VyY2VSZXF1ZXN0LCBtX3Nlc3Npb25JRCk7CisgICAgYXV0byog
cmVzb3VyY2UgPSBNZW1vcnlDYWNoZTo6c2luZ2xldG9uKCkucmVzb3VyY2VGb3JSZXF1ZXN0KG1f
cmVzb3VyY2VSZXF1ZXN0LCBtX3Nlc3Npb25JRCk7CiAgICAgaWYgKCFyZXNvdXJjZSkKICAgICAg
ICAgcmV0dXJuOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29u
RGF0YWJhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmNw
cAppbmRleCBlZTQzN2U4NjI4ZWJmNGU4NjMyN2NjNzcwMzBmNWY2OTRlMzBiYjJkLi5kY2NlMGE1
YzNjZDgxNmNjODQ3YmM3YWZlMmJhMjE2N2FjZDA4ODBjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9pY29uL0ljb25EYXRhYmFzZS5jcHAKQEAgLTUzMyw3ICs1MzMsNyBAQCB2b2lkIEljb25E
YXRhYmFzZTo6cGVyZm9ybVJlbGVhc2VJY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIHBhZ2VV
UkxPcmlnaW5hbCwgaQogICAgIGRlbGV0ZSBwYWdlUmVjb3JkOwogfQogCi12b2lkIEljb25EYXRh
YmFzZTo6c2V0SWNvbkRhdGFGb3JJY29uVVJMKFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBkYXRh
T3JpZ2luYWwsIGNvbnN0IFN0cmluZyYgaWNvblVSTE9yaWdpbmFsKQordm9pZCBJY29uRGF0YWJh
c2U6OnNldEljb25EYXRhRm9ySWNvblVSTChTaGFyZWRCdWZmZXIqIGRhdGFPcmlnaW5hbCwgY29u
c3QgU3RyaW5nJiBpY29uVVJMT3JpZ2luYWwpCiB7ICAgIAogICAgIEFTU0VSVF9OT1RfU1lOQ19U
SFJFQUQoKTsKICAgICAKQEAgLTU0Miw3ICs1NDIsNyBAQCB2b2lkIEljb25EYXRhYmFzZTo6c2V0
SWNvbkRhdGFGb3JJY29uVVJMKFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBkYXRhT3JpZ2luYWws
CiAgICAgaWYgKCFpc09wZW4oKSB8fCBpY29uVVJMT3JpZ2luYWwuaXNFbXB0eSgpKQogICAgICAg
ICByZXR1cm47CiAgICAgCi0gICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZGF0YSA9IGRhdGFPcmln
aW5hbCA/IGRhdGFPcmlnaW5hbC0+Y29weSgpIDogUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+KG51
bGxwdHIpOworICAgIGF1dG8gZGF0YSA9IGRhdGFPcmlnaW5hbCA/IFJlZlB0cjxTaGFyZWRCdWZm
ZXI+IHsgZGF0YU9yaWdpbmFsLT5jb3B5KCkgfSA6IG51bGxwdHI7CiAgICAgU3RyaW5nIGljb25V
UkwgPSBpY29uVVJMT3JpZ2luYWwuaXNvbGF0ZWRDb3B5KCk7CiAgICAgCiAgICAgVmVjdG9yPFN0
cmluZz4gcGFnZVVSTHM7CkBAIC04ODUsMTggKzg4NSwxNyBAQCBTdHJpbmcgSWNvbkRhdGFiYXNl
OjpkZWZhdWx0RGF0YWJhc2VGaWxlbmFtZSgpCiB9CiAKIC8vIFVubGlrZSBnZXRPckNyZWF0ZVBh
Z2VVUkxSZWNvcmQoKSwgZ2V0T3JDcmVhdGVJY29uUmVjb3JkKCkgZG9lcyBub3QgbWFyayB0aGUg
aWNvbiBhcyAiaW50ZXJlc3RlZCBpbiBpbXBvcnQiCi1QYXNzUmVmUHRyPEljb25SZWNvcmQ+IElj
b25EYXRhYmFzZTo6Z2V0T3JDcmVhdGVJY29uUmVjb3JkKGNvbnN0IFN0cmluZyYgaWNvblVSTCkK
K1JlZjxJY29uUmVjb3JkPiBJY29uRGF0YWJhc2U6OmdldE9yQ3JlYXRlSWNvblJlY29yZChjb25z
dCBTdHJpbmcmIGljb25VUkwpCiB7CiAgICAgLy8gQ2xpZW50cyBvZiBnZXRPckNyZWF0ZUljb25S
ZWNvcmQoKSBhcmUgcmVxdWlyZWQgdG8gYWNxdWlyZSB0aGUgbV91cmxBbmRJY29uTG9jayBiZWZv
cmUgY2FsbGluZyB0aGlzIG1ldGhvZAogICAgIEFTU0VSVCghbV91cmxBbmRJY29uTG9jay50cnlM
b2NrKCkpOwogCi0gICAgaWYgKEljb25SZWNvcmQqIGljb24gPSBtX2ljb25VUkxUb1JlY29yZE1h
cC5nZXQoaWNvblVSTCkpCi0gICAgICAgIHJldHVybiBpY29uOworICAgIGlmIChhdXRvKiBpY29u
ID0gbV9pY29uVVJMVG9SZWNvcmRNYXAuZ2V0KGljb25VUkwpKQorICAgICAgICByZXR1cm4gKmlj
b247CiAKICAgICBhdXRvIG5ld0ljb24gPSBJY29uUmVjb3JkOjpjcmVhdGUoaWNvblVSTCk7CiAg
ICAgbV9pY29uVVJMVG9SZWNvcmRNYXAuc2V0KGljb25VUkwsIG5ld0ljb24ucHRyKCkpOwotCi0g
ICAgcmV0dXJuIFdURk1vdmUobmV3SWNvbik7CisgICAgcmV0dXJuIG5ld0ljb247CiB9CiAKIC8v
IFRoaXMgbWV0aG9kIHJldHJpZXZlcyB0aGUgZXhpc3RpbmcgUGFnZVVSTFJlY29yZCwgb3IgY3Jl
YXRlcyBhIG5ldyBvbmUgYW5kIG1hcmtzIGl0IGFzICJpbnRlcmVzdGVkIGluIHRoZSBpbXBvcnQi
IGZvciBsYXRlciBub3RpZmljYXRpb24KQEAgLTE5MTcsNyArMTkxNiw3IEBAIGludDY0X3QgSWNv
bkRhdGFiYXNlOjphZGRJY29uVVJMVG9TUUxEYXRhYmFzZShjb25zdCBTdHJpbmcmIGljb25VUkwp
CiAgICAgcmV0dXJuIGljb25JRDsKIH0KIAotUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IEljb25E
YXRhYmFzZTo6Z2V0SW1hZ2VEYXRhRm9ySWNvblVSTEZyb21TUUxEYXRhYmFzZShjb25zdCBTdHJp
bmcmIGljb25VUkwpCitSZWZQdHI8U2hhcmVkQnVmZmVyPiBJY29uRGF0YWJhc2U6OmdldEltYWdl
RGF0YUZvckljb25VUkxGcm9tU1FMRGF0YWJhc2UoY29uc3QgU3RyaW5nJiBpY29uVVJMKQogewog
ICAgIEFTU0VSVF9JQ09OX1NZTkNfVEhSRUFEKCk7CiAgICAgCkBAIC0xOTM2LDcgKzE5MzUsNyBA
QCBQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gSWNvbkRhdGFiYXNlOjpnZXRJbWFnZURhdGFGb3JJ
Y29uVVJMRnJvbVNRTERhdGFiYXNlKGNvbgogCiAgICAgbV9nZXRJbWFnZURhdGFGb3JJY29uVVJM
U3RhdGVtZW50LT5yZXNldCgpOwogICAgIAotICAgIHJldHVybiBXVEZNb3ZlKGltYWdlRGF0YSk7
CisgICAgcmV0dXJuIGltYWdlRGF0YTsKIH0KIAogdm9pZCBJY29uRGF0YWJhc2U6OnJlbW92ZUlj
b25Gcm9tU1FMRGF0YWJhc2UoY29uc3QgU3RyaW5nJiBpY29uVVJMKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvaWNvbi9JY29uRGF0YWJhc2UuaAppbmRleCBkNWQ0NTJjZWZkMzdjMGFjZTgxMmFkYTM1
MDM0NzBhZTYyOGQ3YzllLi4wNjFhZjRhMTI1NTc3MWRlMTFhMzJmNTY4M2MwZWZkYTU5MjkzYjlk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2UuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2UuaApAQCAtNDUsNiAr
NDUsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAvLyBEdW1teSB2ZXJzaW9uIG9mIEljb25EYXRh
YmFzZSB0aGF0IGRvZXMgbm90aGluZy4KIGNsYXNzIEljb25EYXRhYmFzZSBmaW5hbCA6IHB1Ymxp
YyBJY29uRGF0YWJhc2VCYXNlIHsKICAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKKwogcHVi
bGljOgogICAgIHN0YXRpYyB2b2lkIGRlbGF5RGF0YWJhc2VDbGVhbnVwKCkgeyB9CiAgICAgc3Rh
dGljIHZvaWQgYWxsb3dEYXRhYmFzZUNsZWFudXAoKSB7IH0KQEAgLTcwLDMyICs3MSwzMiBAQCBw
dWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgSWNvbkRhdGFiYXNlKCk7CiAgICAgfkljb25EYXRh
YmFzZSgpOwogCi0gICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRDbGllbnQoSWNvbkRhdGFiYXNl
Q2xpZW50Kikgb3ZlcnJpZGU7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRDbGllbnQoSWNv
bkRhdGFiYXNlQ2xpZW50KikgZmluYWw7CiAKLSAgICBXRUJDT1JFX0VYUE9SVCBib29sIG9wZW4o
Y29uc3QgU3RyaW5nJiBkaXJlY3RvcnksIGNvbnN0IFN0cmluZyYgZmlsZW5hbWUpIG92ZXJyaWRl
OwotICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgY2xvc2UoKSBvdmVycmlkZTsKKyAgICBXRUJDT1JF
X0VYUE9SVCBib29sIG9wZW4oY29uc3QgU3RyaW5nJiBkaXJlY3RvcnksIGNvbnN0IFN0cmluZyYg
ZmlsZW5hbWUpIGZpbmFsOworICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgY2xvc2UoKSBmaW5hbDsK
ICAgICAgICAgICAgIAotICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgcmVtb3ZlQWxsSWNvbnMoKSBv
dmVycmlkZTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHJlbW92ZUFsbEljb25zKCkgZmluYWw7
CiAKICAgICB2b2lkIHJlYWRJY29uRm9yUGFnZVVSTEZyb21EaXNrKGNvbnN0IFN0cmluZyYpOwog
Ci0gICAgV0VCQ09SRV9FWFBPUlQgSW1hZ2UqIGRlZmF1bHRJY29uKGNvbnN0IEludFNpemUmKSBv
dmVycmlkZTsKKyAgICBXRUJDT1JFX0VYUE9SVCBJbWFnZSogZGVmYXVsdEljb24oY29uc3QgSW50
U2l6ZSYpIGZpbmFsOwogCi0gICAgV0VCQ09SRV9FWFBPUlQgdm9pZCByZXRhaW5JY29uRm9yUGFn
ZVVSTChjb25zdCBTdHJpbmcmKSBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHJl
bGVhc2VJY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmKSBvdmVycmlkZTsKLSAgICBXRUJDT1JF
X0VYUE9SVCB2b2lkIHNldEljb25EYXRhRm9ySWNvblVSTChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZl
cj4gZGF0YSwgY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgV0VCQ09SRV9FWFBPUlQgdm9p
ZCBzZXRJY29uVVJMRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIGljb25VUkwsIGNvbnN0IFN0cmlu
ZyYgcGFnZVVSTCkgb3ZlcnJpZGU7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCByZXRhaW5JY29u
Rm9yUGFnZVVSTChjb25zdCBTdHJpbmcmKSBmaW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lk
IHJlbGVhc2VJY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmKSBmaW5hbDsKKyAgICBXRUJDT1JF
X0VYUE9SVCB2b2lkIHNldEljb25EYXRhRm9ySWNvblVSTChTaGFyZWRCdWZmZXIqIGRhdGEsIGNv
bnN0IFN0cmluZyYgaWNvblVSTCkgZmluYWw7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRJ
Y29uVVJMRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIGljb25VUkwsIGNvbnN0IFN0cmluZyYgcGFn
ZVVSTCkgZmluYWw7CiAKLSAgICBXRUJDT1JFX0VYUE9SVCBJbWFnZSogc3luY2hyb25vdXNJY29u
Rm9yUGFnZVVSTChjb25zdCBTdHJpbmcmLCBjb25zdCBJbnRTaXplJikgb3ZlcnJpZGU7Ci0gICAg
TmF0aXZlSW1hZ2VQdHIgc3luY2hyb25vdXNOYXRpdmVJY29uRm9yUGFnZVVSTChjb25zdCBTdHJp
bmcmIHBhZ2VVUkxPcmlnaW5hbCwgY29uc3QgSW50U2l6ZSYpIG92ZXJyaWRlOwotICAgIFdFQkNP
UkVfRVhQT1JUIFN0cmluZyBzeW5jaHJvbm91c0ljb25VUkxGb3JQYWdlVVJMKGNvbnN0IFN0cmlu
ZyYpIG92ZXJyaWRlOwotICAgIGJvb2wgc3luY2hyb25vdXNJY29uRGF0YUtub3duRm9ySWNvblVS
TChjb25zdCBTdHJpbmcmKSBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCBJY29uTG9hZERl
Y2lzaW9uIHN5bmNocm9ub3VzTG9hZERlY2lzaW9uRm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBE
b2N1bWVudExvYWRlciopIG92ZXJyaWRlOworICAgIFdFQkNPUkVfRVhQT1JUIEltYWdlKiBzeW5j
aHJvbm91c0ljb25Gb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYsIGNvbnN0IEludFNpemUmKSBmaW5h
bDsKKyAgICBOYXRpdmVJbWFnZVB0ciBzeW5jaHJvbm91c05hdGl2ZUljb25Gb3JQYWdlVVJMKGNv
bnN0IFN0cmluZyYgcGFnZVVSTE9yaWdpbmFsLCBjb25zdCBJbnRTaXplJikgZmluYWw7CisgICAg
V0VCQ09SRV9FWFBPUlQgU3RyaW5nIHN5bmNocm9ub3VzSWNvblVSTEZvclBhZ2VVUkwoY29uc3Qg
U3RyaW5nJikgZmluYWw7CisgICAgYm9vbCBzeW5jaHJvbm91c0ljb25EYXRhS25vd25Gb3JJY29u
VVJMKGNvbnN0IFN0cmluZyYpIGZpbmFsOworICAgIFdFQkNPUkVfRVhQT1JUIEljb25Mb2FkRGVj
aXNpb24gc3luY2hyb25vdXNMb2FkRGVjaXNpb25Gb3JJY29uVVJMKGNvbnN0IFN0cmluZyYsIERv
Y3VtZW50TG9hZGVyKikgZmluYWw7CiAKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldEVuYWJs
ZWQoYm9vbCkgb3ZlcnJpZGU7Ci0gICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBpc0VuYWJsZWQoKSBj
b25zdCBvdmVycmlkZTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldEVuYWJsZWQoYm9vbCk7
CisgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBpc0VuYWJsZWQoKSBjb25zdCBmaW5hbDsKIAotICAg
IFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZChib29sIGZsYWcp
IG92ZXJyaWRlOworICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0UHJpdmF0ZUJyb3dzaW5nRW5h
YmxlZChib29sIGZsYWcpIGZpbmFsOwogICAgIGJvb2wgaXNQcml2YXRlQnJvd3NpbmdFbmFibGVk
KCkgY29uc3Q7CiAKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgdm9pZCBkZWxheURhdGFiYXNl
Q2xlYW51cCgpOwpAQCAtMTAzLDEwICsxMDQsMTAgQEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQ
T1JUIHN0YXRpYyB2b2lkIGNoZWNrSW50ZWdyaXR5QmVmb3JlT3BlbmluZygpOwogCiAgICAgLy8g
U3VwcG9ydCBmb3IgV2ViQ29yZVN0YXRpc3RpY3MgaW4gV2ViS2l0Ci0gICAgV0VCQ09SRV9FWFBP
UlQgc2l6ZV90IHBhZ2VVUkxNYXBwaW5nQ291bnQoKSBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VY
UE9SVCBzaXplX3QgcmV0YWluZWRQYWdlVVJMQ291bnQoKSBvdmVycmlkZTsKLSAgICBXRUJDT1JF
X0VYUE9SVCBzaXplX3QgaWNvblJlY29yZENvdW50KCkgb3ZlcnJpZGU7Ci0gICAgV0VCQ09SRV9F
WFBPUlQgc2l6ZV90IGljb25SZWNvcmRDb3VudFdpdGhEYXRhKCkgb3ZlcnJpZGU7CisgICAgV0VC
Q09SRV9FWFBPUlQgc2l6ZV90IHBhZ2VVUkxNYXBwaW5nQ291bnQoKSBmaW5hbDsKKyAgICBXRUJD
T1JFX0VYUE9SVCBzaXplX3QgcmV0YWluZWRQYWdlVVJMQ291bnQoKSBmaW5hbDsKKyAgICBXRUJD
T1JFX0VYUE9SVCBzaXplX3QgaWNvblJlY29yZENvdW50KCkgZmluYWw7CisgICAgV0VCQ09SRV9F
WFBPUlQgc2l6ZV90IGljb25SZWNvcmRDb3VudFdpdGhEYXRhKCkgZmluYWw7CiAKIHByaXZhdGU6
CiAgICAgZnJpZW5kIEljb25EYXRhYmFzZUJhc2UmIGljb25EYXRhYmFzZSgpOwpAQCAtMTMwLDEy
ICsxMzEsMTIgQEAgcHJpdmF0ZToKIAogLy8gKioqIEFueSBUaHJlYWQgKioqCiBwdWJsaWM6Ci0g
ICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBpc09wZW4oKSBjb25zdCBvdmVycmlkZTsKLSAgICBXRUJD
T1JFX0VYUE9SVCBTdHJpbmcgZGF0YWJhc2VQYXRoKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgV0VC
Q09SRV9FWFBPUlQgYm9vbCBpc09wZW4oKSBjb25zdCBmaW5hbDsKKyAgICBXRUJDT1JFX0VYUE9S
VCBTdHJpbmcgZGF0YWJhc2VQYXRoKCkgY29uc3QgZmluYWw7CiAgICAgV0VCQ09SRV9FWFBPUlQg
c3RhdGljIFN0cmluZyBkZWZhdWx0RGF0YWJhc2VGaWxlbmFtZSgpOwogCiBwcml2YXRlOgotICAg
IFBhc3NSZWZQdHI8SWNvblJlY29yZD4gZ2V0T3JDcmVhdGVJY29uUmVjb3JkKGNvbnN0IFN0cmlu
ZyYgaWNvblVSTCk7CisgICAgUmVmPEljb25SZWNvcmQ+IGdldE9yQ3JlYXRlSWNvblJlY29yZChj
b25zdCBTdHJpbmcmIGljb25VUkwpOwogICAgIFBhZ2VVUkxSZWNvcmQqIGdldE9yQ3JlYXRlUGFn
ZVVSTFJlY29yZChjb25zdCBTdHJpbmcmIHBhZ2VVUkwpOwogICAgIAogICAgIGJvb2wgbV9pc0Vu
YWJsZWQ7CkBAIC0xNzgsNyArMTc5LDcgQEAgcHJpdmF0ZToKIAogLy8gKioqIFN5bmMgVGhyZWFk
IE9ubHkgKioqCiBwdWJsaWM6Ci0gICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBzaG91bGRTdG9wVGhy
ZWFkQWN0aXZpdHkoKSBjb25zdCBvdmVycmlkZTsKKyAgICBXRUJDT1JFX0VYUE9SVCBib29sIHNo
b3VsZFN0b3BUaHJlYWRBY3Rpdml0eSgpIGNvbnN0IGZpbmFsOwogCiBwcml2YXRlOiAgICAKICAg
ICBzdGF0aWMgdm9pZCBpY29uRGF0YWJhc2VTeW5jVGhyZWFkU3RhcnQodm9pZCAqKTsKQEAgLTIx
Myw3ICsyMTQsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgcmVtb3ZlUGFnZVVSTEZyb21TUUxEYXRh
YmFzZShjb25zdCBTdHJpbmcmIHBhZ2VVUkwpOwogICAgIGludDY0X3QgZ2V0SWNvbklERm9ySWNv
blVSTEZyb21TUUxEYXRhYmFzZShjb25zdCBTdHJpbmcmIGljb25VUkwpOwogICAgIGludDY0X3Qg
YWRkSWNvblVSTFRvU1FMRGF0YWJhc2UoY29uc3QgU3RyaW5nJik7Ci0gICAgUGFzc1JlZlB0cjxT
aGFyZWRCdWZmZXI+IGdldEltYWdlRGF0YUZvckljb25VUkxGcm9tU1FMRGF0YWJhc2UoY29uc3Qg
U3RyaW5nJiBpY29uVVJMKTsKKyAgICBSZWZQdHI8U2hhcmVkQnVmZmVyPiBnZXRJbWFnZURhdGFG
b3JJY29uVVJMRnJvbVNRTERhdGFiYXNlKGNvbnN0IFN0cmluZyYgaWNvblVSTCk7CiAgICAgdm9p
ZCByZW1vdmVJY29uRnJvbVNRTERhdGFiYXNlKGNvbnN0IFN0cmluZyYgaWNvblVSTCk7CiAgICAg
dm9pZCB3cml0ZUljb25TbmFwc2hvdFRvU1FMRGF0YWJhc2UoY29uc3QgSWNvblNuYXBzaG90Jik7
ICAgIAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJh
c2VCYXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2VCYXNlLmgK
aW5kZXggOTg2ZDRkOTZmNTcyN2Y0NmExZjJlODc1MDM5ZTZjODYwMzJmNjM4MS4uZDQwNTFiOTM2
YzcxMGZjMjljNzFkNTJlNDcyN2JhODViMGFlYjk5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlQmFzZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9pY29uL0ljb25EYXRhYmFzZUJhc2UuaApAQCAtMjgsNyArMjgsNiBAQAogI2luY2x1ZGUg
Ik5hdGl2ZUltYWdlLmgiCiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KICNpbmNsdWRlIDx3dGYv
Tm9uY29weWFibGUuaD4KLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0
Zi9SZWZDb3VudGVkLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTM5LDExICszOCw3IEBA
IGNsYXNzIEltYWdlOwogY2xhc3MgSW50U2l6ZTsKIGNsYXNzIFNoYXJlZEJ1ZmZlcjsKIAotZW51
bSBJY29uTG9hZERlY2lzaW9uIHsKLSAgICBJY29uTG9hZFllcywKLSAgICBJY29uTG9hZE5vLAot
ICAgIEljb25Mb2FkVW5rbm93bgotfTsKK2VudW0gSWNvbkxvYWREZWNpc2lvbiB7IEljb25Mb2Fk
WWVzLCBJY29uTG9hZE5vLCBJY29uTG9hZFVua25vd24gfTsKIAogY2xhc3MgQ2FsbGJhY2tCYXNl
IDogcHVibGljIFJlZkNvdW50ZWQ8Q2FsbGJhY2tCYXNlPiB7CiBwdWJsaWM6CkBAIC0xMzQsNyAr
MTI5LDcgQEAgcHVibGljOgogICAgICAgICBtX2NhbGxiYWNrKHJlc3VsdCwgY29udGV4dCgpKTsK
ICAgICAgICAgbV9jYWxsYmFjayA9IG51bGxwdHI7CiAgICAgfQotICAgIAorCiAgICAgdm9pZCBp
bnZhbGlkYXRlKCkKICAgICB7CiAgICAgICAgIG1fY2FsbGJhY2sgPSBudWxscHRyOwpAQCAtMTUx
LDI2ICsxNDYsMjIgQEAgcHJpdmF0ZToKICAgICBDYWxsYmFja0Z1bmN0aW9uIG1fY2FsbGJhY2s7
CiB9OwogCi10eXBlZGVmIEVudW1DYWxsYmFjazxJY29uTG9hZERlY2lzaW9uPiBJY29uTG9hZERl
Y2lzaW9uQ2FsbGJhY2s7Ci10eXBlZGVmIE9iamVjdENhbGxiYWNrPFNoYXJlZEJ1ZmZlcio+IElj
b25EYXRhQ2FsbGJhY2s7Cit1c2luZyBJY29uTG9hZERlY2lzaW9uQ2FsbGJhY2sgPSBFbnVtQ2Fs
bGJhY2s8SWNvbkxvYWREZWNpc2lvbj47Cit1c2luZyBJY29uRGF0YUNhbGxiYWNrID0gT2JqZWN0
Q2FsbGJhY2s8U2hhcmVkQnVmZmVyKj47CiAKIGNsYXNzIFdFQkNPUkVfRVhQT1JUIEljb25EYXRh
YmFzZUJhc2UgewogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKEljb25EYXRhYmFzZUJhc2UpOwog
Ci1wcm90ZWN0ZWQ6Ci0gICAgSWNvbkRhdGFiYXNlQmFzZSgpIHsgfQotCiBwdWJsaWM6CiAgICAg
dmlydHVhbCB+SWNvbkRhdGFiYXNlQmFzZSgpIHsgfQogCi0gICAgLy8gVXNlZCBpbnRlcm5hbGx5
IGJ5IFdlYkNvcmUKICAgICB2aXJ0dWFsIGJvb2wgaXNFbmFibGVkKCkgY29uc3QgeyByZXR1cm4g
ZmFsc2U7IH0KLSAgICAgICAgCisKICAgICB2aXJ0dWFsIHZvaWQgcmV0YWluSWNvbkZvclBhZ2VV
UkwoY29uc3QgU3RyaW5nJikgeyB9CiAgICAgdmlydHVhbCB2b2lkIHJlbGVhc2VJY29uRm9yUGFn
ZVVSTChjb25zdCBTdHJpbmcmKSB7IH0KIAotICAgIHZpcnR1YWwgdm9pZCBzZXRJY29uVVJMRm9y
UGFnZVVSTChjb25zdCBTdHJpbmcmLCBjb25zdCBTdHJpbmcmKSB7IH0KLSAgICB2aXJ0dWFsIHZv
aWQgc2V0SWNvbkRhdGFGb3JJY29uVVJMKFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiwgY29uc3Qg
U3RyaW5nJikgeyB9CisgICAgdmlydHVhbCB2b2lkIHNldEljb25VUkxGb3JQYWdlVVJMKGNvbnN0
IFN0cmluZyYgLyppY29uVVJMKi8sIGNvbnN0IFN0cmluZyYgLypwYWdlVVJMKi8pIHsgfQorICAg
IHZpcnR1YWwgdm9pZCBzZXRJY29uRGF0YUZvckljb25VUkwoU2hhcmVkQnVmZmVyKiwgY29uc3Qg
U3RyaW5nJiAvKmljb25VUkwqLykgeyB9CiAKICAgICAvLyBTeW5jaHJvbm91cyBjYWxscyB1c2Vk
IGludGVybmFsbHkgYnkgV2ViQ29yZS4KICAgICAvLyBVc2FnZSBzaG91bGQgYmUgcmVwbGFjZWQg
YnkgYXN5bmNocm9ub3VzIGNhbGxzLgpAQCAtMTgyLDEyICsxNzMsMTIgQEAgcHVibGljOgogCiAg
ICAgLy8gQXN5bmNocm9ub3VzIGNhbGxzIHdlIHNob3VsZCB1c2UgdG8gcmVwbGFjZSB0aGUgYWJv
dmUgd2hlbiBzdXBwb3J0ZWQuCiAgICAgdmlydHVhbCBib29sIHN1cHBvcnRzQXN5bmNocm9ub3Vz
TW9kZSgpIHsgcmV0dXJuIGZhbHNlOyB9Ci0gICAgdmlydHVhbCB2b2lkIGxvYWREZWNpc2lvbkZv
ckljb25VUkwoY29uc3QgU3RyaW5nJiwgUGFzc1JlZlB0cjxJY29uTG9hZERlY2lzaW9uQ2FsbGJh
Y2s+KSB7IH0KLSAgICB2aXJ0dWFsIHZvaWQgaWNvbkRhdGFGb3JJY29uVVJMKGNvbnN0IFN0cmlu
ZyYsIFBhc3NSZWZQdHI8SWNvbkRhdGFDYWxsYmFjaz4pIHsgfQotICAgIAorICAgIHZpcnR1YWwg
dm9pZCBsb2FkRGVjaXNpb25Gb3JJY29uVVJMKGNvbnN0IFN0cmluZyYsIEljb25Mb2FkRGVjaXNp
b25DYWxsYmFjayYpIHsgfQorICAgIHZpcnR1YWwgdm9pZCBpY29uRGF0YUZvckljb25VUkwoY29u
c3QgU3RyaW5nJiwgSWNvbkRhdGFDYWxsYmFjayYpIHsgfQogCiAgICAgLy8gVXNlZCB3aXRoaW4g
b25lIG9yIG1vcmUgV2ViS2l0IHBvcnRzLgogICAgIC8vIFdlIHNob3VsZCB0cnkgdG8gcmVtb3Zl
IHRoZXNlIGRlcGVuZGVuY2llcyBmcm9tIHRoZSBJY29uRGF0YWJhc2VCYXNlIGNsYXNzLgorCiAg
ICAgdmlydHVhbCB2b2lkIHNldEVuYWJsZWQoYm9vbCkgeyB9CiAKICAgICB2aXJ0dWFsIEltYWdl
KiBkZWZhdWx0SWNvbihjb25zdCBJbnRTaXplJikgeyByZXR1cm4gbnVsbHB0cjsgfQpAQCAtMjA1
LDEwICsxOTYsMTIgQEAgcHVibGljOgogCiAgICAgdmlydHVhbCB2b2lkIHNldFByaXZhdGVCcm93
c2luZ0VuYWJsZWQoYm9vbCkgeyB9CiAgICAgdmlydHVhbCB2b2lkIHNldENsaWVudChJY29uRGF0
YWJhc2VDbGllbnQqKSB7IH0KLSAgICAKKwogICAgIHZpcnR1YWwgYm9vbCBpc09wZW4oKSBjb25z
dCB7IHJldHVybiBmYWxzZTsgfQogICAgIHZpcnR1YWwgU3RyaW5nIGRhdGFiYXNlUGF0aCgpIGNv
bnN0OwogCitwcm90ZWN0ZWQ6CisgICAgSWNvbkRhdGFiYXNlQmFzZSgpID0gZGVmYXVsdDsKIH07
CiAKIC8vIEZ1bmN0aW9ucyB0byBnZXQvc2V0IHRoZSBnbG9iYWwgaWNvbiBkYXRhYmFzZS4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL1BhZ2VVUkxSZWNvcmQuY3BwIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vUGFnZVVSTFJlY29yZC5jcHAKaW5kZXggZjhiMjMx
NGNmMTE4Y2I5ZDg2OGMxNDBkOGI4MmVhMTM1NDFkYjhiMC4uOTlkZGVkOGYyMDVmM2FhYmY0ZWNm
ODBkMDc1YWFjODVmOTYyOTFiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2lj
b24vUGFnZVVSTFJlY29yZC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vUGFn
ZVVSTFJlY29yZC5jcHAKQEAgLTM1LDI5ICszNSwyOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
IFBhZ2VVUkxSZWNvcmQ6OlBhZ2VVUkxSZWNvcmQoY29uc3QgU3RyaW5nJiBwYWdlVVJMKQogICAg
IDogbV9wYWdlVVJMKHBhZ2VVUkwpCi0gICAgLCBtX3JldGFpbkNvdW50KDApCiB7CiB9CiAKIFBh
Z2VVUkxSZWNvcmQ6On5QYWdlVVJMUmVjb3JkKCkKIHsKLSAgICBzZXRJY29uUmVjb3JkKG51bGxw
dHIpOworICAgIGlmIChtX2ljb25SZWNvcmQpCisgICAgICAgIG1faWNvblJlY29yZC0+bV9yZXRh
aW5pbmdQYWdlVVJMcy5yZW1vdmUobV9wYWdlVVJMKTsKIH0KIAotdm9pZCBQYWdlVVJMUmVjb3Jk
OjpzZXRJY29uUmVjb3JkKFBhc3NSZWZQdHI8SWNvblJlY29yZD4gaWNvbikKK3ZvaWQgUGFnZVVS
TFJlY29yZDo6c2V0SWNvblJlY29yZChSZWZQdHI8SWNvblJlY29yZD4mJiBpY29uKQogewogICAg
IGlmIChtX2ljb25SZWNvcmQpCiAgICAgICAgIG1faWNvblJlY29yZC0+bV9yZXRhaW5pbmdQYWdl
VVJMcy5yZW1vdmUobV9wYWdlVVJMKTsKLSAgICAgICAgCi0gICAgbV9pY29uUmVjb3JkID0gaWNv
bjsKLSAgICAKKworICAgIG1faWNvblJlY29yZCA9IFdURk1vdmUoaWNvbik7CisKICAgICBpZiAo
bV9pY29uUmVjb3JkKQogICAgICAgICBtX2ljb25SZWNvcmQtPm1fcmV0YWluaW5nUGFnZVVSTHMu
YWRkKG1fcGFnZVVSTCk7CiB9CiAgICAgCiBQYWdlVVJMU25hcHNob3QgUGFnZVVSTFJlY29yZDo6
c25hcHNob3QoYm9vbCBmb3JEZWxldGlvbikgY29uc3QgCiB7Ci0gICAgcmV0dXJuIFBhZ2VVUkxT
bmFwc2hvdChtX3BhZ2VVUkwsIChtX2ljb25SZWNvcmQgJiYgIWZvckRlbGV0aW9uKSA/IG1faWNv
blJlY29yZC0+aWNvblVSTCgpIDogU3RyaW5nKCkpOworICAgIHJldHVybiB7IG1fcGFnZVVSTCwg
KG1faWNvblJlY29yZCAmJiAhZm9yRGVsZXRpb24pID8gbV9pY29uUmVjb3JkLT5pY29uVVJMKCkg
OiBTdHJpbmcoKSB9OwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9QYWdlVVJMUmVjb3JkLmggYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvaWNvbi9QYWdlVVJMUmVjb3JkLmgKaW5kZXggZWZlZDM0NTBjNTJkNzkwNDNmM2Ji
NjJmNzBmMjZmM2ZkZmNlY2IzZC4uMTg5ODc1ZTMyZDhhNzRkZTQxN2Q1OWUxNmJkNDBjYTc4YTky
MGU4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vUGFnZVVSTFJlY29y
ZC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL1BhZ2VVUkxSZWNvcmQuaApAQCAt
NjEsNyArNjEsNyBAQCBwdWJsaWM6CiAKICAgICBpbmxpbmUgU3RyaW5nIHVybCgpIGNvbnN0IHsg
cmV0dXJuIG1fcGFnZVVSTDsgfQogICAgIAotICAgIHZvaWQgc2V0SWNvblJlY29yZChQYXNzUmVm
UHRyPEljb25SZWNvcmQ+KTsKKyAgICB2b2lkIHNldEljb25SZWNvcmQoUmVmUHRyPEljb25SZWNv
cmQ+JiYpOwogICAgIEljb25SZWNvcmQqIGljb25SZWNvcmQoKSB7IHJldHVybiBtX2ljb25SZWNv
cmQuZ2V0KCk7IH0KIAogICAgIFBhZ2VVUkxTbmFwc2hvdCBzbmFwc2hvdChib29sIGZvckRlbGV0
aW9uID0gZmFsc2UpIGNvbnN0OwpAQCAtODIsMTIgKzgyLDEyIEBAIHB1YmxpYzoKICAgICAgICAg
cmV0dXJuIG1fcmV0YWluQ291bnQgPiAwOwogICAgIH0KIAotICAgIGlubGluZSBpbnQgcmV0YWlu
Q291bnQoKSBjb25zdCB7IHJldHVybiBtX3JldGFpbkNvdW50OyB9CisgICAgaW50IHJldGFpbkNv
dW50KCkgY29uc3QgeyByZXR1cm4gbV9yZXRhaW5Db3VudDsgfQogCiBwcml2YXRlOgogICAgIFN0
cmluZyBtX3BhZ2VVUkw7CiAgICAgUmVmUHRyPEljb25SZWNvcmQ+IG1faWNvblJlY29yZDsKLSAg
ICBpbnQgbV9yZXRhaW5Db3VudDsKKyAgICBpbnQgbV9yZXRhaW5Db3VudCB7IDAgfTsKIH07CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9pb3MvUXVpY2tMb29rLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaW9zL1F1aWNrTG9vay5o
CmluZGV4IDU1M2NlZDUyNTY1ZjlhYjZkNDAzODhjMTM2ZTUzYTdlNjllNGM3NjEuLjZmZDFjYzY4
ZWI2ZDRmMThhZTgxZTU3MzE3N2I3NmE1ZGE0NGQ1YTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9pb3MvUXVpY2tMb29rLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2lv
cy9RdWlja0xvb2suaApAQCAtODQsNyArODQsNyBAQCBwdWJsaWM6CiAKICAgICBXRUJDT1JFX0VY
UE9SVCBOU1VSTFJlc3BvbnNlICpuc1Jlc3BvbnNlKCk7CiAKLSAgICB2b2lkIHNldENsaWVudChQ
YXNzUmVmUHRyPFF1aWNrTG9va0hhbmRsZUNsaWVudD4gY2xpZW50KSB7IG1fY2xpZW50ID0gY2xp
ZW50OyB9CisgICAgdm9pZCBzZXRDbGllbnQoUmVmPFF1aWNrTG9va0hhbmRsZUNsaWVudD4mJiBj
bGllbnQpIHsgbV9jbGllbnQgPSBXVEZNb3ZlKGNsaWVudCk7IH0KIAogICAgIFdFQkNPUkVfRVhQ
T1JUIFN0cmluZyBwcmV2aWV3RmlsZU5hbWUoKSBjb25zdDsKICAgICBXRUJDT1JFX0VYUE9SVCBT
dHJpbmcgcHJldmlld1VUSSgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2lvcy9RdWlja0xvb2subW0gYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaW9zL1F1aWNrTG9v
ay5tbQppbmRleCBkMTQyMTQ3NjdjYjU3YWMzMDJjYjFlYjFiNTY3MjIwMzQ1Mjc3ZjNiLi4yODRk
NDJlMWZmNTI0OGRkNGMzYjI2NmNiODRiOTI0ZWMzNWI3NDIyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvaW9zL1F1aWNrTG9vay5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvaW9zL1F1aWNrTG9vay5tbQpAQCAtMTg5LDEzICsxODksMTMgQEAgQGVuZAogCiBAaW1wbGVt
ZW50YXRpb24gV2ViUmVzb3VyY2VMb2FkZXJRdWlja0xvb2tEZWxlZ2F0ZQogCi0tIChpZClpbml0
V2l0aFJlc291cmNlTG9hZGVyOihQYXNzUmVmUHRyPFJlc291cmNlTG9hZGVyPilyZXNvdXJjZUxv
YWRlcgorLSAoaWQpaW5pdFdpdGhSZXNvdXJjZUxvYWRlcjooUmVzb3VyY2VMb2FkZXImKXJlc291
cmNlTG9hZGVyCiB7CiAgICAgc2VsZiA9IFtzdXBlciBpbml0XTsKICAgICBpZiAoIXNlbGYpCiAg
ICAgICAgIHJldHVybiBuaWw7CiAKLSAgICBfcmVzb3VyY2VMb2FkZXIgPSByZXNvdXJjZUxvYWRl
cjsKKyAgICBfcmVzb3VyY2VMb2FkZXIgPSAmcmVzb3VyY2VMb2FkZXI7CiAgICAgcmV0dXJuIHNl
bGY7CiB9CiAKQEAgLTMzMSw3ICszMzEsNyBAQCBzdGQ6OnVuaXF1ZV9wdHI8UXVpY2tMb29rSGFu
ZGxlPiBRdWlja0xvb2tIYW5kbGU6OmNyZWF0ZShSZXNvdXJjZUxvYWRlciYgbG9hZGVyLAogewog
ICAgIEFTU0VSVChzaG91bGRDcmVhdGVGb3JNSU1FVHlwZShyZXNwb25zZS5taW1lVHlwZSgpKSk7
CiAKLSAgICBSZXRhaW5QdHI8V2ViUmVzb3VyY2VMb2FkZXJRdWlja0xvb2tEZWxlZ2F0ZT4gZGVs
ZWdhdGUgPSBhZG9wdE5TKFtbV2ViUmVzb3VyY2VMb2FkZXJRdWlja0xvb2tEZWxlZ2F0ZSBhbGxv
Y10gaW5pdFdpdGhSZXNvdXJjZUxvYWRlcjombG9hZGVyXSk7CisgICAgUmV0YWluUHRyPFdlYlJl
c291cmNlTG9hZGVyUXVpY2tMb29rRGVsZWdhdGU+IGRlbGVnYXRlID0gYWRvcHROUyhbW1dlYlJl
c291cmNlTG9hZGVyUXVpY2tMb29rRGVsZWdhdGUgYWxsb2NdIGluaXRXaXRoUmVzb3VyY2VMb2Fk
ZXI6bG9hZGVyXSk7CiAgICAgc3RkOjp1bmlxdWVfcHRyPFF1aWNrTG9va0hhbmRsZT4gcXVpY2tM
b29rSGFuZGxlKG5ldyBRdWlja0xvb2tIYW5kbGUoW2xvYWRlci5vcmlnaW5hbFJlcXVlc3QoKS5u
c1VSTFJlcXVlc3QoRG9Ob3RVcGRhdGVIVFRQQm9keSkgVVJMXSwgcmVzcG9uc2UubnNVUkxSZXNw
b25zZSgpLCBkZWxlZ2F0ZS5nZXQoKSkpOwogICAgIFtkZWxlZ2F0ZSBzZXRRdWlja0xvb2tIYW5k
bGU6cXVpY2tMb29rSGFuZGxlLmdldCgpXTsKICAgICBsb2FkZXIuZGlkQ3JlYXRlUXVpY2tMb29r
SGFuZGxlKCpxdWlja0xvb2tIYW5kbGUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9DaHJvbWUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWUuY3BwCmluZGV4IGQwMTVi
YTQ1YTMzYWViY2UxNzI5ZDNiOTliMjU1ZjU0NTMwMWU3NmEuLjFlYzY2ZTk5MTBmNTU2NDllZTYw
YjlmNmRjMjkwZjEzMzI0MGFkNGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hy
b21lLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZS5jcHAKQEAgLTQzMiw3ICs0
MzIsNyBAQCBzdGQ6OnVuaXF1ZV9wdHI8Q29sb3JDaG9vc2VyPiBDaHJvbWU6OmNyZWF0ZUNvbG9y
Q2hvb3NlcihDb2xvckNob29zZXJDbGllbnQqIGNsaQogfQogI2VuZGlmCiAKLXZvaWQgQ2hyb21l
OjpydW5PcGVuUGFuZWwoRnJhbWUqIGZyYW1lLCBQYXNzUmVmUHRyPEZpbGVDaG9vc2VyPiBmaWxl
Q2hvb3NlcikKK3ZvaWQgQ2hyb21lOjpydW5PcGVuUGFuZWwoRnJhbWUmIGZyYW1lLCBGaWxlQ2hv
b3NlciYgZmlsZUNob29zZXIpCiB7CiAgICAgbm90aWZ5UG9wdXBPcGVuaW5nT2JzZXJ2ZXJzKCk7
CiAgICAgbV9jbGllbnQucnVuT3BlblBhbmVsKGZyYW1lLCBmaWxlQ2hvb3Nlcik7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9D
aHJvbWUuaAppbmRleCBmMjM4NjBhMmJkYWYzYzI5M2UwMTkzYzJjYTQ5MmJhNmE4OGY3YzUyLi5i
NTBmNzg3M2YxMDQ5ZTA2MTZkNzIzOTgwMTNkMzE0NjI3NGIzZjc0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0Nocm9tZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21l
LmgKQEAgLTE1Niw3ICsxNTYsNyBAQCBwdWJsaWM6CiAgICAgc3RkOjp1bmlxdWVfcHRyPENvbG9y
Q2hvb3Nlcj4gY3JlYXRlQ29sb3JDaG9vc2VyKENvbG9yQ2hvb3NlckNsaWVudCosIGNvbnN0IENv
bG9yJiBpbml0aWFsQ29sb3IpOwogI2VuZGlmCiAKLSAgICB2b2lkIHJ1bk9wZW5QYW5lbChGcmFt
ZSosIFBhc3NSZWZQdHI8RmlsZUNob29zZXI+KTsKKyAgICB2b2lkIHJ1bk9wZW5QYW5lbChGcmFt
ZSYsIEZpbGVDaG9vc2VyJik7CiAgICAgdm9pZCBsb2FkSWNvbkZvckZpbGVzKGNvbnN0IFZlY3Rv
cjxTdHJpbmc+JiwgRmlsZUljb25Mb2FkZXImKTsKIAogICAgIHZvaWQgZGlzcGF0Y2hWaWV3cG9y
dFByb3BlcnRpZXNEaWRDaGFuZ2UoY29uc3QgVmlld3BvcnRBcmd1bWVudHMmKSBjb25zdDsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21lQ2xpZW50LmggYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0Nocm9tZUNsaWVudC5oCmluZGV4IGEwOWZlM2NiMzBiYTNkODE4YzE0ZDFkMThl
ZDY1MzVlMWZlMzg4MTUuLjg2ODI2ZTU5NTA4OWYyNGMyNWIyNzg2YzFmNGU5ODIyZGM0NGRlZGYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21lQ2xpZW50LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWVDbGllbnQuaApAQCAtMjczLDcgKzI3Myw3IEBAIHB1Ymxp
YzoKICAgICB2aXJ0dWFsIHN0ZDo6dW5pcXVlX3B0cjxDb2xvckNob29zZXI+IGNyZWF0ZUNvbG9y
Q2hvb3NlcihDb2xvckNob29zZXJDbGllbnQqLCBjb25zdCBDb2xvciYpID0gMDsKICNlbmRpZgog
Ci0gICAgdmlydHVhbCB2b2lkIHJ1bk9wZW5QYW5lbChGcmFtZSosIFBhc3NSZWZQdHI8RmlsZUNo
b29zZXI+KSA9IDA7CisgICAgdmlydHVhbCB2b2lkIHJ1bk9wZW5QYW5lbChGcmFtZSYsIEZpbGVD
aG9vc2VyJikgPSAwOwogICAgIC8vIEFzeW5jaHJvbm91cyByZXF1ZXN0IHRvIGxvYWQgYW4gaWNv
biBmb3Igc3BlY2lmaWVkIGZpbGVuYW1lcy4KICAgICB2aXJ0dWFsIHZvaWQgbG9hZEljb25Gb3JG
aWxlcyhjb25zdCBWZWN0b3I8U3RyaW5nPiYsIEZpbGVJY29uTG9hZGVyJikgPSAwOwogICAgICAg
ICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcAppbmRleCA2YTI3YjJjMjliZDJmZTQ0MWEyMDgy
MmQ0ZDlkNWRiNTc5ZWE3NzZkLi45ZjdhNmFjNTAxYTM2Yjg0Y2RiNTcxNGEyZGMyNGViZjcyZGFi
NTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuY3BwCkBAIC03NzMsNyArNzczLDcgQEAgRE9N
QXBwbGljYXRpb25DYWNoZSogRE9NV2luZG93OjphcHBsaWNhdGlvbkNhY2hlKCkgY29uc3QKICAg
ICBpZiAoIWlzQ3VycmVudGx5RGlzcGxheWVkSW5GcmFtZSgpKQogICAgICAgICByZXR1cm4gbnVs
bHB0cjsKICAgICBpZiAoIW1fYXBwbGljYXRpb25DYWNoZSkKLSAgICAgICAgbV9hcHBsaWNhdGlv
bkNhY2hlID0gRE9NQXBwbGljYXRpb25DYWNoZTo6Y3JlYXRlKG1fZnJhbWUpOworICAgICAgICBt
X2FwcGxpY2F0aW9uQ2FjaGUgPSBET01BcHBsaWNhdGlvbkNhY2hlOjpjcmVhdGUoKm1fZnJhbWUp
OwogICAgIHJldHVybiBtX2FwcGxpY2F0aW9uQ2FjaGUuZ2V0KCk7CiB9CiAKQEAgLTIwODcsNyAr
MjA4Nyw3IEBAIHZvaWQgRE9NV2luZG93OjpzZXRMb2NhdGlvbihET01XaW5kb3cmIGFjdGl2ZVdp
bmRvdywgRE9NV2luZG93JiBmaXJzdFdpbmRvdywgY29uCiAgICAgLy8gV2Ugd2FudCBhIG5ldyBo
aXN0b3J5IGl0ZW0gaWYgd2UgYXJlIHByb2Nlc3NpbmcgYSB1c2VyIGdlc3R1cmUuCiAgICAgTG9j
a0hpc3RvcnkgbG9ja0hpc3RvcnkgPSAobG9ja2luZyAhPSBMb2NrSGlzdG9yeUJhc2VkT25HZXN0
dXJlU3RhdGUgfHwgIVNjcmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpKSA/
IExvY2tIaXN0b3J5OjpZZXMgOiBMb2NrSGlzdG9yeTo6Tm87CiAgICAgTG9ja0JhY2tGb3J3YXJk
TGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0ID0gKGxvY2tpbmcgIT0gTG9ja0hpc3RvcnlCYXNlZE9u
R2VzdHVyZVN0YXRlKSA/IExvY2tCYWNrRm9yd2FyZExpc3Q6OlllcyA6IExvY2tCYWNrRm9yd2Fy
ZExpc3Q6Ok5vOwotICAgIG1fZnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxv
Y2F0aW9uQ2hhbmdlKGFjdGl2ZURvY3VtZW50LCBhY3RpdmVEb2N1bWVudC0+c2VjdXJpdHlPcmln
aW4oKSwKKyAgICBtX2ZyYW1lLT5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlv
bkNoYW5nZSgqYWN0aXZlRG9jdW1lbnQsIGFjdGl2ZURvY3VtZW50LT5zZWN1cml0eU9yaWdpbigp
LAogICAgICAgICAvLyBGSVhNRTogV2hhdCBpZiBhY3RpdmVEb2N1bWVudCgpLT5mcmFtZSgpIGlz
IDA/CiAgICAgICAgIGNvbXBsZXRlZFVSTCwgYWN0aXZlRG9jdW1lbnQtPmZyYW1lKCktPmxvYWRl
cigpLm91dGdvaW5nUmVmZXJyZXIoKSwKICAgICAgICAgbG9ja0hpc3RvcnksIGxvY2tCYWNrRm9y
d2FyZExpc3QpOwpAQCAtMjIxMyw3ICsyMjEzLDcgQEAgUmVmUHRyPEZyYW1lPiBET01XaW5kb3c6
OmNyZWF0ZVdpbmRvdyhjb25zdCBTdHJpbmcmIHVybFN0cmluZywgY29uc3QgQXRvbWljU3RyaW4K
ICAgICAgICAgbmV3RnJhbWUtPmxvYWRlcigpLmNoYW5nZUxvY2F0aW9uKGZyYW1lUmVxdWVzdCk7
CiAgICAgfSBlbHNlIGlmICghdXJsU3RyaW5nLmlzRW1wdHkoKSkgewogICAgICAgICBMb2NrSGlz
dG9yeSBsb2NrSGlzdG9yeSA9IFNjcmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVy
ZSgpID8gTG9ja0hpc3Rvcnk6Ok5vIDogTG9ja0hpc3Rvcnk6OlllczsKLSAgICAgICAgbmV3RnJh
bWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKGFjdGl2ZVdp
bmRvdy5kb2N1bWVudCgpLCBhY3RpdmVXaW5kb3cuZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4o
KSwgY29tcGxldGVkVVJMLCByZWZlcnJlciwgbG9ja0hpc3RvcnksIExvY2tCYWNrRm9yd2FyZExp
c3Q6Ok5vKTsKKyAgICAgICAgbmV3RnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVs
ZUxvY2F0aW9uQ2hhbmdlKCphY3RpdmVXaW5kb3cuZG9jdW1lbnQoKSwgYWN0aXZlV2luZG93LmRv
Y3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCksIGNvbXBsZXRlZFVSTCwgcmVmZXJyZXIsIGxvY2tI
aXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0OjpObyk7CiAgICAgfQogCiAgICAgLy8gTmF2aWdh
dGluZyB0aGUgbmV3IGZyYW1lIGNvdWxkIHJlc3VsdCBpbiBpdCBiZWluZyBkZXRhY2hlZCBmcm9t
IGl0cyBwYWdlIGJ5IGEgbmF2aWdhdGlvbiBwb2xpY3kgZGVsZWdhdGUuCkBAIC0yMjIzLDI4ICsy
MjIzLDI2IEBAIFJlZlB0cjxGcmFtZT4gRE9NV2luZG93OjpjcmVhdGVXaW5kb3coY29uc3QgU3Ry
aW5nJiB1cmxTdHJpbmcsIGNvbnN0IEF0b21pY1N0cmluCiAgICAgcmV0dXJuIG5ld0ZyYW1lOwog
fQogCi1SZWZQdHI8RE9NV2luZG93PiBET01XaW5kb3c6Om9wZW4oY29uc3QgU3RyaW5nJiB1cmxT
dHJpbmcsIGNvbnN0IEF0b21pY1N0cmluZyYgZnJhbWVOYW1lLCBjb25zdCBTdHJpbmcmIHdpbmRv
d0ZlYXR1cmVzU3RyaW5nLAotICAgIERPTVdpbmRvdyYgYWN0aXZlV2luZG93LCBET01XaW5kb3cm
IGZpcnN0V2luZG93KQorUmVmUHRyPERPTVdpbmRvdz4gRE9NV2luZG93OjpvcGVuKGNvbnN0IFN0
cmluZyYgdXJsU3RyaW5nLCBjb25zdCBBdG9taWNTdHJpbmcmIGZyYW1lTmFtZSwgY29uc3QgU3Ry
aW5nJiB3aW5kb3dGZWF0dXJlc1N0cmluZywgRE9NV2luZG93JiBhY3RpdmVXaW5kb3csIERPTVdp
bmRvdyYgZmlyc3RXaW5kb3cpCiB7CiAgICAgaWYgKCFpc0N1cnJlbnRseURpc3BsYXllZEluRnJh
bWUoKSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKLSAgICBEb2N1bWVudCogYWN0aXZlRG9j
dW1lbnQgPSBhY3RpdmVXaW5kb3cuZG9jdW1lbnQoKTsKKyAgICBhdXRvKiBhY3RpdmVEb2N1bWVu
dCA9IGFjdGl2ZVdpbmRvdy5kb2N1bWVudCgpOwogICAgIGlmICghYWN0aXZlRG9jdW1lbnQpCiAg
ICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgRnJhbWUqIGZpcnN0RnJhbWUgPSBmaXJzdFdp
bmRvdy5mcmFtZSgpOworICAgIGF1dG8qIGZpcnN0RnJhbWUgPSBmaXJzdFdpbmRvdy5mcmFtZSgp
OwogICAgIGlmICghZmlyc3RGcmFtZSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKICNpZiBF
TkFCTEUoQ09OVEVOVF9FWFRFTlNJT05TKQogICAgIGlmIChmaXJzdEZyYW1lLT5kb2N1bWVudCgp
Ci0gICAgICAgICYmIGZpcnN0RnJhbWUtPm1haW5GcmFtZSgpLnBhZ2UoKQorICAgICAgICAmJiBm
aXJzdEZyYW1lLT5wYWdlKCkKICAgICAgICAgJiYgZmlyc3RGcmFtZS0+bWFpbkZyYW1lKCkuZG9j
dW1lbnQoKQogICAgICAgICAmJiBmaXJzdEZyYW1lLT5tYWluRnJhbWUoKS5kb2N1bWVudCgpLT5s
b2FkZXIoKSkgewotICAgICAgICBSZXNvdXJjZUxvYWRJbmZvIHJlc291cmNlTG9hZEluZm8gPSB7
IGZpcnN0RnJhbWUtPmRvY3VtZW50KCktPmNvbXBsZXRlVVJMKHVybFN0cmluZyksIGZpcnN0RnJh
bWUtPm1haW5GcmFtZSgpLmRvY3VtZW50KCktPnVybCgpLCBSZXNvdXJjZVR5cGU6OlBvcHVwIH07
Ci0gICAgICAgIFZlY3RvcjxDb250ZW50RXh0ZW5zaW9uczo6QWN0aW9uPiBhY3Rpb25zID0gZmly
c3RGcmFtZS0+bWFpbkZyYW1lKCkucGFnZSgpLT51c2VyQ29udGVudFByb3ZpZGVyKCkuYWN0aW9u
c0ZvclJlc291cmNlTG9hZChyZXNvdXJjZUxvYWRJbmZvLCAqZmlyc3RGcmFtZS0+bWFpbkZyYW1l
KCkuZG9jdW1lbnQoKS0+bG9hZGVyKCkpOwotICAgICAgICBmb3IgKGNvbnN0IENvbnRlbnRFeHRl
bnNpb25zOjpBY3Rpb24mIGFjdGlvbiA6IGFjdGlvbnMpIHsKKyAgICAgICAgUmVzb3VyY2VMb2Fk
SW5mbyByZXNvdXJjZUxvYWRJbmZvIHsgZmlyc3RGcmFtZS0+ZG9jdW1lbnQoKS0+Y29tcGxldGVV
UkwodXJsU3RyaW5nKSwgZmlyc3RGcmFtZS0+bWFpbkZyYW1lKCkuZG9jdW1lbnQoKS0+dXJsKCks
IFJlc291cmNlVHlwZTo6UG9wdXAgfTsKKyAgICAgICAgZm9yIChhdXRvJiBhY3Rpb24gOiBmaXJz
dEZyYW1lLT5wYWdlKCktPnVzZXJDb250ZW50UHJvdmlkZXIoKS5hY3Rpb25zRm9yUmVzb3VyY2VM
b2FkKHJlc291cmNlTG9hZEluZm8sICpmaXJzdEZyYW1lLT5tYWluRnJhbWUoKS5kb2N1bWVudCgp
LT5sb2FkZXIoKSkpIHsKICAgICAgICAgICAgIGlmIChhY3Rpb24udHlwZSgpID09IENvbnRlbnRF
eHRlbnNpb25zOjpBY3Rpb25UeXBlOjpCbG9ja0xvYWQpCiAgICAgICAgICAgICAgICAgcmV0dXJu
IG51bGxwdHI7CiAgICAgICAgIH0KQEAgLTIyODQsNyArMjI4Miw3IEBAIFJlZlB0cjxET01XaW5k
b3c+IERPTVdpbmRvdzo6b3Blbihjb25zdCBTdHJpbmcmIHVybFN0cmluZywgY29uc3QgQXRvbWlj
U3RyaW5nJiBmCiAgICAgICAgIC8vIEZvciB3aGF0ZXZlciByZWFzb24sIEZpcmVmb3ggdXNlcyB0
aGUgZmlyc3Qgd2luZG93IHJhdGhlciB0aGFuIHRoZSBhY3RpdmUgd2luZG93IHRvCiAgICAgICAg
IC8vIGRldGVybWluZSB0aGUgb3V0Z29pbmcgcmVmZXJyZXIuIFdlIHJlcGxpY2F0ZSB0aGF0IGJl
aGF2aW9yIGhlcmUuCiAgICAgICAgIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5ID0gU2NyaXB0Q29u
dHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkgPyBMb2NrSGlzdG9yeTo6Tm8gOiBMb2Nr
SGlzdG9yeTo6WWVzOwotICAgICAgICB0YXJnZXRGcmFtZS0+bmF2aWdhdGlvblNjaGVkdWxlcigp
LnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UoYWN0aXZlRG9jdW1lbnQsIGFjdGl2ZURvY3VtZW50LT5z
ZWN1cml0eU9yaWdpbigpLCBjb21wbGV0ZWRVUkwsIGZpcnN0RnJhbWUtPmxvYWRlcigpLm91dGdv
aW5nUmVmZXJyZXIoKSwKKyAgICAgICAgdGFyZ2V0RnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIo
KS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKCphY3RpdmVEb2N1bWVudCwgYWN0aXZlRG9jdW1lbnQt
PnNlY3VyaXR5T3JpZ2luKCksIGNvbXBsZXRlZFVSTCwgZmlyc3RGcmFtZS0+bG9hZGVyKCkub3V0
Z29pbmdSZWZlcnJlcigpLAogICAgICAgICAgICAgbG9ja0hpc3RvcnksIExvY2tCYWNrRm9yd2Fy
ZExpc3Q6Ok5vKTsKICAgICAgICAgcmV0dXJuIHRhcmdldEZyYW1lLT5kb2N1bWVudCgpLT5kb21X
aW5kb3coKTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0VkaXRvckNs
aWVudC5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FZGl0b3JDbGllbnQuaAppbmRleCBlYjFhNDJl
MmVlZDAzYTUxNGQxMjM2MDhiY2U3M2I0ZTJkNTY3ODBhLi5mNDEzMjEwOWY2NDkzYzMwNTgyYTk4
OTE5MmM4ZGIzNTU5OTk3ODRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0VkaXRv
ckNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRWRpdG9yQ2xpZW50LmgKQEAgLTEw
NCw4ICsxMDQsOCBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIGRpc2NhcmRlZENvbXBvc2l0
aW9uKEZyYW1lKikgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBjYW5jZWxlZENvbXBvc2l0aW9uKCkg
PSAwOwogCi0gICAgdmlydHVhbCB2b2lkIHJlZ2lzdGVyVW5kb1N0ZXAoUGFzc1JlZlB0cjxVbmRv
U3RlcD4pID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgcmVnaXN0ZXJSZWRvU3RlcChQYXNzUmVmUHRy
PFVuZG9TdGVwPikgPSAwOworICAgIHZpcnR1YWwgdm9pZCByZWdpc3RlclVuZG9TdGVwKFVuZG9T
dGVwJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCByZWdpc3RlclJlZG9TdGVwKFVuZG9TdGVwJikg
PSAwOwogICAgIHZpcnR1YWwgdm9pZCBjbGVhclVuZG9SZWRvT3BlcmF0aW9ucygpID0gMDsKIAog
ICAgIHZpcnR1YWwgYm9vbCBjYW5Db3B5Q3V0KEZyYW1lKiwgYm9vbCBkZWZhdWx0VmFsdWUpIGNv
bnN0ID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvSGlzdG9yeS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL0hpc3RvcnkuY3BwCmluZGV4IDFkNDU0MmI4N2VhNjEyNTBhODRi
ZDdjZDkxNjcyZDVlYWZiMzg0ZGYuLjYzZWQzZDAwN2ViZWQxYTgyMzkwYmFlMTk4NzViMzUyNzY5
ZmU4ZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvSGlzdG9yeS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9IaXN0b3J5LmNwcApAQCAtMjA3LDEwICsyMDcsMTAgQEAgRXhj
ZXB0aW9uT3I8dm9pZD4gSGlzdG9yeTo6c3RhdGVPYmplY3RBZGRlZChSZWZQdHI8U2VyaWFsaXpl
ZFNjcmlwdFZhbHVlPiYmIGRhdGEKICAgICAgICAgbV9mcmFtZS0+ZG9jdW1lbnQoKS0+dXBkYXRl
VVJMRm9yUHVzaE9yUmVwbGFjZVN0YXRlKGZ1bGxVUkwpOwogCiAgICAgaWYgKHN0YXRlT2JqZWN0
VHlwZSA9PSBTdGF0ZU9iamVjdFR5cGU6OlB1c2gpIHsKLSAgICAgICAgbV9mcmFtZS0+bG9hZGVy
KCkuaGlzdG9yeSgpLnB1c2hTdGF0ZShkYXRhLCB0aXRsZSwgZnVsbFVSTC5zdHJpbmcoKSk7Cisg
ICAgICAgIG1fZnJhbWUtPmxvYWRlcigpLmhpc3RvcnkoKS5wdXNoU3RhdGUoV1RGTW92ZShkYXRh
KSwgdGl0bGUsIGZ1bGxVUkwuc3RyaW5nKCkpOwogICAgICAgICBtX2ZyYW1lLT5sb2FkZXIoKS5j
bGllbnQoKS5kaXNwYXRjaERpZFB1c2hTdGF0ZVdpdGhpblBhZ2UoKTsKICAgICB9IGVsc2UgaWYg
KHN0YXRlT2JqZWN0VHlwZSA9PSBTdGF0ZU9iamVjdFR5cGU6OlJlcGxhY2UpIHsKLSAgICAgICAg
bV9mcmFtZS0+bG9hZGVyKCkuaGlzdG9yeSgpLnJlcGxhY2VTdGF0ZShkYXRhLCB0aXRsZSwgZnVs
bFVSTC5zdHJpbmcoKSk7CisgICAgICAgIG1fZnJhbWUtPmxvYWRlcigpLmhpc3RvcnkoKS5yZXBs
YWNlU3RhdGUoV1RGTW92ZShkYXRhKSwgdGl0bGUsIGZ1bGxVUkwuc3RyaW5nKCkpOwogICAgICAg
ICBtX2ZyYW1lLT5sb2FkZXIoKS5jbGllbnQoKS5kaXNwYXRjaERpZFJlcGxhY2VTdGF0ZVdpdGhp
blBhZ2UoKTsKICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTG9jYXRp
b24uY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Mb2NhdGlvbi5jcHAKaW5kZXggOGQ4MzlkMTNh
OTE5ODBlMWEwMjhkYmM1ODBiYmJmMWQzNjZkNDU2Zi4uYmRiNTQ4YjBiNzg5MzRhYzYyYzE3MWU2
OWY3ZjEyOTNiZmZhNDI3NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Mb2NhdGlv
bi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Mb2NhdGlvbi5jcHAKQEAgLTIyMSw5ICsy
MjEsMTAgQEAgdm9pZCBMb2NhdGlvbjo6c2V0SGFzaChET01XaW5kb3cmIGFjdGl2ZVdpbmRvdywg
RE9NV2luZG93JiBmaXJzdFdpbmRvdywgY29uc3QgU3QKIHsKICAgICBpZiAoIW1fZnJhbWUpCiAg
ICAgICAgIHJldHVybjsKLSAgICBVUkwgdXJsID0gbV9mcmFtZS0+ZG9jdW1lbnQoKS0+dXJsKCk7
Ci0gICAgU3RyaW5nIG9sZEZyYWdtZW50SWRlbnRpZmllciA9IHVybC5mcmFnbWVudElkZW50aWZp
ZXIoKTsKLSAgICBTdHJpbmcgbmV3RnJhZ21lbnRJZGVudGlmaWVyID0gaGFzaDsKKyAgICBBU1NF
UlQobV9mcmFtZS0+ZG9jdW1lbnQoKSk7CisgICAgYXV0byB1cmwgPSBtX2ZyYW1lLT5kb2N1bWVu
dCgpLT51cmwoKTsKKyAgICBhdXRvIG9sZEZyYWdtZW50SWRlbnRpZmllciA9IHVybC5mcmFnbWVu
dElkZW50aWZpZXIoKTsKKyAgICBhdXRvIG5ld0ZyYWdtZW50SWRlbnRpZmllciA9IGhhc2g7CiAg
ICAgaWYgKGhhc2hbMF0gPT0gJyMnKQogICAgICAgICBuZXdGcmFnbWVudElkZW50aWZpZXIgPSBo
YXNoLnN1YnN0cmluZygxKTsKICAgICB1cmwuc2V0RnJhZ21lbnRJZGVudGlmaWVyKG5ld0ZyYWdt
ZW50SWRlbnRpZmllcik7CkBAIC0yNDYsNyArMjQ3LDkgQEAgdm9pZCBMb2NhdGlvbjo6cmVwbGFj
ZShET01XaW5kb3cmIGFjdGl2ZVdpbmRvdywgRE9NV2luZG93JiBmaXJzdFdpbmRvdywgY29uc3Qg
U3QKIHsKICAgICBpZiAoIW1fZnJhbWUpCiAgICAgICAgIHJldHVybjsKLSAgICAvLyBOb3RlOiBX
ZSBjYWxsIERPTVdpbmRvdzo6c2V0TG9jYXRpb24gZGlyZWN0bHkgaGVyZSBiZWNhdXNlIHJlcGxh
Y2UoKSBhbHdheXMgb3BlcmF0ZXMgb24gdGhlIGN1cnJlbnQgZnJhbWUuCisgICAgQVNTRVJUKG1f
ZnJhbWUtPmRvY3VtZW50KCkpOworICAgIEFTU0VSVChtX2ZyYW1lLT5kb2N1bWVudCgpLT5kb21X
aW5kb3coKSk7CisgICAgLy8gV2UgY2FsbCBET01XaW5kb3c6OnNldExvY2F0aW9uIGRpcmVjdGx5
IGhlcmUgYmVjYXVzZSByZXBsYWNlKCkgYWx3YXlzIG9wZXJhdGVzIG9uIHRoZSBjdXJyZW50IGZy
YW1lLgogICAgIG1fZnJhbWUtPmRvY3VtZW50KCktPmRvbVdpbmRvdygpLT5zZXRMb2NhdGlvbihh
Y3RpdmVXaW5kb3csIGZpcnN0V2luZG93LCB1cmwsIExvY2tIaXN0b3J5QW5kQmFja0ZvcndhcmRM
aXN0KTsKIH0KIApAQCAtMjU0LDI2ICsyNTcsMzggQEAgdm9pZCBMb2NhdGlvbjo6cmVsb2FkKERP
TVdpbmRvdyYgYWN0aXZlV2luZG93KQogewogICAgIGlmICghbV9mcmFtZSkKICAgICAgICAgcmV0
dXJuOworCisgICAgQVNTRVJUKGFjdGl2ZVdpbmRvdy5kb2N1bWVudCgpKTsKKyAgICBBU1NFUlQo
bV9mcmFtZS0+ZG9jdW1lbnQoKSk7CisgICAgQVNTRVJUKG1fZnJhbWUtPmRvY3VtZW50KCktPmRv
bVdpbmRvdygpKTsKKworICAgIGF1dG8mIGFjdGl2ZURvY3VtZW50ID0gKmFjdGl2ZVdpbmRvdy5k
b2N1bWVudCgpOworICAgIGF1dG8mIHRhcmdldERvY3VtZW50ID0gKm1fZnJhbWUtPmRvY3VtZW50
KCk7CisKICAgICAvLyBGSVhNRTogSXQncyBub3QgY2xlYXIgdGhpcyBjcm9zcy1vcmlnaW4gc2Vj
dXJpdHkgY2hlY2sgaXMgdmFsdWFibGUuCiAgICAgLy8gV2UgYWxsb3cgb25lIHBhZ2UgdG8gY2hh
bmdlIHRoZSBsb2NhdGlvbiBvZiBhbm90aGVyLiBXaHkgYmxvY2sgYXR0ZW1wdHMgdG8gcmVsb2Fk
PwogICAgIC8vIE90aGVyIGxvY2F0aW9uIG9wZXJhdGlvbnMgc2ltcGx5IGJsb2NrIHVzZSBvZiBK
YXZhU2NyaXB0IFVSTHMgY3Jvc3Mgb3JpZ2luLgotICAgIERPTVdpbmRvdyogdGFyZ2V0V2luZG93
ID0gbV9mcmFtZS0+ZG9jdW1lbnQoKS0+ZG9tV2luZG93KCk7Ci0gICAgaWYgKCFhY3RpdmVXaW5k
b3cuZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuQWNjZXNzKG1fZnJhbWUtPmRvY3Vt
ZW50KCktPnNlY3VyaXR5T3JpZ2luKCkpKSB7Ci0gICAgICAgIHRhcmdldFdpbmRvdy0+cHJpbnRF
cnJvck1lc3NhZ2UodGFyZ2V0V2luZG93LT5jcm9zc0RvbWFpbkFjY2Vzc0Vycm9yTWVzc2FnZShh
Y3RpdmVXaW5kb3cpKTsKKyAgICBpZiAoIWFjdGl2ZURvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCkt
PmNhbkFjY2Vzcyh0YXJnZXREb2N1bWVudC5zZWN1cml0eU9yaWdpbigpKSkgeworICAgICAgICBh
dXRvJiB0YXJnZXRXaW5kb3cgPSAqdGFyZ2V0RG9jdW1lbnQuZG9tV2luZG93KCk7CisgICAgICAg
IHRhcmdldFdpbmRvdy5wcmludEVycm9yTWVzc2FnZSh0YXJnZXRXaW5kb3cuY3Jvc3NEb21haW5B
Y2Nlc3NFcnJvck1lc3NhZ2UoYWN0aXZlV2luZG93KSk7CiAgICAgICAgIHJldHVybjsKICAgICB9
Ci0gICAgaWYgKHByb3RvY29sSXNKYXZhU2NyaXB0KG1fZnJhbWUtPmRvY3VtZW50KCktPnVybCgp
KSkKKworICAgIGlmIChwcm90b2NvbElzSmF2YVNjcmlwdCh0YXJnZXREb2N1bWVudC51cmwoKSkp
CiAgICAgICAgIHJldHVybjsKLSAgICBtX2ZyYW1lLT5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2No
ZWR1bGVSZWZyZXNoKGFjdGl2ZVdpbmRvdy5kb2N1bWVudCgpKTsKKworICAgIG1fZnJhbWUtPm5h
dmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZVJlZnJlc2goYWN0aXZlRG9jdW1lbnQpOwogfQog
CiB2b2lkIExvY2F0aW9uOjpzZXRMb2NhdGlvbihET01XaW5kb3cmIGFjdGl2ZVdpbmRvdywgRE9N
V2luZG93JiBmaXJzdFdpbmRvdywgY29uc3QgU3RyaW5nJiB1cmwpCiB7CiAgICAgQVNTRVJUKG1f
ZnJhbWUpOwotICAgIEZyYW1lKiBmcmFtZSA9IG1fZnJhbWUtPmxvYWRlcigpLmZpbmRGcmFtZUZv
ck5hdmlnYXRpb24oU3RyaW5nKCksIGFjdGl2ZVdpbmRvdy5kb2N1bWVudCgpKTsKLSAgICBpZiAo
IWZyYW1lKQorICAgIGF1dG8qIHRhcmdldEZyYW1lID0gbV9mcmFtZS0+bG9hZGVyKCkuZmluZEZy
YW1lRm9yTmF2aWdhdGlvbih7IH0sIGFjdGl2ZVdpbmRvdy5kb2N1bWVudCgpKTsKKyAgICBpZiAo
IXRhcmdldEZyYW1lKQogICAgICAgICByZXR1cm47Ci0gICAgZnJhbWUtPmRvY3VtZW50KCktPmRv
bVdpbmRvdygpLT5zZXRMb2NhdGlvbihhY3RpdmVXaW5kb3csIGZpcnN0V2luZG93LCB1cmwpOwor
ICAgIEFTU0VSVCh0YXJnZXRGcmFtZS0+ZG9jdW1lbnQoKSk7CisgICAgQVNTRVJUKHRhcmdldEZy
YW1lLT5kb2N1bWVudCgpLT5kb21XaW5kb3coKSk7CisgICAgdGFyZ2V0RnJhbWUtPmRvY3VtZW50
KCktPmRvbVdpbmRvdygpLT5zZXRMb2NhdGlvbihhY3RpdmVXaW5kb3csIGZpcnN0V2luZG93LCB1
cmwpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9VUkwuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVVJMLmNwcApp
bmRleCBlNzBhMGY3YjgzZTllMmY4NDU0Y2QxMWY1YTY0OTg2MWEwMjYzODkzLi41ZWZiODVhMzAz
NGVlM2VlZDAwYmFmZGNmMGU2ODMyMjY1MDc3OGExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9VUkwuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1VSTC5jcHAK
QEAgLTExMjYsMTcgKzExMjYsMTcgQEAgdm9pZCBVUkw6OnNldFBhc3MoY29uc3QgU3RyaW5nJiBw
YXNzd29yZCkKICAgICB9CiB9CiAKLXZvaWQgVVJMOjpzZXRGcmFnbWVudElkZW50aWZpZXIoY29u
c3QgU3RyaW5nJiBzKQordm9pZCBVUkw6OnNldEZyYWdtZW50SWRlbnRpZmllcihTdHJpbmdWaWV3
IGlkZW50aWZpZXIpCiB7CiAgICAgaWYgKCFtX2lzVmFsaWQpCiAgICAgICAgIHJldHVybjsKIAot
ICAgIC8vIEZJWE1FOiBOb24tQVNDSUkgY2hhcmFjdGVycyBtdXN0IGJlIGVuY29kZWQgYW5kIGVz
Y2FwZWQgdG8gbWF0Y2ggcGFyc2UoKSBleHBlY3RhdGlvbnMuCi0gICAgaWYgKFVSTFBhcnNlcjo6
ZW5hYmxlZCgpKSB7Ci0gICAgICAgIFVSTFBhcnNlciBwYXJzZXIobWFrZVN0cmluZyhtX3N0cmlu
Zy5sZWZ0KG1fcXVlcnlFbmQpLCAiIyIsIHMpKTsKLSAgICAgICAgKnRoaXMgPSBwYXJzZXIucmVz
dWx0KCk7Ci0gICAgfSBlbHNlCi0gICAgICAgIHBhcnNlKG1fc3RyaW5nLmxlZnQobV9xdWVyeUVu
ZCkgKyAiIyIgKyBzKTsKKyAgICAvLyBGSVhNRTogT3B0aW1pemUgdGhlIGNhc2Ugd2hlcmUgdGhl
IGlkZW50aWZpZXIgYWxyZWFkeSBoYXBwZW5zIHRvIGJlIGVxdWFsIHRvIHdoYXQgd2FzIHBhc3Nl
ZD8KKyAgICAvLyBGSVhNRTogSXMgaXQgY29ycmVjdCB0byBkbyB0aGlzIHdpdGhvdXQgZW5jb2Rp
bmcgYW5kIGVzY2FwaW5nIG5vbi1BU0NJSSBjaGFyYWN0ZXJzPworICAgIGlmIChVUkxQYXJzZXI6
OmVuYWJsZWQoKSkKKyAgICAgICAgKnRoaXMgPSBVUkxQYXJzZXIgeyBtYWtlU3RyaW5nKFN0cmlu
Z1ZpZXcgeyBtX3N0cmluZyB9LnN1YnN0cmluZygwLCBtX3F1ZXJ5RW5kKSwgJyMnLCBpZGVudGlm
aWVyKSB9LnJlc3VsdCgpOworICAgIGVsc2UKKyAgICAgICAgcGFyc2UobV9zdHJpbmcubGVmdCht
X3F1ZXJ5RW5kKSArICIjIiArIGlkZW50aWZpZXIpOwogfQogCiB2b2lkIFVSTDo6cmVtb3ZlRnJh
Z21lbnRJZGVudGlmaWVyKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1VS
TC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVVJMLmgKaW5kZXggNWFiZjA1ZmU3YzYzNzRm
ZDU1MmE4MDFkYzc4ZGEyZGI2YTZjY2VmZS4uYjJjMjNkZTQxMTc4NDAwMDIwNDMzZDNiMzRiZDY3
YzE2YTU0NWRkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVVJMLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVVJMLmgKQEAgLTE1OCw3ICsxNTgsNyBAQCBwdWJs
aWM6CiAgICAgLy8gVVJMICh3aXRoIG5vdGhpbmcgYWZ0ZXIgaXQpLiBUbyBjbGVhciB0aGUgcXVl
cnksIHBhc3MgYSBudWxsIHN0cmluZy4KICAgICB2b2lkIHNldFF1ZXJ5KGNvbnN0IFN0cmluZyYp
OwogCi0gICAgdm9pZCBzZXRGcmFnbWVudElkZW50aWZpZXIoY29uc3QgU3RyaW5nJik7CisgICAg
dm9pZCBzZXRGcmFnbWVudElkZW50aWZpZXIoU3RyaW5nVmlldyk7CiAgICAgdm9pZCByZW1vdmVG
cmFnbWVudElkZW50aWZpZXIoKTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIGZyaWVuZCBib29sIGVx
dWFsSWdub3JpbmdGcmFnbWVudElkZW50aWZpZXIoY29uc3QgVVJMJiwgY29uc3QgVVJMJik7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZXBsYXkvUmVwbGF5SW5wdXREaXNwYXRjaE1ldGhv
ZHMuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVwbGF5L1JlcGxheUlucHV0RGlzcGF0Y2hNZXRob2Rz
LmNwcAppbmRleCA4NDc1MmEyMzJmZWE2ZTM5ZWM1NzYxNDJmZTM1NzBjMWJjM2QyNDE2Li43ZjNj
MzAwM2MxNTJhZWMwODJmYTk3ZjYwMjZmNzg2ZmE5MmNmNGI0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZXBsYXkvUmVwbGF5SW5wdXREaXNwYXRjaE1ldGhvZHMuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3JlcGxheS9SZXBsYXlJbnB1dERpc3BhdGNoTWV0aG9kcy5jcHAKQEAgLTUwLDgg
KzUwLDkgQEAgdm9pZCBFbmRTZWdtZW50U2VudGluZWw6OmRpc3BhdGNoKFJlcGxheUNvbnRyb2xs
ZXImKQogLy8gTmF2aWdhdGlvbiBpbnB1dHMuCiB2b2lkIEluaXRpYWxOYXZpZ2F0aW9uOjpkaXNw
YXRjaChSZXBsYXlDb250cm9sbGVyJiBjb250cm9sbGVyKQogewotICAgIEZyYW1lJiBmcmFtZSA9
IGNvbnRyb2xsZXIucGFnZSgpLm1haW5GcmFtZSgpOwotICAgIGZyYW1lLm5hdmlnYXRpb25TY2hl
ZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKGZyYW1lLmRvY3VtZW50KCksIG1fc2VjdXJp
dHlPcmlnaW4uZ2V0KCksIG1fdXJsLCBtX3JlZmVycmVyKTsKKyAgICBhdXRvJiBmcmFtZSA9IGNv
bnRyb2xsZXIucGFnZSgpLm1haW5GcmFtZSgpOworICAgIEFTU0VSVChmcmFtZS5kb2N1bWVudCgp
KTsKKyAgICBmcmFtZS5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5n
ZSgqZnJhbWUuZG9jdW1lbnQoKSwgbV9zZWN1cml0eU9yaWdpbi5nZXQoKSwgbV91cmwsIG1fcmVm
ZXJyZXIpOwogfQogCiB2b2lkIEhhbmRsZUtleVByZXNzOjpkaXNwYXRjaChSZXBsYXlDb250cm9s
bGVyJiBjb250cm9sbGVyKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZFSW1h
Z2VFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGRUltYWdlRWxlbWVudC5jcHAK
aW5kZXggMGIzMjcxMGI2ZmE5ZDQzM2ZiODJhYTkxMTZiMjBkNjgxOGQ1YWZiMi4uYzJjZDZmNjVi
MzBiN2EwYmVmNDQ3OGQ1YWM0NzA5ZWQ5Y2ZkMjFhMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvc3ZnL1NWR0ZFSW1hZ2VFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZH
RkVJbWFnZUVsZW1lbnQuY3BwCkBAIC04OCw3ICs4OCw3IEBAIHZvaWQgU1ZHRkVJbWFnZUVsZW1l
bnQ6OnJlcXVlc3RJbWFnZVJlc291cmNlKCkKICAgICBvcHRpb25zLmNvbnRlbnRTZWN1cml0eVBv
bGljeUltcG9zaXRpb24gPSBpc0luVXNlckFnZW50U2hhZG93VHJlZSgpID8gQ29udGVudFNlY3Vy
aXR5UG9saWN5SW1wb3NpdGlvbjo6U2tpcFBvbGljeUNoZWNrIDogQ29udGVudFNlY3VyaXR5UG9s
aWN5SW1wb3NpdGlvbjo6RG9Qb2xpY3lDaGVjazsKIAogICAgIENhY2hlZFJlc291cmNlUmVxdWVz
dCByZXF1ZXN0KFJlc291cmNlUmVxdWVzdChkb2N1bWVudCgpLmNvbXBsZXRlVVJMKGhyZWYoKSkp
LCBvcHRpb25zKTsKLSAgICByZXF1ZXN0LnNldEluaXRpYXRvcih0aGlzKTsKKyAgICByZXF1ZXN0
LnNldEluaXRpYXRvcigqdGhpcyk7CiAgICAgbV9jYWNoZWRJbWFnZSA9IGRvY3VtZW50KCkuY2Fj
aGVkUmVzb3VyY2VMb2FkZXIoKS5yZXF1ZXN0SW1hZ2UoV1RGTW92ZShyZXF1ZXN0KSk7CiAKICAg
ICBpZiAobV9jYWNoZWRJbWFnZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdG
b250RmFjZVVyaUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvbnRGYWNlVXJp
RWxlbWVudC5jcHAKaW5kZXggMzU2NmFjNDY1MzI5ZjdmYTFjZDQ0NmVmMTdhMzY1ZDc1ZWY2ZjI0
My4uNTZkNWU2M2MzYzE1YWFmNmY1ZjZlOWI2OTk0YTkwZTZmZDYyMjM0NCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvbnRGYWNlVXJpRWxlbWVudC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvc3ZnL1NWR0ZvbnRGYWNlVXJpRWxlbWVudC5jcHAKQEAgLTEwNSw3ICsxMDUsNyBA
QCB2b2lkIFNWR0ZvbnRGYWNlVXJpRWxlbWVudDo6bG9hZEZvbnQoKQogCiAgICAgICAgIENhY2hl
ZFJlc291cmNlTG9hZGVyJiBjYWNoZWRSZXNvdXJjZUxvYWRlciA9IGRvY3VtZW50KCkuY2FjaGVk
UmVzb3VyY2VMb2FkZXIoKTsKICAgICAgICAgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3Qo
UmVzb3VyY2VSZXF1ZXN0KGRvY3VtZW50KCkuY29tcGxldGVVUkwoaHJlZikpLCBvcHRpb25zKTsK
LSAgICAgICAgcmVxdWVzdC5zZXRJbml0aWF0b3IodGhpcyk7CisgICAgICAgIHJlcXVlc3Quc2V0
SW5pdGlhdG9yKCp0aGlzKTsKICAgICAgICAgbV9jYWNoZWRGb250ID0gY2FjaGVkUmVzb3VyY2VM
b2FkZXIucmVxdWVzdEZvbnQoV1RGTW92ZShyZXF1ZXN0KSwgaXNTVkdGb250VGFyZ2V0KCp0aGlz
KSk7CiAgICAgICAgIGlmIChtX2NhY2hlZEZvbnQpIHsKICAgICAgICAgICAgIG1fY2FjaGVkRm9u
dC0+YWRkQ2xpZW50KCp0aGlzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdV
c2VFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdVc2VFbGVtZW50LmNwcAppbmRl
eCA4ZjUwMDk5MmY1NWViMjY1NjFhNThmYmMxNTliNjIzMTI3YjE1ODY3Li5lNmI0ZWY2OTczZjM2
MmFiOGRmZjU2ZTkzMDkxZGI5ZGZkOGYyMTkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHVXNlRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1VzZUVsZW1l
bnQuY3BwCkBAIC01NzIsNyArNTcyLDcgQEAgdm9pZCBTVkdVc2VFbGVtZW50Ojp1cGRhdGVFeHRl
cm5hbERvY3VtZW50KCkKICAgICAgICAgb3B0aW9ucy5jb250ZW50U2VjdXJpdHlQb2xpY3lJbXBv
c2l0aW9uID0gaXNJblVzZXJBZ2VudFNoYWRvd1RyZWUoKSA/IENvbnRlbnRTZWN1cml0eVBvbGlj
eUltcG9zaXRpb246OlNraXBQb2xpY3lDaGVjayA6IENvbnRlbnRTZWN1cml0eVBvbGljeUltcG9z
aXRpb246OkRvUG9saWN5Q2hlY2s7CiAgICAgICAgIG9wdGlvbnMubW9kZSA9IEZldGNoT3B0aW9u
czo6TW9kZTo6U2FtZU9yaWdpbjsKICAgICAgICAgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0IHJlcXVl
c3QgeyBSZXNvdXJjZVJlcXVlc3QgeyBleHRlcm5hbERvY3VtZW50VVJMIH0sIG9wdGlvbnMgfTsK
LSAgICAgICAgcmVxdWVzdC5zZXRJbml0aWF0b3IodGhpcyk7CisgICAgICAgIHJlcXVlc3Quc2V0
SW5pdGlhdG9yKCp0aGlzKTsKICAgICAgICAgbV9leHRlcm5hbERvY3VtZW50ID0gZG9jdW1lbnQo
KS5jYWNoZWRSZXNvdXJjZUxvYWRlcigpLnJlcXVlc3RTVkdEb2N1bWVudChXVEZNb3ZlKHJlcXVl
c3QpKTsKICAgICAgICAgaWYgKG1fZXh0ZXJuYWxEb2N1bWVudCkKICAgICAgICAgICAgIG1fZXh0
ZXJuYWxEb2N1bWVudC0+YWRkQ2xpZW50KCp0aGlzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvaW9zL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudElPUy5oIGIvU291cmNlL1dlYktp
dC9pb3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50SU9TLmgKaW5kZXggNjNmNDMwNGEw
MzYyZTUzMzUxYzk2ZDBkN2VkMDdkOTFiMGEwNmY5NC4uNmNkNzAzZDg3M2JkODY1OTgwMDNlMzEz
ZTJlNGQ4MmRkYjg2MDc4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9pb3MvV2ViQ29yZVN1
cHBvcnQvV2ViQ2hyb21lQ2xpZW50SU9TLmgKKysrIGIvU291cmNlL1dlYktpdC9pb3MvV2ViQ29y
ZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50SU9TLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29w
eXJpZ2h0IChDKSAyMDA4LCAyMDA5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
IENvcHlyaWdodCAoQykgMjAwOC0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
ICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMjQsNzMgKzI0LDc3IEBACiAgKi8K
IAogI2lmIFBMQVRGT1JNKElPUykKKwogI2ltcG9ydCAiV2ViQ2hyb21lQ2xpZW50LmgiCiAKLWNs
YXNzIFdlYkNocm9tZUNsaWVudElPUyA6IHB1YmxpYyBXZWJDaHJvbWVDbGllbnQgeworY2xhc3Mg
V2ViQ2hyb21lQ2xpZW50SU9TIGZpbmFsIDogcHVibGljIFdlYkNocm9tZUNsaWVudCB7CiBwdWJs
aWM6Ci0gICAgV2ViQ2hyb21lQ2xpZW50SU9TKFdlYlZpZXcgKndlYlZpZXcpCisgICAgV2ViQ2hy
b21lQ2xpZW50SU9TKFdlYlZpZXcqIHdlYlZpZXcpCiAgICAgICAgIDogV2ViQ2hyb21lQ2xpZW50
KHdlYlZpZXcpCi0gICAgICAgICwgbV9mb3JtTm90aWZpY2F0aW9uU3VwcHJlc3Npb25zKDApIHsg
fQotICAgIAotICAgIHZvaWQgc2V0V2luZG93UmVjdChjb25zdCBXZWJDb3JlOjpGbG9hdFJlY3Qm
KSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpGbG9hdFJlY3Qgd2luZG93UmVjdCgpIG92ZXJyaWRl
OwotICAgIHZvaWQgc2V0U3RhdHVzYmFyVGV4dChjb25zdCBXVEY6OlN0cmluZyYpIG92ZXJyaWRl
IHsgfQorICAgIHsKKyAgICB9CisKK3ByaXZhdGU6CisgICAgdm9pZCBzZXRXaW5kb3dSZWN0KGNv
bnN0IFdlYkNvcmU6OkZsb2F0UmVjdCYpIGZpbmFsOworICAgIFdlYkNvcmU6OkZsb2F0UmVjdCB3
aW5kb3dSZWN0KCkgZmluYWw7CisgICAgdm9pZCBzZXRTdGF0dXNiYXJUZXh0KGNvbnN0IFdURjo6
U3RyaW5nJikgZmluYWwgeyB9CiAKLSAgICB2b2lkIGZvY3VzKCkgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCB0YWtlRm9jdXMoV2ViQ29yZTo6Rm9jdXNEaXJlY3Rpb24pIG92ZXJyaWRlIHsgfQorICAgIHZv
aWQgZm9jdXMoKSBmaW5hbDsKKyAgICB2b2lkIHRha2VGb2N1cyhXZWJDb3JlOjpGb2N1c0RpcmVj
dGlvbikgZmluYWwgeyB9CiAKLSAgICB2b2lkIHJ1bkphdmFTY3JpcHRBbGVydChXZWJDb3JlOjpG
cmFtZSosIGNvbnN0IFdURjo6U3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBydW5KYXZhU2Ny
aXB0Q29uZmlybShXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdURjo6U3RyaW5nJikgb3ZlcnJpZGU7
Ci0gICAgYm9vbCBydW5KYXZhU2NyaXB0UHJvbXB0KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV1RG
OjpTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFdURjo6U3RyaW5nJiBkZWZhdWx0VmFsdWUsIFdURjo6
U3RyaW5nJiByZXN1bHQpIG92ZXJyaWRlOworICAgIHZvaWQgcnVuSmF2YVNjcmlwdEFsZXJ0KFdl
YkNvcmU6OkZyYW1lKiwgY29uc3QgV1RGOjpTdHJpbmcmKSBmaW5hbDsKKyAgICBib29sIHJ1bkph
dmFTY3JpcHRDb25maXJtKFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV1RGOjpTdHJpbmcmKSBmaW5h
bDsKKyAgICBib29sIHJ1bkphdmFTY3JpcHRQcm9tcHQoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBX
VEY6OlN0cmluZyYgbWVzc2FnZSwgY29uc3QgV1RGOjpTdHJpbmcmIGRlZmF1bHRWYWx1ZSwgV1RG
OjpTdHJpbmcmIHJlc3VsdCkgZmluYWw7CiAKLSAgICB2b2lkIHJ1bk9wZW5QYW5lbChXZWJDb3Jl
OjpGcmFtZSosIFBhc3NSZWZQdHI8V2ViQ29yZTo6RmlsZUNob29zZXI+KSBvdmVycmlkZTsKKyAg
ICB2b2lkIHJ1bk9wZW5QYW5lbChXZWJDb3JlOjpGcmFtZSYsIFdlYkNvcmU6OkZpbGVDaG9vc2Vy
JikgZmluYWw7CiAKICNpZiBFTkFCTEUoVE9VQ0hfRVZFTlRTKQotICAgIHZvaWQgZGlkUHJldmVu
dERlZmF1bHRGb3JFdmVudCgpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkUHJldmVudERlZmF1bHRG
b3JFdmVudCgpIGZpbmFsOwogI2VuZGlmCi0gICAgdm9pZCBkaWRSZWNlaXZlTW9iaWxlRG9jVHlw
ZShib29sKSBvdmVycmlkZTsKLSAgICB2b2lkIHNldE5lZWRzU2Nyb2xsTm90aWZpY2F0aW9ucyhX
ZWJDb3JlOjpGcmFtZSosIGJvb2wpIG92ZXJyaWRlOwotICAgIHZvaWQgb2JzZXJ2ZWRDb250ZW50
Q2hhbmdlKFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBjbGVhckNvbnRlbnRD
aGFuZ2VPYnNlcnZlcnMoV2ViQ29yZTo6RnJhbWUqKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpG
bG9hdFNpemUgc2NyZWVuU2l6ZSgpIGNvbnN0IG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OkZsb2F0
U2l6ZSBhdmFpbGFibGVTY3JlZW5TaXplKCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNw
YXRjaFZpZXdwb3J0UHJvcGVydGllc0RpZENoYW5nZShjb25zdCBXZWJDb3JlOjpWaWV3cG9ydEFy
Z3VtZW50cyYpIGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQgbm90aWZ5UmV2ZWFsZWRTZWxlY3Rp
b25CeVNjcm9sbGluZ0ZyYW1lKFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBp
c1N0b3BwaW5nKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRMYXlvdXQoTGF5b3V0VHlwZSkgb3Zl
cnJpZGU7Ci0gICAgdm9pZCBkaWRTdGFydE92ZXJmbG93U2Nyb2xsKCkgb3ZlcnJpZGU7Ci0gICAg
dm9pZCBkaWRFbmRPdmVyZmxvd1Njcm9sbCgpIG92ZXJyaWRlOwotCi0gICAgdm9pZCBzdXBwcmVz
c0Zvcm1Ob3RpZmljYXRpb25zKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCByZXN0b3JlRm9ybU5vdGlm
aWNhdGlvbnMoKSBvdmVycmlkZTsKKworICAgIHZvaWQgZGlkUmVjZWl2ZU1vYmlsZURvY1R5cGUo
Ym9vbCkgZmluYWw7CisgICAgdm9pZCBzZXROZWVkc1Njcm9sbE5vdGlmaWNhdGlvbnMoV2ViQ29y
ZTo6RnJhbWUqLCBib29sKSBmaW5hbDsKKyAgICB2b2lkIG9ic2VydmVkQ29udGVudENoYW5nZShX
ZWJDb3JlOjpGcmFtZSopIGZpbmFsOworICAgIHZvaWQgY2xlYXJDb250ZW50Q2hhbmdlT2JzZXJ2
ZXJzKFdlYkNvcmU6OkZyYW1lKikgZmluYWw7CisgICAgV2ViQ29yZTo6RmxvYXRTaXplIHNjcmVl
blNpemUoKSBjb25zdCBmaW5hbDsKKyAgICBXZWJDb3JlOjpGbG9hdFNpemUgYXZhaWxhYmxlU2Ny
ZWVuU2l6ZSgpIGNvbnN0IGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hWaWV3cG9ydFByb3BlcnRp
ZXNEaWRDaGFuZ2UoY29uc3QgV2ViQ29yZTo6Vmlld3BvcnRBcmd1bWVudHMmKSBjb25zdCBmaW5h
bDsKKyAgICB2b2lkIG5vdGlmeVJldmVhbGVkU2VsZWN0aW9uQnlTY3JvbGxpbmdGcmFtZShXZWJD
b3JlOjpGcmFtZSopIGZpbmFsOworICAgIGJvb2wgaXNTdG9wcGluZygpIGZpbmFsOworICAgIHZv
aWQgZGlkTGF5b3V0KExheW91dFR5cGUpIGZpbmFsOworICAgIHZvaWQgZGlkU3RhcnRPdmVyZmxv
d1Njcm9sbCgpIGZpbmFsOworICAgIHZvaWQgZGlkRW5kT3ZlcmZsb3dTY3JvbGwoKSBmaW5hbDsK
KworICAgIHZvaWQgc3VwcHJlc3NGb3JtTm90aWZpY2F0aW9ucygpIGZpbmFsOworICAgIHZvaWQg
cmVzdG9yZUZvcm1Ob3RpZmljYXRpb25zKCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBlbGVtZW50
RGlkRm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9kZSopIG92ZXJyaWRlOwotICAgIHZvaWQgZWxlbWVu
dERpZEJsdXIoY29uc3QgV2ViQ29yZTo6Tm9kZSopIG92ZXJyaWRlOworICAgIHZvaWQgZWxlbWVu
dERpZEZvY3VzKGNvbnN0IFdlYkNvcmU6Ok5vZGUqKSBmaW5hbDsKKyAgICB2b2lkIGVsZW1lbnRE
aWRCbHVyKGNvbnN0IFdlYkNvcmU6Ok5vZGUqKSBmaW5hbDsKIAotICAgIHZvaWQgYXR0YWNoUm9v
dEdyYXBoaWNzTGF5ZXIoV2ViQ29yZTo6RnJhbWUqLCBXZWJDb3JlOjpHcmFwaGljc0xheWVyKikg
b3ZlcnJpZGU7CisgICAgdm9pZCBhdHRhY2hSb290R3JhcGhpY3NMYXllcihXZWJDb3JlOjpGcmFt
ZSosIFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXIqKSBmaW5hbDsKIAotICAgIHZvaWQgZGlkRmx1c2hD
b21wb3NpdGluZ0xheWVycygpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkRmx1c2hDb21wb3NpdGlu
Z0xheWVycygpIGZpbmFsOwogCi0gICAgdm9pZCB1cGRhdGVWaWV3cG9ydENvbnN0cmFpbmVkTGF5
ZXJzKEhhc2hNYXA8UGxhdGZvcm1MYXllciosIHN0ZDo6dW5pcXVlX3B0cjxXZWJDb3JlOjpWaWV3
cG9ydENvbnN0cmFpbnRzPj4mLCBIYXNoTWFwPFBsYXRmb3JtTGF5ZXIqLCBQbGF0Zm9ybUxheWVy
Kj4mKSBvdmVycmlkZTsKKyAgICB2b2lkIHVwZGF0ZVZpZXdwb3J0Q29uc3RyYWluZWRMYXllcnMo
SGFzaE1hcDxQbGF0Zm9ybUxheWVyKiwgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6OlZpZXdwb3J0
Q29uc3RyYWludHM+PiYsIEhhc2hNYXA8UGxhdGZvcm1MYXllciosIFBsYXRmb3JtTGF5ZXIqPiYp
IGZpbmFsOwogCi0gICAgYm9vbCBmZXRjaEN1c3RvbUZpeGVkUG9zaXRpb25MYXlvdXRSZWN0KFdl
YkNvcmU6OkludFJlY3QmKSBvdmVycmlkZTsKLSAgICB2b2lkIGFkZE9yVXBkYXRlU2Nyb2xsaW5n
TGF5ZXIoV2ViQ29yZTo6Tm9kZSosIFBsYXRmb3JtTGF5ZXIqLCBQbGF0Zm9ybUxheWVyKiwgY29u
c3QgV2ViQ29yZTo6SW50U2l6ZSYsIGJvb2wgYWxsb3dIb3Jpem9udGFsU2Nyb2xsYmFyLCBib29s
IGFsbG93VmVydGljYWxTY3JvbGxiYXIpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVtb3ZlU2Nyb2xs
aW5nTGF5ZXIoV2ViQ29yZTo6Tm9kZSosIFBsYXRmb3JtTGF5ZXIqLCBQbGF0Zm9ybUxheWVyKikg
b3ZlcnJpZGU7CisgICAgYm9vbCBmZXRjaEN1c3RvbUZpeGVkUG9zaXRpb25MYXlvdXRSZWN0KFdl
YkNvcmU6OkludFJlY3QmKSBmaW5hbDsKKyAgICB2b2lkIGFkZE9yVXBkYXRlU2Nyb2xsaW5nTGF5
ZXIoV2ViQ29yZTo6Tm9kZSosIFBsYXRmb3JtTGF5ZXIqLCBQbGF0Zm9ybUxheWVyKiwgY29uc3Qg
V2ViQ29yZTo6SW50U2l6ZSYsIGJvb2wgYWxsb3dIb3Jpem9udGFsU2Nyb2xsYmFyLCBib29sIGFs
bG93VmVydGljYWxTY3JvbGxiYXIpIGZpbmFsOworICAgIHZvaWQgcmVtb3ZlU2Nyb2xsaW5nTGF5
ZXIoV2ViQ29yZTo6Tm9kZSosIFBsYXRmb3JtTGF5ZXIqLCBQbGF0Zm9ybUxheWVyKikgZmluYWw7
CiAKLSAgICBib29sIHNlbGVjdEl0ZW1Xcml0aW5nRGlyZWN0aW9uSXNOYXR1cmFsKCkgb3ZlcnJp
ZGU7Ci0gICAgYm9vbCBzZWxlY3RJdGVtQWxpZ25tZW50Rm9sbG93c01lbnVXcml0aW5nRGlyZWN0
aW9uKCkgb3ZlcnJpZGU7Ci0gICAgUmVmUHRyPFdlYkNvcmU6OlBvcHVwTWVudT4gY3JlYXRlUG9w
dXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCopIGNvbnN0IG92ZXJyaWRlOwotICAgIFJl
ZlB0cjxXZWJDb3JlOjpTZWFyY2hQb3B1cE1lbnU+IGNyZWF0ZVNlYXJjaFBvcHVwTWVudShXZWJD
b3JlOjpQb3B1cE1lbnVDbGllbnQqKSBjb25zdCBvdmVycmlkZTsKKyAgICBib29sIHNlbGVjdEl0
ZW1Xcml0aW5nRGlyZWN0aW9uSXNOYXR1cmFsKCkgZmluYWw7CisgICAgYm9vbCBzZWxlY3RJdGVt
QWxpZ25tZW50Rm9sbG93c01lbnVXcml0aW5nRGlyZWN0aW9uKCkgZmluYWw7CisgICAgUmVmUHRy
PFdlYkNvcmU6OlBvcHVwTWVudT4gY3JlYXRlUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNs
aWVudCopIGNvbnN0IGZpbmFsOworICAgIFJlZlB0cjxXZWJDb3JlOjpTZWFyY2hQb3B1cE1lbnU+
IGNyZWF0ZVNlYXJjaFBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1lbnVDbGllbnQqKSBjb25zdCBm
aW5hbDsKIAotICAgIHZvaWQgd2ViQXBwT3JpZW50YXRpb25zVXBkYXRlZCgpIG92ZXJyaWRlOwot
ICAgIHZvaWQgZm9jdXNlZEVsZW1lbnRDaGFuZ2VkKFdlYkNvcmU6OkVsZW1lbnQqKSBvdmVycmlk
ZTsKLSAgICB2b2lkIHNob3dQbGF5YmFja1RhcmdldFBpY2tlcihib29sIGhhc1ZpZGVvKSBvdmVy
cmlkZTsKKyAgICB2b2lkIHdlYkFwcE9yaWVudGF0aW9uc1VwZGF0ZWQoKSBmaW5hbDsKKyAgICB2
b2lkIGZvY3VzZWRFbGVtZW50Q2hhbmdlZChXZWJDb3JlOjpFbGVtZW50KikgZmluYWw7CisgICAg
dm9pZCBzaG93UGxheWJhY2tUYXJnZXRQaWNrZXIoYm9vbCBoYXNWaWRlbykgZmluYWw7CiAKICNp
ZiBFTkFCTEUoT1JJRU5UQVRJT05fRVZFTlRTKQotICAgIGludCBkZXZpY2VPcmllbnRhdGlvbigp
IGNvbnN0IG92ZXJyaWRlOworICAgIGludCBkZXZpY2VPcmllbnRhdGlvbigpIGNvbnN0IGZpbmFs
OwogI2VuZGlmCiAKLXByaXZhdGU6Ci0gICAgaW50IG1fZm9ybU5vdGlmaWNhdGlvblN1cHByZXNz
aW9uczsKKyAgICBpbnQgbV9mb3JtTm90aWZpY2F0aW9uU3VwcHJlc3Npb25zIHsgMCB9OwogfTsK
KwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2lvcy9XZWJDb3JlU3VwcG9ydC9X
ZWJDaHJvbWVDbGllbnRJT1MubW0gYi9Tb3VyY2UvV2ViS2l0L2lvcy9XZWJDb3JlU3VwcG9ydC9X
ZWJDaHJvbWVDbGllbnRJT1MubW0KaW5kZXggMTFmODRlYjlmOTNkN2RmMWM4MmViODQyNTI0NGE2
YWMxZDgyYzBlYy4uNTNlOGYwZWJiZTUyODQzMmEwZjllNGJlNGNmY2Q0MjNmZDczZTAzOSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9pb3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50
SU9TLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvaW9zL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNs
aWVudElPUy5tbQpAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDgsIDIw
MDkgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4
LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAog
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCkBAIC0yMyw5ICsyMywxMCBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgogICovCiAKLSNpZiBQTEFURk9STShJT1MpCiAjaW1wb3J0ICJXZWJDaHJvbWVD
bGllbnRJT1MuaCIKIAorI2lmIFBMQVRGT1JNKElPUykKKwogI2ltcG9ydCAiRE9NTm9kZUludGVy
bmFsLmgiCiAjaW1wb3J0ICJQb3B1cE1lbnVJT1MuaCIKICNpbXBvcnQgIlNlYXJjaFBvcHVwTWVu
dUlPUy5oIgpAQCAtNDMsOSArNDQsNiBAQAogI2ltcG9ydCAiV2ViVmlldy5oIgogI2ltcG9ydCAi
V2ViVmlld0ludGVybmFsLmgiCiAjaW1wb3J0ICJXZWJWaWV3UHJpdmF0ZS5oIgotCi0jaW1wb3J0
IDx3dGYvSGFzaE1hcC5oPgotI2ltcG9ydCA8d3RmL1JlZlB0ci5oPgogI2ltcG9ydCA8V2ViQ29y
ZS9GaWxlQ2hvb3Nlci5oPgogI2ltcG9ydCA8V2ViQ29yZS9GbG9hdFJlY3QuaD4KICNpbXBvcnQg
PFdlYkNvcmUvRnJhbWUuaD4KQEAgLTYxLDYgKzU5LDggQEAKICNpbXBvcnQgPFdlYkNvcmUvU2Ny
b2xsaW5nQ29uc3RyYWludHMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV0FLV2luZG93Lmg+CiAjaW1w
b3J0IDxXZWJDb3JlL1dlYkNvcmVUaHJlYWRNZXNzYWdlLmg+CisjaW1wb3J0IDx3dGYvSGFzaE1h
cC5oPgorI2ltcG9ydCA8d3RmL1JlZlB0ci5oPgogCiBOU1N0cmluZyAqIGNvbnN0IFdlYk9wZW5Q
YW5lbENvbmZpZ3VyYXRpb25BbGxvd011bHRpcGxlRmlsZXNLZXkgPSBAIldlYk9wZW5QYW5lbENv
bmZpZ3VyYXRpb25BbGxvd011bHRpcGxlRmlsZXNLZXkiOwogTlNTdHJpbmcgKiBjb25zdCBXZWJP
cGVuUGFuZWxDb25maWd1cmF0aW9uTWVkaWFDYXB0dXJlVHlwZUtleSA9IEAiV2ViT3BlblBhbmVs
Q29uZmlndXJhdGlvbk1lZGlhQ2FwdHVyZVR5cGVLZXkiOwpAQCAtNjksOSArNjksMTAgQEAgTlNT
dHJpbmcgKiBjb25zdCBXZWJPcGVuUGFuZWxDb25maWd1cmF0aW9uTWltZVR5cGVzS2V5ID0gQCJX
ZWJPcGVuUGFuZWxDb25maWd1cmEKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCiAjaWYgRU5B
QkxFKE1FRElBX0NBUFRVUkUpCi1zdGF0aWMgV2ViTWVkaWFDYXB0dXJlVHlwZSB3ZWJNZWRpYUNh
cHR1cmVUeXBlKE1lZGlhQ2FwdHVyZVR5cGUgbWVkaWFDYXB0dXJlVHlwZSkKKworc3RhdGljIFdl
Yk1lZGlhQ2FwdHVyZVR5cGUgd2ViTWVkaWFDYXB0dXJlVHlwZShNZWRpYUNhcHR1cmVUeXBlIHR5
cGUpCiB7Ci0gICAgc3dpdGNoIChtZWRpYUNhcHR1cmVUeXBlKSB7CisgICAgc3dpdGNoICh0eXBl
KSB7CiAgICAgY2FzZSBNZWRpYUNhcHR1cmVUeXBlTm9uZToKICAgICAgICAgcmV0dXJuIFdlYk1l
ZGlhQ2FwdHVyZVR5cGVOb25lOwogICAgIGNhc2UgTWVkaWFDYXB0dXJlVHlwZVVzZXI6CkBAIC04
Myw2ICs4NCw3IEBAIHN0YXRpYyBXZWJNZWRpYUNhcHR1cmVUeXBlIHdlYk1lZGlhQ2FwdHVyZVR5
cGUoTWVkaWFDYXB0dXJlVHlwZSBtZWRpYUNhcHR1cmVUeXBlCiAgICAgQVNTRVJUX05PVF9SRUFD
SEVEKCk7CiAgICAgcmV0dXJuIFdlYk1lZGlhQ2FwdHVyZVR5cGVOb25lOwogfQorCiAjZW5kaWYK
IAogdm9pZCBXZWJDaHJvbWVDbGllbnRJT1M6OnNldFdpbmRvd1JlY3QoY29uc3QgV2ViQ29yZTo6
RmxvYXRSZWN0JiByKQpAQCAtMTI0LDE4ICsxMjYsMTUgQEAgYm9vbCBXZWJDaHJvbWVDbGllbnRJ
T1M6OnJ1bkphdmFTY3JpcHRQcm9tcHQoRnJhbWUqIGZyYW1lLCBjb25zdCBXVEY6OlN0cmluZyYg
cHIKICAgICByZXR1cm4gIXJlc3VsdC5pc051bGwoKTsKIH0KIAotdm9pZCBXZWJDaHJvbWVDbGll
bnRJT1M6OnJ1bk9wZW5QYW5lbChGcmFtZSosIFBhc3NSZWZQdHI8RmlsZUNob29zZXI+IGNob29z
ZXIpCit2b2lkIFdlYkNocm9tZUNsaWVudElPUzo6cnVuT3BlblBhbmVsKEZyYW1lJiwgRmlsZUNo
b29zZXImIGNob29zZXIpCiB7Ci0gICAgY29uc3QgRmlsZUNob29zZXJTZXR0aW5ncyYgc2V0dGlu
Z3MgPSBjaG9vc2VyLT5zZXR0aW5ncygpOworICAgIGF1dG8mIHNldHRpbmdzID0gY2hvb3Nlci5z
ZXR0aW5ncygpOwogICAgIEJPT0wgYWxsb3dNdWx0aXBsZUZpbGVzID0gc2V0dGluZ3MuYWxsb3dz
TXVsdGlwbGVGaWxlczsKLSAgICBWZWN0b3I8U3RyaW5nPiBhY2NlcHRNSU1FVHlwZXMgPSBzZXR0
aW5ncy5hY2NlcHRNSU1FVHlwZXM7CiAgICAgV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIgKmxp
c3RlbmVyID0gW1tXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lciBhbGxvY10gaW5pdFdpdGhDaG9v
c2VyOmNob29zZXJdOwogCi0gICAgLy8gQ29udmVydCB0aGUgYWNjZXB0IGF0dHJpYnV0ZSBzdHJp
bmcgaW50byBhIGxpc3Qgb2YgTUlNRSB0eXBlcy4KLSAgICBzaXplX3QgbnVtTUlNRVR5cGVzID0g
YWNjZXB0TUlNRVR5cGVzLnNpemUoKTsKLSAgICBOU011dGFibGVBcnJheSAqbWltZVR5cGVzID0g
W05TTXV0YWJsZUFycmF5IGFycmF5V2l0aENhcGFjaXR5Om51bU1JTUVUeXBlc107Ci0gICAgZm9y
IChzaXplX3QgaSA9IDA7IGkgPCBudW1NSU1FVHlwZXM7ICsraSkKLSAgICAgICAgW21pbWVUeXBl
cyBhZGRPYmplY3Q6YWNjZXB0TUlNRVR5cGVzW2ldXTsKKyAgICBOU011dGFibGVBcnJheSAqbWlt
ZVR5cGVzID0gW05TTXV0YWJsZUFycmF5IGFycmF5V2l0aENhcGFjaXR5OnNldHRpbmdzLmFjY2Vw
dE1JTUVUeXBlcy5zaXplKCldOworICAgIGZvciAoYXV0byYgdHlwZSA6IHNldHRpbmdzLmFjY2Vw
dE1JTUVUeXBlcykKKyAgICAgICAgW21pbWVUeXBlcyBhZGRPYmplY3Q6dHlwZV07CiAKICAgICBX
ZWJNZWRpYUNhcHR1cmVUeXBlIGNhcHR1cmVUeXBlID0gV2ViTWVkaWFDYXB0dXJlVHlwZU5vbmU7
CiAjaWYgRU5BQkxFKE1FRElBX0NBUFRVUkUpCkBAIC0xNTgsMTAgKzE1NywxMiBAQCB2b2lkIFdl
YkNocm9tZUNsaWVudElPUzo6cnVuT3BlblBhbmVsKEZyYW1lKiwgUGFzc1JlZlB0cjxGaWxlQ2hv
b3Nlcj4gY2hvb3NlcikKIH0KIAogI2lmIEVOQUJMRShJT1NfVE9VQ0hfRVZFTlRTKQorCiB2b2lk
IFdlYkNocm9tZUNsaWVudElPUzo6ZGlkUHJldmVudERlZmF1bHRGb3JFdmVudCgpCiB7CiAgICAg
W1t3ZWJWaWV3KCkgX1VJS2l0RGVsZWdhdGVGb3J3YXJkZXJdIHdlYlZpZXdEaWRQcmV2ZW50RGVm
YXVsdEZvckV2ZW50OndlYlZpZXcoKV07CiB9CisKICNlbmRpZgogCiB2b2lkIFdlYkNocm9tZUNs
aWVudElPUzo6ZGlkUmVjZWl2ZU1vYmlsZURvY1R5cGUoYm9vbCBpc01vYmlsZURvY3R5cGUpCkBA
IC0zNTUsMTAgKzM1NiwxMiBAQCB2b2lkIFdlYkNocm9tZUNsaWVudElPUzo6c2hvd1BsYXliYWNr
VGFyZ2V0UGlja2VyKGJvb2wgaGFzVmlkZW8pCiB9CiAKICNpZiBFTkFCTEUoT1JJRU5UQVRJT05f
RVZFTlRTKQorCiBpbnQgV2ViQ2hyb21lQ2xpZW50SU9TOjpkZXZpY2VPcmllbnRhdGlvbigpIGNv
bnN0CiB7CiAgICAgcmV0dXJuIFtbd2ViVmlldygpIF9VSUtpdERlbGVnYXRlRm9yd2FyZGVyXSBk
ZXZpY2VPcmllbnRhdGlvbl07CiB9CisKICNlbmRpZgogCiAjZW5kaWYgLy8gUExBVEZPUk0oSU9T
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21l
Q2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGll
bnQuaAppbmRleCA0OGFiZTMwOGE4ZmVmNzVhZjg2ODZlMWU1M2E4M2M4NzIxZjgyN2Y5Li5mNGYw
OTZjNWQ2NDczZWJjNmU3YWJkNTgzYjZkZmVmNGFhYTRkMTU5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaApAQCAtMzMsMTMwICsz
MywxMzggQEAKIAogQGNsYXNzIFdlYlZpZXc7CiAKKy8vIEZJWE1FOiBUaGlzIGNsYXNzIGlzIHVz
ZWQgYXMgYSBjb25jcmV0ZSBjbGFzcyBvbiBNYWMsIGJ1dCBvbiBpT1MgdGhpcyBpcyBhbiBhYnN0
cmFjdAorLy8gYmFzZSBjbGFzcyBvZiB0aGUgY29uY3JldGUgY2xhc3MsIFdlYkNocm9tZUNsaWVu
dElPUy4gQmVjYXVzZSBvZiB0aGF0LCB0aGlzIGNsYXNzIGFuZAorLy8gbWFueSBvZiBpdHMgZnVu
Y3Rpb25zIGFyZSBub3QgbWFya2VkIGZpbmFsLiBUaGF0IGlzIG1lc3N5IHdheSB0byBvcmdhbml6
ZSB0aGluZ3MuCiBjbGFzcyBXZWJDaHJvbWVDbGllbnQgOiBwdWJsaWMgV2ViQ29yZTo6Q2hyb21l
Q2xpZW50IHsKIHB1YmxpYzoKICAgICBXZWJDaHJvbWVDbGllbnQoV2ViVmlldyopOwotICAgIAot
ICAgIHZvaWQgY2hyb21lRGVzdHJveWVkKCkgb3ZlcnJpZGU7Ci0gICAgCisKKyAgICBXZWJWaWV3
KiB3ZWJWaWV3KCkgY29uc3QgeyByZXR1cm4gbV93ZWJWaWV3OyB9CisKK3ByaXZhdGU6CisgICAg
dm9pZCBjaHJvbWVEZXN0cm95ZWQoKSBmaW5hbDsKKwogICAgIHZvaWQgc2V0V2luZG93UmVjdChj
b25zdCBXZWJDb3JlOjpGbG9hdFJlY3QmKSBvdmVycmlkZTsKICAgICBXZWJDb3JlOjpGbG9hdFJl
Y3Qgd2luZG93UmVjdCgpIG92ZXJyaWRlOwogCi0gICAgV2ViQ29yZTo6RmxvYXRSZWN0IHBhZ2VS
ZWN0KCkgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6RmxvYXRSZWN0IHBhZ2VSZWN0KCkgZmluYWw7
CiAKICAgICB2b2lkIGZvY3VzKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCB1bmZvY3VzKCkgb3ZlcnJp
ZGU7Ci0gICAgCi0gICAgYm9vbCBjYW5UYWtlRm9jdXMoV2ViQ29yZTo6Rm9jdXNEaXJlY3Rpb24p
IG92ZXJyaWRlOworICAgIHZvaWQgdW5mb2N1cygpIGZpbmFsOworCisgICAgYm9vbCBjYW5UYWtl
Rm9jdXMoV2ViQ29yZTo6Rm9jdXNEaXJlY3Rpb24pIGZpbmFsOwogICAgIHZvaWQgdGFrZUZvY3Vz
KFdlYkNvcmU6OkZvY3VzRGlyZWN0aW9uKSBvdmVycmlkZTsKIAogICAgIHZvaWQgZm9jdXNlZEVs
ZW1lbnRDaGFuZ2VkKFdlYkNvcmU6OkVsZW1lbnQqKSBvdmVycmlkZTsKLSAgICB2b2lkIGZvY3Vz
ZWRGcmFtZUNoYW5nZWQoV2ViQ29yZTo6RnJhbWUqKSBvdmVycmlkZTsKLQotICAgIFdlYkNvcmU6
OlBhZ2UqIGNyZWF0ZVdpbmRvdyhXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6OkZyYW1l
TG9hZFJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpXaW5kb3dGZWF0dXJlcyYsIGNvbnN0IFdlYkNv
cmU6Ok5hdmlnYXRpb25BY3Rpb24mKSBvdmVycmlkZTsKLSAgICB2b2lkIHNob3coKSBvdmVycmlk
ZTsKLQotICAgIGJvb2wgY2FuUnVuTW9kYWwoKSBvdmVycmlkZTsKLSAgICB2b2lkIHJ1bk1vZGFs
KCkgb3ZlcnJpZGU7Ci0KLSAgICB2b2lkIHNldFRvb2xiYXJzVmlzaWJsZShib29sKSBvdmVycmlk
ZTsKLSAgICBib29sIHRvb2xiYXJzVmlzaWJsZSgpIG92ZXJyaWRlOwotICAgIAotICAgIHZvaWQg
c2V0U3RhdHVzYmFyVmlzaWJsZShib29sKSBvdmVycmlkZTsKLSAgICBib29sIHN0YXR1c2JhclZp
c2libGUoKSBvdmVycmlkZTsKLSAgICAKLSAgICB2b2lkIHNldFNjcm9sbGJhcnNWaXNpYmxlKGJv
b2wpIG92ZXJyaWRlOwotICAgIGJvb2wgc2Nyb2xsYmFyc1Zpc2libGUoKSBvdmVycmlkZTsKLSAg
ICAKLSAgICB2b2lkIHNldE1lbnViYXJWaXNpYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJvb2wg
bWVudWJhclZpc2libGUoKSBvdmVycmlkZTsKLSAgICAKLSAgICB2b2lkIHNldFJlc2l6YWJsZShi
b29sKSBvdmVycmlkZTsKLSAgICAKLSAgICB2b2lkIGFkZE1lc3NhZ2VUb0NvbnNvbGUoSlNDOjpN
ZXNzYWdlU291cmNlLCBKU0M6Ok1lc3NhZ2VMZXZlbCwgY29uc3QgV1RGOjpTdHJpbmcmIG1lc3Nh
Z2UsIHVuc2lnbmVkIGxpbmVOdW1iZXIsIHVuc2lnbmVkIGNvbHVtbk51bWJlciwgY29uc3QgV1RG
OjpTdHJpbmcmIHNvdXJjZVVSTCkgb3ZlcnJpZGU7Ci0KLSAgICBib29sIGNhblJ1bkJlZm9yZVVu
bG9hZENvbmZpcm1QYW5lbCgpIG92ZXJyaWRlOwotICAgIGJvb2wgcnVuQmVmb3JlVW5sb2FkQ29u
ZmlybVBhbmVsKGNvbnN0IFdURjo6U3RyaW5nJiBtZXNzYWdlLCBXZWJDb3JlOjpGcmFtZSopIG92
ZXJyaWRlOwotCi0gICAgdm9pZCBjbG9zZVdpbmRvd1Nvb24oKSBvdmVycmlkZTsKKyAgICB2b2lk
IGZvY3VzZWRGcmFtZUNoYW5nZWQoV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKKworICAgIFdlYkNv
cmU6OlBhZ2UqIGNyZWF0ZVdpbmRvdyhXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6OkZy
YW1lTG9hZFJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpXaW5kb3dGZWF0dXJlcyYsIGNvbnN0IFdl
YkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mKSBmaW5hbDsKKyAgICB2b2lkIHNob3coKSBmaW5hbDsK
KworICAgIGJvb2wgY2FuUnVuTW9kYWwoKSBmaW5hbDsKKyAgICB2b2lkIHJ1bk1vZGFsKCkgZmlu
YWw7CisKKyAgICB2b2lkIHNldFRvb2xiYXJzVmlzaWJsZShib29sKSBmaW5hbDsKKyAgICBib29s
IHRvb2xiYXJzVmlzaWJsZSgpIGZpbmFsOworCisgICAgdm9pZCBzZXRTdGF0dXNiYXJWaXNpYmxl
KGJvb2wpIGZpbmFsOworICAgIGJvb2wgc3RhdHVzYmFyVmlzaWJsZSgpIGZpbmFsOworCisgICAg
dm9pZCBzZXRTY3JvbGxiYXJzVmlzaWJsZShib29sKSBmaW5hbDsKKyAgICBib29sIHNjcm9sbGJh
cnNWaXNpYmxlKCkgZmluYWw7CisKKyAgICB2b2lkIHNldE1lbnViYXJWaXNpYmxlKGJvb2wpIGZp
bmFsOworICAgIGJvb2wgbWVudWJhclZpc2libGUoKSBmaW5hbDsKKworICAgIHZvaWQgc2V0UmVz
aXphYmxlKGJvb2wpIGZpbmFsOworCisgICAgdm9pZCBhZGRNZXNzYWdlVG9Db25zb2xlKEpTQzo6
TWVzc2FnZVNvdXJjZSwgSlNDOjpNZXNzYWdlTGV2ZWwsIGNvbnN0IFdURjo6U3RyaW5nJiBtZXNz
YWdlLCB1bnNpZ25lZCBsaW5lTnVtYmVyLCB1bnNpZ25lZCBjb2x1bW5OdW1iZXIsIGNvbnN0IFdU
Rjo6U3RyaW5nJiBzb3VyY2VVUkwpIGZpbmFsOworCisgICAgYm9vbCBjYW5SdW5CZWZvcmVVbmxv
YWRDb25maXJtUGFuZWwoKSBmaW5hbDsKKyAgICBib29sIHJ1bkJlZm9yZVVubG9hZENvbmZpcm1Q
YW5lbChjb25zdCBXVEY6OlN0cmluZyYgbWVzc2FnZSwgV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsK
KworICAgIHZvaWQgY2xvc2VXaW5kb3dTb29uKCkgZmluYWw7CiAKICAgICB2b2lkIHJ1bkphdmFT
Y3JpcHRBbGVydChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdURjo6U3RyaW5nJikgb3ZlcnJpZGU7
CiAgICAgYm9vbCBydW5KYXZhU2NyaXB0Q29uZmlybShXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdU
Rjo6U3RyaW5nJikgb3ZlcnJpZGU7CiAgICAgYm9vbCBydW5KYXZhU2NyaXB0UHJvbXB0KFdlYkNv
cmU6OkZyYW1lKiwgY29uc3QgV1RGOjpTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFdURjo6U3RyaW5n
JiBkZWZhdWx0VmFsdWUsIFdURjo6U3RyaW5nJiByZXN1bHQpIG92ZXJyaWRlOwogCi0gICAgYm9v
bCBzdXBwb3J0c0ltbWVkaWF0ZUludmFsaWRhdGlvbigpIG92ZXJyaWRlOwotICAgIHZvaWQgaW52
YWxpZGF0ZVJvb3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBvdmVycmlkZTsKLSAgICB2
b2lkIGludmFsaWRhdGVDb250ZW50c0FuZFJvb3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFJlY3Qm
KSBvdmVycmlkZTsKLSAgICB2b2lkIGludmFsaWRhdGVDb250ZW50c0ZvclNsb3dTY3JvbGwoY29u
c3QgV2ViQ29yZTo6SW50UmVjdCYpIG92ZXJyaWRlOwotICAgIHZvaWQgc2Nyb2xsKGNvbnN0IFdl
YkNvcmU6OkludFNpemUmIHNjcm9sbERlbHRhLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiByZWN0
VG9TY3JvbGwsIGNvbnN0IFdlYkNvcmU6OkludFJlY3QmIGNsaXBSZWN0KSBvdmVycmlkZTsKKyAg
ICBib29sIHN1cHBvcnRzSW1tZWRpYXRlSW52YWxpZGF0aW9uKCkgZmluYWw7CisgICAgdm9pZCBp
bnZhbGlkYXRlUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGZpbmFsOworICAgIHZv
aWQgaW52YWxpZGF0ZUNvbnRlbnRzQW5kUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYp
IGZpbmFsOworICAgIHZvaWQgaW52YWxpZGF0ZUNvbnRlbnRzRm9yU2xvd1Njcm9sbChjb25zdCBX
ZWJDb3JlOjpJbnRSZWN0JikgZmluYWw7CisgICAgdm9pZCBzY3JvbGwoY29uc3QgV2ViQ29yZTo6
SW50U2l6ZSYgc2Nyb2xsRGVsdGEsIGNvbnN0IFdlYkNvcmU6OkludFJlY3QmIHJlY3RUb1Njcm9s
bCwgY29uc3QgV2ViQ29yZTo6SW50UmVjdCYgY2xpcFJlY3QpIGZpbmFsOworCisgICAgV2ViQ29y
ZTo6SW50UG9pbnQgc2NyZWVuVG9Sb290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIGNv
bnN0IGZpbmFsOworICAgIFdlYkNvcmU6OkludFJlY3Qgcm9vdFZpZXdUb1NjcmVlbihjb25zdCBX
ZWJDb3JlOjpJbnRSZWN0JikgY29uc3QgZmluYWw7CiAKLSAgICBXZWJDb3JlOjpJbnRQb2ludCBz
Y3JlZW5Ub1Jvb3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFBvaW50JikgY29uc3Qgb3ZlcnJpZGU7
Ci0gICAgV2ViQ29yZTo6SW50UmVjdCByb290Vmlld1RvU2NyZWVuKGNvbnN0IFdlYkNvcmU6Oklu
dFJlY3QmKSBjb25zdCBvdmVycmlkZTsKICNpZiBQTEFURk9STShJT1MpCi0gICAgV2ViQ29yZTo6
SW50UG9pbnQgYWNjZXNzaWJpbGl0eVNjcmVlblRvUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50
UG9pbnQmKSBjb25zdCBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpJbnRSZWN0IHJvb3RWaWV3VG9B
Y2Nlc3NpYmlsaXR5U2NyZWVuKGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBjb25zdCBvdmVycmlk
ZTsKKyAgICBXZWJDb3JlOjpJbnRQb2ludCBhY2Nlc3NpYmlsaXR5U2NyZWVuVG9Sb290Vmlldyhj
b25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIGNvbnN0IGZpbmFsOworICAgIFdlYkNvcmU6OkludFJl
Y3Qgcm9vdFZpZXdUb0FjY2Vzc2liaWxpdHlTY3JlZW4oY29uc3QgV2ViQ29yZTo6SW50UmVjdCYp
IGNvbnN0IGZpbmFsOwogI2VuZGlmCi0gICAgUGxhdGZvcm1QYWdlQ2xpZW50IHBsYXRmb3JtUGFn
ZUNsaWVudCgpIGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQgY29udGVudHNTaXplQ2hhbmdlZChX
ZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6OkludFNpemUmKSBjb25zdCBvdmVycmlkZTsK
LSAgICB2b2lkIHNjcm9sbFJlY3RJbnRvVmlldyhjb25zdCBXZWJDb3JlOjpJbnRSZWN0JikgY29u
c3Qgb3ZlcnJpZGU7Ci0gICAgCisKKyAgICBQbGF0Zm9ybVBhZ2VDbGllbnQgcGxhdGZvcm1QYWdl
Q2xpZW50KCkgY29uc3QgZmluYWw7CisgICAgdm9pZCBjb250ZW50c1NpemVDaGFuZ2VkKFdlYkNv
cmU6OkZyYW1lKiwgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYpIGNvbnN0IGZpbmFsOworICAgIHZv
aWQgc2Nyb2xsUmVjdEludG9WaWV3KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBjb25zdCBmaW5h
bDsKKwogICAgIHZvaWQgc2V0U3RhdHVzYmFyVGV4dChjb25zdCBXVEY6OlN0cmluZyYpIG92ZXJy
aWRlOwogCi0gICAgdm9pZCBzY3JvbGxiYXJzTW9kZURpZENoYW5nZSgpIGNvbnN0IG92ZXJyaWRl
IHsgfQotICAgIGJvb2wgc2hvdWxkVW5hdmFpbGFibGVQbHVnaW5NZXNzYWdlQmVCdXR0b24oV2Vi
Q29yZTo6UmVuZGVyRW1iZWRkZWRPYmplY3Q6OlBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKSBj
b25zdCBvdmVycmlkZTsKLSAgICB2b2lkIHVuYXZhaWxhYmxlUGx1Z2luQnV0dG9uQ2xpY2tlZChX
ZWJDb3JlOjpFbGVtZW50KiwgV2ViQ29yZTo6UmVuZGVyRW1iZWRkZWRPYmplY3Q6OlBsdWdpblVu
YXZhaWxhYmlsaXR5UmVhc29uKSBjb25zdCBvdmVycmlkZTsKLSAgICB2b2lkIG1vdXNlRGlkTW92
ZU92ZXJFbGVtZW50KGNvbnN0IFdlYkNvcmU6OkhpdFRlc3RSZXN1bHQmLCB1bnNpZ25lZCBtb2Rp
ZmllckZsYWdzKSBvdmVycmlkZTsKKyAgICB2b2lkIHNjcm9sbGJhcnNNb2RlRGlkQ2hhbmdlKCkg
Y29uc3QgZmluYWwgeyB9CisgICAgYm9vbCBzaG91bGRVbmF2YWlsYWJsZVBsdWdpbk1lc3NhZ2VC
ZUJ1dHRvbihXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2luVW5hdmFpbGFiaWxp
dHlSZWFzb24pIGNvbnN0IGZpbmFsOworICAgIHZvaWQgdW5hdmFpbGFibGVQbHVnaW5CdXR0b25D
bGlja2VkKFdlYkNvcmU6OkVsZW1lbnQqLCBXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6
UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24pIGNvbnN0IGZpbmFsOworICAgIHZvaWQgbW91c2VE
aWRNb3ZlT3ZlckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6SGl0VGVzdFJlc3VsdCYsIHVuc2lnbmVk
IG1vZGlmaWVyRmxhZ3MpIGZpbmFsOwogCi0gICAgdm9pZCBzZXRUb29sVGlwKGNvbnN0IFdURjo6
U3RyaW5nJiwgV2ViQ29yZTo6VGV4dERpcmVjdGlvbikgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRU
b29sVGlwKGNvbnN0IFdURjo6U3RyaW5nJiwgV2ViQ29yZTo6VGV4dERpcmVjdGlvbikgZmluYWw7
CiAKLSAgICB2b2lkIHByaW50KFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBl
eGNlZWRlZERhdGFiYXNlUXVvdGEoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXVEY6OlN0cmluZyYg
ZGF0YWJhc2VOYW1lLCBXZWJDb3JlOjpEYXRhYmFzZURldGFpbHMpIG92ZXJyaWRlOwotICAgIHZv
aWQgcmVhY2hlZE1heEFwcENhY2hlU2l6ZShpbnQ2NF90IHNwYWNlTmVlZGVkKSBvdmVycmlkZTsK
LSAgICB2b2lkIHJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoV2ViQ29yZTo6U2Vj
dXJpdHlPcmlnaW4qLCBpbnQ2NF90IHRvdGFsU3BhY2VOZWVkZWQpIG92ZXJyaWRlOworICAgIHZv
aWQgcHJpbnQoV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKKyAgICB2b2lkIGV4Y2VlZGVkRGF0YWJh
c2VRdW90YShXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdURjo6U3RyaW5nJiBkYXRhYmFzZU5hbWUs
IFdlYkNvcmU6OkRhdGFiYXNlRGV0YWlscykgZmluYWw7CisgICAgdm9pZCByZWFjaGVkTWF4QXBw
Q2FjaGVTaXplKGludDY0X3Qgc3BhY2VOZWVkZWQpIGZpbmFsOworICAgIHZvaWQgcmVhY2hlZEFw
cGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YShXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiosIGludDY0
X3QgdG90YWxTcGFjZU5lZWRlZCkgZmluYWw7CiAKICNpZiBFTkFCTEUoREFTSEJPQVJEX1NVUFBP
UlQpCi0gICAgdm9pZCBhbm5vdGF0ZWRSZWdpb25zQ2hhbmdlZCgpIG92ZXJyaWRlOworICAgIHZv
aWQgYW5ub3RhdGVkUmVnaW9uc0NoYW5nZWQoKSBmaW5hbDsKICNlbmRpZgogCi0gICAgdm9pZCBy
dW5PcGVuUGFuZWwoV2ViQ29yZTo6RnJhbWUqLCBQYXNzUmVmUHRyPFdlYkNvcmU6OkZpbGVDaG9v
c2VyPikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBsb2FkSWNvbkZvckZpbGVzKGNvbnN0IFZlY3RvcjxX
VEY6OlN0cmluZz4mLCBXZWJDb3JlOjpGaWxlSWNvbkxvYWRlciYpIG92ZXJyaWRlOworICAgIHZv
aWQgcnVuT3BlblBhbmVsKFdlYkNvcmU6OkZyYW1lJiwgV2ViQ29yZTo6RmlsZUNob29zZXImKSBv
dmVycmlkZTsKKyAgICB2b2lkIGxvYWRJY29uRm9yRmlsZXMoY29uc3QgVmVjdG9yPFdURjo6U3Ry
aW5nPiYsIFdlYkNvcmU6OkZpbGVJY29uTG9hZGVyJikgZmluYWw7CiAKICNpZiAhUExBVEZPUk0o
SU9TKQotICAgIHZvaWQgc2V0Q3Vyc29yKGNvbnN0IFdlYkNvcmU6OkN1cnNvciYpIG92ZXJyaWRl
OwotICAgIHZvaWQgc2V0Q3Vyc29ySGlkZGVuVW50aWxNb3VzZU1vdmVzKGJvb2wpIG92ZXJyaWRl
OworICAgIHZvaWQgc2V0Q3Vyc29yKGNvbnN0IFdlYkNvcmU6OkN1cnNvciYpIGZpbmFsOworICAg
IHZvaWQgc2V0Q3Vyc29ySGlkZGVuVW50aWxNb3VzZU1vdmVzKGJvb2wpIGZpbmFsOwogI2VuZGlm
CiAKICNpZiBFTkFCTEUoSU5QVVRfVFlQRV9DT0xPUikKLSAgICBzdGQ6OnVuaXF1ZV9wdHI8V2Vi
Q29yZTo6Q29sb3JDaG9vc2VyPiBjcmVhdGVDb2xvckNob29zZXIoV2ViQ29yZTo6Q29sb3JDaG9v
c2VyQ2xpZW50KiwgY29uc3QgV2ViQ29yZTo6Q29sb3ImKSBvdmVycmlkZTsKKyAgICBzdGQ6OnVu
aXF1ZV9wdHI8V2ViQ29yZTo6Q29sb3JDaG9vc2VyPiBjcmVhdGVDb2xvckNob29zZXIoV2ViQ29y
ZTo6Q29sb3JDaG9vc2VyQ2xpZW50KiwgY29uc3QgV2ViQ29yZTo6Q29sb3ImKSBmaW5hbDsKICNl
bmRpZgotICAgIAorCiAjaWYgRU5BQkxFKFBPSU5URVJfTE9DSykKLSAgICBib29sIHJlcXVlc3RQ
b2ludGVyTG9jaygpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVxdWVzdFBvaW50ZXJVbmxvY2soKSBv
dmVycmlkZTsKKyAgICBib29sIHJlcXVlc3RQb2ludGVyTG9jaygpIGZpbmFsOworICAgIHZvaWQg
cmVxdWVzdFBvaW50ZXJVbmxvY2soKSBmaW5hbDsKICNlbmRpZgogCi0gICAgV2ViQ29yZTo6S2V5
Ym9hcmRVSU1vZGUga2V5Ym9hcmRVSU1vZGUoKSBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpLZXli
b2FyZFVJTW9kZSBrZXlib2FyZFVJTW9kZSgpIGZpbmFsOworCisgICAgTlNSZXNwb25kZXIgKmZp
cnN0UmVzcG9uZGVyKCkgZmluYWw7CisgICAgdm9pZCBtYWtlRmlyc3RSZXNwb25kZXIoTlNSZXNw
b25kZXIgKikgZmluYWw7CiAKLSAgICBOU1Jlc3BvbmRlciAqZmlyc3RSZXNwb25kZXIoKSBvdmVy
cmlkZTsKLSAgICB2b2lkIG1ha2VGaXJzdFJlc3BvbmRlcihOU1Jlc3BvbmRlciAqKSBvdmVycmlk
ZTsKKyAgICB2b2lkIGVuYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkgZmluYWw7CisgICAgdm9pZCBk
aXNhYmxlU3VkZGVuVGVybWluYXRpb24oKSBmaW5hbDsKIAotICAgIHZvaWQgZW5hYmxlU3VkZGVu
VGVybWluYXRpb24oKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc2FibGVTdWRkZW5UZXJtaW5hdGlv
bigpIG92ZXJyaWRlOwotICAgIAotICAgIGJvb2wgc2hvdWxkUmVwbGFjZVdpdGhHZW5lcmF0ZWRG
aWxlRm9yVXBsb2FkKGNvbnN0IFdURjo6U3RyaW5nJiBwYXRoLCBXVEY6OlN0cmluZyAmZ2VuZXJh
dGVkRmlsZW5hbWUpIG92ZXJyaWRlOwotICAgIFdURjo6U3RyaW5nIGdlbmVyYXRlUmVwbGFjZW1l
bnRGaWxlKGNvbnN0IFdURjo6U3RyaW5nJiBwYXRoKSBvdmVycmlkZTsKKyAgICBib29sIHNob3Vs
ZFJlcGxhY2VXaXRoR2VuZXJhdGVkRmlsZUZvclVwbG9hZChjb25zdCBXVEY6OlN0cmluZyYgcGF0
aCwgV1RGOjpTdHJpbmcgJmdlbmVyYXRlZEZpbGVuYW1lKSBmaW5hbDsKKyAgICBXVEY6OlN0cmlu
ZyBnZW5lcmF0ZVJlcGxhY2VtZW50RmlsZShjb25zdCBXVEY6OlN0cmluZyYgcGF0aCkgZmluYWw7
CiAKICAgICB2b2lkIGVsZW1lbnREaWRGb2N1cyhjb25zdCBXZWJDb3JlOjpOb2RlKikgb3ZlcnJp
ZGU7CiAgICAgdm9pZCBlbGVtZW50RGlkQmx1cihjb25zdCBXZWJDb3JlOjpOb2RlKikgb3ZlcnJp
ZGU7CiAKLSAgICBib29sIHNob3VsZFBhaW50RW50aXJlQ29udGVudHMoKSBjb25zdCBvdmVycmlk
ZTsKKyAgICBib29sIHNob3VsZFBhaW50RW50aXJlQ29udGVudHMoKSBjb25zdCBmaW5hbDsKIAog
ICAgIHZvaWQgYXR0YWNoUm9vdEdyYXBoaWNzTGF5ZXIoV2ViQ29yZTo6RnJhbWUqLCBXZWJDb3Jl
OjpHcmFwaGljc0xheWVyKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBhdHRhY2hWaWV3T3ZlcmxheUdy
YXBoaWNzTGF5ZXIoV2ViQ29yZTo6RnJhbWUqLCBXZWJDb3JlOjpHcmFwaGljc0xheWVyKikgb3Zl
cnJpZGU7Ci0gICAgdm9pZCBzZXROZWVkc09uZVNob3REcmF3aW5nU3luY2hyb25pemF0aW9uKCkg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBzY2hlZHVsZUNvbXBvc2l0aW5nTGF5ZXJGbHVzaCgpIG92ZXJy
aWRlOworICAgIHZvaWQgYXR0YWNoVmlld092ZXJsYXlHcmFwaGljc0xheWVyKFdlYkNvcmU6OkZy
YW1lKiwgV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIGZpbmFsOworICAgIHZvaWQgc2V0TmVlZHNP
bmVTaG90RHJhd2luZ1N5bmNocm9uaXphdGlvbigpIGZpbmFsOworICAgIHZvaWQgc2NoZWR1bGVD
b21wb3NpdGluZ0xheWVyRmx1c2goKSBmaW5hbDsKIAotICAgIENvbXBvc2l0aW5nVHJpZ2dlckZs
YWdzIGFsbG93ZWRDb21wb3NpdGluZ1RyaWdnZXJzKCkgY29uc3Qgb3ZlcnJpZGUKKyAgICBDb21w
b3NpdGluZ1RyaWdnZXJGbGFncyBhbGxvd2VkQ29tcG9zaXRpbmdUcmlnZ2VycygpIGNvbnN0IGZp
bmFsCiAgICAgewogICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8Q29tcG9zaXRpbmdUcmlnZ2Vy
RmxhZ3M+KAogICAgICAgICAgICAgVGhyZWVEVHJhbnNmb3JtVHJpZ2dlciB8CkBAIC0xNjksNTIg
KzE3Nyw0OSBAQCBwdWJsaWM6CiAgICAgICAgICAgICBBbmltYXRpb25UcmlnZ2VyKTsKICAgICB9
CiAKLSNpZiBFTkFCTEUoVklERU8pCi0jaWYgUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9f
UFJFU0VOVEFUSU9OX01PREUpCi0gICAgdm9pZCBzZXRVcFBsYXliYWNrQ29udHJvbHNNYW5hZ2Vy
KFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQmKSBvdmVycmlkZTsKLSAgICB2b2lkIGNsZWFyUGxh
eWJhY2tDb250cm9sc01hbmFnZXIoKSBvdmVycmlkZTsKKyNpZiBFTkFCTEUoVklERU8pICYmIFBM
QVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQorICAgIHZvaWQg
c2V0VXBQbGF5YmFja0NvbnRyb2xzTWFuYWdlcihXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50Jikg
ZmluYWw7CisgICAgdm9pZCBjbGVhclBsYXliYWNrQ29udHJvbHNNYW5hZ2VyKCkgZmluYWw7CiAj
ZW5kaWYKIAotICAgIGJvb2wgc3VwcG9ydHNWaWRlb0Z1bGxzY3JlZW4oV2ViQ29yZTo6SFRNTE1l
ZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlKSBvdmVycmlkZTsKLSAgICB2b2lk
IGVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0Vs
ZW1lbnQmLCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1v
ZGUpIG92ZXJyaWRlOwotICAgIHZvaWQgZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVu
dChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50Jikgb3ZlcnJpZGU7CisjaWYgRU5BQkxFKFZJREVP
KQorICAgIGJvb2wgc3VwcG9ydHNWaWRlb0Z1bGxzY3JlZW4oV2ViQ29yZTo6SFRNTE1lZGlhRWxl
bWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlKSBmaW5hbDsKKyAgICB2b2lkIGVudGVyVmlk
ZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmLCBX
ZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIGZpbmFs
OworICAgIHZvaWQgZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpI
VE1MVmlkZW9FbGVtZW50JikgZmluYWw7CiAjZW5kaWYKLSAgICAKKwogI2lmIEVOQUJMRShGVUxM
U0NSRUVOX0FQSSkKLSAgICBib29sIHN1cHBvcnRzRnVsbFNjcmVlbkZvckVsZW1lbnQoY29uc3Qg
V2ViQ29yZTo6RWxlbWVudCosIGJvb2wgd2l0aEtleWJvYXJkKSBvdmVycmlkZTsKLSAgICB2b2lk
IGVudGVyRnVsbFNjcmVlbkZvckVsZW1lbnQoV2ViQ29yZTo6RWxlbWVudCopIG92ZXJyaWRlOwot
ICAgIHZvaWQgZXhpdEZ1bGxTY3JlZW5Gb3JFbGVtZW50KFdlYkNvcmU6OkVsZW1lbnQqKSBvdmVy
cmlkZTsKKyAgICBib29sIHN1cHBvcnRzRnVsbFNjcmVlbkZvckVsZW1lbnQoY29uc3QgV2ViQ29y
ZTo6RWxlbWVudCosIGJvb2wgd2l0aEtleWJvYXJkKSBmaW5hbDsKKyAgICB2b2lkIGVudGVyRnVs
bFNjcmVlbkZvckVsZW1lbnQoV2ViQ29yZTo6RWxlbWVudCopIGZpbmFsOworICAgIHZvaWQgZXhp
dEZ1bGxTY3JlZW5Gb3JFbGVtZW50KFdlYkNvcmU6OkVsZW1lbnQqKSBmaW5hbDsKICNlbmRpZgog
CiAgICAgYm9vbCBzZWxlY3RJdGVtV3JpdGluZ0RpcmVjdGlvbklzTmF0dXJhbCgpIG92ZXJyaWRl
OwogICAgIGJvb2wgc2VsZWN0SXRlbUFsaWdubWVudEZvbGxvd3NNZW51V3JpdGluZ0RpcmVjdGlv
bigpIG92ZXJyaWRlOwotICAgIGJvb2wgaGFzT3BlbmVkUG9wdXAoKSBjb25zdCBvdmVycmlkZTsK
KyAgICBib29sIGhhc09wZW5lZFBvcHVwKCkgY29uc3QgZmluYWw7CiAgICAgUmVmUHRyPFdlYkNv
cmU6OlBvcHVwTWVudT4gY3JlYXRlUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCop
IGNvbnN0IG92ZXJyaWRlOwogICAgIFJlZlB0cjxXZWJDb3JlOjpTZWFyY2hQb3B1cE1lbnU+IGNy
ZWF0ZVNlYXJjaFBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1lbnVDbGllbnQqKSBjb25zdCBvdmVy
cmlkZTsKIAotICAgIHZvaWQgd2hlZWxFdmVudEhhbmRsZXJzQ2hhbmdlZChib29sKSBvdmVycmlk
ZSB7IH0KKyAgICB2b2lkIHdoZWVsRXZlbnRIYW5kbGVyc0NoYW5nZWQoYm9vbCkgZmluYWwgeyB9
CiAKICNpZiBFTkFCTEUoU1VCVExFX0NSWVBUTykKLSAgICBib29sIHdyYXBDcnlwdG9LZXkoY29u
c3QgVmVjdG9yPHVpbnQ4X3Q+JiwgVmVjdG9yPHVpbnQ4X3Q+JikgY29uc3Qgb3ZlcnJpZGU7Ci0g
ICAgYm9vbCB1bndyYXBDcnlwdG9LZXkoY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiwgVmVjdG9yPHVp
bnQ4X3Q+JikgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCB3cmFwQ3J5cHRvS2V5KGNvbnN0IFZl
Y3Rvcjx1aW50OF90PiYsIFZlY3Rvcjx1aW50OF90PiYpIGNvbnN0IGZpbmFsOworICAgIGJvb2wg
dW53cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90PiYsIFZlY3Rvcjx1aW50OF90PiYp
IGNvbnN0IGZpbmFsOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoU0VSVklDRV9DT05UUk9MUykKLSAg
ICB2b2lkIGhhbmRsZVNlbGVjdGlvblNlcnZpY2VDbGljayhXZWJDb3JlOjpGcmFtZVNlbGVjdGlv
biYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiB0ZWxlcGhvbmVOdW1iZXJzLCBjb25zdCBXZWJDb3Jl
OjpJbnRQb2ludCYpIG92ZXJyaWRlOwotICAgIGJvb2wgaGFzUmVsZXZhbnRTZWxlY3Rpb25TZXJ2
aWNlcyhib29sIGlzVGV4dE9ubHkpIGNvbnN0IG92ZXJyaWRlOworICAgIHZvaWQgaGFuZGxlU2Vs
ZWN0aW9uU2VydmljZUNsaWNrKFdlYkNvcmU6OkZyYW1lU2VsZWN0aW9uJiwgY29uc3QgVmVjdG9y
PFN0cmluZz4mIHRlbGVwaG9uZU51bWJlcnMsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JikgZmlu
YWw7CisgICAgYm9vbCBoYXNSZWxldmFudFNlbGVjdGlvblNlcnZpY2VzKGJvb2wgaXNUZXh0T25s
eSkgY29uc3QgZmluYWw7CiAjZW5kaWYKIAotICAgIFdlYlZpZXcqIHdlYlZpZXcoKSBjb25zdCB7
IHJldHVybiBtX3dlYlZpZXc7IH0KLQogI2lmIEVOQUJMRShXSVJFTEVTU19QTEFZQkFDS19UQVJH
RVQpICYmICFQTEFURk9STShJT1MpCi0gICAgdm9pZCBhZGRQbGF5YmFja1RhcmdldFBpY2tlckNs
aWVudCh1aW50NjRfdCAvKmNvbnRleHRJZCovKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlbW92ZVBs
YXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2NF90IC8qY29udGV4dElkKi8pIG92ZXJyaWRl
OwotICAgIHZvaWQgc2hvd1BsYXliYWNrVGFyZ2V0UGlja2VyKHVpbnQ2NF90IC8qY29udGV4dElk
Ki8sIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiwgYm9vbCAvKiBoYXNWaWRlbyAqLykgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCBwbGF5YmFja1RhcmdldFBpY2tlckNsaWVudFN0YXRlRGlkQ2hhbmdlKHVp
bnQ2NF90IC8qY29udGV4dElkKi8sIFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVG
bGFncykgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tl
ckVuYWJsZWQoYm9vbCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1Rh
cmdldFBpY2tlclN0YXRlKGNvbnN0IFN0cmluZyYsIFdlYkNvcmU6Ok1lZGlhUGxheWJhY2tUYXJn
ZXRDb250ZXh0OjpTdGF0ZSkgb3ZlcnJpZGU7CisgICAgdm9pZCBhZGRQbGF5YmFja1RhcmdldFBp
Y2tlckNsaWVudCh1aW50NjRfdCAvKmNvbnRleHRJZCovKSBmaW5hbDsKKyAgICB2b2lkIHJlbW92
ZVBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2NF90IC8qY29udGV4dElkKi8pIGZpbmFs
OworICAgIHZvaWQgc2hvd1BsYXliYWNrVGFyZ2V0UGlja2VyKHVpbnQ2NF90IC8qY29udGV4dElk
Ki8sIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiwgYm9vbCAvKiBoYXNWaWRlbyAqLykgZmluYWw7
CisgICAgdm9pZCBwbGF5YmFja1RhcmdldFBpY2tlckNsaWVudFN0YXRlRGlkQ2hhbmdlKHVpbnQ2
NF90IC8qY29udGV4dElkKi8sIFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFn
cykgZmluYWw7CisgICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVuYWJs
ZWQoYm9vbCkgZmluYWw7CisgICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tl
clN0YXRlKGNvbnN0IFN0cmluZyYsIFdlYkNvcmU6Ok1lZGlhUGxheWJhY2tUYXJnZXRDb250ZXh0
OjpTdGF0ZSkgZmluYWw7CiAjZW5kaWYKIAotcHJpdmF0ZToKICAgICBXZWJWaWV3ICptX3dlYlZp
ZXc7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2Vi
Q2hyb21lQ2xpZW50Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hy
b21lQ2xpZW50Lm1tCmluZGV4IGQ3ZWM4Y2IxYjQ2YWI3ODE4ZTBkZTIyNDEyNmNhYTVhMDY1ZGEy
OTEuLmE1MmE0NjAxYzE2NDdkZTQ1ZDQwOTk1N2E4MTMyYTIzZDFhMzYwNjAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5tbQorKysg
Yi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQubW0KQEAg
LTc0MSwxMCArNzQxLDEwIEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpyZXF1ZXN0UG9pbnRlclVu
bG9jaygpCiB9CiAjZW5kaWYKIAotdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJ1bk9wZW5QYW5lbChG
cmFtZSosIFBhc3NSZWZQdHI8RmlsZUNob29zZXI+IGNob29zZXIpCit2b2lkIFdlYkNocm9tZUNs
aWVudDo6cnVuT3BlblBhbmVsKEZyYW1lJiwgRmlsZUNob29zZXImIGNob29zZXIpCiB7CiAgICAg
QkVHSU5fQkxPQ0tfT0JKQ19FWENFUFRJT05TOwotICAgIEJPT0wgYWxsb3dNdWx0aXBsZUZpbGVz
ID0gY2hvb3Nlci0+c2V0dGluZ3MoKS5hbGxvd3NNdWx0aXBsZUZpbGVzOworICAgIEJPT0wgYWxs
b3dNdWx0aXBsZUZpbGVzID0gY2hvb3Nlci5zZXR0aW5ncygpLmFsbG93c011bHRpcGxlRmlsZXM7
CiAgICAgV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIgKmxpc3RlbmVyID0gW1tXZWJPcGVuUGFu
ZWxSZXN1bHRMaXN0ZW5lciBhbGxvY10gaW5pdFdpdGhDaG9vc2VyOmNob29zZXJdOwogICAgIGlk
IGRlbGVnYXRlID0gW21fd2ViVmlldyBVSURlbGVnYXRlXTsKICAgICBpZiAoW2RlbGVnYXRlIHJl
c3BvbmRzVG9TZWxlY3RvcjpAc2VsZWN0b3Iod2ViVmlldzpydW5PcGVuUGFuZWxGb3JGaWxlQnV0
dG9uV2l0aFJlc3VsdExpc3RlbmVyOmFsbG93TXVsdGlwbGVGaWxlczopXSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oIGIvU291
cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmgKaW5kZXggM2Iz
NWQ0ZDIxMTBmNDlmMWM0OTNmZWFjY2QwODQ3MzhiODIzOGFmOS4uODgyMTUzMTA0YzUwMDllNWU3
ZWEwYWU3ZjkwOGIzNzZjNzBjZjdjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2Vi
Q29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2Vi
Q29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmgKQEAgLTExNSw4ICsxMTUsOCBAQCBwcml2YXRl
OgogICAgIHZvaWQgZGlzY2FyZGVkQ29tcG9zaXRpb24oV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsK
ICAgICB2b2lkIGNhbmNlbGVkQ29tcG9zaXRpb24oKSBmaW5hbDsKIAotICAgIHZvaWQgcmVnaXN0
ZXJVbmRvU3RlcChQYXNzUmVmUHRyPFdlYkNvcmU6OlVuZG9TdGVwPikgZmluYWw7Ci0gICAgdm9p
ZCByZWdpc3RlclJlZG9TdGVwKFBhc3NSZWZQdHI8V2ViQ29yZTo6VW5kb1N0ZXA+KSBmaW5hbDsK
KyAgICB2b2lkIHJlZ2lzdGVyVW5kb1N0ZXAoV2ViQ29yZTo6VW5kb1N0ZXAmKSBmaW5hbDsKKyAg
ICB2b2lkIHJlZ2lzdGVyUmVkb1N0ZXAoV2ViQ29yZTo6VW5kb1N0ZXAmKSBmaW5hbDsKICAgICB2
b2lkIGNsZWFyVW5kb1JlZG9PcGVyYXRpb25zKCkgZmluYWw7CiAKICAgICBib29sIGNhbkNvcHlD
dXQoV2ViQ29yZTo6RnJhbWUqLCBib29sIGRlZmF1bHRWYWx1ZSkgY29uc3QgZmluYWw7CkBAIC0x
NzQsNyArMTc0LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIGhhbmRsZUFjY2VwdGVkQ2FuZGlkYXRl
V2l0aFNvZnRTcGFjZXMoV2ViQ29yZTo6VGV4dENoZWNraW5nUmVzdWx0KSBmaW5hbDsKICNlbmRp
ZgogCi0gICAgdm9pZCByZWdpc3RlclVuZG9PclJlZG9TdGVwKFBhc3NSZWZQdHI8V2ViQ29yZTo6
VW5kb1N0ZXA+LCBib29sIGlzUmVkbyk7CisgICAgdm9pZCByZWdpc3RlclVuZG9PclJlZG9TdGVw
KFdlYkNvcmU6OlVuZG9TdGVwJiwgYm9vbCBpc1JlZG8pOwogCiAgICAgV2ViVmlldyAqbV93ZWJW
aWV3OwogICAgIFJldGFpblB0cjxXZWJFZGl0b3JVbmRvVGFyZ2V0PiBtX3VuZG9UYXJnZXQ7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGll
bnQubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQu
bW0KaW5kZXggN2Y5ZjQxN2FkMWM0M2E4NmFhMjVkMjE0OGU1NDY5NWUxZGI3MDI4ZS4uZjM4YTlm
MGNkYzJkNDk1MGRkMDY0NmQ3MDM4ZjhjNWEzMzNlMDQ4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50Lm1tCisrKyBiL1NvdXJjZS9X
ZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5tbQpAQCAtMTE5LDggKzEx
OSw4IEBAIEBpbnRlcmZhY2UgV2ViVW5kb1N0ZXAgOiBOU09iamVjdAogICAgIFJlZlB0cjxVbmRv
U3RlcD4gbV9zdGVwOyAgIAogfQogCi0rIChXZWJVbmRvU3RlcCAqKXN0ZXBXaXRoVW5kb1N0ZXA6
KFBhc3NSZWZQdHI8VW5kb1N0ZXA+KXN0ZXA7Ci0tIChVbmRvU3RlcCAqKXN0ZXA7CisrIChXZWJV
bmRvU3RlcCAqKXN0ZXBXaXRoVW5kb1N0ZXA6KFVuZG9TdGVwJilzdGVwOworLSAoVW5kb1N0ZXAm
KXN0ZXA7CiAKIEBlbmQKIApAQCAtMTM1LDEzICsxMzUsMTIgQEAgKyAodm9pZClpbml0aWFsaXpl
CiAjZW5kaWYKIH0KIAotLSAoaWQpaW5pdFdpdGhVbmRvU3RlcDooUGFzc1JlZlB0cjxVbmRvU3Rl
cD4pc3RlcAorLSAoaWQpaW5pdFdpdGhVbmRvU3RlcDooVW5kb1N0ZXAmKXN0ZXAKIHsKLSAgICBB
U1NFUlQoc3RlcCk7CiAgICAgc2VsZiA9IFtzdXBlciBpbml0XTsKICAgICBpZiAoIXNlbGYpCiAg
ICAgICAgIHJldHVybiBuaWw7Ci0gICAgbV9zdGVwID0gc3RlcDsKKyAgICBtX3N0ZXAgPSAmc3Rl
cDsKICAgICByZXR1cm4gc2VsZjsKIH0KIApAQCAtMTUzLDE0ICsxNTIsMTQgQEAgLSAodm9pZClk
ZWFsbG9jCiAgICAgW3N1cGVyIGRlYWxsb2NdOwogfQogCi0rIChXZWJVbmRvU3RlcCAqKXN0ZXBX
aXRoVW5kb1N0ZXA6KFBhc3NSZWZQdHI8VW5kb1N0ZXA+KXN0ZXAKKysgKFdlYlVuZG9TdGVwICop
c3RlcFdpdGhVbmRvU3RlcDooVW5kb1N0ZXAmKXN0ZXAKIHsKICAgICByZXR1cm4gW1tbV2ViVW5k
b1N0ZXAgYWxsb2NdIGluaXRXaXRoVW5kb1N0ZXA6c3RlcF0gYXV0b3JlbGVhc2VdOwogfQogCi0t
IChVbmRvU3RlcCAqKXN0ZXAKKy0gKFVuZG9TdGVwJilzdGVwCiB7Ci0gICAgcmV0dXJuIG1fc3Rl
cC5nZXQoKTsKKyAgICByZXR1cm4gKm1fc3RlcDsKIH0KIAogQGVuZApAQCAtMTc3LDEzICsxNzYs
MTMgQEAgQGltcGxlbWVudGF0aW9uIFdlYkVkaXRvclVuZG9UYXJnZXQKIC0gKHZvaWQpdW5kb0Vk
aXRpbmc6KGlkKWFyZwogewogICAgIEFTU0VSVChbYXJnIGlzS2luZE9mQ2xhc3M6W1dlYlVuZG9T
dGVwIGNsYXNzXV0pOwotICAgIFthcmcgc3RlcF0tPnVuYXBwbHkoKTsKKyAgICBbYXJnIHN0ZXBd
LnVuYXBwbHkoKTsKIH0KIAogLSAodm9pZClyZWRvRWRpdGluZzooaWQpYXJnCiB7CiAgICAgQVNT
RVJUKFthcmcgaXNLaW5kT2ZDbGFzczpbV2ViVW5kb1N0ZXAgY2xhc3NdXSk7Ci0gICAgW2FyZyBz
dGVwXS0+cmVhcHBseSgpOworICAgIFthcmcgc3RlcF0ucmVhcHBseSgpOwogfQogCiBAZW5kCkBA
IC02NDIsMTAgKzY0MSw4IEBAIHN0YXRpYyBOU1N0cmluZyogdW5kb05hbWVGb3JFZGl0QWN0aW9u
KEVkaXRBY3Rpb24gZWRpdEFjdGlvbikKICAgICByZXR1cm4gbmlsOwogfQogCi12b2lkIFdlYkVk
aXRvckNsaWVudDo6cmVnaXN0ZXJVbmRvT3JSZWRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPiBz
dGVwLCBib29sIGlzUmVkbykKK3ZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9PclJl
ZG9TdGVwKFVuZG9TdGVwJiBzdGVwLCBib29sIGlzUmVkbykKIHsKLSAgICBBU1NFUlQoc3RlcCk7
Ci0gICAgCiAgICAgTlNVbmRvTWFuYWdlciAqdW5kb01hbmFnZXIgPSBbbV93ZWJWaWV3IHVuZG9N
YW5hZ2VyXTsKIAogI2lmIFBMQVRGT1JNKElPUykKQEAgLTY1Niw3ICs2NTMsNyBAQCB2b2lkIFdl
YkVkaXRvckNsaWVudDo6cmVnaXN0ZXJVbmRvT3JSZWRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVw
PiBzdGVwLCBib29sIGlzUgogICAgICAgICByZXR1cm47CiAjZW5kaWYKIAotICAgIE5TU3RyaW5n
ICphY3Rpb25OYW1lID0gdW5kb05hbWVGb3JFZGl0QWN0aW9uKHN0ZXAtPmVkaXRpbmdBY3Rpb24o
KSk7CisgICAgTlNTdHJpbmcgKmFjdGlvbk5hbWUgPSB1bmRvTmFtZUZvckVkaXRBY3Rpb24oc3Rl
cC5lZGl0aW5nQWN0aW9uKCkpOwogICAgIFdlYlVuZG9TdGVwICp3ZWJFbnRyeSA9IFtXZWJVbmRv
U3RlcCBzdGVwV2l0aFVuZG9TdGVwOnN0ZXBdOwogICAgIFt1bmRvTWFuYWdlciByZWdpc3RlclVu
ZG9XaXRoVGFyZ2V0Om1fdW5kb1RhcmdldC5nZXQoKSBzZWxlY3RvcjooaXNSZWRvID8gQHNlbGVj
dG9yKHJlZG9FZGl0aW5nOikgOiBAc2VsZWN0b3IodW5kb0VkaXRpbmc6KSkgb2JqZWN0OndlYkVu
dHJ5XTsKICAgICBpZiAoYWN0aW9uTmFtZSkKQEAgLTY4NCwxMiArNjgxLDEyIEBAIHZvaWQgV2Vi
RWRpdG9yQ2xpZW50Ojp1cGRhdGVFZGl0b3JTdGF0ZUFmdGVyTGF5b3V0SWZFZGl0YWJpbGl0eUNo
YW5nZWQoKQogICAgICAgICBbbV93ZWJWaWV3IHVwZGF0ZVRvdWNoQmFyXTsKIH0KIAotdm9pZCBX
ZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb1N0ZXAoUGFzc1JlZlB0cjxVbmRvU3RlcD4gY21k
KQordm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb1N0ZXAoVW5kb1N0ZXAmIGNtZCkK
IHsKICAgICByZWdpc3RlclVuZG9PclJlZG9TdGVwKGNtZCwgZmFsc2UpOwogfQogCi12b2lkIFdl
YkVkaXRvckNsaWVudDo6cmVnaXN0ZXJSZWRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPiBjbWQp
Cit2b2lkIFdlYkVkaXRvckNsaWVudDo6cmVnaXN0ZXJSZWRvU3RlcChVbmRvU3RlcCYgY21kKQog
ewogICAgIHJlZ2lzdGVyVW5kb09yUmVkb1N0ZXAoY21kLCB0cnVlKTsKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lmgg
Yi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5o
CmluZGV4IGExMWZiODhiZGJkOTFiYWQ4ZmQ4ZGY5ZmQyOTJmODI1ODhmYzQ1ZjYuLmJmYmQyZjc4
MzZmNjQ4YjgwNzBhYzc0M2YyZWFjODM2YTVjOTY5MTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNl
L1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaApAQCAtMSw1
ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNiBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTU4
LDIwMiArNTgsMjAyIEBAIHB1YmxpYzoKICAgICBXZWJGcmFtZSogd2ViRnJhbWUoKSBjb25zdCB7
IHJldHVybiBtX3dlYkZyYW1lLmdldCgpOyB9CiAKIHByaXZhdGU6Ci0gICAgdm9pZCBmcmFtZUxv
YWRlckRlc3Ryb3llZCgpIG92ZXJyaWRlOwotICAgIGJvb2wgaGFzV2ViVmlldygpIGNvbnN0IG92
ZXJyaWRlOyAvLyBtYWlubHkgZm9yIGFzc2VydGlvbnMKKyAgICB2b2lkIGZyYW1lTG9hZGVyRGVz
dHJveWVkKCkgZmluYWw7CisgICAgYm9vbCBoYXNXZWJWaWV3KCkgY29uc3QgZmluYWw7IC8vIG1h
aW5seSBmb3IgYXNzZXJ0aW9ucwogCi0gICAgdm9pZCBtYWtlUmVwcmVzZW50YXRpb24oV2ViQ29y
ZTo6RG9jdW1lbnRMb2FkZXIqKSBvdmVycmlkZTsKLSAgICBib29sIGhhc0hUTUxWaWV3KCkgY29u
c3Qgb3ZlcnJpZGU7CisgICAgdm9pZCBtYWtlUmVwcmVzZW50YXRpb24oV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXIqKSBmaW5hbDsKKyAgICBib29sIGhhc0hUTUxWaWV3KCkgY29uc3QgZmluYWw7CiAj
aWYgUExBVEZPUk0oSU9TKQotICAgIGJvb2wgZm9yY2VMYXlvdXRPblJlc3RvcmVGcm9tUGFnZUNh
Y2hlKCkgb3ZlcnJpZGU7CisgICAgYm9vbCBmb3JjZUxheW91dE9uUmVzdG9yZUZyb21QYWdlQ2Fj
aGUoKSBmaW5hbDsKICNlbmRpZgotICAgIHZvaWQgZm9yY2VMYXlvdXRGb3JOb25IVE1MKCkgb3Zl
cnJpZGU7CisgICAgdm9pZCBmb3JjZUxheW91dEZvck5vbkhUTUwoKSBmaW5hbDsKIAotICAgIHZv
aWQgc2V0Q29waWVzT25TY3JvbGwoKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldENvcGllc09uU2Ny
b2xsKCkgZmluYWw7CiAKLSAgICB2b2lkIGRldGFjaGVkRnJvbVBhcmVudDIoKSBvdmVycmlkZTsK
LSAgICB2b2lkIGRldGFjaGVkRnJvbVBhcmVudDMoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRldGFj
aGVkRnJvbVBhcmVudDIoKSBmaW5hbDsKKyAgICB2b2lkIGRldGFjaGVkRnJvbVBhcmVudDMoKSBm
aW5hbDsKIAotICAgIHZvaWQgY29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKFdlYkNv
cmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6U2Vzc2lvbklELCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJp
ZGU7CisgICAgdm9pZCBjb252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxvYWQoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpTZXNzaW9uSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKIAot
ICAgIHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlUmVxdWVzdCYpIG92ZXJyaWRlOworICAgIHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlh
bFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudExvYWRl
ciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOwogCi0gICAgdm9pZCBk
aXNwYXRjaFdpbGxTZW5kUmVxdWVzdChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkgb3ZlcnJpZGU7Ci0gICAgYm9v
bCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllcikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJl
Y2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFs
bGVuZ2UmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KFdlYkNv
cmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVj
dFJlc3BvbnNlKSBmaW5hbDsKKyAgICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsK
KyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFdlYkNv
cmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJD
b3JlOjpBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpIGZpbmFsOwogI2lmIFVTRShQUk9URUNUSU9O
X1NQQUNFX0FVVEhfQ0FMTEJBQ0spCi0gICAgYm9vbCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJv
dGVjdGlvblNwYWNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBjb25zdCBXZWJDb3JlOjpQcm90ZWN0aW9uU3BhY2UmKSBvdmVycmlkZTsKKyAgICBi
b29sIGNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlByb3Rl
Y3Rpb25TcGFjZSYpIGZpbmFsOwogI2VuZGlmCiAKICNpZiBQTEFURk9STShJT1MpCi0gICAgUmV0
YWluUHRyPENGRGljdGlvbmFyeVJlZj4gY29ubmVjdGlvblByb3BlcnRpZXMoV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIG92ZXJyaWRlOworICAgIFJl
dGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IGNvbm5lY3Rpb25Qcm9wZXJ0aWVzKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKICNlbmRpZgog
Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExv
YWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VS
ZXNwb25zZSYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExl
bmd0aChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
aW50IGRhdGFMZW5ndGgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2Fk
aW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBv
dmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVDb250
ZW50TGVuZ3RoKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyLCBpbnQgZGF0YUxlbmd0aCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExv
YWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIp
IGZpbmFsOwogI2lmIEVOQUJMRShEQVRBX0RFVEVDVElPTikKLSAgICB2b2lkIGRpc3BhdGNoRGlk
RmluaXNoRGF0YURldGVjdGlvbihOU0FycmF5ICpkZXRlY3Rpb25SZXN1bHRzKSBvdmVycmlkZTsK
KyAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoRGF0YURldGVjdGlvbihOU0FycmF5ICpkZXRlY3Rp
b25SZXN1bHRzKSBmaW5hbDsKICNlbmRpZgotICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZGlu
ZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwotCi0gICAgTlNDYWNoZWRVUkxS
ZXNwb25zZSogd2lsbENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNp
Z25lZCBsb25nIGlkZW50aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2UqKSBjb25zdCBvdmVycmlk
ZTsKLQotICAgIHZvaWQgZGlzcGF0Y2hEaWREaXNwYXRjaE9ubG9hZEV2ZW50cygpIG92ZXJyaWRl
OwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlU2VydmVyUmVkaXJlY3RGb3JQcm92aXNpb25h
bExvYWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkQ2FuY2VsQ2xpZW50UmVkaXJl
Y3QoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFBlcmZvcm1DbGllbnRSZWRpcmVj
dChjb25zdCBXZWJDb3JlOjpVUkwmLCBkb3VibGUgaW50ZXJ2YWwsIGRvdWJsZSBmaXJlRGF0ZSkg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZENoYW5nZUxvY2F0aW9uV2l0aGluUGFnZSgp
IG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRQdXNoU3RhdGVXaXRoaW5QYWdlKCkgb3Zl
cnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlcGxhY2VTdGF0ZVdpdGhpblBhZ2UoKSBvdmVy
cmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUG9wU3RhdGVXaXRoaW5QYWdlKCkgb3ZlcnJpZGU7
CisgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
KiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9y
JikgZmluYWw7CisKKyAgICBOU0NhY2hlZFVSTFJlc3BvbnNlKiB3aWxsQ2FjaGVSZXNwb25zZShX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgTlNDYWNo
ZWRVUkxSZXNwb25zZSopIGNvbnN0IGZpbmFsOworCisgICAgdm9pZCBkaXNwYXRjaERpZERpc3Bh
dGNoT25sb2FkRXZlbnRzKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVTZXJ2
ZXJSZWRpcmVjdEZvclByb3Zpc2lvbmFsTG9hZCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hE
aWRDYW5jZWxDbGllbnRSZWRpcmVjdCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsUGVy
Zm9ybUNsaWVudFJlZGlyZWN0KGNvbnN0IFdlYkNvcmU6OlVSTCYsIGRvdWJsZSBpbnRlcnZhbCwg
ZG91YmxlIGZpcmVEYXRlKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkQ2hhbmdlTG9jYXRp
b25XaXRoaW5QYWdlKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFB1c2hTdGF0ZVdpdGhp
blBhZ2UoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVwbGFjZVN0YXRlV2l0aGluUGFn
ZSgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRQb3BTdGF0ZVdpdGhpblBhZ2UoKSBmaW5h
bDsKICAgICAKLSAgICB2b2lkIGRpc3BhdGNoV2lsbENsb3NlKCkgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBkaXNwYXRjaERpZFJlY2VpdmVJY29uKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERp
ZFN0YXJ0UHJvdmlzaW9uYWxMb2FkKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJl
Y2VpdmVUaXRsZShjb25zdCBXZWJDb3JlOjpTdHJpbmdXaXRoRGlyZWN0aW9uJikgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBkaXNwYXRjaERpZENvbW1pdExvYWQoc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpI
YXNJbnNlY3VyZUNvbnRlbnQ+KSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbFBy
b3Zpc2lvbmFsTG9hZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3Im
KSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoRG9jdW1lbnRMb2FkKCkgb3Zl
cnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWQoKSBvdmVycmlkZTsKLSAgICB2
b2lkIGRpc3BhdGNoRGlkUmVhY2hMYXlvdXRNaWxlc3RvbmUoV2ViQ29yZTo6TGF5b3V0TWlsZXN0
b25lcykgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxDbG9zZSgpIGZpbmFsOworICAg
IHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlSWNvbigpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hE
aWRTdGFydFByb3Zpc2lvbmFsTG9hZCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNl
aXZlVGl0bGUoY29uc3QgV2ViQ29yZTo6U3RyaW5nV2l0aERpcmVjdGlvbiYpIGZpbmFsOworICAg
IHZvaWQgZGlzcGF0Y2hEaWRDb21taXRMb2FkKHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6SGFzSW5z
ZWN1cmVDb250ZW50PikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxQcm92aXNpb25h
bExvYWQoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIGZpbmFsOworICAgIHZvaWQgZGlz
cGF0Y2hEaWRGYWlsTG9hZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmluYWw7Cisg
ICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaERvY3VtZW50TG9hZCgpIGZpbmFsOworICAgIHZvaWQg
ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlYWNo
TGF5b3V0TWlsZXN0b25lKFdlYkNvcmU6OkxheW91dE1pbGVzdG9uZXMpIGZpbmFsOwogCi0gICAg
V2ViQ29yZTo6RnJhbWUqIGRpc3BhdGNoQ3JlYXRlUGFnZShjb25zdCBXZWJDb3JlOjpOYXZpZ2F0
aW9uQWN0aW9uJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFNob3coKSBvdmVycmlkZTsK
KyAgICBXZWJDb3JlOjpGcmFtZSogZGlzcGF0Y2hDcmVhdGVQYWdlKGNvbnN0IFdlYkNvcmU6Ok5h
dmlnYXRpb25BY3Rpb24mKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoU2hvdygpIGZpbmFsOwog
Ci0gICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvclJlc3BvbnNlKGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJD
b3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGVj
aWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rp
b24mLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPFdlYkNvcmU6
OkZvcm1TdGF0ZT4sIGNvbnN0IFdURjo6U3RyaW5nJiBmcmFtZU5hbWUsIFdlYkNvcmU6OkZyYW1l
UG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lG
b3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mLCBjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0
ZT4sIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOwotICAgIHZvaWQgY2Fu
Y2VsUG9saWN5Q2hlY2soKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5
Rm9yUmVzcG9uc2UoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYsIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFs
OworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3Qg
V2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYsIFdlYkNvcmU6OkZvcm1TdGF0ZSosIGNvbnN0IFdURjo6U3RyaW5nJiBmcmFtZU5hbWUsIFdl
YkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEZWNp
ZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rp
b24mLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpGb3JtU3RhdGUq
LCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsKKyAgICB2b2lkIGNhbmNlbFBv
bGljeUNoZWNrKCkgZmluYWw7CiAKLSAgICB2b2lkIGRpc3BhdGNoVW5hYmxlVG9JbXBsZW1lbnRQ
b2xpY3koY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOworICAgIHZvaWQg
ZGlzcGF0Y2hVbmFibGVUb0ltcGxlbWVudFBvbGljeShjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVy
cm9yJikgZmluYWw7CiAKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChQYXNz
UmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4pIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hX
aWxsU3VibWl0Rm9ybShQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4sIFdlYkNvcmU6OkZy
YW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFN1
Ym1pdEV2ZW50KFJlZjxXZWJDb3JlOjpGb3JtU3RhdGU+JiYpIGZpbmFsOworICAgIHZvaWQgZGlz
cGF0Y2hXaWxsU3VibWl0Rm9ybShXZWJDb3JlOjpGb3JtU3RhdGUmLCBXZWJDb3JlOjpGcmFtZVBv
bGljeUZ1bmN0aW9uKSBmaW5hbDsKIAotICAgIHZvaWQgcmV2ZXJ0VG9Qcm92aXNpb25hbFN0YXRl
KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRNYWluRG9j
dW1lbnRFcnJvcihXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlRXJyb3ImKSBvdmVycmlkZTsKLSAgICBib29sIGRpc3BhdGNoRGlkTG9hZFJlc291cmNlRnJv
bU1lbW9yeUNhY2hlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGludCBsZW5n
dGgpIG92ZXJyaWRlOworICAgIHZvaWQgcmV2ZXJ0VG9Qcm92aXNpb25hbFN0YXRlKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyKikgZmluYWw7CisgICAgdm9pZCBzZXRNYWluRG9jdW1lbnRFcnJvcihX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBm
aW5hbDsKKyAgICBib29sIGRpc3BhdGNoRGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlKFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jiwg
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGludCBsZW5ndGgpIGZpbmFsOwogCi0g
ICAgdm9pZCBzZXRNYWluRnJhbWVEb2N1bWVudFJlYWR5KGJvb2wpIG92ZXJyaWRlOworICAgIHZv
aWQgc2V0TWFpbkZyYW1lRG9jdW1lbnRSZWFkeShib29sKSBmaW5hbDsKIAotICAgIHZvaWQgc3Rh
cnREb3dubG9hZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBTdHJpbmcm
IHN1Z2dlc3RlZE5hbWUgPSBTdHJpbmcoKSkgb3ZlcnJpZGU7CisgICAgdm9pZCBzdGFydERvd25s
b2FkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFN0cmluZyYgc3VnZ2Vz
dGVkTmFtZSA9IFN0cmluZygpKSBmaW5hbDsKIAotICAgIHZvaWQgd2lsbENoYW5nZVRpdGxlKFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRDaGFuZ2VUaXRs
ZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIG92ZXJyaWRlOworICAgIHZvaWQgd2lsbENoYW5n
ZVRpdGxlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgZmluYWw7CisgICAgdm9pZCBkaWRDaGFu
Z2VUaXRsZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIGZpbmFsOwogCi0gICAgdm9pZCB3aWxs
UmVwbGFjZU11bHRpcGFydENvbnRlbnQoKSBvdmVycmlkZSB7IH0KLSAgICB2b2lkIGRpZFJlcGxh
Y2VNdWx0aXBhcnRDb250ZW50KCkgb3ZlcnJpZGU7CisgICAgdm9pZCB3aWxsUmVwbGFjZU11bHRp
cGFydENvbnRlbnQoKSBmaW5hbCB7IH0KKyAgICB2b2lkIGRpZFJlcGxhY2VNdWx0aXBhcnRDb250
ZW50KCkgZmluYWw7CiAKLSAgICB2b2lkIGNvbW1pdHRlZExvYWQoV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXIqLCBjb25zdCBjaGFyKiwgaW50KSBvdmVycmlkZTsKLSAgICB2b2lkIGZpbmlzaGVkTG9h
ZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIG92ZXJyaWRlOwotICAgIHZvaWQgdXBkYXRl
R2xvYmFsSGlzdG9yeSgpIG92ZXJyaWRlOwotICAgIHZvaWQgdXBkYXRlR2xvYmFsSGlzdG9yeVJl
ZGlyZWN0TGlua3MoKSBvdmVycmlkZTsKKyAgICB2b2lkIGNvbW1pdHRlZExvYWQoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBjaGFyKiwgaW50KSBmaW5hbDsKKyAgICB2b2lkIGZpbmlz
aGVkTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIGZpbmFsOworICAgIHZvaWQgdXBk
YXRlR2xvYmFsSGlzdG9yeSgpIGZpbmFsOworICAgIHZvaWQgdXBkYXRlR2xvYmFsSGlzdG9yeVJl
ZGlyZWN0TGlua3MoKSBmaW5hbDsKIAotICAgIGJvb2wgc2hvdWxkR29Ub0hpc3RvcnlJdGVtKFdl
YkNvcmU6Okhpc3RvcnlJdGVtKikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCB1cGRhdGVHbG9i
YWxIaXN0b3J5SXRlbUZvclBhZ2UoKSBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZEdvVG9IaXN0
b3J5SXRlbShXZWJDb3JlOjpIaXN0b3J5SXRlbSopIGNvbnN0IGZpbmFsOworICAgIHZvaWQgdXBk
YXRlR2xvYmFsSGlzdG9yeUl0ZW1Gb3JQYWdlKCkgZmluYWw7CiAKLSAgICB2b2lkIGRpZERpc3Bs
YXlJbnNlY3VyZUNvbnRlbnQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZFJ1bkluc2VjdXJlQ29u
dGVudChXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiosIGNvbnN0IFdlYkNvcmU6OlVSTCYpIG92ZXJy
aWRlOwotICAgIHZvaWQgZGlkRGV0ZWN0WFNTKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGJvb2wgZGlk
QmxvY2tFbnRpcmVQYWdlKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZERpc3BsYXlJbnNlY3VyZUNv
bnRlbnQoKSBmaW5hbDsKKyAgICB2b2lkIGRpZFJ1bkluc2VjdXJlQ29udGVudChXZWJDb3JlOjpT
ZWN1cml0eU9yaWdpbiosIGNvbnN0IFdlYkNvcmU6OlVSTCYpIGZpbmFsOworICAgIHZvaWQgZGlk
RGV0ZWN0WFNTKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGJvb2wgZGlkQmxvY2tFbnRpcmVQYWdlKSBm
aW5hbDsKIAotICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgY2FuY2VsbGVkRXJyb3IoY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3Vy
Y2VFcnJvciBibG9ja2VkRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3Zl
cnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkQnlDb250ZW50QmxvY2tl
ckVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRlOwotICAgIFdl
YkNvcmU6OlJlc291cmNlRXJyb3IgY2Fubm90U2hvd1VSTEVycm9yKGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCYpIG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgaW50
ZXJydXB0ZWRGb3JQb2xpY3lDaGFuZ2VFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QmKSBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbmNlbGxlZEVycm9y
KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOworICAgIFdlYkNvcmU6OlJl
c291cmNlRXJyb3IgYmxvY2tlZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYp
IGZpbmFsOworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgYmxvY2tlZEJ5Q29udGVudEJsb2Nr
ZXJFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKKyAgICBXZWJD
b3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dVUkxFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmKSBmaW5hbDsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGludGVycnVw
dGVkRm9yUG9saWN5Q2hhbmdlRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikg
ZmluYWw7CiAjaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQotICAgIFdlYkNvcmU6OlJlc291
cmNlRXJyb3IgYmxvY2tlZEJ5Q29udGVudEZpbHRlckVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlUmVxdWVzdCYpIG92ZXJyaWRlOworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgYmxvY2tl
ZEJ5Q29udGVudEZpbHRlckVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZp
bmFsOwogI2VuZGlmCiAKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dNSU1F
VHlwZUVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKLSAg
ICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGZpbGVEb2VzTm90RXhpc3RFcnJvcihjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VF
cnJvciBwbHVnaW5XaWxsSGFuZGxlTG9hZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVz
cG9uc2UmKSBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dN
SU1FVHlwZUVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAg
ICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGZpbGVEb2VzTm90RXhpc3RFcnJvcihjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJv
ciBwbHVnaW5XaWxsSGFuZGxlTG9hZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2UmKSBmaW5hbDsKIAotICAgIGJvb2wgc2hvdWxkRmFsbEJhY2soY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VFcnJvciYpIG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkRmFsbEJhY2soY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VFcnJvciYpIGZpbmFsOwogCi0gICAgV1RGOjpTdHJpbmcgdXNlckFnZW50
KGNvbnN0IFdlYkNvcmU6OlVSTCYpIG92ZXJyaWRlOworICAgIFdURjo6U3RyaW5nIHVzZXJBZ2Vu
dChjb25zdCBXZWJDb3JlOjpVUkwmKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHNhdmVQbGF0Zm9y
bURhdGFUb0NhY2hlZEZyYW1lKFdlYkNvcmU6OkNhY2hlZEZyYW1lKikgb3ZlcnJpZGU7Ci0gICAg
dm9pZCB0cmFuc2l0aW9uVG9Db21taXR0ZWRGcm9tQ2FjaGVkRnJhbWUoV2ViQ29yZTo6Q2FjaGVk
RnJhbWUqKSBvdmVycmlkZTsKKyAgICB2b2lkIHNhdmVQbGF0Zm9ybURhdGFUb0NhY2hlZEZyYW1l
KFdlYkNvcmU6OkNhY2hlZEZyYW1lKikgZmluYWw7CisgICAgdm9pZCB0cmFuc2l0aW9uVG9Db21t
aXR0ZWRGcm9tQ2FjaGVkRnJhbWUoV2ViQ29yZTo6Q2FjaGVkRnJhbWUqKSBmaW5hbDsKICNpZiBQ
TEFURk9STShJT1MpCi0gICAgdm9pZCBkaWRSZXN0b3JlRnJhbWVIaWVyYXJjaHlGb3JDYWNoZWRG
cmFtZSgpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkUmVzdG9yZUZyYW1lSGllcmFyY2h5Rm9yQ2Fj
aGVkRnJhbWUoKSBmaW5hbDsKICNlbmRpZgotICAgIHZvaWQgdHJhbnNpdGlvblRvQ29tbWl0dGVk
Rm9yTmV3UGFnZSgpIG92ZXJyaWRlOworICAgIHZvaWQgdHJhbnNpdGlvblRvQ29tbWl0dGVkRm9y
TmV3UGFnZSgpIGZpbmFsOwogCi0gICAgdm9pZCBkaWRTYXZlVG9QYWdlQ2FjaGUoKSBvdmVycmlk
ZTsKLSAgICB2b2lkIGRpZFJlc3RvcmVGcm9tUGFnZUNhY2hlKCkgb3ZlcnJpZGU7CisgICAgdm9p
ZCBkaWRTYXZlVG9QYWdlQ2FjaGUoKSBmaW5hbDsKKyAgICB2b2lkIGRpZFJlc3RvcmVGcm9tUGFn
ZUNhY2hlKCkgZmluYWw7CiAKLSAgICB2b2lkIGRpc3BhdGNoRGlkQmVjb21lRnJhbWVzZXQoYm9v
bCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERpZEJlY29tZUZyYW1lc2V0KGJvb2wpIGZp
bmFsOwogCi0gICAgYm9vbCBjYW5IYW5kbGVSZXF1ZXN0KGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYpIGNvbnN0IG92ZXJyaWRlOwotICAgIGJvb2wgY2FuU2hvd01JTUVUeXBlKGNvbnN0
IFdURjo6U3RyaW5nJiBNSU1FVHlwZSkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgYm9vbCBjYW5TaG93
TUlNRVR5cGVBc0hUTUwoY29uc3QgV1RGOjpTdHJpbmcmIE1JTUVUeXBlKSBjb25zdCBvdmVycmlk
ZTsKLSAgICBib29sIHJlcHJlc2VudGF0aW9uRXhpc3RzRm9yVVJMU2NoZW1lKGNvbnN0IFdURjo6
U3RyaW5nJiBVUkxTY2hlbWUpIGNvbnN0IG92ZXJyaWRlOwotICAgIFdURjo6U3RyaW5nIGdlbmVy
YXRlZE1JTUVUeXBlRm9yVVJMU2NoZW1lKGNvbnN0IFdURjo6U3RyaW5nJiBVUkxTY2hlbWUpIGNv
bnN0IG92ZXJyaWRlOworICAgIGJvb2wgY2FuSGFuZGxlUmVxdWVzdChjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmKSBjb25zdCBmaW5hbDsKKyAgICBib29sIGNhblNob3dNSU1FVHlwZShj
b25zdCBXVEY6OlN0cmluZyYgTUlNRVR5cGUpIGNvbnN0IGZpbmFsOworICAgIGJvb2wgY2FuU2hv
d01JTUVUeXBlQXNIVE1MKGNvbnN0IFdURjo6U3RyaW5nJiBNSU1FVHlwZSkgY29uc3QgZmluYWw7
CisgICAgYm9vbCByZXByZXNlbnRhdGlvbkV4aXN0c0ZvclVSTFNjaGVtZShjb25zdCBXVEY6OlN0
cmluZyYgVVJMU2NoZW1lKSBjb25zdCBmaW5hbDsKKyAgICBXVEY6OlN0cmluZyBnZW5lcmF0ZWRN
SU1FVHlwZUZvclVSTFNjaGVtZShjb25zdCBXVEY6OlN0cmluZyYgVVJMU2NoZW1lKSBjb25zdCBm
aW5hbDsKIAotICAgIHZvaWQgZnJhbWVMb2FkQ29tcGxldGVkKCkgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBzYXZlVmlld1N0YXRlVG9JdGVtKFdlYkNvcmU6Okhpc3RvcnlJdGVtJikgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCByZXN0b3JlVmlld1N0YXRlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBwcm92aXNpb25h
bExvYWRTdGFydGVkKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRGaW5pc2hMb2FkKCkgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCBwcmVwYXJlRm9yRGF0YVNvdXJjZVJlcGxhY2VtZW50KCkgb3ZlcnJpZGU7
Ci0gICAgUmVmPFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyPiBjcmVhdGVEb2N1bWVudExvYWRlcihj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpTdWJzdGl0dXRl
RGF0YSYpIG92ZXJyaWRlOwotICAgIHZvaWQgdXBkYXRlQ2FjaGVkRG9jdW1lbnRMb2FkZXIoV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXImKSBvdmVycmlkZSB7IH0KKyAgICB2b2lkIGZyYW1lTG9hZENv
bXBsZXRlZCgpIGZpbmFsOworICAgIHZvaWQgc2F2ZVZpZXdTdGF0ZVRvSXRlbShXZWJDb3JlOjpI
aXN0b3J5SXRlbSYpIGZpbmFsOworICAgIHZvaWQgcmVzdG9yZVZpZXdTdGF0ZSgpIGZpbmFsOwor
ICAgIHZvaWQgcHJvdmlzaW9uYWxMb2FkU3RhcnRlZCgpIGZpbmFsOworICAgIHZvaWQgZGlkRmlu
aXNoTG9hZCgpIGZpbmFsOworICAgIHZvaWQgcHJlcGFyZUZvckRhdGFTb3VyY2VSZXBsYWNlbWVu
dCgpIGZpbmFsOworICAgIFJlZjxXZWJDb3JlOjpEb2N1bWVudExvYWRlcj4gY3JlYXRlRG9jdW1l
bnRMb2FkZXIoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6
U3Vic3RpdHV0ZURhdGEmKSBmaW5hbDsKKyAgICB2b2lkIHVwZGF0ZUNhY2hlZERvY3VtZW50TG9h
ZGVyKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyJikgZmluYWwgeyB9CiAKLSAgICB2b2lkIHNldFRp
dGxlKGNvbnN0IFdlYkNvcmU6OlN0cmluZ1dpdGhEaXJlY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpV
UkwmKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldFRpdGxlKGNvbnN0IFdlYkNvcmU6OlN0cmluZ1dp
dGhEaXJlY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpVUkwmKSBmaW5hbDsKIAotICAgIFJlZlB0cjxX
ZWJDb3JlOjpGcmFtZT4gY3JlYXRlRnJhbWUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgV1RG
OjpTdHJpbmcmIG5hbWUsIFdlYkNvcmU6OkhUTUxGcmFtZU93bmVyRWxlbWVudCosCi0gICAgICAg
IGNvbnN0IFdURjo6U3RyaW5nJiByZWZlcnJlciwgYm9vbCBhbGxvd3NTY3JvbGxpbmcsIGludCBt
YXJnaW5XaWR0aCwgaW50IG1hcmdpbkhlaWdodCkgb3ZlcnJpZGU7Ci0gICAgUmVmUHRyPFdlYkNv
cmU6OldpZGdldD4gY3JlYXRlUGx1Z2luKGNvbnN0IFdlYkNvcmU6OkludFNpemUmLCBXZWJDb3Jl
OjpIVE1MUGx1Z0luRWxlbWVudCosIGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNvbnN0IFZlY3RvcjxX
VEY6OlN0cmluZz4mLAotICAgICAgICBjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiwgY29uc3Qg
V1RGOjpTdHJpbmcmLCBib29sKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlY3JlYXRlUGx1Z2luKFdl
YkNvcmU6OldpZGdldCopIG92ZXJyaWRlOwotICAgIHZvaWQgcmVkaXJlY3REYXRhVG9QbHVnaW4o
V2ViQ29yZTo6V2lkZ2V0KiBwbHVnaW5XaWRnZXQpIG92ZXJyaWRlOworICAgIFJlZlB0cjxXZWJD
b3JlOjpGcmFtZT4gY3JlYXRlRnJhbWUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgV1RGOjpT
dHJpbmcmIG5hbWUsIFdlYkNvcmU6OkhUTUxGcmFtZU93bmVyRWxlbWVudCYsCisgICAgICAgIGNv
bnN0IFdURjo6U3RyaW5nJiByZWZlcnJlciwgYm9vbCBhbGxvd3NTY3JvbGxpbmcsIGludCBtYXJn
aW5XaWR0aCwgaW50IG1hcmdpbkhlaWdodCkgZmluYWw7CisgICAgUmVmUHRyPFdlYkNvcmU6Oldp
ZGdldD4gY3JlYXRlUGx1Z2luKGNvbnN0IFdlYkNvcmU6OkludFNpemUmLCBXZWJDb3JlOjpIVE1M
UGx1Z0luRWxlbWVudCYsIGNvbnN0IFdlYkNvcmU6OlVSTCYsCisgICAgICAgIGNvbnN0IFZlY3Rv
cjxXVEY6OlN0cmluZz4mLCBjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiwgY29uc3QgV1RGOjpT
dHJpbmcmLCBib29sKSBmaW5hbDsKKyAgICB2b2lkIHJlY3JlYXRlUGx1Z2luKFdlYkNvcmU6Oldp
ZGdldCopIGZpbmFsOworICAgIHZvaWQgcmVkaXJlY3REYXRhVG9QbHVnaW4oV2ViQ29yZTo6V2lk
Z2V0KiBwbHVnaW5XaWRnZXQpIGZpbmFsOwogCiAjaWYgRU5BQkxFKFdFQkdMKQotICAgIFdlYkNv
cmU6OldlYkdMTG9hZFBvbGljeSB3ZWJHTFBvbGljeUZvclVSTChjb25zdCBTdHJpbmcmKSBjb25z
dCBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgcmVzb2x2ZVdlYkdMUG9s
aWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYpIGNvbnN0IG92ZXJyaWRlOwotI2VuZGlmIC8vIEVOQUJM
RShXRUJHTCkKKyAgICBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgd2ViR0xQb2xpY3lGb3JVUkwo
Y29uc3QgU3RyaW5nJikgY29uc3QgZmluYWw7CisgICAgV2ViQ29yZTo6V2ViR0xMb2FkUG9saWN5
IHJlc29sdmVXZWJHTFBvbGljeUZvclVSTChjb25zdCBTdHJpbmcmKSBjb25zdCBmaW5hbDsKKyNl
bmRpZgogCi0gICAgUGFzc1JlZlB0cjxXZWJDb3JlOjpXaWRnZXQ+IGNyZWF0ZUphdmFBcHBsZXRX
aWRnZXQoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxBcHBsZXRFbGVtZW50
KiwgY29uc3QgV2ViQ29yZTo6VVJMJiBiYXNlVVJMLAotICAgICAgICBjb25zdCBWZWN0b3I8V1RG
OjpTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiBwYXJhbVZh
bHVlcykgb3ZlcnJpZGU7CisgICAgUmVmUHRyPFdlYkNvcmU6OldpZGdldD4gY3JlYXRlSmF2YUFw
cGxldFdpZGdldChjb25zdCBXZWJDb3JlOjpJbnRTaXplJiwgV2ViQ29yZTo6SFRNTEFwcGxldEVs
ZW1lbnQmLCBjb25zdCBXZWJDb3JlOjpVUkwmIGJhc2VVUkwsCisgICAgICAgIGNvbnN0IFZlY3Rv
cjxXVEY6OlN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mIHBh
cmFtVmFsdWVzKSBmaW5hbDsKICAgICAKLSAgICBXZWJDb3JlOjpPYmplY3RDb250ZW50VHlwZSBv
YmplY3RDb250ZW50VHlwZShjb25zdCBXZWJDb3JlOjpVUkwmLCBjb25zdCBXVEY6OlN0cmluZyYg
bWltZVR5cGUpIG92ZXJyaWRlOwotICAgIFdURjo6U3RyaW5nIG92ZXJyaWRlTWVkaWFUeXBlKCkg
Y29uc3Qgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6T2JqZWN0Q29udGVudFR5cGUgb2JqZWN0Q29u
dGVudFR5cGUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgV1RGOjpTdHJpbmcmIG1pbWVUeXBl
KSBmaW5hbDsKKyAgICBXVEY6OlN0cmluZyBvdmVycmlkZU1lZGlhVHlwZSgpIGNvbnN0IGZpbmFs
OwogICAgIAotICAgIHZvaWQgZGlzcGF0Y2hEaWRDbGVhcldpbmRvd09iamVjdEluV29ybGQoV2Vi
Q29yZTo6RE9NV3JhcHBlcldvcmxkJikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERpZENs
ZWFyV2luZG93T2JqZWN0SW5Xb3JsZChXZWJDb3JlOjpET01XcmFwcGVyV29ybGQmKSBmaW5hbDsK
IAotICAgIHZvaWQgcmVnaXN0ZXJGb3JJY29uTm90aWZpY2F0aW9uKGJvb2wgbGlzdGVuKSBvdmVy
cmlkZTsKKyAgICB2b2lkIHJlZ2lzdGVyRm9ySWNvbk5vdGlmaWNhdGlvbihib29sIGxpc3Rlbikg
ZmluYWw7CiAKICNpZiBQTEFURk9STShJT1MpCi0gICAgYm9vbCBzaG91bGRMb2FkTWVkaWFFbGVt
ZW50VVJMKGNvbnN0IFdlYkNvcmU6OlVSTCYpIGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wgc2hv
dWxkTG9hZE1lZGlhRWxlbWVudFVSTChjb25zdCBXZWJDb3JlOjpVUkwmKSBjb25zdCBmaW5hbDsK
ICNlbmRpZgogCi0gICAgUmVtb3RlQVhPYmplY3RSZWYgYWNjZXNzaWJpbGl0eVJlbW90ZU9iamVj
dCgpIG92ZXJyaWRlIHsgcmV0dXJuIDA7IH0KKyAgICBSZW1vdGVBWE9iamVjdFJlZiBhY2Nlc3Np
YmlsaXR5UmVtb3RlT2JqZWN0KCkgZmluYWwgeyByZXR1cm4gMDsgfQogICAgIAogICAgIFJldGFp
blB0cjxXZWJGcmFtZVBvbGljeUxpc3RlbmVyPiBzZXRVcFBvbGljeUxpc3RlbmVyKFdlYkNvcmU6
OkZyYW1lUG9saWN5RnVuY3Rpb24sIE5TVVJMICphcHBMaW5rVVJMID0gbmlsKTsKIAotICAgIE5T
RGljdGlvbmFyeSAqYWN0aW9uRGljdGlvbmFyeShjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0
aW9uJiwgUGFzc1JlZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+KSBjb25zdDsKKyAgICBOU0RpY3Rp
b25hcnkgKmFjdGlvbkRpY3Rpb25hcnkoY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYs
IFdlYkNvcmU6OkZvcm1TdGF0ZSopIGNvbnN0OwogICAgIAotICAgIGJvb2wgY2FuQ2FjaGVQYWdl
KCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBjYW5DYWNoZVBhZ2UoKSBjb25zdCBmaW5hbDsK
IAotICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRl
TmV0d29ya2luZ0NvbnRleHQoKSBvdmVycmlkZTsKKyAgICBSZWY8V2ViQ29yZTo6RnJhbWVOZXR3
b3JraW5nQ29udGV4dD4gY3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKSBmaW5hbDsKIAogI2lmIEVO
QUJMRShSRVFVRVNUX0FVVE9DT01QTEVURSkKLSAgICB2b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxl
dGUoUGFzc1JlZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+KSBvdmVycmlkZSB7IH0KKyAgICB2b2lk
IGRpZFJlcXVlc3RBdXRvY29tcGxldGUoUmVmPFdlYkNvcmU6OkZvcm1TdGF0ZT4mJikgZmluYWwg
eyB9CiAjZW5kaWYKIAotICAgIGJvb2wgc2hvdWxkUGFpbnRCcm9rZW5JbWFnZShjb25zdCBXZWJD
b3JlOjpVUkwmKSBjb25zdCBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZFBhaW50QnJva2VuSW1h
Z2UoY29uc3QgV2ViQ29yZTo6VVJMJikgY29uc3QgZmluYWw7CiAKICNpZiBVU0UoUVVJQ0tfTE9P
SykKLSAgICB2b2lkIGRpZENyZWF0ZVF1aWNrTG9va0hhbmRsZShXZWJDb3JlOjpRdWlja0xvb2tI
YW5kbGUmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZENyZWF0ZVF1aWNrTG9va0hhbmRsZShXZWJD
b3JlOjpRdWlja0xvb2tIYW5kbGUmKSBmaW5hbDsKICNlbmRpZgogCiAjaWYgRU5BQkxFKENPTlRF
TlRfRklMVEVSSU5HKQotICAgIHZvaWQgY29udGVudEZpbHRlckRpZEJsb2NrTG9hZChXZWJDb3Jl
OjpDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXIpIG92ZXJyaWRlOworICAgIHZvaWQgY29udGVu
dEZpbHRlckRpZEJsb2NrTG9hZChXZWJDb3JlOjpDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXIp
IGZpbmFsOwogI2VuZGlmCiAKLSAgICB2b2lkIHByZWZldGNoRE5TKGNvbnN0IFN0cmluZyYpIG92
ZXJyaWRlOworICAgIHZvaWQgcHJlZmV0Y2hETlMoY29uc3QgU3RyaW5nJikgZmluYWw7CiAKICAg
ICBSZXRhaW5QdHI8V2ViRnJhbWU+IG1fd2ViRnJhbWU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1tIGIvU291cmNl
L1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW0KaW5kZXgg
NGU5YjJlMjcyZDJkMzlkYWE4MGRhMGNjYTQzZGQyZmEwOTg5YzEwNS4uNjI1ZTg1YTY0ZTZjNTM2
ZjBiNzM4MThjMzBlMzAxNGE5NmViOWVjMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMv
V2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW0KKysrIGIvU291cmNlL1dlYktp
dC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW0KQEAgLTEsNSArMSw1
IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0xMjgsNyAr
MTI4LDcgQEAKICNpbXBvcnQgPHJ1bnRpbWUvSW5pdGlhbGl6ZVRocmVhZGluZy5oPgogI2ltcG9y
dCA8d3RmL0Jsb2NrT2JqQ0V4Y2VwdGlvbnMuaD4KICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+
Ci0jaW1wb3J0IDx3dGYvUGFzc1JlZlB0ci5oPgorI2ltcG9ydCA8d3RmL1JlZi5oPgogI2ltcG9y
dCA8d3RmL1J1bkxvb3AuaD4KICNpbXBvcnQgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC04
ODQsNyArODg0LDcgQEAgc3RhdGljIEJPT0wgc2hvdWxkVHJ5QXBwTGluayhXZWJWaWV3ICp3ZWJW
aWV3LCBjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIEYKICNlbmRpZgogfQogCi12b2lk
IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0Fj
dGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVz
dCYgcmVxdWVzdCwgUGFzc1JlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSwgY29uc3QgU3RyaW5n
JiBmcmFtZU5hbWUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24pCit2b2lkIFdlYkZyYW1l
TG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25z
dCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVz
dCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBGcmFtZVBv
bGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQogewogICAgIFdlYlZpZXcgKndlYlZpZXcgPSBnZXRXZWJW
aWV3KG1fd2ViRnJhbWUuZ2V0KCkpOwogICAgIEJPT0wgdHJ5QXBwTGluayA9IHNob3VsZFRyeUFw
cExpbmsod2ViVmlldywgYWN0aW9uLCBudWxscHRyKTsKQEAgLTg5Niw3ICs4OTYsNyBAQCB2b2lk
IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0Fj
dGlvbihjb25zdCBOYXZpZ2F0aQogICAgICAgICAgICAgICAgICAgICAgICAgICBkZWNpc2lvbkxp
c3RlbmVyOnNldFVwUG9saWN5TGlzdGVuZXIoV1RGTW92ZShmdW5jdGlvbiksIHRyeUFwcExpbmsg
PyAoTlNVUkwgKilyZXF1ZXN0LnVybCgpIDogbmlsKS5nZXQoKV07CiB9CiAKLXZvaWQgV2ViRnJh
bWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihj
b25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVx
dWVzdCwgUGFzc1JlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSwgRnJhbWVQb2xpY3lGdW5jdGlv
biBmdW5jdGlvbikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9s
aWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIGNv
bnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIEZyYW1l
UG9saWN5RnVuY3Rpb24gZnVuY3Rpb24pCiB7CiAgICAgV2ViVmlldyAqd2ViVmlldyA9IGdldFdl
YlZpZXcobV93ZWJGcmFtZS5nZXQoKSk7CiAgICAgQk9PTCB0cnlBcHBMaW5rID0gc2hvdWxkVHJ5
QXBwTGluayh3ZWJWaWV3LCBhY3Rpb24sIGNvcmUobV93ZWJGcmFtZS5nZXQoKSkpOwpAQCAtOTIw
LDI5ICs5MjAsMjggQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hVbmFibGVU
b0ltcGxlbWVudFBvbGljeShjb25zdCBSZXNvdXJjZUVycm9yJgogICAgIFtbd2ViVmlldyBfcG9s
aWN5RGVsZWdhdGVGb3J3YXJkZXJdIHdlYlZpZXc6d2ViVmlldyB1bmFibGVUb0ltcGxlbWVudFBv
bGljeVdpdGhFcnJvcjplcnJvciBmcmFtZTptX3dlYkZyYW1lLmdldCgpXTsgICAgCiB9CiAKLXN0
YXRpYyBOU0RpY3Rpb25hcnkgKm1ha2VGb3JtRmllbGRWYWx1ZXNEaWN0aW9uYXJ5KEZvcm1TdGF0
ZSogZm9ybVN0YXRlKQorc3RhdGljIE5TRGljdGlvbmFyeSAqbWFrZUZvcm1GaWVsZFZhbHVlc0Rp
Y3Rpb25hcnkoRm9ybVN0YXRlJiBmb3JtU3RhdGUpCiB7Ci0gICAgY29uc3QgU3RyaW5nUGFpclZl
Y3RvciYgdGV4dEZpZWxkVmFsdWVzID0gZm9ybVN0YXRlLT50ZXh0RmllbGRWYWx1ZXMoKTsKKyAg
ICBhdXRvJiB0ZXh0RmllbGRWYWx1ZXMgPSBmb3JtU3RhdGUudGV4dEZpZWxkVmFsdWVzKCk7CiAg
ICAgc2l6ZV90IHNpemUgPSB0ZXh0RmllbGRWYWx1ZXMuc2l6ZSgpOwogICAgIE5TTXV0YWJsZURp
Y3Rpb25hcnkgKmRpY3Rpb25hcnkgPSBbW05TTXV0YWJsZURpY3Rpb25hcnkgYWxsb2NdIGluaXRX
aXRoQ2FwYWNpdHk6c2l6ZV07Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzaXplOyArK2kp
Ci0gICAgICAgIFtkaWN0aW9uYXJ5IHNldE9iamVjdDp0ZXh0RmllbGRWYWx1ZXNbaV0uc2Vjb25k
IGZvcktleTp0ZXh0RmllbGRWYWx1ZXNbaV0uZmlyc3RdOwotCisgICAgZm9yIChhdXRvJiB2YWx1
ZSA6IHRleHRGaWVsZFZhbHVlcykKKyAgICAgICAgW2RpY3Rpb25hcnkgc2V0T2JqZWN0OnZhbHVl
LnNlY29uZCBmb3JLZXk6dmFsdWUuZmlyc3RdOwogICAgIHJldHVybiBbZGljdGlvbmFyeSBhdXRv
cmVsZWFzZV07CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNl
bmRTdWJtaXRFdmVudChQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4gZm9ybVN0YXRlKQor
dm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJl
ZjxXZWJDb3JlOjpGb3JtU3RhdGU+JiYgZm9ybVN0YXRlKQogewogICAgIGlkIDxXZWJGb3JtRGVs
ZWdhdGU+IGZvcm1EZWxlZ2F0ZSA9IFtnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkpIF9mb3Jt
RGVsZWdhdGVdOwogICAgIGlmICghZm9ybURlbGVnYXRlKQogICAgICAgICByZXR1cm47CiAKLSAg
ICBET01IVE1MRm9ybUVsZW1lbnQgKmZvcm1FbGVtZW50ID0ga2l0KGZvcm1TdGF0ZS0+Zm9ybSgp
KTsKKyAgICBET01IVE1MRm9ybUVsZW1lbnQgKmZvcm1FbGVtZW50ID0ga2l0KCZmb3JtU3RhdGUt
PmZvcm0oKSk7CiAgICAgTlNEaWN0aW9uYXJ5ICp2YWx1ZXMgPSBtYWtlRm9ybUZpZWxkVmFsdWVz
RGljdGlvbmFyeShmb3JtU3RhdGUuZ2V0KCkpOwogICAgIENhbGxGb3JtRGVsZWdhdGUoZ2V0V2Vi
VmlldyhtX3dlYkZyYW1lLmdldCgpKSwgQHNlbGVjdG9yKHdpbGxTZW5kU3VibWl0RXZlbnRUb0Zv
cm06aW5GcmFtZTp3aXRoVmFsdWVzOiksIGZvcm1FbGVtZW50LCBtX3dlYkZyYW1lLmdldCgpLCB2
YWx1ZXMpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTdWJt
aXRGb3JtKFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiBmb3JtU3RhdGUsIEZyYW1lUG9saWN5RnVuY3Rp
b24gZnVuY3Rpb24pCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTdWJt
aXRGb3JtKEZvcm1TdGF0ZSYgZm9ybVN0YXRlLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9u
KQogewogICAgIGlkIDxXZWJGb3JtRGVsZWdhdGU+IGZvcm1EZWxlZ2F0ZSA9IFtnZXRXZWJWaWV3
KG1fd2ViRnJhbWUuZ2V0KCkpIF9mb3JtRGVsZWdhdGVdOwogICAgIGlmICghZm9ybURlbGVnYXRl
KSB7CkBAIC05NTAsOCArOTQ5LDggQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0
Y2hXaWxsU3VibWl0Rm9ybShQYXNzUmVmUHRyPEZvcm1TdGF0ZT4gZm9ybVN0YXQKICAgICAgICAg
cmV0dXJuOwogICAgIH0KIAotICAgIE5TRGljdGlvbmFyeSAqdmFsdWVzID0gbWFrZUZvcm1GaWVs
ZFZhbHVlc0RpY3Rpb25hcnkoZm9ybVN0YXRlLmdldCgpKTsKLSAgICBDYWxsRm9ybURlbGVnYXRl
KGdldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSksIEBzZWxlY3RvcihmcmFtZTpzb3VyY2VGcmFt
ZTp3aWxsU3VibWl0Rm9ybTp3aXRoVmFsdWVzOnN1Ym1pc3Npb25MaXN0ZW5lcjopLCBtX3dlYkZy
YW1lLmdldCgpLCBraXQoZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLT5mcmFtZSgpKSwga2l0
KGZvcm1TdGF0ZS0+Zm9ybSgpKSwgdmFsdWVzLCBzZXRVcFBvbGljeUxpc3RlbmVyKFdURk1vdmUo
ZnVuY3Rpb24pKS5nZXQoKSk7CisgICAgTlNEaWN0aW9uYXJ5ICp2YWx1ZXMgPSBtYWtlRm9ybUZp
ZWxkVmFsdWVzRGljdGlvbmFyeShmb3JtU3RhdGUpOworICAgIENhbGxGb3JtRGVsZWdhdGUoZ2V0
V2ViVmlldyhtX3dlYkZyYW1lLmdldCgpKSwgQHNlbGVjdG9yKGZyYW1lOnNvdXJjZUZyYW1lOndp
bGxTdWJtaXRGb3JtOndpdGhWYWx1ZXM6c3VibWlzc2lvbkxpc3RlbmVyOiksIG1fd2ViRnJhbWUu
Z2V0KCksIGtpdChmb3JtU3RhdGUuc291cmNlRG9jdW1lbnQoKS5mcmFtZSgpKSwga2l0KCZmb3Jt
U3RhdGUuZm9ybSgpKSwgdmFsdWVzLCBzZXRVcFBvbGljeUxpc3RlbmVyKFdURk1vdmUoZnVuY3Rp
b24pKS5nZXQoKSk7CiB9CiAKIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnJldmVydFRvUHJv
dmlzaW9uYWxTdGF0ZShEb2N1bWVudExvYWRlciogbG9hZGVyKQpAQCAtMTU1Miw3ICsxNTUxLDcg
QEAgc3RhdGljIGNvbnN0IE1vdXNlRXZlbnQqIGZpbmRNb3VzZUV2ZW50KGNvbnN0IEV2ZW50KiBl
dmVudCkKICAgICByZXR1cm4gMDsKIH0KIAotTlNEaWN0aW9uYXJ5ICpXZWJGcmFtZUxvYWRlckNs
aWVudDo6YWN0aW9uRGljdGlvbmFyeShjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIFBh
c3NSZWZQdHI8Rm9ybVN0YXRlPiBmb3JtU3RhdGUpIGNvbnN0CitOU0RpY3Rpb25hcnkgKldlYkZy
YW1lTG9hZGVyQ2xpZW50OjphY3Rpb25EaWN0aW9uYXJ5KGNvbnN0IE5hdmlnYXRpb25BY3Rpb24m
IGFjdGlvbiwgRm9ybVN0YXRlKiBmb3JtU3RhdGUpIGNvbnN0CiB7CiAgICAgdW5zaWduZWQgbW9k
aWZpZXJGbGFncyA9IDA7CiAgICAgY29uc3QgRXZlbnQqIGV2ZW50ID0gYWN0aW9uLmV2ZW50KCk7
CkBAIC0xNTkzLDEwICsxNTkyLDggQEAgTlNEaWN0aW9uYXJ5ICpXZWJGcmFtZUxvYWRlckNsaWVu
dDo6YWN0aW9uRGljdGlvbmFyeShjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3QKICAgICAgICAg
ICAgIFtyZXN1bHQgc2V0T2JqZWN0OltOU051bWJlciBudW1iZXJXaXRoSW50OldlYkNvcmU6Ok5v
QnV0dG9uXSBmb3JLZXk6V2ViQWN0aW9uQnV0dG9uS2V5XTsKICAgICB9CiAKLSAgICBpZiAoZm9y
bVN0YXRlKSB7Ci0gICAgICAgIEFTU0VSVChmb3JtU3RhdGUtPmZvcm0oKSk7Ci0gICAgICAgIFty
ZXN1bHQgc2V0T2JqZWN0OmtpdChmb3JtU3RhdGUtPmZvcm0oKSkgZm9yS2V5OldlYkFjdGlvbkZv
cm1LZXldOwotICAgIH0KKyAgICBpZiAoZm9ybVN0YXRlKQorICAgICAgICBbcmVzdWx0IHNldE9i
amVjdDpraXQoJmZvcm1TdGF0ZS0+Zm9ybSgpKSBmb3JLZXk6V2ViQWN0aW9uRm9ybUtleV07CiAK
ICAgICByZXR1cm4gcmVzdWx0OwogfQpAQCAtMTYyMiw3ICsxNjE5LDcgQEAgYm9vbCBXZWJGcmFt
ZUxvYWRlckNsaWVudDo6Y2FuQ2FjaGVQYWdlKCkgY29uc3QKICAgICByZXR1cm4gdHJ1ZTsKIH0K
IAotUmVmUHRyPEZyYW1lPiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlRnJhbWUoY29uc3Qg
VVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgbmFtZSwgSFRNTEZyYW1lT3duZXJFbGVtZW50KiBvd25l
ckVsZW1lbnQsCitSZWZQdHI8RnJhbWU+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVGcmFt
ZShjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiBuYW1lLCBIVE1MRnJhbWVPd25lckVsZW1l
bnQmIG93bmVyRWxlbWVudCwKICAgICBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBib29sIGFsbG93
c1Njcm9sbGluZywgaW50IG1hcmdpbldpZHRoLCBpbnQgbWFyZ2luSGVpZ2h0KQogewogICAgIEJF
R0lOX0JMT0NLX09CSkNfRVhDRVBUSU9OUzsKQEAgLTE2MzEsNyArMTYyOCw3IEBAIFJlZlB0cjxG
cmFtZT4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYgdXJsLCBj
b25zdCBTdHJpbmcmIG5hCiAgICAgCiAgICAgV2ViRnJhbWVWaWV3ICpjaGlsZFZpZXcgPSBbW1dl
YkZyYW1lVmlldyBhbGxvY10gaW5pdF07CiAgICAgCi0gICAgUmVmUHRyPEZyYW1lPiByZXN1bHQg
PSBbV2ViRnJhbWUgX2NyZWF0ZVN1YmZyYW1lV2l0aE93bmVyRWxlbWVudDpvd25lckVsZW1lbnQg
ZnJhbWVOYW1lOm5hbWUgZnJhbWVWaWV3OmNoaWxkVmlld107CisgICAgUmVmUHRyPEZyYW1lPiBy
ZXN1bHQgPSBbV2ViRnJhbWUgX2NyZWF0ZVN1YmZyYW1lV2l0aE93bmVyRWxlbWVudDomb3duZXJF
bGVtZW50IGZyYW1lTmFtZTpuYW1lIGZyYW1lVmlldzpjaGlsZFZpZXddOwogICAgIFtjaGlsZFZp
ZXcgcmVsZWFzZV07CiAKICAgICBXZWJGcmFtZSAqbmV3RnJhbWUgPSBraXQocmVzdWx0LmdldCgp
KTsKQEAgLTE5MDksNyArMTkwNiw3IEBAIHN0YXRpYyBib29sIHNob3VsZEJsb2NrUGx1Z2luKFdl
YkJhc2VQbHVnaW5QYWNrYWdlICpwbHVnaW5QYWNrYWdlKQogI2VuZGlmCiB9CiAKLVJlZlB0cjxX
aWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYg
c2l6ZSwgSFRNTFBsdWdJbkVsZW1lbnQqIGVsZW1lbnQsIGNvbnN0IFVSTCYgdXJsLAorUmVmUHRy
PFdpZGdldD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXpl
JiBzaXplLCBIVE1MUGx1Z0luRWxlbWVudCYgZWxlbWVudCwgY29uc3QgVVJMJiB1cmwsCiAgICAg
Y29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBw
YXJhbVZhbHVlcywgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgYm9vbCBsb2FkTWFudWFsbHkpCiB7
CiAgICAgQkVHSU5fQkxPQ0tfT0JKQ19FWENFUFRJT05TOwpAQCAtMTk0OCw3ICsxOTQ1LDcgQEAg
UmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJ
bnRTaXplJiBzaXplLCBIVE1MUGx1Z0kKICAgICAgICAgICAgIGF0dHJpYnV0ZXMsIFdlYlBsdWdJ
bkF0dHJpYnV0ZXNLZXksCiAgICAgICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEludDpsb2Fk
TWFudWFsbHkgPyBXZWJQbHVnSW5Nb2RlRnVsbCA6IFdlYlBsdWdJbk1vZGVFbWJlZF0sIFdlYlBs
dWdJbk1vZGVLZXksCiAgICAgICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6IWxvYWRN
YW51YWxseV0sIFdlYlBsdWdJblNob3VsZExvYWRNYWluUmVzb3VyY2VLZXksCi0gICAgICAgICAg
ICBraXQoZWxlbWVudCksIFdlYlBsdWdJbkNvbnRhaW5pbmdFbGVtZW50S2V5LAorICAgICAgICAg
ICAga2l0KCZlbGVtZW50KSwgV2ViUGx1Z0luQ29udGFpbmluZ0VsZW1lbnRLZXksCiAgICAgICAg
ICAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIGJlIHBhc3NpbmcgYmFzZSBVUkwsIHNlZSA8aHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM1MjE1Pi4KICAgICAgICAgICAgIHBs
dWdpblVSTCwgV2ViUGx1Z0luQmFzZVVSTEtleSwgLy8gcGx1Z2luVVJMIG1pZ2h0IGJlIG5pbCwg
c28gYWRkIGl0IGxhc3QKICAgICAgICAgICAgIG5pbF07CkBAIC0xOTk0LDExICsxOTkxLDExIEBA
IFJlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3Qg
SW50U2l6ZSYgc2l6ZSwgSFRNTFBsdWdJCiAgICAgaWYgKHBsdWdpblBhY2thZ2UpIHsKICAgICAg
ICAgaWYgKHNob3VsZEJsb2NrUGx1Z2luKHBsdWdpblBhY2thZ2UpKSB7CiAgICAgICAgICAgICBl
cnJvckNvZGUgPSBXZWJLaXRFcnJvckJsb2NrZWRQbHVnSW5WZXJzaW9uOwotICAgICAgICAgICAg
aWYgKGlzPFJlbmRlckVtYmVkZGVkT2JqZWN0PihlbGVtZW50LT5yZW5kZXJlcigpKSkKLSAgICAg
ICAgICAgICAgICBkb3duY2FzdDxSZW5kZXJFbWJlZGRlZE9iamVjdD4oKmVsZW1lbnQtPnJlbmRl
cmVyKCkpLnNldFBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKFJlbmRlckVtYmVkZGVkT2JqZWN0
OjpJbnNlY3VyZVBsdWdpblZlcnNpb24pOworICAgICAgICAgICAgaWYgKGlzPFJlbmRlckVtYmVk
ZGVkT2JqZWN0PihlbGVtZW50LnJlbmRlcmVyKCkpKQorICAgICAgICAgICAgICAgIGRvd25jYXN0
PFJlbmRlckVtYmVkZGVkT2JqZWN0PigqZWxlbWVudC5yZW5kZXJlcigpKS5zZXRQbHVnaW5VbmF2
YWlsYWJpbGl0eVJlYXNvbihSZW5kZXJFbWJlZGRlZE9iamVjdDo6SW5zZWN1cmVQbHVnaW5WZXJz
aW9uKTsKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIGlmIChbcGx1Z2luUGFja2FnZSBp
c0tpbmRPZkNsYXNzOltXZWJQbHVnaW5QYWNrYWdlIGNsYXNzXV0pCi0gICAgICAgICAgICAgICAg
dmlldyA9IHBsdWdpblZpZXcobV93ZWJGcmFtZS5nZXQoKSwgKFdlYlBsdWdpblBhY2thZ2UgKilw
bHVnaW5QYWNrYWdlLCBhdHRyaWJ1dGVLZXlzLCBraXQocGFyYW1WYWx1ZXMpLCBiYXNlVVJMLCBr
aXQoZWxlbWVudCksIGxvYWRNYW51YWxseSk7CisgICAgICAgICAgICAgICAgdmlldyA9IHBsdWdp
blZpZXcobV93ZWJGcmFtZS5nZXQoKSwgKFdlYlBsdWdpblBhY2thZ2UgKilwbHVnaW5QYWNrYWdl
LCBhdHRyaWJ1dGVLZXlzLCBraXQocGFyYW1WYWx1ZXMpLCBiYXNlVVJMLCBraXQoJmVsZW1lbnQp
LCBsb2FkTWFudWFsbHkpOwogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgICAg
ICAgICAgZWxzZSBpZiAoW3BsdWdpblBhY2thZ2UgaXNLaW5kT2ZDbGFzczpbV2ViTmV0c2NhcGVQ
bHVnaW5QYWNrYWdlIGNsYXNzXV0pIHsKICAgICAgICAgICAgICAgICBXZWJCYXNlTmV0c2NhcGVQ
bHVnaW5WaWV3ICpwbHVnaW5WaWV3ID0gW1tbTkVUU0NBUEVfUExVR0lOX1ZJRVcgYWxsb2NdCkBA
IC0yMDEwLDcgKzIwMDcsNyBAQCBSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6
Y3JlYXRlUGx1Z2luKGNvbnN0IEludFNpemUmIHNpemUsIEhUTUxQbHVnSQogICAgICAgICAgICAg
ICAgICAgICBhdHRyaWJ1dGVLZXlzOmF0dHJpYnV0ZUtleXMKICAgICAgICAgICAgICAgICAgICAg
YXR0cmlidXRlVmFsdWVzOmtpdChwYXJhbVZhbHVlcykKICAgICAgICAgICAgICAgICAgICAgbG9h
ZE1hbnVhbGx5OmxvYWRNYW51YWxseQotICAgICAgICAgICAgICAgICAgICBlbGVtZW50OmVsZW1l
bnRdIGF1dG9yZWxlYXNlXTsKKyAgICAgICAgICAgICAgICAgICAgZWxlbWVudDomZWxlbWVudF0g
YXV0b3JlbGVhc2VdOwogCiAgICAgICAgICAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBOZXRz
Y2FwZVBsdWdpbldpZGdldChwbHVnaW5WaWV3KSk7CiAgICAgICAgICAgICB9CkBAIC0yMDgxLDcg
KzIwNzgsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpyZWRpcmVjdERhdGFUb1BsdWdp
bihXaWRnZXQqIHBsdWdpbldpZGdldCkKICAgICBFTkRfQkxPQ0tfT0JKQ19FWENFUFRJT05TOwog
fQogICAgIAotUGFzc1JlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVK
YXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmIHNpemUsIEhUTUxBcHBsZXRFbGVtZW50KiBl
bGVtZW50LCBjb25zdCBVUkwmIGJhc2VVUkwsIAorUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYgc2l6ZSwgSFRN
TEFwcGxldEVsZW1lbnQmIGVsZW1lbnQsIGNvbnN0IFVSTCYgYmFzZVVSTCwKICAgICBjb25zdCBW
ZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFs
dWVzKQogewogICAgIEJFR0lOX0JMT0NLX09CSkNfRVhDRVBUSU9OUzsKQEAgLTIwOTksOCArMjA5
Niw4IEBAIFBhc3NSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlSmF2
YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXplJiBzCiAgICAgaWYgKHBsdWdpblBhY2thZ2UpIHsK
ICAgICAgICAgaWYgKHNob3VsZEJsb2NrUGx1Z2luKHBsdWdpblBhY2thZ2UpKSB7CiAgICAgICAg
ICAgICBlcnJvckNvZGUgPSBXZWJLaXRFcnJvckJsb2NrZWRQbHVnSW5WZXJzaW9uOwotICAgICAg
ICAgICAgaWYgKGlzPFJlbmRlckVtYmVkZGVkT2JqZWN0PihlbGVtZW50LT5yZW5kZXJlcigpKSkK
LSAgICAgICAgICAgICAgICBkb3duY2FzdDxSZW5kZXJFbWJlZGRlZE9iamVjdD4oKmVsZW1lbnQt
PnJlbmRlcmVyKCkpLnNldFBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKFJlbmRlckVtYmVkZGVk
T2JqZWN0OjpJbnNlY3VyZVBsdWdpblZlcnNpb24pOworICAgICAgICAgICAgaWYgKGlzPFJlbmRl
ckVtYmVkZGVkT2JqZWN0PihlbGVtZW50LnJlbmRlcmVyKCkpKQorICAgICAgICAgICAgICAgIGRv
d25jYXN0PFJlbmRlckVtYmVkZGVkT2JqZWN0PigqZWxlbWVudC5yZW5kZXJlcigpKS5zZXRQbHVn
aW5VbmF2YWlsYWJpbGl0eVJlYXNvbihSZW5kZXJFbWJlZGRlZE9iamVjdDo6SW5zZWN1cmVQbHVn
aW5WZXJzaW9uKTsKICAgICAgICAgfSBlbHNlIHsKICNpZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lO
X0FQSSkKICAgICAgICAgICAgIGlmIChbcGx1Z2luUGFja2FnZSBpc0tpbmRPZkNsYXNzOltXZWJO
ZXRzY2FwZVBsdWdpblBhY2thZ2UgY2xhc3NdXSkgewpAQCAtMjExMiw3ICsyMTA5LDcgQEAgUGFz
c1JlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lk
Z2V0KGNvbnN0IEludFNpemUmIHMKICAgICAgICAgICAgICAgICAgICAgYXR0cmlidXRlS2V5czpr
aXQocGFyYW1OYW1lcykKICAgICAgICAgICAgICAgICAgICAgYXR0cmlidXRlVmFsdWVzOmtpdChw
YXJhbVZhbHVlcykKICAgICAgICAgICAgICAgICAgICAgbG9hZE1hbnVhbGx5Ok5PCi0gICAgICAg
ICAgICAgICAgICAgIGVsZW1lbnQ6ZWxlbWVudF0gYXV0b3JlbGVhc2VdOworICAgICAgICAgICAg
ICAgICAgICBlbGVtZW50OiZlbGVtZW50XSBhdXRvcmVsZWFzZV07CiAgICAgICAgICAgICAgICAg
aWYgKHZpZXcpCiAgICAgICAgICAgICAgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgTmV0c2Nh
cGVQbHVnaW5XaWRnZXQoc3RhdGljX2Nhc3Q8V2ViQmFzZU5ldHNjYXBlUGx1Z2luVmlldyAqPih2
aWV3KSkpOwogICAgICAgICAgICAgfQpAQCAtMjIwOSw3ICsyMjA2LDcgQEAgdm9pZCBXZWJGcmFt
ZUxvYWRlckNsaWVudDo6cmVnaXN0ZXJGb3JJY29uTm90aWZpY2F0aW9uKGJvb2wgbGlzdGVuKQog
I2VuZGlmCiB9CiAKLVBhc3NSZWZQdHI8RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkKK1JlZjxGcmFtZU5ldHdvcmtp
bmdDb250ZXh0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlTmV0d29ya2luZ0NvbnRleHQo
KQogewogICAgIHJldHVybiBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0OjpjcmVhdGUoY29yZSht
X3dlYkZyYW1lLmdldCgpKSk7CiB9CkBAIC0yMjgzLDcgKzIyODAsNyBAQCB2b2lkIFdlYkZyYW1l
TG9hZGVyQ2xpZW50OjpkaWRDcmVhdGVRdWlja0xvb2tIYW5kbGUoV2ViQ29yZTo6UXVpY2tMb29r
SGFuZGxlJiBoYQogICAgICAgICAgICAgcmVtb3ZlUUxQcmV2aWV3Q29udmVydGVyRm9yVVJMKG1f
Zmlyc3RSZXF1ZXN0VVJMLmdldCgpKTsKICAgICAgICAgfQogICAgIH07Ci0gICAgaGFuZGxlLnNl
dENsaWVudChhZG9wdFJlZihuZXcgUXVpY2tMb29rRG9jdW1lbnRXcml0ZXIoaGFuZGxlKSkpOwor
ICAgIGhhbmRsZS5zZXRDbGllbnQoYWRvcHRSZWYoKm5ldyBRdWlja0xvb2tEb2N1bWVudFdyaXRl
cihoYW5kbGUpKSk7CiB9CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMv
V2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dC5oIGIvU291cmNlL1dlYktp
dC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dC5oCmluZGV4IGIw
OGQ1NmUxOGM5YzhlZTY0MTgwYTIxNGY1ZmJiMGVkZTA0ZjVhNGQuLjk3ZTBlYWQ5ZjA4YjdmMzYx
Mjc4YTNkNzU2ZDYyOGE1ZmFlYWE5MTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dl
YkNvcmVTdXBwb3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0LmgKQEAgLTIz
LDE2ICsyMywxNSBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAK
LSNpZm5kZWYgV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dF9oCi0jZGVmaW5lIFdlYkZyYW1lTmV0
d29ya2luZ0NvbnRleHRfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxXZWJDb3JlL0ZyYW1l
TmV0d29ya2luZ0NvbnRleHQuaD4KIAogY2xhc3MgV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dCA6
IHB1YmxpYyBXZWJDb3JlOjpGcmFtZU5ldHdvcmtpbmdDb250ZXh0IHsKIHB1YmxpYzoKLSAgICBz
dGF0aWMgUGFzc1JlZlB0cjxXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBjcmVhdGUoV2ViQ29y
ZTo6RnJhbWUqIGZyYW1lKQorICAgIHN0YXRpYyBSZWY8V2ViRnJhbWVOZXR3b3JraW5nQ29udGV4
dD4gY3JlYXRlKFdlYkNvcmU6OkZyYW1lKiBmcmFtZSkKICAgICB7Ci0gICAgICAgIHJldHVybiBh
ZG9wdFJlZihuZXcgV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dChmcmFtZSkpOworICAgICAgICBy
ZXR1cm4gYWRvcHRSZWYoKm5ldyBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0KGZyYW1lKSk7CiAg
ICAgfQogCiAgICAgc3RhdGljIFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgZW5zdXJl
UHJpdmF0ZUJyb3dzaW5nU2Vzc2lvbigpOwpAQCAtNTEsNyArNTAsNCBAQCBwcml2YXRlOgogICAg
IFN0cmluZyBzb3VyY2VBcHBsaWNhdGlvbklkZW50aWZpZXIoKSBjb25zdCBvdmVycmlkZTsKICAg
ICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGJsb2NrZWRFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmKSBjb25zdCBvdmVycmlkZTsKICAgICBXZWJDb3JlOjpOZXR3b3JrU3RvcmFn
ZVNlc3Npb24mIHN0b3JhZ2VTZXNzaW9uKCkgY29uc3Qgb3ZlcnJpZGU7Ci0KIH07Ci0KLSNlbmRp
ZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVO
ZXR3b3JraW5nQ29udGV4dC5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dl
YkZyYW1lTmV0d29ya2luZ0NvbnRleHQubW0KaW5kZXggOTNlNzRiYmU2Mjg0YjYzYzIzMjEyOWQx
NzQ4ZTBkOTE2MmQxYTE5Yy4uZWVmNzAyYzU2ZmQwZWQ2N2QzNzBmMzRhNjY5OWUyNTM2NzJkODA0
YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVO
ZXR3b3JraW5nQ29udGV4dC5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9y
dC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0Lm1tCkBAIC00NywxNiArNDcsMTMgQEAgdXNpbmcg
bmFtZXNwYWNlIFdlYkNvcmU7CiBOZXR3b3JrU3RvcmFnZVNlc3Npb24mIFdlYkZyYW1lTmV0d29y
a2luZ0NvbnRleHQ6OmVuc3VyZVByaXZhdGVCcm93c2luZ1Nlc3Npb24oKQogewogICAgIEFTU0VS
VChpc01haW5UaHJlYWQoKSk7Ci0KICAgICBOZXR3b3JrU3RvcmFnZVNlc3Npb246OmVuc3VyZVBy
aXZhdGVCcm93c2luZ1Nlc3Npb24oU2Vzc2lvbklEOjpsZWdhY3lQcml2YXRlU2Vzc2lvbklEKCks
IFtbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0pOwotCiAgICAgcmV0dXJu
ICpOZXR3b3JrU3RvcmFnZVNlc3Npb246OnN0b3JhZ2VTZXNzaW9uKFNlc3Npb25JRDo6bGVnYWN5
UHJpdmF0ZVNlc3Npb25JRCgpKTsKIH0KIAogdm9pZCBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0
OjpkZXN0cm95UHJpdmF0ZUJyb3dzaW5nU2Vzc2lvbigpCiB7CiAgICAgQVNTRVJUKGlzTWFpblRo
cmVhZCgpKTsKLQogICAgIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6ZGVzdHJveVNlc3Npb24oU2Vz
c2lvbklEOjpsZWdhY3lQcml2YXRlU2Vzc2lvbklEKCkpOwogfQogCkBAIC02OCwxOSArNjUsMTkg
QEAgYm9vbCBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0Ojpsb2NhbEZpbGVDb250ZW50U25pZmZp
bmdFbmFibGVkKCkgY29uc3QKIFNjaGVkdWxlUGFpckhhc2hTZXQqIFdlYkZyYW1lTmV0d29ya2lu
Z0NvbnRleHQ6OnNjaGVkdWxlZFJ1bkxvb3BQYWlycygpIGNvbnN0CiB7CiAgICAgaWYgKCFmcmFt
ZSgpIHx8ICFmcmFtZSgpLT5wYWdlKCkpCi0gICAgICAgIHJldHVybiAwOworICAgICAgICByZXR1
cm4gbnVsbHB0cjsKICAgICByZXR1cm4gZnJhbWUoKS0+cGFnZSgpLT5zY2hlZHVsZWRSdW5Mb29w
UGFpcnMoKTsKIH0KIAogUmV0YWluUHRyPENGRGF0YVJlZj4gV2ViRnJhbWVOZXR3b3JraW5nQ29u
dGV4dDo6c291cmNlQXBwbGljYXRpb25BdWRpdERhdGEoKSBjb25zdAogewogICAgIGlmICghZnJh
bWUoKSB8fCAhZnJhbWUoKS0+cGFnZSgpKQotICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgcmV0
dXJuIG51bGxwdHI7CiAgICAgCiAgICAgV2ViVmlldyAqd2VidmlldyA9IGtpdChmcmFtZSgpLT5w
YWdlKCkpOwotICAgIAogICAgIGlmICghd2VidmlldykKLSAgICAgICAgcmV0dXJuIDA7CisgICAg
ICAgIHJldHVybiBudWxscHRyOworCiAgICAgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8Q0ZEYXRh
UmVmPih3ZWJ2aWV3Ll9zb3VyY2VBcHBsaWNhdGlvbkF1ZGl0RGF0YSk7CiB9CiAKQEAgLTk4LDcg
Kzk1LDcgQEAgTmV0d29ya1N0b3JhZ2VTZXNzaW9uJiBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0
OjpzdG9yYWdlU2Vzc2lvbigpIGNvbnN0CiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsK
ICAgICBpZiAoZnJhbWUoKSAmJiBmcmFtZSgpLT5wYWdlKCktPnNlc3Npb25JRCgpLmlzRXBoZW1l
cmFsKCkpIHsKLSAgICAgICAgaWYgKE5ldHdvcmtTdG9yYWdlU2Vzc2lvbiogc2Vzc2lvbiA9IE5l
dHdvcmtTdG9yYWdlU2Vzc2lvbjo6c3RvcmFnZVNlc3Npb24oU2Vzc2lvbklEOjpsZWdhY3lQcml2
YXRlU2Vzc2lvbklEKCkpKQorICAgICAgICBpZiAoYXV0byogc2Vzc2lvbiA9IE5ldHdvcmtTdG9y
YWdlU2Vzc2lvbjo6c3RvcmFnZVNlc3Npb24oU2Vzc2lvbklEOjpsZWdhY3lQcml2YXRlU2Vzc2lv
bklEKCkpKQogICAgICAgICAgICAgcmV0dXJuICpzZXNzaW9uOwogICAgICAgICAvLyBTb21lIHJl
cXVlc3RzIG1heSBzdGlsbCBiZSBjb21pbmcgc2hvcnRseSBiZWZvcmUgV2ViQ29yZSB1cGRhdGVz
IHRoZSBzZXNzaW9uIElEIGFuZCBhZnRlciBXZWJLaXQgZGVzdHJveXMgdGhlIHByaXZhdGUgYnJv
d3Npbmcgc2Vzc2lvbi4KICAgICAgICAgTE9HX0VSUk9SKCJJbnZhbGlkIHNlc3Npb24gSUQuIFBs
ZWFzZSBmaWxlIGEgYnVnIHVubGVzcyB5b3UganVzdCBkaXNhYmxlZCBwcml2YXRlIGJyb3dzaW5n
LCBpbiB3aGljaCBjYXNlIGl0J3MgYW4gZXhwZWN0ZWQgcmFjZS4iKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVy
LmggYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJPcGVuUGFuZWxSZXN1bHRM
aXN0ZW5lci5oCmluZGV4IGFjYzYyY2FkNzQwMWM1NWRmYzc4MDg3YWVjOWZiYmI0YmFjYzI5NTIu
LjBlNDBhYTJlZDI1OTNkMTc1YzUwZDhkMDdhMjdhYjA2ZGUxZDFlNTYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVy
LmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViT3BlblBhbmVsUmVz
dWx0TGlzdGVuZXIuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDgg
QXBwbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOC0y
MDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbXBvcnQgIldlYlVJRGVsZWdh
dGUuaCIKLSNpbXBvcnQgPHd0Zi9Gb3J3YXJkLmg+CisjaW1wb3J0IDx3dGYvUmVmUHRyLmg+CiAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIGNsYXNzIEZpbGVDaG9vc2VyOwpAQCAtMzIsOSArMzIsOSBA
QCBjbGFzcyBGaWxlQ2hvb3NlcjsKIAogQGludGVyZmFjZSBXZWJPcGVuUGFuZWxSZXN1bHRMaXN0
ZW5lciA6IE5TT2JqZWN0IDxXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcj4KIHsKLSAgICBXZWJD
b3JlOjpGaWxlQ2hvb3NlciogX2Nob29zZXI7CisgICAgUmVmUHRyPFdlYkNvcmU6OkZpbGVDaG9v
c2VyPiBfY2hvb3NlcjsKIH0KIAotLSAoaWQpaW5pdFdpdGhDaG9vc2VyOihQYXNzUmVmUHRyPFdl
YkNvcmU6OkZpbGVDaG9vc2VyPiljaG9vc2VyOworLSAoaWQpaW5pdFdpdGhDaG9vc2VyOihXZWJD
b3JlOjpGaWxlQ2hvb3NlciYpY2hvb3NlcjsKIAogQGVuZApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIubW0gYi9T
b3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5l
ci5tbQppbmRleCBiNmJkMjY3YmRlZDgxYTdiNGY4N2ZkOGNmM2NkZDAwYWM0MTJhOGVhLi44YjI1
MjA5MDcwM2FlNDdkN2JiYWZhYTY1YjMyNmZlZWZjYzMwNDdiIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lci5tbQor
KysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJPcGVuUGFuZWxSZXN1bHRM
aXN0ZW5lci5tbQpAQCAtMzYsMzAgKzM2LDE4IEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwog
CiBAaW1wbGVtZW50YXRpb24gV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIKIAotLSAoaWQpaW5p
dFdpdGhDaG9vc2VyOihQYXNzUmVmUHRyPEZpbGVDaG9vc2VyPiljaG9vc2VyCistIChpZClpbml0
V2l0aENob29zZXI6KEZpbGVDaG9vc2VyJiljaG9vc2VyCiB7CiAgICAgc2VsZiA9IFtzdXBlciBp
bml0XTsKICAgICBpZiAoIXNlbGYpCiAgICAgICAgIHJldHVybiBuaWw7Ci0gICAgX2Nob29zZXIg
PSBjaG9vc2VyLmxlYWtSZWYoKTsKKyAgICBfY2hvb3NlciA9ICZjaG9vc2VyOwogICAgIHJldHVy
biBzZWxmOwogfQogCi0jaWZuZGVmIE5ERUJVRwotLSAodm9pZClkZWFsbG9jCi17Ci0gICAgQVNT
RVJUKCFfY2hvb3Nlcik7Ci0gICAgW3N1cGVyIGRlYWxsb2NdOwotfQotI2VuZGlmCi0KIC0gKHZv
aWQpY2FuY2VsCiB7Ci0gICAgQVNTRVJUKF9jaG9vc2VyKTsKLSAgICBpZiAoIV9jaG9vc2VyKQot
ICAgICAgICByZXR1cm47Ci0gICAgX2Nob29zZXItPmRlcmVmKCk7Ci0gICAgX2Nob29zZXIgPSAw
OworICAgIF9jaG9vc2VyID0gbnVsbHB0cjsKIH0KIAogLSAodm9pZCljaG9vc2VGaWxlbmFtZToo
TlNTdHJpbmcgKilmaWxlbmFtZQpAQCAtNjgsOCArNTYsNyBAQCAtICh2b2lkKWNob29zZUZpbGVu
YW1lOihOU1N0cmluZyAqKWZpbGVuYW1lCiAgICAgaWYgKCFfY2hvb3NlcikKICAgICAgICAgcmV0
dXJuOwogICAgIF9jaG9vc2VyLT5jaG9vc2VGaWxlKGZpbGVuYW1lKTsKLSAgICBfY2hvb3Nlci0+
ZGVyZWYoKTsKLSAgICBfY2hvb3NlciA9IDA7CisgICAgX2Nob29zZXIgPSBudWxscHRyOwogfQog
CiAtICh2b2lkKWNob29zZUZpbGVuYW1lczooTlNBcnJheSAqKWZpbGVuYW1lcwpAQCAtODIsMTEg
KzY5LDExIEBAIC0gKHZvaWQpY2hvb3NlRmlsZW5hbWVzOihOU0FycmF5ICopZmlsZW5hbWVzCiAg
ICAgZm9yIChOU1VJbnRlZ2VyIGkgPSAwOyBpIDwgY291bnQ7IGkrKykKICAgICAgICAgbmFtZXNb
aV0gPSBbZmlsZW5hbWVzIG9iamVjdEF0SW5kZXg6aV07CiAgICAgX2Nob29zZXItPmNob29zZUZp
bGVzKG5hbWVzKTsKLSAgICBfY2hvb3Nlci0+ZGVyZWYoKTsKLSAgICBfY2hvb3NlciA9IDA7Cisg
ICAgX2Nob29zZXIgPSBudWxscHRyOwogfQogCiAjaWYgUExBVEZPUk0oSU9TKQorCiAtICh2b2lk
KWNob29zZUZpbGVuYW1lOihOU1N0cmluZyAqKWZpbGVuYW1lIGRpc3BsYXlTdHJpbmc6KE5TU3Ry
aW5nICopZGlzcGxheVN0cmluZyBpY29uSW1hZ2U6KENHSW1hZ2VSZWYpaW1hZ2VSZWYKIHsKICAg
ICBbc2VsZiBjaG9vc2VGaWxlbmFtZXM6W05TQXJyYXkgYXJyYXlXaXRoT2JqZWN0OmZpbGVuYW1l
XSBkaXNwbGF5U3RyaW5nOmRpc3BsYXlTdHJpbmcgaWNvbkltYWdlOmltYWdlUmVmXTsKQEAgLTk4
LDE4ICs4NSwxNCBAQCAtICh2b2lkKWNob29zZUZpbGVuYW1lczooTlNBcnJheSAqKWZpbGVuYW1l
cyBkaXNwbGF5U3RyaW5nOihOU1N0cmluZyAqKWRpc3BsYXlTdAogICAgIGlmICghX2Nob29zZXIp
CiAgICAgICAgIHJldHVybjsKIAotICAgIFJlZlB0cjxJY29uPiBpY29uID0gSWNvbjo6Y3JlYXRl
SWNvbkZvckltYWdlKGltYWdlUmVmKTsKLQotICAgIE5TVUludGVnZXIgY291bnQgPSBbZmlsZW5h
bWVzIGNvdW50XTsKLSAgICBWZWN0b3I8U3RyaW5nPiBuYW1lcyhjb3VudCk7Ci0gICAgZm9yIChO
U1VJbnRlZ2VyIGkgPSAwOyBpIDwgY291bnQ7ICsraSkKLSAgICAgICAgbmFtZXNbaV0gPSBbZmls
ZW5hbWVzIG9iamVjdEF0SW5kZXg6aV07Ci0gICAgX2Nob29zZXItPmNob29zZU1lZGlhRmlsZXMo
bmFtZXMsIGRpc3BsYXlTdHJpbmcsIGljb24uZ2V0KCkpOwotICAgIAotICAgIC8vIEZJWE1FOiB3
ZSBzaG91bGRuJ3QgYmUgbWFudWFsbHkgZGVyZWYoKSdpbmcgaGVyZS4KLSAgICBfY2hvb3Nlci0+
ZGVyZWYoKTsKKyAgICBWZWN0b3I8U3RyaW5nPiBuYW1lczsKKyAgICBuYW1lcy5yZXNlcnZlSW5p
dGlhbENhcGFjaXR5KFtmaWxlbmFtZXMgY291bnRdKTsKKyAgICBmb3IgKE5TU3RyaW5nICpmaWxl
bmFtZSBpbiBmaWxlbmFtZXMpCisgICAgICAgIG5hbWVzLnVuY2hlY2tlZEFwcGVuZChmaWxlbmFt
ZSk7CisgICAgX2Nob29zZXItPmNob29zZU1lZGlhRmlsZXMobmFtZXMsIGRpc3BsYXlTdHJpbmcs
IEljb246OmNyZWF0ZUljb25Gb3JJbWFnZShpbWFnZVJlZikuZ2V0KCkpOwogICAgIF9jaG9vc2Vy
ID0gbnVsbHB0cjsKIH0KKwogI2VuZGlmCiAKIEBlbmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvbWFjL1dlYlZpZXcvV2ViQXJjaGl2ZS5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcv
V2ViQXJjaGl2ZS5tbQppbmRleCBlOTZjNjA3Y2ZiODRjODVhMWViZmFhYmRjMzFjZWJhMDRlYTVj
M2U4Li5mZjc1NDZkODVmOGE1NWE1OWI4MGFhZjE3YjU0ZTcyZWE2MWY5Njc4IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkFyY2hpdmUubW0KKysrIGIvU291cmNlL1dl
YktpdC9tYWMvV2ViVmlldy9XZWJBcmNoaXZlLm1tCkBAIC0xNzQsMjUgKzE3NCwxNiBAQCAtIChp
bnN0YW5jZXR5cGUpaW5pdFdpdGhNYWluUmVzb3VyY2U6KFdlYlJlc291cmNlICopbWFpblJlc291
cmNlIHN1YnJlc291cmNlczooTgogICAgICAgICBbc2VsZiByZWxlYXNlXTsKICAgICAgICAgcmV0
dXJuIG5pbDsKICAgICB9Ci0gICAgCi0gICAgUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gY29yZU1h
aW5SZXNvdXJjZSA9IG1haW5SZXNvdXJjZSA/IFttYWluUmVzb3VyY2UgX2NvcmVSZXNvdXJjZV0g
OiBudWxscHRyOwogCi0gICAgVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+PiBjb3JlUmVz
b3VyY2VzOworICAgIFZlY3RvcjxSZWY8QXJjaGl2ZVJlc291cmNlPj4gY29yZVJlc291cmNlczsK
ICAgICBmb3IgKFdlYlJlc291cmNlICpzdWJyZXNvdXJjZSBpbiBzdWJyZXNvdXJjZXMpCiAgICAg
ICAgIGNvcmVSZXNvdXJjZXMuYXBwZW5kKFtzdWJyZXNvdXJjZSBfY29yZVJlc291cmNlXSk7CiAK
LSAgICBWZWN0b3I8UmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+PiBjb3JlQXJjaGl2ZXM7CisgICAg
VmVjdG9yPFJlZjxMZWdhY3lXZWJBcmNoaXZlPj4gY29yZUFyY2hpdmVzOwogICAgIGZvciAoV2Vi
QXJjaGl2ZSAqc3ViZnJhbWVBcmNoaXZlIGluIHN1YmZyYW1lQXJjaGl2ZXMpCi0gICAgICAgIGNv
cmVBcmNoaXZlcy5hcHBlbmQoW3N1YmZyYW1lQXJjaGl2ZS0+X3ByaXZhdGUgY29yZUFyY2hpdmVd
KTsKLQotICAgIGF1dG8gY29yZUFyY2hpdmUgPSBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoV1RG
TW92ZShjb3JlTWFpblJlc291cmNlKSwgV1RGTW92ZShjb3JlUmVzb3VyY2VzKSwgV1RGTW92ZShj
b3JlQXJjaGl2ZXMpKTsKLSAgICBpZiAoIWNvcmVBcmNoaXZlKSB7Ci0gICAgICAgIFtzZWxmIHJl
bGVhc2VdOwotICAgICAgICByZXR1cm4gbmlsOwotICAgIH0KLQotICAgIFtfcHJpdmF0ZSBzZXRD
b3JlQXJjaGl2ZTpXVEZNb3ZlKGNvcmVBcmNoaXZlKV07CisgICAgICAgIGNvcmVBcmNoaXZlcy5h
cHBlbmQoKltzdWJmcmFtZUFyY2hpdmUtPl9wcml2YXRlIGNvcmVBcmNoaXZlXSk7CiAKKyAgICBb
X3ByaXZhdGUgc2V0Q29yZUFyY2hpdmU6TGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFttYWluUmVz
b3VyY2UgX2NvcmVSZXNvdXJjZV0sIFdURk1vdmUoY29yZVJlc291cmNlcyksIFdURk1vdmUoY29y
ZUFyY2hpdmVzKSldOwogICAgIHJldHVybiBzZWxmOwogfQogCkBAIC0yNzUsOSArMjY2LDEwIEBA
IC0gKFdlYlJlc291cmNlICopbWFpblJlc291cmNlCiAgICAgLy8gQ3VycmVudGx5IGZyb20gV2Vi
S2l0IEFQSSBwZXJzcGVjdGl2ZSwgV2ViQXJjaGl2ZXMgYXJlIGVudGlyZWx5IGltbXV0YWJsZSBv
bmNlIGNyZWF0ZWQKICAgICAvLyBJZiB0aGV5IGV2ZXIgYmVjb21lIG11dGFibGUsIHdlJ2xsIG5l
ZWQgdG8gcmV0aGluayB0aGlzLiAKICAgICBpZiAoIV9wcml2YXRlLT5jYWNoZWRNYWluUmVzb3Vy
Y2UpIHsKLSAgICAgICAgTGVnYWN5V2ViQXJjaGl2ZSogY29yZUFyY2hpdmUgPSBbX3ByaXZhdGUg
Y29yZUFyY2hpdmVdOwotICAgICAgICBpZiAoY29yZUFyY2hpdmUpCi0gICAgICAgICAgICBfcHJp
dmF0ZS0+Y2FjaGVkTWFpblJlc291cmNlID0gW1tXZWJSZXNvdXJjZSBhbGxvY10gX2luaXRXaXRo
Q29yZVJlc291cmNlOmNvcmVBcmNoaXZlLT5tYWluUmVzb3VyY2UoKV07CisgICAgICAgIGlmIChh
dXRvKiBjb3JlQXJjaGl2ZSA9IFtfcHJpdmF0ZSBjb3JlQXJjaGl2ZV0pIHsKKyAgICAgICAgICAg
IGlmIChhdXRvKiBtYWluUmVzb3VyY2UgPSBjb3JlQXJjaGl2ZS0+bWFpblJlc291cmNlKCkpCisg
ICAgICAgICAgICAgICAgX3ByaXZhdGUtPmNhY2hlZE1haW5SZXNvdXJjZSA9IFtbV2ViUmVzb3Vy
Y2UgYWxsb2NdIF9pbml0V2l0aENvcmVSZXNvdXJjZToqbWFpblJlc291cmNlXTsKKyAgICAgICAg
fQogICAgIH0KICAgICAKICAgICByZXR1cm4gW1tfcHJpdmF0ZS0+Y2FjaGVkTWFpblJlc291cmNl
IHJldGFpbl0gYXV0b3JlbGVhc2VdOwpAQCAtMjk0LDEyICsyODYsMTEgQEAgLSAoTlNBcnJheSAq
KXN1YnJlc291cmNlcwogICAgICAgICBpZiAoIWNvcmVBcmNoaXZlKQogICAgICAgICAgICAgX3By
aXZhdGUtPmNhY2hlZFN1YnJlc291cmNlcyA9IFtbTlNBcnJheSBhbGxvY10gaW5pdF07CiAgICAg
ICAgIGVsc2UgewotICAgICAgICAgICAgY29uc3QgVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3Vy
Y2U+PiYgc3VicmVzb3VyY2VzKGNvcmVBcmNoaXZlLT5zdWJyZXNvdXJjZXMoKSk7CisgICAgICAg
ICAgICBhdXRvJiBzdWJyZXNvdXJjZXMgPSBjb3JlQXJjaGl2ZS0+c3VicmVzb3VyY2VzKCk7CiAg
ICAgICAgICAgICBOU011dGFibGVBcnJheSAqbXV0YWJsZUFycmF5ID0gW1tOU011dGFibGVBcnJh
eSBhbGxvY10gaW5pdFdpdGhDYXBhY2l0eTpzdWJyZXNvdXJjZXMuc2l6ZSgpXTsKICAgICAgICAg
ICAgIF9wcml2YXRlLT5jYWNoZWRTdWJyZXNvdXJjZXMgPSBtdXRhYmxlQXJyYXk7Ci0gICAgICAg
ICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgc3VicmVzb3VyY2VzLnNpemUoKTsgKytpKSB7
Ci0gICAgICAgICAgICAgICAgV2ViUmVzb3VyY2UgKnJlc291cmNlID0gW1tXZWJSZXNvdXJjZSBh
bGxvY10gX2luaXRXaXRoQ29yZVJlc291cmNlOnN1YnJlc291cmNlc1tpXS5nZXQoKV07Ci0gICAg
ICAgICAgICAgICAgaWYgKHJlc291cmNlKSB7CisgICAgICAgICAgICBmb3IgKGF1dG8mIHN1YnJl
c291cmNlIDogc3VicmVzb3VyY2VzKSB7CisgICAgICAgICAgICAgICAgaWYgKFdlYlJlc291cmNl
ICpyZXNvdXJjZSA9IFtbV2ViUmVzb3VyY2UgYWxsb2NdIF9pbml0V2l0aENvcmVSZXNvdXJjZTpz
dWJyZXNvdXJjZS5nZXQoKV0pIHsKICAgICAgICAgICAgICAgICAgICAgW211dGFibGVBcnJheSBh
ZGRPYmplY3Q6cmVzb3VyY2VdOwogICAgICAgICAgICAgICAgICAgICBbcmVzb3VyY2UgcmVsZWFz
ZV07CiAgICAgICAgICAgICAgICAgfQpAQCAtMzE4LDE1ICszMDksMTUgQEAgLSAoTlNBcnJheSAq
KXN1YmZyYW1lQXJjaGl2ZXMKICAgICAvLyBDdXJyZW50bHkgZnJvbSBXZWJLaXQgQVBJIHBlcnNw
ZWN0aXZlLCBXZWJBcmNoaXZlcyBhcmUgZW50aXJlbHkgaW1tdXRhYmxlIG9uY2UgY3JlYXRlZAog
ICAgIC8vIElmIHRoZXkgZXZlciBiZWNvbWUgbXV0YWJsZSwgd2UnbGwgbmVlZCB0byByZXRoaW5r
IHRoaXMuICAKICAgICBpZiAoIV9wcml2YXRlLT5jYWNoZWRTdWJmcmFtZUFyY2hpdmVzKSB7Ci0g
ICAgICAgIExlZ2FjeVdlYkFyY2hpdmUqIGNvcmVBcmNoaXZlID0gW19wcml2YXRlIGNvcmVBcmNo
aXZlXTsKKyAgICAgICAgYXV0byogY29yZUFyY2hpdmUgPSBbX3ByaXZhdGUgY29yZUFyY2hpdmVd
OwogICAgICAgICBpZiAoIWNvcmVBcmNoaXZlKQogICAgICAgICAgICAgX3ByaXZhdGUtPmNhY2hl
ZFN1YmZyYW1lQXJjaGl2ZXMgPSBbW05TQXJyYXkgYWxsb2NdIGluaXRdOwogICAgICAgICBlbHNl
IHsKLSAgICAgICAgICAgIGNvbnN0IFZlY3RvcjxSZWZQdHI8QXJjaGl2ZT4+JiBzdWJmcmFtZUFy
Y2hpdmVzKGNvcmVBcmNoaXZlLT5zdWJmcmFtZUFyY2hpdmVzKCkpOwotICAgICAgICAgICAgTlNN
dXRhYmxlQXJyYXkgKm11dGFibGVBcnJheSA9IFtbTlNNdXRhYmxlQXJyYXkgYWxsb2NdIGluaXRX
aXRoQ2FwYWNpdHk6c3ViZnJhbWVBcmNoaXZlcy5zaXplKCldOworICAgICAgICAgICAgYXV0byYg
c3ViZnJhbWVBcmNoaXZlcyA9IGNvcmVBcmNoaXZlLT5zdWJmcmFtZUFyY2hpdmVzKCk7CisgICAg
ICAgICAgICBhdXRvIG11dGFibGVBcnJheSA9IFtbTlNNdXRhYmxlQXJyYXkgYWxsb2NdIGluaXRX
aXRoQ2FwYWNpdHk6c3ViZnJhbWVBcmNoaXZlcy5zaXplKCldOwogICAgICAgICAgICAgX3ByaXZh
dGUtPmNhY2hlZFN1YmZyYW1lQXJjaGl2ZXMgPSBtdXRhYmxlQXJyYXk7CiAgICAgICAgICAgICBm
b3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgc3ViZnJhbWVBcmNoaXZlcy5zaXplKCk7ICsraSkgewot
ICAgICAgICAgICAgICAgIFdlYkFyY2hpdmUgKmFyY2hpdmUgPSBbW1dlYkFyY2hpdmUgYWxsb2Nd
IF9pbml0V2l0aENvcmVMZWdhY3lXZWJBcmNoaXZlOihMZWdhY3lXZWJBcmNoaXZlICopc3ViZnJh
bWVBcmNoaXZlc1tpXS5nZXQoKV07CisgICAgICAgICAgICAgICAgV2ViQXJjaGl2ZSAqYXJjaGl2
ZSA9IFtbV2ViQXJjaGl2ZSBhbGxvY10gX2luaXRXaXRoQ29yZUxlZ2FjeVdlYkFyY2hpdmU6KExl
Z2FjeVdlYkFyY2hpdmUgKilzdWJmcmFtZUFyY2hpdmVzW2ldLnB0cigpXTsKICAgICAgICAgICAg
ICAgICBbbXV0YWJsZUFycmF5IGFkZE9iamVjdDphcmNoaXZlXTsKICAgICAgICAgICAgICAgICBb
YXJjaGl2ZSByZWxlYXNlXTsKICAgICAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvbWFjL1dlYlZpZXcvV2ViRGF0YVNvdXJjZS5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZp
ZXcvV2ViRGF0YVNvdXJjZS5tbQppbmRleCA2MDY0NzIyYTU2MzYxNDg1ODQyY2Y1N2ZkOTMwZjc1
NTg4ZDZlOGY2Li4xOGNmOWY3ZGI0YzYzODc4NDcxNzA4OTI4YmFiODk1OGE0NzkyNzAxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkRhdGFTb3VyY2UubW0KKysrIGIv
U291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJEYXRhU291cmNlLm1tCkBAIC0xNjYsMjUgKzE2
NiwyMiBAQCAtIChOU0Vycm9yICopX21haW5Eb2N1bWVudEVycm9yCiAKIC0gKHZvaWQpX2FkZFN1
YmZyYW1lQXJjaGl2ZXM6KE5TQXJyYXkgKilzdWJmcmFtZUFyY2hpdmVzCiB7Ci0gICAgLy8gRklY
TUU6IFRoaXMgU1BJIGlzIHBvb3IsIHBvb3IgZGVzaWduLiAgQ2FuIHdlIGNvbWUgdXAgd2l0aCBh
bm90aGVyIHNvbHV0aW9uIGZvciB0aG9zZSB3aG8gbmVlZCBpdD8KLSAgICBOU0VudW1lcmF0b3Ig
KmVudW1lcmF0b3IgPSBbc3ViZnJhbWVBcmNoaXZlcyBvYmplY3RFbnVtZXJhdG9yXTsKLSAgICBX
ZWJBcmNoaXZlICphcmNoaXZlOwotICAgIHdoaWxlICgoYXJjaGl2ZSA9IFtlbnVtZXJhdG9yIG5l
eHRPYmplY3RdKSAhPSBuaWwpCi0gICAgICAgIHRvUHJpdmF0ZShfcHJpdmF0ZSktPmxvYWRlci0+
YWRkQWxsQXJjaGl2ZVJlc291cmNlcyhbYXJjaGl2ZSBfY29yZUxlZ2FjeVdlYkFyY2hpdmVdKTsK
KyAgICAvLyBGSVhNRTogVGhpcyBTUEkgaXMgcG9vciwgcG9vciBkZXNpZ24uIENhbiB3ZSBjb21l
IHVwIHdpdGggYW5vdGhlciBzb2x1dGlvbiBmb3IgdGhvc2Ugd2hvIG5lZWQgaXQ/CisgICAgZm9y
IChXZWJBcmNoaXZlICphcmNoaXZlIGluIHN1YmZyYW1lQXJjaGl2ZXMpCisgICAgICAgIHRvUHJp
dmF0ZShfcHJpdmF0ZSktPmxvYWRlci0+YWRkQWxsQXJjaGl2ZVJlc291cmNlcygqW2FyY2hpdmUg
X2NvcmVMZWdhY3lXZWJBcmNoaXZlXSk7CiB9CiAKICNpZiAhUExBVEZPUk0oSU9TKQorCiAtIChO
U0ZpbGVXcmFwcGVyICopX2ZpbGVXcmFwcGVyRm9yVVJMOihOU1VSTCAqKVVSTAogewogICAgIGlm
IChbVVJMIGlzRmlsZVVSTF0pCiAgICAgICAgIHJldHVybiBbW1tOU0ZpbGVXcmFwcGVyIGFsbG9j
XSBpbml0V2l0aFVSTDpbVVJMIFVSTEJ5UmVzb2x2aW5nU3ltbGlua3NJblBhdGhdIG9wdGlvbnM6
MCBlcnJvcjpudWxscHRyXSBhdXRvcmVsZWFzZV07CiAKLSAgICBXZWJSZXNvdXJjZSAqcmVzb3Vy
Y2UgPSBbc2VsZiBzdWJyZXNvdXJjZUZvclVSTDpVUkxdOwotICAgIGlmIChyZXNvdXJjZSkKKyAg
ICBpZiAoYXV0byByZXNvdXJjZSA9IFtzZWxmIHN1YnJlc291cmNlRm9yVVJMOlVSTF0pCiAgICAg
ICAgIHJldHVybiBbcmVzb3VyY2UgX2ZpbGVXcmFwcGVyUmVwcmVzZW50YXRpb25dOwotICAgIAot
ICAgIE5TQ2FjaGVkVVJMUmVzcG9uc2UgKmNhY2hlZFJlc3BvbnNlID0gW1tzZWxmIF93ZWJWaWV3
XSBfY2FjaGVkUmVzcG9uc2VGb3JVUkw6VVJMXTsKLSAgICBpZiAoY2FjaGVkUmVzcG9uc2UpIHsK
KworICAgIGlmIChhdXRvIGNhY2hlZFJlc3BvbnNlID0gW1tzZWxmIF93ZWJWaWV3XSBfY2FjaGVk
UmVzcG9uc2VGb3JVUkw6VVJMXSkgewogICAgICAgICBOU0ZpbGVXcmFwcGVyICp3cmFwcGVyID0g
W1tbTlNGaWxlV3JhcHBlciBhbGxvY10gaW5pdFJlZ3VsYXJGaWxlV2l0aENvbnRlbnRzOltjYWNo
ZWRSZXNwb25zZSBkYXRhXV0gYXV0b3JlbGVhc2VdOwogICAgICAgICBbd3JhcHBlciBzZXRQcmVm
ZXJyZWRGaWxlbmFtZTpbW2NhY2hlZFJlc3BvbnNlIHJlc3BvbnNlXSBzdWdnZXN0ZWRGaWxlbmFt
ZV1dOwogICAgICAgICByZXR1cm4gd3JhcHBlcjsKQEAgLTE5Miw2ICsxODksNyBAQCAtIChOU0Zp
bGVXcmFwcGVyICopX2ZpbGVXcmFwcGVyRm9yVVJMOihOU1VSTCAqKVVSTAogICAgIAogICAgIHJl
dHVybiBuaWw7CiB9CisKICNlbmRpZgogCiAtIChOU1N0cmluZyAqKV9yZXNwb25zZU1JTUVUeXBl
CkBAIC0zMDUsOSArMzAzLDEwIEBAIC0gKERPTURvY3VtZW50RnJhZ21lbnQgKilfZG9jdW1lbnRG
cmFnbWVudFdpdGhBcmNoaXZlOihXZWJBcmNoaXZlICopYXJjaGl2ZQogICAgICAgICBOU1N0cmlu
ZyAqTUlNRVR5cGUgPSBbbWFpblJlc291cmNlIE1JTUVUeXBlXTsKICAgICAgICAgaWYgKFtXZWJW
aWV3IGNhblNob3dNSU1FVHlwZUFzSFRNTDpNSU1FVHlwZV0pIHsKICAgICAgICAgICAgIE5TU3Ry
aW5nICptYXJrdXBTdHJpbmcgPSBbW05TU3RyaW5nIGFsbG9jXSBpbml0V2l0aERhdGE6W21haW5S
ZXNvdXJjZSBkYXRhXSBlbmNvZGluZzpOU1VURjhTdHJpbmdFbmNvZGluZ107CisKICAgICAgICAg
ICAgIC8vIEZJWE1FOiBzZWVtcyBwb29yIGZvcm0gdG8gZG8gdGhpcyBhcyBhIHNpZGUgZWZmZWN0
IG9mIGdldHRpbmcgYSBkb2N1bWVudCBmcmFnbWVudAogICAgICAgICAgICAgaWYgKHRvUHJpdmF0
ZShfcHJpdmF0ZSktPmxvYWRlcikKLSAgICAgICAgICAgICAgICB0b1ByaXZhdGUoX3ByaXZhdGUp
LT5sb2FkZXItPmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoW2FyY2hpdmUgX2NvcmVMZWdhY3lXZWJB
cmNoaXZlXSk7CisgICAgICAgICAgICAgICAgdG9Qcml2YXRlKF9wcml2YXRlKS0+bG9hZGVyLT5h
ZGRBbGxBcmNoaXZlUmVzb3VyY2VzKCpbYXJjaGl2ZSBfY29yZUxlZ2FjeVdlYkFyY2hpdmVdKTsK
IAogICAgICAgICAgICAgRE9NRG9jdW1lbnRGcmFnbWVudCAqZnJhZ21lbnQgPSBbW3NlbGYgd2Vi
RnJhbWVdIF9kb2N1bWVudEZyYWdtZW50V2l0aE1hcmt1cFN0cmluZzptYXJrdXBTdHJpbmcgYmFz
ZVVSTFN0cmluZzpbW21haW5SZXNvdXJjZSBVUkxdIF93ZWJfb3JpZ2luYWxEYXRhQXNTdHJpbmdd
XTsKICAgICAgICAgICAgIFttYXJrdXBTdHJpbmcgcmVsZWFzZV07CkBAIC0zMjQsNyArMzIzLDcg
QEAgLSAoRE9NRG9jdW1lbnRGcmFnbWVudCAqKV9kb2N1bWVudEZyYWdtZW50V2l0aEltYWdlUmVz
b3VyY2U6KFdlYlJlc291cmNlICopcmVzb3UKIHsKICAgICBET01FbGVtZW50ICppbWFnZUVsZW1l
bnQgPSBbc2VsZiBfaW1hZ2VFbGVtZW50V2l0aEltYWdlUmVzb3VyY2U6cmVzb3VyY2VdOwogICAg
IGlmICghaW1hZ2VFbGVtZW50KQotICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgcmV0dXJuIG5p
bDsKICAgICBET01Eb2N1bWVudEZyYWdtZW50ICpmcmFnbWVudCA9IFtbW3NlbGYgd2ViRnJhbWVd
IERPTURvY3VtZW50XSBjcmVhdGVEb2N1bWVudEZyYWdtZW50XTsKICAgICBbZnJhZ21lbnQgYXBw
ZW5kQ2hpbGQ6aW1hZ2VFbGVtZW50XTsKICAgICByZXR1cm4gZnJhZ21lbnQ7CkBAIC01MTksMzIg
KzUxOCwzMSBAQCAtIChXZWJBcmNoaXZlICopd2ViQXJjaGl2ZQogLSAoV2ViUmVzb3VyY2UgKilt
YWluUmVzb3VyY2UKIHsKICAgICBhdXRvIGNvcmVSZXNvdXJjZSA9IHRvUHJpdmF0ZShfcHJpdmF0
ZSktPmxvYWRlci0+bWFpblJlc291cmNlKCk7Ci0gICAgcmV0dXJuIFtbW1dlYlJlc291cmNlIGFs
bG9jXSBfaW5pdFdpdGhDb3JlUmVzb3VyY2U6V1RGTW92ZShjb3JlUmVzb3VyY2UpXSBhdXRvcmVs
ZWFzZV07CisgICAgaWYgKCFjb3JlUmVzb3VyY2UpCisgICAgICAgIHJldHVybiBuaWw7CisgICAg
cmV0dXJuIFtbW1dlYlJlc291cmNlIGFsbG9jXSBfaW5pdFdpdGhDb3JlUmVzb3VyY2U6Y29yZVJl
c291cmNlLnJlbGVhc2VOb25OdWxsKCldIGF1dG9yZWxlYXNlXTsKIH0KIAogLSAoTlNBcnJheSAq
KXN1YnJlc291cmNlcwogewogICAgIGF1dG8gY29yZVN1YnJlc291cmNlcyA9IHRvUHJpdmF0ZShf
cHJpdmF0ZSktPmxvYWRlci0+c3VicmVzb3VyY2VzKCk7Ci0KICAgICBhdXRvIHN1YnJlc291cmNl
cyA9IGFkb3B0TlMoW1tOU011dGFibGVBcnJheSBhbGxvY10gaW5pdFdpdGhDYXBhY2l0eTpjb3Jl
U3VicmVzb3VyY2VzLnNpemUoKV0pOwotICAgIGZvciAoY29uc3QgYXV0byYgY29yZVN1YnJlc291
cmNlIDogY29yZVN1YnJlc291cmNlcykgewotICAgICAgICBpZiAoYXV0byByZXNvdXJjZSA9IGFk
b3B0TlMoW1tXZWJSZXNvdXJjZSBhbGxvY10gX2luaXRXaXRoQ29yZVJlc291cmNlOmNvcmVTdWJy
ZXNvdXJjZV0pKQorICAgIGZvciAoYXV0byYgY29yZVN1YnJlc291cmNlIDogY29yZVN1YnJlc291
cmNlcykgeworICAgICAgICBpZiAoYXV0byByZXNvdXJjZSA9IGFkb3B0TlMoW1tXZWJSZXNvdXJj
ZSBhbGxvY10gX2luaXRXaXRoQ29yZVJlc291cmNlOmNvcmVTdWJyZXNvdXJjZS5jb3B5UmVmKCld
KSkKICAgICAgICAgICAgIFtzdWJyZXNvdXJjZXMgYWRkT2JqZWN0OnJlc291cmNlLmdldCgpXTsK
ICAgICB9Ci0KICAgICByZXR1cm4gc3VicmVzb3VyY2VzLmF1dG9yZWxlYXNlKCk7CiB9CiAKIC0g
KFdlYlJlc291cmNlICopc3VicmVzb3VyY2VGb3JVUkw6KE5TVVJMICopVVJMCiB7Ci0gICAgUmVm
UHRyPEFyY2hpdmVSZXNvdXJjZT4gc3VicmVzb3VyY2UgPSB0b1ByaXZhdGUoX3ByaXZhdGUpLT5s
b2FkZXItPnN1YnJlc291cmNlKFVSTCk7Ci0gICAgCi0gICAgcmV0dXJuIHN1YnJlc291cmNlID8g
W1tbV2ViUmVzb3VyY2UgYWxsb2NdIF9pbml0V2l0aENvcmVSZXNvdXJjZTpzdWJyZXNvdXJjZS5n
ZXQoKV0gYXV0b3JlbGVhc2VdIDogbmlsOworICAgIGF1dG8gc3VicmVzb3VyY2UgPSB0b1ByaXZh
dGUoX3ByaXZhdGUpLT5sb2FkZXItPnN1YnJlc291cmNlKFVSTCk7CisgICAgcmV0dXJuIHN1YnJl
c291cmNlID8gW1tbV2ViUmVzb3VyY2UgYWxsb2NdIF9pbml0V2l0aENvcmVSZXNvdXJjZTpzdWJy
ZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpXSBhdXRvcmVsZWFzZV0gOiBuaWw7CiB9CiAKIC0gKHZv
aWQpYWRkU3VicmVzb3VyY2U6KFdlYlJlc291cmNlICopc3VicmVzb3VyY2UKIHsgICAgCi0gICAg
dG9Qcml2YXRlKF9wcml2YXRlKS0+bG9hZGVyLT5hZGRBcmNoaXZlUmVzb3VyY2UoKltzdWJyZXNv
dXJjZSBfY29yZVJlc291cmNlXSk7CisgICAgdG9Qcml2YXRlKF9wcml2YXRlKS0+bG9hZGVyLT5h
ZGRBcmNoaXZlUmVzb3VyY2UoW3N1YnJlc291cmNlIF9jb3JlUmVzb3VyY2VdKTsKIH0KIAogQGVu
ZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJSZXNvdXJjZS5tbSBi
L1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUmVzb3VyY2UubW0KaW5kZXggZTVkOGZkNGFm
YmQ0ZDJmYWM5Y2QzOTIxOTE2YTQ5YjhmMTczNWVmNi4uYjNiYjc1YmE5ZDE4ZGM2OTA4YWJlZTlj
MmRjYjA2NjViMTE0YWZiMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9X
ZWJSZXNvdXJjZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlJlc291cmNl
Lm1tCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNSwgMjAwNiwgMjAw
NywgMjAwOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMp
IDIwMDUtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKQEAgLTU3LDkgKzU3LDkgQEAgc3RhdGljIE5TU3RyaW5nICogY29u
c3QgV2ViUmVzb3VyY2VSZXNwb25zZUtleSA9ICAgICAgICAgIEAiV2ViUmVzb3VyY2VSZXNwb25z
ZSIKIAogQGludGVyZmFjZSBXZWJSZXNvdXJjZVByaXZhdGUgOiBOU09iamVjdCB7CiBAcHVibGlj
Ci0gICAgQXJjaGl2ZVJlc291cmNlKiBjb3JlUmVzb3VyY2U7CisgICAgUmVmUHRyPEFyY2hpdmVS
ZXNvdXJjZT4gY29yZVJlc291cmNlOwogfQotLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoQ29yZVJl
c291cmNlOihQYXNzUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4pY29yZVJlc291cmNlOworLSAoaW5z
dGFuY2V0eXBlKWluaXRXaXRoQ29yZVJlc291cmNlOihSZWY8QXJjaGl2ZVJlc291cmNlPiYmKWNv
cmVSZXNvdXJjZTsKIEBlbmQKIAogQGltcGxlbWVudGF0aW9uIFdlYlJlc291cmNlUHJpdmF0ZQpA
QCAtNzgsMTMgKzc4LDEyIEBAIC0gKGluc3RhbmNldHlwZSlpbml0CiAgICAgcmV0dXJuIFtzdXBl
ciBpbml0XTsKIH0KIAotLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoQ29yZVJlc291cmNlOihQYXNz
UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4pcGFzc2VkUmVzb3VyY2UKKy0gKGluc3RhbmNldHlwZSlp
bml0V2l0aENvcmVSZXNvdXJjZTooUmVmPEFyY2hpdmVSZXNvdXJjZT4mJilwYXNzZWRSZXNvdXJj
ZQogewogICAgIHNlbGYgPSBbc3VwZXIgaW5pdF07CiAgICAgaWYgKCFzZWxmKQogICAgICAgICBy
ZXR1cm4gbmlsOwotICAgIC8vIEFjcXVpcmUgdGhlIFBhc3NSZWZQdHI8PidzIHJlZiBhcyBvdXIg
b3duIG1hbnVhbCByZWYKLSAgICBjb3JlUmVzb3VyY2UgPSBwYXNzZWRSZXNvdXJjZS5sZWFrUmVm
KCk7CisgICAgY29yZVJlc291cmNlID0gV1RGTW92ZShwYXNzZWRSZXNvdXJjZSk7CiAgICAgcmV0
dXJuIHNlbGY7CiB9CiAKQEAgLTkyLDkgKzkxLDYgQEAgLSAodm9pZClkZWFsbG9jCiB7CiAgICAg
aWYgKFdlYkNvcmVPYmpDU2NoZWR1bGVEZWFsbG9jYXRlT25NYWluVGhyZWFkKFtXZWJSZXNvdXJj
ZVByaXZhdGUgY2xhc3NdLCBzZWxmKSkKICAgICAgICAgcmV0dXJuOwotCi0gICAgaWYgKGNvcmVS
ZXNvdXJjZSkKLSAgICAgICAgY29yZVJlc291cmNlLT5kZXJlZigpOwogICAgIFtzdXBlciBkZWFs
bG9jXTsKIH0KIApAQCAtMTUzLDE0ICsxNDksMTkgQEAgLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRo
Q29kZXI6KE5TQ29kZXIgKilkZWNvZGVyCiAgICAgICAgIHJldHVybiBuaWw7CiAgICAgfQogCi0g
ICAgX3ByaXZhdGUgPSBbW1dlYlJlc291cmNlUHJpdmF0ZSBhbGxvY10gaW5pdFdpdGhDb3JlUmVz
b3VyY2U6QXJjaGl2ZVJlc291cmNlOjpjcmVhdGUoU2hhcmVkQnVmZmVyOjp3cmFwTlNEYXRhKGRh
dGEpLCB1cmwsIG1pbWVUeXBlLCB0ZXh0RW5jb2RpbmcsIGZyYW1lTmFtZSwgcmVzcG9uc2UpXTsK
KyAgICBhdXRvIGNvcmVSZXNvdXJjZSA9IEFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKFNoYXJlZEJ1
ZmZlcjo6d3JhcE5TRGF0YShkYXRhKSwgdXJsLCBtaW1lVHlwZSwgdGV4dEVuY29kaW5nLCBmcmFt
ZU5hbWUsIHJlc3BvbnNlKTsKKyAgICBpZiAoIWNvcmVSZXNvdXJjZSkgeworICAgICAgICBbc2Vs
ZiByZWxlYXNlXTsKKyAgICAgICAgcmV0dXJuIG5pbDsKKyAgICB9CiAKKyAgICBfcHJpdmF0ZSA9
IFtbV2ViUmVzb3VyY2VQcml2YXRlIGFsbG9jXSBpbml0V2l0aENvcmVSZXNvdXJjZTpjb3JlUmVz
b3VyY2UucmVsZWFzZU5vbk51bGwoKV07CiAgICAgcmV0dXJuIHNlbGY7CiB9CiAKIC0gKHZvaWQp
ZW5jb2RlV2l0aENvZGVyOihOU0NvZGVyICopZW5jb2RlcgogewotICAgIEFyY2hpdmVSZXNvdXJj
ZSAqcmVzb3VyY2UgPSBfcHJpdmF0ZS0+Y29yZVJlc291cmNlOworICAgIGF1dG8qIHJlc291cmNl
ID0gX3ByaXZhdGUtPmNvcmVSZXNvdXJjZS5nZXQoKTsKICAgICAKICAgICBOU0RhdGEgKmRhdGEg
PSBuaWw7CiAgICAgTlNVUkwgKnVybCA9IG5pbDsKQEAgLTIwOSw4ICsyMTAsNyBAQCAtIChOU1VS
TCAqKVVSTAogCiAgICAgaWYgKCFfcHJpdmF0ZS0+Y29yZVJlc291cmNlKQogICAgICAgICByZXR1
cm4gbmlsOwotICAgIE5TVVJMICp1cmwgPSBfcHJpdmF0ZS0+Y29yZVJlc291cmNlLT51cmwoKTsK
LSAgICByZXR1cm4gdXJsOworICAgIHJldHVybiBfcHJpdmF0ZS0+Y29yZVJlc291cmNlLT51cmwo
KTsKIH0KIAogLSAoTlNTdHJpbmcgKilNSU1FVHlwZQpAQCAtMjUyLDIyICsyNTIsMTkgQEAgQGVu
ZAogCiBAaW1wbGVtZW50YXRpb24gV2ViUmVzb3VyY2UgKFdlYlJlc291cmNlSW50ZXJuYWwpCiAK
LS0gKGlkKV9pbml0V2l0aENvcmVSZXNvdXJjZTooUGFzc1JlZlB0cjxBcmNoaXZlUmVzb3VyY2U+
KWNvcmVSZXNvdXJjZQorLSAoaWQpX2luaXRXaXRoQ29yZVJlc291cmNlOihSZWY8QXJjaGl2ZVJl
c291cmNlPiYmKWNvcmVSZXNvdXJjZQogewogICAgIHNlbGYgPSBbc3VwZXIgaW5pdF07CiAgICAg
aWYgKCFzZWxmKQogICAgICAgICByZXR1cm4gbmlsOwotICAgICAgICAgICAgCi0gICAgQVNTRVJU
KGNvcmVSZXNvdXJjZSk7Ci0gICAgCi0gICAgX3ByaXZhdGUgPSBbW1dlYlJlc291cmNlUHJpdmF0
ZSBhbGxvY10gaW5pdFdpdGhDb3JlUmVzb3VyY2U6Y29yZVJlc291cmNlXTsKLSAgICAgICAgICAg
IAorCisgICAgX3ByaXZhdGUgPSBbW1dlYlJlc291cmNlUHJpdmF0ZSBhbGxvY10gaW5pdFdpdGhD
b3JlUmVzb3VyY2U6V1RGTW92ZShjb3JlUmVzb3VyY2UpXTsKICAgICByZXR1cm4gc2VsZjsKIH0K
IAotLSAoV2ViQ29yZTo6QXJjaGl2ZVJlc291cmNlICopX2NvcmVSZXNvdXJjZQorLSAoV2ViQ29y
ZTo6QXJjaGl2ZVJlc291cmNlJilfY29yZVJlc291cmNlCiB7Ci0gICAgcmV0dXJuIF9wcml2YXRl
LT5jb3JlUmVzb3VyY2U7CisgICAgcmV0dXJuICpfcHJpdmF0ZS0+Y29yZVJlc291cmNlOwogfQog
CiBAZW5kCkBAIC0zMDQsOCArMzAxLDEzIEBAIC0gKGlkKV9pbml0V2l0aERhdGE6KE5TRGF0YSAq
KWRhdGEKICAgICAgICAgcmV0dXJuIG5pbDsKICAgICB9CiAKLSAgICBfcHJpdmF0ZSA9IFtbV2Vi
UmVzb3VyY2VQcml2YXRlIGFsbG9jXSBpbml0V2l0aENvcmVSZXNvdXJjZTpBcmNoaXZlUmVzb3Vy
Y2U6OmNyZWF0ZShTaGFyZWRCdWZmZXI6OndyYXBOU0RhdGEoY29weURhdGEgPyBbW2RhdGEgY29w
eV0gYXV0b3JlbGVhc2VdIDogZGF0YSksIFVSTCwgTUlNRVR5cGUsIHRleHRFbmNvZGluZ05hbWUs
IGZyYW1lTmFtZSwgcmVzcG9uc2UpXTsKKyAgICBhdXRvIGNvcmVSZXNvdXJjZSA9IEFyY2hpdmVS
ZXNvdXJjZTo6Y3JlYXRlKFNoYXJlZEJ1ZmZlcjo6d3JhcE5TRGF0YShjb3B5RGF0YSA/IFtbZGF0
YSBjb3B5XSBhdXRvcmVsZWFzZV0gOiBkYXRhKSwgVVJMLCBNSU1FVHlwZSwgdGV4dEVuY29kaW5n
TmFtZSwgZnJhbWVOYW1lLCByZXNwb25zZSk7CisgICAgaWYgKCFjb3JlUmVzb3VyY2UpIHsKKyAg
ICAgICAgW3NlbGYgcmVsZWFzZV07CisgICAgICAgIHJldHVybiBuaWw7CisgICAgfQogCisgICAg
X3ByaXZhdGUgPSBbW1dlYlJlc291cmNlUHJpdmF0ZSBhbGxvY10gaW5pdFdpdGhDb3JlUmVzb3Vy
Y2U6Y29yZVJlc291cmNlLnJlbGVhc2VOb25OdWxsKCldOwogICAgIHJldHVybiBzZWxmOwogfQog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlJlc291cmNlSW50ZXJu
YWwuaCBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUmVzb3VyY2VJbnRlcm5hbC5oCmlu
ZGV4IDJmNDY5MTJlOGJlOGQzYjM5MmNmNTczOTJmMDc5ZGFiOWQ4MDllMjUuLjgwYzk3NmViNmIz
NjU0ZmMxYzY4OGMyYTk2YjgzYmRiN2FmNzcyNTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
bWFjL1dlYlZpZXcvV2ViUmVzb3VyY2VJbnRlcm5hbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFj
L1dlYlZpZXcvV2ViUmVzb3VyY2VJbnRlcm5hbC5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENv
cHlyaWdodCAoQykgMjAwOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5
cmlnaHQgKEMpIDIwMDgtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgog
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTI3LDEzICsyNywxMyBAQAogICovCiAKICNp
bXBvcnQgIldlYlJlc291cmNlUHJpdmF0ZS5oIgotI2ltcG9ydCA8d3RmL1Bhc3NSZWZQdHIuaD4K
KyNpbXBvcnQgPHd0Zi9SZWYuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIGNsYXNzIEFy
Y2hpdmVSZXNvdXJjZTsKIH0KIAogQGludGVyZmFjZSBXZWJSZXNvdXJjZSAoV2ViUmVzb3VyY2VJ
bnRlcm5hbCkKLS0gKGlkKV9pbml0V2l0aENvcmVSZXNvdXJjZTooUGFzc1JlZlB0cjxXZWJDb3Jl
OjpBcmNoaXZlUmVzb3VyY2U+KWNvcmVSZXNvdXJjZTsKLS0gKFdlYkNvcmU6OkFyY2hpdmVSZXNv
dXJjZSopX2NvcmVSZXNvdXJjZTsKKy0gKGlkKV9pbml0V2l0aENvcmVSZXNvdXJjZTooUmVmPFdl
YkNvcmU6OkFyY2hpdmVSZXNvdXJjZT4mJiljb3JlUmVzb3VyY2U7CistIChXZWJDb3JlOjpBcmNo
aXZlUmVzb3VyY2UmKV9jb3JlUmVzb3VyY2U7CiBAZW5kCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L3dpbi9QbHVnaW5zL1BsdWdpblZpZXcuY3BwIGIvU291cmNlL1dlYktpdC93aW4vUGx1Z2lu
cy9QbHVnaW5WaWV3LmNwcAppbmRleCA1ODNkMTkxNDM2NmJkNzQ3NmY4ZTI5N2Q1MDYzMTY4NzRh
YWE4MzI2Li42NWExY2E0N2FkZTRhOTU5MjYxYzQ1NGFhNzcxYzY1MDM0YjE1NmFjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9QbHVnaW5zL1BsdWdpblZpZXcuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQvd2luL1BsdWdpbnMvUGx1Z2luVmlldy5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgot
ICogQ29weXJpZ2h0IChDKSAyMDA2LCAyMDA3LCAyMDA4LCAyMDA5LCAyMDEwIEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNi0yMDE3IEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqIENvcHlyaWdodCAoQykgMjAwOCBDb2xsYWJvcmEg
THRkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICogQ29weXJpZ2h0IChDKSAyMDEwIEdpcmlzaCBS
YW1ha3Jpc2huYW4gPGdpcmlzaEBmb3J3YXJkYmlhcy5pbj4KICAqCkBAIC0zMSw2ICszMSw3IEBA
CiAjaW5jbHVkZSAiUGx1Z2luRGF0YWJhc2UuaCIKICNpbmNsdWRlICJQbHVnaW5EZWJ1Zy5oIgog
I2luY2x1ZGUgIlBsdWdpblBhY2thZ2UuaCIKKyNpbmNsdWRlICJXZWJGcmFtZUxvYWRlckNsaWVu
dC5oIgogI2luY2x1ZGUgPFdlYkNvcmUvQnJpZGdlSlNDLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9D
aHJvbWUuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0NvbW1vblZNLmg+CkBAIC0yNzUsNyArMjc2LDcg
QEAgdm9pZCBQbHVnaW5WaWV3OjptZWRpYUNhblN0YXJ0KERvY3VtZW50JikKIHsKICAgICBBU1NF
UlQoIW1faXNTdGFydGVkKTsKICAgICBpZiAoIXN0YXJ0KCkpCi0gICAgICAgIHBhcmVudEZyYW1l
KCktPmxvYWRlcigpLmNsaWVudCgpLmRpc3BhdGNoRGlkRmFpbFRvU3RhcnRQbHVnaW4odGhpcyk7
CisgICAgICAgIHN0YXRpY19jYXN0PFdlYkZyYW1lTG9hZGVyQ2xpZW50Jj4ocGFyZW50RnJhbWUo
KS0+bG9hZGVyKCkuY2xpZW50KCkpLmRpc3BhdGNoRGlkRmFpbFRvU3RhcnRQbHVnaW4odGhpcyk7
CiB9CiAKIFBsdWdpblZpZXc6On5QbHVnaW5WaWV3KCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0
L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwCmluZGV4IGYyNGU2MzM0NDVl
NDM1NWIzYjQyOGY5OTg3ZGM0MmY4MTJjMWJmZmMuLmEzOWQ1ODc1MWI2ZTRiZTgyOGY1ZGQ1MmVm
OGQ3YjAyNjUzN2MyZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBw
b3J0L1dlYkNocm9tZUNsaWVudC5jcHAKKysrIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1
cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcApAQCAtNjE4LDE1ICs2MTgsMTMgQEAgdm9pZCBXZWJD
aHJvbWVDbGllbnQ6OnJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoU2VjdXJpdHlP
cmlnaW4qLCBpbnQ2NF8KICAgICBub3RJbXBsZW1lbnRlZCgpOwogfQogCi12b2lkIFdlYkNocm9t
ZUNsaWVudDo6cnVuT3BlblBhbmVsKEZyYW1lKiwgUGFzc1JlZlB0cjxGaWxlQ2hvb3Nlcj4gcHJw
RmlsZUNob29zZXIpCit2b2lkIFdlYkNocm9tZUNsaWVudDo6cnVuT3BlblBhbmVsKEZyYW1lJiwg
RmlsZUNob29zZXImIGZpbGVDaG9vc2VyKQogewotICAgIFJlZlB0cjxGaWxlQ2hvb3Nlcj4gZmls
ZUNob29zZXIgPSBwcnBGaWxlQ2hvb3NlcjsKLQogICAgIEhXTkQgdmlld1dpbmRvdzsKICAgICBp
ZiAoRkFJTEVEKG1fd2ViVmlldy0+dmlld1dpbmRvdygmdmlld1dpbmRvdykpKQogICAgICAgICBy
ZXR1cm47CiAKLSAgICBib29sIG11bHRpRmlsZSA9IGZpbGVDaG9vc2VyLT5zZXR0aW5ncygpLmFs
bG93c011bHRpcGxlRmlsZXM7CisgICAgYm9vbCBtdWx0aUZpbGUgPSBmaWxlQ2hvb3Nlci5zZXR0
aW5ncygpLmFsbG93c011bHRpcGxlRmlsZXM7CiAgICAgVmVjdG9yPFdDSEFSPiBmaWxlQnVmKG11
bHRpRmlsZSA/IG1heEZpbGVQYXRoc0xpc3RTaXplIDogTUFYX1BBVEgpOwogCiAgICAgT1BFTkZJ
TEVOQU1FIG9mbjsKQEAgLTY3NSw3ICs2NzMsNyBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6cnVu
T3BlblBhbmVsKEZyYW1lKiwgUGFzc1JlZlB0cjxGaWxlQ2hvb3Nlcj4gcHJwRmlsZUNob29zZQog
ICAgICAgICB9IGVsc2UKICAgICAgICAgICAgIGZpbGVMaXN0LmFwcGVuZChmaWxlKTsKICAgICAg
ICAgQVNTRVJUKGZpbGVMaXN0LnNpemUoKSk7Ci0gICAgICAgIGZpbGVDaG9vc2VyLT5jaG9vc2VG
aWxlcyhmaWxlTGlzdCk7CisgICAgICAgIGZpbGVDaG9vc2VyLmNob29zZUZpbGVzKGZpbGVMaXN0
KTsKICAgICB9CiAgICAgLy8gRklYTUU6IFNob3cgc29tZSBzb3J0IG9mIGVycm9yIGlmIHRvbyBt
YW55IGZpbGVzIGFyZSBzZWxlY3RlZCBhbmQgdGhlIGJ1ZmZlciBpcyB0b28gc21hbGwuICBGb3Ig
bm93LCB0aGlzIHdpbGwgZmFpbCBzaWxlbnRseS4KIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oIGIvU291cmNlL1dlYktpdC93
aW4vV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmgKaW5kZXggNDkzZGUxNjIzMmNjZGI2
MWQ5YWQ4OTMzOGJhOTdjYTYyZTBiMjYyMi4uOTI4NzJiNDFjMTJmYjMxNWU1NDFlY2JkYjk1ZGJj
YjE1NjYyNzJkYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQv
V2ViQ2hyb21lQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQv
V2ViQ2hyb21lQ2xpZW50LmgKQEAgLTExNSw3ICsxMTUsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVh
bCB2b2lkIHJlYWNoZWRNYXhBcHBDYWNoZVNpemUoaW50NjRfdCBzcGFjZU5lZWRlZCk7CiAgICAg
dmlydHVhbCB2b2lkIHJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoV2ViQ29yZTo6
U2VjdXJpdHlPcmlnaW4qLCBpbnQ2NF90IHRvdGFsU3BhY2VOZWVkZWQpOwogCi0gICAgdmlydHVh
bCB2b2lkIHJ1bk9wZW5QYW5lbChXZWJDb3JlOjpGcmFtZSosIFBhc3NSZWZQdHI8V2ViQ29yZTo6
RmlsZUNob29zZXI+KTsKKyAgICB2aXJ0dWFsIHZvaWQgcnVuT3BlblBhbmVsKFdlYkNvcmU6OkZy
YW1lJiwgV2ViQ29yZTo6RmlsZUNob29zZXImKTsKICAgICB2aXJ0dWFsIHZvaWQgbG9hZEljb25G
b3JGaWxlcyhjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiwgV2ViQ29yZTo6RmlsZUljb25Mb2Fk
ZXImKTsKIAogICAgIHZpcnR1YWwgdm9pZCBzZXRDdXJzb3IoY29uc3QgV2ViQ29yZTo6Q3Vyc29y
Jik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0
b3JDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9y
Q2xpZW50LmNwcAppbmRleCBmYjIzNDI3ZDFiY2UwOTNiOTljMTBhY2NmOWI3ZDljN2ZlNzQ2OTU1
Li43MjQ0NTc4NDEzMGVmNWMzNTRhYTEwMDhjMDdhNjc4ZjE5NjdjMjIyIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5jcHAKQEAg
LTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMDcsIDIwMTEsIDIwMTQt
MjAxNSBBcHBsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAy
MDA2LTIwMTcgQXBwbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucwpAQCAtMzc0LDIyICszNzQsNiBAQCBib29sIFdlYkVkaXRvckNsaWVu
dDo6c2hvdWxkTW92ZVJhbmdlQWZ0ZXJEZWxldGUoUmFuZ2UqLCBSYW5nZSopCiAgICAgcmV0dXJu
IHRydWU7CiB9CiAKLWJvb2wgV2ViRWRpdG9yQ2xpZW50OjpzaG91bGRDaGFuZ2VUeXBpbmdTdHls
ZShTdHlsZVByb3BlcnRpZXMqLCBTdHlsZVByb3BlcnRpZXMqKQotewotICAgIG5vdEltcGxlbWVu
dGVkKCk7Ci0gICAgcmV0dXJuIGZhbHNlOwotfQotCi12b2lkIFdlYkVkaXRvckNsaWVudDo6d2Vi
Vmlld0RpZENoYW5nZVR5cGluZ1N0eWxlKFdlYk5vdGlmaWNhdGlvbiogLypub3RpZmljYXRpb24q
LykKLXsKLSAgICBub3RJbXBsZW1lbnRlZCgpOwotfQotCi12b2lkIFdlYkVkaXRvckNsaWVudDo6
d2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbihXZWJOb3RpZmljYXRpb24qIC8qbm90aWZpY2F0aW9u
Ki8pCi17Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKLX0KLQogYm9vbCBXZWJFZGl0b3JDbGllbnQ6
OnNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCh2b2lkKQogewogICAgIFBhZ2UqIHBhZ2UgPSBtX3dl
YlZpZXctPnBhZ2UoKTsKQEAgLTUyMSw3ICs1MDUsNyBAQCB2b2lkIFdlYkVkaXRvckNsaWVudDo6
dGV4dERpZENoYW5nZUluVGV4dEFyZWEoRWxlbWVudCogZSkKIGNsYXNzIFdlYkVkaXRvclVuZG9D
b21tYW5kIDogcHVibGljIElXZWJVbmRvQ29tbWFuZAogewogcHVibGljOgotICAgIFdlYkVkaXRv
clVuZG9Db21tYW5kKFBhc3NSZWZQdHI8VW5kb1N0ZXA+LCBib29sIGlzVW5kbyk7CisgICAgV2Vi
RWRpdG9yVW5kb0NvbW1hbmQoVW5kb1N0ZXAmLCBib29sIGlzVW5kbyk7CiAgICAgdm9pZCBleGVj
dXRlKCk7CiAKICAgICAvLyBJVW5rbm93bgpAQCAtNTMxLDExICs1MTUsMTEgQEAgcHVibGljOgog
CiBwcml2YXRlOgogICAgIFVMT05HIG1fcmVmQ291bnQ7Ci0gICAgUmVmUHRyPFVuZG9TdGVwPiBt
X3N0ZXA7CisgICAgUmVmPFVuZG9TdGVwPiBtX3N0ZXA7CiAgICAgYm9vbCBtX2lzVW5kbzsKIH07
CiAKLVdlYkVkaXRvclVuZG9Db21tYW5kOjpXZWJFZGl0b3JVbmRvQ29tbWFuZChQYXNzUmVmUHRy
PFVuZG9TdGVwPiBzdGVwLCBib29sIGlzVW5kbykKK1dlYkVkaXRvclVuZG9Db21tYW5kOjpXZWJF
ZGl0b3JVbmRvQ29tbWFuZChVbmRvU3RlcCYgc3RlcCwgYm9vbCBpc1VuZG8pCiAgICAgOiBtX3N0
ZXAoc3RlcCkKICAgICAsIG1faXNVbmRvKGlzVW5kbykgCiAgICAgLCBtX3JlZkNvdW50KDEpCkBA
IC02NDAsMTEgKzYyNCwxMSBAQCBzdGF0aWMgU3RyaW5nIHVuZG9OYW1lRm9yRWRpdEFjdGlvbihF
ZGl0QWN0aW9uIGVkaXRBY3Rpb24pCiAgICAgcmV0dXJuIFN0cmluZygpOwogfQogCi12b2lkIFdl
YkVkaXRvckNsaWVudDo6cmVnaXN0ZXJVbmRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPiBzdGVw
KQordm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb1N0ZXAoVW5kb1N0ZXAmIHN0ZXAp
CiB7CiAgICAgSVdlYlVJRGVsZWdhdGUqIHVpRGVsZWdhdGUgPSAwOwogICAgIGlmIChTVUNDRUVE
RUQobV93ZWJWaWV3LT51aURlbGVnYXRlKCZ1aURlbGVnYXRlKSkpIHsKLSAgICAgICAgU3RyaW5n
IGFjdGlvbk5hbWUgPSB1bmRvTmFtZUZvckVkaXRBY3Rpb24oc3RlcC0+ZWRpdGluZ0FjdGlvbigp
KTsKKyAgICAgICAgU3RyaW5nIGFjdGlvbk5hbWUgPSB1bmRvTmFtZUZvckVkaXRBY3Rpb24oc3Rl
cC5lZGl0aW5nQWN0aW9uKCkpOwogICAgICAgICBXZWJFZGl0b3JVbmRvQ29tbWFuZCogdW5kb0Nv
bW1hbmQgPSBuZXcgV2ViRWRpdG9yVW5kb0NvbW1hbmQoc3RlcCwgdHJ1ZSk7CiAgICAgICAgIGlm
ICghdW5kb0NvbW1hbmQpCiAgICAgICAgICAgICByZXR1cm47CkBAIC02NTYsNyArNjQwLDcgQEAg
dm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb1N0ZXAoUGFzc1JlZlB0cjxVbmRvU3Rl
cD4gc3RlcCkKICAgICB9CiB9CiAKLXZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclJlZG9T
dGVwKFBhc3NSZWZQdHI8VW5kb1N0ZXA+IHN0ZXApCit2b2lkIFdlYkVkaXRvckNsaWVudDo6cmVn
aXN0ZXJSZWRvU3RlcChVbmRvU3RlcCYgc3RlcCkKIHsKICAgICBJV2ViVUlEZWxlZ2F0ZSogdWlE
ZWxlZ2F0ZSA9IDA7CiAgICAgaWYgKFNVQ0NFRURFRChtX3dlYlZpZXctPnVpRGVsZWdhdGUoJnVp
RGVsZWdhdGUpKSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBv
cnQvV2ViRWRpdG9yQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9X
ZWJFZGl0b3JDbGllbnQuaAppbmRleCBiMTQ4YmU3MmFmZmFiMWJmMzQ1ZTAxMTA3ZmJmNTI3NThi
ODYzZTVlLi40ZTBmYzlmODRkNTQ2MmNlNDY3ODg5NjhkZWQ2ZWM5NjYxNjZmMTk1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuaAor
KysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuaApA
QCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAwNyBBcHBsZSBJbmMu
ICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTcgQXBwbGUg
SW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwpAQCAtMzMsOTEgKzMzLDg3IEBAIGNsYXNzIFdlYlZpZXc7CiBjbGFzcyBXZWJOb3RpZmljYXRp
b247CiBjbGFzcyBXZWJFZGl0b3JVbmRvVGFyZ2V0OwogCi1jbGFzcyBXZWJFZGl0b3JDbGllbnQg
OiBwdWJsaWMgV2ViQ29yZTo6RWRpdG9yQ2xpZW50LCBwdWJsaWMgV2ViQ29yZTo6VGV4dENoZWNr
ZXJDbGllbnQgeworY2xhc3MgV2ViRWRpdG9yQ2xpZW50IGZpbmFsIDogcHVibGljIFdlYkNvcmU6
OkVkaXRvckNsaWVudCwgcHVibGljIFdlYkNvcmU6OlRleHRDaGVja2VyQ2xpZW50IHsKIHB1Ymxp
YzoKICAgICBXZWJFZGl0b3JDbGllbnQoV2ViVmlldyopOwogICAgIH5XZWJFZGl0b3JDbGllbnQo
KTsKIAotICAgIHZpcnR1YWwgYm9vbCBpc0NvbnRpbnVvdXNTcGVsbENoZWNraW5nRW5hYmxlZCgp
OwotICAgIHZpcnR1YWwgdm9pZCB0b2dnbGVHcmFtbWFyQ2hlY2tpbmcoKTsKLSAgICB2aXJ0dWFs
IGJvb2wgaXNHcmFtbWFyQ2hlY2tpbmdFbmFibGVkKCk7Ci0gICAgdmlydHVhbCB2b2lkIHRvZ2ds
ZUNvbnRpbnVvdXNTcGVsbENoZWNraW5nKCk7Ci0gICAgdmlydHVhbCBpbnQgc3BlbGxDaGVja2Vy
RG9jdW1lbnRUYWcoKTsKLQotICAgIHZpcnR1YWwgYm9vbCBzaG91bGRCZWdpbkVkaXRpbmcoV2Vi
Q29yZTo6UmFuZ2UqKTsKLSAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkRW5kRWRpdGluZyhXZWJDb3Jl
OjpSYW5nZSopOwotICAgIHZpcnR1YWwgYm9vbCBzaG91bGRJbnNlcnRUZXh0KGNvbnN0IFdURjo6
U3RyaW5nJiwgV2ViQ29yZTo6UmFuZ2UqLCBXZWJDb3JlOjpFZGl0b3JJbnNlcnRBY3Rpb24pOwot
Ci0gICAgdmlydHVhbCB2b2lkIGRpZEJlZ2luRWRpdGluZygpOwotICAgIHZpcnR1YWwgdm9pZCBk
aWRFbmRFZGl0aW5nKCk7Ci0gICAgdmlydHVhbCB2b2lkIHdpbGxXcml0ZVNlbGVjdGlvblRvUGFz
dGVib2FyZChXZWJDb3JlOjpSYW5nZSopOwotICAgIHZpcnR1YWwgdm9pZCBkaWRXcml0ZVNlbGVj
dGlvblRvUGFzdGVib2FyZCgpOwotICAgIHZpcnR1YWwgdm9pZCBnZXRDbGllbnRQYXN0ZWJvYXJk
RGF0YUZvclJhbmdlKFdlYkNvcmU6OlJhbmdlKiwgVmVjdG9yPFN0cmluZz4mIHBhc3RlYm9hcmRU
eXBlcywgVmVjdG9yPFJlZlB0cjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+ID4mIHBhc3RlYm9hcmRE
YXRhKTsKLQotICAgIHZpcnR1YWwgdm9pZCByZXNwb25kVG9DaGFuZ2VkQ29udGVudHMoKTsKLSAg
ICB2aXJ0dWFsIHZvaWQgcmVzcG9uZFRvQ2hhbmdlZFNlbGVjdGlvbihXZWJDb3JlOjpGcmFtZSop
OworcHJpdmF0ZToKKyAgICBib29sIGlzQ29udGludW91c1NwZWxsQ2hlY2tpbmdFbmFibGVkKCkg
ZmluYWw7CisgICAgdm9pZCB0b2dnbGVHcmFtbWFyQ2hlY2tpbmcoKSBmaW5hbDsKKyAgICBib29s
IGlzR3JhbW1hckNoZWNraW5nRW5hYmxlZCgpIGZpbmFsOworICAgIHZvaWQgdG9nZ2xlQ29udGlu
dW91c1NwZWxsQ2hlY2tpbmcoKSBmaW5hbDsKKyAgICBpbnQgc3BlbGxDaGVja2VyRG9jdW1lbnRU
YWcoKSBmaW5hbDsKKworICAgIGJvb2wgc2hvdWxkQmVnaW5FZGl0aW5nKFdlYkNvcmU6OlJhbmdl
KikgZmluYWw7CisgICAgYm9vbCBzaG91bGRFbmRFZGl0aW5nKFdlYkNvcmU6OlJhbmdlKikgZmlu
YWw7CisgICAgYm9vbCBzaG91bGRJbnNlcnRUZXh0KGNvbnN0IFdURjo6U3RyaW5nJiwgV2ViQ29y
ZTo6UmFuZ2UqLCBXZWJDb3JlOjpFZGl0b3JJbnNlcnRBY3Rpb24pIGZpbmFsOworCisgICAgdm9p
ZCBkaWRCZWdpbkVkaXRpbmcoKSBmaW5hbDsKKyAgICB2b2lkIGRpZEVuZEVkaXRpbmcoKSBmaW5h
bDsKKyAgICB2b2lkIHdpbGxXcml0ZVNlbGVjdGlvblRvUGFzdGVib2FyZChXZWJDb3JlOjpSYW5n
ZSopIGZpbmFsOworICAgIHZvaWQgZGlkV3JpdGVTZWxlY3Rpb25Ub1Bhc3RlYm9hcmQoKSBmaW5h
bDsKKyAgICB2b2lkIGdldENsaWVudFBhc3RlYm9hcmREYXRhRm9yUmFuZ2UoV2ViQ29yZTo6UmFu
Z2UqLCBWZWN0b3I8U3RyaW5nPiYgcGFzdGVib2FyZFR5cGVzLCBWZWN0b3I8UmVmUHRyPFdlYkNv
cmU6OlNoYXJlZEJ1ZmZlcj4+JiBwYXN0ZWJvYXJkRGF0YSkgZmluYWw7CisKKyAgICB2b2lkIHJl
c3BvbmRUb0NoYW5nZWRDb250ZW50cygpIGZpbmFsOworICAgIHZvaWQgcmVzcG9uZFRvQ2hhbmdl
ZFNlbGVjdGlvbihXZWJDb3JlOjpGcmFtZSopIGZpbmFsOwogICAgIHZvaWQgZGlkQ2hhbmdlU2Vs
ZWN0aW9uQW5kVXBkYXRlTGF5b3V0KCkgZmluYWwgeyB9CiAgICAgdm9pZCB1cGRhdGVFZGl0b3JT
dGF0ZUFmdGVyTGF5b3V0SWZFZGl0YWJpbGl0eUNoYW5nZWQoKSBmaW5hbCB7IH0gCiAgICAgdm9p
ZCBjYW5jZWxlZENvbXBvc2l0aW9uKCkgZmluYWw7CiAgICAgdm9pZCBkaXNjYXJkZWRDb21wb3Np
dGlvbihXZWJDb3JlOjpGcmFtZSopIGZpbmFsOwogCi0gICAgYm9vbCBzaG91bGREZWxldGVSYW5n
ZShXZWJDb3JlOjpSYW5nZSopOwotCi0gICAgYm9vbCBzaG91bGRJbnNlcnROb2RlKFdlYkNvcmU6
Ok5vZGUqLCBXZWJDb3JlOjpSYW5nZSogcmVwbGFjaW5nUmFuZ2UsIFdlYkNvcmU6OkVkaXRvcklu
c2VydEFjdGlvbik7Ci0gICAgYm9vbCBzaG91bGRBcHBseVN0eWxlKFdlYkNvcmU6OlN0eWxlUHJv
cGVydGllcyosIFdlYkNvcmU6OlJhbmdlKik7Ci0gICAgdm9pZCBkaWRBcHBseVN0eWxlKCk7Ci0g
ICAgYm9vbCBzaG91bGRNb3ZlUmFuZ2VBZnRlckRlbGV0ZShXZWJDb3JlOjpSYW5nZSosIFdlYkNv
cmU6OlJhbmdlKik7Ci0gICAgYm9vbCBzaG91bGRDaGFuZ2VUeXBpbmdTdHlsZShXZWJDb3JlOjpT
dHlsZVByb3BlcnRpZXMqIGN1cnJlbnRTdHlsZSwgV2ViQ29yZTo6U3R5bGVQcm9wZXJ0aWVzKiB0
b1Byb3Bvc2VkU3R5bGUpOworICAgIGJvb2wgc2hvdWxkRGVsZXRlUmFuZ2UoV2ViQ29yZTo6UmFu
Z2UqKSBmaW5hbDsKIAotICAgIHZvaWQgd2ViVmlld0RpZENoYW5nZVR5cGluZ1N0eWxlKFdlYk5v
dGlmaWNhdGlvbiopOwotICAgIHZvaWQgd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbihXZWJOb3Rp
ZmljYXRpb24qKTsKKyAgICBib29sIHNob3VsZEluc2VydE5vZGUoV2ViQ29yZTo6Tm9kZSosIFdl
YkNvcmU6OlJhbmdlKiByZXBsYWNpbmdSYW5nZSwgV2ViQ29yZTo6RWRpdG9ySW5zZXJ0QWN0aW9u
KSBmaW5hbDsKKyAgICBib29sIHNob3VsZEFwcGx5U3R5bGUoV2ViQ29yZTo6U3R5bGVQcm9wZXJ0
aWVzKiwgV2ViQ29yZTo6UmFuZ2UqKSBmaW5hbDsKKyAgICB2b2lkIGRpZEFwcGx5U3R5bGUoKSBm
aW5hbDsKKyAgICBib29sIHNob3VsZE1vdmVSYW5nZUFmdGVyRGVsZXRlKFdlYkNvcmU6OlJhbmdl
KiwgV2ViQ29yZTo6UmFuZ2UqKSBmaW5hbDsKIAotICAgIGJvb2wgc21hcnRJbnNlcnREZWxldGVF
bmFibGVkKCk7Ci0gICAgYm9vbCBpc1NlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQoKTsK
KyAgICBib29sIHNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCgpIGZpbmFsOworICAgIGJvb2wgaXNT
ZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VFbmFibGVkKCkgZmluYWw7CiAKLSAgICB2b2lkIHJlZ2lz
dGVyVW5kb1N0ZXAoUGFzc1JlZlB0cjxXZWJDb3JlOjpVbmRvU3RlcD4pOwotICAgIHZvaWQgcmVn
aXN0ZXJSZWRvU3RlcChQYXNzUmVmUHRyPFdlYkNvcmU6OlVuZG9TdGVwPik7CisgICAgdm9pZCBy
ZWdpc3RlclVuZG9TdGVwKFdlYkNvcmU6OlVuZG9TdGVwJikgZmluYWw7CisgICAgdm9pZCByZWdp
c3RlclJlZG9TdGVwKFdlYkNvcmU6OlVuZG9TdGVwJikgZmluYWw7CiAgICAgdm9pZCBjbGVhclVu
ZG9SZWRvT3BlcmF0aW9ucygpOwogCi0gICAgYm9vbCBjYW5Db3B5Q3V0KFdlYkNvcmU6OkZyYW1l
KiwgYm9vbCBkZWZhdWx0VmFsdWUpIGNvbnN0OwotICAgIGJvb2wgY2FuUGFzdGUoV2ViQ29yZTo6
RnJhbWUqLCBib29sIGRlZmF1bHRWYWx1ZSkgY29uc3Q7Ci0gICAgYm9vbCBjYW5VbmRvKCkgY29u
c3Q7Ci0gICAgYm9vbCBjYW5SZWRvKCkgY29uc3Q7CisgICAgYm9vbCBjYW5Db3B5Q3V0KFdlYkNv
cmU6OkZyYW1lKiwgYm9vbCBkZWZhdWx0VmFsdWUpIGNvbnN0IGZpbmFsOworICAgIGJvb2wgY2Fu
UGFzdGUoV2ViQ29yZTo6RnJhbWUqLCBib29sIGRlZmF1bHRWYWx1ZSkgY29uc3QgZmluYWw7Cisg
ICAgYm9vbCBjYW5VbmRvKCkgY29uc3QgZmluYWw7CisgICAgYm9vbCBjYW5SZWRvKCkgY29uc3Qg
ZmluYWw7CiAgICAgCi0gICAgdm9pZCB1bmRvKCk7Ci0gICAgdm9pZCByZWRvKCk7ICAgIAorICAg
IHZvaWQgdW5kbygpIGZpbmFsOworICAgIHZvaWQgcmVkbygpIGZpbmFsOwogICAgIAotICAgIGJv
b2wgc2hvdWxkQ2hhbmdlU2VsZWN0ZWRSYW5nZShXZWJDb3JlOjpSYW5nZSogZnJvbVJhbmdlLCBX
ZWJDb3JlOjpSYW5nZSogdG9SYW5nZSwgV2ViQ29yZTo6RUFmZmluaXR5LCBib29sIHN0aWxsU2Vs
ZWN0aW5nKSBvdmVycmlkZTsKLSAgICB2b2lkIHRleHRGaWVsZERpZEJlZ2luRWRpdGluZyhXZWJD
b3JlOjpFbGVtZW50Kikgb3ZlcnJpZGU7Ci0gICAgdm9pZCB0ZXh0RmllbGREaWRFbmRFZGl0aW5n
KFdlYkNvcmU6OkVsZW1lbnQqKSBvdmVycmlkZTsKLSAgICB2b2lkIHRleHREaWRDaGFuZ2VJblRl
eHRGaWVsZChXZWJDb3JlOjpFbGVtZW50Kikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBkb1RleHRGaWVs
ZENvbW1hbmRGcm9tRXZlbnQoV2ViQ29yZTo6RWxlbWVudCosIFdlYkNvcmU6OktleWJvYXJkRXZl
bnQqKSBvdmVycmlkZTsKLSAgICB2b2lkIHRleHRXaWxsQmVEZWxldGVkSW5UZXh0RmllbGQoV2Vi
Q29yZTo6RWxlbWVudCogaW5wdXQpIG92ZXJyaWRlOwotICAgIHZvaWQgdGV4dERpZENoYW5nZUlu
VGV4dEFyZWEoV2ViQ29yZTo6RWxlbWVudCopIG92ZXJyaWRlOwotICAgIHZvaWQgb3ZlcmZsb3dT
Y3JvbGxQb3NpdGlvbkNoYW5nZWQoKSBvdmVycmlkZSB7IH0KLQotICAgIHZvaWQgaGFuZGxlS2V5
Ym9hcmRFdmVudChXZWJDb3JlOjpLZXlib2FyZEV2ZW50Kik7Ci0gICAgdm9pZCBoYW5kbGVJbnB1
dE1ldGhvZEtleWRvd24oV2ViQ29yZTo6S2V5Ym9hcmRFdmVudCopOwotCi0gICAgYm9vbCBzaG91
bGRFcmFzZU1hcmtlcnNBZnRlckNoYW5nZVNlbGVjdGlvbihXZWJDb3JlOjpUZXh0Q2hlY2tpbmdU
eXBlKSBjb25zdCBvdmVycmlkZTsKLSAgICB2b2lkIGlnbm9yZVdvcmRJblNwZWxsRG9jdW1lbnQo
Y29uc3QgV1RGOjpTdHJpbmcmKSBvdmVycmlkZTsKLSAgICB2b2lkIGxlYXJuV29yZChjb25zdCBX
VEY6OlN0cmluZyYpIG92ZXJyaWRlOwotICAgIHZvaWQgY2hlY2tTcGVsbGluZ09mU3RyaW5nKFN0
cmluZ1ZpZXcsIGludCogbWlzc3BlbGxpbmdMb2NhdGlvbiwgaW50KiBtaXNzcGVsbGluZ0xlbmd0
aCkgb3ZlcnJpZGU7Ci0gICAgV1RGOjpTdHJpbmcgZ2V0QXV0b0NvcnJlY3RTdWdnZXN0aW9uRm9y
TWlzc3BlbGxlZFdvcmQoY29uc3QgV1RGOjpTdHJpbmcmKSBvdmVycmlkZTsKLSAgICB2b2lkIGNo
ZWNrR3JhbW1hck9mU3RyaW5nKFN0cmluZ1ZpZXcsIFZlY3RvcjxXZWJDb3JlOjpHcmFtbWFyRGV0
YWlsPiYsIGludCogYmFkR3JhbW1hckxvY2F0aW9uLCBpbnQqIGJhZEdyYW1tYXJMZW5ndGgpIG92
ZXJyaWRlOwotICAgIHZvaWQgdXBkYXRlU3BlbGxpbmdVSVdpdGhHcmFtbWFyU3RyaW5nKGNvbnN0
IFdURjo6U3RyaW5nJiwgY29uc3QgV2ViQ29yZTo6R3JhbW1hckRldGFpbCYpIG92ZXJyaWRlOwot
ICAgIHZvaWQgdXBkYXRlU3BlbGxpbmdVSVdpdGhNaXNzcGVsbGVkV29yZChjb25zdCBXVEY6OlN0
cmluZyYpIG92ZXJyaWRlOwotICAgIHZvaWQgc2hvd1NwZWxsaW5nVUkoYm9vbCBzaG93KSBvdmVy
cmlkZTsKLSAgICBib29sIHNwZWxsaW5nVUlJc1Nob3dpbmcoKSBvdmVycmlkZTsKLSAgICB2b2lk
IGdldEd1ZXNzZXNGb3JXb3JkKGNvbnN0IFdURjo6U3RyaW5nJiB3b3JkLCBjb25zdCBXVEY6OlN0
cmluZyYgY29udGV4dCwgY29uc3QgV2ViQ29yZTo6VmlzaWJsZVNlbGVjdGlvbiYgY3VycmVudFNl
bGVjdGlvbiwgV1RGOjpWZWN0b3I8V1RGOjpTdHJpbmc+JiBndWVzc2VzKSBvdmVycmlkZTsKLQot
ICAgIHZvaWQgd2lsbFNldElucHV0TWV0aG9kU3RhdGUoKSBvdmVycmlkZTsKLSAgICB2b2lkIHNl
dElucHV0TWV0aG9kU3RhdGUoYm9vbCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCByZXF1ZXN0Q2hlY2tp
bmdPZlN0cmluZyhXZWJDb3JlOjpUZXh0Q2hlY2tpbmdSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6
VmlzaWJsZVNlbGVjdGlvbiYpIG92ZXJyaWRlIHsgfQotCi0gICAgV2ViQ29yZTo6VGV4dENoZWNr
ZXJDbGllbnQqIHRleHRDaGVja2VyKCkgb3ZlcnJpZGUgeyByZXR1cm4gdGhpczsgfQorICAgIGJv
b2wgc2hvdWxkQ2hhbmdlU2VsZWN0ZWRSYW5nZShXZWJDb3JlOjpSYW5nZSogZnJvbVJhbmdlLCBX
ZWJDb3JlOjpSYW5nZSogdG9SYW5nZSwgV2ViQ29yZTo6RUFmZmluaXR5LCBib29sIHN0aWxsU2Vs
ZWN0aW5nKSBmaW5hbDsKKyAgICB2b2lkIHRleHRGaWVsZERpZEJlZ2luRWRpdGluZyhXZWJDb3Jl
OjpFbGVtZW50KikgZmluYWw7CisgICAgdm9pZCB0ZXh0RmllbGREaWRFbmRFZGl0aW5nKFdlYkNv
cmU6OkVsZW1lbnQqKSBmaW5hbDsKKyAgICB2b2lkIHRleHREaWRDaGFuZ2VJblRleHRGaWVsZChX
ZWJDb3JlOjpFbGVtZW50KikgZmluYWw7CisgICAgYm9vbCBkb1RleHRGaWVsZENvbW1hbmRGcm9t
RXZlbnQoV2ViQ29yZTo6RWxlbWVudCosIFdlYkNvcmU6OktleWJvYXJkRXZlbnQqKSBmaW5hbDsK
KyAgICB2b2lkIHRleHRXaWxsQmVEZWxldGVkSW5UZXh0RmllbGQoV2ViQ29yZTo6RWxlbWVudCog
aW5wdXQpIGZpbmFsOworICAgIHZvaWQgdGV4dERpZENoYW5nZUluVGV4dEFyZWEoV2ViQ29yZTo6
RWxlbWVudCopIGZpbmFsOworICAgIHZvaWQgb3ZlcmZsb3dTY3JvbGxQb3NpdGlvbkNoYW5nZWQo
KSBmaW5hbCB7IH0KKworICAgIHZvaWQgaGFuZGxlS2V5Ym9hcmRFdmVudChXZWJDb3JlOjpLZXli
b2FyZEV2ZW50KikgZmluYWw7CisgICAgdm9pZCBoYW5kbGVJbnB1dE1ldGhvZEtleWRvd24oV2Vi
Q29yZTo6S2V5Ym9hcmRFdmVudCopIGZpbmFsOworCisgICAgYm9vbCBzaG91bGRFcmFzZU1hcmtl
cnNBZnRlckNoYW5nZVNlbGVjdGlvbihXZWJDb3JlOjpUZXh0Q2hlY2tpbmdUeXBlKSBjb25zdCBm
aW5hbDsKKyAgICB2b2lkIGlnbm9yZVdvcmRJblNwZWxsRG9jdW1lbnQoY29uc3QgV1RGOjpTdHJp
bmcmKSBmaW5hbDsKKyAgICB2b2lkIGxlYXJuV29yZChjb25zdCBXVEY6OlN0cmluZyYpIGZpbmFs
OworICAgIHZvaWQgY2hlY2tTcGVsbGluZ09mU3RyaW5nKFN0cmluZ1ZpZXcsIGludCogbWlzc3Bl
bGxpbmdMb2NhdGlvbiwgaW50KiBtaXNzcGVsbGluZ0xlbmd0aCkgZmluYWw7CisgICAgV1RGOjpT
dHJpbmcgZ2V0QXV0b0NvcnJlY3RTdWdnZXN0aW9uRm9yTWlzc3BlbGxlZFdvcmQoY29uc3QgV1RG
OjpTdHJpbmcmKSBmaW5hbDsKKyAgICB2b2lkIGNoZWNrR3JhbW1hck9mU3RyaW5nKFN0cmluZ1Zp
ZXcsIFZlY3RvcjxXZWJDb3JlOjpHcmFtbWFyRGV0YWlsPiYsIGludCogYmFkR3JhbW1hckxvY2F0
aW9uLCBpbnQqIGJhZEdyYW1tYXJMZW5ndGgpIGZpbmFsOworICAgIHZvaWQgdXBkYXRlU3BlbGxp
bmdVSVdpdGhHcmFtbWFyU3RyaW5nKGNvbnN0IFdURjo6U3RyaW5nJiwgY29uc3QgV2ViQ29yZTo6
R3JhbW1hckRldGFpbCYpIGZpbmFsOworICAgIHZvaWQgdXBkYXRlU3BlbGxpbmdVSVdpdGhNaXNz
cGVsbGVkV29yZChjb25zdCBXVEY6OlN0cmluZyYpIGZpbmFsOworICAgIHZvaWQgc2hvd1NwZWxs
aW5nVUkoYm9vbCBzaG93KSBmaW5hbDsKKyAgICBib29sIHNwZWxsaW5nVUlJc1Nob3dpbmcoKSBm
aW5hbDsKKyAgICB2b2lkIGdldEd1ZXNzZXNGb3JXb3JkKGNvbnN0IFdURjo6U3RyaW5nJiB3b3Jk
LCBjb25zdCBXVEY6OlN0cmluZyYgY29udGV4dCwgY29uc3QgV2ViQ29yZTo6VmlzaWJsZVNlbGVj
dGlvbiYgY3VycmVudFNlbGVjdGlvbiwgV1RGOjpWZWN0b3I8V1RGOjpTdHJpbmc+JiBndWVzc2Vz
KSBmaW5hbDsKKworICAgIHZvaWQgd2lsbFNldElucHV0TWV0aG9kU3RhdGUoKSBmaW5hbDsKKyAg
ICB2b2lkIHNldElucHV0TWV0aG9kU3RhdGUoYm9vbCkgZmluYWw7CisgICAgdm9pZCByZXF1ZXN0
Q2hlY2tpbmdPZlN0cmluZyhXZWJDb3JlOjpUZXh0Q2hlY2tpbmdSZXF1ZXN0JiwgY29uc3QgV2Vi
Q29yZTo6VmlzaWJsZVNlbGVjdGlvbiYpIGZpbmFsIHsgfQorCisgICAgV2ViQ29yZTo6VGV4dENo
ZWNrZXJDbGllbnQqIHRleHRDaGVja2VyKCkgZmluYWwgeyByZXR1cm4gdGhpczsgfQogCi1wcml2
YXRlOgogICAgIFdlYlZpZXcqIG1fd2ViVmlldzsKICAgICBXZWJFZGl0b3JVbmRvVGFyZ2V0KiBt
X3VuZG9UYXJnZXQ7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1
cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29y
ZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCmluZGV4IGVhMmJhY2MxNGM3YWJhY2Fm
NWI4Y2IwMzRmMWUzZDg1MTdiNjRjYWMuLjM4NTY4YzBjN2UzYTQ5OWU5ODAwMzc2MDAwYTcxOGY3
ZTk3YzcyNjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dl
YkZyYW1lTG9hZGVyQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3Vw
cG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29w
eXJpZ2h0IChDKSAyMDA2LTIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICog
Q29weXJpZ2h0IChDKSAyMDA2LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgog
ICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC01MzMsNyArNTMzLDcgQEAgdm9pZCBX
ZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JSZXNwb25zZShjb25z
dCBSZXNvdXJjZVJlc3BvbnMKICAgICBmdW5jdGlvbihQb2xpY3lVc2UpOwogfQogCi12b2lkIFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlv
bihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYg
cmVxdWVzdCwgUGFzc1JlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSwgY29uc3QgU3RyaW5nJiBm
cmFtZU5hbWUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24pCit2b2lkIFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBO
YXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwg
Rm9ybVN0YXRlKiBmb3JtU3RhdGUsIGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBGcmFtZVBvbGlj
eUZ1bmN0aW9uIGZ1bmN0aW9uKQogewogICAgIFdlYlZpZXcqIHdlYlZpZXcgPSBtX3dlYkZyYW1l
LT53ZWJWaWV3KCk7CiAgICAgRnJhbWUqIGNvcmVGcmFtZSA9IGNvcmUobV93ZWJGcmFtZSk7CkBA
IC01NDQsNyArNTQ0LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNp
ZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGkKICAgICAgICAgcG9saWN5
RGVsZWdhdGUgPSBEZWZhdWx0UG9saWN5RGVsZWdhdGU6OnNoYXJlZEluc3RhbmNlKCk7CiAKICAg
ICBDT01QdHI8SVdlYlVSTFJlcXVlc3Q+IHVybFJlcXVlc3QoQWRvcHRDT00sIFdlYk11dGFibGVV
UkxSZXF1ZXN0OjpjcmVhdGVJbnN0YW5jZShyZXF1ZXN0KSk7Ci0gICAgQ09NUHRyPFdlYkFjdGlv
blByb3BlcnR5QmFnPiBhY3Rpb25JbmZvcm1hdGlvbihBZG9wdENPTSwgV2ViQWN0aW9uUHJvcGVy
dHlCYWc6OmNyZWF0ZUluc3RhbmNlKGFjdGlvbiwgZm9ybVN0YXRlID8gZm9ybVN0YXRlLT5mb3Jt
KCkgOiAwLCBjb3JlRnJhbWUpKTsKKyAgICBDT01QdHI8V2ViQWN0aW9uUHJvcGVydHlCYWc+IGFj
dGlvbkluZm9ybWF0aW9uKEFkb3B0Q09NLCBXZWJBY3Rpb25Qcm9wZXJ0eUJhZzo6Y3JlYXRlSW5z
dGFuY2UoYWN0aW9uLCBmb3JtU3RhdGUgPyAmZm9ybVN0YXRlLT5mb3JtKCkgOiBudWxscHRyLCBj
b3JlRnJhbWUpKTsKIAogICAgIGlmIChTVUNDRUVERUQocG9saWN5RGVsZWdhdGUtPmRlY2lkZVBv
bGljeUZvck5ld1dpbmRvd0FjdGlvbih3ZWJWaWV3LCBhY3Rpb25JbmZvcm1hdGlvbi5nZXQoKSwg
dXJsUmVxdWVzdC5nZXQoKSwgQlN0cmluZyhmcmFtZU5hbWUpLCBzZXRVcFBvbGljeUxpc3RlbmVy
KGZ1bmN0aW9uKS5nZXQoKSkpKQogICAgICAgICByZXR1cm47CkBAIC01NTIsNyArNTUyLDcgQEAg
dm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5k
b3dBY3Rpb24oY29uc3QgTmF2aWdhdGkKICAgICBmdW5jdGlvbihQb2xpY3lVc2UpOwogfQogCi12
b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRp
b25BY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgYWN0aW9uLCBjb25zdCBSZXNvdXJjZVJl
cXVlc3QmIHJlcXVlc3QsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiBmb3JtU3RhdGUsIEZyYW1lUG9s
aWN5RnVuY3Rpb24gZnVuY3Rpb24pCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYg
YWN0aW9uLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSogZm9ybVN0
YXRlLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQogewogICAgIFdlYlZpZXcqIHdlYlZp
ZXcgPSBtX3dlYkZyYW1lLT53ZWJWaWV3KCk7CiAgICAgRnJhbWUqIGNvcmVGcmFtZSA9IGNvcmUo
bV93ZWJGcmFtZSk7CkBAIC01NjMsNyArNTYzLDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVu
dDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5hdmlnYXQK
ICAgICAgICAgcG9saWN5RGVsZWdhdGUgPSBEZWZhdWx0UG9saWN5RGVsZWdhdGU6OnNoYXJlZElu
c3RhbmNlKCk7CiAKICAgICBDT01QdHI8SVdlYlVSTFJlcXVlc3Q+IHVybFJlcXVlc3QoQWRvcHRD
T00sIFdlYk11dGFibGVVUkxSZXF1ZXN0OjpjcmVhdGVJbnN0YW5jZShyZXF1ZXN0KSk7Ci0gICAg
Q09NUHRyPFdlYkFjdGlvblByb3BlcnR5QmFnPiBhY3Rpb25JbmZvcm1hdGlvbihBZG9wdENPTSwg
V2ViQWN0aW9uUHJvcGVydHlCYWc6OmNyZWF0ZUluc3RhbmNlKGFjdGlvbiwgZm9ybVN0YXRlID8g
Zm9ybVN0YXRlLT5mb3JtKCkgOiAwLCBjb3JlRnJhbWUpKTsKKyAgICBDT01QdHI8V2ViQWN0aW9u
UHJvcGVydHlCYWc+IGFjdGlvbkluZm9ybWF0aW9uKEFkb3B0Q09NLCBXZWJBY3Rpb25Qcm9wZXJ0
eUJhZzo6Y3JlYXRlSW5zdGFuY2UoYWN0aW9uLCBmb3JtU3RhdGUgPyAmZm9ybVN0YXRlLT5mb3Jt
KCkgOiBudWxscHRyLCBjb3JlRnJhbWUpKTsKIAogICAgIGlmIChTVUNDRUVERUQocG9saWN5RGVs
ZWdhdGUtPmRlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24od2ViVmlldywgYWN0aW9uSW5m
b3JtYXRpb24uZ2V0KCksIHVybFJlcXVlc3QuZ2V0KCksIG1fd2ViRnJhbWUsIHNldFVwUG9saWN5
TGlzdGVuZXIoZnVuY3Rpb24pLmdldCgpKSkpCiAgICAgICAgIHJldHVybjsKQEAgLTU4MiwxMSAr
NTgyLDExIEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoVW5hYmxlVG9JbXBs
ZW1lbnRQb2xpY3koY29uc3QgUmVzb3VyY2VFcnJvciYKICAgICBwb2xpY3lEZWxlZ2F0ZS0+dW5h
YmxlVG9JbXBsZW1lbnRQb2xpY3lXaXRoRXJyb3Iod2ViVmlldywgd2ViRXJyb3IuZ2V0KCksIG1f
d2ViRnJhbWUpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxT
ZW5kU3VibWl0RXZlbnQoUGFzc1JlZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+KQordm9pZCBXZWJG
cmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJlZjxXZWJDb3Jl
OjpGb3JtU3RhdGU+JiYpCiB7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3Bh
dGNoV2lsbFN1Ym1pdEZvcm0oUGFzc1JlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSwgRnJhbWVQ
b2xpY3lGdW5jdGlvbiBmdW5jdGlvbikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3Bh
dGNoV2lsbFN1Ym1pdEZvcm0oRm9ybVN0YXRlJiBmb3JtU3RhdGUsIEZyYW1lUG9saWN5RnVuY3Rp
b24gZnVuY3Rpb24pCiB7CiAgICAgV2ViVmlldyogd2ViVmlldyA9IG1fd2ViRnJhbWUtPndlYlZp
ZXcoKTsKICAgICBGcmFtZSogY29yZUZyYW1lID0gY29yZShtX3dlYkZyYW1lKTsKQEAgLTU5OSwx
NyArNTk5LDE3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFN1Ym1p
dEZvcm0oUGFzc1JlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0CiAgICAgICAgIHJldHVybjsKICAg
ICB9CiAKLSAgICBDT01QdHI8SURPTUVsZW1lbnQ+IGZvcm1FbGVtZW50KEFkb3B0Q09NLCBET01F
bGVtZW50OjpjcmVhdGVJbnN0YW5jZShmb3JtU3RhdGUtPmZvcm0oKSkpOworICAgIENPTVB0cjxJ
RE9NRWxlbWVudD4gZm9ybUVsZW1lbnQoQWRvcHRDT00sIERPTUVsZW1lbnQ6OmNyZWF0ZUluc3Rh
bmNlKCZmb3JtU3RhdGUuZm9ybSgpKSk7CiAKICAgICBIYXNoTWFwPFN0cmluZywgU3RyaW5nPiBm
b3JtVmFsdWVzTWFwOwotICAgIGNvbnN0IFN0cmluZ1BhaXJWZWN0b3ImIHRleHRGaWVsZFZhbHVl
cyA9IGZvcm1TdGF0ZS0+dGV4dEZpZWxkVmFsdWVzKCk7CisgICAgY29uc3QgU3RyaW5nUGFpclZl
Y3RvciYgdGV4dEZpZWxkVmFsdWVzID0gZm9ybVN0YXRlLnRleHRGaWVsZFZhbHVlcygpOwogICAg
IHNpemVfdCBzaXplID0gdGV4dEZpZWxkVmFsdWVzLnNpemUoKTsKICAgICBmb3IgKHNpemVfdCBp
ID0gMDsgaSA8IHNpemU7ICsraSkKICAgICAgICAgZm9ybVZhbHVlc01hcC5hZGQodGV4dEZpZWxk
VmFsdWVzW2ldLmZpcnN0LCB0ZXh0RmllbGRWYWx1ZXNbaV0uc2Vjb25kKTsKIAogICAgIENPTVB0
cjxJUHJvcGVydHlCYWc+IGZvcm1WYWx1ZXNQcm9wZXJ0eUJhZyhBZG9wdENPTSwgQ09NUHJvcGVy
dHlCYWc8U3RyaW5nPjo6Y3JlYXRlSW5zdGFuY2UoZm9ybVZhbHVlc01hcCkpOwogCi0gICAgQ09N
UHRyPFdlYkZyYW1lPiBzb3VyY2VGcmFtZShraXQoZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgp
LT5mcmFtZSgpKSk7CisgICAgQ09NUHRyPFdlYkZyYW1lPiBzb3VyY2VGcmFtZShraXQoZm9ybVN0
YXRlLnNvdXJjZURvY3VtZW50KCkuZnJhbWUoKSkpOwogICAgIGlmIChTVUNDRUVERUQoZm9ybURl
bGVnYXRlLT53aWxsU3VibWl0Rm9ybShtX3dlYkZyYW1lLCBzb3VyY2VGcmFtZS5nZXQoKSwgZm9y
bUVsZW1lbnQuZ2V0KCksIGZvcm1WYWx1ZXNQcm9wZXJ0eUJhZy5nZXQoKSwgc2V0VXBQb2xpY3lM
aXN0ZW5lcihmdW5jdGlvbikuZ2V0KCkpKSkKICAgICAgICAgcmV0dXJuOwogCkBAIC0xMDEyLDI5
ICsxMDEyLDIxIEBAIGJvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNhbkNhY2hlUGFnZSgpIGNv
bnN0CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLVJlZlB0cjxGcmFtZT4gV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIG5hbWUsIEhU
TUxGcmFtZU93bmVyRWxlbWVudCogb3duZXJFbGVtZW50LAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIGJvb2wgLyphbGxvd3NTY3JvbGxpbmcqLywg
aW50IC8qbWFyZ2luV2lkdGgqLywgaW50IC8qbWFyZ2luSGVpZ2h0Ki8pCi17Ci0gICAgUmVmUHRy
PEZyYW1lPiByZXN1bHQgPSBjcmVhdGVGcmFtZSh1cmwsIG5hbWUsIG93bmVyRWxlbWVudCwgcmVm
ZXJyZXIpOwotICAgIGlmICghcmVzdWx0KQotICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICBy
ZXR1cm4gcmVzdWx0OwotfQotCi1SZWZQdHI8RnJhbWU+IFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpj
cmVhdGVGcmFtZShjb25zdCBVUkwmIFVSTCwgY29uc3QgU3RyaW5nJiBuYW1lLCBIVE1MRnJhbWVP
d25lckVsZW1lbnQqIG93bmVyRWxlbWVudCwgY29uc3QgU3RyaW5nJiByZWZlcnJlcikKK1JlZlB0
cjxGcmFtZT4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYgdXJs
LCBjb25zdCBTdHJpbmcmIG5hbWUsIEhUTUxGcmFtZU93bmVyRWxlbWVudCYgb3duZXJFbGVtZW50
LAorICAgIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIGJvb2wgLyphbGxvd3NTY3JvbGxpbmcqLywg
aW50IC8qbWFyZ2luV2lkdGgqLywgaW50IC8qbWFyZ2luSGVpZ2h0Ki8pCiB7CiAgICAgRnJhbWUq
IGNvcmVGcmFtZSA9IGNvcmUobV93ZWJGcmFtZSk7CiAgICAgQVNTRVJUKGNvcmVGcmFtZSk7CiAK
ICAgICBDT01QdHI8V2ViRnJhbWU+IHdlYkZyYW1lKEFkb3B0Q09NLCBXZWJGcmFtZTo6Y3JlYXRl
SW5zdGFuY2UoKSk7CiAKLSAgICBSZWZQdHI8RnJhbWU+IGNoaWxkRnJhbWUgPSB3ZWJGcmFtZS0+
Y3JlYXRlU3ViZnJhbWVXaXRoT3duZXJFbGVtZW50KG1fd2ViRnJhbWUtPndlYlZpZXcoKSwgY29y
ZUZyYW1lLT5wYWdlKCksIG93bmVyRWxlbWVudCk7CisgICAgUmVmUHRyPEZyYW1lPiBjaGlsZEZy
YW1lID0gd2ViRnJhbWUtPmNyZWF0ZVN1YmZyYW1lV2l0aE93bmVyRWxlbWVudChtX3dlYkZyYW1l
LT53ZWJWaWV3KCksIGNvcmVGcmFtZS0+cGFnZSgpLCAmb3duZXJFbGVtZW50KTsKIAogICAgIGNo
aWxkRnJhbWUtPnRyZWUoKS5zZXROYW1lKG5hbWUpOwogICAgIGNvcmVGcmFtZS0+dHJlZSgpLmFw
cGVuZENoaWxkKGNoaWxkRnJhbWUpOwogICAgIGNoaWxkRnJhbWUtPmluaXQoKTsKIAotICAgIGNv
cmVGcmFtZS0+bG9hZGVyKCkubG9hZFVSTEludG9DaGlsZEZyYW1lKFVSTCwgcmVmZXJyZXIsIGNo
aWxkRnJhbWUuZ2V0KCkpOworICAgIGNvcmVGcmFtZS0+bG9hZGVyKCkubG9hZFVSTEludG9DaGls
ZEZyYW1lKHVybCwgcmVmZXJyZXIsIGNoaWxkRnJhbWUuZ2V0KCkpOwogCiAgICAgLy8gVGhlIGZy
YW1lJ3Mgb25sb2FkIGhhbmRsZXIgbWF5IGhhdmUgcmVtb3ZlZCBpdCBmcm9tIHRoZSBkb2N1bWVu
dC4KICAgICBpZiAoIWNoaWxkRnJhbWUtPnRyZWUoKS5wYXJlbnQoKSkKQEAgLTExMzAsNyArMTEy
Miw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmFpbFRvU3RhcnRQ
bHVnaW4oY29uc3QgUGx1Z2luVmlldyogcGx1Z2luCiAgICAgcmVzb3VyY2VMb2FkRGVsZWdhdGUt
PnBsdWdJbkZhaWxlZFdpdGhFcnJvcih3ZWJWaWV3LCBlcnJvci5nZXQoKSwgZ2V0V2ViRGF0YVNv
dXJjZShmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSkpOwogfQogCi1SZWZQdHI8V2lk
Z2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlUGx1Z2luKGNvbnN0IEludFNpemUmIHBs
dWdpblNpemUsIEhUTUxQbHVnSW5FbGVtZW50KiBlbGVtZW50LCBjb25zdCBVUkwmIHVybCwgY29u
c3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJh
bVZhbHVlcywgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgYm9vbCBsb2FkTWFudWFsbHkpCitSZWZQ
dHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlUGx1Z2luKGNvbnN0IEludFNp
emUmIHBsdWdpblNpemUsIEhUTUxQbHVnSW5FbGVtZW50JiBlbGVtZW50LCBjb25zdCBVUkwmIHVy
bCwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+
JiBwYXJhbVZhbHVlcywgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgYm9vbCBsb2FkTWFudWFsbHkp
CiB7CiAgICAgV2ViVmlldyogd2ViVmlldyA9IG1fd2ViRnJhbWUtPndlYlZpZXcoKTsKIApAQCAt
MTE0NCw3ICsxMTM2LDcgQEAgUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNy
ZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiBwbHVnaW5TaXplLCBIVE0KICAgICAgICAgICAgIGZv
ciAodW5zaWduZWQgaSA9IDA7IGkgPCBwYXJhbU5hbWVzLnNpemUoKTsgaSsrKSAKICAgICAgICAg
ICAgICAgICB2aWV3QXJndW1lbnRzLnNldChwYXJhbU5hbWVzW2ldLCBwYXJhbVZhbHVlc1tpXSk7
CiAgICAgICAgICAgICBDT01QdHI8SVByb3BlcnR5QmFnPiB2aWV3QXJndW1lbnRzQmFnKEFkb3B0
Q09NLCBDT01Qcm9wZXJ0eUJhZzxTdHJpbmc+OjphZG9wdCh2aWV3QXJndW1lbnRzKSk7Ci0gICAg
ICAgICAgICBDT01QdHI8SURPTUVsZW1lbnQ+IGNvbnRhaW5pbmdFbGVtZW50KEFkb3B0Q09NLCBE
T01FbGVtZW50OjpjcmVhdGVJbnN0YW5jZShlbGVtZW50KSk7CisgICAgICAgICAgICBDT01QdHI8
SURPTUVsZW1lbnQ+IGNvbnRhaW5pbmdFbGVtZW50KEFkb3B0Q09NLCBET01FbGVtZW50OjpjcmVh
dGVJbnN0YW5jZSgmZWxlbWVudCkpOwogCiAgICAgICAgICAgICBIYXNoTWFwPFN0cmluZywgQ09N
VmFyaWFudD4gYXJndW1lbnRzOwogCkBAIC0xMTYyLDEzICsxMTU0LDEzIEBAIFJlZlB0cjxXaWRn
ZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYgcGx1
Z2luU2l6ZSwgSFRNCiAgICAgICAgICAgICAgICAgSFJFU1VMVCBociA9IHdlYlZpZXctPnZpZXdX
aW5kb3coJnBhcmVudFdpbmRvdyk7CiAgICAgICAgICAgICAgICAgQVNTRVJUKFNVQ0NFRURFRCho
cikpOwogCi0gICAgICAgICAgICAgICAgcmV0dXJuIEVtYmVkZGVkV2lkZ2V0OjpjcmVhdGUodmll
dy5nZXQoKSwgZWxlbWVudCwgcGFyZW50V2luZG93LCBwbHVnaW5TaXplKTsKKyAgICAgICAgICAg
ICAgICByZXR1cm4gRW1iZWRkZWRXaWRnZXQ6OmNyZWF0ZSh2aWV3LmdldCgpLCAmZWxlbWVudCwg
cGFyZW50V2luZG93LCBwbHVnaW5TaXplKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAg
IH0KIAogICAgIEZyYW1lKiBmcmFtZSA9IGNvcmUobV93ZWJGcmFtZSk7Ci0gICAgUmVmUHRyPFBs
dWdpblZpZXc+IHBsdWdpblZpZXcgPSBQbHVnaW5WaWV3OjpjcmVhdGUoZnJhbWUsIHBsdWdpblNp
emUsIGVsZW1lbnQsIHVybCwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMsIG1pbWVUeXBlLCBsb2Fk
TWFudWFsbHkpOworICAgIFJlZlB0cjxQbHVnaW5WaWV3PiBwbHVnaW5WaWV3ID0gUGx1Z2luVmll
dzo6Y3JlYXRlKGZyYW1lLCBwbHVnaW5TaXplLCAmZWxlbWVudCwgdXJsLCBwYXJhbU5hbWVzLCBw
YXJhbVZhbHVlcywgbWltZVR5cGUsIGxvYWRNYW51YWxseSk7CiAKICAgICBpZiAocGx1Z2luVmll
dy0+c3RhdHVzKCkgPT0gUGx1Z2luU3RhdHVzTG9hZGVkU3VjY2Vzc2Z1bGx5KQogICAgICAgICBy
ZXR1cm4gcGx1Z2luVmlldzsKQEAgLTExODcsMTggKzExNzksMTggQEAgdm9pZCBXZWJGcmFtZUxv
YWRlckNsaWVudDo6cmVkaXJlY3REYXRhVG9QbHVnaW4oV2lkZ2V0KiBwbHVnaW5XaWRnZXQpCiAg
ICAgICAgIG1fbWFudWFsTG9hZGVyID0gc3RhdGljX2Nhc3Q8RW1iZWRkZWRXaWRnZXQqPihwbHVn
aW5XaWRnZXQpOwogfQogCi1QYXNzUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYgcGx1Z2luU2l6ZSwgSFRNTEFw
cGxldEVsZW1lbnQqIGVsZW1lbnQsIGNvbnN0IFVSTCYgLypiYXNlVVJMKi8sIGNvbnN0IFZlY3Rv
cjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMp
CitSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlSmF2YUFwcGxldFdp
ZGdldChjb25zdCBJbnRTaXplJiBwbHVnaW5TaXplLCBIVE1MQXBwbGV0RWxlbWVudCYgZWxlbWVu
dCwgY29uc3QgVVJMJiAvKmJhc2VVUkwqLywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFt
ZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykKIHsKLSAgICBSZWZQdHI8UGx1
Z2luVmlldz4gcGx1Z2luVmlldyA9IFBsdWdpblZpZXc6OmNyZWF0ZShjb3JlKG1fd2ViRnJhbWUp
LCBwbHVnaW5TaXplLCBlbGVtZW50LCBVUkwoKSwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMsICJh
cHBsaWNhdGlvbi94LWphdmEtYXBwbGV0IiwgZmFsc2UpOworICAgIFJlZlB0cjxQbHVnaW5WaWV3
PiBwbHVnaW5WaWV3ID0gUGx1Z2luVmlldzo6Y3JlYXRlKGNvcmUobV93ZWJGcmFtZSksIHBsdWdp
blNpemUsICZlbGVtZW50LCBVUkwoKSwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMsICJhcHBsaWNh
dGlvbi94LWphdmEtYXBwbGV0IiwgZmFsc2UpOwogCiAgICAgLy8gQ2hlY2sgaWYgdGhlIHBsdWdp
biBjYW4gYmUgbG9hZGVkIHN1Y2Nlc3NmdWxseQogICAgIGlmIChwbHVnaW5WaWV3LT5wbHVnaW4o
KSAmJiBwbHVnaW5WaWV3LT5wbHVnaW4oKS0+bG9hZCgpKQotICAgICAgICByZXR1cm4gcGx1Z2lu
VmlldzsKKyAgICAgICAgcmV0dXJuIFdURk1vdmUocGx1Z2luVmlldyk7CiAKICAgICBXZWJWaWV3
KiB3ZWJWaWV3ID0gbV93ZWJGcmFtZS0+d2ViVmlldygpOwogICAgIENPTVB0cjxJV2ViUmVzb3Vy
Y2VMb2FkRGVsZWdhdGU+IHJlc291cmNlTG9hZERlbGVnYXRlOwogICAgIGlmIChGQUlMRUQod2Vi
Vmlldy0+cmVzb3VyY2VMb2FkRGVsZWdhdGUoJnJlc291cmNlTG9hZERlbGVnYXRlKSkpCi0gICAg
ICAgIHJldHVybiBwbHVnaW5WaWV3OworICAgICAgICByZXR1cm4gV1RGTW92ZShwbHVnaW5WaWV3
KTsKIAogICAgIENPTVB0cjxDRkRpY3Rpb25hcnlQcm9wZXJ0eUJhZz4gdXNlckluZm9CYWcgPSBD
RkRpY3Rpb25hcnlQcm9wZXJ0eUJhZzo6Y3JlYXRlSW5zdGFuY2UoKTsKIApAQCAtMTIxMCw3ICsx
MjAyLDcgQEAgUGFzc1JlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVK
YXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmIHAKIAogICAgIHJlc291cmNlTG9hZERlbGVn
YXRlLT5wbHVnSW5GYWlsZWRXaXRoRXJyb3Iod2ViVmlldywgZXJyb3IuZ2V0KCksIGdldFdlYkRh
dGFTb3VyY2UoY29yZUZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKSk7CiAKLSAgICBy
ZXR1cm4gcGx1Z2luVmlldzsKKyAgICByZXR1cm4gV1RGTW92ZShwbHVnaW5WaWV3KTsKIH0KIAog
V2ViSGlzdG9yeSogV2ViRnJhbWVMb2FkZXJDbGllbnQ6OndlYkhpc3RvcnkoKSBjb25zdApAQCAt
MTI2MCw3ICsxMjUyLDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6cmVnaXN0ZXJGb3JJ
Y29uTm90aWZpY2F0aW9uKGJvb2wgbGlzdGVuKQogICAgIG1fd2ViRnJhbWUtPndlYlZpZXcoKS0+
cmVnaXN0ZXJGb3JJY29uTm90aWZpY2F0aW9uKGxpc3Rlbik7CiB9CiAKLVBhc3NSZWZQdHI8RnJh
bWVOZXR3b3JraW5nQ29udGV4dD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtp
bmdDb250ZXh0KCkKK1JlZjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBXZWJGcmFtZUxvYWRlckNs
aWVudDo6Y3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKQogewogICAgIHJldHVybiBXZWJGcmFtZU5l
dHdvcmtpbmdDb250ZXh0OjpjcmVhdGUoY29yZShtX3dlYkZyYW1lKSk7CiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5o
IGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQu
aAppbmRleCA4Y2E5YjlkZWNkMTljZWM5N2U0YmE3ZDNkNTE2ODY0Y2UxODllZTc4Li4yYTM5ZmE0
ZjExNWE5NjcxOTA1YThmMDNkZGEzMjcwMDgwMmEwYzhkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKQEAgLTEs
NSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTYgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTcgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC00
OSw5ICs0OSwxMSBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRXZWJGcmFtZShXZWJGcmFtZSogd2Vi
RnJhbWUpIHsgbV93ZWJGcmFtZSA9IHdlYkZyYW1lOyB9CiAgICAgV2ViRnJhbWUqIHdlYkZyYW1l
KCkgY29uc3QgeyByZXR1cm4gbV93ZWJGcmFtZTsgfQogCi0gICAgdmlydHVhbCBib29sIGhhc1dl
YlZpZXcoKSBjb25zdDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbFRvU3RhcnRQbHVnaW4oY29u
c3QgV2ViQ29yZTo6UGx1Z2luVmlldyopIGNvbnN0OwogCi0gICAgdmlydHVhbCBQYXNzUmVmUHRy
PFdlYkNvcmU6OkZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0
KCk7CisgICAgYm9vbCBoYXNXZWJWaWV3KCkgY29uc3Qgb3ZlcnJpZGU7CisKKyAgICBSZWY8V2Vi
Q29yZTo6RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKSBv
dmVycmlkZTsKIAogICAgIHZvaWQgZnJhbWVMb2FkZXJEZXN0cm95ZWQoKSBvdmVycmlkZTsKICAg
ICB2b2lkIG1ha2VSZXByZXNlbnRhdGlvbihXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIG92ZXJy
aWRlOwpAQCAtNjMsNyArNjUsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBkZXRhY2hlZEZyb21QYXJl
bnQzKCkgb3ZlcnJpZGU7CiAKICAgICB2b2lkIGNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3du
bG9hZChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlNlc3Npb25JRCwgY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25z
ZSYpIG92ZXJyaWRlOwotICAgIHZpcnR1YWwgdm9pZCBhc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFs
UmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
KiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jik7CisgICAgdm9pZCBhc3NpZ25JZGVu
dGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJp
ZGU7CiAKICAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKSBv
dmVycmlkZTsKICAgICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBvdmVycmlkZTsKQEAgLTcy
LDcgKzc0LDcgQEAgcHVibGljOgogICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExl
bmd0aChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
aW50IGRhdGFMZW5ndGgpIG92ZXJyaWRlOwogICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2Fk
aW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBv
dmVycmlkZTsKICAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbExvYWRpbmcoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlRXJyb3ImKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkQ2FjaGVSZXNwb25z
ZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IHVuc2lnbmVkIGNoYXIqIGRhdGEs
IHVuc2lnbmVkIGxvbmcgbG9uZyBsZW5ndGgpOworICAgIGJvb2wgc2hvdWxkQ2FjaGVSZXNwb25z
ZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IHVuc2lnbmVkIGNoYXIqIGRhdGEs
IHVuc2lnbmVkIGxvbmcgbG9uZyBsZW5ndGgpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBkaXNwYXRj
aERpZERpc3BhdGNoT25sb2FkRXZlbnRzKCkgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaXNwYXRjaERp
ZFJlY2VpdmVTZXJ2ZXJSZWRpcmVjdEZvclByb3Zpc2lvbmFsTG9hZCgpIG92ZXJyaWRlOwpAQCAt
OTQsMTQgKzk2LDE0IEBAIHB1YmxpYzoKICAgICB2b2lkIGRpc3BhdGNoRGlkUmVhY2hMYXlvdXRN
aWxlc3RvbmUoV2ViQ29yZTo6TGF5b3V0TWlsZXN0b25lcykgb3ZlcnJpZGU7CiAKICAgICB2b2lk
IGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VS
ZXNwb25zZSYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFdlYkNvcmU6OkZyYW1l
UG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lG
b3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0YXRl
PiwgY29uc3QgV1RGOjpTdHJpbmcmIGZyYW1lTmFtZSwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5j
dGlvbikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRp
b25BY3Rpb24oY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlUmVxdWVzdCYsIFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0YXRlPiwgV2ViQ29y
ZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERlY2lk
ZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9u
JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgV2ViQ29yZTo6Rm9ybVN0YXRlKiwg
Y29uc3QgV1RGOjpTdHJpbmcmIGZyYW1lTmFtZSwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlv
bikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25B
Y3Rpb24oY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCYsIFdlYkNvcmU6OkZvcm1TdGF0ZSosIFdlYkNvcmU6OkZyYW1lUG9saWN5
RnVuY3Rpb24pIG92ZXJyaWRlOwogICAgIHZvaWQgY2FuY2VsUG9saWN5Q2hlY2soKSBvdmVycmlk
ZTsKIAogICAgIHZvaWQgZGlzcGF0Y2hVbmFibGVUb0ltcGxlbWVudFBvbGljeShjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7CiAKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFNl
bmRTdWJtaXRFdmVudChQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4pIG92ZXJyaWRlOwot
ICAgIHZvaWQgZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1T
dGF0ZT4sIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOworICAgIHZvaWQg
ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJlZjxXZWJDb3JlOjpGb3JtU3RhdGU+JiYpIG92
ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShXZWJDb3JlOjpGb3JtU3Rh
dGUmLCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBvdmVycmlkZTsKIAogICAgIHZvaWQg
cmV2ZXJ0VG9Qcm92aXNpb25hbFN0YXRlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgb3ZlcnJp
ZGU7CiAgICAgYm9vbCBkaXNwYXRjaERpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShXZWJD
b3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBpbnQgbGVuZ3RoKSBvdmVycmlkZTsKQEAg
LTExNCw5ICsxMTYsOSBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHN0YXJ0RG93bmxvYWQoY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgU3RyaW5nJiBzdWdnZXN0ZWROYW1lID0g
U3RyaW5nKCkpIG92ZXJyaWRlOwogCi0gICAgdmlydHVhbCB2b2lkIHByb2dyZXNzU3RhcnRlZChX
ZWJDb3JlOjpGcmFtZSYpOwotICAgIHZpcnR1YWwgdm9pZCBwcm9ncmVzc0VzdGltYXRlQ2hhbmdl
ZChXZWJDb3JlOjpGcmFtZSYpOwotICAgIHZpcnR1YWwgdm9pZCBwcm9ncmVzc0ZpbmlzaGVkKFdl
YkNvcmU6OkZyYW1lJik7CisgICAgdm9pZCBwcm9ncmVzc1N0YXJ0ZWQoV2ViQ29yZTo6RnJhbWUm
KSBvdmVycmlkZTsKKyAgICB2b2lkIHByb2dyZXNzRXN0aW1hdGVDaGFuZ2VkKFdlYkNvcmU6OkZy
YW1lJikgb3ZlcnJpZGU7CisgICAgdm9pZCBwcm9ncmVzc0ZpbmlzaGVkKFdlYkNvcmU6OkZyYW1l
Jikgb3ZlcnJpZGU7CiAKICAgICB2b2lkIGNvbW1pdHRlZExvYWQoV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXIqLCBjb25zdCBjaGFyKiwgaW50KSBvdmVycmlkZTsKICAgICB2b2lkIGZpbmlzaGVkTG9h
ZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIG92ZXJyaWRlOwpAQCAtMTQ5LDEwICsxNTEs
MTAgQEAgcHVibGljOgogCiAgICAgV1RGOjpTdHJpbmcgdXNlckFnZW50KGNvbnN0IFdlYkNvcmU6
OlVSTCYpIG92ZXJyaWRlOwogCi0gICAgdmlydHVhbCBSZWY8V2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXI+IGNyZWF0ZURvY3VtZW50TG9hZGVyKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYs
IGNvbnN0IFdlYkNvcmU6OlN1YnN0aXR1dGVEYXRhJik7CisgICAgUmVmPFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyPiBjcmVhdGVEb2N1bWVudExvYWRlcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QmLCBjb25zdCBXZWJDb3JlOjpTdWJzdGl0dXRlRGF0YSYpIG92ZXJyaWRlOwogICAgIHZv
aWQgdXBkYXRlQ2FjaGVkRG9jdW1lbnRMb2FkZXIoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXImKSBv
dmVycmlkZSB7IH0KIAotICAgIHZpcnR1YWwgdm9pZCBzZXRUaXRsZShjb25zdCBXZWJDb3JlOjpT
dHJpbmdXaXRoRGlyZWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6VVJMJik7CisgICAgdm9pZCBzZXRU
aXRsZShjb25zdCBXZWJDb3JlOjpTdHJpbmdXaXRoRGlyZWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6
VVJMJikgb3ZlcnJpZGU7CiAKICAgICB2b2lkIHNhdmVQbGF0Zm9ybURhdGFUb0NhY2hlZEZyYW1l
KFdlYkNvcmU6OkNhY2hlZEZyYW1lKikgb3ZlcnJpZGU7CiAgICAgdm9pZCB0cmFuc2l0aW9uVG9D
b21taXR0ZWRGcm9tQ2FjaGVkRnJhbWUoV2ViQ29yZTo6Q2FjaGVkRnJhbWUqKSBvdmVycmlkZTsK
QEAgLTE3NiwxNSArMTc4LDE1IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgZGlzcGF0Y2hEaWRCZWNv
bWVGcmFtZXNldChib29sKSBvdmVycmlkZTsKIAotICAgIHZpcnR1YWwgYm9vbCBjYW5DYWNoZVBh
Z2UoKSBjb25zdDsKKyAgICBib29sIGNhbkNhY2hlUGFnZSgpIGNvbnN0IG92ZXJyaWRlOwogCi0g
ICAgUmVmUHRyPFdlYkNvcmU6OkZyYW1lPiBjcmVhdGVGcmFtZShjb25zdCBXZWJDb3JlOjpVUkwm
LCBjb25zdCBXVEY6OlN0cmluZyYgbmFtZSwgV2ViQ29yZTo6SFRNTEZyYW1lT3duZXJFbGVtZW50
KiwKKyAgICBSZWZQdHI8V2ViQ29yZTo6RnJhbWU+IGNyZWF0ZUZyYW1lKGNvbnN0IFdlYkNvcmU6
OlVSTCYsIGNvbnN0IFdURjo6U3RyaW5nJiBuYW1lLCBXZWJDb3JlOjpIVE1MRnJhbWVPd25lckVs
ZW1lbnQmLAogICAgICAgICBjb25zdCBXVEY6OlN0cmluZyYgcmVmZXJyZXIsIGJvb2wgYWxsb3dz
U2Nyb2xsaW5nLCBpbnQgbWFyZ2luV2lkdGgsIGludCBtYXJnaW5IZWlnaHQpIG92ZXJyaWRlOwot
ICAgIFJlZlB0cjxXZWJDb3JlOjpXaWRnZXQ+IGNyZWF0ZVBsdWdpbihjb25zdCBXZWJDb3JlOjpJ
bnRTaXplJiwgV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQqLCBjb25zdCBXZWJDb3JlOjpVUkwm
LCBjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFdURjo6U3RyaW5nPiYs
IGNvbnN0IFdURjo6U3RyaW5nJiwgYm9vbCBsb2FkTWFudWFsbHkpIG92ZXJyaWRlOworICAgIFJl
ZlB0cjxXZWJDb3JlOjpXaWRnZXQ+IGNyZWF0ZVBsdWdpbihjb25zdCBXZWJDb3JlOjpJbnRTaXpl
JiwgV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQmLCBjb25zdCBXZWJDb3JlOjpVUkwmLCBjb25z
dCBWZWN0b3I8V1RGOjpTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFdURjo6U3RyaW5nPiYsIGNvbnN0
IFdURjo6U3RyaW5nJiwgYm9vbCBsb2FkTWFudWFsbHkpIG92ZXJyaWRlOwogICAgIHZvaWQgcmVj
cmVhdGVQbHVnaW4oV2ViQ29yZTo6V2lkZ2V0Kikgb3ZlcnJpZGUgeyB9CiAgICAgdm9pZCByZWRp
cmVjdERhdGFUb1BsdWdpbihXZWJDb3JlOjpXaWRnZXQqIHBsdWdpbldpZGdldCkgb3ZlcnJpZGU7
CiAKLSAgICBQYXNzUmVmUHRyPFdlYkNvcmU6OldpZGdldD4gY3JlYXRlSmF2YUFwcGxldFdpZGdl
dChjb25zdCBXZWJDb3JlOjpJbnRTaXplJiwgV2ViQ29yZTo6SFRNTEFwcGxldEVsZW1lbnQqLCBj
b25zdCBXZWJDb3JlOjpVUkwmIGJhc2VVUkwsIGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mIHBh
cmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mIHBhcmFtVmFsdWVzKSBvdmVycmlk
ZTsKKyAgICBSZWZQdHI8V2ViQ29yZTo6V2lkZ2V0PiBjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNv
bnN0IFdlYkNvcmU6OkludFNpemUmLCBXZWJDb3JlOjpIVE1MQXBwbGV0RWxlbWVudCYsIGNvbnN0
IFdlYkNvcmU6OlVSTCYgYmFzZVVSTCwgY29uc3QgVmVjdG9yPFdURjo6U3RyaW5nPiYgcGFyYW1O
YW1lcywgY29uc3QgVmVjdG9yPFdURjo6U3RyaW5nPiYgcGFyYW1WYWx1ZXMpIG92ZXJyaWRlOwog
CiAgICAgV2ViQ29yZTo6T2JqZWN0Q29udGVudFR5cGUgb2JqZWN0Q29udGVudFR5cGUoY29uc3Qg
V2ViQ29yZTo6VVJMJiwgY29uc3QgV1RGOjpTdHJpbmcmIG1pbWVUeXBlKSBvdmVycmlkZTsKICAg
ICBXVEY6OlN0cmluZyBvdmVycmlkZU1lZGlhVHlwZSgpIGNvbnN0IG92ZXJyaWRlOwpAQCAtMTk2
LDIwICsxOTgsMTYgQEAgcHVibGljOgogCiAgICAgdm9pZCByZWdpc3RlckZvckljb25Ob3RpZmlj
YXRpb24oYm9vbCBsaXN0ZW4pIG92ZXJyaWRlOwogCi0gICAgdmlydHVhbCBib29sIHNob3VsZEFs
d2F5c1VzZVBsdWdpbkRvY3VtZW50KGNvbnN0IFdURjo6U3RyaW5nJiBtaW1lVHlwZSkgY29uc3Q7
Ci0KLSAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hEaWRGYWlsVG9TdGFydFBsdWdpbihjb25zdCBX
ZWJDb3JlOjpQbHVnaW5WaWV3KikgY29uc3Q7CisgICAgYm9vbCBzaG91bGRBbHdheXNVc2VQbHVn
aW5Eb2N1bWVudChjb25zdCBXVEY6OlN0cmluZyYgbWltZVR5cGUpIGNvbnN0IG92ZXJyaWRlOwog
CiAgICAgdm9pZCBwcmVmZXRjaEROUyhjb25zdCBTdHJpbmcmKSBvdmVycmlkZTsKIAotcHJvdGVj
dGVkOgotICAgIGNsYXNzIFdlYkZyYW1lUG9saWN5TGlzdGVuZXJQcml2YXRlOwotICAgIHN0ZDo6
dW5pcXVlX3B0cjxXZWJGcmFtZVBvbGljeUxpc3RlbmVyUHJpdmF0ZT4gbV9wb2xpY3lMaXN0ZW5l
clByaXZhdGU7Ci0KIHByaXZhdGU6Ci0gICAgUmVmUHRyPFdlYkNvcmU6OkZyYW1lPiBjcmVhdGVG
cmFtZShjb25zdCBXZWJDb3JlOjpVUkwmLCBjb25zdCBXVEY6OlN0cmluZyYgbmFtZSwgV2ViQ29y
ZTo6SFRNTEZyYW1lT3duZXJFbGVtZW50KiwgY29uc3QgV1RGOjpTdHJpbmcmIHJlZmVycmVyKTsK
ICAgICBXZWJIaXN0b3J5KiB3ZWJIaXN0b3J5KCkgY29uc3Q7CiAKKyAgICBjbGFzcyBXZWJGcmFt
ZVBvbGljeUxpc3RlbmVyUHJpdmF0ZTsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8V2ViRnJhbWVQb2xp
Y3lMaXN0ZW5lclByaXZhdGU+IG1fcG9saWN5TGlzdGVuZXJQcml2YXRlOworCiAgICAgV2ViRnJh
bWUqIG1fd2ViRnJhbWU7CiAKICAgICAvLyBQb2ludHMgdG8gdGhlIG1hbnVhbCBsb2FkZXIgdGhh
dCBkYXRhIHNob3VsZCBiZSByZWRpcmVjdGVkIHRvLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dC5oIGIvU291cmNl
L1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dC5oCmlu
ZGV4IGVhYzMwNzIwYWMxYTU0Zjg2NTEwMWJmZjUxNDBjNzRkZTBhZmIwZjkuLmZiMmE3ODM1ZDhm
ODczOWQ0YzE1MGFiNTI4M2U1YjdkMjBiNThlYWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
d2luL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0LmgK
QEAgLTI4LDkgKzI4LDkgQEAKIAogY2xhc3MgV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dCA6IHB1
YmxpYyBXZWJDb3JlOjpGcmFtZU5ldHdvcmtpbmdDb250ZXh0IHsKIHB1YmxpYzoKLSAgICBzdGF0
aWMgUGFzc1JlZlB0cjxXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBjcmVhdGUoV2ViQ29yZTo6
RnJhbWUqIGZyYW1lKQorICAgIHN0YXRpYyBSZWY8V2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dD4g
Y3JlYXRlKFdlYkNvcmU6OkZyYW1lKiBmcmFtZSkKICAgICB7Ci0gICAgICAgIHJldHVybiBhZG9w
dFJlZihuZXcgV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dChmcmFtZSkpOworICAgICAgICByZXR1
cm4gYWRvcHRSZWYoKm5ldyBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0KGZyYW1lKSk7CiAgICAg
fQogCiAjaWYgVVNFKENGVVJMQ09OTkVDVElPTikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1NoYXJlZC9BUElXZWJBcmNoaXZlLmggYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJV2ViQXJj
aGl2ZS5oCmluZGV4IGQ5NmI1OTZkYWJmYmU5MDY4YWM1MzQxMDY4N2JmYTJkMTg2MThiMjMuLjgz
NzU3NzdkYjgwZmUwN2VhYzgzNDkzMDMzYmQxODY0YWJhYzdhNzEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL1NoYXJlZC9BUElXZWJBcmNoaXZlLmgKKysrIGIvU291cmNlL1dlYktpdDIvU2hh
cmVkL0FQSVdlYkFyY2hpdmUuaApAQCAtMjksNyArMjksNiBAQAogI2lmIFBMQVRGT1JNKENPQ09B
KQogCiAjaW5jbHVkZSAiQVBJT2JqZWN0LmgiCi0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4K
ICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAKIG5hbWVzcGFjZSBBUEkgewpAQCAtNTAsOSArNDks
OSBAQCBjbGFzcyBXZWJBcmNoaXZlIDogcHVibGljIEFQSTo6T2JqZWN0SW1wbDxBUEk6Ok9iamVj
dDo6VHlwZTo6V2ViQXJjaGl2ZT4gewogcHVibGljOgogICAgIHZpcnR1YWwgfldlYkFyY2hpdmUo
KTsKIAotICAgIHN0YXRpYyBSZWY8V2ViQXJjaGl2ZT4gY3JlYXRlKFdlYkFyY2hpdmVSZXNvdXJj
ZSogbWFpblJlc291cmNlLCBQYXNzUmVmUHRyPEFQSTo6QXJyYXk+IHN1YnJlc291cmNlcywgUGFz
c1JlZlB0cjxBUEk6OkFycmF5PiBzdWJmcmFtZUFyY2hpdmVzKTsKKyAgICBzdGF0aWMgUmVmPFdl
YkFyY2hpdmU+IGNyZWF0ZShXZWJBcmNoaXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSwgUmVmUHRy
PEFQSTo6QXJyYXk+JiYgc3VicmVzb3VyY2VzLCBSZWZQdHI8QVBJOjpBcnJheT4mJiBzdWJmcmFt
ZUFyY2hpdmVzKTsKICAgICBzdGF0aWMgUmVmPFdlYkFyY2hpdmU+IGNyZWF0ZShBUEk6OkRhdGEq
KTsKLSAgICBzdGF0aWMgUmVmPFdlYkFyY2hpdmU+IGNyZWF0ZShQYXNzUmVmUHRyPFdlYkNvcmU6
OkxlZ2FjeVdlYkFyY2hpdmU+KTsKKyAgICBzdGF0aWMgUmVmPFdlYkFyY2hpdmU+IGNyZWF0ZShS
ZWZQdHI8V2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZT4mJik7CiAgICAgc3RhdGljIFJlZjxXZWJB
cmNoaXZlPiBjcmVhdGUoV2ViQ29yZTo6UmFuZ2UqKTsKIAogICAgIFdlYkFyY2hpdmVSZXNvdXJj
ZSogbWFpblJlc291cmNlKCk7CkBAIC02NCw5ICs2Myw5IEBAIHB1YmxpYzoKICAgICBXZWJDb3Jl
OjpMZWdhY3lXZWJBcmNoaXZlKiBjb3JlTGVnYWN5V2ViQXJjaGl2ZSgpOwogCiBwcml2YXRlOgot
ICAgIFdlYkFyY2hpdmUoV2ViQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3VyY2UsIFBhc3NSZWZQ
dHI8QVBJOjpBcnJheT4gc3VicmVzb3VyY2VzLCBQYXNzUmVmUHRyPEFQSTo6QXJyYXk+IHN1YmZy
YW1lQXJjaGl2ZXMpOworICAgIFdlYkFyY2hpdmUoV2ViQXJjaGl2ZVJlc291cmNlKiBtYWluUmVz
b3VyY2UsIFJlZlB0cjxBUEk6OkFycmF5PiYmIHN1YnJlc291cmNlcywgUmVmUHRyPEFQSTo6QXJy
YXk+JiYgc3ViZnJhbWVBcmNoaXZlcyk7CiAgICAgV2ViQXJjaGl2ZShBUEk6OkRhdGEqKTsKLSAg
ICBXZWJBcmNoaXZlKFBhc3NSZWZQdHI8V2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZT4pOworICAg
IFdlYkFyY2hpdmUoUmVmUHRyPFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hpdmU+JiYpOwogCiAgICAg
UmVmUHRyPFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hpdmU+IG1fbGVnYWN5V2ViQXJjaGl2ZTsKICAg
ICBSZWZQdHI8V2ViQXJjaGl2ZVJlc291cmNlPiBtX2NhY2hlZE1haW5SZXNvdXJjZTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUElXZWJBcmNoaXZlLm1tIGIvU291cmNlL1dl
YktpdDIvU2hhcmVkL0FQSVdlYkFyY2hpdmUubW0KaW5kZXggOTI5MDNiMzQ3YTQ5ZmNlY2ZhNmMz
NWM1OWUyZjZkNjkxNmQ5ODJlOS4uZjJmMGZlMDE3MWY5ZTMzMzE0NDdkMzZkMGE0N2M2ZGJlMDFh
MjMyZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSVdlYkFyY2hpdmUubW0K
KysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSVdlYkFyY2hpdmUubW0KQEAgLTM4LDkgKzM4
LDkgQEAgdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKIG5hbWVzcGFjZSBBUEkgewogCi1SZWY8
V2ViQXJjaGl2ZT4gV2ViQXJjaGl2ZTo6Y3JlYXRlKFdlYkFyY2hpdmVSZXNvdXJjZSogbWFpblJl
c291cmNlLCBQYXNzUmVmUHRyPEFQSTo6QXJyYXk+IHN1YnJlc291cmNlcywgUGFzc1JlZlB0cjxB
UEk6OkFycmF5PiBzdWJmcmFtZUFyY2hpdmVzKQorUmVmPFdlYkFyY2hpdmU+IFdlYkFyY2hpdmU6
OmNyZWF0ZShXZWJBcmNoaXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSwgUmVmUHRyPEFQSTo6QXJy
YXk+JiYgc3VicmVzb3VyY2VzLCBSZWZQdHI8QVBJOjpBcnJheT4mJiBzdWJmcmFtZUFyY2hpdmVz
KQogewotICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYkFyY2hpdmUobWFpblJlc291cmNlLCBz
dWJyZXNvdXJjZXMsIHN1YmZyYW1lQXJjaGl2ZXMpKTsKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5l
dyBXZWJBcmNoaXZlKG1haW5SZXNvdXJjZSwgV1RGTW92ZShzdWJyZXNvdXJjZXMpLCBXVEZNb3Zl
KHN1YmZyYW1lQXJjaGl2ZXMpKSk7CiB9CiAKIFJlZjxXZWJBcmNoaXZlPiBXZWJBcmNoaXZlOjpj
cmVhdGUoQVBJOjpEYXRhKiBkYXRhKQpAQCAtNDgsOSArNDgsOSBAQCBSZWY8V2ViQXJjaGl2ZT4g
V2ViQXJjaGl2ZTo6Y3JlYXRlKEFQSTo6RGF0YSogZGF0YSkKICAgICByZXR1cm4gYWRvcHRSZWYo
Km5ldyBXZWJBcmNoaXZlKGRhdGEpKTsKIH0KIAotUmVmPFdlYkFyY2hpdmU+IFdlYkFyY2hpdmU6
OmNyZWF0ZShQYXNzUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IGxlZ2FjeVdlYkFyY2hpdmUpCitS
ZWY8V2ViQXJjaGl2ZT4gV2ViQXJjaGl2ZTo6Y3JlYXRlKFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZl
PiYmIGxlZ2FjeVdlYkFyY2hpdmUpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgV2ViQXJj
aGl2ZShsZWdhY3lXZWJBcmNoaXZlKSk7CisgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgV2ViQXJj
aGl2ZShsZWdhY3lXZWJBcmNoaXZlLnJlbGVhc2VOb25OdWxsKCkpKTsKIH0KIAogUmVmPFdlYkFy
Y2hpdmU+IFdlYkFyY2hpdmU6OmNyZWF0ZShSYW5nZSogcmFuZ2UpCkBAIC01OCwzMSArNTgsMzIg
QEAgUmVmPFdlYkFyY2hpdmU+IFdlYkFyY2hpdmU6OmNyZWF0ZShSYW5nZSogcmFuZ2UpCiAgICAg
cmV0dXJuIGFkb3B0UmVmKCpuZXcgV2ViQXJjaGl2ZShMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUo
cmFuZ2UpKSk7CiB9CiAKLVdlYkFyY2hpdmU6OldlYkFyY2hpdmUoV2ViQXJjaGl2ZVJlc291cmNl
KiBtYWluUmVzb3VyY2UsIFBhc3NSZWZQdHI8QVBJOjpBcnJheT4gc3VicmVzb3VyY2VzLCBQYXNz
UmVmUHRyPEFQSTo6QXJyYXk+IHN1YmZyYW1lQXJjaGl2ZXMpCitXZWJBcmNoaXZlOjpXZWJBcmNo
aXZlKFdlYkFyY2hpdmVSZXNvdXJjZSogbWFpblJlc291cmNlLCBSZWZQdHI8QVBJOjpBcnJheT4m
JiBzdWJyZXNvdXJjZXMsIFJlZlB0cjxBUEk6OkFycmF5PiYmIHN1YmZyYW1lQXJjaGl2ZXMpCiAg
ICAgOiBtX2NhY2hlZE1haW5SZXNvdXJjZShtYWluUmVzb3VyY2UpCiAgICAgLCBtX2NhY2hlZFN1
YnJlc291cmNlcyhzdWJyZXNvdXJjZXMpCiAgICAgLCBtX2NhY2hlZFN1YmZyYW1lQXJjaGl2ZXMo
c3ViZnJhbWVBcmNoaXZlcykKIHsKLSAgICBSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBjb3JlTWFp
blJlc291cmNlID0gbV9jYWNoZWRNYWluUmVzb3VyY2UtPmNvcmVBcmNoaXZlUmVzb3VyY2UoKTsK
KyAgICBhdXRvIGNvcmVNYWluUmVzb3VyY2UgPSBtX2NhY2hlZE1haW5SZXNvdXJjZS0+Y29yZUFy
Y2hpdmVSZXNvdXJjZSgpOwogCi0gICAgVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+PiBj
b3JlQXJjaGl2ZVJlc291cmNlczsKKyAgICBWZWN0b3I8UmVmPEFyY2hpdmVSZXNvdXJjZT4+IGNv
cmVBcmNoaXZlUmVzb3VyY2VzOwogICAgIGNvcmVBcmNoaXZlUmVzb3VyY2VzLnJlc2VydmVJbml0
aWFsQ2FwYWNpdHkobV9jYWNoZWRTdWJyZXNvdXJjZXMtPnNpemUoKSk7CiAgICAgZm9yIChzaXpl
X3QgaSA9IDA7IGkgPCBtX2NhY2hlZFN1YnJlc291cmNlcy0+c2l6ZSgpOyArK2kpIHsKLSAgICAg
ICAgUmVmUHRyPFdlYkFyY2hpdmVSZXNvdXJjZT4gcmVzb3VyY2UgPSBtX2NhY2hlZFN1YnJlc291
cmNlcy0+YXQ8V2ViQXJjaGl2ZVJlc291cmNlPihpKTsKKyAgICAgICAgYXV0byByZXNvdXJjZSA9
IG1fY2FjaGVkU3VicmVzb3VyY2VzLT5hdDxXZWJBcmNoaXZlUmVzb3VyY2U+KGkpOwogICAgICAg
ICBBU1NFUlQocmVzb3VyY2UpOwotICAgICAgICBjb3JlQXJjaGl2ZVJlc291cmNlcy51bmNoZWNr
ZWRBcHBlbmQocmVzb3VyY2UtPmNvcmVBcmNoaXZlUmVzb3VyY2UoKSk7CisgICAgICAgIEFTU0VS
VChyZXNvdXJjZS0+Y29yZUFyY2hpdmVSZXNvdXJjZSgpKTsKKyAgICAgICAgY29yZUFyY2hpdmVS
ZXNvdXJjZXMudW5jaGVja2VkQXBwZW5kKCpyZXNvdXJjZS0+Y29yZUFyY2hpdmVSZXNvdXJjZSgp
KTsKICAgICB9CiAKLSAgICBWZWN0b3I8UmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+PiBjb3JlU3Vi
ZnJhbWVMZWdhY3lXZWJBcmNoaXZlczsKKyAgICBWZWN0b3I8UmVmPExlZ2FjeVdlYkFyY2hpdmU+
PiBjb3JlU3ViZnJhbWVMZWdhY3lXZWJBcmNoaXZlczsKICAgICBjb3JlU3ViZnJhbWVMZWdhY3lX
ZWJBcmNoaXZlcy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KG1fY2FjaGVkU3ViZnJhbWVBcmNoaXZl
cy0+c2l6ZSgpKTsKLQogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9jYWNoZWRTdWJmcmFt
ZUFyY2hpdmVzLT5zaXplKCk7ICsraSkgewotICAgICAgICBSZWZQdHI8V2ViQXJjaGl2ZT4gc3Vi
ZnJhbWVXZWJBcmNoaXZlID0gbV9jYWNoZWRTdWJmcmFtZUFyY2hpdmVzLT5hdDxXZWJBcmNoaXZl
PihpKTsKKyAgICAgICAgYXV0byBzdWJmcmFtZVdlYkFyY2hpdmUgPSBtX2NhY2hlZFN1YmZyYW1l
QXJjaGl2ZXMtPmF0PFdlYkFyY2hpdmU+KGkpOwogICAgICAgICBBU1NFUlQoc3ViZnJhbWVXZWJB
cmNoaXZlKTsKLSAgICAgICAgY29yZVN1YmZyYW1lTGVnYWN5V2ViQXJjaGl2ZXMudW5jaGVja2Vk
QXBwZW5kKHN1YmZyYW1lV2ViQXJjaGl2ZS0+Y29yZUxlZ2FjeVdlYkFyY2hpdmUoKSk7CisgICAg
ICAgIEFTU0VSVChzdWJmcmFtZVdlYkFyY2hpdmUtPmNvcmVMZWdhY3lXZWJBcmNoaXZlKCkpOwor
ICAgICAgICBjb3JlU3ViZnJhbWVMZWdhY3lXZWJBcmNoaXZlcy51bmNoZWNrZWRBcHBlbmQoKnN1
YmZyYW1lV2ViQXJjaGl2ZS0+Y29yZUxlZ2FjeVdlYkFyY2hpdmUoKSk7CiAgICAgfQogCi0gICAg
bV9sZWdhY3lXZWJBcmNoaXZlID0gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFdURk1vdmUoY29y
ZU1haW5SZXNvdXJjZSksIFdURk1vdmUoY29yZUFyY2hpdmVSZXNvdXJjZXMpLCBXVEZNb3ZlKGNv
cmVTdWJmcmFtZUxlZ2FjeVdlYkFyY2hpdmVzKSk7CisgICAgbV9sZWdhY3lXZWJBcmNoaXZlID0g
TGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKCpjb3JlTWFpblJlc291cmNlLCBXVEZNb3ZlKGNvcmVB
cmNoaXZlUmVzb3VyY2VzKSwgV1RGTW92ZShjb3JlU3ViZnJhbWVMZWdhY3lXZWJBcmNoaXZlcykp
OwogfQogCiBXZWJBcmNoaXZlOjpXZWJBcmNoaXZlKEFQSTo6RGF0YSogZGF0YSkKQEAgLTkwLDcg
KzkxLDcgQEAgV2ViQXJjaGl2ZTo6V2ViQXJjaGl2ZShBUEk6OkRhdGEqIGRhdGEpCiAgICAgbV9s
ZWdhY3lXZWJBcmNoaXZlID0gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFNoYXJlZEJ1ZmZlcjo6
Y3JlYXRlKGRhdGEtPmJ5dGVzKCksIGRhdGEtPnNpemUoKSkuZ2V0KCkpOwogfQogCi1XZWJBcmNo
aXZlOjpXZWJBcmNoaXZlKFBhc3NSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gbGVnYWN5V2ViQXJj
aGl2ZSkKK1dlYkFyY2hpdmU6OldlYkFyY2hpdmUoUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+JiYg
bGVnYWN5V2ViQXJjaGl2ZSkKICAgICA6IG1fbGVnYWN5V2ViQXJjaGl2ZShsZWdhY3lXZWJBcmNo
aXZlKQogewogfQpAQCAtMTExLDEwICsxMTIsOCBAQCBBUEk6OkFycmF5KiBXZWJBcmNoaXZlOjpz
dWJyZXNvdXJjZXMoKQogICAgIGlmICghbV9jYWNoZWRTdWJyZXNvdXJjZXMpIHsKICAgICAgICAg
VmVjdG9yPFJlZlB0cjxBUEk6Ok9iamVjdD4+IHN1YnJlc291cmNlczsKICAgICAgICAgc3VicmVz
b3VyY2VzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobV9sZWdhY3lXZWJBcmNoaXZlLT5zdWJyZXNv
dXJjZXMoKS5zaXplKCkpOwotCi0gICAgICAgIGZvciAoY29uc3QgYXV0byYgc3VicmVzb3VyY2Ug
OiBtX2xlZ2FjeVdlYkFyY2hpdmUtPnN1YnJlc291cmNlcygpKQotICAgICAgICAgICAgc3VicmVz
b3VyY2VzLnVuY2hlY2tlZEFwcGVuZChXZWJBcmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShzdWJyZXNv
dXJjZSkpOwotCisgICAgICAgIGZvciAoYXV0byYgc3VicmVzb3VyY2UgOiBtX2xlZ2FjeVdlYkFy
Y2hpdmUtPnN1YnJlc291cmNlcygpKQorICAgICAgICAgICAgc3VicmVzb3VyY2VzLnVuY2hlY2tl
ZEFwcGVuZChXZWJBcmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShzdWJyZXNvdXJjZS5wdHIoKSkpOwog
ICAgICAgICBtX2NhY2hlZFN1YnJlc291cmNlcyA9IEFQSTo6QXJyYXk6OmNyZWF0ZShXVEZNb3Zl
KHN1YnJlc291cmNlcykpOwogICAgIH0KIApAQCAtMTI2LDEwICsxMjUsOCBAQCBBUEk6OkFycmF5
KiBXZWJBcmNoaXZlOjpzdWJmcmFtZUFyY2hpdmVzKCkKICAgICBpZiAoIW1fY2FjaGVkU3ViZnJh
bWVBcmNoaXZlcykgewogICAgICAgICBWZWN0b3I8UmVmUHRyPEFQSTo6T2JqZWN0Pj4gc3ViZnJh
bWVXZWJBcmNoaXZlczsKICAgICAgICAgc3ViZnJhbWVXZWJBcmNoaXZlcy5yZXNlcnZlSW5pdGlh
bENhcGFjaXR5KG1fbGVnYWN5V2ViQXJjaGl2ZS0+c3ViZnJhbWVBcmNoaXZlcygpLnNpemUoKSk7
Ci0KLSAgICAgICAgZm9yIChjb25zdCBhdXRvJiBzdWJmcmFtZUFyY2hpdmUgOiBtX2xlZ2FjeVdl
YkFyY2hpdmUtPnN1YmZyYW1lQXJjaGl2ZXMoKSkKLSAgICAgICAgICAgIHN1YmZyYW1lV2ViQXJj
aGl2ZXMudW5jaGVja2VkQXBwZW5kKFdlYkFyY2hpdmU6OmNyZWF0ZShzdGF0aWNfY2FzdDxMZWdh
Y3lXZWJBcmNoaXZlKj4oc3ViZnJhbWVBcmNoaXZlLmdldCgpKSkpOwotCisgICAgICAgIGZvciAo
YXV0byYgc3ViZnJhbWVBcmNoaXZlIDogbV9sZWdhY3lXZWJBcmNoaXZlLT5zdWJmcmFtZUFyY2hp
dmVzKCkpCisgICAgICAgICAgICBzdWJmcmFtZVdlYkFyY2hpdmVzLnVuY2hlY2tlZEFwcGVuZChX
ZWJBcmNoaXZlOjpjcmVhdGUoc3RhdGljX2Nhc3Q8TGVnYWN5V2ViQXJjaGl2ZSo+KHN1YmZyYW1l
QXJjaGl2ZS5wdHIoKSkpKTsKICAgICAgICAgbV9jYWNoZWRTdWJmcmFtZUFyY2hpdmVzID0gQVBJ
OjpBcnJheTo6Y3JlYXRlKFdURk1vdmUoc3ViZnJhbWVXZWJBcmNoaXZlcykpOwogICAgIH0KIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1RleHRDaGVja2VyU3RhdGUuaCBiL1Nv
dXJjZS9XZWJLaXQyL1NoYXJlZC9UZXh0Q2hlY2tlclN0YXRlLmgKaW5kZXggYmNjOWZlY2NjY2Iy
ZjY5Yjc2Nzk4NDY4NTE5Y2Q0MmIwMzdjYTJkZC4uY2U2NmYxMDI1MDIzYWFkZWY4OGQzNTc4Njc4
OTk4NjEwOWIyY2NmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1RleHRDaGVj
a2VyU3RhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvVGV4dENoZWNrZXJTdGF0ZS5o
CkBAIC0yMywyMyArMjMsMjIgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
ICAqLwogCi0jaWZuZGVmIFRleHRDaGVja2VyU3RhdGVfaAotI2RlZmluZSBUZXh0Q2hlY2tlclN0
YXRlX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAiQXJndW1lbnRDb2RlcnMuaCIKIAogbmFt
ZXNwYWNlIFdlYktpdCB7CiAKIHN0cnVjdCBUZXh0Q2hlY2tlclN0YXRlIHsKLSAgICBib29sIGlz
Q29udGludW91c1NwZWxsQ2hlY2tpbmdFbmFibGVkOwotICAgIGJvb2wgaXNHcmFtbWFyQ2hlY2tp
bmdFbmFibGVkOworICAgIGJvb2wgaXNDb250aW51b3VzU3BlbGxDaGVja2luZ0VuYWJsZWQgeyBm
YWxzZSB9OworICAgIGJvb2wgaXNHcmFtbWFyQ2hlY2tpbmdFbmFibGVkIHsgZmFsc2UgfTsKIAog
I2lmIFVTRShBUFBLSVQpCi0gICAgYm9vbCBpc0F1dG9tYXRpY1NwZWxsaW5nQ29ycmVjdGlvbkVu
YWJsZWQ7Ci0gICAgYm9vbCBpc0F1dG9tYXRpY1F1b3RlU3Vic3RpdHV0aW9uRW5hYmxlZDsKLSAg
ICBib29sIGlzQXV0b21hdGljRGFzaFN1YnN0aXR1dGlvbkVuYWJsZWQ7Ci0gICAgYm9vbCBpc0F1
dG9tYXRpY0xpbmtEZXRlY3Rpb25FbmFibGVkOwotICAgIGJvb2wgaXNBdXRvbWF0aWNUZXh0UmVw
bGFjZW1lbnRFbmFibGVkOworICAgIGJvb2wgaXNBdXRvbWF0aWNTcGVsbGluZ0NvcnJlY3Rpb25F
bmFibGVkIHsgZmFsc2UgfTsKKyAgICBib29sIGlzQXV0b21hdGljUXVvdGVTdWJzdGl0dXRpb25F
bmFibGVkIHsgZmFsc2UgfTsKKyAgICBib29sIGlzQXV0b21hdGljRGFzaFN1YnN0aXR1dGlvbkVu
YWJsZWQgeyBmYWxzZSB9OworICAgIGJvb2wgaXNBdXRvbWF0aWNMaW5rRGV0ZWN0aW9uRW5hYmxl
ZCB7IGZhbHNlIH07CisgICAgYm9vbCBpc0F1dG9tYXRpY1RleHRSZXBsYWNlbWVudEVuYWJsZWQg
eyBmYWxzZSB9OwogI2VuZGlmCiB9OwogCkBAIC00OCw1ICs0NywzIEBAIHN0cnVjdCBUZXh0Q2hl
Y2tlclN0YXRlIHsKIG5hbWVzcGFjZSBJUEMgewogdGVtcGxhdGU8PiBzdHJ1Y3QgQXJndW1lbnRD
b2RlcjxXZWJLaXQ6OlRleHRDaGVja2VyU3RhdGU+IDogU2ltcGxlQXJndW1lbnRDb2RlcjxXZWJL
aXQ6OlRleHRDaGVja2VyU3RhdGU+IHsgfTsKIH07Ci0KLSNlbmRpZiAvLyBUZXh0Q2hlY2tlclN0
YXRlX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJJY29uRGF0YWJh
c2UuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkljb25EYXRhYmFzZS5jcHAKaW5k
ZXggNTZmNWRhMWEyMDEzYTA5YTY5YTVmYmVhMjRmZTRhNmJiYmIwYTAwNC4uODkyYzA1ZmRhY2Y0
YjMzYWM4NWM2YzQ1NWQ1ODNhNGU4NzlmYmJmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL1dlYkljb25EYXRhYmFzZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL1dlYkljb25EYXRhYmFzZS5jcHAKQEAgLTEzMCw3ICsxMzAsNyBAQCB2b2lkIFdlYkljb25E
YXRhYmFzZTo6c2V0SWNvbkRhdGFGb3JJY29uVVJMKGNvbnN0IElQQzo6RGF0YVJlZmVyZW5jZSYg
aWNvbkRhdGEsCiAgICAgTE9HKEljb25EYXRhYmFzZSwgIldLMiBVSVByb2Nlc3Mgc2V0dGluZyBp
Y29uIGRhdGEgKCVpIGJ5dGVzKSBmb3IgcGFnZSBVUkwgJXMiLCAoaW50KWljb25EYXRhLnNpemUo
KSwgaWNvblVSTC5hc2NpaSgpLmRhdGEoKSk7CiAgICAgaWYgKCFtX2ljb25EYXRhYmFzZUltcGwp
CiAgICAgICAgIHJldHVybjsKLSAgICBtX2ljb25EYXRhYmFzZUltcGwtPnNldEljb25EYXRhRm9y
SWNvblVSTChTaGFyZWRCdWZmZXI6OmNyZWF0ZShpY29uRGF0YS5kYXRhKCksIGljb25EYXRhLnNp
emUoKSksIGljb25VUkwpOworICAgIG1faWNvbkRhdGFiYXNlSW1wbC0+c2V0SWNvbkRhdGFGb3JJ
Y29uVVJMKFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKGljb25EYXRhLmRhdGEoKSwgaWNvbkRhdGEuc2l6
ZSgpKS5wdHIoKSwgaWNvblVSTCk7CiB9CiAKIHZvaWQgV2ViSWNvbkRhdGFiYXNlOjpzeW5jaHJv
bm91c0ljb25EYXRhRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmLCBJUEM6OkRhdGFSZWZlcmVuY2Um
IGljb25EYXRhKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCmluZGV4IDc1
OGMyMzk1OTg1MDUyNDM5ODZjMDczNzUxNDljM2VlZWIxMzcyODYuLjQ2MDZkZjExNGFkNzc3NGU0
Mzc5NDBlNGZjMDk4N2E5ZjFhZGY2YWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9XZWJQYWdlUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFn
ZVByb3h5LmgKQEAgLTE4Niw3ICsxODYsNiBAQCBjbGFzcyBQYWdlQ2xpZW50OwogY2xhc3MgUmVt
b3RlTGF5ZXJUcmVlU2Nyb2xsaW5nUGVyZm9ybWFuY2VEYXRhOwogY2xhc3MgUmVtb3RlTGF5ZXJU
cmVlVHJhbnNhY3Rpb247CiBjbGFzcyBSZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvclByb3h5Owot
Y2xhc3MgU3RyaW5nUGFpclZlY3RvcjsKIGNsYXNzIFVzZXJEYXRhOwogY2xhc3MgVmlld1NuYXBz
aG90OwogY2xhc3MgVmlzaXRlZExpbmtTdG9yZTsKQEAgLTIwNiwxMSArMjA1LDEyIEBAIGNsYXNz
IFdlYlByb2Nlc3NQcm94eTsKIGNsYXNzIFdlYlVzZXJDb250ZW50Q29udHJvbGxlclByb3h5Owog
Y2xhc3MgV2ViV2hlZWxFdmVudDsKIGNsYXNzIFdlYnNpdGVEYXRhU3RvcmU7CitjbGFzcyBHYW1l
cGFkRGF0YTsKKwogc3RydWN0IEF0dHJpYnV0ZWRTdHJpbmc7CiBzdHJ1Y3QgQ29sb3JTcGFjZURh
dGE7CiBzdHJ1Y3QgRWRpdGluZ1JhbmdlOwogc3RydWN0IEVkaXRvclN0YXRlOwotY2xhc3MgR2Ft
ZXBhZERhdGE7CiBzdHJ1Y3QgSW50ZXJhY3Rpb25JbmZvcm1hdGlvblJlcXVlc3Q7CiBzdHJ1Y3Qg
TG9hZFBhcmFtZXRlcnM7CiBzdHJ1Y3QgUGxhdGZvcm1Qb3B1cE1lbnVEYXRhOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JY29uRGF0YWJhc2UvV2ViSWNvbkRhdGFiYXNl
UHJveHkuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JY29uRGF0YWJhc2UvV2ViSWNv
bkRhdGFiYXNlUHJveHkuY3BwCmluZGV4IDMzZmU1ODdlNDE1NzYzODQwMDMzMTUwOWQ4ZjdiMjUz
YzczM2U4OWQuLjU0MmVkZGQ2ZGMwOWIzYmFjMTQ3ZTgzZTFjYjc2NDU5ODk4OTdiMzYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSWNvbkRhdGFiYXNlL1dlYkljb25EYXRh
YmFzZVByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0ljb25EYXRhYmFz
ZS9XZWJJY29uRGF0YWJhc2VQcm94eS5jcHAKQEAgLTQyLDExICs0MiwxMCBAQCBXZWJJY29uRGF0
YWJhc2VQcm94eTo6fldlYkljb25EYXRhYmFzZVByb3h5KCkKIHsKIH0KIAotV2ViSWNvbkRhdGFi
YXNlUHJveHk6OldlYkljb25EYXRhYmFzZVByb3h5KFdlYlByb2Nlc3MqIHByb2Nlc3MpCi0gICAg
OiBtX2lzRW5hYmxlZChmYWxzZSkKLSAgICAsIG1fcHJvY2Vzcyhwcm9jZXNzKQorV2ViSWNvbkRh
dGFiYXNlUHJveHk6OldlYkljb25EYXRhYmFzZVByb3h5KFdlYlByb2Nlc3MmIHByb2Nlc3MpCisg
ICAgOiBtX3Byb2Nlc3MocHJvY2VzcykKIHsKLSAgICBtX3Byb2Nlc3MtPmFkZE1lc3NhZ2VSZWNl
aXZlcihNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlUHJveHk6Om1lc3NhZ2VSZWNlaXZlck5hbWUo
KSwgKnRoaXMpOworICAgIG1fcHJvY2Vzcy5hZGRNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6Oldl
Ykljb25EYXRhYmFzZVByb3h5OjptZXNzYWdlUmVjZWl2ZXJOYW1lKCksICp0aGlzKTsKIH0KIAog
Ym9vbCBXZWJJY29uRGF0YWJhc2VQcm94eTo6aXNFbmFibGVkKCkgY29uc3QKQEAgLTY1LDE4ICs2
NCwxOCBAQCB2b2lkIFdlYkljb25EYXRhYmFzZVByb3h5OjpzZXRFbmFibGVkKGJvb2wgZW5hYmxl
ZCkKIAogdm9pZCBXZWJJY29uRGF0YWJhc2VQcm94eTo6cmV0YWluSWNvbkZvclBhZ2VVUkwoY29u
c3QgU3RyaW5nJiBwYWdlVVJMKQogewotICAgIG1fcHJvY2Vzcy0+cGFyZW50UHJvY2Vzc0Nvbm5l
Y3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViUHJvY2Vzc1Byb3h5OjpSZXRhaW5JY29uRm9yUGFn
ZVVSTChwYWdlVVJMKSwgMCk7CisgICAgbV9wcm9jZXNzLnBhcmVudFByb2Nlc3NDb25uZWN0aW9u
KCktPnNlbmQoTWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6UmV0YWluSWNvbkZvclBhZ2VVUkwo
cGFnZVVSTCksIDApOwogfQogCiB2b2lkIFdlYkljb25EYXRhYmFzZVByb3h5OjpyZWxlYXNlSWNv
bkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJiBwYWdlVVJMKQogewotICAgIG1fcHJvY2Vzcy0+cGFy
ZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViUHJvY2Vzc1Byb3h5OjpS
ZWxlYXNlSWNvbkZvclBhZ2VVUkwocGFnZVVSTCksIDApOworICAgIG1fcHJvY2Vzcy5wYXJlbnRQ
cm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpXZWJQcm9jZXNzUHJveHk6OlJlbGVh
c2VJY29uRm9yUGFnZVVSTChwYWdlVVJMKSwgMCk7CiB9CiAKIEltYWdlKiBXZWJJY29uRGF0YWJh
c2VQcm94eTo6c3luY2hyb25vdXNJY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIHBhZ2VVUkws
IGNvbnN0IEludFNpemUmIC8qc2l6ZSovKQogewogICAgIElQQzo6RGF0YVJlZmVyZW5jZSByZXN1
bHQ7Ci0gICAgaWYgKCFtX3Byb2Nlc3MtPnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRT
eW5jKE1lc3NhZ2VzOjpXZWJJY29uRGF0YWJhc2U6OlN5bmNocm9ub3VzSWNvbkRhdGFGb3JQYWdl
VVJMKHBhZ2VVUkwpLCBNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpTeW5jaHJvbm91c0ljb25E
YXRhRm9yUGFnZVVSTDo6UmVwbHkocmVzdWx0KSwgMCkpCisgICAgaWYgKCFtX3Byb2Nlc3MucGFy
ZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYkljb25EYXRhYmFz
ZTo6U3luY2hyb25vdXNJY29uRGF0YUZvclBhZ2VVUkwocGFnZVVSTCksIE1lc3NhZ2VzOjpXZWJJ
Y29uRGF0YWJhc2U6OlN5bmNocm9ub3VzSWNvbkRhdGFGb3JQYWdlVVJMOjpSZXBseShyZXN1bHQp
LCAwKSkKICAgICAgICAgcmV0dXJuIDA7CiAgICAgCiAgICAgLy8gRklYTUU6IFJldHVybiBJbWFn
ZSBjcmVhdGVkIHdpdGggdGhlIGFib3ZlIGRhdGEuCkBAIC0xMTAsMzQgKzEwOSwzMiBAQCBib29s
IFdlYkljb25EYXRhYmFzZVByb3h5OjpzdXBwb3J0c0FzeW5jaHJvbm91c01vZGUoKQogICAgIHJl
dHVybiB0cnVlOwogfQogCi12b2lkIFdlYkljb25EYXRhYmFzZVByb3h5Ojpsb2FkRGVjaXNpb25G
b3JJY29uVVJMKGNvbnN0IFN0cmluZyYgaWNvblVSTCwgUGFzc1JlZlB0cjxXZWJDb3JlOjpJY29u
TG9hZERlY2lzaW9uQ2FsbGJhY2s+IGNhbGxiYWNrKQordm9pZCBXZWJJY29uRGF0YWJhc2VQcm94
eTo6bG9hZERlY2lzaW9uRm9ySWNvblVSTChjb25zdCBTdHJpbmcmIGljb25VUkwsIFdlYkNvcmU6
Okljb25Mb2FkRGVjaXNpb25DYWxsYmFjayYgY2FsbGJhY2spCiB7Ci0gICAgdWludDY0X3QgaWQg
PSBjYWxsYmFjay0+Y2FsbGJhY2tJRCgpOwotICAgIG1faWNvbkxvYWREZWNpc2lvbkNhbGxiYWNr
cy5hZGQoaWQsIGNhbGxiYWNrKTsKLSAgICAKLSAgICBtX3Byb2Nlc3MtPnBhcmVudFByb2Nlc3ND
b25uZWN0aW9uKCktPnNlbmQoTWVzc2FnZXM6OldlYkljb25EYXRhYmFzZTo6R2V0TG9hZERlY2lz
aW9uRm9ySWNvblVSTChpY29uVVJMLCBpZCksIDApOworICAgIHVpbnQ2NF90IGlkID0gY2FsbGJh
Y2suY2FsbGJhY2tJRCgpOworICAgIG1faWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrcy5hZGQoaWQs
ICZjYWxsYmFjayk7CisgICAgbV9wcm9jZXNzLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNl
bmQoTWVzc2FnZXM6OldlYkljb25EYXRhYmFzZTo6R2V0TG9hZERlY2lzaW9uRm9ySWNvblVSTChp
Y29uVVJMLCBpZCksIDApOwogfQogCiB2b2lkIFdlYkljb25EYXRhYmFzZVByb3h5OjpyZWNlaXZl
ZEljb25Mb2FkRGVjaXNpb24oaW50IGRlY2lzaW9uLCB1aW50NjRfdCBjYWxsYmFja0lEKQogewot
ICAgIFJlZlB0cjxXZWJDb3JlOjpJY29uTG9hZERlY2lzaW9uQ2FsbGJhY2s+IGNhbGxiYWNrID0g
bV9pY29uTG9hZERlY2lzaW9uQ2FsbGJhY2tzLnRha2UoY2FsbGJhY2tJRCk7Ci0gICAgaWYgKGNh
bGxiYWNrKQorICAgIGlmIChhdXRvIGNhbGxiYWNrID0gbV9pY29uTG9hZERlY2lzaW9uQ2FsbGJh
Y2tzLnRha2UoY2FsbGJhY2tJRCkpCiAgICAgICAgIGNhbGxiYWNrLT5wZXJmb3JtQ2FsbGJhY2so
c3RhdGljX2Nhc3Q8V2ViQ29yZTo6SWNvbkxvYWREZWNpc2lvbj4oZGVjaXNpb24pKTsKIH0KIAot
dm9pZCBXZWJJY29uRGF0YWJhc2VQcm94eTo6aWNvbkRhdGFGb3JJY29uVVJMKGNvbnN0IFN0cmlu
ZyYgLyppY29uVVJMKi8sIFBhc3NSZWZQdHI8V2ViQ29yZTo6SWNvbkRhdGFDYWxsYmFjaz4pCit2
b2lkIFdlYkljb25EYXRhYmFzZVByb3h5OjppY29uRGF0YUZvckljb25VUkwoY29uc3QgU3RyaW5n
JiwgV2ViQ29yZTo6SWNvbkRhdGFDYWxsYmFjayYpCiB7CiB9CiAKIHZvaWQgV2ViSWNvbkRhdGFi
YXNlUHJveHk6OnNldEljb25VUkxGb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYgaWNvblVSTCwgY29u
c3QgU3RyaW5nJiBwYWdlVVJMKQogewotICAgIG1fcHJvY2Vzcy0+cGFyZW50UHJvY2Vzc0Nvbm5l
Y3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpTZXRJY29uVVJMRm9yUGFn
ZVVSTChpY29uVVJMLCBwYWdlVVJMKSwgMCk7CisgICAgbV9wcm9jZXNzLnBhcmVudFByb2Nlc3ND
b25uZWN0aW9uKCktPnNlbmQoTWVzc2FnZXM6OldlYkljb25EYXRhYmFzZTo6U2V0SWNvblVSTEZv
clBhZ2VVUkwoaWNvblVSTCwgcGFnZVVSTCksIDApOwogfQogCi12b2lkIFdlYkljb25EYXRhYmFz
ZVByb3h5OjpzZXRJY29uRGF0YUZvckljb25VUkwoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGlj
b25EYXRhLCBjb25zdCBTdHJpbmcmIGljb25VUkwpCit2b2lkIFdlYkljb25EYXRhYmFzZVByb3h5
OjpzZXRJY29uRGF0YUZvckljb25VUkwoU2hhcmVkQnVmZmVyKiBpY29uRGF0YSwgY29uc3QgU3Ry
aW5nJiBpY29uVVJMKQogewotICAgIElQQzo6RGF0YVJlZmVyZW5jZSBkYXRhKHJlaW50ZXJwcmV0
X2Nhc3Q8Y29uc3QgdWludDhfdCo+KGljb25EYXRhID8gaWNvbkRhdGEtPmRhdGEoKSA6IDApLCBp
Y29uRGF0YSA/IGljb25EYXRhLT5zaXplKCkgOiAwKTsKLSAgICBtX3Byb2Nlc3MtPnBhcmVudFBy
b2Nlc3NDb25uZWN0aW9uKCktPnNlbmQoTWVzc2FnZXM6OldlYkljb25EYXRhYmFzZTo6U2V0SWNv
bkRhdGFGb3JJY29uVVJMKGRhdGEsIGljb25VUkwpLCAwKTsKKyAgICBJUEM6OkRhdGFSZWZlcmVu
Y2UgZGF0YShyZWludGVycHJldF9jYXN0PGNvbnN0IHVpbnQ4X3QqPihpY29uRGF0YSA/IGljb25E
YXRhLT5kYXRhKCkgOiBudWxscHRyKSwgaWNvbkRhdGEgPyBpY29uRGF0YS0+c2l6ZSgpIDogMCk7
CisgICAgbV9wcm9jZXNzLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmQoTWVzc2FnZXM6
OldlYkljb25EYXRhYmFzZTo6U2V0SWNvbkRhdGFGb3JJY29uVVJMKGRhdGEsIGljb25VUkwpLCAw
KTsKIH0KIAogdm9pZCBXZWJJY29uRGF0YWJhc2VQcm94eTo6dXJsSW1wb3J0RmluaXNoZWQoKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JY29uRGF0YWJhc2UvV2ViSWNv
bkRhdGFiYXNlUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSWNvbkRhdGFiYXNl
L1dlYkljb25EYXRhYmFzZVByb3h5LmgKaW5kZXggNjJhMDZjM2Y5NGY3ZDdlMDk3NjM1YjUyYjc4
YzQzMzhlYjNjYThiZC4uYmRmOGQ0Y2Y2M2FiZTljZWEzZDJhYzE5ODFlOTA2ZWI2NjFmNWEzZSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JY29uRGF0YWJhc2UvV2ViSWNv
bkRhdGFiYXNlUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0ljb25EYXRh
YmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5oCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBXZWJJY29uRGF0YWJhc2VQ
cm94eV9oCi0jZGVmaW5lIFdlYkljb25EYXRhYmFzZVByb3h5X2gKKyNwcmFnbWEgb25jZQogCiAj
aW5jbHVkZSAiQVBJT2JqZWN0LmgiCiAjaW5jbHVkZSAiTWVzc2FnZVJlY2VpdmVyLmgiCkBAIC0z
Nyw0MyArMzYsNDEgQEAgbmFtZXNwYWNlIFdlYktpdCB7CiAKIGNsYXNzIFdlYlByb2Nlc3M7CiAK
LWNsYXNzIFdlYkljb25EYXRhYmFzZVByb3h5IDogcHVibGljIFdlYkNvcmU6Okljb25EYXRhYmFz
ZUJhc2UsIHByaXZhdGUgSVBDOjpNZXNzYWdlUmVjZWl2ZXIgeworY2xhc3MgV2ViSWNvbkRhdGFi
YXNlUHJveHkgZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6SWNvbkRhdGFiYXNlQmFzZSwgcHJpdmF0
ZSBJUEM6Ok1lc3NhZ2VSZWNlaXZlciB7CiBwdWJsaWM6Ci0gICAgZXhwbGljaXQgV2ViSWNvbkRh
dGFiYXNlUHJveHkoV2ViUHJvY2VzcyopOworICAgIGV4cGxpY2l0IFdlYkljb25EYXRhYmFzZVBy
b3h5KFdlYlByb2Nlc3MmKTsKICAgICB2aXJ0dWFsIH5XZWJJY29uRGF0YWJhc2VQcm94eSgpOwog
Ci0gICAgYm9vbCBpc0VuYWJsZWQoKSBjb25zdCBvdmVycmlkZTsKLSAgICB2b2lkIHNldEVuYWJs
ZWQoYm9vbCkgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRFbmFibGVkKGJvb2wpIGZpbmFsOwogCi0g
ICAgdm9pZCByZXRhaW5JY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmKSBvdmVycmlkZTsKLSAg
ICB2b2lkIHJlbGVhc2VJY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmKSBvdmVycmlkZTsKLSAg
ICB2b2lkIHNldEljb25VUkxGb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYsIGNvbnN0IFN0cmluZyYp
IG92ZXJyaWRlOwotICAgIHZvaWQgc2V0SWNvbkRhdGFGb3JJY29uVVJMKFBhc3NSZWZQdHI8V2Vi
Q29yZTo6U2hhcmVkQnVmZmVyPiwgY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7Citwcml2YXRlOgor
ICAgIGJvb2wgaXNFbmFibGVkKCkgY29uc3QgZmluYWw7CisKKyAgICB2b2lkIHJldGFpbkljb25G
b3JQYWdlVVJMKGNvbnN0IFN0cmluZyYpIGZpbmFsOworICAgIHZvaWQgcmVsZWFzZUljb25Gb3JQ
YWdlVVJMKGNvbnN0IFN0cmluZyYpIGZpbmFsOworICAgIHZvaWQgc2V0SWNvblVSTEZvclBhZ2VV
UkwoY29uc3QgU3RyaW5nJiwgY29uc3QgU3RyaW5nJikgZmluYWw7CisgICAgdm9pZCBzZXRJY29u
RGF0YUZvckljb25VUkwoV2ViQ29yZTo6U2hhcmVkQnVmZmVyKiwgY29uc3QgU3RyaW5nJikgZmlu
YWw7CiAKLSAgICBTdHJpbmcgc3luY2hyb25vdXNJY29uVVJMRm9yUGFnZVVSTChjb25zdCBTdHJp
bmcmKSBvdmVycmlkZTsKLSAgICBib29sIHN5bmNocm9ub3VzSWNvbkRhdGFLbm93bkZvckljb25V
UkwoY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6SWNvbkxvYWREZWNpc2lv
biBzeW5jaHJvbm91c0xvYWREZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5nJiwgV2ViQ29y
ZTo6RG9jdW1lbnRMb2FkZXIqKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpJbWFnZSogc3luY2hy
b25vdXNJY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmLCBjb25zdCBXZWJDb3JlOjpJbnRTaXpl
Jikgb3ZlcnJpZGU7CisgICAgU3RyaW5nIHN5bmNocm9ub3VzSWNvblVSTEZvclBhZ2VVUkwoY29u
c3QgU3RyaW5nJikgZmluYWw7CisgICAgYm9vbCBzeW5jaHJvbm91c0ljb25EYXRhS25vd25Gb3JJ
Y29uVVJMKGNvbnN0IFN0cmluZyYpIGZpbmFsOworICAgIFdlYkNvcmU6Okljb25Mb2FkRGVjaXNp
b24gc3luY2hyb25vdXNMb2FkRGVjaXNpb25Gb3JJY29uVVJMKGNvbnN0IFN0cmluZyYsIFdlYkNv
cmU6OkRvY3VtZW50TG9hZGVyKikgZmluYWw7CisgICAgV2ViQ29yZTo6SW1hZ2UqIHN5bmNocm9u
b3VzSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJiwgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYp
IGZpbmFsOwogICAgIAotICAgIC8vIEFzeW5jaHJvbm91cyBjYWxscyB3ZSBzaG91bGQgdXNlIHRv
IHJlcGxhY2UgdGhlIGFib3ZlIHdoZW4gc3VwcG9ydGVkLgotICAgIGJvb2wgc3VwcG9ydHNBc3lu
Y2hyb25vdXNNb2RlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBsb2FkRGVjaXNpb25Gb3JJY29uVVJM
KGNvbnN0IFN0cmluZyYsIFBhc3NSZWZQdHI8V2ViQ29yZTo6SWNvbkxvYWREZWNpc2lvbkNhbGxi
YWNrPikgb3ZlcnJpZGU7CisgICAgYm9vbCBzdXBwb3J0c0FzeW5jaHJvbm91c01vZGUoKSBmaW5h
bDsKKyAgICB2b2lkIGxvYWREZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5nJiwgV2ViQ29y
ZTo6SWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrJikgZmluYWw7CiAgICAgdm9pZCByZWNlaXZlZElj
b25Mb2FkRGVjaXNpb24oaW50IGRlY2lzaW9uLCB1aW50NjRfdCBjYWxsYmFja0lEKTsKLSAgICB2
b2lkIGljb25EYXRhRm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBQYXNzUmVmUHRyPFdlYkNvcmU6
Okljb25EYXRhQ2FsbGJhY2s+KSBvdmVycmlkZTsKKyAgICB2b2lkIGljb25EYXRhRm9ySWNvblVS
TChjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpJY29uRGF0YUNhbGxiYWNrJikgZmluYWw7CiAKLXBy
aXZhdGU6CiAgICAgLy8gSVBDOjpNZXNzYWdlUmVjZWl2ZXIKLSAgICB2b2lkIGRpZFJlY2VpdmVN
ZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYsIElQQzo6RGVjb2RlciYpIG92ZXJyaWRlOworICAgIHZv
aWQgZGlkUmVjZWl2ZU1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiwgSVBDOjpEZWNvZGVyJikgZmlu
YWw7CiAgICAgCiAgICAgLy8gQ2FsbGJhY2tzIGZyb20gdGhlIFVJUHJvY2VzcwogICAgIHZvaWQg
dXJsSW1wb3J0RmluaXNoZWQoKTsKIAotICAgIGJvb2wgbV9pc0VuYWJsZWQ7Ci0gICAgV2ViUHJv
Y2VzcyogbV9wcm9jZXNzOworICAgIGJvb2wgbV9pc0VuYWJsZWQgeyBmYWxzZSB9OworICAgIFdl
YlByb2Nlc3MmIG1fcHJvY2VzczsKICAgICAKICAgICBIYXNoTWFwPHVpbnQ2NF90LCBSZWZQdHI8
V2ViQ29yZTo6SWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrPj4gbV9pY29uTG9hZERlY2lzaW9uQ2Fs
bGJhY2tzOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0Ci0KLSNlbmRpZiAvLyBXZWJJY29u
RGF0YWJhc2VQcm94eV9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0lu
amVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbi5jcHAgYi9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlTmF2aWdhdGlv
bkFjdGlvbi5jcHAKaW5kZXggMTk2M2ExYTAyNjU1MzkxMGMyZWRjNmE2NDdhMzlkYTk5ZTJiODEy
MS4uMzU2OWZkODc1YmU4NmM5NTg2ZjBlZTdiMjUwMDEzYzk3YzNjNTNkZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZU5h
dmlnYXRpb25BY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0
ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uLmNwcApAQCAtMTAyLDcgKzEw
Miw3IEBAIFJlZjxJbmplY3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rpb24+IEluamVjdGVkQnVuZGxl
TmF2aWdhdGlvbkFjdGlvbjo6Y3JlYXRlKFdlYkZyCiAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcg
SW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uKGZyYW1lLCBhY3Rpb24sIGZvcm1TdGF0ZSkp
OwogfQogCi1JbmplY3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rpb246OkluamVjdGVkQnVuZGxlTmF2
aWdhdGlvbkFjdGlvbihXZWJGcmFtZSogZnJhbWUsIGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIG5h
dmlnYXRpb25BY3Rpb24sIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiBwcnBGb3JtU3RhdGUpCitJbmpl
Y3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rpb246OkluamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlv
bihXZWJGcmFtZSogZnJhbWUsIGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIG5hdmlnYXRpb25BY3Rp
b24sIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiBmb3JtU3RhdGUpCiAgICAgOiBtX25hdmlnYXRpb25U
eXBlKG5hdmlnYXRpb25BY3Rpb24udHlwZSgpKQogICAgICwgbV9tb2RpZmllcnMobW9kaWZpZXJz
Rm9yTmF2aWdhdGlvbkFjdGlvbihuYXZpZ2F0aW9uQWN0aW9uKSkKICAgICAsIG1fbW91c2VCdXR0
b24oV2ViTW91c2VFdmVudDo6Tm9CdXR0b24pCkBAIC0xMTYsMTEgKzExNiw4IEBAIEluamVjdGVk
QnVuZGxlTmF2aWdhdGlvbkFjdGlvbjo6SW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uKFdl
YkZyYW1lKiBmcmFtZSwKICAgICAgICAgbV9zeW50aGV0aWNDbGlja1R5cGUgPSBzeW50aGV0aWND
bGlja1R5cGVGb3JOYXZpZ2F0aW9uQWN0aW9uKG5hdmlnYXRpb25BY3Rpb24pOwogICAgIH0KIAot
ICAgIFJlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSA9IHBycEZvcm1TdGF0ZTsKLSAgICBpZiAo
Zm9ybVN0YXRlKSB7Ci0gICAgICAgIEFTU0VSVChmb3JtU3RhdGUtPmZvcm0oKSk7Ci0gICAgICAg
IG1fZm9ybUVsZW1lbnQgICA9IEluamVjdGVkQnVuZGxlTm9kZUhhbmRsZTo6Z2V0T3JDcmVhdGUo
Zm9ybVN0YXRlLT5mb3JtKCkpOwotICAgIH0KKyAgICBpZiAoZm9ybVN0YXRlKQorICAgICAgICBt
X2Zvcm1FbGVtZW50ID0gSW5qZWN0ZWRCdW5kbGVOb2RlSGFuZGxlOjpnZXRPckNyZWF0ZShmb3Jt
U3RhdGUtPmZvcm0oKSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmNwcCBi
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5jcHAK
aW5kZXggMTIxMDI1MWY1NGQ3ZjI1NTY1Zjg5YmVmNTQ0N2JjMWQ0OGFhYTZkNS4uMzYxZjllMmNh
YjgyOWQ4MzI1MDBmM2E2NDE1NDUwNTZhMTkwNDBjYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwCkBAIC0xNjMs
NyArMTYzLDcgQEAgdm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6c2NoZWR1bGVMb2FkKFJlc291cmNl
TG9hZGVyJiByZXNvdXJjZUxvYWRlciwgQ2FjaGVkUmVzb3UKICAgICB9CiAjZW5kaWYKIAotICAg
IGlmIChyZXNvdXJjZUxvYWRlci5kb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9z
dCgpLT5tYXliZUxvYWRSZXNvdXJjZShyZXNvdXJjZUxvYWRlciwgcmVzb3VyY2VMb2FkZXIucmVx
dWVzdCgpLCByZXNvdXJjZUxvYWRlci5yZXF1ZXN0KCkudXJsKCkpKSB7CisgICAgaWYgKHJlc291
cmNlTG9hZGVyLmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWF5YmVM
b2FkUmVzb3VyY2UocmVzb3VyY2VMb2FkZXIsIHJlc291cmNlTG9hZGVyLnJlcXVlc3QoKSwgcmVz
b3VyY2VMb2FkZXIucmVxdWVzdCgpLnVybCgpKSkgewogICAgICAgICBMT0coTmV0d29ya1NjaGVk
dWxpbmcsICIoV2ViUHJvY2VzcykgV2ViTG9hZGVyU3RyYXRlZ3k6OnNjaGVkdWxlTG9hZCwgdXJs
ICclcycgd2lsbCBiZSBsb2FkZWQgZnJvbSBhcHBsaWNhdGlvbiBjYWNoZS4iLCByZXNvdXJjZUxv
YWRlci51cmwoKS5zdHJpbmcoKS51dGY4KCkuZGF0YSgpKTsKICAgICAgICAgUkVMRUFTRV9MT0df
SUZfQUxMT1dFRChyZXNvdXJjZUxvYWRlciwgInNjaGVkdWxlTG9hZDogVVJMIHdpbGwgYmUgbG9h
ZGVkIGZyb20gYXBwbGljYXRpb24gY2FjaGUgKGZyYW1lID0gJXAsIHJlc291cmNlSUQgPSAlIiBQ
Ukl1NjQgIikiLCByZXNvdXJjZUxvYWRlci5mcmFtZSgpLCBpZGVudGlmaWVyKTsKICAgICAgICAg
bV93ZWJSZXNvdXJjZUxvYWRlcnMuc2V0KGlkZW50aWZpZXIsIFdlYlJlc291cmNlTG9hZGVyOjpj
cmVhdGUocmVzb3VyY2VMb2FkZXIsIHRyYWNraW5nUGFyYW1ldGVycykpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlTG9hZGVyLmNwcCBi
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUxvYWRlci5jcHAK
aW5kZXggNzM4YjFkY2MzMzkzNzI2OTY4YTYyYzU3M2MzODI4OGQ5N2Y3YjNkMS4uMzhhODgyYmI4
ZjRlOTEwMjYwYjllNTJkOGU1NWRjMTE5ZWQwYjMxOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIuY3BwCkBAIC04Nyw3
ICs4Nyw3IEBAIHZvaWQgV2ViUmVzb3VyY2VMb2FkZXI6OndpbGxTZW5kUmVxdWVzdChSZXNvdXJj
ZVJlcXVlc3QmJiBwcm9wb3NlZFJlcXVlc3QsIFJlc291CiAKICAgICBSZWZQdHI8V2ViUmVzb3Vy
Y2VMb2FkZXI+IHByb3RlY3RlZFRoaXModGhpcyk7CiAKLSAgICBpZiAobV9jb3JlTG9hZGVyLT5k
b2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5tYXliZUxvYWRGYWxsYmFj
a0ZvclJlZGlyZWN0KG1fY29yZUxvYWRlci5nZXQoKSwgcHJvcG9zZWRSZXF1ZXN0LCByZWRpcmVj
dFJlc3BvbnNlKSkKKyAgICBpZiAobV9jb3JlTG9hZGVyLT5kb2N1bWVudExvYWRlcigpLT5hcHBs
aWNhdGlvbkNhY2hlSG9zdCgpLm1heWJlTG9hZEZhbGxiYWNrRm9yUmVkaXJlY3QobV9jb3JlTG9h
ZGVyLmdldCgpLCBwcm9wb3NlZFJlcXVlc3QsIHJlZGlyZWN0UmVzcG9uc2UpKQogICAgICAgICBy
ZXR1cm47CiAKICAgICBtX2NvcmVMb2FkZXItPndpbGxTZW5kUmVxdWVzdChXVEZNb3ZlKHByb3Bv
c2VkUmVxdWVzdCksIHJlZGlyZWN0UmVzcG9uc2UsIFtwcm90ZWN0ZWRUaGlzXShSZXNvdXJjZVJl
cXVlc3QmJiByZXF1ZXN0KSB7CkBAIC0xMTAsNyArMTEwLDcgQEAgdm9pZCBXZWJSZXNvdXJjZUxv
YWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNl
LCBib28KIAogICAgIFJlZjxXZWJSZXNvdXJjZUxvYWRlcj4gcHJvdGVjdCgqdGhpcyk7CiAKLSAg
ICBpZiAobV9jb3JlTG9hZGVyLT5kb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9z
dCgpLT5tYXliZUxvYWRGYWxsYmFja0ZvclJlc3BvbnNlKG1fY29yZUxvYWRlci5nZXQoKSwgcmVz
cG9uc2UpKQorICAgIGlmIChtX2NvcmVMb2FkZXItPmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0
aW9uQ2FjaGVIb3N0KCkubWF5YmVMb2FkRmFsbGJhY2tGb3JSZXNwb25zZShtX2NvcmVMb2FkZXIu
Z2V0KCksIHJlc3BvbnNlKSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgbV9jb3JlTG9hZGVyLT5k
aWRSZWNlaXZlUmVzcG9uc2UocmVzcG9uc2UpOwpAQCAtMTQ4LDcgKzE0OCw3IEBAIHZvaWQgV2Vi
UmVzb3VyY2VMb2FkZXI6OmRpZEZhaWxSZXNvdXJjZUxvYWQoY29uc3QgUmVzb3VyY2VFcnJvciYg
ZXJyb3IpCiAgICAgTE9HKE5ldHdvcmssICIoV2ViUHJvY2VzcykgV2ViUmVzb3VyY2VMb2FkZXI6
OmRpZEZhaWxSZXNvdXJjZUxvYWQgZm9yICclcyciLCBtX2NvcmVMb2FkZXItPnVybCgpLnN0cmlu
ZygpLmxhdGluMSgpLmRhdGEoKSk7CiAgICAgUkVMRUFTRV9MT0dfSUZfQUxMT1dFRCgiZGlkRmFp
bFJlc291cmNlTG9hZDogKHBhZ2VJRCA9ICUiIFBSSXU2NCAiLCBmcmFtZUlEID0gJSIgUFJJdTY0
ICIsIHJlc291cmNlSUQgPSAlIiBQUkl1NjQgIikiLCBtX3RyYWNraW5nUGFyYW1ldGVycy5wYWdl
SUQsIG1fdHJhY2tpbmdQYXJhbWV0ZXJzLmZyYW1lSUQsIG1fdHJhY2tpbmdQYXJhbWV0ZXJzLnJl
c291cmNlSUQpOwogCi0gICAgaWYgKG1fY29yZUxvYWRlci0+ZG9jdW1lbnRMb2FkZXIoKS0+YXBw
bGljYXRpb25DYWNoZUhvc3QoKS0+bWF5YmVMb2FkRmFsbGJhY2tGb3JFcnJvcihtX2NvcmVMb2Fk
ZXIuZ2V0KCksIGVycm9yKSkKKyAgICBpZiAobV9jb3JlTG9hZGVyLT5kb2N1bWVudExvYWRlcigp
LT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLm1heWJlTG9hZEZhbGxiYWNrRm9yRXJyb3IobV9jb3Jl
TG9hZGVyLmdldCgpLCBlcnJvcikpCiAgICAgICAgIHJldHVybjsKICAgICBtX2NvcmVMb2FkZXIt
PmRpZEZhaWwoZXJyb3IpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9QbHVnaW5zL1BsdWdpblZpZXcuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVn
aW5zL1BsdWdpblZpZXcuY3BwCmluZGV4IGFjMWRhYWJhZDA2M2E0OTYyNmIzN2UwNDAyZTllYmY1
NDkyZDNiMWIuLjc4ODYyNjg1OWE2ODY1MTQ2NWJjMTcxZmExYWIwYjJiNTJhZjg3MzAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3LmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5jcHAKQEAg
LTE4NSwyMyArMTg1LDE5IEBAIHN0YXRpYyBTdHJpbmcgYnVpbGRIVFRQSGVhZGVycyhjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgbG9uZyBsb25nJiBleHBlCiAgICAgaWYgKCFyZXNw
b25zZS5pc0hUVFAoKSkKICAgICAgICAgcmV0dXJuIFN0cmluZygpOwogCi0gICAgU3RyaW5nQnVp
bGRlciBzdHJpbmdCdWlsZGVyOwotICAgIAotICAgIFN0cmluZyBzdGF0dXNMaW5lID0gU3RyaW5n
Ojpmb3JtYXQoIkhUVFAgJWQgIiwgcmVzcG9uc2UuaHR0cFN0YXR1c0NvZGUoKSk7Ci0gICAgc3Ry
aW5nQnVpbGRlci5hcHBlbmQoc3RhdHVzTGluZSk7Ci0gICAgc3RyaW5nQnVpbGRlci5hcHBlbmQo
cmVzcG9uc2UuaHR0cFN0YXR1c1RleHQoKSk7Ci0gICAgc3RyaW5nQnVpbGRlci5hcHBlbmQoJ1xu
Jyk7Ci0gICAgCi0gICAgSFRUUEhlYWRlck1hcDo6Y29uc3RfaXRlcmF0b3IgZW5kID0gcmVzcG9u
c2UuaHR0cEhlYWRlckZpZWxkcygpLmVuZCgpOwotICAgIGZvciAoSFRUUEhlYWRlck1hcDo6Y29u
c3RfaXRlcmF0b3IgaXQgPSByZXNwb25zZS5odHRwSGVhZGVyRmllbGRzKCkuYmVnaW4oKTsgaXQg
IT0gZW5kOyArK2l0KSB7Ci0gICAgICAgIHN0cmluZ0J1aWxkZXIuYXBwZW5kKGl0LT5rZXkpOwot
ICAgICAgICBzdHJpbmdCdWlsZGVyLmFwcGVuZExpdGVyYWwoIjogIik7Ci0gICAgICAgIHN0cmlu
Z0J1aWxkZXIuYXBwZW5kKGl0LT52YWx1ZSk7Ci0gICAgICAgIHN0cmluZ0J1aWxkZXIuYXBwZW5k
KCdcbicpOworICAgIFN0cmluZ0J1aWxkZXIgaGVhZGVyOworICAgIGhlYWRlci5hcHBlbmRMaXRl
cmFsKCJIVFRQICIpOworICAgIGhlYWRlci5hcHBlbmROdW1iZXIocmVzcG9uc2UuaHR0cFN0YXR1
c0NvZGUoKSk7CisgICAgaGVhZGVyLmFwcGVuZCgnICcpOworICAgIGhlYWRlci5hcHBlbmQocmVz
cG9uc2UuaHR0cFN0YXR1c1RleHQoKSk7CisgICAgaGVhZGVyLmFwcGVuZCgnXG4nKTsKKyAgICBm
b3IgKGF1dG8mIGZpZWxkIDogcmVzcG9uc2UuaHR0cEhlYWRlckZpZWxkcygpKSB7CisgICAgICAg
IGhlYWRlci5hcHBlbmQoZmllbGQua2V5KTsKKyAgICAgICAgaGVhZGVyLmFwcGVuZExpdGVyYWwo
IjogIik7CisgICAgICAgIGhlYWRlci5hcHBlbmQoZmllbGQudmFsdWUpOworICAgICAgICBoZWFk
ZXIuYXBwZW5kKCdcbicpOwogICAgIH0KLSAgICAKLSAgICBTdHJpbmcgaGVhZGVycyA9IHN0cmlu
Z0J1aWxkZXIudG9TdHJpbmcoKTsKLSAgICAKKwogICAgIC8vIElmIHRoZSBjb250ZW50IGlzIGVu
Y29kZWQgKG1vc3QgbGlrZWx5IGNvbXByZXNzZWQpLCB0aGVuIGRvbid0IHNlbmQgaXRzIGxlbmd0
aCB0byB0aGUgcGx1Z2luLAogICAgIC8vIHdoaWNoIGlzIG9ubHkgaW50ZXJlc3RlZCBpbiB0aGUg
ZGVjb2RlZCBsZW5ndGgsIG5vdCB5ZXQga25vd24gYXQgdGhlIG1vbWVudC4KICAgICAvLyA8cmRh
cjovL3Byb2JsZW0vNDQ3MDU5OT4gdHJhY2tzIGEgcmVxdWVzdCBmb3IgLVtOU1VSTFJlc3BvbnNl
IGV4cGVjdGVkQ29udGVudExlbmd0aF0gdG8gaW5jb3Jwb3JhdGUgdGhpcyBsb2dpYy4KQEAgLTIw
OSw3ICsyMDUsNyBAQCBzdGF0aWMgU3RyaW5nIGJ1aWxkSFRUUEhlYWRlcnMoY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYgcmVzcG9uc2UsIGxvbmcgbG9uZyYgZXhwZQogICAgIGlmICghY29udGVudEVu
Y29kaW5nLmlzTnVsbCgpICYmIGNvbnRlbnRFbmNvZGluZyAhPSAiaWRlbnRpdHkiKQogICAgICAg
ICBleHBlY3RlZENvbnRlbnRMZW5ndGggPSAtMTsKIAotICAgIHJldHVybiBoZWFkZXJzOworICAg
IHJldHVybiBoZWFkZXIudG9TdHJpbmcoKTsKIH0KIAogc3RhdGljIHVpbnQzMl90IGxhc3RNb2Rp
ZmllZERhdGVNUyhjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKQEAgLTI5MiwzNyAr
Mjg4LDE5IEBAIHN0YXRpYyBpbmxpbmUgV2ViUGFnZSogd2ViUGFnZShIVE1MUGx1Z0luRWxlbWVu
dCogcGx1Z2luRWxlbWVudCkKICAgICByZXR1cm4gd2ViRnJhbWUtPnBhZ2UoKTsKIH0KIAotUmVm
PFBsdWdpblZpZXc+IFBsdWdpblZpZXc6OmNyZWF0ZShQYXNzUmVmUHRyPEhUTUxQbHVnSW5FbGVt
ZW50PiBwbHVnaW5FbGVtZW50LCBQYXNzUmVmUHRyPFBsdWdpbj4gcGx1Z2luLCBjb25zdCBQbHVn
aW46OlBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpCitSZWY8UGx1Z2luVmlldz4gUGx1Z2luVmlldzo6
Y3JlYXRlKEhUTUxQbHVnSW5FbGVtZW50JiBwbHVnaW5FbGVtZW50LCBSZWY8UGx1Z2luPiYmIHBs
dWdpbiwgY29uc3QgUGx1Z2luOjpQYXJhbWV0ZXJzJiBwYXJhbWV0ZXJzKQogewotICAgIHJldHVy
biBhZG9wdFJlZigqbmV3IFBsdWdpblZpZXcocGx1Z2luRWxlbWVudCwgcGx1Z2luLCBwYXJhbWV0
ZXJzKSk7CisgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgUGx1Z2luVmlldyhwbHVnaW5FbGVtZW50
LCBXVEZNb3ZlKHBsdWdpbiksIHBhcmFtZXRlcnMpKTsKIH0KIAotUGx1Z2luVmlldzo6UGx1Z2lu
VmlldyhQYXNzUmVmUHRyPEhUTUxQbHVnSW5FbGVtZW50PiBwbHVnaW5FbGVtZW50LCBQYXNzUmVm
UHRyPFBsdWdpbj4gcGx1Z2luLCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmIHBhcmFtZXRlcnMp
CitQbHVnaW5WaWV3OjpQbHVnaW5WaWV3KEhUTUxQbHVnSW5FbGVtZW50JiBwbHVnaW5FbGVtZW50
LCBSZWY8UGx1Z2luPiYmIHBsdWdpbiwgY29uc3QgUGx1Z2luOjpQYXJhbWV0ZXJzJiBwYXJhbWV0
ZXJzKQogICAgIDogUGx1Z2luVmlld0Jhc2UoMCkKLSAgICAsIG1fcGx1Z2luRWxlbWVudChwbHVn
aW5FbGVtZW50KQotICAgICwgbV9wbHVnaW4ocGx1Z2luKQorICAgICwgbV9wbHVnaW5FbGVtZW50
KCZwbHVnaW5FbGVtZW50KQorICAgICwgbV9wbHVnaW4oV1RGTW92ZShwbHVnaW4pKQogICAgICwg
bV93ZWJQYWdlKHdlYlBhZ2UobV9wbHVnaW5FbGVtZW50LmdldCgpKSkKICAgICAsIG1fcGFyYW1l
dGVycyhwYXJhbWV0ZXJzKQotICAgICwgbV9pc0luaXRpYWxpemVkKGZhbHNlKQotICAgICwgbV9p
c1dhaXRpbmdGb3JTeW5jaHJvbm91c0luaXRpYWxpemF0aW9uKGZhbHNlKQotICAgICwgbV9pc1dh
aXRpbmdVbnRpbE1lZGlhQ2FuU3RhcnQoZmFsc2UpCi0gICAgLCBtX2lzQmVpbmdEZXN0cm95ZWQo
ZmFsc2UpCi0gICAgLCBtX3BsdWdpblByb2Nlc3NIYXNDcmFzaGVkKGZhbHNlKQotI2lmIEVOQUJM
RShQUklNQVJZX1NOQVBTSE9UVEVEX1BMVUdJTl9IRVVSSVNUSUMpCi0gICAgLCBtX2RpZFBsdWdJ
blN0YXJ0T2ZmU2NyZWVuKGZhbHNlKQotI2VuZGlmCiAgICAgLCBtX3BlbmRpbmdVUkxSZXF1ZXN0
c1RpbWVyKFJ1bkxvb3A6Om1haW4oKSwgdGhpcywgJlBsdWdpblZpZXc6OnBlbmRpbmdVUkxSZXF1
ZXN0c1RpbWVyRmlyZWQpCi0jaWYgRU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCi0gICAgLCBt
X25wUnVudGltZU9iamVjdE1hcCh0aGlzKQotI2VuZGlmCi0gICAgLCBtX21hbnVhbFN0cmVhbVN0
YXRlKFN0cmVhbVN0YXRlSW5pdGlhbCkKICAgICAsIG1fcGx1Z2luU25hcHNob3RUaW1lcigqdGhp
cywgJlBsdWdpblZpZXc6OnBsdWdpblNuYXBzaG90VGltZXJGaXJlZCwgcGx1Z2luU25hcHNob3RU
aW1lckRlbGF5KQotI2lmIEVOQUJMRShQUklNQVJZX1NOQVBTSE9UVEVEX1BMVUdJTl9IRVVSSVNU
SUMpIHx8IFBMQVRGT1JNKENPQ09BKQotICAgICwgbV9jb3VudFNuYXBzaG90UmV0cmllcygwKQot
I2VuZGlmCi0gICAgLCBtX2RpZFJlY2VpdmVVc2VySW50ZXJhY3Rpb24oZmFsc2UpCi0gICAgLCBt
X3BhZ2VTY2FsZUZhY3RvcigxKQotICAgICwgbV9wbHVnaW5Jc1BsYXlpbmdBdWRpbyhmYWxzZSkK
IHsKICAgICBtX3dlYlBhZ2UtPmFkZFBsdWdpblZpZXcodGhpcyk7CiB9CkBAIC0zNzQsNyArMzUy
LDcgQEAgdm9pZCBQbHVnaW5WaWV3OjpkZXN0cm95UGx1Z2luQW5kUmVzZXQoKQogICAgIGNhbmNl
bEFsbFN0cmVhbXMoKTsKIH0KIAotdm9pZCBQbHVnaW5WaWV3OjpyZWNyZWF0ZUFuZEluaXRpYWxp
emUoUGFzc1JlZlB0cjxQbHVnaW4+IHBsdWdpbikKK3ZvaWQgUGx1Z2luVmlldzo6cmVjcmVhdGVB
bmRJbml0aWFsaXplKFJlZjxQbHVnaW4+JiYgcGx1Z2luKQogewogICAgIGlmIChtX3BsdWdpbikg
ewogICAgICAgICBpZiAobV9wbHVnaW5TbmFwc2hvdFRpbWVyLmlzQWN0aXZlKCkpCkBAIC0zODIs
MTMgKzM2MCwxMiBAQCB2b2lkIFBsdWdpblZpZXc6OnJlY3JlYXRlQW5kSW5pdGlhbGl6ZShQYXNz
UmVmUHRyPFBsdWdpbj4gcGx1Z2luKQogICAgICAgICBkZXN0cm95UGx1Z2luQW5kUmVzZXQoKTsK
ICAgICB9CiAKLSAgICAvLyBSZXNldCBtZW1iZXIgdmFyaWFibGVzIHRvIGluaXRpYWwgdmFsdWVz
LgotICAgIG1fcGx1Z2luID0gcGx1Z2luOworICAgIG1fcGx1Z2luID0gV1RGTW92ZShwbHVnaW4p
OwogICAgIG1faXNJbml0aWFsaXplZCA9IGZhbHNlOwogICAgIG1faXNXYWl0aW5nRm9yU3luY2hy
b25vdXNJbml0aWFsaXphdGlvbiA9IGZhbHNlOwogICAgIG1faXNXYWl0aW5nVW50aWxNZWRpYUNh
blN0YXJ0ID0gZmFsc2U7CiAgICAgbV9pc0JlaW5nRGVzdHJveWVkID0gZmFsc2U7Ci0gICAgbV9t
YW51YWxTdHJlYW1TdGF0ZSA9IFN0cmVhbVN0YXRlSW5pdGlhbDsKKyAgICBtX21hbnVhbFN0cmVh
bVN0YXRlID0gTWFudWFsU3RyZWFtU3RhdGU6OkluaXRpYWw7CiAgICAgbV90cmFuc2llbnRQYWlu
dGluZ1NuYXBzaG90ID0gbnVsbHB0cjsKIAogICAgIGluaXRpYWxpemVQbHVnaW4oKTsKQEAgLTQy
MSw4ICszOTgsOCBAQCB2b2lkIFBsdWdpblZpZXc6Om1hbnVhbExvYWREaWRSZWNlaXZlUmVzcG9u
c2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiAgICAgICAgIHJldHVybjsKIAog
ICAgIGlmICghbV9pc0luaXRpYWxpemVkKSB7Ci0gICAgICAgIEFTU0VSVChtX21hbnVhbFN0cmVh
bVN0YXRlID09IFN0cmVhbVN0YXRlSW5pdGlhbCk7Ci0gICAgICAgIG1fbWFudWFsU3RyZWFtU3Rh
dGUgPSBTdHJlYW1TdGF0ZUhhc1JlY2VpdmVkUmVzcG9uc2U7CisgICAgICAgIEFTU0VSVChtX21h
bnVhbFN0cmVhbVN0YXRlID09IE1hbnVhbFN0cmVhbVN0YXRlOjpJbml0aWFsKTsKKyAgICAgICAg
bV9tYW51YWxTdHJlYW1TdGF0ZSA9IE1hbnVhbFN0cmVhbVN0YXRlOjpIYXNSZWNlaXZlZFJlc3Bv
bnNlOwogICAgICAgICBtX21hbnVhbFN0cmVhbVJlc3BvbnNlID0gcmVzcG9uc2U7CiAgICAgICAg
IHJldHVybjsKICAgICB9CkBAIC00NDgsNyArNDI1LDcgQEAgdm9pZCBQbHVnaW5WaWV3OjptYW51
YWxMb2FkRGlkUmVjZWl2ZURhdGEoY29uc3QgY2hhciogYnl0ZXMsIGludCBsZW5ndGgpCiAgICAg
ICAgIHJldHVybjsKIAogICAgIGlmICghbV9pc0luaXRpYWxpemVkKSB7Ci0gICAgICAgIEFTU0VS
VChtX21hbnVhbFN0cmVhbVN0YXRlID09IFN0cmVhbVN0YXRlSGFzUmVjZWl2ZWRSZXNwb25zZSk7
CisgICAgICAgIEFTU0VSVChtX21hbnVhbFN0cmVhbVN0YXRlID09IE1hbnVhbFN0cmVhbVN0YXRl
OjpIYXNSZWNlaXZlZFJlc3BvbnNlKTsKICAgICAgICAgaWYgKCFtX21hbnVhbFN0cmVhbURhdGEp
CiAgICAgICAgICAgICBtX21hbnVhbFN0cmVhbURhdGEgPSBTaGFyZWRCdWZmZXI6OmNyZWF0ZSgp
OwogCkBAIC00NjYsOCArNDQzLDggQEAgdm9pZCBQbHVnaW5WaWV3OjptYW51YWxMb2FkRGlkRmlu
aXNoTG9hZGluZygpCiAgICAgICAgIHJldHVybjsKIAogICAgIGlmICghbV9pc0luaXRpYWxpemVk
KSB7Ci0gICAgICAgIEFTU0VSVChtX21hbnVhbFN0cmVhbVN0YXRlID09IFN0cmVhbVN0YXRlSGFz
UmVjZWl2ZWRSZXNwb25zZSk7Ci0gICAgICAgIG1fbWFudWFsU3RyZWFtU3RhdGUgPSBTdHJlYW1T
dGF0ZUZpbmlzaGVkOworICAgICAgICBBU1NFUlQobV9tYW51YWxTdHJlYW1TdGF0ZSA9PSBNYW51
YWxTdHJlYW1TdGF0ZTo6SGFzUmVjZWl2ZWRSZXNwb25zZSk7CisgICAgICAgIG1fbWFudWFsU3Ry
ZWFtU3RhdGUgPSBNYW51YWxTdHJlYW1TdGF0ZTo6RmluaXNoZWQ7CiAgICAgICAgIHJldHVybjsK
ICAgICB9CiAKQEAgLTQ4MSw3ICs0NTgsNyBAQCB2b2lkIFBsdWdpblZpZXc6Om1hbnVhbExvYWRE
aWRGYWlsKGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQogICAgICAgICByZXR1cm47CiAKICAg
ICBpZiAoIW1faXNJbml0aWFsaXplZCkgewotICAgICAgICBtX21hbnVhbFN0cmVhbVN0YXRlID0g
U3RyZWFtU3RhdGVGaW5pc2hlZDsKKyAgICAgICAgbV9tYW51YWxTdHJlYW1TdGF0ZSA9IE1hbnVh
bFN0cmVhbVN0YXRlOjpGaW5pc2hlZDsKICAgICAgICAgbV9tYW51YWxTdHJlYW1FcnJvciA9IGVy
cm9yOwogICAgICAgICBtX21hbnVhbFN0cmVhbURhdGEgPSBudWxscHRyOwogICAgICAgICByZXR1
cm47CkBAIC0xMDA3LDcgKzk4NCw3IEBAIHZvaWQgUGx1Z2luVmlldzo6d2lsbERldGF0Y2hSZW5k
ZXJlcigpCiAgICAgbV9wbHVnaW4tPndpbGxEZXRhdGNoUmVuZGVyZXIoKTsKIH0KIAotUGFzc1Jl
ZlB0cjxTaGFyZWRCdWZmZXI+IFBsdWdpblZpZXc6OmxpdmVSZXNvdXJjZURhdGEoKSBjb25zdAor
UmVmUHRyPFNoYXJlZEJ1ZmZlcj4gUGx1Z2luVmlldzo6bGl2ZVJlc291cmNlRGF0YSgpIGNvbnN0
CiB7CiAgICAgaWYgKCFtX2lzSW5pdGlhbGl6ZWQgfHwgIW1fcGx1Z2luKQogICAgICAgICByZXR1
cm4gMDsKQEAgLTEzMDgsMTIgKzEyODUsMTIgQEAgdm9pZCBQbHVnaW5WaWV3OjpjYW5jZWxBbGxT
dHJlYW1zKCkKIAogdm9pZCBQbHVnaW5WaWV3OjpyZWRlbGl2ZXJNYW51YWxTdHJlYW0oKQogewot
ICAgIGlmIChtX21hbnVhbFN0cmVhbVN0YXRlID09IFN0cmVhbVN0YXRlSW5pdGlhbCkgeworICAg
IGlmIChtX21hbnVhbFN0cmVhbVN0YXRlID09IE1hbnVhbFN0cmVhbVN0YXRlOjpJbml0aWFsKSB7
CiAgICAgICAgIC8vIE5vdGhpbmcgdG8gZG8uCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAg
ICBpZiAobV9tYW51YWxTdHJlYW1TdGF0ZSA9PSBTdHJlYW1TdGF0ZUZhaWxlZCkgeworICAgIGlm
IChtX21hbnVhbFN0cmVhbVN0YXRlID09IE1hbnVhbFN0cmVhbVN0YXRlOjpGYWlsZWQpIHsKICAg
ICAgICAgbWFudWFsTG9hZERpZEZhaWwobV9tYW51YWxTdHJlYW1FcnJvcik7CiAgICAgICAgIHJl
dHVybjsKICAgICB9CkBAIC0xMzM0LDcgKzEzMTEsNyBAQCB2b2lkIFBsdWdpblZpZXc6OnJlZGVs
aXZlck1hbnVhbFN0cmVhbSgpCiAgICAgICAgIG1fbWFudWFsU3RyZWFtRGF0YSA9IG51bGxwdHI7
CiAgICAgfQogCi0gICAgaWYgKG1fbWFudWFsU3RyZWFtU3RhdGUgPT0gU3RyZWFtU3RhdGVGaW5p
c2hlZCkKKyAgICBpZiAobV9tYW51YWxTdHJlYW1TdGF0ZSA9PSBNYW51YWxTdHJlYW1TdGF0ZTo6
RmluaXNoZWQpCiAgICAgICAgIG1hbnVhbExvYWREaWRGaW5pc2hMb2FkaW5nKCk7CiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3Lmgg
Yi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5oCmluZGV4IDAw
NzU4M2M0M2QwMzhiOWZhY2MyZWRiNzNkM2ExMjViNGJjZGE0ODMuLjM4YmU2MjFiODFhZjY5YTYz
NzM3MzYyYWNiMjAxN2VkMzc4MDc1ODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3LmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9QbHVnaW5zL1BsdWdpblZpZXcuaApAQCAtNjQsOSArNjQsOSBAQCBjbGFzcyBXZWJFdmVudDsK
IAogY2xhc3MgUGx1Z2luVmlldyA6IHB1YmxpYyBXZWJDb3JlOjpQbHVnaW5WaWV3QmFzZSwgcHVi
bGljIFBsdWdpbkNvbnRyb2xsZXIsIHByaXZhdGUgV2ViQ29yZTo6TWVkaWFDYW5TdGFydExpc3Rl
bmVyLCBwcml2YXRlIFdlYkZyYW1lOjpMb2FkTGlzdGVuZXIsIHByaXZhdGUgV2ViQ29yZTo6TWVk
aWFQcm9kdWNlciB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFJlZjxQbHVnaW5WaWV3PiBjcmVhdGUo
UGFzc1JlZlB0cjxXZWJDb3JlOjpIVE1MUGx1Z0luRWxlbWVudD4sIFBhc3NSZWZQdHI8UGx1Z2lu
PiwgY29uc3QgUGx1Z2luOjpQYXJhbWV0ZXJzJik7CisgICAgc3RhdGljIFJlZjxQbHVnaW5WaWV3
PiBjcmVhdGUoV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQmLCBSZWY8UGx1Z2luPiYmLCBjb25z
dCBQbHVnaW46OlBhcmFtZXRlcnMmKTsKIAotICAgIHZvaWQgcmVjcmVhdGVBbmRJbml0aWFsaXpl
KFBhc3NSZWZQdHI8UGx1Z2luPik7CisgICAgdm9pZCByZWNyZWF0ZUFuZEluaXRpYWxpemUoUmVm
PFBsdWdpbj4mJik7CiAKICAgICBXZWJDb3JlOjpGcmFtZSogZnJhbWUoKSBjb25zdDsKIApAQCAt
MTEyLDEzICsxMTIsMTMgQEAgcHVibGljOgogCiAgICAgYm9vbCBzaG91bGRBbGxvd1NjcmlwdGlu
ZygpOwogCi0gICAgUGFzc1JlZlB0cjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+IGxpdmVSZXNvdXJj
ZURhdGEoKSBjb25zdDsKKyAgICBSZWZQdHI8V2ViQ29yZTo6U2hhcmVkQnVmZmVyPiBsaXZlUmVz
b3VyY2VEYXRhKCkgY29uc3Q7CiAgICAgYm9vbCBwZXJmb3JtRGljdGlvbmFyeUxvb2t1cEF0TG9j
YXRpb24oY29uc3QgV2ViQ29yZTo6RmxvYXRQb2ludCYpOwogICAgIFN0cmluZyBnZXRTZWxlY3Rp
b25Gb3JXb3JkQXRQb2ludChjb25zdCBXZWJDb3JlOjpGbG9hdFBvaW50JikgY29uc3Q7CiAgICAg
Ym9vbCBleGlzdGluZ1NlbGVjdGlvbkNvbnRhaW5zUG9pbnQoY29uc3QgV2ViQ29yZTo6RmxvYXRQ
b2ludCYpIGNvbnN0OwogCiBwcml2YXRlOgotICAgIFBsdWdpblZpZXcoUGFzc1JlZlB0cjxXZWJD
b3JlOjpIVE1MUGx1Z0luRWxlbWVudD4sIFBhc3NSZWZQdHI8UGx1Z2luPiwgY29uc3QgUGx1Z2lu
OjpQYXJhbWV0ZXJzJiBwYXJhbWV0ZXJzKTsKKyAgICBQbHVnaW5WaWV3KFdlYkNvcmU6OkhUTUxQ
bHVnSW5FbGVtZW50JiwgUmVmPFBsdWdpbj4mJiwgY29uc3QgUGx1Z2luOjpQYXJhbWV0ZXJzJik7
CiAgICAgdmlydHVhbCB+UGx1Z2luVmlldygpOwogCiAgICAgdm9pZCBpbml0aWFsaXplUGx1Z2lu
KCk7CkBAIC0yNDQsMTQgKzI0NCwxNCBAQCBwcml2YXRlOgogICAgIFdlYlBhZ2UqIG1fd2ViUGFn
ZTsKICAgICBQbHVnaW46OlBhcmFtZXRlcnMgbV9wYXJhbWV0ZXJzOwogCi0gICAgYm9vbCBtX2lz
SW5pdGlhbGl6ZWQ7Ci0gICAgYm9vbCBtX2lzV2FpdGluZ0ZvclN5bmNocm9ub3VzSW5pdGlhbGl6
YXRpb247Ci0gICAgYm9vbCBtX2lzV2FpdGluZ1VudGlsTWVkaWFDYW5TdGFydDsKLSAgICBib29s
IG1faXNCZWluZ0Rlc3Ryb3llZDsKLSAgICBib29sIG1fcGx1Z2luUHJvY2Vzc0hhc0NyYXNoZWQ7
CisgICAgYm9vbCBtX2lzSW5pdGlhbGl6ZWQgeyBmYWxzZSB9OworICAgIGJvb2wgbV9pc1dhaXRp
bmdGb3JTeW5jaHJvbm91c0luaXRpYWxpemF0aW9uIHsgZmFsc2UgfTsKKyAgICBib29sIG1faXNX
YWl0aW5nVW50aWxNZWRpYUNhblN0YXJ0IHsgZmFsc2UgfTsKKyAgICBib29sIG1faXNCZWluZ0Rl
c3Ryb3llZCB7IGZhbHNlIH07CisgICAgYm9vbCBtX3BsdWdpblByb2Nlc3NIYXNDcmFzaGVkIHsg
ZmFsc2UgfTsKIAogI2lmIEVOQUJMRShQUklNQVJZX1NOQVBTSE9UVEVEX1BMVUdJTl9IRVVSSVNU
SUMpCi0gICAgYm9vbCBtX2RpZFBsdWdJblN0YXJ0T2ZmU2NyZWVuOworICAgIGJvb2wgbV9kaWRQ
bHVnSW5TdGFydE9mZlNjcmVlbiB7IGZhbHNlIH07CiAjZW5kaWYKIAogICAgIC8vIFBlbmRpbmcg
VVJMUmVxdWVzdHMgdGhhdCB0aGUgcGx1Zy1pbiBoYXMgbWFkZS4KQEAgLTI2NywxOCArMjY3LDEz
IEBAIHByaXZhdGU6CiAKICNpZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKICAgICAvLyBB
IG1hcCBvZiBhbGwgcmVsYXRlZCBOUE9iamVjdHMgZm9yIHRoaXMgcGx1Zy1pbiB2aWV3LgotICAg
IE5QUnVudGltZU9iamVjdE1hcCBtX25wUnVudGltZU9iamVjdE1hcDsKKyAgICBOUFJ1bnRpbWVP
YmplY3RNYXAgbV9ucFJ1bnRpbWVPYmplY3RNYXAgeyB0aGlzIH07CiAjZW5kaWYKIAogICAgIC8v
IFRoZSBtYW51YWwgc3RyZWFtIHN0YXRlLiBUaGlzIGlzIHVzZWQgc28gd2UgY2FuIGRlbGl2ZXIg
YSBtYW51YWwgc3RyZWFtIHRvIGEgcGx1Zy1pbgogICAgIC8vIHdoZW4gaXQgaXMgaW5pdGlhbGl6
ZWQuCi0gICAgZW51bSBNYW51YWxTdHJlYW1TdGF0ZSB7Ci0gICAgICAgIFN0cmVhbVN0YXRlSW5p
dGlhbCwKLSAgICAgICAgU3RyZWFtU3RhdGVIYXNSZWNlaXZlZFJlc3BvbnNlLAotICAgICAgICBT
dHJlYW1TdGF0ZUZpbmlzaGVkLAotICAgICAgICBTdHJlYW1TdGF0ZUZhaWxlZAotICAgIH07Ci0g
ICAgTWFudWFsU3RyZWFtU3RhdGUgbV9tYW51YWxTdHJlYW1TdGF0ZTsKKyAgICBlbnVtIGNsYXNz
IE1hbnVhbFN0cmVhbVN0YXRlIHsgSW5pdGlhbCwgSGFzUmVjZWl2ZWRSZXNwb25zZSwgRmluaXNo
ZWQsIEZhaWxlZCB9OworICAgIE1hbnVhbFN0cmVhbVN0YXRlIG1fbWFudWFsU3RyZWFtU3RhdGUg
eyBNYW51YWxTdHJlYW1TdGF0ZTo6SW5pdGlhbCB9OwogCiAgICAgV2ViQ29yZTo6UmVzb3VyY2VS
ZXNwb25zZSBtX21hbnVhbFN0cmVhbVJlc3BvbnNlOwogICAgIFdlYkNvcmU6OlJlc291cmNlRXJy
b3IgbV9tYW51YWxTdHJlYW1FcnJvcjsKQEAgLTI4OSwxMyArMjg0LDEzIEBAIHByaXZhdGU6CiAg
ICAgLy8gVGhpcyB0aW1lciBpcyB1c2VkIHdoZW4gcGx1Z2luIHNuYXBzaG90dGluZyBpcyBlbmFi
bGVkLCB0byBjYXB0dXJlIGEgcGx1Z2luIHBsYWNlaG9sZGVyLgogICAgIFdlYkNvcmU6OkRlZmVy
cmFibGVPbmVTaG90VGltZXIgbV9wbHVnaW5TbmFwc2hvdFRpbWVyOwogI2lmIEVOQUJMRShQUklN
QVJZX1NOQVBTSE9UVEVEX1BMVUdJTl9IRVVSSVNUSUMpIHx8IFBMQVRGT1JNKENPQ09BKQotICAg
IHVuc2lnbmVkIG1fY291bnRTbmFwc2hvdFJldHJpZXM7CisgICAgdW5zaWduZWQgbV9jb3VudFNu
YXBzaG90UmV0cmllcyB7IDAgfTsKICNlbmRpZgotICAgIGJvb2wgbV9kaWRSZWNlaXZlVXNlcklu
dGVyYWN0aW9uOworICAgIGJvb2wgbV9kaWRSZWNlaXZlVXNlckludGVyYWN0aW9uIHsgZmFsc2Ug
fTsKIAotICAgIGRvdWJsZSBtX3BhZ2VTY2FsZUZhY3RvcjsKKyAgICBkb3VibGUgbV9wYWdlU2Nh
bGVGYWN0b3IgeyAxIH07CiAKLSAgICBib29sIG1fcGx1Z2luSXNQbGF5aW5nQXVkaW87CisgICAg
Ym9vbCBtX3BsdWdpbklzUGxheWluZ0F1ZGlvIHsgZmFsc2UgfTsKIH07CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3Jl
U3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwCmluZGV4IGRjM2ZlZDVjOWJiZmUzMGM4
YmQyMGFlZTllOWIwMWQ4MmRmZTRmZTguLjNkNzJjNjczMTc2ZTBkMDFjZjUzM2EzY2MzNTllOWJi
MGFjMjVhNmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAKQEAgLTEwMywyMCArMTAzLDIwIEBA
IHN0YXRpYyBkb3VibGUgYXJlYShXZWJGcmFtZSogZnJhbWUpCiB9CiAKIAotc3RhdGljIFdlYkZy
YW1lKiBmaW5kTGFyZ2VzdEZyYW1lSW5GcmFtZVNldChXZWJQYWdlKiBwYWdlKQorc3RhdGljIFdl
YkZyYW1lKiBmaW5kTGFyZ2VzdEZyYW1lSW5GcmFtZVNldChXZWJQYWdlJiBwYWdlKQogewogICAg
IC8vIEFwcHJveGltYXRlIHdoYXQgYSB1c2VyIGNvdWxkIGNvbnNpZGVyIGEgZGVmYXVsdCB0YXJn
ZXQgZnJhbWUgZm9yIGFwcGxpY2F0aW9uIG1lbnUgb3BlcmF0aW9ucy4KIAotICAgIFdlYkZyYW1l
KiBtYWluRnJhbWUgPSBwYWdlLT5tYWluV2ViRnJhbWUoKTsKKyAgICBXZWJGcmFtZSogbWFpbkZy
YW1lID0gcGFnZS5tYWluV2ViRnJhbWUoKTsKICAgICBpZiAoIW1haW5GcmFtZSB8fCAhbWFpbkZy
YW1lLT5pc0ZyYW1lU2V0KCkpCi0gICAgICAgIHJldHVybiAwOworICAgICAgICByZXR1cm4gbnVs
bHB0cjsKIAotICAgIFdlYkZyYW1lKiBsYXJnZXN0U29GYXIgPSAwOworICAgIFdlYkZyYW1lKiBs
YXJnZXN0U29GYXIgPSBudWxscHRyOwogCiAgICAgUmVmPEFQSTo6QXJyYXk+IGZyYW1lQ2hpbGRy
ZW4gPSBtYWluRnJhbWUtPmNoaWxkRnJhbWVzKCk7CiAgICAgc2l6ZV90IGNvdW50ID0gZnJhbWVD
aGlsZHJlbi0+c2l6ZSgpOwogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgY291bnQ7ICsraSkg
ewotICAgICAgICBXZWJGcmFtZSogY2hpbGRGcmFtZSA9IGZyYW1lQ2hpbGRyZW4tPmF0PFdlYkZy
YW1lPihpKTsKKyAgICAgICAgYXV0byogY2hpbGRGcmFtZSA9IGZyYW1lQ2hpbGRyZW4tPmF0PFdl
YkZyYW1lPihpKTsKICAgICAgICAgaWYgKCFsYXJnZXN0U29GYXIgfHwgYXJlYShjaGlsZEZyYW1l
KSA+IGFyZWEobGFyZ2VzdFNvRmFyKSkKICAgICAgICAgICAgIGxhcmdlc3RTb0ZhciA9IGNoaWxk
RnJhbWU7CiAgICAgfQpAQCAtMTI0LDYgKzEyNCwxNSBAQCBzdGF0aWMgV2ViRnJhbWUqIGZpbmRM
YXJnZXN0RnJhbWVJbkZyYW1lU2V0KFdlYlBhZ2UqIHBhZ2UpCiAgICAgcmV0dXJuIGxhcmdlc3RT
b0ZhcjsKIH0KIAorV2ViQ2hyb21lQ2xpZW50OjpXZWJDaHJvbWVDbGllbnQoV2ViUGFnZSYgcGFn
ZSkKKyAgICA6IG1fcGFnZShwYWdlKQoreworfQorCitpbmxpbmUgV2ViQ2hyb21lQ2xpZW50Ojp+
V2ViQ2hyb21lQ2xpZW50KCkKK3sKK30KKwogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmNocm9tZURl
c3Ryb3llZCgpCiB7CiAgICAgZGVsZXRlIHRoaXM7CkBAIC0xMzEsNyArMTQwLDcgQEAgdm9pZCBX
ZWJDaHJvbWVDbGllbnQ6OmNocm9tZURlc3Ryb3llZCgpCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50
OjpzZXRXaW5kb3dSZWN0KGNvbnN0IEZsb2F0UmVjdCYgd2luZG93RnJhbWUpCiB7Ci0gICAgbV9w
YWdlLT5zZW5kU2V0V2luZG93RnJhbWUod2luZG93RnJhbWUpOworICAgIG1fcGFnZS5zZW5kU2V0
V2luZG93RnJhbWUod2luZG93RnJhbWUpOwogfQogCiBGbG9hdFJlY3QgV2ViQ2hyb21lQ2xpZW50
Ojp3aW5kb3dSZWN0KCkKQEAgLTE0MCwxMyArMTQ5LDEzIEBAIEZsb2F0UmVjdCBXZWJDaHJvbWVD
bGllbnQ6OndpbmRvd1JlY3QoKQogICAgIHJldHVybiBGbG9hdFJlY3QoKTsKICNlbHNlCiAjaWYg
UExBVEZPUk0oTUFDKQotICAgIGlmIChtX3BhZ2UtPmhhc0NhY2hlZFdpbmRvd0ZyYW1lKCkpCi0g
ICAgICAgIHJldHVybiBtX3BhZ2UtPndpbmRvd0ZyYW1lSW5VbmZsaXBwZWRTY3JlZW5Db29yZGlu
YXRlcygpOworICAgIGlmIChtX3BhZ2UuaGFzQ2FjaGVkV2luZG93RnJhbWUoKSkKKyAgICAgICAg
cmV0dXJuIG1fcGFnZS53aW5kb3dGcmFtZUluVW5mbGlwcGVkU2NyZWVuQ29vcmRpbmF0ZXMoKTsK
ICNlbmRpZgogCiAgICAgRmxvYXRSZWN0IG5ld1dpbmRvd0ZyYW1lOwogCi0gICAgaWYgKCFXZWJQ
cm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhN
ZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRXaW5kb3dGcmFtZSgpLCBNZXNzYWdlczo6V2ViUGFn
ZVByb3h5OjpHZXRXaW5kb3dGcmFtZTo6UmVwbHkobmV3V2luZG93RnJhbWUpLCBtX3BhZ2UtPnBh
Z2VJRCgpKSkKKyAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3ND
b25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFdpbmRvd0Zy
YW1lKCksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFdpbmRvd0ZyYW1lOjpSZXBseShuZXdX
aW5kb3dGcmFtZSksIG1fcGFnZS5wYWdlSUQoKSkpCiAgICAgICAgIHJldHVybiBGbG9hdFJlY3Qo
KTsKIAogICAgIHJldHVybiBuZXdXaW5kb3dGcmFtZTsKQEAgLTE1NSwzMyArMTY0LDMzIEBAIEZs
b2F0UmVjdCBXZWJDaHJvbWVDbGllbnQ6OndpbmRvd1JlY3QoKQogCiBGbG9hdFJlY3QgV2ViQ2hy
b21lQ2xpZW50OjpwYWdlUmVjdCgpCiB7Ci0gICAgcmV0dXJuIEZsb2F0UmVjdChGbG9hdFBvaW50
KCksIG1fcGFnZS0+c2l6ZSgpKTsKKyAgICByZXR1cm4gRmxvYXRSZWN0KEZsb2F0UG9pbnQoKSwg
bV9wYWdlLnNpemUoKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpmb2N1cygpCiB7Ci0g
ICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldEZvY3VzKHRydWUpKTsK
KyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRGb2N1cyh0cnVlKSk7
CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojp1bmZvY3VzKCkKIHsKLSAgICBtX3BhZ2UtPnNl
bmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0Rm9jdXMoZmFsc2UpKTsKKyAgICBtX3BhZ2Uu
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRGb2N1cyhmYWxzZSkpOwogfQogCiAjaWYg
UExBVEZPUk0oQ09DT0EpCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZWxlbWVudERpZEZvY3VzKGNv
bnN0IFdlYkNvcmU6Ok5vZGUqIG5vZGUpCiB7Ci0gICAgbV9wYWdlLT5lbGVtZW50RGlkRm9jdXMo
Y29uc3RfY2FzdDxXZWJDb3JlOjpOb2RlKj4obm9kZSkpOworICAgIG1fcGFnZS5lbGVtZW50RGlk
Rm9jdXMoY29uc3RfY2FzdDxXZWJDb3JlOjpOb2RlKj4obm9kZSkpOwogfQogCiB2b2lkIFdlYkNo
cm9tZUNsaWVudDo6ZWxlbWVudERpZEJsdXIoY29uc3QgV2ViQ29yZTo6Tm9kZSogbm9kZSkKIHsK
LSAgICBtX3BhZ2UtPmVsZW1lbnREaWRCbHVyKGNvbnN0X2Nhc3Q8V2ViQ29yZTo6Tm9kZSo+KG5v
ZGUpKTsKKyAgICBtX3BhZ2UuZWxlbWVudERpZEJsdXIoY29uc3RfY2FzdDxXZWJDb3JlOjpOb2Rl
Kj4obm9kZSkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6bWFrZUZpcnN0UmVzcG9uZGVy
KCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6TWFrZUZpcnN0
UmVzcG9uZGVyKCkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6Ok1h
a2VGaXJzdFJlc3BvbmRlcigpKTsKIH0gICAgCiAjZW5kaWYgICAgCiAKQEAgLTE5Myw3ICsyMDIs
NyBAQCBib29sIFdlYkNocm9tZUNsaWVudDo6Y2FuVGFrZUZvY3VzKEZvY3VzRGlyZWN0aW9uKQog
CiB2b2lkIFdlYkNocm9tZUNsaWVudDo6dGFrZUZvY3VzKEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlv
bikKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6VGFrZUZvY3Vz
KGRpcmVjdGlvbikpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlRh
a2VGb2N1cyhkaXJlY3Rpb24pKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmZvY3VzZWRF
bGVtZW50Q2hhbmdlZChFbGVtZW50KiBlbGVtZW50KQpAQCAtMjA3LDE0ICsyMTYsMTQgQEAgdm9p
ZCBXZWJDaHJvbWVDbGllbnQ6OmZvY3VzZWRFbGVtZW50Q2hhbmdlZChFbGVtZW50KiBlbGVtZW50
KQogCiAgICAgV2ViRnJhbWUqIHdlYkZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmVs
ZW1lbnQtPmRvY3VtZW50KCkuZnJhbWUoKSk7CiAgICAgQVNTRVJUKHdlYkZyYW1lKTsKLSAgICBt
X3BhZ2UtPmluamVjdGVkQnVuZGxlRm9ybUNsaWVudCgpLmRpZEZvY3VzVGV4dEZpZWxkKG1fcGFn
ZSwgJmlucHV0RWxlbWVudCwgd2ViRnJhbWUpOworICAgIG1fcGFnZS5pbmplY3RlZEJ1bmRsZUZv
cm1DbGllbnQoKS5kaWRGb2N1c1RleHRGaWVsZCgmbV9wYWdlLCAmaW5wdXRFbGVtZW50LCB3ZWJG
cmFtZSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpmb2N1c2VkRnJhbWVDaGFuZ2VkKEZy
YW1lKiBmcmFtZSkKIHsKICAgICBXZWJGcmFtZSogd2ViRnJhbWUgPSBmcmFtZSA/IFdlYkZyYW1l
Ojpmcm9tQ29yZUZyYW1lKCpmcmFtZSkgOiBudWxscHRyOwogCi0gICAgV2ViUHJvY2Vzczo6c2lu
Z2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViUGFn
ZVByb3h5OjpGb2N1c2VkRnJhbWVDaGFuZ2VkKHdlYkZyYW1lID8gd2ViRnJhbWUtPmZyYW1lSUQo
KSA6IDApLCBtX3BhZ2UtPnBhZ2VJRCgpKTsKKyAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5w
YXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZv
Y3VzZWRGcmFtZUNoYW5nZWQod2ViRnJhbWUgPyB3ZWJGcmFtZS0+ZnJhbWVJRCgpIDogMCksIG1f
cGFnZS5wYWdlSUQoKSk7CiB9CiAKIFBhZ2UqIFdlYkNocm9tZUNsaWVudDo6Y3JlYXRlV2luZG93
KEZyYW1lKiBmcmFtZSwgY29uc3QgRnJhbWVMb2FkUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgV2lu
ZG93RmVhdHVyZXMmIHdpbmRvd0ZlYXR1cmVzLCBjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBuYXZp
Z2F0aW9uQWN0aW9uKQpAQCAtMjM0LDEzICsyNDMsMTMgQEAgUGFnZSogV2ViQ2hyb21lQ2xpZW50
OjpjcmVhdGVXaW5kb3coRnJhbWUqIGZyYW1lLCBjb25zdCBGcmFtZUxvYWRSZXF1ZXN0JiByZXF1
ZXMKICAgICBuYXZpZ2F0aW9uQWN0aW9uRGF0YS5tb3VzZUJ1dHRvbiA9IEluamVjdGVkQnVuZGxl
TmF2aWdhdGlvbkFjdGlvbjo6bW91c2VCdXR0b25Gb3JOYXZpZ2F0aW9uQWN0aW9uKG5hdmlnYXRp
b25BY3Rpb24pOwogICAgIG5hdmlnYXRpb25BY3Rpb25EYXRhLnN5bnRoZXRpY0NsaWNrVHlwZSA9
IEluamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbjo6c3ludGhldGljQ2xpY2tUeXBlRm9yTmF2
aWdhdGlvbkFjdGlvbihuYXZpZ2F0aW9uQWN0aW9uKTsKICAgICBuYXZpZ2F0aW9uQWN0aW9uRGF0
YS51c2VyR2VzdHVyZVRva2VuSWRlbnRpZmllciA9IHdlYlByb2Nlc3MudXNlckdlc3R1cmVUb2tl
bklkZW50aWZpZXIobmF2aWdhdGlvbkFjdGlvbi51c2VyR2VzdHVyZVRva2VuKCkpOwotICAgIG5h
dmlnYXRpb25BY3Rpb25EYXRhLmNhbkhhbmRsZVJlcXVlc3QgPSBtX3BhZ2UtPmNhbkhhbmRsZVJl
cXVlc3QocmVxdWVzdC5yZXNvdXJjZVJlcXVlc3QoKSk7CisgICAgbmF2aWdhdGlvbkFjdGlvbkRh
dGEuY2FuSGFuZGxlUmVxdWVzdCA9IG1fcGFnZS5jYW5IYW5kbGVSZXF1ZXN0KHJlcXVlc3QucmVz
b3VyY2VSZXF1ZXN0KCkpOwogICAgIG5hdmlnYXRpb25BY3Rpb25EYXRhLnNob3VsZE9wZW5FeHRl
cm5hbFVSTHNQb2xpY3kgPSBuYXZpZ2F0aW9uQWN0aW9uLnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQ
b2xpY3koKTsKICAgICBuYXZpZ2F0aW9uQWN0aW9uRGF0YS5kb3dubG9hZEF0dHJpYnV0ZSA9IG5h
dmlnYXRpb25BY3Rpb24uZG93bmxvYWRBdHRyaWJ1dGUoKTsKIAogICAgIHVpbnQ2NF90IG5ld1Bh
Z2VJRCA9IDA7CiAgICAgV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycyBwYXJhbWV0ZXJzOwotICAg
IGlmICghd2ViUHJvY2Vzcy5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpDcmVhdGVOZXdQYWdlKHdlYkZyYW1lLT5mcmFtZUlEKCksIFNl
Y3VyaXR5T3JpZ2luRGF0YTo6ZnJvbUZyYW1lKGZyYW1lKSwgcmVxdWVzdC5yZXNvdXJjZVJlcXVl
c3QoKSwgd2luZG93RmVhdHVyZXMsIG5hdmlnYXRpb25BY3Rpb25EYXRhKSwgTWVzc2FnZXM6Oldl
YlBhZ2VQcm94eTo6Q3JlYXRlTmV3UGFnZTo6UmVwbHkobmV3UGFnZUlELCBwYXJhbWV0ZXJzKSwg
bV9wYWdlLT5wYWdlSUQoKSkpCisgICAgaWYgKCF3ZWJQcm9jZXNzLnBhcmVudFByb2Nlc3NDb25u
ZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkNyZWF0ZU5ld1BhZ2Uo
d2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tRnJhbWUoZnJhbWUp
LCByZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLCB3aW5kb3dGZWF0dXJlcywgbmF2aWdhdGlvbkFj
dGlvbkRhdGEpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpDcmVhdGVOZXdQYWdlOjpSZXBseShu
ZXdQYWdlSUQsIHBhcmFtZXRlcnMpLCBtX3BhZ2UucGFnZUlEKCkpKQogICAgICAgICByZXR1cm4g
bnVsbHB0cjsKIAogICAgIGlmICghbmV3UGFnZUlEKQpAQCAtMjUyLDMyICsyNjEsMzIgQEAgUGFn
ZSogV2ViQ2hyb21lQ2xpZW50OjpjcmVhdGVXaW5kb3coRnJhbWUqIGZyYW1lLCBjb25zdCBGcmFt
ZUxvYWRSZXF1ZXN0JiByZXF1ZXMKIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNob3coKQogewot
ICAgIG1fcGFnZS0+c2hvdygpOworICAgIG1fcGFnZS5zaG93KCk7CiB9CiAKIGJvb2wgV2ViQ2hy
b21lQ2xpZW50OjpjYW5SdW5Nb2RhbCgpCiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+Y2FuUnVuTW9k
YWwoKTsKKyAgICByZXR1cm4gbV9wYWdlLmNhblJ1bk1vZGFsKCk7CiB9CiAKIHZvaWQgV2ViQ2hy
b21lQ2xpZW50OjpydW5Nb2RhbCgpCiB7Ci0gICAgbV9wYWdlLT5ydW5Nb2RhbCgpOworICAgIG1f
cGFnZS5ydW5Nb2RhbCgpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0VG9vbGJhcnNW
aXNpYmxlKGJvb2wgdG9vbGJhcnNBcmVWaXNpYmxlKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpTZXRUb29sYmFyc0FyZVZpc2libGUodG9vbGJhcnNBcmVWaXNp
YmxlKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0VG9vbGJh
cnNBcmVWaXNpYmxlKHRvb2xiYXJzQXJlVmlzaWJsZSkpOwogfQogCiBib29sIFdlYkNocm9tZUNs
aWVudDo6dG9vbGJhcnNWaXNpYmxlKCkKIHsKLSAgICBBUEk6OkluamVjdGVkQnVuZGxlOjpQYWdl
VUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHkgdG9vbGJhcnNWaXNpYmlsaXR5ID0gbV9wYWdl
LT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkudG9vbGJhcnNBcmVWaXNpYmxlKG1fcGFnZSk7Cisg
ICAgQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5
IHRvb2xiYXJzVmlzaWJpbGl0eSA9IG1fcGFnZS5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkudG9v
bGJhcnNBcmVWaXNpYmxlKCZtX3BhZ2UpOwogICAgIGlmICh0b29sYmFyc1Zpc2liaWxpdHkgIT0g
QVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5OjpV
bmtub3duKQogICAgICAgICByZXR1cm4gdG9vbGJhcnNWaXNpYmlsaXR5ID09IEFQSTo6SW5qZWN0
ZWRCdW5kbGU6OlBhZ2VVSUNsaWVudDo6VUlFbGVtZW50VmlzaWJpbGl0eTo6VmlzaWJsZTsKICAg
ICAKICAgICBib29sIHRvb2xiYXJzQXJlVmlzaWJsZSA9IHRydWU7Ci0gICAgaWYgKCFXZWJQcm9j
ZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpHZXRUb29sYmFyc0FyZVZpc2libGUoKSwgTWVzc2FnZXM6Oldl
YlBhZ2VQcm94eTo6R2V0VG9vbGJhcnNBcmVWaXNpYmxlOjpSZXBseSh0b29sYmFyc0FyZVZpc2li
bGUpLCBtX3BhZ2UtPnBhZ2VJRCgpKSkKKyAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigp
LnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OkdldFRvb2xiYXJzQXJlVmlzaWJsZSgpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRU
b29sYmFyc0FyZVZpc2libGU6OlJlcGx5KHRvb2xiYXJzQXJlVmlzaWJsZSksIG1fcGFnZS5wYWdl
SUQoKSkpCiAgICAgICAgIHJldHVybiB0cnVlOwogCiAgICAgcmV0dXJuIHRvb2xiYXJzQXJlVmlz
aWJsZTsKQEAgLTI4NSwxNyArMjk0LDE3IEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50Ojp0b29sYmFy
c1Zpc2libGUoKQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0U3RhdHVzYmFyVmlzaWJsZShi
b29sIHN0YXR1c0JhcklzVmlzaWJsZSkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6Oldl
YlBhZ2VQcm94eTo6U2V0U3RhdHVzQmFySXNWaXNpYmxlKHN0YXR1c0JhcklzVmlzaWJsZSkpOwor
ICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldFN0YXR1c0JhcklzVmlz
aWJsZShzdGF0dXNCYXJJc1Zpc2libGUpKTsKIH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnN0
YXR1c2JhclZpc2libGUoKQogewotICAgIEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VVSUNsaWVu
dDo6VUlFbGVtZW50VmlzaWJpbGl0eSBzdGF0dXNiYXJWaXNpYmlsaXR5ID0gbV9wYWdlLT5pbmpl
Y3RlZEJ1bmRsZVVJQ2xpZW50KCkuc3RhdHVzQmFySXNWaXNpYmxlKG1fcGFnZSk7CisgICAgQVBJ
OjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5IHN0YXR1
c2JhclZpc2liaWxpdHkgPSBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLnN0YXR1c0Jh
cklzVmlzaWJsZSgmbV9wYWdlKTsKICAgICBpZiAoc3RhdHVzYmFyVmlzaWJpbGl0eSAhPSBBUEk6
OkluamVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHk6OlVua25v
d24pCiAgICAgICAgIHJldHVybiBzdGF0dXNiYXJWaXNpYmlsaXR5ID09IEFQSTo6SW5qZWN0ZWRC
dW5kbGU6OlBhZ2VVSUNsaWVudDo6VUlFbGVtZW50VmlzaWJpbGl0eTo6VmlzaWJsZTsKIAogICAg
IGJvb2wgc3RhdHVzQmFySXNWaXNpYmxlID0gdHJ1ZTsKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNp
bmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OkdldFN0YXR1c0JhcklzVmlzaWJsZSgpLCBNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpHZXRTdGF0dXNCYXJJc1Zpc2libGU6OlJlcGx5KHN0YXR1c0JhcklzVmlzaWJsZSksIG1f
cGFnZS0+cGFnZUlEKCkpKQorICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50
UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0
U3RhdHVzQmFySXNWaXNpYmxlKCksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFN0YXR1c0Jh
cklzVmlzaWJsZTo6UmVwbHkoc3RhdHVzQmFySXNWaXNpYmxlKSwgbV9wYWdlLnBhZ2VJRCgpKSkK
ICAgICAgICAgcmV0dXJuIHRydWU7CiAKICAgICByZXR1cm4gc3RhdHVzQmFySXNWaXNpYmxlOwpA
QCAtMzE0LDE3ICszMjMsMTcgQEAgYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnNjcm9sbGJhcnNWaXNp
YmxlKCkKIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNldE1lbnViYXJWaXNpYmxlKGJvb2wgbWVu
dUJhclZpc2libGUpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OlNldE1lbnVCYXJJc1Zpc2libGUobWVudUJhclZpc2libGUpKTsKKyAgICBtX3BhZ2Uuc2VuZChN
ZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRNZW51QmFySXNWaXNpYmxlKG1lbnVCYXJWaXNpYmxl
KSk7CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjptZW51YmFyVmlzaWJsZSgpCiB7Ci0gICAg
QVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5IG1l
bnViYXJWaXNpYmlsaXR5ID0gbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkubWVudUJh
cklzVmlzaWJsZShtX3BhZ2UpOworICAgIEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VVSUNsaWVu
dDo6VUlFbGVtZW50VmlzaWJpbGl0eSBtZW51YmFyVmlzaWJpbGl0eSA9IG1fcGFnZS5pbmplY3Rl
ZEJ1bmRsZVVJQ2xpZW50KCkubWVudUJhcklzVmlzaWJsZSgmbV9wYWdlKTsKICAgICBpZiAobWVu
dWJhclZpc2liaWxpdHkgIT0gQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVs
ZW1lbnRWaXNpYmlsaXR5OjpVbmtub3duKQogICAgICAgICByZXR1cm4gbWVudWJhclZpc2liaWxp
dHkgPT0gQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmls
aXR5OjpWaXNpYmxlOwogICAgIAogICAgIGJvb2wgbWVudUJhcklzVmlzaWJsZSA9IHRydWU7Ci0g
ICAgaWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigp
LT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRNZW51QmFySXNWaXNpYmxlKCks
IE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldE1lbnVCYXJJc1Zpc2libGU6OlJlcGx5KG1lbnVC
YXJJc1Zpc2libGUpLCBtX3BhZ2UtPnBhZ2VJRCgpKSkKKyAgICBpZiAoIVdlYlByb2Nlc3M6OnNp
bmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OkdldE1lbnVCYXJJc1Zpc2libGUoKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94
eTo6R2V0TWVudUJhcklzVmlzaWJsZTo6UmVwbHkobWVudUJhcklzVmlzaWJsZSksIG1fcGFnZS5w
YWdlSUQoKSkpCiAgICAgICAgIHJldHVybiB0cnVlOwogCiAgICAgcmV0dXJuIG1lbnVCYXJJc1Zp
c2libGU7CkBAIC0zMzIsMTggKzM0MSwxOCBAQCBib29sIFdlYkNocm9tZUNsaWVudDo6bWVudWJh
clZpc2libGUoKQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0UmVzaXphYmxlKGJvb2wgcmVz
aXphYmxlKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRJ
c1Jlc2l6YWJsZShyZXNpemFibGUpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFn
ZVByb3h5OjpTZXRJc1Jlc2l6YWJsZShyZXNpemFibGUpKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVD
bGllbnQ6OmFkZE1lc3NhZ2VUb0NvbnNvbGUoTWVzc2FnZVNvdXJjZSBzb3VyY2UsIE1lc3NhZ2VM
ZXZlbCBsZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCB1bnNpZ25lZCBsaW5lTnVtYmVyLCB1
bnNpZ25lZCBjb2x1bW5OdW1iZXIsIGNvbnN0IFN0cmluZyYgc291cmNlSUQpCiB7CiAgICAgLy8g
Tm90aWZ5IHRoZSBidW5kbGUgY2xpZW50LgotICAgIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVVSUNs
aWVudCgpLndpbGxBZGRNZXNzYWdlVG9Db25zb2xlKG1fcGFnZSwgc291cmNlLCBsZXZlbCwgbWVz
c2FnZSwgbGluZU51bWJlciwgY29sdW1uTnVtYmVyLCBzb3VyY2VJRCk7CisgICAgbV9wYWdlLmlu
amVjdGVkQnVuZGxlVUlDbGllbnQoKS53aWxsQWRkTWVzc2FnZVRvQ29uc29sZSgmbV9wYWdlLCBz
b3VyY2UsIGxldmVsLCBtZXNzYWdlLCBsaW5lTnVtYmVyLCBjb2x1bW5OdW1iZXIsIHNvdXJjZUlE
KTsKIH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OmNhblJ1bkJlZm9yZVVubG9hZENvbmZpcm1Q
YW5lbCgpCiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+Y2FuUnVuQmVmb3JlVW5sb2FkQ29uZmlybVBh
bmVsKCk7CisgICAgcmV0dXJuIG1fcGFnZS5jYW5SdW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwo
KTsKIH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5l
bChjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIEZyYW1lKiBmcmFtZSkKQEAgLTM1NCw3ICszNjMsNyBA
QCBib29sIFdlYkNocm9tZUNsaWVudDo6cnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsKGNvbnN0
IFN0cmluZyYgbWVzc2FnZSwgRnJhbWUqCiAKICAgICBIYW5nRGV0ZWN0aW9uRGlzYWJsZXIgaGFu
Z0RldGVjdGlvbkRpc2FibGVyOwogCi0gICAgaWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5w
YXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjpSdW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwobWVzc2FnZSwgd2ViRnJhbWUtPmZyYW1lSUQo
KSksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbDo6
UmVwbHkoc2hvdWxkQ2xvc2UpLCBtX3BhZ2UtPnBhZ2VJRCgpLCBTZWNvbmRzOjppbmZpbml0eSgp
LCBJUEM6OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0Zm9ybVByb2Nlc3NXaWxsU3VzcGVuZCkp
CisgICAgaWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlv
bigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5CZWZvcmVVbmxvYWRDb25m
aXJtUGFuZWwobWVzc2FnZSwgd2ViRnJhbWUtPmZyYW1lSUQoKSksIE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OlJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbDo6UmVwbHkoc2hvdWxkQ2xvc2UpLCBt
X3BhZ2UucGFnZUlEKCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246
OkluZm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKSkKICAgICAgICAgcmV0dXJuIGZhbHNl
OwogCiAgICAgcmV0dXJuIHNob3VsZENsb3NlOwpAQCAtMzY5LDE0ICszNzgsMTQgQEAgdm9pZCBX
ZWJDaHJvbWVDbGllbnQ6OmNsb3NlV2luZG93U29vbigpCiAgICAgLy8gYSBjbG9zZSBleGVjdXRl
IHN5bmNocm9ub3VzbHkgYXMgcGFydCBvZiB3aW5kb3cuY2xvc2UsIGJ1dCBvdGhlciBwYXJ0cwog
ICAgIC8vIGxhdGVyIG9uLgogCi0gICAgbV9wYWdlLT5jb3JlUGFnZSgpLT5zZXRHcm91cE5hbWUo
U3RyaW5nKCkpOworICAgIG1fcGFnZS5jb3JlUGFnZSgpLT5zZXRHcm91cE5hbWUoU3RyaW5nKCkp
OwogCi0gICAgaWYgKFdlYkZyYW1lKiBmcmFtZSA9IG1fcGFnZS0+bWFpbldlYkZyYW1lKCkpIHsK
KyAgICBpZiAoV2ViRnJhbWUqIGZyYW1lID0gbV9wYWdlLm1haW5XZWJGcmFtZSgpKSB7CiAgICAg
ICAgIGlmIChGcmFtZSogY29yZUZyYW1lID0gZnJhbWUtPmNvcmVGcmFtZSgpKQogICAgICAgICAg
ICAgY29yZUZyYW1lLT5sb2FkZXIoKS5zdG9wRm9yVXNlckNhbmNlbCgpOwogICAgIH0KIAotICAg
IG1fcGFnZS0+c2VuZENsb3NlKCk7CisgICAgbV9wYWdlLnNlbmRDbG9zZSgpOwogfQogCiBzdGF0
aWMgYm9vbCBzaG91bGRTdXBwcmVzc0phdmFTY3JpcHREaWFsb2dzKEZyYW1lJiBmcmFtZSkKQEAg
LTM5NiwxMSArNDA1LDExIEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpydW5KYXZhU2NyaXB0QWxl
cnQoRnJhbWUqIGZyYW1lLCBjb25zdCBTdHJpbmcmIGFsZXJ0VGV4dCkKICAgICBBU1NFUlQod2Vi
RnJhbWUpOwogCiAgICAgLy8gTm90aWZ5IHRoZSBidW5kbGUgY2xpZW50LgotICAgIG1fcGFnZS0+
aW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLndpbGxSdW5KYXZhU2NyaXB0QWxlcnQobV9wYWdlLCBh
bGVydFRleHQsIHdlYkZyYW1lKTsKKyAgICBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgp
LndpbGxSdW5KYXZhU2NyaXB0QWxlcnQoJm1fcGFnZSwgYWxlcnRUZXh0LCB3ZWJGcmFtZSk7CiAK
ICAgICBIYW5nRGV0ZWN0aW9uRGlzYWJsZXIgaGFuZ0RldGVjdGlvbkRpc2FibGVyOwogCi0gICAg
V2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5
bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdEFsZXJ0KHdlYkZyYW1lLT5m
cmFtZUlEKCksIFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbUZyYW1lKGZyYW1lKSwgYWxlcnRUZXh0
KSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdEFsZXJ0OjpSZXBseSgpLCBt
X3BhZ2UtPnBhZ2VJRCgpLCBTZWNvbmRzOjppbmZpbml0eSgpLCBJUEM6OlNlbmRTeW5jT3B0aW9u
OjpJbmZvcm1QbGF0Zm9ybVByb2Nlc3NXaWxsU3VzcGVuZCk7CisgICAgV2ViUHJvY2Vzczo6c2lu
Z2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6Oldl
YlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdEFsZXJ0KHdlYkZyYW1lLT5mcmFtZUlEKCksIFNlY3Vy
aXR5T3JpZ2luRGF0YTo6ZnJvbUZyYW1lKGZyYW1lKSwgYWxlcnRUZXh0KSwgTWVzc2FnZXM6Oldl
YlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdEFsZXJ0OjpSZXBseSgpLCBtX3BhZ2UucGFnZUlEKCks
IFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246OkluZm9ybVBsYXRmb3Jt
UHJvY2Vzc1dpbGxTdXNwZW5kKTsKIH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnJ1bkphdmFT
Y3JpcHRDb25maXJtKEZyYW1lKiBmcmFtZSwgY29uc3QgU3RyaW5nJiBtZXNzYWdlKQpAQCAtNDEy
LDEyICs0MjEsMTIgQEAgYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnJ1bkphdmFTY3JpcHRDb25maXJt
KEZyYW1lKiBmcmFtZSwgY29uc3QgU3RyaW5nJiBtZXNzYWdlKQogICAgIEFTU0VSVCh3ZWJGcmFt
ZSk7CiAKICAgICAvLyBOb3RpZnkgdGhlIGJ1bmRsZSBjbGllbnQuCi0gICAgbV9wYWdlLT5pbmpl
Y3RlZEJ1bmRsZVVJQ2xpZW50KCkud2lsbFJ1bkphdmFTY3JpcHRDb25maXJtKG1fcGFnZSwgbWVz
c2FnZSwgd2ViRnJhbWUpOworICAgIG1fcGFnZS5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkud2ls
bFJ1bkphdmFTY3JpcHRDb25maXJtKCZtX3BhZ2UsIG1lc3NhZ2UsIHdlYkZyYW1lKTsKIAogICAg
IEhhbmdEZXRlY3Rpb25EaXNhYmxlciBoYW5nRGV0ZWN0aW9uRGlzYWJsZXI7CiAKICAgICBib29s
IHJlc3VsdCA9IGZhbHNlOwotICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50
UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVu
SmF2YVNjcmlwdENvbmZpcm0od2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRh
Ojpmcm9tRnJhbWUoZnJhbWUpLCBtZXNzYWdlKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVu
SmF2YVNjcmlwdENvbmZpcm06OlJlcGx5KHJlc3VsdCksIG1fcGFnZS0+cGFnZUlEKCksIFNlY29u
ZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246OkluZm9ybVBsYXRmb3JtUHJvY2Vz
c1dpbGxTdXNwZW5kKSkKKyAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFBy
b2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJ1bkph
dmFTY3JpcHRDb25maXJtKHdlYkZyYW1lLT5mcmFtZUlEKCksIFNlY3VyaXR5T3JpZ2luRGF0YTo6
ZnJvbUZyYW1lKGZyYW1lKSwgbWVzc2FnZSksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJ1bkph
dmFTY3JpcHRDb25maXJtOjpSZXBseShyZXN1bHQpLCBtX3BhZ2UucGFnZUlEKCksIFNlY29uZHM6
OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246OkluZm9ybVBsYXRmb3JtUHJvY2Vzc1dp
bGxTdXNwZW5kKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgcmV0dXJuIHJlc3VsdDsK
QEAgLTQzMiwxMSArNDQxLDExIEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpydW5KYXZhU2NyaXB0
UHJvbXB0KEZyYW1lKiBmcmFtZSwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjCiAgICAgQVNTRVJU
KHdlYkZyYW1lKTsKIAogICAgIC8vIE5vdGlmeSB0aGUgYnVuZGxlIGNsaWVudC4KLSAgICBtX3Bh
Z2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS53aWxsUnVuSmF2YVNjcmlwdFByb21wdChtX3Bh
Z2UsIG1lc3NhZ2UsIGRlZmF1bHRWYWx1ZSwgd2ViRnJhbWUpOworICAgIG1fcGFnZS5pbmplY3Rl
ZEJ1bmRsZVVJQ2xpZW50KCkud2lsbFJ1bkphdmFTY3JpcHRQcm9tcHQoJm1fcGFnZSwgbWVzc2Fn
ZSwgZGVmYXVsdFZhbHVlLCB3ZWJGcmFtZSk7CiAKICAgICBIYW5nRGV0ZWN0aW9uRGlzYWJsZXIg
aGFuZ0RldGVjdGlvbkRpc2FibGVyOwogCi0gICAgaWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24o
KS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpSdW5KYXZhU2NyaXB0UHJvbXB0KHdlYkZyYW1lLT5mcmFtZUlEKCksIFNlY3VyaXR5T3Jp
Z2luRGF0YTo6ZnJvbUZyYW1lKGZyYW1lKSwgbWVzc2FnZSwgZGVmYXVsdFZhbHVlKSwgTWVzc2Fn
ZXM6OldlYlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdFByb21wdDo6UmVwbHkocmVzdWx0KSwgbV9w
YWdlLT5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBDOjpTZW5kU3luY09wdGlvbjo6
SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpKQorICAgIGlmICghV2ViUHJvY2Vzczo6
c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdFByb21wdCh3ZWJGcmFtZS0+ZnJhbWVJRCgpLCBT
ZWN1cml0eU9yaWdpbkRhdGE6OmZyb21GcmFtZShmcmFtZSksIG1lc3NhZ2UsIGRlZmF1bHRWYWx1
ZSksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJ1bkphdmFTY3JpcHRQcm9tcHQ6OlJlcGx5KHJl
c3VsdCksIG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBDOjpTZW5kU3lu
Y09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpKQogICAgICAgICByZXR1
cm4gZmFsc2U7CiAKICAgICByZXR1cm4gIXJlc3VsdC5pc051bGwoKTsKQEAgLTQ0NSwyNyArNDU0
LDI5IEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpydW5KYXZhU2NyaXB0UHJvbXB0KEZyYW1lKiBm
cmFtZSwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0
U3RhdHVzYmFyVGV4dChjb25zdCBTdHJpbmcmIHN0YXR1c2JhclRleHQpCiB7CiAgICAgLy8gTm90
aWZ5IHRoZSBidW5kbGUgY2xpZW50LgotICAgIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVVSUNsaWVu
dCgpLndpbGxTZXRTdGF0dXNiYXJUZXh0KG1fcGFnZSwgc3RhdHVzYmFyVGV4dCk7CisgICAgbV9w
YWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS53aWxsU2V0U3RhdHVzYmFyVGV4dCgmbV9wYWdl
LCBzdGF0dXNiYXJUZXh0KTsKIAotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpTZXRTdGF0dXNUZXh0KHN0YXR1c2JhclRleHQpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpTZXRTdGF0dXNUZXh0KHN0YXR1c2JhclRleHQpKTsKIH0KIAog
S2V5Ym9hcmRVSU1vZGUgV2ViQ2hyb21lQ2xpZW50OjprZXlib2FyZFVJTW9kZSgpCiB7Ci0gICAg
cmV0dXJuIG1fcGFnZS0+a2V5Ym9hcmRVSU1vZGUoKTsKKyAgICByZXR1cm4gbV9wYWdlLmtleWJv
YXJkVUlNb2RlKCk7CiB9CiAKICNpZiBFTkFCTEUoUE9JTlRFUl9MT0NLKQorCiBib29sIFdlYkNo
cm9tZUNsaWVudDo6cmVxdWVzdFBvaW50ZXJMb2NrKCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6UmVxdWVzdFBvaW50ZXJMb2NrKCkpOworICAgIG1fcGFnZS5z
ZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJlcXVlc3RQb2ludGVyTG9jaygpKTsKICAgICBy
ZXR1cm4gdHJ1ZTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJlcXVlc3RQb2ludGVyVW5s
b2NrKCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UmVxdWVz
dFBvaW50ZXJVbmxvY2soKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94
eTo6UmVxdWVzdFBvaW50ZXJVbmxvY2soKSk7CiB9CisKICNlbmRpZgogCiB2b2lkIFdlYkNocm9t
ZUNsaWVudDo6aW52YWxpZGF0ZVJvb3RWaWV3KGNvbnN0IEludFJlY3QmKQpAQCAtNDc1LDYxICs0
ODYsNjEgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmludmFsaWRhdGVSb290Vmlldyhjb25zdCBJ
bnRSZWN0JikKIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmludmFsaWRhdGVDb250ZW50c0FuZFJv
b3RWaWV3KGNvbnN0IEludFJlY3QmIHJlY3QpCiB7Ci0gICAgaWYgKERvY3VtZW50KiBkb2N1bWVu
dCA9IG1fcGFnZS0+Y29yZVBhZ2UoKS0+bWFpbkZyYW1lKCkuZG9jdW1lbnQoKSkgeworICAgIGlm
IChEb2N1bWVudCogZG9jdW1lbnQgPSBtX3BhZ2UuY29yZVBhZ2UoKS0+bWFpbkZyYW1lKCkuZG9j
dW1lbnQoKSkgewogICAgICAgICBpZiAoZG9jdW1lbnQtPnByaW50aW5nKCkpCiAgICAgICAgICAg
ICByZXR1cm47CiAgICAgfQogCi0gICAgbV9wYWdlLT5kcmF3aW5nQXJlYSgpLT5zZXROZWVkc0Rp
c3BsYXlJblJlY3QocmVjdCk7CisgICAgbV9wYWdlLmRyYXdpbmdBcmVhKCktPnNldE5lZWRzRGlz
cGxheUluUmVjdChyZWN0KTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmludmFsaWRhdGVD
b250ZW50c0ZvclNsb3dTY3JvbGwoY29uc3QgSW50UmVjdCYgcmVjdCkKIHsKLSAgICBpZiAoRG9j
dW1lbnQqIGRvY3VtZW50ID0gbV9wYWdlLT5jb3JlUGFnZSgpLT5tYWluRnJhbWUoKS5kb2N1bWVu
dCgpKSB7CisgICAgaWYgKERvY3VtZW50KiBkb2N1bWVudCA9IG1fcGFnZS5jb3JlUGFnZSgpLT5t
YWluRnJhbWUoKS5kb2N1bWVudCgpKSB7CiAgICAgICAgIGlmIChkb2N1bWVudC0+cHJpbnRpbmco
KSkKICAgICAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBtX3BhZ2UtPnBhZ2VEaWRTY3Jv
bGwoKTsKKyAgICBtX3BhZ2UucGFnZURpZFNjcm9sbCgpOwogI2lmIFVTRShDT09SRElOQVRFRF9H
UkFQSElDUykKLSAgICBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPnNjcm9sbChyZWN0LCBJbnRTaXpl
KCkpOworICAgIG1fcGFnZS5kcmF3aW5nQXJlYSgpLT5zY3JvbGwocmVjdCwgSW50U2l6ZSgpKTsK
ICNlbHNlCi0gICAgbV9wYWdlLT5kcmF3aW5nQXJlYSgpLT5zZXROZWVkc0Rpc3BsYXlJblJlY3Qo
cmVjdCk7CisgICAgbV9wYWdlLmRyYXdpbmdBcmVhKCktPnNldE5lZWRzRGlzcGxheUluUmVjdChy
ZWN0KTsKICNlbmRpZgogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2Nyb2xsKGNvbnN0IElu
dFNpemUmIHNjcm9sbERlbHRhLCBjb25zdCBJbnRSZWN0JiBzY3JvbGxSZWN0LCBjb25zdCBJbnRS
ZWN0JiBjbGlwUmVjdCkKIHsKLSAgICBtX3BhZ2UtPnBhZ2VEaWRTY3JvbGwoKTsKLSAgICBtX3Bh
Z2UtPmRyYXdpbmdBcmVhKCktPnNjcm9sbChpbnRlcnNlY3Rpb24oc2Nyb2xsUmVjdCwgY2xpcFJl
Y3QpLCBzY3JvbGxEZWx0YSk7CisgICAgbV9wYWdlLnBhZ2VEaWRTY3JvbGwoKTsKKyAgICBtX3Bh
Z2UuZHJhd2luZ0FyZWEoKS0+c2Nyb2xsKGludGVyc2VjdGlvbihzY3JvbGxSZWN0LCBjbGlwUmVj
dCksIHNjcm9sbERlbHRhKTsKIH0KIAogI2lmIFVTRShDT09SRElOQVRFRF9HUkFQSElDUykKIHZv
aWQgV2ViQ2hyb21lQ2xpZW50OjpkZWxlZ2F0ZWRTY3JvbGxSZXF1ZXN0ZWQoY29uc3QgSW50UG9p
bnQmIHNjcm9sbE9mZnNldCkKIHsKLSAgICBtX3BhZ2UtPnBhZ2VEaWRSZXF1ZXN0U2Nyb2xsKHNj
cm9sbE9mZnNldCk7CisgICAgbV9wYWdlLnBhZ2VEaWRSZXF1ZXN0U2Nyb2xsKHNjcm9sbE9mZnNl
dCk7CiB9CiAjZW5kaWYKIAogSW50UG9pbnQgV2ViQ2hyb21lQ2xpZW50OjpzY3JlZW5Ub1Jvb3RW
aWV3KGNvbnN0IEludFBvaW50JiBwb2ludCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5z
Y3JlZW5Ub1Jvb3RWaWV3KHBvaW50KTsKKyAgICByZXR1cm4gbV9wYWdlLnNjcmVlblRvUm9vdFZp
ZXcocG9pbnQpOwogfQogCiBJbnRSZWN0IFdlYkNocm9tZUNsaWVudDo6cm9vdFZpZXdUb1NjcmVl
bihjb25zdCBJbnRSZWN0JiByZWN0KSBjb25zdAogewotICAgIHJldHVybiBtX3BhZ2UtPnJvb3RW
aWV3VG9TY3JlZW4ocmVjdCk7CisgICAgcmV0dXJuIG1fcGFnZS5yb290Vmlld1RvU2NyZWVuKHJl
Y3QpOwogfQogICAgIAogI2lmIFBMQVRGT1JNKElPUykKIEludFBvaW50IFdlYkNocm9tZUNsaWVu
dDo6YWNjZXNzaWJpbGl0eVNjcmVlblRvUm9vdFZpZXcoY29uc3QgSW50UG9pbnQmIHBvaW50KSBj
b25zdAogewotICAgIHJldHVybiBtX3BhZ2UtPmFjY2Vzc2liaWxpdHlTY3JlZW5Ub1Jvb3RWaWV3
KHBvaW50KTsKKyAgICByZXR1cm4gbV9wYWdlLmFjY2Vzc2liaWxpdHlTY3JlZW5Ub1Jvb3RWaWV3
KHBvaW50KTsKIH0KIAogSW50UmVjdCBXZWJDaHJvbWVDbGllbnQ6OnJvb3RWaWV3VG9BY2Nlc3Np
YmlsaXR5U2NyZWVuKGNvbnN0IEludFJlY3QmIHJlY3QpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1f
cGFnZS0+cm9vdFZpZXdUb0FjY2Vzc2liaWxpdHlTY3JlZW4ocmVjdCk7CisgICAgcmV0dXJuIG1f
cGFnZS5yb290Vmlld1RvQWNjZXNzaWJpbGl0eVNjcmVlbihyZWN0KTsKIH0KICNlbmRpZgogCkBA
IC01NDEsMjAgKzU1MiwyMCBAQCBQbGF0Zm9ybVBhZ2VDbGllbnQgV2ViQ2hyb21lQ2xpZW50Ojpw
bGF0Zm9ybVBhZ2VDbGllbnQoKSBjb25zdAogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y29udGVu
dHNTaXplQ2hhbmdlZChGcmFtZSogZnJhbWUsIGNvbnN0IEludFNpemUmIHNpemUpIGNvbnN0CiB7
Ci0gICAgaWYgKCFtX3BhZ2UtPmNvcmVQYWdlKCktPnNldHRpbmdzKCkuZnJhbWVGbGF0dGVuaW5n
RW5hYmxlZCgpKSB7CisgICAgaWYgKCFtX3BhZ2UuY29yZVBhZ2UoKS0+c2V0dGluZ3MoKS5mcmFt
ZUZsYXR0ZW5pbmdFbmFibGVkKCkpIHsKICAgICAgICAgV2ViRnJhbWUqIGxhcmdlc3RGcmFtZSA9
IGZpbmRMYXJnZXN0RnJhbWVJbkZyYW1lU2V0KG1fcGFnZSk7CiAgICAgICAgIGlmIChsYXJnZXN0
RnJhbWUgIT0gbV9jYWNoZWRGcmFtZVNldExhcmdlc3RGcmFtZS5nZXQoKSkgewogICAgICAgICAg
ICAgbV9jYWNoZWRGcmFtZVNldExhcmdlc3RGcmFtZSA9IGxhcmdlc3RGcmFtZTsKLSAgICAgICAg
ICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpGcmFtZVNldExhcmdlc3RG
cmFtZUNoYW5nZWQobGFyZ2VzdEZyYW1lID8gbGFyZ2VzdEZyYW1lLT5mcmFtZUlEKCkgOiAwKSk7
CisgICAgICAgICAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpGcmFtZVNl
dExhcmdlc3RGcmFtZUNoYW5nZWQobGFyZ2VzdEZyYW1lID8gbGFyZ2VzdEZyYW1lLT5mcmFtZUlE
KCkgOiAwKSk7CiAgICAgICAgIH0KICAgICB9CiAKICAgICBpZiAoJmZyYW1lLT5wYWdlKCktPm1h
aW5GcmFtZSgpICE9IGZyYW1lKQogICAgICAgICByZXR1cm47CiAKLSAgICBtX3BhZ2UtPnNlbmQo
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RGlkQ2hhbmdlQ29udGVudFNpemUoc2l6ZSkpOworICAg
IG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkRpZENoYW5nZUNvbnRlbnRTaXpl
KHNpemUpKTsKIAotICAgIG1fcGFnZS0+ZHJhd2luZ0FyZWEoKS0+bWFpbkZyYW1lQ29udGVudFNp
emVDaGFuZ2VkKHNpemUpOworICAgIG1fcGFnZS5kcmF3aW5nQXJlYSgpLT5tYWluRnJhbWVDb250
ZW50U2l6ZUNoYW5nZWQoc2l6ZSk7CiAKICAgICBGcmFtZVZpZXcqIGZyYW1lVmlldyA9IGZyYW1l
LT52aWV3KCk7CiAgICAgaWYgKGZyYW1lVmlldyAmJiAhZnJhbWVWaWV3LT5kZWxlZ2F0ZXNTY3Jv
bGxpbmcoKSkgIHsKQEAgLTU2Miw3ICs1NzMsNyBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y29u
dGVudHNTaXplQ2hhbmdlZChGcmFtZSogZnJhbWUsIGNvbnN0IEludFNpemUmIHNpemUpIGNvbgog
ICAgICAgICBib29sIGhhc1ZlcnRpY2FsU2Nyb2xsYmFyID0gZnJhbWVWaWV3LT52ZXJ0aWNhbFNj
cm9sbGJhcigpOwogCiAgICAgICAgIGlmIChoYXNIb3Jpem9udGFsU2Nyb2xsYmFyICE9IG1fY2Fj
aGVkTWFpbkZyYW1lSGFzSG9yaXpvbnRhbFNjcm9sbGJhciB8fCBoYXNWZXJ0aWNhbFNjcm9sbGJh
ciAhPSBtX2NhY2hlZE1haW5GcmFtZUhhc1ZlcnRpY2FsU2Nyb2xsYmFyKSB7Ci0gICAgICAgICAg
ICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RGlkQ2hhbmdlU2Nyb2xsYmFy
c0Zvck1haW5GcmFtZShoYXNIb3Jpem9udGFsU2Nyb2xsYmFyLCBoYXNWZXJ0aWNhbFNjcm9sbGJh
cikpOworICAgICAgICAgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RGlk
Q2hhbmdlU2Nyb2xsYmFyc0Zvck1haW5GcmFtZShoYXNIb3Jpem9udGFsU2Nyb2xsYmFyLCBoYXNW
ZXJ0aWNhbFNjcm9sbGJhcikpOwogCiAgICAgICAgICAgICBtX2NhY2hlZE1haW5GcmFtZUhhc0hv
cml6b250YWxTY3JvbGxiYXIgPSBoYXNIb3Jpem9udGFsU2Nyb2xsYmFyOwogICAgICAgICAgICAg
bV9jYWNoZWRNYWluRnJhbWVIYXNWZXJ0aWNhbFNjcm9sbGJhciA9IGhhc1ZlcnRpY2FsU2Nyb2xs
YmFyOwpAQCAtNjAzLDEyICs2MTQsMTIgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnVuYXZhaWxh
YmxlUGx1Z2luQnV0dG9uQ2xpY2tlZChFbGVtZW50KiBlbGVtZW50LCBSZW5kZXJFbWIKICAgICBI
VE1MUGx1Z0luSW1hZ2VFbGVtZW50KiBwbHVnaW5FbGVtZW50ID0gc3RhdGljX2Nhc3Q8SFRNTFBs
dWdJbkltYWdlRWxlbWVudCo+KGVsZW1lbnQpOwogCiAgICAgU3RyaW5nIGZyYW1lVVJMU3RyaW5n
ID0gcGx1Z2luRWxlbWVudC0+ZG9jdW1lbnQoKS5mcmFtZSgpLT5sb2FkZXIoKS5kb2N1bWVudExv
YWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwotICAgIFN0cmluZyBwYWdlVVJMU3RyaW5n
ID0gbV9wYWdlLT5tYWluRnJhbWUoKS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKS0+cmVzcG9u
c2VVUkwoKS5zdHJpbmcoKTsKKyAgICBTdHJpbmcgcGFnZVVSTFN0cmluZyA9IG1fcGFnZS5tYWlu
RnJhbWUoKS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKS0+cmVzcG9uc2VVUkwoKS5zdHJpbmco
KTsKICAgICBTdHJpbmcgcGx1Z2luVVJMU3RyaW5nID0gcGx1Z2luRWxlbWVudC0+ZG9jdW1lbnQo
KS5jb21wbGV0ZVVSTChwbHVnaW5FbGVtZW50LT51cmwoKSkuc3RyaW5nKCk7CiAgICAgVVJMIHBs
dWdpbnNwYWdlQXR0cmlidXRlVVJMID0gZWxlbWVudC0+ZG9jdW1lbnQoKS5jb21wbGV0ZVVSTChz
dHJpcExlYWRpbmdBbmRUcmFpbGluZ0hUTUxTcGFjZXMocGx1Z2luRWxlbWVudC0+Z2V0QXR0cmli
dXRlKHBsdWdpbnNwYWdlQXR0cikpKTsKICAgICBpZiAoIXBsdWdpbnNwYWdlQXR0cmlidXRlVVJM
LnByb3RvY29sSXNJbkhUVFBGYW1pbHkoKSkKICAgICAgICAgcGx1Z2luc3BhZ2VBdHRyaWJ1dGVV
UkwgPSBVUkwoKTsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6VW5h
dmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2VkKHBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uLCBw
bHVnaW5FbGVtZW50LT5zZXJ2aWNlVHlwZSgpLCBwbHVnaW5VUkxTdHJpbmcsIHBsdWdpbnNwYWdl
QXR0cmlidXRlVVJMLnN0cmluZygpLCBmcmFtZVVSTFN0cmluZywgcGFnZVVSTFN0cmluZykpOwor
ICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlVuYXZhaWxhYmxlUGx1Z2lu
QnV0dG9uQ2xpY2tlZChwbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbiwgcGx1Z2luRWxlbWVudC0+
c2VydmljZVR5cGUoKSwgcGx1Z2luVVJMU3RyaW5nLCBwbHVnaW5zcGFnZUF0dHJpYnV0ZVVSTC5z
dHJpbmcoKSwgZnJhbWVVUkxTdHJpbmcsIHBhZ2VVUkxTdHJpbmcpKTsKICNlbHNlCiAgICAgVU5V
U0VEX1BBUkFNKGVsZW1lbnQpOwogICAgIFVOVVNFRF9QQVJBTShwbHVnaW5VbmF2YWlsYWJpbGl0
eVJlYXNvbik7CkBAIC02MjUsMTEgKzYzNiwxMSBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6bW91
c2VEaWRNb3ZlT3ZlckVsZW1lbnQoY29uc3QgSGl0VGVzdFJlc3VsdCYgaGl0VGVzdFJlc3VsdAog
ICAgIFJlZlB0cjxBUEk6Ok9iamVjdD4gdXNlckRhdGE7CiAKICAgICAvLyBOb3RpZnkgdGhlIGJ1
bmRsZSBjbGllbnQuCi0gICAgbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkubW91c2VE
aWRNb3ZlT3ZlckVsZW1lbnQobV9wYWdlLCBoaXRUZXN0UmVzdWx0LCBzdGF0aWNfY2FzdDxXZWJF
dmVudDo6TW9kaWZpZXJzPihtb2RpZmllckZsYWdzKSwgdXNlckRhdGEpOworICAgIG1fcGFnZS5p
bmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkubW91c2VEaWRNb3ZlT3ZlckVsZW1lbnQoJm1fcGFnZSwg
aGl0VGVzdFJlc3VsdCwgc3RhdGljX2Nhc3Q8V2ViRXZlbnQ6Ok1vZGlmaWVycz4obW9kaWZpZXJG
bGFncyksIHVzZXJEYXRhKTsKIAogICAgIC8vIE5vdGlmeSB0aGUgVUlQcm9jZXNzLgogICAgIFdl
YkhpdFRlc3RSZXN1bHREYXRhIHdlYkhpdFRlc3RSZXN1bHREYXRhKGhpdFRlc3RSZXN1bHQpOwot
ICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpNb3VzZURpZE1vdmVPdmVy
RWxlbWVudCh3ZWJIaXRUZXN0UmVzdWx0RGF0YSwgbW9kaWZpZXJGbGFncywgVXNlckRhdGEoV2Vi
UHJvY2Vzczo6c2luZ2xldG9uKCkudHJhbnNmb3JtT2JqZWN0c1RvSGFuZGxlcyh1c2VyRGF0YS5n
ZXQoKSkuZ2V0KCkpKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6
TW91c2VEaWRNb3ZlT3ZlckVsZW1lbnQod2ViSGl0VGVzdFJlc3VsdERhdGEsIG1vZGlmaWVyRmxh
Z3MsIFVzZXJEYXRhKFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnRyYW5zZm9ybU9iamVjdHNUb0hh
bmRsZXModXNlckRhdGEuZ2V0KCkpLmdldCgpKSkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVu
dDo6c2V0VG9vbFRpcChjb25zdCBTdHJpbmcmIHRvb2xUaXAsIFRleHREaXJlY3Rpb24pCkBAIC02
NDAsNyArNjUxLDcgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNldFRvb2xUaXAoY29uc3QgU3Ry
aW5nJiB0b29sVGlwLCBUZXh0RGlyZWN0aW9uKQogICAgICAgICByZXR1cm47CiAgICAgbV9jYWNo
ZWRUb29sVGlwID0gdG9vbFRpcDsKIAotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFn
ZVByb3h5OjpTZXRUb29sVGlwKG1fY2FjaGVkVG9vbFRpcCkpOworICAgIG1fcGFnZS5zZW5kKE1l
c3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldFRvb2xUaXAobV9jYWNoZWRUb29sVGlwKSk7CiB9CiAK
IHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpwcmludChGcmFtZSogZnJhbWUpCkBAIC02NjgsNyArNjc5
LDcgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnByaW50KEZyYW1lKiBmcmFtZSkKICAgICB9CiAj
ZW5kaWYKIAotICAgIG1fcGFnZS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UHJp
bnRGcmFtZSh3ZWJGcmFtZS0+ZnJhbWVJRCgpKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UHJp
bnRGcmFtZTo6UmVwbHkoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBDOjpTZW5kU3luY09wdGlv
bjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpOworICAgIG1fcGFnZS5zZW5kU3lu
YyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQcmludEZyYW1lKHdlYkZyYW1lLT5mcmFtZUlEKCkp
LCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQcmludEZyYW1lOjpSZXBseSgpLCBTZWNvbmRzOjpp
bmZpbml0eSgpLCBJUEM6OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0Zm9ybVByb2Nlc3NXaWxs
U3VzcGVuZCk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpleGNlZWRlZERhdGFiYXNlUXVv
dGEoRnJhbWUqIGZyYW1lLCBjb25zdCBTdHJpbmcmIGRhdGFiYXNlTmFtZSwgRGF0YWJhc2VEZXRh
aWxzIGRldGFpbHMpCkBAIC02ODYsMTIgKzY5NywxMiBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6
ZXhjZWVkZWREYXRhYmFzZVF1b3RhKEZyYW1lKiBmcmFtZSwgY29uc3QgU3RyaW5nJiBkYXRhYmFz
ZQogICAgIGF1dG8gY3VycmVudE9yaWdpblVzYWdlID0gdHJhY2tlci51c2FnZShvcmlnaW5EYXRh
KTsKICAgICB1aW50NjRfdCBuZXdRdW90YSA9IDA7CiAgICAgUmVmUHRyPEFQSTo6U2VjdXJpdHlP
cmlnaW4+IHNlY3VyaXR5T3JpZ2luID0gQVBJOjpTZWN1cml0eU9yaWdpbjo6Y3JlYXRlKFdlYkNv
cmU6OlNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbURhdGFiYXNlSWRlbnRpZmllcihXZWJDb3JlOjpT
ZWN1cml0eU9yaWdpbkRhdGE6OmZyb21TZWN1cml0eU9yaWdpbigqb3JpZ2luKS5kYXRhYmFzZUlk
ZW50aWZpZXIoKSktPnNlY3VyaXR5T3JpZ2luKCkpOwotICAgIG5ld1F1b3RhID0gbV9wYWdlLT5p
bmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkuZGlkRXhjZWVkRGF0YWJhc2VRdW90YShtX3BhZ2UsIHNl
Y3VyaXR5T3JpZ2luLmdldCgpLCBkYXRhYmFzZU5hbWUsIGRldGFpbHMuZGlzcGxheU5hbWUoKSwg
Y3VycmVudFF1b3RhLCBjdXJyZW50T3JpZ2luVXNhZ2UsIGRldGFpbHMuY3VycmVudFVzYWdlKCks
IGRldGFpbHMuZXhwZWN0ZWRVc2FnZSgpKTsKKyAgICBuZXdRdW90YSA9IG1fcGFnZS5pbmplY3Rl
ZEJ1bmRsZVVJQ2xpZW50KCkuZGlkRXhjZWVkRGF0YWJhc2VRdW90YSgmbV9wYWdlLCBzZWN1cml0
eU9yaWdpbi5nZXQoKSwgZGF0YWJhc2VOYW1lLCBkZXRhaWxzLmRpc3BsYXlOYW1lKCksIGN1cnJl
bnRRdW90YSwgY3VycmVudE9yaWdpblVzYWdlLCBkZXRhaWxzLmN1cnJlbnRVc2FnZSgpLCBkZXRh
aWxzLmV4cGVjdGVkVXNhZ2UoKSk7CiAKICAgICBpZiAoIW5ld1F1b3RhKSB7CiAgICAgICAgIFdl
YlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5j
KAogICAgICAgICAgICAgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RXhjZWVkZWREYXRhYmFzZVF1
b3RhKHdlYkZyYW1lLT5mcmFtZUlEKCksIFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJv
bVNlY3VyaXR5T3JpZ2luKCpvcmlnaW4pLmRhdGFiYXNlSWRlbnRpZmllcigpLCBkYXRhYmFzZU5h
bWUsIGRldGFpbHMuZGlzcGxheU5hbWUoKSwgY3VycmVudFF1b3RhLCBjdXJyZW50T3JpZ2luVXNh
Z2UsIGRldGFpbHMuY3VycmVudFVzYWdlKCksIGRldGFpbHMuZXhwZWN0ZWRVc2FnZSgpKSwKLSAg
ICAgICAgICAgIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkV4Y2VlZGVkRGF0YWJhc2VRdW90YTo6
UmVwbHkobmV3UXVvdGEpLCBtX3BhZ2UtPnBhZ2VJRCgpLCBTZWNvbmRzOjppbmZpbml0eSgpLCBJ
UEM6OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0Zm9ybVByb2Nlc3NXaWxsU3VzcGVuZCk7Cisg
ICAgICAgICAgICBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpFeGNlZWRlZERhdGFiYXNlUXVvdGE6
OlJlcGx5KG5ld1F1b3RhKSwgbV9wYWdlLnBhZ2VJRCgpLCBTZWNvbmRzOjppbmZpbml0eSgpLCBJ
UEM6OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0Zm9ybVByb2Nlc3NXaWxsU3VzcGVuZCk7CiAg
ICAgfQogCiAgICAgdHJhY2tlci5zZXRRdW90YShvcmlnaW5EYXRhLCBuZXdRdW90YSk7CkBAIC03
MDUsMTAgKzcxNiwxMCBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6cmVhY2hlZE1heEFwcENhY2hl
U2l6ZShpbnQ2NF90KQogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJlYWNoZWRBcHBsaWNhdGlvbkNh
Y2hlT3JpZ2luUXVvdGEoU2VjdXJpdHlPcmlnaW4qIG9yaWdpbiwgaW50NjRfdCB0b3RhbEJ5dGVz
TmVlZGVkKQogewogICAgIFJlZlB0cjxBUEk6OlNlY3VyaXR5T3JpZ2luPiBzZWN1cml0eU9yaWdp
biA9IEFQSTo6U2VjdXJpdHlPcmlnaW46OmNyZWF0ZUZyb21TdHJpbmcob3JpZ2luLT50b1N0cmlu
ZygpKTsKLSAgICBpZiAobV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkuZGlkUmVhY2hB
cHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEobV9wYWdlLCBzZWN1cml0eU9yaWdpbi5nZXQoKSwg
dG90YWxCeXRlc05lZWRlZCkpCisgICAgaWYgKG1fcGFnZS5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50
KCkuZGlkUmVhY2hBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoJm1fcGFnZSwgc2VjdXJpdHlP
cmlnaW4uZ2V0KCksIHRvdGFsQnl0ZXNOZWVkZWQpKQogICAgICAgICByZXR1cm47CiAKLSAgICBh
dXRvJiBjYWNoZVN0b3JhZ2UgPSBtX3BhZ2UtPmNvcmVQYWdlKCktPmFwcGxpY2F0aW9uQ2FjaGVT
dG9yYWdlKCk7CisgICAgYXV0byYgY2FjaGVTdG9yYWdlID0gbV9wYWdlLmNvcmVQYWdlKCktPmFw
cGxpY2F0aW9uQ2FjaGVTdG9yYWdlKCk7CiAgICAgaW50NjRfdCBjdXJyZW50UXVvdGEgPSAwOwog
ICAgIGlmICghY2FjaGVTdG9yYWdlLmNhbGN1bGF0ZVF1b3RhRm9yT3JpZ2luKG9yaWdpbiwgY3Vy
cmVudFF1b3RhKSkKICAgICAgICAgcmV0dXJuOwpAQCAtNzE2LDcgKzcyNyw3IEBAIHZvaWQgV2Vi
Q2hyb21lQ2xpZW50OjpyZWFjaGVkQXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3RhKFNlY3VyaXR5
T3JpZ2luKiBvcmlnaW4sCiAgICAgdWludDY0X3QgbmV3UXVvdGEgPSAwOwogICAgIFdlYlByb2Nl
c3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKAogICAg
ICAgICBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZWFjaGVkQXBwbGljYXRpb25DYWNoZU9yaWdp
blF1b3RhKFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbVNlY3VyaXR5T3JpZ2luKCpv
cmlnaW4pLmRhdGFiYXNlSWRlbnRpZmllcigpLCBjdXJyZW50UXVvdGEsIHRvdGFsQnl0ZXNOZWVk
ZWQpLAotICAgICAgICBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZWFjaGVkQXBwbGljYXRpb25D
YWNoZU9yaWdpblF1b3RhOjpSZXBseShuZXdRdW90YSksIG1fcGFnZS0+cGFnZUlEKCksIFNlY29u
ZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246OkluZm9ybVBsYXRmb3JtUHJvY2Vz
c1dpbGxTdXNwZW5kKTsKKyAgICAgICAgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UmVhY2hlZEFw
cGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YTo6UmVwbHkobmV3UXVvdGEpLCBtX3BhZ2UucGFnZUlE
KCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246OkluZm9ybVBsYXRm
b3JtUHJvY2Vzc1dpbGxTdXNwZW5kKTsKIAogICAgIGNhY2hlU3RvcmFnZS5zdG9yZVVwZGF0ZWRR
dW90YUZvck9yaWdpbihvcmlnaW4sIG5ld1F1b3RhKTsKIH0KQEAgLTczMCwzNSArNzQxLDMyIEBA
IHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojphbm5vdGF0ZWRSZWdpb25zQ2hhbmdlZCgpCiAKIGJvb2wg
V2ViQ2hyb21lQ2xpZW50OjpzaG91bGRSZXBsYWNlV2l0aEdlbmVyYXRlZEZpbGVGb3JVcGxvYWQo
Y29uc3QgU3RyaW5nJiBwYXRoLCBTdHJpbmcmIGdlbmVyYXRlZEZpbGVuYW1lKQogewotICAgIGdl
bmVyYXRlZEZpbGVuYW1lID0gbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkuc2hvdWxk
R2VuZXJhdGVGaWxlRm9yVXBsb2FkKG1fcGFnZSwgcGF0aCk7CisgICAgZ2VuZXJhdGVkRmlsZW5h
bWUgPSBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLnNob3VsZEdlbmVyYXRlRmlsZUZv
clVwbG9hZCgmbV9wYWdlLCBwYXRoKTsKICAgICByZXR1cm4gIWdlbmVyYXRlZEZpbGVuYW1lLmlz
TnVsbCgpOwogfQogCiBTdHJpbmcgV2ViQ2hyb21lQ2xpZW50OjpnZW5lcmF0ZVJlcGxhY2VtZW50
RmlsZShjb25zdCBTdHJpbmcmIHBhdGgpCiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+aW5qZWN0ZWRC
dW5kbGVVSUNsaWVudCgpLmdlbmVyYXRlRmlsZUZvclVwbG9hZChtX3BhZ2UsIHBhdGgpOworICAg
IHJldHVybiBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLmdlbmVyYXRlRmlsZUZvclVw
bG9hZCgmbV9wYWdlLCBwYXRoKTsKIH0KIAogI2lmIEVOQUJMRShJTlBVVF9UWVBFX0NPTE9SKQog
c3RkOjp1bmlxdWVfcHRyPENvbG9yQ2hvb3Nlcj4gV2ViQ2hyb21lQ2xpZW50OjpjcmVhdGVDb2xv
ckNob29zZXIoQ29sb3JDaG9vc2VyQ2xpZW50KiBjbGllbnQsIGNvbnN0IENvbG9yJiBpbml0aWFs
Q29sb3IpCiB7Ci0gICAgcmV0dXJuIHN0ZDo6bWFrZV91bmlxdWU8V2ViQ29sb3JDaG9vc2VyPiht
X3BhZ2UsIGNsaWVudCwgaW5pdGlhbENvbG9yKTsKKyAgICByZXR1cm4gc3RkOjptYWtlX3VuaXF1
ZTxXZWJDb2xvckNob29zZXI+KCZtX3BhZ2UsIGNsaWVudCwgaW5pdGlhbENvbG9yKTsKIH0KICNl
bmRpZgogCi12b2lkIFdlYkNocm9tZUNsaWVudDo6cnVuT3BlblBhbmVsKEZyYW1lKiBmcmFtZSwg
UGFzc1JlZlB0cjxGaWxlQ2hvb3Nlcj4gcHJwRmlsZUNob29zZXIpCit2b2lkIFdlYkNocm9tZUNs
aWVudDo6cnVuT3BlblBhbmVsKEZyYW1lJiBmcmFtZSwgRmlsZUNob29zZXImIGZpbGVDaG9vc2Vy
KQogewotICAgIGlmIChtX3BhZ2UtPmFjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyKCkpCisg
ICAgaWYgKG1fcGFnZS5hY3RpdmVPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcigpKQogICAgICAgICBy
ZXR1cm47CiAKLSAgICBSZWZQdHI8RmlsZUNob29zZXI+IGZpbGVDaG9vc2VyID0gcHJwRmlsZUNo
b29zZXI7CisgICAgbV9wYWdlLnNldEFjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyKFdlYk9w
ZW5QYW5lbFJlc3VsdExpc3RlbmVyOjpjcmVhdGUoJm1fcGFnZSwgJmZpbGVDaG9vc2VyKSk7CiAK
LSAgICBtX3BhZ2UtPnNldEFjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyKFdlYk9wZW5QYW5l
bFJlc3VsdExpc3RlbmVyOjpjcmVhdGUobV9wYWdlLCBmaWxlQ2hvb3Nlci5nZXQoKSkpOwotCi0g
ICAgV2ViRnJhbWUqIHdlYkZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZyYW1lKTsK
KyAgICBhdXRvKiB3ZWJGcmFtZSA9IFdlYkZyYW1lOjpmcm9tQ29yZUZyYW1lKGZyYW1lKTsKICAg
ICBBU1NFUlQod2ViRnJhbWUpOwotCi0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OlJ1bk9wZW5QYW5lbCh3ZWJGcmFtZS0+ZnJhbWVJRCgpLCBTZWN1cml0eU9yaWdpbkRh
dGE6OmZyb21GcmFtZShmcmFtZSksIGZpbGVDaG9vc2VyLT5zZXR0aW5ncygpKSk7CisgICAgbV9w
YWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuT3BlblBhbmVsKHdlYkZyYW1lLT5m
cmFtZUlEKCksIFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbUZyYW1lKCZmcmFtZSksIGZpbGVDaG9v
c2VyLnNldHRpbmdzKCkpKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmxvYWRJY29uRm9y
RmlsZXMoY29uc3QgVmVjdG9yPFN0cmluZz4mIGZpbGVuYW1lcywgRmlsZUljb25Mb2FkZXImIGxv
YWRlcikKQEAgLTc2NywzNCArNzc1LDM4IEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpsb2FkSWNv
bkZvckZpbGVzKGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBmaWxlbmFtZXMsIEZpbGVJY29uCiB9CiAK
ICNpZiAhUExBVEZPUk0oSU9TKQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0Q3Vyc29yKGNv
bnN0IFdlYkNvcmU6OkN1cnNvciYgY3Vyc29yKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdl
czo6V2ViUGFnZVByb3h5OjpTZXRDdXJzb3IoY3Vyc29yKSk7CisgICAgbV9wYWdlLnNlbmQoTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0Q3Vyc29yKGN1cnNvcikpOwogfQogCiB2b2lkIFdlYkNo
cm9tZUNsaWVudDo6c2V0Q3Vyc29ySGlkZGVuVW50aWxNb3VzZU1vdmVzKGJvb2wgaGlkZGVuVW50
aWxNb3VzZU1vdmVzKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjpTZXRDdXJzb3JIaWRkZW5VbnRpbE1vdXNlTW92ZXMoaGlkZGVuVW50aWxNb3VzZU1vdmVzKSk7
CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0Q3Vyc29ySGlkZGVu
VW50aWxNb3VzZU1vdmVzKGhpZGRlblVudGlsTW91c2VNb3ZlcykpOwogfQorCiAjZW5kaWYKIAog
I2lmIEVOQUJMRShSRVFVRVNUX0FOSU1BVElPTl9GUkFNRSkgJiYgIVVTRShSRVFVRVNUX0FOSU1B
VElPTl9GUkFNRV9USU1FUikKKwogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNjaGVkdWxlQW5pbWF0
aW9uKCkKIHsKICNpZiBVU0UoQ09PUkRJTkFURURfR1JBUEhJQ1MpCi0gICAgbV9wYWdlLT5kcmF3
aW5nQXJlYSgpLT5sYXllclRyZWVIb3N0KCktPnNjaGVkdWxlQW5pbWF0aW9uKCk7CisgICAgbV9w
YWdlLmRyYXdpbmdBcmVhKCktPmxheWVyVHJlZUhvc3QoKS0+c2NoZWR1bGVBbmltYXRpb24oKTsK
ICNlbmRpZgogfQorCiAjZW5kaWYKIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmRpZEFzc29jaWF0
ZUZvcm1Db250cm9scyhjb25zdCBWZWN0b3I8UmVmUHRyPFdlYkNvcmU6OkVsZW1lbnQ+PiYgZWxl
bWVudHMpCiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCku
ZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xzKG1fcGFnZSwgZWxlbWVudHMpOworICAgIHJldHVybiBt
X3BhZ2UuaW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCkuZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xz
KCZtX3BhZ2UsIGVsZW1lbnRzKTsKIH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnNob3VsZE5v
dGlmeU9uRm9ybUNoYW5nZXMoKQogewotICAgIHJldHVybiBtX3BhZ2UtPmluamVjdGVkQnVuZGxl
Rm9ybUNsaWVudCgpLnNob3VsZE5vdGlmeU9uRm9ybUNoYW5nZXMobV9wYWdlKTsKKyAgICByZXR1
cm4gbV9wYWdlLmluamVjdGVkQnVuZGxlRm9ybUNsaWVudCgpLnNob3VsZE5vdGlmeU9uRm9ybUNo
YW5nZXMoJm1fcGFnZSk7CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpzZWxlY3RJdGVtV3Jp
dGluZ0RpcmVjdGlvbklzTmF0dXJhbCgpCkBAIC04MTksMzkgKzgzMSw0MSBAQCBib29sIFdlYkNo
cm9tZUNsaWVudDo6aGFzT3BlbmVkUG9wdXAoKSBjb25zdAogCiBSZWZQdHI8V2ViQ29yZTo6UG9w
dXBNZW51PiBXZWJDaHJvbWVDbGllbnQ6OmNyZWF0ZVBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1l
bnVDbGllbnQqIGNsaWVudCkgY29uc3QKIHsKLSAgICByZXR1cm4gV2ViUG9wdXBNZW51OjpjcmVh
dGUobV9wYWdlLCBjbGllbnQpOworICAgIHJldHVybiBXZWJQb3B1cE1lbnU6OmNyZWF0ZSgmbV9w
YWdlLCBjbGllbnQpOwogfQogCiBSZWZQdHI8V2ViQ29yZTo6U2VhcmNoUG9wdXBNZW51PiBXZWJD
aHJvbWVDbGllbnQ6OmNyZWF0ZVNlYXJjaFBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1lbnVDbGll
bnQqIGNsaWVudCkgY29uc3QKIHsKLSAgICByZXR1cm4gV2ViU2VhcmNoUG9wdXBNZW51OjpjcmVh
dGUobV9wYWdlLCBjbGllbnQpOworICAgIHJldHVybiBXZWJTZWFyY2hQb3B1cE1lbnU6OmNyZWF0
ZSgmbV9wYWdlLCBjbGllbnQpOwogfQogCiBHcmFwaGljc0xheWVyRmFjdG9yeSogV2ViQ2hyb21l
Q2xpZW50OjpncmFwaGljc0xheWVyRmFjdG9yeSgpIGNvbnN0CiB7Ci0gICAgaWYgKGF1dG8gZHJh
d2luZ0FyZWEgPSBtX3BhZ2UtPmRyYXdpbmdBcmVhKCkpCisgICAgaWYgKGF1dG8gZHJhd2luZ0Fy
ZWEgPSBtX3BhZ2UuZHJhd2luZ0FyZWEoKSkKICAgICAgICAgcmV0dXJuIGRyYXdpbmdBcmVhLT5n
cmFwaGljc0xheWVyRmFjdG9yeSgpOwogICAgIHJldHVybiBudWxscHRyOwogfQogCiAjaWYgVVNF
KFJFUVVFU1RfQU5JTUFUSU9OX0ZSQU1FX0RJU1BMQVlfTU9OSVRPUikKKwogUmVmUHRyPFdlYkNv
cmU6OkRpc3BsYXlSZWZyZXNoTW9uaXRvcj4gV2ViQ2hyb21lQ2xpZW50OjpjcmVhdGVEaXNwbGF5
UmVmcmVzaE1vbml0b3IoUGxhdGZvcm1EaXNwbGF5SUQgZGlzcGxheUlEKSBjb25zdAogewotICAg
IHJldHVybiBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPmNyZWF0ZURpc3BsYXlSZWZyZXNoTW9uaXRv
cihkaXNwbGF5SUQpOworICAgIHJldHVybiBtX3BhZ2UuZHJhd2luZ0FyZWEoKS0+Y3JlYXRlRGlz
cGxheVJlZnJlc2hNb25pdG9yKGRpc3BsYXlJRCk7CiB9CisKICNlbmRpZgogCiB2b2lkIFdlYkNo
cm9tZUNsaWVudDo6YXR0YWNoUm9vdEdyYXBoaWNzTGF5ZXIoRnJhbWUqLCBHcmFwaGljc0xheWVy
KiBsYXllcikKIHsKICAgICBpZiAobGF5ZXIpCi0gICAgICAgIG1fcGFnZS0+ZW50ZXJBY2NlbGVy
YXRlZENvbXBvc2l0aW5nTW9kZShsYXllcik7CisgICAgICAgIG1fcGFnZS5lbnRlckFjY2VsZXJh
dGVkQ29tcG9zaXRpbmdNb2RlKGxheWVyKTsKICAgICBlbHNlCi0gICAgICAgIG1fcGFnZS0+ZXhp
dEFjY2VsZXJhdGVkQ29tcG9zaXRpbmdNb2RlKCk7CisgICAgICAgIG1fcGFnZS5leGl0QWNjZWxl
cmF0ZWRDb21wb3NpdGluZ01vZGUoKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmF0dGFj
aFZpZXdPdmVybGF5R3JhcGhpY3NMYXllcihGcmFtZSogZnJhbWUsIEdyYXBoaWNzTGF5ZXIqIGdy
YXBoaWNzTGF5ZXIpCiB7Ci0gICAgaWYgKGF1dG8gZHJhd2luZ0FyZWEgPSBtX3BhZ2UtPmRyYXdp
bmdBcmVhKCkpCisgICAgaWYgKGF1dG8gZHJhd2luZ0FyZWEgPSBtX3BhZ2UuZHJhd2luZ0FyZWEo
KSkKICAgICAgICAgZHJhd2luZ0FyZWEtPmF0dGFjaFZpZXdPdmVybGF5R3JhcGhpY3NMYXllcihm
cmFtZSwgZ3JhcGhpY3NMYXllcik7CiB9CiAKQEAgLTg2MiwxMjggKzg3NiwxMzYgQEAgdm9pZCBX
ZWJDaHJvbWVDbGllbnQ6OnNldE5lZWRzT25lU2hvdERyYXdpbmdTeW5jaHJvbml6YXRpb24oKQog
CiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2NoZWR1bGVDb21wb3NpdGluZ0xheWVyRmx1c2goKQog
ewotICAgIGlmIChtX3BhZ2UtPmRyYXdpbmdBcmVhKCkpCi0gICAgICAgIG1fcGFnZS0+ZHJhd2lu
Z0FyZWEoKS0+c2NoZWR1bGVDb21wb3NpdGluZ0xheWVyRmx1c2goKTsKKyAgICBpZiAobV9wYWdl
LmRyYXdpbmdBcmVhKCkpCisgICAgICAgIG1fcGFnZS5kcmF3aW5nQXJlYSgpLT5zY2hlZHVsZUNv
bXBvc2l0aW5nTGF5ZXJGbHVzaCgpOwogfQogCiBib29sIFdlYkNocm9tZUNsaWVudDo6YWRqdXN0
TGF5ZXJGbHVzaFRocm90dGxpbmcoV2ViQ29yZTo6TGF5ZXJGbHVzaFRocm90dGxlU3RhdGU6OkZs
YWdzIGZsYWdzKQogewotICAgIHJldHVybiBtX3BhZ2UtPmRyYXdpbmdBcmVhKCkgJiYgbV9wYWdl
LT5kcmF3aW5nQXJlYSgpLT5hZGp1c3RMYXllckZsdXNoVGhyb3R0bGluZyhmbGFncyk7CisgICAg
cmV0dXJuIG1fcGFnZS5kcmF3aW5nQXJlYSgpICYmIG1fcGFnZS5kcmF3aW5nQXJlYSgpLT5hZGp1
c3RMYXllckZsdXNoVGhyb3R0bGluZyhmbGFncyk7CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50
OjpsYXllclRyZWVTdGF0ZUlzRnJvemVuKCkgY29uc3QKIHsKLSAgICBpZiAobV9wYWdlLT5kcmF3
aW5nQXJlYSgpKQotICAgICAgICByZXR1cm4gbV9wYWdlLT5kcmF3aW5nQXJlYSgpLT5sYXllclRy
ZWVTdGF0ZUlzRnJvemVuKCk7CisgICAgaWYgKG1fcGFnZS5kcmF3aW5nQXJlYSgpKQorICAgICAg
ICByZXR1cm4gbV9wYWdlLmRyYXdpbmdBcmVhKCktPmxheWVyVHJlZVN0YXRlSXNGcm96ZW4oKTsK
IAogICAgIHJldHVybiBmYWxzZTsKIH0KIAogI2lmIEVOQUJMRShBU1lOQ19TQ1JPTExJTkcpCisK
IFBhc3NSZWZQdHI8U2Nyb2xsaW5nQ29vcmRpbmF0b3I+IFdlYkNocm9tZUNsaWVudDo6Y3JlYXRl
U2Nyb2xsaW5nQ29vcmRpbmF0b3IoUGFnZSogcGFnZSkgY29uc3QKIHsKLSAgICBBU1NFUlQobV9w
YWdlLT5jb3JlUGFnZSgpID09IHBhZ2UpOwotICAgIGlmIChtX3BhZ2UtPmRyYXdpbmdBcmVhKCkt
PnR5cGUoKSA9PSBEcmF3aW5nQXJlYVR5cGVSZW1vdGVMYXllclRyZWUpCi0gICAgICAgIHJldHVy
biBSZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvcjo6Y3JlYXRlKG1fcGFnZSk7Ci0KLSAgICByZXR1
cm4gMDsKKyAgICBBU1NFUlQobV9wYWdlLmNvcmVQYWdlKCkgPT0gcGFnZSk7CisgICAgaWYgKG1f
cGFnZS5kcmF3aW5nQXJlYSgpLT50eXBlKCkgIT0gRHJhd2luZ0FyZWFUeXBlUmVtb3RlTGF5ZXJU
cmVlKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICByZXR1cm4gUmVtb3RlU2Nyb2xsaW5n
Q29vcmRpbmF0b3I6OmNyZWF0ZSgmbV9wYWdlKTsKIH0KKwogI2VuZGlmCiAKICNpZiAoUExBVEZP
Uk0oSU9TKSAmJiBIQVZFKEFWS0lUKSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVP
X1BSRVNFTlRBVElPTl9NT0RFKSkKKwogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnN1cHBvcnRzVmlk
ZW9GdWxsc2NyZWVuKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2Ny
ZWVuTW9kZSBtb2RlKQogewotICAgIHJldHVybiBtX3BhZ2UtPnZpZGVvRnVsbHNjcmVlbk1hbmFn
ZXIoKS5zdXBwb3J0c1ZpZGVvRnVsbHNjcmVlbihtb2RlKTsKKyAgICByZXR1cm4gbV9wYWdlLnZp
ZGVvRnVsbHNjcmVlbk1hbmFnZXIoKS5zdXBwb3J0c1ZpZGVvRnVsbHNjcmVlbihtb2RlKTsKIH0K
IAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNldFVwUGxheWJhY2tDb250cm9sc01hbmFnZXIoV2Vi
Q29yZTo6SFRNTE1lZGlhRWxlbWVudCYgbWVkaWFFbGVtZW50KQogewotICAgIG1fcGFnZS0+cGxh
eWJhY2tTZXNzaW9uTWFuYWdlcigpLnNldFVwUGxheWJhY2tDb250cm9sc01hbmFnZXIobWVkaWFF
bGVtZW50KTsKKyAgICBtX3BhZ2UucGxheWJhY2tTZXNzaW9uTWFuYWdlcigpLnNldFVwUGxheWJh
Y2tDb250cm9sc01hbmFnZXIobWVkaWFFbGVtZW50KTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGll
bnQ6OmNsZWFyUGxheWJhY2tDb250cm9sc01hbmFnZXIoKQogewotICAgIG1fcGFnZS0+cGxheWJh
Y2tTZXNzaW9uTWFuYWdlcigpLmNsZWFyUGxheWJhY2tDb250cm9sc01hbmFnZXIoKTsKKyAgICBt
X3BhZ2UucGxheWJhY2tTZXNzaW9uTWFuYWdlcigpLmNsZWFyUGxheWJhY2tDb250cm9sc01hbmFn
ZXIoKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmVudGVyVmlkZW9GdWxsc2NyZWVuRm9y
VmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmIHZpZGVvRWxlbWVudCwgV2Vi
Q29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIG1vZGUpCiB7
CiAgICAgQVNTRVJUKG1vZGUgIT0gSFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3Jl
ZW5Nb2RlTm9uZSk7Ci0gICAgbV9wYWdlLT52aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyKCkuZW50ZXJW
aWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQodmlkZW9FbGVtZW50LCBtb2RlKTsKKyAgICBt
X3BhZ2UudmlkZW9GdWxsc2NyZWVuTWFuYWdlcigpLmVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlk
ZW9FbGVtZW50KHZpZGVvRWxlbWVudCwgbW9kZSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50
OjpleGl0VmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0Vs
ZW1lbnQmIHZpZGVvRWxlbWVudCkKIHsKLSAgICBtX3BhZ2UtPnZpZGVvRnVsbHNjcmVlbk1hbmFn
ZXIoKS5leGl0VmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KHZpZGVvRWxlbWVudCk7Cisg
ICAgbV9wYWdlLnZpZGVvRnVsbHNjcmVlbk1hbmFnZXIoKS5leGl0VmlkZW9GdWxsc2NyZWVuRm9y
VmlkZW9FbGVtZW50KHZpZGVvRWxlbWVudCk7CiB9CiAKKyNlbmRpZgorCiAjaWYgUExBVEZPUk0o
TUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCisKIHZvaWQgV2ViQ2hyb21l
Q2xpZW50OjpleGl0VmlkZW9GdWxsc2NyZWVuVG9Nb2RlV2l0aG91dEFuaW1hdGlvbihXZWJDb3Jl
OjpIVE1MVmlkZW9FbGVtZW50JiB2aWRlb0VsZW1lbnQsIEhUTUxNZWRpYUVsZW1lbnRFbnVtczo6
VmlkZW9GdWxsc2NyZWVuTW9kZSB0YXJnZXRNb2RlKQogewotICAgIG1fcGFnZS0+dmlkZW9GdWxs
c2NyZWVuTWFuYWdlcigpLmV4aXRWaWRlb0Z1bGxzY3JlZW5Ub01vZGVXaXRob3V0QW5pbWF0aW9u
KHZpZGVvRWxlbWVudCwgdGFyZ2V0TW9kZSk7CisgICAgbV9wYWdlLnZpZGVvRnVsbHNjcmVlbk1h
bmFnZXIoKS5leGl0VmlkZW9GdWxsc2NyZWVuVG9Nb2RlV2l0aG91dEFuaW1hdGlvbih2aWRlb0Vs
ZW1lbnQsIHRhcmdldE1vZGUpOwogfQotI2VuZGlmCiAKICNlbmRpZgotICAgIAorCiAjaWYgRU5B
QkxFKEZVTExTQ1JFRU5fQVBJKQorCiBib29sIFdlYkNocm9tZUNsaWVudDo6c3VwcG9ydHNGdWxs
U2NyZWVuRm9yRWxlbWVudChjb25zdCBXZWJDb3JlOjpFbGVtZW50KiwgYm9vbCB3aXRoS2V5Ym9h
cmQpCiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+ZnVsbFNjcmVlbk1hbmFnZXIoKS0+c3VwcG9ydHNG
dWxsU2NyZWVuKHdpdGhLZXlib2FyZCk7CisgICAgcmV0dXJuIG1fcGFnZS5mdWxsU2NyZWVuTWFu
YWdlcigpLT5zdXBwb3J0c0Z1bGxTY3JlZW4od2l0aEtleWJvYXJkKTsKIH0KIAogdm9pZCBXZWJD
aHJvbWVDbGllbnQ6OmVudGVyRnVsbFNjcmVlbkZvckVsZW1lbnQoV2ViQ29yZTo6RWxlbWVudCog
ZWxlbWVudCkKIHsKLSAgICBtX3BhZ2UtPmZ1bGxTY3JlZW5NYW5hZ2VyKCktPmVudGVyRnVsbFNj
cmVlbkZvckVsZW1lbnQoZWxlbWVudCk7CisgICAgbV9wYWdlLmZ1bGxTY3JlZW5NYW5hZ2VyKCkt
PmVudGVyRnVsbFNjcmVlbkZvckVsZW1lbnQoZWxlbWVudCk7CiB9CiAKIHZvaWQgV2ViQ2hyb21l
Q2xpZW50OjpleGl0RnVsbFNjcmVlbkZvckVsZW1lbnQoV2ViQ29yZTo6RWxlbWVudCogZWxlbWVu
dCkKIHsKLSAgICBtX3BhZ2UtPmZ1bGxTY3JlZW5NYW5hZ2VyKCktPmV4aXRGdWxsU2NyZWVuRm9y
RWxlbWVudChlbGVtZW50KTsKKyAgICBtX3BhZ2UuZnVsbFNjcmVlbk1hbmFnZXIoKS0+ZXhpdEZ1
bGxTY3JlZW5Gb3JFbGVtZW50KGVsZW1lbnQpOwogfQorCiAjZW5kaWYKIAogI2lmIFBMQVRGT1JN
KElPUykKKwogRmxvYXRTaXplIFdlYkNocm9tZUNsaWVudDo6c2NyZWVuU2l6ZSgpIGNvbnN0CiB7
Ci0gICAgcmV0dXJuIG1fcGFnZS0+c2NyZWVuU2l6ZSgpOworICAgIHJldHVybiBtX3BhZ2Uuc2Ny
ZWVuU2l6ZSgpOwogfQogCiBGbG9hdFNpemUgV2ViQ2hyb21lQ2xpZW50OjphdmFpbGFibGVTY3Jl
ZW5TaXplKCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5hdmFpbGFibGVTY3JlZW5TaXpl
KCk7CisgICAgcmV0dXJuIG1fcGFnZS5hdmFpbGFibGVTY3JlZW5TaXplKCk7CiB9CisKICNlbmRp
ZgogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZGlzcGF0Y2hWaWV3cG9ydFByb3BlcnRpZXNEaWRD
aGFuZ2UoY29uc3QgVmlld3BvcnRBcmd1bWVudHMmIHZpZXdwb3J0QXJndW1lbnRzKSBjb25zdAog
ewotICAgIG1fcGFnZS0+dmlld3BvcnRQcm9wZXJ0aWVzRGlkQ2hhbmdlKHZpZXdwb3J0QXJndW1l
bnRzKTsKKyAgICBtX3BhZ2Uudmlld3BvcnRQcm9wZXJ0aWVzRGlkQ2hhbmdlKHZpZXdwb3J0QXJn
dW1lbnRzKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6Om5vdGlmeVNjcm9sbGVyVGh1bWJJ
c1Zpc2libGVJblJlY3QoY29uc3QgSW50UmVjdCYgc2Nyb2xsZXJUaHVtYikKIHsKLSAgICBtX3Bh
Z2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6Tm90aWZ5U2Nyb2xsZXJUaHVtYklzVmlz
aWJsZUluUmVjdChzY3JvbGxlclRodW1iKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6Oldl
YlBhZ2VQcm94eTo6Tm90aWZ5U2Nyb2xsZXJUaHVtYklzVmlzaWJsZUluUmVjdChzY3JvbGxlclRo
dW1iKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpyZWNvbW1lbmRlZFNjcm9sbGJhclN0
eWxlRGlkQ2hhbmdlKFNjcm9sbGJhclN0eWxlIG5ld1N0eWxlKQogewotICAgIG1fcGFnZS0+c2Vu
ZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZWNvbW1lbmRlZFNjcm9sbGJhclN0eWxlRGlkQ2hh
bmdlKHN0YXRpY19jYXN0PGludDMyX3Q+KG5ld1N0eWxlKSkpOworICAgIG1fcGFnZS5zZW5kKE1l
c3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJlY29tbWVuZGVkU2Nyb2xsYmFyU3R5bGVEaWRDaGFuZ2Uo
c3RhdGljX2Nhc3Q8aW50MzJfdD4obmV3U3R5bGUpKSk7CiB9CiAKIHN0ZDo6b3B0aW9uYWw8U2Ny
b2xsYmFyT3ZlcmxheVN0eWxlPiBXZWJDaHJvbWVDbGllbnQ6OnByZWZlcnJlZFNjcm9sbGJhck92
ZXJsYXlTdHlsZSgpCiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+c2Nyb2xsYmFyT3ZlcmxheVN0eWxl
KCk7IAorICAgIHJldHVybiBtX3BhZ2Uuc2Nyb2xsYmFyT3ZlcmxheVN0eWxlKCk7CiB9CiAKIENv
bG9yIFdlYkNocm9tZUNsaWVudDo6dW5kZXJsYXlDb2xvcigpIGNvbnN0CiB7Ci0gICAgcmV0dXJu
IG1fcGFnZS0+dW5kZXJsYXlDb2xvcigpOworICAgIHJldHVybiBtX3BhZ2UudW5kZXJsYXlDb2xv
cigpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6cGFnZUV4dGVuZGVkQmFja2dyb3VuZENv
bG9yRGlkQ2hhbmdlKENvbG9yIGJhY2tncm91bmRDb2xvcikgY29uc3QKIHsKICNpZiBQTEFURk9S
TShNQUMpIHx8IFBMQVRGT1JNKEVGTCkKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6UGFnZUV4dGVuZGVkQmFja2dyb3VuZENvbG9yRGlkQ2hhbmdlKGJhY2tncm91bmRD
b2xvcikpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlBhZ2VFeHRl
bmRlZEJhY2tncm91bmRDb2xvckRpZENoYW5nZShiYWNrZ3JvdW5kQ29sb3IpKTsKICNlbHNlCiAg
ICAgVU5VU0VEX1BBUkFNKGJhY2tncm91bmRDb2xvcik7CiAjZW5kaWYKQEAgLTk5MSw0MyArMTAx
Myw0MyBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6cGFnZUV4dGVuZGVkQmFja2dyb3VuZENvbG9y
RGlkQ2hhbmdlKENvbG9yIGJhY2tncm91bmRDb2xvcgogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6
d2hlZWxFdmVudEhhbmRsZXJzQ2hhbmdlZChib29sIGhhc0hhbmRsZXJzKQogewotICAgIG1fcGFn
ZS0+d2hlZWxFdmVudEhhbmRsZXJzQ2hhbmdlZChoYXNIYW5kbGVycyk7CisgICAgbV9wYWdlLndo
ZWVsRXZlbnRIYW5kbGVyc0NoYW5nZWQoaGFzSGFuZGxlcnMpOwogfQogCiBTdHJpbmcgV2ViQ2hy
b21lQ2xpZW50OjpwbHVnSW5TdGFydExhYmVsVGl0bGUoY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkg
Y29uc3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkucGx1
Z0luU3RhcnRMYWJlbFRpdGxlKG1pbWVUeXBlKTsKKyAgICByZXR1cm4gbV9wYWdlLmluamVjdGVk
QnVuZGxlVUlDbGllbnQoKS5wbHVnSW5TdGFydExhYmVsVGl0bGUobWltZVR5cGUpOwogfQogCiBT
dHJpbmcgV2ViQ2hyb21lQ2xpZW50OjpwbHVnSW5TdGFydExhYmVsU3VidGl0bGUoY29uc3QgU3Ry
aW5nJiBtaW1lVHlwZSkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5pbmplY3RlZEJ1bmRs
ZVVJQ2xpZW50KCkucGx1Z0luU3RhcnRMYWJlbFN1YnRpdGxlKG1pbWVUeXBlKTsKKyAgICByZXR1
cm4gbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5wbHVnSW5TdGFydExhYmVsU3VidGl0
bGUobWltZVR5cGUpOwogfQogCiBTdHJpbmcgV2ViQ2hyb21lQ2xpZW50OjpwbHVnSW5FeHRyYVN0
eWxlU2hlZXQoKSBjb25zdAogewotICAgIHJldHVybiBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlD
bGllbnQoKS5wbHVnSW5FeHRyYVN0eWxlU2hlZXQoKTsKKyAgICByZXR1cm4gbV9wYWdlLmluamVj
dGVkQnVuZGxlVUlDbGllbnQoKS5wbHVnSW5FeHRyYVN0eWxlU2hlZXQoKTsKIH0KIAogU3RyaW5n
IFdlYkNocm9tZUNsaWVudDo6cGx1Z0luRXh0cmFTY3JpcHQoKSBjb25zdAogewotICAgIHJldHVy
biBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5wbHVnSW5FeHRyYVNjcmlwdCgpOwor
ICAgIHJldHVybiBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLnBsdWdJbkV4dHJhU2Ny
aXB0KCk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjplbmFibGVTdWRkZW5UZXJtaW5hdGlv
bigpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQcm9jZXNzUHJveHk6OkVuYWJs
ZVN1ZGRlblRlcm1pbmF0aW9uKCkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQcm9j
ZXNzUHJveHk6OkVuYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkpOwogfQogCiB2b2lkIFdlYkNocm9t
ZUNsaWVudDo6ZGlzYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQo
TWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6RGlzYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkpOwor
ICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQcm9jZXNzUHJveHk6OkRpc2FibGVTdWRkZW5U
ZXJtaW5hdGlvbigpKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmRpZEFkZEhlYWRlckxh
eWVyKEdyYXBoaWNzTGF5ZXIqIGhlYWRlclBhcmVudCkKIHsKICNpZiBFTkFCTEUoUlVCQkVSX0JB
TkRJTkcpCi0gICAgaWYgKFBhZ2VCYW5uZXIqIGJhbm5lciA9IG1fcGFnZS0+aGVhZGVyUGFnZUJh
bm5lcigpKQorICAgIGlmIChQYWdlQmFubmVyKiBiYW5uZXIgPSBtX3BhZ2UuaGVhZGVyUGFnZUJh
bm5lcigpKQogICAgICAgICBiYW5uZXItPmRpZEFkZFBhcmVudExheWVyKGhlYWRlclBhcmVudCk7
CiAjZWxzZQogICAgIFVOVVNFRF9QQVJBTShoZWFkZXJQYXJlbnQpOwpAQCAtMTAzNyw3ICsxMDU5
LDcgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmRpZEFkZEhlYWRlckxheWVyKEdyYXBoaWNzTGF5
ZXIqIGhlYWRlclBhcmVudCkKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpkaWRBZGRGb290ZXJMYXll
cihHcmFwaGljc0xheWVyKiBmb290ZXJQYXJlbnQpCiB7CiAjaWYgRU5BQkxFKFJVQkJFUl9CQU5E
SU5HKQotICAgIGlmIChQYWdlQmFubmVyKiBiYW5uZXIgPSBtX3BhZ2UtPmZvb3RlclBhZ2VCYW5u
ZXIoKSkKKyAgICBpZiAoUGFnZUJhbm5lciogYmFubmVyID0gbV9wYWdlLmZvb3RlclBhZ2VCYW5u
ZXIoKSkKICAgICAgICAgYmFubmVyLT5kaWRBZGRQYXJlbnRMYXllcihmb290ZXJQYXJlbnQpOwog
I2Vsc2UKICAgICBVTlVTRURfUEFSQU0oZm9vdGVyUGFyZW50KTsKQEAgLTEwNDYsMzYgKzEwNjgs
MzkgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmRpZEFkZEZvb3RlckxheWVyKEdyYXBoaWNzTGF5
ZXIqIGZvb3RlclBhcmVudCkKIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnNob3VsZFVzZVRpbGVk
QmFja2luZ0ZvckZyYW1lVmlldyhjb25zdCBGcmFtZVZpZXcqIGZyYW1lVmlldykgY29uc3QKIHsK
LSAgICByZXR1cm4gbV9wYWdlLT5kcmF3aW5nQXJlYSgpLT5zaG91bGRVc2VUaWxlZEJhY2tpbmdG
b3JGcmFtZVZpZXcoZnJhbWVWaWV3KTsKKyAgICByZXR1cm4gbV9wYWdlLmRyYXdpbmdBcmVhKCkt
PnNob3VsZFVzZVRpbGVkQmFja2luZ0ZvckZyYW1lVmlldyhmcmFtZVZpZXcpOwogfQogCiB2b2lk
IFdlYkNocm9tZUNsaWVudDo6aXNQbGF5aW5nTWVkaWFEaWRDaGFuZ2UoV2ViQ29yZTo6TWVkaWFQ
cm9kdWNlcjo6TWVkaWFTdGF0ZUZsYWdzIHN0YXRlLCB1aW50NjRfdCBzb3VyY2VFbGVtZW50SUQp
CiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OklzUGxheWluZ01l
ZGlhRGlkQ2hhbmdlKHN0YXRlLCBzb3VyY2VFbGVtZW50SUQpKTsKKyAgICBtX3BhZ2Uuc2VuZChN
ZXNzYWdlczo6V2ViUGFnZVByb3h5OjpJc1BsYXlpbmdNZWRpYURpZENoYW5nZShzdGF0ZSwgc291
cmNlRWxlbWVudElEKSk7CiB9CiAKICNpZiBFTkFCTEUoTUVESUFfU0VTU0lPTikKKwogdm9pZCBX
ZWJDaHJvbWVDbGllbnQ6Omhhc01lZGlhU2Vzc2lvbldpdGhBY3RpdmVNZWRpYUVsZW1lbnRzRGlk
Q2hhbmdlKGJvb2wgc3RhdGUpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6Okhhc01lZGlhU2Vzc2lvbldpdGhBY3RpdmVNZWRpYUVsZW1lbnRzRGlkQ2hhbmdlKHN0
YXRlKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6SGFzTWVkaWFT
ZXNzaW9uV2l0aEFjdGl2ZU1lZGlhRWxlbWVudHNEaWRDaGFuZ2Uoc3RhdGUpKTsKIH0KIAogdm9p
ZCBXZWJDaHJvbWVDbGllbnQ6Om1lZGlhU2Vzc2lvbk1ldGFkYXRhRGlkQ2hhbmdlKGNvbnN0IFdl
YkNvcmU6Ok1lZGlhU2Vzc2lvbk1ldGFkYXRhJiBtZXRhZGF0YSkKIHsKLSAgICBtX3BhZ2UtPnNl
bmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6TWVkaWFTZXNzaW9uTWV0YWRhdGFEaWRDaGFuZ2Uo
bWV0YWRhdGEpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpNZWRp
YVNlc3Npb25NZXRhZGF0YURpZENoYW5nZShtZXRhZGF0YSkpOwogfQogCiB2b2lkIFdlYkNocm9t
ZUNsaWVudDo6Zm9jdXNlZENvbnRlbnRNZWRpYUVsZW1lbnREaWRDaGFuZ2UodWludDY0X3QgZWxl
bWVudElEKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpGb2N1
c2VkQ29udGVudE1lZGlhRWxlbWVudERpZENoYW5nZShlbGVtZW50SUQpKTsKKyAgICBtX3BhZ2Uu
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpGb2N1c2VkQ29udGVudE1lZGlhRWxlbWVudERp
ZENoYW5nZShlbGVtZW50SUQpKTsKIH0KKwogI2VuZGlmCiAKICNpZiBFTkFCTEUoU1VCVExFX0NS
WVBUTykKKwogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OndyYXBDcnlwdG9LZXkoY29uc3QgVmVjdG9y
PHVpbnQ4X3Q+JiBrZXksIFZlY3Rvcjx1aW50OF90PiYgd3JhcHBlZEtleSkgY29uc3QKIHsKICAg
ICBib29sIHN1Y2NlZWRlZDsKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVu
dFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6Oldy
YXBDcnlwdG9LZXkoa2V5KSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6V3JhcENyeXB0b0tleTo6
UmVwbHkoc3VjY2VlZGVkLCB3cmFwcGVkS2V5KSwgbV9wYWdlLT5wYWdlSUQoKSkpCisgICAgaWYg
KCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5k
U3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpXcmFwQ3J5cHRvS2V5KGtleSksIE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6OldyYXBDcnlwdG9LZXk6OlJlcGx5KHN1Y2NlZWRlZCwgd3JhcHBlZEtl
eSksIG1fcGFnZS5wYWdlSUQoKSkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICByZXR1cm4g
c3VjY2VlZGVkOwogfQpAQCAtMTA4MywzNCArMTEwOCwzOSBAQCBib29sIFdlYkNocm9tZUNsaWVu
dDo6d3JhcENyeXB0b0tleShjb25zdCBWZWN0b3I8dWludDhfdD4mIGtleSwgVmVjdG9yPHVpbnQ4
X3Q+JgogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnVud3JhcENyeXB0b0tleShjb25zdCBWZWN0b3I8
dWludDhfdD4mIHdyYXBwZWRLZXksIFZlY3Rvcjx1aW50OF90PiYga2V5KSBjb25zdAogewogICAg
IGJvb2wgc3VjY2VlZGVkOwotICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50
UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6VW53
cmFwQ3J5cHRvS2V5KHdyYXBwZWRLZXkpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpVbndyYXBD
cnlwdG9LZXk6OlJlcGx5KHN1Y2NlZWRlZCwga2V5KSwgbV9wYWdlLT5wYWdlSUQoKSkpCisgICAg
aWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5z
ZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpVbndyYXBDcnlwdG9LZXkod3JhcHBlZEtl
eSksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlVud3JhcENyeXB0b0tleTo6UmVwbHkoc3VjY2Vl
ZGVkLCBrZXkpLCBtX3BhZ2UucGFnZUlEKCkpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAg
cmV0dXJuIHN1Y2NlZWRlZDsKIH0KKwogI2VuZGlmCiAKICNpZiBFTkFCTEUoVEVMRVBIT05FX05V
TUJFUl9ERVRFQ1RJT04pICYmIFBMQVRGT1JNKE1BQykKKwogdm9pZCBXZWJDaHJvbWVDbGllbnQ6
OmhhbmRsZVRlbGVwaG9uZU51bWJlckNsaWNrKGNvbnN0IFN0cmluZyYgbnVtYmVyLCBjb25zdCBX
ZWJDb3JlOjpJbnRQb2ludCYgcG9pbnQpCiB7Ci0gICAgbV9wYWdlLT5oYW5kbGVUZWxlcGhvbmVO
dW1iZXJDbGljayhudW1iZXIsIHBvaW50KTsKKyAgICBtX3BhZ2UuaGFuZGxlVGVsZXBob25lTnVt
YmVyQ2xpY2sobnVtYmVyLCBwb2ludCk7CiB9CisKICNlbmRpZgogCiAjaWYgRU5BQkxFKFNFUlZJ
Q0VfQ09OVFJPTFMpCisKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpoYW5kbGVTZWxlY3Rpb25TZXJ2
aWNlQ2xpY2soV2ViQ29yZTo6RnJhbWVTZWxlY3Rpb24mIHNlbGVjdGlvbiwgY29uc3QgVmVjdG9y
PFN0cmluZz4mIHRlbGVwaG9uZU51bWJlcnMsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBwb2lu
dCkKIHsKLSAgICBtX3BhZ2UtPmhhbmRsZVNlbGVjdGlvblNlcnZpY2VDbGljayhzZWxlY3Rpb24s
IHRlbGVwaG9uZU51bWJlcnMsIHBvaW50KTsKKyAgICBtX3BhZ2UuaGFuZGxlU2VsZWN0aW9uU2Vy
dmljZUNsaWNrKHNlbGVjdGlvbiwgdGVsZXBob25lTnVtYmVycywgcG9pbnQpOwogfQogCiBib29s
IFdlYkNocm9tZUNsaWVudDo6aGFzUmVsZXZhbnRTZWxlY3Rpb25TZXJ2aWNlcyhib29sIGlzVGV4
dE9ubHkpIGNvbnN0CiB7CiAgICAgcmV0dXJuIChpc1RleHRPbmx5ICYmIFdlYlByb2Nlc3M6OnNp
bmdsZXRvbigpLmhhc1NlbGVjdGlvblNlcnZpY2VzKCkpIHx8IFdlYlByb2Nlc3M6OnNpbmdsZXRv
bigpLmhhc1JpY2hDb250ZW50U2VydmljZXMoKTsKIH0KKwogI2VuZGlmCiAKIGJvb2wgV2ViQ2hy
b21lQ2xpZW50OjpzaG91bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHMoKSBjb25zdAogewot
ICAgIHJldHVybiBtX3BhZ2UtPnNob3VsZERpc3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50cygpOwor
ICAgIHJldHVybiBtX3BhZ2Uuc2hvdWxkRGlzcGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKCk7CiB9
CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpoYW5kbGVBdXRvRmlsbEJ1dHRvbkNsaWNrKEhUTUxJ
bnB1dEVsZW1lbnQmIGlucHV0RWxlbWVudCkKQEAgLTExMTksNjQgKzExNDksNjUgQEAgdm9pZCBX
ZWJDaHJvbWVDbGllbnQ6OmhhbmRsZUF1dG9GaWxsQnV0dG9uQ2xpY2soSFRNTElucHV0RWxlbWVu
dCYgaW5wdXRFbGVtZW50KQogCiAgICAgLy8gTm90aWZ5IHRoZSBidW5kbGUgY2xpZW50LgogICAg
IGF1dG8gbm9kZUhhbmRsZSA9IEluamVjdGVkQnVuZGxlTm9kZUhhbmRsZTo6Z2V0T3JDcmVhdGUo
aW5wdXRFbGVtZW50KTsKLSAgICBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5kaWRD
bGlja0F1dG9GaWxsQnV0dG9uKCptX3BhZ2UsIG5vZGVIYW5kbGUuZ2V0KCksIHVzZXJEYXRhKTsK
KyAgICBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLmRpZENsaWNrQXV0b0ZpbGxCdXR0
b24obV9wYWdlLCBub2RlSGFuZGxlLmdldCgpLCB1c2VyRGF0YSk7CiAKICAgICAvLyBOb3RpZnkg
dGhlIFVJUHJvY2Vzcy4KLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6
SGFuZGxlQXV0b0ZpbGxCdXR0b25DbGljayhVc2VyRGF0YShXZWJQcm9jZXNzOjpzaW5nbGV0b24o
KS50cmFuc2Zvcm1PYmplY3RzVG9IYW5kbGVzKHVzZXJEYXRhLmdldCgpKS5nZXQoKSkpKTsKKyAg
ICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpIYW5kbGVBdXRvRmlsbEJ1dHRv
bkNsaWNrKFVzZXJEYXRhKFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnRyYW5zZm9ybU9iamVjdHNU
b0hhbmRsZXModXNlckRhdGEuZ2V0KCkpLmdldCgpKSkpOwogfQogCiAjaWYgRU5BQkxFKFdJUkVM
RVNTX1BMQVlCQUNLX1RBUkdFVCkgJiYgIVBMQVRGT1JNKElPUykKKwogdm9pZCBXZWJDaHJvbWVD
bGllbnQ6OmFkZFBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2NF90IGNvbnRleHRJZCkK
IHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6QWRkUGxheWJhY2tU
YXJnZXRQaWNrZXJDbGllbnQoY29udGV4dElkKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6QWRkUGxheWJhY2tUYXJnZXRQaWNrZXJDbGllbnQoY29udGV4dElkKSk7
CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpyZW1vdmVQbGF5YmFja1RhcmdldFBpY2tlckNs
aWVudCh1aW50NjRfdCBjb250ZXh0SWQpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OlJlbW92ZVBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KGNvbnRleHRJZCkp
OworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJlbW92ZVBsYXliYWNr
VGFyZ2V0UGlja2VyQ2xpZW50KGNvbnRleHRJZCkpOwogfQogCi0KIHZvaWQgV2ViQ2hyb21lQ2xp
ZW50OjpzaG93UGxheWJhY2tUYXJnZXRQaWNrZXIodWludDY0X3QgY29udGV4dElkLCBjb25zdCBX
ZWJDb3JlOjpJbnRQb2ludCYgcG9zaXRpb24sIGJvb2wgaXNWaWRlbykKIHsKLSAgICBGcmFtZVZp
ZXcqIGZyYW1lVmlldyA9IG1fcGFnZS0+bWFpbkZyYW1lKCktPnZpZXcoKTsKKyAgICBGcmFtZVZp
ZXcqIGZyYW1lVmlldyA9IG1fcGFnZS5tYWluRnJhbWUoKS0+dmlldygpOwogICAgIEZsb2F0UmVj
dCByZWN0KGZyYW1lVmlldy0+Y29udGVudHNUb1Jvb3RWaWV3KGZyYW1lVmlldy0+d2luZG93VG9D
b250ZW50cyhwb3NpdGlvbikpLCBGbG9hdFNpemUoKSk7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OlNob3dQbGF5YmFja1RhcmdldFBpY2tlcihjb250ZXh0SWQsIHJl
Y3QsIGlzVmlkZW8pKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpT
aG93UGxheWJhY2tUYXJnZXRQaWNrZXIoY29udGV4dElkLCByZWN0LCBpc1ZpZGVvKSk7CiB9CiAK
IHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpwbGF5YmFja1RhcmdldFBpY2tlckNsaWVudFN0YXRlRGlk
Q2hhbmdlKHVpbnQ2NF90IGNvbnRleHRJZCwgV2ViQ29yZTo6TWVkaWFQcm9kdWNlcjo6TWVkaWFT
dGF0ZUZsYWdzIHN0YXRlKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudFN0YXRlRGlkQ2hhbmdlKGNvbnRleHRJZCwg
c3RhdGUpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQbGF5YmFj
a1RhcmdldFBpY2tlckNsaWVudFN0YXRlRGlkQ2hhbmdlKGNvbnRleHRJZCwgc3RhdGUpKTsKIH0K
IAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNldE1vY2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2Vy
RW5hYmxlZChib29sIGVuYWJsZWQpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OlNldE1vY2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyRW5hYmxlZChlbmFibGVk
KSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0TW9ja01lZGlh
UGxheWJhY2tUYXJnZXRQaWNrZXJFbmFibGVkKGVuYWJsZWQpKTsKIH0KIAogdm9pZCBXZWJDaHJv
bWVDbGllbnQ6OnNldE1vY2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyU3RhdGUoY29uc3QgU3Ry
aW5nJiBuYW1lLCBXZWJDb3JlOjpNZWRpYVBsYXliYWNrVGFyZ2V0Q29udGV4dDo6U3RhdGUgc3Rh
dGUpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldE1vY2tN
ZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyU3RhdGUobmFtZSwgc3RhdGUpKTsKKyAgICBtX3BhZ2Uu
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBp
Y2tlclN0YXRlKG5hbWUsIHN0YXRlKSk7CiB9CisKICNlbmRpZgogCiB2b2lkIFdlYkNocm9tZUNs
aWVudDo6aW1hZ2VPck1lZGlhRG9jdW1lbnRTaXplQ2hhbmdlZChjb25zdCBXZWJDb3JlOjpJbnRT
aXplJiBuZXdTaXplKQogewotICAgIG1fcGFnZS0+aW1hZ2VPck1lZGlhRG9jdW1lbnRTaXplQ2hh
bmdlZChuZXdTaXplKTsKKyAgICBtX3BhZ2UuaW1hZ2VPck1lZGlhRG9jdW1lbnRTaXplQ2hhbmdl
ZChuZXdTaXplKTsKIH0KIAotI2lmIEVOQUJMRShWSURFTykKLSNpZiBVU0UoR1NUUkVBTUVSKQor
I2lmIEVOQUJMRShWSURFTykgJiYgVVNFKEdTVFJFQU1FUikKKwogdm9pZCBXZWJDaHJvbWVDbGll
bnQ6OnJlcXVlc3RJbnN0YWxsTWlzc2luZ01lZGlhUGx1Z2lucyhjb25zdCBTdHJpbmcmIGRldGFp
bHMsIGNvbnN0IFN0cmluZyYgZGVzY3JpcHRpb24sIFdlYkNvcmU6Ok1lZGlhUGxheWVyUmVxdWVz
dEluc3RhbGxNaXNzaW5nUGx1Z2luc0NhbGxiYWNrJiBjYWxsYmFjaykKIHsKLSAgICBtX3BhZ2Ut
PnJlcXVlc3RJbnN0YWxsTWlzc2luZ01lZGlhUGx1Z2lucyhkZXRhaWxzLCBkZXNjcmlwdGlvbiwg
Y2FsbGJhY2spOworICAgIG1fcGFnZS5yZXF1ZXN0SW5zdGFsbE1pc3NpbmdNZWRpYVBsdWdpbnMo
ZGV0YWlscywgZGVzY3JpcHRpb24sIGNhbGxiYWNrKTsKIH0KKwogI2VuZGlmCi0jZW5kaWYgLy8g
RU5BQkxFKFZJREVPKQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZGlkSW52YWxpZGF0ZURvY3Vt
ZW50TWFya2VyUmVjdHMoKQogewotICAgIG1fcGFnZS0+ZmluZENvbnRyb2xsZXIoKS5kaWRJbnZh
bGlkYXRlRG9jdW1lbnRNYXJrZXJSZWN0cygpOworICAgIG1fcGFnZS5maW5kQ29udHJvbGxlcigp
LmRpZEludmFsaWRhdGVEb2N1bWVudE1hcmtlclJlY3RzKCk7CiB9CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3Vw
cG9ydC9XZWJDaHJvbWVDbGllbnQuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29y
ZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmgKaW5kZXggYWY5MGIzOGRkOTVmMzJhZjQ4YTQ1ODdi
YTI3ZjJmYmM1ZDdkNmIxZC4uZDRhOTkxYjI3NDg2MGZmYzMyZGYzNGUwZjFiYzQ3MzdhYWI5MGUw
MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9X
ZWJDaHJvbWVDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L1dlYkNocm9tZUNsaWVudC5oCkBAIC0yNiwxOTggKzI2LDE5NiBAQAogCiAjcHJhZ21h
IG9uY2UKIAotI2luY2x1ZGUgIldlYkZyYW1lLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9DaHJvbWVD
bGllbnQuaD4KLSNpbmNsdWRlIDxXZWJDb3JlL1ZpZXdwb3J0QXJndW1lbnRzLmg+Ci0jaW5jbHVk
ZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCitjbGFzcyBX
ZWJGcmFtZTsKIGNsYXNzIFdlYlBhZ2U7CiAKLWNsYXNzIFdlYkNocm9tZUNsaWVudCA6IHB1Ymxp
YyBXZWJDb3JlOjpDaHJvbWVDbGllbnQgeworY2xhc3MgV2ViQ2hyb21lQ2xpZW50IGZpbmFsIDog
cHVibGljIFdlYkNvcmU6OkNocm9tZUNsaWVudCB7CiBwdWJsaWM6Ci0gICAgV2ViQ2hyb21lQ2xp
ZW50KFdlYlBhZ2UqIHBhZ2UpCi0gICAgICAgIDogbV9jYWNoZWRNYWluRnJhbWVIYXNIb3Jpem9u
dGFsU2Nyb2xsYmFyKGZhbHNlKQotICAgICAgICAsIG1fY2FjaGVkTWFpbkZyYW1lSGFzVmVydGlj
YWxTY3JvbGxiYXIoZmFsc2UpCi0gICAgICAgICwgbV9wYWdlKHBhZ2UpCi0gICAgewotICAgIH0K
LSAgICAKLSAgICBXZWJQYWdlKiBwYWdlKCkgY29uc3QgeyByZXR1cm4gbV9wYWdlOyB9CisgICAg
V2ViQ2hyb21lQ2xpZW50KFdlYlBhZ2UmKTsKIAotICAgIHZpcnR1YWwgdm9pZCogd2ViVmlldygp
IGNvbnN0IHsgcmV0dXJuIDA7IH0KKyAgICBXZWJQYWdlJiBwYWdlKCkgY29uc3QgeyByZXR1cm4g
bV9wYWdlOyB9CiAKIHByaXZhdGU6Ci0gICAgdm9pZCBjaHJvbWVEZXN0cm95ZWQoKSBvdmVycmlk
ZTsKKyAgICB+V2ViQ2hyb21lQ2xpZW50KCk7CisKKyAgICB2b2lkIGNocm9tZURlc3Ryb3llZCgp
IGZpbmFsOwogICAgIAotICAgIHZvaWQgc2V0V2luZG93UmVjdChjb25zdCBXZWJDb3JlOjpGbG9h
dFJlY3QmKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpGbG9hdFJlY3Qgd2luZG93UmVjdCgpIG92
ZXJyaWRlOworICAgIHZvaWQgc2V0V2luZG93UmVjdChjb25zdCBXZWJDb3JlOjpGbG9hdFJlY3Qm
KSBmaW5hbDsKKyAgICBXZWJDb3JlOjpGbG9hdFJlY3Qgd2luZG93UmVjdCgpIGZpbmFsOwogICAg
IAotICAgIFdlYkNvcmU6OkZsb2F0UmVjdCBwYWdlUmVjdCgpIG92ZXJyaWRlOworICAgIFdlYkNv
cmU6OkZsb2F0UmVjdCBwYWdlUmVjdCgpIGZpbmFsOwogICAgIAotICAgIHZvaWQgZm9jdXMoKSBv
dmVycmlkZTsKLSAgICB2b2lkIHVuZm9jdXMoKSBvdmVycmlkZTsKKyAgICB2b2lkIGZvY3VzKCkg
ZmluYWw7CisgICAgdm9pZCB1bmZvY3VzKCkgZmluYWw7CiAgICAgCi0gICAgYm9vbCBjYW5UYWtl
Rm9jdXMoV2ViQ29yZTo6Rm9jdXNEaXJlY3Rpb24pIG92ZXJyaWRlOwotICAgIHZvaWQgdGFrZUZv
Y3VzKFdlYkNvcmU6OkZvY3VzRGlyZWN0aW9uKSBvdmVycmlkZTsKKyAgICBib29sIGNhblRha2VG
b2N1cyhXZWJDb3JlOjpGb2N1c0RpcmVjdGlvbikgZmluYWw7CisgICAgdm9pZCB0YWtlRm9jdXMo
V2ViQ29yZTo6Rm9jdXNEaXJlY3Rpb24pIGZpbmFsOwogCi0gICAgdm9pZCBmb2N1c2VkRWxlbWVu
dENoYW5nZWQoV2ViQ29yZTo6RWxlbWVudCopIG92ZXJyaWRlOwotICAgIHZvaWQgZm9jdXNlZEZy
YW1lQ2hhbmdlZChXZWJDb3JlOjpGcmFtZSopIG92ZXJyaWRlOworICAgIHZvaWQgZm9jdXNlZEVs
ZW1lbnRDaGFuZ2VkKFdlYkNvcmU6OkVsZW1lbnQqKSBmaW5hbDsKKyAgICB2b2lkIGZvY3VzZWRG
cmFtZUNoYW5nZWQoV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKIAogICAgIC8vIFRoZSBGcmFtZSBw
b2ludGVyIHByb3ZpZGVzIHRoZSBDaHJvbWVDbGllbnQgd2l0aCBjb250ZXh0IGFib3V0IHdoaWNo
CiAgICAgLy8gRnJhbWUgd2FudHMgdG8gY3JlYXRlIHRoZSBuZXcgUGFnZS4gIEFsc28sIHRoZSBu
ZXdseSBjcmVhdGVkIHdpbmRvdwogICAgIC8vIHNob3VsZCBub3QgYmUgc2hvd24gdG8gdGhlIHVz
ZXIgdW50aWwgdGhlIENocm9tZUNsaWVudCBvZiB0aGUgbmV3bHkKICAgICAvLyBjcmVhdGVkIFBh
Z2UgaGFzIGl0cyBzaG93IG1ldGhvZCBjYWxsZWQuCi0gICAgV2ViQ29yZTo6UGFnZSogY3JlYXRl
V2luZG93KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV2ViQ29yZTo6RnJhbWVMb2FkUmVxdWVzdCYs
IGNvbnN0IFdlYkNvcmU6OldpbmRvd0ZlYXR1cmVzJiwgY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlv
bkFjdGlvbiYpIG92ZXJyaWRlOwotICAgIHZvaWQgc2hvdygpIG92ZXJyaWRlOworICAgIFdlYkNv
cmU6OlBhZ2UqIGNyZWF0ZVdpbmRvdyhXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6OkZy
YW1lTG9hZFJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpXaW5kb3dGZWF0dXJlcyYsIGNvbnN0IFdl
YkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mKSBmaW5hbDsKKyAgICB2b2lkIHNob3coKSBmaW5hbDsK
ICAgICAKLSAgICBib29sIGNhblJ1bk1vZGFsKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBydW5Nb2Rh
bCgpIG92ZXJyaWRlOworICAgIGJvb2wgY2FuUnVuTW9kYWwoKSBmaW5hbDsKKyAgICB2b2lkIHJ1
bk1vZGFsKCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBzZXRUb29sYmFyc1Zpc2libGUoYm9vbCkg
b3ZlcnJpZGU7Ci0gICAgYm9vbCB0b29sYmFyc1Zpc2libGUoKSBvdmVycmlkZTsKKyAgICB2b2lk
IHNldFRvb2xiYXJzVmlzaWJsZShib29sKSBmaW5hbDsKKyAgICBib29sIHRvb2xiYXJzVmlzaWJs
ZSgpIGZpbmFsOwogICAgIAotICAgIHZvaWQgc2V0U3RhdHVzYmFyVmlzaWJsZShib29sKSBvdmVy
cmlkZTsKLSAgICBib29sIHN0YXR1c2JhclZpc2libGUoKSBvdmVycmlkZTsKKyAgICB2b2lkIHNl
dFN0YXR1c2JhclZpc2libGUoYm9vbCkgZmluYWw7CisgICAgYm9vbCBzdGF0dXNiYXJWaXNpYmxl
KCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBzZXRTY3JvbGxiYXJzVmlzaWJsZShib29sKSBvdmVy
cmlkZTsKLSAgICBib29sIHNjcm9sbGJhcnNWaXNpYmxlKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBz
ZXRTY3JvbGxiYXJzVmlzaWJsZShib29sKSBmaW5hbDsKKyAgICBib29sIHNjcm9sbGJhcnNWaXNp
YmxlKCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBzZXRNZW51YmFyVmlzaWJsZShib29sKSBvdmVy
cmlkZTsKLSAgICBib29sIG1lbnViYXJWaXNpYmxlKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRN
ZW51YmFyVmlzaWJsZShib29sKSBmaW5hbDsKKyAgICBib29sIG1lbnViYXJWaXNpYmxlKCkgZmlu
YWw7CiAgICAgCi0gICAgdm9pZCBzZXRSZXNpemFibGUoYm9vbCkgb3ZlcnJpZGU7CisgICAgdm9p
ZCBzZXRSZXNpemFibGUoYm9vbCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBhZGRNZXNzYWdlVG9D
b25zb2xlKEpTQzo6TWVzc2FnZVNvdXJjZSwgSlNDOjpNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmlu
ZyYgbWVzc2FnZSwgdW5zaWduZWQgbGluZU51bWJlciwgdW5zaWduZWQgY29sdW1uTnVtYmVyLCBj
b25zdCBTdHJpbmcmIHNvdXJjZUlEKSBvdmVycmlkZTsKKyAgICB2b2lkIGFkZE1lc3NhZ2VUb0Nv
bnNvbGUoSlNDOjpNZXNzYWdlU291cmNlLCBKU0M6Ok1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5n
JiBtZXNzYWdlLCB1bnNpZ25lZCBsaW5lTnVtYmVyLCB1bnNpZ25lZCBjb2x1bW5OdW1iZXIsIGNv
bnN0IFN0cmluZyYgc291cmNlSUQpIGZpbmFsOwogICAgIAotICAgIGJvb2wgY2FuUnVuQmVmb3Jl
VW5sb2FkQ29uZmlybVBhbmVsKCkgb3ZlcnJpZGU7Ci0gICAgYm9vbCBydW5CZWZvcmVVbmxvYWRD
b25maXJtUGFuZWwoY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBXZWJDb3JlOjpGcmFtZSopIG92ZXJy
aWRlOworICAgIGJvb2wgY2FuUnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsKCkgZmluYWw7Cisg
ICAgYm9vbCBydW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoY29uc3QgU3RyaW5nJiBtZXNzYWdl
LCBXZWJDb3JlOjpGcmFtZSopIGZpbmFsOwogICAgIAotICAgIHZvaWQgY2xvc2VXaW5kb3dTb29u
KCkgb3ZlcnJpZGU7CisgICAgdm9pZCBjbG9zZVdpbmRvd1Nvb24oKSBmaW5hbDsKICAgICAKLSAg
ICB2b2lkIHJ1bkphdmFTY3JpcHRBbGVydChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFN0cmluZyYp
IG92ZXJyaWRlOwotICAgIGJvb2wgcnVuSmF2YVNjcmlwdENvbmZpcm0oV2ViQ29yZTo6RnJhbWUq
LCBjb25zdCBTdHJpbmcmKSBvdmVycmlkZTsKLSAgICBib29sIHJ1bkphdmFTY3JpcHRQcm9tcHQo
V2ViQ29yZTo6RnJhbWUqLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgZGVm
YXVsdFZhbHVlLCBTdHJpbmcmIHJlc3VsdCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRTdGF0dXNi
YXJUZXh0KGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotCi0gICAgV2ViQ29yZTo6S2V5Ym9hcmRV
SU1vZGUga2V5Ym9hcmRVSU1vZGUoKSBvdmVycmlkZTsKLQotICAgIC8vIEhvc3RXaW5kb3cgbWVt
YmVyIGZ1bmN0aW9uIG92ZXJyaWRlcy4KLSAgICB2b2lkIGludmFsaWRhdGVSb290Vmlldyhjb25z
dCBXZWJDb3JlOjpJbnRSZWN0Jikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBpbnZhbGlkYXRlQ29udGVu
dHNBbmRSb290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jikgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBpbnZhbGlkYXRlQ29udGVudHNGb3JTbG93U2Nyb2xsKGNvbnN0IFdlYkNvcmU6OkludFJlY3Qm
KSBvdmVycmlkZTsKLSAgICB2b2lkIHNjcm9sbChjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBzY3Jv
bGxEZWx0YSwgY29uc3QgV2ViQ29yZTo6SW50UmVjdCYgc2Nyb2xsUmVjdCwgY29uc3QgV2ViQ29y
ZTo6SW50UmVjdCYgY2xpcFJlY3QpIG92ZXJyaWRlOworICAgIHZvaWQgcnVuSmF2YVNjcmlwdEFs
ZXJ0KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgU3RyaW5nJikgZmluYWw7CisgICAgYm9vbCBydW5K
YXZhU2NyaXB0Q29uZmlybShXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFN0cmluZyYpIGZpbmFsOwor
ICAgIGJvb2wgcnVuSmF2YVNjcmlwdFByb21wdChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFN0cmlu
ZyYgbWVzc2FnZSwgY29uc3QgU3RyaW5nJiBkZWZhdWx0VmFsdWUsIFN0cmluZyYgcmVzdWx0KSBm
aW5hbDsKKyAgICB2b2lkIHNldFN0YXR1c2JhclRleHQoY29uc3QgU3RyaW5nJikgZmluYWw7CisK
KyAgICBXZWJDb3JlOjpLZXlib2FyZFVJTW9kZSBrZXlib2FyZFVJTW9kZSgpIGZpbmFsOworCisg
ICAgLy8gSG9zdFdpbmRvdyBtZW1iZXIgZnVuY3Rpb24gZmluYWxzLgorICAgIHZvaWQgaW52YWxp
ZGF0ZVJvb3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBmaW5hbDsKKyAgICB2b2lkIGlu
dmFsaWRhdGVDb250ZW50c0FuZFJvb3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBmaW5h
bDsKKyAgICB2b2lkIGludmFsaWRhdGVDb250ZW50c0ZvclNsb3dTY3JvbGwoY29uc3QgV2ViQ29y
ZTo6SW50UmVjdCYpIGZpbmFsOworICAgIHZvaWQgc2Nyb2xsKGNvbnN0IFdlYkNvcmU6OkludFNp
emUmIHNjcm9sbERlbHRhLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiBzY3JvbGxSZWN0LCBjb25z
dCBXZWJDb3JlOjpJbnRSZWN0JiBjbGlwUmVjdCkgZmluYWw7CisKICNpZiBVU0UoQ09PUkRJTkFU
RURfR1JBUEhJQ1MpCi0gICAgdm9pZCBkZWxlZ2F0ZWRTY3JvbGxSZXF1ZXN0ZWQoY29uc3QgV2Vi
Q29yZTo6SW50UG9pbnQmIHNjcm9sbE9mZnNldCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkZWxlZ2F0
ZWRTY3JvbGxSZXF1ZXN0ZWQoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIHNjcm9sbE9mZnNldCkg
ZmluYWw7CiAjZW5kaWYKLSAgICBXZWJDb3JlOjpJbnRQb2ludCBzY3JlZW5Ub1Jvb3RWaWV3KGNv
bnN0IFdlYkNvcmU6OkludFBvaW50JikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6SW50
UmVjdCByb290Vmlld1RvU2NyZWVuKGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBjb25zdCBvdmVy
cmlkZTsKKworICAgIFdlYkNvcmU6OkludFBvaW50IHNjcmVlblRvUm9vdFZpZXcoY29uc3QgV2Vi
Q29yZTo6SW50UG9pbnQmKSBjb25zdCBmaW5hbDsKKyAgICBXZWJDb3JlOjpJbnRSZWN0IHJvb3RW
aWV3VG9TY3JlZW4oY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGNvbnN0IGZpbmFsOworCiAjaWYg
UExBVEZPUk0oSU9TKQotICAgIFdlYkNvcmU6OkludFBvaW50IGFjY2Vzc2liaWxpdHlTY3JlZW5U
b1Jvb3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFBvaW50JikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAg
V2ViQ29yZTo6SW50UmVjdCByb290Vmlld1RvQWNjZXNzaWJpbGl0eVNjcmVlbihjb25zdCBXZWJD
b3JlOjpJbnRSZWN0JikgY29uc3Qgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6SW50UG9pbnQgYWNj
ZXNzaWJpbGl0eVNjcmVlblRvUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKSBjb25z
dCBmaW5hbDsKKyAgICBXZWJDb3JlOjpJbnRSZWN0IHJvb3RWaWV3VG9BY2Nlc3NpYmlsaXR5U2Ny
ZWVuKGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBjb25zdCBmaW5hbDsKICNlbmRpZgotICAgIFBs
YXRmb3JtUGFnZUNsaWVudCBwbGF0Zm9ybVBhZ2VDbGllbnQoKSBjb25zdCBvdmVycmlkZTsKLSAg
ICB2b2lkIGNvbnRlbnRzU2l6ZUNoYW5nZWQoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXZWJDb3Jl
OjpJbnRTaXplJikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzY3JvbGxSZWN0SW50b1ZpZXco
Y29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGNvbnN0IG92ZXJyaWRlOyAvLyBDdXJyZW50bHkgb25s
eSBNYWMgaGFzIGEgbm9uIGVtcHR5IGltcGxlbWVudGF0aW9uLgogCi0gICAgYm9vbCBzaG91bGRV
bmF2YWlsYWJsZVBsdWdpbk1lc3NhZ2VCZUJ1dHRvbihXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9i
amVjdDo6UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24pIGNvbnN0IG92ZXJyaWRlOwotICAgIHZv
aWQgdW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2VkKFdlYkNvcmU6OkVsZW1lbnQqLCBXZWJD
b3JlOjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24pIGNv
bnN0IG92ZXJyaWRlOworICAgIFBsYXRmb3JtUGFnZUNsaWVudCBwbGF0Zm9ybVBhZ2VDbGllbnQo
KSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIGNvbnRlbnRzU2l6ZUNoYW5nZWQoV2ViQ29yZTo6RnJh
bWUqLCBjb25zdCBXZWJDb3JlOjpJbnRTaXplJikgY29uc3QgZmluYWw7CisgICAgdm9pZCBzY3Jv
bGxSZWN0SW50b1ZpZXcoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGNvbnN0IGZpbmFsOyAvLyBD
dXJyZW50bHkgb25seSBNYWMgaGFzIGEgbm9uIGVtcHR5IGltcGxlbWVudGF0aW9uLgogCi0gICAg
dm9pZCBzY3JvbGxiYXJzTW9kZURpZENoYW5nZSgpIGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQg
bW91c2VEaWRNb3ZlT3ZlckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6SGl0VGVzdFJlc3VsdCYsIHVu
c2lnbmVkIG1vZGlmaWVyRmxhZ3MpIG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkVW5hdmFpbGFi
bGVQbHVnaW5NZXNzYWdlQmVCdXR0b24oV2ViQ29yZTo6UmVuZGVyRW1iZWRkZWRPYmplY3Q6OlBs
dWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIHVuYXZhaWxh
YmxlUGx1Z2luQnV0dG9uQ2xpY2tlZChXZWJDb3JlOjpFbGVtZW50KiwgV2ViQ29yZTo6UmVuZGVy
RW1iZWRkZWRPYmplY3Q6OlBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKSBjb25zdCBmaW5hbDsK
IAotICAgIHZvaWQgc2V0VG9vbFRpcChjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpUZXh0RGlyZWN0
aW9uKSBvdmVycmlkZTsKKyAgICB2b2lkIHNjcm9sbGJhcnNNb2RlRGlkQ2hhbmdlKCkgY29uc3Qg
ZmluYWw7CisgICAgdm9pZCBtb3VzZURpZE1vdmVPdmVyRWxlbWVudChjb25zdCBXZWJDb3JlOjpI
aXRUZXN0UmVzdWx0JiwgdW5zaWduZWQgbW9kaWZpZXJGbGFncykgZmluYWw7CisKKyAgICB2b2lk
IHNldFRvb2xUaXAoY29uc3QgU3RyaW5nJiwgV2ViQ29yZTo6VGV4dERpcmVjdGlvbikgZmluYWw7
CiAgICAgCi0gICAgdm9pZCBwcmludChXZWJDb3JlOjpGcmFtZSopIG92ZXJyaWRlOworICAgIHZv
aWQgcHJpbnQoV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKIAotICAgIHZvaWQgZXhjZWVkZWREYXRh
YmFzZVF1b3RhKFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgU3RyaW5nJiBkYXRhYmFzZU5hbWUsIFdl
YkNvcmU6OkRhdGFiYXNlRGV0YWlscykgb3ZlcnJpZGU7CisgICAgdm9pZCBleGNlZWRlZERhdGFi
YXNlUXVvdGEoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBTdHJpbmcmIGRhdGFiYXNlTmFtZSwgV2Vi
Q29yZTo6RGF0YWJhc2VEZXRhaWxzKSBmaW5hbDsKIAotICAgIHZvaWQgcmVhY2hlZE1heEFwcENh
Y2hlU2l6ZShpbnQ2NF90IHNwYWNlTmVlZGVkKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlYWNoZWRB
cHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4qLCBpbnQ2
NF90IHNwYWNlTmVlZGVkKSBvdmVycmlkZTsKKyAgICB2b2lkIHJlYWNoZWRNYXhBcHBDYWNoZVNp
emUoaW50NjRfdCBzcGFjZU5lZWRlZCkgZmluYWw7CisgICAgdm9pZCByZWFjaGVkQXBwbGljYXRp
b25DYWNoZU9yaWdpblF1b3RhKFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luKiwgaW50NjRfdCBzcGFj
ZU5lZWRlZCkgZmluYWw7CiAKICNpZiBFTkFCTEUoREFTSEJPQVJEX1NVUFBPUlQpCi0gICAgdm9p
ZCBhbm5vdGF0ZWRSZWdpb25zQ2hhbmdlZCgpIG92ZXJyaWRlOworICAgIHZvaWQgYW5ub3RhdGVk
UmVnaW9uc0NoYW5nZWQoKSBmaW5hbDsKICNlbmRpZgogCi0gICAgYm9vbCBzaG91bGRSZXBsYWNl
V2l0aEdlbmVyYXRlZEZpbGVGb3JVcGxvYWQoY29uc3QgU3RyaW5nJiBwYXRoLCBTdHJpbmcmIGdl
bmVyYXRlZEZpbGVuYW1lKSBvdmVycmlkZTsKLSAgICBTdHJpbmcgZ2VuZXJhdGVSZXBsYWNlbWVu
dEZpbGUoY29uc3QgU3RyaW5nJiBwYXRoKSBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZFJlcGxh
Y2VXaXRoR2VuZXJhdGVkRmlsZUZvclVwbG9hZChjb25zdCBTdHJpbmcmIHBhdGgsIFN0cmluZyYg
Z2VuZXJhdGVkRmlsZW5hbWUpIGZpbmFsOworICAgIFN0cmluZyBnZW5lcmF0ZVJlcGxhY2VtZW50
RmlsZShjb25zdCBTdHJpbmcmIHBhdGgpIGZpbmFsOwogICAgIAogI2lmIEVOQUJMRShJTlBVVF9U
WVBFX0NPTE9SKQotICAgIHN0ZDo6dW5pcXVlX3B0cjxXZWJDb3JlOjpDb2xvckNob29zZXI+IGNy
ZWF0ZUNvbG9yQ2hvb3NlcihXZWJDb3JlOjpDb2xvckNob29zZXJDbGllbnQqLCBjb25zdCBXZWJD
b3JlOjpDb2xvciYpIG92ZXJyaWRlOworICAgIHN0ZDo6dW5pcXVlX3B0cjxXZWJDb3JlOjpDb2xv
ckNob29zZXI+IGNyZWF0ZUNvbG9yQ2hvb3NlcihXZWJDb3JlOjpDb2xvckNob29zZXJDbGllbnQq
LCBjb25zdCBXZWJDb3JlOjpDb2xvciYpIGZpbmFsOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoSU9T
X1RPVUNIX0VWRU5UUykKLSAgICB2b2lkIGRpZFByZXZlbnREZWZhdWx0Rm9yRXZlbnQoKSBvdmVy
cmlkZTsKKyAgICB2b2lkIGRpZFByZXZlbnREZWZhdWx0Rm9yRXZlbnQoKSBmaW5hbDsKICNlbmRp
ZgogCiAjaWYgUExBVEZPUk0oSU9TKQotICAgIHZvaWQgZGlkUmVjZWl2ZU1vYmlsZURvY1R5cGUo
Ym9vbCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXROZWVkc1Njcm9sbE5vdGlmaWNhdGlvbnMoV2Vi
Q29yZTo6RnJhbWUqLCBib29sKSBvdmVycmlkZTsKLSAgICB2b2lkIG9ic2VydmVkQ29udGVudENo
YW5nZShXZWJDb3JlOjpGcmFtZSopIG92ZXJyaWRlOwotICAgIHZvaWQgY2xlYXJDb250ZW50Q2hh
bmdlT2JzZXJ2ZXJzKFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBub3RpZnlS
ZXZlYWxlZFNlbGVjdGlvbkJ5U2Nyb2xsaW5nRnJhbWUoV2ViQ29yZTo6RnJhbWUqKSBvdmVycmlk
ZTsKLSAgICBib29sIGlzU3RvcHBpbmcoKSBvdmVycmlkZTsKLQotICAgIHZvaWQgZGlkTGF5b3V0
KExheW91dFR5cGUgPSBOb3JtYWxMYXlvdXQpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkU3RhcnRP
dmVyZmxvd1Njcm9sbCgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkRW5kT3ZlcmZsb3dTY3JvbGwo
KSBvdmVycmlkZTsKLSAgICBib29sIGhhc1N0YWJsZVBhZ2VTY2FsZUZhY3RvcigpIGNvbnN0IG92
ZXJyaWRlOworICAgIHZvaWQgZGlkUmVjZWl2ZU1vYmlsZURvY1R5cGUoYm9vbCkgZmluYWw7Cisg
ICAgdm9pZCBzZXROZWVkc1Njcm9sbE5vdGlmaWNhdGlvbnMoV2ViQ29yZTo6RnJhbWUqLCBib29s
KSBmaW5hbDsKKyAgICB2b2lkIG9ic2VydmVkQ29udGVudENoYW5nZShXZWJDb3JlOjpGcmFtZSop
IGZpbmFsOworICAgIHZvaWQgY2xlYXJDb250ZW50Q2hhbmdlT2JzZXJ2ZXJzKFdlYkNvcmU6OkZy
YW1lKikgZmluYWw7CisgICAgdm9pZCBub3RpZnlSZXZlYWxlZFNlbGVjdGlvbkJ5U2Nyb2xsaW5n
RnJhbWUoV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKKyAgICBib29sIGlzU3RvcHBpbmcoKSBmaW5h
bDsKKworICAgIHZvaWQgZGlkTGF5b3V0KExheW91dFR5cGUgPSBOb3JtYWxMYXlvdXQpIGZpbmFs
OworICAgIHZvaWQgZGlkU3RhcnRPdmVyZmxvd1Njcm9sbCgpIGZpbmFsOworICAgIHZvaWQgZGlk
RW5kT3ZlcmZsb3dTY3JvbGwoKSBmaW5hbDsKKyAgICBib29sIGhhc1N0YWJsZVBhZ2VTY2FsZUZh
Y3RvcigpIGNvbnN0IGZpbmFsOwogCiAgICAgLy8gRklYTUU6IFNlZSA8cmRhcjovL3Byb2JsZW0v
NTk3NTU1OT4KLSAgICB2b2lkIHN1cHByZXNzRm9ybU5vdGlmaWNhdGlvbnMoKSBvdmVycmlkZTsK
LSAgICB2b2lkIHJlc3RvcmVGb3JtTm90aWZpY2F0aW9ucygpIG92ZXJyaWRlOworICAgIHZvaWQg
c3VwcHJlc3NGb3JtTm90aWZpY2F0aW9ucygpIGZpbmFsOworICAgIHZvaWQgcmVzdG9yZUZvcm1O
b3RpZmljYXRpb25zKCkgZmluYWw7CiAKLSAgICB2b2lkIGFkZE9yVXBkYXRlU2Nyb2xsaW5nTGF5
ZXIoV2ViQ29yZTo6Tm9kZSosIFBsYXRmb3JtTGF5ZXIqIHNjcm9sbGluZ0xheWVyLCBQbGF0Zm9y
bUxheWVyKiBjb250ZW50c0xheWVyLCBjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBzY3JvbGxTaXpl
LCBib29sIGFsbG93SG9yaXpvbnRhbFNjcm9sbGJhciwgYm9vbCBhbGxvd1ZlcnRpY2FsU2Nyb2xs
YmFyKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlbW92ZVNjcm9sbGluZ0xheWVyKFdlYkNvcmU6Ok5v
ZGUqLCBQbGF0Zm9ybUxheWVyKiBzY3JvbGxpbmdMYXllciwgUGxhdGZvcm1MYXllciogY29udGVu
dHNMYXllcikgb3ZlcnJpZGU7CisgICAgdm9pZCBhZGRPclVwZGF0ZVNjcm9sbGluZ0xheWVyKFdl
YkNvcmU6Ok5vZGUqLCBQbGF0Zm9ybUxheWVyKiBzY3JvbGxpbmdMYXllciwgUGxhdGZvcm1MYXll
ciogY29udGVudHNMYXllciwgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgc2Nyb2xsU2l6ZSwgYm9v
bCBhbGxvd0hvcml6b250YWxTY3JvbGxiYXIsIGJvb2wgYWxsb3dWZXJ0aWNhbFNjcm9sbGJhcikg
ZmluYWw7CisgICAgdm9pZCByZW1vdmVTY3JvbGxpbmdMYXllcihXZWJDb3JlOjpOb2RlKiwgUGxh
dGZvcm1MYXllciogc2Nyb2xsaW5nTGF5ZXIsIFBsYXRmb3JtTGF5ZXIqIGNvbnRlbnRzTGF5ZXIp
IGZpbmFsOwogCi0gICAgdm9pZCB3ZWJBcHBPcmllbnRhdGlvbnNVcGRhdGVkKCkgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBzaG93UGxheWJhY2tUYXJnZXRQaWNrZXIoYm9vbCBoYXNWaWRlbykgb3ZlcnJp
ZGU7CisgICAgdm9pZCB3ZWJBcHBPcmllbnRhdGlvbnNVcGRhdGVkKCkgZmluYWw7CisgICAgdm9p
ZCBzaG93UGxheWJhY2tUYXJnZXRQaWNrZXIoYm9vbCBoYXNWaWRlbykgZmluYWw7CiAKLSAgICBT
ZWNvbmRzIGV2ZW50VGhyb3R0bGluZ0RlbGF5KCkgb3ZlcnJpZGU7CisgICAgU2Vjb25kcyBldmVu
dFRocm90dGxpbmdEZWxheSgpIGZpbmFsOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoT1JJRU5UQVRJ
T05fRVZFTlRTKQotICAgIGludCBkZXZpY2VPcmllbnRhdGlvbigpIGNvbnN0IG92ZXJyaWRlOwor
ICAgIGludCBkZXZpY2VPcmllbnRhdGlvbigpIGNvbnN0IGZpbmFsOwogI2VuZGlmCiAKLSAgICB2
b2lkIHJ1bk9wZW5QYW5lbChXZWJDb3JlOjpGcmFtZSosIFBhc3NSZWZQdHI8V2ViQ29yZTo6Rmls
ZUNob29zZXI+KSBvdmVycmlkZTsKLSAgICB2b2lkIGxvYWRJY29uRm9yRmlsZXMoY29uc3QgVmVj
dG9yPFN0cmluZz4mLCBXZWJDb3JlOjpGaWxlSWNvbkxvYWRlciYpIG92ZXJyaWRlOworICAgIHZv
aWQgcnVuT3BlblBhbmVsKFdlYkNvcmU6OkZyYW1lJiwgV2ViQ29yZTo6RmlsZUNob29zZXImKSBm
aW5hbDsKKyAgICB2b2lkIGxvYWRJY29uRm9yRmlsZXMoY29uc3QgVmVjdG9yPFN0cmluZz4mLCBX
ZWJDb3JlOjpGaWxlSWNvbkxvYWRlciYpIGZpbmFsOwogCiAjaWYgIVBMQVRGT1JNKElPUykKLSAg
ICB2b2lkIHNldEN1cnNvcihjb25zdCBXZWJDb3JlOjpDdXJzb3ImKSBvdmVycmlkZTsKLSAgICB2
b2lkIHNldEN1cnNvckhpZGRlblVudGlsTW91c2VNb3Zlcyhib29sKSBvdmVycmlkZTsKKyAgICB2
b2lkIHNldEN1cnNvcihjb25zdCBXZWJDb3JlOjpDdXJzb3ImKSBmaW5hbDsKKyAgICB2b2lkIHNl
dEN1cnNvckhpZGRlblVudGlsTW91c2VNb3Zlcyhib29sKSBmaW5hbDsKICNlbmRpZgorCiAjaWYg
RU5BQkxFKFJFUVVFU1RfQU5JTUFUSU9OX0ZSQU1FKSAmJiAhVVNFKFJFUVVFU1RfQU5JTUFUSU9O
X0ZSQU1FX1RJTUVSKQotICAgIHZvaWQgc2NoZWR1bGVBbmltYXRpb24oKSBvdmVycmlkZTsKKyAg
ICB2b2lkIHNjaGVkdWxlQW5pbWF0aW9uKCkgZmluYWw7CiAjZW5kaWYKICAgICAKICNpZiBFTkFC
TEUoUE9JTlRFUl9MT0NLKQotICAgIGJvb2wgcmVxdWVzdFBvaW50ZXJMb2NrKCkgb3ZlcnJpZGU7
Ci0gICAgdm9pZCByZXF1ZXN0UG9pbnRlclVubG9jaygpIG92ZXJyaWRlOworICAgIGJvb2wgcmVx
dWVzdFBvaW50ZXJMb2NrKCkgZmluYWw7CisgICAgdm9pZCByZXF1ZXN0UG9pbnRlclVubG9jaygp
IGZpbmFsOwogI2VuZGlmCiAKLSAgICB2b2lkIGRpZEFzc29jaWF0ZUZvcm1Db250cm9scyhjb25z
dCBWZWN0b3I8UmVmUHRyPFdlYkNvcmU6OkVsZW1lbnQ+PiYpIG92ZXJyaWRlOwotICAgIGJvb2wg
c2hvdWxkTm90aWZ5T25Gb3JtQ2hhbmdlcygpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkQXNzb2Np
YXRlRm9ybUNvbnRyb2xzKGNvbnN0IFZlY3RvcjxSZWZQdHI8V2ViQ29yZTo6RWxlbWVudD4+Jikg
ZmluYWw7CisgICAgYm9vbCBzaG91bGROb3RpZnlPbkZvcm1DaGFuZ2VzKCkgZmluYWw7CiAKLSAg
ICBib29sIHNlbGVjdEl0ZW1Xcml0aW5nRGlyZWN0aW9uSXNOYXR1cmFsKCkgb3ZlcnJpZGU7Ci0g
ICAgYm9vbCBzZWxlY3RJdGVtQWxpZ25tZW50Rm9sbG93c01lbnVXcml0aW5nRGlyZWN0aW9uKCkg
b3ZlcnJpZGU7Ci0gICAgYm9vbCBoYXNPcGVuZWRQb3B1cCgpIGNvbnN0IG92ZXJyaWRlOwotICAg
IFJlZlB0cjxXZWJDb3JlOjpQb3B1cE1lbnU+IGNyZWF0ZVBvcHVwTWVudShXZWJDb3JlOjpQb3B1
cE1lbnVDbGllbnQqKSBjb25zdCBvdmVycmlkZTsKLSAgICBSZWZQdHI8V2ViQ29yZTo6U2VhcmNo
UG9wdXBNZW51PiBjcmVhdGVTZWFyY2hQb3B1cE1lbnUoV2ViQ29yZTo6UG9wdXBNZW51Q2xpZW50
KikgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBzZWxlY3RJdGVtV3JpdGluZ0RpcmVjdGlvbklz
TmF0dXJhbCgpIGZpbmFsOworICAgIGJvb2wgc2VsZWN0SXRlbUFsaWdubWVudEZvbGxvd3NNZW51
V3JpdGluZ0RpcmVjdGlvbigpIGZpbmFsOworICAgIGJvb2wgaGFzT3BlbmVkUG9wdXAoKSBjb25z
dCBmaW5hbDsKKyAgICBSZWZQdHI8V2ViQ29yZTo6UG9wdXBNZW51PiBjcmVhdGVQb3B1cE1lbnUo
V2ViQ29yZTo6UG9wdXBNZW51Q2xpZW50KikgY29uc3QgZmluYWw7CisgICAgUmVmUHRyPFdlYkNv
cmU6OlNlYXJjaFBvcHVwTWVudT4gY3JlYXRlU2VhcmNoUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVw
TWVudUNsaWVudCopIGNvbnN0IGZpbmFsOwogCi0gICAgV2ViQ29yZTo6R3JhcGhpY3NMYXllckZh
Y3RvcnkqIGdyYXBoaWNzTGF5ZXJGYWN0b3J5KCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCBh
dHRhY2hSb290R3JhcGhpY3NMYXllcihXZWJDb3JlOjpGcmFtZSosIFdlYkNvcmU6OkdyYXBoaWNz
TGF5ZXIqKSBvdmVycmlkZTsKLSAgICB2b2lkIGF0dGFjaFZpZXdPdmVybGF5R3JhcGhpY3NMYXll
cihXZWJDb3JlOjpGcmFtZSosIFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXIqKSBvdmVycmlkZTsKLSAg
ICB2b2lkIHNldE5lZWRzT25lU2hvdERyYXdpbmdTeW5jaHJvbml6YXRpb24oKSBvdmVycmlkZTsK
LSAgICB2b2lkIHNjaGVkdWxlQ29tcG9zaXRpbmdMYXllckZsdXNoKCkgb3ZlcnJpZGU7Ci0gICAg
Ym9vbCBhZGp1c3RMYXllckZsdXNoVGhyb3R0bGluZyhXZWJDb3JlOjpMYXllckZsdXNoVGhyb3R0
bGVTdGF0ZTo6RmxhZ3MpIG92ZXJyaWRlOworICAgIFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXJGYWN0
b3J5KiBncmFwaGljc0xheWVyRmFjdG9yeSgpIGNvbnN0IGZpbmFsOworICAgIHZvaWQgYXR0YWNo
Um9vdEdyYXBoaWNzTGF5ZXIoV2ViQ29yZTo6RnJhbWUqLCBXZWJDb3JlOjpHcmFwaGljc0xheWVy
KikgZmluYWw7CisgICAgdm9pZCBhdHRhY2hWaWV3T3ZlcmxheUdyYXBoaWNzTGF5ZXIoV2ViQ29y
ZTo6RnJhbWUqLCBXZWJDb3JlOjpHcmFwaGljc0xheWVyKikgZmluYWw7CisgICAgdm9pZCBzZXRO
ZWVkc09uZVNob3REcmF3aW5nU3luY2hyb25pemF0aW9uKCkgZmluYWw7CisgICAgdm9pZCBzY2hl
ZHVsZUNvbXBvc2l0aW5nTGF5ZXJGbHVzaCgpIGZpbmFsOworICAgIGJvb2wgYWRqdXN0TGF5ZXJG
bHVzaFRocm90dGxpbmcoV2ViQ29yZTo6TGF5ZXJGbHVzaFRocm90dGxlU3RhdGU6OkZsYWdzKSBm
aW5hbDsKIAogI2lmIFVTRShSRVFVRVNUX0FOSU1BVElPTl9GUkFNRV9ESVNQTEFZX01PTklUT1Ip
Ci0gICAgUmVmUHRyPFdlYkNvcmU6OkRpc3BsYXlSZWZyZXNoTW9uaXRvcj4gY3JlYXRlRGlzcGxh
eVJlZnJlc2hNb25pdG9yKFdlYkNvcmU6OlBsYXRmb3JtRGlzcGxheUlEKSBjb25zdCBvdmVycmlk
ZTsKKyAgICBSZWZQdHI8V2ViQ29yZTo6RGlzcGxheVJlZnJlc2hNb25pdG9yPiBjcmVhdGVEaXNw
bGF5UmVmcmVzaE1vbml0b3IoV2ViQ29yZTo6UGxhdGZvcm1EaXNwbGF5SUQpIGNvbnN0IGZpbmFs
OwogI2VuZGlmCiAKLSAgICBDb21wb3NpdGluZ1RyaWdnZXJGbGFncyBhbGxvd2VkQ29tcG9zaXRp
bmdUcmlnZ2VycygpIGNvbnN0IG92ZXJyaWRlCisgICAgQ29tcG9zaXRpbmdUcmlnZ2VyRmxhZ3Mg
YWxsb3dlZENvbXBvc2l0aW5nVHJpZ2dlcnMoKSBjb25zdCBmaW5hbAogICAgIHsKICAgICAgICAg
cmV0dXJuIHN0YXRpY19jYXN0PENvbXBvc2l0aW5nVHJpZ2dlckZsYWdzPigKICAgICAgICAgICAg
IFRocmVlRFRyYW5zZm9ybVRyaWdnZXIgfApAQCAtMjMwLDExOSArMjI4LDEyMSBAQCBwcml2YXRl
OgogICAgICAgICAgICAgQW5pbWF0aW9uVHJpZ2dlcik7CiAgICAgfQogCi0gICAgYm9vbCBsYXll
clRyZWVTdGF0ZUlzRnJvemVuKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBsYXllclRyZWVT
dGF0ZUlzRnJvemVuKCkgY29uc3QgZmluYWw7CiAKICNpZiBFTkFCTEUoQVNZTkNfU0NST0xMSU5H
KQotICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6U2Nyb2xsaW5nQ29vcmRpbmF0b3I+IGNyZWF0ZVNj
cm9sbGluZ0Nvb3JkaW5hdG9yKFdlYkNvcmU6OlBhZ2UqKSBjb25zdCBvdmVycmlkZTsKKyAgICBQ
YXNzUmVmUHRyPFdlYkNvcmU6OlNjcm9sbGluZ0Nvb3JkaW5hdG9yPiBjcmVhdGVTY3JvbGxpbmdD
b29yZGluYXRvcihXZWJDb3JlOjpQYWdlKikgY29uc3QgZmluYWw7CiAjZW5kaWYKIAogI2lmIFBM
QVRGT1JNKElPUykKLSAgICB2b2lkIGVsZW1lbnREaWRSZWZvY3VzKGNvbnN0IFdlYkNvcmU6Ok5v
ZGUqKSBvdmVycmlkZTsKKyAgICB2b2lkIGVsZW1lbnREaWRSZWZvY3VzKGNvbnN0IFdlYkNvcmU6
Ok5vZGUqKSBmaW5hbDsKICNlbmRpZgogCiAjaWYgKFBMQVRGT1JNKElPUykgJiYgSEFWRShBVktJ
VCkpIHx8IChQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkp
Ci0gICAgYm9vbCBzdXBwb3J0c1ZpZGVvRnVsbHNjcmVlbihXZWJDb3JlOjpIVE1MTWVkaWFFbGVt
ZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0VXBQ
bGF5YmFja0NvbnRyb2xzTWFuYWdlcihXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50Jikgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCBjbGVhclBsYXliYWNrQ29udHJvbHNNYW5hZ2VyKCkgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBlbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1M
VmlkZW9FbGVtZW50JiwgV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxz
Y3JlZW5Nb2RlKSBvdmVycmlkZTsKLSAgICB2b2lkIGV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRl
b0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCYpIG92ZXJyaWRlOwotI2lmIFBMQVRG
T1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQotICAgIHZvaWQgZXhp
dFZpZGVvRnVsbHNjcmVlblRvTW9kZVdpdGhvdXRBbmltYXRpb24oV2ViQ29yZTo6SFRNTFZpZGVv
RWxlbWVudCYsIFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVu
TW9kZSkgb3ZlcnJpZGU7CisgICAgYm9vbCBzdXBwb3J0c1ZpZGVvRnVsbHNjcmVlbihXZWJDb3Jl
OjpIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIGZpbmFsOworICAg
IHZvaWQgc2V0VXBQbGF5YmFja0NvbnRyb2xzTWFuYWdlcihXZWJDb3JlOjpIVE1MTWVkaWFFbGVt
ZW50JikgZmluYWw7CisgICAgdm9pZCBjbGVhclBsYXliYWNrQ29udHJvbHNNYW5hZ2VyKCkgZmlu
YWw7CisgICAgdm9pZCBlbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3Jl
OjpIVE1MVmlkZW9FbGVtZW50JiwgV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRl
b0Z1bGxzY3JlZW5Nb2RlKSBmaW5hbDsKKyAgICB2b2lkIGV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JW
aWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCYpIGZpbmFsOwogI2VuZGlmCisK
KyNpZiBQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKKyAg
ICB2b2lkIGV4aXRWaWRlb0Z1bGxzY3JlZW5Ub01vZGVXaXRob3V0QW5pbWF0aW9uKFdlYkNvcmU6
OkhUTUxWaWRlb0VsZW1lbnQmLCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVv
RnVsbHNjcmVlbk1vZGUpIGZpbmFsOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoRlVMTFNDUkVFTl9B
UEkpCi0gICAgYm9vbCBzdXBwb3J0c0Z1bGxTY3JlZW5Gb3JFbGVtZW50KGNvbnN0IFdlYkNvcmU6
OkVsZW1lbnQqLCBib29sIHdpdGhLZXlib2FyZCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBlbnRlckZ1
bGxTY3JlZW5Gb3JFbGVtZW50KFdlYkNvcmU6OkVsZW1lbnQqKSBvdmVycmlkZTsKLSAgICB2b2lk
IGV4aXRGdWxsU2NyZWVuRm9yRWxlbWVudChXZWJDb3JlOjpFbGVtZW50Kikgb3ZlcnJpZGU7Cisg
ICAgYm9vbCBzdXBwb3J0c0Z1bGxTY3JlZW5Gb3JFbGVtZW50KGNvbnN0IFdlYkNvcmU6OkVsZW1l
bnQqLCBib29sIHdpdGhLZXlib2FyZCkgZmluYWw7CisgICAgdm9pZCBlbnRlckZ1bGxTY3JlZW5G
b3JFbGVtZW50KFdlYkNvcmU6OkVsZW1lbnQqKSBmaW5hbDsKKyAgICB2b2lkIGV4aXRGdWxsU2Ny
ZWVuRm9yRWxlbWVudChXZWJDb3JlOjpFbGVtZW50KikgZmluYWw7CiAjZW5kaWYKIAogI2lmIFBM
QVRGT1JNKENPQ09BKQotICAgIHZvaWQgZWxlbWVudERpZEZvY3VzKGNvbnN0IFdlYkNvcmU6Ok5v
ZGUqKSBvdmVycmlkZTsKLSAgICB2b2lkIGVsZW1lbnREaWRCbHVyKGNvbnN0IFdlYkNvcmU6Ok5v
ZGUqKSBvdmVycmlkZTsKKyAgICB2b2lkIGVsZW1lbnREaWRGb2N1cyhjb25zdCBXZWJDb3JlOjpO
b2RlKikgZmluYWw7CisgICAgdm9pZCBlbGVtZW50RGlkQmx1cihjb25zdCBXZWJDb3JlOjpOb2Rl
KikgZmluYWw7CiAKLSAgICB2b2lkIG1ha2VGaXJzdFJlc3BvbmRlcigpIG92ZXJyaWRlOworICAg
IHZvaWQgbWFrZUZpcnN0UmVzcG9uZGVyKCkgZmluYWw7CiAjZW5kaWYKIAotICAgIHZvaWQgZW5h
YmxlU3VkZGVuVGVybWluYXRpb24oKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc2FibGVTdWRkZW5U
ZXJtaW5hdGlvbigpIG92ZXJyaWRlOworICAgIHZvaWQgZW5hYmxlU3VkZGVuVGVybWluYXRpb24o
KSBmaW5hbDsKKyAgICB2b2lkIGRpc2FibGVTdWRkZW5UZXJtaW5hdGlvbigpIGZpbmFsOwogCiAj
aWYgUExBVEZPUk0oSU9TKQotICAgIFdlYkNvcmU6OkZsb2F0U2l6ZSBzY3JlZW5TaXplKCkgY29u
c3Qgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6RmxvYXRTaXplIGF2YWlsYWJsZVNjcmVlblNpemUo
KSBjb25zdCBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpGbG9hdFNpemUgc2NyZWVuU2l6ZSgpIGNv
bnN0IGZpbmFsOworICAgIFdlYkNvcmU6OkZsb2F0U2l6ZSBhdmFpbGFibGVTY3JlZW5TaXplKCkg
Y29uc3QgZmluYWw7CiAjZW5kaWYKLSAgICB2b2lkIGRpc3BhdGNoVmlld3BvcnRQcm9wZXJ0aWVz
RGlkQ2hhbmdlKGNvbnN0IFdlYkNvcmU6OlZpZXdwb3J0QXJndW1lbnRzJikgY29uc3Qgb3ZlcnJp
ZGU7CiAKLSAgICB2b2lkIG5vdGlmeVNjcm9sbGVyVGh1bWJJc1Zpc2libGVJblJlY3QoY29uc3Qg
V2ViQ29yZTo6SW50UmVjdCYpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVjb21tZW5kZWRTY3JvbGxi
YXJTdHlsZURpZENoYW5nZShXZWJDb3JlOjpTY3JvbGxiYXJTdHlsZSBuZXdTdHlsZSkgb3ZlcnJp
ZGU7CisgICAgdm9pZCBkaXNwYXRjaFZpZXdwb3J0UHJvcGVydGllc0RpZENoYW5nZShjb25zdCBX
ZWJDb3JlOjpWaWV3cG9ydEFyZ3VtZW50cyYpIGNvbnN0IGZpbmFsOwogCi0gICAgc3RkOjpvcHRp
b25hbDxXZWJDb3JlOjpTY3JvbGxiYXJPdmVybGF5U3R5bGU+IHByZWZlcnJlZFNjcm9sbGJhck92
ZXJsYXlTdHlsZSgpIG92ZXJyaWRlOworICAgIHZvaWQgbm90aWZ5U2Nyb2xsZXJUaHVtYklzVmlz
aWJsZUluUmVjdChjb25zdCBXZWJDb3JlOjpJbnRSZWN0JikgZmluYWw7CisgICAgdm9pZCByZWNv
bW1lbmRlZFNjcm9sbGJhclN0eWxlRGlkQ2hhbmdlKFdlYkNvcmU6OlNjcm9sbGJhclN0eWxlIG5l
d1N0eWxlKSBmaW5hbDsKIAotICAgIFdlYkNvcmU6OkNvbG9yIHVuZGVybGF5Q29sb3IoKSBjb25z
dCBvdmVycmlkZTsKKyAgICBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlNjcm9sbGJhck92ZXJsYXlT
dHlsZT4gcHJlZmVycmVkU2Nyb2xsYmFyT3ZlcmxheVN0eWxlKCkgZmluYWw7CiAKLSAgICB2b2lk
IHBhZ2VFeHRlbmRlZEJhY2tncm91bmRDb2xvckRpZENoYW5nZShXZWJDb3JlOjpDb2xvcikgY29u
c3Qgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6Q29sb3IgdW5kZXJsYXlDb2xvcigpIGNvbnN0IGZp
bmFsOworCisgICAgdm9pZCBwYWdlRXh0ZW5kZWRCYWNrZ3JvdW5kQ29sb3JEaWRDaGFuZ2UoV2Vi
Q29yZTo6Q29sb3IpIGNvbnN0IGZpbmFsOwogICAgIAotICAgIHZvaWQgd2hlZWxFdmVudEhhbmRs
ZXJzQ2hhbmdlZChib29sKSBvdmVycmlkZTsKKyAgICB2b2lkIHdoZWVsRXZlbnRIYW5kbGVyc0No
YW5nZWQoYm9vbCkgZmluYWw7CiAKLSAgICBTdHJpbmcgcGx1Z0luU3RhcnRMYWJlbFRpdGxlKGNv
bnN0IFN0cmluZyYgbWltZVR5cGUpIGNvbnN0IG92ZXJyaWRlOwotICAgIFN0cmluZyBwbHVnSW5T
dGFydExhYmVsU3VidGl0bGUoY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkgY29uc3Qgb3ZlcnJpZGU7
Ci0gICAgU3RyaW5nIHBsdWdJbkV4dHJhU3R5bGVTaGVldCgpIGNvbnN0IG92ZXJyaWRlOwotICAg
IFN0cmluZyBwbHVnSW5FeHRyYVNjcmlwdCgpIGNvbnN0IG92ZXJyaWRlOworICAgIFN0cmluZyBw
bHVnSW5TdGFydExhYmVsVGl0bGUoY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkgY29uc3QgZmluYWw7
CisgICAgU3RyaW5nIHBsdWdJblN0YXJ0TGFiZWxTdWJ0aXRsZShjb25zdCBTdHJpbmcmIG1pbWVU
eXBlKSBjb25zdCBmaW5hbDsKKyAgICBTdHJpbmcgcGx1Z0luRXh0cmFTdHlsZVNoZWV0KCkgY29u
c3QgZmluYWw7CisgICAgU3RyaW5nIHBsdWdJbkV4dHJhU2NyaXB0KCkgY29uc3QgZmluYWw7CiAK
LSAgICB2b2lkIGRpZEFkZEhlYWRlckxheWVyKFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXIqKSBvdmVy
cmlkZTsKLSAgICB2b2lkIGRpZEFkZEZvb3RlckxheWVyKFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXIq
KSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZEFkZEhlYWRlckxheWVyKFdlYkNvcmU6OkdyYXBoaWNz
TGF5ZXIqKSBmaW5hbDsKKyAgICB2b2lkIGRpZEFkZEZvb3RlckxheWVyKFdlYkNvcmU6OkdyYXBo
aWNzTGF5ZXIqKSBmaW5hbDsKIAotICAgIGJvb2wgc2hvdWxkVXNlVGlsZWRCYWNraW5nRm9yRnJh
bWVWaWV3KGNvbnN0IFdlYkNvcmU6OkZyYW1lVmlldyopIGNvbnN0IG92ZXJyaWRlOworICAgIGJv
b2wgc2hvdWxkVXNlVGlsZWRCYWNraW5nRm9yRnJhbWVWaWV3KGNvbnN0IFdlYkNvcmU6OkZyYW1l
VmlldyopIGNvbnN0IGZpbmFsOwogCi0gICAgdm9pZCBpc1BsYXlpbmdNZWRpYURpZENoYW5nZShX
ZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpNZWRpYVN0YXRlRmxhZ3MsIHVpbnQ2NF90KSBvdmVycmlk
ZTsKKyAgICB2b2lkIGlzUGxheWluZ01lZGlhRGlkQ2hhbmdlKFdlYkNvcmU6Ok1lZGlhUHJvZHVj
ZXI6Ok1lZGlhU3RhdGVGbGFncywgdWludDY0X3QpIGZpbmFsOwogCiAjaWYgRU5BQkxFKE1FRElB
X1NFU1NJT04pCi0gICAgdm9pZCBoYXNNZWRpYVNlc3Npb25XaXRoQWN0aXZlTWVkaWFFbGVtZW50
c0RpZENoYW5nZShib29sKSBvdmVycmlkZTsKLSAgICB2b2lkIG1lZGlhU2Vzc2lvbk1ldGFkYXRh
RGlkQ2hhbmdlKGNvbnN0IFdlYkNvcmU6Ok1lZGlhU2Vzc2lvbk1ldGFkYXRhJikgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBmb2N1c2VkQ29udGVudE1lZGlhRWxlbWVudERpZENoYW5nZSh1aW50NjRfdCkg
b3ZlcnJpZGU7CisgICAgdm9pZCBoYXNNZWRpYVNlc3Npb25XaXRoQWN0aXZlTWVkaWFFbGVtZW50
c0RpZENoYW5nZShib29sKSBmaW5hbDsKKyAgICB2b2lkIG1lZGlhU2Vzc2lvbk1ldGFkYXRhRGlk
Q2hhbmdlKGNvbnN0IFdlYkNvcmU6Ok1lZGlhU2Vzc2lvbk1ldGFkYXRhJikgZmluYWw7CisgICAg
dm9pZCBmb2N1c2VkQ29udGVudE1lZGlhRWxlbWVudERpZENoYW5nZSh1aW50NjRfdCkgZmluYWw7
CiAjZW5kaWYKIAogI2lmIEVOQUJMRShTVUJUTEVfQ1JZUFRPKQotICAgIGJvb2wgd3JhcENyeXB0
b0tleShjb25zdCBWZWN0b3I8dWludDhfdD4mLCBWZWN0b3I8dWludDhfdD4mKSBjb25zdCBvdmVy
cmlkZTsKLSAgICBib29sIHVud3JhcENyeXB0b0tleShjb25zdCBWZWN0b3I8dWludDhfdD4mLCBW
ZWN0b3I8dWludDhfdD4mKSBjb25zdCBvdmVycmlkZTsKKyAgICBib29sIHdyYXBDcnlwdG9LZXko
Y29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiwgVmVjdG9yPHVpbnQ4X3Q+JikgY29uc3QgZmluYWw7Cisg
ICAgYm9vbCB1bndyYXBDcnlwdG9LZXkoY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiwgVmVjdG9yPHVp
bnQ4X3Q+JikgY29uc3QgZmluYWw7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShURUxFUEhPTkVfTlVN
QkVSX0RFVEVDVElPTikgJiYgUExBVEZPUk0oTUFDKQotICAgIHZvaWQgaGFuZGxlVGVsZXBob25l
TnVtYmVyQ2xpY2soY29uc3QgU3RyaW5nJiBudW1iZXIsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50
Jikgb3ZlcnJpZGU7CisgICAgdm9pZCBoYW5kbGVUZWxlcGhvbmVOdW1iZXJDbGljayhjb25zdCBT
dHJpbmcmIG51bWJlciwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKSBmaW5hbDsKICNlbmRpZgor
CiAjaWYgRU5BQkxFKFNFUlZJQ0VfQ09OVFJPTFMpCi0gICAgdm9pZCBoYW5kbGVTZWxlY3Rpb25T
ZXJ2aWNlQ2xpY2soV2ViQ29yZTo6RnJhbWVTZWxlY3Rpb24mLCBjb25zdCBWZWN0b3I8U3RyaW5n
PiYgdGVsZXBob25lTnVtYmVycywgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKSBvdmVycmlkZTsK
LSAgICBib29sIGhhc1JlbGV2YW50U2VsZWN0aW9uU2VydmljZXMoYm9vbCBpc1RleHRPbmx5KSBj
b25zdCBvdmVycmlkZTsKKyAgICB2b2lkIGhhbmRsZVNlbGVjdGlvblNlcnZpY2VDbGljayhXZWJD
b3JlOjpGcmFtZVNlbGVjdGlvbiYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiB0ZWxlcGhvbmVOdW1i
ZXJzLCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIGZpbmFsOworICAgIGJvb2wgaGFzUmVsZXZh
bnRTZWxlY3Rpb25TZXJ2aWNlcyhib29sIGlzVGV4dE9ubHkpIGNvbnN0IGZpbmFsOwogI2VuZGlm
CiAKLSAgICBib29sIHNob3VsZERpc3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50cygpIGNvbnN0IG92
ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkRGlzcGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKCkgY29u
c3QgZmluYWw7CiAKLSAgICB2b2lkIGhhbmRsZUF1dG9GaWxsQnV0dG9uQ2xpY2soV2ViQ29yZTo6
SFRNTElucHV0RWxlbWVudCYpIG92ZXJyaWRlOworICAgIHZvaWQgaGFuZGxlQXV0b0ZpbGxCdXR0
b25DbGljayhXZWJDb3JlOjpIVE1MSW5wdXRFbGVtZW50JikgZmluYWw7CiAKICNpZiBFTkFCTEUo
V0lSRUxFU1NfUExBWUJBQ0tfVEFSR0VUKSAmJiAhUExBVEZPUk0oSU9TKQotICAgIHZvaWQgYWRk
UGxheWJhY2tUYXJnZXRQaWNrZXJDbGllbnQodWludDY0X3QgLypjb250ZXh0SWQqLykgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCByZW1vdmVQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudCh1aW50NjRfdCAv
KmNvbnRleHRJZCovKSBvdmVycmlkZTsKLSAgICB2b2lkIHNob3dQbGF5YmFja1RhcmdldFBpY2tl
cih1aW50NjRfdCBjb250ZXh0SWQsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiwgYm9vbCkgb3Zl
cnJpZGU7Ci0gICAgdm9pZCBwbGF5YmFja1RhcmdldFBpY2tlckNsaWVudFN0YXRlRGlkQ2hhbmdl
KHVpbnQ2NF90LCBXZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpNZWRpYVN0YXRlRmxhZ3MpIG92ZXJy
aWRlOwotICAgIHZvaWQgc2V0TW9ja01lZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJFbmFibGVkKGJv
b2wpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0TW9ja01lZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJT
dGF0ZShjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpNZWRpYVBsYXliYWNrVGFyZ2V0Q29udGV4dDo6
U3RhdGUpIG92ZXJyaWRlOworICAgIHZvaWQgYWRkUGxheWJhY2tUYXJnZXRQaWNrZXJDbGllbnQo
dWludDY0X3QgLypjb250ZXh0SWQqLykgZmluYWw7CisgICAgdm9pZCByZW1vdmVQbGF5YmFja1Rh
cmdldFBpY2tlckNsaWVudCh1aW50NjRfdCAvKmNvbnRleHRJZCovKSBmaW5hbDsKKyAgICB2b2lk
IHNob3dQbGF5YmFja1RhcmdldFBpY2tlcih1aW50NjRfdCBjb250ZXh0SWQsIGNvbnN0IFdlYkNv
cmU6OkludFBvaW50JiwgYm9vbCkgZmluYWw7CisgICAgdm9pZCBwbGF5YmFja1RhcmdldFBpY2tl
ckNsaWVudFN0YXRlRGlkQ2hhbmdlKHVpbnQ2NF90LCBXZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpN
ZWRpYVN0YXRlRmxhZ3MpIGZpbmFsOworICAgIHZvaWQgc2V0TW9ja01lZGlhUGxheWJhY2tUYXJn
ZXRQaWNrZXJFbmFibGVkKGJvb2wpIGZpbmFsOworICAgIHZvaWQgc2V0TW9ja01lZGlhUGxheWJh
Y2tUYXJnZXRQaWNrZXJTdGF0ZShjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpNZWRpYVBsYXliYWNr
VGFyZ2V0Q29udGV4dDo6U3RhdGUpIGZpbmFsOwogI2VuZGlmCiAKLSAgICB2b2lkIGltYWdlT3JN
ZWRpYURvY3VtZW50U2l6ZUNoYW5nZWQoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYpIG92ZXJyaWRl
OwotI2lmIEVOQUJMRShWSURFTykKLSNpZiBVU0UoR1NUUkVBTUVSKQotICAgIHZvaWQgcmVxdWVz
dEluc3RhbGxNaXNzaW5nTWVkaWFQbHVnaW5zKGNvbnN0IFN0cmluZyYgLypkZXRhaWxzKi8sIGNv
bnN0IFN0cmluZyYgLypkZXNjcmlwdGlvbiovLCBXZWJDb3JlOjpNZWRpYVBsYXllclJlcXVlc3RJ
bnN0YWxsTWlzc2luZ1BsdWdpbnNDYWxsYmFjayYpIG92ZXJyaWRlOwotI2VuZGlmCisgICAgdm9p
ZCBpbWFnZU9yTWVkaWFEb2N1bWVudFNpemVDaGFuZ2VkKGNvbnN0IFdlYkNvcmU6OkludFNpemUm
KSBmaW5hbDsKKworI2lmIEVOQUJMRShWSURFTykgJiYgVVNFKEdTVFJFQU1FUikKKyAgICB2b2lk
IHJlcXVlc3RJbnN0YWxsTWlzc2luZ01lZGlhUGx1Z2lucyhjb25zdCBTdHJpbmcmIC8qZGV0YWls
cyovLCBjb25zdCBTdHJpbmcmIC8qZGVzY3JpcHRpb24qLywgV2ViQ29yZTo6TWVkaWFQbGF5ZXJS
ZXF1ZXN0SW5zdGFsbE1pc3NpbmdQbHVnaW5zQ2FsbGJhY2smKSBmaW5hbDsKICNlbmRpZgogCi0g
ICAgdm9pZCBkaWRJbnZhbGlkYXRlRG9jdW1lbnRNYXJrZXJSZWN0cygpIG92ZXJyaWRlOworICAg
IHZvaWQgZGlkSW52YWxpZGF0ZURvY3VtZW50TWFya2VyUmVjdHMoKSBmaW5hbDsKIAogICAgIFN0
cmluZyBtX2NhY2hlZFRvb2xUaXA7CiAgICAgbXV0YWJsZSBSZWZQdHI8V2ViRnJhbWU+IG1fY2Fj
aGVkRnJhbWVTZXRMYXJnZXN0RnJhbWU7Ci0gICAgbXV0YWJsZSBib29sIG1fY2FjaGVkTWFpbkZy
YW1lSGFzSG9yaXpvbnRhbFNjcm9sbGJhcjsKLSAgICBtdXRhYmxlIGJvb2wgbV9jYWNoZWRNYWlu
RnJhbWVIYXNWZXJ0aWNhbFNjcm9sbGJhcjsKKyAgICBtdXRhYmxlIGJvb2wgbV9jYWNoZWRNYWlu
RnJhbWVIYXNIb3Jpem9udGFsU2Nyb2xsYmFyIHsgZmFsc2UgfTsKKyAgICBtdXRhYmxlIGJvb2wg
bV9jYWNoZWRNYWluRnJhbWVIYXNWZXJ0aWNhbFNjcm9sbGJhciB7IGZhbHNlIH07CiAKLSAgICBX
ZWJQYWdlKiBtX3BhZ2U7CisgICAgV2ViUGFnZSYgbV9wYWdlOwogfTsKIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L1dlYkVkaXRvckNsaWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5jcHAKaW5kZXggNTRiMjdiNDQwNDg1MjY5ZTVl
ODdmODJkMGZiNTAyYTFmMDIyYWMzMy4uOGI4MDc1NTJjNDExNDUyNjI0ODgwMzgzZjlkMzJhYmFh
MDc2YmVmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3Vw
cG9ydC9XZWJFZGl0b3JDbGllbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmNwcApAQCAtMjM4LDIxICsyMzgsMjEgQEAg
dm9pZCBXZWJFZGl0b3JDbGllbnQ6OmdldENsaWVudFBhc3RlYm9hcmREYXRhRm9yUmFuZ2UoUmFu
Z2UqIHJhbmdlLCBWZWN0b3I8U3RyaW4KICAgICBtX3BhZ2UtPmluamVjdGVkQnVuZGxlRWRpdG9y
Q2xpZW50KCkuZ2V0UGFzdGVib2FyZERhdGFGb3JSYW5nZSgqbV9wYWdlLCByYW5nZSwgcGFzdGVi
b2FyZFR5cGVzLCBwYXN0ZWJvYXJkRGF0YSk7CiB9CiAKLXZvaWQgV2ViRWRpdG9yQ2xpZW50Ojpy
ZWdpc3RlclVuZG9TdGVwKFBhc3NSZWZQdHI8VW5kb1N0ZXA+IHN0ZXApCit2b2lkIFdlYkVkaXRv
ckNsaWVudDo6cmVnaXN0ZXJVbmRvU3RlcChVbmRvU3RlcCYgc3RlcCkKIHsKICAgICAvLyBGSVhN
RTogQWRkIGFzc2VydGlvbiB0aGF0IHRoZSBjb21tYW5kIGJlaW5nIHJlYXBwbGllZCBpcyB0aGUg
c2FtZSBjb21tYW5kIHRoYXQgaXMKICAgICAvLyBiZWluZyBwYXNzZWQgdG8gdXMuCiAgICAgaWYg
KG1fcGFnZS0+aXNJblJlZG8oKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgUmVmUHRyPFdlYlVu
ZG9TdGVwPiB3ZWJTdGVwID0gV2ViVW5kb1N0ZXA6OmNyZWF0ZShzdGVwKTsKLSAgICBtX3BhZ2Ut
PmFkZFdlYlVuZG9TdGVwKHdlYlN0ZXAtPnN0ZXBJRCgpLCB3ZWJTdGVwLmdldCgpKTsKLSAgICB1
aW50MzJfdCBlZGl0QWN0aW9uID0gc3RhdGljX2Nhc3Q8dWludDMyX3Q+KHdlYlN0ZXAtPnN0ZXAo
KS0+ZWRpdGluZ0FjdGlvbigpKTsKKyAgICBhdXRvIHdlYlN0ZXAgPSBXZWJVbmRvU3RlcDo6Y3Jl
YXRlKCZzdGVwKTsKKyAgICBhdXRvIGVkaXRBY3Rpb24gPSBzdGF0aWNfY2FzdDx1aW50MzJfdD4o
d2ViU3RlcC0+c3RlcCgpLT5lZGl0aW5nQWN0aW9uKCkpOwogCisgICAgbV9wYWdlLT5hZGRXZWJV
bmRvU3RlcCh3ZWJTdGVwLT5zdGVwSUQoKSwgd2ViU3RlcC5wdHIoKSk7CiAgICAgbV9wYWdlLT5z
ZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJlZ2lzdGVyRWRpdENvbW1hbmRGb3JVbmRvKHdl
YlN0ZXAtPnN0ZXBJRCgpLCBlZGl0QWN0aW9uKSk7CiB9CiAKLXZvaWQgV2ViRWRpdG9yQ2xpZW50
OjpyZWdpc3RlclJlZG9TdGVwKFBhc3NSZWZQdHI8VW5kb1N0ZXA+KQordm9pZCBXZWJFZGl0b3JD
bGllbnQ6OnJlZ2lzdGVyUmVkb1N0ZXAoVW5kb1N0ZXAmKQogewogfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5o
IGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGll
bnQuaAppbmRleCA4ZDgxNzRkYzkxM2FmNWUyY2IzMDE4MDc0MjA1YWQ5NTgxOTY0YTYwLi5jZTJi
Y2M0NzE4ODRhZWUxZDlkYTVjMmRhN2M1Yzc4YjZlZjg1NGVjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50
LmgKQEAgLTcxLDggKzcxLDggQEAgcHJpdmF0ZToKICAgICB2b2lkIGRpZFdyaXRlU2VsZWN0aW9u
VG9QYXN0ZWJvYXJkKCkgZmluYWw7CiAgICAgdm9pZCBnZXRDbGllbnRQYXN0ZWJvYXJkRGF0YUZv
clJhbmdlKFdlYkNvcmU6OlJhbmdlKiwgVmVjdG9yPFN0cmluZz4mIHBhc3RlYm9hcmRUeXBlcywg
VmVjdG9yPFJlZlB0cjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+PiYgcGFzdGVib2FyZERhdGEpIGZp
bmFsOwogICAgIAotICAgIHZvaWQgcmVnaXN0ZXJVbmRvU3RlcChQYXNzUmVmUHRyPFdlYkNvcmU6
OlVuZG9TdGVwPikgZmluYWw7Ci0gICAgdm9pZCByZWdpc3RlclJlZG9TdGVwKFBhc3NSZWZQdHI8
V2ViQ29yZTo6VW5kb1N0ZXA+KSBmaW5hbDsKKyAgICB2b2lkIHJlZ2lzdGVyVW5kb1N0ZXAoV2Vi
Q29yZTo6VW5kb1N0ZXAmKSBmaW5hbDsKKyAgICB2b2lkIHJlZ2lzdGVyUmVkb1N0ZXAoV2ViQ29y
ZTo6VW5kb1N0ZXAmKSBmaW5hbDsKICAgICB2b2lkIGNsZWFyVW5kb1JlZG9PcGVyYXRpb25zKCkg
ZmluYWw7CiAKICAgICBib29sIGNhbkNvcHlDdXQoV2ViQ29yZTo6RnJhbWUqLCBib29sIGRlZmF1
bHRWYWx1ZSkgY29uc3QgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcCBiL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCmlu
ZGV4IGYxNzc1YzY4NmY4ZjQwNjUwODY4NTM1MjVlMDBmMWRkMmIxMzFiZGYuLjhhNzU5NGUwMTNi
MjMxN2EzYTMyN2JhYmQ0NDkyZjkzNGUyMDFkYmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJD
bGllbnQuY3BwCkBAIC03MDEsNyArNzAxLDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnMKICAg
ICAgICAgbV9mcmFtZS0+ZGlkUmVjZWl2ZVBvbGljeURlY2lzaW9uKGxpc3RlbmVySUQsIHN0YXRp
Y19jYXN0PFBvbGljeUFjdGlvbj4ocG9saWN5QWN0aW9uKSwgMCwgZG93bmxvYWRJRCk7CiB9CiAK
LXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2lu
ZG93QWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIG5hdmlnYXRpb25BY3Rpb24sIGNvbnN0
IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgUGFzc1JlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0
ZSwgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24p
Cit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dp
bmRvd0FjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBuYXZpZ2F0aW9uQWN0aW9uLCBjb25z
dCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSogZm9ybVN0YXRlLCBjb25zdCBT
dHJpbmcmIGZyYW1lTmFtZSwgRnJhbWVQb2xpY3lGdW5jdGlvbiBmdW5jdGlvbikKIHsKICAgICBX
ZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpOwogICAgIGlmICghd2ViUGFnZSkgewpA
QCAtNzM3LDcgKzczNyw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVj
aWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IE5hdmlnYXRpCiAgICAgd2ViUGFnZS0+
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rp
b24obV9mcmFtZS0+ZnJhbWVJRCgpLCBTZWN1cml0eU9yaWdpbkRhdGE6OmZyb21GcmFtZShjb3Jl
RnJhbWUpLCBuYXZpZ2F0aW9uQWN0aW9uRGF0YSwgcmVxdWVzdCwgZnJhbWVOYW1lLCBsaXN0ZW5l
cklELCBVc2VyRGF0YShXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS50cmFuc2Zvcm1PYmplY3RzVG9I
YW5kbGVzKHVzZXJEYXRhLmdldCgpKS5nZXQoKSkpKTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRl
ckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5h
dmlnYXRpb25BY3Rpb24mIG5hdmlnYXRpb25BY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYg
cmVxdWVzdCwgUGFzc1JlZlB0cjxGb3JtU3RhdGU+IHBycEZvcm1TdGF0ZSwgRnJhbWVQb2xpY3lG
dW5jdGlvbiBmdW5jdGlvbikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVj
aWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBuYXZp
Z2F0aW9uQWN0aW9uLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSog
Zm9ybVN0YXRlLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQogewogICAgIFdlYlBhZ2Uq
IHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7CiAgICAgaWYgKCF3ZWJQYWdlKSB7CkBAIC03NTIs
NyArNzUyLDYgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xp
Y3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5hdmlnYXQKICAgICB9CiAKICAgICBSZWZQdHI8
QVBJOjpPYmplY3Q+IHVzZXJEYXRhOwotICAgIFJlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSA9
IHBycEZvcm1TdGF0ZTsKIAogICAgIFJlZlB0cjxJbmplY3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rp
b24+IGFjdGlvbiA9IEluamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbjo6Y3JlYXRlKG1fZnJh
bWUsIG5hdmlnYXRpb25BY3Rpb24sIGZvcm1TdGF0ZSk7CiAKQEAgLTc4Miw3ICs3ODEsNyBAQCB2
b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRp
b25BY3Rpb24oY29uc3QgTmF2aWdhdAogICAgIGNhc2UgTmF2aWdhdGlvblR5cGU6OkZvcm1TdWJt
aXR0ZWQ6CiAgICAgY2FzZSBOYXZpZ2F0aW9uVHlwZTo6Rm9ybVJlc3VibWl0dGVkOgogICAgICAg
ICBpZiAoZm9ybVN0YXRlKQotICAgICAgICAgICAgb3JpZ2luYXRpbmdGcmFtZSA9IFdlYkZyYW1l
Ojpmcm9tQ29yZUZyYW1lKCpmb3JtU3RhdGUtPnNvdXJjZURvY3VtZW50KCktPmZyYW1lKCkpOwor
ICAgICAgICAgICAgb3JpZ2luYXRpbmdGcmFtZSA9IFdlYkZyYW1lOjpmcm9tQ29yZUZyYW1lKCpm
b3JtU3RhdGUtPnNvdXJjZURvY3VtZW50KCkuZnJhbWUoKSk7CiAgICAgICAgIGJyZWFrOwogICAg
IGNhc2UgTmF2aWdhdGlvblR5cGU6OkJhY2tGb3J3YXJkOgogICAgIGNhc2UgTmF2aWdhdGlvblR5
cGU6OlJlbG9hZDoKQEAgLTg0Myw0MCArODQyLDM2IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmRpc3BhdGNoVW5hYmxlVG9JbXBsZW1lbnRQb2xpY3koY29uc3QgUmVzb3VyY2VFcnJvciYK
ICAgICB3ZWJQYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlVuYWJsZVRvSW1wbGVt
ZW50UG9saWN5KG1fZnJhbWUtPmZyYW1lSUQoKSwgZXJyb3IsIFVzZXJEYXRhKFdlYlByb2Nlc3M6
OnNpbmdsZXRvbigpLnRyYW5zZm9ybU9iamVjdHNUb0hhbmRsZXModXNlckRhdGEuZ2V0KCkpLmdl
dCgpKSkpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5k
U3VibWl0RXZlbnQoUGFzc1JlZlB0cjxGb3JtU3RhdGU+IHBycEZvcm1TdGF0ZSkKK3ZvaWQgV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChSZWY8Rm9ybVN0
YXRlPiYmIGZvcm1TdGF0ZSkKIHsKLSAgICBXZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFn
ZSgpOworICAgIGF1dG8qIHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7CiAgICAgaWYgKCF3ZWJQ
YWdlKQogICAgICAgICByZXR1cm47CiAKLSAgICBSZWZQdHI8Rm9ybVN0YXRlPiBmb3JtU3RhdGUg
PSBwcnBGb3JtU3RhdGU7Ci0gICAgSFRNTEZvcm1FbGVtZW50KiBmb3JtID0gZm9ybVN0YXRlLT5m
b3JtKCk7CisgICAgYXV0byYgZm9ybSA9IGZvcm1TdGF0ZS0+Zm9ybSgpOwogCi0gICAgV2ViRnJh
bWUqIHNvdXJjZUZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZvcm1TdGF0ZS0+c291
cmNlRG9jdW1lbnQoKS0+ZnJhbWUoKSk7CisgICAgQVNTRVJUKGZvcm1TdGF0ZS0+c291cmNlRG9j
dW1lbnQoKS5mcmFtZSgpKTsKKyAgICBhdXRvKiBzb3VyY2VGcmFtZSA9IFdlYkZyYW1lOjpmcm9t
Q29yZUZyYW1lKCpmb3JtU3RhdGUtPnNvdXJjZURvY3VtZW50KCkuZnJhbWUoKSk7CiAgICAgQVNT
RVJUKHNvdXJjZUZyYW1lKTsKIAotICAgIHdlYlBhZ2UtPmluamVjdGVkQnVuZGxlRm9ybUNsaWVu
dCgpLndpbGxTZW5kU3VibWl0RXZlbnQod2ViUGFnZSwgZm9ybSwgbV9mcmFtZSwgc291cmNlRnJh
bWUsIGZvcm1TdGF0ZS0+dGV4dEZpZWxkVmFsdWVzKCkpOworICAgIHdlYlBhZ2UtPmluamVjdGVk
QnVuZGxlRm9ybUNsaWVudCgpLndpbGxTZW5kU3VibWl0RXZlbnQod2ViUGFnZSwgJmZvcm0sIG1f
ZnJhbWUsIHNvdXJjZUZyYW1lLCBmb3JtU3RhdGUtPnRleHRGaWVsZFZhbHVlcygpKTsKIH0KIAot
dm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShQYXNzUmVm
UHRyPEZvcm1TdGF0ZT4gcHJwRm9ybVN0YXRlLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9u
KQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShGb3Jt
U3RhdGUmIGZvcm1TdGF0ZSwgRnJhbWVQb2xpY3lGdW5jdGlvbiBmdW5jdGlvbikKIHsKICAgICBX
ZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpOwogICAgIGlmICghd2ViUGFnZSkKICAg
ICAgICAgcmV0dXJuOwogCi0gICAgLy8gRklYTUU6IFBhc3MgbW9yZSBvZiB0aGUgZm9ybSBzdGF0
ZS4KLSAgICBSZWZQdHI8Rm9ybVN0YXRlPiBmb3JtU3RhdGUgPSBwcnBGb3JtU3RhdGU7Ci0gICAg
Ci0gICAgSFRNTEZvcm1FbGVtZW50KiBmb3JtID0gZm9ybVN0YXRlLT5mb3JtKCk7CisgICAgYXV0
byYgZm9ybSA9IGZvcm1TdGF0ZS5mb3JtKCk7CiAKLSAgICBXZWJGcmFtZSogc291cmNlRnJhbWUg
PSBXZWJGcmFtZTo6ZnJvbUNvcmVGcmFtZSgqZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLT5m
cmFtZSgpKTsKKyAgICBhdXRvKiBzb3VyY2VGcmFtZSA9IFdlYkZyYW1lOjpmcm9tQ29yZUZyYW1l
KCpmb3JtU3RhdGUuc291cmNlRG9jdW1lbnQoKS5mcmFtZSgpKTsKICAgICBBU1NFUlQoc291cmNl
RnJhbWUpOwogCi0gICAgY29uc3QgVmVjdG9yPHN0ZDo6cGFpcjxTdHJpbmcsIFN0cmluZz4+JiB2
YWx1ZXMgPSBmb3JtU3RhdGUtPnRleHRGaWVsZFZhbHVlcygpOworICAgIGF1dG8mIHZhbHVlcyA9
IGZvcm1TdGF0ZS50ZXh0RmllbGRWYWx1ZXMoKTsKIAogICAgIFJlZlB0cjxBUEk6Ok9iamVjdD4g
dXNlckRhdGE7Ci0gICAgd2ViUGFnZS0+aW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCkud2lsbFN1
Ym1pdEZvcm0od2ViUGFnZSwgZm9ybSwgbV9mcmFtZSwgc291cmNlRnJhbWUsIHZhbHVlcywgdXNl
ckRhdGEpOwotCisgICAgd2ViUGFnZS0+aW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCkud2lsbFN1
Ym1pdEZvcm0od2ViUGFnZSwgJmZvcm0sIG1fZnJhbWUsIHNvdXJjZUZyYW1lLCB2YWx1ZXMsIHVz
ZXJEYXRhKTsKIAogICAgIHVpbnQ2NF90IGxpc3RlbmVySUQgPSBtX2ZyYW1lLT5zZXRVcFBvbGlj
eUxpc3RlbmVyKFdURk1vdmUoZnVuY3Rpb24pKTsKIApAQCAtMTQwMCwxNCArMTM5NSwxMyBAQCB2
b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpjb252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxv
YWQoRG9jdW1lbnRMb2FkZXIgKmRvYwogICAgIG1fZnJhbWUtPmNvbnZlcnRNYWluUmVzb3VyY2VM
b2FkVG9Eb3dubG9hZChkb2N1bWVudExvYWRlciwgc2Vzc2lvbklELCByZXF1ZXN0LCByZXNwb25z
ZSk7CiB9CiAKLVJlZlB0cjxGcmFtZT4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1l
KGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIG5hbWUsIEhUTUxGcmFtZU93bmVyRWxlbWVu
dCogb3duZXJFbGVtZW50LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIGJvb2wgLyphbGxvd3NTY3JvbGxp
bmcqLywgaW50IC8qbWFyZ2luV2lkdGgqLywgaW50IC8qbWFyZ2luSGVpZ2h0Ki8pCitSZWZQdHI8
RnJhbWU+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVGcmFtZShjb25zdCBVUkwmIHVybCwg
Y29uc3QgU3RyaW5nJiBuYW1lLCBIVE1MRnJhbWVPd25lckVsZW1lbnQmIG93bmVyRWxlbWVudCwK
KyAgICBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBib29sIC8qYWxsb3dzU2Nyb2xsaW5nKi8sIGlu
dCAvKm1hcmdpbldpZHRoKi8sIGludCAvKm1hcmdpbkhlaWdodCovKQogewotICAgIFdlYlBhZ2Uq
IHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7CisgICAgYXV0byogd2ViUGFnZSA9IG1fZnJhbWUt
PnBhZ2UoKTsKIAotICAgIFJlZlB0cjxXZWJGcmFtZT4gc3ViZnJhbWUgPSBXZWJGcmFtZTo6Y3Jl
YXRlU3ViZnJhbWUod2ViUGFnZSwgbmFtZSwgb3duZXJFbGVtZW50KTsKLQotICAgIEZyYW1lKiBj
b3JlU3ViZnJhbWUgPSBzdWJmcmFtZS0+Y29yZUZyYW1lKCk7CisgICAgYXV0byBzdWJmcmFtZSA9
IFdlYkZyYW1lOjpjcmVhdGVTdWJmcmFtZSh3ZWJQYWdlLCBuYW1lLCAmb3duZXJFbGVtZW50KTsK
KyAgICBhdXRvKiBjb3JlU3ViZnJhbWUgPSBzdWJmcmFtZS0+Y29yZUZyYW1lKCk7CiAgICAgaWYg
KCFjb3JlU3ViZnJhbWUpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCkBAIC0xNDI3LDcgKzE0
MjEsNyBAQCBSZWZQdHI8RnJhbWU+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVGcmFtZShj
b25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiBuYQogICAgIHJldHVybiBjb3JlU3ViZnJhbWU7
CiB9CiAKLVJlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4o
Y29uc3QgSW50U2l6ZSYsIEhUTUxQbHVnSW5FbGVtZW50KiBwbHVnaW5FbGVtZW50LCBjb25zdCBV
UkwmIHVybCwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxT
dHJpbmc+JiBwYXJhbVZhbHVlcywgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgYm9vbCBsb2FkTWFu
dWFsbHkpCitSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlUGx1Z2lu
KGNvbnN0IEludFNpemUmLCBIVE1MUGx1Z0luRWxlbWVudCYgcGx1Z2luRWxlbWVudCwgY29uc3Qg
VVJMJiB1cmwsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8
U3RyaW5nPiYgcGFyYW1WYWx1ZXMsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUsIGJvb2wgbG9hZE1h
bnVhbGx5KQogewogICAgIEFTU0VSVChwYXJhbU5hbWVzLnNpemUoKSA9PSBwYXJhbVZhbHVlcy5z
aXplKCkpOwogICAgIEFTU0VSVChtX2ZyYW1lLT5wYWdlKCkpOwpAQCAtMTQ0NCwxMSArMTQzOCwx
MSBAQCBSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlUGx1Z2luKGNv
bnN0IEludFNpemUmLCBIVE1MUGx1Z0luRWxlbQogI2VuZGlmCiAKICNpZiBFTkFCTEUoTkVUU0NB
UEVfUExVR0lOX0FQSSkKLSAgICBhdXRvIHBsdWdpbiA9IG1fZnJhbWUtPnBhZ2UoKS0+Y3JlYXRl
UGx1Z2luKG1fZnJhbWUsIHBsdWdpbkVsZW1lbnQsIHBhcmFtZXRlcnMsIHBhcmFtZXRlcnMubWlt
ZVR5cGUpOworICAgIGF1dG8gcGx1Z2luID0gbV9mcmFtZS0+cGFnZSgpLT5jcmVhdGVQbHVnaW4o
bV9mcmFtZSwgJnBsdWdpbkVsZW1lbnQsIHBhcmFtZXRlcnMsIHBhcmFtZXRlcnMubWltZVR5cGUp
OwogICAgIGlmICghcGx1Z2luKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAotICAgIHJldHVy
biBQbHVnaW5WaWV3OjpjcmVhdGUocGx1Z2luRWxlbWVudCwgV1RGTW92ZShwbHVnaW4pLCBwYXJh
bWV0ZXJzKTsKKyAgICByZXR1cm4gUGx1Z2luVmlldzo6Y3JlYXRlKHBsdWdpbkVsZW1lbnQsIHBs
dWdpbi5yZWxlYXNlTm9uTnVsbCgpLCBwYXJhbWV0ZXJzKTsKICNlbHNlCiAgICAgVU5VU0VEX1BB
UkFNKHBsdWdpbkVsZW1lbnQpOwogICAgIHJldHVybiBudWxscHRyOwpAQCAtMTQ1OCwxMyArMTQ1
MiwxNCBAQCBSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlUGx1Z2lu
KGNvbnN0IEludFNpemUmLCBIVE1MUGx1Z0luRWxlbQogdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVu
dDo6cmVjcmVhdGVQbHVnaW4oV2lkZ2V0KiB3aWRnZXQpCiB7CiAjaWYgRU5BQkxFKE5FVFNDQVBF
X1BMVUdJTl9BUEkpCi0gICAgQVNTRVJUKHdpZGdldCAmJiB3aWRnZXQtPmlzUGx1Z2luVmlld0Jh
c2UoKSk7CisgICAgQVNTRVJUKHdpZGdldCk7CisgICAgQVNTRVJUKHdpZGdldC0+aXNQbHVnaW5W
aWV3QmFzZSgpKTsKICAgICBBU1NFUlQobV9mcmFtZS0+cGFnZSgpKTsKIAotICAgIFBsdWdpblZp
ZXcqIHBsdWdpblZpZXcgPSBzdGF0aWNfY2FzdDxQbHVnaW5WaWV3Kj4od2lkZ2V0KTsKKyAgICBh
dXRvJiBwbHVnaW5WaWV3ID0gc3RhdGljX2Nhc3Q8UGx1Z2luVmlldyY+KCp3aWRnZXQpOwogICAg
IFN0cmluZyBuZXdNSU1FVHlwZTsKLSAgICBhdXRvIHBsdWdpbiA9IG1fZnJhbWUtPnBhZ2UoKS0+
Y3JlYXRlUGx1Z2luKG1fZnJhbWUsIHBsdWdpblZpZXctPnBsdWdpbkVsZW1lbnQoKSwgcGx1Z2lu
Vmlldy0+aW5pdGlhbFBhcmFtZXRlcnMoKSwgbmV3TUlNRVR5cGUpOwotICAgIHBsdWdpblZpZXct
PnJlY3JlYXRlQW5kSW5pdGlhbGl6ZShXVEZNb3ZlKHBsdWdpbikpOworICAgIGF1dG8gcGx1Z2lu
ID0gbV9mcmFtZS0+cGFnZSgpLT5jcmVhdGVQbHVnaW4obV9mcmFtZSwgcGx1Z2luVmlldy5wbHVn
aW5FbGVtZW50KCksIHBsdWdpblZpZXcuaW5pdGlhbFBhcmFtZXRlcnMoKSwgbmV3TUlNRVR5cGUp
OworICAgIHBsdWdpblZpZXcucmVjcmVhdGVBbmRJbml0aWFsaXplKHBsdWdpbi5yZWxlYXNlTm9u
TnVsbCgpKTsKICNlbHNlCiAgICAgVU5VU0VEX1BBUkFNKHdpZGdldCk7CiAjZW5kaWYKQEAgLTE0
NzcsOSArMTQ3MiwxMCBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpyZWRpcmVjdERhdGFU
b1BsdWdpbihXaWRnZXQqIHBsdWdpbldpZGdldCkKIH0KIAogI2lmIEVOQUJMRShXRUJHTCkKKwog
V2ViQ29yZTo6V2ViR0xMb2FkUG9saWN5IFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojp3ZWJHTFBvbGlj
eUZvclVSTChjb25zdCBTdHJpbmcmIHVybCkgY29uc3QKIHsKLSAgICBpZiAoV2ViUGFnZSogd2Vi
UGFnZSA9IG1fZnJhbWUtPnBhZ2UoKSkKKyAgICBpZiAoYXV0byogd2ViUGFnZSA9IG1fZnJhbWUt
PnBhZ2UoKSkKICAgICAgICAgcmV0dXJuIHdlYlBhZ2UtPndlYkdMUG9saWN5Rm9yVVJMKG1fZnJh
bWUsIHVybCk7CiAKICAgICByZXR1cm4gV2ViR0xBbGxvd0NyZWF0aW9uOwpAQCAtMTQ4NywzMSAr
MTQ4MywzMiBAQCBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OndlYkdMUG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYgdQogCiBXZWJDb3JlOjpXZWJHTExvYWRQ
b2xpY3kgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnJlc29sdmVXZWJHTFBvbGljeUZvclVSTChjb25z
dCBTdHJpbmcmIHVybCkgY29uc3QKIHsKLSAgICBpZiAoV2ViUGFnZSogd2ViUGFnZSA9IG1fZnJh
bWUtPnBhZ2UoKSkKKyAgICBpZiAoYXV0byogd2ViUGFnZSA9IG1fZnJhbWUtPnBhZ2UoKSkKICAg
ICAgICAgcmV0dXJuIHdlYlBhZ2UtPnJlc29sdmVXZWJHTFBvbGljeUZvclVSTChtX2ZyYW1lLCB1
cmwpOwogCiAgICAgcmV0dXJuIFdlYkdMQWxsb3dDcmVhdGlvbjsKIH0KLSNlbmRpZiAvLyBFTkFC
TEUoV0VCR0wpCiAKLVBhc3NSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3Jl
YXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXplJiBwbHVnaW5TaXplLCBIVE1MQXBwbGV0
RWxlbWVudCogYXBwbGV0RWxlbWVudCwgY29uc3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4m
IHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykKKyNlbmRpZgor
CitSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlSmF2YUFwcGxldFdp
ZGdldChjb25zdCBJbnRTaXplJiBwbHVnaW5TaXplLCBIVE1MQXBwbGV0RWxlbWVudCYgYXBwbGV0
RWxlbWVudCwgY29uc3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNv
bnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykKIHsKICNpZiBFTkFCTEUoTkVUU0NBUEVf
UExVR0lOX0FQSSkKLSAgICBhdXRvIHBsdWdpbiA9IGNyZWF0ZVBsdWdpbihwbHVnaW5TaXplLCBh
cHBsZXRFbGVtZW50LCBVUkwoKSwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMsIGFwcGxldEVsZW1l
bnQtPnNlcnZpY2VUeXBlKCksIGZhbHNlKTsKKyAgICBhdXRvIHBsdWdpbiA9IGNyZWF0ZVBsdWdp
bihwbHVnaW5TaXplLCBhcHBsZXRFbGVtZW50LCBVUkwoKSwgcGFyYW1OYW1lcywgcGFyYW1WYWx1
ZXMsIGFwcGxldEVsZW1lbnQuc2VydmljZVR5cGUoKSwgZmFsc2UpOwogICAgIGlmICghcGx1Z2lu
KSB7Ci0gICAgICAgIGlmIChXZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpKSB7Ci0g
ICAgICAgICAgICBTdHJpbmcgZnJhbWVVUkxTdHJpbmcgPSBtX2ZyYW1lLT5jb3JlRnJhbWUoKS0+
bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKS0+cmVzcG9uc2VVUkwoKS5zdHJpbmcoKTsKLSAgICAg
ICAgICAgIFN0cmluZyBwYWdlVVJMU3RyaW5nID0gd2ViUGFnZS0+Y29yZVBhZ2UoKS0+bWFpbkZy
YW1lKCkubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKS0+cmVzcG9uc2VVUkwoKS5zdHJpbmcoKTsK
LSAgICAgICAgICAgIHdlYlBhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RGlkRmFp
bFRvSW5pdGlhbGl6ZVBsdWdpbihhcHBsZXRFbGVtZW50LT5zZXJ2aWNlVHlwZSgpLCBmcmFtZVVS
TFN0cmluZywgcGFnZVVSTFN0cmluZykpOworICAgICAgICBpZiAoYXV0byogd2ViUGFnZSA9IG1f
ZnJhbWUtPnBhZ2UoKSkgeworICAgICAgICAgICAgYXV0byBmcmFtZVVSTFN0cmluZyA9IG1fZnJh
bWUtPmNvcmVGcmFtZSgpLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgp
LnN0cmluZygpOworICAgICAgICAgICAgYXV0byBwYWdlVVJMU3RyaW5nID0gd2ViUGFnZS0+Y29y
ZVBhZ2UoKS0+bWFpbkZyYW1lKCkubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKS0+cmVzcG9uc2VV
UkwoKS5zdHJpbmcoKTsKKyAgICAgICAgICAgIHdlYlBhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6RGlkRmFpbFRvSW5pdGlhbGl6ZVBsdWdpbihhcHBsZXRFbGVtZW50LnNlcnZpY2VU
eXBlKCksIGZyYW1lVVJMU3RyaW5nLCBwYWdlVVJMU3RyaW5nKSk7CiAgICAgICAgIH0KICAgICB9
Ci0gICAgcmV0dXJuIFdURk1vdmUocGx1Z2luKTsKKyAgICByZXR1cm4gcGx1Z2luOwogI2Vsc2UK
ICAgICBVTlVTRURfUEFSQU0ocGx1Z2luU2l6ZSk7CiAgICAgVU5VU0VEX1BBUkFNKGFwcGxldEVs
ZW1lbnQpOwogICAgIFVOVVNFRF9QQVJBTShwYXJhbU5hbWVzKTsKICAgICBVTlVTRURfUEFSQU0o
cGFyYW1WYWx1ZXMpOwotICAgIHJldHVybiAwOworICAgIHJldHVybiBudWxscHRyOwogI2VuZGlm
CiB9CiAKQEAgLTE3MTcsMTMgKzE3MTQsMTMgQEAgYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
c2hvdWxkRm9yY2VVbml2ZXJzYWxBY2Nlc3NGcm9tTG9jYWxVUkwoY29uc3QgV2ViQ29yZToKICAg
ICByZXR1cm4gd2ViUGFnZS0+aW5qZWN0ZWRCdW5kbGVMb2FkZXJDbGllbnQoKS5zaG91bGRGb3Jj
ZVVuaXZlcnNhbEFjY2Vzc0Zyb21Mb2NhbFVSTCh3ZWJQYWdlLCB1cmwuc3RyaW5nKCkpOwogfQog
Ci1QYXNzUmVmUHRyPEZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50
OjpjcmVhdGVOZXR3b3JraW5nQ29udGV4dCgpCitSZWY8RnJhbWVOZXR3b3JraW5nQ29udGV4dD4g
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkKIHsKLSAgICBh
dXRvIGNvbnRleHQgPSBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0OjpjcmVhdGUobV9mcmFtZSk7
Ci0gICAgcmV0dXJuIFdURk1vdmUoY29udGV4dCk7CisgICAgcmV0dXJuIFdlYkZyYW1lTmV0d29y
a2luZ0NvbnRleHQ6OmNyZWF0ZShtX2ZyYW1lKTsKIH0KIAogI2lmIEVOQUJMRShDT05URU5UX0ZJ
TFRFUklORykKKwogdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y29udGVudEZpbHRlckRpZEJs
b2NrTG9hZChXZWJDb3JlOjpDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXIgdW5ibG9ja0hhbmRs
ZXIpCiB7CiAgICAgaWYgKCF1bmJsb2NrSGFuZGxlci5uZWVkc1VJUHJvY2VzcygpKSB7CkBAIC0x
NzM0LDEyICsxNzMxLDE1IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNvbnRlbnRGaWx0
ZXJEaWRCbG9ja0xvYWQoV2ViQ29yZTo6Q29udGVudEZpbHRlclVuYmxvCiAgICAgaWYgKFdlYlBh
Z2UqIHdlYlBhZ2UgeyBtX2ZyYW1lLT5wYWdlKCkgfSkKICAgICAgICAgd2ViUGFnZS0+c2VuZChN
ZXNzYWdlczo6V2ViUGFnZVByb3h5OjpDb250ZW50RmlsdGVyRGlkQmxvY2tMb2FkRm9yRnJhbWUo
dW5ibG9ja0hhbmRsZXIsIG1fZnJhbWUtPmZyYW1lSUQoKSkpOwogfQorCiAjZW5kaWYKIAogI2lm
IEVOQUJMRShSRVFVRVNUX0FVVE9DT01QTEVURSkKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmRpZFJlcXVlc3RBdXRvY29tcGxldGUoUGFzc1JlZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+KQor
Cit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaWRSZXF1ZXN0QXV0b2NvbXBsZXRlKFJlZjxX
ZWJDb3JlOjpGb3JtU3RhdGU+JiYpCiB7CiB9CisKICNlbmRpZgogCiB2b2lkIFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpwcmVmZXRjaEROUyhjb25zdCBTdHJpbmcmIGhvc3RuYW1lKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRl
ckNsaWVudC5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJG
cmFtZUxvYWRlckNsaWVudC5oCmluZGV4IGRiMmY5NDkxNDA3MjQwNzc3M2JkMDg2ZjdmOGI5YWNk
MDdlZWE3NDYuLjBiODI5YjRhMjkwN2M4NGU4OTE2MGMxODdlMzhkZTRhZjkzYTUxOTkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVM
b2FkZXJDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKQEAgLTM2LDcgKzM2LDcgQEAgbmFtZXNwYWNlIFdl
YktpdCB7CiBjbGFzcyBQbHVnaW5WaWV3OwogY2xhc3MgV2ViRnJhbWU7CiAgICAgCi1jbGFzcyBX
ZWJGcmFtZUxvYWRlckNsaWVudCA6IHB1YmxpYyBXZWJDb3JlOjpGcmFtZUxvYWRlckNsaWVudCB7
CitjbGFzcyBXZWJGcmFtZUxvYWRlckNsaWVudCBmaW5hbCA6IHB1YmxpYyBXZWJDb3JlOjpGcmFt
ZUxvYWRlckNsaWVudCB7CiBwdWJsaWM6CiAgICAgV2ViRnJhbWVMb2FkZXJDbGllbnQoKTsKICAg
ICB+V2ViRnJhbWVMb2FkZXJDbGllbnQoKTsKQEAgLTQ5LDIxNyArNDksMjE2IEBAIHB1YmxpYzoK
ICAgICB2b2lkIHNldFVzZUljb25Mb2FkaW5nQ2xpZW50KGJvb2wgdXNlSWNvbkxvYWRpbmdDbGll
bnQpIHsgbV91c2VJY29uTG9hZGluZ0NsaWVudCA9IHVzZUljb25Mb2FkaW5nQ2xpZW50OyB9CiAK
IHByaXZhdGU6Ci0gICAgdm9pZCBmcmFtZUxvYWRlckRlc3Ryb3llZCgpIG92ZXJyaWRlOworICAg
IHZvaWQgZnJhbWVMb2FkZXJEZXN0cm95ZWQoKSBmaW5hbDsKIAotICAgIGJvb2wgaGFzSFRNTFZp
ZXcoKSBjb25zdCBvdmVycmlkZTsKLSAgICBib29sIGhhc1dlYlZpZXcoKSBjb25zdCBvdmVycmlk
ZTsKKyAgICBib29sIGhhc0hUTUxWaWV3KCkgY29uc3QgZmluYWw7CisgICAgYm9vbCBoYXNXZWJW
aWV3KCkgY29uc3QgZmluYWw7CiAgICAgCi0gICAgdm9pZCBtYWtlUmVwcmVzZW50YXRpb24oV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXIqKSBvdmVycmlkZTsKKyAgICB2b2lkIG1ha2VSZXByZXNlbnRh
dGlvbihXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIGZpbmFsOwogI2lmIFBMQVRGT1JNKElPUykK
LSAgICBib29sIGZvcmNlTGF5b3V0T25SZXN0b3JlRnJvbVBhZ2VDYWNoZSgpIG92ZXJyaWRlOwor
ICAgIGJvb2wgZm9yY2VMYXlvdXRPblJlc3RvcmVGcm9tUGFnZUNhY2hlKCkgZmluYWw7CiAjZW5k
aWYKLSAgICB2b2lkIGZvcmNlTGF5b3V0Rm9yTm9uSFRNTCgpIG92ZXJyaWRlOworICAgIHZvaWQg
Zm9yY2VMYXlvdXRGb3JOb25IVE1MKCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBzZXRDb3BpZXNP
blNjcm9sbCgpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0Q29waWVzT25TY3JvbGwoKSBmaW5hbDsK
ICAgICAKLSAgICB2b2lkIGRldGFjaGVkRnJvbVBhcmVudDIoKSBvdmVycmlkZTsKLSAgICB2b2lk
IGRldGFjaGVkRnJvbVBhcmVudDMoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRldGFjaGVkRnJvbVBh
cmVudDIoKSBmaW5hbDsKKyAgICB2b2lkIGRldGFjaGVkRnJvbVBhcmVudDMoKSBmaW5hbDsKICAg
ICAKLSAgICB2b2lkIGFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllciwgV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKKyAgICB2b2lkIGFzc2lnbklkZW50aWZpZXJUb0lu
aXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKICAgICAKLSAg
ICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKSBvdmVycmlkZTsK
LSAgICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3Bh
dGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpBdXRoZW50aWNh
dGlvbkNoYWxsZW5nZSYpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFJlcXVl
c3QoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIFdl
YkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Um
IHJlZGlyZWN0UmVzcG9uc2UpIGZpbmFsOworICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0
b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIp
IGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVu
Z2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNv
bnN0IFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikgZmluYWw7CiAjaWYgVVNFKFBS
T1RFQ1RJT05fU1BBQ0VfQVVUSF9DQUxMQkFDSykKLSAgICBib29sIGNhbkF1dGhlbnRpY2F0ZUFn
YWluc3RQcm90ZWN0aW9uU3BhY2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlByb3RlY3Rpb25TcGFjZSYpIG92ZXJyaWRl
OworICAgIGJvb2wgY2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29y
ZTo6UHJvdGVjdGlvblNwYWNlJikgZmluYWw7CiAjZW5kaWYKICNpZiBQTEFURk9STShJT1MpCi0g
ICAgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gY29ubmVjdGlvblByb3BlcnRpZXMoV2ViQ29y
ZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIG92ZXJyaWRlOwor
ICAgIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IGNvbm5lY3Rpb25Qcm9wZXJ0aWVzKFdlYkNv
cmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKICNl
bmRpZgotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRl
bnRMZW5ndGgoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIGludCBkYXRhTGVuZ3RoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNo
TG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
cikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5nKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBkaXNwYXRjaERpZExvYWRSZXNvdXJj
ZUZyb21NZW1vcnlDYWNoZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBpbnQg
bGVuZ3RoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJl
Y2VpdmVDb250ZW50TGVuZ3RoKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERp
ZEZpbmlzaExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VFcnJvciYpIGZpbmFsOworICAgIGJvb2wgZGlzcGF0Y2hEaWRMb2FkUmVzb3Vy
Y2VGcm9tTWVtb3J5Q2FjaGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgaW50
IGxlbmd0aCkgZmluYWw7CiAjaWYgRU5BQkxFKERBVEFfREVURUNUSU9OKQotICAgIHZvaWQgZGlz
cGF0Y2hEaWRGaW5pc2hEYXRhRGV0ZWN0aW9uKE5TQXJyYXkgKmRldGVjdGlvblJlc3VsdHMpIG92
ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hEYXRhRGV0ZWN0aW9uKE5TQXJyYXkg
KmRldGVjdGlvblJlc3VsdHMpIGZpbmFsOwogI2VuZGlmCiAgICAgCi0gICAgdm9pZCBkaXNwYXRj
aERpZERpc3BhdGNoT25sb2FkRXZlbnRzKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERp
ZFJlY2VpdmVTZXJ2ZXJSZWRpcmVjdEZvclByb3Zpc2lvbmFsTG9hZCgpIG92ZXJyaWRlOwotICAg
IHZvaWQgZGlzcGF0Y2hEaWRDaGFuZ2VQcm92aXNpb25hbFVSTCgpIG92ZXJyaWRlOwotICAgIHZv
aWQgZGlzcGF0Y2hEaWRDYW5jZWxDbGllbnRSZWRpcmVjdCgpIG92ZXJyaWRlOwotICAgIHZvaWQg
ZGlzcGF0Y2hXaWxsUGVyZm9ybUNsaWVudFJlZGlyZWN0KGNvbnN0IFdlYkNvcmU6OlVSTCYsIGRv
dWJsZSBpbnRlcnZhbCwgZG91YmxlIGZpcmVEYXRlKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3Bh
dGNoRGlkQ2hhbmdlTG9jYXRpb25XaXRoaW5QYWdlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNw
YXRjaERpZFB1c2hTdGF0ZVdpdGhpblBhZ2UoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNo
RGlkUmVwbGFjZVN0YXRlV2l0aGluUGFnZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hE
aWRQb3BTdGF0ZVdpdGhpblBhZ2UoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoV2lsbENs
b3NlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVJY29uKCkgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFN0YXJ0UHJvdmlzaW9uYWxMb2FkKCkgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVUaXRsZShjb25zdCBXZWJDb3JlOjpTdHJpbmdX
aXRoRGlyZWN0aW9uJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZENvbW1pdExvYWQo
c3RkOjpvcHRpb25hbDxXZWJDb3JlOjpIYXNJbnNlY3VyZUNvbnRlbnQ+KSBvdmVycmlkZTsKLSAg
ICB2b2lkIGRpc3BhdGNoRGlkRmFpbFByb3Zpc2lvbmFsTG9hZChjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZUVycm9yJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkKGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlk
RmluaXNoRG9jdW1lbnRMb2FkKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZEZpbmlz
aExvYWQoKSBvdmVycmlkZTsKLQotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWFjaExheW91dE1pbGVz
dG9uZShXZWJDb3JlOjpMYXlvdXRNaWxlc3RvbmVzKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3Bh
dGNoRGlkTGF5b3V0KCkgb3ZlcnJpZGU7Ci0KLSAgICBXZWJDb3JlOjpGcmFtZSogZGlzcGF0Y2hD
cmVhdGVQYWdlKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mKSBvdmVycmlkZTsKLSAg
ICB2b2lkIGRpc3BhdGNoU2hvdygpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hEaWREaXNw
YXRjaE9ubG9hZEV2ZW50cygpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlU2Vy
dmVyUmVkaXJlY3RGb3JQcm92aXNpb25hbExvYWQoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNo
RGlkQ2hhbmdlUHJvdmlzaW9uYWxVUkwoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkQ2Fu
Y2VsQ2xpZW50UmVkaXJlY3QoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFBlcmZvcm1D
bGllbnRSZWRpcmVjdChjb25zdCBXZWJDb3JlOjpVUkwmLCBkb3VibGUgaW50ZXJ2YWwsIGRvdWJs
ZSBmaXJlRGF0ZSkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZENoYW5nZUxvY2F0aW9uV2l0
aGluUGFnZSgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRQdXNoU3RhdGVXaXRoaW5QYWdl
KCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlcGxhY2VTdGF0ZVdpdGhpblBhZ2UoKSBm
aW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUG9wU3RhdGVXaXRoaW5QYWdlKCkgZmluYWw7Cisg
ICAgdm9pZCBkaXNwYXRjaFdpbGxDbG9zZSgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRS
ZWNlaXZlSWNvbigpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRTdGFydFByb3Zpc2lvbmFs
TG9hZCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlVGl0bGUoY29uc3QgV2Vi
Q29yZTo6U3RyaW5nV2l0aERpcmVjdGlvbiYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRD
b21taXRMb2FkKHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6SGFzSW5zZWN1cmVDb250ZW50PikgZmlu
YWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxQcm92aXNpb25hbExvYWQoY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VFcnJvciYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZChj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERp
ZEZpbmlzaERvY3VtZW50TG9hZCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hM
b2FkKCkgZmluYWw7CisKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVhY2hMYXlvdXRNaWxlc3RvbmUo
V2ViQ29yZTo6TGF5b3V0TWlsZXN0b25lcykgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZExh
eW91dCgpIGZpbmFsOworCisgICAgV2ViQ29yZTo6RnJhbWUqIGRpc3BhdGNoQ3JlYXRlUGFnZShj
b25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRj
aFNob3coKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yUmVz
cG9uc2UoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCYsIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOwot
ICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgV2Vi
Q29yZTo6TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYs
IFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0YXRlPiwgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUs
IFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0
Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRp
b25BY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPFdl
YkNvcmU6OkZvcm1TdGF0ZT4sIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRl
OwotICAgIHZvaWQgY2FuY2VsUG9saWN5Q2hlY2soKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3Bh
dGNoRGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25z
ZSYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFdlYkNvcmU6OkZyYW1lUG9saWN5
RnVuY3Rpb24pIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5k
b3dBY3Rpb24oY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlUmVxdWVzdCYsIFdlYkNvcmU6OkZvcm1TdGF0ZSosIGNvbnN0IFN0cmluZyYgZnJh
bWVOYW1lLCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsKKyAgICB2b2lkIGRp
c3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBXZWJDb3JlOjpOYXZp
Z2F0aW9uQWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgV2ViQ29yZTo6
Rm9ybVN0YXRlKiwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7CisgICAgdm9p
ZCBjYW5jZWxQb2xpY3lDaGVjaygpIGZpbmFsOwogICAgIAotICAgIHZvaWQgZGlzcGF0Y2hVbmFi
bGVUb0ltcGxlbWVudFBvbGljeShjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgb3ZlcnJp
ZGU7CisgICAgdm9pZCBkaXNwYXRjaFVuYWJsZVRvSW1wbGVtZW50UG9saWN5KGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFNl
bmRTdWJtaXRFdmVudChQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4pIG92ZXJyaWRlOwot
ICAgIHZvaWQgZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1T
dGF0ZT4sIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92ZXJyaWRlOworICAgIHZvaWQg
ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJlZjxXZWJDb3JlOjpGb3JtU3RhdGU+JiYpIGZp
bmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShXZWJDb3JlOjpGb3JtU3RhdGUm
LCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHJl
dmVydFRvUHJvdmlzaW9uYWxTdGF0ZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIG92ZXJyaWRl
OwotICAgIHZvaWQgc2V0TWFpbkRvY3VtZW50RXJyb3IoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIq
LCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7CisgICAgdm9pZCByZXZl
cnRUb1Byb3Zpc2lvbmFsU3RhdGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBmaW5hbDsKKyAg
ICB2b2lkIHNldE1haW5Eb2N1bWVudEVycm9yKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIGZpbmFsOwogICAgIAotICAgIHZvaWQgc2V0TWFp
bkZyYW1lRG9jdW1lbnRSZWFkeShib29sKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldE1haW5GcmFt
ZURvY3VtZW50UmVhZHkoYm9vbCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBzdGFydERvd25sb2Fk
KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFN0cmluZyYgc3VnZ2VzdGVk
TmFtZSA9IFN0cmluZygpKSBvdmVycmlkZTsKKyAgICB2b2lkIHN0YXJ0RG93bmxvYWQoY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgU3RyaW5nJiBzdWdnZXN0ZWROYW1lID0g
U3RyaW5nKCkpIGZpbmFsOwogICAgIAotICAgIHZvaWQgd2lsbENoYW5nZVRpdGxlKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRDaGFuZ2VUaXRsZShXZWJD
b3JlOjpEb2N1bWVudExvYWRlciopIG92ZXJyaWRlOworICAgIHZvaWQgd2lsbENoYW5nZVRpdGxl
KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgZmluYWw7CisgICAgdm9pZCBkaWRDaGFuZ2VUaXRs
ZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIGZpbmFsOwogCi0gICAgdm9pZCB3aWxsUmVwbGFj
ZU11bHRpcGFydENvbnRlbnQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZFJlcGxhY2VNdWx0aXBh
cnRDb250ZW50KCkgb3ZlcnJpZGU7CisgICAgdm9pZCB3aWxsUmVwbGFjZU11bHRpcGFydENvbnRl
bnQoKSBmaW5hbDsKKyAgICB2b2lkIGRpZFJlcGxhY2VNdWx0aXBhcnRDb250ZW50KCkgZmluYWw7
CiAKLSAgICB2b2lkIGNvbW1pdHRlZExvYWQoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25z
dCBjaGFyKiwgaW50KSBvdmVycmlkZTsKLSAgICB2b2lkIGZpbmlzaGVkTG9hZGluZyhXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciopIG92ZXJyaWRlOworICAgIHZvaWQgY29tbWl0dGVkTG9hZChXZWJD
b3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IGNoYXIqLCBpbnQpIGZpbmFsOworICAgIHZvaWQg
ZmluaXNoZWRMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgZmluYWw7CiAgICAgCi0g
ICAgdm9pZCB1cGRhdGVHbG9iYWxIaXN0b3J5KCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCB1cGRhdGVH
bG9iYWxIaXN0b3J5UmVkaXJlY3RMaW5rcygpIG92ZXJyaWRlOworICAgIHZvaWQgdXBkYXRlR2xv
YmFsSGlzdG9yeSgpIGZpbmFsOworICAgIHZvaWQgdXBkYXRlR2xvYmFsSGlzdG9yeVJlZGlyZWN0
TGlua3MoKSBmaW5hbDsKICAgICAKLSAgICBib29sIHNob3VsZEdvVG9IaXN0b3J5SXRlbShXZWJD
b3JlOjpIaXN0b3J5SXRlbSopIGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkR29Ub0hp
c3RvcnlJdGVtKFdlYkNvcmU6Okhpc3RvcnlJdGVtKikgY29uc3QgZmluYWw7CiAKLSAgICB2b2lk
IGRpZERpc3BsYXlJbnNlY3VyZUNvbnRlbnQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZFJ1bklu
c2VjdXJlQ29udGVudChXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiosIGNvbnN0IFdlYkNvcmU6OlVS
TCYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkRGV0ZWN0WFNTKGNvbnN0IFdlYkNvcmU6OlVSTCYs
IGJvb2wgZGlkQmxvY2tFbnRpcmVQYWdlKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZERpc3BsYXlJ
bnNlY3VyZUNvbnRlbnQoKSBmaW5hbDsKKyAgICB2b2lkIGRpZFJ1bkluc2VjdXJlQ29udGVudChX
ZWJDb3JlOjpTZWN1cml0eU9yaWdpbiosIGNvbnN0IFdlYkNvcmU6OlVSTCYpIGZpbmFsOworICAg
IHZvaWQgZGlkRGV0ZWN0WFNTKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGJvb2wgZGlkQmxvY2tFbnRp
cmVQYWdlKSBmaW5hbDsKIAotICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgY2FuY2VsbGVkRXJy
b3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29y
ZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1
ZXN0Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkQnlDb250
ZW50QmxvY2tlckVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRl
OwotICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgY2Fubm90U2hvd1VSTEVycm9yKGNvbnN0IFdl
YkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OlJlc291cmNl
RXJyb3IgaW50ZXJydXB0ZWRGb3JQb2xpY3lDaGFuZ2VFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbmNl
bGxlZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOworICAgIFdl
YkNvcmU6OlJlc291cmNlRXJyb3IgYmxvY2tlZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYpIGZpbmFsOworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgYmxvY2tlZEJ5Q29u
dGVudEJsb2NrZXJFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsK
KyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dVUkxFcnJvcihjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9y
IGludGVycnVwdGVkRm9yUG9saWN5Q2hhbmdlRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VS
ZXF1ZXN0JikgZmluYWw7CiAjaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQotICAgIFdlYkNv
cmU6OlJlc291cmNlRXJyb3IgYmxvY2tlZEJ5Q29udGVudEZpbHRlckVycm9yKGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRlOworICAgIFdlYkNvcmU6OlJlc291cmNlRXJy
b3IgYmxvY2tlZEJ5Q29udGVudEZpbHRlckVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVx
dWVzdCYpIGZpbmFsOwogI2VuZGlmCiAgICAgCi0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBj
YW5ub3RTaG93TUlNRVR5cGVFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikg
b3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBmaWxlRG9lc05vdEV4aXN0RXJy
b3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOwotICAgIFdlYkNv
cmU6OlJlc291cmNlRXJyb3IgcGx1Z2luV2lsbEhhbmRsZUxvYWRFcnJvcihjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJv
ciBjYW5ub3RTaG93TUlNRVR5cGVFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNl
JikgZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBmaWxlRG9lc05vdEV4aXN0RXJy
b3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOworICAgIFdlYkNvcmU6
OlJlc291cmNlRXJyb3IgcGx1Z2luV2lsbEhhbmRsZUxvYWRFcnJvcihjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7CiAgICAgCi0gICAgYm9vbCBzaG91bGRGYWxsQmFjayhj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRG
YWxsQmFjayhjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmluYWw7CiAgICAgCi0gICAg
Ym9vbCBjYW5IYW5kbGVSZXF1ZXN0KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGNv
bnN0IG92ZXJyaWRlOwotICAgIGJvb2wgY2FuU2hvd01JTUVUeXBlKGNvbnN0IFN0cmluZyYgTUlN
RVR5cGUpIGNvbnN0IG92ZXJyaWRlOwotICAgIGJvb2wgY2FuU2hvd01JTUVUeXBlQXNIVE1MKGNv
bnN0IFN0cmluZyYgTUlNRVR5cGUpIGNvbnN0IG92ZXJyaWRlOwotICAgIGJvb2wgcmVwcmVzZW50
YXRpb25FeGlzdHNGb3JVUkxTY2hlbWUoY29uc3QgU3RyaW5nJiBVUkxTY2hlbWUpIGNvbnN0IG92
ZXJyaWRlOwotICAgIFN0cmluZyBnZW5lcmF0ZWRNSU1FVHlwZUZvclVSTFNjaGVtZShjb25zdCBT
dHJpbmcmIFVSTFNjaGVtZSkgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBjYW5IYW5kbGVSZXF1
ZXN0KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGNvbnN0IGZpbmFsOworICAgIGJv
b2wgY2FuU2hvd01JTUVUeXBlKGNvbnN0IFN0cmluZyYgTUlNRVR5cGUpIGNvbnN0IGZpbmFsOwor
ICAgIGJvb2wgY2FuU2hvd01JTUVUeXBlQXNIVE1MKGNvbnN0IFN0cmluZyYgTUlNRVR5cGUpIGNv
bnN0IGZpbmFsOworICAgIGJvb2wgcmVwcmVzZW50YXRpb25FeGlzdHNGb3JVUkxTY2hlbWUoY29u
c3QgU3RyaW5nJiBVUkxTY2hlbWUpIGNvbnN0IGZpbmFsOworICAgIFN0cmluZyBnZW5lcmF0ZWRN
SU1FVHlwZUZvclVSTFNjaGVtZShjb25zdCBTdHJpbmcmIFVSTFNjaGVtZSkgY29uc3QgZmluYWw7
CiAgICAgCi0gICAgdm9pZCBmcmFtZUxvYWRDb21wbGV0ZWQoKSBvdmVycmlkZTsKLSAgICB2b2lk
IHNhdmVWaWV3U3RhdGVUb0l0ZW0oV2ViQ29yZTo6SGlzdG9yeUl0ZW0mKSBvdmVycmlkZTsKLSAg
ICB2b2lkIHJlc3RvcmVWaWV3U3RhdGUoKSBvdmVycmlkZTsKLSAgICB2b2lkIHByb3Zpc2lvbmFs
TG9hZFN0YXJ0ZWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZEZpbmlzaExvYWQoKSBvdmVycmlk
ZTsKLSAgICB2b2lkIHByZXBhcmVGb3JEYXRhU291cmNlUmVwbGFjZW1lbnQoKSBvdmVycmlkZTsK
KyAgICB2b2lkIGZyYW1lTG9hZENvbXBsZXRlZCgpIGZpbmFsOworICAgIHZvaWQgc2F2ZVZpZXdT
dGF0ZVRvSXRlbShXZWJDb3JlOjpIaXN0b3J5SXRlbSYpIGZpbmFsOworICAgIHZvaWQgcmVzdG9y
ZVZpZXdTdGF0ZSgpIGZpbmFsOworICAgIHZvaWQgcHJvdmlzaW9uYWxMb2FkU3RhcnRlZCgpIGZp
bmFsOworICAgIHZvaWQgZGlkRmluaXNoTG9hZCgpIGZpbmFsOworICAgIHZvaWQgcHJlcGFyZUZv
ckRhdGFTb3VyY2VSZXBsYWNlbWVudCgpIGZpbmFsOwogICAgIAotICAgIFJlZjxXZWJDb3JlOjpE
b2N1bWVudExvYWRlcj4gY3JlYXRlRG9jdW1lbnRMb2FkZXIoY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6U3Vic3RpdHV0ZURhdGEmKSBvdmVycmlkZTsKLSAg
ICB2b2lkIHVwZGF0ZUNhY2hlZERvY3VtZW50TG9hZGVyKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
Jikgb3ZlcnJpZGU7CisgICAgUmVmPFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyPiBjcmVhdGVEb2N1
bWVudExvYWRlcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3Jl
OjpTdWJzdGl0dXRlRGF0YSYpIGZpbmFsOworICAgIHZvaWQgdXBkYXRlQ2FjaGVkRG9jdW1lbnRM
b2FkZXIoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXImKSBmaW5hbDsKIAotICAgIHZvaWQgc2V0VGl0
bGUoY29uc3QgV2ViQ29yZTo6U3RyaW5nV2l0aERpcmVjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlVS
TCYpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0VGl0bGUoY29uc3QgV2ViQ29yZTo6U3RyaW5nV2l0
aERpcmVjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlVSTCYpIGZpbmFsOwogICAgIAotICAgIFN0cmlu
ZyB1c2VyQWdlbnQoY29uc3QgV2ViQ29yZTo6VVJMJikgb3ZlcnJpZGU7CisgICAgU3RyaW5nIHVz
ZXJBZ2VudChjb25zdCBXZWJDb3JlOjpVUkwmKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHNhdmVQ
bGF0Zm9ybURhdGFUb0NhY2hlZEZyYW1lKFdlYkNvcmU6OkNhY2hlZEZyYW1lKikgb3ZlcnJpZGU7
Ci0gICAgdm9pZCB0cmFuc2l0aW9uVG9Db21taXR0ZWRGcm9tQ2FjaGVkRnJhbWUoV2ViQ29yZTo6
Q2FjaGVkRnJhbWUqKSBvdmVycmlkZTsKKyAgICB2b2lkIHNhdmVQbGF0Zm9ybURhdGFUb0NhY2hl
ZEZyYW1lKFdlYkNvcmU6OkNhY2hlZEZyYW1lKikgZmluYWw7CisgICAgdm9pZCB0cmFuc2l0aW9u
VG9Db21taXR0ZWRGcm9tQ2FjaGVkRnJhbWUoV2ViQ29yZTo6Q2FjaGVkRnJhbWUqKSBmaW5hbDsK
ICNpZiBQTEFURk9STShJT1MpCi0gICAgdm9pZCBkaWRSZXN0b3JlRnJhbWVIaWVyYXJjaHlGb3JD
YWNoZWRGcmFtZSgpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkUmVzdG9yZUZyYW1lSGllcmFyY2h5
Rm9yQ2FjaGVkRnJhbWUoKSBmaW5hbDsKICNlbmRpZgotICAgIHZvaWQgdHJhbnNpdGlvblRvQ29t
bWl0dGVkRm9yTmV3UGFnZSgpIG92ZXJyaWRlOworICAgIHZvaWQgdHJhbnNpdGlvblRvQ29tbWl0
dGVkRm9yTmV3UGFnZSgpIGZpbmFsOwogCi0gICAgdm9pZCBkaWRTYXZlVG9QYWdlQ2FjaGUoKSBv
dmVycmlkZTsKLSAgICB2b2lkIGRpZFJlc3RvcmVGcm9tUGFnZUNhY2hlKCkgb3ZlcnJpZGU7Cisg
ICAgdm9pZCBkaWRTYXZlVG9QYWdlQ2FjaGUoKSBmaW5hbDsKKyAgICB2b2lkIGRpZFJlc3RvcmVG
cm9tUGFnZUNhY2hlKCkgZmluYWw7CiAKLSAgICB2b2lkIGRpc3BhdGNoRGlkQmVjb21lRnJhbWVz
ZXQoYm9vbCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERpZEJlY29tZUZyYW1lc2V0KGJv
b2wpIGZpbmFsOwogCi0gICAgYm9vbCBjYW5DYWNoZVBhZ2UoKSBjb25zdCBvdmVycmlkZTsKLSAg
ICB2b2lkIGNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZChXZWJDb3JlOjpEb2N1bWVu
dExvYWRlciosIFdlYkNvcmU6OlNlc3Npb25JRCwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1
ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOworICAgIGJv
b2wgY2FuQ2FjaGVQYWdlKCkgY29uc3QgZmluYWw7CisgICAgdm9pZCBjb252ZXJ0TWFpblJlc291
cmNlTG9hZFRvRG93bmxvYWQoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpTZXNz
aW9uSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlUmVzcG9uc2UmKSBmaW5hbDsKIAotICAgIFJlZlB0cjxXZWJDb3JlOjpGcmFtZT4gY3Jl
YXRlRnJhbWUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgU3RyaW5nJiBuYW1lLCBXZWJDb3Jl
OjpIVE1MRnJhbWVPd25lckVsZW1lbnQqLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgYm9vbCBhbGxvd3NTY3JvbGxpbmcs
IGludCBtYXJnaW5XaWR0aCwgaW50IG1hcmdpbkhlaWdodCkgb3ZlcnJpZGU7Ci0gICAgCi0gICAg
UmVmUHRyPFdlYkNvcmU6OldpZGdldD4gY3JlYXRlUGx1Z2luKGNvbnN0IFdlYkNvcmU6OkludFNp
emUmLCBXZWJDb3JlOjpIVE1MUGx1Z0luRWxlbWVudCosIGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNv
bnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBTdHJpbmcm
LCBib29sIGxvYWRNYW51YWxseSkgb3ZlcnJpZGU7Ci0gICAgdm9pZCByZWNyZWF0ZVBsdWdpbihX
ZWJDb3JlOjpXaWRnZXQqKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlZGlyZWN0RGF0YVRvUGx1Z2lu
KFdlYkNvcmU6OldpZGdldCogcGx1Z2luV2lkZ2V0KSBvdmVycmlkZTsKKyAgICBSZWZQdHI8V2Vi
Q29yZTo6RnJhbWU+IGNyZWF0ZUZyYW1lKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNvbnN0IFN0cmlu
ZyYgbmFtZSwgV2ViQ29yZTo6SFRNTEZyYW1lT3duZXJFbGVtZW50JiwgY29uc3QgU3RyaW5nJiBy
ZWZlcnJlciwgYm9vbCBhbGxvd3NTY3JvbGxpbmcsIGludCBtYXJnaW5XaWR0aCwgaW50IG1hcmdp
bkhlaWdodCkgZmluYWw7CisKKyAgICBSZWZQdHI8V2ViQ29yZTo6V2lkZ2V0PiBjcmVhdGVQbHVn
aW4oY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50Jiwg
Y29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBWZWN0b3I8
U3RyaW5nPiYsIGNvbnN0IFN0cmluZyYsIGJvb2wgbG9hZE1hbnVhbGx5KSBmaW5hbDsKKyAgICB2
b2lkIHJlY3JlYXRlUGx1Z2luKFdlYkNvcmU6OldpZGdldCopIGZpbmFsOworICAgIHZvaWQgcmVk
aXJlY3REYXRhVG9QbHVnaW4oV2ViQ29yZTo6V2lkZ2V0KiBwbHVnaW5XaWRnZXQpIGZpbmFsOwog
ICAgIAogI2lmIEVOQUJMRShXRUJHTCkKLSAgICBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgd2Vi
R0xQb2xpY3lGb3JVUkwoY29uc3QgU3RyaW5nJikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgV2ViQ29y
ZTo6V2ViR0xMb2FkUG9saWN5IHJlc29sdmVXZWJHTFBvbGljeUZvclVSTChjb25zdCBTdHJpbmcm
KSBjb25zdCBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgd2ViR0xQb2xp
Y3lGb3JVUkwoY29uc3QgU3RyaW5nJikgY29uc3QgZmluYWw7CisgICAgV2ViQ29yZTo6V2ViR0xM
b2FkUG9saWN5IHJlc29sdmVXZWJHTFBvbGljeUZvclVSTChjb25zdCBTdHJpbmcmKSBjb25zdCBm
aW5hbDsKICNlbmRpZiAvLyBFTkFCTEUoV0VCR0wpCiAKLSAgICBQYXNzUmVmUHRyPFdlYkNvcmU6
OldpZGdldD4gY3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBXZWJDb3JlOjpJbnRTaXplJiwg
V2ViQ29yZTo6SFRNTEFwcGxldEVsZW1lbnQqLCBjb25zdCBXZWJDb3JlOjpVUkwmIGJhc2VVUkws
IGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYg
cGFyYW1WYWx1ZXMpIG92ZXJyaWRlOworICAgIFJlZlB0cjxXZWJDb3JlOjpXaWRnZXQ+IGNyZWF0
ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxB
cHBsZXRFbGVtZW50JiwgY29uc3QgV2ViQ29yZTo6VVJMJiBiYXNlVVJMLCBjb25zdCBWZWN0b3I8
U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKSBm
aW5hbDsKICAgICAKLSAgICBXZWJDb3JlOjpPYmplY3RDb250ZW50VHlwZSBvYmplY3RDb250ZW50
VHlwZShjb25zdCBXZWJDb3JlOjpVUkwmLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlKSBvdmVycmlk
ZTsKLSAgICBTdHJpbmcgb3ZlcnJpZGVNZWRpYVR5cGUoKSBjb25zdCBvdmVycmlkZTsKKyAgICBX
ZWJDb3JlOjpPYmplY3RDb250ZW50VHlwZSBvYmplY3RDb250ZW50VHlwZShjb25zdCBXZWJDb3Jl
OjpVUkwmLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlKSBmaW5hbDsKKyAgICBTdHJpbmcgb3ZlcnJp
ZGVNZWRpYVR5cGUoKSBjb25zdCBmaW5hbDsKIAotICAgIHZvaWQgZGlzcGF0Y2hEaWRDbGVhcldp
bmRvd09iamVjdEluV29ybGQoV2ViQ29yZTo6RE9NV3JhcHBlcldvcmxkJikgb3ZlcnJpZGU7Cisg
ICAgdm9pZCBkaXNwYXRjaERpZENsZWFyV2luZG93T2JqZWN0SW5Xb3JsZChXZWJDb3JlOjpET01X
cmFwcGVyV29ybGQmKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIGRpc3BhdGNoR2xvYmFsT2JqZWN0
QXZhaWxhYmxlKFdlYkNvcmU6OkRPTVdyYXBwZXJXb3JsZCYpIG92ZXJyaWRlOwotICAgIHZvaWQg
ZGlzcGF0Y2hXaWxsRGlzY29ubmVjdERPTVdpbmRvd0V4dGVuc2lvbkZyb21HbG9iYWxPYmplY3Qo
V2ViQ29yZTo6RE9NV2luZG93RXh0ZW5zaW9uKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRj
aERpZFJlY29ubmVjdERPTVdpbmRvd0V4dGVuc2lvblRvR2xvYmFsT2JqZWN0KFdlYkNvcmU6OkRP
TVdpbmRvd0V4dGVuc2lvbiopIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hXaWxsRGVzdHJv
eUdsb2JhbE9iamVjdEZvckRPTVdpbmRvd0V4dGVuc2lvbihXZWJDb3JlOjpET01XaW5kb3dFeHRl
bnNpb24qKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoR2xvYmFsT2JqZWN0QXZhaWxhYmxl
KFdlYkNvcmU6OkRPTVdyYXBwZXJXb3JsZCYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxs
RGlzY29ubmVjdERPTVdpbmRvd0V4dGVuc2lvbkZyb21HbG9iYWxPYmplY3QoV2ViQ29yZTo6RE9N
V2luZG93RXh0ZW5zaW9uKikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY29ubmVjdERP
TVdpbmRvd0V4dGVuc2lvblRvR2xvYmFsT2JqZWN0KFdlYkNvcmU6OkRPTVdpbmRvd0V4dGVuc2lv
biopIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsRGVzdHJveUdsb2JhbE9iamVjdEZvckRP
TVdpbmRvd0V4dGVuc2lvbihXZWJDb3JlOjpET01XaW5kb3dFeHRlbnNpb24qKSBmaW5hbDsKIAot
ICAgIHZvaWQgcmVnaXN0ZXJGb3JJY29uTm90aWZpY2F0aW9uKGJvb2wgbGlzdGVuID0gdHJ1ZSkg
b3ZlcnJpZGU7CisgICAgdm9pZCByZWdpc3RlckZvckljb25Ob3RpZmljYXRpb24oYm9vbCBsaXN0
ZW4gPSB0cnVlKSBmaW5hbDsKICAgICAKICNpZiBQTEFURk9STShDT0NPQSkKLSAgICBSZW1vdGVB
WE9iamVjdFJlZiBhY2Nlc3NpYmlsaXR5UmVtb3RlT2JqZWN0KCkgb3ZlcnJpZGU7CisgICAgUmVt
b3RlQVhPYmplY3RSZWYgYWNjZXNzaWJpbGl0eVJlbW90ZU9iamVjdCgpIGZpbmFsOwogICAgIAot
ICAgIE5TQ2FjaGVkVVJMUmVzcG9uc2UqIHdpbGxDYWNoZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBOU0NhY2hlZFVSTFJlc3BvbnNl
KikgY29uc3Qgb3ZlcnJpZGU7CisgICAgTlNDYWNoZWRVUkxSZXNwb25zZSogd2lsbENhY2hlUmVz
cG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IE5TQ2FjaGVkVVJMUmVzcG9uc2UqKSBjb25zdCBmaW5hbDsKIAotICAgIE5TRGljdGlvbmFyeSAq
ZGF0YURldGVjdGlvbkNvbnRleHQoKSBvdmVycmlkZTsKKyAgICBOU0RpY3Rpb25hcnkgKmRhdGFE
ZXRlY3Rpb25Db250ZXh0KCkgZmluYWw7CiAjZW5kaWYKIAotICAgIGJvb2wgc2hvdWxkQWx3YXlz
VXNlUGx1Z2luRG9jdW1lbnQoY29uc3QgU3RyaW5nJiAvKm1pbWVUeXBlKi8pIGNvbnN0IG92ZXJy
aWRlOworICAgIGJvb2wgc2hvdWxkQWx3YXlzVXNlUGx1Z2luRG9jdW1lbnQoY29uc3QgU3RyaW5n
JiAvKm1pbWVUeXBlKi8pIGNvbnN0IGZpbmFsOwogCi0gICAgdm9pZCBkaWRDaGFuZ2VTY3JvbGxP
ZmZzZXQoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZENoYW5nZVNjcm9sbE9mZnNldCgpIGZpbmFs
OwogCi0gICAgYm9vbCBhbGxvd1NjcmlwdChib29sIGVuYWJsZWRQZXJTZXR0aW5ncykgb3ZlcnJp
ZGU7CisgICAgYm9vbCBhbGxvd1NjcmlwdChib29sIGVuYWJsZWRQZXJTZXR0aW5ncykgZmluYWw7
CiAKLSAgICBib29sIHNob3VsZEZvcmNlVW5pdmVyc2FsQWNjZXNzRnJvbUxvY2FsVVJMKGNvbnN0
IFdlYkNvcmU6OlVSTCYpIG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkRm9yY2VVbml2ZXJzYWxB
Y2Nlc3NGcm9tTG9jYWxVUkwoY29uc3QgV2ViQ29yZTo6VVJMJikgZmluYWw7CiAKLSAgICBQYXNz
UmVmUHRyPFdlYkNvcmU6OkZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZU5ldHdvcmtpbmdD
b250ZXh0KCkgb3ZlcnJpZGU7CisgICAgUmVmPFdlYkNvcmU6OkZyYW1lTmV0d29ya2luZ0NvbnRl
eHQ+IGNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkgZmluYWw7CiAKICNpZiBFTkFCTEUoUkVRVUVT
VF9BVVRPQ09NUExFVEUpCi0gICAgdm9pZCBkaWRSZXF1ZXN0QXV0b2NvbXBsZXRlKFBhc3NSZWZQ
dHI8V2ViQ29yZTo6Rm9ybVN0YXRlPikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRSZXF1ZXN0QXV0
b2NvbXBsZXRlKFJlZjxXZWJDb3JlOjpGb3JtU3RhdGU+JiYpIGZpbmFsOwogI2VuZGlmCiAKLSAg
ICB2b2lkIGZvcmNlUGFnZVRyYW5zaXRpb25JZk5lZWRlZCgpIG92ZXJyaWRlOworICAgIHZvaWQg
Zm9yY2VQYWdlVHJhbnNpdGlvbklmTmVlZGVkKCkgZmluYWw7CiAKICNpZiBVU0UoUVVJQ0tfTE9P
SykKLSAgICB2b2lkIGRpZENyZWF0ZVF1aWNrTG9va0hhbmRsZShXZWJDb3JlOjpRdWlja0xvb2tI
YW5kbGUmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZENyZWF0ZVF1aWNrTG9va0hhbmRsZShXZWJD
b3JlOjpRdWlja0xvb2tIYW5kbGUmKSBmaW5hbDsKICNlbmRpZgogCiAjaWYgRU5BQkxFKENPTlRF
TlRfRklMVEVSSU5HKQotICAgIHZvaWQgY29udGVudEZpbHRlckRpZEJsb2NrTG9hZChXZWJDb3Jl
OjpDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXIpIG92ZXJyaWRlOworICAgIHZvaWQgY29udGVu
dEZpbHRlckRpZEJsb2NrTG9hZChXZWJDb3JlOjpDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXIp
IGZpbmFsOwogI2VuZGlmCiAKLSAgICB2b2lkIHByZWZldGNoRE5TKGNvbnN0IFN0cmluZyYpIG92
ZXJyaWRlOworICAgIHZvaWQgcHJlZmV0Y2hETlMoY29uc3QgU3RyaW5nJikgZmluYWw7CiAKLSAg
ICB2b2lkIGRpZFJlc3RvcmVTY3JvbGxQb3NpdGlvbigpIG92ZXJyaWRlOworICAgIHZvaWQgZGlk
UmVzdG9yZVNjcm9sbFBvc2l0aW9uKCkgZmluYWw7CiAKLSAgICBib29sIHVzZUljb25Mb2FkaW5n
Q2xpZW50KCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBnZXRMb2FkRGVjaXNpb25Gb3JJY29uKGNvbnN0
IFdlYkNvcmU6OkxpbmtJY29uJiwgdWludDY0X3QgY2FsbGJhY2tJRCkgb3ZlcnJpZGU7Ci0gICAg
dm9pZCBmaW5pc2hlZExvYWRpbmdJY29uKHVpbnQ2NF90IGxvYWRJZGVudGlmaWVyLCBXZWJDb3Jl
OjpTaGFyZWRCdWZmZXIqKSBvdmVycmlkZTsKKyAgICBib29sIHVzZUljb25Mb2FkaW5nQ2xpZW50
KCkgZmluYWw7CisgICAgdm9pZCBnZXRMb2FkRGVjaXNpb25Gb3JJY29uKGNvbnN0IFdlYkNvcmU6
OkxpbmtJY29uJiwgdWludDY0X3QgY2FsbGJhY2tJRCkgZmluYWw7CisgICAgdm9pZCBmaW5pc2hl
ZExvYWRpbmdJY29uKHVpbnQ2NF90IGxvYWRJZGVudGlmaWVyLCBXZWJDb3JlOjpTaGFyZWRCdWZm
ZXIqKSBmaW5hbDsKIAogICAgIFdlYkZyYW1lKiBtX2ZyYW1lOwogICAgIFJlZlB0cjxQbHVnaW5W
aWV3PiBtX3BsdWdpblZpZXc7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L2lvcy9XZWJDaHJvbWVDbGllbnRJT1MubW0gYi9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L2lvcy9XZWJDaHJvbWVDbGllbnRJT1MubW0KaW5k
ZXggMGRmZjgwODQ5NjZjYjU5ZTAwOWM1YThmZTZiMTc2ZGQ4ZmE4ODM2Ni4uYmQwMTU1ZGNjM2Nk
ZWNlOWZmMjBmYTk4NjZkZjM3OWY4MmEzNjhjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9pb3MvV2ViQ2hyb21lQ2xpZW50SU9TLm1tCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvaW9zL1dlYkNocm9tZUNs
aWVudElPUy5tbQpAQCAtMzgsMTAgKzM4LDEyIEBACiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogI2lm
IEVOQUJMRShJT1NfVE9VQ0hfRVZFTlRTKQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZGlkUHJl
dmVudERlZmF1bHRGb3JFdmVudCgpCiB7CiAgICAgbm90SW1wbGVtZW50ZWQoKTsKIH0KKwogI2Vu
ZGlmCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjplbGVtZW50RGlkUmVmb2N1cyhjb25zdCBXZWJD
b3JlOjpOb2RlKiBub2RlKQpAQCAtNTEsNyArNTMsNyBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6
ZWxlbWVudERpZFJlZm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9kZSogbm9kZSkKIAogdm9pZCBXZWJD
aHJvbWVDbGllbnQ6OmRpZFJlY2VpdmVNb2JpbGVEb2NUeXBlKGJvb2wgaXNNb2JpbGVEb2N0eXBl
KQogewotICAgIG1fcGFnZS0+ZGlkUmVjZWl2ZU1vYmlsZURvY1R5cGUoaXNNb2JpbGVEb2N0eXBl
KTsKKyAgICBtX3BhZ2UuZGlkUmVjZWl2ZU1vYmlsZURvY1R5cGUoaXNNb2JpbGVEb2N0eXBlKTsK
IH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNldE5lZWRzU2Nyb2xsTm90aWZpY2F0aW9ucyhX
ZWJDb3JlOjpGcmFtZSosIGJvb2wpCkBAIC02MSw3ICs2Myw3IEBAIHZvaWQgV2ViQ2hyb21lQ2xp
ZW50OjpzZXROZWVkc1Njcm9sbE5vdGlmaWNhdGlvbnMoV2ViQ29yZTo6RnJhbWUqLCBib29sKQog
CiB2b2lkIFdlYkNocm9tZUNsaWVudDo6b2JzZXJ2ZWRDb250ZW50Q2hhbmdlKFdlYkNvcmU6OkZy
YW1lKikKIHsKLSAgICBtX3BhZ2UtPmNvbXBsZXRlUGVuZGluZ1N5bnRoZXRpY0NsaWNrRm9yQ29u
dGVudENoYW5nZU9ic2VydmVyKCk7CisgICAgbV9wYWdlLmNvbXBsZXRlUGVuZGluZ1N5bnRoZXRp
Y0NsaWNrRm9yQ29udGVudENoYW5nZU9ic2VydmVyKCk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xp
ZW50OjpjbGVhckNvbnRlbnRDaGFuZ2VPYnNlcnZlcnMoV2ViQ29yZTo6RnJhbWUqKQpAQCAtNzEs
NyArNzMsNyBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y2xlYXJDb250ZW50Q2hhbmdlT2JzZXJ2
ZXJzKFdlYkNvcmU6OkZyYW1lKikKIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6Om5vdGlmeVJldmVh
bGVkU2VsZWN0aW9uQnlTY3JvbGxpbmdGcmFtZShXZWJDb3JlOjpGcmFtZSopCiB7Ci0gICAgbV9w
YWdlLT5kaWRDaGFuZ2VTZWxlY3Rpb24oKTsKKyAgICBtX3BhZ2UuZGlkQ2hhbmdlU2VsZWN0aW9u
KCk7CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50Ojppc1N0b3BwaW5nKCkKQEAgLTgzLDIyICs4
NSwyMiBAQCBib29sIFdlYkNocm9tZUNsaWVudDo6aXNTdG9wcGluZygpCiB2b2lkIFdlYkNocm9t
ZUNsaWVudDo6ZGlkTGF5b3V0KExheW91dFR5cGUgdHlwZSkKIHsKICAgICBpZiAodHlwZSA9PSBT
Y3JvbGwpCi0gICAgICAgIG1fcGFnZS0+ZGlkQ2hhbmdlU2VsZWN0aW9uKCk7CisgICAgICAgIG1f
cGFnZS5kaWRDaGFuZ2VTZWxlY3Rpb24oKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmRp
ZFN0YXJ0T3ZlcmZsb3dTY3JvbGwoKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2Vi
UGFnZVByb3h5OjpPdmVyZmxvd1Njcm9sbFdpbGxTdGFydFNjcm9sbCgpKTsKKyAgICBtX3BhZ2Uu
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpPdmVyZmxvd1Njcm9sbFdpbGxTdGFydFNjcm9s
bCgpKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmRpZEVuZE92ZXJmbG93U2Nyb2xsKCkK
IHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6T3ZlcmZsb3dTY3Jv
bGxEaWRFbmRTY3JvbGwoKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94
eTo6T3ZlcmZsb3dTY3JvbGxEaWRFbmRTY3JvbGwoKSk7CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xp
ZW50OjpoYXNTdGFibGVQYWdlU2NhbGVGYWN0b3IoKSBjb25zdAogewotICAgIHJldHVybiBtX3Bh
Z2UtPmhhc1N0YWJsZVBhZ2VTY2FsZUZhY3RvcigpOworICAgIHJldHVybiBtX3BhZ2UuaGFzU3Rh
YmxlUGFnZVNjYWxlRmFjdG9yKCk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzdXBwcmVz
c0Zvcm1Ob3RpZmljYXRpb25zKCkKQEAgLTEyOCwxNyArMTMwLDE3IEBAIHZvaWQgV2ViQ2hyb21l
Q2xpZW50Ojp3ZWJBcHBPcmllbnRhdGlvbnNVcGRhdGVkKCkKIAogdm9pZCBXZWJDaHJvbWVDbGll
bnQ6OnNob3dQbGF5YmFja1RhcmdldFBpY2tlcihib29sIGhhc1ZpZGVvKQogewotICAgIG1fcGFn
ZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTaG93UGxheWJhY2tUYXJnZXRQaWNrZXIo
aGFzVmlkZW8sIG1fcGFnZS0+cmVjdEZvckVsZW1lbnRBdEludGVyYWN0aW9uTG9jYXRpb24oKSkp
OworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNob3dQbGF5YmFja1Rh
cmdldFBpY2tlcihoYXNWaWRlbywgbV9wYWdlLnJlY3RGb3JFbGVtZW50QXRJbnRlcmFjdGlvbkxv
Y2F0aW9uKCkpKTsKIH0KIAogU2Vjb25kcyBXZWJDaHJvbWVDbGllbnQ6OmV2ZW50VGhyb3R0bGlu
Z0RlbGF5KCkKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5ldmVudFRocm90dGxpbmdEZWxheSgpOwor
ICAgIHJldHVybiBtX3BhZ2UuZXZlbnRUaHJvdHRsaW5nRGVsYXkoKTsKIH0KIAogaW50IFdlYkNo
cm9tZUNsaWVudDo6ZGV2aWNlT3JpZW50YXRpb24oKSBjb25zdAogewotICAgIHJldHVybiBtX3Bh
Z2UtPmRldmljZU9yaWVudGF0aW9uKCk7CisgICAgcmV0dXJuIG1fcGFnZS5kZXZpY2VPcmllbnRh
dGlvbigpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAppbmRleCBlOTRmODdhOWRkZjc5YWMzNDBkZmUw
MTVkZDZiNWUzMmE0YWVkYjI4Li5jNTAyYzYyN2UyOTJiYmU1MzUyMmE5YTc3NDMyMjA3YjE4MGUx
NmExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFn
ZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3Bw
CkBAIC0zNDIsNyArMzQyLDcgQEAgV2ViUGFnZTo6V2ViUGFnZSh1aW50NjRfdCBwYWdlSUQsIGNv
bnN0IFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpCiAjZW5kaWYKIAogICAg
IFBhZ2VDb25maWd1cmF0aW9uIHBhZ2VDb25maWd1cmF0aW9uKG1ha2VVbmlxdWVSZWY8V2ViRWRp
dG9yQ2xpZW50Pih0aGlzKSwgV2ViU29ja2V0UHJvdmlkZXI6OmNyZWF0ZSgpKTsKLSAgICBwYWdl
Q29uZmlndXJhdGlvbi5jaHJvbWVDbGllbnQgPSBuZXcgV2ViQ2hyb21lQ2xpZW50KHRoaXMpOwor
ICAgIHBhZ2VDb25maWd1cmF0aW9uLmNocm9tZUNsaWVudCA9IG5ldyBXZWJDaHJvbWVDbGllbnQo
KnRoaXMpOwogI2lmIEVOQUJMRShDT05URVhUX01FTlVTKQogICAgIHBhZ2VDb25maWd1cmF0aW9u
LmNvbnRleHRNZW51Q2xpZW50ID0gbmV3IFdlYkNvbnRleHRNZW51Q2xpZW50KHRoaXMpOwogI2Vu
ZGlmCkBAIC02OTgsNyArNjk4LDggQEAgdm9pZCBXZWJQYWdlOjppbml0aWFsaXplSW5qZWN0ZWRC
dW5kbGVEaWFnbm9zdGljTG9nZ2luZ0NsaWVudChXS0J1bmRsZVBhZ2VEaWFnbm8KIH0KIAogI2lm
IEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQotUGFzc1JlZlB0cjxQbHVnaW4+IFdlYlBhZ2U6
OmNyZWF0ZVBsdWdpbihXZWJGcmFtZSogZnJhbWUsIEhUTUxQbHVnSW5FbGVtZW50KiBwbHVnaW5F
bGVtZW50LCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmIHBhcmFtZXRlcnMsIFN0cmluZyYgbmV3
TUlNRVR5cGUpCisKK1JlZlB0cjxQbHVnaW4+IFdlYlBhZ2U6OmNyZWF0ZVBsdWdpbihXZWJGcmFt
ZSogZnJhbWUsIEhUTUxQbHVnSW5FbGVtZW50KiBwbHVnaW5FbGVtZW50LCBjb25zdCBQbHVnaW46
OlBhcmFtZXRlcnMmIHBhcmFtZXRlcnMsIFN0cmluZyYgbmV3TUlNRVR5cGUpCiB7CiAgICAgU3Ry
aW5nIGZyYW1lVVJMU3RyaW5nID0gZnJhbWUtPmNvcmVGcmFtZSgpLT5sb2FkZXIoKS5kb2N1bWVu
dExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwogICAgIFN0cmluZyBwYWdlVVJMU3Ry
aW5nID0gbV9wYWdlLT5tYWluRnJhbWUoKS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5yZXNw
b25zZVVSTCgpLnN0cmluZygpOwpAQCAtMTMyNSw3ICsxMzI2LDcgQEAgdm9pZCBXZWJQYWdlOjps
YXlvdXRJZk5lZWRlZCgpCiAKIFdlYlBhZ2UqIFdlYlBhZ2U6OmZyb21Db3JlUGFnZShQYWdlKiBw
YWdlKQogewotICAgIHJldHVybiBzdGF0aWNfY2FzdDxXZWJDaHJvbWVDbGllbnQmPihwYWdlLT5j
aHJvbWUoKS5jbGllbnQoKSkucGFnZSgpOworICAgIHJldHVybiAmc3RhdGljX2Nhc3Q8V2ViQ2hy
b21lQ2xpZW50Jj4ocGFnZS0+Y2hyb21lKCkuY2xpZW50KCkpLnBhZ2UoKTsKIH0KIAogdm9pZCBX
ZWJQYWdlOjpzZXRTaXplKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIHZpZXdTaXplKQpAQCAtMTc5
MSw3ICsxNzkyLDggQEAgdm9pZCBXZWJQYWdlOjpwb3N0SW5qZWN0ZWRCdW5kbGVNZXNzYWdlKGNv
bnN0IFN0cmluZyYgbWVzc2FnZU5hbWUsIGNvbnN0IFVzZXJEYXQKIH0KIAogI2lmICFQTEFURk9S
TShJT1MpCi12b2lkIFdlYlBhZ2U6OnNldEhlYWRlclBhZ2VCYW5uZXIoUGFzc1JlZlB0cjxQYWdl
QmFubmVyPiBwYWdlQmFubmVyKQorCit2b2lkIFdlYlBhZ2U6OnNldEhlYWRlclBhZ2VCYW5uZXIo
UGFnZUJhbm5lciogcGFnZUJhbm5lcikKIHsKICAgICBpZiAobV9oZWFkZXJCYW5uZXIpCiAgICAg
ICAgIG1faGVhZGVyQmFubmVyLT5kZXRhY2hGcm9tUGFnZSgpOwpAQCAtMTgwNyw3ICsxODA5LDcg
QEAgUGFnZUJhbm5lciogV2ViUGFnZTo6aGVhZGVyUGFnZUJhbm5lcigpCiAgICAgcmV0dXJuIG1f
aGVhZGVyQmFubmVyLmdldCgpOwogfQogCi12b2lkIFdlYlBhZ2U6OnNldEZvb3RlclBhZ2VCYW5u
ZXIoUGFzc1JlZlB0cjxQYWdlQmFubmVyPiBwYWdlQmFubmVyKQordm9pZCBXZWJQYWdlOjpzZXRG
b290ZXJQYWdlQmFubmVyKFBhZ2VCYW5uZXIqIHBhZ2VCYW5uZXIpCiB7CiAgICAgaWYgKG1fZm9v
dGVyQmFubmVyKQogICAgICAgICBtX2Zvb3RlckJhbm5lci0+ZGV0YWNoRnJvbVBhZ2UoKTsKQEAg
LTM1NzUsNiArMzU3Nyw3IEBAIHZvaWQgV2ViUGFnZTo6c2V0QWN0aXZlUG9wdXBNZW51KFdlYlBv
cHVwTWVudSogbWVudSkKIH0KIAogI2lmIEVOQUJMRShJTlBVVF9UWVBFX0NPTE9SKQorCiB2b2lk
IFdlYlBhZ2U6OnNldEFjdGl2ZUNvbG9yQ2hvb3NlcihXZWJDb2xvckNob29zZXIqIGNvbG9yQ2hv
b3NlcikKIHsKICAgICBtX2FjdGl2ZUNvbG9yQ2hvb3NlciA9IGNvbG9yQ2hvb3NlcjsKQEAgLTM1
ODksMTEgKzM1OTIsMTIgQEAgdm9pZCBXZWJQYWdlOjpkaWRDaG9vc2VDb2xvcihjb25zdCBXZWJD
b3JlOjpDb2xvciYgY29sb3IpCiB7CiAgICAgbV9hY3RpdmVDb2xvckNob29zZXItPmRpZENob29z
ZUNvbG9yKGNvbG9yKTsKIH0KKwogI2VuZGlmCiAKLXZvaWQgV2ViUGFnZTo6c2V0QWN0aXZlT3Bl
blBhbmVsUmVzdWx0TGlzdGVuZXIoUGFzc1JlZlB0cjxXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5l
cj4gb3BlblBhbmVsUmVzdWx0TGlzdGVuZXIpCit2b2lkIFdlYlBhZ2U6OnNldEFjdGl2ZU9wZW5Q
YW5lbFJlc3VsdExpc3RlbmVyKFJlZjxXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcj4mJiBvcGVu
UGFuZWxSZXN1bHRMaXN0ZW5lcikKIHsKLSAgICBtX2FjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3Rl
bmVyID0gb3BlblBhbmVsUmVzdWx0TGlzdGVuZXI7CisgICAgbV9hY3RpdmVPcGVuUGFuZWxSZXN1
bHRMaXN0ZW5lciA9IFdURk1vdmUob3BlblBhbmVsUmVzdWx0TGlzdGVuZXIpOwogfQogCiBib29s
IFdlYlBhZ2U6OmZpbmRTdHJpbmdGcm9tSW5qZWN0ZWRCdW5kbGUoY29uc3QgU3RyaW5nJiB0YXJn
ZXQsIEZpbmRPcHRpb25zIG9wdGlvbnMpCkBAIC01NDA4LDExICs1NDEyLDExIEBAIGJvb2wgV2Vi
UGFnZTo6cGx1Z0luSXNQcmltYXJ5U2l6ZShXZWJDb3JlOjpIVE1MUGx1Z0luSW1hZ2VFbGVtZW50
JiBwbHVnSW5JbWFnZUVsCiAKICNlbmRpZiAvLyBFTkFCTEUoUFJJTUFSWV9TTkFQU0hPVFRFRF9Q
TFVHSU5fSEVVUklTVElDKQogCi1QYXNzUmVmUHRyPFJhbmdlPiBXZWJQYWdlOjpjdXJyZW50U2Vs
ZWN0aW9uQXNSYW5nZSgpCitSZWZQdHI8UmFuZ2U+IFdlYlBhZ2U6OmN1cnJlbnRTZWxlY3Rpb25B
c1JhbmdlKCkKIHsKLSAgICBGcmFtZSogZnJhbWUgPSBmcmFtZVdpdGhTZWxlY3Rpb24obV9wYWdl
LmdldCgpKTsKKyAgICBhdXRvKiBmcmFtZSA9IGZyYW1lV2l0aFNlbGVjdGlvbihtX3BhZ2UuZ2V0
KCkpOwogICAgIGlmICghZnJhbWUpCi0gICAgICAgIHJldHVybiAwOworICAgICAgICByZXR1cm4g
bnVsbHB0cjsKIAogICAgIHJldHVybiBmcmFtZS0+c2VsZWN0aW9uKCkudG9Ob3JtYWxpemVkUmFu
Z2UoKTsKIH0KQEAgLTU1MTIsNyArNTUxNiw3IEBAIHZvaWQgV2ViUGFnZTo6Z2V0U2FtcGxpbmdQ
cm9maWxlck91dHB1dCh1aW50NjRfdCBjYWxsYmFja0lEKQogI2VuZGlmCiB9CiAKLVBhc3NSZWZQ
dHI8V2ViQ29yZTo6UmFuZ2U+IFdlYlBhZ2U6OnJhbmdlRnJvbUVkaXRpbmdSYW5nZShXZWJDb3Jl
OjpGcmFtZSYgZnJhbWUsIGNvbnN0IEVkaXRpbmdSYW5nZSYgcmFuZ2UsIEVkaXRpbmdSYW5nZUlz
UmVsYXRpdmVUbyBlZGl0aW5nUmFuZ2VJc1JlbGF0aXZlVG8pCitSZWZQdHI8V2ViQ29yZTo6UmFu
Z2U+IFdlYlBhZ2U6OnJhbmdlRnJvbUVkaXRpbmdSYW5nZShXZWJDb3JlOjpGcmFtZSYgZnJhbWUs
IGNvbnN0IEVkaXRpbmdSYW5nZSYgcmFuZ2UsIEVkaXRpbmdSYW5nZUlzUmVsYXRpdmVUbyBlZGl0
aW5nUmFuZ2VJc1JlbGF0aXZlVG8pCiB7CiAgICAgQVNTRVJUKHJhbmdlLmxvY2F0aW9uICE9IG5v
dEZvdW5kKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlBhZ2UuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgK
aW5kZXggODFjZTc1MWY4ZWJkMWQ4ZTBlMGI3ZGNhNWZmMDdiYjczZDNkMjE2NS4uYjY1ZDkzYmM3
YWVjZWM2ZDc4Mjk0YmYxZWNiYjY1OGE4ZjU5OGIyNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCkBAIC03NCw3ICs3NCw2IEBACiAjaW5jbHVkZSA8bWVt
b3J5PgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAjaW5jbHVkZSA8d3RmL01vbm90b25pY1Rp
bWUuaD4KLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIu
aD4KICNpbmNsdWRlIDx3dGYvUnVuTG9vcC5oPgogI2luY2x1ZGUgPHd0Zi9TZWNvbmRzLmg+CkBA
IC0zMTQsNyArMzEzLDcgQEAgcHVibGljOgogI2VuZGlmCiAKICAgICBXZWJPcGVuUGFuZWxSZXN1
bHRMaXN0ZW5lciogYWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIoKSBjb25zdCB7IHJldHVy
biBtX2FjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLmdldCgpOyB9Ci0gICAgdm9pZCBzZXRB
Y3RpdmVPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcihQYXNzUmVmUHRyPFdlYk9wZW5QYW5lbFJlc3Vs
dExpc3RlbmVyPik7CisgICAgdm9pZCBzZXRBY3RpdmVPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcihS
ZWY8V2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXI+JiYpOwogCiAgICAgdm9pZCBkaWRSZWNlaXZl
TWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXImKSBvdmVycmlkZTsKICAgICB2
b2lkIGRpZFJlY2VpdmVTeW5jTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXIm
LCBzdGQ6OnVuaXF1ZV9wdHI8SVBDOjpFbmNvZGVyPiYpIG92ZXJyaWRlOwpAQCAtMzU1LDE2ICsz
NTQsMTYgQEAgcHVibGljOgogICAgIFdlYkNvcmU6Ok1haW5GcmFtZSogbWFpbkZyYW1lKCkgY29u
c3Q7IC8vIE1heSByZXR1cm4gMC4KICAgICBXZWJDb3JlOjpGcmFtZVZpZXcqIG1haW5GcmFtZVZp
ZXcoKSBjb25zdDsgLy8gTWF5IHJldHVybiAwLgogCi0gICAgUGFzc1JlZlB0cjxXZWJDb3JlOjpS
YW5nZT4gY3VycmVudFNlbGVjdGlvbkFzUmFuZ2UoKTsKKyAgICBSZWZQdHI8V2ViQ29yZTo6UmFu
Z2U+IGN1cnJlbnRTZWxlY3Rpb25Bc1JhbmdlKCk7CiAKICNpZiBFTkFCTEUoTkVUU0NBUEVfUExV
R0lOX0FQSSkKLSAgICBQYXNzUmVmUHRyPFBsdWdpbj4gY3JlYXRlUGx1Z2luKFdlYkZyYW1lKiwg
V2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQqLCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmLCBT
dHJpbmcmIG5ld01JTUVUeXBlKTsKKyAgICBSZWZQdHI8UGx1Z2luPiBjcmVhdGVQbHVnaW4oV2Vi
RnJhbWUqLCBXZWJDb3JlOjpIVE1MUGx1Z0luRWxlbWVudCosIGNvbnN0IFBsdWdpbjo6UGFyYW1l
dGVycyYsIFN0cmluZyYgbmV3TUlNRVR5cGUpOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoV0VCR0wp
CiAgICAgV2ViQ29yZTo6V2ViR0xMb2FkUG9saWN5IHdlYkdMUG9saWN5Rm9yVVJMKFdlYkZyYW1l
KiwgY29uc3QgU3RyaW5nJik7CiAgICAgV2ViQ29yZTo6V2ViR0xMb2FkUG9saWN5IHJlc29sdmVX
ZWJHTFBvbGljeUZvclVSTChXZWJGcmFtZSosIGNvbnN0IFN0cmluZyYpOwotI2VuZGlmIC8vIEVO
QUJMRShXRUJHTCkKKyNlbmRpZgogICAgIAogICAgIGVudW0gY2xhc3MgSW5jbHVkZVBvc3RMYXlv
dXREYXRhSGludCB7IE5vLCBZZXMgfTsKICAgICBFZGl0b3JTdGF0ZSBlZGl0b3JTdGF0ZShJbmNs
dWRlUG9zdExheW91dERhdGFIaW50ID0gSW5jbHVkZVBvc3RMYXlvdXREYXRhSGludDo6WWVzKSBj
b25zdDsKQEAgLTQ1NSwyMSArNDU0LDIxIEBAIHB1YmxpYzoKIAogICAgIGJvb2wgaGFzQ2FjaGVk
V2luZG93RnJhbWUoKSBjb25zdCB7IHJldHVybiBtX2hhc0NhY2hlZFdpbmRvd0ZyYW1lOyB9CiAK
LSNpZiAhUExBVEZPUk0oSU9TKQotICAgIHZvaWQgc2V0VG9wT3ZlcmhhbmdJbWFnZShQYXNzUmVm
UHRyPFdlYkltYWdlPik7Ci0gICAgdm9pZCBzZXRCb3R0b21PdmVyaGFuZ0ltYWdlKFBhc3NSZWZQ
dHI8V2ViSW1hZ2U+KTsKLSNlbmRpZiAvLyAhUExBVEZPUk0oSU9TKQotCiAgICAgdm9pZCB1cGRh
dGVIZWFkZXJBbmRGb290ZXJMYXllcnNGb3JEZXZpY2VTY2FsZUNoYW5nZShmbG9hdCBzY2FsZUZh
Y3Rvcik7Ci0jZW5kaWYgLy8gUExBVEZPUk0oQ09DT0EpCisjZW5kaWYKKworI2lmIFBMQVRGT1JN
KE1BQykKKyAgICB2b2lkIHNldFRvcE92ZXJoYW5nSW1hZ2UoV2ViSW1hZ2UqKTsKKyAgICB2b2lk
IHNldEJvdHRvbU92ZXJoYW5nSW1hZ2UoV2ViSW1hZ2UqKTsKKyNlbmRpZgogCiAgICAgYm9vbCB3
aW5kb3dJc0ZvY3VzZWQoKSBjb25zdDsKICAgICBib29sIHdpbmRvd0FuZFdlYlBhZ2VBcmVGb2N1
c2VkKCkgY29uc3Q7CiAKICNpZiAhUExBVEZPUk0oSU9TKQotICAgIHZvaWQgc2V0SGVhZGVyUGFn
ZUJhbm5lcihQYXNzUmVmUHRyPFBhZ2VCYW5uZXI+KTsKKyAgICB2b2lkIHNldEhlYWRlclBhZ2VC
YW5uZXIoUGFnZUJhbm5lciopOwogICAgIFBhZ2VCYW5uZXIqIGhlYWRlclBhZ2VCYW5uZXIoKTsK
LSAgICB2b2lkIHNldEZvb3RlclBhZ2VCYW5uZXIoUGFzc1JlZlB0cjxQYWdlQmFubmVyPik7Cisg
ICAgdm9pZCBzZXRGb290ZXJQYWdlQmFubmVyKFBhZ2VCYW5uZXIqKTsKICAgICBQYWdlQmFubmVy
KiBmb290ZXJQYWdlQmFubmVyKCk7CiAKICAgICB2b2lkIGhpZGVQYWdlQmFubmVycygpOwpAQCAt
NDc3LDcgKzQ3Niw3IEBAIHB1YmxpYzoKICAgICAKICAgICB2b2lkIHNldEhlYWRlckJhbm5lckhl
aWdodEZvclRlc3RpbmcoaW50KTsKICAgICB2b2lkIHNldEZvb3RlckJhbm5lckhlaWdodEZvclRl
c3RpbmcoaW50KTsKLSNlbmRpZiAvLyAhUExBVEZPUk0oSU9TKQorI2VuZGlmCiAKICAgICBXZWJD
b3JlOjpJbnRQb2ludCBzY3JlZW5Ub1Jvb3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFBvaW50Jik7
CiAgICAgV2ViQ29yZTo6SW50UmVjdCByb290Vmlld1RvU2NyZWVuKGNvbnN0IFdlYkNvcmU6Oklu
dFJlY3QmKTsKQEAgLTYyMSw3ICs2MjAsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBoYXNMb2NhbERh
dGFGb3JVUkwoY29uc3QgV2ViQ29yZTo6VVJMJik7CiAgICAgU3RyaW5nIGNhY2hlZFJlc3BvbnNl
TUlNRVR5cGVGb3JVUkwoY29uc3QgV2ViQ29yZTo6VVJMJik7CiAgICAgU3RyaW5nIGNhY2hlZFN1
Z2dlc3RlZEZpbGVuYW1lRm9yVVJMKGNvbnN0IFdlYkNvcmU6OlVSTCYpOwotICAgIFBhc3NSZWZQ
dHI8V2ViQ29yZTo6U2hhcmVkQnVmZmVyPiBjYWNoZWRSZXNwb25zZURhdGFGb3JVUkwoY29uc3Qg
V2ViQ29yZTo6VVJMJik7CisgICAgUmVmUHRyPFdlYkNvcmU6OlNoYXJlZEJ1ZmZlcj4gY2FjaGVk
UmVzcG9uc2VEYXRhRm9yVVJMKGNvbnN0IFdlYkNvcmU6OlVSTCYpOwogCiAgICAgc3RhdGljIGJv
b2wgY2FuSGFuZGxlUmVxdWVzdChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKTsKIApA
QCAtMTAxNiw5ICsxMDE1LDExIEBAIHByaXZhdGU6CiAgICAgYm9vbCBzaG91bGRTd2l0Y2hUb0Js
b2NrTW9kZUZvckhhbmRsZShjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYgaGFuZGxlUG9pbnQsIFNl
bGVjdGlvbkhhbmRsZVBvc2l0aW9uKTsKICAgICBSZWZQdHI8V2ViQ29yZTo6UmFuZ2U+IHN3aXRj
aFRvQmxvY2tTZWxlY3Rpb25BdFBvaW50KGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiwgU2VsZWN0
aW9uSGFuZGxlUG9zaXRpb24pOwogI2VuZGlmCisKICNpZiAhUExBVEZPUk0oQ09DT0EpCiAgICAg
c3RhdGljIGNvbnN0IGNoYXIqIGludGVycHJldEtleUV2ZW50KGNvbnN0IFdlYkNvcmU6OktleWJv
YXJkRXZlbnQqKTsKICNlbmRpZgorCiAgICAgYm9vbCBwZXJmb3JtRGVmYXVsdEJlaGF2aW9yRm9y
S2V5RXZlbnQoY29uc3QgV2ViS2V5Ym9hcmRFdmVudCYpOwogCiAjaWYgUExBVEZPUk0oTUFDKQpA
QCAtMTIwNiw3ICsxMjA3LDcgQEAgcHJpdmF0ZToKICAgICBzdGF0aWMgUGx1Z2luVmlldyogZm9j
dXNlZFBsdWdpblZpZXdGb3JGcmFtZShXZWJDb3JlOjpGcmFtZSYpOwogICAgIHN0YXRpYyBQbHVn
aW5WaWV3KiBwbHVnaW5WaWV3Rm9yRnJhbWUoV2ViQ29yZTo6RnJhbWUqKTsKIAotICAgIHN0YXRp
YyBQYXNzUmVmUHRyPFdlYkNvcmU6OlJhbmdlPiByYW5nZUZyb21FZGl0aW5nUmFuZ2UoV2ViQ29y
ZTo6RnJhbWUmLCBjb25zdCBFZGl0aW5nUmFuZ2UmLCBFZGl0aW5nUmFuZ2VJc1JlbGF0aXZlVG8g
PSBFZGl0aW5nUmFuZ2VJc1JlbGF0aXZlVG86OkVkaXRhYmxlUm9vdCk7CisgICAgc3RhdGljIFJl
ZlB0cjxXZWJDb3JlOjpSYW5nZT4gcmFuZ2VGcm9tRWRpdGluZ1JhbmdlKFdlYkNvcmU6OkZyYW1l
JiwgY29uc3QgRWRpdGluZ1JhbmdlJiwgRWRpdGluZ1JhbmdlSXNSZWxhdGl2ZVRvID0gRWRpdGlu
Z1JhbmdlSXNSZWxhdGl2ZVRvOjpFZGl0YWJsZVJvb3QpOwogCiAgICAgdm9pZCByZXBvcnRVc2Vk
RmVhdHVyZXMoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQ
YWdlL2VmbC9XZWJQYWdlRWZsLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFn
ZS9lZmwvV2ViUGFnZUVmbC5jcHAKaW5kZXggMTVhMWRjZWExMTJjMmU3MTNiZDMxM2NmNjdiYWMz
NjE2ZDZiMzA3Yy4uZDIxZWQ4YjBhN2Q4MzNmMGViN2NjZGE2ZTk1MTVjYTczYjFiYmVmNiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL2VmbC9XZWJQYWdlRWZs
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvZWZsL1dlYlBhZ2VF
ZmwuY3BwCkBAIC0xNTcsNyArMTU3LDcgQEAgU3RyaW5nIFdlYlBhZ2U6OmNhY2hlZFN1Z2dlc3Rl
ZEZpbGVuYW1lRm9yVVJMKGNvbnN0IFVSTCYpCiAgICAgcmV0dXJuIFN0cmluZygpOwogfQogCi1Q
YXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gV2ViUGFnZTo6Y2FjaGVkUmVzcG9uc2VEYXRhRm9yVVJM
KGNvbnN0IFVSTCYpCitSZWZQdHI8U2hhcmVkQnVmZmVyPiBXZWJQYWdlOjpjYWNoZWRSZXNwb25z
ZURhdGFGb3JVUkwoY29uc3QgVVJMJikKIHsKICAgICBub3RJbXBsZW1lbnRlZCgpOwogICAgIHJl
dHVybiAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL2d0
ay9XZWJQYWdlR3RrLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9ndGsv
V2ViUGFnZUd0ay5jcHAKaW5kZXggZDc2NjY4MDQzMDJlNTI3ZTQ3ZjI0Yjk5ODJkZGVkNjQ5YzBh
NWQyMy4uZjBlMzRlZmRjMzNiNjg2ZTdiNzE0ZTA4MTA2NjMzZGEyOGM4ZWQ4OSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL2d0ay9XZWJQYWdlR3RrLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvZ3RrL1dlYlBhZ2VHdGsuY3Bw
CkBAIC0xODUsMTMgKzE4NSwxMiBAQCBTdHJpbmcgV2ViUGFnZTo6Y2FjaGVkU3VnZ2VzdGVkRmls
ZW5hbWVGb3JVUkwoY29uc3QgVVJMJikKICAgICByZXR1cm4gU3RyaW5nKCk7CiB9CiAKLVBhc3NS
ZWZQdHI8U2hhcmVkQnVmZmVyPiBXZWJQYWdlOjpjYWNoZWRSZXNwb25zZURhdGFGb3JVUkwoY29u
c3QgVVJMJikKK1JlZlB0cjxTaGFyZWRCdWZmZXI+IFdlYlBhZ2U6OmNhY2hlZFJlc3BvbnNlRGF0
YUZvclVSTChjb25zdCBVUkwmKQogewogICAgIG5vdEltcGxlbWVudGVkKCk7CiAgICAgcmV0dXJu
IDA7CiB9CiAKLQogU3RyaW5nIFdlYlBhZ2U6OnBsYXRmb3JtVXNlckFnZW50KGNvbnN0IFVSTCYg
dXJsKSBjb25zdAogewogICAgIGlmICh1cmwuaXNOdWxsKCkgfHwgIW1fcGFnZS0+c2V0dGluZ3Mo
KS5uZWVkc1NpdGVTcGVjaWZpY1F1aXJrcygpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tIGIvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCmluZGV4IDVjOTcyYzFjYTQ1Yjg3Mjk2
ZDhjNGE1YTEyOTczZjllNzcxM2RmYjIuLmI2N2I1ZTcwMGFkNGE5OTgxMmYwNDY3Nzg1YjEwNTUz
ZjdlZDk5YTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9p
b3MvV2ViUGFnZUlPUy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2Uv
aW9zL1dlYlBhZ2VJT1MubW0KQEAgLTQ2NywxMCArNDY3LDEwIEBAIFN0cmluZyBXZWJQYWdlOjpj
YWNoZWRSZXNwb25zZU1JTUVUeXBlRm9yVVJMKGNvbnN0IFVSTCYpCiAgICAgcmV0dXJuIFN0cmlu
ZygpOwogfQogCi1QYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gV2ViUGFnZTo6Y2FjaGVkUmVzcG9u
c2VEYXRhRm9yVVJMKGNvbnN0IFVSTCYpCitSZWZQdHI8U2hhcmVkQnVmZmVyPiBXZWJQYWdlOjpj
YWNoZWRSZXNwb25zZURhdGFGb3JVUkwoY29uc3QgVVJMJikKIHsKICAgICBub3RJbXBsZW1lbnRl
ZCgpOwotICAgIHJldHVybiAwOworICAgIHJldHVybiBudWxscHRyOwogfQogCiBib29sIFdlYlBh
Z2U6OnBsYXRmb3JtQ2FuSGFuZGxlUmVxdWVzdChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QmKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9X
ZWJQYWdlTWFjLm1tIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9XZWJQ
YWdlTWFjLm1tCmluZGV4IGY3ZWI4ZDcwYzZkNjI4ZTZlYmQzNzlhNjI4OTZmNDEyYTVjYmJlNWEu
LjE2Y2M3MzRiZWNjNWE2NmJkNzg5ODJkMTk5ODQyNTRhMTI3YWJjZjYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvV2ViUGFnZU1hYy5tbQorKysgYi9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1dlYlBhZ2VNYWMubW0KQEAgLTcy
NCw3ICs3MjQsNyBAQCBTdHJpbmcgV2ViUGFnZTo6Y2FjaGVkUmVzcG9uc2VNSU1FVHlwZUZvclVS
TChjb25zdCBVUkwmIHVybCkKICAgICByZXR1cm4gW1tjYWNoZWRSZXNwb25zZUZvclVSTCh0aGlz
LCB1cmwpIHJlc3BvbnNlXSBNSU1FVHlwZV07CiB9CiAKLVBhc3NSZWZQdHI8U2hhcmVkQnVmZmVy
PiBXZWJQYWdlOjpjYWNoZWRSZXNwb25zZURhdGFGb3JVUkwoY29uc3QgVVJMJiB1cmwpCitSZWZQ
dHI8U2hhcmVkQnVmZmVyPiBXZWJQYWdlOjpjYWNoZWRSZXNwb25zZURhdGFGb3JVUkwoY29uc3Qg
VVJMJiB1cmwpCiB7CiAgICAgcmV0dXJuIFNoYXJlZEJ1ZmZlcjo6d3JhcE5TRGF0YShbY2FjaGVk
UmVzcG9uc2VGb3JVUkwodGhpcywgdXJsKSBkYXRhXSk7CiB9CkBAIC03NzMsMzcgKzc3MywzMyBA
QCB2b2lkIFdlYlBhZ2U6OmFjY2VwdHNGaXJzdE1vdXNlKGludCBldmVudE51bWJlciwgY29uc3Qg
V2ViS2l0OjpXZWJNb3VzZUV2ZW50JiBldgogICAgICAgICByZXN1bHQgPSAhIWhpdFJlc3VsdC5z
Y3JvbGxiYXIoKTsKIH0KIAotdm9pZCBXZWJQYWdlOjpzZXRUb3BPdmVyaGFuZ0ltYWdlKFBhc3NS
ZWZQdHI8V2ViSW1hZ2U+IGltYWdlKQordm9pZCBXZWJQYWdlOjpzZXRUb3BPdmVyaGFuZ0ltYWdl
KFdlYkltYWdlKiBpbWFnZSkKIHsKLSAgICBGcmFtZVZpZXcqIGZyYW1lVmlldyA9IG1fbWFpbkZy
YW1lLT5jb3JlRnJhbWUoKS0+dmlldygpOworICAgIGF1dG8qIGZyYW1lVmlldyA9IG1fbWFpbkZy
YW1lLT5jb3JlRnJhbWUoKS0+dmlldygpOwogICAgIGlmICghZnJhbWVWaWV3KQogICAgICAgICBy
ZXR1cm47CiAKLSAgICBHcmFwaGljc0xheWVyKiBsYXllciA9IGZyYW1lVmlldy0+c2V0V2FudHNM
YXllckZvclRvcE92ZXJIYW5nQXJlYShpbWFnZS5nZXQoKSk7CisgICAgYXV0byogbGF5ZXIgPSBm
cmFtZVZpZXctPnNldFdhbnRzTGF5ZXJGb3JUb3BPdmVySGFuZ0FyZWEoaW1hZ2UpOwogICAgIGlm
ICghbGF5ZXIpCiAgICAgICAgIHJldHVybjsKIAogICAgIGxheWVyLT5zZXRTaXplKGltYWdlLT5z
aXplKCkpOwogICAgIGxheWVyLT5zZXRQb3NpdGlvbihGbG9hdFBvaW50KDAsIC1pbWFnZS0+c2l6
ZSgpLmhlaWdodCgpKSk7Ci0KLSAgICBSZXRhaW5QdHI8Q0dJbWFnZVJlZj4gY2dJbWFnZSA9IGlt
YWdlLT5iaXRtYXAoKS5tYWtlQ0dJbWFnZUNvcHkoKTsKLSAgICBsYXllci0+cGxhdGZvcm1MYXll
cigpLmNvbnRlbnRzID0gKGlkKWNnSW1hZ2UuZ2V0KCk7CisgICAgbGF5ZXItPnBsYXRmb3JtTGF5
ZXIoKS5jb250ZW50cyA9IChpZClpbWFnZS0+Yml0bWFwKCkubWFrZUNHSW1hZ2VDb3B5KCkuZ2V0
KCk7CiB9CiAKLXZvaWQgV2ViUGFnZTo6c2V0Qm90dG9tT3ZlcmhhbmdJbWFnZShQYXNzUmVmUHRy
PFdlYkltYWdlPiBpbWFnZSkKK3ZvaWQgV2ViUGFnZTo6c2V0Qm90dG9tT3ZlcmhhbmdJbWFnZShX
ZWJJbWFnZSogaW1hZ2UpCiB7Ci0gICAgRnJhbWVWaWV3KiBmcmFtZVZpZXcgPSBtX21haW5GcmFt
ZS0+Y29yZUZyYW1lKCktPnZpZXcoKTsKKyAgICBhdXRvKiBmcmFtZVZpZXcgPSBtX21haW5GcmFt
ZS0+Y29yZUZyYW1lKCktPnZpZXcoKTsKICAgICBpZiAoIWZyYW1lVmlldykKICAgICAgICAgcmV0
dXJuOwogCi0gICAgR3JhcGhpY3NMYXllciogbGF5ZXIgPSBmcmFtZVZpZXctPnNldFdhbnRzTGF5
ZXJGb3JCb3R0b21PdmVySGFuZ0FyZWEoaW1hZ2UuZ2V0KCkpOworICAgIGF1dG8qIGxheWVyID0g
ZnJhbWVWaWV3LT5zZXRXYW50c0xheWVyRm9yQm90dG9tT3ZlckhhbmdBcmVhKGltYWdlKTsKICAg
ICBpZiAoIWxheWVyKQogICAgICAgICByZXR1cm47CiAKICAgICBsYXllci0+c2V0U2l6ZShpbWFn
ZS0+c2l6ZSgpKTsKLSAgICAKLSAgICBSZXRhaW5QdHI8Q0dJbWFnZVJlZj4gY2dJbWFnZSA9IGlt
YWdlLT5iaXRtYXAoKS5tYWtlQ0dJbWFnZUNvcHkoKTsKLSAgICBsYXllci0+cGxhdGZvcm1MYXll
cigpLmNvbnRlbnRzID0gKGlkKWNnSW1hZ2UuZ2V0KCk7CisgICAgbGF5ZXItPnBsYXRmb3JtTGF5
ZXIoKS5jb250ZW50cyA9IChpZClpbWFnZS0+Yml0bWFwKCkubWFrZUNHSW1hZ2VDb3B5KCkuZ2V0
KCk7CiB9CiAKIHZvaWQgV2ViUGFnZTo6dXBkYXRlSGVhZGVyQW5kRm9vdGVyTGF5ZXJzRm9yRGV2
aWNlU2NhbGVDaGFuZ2UoZmxvYXQgc2NhbGVGYWN0b3IpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9XZWJQcm9jZXNzLmNwcAppbmRleCBjMTI4MDE4MzAzNTYwMjJhYmYzMGY4Nzg3Mzc5NmMzNTNk
ZTNiYmY0Li4zZTVjYmFkYWIyNDQ0Mjg2MDUwMTM3MDJlOTM0NTAyM2YxNjBiMjkyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAKQEAgLTE1OCwyMiArMTU4LDEyIEBA
IFdlYlByb2Nlc3M6OldlYlByb2Nlc3MoKQogI2lmIFBMQVRGT1JNKElPUykKICAgICAsIG1fdmll
d1VwZGF0ZURpc3BhdGNoZXIoVmlld1VwZGF0ZURpc3BhdGNoZXI6OmNyZWF0ZSgpKQogI2VuZGlm
Ci0gICAgLCBtX2luRGlkQ2xvc2UoZmFsc2UpCi0gICAgLCBtX2hhc1NldENhY2hlTW9kZWwoZmFs
c2UpCi0gICAgLCBtX2NhY2hlTW9kZWwoQ2FjaGVNb2RlbERvY3VtZW50Vmlld2VyKQotICAgICwg
bV9mdWxsS2V5Ym9hcmRBY2Nlc3NFbmFibGVkKGZhbHNlKQotICAgICwgbV90ZXh0Q2hlY2tlclN0
YXRlKCkKLSAgICAsIG1faWNvbkRhdGFiYXNlUHJveHkoKm5ldyBXZWJJY29uRGF0YWJhc2VQcm94
eSh0aGlzKSkKKyAgICAsIG1faWNvbkRhdGFiYXNlUHJveHkoKm5ldyBXZWJJY29uRGF0YWJhc2VQ
cm94eSgqdGhpcykpCiAgICAgLCBtX3dlYkxvYWRlclN0cmF0ZWd5KCpuZXcgV2ViTG9hZGVyU3Ry
YXRlZ3kpCiAgICAgLCBtX2Ruc1ByZWZldGNoSHlzdGVyZXJpcyhbdGhpc10oSHlzdGVyZXNpc1N0
YXRlIHN0YXRlKSB7IGlmIChzdGF0ZSA9PSBIeXN0ZXJlc2lzU3RhdGU6OlN0b3BwZWQpIG1fZG5z
UHJlZmV0Y2hlZEhvc3RzLmNsZWFyKCk7IH0pCiAjaWYgRU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9B
UEkpCiAgICAgLCBtX3BsdWdpblByb2Nlc3NDb25uZWN0aW9uTWFuYWdlcihQbHVnaW5Qcm9jZXNz
Q29ubmVjdGlvbk1hbmFnZXI6OmNyZWF0ZSgpKQogI2VuZGlmCi0jaWYgRU5BQkxFKFNFUlZJQ0Vf
Q09OVFJPTFMpCi0gICAgLCBtX2hhc0ltYWdlU2VydmljZXMoZmFsc2UpCi0gICAgLCBtX2hhc1Nl
bGVjdGlvblNlcnZpY2VzKGZhbHNlKQotICAgICwgbV9oYXNSaWNoQ29udGVudFNlcnZpY2VzKGZh
bHNlKQotI2VuZGlmCiAgICAgLCBtX25vblZpc2libGVQcm9jZXNzQ2xlYW51cFRpbWVyKCp0aGlz
LCAmV2ViUHJvY2Vzczo6bm9uVmlzaWJsZVByb2Nlc3NDbGVhbnVwVGltZXJGaXJlZCkKICAgICAs
IG1fc3RhdGlzdGljc0NoYW5nZWRUaW1lcigqdGhpcywgJldlYlByb2Nlc3M6OnN0YXRpc3RpY3ND
aGFuZ2VkVGltZXJGaXJlZCkKICNpZiBQTEFURk9STShJT1MpCkBAIC0xOTQsOSArMTg0LDExIEBA
IFdlYlByb2Nlc3M6OldlYlByb2Nlc3MoKQogI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBF
TkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCiAgICAgYWRkU3VwcGxlbWVudDxXZWJOb3RpZmlj
YXRpb25NYW5hZ2VyPigpOwogI2VuZGlmCisKICNpZiBFTkFCTEUoTEVHQUNZX0VOQ1JZUFRFRF9N
RURJQSkKICAgICBhZGRTdXBwbGVtZW50PFdlYk1lZGlhS2V5U3RvcmFnZU1hbmFnZXI+KCk7CiAj
ZW5kaWYKKwogICAgIG1fcGx1Z0luQXV0b1N0YXJ0T3JpZ2luSGFzaGVzLmFkZChTZXNzaW9uSUQ6
OmRlZmF1bHRTZXNzaW9uSUQoKSwgSGFzaE1hcDx1bnNpZ25lZCwgZG91YmxlPigpKTsKIAogI2lm
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpAQCAtMjA3LDcgKzE5OSw2IEBAIFdlYlByb2Nlc3M6
OldlYlByb2Nlc3MoKQogICAgIG1fcmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JhZ2UtPnNldE5v
dGlmaWNhdGlvbkNhbGxiYWNrKFt0aGlzXSB7CiAgICAgICAgIGlmIChtX3N0YXRpc3RpY3NDaGFu
Z2VkVGltZXIuaXNBY3RpdmUoKSkKICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgCiAgICAg
ICAgIG1fc3RhdGlzdGljc0NoYW5nZWRUaW1lci5zdGFydE9uZVNob3Qoc3RkOjpjaHJvbm86OnNl
Y29uZHMoNSkpOwogICAgIH0pOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJQcm9jZXNzLmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3Mu
aAppbmRleCAyMjhmMDQ2MTFkYjE4MGJiZmRlN2Y0ZDliNWYyMTNmZGI2M2NjOWUyLi4zNTQ0NjRh
ODFlNDBiMGRlNGVmY2FjYWQ1ZmI4NjRhYTkzNzAzMTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYlByb2Nlc3MuaApAQCAtMjMsOCArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV2ViUHJvY2Vzc19oCi0jZGVmaW5lIFdlYlBy
b2Nlc3NfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJDYWNoZU1vZGVsLmgiCiAjaW5jbHVk
ZSAiQ2hpbGRQcm9jZXNzLmgiCkBAIC0zNDYsMjAgKzM0NSwyMCBAQCBwcml2YXRlOgogICAgIFJl
ZlB0cjxWaWV3VXBkYXRlRGlzcGF0Y2hlcj4gbV92aWV3VXBkYXRlRGlzcGF0Y2hlcjsKICNlbmRp
ZgogCi0gICAgYm9vbCBtX2luRGlkQ2xvc2U7CisgICAgYm9vbCBtX2luRGlkQ2xvc2UgeyBmYWxz
ZSB9OwogCiAgICAgSGFzaE1hcDxXZWJDb3JlOjpTZXNzaW9uSUQsIEhhc2hNYXA8dW5zaWduZWQs
IGRvdWJsZT4+IG1fcGx1Z0luQXV0b1N0YXJ0T3JpZ2luSGFzaGVzOwogICAgIEhhc2hTZXQ8U3Ry
aW5nPiBtX3BsdWdJbkF1dG9TdGFydE9yaWdpbnM7CiAKLSAgICBib29sIG1faGFzU2V0Q2FjaGVN
b2RlbDsKLSAgICBDYWNoZU1vZGVsIG1fY2FjaGVNb2RlbDsKKyAgICBib29sIG1faGFzU2V0Q2Fj
aGVNb2RlbCB7IGZhbHNlIH07CisgICAgQ2FjaGVNb2RlbCBtX2NhY2hlTW9kZWwgeyBDYWNoZU1v
ZGVsRG9jdW1lbnRWaWV3ZXIgfTsKIAogI2lmIFBMQVRGT1JNKENPQ09BKQogICAgIFdlYkNvcmU6
Ok1hY2hTZW5kUmlnaHQgbV9jb21wb3NpdGluZ1JlbmRlclNlcnZlclBvcnQ7CiAgICAgcGlkX3Qg
bV9wcmVzZW50ZXJBcHBsaWNhdGlvblBpZDsKICNlbmRpZgogCi0gICAgYm9vbCBtX2Z1bGxLZXli
b2FyZEFjY2Vzc0VuYWJsZWQ7CisgICAgYm9vbCBtX2Z1bGxLZXlib2FyZEFjY2Vzc0VuYWJsZWQg
eyBmYWxzZSB9OwogCiAgICAgSGFzaE1hcDx1aW50NjRfdCwgV2ViRnJhbWUqPiBtX2ZyYW1lTWFw
OwogCkBAIC0zODgsOSArMzg3LDkgQEAgcHJpdmF0ZToKICNlbmRpZgogCiAjaWYgRU5BQkxFKFNF
UlZJQ0VfQ09OVFJPTFMpCi0gICAgYm9vbCBtX2hhc0ltYWdlU2VydmljZXM7Ci0gICAgYm9vbCBt
X2hhc1NlbGVjdGlvblNlcnZpY2VzOwotICAgIGJvb2wgbV9oYXNSaWNoQ29udGVudFNlcnZpY2Vz
OworICAgIGJvb2wgbV9oYXNJbWFnZVNlcnZpY2VzIHsgZmFsc2UgfTsKKyAgICBib29sIG1faGFz
U2VsZWN0aW9uU2VydmljZXMgeyBmYWxzZSB9OworICAgIGJvb2wgbV9oYXNSaWNoQ29udGVudFNl
cnZpY2VzIHsgZmFsc2UgfTsKICNlbmRpZgogCiAgICAgSGFzaFNldDx1aW50NjRfdD4gbV9wYWdl
c0luV2luZG93czsKQEAgLTQxNiw1ICs0MTUsMyBAQCBwcml2YXRlOgogfTsKIAogfSAvLyBuYW1l
c3BhY2UgV2ViS2l0Ci0KLSNlbmRpZiAvLyBXZWJQcm9jZXNzX2gK
</data>
<flag name="review"
          id="321001"
          type_id="1"
          status="+"
          setter="achristensen"
    />
    <flag name="commit-queue"
          id="321092"
          type_id="3"
          status="-"
          setter="commit-queue"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>299112</attachid>
            <date>2017-01-17 19:43:46 -0800</date>
            <delta_ts>2017-01-17 20:58:38 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-167055-20170117194156.patch</filename>
            <type>text/plain</type>
            <size>676534</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEwODQxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDhhYWIyY2U1ZTNhOTI4
MGViZmVkNmEzOWJiYTljYjUwY2ZjNGI1OS4uMTNlZGIxY2I2M2RjMzdhMWRjMTFiMzM1ZDgzOTIx
ZTAzMGZjZDAzNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwNyBAQAorMjAxNy0wMS0xNSAgRGFy
aW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIFBhc3NSZWZQdHIg
ZnJvbSAibG9hZGVyIiBkaXJlY3Rvcnkgb2YgV2ViQ29yZQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY3MDU1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6RG9jdW1lbnQ6OnByb2Nlc3NIdHRwRXF1aXYpOiBQYXNzIGEgcmVmZXJlbmNlLgor
ICAgICAgICAqIGVkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6RWRpdENvbW1hbmRDb21wb3NpdGlvbjo6dW5hcHBseSk6IERpdHRvLgorICAgICAgICAo
V2ViQ29yZTo6RWRpdENvbW1hbmRDb21wb3NpdGlvbjo6cmVhcHBseSk6IERpdHRvLgorICAgICAg
ICAoV2ViQ29yZTo6Q29tcG9zaXRlRWRpdENvbW1hbmQ6OmVuc3VyZUNvbXBvc2l0aW9uKTogUmV0
dXJuIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6Q29tcG9zaXRlRWRpdENvbW1hbmQ6
OmFwcGx5Q29tbWFuZFRvQ29tcG9zaXRlKTogVXNlIGEgcmVmZXJlbmNlLgorICAgICAgICAqIGVk
aXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuaDogVXBkYXRlZCBmb3IgYWJvdmUgY2hhbmdlcy4K
KworICAgICAgICAqIGVkaXRpbmcvRWRpdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRv
cjo6dW5hcHBsaWVkRWRpdGluZyk6IFRha2UgYSByZWZlcmVuY2UgaW5zdGVhZCBvZiBhIFBhc3NS
ZWZQdHIuCisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OnJlYXBwbGllZEVkaXRpbmcpOiBEaXR0
by4KKyAgICAgICAgKiBlZGl0aW5nL0VkaXRvci5oOiBVcGRhdGVkIGZvciBhYm92ZSBjaGFuZ2Vz
LiBBbHNvIGNoYW5nZWQgdGhlCisgICAgICAgIEZyYWdtZW50QW5kUmVzb3VyY2VzIHJlc291cmNl
cyB2ZWN0b3IgdG8gaG9sZCBSZWYgaW5zdGVhZCBvZiBSZWZQdHIuCisKKyAgICAgICAgKiBlZGl0
aW5nL2NvY29hL0VkaXRvckNvY29hLm1tOgorICAgICAgICAoV2ViQ29yZTo6RWRpdG9yOjpjcmVh
dGVGcmFnbWVudEFuZEFkZFJlc291cmNlcyk6IFVwZGF0ZWQgZm9yIGNoYW5nZSB0bworICAgICAg
ICBGcmFnbWVudEFuZFJlc291cmNlcy4KKworICAgICAgICAqIGVkaXRpbmcvaW9zL0VkaXRvcklP
Uy5tbToKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRvcjo6V2ViQ29udGVudFJlYWRlcjo6cmVhZFdl
YkFyY2hpdmUpOiBQYXNzIGEgcmVmZXJlbmNlLgorCisgICAgICAgICogZWRpdGluZy9tYWMvRWRp
dG9yTWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6RWRpdG9yOjpXZWJDb250ZW50UmVhZGVyOjpy
ZWFkV2ViQXJjaGl2ZSk6IFBhc3MgYSByZWZlcmVuY2UuCisKKyAgICAgICAgKiBoaXN0b3J5L1Bh
Z2VDYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpjYW5DYWNoZUZyYW1lKTogVXNlIGEgcmVm
ZXJlbmNlLgorCisgICAgICAgICogaHRtbC9GaWxlSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkZpbGVJbnB1dFR5cGU6OmhhbmRsZURPTUFjdGl2YXRlRXZlbnQpOiBQYXNzIHJlZmVy
ZW5jZXMuCisKKyAgICAgICAgKiBodG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6SFRNTEZvcm1Db250cm9sRWxlbWVudDo6Zm9ybU1ldGhvZCk6IFVzZSBh
dXRvLgorCisgICAgICAgICogaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTEZvcm1FbGVtZW50OjpwcmVwYXJlRm9yU3VibWlzc2lvbik6IFVwZGF0ZWQgdG8g
dXNlIGEgcmV0dXJuCisgICAgICAgIHZhbHVlcyBmb3IgdGV4dEZpZWxkVmFsdWVzIGludHNlYWQg
b2YgYW4gb3V0IGFyZ3VtZW50IHdpdGggZ2V0VGV4dEZpZWxkVmFsdWVzLgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTEZvcm1FbGVtZW50Ojp0ZXh0RmllbGRWYWx1ZXMpOiBSZW5hbWVkIGZyb20gZ2V0
VGV4dEZpZWxkVmFsdWVzCisgICAgICAgIGFuZCBjaGFuZ2VkIHRvIHVzZSBhIHJldHVybiB2YWx1
ZSBpbnN0ZWFkIG9mIGFuIG91dCBhcmd1bWVudC4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxGb3Jt
RWxlbWVudDo6c3VibWl0KTogUGFzcyBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYkNvcmU6OkhU
TUxGb3JtRWxlbWVudDo6cmVxdWVzdEF1dG9jb21wbGV0ZSk6IFBhc3MgYSBSZWYmJi4KKyAgICAg
ICAgKiBodG1sL0hUTUxGb3JtRWxlbWVudC5oOiBVcGRhdGVkIGZvciBhYm92ZSBjaGFuZ2VzLgor
CisgICAgICAgICogaHRtbC9IVE1MSHRtbEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
SFRNTEh0bWxFbGVtZW50OjppbnNlcnRlZEJ5UGFyc2VyKTogVXNlIGEgcmVmZXJlbmNlLgorCisg
ICAgICAgICogaHRtbC9IVE1MTGlua0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRN
TExpbmtFbGVtZW50Ojpwcm9jZXNzKTogUGFzcyBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYkNv
cmU6OkhUTUxMaW5rRWxlbWVudDo6c2V0Q1NTU3R5bGVTaGVldCk6IFVzZSBhdXRvLgorCisgICAg
ICAgICogaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxN
ZWRpYUVsZW1lbnQ6OmxvYWRSZXNvdXJjZSk6IFVzZSBhIHJlZmVyZW5jZS4KKworICAgICAgICAq
IGluc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50Ojp1cGRhdGVBcHBsaWNhdGlv
bkNhY2hlU3RhdHVzKTogVXNlIGEgcmVmZXJlbmNlLAorICAgICAgICBhbHNvIHVwZGF0ZSBmb3Ig
c3RydWN0LXN0eWxlIG1lbWJlciBuYW1lcyB3aXRob3UgbV8gcHJlZml4LgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpnZXRGcmFtZXNXaXRoTWFuaWZl
c3RzKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hl
QWdlbnQ6OmdldE1hbmlmZXN0Rm9yRnJhbWUpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6Oklu
c3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6Z2V0QXBwbGljYXRpb25DYWNoZUZvckZyYW1l
KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdl
bnQ6OmJ1aWxkT2JqZWN0Rm9yQXBwbGljYXRpb25DYWNoZSk6IERpdHRvLgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZEFycmF5Rm9yQXBwbGlj
YXRpb25DYWNoZVJlc291cmNlcyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
QXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGVSZXNv
dXJjZSk6IERpdHRvLgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNh
Y2hlQWdlbnQuaDogVXBkYXRlZCBmb3IgYWJvdmUgY2hhbmdlcy4KKworICAgICAgICAqIGluc3Bl
Y3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp1cGRhdGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzSW1wbCk6
IFRha2UgYSByZWZlcmVuY2UuCisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1l
bnRhdGlvbi5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIvRG9j
dW1lbnRMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OkRvY3Vt
ZW50TG9hZGVyKTogTW92ZSBtdWNoIGluaXRpYWxpemF0aW9uIHRvIGNsYXNzIGRlZmluaXRpb24u
CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6b3JpZ2luYWxSZXF1ZXN0KTogTW92
ZWQgdG8gaGVhZGVyIHRvIG1ha2UgaXQgaW5saW5lLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXI6Om9yaWdpbmFsUmVxdWVzdENvcHkpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyOjpyZXF1ZXN0KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpEb2N1
bWVudExvYWRlcjo6dXJsKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRl
cjo6c3RvcExvYWRpbmcpOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXI6OndpbGxTZW5kUmVxdWVzdCk6IFVwZGF0ZWQgdG8gdGFrZSBhIHJhdyBwb2lu
dGVyIGluc3RlYWQgb2YgYQorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXI6OmNvbW1pdERhdGEpOiBDYWxsIHNob3VsZFVzZU1haW5SZXNvdXJjZUVu
Y29kaW5nIGluc3RlYWQgb2YKKyAgICAgICAgc3BlY2lhbCBjYXNpbmcgV2ViQXJjaGl2ZS4KKyAg
ICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjptYXliZUNyZWF0ZUFyY2hpdmUpOiBQYXNz
IHJlZmVyZW5jZXMuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6c2V0QXJjaGl2
ZSk6IFRha2UgUmVmJiYgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXI6OmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMpOiBUYWtlIGEgcmVmZXJlbmNl
IGluc3RlYWQKKyAgICAgICAgb2YgYSBwb2ludGVyLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXI6OnBvcEFyY2hpdmVGb3JTdWJmcmFtZSk6IFJldHVybiBSZWZQdHIgaW5zdGVhZCBv
ZgorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6
OnN1YnJlc291cmNlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6
c3VicmVzb3VyY2VzKTogUmV0dXJuIGEgVmVjdG9yPFJlZj4gaW5zdGVhZCBvZiBhCisgICAgICAg
IFZlY3RvcjxSZWZQdHI+LgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OnN1YnN0
aXR1dGVSZXNvdXJjZURlbGl2ZXJ5VGltZXJGaXJlZCk6IFVzZSBtb3ZlCisgICAgICAgIGluc3Rl
YWQgb2Ygc3dhcC4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpzY2hlZHVsZUFy
Y2hpdmVMb2FkKTogVXNlIHNob3VsZExvYWRGcm9tQXJjaGl2ZU9ubHkKKyAgICAgICAgaW5zdGVh
ZCBvZiBhIHNwZWNpYWwgY2FzZSBmb3IgZWFjaCB0eXBlIG9mIGFyY2hpdmUuCisgICAgICAgIChX
ZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6b3JpZ2luYWxVUkwpOiBNb3ZlZCB0byBoZWFkZXIgdG8g
bWFrZSBpdCBpbmxpbmUuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6cmVzcG9u
c2VVUkwpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpkb2N1bWVu
dFVSTCk6IENhbGwgc2hvdWxkVXNlTWFpblJlc291cmNlVVJMIGluc3RlYWQgb2YKKyAgICAgICAg
c3BlY2lhbCBjYXNpbmcgV2ViQXJjaGl2ZS4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyOjpyZXNwb25zZU1JTUVUeXBlKTogTW92ZWQgdG8gaGVhZGVyIHRvIG1ha2UgaXQgaW5saW5l
LgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmN1cnJlbnRDb250ZW50VHlwZSk6
IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmNvbnRlbnRGaWx0ZXIp
OiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpnZXRJY29uTG9hZERl
Y2lzaW9uRm9ySWNvblVSTCk6IFBhc3MgYSByZWZlcmVuY2UuCisgICAgICAgIChXZWJDb3JlOjpE
b2N1bWVudExvYWRlcjo6Z2V0SWNvbkRhdGFGb3JJY29uVVJMKTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6ZGlzcGF0Y2hPbmxvYWRFdmVudHMpOiBVc2UgYSByZWZl
cmVuY2UuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6dW5yZWFjaGFibGVVUkwp
OiBNb3ZlZCB0byBoZWFkZXIgdG8gbWFrZSBpdCBpbmxpbmUuCisgICAgICAgICogbG9hZGVyL0Rv
Y3VtZW50TG9hZGVyLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRl
ci9FbXB0eUNsaWVudHMuY3BwOiBVcGRhdGVkIGZvciBjaGFuZ2VzIHRvIGNsaWVudCBpbnRlcmZh
Y2VzLgorICAgICAgICAqIGxvYWRlci9FbXB0eUNsaWVudHMuaDogRGl0dG8uCisKKyAgICAgICAg
KiBsb2FkZXIvRm9ybVN0YXRlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvcm1TdGF0ZTo6Rm9y
bVN0YXRlKTogVGFrZSByZWZlcmVuY2VzIGluc3RlYWQgb2YgUGFzc1JlZlB0ciwgYWxzbworICAg
ICAgICB0YWtlIFZlY3RvciYmIGluc3RlYWQgb2YgVmVjdG9yJiB3aGVuIHdlIHdhbnQgdG8gdGFr
ZSBvd25lcnNoaXAgYW5kIHVzZSBtb3ZlCisgICAgICAgIGluc3RlYWQgb2Ygc3dhcCB0byBkbyB0
aGF0LgorICAgICAgICAoV2ViQ29yZTo6Rm9ybVN0YXRlOjpjcmVhdGUpOiBEaXR0by4KKyAgICAg
ICAgKiBsb2FkZXIvRm9ybVN0YXRlLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4gQWxzbyBjaGFu
Z2VkIHJldHVybiB2YWx1ZXMgdG8gYmUKKyAgICAgICAgcmVmZXJlbmNlcyBpbnN0ZWFkIG9mIHBv
aW50ZXJzIGFuZCBtZW1iZXJzIHRvIGJlIFJlZiBpbnN0ZWFkIG9mIFJlZlB0ci4KKworICAgICAg
ICAqIGxvYWRlci9Gb3JtU3VibWlzc2lvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb3JtU3Vi
bWlzc2lvbjo6QXR0cmlidXRlczo6cGFyc2VNZXRob2RUeXBlKTogVXBkYXRlZCBmb3IgY2hhbmdl
CisgICAgICAgIHRvIHRoZSBNZXRob2QgZW51bWVyYXRpb24uCisgICAgICAgIChXZWJDb3JlOjpG
b3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6Y29weUZyb20pOiBEZWxldGVkLgorICAgICAgICAo
V2ViQ29yZTo6Rm9ybVN1Ym1pc3Npb246OkZvcm1TdWJtaXNzaW9uKTogVXNlIFJlZiYmIGluc3Rl
YWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYkNvcmU6OkZvcm1TdWJtaXNzaW9uOjpjcmVh
dGUpOiBVc2UgcmVmZXJlbmNlIGluc3RlYWQgb2YgcG9pbnRlciBhbmQKKyAgICAgICAgcmF3IHBv
aW50ZXIgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLiBBbHNvIGNvcHkgYXR0cmlidXRlcyB1c2luZyBj
b3B5IGNvbnN0cnVjdG9yCisgICAgICAgIGluc3RlYWQgb2YgYW4gZXhwbGljaXQgY29weUZyb20g
ZnVuY3Rpb24uCisgICAgICAgIChXZWJDb3JlOjpGb3JtU3VibWlzc2lvbjo6cmVxdWVzdFVSTCk6
IFVwZGF0ZWQgZm9yIGNoYW5nZSB0byB0aGUgTWV0aG9kCisgICAgICAgIGVudW1lcmF0aW9uLgor
ICAgICAgICAoV2ViQ29yZTo6Rm9ybVN1Ym1pc3Npb246OnBvcHVsYXRlRnJhbWVMb2FkUmVxdWVz
dCk6IERpdHRvLgorICAgICAgICAqIGxvYWRlci9Gb3JtU3VibWlzc2lvbi5oOiBVcGRhdGVkIGZv
ciB0aGUgYWJvdmUgY2hhbmdlcy4gTWFkZSB0aGUgQXR0cmlidXRlcworICAgICAgICBjbGFzcyBj
b3B5YWJsZSwgc2luY2Ugd2UgY29weSBpdC4gQ2hhbmdlZCBzb21lIGZ1bmN0aW9ucyB0byByZXR1
cm4gcmVmZXJlbmNlcworICAgICAgICBpbnN0ZWFkIG9mIHBvaW50ZXJzIGFuZCB1c2UgUmVmIGlu
c3RlYWQgb2YgUmVmUHRyIGZvciBkYXRhIG1lbWJlcnMuCisKKyAgICAgICAgKiBsb2FkZXIvRnJh
bWVMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6OnN1Ym1pdEZvcm0p
OiBVcGRhdGVkIGZvciBjaGFuZ2VzIHRvIEZvcm1TdWJtaXNzaW9uCisgICAgICAgIGFuZCBGb3Jt
U3RhdGUuCisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6cmVjZWl2ZWRGaXJzdERhdGEp
OiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2FkRnJhbWVSZXF1ZXN0
KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6bG9hZFJlc291cmNlU3lu
Y2hyb25vdXNseSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6OmNvbnRp
bnVlTG9hZEFmdGVyTmF2aWdhdGlvblBvbGljeSk6IERpdHRvLgorCisgICAgICAgICogbG9hZGVy
L0ZyYW1lTG9hZGVyQ2xpZW50Lmg6IFVzZSByZWZlcmVuY2VzLCBwb2ludGVycywgUmVmUHRyLCBh
bmQgUmVmCisgICAgICAgIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4gUmVtb3ZlZCB1bnVzZWQgZW1w
dHkgZGlzcGF0Y2hEaWRGYWlsVG9TdGFydFBsdWdpbi4KKworICAgICAgICAqIGxvYWRlci9IaXN0
b3J5Q29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5Q29udHJvbGxlcjo6
cHVzaFN0YXRlKTogVGFrZSBSZWZQdHImJiBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAg
IChXZWJDb3JlOjpIaXN0b3J5Q29udHJvbGxlcjo6cmVwbGFjZVN0YXRlKTogRGl0dG8uCisgICAg
ICAgICogbG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4K
KworICAgICAgICAqIGxvYWRlci9JbWFnZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJ
bWFnZUxvYWRlcjo6dXBkYXRlRnJvbUVsZW1lbnQpOiBQYXNzIGEgcmVmZXJlbmNlLgorCisgICAg
ICAgICogbG9hZGVyL05hdmlnYXRpb25TY2hlZHVsZXIuY3BwOiBVc2UgcmVmZXJuY2VzIGFuZCBS
ZWYmJiBpbnN0ZWFkIG9mCisgICAgICAgIHBvaW50ZXJzIGFuZCBQYXNzUmVmUHRyLgorICAgICAg
ICAoV2ViQ29yZTo6U2NoZWR1bGVkTmF2aWdhdGlvbjo6U2NoZWR1bGVkTmF2aWdhdGlvbik6IEFk
ZGVkIGFuIG92ZXJsb2FkCisgICAgICAgIHRoYXQgc2VzdHMgbV9zaG91bGRPcGVuRXh0ZXJuYWxV
UkxzUG9saWN5LgorICAgICAgICAqIGxvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmg6IFVwZGF0
ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWRlci5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcjo6c3RhcnQpOiBVc2UgYW5kIHBhc3Mg
cmVmZXJlbmNlcy4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZGVyOjp3aWxsU2VuZFJl
cXVlc3QpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZGVyOjpkaWRSZWNl
aXZlUmVzcG9uc2UpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZGVyOjpk
aWRGYWlsKTogRGl0dG8uCisKKyAgICAgICAgKiBsb2FkZXIvU3ViZnJhbWVMb2FkZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQp
OiBSZXR1cm4gUmVmUHRyIGluc3RlYWQKKyAgICAgICAgb2YgUGFzc1JlZlB0ci4gUGFzcyByZWZl
cmVuY2VzIGluc3RlYWQgb2YgcG9pbnRlcnMuCisgICAgICAgIChXZWJDb3JlOjpTdWJmcmFtZUxv
YWRlcjo6bG9hZE9yUmVkaXJlY3RTdWJmcmFtZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6
U3ViZnJhbWVMb2FkZXI6OmxvYWRTdWJmcmFtZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6
U3ViZnJhbWVMb2FkZXI6OmRvY3VtZW50KTogRGVsZXRlZC4gVGhpcyB3YXMgbmV2ZXIgcmVhbGx5
IHRoZQorICAgICAgICBjb3JyZWN0IGlkaW9tIGZvciBnZXR0aW5nIHRoZSBhcHByb3ByaWF0ZSBk
b2N1bWVudDsgaGlkaW5nIHRoZSBkZXBlbmRlbmN5CisgICAgICAgIG9uIG1fZnJhbWUgd2Fzbid0
IHBhaW5nIG9mZi4KKyAgICAgICAgKFdlYkNvcmU6OlN1YmZyYW1lTG9hZGVyOjpsb2FkUGx1Z2lu
KTogUGFzcyByZWZlcmVuY2UgaW5zdGVhZCBvZiBwb2ludGVyLgorICAgICAgICAoV2ViQ29yZTo6
U3ViZnJhbWVMb2FkZXI6OnNob3VsZENvbnZlcnRJbnZhbGlkVVJMc1RvQmxhbmspOiBFbGltaW5h
dGVkCisgICAgICAgIHVubmVlZGVkIG51bGwgY2hlY2tpbmcgYW5kIGNvbXBsZXhpdHkgZHVlIHRv
IGdvaW5nIHRocm91Z2ggdGhlIGRvY3VtZW50CisgICAgICAgIGluc3RlYWQgb2YgdGhlIGZyYW1l
IGZvciB0aGlzIGNoZWNrLgorICAgICAgICAqIGxvYWRlci9TdWJmcmFtZUxvYWRlci5oOiBVcGRh
dGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRp
b25DYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNh
dGlvbkNhY2hlKTogTW92ZWQgZGF0YSBtZW1iZXIKKyAgICAgICAgaW5pdGlhbGl6YXRpb24gdG8g
dGhlIGNsYXNzIGRlZmluaXRpb24uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hl
Ojp+QXBwbGljYXRpb25DYWNoZSk6IFBhc3MgYSByZWZlcmVuY2UgaW5zdGVhZAorICAgICAgICBv
ZiBhIHBvaW50ZXIuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlOjppc0NvbXBs
ZXRlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlOjpzZXRNYW5p
ZmVzdFJlc291cmNlKTogVGFrZSBSZWYmJiBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIu
CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlOjphZGRSZXNvdXJjZSk6IERpdHRv
LgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZTo6cmVtb3ZlUmVzb3VyY2UpOiBE
ZWxldGVkLiBXYXMgdW51c2VkLgorICAgICAgICAqIGxvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlv
bkNhY2hlLmg6IFVwZGF0ZWQgZm9yIGFib3ZlIGNoYW5nZXMuCisKKyAgICAgICAgKiBsb2FkZXIv
YXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFw
cGxpY2F0aW9uQ2FjaGVHcm91cDo6QXBwbGljYXRpb25DYWNoZUdyb3VwKTogTW92ZWQgbW9zdAor
ICAgICAgICBtZW1iZXIgaW5pdGlhbGl6YXRpb24gdG8gdGhlIGNsYXNzIGRlZmluaXRpb24uCisg
ICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6On5BcHBsaWNhdGlvbkNhY2hl
R3JvdXApOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25D
YWNoZUdyb3VwOjpjYWNoZUZvck1haW5SZXF1ZXN0KTogUmVtb3ZlZAorICAgICAgICB1bm5lY2Vz
c2FyeSBwcmVmbGlnaHQgZm9yIHJlbW92ZUZyYWdtZW50SWRlbnRpZmllciwgd2hpY2ggZWZmaWNp
ZW50bHkKKyAgICAgICAgZG9lcyBub3RoaW5nIGlmIHRoZXJlIGlzIG5vIGlkZW50aWZpZXIuIFVz
ZSBlYXJseSByZXR1cm4uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
OmZhbGxiYWNrQ2FjaGVGb3JNYWluUmVxdWVzdCk6IE1vcmUgb2YKKyAgICAgICAgdGhlIHNhbWUu
CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVjdENhY2hlKTog
RGl0dG8sIGFsc28gdGFrZSBhIHJlZmVyZW5jZSwKKyAgICAgICAgYW5kIHVzZSBldmVudCBuYW1l
cyBpbnN0ZWFkIG9mIGEgc3BlY2lhbCBlbnVtZXJhdGlvbiB0byBwb2FzdCBldmVudHMuCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVjdENhY2hlV2l0aG91dE1h
bmlmZXN0VVJMKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3Jv
dXA6OmZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29y
ZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpmYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKTogRGl0
dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRpc2Fzc29jaWF0
ZURvY3VtZW50TG9hZGVyKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNh
Y2hlR3JvdXA6OmNhY2hlRGVzdHJveWVkKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBs
aWNhdGlvbkNhY2hlR3JvdXA6OnN0b3BMb2FkaW5nSW5GcmFtZSk6IERpdHRvLgorICAgICAgICAo
V2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZXROZXdlc3RDYWNoZSk6IFVzZSBSZWYm
JiBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJDb3JlOjpBcHBs
aWNhdGlvbkNhY2hlR3JvdXA6Om1ha2VPYnNvbGV0ZSk6IE1vcmUgb2YgdGhlIHNhbWUuCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnVwZGF0ZSk6IERpdHRvLgorICAg
ICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjphYm9ydCk6IERpdHRvLgorICAg
ICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpkaWRSZWNlaXZlUmVzcG9uc2Up
OiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZGlkRmlu
aXNoTG9hZGluZyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdy
b3VwOjpkaWRGYWlsKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hl
R3JvdXA6OmRpZEZpbmlzaExvYWRpbmdNYW5pZmVzdCk6IERpdHRvLgorICAgICAgICAoV2ViQ29y
ZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjptYW5pZmVzdE5vdEZvdW5kKTogRGl0dG8uCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNoZWNrSWZMb2FkSXNDb21wbGV0
ZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUdyb3VwOjpzdGFy
dExvYWRpbmdFbnRyeSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNo
ZUdyb3VwOjpkZWxpdmVyRGVsYXllZE1haW5SZXNvdXJjZXMpOiBVc2UgYSBtb2Rlcm4KKyAgICAg
ICAgZm9yIGxvb3AuCisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFk
ZEVudHJ5KTogVXNlIGF1dG8gYW5kIHNpbXBsaWZ5IGxvZ2ljCisgICAgICAgIGZvciBhZGRpbmcu
CisgICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFzc29jaWF0ZURvY3Vt
ZW50TG9hZGVyV2l0aENhY2hlKTogVXBkYXRlIHNpbmNlCisgICAgICAgIGZ1bmN0aW9uIHJlc3Vs
dCBpcyBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVHcm91
cDo6c2NoZWR1bGVSZWFjaGVkTWF4QXBwQ2FjaGVTaXplQ2FsbGJhY2spOgorICAgICAgICBVc2Ug
YXV0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6cG9zdExpc3Rl
bmVyVGFzayk6IFRha2UgZXZlbnQgdHlwZSBpbnN0ZWFkIG9mCisgICAgICAgIHRha2luZyBhIHNw
ZWNpYWwgZW51bWVyYXRpb24uCisgICAgICAgICogbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9u
Q2FjaGVHcm91cC5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIv
YXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUhvc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QXBw
bGljYXRpb25DYWNoZUhvc3Q6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0KTogTW92ZSBtb3N0IG1lbWJl
cgorICAgICAgICBpbml0aWFsaXphdGlvbiB0byB0aGUgY2xhc3MgZGVmaW5pdGlvbi4KKyAgICAg
ICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojp+QXBwbGljYXRpb25DYWNoZUhvc3Qp
OiBVc2UgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhvc3Q6
OnNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpB
cHBsaWNhdGlvbkNhY2hlSG9zdDo6c2VsZWN0Q2FjaGVXaXRoTWFuaWZlc3QpOiBEaXR0by4KKyAg
ICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0OjptYWluUmVzb3VyY2VEYXRhUmVj
ZWl2ZWQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojpm
YWlsZWRMb2FkaW5nTWFpblJlc291cmNlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6ZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKTogRGl0dG8uCisg
ICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWF5YmVMb2FkRmFsbGJhY2tG
b3JSZWRpcmVjdCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhv
c3Q6Om1heWJlTG9hZEZhbGxiYWNrRm9yUmVzcG9uc2UpOiBEaXR0by4KKyAgICAgICAgKFdlYkNv
cmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpjcmVhdGVGaWxlVVJMKTogRGl0dG8uCisgICAgICAg
IChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWF5YmVMb2FkU3luY2hyb25vdXNseSk6
IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhvc3Q6Om5vdGlmeURP
TUFwcGxpY2F0aW9uQ2FjaGUpOiBUYWtlIGV2ZW50CisgICAgICAgIHR5cGUgaW5zdGVhZCBvZiBz
cGVjaWFsIGVudW1lcmF0aW9uLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZUhv
c3Q6OnN0b3BMb2FkaW5nSW5GcmFtZSk6IFVzZSByZWZlcmVuY2UuCisgICAgICAgIChXZWJDb3Jl
OjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c3RvcERlZmVycmluZ0V2ZW50cyk6IFVwZGF0ZWQgdG8g
dXNlCisgICAgICAgIGV2ZW50IHR5cGVzIGluc3RlYWQgb2Ygc3BlY2lhbCBlbnVtZXJhdGlvbiBh
bmQgYWxzbyByZXBhaXJlZCBwb3NzaWJsZQorICAgICAgICBlZGdlIGNhc2Ugd2hlcmUgY29kZSBp
biBldmVudCBoYW5kbGVyIHNvbWVob3cgdHJpZ2dlcnMgYWRkaXRpb25hbCBldmVudHMuCisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlSG9zdDo6cmVzb3VyY2VMaXN0KTogUmVuYW1l
ZCBmcm9tIGZpbGxSZXNvdXJjZUxpc3QKKyAgICAgICAgYW5kIGNoYW5nZWQgdG8gcmV0dXJuIGEg
dmVjdG9yIGluc3RlYWQgb2YgcG9wdWxhdGluZyBvbmUuCisgICAgICAgIChXZWJDb3JlOjpBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6YXBwbGljYXRpb25DYWNoZUluZm8pOiBUd2VhayBjb2Rpbmcgc3R5
bGUgYSBiaXQuCisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVBcHBsaWNhdGlvbkNhY2hlRXZlbnQp
OiBGYWN0b3JlZCB0aGlzIGhlbHBlciBvdXQgb2YKKyAgICAgICAgZGlzcGF0Y2hET01FdmVudCBz
byB3ZSBjYW4gdXNlIFJlZiBpbnN0ZWFkIG9mIFJlZlB0ci4KKyAgICAgICAgKFdlYkNvcmU6OkFw
cGxpY2F0aW9uQ2FjaGVIb3N0OjpkaXNwYXRjaERPTUV2ZW50KTogVXBkYXRlZCB0byByZWNlbnQg
ZXZlbnQgdHlwZQorICAgICAgICByYXRoZXIgdGhhbiByZWNlaXZpbmcgYW4gZXZlbnQgaWQgYW5k
IG1hcHBpbmcgaXQgdG8gYSB0eXBlLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNo
ZUhvc3Q6OnNldEFwcGxpY2F0aW9uQ2FjaGUpOiBUYWtlIFJlZlB0ciYmIGluc3RlYWQgb2YKKyAg
ICAgICAgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVIb3N0
Ojp1cGRhdGUpOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRp
b25DYWNoZUhvc3Q6OnN3YXBDYWNoZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGlj
YXRpb25DYWNoZUhvc3Q6OmFib3J0KTogRGl0dG8uCisgICAgICAgICogbG9hZGVyL2FwcGNhY2hl
L0FwcGxpY2F0aW9uQ2FjaGVIb3N0Lmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAg
ICAqIGxvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6bG9hZENhY2hlR3JvdXApOiBQYXNz
IGEgUmVmIGluc3RlYWQgb2YgUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25D
YWNoZVN0b3JhZ2U6OmNhY2hlR3JvdXBGb3JVUkwpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6
OkFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpmYWxsYmFja0NhY2hlR3JvdXBGb3JVUkwpOiBEaXR0
by4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpjYWNoZUdyb3Vw
RGVzdHJveWVkKTogVGFrZSBhIHJlZmVyZW5jZS4KKyAgICAgICAgKFdlYkNvcmU6OkFwcGxpY2F0
aW9uQ2FjaGVTdG9yYWdlOjpjYWNoZUdyb3VwTWFkZU9ic29sZXRlKTogRGl0dG8uCisgICAgICAg
IChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6c3RvcmVOZXdlc3RDYWNoZSk6IERp
dHRvLgorICAgICAgICAoV2ViQ29yZTo6QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmxvYWRDYWNo
ZSk6IFJldHVybiBSZWZQdHIgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29y
ZTo6QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmRlbGV0ZUNhY2hlR3JvdXApOiBQYXNzIGEgcmVm
ZXJlbmNlLgorICAgICAgICAqIGxvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFn
ZS5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIvYXBwY2FjaGUv
RE9NQXBwbGljYXRpb25DYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpET01BcHBsaWNhdGlv
bkNhY2hlOjpET01BcHBsaWNhdGlvbkNhY2hlKTogVGFrZSBhIHJlZmVyZW5jZS4KKyAgICAgICAg
KFdlYkNvcmU6OkRPTUFwcGxpY2F0aW9uQ2FjaGU6OnRvRXZlbnRUeXBlKTogRGVsZXRlZC4KKyAg
ICAgICAgKiBsb2FkZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25DYWNoZS5oOiBVcGRhdGVkIGZv
ciB0aGUgYWJvdmUuIE1hZGUgbW9zdAorICAgICAgICBtZW1iZXJzIHByaXZhdGUuCisKKyAgICAg
ICAgKiBsb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFyY2hp
dmU6OmNsZWFyQWxsU3ViZnJhbWVBcmNoaXZlcyk6IFVzZSBhIHNldCBmb3IgdGhlIGxvZ2ljIHRo
YXQKKyAgICAgICAgcHJldmVudHMgdXMgZnJvbSB3YWxraW5nIHRoZSBzYW1lIGFyY2hpdmUgbW9y
ZSB0aGFuIG9uY2UsIHJhdGhlciB0aGFuIHVzaW5nCisgICAgICAgIGEgdmVjdG9yLiBMZWZ0IGl0
IHJlY3Vyc2l2ZSwgdGhvdWdoLgorICAgICAgICAqIGxvYWRlci9hcmNoaXZlL0FyY2hpdmUuaDog
R2l0IHJpZCBvZiB0aGUgdHlwZSBmdW5jdGlvbiwgcmVwbGFjaW5nIGl0IHdpdGgKKyAgICAgICAg
dGhyZWUgZnVuY3Rpb25zIGZvciB0aGUgZm91ciBkaWZmZXJlbnQgcG9saWNpZXMgd2UgY3VycmVu
dGx5IGhhdmUgYWJvdXQgdGhlCisgICAgICAgIGRpZmZlcmVudCBhcmNoaXZlIHR5cGVzLiBDaGFu
Z2VkIGZ1bmN0aW9ucyB0byB0YWtlIFJlZiYmIGluc3RlYWQgb2YgUGFzc1JlZlB0cgorICAgICAg
ICBhbmQgcmV0dXJuIGNvbnN0IFZlY3RvcjxSZWY+JiBpbnN0ZWFkIG9mIGNvbnN0IFZlY3RvcjxS
ZWZQdHI+JiwgY2hhbmdpbmcgdGhlCisgICAgICAgIGRhdGEgbWVtYmVycyB0byBtYXRjaC4KKwor
ICAgICAgICAqIGxvYWRlci9hcmNoaXZlL0FyY2hpdmVGYWN0b3J5LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OmNyZWF0ZUFyY2hpdmVNSU1FVHlwZXNNYXApOiBGYWN0b3JlZCB0aGlzIG91dCBvZiB0
aGUgYXJjaGl2ZU1JTUVUeXBlcworICAgICAgICBmdW5jdGlvbiBzbyB3ZSBkb24ndCBuZWVkIGEg
Ym9vbGVhbi4gQWxzbyB1c2UgQVNDSUlMaXRlcmFsLgorICAgICAgICAoV2ViQ29yZTo6YXJjaGl2
ZU1JTUVUeXBlcyk6IFVwZGF0ZWQgdG8gc2UgdGhlIGFib3ZlLgorCisgICAgICAgICogbG9hZGVy
L2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uOjphZGRBbGxSZXNvdXJjZXMpOiBUYWtlIGEgcmVm
ZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6QXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbjo6cG9w
U3ViZnJhbWVBcmNoaXZlKTogUmV0dXJuIFJlZlB0ciBpbnN0ZWFkCisgICAgICAgIG9mIFBhc3NS
ZWZQdHIuCisgICAgICAgICogbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlv
bi5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisKKyAgICAgICAgKiBsb2FkZXIvYXJjaGl2ZS9j
Zi9MZWdhY3lXZWJBcmNoaXZlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hp
dmU6OmNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKTogVXNlIGF1dG8gYW5kCisgICAg
ICAgIGZld2VyIGxvY2FsIHZhcmlhYmxlcywgbW9yZSByZWZlcmVuY2VzIGZvciBhcmd1bWVudCB0
eXBlcyBhbmQgcmV0dXJuIHZhbHVlcy4KKyAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hp
dmU6OmNyZWF0ZVJlc291cmNlUmVzcG9uc2VGcm9tUHJvcGVydHlMaXN0RGF0YSk6IERpdHRvLgor
ICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlUmVzb3VyY2UpOiBEaXR0
by4KKyAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZSk6IERpdHRvLgor
ICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6ZXh0cmFjdCk6IERpdHRvLgorICAg
ICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6dHlwZSk6IERlbGV0ZWQuCisgICAgICAg
IChXZWJDb3JlOjpMZWdhY3lXZWJBcmNoaXZlOjpyYXdEYXRhUmVwcmVzZW50YXRpb24pOiBNb3Jl
IG9mIHRoZSBzYW1lLgorICAgICAgICAoV2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRl
RnJvbVNlbGVjdGlvbik6IERpdHRvLgorICAgICAgICAqIGxvYWRlci9hcmNoaXZlL2NmL0xlZ2Fj
eVdlYkFyY2hpdmUuaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLiBBbHNvIG1hcmtlZCB0aGUKKyAg
ICAgICAgY2xhc3MgZmluYWwgYW5kIGFkZGVkIG92ZXJyaWRlcyBmb3IgdGhlIGZvdXIgbmV3IHBv
bGljeSBtZW1iZXIgZnVuY3Rpb25zLgorCisgICAgICAgICogbG9hZGVyL2FyY2hpdmUvbWh0bWwv
TUhUTUxBcmNoaXZlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1IVE1MQXJjaGl2ZTo6Y3JlYXRl
KTogUGFzcyByZWZlcmVuY2VzLgorICAgICAgICAoV2ViQ29yZTo6TUhUTUxBcmNoaXZlOjpnZW5l
cmF0ZU1IVE1MRGF0YSk6IFJldHVybiBSZWZQdHIgaW5zdGVhZCBvZgorICAgICAgICBQYXNzUmVm
UHRyLgorICAgICAgICAqIGxvYWRlci9hcmNoaXZlL21odG1sL01IVE1MQXJjaGl2ZS5oOiBVcGRh
dGVkIGZvciB0aGUgYWJvdmUuIEFsc28gbWFya2VkIHRoZQorICAgICAgICBjbGFzcyBmaW5hbCBh
bmQgYWRkZWQgb3ZlcnJpZGVzIGZvciB0aGUgZm91ciBuZXcgcG9saWN5IG1lbWJlciBmdW5jdGlv
bnMuCisKKyAgICAgICAgKiBsb2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRNTFBhcnNlci5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpNSFRNTFBhcnNlcjo6cGFyc2VBcmNoaXZlV2l0aEhlYWRlcik6IFBh
c3MgUmVmIGluc3RlYWQgb2YgUmVmUHRyCisgICAgICAgIHRvIHNldE1haW5SZXNvdXJjZSBhbmQg
YWRkU3ViZnJhbWVBcmNoaXZlLgorICAgICAgICAoV2ViQ29yZTo6TUhUTUxQYXJzZXI6OmFkZFJl
c291cmNlVG9BcmNoaXZlKTogRGl0dG8uCisKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVk
Q1NTU3R5bGVTaGVldC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRDU1NTdHlsZVNoZWV0
OjpyZXN0b3JlUGFyc2VkU3R5bGVTaGVldCk6IFJldHVybiBSZWZQdHIgaW5zdGVhZAorICAgICAg
ICBvZiBQYXNzUmVmUHRyLgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNo
ZWV0Lmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIGxvYWRlci9jYWNoZS9D
YWNoZWRSZXNvdXJjZVJlcXVlc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3Vy
Y2VSZXF1ZXN0OjpzZXRJbml0aWF0b3IpOiBUYWtlIGEgcmVmZXJlbmNlIGluc3RlYWQgb2YgYQor
ICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJj
ZVJlcXVlc3QuaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLgorCisgICAgICAgICogbG9hZGVyL2Nv
Y29hL0Rpc2tDYWNoZU1vbml0b3IuaDogUmVtb3ZlZC4gVGhpcyBpcyBhIGR1cGxpY2F0ZSwgdW51
c2VkIGNvcHkKKyAgICAgICAgb2YgRGlza0NhY2hlTW9uaXRvckNvY29hLmguCisKKyAgICAgICAg
KiBsb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvckNvY29hLmg6IFJlbW92ZWQgdW5uZWVkZWQg
ZXhwb3J0aW5nIGFuZCB2aXJ0dWFsCisgICAgICAgIG1lbWJlciBmdW5jdGlvbnMsIG1hZGUgbW9y
ZSB0aGluZ3MgcHJpdmF0ZSwgYW5kIGNoYW5nZWQgcmV0dXJuIHR5cGUgdG8gUmVmUHRyCisgICAg
ICAgIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKiBsb2FkZXIvY29jb2EvRGlza0Nh
Y2hlTW9uaXRvckNvY29hLm1tOgorICAgICAgICAoV2ViQ29yZTo6RGlza0NhY2hlTW9uaXRvcjo6
dHJ5R2V0RmlsZUJhY2tlZFNoYXJlZEJ1ZmZlckZyb21DRlVSTENhY2hlZFJlc3BvbnNlKToKKyAg
ICAgICAgQ2hhbmdlZCByZXR1cm4gdHlwZSB0byBSZWZQdHIgaW5zdGVhZCBvZiBQYXNzUmVmUHRy
LgorCisgICAgICAgICogbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6Okljb25EYXRhYmFzZTo6c2V0SWNvbkRhdGFGb3JJY29uVVJMKTogVGFrZSByYXcgcG9p
bnRlciBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJDb3JlOjpJ
Y29uRGF0YWJhc2U6OmdldE9yQ3JlYXRlSWNvblJlY29yZCk6IFJldHVybiBSZWYgaW5zdGVhZCBv
ZiBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViQ29yZTo6SWNvbkRhdGFiYXNlOjpnZXRJbWFnZURh
dGFGb3JJY29uVVJMRnJvbVNRTERhdGFiYXNlKTogUmV0dXJuIFJlZlB0cgorICAgICAgICBpbnN0
ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgICogbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmg6
IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4gQWxzbyBtYXJrZWQgZnVuY3Rpb25zIGZpbmFsCisgICAg
ICAgIGluc3RlYWQgb2Ygb3ZlcnJpZGUuCisgICAgICAgICogbG9hZGVyL2ljb24vSWNvbkRhdGFi
YXNlQmFzZS5oOiBEaXR0by4KKworICAgICAgICAqIGxvYWRlci9pY29uL1BhZ2VVUkxSZWNvcmQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6UGFnZVVSTFJlY29yZDo6UGFnZVVSTFJlY29yZCk6IE1v
dmVkIGluaXRpYWxpemF0aW9uIHRvIHRoZSBoZWFkZXIuCisgICAgICAgIChXZWJDb3JlOjpQYWdl
VVJMUmVjb3JkOjp+UGFnZVVSTFJlY29yZCk6IFdyb3RlIGNvZGUgaGVyZSBpbnN0ZWFkIG9mIGNh
bGxpbmcKKyAgICAgICAgc2V0SWNvblJlY29yZChudWxscHRyKS4KKyAgICAgICAgKFdlYkNvcmU6
OlBhZ2VVUkxSZWNvcmQ6OnNldEljb25SZWNvcmQpOiBUYWtlIFJlZlB0ciYmIGluc3RlYWQgb2Yg
UGFzc1JlZlB0ci4KKyAgICAgICAgKiBsb2FkZXIvaWNvbi9QYWdlVVJMUmVjb3JkLmg6IFVwZGF0
ZCBmb3IgdGhlIGFib3ZlLgorCisgICAgICAgICogcGFnZS9DaHJvbWUuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6Q2hyb21lOjpydW5PcGVuUGFuZWwpOiBVcGRhdGVkIHRvIHRha2UgdHdvIHJlZmVy
ZW5jZXMuCisgICAgICAgICogcGFnZS9DaHJvbWUuaDogRGl0dG8uCisgICAgICAgICogcGFnZS9D
aHJvbWVDbGllbnQuaDogZGl0dG8uCisKKyAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpET01XaW5kb3c6OmFwcGxpY2F0aW9uQ2FjaGUpOiBQYXNzIGEgcmVm
ZXJlbmNlLgorICAgICAgICAoV2ViQ29yZTo6RE9NV2luZG93OjpzZXRMb2NhdGlvbik6IERpdHRv
LgorICAgICAgICAoV2ViQ29yZTo6RE9NV2luZG93OjpjcmVhdGVXaW5kb3cpOiBEaXR0by4KKyAg
ICAgICAgKFdlYkNvcmU6OkRPTVdpbmRvdzo6b3Blbik6IERpdHRvLgorCisgICAgICAgICogcGFn
ZS9FZGl0b3JDbGllbnQuaDogQ2hhbmdlZCBhcmd1bWVudHMgdG8gcmVmZXJlbmNlcyBpbnN0ZWFk
IG9mIFBhc3NSZWZQdHIuCisKKyAgICAgICAgKiBwYWdlL0hpc3RvcnkuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SGlzdG9yeTo6c3RhdGVPYmplY3RBZGRlZCk6IFBhc3MgYW4gcnZhbHVlIHJlZmVy
ZW5jZS4KKworICAgICAgICAqIHBhZ2UvTG9jYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6
TG9jYXRpb246OnJlbG9hZCk6IFBhc3MgcmVmZXJlbmNlIGluc3RlYWQgb2YgcG9pbnRlci4KKyAg
ICAgICAgKFdlYkNvcmU6OkxvY2F0aW9uOjpzZXRMb2NhdGlvbik6IERpdHRvLgorCisgICAgICAg
ICogcGxhdGZvcm0vVVJMLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlVSTDo6c2V0RnJhZ21lbnRJ
ZGVudGlmaWVyKTogVGFrZSBhIFN0cmluZ1ZpZXcgcmF0aGVyIHRoYW4KKyAgICAgICAgYSBTdHJp
bmcsIHdoaWNoIGlzIG1vcmUgZmxleGlibGUgZm9yIGNhbGxlcnMuIEFsc28gZWxpbWluYXRlZCBh
biB1bm5lZWRlZAorICAgICAgICBzdHJpbmcgYWxsb2NhdGlvbiB3aGVuIHRoZSBvbGQgc3RyaW5n
IGhhZCBhIGZyYWdtZW50IHRoYXQgaXMgYmVpbmcgcmVwbGFjZWQuCisgICAgICAgICogcGxhdGZv
cm0vVVJMLmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4KKworICAgICAgICAqIHJlcGxheS9SZXBs
YXlJbnB1dERpc3BhdGNoTWV0aG9kcy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbml0aWFsTmF2
aWdhdGlvbjo6ZGlzcGF0Y2gpOiBQYXNzIHJlZmVyZW5jZS4KKyAgICAgICAgKiBzdmcvU1ZHRkVJ
bWFnZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZHRkVJbWFnZUVsZW1lbnQ6OnJl
cXVlc3RJbWFnZVJlc291cmNlKTogRGl0dG8uCisgICAgICAgICogc3ZnL1NWR0ZvbnRGYWNlVXJp
RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdGb250RmFjZVVyaUVsZW1lbnQ6Omxv
YWRGb250KTogRGl0dG8uCisgICAgICAgICogc3ZnL1NWR1VzZUVsZW1lbnQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6U1ZHVXNlRWxlbWVudDo6dXBkYXRlRXh0ZXJuYWxEb2N1bWVudCk6IERpdHRv
LgorCiAyMDE3LTAxLTE3ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAg
ICAgVW5yZXZpZXdlZCwgZml4IG5pdHMgZm91bmQgYWZ0ZXIgbGFuZGluZyByMjEwODMzLgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9pb3MvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9pb3Mv
Q2hhbmdlTG9nCmluZGV4IDYxZTg0MjdmODZjMGI5ZjYyNDM1NmIwNzFkOTFlMTFiYjcyNzFhOWUu
LjkyZWQ0NTZlODQyMDc1NWRhY2RkNmNkMmZjMGJiMTMyNjliOTQyYjQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvaW9zL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L2lvcy9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxNSBAQAorMjAxNy0wMS0xNSAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBs
ZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIFBhc3NSZWZQdHIgZnJvbSAibG9hZGVyIiBkaXJlY3Rv
cnkgb2YgV2ViQ29yZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTY3MDU1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnRJT1MuaDogVXBkYXRlZCBydW5P
cGVuUGFuZWwgdG8gdGFrZSByZWZlcmVuY2VzLgorICAgICAgICBNYWRlIGNsYXNzIGZpbmFsIGFu
ZCBtb3N0IGZ1bmN0aW9ucyBwcml2YXRlIGFuZCBmaW5hbC4KKyAgICAgICAgKiBXZWJDb3JlU3Vw
cG9ydC9XZWJDaHJvbWVDbGllbnRJT1MubW06CisgICAgICAgIChXZWJDaHJvbWVDbGllbnRJT1M6
OnJ1bk9wZW5QYW5lbCk6IFVwZGF0ZWQgdG8gdGFrZSByZWZlcmVuY2VzLgorCiAyMDE2LTEyLTMw
ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1vdmUgUGFzc1Jl
ZlB0ciB1c2UgZnJvbSB0aGUgImRvbSIgZGlyZWN0b3J5LCByZWxhdGVkIGNsZWFudXAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvbWFjL0No
YW5nZUxvZwppbmRleCA2NWFjMzYwNDk4ZDQyMWI5NzhkYjE3NzNkZWY1ZjcxMzY5M2VlNjkyLi5i
NTQ5ZTVhN2FhYmRlZTVjYTQ0MGEyMzVjOGQxNTFhYzY4MTZmMjcyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsOTAgQEAKKzIwMTctMDEtMTUgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUu
Y29tPgorCisgICAgICAgIFJlbW92ZSBQYXNzUmVmUHRyIGZyb20gImxvYWRlciIgZGlyZWN0b3J5
IG9mIFdlYkNvcmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE2NzA1NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgICogV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50Lmg6IFVwZGF0ZWQgZm9yIGNoYW5n
ZXMgdG8gQ2hyb21lQ2xpZW50LgorICAgICAgICBBbHNvIG1hZGUgY2xhc3MgZmluYWwgYW5kIG1v
c3QgZnVuY3Rpb25zIHByaXZhdGUgYW5kIGZpbmFsLgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0
L1dlYkNocm9tZUNsaWVudC5tbToKKyAgICAgICAgKFdlYkNocm9tZUNsaWVudDo6cnVuT3BlblBh
bmVsKTogVXBkYXRlZCB0byB0YWtlIHJlZmVyZW5jZXMuCisKKyAgICAgICAgKiBXZWJDb3JlU3Vw
cG9ydC9XZWJFZGl0b3JDbGllbnQuaDogVXBkYXRlZCBmb3IgY2hhbmdlcyB0byBFZGl0b3JDbGll
bnQuCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50Lm1tOgorICAgICAg
ICAoLVtXZWJVbmRvU3RlcCBpbml0V2l0aFVuZG9TdGVwOl0pOiBUYWtlIHJlZmVyZW5jZSBpbnN0
ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgICgrW1dlYlVuZG9TdGVwIHN0ZXBXaXRoVW5kb1N0
ZXA6XSk6IERpdHRvLgorICAgICAgICAoLVtXZWJVbmRvU3RlcCBzdGVwXSk6IFJldHVybiByZWZl
cmVuY2UgaW5zdGVhZCBvZiBwb2ludGVyLgorICAgICAgICAoLVtXZWJFZGl0b3JVbmRvVGFyZ2V0
IHVuZG9FZGl0aW5nOl0pOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuCisgICAgICAgICgtW1dlYkVk
aXRvclVuZG9UYXJnZXQgcmVkb0VkaXRpbmc6XSk6IERpdHRvLgorICAgICAgICAoV2ViRWRpdG9y
Q2xpZW50OjpyZWdpc3RlclVuZG9PclJlZG9TdGVwKTogVGFrZSByZWZlcmVuY2UgaW5zdGVhZCBv
ZgorICAgICAgICBQYXNzUmVmUHRyLgorICAgICAgICAoV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3Rl
clVuZG9TdGVwKTogRGl0dG8uCisgICAgICAgIChXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyUmVk
b1N0ZXApOiBEaXR0by4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVy
Q2xpZW50Lmg6IFVwZGF0ZWQgZm9yIGNoYW5nZXMgdG8KKyAgICAgICAgRnJhbWVMb2FkZXJDbGll
bnQsIG1hcmtlZCBmdW5jdGlvbnMgZmluYWwgaW5zdGVhZCBvZiBvdmVycmlkZS4KKyAgICAgICAg
KiBXZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5tbToKKyAgICAgICAgKFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbik6
IFRha2UKKyAgICAgICAgcG9pbnRlciBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgIChX
ZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0
aW9uKTogRGl0dG8uCisgICAgICAgIChtYWtlRm9ybUZpZWxkVmFsdWVzRGljdGlvbmFyeSk6IFRh
a2UgYSByZWZlcmVuY2UuCisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hX
aWxsU2VuZFN1Ym1pdEV2ZW50KTogVGFrZSBSZWYmJiBpbnN0ZWFkCisgICAgICAgIG9mIFBhc3NS
ZWZQdHIuCisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU3VibWl0
Rm9ybSk6IFRha2UgYSByZWZlcmVuY2UgaW5zdGVhZAorICAgICAgICBvZiBQYXNzUmVmUHRyLgor
ICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmFjdGlvbkRpY3Rpb25hcnkpOiBUYWtlIGEg
cG9pbnRlciBpbnN0ZWFkIG9mIFBhc3NSZVB0ci4KKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xp
ZW50OjpjcmVhdGVGcmFtZSk6IFRha2UgYSByZWZlcmVuY2UgaW5zdGVhZCBvZiBhIHBvaW50ZXIu
CisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlUGx1Z2luKTogRGl0dG8uCisg
ICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlSmF2YUFwcGxldFdpZGdldCk6IERp
dHRvLgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5ldHdvcmtpbmdDb250
ZXh0KTogRGl0dG8uCisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlkQ3JlYXRlUXVp
Y2tMb29rSGFuZGxlKTogUGFzcyBhIHJlZmVyZW5jZS4KKworICAgICAgICAqIFdlYkNvcmVTdXBw
b3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQuaDogVXNlIFJlZiBpbnN0ZWFkIG9mIFBhc3NS
ZWZQdHIuCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4
dC5tbTogVHdlYWsgc3R5bGUgYSBiaXQuCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJP
cGVuUGFuZWxSZXN1bHRMaXN0ZW5lci5oOiBUYWtlIGEgcmVmZXJlbmNlIGluc3RlYWQgb2YKKyAg
ICAgICAgUGFzc1JlZlB0ci4gVXNlIFJlZlB0ciBmb3IgY2xhc3MgZmllbGQuCisgICAgICAgICog
V2ViQ29yZVN1cHBvcnQvV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIubW06CisgICAgICAgICgt
W1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyIGRlYWxsb2NdKTogRGVsZXRlZC4gQ29tcGlsZXIg
d2lsbCBub3cgZG8gaXQKKyAgICAgICAgY29ycmVjdGx5IHdpdGhvdXQgdXMgZGVjbGFyaW5nIGFu
eXRoaW5nIGV4cGxpY2l0bHkuCisgICAgICAgICgtW1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVy
IGNhbmNlbF0pOiBHZXQgcmlkIG9mIGhhbmQtd3JpdHRlbiBkZXJlZiBjb2RlLAorICAgICAgICBh
bmQgbGV0IFJlZlB0ciBkbyB0aGUgd29yay4KKyAgICAgICAgKC1bV2ViT3BlblBhbmVsUmVzdWx0
TGlzdGVuZXIgY2hvb3NlRmlsZW5hbWU6XSk6IERpdHRvLgorICAgICAgICAoLVtXZWJPcGVuUGFu
ZWxSZXN1bHRMaXN0ZW5lciBjaG9vc2VGaWxlbmFtZXM6XSk6IERpdHRvLgorICAgICAgICAoLVtX
ZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lciBjaG9vc2VGaWxlbmFtZXM6ZGlzcGxheVN0cmluZzpp
Y29uSW1hZ2U6XSk6CisgICAgICAgIFJld3JvdGUgdG8gdXNlIGEgbW9kZXJuIE9iamVjdGl2ZS1D
IGZvciBsb29wLCByZXNlcnZlSW5pdGlhbENhcGFjaXR5LAorICAgICAgICBhbmQgdW5jaGVja2Vk
QXBwZW5kLgorCisgICAgICAgICogV2ViVmlldy9XZWJBcmNoaXZlLm1tOgorICAgICAgICAoLVtX
ZWJBcmNoaXZlIGluaXRXaXRoTWFpblJlc291cmNlOnN1YnJlc291cmNlczpzdWJmcmFtZUFyY2hp
dmVzOl0pOgorICAgICAgICBVcGRhdGVkIGZvciBjaGFuZ2VzIHRvIExlZ2FjeVdlYkFyY2hpdmUu
CisgICAgICAgICgtW1dlYkFyY2hpdmUgbWFpblJlc291cmNlXSk6IERpdHRvLgorICAgICAgICAo
LVtXZWJBcmNoaXZlIHN1YnJlc291cmNlc10pOiBEaXR0by4KKyAgICAgICAgKC1bV2ViQXJjaGl2
ZSBzdWJmcmFtZUFyY2hpdmVzXSk6IERpdHRvLgorCisgICAgICAgICogV2ViVmlldy9XZWJEYXRh
U291cmNlLm1tOgorICAgICAgICAoLVtXZWJEYXRhU291cmNlIF9hZGRTdWJmcmFtZUFyY2hpdmVz
Ol0pOiBVc2UgYSBtb2Rlcm4gT2JqZWN0aXZlLUMgZm9yIGxvb3AKKyAgICAgICAgaW5zdGVhZCBv
ZiBOU0VudW1lcmF0b3IuCisgICAgICAgICgtW1dlYkRhdGFTb3VyY2UgX2ZpbGVXcmFwcGVyRm9y
VVJMOl0pOiBVc2UgYXV0by4KKyAgICAgICAgKC1bV2ViRGF0YVNvdXJjZSBfZG9jdW1lbnRGcmFn
bWVudFdpdGhBcmNoaXZlOl0pOiBQYXNzIGEgcmVmZXJlbmNlLgorICAgICAgICAoLVtXZWJEYXRh
U291cmNlIG1haW5SZXNvdXJjZV0pOiBEaXR0by4KKyAgICAgICAgKC1bV2ViRGF0YVNvdXJjZSBz
dWJyZXNvdXJjZXNdKTogRGl0dG8uCisgICAgICAgICgtW1dlYkRhdGFTb3VyY2Ugc3VicmVzb3Vy
Y2VGb3JVUkw6XSk6IERpdHRvLgorICAgICAgICAoLVtXZWJEYXRhU291cmNlIGFkZFN1YnJlc291
cmNlOl0pOiBEaXR0by4KKworICAgICAgICAqIFdlYlZpZXcvV2ViUmVzb3VyY2UubW06CisgICAg
ICAgICgtW1dlYlJlc291cmNlUHJpdmF0ZSBpbml0V2l0aENvcmVSZXNvdXJjZTpdKTogVGFrZSBS
ZWYmJiBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgICgtW1dlYlJlc291cmNlUHJpdmF0
ZSBkZWFsbG9jXSk6IFJlbW92ZSBleHBsaWNpdCBkZXJlZiBzaW5jZSBSZWZQdHIgd2lsbCBub3cg
dGFrZQorICAgICAgICBjYXJlIG9mIGl0CisgICAgICAgICgtW1dlYlJlc291cmNlIGluaXRXaXRo
Q29kZXI6XSk6IFBhc3MgYSByZWZlcmVuY2UuCisgICAgICAgICgtW1dlYlJlc291cmNlIGVuY29k
ZVdpdGhDb2RlcjpdKTogVXBkYXRlZCBzaW5jZSBjb3JlUmVzb3VyY2UgaXMgbm93IFJlZlB0ci4K
KyAgICAgICAgKC1bV2ViUmVzb3VyY2UgX2luaXRXaXRoQ29yZVJlc291cmNlOl0pOiBUYWtlIFJl
ZiYmIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKC1bV2ViUmVzb3VyY2UgX2NvcmVS
ZXNvdXJjZV0pOiBSZXR1cm4gcmVmZXJlbmNlIHJhdGhlciB0aGFuIHBvaW50ZXIuCisgICAgICAg
ICgtW1dlYlJlc291cmNlIF9pbml0V2l0aERhdGE6VVJMOk1JTUVUeXBlOnRleHRFbmNvZGluZ05h
bWU6ZnJhbWVOYW1lOnJlc3BvbnNlOmNvcHlEYXRhOl0pOgorICAgICAgICBBZGRlZCBjb2RlIHRv
IGhhbmRsZSB0aGUgbnVsbCBjYXNlIGFuZCBwYXNzIGEgcmVmZXJlbmNlIHJhdGhlciB0aGFuIGEg
cG9pbnRlci4KKyAgICAgICAgKiBXZWJWaWV3L1dlYlJlc291cmNlSW50ZXJuYWwuaDogVXBkYXRl
ZCBmb3IgdGhlIGFib3ZlLgorCiAyMDE3LTAxLTE3ICBBbnRvaW5lIFF1aW50ICA8Z3Jhb3V0c0Bh
cHBsZS5jb20+CiAKICAgICAgICAgW01vZGVybiBNZWRpYSBDb250cm9sc10gVHVybiBtb2Rlcm4g
bWVkaWEgY29udHJvbHMgb24gYnkgZGVmYXVsdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC93
aW4vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC93aW4vQ2hhbmdlTG9nCmluZGV4IGNkN2Y2OGRm
NWJmNjEzM2UwMmQyMWM4ZWM2MmI5YzkyZGU1NzJlMDAuLjcwN2M2OWM5ZDMwYjAxNDIxOThjYWM4
NGQ3NDQyYWNkODYzYTdlY2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxv
ZworKysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cKQEAgLTEsMyArMSw1MCBAQAorMjAx
Ny0wMS0xNSAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3Zl
IFBhc3NSZWZQdHIgZnJvbSAibG9hZGVyIiBkaXJlY3Rvcnkgb2YgV2ViQ29yZQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY3MDU1CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBQbHVnaW5zL1BsdWdpblZp
ZXcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGx1Z2luVmlldzo6bWVkaWFDYW5TdGFydCk6IEZp
eCBjYWxsIHRvIGRpc3BhdGNoRGlkRmFpbFRvU3RhcnRQbHVnaW4KKyAgICAgICAgYnkgY2FsbGlu
ZyBpdCBkaXJlY3RseSBvbiBXZWJGcmFtZUxvYWRlckNsaWVudC4gSWYgbXkgdGhlb3J5IGlzIGNv
cnJlY3QsIHRoZSBvbGQKKyAgICAgICAgY2FsbCBoYXMgYmVlbiBicm9rZW4gYW5kIGRvaW5nIG5v
dGhpbmcgc2luY2UgcjE3Nzk0MSwgdHdvIHllYXJzIGFnbywgd2hpY2ggbWFkZQorICAgICAgICB0
aGUgYXJndW1lbnQgdHlwZXMgZGlmZmVyZW50IGJldHdlZW4gRnJhbWVMb2FkZXJDbGllbnQgYW5k
IFdlYkZyYW1lTG9hZGVyQ2xpZW50LAorICAgICAgICBsZWF2aW5nIFdlYkZyYW1lTG9hZGVyQ2xp
ZW50OjpkaXNwYXRjaERpZEZhaWxUb1N0YXJ0UGx1Z2luIGFzIGRlYWQgY29kZS4KKworICAgICAg
ICAqIFdlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHA6CisgICAgICAgIChXZWJDaHJv
bWVDbGllbnQ6OnJ1bk9wZW5QYW5lbCk6IFVwZGF0ZWQgZm9yIGNoYW5nZSB0byBDaHJvbWVDbGll
bnQuCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50Lmg6IERpdHRvLgor
CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmNwcDoKKyAgICAgICAg
KFdlYkVkaXRvclVuZG9Db21tYW5kOjpXZWJFZGl0b3JVbmRvQ29tbWFuZCk6IFRha2UgYSByZWZl
cmVuY2UgaW5zdGVhZCBvZgorICAgICAgICBhIFBhc3NSZWZQdHIuIEFsc28gdXNlIFJlZiBpbnN0
ZWFkIG9mIFJlZlB0ci4KKyAgICAgICAgKFdlYkVkaXRvckNsaWVudDo6c2hvdWxkQ2hhbmdlVHlw
aW5nU3R5bGUpOiBEZWxldGVkLiBFbXB0eSBmdW5jdGlvbiB0aGF0IHdhcworICAgICAgICBuZXZl
ciBjYWxsZWQuCisgICAgICAgIChXZWJFZGl0b3JDbGllbnQ6OndlYlZpZXdEaWRDaGFuZ2VUeXBp
bmdTdHlsZSk6IERpdHRvLgorICAgICAgICAoV2ViRWRpdG9yQ2xpZW50Ojp3ZWJWaWV3RGlkQ2hh
bmdlU2VsZWN0aW9uKTogRGl0dG8uCisgICAgICAgIChXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVy
VW5kb1N0ZXApOiAgVGFrZSByZWZlcmVuY2UgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgorICAgICAg
ICAoV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclJlZG9TdGVwKTogRGl0dG8uCisgICAgICAgICog
V2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50Lmg6IFVwZGF0ZWQgZm9yIHRoZSBhYm92ZS4g
QWxzbyBtYXJrZWQgdGhlCisgICAgICAgIGNsYXNzIGFuZCBtZW1iZXIgZnVuY3Rpb25zIGZpbmFs
IGFuZCBtYWRlIHRoZW0gYWxsIHByaXZhdGUsIHdoaWNoIHdpbGwKKyAgICAgICAgaGVscCB1cyBj
YXRjaCBpZiB0aGVyZSBhcmUgYW55IHRoYXQgZG9uJ3QgY29ycmVjdGx5IG1hdGNoIFdlYkNvcmUu
CisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHA6Cisg
ICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdX
aW5kb3dBY3Rpb24pOiBVcGRhdGVkCisgICAgICAgIGZvciBjaGFuZ2UgdG8gQ2hyb21lQ2xpZW50
LgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9y
TmF2aWdhdGlvbkFjdGlvbik6IERpdHRvLgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudCk6IERpdHRvLgorICAgICAgICAoV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0pOiBEaXR0by4KKyAgICAgICAgKFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVGcmFtZSk6IERpdHRvLiBBbHNvIG1lcmdlZCB0d28g
ZnVuY3Rpb25zIGludG8KKyAgICAgICAgb25lIGJlY2F1c2Ugb25lIHdhcyBwcml2YXRlIGFuZCBv
bmx5IGNhbGxlZCBieSB0aGUgb3RoZXIuCisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6
Y3JlYXRlUGx1Z2luKTogRGl0dG8uCisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3Jl
YXRlSmF2YUFwcGxldFdpZGdldCk6IERpdHRvLgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KTogRGl0dG8uCisgICAgICAgICogV2ViQ29yZVN1
cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaDogRGl0dG8uCisKKyAgICAgICAgKiBXZWJDb3Jl
U3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0Lmg6CisgICAgICAgIChXZWJGcmFtZU5l
dHdvcmtpbmdDb250ZXh0OjpjcmVhdGUpOiBSZXR1cm4gYSBSZWYgaW5zdGVhZCBvZiBhIFBhc3NS
ZWZQdHIuCisKIDIwMTctMDEtMTIgIEpvc2VwaCBQZWNvcmFybyAgPHBlY29yYXJvQGFwcGxlLmNv
bT4KIAogICAgICAgICBSZW1vdmUgdW5uZWNlc3NhcnkgaW5jbHVkZXMgb2YgUGFnZS5oCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VM
b2cKaW5kZXggNWRiMDU3NWYwNjRmZWUxZDQzNGY0YjM0NTFhNWQyMDk1OTc0OGQ2Zi4uY2FmMTRh
YWNiZGVjYjIwYzNlYmIzNmY0NTU1OWU4MjdjYjlmNzViMSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDEzMyBAQAorMjAxNy0wMS0xNSAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisKKyAg
ICAgICAgUmVtb3ZlIFBhc3NSZWZQdHIgZnJvbSAibG9hZGVyIiBkaXJlY3Rvcnkgb2YgV2ViQ29y
ZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY3MDU1
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBTaGFy
ZWQvQVBJV2ViQXJjaGl2ZS5oOiBVc2UgUmVmUHRyJiYgaW5zdGVhZCBvZiBQYXNzUmVmUHRyLgor
ICAgICAgICAqIFNoYXJlZC9BUElXZWJBcmNoaXZlLm1tOgorICAgICAgICAoQVBJOjpXZWJBcmNo
aXZlOjpjcmVhdGUpOiBEaXR0by4KKyAgICAgICAgKEFQSTo6V2ViQXJjaGl2ZTo6V2ViQXJjaGl2
ZSk6IERpdHRvLgorICAgICAgICAoQVBJOjpXZWJBcmNoaXZlOjpzdWJyZXNvdXJjZXMpOiBEaXR0
by4KKyAgICAgICAgKEFQSTo6V2ViQXJjaGl2ZTo6c3ViZnJhbWVBcmNoaXZlcyk6IERpdHRvLgor
CisgICAgICAgICogU2hhcmVkL1RleHRDaGVja2VyU3RhdGUuaDogSW5pdGlhbGl6ZSBkYXRhIG1l
bWJlcnMgc28gY2xhc3NlcworICAgICAgICB1c2luZyB0aGlzIHdvbid0IGhhdmUgdG8gZXhwbGlj
aXRseSBpbml0YWxpemUgdGhlbS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9XZWJJY29uRGF0YWJh
c2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJJY29uRGF0YWJhc2U6OnNldEljb25EYXRhRm9y
SWNvblVSTCk6IFBhc3MgYSByYXcKKyAgICAgICAgcG9pbnRlciB0byBXZWJDb3JlLgorCisgICAg
ICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oOiBSZW1vdmVkIGZvcndhcmQgZGVjbGFyYXRp
b24gb2YKKyAgICAgICAgU3RyaW5nUGFpclZlY3Rvciwgbm90IG5lZWRlZCBoZXJlLgorCisgICAg
ICAgICogV2ViUHJvY2Vzcy9JY29uRGF0YWJhc2UvV2ViSWNvbkRhdGFiYXNlUHJveHkuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpXZWJJY29uRGF0YWJhc2VQcm94eTo6V2ViSWNvbkRhdGFiYXNlUHJv
eHkpOiBUYWtlIGEgcmVmZXJlbmNlLgorICAgICAgICAoV2ViS2l0OjpXZWJJY29uRGF0YWJhc2VQ
cm94eTo6cmV0YWluSWNvbkZvclBhZ2VVUkwpOiBVcGRhdGVkIGZvciByZWZlcmVuY2UuCisgICAg
ICAgIChXZWJLaXQ6OldlYkljb25EYXRhYmFzZVByb3h5OjpyZWxlYXNlSWNvbkZvclBhZ2VVUkwp
OiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViSWNvbkRhdGFiYXNlUHJveHk6OnN5bmNocm9u
b3VzSWNvbkZvclBhZ2VVUkwpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViSWNvbkRhdGFi
YXNlUHJveHk6OmxvYWREZWNpc2lvbkZvckljb25VUkwpOiBEaXR0by4KKyAgICAgICAgKFdlYktp
dDo6V2ViSWNvbkRhdGFiYXNlUHJveHk6OnJlY2VpdmVkSWNvbkxvYWREZWNpc2lvbik6IERpdHRv
LgorICAgICAgICAoV2ViS2l0OjpXZWJJY29uRGF0YWJhc2VQcm94eTo6aWNvbkRhdGFGb3JJY29u
VVJMKTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkljb25EYXRhYmFzZVByb3h5OjpzZXRJ
Y29uVVJMRm9yUGFnZVVSTCk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJJY29uRGF0YWJh
c2VQcm94eTo6c2V0SWNvbkRhdGFGb3JJY29uVVJMKTogRGl0dG8uCisgICAgICAgICogV2ViUHJv
Y2Vzcy9JY29uRGF0YWJhc2UvV2ViSWNvbkRhdGFiYXNlUHJveHkuaDogVXBkYXRlZCBmb3IgdGhl
IGFib3ZlLgorICAgICAgICBNYXJrZWQgdGhlIGNsYXNzIGZpbmFsLCBtYWRlIG1vc3QgZnVuY3Rp
b25zIHByaXZhdGUgYW5kIGZpbmFsLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1
bmRsZS9JbmplY3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rpb24uY3BwOgorICAgICAgICAoV2ViS2l0
OjpJbmplY3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rpb246OkluamVjdGVkQnVuZGxlTmF2aWdhdGlv
bkFjdGlvbik6CisgICAgICAgIFJlbW92ZWQgYXNzZXJ0aW9uIHRoYXQgYSBwb2ludGVyIGlzIG5v
bi1udWxsIHNpbmNlIHRoYXQgcG9pbnRlciBpcyBub3cgYQorICAgICAgICByZWZlcmVuY2UuIExl
ZnQgdXNlIG9mIFBhc3NSZWZQdHIgaGVyZSBmb3Igbm93LnoKKworICAgICAgICAqIFdlYlByb2Nl
c3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkxv
YWRlclN0cmF0ZWd5OjpzY2hlZHVsZUxvYWQpOiBVcGRhdGVkIHNpbmNlIGFwcGxpY2F0aW9uIGNh
Y2hlCisgICAgICAgIGhvc3QgaXMgbm93IGEgcmVmZXJlbmNlIHJhdGhlciB0aG5hIGEgcG9pbnRl
ci4KKyAgICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpXZWJSZXNvdXJjZUxvYWRlcjo6d2lsbFNlbmRSZXF1ZXN0KTogRGl0
dG8uCisgICAgICAgIChXZWJLaXQ6OldlYlJlc291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9u
c2UpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViUmVzb3VyY2VMb2FkZXI6OmRpZEZhaWxS
ZXNvdXJjZUxvYWQpOiBEaXR0by4KKworICAgICAgICAqIFdlYlByb2Nlc3MvUGx1Z2lucy9QbHVn
aW5WaWV3LmNwcDoKKyAgICAgICAgKFdlYktpdDo6YnVpbGRIVFRQSGVhZGVycyk6IEdvdCByaWQg
b2YgdW5uZWVkZWQgdXNlIG9mIFN0cmluZzo6Zm9ybWF0LgorICAgICAgICAoV2ViS2l0OjpQbHVn
aW5WaWV3OjpjcmVhdGUpOiBUYWtlIGEgcmVmZXJlbmNlIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4K
KyAgICAgICAgKFdlYktpdDo6UGx1Z2luVmlldzo6UGx1Z2luVmlldyk6IERpdHRvLiBBbHNvIG1v
dmVkIG11Y2ggb2YgdGhlIGRhdGEKKyAgICAgICAgbWVtYmVyIGluaXRpYWxpemF0aW9uIHRvIHRo
ZSBjbGFzcyBkZWZpbml0aW9uLgorICAgICAgICAoV2ViS2l0OjpQbHVnaW5WaWV3OjpyZWNyZWF0
ZUFuZEluaXRpYWxpemUpOiBUYWtlIFJlZiYmIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAg
ICAgKFdlYktpdDo6UGx1Z2luVmlldzo6bWFudWFsTG9hZERpZFJlY2VpdmVSZXNwb25zZSk6IFVw
ZGF0ZWQgZm9yIGNoYW5nZSB0bworICAgICAgICBNYW51YWxTdHJlYW1TdGF0ZSBlbnVtZXJhdGlv
bi4KKyAgICAgICAgKFdlYktpdDo6UGx1Z2luVmlldzo6bWFudWFsTG9hZERpZFJlY2VpdmVEYXRh
KTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OlBsdWdpblZpZXc6Om1hbnVhbExvYWREaWRGaW5p
c2hMb2FkaW5nIERpdHRvLik6CisgICAgICAgIChXZWJLaXQ6OlBsdWdpblZpZXc6Om1hbnVhbExv
YWREaWRGYWlsKTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OlBsdWdpblZpZXc6OmxpdmVSZXNv
dXJjZURhdGEpOiBSZXR1cm4gUmVmUHRyIGluc2VhZCBvZiBQYXNzUmVmUHRyLgorICAgICAgICAo
V2ViS2l0OjpQbHVnaW5WaWV3OjpyZWRlbGl2ZXJNYW51YWxTdHJlYW0pOiBVcGRhdGVkIGZvciBN
YW51YWxTdHJlYW1TdGF0ZS4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmll
dy5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUuIEFsc28gY2hhbmdlZAorICAgICAgICBNYW51YWxT
dHJlYW1TdGF0ZSBpbnRvIGFuIGVudW0gY2xhc3MuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dl
YkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHA6IENoYW5nZWQgbV9wYWdlIHRvIGEgcmVm
ZXJlbmNlLgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6OnJ1bk9wZW5QYW5lbCk6
IFRha2UgYm90aCBhcmd1bWVudHMgYXMgcmVmZXJlbmNlcy4KKyAgICAgICAgKiBXZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oOiBVcGRhdGVkIGZvciB0aGUgYWJvdmUu
CisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5j
cHA6CisgICAgICAgIChXZWJLaXQ6OldlYkVkaXRvckNsaWVudDo6cmVnaXN0ZXJVbmRvU3RlcCk6
IFRha2UgcmVmZXJlbmNlIGluc3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYktpdDo6
V2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclJlZG9TdGVwKTogRGl0dG8uCisgICAgICAgICogV2Vi
UHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuaDogVXBkYXRlZCBmb3IgdGhl
IGFib3ZlCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9h
ZGVyQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRp
c3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKToKKyAgICAgICAgVXBkYXRlZCBm
b3IgY2hhbmdlIHRvIEZyYW1lTG9hZGVyQ2xpZW50LgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFt
ZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKTog
RGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdp
bGxTZW5kU3VibWl0RXZlbnQpOiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0pOiBEaXR0by4KKyAgICAgICAgKFdlYktp
dDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1lKTogRGl0dG8uCisgICAgICAgIChX
ZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4pOiBEaXR0by4KKyAgICAg
ICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OnJlY3JlYXRlUGx1Z2luKTogRGl0dG8u
CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0
V2lkZ2V0KTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50Ojpj
cmVhdGVOZXR3b3JraW5nQ29udGV4dCk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFt
ZUxvYWRlckNsaWVudDo6ZGlkUmVxdWVzdEF1dG9jb21wbGV0ZSk6IERpdHRvLgorICAgICAgICAq
IFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaDogVXBkYXRl
ZCBmb3IgdGhlIGFib3ZlLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9p
b3MvV2ViQ2hyb21lQ2xpZW50SU9TLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJvbWVDbGll
bnQ6OmRpZFJlY2VpdmVNb2JpbGVEb2NUeXBlKTogVXBkYXRlZCBzaW5jZSBtX3BhZ2UgaXMgYQor
ICAgICAgICByZWZlcmVuY2Ugbm93LgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6
Om9ic2VydmVkQ29udGVudENoYW5nZSk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJv
bWVDbGllbnQ6Om5vdGlmeVJldmVhbGVkU2VsZWN0aW9uQnlTY3JvbGxpbmdGcmFtZSk6IERpdHRv
LgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6OmRpZExheW91dCk6IERpdHRvLgor
ICAgICAgICAoV2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6OmRpZFN0YXJ0T3ZlcmZsb3dTY3JvbGwp
OiBEaXR0by4KKyAgICAgICAgKFdlYktpdDo6V2ViQ2hyb21lQ2xpZW50OjpkaWRFbmRPdmVyZmxv
d1Njcm9sbCk6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6Omhhc1N0
YWJsZVBhZ2VTY2FsZUZhY3Rvcik6IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJvbWVD
bGllbnQ6OnNob3dQbGF5YmFja1RhcmdldFBpY2tlcik6IERpdHRvLgorICAgICAgICAoV2ViS2l0
OjpXZWJDaHJvbWVDbGllbnQ6OmV2ZW50VGhyb3R0bGluZ0RlbGF5KTogRGl0dG8uCisgICAgICAg
IChXZWJLaXQ6OldlYkNocm9tZUNsaWVudDo6ZGV2aWNlT3JpZW50YXRpb24pOiBEaXR0by4KKwor
ICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6V2ViUGFnZTo6V2ViUGFnZSk6IFBhc3MgcmVmZXJlbmNlLgorICAgICAgICAoV2ViS2l0OjpX
ZWJQYWdlOjpjcmVhdGVQbHVnaW4pOiBSZXR1cm4gUmVmUHRyIGluc3RlYWQgb2YgUGFzc1JlZlB0
ci4KKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6ZnJvbUNvcmVQYWdlKTogVXBkYXRlZCBmb3Ig
Y2hhbmdlIHRvIFdlYkNocm9tZUNsaWVudC4KKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6c2V0
SGVhZGVyUGFnZUJhbm5lcik6IFRha2UgcG9pbnRlciBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisg
ICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnNldEZvb3RlclBhZ2VCYW5uZXIpOiBEaXR0by4KKyAg
ICAgICAgKFdlYktpdDo6V2ViUGFnZTo6c2V0QWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIp
OiBUYWtlIFJlZiYmIGluc3RlYWQgb2YKKyAgICAgICAgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdl
YktpdDo6V2ViUGFnZTo6Y3VycmVudFNlbGVjdGlvbkFzUmFuZ2UpOiBSZXR1cm4gUmVmUHRyIGlu
c3RlYWQgb2YgUGFzc1JlZlB0ci4KKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6cmFuZ2VGcm9t
RWRpdGluZ1JhbmdlKTogRGl0dG8uCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBh
Z2UuaDogVXBkYXRlZCBmb3IgdGhlIGFib3ZlLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQ
YWdlL2VmbC9XZWJQYWdlRWZsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6Y2FjaGVk
UmVzcG9uc2VEYXRhRm9yVVJMKTogUmV0dXJuIFJlZlB0ciBpbnN0ZWFkIG9mIFBhc3NSZWZQdHIu
CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL2d0ay9XZWJQYWdlR3RrLmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6V2ViUGFnZTo6Y2FjaGVkUmVzcG9uc2VEYXRhRm9yVVJMKTogRGl0dG8uCisg
ICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tOgorICAgICAgICAo
V2ViS2l0OjpXZWJQYWdlOjpjYWNoZWRSZXNwb25zZURhdGFGb3JVUkwpOiBEaXR0by4KKyAgICAg
ICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1dlYlBhZ2VNYWMubW06CisgICAgICAgIChXZWJL
aXQ6OldlYlBhZ2U6OmNhY2hlZFJlc3BvbnNlRGF0YUZvclVSTCk6IERpdHRvLgorICAgICAgICAo
V2ViS2l0OjpXZWJQYWdlOjpzZXRUb3BPdmVyaGFuZ0ltYWdlKTogVGFrZSByYXcgcG9pbnRlciBp
bnN0ZWFkIG9mIFBhc3NSZWZQdHIuCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnNldEJvdHRv
bU92ZXJoYW5nSW1hZ2UpOiBEaXR0by4KKworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUHJvY2Vz
cy5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3M6OldlYlByb2Nlc3MpOiBQYXNzIGEg
cmVmZXJlbmNlLiBNb3ZlIG1vc3QgaW5pdGlhbGl6YXRpb24gdG8KKyAgICAgICAgdGhlIGNsYXNz
IGRlZmluaXRpb24uCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmg6IFVwZGFlZCBm
b3IgdGhlIGFib3ZlLgorCiAyMDE3LTAxLTE3ICBBbnR0aSBLb2l2aXN0byAgPGFudHRpQGFwcGxl
LmNvbT4KIAogICAgICAgICBQZXJzaXN0IGRlcml2ZWQgZGF0YQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5j
cHAKaW5kZXggM2ZjNjViNWYwMmRkNjk2ZmExYzZiYzQxZjc2OTk0ZDA5ZDU1OTU2My4uNWU4ZWRi
ZWMwZTM5YjMxMzBlOTk1MTI1NTVjMDAzNWRmODVjYThiMCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvZG9tL0RvY3VtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQu
Y3BwCkBAIC0zMTM2LDcgKzMxMzYsNyBAQCB2b2lkIERvY3VtZW50Ojpwcm9jZXNzSHR0cEVxdWl2
KGNvbnN0IFN0cmluZyYgZXF1aXYsIGNvbnN0IFN0cmluZyYgY29udGVudCwgYm9vbAogICAgICAg
ICAgICAgZWxzZQogICAgICAgICAgICAgICAgIGNvbXBsZXRlZFVSTCA9IGNvbXBsZXRlVVJMKHVy
bFN0cmluZyk7CiAgICAgICAgICAgICBpZiAoIXByb3RvY29sSXNKYXZhU2NyaXB0KGNvbXBsZXRl
ZFVSTCkpCi0gICAgICAgICAgICAgICAgZnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hl
ZHVsZVJlZGlyZWN0KHRoaXMsIGRlbGF5LCBjb21wbGV0ZWRVUkwpOworICAgICAgICAgICAgICAg
IGZyYW1lLT5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVSZWRpcmVjdCgqdGhpcywgZGVs
YXksIGNvbXBsZXRlZFVSTCk7CiAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICBT
dHJpbmcgbWVzc2FnZSA9ICJSZWZ1c2VkIHRvIHJlZnJlc2ggIiArIG1fdXJsLnN0cmluZ0NlbnRl
ckVsbGlwc2l6ZWRUb0xlbmd0aCgpICsgIiB0byBhIGphdmFzY3JpcHQ6IFVSTCI7CiAgICAgICAg
ICAgICAgICAgYWRkQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZTo6U2VjdXJpdHksIE1lc3Nh
Z2VMZXZlbDo6RXJyb3IsIG1lc3NhZ2UpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRp
dGluZy9Db21wb3NpdGVFZGl0Q29tbWFuZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0Nv
bXBvc2l0ZUVkaXRDb21tYW5kLmNwcAppbmRleCBjY2U5Y2FhZWMxYTAxZWU5ZjQ4YjNhZGE1ODJh
ZmEyYTcxMWM2MTgwLi5mN2ZkNDg0OGI3ZTgzNjNlMWQ5YjAxZWEzOTc3OGFiYjViYzhkNDg1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0NvbXBvc2l0ZUVkaXRDb21tYW5kLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0NvbXBvc2l0ZUVkaXRDb21tYW5kLmNwcApA
QCAtMjM5LDcgKzIzOSw3IEBAIHZvaWQgRWRpdENvbW1hbmRDb21wb3NpdGlvbjo6dW5hcHBseSgp
CiAgICAgZm9yIChzaXplX3QgaSA9IHNpemU7IGk7IC0taSkKICAgICAgICAgbV9jb21tYW5kc1tp
IC0gMV0tPmRvVW5hcHBseSgpOwogCi0gICAgZnJhbWUtPmVkaXRvcigpLnVuYXBwbGllZEVkaXRp
bmcodGhpcyk7CisgICAgZnJhbWUtPmVkaXRvcigpLnVuYXBwbGllZEVkaXRpbmcoKnRoaXMpOwog
CiAgICAgaWYgKEFYT2JqZWN0Q2FjaGU6OmFjY2Vzc2liaWxpdHlFbmFibGVkKCkpCiAgICAgICAg
IG1fcmVwbGFjZWRUZXh0LnBvc3RUZXh0U3RhdGVDaGFuZ2VOb3RpZmljYXRpb25Gb3JVbmFwcGx5
KG1fZG9jdW1lbnQtPmV4aXN0aW5nQVhPYmplY3RDYWNoZSgpKTsKQEAgLTI2NSw3ICsyNjUsNyBA
QCB2b2lkIEVkaXRDb21tYW5kQ29tcG9zaXRpb246OnJlYXBwbHkoKQogICAgIGZvciAoYXV0byYg
Y29tbWFuZCA6IG1fY29tbWFuZHMpCiAgICAgICAgIGNvbW1hbmQtPmRvUmVhcHBseSgpOwogCi0g
ICAgZnJhbWUtPmVkaXRvcigpLnJlYXBwbGllZEVkaXRpbmcodGhpcyk7CisgICAgZnJhbWUtPmVk
aXRvcigpLnJlYXBwbGllZEVkaXRpbmcoKnRoaXMpOwogCiAgICAgaWYgKEFYT2JqZWN0Q2FjaGU6
OmFjY2Vzc2liaWxpdHlFbmFibGVkKCkpCiAgICAgICAgIG1fcmVwbGFjZWRUZXh0LnBvc3RUZXh0
U3RhdGVDaGFuZ2VOb3RpZmljYXRpb25Gb3JSZWFwcGx5KG1fZG9jdW1lbnQtPmV4aXN0aW5nQVhP
YmplY3RDYWNoZSgpKTsKQEAgLTQxNiwxNCArNDE2LDE0IEBAIEVkaXRDb21tYW5kQ29tcG9zaXRp
b24qIENvbXBvc2l0ZUVkaXRDb21tYW5kOjpjb21wb3NpdGlvbigpIGNvbnN0CiAgICAgcmV0dXJu
IG51bGxwdHI7CiB9CiAKLUVkaXRDb21tYW5kQ29tcG9zaXRpb24qIENvbXBvc2l0ZUVkaXRDb21t
YW5kOjplbnN1cmVDb21wb3NpdGlvbigpCitFZGl0Q29tbWFuZENvbXBvc2l0aW9uJiBDb21wb3Np
dGVFZGl0Q29tbWFuZDo6ZW5zdXJlQ29tcG9zaXRpb24oKQogewotICAgIENvbXBvc2l0ZUVkaXRD
b21tYW5kKiBjb21tYW5kID0gdGhpczsKLSAgICB3aGlsZSAoY29tbWFuZCAmJiBjb21tYW5kLT5w
YXJlbnQoKSkKLSAgICAgICAgY29tbWFuZCA9IGNvbW1hbmQtPnBhcmVudCgpOworICAgIGF1dG8q
IGNvbW1hbmQgPSB0aGlzOworICAgIHdoaWxlIChhdXRvKiBwYXJlbnQgPSBjb21tYW5kLT5wYXJl
bnQoKSkKKyAgICAgICAgY29tbWFuZCA9IHBhcmVudDsKICAgICBpZiAoIWNvbW1hbmQtPm1fY29t
cG9zaXRpb24pCiAgICAgICAgIGNvbW1hbmQtPm1fY29tcG9zaXRpb24gPSBFZGl0Q29tbWFuZENv
bXBvc2l0aW9uOjpjcmVhdGUoZG9jdW1lbnQoKSwgc3RhcnRpbmdTZWxlY3Rpb24oKSwgZW5kaW5n
U2VsZWN0aW9uKCksIGVkaXRpbmdBY3Rpb24oKSk7Ci0gICAgcmV0dXJuIGNvbW1hbmQtPm1fY29t
cG9zaXRpb24uZ2V0KCk7CisgICAgcmV0dXJuICpjb21tYW5kLT5tX2NvbXBvc2l0aW9uOwogfQog
CiBib29sIENvbXBvc2l0ZUVkaXRDb21tYW5kOjppc0NyZWF0ZUxpbmtDb21tYW5kKCkgY29uc3QK
QEAgLTQ2NSw3ICs0NjUsNyBAQCB2b2lkIENvbXBvc2l0ZUVkaXRDb21tYW5kOjphcHBseUNvbW1h
bmRUb0NvbXBvc2l0ZShQYXNzUmVmUHRyPEVkaXRDb21tYW5kPiBwcnBDbwogICAgIGNvbW1hbmQt
PmRvQXBwbHkoKTsKICAgICBpZiAoY29tbWFuZC0+aXNTaW1wbGVFZGl0Q29tbWFuZCgpKSB7CiAg
ICAgICAgIGNvbW1hbmQtPnNldFBhcmVudChudWxscHRyKTsKLSAgICAgICAgZW5zdXJlQ29tcG9z
aXRpb24oKS0+YXBwZW5kKHRvU2ltcGxlRWRpdENvbW1hbmQoY29tbWFuZC5nZXQoKSkpOworICAg
ICAgICBlbnN1cmVDb21wb3NpdGlvbigpLmFwcGVuZCh0b1NpbXBsZUVkaXRDb21tYW5kKGNvbW1h
bmQuZ2V0KCkpKTsKICAgICB9CiAgICAgbV9jb21tYW5kcy5hcHBlbmQoV1RGTW92ZShjb21tYW5k
KSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0NvbXBvc2l0ZUVkaXRD
b21tYW5kLmggYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0NvbXBvc2l0ZUVkaXRDb21tYW5kLmgK
aW5kZXggODVmNDE4ZjdkYjkxN2NjZjAxNDhhNmY3NGViYzM4YmViMDUwMzliMS4uMDIyMWRjOTk5
Y2NmZTZmYzU5YjE4MWE5ZmY3ODA5OWI2ZTM1ZjNiNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvZWRpdGluZy9Db21wb3NpdGVFZGl0Q29tbWFuZC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Vk
aXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuaApAQCAtMTA1LDcgKzEwNSw3IEBAIHB1YmxpYzoK
ICAgICB2b2lkIGFwcGx5KCk7CiAgICAgYm9vbCBpc0ZpcnN0Q29tbWFuZChFZGl0Q29tbWFuZCog
Y29tbWFuZCkgeyByZXR1cm4gIW1fY29tbWFuZHMuaXNFbXB0eSgpICYmIG1fY29tbWFuZHMuZmly
c3QoKSA9PSBjb21tYW5kOyB9CiAgICAgRWRpdENvbW1hbmRDb21wb3NpdGlvbiogY29tcG9zaXRp
b24oKSBjb25zdDsKLSAgICBFZGl0Q29tbWFuZENvbXBvc2l0aW9uKiBlbnN1cmVDb21wb3NpdGlv
bigpOworICAgIEVkaXRDb21tYW5kQ29tcG9zaXRpb24mIGVuc3VyZUNvbXBvc2l0aW9uKCk7CiAK
ICAgICB2aXJ0dWFsIGJvb2wgaXNDcmVhdGVMaW5rQ29tbWFuZCgpIGNvbnN0OwogICAgIHZpcnR1
YWwgYm9vbCBpc1R5cGluZ0NvbW1hbmQoKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2VkaXRpbmcvRWRpdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNw
cAppbmRleCAwOGU1MzkxNTc3ODhmYjU3MTVmYWVkOWJjZWM1ZDVmZTQzYzEyNTgyLi5mYWM2ZTY1
NWY2ZWEyNTM5MDllNmJlMGRlNGU5NDI0OGNhODBhNGNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9lZGl0aW5nL0VkaXRvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0
b3IuY3BwCkBAIC05OTYsMjMgKzk5NiwyMyBAQCBib29sIEVkaXRvcjo6d2lsbFVuYXBwbHlFZGl0
aW5nKGNvbnN0IEVkaXRDb21tYW5kQ29tcG9zaXRpb24mIGNvbXBvc2l0aW9uKSBjb25zdAogICAg
IHJldHVybiBkaXNwYXRjaEJlZm9yZUlucHV0RXZlbnRzKGNvbXBvc2l0aW9uLnN0YXJ0aW5nUm9v
dEVkaXRhYmxlRWxlbWVudCgpLCBjb21wb3NpdGlvbi5lbmRpbmdSb290RWRpdGFibGVFbGVtZW50
KCksICJoaXN0b3J5VW5kbyIpOwogfQogCi12b2lkIEVkaXRvcjo6dW5hcHBsaWVkRWRpdGluZyhQ
YXNzUmVmUHRyPEVkaXRDb21tYW5kQ29tcG9zaXRpb24+IGNtZCkKK3ZvaWQgRWRpdG9yOjp1bmFw
cGxpZWRFZGl0aW5nKEVkaXRDb21tYW5kQ29tcG9zaXRpb24mIGNvbXBvc2l0aW9uKQogewogICAg
IGRvY3VtZW50KCkudXBkYXRlTGF5b3V0KCk7CiAKLSAgICBub3RpZnlUZXh0RnJvbUNvbnRyb2xz
KGNtZC0+c3RhcnRpbmdSb290RWRpdGFibGVFbGVtZW50KCksIGNtZC0+ZW5kaW5nUm9vdEVkaXRh
YmxlRWxlbWVudCgpKTsKKyAgICBub3RpZnlUZXh0RnJvbUNvbnRyb2xzKGNvbXBvc2l0aW9uLnN0
YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCBjb21wb3NpdGlvbi5lbmRpbmdSb290RWRpdGFi
bGVFbGVtZW50KCkpOwogCi0gICAgVmlzaWJsZVNlbGVjdGlvbiBuZXdTZWxlY3Rpb24oY21kLT5z
dGFydGluZ1NlbGVjdGlvbigpKTsKKyAgICBWaXNpYmxlU2VsZWN0aW9uIG5ld1NlbGVjdGlvbihj
b21wb3NpdGlvbi5zdGFydGluZ1NlbGVjdGlvbigpKTsKICAgICBjaGFuZ2VTZWxlY3Rpb25BZnRl
ckNvbW1hbmQobmV3U2VsZWN0aW9uLCBGcmFtZVNlbGVjdGlvbjo6ZGVmYXVsdFNldFNlbGVjdGlv
bk9wdGlvbnMoKSk7Ci0gICAgZGlzcGF0Y2hJbnB1dEV2ZW50cyhjbWQtPnN0YXJ0aW5nUm9vdEVk
aXRhYmxlRWxlbWVudCgpLCBjbWQtPmVuZGluZ1Jvb3RFZGl0YWJsZUVsZW1lbnQoKSwgImhpc3Rv
cnlVbmRvIik7CisgICAgZGlzcGF0Y2hJbnB1dEV2ZW50cyhjb21wb3NpdGlvbi5zdGFydGluZ1Jv
b3RFZGl0YWJsZUVsZW1lbnQoKSwgY29tcG9zaXRpb24uZW5kaW5nUm9vdEVkaXRhYmxlRWxlbWVu
dCgpLCAiaGlzdG9yeVVuZG8iKTsKIAogICAgIHVwZGF0ZUVkaXRvclVJTm93SWZTY2hlZHVsZWQo
KTsKIAotICAgIG1fYWx0ZXJuYXRpdmVUZXh0Q29udHJvbGxlci0+cmVzcG9uZFRvVW5hcHBsaWVk
RWRpdGluZyhjbWQuZ2V0KCkpOworICAgIG1fYWx0ZXJuYXRpdmVUZXh0Q29udHJvbGxlci0+cmVz
cG9uZFRvVW5hcHBsaWVkRWRpdGluZygmY29tcG9zaXRpb24pOwogCiAgICAgbV9sYXN0RWRpdENv
bW1hbmQgPSBudWxscHRyOwotICAgIGlmIChjbGllbnQoKSkKLSAgICAgICAgY2xpZW50KCktPnJl
Z2lzdGVyUmVkb1N0ZXAoY21kKTsKKyAgICBpZiAoYXV0byogY2xpZW50ID0gdGhpcy0+Y2xpZW50
KCkpCisgICAgICAgIGNsaWVudC0+cmVnaXN0ZXJSZWRvU3RlcChjb21wb3NpdGlvbik7CiAgICAg
cmVzcG9uZFRvQ2hhbmdlZENvbnRlbnRzKG5ld1NlbGVjdGlvbik7CiB9CiAKQEAgLTEwMjEsMjEg
KzEwMjEsMjEgQEAgYm9vbCBFZGl0b3I6OndpbGxSZWFwcGx5RWRpdGluZyhjb25zdCBFZGl0Q29t
bWFuZENvbXBvc2l0aW9uJiBjb21wb3NpdGlvbikgY29uc3QKICAgICByZXR1cm4gZGlzcGF0Y2hC
ZWZvcmVJbnB1dEV2ZW50cyhjb21wb3NpdGlvbi5zdGFydGluZ1Jvb3RFZGl0YWJsZUVsZW1lbnQo
KSwgY29tcG9zaXRpb24uZW5kaW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCAiaGlzdG9yeVJlZG8i
KTsKIH0KIAotdm9pZCBFZGl0b3I6OnJlYXBwbGllZEVkaXRpbmcoUGFzc1JlZlB0cjxFZGl0Q29t
bWFuZENvbXBvc2l0aW9uPiBjbWQpCit2b2lkIEVkaXRvcjo6cmVhcHBsaWVkRWRpdGluZyhFZGl0
Q29tbWFuZENvbXBvc2l0aW9uJiBjb21wb3NpdGlvbikKIHsKICAgICBkb2N1bWVudCgpLnVwZGF0
ZUxheW91dCgpOwogCi0gICAgbm90aWZ5VGV4dEZyb21Db250cm9scyhjbWQtPnN0YXJ0aW5nUm9v
dEVkaXRhYmxlRWxlbWVudCgpLCBjbWQtPmVuZGluZ1Jvb3RFZGl0YWJsZUVsZW1lbnQoKSk7Cisg
ICAgbm90aWZ5VGV4dEZyb21Db250cm9scyhjb21wb3NpdGlvbi5zdGFydGluZ1Jvb3RFZGl0YWJs
ZUVsZW1lbnQoKSwgY29tcG9zaXRpb24uZW5kaW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpKTsKIAot
ICAgIFZpc2libGVTZWxlY3Rpb24gbmV3U2VsZWN0aW9uKGNtZC0+ZW5kaW5nU2VsZWN0aW9uKCkp
OworICAgIFZpc2libGVTZWxlY3Rpb24gbmV3U2VsZWN0aW9uKGNvbXBvc2l0aW9uLmVuZGluZ1Nl
bGVjdGlvbigpKTsKICAgICBjaGFuZ2VTZWxlY3Rpb25BZnRlckNvbW1hbmQobmV3U2VsZWN0aW9u
LCBGcmFtZVNlbGVjdGlvbjo6ZGVmYXVsdFNldFNlbGVjdGlvbk9wdGlvbnMoKSk7Ci0gICAgZGlz
cGF0Y2hJbnB1dEV2ZW50cyhjbWQtPnN0YXJ0aW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCBjbWQt
PmVuZGluZ1Jvb3RFZGl0YWJsZUVsZW1lbnQoKSwgImhpc3RvcnlSZWRvIik7CisgICAgZGlzcGF0
Y2hJbnB1dEV2ZW50cyhjb21wb3NpdGlvbi5zdGFydGluZ1Jvb3RFZGl0YWJsZUVsZW1lbnQoKSwg
Y29tcG9zaXRpb24uZW5kaW5nUm9vdEVkaXRhYmxlRWxlbWVudCgpLCAiaGlzdG9yeVJlZG8iKTsK
ICAgICAKICAgICB1cGRhdGVFZGl0b3JVSU5vd0lmU2NoZWR1bGVkKCk7CiAKICAgICBtX2xhc3RF
ZGl0Q29tbWFuZCA9IG51bGxwdHI7Ci0gICAgaWYgKGNsaWVudCgpKQotICAgICAgICBjbGllbnQo
KS0+cmVnaXN0ZXJVbmRvU3RlcChjbWQpOworICAgIGlmIChhdXRvKiBjbGllbnQgPSB0aGlzLT5j
bGllbnQoKSkKKyAgICAgICAgY2xpZW50LT5yZWdpc3RlclVuZG9TdGVwKGNvbXBvc2l0aW9uKTsK
ICAgICByZXNwb25kVG9DaGFuZ2VkQ29udGVudHMobmV3U2VsZWN0aW9uKTsKIH0KIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL2Vk
aXRpbmcvRWRpdG9yLmgKaW5kZXggMjgwMGMzMDkwN2Q0MThjMmMxNmFhYjIyYTVkYjBmNjFhZDhm
M2FkNC4uYjhlYWFkMGMzMjNkNWJhZGJiYTMxMTEyMTk4MzE4ZGZlOTIwMGFlMSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9l
ZGl0aW5nL0VkaXRvci5oCkBAIC05OSwxMCArOTksMTIgQEAgZW51bSBjbGFzcyBNYWlsQmxvY2tx
dW90ZUhhbmRsaW5nIHsKIH07CiAKICNpZiBQTEFURk9STShDT0NPQSkKKwogc3RydWN0IEZyYWdt
ZW50QW5kUmVzb3VyY2VzIHsKICAgICBSZWZQdHI8RG9jdW1lbnRGcmFnbWVudD4gZnJhZ21lbnQ7
Ci0gICAgVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+PiByZXNvdXJjZXM7CisgICAgVmVj
dG9yPFJlZjxBcmNoaXZlUmVzb3VyY2U+PiByZXNvdXJjZXM7CiB9OworCiAjZW5kaWYKIAogY2xh
c3MgRWRpdG9yIHsKQEAgLTIwNiw4ICsyMDgsOCBAQCBwdWJsaWM6CiAgICAgYm9vbCB3aWxsUmVh
cHBseUVkaXRpbmcoY29uc3QgRWRpdENvbW1hbmRDb21wb3NpdGlvbiYpIGNvbnN0OwogCiAgICAg
dm9pZCBhcHBsaWVkRWRpdGluZyhQYXNzUmVmUHRyPENvbXBvc2l0ZUVkaXRDb21tYW5kPik7Ci0g
ICAgdm9pZCB1bmFwcGxpZWRFZGl0aW5nKFBhc3NSZWZQdHI8RWRpdENvbW1hbmRDb21wb3NpdGlv
bj4pOwotICAgIHZvaWQgcmVhcHBsaWVkRWRpdGluZyhQYXNzUmVmUHRyPEVkaXRDb21tYW5kQ29t
cG9zaXRpb24+KTsKKyAgICB2b2lkIHVuYXBwbGllZEVkaXRpbmcoRWRpdENvbW1hbmRDb21wb3Np
dGlvbiYpOworICAgIHZvaWQgcmVhcHBsaWVkRWRpdGluZyhFZGl0Q29tbWFuZENvbXBvc2l0aW9u
Jik7CiAgICAgdm9pZCB1bmFwcGxpZWRTcGVsbENvcnJlY3Rpb24oY29uc3QgVmlzaWJsZVNlbGVj
dGlvbiYgc2VsZWN0aW9uT2ZDb3JyZWN0ZWQsIGNvbnN0IFN0cmluZyYgY29ycmVjdGVkLCBjb25z
dCBTdHJpbmcmIGNvcnJlY3Rpb24pOwogCiAgICAgLy8gVGhpcyBpcyBvZmYgYnkgZGVmYXVsdCwg
c2luY2UgbW9zdCBlZGl0b3JzIHdhbnQgdGhpcyBiZWhhdmlvciAob3JpZ2luYWxseSBtYXRjaGVk
IElFIGJ1dCBub3QgRmlyZWZveCkuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5n
L2NvY29hL0VkaXRvckNvY29hLm1tIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9jb2NvYS9FZGl0
b3JDb2NvYS5tbQppbmRleCA0OTVlMWY4ZTgwNjQzZmI5OWQ5YjVhOWMwNTM5N2QxMGU1NGY0ZWE0
Li40NzU0ZTc3NDA2YjNjMDBmMGRlN2NmOWQ5ZTAyNmVhZWM5NDE4ZTRlIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9lZGl0aW5nL2NvY29hL0VkaXRvckNvY29hLm1tCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2VkaXRpbmcvY29jb2EvRWRpdG9yQ29jb2EubW0KQEAgLTI4NSwxMSArMjg1LDkgQEAg
UmVmUHRyPERvY3VtZW50RnJhZ21lbnQ+IEVkaXRvcjo6Y3JlYXRlRnJhZ21lbnRBbmRBZGRSZXNv
dXJjZXMoTlNBdHRyaWJ1dGVkU3RyaW4KIAogICAgIGF1dG8gZnJhZ21lbnRBbmRSZXNvdXJjZXMg
PSBjcmVhdGVGcmFnbWVudChzdHJpbmcpOwogCi0gICAgaWYgKERvY3VtZW50TG9hZGVyKiBsb2Fk
ZXIgPSBtX2ZyYW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkpIHsKLSAgICAgICAgZm9yIChh
dXRvJiByZXNvdXJjZSA6IGZyYWdtZW50QW5kUmVzb3VyY2VzLnJlc291cmNlcykgewotICAgICAg
ICAgICAgaWYgKHJlc291cmNlKQotICAgICAgICAgICAgICAgIGxvYWRlci0+YWRkQXJjaGl2ZVJl
c291cmNlKHJlc291cmNlLnJlbGVhc2VOb25OdWxsKCkpOwotICAgICAgICB9CisgICAgaWYgKGF1
dG8qIGxvYWRlciA9IG1fZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSkgeworICAgICAg
ICBmb3IgKGF1dG8mIHJlc291cmNlIDogZnJhZ21lbnRBbmRSZXNvdXJjZXMucmVzb3VyY2VzKQor
ICAgICAgICAgICAgbG9hZGVyLT5hZGRBcmNoaXZlUmVzb3VyY2UoV1RGTW92ZShyZXNvdXJjZSkp
OwogICAgIH0KIAogICAgIGlmICh3YXNJbWFnZXNFbmFibGVkKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvZWRpdGluZy9pb3MvRWRpdG9ySU9TLm1tIGIvU291cmNlL1dlYkNvcmUvZWRpdGlu
Zy9pb3MvRWRpdG9ySU9TLm1tCmluZGV4IGM3ZWY2NWJlN2IwMWM3MzkzZTY3ODcyNjlmMmU5ZTJj
YzQxZDkyODMuLmZhZjQ0ZWJlMmNiN2JmZmNkODFjMWFlNWUzMDVlNmM4OTc5OWEzYjggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvaW9zL0VkaXRvcklPUy5tbQorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9lZGl0aW5nL2lvcy9FZGl0b3JJT1MubW0KQEAgLTI2MiwyNyArMjYyLDI1IEBA
IGJvb2wgRWRpdG9yOjpXZWJDb250ZW50UmVhZGVyOjpyZWFkV2ViQXJjaGl2ZShTaGFyZWRCdWZm
ZXIqIGJ1ZmZlcikKICAgICBpZiAoIWJ1ZmZlcikKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0g
ICAgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IGFyY2hpdmUgPSBMZWdhY3lXZWJBcmNoaXZlOjpj
cmVhdGUoVVJMKCksICpidWZmZXIpOworICAgIGF1dG8gYXJjaGl2ZSA9IExlZ2FjeVdlYkFyY2hp
dmU6OmNyZWF0ZShVUkwoKSwgKmJ1ZmZlcik7CiAgICAgaWYgKCFhcmNoaXZlKQogICAgICAgICBy
ZXR1cm4gZmFsc2U7CiAKLSAgICBSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBtYWluUmVzb3VyY2Ug
PSBhcmNoaXZlLT5tYWluUmVzb3VyY2UoKTsKKyAgICBhdXRvKiBtYWluUmVzb3VyY2UgPSBhcmNo
aXZlLT5tYWluUmVzb3VyY2UoKTsKICAgICBpZiAoIW1haW5SZXNvdXJjZSkKICAgICAgICAgcmV0
dXJuIGZhbHNlOwogCi0gICAgY29uc3QgU3RyaW5nJiB0eXBlID0gbWFpblJlc291cmNlLT5taW1l
VHlwZSgpOwotCi0gICAgaWYgKGZyYW1lLmxvYWRlcigpLmNsaWVudCgpLmNhblNob3dNSU1FVHlw
ZUFzSFRNTCh0eXBlKSkgewotICAgICAgICAvLyBGSVhNRTogVGhlIGNvZGUgaW4gY3JlYXRlRnJh
Z21lbnRBbmRBZGRSZXNvdXJjZXMgY2FsbHMgc2V0RGVmZXJzTG9hZGluZyh0cnVlKS4gRG9uJ3Qg
d2UgbmVlZCB0aGF0IGhlcmU/Ci0gICAgICAgIGlmIChEb2N1bWVudExvYWRlciogbG9hZGVyID0g
ZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSkKLSAgICAgICAgICAgIGxvYWRlci0+YWRk
QWxsQXJjaGl2ZVJlc291cmNlcyhhcmNoaXZlLmdldCgpKTsKKyAgICBhdXRvJiB0eXBlID0gbWFp
blJlc291cmNlLT5taW1lVHlwZSgpOworICAgIGlmICghZnJhbWUubG9hZGVyKCkuY2xpZW50KCku
Y2FuU2hvd01JTUVUeXBlQXNIVE1MKHR5cGUpKQorICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAg
ICAgICAgU3RyaW5nIG1hcmt1cFN0cmluZyA9IFN0cmluZzo6ZnJvbVVURjgobWFpblJlc291cmNl
LT5kYXRhKCkuZGF0YSgpLCBtYWluUmVzb3VyY2UtPmRhdGEoKS5zaXplKCkpOwotICAgICAgICBh
ZGRGcmFnbWVudChjcmVhdGVGcmFnbWVudEZyb21NYXJrdXAoKmZyYW1lLmRvY3VtZW50KCksIG1h
cmt1cFN0cmluZywgbWFpblJlc291cmNlLT51cmwoKSwgRGlzYWxsb3dTY3JpcHRpbmdBbmRQbHVn
aW5Db250ZW50KSk7Ci0gICAgICAgIHJldHVybiB0cnVlOwotICAgIH0KKyAgICAvLyBGSVhNRTog
VGhlIGNvZGUgaW4gY3JlYXRlRnJhZ21lbnRBbmRBZGRSZXNvdXJjZXMgY2FsbHMgc2V0RGVmZXJz
TG9hZGluZyh0cnVlKS4gRG9uJ3Qgd2UgbmVlZCB0aGF0IGhlcmU/CisgICAgaWYgKGF1dG8qIGxv
YWRlciA9IGZyYW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkpCisgICAgICAgIGxvYWRlci0+
YWRkQWxsQXJjaGl2ZVJlc291cmNlcygqYXJjaGl2ZSk7CiAKLSAgICByZXR1cm4gZmFsc2U7Cisg
ICAgYXV0byBtYXJrdXBTdHJpbmcgPSBTdHJpbmc6OmZyb21VVEY4KG1haW5SZXNvdXJjZS0+ZGF0
YSgpLmRhdGEoKSwgbWFpblJlc291cmNlLT5kYXRhKCkuc2l6ZSgpKTsKKyAgICBhZGRGcmFnbWVu
dChjcmVhdGVGcmFnbWVudEZyb21NYXJrdXAoKmZyYW1lLmRvY3VtZW50KCksIG1hcmt1cFN0cmlu
ZywgbWFpblJlc291cmNlLT51cmwoKSwgRGlzYWxsb3dTY3JpcHRpbmdBbmRQbHVnaW5Db250ZW50
KSk7CisgICAgcmV0dXJuIHRydWU7CiB9CiAKIGJvb2wgRWRpdG9yOjpXZWJDb250ZW50UmVhZGVy
OjpyZWFkRmlsZW5hbWVzKGNvbnN0IFZlY3RvcjxTdHJpbmc+JikKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2VkaXRpbmcvbWFjL0VkaXRvck1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL2VkaXRp
bmcvbWFjL0VkaXRvck1hYy5tbQppbmRleCA3NGRjYzI0NDFiYjJmM2U3OTAyMzkyN2MwNTRlZDNj
MTJiYmI2OTZkLi5lZGJjMDU1NWVhZDNiZDhhZGRjMGYyZjU4YTM0NDJjYjkxMWQ4YjYzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL21hYy9FZGl0b3JNYWMubW0KKysrIGIvU291
cmNlL1dlYkNvcmUvZWRpdGluZy9tYWMvRWRpdG9yTWFjLm1tCkBAIC0zMjgsNyArMzI4LDcgQEAg
Ym9vbCBFZGl0b3I6OldlYkNvbnRlbnRSZWFkZXI6OnJlYWRXZWJBcmNoaXZlKFNoYXJlZEJ1ZmZl
ciogYnVmZmVyKQogICAgIGlmICghYnVmZmVyKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAg
ICBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gYXJjaGl2ZSA9IExlZ2FjeVdlYkFyY2hpdmU6OmNy
ZWF0ZShVUkwoKSwgKmJ1ZmZlcik7CisgICAgYXV0byBhcmNoaXZlID0gTGVnYWN5V2ViQXJjaGl2
ZTo6Y3JlYXRlKFVSTCgpLCAqYnVmZmVyKTsKICAgICBpZiAoIWFyY2hpdmUpCiAgICAgICAgIHJl
dHVybiBmYWxzZTsKIApAQCAtMzQxLDcgKzM0MSw3IEBAIGJvb2wgRWRpdG9yOjpXZWJDb250ZW50
UmVhZGVyOjpyZWFkV2ViQXJjaGl2ZShTaGFyZWRCdWZmZXIqIGJ1ZmZlcikKICAgICBpZiAoZnJh
bWUubG9hZGVyKCkuY2xpZW50KCkuY2FuU2hvd01JTUVUeXBlQXNIVE1MKHR5cGUpKSB7CiAgICAg
ICAgIC8vIEZJWE1FOiBUaGUgY29kZSBpbiBjcmVhdGVGcmFnbWVudEFuZEFkZFJlc291cmNlcyBj
YWxscyBzZXREZWZlcnNMb2FkaW5nKHRydWUpLiBEb24ndCB3ZSBuZWVkIHRoYXQgaGVyZT8KICAg
ICAgICAgaWYgKERvY3VtZW50TG9hZGVyKiBsb2FkZXIgPSBmcmFtZS5sb2FkZXIoKS5kb2N1bWVu
dExvYWRlcigpKQotICAgICAgICAgICAgbG9hZGVyLT5hZGRBbGxBcmNoaXZlUmVzb3VyY2VzKGFy
Y2hpdmUuZ2V0KCkpOworICAgICAgICAgICAgbG9hZGVyLT5hZGRBbGxBcmNoaXZlUmVzb3VyY2Vz
KCphcmNoaXZlKTsKIAogICAgICAgICBTdHJpbmcgbWFya3VwU3RyaW5nID0gU3RyaW5nOjpmcm9t
VVRGOChtYWluUmVzb3VyY2UtPmRhdGEoKS5kYXRhKCksIG1haW5SZXNvdXJjZS0+ZGF0YSgpLnNp
emUoKSk7CiAgICAgICAgIGZyYWdtZW50ID0gY3JlYXRlRnJhZ21lbnRGcm9tTWFya3VwKCpmcmFt
ZS5kb2N1bWVudCgpLCBtYXJrdXBTdHJpbmcsIG1haW5SZXNvdXJjZS0+dXJsKCksIERpc2FsbG93
U2NyaXB0aW5nQW5kUGx1Z2luQ29udGVudCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9o
aXN0b3J5L1BhZ2VDYWNoZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9oaXN0b3J5L1BhZ2VDYWNoZS5j
cHAKaW5kZXggMjczOTRjNjA4NjdmMDVhY2I0NTNmM2EyNzkyYjQ5MWE4Zjc5N2Q5Mi4uM2NhNmIw
NzE4NWE2NjMwNzJjNTUyYTljMTk5YjUwZTEyMWQxZGE3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaGlzdG9yeS9QYWdlQ2FjaGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2hpc3Rvcnkv
UGFnZUNhY2hlLmNwcApAQCAtMTYyLDcgKzE2Miw3IEBAIHN0YXRpYyBib29sIGNhbkNhY2hlRnJh
bWUoRnJhbWUmIGZyYW1lLCBEaWFnbm9zdGljTG9nZ2luZ0NsaWVudCYgZGlhZ25vc3RpY0xvZ2dp
CiAgICAgfQogICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgaW52ZXN0aWdhdGluZyBjYWNoaW5nIGZy
YW1lcyB0aGF0IGhhdmUgYW4gYXNzb2NpYXRlZAogICAgIC8vIGFwcGxpY2F0aW9uIGNhY2hlLiA8
cmRhcjovL3Byb2JsZW0vNTkxNzg5OT4gdHJhY2tzIHRoYXQgd29yay4KLSAgICBpZiAoIWRvY3Vt
ZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5jYW5DYWNoZUluUGFnZUNhY2hlKCkp
IHsKKyAgICBpZiAoIWRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLmNhbkNh
Y2hlSW5QYWdlQ2FjaGUoKSkgewogICAgICAgICBQQ0xPRygiICAgLVRoZSBEb2N1bWVudExvYWRl
ciB1c2VzIGFuIGFwcGxpY2F0aW9uIGNhY2hlIik7CiAgICAgICAgIGxvZ1BhZ2VDYWNoZUZhaWx1
cmVEaWFnbm9zdGljTWVzc2FnZShkaWFnbm9zdGljTG9nZ2luZ0NsaWVudCwgRGlhZ25vc3RpY0xv
Z2dpbmdLZXlzOjphcHBsaWNhdGlvbkNhY2hlS2V5KCkpOwogICAgICAgICBpc0NhY2hlYWJsZSA9
IGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlwZS5jcHAKaW5kZXggNTdkMGRjMWM3
NjNkNjdiNmIwMjI4Yzg2MDUxM2Q3ZjFlOWM1MzYzYi4uMjhiNmMwNjYxZjRkMzEyOWIxNjc5M2Vh
ZTQxNGI3YmEyZjdjZWI2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5w
dXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0ZpbGVJbnB1dFR5cGUuY3BwCkBA
IC0xOTEsNyArMTkxLDcgQEAgdm9pZCBGaWxlSW5wdXRUeXBlOjpoYW5kbGVET01BY3RpdmF0ZUV2
ZW50KEV2ZW50JiBldmVudCkKICAgICBpZiAoIVNjcmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdV
c2VyR2VzdHVyZSgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBpZiAoQ2hyb21lKiBjaHJvbWUg
PSB0aGlzLT5jaHJvbWUoKSkgeworICAgIGlmIChhdXRvKiBjaHJvbWUgPSB0aGlzLT5jaHJvbWUo
KSkgewogICAgICAgICBGaWxlQ2hvb3NlclNldHRpbmdzIHNldHRpbmdzOwogICAgICAgICBIVE1M
SW5wdXRFbGVtZW50JiBpbnB1dCA9IGVsZW1lbnQoKTsKICAgICAgICAgc2V0dGluZ3MuYWxsb3dz
TXVsdGlwbGVGaWxlcyA9IGlucHV0Lmhhc0F0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24o
bXVsdGlwbGVBdHRyKTsKQEAgLTIwMSw5ICsyMDEsOCBAQCB2b2lkIEZpbGVJbnB1dFR5cGU6Omhh
bmRsZURPTUFjdGl2YXRlRXZlbnQoRXZlbnQmIGV2ZW50KQogI2lmIEVOQUJMRShNRURJQV9DQVBU
VVJFKQogICAgICAgICBzZXR0aW5ncy5tZWRpYUNhcHR1cmVUeXBlID0gaW5wdXQubWVkaWFDYXB0
dXJlVHlwZSgpOwogI2VuZGlmCi0KICAgICAgICAgYXBwbHlGaWxlQ2hvb3NlclNldHRpbmdzKHNl
dHRpbmdzKTsKLSAgICAgICAgY2hyb21lLT5ydW5PcGVuUGFuZWwoaW5wdXQuZG9jdW1lbnQoKS5m
cmFtZSgpLCBtX2ZpbGVDaG9vc2VyKTsKKyAgICAgICAgY2hyb21lLT5ydW5PcGVuUGFuZWwoKmlu
cHV0LmRvY3VtZW50KCkuZnJhbWUoKSwgKm1fZmlsZUNob29zZXIpOwogICAgIH0KIAogICAgIGV2
ZW50LnNldERlZmF1bHRIYW5kbGVkKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9y
bUNvbnRyb2xFbGVtZW50LmNwcAppbmRleCAyZTg3MmFhYmFlNjRiMDQ0OGQyMjE0ZTk2MmJiMTZm
NmNiZjk5MDEyLi5lYThhM2IzM2UwMDI3ODMyZDY3MGY5ZTA5ODdhY2NhOGQzNjhiYWEyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVudC5jcHAKQEAgLTg5
LDcgKzg5LDcgQEAgdm9pZCBIVE1MRm9ybUNvbnRyb2xFbGVtZW50OjpzZXRGb3JtRW5jdHlwZShj
b25zdCBTdHJpbmcmIHZhbHVlKQogCiBTdHJpbmcgSFRNTEZvcm1Db250cm9sRWxlbWVudDo6Zm9y
bU1ldGhvZCgpIGNvbnN0CiB7Ci0gICAgY29uc3QgQXRvbWljU3RyaW5nJiBmb3JtTWV0aG9kQXR0
ciA9IGF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24oZm9ybW1ldGhvZEF0dHIpOworICAg
IGF1dG8mIGZvcm1NZXRob2RBdHRyID0gYXR0cmlidXRlV2l0aG91dFN5bmNocm9uaXphdGlvbihm
b3JtbWV0aG9kQXR0cik7CiAgICAgaWYgKGZvcm1NZXRob2RBdHRyLmlzTnVsbCgpKQogICAgICAg
ICByZXR1cm4gZW1wdHlTdHJpbmcoKTsKICAgICByZXR1cm4gRm9ybVN1Ym1pc3Npb246OkF0dHJp
YnV0ZXM6Om1ldGhvZFN0cmluZyhGb3JtU3VibWlzc2lvbjo6QXR0cmlidXRlczo6cGFyc2VNZXRo
b2RUeXBlKGZvcm1NZXRob2RBdHRyKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxGb3JtRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVu
dC5jcHAKaW5kZXggNzQ3NWY2NGQyNmRlYjI1NjA5NWVkYWQ1YjFjMDZlZjBlYTVkMDJkOC4uNjQw
ZTMzZWYzYzg5NDJhYjhkZDkxMTgzMGZlNjgwZmNlY2JlZTBiZSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTEZvcm1FbGVtZW50LmNwcApAQCAtMjg5LDEyICsyODksMTEgQEAgdm9pZCBIVE1MRm9y
bUVsZW1lbnQ6OnByZXBhcmVGb3JTdWJtaXNzaW9uKEV2ZW50JiBldmVudCkKICAgICAgICAgcmV0
dXJuOwogICAgIH0KIAotICAgIFN0cmluZ1BhaXJWZWN0b3IgY29udHJvbE5hbWVzQW5kVmFsdWVz
OwotICAgIGdldFRleHRGaWVsZFZhbHVlcyhjb250cm9sTmFtZXNBbmRWYWx1ZXMpOwotICAgIGF1
dG8gZm9ybVN0YXRlID0gRm9ybVN0YXRlOjpjcmVhdGUodGhpcywgY29udHJvbE5hbWVzQW5kVmFs
dWVzLCAmZG9jdW1lbnQoKSwgTm90U3VibWl0dGVkQnlKYXZhU2NyaXB0KTsKKyAgICBhdXRvIGZv
cm1TdGF0ZSA9IEZvcm1TdGF0ZTo6Y3JlYXRlKCp0aGlzLCB0ZXh0RmllbGRWYWx1ZXMoKSwgZG9j
dW1lbnQoKSwgTm90U3VibWl0dGVkQnlKYXZhU2NyaXB0KTsKICAgICBmcmFtZS0+bG9hZGVyKCku
Y2xpZW50KCkuZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFdURk1vdmUoZm9ybVN0YXRlKSk7
CiAKICAgICBSZWY8SFRNTEZvcm1FbGVtZW50PiBwcm90ZWN0ZWRUaGlzKCp0aGlzKTsKKwogICAg
IC8vIEV2ZW50IGhhbmRsaW5nIGNhbiByZXN1bHQgaW4gbV9zaG91bGRTdWJtaXQgYmVjb21pbmcg
dHJ1ZSwgcmVnYXJkbGVzcyBvZiBkaXNwYXRjaEV2ZW50KCkgcmV0dXJuIHZhbHVlLgogICAgIGlm
IChkaXNwYXRjaEV2ZW50KEV2ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLnN1Ym1pdEV2ZW50LCB0
cnVlLCB0cnVlKSkpCiAgICAgICAgIG1fc2hvdWxkU3VibWl0ID0gdHJ1ZTsKQEAgLTMxNSwyMCAr
MzE0LDIwIEBAIHZvaWQgSFRNTEZvcm1FbGVtZW50OjpzdWJtaXRGcm9tSmF2YVNjcmlwdCgpCiAg
ICAgc3VibWl0KDAsIGZhbHNlLCBTY3JpcHRDb250cm9sbGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1
cmUoKSwgU3VibWl0dGVkQnlKYXZhU2NyaXB0KTsKIH0KIAotdm9pZCBIVE1MRm9ybUVsZW1lbnQ6
OmdldFRleHRGaWVsZFZhbHVlcyhTdHJpbmdQYWlyVmVjdG9yJiBmaWVsZE5hbWVzQW5kVmFsdWVz
KSBjb25zdAorU3RyaW5nUGFpclZlY3RvciBIVE1MRm9ybUVsZW1lbnQ6OnRleHRGaWVsZFZhbHVl
cygpIGNvbnN0CiB7Ci0gICAgQVNTRVJUX0FSRyhmaWVsZE5hbWVzQW5kVmFsdWVzLCBmaWVsZE5h
bWVzQW5kVmFsdWVzLmlzRW1wdHkoKSk7Ci0KLSAgICBmaWVsZE5hbWVzQW5kVmFsdWVzLnJlc2Vy
dmVDYXBhY2l0eShtX2Fzc29jaWF0ZWRFbGVtZW50cy5zaXplKCkpOworICAgIFN0cmluZ1BhaXJW
ZWN0b3IgcmVzdWx0OworICAgIHJlc3VsdC5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KG1fYXNzb2Np
YXRlZEVsZW1lbnRzLnNpemUoKSk7CiAgICAgZm9yIChhdXRvJiBhc3NvY2lhdGVkRWxlbWVudCA6
IG1fYXNzb2NpYXRlZEVsZW1lbnRzKSB7Ci0gICAgICAgIEhUTUxFbGVtZW50JiBlbGVtZW50ID0g
YXNzb2NpYXRlZEVsZW1lbnQtPmFzSFRNTEVsZW1lbnQoKTsKKyAgICAgICAgYXV0byYgZWxlbWVu
dCA9IGFzc29jaWF0ZWRFbGVtZW50LT5hc0hUTUxFbGVtZW50KCk7CiAgICAgICAgIGlmICghaXM8
SFRNTElucHV0RWxlbWVudD4oZWxlbWVudCkpCiAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAg
ICAgSFRNTElucHV0RWxlbWVudCYgaW5wdXQgPSBkb3duY2FzdDxIVE1MSW5wdXRFbGVtZW50Pihl
bGVtZW50KTsKKyAgICAgICAgYXV0byYgaW5wdXQgPSBkb3duY2FzdDxIVE1MSW5wdXRFbGVtZW50
PihlbGVtZW50KTsKICAgICAgICAgaWYgKCFpbnB1dC5pc1RleHRGaWVsZCgpKQogICAgICAgICAg
ICAgY29udGludWU7Ci0gICAgICAgIGZpZWxkTmFtZXNBbmRWYWx1ZXMuYXBwZW5kKHN0ZDo6bWFr
ZV9wYWlyKGlucHV0Lm5hbWUoKS5zdHJpbmcoKSwgaW5wdXQudmFsdWUoKSkpOworICAgICAgICBy
ZXN1bHQudW5jaGVja2VkQXBwZW5kKHsgaW5wdXQubmFtZSgpLnN0cmluZygpLCBpbnB1dC52YWx1
ZSgpIH0pOwogICAgIH0KKyAgICByZXR1cm4gcmVzdWx0OwogfQogCiB2b2lkIEhUTUxGb3JtRWxl
bWVudDo6c3VibWl0KEV2ZW50KiBldmVudCwgYm9vbCBhY3RpdmF0ZVN1Ym1pdEJ1dHRvbiwgYm9v
bCBwcm9jZXNzaW5nVXNlckdlc3R1cmUsIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciBmb3JtU3VibWlz
c2lvblRyaWdnZXIpCkBAIC0zNjQsOSArMzYzLDEwIEBAIHZvaWQgSFRNTEZvcm1FbGVtZW50Ojpz
dWJtaXQoRXZlbnQqIGV2ZW50LCBib29sIGFjdGl2YXRlU3VibWl0QnV0dG9uLCBib29sIHByb2Nl
CiAgICAgaWYgKG5lZWRCdXR0b25BY3RpdmF0aW9uICYmIGZpcnN0U3VjY2Vzc2Z1bFN1Ym1pdEJ1
dHRvbikKICAgICAgICAgZmlyc3RTdWNjZXNzZnVsU3VibWl0QnV0dG9uLT5zZXRBY3RpdmF0ZWRT
dWJtaXQodHJ1ZSk7CiAKLSAgICBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSA9IHByb2Nlc3NpbmdV
c2VyR2VzdHVyZSA/IExvY2tIaXN0b3J5OjpObyA6IExvY2tIaXN0b3J5OjpZZXM7Ci0gICAgUmVm
PEhUTUxGb3JtRWxlbWVudD4gcHJvdGVjdGVkVGhpcygqdGhpcyk7IC8vIEZvcm0gc3VibWlzc2lv
biBjYW4gZXhlY3V0ZSBhcmJpdGFyeSBKYXZhU2NyaXB0LgotICAgIGZyYW1lLT5sb2FkZXIoKS5z
dWJtaXRGb3JtKEZvcm1TdWJtaXNzaW9uOjpjcmVhdGUodGhpcywgbV9hdHRyaWJ1dGVzLCBldmVu
dCwgbG9ja0hpc3RvcnksIGZvcm1TdWJtaXNzaW9uVHJpZ2dlcikpOworICAgIGF1dG8gcHJvdGVj
dGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpOyAvLyBGb3JtIHN1Ym1pc3Npb24gY2FuIGV4ZWN1dGUg
YXJiaXRhcnkgSmF2YVNjcmlwdC4KKworICAgIGF1dG8gc2hvdWxkTG9ja0hpc3RvcnkgPSBwcm9j
ZXNzaW5nVXNlckdlc3R1cmUgPyBMb2NrSGlzdG9yeTo6Tm8gOiBMb2NrSGlzdG9yeTo6WWVzOwor
ICAgIGZyYW1lLT5sb2FkZXIoKS5zdWJtaXRGb3JtKEZvcm1TdWJtaXNzaW9uOjpjcmVhdGUoKnRo
aXMsIG1fYXR0cmlidXRlcywgZXZlbnQsIHNob3VsZExvY2tIaXN0b3J5LCBmb3JtU3VibWlzc2lv
blRyaWdnZXIpKTsKIAogICAgIGlmIChuZWVkQnV0dG9uQWN0aXZhdGlvbiAmJiBmaXJzdFN1Y2Nl
c3NmdWxTdWJtaXRCdXR0b24pCiAgICAgICAgIGZpcnN0U3VjY2Vzc2Z1bFN1Ym1pdEJ1dHRvbi0+
c2V0QWN0aXZhdGVkU3VibWl0KGZhbHNlKTsKQEAgLTQzOSw4ICs0MzksOCBAQCB2b2lkIEhUTUxG
b3JtRWxlbWVudDo6cmVxdWVzdEF1dG9jb21wbGV0ZSgpCiAgICAgU3RyaW5nUGFpclZlY3RvciBj
b250cm9sTmFtZXNBbmRWYWx1ZXM7CiAgICAgZ2V0VGV4dEZpZWxkVmFsdWVzKGNvbnRyb2xOYW1l
c0FuZFZhbHVlcyk7CiAKLSAgICBSZWZQdHI8Rm9ybVN0YXRlPiBmb3JtU3RhdGUgPSBGb3JtU3Rh
dGU6OmNyZWF0ZSh0aGlzLCBjb250cm9sTmFtZXNBbmRWYWx1ZXMsICZkb2N1bWVudCgpLCBTdWJt
aXR0ZWRCeUphdmFTY3JpcHQpOwotICAgIGZyYW1lLT5sb2FkZXIoKS5jbGllbnQoKS5kaWRSZXF1
ZXN0QXV0b2NvbXBsZXRlKGZvcm1TdGF0ZS5yZWxlYXNlKCkpOworICAgIGF1dG8gZm9ybVN0YXRl
ID0gRm9ybVN0YXRlOjpjcmVhdGUodGhpcywgY29udHJvbE5hbWVzQW5kVmFsdWVzLCAmZG9jdW1l
bnQoKSwgU3VibWl0dGVkQnlKYXZhU2NyaXB0KTsKKyAgICBmcmFtZS0+bG9hZGVyKCkuY2xpZW50
KCkuZGlkUmVxdWVzdEF1dG9jb21wbGV0ZShXVEZNb3ZlKGZvcm1TdGF0ZSkpOwogfQogCiB2b2lk
IEhUTUxGb3JtRWxlbWVudDo6ZmluaXNoUmVxdWVzdEF1dG9jb21wbGV0ZShBdXRvY29tcGxldGVS
ZXN1bHQgcmVzdWx0KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVs
ZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmgKaW5kZXggYmI1
MTc5ODk3NmUzZjY2NDNkOGJhNGE3NWE3YjEwM2U3MjA2MjM5Ny4uNWRlMTk1ZWI5NjE1Y2VhNjJl
NWEyMWNiZjA0OWI5NzlhYjI3MWIyNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MRm9ybUVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVu
dC5oCkBAIC0xMjgsNyArMTI4LDcgQEAgcHVibGljOgogICAgIGNvbnN0IFZlY3RvcjxGb3JtQXNz
b2NpYXRlZEVsZW1lbnQqPiYgYXNzb2NpYXRlZEVsZW1lbnRzKCkgY29uc3QgeyByZXR1cm4gbV9h
c3NvY2lhdGVkRWxlbWVudHM7IH0KICAgICBjb25zdCBWZWN0b3I8SFRNTEltYWdlRWxlbWVudCo+
JiBpbWFnZUVsZW1lbnRzKCkgY29uc3QgeyByZXR1cm4gbV9pbWFnZUVsZW1lbnRzOyB9CiAKLSAg
ICB2b2lkIGdldFRleHRGaWVsZFZhbHVlcyhTdHJpbmdQYWlyVmVjdG9yJiBmaWVsZE5hbWVzQW5k
VmFsdWVzKSBjb25zdDsKKyAgICBTdHJpbmdQYWlyVmVjdG9yIHRleHRGaWVsZFZhbHVlcygpIGNv
bnN0OwogCiAgICAgc3RhdGljIEhUTUxGb3JtRWxlbWVudCogZmluZENsb3Nlc3RGb3JtQW5jZXN0
b3IoY29uc3QgRWxlbWVudCYpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxIdG1sRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxIdG1sRWxlbWVudC5j
cHAKaW5kZXggNTg0NmY1NjQxOThhOWQ5ZmZlMDIzMmViZTE1YzFmZDUwYWYzMTljOC4uNDlmODM3
MjU0M2MxOWJkZDhhMWJjZGZkMzNjNTUzNTZmNjg2ZjU1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MSHRtbEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTEh0bWxFbGVtZW50LmNwcApAQCAtNjYsMTUgKzY2LDE1IEBAIHZvaWQgSFRNTEh0bWxFbGVt
ZW50OjppbnNlcnRlZEJ5UGFyc2VyKCkKICAgICBpZiAoIWRvY3VtZW50KCkuZnJhbWUoKSkKICAg
ICAgICAgcmV0dXJuOwogCi0gICAgRG9jdW1lbnRMb2FkZXIqIGRvY3VtZW50TG9hZGVyID0gZG9j
dW1lbnQoKS5mcmFtZSgpLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOworICAgIGF1dG8qIGRv
Y3VtZW50TG9hZGVyID0gZG9jdW1lbnQoKS5mcmFtZSgpLT5sb2FkZXIoKS5kb2N1bWVudExvYWRl
cigpOwogICAgIGlmICghZG9jdW1lbnRMb2FkZXIpCiAgICAgICAgIHJldHVybjsKIAotICAgIGNv
bnN0IEF0b21pY1N0cmluZyYgbWFuaWZlc3QgPSBhdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0
aW9uKG1hbmlmZXN0QXR0cik7CisgICAgYXV0byYgbWFuaWZlc3QgPSBhdHRyaWJ1dGVXaXRob3V0
U3luY2hyb25pemF0aW9uKG1hbmlmZXN0QXR0cik7CiAgICAgaWYgKG1hbmlmZXN0LmlzRW1wdHko
KSkKLSAgICAgICAgZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPnNlbGVj
dENhY2hlV2l0aG91dE1hbmlmZXN0KCk7CisgICAgICAgIGRvY3VtZW50TG9hZGVyLT5hcHBsaWNh
dGlvbkNhY2hlSG9zdCgpLnNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0KCk7CiAgICAgZWxzZQot
ICAgICAgICBkb2N1bWVudExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+c2VsZWN0Q2Fj
aGVXaXRoTWFuaWZlc3QoZG9jdW1lbnQoKS5jb21wbGV0ZVVSTChtYW5pZmVzdCkpOworICAgICAg
ICBkb2N1bWVudExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS5zZWxlY3RDYWNoZVdpdGhN
YW5pZmVzdChkb2N1bWVudCgpLmNvbXBsZXRlVVJMKG1hbmlmZXN0KSk7CiB9CiAKIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExpbmtFbGVtZW50LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTExpbmtFbGVtZW50LmNwcAppbmRleCBkNzc3YTM5MzcxY2NmZDhjMzNh
M2ZlODA5NjA3ZTI4OWIyZTQ5OTUxLi40OTZhZWQ2ZWJlNzU5ODRiNmIyMzExNWVlN2UzMDMwZDk4
NjhkYmUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMaW5rRWxlbWVudC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGlua0VsZW1lbnQuY3BwCkBAIC0yNjcs
NyArMjY3LDcgQEAgdm9pZCBIVE1MTGlua0VsZW1lbnQ6OnByb2Nlc3MoKQogICAgICAgICBpZiAo
IWlzQWN0aXZlKQogICAgICAgICAgICAgcHJpb3JpdHkgPSBSZXNvdXJjZUxvYWRQcmlvcml0eTo6
VmVyeUxvdzsKICAgICAgICAgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QodXJsLCBDYWNo
ZWRSZXNvdXJjZUxvYWRlcjo6ZGVmYXVsdENhY2hlZFJlc291cmNlT3B0aW9ucygpLCBwcmlvcml0
eSwgV1RGTW92ZShjaGFyc2V0KSk7Ci0gICAgICAgIHJlcXVlc3Quc2V0SW5pdGlhdG9yKHRoaXMp
OworICAgICAgICByZXF1ZXN0LnNldEluaXRpYXRvcigqdGhpcyk7CiAKICAgICAgICAgaWYgKGRv
Y3VtZW50KCkuY29udGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93U3R5bGVXaXRoTm9uY2UoYXR0
cmlidXRlV2l0aG91dFN5bmNocm9uaXphdGlvbihIVE1MTmFtZXM6Om5vbmNlQXR0cikpKSB7CiAg
ICAgICAgICAgICBSZXNvdXJjZUxvYWRlck9wdGlvbnMgb3B0aW9ucyA9IENhY2hlZFJlc291cmNl
TG9hZGVyOjpkZWZhdWx0Q2FjaGVkUmVzb3VyY2VPcHRpb25zKCk7CkBAIC0zNjcsNyArMzY3LDcg
QEAgdm9pZCBIVE1MTGlua0VsZW1lbnQ6OnNldENTU1N0eWxlU2hlZXQoY29uc3QgU3RyaW5nJiBo
cmVmLCBjb25zdCBVUkwmIGJhc2VVUkwsIGMKICAgICBDU1NQYXJzZXJDb250ZXh0IHBhcnNlckNv
bnRleHQoZG9jdW1lbnQoKSwgYmFzZVVSTCwgY2hhcnNldCk7CiAgICAgYXV0byBjYWNoZVBvbGlj
eSA9IGZyYW1lLT5sb2FkZXIoKS5zdWJyZXNvdXJjZUNhY2hlUG9saWN5KCk7CiAKLSAgICBpZiAo
UmVmUHRyPFN0eWxlU2hlZXRDb250ZW50cz4gcmVzdG9yZWRTaGVldCA9IGNvbnN0X2Nhc3Q8Q2Fj
aGVkQ1NTU3R5bGVTaGVldCo+KGNhY2hlZFN0eWxlU2hlZXQpLT5yZXN0b3JlUGFyc2VkU3R5bGVT
aGVldChwYXJzZXJDb250ZXh0LCBjYWNoZVBvbGljeSkpIHsKKyAgICBpZiAoYXV0byByZXN0b3Jl
ZFNoZWV0ID0gY29uc3RfY2FzdDxDYWNoZWRDU1NTdHlsZVNoZWV0Kj4oY2FjaGVkU3R5bGVTaGVl
dCktPnJlc3RvcmVQYXJzZWRTdHlsZVNoZWV0KHBhcnNlckNvbnRleHQsIGNhY2hlUG9saWN5KSkg
ewogICAgICAgICBBU1NFUlQocmVzdG9yZWRTaGVldC0+aXNDYWNoZWFibGUoKSk7CiAgICAgICAg
IEFTU0VSVCghcmVzdG9yZWRTaGVldC0+aXNMb2FkaW5nKCkpOwogICAgICAgICBpbml0aWFsaXpl
U3R5bGVTaGVldChyZXN0b3JlZFNoZWV0LnJlbGVhc2VOb25OdWxsKCksICpjYWNoZWRTdHlsZVNo
ZWV0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCmluZGV4IDRjN2Rj
OTcyYzVlNmFjNTY5ZTAzY2MxNGI2MjYwMGFhOTQ4NWE2ZTQuLjNmYzBjNTljNWI3YjMxNGNkNTdh
YTk4MzlkMTZiMGRhM2JiYWRkZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TE1lZGlhRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVt
ZW50LmNwcApAQCAtMTQyOCwxMSArMTQyOCw4IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6bG9h
ZFJlc291cmNlKGNvbnN0IFVSTCYgaW5pdGlhbFVSTCwgQ29udGVudFR5cGUmIGNvbnRlbnRUCiAg
ICAgfQogCiAjaWYgRU5BQkxFKENPTlRFTlRfRVhURU5TSU9OUykKLSAgICBEb2N1bWVudExvYWRl
ciogZG9jdW1lbnRMb2FkZXIgPSBmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKLQot
ICAgIGlmIChkb2N1bWVudExvYWRlcikgewotICAgICAgICBhdXRvIGJsb2NrZWRTdGF0dXMgPSBw
YWdlLT51c2VyQ29udGVudFByb3ZpZGVyKCkucHJvY2Vzc0NvbnRlbnRFeHRlbnNpb25SdWxlc0Zv
ckxvYWQodXJsLCBSZXNvdXJjZVR5cGU6Ok1lZGlhLCAqZG9jdW1lbnRMb2FkZXIpOwotICAgICAg
ICBpZiAoYmxvY2tlZFN0YXR1cy5ibG9ja2VkTG9hZCkgeworICAgIGlmIChhdXRvKiBkb2N1bWVu
dExvYWRlciA9IGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKSB7CisgICAgICAgIGlm
IChwYWdlLT51c2VyQ29udGVudFByb3ZpZGVyKCkucHJvY2Vzc0NvbnRlbnRFeHRlbnNpb25SdWxl
c0ZvckxvYWQodXJsLCBSZXNvdXJjZVR5cGU6Ok1lZGlhLCAqZG9jdW1lbnRMb2FkZXIpLmJsb2Nr
ZWRMb2FkKSB7CiAgICAgICAgICAgICBtZWRpYUxvYWRpbmdGYWlsZWQoTWVkaWFQbGF5ZXI6OkZv
cm1hdEVycm9yKTsKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgfQpAQCAtMTQ0MiwxMSAr
MTQzOSw5IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6bG9hZFJlc291cmNlKGNvbnN0IFVSTCYg
aW5pdGlhbFVSTCwgQ29udGVudFR5cGUmIGNvbnRlbnRUCiAgICAgLy8gVGhlIHJlc291cmNlIGZl
dGNoIGFsZ29yaXRobSAKICAgICBtX25ldHdvcmtTdGF0ZSA9IE5FVFdPUktfTE9BRElORzsKIAot
ICAgIC8vIElmIHRoZSB1cmwgc2hvdWxkIGJlIGxvYWRlZCBmcm9tIHRoZSBhcHBsaWNhdGlvbiBj
YWNoZSwgcGFzcyB0aGUgdXJsIG9mIHRoZSBjYWNoZWQgZmlsZQotICAgIC8vIHRvIHRoZSBtZWRp
YSBlbmdpbmUuCi0gICAgQXBwbGljYXRpb25DYWNoZUhvc3QqIGNhY2hlSG9zdCA9IGZyYW1lLT5s
b2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpOworICAgIC8v
IElmIHRoZSBVUkwgc2hvdWxkIGJlIGxvYWRlZCBmcm9tIHRoZSBhcHBsaWNhdGlvbiBjYWNoZSwg
cGFzcyB0aGUgVVJMIG9mIHRoZSBjYWNoZWQgZmlsZSB0byB0aGUgbWVkaWEgZW5naW5lLgogICAg
IEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSogcmVzb3VyY2UgPSBudWxscHRyOwotICAgIGlmIChj
YWNoZUhvc3QgJiYgY2FjaGVIb3N0LT5zaG91bGRMb2FkUmVzb3VyY2VGcm9tQXBwbGljYXRpb25D
YWNoZShSZXNvdXJjZVJlcXVlc3QodXJsKSwgcmVzb3VyY2UpKSB7CisgICAgaWYgKGZyYW1lLT5s
b2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLnNob3VsZExv
YWRSZXNvdXJjZUZyb21BcHBsaWNhdGlvbkNhY2hlKFJlc291cmNlUmVxdWVzdCh1cmwpLCByZXNv
dXJjZSkpIHsKICAgICAgICAgLy8gUmVzb3VyY2VzIHRoYXQgYXJlIG5vdCBwcmVzZW50IGluIHRo
ZSBtYW5pZmVzdCB3aWxsIGFsd2F5cyBmYWlsIHRvIGxvYWQgKGF0IGxlYXN0LCBhZnRlciB0aGUK
ICAgICAgICAgLy8gY2FjaGUgaGFzIGJlZW4gcHJpbWVkIHRoZSBmaXJzdCB0aW1lKSwgbWFraW5n
IHRoZSB0ZXN0aW5nIG9mIG9mZmxpbmUgYXBwbGljYXRpb25zIHNpbXBsZXIuCiAgICAgICAgIGlm
ICghcmVzb3VyY2UgfHwgcmVzb3VyY2UtPnBhdGgoKS5pc0VtcHR5KCkpIHsKQEAgLTE0NjAsNyAr
MTQ1NSw3IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6bG9hZFJlc291cmNlKGNvbnN0IFVSTCYg
aW5pdGlhbFVSTCwgQ29udGVudFR5cGUmIGNvbnRlbnRUCiAKICAgICBtX2ZpcnN0VGltZVBsYXlp
bmcgPSB0cnVlOwogCi0gICAgLy8gU2V0IG1fY3VycmVudFNyYyAqYmVmb3JlKiBjaGFuZ2luZyB0
byB0aGUgY2FjaGUgdXJsLCB0aGUgZmFjdCB0aGF0IHdlIGFyZSBsb2FkaW5nIGZyb20gdGhlIGFw
cAorICAgIC8vIFNldCBtX2N1cnJlbnRTcmMgKmJlZm9yZSogY2hhbmdpbmcgdG8gdGhlIGNhY2hl
IFVSTCwgdGhlIGZhY3QgdGhhdCB3ZSBhcmUgbG9hZGluZyBmcm9tIHRoZSBhcHAKICAgICAvLyBj
YWNoZSBpcyBhbiBpbnRlcm5hbCBkZXRhaWwgbm90IGV4cG9zZWQgdGhyb3VnaCB0aGUgbWVkaWEg
ZWxlbWVudCBBUEkuCiAgICAgbV9jdXJyZW50U3JjID0gdXJsOwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQu
Y3BwCmluZGV4IGZmNGZmMzFjYzE5ZjQ5MzRkMDRiMjI5N2Y3NmViOTQ1ODg0ODVkMjIuLjZlMzli
Y2RhZDBkODRmMDQyN2E5MmMyNzEwZmZjZjJmMWUwYjAwYzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQu
Y3BwCkBAIC02OCwxNiArNjgsMTcgQEAgdm9pZCBJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdl
bnQ6OmVuYWJsZShFcnJvclN0cmluZyYpCiAKIHZvaWQgSW5zcGVjdG9yQXBwbGljYXRpb25DYWNo
ZUFnZW50Ojp1cGRhdGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzKEZyYW1lKiBmcmFtZSkKIHsKLSAg
ICBEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIgPSBmcmFtZS0+bG9hZGVyKCkuZG9jdW1l
bnRMb2FkZXIoKTsKKyAgICBpZiAoIWZyYW1lKQorICAgICAgICByZXR1cm47CisgICAgYXV0byog
ZG9jdW1lbnRMb2FkZXIgPSBmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKICAgICBp
ZiAoIWRvY3VtZW50TG9hZGVyKQogICAgICAgICByZXR1cm47CiAKLSAgICBBcHBsaWNhdGlvbkNh
Y2hlSG9zdCogaG9zdCA9IGRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpOwot
ICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpTdGF0dXMgc3RhdHVzID0gaG9zdC0+c3RhdHVzKCk7
Ci0gICAgQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNhY2hlSW5mbyBpbmZvID0gaG9zdC0+YXBwbGlj
YXRpb25DYWNoZUluZm8oKTsKKyAgICBhdXRvJiBob3N0ID0gZG9jdW1lbnRMb2FkZXItPmFwcGxp
Y2F0aW9uQ2FjaGVIb3N0KCk7CisgICAgaW50IHN0YXR1cyA9IGhvc3Quc3RhdHVzKCk7CisgICAg
YXV0byBtYW5pZmVzdFVSTCA9IGhvc3QuYXBwbGljYXRpb25DYWNoZUluZm8oKS5tYW5pZmVzdC5z
dHJpbmcoKTsKIAotICAgIFN0cmluZyBtYW5pZmVzdFVSTCA9IGluZm8ubV9tYW5pZmVzdC5zdHJp
bmcoKTsKLSAgICBtX2Zyb250ZW5kRGlzcGF0Y2hlci0+YXBwbGljYXRpb25DYWNoZVN0YXR1c1Vw
ZGF0ZWQobV9wYWdlQWdlbnQtPmZyYW1lSWQoZnJhbWUpLCBtYW5pZmVzdFVSTCwgc3RhdGljX2Nh
c3Q8aW50PihzdGF0dXMpKTsKKyAgICBtX2Zyb250ZW5kRGlzcGF0Y2hlci0+YXBwbGljYXRpb25D
YWNoZVN0YXR1c1VwZGF0ZWQobV9wYWdlQWdlbnQtPmZyYW1lSWQoZnJhbWUpLCBtYW5pZmVzdFVS
TCwgc3RhdHVzKTsKIH0KIAogdm9pZCBJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6Om5l
dHdvcmtTdGF0ZUNoYW5nZWQoKQpAQCAtOTEsMjAgKzkyLDE4IEBAIHZvaWQgSW5zcGVjdG9yQXBw
bGljYXRpb25DYWNoZUFnZW50OjpnZXRGcmFtZXNXaXRoTWFuaWZlc3RzKEVycm9yU3RyaW5nJiwg
UmVmUHRyCiAgICAgcmVzdWx0ID0gSW5zcGVjdG9yOjpQcm90b2NvbDo6QXJyYXk8SW5zcGVjdG9y
OjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6RnJhbWVXaXRoTWFuaWZlc3Q+OjpjcmVhdGUo
KTsKIAogICAgIGZvciAoRnJhbWUqIGZyYW1lID0gJm1fcGFnZUFnZW50LT5tYWluRnJhbWUoKTsg
ZnJhbWU7IGZyYW1lID0gZnJhbWUtPnRyZWUoKS50cmF2ZXJzZU5leHQoKSkgewotICAgICAgICBE
b2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIgPSBmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRM
b2FkZXIoKTsKKyAgICAgICAgYXV0byogZG9jdW1lbnRMb2FkZXIgPSBmcmFtZS0+bG9hZGVyKCku
ZG9jdW1lbnRMb2FkZXIoKTsKICAgICAgICAgaWYgKCFkb2N1bWVudExvYWRlcikKICAgICAgICAg
ICAgIGNvbnRpbnVlOwogCi0gICAgICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0KiBob3N0ID0gZG9j
dW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7Ci0gICAgICAgIEFwcGxpY2F0aW9u
Q2FjaGVIb3N0OjpDYWNoZUluZm8gaW5mbyA9IGhvc3QtPmFwcGxpY2F0aW9uQ2FjaGVJbmZvKCk7
Ci0gICAgICAgIFN0cmluZyBtYW5pZmVzdFVSTCA9IGluZm8ubV9tYW5pZmVzdC5zdHJpbmcoKTsK
KyAgICAgICAgYXV0byYgaG9zdCA9IGRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9z
dCgpOworICAgICAgICBTdHJpbmcgbWFuaWZlc3RVUkwgPSBob3N0LmFwcGxpY2F0aW9uQ2FjaGVJ
bmZvKCkubWFuaWZlc3Quc3RyaW5nKCk7CiAgICAgICAgIGlmICghbWFuaWZlc3RVUkwuaXNFbXB0
eSgpKSB7Ci0gICAgICAgICAgICBSZWY8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25D
YWNoZTo6RnJhbWVXaXRoTWFuaWZlc3Q+IHZhbHVlID0gSW5zcGVjdG9yOjpQcm90b2NvbDo6QXBw
bGljYXRpb25DYWNoZTo6RnJhbWVXaXRoTWFuaWZlc3Q6OmNyZWF0ZSgpCisgICAgICAgICAgICBy
ZXN1bHQtPmFkZEl0ZW0oSW5zcGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6RnJh
bWVXaXRoTWFuaWZlc3Q6OmNyZWF0ZSgpCiAgICAgICAgICAgICAgICAgLnNldEZyYW1lSWQobV9w
YWdlQWdlbnQtPmZyYW1lSWQoZnJhbWUpKQogICAgICAgICAgICAgICAgIC5zZXRNYW5pZmVzdFVS
TChtYW5pZmVzdFVSTCkKLSAgICAgICAgICAgICAgICAuc2V0U3RhdHVzKHN0YXRpY19jYXN0PGlu
dD4oaG9zdC0+c3RhdHVzKCkpKQotICAgICAgICAgICAgICAgIC5yZWxlYXNlKCk7Ci0gICAgICAg
ICAgICByZXN1bHQtPmFkZEl0ZW0oV1RGTW92ZSh2YWx1ZSkpOworICAgICAgICAgICAgICAgIC5z
ZXRTdGF0dXMoc3RhdGljX2Nhc3Q8aW50Pihob3N0LnN0YXR1cygpKSkKKyAgICAgICAgICAgICAg
ICAucmVsZWFzZSgpKTsKICAgICAgICAgfQogICAgIH0KIH0KQEAgLTEyNCw2OCArMTIzLDYwIEBA
IHZvaWQgSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpnZXRNYW5pZmVzdEZvckZyYW1l
KEVycm9yU3RyaW5nJiBlcnJvclN0cmluCiAgICAgaWYgKCFkb2N1bWVudExvYWRlcikKICAgICAg
ICAgcmV0dXJuOwogCi0gICAgQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNhY2hlSW5mbyBpbmZvID0g
ZG9jdW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPmFwcGxpY2F0aW9uQ2FjaGVJ
bmZvKCk7Ci0gICAgKm1hbmlmZXN0VVJMID0gaW5mby5tX21hbmlmZXN0LnN0cmluZygpOworICAg
ICptYW5pZmVzdFVSTCA9IGRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLmFw
cGxpY2F0aW9uQ2FjaGVJbmZvKCkubWFuaWZlc3Quc3RyaW5nKCk7CiB9CiAKIHZvaWQgSW5zcGVj
dG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpnZXRBcHBsaWNhdGlvbkNhY2hlRm9yRnJhbWUoRXJy
b3JTdHJpbmcmIGVycm9yU3RyaW5nLCBjb25zdCBTdHJpbmcmIGZyYW1lSWQsIFJlZlB0cjxJbnNw
ZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlPiYgYXBw
bGljYXRpb25DYWNoZSkKIHsKLSAgICBEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIgPSBh
c3NlcnRGcmFtZVdpdGhEb2N1bWVudExvYWRlcihlcnJvclN0cmluZywgZnJhbWVJZCk7CisgICAg
YXV0byogZG9jdW1lbnRMb2FkZXIgPSBhc3NlcnRGcmFtZVdpdGhEb2N1bWVudExvYWRlcihlcnJv
clN0cmluZywgZnJhbWVJZCk7CiAgICAgaWYgKCFkb2N1bWVudExvYWRlcikKICAgICAgICAgcmV0
dXJuOwogCi0gICAgQXBwbGljYXRpb25DYWNoZUhvc3QqIGhvc3QgPSBkb2N1bWVudExvYWRlci0+
YXBwbGljYXRpb25DYWNoZUhvc3QoKTsKLSAgICBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q2FjaGVJ
bmZvIGluZm8gPSBob3N0LT5hcHBsaWNhdGlvbkNhY2hlSW5mbygpOwotCi0gICAgQXBwbGljYXRp
b25DYWNoZUhvc3Q6OlJlc291cmNlSW5mb0xpc3QgcmVzb3VyY2VzOwotICAgIGhvc3QtPmZpbGxS
ZXNvdXJjZUxpc3QoJnJlc291cmNlcyk7Ci0KLSAgICBhcHBsaWNhdGlvbkNhY2hlID0gYnVpbGRP
YmplY3RGb3JBcHBsaWNhdGlvbkNhY2hlKHJlc291cmNlcywgaW5mbyk7CisgICAgYXV0byYgaG9z
dCA9IGRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpOworICAgIGFwcGxpY2F0
aW9uQ2FjaGUgPSBidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGUoaG9zdC5yZXNvdXJjZUxp
c3QoKSwgaG9zdC5hcHBsaWNhdGlvbkNhY2hlSW5mbygpKTsKIH0KIAotUmVmPEluc3BlY3Rvcjo6
UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGU+IEluc3BlY3RvckFw
cGxpY2F0aW9uQ2FjaGVBZ2VudDo6YnVpbGRPYmplY3RGb3JBcHBsaWNhdGlvbkNhY2hlKGNvbnN0
IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpSZXNvdXJjZUluZm9MaXN0JiBhcHBsaWNhdGlvbkNhY2hl
UmVzb3VyY2VzLCBjb25zdCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q2FjaGVJbmZvJiBhcHBsaWNh
dGlvbkNhY2hlSW5mbykKK1JlZjxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hl
OjpBcHBsaWNhdGlvbkNhY2hlPiBJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6OmJ1aWxk
T2JqZWN0Rm9yQXBwbGljYXRpb25DYWNoZShjb25zdCBWZWN0b3I8QXBwbGljYXRpb25DYWNoZUhv
c3Q6OlJlc291cmNlSW5mbz4mIGFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMsIGNvbnN0IEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8mIGFwcGxpY2F0aW9uQ2FjaGVJbmZvKQogewogICAg
IHJldHVybiBJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlv
bkNhY2hlOjpjcmVhdGUoKQotICAgICAgICAuc2V0TWFuaWZlc3RVUkwoYXBwbGljYXRpb25DYWNo
ZUluZm8ubV9tYW5pZmVzdC5zdHJpbmcoKSkKLSAgICAgICAgLnNldFNpemUoYXBwbGljYXRpb25D
YWNoZUluZm8ubV9zaXplKQotICAgICAgICAuc2V0Q3JlYXRpb25UaW1lKGFwcGxpY2F0aW9uQ2Fj
aGVJbmZvLm1fY3JlYXRpb25UaW1lKQotICAgICAgICAuc2V0VXBkYXRlVGltZShhcHBsaWNhdGlv
bkNhY2hlSW5mby5tX3VwZGF0ZVRpbWUpCisgICAgICAgIC5zZXRNYW5pZmVzdFVSTChhcHBsaWNh
dGlvbkNhY2hlSW5mby5tYW5pZmVzdC5zdHJpbmcoKSkKKyAgICAgICAgLnNldFNpemUoYXBwbGlj
YXRpb25DYWNoZUluZm8uc2l6ZSkKKyAgICAgICAgLnNldENyZWF0aW9uVGltZShhcHBsaWNhdGlv
bkNhY2hlSW5mby5jcmVhdGlvblRpbWUpCisgICAgICAgIC5zZXRVcGRhdGVUaW1lKGFwcGxpY2F0
aW9uQ2FjaGVJbmZvLnVwZGF0ZVRpbWUpCiAgICAgICAgIC5zZXRSZXNvdXJjZXMoYnVpbGRBcnJh
eUZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMoYXBwbGljYXRpb25DYWNoZVJlc291cmNlcykp
CiAgICAgICAgIC5yZWxlYXNlKCk7CiB9CiAKLVJlZjxJbnNwZWN0b3I6OlByb3RvY29sOjpBcnJh
eTxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hl
UmVzb3VyY2U+PiBJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6OmJ1aWxkQXJyYXlGb3JB
cHBsaWNhdGlvbkNhY2hlUmVzb3VyY2VzKGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpSZXNv
dXJjZUluZm9MaXN0JiBhcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2VzKQorUmVmPEluc3BlY3Rvcjo6
UHJvdG9jb2w6OkFycmF5PEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFw
cGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4+IEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6
YnVpbGRBcnJheUZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMoY29uc3QgVmVjdG9yPEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0OjpSZXNvdXJjZUluZm8+JiBhcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2Vz
KQogewotICAgIGF1dG8gcmVzb3VyY2VzID0gSW5zcGVjdG9yOjpQcm90b2NvbDo6QXJyYXk8SW5z
cGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZVJlc291
cmNlPjo6Y3JlYXRlKCk7Ci0KLSAgICBmb3IgKGNvbnN0IGF1dG8mIHJlc291cmNlSW5mbyA6IGFw
cGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMpCi0gICAgICAgIHJlc291cmNlcy0+YWRkSXRlbShidWls
ZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZShyZXNvdXJjZUluZm8pKTsKLQotICAg
IHJldHVybiByZXNvdXJjZXM7CisgICAgYXV0byByZXN1bHQgPSBJbnNwZWN0b3I6OlByb3RvY29s
OjpBcnJheTxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlv
bkNhY2hlUmVzb3VyY2U+OjpjcmVhdGUoKTsKKyAgICBmb3IgKGF1dG8mIGluZm8gOiBhcHBsaWNh
dGlvbkNhY2hlUmVzb3VyY2VzKQorICAgICAgICByZXN1bHQtPmFkZEl0ZW0oYnVpbGRPYmplY3RG
b3JBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UoaW5mbykpOworICAgIHJldHVybiByZXN1bHQ7CiB9
CiAKIFJlZjxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlv
bkNhY2hlUmVzb3VyY2U+IEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6YnVpbGRPYmpl
Y3RGb3JBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UoY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6
OlJlc291cmNlSW5mbyYgcmVzb3VyY2VJbmZvKQogewogICAgIFN0cmluZ0J1aWxkZXIgdHlwZXM7
CiAKLSAgICBpZiAocmVzb3VyY2VJbmZvLm1faXNNYXN0ZXIpCisgICAgaWYgKHJlc291cmNlSW5m
by5pc01hc3RlcikKICAgICAgICAgdHlwZXMuYXBwZW5kTGl0ZXJhbCgiTWFzdGVyICIpOwogCi0g
ICAgaWYgKHJlc291cmNlSW5mby5tX2lzTWFuaWZlc3QpCisgICAgaWYgKHJlc291cmNlSW5mby5p
c01hbmlmZXN0KQogICAgICAgICB0eXBlcy5hcHBlbmRMaXRlcmFsKCJNYW5pZmVzdCAiKTsKIAot
ICAgIGlmIChyZXNvdXJjZUluZm8ubV9pc0ZhbGxiYWNrKQorICAgIGlmIChyZXNvdXJjZUluZm8u
aXNGYWxsYmFjaykKICAgICAgICAgdHlwZXMuYXBwZW5kTGl0ZXJhbCgiRmFsbGJhY2sgIik7CiAK
LSAgICBpZiAocmVzb3VyY2VJbmZvLm1faXNGb3JlaWduKQorICAgIGlmIChyZXNvdXJjZUluZm8u
aXNGb3JlaWduKQogICAgICAgICB0eXBlcy5hcHBlbmRMaXRlcmFsKCJGb3JlaWduICIpOwogCi0g
ICAgaWYgKHJlc291cmNlSW5mby5tX2lzRXhwbGljaXQpCisgICAgaWYgKHJlc291cmNlSW5mby5p
c0V4cGxpY2l0KQogICAgICAgICB0eXBlcy5hcHBlbmRMaXRlcmFsKCJFeHBsaWNpdCAiKTsKIAog
ICAgIHJldHVybiBJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNh
dGlvbkNhY2hlUmVzb3VyY2U6OmNyZWF0ZSgpCi0gICAgICAgIC5zZXRVcmwocmVzb3VyY2VJbmZv
Lm1fcmVzb3VyY2Uuc3RyaW5nKCkpCi0gICAgICAgIC5zZXRTaXplKHN0YXRpY19jYXN0PGludD4o
cmVzb3VyY2VJbmZvLm1fc2l6ZSkpCisgICAgICAgIC5zZXRVcmwocmVzb3VyY2VJbmZvLnJlc291
cmNlLnN0cmluZygpKQorICAgICAgICAuc2V0U2l6ZShzdGF0aWNfY2FzdDxpbnQ+KHJlc291cmNl
SW5mby5zaXplKSkKICAgICAgICAgLnNldFR5cGUodHlwZXMudG9TdHJpbmcoKSkKICAgICAgICAg
LnJlbGVhc2UoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNw
ZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuaAppbmRleCBkNWM1NzljN2VhYmU3YjJiYWRj
NDc0YjBmNDg3MTZkZDY5NGZlYjc2Li40ODc1MmVmYTBjZDVmNmE3NjJkZTUzZGMyYTExMmVmZjQ2
NGY3MmZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQXBw
bGljYXRpb25DYWNoZUFnZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3Bl
Y3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5oCkBAIC02Miw4ICs2Miw4IEBAIHB1YmxpYzoKICAg
ICB2b2lkIGdldEFwcGxpY2F0aW9uQ2FjaGVGb3JGcmFtZShFcnJvclN0cmluZyYsIGNvbnN0IFN0
cmluZyYgZnJhbWVJZCwgUmVmUHRyPEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2Fj
aGU6OkFwcGxpY2F0aW9uQ2FjaGU+Jikgb3ZlcnJpZGU7CiAKIHByaXZhdGU6Ci0gICAgUmVmPElu
c3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2FjaGU+IGJ1
aWxkT2JqZWN0Rm9yQXBwbGljYXRpb25DYWNoZShjb25zdCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6
UmVzb3VyY2VJbmZvTGlzdCYsIGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8m
KTsKLSAgICBSZWY8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXJyYXk8SW5zcGVjdG9yOjpQcm90b2Nv
bDo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZVJlc291cmNlPj4gYnVpbGRBcnJh
eUZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMoY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6
OlJlc291cmNlSW5mb0xpc3QmKTsKKyAgICBSZWY8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBwbGlj
YXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZT4gYnVpbGRPYmplY3RGb3JBcHBsaWNhdGlvbkNh
Y2hlKGNvbnN0IFZlY3RvcjxBcHBsaWNhdGlvbkNhY2hlSG9zdDo6UmVzb3VyY2VJbmZvPiYsIGNv
bnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8mKTsKKyAgICBSZWY8SW5zcGVjdG9y
OjpQcm90b2NvbDo6QXJyYXk8SW5zcGVjdG9yOjpQcm90b2NvbDo6QXBwbGljYXRpb25DYWNoZTo6
QXBwbGljYXRpb25DYWNoZVJlc291cmNlPj4gYnVpbGRBcnJheUZvckFwcGxpY2F0aW9uQ2FjaGVS
ZXNvdXJjZXMoY29uc3QgVmVjdG9yPEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpSZXNvdXJjZUluZm8+
Jik7CiAgICAgUmVmPEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxp
Y2F0aW9uQ2FjaGVSZXNvdXJjZT4gYnVpbGRPYmplY3RGb3JBcHBsaWNhdGlvbkNhY2hlUmVzb3Vy
Y2UoY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mbyYpOwogCiAgICAgRG9j
dW1lbnRMb2FkZXIqIGFzc2VydEZyYW1lV2l0aERvY3VtZW50TG9hZGVyKEVycm9yU3RyaW5nJiwg
Y29uc3QgU3RyaW5nJiBmcmFtZUlkKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5jcHAKaW5kZXggMmU0MzM3OTZhNmFmM2IxMWI5
MWQ3Y2IwNjIxYTE4NDdiNWZjMjU3YS4uZDY4YzUyMmVmY2UwMmNmZWQ1OWE4ZjA4NTlmNDU0ZTFj
OGMyY2E4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvcklu
c3RydW1lbnRhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
ckluc3RydW1lbnRhdGlvbi5jcHAKQEAgLTEsNiArMSw2IEBACiAvKgogKiBDb3B5cmlnaHQgKEMp
IDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSogQ29weXJpZ2h0IChDKSAy
MDE0LCAyMDE1IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyogQ29weXJpZ2h0IChD
KSAyMDE0LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogKgogKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zIGFyZQpAQCAtMTA3MywxMCArMTA3MywxMCBAQCB2b2lkIEluc3BlY3Rv
ckluc3RydW1lbnRhdGlvbjo6bmV0d29ya1N0YXRlQ2hhbmdlZEltcGwoSW5zdHJ1bWVudGluZ0Fn
ZW50cyYgaW5zdAogICAgICAgICBhcHBsaWNhdGlvbkNhY2hlQWdlbnQtPm5ldHdvcmtTdGF0ZUNo
YW5nZWQoKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OnVwZGF0ZUFwcGxp
Y2F0aW9uQ2FjaGVTdGF0dXNJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRpbmdB
Z2VudHMsIEZyYW1lKiBmcmFtZSkKK3ZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp1cGRh
dGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiBpbnN0cnVt
ZW50aW5nQWdlbnRzLCBGcmFtZSYgZnJhbWUpCiB7Ci0gICAgaWYgKEluc3BlY3RvckFwcGxpY2F0
aW9uQ2FjaGVBZ2VudCogYXBwbGljYXRpb25DYWNoZUFnZW50ID0gaW5zdHJ1bWVudGluZ0FnZW50
cy5pbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQoKSkKLSAgICAgICAgYXBwbGljYXRpb25D
YWNoZUFnZW50LT51cGRhdGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzKGZyYW1lKTsKKyAgICBpZiAo
YXV0byogYXBwbGljYXRpb25DYWNoZUFnZW50ID0gaW5zdHJ1bWVudGluZ0FnZW50cy5pbnNwZWN0
b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQoKSkKKyAgICAgICAgYXBwbGljYXRpb25DYWNoZUFnZW50
LT51cGRhdGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzKCZmcmFtZSk7CiB9CiAKIGJvb2wgSW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uOjpjb25zb2xlQWdlbnRFbmFibGVkKFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgKaW5kZXggOWI2MDAxMDRkYTJmMWRk
NWVkMTAyYmJmOTQ1YTZmNWFkNDk5N2Y0Mi4uMjQ1Y2RjODg3NTJkMDg1MWU1NzA0NGJiNzIzMzVi
NmEwODI0YWFmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
ckluc3RydW1lbnRhdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0
b3JJbnN0cnVtZW50YXRpb24uaApAQCAtNDA3LDcgKzQwNyw3IEBAIHByaXZhdGU6CiAjZW5kaWYK
IAogICAgIHN0YXRpYyB2b2lkIG5ldHdvcmtTdGF0ZUNoYW5nZWRJbXBsKEluc3RydW1lbnRpbmdB
Z2VudHMmKTsKLSAgICBzdGF0aWMgdm9pZCB1cGRhdGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzSW1w
bChJbnN0cnVtZW50aW5nQWdlbnRzJiwgRnJhbWUqKTsKKyAgICBzdGF0aWMgdm9pZCB1cGRhdGVB
cHBsaWNhdGlvbkNhY2hlU3RhdHVzSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgRnJhbWUmKTsK
IAogICAgIHN0YXRpYyB2b2lkIGxheWVyVHJlZURpZENoYW5nZUltcGwoSW5zdHJ1bWVudGluZ0Fn
ZW50cyYpOwogICAgIHN0YXRpYyB2b2lkIHJlbmRlckxheWVyRGVzdHJveWVkSW1wbChJbnN0cnVt
ZW50aW5nQWdlbnRzJiwgY29uc3QgUmVuZGVyTGF5ZXImKTsKQEAgLTExODEsOCArMTE4MSw4IEBA
IGlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6bmV0d29ya1N0YXRlQ2hhbmdl
ZChQYWdlJiBwYWdlKQogaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp1cGRh
dGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzKEZyYW1lKiBmcmFtZSkKIHsKICAgICBGQVNUX1JFVFVS
Tl9JRl9OT19GUk9OVEVORFModm9pZCgpKTsKLSAgICBpZiAoSW5zdHJ1bWVudGluZ0FnZW50cyog
aW5zdHJ1bWVudGluZ0FnZW50cyA9IGluc3RydW1lbnRpbmdBZ2VudHNGb3JGcmFtZShmcmFtZSkp
Ci0gICAgICAgIHVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXNJbXBsKCppbnN0cnVtZW50aW5n
QWdlbnRzLCBmcmFtZSk7CisgICAgaWYgKGF1dG8qIGluc3RydW1lbnRpbmdBZ2VudHMgPSBpbnN0
cnVtZW50aW5nQWdlbnRzRm9yRnJhbWUoZnJhbWUpKQorICAgICAgICB1cGRhdGVBcHBsaWNhdGlv
bkNhY2hlU3RhdHVzSW1wbCgqaW5zdHJ1bWVudGluZ0FnZW50cywgKmZyYW1lKTsKIH0KIAogaW5s
aW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjphZGRNZXNzYWdlVG9Db25zb2xlKFBh
Z2UmIHBhZ2UsIHN0ZDo6dW5pcXVlX3B0cjxJbnNwZWN0b3I6OkNvbnNvbGVNZXNzYWdlPiBtZXNz
YWdlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5jcHAKaW5kZXggOWIzOGMz
YjM2Mjc5MDVlMWJlYWEzOWY1NWJlM2RiYzY5YzM3N2FlOS4uZWU2NTljYjVmOTM5NTkwNzY3ZWM5
ODRhNjE3MWZkNTM5MGU1NDgxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Rv
Y3VtZW50TG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2Fk
ZXIuY3BwCkBAIC0xMjksMzAgKzEyOSwxNiBAQCBzdGF0aWMgYm9vbCBhcmVBbGxMb2FkZXJzUGFn
ZUNhY2hlQWNjZXB0YWJsZShjb25zdCBSZXNvdXJjZUxvYWRlck1hcCYgbG9hZGVycykKICAgICBy
ZXR1cm4gdHJ1ZTsKIH0KIAotRG9jdW1lbnRMb2FkZXI6OkRvY3VtZW50TG9hZGVyKGNvbnN0IFJl
c291cmNlUmVxdWVzdCYgcmVxLCBjb25zdCBTdWJzdGl0dXRlRGF0YSYgc3Vic3RpdHV0ZURhdGEp
Ci0gICAgOiBtX2RlZmVyTWFpblJlc291cmNlRGF0YUxvYWQodHJ1ZSkKLSAgICAsIG1fZnJhbWUo
bnVsbHB0cikKLSAgICAsIG1fY2FjaGVkUmVzb3VyY2VMb2FkZXIoQ2FjaGVkUmVzb3VyY2VMb2Fk
ZXI6OmNyZWF0ZSh0aGlzKSkKK0RvY3VtZW50TG9hZGVyOjpEb2N1bWVudExvYWRlcihjb25zdCBS
ZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFN1YnN0aXR1dGVEYXRhJiBzdWJzdGl0dXRl
RGF0YSkKKyAgICA6IG1fY2FjaGVkUmVzb3VyY2VMb2FkZXIoQ2FjaGVkUmVzb3VyY2VMb2FkZXI6
OmNyZWF0ZSh0aGlzKSkKICAgICAsIG1fd3JpdGVyKG1fZnJhbWUpCi0gICAgLCBtX29yaWdpbmFs
UmVxdWVzdChyZXEpCisgICAgLCBtX29yaWdpbmFsUmVxdWVzdChyZXF1ZXN0KQogICAgICwgbV9z
dWJzdGl0dXRlRGF0YShzdWJzdGl0dXRlRGF0YSkKLSAgICAsIG1fb3JpZ2luYWxSZXF1ZXN0Q29w
eShyZXEpCi0gICAgLCBtX3JlcXVlc3QocmVxKQorICAgICwgbV9vcmlnaW5hbFJlcXVlc3RDb3B5
KHJlcXVlc3QpCisgICAgLCBtX3JlcXVlc3QocmVxdWVzdCkKICAgICAsIG1fb3JpZ2luYWxTdWJz
dGl0dXRlRGF0YVdhc1ZhbGlkKHN1YnN0aXR1dGVEYXRhLmlzVmFsaWQoKSkKLSAgICAsIG1fY29t
bWl0dGVkKGZhbHNlKQotICAgICwgbV9pc1N0b3BwaW5nKGZhbHNlKQotICAgICwgbV9nb3RGaXJz
dEJ5dGUoZmFsc2UpCi0gICAgLCBtX2lzQ2xpZW50UmVkaXJlY3QoZmFsc2UpCi0gICAgLCBtX2lz
TG9hZGluZ011bHRpcGFydENvbnRlbnQoZmFsc2UpCi0gICAgLCBtX3dhc09ubG9hZERpc3BhdGNo
ZWQoZmFsc2UpCi0gICAgLCBtX3N0b3BSZWNvcmRpbmdSZXNwb25zZXMoZmFsc2UpCiAgICAgLCBt
X3N1YnN0aXR1dGVSZXNvdXJjZURlbGl2ZXJ5VGltZXIoKnRoaXMsICZEb2N1bWVudExvYWRlcjo6
c3Vic3RpdHV0ZVJlc291cmNlRGVsaXZlcnlUaW1lckZpcmVkKQotICAgICwgbV9kaWRDcmVhdGVH
bG9iYWxIaXN0b3J5RW50cnkoZmFsc2UpCi0gICAgLCBtX2xvYWRpbmdNYWluUmVzb3VyY2UoZmFs
c2UpCi0gICAgLCBtX3RpbWVPZkxhc3REYXRhUmVjZWl2ZWQoMC4wKQotICAgICwgbV9pZGVudGlm
aWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlcigwKQogICAgICwgbV9kYXRhTG9hZFRpbWVy
KCp0aGlzLCAmRG9jdW1lbnRMb2FkZXI6OmhhbmRsZVN1YnN0aXR1dGVEYXRhTG9hZE5vdykKLSAg
ICAsIG1fc3VicmVzb3VyY2VMb2FkZXJzQXJlUGFnZUNhY2hlQWNjZXB0YWJsZShmYWxzZSkKICAg
ICAsIG1fYXBwbGljYXRpb25DYWNoZUhvc3Qoc3RkOjptYWtlX3VuaXF1ZTxBcHBsaWNhdGlvbkNh
Y2hlSG9zdD4oKnRoaXMpKQogewogfQpAQCAtMTY2LDcgKzE1Miw5IEBAIEZyYW1lTG9hZGVyKiBE
b2N1bWVudExvYWRlcjo6ZnJhbWVMb2FkZXIoKSBjb25zdAogCiBTdWJyZXNvdXJjZUxvYWRlciog
RG9jdW1lbnRMb2FkZXI6Om1haW5SZXNvdXJjZUxvYWRlcigpIGNvbnN0CiB7Ci0gICAgcmV0dXJu
IG1fbWFpblJlc291cmNlID8gbV9tYWluUmVzb3VyY2UtPmxvYWRlcigpIDogMDsKKyAgICBpZiAo
IW1fbWFpblJlc291cmNlKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICByZXR1cm4gbV9t
YWluUmVzb3VyY2UtPmxvYWRlcigpOwogfQogCiBEb2N1bWVudExvYWRlcjo6fkRvY3VtZW50TG9h
ZGVyKCkKQEAgLTE3OSw3ICsxNjcsNyBAQCBEb2N1bWVudExvYWRlcjo6fkRvY3VtZW50TG9hZGVy
KCkKICAgICBpZiAobV9pY29uRGF0YUNhbGxiYWNrKQogICAgICAgICBtX2ljb25EYXRhQ2FsbGJh
Y2stPmludmFsaWRhdGUoKTsKICAgICBtX2NhY2hlZFJlc291cmNlTG9hZGVyLT5jbGVhckRvY3Vt
ZW50TG9hZGVyKCk7Ci0gICAgCisKICAgICBjbGVhck1haW5SZXNvdXJjZSgpOwogfQogCkBAIC0x
OTksMzEgKzE4Nyw2IEBAIERvY3VtZW50KiBEb2N1bWVudExvYWRlcjo6ZG9jdW1lbnQoKSBjb25z
dAogICAgIHJldHVybiBudWxscHRyOwogfQogCi1jb25zdCBSZXNvdXJjZVJlcXVlc3QmIERvY3Vt
ZW50TG9hZGVyOjpvcmlnaW5hbFJlcXVlc3QoKSBjb25zdAotewotICAgIHJldHVybiBtX29yaWdp
bmFsUmVxdWVzdDsKLX0KLQotY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiBEb2N1bWVudExvYWRlcjo6
b3JpZ2luYWxSZXF1ZXN0Q29weSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fb3JpZ2luYWxSZXF1
ZXN0Q29weTsKLX0KLQotY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiBEb2N1bWVudExvYWRlcjo6cmVx
dWVzdCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fcmVxdWVzdDsKLX0KLQotUmVzb3VyY2VSZXF1
ZXN0JiBEb2N1bWVudExvYWRlcjo6cmVxdWVzdCgpCi17Ci0gICAgcmV0dXJuIG1fcmVxdWVzdDsK
LX0KLQotY29uc3QgVVJMJiBEb2N1bWVudExvYWRlcjo6dXJsKCkgY29uc3QKLXsKLSAgICByZXR1
cm4gcmVxdWVzdCgpLnVybCgpOwotfQotCiB2b2lkIERvY3VtZW50TG9hZGVyOjpyZXBsYWNlUmVx
dWVzdFVSTEZvclNhbWVEb2N1bWVudE5hdmlnYXRpb24oY29uc3QgVVJMJiB1cmwpCiB7CiAgICAg
bV9vcmlnaW5hbFJlcXVlc3RDb3B5LnNldFVSTCh1cmwpOwpAQCAtMzE5LDcgKzI4Miw3IEBAIHZv
aWQgRG9jdW1lbnRMb2FkZXI6OnN0b3BMb2FkaW5nKCkKICAgICBjYW5jZWxBbGwobV9tdWx0aXBh
cnRTdWJyZXNvdXJjZUxvYWRlcnMpOwogCiAgICAgLy8gQXBwY2FjaGUgdXNlcyBSZXNvdXJjZUhh
bmRsZSBkaXJlY3RseSwgRG9jdW1lbnRMb2FkZXIgZG9lc24ndCBjb3VudCB0aGVzZSBsb2Fkcy4K
LSAgICBtX2FwcGxpY2F0aW9uQ2FjaGVIb3N0LT5zdG9wTG9hZGluZ0luRnJhbWUobV9mcmFtZSk7
CisgICAgbV9hcHBsaWNhdGlvbkNhY2hlSG9zdC0+c3RvcExvYWRpbmdJbkZyYW1lKCptX2ZyYW1l
KTsKICAgICAKICNpZiBFTkFCTEUoV0VCX0FSQ0hJVkUpIHx8IEVOQUJMRShNSFRNTCkKICAgICBj
bGVhckFyY2hpdmVSZXNvdXJjZXMoKTsKQEAgLTYwMiw3ICs1NjUsNyBAQCB2b2lkIERvY3VtZW50
TG9hZGVyOjp3aWxsU2VuZFJlcXVlc3QoUmVzb3VyY2VSZXF1ZXN0JiBuZXdSZXF1ZXN0LCBjb25z
dCBSZXNvdXJjZQogCiAgICAgQVNTRVJUKCFtX3dhaXRpbmdGb3JOYXZpZ2F0aW9uUG9saWN5KTsK
ICAgICBtX3dhaXRpbmdGb3JOYXZpZ2F0aW9uUG9saWN5ID0gdHJ1ZTsKLSAgICBmcmFtZUxvYWRl
cigpLT5wb2xpY3lDaGVja2VyKCkuY2hlY2tOYXZpZ2F0aW9uUG9saWN5KG5ld1JlcXVlc3QsIGRp
ZFJlY2VpdmVSZWRpcmVjdFJlc3BvbnNlLCBbdGhpc10oY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiBy
ZXF1ZXN0LCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIGJvb2wgc2hvdWxkQ29udGludWUpIHsKKyAg
ICBmcmFtZUxvYWRlcigpLT5wb2xpY3lDaGVja2VyKCkuY2hlY2tOYXZpZ2F0aW9uUG9saWN5KG5l
d1JlcXVlc3QsIGRpZFJlY2VpdmVSZWRpcmVjdFJlc3BvbnNlLCBbdGhpc10gKGNvbnN0IFJlc291
cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiwgYm9vbCBzaG91bGRDb250aW51ZSkgewog
ICAgICAgICBjb250aW51ZUFmdGVyTmF2aWdhdGlvblBvbGljeShyZXF1ZXN0LCBzaG91bGRDb250
aW51ZSk7CiAgICAgfSk7CiB9CkBAIC05MDAsMTIgKzg2Myw4IEBAIHZvaWQgRG9jdW1lbnRMb2Fk
ZXI6OmNvbW1pdERhdGEoY29uc3QgY2hhciogYnl0ZXMsIHNpemVfdCBsZW5ndGgpCiAgICAgICAg
IGlmIChmcmFtZUxvYWRlcigpLT5zdGF0ZU1hY2hpbmUoKS5jcmVhdGluZ0luaXRpYWxFbXB0eURv
Y3VtZW50KCkpCiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIAotI2lmIEVOQUJMRShNSFRN
TCkKLSAgICAgICAgLy8gVGhlIG9yaWdpbiBpcyB0aGUgTUhUTUwgZmlsZSwgd2UgbmVlZCB0byBz
ZXQgdGhlIGJhc2UgVVJMIHRvIHRoZSBkb2N1bWVudCBlbmNvZGVkIGluIHRoZSBNSFRNTCBzbwot
ICAgICAgICAvLyByZWxhdGl2ZSBVUkxzIGFyZSByZXNvbHZlZCBwcm9wZXJseS4KLSAgICAgICAg
aWYgKG1fYXJjaGl2ZSAmJiBtX2FyY2hpdmUtPnR5cGUoKSA9PSBBcmNoaXZlOjpNSFRNTCkKKyAg
ICAgICAgaWYgKG1fYXJjaGl2ZSAmJiBtX2FyY2hpdmUtPnNob3VsZE92ZXJyaWRlQmFzZVVSTCgp
KQogICAgICAgICAgICAgbV9mcmFtZS0+ZG9jdW1lbnQoKS0+c2V0QmFzZVVSTE92ZXJyaWRlKG1f
YXJjaGl2ZS0+bWFpblJlc291cmNlKCktPnVybCgpKTsKLSNlbmRpZgogCiAgICAgICAgIC8vIENh
bGwgcmVjZWl2ZWRGaXJzdERhdGEoKSBleGFjdGx5IG9uY2UgcGVyIGxvYWQuIFdlIHNob3VsZCBv
bmx5IHJlYWNoIHRoaXMgcG9pbnQgbXVsdGlwbGUgdGltZXMKICAgICAgICAgLy8gZm9yIG11bHRp
cGFydCBsb2FkcywgYW5kIEZyYW1lTG9hZGVyOjppc1JlcGxhY2luZygpIHdpbGwgYmUgdHJ1ZSBh
ZnRlciB0aGUgZmlyc3QgdGltZS4KQEAgLTkyMSwxMCArODgwLDggQEAgdm9pZCBEb2N1bWVudExv
YWRlcjo6Y29tbWl0RGF0YShjb25zdCBjaGFyKiBieXRlcywgc2l6ZV90IGxlbmd0aCkKICAgICAg
ICAgaWYgKG92ZXJyaWRlRW5jb2RpbmcoKS5pc051bGwoKSkgewogICAgICAgICAgICAgdXNlckNo
b3NlbiA9IGZhbHNlOwogICAgICAgICAgICAgZW5jb2RpbmcgPSByZXNwb25zZSgpLnRleHRFbmNv
ZGluZ05hbWUoKTsKLSNpZiBFTkFCTEUoV0VCX0FSQ0hJVkUpCi0gICAgICAgICAgICBpZiAobV9h
cmNoaXZlICYmIG1fYXJjaGl2ZS0+dHlwZSgpID09IEFyY2hpdmU6OldlYkFyY2hpdmUpCisgICAg
ICAgICAgICBpZiAobV9hcmNoaXZlICYmIG1fYXJjaGl2ZS0+c2hvdWxkVXNlTWFpblJlc291cmNl
RW5jb2RpbmcoKSkKICAgICAgICAgICAgICAgICBlbmNvZGluZyA9IG1fYXJjaGl2ZS0+bWFpblJl
c291cmNlKCktPnRleHRFbmNvZGluZygpOwotI2VuZGlmCiAgICAgICAgIH0gZWxzZSB7CiAgICAg
ICAgICAgICB1c2VyQ2hvc2VuID0gdHJ1ZTsKICAgICAgICAgICAgIGVuY29kaW5nID0gb3ZlcnJp
ZGVFbmNvZGluZygpOwpAQCAtMTA4MywxNSArMTA0MCwxNiBAQCBib29sIERvY3VtZW50TG9hZGVy
Ojppc0xvYWRpbmdJbkFQSVNlbnNlKCkgY29uc3QKICAgICBpZiAoZnJhbWVMb2FkZXIoKS0+c3Rh
dGUoKSAhPSBGcmFtZVN0YXRlQ29tcGxldGUpIHsKICAgICAgICAgaWYgKG1fZnJhbWUtPnNldHRp
bmdzKCkubmVlZHNJc0xvYWRpbmdJbkFQSVNlbnNlUXVpcmsoKSAmJiAhbV9zdWJyZXNvdXJjZUxv
YWRlcnMuaXNFbXB0eSgpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgCi0gICAgICAg
IERvY3VtZW50KiBkb2MgPSBtX2ZyYW1lLT5kb2N1bWVudCgpOwotICAgICAgICBpZiAoKGlzTG9h
ZGluZ01haW5SZXNvdXJjZSgpIHx8ICFtX2ZyYW1lLT5kb2N1bWVudCgpLT5sb2FkRXZlbnRGaW5p
c2hlZCgpKSAmJiBpc0xvYWRpbmcoKSkKKworICAgICAgICBBU1NFUlQobV9mcmFtZS0+ZG9jdW1l
bnQoKSk7CisgICAgICAgIGF1dG8mIGRvY3VtZW50ID0gKm1fZnJhbWUtPmRvY3VtZW50KCk7Cisg
ICAgICAgIGlmICgoaXNMb2FkaW5nTWFpblJlc291cmNlKCkgfHwgIWRvY3VtZW50LmxvYWRFdmVu
dEZpbmlzaGVkKCkpICYmIGlzTG9hZGluZygpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAg
ICAgICAgIGlmIChtX2NhY2hlZFJlc291cmNlTG9hZGVyLT5yZXF1ZXN0Q291bnQoKSkKICAgICAg
ICAgICAgIHJldHVybiB0cnVlOwotICAgICAgICBpZiAoZG9jLT5wcm9jZXNzaW5nTG9hZEV2ZW50
KCkpCisgICAgICAgIGlmIChkb2N1bWVudC5wcm9jZXNzaW5nTG9hZEV2ZW50KCkpCiAgICAgICAg
ICAgICByZXR1cm4gdHJ1ZTsKLSAgICAgICAgaWYgKGRvYy0+aGFzQWN0aXZlUGFyc2VyKCkpCisg
ICAgICAgIGlmIChkb2N1bWVudC5oYXNBY3RpdmVQYXJzZXIoKSkKICAgICAgICAgICAgIHJldHVy
biB0cnVlOwogICAgIH0KICAgICByZXR1cm4gZnJhbWVMb2FkZXIoKS0+c3ViZnJhbWVJc0xvYWRp
bmcoKTsKQEAgLTExMDIsNDAgKzEwNjAsMzUgQEAgYm9vbCBEb2N1bWVudExvYWRlcjo6bWF5YmVD
cmVhdGVBcmNoaXZlKCkKICNpZiAhRU5BQkxFKFdFQl9BUkNISVZFKSAmJiAhRU5BQkxFKE1IVE1M
KQogICAgIHJldHVybiBmYWxzZTsKICNlbHNlCi0gICAgCiAgICAgLy8gR2l2ZSB0aGUgYXJjaGl2
ZSBtYWNoaW5lcnkgYSBjcmFjayBhdCB0aGlzIGRvY3VtZW50LiBJZiB0aGUgTUlNRSB0eXBlIGlz
IG5vdCBhbiBhcmNoaXZlIHR5cGUsIGl0IHdpbGwgcmV0dXJuIDAuCiAgICAgbV9hcmNoaXZlID0g
QXJjaGl2ZUZhY3Rvcnk6OmNyZWF0ZShtX3Jlc3BvbnNlLnVybCgpLCBtYWluUmVzb3VyY2VEYXRh
KCkuZ2V0KCksIG1fcmVzcG9uc2UubWltZVR5cGUoKSk7CiAgICAgaWYgKCFtX2FyY2hpdmUpCiAg
ICAgICAgIHJldHVybiBmYWxzZTsKICAgICAKLSAgICBhZGRBbGxBcmNoaXZlUmVzb3VyY2VzKG1f
YXJjaGl2ZS5nZXQoKSk7Ci0gICAgQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3VyY2UgPSBtX2Fy
Y2hpdmUtPm1haW5SZXNvdXJjZSgpOwotICAgIG1fcGFyc2VkQXJjaGl2ZURhdGEgPSAmbWFpblJl
c291cmNlLT5kYXRhKCk7Ci0gICAgbV93cml0ZXIuc2V0TUlNRVR5cGUobWFpblJlc291cmNlLT5t
aW1lVHlwZSgpKTsKLSAgICAKKyAgICBhZGRBbGxBcmNoaXZlUmVzb3VyY2VzKCptX2FyY2hpdmUp
OworICAgIEFTU0VSVChtX2FyY2hpdmUtPm1haW5SZXNvdXJjZSgpKTsKKyAgICBhdXRvJiBtYWlu
UmVzb3VyY2UgPSAqbV9hcmNoaXZlLT5tYWluUmVzb3VyY2UoKTsKKyAgICBtX3BhcnNlZEFyY2hp
dmVEYXRhID0gJm1haW5SZXNvdXJjZS5kYXRhKCk7CisgICAgbV93cml0ZXIuc2V0TUlNRVR5cGUo
bWFpblJlc291cmNlLm1pbWVUeXBlKCkpOworCiAgICAgQVNTRVJUKG1fZnJhbWUtPmRvY3VtZW50
KCkpOwotICAgIGNvbW1pdERhdGEobWFpblJlc291cmNlLT5kYXRhKCkuZGF0YSgpLCBtYWluUmVz
b3VyY2UtPmRhdGEoKS5zaXplKCkpOworICAgIGNvbW1pdERhdGEobWFpblJlc291cmNlLmRhdGEo
KS5kYXRhKCksIG1haW5SZXNvdXJjZS5kYXRhKCkuc2l6ZSgpKTsKICAgICByZXR1cm4gdHJ1ZTsK
LSNlbmRpZiAvLyAhRU5BQkxFKFdFQl9BUkNISVZFKSAmJiAhRU5BQkxFKE1IVE1MKQorI2VuZGlm
CiB9CiAKICNpZiBFTkFCTEUoV0VCX0FSQ0hJVkUpIHx8IEVOQUJMRShNSFRNTCkKIAotdm9pZCBE
b2N1bWVudExvYWRlcjo6c2V0QXJjaGl2ZShQYXNzUmVmUHRyPEFyY2hpdmU+IGFyY2hpdmUpCit2
b2lkIERvY3VtZW50TG9hZGVyOjpzZXRBcmNoaXZlKFJlZjxBcmNoaXZlPiYmIGFyY2hpdmUpCiB7
Ci0gICAgbV9hcmNoaXZlID0gYXJjaGl2ZTsKLSAgICBhZGRBbGxBcmNoaXZlUmVzb3VyY2VzKG1f
YXJjaGl2ZS5nZXQoKSk7CisgICAgbV9hcmNoaXZlID0gV1RGTW92ZShhcmNoaXZlKTsKKyAgICBh
ZGRBbGxBcmNoaXZlUmVzb3VyY2VzKCptX2FyY2hpdmUpOwogfQogCi12b2lkIERvY3VtZW50TG9h
ZGVyOjphZGRBbGxBcmNoaXZlUmVzb3VyY2VzKEFyY2hpdmUqIGFyY2hpdmUpCit2b2lkIERvY3Vt
ZW50TG9hZGVyOjphZGRBbGxBcmNoaXZlUmVzb3VyY2VzKEFyY2hpdmUmIGFyY2hpdmUpCiB7CiAg
ICAgaWYgKCFtX2FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24pCiAgICAgICAgIG1fYXJjaGl2ZVJl
c291cmNlQ29sbGVjdGlvbiA9IHN0ZDo6bWFrZV91bmlxdWU8QXJjaGl2ZVJlc291cmNlQ29sbGVj
dGlvbj4oKTsKLSAgICAgICAgCi0gICAgQVNTRVJUKGFyY2hpdmUpOwotICAgIGlmICghYXJjaGl2
ZSkKLSAgICAgICAgcmV0dXJuOwotICAgICAgICAKICAgICBtX2FyY2hpdmVSZXNvdXJjZUNvbGxl
Y3Rpb24tPmFkZEFsbFJlc291cmNlcyhhcmNoaXZlKTsKIH0KIApAQCAtMTE0NSwxMyArMTA5OCwx
MiBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjphZGRBcmNoaXZlUmVzb3VyY2UoUmVmPEFyY2hpdmVS
ZXNvdXJjZT4mJiByZXNvdXJjZSkKIHsKICAgICBpZiAoIW1fYXJjaGl2ZVJlc291cmNlQ29sbGVj
dGlvbikKICAgICAgICAgbV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uID0gc3RkOjptYWtlX3Vu
aXF1ZTxBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uPigpOwotICAgICAgICAKICAgICBtX2FyY2hp
dmVSZXNvdXJjZUNvbGxlY3Rpb24tPmFkZFJlc291cmNlKFdURk1vdmUocmVzb3VyY2UpKTsKIH0K
IAotUGFzc1JlZlB0cjxBcmNoaXZlPiBEb2N1bWVudExvYWRlcjo6cG9wQXJjaGl2ZUZvclN1YmZy
YW1lKGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBjb25zdCBVUkwmIHVybCkKK1JlZlB0cjxBcmNo
aXZlPiBEb2N1bWVudExvYWRlcjo6cG9wQXJjaGl2ZUZvclN1YmZyYW1lKGNvbnN0IFN0cmluZyYg
ZnJhbWVOYW1lLCBjb25zdCBVUkwmIHVybCkKIHsKLSAgICByZXR1cm4gbV9hcmNoaXZlUmVzb3Vy
Y2VDb2xsZWN0aW9uID8gbV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uLT5wb3BTdWJmcmFtZUFy
Y2hpdmUoZnJhbWVOYW1lLCB1cmwpIDogUGFzc1JlZlB0cjxBcmNoaXZlPihudWxscHRyKTsKKyAg
ICByZXR1cm4gbV9hcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uID8gbV9hcmNoaXZlUmVzb3VyY2VD
b2xsZWN0aW9uLT5wb3BTdWJmcmFtZUFyY2hpdmUoZnJhbWVOYW1lLCB1cmwpIDogbnVsbHB0cjsK
IH0KIAogdm9pZCBEb2N1bWVudExvYWRlcjo6Y2xlYXJBcmNoaXZlUmVzb3VyY2VzKCkKQEAgLTEx
NzEsNyArMTEyMyw3IEBAIEFyY2hpdmVSZXNvdXJjZSogRG9jdW1lbnRMb2FkZXI6OmFyY2hpdmVS
ZXNvdXJjZUZvclVSTChjb25zdCBVUkwmIHVybCkgY29uc3QKIHsKICAgICBpZiAoIW1fYXJjaGl2
ZVJlc291cmNlQ29sbGVjdGlvbikKICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgQXJjaGl2
ZVJlc291cmNlKiByZXNvdXJjZSA9IG1fYXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi0+YXJjaGl2
ZVJlc291cmNlRm9yVVJMKHVybCk7CisgICAgYXV0byogcmVzb3VyY2UgPSBtX2FyY2hpdmVSZXNv
dXJjZUNvbGxlY3Rpb24tPmFyY2hpdmVSZXNvdXJjZUZvclVSTCh1cmwpOwogICAgIGlmICghcmVz
b3VyY2UgfHwgcmVzb3VyY2UtPnNob3VsZElnbm9yZVdoZW5VbmFyY2hpdmluZygpKQogICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKICAgICByZXR1cm4gcmVzb3VyY2U7CkBAIC0xMTgyLDE3ICsxMTM0
LDE2IEBAIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IERvY3VtZW50TG9hZGVyOjptYWluUmVzb3Vy
Y2UoKSBjb25zdAogICAgIFJlZlB0cjxTaGFyZWRCdWZmZXI+IGRhdGEgPSBtYWluUmVzb3VyY2VE
YXRhKCk7CiAgICAgaWYgKCFkYXRhKQogICAgICAgICBkYXRhID0gU2hhcmVkQnVmZmVyOjpjcmVh
dGUoKTsKLSAgICAgICAgCiAgICAgYXV0byYgcmVzcG9uc2UgPSB0aGlzLT5yZXNwb25zZSgpOwog
ICAgIHJldHVybiBBcmNoaXZlUmVzb3VyY2U6OmNyZWF0ZShXVEZNb3ZlKGRhdGEpLCByZXNwb25z
ZS51cmwoKSwgcmVzcG9uc2UubWltZVR5cGUoKSwgcmVzcG9uc2UudGV4dEVuY29kaW5nTmFtZSgp
LCBmcmFtZSgpLT50cmVlKCkudW5pcXVlTmFtZSgpKTsKIH0KIAotUGFzc1JlZlB0cjxBcmNoaXZl
UmVzb3VyY2U+IERvY3VtZW50TG9hZGVyOjpzdWJyZXNvdXJjZShjb25zdCBVUkwmIHVybCkgY29u
c3QKK1JlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IERvY3VtZW50TG9hZGVyOjpzdWJyZXNvdXJjZShj
b25zdCBVUkwmIHVybCkgY29uc3QKIHsKICAgICBpZiAoIWlzQ29tbWl0dGVkKCkpCiAgICAgICAg
IHJldHVybiBudWxscHRyOwogICAgIAotICAgIENhY2hlZFJlc291cmNlKiByZXNvdXJjZSA9IG1f
Y2FjaGVkUmVzb3VyY2VMb2FkZXItPmNhY2hlZFJlc291cmNlKHVybCk7CisgICAgYXV0byogcmVz
b3VyY2UgPSBtX2NhY2hlZFJlc291cmNlTG9hZGVyLT5jYWNoZWRSZXNvdXJjZSh1cmwpOwogICAg
IGlmICghcmVzb3VyY2UgfHwgIXJlc291cmNlLT5pc0xvYWRlZCgpKQogICAgICAgICByZXR1cm4g
YXJjaGl2ZVJlc291cmNlRm9yVVJMKHVybCk7CiAKQEAgLTEyMDYsMTggKzExNTcsMTYgQEAgUGFz
c1JlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IERvY3VtZW50TG9hZGVyOjpzdWJyZXNvdXJjZShjb25z
dCBVUkwmIHVybCkgY29uc3QKICAgICByZXR1cm4gQXJjaGl2ZVJlc291cmNlOjpjcmVhdGUoZGF0
YSwgdXJsLCByZXNvdXJjZS0+cmVzcG9uc2UoKSk7CiB9CiAKLVZlY3RvcjxSZWZQdHI8QXJjaGl2
ZVJlc291cmNlPj4gRG9jdW1lbnRMb2FkZXI6OnN1YnJlc291cmNlcygpIGNvbnN0CitWZWN0b3I8
UmVmPEFyY2hpdmVSZXNvdXJjZT4+IERvY3VtZW50TG9hZGVyOjpzdWJyZXNvdXJjZXMoKSBjb25z
dAogewogICAgIGlmICghaXNDb21taXR0ZWQoKSkKICAgICAgICAgcmV0dXJuIHsgfTsKIAotICAg
IFZlY3RvcjxSZWZQdHI8QXJjaGl2ZVJlc291cmNlPj4gc3VicmVzb3VyY2VzOwotCi0gICAgZm9y
IChhdXRvJiBjYWNoZWRSZXNvdXJjZUhhbmRsZSA6IG1fY2FjaGVkUmVzb3VyY2VMb2FkZXItPmFs
bENhY2hlZFJlc291cmNlcygpLnZhbHVlcygpKSB7Ci0gICAgICAgIGlmIChSZWZQdHI8QXJjaGl2
ZVJlc291cmNlPiBzdWJyZXNvdXJjZSA9IHRoaXMtPnN1YnJlc291cmNlKFVSTChQYXJzZWRVUkxT
dHJpbmcsIGNhY2hlZFJlc291cmNlSGFuZGxlLT51cmwoKSkpKQotICAgICAgICAgICAgc3VicmVz
b3VyY2VzLmFwcGVuZChXVEZNb3ZlKHN1YnJlc291cmNlKSk7CisgICAgVmVjdG9yPFJlZjxBcmNo
aXZlUmVzb3VyY2U+PiBzdWJyZXNvdXJjZXM7CisgICAgZm9yIChhdXRvJiBoYW5kbGUgOiBtX2Nh
Y2hlZFJlc291cmNlTG9hZGVyLT5hbGxDYWNoZWRSZXNvdXJjZXMoKS52YWx1ZXMoKSkgeworICAg
ICAgICBpZiAoYXV0byBzdWJyZXNvdXJjZSA9IHRoaXMtPnN1YnJlc291cmNlKHsgUGFyc2VkVVJM
U3RyaW5nLCBoYW5kbGUtPnVybCgpIH0pKQorICAgICAgICAgICAgc3VicmVzb3VyY2VzLmFwcGVu
ZChzdWJyZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICB9Ci0KICAgICByZXR1cm4gc3Vi
cmVzb3VyY2VzOwogfQogCkBAIC0xMjI1LDkgKzExNzQsMTEgQEAgdm9pZCBEb2N1bWVudExvYWRl
cjo6ZGVsaXZlclN1YnN0aXR1dGVSZXNvdXJjZXNBZnRlckRlbGF5KCkKIHsKICAgICBpZiAobV9w
ZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlcy5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybjsKLSAg
ICBBU1NFUlQobV9mcmFtZSAmJiBtX2ZyYW1lLT5wYWdlKCkpOworICAgIEFTU0VSVChtX2ZyYW1l
KTsKKyAgICBBU1NFUlQobV9mcmFtZS0+cGFnZSgpKTsKICAgICBpZiAobV9mcmFtZS0+cGFnZSgp
LT5kZWZlcnNMb2FkaW5nKCkpCiAgICAgICAgIHJldHVybjsKKwogICAgIGlmICghbV9zdWJzdGl0
dXRlUmVzb3VyY2VEZWxpdmVyeVRpbWVyLmlzQWN0aXZlKCkpCiAgICAgICAgIG1fc3Vic3RpdHV0
ZVJlc291cmNlRGVsaXZlcnlUaW1lci5zdGFydE9uZVNob3QoMCk7CiB9CkBAIC0xMjM2LDE4ICsx
MTg3LDE1IEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnN1YnN0aXR1dGVSZXNvdXJjZURlbGl2ZXJ5
VGltZXJGaXJlZCgpCiB7CiAgICAgaWYgKG1fcGVuZGluZ1N1YnN0aXR1dGVSZXNvdXJjZXMuaXNF
bXB0eSgpKQogICAgICAgICByZXR1cm47Ci0gICAgQVNTRVJUKG1fZnJhbWUgJiYgbV9mcmFtZS0+
cGFnZSgpKTsKKyAgICBBU1NFUlQobV9mcmFtZSk7CisgICAgQVNTRVJUKG1fZnJhbWUtPnBhZ2Uo
KSk7CiAgICAgaWYgKG1fZnJhbWUtPnBhZ2UoKS0+ZGVmZXJzTG9hZGluZygpKQogICAgICAgICBy
ZXR1cm47CiAKLSAgICBTdWJzdGl0dXRlUmVzb3VyY2VNYXAgY29weTsKLSAgICBjb3B5LnN3YXAo
bV9wZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlcyk7Ci0KLSAgICBmb3IgKGF1dG8mIGVudHJ5IDog
Y29weSkgewotICAgICAgICBhdXRvJiBsb2FkZXIgPSBlbnRyeS5rZXk7Ci0gICAgICAgIFN1YnN0
aXR1dGVSZXNvdXJjZSogcmVzb3VyY2UgPSBlbnRyeS52YWx1ZS5nZXQoKTsKLQotICAgICAgICBp
ZiAocmVzb3VyY2UpCisgICAgYXV0byBwZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlcyA9IFdURk1v
dmUobV9wZW5kaW5nU3Vic3RpdHV0ZVJlc291cmNlcyk7CisgICAgZm9yIChhdXRvJiBwZW5kaW5n
U3Vic3RpdHV0ZVJlc291cmNlIDogcGVuZGluZ1N1YnN0aXR1dGVSZXNvdXJjZXMpIHsKKyAgICAg
ICAgYXV0byYgbG9hZGVyID0gcGVuZGluZ1N1YnN0aXR1dGVSZXNvdXJjZS5rZXk7CisgICAgICAg
IGlmIChhdXRvJiByZXNvdXJjZSA9IHBlbmRpbmdTdWJzdGl0dXRlUmVzb3VyY2UudmFsdWUpCiAg
ICAgICAgICAgICByZXNvdXJjZS0+ZGVsaXZlcigqbG9hZGVyKTsKICAgICAgICAgZWxzZSB7CiAg
ICAgICAgICAgICAvLyBBIG51bGwgcmVzb3VyY2UgbWVhbnMgdGhhdCB3ZSBzaG91bGQgZmFpbCB0
aGUgbG9hZC4KQEAgLTEyNTgsMTAgKzEyMDYsMTIgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6c3Vi
c3RpdHV0ZVJlc291cmNlRGVsaXZlcnlUaW1lckZpcmVkKCkKIH0KIAogI2lmbmRlZiBOREVCVUcK
KwogYm9vbCBEb2N1bWVudExvYWRlcjo6aXNTdWJzdGl0dXRlTG9hZFBlbmRpbmcoUmVzb3VyY2VM
b2FkZXIqIGxvYWRlcikgY29uc3QKIHsKICAgICByZXR1cm4gbV9wZW5kaW5nU3Vic3RpdHV0ZVJl
c291cmNlcy5jb250YWlucyhsb2FkZXIpOwogfQorCiAjZW5kaWYKIAogdm9pZCBEb2N1bWVudExv
YWRlcjo6Y2FuY2VsUGVuZGluZ1N1YnN0aXR1dGVMb2FkKFJlc291cmNlTG9hZGVyKiBsb2FkZXIp
CkBAIC0xMjc0LDkgKzEyMjQsMTAgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6Y2FuY2VsUGVuZGlu
Z1N1YnN0aXR1dGVMb2FkKFJlc291cmNlTG9hZGVyKiBsb2FkZXIpCiB9CiAKICNpZiBFTkFCTEUo
V0VCX0FSQ0hJVkUpIHx8IEVOQUJMRShNSFRNTCkKKwogYm9vbCBEb2N1bWVudExvYWRlcjo6c2No
ZWR1bGVBcmNoaXZlTG9hZChSZXNvdXJjZUxvYWRlciYgbG9hZGVyLCBjb25zdCBSZXNvdXJjZVJl
cXVlc3QmIHJlcXVlc3QpCiB7Ci0gICAgaWYgKEFyY2hpdmVSZXNvdXJjZSogcmVzb3VyY2UgPSBh
cmNoaXZlUmVzb3VyY2VGb3JVUkwocmVxdWVzdC51cmwoKSkpIHsKKyAgICBpZiAoYXV0byogcmVz
b3VyY2UgPSBhcmNoaXZlUmVzb3VyY2VGb3JVUkwocmVxdWVzdC51cmwoKSkpIHsKICAgICAgICAg
c2NoZWR1bGVTdWJzdGl0dXRlUmVzb3VyY2VMb2FkKGxvYWRlciwgKnJlc291cmNlKTsKICAgICAg
ICAgcmV0dXJuIHRydWU7CiAgICAgfQpAQCAtMTI4NCwyMSArMTIzNSwxOSBAQCBib29sIERvY3Vt
ZW50TG9hZGVyOjpzY2hlZHVsZUFyY2hpdmVMb2FkKFJlc291cmNlTG9hZGVyJiBsb2FkZXIsIGNv
bnN0IFJlc291cmNlUgogICAgIGlmICghbV9hcmNoaXZlKQogICAgICAgICByZXR1cm4gZmFsc2U7
CiAKLSAgICBzd2l0Y2ggKG1fYXJjaGl2ZS0+dHlwZSgpKSB7CiAjaWYgRU5BQkxFKFdFQl9BUkNI
SVZFKQotICAgIGNhc2UgQXJjaGl2ZTo6V2ViQXJjaGl2ZToKLSAgICAgICAgLy8gV2ViQXJjaGl2
ZURlYnVnTW9kZSBtZWFucyB3ZSBmYWlsIGxvYWRzIGluc3RlYWQgb2YgdHJ5aW5nIHRvIGZldGNo
IHRoZW0gZnJvbSB0aGUgbmV0d29yayBpZiB0aGV5J3JlIG5vdCBpbiB0aGUgYXJjaGl2ZS4KLSAg
ICAgICAgcmV0dXJuIG1fZnJhbWUtPnNldHRpbmdzKCkud2ViQXJjaGl2ZURlYnVnTW9kZUVuYWJs
ZWQoKSAmJiBBcmNoaXZlRmFjdG9yeTo6aXNBcmNoaXZlTWltZVR5cGUocmVzcG9uc2VNSU1FVHlw
ZSgpKTsKLSNlbmRpZgotI2lmIEVOQUJMRShNSFRNTCkKLSAgICBjYXNlIEFyY2hpdmU6Ok1IVE1M
OgotICAgICAgICByZXR1cm4gdHJ1ZTsgLy8gQWx3YXlzIGZhaWwgdGhlIGxvYWQgZm9yIHJlc291
cmNlcyBub3QgaW5jbHVkZWQgaW4gdGhlIE1IVE1MLgorICAgIC8vIFRoZSBpZGVhIG9mIFdlYkFy
Y2hpdmVEZWJ1Z01vZGUgaXMgdGhhdCB3ZSBzaG91bGQgZmFpbCBpbnN0ZWFkIG9mIHRyeWluZyB0
byBmZXRjaCBmcm9tIHRoZSBuZXR3b3JrLgorICAgIC8vIFJldHVybmluZyB0cnVlIGVuc3VyZXMg
dGhlIGNhbGxlciB3aWxsIG5vdCB0cnkgdG8gZmV0Y2ggZnJvbSB0aGUgbmV0d29yay4KKyAgICBp
ZiAobV9mcmFtZS0+c2V0dGluZ3MoKS53ZWJBcmNoaXZlRGVidWdNb2RlRW5hYmxlZCgpICYmIHJl
c3BvbnNlTUlNRVR5cGUoKSA9PSAiYXBwbGljYXRpb24veC13ZWJhcmNoaXZlIikKKyAgICAgICAg
cmV0dXJuIHRydWU7CiAjZW5kaWYKLSAgICBkZWZhdWx0OgotICAgICAgICByZXR1cm4gZmFsc2U7
Ci0gICAgfQorCisgICAgLy8gSWYgd2Ugd2FudCB0byBsb2FkIGZyb20gdGhlIGFyY2hpdmUgb25s
eSwgdGhlbiB3ZSBzaG91bGQgYWx3YXlzIHJldHVybiB0cnVlIHNvIHRoYXQgdGhlIGNhbGxlcgor
ICAgIC8vIGRvZXMgbm90IHRyeSB0byBmZXRjaCBmb3JtIHRoZSBuZXR3b3JrLgorICAgIHJldHVy
biBtX2FyY2hpdmUtPnNob3VsZExvYWRGcm9tQXJjaGl2ZU9ubHkoKTsKIH0KLSNlbmRpZiAvLyBF
TkFCTEUoV0VCX0FSQ0hJVkUpCisKKyNlbmRpZgogCiB2b2lkIERvY3VtZW50TG9hZGVyOjpzY2hl
ZHVsZVN1YnN0aXR1dGVSZXNvdXJjZUxvYWQoUmVzb3VyY2VMb2FkZXImIGxvYWRlciwgU3Vic3Rp
dHV0ZVJlc291cmNlJiByZXNvdXJjZSkKIHsKQEAgLTEzMDYsMTAgKzEyNTUsMTAgQEAgdm9pZCBE
b2N1bWVudExvYWRlcjo6c2NoZWR1bGVTdWJzdGl0dXRlUmVzb3VyY2VMb2FkKFJlc291cmNlTG9h
ZGVyJiBsb2FkZXIsIFN1YnMKICAgICBkZWxpdmVyU3Vic3RpdHV0ZVJlc291cmNlc0FmdGVyRGVs
YXkoKTsKIH0KIAotdm9pZCBEb2N1bWVudExvYWRlcjo6YWRkUmVzcG9uc2UoY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYgcikKK3ZvaWQgRG9jdW1lbnRMb2FkZXI6OmFkZFJlc3BvbnNlKGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIGlmICghbV9zdG9wUmVjb3JkaW5nUmVz
cG9uc2VzKQotICAgICAgICBtX3Jlc3BvbnNlcy5hcHBlbmQocik7CisgICAgICAgIG1fcmVzcG9u
c2VzLmFwcGVuZChyZXNwb25zZSk7CiB9CiAKIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnN0b3BSZWNv
cmRpbmdSZXNwb25zZXMoKQpAQCAtMTM0NCwyMSArMTI5MywxMSBAQCBib29sIERvY3VtZW50TG9h
ZGVyOjp1cmxGb3JIaXN0b3J5UmVmbGVjdHNGYWlsdXJlKCkgY29uc3QKICAgICByZXR1cm4gbV9z
dWJzdGl0dXRlRGF0YS5pc1ZhbGlkKCkgfHwgbV9yZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpID49
IDQwMDsKIH0KIAotY29uc3QgVVJMJiBEb2N1bWVudExvYWRlcjo6b3JpZ2luYWxVUkwoKSBjb25z
dAotewotICAgIHJldHVybiBtX29yaWdpbmFsUmVxdWVzdENvcHkudXJsKCk7Ci19Ci0KLWNvbnN0
IFVSTCYgRG9jdW1lbnRMb2FkZXI6OnJlc3BvbnNlVVJMKCkgY29uc3QKLXsKLSAgICByZXR1cm4g
bV9yZXNwb25zZS51cmwoKTsKLX0KLQogVVJMIERvY3VtZW50TG9hZGVyOjpkb2N1bWVudFVSTCgp
IGNvbnN0CiB7CiAgICAgVVJMIHVybCA9IHN1YnN0aXR1dGVEYXRhKCkucmVzcG9uc2UoKS51cmwo
KTsKICNpZiBFTkFCTEUoV0VCX0FSQ0hJVkUpCi0gICAgaWYgKHVybC5pc0VtcHR5KCkgJiYgbV9h
cmNoaXZlICYmIG1fYXJjaGl2ZS0+dHlwZSgpID09IEFyY2hpdmU6OldlYkFyY2hpdmUpCisgICAg
aWYgKHVybC5pc0VtcHR5KCkgJiYgbV9hcmNoaXZlICYmIG1fYXJjaGl2ZS0+c2hvdWxkVXNlTWFp
blJlc291cmNlVVJMKCkpCiAgICAgICAgIHVybCA9IG1fYXJjaGl2ZS0+bWFpblJlc291cmNlKCkt
PnVybCgpOwogI2VuZGlmCiAgICAgaWYgKHVybC5pc0VtcHR5KCkpCkBAIC0xMzY4LDI4ICsxMzA3
LDE1IEBAIFVSTCBEb2N1bWVudExvYWRlcjo6ZG9jdW1lbnRVUkwoKSBjb25zdAogICAgIHJldHVy
biB1cmw7CiB9CiAKLWNvbnN0IFN0cmluZyYgRG9jdW1lbnRMb2FkZXI6OnJlc3BvbnNlTUlNRVR5
cGUoKSBjb25zdAotewotICAgIHJldHVybiBtX3Jlc3BvbnNlLm1pbWVUeXBlKCk7Ci19Ci0KLWNv
bnN0IFN0cmluZyYgRG9jdW1lbnRMb2FkZXI6OmN1cnJlbnRDb250ZW50VHlwZSgpIGNvbnN0Ci17
Ci0gICAgcmV0dXJuIG1fd3JpdGVyLm1pbWVUeXBlKCk7Ci19Ci0KICNpZiBQTEFURk9STShJT1Mp
CisKIC8vIEZJWE1FOiBUaGlzIG1ldGhvZCBzZWVtcyB0byB2aW9sYXRlIHRoZSBlbmNhcHN1bGF0
aW9uIG9mIHRoaXMgY2xhc3MuCiB2b2lkIERvY3VtZW50TG9hZGVyOjpzZXRSZXNwb25zZU1JTUVU
eXBlKGNvbnN0IFN0cmluZyYgcmVzcG9uc2VNaW1lVHlwZSkKIHsKICAgICBtX3Jlc3BvbnNlLnNl
dE1pbWVUeXBlKHJlc3BvbnNlTWltZVR5cGUpOwogfQotI2VuZGlmCiAKLWNvbnN0IFVSTCYgRG9j
dW1lbnRMb2FkZXI6OnVucmVhY2hhYmxlVVJMKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9zdWJz
dGl0dXRlRGF0YS5mYWlsaW5nVVJMKCk7Ci19CisjZW5kaWYKIAogdm9pZCBEb2N1bWVudExvYWRl
cjo6c2V0RGVmZXJzTG9hZGluZyhib29sIGRlZmVycykKIHsKQEAgLTE2ODIsNyArMTYwOCw3IEBA
IHZvaWQgRG9jdW1lbnRMb2FkZXI6OmdldEljb25Mb2FkRGVjaXNpb25Gb3JJY29uVVJMKGNvbnN0
IFN0cmluZyYgdXJsU3RyaW5nKQogICAgIGlmIChtX2ljb25Mb2FkRGVjaXNpb25DYWxsYmFjaykK
ICAgICAgICAgbV9pY29uTG9hZERlY2lzaW9uQ2FsbGJhY2stPmludmFsaWRhdGUoKTsKICAgICBt
X2ljb25Mb2FkRGVjaXNpb25DYWxsYmFjayA9IEljb25Mb2FkRGVjaXNpb25DYWxsYmFjazo6Y3Jl
YXRlKHRoaXMsIGljb25Mb2FkRGVjaXNpb25DYWxsYmFjayk7Ci0gICAgaWNvbkRhdGFiYXNlKCku
bG9hZERlY2lzaW9uRm9ySWNvblVSTCh1cmxTdHJpbmcsIG1faWNvbkxvYWREZWNpc2lvbkNhbGxi
YWNrKTsKKyAgICBpY29uRGF0YWJhc2UoKS5sb2FkRGVjaXNpb25Gb3JJY29uVVJMKHVybFN0cmlu
ZywgKm1faWNvbkxvYWREZWNpc2lvbkNhbGxiYWNrKTsKIH0KIAogdm9pZCBEb2N1bWVudExvYWRl
cjo6Y29udGludWVJY29uTG9hZFdpdGhEZWNpc2lvbihJY29uTG9hZERlY2lzaW9uIGRlY2lzaW9u
KQpAQCAtMTcwMyw3ICsxNjI5LDcgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6Z2V0SWNvbkRhdGFG
b3JJY29uVVJMKGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nKQogICAgIGlmIChtX2ljb25EYXRhQ2Fs
bGJhY2spCiAgICAgICAgIG1faWNvbkRhdGFDYWxsYmFjay0+aW52YWxpZGF0ZSgpOwogICAgIG1f
aWNvbkRhdGFDYWxsYmFjayA9IEljb25EYXRhQ2FsbGJhY2s6OmNyZWF0ZSh0aGlzLCBpY29uRGF0
YUNhbGxiYWNrKTsKLSAgICBpY29uRGF0YWJhc2UoKS5pY29uRGF0YUZvckljb25VUkwodXJsU3Ry
aW5nLCBtX2ljb25EYXRhQ2FsbGJhY2spOworICAgIGljb25EYXRhYmFzZSgpLmljb25EYXRhRm9y
SWNvblVSTCh1cmxTdHJpbmcsICptX2ljb25EYXRhQ2FsbGJhY2spOwogfQogCiB2b2lkIERvY3Vt
ZW50TG9hZGVyOjpzdGFydEljb25Mb2FkaW5nKCkKQEAgLTE3NDksNyArMTY3NSw3IEBAIHZvaWQg
RG9jdW1lbnRMb2FkZXI6OmZpbmlzaGVkTG9hZGluZ0ljb24oSWNvbkxvYWRlciYgbG9hZGVyLCBT
aGFyZWRCdWZmZXIqIGJ1ZmZlCiB2b2lkIERvY3VtZW50TG9hZGVyOjpkaXNwYXRjaE9ubG9hZEV2
ZW50cygpCiB7CiAgICAgbV93YXNPbmxvYWREaXNwYXRjaGVkID0gdHJ1ZTsKLSAgICBhcHBsaWNh
dGlvbkNhY2hlSG9zdCgpLT5zdG9wRGVmZXJyaW5nRXZlbnRzKCk7CisgICAgbV9hcHBsaWNhdGlv
bkNhY2hlSG9zdC0+c3RvcERlZmVycmluZ0V2ZW50cygpOwogfQogCiB2b2lkIERvY3VtZW50TG9h
ZGVyOjpzZXRUcmlnZ2VyaW5nQWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIGFjdGlvbikK
QEAgLTE3ODksMjMgKzE3MTUsMTggQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6YWRkUGVuZGluZ0Nv
bnRlbnRFeHRlbnNpb25EaXNwbGF5Tm9uZVNlbGVjdG9yKGNvbnN0IFN0cmluZyYKIH0KICNlbmRp
ZgogCi0jaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQotQ29udGVudEZpbHRlciogRG9jdW1l
bnRMb2FkZXI6OmNvbnRlbnRGaWx0ZXIoKSBjb25zdAotewotICAgIHJldHVybiBtX2NvbnRlbnRG
aWx0ZXIuZ2V0KCk7Ci19Ci0jZW5kaWYKLQogYm9vbCBEb2N1bWVudExvYWRlcjo6aXNBbHdheXNP
bkxvZ2dpbmdBbGxvd2VkKCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9mcmFtZSA/IG1fZnJhbWUt
PmlzQWx3YXlzT25Mb2dnaW5nQWxsb3dlZCgpIDogdHJ1ZTsKKyAgICByZXR1cm4gIW1fZnJhbWUg
fHwgbV9mcmFtZS0+aXNBbHdheXNPbkxvZ2dpbmdBbGxvd2VkKCk7CiB9CiAKICNpZiBVU0UoUVVJ
Q0tfTE9PSykKKwogdm9pZCBEb2N1bWVudExvYWRlcjo6c2V0UXVpY2tMb29rSGFuZGxlKHN0ZDo6
dW5pcXVlX3B0cjxRdWlja0xvb2tIYW5kbGU+IHF1aWNrTG9va0hhbmRsZSkKIHsKICAgICBtX3F1
aWNrTG9va0hhbmRsZSA9IFdURk1vdmUocXVpY2tMb29rSGFuZGxlKTsKIH0KKwogI2VuZGlmCiAK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9Eb2N1bWVudExvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVy
LmgKaW5kZXggZDcwYjM5Yjg2ZjgyYzA3MjNkMzJmYTZlODE1NjU5MjQ4N2U2NjA5Mi4uODdlNGVi
NzYzYmFlYTFkZDY1ODUzNGQ4MmY5NDc5YWYwYzI4NTVlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0RvY3VtZW50TG9hZGVyLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAy
MDA2LTIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChD
KSAyMDA2LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICogQ29weXJpZ2h0
IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CkBAIC03Niw4ICs3Niw3IEBAIGNsYXNzIFNoYXJlZEJ1ZmZlcjsKIGNsYXNzIFN1YnJlc291
cmNlTG9hZGVyOwogY2xhc3MgU3Vic3RpdHV0ZVJlc291cmNlOwogCi10eXBlZGVmIEhhc2hNYXA8
dW5zaWduZWQgbG9uZywgUmVmUHRyPFJlc291cmNlTG9hZGVyPj4gUmVzb3VyY2VMb2FkZXJNYXA7
Ci10eXBlZGVmIFZlY3RvcjxSZXNvdXJjZVJlc3BvbnNlPiBSZXNwb25zZVZlY3RvcjsKK3VzaW5n
IFJlc291cmNlTG9hZGVyTWFwID0gSGFzaE1hcDx1bnNpZ25lZCBsb25nLCBSZWZQdHI8UmVzb3Vy
Y2VMb2FkZXI+PjsKIAogY2xhc3MgRG9jdW1lbnRMb2FkZXIgOiBwdWJsaWMgUmVmQ291bnRlZDxE
b2N1bWVudExvYWRlcj4sIHByaXZhdGUgQ2FjaGVkUmF3UmVzb3VyY2VDbGllbnQgewogICAgIFdU
Rl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwpAQCAtMTUwLDE0ICsxNDksMTUgQEAgcHVibGljOgogI2Vu
ZGlmCiAKICNpZiBFTkFCTEUoV0VCX0FSQ0hJVkUpIHx8IEVOQUJMRShNSFRNTCkKLSAgICB2b2lk
IHNldEFyY2hpdmUoUGFzc1JlZlB0cjxBcmNoaXZlPik7Ci0gICAgV0VCQ09SRV9FWFBPUlQgdm9p
ZCBhZGRBbGxBcmNoaXZlUmVzb3VyY2VzKEFyY2hpdmUqKTsKKyAgICB2b2lkIHNldEFyY2hpdmUo
UmVmPEFyY2hpdmU+JiYpOworICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgYWRkQWxsQXJjaGl2ZVJl
c291cmNlcyhBcmNoaXZlJik7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBhZGRBcmNoaXZlUmVz
b3VyY2UoUmVmPEFyY2hpdmVSZXNvdXJjZT4mJik7Ci0gICAgUGFzc1JlZlB0cjxBcmNoaXZlPiBw
b3BBcmNoaXZlRm9yU3ViZnJhbWUoY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IFVSTCYp
OworICAgIFJlZlB0cjxBcmNoaXZlPiBwb3BBcmNoaXZlRm9yU3ViZnJhbWUoY29uc3QgU3RyaW5n
JiBmcmFtZU5hbWUsIGNvbnN0IFVSTCYpOwogICAgIFdFQkNPUkVfRVhQT1JUIFNoYXJlZEJ1ZmZl
ciogcGFyc2VkQXJjaGl2ZURhdGEoKSBjb25zdDsKIAogICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wg
c2NoZWR1bGVBcmNoaXZlTG9hZChSZXNvdXJjZUxvYWRlciYsIGNvbnN0IFJlc291cmNlUmVxdWVz
dCYpOwogI2VuZGlmCisKICAgICB2b2lkIHNjaGVkdWxlU3Vic3RpdHV0ZVJlc291cmNlTG9hZChS
ZXNvdXJjZUxvYWRlciYsIFN1YnN0aXR1dGVSZXNvdXJjZSYpOwogCiAgICAgLy8gUmV0dXJuIHRo
ZSBBcmNoaXZlUmVzb3VyY2UgZm9yIHRoZSBVUkwgb25seSB3aGVuIGxvYWRpbmcgYW4gQXJjaGl2
ZQpAQCAtMTY2LDkgKzE2NiwxMCBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgUmVmUHRy
PEFyY2hpdmVSZXNvdXJjZT4gbWFpblJlc291cmNlKCkgY29uc3Q7CiAKICAgICAvLyBSZXR1cm4g
YW4gQXJjaGl2ZVJlc291cmNlIGZvciB0aGUgVVJMLCBlaXRoZXIgY3JlYXRpbmcgZnJvbSBsaXZl
IGRhdGEgb3IKLSAgICAvLyBwdWxsaW5nIGZyb20gdGhlIEFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rp
b24KLSAgICBXRUJDT1JFX0VYUE9SVCBQYXNzUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gc3VicmVz
b3VyY2UoY29uc3QgVVJMJikgY29uc3Q7Ci0gICAgV0VCQ09SRV9FWFBPUlQgVmVjdG9yPFJlZlB0
cjxBcmNoaXZlUmVzb3VyY2U+PiBzdWJyZXNvdXJjZXMoKSBjb25zdDsKKyAgICAvLyBwdWxsaW5n
IGZyb20gdGhlIEFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24uCisgICAgV0VCQ09SRV9FWFBPUlQg
UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gc3VicmVzb3VyY2UoY29uc3QgVVJMJikgY29uc3Q7CisK
KyAgICBXRUJDT1JFX0VYUE9SVCBWZWN0b3I8UmVmPEFyY2hpdmVSZXNvdXJjZT4+IHN1YnJlc291
cmNlcygpIGNvbnN0OwogCiAjaWZuZGVmIE5ERUJVRwogICAgIGJvb2wgaXNTdWJzdGl0dXRlTG9h
ZFBlbmRpbmcoUmVzb3VyY2VMb2FkZXIqKSBjb25zdDsKQEAgLTE3Niw3ICsxNzcsNyBAQCBwdWJs
aWM6CiAgICAgdm9pZCBjYW5jZWxQZW5kaW5nU3Vic3RpdHV0ZUxvYWQoUmVzb3VyY2VMb2FkZXIq
KTsgICAKICAgICAKICAgICB2b2lkIGFkZFJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
KTsKLSAgICBjb25zdCBSZXNwb25zZVZlY3RvciYgcmVzcG9uc2VzKCkgY29uc3QgeyByZXR1cm4g
bV9yZXNwb25zZXM7IH0KKyAgICBjb25zdCBWZWN0b3I8UmVzb3VyY2VSZXNwb25zZT4mIHJlc3Bv
bnNlcygpIGNvbnN0IHsgcmV0dXJuIG1fcmVzcG9uc2VzOyB9CiAKICAgICBjb25zdCBOYXZpZ2F0
aW9uQWN0aW9uJiB0cmlnZ2VyaW5nQWN0aW9uKCkgY29uc3QgeyByZXR1cm4gbV90cmlnZ2VyaW5n
QWN0aW9uOyB9CiAgICAgdm9pZCBzZXRUcmlnZ2VyaW5nQWN0aW9uKGNvbnN0IE5hdmlnYXRpb25B
Y3Rpb24mKTsKQEAgLTI0MCwxNyArMjQxLDcgQEAgcHVibGljOgogCiAgICAgdm9pZCBzZXREZWZl
ck1haW5SZXNvdXJjZURhdGFMb2FkKGJvb2wgZGVmZXIpIHsgbV9kZWZlck1haW5SZXNvdXJjZURh
dGFMb2FkID0gZGVmZXI7IH0KICAgICAKLSAgICB2b2lkIGRpZFRlbGxDbGllbnRBYm91dExvYWQo
Y29uc3QgU3RyaW5nJiB1cmwpCi0gICAgeyAKLSNpZiAhUExBVEZPUk0oQ09DT0EpCi0gICAgICAg
IC8vIERvbid0IGluY2x1ZGUgZGF0YSB1cmxzIGhlcmUsIGFzIGlmIGEgbG90IG9mIGRhdGEgaXMg
bG9hZGVkCi0gICAgICAgIC8vIHRoYXQgd2F5LCB3ZSBob2xkIG9uIHRvIHRoZSAobGFyZ2UpIHVy
bCBzdHJpbmcgZm9yIHRvbyBsb25nLgotICAgICAgICBpZiAocHJvdG9jb2xJcyh1cmwsICJkYXRh
IikpCi0gICAgICAgICAgICByZXR1cm47Ci0jZW5kaWYKLSAgICAgICAgaWYgKCF1cmwuaXNFbXB0
eSgpKQotICAgICAgICAgICAgbV9yZXNvdXJjZXNDbGllbnRLbm93c0Fib3V0LmFkZCh1cmwpOwot
ICAgIH0KKyAgICB2b2lkIGRpZFRlbGxDbGllbnRBYm91dExvYWQoY29uc3QgU3RyaW5nJiB1cmwp
OwogICAgIGJvb2wgaGF2ZVRvbGRDbGllbnRBYm91dExvYWQoY29uc3QgU3RyaW5nJiB1cmwpIHsg
cmV0dXJuIG1fcmVzb3VyY2VzQ2xpZW50S25vd3NBYm91dC5jb250YWlucyh1cmwpOyB9CiAgICAg
dm9pZCByZWNvcmRNZW1vcnlDYWNoZUxvYWRGb3JGdXR1cmVDbGllbnROb3RpZmljYXRpb24oY29u
c3QgUmVzb3VyY2VSZXF1ZXN0Jik7CiAgICAgdm9pZCB0YWtlTWVtb3J5Q2FjaGVMb2Fkc0ZvckNs
aWVudE5vdGlmaWNhdGlvbihWZWN0b3I8UmVzb3VyY2VSZXF1ZXN0PiYgbG9hZHMpOwpAQCAtMjU4
LDExICsyNDksMTEgQEAgcHVibGljOgogICAgIExvYWRUaW1pbmcmIHRpbWluZygpIHsgcmV0dXJu
IG1fbG9hZFRpbWluZzsgfQogICAgIHZvaWQgcmVzZXRUaW1pbmcoKSB7IG1fbG9hZFRpbWluZyA9
IExvYWRUaW1pbmcoKTsgfQogCi0gICAgLy8gVGhlIFdlYktpdCBsYXllciBjYWxscyB0aGlzIGZ1
bmN0aW9uIHdoZW4gaXQncyByZWFkeSBmb3IgdGhlIGRhdGEgdG8KLSAgICAvLyBhY3R1YWxseSBi
ZSBhZGRlZCB0byB0aGUgZG9jdW1lbnQuCisgICAgLy8gVGhlIFdlYktpdCBsYXllciBjYWxscyB0
aGlzIGZ1bmN0aW9uIHdoZW4gaXQncyByZWFkeSBmb3IgdGhlIGRhdGEgdG8gYWN0dWFsbHkgYmUg
YWRkZWQgdG8gdGhlIGRvY3VtZW50LgogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgY29tbWl0RGF0
YShjb25zdCBjaGFyKiBieXRlcywgc2l6ZV90IGxlbmd0aCk7CiAKLSAgICBBcHBsaWNhdGlvbkNh
Y2hlSG9zdCogYXBwbGljYXRpb25DYWNoZUhvc3QoKSBjb25zdCB7IHJldHVybiBtX2FwcGxpY2F0
aW9uQ2FjaGVIb3N0LmdldCgpOyB9CisgICAgQXBwbGljYXRpb25DYWNoZUhvc3QmIGFwcGxpY2F0
aW9uQ2FjaGVIb3N0KCkgY29uc3Q7CisgICAgQXBwbGljYXRpb25DYWNoZUhvc3QqIGFwcGxpY2F0
aW9uQ2FjaGVIb3N0VW5sZXNzQmVpbmdEZXN0cm95ZWQoKSBjb25zdDsKIAogICAgIHZvaWQgY2hl
Y2tMb2FkQ29tcGxldGUoKTsKIApAQCAtMjk3LDcgKzI4OCw3IEBAIHByb3RlY3RlZDoKIAogICAg
IFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgdm9pZCBhdHRhY2hUb0ZyYW1lKCk7CiAKLSAgICBib29s
IG1fZGVmZXJNYWluUmVzb3VyY2VEYXRhTG9hZDsKKyAgICBib29sIG1fZGVmZXJNYWluUmVzb3Vy
Y2VEYXRhTG9hZCB7IHRydWUgfTsKIAogcHJpdmF0ZToKICAgICBEb2N1bWVudCogZG9jdW1lbnQo
KSBjb25zdDsKQEAgLTM1OCw3ICszNDksNyBAQCBwcml2YXRlOgogICAgIHZvaWQgY2FuY2VsUG9s
aWN5Q2hlY2tJZk5lZWRlZCgpOwogICAgIHZvaWQgYmVjb21lTWFpblJlc291cmNlQ2xpZW50KCk7
CiAKLSAgICBGcmFtZSogbV9mcmFtZTsKKyAgICBGcmFtZSogbV9mcmFtZSB7IG51bGxwdHIgfTsK
ICAgICBSZWY8Q2FjaGVkUmVzb3VyY2VMb2FkZXI+IG1fY2FjaGVkUmVzb3VyY2VMb2FkZXI7CiAK
ICAgICBDYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRSYXdSZXNvdXJjZT4gbV9tYWluUmVzb3Vy
Y2U7CkBAIC0zOTAsMTUgKzM4MSwxNSBAQCBwcml2YXRlOgogICAgIFJlc291cmNlRXJyb3IgbV9t
YWluRG9jdW1lbnRFcnJvcjsgICAgCiAKICAgICBib29sIG1fb3JpZ2luYWxTdWJzdGl0dXRlRGF0
YVdhc1ZhbGlkOwotICAgIGJvb2wgbV9jb21taXR0ZWQ7Ci0gICAgYm9vbCBtX2lzU3RvcHBpbmc7
Ci0gICAgYm9vbCBtX2dvdEZpcnN0Qnl0ZTsKLSAgICBib29sIG1faXNDbGllbnRSZWRpcmVjdDsK
LSAgICBib29sIG1faXNMb2FkaW5nTXVsdGlwYXJ0Q29udGVudDsKKyAgICBib29sIG1fY29tbWl0
dGVkIHsgZmFsc2UgfTsKKyAgICBib29sIG1faXNTdG9wcGluZyB7IGZhbHNlIH07CisgICAgYm9v
bCBtX2dvdEZpcnN0Qnl0ZSB7IGZhbHNlIH07CisgICAgYm9vbCBtX2lzQ2xpZW50UmVkaXJlY3Qg
eyBmYWxzZSB9OworICAgIGJvb2wgbV9pc0xvYWRpbmdNdWx0aXBhcnRDb250ZW50IHsgZmFsc2Ug
fTsKIAogICAgIC8vIEZJWE1FOiBEb2N1bWVudDo6bV9wcm9jZXNzaW5nTG9hZEV2ZW50IGFuZCBE
b2N1bWVudExvYWRlcjo6bV93YXNPbmxvYWREaXNwYXRjaGVkIGFyZSByb3VnaGx5IHRoZSBzYW1l
CiAgICAgLy8gYW5kIHNob3VsZCBiZSBtZXJnZWQuCi0gICAgYm9vbCBtX3dhc09ubG9hZERpc3Bh
dGNoZWQ7CisgICAgYm9vbCBtX3dhc09ubG9hZERpc3BhdGNoZWQgeyBmYWxzZSB9OwogCiAgICAg
U3RyaW5nV2l0aERpcmVjdGlvbiBtX3BhZ2VUaXRsZTsKIApAQCAtNDE1LDggKzQwNiw4IEBAIHBy
aXZhdGU6CiAgICAgLy8gV2UgcmV0YWluIGFsbCB0aGUgcmVjZWl2ZWQgcmVzcG9uc2VzIHNvIHdl
IGNhbiBwbGF5IGJhY2sgdGhlCiAgICAgLy8gV2ViUmVzb3VyY2VMb2FkRGVsZWdhdGUgbWVzc2Fn
ZXMgaWYgdGhlIGl0ZW0gaXMgbG9hZGVkIGZyb20gdGhlCiAgICAgLy8gcGFnZSBjYWNoZS4KLSAg
ICBSZXNwb25zZVZlY3RvciBtX3Jlc3BvbnNlczsKLSAgICBib29sIG1fc3RvcFJlY29yZGluZ1Jl
c3BvbnNlczsKKyAgICBWZWN0b3I8UmVzb3VyY2VSZXNwb25zZT4gbV9yZXNwb25zZXM7CisgICAg
Ym9vbCBtX3N0b3BSZWNvcmRpbmdSZXNwb25zZXMgeyBmYWxzZSB9OwogICAgIAogICAgIHR5cGVk
ZWYgSGFzaE1hcDxSZWZQdHI8UmVzb3VyY2VMb2FkZXI+LCBSZWZQdHI8U3Vic3RpdHV0ZVJlc291
cmNlPj4gU3Vic3RpdHV0ZVJlc291cmNlTWFwOwogICAgIFN1YnN0aXR1dGVSZXNvdXJjZU1hcCBt
X3BlbmRpbmdTdWJzdGl0dXRlUmVzb3VyY2VzOwpAQCAtNDMyLDEzICs0MjMsMTMgQEAgcHJpdmF0
ZToKICAgICBWZWN0b3I8UmVzb3VyY2VSZXF1ZXN0PiBtX3Jlc291cmNlc0xvYWRlZEZyb21NZW1v
cnlDYWNoZUZvckNsaWVudE5vdGlmaWNhdGlvbjsKICAgICAKICAgICBTdHJpbmcgbV9jbGllbnRS
ZWRpcmVjdFNvdXJjZUZvckhpc3Rvcnk7Ci0gICAgYm9vbCBtX2RpZENyZWF0ZUdsb2JhbEhpc3Rv
cnlFbnRyeTsKKyAgICBib29sIG1fZGlkQ3JlYXRlR2xvYmFsSGlzdG9yeUVudHJ5IHsgZmFsc2Ug
fTsKIAotICAgIGJvb2wgbV9sb2FkaW5nTWFpblJlc291cmNlOworICAgIGJvb2wgbV9sb2FkaW5n
TWFpblJlc291cmNlIHsgZmFsc2UgfTsKICAgICBMb2FkVGltaW5nIG1fbG9hZFRpbWluZzsKIAot
ICAgIGRvdWJsZSBtX3RpbWVPZkxhc3REYXRhUmVjZWl2ZWQ7Ci0gICAgdW5zaWduZWQgbG9uZyBt
X2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyOworICAgIGRvdWJsZSBtX3Rp
bWVPZkxhc3REYXRhUmVjZWl2ZWQgeyAwIH07CisgICAgdW5zaWduZWQgbG9uZyBtX2lkZW50aWZp
ZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyIHsgMCB9OwogCiAgICAgRG9jdW1lbnRMb2Fk
ZXJUaW1lciBtX2RhdGFMb2FkVGltZXI7CiAgICAgYm9vbCBtX3dhaXRpbmdGb3JDb250ZW50UG9s
aWN5IHsgZmFsc2UgfTsKQEAgLTQ1Miw3ICs0NDMsNyBAQCBwcml2YXRlOgogICAgIEhhc2hNYXA8
dWludDY0X3QsIExpbmtJY29uPiBtX2ljb25zUGVuZGluZ0xvYWREZWNpc2lvbjsKICAgICBIYXNo
TWFwPHN0ZDo6dW5pcXVlX3B0cjxJY29uTG9hZGVyPiwgdWludDY0X3Q+IG1faWNvbkxvYWRlcnM7
CiAKLSAgICBib29sIG1fc3VicmVzb3VyY2VMb2FkZXJzQXJlUGFnZUNhY2hlQWNjZXB0YWJsZTsK
KyAgICBib29sIG1fc3VicmVzb3VyY2VMb2FkZXJzQXJlUGFnZUNhY2hlQWNjZXB0YWJsZSB7IGZh
bHNlIH07CiAgICAgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSBtX3Nob3VsZE9wZW5FeHRl
cm5hbFVSTHNQb2xpY3kgeyBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5OjpTaG91bGROb3RB
bGxvdyB9OwogCiAgICAgc3RkOjp1bmlxdWVfcHRyPEFwcGxpY2F0aW9uQ2FjaGVIb3N0PiBtX2Fw
cGxpY2F0aW9uQ2FjaGVIb3N0OwpAQCAtNDg3LDQgKzQ3OCw4NyBAQCBpbmxpbmUgdm9pZCBEb2N1
bWVudExvYWRlcjo6dGFrZU1lbW9yeUNhY2hlTG9hZHNGb3JDbGllbnROb3RpZmljYXRpb24oVmVj
dG9yPFJlcwogICAgIG1fcmVzb3VyY2VzTG9hZGVkRnJvbU1lbW9yeUNhY2hlRm9yQ2xpZW50Tm90
aWZpY2F0aW9uLmNsZWFyKCk7CiB9CiAKK2lubGluZSBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIERv
Y3VtZW50TG9hZGVyOjpvcmlnaW5hbFJlcXVlc3QoKSBjb25zdAoreworICAgIHJldHVybiBtX29y
aWdpbmFsUmVxdWVzdDsKK30KKworaW5saW5lIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgRG9jdW1l
bnRMb2FkZXI6Om9yaWdpbmFsUmVxdWVzdENvcHkoKSBjb25zdAoreworICAgIHJldHVybiBtX29y
aWdpbmFsUmVxdWVzdENvcHk7Cit9CisKK2lubGluZSBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIERv
Y3VtZW50TG9hZGVyOjpyZXF1ZXN0KCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9yZXF1ZXN0Owor
fQorCitpbmxpbmUgUmVzb3VyY2VSZXF1ZXN0JiBEb2N1bWVudExvYWRlcjo6cmVxdWVzdCgpCit7
CisgICAgcmV0dXJuIG1fcmVxdWVzdDsKK30KKworaW5saW5lIGNvbnN0IFVSTCYgRG9jdW1lbnRM
b2FkZXI6OnVybCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fcmVxdWVzdC51cmwoKTsKK30KKwor
aW5saW5lIGNvbnN0IFVSTCYgRG9jdW1lbnRMb2FkZXI6Om9yaWdpbmFsVVJMKCkgY29uc3QKK3sK
KyAgICByZXR1cm4gbV9vcmlnaW5hbFJlcXVlc3RDb3B5LnVybCgpOworfQorCitpbmxpbmUgY29u
c3QgVVJMJiBEb2N1bWVudExvYWRlcjo6cmVzcG9uc2VVUkwoKSBjb25zdAoreworICAgIHJldHVy
biBtX3Jlc3BvbnNlLnVybCgpOworfQorCitpbmxpbmUgY29uc3QgU3RyaW5nJiBEb2N1bWVudExv
YWRlcjo6cmVzcG9uc2VNSU1FVHlwZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fcmVzcG9uc2Uu
bWltZVR5cGUoKTsKK30KKworaW5saW5lIGNvbnN0IFN0cmluZyYgRG9jdW1lbnRMb2FkZXI6OmN1
cnJlbnRDb250ZW50VHlwZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fd3JpdGVyLm1pbWVUeXBl
KCk7Cit9CisKK2lubGluZSBjb25zdCBVUkwmIERvY3VtZW50TG9hZGVyOjp1bnJlYWNoYWJsZVVS
TCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fc3Vic3RpdHV0ZURhdGEuZmFpbGluZ1VSTCgpOwor
fQorCitpbmxpbmUgQXBwbGljYXRpb25DYWNoZUhvc3QmIERvY3VtZW50TG9hZGVyOjphcHBsaWNh
dGlvbkNhY2hlSG9zdCgpIGNvbnN0Cit7CisgICAgLy8gRm9yIGEgc2hvcnQgdGltZSB3aGlsZSB0
aGUgZG9jdW1lbnQgbG9hZGVyIGlzIGJlaW5nIGRlc3Ryb3llZCwgbV9hcHBsaWNhdGlvbkNhY2hl
SG9zdCBpcyBudWxsLgorICAgIC8vIEl0J3Mgbm90IGFjY2VwdGFibGUgdG8gY2FsbCB0aGlzIGZ1
bmN0aW9uIGR1cmluZyB0aGF0IHRpbWUuCisgICAgQVNTRVJUKG1fYXBwbGljYXRpb25DYWNoZUhv
c3QpOworICAgIHJldHVybiAqbV9hcHBsaWNhdGlvbkNhY2hlSG9zdDsKK30KKworaW5saW5lIEFw
cGxpY2F0aW9uQ2FjaGVIb3N0KiBEb2N1bWVudExvYWRlcjo6YXBwbGljYXRpb25DYWNoZUhvc3RV
bmxlc3NCZWluZ0Rlc3Ryb3llZCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fYXBwbGljYXRpb25D
YWNoZUhvc3QuZ2V0KCk7Cit9CisKKyNpZiBFTkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCisKK2lu
bGluZSBDb250ZW50RmlsdGVyKiBEb2N1bWVudExvYWRlcjo6Y29udGVudEZpbHRlcigpIGNvbnN0
Cit7CisgICAgcmV0dXJuIG1fY29udGVudEZpbHRlci5nZXQoKTsKK30KKworI2VuZGlmCisKK2lu
bGluZSB2b2lkIERvY3VtZW50TG9hZGVyOjpkaWRUZWxsQ2xpZW50QWJvdXRMb2FkKGNvbnN0IFN0
cmluZyYgdXJsKQoreworI2lmICFQTEFURk9STShDT0NPQSkKKyAgICAvLyBEb24ndCBpbmNsdWRl
IGRhdGEgVVJMcyBoZXJlLCBhcyBpZiBhIGxvdCBvZiBkYXRhIGlzIGxvYWRlZCB0aGF0IHdheSwg
d2UgaG9sZCBvbiB0byB0aGUgKGxhcmdlKSBVUkwgc3RyaW5nIGZvciB0b28gbG9uZy4KKyAgICBp
ZiAocHJvdG9jb2xJcyh1cmwsICJkYXRhIikpCisgICAgICAgIHJldHVybjsKKyNlbmRpZgorICAg
IGlmICghdXJsLmlzRW1wdHkoKSkKKyAgICAgICAgbV9yZXNvdXJjZXNDbGllbnRLbm93c0Fib3V0
LmFkZCh1cmwpOworfQorCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRW1w
dHlDbGllbnRzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuY3BwCmlu
ZGV4IGUwZjZlNWIzZTM0YThhMWU4ZDMxNDljMDQyZTFkYTBhMzczZDRkYTkuLmVlZmM0YWE4Mzgz
MTA0NDZlOTIxZDRmMTcyOTU4MmU4MjRjOGE1ZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9FbXB0eUNsaWVudHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0
eUNsaWVudHMuY3BwCkBAIC00Niw2ICs0Niw3IEBACiAjaW5jbHVkZSAiSFRNTEZvcm1FbGVtZW50
LmgiCiAjaW5jbHVkZSAiSW5Qcm9jZXNzSURCU2VydmVyLmgiCiAjaW5jbHVkZSAiSW5zcGVjdG9y
Q2xpZW50LmgiCisjaW5jbHVkZSAiTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmgiCiAjaW5jbHVkZSAi
UGFnZS5oIgogI2luY2x1ZGUgIlBhZ2VDb25maWd1cmF0aW9uLmgiCiAjaW5jbHVkZSAiUGF5bWVu
dENvb3JkaW5hdG9yQ2xpZW50LmgiCkBAIC0xNzEsOCArMTcyLDggQEAgcHJpdmF0ZToKICAgICB2
b2lkIHJlcXVlc3RDYW5kaWRhdGVzRm9yU2VsZWN0aW9uKGNvbnN0IFZpc2libGVTZWxlY3Rpb24m
KSBmaW5hbCB7IH0KICAgICB2b2lkIGhhbmRsZUFjY2VwdGVkQ2FuZGlkYXRlV2l0aFNvZnRTcGFj
ZXMoVGV4dENoZWNraW5nUmVzdWx0KSBmaW5hbCB7IH0KIAotICAgIHZvaWQgcmVnaXN0ZXJVbmRv
U3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPikgZmluYWw7Ci0gICAgdm9pZCByZWdpc3RlclJlZG9T
dGVwKFBhc3NSZWZQdHI8VW5kb1N0ZXA+KSBmaW5hbDsKKyAgICB2b2lkIHJlZ2lzdGVyVW5kb1N0
ZXAoVW5kb1N0ZXAmKSBmaW5hbDsKKyAgICB2b2lkIHJlZ2lzdGVyUmVkb1N0ZXAoVW5kb1N0ZXAm
KSBmaW5hbDsKICAgICB2b2lkIGNsZWFyVW5kb1JlZG9PcGVyYXRpb25zKCkgZmluYWwgeyB9CiAK
ICAgICBib29sIGNhbkNvcHlDdXQoRnJhbWUqLCBib29sIGRlZmF1bHRWYWx1ZSkgY29uc3QgZmlu
YWwgeyByZXR1cm4gZGVmYXVsdFZhbHVlOyB9CkBAIC0zMzEsMTQgKzMzMiwxNCBAQCBjbGFzcyBF
bXB0eUZyYW1lTG9hZGVyQ2xpZW50IGZpbmFsIDogcHVibGljIEZyYW1lTG9hZGVyQ2xpZW50IHsK
ICAgICB2b2lkIGRpc3BhdGNoU2hvdygpIGZpbmFsIHsgfQogCiAgICAgdm9pZCBkaXNwYXRjaERl
Y2lkZVBvbGljeUZvclJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBjb25zdCBSZXNv
dXJjZVJlcXVlc3QmLCBGcmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5hbCB7IH0KLSAgICB2b2lkIGRp
c3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rp
b24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIGNvbnN0
IFN0cmluZyYsIEZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFsOwotICAgIHZvaWQgZGlzcGF0Y2hE
ZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mLCBj
b25zdCBSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIEZyYW1lUG9saWN5
RnVuY3Rpb24pIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5k
b3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYs
IEZvcm1TdGF0ZSosIGNvbnN0IFN0cmluZyYsIEZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFsOwor
ICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5h
dmlnYXRpb25BY3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBGb3JtU3RhdGUqLCBGcmFt
ZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsKICAgICB2b2lkIGNhbmNlbFBvbGljeUNoZWNrKCkgZmlu
YWwgeyB9CiAKICAgICB2b2lkIGRpc3BhdGNoVW5hYmxlVG9JbXBsZW1lbnRQb2xpY3koY29uc3Qg
UmVzb3VyY2VFcnJvciYpIGZpbmFsIHsgfQogCi0gICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5kU3Vi
bWl0RXZlbnQoUGFzc1JlZlB0cjxGb3JtU3RhdGU+KSBmaW5hbDsKLSAgICB2b2lkIGRpc3BhdGNo
V2lsbFN1Ym1pdEZvcm0oUGFzc1JlZlB0cjxGb3JtU3RhdGU+LCBGcmFtZVBvbGljeUZ1bmN0aW9u
KSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChSZWY8Rm9ybVN0
YXRlPiYmKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0oRm9ybVN0YXRl
JiwgRnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7CiAKICAgICB2b2lkIHJldmVydFRvUHJvdmlz
aW9uYWxTdGF0ZShEb2N1bWVudExvYWRlciopIGZpbmFsIHsgfQogICAgIHZvaWQgc2V0TWFpbkRv
Y3VtZW50RXJyb3IoRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZUVycm9yJikgZmluYWwg
eyB9CkBAIC00MTAsMTAgKzQxMSwxMCBAQCBjbGFzcyBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50IGZp
bmFsIDogcHVibGljIEZyYW1lTG9hZGVyQ2xpZW50IHsKICAgICB2b2lkIGRpZERpc3BsYXlJbnNl
Y3VyZUNvbnRlbnQoKSBmaW5hbCB7IH0KICAgICB2b2lkIGRpZFJ1bkluc2VjdXJlQ29udGVudChT
ZWN1cml0eU9yaWdpbiosIGNvbnN0IFVSTCYpIGZpbmFsIHsgfQogICAgIHZvaWQgZGlkRGV0ZWN0
WFNTKGNvbnN0IFVSTCYsIGJvb2wpIGZpbmFsIHsgfQotICAgIFJlZlB0cjxGcmFtZT4gY3JlYXRl
RnJhbWUoY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiwgSFRNTEZyYW1lT3duZXJFbGVtZW50Kiwg
Y29uc3QgU3RyaW5nJiwgYm9vbCwgaW50LCBpbnQpIGZpbmFsOwotICAgIFJlZlB0cjxXaWRnZXQ+
IGNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiwgSFRNTFBsdWdJbkVsZW1lbnQqLCBjb25zdCBV
UkwmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3Qg
U3RyaW5nJiwgYm9vbCkgZmluYWw7CisgICAgUmVmUHRyPEZyYW1lPiBjcmVhdGVGcmFtZShjb25z
dCBVUkwmLCBjb25zdCBTdHJpbmcmLCBIVE1MRnJhbWVPd25lckVsZW1lbnQmLCBjb25zdCBTdHJp
bmcmLCBib29sLCBpbnQsIGludCkgZmluYWw7CisgICAgUmVmUHRyPFdpZGdldD4gY3JlYXRlUGx1
Z2luKGNvbnN0IEludFNpemUmLCBIVE1MUGx1Z0luRWxlbWVudCYsIGNvbnN0IFVSTCYsIGNvbnN0
IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBTdHJpbmcmLCBi
b29sKSBmaW5hbDsKICAgICB2b2lkIHJlY3JlYXRlUGx1Z2luKFdpZGdldCopIGZpbmFsOwotICAg
IFBhc3NSZWZQdHI8V2lkZ2V0PiBjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUm
LCBIVE1MQXBwbGV0RWxlbWVudCosIGNvbnN0IFVSTCYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+Jiwg
Y29uc3QgVmVjdG9yPFN0cmluZz4mKSBmaW5hbDsKKyAgICBSZWZQdHI8V2lkZ2V0PiBjcmVhdGVK
YXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmLCBIVE1MQXBwbGV0RWxlbWVudCYsIGNvbnN0
IFVSTCYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mKSBmaW5h
bDsKIAogICAgIE9iamVjdENvbnRlbnRUeXBlIG9iamVjdENvbnRlbnRUeXBlKGNvbnN0IFVSTCYs
IGNvbnN0IFN0cmluZyYpIGZpbmFsIHsgcmV0dXJuIE9iamVjdENvbnRlbnRUeXBlOjpOb25lOyB9
CiAgICAgU3RyaW5nIG92ZXJyaWRlTWVkaWFUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4geyB9
OyB9CkBAIC00MzIsMTYgKzQzMywzNyBAQCBjbGFzcyBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50IGZp
bmFsIDogcHVibGljIEZyYW1lTG9hZGVyQ2xpZW50IHsKICAgICBib29sIHNob3VsZENhY2hlUmVz
cG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJiwgY29uc3QgdW5zaWduZWQgY2hhciosIHVuc2lnbmVkIGxvbmcgbG9uZykgZmluYWwgeyBy
ZXR1cm4gdHJ1ZTsgfQogI2VuZGlmCiAKLSAgICBQYXNzUmVmUHRyPEZyYW1lTmV0d29ya2luZ0Nv
bnRleHQ+IGNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkgZmluYWw7CisgICAgUmVmPEZyYW1lTmV0
d29ya2luZ0NvbnRleHQ+IGNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkgZmluYWw7CiAKICNpZiBF
TkFCTEUoUkVRVUVTVF9BVVRPQ09NUExFVEUpCi0gICAgdm9pZCBkaWRSZXF1ZXN0QXV0b2NvbXBs
ZXRlKFBhc3NSZWZQdHI8Rm9ybVN0YXRlPikgZmluYWwgeyB9CisgICAgdm9pZCBkaWRSZXF1ZXN0
QXV0b2NvbXBsZXRlKFJlZjxGb3JtU3RhdGU+JiYpIGZpbmFsIHsgfQogI2VuZGlmCiAKICAgICBi
b29sIGlzRW1wdHlGcmFtZUxvYWRlckNsaWVudCgpIGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KICAg
ICB2b2lkIHByZWZldGNoRE5TKGNvbnN0IFN0cmluZyYpIGZpbmFsIHsgfQogfTsKIAorY2xhc3Mg
RW1wdHlGcmFtZU5ldHdvcmtpbmdDb250ZXh0IGZpbmFsIDogcHVibGljIEZyYW1lTmV0d29ya2lu
Z0NvbnRleHQgeworcHVibGljOgorICAgIHN0YXRpYyBSZWY8RW1wdHlGcmFtZU5ldHdvcmtpbmdD
b250ZXh0PiBjcmVhdGUoKSB7IHJldHVybiBhZG9wdFJlZigqbmV3IEVtcHR5RnJhbWVOZXR3b3Jr
aW5nQ29udGV4dCk7IH0KKworcHJpdmF0ZToKKyAgICBFbXB0eUZyYW1lTmV0d29ya2luZ0NvbnRl
eHQoKTsKKworICAgIGJvb2wgc2hvdWxkQ2xlYXJSZWZlcnJlck9uSFRUUFNUb0hUVFBSZWRpcmVj
dCgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KKyAgICBOZXR3b3JrU3RvcmFnZVNlc3Npb24mIHN0
b3JhZ2VTZXNzaW9uKCkgY29uc3QgZmluYWwgeyByZXR1cm4gTmV0d29ya1N0b3JhZ2VTZXNzaW9u
OjpkZWZhdWx0U3RvcmFnZVNlc3Npb24oKTsgfQorCisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAg
Ym9vbCBsb2NhbEZpbGVDb250ZW50U25pZmZpbmdFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gZmFs
c2U7IH0KKyAgICBTY2hlZHVsZVBhaXJIYXNoU2V0KiBzY2hlZHVsZWRSdW5Mb29wUGFpcnMoKSBj
b25zdCB7IHJldHVybiBudWxscHRyOyB9CisgICAgUmV0YWluUHRyPENGRGF0YVJlZj4gc291cmNl
QXBwbGljYXRpb25BdWRpdERhdGEoKSBjb25zdCB7IHJldHVybiBudWxscHRyOyB9OworI2VuZGlm
CisKKyNpZiBQTEFURk9STShDT0NPQSkgfHwgUExBVEZPUk0oV0lOKQorICAgIFJlc291cmNlRXJy
b3IgYmxvY2tlZEVycm9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYpIGNvbnN0IGZpbmFsIHsgcmV0
dXJuIHsgfTsgfQorI2VuZGlmCit9OworCiBjbGFzcyBFbXB0eUluc3BlY3RvckNsaWVudCBmaW5h
bCA6IHB1YmxpYyBJbnNwZWN0b3JDbGllbnQgewogICAgIHZvaWQgaW5zcGVjdGVkUGFnZURlc3Ry
b3llZCgpIGZpbmFsIHsgfQogICAgIEluc3BlY3Rvcjo6RnJvbnRlbmRDaGFubmVsKiBvcGVuTG9j
YWxGcm9udGVuZChJbnNwZWN0b3JDb250cm9sbGVyKikgZmluYWwgeyByZXR1cm4gbnVsbHB0cjsg
fQpAQCAtNTY5LDIzICs1OTEsMjMgQEAgc3RkOjp1bmlxdWVfcHRyPENvbG9yQ2hvb3Nlcj4gRW1w
dHlDaHJvbWVDbGllbnQ6OmNyZWF0ZUNvbG9yQ2hvb3NlcihDb2xvckNob29zZXIKIAogI2VuZGlm
CiAKLXZvaWQgRW1wdHlDaHJvbWVDbGllbnQ6OnJ1bk9wZW5QYW5lbChGcmFtZSosIFBhc3NSZWZQ
dHI8RmlsZUNob29zZXI+KQordm9pZCBFbXB0eUNocm9tZUNsaWVudDo6cnVuT3BlblBhbmVsKEZy
YW1lJiwgRmlsZUNob29zZXImKQogewogfQogCi12b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IE5hdmlnYXRpb25B
Y3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIGNv
bnN0IFN0cmluZyYsIEZyYW1lUG9saWN5RnVuY3Rpb24pCit2b2lkIEVtcHR5RnJhbWVMb2FkZXJD
bGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IE5hdmln
YXRpb25BY3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBGb3JtU3RhdGUqLCBjb25zdCBT
dHJpbmcmLCBGcmFtZVBvbGljeUZ1bmN0aW9uKQogewogfQogCi12b2lkIEVtcHR5RnJhbWVMb2Fk
ZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBO
YXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgUGFzc1JlZlB0cjxGb3Jt
U3RhdGU+LCBGcmFtZVBvbGljeUZ1bmN0aW9uKQordm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50
OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdGlv
bkFjdGlvbiYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIEZvcm1TdGF0ZSosIEZyYW1lUG9saWN5
RnVuY3Rpb24pCiB7CiB9CiAKLXZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hX
aWxsU2VuZFN1Ym1pdEV2ZW50KFBhc3NSZWZQdHI8Rm9ybVN0YXRlPikKK3ZvaWQgRW1wdHlGcmFt
ZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJlZjxGb3JtU3RhdGU+
JiYpCiB7CiB9CiAKLXZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU3Vi
bWl0Rm9ybShQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIEZyYW1lUG9saWN5RnVuY3Rpb24pCit2b2lk
IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0oRm9ybVN0YXRl
JiwgRnJhbWVQb2xpY3lGdW5jdGlvbikKIHsKIH0KIApAQCAtNTk0LDEyICs2MTYsMTIgQEAgUmVm
PERvY3VtZW50TG9hZGVyPiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVEb2N1bWVudExv
YWRlcihjb25zdCBSZXNvdXJjZVIKICAgICByZXR1cm4gRG9jdW1lbnRMb2FkZXI6OmNyZWF0ZShy
ZXF1ZXN0LCBzdWJzdGl0dXRlRGF0YSk7CiB9CiAKLVJlZlB0cjxGcmFtZT4gRW1wdHlGcmFtZUxv
YWRlckNsaWVudDo6Y3JlYXRlRnJhbWUoY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiwgSFRNTEZy
YW1lT3duZXJFbGVtZW50KiwgY29uc3QgU3RyaW5nJiwgYm9vbCwgaW50LCBpbnQpCitSZWZQdHI8
RnJhbWU+IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYsIGNv
bnN0IFN0cmluZyYsIEhUTUxGcmFtZU93bmVyRWxlbWVudCYsIGNvbnN0IFN0cmluZyYsIGJvb2ws
IGludCwgaW50KQogewogICAgIHJldHVybiBudWxscHRyOwogfQogCi1SZWZQdHI8V2lkZ2V0PiBF
bXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYsIEhUTUxQ
bHVnSW5FbGVtZW50KiwgY29uc3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBW
ZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFN0cmluZyYsIGJvb2wpCitSZWZQdHI8V2lkZ2V0PiBFbXB0
eUZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYsIEhUTUxQbHVn
SW5FbGVtZW50JiwgY29uc3QgVVJMJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBWZWN0
b3I8U3RyaW5nPiYsIGNvbnN0IFN0cmluZyYsIGJvb2wpCiB7CiAgICAgcmV0dXJuIG51bGxwdHI7
CiB9CkBAIC02MDgsMjUgKzYzMCwzMCBAQCB2b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OnJl
Y3JlYXRlUGx1Z2luKFdpZGdldCopCiB7CiB9CiAKLVBhc3NSZWZQdHI8V2lkZ2V0PiBFbXB0eUZy
YW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmLCBI
VE1MQXBwbGV0RWxlbWVudCosIGNvbnN0IFVSTCYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29u
c3QgVmVjdG9yPFN0cmluZz4mKQorUmVmUHRyPFdpZGdldD4gRW1wdHlGcmFtZUxvYWRlckNsaWVu
dDo6Y3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXplJiwgSFRNTEFwcGxldEVsZW1l
bnQmLCBjb25zdCBVUkwmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFZlY3RvcjxTdHJp
bmc+JikKIHsKICAgICByZXR1cm4gbnVsbHB0cjsKIH0KIAotUGFzc1JlZlB0cjxGcmFtZU5ldHdv
cmtpbmdDb250ZXh0PiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVOZXR3b3JraW5nQ29u
dGV4dCgpCitpbmxpbmUgRW1wdHlGcmFtZU5ldHdvcmtpbmdDb250ZXh0OjpFbXB0eUZyYW1lTmV0
d29ya2luZ0NvbnRleHQoKQorICAgIDogRnJhbWVOZXR3b3JraW5nQ29udGV4dCB7IG51bGxwdHIg
fQoreworfQorCitSZWY8RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gRW1wdHlGcmFtZUxvYWRlckNs
aWVudDo6Y3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKQogewotICAgIHJldHVybiBQYXNzUmVmUHRy
PEZyYW1lTmV0d29ya2luZ0NvbnRleHQ+KCk7CisgICAgcmV0dXJuIEVtcHR5RnJhbWVOZXR3b3Jr
aW5nQ29udGV4dDo6Y3JlYXRlKCk7CiB9CiAKIHZvaWQgRW1wdHlFZGl0b3JDbGllbnQ6OkVtcHR5
VGV4dENoZWNrZXJDbGllbnQ6OnJlcXVlc3RDaGVja2luZ09mU3RyaW5nKFRleHRDaGVja2luZ1Jl
cXVlc3QmLCBjb25zdCBWaXNpYmxlU2VsZWN0aW9uJikKIHsKIH0KIAotdm9pZCBFbXB0eUVkaXRv
ckNsaWVudDo6cmVnaXN0ZXJVbmRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPikKK3ZvaWQgRW1w
dHlFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb1N0ZXAoVW5kb1N0ZXAmKQogewogfQogCi12b2lk
IEVtcHR5RWRpdG9yQ2xpZW50OjpyZWdpc3RlclJlZG9TdGVwKFBhc3NSZWZQdHI8VW5kb1N0ZXA+
KQordm9pZCBFbXB0eUVkaXRvckNsaWVudDo6cmVnaXN0ZXJSZWRvU3RlcChVbmRvU3RlcCYpCiB7
CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuaCBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuaAppbmRleCBmYmIxNmQ5N2Q1MWRh
OTU3NGI5ZDkyZmRjMDYyYzM4NzYzOWNlMjg1Li45MWMyZDM4NjkwMTBkYTVlYTQzZDAwOWNkMGYx
M2UwYjc4ZTdjZmY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlDbGll
bnRzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5oCkBAIC0xMzgs
NyArMTM4LDcgQEAgY2xhc3MgRW1wdHlDaHJvbWVDbGllbnQgOiBwdWJsaWMgQ2hyb21lQ2xpZW50
IHsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8Q29sb3JDaG9vc2VyPiBjcmVhdGVDb2xvckNob29zZXIo
Q29sb3JDaG9vc2VyQ2xpZW50KiwgY29uc3QgQ29sb3ImKSBmaW5hbDsKICNlbmRpZgogCi0gICAg
dm9pZCBydW5PcGVuUGFuZWwoRnJhbWUqLCBQYXNzUmVmUHRyPEZpbGVDaG9vc2VyPikgZmluYWw7
CisgICAgdm9pZCBydW5PcGVuUGFuZWwoRnJhbWUmLCBGaWxlQ2hvb3NlciYpIGZpbmFsOwogICAg
IHZvaWQgbG9hZEljb25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8U3RyaW5nPiYsIEZpbGVJY29uTG9h
ZGVyJikgZmluYWwgeyB9CiAKICAgICB2b2lkIGVsZW1lbnREaWRGb2N1cyhjb25zdCBOb2RlKikg
ZmluYWwgeyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN0YXRlLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3RhdGUuY3BwCmluZGV4IDM1MTBiODAyNWRk
ZmMzNTE2MzhlMDMwNjA2ZmFkNjA0NWNjOTUxOTYuLjVlODk2ZTdmODUyZjk2ZTI1NDBlZDhkNGQx
NTE3NjJiNmI0MGQ5MTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3Rh
dGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3RhdGUuY3BwCkBAIC0xLDUg
KzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNiwgMjAwOSBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTM0
LDE3ICszNCwxNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWlubGluZSBGb3JtU3RhdGU6
OkZvcm1TdGF0ZShQYXNzUmVmUHRyPEhUTUxGb3JtRWxlbWVudD4gZm9ybSwgU3RyaW5nUGFpclZl
Y3RvciYgdGV4dEZpZWxkVmFsdWVzVG9BZG9wdCwgUGFzc1JlZlB0cjxEb2N1bWVudD4gc291cmNl
RG9jdW1lbnQsIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciBmb3JtU3VibWlzc2lvblRyaWdnZXIpCitp
bmxpbmUgRm9ybVN0YXRlOjpGb3JtU3RhdGUoSFRNTEZvcm1FbGVtZW50JiBmb3JtLCBTdHJpbmdQ
YWlyVmVjdG9yJiYgdGV4dEZpZWxkVmFsdWVzLCBEb2N1bWVudCYgc291cmNlRG9jdW1lbnQsIEZv
cm1TdWJtaXNzaW9uVHJpZ2dlciBmb3JtU3VibWlzc2lvblRyaWdnZXIpCiAgICAgOiBtX2Zvcm0o
Zm9ybSkKKyAgICAsIG1fdGV4dEZpZWxkVmFsdWVzKFdURk1vdmUodGV4dEZpZWxkVmFsdWVzKSkK
ICAgICAsIG1fc291cmNlRG9jdW1lbnQoc291cmNlRG9jdW1lbnQpCiAgICAgLCBtX2Zvcm1TdWJt
aXNzaW9uVHJpZ2dlcihmb3JtU3VibWlzc2lvblRyaWdnZXIpCiB7Ci0gICAgbV90ZXh0RmllbGRW
YWx1ZXMuc3dhcCh0ZXh0RmllbGRWYWx1ZXNUb0Fkb3B0KTsKIH0KIAotUmVmPEZvcm1TdGF0ZT4g
Rm9ybVN0YXRlOjpjcmVhdGUoUGFzc1JlZlB0cjxIVE1MRm9ybUVsZW1lbnQ+IGZvcm0sIFN0cmlu
Z1BhaXJWZWN0b3ImIHRleHRGaWVsZFZhbHVlc1RvQWRvcHQsIFBhc3NSZWZQdHI8RG9jdW1lbnQ+
IHNvdXJjZURvY3VtZW50LCBGb3JtU3VibWlzc2lvblRyaWdnZXIgZm9ybVN1Ym1pc3Npb25Ucmln
Z2VyKQorUmVmPEZvcm1TdGF0ZT4gRm9ybVN0YXRlOjpjcmVhdGUoSFRNTEZvcm1FbGVtZW50JiBm
b3JtLCBTdHJpbmdQYWlyVmVjdG9yJiYgdGV4dEZpZWxkVmFsdWVzLCBEb2N1bWVudCYgc291cmNl
RG9jdW1lbnQsIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciBmb3JtU3VibWlzc2lvblRyaWdnZXIpCiB7
Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRm9ybVN0YXRlKGZvcm0sIHRleHRGaWVsZFZhbHVl
c1RvQWRvcHQsIHNvdXJjZURvY3VtZW50LCBmb3JtU3VibWlzc2lvblRyaWdnZXIpKTsKKyAgICBy
ZXR1cm4gYWRvcHRSZWYoKm5ldyBGb3JtU3RhdGUoZm9ybSwgV1RGTW92ZSh0ZXh0RmllbGRWYWx1
ZXMpLCBzb3VyY2VEb2N1bWVudCwgZm9ybVN1Ym1pc3Npb25UcmlnZ2VyKSk7CiB9CiAKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3RhdGUuaCBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9Gb3JtU3RhdGUuaAppbmRleCA5NTA0MGY5YzI4ZDQ3OTNiYjE1ZjhmZjM3YTBi
NjI0ZDI4YmQ4Y2Y3Li4yZGVkZDA5YmU1MmIwYWZjOTcwMjgzYTExNGNjZjAzNGY3YjY1ZmFmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9ybVN0YXRlLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0Zvcm1TdGF0ZS5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHly
aWdodCAoQykgMjAwNiwgMjAwOSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBD
b3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAg
KgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTI4LDM3ICsyOCwzMyBAQAogCiAjcHJh
Z21hIG9uY2UKIAotI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAjaW5jbHVkZSA8d3RmL3Rl
eHQvV1RGU3RyaW5nLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotICAgIGNsYXNzIERvY3Vt
ZW50OwotICAgIGNsYXNzIEhUTUxGb3JtRWxlbWVudDsKK2NsYXNzIERvY3VtZW50OworY2xhc3Mg
SFRNTEZvcm1FbGVtZW50OwogCi0gICAgZW51bSBGb3JtU3VibWlzc2lvblRyaWdnZXIgewotICAg
ICAgICBTdWJtaXR0ZWRCeUphdmFTY3JpcHQsCi0gICAgICAgIE5vdFN1Ym1pdHRlZEJ5SmF2YVNj
cmlwdAotICAgIH07Ci0gICAgCi0gICAgdHlwZWRlZiBWZWN0b3I8c3RkOjpwYWlyPFN0cmluZywg
U3RyaW5nPj4gU3RyaW5nUGFpclZlY3RvcjsKK2VudW0gRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIHsg
U3VibWl0dGVkQnlKYXZhU2NyaXB0LCBOb3RTdWJtaXR0ZWRCeUphdmFTY3JpcHQgfTsKIAotICAg
IGNsYXNzIEZvcm1TdGF0ZSA6IHB1YmxpYyBSZWZDb3VudGVkPEZvcm1TdGF0ZT4gewotICAgIHB1
YmxpYzoKLSAgICAgICAgc3RhdGljIFJlZjxGb3JtU3RhdGU+IGNyZWF0ZShQYXNzUmVmUHRyPEhU
TUxGb3JtRWxlbWVudD4sIFN0cmluZ1BhaXJWZWN0b3ImIHRleHRGaWVsZFZhbHVlc1RvQWRvcHQs
IFBhc3NSZWZQdHI8RG9jdW1lbnQ+LCBGb3JtU3VibWlzc2lvblRyaWdnZXIpOwordXNpbmcgU3Ry
aW5nUGFpclZlY3RvciA9IFZlY3RvcjxzdGQ6OnBhaXI8U3RyaW5nLCBTdHJpbmc+PjsKIAotICAg
ICAgICBIVE1MRm9ybUVsZW1lbnQqIGZvcm0oKSBjb25zdCB7IHJldHVybiBtX2Zvcm0uZ2V0KCk7
IH0KLSAgICAgICAgY29uc3QgU3RyaW5nUGFpclZlY3RvciYgdGV4dEZpZWxkVmFsdWVzKCkgY29u
c3QgeyByZXR1cm4gbV90ZXh0RmllbGRWYWx1ZXM7IH0KLSAgICAgICAgRG9jdW1lbnQqIHNvdXJj
ZURvY3VtZW50KCkgY29uc3QgeyByZXR1cm4gbV9zb3VyY2VEb2N1bWVudC5nZXQoKTsgfQotICAg
ICAgICBGb3JtU3VibWlzc2lvblRyaWdnZXIgZm9ybVN1Ym1pc3Npb25UcmlnZ2VyKCkgY29uc3Qg
eyByZXR1cm4gbV9mb3JtU3VibWlzc2lvblRyaWdnZXI7IH0KK2NsYXNzIEZvcm1TdGF0ZSA6IHB1
YmxpYyBSZWZDb3VudGVkPEZvcm1TdGF0ZT4geworcHVibGljOgorICAgIHN0YXRpYyBSZWY8Rm9y
bVN0YXRlPiBjcmVhdGUoSFRNTEZvcm1FbGVtZW50JiwgU3RyaW5nUGFpclZlY3RvciYmIHRleHRG
aWVsZFZhbHVlcywgRG9jdW1lbnQmLCBGb3JtU3VibWlzc2lvblRyaWdnZXIpOwogCi0gICAgcHJp
dmF0ZToKLSAgICAgICAgRm9ybVN0YXRlKFBhc3NSZWZQdHI8SFRNTEZvcm1FbGVtZW50PiwgU3Ry
aW5nUGFpclZlY3RvciYgdGV4dEZpZWxkVmFsdWVzVG9BZG9wdCwgUGFzc1JlZlB0cjxEb2N1bWVu
dD4sIEZvcm1TdWJtaXNzaW9uVHJpZ2dlcik7CisgICAgSFRNTEZvcm1FbGVtZW50JiBmb3JtKCkg
Y29uc3QgeyByZXR1cm4gbV9mb3JtOyB9CisgICAgY29uc3QgU3RyaW5nUGFpclZlY3RvciYgdGV4
dEZpZWxkVmFsdWVzKCkgY29uc3QgeyByZXR1cm4gbV90ZXh0RmllbGRWYWx1ZXM7IH0KKyAgICBE
b2N1bWVudCYgc291cmNlRG9jdW1lbnQoKSBjb25zdCB7IHJldHVybiBtX3NvdXJjZURvY3VtZW50
OyB9CisgICAgRm9ybVN1Ym1pc3Npb25UcmlnZ2VyIGZvcm1TdWJtaXNzaW9uVHJpZ2dlcigpIGNv
bnN0IHsgcmV0dXJuIG1fZm9ybVN1Ym1pc3Npb25UcmlnZ2VyOyB9CiAKLSAgICAgICAgUmVmUHRy
PEhUTUxGb3JtRWxlbWVudD4gbV9mb3JtOwotICAgICAgICBTdHJpbmdQYWlyVmVjdG9yIG1fdGV4
dEZpZWxkVmFsdWVzOwotICAgICAgICBSZWZQdHI8RG9jdW1lbnQ+IG1fc291cmNlRG9jdW1lbnQ7
Ci0gICAgICAgIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciBtX2Zvcm1TdWJtaXNzaW9uVHJpZ2dlcjsK
LSAgICB9OworcHJpdmF0ZToKKyAgICBGb3JtU3RhdGUoSFRNTEZvcm1FbGVtZW50JiwgU3RyaW5n
UGFpclZlY3RvciYmIHRleHRGaWVsZFZhbHVlcywgRG9jdW1lbnQmLCBGb3JtU3VibWlzc2lvblRy
aWdnZXIpOworCisgICAgUmVmPEhUTUxGb3JtRWxlbWVudD4gbV9mb3JtOworICAgIFN0cmluZ1Bh
aXJWZWN0b3IgbV90ZXh0RmllbGRWYWx1ZXM7CisgICAgUmVmPERvY3VtZW50PiBtX3NvdXJjZURv
Y3VtZW50OworICAgIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciBtX2Zvcm1TdWJtaXNzaW9uVHJpZ2dl
cjsKK307CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9Gb3JtU3VibWlzc2lvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9y
bVN1Ym1pc3Npb24uY3BwCmluZGV4IDIwYWFmNGM0YzcyN2FmNjkyYjc5OGUyNjk2NWZiOTQwNDc4
NmM5YjIuLjc3MDczNDNjNWMyMzc1OTc5N2JiY2JmMDQxNTM5MjMwMzc5Zjc5YzkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb3JtU3VibWlzc2lvbi5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0Zvcm1TdWJtaXNzaW9uLmNwcApAQCAtMTA2LDcgKzEwNiw3IEBAIHZv
aWQgRm9ybVN1Ym1pc3Npb246OkF0dHJpYnV0ZXM6OnVwZGF0ZUVuY29kaW5nVHlwZShjb25zdCBT
dHJpbmcmIHR5cGUpCiAKIEZvcm1TdWJtaXNzaW9uOjpNZXRob2QgRm9ybVN1Ym1pc3Npb246OkF0
dHJpYnV0ZXM6OnBhcnNlTWV0aG9kVHlwZShjb25zdCBTdHJpbmcmIHR5cGUpCiB7Ci0gICAgcmV0
dXJuIGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHR5cGUsICJwb3N0IikgPyBGb3JtU3Vi
bWlzc2lvbjo6UG9zdE1ldGhvZCA6IEZvcm1TdWJtaXNzaW9uOjpHZXRNZXRob2Q7CisgICAgcmV0
dXJuIGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHR5cGUsICJwb3N0IikgPyBGb3JtU3Vi
bWlzc2lvbjo6TWV0aG9kOjpQb3N0IDogRm9ybVN1Ym1pc3Npb246Ok1ldGhvZDo6R2V0OwogfQog
CiB2b2lkIEZvcm1TdWJtaXNzaW9uOjpBdHRyaWJ1dGVzOjp1cGRhdGVNZXRob2RUeXBlKGNvbnN0
IFN0cmluZyYgdHlwZSkKQEAgLTExNCwyNCArMTE0LDEzIEBAIHZvaWQgRm9ybVN1Ym1pc3Npb246
OkF0dHJpYnV0ZXM6OnVwZGF0ZU1ldGhvZFR5cGUoY29uc3QgU3RyaW5nJiB0eXBlKQogICAgIG1f
bWV0aG9kID0gcGFyc2VNZXRob2RUeXBlKHR5cGUpOwogfQogCi12b2lkIEZvcm1TdWJtaXNzaW9u
OjpBdHRyaWJ1dGVzOjpjb3B5RnJvbShjb25zdCBBdHRyaWJ1dGVzJiBvdGhlcikKLXsKLSAgICBt
X21ldGhvZCA9IG90aGVyLm1fbWV0aG9kOwotICAgIG1faXNNdWx0aVBhcnRGb3JtID0gb3RoZXIu
bV9pc011bHRpUGFydEZvcm07Ci0KLSAgICBtX2FjdGlvbiA9IG90aGVyLm1fYWN0aW9uOwotICAg
IG1fdGFyZ2V0ID0gb3RoZXIubV90YXJnZXQ7Ci0gICAgbV9lbmNvZGluZ1R5cGUgPSBvdGhlci5t
X2VuY29kaW5nVHlwZTsKLSAgICBtX2FjY2VwdENoYXJzZXQgPSBvdGhlci5tX2FjY2VwdENoYXJz
ZXQ7Ci19Ci0KLWlubGluZSBGb3JtU3VibWlzc2lvbjo6Rm9ybVN1Ym1pc3Npb24oTWV0aG9kIG1l
dGhvZCwgY29uc3QgVVJMJiBhY3Rpb24sIGNvbnN0IFN0cmluZyYgdGFyZ2V0LCBjb25zdCBTdHJp
bmcmIGNvbnRlbnRUeXBlLCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4gc3RhdGUsIFBhc3NSZWZQdHI8
Rm9ybURhdGE+IGRhdGEsIGNvbnN0IFN0cmluZyYgYm91bmRhcnksIExvY2tIaXN0b3J5IGxvY2tI
aXN0b3J5LCBQYXNzUmVmUHRyPEV2ZW50PiBldmVudCkKK2lubGluZSBGb3JtU3VibWlzc2lvbjo6
Rm9ybVN1Ym1pc3Npb24oTWV0aG9kIG1ldGhvZCwgY29uc3QgVVJMJiBhY3Rpb24sIGNvbnN0IFN0
cmluZyYgdGFyZ2V0LCBjb25zdCBTdHJpbmcmIGNvbnRlbnRUeXBlLCBSZWY8Rm9ybVN0YXRlPiYm
IHN0YXRlLCBSZWY8Rm9ybURhdGE+JiYgZGF0YSwgY29uc3QgU3RyaW5nJiBib3VuZGFyeSwgTG9j
a0hpc3RvcnkgbG9ja0hpc3RvcnksIEV2ZW50KiBldmVudCkKICAgICA6IG1fbWV0aG9kKG1ldGhv
ZCkKICAgICAsIG1fYWN0aW9uKGFjdGlvbikKICAgICAsIG1fdGFyZ2V0KHRhcmdldCkKICAgICAs
IG1fY29udGVudFR5cGUoY29udGVudFR5cGUpCi0gICAgLCBtX2Zvcm1TdGF0ZShzdGF0ZSkKLSAg
ICAsIG1fZm9ybURhdGEoZGF0YSkKKyAgICAsIG1fZm9ybVN0YXRlKFdURk1vdmUoc3RhdGUpKQor
ICAgICwgbV9mb3JtRGF0YShXVEZNb3ZlKGRhdGEpKQogICAgICwgbV9ib3VuZGFyeShib3VuZGFy
eSkKICAgICAsIG1fbG9ja0hpc3RvcnkobG9ja0hpc3RvcnkpCiAgICAgLCBtX2V2ZW50KGV2ZW50
KQpAQCAtMTU1LDEwICsxNDQsOCBAQCBzdGF0aWMgVGV4dEVuY29kaW5nIGVuY29kaW5nRnJvbUFj
Y2VwdENoYXJzZXQoY29uc3QgU3RyaW5nJiBhY2NlcHRDaGFyc2V0LCBEb2N1bQogICAgIHJldHVy
biBkb2N1bWVudC50ZXh0RW5jb2RpbmcoKTsKIH0KIAotUmVmPEZvcm1TdWJtaXNzaW9uPiBGb3Jt
U3VibWlzc2lvbjo6Y3JlYXRlKEhUTUxGb3JtRWxlbWVudCogZm9ybSwgY29uc3QgQXR0cmlidXRl
cyYgYXR0cmlidXRlcywgUGFzc1JlZlB0cjxFdmVudD4gZXZlbnQsIExvY2tIaXN0b3J5IGxvY2tI
aXN0b3J5LCBGb3JtU3VibWlzc2lvblRyaWdnZXIgdHJpZ2dlcikKK1JlZjxGb3JtU3VibWlzc2lv
bj4gRm9ybVN1Ym1pc3Npb246OmNyZWF0ZShIVE1MRm9ybUVsZW1lbnQmIGZvcm0sIGNvbnN0IEF0
dHJpYnV0ZXMmIGF0dHJpYnV0ZXMsIEV2ZW50KiBldmVudCwgTG9ja0hpc3RvcnkgbG9ja0hpc3Rv
cnksIEZvcm1TdWJtaXNzaW9uVHJpZ2dlciB0cmlnZ2VyKQogewotICAgIEFTU0VSVChmb3JtKTsK
LQogICAgIEhUTUxGb3JtQ29udHJvbEVsZW1lbnQqIHN1Ym1pdEJ1dHRvbiA9IG51bGxwdHI7CiAg
ICAgaWYgKGV2ZW50ICYmIGV2ZW50LT50YXJnZXQoKSkgewogICAgICAgICBmb3IgKE5vZGUqIG5v
ZGUgPSBldmVudC0+dGFyZ2V0KCktPnRvTm9kZSgpOyBub2RlOyBub2RlID0gbm9kZS0+cGFyZW50
Tm9kZSgpKSB7CkBAIC0xNjksOCArMTU2LDcgQEAgUmVmPEZvcm1TdWJtaXNzaW9uPiBGb3JtU3Vi
bWlzc2lvbjo6Y3JlYXRlKEhUTUxGb3JtRWxlbWVudCogZm9ybSwgY29uc3QgQXR0cmlidXQKICAg
ICAgICAgfQogICAgIH0KIAotICAgIEZvcm1TdWJtaXNzaW9uOjpBdHRyaWJ1dGVzIGNvcGllZEF0
dHJpYnV0ZXM7Ci0gICAgY29waWVkQXR0cmlidXRlcy5jb3B5RnJvbShhdHRyaWJ1dGVzKTsKKyAg
ICBhdXRvIGNvcGllZEF0dHJpYnV0ZXMgPSBhdHRyaWJ1dGVzOwogICAgIGlmIChzdWJtaXRCdXR0
b24pIHsKICAgICAgICAgQXRvbWljU3RyaW5nIGF0dHJpYnV0ZVZhbHVlOwogICAgICAgICBpZiAo
IShhdHRyaWJ1dGVWYWx1ZSA9IHN1Ym1pdEJ1dHRvbi0+YXR0cmlidXRlV2l0aG91dFN5bmNocm9u
aXphdGlvbihmb3JtYWN0aW9uQXR0cikpLmlzTnVsbCgpKQpAQCAtMTgzLDE1ICsxNjksMTUgQEAg
UmVmPEZvcm1TdWJtaXNzaW9uPiBGb3JtU3VibWlzc2lvbjo6Y3JlYXRlKEhUTUxGb3JtRWxlbWVu
dCogZm9ybSwgY29uc3QgQXR0cmlidXQKICAgICAgICAgICAgIGNvcGllZEF0dHJpYnV0ZXMuc2V0
VGFyZ2V0KGF0dHJpYnV0ZVZhbHVlKTsKICAgICB9CiAgICAgCi0gICAgRG9jdW1lbnQmIGRvY3Vt
ZW50ID0gZm9ybS0+ZG9jdW1lbnQoKTsKLSAgICBVUkwgYWN0aW9uVVJMID0gZG9jdW1lbnQuY29t
cGxldGVVUkwoY29waWVkQXR0cmlidXRlcy5hY3Rpb24oKS5pc0VtcHR5KCkgPyBkb2N1bWVudC51
cmwoKS5zdHJpbmcoKSA6IGNvcGllZEF0dHJpYnV0ZXMuYWN0aW9uKCkpOworICAgIGF1dG8mIGRv
Y3VtZW50ID0gZm9ybS5kb2N1bWVudCgpOworICAgIGF1dG8gYWN0aW9uVVJMID0gZG9jdW1lbnQu
Y29tcGxldGVVUkwoY29waWVkQXR0cmlidXRlcy5hY3Rpb24oKS5pc0VtcHR5KCkgPyBkb2N1bWVu
dC51cmwoKS5zdHJpbmcoKSA6IGNvcGllZEF0dHJpYnV0ZXMuYWN0aW9uKCkpOwogICAgIGJvb2wg
aXNNYWlsdG9Gb3JtID0gYWN0aW9uVVJMLnByb3RvY29sSXMoIm1haWx0byIpOwogICAgIGJvb2wg
aXNNdWx0aVBhcnRGb3JtID0gZmFsc2U7Ci0gICAgU3RyaW5nIGVuY29kaW5nVHlwZSA9IGNvcGll
ZEF0dHJpYnV0ZXMuZW5jb2RpbmdUeXBlKCk7CisgICAgYXV0byBlbmNvZGluZ1R5cGUgPSBjb3Bp
ZWRBdHRyaWJ1dGVzLmVuY29kaW5nVHlwZSgpOwogCiAgICAgZG9jdW1lbnQuY29udGVudFNlY3Vy
aXR5UG9saWN5KCktPnVwZ3JhZGVJbnNlY3VyZVJlcXVlc3RJZk5lZWRlZChhY3Rpb25VUkwsIENv
bnRlbnRTZWN1cml0eVBvbGljeTo6SW5zZWN1cmVSZXF1ZXN0VHlwZTo6Rm9ybVN1Ym1pc3Npb24p
OwogCi0gICAgaWYgKGNvcGllZEF0dHJpYnV0ZXMubWV0aG9kKCkgPT0gUG9zdE1ldGhvZCkgewor
ICAgIGlmIChjb3BpZWRBdHRyaWJ1dGVzLm1ldGhvZCgpID09IE1ldGhvZDo6UG9zdCkgewogICAg
ICAgICBpc011bHRpUGFydEZvcm0gPSBjb3BpZWRBdHRyaWJ1dGVzLmlzTXVsdGlQYXJ0Rm9ybSgp
OwogICAgICAgICBpZiAoaXNNdWx0aVBhcnRGb3JtICYmIGlzTWFpbHRvRm9ybSkgewogICAgICAg
ICAgICAgZW5jb2RpbmdUeXBlID0gImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCI7
CkBAIC0xOTksMTkgKzE4NSwxOSBAQCBSZWY8Rm9ybVN1Ym1pc3Npb24+IEZvcm1TdWJtaXNzaW9u
OjpjcmVhdGUoSFRNTEZvcm1FbGVtZW50KiBmb3JtLCBjb25zdCBBdHRyaWJ1dAogICAgICAgICB9
CiAgICAgfQogCi0gICAgVGV4dEVuY29kaW5nIGRhdGFFbmNvZGluZyA9IGlzTWFpbHRvRm9ybSA/
IFVURjhFbmNvZGluZygpIDogZW5jb2RpbmdGcm9tQWNjZXB0Q2hhcnNldChjb3BpZWRBdHRyaWJ1
dGVzLmFjY2VwdENoYXJzZXQoKSwgZG9jdW1lbnQpOwotICAgIFJlZlB0cjxET01Gb3JtRGF0YT4g
ZG9tRm9ybURhdGEgPSBET01Gb3JtRGF0YTo6Y3JlYXRlKGRhdGFFbmNvZGluZy5lbmNvZGluZ0Zv
ckZvcm1TdWJtaXNzaW9uKCkpOwotICAgIFZlY3RvcjxzdGQ6OnBhaXI8U3RyaW5nLCBTdHJpbmc+
PiBmb3JtVmFsdWVzOworICAgIGF1dG8gZGF0YUVuY29kaW5nID0gaXNNYWlsdG9Gb3JtID8gVVRG
OEVuY29kaW5nKCkgOiBlbmNvZGluZ0Zyb21BY2NlcHRDaGFyc2V0KGNvcGllZEF0dHJpYnV0ZXMu
YWNjZXB0Q2hhcnNldCgpLCBkb2N1bWVudCk7CisgICAgYXV0byBkb21Gb3JtRGF0YSA9IERPTUZv
cm1EYXRhOjpjcmVhdGUoZGF0YUVuY29kaW5nLmVuY29kaW5nRm9yRm9ybVN1Ym1pc3Npb24oKSk7
CisgICAgU3RyaW5nUGFpclZlY3RvciBmb3JtVmFsdWVzOwogCiAgICAgYm9vbCBjb250YWluc1Bh
c3N3b3JkRGF0YSA9IGZhbHNlOwotICAgIGZvciAoYXV0byYgY29udHJvbCA6IGZvcm0tPmFzc29j
aWF0ZWRFbGVtZW50cygpKSB7Ci0gICAgICAgIEhUTUxFbGVtZW50JiBlbGVtZW50ID0gY29udHJv
bC0+YXNIVE1MRWxlbWVudCgpOworICAgIGZvciAoYXV0byYgY29udHJvbCA6IGZvcm0uYXNzb2Np
YXRlZEVsZW1lbnRzKCkpIHsKKyAgICAgICAgYXV0byYgZWxlbWVudCA9IGNvbnRyb2wtPmFzSFRN
TEVsZW1lbnQoKTsKICAgICAgICAgaWYgKCFlbGVtZW50LmlzRGlzYWJsZWRGb3JtQ29udHJvbCgp
KQotICAgICAgICAgICAgY29udHJvbC0+YXBwZW5kRm9ybURhdGEoKmRvbUZvcm1EYXRhLCBpc011
bHRpUGFydEZvcm0pOworICAgICAgICAgICAgY29udHJvbC0+YXBwZW5kRm9ybURhdGEoZG9tRm9y
bURhdGEsIGlzTXVsdGlQYXJ0Rm9ybSk7CiAgICAgICAgIGlmIChpczxIVE1MSW5wdXRFbGVtZW50
PihlbGVtZW50KSkgewotICAgICAgICAgICAgSFRNTElucHV0RWxlbWVudCYgaW5wdXQgPSBkb3du
Y2FzdDxIVE1MSW5wdXRFbGVtZW50PihlbGVtZW50KTsKKyAgICAgICAgICAgIGF1dG8mIGlucHV0
ID0gZG93bmNhc3Q8SFRNTElucHV0RWxlbWVudD4oZWxlbWVudCk7CiAgICAgICAgICAgICBpZiAo
aW5wdXQuaXNUZXh0RmllbGQoKSkgewotICAgICAgICAgICAgICAgIGZvcm1WYWx1ZXMuYXBwZW5k
KHN0ZDo6cGFpcjxTdHJpbmcsIFN0cmluZz4oaW5wdXQubmFtZSgpLnN0cmluZygpLCBpbnB1dC52
YWx1ZSgpKSk7CisgICAgICAgICAgICAgICAgZm9ybVZhbHVlcy5hcHBlbmQoeyBpbnB1dC5uYW1l
KCkuc3RyaW5nKCksIGlucHV0LnZhbHVlKCkgfSk7CiAgICAgICAgICAgICAgICAgaW5wdXQuYWRk
U2VhcmNoUmVzdWx0KCk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBpZiAoaW5wdXQuaXNQ
YXNzd29yZEZpZWxkKCkgJiYgIWlucHV0LnZhbHVlKCkuaXNFbXB0eSgpKQpAQCAtMjIzLDExICsy
MDksMTEgQEAgUmVmPEZvcm1TdWJtaXNzaW9uPiBGb3JtU3VibWlzc2lvbjo6Y3JlYXRlKEhUTUxG
b3JtRWxlbWVudCogZm9ybSwgY29uc3QgQXR0cmlidXQKICAgICBTdHJpbmcgYm91bmRhcnk7CiAK
ICAgICBpZiAoaXNNdWx0aVBhcnRGb3JtKSB7Ci0gICAgICAgIGZvcm1EYXRhID0gRm9ybURhdGE6
OmNyZWF0ZU11bHRpUGFydCgqKHN0YXRpY19jYXN0PEZvcm1EYXRhTGlzdCo+KGRvbUZvcm1EYXRh
LmdldCgpKSksIGRvbUZvcm1EYXRhLT5lbmNvZGluZygpLCAmZG9jdW1lbnQpOworICAgICAgICBm
b3JtRGF0YSA9IEZvcm1EYXRhOjpjcmVhdGVNdWx0aVBhcnQoZG9tRm9ybURhdGEsIGRvbUZvcm1E
YXRhLT5lbmNvZGluZygpLCAmZG9jdW1lbnQpOwogICAgICAgICBib3VuZGFyeSA9IGZvcm1EYXRh
LT5ib3VuZGFyeSgpLmRhdGEoKTsKICAgICB9IGVsc2UgewotICAgICAgICBmb3JtRGF0YSA9IEZv
cm1EYXRhOjpjcmVhdGUoKihzdGF0aWNfY2FzdDxGb3JtRGF0YUxpc3QqPihkb21Gb3JtRGF0YS5n
ZXQoKSkpLCBkb21Gb3JtRGF0YS0+ZW5jb2RpbmcoKSwgYXR0cmlidXRlcy5tZXRob2QoKSA9PSBH
ZXRNZXRob2QgPyBGb3JtRGF0YTo6Rm9ybVVSTEVuY29kZWQgOiBGb3JtRGF0YTo6cGFyc2VFbmNv
ZGluZ1R5cGUoZW5jb2RpbmdUeXBlKSk7Ci0gICAgICAgIGlmIChjb3BpZWRBdHRyaWJ1dGVzLm1l
dGhvZCgpID09IFBvc3RNZXRob2QgJiYgaXNNYWlsdG9Gb3JtKSB7CisgICAgICAgIGZvcm1EYXRh
ID0gRm9ybURhdGE6OmNyZWF0ZShkb21Gb3JtRGF0YSwgZG9tRm9ybURhdGEtPmVuY29kaW5nKCks
IGF0dHJpYnV0ZXMubWV0aG9kKCkgPT0gTWV0aG9kOjpHZXQgPyBGb3JtRGF0YTo6Rm9ybVVSTEVu
Y29kZWQgOiBGb3JtRGF0YTo6cGFyc2VFbmNvZGluZ1R5cGUoZW5jb2RpbmdUeXBlKSk7CisgICAg
ICAgIGlmIChjb3BpZWRBdHRyaWJ1dGVzLm1ldGhvZCgpID09IE1ldGhvZDo6UG9zdCAmJiBpc01h
aWx0b0Zvcm0pIHsKICAgICAgICAgICAgIC8vIENvbnZlcnQgdGhlIGZvcm0gZGF0YSBpbnRvIGEg
c3RyaW5nIHRoYXQgd2UgcHV0IGludG8gdGhlIFVSTC4KICAgICAgICAgICAgIGFwcGVuZE1haWx0
b1Bvc3RGb3JtRGF0YVRvVVJMKGFjdGlvblVSTCwgKmZvcm1EYXRhLCBlbmNvZGluZ1R5cGUpOwog
ICAgICAgICAgICAgZm9ybURhdGEgPSBGb3JtRGF0YTo6Y3JlYXRlKCk7CkBAIC0yMzYsMTQgKzIy
MiwxNyBAQCBSZWY8Rm9ybVN1Ym1pc3Npb24+IEZvcm1TdWJtaXNzaW9uOjpjcmVhdGUoSFRNTEZv
cm1FbGVtZW50KiBmb3JtLCBjb25zdCBBdHRyaWJ1dAogCiAgICAgZm9ybURhdGEtPnNldElkZW50
aWZpZXIoZ2VuZXJhdGVGb3JtRGF0YUlkZW50aWZpZXIoKSk7CiAgICAgZm9ybURhdGEtPnNldENv
bnRhaW5zUGFzc3dvcmREYXRhKGNvbnRhaW5zUGFzc3dvcmREYXRhKTsKKwogICAgIFN0cmluZyB0
YXJnZXRPckJhc2VUYXJnZXQgPSBjb3BpZWRBdHRyaWJ1dGVzLnRhcmdldCgpLmlzRW1wdHkoKSA/
IGRvY3VtZW50LmJhc2VUYXJnZXQoKSA6IGNvcGllZEF0dHJpYnV0ZXMudGFyZ2V0KCk7Ci0gICAg
YXV0byBmb3JtU3RhdGUgPSBGb3JtU3RhdGU6OmNyZWF0ZShmb3JtLCBmb3JtVmFsdWVzLCAmZG9j
dW1lbnQsIHRyaWdnZXIpOwotICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEZvcm1TdWJtaXNzaW9u
KGNvcGllZEF0dHJpYnV0ZXMubWV0aG9kKCksIGFjdGlvblVSTCwgdGFyZ2V0T3JCYXNlVGFyZ2V0
LCBlbmNvZGluZ1R5cGUsIFdURk1vdmUoZm9ybVN0YXRlKSwgV1RGTW92ZShmb3JtRGF0YSksIGJv
dW5kYXJ5LCBsb2NrSGlzdG9yeSwgZXZlbnQpKTsKKworICAgIGF1dG8gZm9ybVN0YXRlID0gRm9y
bVN0YXRlOjpjcmVhdGUoZm9ybSwgV1RGTW92ZShmb3JtVmFsdWVzKSwgZG9jdW1lbnQsIHRyaWdn
ZXIpOworCisgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRm9ybVN1Ym1pc3Npb24oY29waWVkQXR0
cmlidXRlcy5tZXRob2QoKSwgYWN0aW9uVVJMLCB0YXJnZXRPckJhc2VUYXJnZXQsIGVuY29kaW5n
VHlwZSwgV1RGTW92ZShmb3JtU3RhdGUpLCBmb3JtRGF0YS5yZWxlYXNlTm9uTnVsbCgpLCBib3Vu
ZGFyeSwgbG9ja0hpc3RvcnksIGV2ZW50KSk7CiB9CiAKIFVSTCBGb3JtU3VibWlzc2lvbjo6cmVx
dWVzdFVSTCgpIGNvbnN0CiB7Ci0gICAgaWYgKG1fbWV0aG9kID09IEZvcm1TdWJtaXNzaW9uOjpQ
b3N0TWV0aG9kKQorICAgIGlmIChtX21ldGhvZCA9PSBNZXRob2Q6OlBvc3QpCiAgICAgICAgIHJl
dHVybiBtX2FjdGlvbjsKIAogICAgIFVSTCByZXF1ZXN0VVJMKG1fYWN0aW9uKTsKQEAgLTI1OSw3
ICsyNDgsNyBAQCB2b2lkIEZvcm1TdWJtaXNzaW9uOjpwb3B1bGF0ZUZyYW1lTG9hZFJlcXVlc3Qo
RnJhbWVMb2FkUmVxdWVzdCYgZnJhbWVSZXF1ZXN0KQogICAgIGlmICghbV9yZWZlcnJlci5pc0Vt
cHR5KCkpCiAgICAgICAgIGZyYW1lUmVxdWVzdC5yZXNvdXJjZVJlcXVlc3QoKS5zZXRIVFRQUmVm
ZXJyZXIobV9yZWZlcnJlcik7CiAKLSAgICBpZiAobV9tZXRob2QgPT0gRm9ybVN1Ym1pc3Npb246
OlBvc3RNZXRob2QpIHsKKyAgICBpZiAobV9tZXRob2QgPT0gTWV0aG9kOjpQb3N0KSB7CiAgICAg
ICAgIGZyYW1lUmVxdWVzdC5yZXNvdXJjZVJlcXVlc3QoKS5zZXRIVFRQTWV0aG9kKCJQT1NUIik7
CiAgICAgICAgIGZyYW1lUmVxdWVzdC5yZXNvdXJjZVJlcXVlc3QoKS5zZXRIVFRQQm9keShtX2Zv
cm1EYXRhLmNvcHlSZWYoKSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9G
b3JtU3VibWlzc2lvbi5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zvcm1TdWJtaXNzaW9uLmgK
aW5kZXggNDFiMzdlMDY0MmIxOGE4MGUxNjRmMDU2NmJlZjg4ZDJkMTBlN2VmOC4uMjUyNDEyYzBj
MDJiMzliZDllOGI0NTFhYzc1MzVhNDU3MzU0NzZhMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0Zvcm1TdWJtaXNzaW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zv
cm1TdWJtaXNzaW9uLmgKQEAgLTM2LDMxICszNiwyMSBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKLWNsYXNzIERvY3VtZW50OwogY2xhc3MgRXZlbnQ7CiBjbGFzcyBGb3JtRGF0YTsKKwogc3Ry
dWN0IEZyYW1lTG9hZFJlcXVlc3Q7Ci1jbGFzcyBIVE1MRm9ybUVsZW1lbnQ7Ci1jbGFzcyBUZXh0
RW5jb2Rpbmc7CiAKIGNsYXNzIEZvcm1TdWJtaXNzaW9uIDogcHVibGljIFJlZkNvdW50ZWQ8Rm9y
bVN1Ym1pc3Npb24+IHsKIHB1YmxpYzoKLSAgICBlbnVtIE1ldGhvZCB7IEdldE1ldGhvZCwgUG9z
dE1ldGhvZCB9OworICAgIGVudW0gY2xhc3MgTWV0aG9kIHsgR2V0LCBQb3N0IH07CiAKICAgICBj
bGFzcyBBdHRyaWJ1dGVzIHsKLSAgICAgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoQXR0cmlidXRl
cyk7CiAgICAgcHVibGljOgotICAgICAgICBBdHRyaWJ1dGVzKCkKLSAgICAgICAgICAgIDogbV9t
ZXRob2QoR2V0TWV0aG9kKQotICAgICAgICAgICAgLCBtX2lzTXVsdGlQYXJ0Rm9ybShmYWxzZSkK
LSAgICAgICAgICAgICwgbV9lbmNvZGluZ1R5cGUoImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJs
ZW5jb2RlZCIpCi0gICAgICAgIHsKLSAgICAgICAgfQotCiAgICAgICAgIE1ldGhvZCBtZXRob2Qo
KSBjb25zdCB7IHJldHVybiBtX21ldGhvZDsgfQogICAgICAgICBzdGF0aWMgTWV0aG9kIHBhcnNl
TWV0aG9kVHlwZShjb25zdCBTdHJpbmcmKTsKICAgICAgICAgdm9pZCB1cGRhdGVNZXRob2RUeXBl
KGNvbnN0IFN0cmluZyYpOwotICAgICAgICBzdGF0aWMgU3RyaW5nIG1ldGhvZFN0cmluZyhNZXRo
b2QgbWV0aG9kKSB7IHJldHVybiBtZXRob2QgPT0gUG9zdE1ldGhvZCA/ICJwb3N0IiA6ICJnZXQi
OyB9CisgICAgICAgIHN0YXRpYyBBU0NJSUxpdGVyYWwgbWV0aG9kU3RyaW5nKE1ldGhvZCBtZXRo
b2QpIHsgcmV0dXJuIEFTQ0lJTGl0ZXJhbCB7IG1ldGhvZCA9PSBNZXRob2Q6OlBvc3QgPyAicG9z
dCIgOiAiZ2V0IiB9OyB9CiAKICAgICAgICAgY29uc3QgU3RyaW5nJiBhY3Rpb24oKSBjb25zdCB7
IHJldHVybiBtX2FjdGlvbjsgfQogICAgICAgICB2b2lkIHBhcnNlQWN0aW9uKGNvbnN0IFN0cmlu
ZyYpOwpAQCAtNzYsNTAgKzY2LDQ2IEBAIHB1YmxpYzoKICAgICAgICAgY29uc3QgU3RyaW5nJiBh
Y2NlcHRDaGFyc2V0KCkgY29uc3QgeyByZXR1cm4gbV9hY2NlcHRDaGFyc2V0OyB9CiAgICAgICAg
IHZvaWQgc2V0QWNjZXB0Q2hhcnNldChjb25zdCBTdHJpbmcmIHZhbHVlKSB7IG1fYWNjZXB0Q2hh
cnNldCA9IHZhbHVlOyB9CiAKLSAgICAgICAgdm9pZCBjb3B5RnJvbShjb25zdCBBdHRyaWJ1dGVz
Jik7Ci0KICAgICBwcml2YXRlOgotICAgICAgICBNZXRob2QgbV9tZXRob2Q7Ci0gICAgICAgIGJv
b2wgbV9pc011bHRpUGFydEZvcm07Ci0KKyAgICAgICAgTWV0aG9kIG1fbWV0aG9kIHsgTWV0aG9k
OjpHZXQgfTsKKyAgICAgICAgYm9vbCBtX2lzTXVsdGlQYXJ0Rm9ybSB7IGZhbHNlIH07CiAgICAg
ICAgIFN0cmluZyBtX2FjdGlvbjsKICAgICAgICAgU3RyaW5nIG1fdGFyZ2V0OwotICAgICAgICBT
dHJpbmcgbV9lbmNvZGluZ1R5cGU7CisgICAgICAgIFN0cmluZyBtX2VuY29kaW5nVHlwZSB7IEFT
Q0lJTGl0ZXJhbCB7ICJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiIH0gfTsKICAg
ICAgICAgU3RyaW5nIG1fYWNjZXB0Q2hhcnNldDsKICAgICB9OwogCi0gICAgc3RhdGljIFJlZjxG
b3JtU3VibWlzc2lvbj4gY3JlYXRlKEhUTUxGb3JtRWxlbWVudCosIGNvbnN0IEF0dHJpYnV0ZXMm
LCBQYXNzUmVmUHRyPEV2ZW50PiBldmVudCwgTG9ja0hpc3RvcnksIEZvcm1TdWJtaXNzaW9uVHJp
Z2dlcik7CisgICAgc3RhdGljIFJlZjxGb3JtU3VibWlzc2lvbj4gY3JlYXRlKEhUTUxGb3JtRWxl
bWVudCYsIGNvbnN0IEF0dHJpYnV0ZXMmLCBFdmVudCosIExvY2tIaXN0b3J5LCBGb3JtU3VibWlz
c2lvblRyaWdnZXIpOwogCiAgICAgdm9pZCBwb3B1bGF0ZUZyYW1lTG9hZFJlcXVlc3QoRnJhbWVM
b2FkUmVxdWVzdCYpOwotICAgIAogICAgIFVSTCByZXF1ZXN0VVJMKCkgY29uc3Q7CiAKICAgICBN
ZXRob2QgbWV0aG9kKCkgY29uc3QgeyByZXR1cm4gbV9tZXRob2Q7IH0KICAgICBjb25zdCBVUkwm
IGFjdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fYWN0aW9uOyB9CiAgICAgY29uc3QgU3RyaW5nJiB0
YXJnZXQoKSBjb25zdCB7IHJldHVybiBtX3RhcmdldDsgfQotICAgIHZvaWQgY2xlYXJUYXJnZXQo
KSB7IG1fdGFyZ2V0ID0gU3RyaW5nKCk7IH0KICAgICBjb25zdCBTdHJpbmcmIGNvbnRlbnRUeXBl
KCkgY29uc3QgeyByZXR1cm4gbV9jb250ZW50VHlwZTsgfQotICAgIEZvcm1TdGF0ZSogc3RhdGUo
KSBjb25zdCB7IHJldHVybiBtX2Zvcm1TdGF0ZS5nZXQoKTsgfQotICAgIEZvcm1EYXRhKiBkYXRh
KCkgY29uc3QgeyByZXR1cm4gbV9mb3JtRGF0YS5nZXQoKTsgfQorICAgIEZvcm1TdGF0ZSYgc3Rh
dGUoKSBjb25zdCB7IHJldHVybiBtX2Zvcm1TdGF0ZTsgfQorICAgIEZvcm1EYXRhJiBkYXRhKCkg
Y29uc3QgeyByZXR1cm4gbV9mb3JtRGF0YTsgfQogICAgIGNvbnN0IFN0cmluZyBib3VuZGFyeSgp
IGNvbnN0IHsgcmV0dXJuIG1fYm91bmRhcnk7IH0KICAgICBMb2NrSGlzdG9yeSBsb2NrSGlzdG9y
eSgpIGNvbnN0IHsgcmV0dXJuIG1fbG9ja0hpc3Rvcnk7IH0KICAgICBFdmVudCogZXZlbnQoKSBj
b25zdCB7IHJldHVybiBtX2V2ZW50LmdldCgpOyB9Ci0KICAgICBjb25zdCBTdHJpbmcmIHJlZmVy
cmVyKCkgY29uc3QgeyByZXR1cm4gbV9yZWZlcnJlcjsgfQotICAgIHZvaWQgc2V0UmVmZXJyZXIo
Y29uc3QgU3RyaW5nJiByZWZlcnJlcikgeyBtX3JlZmVycmVyID0gcmVmZXJyZXI7IH0KICAgICBj
b25zdCBTdHJpbmcmIG9yaWdpbigpIGNvbnN0IHsgcmV0dXJuIG1fb3JpZ2luOyB9CisKKyAgICB2
b2lkIGNsZWFyVGFyZ2V0KCkgeyBtX3RhcmdldCA9IHsgfTsgfQorICAgIHZvaWQgc2V0UmVmZXJy
ZXIoY29uc3QgU3RyaW5nJiByZWZlcnJlcikgeyBtX3JlZmVycmVyID0gcmVmZXJyZXI7IH0KICAg
ICB2b2lkIHNldE9yaWdpbihjb25zdCBTdHJpbmcmIG9yaWdpbikgeyBtX29yaWdpbiA9IG9yaWdp
bjsgfQogCiBwcml2YXRlOgotICAgIEZvcm1TdWJtaXNzaW9uKE1ldGhvZCwgY29uc3QgVVJMJiBh
Y3Rpb24sIGNvbnN0IFN0cmluZyYgdGFyZ2V0LCBjb25zdCBTdHJpbmcmIGNvbnRlbnRUeXBlLCBQ
YXNzUmVmUHRyPEZvcm1TdGF0ZT4sIFBhc3NSZWZQdHI8Rm9ybURhdGE+LCBjb25zdCBTdHJpbmcm
IGJvdW5kYXJ5LCBMb2NrSGlzdG9yeSwgUGFzc1JlZlB0cjxFdmVudD4pOworICAgIEZvcm1TdWJt
aXNzaW9uKE1ldGhvZCwgY29uc3QgVVJMJiBhY3Rpb24sIGNvbnN0IFN0cmluZyYgdGFyZ2V0LCBj
b25zdCBTdHJpbmcmIGNvbnRlbnRUeXBlLCBSZWY8Rm9ybVN0YXRlPiYmLCBSZWY8Rm9ybURhdGE+
JiYsIGNvbnN0IFN0cmluZyYgYm91bmRhcnksIExvY2tIaXN0b3J5LCBFdmVudCopOwogCiAgICAg
Ly8gRklYTUU6IEhvbGQgYW4gaW5zdGFuY2Ugb2YgQXR0cmlidXRlcyBpbnN0ZWFkIG9mIGluZGl2
aWR1YWwgbWVtYmVycy4KICAgICBNZXRob2QgbV9tZXRob2Q7CiAgICAgVVJMIG1fYWN0aW9uOwog
ICAgIFN0cmluZyBtX3RhcmdldDsKICAgICBTdHJpbmcgbV9jb250ZW50VHlwZTsKLSAgICBSZWZQ
dHI8Rm9ybVN0YXRlPiBtX2Zvcm1TdGF0ZTsKLSAgICBSZWZQdHI8Rm9ybURhdGE+IG1fZm9ybURh
dGE7CisgICAgUmVmPEZvcm1TdGF0ZT4gbV9mb3JtU3RhdGU7CisgICAgUmVmPEZvcm1EYXRhPiBt
X2Zvcm1EYXRhOwogICAgIFN0cmluZyBtX2JvdW5kYXJ5OwogICAgIExvY2tIaXN0b3J5IG1fbG9j
a0hpc3Rvcnk7CiAgICAgUmVmUHRyPEV2ZW50PiBtX2V2ZW50OwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9G
cmFtZUxvYWRlci5jcHAKaW5kZXggZGYxODQ2YTViNzcxOWI1OTExOTk3NWUwYzU4ZDI4MjA1YTMw
ZWU2ZS4uNDk2ZTcyZDFjNTk0NjU3ZjBjYmQ4ZWJkNzU2OTIyZWE2MjVkMzI3ZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCkBAIC0zNjQsMTcgKzM2NCwxNSBAQCB2b2lkIEZy
YW1lTG9hZGVyOjp1cmxTZWxlY3RlZChjb25zdCBGcmFtZUxvYWRSZXF1ZXN0JiBwYXNzZWRSZXF1
ZXN0LCBFdmVudCogdHJpZwogCiB2b2lkIEZyYW1lTG9hZGVyOjpzdWJtaXRGb3JtKFJlZjxGb3Jt
U3VibWlzc2lvbj4mJiBzdWJtaXNzaW9uKQogewotICAgIEFTU0VSVChzdWJtaXNzaW9uLT5tZXRo
b2QoKSA9PSBGb3JtU3VibWlzc2lvbjo6UG9zdE1ldGhvZCB8fCBzdWJtaXNzaW9uLT5tZXRob2Qo
KSA9PSBGb3JtU3VibWlzc2lvbjo6R2V0TWV0aG9kKTsKKyAgICBBU1NFUlQoc3VibWlzc2lvbi0+
bWV0aG9kKCkgPT0gRm9ybVN1Ym1pc3Npb246Ok1ldGhvZDo6UG9zdCB8fCBzdWJtaXNzaW9uLT5t
ZXRob2QoKSA9PSBGb3JtU3VibWlzc2lvbjo6TWV0aG9kOjpHZXQpOwogCiAgICAgLy8gRklYTUU6
IEZpbmQgYSBnb29kIHNwb3QgZm9yIHRoZXNlLgotICAgIEFTU0VSVChzdWJtaXNzaW9uLT5kYXRh
KCkpOwotICAgIEFTU0VSVChzdWJtaXNzaW9uLT5zdGF0ZSgpKTsKLSAgICBBU1NFUlQoIXN1Ym1p
c3Npb24tPnN0YXRlKCktPnNvdXJjZURvY3VtZW50KCktPmZyYW1lKCkgfHwgc3VibWlzc2lvbi0+
c3RhdGUoKS0+c291cmNlRG9jdW1lbnQoKS0+ZnJhbWUoKSA9PSAmbV9mcmFtZSk7CisgICAgQVNT
RVJUKCFzdWJtaXNzaW9uLT5zdGF0ZSgpLnNvdXJjZURvY3VtZW50KCkuZnJhbWUoKSB8fCBzdWJt
aXNzaW9uLT5zdGF0ZSgpLnNvdXJjZURvY3VtZW50KCkuZnJhbWUoKSA9PSAmbV9mcmFtZSk7CiAK
ICAgICBpZiAoIW1fZnJhbWUucGFnZSgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBpZiAoc3Vi
bWlzc2lvbi0+c3RhdGUoKS0+c291cmNlRG9jdW1lbnQoKS0+cGFnZUNhY2hlU3RhdGUoKSAhPSBE
b2N1bWVudDo6Tm90SW5QYWdlQ2FjaGUpCisgICAgaWYgKHN1Ym1pc3Npb24tPnN0YXRlKCkuc291
cmNlRG9jdW1lbnQoKS5wYWdlQ2FjaGVTdGF0ZSgpICE9IERvY3VtZW50OjpOb3RJblBhZ2VDYWNo
ZSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKHN1Ym1pc3Npb24tPmFjdGlvbigpLmlzRW1w
dHkoKSkKQEAgLTM5NiwxMiArMzk0LDEyIEBAIHZvaWQgRnJhbWVMb2FkZXI6OnN1Ym1pdEZvcm0o
UmVmPEZvcm1TdWJtaXNzaW9uPiYmIHN1Ym1pc3Npb24pCiAgICAgICAgIHJldHVybjsKICAgICB9
CiAKLSAgICBGcmFtZSogdGFyZ2V0RnJhbWUgPSBmaW5kRnJhbWVGb3JOYXZpZ2F0aW9uKHN1Ym1p
c3Npb24tPnRhcmdldCgpLCBzdWJtaXNzaW9uLT5zdGF0ZSgpLT5zb3VyY2VEb2N1bWVudCgpKTsK
KyAgICBGcmFtZSogdGFyZ2V0RnJhbWUgPSBmaW5kRnJhbWVGb3JOYXZpZ2F0aW9uKHN1Ym1pc3Np
b24tPnRhcmdldCgpLCAmc3VibWlzc2lvbi0+c3RhdGUoKS5zb3VyY2VEb2N1bWVudCgpKTsKICAg
ICBpZiAoIXRhcmdldEZyYW1lKSB7CiAgICAgICAgIGlmICghRE9NV2luZG93OjphbGxvd1BvcFVw
KCZtX2ZyYW1lKSAmJiAhU2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkp
CiAgICAgICAgICAgICByZXR1cm47CiAKLSAgICAgICAgLy8gRklYTUU6IHRhcmdldEZyYW1lIGNh
biBiZSAwIGZvciB0d28gZGlzdGluY3QgcmVhc29uczoKKyAgICAgICAgLy8gRklYTUU6IHRhcmdl
dEZyYW1lIGNhbiBiZSBudWxsIGZvciB0d28gZGlzdGluY3QgcmVhc29uczoKICAgICAgICAgLy8g
MS4gVGhlIGZyYW1lIHdhcyBub3QgZm91bmQgYnkgbmFtZSwgc28gd2Ugc2hvdWxkIHRyeSBvcGVu
aW5nIGEgbmV3IHdpbmRvdy4KICAgICAgICAgLy8gMi4gVGhlIGZyYW1lIHdhcyBmb3VuZCwgYnV0
IG5hdmlnYXRpbmcgaXQgd2FzIG5vdCBhbGxvd2VkLCBlLmcuIGJ5IEhUTUw1IHNhbmRib3ggb3Ig
Ynkgb3JpZ2luIGNoZWNrcy4KICAgICAgICAgLy8gQ29udGludWluZyBmb3JtIHN1Ym1pc3Npb24g
bWFrZXMgbm8gc2Vuc2UgaW4gdGhlIGxhdHRlciBjYXNlLgpAQCAtNDMyLDcgKzQzMCw3IEBAIHZv
aWQgRnJhbWVMb2FkZXI6OnN1Ym1pdEZvcm0oUmVmPEZvcm1TdWJtaXNzaW9uPiYmIHN1Ym1pc3Np
b24pCiAgICAgICAgIG1fc3VibWl0dGVkRm9ybVVSTCA9IHN1Ym1pc3Npb24tPnJlcXVlc3RVUkwo
KTsKICAgICB9CiAKLSAgICBzdWJtaXNzaW9uLT5kYXRhKCktPmdlbmVyYXRlRmlsZXMobV9mcmFt
ZS5kb2N1bWVudCgpKTsKKyAgICBzdWJtaXNzaW9uLT5kYXRhKCkuZ2VuZXJhdGVGaWxlcyhtX2Zy
YW1lLmRvY3VtZW50KCkpOwogICAgIHN1Ym1pc3Npb24tPnNldFJlZmVycmVyKG91dGdvaW5nUmVm
ZXJyZXIoKSk7CiAgICAgc3VibWlzc2lvbi0+c2V0T3JpZ2luKG91dGdvaW5nT3JpZ2luKCkpOwog
CkBAIC02NTgsMjAgKzY1NiwxOCBAQCB2b2lkIEZyYW1lTG9hZGVyOjpyZWNlaXZlZEZpcnN0RGF0
YSgpCiAgICAgaWYgKCFtX2RvY3VtZW50TG9hZGVyKQogICAgICAgICByZXR1cm47CiAKKyAgICBB
U1NFUlQobV9mcmFtZS5kb2N1bWVudCgpKTsKKyAgICBhdXRvJiBkb2N1bWVudCA9ICptX2ZyYW1l
LmRvY3VtZW50KCk7CisKICAgICBkb3VibGUgZGVsYXk7CiAgICAgU3RyaW5nIHVybFN0cmluZzsK
ICAgICBpZiAoIXBhcnNlSFRUUFJlZnJlc2gobV9kb2N1bWVudExvYWRlci0+cmVzcG9uc2UoKS5o
dHRwSGVhZGVyRmllbGQoSFRUUEhlYWRlck5hbWU6OlJlZnJlc2gpLCBkZWxheSwgdXJsU3RyaW5n
KSkKICAgICAgICAgcmV0dXJuOwotICAgIFVSTCBjb21wbGV0ZWRVUkw7Ci0gICAgaWYgKHVybFN0
cmluZy5pc0VtcHR5KCkpCi0gICAgICAgIGNvbXBsZXRlZFVSTCA9IG1fZnJhbWUuZG9jdW1lbnQo
KS0+dXJsKCk7Ci0gICAgZWxzZQotICAgICAgICBjb21wbGV0ZWRVUkwgPSBtX2ZyYW1lLmRvY3Vt
ZW50KCktPmNvbXBsZXRlVVJMKHVybFN0cmluZyk7Ci0KKyAgICBhdXRvIGNvbXBsZXRlZFVSTCA9
IHVybFN0cmluZy5pc0VtcHR5KCkgPyBkb2N1bWVudC51cmwoKSA6IGRvY3VtZW50LmNvbXBsZXRl
VVJMKHVybFN0cmluZyk7CiAgICAgaWYgKCFwcm90b2NvbElzSmF2YVNjcmlwdChjb21wbGV0ZWRV
UkwpKQotICAgICAgICBtX2ZyYW1lLm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZVJlZGly
ZWN0KG1fZnJhbWUuZG9jdW1lbnQoKSwgZGVsYXksIGNvbXBsZXRlZFVSTCk7CisgICAgICAgIG1f
ZnJhbWUubmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlUmVkaXJlY3QoZG9jdW1lbnQsIGRl
bGF5LCBjb21wbGV0ZWRVUkwpOwogICAgIGVsc2UgewotICAgICAgICBTdHJpbmcgbWVzc2FnZSA9
ICJSZWZ1c2VkIHRvIHJlZnJlc2ggIiArIG1fZnJhbWUuZG9jdW1lbnQoKS0+dXJsKCkuc3RyaW5n
Q2VudGVyRWxsaXBzaXplZFRvTGVuZ3RoKCkgKyAiIHRvIGEgamF2YXNjcmlwdDogVVJMIjsKKyAg
ICAgICAgYXV0byBtZXNzYWdlID0gIlJlZnVzZWQgdG8gcmVmcmVzaCAiICsgZG9jdW1lbnQudXJs
KCkuc3RyaW5nQ2VudGVyRWxsaXBzaXplZFRvTGVuZ3RoKCkgKyAiIHRvIGEgamF2YXNjcmlwdDog
VVJMIjsKICAgICAgICAgbV9mcmFtZS5kb2N1bWVudCgpLT5hZGRDb25zb2xlTWVzc2FnZShNZXNz
YWdlU291cmNlOjpTZWN1cml0eSwgTWVzc2FnZUxldmVsOjpFcnJvciwgbWVzc2FnZSk7CiAgICAg
fQogfQpAQCAtMTEzNyw3ICsxMTMzLDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6bG9hZEZyYW1lUmVx
dWVzdChjb25zdCBGcmFtZUxvYWRSZXF1ZXN0JiByZXF1ZXN0LCBFdmVudCogZXZlbnQKICAgICAg
ICAgfHwgZXZlbnQtPnRhcmdldCgpLT50b05vZGUoKS0+ZG9jdW1lbnQoKS5wYWdlQ2FjaGVTdGF0
ZSgpID09IERvY3VtZW50OjpOb3RJblBhZ2VDYWNoZSk7CiAKICAgICAvLyBQcm90ZWN0IGZyYW1l
IGZyb20gZ2V0dGluZyBibG93biBhd2F5IGluc2lkZSBkaXNwYXRjaEJlZm9yZUxvYWRFdmVudCBp
biBsb2FkV2l0aERvY3VtZW50TG9hZGVyLgotICAgIFJlZjxGcmFtZT4gcHJvdGVjdChtX2ZyYW1l
KTsKKyAgICBhdXRvIHByb3RlY3RGcmFtZSA9IG1ha2VSZWYobV9mcmFtZSk7CiAKICAgICBVUkwg
dXJsID0gcmVxdWVzdC5yZXNvdXJjZVJlcXVlc3QoKS51cmwoKTsKIApAQCAtMTE3MCw3ICsxMTY2
LDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6bG9hZEZyYW1lUmVxdWVzdChjb25zdCBGcmFtZUxvYWRS
ZXF1ZXN0JiByZXF1ZXN0LCBFdmVudCogZXZlbnQKIAogICAgIC8vIEZJWE1FOiBJdCdzIHBvc3Np
YmxlIHRoaXMgdGFyZ2V0RnJhbWUgd2lsbCBub3QgYmUgdGhlIHNhbWUgZnJhbWUgdGhhdCB3YXMg
dGFyZ2V0ZWQgYnkgdGhlIGFjdHVhbAogICAgIC8vIGxvYWQgaWYgZnJhbWUgbmFtZXMgaGF2ZSBj
aGFuZ2VkLgotICAgIEZyYW1lKiBzb3VyY2VGcmFtZSA9IGZvcm1TdGF0ZSA/IGZvcm1TdGF0ZS0+
c291cmNlRG9jdW1lbnQoKS0+ZnJhbWUoKSA6ICZtX2ZyYW1lOworICAgIEZyYW1lKiBzb3VyY2VG
cmFtZSA9IGZvcm1TdGF0ZSA/IGZvcm1TdGF0ZS0+c291cmNlRG9jdW1lbnQoKS5mcmFtZSgpIDog
Jm1fZnJhbWU7CiAgICAgaWYgKCFzb3VyY2VGcmFtZSkKICAgICAgICAgc291cmNlRnJhbWUgPSAm
bV9mcmFtZTsKICAgICBGcmFtZSogdGFyZ2V0RnJhbWUgPSBzb3VyY2VGcmFtZS0+bG9hZGVyKCku
ZmluZEZyYW1lRm9yTmF2aWdhdGlvbihyZXF1ZXN0LmZyYW1lTmFtZSgpKTsKQEAgLTEyNTQsNyAr
MTI1MCw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6OmxvYWRVUkwoY29uc3QgRnJhbWVMb2FkUmVxdWVz
dCYgZnJhbWVMb2FkUmVxdWVzdCwgY29uc3QgU3RyaW5nCiAgICAgICAgIG9sZERvY3VtZW50TG9h
ZGVyLT5zZXRMYXN0Q2hlY2tlZFJlcXVlc3QoUmVzb3VyY2VSZXF1ZXN0KCkpOwogICAgICAgICBw
b2xpY3lDaGVja2VyKCkuc3RvcENoZWNrKCk7CiAgICAgICAgIHBvbGljeUNoZWNrZXIoKS5zZXRM
b2FkVHlwZShuZXdMb2FkVHlwZSk7Ci0gICAgICAgIHBvbGljeUNoZWNrZXIoKS5jaGVja05hdmln
YXRpb25Qb2xpY3kocmVxdWVzdCwgZmFsc2UgLyogZGlkUmVjZWl2ZVJlZGlyZWN0UmVzcG9uc2Ug
Ki8sIG9sZERvY3VtZW50TG9hZGVyLmdldCgpLCBmb3JtU3RhdGUsIFt0aGlzXShjb25zdCBSZXNv
dXJjZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSosIGJvb2wgc2hvdWxkQ29udGludWUpIHsK
KyAgICAgICAgcG9saWN5Q2hlY2tlcigpLmNoZWNrTmF2aWdhdGlvblBvbGljeShyZXF1ZXN0LCBm
YWxzZSAvKiBkaWRSZWNlaXZlUmVkaXJlY3RSZXNwb25zZSAqLywgb2xkRG9jdW1lbnRMb2FkZXIu
Z2V0KCksIGZvcm1TdGF0ZSwgW3RoaXNdIChjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3Qs
IEZvcm1TdGF0ZSosIGJvb2wgc2hvdWxkQ29udGludWUpIHsKICAgICAgICAgICAgIGNvbnRpbnVl
RnJhZ21lbnRTY3JvbGxBZnRlck5hdmlnYXRpb25Qb2xpY3kocmVxdWVzdCwgc2hvdWxkQ29udGlu
dWUpOwogICAgICAgICB9KTsKICAgICAgICAgcmV0dXJuOwpAQCAtMTQ1MCw3ICsxNDQ2LDcgQEAg
dm9pZCBGcmFtZUxvYWRlcjo6bG9hZFdpdGhEb2N1bWVudExvYWRlcihEb2N1bWVudExvYWRlciog
bG9hZGVyLCBGcmFtZUxvYWRUeXBlIHQKICAgICAgICAgb2xkRG9jdW1lbnRMb2FkZXItPnNldFRy
aWdnZXJpbmdBY3Rpb24oYWN0aW9uKTsKICAgICAgICAgb2xkRG9jdW1lbnRMb2FkZXItPnNldExh
c3RDaGVja2VkUmVxdWVzdChSZXNvdXJjZVJlcXVlc3QoKSk7CiAgICAgICAgIHBvbGljeUNoZWNr
ZXIoKS5zdG9wQ2hlY2soKTsKLSAgICAgICAgcG9saWN5Q2hlY2tlcigpLmNoZWNrTmF2aWdhdGlv
blBvbGljeShsb2FkZXItPnJlcXVlc3QoKSwgZmFsc2UgLyogZGlkUmVjZWl2ZVJlZGlyZWN0UmVz
cG9uc2UgKi8sIG9sZERvY3VtZW50TG9hZGVyLmdldCgpLCBmb3JtU3RhdGUsIFt0aGlzXShjb25z
dCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSosIGJvb2wgc2hvdWxkQ29udGlu
dWUpIHsKKyAgICAgICAgcG9saWN5Q2hlY2tlcigpLmNoZWNrTmF2aWdhdGlvblBvbGljeShsb2Fk
ZXItPnJlcXVlc3QoKSwgZmFsc2UgLyogZGlkUmVjZWl2ZVJlZGlyZWN0UmVzcG9uc2UgKi8sIG9s
ZERvY3VtZW50TG9hZGVyLmdldCgpLCBmb3JtU3RhdGUsIFt0aGlzXSAoY29uc3QgUmVzb3VyY2VS
ZXF1ZXN0JiByZXF1ZXN0LCBGb3JtU3RhdGUqLCBib29sIHNob3VsZENvbnRpbnVlKSB7CiAgICAg
ICAgICAgICBjb250aW51ZUZyYWdtZW50U2Nyb2xsQWZ0ZXJOYXZpZ2F0aW9uUG9saWN5KHJlcXVl
c3QsIHNob3VsZENvbnRpbnVlKTsKICAgICAgICAgfSk7CiAgICAgICAgIHJldHVybjsKQEAgLTE0
NzcsNyArMTQ3Myw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6OmxvYWRXaXRoRG9jdW1lbnRMb2FkZXIo
RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgRnJhbWVMb2FkVHlwZSB0CiAgICAgICAgIH0KICAgICB9
CiAKLSAgICBwb2xpY3lDaGVja2VyKCkuY2hlY2tOYXZpZ2F0aW9uUG9saWN5KGxvYWRlci0+cmVx
dWVzdCgpLCBmYWxzZSAvKiBkaWRSZWNlaXZlUmVkaXJlY3RSZXNwb25zZSAqLywgbG9hZGVyLCBm
b3JtU3RhdGUsIFt0aGlzLCBhbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkxdKGNvbnN0IFJlc291
cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIGJvb2wgc2hvdWxkQ29u
dGludWUpIHsKKyAgICBwb2xpY3lDaGVja2VyKCkuY2hlY2tOYXZpZ2F0aW9uUG9saWN5KGxvYWRl
ci0+cmVxdWVzdCgpLCBmYWxzZSAvKiBkaWRSZWNlaXZlUmVkaXJlY3RSZXNwb25zZSAqLywgbG9h
ZGVyLCBmb3JtU3RhdGUsIFt0aGlzLCBhbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkxdIChjb25z
dCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIEZvcm1TdGF0ZSogZm9ybVN0YXRlLCBib29sIHNo
b3VsZENvbnRpbnVlKSB7CiAgICAgICAgIGNvbnRpbnVlTG9hZEFmdGVyTmF2aWdhdGlvblBvbGlj
eShyZXF1ZXN0LCBmb3JtU3RhdGUsIHNob3VsZENvbnRpbnVlLCBhbGxvd05hdmlnYXRpb25Ub0lu
dmFsaWRVUkwpOwogICAgIH0pOwogfQpAQCAtMjcwOSw3ICsyNzA1LDcgQEAgdm9pZCBGcmFtZUxv
YWRlcjo6bG9hZFBvc3RSZXF1ZXN0KGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmIHJlcXVlc3QsIGNv
bnN0IFN0cmluZyYKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgfQogCi0gICAgICAgIHBv
bGljeUNoZWNrZXIoKS5jaGVja05ld1dpbmRvd1BvbGljeShhY3Rpb24sIHdvcmtpbmdSZXNvdXJj
ZVJlcXVlc3QsIFdURk1vdmUoZm9ybVN0YXRlKSwgZnJhbWVOYW1lLCBbdGhpcywgYWxsb3dOYXZp
Z2F0aW9uVG9JbnZhbGlkVVJMLCBvcGVuZXJQb2xpY3ldKGNvbnN0IFJlc291cmNlUmVxdWVzdCYg
cmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBj
b25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIGJvb2wgc2hvdWxkQ29udGludWUpIHsKKyAg
ICAgICAgcG9saWN5Q2hlY2tlcigpLmNoZWNrTmV3V2luZG93UG9saWN5KGFjdGlvbiwgd29ya2lu
Z1Jlc291cmNlUmVxdWVzdCwgV1RGTW92ZShmb3JtU3RhdGUpLCBmcmFtZU5hbWUsIFt0aGlzLCBh
bGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkwsIG9wZW5lclBvbGljeV0gKGNvbnN0IFJlc291cmNl
UmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIGNvbnN0IFN0cmluZyYgZnJh
bWVOYW1lLCBjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIGJvb2wgc2hvdWxkQ29udGlu
dWUpIHsKICAgICAgICAgICAgIGNvbnRpbnVlTG9hZEFmdGVyTmV3V2luZG93UG9saWN5KHJlcXVl
c3QsIGZvcm1TdGF0ZSwgZnJhbWVOYW1lLCBhY3Rpb24sIHNob3VsZENvbnRpbnVlLCBhbGxvd05h
dmlnYXRpb25Ub0ludmFsaWRVUkwsIG9wZW5lclBvbGljeSk7CiAgICAgICAgIH0pOwogICAgICAg
ICByZXR1cm47CkBAIC0yNzY3LDExICsyNzYzLDExIEBAIHVuc2lnbmVkIGxvbmcgRnJhbWVMb2Fk
ZXI6OmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1
CiAgICAgaWYgKGVycm9yLmlzTnVsbCgpKSB7CiAgICAgICAgIEFTU0VSVCghbmV3UmVxdWVzdC5p
c051bGwoKSk7CiAKLSAgICAgICAgaWYgKCFkb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNh
Y2hlSG9zdCgpLT5tYXliZUxvYWRTeW5jaHJvbm91c2x5KG5ld1JlcXVlc3QsIGVycm9yLCByZXNw
b25zZSwgZGF0YSkpIHsKKyAgICAgICAgaWYgKCFkb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlv
bkNhY2hlSG9zdCgpLm1heWJlTG9hZFN5bmNocm9ub3VzbHkobmV3UmVxdWVzdCwgZXJyb3IsIHJl
c3BvbnNlLCBkYXRhKSkgewogICAgICAgICAgICAgVmVjdG9yPGNoYXI+IGJ1ZmZlcjsKICAgICAg
ICAgICAgIHBsYXRmb3JtU3RyYXRlZ2llcygpLT5sb2FkZXJTdHJhdGVneSgpLT5sb2FkUmVzb3Vy
Y2VTeW5jaHJvbm91c2x5KG5ldHdvcmtpbmdDb250ZXh0KCksIGlkZW50aWZpZXIsIG5ld1JlcXVl
c3QsIHN0b3JlZENyZWRlbnRpYWxzLCBjbGllbnRDcmVkZW50aWFsUG9saWN5LCBlcnJvciwgcmVz
cG9uc2UsIGJ1ZmZlcik7CiAgICAgICAgICAgICBkYXRhID0gU2hhcmVkQnVmZmVyOjphZG9wdFZl
Y3RvcihidWZmZXIpOwotICAgICAgICAgICAgZG9jdW1lbnRMb2FkZXIoKS0+YXBwbGljYXRpb25D
YWNoZUhvc3QoKS0+bWF5YmVMb2FkRmFsbGJhY2tTeW5jaHJvbm91c2x5KG5ld1JlcXVlc3QsIGVy
cm9yLCByZXNwb25zZSwgZGF0YSk7CisgICAgICAgICAgICBkb2N1bWVudExvYWRlcigpLT5hcHBs
aWNhdGlvbkNhY2hlSG9zdCgpLm1heWJlTG9hZEZhbGxiYWNrU3luY2hyb25vdXNseShuZXdSZXF1
ZXN0LCBlcnJvciwgcmVzcG9uc2UsIGRhdGEpOwogICAgICAgICAgICAgUmVzb3VyY2VMb2FkT2Jz
ZXJ2ZXI6OnNoYXJlZE9ic2VydmVyKCkubG9nU3VicmVzb3VyY2VMb2FkaW5nKCZtX2ZyYW1lLCBu
ZXdSZXF1ZXN0LCByZXNwb25zZSk7CiAgICAgICAgIH0KICAgICB9CkBAIC0zMTA2LDcgKzMxMDIs
NyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpjb250aW51ZUxvYWRBZnRlck5hdmlnYXRpb25Qb2xpY3ko
Y29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZQogICAgICAgICByZXR1cm47CiAgICAgfQogCi0g
ICAgbV9jbGllbnQuZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShmb3JtU3RhdGUsIFt0aGlzXShQb2xp
Y3lBY3Rpb24gYWN0aW9uKSB7CisgICAgbV9jbGllbnQuZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybSgq
Zm9ybVN0YXRlLCBbdGhpc10gKFBvbGljeUFjdGlvbiBhY3Rpb24pIHsKICAgICAgICAgcG9saWN5
Q2hlY2tlcigpLmNvbnRpbnVlTG9hZEFmdGVyV2lsbFN1Ym1pdEZvcm0oYWN0aW9uKTsKICAgICB9
KTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlckNsaWVu
dC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50LmgKaW5kZXggZDEz
YjBhMDc5ZGU5OWYzODc3MDU1MjQ3OGE3ZmJiMzIwODhkOWNmNS4uYTgwOTQ3YmU3ZmRjMjAwZWIw
YzIxMjBhMzBjNmQ5NDk1MDc5MTY4YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0ZyYW1lTG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9h
ZGVyQ2xpZW50LmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA2LTIw
MTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA2
LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICogQ29weXJpZ2h0IChDKSAy
MDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CkBA
IC0xNzcsMTQgKzE3NywxNCBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoU2hv
dygpID0gMDsKIAogICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvclJlc3Bv
bnNlKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBGcmFt
ZVBvbGljeUZ1bmN0aW9uKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoRGVjaWRlUG9s
aWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBSZXNv
dXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPEZvcm1TdGF0ZT4sIGNvbnN0IFN0cmluZyYgZnJhbWVO
YW1lLCBGcmFtZVBvbGljeUZ1bmN0aW9uKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIGRpc3BhdGNo
RGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiwg
Y29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgUGFzc1JlZlB0cjxGb3JtU3RhdGU+LCBGcmFtZVBvbGlj
eUZ1bmN0aW9uKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9y
TmV3V2luZG93QWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBSZXNvdXJjZVJl
cXVlc3QmLCBGb3JtU3RhdGUqLCBjb25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgRnJhbWVQb2xpY3lG
dW5jdGlvbikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5h
dmlnYXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJlc291cmNlUmVx
dWVzdCYsIEZvcm1TdGF0ZSosIEZyYW1lUG9saWN5RnVuY3Rpb24pID0gMDsKICAgICB2aXJ0dWFs
IHZvaWQgY2FuY2VsUG9saWN5Q2hlY2soKSA9IDA7CiAKICAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0
Y2hVbmFibGVUb0ltcGxlbWVudFBvbGljeShjb25zdCBSZXNvdXJjZUVycm9yJikgPSAwOwogCi0g
ICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChQYXNzUmVmUHRyPEZv
cm1TdGF0ZT4pID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShQ
YXNzUmVmUHRyPEZvcm1TdGF0ZT4sIEZyYW1lUG9saWN5RnVuY3Rpb24pID0gMDsKKyAgICB2aXJ0
dWFsIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJlZjxGb3JtU3RhdGU+JiYpID0g
MDsKKyAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShGb3JtU3RhdGUmLCBG
cmFtZVBvbGljeUZ1bmN0aW9uKSA9IDA7CiAKICAgICB2aXJ0dWFsIHZvaWQgcmV2ZXJ0VG9Qcm92
aXNpb25hbFN0YXRlKERvY3VtZW50TG9hZGVyKikgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBzZXRN
YWluRG9jdW1lbnRFcnJvcihEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlRXJyb3ImKSA9
IDA7CkBAIC0yNzIsMTQgKzI3MiwxMiBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBib29sIGNhbkNh
Y2hlUGFnZSgpIGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgY29udmVydE1haW5SZXNvdXJj
ZUxvYWRUb0Rvd25sb2FkKERvY3VtZW50TG9hZGVyKiwgU2Vzc2lvbklELCBjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgPSAwOwogCi0gICAgdmlydHVhbCBS
ZWZQdHI8RnJhbWU+IGNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgbmFtZSwg
SFRNTEZyYW1lT3duZXJFbGVtZW50KiwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgYm9vbCBhbGxv
d3NTY3JvbGxpbmcsIGludCBtYXJnaW5XaWR0aCwgaW50IG1hcmdpbkhlaWdodCkgPSAwOwotICAg
IHZpcnR1YWwgUmVmUHRyPFdpZGdldD4gY3JlYXRlUGx1Z2luKGNvbnN0IEludFNpemUmLCBIVE1M
UGx1Z0luRWxlbWVudCosIGNvbnN0IFVSTCYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3Qg
VmVjdG9yPFN0cmluZz4mLCBjb25zdCBTdHJpbmcmLCBib29sIGxvYWRNYW51YWxseSkgPSAwOwor
ICAgIHZpcnR1YWwgUmVmUHRyPEZyYW1lPiBjcmVhdGVGcmFtZShjb25zdCBVUkwmLCBjb25zdCBT
dHJpbmcmIG5hbWUsIEhUTUxGcmFtZU93bmVyRWxlbWVudCYsIGNvbnN0IFN0cmluZyYgcmVmZXJy
ZXIsIGJvb2wgYWxsb3dzU2Nyb2xsaW5nLCBpbnQgbWFyZ2luV2lkdGgsIGludCBtYXJnaW5IZWln
aHQpID0gMDsKKyAgICB2aXJ0dWFsIFJlZlB0cjxXaWRnZXQ+IGNyZWF0ZVBsdWdpbihjb25zdCBJ
bnRTaXplJiwgSFRNTFBsdWdJbkVsZW1lbnQmLCBjb25zdCBVUkwmLCBjb25zdCBWZWN0b3I8U3Ry
aW5nPiYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgU3RyaW5nJiwgYm9vbCBsb2FkTWFu
dWFsbHkpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgcmVjcmVhdGVQbHVnaW4oV2lkZ2V0KikgPSAw
OwogICAgIHZpcnR1YWwgdm9pZCByZWRpcmVjdERhdGFUb1BsdWdpbihXaWRnZXQqIHBsdWdpbldp
ZGdldCkgPSAwOwogCi0gICAgdmlydHVhbCBQYXNzUmVmUHRyPFdpZGdldD4gY3JlYXRlSmF2YUFw
cGxldFdpZGdldChjb25zdCBJbnRTaXplJiwgSFRNTEFwcGxldEVsZW1lbnQqLCBjb25zdCBVUkwm
IGJhc2VVUkwsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8
U3RyaW5nPiYgcGFyYW1WYWx1ZXMpID0gMDsKLQotICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaERp
ZEZhaWxUb1N0YXJ0UGx1Z2luKGNvbnN0IFBsdWdpblZpZXdCYXNlKikgY29uc3QgeyB9CisgICAg
dmlydHVhbCBSZWZQdHI8V2lkZ2V0PiBjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNp
emUmLCBIVE1MQXBwbGV0RWxlbWVudCYsIGNvbnN0IFVSTCYgYmFzZVVSTCwgY29uc3QgVmVjdG9y
PFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykg
PSAwOwogCiAgICAgdmlydHVhbCBPYmplY3RDb250ZW50VHlwZSBvYmplY3RDb250ZW50VHlwZShj
b25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlKSA9IDA7CiAgICAgdmlydHVhbCBTdHJp
bmcgb3ZlcnJpZGVNZWRpYVR5cGUoKSBjb25zdCA9IDA7CkBAIC0yOTQsNiArMjkyLDcgQEAgcHVi
bGljOgogICAgIHZpcnR1YWwgTlNDYWNoZWRVUkxSZXNwb25zZSogd2lsbENhY2hlUmVzcG9uc2Uo
RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIE5TQ2FjaGVkVVJMUmVz
cG9uc2UqKSBjb25zdCA9IDA7CiAgICAgdmlydHVhbCBOU0RpY3Rpb25hcnkgKmRhdGFEZXRlY3Rp
b25Db250ZXh0KCkgeyByZXR1cm4gbnVsbHB0cjsgfQogI2VuZGlmCisKICNpZiBQTEFURk9STShX
SU4pICYmIFVTRShDRlVSTENPTk5FQ1RJT04pCiAgICAgLy8gRklYTUU6IFdpbmRvd3Mgc2hvdWxk
IHVzZSB3aWxsQ2FjaGVSZXNwb25zZSAtIDxodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NTcyNTc+LgogICAgIHZpcnR1YWwgYm9vbCBzaG91bGRDYWNoZVJlc3BvbnNlKERv
Y3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJiwgY29uc3QgdW5zaWduZWQgY2hhciogZGF0YSwgdW5zaWduZWQgbG9uZyBsb25nIGxl
bmd0aCkgPSAwOwpAQCAtMzA5LDEwICszMDgsMTAgQEAgcHVibGljOgogICAgIC8vIENsaWVudHMg
dGhhdCBnZW5lcmFsbHkgZGlzYWxsb3cgdW5pdmVyc2FsIGFjY2VzcyBjYW4gbWFrZSBleGNlcHRp
b25zIGZvciBwYXJ0aWN1bGFyIFVSTHMuCiAgICAgdmlydHVhbCBib29sIHNob3VsZEZvcmNlVW5p
dmVyc2FsQWNjZXNzRnJvbUxvY2FsVVJMKGNvbnN0IFVSTCYpIHsgcmV0dXJuIGZhbHNlOyB9CiAK
LSAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRlTmV0
d29ya2luZ0NvbnRleHQoKSA9IDA7CisgICAgdmlydHVhbCBSZWY8RnJhbWVOZXR3b3JraW5nQ29u
dGV4dD4gY3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKSA9IDA7CiAKICNpZiBFTkFCTEUoUkVRVUVT
VF9BVVRPQ09NUExFVEUpCi0gICAgdmlydHVhbCB2b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxldGUo
UGFzc1JlZlB0cjxGb3JtU3RhdGU+KSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGRpZFJlcXVlc3RB
dXRvY29tcGxldGUoUmVmPEZvcm1TdGF0ZT4mJikgPSAwOwogI2VuZGlmCiAKICAgICB2aXJ0dWFs
IGJvb2wgc2hvdWxkUGFpbnRCcm9rZW5JbWFnZShjb25zdCBVUkwmKSBjb25zdCB7IHJldHVybiB0
cnVlOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvSGlzdG9yeUNvbnRyb2xs
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmNwcAppbmRl
eCAwNzFiYjg1NDM2NWU5MzU2ZDQ3N2VmN2IzYzcyOTkyNmM0YjBjNmQxLi4wOWI4ZDY2ODQxMWI5
ODI0NjQ1MzY0ZGU3MDc1OGM2NjdiMThiMDk3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvSGlzdG9yeUNvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9I
aXN0b3J5Q29udHJvbGxlci5jcHAKQEAgLTg0NSw3ICs4NDUsNyBAQCB2b2lkIEhpc3RvcnlDb250
cm9sbGVyOjp1cGRhdGVDdXJyZW50SXRlbSgpCiAgICAgfQogfQogCi12b2lkIEhpc3RvcnlDb250
cm9sbGVyOjpwdXNoU3RhdGUoUGFzc1JlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IHN0YXRl
T2JqZWN0LCBjb25zdCBTdHJpbmcmIHRpdGxlLCBjb25zdCBTdHJpbmcmIHVybFN0cmluZykKK3Zv
aWQgSGlzdG9yeUNvbnRyb2xsZXI6OnB1c2hTdGF0ZShSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZh
bHVlPiYmIHN0YXRlT2JqZWN0LCBjb25zdCBTdHJpbmcmIHRpdGxlLCBjb25zdCBTdHJpbmcmIHVy
bFN0cmluZykKIHsKICAgICBpZiAoIW1fY3VycmVudEl0ZW0pCiAgICAgICAgIHJldHVybjsKQEAg
LTg1OSw3ICs4NTksNyBAQCB2b2lkIEhpc3RvcnlDb250cm9sbGVyOjpwdXNoU3RhdGUoUGFzc1Jl
ZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IHN0YXRlT2JqZWN0LAogICAgIC8vIE92ZXJyaWRl
IGRhdGEgaW4gdGhlIGN1cnJlbnQgaXRlbSAoY3JlYXRlZCBieSBjcmVhdGVJdGVtVHJlZSkgdG8g
cmVmbGVjdAogICAgIC8vIHRoZSBwdXNoU3RhdGUoKSBhcmd1bWVudHMuCiAgICAgbV9jdXJyZW50
SXRlbS0+c2V0VGl0bGUodGl0bGUpOwotICAgIG1fY3VycmVudEl0ZW0tPnNldFN0YXRlT2JqZWN0
KHN0YXRlT2JqZWN0KTsKKyAgICBtX2N1cnJlbnRJdGVtLT5zZXRTdGF0ZU9iamVjdChXVEZNb3Zl
KHN0YXRlT2JqZWN0KSk7CiAgICAgbV9jdXJyZW50SXRlbS0+c2V0VVJMU3RyaW5nKHVybFN0cmlu
Zyk7CiAKICAgICBMT0coSGlzdG9yeSwgIkhpc3RvcnlDb250cm9sbGVyICVwIHB1c2hTdGF0ZTog
QWRkaW5nIHRvcCBpdGVtICVwLCBzZXR0aW5nIHVybCBvZiBjdXJyZW50IGl0ZW0gJXAgdG8gJXMi
LCB0aGlzLCB0b3BJdGVtLnB0cigpLCBtX2N1cnJlbnRJdGVtLmdldCgpLCB1cmxTdHJpbmcuYXNj
aWkoKS5kYXRhKCkpOwpAQCAtODczLDcgKzg3Myw3IEBAIHZvaWQgSGlzdG9yeUNvbnRyb2xsZXI6
OnB1c2hTdGF0ZShQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gc3RhdGVPYmplY3Qs
CiAgICAgbV9mcmFtZS5sb2FkZXIoKS5jbGllbnQoKS51cGRhdGVHbG9iYWxIaXN0b3J5KCk7CiB9
CiAKLXZvaWQgSGlzdG9yeUNvbnRyb2xsZXI6OnJlcGxhY2VTdGF0ZShQYXNzUmVmUHRyPFNlcmlh
bGl6ZWRTY3JpcHRWYWx1ZT4gc3RhdGVPYmplY3QsIGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0
IFN0cmluZyYgdXJsU3RyaW5nKQordm9pZCBIaXN0b3J5Q29udHJvbGxlcjo6cmVwbGFjZVN0YXRl
KFJlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+JiYgc3RhdGVPYmplY3QsIGNvbnN0IFN0cmlu
ZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nKQogewogICAgIGlmICghbV9jdXJyZW50
SXRlbSkKICAgICAgICAgcmV0dXJuOwpAQCAtODgzLDcgKzg4Myw3IEBAIHZvaWQgSGlzdG9yeUNv
bnRyb2xsZXI6OnJlcGxhY2VTdGF0ZShQYXNzUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4g
c3RhdGVPYmplCiAgICAgaWYgKCF1cmxTdHJpbmcuaXNFbXB0eSgpKQogICAgICAgICBtX2N1cnJl
bnRJdGVtLT5zZXRVUkxTdHJpbmcodXJsU3RyaW5nKTsKICAgICBtX2N1cnJlbnRJdGVtLT5zZXRU
aXRsZSh0aXRsZSk7Ci0gICAgbV9jdXJyZW50SXRlbS0+c2V0U3RhdGVPYmplY3Qoc3RhdGVPYmpl
Y3QpOworICAgIG1fY3VycmVudEl0ZW0tPnNldFN0YXRlT2JqZWN0KFdURk1vdmUoc3RhdGVPYmpl
Y3QpKTsKICAgICBtX2N1cnJlbnRJdGVtLT5zZXRGb3JtRGF0YShudWxscHRyKTsKICAgICBtX2N1
cnJlbnRJdGVtLT5zZXRGb3JtQ29udGVudFR5cGUoU3RyaW5nKCkpOwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvSGlzdG9yeUNvbnRyb2xsZXIuaCBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9IaXN0b3J5Q29udHJvbGxlci5oCmluZGV4IDEwZmYxZjE0YTMzZWY3NmI5MGJmZDEz
ZDQ2NTI4Yzc4NzVmNWViZDUuLjNkMjVlMjg5YjIyZmIxZjk5NjNmNmRmYjMzNDc4OTU4MWQwOTI3
MDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9IaXN0b3J5Q29udHJvbGxlci5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9IaXN0b3J5Q29udHJvbGxlci5oCkBAIC04NCw4
ICs4NCw4IEBAIHB1YmxpYzoKICAgICBIaXN0b3J5SXRlbSogcHJvdmlzaW9uYWxJdGVtKCkgY29u
c3QgeyByZXR1cm4gbV9wcm92aXNpb25hbEl0ZW0uZ2V0KCk7IH0KICAgICB2b2lkIHNldFByb3Zp
c2lvbmFsSXRlbShIaXN0b3J5SXRlbSopOwogCi0gICAgdm9pZCBwdXNoU3RhdGUoUGFzc1JlZlB0
cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+LCBjb25zdCBTdHJpbmcmIHRpdGxlLCBjb25zdCBTdHJp
bmcmIHVybCk7Ci0gICAgdm9pZCByZXBsYWNlU3RhdGUoUGFzc1JlZlB0cjxTZXJpYWxpemVkU2Ny
aXB0VmFsdWU+LCBjb25zdCBTdHJpbmcmIHRpdGxlLCBjb25zdCBTdHJpbmcmIHVybCk7CisgICAg
dm9pZCBwdXNoU3RhdGUoUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4mJiwgY29uc3QgU3Ry
aW5nJiB0aXRsZSwgY29uc3QgU3RyaW5nJiB1cmwpOworICAgIHZvaWQgcmVwbGFjZVN0YXRlKFJl
ZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+JiYsIGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0
IFN0cmluZyYgdXJsKTsKIAogICAgIHZvaWQgc2V0RGVmZXJzTG9hZGluZyhib29sKTsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ltYWdlTG9hZGVyLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9JbWFnZUxvYWRlci5jcHAKaW5kZXggMWMzYmVhYjI4ZTFlZjM2OThhMGUw
OWNmNTc3ODljMjg1ZTdmZmM4YS4uNTc5MTRlZmI2ZTI2ZTk1NDk5ODdjMmIyY2ZkNzM4ZjE1NDQ5
Yjg1ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ltYWdlTG9hZGVyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvSW1hZ2VMb2FkZXIuY3BwCkBAIC0xNzcsNyArMTc3
LDcgQEAgdm9pZCBJbWFnZUxvYWRlcjo6dXBkYXRlRnJvbUVsZW1lbnQoKQogICAgICAgICBvcHRp
b25zLnNhbWVPcmlnaW5EYXRhVVJMRmxhZyA9IFNhbWVPcmlnaW5EYXRhVVJMRmxhZzo6U2V0Owog
CiAgICAgICAgIENhY2hlZFJlc291cmNlUmVxdWVzdCByZXF1ZXN0KFJlc291cmNlUmVxdWVzdChk
b2N1bWVudC5jb21wbGV0ZVVSTChzb3VyY2VVUkkoYXR0cikpKSwgb3B0aW9ucyk7Ci0gICAgICAg
IHJlcXVlc3Quc2V0SW5pdGlhdG9yKCZlbGVtZW50KCkpOworICAgICAgICByZXF1ZXN0LnNldElu
aXRpYXRvcihlbGVtZW50KCkpOwogCiAgICAgICAgIHJlcXVlc3Quc2V0QXNQb3RlbnRpYWxseUNy
b3NzT3JpZ2luKGVsZW1lbnQoKS5hdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKEhUTUxO
YW1lczo6Y3Jvc3NvcmlnaW5BdHRyKSwgZG9jdW1lbnQpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5jcHAKaW5kZXggN2VmZmFkN2ZhMWM1YWEzNDQ2ZWFj
MDAyOTYxOGYxMmJiNTc1YjRlNS4uNTY5Nzc1MzJiOGIxMmJlMDhhNjE5Y2QzZmIxYzE4NzVkM2I3
NmViMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL05hdmlnYXRpb25TY2hlZHVs
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmNw
cApAQCAtNjgsNiArNjgsMTYgQEAgcHVibGljOgogICAgICAgICAsIG1fdXNlckdlc3R1cmVUb0Zv
cndhcmQoVXNlckdlc3R1cmVJbmRpY2F0b3I6OmN1cnJlbnRVc2VyR2VzdHVyZSgpKQogICAgIHsK
ICAgICB9CisgICAgU2NoZWR1bGVkTmF2aWdhdGlvbihkb3VibGUgZGVsYXksIExvY2tIaXN0b3J5
IGxvY2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QsIGJv
b2wgd2FzRHVyaW5nTG9hZCwgYm9vbCBpc0xvY2F0aW9uQ2hhbmdlLCBTaG91bGRPcGVuRXh0ZXJu
YWxVUkxzUG9saWN5IGV4dGVybmFsVVJMUG9saWN5KQorICAgICAgICA6IG1fZGVsYXkoZGVsYXkp
CisgICAgICAgICwgbV9sb2NrSGlzdG9yeShsb2NrSGlzdG9yeSkKKyAgICAgICAgLCBtX2xvY2tC
YWNrRm9yd2FyZExpc3QobG9ja0JhY2tGb3J3YXJkTGlzdCkKKyAgICAgICAgLCBtX3dhc0R1cmlu
Z0xvYWQod2FzRHVyaW5nTG9hZCkKKyAgICAgICAgLCBtX2lzTG9jYXRpb25DaGFuZ2UoaXNMb2Nh
dGlvbkNoYW5nZSkKKyAgICAgICAgLCBtX3VzZXJHZXN0dXJlVG9Gb3J3YXJkKFVzZXJHZXN0dXJl
SW5kaWNhdG9yOjpjdXJyZW50VXNlckdlc3R1cmUoKSkKKyAgICAgICAgLCBtX3Nob3VsZE9wZW5F
eHRlcm5hbFVSTHNQb2xpY3koZXh0ZXJuYWxVUkxQb2xpY3kpCisgICAgeworICAgIH0KICAgICB2
aXJ0dWFsIH5TY2hlZHVsZWROYXZpZ2F0aW9uKCkgeyB9CiAKICAgICB2aXJ0dWFsIHZvaWQgZmly
ZShGcmFtZSYpID0gMDsKQEAgLTgxLDEyICs5MSwxMSBAQCBwdWJsaWM6CiAgICAgTG9ja0JhY2tG
b3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0KCkgY29uc3QgeyByZXR1cm4gbV9sb2NrQmFj
a0ZvcndhcmRMaXN0OyB9CiAgICAgYm9vbCB3YXNEdXJpbmdMb2FkKCkgY29uc3QgeyByZXR1cm4g
bV93YXNEdXJpbmdMb2FkOyB9CiAgICAgYm9vbCBpc0xvY2F0aW9uQ2hhbmdlKCkgY29uc3QgeyBy
ZXR1cm4gbV9pc0xvY2F0aW9uQ2hhbmdlOyB9Ci0gICAgUmVmUHRyPFVzZXJHZXN0dXJlVG9rZW4+
IHVzZXJHZXN0dXJlVG9Gb3J3YXJkKCkgY29uc3QgeyByZXR1cm4gbV91c2VyR2VzdHVyZVRvRm9y
d2FyZDsgfQorICAgIFVzZXJHZXN0dXJlVG9rZW4qIHVzZXJHZXN0dXJlVG9Gb3J3YXJkKCkgY29u
c3QgeyByZXR1cm4gbV91c2VyR2VzdHVyZVRvRm9yd2FyZC5nZXQoKTsgfQogCiBwcm90ZWN0ZWQ6
CiAgICAgdm9pZCBjbGVhclVzZXJHZXN0dXJlKCkgeyBtX3VzZXJHZXN0dXJlVG9Gb3J3YXJkID0g
bnVsbHB0cjsgfQotCi0gICAgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSBtX3Nob3VsZE9w
ZW5FeHRlcm5hbFVSTHNQb2xpY3kgeyBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5OjpTaG91
bGROb3RBbGxvdyB9OworICAgIFNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgc2hvdWxkT3Bl
bkV4dGVybmFsVVJMcygpIGNvbnN0IHsgcmV0dXJuIG1fc2hvdWxkT3BlbkV4dGVybmFsVVJMc1Bv
bGljeTsgfQogCiBwcml2YXRlOgogICAgIGRvdWJsZSBtX2RlbGF5OwpAQCAtOTUsMTkgKzEwNCwx
NyBAQCBwcml2YXRlOgogICAgIGJvb2wgbV93YXNEdXJpbmdMb2FkOwogICAgIGJvb2wgbV9pc0xv
Y2F0aW9uQ2hhbmdlOwogICAgIFJlZlB0cjxVc2VyR2VzdHVyZVRva2VuPiBtX3VzZXJHZXN0dXJl
VG9Gb3J3YXJkOworICAgIFNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgbV9zaG91bGRPcGVu
RXh0ZXJuYWxVUkxzUG9saWN5IHsgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeTo6U2hvdWxk
Tm90QWxsb3cgfTsKIH07CiAKIGNsYXNzIFNjaGVkdWxlZFVSTE5hdmlnYXRpb24gOiBwdWJsaWMg
U2NoZWR1bGVkTmF2aWdhdGlvbiB7CiBwcm90ZWN0ZWQ6Ci0gICAgU2NoZWR1bGVkVVJMTmF2aWdh
dGlvbihEb2N1bWVudCogaW5pdGlhdGluZ0RvY3VtZW50LCBkb3VibGUgZGVsYXksIFNlY3VyaXR5
T3JpZ2luKiBzZWN1cml0eU9yaWdpbiwgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgcmVm
ZXJyZXIsIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tC
YWNrRm9yd2FyZExpc3QsIGJvb2wgZHVyaW5nTG9hZCwgYm9vbCBpc0xvY2F0aW9uQ2hhbmdlKQot
ICAgICAgICA6IFNjaGVkdWxlZE5hdmlnYXRpb24oZGVsYXksIGxvY2tIaXN0b3J5LCBsb2NrQmFj
a0ZvcndhcmRMaXN0LCBkdXJpbmdMb2FkLCBpc0xvY2F0aW9uQ2hhbmdlKQorICAgIFNjaGVkdWxl
ZFVSTE5hdmlnYXRpb24oRG9jdW1lbnQmIGluaXRpYXRpbmdEb2N1bWVudCwgZG91YmxlIGRlbGF5
LCBTZWN1cml0eU9yaWdpbiogc2VjdXJpdHlPcmlnaW4sIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBT
dHJpbmcmIHJlZmVycmVyLCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSwgTG9ja0JhY2tGb3J3YXJk
TGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0LCBib29sIGR1cmluZ0xvYWQsIGJvb2wgaXNMb2NhdGlv
bkNoYW5nZSkKKyAgICAgICAgOiBTY2hlZHVsZWROYXZpZ2F0aW9uKGRlbGF5LCBsb2NrSGlzdG9y
eSwgbG9ja0JhY2tGb3J3YXJkTGlzdCwgZHVyaW5nTG9hZCwgaXNMb2NhdGlvbkNoYW5nZSwgaW5p
dGlhdGluZ0RvY3VtZW50LnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3lUb1Byb3BhZ2F0ZSgp
KQogICAgICAgICAsIG1fc2VjdXJpdHlPcmlnaW4oc2VjdXJpdHlPcmlnaW4pCiAgICAgICAgICwg
bV91cmwodXJsKQogICAgICAgICAsIG1fcmVmZXJyZXIocmVmZXJyZXIpCi0gICAgICAgICwgbV9o
YXZlVG9sZENsaWVudChmYWxzZSkKICAgICB7Ci0gICAgICAgIGlmIChpbml0aWF0aW5nRG9jdW1l
bnQpCi0gICAgICAgICAgICBtX3Nob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgPSBpbml0aWF0
aW5nRG9jdW1lbnQtPnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3lUb1Byb3BhZ2F0ZSgpOwog
ICAgIH0KIAogICAgIHZvaWQgZmlyZShGcmFtZSYgZnJhbWUpIG92ZXJyaWRlCkBAIC0xMTUsNyAr
MTIyLDcgQEAgcHJvdGVjdGVkOgogICAgICAgICBVc2VyR2VzdHVyZUluZGljYXRvciBnZXN0dXJl
SW5kaWNhdG9yKHVzZXJHZXN0dXJlVG9Gb3J3YXJkKCkpOwogCiAgICAgICAgIFJlc291cmNlUmVx
dWVzdCByZXNvdXJjZVJlcXVlc3QobV91cmwsIG1fcmVmZXJyZXIsIFVzZVByb3RvY29sQ2FjaGVQ
b2xpY3kpOwotICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1lUmVxdWVzdChtX3NlY3VyaXR5
T3JpZ2luLmdldCgpLCByZXNvdXJjZVJlcXVlc3QsICJfc2VsZiIsIGxvY2tIaXN0b3J5KCksIGxv
Y2tCYWNrRm9yd2FyZExpc3QoKSwgTWF5YmVTZW5kUmVmZXJyZXIsIEFsbG93TmF2aWdhdGlvblRv
SW52YWxpZFVSTDo6WWVzLCBOZXdGcmFtZU9wZW5lclBvbGljeTo6QWxsb3csIG1fc2hvdWxkT3Bl
bkV4dGVybmFsVVJMc1BvbGljeSk7CisgICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1
ZXN0KG1fc2VjdXJpdHlPcmlnaW4uZ2V0KCksIHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9j
a0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxs
b3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpZZXMsIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxv
dywgc2hvdWxkT3BlbkV4dGVybmFsVVJMcygpKTsKIAogICAgICAgICBmcmFtZS5sb2FkZXIoKS5j
aGFuZ2VMb2NhdGlvbihmcmFtZVJlcXVlc3QpOwogICAgIH0KQEAgLTE1MiwxMiArMTU5LDEyIEBA
IHByaXZhdGU6CiAgICAgUmVmUHRyPFNlY3VyaXR5T3JpZ2luPiBtX3NlY3VyaXR5T3JpZ2luOwog
ICAgIFVSTCBtX3VybDsKICAgICBTdHJpbmcgbV9yZWZlcnJlcjsKLSAgICBib29sIG1faGF2ZVRv
bGRDbGllbnQ7CisgICAgYm9vbCBtX2hhdmVUb2xkQ2xpZW50IHsgZmFsc2UgfTsKIH07CiAKIGNs
YXNzIFNjaGVkdWxlZFJlZGlyZWN0IDogcHVibGljIFNjaGVkdWxlZFVSTE5hdmlnYXRpb24gewog
cHVibGljOgotICAgIFNjaGVkdWxlZFJlZGlyZWN0KERvY3VtZW50KiBpbml0aWF0aW5nRG9jdW1l
bnQsIGRvdWJsZSBkZWxheSwgU2VjdXJpdHlPcmlnaW4qIHNlY3VyaXR5T3JpZ2luLCBjb25zdCBV
UkwmIHVybCwgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnksIExvY2tCYWNrRm9yd2FyZExpc3QgbG9j
a0JhY2tGb3J3YXJkTGlzdCkKKyAgICBTY2hlZHVsZWRSZWRpcmVjdChEb2N1bWVudCYgaW5pdGlh
dGluZ0RvY3VtZW50LCBkb3VibGUgZGVsYXksIFNlY3VyaXR5T3JpZ2luKiBzZWN1cml0eU9yaWdp
biwgY29uc3QgVVJMJiB1cmwsIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBMb2NrQmFja0Zvcndh
cmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QpCiAgICAgICAgIDogU2NoZWR1bGVkVVJMTmF2aWdh
dGlvbihpbml0aWF0aW5nRG9jdW1lbnQsIGRlbGF5LCBzZWN1cml0eU9yaWdpbiwgdXJsLCBTdHJp
bmcoKSwgbG9ja0hpc3RvcnksIGxvY2tCYWNrRm9yd2FyZExpc3QsIGZhbHNlLCBmYWxzZSkKICAg
ICB7CiAgICAgICAgIGNsZWFyVXNlckdlc3R1cmUoKTsKQEAgLTE3Myw3ICsxODAsNyBAQCBwdWJs
aWM6CiAgICAgICAgIFVzZXJHZXN0dXJlSW5kaWNhdG9yIGdlc3R1cmVJbmRpY2F0b3IodXNlckdl
c3R1cmVUb0ZvcndhcmQoKSk7CiAgICAgICAgIGJvb2wgcmVmcmVzaCA9IGVxdWFsSWdub3JpbmdG
cmFnbWVudElkZW50aWZpZXIoZnJhbWUuZG9jdW1lbnQoKS0+dXJsKCksIHVybCgpKTsKICAgICAg
ICAgUmVzb3VyY2VSZXF1ZXN0IHJlc291cmNlUmVxdWVzdCh1cmwoKSwgcmVmZXJyZXIoKSwgcmVm
cmVzaCA/IFJlbG9hZElnbm9yaW5nQ2FjaGVEYXRhIDogVXNlUHJvdG9jb2xDYWNoZVBvbGljeSk7
Ci0gICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KHNlY3VyaXR5T3JpZ2luKCks
IHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJk
TGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpO
bywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBtX3Nob3VsZE9wZW5FeHRlcm5hbFVSTHNQ
b2xpY3kpOworICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1lUmVxdWVzdChzZWN1cml0eU9y
aWdpbigpLCByZXNvdXJjZVJlcXVlc3QsICJfc2VsZiIsIGxvY2tIaXN0b3J5KCksIGxvY2tCYWNr
Rm9yd2FyZExpc3QoKSwgTWF5YmVTZW5kUmVmZXJyZXIsIEFsbG93TmF2aWdhdGlvblRvSW52YWxp
ZFVSTDo6Tm8sIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxvdywgc2hvdWxkT3BlbkV4dGVybmFs
VVJMcygpKTsKIAogICAgICAgICBmcmFtZS5sb2FkZXIoKS5jaGFuZ2VMb2NhdGlvbihmcmFtZVJl
cXVlc3QpOwogICAgIH0KQEAgLTE4MSw3ICsxODgsNyBAQCBwdWJsaWM6CiAKIGNsYXNzIFNjaGVk
dWxlZExvY2F0aW9uQ2hhbmdlIDogcHVibGljIFNjaGVkdWxlZFVSTE5hdmlnYXRpb24gewogcHVi
bGljOgotICAgIFNjaGVkdWxlZExvY2F0aW9uQ2hhbmdlKERvY3VtZW50KiBpbml0aWF0aW5nRG9j
dW1lbnQsIFNlY3VyaXR5T3JpZ2luKiBzZWN1cml0eU9yaWdpbiwgY29uc3QgVVJMJiB1cmwsIGNv
bnN0IFN0cmluZyYgcmVmZXJyZXIsIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5LCBMb2NrQmFja0Zv
cndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QsIGJvb2wgZHVyaW5nTG9hZCkKKyAgICBTY2hl
ZHVsZWRMb2NhdGlvbkNoYW5nZShEb2N1bWVudCYgaW5pdGlhdGluZ0RvY3VtZW50LCBTZWN1cml0
eU9yaWdpbiogc2VjdXJpdHlPcmlnaW4sIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIHJl
ZmVycmVyLCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSwgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2Nr
QmFja0ZvcndhcmRMaXN0LCBib29sIGR1cmluZ0xvYWQpCiAgICAgICAgIDogU2NoZWR1bGVkVVJM
TmF2aWdhdGlvbihpbml0aWF0aW5nRG9jdW1lbnQsIDAuMCwgc2VjdXJpdHlPcmlnaW4sIHVybCwg
cmVmZXJyZXIsIGxvY2tIaXN0b3J5LCBsb2NrQmFja0ZvcndhcmRMaXN0LCBkdXJpbmdMb2FkLCB0
cnVlKSB7IH0KIAogICAgIHZvaWQgZmlyZShGcmFtZSYgZnJhbWUpIG92ZXJyaWRlCkBAIC0xODks
MTQgKzE5NiwxNCBAQCBwdWJsaWM6CiAgICAgICAgIFVzZXJHZXN0dXJlSW5kaWNhdG9yIGdlc3R1
cmVJbmRpY2F0b3IodXNlckdlc3R1cmVUb0ZvcndhcmQoKSk7CiAKICAgICAgICAgUmVzb3VyY2VS
ZXF1ZXN0IHJlc291cmNlUmVxdWVzdCh1cmwoKSwgcmVmZXJyZXIoKSwgVXNlUHJvdG9jb2xDYWNo
ZVBvbGljeSk7Ci0gICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KHNlY3VyaXR5
T3JpZ2luKCksIHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hpc3RvcnkoKSwgbG9ja0Jh
Y2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZh
bGlkVVJMOjpObywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBtX3Nob3VsZE9wZW5FeHRl
cm5hbFVSTHNQb2xpY3kpOworICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1lUmVxdWVzdChz
ZWN1cml0eU9yaWdpbigpLCByZXNvdXJjZVJlcXVlc3QsICJfc2VsZiIsIGxvY2tIaXN0b3J5KCks
IGxvY2tCYWNrRm9yd2FyZExpc3QoKSwgTWF5YmVTZW5kUmVmZXJyZXIsIEFsbG93TmF2aWdhdGlv
blRvSW52YWxpZFVSTDo6Tm8sIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxvdywgc2hvdWxkT3Bl
bkV4dGVybmFsVVJMcygpKTsKICAgICAgICAgZnJhbWUubG9hZGVyKCkuY2hhbmdlTG9jYXRpb24o
ZnJhbWVSZXF1ZXN0KTsKICAgICB9CiB9OwogCiBjbGFzcyBTY2hlZHVsZWRSZWZyZXNoIDogcHVi
bGljIFNjaGVkdWxlZFVSTE5hdmlnYXRpb24gewogcHVibGljOgotICAgIFNjaGVkdWxlZFJlZnJl
c2goRG9jdW1lbnQqIGluaXRpYXRpbmdEb2N1bWVudCwgU2VjdXJpdHlPcmlnaW4qIHNlY3VyaXR5
T3JpZ2luLCBjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiByZWZlcnJlcikKKyAgICBTY2hl
ZHVsZWRSZWZyZXNoKERvY3VtZW50JiBpbml0aWF0aW5nRG9jdW1lbnQsIFNlY3VyaXR5T3JpZ2lu
KiBzZWN1cml0eU9yaWdpbiwgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIp
CiAgICAgICAgIDogU2NoZWR1bGVkVVJMTmF2aWdhdGlvbihpbml0aWF0aW5nRG9jdW1lbnQsIDAu
MCwgc2VjdXJpdHlPcmlnaW4sIHVybCwgcmVmZXJyZXIsIExvY2tIaXN0b3J5OjpZZXMsIExvY2tC
YWNrRm9yd2FyZExpc3Q6OlllcywgZmFsc2UsIHRydWUpCiAgICAgewogICAgIH0KQEAgLTIwNiw3
ICsyMTMsNyBAQCBwdWJsaWM6CiAgICAgICAgIFVzZXJHZXN0dXJlSW5kaWNhdG9yIGdlc3R1cmVJ
bmRpY2F0b3IodXNlckdlc3R1cmVUb0ZvcndhcmQoKSk7CiAKICAgICAgICAgUmVzb3VyY2VSZXF1
ZXN0IHJlc291cmNlUmVxdWVzdCh1cmwoKSwgcmVmZXJyZXIoKSwgUmVsb2FkSWdub3JpbmdDYWNo
ZURhdGEpOwotICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1lUmVxdWVzdChzZWN1cml0eU9y
aWdpbigpLCByZXNvdXJjZVJlcXVlc3QsICJfc2VsZiIsIGxvY2tIaXN0b3J5KCksIGxvY2tCYWNr
Rm9yd2FyZExpc3QoKSwgTWF5YmVTZW5kUmVmZXJyZXIsIEFsbG93TmF2aWdhdGlvblRvSW52YWxp
ZFVSTDo6WWVzLCBOZXdGcmFtZU9wZW5lclBvbGljeTo6QWxsb3csIG1fc2hvdWxkT3BlbkV4dGVy
bmFsVVJMc1BvbGljeSk7CisgICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KHNl
Y3VyaXR5T3JpZ2luKCksIHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hpc3RvcnkoKSwg
bG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9u
VG9JbnZhbGlkVVJMOjpZZXMsIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxvdywgc2hvdWxkT3Bl
bkV4dGVybmFsVVJMcygpKTsKICAgICAgICAgZnJhbWUubG9hZGVyKCkuY2hhbmdlTG9jYXRpb24o
ZnJhbWVSZXF1ZXN0KTsKICAgICB9CiB9OwpAQCAtMjI2LDcgKzIzMyw3IEBAIHB1YmxpYzoKICAg
ICAgICAgaWYgKCFtX2hpc3RvcnlTdGVwcykgewogICAgICAgICAgICAgLy8gU3BlY2lhbCBjYXNl
IGZvciBnbygwKSBmcm9tIGEgZnJhbWUgLT4gcmVsb2FkIG9ubHkgdGhlIGZyYW1lCiAgICAgICAg
ICAgICAvLyBUbyBmb2xsb3cgRmlyZWZveCBhbmQgSUUncyBiZWhhdmlvciwgaGlzdG9yeSByZWxv
YWQgY2FuIG9ubHkgbmF2aWdhdGUgdGhlIHNlbGYgZnJhbWUuCi0gICAgICAgICAgICBmcmFtZS5s
b2FkZXIoKS51cmxTZWxlY3RlZChmcmFtZS5kb2N1bWVudCgpLT51cmwoKSwgIl9zZWxmIiwgMCwg
bG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwg
bV9zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5KTsKKyAgICAgICAgICAgIGZyYW1lLmxvYWRl
cigpLnVybFNlbGVjdGVkKGZyYW1lLmRvY3VtZW50KCktPnVybCgpLCAiX3NlbGYiLCAwLCBsb2Nr
SGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0KCksIE1heWJlU2VuZFJlZmVycmVyLCBzaG91
bGRPcGVuRXh0ZXJuYWxVUkxzKCkpOwogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAg
ICAgICAgIApAQCAtMjQxLDE1ICsyNDgsMTAgQEAgcHJpdmF0ZToKIAogY2xhc3MgU2NoZWR1bGVk
Rm9ybVN1Ym1pc3Npb24gOiBwdWJsaWMgU2NoZWR1bGVkTmF2aWdhdGlvbiB7CiBwdWJsaWM6Ci0g
ICAgU2NoZWR1bGVkRm9ybVN1Ym1pc3Npb24oUGFzc1JlZlB0cjxGb3JtU3VibWlzc2lvbj4gc3Vi
bWlzc2lvbiwgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0LCBib29sIGR1
cmluZ0xvYWQpCi0gICAgICAgIDogU2NoZWR1bGVkTmF2aWdhdGlvbigwLCBzdWJtaXNzaW9uLT5s
b2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRMaXN0LCBkdXJpbmdMb2FkLCB0cnVlKQotICAg
ICAgICAsIG1fc3VibWlzc2lvbihzdWJtaXNzaW9uKQotICAgICAgICAsIG1faGF2ZVRvbGRDbGll
bnQoZmFsc2UpCisgICAgU2NoZWR1bGVkRm9ybVN1Ym1pc3Npb24oUmVmPEZvcm1TdWJtaXNzaW9u
PiYmIHN1Ym1pc3Npb24sIExvY2tCYWNrRm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3YXJkTGlzdCwg
Ym9vbCBkdXJpbmdMb2FkKQorICAgICAgICA6IFNjaGVkdWxlZE5hdmlnYXRpb24oMCwgc3VibWlz
c2lvbi0+bG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCwgZHVyaW5nTG9hZCwgdHJ1
ZSwgc3VibWlzc2lvbi0+c3RhdGUoKS5zb3VyY2VEb2N1bWVudCgpLnNob3VsZE9wZW5FeHRlcm5h
bFVSTHNQb2xpY3lUb1Byb3BhZ2F0ZSgpKQorICAgICAgICAsIG1fc3VibWlzc2lvbihXVEZNb3Zl
KHN1Ym1pc3Npb24pKQogICAgIHsKLSAgICAgICAgQVNTRVJUKG1fc3VibWlzc2lvbi0+c3RhdGUo
KSk7Ci0KLSAgICAgICAgaWYgKERvY3VtZW50KiBkb2N1bWVudCA9IG1fc3VibWlzc2lvbi0+c3Rh
dGUoKS0+c291cmNlRG9jdW1lbnQoKSkKLSAgICAgICAgICAgIG1fc2hvdWxkT3BlbkV4dGVybmFs
VVJMc1BvbGljeSA9IGRvY3VtZW50LT5zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5VG9Qcm9w
YWdhdGUoKTsKICAgICB9CiAKICAgICB2b2lkIGZpcmUoRnJhbWUmIGZyYW1lKSBvdmVycmlkZQpA
QCAtMjYwLDE0ICsyNjIsMTQgQEAgcHVibGljOgogICAgICAgICAvLyBOb3cgdGhhdCB0aGUgdGlt
ZXIgaGFzIGZpcmVkLCB3ZSBuZWVkIHRvIHJlcGVhdCB0aGUgc2VjdXJpdHkgY2hlY2sgd2hpY2gg
bm9ybWFsbHkgaXMgZG9uZSB3aGVuCiAgICAgICAgIC8vIHNlbGVjdGluZyBhIHRhcmdldCwgaW4g
Y2FzZSBjb25kaXRpb25zIGhhdmUgY2hhbmdlZC4gT3RoZXIgY29kZSBwYXRocyBhdm9pZCB0aGlz
IGJ5IHRhcmdldGluZwogICAgICAgICAvLyB3aXRob3V0IGxlYXZpbmcgYSB0aW1lIHdpbmRvdy4g
SWYgd2UgZmFpbCB0aGUgY2hlY2sganVzdCBzaWxlbnRseSBkcm9wIHRoZSBmb3JtIHN1Ym1pc3Np
b24uCi0gICAgICAgIERvY3VtZW50KiByZXF1ZXN0aW5nRG9jdW1lbnQgPSBtX3N1Ym1pc3Npb24t
PnN0YXRlKCktPnNvdXJjZURvY3VtZW50KCk7Ci0gICAgICAgIGlmICghcmVxdWVzdGluZ0RvY3Vt
ZW50LT5jYW5OYXZpZ2F0ZSgmZnJhbWUpKQorICAgICAgICBhdXRvJiByZXF1ZXN0aW5nRG9jdW1l
bnQgPSBtX3N1Ym1pc3Npb24tPnN0YXRlKCkuc291cmNlRG9jdW1lbnQoKTsKKyAgICAgICAgaWYg
KCFyZXF1ZXN0aW5nRG9jdW1lbnQuY2FuTmF2aWdhdGUoJmZyYW1lKSkKICAgICAgICAgICAgIHJl
dHVybjsKLSAgICAgICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFtZVJlcXVlc3QocmVxdWVzdGluZ0Rv
Y3VtZW50LT5zZWN1cml0eU9yaWdpbigpLCBsb2NrSGlzdG9yeSgpLCBsb2NrQmFja0ZvcndhcmRM
aXN0KCksIE1heWJlU2VuZFJlZmVycmVyLCBBbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkw6Olll
cywgTmV3RnJhbWVPcGVuZXJQb2xpY3k6OkFsbG93LCBtX3Nob3VsZE9wZW5FeHRlcm5hbFVSTHNQ
b2xpY3kpOworICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1lUmVxdWVzdChyZXF1ZXN0aW5n
RG9jdW1lbnQuc2VjdXJpdHlPcmlnaW4oKSwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJk
TGlzdCgpLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpZ
ZXMsIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxvdywgc2hvdWxkT3BlbkV4dGVybmFsVVJMcygp
KTsKICAgICAgICAgbV9zdWJtaXNzaW9uLT5wb3B1bGF0ZUZyYW1lTG9hZFJlcXVlc3QoZnJhbWVS
ZXF1ZXN0KTsKLSAgICAgICAgZnJhbWUubG9hZGVyKCkubG9hZEZyYW1lUmVxdWVzdChmcmFtZVJl
cXVlc3QsIG1fc3VibWlzc2lvbi0+ZXZlbnQoKSwgbV9zdWJtaXNzaW9uLT5zdGF0ZSgpKTsKKyAg
ICAgICAgZnJhbWUubG9hZGVyKCkubG9hZEZyYW1lUmVxdWVzdChmcmFtZVJlcXVlc3QsIG1fc3Vi
bWlzc2lvbi0+ZXZlbnQoKSwgJm1fc3VibWlzc2lvbi0+c3RhdGUoKSk7CiAgICAgfQotICAgIAor
CiAgICAgdm9pZCBkaWRTdGFydFRpbWVyKEZyYW1lJiBmcmFtZSwgVGltZXImIHRpbWVyKSBvdmVy
cmlkZQogICAgIHsKICAgICAgICAgaWYgKG1faGF2ZVRvbGRDbGllbnQpCkBAIC0yOTMsOCArMjk1
LDggQEAgcHVibGljOgogICAgIH0KIAogcHJpdmF0ZToKLSAgICBSZWZQdHI8Rm9ybVN1Ym1pc3Np
b24+IG1fc3VibWlzc2lvbjsKLSAgICBib29sIG1faGF2ZVRvbGRDbGllbnQ7CisgICAgUmVmPEZv
cm1TdWJtaXNzaW9uPiBtX3N1Ym1pc3Npb247CisgICAgYm9vbCBtX2hhdmVUb2xkQ2xpZW50IHsg
ZmFsc2UgfTsKIH07CiAKIGNsYXNzIFNjaGVkdWxlZFBhZ2VCbG9jayBmaW5hbCA6IHB1YmxpYyBT
Y2hlZHVsZWROYXZpZ2F0aW9uIHsKQEAgLTMxMyw3ICszMTUsNyBAQCBwdWJsaWM6CiAgICAgICAg
IFN1YnN0aXR1dGVEYXRhIHJlcGxhY2VtZW50RGF0YShTaGFyZWRCdWZmZXI6OmNyZWF0ZSgpLCBt
X29yaWdpbkRvY3VtZW50LnVybCgpLCByZXBsYWNlbWVudFJlc3BvbnNlLCBTdWJzdGl0dXRlRGF0
YTo6U2Vzc2lvbkhpc3RvcnlWaXNpYmlsaXR5OjpIaWRkZW4pOwogCiAgICAgICAgIFJlc291cmNl
UmVxdWVzdCByZXNvdXJjZVJlcXVlc3QobV9vcmlnaW5Eb2N1bWVudC51cmwoKSwgZW1wdHlTdHJp
bmcoKSwgUmVsb2FkSWdub3JpbmdDYWNoZURhdGEpOwotICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0
IGZyYW1lUmVxdWVzdChtX29yaWdpbkRvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCksIHJlc291cmNl
UmVxdWVzdCwgbG9ja0hpc3RvcnkoKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCgpLCBNYXliZVNlbmRS
ZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpZZXMsIE5ld0ZyYW1lT3BlbmVy
UG9saWN5OjpBbGxvdywgbV9zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5KTsKKyAgICAgICAg
RnJhbWVMb2FkUmVxdWVzdCBmcmFtZVJlcXVlc3QobV9vcmlnaW5Eb2N1bWVudC5zZWN1cml0eU9y
aWdpbigpLCByZXNvdXJjZVJlcXVlc3QsIGxvY2tIaXN0b3J5KCksIGxvY2tCYWNrRm9yd2FyZExp
c3QoKSwgTWF5YmVTZW5kUmVmZXJyZXIsIEFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTDo6WWVz
LCBOZXdGcmFtZU9wZW5lclBvbGljeTo6QWxsb3csIHNob3VsZE9wZW5FeHRlcm5hbFVSTHMoKSk7
CiAgICAgICAgIGZyYW1lUmVxdWVzdC5zZXRTdWJzdGl0dXRlRGF0YShyZXBsYWNlbWVudERhdGEp
OwogICAgICAgICBmcmFtZS5sb2FkZXIoKS5sb2FkKGZyYW1lUmVxdWVzdCk7CiAgICAgfQpAQCAt
MzY0LDcgKzM2Niw3IEBAIGlubGluZSBib29sIE5hdmlnYXRpb25TY2hlZHVsZXI6OnNob3VsZFNj
aGVkdWxlTmF2aWdhdGlvbihjb25zdCBVUkwmIHVybCkgY29uc3QKICAgICByZXR1cm4gTmF2aWdh
dGlvbkRpc2FibGVyRm9yQmVmb3JlVW5sb2FkOjppc05hdmlnYXRpb25BbGxvd2VkKCk7CiB9CiAK
LXZvaWQgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2NoZWR1bGVSZWRpcmVjdChEb2N1bWVudCogaW5p
dGlhdGluZ0RvY3VtZW50LCBkb3VibGUgZGVsYXksIGNvbnN0IFVSTCYgdXJsKQordm9pZCBOYXZp
Z2F0aW9uU2NoZWR1bGVyOjpzY2hlZHVsZVJlZGlyZWN0KERvY3VtZW50JiBpbml0aWF0aW5nRG9j
dW1lbnQsIGRvdWJsZSBkZWxheSwgY29uc3QgVVJMJiB1cmwpCiB7CiAgICAgaWYgKCFzaG91bGRT
Y2hlZHVsZU5hdmlnYXRpb24odXJsKSkKICAgICAgICAgcmV0dXJuOwpAQCAtMzc1LDcgKzM3Nyw3
IEBAIHZvaWQgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2NoZWR1bGVSZWRpcmVjdChEb2N1bWVudCog
aW5pdGlhdGluZ0RvY3VtZW50LCBkb3VibGUKIAogICAgIC8vIFdlIHdhbnQgYSBuZXcgYmFjay9m
b3J3YXJkIGxpc3QgaXRlbSBpZiB0aGUgcmVmcmVzaCB0aW1lb3V0IGlzID4gMSBzZWNvbmQuCiAg
ICAgaWYgKCFtX3JlZGlyZWN0IHx8IGRlbGF5IDw9IG1fcmVkaXJlY3QtPmRlbGF5KCkpIHsKLSAg
ICAgICAgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0ID0gZGVsYXkgPD0g
MSA/IExvY2tCYWNrRm9yd2FyZExpc3Q6OlllcyA6IExvY2tCYWNrRm9yd2FyZExpc3Q6Ok5vOwor
ICAgICAgICBhdXRvIGxvY2tCYWNrRm9yd2FyZExpc3QgPSBkZWxheSA8PSAxID8gTG9ja0JhY2tG
b3J3YXJkTGlzdDo6WWVzIDogTG9ja0JhY2tGb3J3YXJkTGlzdDo6Tm87CiAgICAgICAgIHNjaGVk
dWxlKHN0ZDo6bWFrZV91bmlxdWU8U2NoZWR1bGVkUmVkaXJlY3Q+KGluaXRpYXRpbmdEb2N1bWVu
dCwgZGVsYXksIG1fZnJhbWUuZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSwgdXJsLCBMb2Nr
SGlzdG9yeTo6WWVzLCBsb2NrQmFja0ZvcndhcmRMaXN0KSk7CiAgICAgfQogfQpAQCAtMzk4LDcg
KzQwMCw3IEBAIExvY2tCYWNrRm9yd2FyZExpc3QgTmF2aWdhdGlvblNjaGVkdWxlcjo6bXVzdExv
Y2tCYWNrRm9yd2FyZExpc3QoRnJhbWUmIHRhcmdldEZyCiAgICAgcmV0dXJuIExvY2tCYWNrRm9y
d2FyZExpc3Q6Ok5vOwogfQogCi12b2lkIE5hdmlnYXRpb25TY2hlZHVsZXI6OnNjaGVkdWxlTG9j
YXRpb25DaGFuZ2UoRG9jdW1lbnQqIGluaXRpYXRpbmdEb2N1bWVudCwgU2VjdXJpdHlPcmlnaW4q
IHNlY3VyaXR5T3JpZ2luLCBjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwg
TG9ja0hpc3RvcnkgbG9ja0hpc3RvcnksIExvY2tCYWNrRm9yd2FyZExpc3QgbG9ja0JhY2tGb3J3
YXJkTGlzdCkKK3ZvaWQgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2NoZWR1bGVMb2NhdGlvbkNoYW5n
ZShEb2N1bWVudCYgaW5pdGlhdGluZ0RvY3VtZW50LCBTZWN1cml0eU9yaWdpbiogc2VjdXJpdHlP
cmlnaW4sIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBMb2NrSGlzdG9y
eSBsb2NrSGlzdG9yeSwgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0KQog
ewogICAgIGlmICghc2hvdWxkU2NoZWR1bGVOYXZpZ2F0aW9uKHVybCkpCiAgICAgICAgIHJldHVy
bjsKQEAgLTQxMiwxMCArNDE0LDcgQEAgdm9pZCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjpzY2hlZHVs
ZUxvY2F0aW9uQ2hhbmdlKERvY3VtZW50KiBpbml0aWF0aW5nRG9jdW1lbnQsIFMKICAgICAvLyBm
cmFnbWVudCBwYXJ0LCB3ZSBkb24ndCBuZWVkIHRvIHNjaGVkdWxlIHRoZSBsb2NhdGlvbiBjaGFu
Z2UuCiAgICAgaWYgKHVybC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSAmJiBlcXVhbElnbm9yaW5n
RnJhZ21lbnRJZGVudGlmaWVyKG1fZnJhbWUuZG9jdW1lbnQoKS0+dXJsKCksIHVybCkpIHsKICAg
ICAgICAgUmVzb3VyY2VSZXF1ZXN0IHJlc291cmNlUmVxdWVzdChtX2ZyYW1lLmRvY3VtZW50KCkt
PmNvbXBsZXRlVVJMKHVybCksIHJlZmVycmVyLCBVc2VQcm90b2NvbENhY2hlUG9saWN5KTsKLSAg
ICAgICAgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSBzaG91bGRPcGVuRXh0ZXJuYWxVUkxz
UG9saWN5ID0gU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeTo6U2hvdWxkTm90QWxsb3c7Ci0g
ICAgICAgIGlmIChpbml0aWF0aW5nRG9jdW1lbnQpCi0gICAgICAgICAgICBzaG91bGRPcGVuRXh0
ZXJuYWxVUkxzUG9saWN5ID0gaW5pdGlhdGluZ0RvY3VtZW50LT5zaG91bGRPcGVuRXh0ZXJuYWxV
UkxzUG9saWN5VG9Qcm9wYWdhdGUoKTsKLSAgICAgICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFtZVJl
cXVlc3Qoc2VjdXJpdHlPcmlnaW4sIHJlc291cmNlUmVxdWVzdCwgIl9zZWxmIiwgbG9ja0hpc3Rv
cnksIGxvY2tCYWNrRm9yd2FyZExpc3QsIE1heWJlU2VuZFJlZmVycmVyLCBBbGxvd05hdmlnYXRp
b25Ub0ludmFsaWRVUkw6Ok5vLCBOZXdGcmFtZU9wZW5lclBvbGljeTo6QWxsb3csIFJlcGxhY2VE
b2N1bWVudElmSmF2YVNjcmlwdFVSTCwgc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSk7Cisg
ICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVSZXF1ZXN0KHNlY3VyaXR5T3JpZ2luLCByZXNv
dXJjZVJlcXVlc3QsICJfc2VsZiIsIGxvY2tIaXN0b3J5LCBsb2NrQmFja0ZvcndhcmRMaXN0LCBN
YXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpObywgTmV3RnJh
bWVPcGVuZXJQb2xpY3k6OkFsbG93LCBSZXBsYWNlRG9jdW1lbnRJZkphdmFTY3JpcHRVUkwsIGlu
aXRpYXRpbmdEb2N1bWVudC5zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5VG9Qcm9wYWdhdGUo
KSk7CiAgICAgICAgIGxvYWRlci5jaGFuZ2VMb2NhdGlvbihmcmFtZVJlcXVlc3QpOwogICAgICAg
ICByZXR1cm47CiAgICAgfQpAQCAtNDI3LDcgKzQyNiw3IEBAIHZvaWQgTmF2aWdhdGlvblNjaGVk
dWxlcjo6c2NoZWR1bGVMb2NhdGlvbkNoYW5nZShEb2N1bWVudCogaW5pdGlhdGluZ0RvY3VtZW50
LCBTCiAgICAgc2NoZWR1bGUoc3RkOjptYWtlX3VuaXF1ZTxTY2hlZHVsZWRMb2NhdGlvbkNoYW5n
ZT4oaW5pdGlhdGluZ0RvY3VtZW50LCBzZWN1cml0eU9yaWdpbiwgdXJsLCByZWZlcnJlciwgbG9j
a0hpc3RvcnksIGxvY2tCYWNrRm9yd2FyZExpc3QsIGR1cmluZ0xvYWQpKTsKIH0KIAotdm9pZCBO
YXZpZ2F0aW9uU2NoZWR1bGVyOjpzY2hlZHVsZUZvcm1TdWJtaXNzaW9uKFBhc3NSZWZQdHI8Rm9y
bVN1Ym1pc3Npb24+IHN1Ym1pc3Npb24pCit2b2lkIE5hdmlnYXRpb25TY2hlZHVsZXI6OnNjaGVk
dWxlRm9ybVN1Ym1pc3Npb24oUmVmPEZvcm1TdWJtaXNzaW9uPiYmIHN1Ym1pc3Npb24pCiB7CiAg
ICAgQVNTRVJUKG1fZnJhbWUucGFnZSgpKTsKIApAQCAtNDQzLDE0ICs0NDIsMTQgQEAgdm9pZCBO
YXZpZ2F0aW9uU2NoZWR1bGVyOjpzY2hlZHVsZUZvcm1TdWJtaXNzaW9uKFBhc3NSZWZQdHI8Rm9y
bVN1Ym1pc3Npb24+IHN1Ym0KICAgICAvLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTMyMzgzIGZvciB0aGUgb3JpZ2luYWwgbW90aXZhdGlvbiBmb3IgdGhpcy4K
ICAgICBMb2NrQmFja0ZvcndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QgPSBtdXN0TG9ja0Jh
Y2tGb3J3YXJkTGlzdChtX2ZyYW1lKTsKICAgICBpZiAobG9ja0JhY2tGb3J3YXJkTGlzdCA9PSBM
b2NrQmFja0ZvcndhcmRMaXN0OjpObwotICAgICAgICAmJiAoc3VibWlzc2lvbi0+c3RhdGUoKS0+
Zm9ybVN1Ym1pc3Npb25UcmlnZ2VyKCkgPT0gU3VibWl0dGVkQnlKYXZhU2NyaXB0ICYmIG1fZnJh
bWUudHJlZSgpLnBhcmVudCgpICYmICFVc2VyR2VzdHVyZUluZGljYXRvcjo6cHJvY2Vzc2luZ1Vz
ZXJHZXN0dXJlKCkpKSB7CisgICAgICAgICYmIChzdWJtaXNzaW9uLT5zdGF0ZSgpLmZvcm1TdWJt
aXNzaW9uVHJpZ2dlcigpID09IFN1Ym1pdHRlZEJ5SmF2YVNjcmlwdCAmJiBtX2ZyYW1lLnRyZWUo
KS5wYXJlbnQoKSAmJiAhVXNlckdlc3R1cmVJbmRpY2F0b3I6OnByb2Nlc3NpbmdVc2VyR2VzdHVy
ZSgpKSkgewogICAgICAgICBsb2NrQmFja0ZvcndhcmRMaXN0ID0gTG9ja0JhY2tGb3J3YXJkTGlz
dDo6WWVzOwogICAgIH0KICAgICAKLSAgICBzY2hlZHVsZShzdGQ6Om1ha2VfdW5pcXVlPFNjaGVk
dWxlZEZvcm1TdWJtaXNzaW9uPihzdWJtaXNzaW9uLCBsb2NrQmFja0ZvcndhcmRMaXN0LCBkdXJp
bmdMb2FkKSk7CisgICAgc2NoZWR1bGUoc3RkOjptYWtlX3VuaXF1ZTxTY2hlZHVsZWRGb3JtU3Vi
bWlzc2lvbj4oV1RGTW92ZShzdWJtaXNzaW9uKSwgbG9ja0JhY2tGb3J3YXJkTGlzdCwgZHVyaW5n
TG9hZCkpOwogfQogCi12b2lkIE5hdmlnYXRpb25TY2hlZHVsZXI6OnNjaGVkdWxlUmVmcmVzaChE
b2N1bWVudCogaW5pdGlhdGluZ0RvY3VtZW50KQordm9pZCBOYXZpZ2F0aW9uU2NoZWR1bGVyOjpz
Y2hlZHVsZVJlZnJlc2goRG9jdW1lbnQmIGluaXRpYXRpbmdEb2N1bWVudCkKIHsKICAgICBpZiAo
IXNob3VsZFNjaGVkdWxlTmF2aWdhdGlvbigpKQogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5oIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL05hdmlnYXRpb25TY2hlZHVsZXIuaAppbmRleCA0OWM0M2JlMmJiMTVlYmE4
MDU2NTc2NjEyZDE1ZDFhYmNmMzA3NzE3Li4wYWUxNzExNDU4YzM3NDZmNzc4MTZmZWQ5MzY3YmE0
OGJmNjE2ZmQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvblNj
aGVkdWxlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVy
LmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTYgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTcgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICogQ29weXJpZ2h0IChDKSAyMDA4LCAyMDA5
IFRvcmNoIE1vYmlsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuIChodHRwOi8vd3d3LnRvcmNo
bW9iaWxlLmNvbS8pCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDkgQWRhbSBCYXJ0aC4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KICAqCkBAIC02OCwxMCArNjgsMTAgQEAgcHVibGljOgogICAgIGJvb2wgcmVk
aXJlY3RTY2hlZHVsZWREdXJpbmdMb2FkKCk7CiAgICAgYm9vbCBsb2NhdGlvbkNoYW5nZVBlbmRp
bmcoKTsKIAotICAgIHZvaWQgc2NoZWR1bGVSZWRpcmVjdChEb2N1bWVudCogaW5pdGlhdGluZ0Rv
Y3VtZW50LCBkb3VibGUgZGVsYXksIGNvbnN0IFVSTCYpOwotICAgIHZvaWQgc2NoZWR1bGVMb2Nh
dGlvbkNoYW5nZShEb2N1bWVudCogaW5pdGlhdGluZ0RvY3VtZW50LCBTZWN1cml0eU9yaWdpbios
IGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIExvY2tIaXN0b3J5ID0gTG9ja0hp
c3Rvcnk6OlllcywgTG9ja0JhY2tGb3J3YXJkTGlzdCA9IExvY2tCYWNrRm9yd2FyZExpc3Q6Olll
cyk7Ci0gICAgdm9pZCBzY2hlZHVsZUZvcm1TdWJtaXNzaW9uKFBhc3NSZWZQdHI8Rm9ybVN1Ym1p
c3Npb24+KTsKLSAgICB2b2lkIHNjaGVkdWxlUmVmcmVzaChEb2N1bWVudCogaW5pdGlhdGluZ0Rv
Y3VtZW50KTsKKyAgICB2b2lkIHNjaGVkdWxlUmVkaXJlY3QoRG9jdW1lbnQmIGluaXRpYXRpbmdE
b2N1bWVudCwgZG91YmxlIGRlbGF5LCBjb25zdCBVUkwmKTsKKyAgICB2b2lkIHNjaGVkdWxlTG9j
YXRpb25DaGFuZ2UoRG9jdW1lbnQmIGluaXRpYXRpbmdEb2N1bWVudCwgU2VjdXJpdHlPcmlnaW4q
LCBjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBMb2NrSGlzdG9yeSA9IExvY2tI
aXN0b3J5OjpZZXMsIExvY2tCYWNrRm9yd2FyZExpc3QgPSBMb2NrQmFja0ZvcndhcmRMaXN0OjpZ
ZXMpOworICAgIHZvaWQgc2NoZWR1bGVGb3JtU3VibWlzc2lvbihSZWY8Rm9ybVN1Ym1pc3Npb24+
JiYpOworICAgIHZvaWQgc2NoZWR1bGVSZWZyZXNoKERvY3VtZW50JiBpbml0aWF0aW5nRG9jdW1l
bnQpOwogICAgIHZvaWQgc2NoZWR1bGVIaXN0b3J5TmF2aWdhdGlvbihpbnQgc3RlcHMpOwogICAg
IHZvaWQgc2NoZWR1bGVQYWdlQmxvY2soRG9jdW1lbnQmIG9yaWdpbkRvY3VtZW50KTsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5jcHAKaW5kZXggYmI2ZjljYzQ1Nzg2Zjli
MTAwZDc2Njk0YThiMDZhNTg1ZDk0NjFmMy4uY2VjZDE1N2ZmZDkwMWRmN2ZjODhlMzJmZTZhZjU1
Y2JjMDM5NjBmNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9h
ZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwCkBA
IC0xOTEsNyArMTkxLDcgQEAgdm9pZCBSZXNvdXJjZUxvYWRlcjo6c3RhcnQoKQogICAgICAgICBy
ZXR1cm47CiAjZW5kaWYKIAotICAgIGlmIChtX2RvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNh
Y2hlSG9zdCgpLT5tYXliZUxvYWRSZXNvdXJjZSgqdGhpcywgbV9yZXF1ZXN0LCBtX3JlcXVlc3Qu
dXJsKCkpKQorICAgIGlmIChtX2RvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgp
Lm1heWJlTG9hZFJlc291cmNlKCp0aGlzLCBtX3JlcXVlc3QsIG1fcmVxdWVzdC51cmwoKSkpCiAg
ICAgICAgIHJldHVybjsKIAogICAgIGlmIChtX2RlZmVyc0xvYWRpbmcpIHsKQEAgLTYwNyw3ICs2
MDcsNyBAQCBSZXNvdXJjZUVycm9yIFJlc291cmNlTG9hZGVyOjpjYW5ub3RTaG93VVJMRXJyb3Io
KQogCiBSZXNvdXJjZVJlcXVlc3QgUmVzb3VyY2VMb2FkZXI6OndpbGxTZW5kUmVxdWVzdChSZXNv
dXJjZUhhbmRsZSosIFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIFJlc291cmNlUmVzcG9uc2Um
JiByZWRpcmVjdFJlc3BvbnNlKQogewotICAgIGlmIChkb2N1bWVudExvYWRlcigpLT5hcHBsaWNh
dGlvbkNhY2hlSG9zdCgpLT5tYXliZUxvYWRGYWxsYmFja0ZvclJlZGlyZWN0KHRoaXMsIHJlcXVl
c3QsIHJlZGlyZWN0UmVzcG9uc2UpKQorICAgIGlmIChkb2N1bWVudExvYWRlcigpLT5hcHBsaWNh
dGlvbkNhY2hlSG9zdCgpLm1heWJlTG9hZEZhbGxiYWNrRm9yUmVkaXJlY3QodGhpcywgcmVxdWVz
dCwgcmVkaXJlY3RSZXNwb25zZSkpCiAgICAgICAgIHJldHVybiBXVEZNb3ZlKHJlcXVlc3QpOwog
ICAgIHdpbGxTZW5kUmVxdWVzdEludGVybmFsKHJlcXVlc3QsIHJlZGlyZWN0UmVzcG9uc2UpOwog
ICAgIHJldHVybiBXVEZNb3ZlKHJlcXVlc3QpOwpAQCAtNjIwLDcgKzYyMCw3IEBAIHZvaWQgUmVz
b3VyY2VMb2FkZXI6OmRpZFNlbmREYXRhKFJlc291cmNlSGFuZGxlKiwgdW5zaWduZWQgbG9uZyBs
b25nIGJ5dGVzU2VudCwKIAogdm9pZCBSZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNl
KFJlc291cmNlSGFuZGxlKiwgUmVzb3VyY2VSZXNwb25zZSYmIHJlc3BvbnNlKQogewotICAgIGlm
IChkb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5tYXliZUxvYWRGYWxs
YmFja0ZvclJlc3BvbnNlKHRoaXMsIHJlc3BvbnNlKSkKKyAgICBpZiAoZG9jdW1lbnRMb2FkZXIo
KS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS5tYXliZUxvYWRGYWxsYmFja0ZvclJlc3BvbnNlKHRo
aXMsIHJlc3BvbnNlKSkKICAgICAgICAgcmV0dXJuOwogICAgIGRpZFJlY2VpdmVSZXNwb25zZShy
ZXNwb25zZSk7CiB9CkBAIC02NDIsNyArNjQyLDcgQEAgdm9pZCBSZXNvdXJjZUxvYWRlcjo6ZGlk
RmluaXNoTG9hZGluZyhSZXNvdXJjZUhhbmRsZSosIGRvdWJsZSBmaW5pc2hUaW1lKQogCiB2b2lk
IFJlc291cmNlTG9hZGVyOjpkaWRGYWlsKFJlc291cmNlSGFuZGxlKiwgY29uc3QgUmVzb3VyY2VF
cnJvciYgZXJyb3IpCiB7Ci0gICAgaWYgKGRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KCktPm1heWJlTG9hZEZhbGxiYWNrRm9yRXJyb3IodGhpcywgZXJyb3IpKQorICAgIGlm
IChkb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLm1heWJlTG9hZEZhbGxi
YWNrRm9yRXJyb3IodGhpcywgZXJyb3IpKQogICAgICAgICByZXR1cm47CiAgICAgZGlkRmFpbChl
cnJvcik7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3ViZnJhbWVMb2Fk
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YmZyYW1lTG9hZGVyLmNwcAppbmRleCA3
ZmQwNTZkNzFkMWMzNjZiYjkzN2IwMTNhMWFiNGMzMzVmMzk4Y2Q0Li4zMDU5MWJkNmE0M2NiNzY1
MzcxMTg3YzNiMjgyOWI4MGZmZTgxMDk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvU3ViZnJhbWVMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJmcmFt
ZUxvYWRlci5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA2LTIw
MTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA2
LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICogQ29weXJpZ2h0IChDKSAy
MDA4IE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKQogICogQ29w
eXJpZ2h0IChDKSAyMDA4LCAyMDA5IFRvcmNoIE1vYmlsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuIChodHRwOi8vd3d3LnRvcmNobW9iaWxlLmNvbS8pCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDgg
QWxwIFRva2VyIDxhbHBAYXRva2VyLmNvbT4KQEAgLTEwNywyMyArMTA3LDI1IEBAIGJvb2wgU3Vi
ZnJhbWVMb2FkZXI6OnJlc291cmNlV2lsbFVzZVBsdWdpbihjb25zdCBTdHJpbmcmIHVybCwgY29u
c3QgU3RyaW5nJiBtaW1lCiAKIGJvb2wgU3ViZnJhbWVMb2FkZXI6OnBsdWdpbklzTG9hZGFibGUo
Y29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUpCiB7CisgICAgYXV0byogZG9j
dW1lbnQgPSBtX2ZyYW1lLmRvY3VtZW50KCk7CisKICAgICBpZiAoTUlNRVR5cGVSZWdpc3RyeTo6
aXNKYXZhQXBwbGV0TUlNRVR5cGUobWltZVR5cGUpKSB7CiAgICAgICAgIGlmICghbV9mcmFtZS5z
ZXR0aW5ncygpLmlzSmF2YUVuYWJsZWQoKSkKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAg
ICAgICAgaWYgKGRvY3VtZW50KCkgJiYgZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+aXNM
b2NhbCgpICYmICFtX2ZyYW1lLnNldHRpbmdzKCkuaXNKYXZhRW5hYmxlZEZvckxvY2FsRmlsZXMo
KSkKKyAgICAgICAgaWYgKGRvY3VtZW50ICYmIGRvY3VtZW50LT5zZWN1cml0eU9yaWdpbigpLT5p
c0xvY2FsKCkgJiYgIW1fZnJhbWUuc2V0dGluZ3MoKS5pc0phdmFFbmFibGVkRm9yTG9jYWxGaWxl
cygpKQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KIAotICAgIGlmIChkb2N1bWVu
dCgpKSB7Ci0gICAgICAgIGlmIChkb2N1bWVudCgpLT5pc1NhbmRib3hlZChTYW5kYm94UGx1Z2lu
cykpCisgICAgaWYgKGRvY3VtZW50KSB7CisgICAgICAgIGlmIChkb2N1bWVudC0+aXNTYW5kYm94
ZWQoU2FuZGJveFBsdWdpbnMpKQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgICAg
IGlmICghZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuRGlzcGxheSh1cmwpKSB7Cisg
ICAgICAgIGlmICghZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCktPmNhbkRpc3BsYXkodXJsKSkg
ewogICAgICAgICAgICAgRnJhbWVMb2FkZXI6OnJlcG9ydExvY2FsTG9hZEZhaWxlZCgmbV9mcmFt
ZSwgdXJsLnN0cmluZygpKTsKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgfQog
Ci0gICAgICAgIGlmICghbV9mcmFtZS5sb2FkZXIoKS5taXhlZENvbnRlbnRDaGVja2VyKCkuY2Fu
UnVuSW5zZWN1cmVDb250ZW50KGRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCksIHVybCkpCisg
ICAgICAgIGlmICghbV9mcmFtZS5sb2FkZXIoKS5taXhlZENvbnRlbnRDaGVja2VyKCkuY2FuUnVu
SW5zZWN1cmVDb250ZW50KGRvY3VtZW50LT5zZWN1cml0eU9yaWdpbigpLCB1cmwpKQogICAgICAg
ICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KIApAQCAtMjA0LDE4ICsyMDYsMjAgQEAgYm9vbCBT
dWJmcmFtZUxvYWRlcjo6cmVxdWVzdE9iamVjdChIVE1MUGx1Z0luSW1hZ2VFbGVtZW50JiBvd25l
ckVsZW1lbnQsIGNvbnN0IFMKICAgICBpZiAodXJsLmlzRW1wdHkoKSAmJiBtaW1lVHlwZS5pc0Vt
cHR5KCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAorICAgIGF1dG8mIGRvY3VtZW50ID0gb3du
ZXJFbGVtZW50LmRvY3VtZW50KCk7CisKICAgICBVUkwgY29tcGxldGVkVVJMOwogICAgIGlmICgh
dXJsLmlzRW1wdHkoKSkKICAgICAgICAgY29tcGxldGVkVVJMID0gY29tcGxldGVVUkwodXJsKTsK
IAotICAgIGRvY3VtZW50KCktPmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT51cGdyYWRlSW5zZWN1
cmVSZXF1ZXN0SWZOZWVkZWQoY29tcGxldGVkVVJMLCBDb250ZW50U2VjdXJpdHlQb2xpY3k6Oklu
c2VjdXJlUmVxdWVzdFR5cGU6OkxvYWQpOworICAgIGRvY3VtZW50LmNvbnRlbnRTZWN1cml0eVBv
bGljeSgpLT51cGdyYWRlSW5zZWN1cmVSZXF1ZXN0SWZOZWVkZWQoY29tcGxldGVkVVJMLCBDb250
ZW50U2VjdXJpdHlQb2xpY3k6Okluc2VjdXJlUmVxdWVzdFR5cGU6OkxvYWQpOwogCiAgICAgYm9v
bCBoYXNGYWxsYmFja0NvbnRlbnQgPSBpczxIVE1MT2JqZWN0RWxlbWVudD4ob3duZXJFbGVtZW50
KSAmJiBkb3duY2FzdDxIVE1MT2JqZWN0RWxlbWVudD4ob3duZXJFbGVtZW50KS5oYXNGYWxsYmFj
a0NvbnRlbnQoKTsKIAogICAgIGJvb2wgdXNlRmFsbGJhY2s7CiAgICAgaWYgKHNob3VsZFVzZVBs
dWdpbihjb21wbGV0ZWRVUkwsIG1pbWVUeXBlLCBoYXNGYWxsYmFja0NvbnRlbnQsIHVzZUZhbGxi
YWNrKSkgewogICAgICAgICBib29sIHN1Y2Nlc3MgPSByZXF1ZXN0UGx1Z2luKG93bmVyRWxlbWVu
dCwgY29tcGxldGVkVVJMLCBtaW1lVHlwZSwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMsIHVzZUZh
bGxiYWNrKTsKLSAgICAgICAgbG9nUGx1Z2luUmVxdWVzdChkb2N1bWVudCgpLT5wYWdlKCksIG1p
bWVUeXBlLCBjb21wbGV0ZWRVUkwsIHN1Y2Nlc3MpOworICAgICAgICBsb2dQbHVnaW5SZXF1ZXN0
KGRvY3VtZW50LnBhZ2UoKSwgbWltZVR5cGUsIGNvbXBsZXRlZFVSTCwgc3VjY2Vzcyk7CiAgICAg
ICAgIHJldHVybiBzdWNjZXNzOwogICAgIH0KIApAQCAtMjI1LDcgKzIyOSw3IEBAIGJvb2wgU3Vi
ZnJhbWVMb2FkZXI6OnJlcXVlc3RPYmplY3QoSFRNTFBsdWdJbkltYWdlRWxlbWVudCYgb3duZXJF
bGVtZW50LCBjb25zdCBTCiAgICAgcmV0dXJuIGxvYWRPclJlZGlyZWN0U3ViZnJhbWUob3duZXJF
bGVtZW50LCBjb21wbGV0ZWRVUkwsIGZyYW1lTmFtZSwgTG9ja0hpc3Rvcnk6OlllcywgTG9ja0Jh
Y2tGb3J3YXJkTGlzdDo6WWVzKTsKIH0KIAotUGFzc1JlZlB0cjxXaWRnZXQ+IFN1YmZyYW1lTG9h
ZGVyOjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmIHNpemUsIEhUTUxBcHBs
ZXRFbGVtZW50JiBlbGVtZW50LCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29u
c3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKQorUmVmUHRyPFdpZGdldD4gU3ViZnJhbWVM
b2FkZXI6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYgc2l6ZSwgSFRNTEFw
cGxldEVsZW1lbnQmIGVsZW1lbnQsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBj
b25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpCiB7CiAgICAgU3RyaW5nIGJhc2VVUkxT
dHJpbmc7CiAgICAgU3RyaW5nIGNvZGVCYXNlVVJMU3RyaW5nOwpAQCAtMjU0LDE0ICsyNTgsMTQg
QEAgUGFzc1JlZlB0cjxXaWRnZXQ+IFN1YmZyYW1lTG9hZGVyOjpjcmVhdGVKYXZhQXBwbGV0V2lk
Z2V0KGNvbnN0IEludFNpemUmIHNpemUsIEgKICAgICB9CiAKICAgICBpZiAoYmFzZVVSTFN0cmlu
Zy5pc0VtcHR5KCkpCi0gICAgICAgIGJhc2VVUkxTdHJpbmcgPSBtX2ZyYW1lLmRvY3VtZW50KCkt
PmJhc2VVUkwoKS5zdHJpbmcoKTsKKyAgICAgICAgYmFzZVVSTFN0cmluZyA9IGVsZW1lbnQuZG9j
dW1lbnQoKS5iYXNlVVJMKCkuc3RyaW5nKCk7CiAgICAgVVJMIGJhc2VVUkwgPSBjb21wbGV0ZVVS
TChiYXNlVVJMU3RyaW5nKTsKIAogICAgIFJlZlB0cjxXaWRnZXQ+IHdpZGdldDsKICAgICBpZiAo
YWxsb3dQbHVnaW5zKCkpCi0gICAgICAgIHdpZGdldCA9IG1fZnJhbWUubG9hZGVyKCkuY2xpZW50
KCkuY3JlYXRlSmF2YUFwcGxldFdpZGdldChzaXplLCAmZWxlbWVudCwgYmFzZVVSTCwgcGFyYW1O
YW1lcywgcGFyYW1WYWx1ZXMpOworICAgICAgICB3aWRnZXQgPSBtX2ZyYW1lLmxvYWRlcigpLmNs
aWVudCgpLmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoc2l6ZSwgZWxlbWVudCwgYmFzZVVSTCwgcGFy
YW1OYW1lcywgcGFyYW1WYWx1ZXMpOwogCi0gICAgbG9nUGx1Z2luUmVxdWVzdChkb2N1bWVudCgp
LT5wYWdlKCksIGVsZW1lbnQuc2VydmljZVR5cGUoKSwgU3RyaW5nKCksIHdpZGdldCk7CisgICAg
bG9nUGx1Z2luUmVxdWVzdChtX2ZyYW1lLnBhZ2UoKSwgZWxlbWVudC5zZXJ2aWNlVHlwZSgpLCBT
dHJpbmcoKSwgd2lkZ2V0KTsKIAogICAgIGlmICghd2lkZ2V0KSB7CiAgICAgICAgIFJlbmRlckVt
YmVkZGVkT2JqZWN0KiByZW5kZXJlciA9IGVsZW1lbnQucmVuZGVyRW1iZWRkZWRPYmplY3QoKTsK
QEAgLTI3NSwxNiArMjc5LDE4IEBAIFBhc3NSZWZQdHI8V2lkZ2V0PiBTdWJmcmFtZUxvYWRlcjo6
Y3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXplJiBzaXplLCBICiAgICAgcmV0dXJu
IHdpZGdldDsKIH0KIAotRnJhbWUqIFN1YmZyYW1lTG9hZGVyOjpsb2FkT3JSZWRpcmVjdFN1YmZy
YW1lKEhUTUxGcmFtZU93bmVyRWxlbWVudCYgb3duZXJFbGVtZW50LCBjb25zdCBVUkwmIHJlcXVl
c3RVcmwsIGNvbnN0IEF0b21pY1N0cmluZyYgZnJhbWVOYW1lLCBMb2NrSGlzdG9yeSBsb2NrSGlz
dG9yeSwgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRMaXN0KQorRnJhbWUqIFN1
YmZyYW1lTG9hZGVyOjpsb2FkT3JSZWRpcmVjdFN1YmZyYW1lKEhUTUxGcmFtZU93bmVyRWxlbWVu
dCYgb3duZXJFbGVtZW50LCBjb25zdCBVUkwmIHJlcXVlc3RVUkwsIGNvbnN0IEF0b21pY1N0cmlu
ZyYgZnJhbWVOYW1lLCBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSwgTG9ja0JhY2tGb3J3YXJkTGlz
dCBsb2NrQmFja0ZvcndhcmRMaXN0KQogewotICAgIFVSTCB1cmwgPSByZXF1ZXN0VXJsOwotICAg
IG93bmVyRWxlbWVudC5kb2N1bWVudCgpLmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT51cGdyYWRl
SW5zZWN1cmVSZXF1ZXN0SWZOZWVkZWQodXJsLCBDb250ZW50U2VjdXJpdHlQb2xpY3k6Okluc2Vj
dXJlUmVxdWVzdFR5cGU6OkxvYWQpOworICAgIGF1dG8mIGluaXRpYXRpbmdEb2N1bWVudCA9IG93
bmVyRWxlbWVudC5kb2N1bWVudCgpOworCisgICAgVVJMIHVwZ3JhZGVkUmVxdWVzdFVSTCA9IHJl
cXVlc3RVUkw7CisgICAgaW5pdGlhdGluZ0RvY3VtZW50LmNvbnRlbnRTZWN1cml0eVBvbGljeSgp
LT51cGdyYWRlSW5zZWN1cmVSZXF1ZXN0SWZOZWVkZWQodXBncmFkZWRSZXF1ZXN0VVJMLCBDb250
ZW50U2VjdXJpdHlQb2xpY3k6Okluc2VjdXJlUmVxdWVzdFR5cGU6OkxvYWQpOwogCi0gICAgRnJh
bWUqIGZyYW1lID0gb3duZXJFbGVtZW50LmNvbnRlbnRGcmFtZSgpOworICAgIGF1dG8qIGZyYW1l
ID0gb3duZXJFbGVtZW50LmNvbnRlbnRGcmFtZSgpOwogICAgIGlmIChmcmFtZSkKLSAgICAgICAg
ZnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKG1fZnJh
bWUuZG9jdW1lbnQoKSwgbV9mcmFtZS5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLCB1cmws
IG1fZnJhbWUubG9hZGVyKCkub3V0Z29pbmdSZWZlcnJlcigpLCBsb2NrSGlzdG9yeSwgbG9ja0Jh
Y2tGb3J3YXJkTGlzdCk7CisgICAgICAgIGZyYW1lLT5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2No
ZWR1bGVMb2NhdGlvbkNoYW5nZShpbml0aWF0aW5nRG9jdW1lbnQsIGluaXRpYXRpbmdEb2N1bWVu
dC5zZWN1cml0eU9yaWdpbigpLCB1cGdyYWRlZFJlcXVlc3RVUkwsIG1fZnJhbWUubG9hZGVyKCku
b3V0Z29pbmdSZWZlcnJlcigpLCBsb2NrSGlzdG9yeSwgbG9ja0JhY2tGb3J3YXJkTGlzdCk7CiAg
ICAgZWxzZQotICAgICAgICBmcmFtZSA9IGxvYWRTdWJmcmFtZShvd25lckVsZW1lbnQsIHVybCwg
ZnJhbWVOYW1lLCBtX2ZyYW1lLmxvYWRlcigpLm91dGdvaW5nUmVmZXJyZXIoKSk7CisgICAgICAg
IGZyYW1lID0gbG9hZFN1YmZyYW1lKG93bmVyRWxlbWVudCwgdXBncmFkZWRSZXF1ZXN0VVJMLCBm
cmFtZU5hbWUsIG1fZnJhbWUubG9hZGVyKCkub3V0Z29pbmdSZWZlcnJlcigpKTsKIAogICAgIGlm
ICghZnJhbWUpCiAgICAgICAgIHJldHVybiBudWxscHRyOwpAQCAtMzAxLDEzICszMDcsMTUgQEAg
RnJhbWUqIFN1YmZyYW1lTG9hZGVyOjpsb2FkU3ViZnJhbWUoSFRNTEZyYW1lT3duZXJFbGVtZW50
JiBvd25lckVsZW1lbnQsIGNvbnN0IFUKICAgICBpbnQgbWFyZ2luV2lkdGggPSAtMTsKICAgICBp
bnQgbWFyZ2luSGVpZ2h0ID0gLTE7CiAgICAgaWYgKGlzPEhUTUxGcmFtZUVsZW1lbnRCYXNlPihv
d25lckVsZW1lbnQpKSB7Ci0gICAgICAgIEhUTUxGcmFtZUVsZW1lbnRCYXNlJiBmcmFtZUVsZW1l
bnRCYXNlID0gZG93bmNhc3Q8SFRNTEZyYW1lRWxlbWVudEJhc2U+KG93bmVyRWxlbWVudCk7Cisg
ICAgICAgIGF1dG8mIGZyYW1lRWxlbWVudEJhc2UgPSBkb3duY2FzdDxIVE1MRnJhbWVFbGVtZW50
QmFzZT4ob3duZXJFbGVtZW50KTsKICAgICAgICAgYWxsb3dzU2Nyb2xsaW5nID0gZnJhbWVFbGVt
ZW50QmFzZS5zY3JvbGxpbmdNb2RlKCkgIT0gU2Nyb2xsYmFyQWx3YXlzT2ZmOwogICAgICAgICBt
YXJnaW5XaWR0aCA9IGZyYW1lRWxlbWVudEJhc2UubWFyZ2luV2lkdGgoKTsKICAgICAgICAgbWFy
Z2luSGVpZ2h0ID0gZnJhbWVFbGVtZW50QmFzZS5tYXJnaW5IZWlnaHQoKTsKICAgICB9CiAKLSAg
ICBpZiAoIW93bmVyRWxlbWVudC5kb2N1bWVudCgpLnNlY3VyaXR5T3JpZ2luKCktPmNhbkRpc3Bs
YXkodXJsKSkgeworICAgIGF1dG8gZG9jdW1lbnQgPSBtYWtlUmVmKG93bmVyRWxlbWVudC5kb2N1
bWVudCgpKTsKKworICAgIGlmICghZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCktPmNhbkRpc3Bs
YXkodXJsKSkgewogICAgICAgICBGcmFtZUxvYWRlcjo6cmVwb3J0TG9jYWxMb2FkRmFpbGVkKCZt
X2ZyYW1lLCB1cmwuc3RyaW5nKCkpOwogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICB9CkBA
IC0zMTUsMjAgKzMyMywyMCBAQCBGcmFtZSogU3ViZnJhbWVMb2FkZXI6OmxvYWRTdWJmcmFtZShI
VE1MRnJhbWVPd25lckVsZW1lbnQmIG93bmVyRWxlbWVudCwgY29uc3QgVQogICAgIGlmICghU3Vi
ZnJhbWVMb2FkaW5nRGlzYWJsZXI6OmNhbkxvYWRGcmFtZShvd25lckVsZW1lbnQpKQogICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKIAotICAgIFN0cmluZyByZWZlcnJlclRvVXNlID0gU2VjdXJpdHlQ
b2xpY3k6OmdlbmVyYXRlUmVmZXJyZXJIZWFkZXIob3duZXJFbGVtZW50LmRvY3VtZW50KCkucmVm
ZXJyZXJQb2xpY3koKSwgdXJsLCByZWZlcnJlcik7CisgICAgU3RyaW5nIHJlZmVycmVyVG9Vc2Ug
PSBTZWN1cml0eVBvbGljeTo6Z2VuZXJhdGVSZWZlcnJlckhlYWRlcihkb2N1bWVudC0+cmVmZXJy
ZXJQb2xpY3koKSwgdXJsLCByZWZlcnJlcik7CiAKICAgICAvLyBQcmV2ZW50IGluaXRpYWwgZW1w
dHkgZG9jdW1lbnQgbG9hZCBmcm9tIHRyaWdnZXJpbmcgbG9hZCBldmVudHMuCi0gICAgbV9mcmFt
ZS5kb2N1bWVudCgpLT5pbmNyZW1lbnRMb2FkRXZlbnREZWxheUNvdW50KCk7CisgICAgZG9jdW1l
bnQtPmluY3JlbWVudExvYWRFdmVudERlbGF5Q291bnQoKTsKIAotICAgIFJlZlB0cjxGcmFtZT4g
ZnJhbWUgPSBtX2ZyYW1lLmxvYWRlcigpLmNsaWVudCgpLmNyZWF0ZUZyYW1lKHVybCwgbmFtZSwg
Jm93bmVyRWxlbWVudCwgcmVmZXJyZXJUb1VzZSwgYWxsb3dzU2Nyb2xsaW5nLCBtYXJnaW5XaWR0
aCwgbWFyZ2luSGVpZ2h0KTsKKyAgICBhdXRvIGZyYW1lID0gbV9mcmFtZS5sb2FkZXIoKS5jbGll
bnQoKS5jcmVhdGVGcmFtZSh1cmwsIG5hbWUsIG93bmVyRWxlbWVudCwgcmVmZXJyZXJUb1VzZSwg
YWxsb3dzU2Nyb2xsaW5nLCBtYXJnaW5XaWR0aCwgbWFyZ2luSGVpZ2h0KTsKIAotICAgIG1fZnJh
bWUuZG9jdW1lbnQoKS0+ZGVjcmVtZW50TG9hZEV2ZW50RGVsYXlDb3VudCgpOworICAgIGRvY3Vt
ZW50LT5kZWNyZW1lbnRMb2FkRXZlbnREZWxheUNvdW50KCk7CiAKICAgICBpZiAoIWZyYW1lKSAg
ewogICAgICAgICBtX2ZyYW1lLmxvYWRlcigpLmNoZWNrQ2FsbEltcGxpY2l0Q2xvc2UoKTsKICAg
ICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQotICAgIAorCiAgICAgLy8gQWxsIG5ldyBmcmFt
ZXMgd2lsbCBoYXZlIG1faXNDb21wbGV0ZSBzZXQgdG8gdHJ1ZSBhdCB0aGlzIHBvaW50IGR1ZSB0
byBzeW5jaHJvbm91c2x5IGxvYWRpbmcKICAgICAvLyBhbiBlbXB0eSBkb2N1bWVudCBpbiBGcmFt
ZUxvYWRlcjo6aW5pdCgpLiBCdXQgbWFueSBmcmFtZXMgd2lsbCBub3cgYmUgc3RhcnRpbmcgYW4K
ICAgICAvLyBhc3luY2hyb25vdXMgbG9hZCBvZiB1cmwsIHNvIHdlIHNldCBtX2lzQ29tcGxldGUg
dG8gZmFsc2UgYW5kIHRoZW4gY2hlY2sgaWYgdGhlIGxvYWQgaXMKQEAgLTMzOCwxMiArMzQ2LDEy
IEBAIEZyYW1lKiBTdWJmcmFtZUxvYWRlcjo6bG9hZFN1YmZyYW1lKEhUTUxGcmFtZU93bmVyRWxl
bWVudCYgb3duZXJFbGVtZW50LCBjb25zdCBVCiAgICAgZnJhbWUtPmxvYWRlcigpLnN0YXJ0ZWQo
KTsKICAgIAogICAgIGF1dG8qIHJlbmRlcmVyID0gb3duZXJFbGVtZW50LnJlbmRlcmVyKCk7Ci0g
ICAgRnJhbWVWaWV3KiB2aWV3ID0gZnJhbWUtPnZpZXcoKTsKKyAgICBhdXRvKiB2aWV3ID0gZnJh
bWUtPnZpZXcoKTsKICAgICBpZiAoaXM8UmVuZGVyV2lkZ2V0PihyZW5kZXJlcikgJiYgdmlldykK
ICAgICAgICAgZG93bmNhc3Q8UmVuZGVyV2lkZ2V0PigqcmVuZGVyZXIpLnNldFdpZGdldCh2aWV3
KTsKLSAgICAKKwogICAgIG1fZnJhbWUubG9hZGVyKCkuY2hlY2tDYWxsSW1wbGljaXRDbG9zZSgp
OwotICAgIAorCiAgICAgLy8gU29tZSBsb2FkcyBhcmUgcGVyZm9ybWVkIHN5bmNocm9ub3VzbHkg
KGUuZy4sIGFib3V0OmJsYW5rIGFuZCBsb2FkcwogICAgIC8vIGNhbmNlbGxlZCBieSByZXR1cm5p
bmcgYSBudWxsIFJlc291cmNlUmVxdWVzdCBmcm9tIHJlcXVlc3RGcm9tRGVsZWdhdGUpLgogICAg
IC8vIEluIHRoZXNlIGNhc2VzLCB0aGUgc3luY2hyb25vdXMgbG9hZCB3b3VsZCBoYXZlIGZpbmlz
aGVkCkBAIC0zNzksMTcgKzM4NywxNCBAQCBib29sIFN1YmZyYW1lTG9hZGVyOjpzaG91bGRVc2VQ
bHVnaW4oY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUsIGJvbwogICAgIHJl
dHVybiBvYmplY3RUeXBlID09IE9iamVjdENvbnRlbnRUeXBlOjpOb25lIHx8IG9iamVjdFR5cGUg
PT0gT2JqZWN0Q29udGVudFR5cGU6OlBsdWdJbjsKIH0KIAotRG9jdW1lbnQqIFN1YmZyYW1lTG9h
ZGVyOjpkb2N1bWVudCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fZnJhbWUuZG9jdW1lbnQoKTsK
LX0KLQogYm9vbCBTdWJmcmFtZUxvYWRlcjo6bG9hZFBsdWdpbihIVE1MUGx1Z0luSW1hZ2VFbGVt
ZW50JiBwbHVnaW5FbGVtZW50LCBjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiBtaW1lVHlw
ZSwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+
JiBwYXJhbVZhbHVlcywgYm9vbCB1c2VGYWxsYmFjaykKIHsKICAgICBpZiAodXNlRmFsbGJhY2sp
CiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIFJlbmRlckVtYmVkZGVkT2JqZWN0KiByZW5k
ZXJlciA9IHBsdWdpbkVsZW1lbnQucmVuZGVyRW1iZWRkZWRPYmplY3QoKTsKKyAgICBhdXRvJiBk
b2N1bWVudCA9IHBsdWdpbkVsZW1lbnQuZG9jdW1lbnQoKTsKKyAgICBhdXRvKiByZW5kZXJlciA9
IHBsdWdpbkVsZW1lbnQucmVuZGVyRW1iZWRkZWRPYmplY3QoKTsKKwogICAgIC8vIEZJWE1FOiBU
aGlzIGNvZGUgc2hvdWxkIG5vdCBkZXBlbmQgb24gcmVuZGVyZXIhCiAgICAgaWYgKCFyZW5kZXJl
cikKICAgICAgICAgcmV0dXJuIGZhbHNlOwpAQCAtMzk3LDE3ICs0MDIsMTkgQEAgYm9vbCBTdWJm
cmFtZUxvYWRlcjo6bG9hZFBsdWdpbihIVE1MUGx1Z0luSW1hZ2VFbGVtZW50JiBwbHVnaW5FbGVt
ZW50LCBjb25zdCBVUkwKICAgICBwbHVnaW5FbGVtZW50LnN1YmZyYW1lTG9hZGVyV2lsbENyZWF0
ZVBsdWdJbih1cmwpOwogCiAgICAgSW50U2l6ZSBjb250ZW50U2l6ZSA9IHJvdW5kZWRJbnRTaXpl
KExheW91dFNpemUocmVuZGVyZXItPmNvbnRlbnRXaWR0aCgpLCByZW5kZXJlci0+Y29udGVudEhl
aWdodCgpKSk7Ci0gICAgYm9vbCBsb2FkTWFudWFsbHkgPSBpczxQbHVnaW5Eb2N1bWVudD4oKmRv
Y3VtZW50KCkpICYmICFtX2NvbnRhaW5zUGx1Z2lucyAmJiBkb3duY2FzdDxQbHVnaW5Eb2N1bWVu
dD4oKmRvY3VtZW50KCkpLnNob3VsZExvYWRQbHVnaW5NYW51YWxseSgpOworICAgIGJvb2wgbG9h
ZE1hbnVhbGx5ID0gaXM8UGx1Z2luRG9jdW1lbnQ+KGRvY3VtZW50KSAmJiAhbV9jb250YWluc1Bs
dWdpbnMgJiYgZG93bmNhc3Q8UGx1Z2luRG9jdW1lbnQ+KGRvY3VtZW50KS5zaG91bGRMb2FkUGx1
Z2luTWFudWFsbHkoKTsKIAogI2lmIFBMQVRGT1JNKElPUykKICAgICAvLyBPbiBpT1MsIHdlIG9u
bHkgdGVsbCB0aGUgcGx1Z2luIHRvIGJlIGluIGZ1bGwgcGFnZSBtb2RlIGlmIHRoZSBjb250YWlu
aW5nIHBsdWdpbiBkb2N1bWVudCBpcyB0aGUgdG9wIGxldmVsIGRvY3VtZW50LgotICAgIGlmIChk
b2N1bWVudCgpLT5vd25lckVsZW1lbnQoKSkKKyAgICBpZiAoZG9jdW1lbnQub3duZXJFbGVtZW50
KCkpCiAgICAgICAgIGxvYWRNYW51YWxseSA9IGZhbHNlOwogI2VuZGlmCiAKLSAgICBXZWFrUHRy
PFJlbmRlcldpZGdldD4gd2Vha1JlbmRlcmVyID0gcmVuZGVyZXItPmNyZWF0ZVdlYWtQdHIoKTsK
LSAgICAvLyBjcmVhdGVQbHVnaW4gKm1heSogY2F1c2UgdGhpcyByZW5kZXJlciB0byBkaXNhcHBl
YXIgZnJvbSB1bmRlcm5lYXRoLgotICAgIFJlZlB0cjxXaWRnZXQ+IHdpZGdldCA9IG1fZnJhbWUu
bG9hZGVyKCkuY2xpZW50KCkuY3JlYXRlUGx1Z2luKGNvbnRlbnRTaXplLCAmcGx1Z2luRWxlbWVu
dCwgdXJsLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcywgbWltZVR5cGUsIGxvYWRNYW51YWxseSk7
CisgICAgYXV0byB3ZWFrUmVuZGVyZXIgPSByZW5kZXJlci0+Y3JlYXRlV2Vha1B0cigpOworCisg
ICAgYXV0byB3aWRnZXQgPSBtX2ZyYW1lLmxvYWRlcigpLmNsaWVudCgpLmNyZWF0ZVBsdWdpbihj
b250ZW50U2l6ZSwgcGx1Z2luRWxlbWVudCwgdXJsLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcywg
bWltZVR5cGUsIGxvYWRNYW51YWxseSk7CisKKyAgICAvLyBUaGUgY2FsbCB0byBjcmVhdGVQbHVn
aW4gKm1heSogY2F1c2UgdGhpcyByZW5kZXJlciB0byBkaXNhcHBlYXIgZnJvbSB1bmRlcm5lYXRo
LgogICAgIGlmICghd2Vha1JlbmRlcmVyKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKQEAgLTQz
MSw5ICs0MzgsNyBAQCBVUkwgU3ViZnJhbWVMb2FkZXI6OmNvbXBsZXRlVVJMKGNvbnN0IFN0cmlu
ZyYgdXJsKSBjb25zdAogCiBib29sIFN1YmZyYW1lTG9hZGVyOjpzaG91bGRDb252ZXJ0SW52YWxp
ZFVSTHNUb0JsYW5rKCkgY29uc3QKIHsKLSAgICBpZiAoU2V0dGluZ3MqIHNldHRpbmdzID0gZG9j
dW1lbnQoKSA/IGRvY3VtZW50KCktPnNldHRpbmdzKCkgOiBudWxscHRyKQotICAgICAgICByZXR1
cm4gc2V0dGluZ3MtPnNob3VsZENvbnZlcnRJbnZhbGlkVVJMc1RvQmxhbmsoKTsKLSAgICByZXR1
cm4gdHJ1ZTsKKyAgICByZXR1cm4gbV9mcmFtZS5zZXR0aW5ncygpLnNob3VsZENvbnZlcnRJbnZh
bGlkVVJMc1RvQmxhbmsoKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YmZyYW1lTG9hZGVyLmggYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvU3ViZnJhbWVMb2FkZXIuaAppbmRleCA5NTEzOTc0YjgxNzA1YWVjNjVkMTU1MDIz
MzkzNWQ0YTU0MjNiNzg1Li4xMmJmNzcxN2U3NDMyMzVjY2M3ZGE3ZGNjYzMzN2Q0MjY5MmFhOTYx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3ViZnJhbWVMb2FkZXIuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3ViZnJhbWVMb2FkZXIuaApAQCAtNjEsNyArNjEsNyBA
QCBwdWJsaWM6CiAgICAgYm9vbCByZXF1ZXN0T2JqZWN0KEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQm
LCBjb25zdCBTdHJpbmcmIHVybCwgY29uc3QgQXRvbWljU3RyaW5nJiBmcmFtZU5hbWUsCiAgICAg
ICAgIGNvbnN0IFN0cmluZyYgc2VydmljZVR5cGUsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJh
bU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpOwogCi0gICAgUGFzc1Jl
ZlB0cjxXaWRnZXQ+IGNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYsIEhUTUxB
cHBsZXRFbGVtZW50JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZl
Y3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcyk7CisgICAgUmVmUHRyPFdpZGdldD4gY3JlYXRlSmF2
YUFwcGxldFdpZGdldChjb25zdCBJbnRTaXplJiwgSFRNTEFwcGxldEVsZW1lbnQmLCBjb25zdCBW
ZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFs
dWVzKTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgYWxsb3dQbHVnaW5zKCk7CiAKQEAgLTc4
LDE0ICs3OCwxMiBAQCBwcml2YXRlOgogICAgIGJvb2wgc2hvdWxkVXNlUGx1Z2luKGNvbnN0IFVS
TCYsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUsIGJvb2wgaGFzRmFsbGJhY2ssIGJvb2wmIHVzZUZh
bGxiYWNrKTsKICAgICBib29sIHBsdWdpbklzTG9hZGFibGUoY29uc3QgVVJMJiwgY29uc3QgU3Ry
aW5nJiBtaW1lVHlwZSk7CiAKLSAgICBEb2N1bWVudCogZG9jdW1lbnQoKSBjb25zdDsKKyAgICBV
UkwgY29tcGxldGVVUkwoY29uc3QgU3RyaW5nJikgY29uc3Q7CiAKICAgICBib29sIHNob3VsZENv
bnZlcnRJbnZhbGlkVVJMc1RvQmxhbmsoKSBjb25zdDsKIAogICAgIGJvb2wgbV9jb250YWluc1Bs
dWdpbnM7CiAgICAgRnJhbWUmIG1fZnJhbWU7Ci0KLSAgICBVUkwgY29tcGxldGVVUkwoY29uc3Qg
U3RyaW5nJikgY29uc3Q7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL1N1YnJlc291cmNlTG9hZGVyLmNwcAppbmRleCA2NDI5NDBhMTJlNTUyYjdl
MDk3N2Q5MDBhZDVkNjM3MTUxMmMxMDJiLi5jMTg5ZWI1MTY2NTVkN2ExYWE3YzFlMDAyODE3NTlk
OWI4MmNjYzVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VM
b2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5j
cHAKQEAgLTI1Niw2ICsyNTYsNyBAQCB2b2lkIFN1YnJlc291cmNlTG9hZGVyOjpkaWRTZW5kRGF0
YSh1bnNpZ25lZCBsb25nIGxvbmcgYnl0ZXNTZW50LCB1bnNpZ25lZCBsb25nCiB9CiAKICNpZiBV
U0UoUVVJQ0tfTE9PSykKKwogYm9vbCBTdWJyZXNvdXJjZUxvYWRlcjo6c2hvdWxkQ3JlYXRlUXVp
Y2tMb29rSGFuZGxlRm9yUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2Up
IGNvbnN0CiB7CiAgICAgaWYgKG1fcmVzb3VyY2UtPnR5cGUoKSAhPSBDYWNoZWRSZXNvdXJjZTo6
TWFpblJlc291cmNlKQpAQCAtMjY2LDYgKzI2Nyw3IEBAIGJvb2wgU3VicmVzb3VyY2VMb2FkZXI6
OnNob3VsZENyZWF0ZVF1aWNrTG9va0hhbmRsZUZvclJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVz
CiAKICAgICByZXR1cm4gUXVpY2tMb29rSGFuZGxlOjpzaG91bGRDcmVhdGVGb3JNSU1FVHlwZShy
ZXNwb25zZS5taW1lVHlwZSgpKTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgU3VicmVzb3VyY2VMb2Fk
ZXI6OmRpZFJlY2VpdmVSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNh
Y2hlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hl
LmNwcAppbmRleCBjOTE4ZDhiMTI1ZjBmOWU5YWEwNGI0ODc5YWFiYThjZTMwNjM5YzQ2Li5hOTVl
ZDJjYWM2MWQyMDE3ZTIwYTY3Y2ViZWNlYzAyMjlhMjc2ZjA5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGUuY3BwCkBAIC00MiwxNyAr
NDIsMTMgQEAgc3RhdGljIGlubGluZSBib29sIGZhbGxiYWNrVVJMTG9uZ2VyVGhhbihjb25zdCBz
dGQ6OnBhaXI8VVJMLCBVUkw+JiBsaHMsIGNvbnN0IHMKIH0KIAogQXBwbGljYXRpb25DYWNoZTo6
QXBwbGljYXRpb25DYWNoZSgpCi0gICAgOiBtX2dyb3VwKG51bGxwdHIpCi0gICAgLCBtX21hbmlm
ZXN0KG51bGxwdHIpCi0gICAgLCBtX2VzdGltYXRlZFNpemVJblN0b3JhZ2UoMCkKLSAgICAsIG1f
c3RvcmFnZUlEKDApCiB7CiB9CiAKIEFwcGxpY2F0aW9uQ2FjaGU6On5BcHBsaWNhdGlvbkNhY2hl
KCkKIHsKICAgICBpZiAobV9ncm91cCkKLSAgICAgICAgbV9ncm91cC0+Y2FjaGVEZXN0cm95ZWQo
dGhpcyk7CisgICAgICAgIG1fZ3JvdXAtPmNhY2hlRGVzdHJveWVkKCp0aGlzKTsKIH0KICAgICAK
IHZvaWQgQXBwbGljYXRpb25DYWNoZTo6c2V0R3JvdXAoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBn
cm91cCkKQEAgLTYzLDU3ICs1OSwzOSBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGU6OnNldEdyb3Vw
KEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXApCiAKIGJvb2wgQXBwbGljYXRpb25DYWNoZTo6
aXNDb21wbGV0ZSgpCiB7Ci0gICAgcmV0dXJuIG1fZ3JvdXAgJiYgbV9ncm91cC0+Y2FjaGVJc0Nv
bXBsZXRlKHRoaXMpOworICAgIHJldHVybiBtX2dyb3VwICYmIG1fZ3JvdXAtPmNhY2hlSXNDb21w
bGV0ZSgqdGhpcyk7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZTo6c2V0TWFuaWZlc3RSZXNv
dXJjZShQYXNzUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4gbWFuaWZlc3QpCit2b2lk
IEFwcGxpY2F0aW9uQ2FjaGU6OnNldE1hbmlmZXN0UmVzb3VyY2UoUmVmPEFwcGxpY2F0aW9uQ2Fj
aGVSZXNvdXJjZT4mJiBtYW5pZmVzdCkKIHsKLSAgICBBU1NFUlQobWFuaWZlc3QpOwogICAgIEFT
U0VSVCghbV9tYW5pZmVzdCk7CiAgICAgQVNTRVJUKG1hbmlmZXN0LT50eXBlKCkgJiBBcHBsaWNh
dGlvbkNhY2hlUmVzb3VyY2U6Ok1hbmlmZXN0KTsKLSAgICAKLSAgICBtX21hbmlmZXN0ID0gbWFu
aWZlc3QuZ2V0KCk7Ci0gICAgCi0gICAgYWRkUmVzb3VyY2UobWFuaWZlc3QpOworCisgICAgbV9t
YW5pZmVzdCA9IG1hbmlmZXN0LnB0cigpOworCisgICAgYWRkUmVzb3VyY2UoV1RGTW92ZShtYW5p
ZmVzdCkpOwogfQogICAgIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlOjphZGRSZXNvdXJjZShQYXNz
UmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4gcmVzb3VyY2UpCit2b2lkIEFwcGxpY2F0
aW9uQ2FjaGU6OmFkZFJlc291cmNlKFJlZjxBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+JiYgcmVz
b3VyY2UpCiB7Ci0gICAgQVNTRVJUKHJlc291cmNlKTsKLSAgICAKLSAgICBjb25zdCBTdHJpbmcm
IHVybCA9IHJlc291cmNlLT51cmwoKTsKLSAgICAKKyAgICBhdXRvJiB1cmwgPSByZXNvdXJjZS0+
dXJsKCk7CisKKyAgICBBU1NFUlQoIVVSTChQYXJzZWRVUkxTdHJpbmcsIHVybCkuaGFzRnJhZ21l
bnRJZGVudGlmaWVyKCkpOwogICAgIEFTU0VSVCghbV9yZXNvdXJjZXMuY29udGFpbnModXJsKSk7
Ci0gICAgCisKICAgICBpZiAobV9zdG9yYWdlSUQpIHsKICAgICAgICAgQVNTRVJUKCFyZXNvdXJj
ZS0+c3RvcmFnZUlEKCkpOwogICAgICAgICBBU1NFUlQocmVzb3VyY2UtPnR5cGUoKSAmIEFwcGxp
Y2F0aW9uQ2FjaGVSZXNvdXJjZTo6TWFzdGVyKTsKLSAgICAgICAgCisKICAgICAgICAgLy8gQWRk
IHRoZSByZXNvdXJjZSB0byB0aGUgc3RvcmFnZS4KLSAgICAgICAgbV9ncm91cC0+c3RvcmFnZSgp
LnN0b3JlKHJlc291cmNlLmdldCgpLCB0aGlzKTsKKyAgICAgICAgbV9ncm91cC0+c3RvcmFnZSgp
LnN0b3JlKHJlc291cmNlLnB0cigpLCB0aGlzKTsKICAgICB9CiAKICAgICBtX2VzdGltYXRlZFNp
emVJblN0b3JhZ2UgKz0gcmVzb3VyY2UtPmVzdGltYXRlZFNpemVJblN0b3JhZ2UoKTsKIAotICAg
IG1fcmVzb3VyY2VzLnNldCh1cmwsIHJlc291cmNlKTsKKyAgICBtX3Jlc291cmNlcy5zZXQodXJs
LCBXVEZNb3ZlKHJlc291cmNlKSk7CiB9CiAKLXVuc2lnbmVkIEFwcGxpY2F0aW9uQ2FjaGU6OnJl
bW92ZVJlc291cmNlKGNvbnN0IFN0cmluZyYgdXJsKQotewotICAgIEhhc2hNYXA8U3RyaW5nLCBS
ZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPj46Oml0ZXJhdG9yIGl0ID0gbV9yZXNvdXJj
ZXMuZmluZCh1cmwpOwotICAgIGlmIChpdCA9PSBtX3Jlc291cmNlcy5lbmQoKSkKLSAgICAgICAg
cmV0dXJuIDA7Ci0KLSAgICAvLyBUaGUgcmVzb3VyY2UgZXhpc3RzLCBnZXQgaXRzIHR5cGUgc28g
d2UgY2FuIHJldHVybiBpdC4KLSAgICB1bnNpZ25lZCB0eXBlID0gaXQtPnZhbHVlLT50eXBlKCk7
Ci0KLSAgICBtX2VzdGltYXRlZFNpemVJblN0b3JhZ2UgLT0gaXQtPnZhbHVlLT5lc3RpbWF0ZWRT
aXplSW5TdG9yYWdlKCk7Ci0KLSAgICBtX3Jlc291cmNlcy5yZW1vdmUoaXQpOwotCi0gICAgcmV0
dXJuIHR5cGU7Ci19ICAgIAotICAgIAogQXBwbGljYXRpb25DYWNoZVJlc291cmNlKiBBcHBsaWNh
dGlvbkNhY2hlOjpyZXNvdXJjZUZvclVSTChjb25zdCBTdHJpbmcmIHVybCkKIHsKICAgICBBU1NF
UlQoIVVSTChQYXJzZWRVUkxTdHJpbmcsIHVybCkuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkpOwpA
QCAtMTMyLDkgKzExMCw3IEBAIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSogQXBwbGljYXRpb25D
YWNoZTo6cmVzb3VyY2VGb3JSZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVxCiAgICAgICAgIHJldHVy
biBudWxscHRyOwogCiAgICAgVVJMIHVybChyZXF1ZXN0LnVybCgpKTsKLSAgICBpZiAodXJsLmhh
c0ZyYWdtZW50SWRlbnRpZmllcigpKQotICAgICAgICB1cmwucmVtb3ZlRnJhZ21lbnRJZGVudGlm
aWVyKCk7Ci0KKyAgICB1cmwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CiAgICAgcmV0dXJu
IHJlc291cmNlRm9yVVJMKHVybCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
YXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZS5oCmluZGV4IGI2YWU0YWUzZjk3N2NhNWQzMjkxYWIz
NmQ1NzRmNGYyMjZjYjEzNTguLjVkZjVmNjAxN2NlNGMwM2I3ODhiZTk4YmViN2I2ZTE3YmIwNDBi
NmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlv
bkNhY2hlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9u
Q2FjaGUuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDggQXBwbGUg
SW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBw
bGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCkBAIC0yNiwzMiArMjYsMjggQEAKICNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0hh
c2hNYXAuaD4KLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi9SZWZD
b3VudGVkLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nSGFzaC5oPgotI2luY2x1ZGUgPHd0
Zi90ZXh0L1dURlN0cmluZy5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cDsKIGNsYXNzIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTsKLWNsYXNz
IFVSTDsKIGNsYXNzIFJlc291cmNlUmVxdWVzdDsKK2NsYXNzIFVSTDsKIAotdHlwZWRlZiBWZWN0
b3I8c3RkOjpwYWlyPFVSTCwgVVJMPj4gRmFsbGJhY2tVUkxWZWN0b3I7Cit1c2luZyBGYWxsYmFj
a1VSTFZlY3RvciA9IFZlY3RvcjxzdGQ6OnBhaXI8VVJMLCBVUkw+PjsKIAogY2xhc3MgQXBwbGlj
YXRpb25DYWNoZSA6IHB1YmxpYyBSZWZDb3VudGVkPEFwcGxpY2F0aW9uQ2FjaGU+IHsKIHB1Ymxp
YzoKICAgICBzdGF0aWMgUmVmPEFwcGxpY2F0aW9uQ2FjaGU+IGNyZWF0ZSgpIHsgcmV0dXJuIGFk
b3B0UmVmKCpuZXcgQXBwbGljYXRpb25DYWNoZSk7IH0KLSAgICAKKwogICAgIH5BcHBsaWNhdGlv
bkNhY2hlKCk7CiAKLSAgICB2b2lkIGFkZFJlc291cmNlKFBhc3NSZWZQdHI8QXBwbGljYXRpb25D
YWNoZVJlc291cmNlPiByZXNvdXJjZSk7Ci0gICAgdW5zaWduZWQgcmVtb3ZlUmVzb3VyY2UoY29u
c3QgU3RyaW5nJiB1cmwpOwotICAgIAotICAgIHZvaWQgc2V0TWFuaWZlc3RSZXNvdXJjZShQYXNz
UmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4gbWFuaWZlc3QpOworICAgIHZvaWQgYWRk
UmVzb3VyY2UoUmVmPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4mJik7CisKKyAgICB2b2lkIHNl
dE1hbmlmZXN0UmVzb3VyY2UoUmVmPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT4mJik7CiAgICAg
QXBwbGljYXRpb25DYWNoZVJlc291cmNlKiBtYW5pZmVzdFJlc291cmNlKCkgY29uc3QgeyByZXR1
cm4gbV9tYW5pZmVzdDsgfQotICAgIAorCiAgICAgdm9pZCBzZXRHcm91cChBcHBsaWNhdGlvbkNh
Y2hlR3JvdXAqKTsKICAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwKCkgY29uc3QgeyBy
ZXR1cm4gbV9ncm91cDsgfQogCkBAIC02OSwzOSArNjUsMzggQEAgcHVibGljOgogICAgIHZvaWQg
c2V0RmFsbGJhY2tVUkxzKGNvbnN0IEZhbGxiYWNrVVJMVmVjdG9yJik7CiAgICAgY29uc3QgRmFs
bGJhY2tVUkxWZWN0b3ImIGZhbGxiYWNrVVJMcygpIGNvbnN0IHsgcmV0dXJuIG1fZmFsbGJhY2tV
UkxzOyB9CiAgICAgYm9vbCB1cmxNYXRjaGVzRmFsbGJhY2tOYW1lc3BhY2UoY29uc3QgVVJMJiwg
VVJMKiBmYWxsYmFja1VSTCA9IG51bGxwdHIpOwotICAgIAorCiAjaWZuZGVmIE5ERUJVRwogICAg
IHZvaWQgZHVtcCgpOwogI2VuZGlmCiAKLSAgICB0eXBlZGVmIEhhc2hNYXA8U3RyaW5nLCBSZWZQ
dHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPj4gUmVzb3VyY2VNYXA7CisgICAgdXNpbmcgUmVz
b3VyY2VNYXAgPSBIYXNoTWFwPFN0cmluZywgUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJj
ZT4+OwogICAgIGNvbnN0IFJlc291cmNlTWFwJiByZXNvdXJjZXMoKSBjb25zdCB7IHJldHVybiBt
X3Jlc291cmNlczsgfQotICAgIAorCiAgICAgdm9pZCBzZXRTdG9yYWdlSUQodW5zaWduZWQgc3Rv
cmFnZUlEKSB7IG1fc3RvcmFnZUlEID0gc3RvcmFnZUlEOyB9CiAgICAgdW5zaWduZWQgc3RvcmFn
ZUlEKCkgY29uc3QgeyByZXR1cm4gbV9zdG9yYWdlSUQ7IH0KICAgICB2b2lkIGNsZWFyU3RvcmFn
ZUlEKCk7Ci0gICAgCisKICAgICBzdGF0aWMgYm9vbCByZXF1ZXN0SXNIVFRQT3JIVFRQU0dldChj
b25zdCBSZXNvdXJjZVJlcXVlc3QmKTsKIAogICAgIGludDY0X3QgZXN0aW1hdGVkU2l6ZUluU3Rv
cmFnZSgpIGNvbnN0IHsgcmV0dXJuIG1fZXN0aW1hdGVkU2l6ZUluU3RvcmFnZTsgfQogCiBwcml2
YXRlOgogICAgIEFwcGxpY2F0aW9uQ2FjaGUoKTsKLSAgICAKLSAgICBBcHBsaWNhdGlvbkNhY2hl
R3JvdXAqIG1fZ3JvdXA7CisKKyAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIG1fZ3JvdXAgeyBu
dWxscHRyIH07CiAgICAgUmVzb3VyY2VNYXAgbV9yZXNvdXJjZXM7Ci0gICAgQXBwbGljYXRpb25D
YWNoZVJlc291cmNlKiBtX21hbmlmZXN0OworICAgIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSog
bV9tYW5pZmVzdCB7IG51bGxwdHIgfTsKIAotICAgIGJvb2wgbV9hbGxvd0FsbE5ldHdvcmtSZXF1
ZXN0czsKKyAgICBib29sIG1fYWxsb3dBbGxOZXR3b3JrUmVxdWVzdHMgeyBmYWxzZSB9OwogICAg
IFZlY3RvcjxVUkw+IG1fb25saW5lV2hpdGVsaXN0OwogICAgIEZhbGxiYWNrVVJMVmVjdG9yIG1f
ZmFsbGJhY2tVUkxzOwogCiAgICAgLy8gVGhlIHRvdGFsIHNpemUgb2YgdGhlIHJlc291cmNlcyBi
ZWxvbmdpbmcgdG8gdGhpcyBBcHBsaWNhdGlvbiBDYWNoZSBpbnN0YW5jZS4KLSAgICAvLyBUaGlz
IGlzIGFuIGVzdGltYXRpb24gb2YgdGhlIHNpemUgdGhpcyBBcHBsaWNhdGlvbiBDYWNoZSBvY2N1
cGllcyBpbiB0aGUKLSAgICAvLyBkYXRhYmFzZSBmaWxlLgotICAgIGludDY0X3QgbV9lc3RpbWF0
ZWRTaXplSW5TdG9yYWdlOworICAgIC8vIFRoaXMgaXMgYW4gZXN0aW1hdGlvbiBvZiB0aGUgc2l6
ZSB0aGlzIEFwcGxpY2F0aW9uIENhY2hlIG9jY3VwaWVzIGluIHRoZSBkYXRhYmFzZSBmaWxlLgor
ICAgIGludDY0X3QgbV9lc3RpbWF0ZWRTaXplSW5TdG9yYWdlIHsgMCB9OwogCi0gICAgdW5zaWdu
ZWQgbV9zdG9yYWdlSUQ7CisgICAgdW5zaWduZWQgbV9zdG9yYWdlSUQgeyAwIH07CiB9OwogCiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
YXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuY3BwCmluZGV4IDg2ZTlhNWE4ODQ5MDdj
ZGQzZDQ2YWZjY2RlMDNmOGQzZmEwOTg1M2EuLjk4ODFiMjVlNWFjYjBmZTk2NDI1ZjY3YWRiMzQz
MTg0MTQ3YmUwOGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9B
cHBsaWNhdGlvbkNhY2hlR3JvdXAuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBj
YWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuY3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENv
cHlyaWdodCAoQykgMjAwOCwgMjAwOSwgMjAxMCBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2
ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxNyBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVz
ZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTM0LDYgKzM0LDcgQEAK
ICNpbmNsdWRlICJDaHJvbWVDbGllbnQuaCIKICNpbmNsdWRlICJET01BcHBsaWNhdGlvbkNhY2hl
LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnRMb2FkZXIuaCIKKyNpbmNsdWRlICJFdmVudE5hbWVzLmgi
CiAjaW5jbHVkZSAiRnJhbWUuaCIKICNpbmNsdWRlICJGcmFtZUxvYWRlci5oIgogI2luY2x1ZGUg
IkZyYW1lTG9hZGVyQ2xpZW50LmgiCkBAIC01NCwxNyArNTUsNyBAQCBBcHBsaWNhdGlvbkNhY2hl
R3JvdXA6OkFwcGxpY2F0aW9uQ2FjaGVHcm91cChSZWY8QXBwbGljYXRpb25DYWNoZVN0b3JhZ2U+
JiYgc3RvcgogICAgIDogbV9zdG9yYWdlKFdURk1vdmUoc3RvcmFnZSkpCiAgICAgLCBtX21hbmlm
ZXN0VVJMKG1hbmlmZXN0VVJMKQogICAgICwgbV9vcmlnaW4oU2VjdXJpdHlPcmlnaW46OmNyZWF0
ZShtYW5pZmVzdFVSTCkpCi0gICAgLCBtX3VwZGF0ZVN0YXR1cyhJZGxlKQotICAgICwgbV9kb3du
bG9hZGluZ1BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnNDb3VudCgwKQotICAgICwgbV9wcm9n
cmVzc1RvdGFsKDApCi0gICAgLCBtX3Byb2dyZXNzRG9uZSgwKQotICAgICwgbV9mcmFtZShudWxs
cHRyKQotICAgICwgbV9zdG9yYWdlSUQoMCkKLSAgICAsIG1faXNPYnNvbGV0ZShmYWxzZSkKLSAg
ICAsIG1fY29tcGxldGlvblR5cGUoTm9uZSkKLSAgICAsIG1fY2FsbGVkUmVhY2hlZE1heEFwcENh
Y2hlU2l6ZShmYWxzZSkKICAgICAsIG1fYXZhaWxhYmxlU3BhY2VJblF1b3RhKEFwcGxpY2F0aW9u
Q2FjaGVTdG9yYWdlOjp1bmtub3duUXVvdGEoKSkKLSAgICAsIG1fb3JpZ2luUXVvdGFFeGNlZWRl
ZFByZXZpb3VzbHkoZmFsc2UpCiB7CiB9CiAKQEAgLTcyLDEwICs2MywxMCBAQCBBcHBsaWNhdGlv
bkNhY2hlR3JvdXA6On5BcHBsaWNhdGlvbkNhY2hlR3JvdXAoKQogewogICAgIEFTU0VSVCghbV9u
ZXdlc3RDYWNoZSk7CiAgICAgQVNTRVJUKG1fY2FjaGVzLmlzRW1wdHkoKSk7Ci0gICAgCisKICAg
ICBzdG9wTG9hZGluZygpOwogCi0gICAgbV9zdG9yYWdlLT5jYWNoZUdyb3VwRGVzdHJveWVkKHRo
aXMpOworICAgIG1fc3RvcmFnZS0+Y2FjaGVHcm91cERlc3Ryb3llZCgqdGhpcyk7CiB9CiAgICAg
CiBBcHBsaWNhdGlvbkNhY2hlKiBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNhY2hlRm9yTWFpblJl
cXVlc3QoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBEb2N1bWVudExvYWRlciogZG9j
dW1lbnRMb2FkZXIpCkBAIC04NCwyMSArNzUsMjAgQEAgQXBwbGljYXRpb25DYWNoZSogQXBwbGlj
YXRpb25DYWNoZUdyb3VwOjpjYWNoZUZvck1haW5SZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVxdWUK
ICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKICAgICBVUkwgdXJsKHJlcXVlc3QudXJsKCkpOwot
ICAgIGlmICh1cmwuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkpCi0gICAgICAgIHVybC5yZW1vdmVG
cmFnbWVudElkZW50aWZpZXIoKTsKKyAgICB1cmwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7
CiAKICAgICBhdXRvKiBwYWdlID0gZG9jdW1lbnRMb2FkZXItPmZyYW1lKCkgPyBkb2N1bWVudExv
YWRlci0+ZnJhbWUoKS0+cGFnZSgpIDogbnVsbHB0cjsKICAgICBpZiAoIXBhZ2UgfHwgcGFnZS0+
dXNlc0VwaGVtZXJhbFNlc3Npb24oKSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKLSAgICBp
ZiAoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCA9IHBhZ2UtPmFwcGxpY2F0aW9uQ2FjaGVT
dG9yYWdlKCkuY2FjaGVHcm91cEZvclVSTCh1cmwpKSB7Ci0gICAgICAgIEFTU0VSVChncm91cC0+
bmV3ZXN0Q2FjaGUoKSk7Ci0gICAgICAgIEFTU0VSVCghZ3JvdXAtPmlzT2Jzb2xldGUoKSk7Ci0g
ICAgICAgIAotICAgICAgICByZXR1cm4gZ3JvdXAtPm5ld2VzdENhY2hlKCk7Ci0gICAgfQotICAg
IAotICAgIHJldHVybiBudWxscHRyOworICAgIGF1dG8qIGdyb3VwID0gcGFnZS0+YXBwbGljYXRp
b25DYWNoZVN0b3JhZ2UoKS5jYWNoZUdyb3VwRm9yVVJMKHVybCk7CisgICAgaWYgKCFncm91cCkK
KyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICBBU1NFUlQoZ3JvdXAtPm5ld2VzdENhY2hl
KCkpOworICAgIEFTU0VSVCghZ3JvdXAtPmlzT2Jzb2xldGUoKSk7CisKKyAgICByZXR1cm4gZ3Jv
dXAtPm5ld2VzdENhY2hlKCk7CiB9CiAgICAgCiBBcHBsaWNhdGlvbkNhY2hlKiBBcHBsaWNhdGlv
bkNhY2hlR3JvdXA6OmZhbGxiYWNrQ2FjaGVGb3JNYWluUmVxdWVzdChjb25zdCBSZXNvdXJjZVJl
cXVlc3QmIHJlcXVlc3QsIERvY3VtZW50TG9hZGVyKiBkb2N1bWVudExvYWRlcikKQEAgLTEwNiw4
MSArOTYsODcgQEAgQXBwbGljYXRpb25DYWNoZSogQXBwbGljYXRpb25DYWNoZUdyb3VwOjpmYWxs
YmFja0NhY2hlRm9yTWFpblJlcXVlc3QoY29uc3QgUmVzb3UKICAgICBpZiAoIUFwcGxpY2F0aW9u
Q2FjaGU6OnJlcXVlc3RJc0hUVFBPckhUVFBTR2V0KHJlcXVlc3QpKQogICAgICAgICByZXR1cm4g
bnVsbHB0cjsKIAotICAgIFVSTCB1cmwocmVxdWVzdC51cmwoKSk7Ci0gICAgaWYgKHVybC5oYXNG
cmFnbWVudElkZW50aWZpZXIoKSkKLSAgICAgICAgdXJsLnJlbW92ZUZyYWdtZW50SWRlbnRpZmll
cigpOworICAgIGF1dG8qIGZyYW1lID0gZG9jdW1lbnRMb2FkZXItPmZyYW1lKCk7CisgICAgaWYg
KCFmcmFtZSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKLSAgICBhdXRvKiBwYWdlID0gZG9j
dW1lbnRMb2FkZXItPmZyYW1lKCkgPyBkb2N1bWVudExvYWRlci0+ZnJhbWUoKS0+cGFnZSgpIDog
bnVsbHB0cjsKKyAgICBhdXRvKiBwYWdlID0gZnJhbWUtPnBhZ2UoKTsKICAgICBpZiAoIXBhZ2Up
CiAgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgaWYgKEFwcGxpY2F0aW9uQ2FjaGVHcm91
cCogZ3JvdXAgPSBwYWdlLT5hcHBsaWNhdGlvbkNhY2hlU3RvcmFnZSgpLmZhbGxiYWNrQ2FjaGVH
cm91cEZvclVSTCh1cmwpKSB7Ci0gICAgICAgIEFTU0VSVChncm91cC0+bmV3ZXN0Q2FjaGUoKSk7
Ci0gICAgICAgIEFTU0VSVCghZ3JvdXAtPmlzT2Jzb2xldGUoKSk7CisgICAgVVJMIHVybChyZXF1
ZXN0LnVybCgpKTsKKyAgICB1cmwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CiAKLSAgICAg
ICAgcmV0dXJuIGdyb3VwLT5uZXdlc3RDYWNoZSgpOwotICAgIH0KLSAgICAKLSAgICByZXR1cm4g
bnVsbHB0cjsKKyAgICBhdXRvKiBncm91cCA9IHBhZ2UtPmFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdl
KCkuZmFsbGJhY2tDYWNoZUdyb3VwRm9yVVJMKHVybCk7CisgICAgaWYgKCFncm91cCkKKyAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICBBU1NFUlQoZ3JvdXAtPm5ld2VzdENhY2hlKCkpOwor
ICAgIEFTU0VSVCghZ3JvdXAtPmlzT2Jzb2xldGUoKSk7CisKKyAgICByZXR1cm4gZ3JvdXAtPm5l
d2VzdENhY2hlKCk7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZWxlY3RDYWNo
ZShGcmFtZSogZnJhbWUsIGNvbnN0IFVSTCYgcGFzc2VkTWFuaWZlc3RVUkwpCit2b2lkIEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cDo6c2VsZWN0Q2FjaGUoRnJhbWUmIGZyYW1lLCBjb25zdCBVUkwmIHBh
c3NlZE1hbmlmZXN0VVJMKQogewotICAgIEFTU0VSVChmcmFtZSAmJiBmcmFtZS0+cGFnZSgpKTsK
LSAgICAKLSAgICBpZiAoIWZyYW1lLT5zZXR0aW5ncygpLm9mZmxpbmVXZWJBcHBsaWNhdGlvbkNh
Y2hlRW5hYmxlZCgpKQorICAgIEFTU0VSVChmcmFtZS5kb2N1bWVudCgpKTsKKyAgICBBU1NFUlQo
ZnJhbWUucGFnZSgpKTsKKyAgICBBU1NFUlQoZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIo
KSk7CisKKyAgICBpZiAoIWZyYW1lLnNldHRpbmdzKCkub2ZmbGluZVdlYkFwcGxpY2F0aW9uQ2Fj
aGVFbmFibGVkKCkpCiAgICAgICAgIHJldHVybjsKLSAgICAKLSAgICBEb2N1bWVudExvYWRlciog
ZG9jdW1lbnRMb2FkZXIgPSBmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKLSAgICBB
U1NFUlQoIWRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5hcHBsaWNhdGlv
bkNhY2hlKCkpOworCisgICAgYXV0byYgZG9jdW1lbnRMb2FkZXIgPSAqZnJhbWUubG9hZGVyKCku
ZG9jdW1lbnRMb2FkZXIoKTsKKyAgICBBU1NFUlQoIWRvY3VtZW50TG9hZGVyLmFwcGxpY2F0aW9u
Q2FjaGVIb3N0KCkuYXBwbGljYXRpb25DYWNoZSgpKTsKIAogICAgIGlmIChwYXNzZWRNYW5pZmVz
dFVSTC5pc051bGwoKSkgewotICAgICAgICBzZWxlY3RDYWNoZVdpdGhvdXRNYW5pZmVzdFVSTChm
cmFtZSk7ICAgICAgICAKKyAgICAgICAgc2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3RVUkwoZnJh
bWUpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCiAgICAgLy8gRG9uJ3QgYWNjZXNzIGFueXRo
aW5nIG9uIGRpc2sgaWYgcHJpdmF0ZSBicm93c2luZyBpcyBlbmFibGVkLgotICAgIGlmIChmcmFt
ZS0+cGFnZSgpLT51c2VzRXBoZW1lcmFsU2Vzc2lvbigpIHx8ICFmcmFtZS0+ZG9jdW1lbnQoKS0+
c2VjdXJpdHlPcmlnaW4oKS0+Y2FuQWNjZXNzQXBwbGljYXRpb25DYWNoZShmcmFtZS0+dHJlZSgp
LnRvcCgpLmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCkpKSB7Ci0gICAgICAgIHBvc3RMaXN0
ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNIRUNLSU5HX0VWRU5ULCBkb2N1bWVudExv
YWRlcik7Ci0gICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkVS
Uk9SX0VWRU5ULCBkb2N1bWVudExvYWRlcik7CisgICAgaWYgKGZyYW1lLnBhZ2UoKS0+dXNlc0Vw
aGVtZXJhbFNlc3Npb24oKSB8fCAhZnJhbWUuZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+
Y2FuQWNjZXNzQXBwbGljYXRpb25DYWNoZShmcmFtZS50cmVlKCkudG9wKCkuZG9jdW1lbnQoKS0+
c2VjdXJpdHlPcmlnaW4oKSkpIHsKKyAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVz
KCkuY2hlY2tpbmdFdmVudCwgZG9jdW1lbnRMb2FkZXIpOworICAgICAgICBwb3N0TGlzdGVuZXJU
YXNrKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBkb2N1bWVudExvYWRlcik7CiAgICAgICAgIHJl
dHVybjsKICAgICB9CiAKICAgICBVUkwgbWFuaWZlc3RVUkwocGFzc2VkTWFuaWZlc3RVUkwpOwot
ICAgIGlmIChtYW5pZmVzdFVSTC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSkKLSAgICAgICAgbWFu
aWZlc3RVUkwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CisgICAgbWFuaWZlc3RVUkwucmVt
b3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CiAKLSAgICBBcHBsaWNhdGlvbkNhY2hlKiBtYWluUmVz
b3VyY2VDYWNoZSA9IGRvY3VtZW50TG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5tYWlu
UmVzb3VyY2VBcHBsaWNhdGlvbkNhY2hlKCk7CisgICAgYXV0byogbWFpblJlc291cmNlQ2FjaGUg
PSBkb2N1bWVudExvYWRlci5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLm1haW5SZXNvdXJjZUFwcGxp
Y2F0aW9uQ2FjaGUoKTsKICAgICAKICAgICBpZiAobWFpblJlc291cmNlQ2FjaGUpIHsKKyAgICAg
ICAgQVNTRVJUKG1haW5SZXNvdXJjZUNhY2hlLT5ncm91cCgpKTsKICAgICAgICAgaWYgKG1hbmlm
ZXN0VVJMID09IG1haW5SZXNvdXJjZUNhY2hlLT5ncm91cCgpLT5tX21hbmlmZXN0VVJMKSB7CiAg
ICAgICAgICAgICAvLyBUaGUgY2FjaGUgbWF5IGhhdmUgZ290dGVuIG9ic29sZXRlZCBhZnRlciB3
ZSd2ZSBsb2FkZWQgZnJvbSBpdCwgYnV0IGJlZm9yZSB3ZSBwYXJzZWQgdGhlIGRvY3VtZW50IGFu
ZCBzYXcgY2FjaGUgbWFuaWZlc3QuCiAgICAgICAgICAgICBpZiAobWFpblJlc291cmNlQ2FjaGUt
Pmdyb3VwKCktPmlzT2Jzb2xldGUoKSkKICAgICAgICAgICAgICAgICByZXR1cm47Ci0gICAgICAg
ICAgICBtYWluUmVzb3VyY2VDYWNoZS0+Z3JvdXAoKS0+YXNzb2NpYXRlRG9jdW1lbnRMb2FkZXJX
aXRoQ2FjaGUoZG9jdW1lbnRMb2FkZXIsIG1haW5SZXNvdXJjZUNhY2hlKTsKKyAgICAgICAgICAg
IG1haW5SZXNvdXJjZUNhY2hlLT5ncm91cCgpLT5hc3NvY2lhdGVEb2N1bWVudExvYWRlcldpdGhD
YWNoZSgmZG9jdW1lbnRMb2FkZXIsIG1haW5SZXNvdXJjZUNhY2hlKTsKICAgICAgICAgICAgIG1h
aW5SZXNvdXJjZUNhY2hlLT5ncm91cCgpLT51cGRhdGUoZnJhbWUsIEFwcGxpY2F0aW9uQ2FjaGVV
cGRhdGVXaXRoQnJvd3NpbmdDb250ZXh0KTsKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAg
IC8vIFRoZSBtYWluIHJlc291cmNlIHdhcyBsb2FkZWQgZnJvbSBjYWNoZSwgc28gdGhlIGNhY2hl
IG11c3QgaGF2ZSBhbiBlbnRyeSBmb3IgaXQuIE1hcmsgaXQgYXMgZm9yZWlnbi4KLSAgICAgICAg
ICAgIFVSTCByZXNvdXJjZVVSTChkb2N1bWVudExvYWRlci0+cmVzcG9uc2VVUkwoKSk7Ci0gICAg
ICAgICAgICBpZiAocmVzb3VyY2VVUkwuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkpCi0gICAgICAg
ICAgICAgICAgcmVzb3VyY2VVUkwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7Ci0gICAgICAg
ICAgICBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqIHJlc291cmNlID0gbWFpblJlc291cmNlQ2Fj
aGUtPnJlc291cmNlRm9yVVJMKHJlc291cmNlVVJMKTsKLSAgICAgICAgICAgIGJvb2wgaW5TdG9y
YWdlID0gcmVzb3VyY2UtPnN0b3JhZ2VJRCgpOwotICAgICAgICAgICAgcmVzb3VyY2UtPmFkZFR5
cGUoQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpGb3JlaWduKTsKKyAgICAgICAgICAgIFVSTCBy
ZXNvdXJjZVVSTCB7IGRvY3VtZW50TG9hZGVyLnJlc3BvbnNlVVJMKCkgfTsKKyAgICAgICAgICAg
IHJlc291cmNlVVJMLnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpOworCisgICAgICAgICAgICBB
U1NFUlQobWFpblJlc291cmNlQ2FjaGUtPnJlc291cmNlRm9yVVJMKHJlc291cmNlVVJMKSk7Cisg
ICAgICAgICAgICBhdXRvJiByZXNvdXJjZSA9ICptYWluUmVzb3VyY2VDYWNoZS0+cmVzb3VyY2VG
b3JVUkwocmVzb3VyY2VVUkwpOworCisgICAgICAgICAgICBib29sIGluU3RvcmFnZSA9IHJlc291
cmNlLnN0b3JhZ2VJRCgpOworICAgICAgICAgICAgcmVzb3VyY2UuYWRkVHlwZShBcHBsaWNhdGlv
bkNhY2hlUmVzb3VyY2U6OkZvcmVpZ24pOwogICAgICAgICAgICAgaWYgKGluU3RvcmFnZSkKLSAg
ICAgICAgICAgICAgICBmcmFtZS0+cGFnZSgpLT5hcHBsaWNhdGlvbkNhY2hlU3RvcmFnZSgpLnN0
b3JlVXBkYXRlZFR5cGUocmVzb3VyY2UsIG1haW5SZXNvdXJjZUNhY2hlKTsKKyAgICAgICAgICAg
ICAgICBmcmFtZS5wYWdlKCktPmFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlKCkuc3RvcmVVcGRhdGVk
VHlwZSgmcmVzb3VyY2UsIG1haW5SZXNvdXJjZUNhY2hlKTsKIAogICAgICAgICAgICAgLy8gUmVz
dGFydCB0aGUgY3VycmVudCBuYXZpZ2F0aW9uIGZyb20gdGhlIHRvcCBvZiB0aGUgbmF2aWdhdGlv
biBhbGdvcml0aG0sIHVuZG9pbmcgYW55IGNoYW5nZXMgdGhhdCB3ZXJlIG1hZGUKICAgICAgICAg
ICAgIC8vIGFzIHBhcnQgb2YgdGhlIGluaXRpYWwgbG9hZC4KICAgICAgICAgICAgIC8vIFRoZSBu
YXZpZ2F0aW9uIHdpbGwgbm90IHJlc3VsdCBpbiB0aGUgc2FtZSByZXNvdXJjZSBiZWluZyBsb2Fk
ZWQsIGJlY2F1c2UgImZvcmVpZ24iIGVudHJpZXMgYXJlIG5ldmVyIHBpY2tlZCBkdXJpbmcgbmF2
aWdhdGlvbi4KLSAgICAgICAgICAgIGZyYW1lLT5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1
bGVMb2NhdGlvbkNoYW5nZShmcmFtZS0+ZG9jdW1lbnQoKSwgZnJhbWUtPmRvY3VtZW50KCktPnNl
Y3VyaXR5T3JpZ2luKCksIGRvY3VtZW50TG9hZGVyLT51cmwoKSwgZnJhbWUtPmxvYWRlcigpLnJl
ZmVycmVyKCkpOworICAgICAgICAgICAgZnJhbWUubmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVk
dWxlTG9jYXRpb25DaGFuZ2UoKmZyYW1lLmRvY3VtZW50KCksIGZyYW1lLmRvY3VtZW50KCktPnNl
Y3VyaXR5T3JpZ2luKCksIGRvY3VtZW50TG9hZGVyLnVybCgpLCBmcmFtZS5sb2FkZXIoKS5yZWZl
cnJlcigpKTsKICAgICAgICAgfQotICAgICAgICAKICAgICAgICAgcmV0dXJuOwogICAgIH0KLSAg
ICAKKwogICAgIC8vIFRoZSByZXNvdXJjZSB3YXMgbG9hZGVkIGZyb20gdGhlIG5ldHdvcmssIGNo
ZWNrIGlmIGl0IGlzIGEgSFRUUC9IVFRQUyBHRVQuICAgIAotICAgIGNvbnN0IFJlc291cmNlUmVx
dWVzdCYgcmVxdWVzdCA9IGZyYW1lLT5sb2FkZXIoKS5hY3RpdmVEb2N1bWVudExvYWRlcigpLT5y
ZXF1ZXN0KCk7CisgICAgYXV0byYgcmVxdWVzdCA9IGZyYW1lLmxvYWRlcigpLmFjdGl2ZURvY3Vt
ZW50TG9hZGVyKCktPnJlcXVlc3QoKTsKIAogICAgIGlmICghQXBwbGljYXRpb25DYWNoZTo6cmVx
dWVzdElzSFRUUE9ySFRUUFNHZXQocmVxdWVzdCkpCiAgICAgICAgIHJldHVybjsKQEAgLTE4OSw0
NiArMTg1LDQ4IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZWxlY3RDYWNoZShGcmFt
ZSogZnJhbWUsIGNvbnN0IFVSTCYgcGFzc2VkTWFuaWZlc3RVCiAgICAgaWYgKCFwcm90b2NvbEhv
c3RBbmRQb3J0QXJlRXF1YWwobWFuaWZlc3RVUkwsIHJlcXVlc3QudXJsKCkpKQogICAgICAgICBy
ZXR1cm47CiAKLSAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwID0gZnJhbWUtPnBhZ2Uo
KS0+YXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKS5maW5kT3JDcmVhdGVDYWNoZUdyb3VwKG1hbmlm
ZXN0VVJMKTsKKyAgICBhdXRvJiBncm91cCA9ICpmcmFtZS5wYWdlKCktPmFwcGxpY2F0aW9uQ2Fj
aGVTdG9yYWdlKCkuZmluZE9yQ3JlYXRlQ2FjaGVHcm91cChtYW5pZmVzdFVSTCk7CiAKLSAgICBk
b2N1bWVudExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+c2V0Q2FuZGlkYXRlQXBwbGlj
YXRpb25DYWNoZUdyb3VwKGdyb3VwKTsKLSAgICBncm91cC0+bV9wZW5kaW5nTWFzdGVyUmVzb3Vy
Y2VMb2FkZXJzLmFkZChkb2N1bWVudExvYWRlcik7Ci0gICAgZ3JvdXAtPm1fZG93bmxvYWRpbmdQ
ZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzQ291bnQrKzsKKyAgICBkb2N1bWVudExvYWRlci5h
cHBsaWNhdGlvbkNhY2hlSG9zdCgpLnNldENhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCgm
Z3JvdXApOworICAgIGdyb3VwLm1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5hZGQoJmRv
Y3VtZW50TG9hZGVyKTsKKyAgICBncm91cC5tX2Rvd25sb2FkaW5nUGVuZGluZ01hc3RlclJlc291
cmNlTG9hZGVyc0NvdW50Kys7CiAKLSAgICBBU1NFUlQoIWdyb3VwLT5tX2NhY2hlQmVpbmdVcGRh
dGVkIHx8IGdyb3VwLT5tX3VwZGF0ZVN0YXR1cyAhPSBJZGxlKTsKLSAgICBncm91cC0+dXBkYXRl
KGZyYW1lLCBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlV2l0aEJyb3dzaW5nQ29udGV4dCk7CisgICAg
QVNTRVJUKCFncm91cC5tX2NhY2hlQmVpbmdVcGRhdGVkIHx8IGdyb3VwLm1fdXBkYXRlU3RhdHVz
ICE9IElkbGUpOworICAgIGdyb3VwLnVwZGF0ZShmcmFtZSwgQXBwbGljYXRpb25DYWNoZVVwZGF0
ZVdpdGhCcm93c2luZ0NvbnRleHQpOwogfQogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6
c2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3RVUkwoRnJhbWUqIGZyYW1lKQordm9pZCBBcHBsaWNh
dGlvbkNhY2hlR3JvdXA6OnNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0VVJMKEZyYW1lJiBmcmFt
ZSkKIHsKLSAgICBpZiAoIWZyYW1lLT5zZXR0aW5ncygpLm9mZmxpbmVXZWJBcHBsaWNhdGlvbkNh
Y2hlRW5hYmxlZCgpKQorICAgIGlmICghZnJhbWUuc2V0dGluZ3MoKS5vZmZsaW5lV2ViQXBwbGlj
YXRpb25DYWNoZUVuYWJsZWQoKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgRG9jdW1lbnRMb2Fk
ZXIqIGRvY3VtZW50TG9hZGVyID0gZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCk7Ci0g
ICAgQVNTRVJUKCFkb2N1bWVudExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+YXBwbGlj
YXRpb25DYWNoZSgpKTsKKyAgICBBU1NFUlQoZnJhbWUuZG9jdW1lbnQoKSk7CisgICAgQVNTRVJU
KGZyYW1lLnBhZ2UoKSk7CisgICAgQVNTRVJUKGZyYW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVy
KCkpOworICAgIGF1dG8mIGRvY3VtZW50TG9hZGVyID0gKmZyYW1lLmxvYWRlcigpLmRvY3VtZW50
TG9hZGVyKCk7CisgICAgQVNTRVJUKCFkb2N1bWVudExvYWRlci5hcHBsaWNhdGlvbkNhY2hlSG9z
dCgpLmFwcGxpY2F0aW9uQ2FjaGUoKSk7CiAKICAgICAvLyBEb24ndCBhY2Nlc3MgYW55dGhpbmcg
b24gZGlzayBpZiBwcml2YXRlIGJyb3dzaW5nIGlzIGVuYWJsZWQuCi0gICAgaWYgKGZyYW1lLT5w
YWdlKCktPnVzZXNFcGhlbWVyYWxTZXNzaW9uKCkgfHwgIWZyYW1lLT5kb2N1bWVudCgpLT5zZWN1
cml0eU9yaWdpbigpLT5jYW5BY2Nlc3NBcHBsaWNhdGlvbkNhY2hlKGZyYW1lLT50cmVlKCkudG9w
KCkuZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSkpIHsKLSAgICAgICAgcG9zdExpc3RlbmVy
VGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q0hFQ0tJTkdfRVZFTlQsIGRvY3VtZW50TG9hZGVy
KTsKLSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RVJST1Jf
RVZFTlQsIGRvY3VtZW50TG9hZGVyKTsKKyAgICBpZiAoZnJhbWUucGFnZSgpLT51c2VzRXBoZW1l
cmFsU2Vzc2lvbigpIHx8ICFmcmFtZS5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5jYW5B
Y2Nlc3NBcHBsaWNhdGlvbkNhY2hlKGZyYW1lLnRyZWUoKS50b3AoKS5kb2N1bWVudCgpLT5zZWN1
cml0eU9yaWdpbigpKSkgeworICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5j
aGVja2luZ0V2ZW50LCBkb2N1bWVudExvYWRlcik7CisgICAgICAgIHBvc3RMaXN0ZW5lclRhc2so
ZXZlbnROYW1lcygpLmVycm9yRXZlbnQsIGRvY3VtZW50TG9hZGVyKTsKICAgICAgICAgcmV0dXJu
OwogICAgIH0KIAotICAgIEFwcGxpY2F0aW9uQ2FjaGUqIG1haW5SZXNvdXJjZUNhY2hlID0gZG9j
dW1lbnRMb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1haW5SZXNvdXJjZUFwcGxpY2F0
aW9uQ2FjaGUoKTsKLQotICAgIGlmIChtYWluUmVzb3VyY2VDYWNoZSkgewotICAgICAgICBtYWlu
UmVzb3VyY2VDYWNoZS0+Z3JvdXAoKS0+YXNzb2NpYXRlRG9jdW1lbnRMb2FkZXJXaXRoQ2FjaGUo
ZG9jdW1lbnRMb2FkZXIsIG1haW5SZXNvdXJjZUNhY2hlKTsKLSAgICAgICAgbWFpblJlc291cmNl
Q2FjaGUtPmdyb3VwKCktPnVwZGF0ZShmcmFtZSwgQXBwbGljYXRpb25DYWNoZVVwZGF0ZVdpdGhC
cm93c2luZ0NvbnRleHQpOworICAgIGlmIChhdXRvKiBtYWluUmVzb3VyY2VDYWNoZSA9IGRvY3Vt
ZW50TG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWFpblJlc291cmNlQXBwbGljYXRpb25D
YWNoZSgpKSB7CisgICAgICAgIEFTU0VSVChtYWluUmVzb3VyY2VDYWNoZS0+Z3JvdXAoKSk7Cisg
ICAgICAgIGF1dG8mIGdyb3VwID0gKm1haW5SZXNvdXJjZUNhY2hlLT5ncm91cCgpOworICAgICAg
ICBncm91cC5hc3NvY2lhdGVEb2N1bWVudExvYWRlcldpdGhDYWNoZSgmZG9jdW1lbnRMb2FkZXIs
IG1haW5SZXNvdXJjZUNhY2hlKTsKKyAgICAgICAgZ3JvdXAudXBkYXRlKGZyYW1lLCBBcHBsaWNh
dGlvbkNhY2hlVXBkYXRlV2l0aEJyb3dzaW5nQ29udGV4dCk7CiAgICAgfQogfQogCi12b2lkIEFw
cGxpY2F0aW9uQ2FjaGVHcm91cDo6ZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKERvY3VtZW50
TG9hZGVyKiBsb2FkZXIpCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZmluaXNoZWRMb2Fk
aW5nTWFpblJlc291cmNlKERvY3VtZW50TG9hZGVyJiBsb2FkZXIpCiB7Ci0gICAgQVNTRVJUKG1f
cGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5jb250YWlucyhsb2FkZXIpKTsKKyAgICBBU1NF
UlQobV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLmNvbnRhaW5zKCZsb2FkZXIpKTsKICAg
ICBBU1NFUlQobV9jb21wbGV0aW9uVHlwZSA9PSBOb25lIHx8IG1fcGVuZGluZ0VudHJpZXMuaXNF
bXB0eSgpKTsKLSAgICBVUkwgdXJsID0gbG9hZGVyLT51cmwoKTsKLSAgICBpZiAodXJsLmhhc0Zy
YWdtZW50SWRlbnRpZmllcigpKQotICAgICAgICB1cmwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVy
KCk7CisgICAgVVJMIHVybCA9IGxvYWRlci51cmwoKTsKKyAgICB1cmwucmVtb3ZlRnJhZ21lbnRJ
ZGVudGlmaWVyKCk7CiAKICAgICBzd2l0Y2ggKG1fY29tcGxldGlvblR5cGUpIHsKICAgICBjYXNl
IE5vbmU6CkBAIC0yMzYsMzQgKzIzNCwzMiBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6
ZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCiAgICAg
ICAgIHJldHVybjsKICAgICBjYXNlIE5vVXBkYXRlOgogICAgICAgICBBU1NFUlQoIW1fY2FjaGVC
ZWluZ1VwZGF0ZWQpOwotICAgICAgICBhc3NvY2lhdGVEb2N1bWVudExvYWRlcldpdGhDYWNoZShs
b2FkZXIsIG1fbmV3ZXN0Q2FjaGUuZ2V0KCkpOwotCi0gICAgICAgIGlmIChBcHBsaWNhdGlvbkNh
Y2hlUmVzb3VyY2UqIHJlc291cmNlID0gbV9uZXdlc3RDYWNoZS0+cmVzb3VyY2VGb3JVUkwodXJs
KSkgeworICAgICAgICBhc3NvY2lhdGVEb2N1bWVudExvYWRlcldpdGhDYWNoZSgmbG9hZGVyLCBt
X25ld2VzdENhY2hlLmdldCgpKTsKKyAgICAgICAgaWYgKGF1dG8qIHJlc291cmNlID0gbV9uZXdl
c3RDYWNoZS0+cmVzb3VyY2VGb3JVUkwodXJsKSkgewogICAgICAgICAgICAgaWYgKCEocmVzb3Vy
Y2UtPnR5cGUoKSAmIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6TWFzdGVyKSkgewogICAgICAg
ICAgICAgICAgIHJlc291cmNlLT5hZGRUeXBlKEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6TWFz
dGVyKTsKICAgICAgICAgICAgICAgICBBU1NFUlQoIXJlc291cmNlLT5zdG9yYWdlSUQoKSk7CiAg
ICAgICAgICAgICB9CiAgICAgICAgIH0gZWxzZQotICAgICAgICAgICAgbV9uZXdlc3RDYWNoZS0+
YWRkUmVzb3VyY2UoQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpjcmVhdGUodXJsLCBsb2FkZXIt
PnJlc3BvbnNlKCksIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6TWFzdGVyLCBsb2FkZXItPm1h
aW5SZXNvdXJjZURhdGEoKSkpOworICAgICAgICAgICAgbV9uZXdlc3RDYWNoZS0+YWRkUmVzb3Vy
Y2UoQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpjcmVhdGUodXJsLCBsb2FkZXIucmVzcG9uc2Uo
KSwgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIsIGxvYWRlci5tYWluUmVzb3VyY2VE
YXRhKCkpKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBGYWlsdXJlOgogICAgICAgICAvLyBD
YWNoZSB1cGRhdGUgaGFzIGJlZW4gYSBmYWlsdXJlLCBzbyB0aGVyZSBpcyBubyByZWFzb24gdG8g
a2VlcCB0aGUgZG9jdW1lbnQgYXNzb2NpYXRlZCB3aXRoIHRoZSBpbmNvbXBsZXRlIGNhY2hlCiAg
ICAgICAgIC8vIChpdHMgbWFpbiByZXNvdXJjZSB3YXMgbm90IGNhY2hlZCB5ZXQsIHNvIGl0IGlz
IGxpa2VseSB0aGF0IHRoZSBhcHBsaWNhdGlvbiBjaGFuZ2VkIHNpZ25pZmljYW50bHkgc2VydmVy
LXNpZGUpLgogICAgICAgICBBU1NFUlQoIW1fY2FjaGVCZWluZ1VwZGF0ZWQpOyAvLyBBbHJlYWR5
IGNsZWFyZWQgb3V0IGJ5IHN0b3BMb2FkaW5nKCkuCi0gICAgICAgIGxvYWRlci0+YXBwbGljYXRp
b25DYWNoZUhvc3QoKS0+c2V0QXBwbGljYXRpb25DYWNoZShudWxscHRyKTsgLy8gV2lsbCB1bnNl
dCBjYW5kaWRhdGUsIHRvby4KLSAgICAgICAgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzLnJl
bW92ZShsb2FkZXIpOwotICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVI
b3N0OjpFUlJPUl9FVkVOVCwgbG9hZGVyKTsKKyAgICAgICAgbG9hZGVyLmFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KCkuc2V0QXBwbGljYXRpb25DYWNoZShudWxscHRyKTsgLy8gV2lsbCB1bnNldCBjYW5k
aWRhdGUsIHRvby4KKyAgICAgICAgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzLnJlbW92ZSgm
bG9hZGVyKTsKKyAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkuZXJyb3JFdmVu
dCwgbG9hZGVyKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBDb21wbGV0ZWQ6Ci0gICAgICAg
IEFTU0VSVChtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMuY29udGFpbnMobG9hZGVyKSk7Ci0K
LSAgICAgICAgaWYgKEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSogcmVzb3VyY2UgPSBtX2NhY2hl
QmVpbmdVcGRhdGVkLT5yZXNvdXJjZUZvclVSTCh1cmwpKSB7CisgICAgICAgIEFTU0VSVChtX2Fz
c29jaWF0ZWREb2N1bWVudExvYWRlcnMuY29udGFpbnMoJmxvYWRlcikpOworICAgICAgICBpZiAo
YXV0byogcmVzb3VyY2UgPSBtX2NhY2hlQmVpbmdVcGRhdGVkLT5yZXNvdXJjZUZvclVSTCh1cmwp
KSB7CiAgICAgICAgICAgICBpZiAoIShyZXNvdXJjZS0+dHlwZSgpICYgQXBwbGljYXRpb25DYWNo
ZVJlc291cmNlOjpNYXN0ZXIpKSB7CiAgICAgICAgICAgICAgICAgcmVzb3VyY2UtPmFkZFR5cGUo
QXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIpOwogICAgICAgICAgICAgICAgIEFTU0VS
VCghcmVzb3VyY2UtPnN0b3JhZ2VJRCgpKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfSBlbHNl
Ci0gICAgICAgICAgICBtX2NhY2hlQmVpbmdVcGRhdGVkLT5hZGRSZXNvdXJjZShBcHBsaWNhdGlv
bkNhY2hlUmVzb3VyY2U6OmNyZWF0ZSh1cmwsIGxvYWRlci0+cmVzcG9uc2UoKSwgQXBwbGljYXRp
b25DYWNoZVJlc291cmNlOjpNYXN0ZXIsIGxvYWRlci0+bWFpblJlc291cmNlRGF0YSgpKSk7Cisg
ICAgICAgICAgICBtX2NhY2hlQmVpbmdVcGRhdGVkLT5hZGRSZXNvdXJjZShBcHBsaWNhdGlvbkNh
Y2hlUmVzb3VyY2U6OmNyZWF0ZSh1cmwsIGxvYWRlci5yZXNwb25zZSgpLCBBcHBsaWNhdGlvbkNh
Y2hlUmVzb3VyY2U6Ok1hc3RlciwgbG9hZGVyLm1haW5SZXNvdXJjZURhdGEoKSkpOwogICAgICAg
ICAvLyBUaGUgImNhY2hlZCIgZXZlbnQgd2lsbCBiZSBwb3N0ZWQgdG8gYWxsIGFzc29jaWF0ZWQg
ZG9jdW1lbnRzIG9uY2UgdXBkYXRlIGlzIGNvbXBsZXRlLgogICAgICAgICBicmVhazsKICAgICB9
CkBAIC0yNzMsOSArMjY5LDkgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmZpbmlzaGVk
TG9hZGluZ01haW5SZXNvdXJjZShEb2N1bWVudExvYWRlciogbG9hZGVyKQogICAgIGNoZWNrSWZM
b2FkSXNDb21wbGV0ZSgpOwogfQogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZmFpbGVk
TG9hZGluZ01haW5SZXNvdXJjZShEb2N1bWVudExvYWRlciogbG9hZGVyKQordm9pZCBBcHBsaWNh
dGlvbkNhY2hlR3JvdXA6OmZhaWxlZExvYWRpbmdNYWluUmVzb3VyY2UoRG9jdW1lbnRMb2FkZXIm
IGxvYWRlcikKIHsKLSAgICBBU1NFUlQobV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLmNv
bnRhaW5zKGxvYWRlcikpOworICAgIEFTU0VSVChtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRl
cnMuY29udGFpbnMoJmxvYWRlcikpOwogICAgIEFTU0VSVChtX2NvbXBsZXRpb25UeXBlID09IE5v
bmUgfHwgbV9wZW5kaW5nRW50cmllcy5pc0VtcHR5KCkpOwogCiAgICAgc3dpdGNoIChtX2NvbXBs
ZXRpb25UeXBlKSB7CkBAIC0yODQsMzIgKzI4MCwyNyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVH
cm91cDo6ZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZShEb2N1bWVudExvYWRlciogbG9hZGVyKQog
ICAgICAgICByZXR1cm47CiAgICAgY2FzZSBOb1VwZGF0ZToKICAgICAgICAgQVNTRVJUKCFtX2Nh
Y2hlQmVpbmdVcGRhdGVkKTsKLQogICAgICAgICAvLyBUaGUgbWFuaWZlc3QgZGlkbid0IGNoYW5n
ZSwgYW5kIHdlIGhhdmUgYSByZWxldmFudCBjYWNoZSAtIGJ1dCB0aGUgbWFpbiByZXNvdXJjZSBk
b3dubG9hZCBmYWlsZWQgbWlkLXdheSwgc28gaXQgY2Fubm90IGJlIHN0b3JlZCB0byB0aGUgY2Fj
aGUsCiAgICAgICAgIC8vIGFuZCB0aGUgbG9hZGVyIGRvZXMgbm90IGdldCBhc3NvY2lhdGVkIHRv
IGl0LiBJZiB0aGVyZSBhcmUgb3RoZXIgbWFpbiByZXNvdXJjZXMgYmVpbmcgZG93bmxvYWRlZCBm
b3IgdGhpcyBjYWNoZSBncm91cCwgdGhleSBtYXkgc3RpbGwgc3VjY2VlZC4KLSAgICAgICAgcG9z
dExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RVJST1JfRVZFTlQsIGxvYWRlcik7
Ci0KKyAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkuZXJyb3JFdmVudCwgbG9h
ZGVyKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBGYWlsdXJlOgogICAgICAgICAvLyBDYWNo
ZSB1cGRhdGUgZmFpbGVkLCB0b28uCiAgICAgICAgIEFTU0VSVCghbV9jYWNoZUJlaW5nVXBkYXRl
ZCk7IC8vIEFscmVhZHkgY2xlYXJlZCBvdXQgYnkgc3RvcExvYWRpbmcoKS4KLSAgICAgICAgQVNT
RVJUKCFsb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPmFwcGxpY2F0aW9uQ2FjaGUoKSB8
fCBsb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPmFwcGxpY2F0aW9uQ2FjaGUoKS0+Z3Jv
dXAoKSA9PSB0aGlzKTsKLQotICAgICAgICBsb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkt
PnNldEFwcGxpY2F0aW9uQ2FjaGUobnVsbHB0cik7IC8vIFdpbGwgdW5zZXQgY2FuZGlkYXRlLCB0
b28uCi0gICAgICAgIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycy5yZW1vdmUobG9hZGVyKTsK
LSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RVJST1JfRVZF
TlQsIGxvYWRlcik7CisgICAgICAgIEFTU0VSVCghbG9hZGVyLmFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCkuYXBwbGljYXRpb25DYWNoZSgpIHx8IGxvYWRlci5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLmFw
cGxpY2F0aW9uQ2FjaGUoKS0+Z3JvdXAoKSA9PSB0aGlzKTsKKyAgICAgICAgbG9hZGVyLmFwcGxp
Y2F0aW9uQ2FjaGVIb3N0KCkuc2V0QXBwbGljYXRpb25DYWNoZShudWxscHRyKTsgLy8gV2lsbCB1
bnNldCBjYW5kaWRhdGUsIHRvby4KKyAgICAgICAgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJz
LnJlbW92ZSgmbG9hZGVyKTsKKyAgICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCku
ZXJyb3JFdmVudCwgbG9hZGVyKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBDb21wbGV0ZWQ6
CiAgICAgICAgIC8vIFRoZSBjYWNoZSBtYW5pZmVzdCBkaWRuJ3QgbGlzdCB0aGlzIG1haW4gcmVz
b3VyY2UsIGFuZCBhbGwgY2FjaGUgZW50cmllcyB3ZXJlIGFscmVhZHkgdXBkYXRlZCBzdWNjZXNz
ZnVsbHkgLSBidXQgdGhlIG1haW4gcmVzb3VyY2UgZmFpbGVkIHRvIGxvYWQsCiAgICAgICAgIC8v
IHNvIGl0IGNhbm5vdCBiZSBzdG9yZWQgdG8gdGhlIGNhY2hlLiBJZiB0aGVyZSBhcmUgb3RoZXIg
bWFpbiByZXNvdXJjZXMgYmVpbmcgZG93bmxvYWRlZCBmb3IgdGhpcyBjYWNoZSBncm91cCwgdGhl
eSBtYXkgc3RpbGwgc3VjY2VlZC4KLSAgICAgICAgQVNTRVJUKG1fYXNzb2NpYXRlZERvY3VtZW50
TG9hZGVycy5jb250YWlucyhsb2FkZXIpKTsKLSAgICAgICAgQVNTRVJUKGxvYWRlci0+YXBwbGlj
YXRpb25DYWNoZUhvc3QoKS0+YXBwbGljYXRpb25DYWNoZSgpID09IG1fY2FjaGVCZWluZ1VwZGF0
ZWQpOwotICAgICAgICBBU1NFUlQoIWxvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+Y2Fu
ZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKCkpOwotICAgICAgICBtX2Fzc29jaWF0ZWREb2N1
bWVudExvYWRlcnMucmVtb3ZlKGxvYWRlcik7Ci0gICAgICAgIGxvYWRlci0+YXBwbGljYXRpb25D
YWNoZUhvc3QoKS0+c2V0QXBwbGljYXRpb25DYWNoZShudWxscHRyKTsKLQotICAgICAgICBwb3N0
TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFUlJPUl9FVkVOVCwgbG9hZGVyKTsK
LQorICAgICAgICBBU1NFUlQobV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzLmNvbnRhaW5zKCZs
b2FkZXIpKTsKKyAgICAgICAgQVNTRVJUKGxvYWRlci5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLmFw
cGxpY2F0aW9uQ2FjaGUoKSA9PSBtX2NhY2hlQmVpbmdVcGRhdGVkKTsKKyAgICAgICAgQVNTRVJU
KCFsb2FkZXIuYXBwbGljYXRpb25DYWNoZUhvc3QoKS5jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hl
R3JvdXAoKSk7CisgICAgICAgIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycy5yZW1vdmUoJmxv
YWRlcik7CisgICAgICAgIGxvYWRlci5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLnNldEFwcGxpY2F0
aW9uQ2FjaGUobnVsbHB0cik7CisgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygp
LmVycm9yRXZlbnQsIGxvYWRlcik7CiAgICAgICAgIGJyZWFrOwogICAgIH0KIApAQCAtMzQ2LDEy
ICszMzcsMTIgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnN0b3BMb2FkaW5nKCkKICAg
ICBtX3BlbmRpbmdFbnRyaWVzLmNsZWFyKCk7CiB9ICAgIAogCi12b2lkIEFwcGxpY2F0aW9uQ2Fj
aGVHcm91cDo6ZGlzYXNzb2NpYXRlRG9jdW1lbnRMb2FkZXIoRG9jdW1lbnRMb2FkZXIqIGxvYWRl
cikKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpkaXNhc3NvY2lhdGVEb2N1bWVudExvYWRl
cihEb2N1bWVudExvYWRlciYgbG9hZGVyKQogewotICAgIG1fYXNzb2NpYXRlZERvY3VtZW50TG9h
ZGVycy5yZW1vdmUobG9hZGVyKTsKLSAgICBtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMu
cmVtb3ZlKGxvYWRlcik7CisgICAgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzLnJlbW92ZSgm
bG9hZGVyKTsKKyAgICBtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMucmVtb3ZlKCZsb2Fk
ZXIpOwogCi0gICAgaWYgKGF1dG8qIGhvc3QgPSBsb2FkZXItPmFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCkpCisgICAgaWYgKGF1dG8qIGhvc3QgPSBsb2FkZXIuYXBwbGljYXRpb25DYWNoZUhvc3RVbmxl
c3NCZWluZ0Rlc3Ryb3llZCgpKQogICAgICAgICBob3N0LT5zZXRBcHBsaWNhdGlvbkNhY2hlKG51
bGxwdHIpOyAvLyBXaWxsIHNldCBjYW5kaWRhdGUgZ3JvdXAgdG8gbnVsbCwgdG9vLgogCiAgICAg
aWYgKCFtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMuaXNFbXB0eSgpIHx8ICFtX3BlbmRpbmdN
YXN0ZXJSZXNvdXJjZUxvYWRlcnMuaXNFbXB0eSgpKQpAQCAtMzcyLDI2ICszNjMsMjYgQEAgdm9p
ZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKERvY3Vt
ZW50TG9hZGVyKiBsb2FkZXIpCiAgICAgbV9uZXdlc3RDYWNoZSA9IG51bGxwdHI7CiB9CiAKLXZv
aWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpjYWNoZURlc3Ryb3llZChBcHBsaWNhdGlvbkNhY2hl
KiBjYWNoZSkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpjYWNoZURlc3Ryb3llZChBcHBs
aWNhdGlvbkNhY2hlJiBjYWNoZSkKIHsKLSAgICBpZiAobV9jYWNoZXMucmVtb3ZlKGNhY2hlKSAm
JiBtX2NhY2hlcy5pc0VtcHR5KCkpIHsKKyAgICBpZiAobV9jYWNoZXMucmVtb3ZlKCZjYWNoZSkg
JiYgbV9jYWNoZXMuaXNFbXB0eSgpKSB7CiAgICAgICAgIEFTU0VSVChtX2Fzc29jaWF0ZWREb2N1
bWVudExvYWRlcnMuaXNFbXB0eSgpKTsKICAgICAgICAgQVNTRVJUKG1fcGVuZGluZ01hc3RlclJl
c291cmNlTG9hZGVycy5pc0VtcHR5KCkpOwogICAgICAgICBkZWxldGUgdGhpczsKICAgICB9CiB9
CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzdG9wTG9hZGluZ0luRnJhbWUoRnJhbWUq
IGZyYW1lKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnN0b3BMb2FkaW5nSW5GcmFtZShG
cmFtZSYgZnJhbWUpCiB7Ci0gICAgaWYgKGZyYW1lICE9IG1fZnJhbWUpCisgICAgaWYgKCZmcmFt
ZSAhPSBtX2ZyYW1lKQogICAgICAgICByZXR1cm47CiAKICAgICBjYWNoZVVwZGF0ZUZhaWxlZCgp
OwogfQogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c2V0TmV3ZXN0Q2FjaGUoUGFzc1Jl
ZlB0cjxBcHBsaWNhdGlvbkNhY2hlPiBuZXdlc3RDYWNoZSkKK3ZvaWQgQXBwbGljYXRpb25DYWNo
ZUdyb3VwOjpzZXROZXdlc3RDYWNoZShSZWY8QXBwbGljYXRpb25DYWNoZT4mJiBuZXdlc3RDYWNo
ZSkKIHsKLSAgICBtX25ld2VzdENhY2hlID0gbmV3ZXN0Q2FjaGU7CisgICAgbV9uZXdlc3RDYWNo
ZSA9IFdURk1vdmUobmV3ZXN0Q2FjaGUpOwogCiAgICAgbV9jYWNoZXMuYWRkKG1fbmV3ZXN0Q2Fj
aGUuZ2V0KCkpOwogICAgIG1fbmV3ZXN0Q2FjaGUtPnNldEdyb3VwKHRoaXMpOwpAQCAtNDAzLDQw
ICszOTQsNDMgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6Om1ha2VPYnNvbGV0ZSgpCiAg
ICAgICAgIHJldHVybjsKIAogICAgIG1faXNPYnNvbGV0ZSA9IHRydWU7Ci0gICAgbV9zdG9yYWdl
LT5jYWNoZUdyb3VwTWFkZU9ic29sZXRlKHRoaXMpOworICAgIG1fc3RvcmFnZS0+Y2FjaGVHcm91
cE1hZGVPYnNvbGV0ZSgqdGhpcyk7CiAgICAgQVNTRVJUKCFtX3N0b3JhZ2VJRCk7CiB9CiAKLXZv
aWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjp1cGRhdGUoRnJhbWUqIGZyYW1lLCBBcHBsaWNhdGlv
bkNhY2hlVXBkYXRlT3B0aW9uIHVwZGF0ZU9wdGlvbikKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUdy
b3VwOjp1cGRhdGUoRnJhbWUmIGZyYW1lLCBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlT3B0aW9uIHVw
ZGF0ZU9wdGlvbikKIHsKKyAgICBBU1NFUlQoZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIo
KSk7CisgICAgYXV0byYgZG9jdW1lbnRMb2FkZXIgPSAqZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRM
b2FkZXIoKTsKKwogICAgIGlmIChtX3VwZGF0ZVN0YXR1cyA9PSBDaGVja2luZyB8fCBtX3VwZGF0
ZVN0YXR1cyA9PSBEb3dubG9hZGluZykgewogICAgICAgICBpZiAodXBkYXRlT3B0aW9uID09IEFw
cGxpY2F0aW9uQ2FjaGVVcGRhdGVXaXRoQnJvd3NpbmdDb250ZXh0KSB7Ci0gICAgICAgICAgICBw
b3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDSEVDS0lOR19FVkVOVCwgZnJh
bWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkpOworICAgICAgICAgICAgcG9zdExpc3RlbmVy
VGFzayhldmVudE5hbWVzKCkuY2hlY2tpbmdFdmVudCwgZG9jdW1lbnRMb2FkZXIpOwogICAgICAg
ICAgICAgaWYgKG1fdXBkYXRlU3RhdHVzID09IERvd25sb2FkaW5nKQotICAgICAgICAgICAgICAg
IHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkRPV05MT0FESU5HX0VWRU5U
LCBmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSk7CisgICAgICAgICAgICAgICAgcG9z
dExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkuZG93bmxvYWRpbmdFdmVudCwgZG9jdW1lbnRMb2Fk
ZXIpOwogICAgICAgICB9CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKICAgICAvLyBEb24ndCBh
Y2Nlc3MgYW55dGhpbmcgb24gZGlzayBpZiBwcml2YXRlIGJyb3dzaW5nIGlzIGVuYWJsZWQuCi0g
ICAgaWYgKGZyYW1lLT5wYWdlKCktPnVzZXNFcGhlbWVyYWxTZXNzaW9uKCkgfHwgIWZyYW1lLT5k
b2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5jYW5BY2Nlc3NBcHBsaWNhdGlvbkNhY2hlKGZy
YW1lLT50cmVlKCkudG9wKCkuZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSkpIHsKKyAgICBp
ZiAoZnJhbWUucGFnZSgpLT51c2VzRXBoZW1lcmFsU2Vzc2lvbigpIHx8ICFmcmFtZS5kb2N1bWVu
dCgpLT5zZWN1cml0eU9yaWdpbigpLT5jYW5BY2Nlc3NBcHBsaWNhdGlvbkNhY2hlKGZyYW1lLnRy
ZWUoKS50b3AoKS5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpKSkgewogICAgICAgICBBU1NF
UlQobV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLmlzRW1wdHkoKSk7CiAgICAgICAgIEFT
U0VSVChtX3BlbmRpbmdFbnRyaWVzLmlzRW1wdHkoKSk7CiAgICAgICAgIEFTU0VSVCghbV9jYWNo
ZUJlaW5nVXBkYXRlZCk7Ci0gICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNo
ZUhvc3Q6OkNIRUNLSU5HX0VWRU5ULCBmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSk7
Ci0gICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkVSUk9SX0VW
RU5ULCBmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSk7CisgICAgICAgIHBvc3RMaXN0
ZW5lclRhc2soZXZlbnROYW1lcygpLmNoZWNraW5nRXZlbnQsIGRvY3VtZW50TG9hZGVyKTsKKyAg
ICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkuZXJyb3JFdmVudCwgZG9jdW1lbnRM
b2FkZXIpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCiAgICAgQVNTRVJUKCFtX2ZyYW1lKTsK
LSAgICBtX2ZyYW1lID0gZnJhbWU7CisgICAgbV9mcmFtZSA9ICZmcmFtZTsKIAogICAgIHNldFVw
ZGF0ZVN0YXR1cyhDaGVja2luZyk7CiAKLSAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9u
Q2FjaGVIb3N0OjpDSEVDS0lOR19FVkVOVCwgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsK
KyAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5jaGVja2luZ0V2ZW50LCBtX2Fzc29j
aWF0ZWREb2N1bWVudExvYWRlcnMpOwogICAgIGlmICghbV9uZXdlc3RDYWNoZSkgewogICAgICAg
ICBBU1NFUlQodXBkYXRlT3B0aW9uID09IEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVXaXRoQnJvd3Np
bmdDb250ZXh0KTsKLSAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hlSG9z
dDo6Q0hFQ0tJTkdfRVZFTlQsIGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKTsKKyAg
ICAgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkuY2hlY2tpbmdFdmVudCwgZG9jdW1l
bnRMb2FkZXIpOwogICAgIH0KICAgICAKICAgICBBU1NFUlQoIW1fbWFuaWZlc3RIYW5kbGUpOwpA
QCAtNDQ5LDcgKzQ0Myw3IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjp1cGRhdGUoRnJh
bWUqIGZyYW1lLCBBcHBsaWNhdGlvbkNhY2hlVXBkYXRlT3B0aW9uIHVwCiAgICAgbV9tYW5pZmVz
dEhhbmRsZSA9IGNyZWF0ZVJlc291cmNlSGFuZGxlKG1fbWFuaWZlc3RVUkwsIG1fbmV3ZXN0Q2Fj
aGUgPyBtX25ld2VzdENhY2hlLT5tYW5pZmVzdFJlc291cmNlKCkgOiAwKTsKIH0KIAotdm9pZCBB
cHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFib3J0KEZyYW1lKiBmcmFtZSkKK3ZvaWQgQXBwbGljYXRp
b25DYWNoZUdyb3VwOjphYm9ydChGcmFtZSYgZnJhbWUpCiB7CiAgICAgaWYgKG1fdXBkYXRlU3Rh
dHVzID09IElkbGUpCiAgICAgICAgIHJldHVybjsKQEAgLTQ1OCw3ICs0NTIsNyBAQCB2b2lkIEFw
cGxpY2F0aW9uQ2FjaGVHcm91cDo6YWJvcnQoRnJhbWUqIGZyYW1lKQogICAgIGlmIChtX2NvbXBs
ZXRpb25UeXBlICE9IE5vbmUpCiAgICAgICAgIHJldHVybjsKIAotICAgIGZyYW1lLT5kb2N1bWVu
dCgpLT5hZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpBcHBDYWNoZSwgTWVzc2FnZUxl
dmVsOjpEZWJ1ZywgQVNDSUlMaXRlcmFsKCJBcHBsaWNhdGlvbiBDYWNoZSBkb3dubG9hZCBwcm9j
ZXNzIHdhcyBhYm9ydGVkLiIpKTsKKyAgICBmcmFtZS5kb2N1bWVudCgpLT5hZGRDb25zb2xlTWVz
c2FnZShNZXNzYWdlU291cmNlOjpBcHBDYWNoZSwgTWVzc2FnZUxldmVsOjpEZWJ1ZywgQVNDSUlM
aXRlcmFsKCJBcHBsaWNhdGlvbiBDYWNoZSBkb3dubG9hZCBwcm9jZXNzIHdhcyBhYm9ydGVkLiIp
KTsKICAgICBjYWNoZVVwZGF0ZUZhaWxlZCgpOwogfQogCkBAIC01MDIsOCArNDk2LDcgQEAgdm9p
ZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUhhbmRs
ZSogaGFuZGxlLCBSZXNvdXJjZVIKICAgICBBU1NFUlQoaGFuZGxlID09IG1fY3VycmVudEhhbmRs
ZSk7CiAKICAgICBVUkwgdXJsKGhhbmRsZS0+Zmlyc3RSZXF1ZXN0KCkudXJsKCkpOwotICAgIGlm
ICh1cmwuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkpCi0gICAgICAgIHVybC5yZW1vdmVGcmFnbWVu
dElkZW50aWZpZXIoKTsKKyAgICB1cmwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CiAgICAg
CiAgICAgQVNTRVJUKCFtX2N1cnJlbnRSZXNvdXJjZSk7CiAgICAgQVNTRVJUKG1fcGVuZGluZ0Vu
dHJpZXMuY29udGFpbnModXJsKSk7CkBAIC01OTMsNyArNTg2LDcgQEAgdm9pZCBBcHBsaWNhdGlv
bkNhY2hlR3JvdXA6OmRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUqIGhhbmRsZSwgZG91
YmxlIGZpbmkKICAgICAKICAgICBBU1NFUlQobV9jYWNoZUJlaW5nVXBkYXRlZCk7CiAKLSAgICBt
X2NhY2hlQmVpbmdVcGRhdGVkLT5hZGRSZXNvdXJjZShXVEZNb3ZlKG1fY3VycmVudFJlc291cmNl
KSk7CisgICAgbV9jYWNoZUJlaW5nVXBkYXRlZC0+YWRkUmVzb3VyY2UobV9jdXJyZW50UmVzb3Vy
Y2UucmVsZWFzZU5vbk51bGwoKSk7CiAgICAgbV9jdXJyZW50SGFuZGxlID0gbnVsbHB0cjsKIAog
ICAgIC8vIFdoaWxlIGRvd25sb2FkaW5nIGNoZWNrIHRvIHNlZSBpZiB3ZSBoYXZlIGV4Y2VlZGVk
IHRoZSBhdmFpbGFibGUgcXVvdGEuCkBAIC02MjYsOCArNjE5LDcgQEAgdm9pZCBBcHBsaWNhdGlv
bkNhY2hlR3JvdXA6OmRpZEZhaWwoUmVzb3VyY2VIYW5kbGUqIGhhbmRsZSwgY29uc3QgUmVzb3Vy
Y2VFcnJvciYKIAogICAgIHVuc2lnbmVkIHR5cGUgPSBtX2N1cnJlbnRSZXNvdXJjZSA/IG1fY3Vy
cmVudFJlc291cmNlLT50eXBlKCkgOiBtX3BlbmRpbmdFbnRyaWVzLmdldChoYW5kbGUtPmZpcnN0
UmVxdWVzdCgpLnVybCgpKTsKICAgICBVUkwgdXJsKGhhbmRsZS0+Zmlyc3RSZXF1ZXN0KCkudXJs
KCkpOwotICAgIGlmICh1cmwuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkpCi0gICAgICAgIHVybC5y
ZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsKKyAgICB1cmwucmVtb3ZlRnJhZ21lbnRJZGVudGlm
aWVyKCk7CiAKICAgICBBU1NFUlQoIW1fY3VycmVudFJlc291cmNlIHx8ICFtX3BlbmRpbmdFbnRy
aWVzLmNvbnRhaW5zKHVybCkpOwogICAgIG1fY3VycmVudFJlc291cmNlID0gbnVsbHB0cjsKQEAg
LTczNCw3ICs3MjYsNyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6ZGlkRmluaXNoTG9h
ZGluZ01hbmlmZXN0KCkKICAgICAvLyBXZSBoYXZlIHRoZSBtYW5pZmVzdCwgbm93IGRvd25sb2Fk
IHRoZSByZXNvdXJjZXMuCiAgICAgc2V0VXBkYXRlU3RhdHVzKERvd25sb2FkaW5nKTsKICAgICAK
LSAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpET1dOTE9BRElOR19F
VkVOVCwgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJzKTsKKyAgICBwb3N0TGlzdGVuZXJUYXNr
KGV2ZW50TmFtZXMoKS5kb3dubG9hZGluZ0V2ZW50LCBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRl
cnMpOwogCiAgICAgQVNTRVJUKG1fcGVuZGluZ0VudHJpZXMuaXNFbXB0eSgpKTsKIApAQCAtODAy
LDggKzc5NCw4IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjptYW5pZmVzdE5vdEZvdW5k
KCkKIHsKICAgICBtYWtlT2Jzb2xldGUoKTsKIAotICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGlj
YXRpb25DYWNoZUhvc3Q6Ok9CU09MRVRFX0VWRU5ULCBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRl
cnMpOwotICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkVSUk9SX0VW
RU5ULCBtX3BlbmRpbmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnMpOworICAgIHBvc3RMaXN0ZW5lclRh
c2soZXZlbnROYW1lcygpLm9ic29sZXRlRXZlbnQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVy
cyk7CisgICAgcG9zdExpc3RlbmVyVGFzayhldmVudE5hbWVzKCkuZXJyb3JFdmVudCwgbV9wZW5k
aW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzKTsKIAogICAgIHN0b3BMb2FkaW5nKCk7CiAKQEAgLTgx
MywxNiArODA1LDE2IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjptYW5pZmVzdE5vdEZv
dW5kKCkKICAgICB3aGlsZSAoIW1fcGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5pc0VtcHR5
KCkpIHsKICAgICAgICAgSGFzaFNldDxEb2N1bWVudExvYWRlcio+OjppdGVyYXRvciBpdCA9IG1f
cGVuZGluZ01hc3RlclJlc291cmNlTG9hZGVycy5iZWdpbigpOwogICAgICAgICAKLSAgICAgICAg
QVNTRVJUKCgqaXQpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5jYW5kaWRhdGVBcHBsaWNhdGlv
bkNhY2hlR3JvdXAoKSA9PSB0aGlzKTsKLSAgICAgICAgQVNTRVJUKCEoKml0KS0+YXBwbGljYXRp
b25DYWNoZUhvc3QoKS0+YXBwbGljYXRpb25DYWNoZSgpKTsKLSAgICAgICAgKCppdCktPmFwcGxp
Y2F0aW9uQ2FjaGVIb3N0KCktPnNldENhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cChudWxs
cHRyKTsKKyAgICAgICAgQVNTRVJUKCgqaXQpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLmNhbmRp
ZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCgpID09IHRoaXMpOworICAgICAgICBBU1NFUlQoISgq
aXQpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLmFwcGxpY2F0aW9uQ2FjaGUoKSk7CisgICAgICAg
ICgqaXQpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLnNldENhbmRpZGF0ZUFwcGxpY2F0aW9uQ2Fj
aGVHcm91cChudWxscHRyKTsKICAgICAgICAgbV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJz
LnJlbW92ZShpdCk7CiAgICAgfQogCiAgICAgbV9kb3dubG9hZGluZ1BlbmRpbmdNYXN0ZXJSZXNv
dXJjZUxvYWRlcnNDb3VudCA9IDA7CiAgICAgc2V0VXBkYXRlU3RhdHVzKElkbGUpOyAgICAKICAg
ICBtX2ZyYW1lID0gbnVsbHB0cjsKLSAgICAKKwogICAgIGlmIChtX2NhY2hlcy5pc0VtcHR5KCkp
IHsKICAgICAgICAgQVNTRVJUKG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycy5pc0VtcHR5KCkp
OwogICAgICAgICBBU1NFUlQoIW1fY2FjaGVCZWluZ1VwZGF0ZWQpOwpAQCAtODQ5LDEzICs4NDEs
MTMgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNoZWNrSWZMb2FkSXNDb21wbGV0ZSgp
CiAKICAgICAgICAgLy8gVGhlIHN0b3JhZ2UgY291bGQgaGF2ZSBiZWVuIG1hbnVhbGx5IGVtcHRp
ZWQgYnkgdGhlIHVzZXIuCiAgICAgICAgIGlmICghbV9zdG9yYWdlSUQpCi0gICAgICAgICAgICBt
X3N0b3JhZ2UtPnN0b3JlTmV3ZXN0Q2FjaGUodGhpcyk7CisgICAgICAgICAgICBtX3N0b3JhZ2Ut
PnN0b3JlTmV3ZXN0Q2FjaGUoKnRoaXMpOwogCi0gICAgICAgIHBvc3RMaXN0ZW5lclRhc2soQXBw
bGljYXRpb25DYWNoZUhvc3Q6Ok5PVVBEQVRFX0VWRU5ULCBtX2Fzc29jaWF0ZWREb2N1bWVudExv
YWRlcnMpOworICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5ub3VwZGF0ZUV2
ZW50LCBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOwogICAgICAgICBicmVhazsKICAgICBj
YXNlIEZhaWx1cmU6CiAgICAgICAgIEFTU0VSVCghbV9jYWNoZUJlaW5nVXBkYXRlZCk7Ci0gICAg
ICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkVSUk9SX0VWRU5ULCBt
X2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOworICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2
ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOwogICAg
ICAgICBpZiAobV9jYWNoZXMuaXNFbXB0eSgpKSB7CiAgICAgICAgICAgICBBU1NFUlQobV9hc3Nv
Y2lhdGVkRG9jdW1lbnRMb2FkZXJzLmlzRW1wdHkoKSk7CiAgICAgICAgICAgICBkZWxldGUgdGhp
czsKQEAgLTg2Nyw3ICs4NTksNyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6Y2hlY2tJ
ZkxvYWRJc0NvbXBsZXRlKCkKIAogICAgICAgICBBU1NFUlQobV9jYWNoZUJlaW5nVXBkYXRlZCk7
CiAgICAgICAgIGlmIChtX21hbmlmZXN0UmVzb3VyY2UpCi0gICAgICAgICAgICBtX2NhY2hlQmVp
bmdVcGRhdGVkLT5zZXRNYW5pZmVzdFJlc291cmNlKFdURk1vdmUobV9tYW5pZmVzdFJlc291cmNl
KSk7CisgICAgICAgICAgICBtX2NhY2hlQmVpbmdVcGRhdGVkLT5zZXRNYW5pZmVzdFJlc291cmNl
KG1fbWFuaWZlc3RSZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICAgICAgZWxzZSB7CiAg
ICAgICAgICAgICAvLyBXZSBjYW4gZ2V0IGhlcmUgYXMgYSByZXN1bHQgb2YgcmV0cnlpbmcgdGhl
IENvbXBsZXRlIHN0ZXAsIGZvbGxvd2luZwogICAgICAgICAgICAgLy8gYSBmYWlsdXJlIG9mIHRo
ZSBjYWNoZSBzdG9yYWdlIHRvIHNhdmUgdGhlIG5ld2VzdCBjYWNoZSBkdWUgdG8gaGl0dGluZwpA
QCAtODg3LDE4ICs4NzksMTggQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNoZWNrSWZM
b2FkSXNDb21wbGV0ZSgpCiAgICAgICAgICAgICBkaWRSZWFjaE9yaWdpblF1b3RhKHRvdGFsU3Bh
Y2VOZWVkZWQpOwogCiAgICAgICAgIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpGYWlsdXJlUmVh
c29uIGZhaWx1cmVSZWFzb247Ci0gICAgICAgIHNldE5ld2VzdENhY2hlKFdURk1vdmUobV9jYWNo
ZUJlaW5nVXBkYXRlZCkpOwotICAgICAgICBpZiAobV9zdG9yYWdlLT5zdG9yZU5ld2VzdENhY2hl
KHRoaXMsIG9sZE5ld2VzdENhY2hlLmdldCgpLCBmYWlsdXJlUmVhc29uKSkgeworICAgICAgICBz
ZXROZXdlc3RDYWNoZShtX2NhY2hlQmVpbmdVcGRhdGVkLnJlbGVhc2VOb25OdWxsKCkpOworICAg
ICAgICBpZiAobV9zdG9yYWdlLT5zdG9yZU5ld2VzdENhY2hlKCp0aGlzLCBvbGROZXdlc3RDYWNo
ZS5nZXQoKSwgZmFpbHVyZVJlYXNvbikpIHsKICAgICAgICAgICAgIC8vIE5ldyBjYWNoZSBzdG9y
ZWQsIG5vdyByZW1vdmUgdGhlIG9sZCBjYWNoZS4KICAgICAgICAgICAgIGlmIChvbGROZXdlc3RD
YWNoZSkKICAgICAgICAgICAgICAgICBtX3N0b3JhZ2UtPnJlbW92ZShvbGROZXdlc3RDYWNoZS5n
ZXQoKSk7CiAKICAgICAgICAgICAgIC8vIEZpcmUgdGhlIGZpbmFsIHByb2dyZXNzIGV2ZW50Lgog
ICAgICAgICAgICAgQVNTRVJUKG1fcHJvZ3Jlc3NEb25lID09IG1fcHJvZ3Jlc3NUb3RhbCk7Ci0g
ICAgICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpQUk9HUkVT
U19FVkVOVCwgbV9wcm9ncmVzc1RvdGFsLCBtX3Byb2dyZXNzRG9uZSwgbV9hc3NvY2lhdGVkRG9j
dW1lbnRMb2FkZXJzKTsKKyAgICAgICAgICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygp
LnByb2dyZXNzRXZlbnQsIG1fcHJvZ3Jlc3NUb3RhbCwgbV9wcm9ncmVzc0RvbmUsIG1fYXNzb2Np
YXRlZERvY3VtZW50TG9hZGVycyk7CiAKICAgICAgICAgICAgIC8vIEZpcmUgdGhlIHN1Y2Nlc3Mg
ZXZlbnQuCi0gICAgICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGlzVXBncmFkZUF0dGVtcHQgPyBB
cHBsaWNhdGlvbkNhY2hlSG9zdDo6VVBEQVRFUkVBRFlfRVZFTlQgOiBBcHBsaWNhdGlvbkNhY2hl
SG9zdDo6Q0FDSEVEX0VWRU5ULCBtX2Fzc29jaWF0ZWREb2N1bWVudExvYWRlcnMpOworICAgICAg
ICAgICAgcG9zdExpc3RlbmVyVGFzayhpc1VwZ3JhZGVBdHRlbXB0ID8gZXZlbnROYW1lcygpLnVw
ZGF0ZXJlYWR5RXZlbnQgOiBldmVudE5hbWVzKCkuY2FjaGVkRXZlbnQsIG1fYXNzb2NpYXRlZERv
Y3VtZW50TG9hZGVycyk7CiAgICAgICAgICAgICAvLyBJdCBpcyBjbGVhciB0aGF0IHRoZSBvcmln
aW4gcXVvdGEgd2FzIG5vdCByZWFjaGVkLCBzbyBjbGVhciB0aGUgZmxhZyBpZiBpdCB3YXMgc2V0
LgogICAgICAgICAgICAgbV9vcmlnaW5RdW90YUV4Y2VlZGVkUHJldmlvdXNseSA9IGZhbHNlOwog
ICAgICAgICB9IGVsc2UgewpAQCAtOTE5LDEwICs5MTEsOCBAQCB2b2lkIEFwcGxpY2F0aW9uQ2Fj
aGVHcm91cDo6Y2hlY2tJZkxvYWRJc0NvbXBsZXRlKCkKIAogICAgICAgICAgICAgICAgIC8vIFNh
dmUgYSByZWZlcmVuY2UgdG8gdGhlIG5ldyBjYWNoZS4KICAgICAgICAgICAgICAgICBtX2NhY2hl
QmVpbmdVcGRhdGVkID0gV1RGTW92ZShtX25ld2VzdENhY2hlKTsKLSAgICAgICAgICAgICAgICBp
ZiAob2xkTmV3ZXN0Q2FjaGUpIHsKLSAgICAgICAgICAgICAgICAgICAgLy8gUmVpbnN0YXRlIHRo
ZSBvbGROZXdlc3RDYWNoZS4KLSAgICAgICAgICAgICAgICAgICAgc2V0TmV3ZXN0Q2FjaGUoV1RG
TW92ZShvbGROZXdlc3RDYWNoZSkpOwotICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAg
ICBpZiAob2xkTmV3ZXN0Q2FjaGUpCisgICAgICAgICAgICAgICAgICAgIHNldE5ld2VzdENhY2hl
KG9sZE5ld2VzdENhY2hlLnJlbGVhc2VOb25OdWxsKCkpOwogICAgICAgICAgICAgICAgIHNjaGVk
dWxlUmVhY2hlZE1heEFwcENhY2hlU2l6ZUNhbGxiYWNrKCk7CiAgICAgICAgICAgICAgICAgcmV0
dXJuOwogICAgICAgICAgICAgfQpAQCAtOTMwLDcgKzkyMCw3IEBAIHZvaWQgQXBwbGljYXRpb25D
YWNoZUdyb3VwOjpjaGVja0lmTG9hZElzQ29tcGxldGUoKQogICAgICAgICAgICAgLy8gUnVuIHRo
ZSAiY2FjaGUgZmFpbHVyZSBzdGVwcyIKICAgICAgICAgICAgIC8vIEZpcmUgdGhlIGVycm9yIGV2
ZW50cyB0byBhbGwgcGVuZGluZyBtYXN0ZXIgZW50cmllcywgYXMgd2VsbCBhbnkgb3RoZXIgY2Fj
aGUgaG9zdHMKICAgICAgICAgICAgIC8vIGN1cnJlbnRseSBhc3NvY2lhdGVkIHdpdGggYSBjYWNo
ZSBpbiB0aGlzIGdyb3VwLgotICAgICAgICAgICAgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlv
bkNhY2hlSG9zdDo6RVJST1JfRVZFTlQsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9hZGVycyk7Cisg
ICAgICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBtX2Fz
c29jaWF0ZWREb2N1bWVudExvYWRlcnMpOwogICAgICAgICAgICAgLy8gRGlzYXNzb2NpYXRlIHRo
ZSBwZW5kaW5nIG1hc3RlciBlbnRyaWVzIGZyb20gdGhlIGZhaWxlZCBuZXcgY2FjaGUuIE5vdGUg
dGhhdAogICAgICAgICAgICAgLy8gYWxsIG90aGVyIGxvYWRlcnMgaW4gdGhlIG1fYXNzb2NpYXRl
ZERvY3VtZW50TG9hZGVycyBhcmUgc3RpbGwgYXNzb2NpYXRlZCB3aXRoCiAgICAgICAgICAgICAv
LyBzb21lIG90aGVyIGNhY2hlIGluIHRoaXMgZ3JvdXAuIFRoZXkgYXJlIG5vdCBhc3NvY2lhdGVk
IHdpdGggdGhlIGZhaWxlZCBuZXcgY2FjaGUuCkBAIC05MzksMTIgKzkyOSwxMiBAQCB2b2lkIEFw
cGxpY2F0aW9uQ2FjaGVHcm91cDo6Y2hlY2tJZkxvYWRJc0NvbXBsZXRlKCkKICAgICAgICAgICAg
IFZlY3RvcjxEb2N1bWVudExvYWRlcio+IGxvYWRlcnM7CiAgICAgICAgICAgICBjb3B5VG9WZWN0
b3IobV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzLCBsb2FkZXJzKTsKICAgICAgICAgICAg
IGZvciAoYXV0byYgbG9hZGVyIDogbG9hZGVycykKLSAgICAgICAgICAgICAgICBkaXNhc3NvY2lh
dGVEb2N1bWVudExvYWRlcihsb2FkZXIpOyAvLyBUaGlzIGNhbiBkZWxldGUgdGhpcyBncm91cC4K
KyAgICAgICAgICAgICAgICBkaXNhc3NvY2lhdGVEb2N1bWVudExvYWRlcigqbG9hZGVyKTsgLy8g
VGhpcyBjYW4gZGVsZXRlIHRoaXMgZ3JvdXAuCiAKICAgICAgICAgICAgIC8vIFJlaW5zdGF0ZSB0
aGUgb2xkTmV3ZXN0Q2FjaGUsIGlmIHRoZXJlIHdhcyBvbmUuCiAgICAgICAgICAgICBpZiAob2xk
TmV3ZXN0Q2FjaGUpIHsKICAgICAgICAgICAgICAgICAvLyBUaGlzIHdpbGwgZGlzY2FyZCB0aGUg
ZmFpbGVkIG5ldyBjYWNoZS4KLSAgICAgICAgICAgICAgICBzZXROZXdlc3RDYWNoZShXVEZNb3Zl
KG9sZE5ld2VzdENhY2hlKSk7CisgICAgICAgICAgICAgICAgc2V0TmV3ZXN0Q2FjaGUob2xkTmV3
ZXN0Q2FjaGUucmVsZWFzZU5vbk51bGwoKSk7CiAgICAgICAgICAgICB9IGVsc2UgewogICAgICAg
ICAgICAgICAgIC8vIFdlIG11c3QgaGF2ZSBiZWVuIGRlbGV0ZWQgYnkgdGhlIGxhc3QgY2FsbCB0
byBkaXNhc3NvY2lhdGVEb2N1bWVudExvYWRlcigpLgogICAgICAgICAgICAgICAgIHJldHVybjsK
QEAgLTk3MywxNCArOTYzLDEzIEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzdGFydExv
YWRpbmdFbnRyeSgpCiAgICAgICAgIHJldHVybjsKICAgICB9CiAgICAgCi0gICAgRW50cnlNYXA6
OmNvbnN0X2l0ZXJhdG9yIGl0ID0gbV9wZW5kaW5nRW50cmllcy5iZWdpbigpOworICAgIGF1dG8g
Zmlyc3RQZW5kaW5nRW50cnlVUkwgPSBtX3BlbmRpbmdFbnRyaWVzLmJlZ2luKCktPmtleTsKIAot
ICAgIHBvc3RMaXN0ZW5lclRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OlBST0dSRVNTX0VWRU5U
LCBtX3Byb2dyZXNzVG90YWwsIG1fcHJvZ3Jlc3NEb25lLCBtX2Fzc29jaWF0ZWREb2N1bWVudExv
YWRlcnMpOworICAgIHBvc3RMaXN0ZW5lclRhc2soZXZlbnROYW1lcygpLnByb2dyZXNzRXZlbnQs
IG1fcHJvZ3Jlc3NUb3RhbCwgbV9wcm9ncmVzc0RvbmUsIG1fYXNzb2NpYXRlZERvY3VtZW50TG9h
ZGVycyk7CiAgICAgbV9wcm9ncmVzc0RvbmUrKzsKIAogICAgIEFTU0VSVCghbV9jdXJyZW50SGFu
ZGxlKTsKLSAgICAKLSAgICBtX2N1cnJlbnRIYW5kbGUgPSBjcmVhdGVSZXNvdXJjZUhhbmRsZShV
UkwoUGFyc2VkVVJMU3RyaW5nLCBpdC0+a2V5KSwgbV9uZXdlc3RDYWNoZSA/IG1fbmV3ZXN0Q2Fj
aGUtPnJlc291cmNlRm9yVVJMKGl0LT5rZXkpIDogMCk7CisgICAgbV9jdXJyZW50SGFuZGxlID0g
Y3JlYXRlUmVzb3VyY2VIYW5kbGUoVVJMKFBhcnNlZFVSTFN0cmluZywgZmlyc3RQZW5kaW5nRW50
cnlVUkwpLCBtX25ld2VzdENhY2hlID8gbV9uZXdlc3RDYWNoZS0+cmVzb3VyY2VGb3JVUkwoZmly
c3RQZW5kaW5nRW50cnlVUkwpIDogMCk7CiB9CiAKIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3Vw
OjpkZWxpdmVyRGVsYXllZE1haW5SZXNvdXJjZXMoKQpAQCAtOTg4LDE5ICs5NzcsMTUgQEAgdm9p
ZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRlbGl2ZXJEZWxheWVkTWFpblJlc291cmNlcygpCiAg
ICAgLy8gTmVlZCB0byBjb3B5IGxvYWRlcnMsIGJlY2F1c2UgdGhlIGNhY2hlIGdyb3VwIG1heSBi
ZSBkZXN0cm95ZWQgYXQgdGhlIGVuZCBvZiBpdGVyYXRpb24uCiAgICAgVmVjdG9yPERvY3VtZW50
TG9hZGVyKj4gbG9hZGVyczsKICAgICBjb3B5VG9WZWN0b3IobV9wZW5kaW5nTWFzdGVyUmVzb3Vy
Y2VMb2FkZXJzLCBsb2FkZXJzKTsKLSAgICBzaXplX3QgY291bnQgPSBsb2FkZXJzLnNpemUoKTsK
LSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSAhPSBjb3VudDsgKytpKSB7Ci0gICAgICAgIERvY3Vt
ZW50TG9hZGVyKiBsb2FkZXIgPSBsb2FkZXJzW2ldOworICAgIGZvciAoYXV0byogbG9hZGVyIDog
bG9hZGVycykgewogICAgICAgICBpZiAobG9hZGVyLT5pc0xvYWRpbmdNYWluUmVzb3VyY2UoKSkK
ICAgICAgICAgICAgIGNvbnRpbnVlOwotCi0gICAgICAgIGNvbnN0IFJlc291cmNlRXJyb3ImIGVy
cm9yID0gbG9hZGVyLT5tYWluRG9jdW1lbnRFcnJvcigpOwotICAgICAgICBpZiAoZXJyb3IuaXNO
dWxsKCkpCi0gICAgICAgICAgICBmaW5pc2hlZExvYWRpbmdNYWluUmVzb3VyY2UobG9hZGVyKTsK
KyAgICAgICAgaWYgKGxvYWRlci0+bWFpbkRvY3VtZW50RXJyb3IoKS5pc051bGwoKSkKKyAgICAg
ICAgICAgIGZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZSgqbG9hZGVyKTsKICAgICAgICAgZWxz
ZQotICAgICAgICAgICAgZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZShsb2FkZXIpOworICAgICAg
ICAgICAgZmFpbGVkTG9hZGluZ01haW5SZXNvdXJjZSgqbG9hZGVyKTsKICAgICB9Ci0gICAgaWYg
KCFjb3VudCkKKyAgICBpZiAobG9hZGVycy5pc0VtcHR5KCkpCiAgICAgICAgIGNoZWNrSWZMb2Fk
SXNDb21wbGV0ZSgpOwogfQogCkBAIC0xMDA4LDEzICs5OTMsMTIgQEAgdm9pZCBBcHBsaWNhdGlv
bkNhY2hlR3JvdXA6OmFkZEVudHJ5KGNvbnN0IFN0cmluZyYgdXJsLCB1bnNpZ25lZCB0eXBlKQog
ewogICAgIEFTU0VSVChtX2NhY2hlQmVpbmdVcGRhdGVkKTsKICAgICBBU1NFUlQoIVVSTChQYXJz
ZWRVUkxTdHJpbmcsIHVybCkuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkpOwotICAgIAorCiAgICAg
Ly8gRG9uJ3QgYWRkIHRoZSBVUkwgaWYgd2UgYWxyZWFkeSBoYXZlIGFuIG1hc3RlciByZXNvdXJj
ZSBpbiB0aGUgY2FjaGUKICAgICAvLyAoaS5lLiwgdGhlIG1haW4gcmVzb3VyY2UgZmluaXNoZWQg
bG9hZGluZyBiZWZvcmUgdGhlIG1hbmlmZXN0KS4KLSAgICBpZiAoQXBwbGljYXRpb25DYWNoZVJl
c291cmNlKiByZXNvdXJjZSA9IG1fY2FjaGVCZWluZ1VwZGF0ZWQtPnJlc291cmNlRm9yVVJMKHVy
bCkpIHsKKyAgICBpZiAoYXV0byogcmVzb3VyY2UgPSBtX2NhY2hlQmVpbmdVcGRhdGVkLT5yZXNv
dXJjZUZvclVSTCh1cmwpKSB7CiAgICAgICAgIEFTU0VSVChyZXNvdXJjZS0+dHlwZSgpICYgQXBw
bGljYXRpb25DYWNoZVJlc291cmNlOjpNYXN0ZXIpOwogICAgICAgICBBU1NFUlQoIW1fZnJhbWUt
PmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCktPmlzTG9hZGluZ01haW5SZXNvdXJjZSgpKTsKLSAg
ICAKICAgICAgICAgcmVzb3VyY2UtPmFkZFR5cGUodHlwZSk7CiAgICAgICAgIHJldHVybjsKICAg
ICB9CkBAIC0xMDI1LDExICsxMDA5LDggQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFk
ZEVudHJ5KGNvbnN0IFN0cmluZyYgdXJsLCB1bnNpZ25lZCB0eXBlKQogICAgICAgICBtX21hbmlm
ZXN0UmVzb3VyY2UtPmFkZFR5cGUodHlwZSk7CiAgICAgICAgIHJldHVybjsKICAgICB9Ci0gICAg
Ci0gICAgRW50cnlNYXA6OkFkZFJlc3VsdCByZXN1bHQgPSBtX3BlbmRpbmdFbnRyaWVzLmFkZCh1
cmwsIHR5cGUpOwotICAgIAotICAgIGlmICghcmVzdWx0LmlzTmV3RW50cnkpCi0gICAgICAgIHJl
c3VsdC5pdGVyYXRvci0+dmFsdWUgfD0gdHlwZTsKKworICAgIG1fcGVuZGluZ0VudHJpZXMuYWRk
KHVybCwgdHlwZSkuaXRlcmF0b3ItPnZhbHVlIHw9IHR5cGU7CiB9CiAKIHZvaWQgQXBwbGljYXRp
b25DYWNoZUdyb3VwOjphc3NvY2lhdGVEb2N1bWVudExvYWRlcldpdGhDYWNoZShEb2N1bWVudExv
YWRlciogbG9hZGVyLCBBcHBsaWNhdGlvbkNhY2hlKiBjYWNoZSkKQEAgLTEwNDAsNjMgKzEwMjEs
NjMgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmFzc29jaWF0ZURvY3VtZW50TG9hZGVy
V2l0aENhY2hlKERvY3VtZW50TG9hZGVyKiBsb2EKIAogICAgIEFTU0VSVCghbV9pc09ic29sZXRl
KTsKIAotICAgIGxvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+c2V0QXBwbGljYXRpb25D
YWNoZShjYWNoZSk7CisgICAgbG9hZGVyLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLnNldEFwcGxp
Y2F0aW9uQ2FjaGUoY2FjaGUpOwogCiAgICAgQVNTRVJUKCFtX2Fzc29jaWF0ZWREb2N1bWVudExv
YWRlcnMuY29udGFpbnMobG9hZGVyKSk7CiAgICAgbV9hc3NvY2lhdGVkRG9jdW1lbnRMb2FkZXJz
LmFkZChsb2FkZXIpOwogfQogCi1jbGFzcyBDaHJvbWVDbGllbnRDYWxsYmFja1RpbWVyOiBwdWJs
aWMgVGltZXJCYXNlIHsKK2NsYXNzIENocm9tZUNsaWVudENhbGxiYWNrVGltZXIgZmluYWwgOiBw
dWJsaWMgVGltZXJCYXNlIHsKIHB1YmxpYzoKLSAgICBDaHJvbWVDbGllbnRDYWxsYmFja1RpbWVy
KEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogY2FjaGVHcm91cCkKLSAgICAgICAgOiBtX2NhY2hlR3Jv
dXAoY2FjaGVHcm91cCkKKyAgICBDaHJvbWVDbGllbnRDYWxsYmFja1RpbWVyKEFwcGxpY2F0aW9u
Q2FjaGVHcm91cCYgZ3JvdXApCisgICAgICAgIDogbV9ncm91cChncm91cCkKICAgICB7CiAgICAg
fQogCiBwcml2YXRlOgotICAgIHZvaWQgZmlyZWQoKSBvdmVycmlkZQorICAgIHZvaWQgZmlyZWQo
KSBmaW5hbAogICAgIHsKLSAgICAgICAgbV9jYWNoZUdyb3VwLT5kaWRSZWFjaE1heEFwcENhY2hl
U2l6ZSgpOworICAgICAgICBtX2dyb3VwLmRpZFJlYWNoTWF4QXBwQ2FjaGVTaXplKCk7CiAgICAg
ICAgIGRlbGV0ZSB0aGlzOwogICAgIH0KLSAgICAvLyBOb3RlIHRoYXQgdGhlcmUgaXMgbm8gbmVl
ZCB0byB1c2UgYSBSZWZQdHIgaGVyZS4gVGhlIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCBpbnN0YW5j
ZSBpcyBndWFyYW50ZWVkCi0gICAgLy8gdG8gYmUgYWxpdmUgd2hlbiB0aGUgdGltZXIgZmlyZXMg
c2luY2UgaW52b2tpbmcgdGhlIENocm9tZUNsaWVudCBjYWxsYmFjayBpcyBwYXJ0IG9mIGl0cyBu
b3JtYWwKKworICAgIC8vIE5vdGUgdGhhdCB0aGVyZSBpcyBubyBuZWVkIHRvIHVzZSBhIFJlZiBo
ZXJlLiBUaGUgQXBwbGljYXRpb25DYWNoZUdyb3VwIGluc3RhbmNlIGlzIGd1YXJhbnRlZWQKKyAg
ICAvLyB0byBiZSBhbGl2ZSB3aGVuIHRoZSB0aW1lciBmaXJlcyBzaW5jZSBpbnZva2luZyB0aGUg
Y2FsbGJhY2sgaXMgcGFydCBvZiBpdHMgbm9ybWFsCiAgICAgLy8gdXBkYXRlIG1hY2hpbmVyeSBh
bmQgbm90aGluZyBjYW4geWV0IGNhdXNlIGl0IHRvIGdldCBkZWxldGVkLgotICAgIEFwcGxpY2F0
aW9uQ2FjaGVHcm91cCogbV9jYWNoZUdyb3VwOworICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCYg
bV9ncm91cDsKIH07CiAKIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzY2hlZHVsZVJlYWNo
ZWRNYXhBcHBDYWNoZVNpemVDYWxsYmFjaygpCiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgp
KTsKLSAgICBDaHJvbWVDbGllbnRDYWxsYmFja1RpbWVyKiB0aW1lciA9IG5ldyBDaHJvbWVDbGll
bnRDYWxsYmFja1RpbWVyKHRoaXMpOworICAgIGF1dG8qIHRpbWVyID0gbmV3IENocm9tZUNsaWVu
dENhbGxiYWNrVGltZXIoKnRoaXMpOwogICAgIHRpbWVyLT5zdGFydE9uZVNob3QoMCk7CiAgICAg
Ly8gVGhlIHRpbWVyIHdpbGwgZGVsZXRlIGl0c2VsZiBvbmNlIGl0IGZpcmVzLgogfQogCi12b2lk
IEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6cG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNhY2hl
SG9zdDo6RXZlbnRJRCBldmVudElELCBpbnQgcHJvZ3Jlc3NUb3RhbCwgaW50IHByb2dyZXNzRG9u
ZSwgY29uc3QgSGFzaFNldDxEb2N1bWVudExvYWRlcio+JiBsb2FkZXJTZXQpCit2b2lkIEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cDo6cG9zdExpc3RlbmVyVGFzayhjb25zdCBBdG9taWNTdHJpbmcmIGV2
ZW50VHlwZSwgaW50IHByb2dyZXNzVG90YWwsIGludCBwcm9ncmVzc0RvbmUsIGNvbnN0IEhhc2hT
ZXQ8RG9jdW1lbnRMb2FkZXIqPiYgbG9hZGVyU2V0KQogewogICAgIGZvciAoYXV0byYgbG9hZGVy
IDogbG9hZGVyU2V0KQotICAgICAgICBwb3N0TGlzdGVuZXJUYXNrKGV2ZW50SUQsIHByb2dyZXNz
VG90YWwsIHByb2dyZXNzRG9uZSwgbG9hZGVyKTsKKyAgICAgICAgcG9zdExpc3RlbmVyVGFzayhl
dmVudFR5cGUsIHByb2dyZXNzVG90YWwsIHByb2dyZXNzRG9uZSwgKmxvYWRlcik7CiB9CiAKLXZv
aWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2Fj
aGVIb3N0OjpFdmVudElEIGV2ZW50SUQsIGludCBwcm9ncmVzc1RvdGFsLCBpbnQgcHJvZ3Jlc3NE
b25lLCBEb2N1bWVudExvYWRlciogbG9hZGVyKQordm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6
OnBvc3RMaXN0ZW5lclRhc2soY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGludCBwcm9n
cmVzc1RvdGFsLCBpbnQgcHJvZ3Jlc3NEb25lLCBEb2N1bWVudExvYWRlciYgbG9hZGVyKQogewot
ICAgIEZyYW1lKiBmcmFtZSA9IGxvYWRlci0+ZnJhbWUoKTsKKyAgICBhdXRvKiBmcmFtZSA9IGxv
YWRlci5mcmFtZSgpOwogICAgIGlmICghZnJhbWUpCiAgICAgICAgIHJldHVybjsKICAgICAKLSAg
ICBBU1NFUlQoZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkgPT0gbG9hZGVyKTsKKyAg
ICBBU1NFUlQoZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkgPT0gJmxvYWRlcik7CiAK
LSAgICBSZWZQdHI8RG9jdW1lbnRMb2FkZXI+IGxvYWRlclByb3RlY3Rvcihsb2FkZXIpOwotICAg
IGZyYW1lLT5kb2N1bWVudCgpLT5wb3N0VGFzayhbbG9hZGVyUHJvdGVjdG9yLCBldmVudElELCBw
cm9ncmVzc1RvdGFsLCBwcm9ncmVzc0RvbmVdIChTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250
ZXh0KSB7CisgICAgUmVmUHRyPERvY3VtZW50TG9hZGVyPiBwcm90ZWN0ZWRMb2FkZXIoJmxvYWRl
cik7CisgICAgZnJhbWUtPmRvY3VtZW50KCktPnBvc3RUYXNrKFtwcm90ZWN0ZWRMb2FkZXIsICZl
dmVudFR5cGUsIHByb2dyZXNzVG90YWwsIHByb2dyZXNzRG9uZV0gKFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQmIGNvbnRleHQpIHsKICAgICAgICAgQVNTRVJUX1VOVVNFRChjb250ZXh0LCBjb250ZXh0
LmlzRG9jdW1lbnQoKSk7Ci0gICAgICAgIEZyYW1lKiBmcmFtZSA9IGxvYWRlclByb3RlY3Rvci0+
ZnJhbWUoKTsKKyAgICAgICAgYXV0byogZnJhbWUgPSBwcm90ZWN0ZWRMb2FkZXItPmZyYW1lKCk7
CiAgICAgICAgIGlmICghZnJhbWUpCiAgICAgICAgICAgICByZXR1cm47CiAKLSAgICAgICAgQVNT
RVJUKGZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpID09IGxvYWRlclByb3RlY3Rvcik7
Ci0KLSAgICAgICAgbG9hZGVyUHJvdGVjdG9yLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5ub3Rp
ZnlET01BcHBsaWNhdGlvbkNhY2hlKGV2ZW50SUQsIHByb2dyZXNzVG90YWwsIHByb2dyZXNzRG9u
ZSk7CisgICAgICAgIEFTU0VSVChmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSA9PSBw
cm90ZWN0ZWRMb2FkZXIpOworICAgICAgICBwcm90ZWN0ZWRMb2FkZXItPmFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KCkubm90aWZ5RE9NQXBwbGljYXRpb25DYWNoZShldmVudFR5cGUsIHByb2dyZXNzVG90
YWwsIHByb2dyZXNzRG9uZSk7CiAgICAgfSk7CiB9CiAKQEAgLTExMDgsOCArMTA4OSw3IEBAIHZv
aWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZXRVcGRhdGVTdGF0dXMoVXBkYXRlU3RhdHVzIHN0
YXR1cykKIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpjbGVhclN0b3JhZ2VJRCgpCiB7CiAg
ICAgbV9zdG9yYWdlSUQgPSAwOwotICAgIAotICAgIGZvciAoY29uc3QgYXV0byYgY2FjaGUgOiBt
X2NhY2hlcykKKyAgICBmb3IgKGF1dG8mIGNhY2hlIDogbV9jYWNoZXMpCiAgICAgICAgIGNhY2hl
LT5jbGVhclN0b3JhZ2VJRCgpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmgKaW5kZXggYjA2NDRjNDZjODY2OTFj
YThkMDA5MzU1NzY4ZmI1ODkxNmRmNzliMS4uZmM4NTFkYTdjZmE4YzQzMzJmNjg1ZWEyOTEyMmUz
N2Q0ZGI3YWFhMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0Fw
cGxpY2F0aW9uQ2FjaGVHcm91cC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNo
ZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmln
aHQgKEMpIDIwMDgsIDIwMDksIDIwMTAgQXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgor
ICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVk
LgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC00OSw4ICs0OSw5IEBAIGVudW0g
QXBwbGljYXRpb25DYWNoZVVwZGF0ZU9wdGlvbiB7CiAgICAgQXBwbGljYXRpb25DYWNoZVVwZGF0
ZVdpdGhvdXRCcm93c2luZ0NvbnRleHQKIH07CiAKLWNsYXNzIEFwcGxpY2F0aW9uQ2FjaGVHcm91
cCA6IFJlc291cmNlSGFuZGxlQ2xpZW50IHsKLSAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShBcHBs
aWNhdGlvbkNhY2hlR3JvdXApOyBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKK2NsYXNzIEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cCBmaW5hbCA6IHByaXZhdGUgUmVzb3VyY2VIYW5kbGVDbGllbnQgewor
ICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCk7CisgICAgV1RG
X01BS0VfRkFTVF9BTExPQ0FURUQ7CiBwdWJsaWM6CiAgICAgZXhwbGljaXQgQXBwbGljYXRpb25D
YWNoZUdyb3VwKFJlZjxBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZT4mJiwgY29uc3QgVVJMJiBtYW5p
ZmVzdFVSTCk7CiAgICAgdmlydHVhbCB+QXBwbGljYXRpb25DYWNoZUdyb3VwKCk7CkBAIC02MCw4
ICs2MSw4IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgQXBwbGljYXRpb25DYWNoZSogY2FjaGVGb3JN
YWluUmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBEb2N1bWVudExvYWRlciopOwogICAg
IHN0YXRpYyBBcHBsaWNhdGlvbkNhY2hlKiBmYWxsYmFja0NhY2hlRm9yTWFpblJlcXVlc3QoY29u
c3QgUmVzb3VyY2VSZXF1ZXN0JiwgRG9jdW1lbnRMb2FkZXIqKTsKICAgICAKLSAgICBzdGF0aWMg
dm9pZCBzZWxlY3RDYWNoZShGcmFtZSosIGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwpOwotICAgIHN0
YXRpYyB2b2lkIHNlbGVjdENhY2hlV2l0aG91dE1hbmlmZXN0VVJMKEZyYW1lKik7CisgICAgc3Rh
dGljIHZvaWQgc2VsZWN0Q2FjaGUoRnJhbWUmLCBjb25zdCBVUkwmIG1hbmlmZXN0VVJMKTsKKyAg
ICBzdGF0aWMgdm9pZCBzZWxlY3RDYWNoZVdpdGhvdXRNYW5pZmVzdFVSTChGcmFtZSYpOwogCiAg
ICAgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UmIHN0b3JhZ2UoKSB7IHJldHVybiBtX3N0b3JhZ2U7
IH0KICAgICBjb25zdCBVUkwmIG1hbmlmZXN0VVJMKCkgY29uc3QgeyByZXR1cm4gbV9tYW5pZmVz
dFVSTDsgfQpAQCAtNzMsMzEgKzc0LDMxIEBAIHB1YmxpYzoKICAgICB1bnNpZ25lZCBzdG9yYWdl
SUQoKSBjb25zdCB7IHJldHVybiBtX3N0b3JhZ2VJRDsgfQogICAgIHZvaWQgY2xlYXJTdG9yYWdl
SUQoKTsKICAgICAKLSAgICB2b2lkIHVwZGF0ZShGcmFtZSosIEFwcGxpY2F0aW9uQ2FjaGVVcGRh
dGVPcHRpb24pOyAvLyBGSVhNRTogRnJhbWUgc2hvdWxkIG5vdCBiZSBuZWVkZWQgd2hlbiB1cGRh
dGluZyB3aXRob3V0IGJyb3dzaW5nIGNvbnRleHQuCi0gICAgdm9pZCBjYWNoZURlc3Ryb3llZChB
cHBsaWNhdGlvbkNhY2hlKik7CisgICAgdm9pZCB1cGRhdGUoRnJhbWUmLCBBcHBsaWNhdGlvbkNh
Y2hlVXBkYXRlT3B0aW9uKTsgLy8gRklYTUU6IEZyYW1lIHNob3VsZCBub3QgYmUgbmVlZGVkIHdo
ZW4gdXBkYXRpbmcgd2l0aG91dCBicm93c2luZyBjb250ZXh0LgorICAgIHZvaWQgY2FjaGVEZXN0
cm95ZWQoQXBwbGljYXRpb25DYWNoZSYpOwogICAgIAotICAgIHZvaWQgYWJvcnQoRnJhbWUqKTsK
KyAgICB2b2lkIGFib3J0KEZyYW1lJik7CiAKLSAgICBib29sIGNhY2hlSXNDb21wbGV0ZShBcHBs
aWNhdGlvbkNhY2hlKiBjYWNoZSkgeyByZXR1cm4gbV9jYWNoZXMuY29udGFpbnMoY2FjaGUpOyB9
CisgICAgYm9vbCBjYWNoZUlzQ29tcGxldGUoQXBwbGljYXRpb25DYWNoZSYgY2FjaGUpIHsgcmV0
dXJuIG1fY2FjaGVzLmNvbnRhaW5zKCZjYWNoZSk7IH0KIAotICAgIHZvaWQgc3RvcExvYWRpbmdJ
bkZyYW1lKEZyYW1lKik7CisgICAgdm9pZCBzdG9wTG9hZGluZ0luRnJhbWUoRnJhbWUmKTsKIAog
ICAgIEFwcGxpY2F0aW9uQ2FjaGUqIG5ld2VzdENhY2hlKCkgY29uc3QgeyByZXR1cm4gbV9uZXdl
c3RDYWNoZS5nZXQoKTsgfQotICAgIHZvaWQgc2V0TmV3ZXN0Q2FjaGUoUGFzc1JlZlB0cjxBcHBs
aWNhdGlvbkNhY2hlPik7CisgICAgdm9pZCBzZXROZXdlc3RDYWNoZShSZWY8QXBwbGljYXRpb25D
YWNoZT4mJik7CiAKICAgICB2b2lkIG1ha2VPYnNvbGV0ZSgpOwogICAgIGJvb2wgaXNPYnNvbGV0
ZSgpIGNvbnN0IHsgcmV0dXJuIG1faXNPYnNvbGV0ZTsgfQogCi0gICAgdm9pZCBmaW5pc2hlZExv
YWRpbmdNYWluUmVzb3VyY2UoRG9jdW1lbnRMb2FkZXIqKTsKLSAgICB2b2lkIGZhaWxlZExvYWRp
bmdNYWluUmVzb3VyY2UoRG9jdW1lbnRMb2FkZXIqKTsKKyAgICB2b2lkIGZpbmlzaGVkTG9hZGlu
Z01haW5SZXNvdXJjZShEb2N1bWVudExvYWRlciYpOworICAgIHZvaWQgZmFpbGVkTG9hZGluZ01h
aW5SZXNvdXJjZShEb2N1bWVudExvYWRlciYpOwogCi0gICAgdm9pZCBkaXNhc3NvY2lhdGVEb2N1
bWVudExvYWRlcihEb2N1bWVudExvYWRlciopOworICAgIHZvaWQgZGlzYXNzb2NpYXRlRG9jdW1l
bnRMb2FkZXIoRG9jdW1lbnRMb2FkZXImKTsKIAogcHJpdmF0ZToKLSAgICBzdGF0aWMgdm9pZCBw
b3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFdmVudElEIGlkLCBjb25zdCBI
YXNoU2V0PERvY3VtZW50TG9hZGVyKj4mIHNldCkgeyBwb3N0TGlzdGVuZXJUYXNrKGlkLCAwLCAw
LCBzZXQpOyB9Ci0gICAgc3RhdGljIHZvaWQgcG9zdExpc3RlbmVyVGFzayhBcHBsaWNhdGlvbkNh
Y2hlSG9zdDo6RXZlbnRJRCBpZCwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlcikgIHsgcG9zdExpc3Rl
bmVyVGFzayhpZCwgMCwgMCwgbG9hZGVyKTsgfQotICAgIHN0YXRpYyB2b2lkIHBvc3RMaXN0ZW5l
clRhc2soQXBwbGljYXRpb25DYWNoZUhvc3Q6OkV2ZW50SUQsIGludCBwcm9ncmVzc1RvdGFsLCBp
bnQgcHJvZ3Jlc3NEb25lLCBjb25zdCBIYXNoU2V0PERvY3VtZW50TG9hZGVyKj4mKTsKLSAgICBz
dGF0aWMgdm9pZCBwb3N0TGlzdGVuZXJUYXNrKEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFdmVudElE
LCBpbnQgcHJvZ3Jlc3NUb3RhbCwgaW50IHByb2dyZXNzRG9uZSwgRG9jdW1lbnRMb2FkZXIqKTsK
KyAgICBzdGF0aWMgdm9pZCBwb3N0TGlzdGVuZXJUYXNrKGNvbnN0IEF0b21pY1N0cmluZyYgZXZl
bnRUeXBlLCBjb25zdCBIYXNoU2V0PERvY3VtZW50TG9hZGVyKj4mIHNldCkgeyBwb3N0TGlzdGVu
ZXJUYXNrKGV2ZW50VHlwZSwgMCwgMCwgc2V0KTsgfQorICAgIHN0YXRpYyB2b2lkIHBvc3RMaXN0
ZW5lclRhc2soY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIERvY3VtZW50TG9hZGVyJiBs
b2FkZXIpICB7IHBvc3RMaXN0ZW5lclRhc2soZXZlbnRUeXBlLCAwLCAwLCBsb2FkZXIpOyB9Cisg
ICAgc3RhdGljIHZvaWQgcG9zdExpc3RlbmVyVGFzayhjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50
VHlwZSwgaW50IHByb2dyZXNzVG90YWwsIGludCBwcm9ncmVzc0RvbmUsIGNvbnN0IEhhc2hTZXQ8
RG9jdW1lbnRMb2FkZXIqPiYpOworICAgIHN0YXRpYyB2b2lkIHBvc3RMaXN0ZW5lclRhc2soY29u
c3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGludCBwcm9ncmVzc1RvdGFsLCBpbnQgcHJvZ3Jl
c3NEb25lLCBEb2N1bWVudExvYWRlciYpOwogCiAgICAgdm9pZCBzY2hlZHVsZVJlYWNoZWRNYXhB
cHBDYWNoZVNpemVDYWxsYmFjaygpOwogCkBAIC0xMzUsNyArMTM2LDcgQEAgcHJpdmF0ZToKIAog
ICAgIFVSTCBtX21hbmlmZXN0VVJMOwogICAgIFJlZlB0cjxTZWN1cml0eU9yaWdpbj4gbV9vcmln
aW47Ci0gICAgVXBkYXRlU3RhdHVzIG1fdXBkYXRlU3RhdHVzOworICAgIFVwZGF0ZVN0YXR1cyBt
X3VwZGF0ZVN0YXR1cyB7IElkbGUgfTsKICAgICAKICAgICAvLyBUaGlzIGlzIHRoZSBuZXdlc3Qg
Y29tcGxldGUgY2FjaGUgaW4gdGhlIGdyb3VwLgogICAgIFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hl
PiBtX25ld2VzdENhY2hlOwpAQCAtMTUwLDI2ICsxNTEsMjUgQEAgcHJpdmF0ZToKICAgICAvLyBM
aXN0IG9mIHBlbmRpbmcgbWFzdGVyIGVudHJpZXMsIHVzZWQgZHVyaW5nIHRoZSB1cGRhdGUgcHJv
Y2VzcyB0byBlbnN1cmUgdGhhdCBuZXcgbWFzdGVyIGVudHJpZXMgYXJlIGNhY2hlZC4KICAgICBI
YXNoU2V0PERvY3VtZW50TG9hZGVyKj4gbV9wZW5kaW5nTWFzdGVyUmVzb3VyY2VMb2FkZXJzOwog
ICAgIC8vIEhvdyBtYW55IG9mIHRoZSBhYm92ZSBwZW5kaW5nIG1hc3RlciBlbnRyaWVzIGhhdmUg
bm90IHlldCBmaW5pc2hlZCBkb3dubG9hZGluZy4KLSAgICBpbnQgbV9kb3dubG9hZGluZ1BlbmRp
bmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnNDb3VudDsKKyAgICBpbnQgbV9kb3dubG9hZGluZ1BlbmRp
bmdNYXN0ZXJSZXNvdXJjZUxvYWRlcnNDb3VudCB7IDAgfTsKICAgICAKICAgICAvLyBUaGVzZSBh
cmUgYWxsIHRoZSBkb2N1bWVudCBsb2FkZXJzIHRoYXQgYXJlIGFzc29jaWF0ZWQgd2l0aCBhIGNh
Y2hlIGluIHRoaXMgZ3JvdXAuCiAgICAgSGFzaFNldDxEb2N1bWVudExvYWRlcio+IG1fYXNzb2Np
YXRlZERvY3VtZW50TG9hZGVyczsKIAogICAgIC8vIFRoZSBVUkxzIGFuZCB0eXBlcyBvZiBwZW5k
aW5nIGNhY2hlIGVudHJpZXMuCi0gICAgdHlwZWRlZiBIYXNoTWFwPFN0cmluZywgdW5zaWduZWQ+
IEVudHJ5TWFwOwotICAgIEVudHJ5TWFwIG1fcGVuZGluZ0VudHJpZXM7CisgICAgSGFzaE1hcDxT
dHJpbmcsIHVuc2lnbmVkPiBtX3BlbmRpbmdFbnRyaWVzOwogICAgIAogICAgIC8vIFRoZSB0b3Rh
bCBudW1iZXIgb2YgaXRlbXMgdG8gYmUgcHJvY2Vzc2VkIHRvIHVwZGF0ZSB0aGUgY2FjaGUgZ3Jv
dXAgYW5kIHRoZSBudW1iZXIgdGhhdCBoYXZlIGJlZW4gZG9uZS4KLSAgICBpbnQgbV9wcm9ncmVz
c1RvdGFsOwotICAgIGludCBtX3Byb2dyZXNzRG9uZTsKKyAgICBpbnQgbV9wcm9ncmVzc1RvdGFs
IHsgMCB9OworICAgIGludCBtX3Byb2dyZXNzRG9uZSB7IDAgfTsKIAogICAgIC8vIEZyYW1lIHVz
ZWQgZm9yIGZldGNoaW5nIHJlc291cmNlcyB3aGVuIHVwZGF0aW5nLgogICAgIC8vIEZJWE1FOiBB
biB1cGRhdGUgc3RhcnRlZCBieSBhIHBhcnRpY3VsYXIgZnJhbWUgc2hvdWxkIG5vdCBzdG9wIGlm
IGl0IGlzIGRlc3Ryb3llZCwgYnV0IHRoZXJlIGFyZSBvdGhlciBmcmFtZXMgYXNzb2NpYXRlZCB3
aXRoIHRoZSBzYW1lIGNhY2hlIGdyb3VwLgotICAgIEZyYW1lKiBtX2ZyYW1lOworICAgIEZyYW1l
KiBtX2ZyYW1lIHsgbnVsbHB0ciB9OwogICAKICAgICAvLyBBbiBvYnNvbGV0ZSBjYWNoZSBncm91
cCBpcyBuZXZlciBzdG9yZWQsIGJ1dCB0aGUgb3Bwb3NpdGUgaXMgbm90IHRydWUgLSBzdG9yaW5n
IG1heSBmYWlsIGZvciBtdWx0aXBsZSByZWFzb25zLCBzdWNoIGFzIGV4Y2VlZGluZyBkaXNrIHF1
b3RhLgotICAgIHVuc2lnbmVkIG1fc3RvcmFnZUlEOwotICAgIGJvb2wgbV9pc09ic29sZXRlOwor
ICAgIHVuc2lnbmVkIG1fc3RvcmFnZUlEIHsgMCB9OworICAgIGJvb2wgbV9pc09ic29sZXRlIHsg
ZmFsc2UgfTsKIAogICAgIC8vIER1cmluZyB1cGRhdGUsIHRoaXMgaXMgdXNlZCB0byBoYW5kbGUg
YXN5bmNocm9ub3VzbHkgYXJyaXZpbmcgcmVzdWx0cy4KICAgICBlbnVtIENvbXBsZXRpb25UeXBl
IHsKQEAgLTE3OCwxMiArMTc4LDEyIEBAIHByaXZhdGU6CiAgICAgICAgIEZhaWx1cmUsCiAgICAg
ICAgIENvbXBsZXRlZAogICAgIH07Ci0gICAgQ29tcGxldGlvblR5cGUgbV9jb21wbGV0aW9uVHlw
ZTsKKyAgICBDb21wbGV0aW9uVHlwZSBtX2NvbXBsZXRpb25UeXBlIHsgTm9uZSB9OwogCiAgICAg
Ly8gVGhpcyBmbGFnIGlzIHNldCBpbW1lZGlhdGVseSBhZnRlciB0aGUgQ2hyb21lQ2xpZW50Ojpy
ZWFjaGVkTWF4QXBwQ2FjaGVTaXplKCkgY2FsbGJhY2sgaXMgaW52b2tlZCBhcyBhIHJlc3VsdCBv
ZiB0aGUgc3RvcmFnZSBsYXllciBmYWlsaW5nIHRvIHNhdmUgYSBjYWNoZQogICAgIC8vIGR1ZSB0
byByZWFjaGluZyB0aGUgbWF4aW11bSBzaXplIG9mIHRoZSBhcHBsaWNhdGlvbiBjYWNoZSBkYXRh
YmFzZSBmaWxlLiBUaGlzIGZsYWcgaXMgdXNlZCBieSBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNo
ZWNrSWZMb2FkSXNDb21wbGV0ZSgpIHRvIGRlY2lkZQogICAgIC8vIHRoZSBjb3Vyc2Ugb2YgYWN0
aW9uIGluIGNhc2Ugb2YgdGhpcyBmYWlsdXJlIChpLmUuIGNhbGwgdGhlIENocm9tZUNsaWVudCBj
YWxsYmFjayBvciBydW4gdGhlIGZhaWx1cmUgc3RlcHMpLgotICAgIGJvb2wgbV9jYWxsZWRSZWFj
aGVkTWF4QXBwQ2FjaGVTaXplOworICAgIGJvb2wgbV9jYWxsZWRSZWFjaGVkTWF4QXBwQ2FjaGVT
aXplIHsgZmFsc2UgfTsKICAgICAKICAgICBSZWZQdHI8UmVzb3VyY2VIYW5kbGU+IG1fY3VycmVu
dEhhbmRsZTsKICAgICBSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiBtX2N1cnJlbnRS
ZXNvdXJjZTsKQEAgLTE5Myw3ICsxOTMsNyBAQCBwcml2YXRlOgogICAgIFJlZlB0cjxSZXNvdXJj
ZUhhbmRsZT4gbV9tYW5pZmVzdEhhbmRsZTsKIAogICAgIGludDY0X3QgbV9hdmFpbGFibGVTcGFj
ZUluUXVvdGE7Ci0gICAgYm9vbCBtX29yaWdpblF1b3RhRXhjZWVkZWRQcmV2aW91c2x5OworICAg
IGJvb2wgbV9vcmlnaW5RdW90YUV4Y2VlZGVkUHJldmlvdXNseSB7IGZhbHNlIH07CiAKICAgICBm
cmllbmQgY2xhc3MgQ2hyb21lQ2xpZW50Q2FsbGJhY2tUaW1lcjsKIH07CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUhvc3QuY3BwIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVIb3N0LmNwcApp
bmRleCA3ZjUwMDRjOTg5Zjk5ZTNlZTc1ZWY1ZDlmYzY1OWZlYTVkNGVjODNiLi45MTE0Njk5Yzg3
ZmY4NWMyMTNlMGRkYWEzOGUzNjg2YzU1ZGJiYThhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUhvc3QuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlSG9zdC5jcHAKQEAgLTMyLDYg
KzMyLDcgQEAKICNpbmNsdWRlICJDb250ZW50U2VjdXJpdHlQb2xpY3kuaCIKICNpbmNsdWRlICJE
b2N1bWVudExvYWRlci5oIgogI2luY2x1ZGUgIkRPTUFwcGxpY2F0aW9uQ2FjaGUuaCIKKyNpbmNs
dWRlICJFdmVudE5hbWVzLmgiCiAjaW5jbHVkZSAiRmlsZVN5c3RlbS5oIgogI2luY2x1ZGUgIkZy
YW1lLmgiCiAjaW5jbHVkZSAiRnJhbWVMb2FkZXIuaCIKQEAgLTQ4LDMxICs0OSwyOSBAQAogbmFt
ZXNwYWNlIFdlYkNvcmUgewogCiBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6QXBwbGljYXRpb25DYWNo
ZUhvc3QoRG9jdW1lbnRMb2FkZXImIGRvY3VtZW50TG9hZGVyKQotICAgIDogbV9kb21BcHBsaWNh
dGlvbkNhY2hlKG51bGxwdHIpCi0gICAgLCBtX2RvY3VtZW50TG9hZGVyKGRvY3VtZW50TG9hZGVy
KQotICAgICwgbV9kZWZlcnNFdmVudHModHJ1ZSkKLSAgICAsIG1fY2FuZGlkYXRlQXBwbGljYXRp
b25DYWNoZUdyb3VwKG51bGxwdHIpCisgICAgOiBtX2RvY3VtZW50TG9hZGVyKGRvY3VtZW50TG9h
ZGVyKQogewogfQogCiBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6fkFwcGxpY2F0aW9uQ2FjaGVIb3N0
KCkKIHsKICAgICBBU1NFUlQoIW1fYXBwbGljYXRpb25DYWNoZSB8fCAhbV9jYW5kaWRhdGVBcHBs
aWNhdGlvbkNhY2hlR3JvdXAgfHwgbV9hcHBsaWNhdGlvbkNhY2hlLT5ncm91cCgpID09IG1fY2Fu
ZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKTsKLQogICAgIGlmIChtX2FwcGxpY2F0aW9uQ2Fj
aGUpCi0gICAgICAgIG1fYXBwbGljYXRpb25DYWNoZS0+Z3JvdXAoKS0+ZGlzYXNzb2NpYXRlRG9j
dW1lbnRMb2FkZXIoJm1fZG9jdW1lbnRMb2FkZXIpOworICAgICAgICBtX2FwcGxpY2F0aW9uQ2Fj
aGUtPmdyb3VwKCktPmRpc2Fzc29jaWF0ZURvY3VtZW50TG9hZGVyKG1fZG9jdW1lbnRMb2FkZXIp
OwogICAgIGVsc2UgaWYgKG1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKQotICAgICAg
ICBtX2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cC0+ZGlzYXNzb2NpYXRlRG9jdW1lbnRM
b2FkZXIoJm1fZG9jdW1lbnRMb2FkZXIpOworICAgICAgICBtX2NhbmRpZGF0ZUFwcGxpY2F0aW9u
Q2FjaGVHcm91cC0+ZGlzYXNzb2NpYXRlRG9jdW1lbnRMb2FkZXIobV9kb2N1bWVudExvYWRlcik7
CiB9CiAKIHZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OnNlbGVjdENhY2hlV2l0aG91dE1hbmlm
ZXN0KCkKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVjdENhY2hlV2l0aG91dE1h
bmlmZXN0VVJMKG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUoKSk7CisgICAgQVNTRVJUKG1fZG9jdW1l
bnRMb2FkZXIuZnJhbWUoKSk7CisgICAgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzZWxlY3RDYWNo
ZVdpdGhvdXRNYW5pZmVzdFVSTCgqbV9kb2N1bWVudExvYWRlci5mcmFtZSgpKTsKIH0KIAogdm9p
ZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c2VsZWN0Q2FjaGVXaXRoTWFuaWZlc3QoY29uc3QgVVJM
JiBtYW5pZmVzdFVSTCkKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnNlbGVjdENhY2hl
KG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUoKSwgbWFuaWZlc3RVUkwpOworICAgIEFTU0VSVChtX2Rv
Y3VtZW50TG9hZGVyLmZyYW1lKCkpOworICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c2VsZWN0
Q2FjaGUoKm1fZG9jdW1lbnRMb2FkZXIuZnJhbWUoKSwgbWFuaWZlc3RVUkwpOwogfQogCiB2b2lk
IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjptYXliZUxvYWRNYWluUmVzb3VyY2UoUmVzb3VyY2VSZXF1
ZXN0JiByZXF1ZXN0LCBTdWJzdGl0dXRlRGF0YSYgc3Vic3RpdHV0ZURhdGEpCkBAIC0xNDAsMTIg
KzEzOSwxMSBAQCBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjptYXliZUxvYWRGYWxsYmFja0Zv
ck1haW5FcnJvcihjb25zdCBSZXNvdXJjZVJlcXVlc3QmCiAKIHZvaWQgQXBwbGljYXRpb25DYWNo
ZUhvc3Q6Om1haW5SZXNvdXJjZURhdGFSZWNlaXZlZChjb25zdCBjaGFyKiwgaW50LCBsb25nIGxv
bmcsIGJvb2wpCiB7Ci0gICAgLy8gVGhpcyBtZXRob2QgaXMgaGVyZSB0byBmYWNpbGl0YXRlIGFs
dGVybmF0ZSBpbXBsZW1ldGF0aW9ucyBvZiB0aGlzIGludGVyZmFjZSBieSB0aGUgaG9zdCBicm93
c2VyLgogfQogCiB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpmYWlsZWRMb2FkaW5nTWFpblJl
c291cmNlKCkKIHsKLSAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwID0gbV9jYW5kaWRh
dGVBcHBsaWNhdGlvbkNhY2hlR3JvdXA7CisgICAgYXV0byogZ3JvdXAgPSBtX2NhbmRpZGF0ZUFw
cGxpY2F0aW9uQ2FjaGVHcm91cDsKICAgICBpZiAoIWdyb3VwICYmIG1fYXBwbGljYXRpb25DYWNo
ZSkgewogICAgICAgICBpZiAobWFpblJlc291cmNlQXBwbGljYXRpb25DYWNoZSgpKSB7CiAgICAg
ICAgICAgICAvLyBFdmVuIHdoZW4gdGhlIG1haW4gcmVzb3VyY2UgaXMgYmVpbmcgbG9hZGVkIGZy
b20gYW4gYXBwbGljYXRpb24gY2FjaGUsIGxvYWRpbmcgY2FuIGZhaWwgaWYgYWJvcnRlZC4KQEAg
LTE1NSwxNyArMTUzLDE3IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmZhaWxlZExvYWRp
bmdNYWluUmVzb3VyY2UoKQogICAgIH0KICAgICAKICAgICBpZiAoZ3JvdXApCi0gICAgICAgIGdy
b3VwLT5mYWlsZWRMb2FkaW5nTWFpblJlc291cmNlKCZtX2RvY3VtZW50TG9hZGVyKTsKKyAgICAg
ICAgZ3JvdXAtPmZhaWxlZExvYWRpbmdNYWluUmVzb3VyY2UobV9kb2N1bWVudExvYWRlcik7CiB9
CiAKIHZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJj
ZSgpCiB7Ci0gICAgQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCA9IGNhbmRpZGF0ZUFwcGxp
Y2F0aW9uQ2FjaGVHcm91cCgpOworICAgIGF1dG8qIGdyb3VwID0gY2FuZGlkYXRlQXBwbGljYXRp
b25DYWNoZUdyb3VwKCk7CiAgICAgaWYgKCFncm91cCAmJiBhcHBsaWNhdGlvbkNhY2hlKCkgJiYg
IW1haW5SZXNvdXJjZUFwcGxpY2F0aW9uQ2FjaGUoKSkKICAgICAgICAgZ3JvdXAgPSBhcHBsaWNh
dGlvbkNhY2hlKCktPmdyb3VwKCk7CiAgICAgCiAgICAgaWYgKGdyb3VwKQotICAgICAgICBncm91
cC0+ZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKCZtX2RvY3VtZW50TG9hZGVyKTsKKyAgICAg
ICAgZ3JvdXAtPmZpbmlzaGVkTG9hZGluZ01haW5SZXNvdXJjZShtX2RvY3VtZW50TG9hZGVyKTsK
IH0KIAogYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWF5YmVMb2FkUmVzb3VyY2UoUmVzb3Vy
Y2VMb2FkZXImIGxvYWRlciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBV
UkwmIG9yaWdpbmFsVVJMKQpAQCAtMTg2LDE3ICsxODQsMTkgQEAgYm9vbCBBcHBsaWNhdGlvbkNh
Y2hlSG9zdDo6bWF5YmVMb2FkUmVzb3VyY2UoUmVzb3VyY2VMb2FkZXImIGxvYWRlciwgY29uc3Qg
UmVzb3UKIAogYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6bWF5YmVMb2FkRmFsbGJhY2tGb3JS
ZWRpcmVjdChSZXNvdXJjZUxvYWRlciogcmVzb3VyY2VMb2FkZXIsIFJlc291cmNlUmVxdWVzdCYg
cmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkKIHsKLSAg
ICBpZiAoIXJlZGlyZWN0UmVzcG9uc2UuaXNOdWxsKCkgJiYgIXByb3RvY29sSG9zdEFuZFBvcnRB
cmVFcXVhbChyZXF1ZXN0LnVybCgpLCByZWRpcmVjdFJlc3BvbnNlLnVybCgpKSkKKyAgICBpZiAo
IXJlZGlyZWN0UmVzcG9uc2UuaXNOdWxsKCkgJiYgIXByb3RvY29sSG9zdEFuZFBvcnRBcmVFcXVh
bChyZXF1ZXN0LnVybCgpLCByZWRpcmVjdFJlc3BvbnNlLnVybCgpKSkgewogICAgICAgICBpZiAo
c2NoZWR1bGVMb2FkRmFsbGJhY2tSZXNvdXJjZUZyb21BcHBsaWNhdGlvbkNhY2hlKHJlc291cmNl
TG9hZGVyKSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KICAgICByZXR1cm4gZmFs
c2U7CiB9CiAKIGJvb2wgQXBwbGljYXRpb25DYWNoZUhvc3Q6Om1heWJlTG9hZEZhbGxiYWNrRm9y
UmVzcG9uc2UoUmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVyLCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJiByZXNwb25zZSkKIHsKLSAgICBpZiAocmVzcG9uc2UuaHR0cFN0YXR1c0NvZGUoKSAv
IDEwMCA9PSA0IHx8IHJlc3BvbnNlLmh0dHBTdGF0dXNDb2RlKCkgLyAxMDAgPT0gNSkKKyAgICBp
ZiAocmVzcG9uc2UuaHR0cFN0YXR1c0NvZGUoKSAvIDEwMCA9PSA0IHx8IHJlc3BvbnNlLmh0dHBT
dGF0dXNDb2RlKCkgLyAxMDAgPT0gNSkgewogICAgICAgICBpZiAoc2NoZWR1bGVMb2FkRmFsbGJh
Y2tSZXNvdXJjZUZyb21BcHBsaWNhdGlvbkNhY2hlKHJlc291cmNlTG9hZGVyKSkKICAgICAgICAg
ICAgIHJldHVybiB0cnVlOworICAgIH0KICAgICByZXR1cm4gZmFsc2U7CiB9CiAKQEAgLTIyMCwx
MSArMjIwLDkgQEAgVVJMIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpjcmVhdGVGaWxlVVJMKGNvbnN0
IFN0cmluZyYgcGF0aCkKICAgICAvLyBhcHAgY2FjaGUgbWVkaWEgZmlsZXMgYXJlIGFsd2F5cyBj
cmVhdGVkIHdpdGggZW5jb2RlRm9yRmlsZU5hbWUoY3JlYXRlQ2Fub25pY2FsVVVJRFN0cmluZygp
KS4KIAogI2lmIFVTRShDRikgJiYgUExBVEZPUk0oV0lOKQotICAgIFJldGFpblB0cjxDRlVSTFJl
Zj4gY2ZVUkwgPSBhZG9wdENGKENGVVJMQ3JlYXRlV2l0aEZpbGVTeXN0ZW1QYXRoKDAsIHBhdGgu
Y3JlYXRlQ0ZTdHJpbmcoKS5nZXQoKSwga0NGVVJMV2luZG93c1BhdGhTdHlsZSwgZmFsc2UpKTsK
LSAgICBVUkwgdXJsKGNmVVJMLmdldCgpKTsKKyAgICBVUkwgdXJsKGFkb3B0Q0YoQ0ZVUkxDcmVh
dGVXaXRoRmlsZVN5c3RlbVBhdGgoMCwgcGF0aC5jcmVhdGVDRlN0cmluZygpLmdldCgpLCBrQ0ZV
UkxXaW5kb3dzUGF0aFN0eWxlLCBmYWxzZSkpLmdldCgpKTsKICNlbHNlCiAgICAgVVJMIHVybDsK
LQogICAgIHVybC5zZXRQcm90b2NvbChBU0NJSUxpdGVyYWwoImZpbGUiKSk7CiAgICAgdXJsLnNl
dFBhdGgocGF0aCk7CiAjZW5kaWYKQEAgLTI0Niw3ICsyNDQsNyBAQCBib29sIEFwcGxpY2F0aW9u
Q2FjaGVIb3N0OjptYXliZUxvYWRTeW5jaHJvbm91c2x5KFJlc291cmNlUmVxdWVzdCYgcmVxdWVz
dCwgUmVzbwogICAgIGlmICghc2hvdWxkTG9hZFJlc291cmNlRnJvbUFwcGxpY2F0aW9uQ2FjaGUo
cmVxdWVzdCwgcmVzb3VyY2UpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAgICBSZWZQdHI8
U2hhcmVkQnVmZmVyPiByZXNwb25zZURhdGEgPSByZXNvdXJjZSA/IGJ1ZmZlckZyb21SZXNvdXJj
ZSgqcmVzb3VyY2UpIDogbnVsbHB0cjsKKyAgICBhdXRvIHJlc3BvbnNlRGF0YSA9IHJlc291cmNl
ID8gYnVmZmVyRnJvbVJlc291cmNlKCpyZXNvdXJjZSkgOiBudWxscHRyOwogICAgIGlmICghcmVz
cG9uc2VEYXRhKSB7CiAgICAgICAgIGVycm9yID0gbV9kb2N1bWVudExvYWRlci5mcmFtZUxvYWRl
cigpLT5jbGllbnQoKS5jYW5ub3RTaG93VVJMRXJyb3IocmVxdWVzdCk7CiAgICAgICAgIHJldHVy
biB0cnVlOwpAQCAtMjg2LDIwICsyODQsMjEgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6
c2V0RE9NQXBwbGljYXRpb25DYWNoZShET01BcHBsaWNhdGlvbkNhY2hlKiBkb21BcHBsaWMKICAg
ICBtX2RvbUFwcGxpY2F0aW9uQ2FjaGUgPSBkb21BcHBsaWNhdGlvbkNhY2hlOwogfQogCi12b2lk
IEFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojpub3RpZnlET01BcHBsaWNhdGlvbkNhY2hlKEV2ZW50SUQg
aWQsIGludCB0b3RhbCwgaW50IGRvbmUpCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojpub3Rp
ZnlET01BcHBsaWNhdGlvbkNhY2hlKGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBpbnQg
dG90YWwsIGludCBkb25lKQogewotICAgIGlmIChpZCAhPSBQUk9HUkVTU19FVkVOVCkKKyAgICBp
ZiAoZXZlbnRUeXBlICE9IGV2ZW50TmFtZXMoKS5wcm9ncmVzc0V2ZW50KQogICAgICAgICBJbnNw
ZWN0b3JJbnN0cnVtZW50YXRpb246OnVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXMobV9kb2N1
bWVudExvYWRlci5mcmFtZSgpKTsKIAogICAgIGlmIChtX2RlZmVyc0V2ZW50cykgewogICAgICAg
ICAvLyBFdmVudCBkaXNwYXRjaGluZyBpcyBkZWZlcnJlZCB1bnRpbCBkb2N1bWVudC5vbmxvYWQg
aGFzIGZpcmVkLgotICAgICAgICBtX2RlZmVycmVkRXZlbnRzLmFwcGVuZChEZWZlcnJlZEV2ZW50
KGlkLCB0b3RhbCwgZG9uZSkpOworICAgICAgICBtX2RlZmVycmVkRXZlbnRzLmFwcGVuZCh7IGV2
ZW50VHlwZSwgdG90YWwsIGRvbmUgfSk7CiAgICAgICAgIHJldHVybjsKICAgICB9Ci0gICAgZGlz
cGF0Y2hET01FdmVudChpZCwgdG90YWwsIGRvbmUpOworCisgICAgZGlzcGF0Y2hET01FdmVudChl
dmVudFR5cGUsIHRvdGFsLCBkb25lKTsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6
c3RvcExvYWRpbmdJbkZyYW1lKEZyYW1lKiBmcmFtZSkKK3ZvaWQgQXBwbGljYXRpb25DYWNoZUhv
c3Q6OnN0b3BMb2FkaW5nSW5GcmFtZShGcmFtZSYgZnJhbWUpCiB7CiAgICAgQVNTRVJUKCFtX2Fw
cGxpY2F0aW9uQ2FjaGUgfHwgIW1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwIHx8IG1f
YXBwbGljYXRpb25DYWNoZS0+Z3JvdXAoKSA9PSBtX2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVH
cm91cCk7CiAKQEAgLTMxMiw1MyArMzExLDY4IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6
OnN0b3BMb2FkaW5nSW5GcmFtZShGcmFtZSogZnJhbWUpCiB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVI
b3N0OjpzdG9wRGVmZXJyaW5nRXZlbnRzKCkKIHsKICAgICBSZWY8RG9jdW1lbnRMb2FkZXI+IHBy
b3RlY3QobV9kb2N1bWVudExvYWRlcik7Ci0gICAgZm9yIChhdXRvJiBldmVudCA6IG1fZGVmZXJy
ZWRFdmVudHMpCi0gICAgICAgIGRpc3BhdGNoRE9NRXZlbnQoZXZlbnQuZXZlbnRJRCwgZXZlbnQu
cHJvZ3Jlc3NUb3RhbCwgZXZlbnQucHJvZ3Jlc3NEb25lKTsKKworICAgIC8vIE5vdGUsIGRvIG5v
dCBjYWNoZSB0aGUgc2l6ZSBpbiBhIGxvY2FsIHZhcmlhYmxlLgorICAgIC8vIFRoaXMgY29kZSBu
ZWVkcyB0byBwcm9wZXJseSBoYW5kbGUgdGhlIGNhc2Ugd2hlcmUgbW9yZSBldmVudHMgYXJlIGFk
ZGVkIHRvCisgICAgLy8gbV9kZWZlcnJlZEV2ZW50cyB3aGlsZSBpdGVyYXRpbmcgaXQuIFRoaXMg
aXMgd2h5IHdlIGRvbid0IHVzZSBhIG1vZGVybiBmb3IgbG9vcC4KKyAgICBmb3IgKHNpemVfdCBp
ID0gMDsgaSA8IG1fZGVmZXJyZWRFdmVudHMuc2l6ZSgpOyArK2kpIHsKKyAgICAgICAgYXV0byYg
ZXZlbnQgPSBtX2RlZmVycmVkRXZlbnRzW2ldOworICAgICAgICBkaXNwYXRjaERPTUV2ZW50KGV2
ZW50LmV2ZW50VHlwZSwgZXZlbnQucHJvZ3Jlc3NUb3RhbCwgZXZlbnQucHJvZ3Jlc3NEb25lKTsK
KyAgICB9CisKICAgICBtX2RlZmVycmVkRXZlbnRzLmNsZWFyKCk7CiAgICAgbV9kZWZlcnNFdmVu
dHMgPSBmYWxzZTsKIH0KIAotdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6ZmlsbFJlc291cmNl
TGlzdChSZXNvdXJjZUluZm9MaXN0KiByZXNvdXJjZXMpCitWZWN0b3I8QXBwbGljYXRpb25DYWNo
ZUhvc3Q6OlJlc291cmNlSW5mbz4gQXBwbGljYXRpb25DYWNoZUhvc3Q6OnJlc291cmNlTGlzdCgp
CiB7Ci0gICAgQXBwbGljYXRpb25DYWNoZSogY2FjaGUgPSBhcHBsaWNhdGlvbkNhY2hlKCk7Cisg
ICAgVmVjdG9yPFJlc291cmNlSW5mbz4gcmVzdWx0OworCisgICAgYXV0byogY2FjaGUgPSBhcHBs
aWNhdGlvbkNhY2hlKCk7CiAgICAgaWYgKCFjYWNoZSB8fCAhY2FjaGUtPmlzQ29tcGxldGUoKSkK
LSAgICAgICAgcmV0dXJuOworICAgICAgICByZXR1cm4gcmVzdWx0OwogCi0gICAgZm9yIChjb25z
dCBhdXRvJiB1cmxBbmRSZXNvdXJjZSA6IGNhY2hlLT5yZXNvdXJjZXMoKSkgewotICAgICAgICBB
cHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqIHJlc291cmNlID0gdXJsQW5kUmVzb3VyY2UudmFsdWUu
Z2V0KCk7CisgICAgcmVzdWx0LnJlc2VydmVJbml0aWFsQ2FwYWNpdHkoY2FjaGUtPnJlc291cmNl
cygpLnNpemUoKSk7CiAKLSAgICAgICAgdW5zaWduZWQgdHlwZSA9IHJlc291cmNlLT50eXBlKCk7
CisgICAgZm9yIChhdXRvJiB1cmxBbmRSZXNvdXJjZSA6IGNhY2hlLT5yZXNvdXJjZXMoKSkgewor
ICAgICAgICBBU1NFUlQodXJsQW5kUmVzb3VyY2UudmFsdWUpOworICAgICAgICBhdXRvJiByZXNv
dXJjZSA9ICp1cmxBbmRSZXNvdXJjZS52YWx1ZTsKKworICAgICAgICB1bnNpZ25lZCB0eXBlID0g
cmVzb3VyY2UudHlwZSgpOwogICAgICAgICBib29sIGlzTWFzdGVyID0gdHlwZSAmIEFwcGxpY2F0
aW9uQ2FjaGVSZXNvdXJjZTo6TWFzdGVyOwogICAgICAgICBib29sIGlzTWFuaWZlc3QgPSB0eXBl
ICYgQXBwbGljYXRpb25DYWNoZVJlc291cmNlOjpNYW5pZmVzdDsKICAgICAgICAgYm9vbCBpc0V4
cGxpY2l0ID0gdHlwZSAmIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6RXhwbGljaXQ7CiAgICAg
ICAgIGJvb2wgaXNGb3JlaWduID0gdHlwZSAmIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6Rm9y
ZWlnbjsKICAgICAgICAgYm9vbCBpc0ZhbGxiYWNrID0gdHlwZSAmIEFwcGxpY2F0aW9uQ2FjaGVS
ZXNvdXJjZTo6RmFsbGJhY2s7CiAKLSAgICAgICAgcmVzb3VyY2VzLT5hcHBlbmQoUmVzb3VyY2VJ
bmZvKHJlc291cmNlLT51cmwoKSwgaXNNYXN0ZXIsIGlzTWFuaWZlc3QsIGlzRmFsbGJhY2ssIGlz
Rm9yZWlnbiwgaXNFeHBsaWNpdCwgcmVzb3VyY2UtPmVzdGltYXRlZFNpemVJblN0b3JhZ2UoKSkp
OworICAgICAgICByZXN1bHQudW5jaGVja2VkQXBwZW5kKHsgcmVzb3VyY2UudXJsKCksIGlzTWFz
dGVyLCBpc01hbmlmZXN0LCBpc0ZhbGxiYWNrLCBpc0ZvcmVpZ24sIGlzRXhwbGljaXQsIHJlc291
cmNlLmVzdGltYXRlZFNpemVJblN0b3JhZ2UoKSB9KTsKICAgICB9CisKKyAgICByZXR1cm4gcmVz
dWx0OwogfQogCiBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q2FjaGVJbmZvIEFwcGxpY2F0aW9uQ2Fj
aGVIb3N0OjphcHBsaWNhdGlvbkNhY2hlSW5mbygpCiB7Ci0gICAgQXBwbGljYXRpb25DYWNoZSog
Y2FjaGUgPSBhcHBsaWNhdGlvbkNhY2hlKCk7CisgICAgYXV0byogY2FjaGUgPSBhcHBsaWNhdGlv
bkNhY2hlKCk7CiAgICAgaWYgKCFjYWNoZSB8fCAhY2FjaGUtPmlzQ29tcGxldGUoKSkKLSAgICAg
ICAgcmV0dXJuIENhY2hlSW5mbyhVUkwoKSwgMCwgMCwgMCk7CisgICAgICAgIHJldHVybiB7IHsg
fSwgMCwgMCwgMCB9OwogCiAgICAgLy8gRklYTUU6IEFkZCAiQ3JlYXRpb24gVGltZSIgYW5kICJV
cGRhdGUgVGltZSIgdG8gQXBwbGljYXRpb24gQ2FjaGVzLgotICAgIHJldHVybiBDYWNoZUluZm8o
Y2FjaGUtPm1hbmlmZXN0UmVzb3VyY2UoKS0+dXJsKCksIDAsIDAsIGNhY2hlLT5lc3RpbWF0ZWRT
aXplSW5TdG9yYWdlKCkpOworICAgIHJldHVybiB7IGNhY2hlLT5tYW5pZmVzdFJlc291cmNlKCkt
PnVybCgpLCAwLCAwLCBjYWNoZS0+ZXN0aW1hdGVkU2l6ZUluU3RvcmFnZSgpIH07CiB9CiAKLXZv
aWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmRpc3BhdGNoRE9NRXZlbnQoRXZlbnRJRCBpZCwgaW50
IHRvdGFsLCBpbnQgZG9uZSkKK3N0YXRpYyBSZWY8RXZlbnQ+IGNyZWF0ZUFwcGxpY2F0aW9uQ2Fj
aGVFdmVudChjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgaW50IHRvdGFsLCBpbnQgZG9u
ZSkKIHsKLSAgICBpZiAobV9kb21BcHBsaWNhdGlvbkNhY2hlKSB7Ci0gICAgICAgIGNvbnN0IEF0
b21pY1N0cmluZyYgZXZlbnRUeXBlID0gRE9NQXBwbGljYXRpb25DYWNoZTo6dG9FdmVudFR5cGUo
aWQpOwotICAgICAgICBSZWZQdHI8RXZlbnQ+IGV2ZW50OwotICAgICAgICBpZiAoaWQgPT0gUFJP
R1JFU1NfRVZFTlQpCi0gICAgICAgICAgICBldmVudCA9IFByb2dyZXNzRXZlbnQ6OmNyZWF0ZShl
dmVudFR5cGUsIHRydWUsIGRvbmUsIHRvdGFsKTsKLSAgICAgICAgZWxzZQotICAgICAgICAgICAg
ZXZlbnQgPSBFdmVudDo6Y3JlYXRlKGV2ZW50VHlwZSwgZmFsc2UsIGZhbHNlKTsKLSAgICAgICAg
bV9kb21BcHBsaWNhdGlvbkNhY2hlLT5kaXNwYXRjaEV2ZW50KCpldmVudCk7Ci0gICAgfQorICAg
IGlmIChldmVudFR5cGUgPT0gZXZlbnROYW1lcygpLnByb2dyZXNzRXZlbnQpCisgICAgICAgIHJl
dHVybiBQcm9ncmVzc0V2ZW50OjpjcmVhdGUoZXZlbnRUeXBlLCB0cnVlLCBkb25lLCB0b3RhbCk7
CisgICAgcmV0dXJuIEV2ZW50OjpjcmVhdGUoZXZlbnRUeXBlLCBmYWxzZSwgZmFsc2UpOworfQor
Cit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpkaXNwYXRjaERPTUV2ZW50KGNvbnN0IEF0b21p
Y1N0cmluZyYgZXZlbnRUeXBlLCBpbnQgdG90YWwsIGludCBkb25lKQoreworICAgIGlmICghbV9k
b21BcHBsaWNhdGlvbkNhY2hlKQorICAgICAgICByZXR1cm47CisgICAgbV9kb21BcHBsaWNhdGlv
bkNhY2hlLT5kaXNwYXRjaEV2ZW50KGNyZWF0ZUFwcGxpY2F0aW9uQ2FjaGVFdmVudChldmVudFR5
cGUsIHRvdGFsLCBkb25lKSk7CiB9CiAKIHZvaWQgQXBwbGljYXRpb25DYWNoZUhvc3Q6OnNldENh
bmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cChBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3Vw
KQpAQCAtMzY3LDI1ICszODEsMjQgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c2V0Q2Fu
ZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKEFwcGxpY2F0aW9uQ2FjaGVHcm8KICAgICBtX2Nh
bmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cCA9IGdyb3VwOwogfQogICAgIAotdm9pZCBBcHBs
aWNhdGlvbkNhY2hlSG9zdDo6c2V0QXBwbGljYXRpb25DYWNoZShQYXNzUmVmUHRyPEFwcGxpY2F0
aW9uQ2FjaGU+IGFwcGxpY2F0aW9uQ2FjaGUpCit2b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojpz
ZXRBcHBsaWNhdGlvbkNhY2hlKFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hlPiYmIGFwcGxpY2F0aW9u
Q2FjaGUpCiB7CiAgICAgaWYgKG1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKSB7CiAg
ICAgICAgIEFTU0VSVCghbV9hcHBsaWNhdGlvbkNhY2hlKTsKICAgICAgICAgbV9jYW5kaWRhdGVB
cHBsaWNhdGlvbkNhY2hlR3JvdXAgPSBudWxscHRyOwogICAgIH0KLQotICAgIG1fYXBwbGljYXRp
b25DYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGU7CisgICAgbV9hcHBsaWNhdGlvbkNhY2hlID0gV1RG
TW92ZShhcHBsaWNhdGlvbkNhY2hlKTsKIH0KIAogYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6
c2hvdWxkTG9hZFJlc291cmNlRnJvbUFwcGxpY2F0aW9uQ2FjaGUoY29uc3QgUmVzb3VyY2VSZXF1
ZXN0JiBvcmlnaW5hbFJlcXVlc3QsIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSomIHJlc291cmNl
KQogewotICAgIEFwcGxpY2F0aW9uQ2FjaGUqIGNhY2hlID0gYXBwbGljYXRpb25DYWNoZSgpOwor
ICAgIGF1dG8qIGNhY2hlID0gYXBwbGljYXRpb25DYWNoZSgpOwogICAgIGlmICghY2FjaGUgfHwg
IWNhY2hlLT5pc0NvbXBsZXRlKCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIFJlc291
cmNlUmVxdWVzdCByZXF1ZXN0KG9yaWdpbmFsUmVxdWVzdCk7Ci0gICAgaWYgKEZyYW1lKiBsb2Fk
ZXJGcmFtZSA9IG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUoKSkgewotICAgICAgICBpZiAoRG9jdW1l
bnQqIGRvY3VtZW50ID0gbG9hZGVyRnJhbWUtPmRvY3VtZW50KCkpCisgICAgaWYgKGF1dG8qIGxv
YWRlckZyYW1lID0gbV9kb2N1bWVudExvYWRlci5mcmFtZSgpKSB7CisgICAgICAgIGlmIChhdXRv
KiBkb2N1bWVudCA9IGxvYWRlckZyYW1lLT5kb2N1bWVudCgpKQogICAgICAgICAgICAgZG9jdW1l
bnQtPmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT51cGdyYWRlSW5zZWN1cmVSZXF1ZXN0SWZOZWVk
ZWQocmVxdWVzdCwgQ29udGVudFNlY3VyaXR5UG9saWN5OjpJbnNlY3VyZVJlcXVlc3RUeXBlOjpM
b2FkKTsKICAgICB9CiAgICAgCkBAIC00MzAsNyArNDQzLDYgQEAgYm9vbCBBcHBsaWNhdGlvbkNh
Y2hlSG9zdDo6Z2V0QXBwbGljYXRpb25DYWNoZUZhbGxiYWNrUmVzb3VyY2UoY29uc3QgUmVzb3Vy
Y2VSZXEKIAogICAgIHJlc291cmNlID0gY2FjaGUtPnJlc291cmNlRm9yVVJMKGZhbGxiYWNrVVJM
KTsKICAgICBBU1NFUlQocmVzb3VyY2UpOwotCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKQEAgLTQ0
NCwzMCArNDU2LDI3IEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZUhvc3Q6OnNjaGVkdWxlTG9hZEZh
bGxiYWNrUmVzb3VyY2VGcm9tQXBwbGljYXRpb25DYWNoZShSZXNvCiAgICAgICAgIHJldHVybiBm
YWxzZTsKIAogICAgIGxvYWRlci0+d2lsbFN3aXRjaFRvU3Vic3RpdHV0ZVJlc291cmNlKCk7Ci0K
ICAgICBtX2RvY3VtZW50TG9hZGVyLnNjaGVkdWxlU3Vic3RpdHV0ZVJlc291cmNlTG9hZCgqbG9h
ZGVyLCAqcmVzb3VyY2UpOwotCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKIEFwcGxpY2F0aW9uQ2Fj
aGVIb3N0OjpTdGF0dXMgQXBwbGljYXRpb25DYWNoZUhvc3Q6OnN0YXR1cygpIGNvbnN0CiB7Ci0g
ICAgQXBwbGljYXRpb25DYWNoZSogY2FjaGUgPSBhcHBsaWNhdGlvbkNhY2hlKCk7ICAgIAorICAg
IGF1dG8qIGNhY2hlID0gYXBwbGljYXRpb25DYWNoZSgpOwogICAgIGlmICghY2FjaGUpCiAgICAg
ICAgIHJldHVybiBVTkNBQ0hFRDsKIAogICAgIHN3aXRjaCAoY2FjaGUtPmdyb3VwKCktPnVwZGF0
ZVN0YXR1cygpKSB7Ci0gICAgICAgIGNhc2UgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpDaGVja2lu
ZzoKLSAgICAgICAgICAgIHJldHVybiBDSEVDS0lORzsKLSAgICAgICAgY2FzZSBBcHBsaWNhdGlv
bkNhY2hlR3JvdXA6OkRvd25sb2FkaW5nOgotICAgICAgICAgICAgcmV0dXJuIERPV05MT0FESU5H
OwotICAgICAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6SWRsZTogewotICAgICAgICAg
ICAgaWYgKGNhY2hlLT5ncm91cCgpLT5pc09ic29sZXRlKCkpCi0gICAgICAgICAgICAgICAgcmV0
dXJuIE9CU09MRVRFOwotICAgICAgICAgICAgaWYgKGNhY2hlICE9IGNhY2hlLT5ncm91cCgpLT5u
ZXdlc3RDYWNoZSgpKQotICAgICAgICAgICAgICAgIHJldHVybiBVUERBVEVSRUFEWTsKLSAgICAg
ICAgICAgIHJldHVybiBJRExFOwotICAgICAgICB9CisgICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hl
R3JvdXA6OkNoZWNraW5nOgorICAgICAgICByZXR1cm4gQ0hFQ0tJTkc7CisgICAgY2FzZSBBcHBs
aWNhdGlvbkNhY2hlR3JvdXA6OkRvd25sb2FkaW5nOgorICAgICAgICByZXR1cm4gRE9XTkxPQURJ
Tkc7CisgICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OklkbGU6CisgICAgICAgIGlmIChj
YWNoZS0+Z3JvdXAoKS0+aXNPYnNvbGV0ZSgpKQorICAgICAgICAgICAgcmV0dXJuIE9CU09MRVRF
OworICAgICAgICBpZiAoY2FjaGUgIT0gY2FjaGUtPmdyb3VwKCktPm5ld2VzdENhY2hlKCkpCisg
ICAgICAgICAgICByZXR1cm4gVVBEQVRFUkVBRFk7CisgICAgICAgIHJldHVybiBJRExFOwogICAg
IH0KIAogICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwpAQCAtNDc2LDI3ICs0ODUsMzAgQEAgQXBw
bGljYXRpb25DYWNoZUhvc3Q6OlN0YXR1cyBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c3RhdHVzKCkg
Y29uc3QKIAogYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6dXBkYXRlKCkKIHsKLSAgICBBcHBs
aWNhdGlvbkNhY2hlKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKTsKKyAgICBhdXRvKiBjYWNo
ZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKTsKICAgICBpZiAoIWNhY2hlKQogICAgICAgICByZXR1cm4g
ZmFsc2U7Ci0gICAgY2FjaGUtPmdyb3VwKCktPnVwZGF0ZShtX2RvY3VtZW50TG9hZGVyLmZyYW1l
KCksIEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVXaXRob3V0QnJvd3NpbmdDb250ZXh0KTsKKyAgICBh
dXRvKiBmcmFtZSA9IG1fZG9jdW1lbnRMb2FkZXIuZnJhbWUoKTsKKyAgICBpZiAoIWZyYW1lKQor
ICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgY2FjaGUtPmdyb3VwKCktPnVwZGF0ZSgqZnJhbWUs
IEFwcGxpY2F0aW9uQ2FjaGVVcGRhdGVXaXRob3V0QnJvd3NpbmdDb250ZXh0KTsKICAgICByZXR1
cm4gdHJ1ZTsKIH0KIAogYm9vbCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6c3dhcENhY2hlKCkKIHsK
LSAgICBBcHBsaWNhdGlvbkNhY2hlKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKTsKKyAgICBh
dXRvKiBjYWNoZSA9IGFwcGxpY2F0aW9uQ2FjaGUoKTsKICAgICBpZiAoIWNhY2hlKQogICAgICAg
ICByZXR1cm4gZmFsc2U7CiAKICAgICAvLyBJZiB0aGUgZ3JvdXAgb2YgYXBwbGljYXRpb24gY2Fj
aGVzIHRvIHdoaWNoIGNhY2hlIGJlbG9uZ3MgaGFzIHRoZSBsaWZlY3ljbGUgc3RhdHVzIG9ic29s
ZXRlLCB1bmFzc29jaWF0ZSBkb2N1bWVudCBmcm9tIGNhY2hlLgogICAgIGlmIChjYWNoZS0+Z3Jv
dXAoKS0+aXNPYnNvbGV0ZSgpKSB7Ci0gICAgICAgIGNhY2hlLT5ncm91cCgpLT5kaXNhc3NvY2lh
dGVEb2N1bWVudExvYWRlcigmbV9kb2N1bWVudExvYWRlcik7CisgICAgICAgIGNhY2hlLT5ncm91
cCgpLT5kaXNhc3NvY2lhdGVEb2N1bWVudExvYWRlcihtX2RvY3VtZW50TG9hZGVyKTsKICAgICAg
ICAgcmV0dXJuIHRydWU7CiAgICAgfQogCiAgICAgLy8gSWYgdGhlcmUgaXMgbm8gbmV3ZXIgY2Fj
aGUsIHJhaXNlIGFuIElOVkFMSURfU1RBVEVfRVJSIGV4Y2VwdGlvbi4KLSAgICBBcHBsaWNhdGlv
bkNhY2hlKiBuZXdlc3RDYWNoZSA9IGNhY2hlLT5ncm91cCgpLT5uZXdlc3RDYWNoZSgpOworICAg
IGF1dG8qIG5ld2VzdENhY2hlID0gY2FjaGUtPmdyb3VwKCktPm5ld2VzdENhY2hlKCk7CiAgICAg
aWYgKGNhY2hlID09IG5ld2VzdENhY2hlKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgCkBA
IC01MDgsMTQgKzUyMCwxMyBAQCBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojpzd2FwQ2FjaGUo
KQogCiB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjphYm9ydCgpCiB7Ci0gICAgQXBwbGljYXRp
b25DYWNoZUdyb3VwKiBjYWNoZUdyb3VwID0gY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3Vw
KCk7Ci0gICAgaWYgKGNhY2hlR3JvdXApCi0gICAgICAgIGNhY2hlR3JvdXAtPmFib3J0KG1fZG9j
dW1lbnRMb2FkZXIuZnJhbWUoKSk7Ci0gICAgZWxzZSB7Ci0gICAgICAgIEFwcGxpY2F0aW9uQ2Fj
aGUqIGNhY2hlID0gYXBwbGljYXRpb25DYWNoZSgpOwotICAgICAgICBpZiAoY2FjaGUpCi0gICAg
ICAgICAgICBjYWNoZS0+Z3JvdXAoKS0+YWJvcnQobV9kb2N1bWVudExvYWRlci5mcmFtZSgpKTsK
LSAgICB9CisgICAgYXV0byogZnJhbWUgPSBtX2RvY3VtZW50TG9hZGVyLmZyYW1lKCk7CisgICAg
aWYgKCFmcmFtZSkKKyAgICAgICAgcmV0dXJuOworICAgIGlmIChhdXRvKiBjYWNoZUdyb3VwID0g
Y2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKCkpCisgICAgICAgIGNhY2hlR3JvdXAtPmFi
b3J0KCpmcmFtZSk7CisgICAgZWxzZSBpZiAoYXV0byogY2FjaGUgPSBhcHBsaWNhdGlvbkNhY2hl
KCkpCisgICAgICAgIGNhY2hlLT5ncm91cCgpLT5hYm9ydCgqZnJhbWUpOwogfQogCiBib29sIEFw
cGxpY2F0aW9uQ2FjaGVIb3N0Ojppc0FwcGxpY2F0aW9uQ2FjaGVFbmFibGVkKCkKQEAgLTUyNSwx
NSArNTM2LDEyIEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZUhvc3Q6OmlzQXBwbGljYXRpb25DYWNo
ZUVuYWJsZWQoKQogCiBib29sIEFwcGxpY2F0aW9uQ2FjaGVIb3N0Ojppc0FwcGxpY2F0aW9uQ2Fj
aGVCbG9ja2VkRm9yUmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCiB7Ci0g
ICAgRnJhbWUqIGZyYW1lID0gbV9kb2N1bWVudExvYWRlci5mcmFtZSgpOworICAgIGF1dG8qIGZy
YW1lID0gbV9kb2N1bWVudExvYWRlci5mcmFtZSgpOwogICAgIGlmICghZnJhbWUpCiAgICAgICAg
IHJldHVybiBmYWxzZTsKLQogICAgIGlmIChmcmFtZS0+aXNNYWluRnJhbWUoKSkKICAgICAgICAg
cmV0dXJuIGZhbHNlOwotCi0gICAgUmVmPFNlY3VyaXR5T3JpZ2luPiBvcmlnaW4oU2VjdXJpdHlP
cmlnaW46OmNyZWF0ZShyZXF1ZXN0LnVybCgpKSk7Ci0gICAgcmV0dXJuICFvcmlnaW4uZ2V0KCku
Y2FuQWNjZXNzQXBwbGljYXRpb25DYWNoZShmcmFtZS0+ZG9jdW1lbnQoKS0+dG9wT3JpZ2luKCkp
OworICAgIHJldHVybiAhU2VjdXJpdHlPcmlnaW46OmNyZWF0ZShyZXF1ZXN0LnVybCgpKS0+Y2Fu
QWNjZXNzQXBwbGljYXRpb25DYWNoZShmcmFtZS0+ZG9jdW1lbnQoKS0+dG9wT3JpZ2luKCkpOwog
fQogCiB9ICAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVIb3N0LmggYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUhvc3QuaAppbmRleCBjOTViMjNiMjg3NDgy
Nzk2MDc1OGYzMjgwNjdiMWRmYmFlYjg3OGJhLi4yYmZkYzYyZjkzOThkMDBmNGNiMWU5MWI4NmQ3
ZjM2Yzg1M2I3NzgyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUv
QXBwbGljYXRpb25DYWNoZUhvc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2Fj
aGUvQXBwbGljYXRpb25DYWNoZUhvc3QuaApAQCAtMSw2ICsxLDcgQEAKIC8qCi0gKiBDb3B5cmln
aHQgKGMpIDIwMDksIEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogCisgKiBD
b3B5cmlnaHQgKGMpIDIwMDksIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBD
b3B5cmlnaHQgKGMpIDIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKICAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQogICogbWV0OgpAQCAtMzAsMTY1ICszMSwxMzYg
QEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpbmNsdWRlICJQbGF0Zm9ybUV4cG9ydE1hY3Jvcy5oIgog
I2luY2x1ZGUgIlVSTC5oIgogI2luY2x1ZGUgPHd0Zi9EZXF1ZS5oPgotI2luY2x1ZGUgPHd0Zi9Q
YXNzUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0
b3IuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewotICAgIGNsYXNzIERPTUFwcGxpY2F0aW9uQ2Fj
aGU7Ci0gICAgY2xhc3MgRG9jdW1lbnRMb2FkZXI7Ci0gICAgY2xhc3MgRnJhbWU7Ci0gICAgY2xh
c3MgUmVzb3VyY2VFcnJvcjsKLSAgICBjbGFzcyBSZXNvdXJjZUxvYWRlcjsKLSAgICBjbGFzcyBS
ZXNvdXJjZVJlcXVlc3Q7Ci0gICAgY2xhc3MgUmVzb3VyY2VSZXNwb25zZTsKLSAgICBjbGFzcyBT
aGFyZWRCdWZmZXI7Ci0gICAgY2xhc3MgU3Vic3RpdHV0ZURhdGE7Ci0gICAgY2xhc3MgQXBwbGlj
YXRpb25DYWNoZTsKLSAgICBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlR3JvdXA7Ci0gICAgY2xhc3Mg
QXBwbGljYXRpb25DYWNoZVJlc291cmNlOwotICAgIGNsYXNzIEFwcGxpY2F0aW9uQ2FjaGVTdG9y
YWdlOwotCi0gICAgY2xhc3MgQXBwbGljYXRpb25DYWNoZUhvc3QgewotICAgICAgICBXVEZfTUFL
RV9OT05DT1BZQUJMRShBcHBsaWNhdGlvbkNhY2hlSG9zdCk7IFdURl9NQUtFX0ZBU1RfQUxMT0NB
VEVEOwotICAgIHB1YmxpYzoKLSAgICAgICAgLy8gVGhlIFN0YXR1cyBudW1lcmljIHZhbHVlcyBh
cmUgc3BlY2lmaWVkIGluIHRoZSBIVE1MNSBzcGVjLgotICAgICAgICBlbnVtIFN0YXR1cyB7Ci0g
ICAgICAgICAgICBVTkNBQ0hFRCA9IDAsCi0gICAgICAgICAgICBJRExFID0gMSwKLSAgICAgICAg
ICAgIENIRUNLSU5HID0gMiwKLSAgICAgICAgICAgIERPV05MT0FESU5HID0gMywKLSAgICAgICAg
ICAgIFVQREFURVJFQURZID0gNCwKLSAgICAgICAgICAgIE9CU09MRVRFID0gNQotICAgICAgICB9
OwotCi0gICAgICAgIGVudW0gRXZlbnRJRCB7Ci0gICAgICAgICAgICBDSEVDS0lOR19FVkVOVCA9
IDAsCi0gICAgICAgICAgICBFUlJPUl9FVkVOVCwKLSAgICAgICAgICAgIE5PVVBEQVRFX0VWRU5U
LAotICAgICAgICAgICAgRE9XTkxPQURJTkdfRVZFTlQsCi0gICAgICAgICAgICBQUk9HUkVTU19F
VkVOVCwKLSAgICAgICAgICAgIFVQREFURVJFQURZX0VWRU5ULAotICAgICAgICAgICAgQ0FDSEVE
X0VWRU5ULAotICAgICAgICAgICAgT0JTT0xFVEVfRVZFTlQgIC8vIE11c3QgcmVtYWluIHRoZSBs
YXN0IHZhbHVlLCB0aGlzIGlzIHVzZWQgdG8gc2l6ZSBhcnJheXMuCi0gICAgICAgIH07Ci0KLSAg
ICAgICAgc3RydWN0IENhY2hlSW5mbyB7Ci0gICAgICAgICAgICBDYWNoZUluZm8oY29uc3QgVVJM
JiBtYW5pZmVzdCwgZG91YmxlIGNyZWF0aW9uVGltZSwgZG91YmxlIHVwZGF0ZVRpbWUsIGxvbmcg
bG9uZyBzaXplKQotICAgICAgICAgICAgICAgIDogbV9tYW5pZmVzdChtYW5pZmVzdCkKLSAgICAg
ICAgICAgICAgICAsIG1fY3JlYXRpb25UaW1lKGNyZWF0aW9uVGltZSkKLSAgICAgICAgICAgICAg
ICAsIG1fdXBkYXRlVGltZSh1cGRhdGVUaW1lKQotICAgICAgICAgICAgICAgICwgbV9zaXplKHNp
emUpIHsgfQotICAgICAgICAgICAgVVJMIG1fbWFuaWZlc3Q7Ci0gICAgICAgICAgICBkb3VibGUg
bV9jcmVhdGlvblRpbWU7Ci0gICAgICAgICAgICBkb3VibGUgbV91cGRhdGVUaW1lOwotICAgICAg
ICAgICAgbG9uZyBsb25nIG1fc2l6ZTsKLSAgICAgICAgfTsKLQotICAgICAgICBzdHJ1Y3QgUmVz
b3VyY2VJbmZvIHsKLSAgICAgICAgICAgIFJlc291cmNlSW5mbyhjb25zdCBVUkwmIHJlc291cmNl
LCBib29sIGlzTWFzdGVyLCBib29sIGlzTWFuaWZlc3QsIGJvb2wgaXNGYWxsYmFjaywgYm9vbCBp
c0ZvcmVpZ24sIGJvb2wgaXNFeHBsaWNpdCwgbG9uZyBsb25nIHNpemUpCi0gICAgICAgICAgICAg
ICAgOiBtX3Jlc291cmNlKHJlc291cmNlKQotICAgICAgICAgICAgICAgICwgbV9pc01hc3Rlcihp
c01hc3RlcikKLSAgICAgICAgICAgICAgICAsIG1faXNNYW5pZmVzdChpc01hbmlmZXN0KQotICAg
ICAgICAgICAgICAgICwgbV9pc0ZhbGxiYWNrKGlzRmFsbGJhY2spCi0gICAgICAgICAgICAgICAg
LCBtX2lzRm9yZWlnbihpc0ZvcmVpZ24pCi0gICAgICAgICAgICAgICAgLCBtX2lzRXhwbGljaXQo
aXNFeHBsaWNpdCkKLSAgICAgICAgICAgICAgICAsIG1fc2l6ZShzaXplKSB7IH0KLSAgICAgICAg
ICAgIFVSTCBtX3Jlc291cmNlOwotICAgICAgICAgICAgYm9vbCBtX2lzTWFzdGVyOwotICAgICAg
ICAgICAgYm9vbCBtX2lzTWFuaWZlc3Q7Ci0gICAgICAgICAgICBib29sIG1faXNGYWxsYmFjazsK
LSAgICAgICAgICAgIGJvb2wgbV9pc0ZvcmVpZ247Ci0gICAgICAgICAgICBib29sIG1faXNFeHBs
aWNpdDsKLSAgICAgICAgICAgIGxvbmcgbG9uZyBtX3NpemU7Ci0gICAgICAgIH07Ci0KLSAgICAg
ICAgdHlwZWRlZiBWZWN0b3I8UmVzb3VyY2VJbmZvPiBSZXNvdXJjZUluZm9MaXN0OwotCi0gICAg
ICAgIGV4cGxpY2l0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0KERvY3VtZW50TG9hZGVyJik7Ci0gICAg
ICAgIH5BcHBsaWNhdGlvbkNhY2hlSG9zdCgpOwotCi0gICAgICAgIHN0YXRpYyBVUkwgY3JlYXRl
RmlsZVVSTChjb25zdCBTdHJpbmcmKTsKLQotICAgICAgICB2b2lkIHNlbGVjdENhY2hlV2l0aG91
dE1hbmlmZXN0KCk7Ci0gICAgICAgIHZvaWQgc2VsZWN0Q2FjaGVXaXRoTWFuaWZlc3QoY29uc3Qg
VVJMJiBtYW5pZmVzdFVSTCk7Ci0KLSAgICAgICAgdm9pZCBtYXliZUxvYWRNYWluUmVzb3VyY2Uo
UmVzb3VyY2VSZXF1ZXN0JiwgU3Vic3RpdHV0ZURhdGEmKTsKLSAgICAgICAgdm9pZCBtYXliZUxv
YWRNYWluUmVzb3VyY2VGb3JSZWRpcmVjdChSZXNvdXJjZVJlcXVlc3QmLCBTdWJzdGl0dXRlRGF0
YSYpOwotICAgICAgICBib29sIG1heWJlTG9hZEZhbGxiYWNrRm9yTWFpblJlc3BvbnNlKGNvbnN0
IFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICAgICAgdm9p
ZCBtYWluUmVzb3VyY2VEYXRhUmVjZWl2ZWQoY29uc3QgY2hhciogZGF0YSwgaW50IGxlbmd0aCwg
bG9uZyBsb25nIGVuY29kZWREYXRhTGVuZ3RoLCBib29sIGFsbEF0T25jZSk7Ci0gICAgICAgIHZv
aWQgZmluaXNoZWRMb2FkaW5nTWFpblJlc291cmNlKCk7Ci0gICAgICAgIHZvaWQgZmFpbGVkTG9h
ZGluZ01haW5SZXNvdXJjZSgpOwotCi0gICAgICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgbWF5YmVM
b2FkUmVzb3VyY2UoUmVzb3VyY2VMb2FkZXImLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBjb25z
dCBVUkwmIG9yaWdpbmFsVVJMKTsKLSAgICAgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBtYXliZUxv
YWRGYWxsYmFja0ZvclJlZGlyZWN0KFJlc291cmNlTG9hZGVyKiwgUmVzb3VyY2VSZXF1ZXN0Jiwg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwotICAgICAgICBXRUJDT1JFX0VYUE9SVCBib29sIG1h
eWJlTG9hZEZhbGxiYWNrRm9yUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXIqLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJik7Ci0gICAgICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgbWF5YmVMb2FkRmFsbGJh
Y2tGb3JFcnJvcihSZXNvdXJjZUxvYWRlciosIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKLQotICAg
ICAgICBib29sIG1heWJlTG9hZFN5bmNocm9ub3VzbHkoUmVzb3VyY2VSZXF1ZXN0JiwgUmVzb3Vy
Y2VFcnJvciYsIFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPiYpOwotICAg
ICAgICB2b2lkIG1heWJlTG9hZEZhbGxiYWNrU3luY2hyb25vdXNseShjb25zdCBSZXNvdXJjZVJl
cXVlc3QmLCBSZXNvdXJjZUVycm9yJiwgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRC
dWZmZXI+Jik7Ci0KLSAgICAgICAgYm9vbCBjYW5DYWNoZUluUGFnZUNhY2hlKCk7Ci0KLSAgICAg
ICAgU3RhdHVzIHN0YXR1cygpIGNvbnN0OyAgCi0gICAgICAgIGJvb2wgdXBkYXRlKCk7Ci0gICAg
ICAgIGJvb2wgc3dhcENhY2hlKCk7Ci0gICAgICAgIHZvaWQgYWJvcnQoKTsKLQotICAgICAgICB2
b2lkIHNldERPTUFwcGxpY2F0aW9uQ2FjaGUoRE9NQXBwbGljYXRpb25DYWNoZSopOwotICAgICAg
ICB2b2lkIG5vdGlmeURPTUFwcGxpY2F0aW9uQ2FjaGUoRXZlbnRJRCwgaW50IHByb2dyZXNzVG90
YWwsIGludCBwcm9ncmVzc0RvbmUpOwotCi0gICAgICAgIHZvaWQgc3RvcExvYWRpbmdJbkZyYW1l
KEZyYW1lKik7Ci0KLSAgICAgICAgdm9pZCBzdG9wRGVmZXJyaW5nRXZlbnRzKCk7IC8vIEFsc28g
cmFpc2VzIHRoZSBldmVudHMgdGhhdCBoYXZlIGJlZW4gcXVldWVkIHVwLgotCi0gICAgICAgIHZv
aWQgZmlsbFJlc291cmNlTGlzdChSZXNvdXJjZUluZm9MaXN0Kik7Ci0gICAgICAgIENhY2hlSW5m
byBhcHBsaWNhdGlvbkNhY2hlSW5mbygpOwotCi0gICAgICAgIGJvb2wgc2hvdWxkTG9hZFJlc291
cmNlRnJvbUFwcGxpY2F0aW9uQ2FjaGUoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgQXBwbGljYXRp
b25DYWNoZVJlc291cmNlKiYpOwotICAgICAgICBib29sIGdldEFwcGxpY2F0aW9uQ2FjaGVGYWxs
YmFja1Jlc291cmNlKGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIEFwcGxpY2F0aW9uQ2FjaGVSZXNv
dXJjZSomLCBBcHBsaWNhdGlvbkNhY2hlKiA9IG51bGxwdHIpOwotCi0gICAgcHJpdmF0ZToKLSAg
ICAgICAgYm9vbCBpc0FwcGxpY2F0aW9uQ2FjaGVFbmFibGVkKCk7Ci0gICAgICAgIGJvb2wgaXNB
cHBsaWNhdGlvbkNhY2hlQmxvY2tlZEZvclJlcXVlc3QoY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7
Ci0KLSAgICAgICAgc3RydWN0IERlZmVycmVkRXZlbnQgewotICAgICAgICAgICAgRXZlbnRJRCBl
dmVudElEOwotICAgICAgICAgICAgaW50IHByb2dyZXNzVG90YWw7Ci0gICAgICAgICAgICBpbnQg
cHJvZ3Jlc3NEb25lOwotICAgICAgICAgICAgRGVmZXJyZWRFdmVudChFdmVudElEIGlkLCBpbnQg
dG90YWwsIGludCBkb25lKSA6IGV2ZW50SUQoaWQpLCBwcm9ncmVzc1RvdGFsKHRvdGFsKSwgcHJv
Z3Jlc3NEb25lKGRvbmUpIHsgfQotICAgICAgICB9OwotCi0gICAgICAgIERPTUFwcGxpY2F0aW9u
Q2FjaGUqIG1fZG9tQXBwbGljYXRpb25DYWNoZTsKLSAgICAgICAgRG9jdW1lbnRMb2FkZXImIG1f
ZG9jdW1lbnRMb2FkZXI7Ci0gICAgICAgIGJvb2wgbV9kZWZlcnNFdmVudHM7IC8vIEV2ZW50cyBh
cmUgZGVmZXJyZWQgdW50aWwgYWZ0ZXIgZG9jdW1lbnQgb25sb2FkLgotICAgICAgICBWZWN0b3I8
RGVmZXJyZWRFdmVudD4gbV9kZWZlcnJlZEV2ZW50czsKLQotICAgICAgICB2b2lkIGRpc3BhdGNo
RE9NRXZlbnQoRXZlbnRJRCwgaW50IHByb2dyZXNzVG90YWwsIGludCBwcm9ncmVzc0RvbmUpOwot
Ci0gICAgICAgIGZyaWVuZCBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlR3JvdXA7Ci0gICAgICAgIGZy
aWVuZCBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTsKLQotICAgICAgICBib29sIHNjaGVk
dWxlTG9hZEZhbGxiYWNrUmVzb3VyY2VGcm9tQXBwbGljYXRpb25DYWNoZShSZXNvdXJjZUxvYWRl
ciosIEFwcGxpY2F0aW9uQ2FjaGUqID0gbnVsbHB0cik7Ci0gICAgICAgIHZvaWQgc2V0Q2FuZGlk
YXRlQXBwbGljYXRpb25DYWNoZUdyb3VwKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXApOwot
ICAgICAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGNhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVH
cm91cCgpIGNvbnN0IHsgcmV0dXJuIG1fY2FuZGlkYXRlQXBwbGljYXRpb25DYWNoZUdyb3VwOyB9
Ci0gICAgICAgIHZvaWQgc2V0QXBwbGljYXRpb25DYWNoZShQYXNzUmVmUHRyPEFwcGxpY2F0aW9u
Q2FjaGU+IGFwcGxpY2F0aW9uQ2FjaGUpOwotICAgICAgICBBcHBsaWNhdGlvbkNhY2hlKiBhcHBs
aWNhdGlvbkNhY2hlKCkgY29uc3QgeyByZXR1cm4gbV9hcHBsaWNhdGlvbkNhY2hlLmdldCgpOyB9
Ci0gICAgICAgIEFwcGxpY2F0aW9uQ2FjaGUqIG1haW5SZXNvdXJjZUFwcGxpY2F0aW9uQ2FjaGUo
KSBjb25zdCB7IHJldHVybiBtX21haW5SZXNvdXJjZUFwcGxpY2F0aW9uQ2FjaGUuZ2V0KCk7IH0K
LSAgICAgICAgYm9vbCBtYXliZUxvYWRGYWxsYmFja0Zvck1haW5FcnJvcihjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZUVycm9yJik7Ci0KLSAgICAgICAgLy8gVGhlIGFwcGxp
Y2F0aW9uIGNhY2hlIHRoYXQgdGhlIGRvY3VtZW50IGxvYWRlciBpcyBhc3NvY2lhdGVkIHdpdGgg
KGlmIGFueSkuCi0gICAgICAgIFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hlPiBtX2FwcGxpY2F0aW9u
Q2FjaGU7Ci0KLSAgICAgICAgLy8gQmVmb3JlIGFuIGFwcGxpY2F0aW9uIGNhY2hlIGhhcyBmaW5p
c2hlZCBsb2FkaW5nLCB0aGlzIHdpbGwgYmUgdGhlIGNhbmRpZGF0ZSBhcHBsaWNhdGlvbgotICAg
ICAgICAvLyBncm91cCB0aGF0IHRoZSBkb2N1bWVudCBsb2FkZXIgaXMgYXNzb2NpYXRlZCB3aXRo
LgotICAgICAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIG1fY2FuZGlkYXRlQXBwbGljYXRpb25D
YWNoZUdyb3VwOwotCi0gICAgICAgIC8vIFRoaXMgaXMgdGhlIGFwcGxpY2F0aW9uIGNhY2hlIHRo
ZSBtYWluIHJlc291cmNlIHdhcyBsb2FkZWQgZnJvbSAoaWYgYW55KS4KLSAgICAgICAgUmVmUHRy
PEFwcGxpY2F0aW9uQ2FjaGU+IG1fbWFpblJlc291cmNlQXBwbGljYXRpb25DYWNoZTsKKworY2xh
c3MgQXBwbGljYXRpb25DYWNoZTsKK2NsYXNzIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDsKK2NsYXNz
IEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTsKK2NsYXNzIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdl
OworY2xhc3MgRE9NQXBwbGljYXRpb25DYWNoZTsKK2NsYXNzIERvY3VtZW50TG9hZGVyOworY2xh
c3MgRnJhbWU7CitjbGFzcyBSZXNvdXJjZUVycm9yOworY2xhc3MgUmVzb3VyY2VMb2FkZXI7Citj
bGFzcyBSZXNvdXJjZVJlcXVlc3Q7CitjbGFzcyBSZXNvdXJjZVJlc3BvbnNlOworY2xhc3MgU2hh
cmVkQnVmZmVyOworY2xhc3MgU3Vic3RpdHV0ZURhdGE7CisKK2NsYXNzIEFwcGxpY2F0aW9uQ2Fj
aGVIb3N0IHsKKyAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShBcHBsaWNhdGlvbkNhY2hlSG9zdCk7
IFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgorICAgIC8vIFRoZSBTdGF0dXMgbnVt
ZXJpYyB2YWx1ZXMgYXJlIHNwZWNpZmllZCBpbiB0aGUgSFRNTDUgc3BlYy4KKyAgICBlbnVtIFN0
YXR1cyB7CisgICAgICAgIFVOQ0FDSEVEID0gMCwKKyAgICAgICAgSURMRSA9IDEsCisgICAgICAg
IENIRUNLSU5HID0gMiwKKyAgICAgICAgRE9XTkxPQURJTkcgPSAzLAorICAgICAgICBVUERBVEVS
RUFEWSA9IDQsCisgICAgICAgIE9CU09MRVRFID0gNQorICAgIH07CisKKyAgICBzdHJ1Y3QgQ2Fj
aGVJbmZvIHsKKyAgICAgICAgVVJMIG1hbmlmZXN0OworICAgICAgICBkb3VibGUgY3JlYXRpb25U
aW1lOworICAgICAgICBkb3VibGUgdXBkYXRlVGltZTsKKyAgICAgICAgbG9uZyBsb25nIHNpemU7
CisgICAgfTsKKworICAgIHN0cnVjdCBSZXNvdXJjZUluZm8geworICAgICAgICBVUkwgcmVzb3Vy
Y2U7CisgICAgICAgIGJvb2wgaXNNYXN0ZXI7CisgICAgICAgIGJvb2wgaXNNYW5pZmVzdDsKKyAg
ICAgICAgYm9vbCBpc0ZhbGxiYWNrOworICAgICAgICBib29sIGlzRm9yZWlnbjsKKyAgICAgICAg
Ym9vbCBpc0V4cGxpY2l0OworICAgICAgICBsb25nIGxvbmcgc2l6ZTsKKyAgICB9OworCisgICAg
ZXhwbGljaXQgQXBwbGljYXRpb25DYWNoZUhvc3QoRG9jdW1lbnRMb2FkZXImKTsKKyAgICB+QXBw
bGljYXRpb25DYWNoZUhvc3QoKTsKKworICAgIHN0YXRpYyBVUkwgY3JlYXRlRmlsZVVSTChjb25z
dCBTdHJpbmcmKTsKKworICAgIHZvaWQgc2VsZWN0Q2FjaGVXaXRob3V0TWFuaWZlc3QoKTsKKyAg
ICB2b2lkIHNlbGVjdENhY2hlV2l0aE1hbmlmZXN0KGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwpOwor
CisgICAgdm9pZCBtYXliZUxvYWRNYWluUmVzb3VyY2UoUmVzb3VyY2VSZXF1ZXN0JiwgU3Vic3Rp
dHV0ZURhdGEmKTsKKyAgICB2b2lkIG1heWJlTG9hZE1haW5SZXNvdXJjZUZvclJlZGlyZWN0KFJl
c291cmNlUmVxdWVzdCYsIFN1YnN0aXR1dGVEYXRhJik7CisgICAgYm9vbCBtYXliZUxvYWRGYWxs
YmFja0Zvck1haW5SZXNwb25zZShjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJik7CisgICAgdm9pZCBtYWluUmVzb3VyY2VEYXRhUmVjZWl2ZWQoY29uc3QgY2hh
ciogZGF0YSwgaW50IGxlbmd0aCwgbG9uZyBsb25nIGVuY29kZWREYXRhTGVuZ3RoLCBib29sIGFs
bEF0T25jZSk7CisgICAgdm9pZCBmaW5pc2hlZExvYWRpbmdNYWluUmVzb3VyY2UoKTsKKyAgICB2
b2lkIGZhaWxlZExvYWRpbmdNYWluUmVzb3VyY2UoKTsKKworICAgIFdFQkNPUkVfRVhQT1JUIGJv
b2wgbWF5YmVMb2FkUmVzb3VyY2UoUmVzb3VyY2VMb2FkZXImLCBjb25zdCBSZXNvdXJjZVJlcXVl
c3QmLCBjb25zdCBVUkwmIG9yaWdpbmFsVVJMKTsKKyAgICBXRUJDT1JFX0VYUE9SVCBib29sIG1h
eWJlTG9hZEZhbGxiYWNrRm9yUmVkaXJlY3QoUmVzb3VyY2VMb2FkZXIqLCBSZXNvdXJjZVJlcXVl
c3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CisgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBt
YXliZUxvYWRGYWxsYmFja0ZvclJlc3BvbnNlKFJlc291cmNlTG9hZGVyKiwgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYpOworICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgbWF5YmVMb2FkRmFsbGJhY2tG
b3JFcnJvcihSZXNvdXJjZUxvYWRlciosIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKKworICAgIGJv
b2wgbWF5YmVMb2FkU3luY2hyb25vdXNseShSZXNvdXJjZVJlcXVlc3QmLCBSZXNvdXJjZUVycm9y
JiwgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+Jik7CisgICAgdm9pZCBt
YXliZUxvYWRGYWxsYmFja1N5bmNocm9ub3VzbHkoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgUmVz
b3VyY2VFcnJvciYsIFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPiYpOwor
CisgICAgYm9vbCBjYW5DYWNoZUluUGFnZUNhY2hlKCk7CisKKyAgICBTdGF0dXMgc3RhdHVzKCkg
Y29uc3Q7CisgICAgYm9vbCB1cGRhdGUoKTsKKyAgICBib29sIHN3YXBDYWNoZSgpOworICAgIHZv
aWQgYWJvcnQoKTsKKworICAgIHZvaWQgc2V0RE9NQXBwbGljYXRpb25DYWNoZShET01BcHBsaWNh
dGlvbkNhY2hlKik7CisgICAgdm9pZCBub3RpZnlET01BcHBsaWNhdGlvbkNhY2hlKGNvbnN0IEF0
b21pY1N0cmluZyYgZXZlbnRUeXBlLCBpbnQgcHJvZ3Jlc3NUb3RhbCwgaW50IHByb2dyZXNzRG9u
ZSk7CisKKyAgICB2b2lkIHN0b3BMb2FkaW5nSW5GcmFtZShGcmFtZSYpOworCisgICAgdm9pZCBz
dG9wRGVmZXJyaW5nRXZlbnRzKCk7IC8vIEFsc28gcmFpc2VzIHRoZSBldmVudHMgdGhhdCBoYXZl
IGJlZW4gcXVldWVkIHVwLgorCisgICAgVmVjdG9yPFJlc291cmNlSW5mbz4gcmVzb3VyY2VMaXN0
KCk7CisgICAgQ2FjaGVJbmZvIGFwcGxpY2F0aW9uQ2FjaGVJbmZvKCk7CisKKyAgICBib29sIHNo
b3VsZExvYWRSZXNvdXJjZUZyb21BcHBsaWNhdGlvbkNhY2hlKGNvbnN0IFJlc291cmNlUmVxdWVz
dCYsIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSomKTsKKyAgICBib29sIGdldEFwcGxpY2F0aW9u
Q2FjaGVGYWxsYmFja1Jlc291cmNlKGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIEFwcGxpY2F0aW9u
Q2FjaGVSZXNvdXJjZSomLCBBcHBsaWNhdGlvbkNhY2hlKiA9IG51bGxwdHIpOworCitwcml2YXRl
OgorICAgIGZyaWVuZCBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlR3JvdXA7CisKKyAgICBzdHJ1Y3Qg
RGVmZXJyZWRFdmVudCB7CisgICAgICAgIEF0b21pY1N0cmluZyBldmVudFR5cGU7CisgICAgICAg
IGludCBwcm9ncmVzc1RvdGFsOworICAgICAgICBpbnQgcHJvZ3Jlc3NEb25lOwogICAgIH07CiAK
KyAgICBib29sIGlzQXBwbGljYXRpb25DYWNoZUVuYWJsZWQoKTsKKyAgICBib29sIGlzQXBwbGlj
YXRpb25DYWNoZUJsb2NrZWRGb3JSZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYpOworCisg
ICAgdm9pZCBkaXNwYXRjaERPTUV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBp
bnQgcHJvZ3Jlc3NUb3RhbCwgaW50IHByb2dyZXNzRG9uZSk7CisKKyAgICBib29sIHNjaGVkdWxl
TG9hZEZhbGxiYWNrUmVzb3VyY2VGcm9tQXBwbGljYXRpb25DYWNoZShSZXNvdXJjZUxvYWRlcios
IEFwcGxpY2F0aW9uQ2FjaGUqID0gbnVsbHB0cik7CisgICAgdm9pZCBzZXRDYW5kaWRhdGVBcHBs
aWNhdGlvbkNhY2hlR3JvdXAoQXBwbGljYXRpb25DYWNoZUdyb3VwKik7CisgICAgQXBwbGljYXRp
b25DYWNoZUdyb3VwKiBjYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKSBjb25zdCB7IHJl
dHVybiBtX2NhbmRpZGF0ZUFwcGxpY2F0aW9uQ2FjaGVHcm91cDsgfQorICAgIHZvaWQgc2V0QXBw
bGljYXRpb25DYWNoZShSZWZQdHI8QXBwbGljYXRpb25DYWNoZT4mJik7CisgICAgQXBwbGljYXRp
b25DYWNoZSogYXBwbGljYXRpb25DYWNoZSgpIGNvbnN0IHsgcmV0dXJuIG1fYXBwbGljYXRpb25D
YWNoZS5nZXQoKTsgfQorICAgIEFwcGxpY2F0aW9uQ2FjaGUqIG1haW5SZXNvdXJjZUFwcGxpY2F0
aW9uQ2FjaGUoKSBjb25zdCB7IHJldHVybiBtX21haW5SZXNvdXJjZUFwcGxpY2F0aW9uQ2FjaGUu
Z2V0KCk7IH0KKyAgICBib29sIG1heWJlTG9hZEZhbGxiYWNrRm9yTWFpbkVycm9yKGNvbnN0IFJl
c291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKKworICAgIERPTUFwcGxpY2F0
aW9uQ2FjaGUqIG1fZG9tQXBwbGljYXRpb25DYWNoZSB7IG51bGxwdHIgfTsKKyAgICBEb2N1bWVu
dExvYWRlciYgbV9kb2N1bWVudExvYWRlcjsKKworICAgIGJvb2wgbV9kZWZlcnNFdmVudHMgeyB0
cnVlIH07IC8vIEV2ZW50cyBhcmUgZGVmZXJyZWQgdW50aWwgYWZ0ZXIgZG9jdW1lbnQgb25sb2Fk
LgorICAgIFZlY3RvcjxEZWZlcnJlZEV2ZW50PiBtX2RlZmVycmVkRXZlbnRzOworCisgICAgLy8g
VGhlIGFwcGxpY2F0aW9uIGNhY2hlIHRoYXQgdGhlIGRvY3VtZW50IGxvYWRlciBpcyBhc3NvY2lh
dGVkIHdpdGggKGlmIGFueSkuCisgICAgUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+IG1fYXBwbGlj
YXRpb25DYWNoZTsKKworICAgIC8vIEJlZm9yZSBhbiBhcHBsaWNhdGlvbiBjYWNoZSBoYXMgZmlu
aXNoZWQgbG9hZGluZywgdGhpcyB3aWxsIGJlIHRoZSBjYW5kaWRhdGUgYXBwbGljYXRpb24KKyAg
ICAvLyBncm91cCB0aGF0IHRoZSBkb2N1bWVudCBsb2FkZXIgaXMgYXNzb2NpYXRlZCB3aXRoLgor
ICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogbV9jYW5kaWRhdGVBcHBsaWNhdGlvbkNhY2hlR3Jv
dXAgeyBudWxscHRyIH07CisKKyAgICAvLyBUaGlzIGlzIHRoZSBhcHBsaWNhdGlvbiBjYWNoZSB0
aGUgbWFpbiByZXNvdXJjZSB3YXMgbG9hZGVkIGZyb20gKGlmIGFueSkuCisgICAgUmVmUHRyPEFw
cGxpY2F0aW9uQ2FjaGU+IG1fbWFpblJlc291cmNlQXBwbGljYXRpb25DYWNoZTsKK307CisKIH0g
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
YXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlLmNwcAppbmRleCBkZjEwM2U0YTJi
OGViNDU1ODNlMGVhOTM2NTdmZGU2Yzg2MTA0OTA2Li5mNGZhOTViNTE3ZWM3NzkxNjI0ZmMwZjI1
YTY1NmIwYzA5NDQxNDc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2Fj
aGUvQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5jcHAKQEAgLTEyNiwzNiArMTI2LDMy
IEBAIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmxvYWRD
YWNoZUdyb3VwKGNvbnN0IFVSTCYgbWFuaWZlCiAgICAgaWYgKCFjYWNoZSkKICAgICAgICAgcmV0
dXJuIG51bGxwdHI7CiAgICAgICAgIAotICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAg
PSBuZXcgQXBwbGljYXRpb25DYWNoZUdyb3VwKCp0aGlzLCBtYW5pZmVzdFVSTCk7Ci0gICAgICAK
LSAgICBncm91cC0+c2V0U3RvcmFnZUlEKHN0YXRpY19jYXN0PHVuc2lnbmVkPihzdGF0ZW1lbnQu
Z2V0Q29sdW1uSW50NjQoMCkpKTsKLSAgICBncm91cC0+c2V0TmV3ZXN0Q2FjaGUoV1RGTW92ZShj
YWNoZSkpOwotCi0gICAgcmV0dXJuIGdyb3VwOworICAgIGF1dG8mIGdyb3VwID0gKm5ldyBBcHBs
aWNhdGlvbkNhY2hlR3JvdXAoKnRoaXMsIG1hbmlmZXN0VVJMKTsKKyAgICBncm91cC5zZXRTdG9y
YWdlSUQoc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHN0YXRlbWVudC5nZXRDb2x1bW5JbnQ2NCgwKSkp
OworICAgIGdyb3VwLnNldE5ld2VzdENhY2hlKGNhY2hlLnJlbGVhc2VOb25OdWxsKCkpOworICAg
IHJldHVybiAmZ3JvdXA7CiB9ICAgIAogCiBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIEFwcGxpY2F0
aW9uQ2FjaGVTdG9yYWdlOjpmaW5kT3JDcmVhdGVDYWNoZUdyb3VwKGNvbnN0IFVSTCYgbWFuaWZl
c3RVUkwpCiB7CiAgICAgQVNTRVJUKCFtYW5pZmVzdFVSTC5oYXNGcmFnbWVudElkZW50aWZpZXIo
KSk7CiAKLSAgICBDYWNoZUdyb3VwTWFwOjpBZGRSZXN1bHQgcmVzdWx0ID0gbV9jYWNoZXNJbk1l
bW9yeS5hZGQobWFuaWZlc3RVUkwsIG51bGxwdHIpOwotICAgIAorICAgIGF1dG8gcmVzdWx0ID0g
bV9jYWNoZXNJbk1lbW9yeS5hZGQobWFuaWZlc3RVUkwsIG51bGxwdHIpOwogICAgIGlmICghcmVz
dWx0LmlzTmV3RW50cnkpIHsKICAgICAgICAgQVNTRVJUKHJlc3VsdC5pdGVyYXRvci0+dmFsdWUp
OwogICAgICAgICByZXR1cm4gcmVzdWx0Lml0ZXJhdG9yLT52YWx1ZTsKICAgICB9CiAKICAgICAv
LyBMb29rIHVwIHRoZSBncm91cCBpbiB0aGUgZGF0YWJhc2UKLSAgICBBcHBsaWNhdGlvbkNhY2hl
R3JvdXAqIGdyb3VwID0gbG9hZENhY2hlR3JvdXAobWFuaWZlc3RVUkwpOworICAgIGF1dG8qIGdy
b3VwID0gbG9hZENhY2hlR3JvdXAobWFuaWZlc3RVUkwpOwogICAgIAogICAgIC8vIElmIHRoZSBn
cm91cCB3YXMgbm90IGZvdW5kIHdlIG5lZWQgdG8gY3JlYXRlIGl0CiAgICAgaWYgKCFncm91cCkg
ewogICAgICAgICBncm91cCA9IG5ldyBBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKnRoaXMsIG1hbmlm
ZXN0VVJMKTsKICAgICAgICAgbV9jYWNoZUhvc3RTZXQuYWRkKHVybEhvc3RIYXNoKG1hbmlmZXN0
VVJMKSk7CiAgICAgfQotICAgIAorCiAgICAgcmVzdWx0Lml0ZXJhdG9yLT52YWx1ZSA9IGdyb3Vw
OwotICAgIAogICAgIHJldHVybiBncm91cDsKIH0KIApAQCAtMjQ0LDIwICsyNDAsMTggQEAgQXBw
bGljYXRpb25DYWNoZUdyb3VwKiBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6Y2FjaGVHcm91cEZv
clVSTChjb25zdCBVUkwmIHVybCkKICAgICAgICAgaWYgKCFjYWNoZSkKICAgICAgICAgICAgIGNv
bnRpbnVlOwogCi0gICAgICAgIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZSogcmVzb3VyY2UgPSBj
YWNoZS0+cmVzb3VyY2VGb3JVUkwodXJsKTsKKyAgICAgICAgYXV0byogcmVzb3VyY2UgPSBjYWNo
ZS0+cmVzb3VyY2VGb3JVUkwodXJsKTsKICAgICAgICAgaWYgKCFyZXNvdXJjZSkKICAgICAgICAg
ICAgIGNvbnRpbnVlOwogICAgICAgICBpZiAocmVzb3VyY2UtPnR5cGUoKSAmIEFwcGxpY2F0aW9u
Q2FjaGVSZXNvdXJjZTo6Rm9yZWlnbikKICAgICAgICAgICAgIGNvbnRpbnVlOwogCi0gICAgICAg
IEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAgPSBuZXcgQXBwbGljYXRpb25DYWNoZUdyb3Vw
KCp0aGlzLCBtYW5pZmVzdFVSTCk7Ci0gICAgICAgIAotICAgICAgICBncm91cC0+c2V0U3RvcmFn
ZUlEKHN0YXRpY19jYXN0PHVuc2lnbmVkPihzdGF0ZW1lbnQuZ2V0Q29sdW1uSW50NjQoMCkpKTsK
LSAgICAgICAgZ3JvdXAtPnNldE5ld2VzdENhY2hlKFdURk1vdmUoY2FjaGUpKTsKLSAgICAgICAg
Ci0gICAgICAgIG1fY2FjaGVzSW5NZW1vcnkuc2V0KGdyb3VwLT5tYW5pZmVzdFVSTCgpLCBncm91
cCk7Ci0gICAgICAgIAotICAgICAgICByZXR1cm4gZ3JvdXA7CisgICAgICAgIGF1dG8mIGdyb3Vw
ID0gKm5ldyBBcHBsaWNhdGlvbkNhY2hlR3JvdXAoKnRoaXMsIG1hbmlmZXN0VVJMKTsKKyAgICAg
ICAgZ3JvdXAuc2V0U3RvcmFnZUlEKHN0YXRpY19jYXN0PHVuc2lnbmVkPihzdGF0ZW1lbnQuZ2V0
Q29sdW1uSW50NjQoMCkpKTsKKyAgICAgICAgZ3JvdXAuc2V0TmV3ZXN0Q2FjaGUoY2FjaGUucmVs
ZWFzZU5vbk51bGwoKSk7CisgICAgICAgIG1fY2FjaGVzSW5NZW1vcnkuc2V0KGdyb3VwLm1hbmlm
ZXN0VVJMKCksICZncm91cCk7CisKKyAgICAgICAgcmV0dXJuICZncm91cDsKICAgICB9CiAKICAg
ICBpZiAocmVzdWx0ICE9IFNRTElURV9ET05FKQpAQCAtMzIwLDE0ICszMTQsMTMgQEAgQXBwbGlj
YXRpb25DYWNoZUdyb3VwKiBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6ZmFsbGJhY2tDYWNoZUdy
b3VwRm9yVVJMKGNvbnN0IFUKICAgICAgICAgaWYgKGNhY2hlLT5yZXNvdXJjZUZvclVSTChmYWxs
YmFja1VSTCktPnR5cGUoKSAmIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6Rm9yZWlnbikKICAg
ICAgICAgICAgIGNvbnRpbnVlOwogCi0gICAgICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3Jv
dXAgPSBuZXcgQXBwbGljYXRpb25DYWNoZUdyb3VwKCp0aGlzLCBtYW5pZmVzdFVSTCk7Ci0gICAg
ICAgIAotICAgICAgICBncm91cC0+c2V0U3RvcmFnZUlEKHN0YXRpY19jYXN0PHVuc2lnbmVkPihz
dGF0ZW1lbnQuZ2V0Q29sdW1uSW50NjQoMCkpKTsKLSAgICAgICAgZ3JvdXAtPnNldE5ld2VzdENh
Y2hlKFdURk1vdmUoY2FjaGUpKTsKLSAgICAgICAgCi0gICAgICAgIG1fY2FjaGVzSW5NZW1vcnku
c2V0KGdyb3VwLT5tYW5pZmVzdFVSTCgpLCBncm91cCk7Ci0gICAgICAgIAotICAgICAgICByZXR1
cm4gZ3JvdXA7CisgICAgICAgIGF1dG8mIGdyb3VwID0gKm5ldyBBcHBsaWNhdGlvbkNhY2hlR3Jv
dXAoKnRoaXMsIG1hbmlmZXN0VVJMKTsKKyAgICAgICAgZ3JvdXAuc2V0U3RvcmFnZUlEKHN0YXRp
Y19jYXN0PHVuc2lnbmVkPihzdGF0ZW1lbnQuZ2V0Q29sdW1uSW50NjQoMCkpKTsKKyAgICAgICAg
Z3JvdXAuc2V0TmV3ZXN0Q2FjaGUoY2FjaGUucmVsZWFzZU5vbk51bGwoKSk7CisKKyAgICAgICAg
bV9jYWNoZXNJbk1lbW9yeS5zZXQoZ3JvdXAubWFuaWZlc3RVUkwoKSwgJmdyb3VwKTsKKworICAg
ICAgICByZXR1cm4gJmdyb3VwOwogICAgIH0KIAogICAgIGlmIChyZXN1bHQgIT0gU1FMSVRFX0RP
TkUpCkBAIC0zMzYsMzMgKzMyOSwzMyBAQCBBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIEFwcGxpY2F0
aW9uQ2FjaGVTdG9yYWdlOjpmYWxsYmFja0NhY2hlR3JvdXBGb3JVUkwoY29uc3QgVQogICAgIHJl
dHVybiBudWxscHRyOwogfQogCi12b2lkIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpjYWNoZUdy
b3VwRGVzdHJveWVkKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXApCit2b2lkIEFwcGxpY2F0
aW9uQ2FjaGVTdG9yYWdlOjpjYWNoZUdyb3VwRGVzdHJveWVkKEFwcGxpY2F0aW9uQ2FjaGVHcm91
cCYgZ3JvdXApCiB7Ci0gICAgaWYgKGdyb3VwLT5pc09ic29sZXRlKCkpIHsKLSAgICAgICAgQVNT
RVJUKCFncm91cC0+c3RvcmFnZUlEKCkpOwotICAgICAgICBBU1NFUlQobV9jYWNoZXNJbk1lbW9y
eS5nZXQoZ3JvdXAtPm1hbmlmZXN0VVJMKCkpICE9IGdyb3VwKTsKKyAgICBpZiAoZ3JvdXAuaXNP
YnNvbGV0ZSgpKSB7CisgICAgICAgIEFTU0VSVCghZ3JvdXAuc3RvcmFnZUlEKCkpOworICAgICAg
ICBBU1NFUlQobV9jYWNoZXNJbk1lbW9yeS5nZXQoZ3JvdXAubWFuaWZlc3RVUkwoKSkgIT0gJmdy
b3VwKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIEFTU0VSVChtX2NhY2hlc0luTWVt
b3J5LmdldChncm91cC0+bWFuaWZlc3RVUkwoKSkgPT0gZ3JvdXApOworICAgIEFTU0VSVChtX2Nh
Y2hlc0luTWVtb3J5LmdldChncm91cC5tYW5pZmVzdFVSTCgpKSA9PSAmZ3JvdXApOwogCi0gICAg
bV9jYWNoZXNJbk1lbW9yeS5yZW1vdmUoZ3JvdXAtPm1hbmlmZXN0VVJMKCkpOworICAgIG1fY2Fj
aGVzSW5NZW1vcnkucmVtb3ZlKGdyb3VwLm1hbmlmZXN0VVJMKCkpOwogICAgIAogICAgIC8vIElm
IHRoZSBjYWNoZSBncm91cCBpcyBoYWxmLWNyZWF0ZWQsIHdlIGRvbid0IHdhbnQgaXQgaW4gdGhl
IHNhdmVkIHNldCAoYXMgaXQgaXMgbm90IHN0b3JlZCBpbiBkYXRhYmFzZSkuCi0gICAgaWYgKCFn
cm91cC0+c3RvcmFnZUlEKCkpCi0gICAgICAgIG1fY2FjaGVIb3N0U2V0LnJlbW92ZSh1cmxIb3N0
SGFzaChncm91cC0+bWFuaWZlc3RVUkwoKSkpOworICAgIGlmICghZ3JvdXAuc3RvcmFnZUlEKCkp
CisgICAgICAgIG1fY2FjaGVIb3N0U2V0LnJlbW92ZSh1cmxIb3N0SGFzaChncm91cC5tYW5pZmVz
dFVSTCgpKSk7CiB9CiAKLXZvaWQgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmNhY2hlR3JvdXBN
YWRlT2Jzb2xldGUoQXBwbGljYXRpb25DYWNoZUdyb3VwKiBncm91cCkKK3ZvaWQgQXBwbGljYXRp
b25DYWNoZVN0b3JhZ2U6OmNhY2hlR3JvdXBNYWRlT2Jzb2xldGUoQXBwbGljYXRpb25DYWNoZUdy
b3VwJiBncm91cCkKIHsKLSAgICBBU1NFUlQobV9jYWNoZXNJbk1lbW9yeS5nZXQoZ3JvdXAtPm1h
bmlmZXN0VVJMKCkpID09IGdyb3VwKTsKLSAgICBBU1NFUlQobV9jYWNoZUhvc3RTZXQuY29udGFp
bnModXJsSG9zdEhhc2goZ3JvdXAtPm1hbmlmZXN0VVJMKCkpKSk7CisgICAgQVNTRVJUKG1fY2Fj
aGVzSW5NZW1vcnkuZ2V0KGdyb3VwLm1hbmlmZXN0VVJMKCkpID09ICZncm91cCk7CisgICAgQVNT
RVJUKG1fY2FjaGVIb3N0U2V0LmNvbnRhaW5zKHVybEhvc3RIYXNoKGdyb3VwLm1hbmlmZXN0VVJM
KCkpKSk7CiAKLSAgICBpZiAoQXBwbGljYXRpb25DYWNoZSogbmV3ZXN0Q2FjaGUgPSBncm91cC0+
bmV3ZXN0Q2FjaGUoKSkKKyAgICBpZiAoYXV0byogbmV3ZXN0Q2FjaGUgPSBncm91cC5uZXdlc3RD
YWNoZSgpKQogICAgICAgICByZW1vdmUobmV3ZXN0Q2FjaGUpOwogCi0gICAgbV9jYWNoZXNJbk1l
bW9yeS5yZW1vdmUoZ3JvdXAtPm1hbmlmZXN0VVJMKCkpOwotICAgIG1fY2FjaGVIb3N0U2V0LnJl
bW92ZSh1cmxIb3N0SGFzaChncm91cC0+bWFuaWZlc3RVUkwoKSkpOworICAgIG1fY2FjaGVzSW5N
ZW1vcnkucmVtb3ZlKGdyb3VwLm1hbmlmZXN0VVJMKCkpOworICAgIG1fY2FjaGVIb3N0U2V0LnJl
bW92ZSh1cmxIb3N0SGFzaChncm91cC5tYW5pZmVzdFVSTCgpKSk7CiB9CiAKIGNvbnN0IFN0cmlu
ZyYgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmNhY2hlRGlyZWN0b3J5KCkgY29uc3QKQEAgLTk5
Niw3ICs5ODksNyBAQCBib29sIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpjaGVja09yaWdpblF1
b3RhKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAsIEFwcAogICAgIHJldHVybiB0cnVlOwog
fQogCi1ib29sIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpzdG9yZU5ld2VzdENhY2hlKEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cCogZ3JvdXAsIEFwcGxpY2F0aW9uQ2FjaGUqIG9sZENhY2hlLCBGYWls
dXJlUmVhc29uJiBmYWlsdXJlUmVhc29uKQorYm9vbCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6
c3RvcmVOZXdlc3RDYWNoZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAmIGdyb3VwLCBBcHBsaWNhdGlv
bkNhY2hlKiBvbGRDYWNoZSwgRmFpbHVyZVJlYXNvbiYgZmFpbHVyZVJlYXNvbikKIHsKICAgICBv
cGVuRGF0YWJhc2UodHJ1ZSk7CiAKQEAgLTEwMTIsMjQgKzEwMDUsMjQgQEAgYm9vbCBBcHBsaWNh
dGlvbkNhY2hlU3RvcmFnZTo6c3RvcmVOZXdlc3RDYWNoZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAq
IGdyb3VwLCBBcHAKIAogICAgIC8vIENoZWNrIGlmIHRoaXMgd291bGQgcmVhY2ggdGhlIHBlci1v
cmlnaW4gcXVvdGEuCiAgICAgaW50NjRfdCB0b3RhbFNwYWNlTmVlZGVkSWdub3JlZDsKLSAgICBp
ZiAoIWNoZWNrT3JpZ2luUXVvdGEoZ3JvdXAsIG9sZENhY2hlLCBncm91cC0+bmV3ZXN0Q2FjaGUo
KSwgdG90YWxTcGFjZU5lZWRlZElnbm9yZWQpKSB7CisgICAgaWYgKCFjaGVja09yaWdpblF1b3Rh
KCZncm91cCwgb2xkQ2FjaGUsIGdyb3VwLm5ld2VzdENhY2hlKCksIHRvdGFsU3BhY2VOZWVkZWRJ
Z25vcmVkKSkgewogICAgICAgICBmYWlsdXJlUmVhc29uID0gT3JpZ2luUXVvdGFSZWFjaGVkOwog
ICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogCiAgICAgR3JvdXBTdG9yYWdlSURKb3VybmFs
IGdyb3VwU3RvcmFnZUlESm91cm5hbDsKLSAgICBpZiAoIWdyb3VwLT5zdG9yYWdlSUQoKSkgewor
ICAgIGlmICghZ3JvdXAuc3RvcmFnZUlEKCkpIHsKICAgICAgICAgLy8gU3RvcmUgdGhlIGdyb3Vw
Ci0gICAgICAgIGlmICghc3RvcmUoZ3JvdXAsICZncm91cFN0b3JhZ2VJREpvdXJuYWwpKSB7Cisg
ICAgICAgIGlmICghc3RvcmUoJmdyb3VwLCAmZ3JvdXBTdG9yYWdlSURKb3VybmFsKSkgewogICAg
ICAgICAgICAgY2hlY2tGb3JNYXhTaXplUmVhY2hlZCgpOwogICAgICAgICAgICAgZmFpbHVyZVJl
YXNvbiA9IGlzTWF4aW11bVNpemVSZWFjaGVkKCkgPyBUb3RhbFF1b3RhUmVhY2hlZCA6IERpc2tP
ck9wZXJhdGlvbkZhaWx1cmU7CiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgIH0K
ICAgICB9CiAgICAgCi0gICAgQVNTRVJUKGdyb3VwLT5uZXdlc3RDYWNoZSgpKTsKLSAgICBBU1NF
UlQoIWdyb3VwLT5pc09ic29sZXRlKCkpOwotICAgIEFTU0VSVCghZ3JvdXAtPm5ld2VzdENhY2hl
KCktPnN0b3JhZ2VJRCgpKTsKKyAgICBBU1NFUlQoZ3JvdXAubmV3ZXN0Q2FjaGUoKSk7CisgICAg
QVNTRVJUKCFncm91cC5pc09ic29sZXRlKCkpOworICAgIEFTU0VSVCghZ3JvdXAubmV3ZXN0Q2Fj
aGUoKS0+c3RvcmFnZUlEKCkpOwogICAgIAogICAgIC8vIExvZyB0aGUgc3RvcmFnZUlEIGNoYW5n
ZXMgdG8gdGhlIGluLW1lbW9yeSByZXNvdXJjZSBvYmplY3RzLiBUaGUgam91cm5hbAogICAgIC8v
IG9iamVjdCB3aWxsIHJvbGwgdGhlbSBiYWNrIGF1dG9tYXRpY2FsbHkgaW4gY2FzZSBhIGRhdGFi
YXNlIG9wZXJhdGlvbgpAQCAtMTAzNyw3ICsxMDMwLDcgQEAgYm9vbCBBcHBsaWNhdGlvbkNhY2hl
U3RvcmFnZTo6c3RvcmVOZXdlc3RDYWNoZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAqIGdyb3VwLCBB
cHAKICAgICBSZXNvdXJjZVN0b3JhZ2VJREpvdXJuYWwgcmVzb3VyY2VTdG9yYWdlSURKb3VybmFs
OwogCiAgICAgLy8gU3RvcmUgdGhlIG5ld2VzdCBjYWNoZQotICAgIGlmICghc3RvcmUoZ3JvdXAt
Pm5ld2VzdENhY2hlKCksICZyZXNvdXJjZVN0b3JhZ2VJREpvdXJuYWwpKSB7CisgICAgaWYgKCFz
dG9yZShncm91cC5uZXdlc3RDYWNoZSgpLCAmcmVzb3VyY2VTdG9yYWdlSURKb3VybmFsKSkgewog
ICAgICAgICBjaGVja0Zvck1heFNpemVSZWFjaGVkKCk7CiAgICAgICAgIGZhaWx1cmVSZWFzb24g
PSBpc01heGltdW1TaXplUmVhY2hlZCgpID8gVG90YWxRdW90YVJlYWNoZWQgOiBEaXNrT3JPcGVy
YXRpb25GYWlsdXJlOwogICAgICAgICByZXR1cm4gZmFsc2U7CkBAIC0xMDUxLDggKzEwNDQsOCBA
QCBib29sIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpzdG9yZU5ld2VzdENhY2hlKEFwcGxpY2F0
aW9uQ2FjaGVHcm91cCogZ3JvdXAsIEFwcAogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQog
ICAgIAotICAgIHN0YXRlbWVudC5iaW5kSW50NjQoMSwgZ3JvdXAtPm5ld2VzdENhY2hlKCktPnN0
b3JhZ2VJRCgpKTsKLSAgICBzdGF0ZW1lbnQuYmluZEludDY0KDIsIGdyb3VwLT5zdG9yYWdlSUQo
KSk7CisgICAgc3RhdGVtZW50LmJpbmRJbnQ2NCgxLCBncm91cC5uZXdlc3RDYWNoZSgpLT5zdG9y
YWdlSUQoKSk7CisgICAgc3RhdGVtZW50LmJpbmRJbnQ2NCgyLCBncm91cC5zdG9yYWdlSUQoKSk7
CiAgICAgCiAgICAgaWYgKCFleGVjdXRlU3RhdGVtZW50KHN0YXRlbWVudCkpIHsKICAgICAgICAg
ZmFpbHVyZVJlYXNvbiA9IERpc2tPck9wZXJhdGlvbkZhaWx1cmU7CkBAIC0xMDY1LDIyICsxMDU4
LDI0IEBAIGJvb2wgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OnN0b3JlTmV3ZXN0Q2FjaGUoQXBw
bGljYXRpb25DYWNoZUdyb3VwKiBncm91cCwgQXBwCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLWJv
b2wgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OnN0b3JlTmV3ZXN0Q2FjaGUoQXBwbGljYXRpb25D
YWNoZUdyb3VwKiBncm91cCkKK2Jvb2wgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OnN0b3JlTmV3
ZXN0Q2FjaGUoQXBwbGljYXRpb25DYWNoZUdyb3VwJiBncm91cCkKIHsKICAgICAvLyBJZ25vcmUg
dGhlIHJlYXNvbiBmb3IgZmFpbGluZywganVzdCBhdHRlbXB0IHRoZSBzdG9yZS4KICAgICBGYWls
dXJlUmVhc29uIGlnbm9yZWRGYWlsdXJlUmVhc29uOwotICAgIHJldHVybiBzdG9yZU5ld2VzdENh
Y2hlKGdyb3VwLCAwLCBpZ25vcmVkRmFpbHVyZVJlYXNvbik7CisgICAgcmV0dXJuIHN0b3JlTmV3
ZXN0Q2FjaGUoZ3JvdXAsIG51bGxwdHIsIGlnbm9yZWRGYWlsdXJlUmVhc29uKTsKIH0KIAotdGVt
cGxhdGUgPHR5cGVuYW1lIENoYXJhY3RlclR5cGU+Ci1zdGF0aWMgaW5saW5lIHZvaWQgcGFyc2VI
ZWFkZXIoY29uc3QgQ2hhcmFjdGVyVHlwZSogaGVhZGVyLCBzaXplX3QgaGVhZGVyTGVuZ3RoLCBS
ZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3RlbXBsYXRlPHR5cGVuYW1lIENoYXJhY3RlclR5
cGU+CitzdGF0aWMgaW5saW5lIHZvaWQgcGFyc2VIZWFkZXIoY29uc3QgQ2hhcmFjdGVyVHlwZSog
aGVhZGVyLCB1bnNpZ25lZCBoZWFkZXJMZW5ndGgsIFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNl
KQogewotICAgIHNpemVfdCBwb3MgPSBmaW5kKGhlYWRlciwgaGVhZGVyTGVuZ3RoLCAnOicpOwot
ICAgIEFTU0VSVChwb3MgIT0gbm90Rm91bmQpOwotICAgIAotICAgIFN0cmluZyBoZWFkZXJOYW1l
ID0gQXRvbWljU3RyaW5nKGhlYWRlciwgcG9zKTsKLSAgICBTdHJpbmcgaGVhZGVyVmFsdWUgPSBT
dHJpbmcoaGVhZGVyICsgcG9zICsgMSwgaGVhZGVyTGVuZ3RoIC0gcG9zIC0gMSk7Ci0gICAgCisg
ICAgQVNTRVJUKGZpbmQoaGVhZGVyLCBoZWFkZXJMZW5ndGgsICc6JykgIT0gbm90Rm91bmQpOwor
ICAgIHVuc2lnbmVkIGNvbG9uUG9zaXRpb24gPSBmaW5kKGhlYWRlciwgaGVhZGVyTGVuZ3RoLCAn
OicpOworCisgICAgLy8gU2F2ZSBtZW1vcnkgYnkgcHV0dGluZyB0aGUgaGVhZGVyIG5hbWVzIGlu
dG8gYXRvbWljIHN0cmluZ3Mgc28gZWFjaCBpcyBzdG9yZWQgb25seSBvbmNlLAorICAgIC8vIGV2
ZW4gdGhvdWdoIHRoZSBzZXRIVFRQSGVhZGVyRmllbGQgZnVuY3Rpb24gZG9lcyBub3QgcmVxdWly
ZSBhbiBhdG9taWMgc3RyaW5nLgorICAgIEF0b21pY1N0cmluZyBoZWFkZXJOYW1lIHsgaGVhZGVy
LCBjb2xvblBvc2l0aW9uIH07CisgICAgU3RyaW5nIGhlYWRlclZhbHVlIHsgaGVhZGVyICsgY29s
b25Qb3NpdGlvbiArIDEsIGhlYWRlckxlbmd0aCAtIGNvbG9uUG9zaXRpb24gLSAxIH07CisKICAg
ICByZXNwb25zZS5zZXRIVFRQSGVhZGVyRmllbGQoaGVhZGVyTmFtZSwgaGVhZGVyVmFsdWUpOwog
fQogCkBAIC0xMTA3LDcgKzExMDIsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgcGFyc2VIZWFkZXJz
KGNvbnN0IFN0cmluZyYgaGVhZGVycywgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9ucwogICAgIH0K
IH0KICAgICAKLVBhc3NSZWZQdHI8QXBwbGljYXRpb25DYWNoZT4gQXBwbGljYXRpb25DYWNoZVN0
b3JhZ2U6OmxvYWRDYWNoZSh1bnNpZ25lZCBzdG9yYWdlSUQpCitSZWZQdHI8QXBwbGljYXRpb25D
YWNoZT4gQXBwbGljYXRpb25DYWNoZVN0b3JhZ2U6OmxvYWRDYWNoZSh1bnNpZ25lZCBzdG9yYWdl
SUQpCiB7CiAgICAgQVNTRVJUKFNRTGl0ZURhdGFiYXNlVHJhY2tlcjo6aGFzVHJhbnNhY3Rpb25J
blByb2dyZXNzKCkpOwogICAgIFNRTGl0ZVN0YXRlbWVudCBjYWNoZVN0YXRlbWVudChtX2RhdGFi
YXNlLApAQCAtMTQwOCwxMCArMTQwMywxMSBAQCBib29sIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdl
OjpkZWxldGVDYWNoZUdyb3VwKGNvbnN0IFN0cmluZyYgbWFuaWZlc3RVUkwpCiAgICAgU1FMaXRl
VHJhbnNhY3Rpb25JblByb2dyZXNzQXV0b0NvdW50ZXIgdHJhbnNhY3Rpb25Db3VudGVyOwogCiAg
ICAgU1FMaXRlVHJhbnNhY3Rpb24gZGVsZXRlVHJhbnNhY3Rpb24obV9kYXRhYmFzZSk7CisKICAg
ICAvLyBDaGVjayB0byBzZWUgaWYgdGhlIGdyb3VwIGlzIGluIG1lbW9yeS4KLSAgICBBcHBsaWNh
dGlvbkNhY2hlR3JvdXAqIGdyb3VwID0gbV9jYWNoZXNJbk1lbW9yeS5nZXQobWFuaWZlc3RVUkwp
OworICAgIGF1dG8qIGdyb3VwID0gbV9jYWNoZXNJbk1lbW9yeS5nZXQobWFuaWZlc3RVUkwpOwog
ICAgIGlmIChncm91cCkKLSAgICAgICAgY2FjaGVHcm91cE1hZGVPYnNvbGV0ZShncm91cCk7Cisg
ICAgICAgIGNhY2hlR3JvdXBNYWRlT2Jzb2xldGUoKmdyb3VwKTsKICAgICBlbHNlIHsKICAgICAg
ICAgLy8gVGhlIGNhY2hlIGdyb3VwIGlzIG5vdCBpbiBtZW1vcnksIHNvIHJlbW92ZSBpdCBmcm9t
IHRoZSBkaXNrLgogICAgICAgICBvcGVuRGF0YWJhc2UoZmFsc2UpOwpAQCAtMTQyNCw5ICsxNDIw
LDkgQEAgYm9vbCBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6ZGVsZXRlQ2FjaGVHcm91cChjb25z
dCBTdHJpbmcmIG1hbmlmZXN0VVJMKQogICAgIH0KIAogICAgIGRlbGV0ZVRyYW5zYWN0aW9uLmNv
bW1pdCgpOwotICAgIAorCiAgICAgY2hlY2tGb3JEZWxldGVkUmVzb3VyY2VzKCk7Ci0gICAgCisK
ICAgICByZXR1cm4gdHJ1ZTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UuaAppbmRleCBlNDhlODY2NzM1MzYy
ZDk0NzdhOGEyNTEwMDNjYzg2MTUwNTI3ZDE2Li45ZmEyOTJlZTUwZmFlZTg5YzM1Yzg2MWE4Zjk5
ZmExNmY5MDU0NzZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUv
QXBwbGljYXRpb25DYWNoZVN0b3JhZ2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBw
Y2FjaGUvQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMDgsIDIwMTAsIDIwMTEgQXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2Vy
dmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJl
c2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC00MSw3ICs0MSw3IEBA
IGNsYXNzIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTsKIGNsYXNzIFVSTDsKIGNsYXNzIFNlY3Vy
aXR5T3JpZ2luOwogY2xhc3MgU2hhcmVkQnVmZmVyOwotdGVtcGxhdGUgPGNsYXNzIFQ+IGNsYXNz
IFN0b3JhZ2VJREpvdXJuYWw7Cit0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgU3RvcmFnZUlESm91
cm5hbDsKIAogY2xhc3MgQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UgOiBwdWJsaWMgUmVmQ291bnRl
ZDxBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZT4gewogcHVibGljOgpAQCAtNzMsMTkgKzczLDE5IEBA
IHB1YmxpYzoKIAogICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogZmluZE9yQ3JlYXRlQ2FjaGVH
cm91cChjb25zdCBVUkwmIG1hbmlmZXN0VVJMKTsKICAgICBBcHBsaWNhdGlvbkNhY2hlR3JvdXAq
IGZpbmRJbk1lbW9yeUNhY2hlR3JvdXAoY29uc3QgVVJMJiBtYW5pZmVzdFVSTCkgY29uc3Q7Ci0g
ICAgdm9pZCBjYWNoZUdyb3VwRGVzdHJveWVkKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCopOwotICAg
IHZvaWQgY2FjaGVHcm91cE1hZGVPYnNvbGV0ZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAqKTsKLSAg
ICAgICAgCi0gICAgYm9vbCBzdG9yZU5ld2VzdENhY2hlKEFwcGxpY2F0aW9uQ2FjaGVHcm91cCos
IEFwcGxpY2F0aW9uQ2FjaGUqIG9sZENhY2hlLCBGYWlsdXJlUmVhc29uJiBmYWlsdXJlUmVhc29u
KTsKLSAgICBib29sIHN0b3JlTmV3ZXN0Q2FjaGUoQXBwbGljYXRpb25DYWNoZUdyb3VwKik7IC8v
IFVwZGF0ZXMgdGhlIGNhY2hlIGdyb3VwLCBidXQgZG9lc24ndCByZW1vdmUgb2xkIGNhY2hlLgor
ICAgIHZvaWQgY2FjaGVHcm91cERlc3Ryb3llZChBcHBsaWNhdGlvbkNhY2hlR3JvdXAmKTsKKyAg
ICB2b2lkIGNhY2hlR3JvdXBNYWRlT2Jzb2xldGUoQXBwbGljYXRpb25DYWNoZUdyb3VwJik7CisK
KyAgICBib29sIHN0b3JlTmV3ZXN0Q2FjaGUoQXBwbGljYXRpb25DYWNoZUdyb3VwJiwgQXBwbGlj
YXRpb25DYWNoZSogb2xkQ2FjaGUsIEZhaWx1cmVSZWFzb24mKTsKKyAgICBib29sIHN0b3JlTmV3
ZXN0Q2FjaGUoQXBwbGljYXRpb25DYWNoZUdyb3VwJik7IC8vIFVwZGF0ZXMgdGhlIGNhY2hlIGdy
b3VwLCBidXQgZG9lc24ndCByZW1vdmUgb2xkIGNhY2hlLgogICAgIGJvb2wgc3RvcmUoQXBwbGlj
YXRpb25DYWNoZVJlc291cmNlKiwgQXBwbGljYXRpb25DYWNoZSopOwogICAgIGJvb2wgc3RvcmVV
cGRhdGVkVHlwZShBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2UqLCBBcHBsaWNhdGlvbkNhY2hlKik7
CiAKICAgICAvLyBSZW1vdmVzIHRoZSBncm91cCBpZiB0aGUgY2FjaGUgdG8gYmUgcmVtb3ZlZCBp
cyB0aGUgbmV3ZXN0IG9uZSAoc28sIHN0b3JlTmV3ZXN0Q2FjaGUoKSBuZWVkcyB0byBiZSBjYWxs
ZWQgYmVmb3JlaGFuZCB3aGVuIHVwZGF0aW5nKS4KICAgICB2b2lkIHJlbW92ZShBcHBsaWNhdGlv
bkNhY2hlKik7Ci0gICAgCisKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGVtcHR5KCk7Ci0gICAg
CisKICAgICBib29sIGdldE1hbmlmZXN0VVJMcyhWZWN0b3I8VVJMPiogdXJscyk7CiAgICAgYm9v
bCBjYWNoZUdyb3VwU2l6ZShjb25zdCBTdHJpbmcmIG1hbmlmZXN0VVJMLCBpbnQ2NF90KiBzaXpl
KTsKICAgICBib29sIGRlbGV0ZUNhY2hlR3JvdXAoY29uc3QgU3RyaW5nJiBtYW5pZmVzdFVSTCk7
CkBAIC0xMDUsMTQgKzEwNSwxNSBAQCBwdWJsaWM6CiAKICAgICBzdGF0aWMgaW50NjRfdCB1bmtu
b3duUXVvdGEoKSB7IHJldHVybiAtMTsgfQogICAgIHN0YXRpYyBpbnQ2NF90IG5vUXVvdGEoKSB7
IHJldHVybiBzdGQ6Om51bWVyaWNfbGltaXRzPGludDY0X3Q+OjptYXgoKTsgfQorCiBwcml2YXRl
OgogICAgIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlKGNvbnN0IFN0cmluZyYgY2FjaGVEaXJlY3Rv
cnksIGNvbnN0IFN0cmluZyYgZmxhdEZpbGVTdWJkaXJlY3RvcnlOYW1lKTsKIAotICAgIFBhc3NS
ZWZQdHI8QXBwbGljYXRpb25DYWNoZT4gbG9hZENhY2hlKHVuc2lnbmVkIHN0b3JhZ2VJRCk7Cisg
ICAgUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGU+IGxvYWRDYWNoZSh1bnNpZ25lZCBzdG9yYWdlSUQp
OwogICAgIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogbG9hZENhY2hlR3JvdXAoY29uc3QgVVJMJiBt
YW5pZmVzdFVSTCk7CiAgICAgCi0gICAgdHlwZWRlZiBTdG9yYWdlSURKb3VybmFsPEFwcGxpY2F0
aW9uQ2FjaGVSZXNvdXJjZT4gUmVzb3VyY2VTdG9yYWdlSURKb3VybmFsOwotICAgIHR5cGVkZWYg
U3RvcmFnZUlESm91cm5hbDxBcHBsaWNhdGlvbkNhY2hlR3JvdXA+IEdyb3VwU3RvcmFnZUlESm91
cm5hbDsKKyAgICB1c2luZyBSZXNvdXJjZVN0b3JhZ2VJREpvdXJuYWwgPSBTdG9yYWdlSURKb3Vy
bmFsPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZT47CisgICAgdXNpbmcgR3JvdXBTdG9yYWdlSURK
b3VybmFsID0gU3RvcmFnZUlESm91cm5hbDxBcHBsaWNhdGlvbkNhY2hlR3JvdXA+OwogCiAgICAg
Ym9vbCBzdG9yZShBcHBsaWNhdGlvbkNhY2hlR3JvdXAqLCBHcm91cFN0b3JhZ2VJREpvdXJuYWwq
KTsKICAgICBib29sIHN0b3JlKEFwcGxpY2F0aW9uQ2FjaGUqLCBSZXNvdXJjZVN0b3JhZ2VJREpv
dXJuYWwqKTsKQEAgLTE1Miw4ICsxNTMsNyBAQCBwcml2YXRlOgogICAgIC8vIHdlIGtlZXAgYSBo
YXNoIHNldCBvZiB0aGUgaG9zdHMgb2YgdGhlIG1hbmlmZXN0IFVSTHMgb2YgYWxsIG5vbi1vYnNv
bGV0ZSBjYWNoZSBncm91cHMuCiAgICAgSGFzaENvdW50ZWRTZXQ8dW5zaWduZWQsIEFscmVhZHlI
YXNoZWQ+IG1fY2FjaGVIb3N0U2V0OwogICAgIAotICAgIHR5cGVkZWYgSGFzaE1hcDxTdHJpbmcs
IEFwcGxpY2F0aW9uQ2FjaGVHcm91cCo+IENhY2hlR3JvdXBNYXA7Ci0gICAgQ2FjaGVHcm91cE1h
cCBtX2NhY2hlc0luTWVtb3J5OyAvLyBFeGNsdWRlcyBvYnNvbGV0ZSBjYWNoZSBncm91cHMuCisg
ICAgSGFzaE1hcDxTdHJpbmcsIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCo+IG1fY2FjaGVzSW5NZW1v
cnk7IC8vIEV4Y2x1ZGVzIG9ic29sZXRlIGNhY2hlIGdyb3Vwcy4KIAogICAgIGZyaWVuZCBjbGFz
cyBXVEY6Ok5ldmVyRGVzdHJveWVkPEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlPjsKIH07CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25DYWNo
ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25DYWNo
ZS5jcHAKaW5kZXggNGQwZWVmMjI0YzBhYmQxODkxNWIzNjNlMTUxZTAwMDQ1ZDA5ODkxYy4uZWQ4
ZmFkOGY2OTYxMGE3M2VmNWRmMWE3N2UzN2NlZjJlYTQ0NWYwMSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0RPTUFwcGxpY2F0aW9uQ2FjaGUuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9ET01BcHBsaWNhdGlvbkNhY2hlLmNwcApAQCAt
MSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDgsIDIwMDkgQXBwbGUgSW5jLiBB
bGwgUmlnaHRzIFJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5j
LiBBbGwgUmlnaHRzIFJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBA
IC0yOSwxMTEgKzI5LDg0IEBACiAjaW5jbHVkZSAiQXBwbGljYXRpb25DYWNoZUhvc3QuaCIKICNp
bmNsdWRlICJEb2N1bWVudC5oIgogI2luY2x1ZGUgIkRvY3VtZW50TG9hZGVyLmgiCi0jaW5jbHVk
ZSAiRXZlbnQuaCIKLSNpbmNsdWRlICJFdmVudExpc3RlbmVyLmgiCi0jaW5jbHVkZSAiRXZlbnRO
YW1lcy5oIgogI2luY2x1ZGUgIkV4Y2VwdGlvbkNvZGUuaCIKICNpbmNsdWRlICJGcmFtZS5oIgot
I2luY2x1ZGUgIkZyYW1lTG9hZGVyLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotRE9NQXBw
bGljYXRpb25DYWNoZTo6RE9NQXBwbGljYXRpb25DYWNoZShGcmFtZSogZnJhbWUpCi0gICAgOiBE
T01XaW5kb3dQcm9wZXJ0eShmcmFtZSkKK0RPTUFwcGxpY2F0aW9uQ2FjaGU6OkRPTUFwcGxpY2F0
aW9uQ2FjaGUoRnJhbWUmIGZyYW1lKQorICAgIDogRE9NV2luZG93UHJvcGVydHkoJmZyYW1lKQog
ewotICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0KiBjYWNoZUhvc3QgPSBhcHBsaWNhdGlvbkNhY2hl
SG9zdCgpOwotICAgIGlmIChjYWNoZUhvc3QpCi0gICAgICAgIGNhY2hlSG9zdC0+c2V0RE9NQXBw
bGljYXRpb25DYWNoZSh0aGlzKTsKKyAgICBpZiAoYXV0byogaG9zdCA9IGFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KCkpCisgICAgICAgIGhvc3QtPnNldERPTUFwcGxpY2F0aW9uQ2FjaGUodGhpcyk7CiB9
CiAKIHZvaWQgRE9NQXBwbGljYXRpb25DYWNoZTo6ZGlzY29ubmVjdEZyYW1lRm9yRG9jdW1lbnRT
dXNwZW5zaW9uKCkKIHsKLSAgICBpZiAoQXBwbGljYXRpb25DYWNoZUhvc3QqIGNhY2hlSG9zdCA9
IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkpCi0gICAgICAgIGNhY2hlSG9zdC0+c2V0RE9NQXBwbGlj
YXRpb25DYWNoZShudWxscHRyKTsKKyAgICBpZiAoYXV0byogaG9zdCA9IGFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KCkpCisgICAgICAgIGhvc3QtPnNldERPTUFwcGxpY2F0aW9uQ2FjaGUobnVsbHB0cik7
CiAgICAgRE9NV2luZG93UHJvcGVydHk6OmRpc2Nvbm5lY3RGcmFtZUZvckRvY3VtZW50U3VzcGVu
c2lvbigpOwogfQogCiB2b2lkIERPTUFwcGxpY2F0aW9uQ2FjaGU6OnJlY29ubmVjdEZyYW1lRnJv
bURvY3VtZW50U3VzcGVuc2lvbihGcmFtZSogZnJhbWUpCiB7CiAgICAgRE9NV2luZG93UHJvcGVy
dHk6OnJlY29ubmVjdEZyYW1lRnJvbURvY3VtZW50U3VzcGVuc2lvbihmcmFtZSk7Ci0gICAgaWYg
KEFwcGxpY2F0aW9uQ2FjaGVIb3N0KiBjYWNoZUhvc3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9zdCgp
KQotICAgICAgICBjYWNoZUhvc3QtPnNldERPTUFwcGxpY2F0aW9uQ2FjaGUodGhpcyk7CisgICAg
aWYgKGF1dG8qIGhvc3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpKQorICAgICAgICBob3N0LT5z
ZXRET01BcHBsaWNhdGlvbkNhY2hlKHRoaXMpOwogfQogCiB2b2lkIERPTUFwcGxpY2F0aW9uQ2Fj
aGU6OndpbGxEZXN0cm95R2xvYmFsT2JqZWN0SW5GcmFtZSgpCiB7Ci0gICAgaWYgKEFwcGxpY2F0
aW9uQ2FjaGVIb3N0KiBjYWNoZUhvc3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpKQotICAgICAg
ICBjYWNoZUhvc3QtPnNldERPTUFwcGxpY2F0aW9uQ2FjaGUobnVsbHB0cik7CisgICAgaWYgKGF1
dG8qIGhvc3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpKQorICAgICAgICBob3N0LT5zZXRET01B
cHBsaWNhdGlvbkNhY2hlKG51bGxwdHIpOwogICAgIERPTVdpbmRvd1Byb3BlcnR5Ojp3aWxsRGVz
dHJveUdsb2JhbE9iamVjdEluRnJhbWUoKTsKIH0KIAogQXBwbGljYXRpb25DYWNoZUhvc3QqIERP
TUFwcGxpY2F0aW9uQ2FjaGU6OmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkgY29uc3QKIHsKLSAgICBp
ZiAoIW1fZnJhbWUgfHwgIW1fZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkpCisgICAg
aWYgKCFtX2ZyYW1lKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICByZXR1cm4gbV9mcmFt
ZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKTsKKyAg
ICBhdXRvKiBkb2N1bWVudExvYWRlciA9IG1fZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVy
KCk7CisgICAgaWYgKCFkb2N1bWVudExvYWRlcikKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7Cisg
ICAgcmV0dXJuICZkb2N1bWVudExvYWRlci0+YXBwbGljYXRpb25DYWNoZUhvc3QoKTsKIH0KIAog
dW5zaWduZWQgc2hvcnQgRE9NQXBwbGljYXRpb25DYWNoZTo6c3RhdHVzKCkgY29uc3QKIHsKLSAg
ICBBcHBsaWNhdGlvbkNhY2hlSG9zdCogY2FjaGVIb3N0ID0gYXBwbGljYXRpb25DYWNoZUhvc3Qo
KTsKLSAgICBpZiAoIWNhY2hlSG9zdCkKKyAgICBhdXRvKiBob3N0ID0gYXBwbGljYXRpb25DYWNo
ZUhvc3QoKTsKKyAgICBpZiAoIWhvc3QpCiAgICAgICAgIHJldHVybiBBcHBsaWNhdGlvbkNhY2hl
SG9zdDo6VU5DQUNIRUQ7Ci0gICAgcmV0dXJuIGNhY2hlSG9zdC0+c3RhdHVzKCk7CisgICAgcmV0
dXJuIGhvc3QtPnN0YXR1cygpOwogfQogCiBFeGNlcHRpb25Pcjx2b2lkPiBET01BcHBsaWNhdGlv
bkNhY2hlOjp1cGRhdGUoKQogewotICAgIGF1dG8qIGNhY2hlSG9zdCA9IGFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KCk7Ci0gICAgaWYgKCFjYWNoZUhvc3QgfHwgIWNhY2hlSG9zdC0+dXBkYXRlKCkpCisg
ICAgYXV0byogaG9zdCA9IGFwcGxpY2F0aW9uQ2FjaGVIb3N0KCk7CisgICAgaWYgKCFob3N0IHx8
ICFob3N0LT51cGRhdGUoKSkKICAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IElOVkFMSURfU1RB
VEVfRVJSIH07CiAgICAgcmV0dXJuIHsgfTsKIH0KIAogRXhjZXB0aW9uT3I8dm9pZD4gRE9NQXBw
bGljYXRpb25DYWNoZTo6c3dhcENhY2hlKCkKIHsKLSAgICBhdXRvKiBjYWNoZUhvc3QgPSBhcHBs
aWNhdGlvbkNhY2hlSG9zdCgpOwotICAgIGlmICghY2FjaGVIb3N0IHx8ICFjYWNoZUhvc3QtPnN3
YXBDYWNoZSgpKQorICAgIGF1dG8qIGhvc3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpOworICAg
IGlmICghaG9zdCB8fCAhaG9zdC0+c3dhcENhY2hlKCkpCiAgICAgICAgIHJldHVybiBFeGNlcHRp
b24geyBJTlZBTElEX1NUQVRFX0VSUiB9OwogICAgIHJldHVybiB7IH07CiB9CiAKIHZvaWQgRE9N
QXBwbGljYXRpb25DYWNoZTo6YWJvcnQoKQogewotICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0KiBj
YWNoZUhvc3QgPSBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpOwotICAgIGlmIChjYWNoZUhvc3QpCi0g
ICAgICAgIGNhY2hlSG9zdC0+YWJvcnQoKTsKKyAgICBpZiAoYXV0byogaG9zdCA9IGFwcGxpY2F0
aW9uQ2FjaGVIb3N0KCkpCisgICAgICAgIGhvc3QtPmFib3J0KCk7CiB9CiAKIFNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQqIERPTUFwcGxpY2F0aW9uQ2FjaGU6OnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQo
KSBjb25zdAogewotICAgIGlmIChtX2ZyYW1lKQotICAgICAgICByZXR1cm4gbV9mcmFtZS0+ZG9j
dW1lbnQoKTsKLSAgICByZXR1cm4gbnVsbHB0cjsKLX0KLQotY29uc3QgQXRvbWljU3RyaW5nJiBE
T01BcHBsaWNhdGlvbkNhY2hlOjp0b0V2ZW50VHlwZShBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RXZl
bnRJRCBpZCkKLXsKLSAgICBzd2l0Y2ggKGlkKSB7Ci0gICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hl
SG9zdDo6Q0hFQ0tJTkdfRVZFTlQ6Ci0gICAgICAgIHJldHVybiBldmVudE5hbWVzKCkuY2hlY2tp
bmdFdmVudDsKLSAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpFUlJPUl9FVkVOVDoKLSAg
ICAgICAgcmV0dXJuIGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50OwotICAgIGNhc2UgQXBwbGljYXRp
b25DYWNoZUhvc3Q6Ok5PVVBEQVRFX0VWRU5UOgotICAgICAgICByZXR1cm4gZXZlbnROYW1lcygp
Lm5vdXBkYXRlRXZlbnQ7Ci0gICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RE9XTkxPQURJ
TkdfRVZFTlQ6Ci0gICAgICAgIHJldHVybiBldmVudE5hbWVzKCkuZG93bmxvYWRpbmdFdmVudDsK
LSAgICBjYXNlIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpQUk9HUkVTU19FVkVOVDoKLSAgICAgICAg
cmV0dXJuIGV2ZW50TmFtZXMoKS5wcm9ncmVzc0V2ZW50OwotICAgIGNhc2UgQXBwbGljYXRpb25D
YWNoZUhvc3Q6OlVQREFURVJFQURZX0VWRU5UOgotICAgICAgICByZXR1cm4gZXZlbnROYW1lcygp
LnVwZGF0ZXJlYWR5RXZlbnQ7Ci0gICAgY2FzZSBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q0FDSEVE
X0VWRU5UOgotICAgICAgICByZXR1cm4gZXZlbnROYW1lcygpLmNhY2hlZEV2ZW50OwotICAgIGNh
c2UgQXBwbGljYXRpb25DYWNoZUhvc3Q6Ok9CU09MRVRFX0VWRU5UOiAgICAgICAgICAgIAotICAg
ICAgICByZXR1cm4gZXZlbnROYW1lcygpLm9ic29sZXRlRXZlbnQ7Ci0gICAgfQotICAgIEFTU0VS
VF9OT1RfUkVBQ0hFRCgpOwotICAgIHJldHVybiBldmVudE5hbWVzKCkuZXJyb3JFdmVudDsKKyAg
ICBpZiAoIW1fZnJhbWUpCisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIHJldHVybiBtX2Zy
YW1lLT5kb2N1bWVudCgpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25DYWNoZS5oIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0RPTUFwcGxpY2F0aW9uQ2FjaGUuaAppbmRl
eCAzZjIwZDhjMmI3NTE5NzMyZmFhMWY3ZDBlZTBmOTA0YTk3ODUwMTlkLi5jZjZkMmE5ZDk5Zjcw
NjhjMDZjYzJmNGEyNzExMWUyZGNkYzFlNjc1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25DYWNoZS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9hcHBjYWNoZS9ET01BcHBsaWNhdGlvbkNhY2hlLmgKQEAgLTEsNSArMSw1IEBACiAv
KgotICogQ29weXJpZ2h0IChDKSAyMDA4LCAyMDA5IEFwcGxlIEluYy4gQWxsIFJpZ2h0cyBSZXNl
cnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOC0yMDE3IEFwcGxlIEluYy4gQWxsIFJpZ2h0cyBS
ZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMjUsNDYgKzI1LDM5
IEBACiAKICNwcmFnbWEgb25jZQogCi0jaW5jbHVkZSAiQXBwbGljYXRpb25DYWNoZUhvc3QuaCIK
ICNpbmNsdWRlICJET01XaW5kb3dQcm9wZXJ0eS5oIgogI2luY2x1ZGUgIkV2ZW50VGFyZ2V0Lmgi
Ci0jaW5jbHVkZSAiRXhjZXB0aW9uT3IuaCIKLSNpbmNsdWRlICJTY3JpcHRXcmFwcGFibGUuaCIK
LSNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgotI2luY2x1ZGUgPHd0Zi90ZXh0L0F0b21pY1N0cmlu
Z0hhc2guaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitjbGFzcyBBcHBsaWNhdGlvbkNhY2hl
SG9zdDsKIGNsYXNzIEZyYW1lOwotY2xhc3MgVVJMOwogCiBjbGFzcyBET01BcHBsaWNhdGlvbkNh
Y2hlIGZpbmFsIDogcHVibGljIFJlZkNvdW50ZWQ8RE9NQXBwbGljYXRpb25DYWNoZT4sIHB1Ymxp
YyBFdmVudFRhcmdldFdpdGhJbmxpbmVEYXRhLCBwdWJsaWMgRE9NV2luZG93UHJvcGVydHkgewog
cHVibGljOgotICAgIHN0YXRpYyBSZWY8RE9NQXBwbGljYXRpb25DYWNoZT4gY3JlYXRlKEZyYW1l
KiBmcmFtZSkgeyByZXR1cm4gYWRvcHRSZWYoKm5ldyBET01BcHBsaWNhdGlvbkNhY2hlKGZyYW1l
KSk7IH0KKyAgICBzdGF0aWMgUmVmPERPTUFwcGxpY2F0aW9uQ2FjaGU+IGNyZWF0ZShGcmFtZSYg
ZnJhbWUpIHsgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRE9NQXBwbGljYXRpb25DYWNoZShmcmFtZSkp
OyB9CiAgICAgdmlydHVhbCB+RE9NQXBwbGljYXRpb25DYWNoZSgpIHsgQVNTRVJUKCFtX2ZyYW1l
KTsgfQogCi0gICAgdm9pZCBkaXNjb25uZWN0RnJhbWVGb3JEb2N1bWVudFN1c3BlbnNpb24oKSBv
dmVycmlkZTsKLSAgICB2b2lkIHJlY29ubmVjdEZyYW1lRnJvbURvY3VtZW50U3VzcGVuc2lvbihG
cmFtZSopIG92ZXJyaWRlOwotICAgIHZvaWQgd2lsbERlc3Ryb3lHbG9iYWxPYmplY3RJbkZyYW1l
KCkgb3ZlcnJpZGU7Ci0KICAgICB1bnNpZ25lZCBzaG9ydCBzdGF0dXMoKSBjb25zdDsKICAgICBF
eGNlcHRpb25Pcjx2b2lkPiB1cGRhdGUoKTsKICAgICBFeGNlcHRpb25Pcjx2b2lkPiBzd2FwQ2Fj
aGUoKTsKICAgICB2b2lkIGFib3J0KCk7CiAKLSAgICB1c2luZyBSZWZDb3VudGVkPERPTUFwcGxp
Y2F0aW9uQ2FjaGU+OjpyZWY7Ci0gICAgdXNpbmcgUmVmQ291bnRlZDxET01BcHBsaWNhdGlvbkNh
Y2hlPjo6ZGVyZWY7CisgICAgdXNpbmcgUmVmQ291bnRlZDo6cmVmOworICAgIHVzaW5nIFJlZkNv
dW50ZWQ6OmRlcmVmOwogCi0gICAgRXZlbnRUYXJnZXRJbnRlcmZhY2UgZXZlbnRUYXJnZXRJbnRl
cmZhY2UoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBET01BcHBsaWNhdGlvbkNhY2hlRXZlbnRU
YXJnZXRJbnRlcmZhY2VUeXBlOyB9Ci0gICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0
RXhlY3V0aW9uQ29udGV4dCgpIGNvbnN0IG92ZXJyaWRlOworcHJpdmF0ZToKKyAgICBleHBsaWNp
dCBET01BcHBsaWNhdGlvbkNhY2hlKEZyYW1lJik7CiAKLSAgICBzdGF0aWMgY29uc3QgQXRvbWlj
U3RyaW5nJiB0b0V2ZW50VHlwZShBcHBsaWNhdGlvbkNhY2hlSG9zdDo6RXZlbnRJRCBpZCk7Cisg
ICAgdm9pZCByZWZFdmVudFRhcmdldCgpIGZpbmFsIHsgcmVmKCk7IH0KKyAgICB2b2lkIGRlcmVm
RXZlbnRUYXJnZXQoKSBmaW5hbCB7IGRlcmVmKCk7IH0KIAotcHJpdmF0ZToKLSAgICBleHBsaWNp
dCBET01BcHBsaWNhdGlvbkNhY2hlKEZyYW1lKik7CisgICAgRXZlbnRUYXJnZXRJbnRlcmZhY2Ug
ZXZlbnRUYXJnZXRJbnRlcmZhY2UoKSBjb25zdCBmaW5hbCB7IHJldHVybiBET01BcHBsaWNhdGlv
bkNhY2hlRXZlbnRUYXJnZXRJbnRlcmZhY2VUeXBlOyB9CisgICAgU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNvbnN0IGZpbmFsOwogCi0gICAgdm9pZCBy
ZWZFdmVudFRhcmdldCgpIG92ZXJyaWRlIHsgcmVmKCk7IH0KLSAgICB2b2lkIGRlcmVmRXZlbnRU
YXJnZXQoKSBvdmVycmlkZSB7IGRlcmVmKCk7IH0KKyAgICB2b2lkIGRpc2Nvbm5lY3RGcmFtZUZv
ckRvY3VtZW50U3VzcGVuc2lvbigpIGZpbmFsOworICAgIHZvaWQgcmVjb25uZWN0RnJhbWVGcm9t
RG9jdW1lbnRTdXNwZW5zaW9uKEZyYW1lKikgZmluYWw7CisgICAgdm9pZCB3aWxsRGVzdHJveUds
b2JhbE9iamVjdEluRnJhbWUoKSBmaW5hbDsKIAogICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0KiBh
cHBsaWNhdGlvbkNhY2hlSG9zdCgpIGNvbnN0OwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9hcHBjYWNoZS9NYW5pZmVzdFBhcnNlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvYXBwY2FjaGUvTWFuaWZlc3RQYXJzZXIuY3BwCmluZGV4IDYwMTE0MWQ2ZmY2NjQ2NTU0
NmI4MWMyNGEwZmE4YjliOTFkYzRjOTUuLjVjMTUxMzU5ZGU5ODNhODFhNzU2MDUzYmJlY2RjZmI4
OWI0NTgyNjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9NYW5p
ZmVzdFBhcnNlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL01hbmlm
ZXN0UGFyc2VyLmNwcApAQCAtMTE5LDggKzExOSw3IEBAIGJvb2wgcGFyc2VNYW5pZmVzdChjb25z
dCBVUkwmIG1hbmlmZXN0VVJMLCBjb25zdCBjaGFyKiBkYXRhLCBpbnQgbGVuZ3RoLCBNYW5pZmVz
CiAgICAgICAgICAgICBpZiAoIXVybC5pc1ZhbGlkKCkpCiAgICAgICAgICAgICAgICAgY29udGlu
dWU7CiAKLSAgICAgICAgICAgIGlmICh1cmwuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkpCi0gICAg
ICAgICAgICAgICAgdXJsLnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpOworICAgICAgICAgICAg
dXJsLnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpOwogICAgICAgICAgICAgCiAgICAgICAgICAg
ICBpZiAoIWVxdWFsSWdub3JpbmdBU0NJSUNhc2UodXJsLnByb3RvY29sKCksIG1hbmlmZXN0VVJM
LnByb3RvY29sKCkpKQogICAgICAgICAgICAgICAgIGNvbnRpbnVlOwpAQCAtMTUwLDggKzE0OSw3
IEBAIGJvb2wgcGFyc2VNYW5pZmVzdChjb25zdCBVUkwmIG1hbmlmZXN0VVJMLCBjb25zdCBjaGFy
KiBkYXRhLCBpbnQgbGVuZ3RoLCBNYW5pZmVzCiAgICAgICAgICAgICBVUkwgbmFtZXNwYWNlVVJM
KG1hbmlmZXN0VVJMLCBsaW5lLnN1YnN0cmluZygwLCBwIC0gdXBjb252ZXJ0ZWRMaW5lQ2hhcmFj
dGVycykpOwogICAgICAgICAgICAgaWYgKCFuYW1lc3BhY2VVUkwuaXNWYWxpZCgpKQogICAgICAg
ICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgICAgaWYgKG5hbWVzcGFjZVVSTC5oYXNGcmFn
bWVudElkZW50aWZpZXIoKSkKLSAgICAgICAgICAgICAgICBuYW1lc3BhY2VVUkwucmVtb3ZlRnJh
Z21lbnRJZGVudGlmaWVyKCk7CisgICAgICAgICAgICBuYW1lc3BhY2VVUkwucmVtb3ZlRnJhZ21l
bnRJZGVudGlmaWVyKCk7CiAKICAgICAgICAgICAgIGlmICghcHJvdG9jb2xIb3N0QW5kUG9ydEFy
ZUVxdWFsKG1hbmlmZXN0VVJMLCBuYW1lc3BhY2VVUkwpKQogICAgICAgICAgICAgICAgIGNvbnRp
bnVlOwpAQCAtMTY4LDggKzE2Niw3IEBAIGJvb2wgcGFyc2VNYW5pZmVzdChjb25zdCBVUkwmIG1h
bmlmZXN0VVJMLCBjb25zdCBjaGFyKiBkYXRhLCBpbnQgbGVuZ3RoLCBNYW5pZmVzCiAgICAgICAg
ICAgICBVUkwgZmFsbGJhY2tVUkwobWFuaWZlc3RVUkwsIFN0cmluZyhmYWxsYmFja1N0YXJ0LCBw
IC0gZmFsbGJhY2tTdGFydCkpOwogICAgICAgICAgICAgaWYgKCFmYWxsYmFja1VSTC5pc1ZhbGlk
KCkpCiAgICAgICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgICAgICBpZiAoZmFsbGJhY2tV
UkwuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkpCi0gICAgICAgICAgICAgICAgZmFsbGJhY2tVUkwu
cmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CisgICAgICAgICAgICBmYWxsYmFja1VSTC5yZW1v
dmVGcmFnbWVudElkZW50aWZpZXIoKTsKIAogICAgICAgICAgICAgaWYgKCFwcm90b2NvbEhvc3RB
bmRQb3J0QXJlRXF1YWwobWFuaWZlc3RVUkwsIGZhbGxiYWNrVVJMKSkKICAgICAgICAgICAgICAg
ICBjb250aW51ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9N
YW5pZmVzdFBhcnNlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL01hbmlmZXN0
UGFyc2VyLmgKaW5kZXggZjgzMzI0ODdjOTUxNmE0MGM5MDQ4MGQ1NDA0ZDgzZWJlYjRmZGRmMC4u
YjI4MjQ5ZWJlNDdmNWQ2NmQyZTIxNDYzOTczMTA2ZjEwY2MyYmY1NiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL01hbmlmZXN0UGFyc2VyLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL01hbmlmZXN0UGFyc2VyLmgKQEAgLTMwLDE1ICszMCwx
NSBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLSAgICBjbGFzcyBVUkw7CitjbGFzcyBVUkw7
CiAKLSAgICBzdHJ1Y3QgTWFuaWZlc3QgewotICAgICAgICBWZWN0b3I8VVJMPiBvbmxpbmVXaGl0
ZWxpc3RlZFVSTHM7Ci0gICAgICAgIEhhc2hTZXQ8U3RyaW5nPiBleHBsaWNpdFVSTHM7Ci0gICAg
ICAgIEZhbGxiYWNrVVJMVmVjdG9yIGZhbGxiYWNrVVJMczsKLSAgICAgICAgYm9vbCBhbGxvd0Fs
bE5ldHdvcmtSZXF1ZXN0czsgLy8gV2lsZGNhcmQgZm91bmQgaW4gTkVUV09SSyBzZWN0aW9uLgot
ICAgIH07CitzdHJ1Y3QgTWFuaWZlc3QgeworICAgIFZlY3RvcjxVUkw+IG9ubGluZVdoaXRlbGlz
dGVkVVJMczsKKyAgICBIYXNoU2V0PFN0cmluZz4gZXhwbGljaXRVUkxzOworICAgIEZhbGxiYWNr
VVJMVmVjdG9yIGZhbGxiYWNrVVJMczsKKyAgICBib29sIGFsbG93QWxsTmV0d29ya1JlcXVlc3Rz
OyAvLyBXaWxkY2FyZCBmb3VuZCBpbiBORVRXT1JLIHNlY3Rpb24uCit9OwogCi0gICAgYm9vbCBw
YXJzZU1hbmlmZXN0KGNvbnN0IFVSTCYgbWFuaWZlc3RVUkwsIGNvbnN0IGNoYXIqIGRhdGEsIGlu
dCBsZW5ndGgsIE1hbmlmZXN0Jik7Citib29sIHBhcnNlTWFuaWZlc3QoY29uc3QgVVJMJiBtYW5p
ZmVzdFVSTCwgY29uc3QgY2hhciogZGF0YSwgaW50IGxlbmd0aCwgTWFuaWZlc3QmKTsKIAogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Fy
Y2hpdmUvQXJjaGl2ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZl
LmNwcAppbmRleCBlODlhNDk5ZGY0MDQ0NmMzMjYwYmJmZjFiMjhkZTBkOWFkOTc3YTBlLi41ZTA1
YmUyMmM3ZDRlYTdmMTIyYmE0MTE3ODY5M2YyNWVkMmUwZWRhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmNwcApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmln
aHQgKEMpIDIwMDggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0
IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0zNywxNyArMzcsMTcgQEAgQXJjaGl2ZTo6fkFyY2hp
dmUoKQogCiB2b2lkIEFyY2hpdmU6OmNsZWFyQWxsU3ViZnJhbWVBcmNoaXZlcygpCiB7Ci0gICAg
VmVjdG9yPFJlZlB0cjxBcmNoaXZlPj4gY2xlYXJlZEFyY2hpdmVzOwotICAgIGNsZWFyQWxsU3Vi
ZnJhbWVBcmNoaXZlc0ltcGwoJmNsZWFyZWRBcmNoaXZlcyk7CisgICAgSGFzaFNldDxBcmNoaXZl
Kj4gY2xlYXJlZEFyY2hpdmVzOworICAgIGNsZWFyZWRBcmNoaXZlcy5hZGQodGhpcyk7CisgICAg
Y2xlYXJBbGxTdWJmcmFtZUFyY2hpdmVzKGNsZWFyZWRBcmNoaXZlcyk7CiB9CiAKLXZvaWQgQXJj
aGl2ZTo6Y2xlYXJBbGxTdWJmcmFtZUFyY2hpdmVzSW1wbChWZWN0b3I8UmVmUHRyPEFyY2hpdmU+
PiogY2xlYXJlZEFyY2hpdmVzKQordm9pZCBBcmNoaXZlOjpjbGVhckFsbFN1YmZyYW1lQXJjaGl2
ZXMoSGFzaFNldDxBcmNoaXZlKj4mIGNsZWFyZWRBcmNoaXZlcykKIHsKKyAgICBBU1NFUlQoY2xl
YXJlZEFyY2hpdmVzLmNvbnRhaW5zKHRoaXMpKTsKICAgICBmb3IgKGF1dG8mIGFyY2hpdmUgOiBt
X3N1YmZyYW1lQXJjaGl2ZXMpIHsKLSAgICAgICAgaWYgKCFjbGVhcmVkQXJjaGl2ZXMtPmNvbnRh
aW5zKGFyY2hpdmUpKSB7Ci0gICAgICAgICAgICBjbGVhcmVkQXJjaGl2ZXMtPmFwcGVuZChhcmNo
aXZlKTsKLSAgICAgICAgICAgIGFyY2hpdmUtPmNsZWFyQWxsU3ViZnJhbWVBcmNoaXZlc0ltcGwo
Y2xlYXJlZEFyY2hpdmVzKTsKLSAgICAgICAgfQorICAgICAgICBpZiAoY2xlYXJlZEFyY2hpdmVz
LmFkZChhcmNoaXZlLnB0cigpKSkKKyAgICAgICAgICAgIGFyY2hpdmUtPmNsZWFyQWxsU3ViZnJh
bWVBcmNoaXZlcyhjbGVhcmVkQXJjaGl2ZXMpOwogICAgIH0KICAgICBtX3N1YmZyYW1lQXJjaGl2
ZXMuY2xlYXIoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZl
L0FyY2hpdmUuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmUuaAppbmRl
eCBmMjA2NTQ5MzIyNDIzYTdmYjI0MDBkZTU4YzlmNGExOTIyZGRhZWU3Li5mZjc0Y2UyODMxYWE0
ZDI3MzU0MmYxMmQ5OTM3ODI0NTE2MDJlM2M3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvYXJjaGl2ZS9BcmNoaXZlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hp
dmUvQXJjaGl2ZS5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAx
NyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKQEAgLTI5LDQxICsyOSwzOCBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJB
cmNoaXZlUmVzb3VyY2UuaCIKLQotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVk
ZSA8d3RmL1JlZkNvdW50ZWQuaD4KLSNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+Ci0jaW5jbHVkZSA8
d3RmL1ZlY3Rvci5oPgorI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAogY2xhc3MgQXJjaGl2ZSA6IHB1YmxpYyBSZWZDb3VudGVkPEFyY2hpdmU+IHsKIHB1
YmxpYzoKLSAgICBlbnVtIFR5cGUgewotICAgICAgV2ViQXJjaGl2ZSwKLSAgICAgIE1IVE1MCi0g
ICAgfTsKICAgICB2aXJ0dWFsIH5BcmNoaXZlKCk7Ci0gICAgdmlydHVhbCBUeXBlIHR5cGUoKSBj
b25zdCA9IDA7CisKKyAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkTG9hZEZyb21BcmNoaXZlT25seSgp
IGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkT3ZlcnJpZGVCYXNlVVJMKCkgY29u
c3QgPSAwOworICAgIHZpcnR1YWwgYm9vbCBzaG91bGRVc2VNYWluUmVzb3VyY2VFbmNvZGluZygp
IGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkVXNlTWFpblJlc291cmNlVVJMKCkg
Y29uc3QgPSAwOworCiAgICAgQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3VyY2UoKSB7IHJldHVy
biBtX21haW5SZXNvdXJjZS5nZXQoKTsgfQotICAgIGNvbnN0IFZlY3RvcjxSZWZQdHI8QXJjaGl2
ZVJlc291cmNlPj4mIHN1YnJlc291cmNlcygpIGNvbnN0IHsgcmV0dXJuIG1fc3VicmVzb3VyY2Vz
OyB9Ci0gICAgY29uc3QgVmVjdG9yPFJlZlB0cjxBcmNoaXZlPj4mIHN1YmZyYW1lQXJjaGl2ZXMo
KSBjb25zdCB7IHJldHVybiBtX3N1YmZyYW1lQXJjaGl2ZXM7IH0KKyAgICBjb25zdCBWZWN0b3I8
UmVmPEFyY2hpdmVSZXNvdXJjZT4+JiBzdWJyZXNvdXJjZXMoKSBjb25zdCB7IHJldHVybiBtX3N1
YnJlc291cmNlczsgfQorICAgIGNvbnN0IFZlY3RvcjxSZWY8QXJjaGl2ZT4+JiBzdWJmcmFtZUFy
Y2hpdmVzKCkgY29uc3QgeyByZXR1cm4gbV9zdWJmcmFtZUFyY2hpdmVzOyB9CiAKIHByb3RlY3Rl
ZDoKICAgICAvLyBUaGVzZSBtZXRob2RzIGFyZSBtZWFudCBmb3Igc3ViY2xhc3NlcyBmb3IgZGlm
ZmVyZW50IGFyY2hpdmUgdHlwZXMgdG8gYWRkIHJlc291cmNlcyBpbiB0byB0aGUgYXJjaGl2ZSwK
ICAgICAvLyBhbmQgc2hvdWxkIG5vdCBiZSBleHBvc2VkIGFzIGFyY2hpdmVzIHNob3VsZCBiZSBp
bW11dGFibGUgdG8gY2xpZW50cwotICAgIHZvaWQgc2V0TWFpblJlc291cmNlKFBhc3NSZWZQdHI8
QXJjaGl2ZVJlc291cmNlPiBtYWluUmVzb3VyY2UpIHsgbV9tYWluUmVzb3VyY2UgPSBtYWluUmVz
b3VyY2U7IH0KLSAgICB2b2lkIGFkZFN1YnJlc291cmNlKFBhc3NSZWZQdHI8QXJjaGl2ZVJlc291
cmNlPiBzdWJSZXNvdXJjZSkgeyBtX3N1YnJlc291cmNlcy5hcHBlbmQoc3ViUmVzb3VyY2UpOyB9
Ci0gICAgdm9pZCBhZGRTdWJmcmFtZUFyY2hpdmUoUGFzc1JlZlB0cjxBcmNoaXZlPiBzdWJmcmFt
ZUFyY2hpdmUpIHsgbV9zdWJmcmFtZUFyY2hpdmVzLmFwcGVuZChzdWJmcmFtZUFyY2hpdmUpOyB9
CisgICAgdm9pZCBzZXRNYWluUmVzb3VyY2UoUmVmPEFyY2hpdmVSZXNvdXJjZT4mJiBtYWluUmVz
b3VyY2UpIHsgbV9tYWluUmVzb3VyY2UgPSBXVEZNb3ZlKG1haW5SZXNvdXJjZSk7IH0KKyAgICB2
b2lkIGFkZFN1YnJlc291cmNlKFJlZjxBcmNoaXZlUmVzb3VyY2U+JiYgcmVzb3VyY2UpIHsgbV9z
dWJyZXNvdXJjZXMuYXBwZW5kKFdURk1vdmUocmVzb3VyY2UpKTsgfQorICAgIHZvaWQgYWRkU3Vi
ZnJhbWVBcmNoaXZlKFJlZjxBcmNoaXZlPiYmIHN1YmZyYW1lQXJjaGl2ZSkgeyBtX3N1YmZyYW1l
QXJjaGl2ZXMuYXBwZW5kKFdURk1vdmUoc3ViZnJhbWVBcmNoaXZlKSk7IH0KIAogICAgIHZvaWQg
Y2xlYXJBbGxTdWJmcmFtZUFyY2hpdmVzKCk7CiAKIHByaXZhdGU6Ci0gICAgdm9pZCBjbGVhckFs
bFN1YmZyYW1lQXJjaGl2ZXNJbXBsKFZlY3RvcjxSZWZQdHI8QXJjaGl2ZT4+KiBjbGVhcmVkQXJj
aGl2ZXMpOworICAgIHZvaWQgY2xlYXJBbGxTdWJmcmFtZUFyY2hpdmVzKEhhc2hTZXQ8QXJjaGl2
ZSo+Jik7CiAKICAgICBSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBtX21haW5SZXNvdXJjZTsKLSAg
ICBWZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+IG1fc3VicmVzb3VyY2VzOwotICAgIFZl
Y3RvcjxSZWZQdHI8QXJjaGl2ZT4+IG1fc3ViZnJhbWVBcmNoaXZlczsKKyAgICBWZWN0b3I8UmVm
PEFyY2hpdmVSZXNvdXJjZT4+IG1fc3VicmVzb3VyY2VzOworICAgIFZlY3RvcjxSZWY8QXJjaGl2
ZT4+IG1fc3ViZnJhbWVBcmNoaXZlczsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmVGYWN0b3J5LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmVGYWN0b3J5LmNwcAppbmRl
eCA5MGI2Nzk5NTE1NmRiMDhlZTRiZTQ3NTQ4NzVhZGU1Y2ZhMzYyZDljLi40MTdhYzQ3YTczNmNl
NjViMjIzM2MxZmNiNTYyZGY3MTZlYjZhYmIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvYXJjaGl2ZS9BcmNoaXZlRmFjdG9yeS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2FyY2hpdmUvQXJjaGl2ZUZhY3RvcnkuY3BwCkBAIC00OSwzMSArNDksMzMgQEAgbmFtZXNw
YWNlIFdlYkNvcmUgewogdHlwZWRlZiBSZWZQdHI8QXJjaGl2ZT4gUmF3RGF0YUNyZWF0aW9uRnVu
Y3Rpb24oY29uc3QgVVJMJiwgU2hhcmVkQnVmZmVyJik7CiB0eXBlZGVmIEhhc2hNYXA8U3RyaW5n
LCBSYXdEYXRhQ3JlYXRpb25GdW5jdGlvbiosIEFTQ0lJQ2FzZUluc2Vuc2l0aXZlSGFzaD4gQXJj
aGl2ZU1JTUVUeXBlc01hcDsKIAotLy8gVGhlIGNyZWF0ZSBmdW5jdGlvbnMgaW4gdGhlIGFyY2hp
dmUgY2xhc3NlcyByZXR1cm4gUGFzc1JlZlB0ciB0byBjb25jcmV0ZSBzdWJjbGFzc2VzCisvLyBU
aGUgY3JlYXRlIGZ1bmN0aW9ucyBpbiB0aGUgYXJjaGl2ZSBjbGFzc2VzIHJldHVybiBSZWZQdHIg
dG8gY29uY3JldGUgc3ViY2xhc3NlcwogLy8gb2YgQXJjaGl2ZS4gVGhpcyBhZGFwdG9yIG1ha2Vz
IHRoZSBmdW5jdGlvbnMgaGF2ZSBhIHVuaWZvcm0gcmV0dXJuIHR5cGUuCi10ZW1wbGF0ZSA8dHlw
ZW5hbWUgQXJjaGl2ZUNsYXNzPiBzdGF0aWMgUmVmUHRyPEFyY2hpdmU+IGFyY2hpdmVGYWN0b3J5
Q3JlYXRlKGNvbnN0IFVSTCYgdXJsLCBTaGFyZWRCdWZmZXImIGJ1ZmZlcikKK3RlbXBsYXRlPHR5
cGVuYW1lIEFyY2hpdmVDbGFzcz4gc3RhdGljIFJlZlB0cjxBcmNoaXZlPiBhcmNoaXZlRmFjdG9y
eUNyZWF0ZShjb25zdCBVUkwmIHVybCwgU2hhcmVkQnVmZmVyJiBidWZmZXIpCiB7CiAgICAgcmV0
dXJuIEFyY2hpdmVDbGFzczo6Y3JlYXRlKHVybCwgYnVmZmVyKTsKIH0KIAotc3RhdGljIEFyY2hp
dmVNSU1FVHlwZXNNYXAmIGFyY2hpdmVNSU1FVHlwZXMoKQorc3RhdGljIEFyY2hpdmVNSU1FVHlw
ZXNNYXAgY3JlYXRlQXJjaGl2ZU1JTUVUeXBlc01hcCgpCiB7Ci0gICAgc3RhdGljIE5ldmVyRGVz
dHJveWVkPEFyY2hpdmVNSU1FVHlwZXNNYXA+IG1pbWVUeXBlczsKLSAgICBzdGF0aWMgYm9vbCBp
bml0aWFsaXplZCA9IGZhbHNlOwotCi0gICAgaWYgKGluaXRpYWxpemVkKQotICAgICAgICByZXR1
cm4gbWltZVR5cGVzOworICAgIEFyY2hpdmVNSU1FVHlwZXNNYXAgbWFwOwogCiAjaWYgRU5BQkxF
KFdFQl9BUkNISVZFKSAmJiBVU0UoQ0YpCi0gICAgbWltZVR5cGVzLmdldCgpLnNldCgiYXBwbGlj
YXRpb24veC13ZWJhcmNoaXZlIiwgYXJjaGl2ZUZhY3RvcnlDcmVhdGU8TGVnYWN5V2ViQXJjaGl2
ZT4pOworICAgIG1hcC5hZGQoQVNDSUlMaXRlcmFsIHsgImFwcGxpY2F0aW9uL3gtd2ViYXJjaGl2
ZSIgfSwgYXJjaGl2ZUZhY3RvcnlDcmVhdGU8TGVnYWN5V2ViQXJjaGl2ZT4pOwogI2VuZGlmCisK
ICNpZiBFTkFCTEUoTUhUTUwpCi0gICAgbWltZVR5cGVzLmdldCgpLnNldCgibXVsdGlwYXJ0L3Jl
bGF0ZWQiLCBhcmNoaXZlRmFjdG9yeUNyZWF0ZTxNSFRNTEFyY2hpdmU+KTsKLSAgICBtaW1lVHlw
ZXMuZ2V0KCkuc2V0KCJhcHBsaWNhdGlvbi94LW1pbWVhcmNoaXZlIiwgYXJjaGl2ZUZhY3RvcnlD
cmVhdGU8TUhUTUxBcmNoaXZlPik7CisgICAgbWFwLmFkZChBU0NJSUxpdGVyYWwgeyAibXVsdGlw
YXJ0L3JlbGF0ZWQiIH0sIGFyY2hpdmVGYWN0b3J5Q3JlYXRlPE1IVE1MQXJjaGl2ZT4pOworICAg
IG1hcC5hZGQoQVNDSUlMaXRlcmFsIHsgImFwcGxpY2F0aW9uL3gtbWltZWFyY2hpdmUiIH0sIGFy
Y2hpdmVGYWN0b3J5Q3JlYXRlPE1IVE1MQXJjaGl2ZT4pOwogI2VuZGlmCiAKLSAgICBpbml0aWFs
aXplZCA9IHRydWU7Ci0gICAgcmV0dXJuIG1pbWVUeXBlczsKKyAgICByZXR1cm4gbWFwOworfQor
CitzdGF0aWMgQXJjaGl2ZU1JTUVUeXBlc01hcCYgYXJjaGl2ZU1JTUVUeXBlcygpCit7CisgICAg
c3RhdGljIE5ldmVyRGVzdHJveWVkPEFyY2hpdmVNSU1FVHlwZXNNYXA+IG1hcCA9IGNyZWF0ZUFy
Y2hpdmVNSU1FVHlwZXNNYXAoKTsKKyAgICByZXR1cm4gbWFwOwogfQogCiBib29sIEFyY2hpdmVG
YWN0b3J5Ojppc0FyY2hpdmVNaW1lVHlwZShjb25zdCBTdHJpbmcmIG1pbWVUeXBlKQpAQCAtODMs
MTAgKzg1LDE0IEBAIGJvb2wgQXJjaGl2ZUZhY3Rvcnk6OmlzQXJjaGl2ZU1pbWVUeXBlKGNvbnN0
IFN0cmluZyYgbWltZVR5cGUpCiAKIFJlZlB0cjxBcmNoaXZlPiBBcmNoaXZlRmFjdG9yeTo6Y3Jl
YXRlKGNvbnN0IFVSTCYgdXJsLCBTaGFyZWRCdWZmZXIqIGRhdGEsIGNvbnN0IFN0cmluZyYgbWlt
ZVR5cGUpCiB7Ci0gICAgUmF3RGF0YUNyZWF0aW9uRnVuY3Rpb24qIGZ1bmN0aW9uID0gbWltZVR5
cGUuaXNFbXB0eSgpID8gMCA6IGFyY2hpdmVNSU1FVHlwZXMoKS5nZXQobWltZVR5cGUpOwogICAg
IGlmICghZGF0YSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgcmV0dXJuIGZ1bmN0aW9u
ID8gZnVuY3Rpb24odXJsLCAqZGF0YSkgOiBSZWZQdHI8QXJjaGl2ZT4obnVsbHB0cik7CisgICAg
aWYgKG1pbWVUeXBlLmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgYXV0
byogZnVuY3Rpb24gPSBhcmNoaXZlTUlNRVR5cGVzKCkuZ2V0KG1pbWVUeXBlKTsKKyAgICBpZiAo
IWZ1bmN0aW9uKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICByZXR1cm4gZnVuY3Rpb24o
dXJsLCAqZGF0YSk7CiB9CiAKIHZvaWQgQXJjaGl2ZUZhY3Rvcnk6OnJlZ2lzdGVyS25vd25BcmNo
aXZlTUlNRVR5cGVzKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZl
L0FyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Fy
Y2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5jcHAKaW5kZXggOThmNmMxZTJmYTFkNGE1
MDkxMzAwZDU4NzgwNDQyMTFkOGY3YjIzYi4uYTM3MDVlYzc3YWQyNjMxZTU5NjhkODVhY2U5N2Rm
MGZkMTU3YzFlYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJj
aGl2ZVJlc291cmNlQ29sbGVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Fy
Y2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgot
ICogQ29weXJpZ2h0IChDKSAyMDA4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
IENvcHlyaWdodCAoQykgMjAwOC0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
ICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMjksMzEgKzI5LDIzIEBACiAjaW5j
bHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5oIgog
Ci1uYW1lc3BhY2UgV2ViQ29yZSB7CisjaW5jbHVkZSAiQXJjaGl2ZS5oIgogCi1BcmNoaXZlUmVz
b3VyY2VDb2xsZWN0aW9uOjpBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uKCkKLXsKLX0KK25hbWVz
cGFjZSBXZWJDb3JlIHsKIAotdm9pZCBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uOjphZGRBbGxS
ZXNvdXJjZXMoQXJjaGl2ZSogYXJjaGl2ZSkKK3ZvaWQgQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlv
bjo6YWRkQWxsUmVzb3VyY2VzKEFyY2hpdmUmIGFyY2hpdmUpCiB7Ci0gICAgQVNTRVJUKGFyY2hp
dmUpOwotICAgIGlmICghYXJjaGl2ZSkKLSAgICAgICAgcmV0dXJuOworICAgIGZvciAoYXV0byYg
c3VicmVzb3VyY2UgOiBhcmNoaXZlLnN1YnJlc291cmNlcygpKQorICAgICAgICBtX3N1YnJlc291
cmNlcy5zZXQoc3VicmVzb3VyY2UtPnVybCgpLCBzdWJyZXNvdXJjZS5wdHIoKSk7CiAKLSAgICBm
b3IgKGF1dG8mIHN1YnJlc291cmNlIDogYXJjaGl2ZS0+c3VicmVzb3VyY2VzKCkpCi0gICAgICAg
IG1fc3VicmVzb3VyY2VzLnNldChzdWJyZXNvdXJjZS0+dXJsKCksIHN1YnJlc291cmNlLmdldCgp
KTsKLQotICAgIGZvciAoYXV0byYgc3ViZnJhbWVBcmNoaXZlIDogYXJjaGl2ZS0+c3ViZnJhbWVB
cmNoaXZlcygpKSB7CisgICAgZm9yIChhdXRvJiBzdWJmcmFtZUFyY2hpdmUgOiBhcmNoaXZlLnN1
YmZyYW1lQXJjaGl2ZXMoKSkgewogICAgICAgICBBU1NFUlQoc3ViZnJhbWVBcmNoaXZlLT5tYWlu
UmVzb3VyY2UoKSk7Ci0KLSAgICAgICAgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUgPSBzdWJmcmFt
ZUFyY2hpdmUtPm1haW5SZXNvdXJjZSgpLT5mcmFtZU5hbWUoKTsKLSAgICAgICAgaWYgKCFmcmFt
ZU5hbWUuaXNOdWxsKCkpCi0gICAgICAgICAgICBtX3N1YmZyYW1lcy5zZXQoZnJhbWVOYW1lLCBz
dWJmcmFtZUFyY2hpdmUuZ2V0KCkpOwotICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIC8vIElu
IHRoZSBNSFRNTCBjYXNlLCBmcmFtZXMgZG9uJ3QgaGF2ZSBhIG5hbWUgc28gd2UgdXNlIHRoZSBV
UkwgaW5zdGVhZC4KLSAgICAgICAgICAgIG1fc3ViZnJhbWVzLnNldChzdWJmcmFtZUFyY2hpdmUt
Pm1haW5SZXNvdXJjZSgpLT51cmwoKS5zdHJpbmcoKSwgc3ViZnJhbWVBcmNoaXZlLmdldCgpKTsK
KyAgICAgICAgYXV0byBmcmFtZU5hbWUgPSBzdWJmcmFtZUFyY2hpdmUtPm1haW5SZXNvdXJjZSgp
LT5mcmFtZU5hbWUoKTsKKyAgICAgICAgaWYgKGZyYW1lTmFtZS5pc051bGwoKSkgeworICAgICAg
ICAgICAgLy8gSW4gdGhlIE1IVE1MIGNhc2UsIGZyYW1lcyBkb24ndCBoYXZlIGEgbmFtZSwgc28g
d2UgdXNlIHRoZSBVUkwgaW5zdGVhZC4KKyAgICAgICAgICAgIGZyYW1lTmFtZSA9IHN1YmZyYW1l
QXJjaGl2ZS0+bWFpblJlc291cmNlKCktPnVybCgpLnN0cmluZygpOwogICAgICAgICB9CisgICAg
ICAgIG1fc3ViZnJhbWVzLnNldChmcmFtZU5hbWUsIHN1YmZyYW1lQXJjaGl2ZS5wdHIoKSk7CiAg
ICAgfQogfQogCkBAIC02MSwyNSArNTMsMTkgQEAgdm9pZCBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0
aW9uOjphZGRBbGxSZXNvdXJjZXMoQXJjaGl2ZSogYXJjaGl2ZSkKIC8vIENhbiB3ZSBjaGFuZ2Ug
dGhlIGRlc2lnbiBpbiBhIG1hbm5lciB0aGF0IHdpbGwgbGV0IHVzIGRlcHJlY2F0ZSB0aGF0IEFQ
SSB3aXRob3V0IHJlZHVjaW5nIGZ1bmN0aW9uYWxpdHkgb2YgdGhvc2UgYXBwcz8KIHZvaWQgQXJj
aGl2ZVJlc291cmNlQ29sbGVjdGlvbjo6YWRkUmVzb3VyY2UoUmVmPEFyY2hpdmVSZXNvdXJjZT4m
JiByZXNvdXJjZSkKIHsKLSAgICBjb25zdCBVUkwmIHVybCA9IHJlc291cmNlLT51cmwoKTsKKyAg
ICBhdXRvJiB1cmwgPSByZXNvdXJjZS0+dXJsKCk7CiAgICAgbV9zdWJyZXNvdXJjZXMuc2V0KHVy
bCwgV1RGTW92ZShyZXNvdXJjZSkpOwogfQogCiBBcmNoaXZlUmVzb3VyY2UqIEFyY2hpdmVSZXNv
dXJjZUNvbGxlY3Rpb246OmFyY2hpdmVSZXNvdXJjZUZvclVSTChjb25zdCBVUkwmIHVybCkKIHsK
LSAgICBBcmNoaXZlUmVzb3VyY2UqIHJlc291cmNlID0gbV9zdWJyZXNvdXJjZXMuZ2V0KHVybCk7
Ci0gICAgaWYgKCFyZXNvdXJjZSkKLSAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgICAgIAot
ICAgIHJldHVybiByZXNvdXJjZTsKKyAgICByZXR1cm4gbV9zdWJyZXNvdXJjZXMuZ2V0KHVybCk7
CiB9CiAKLVBhc3NSZWZQdHI8QXJjaGl2ZT4gQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbjo6cG9w
U3ViZnJhbWVBcmNoaXZlKGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBjb25zdCBVUkwmIHVybCkK
K1JlZlB0cjxBcmNoaXZlPiBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uOjpwb3BTdWJmcmFtZUFy
Y2hpdmUoY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIGNvbnN0IFVSTCYgdXJsKQogewotICAgIGF1
dG8gYXJjaGl2ZSA9IG1fc3ViZnJhbWVzLnRha2UoZnJhbWVOYW1lKTsKLSAgICBpZiAoYXJjaGl2
ZSkKLSAgICAgICAgcmV0dXJuIFdURk1vdmUoYXJjaGl2ZSk7Ci0KKyAgICBpZiAoYXV0byBhcmNo
aXZlID0gbV9zdWJmcmFtZXMudGFrZShmcmFtZU5hbWUpKQorICAgICAgICByZXR1cm4gYXJjaGl2
ZTsKICAgICByZXR1cm4gbV9zdWJmcmFtZXMudGFrZSh1cmwuc3RyaW5nKCkpOwogfQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlUmVzb3VyY2VDb2xs
ZWN0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9BcmNoaXZlUmVzb3VyY2VD
b2xsZWN0aW9uLmgKaW5kZXggNWM2MjBiNTFmMzFlNjM4MmQ3ZWYxY2MyNDhiOTMyMGY1NmM4OTdh
Ny4uMzdkZjY4YjM2NmNmZjg1MzliOTVjODIzZjJlOTEyNGQzNWVhOTkzOCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL0FyY2hpdmVSZXNvdXJjZUNvbGxl
Y3Rpb24uaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDggQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCkBAIC0yOCwyNCArMjgsMjkgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpbmNsdWRlICJBcmNo
aXZlLmgiCi0jaW5jbHVkZSAiQXJjaGl2ZVJlc291cmNlLmgiCi0jaW5jbHVkZSAiVVJMLmgiCisj
aW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgotI2luY2x1
ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgorI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgor
I2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0hhc2guaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewog
CitjbGFzcyBBcmNoaXZlOworY2xhc3MgQXJjaGl2ZVJlc291cmNlOworY2xhc3MgVVJMOworCiBj
bGFzcyBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uIHsKLSAgICBXVEZfTUFLRV9OT05DT1BZQUJM
RShBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uKTsgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7Cisg
ICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbik7CisgICAg
V1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CisKIHB1YmxpYzoKLSAgICBBcmNoaXZlUmVzb3VyY2VD
b2xsZWN0aW9uKCk7CisgICAgQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbigpID0gZGVmYXVsdDsK
IAogICAgIHZvaWQgYWRkUmVzb3VyY2UoUmVmPEFyY2hpdmVSZXNvdXJjZT4mJik7Ci0gICAgdm9p
ZCBhZGRBbGxSZXNvdXJjZXMoQXJjaGl2ZSopOworICAgIHZvaWQgYWRkQWxsUmVzb3VyY2VzKEFy
Y2hpdmUmKTsKICAgICAKICAgICBXRUJDT1JFX0VYUE9SVCBBcmNoaXZlUmVzb3VyY2UqIGFyY2hp
dmVSZXNvdXJjZUZvclVSTChjb25zdCBVUkwmKTsKLSAgICBQYXNzUmVmUHRyPEFyY2hpdmU+IHBv
cFN1YmZyYW1lQXJjaGl2ZShjb25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgY29uc3QgVVJMJik7Cisg
ICAgUmVmUHRyPEFyY2hpdmU+IHBvcFN1YmZyYW1lQXJjaGl2ZShjb25zdCBTdHJpbmcmIGZyYW1l
TmFtZSwgY29uc3QgVVJMJik7CiAgICAgCiBwcml2YXRlOiAgICAKICAgICBIYXNoTWFwPFN0cmlu
ZywgUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+IG1fc3VicmVzb3VyY2VzOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvY2YvTGVnYWN5V2ViQXJjaGl2ZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNoaXZlLmNwcAppbmRl
eCBlMDQ5MDYzMDA4MWEwMTJhNDMzMzI2YmUyNDIzMTgyN2RkZmNlOTcxLi4zOWQ4MzUyMDZjNzEw
MWVlNGMxOTBjNDI4ZjRiY2VkYjUzMTMzMWFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvYXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNoaXZlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvYXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNoaXZlLmNwcApAQCAtODAsMTggKzgwLDE2
IEBAIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVBy
b3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKEFyCiAgICAgICAgIENGRGljdGlvbmFyeVNldFZhbHVl
KHByb3BlcnR5TGlzdC5nZXQoKSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlTUlNRVR5cGVLZXks
IDApOwogICAgICAgICByZXR1cm4gcHJvcGVydHlMaXN0OwogICAgIH0KLSAgICAKLSAgICBSZXRh
aW5QdHI8Q0ZNdXRhYmxlRGljdGlvbmFyeVJlZj4gcHJvcGVydHlMaXN0ID0gYWRvcHRDRihDRkRp
Y3Rpb25hcnlDcmVhdGVNdXRhYmxlKDAsIDYsIDAsICZrQ0ZUeXBlRGljdGlvbmFyeVZhbHVlQ2Fs
bEJhY2tzKSk7Ci0gICAgCisKKyAgICBhdXRvIHByb3BlcnR5TGlzdCA9IGFkb3B0Q0YoQ0ZEaWN0
aW9uYXJ5Q3JlYXRlTXV0YWJsZSgwLCA2LCAwLCAma0NGVHlwZURpY3Rpb25hcnlWYWx1ZUNhbGxC
YWNrcykpOworCiAgICAgLy8gUmVzb3VyY2UgZGF0YSBjYW4gYmUgZW1wdHksIGJ1dCBtdXN0IGJl
IHJlcHJlc2VudGVkIGJ5IGFuIGVtcHR5IENGRGF0YVJlZgotICAgIFNoYXJlZEJ1ZmZlciYgZGF0
YSA9IHJlc291cmNlLT5kYXRhKCk7Ci0gICAgUmV0YWluUHRyPENGRGF0YVJlZj4gY2ZEYXRhOwot
ICAgIGNmRGF0YSA9IGRhdGEuY3JlYXRlQ0ZEYXRhKCk7CisgICAgYXV0byYgZGF0YSA9IHJlc291
cmNlLT5kYXRhKCk7CisKKyAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShwcm9wZXJ0eUxpc3QuZ2V0
KCksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZURhdGFLZXksIGRhdGEuY3JlYXRlQ0ZEYXRhKCku
Z2V0KCkpOwogCi0gICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJvcGVydHlMaXN0LmdldCgpLCBM
ZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VEYXRhS2V5LCBjZkRhdGEuZ2V0KCkpOwotICAgIAogICAg
IC8vIFJlc291cmNlIFVSTCBjYW5ub3QgYmUgbnVsbAotICAgIGlmIChSZXRhaW5QdHI8Q0ZTdHJp
bmdSZWY+IGNmVVJMID0gcmVzb3VyY2UtPnVybCgpLnN0cmluZygpLmNyZWF0ZUNGU3RyaW5nKCkp
CisgICAgaWYgKGF1dG8gY2ZVUkwgPSByZXNvdXJjZS0+dXJsKCkuc3RyaW5nKCkuY3JlYXRlQ0ZT
dHJpbmcoKSkKICAgICAgICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJvcGVydHlMaXN0LmdldCgp
LCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VVUkxLZXksIGNmVVJMLmdldCgpKTsKICAgICBlbHNl
IHsKICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIE5VTEwgcmVzb3Vy
Y2UgVVJMIGlzIGludmFsaWQgLSByZXR1cm5pbmcgbnVsbCBwcm9wZXJ0eSBsaXN0Iik7CkBAIC05
OSw0MiArOTcsNDEgQEAgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gTGVnYWN5V2ViQXJjaGl2
ZTo6Y3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24oQXIKICAgICB9CiAKICAgICAvLyBG
cmFtZU5hbWUgc2hvdWxkIGJlIGxlZnQgb3V0IGlmIGVtcHR5IGZvciBzdWJyZXNvdXJjZXMsIGJ1
dCBhbHdheXMgaW5jbHVkZWQgZm9yIG1haW4gcmVzb3VyY2VzCi0gICAgY29uc3QgU3RyaW5nJiBm
cmFtZU5hbWUocmVzb3VyY2UtPmZyYW1lTmFtZSgpKTsKKyAgICBhdXRvJiBmcmFtZU5hbWUgPSBy
ZXNvdXJjZS0+ZnJhbWVOYW1lKCk7CiAgICAgaWYgKCFmcmFtZU5hbWUuaXNFbXB0eSgpIHx8IGlz
TWFpblJlc291cmNlKQogICAgICAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShwcm9wZXJ0eUxpc3Qu
Z2V0KCksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZUZyYW1lTmFtZUtleSwgZnJhbWVOYW1lLmNy
ZWF0ZUNGU3RyaW5nKCkuZ2V0KCkpOwotICAgIAorCiAgICAgLy8gU2V0IE1JTUVUeXBlLCBUZXh0
RW5jb2RpbmdOYW1lLCBhbmQgUmVzb3VyY2VSZXNwb25zZSBvbmx5IGlmIHRoZXkgYWN0dWFsbHkg
ZXhpc3QKLSAgICBjb25zdCBTdHJpbmcmIG1pbWVUeXBlKHJlc291cmNlLT5taW1lVHlwZSgpKTsK
KyAgICBhdXRvJiBtaW1lVHlwZSA9IHJlc291cmNlLT5taW1lVHlwZSgpOwogICAgIGlmICghbWlt
ZVR5cGUuaXNFbXB0eSgpKQogICAgICAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShwcm9wZXJ0eUxp
c3QuZ2V0KCksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZU1JTUVUeXBlS2V5LCBtaW1lVHlwZS5j
cmVhdGVDRlN0cmluZygpLmdldCgpKTsKLSAgICAKLSAgICBjb25zdCBTdHJpbmcmIHRleHRFbmNv
ZGluZyhyZXNvdXJjZS0+dGV4dEVuY29kaW5nKCkpOworCisgICAgYXV0byYgdGV4dEVuY29kaW5n
ID0gcmVzb3VyY2UtPnRleHRFbmNvZGluZygpOwogICAgIGlmICghdGV4dEVuY29kaW5nLmlzRW1w
dHkoKSkKICAgICAgICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJvcGVydHlMaXN0LmdldCgpLCBM
ZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VUZXh0RW5jb2RpbmdOYW1lS2V5LCB0ZXh0RW5jb2Rpbmcu
Y3JlYXRlQ0ZTdHJpbmcoKS5nZXQoKSk7CiAKICAgICAvLyBEb24ndCBpbmNsdWRlIHRoZSByZXNv
dXJjZSByZXNwb25zZSBmb3IgdGhlIG1haW4gcmVzb3VyY2UKICAgICBpZiAoIWlzTWFpblJlc291
cmNlKSB7Ci0gICAgICAgIFJldGFpblB0cjxDRkRhdGFSZWY+IHJlc291cmNlUmVzcG9uc2VEYXRh
ID0gY3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24ocmVzb3VyY2UtPnJlc3BvbnNlKCkp
OwotICAgICAgICBpZiAocmVzb3VyY2VSZXNwb25zZURhdGEpCisgICAgICAgIGlmIChhdXRvIHJl
c291cmNlUmVzcG9uc2VEYXRhID0gY3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24ocmVz
b3VyY2UtPnJlc3BvbnNlKCkpKQogICAgICAgICAgICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUocHJv
cGVydHlMaXN0LmdldCgpLCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VSZXNwb25zZUtleSwgcmVz
b3VyY2VSZXNwb25zZURhdGEuZ2V0KCkpOyAgICAKICAgICB9CiAgICAgCiAgICAgcmV0dXJuIHBy
b3BlcnR5TGlzdDsKIH0KIAotUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gTGVnYWN5V2ViQXJj
aGl2ZTo6Y3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24oQXJjaGl2ZSogYXJjaGl2ZSkK
K1JldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVByb3Bl
cnR5TGlzdFJlcHJlc2VudGF0aW9uKEFyY2hpdmUmIGFyY2hpdmUpCiB7Ci0gICAgUmV0YWluUHRy
PENGTXV0YWJsZURpY3Rpb25hcnlSZWY+IHByb3BlcnR5TGlzdCA9IGFkb3B0Q0YoQ0ZEaWN0aW9u
YXJ5Q3JlYXRlTXV0YWJsZSgwLCAzLCAwLCAma0NGVHlwZURpY3Rpb25hcnlWYWx1ZUNhbGxCYWNr
cykpOwotICAgIAotICAgIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IG1haW5SZXNvdXJjZURp
Y3QgPSBjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihhcmNoaXZlLT5tYWluUmVzb3Vy
Y2UoKSwgTWFpblJlc291cmNlKTsKKyAgICBhdXRvIHByb3BlcnR5TGlzdCA9IGFkb3B0Q0YoQ0ZE
aWN0aW9uYXJ5Q3JlYXRlTXV0YWJsZSgwLCAzLCAwLCAma0NGVHlwZURpY3Rpb25hcnlWYWx1ZUNh
bGxCYWNrcykpOworCisgICAgYXV0byBtYWluUmVzb3VyY2VEaWN0ID0gY3JlYXRlUHJvcGVydHlM
aXN0UmVwcmVzZW50YXRpb24oYXJjaGl2ZS5tYWluUmVzb3VyY2UoKSwgTWFpblJlc291cmNlKTsK
ICAgICBBU1NFUlQobWFpblJlc291cmNlRGljdCk7CiAgICAgaWYgKCFtYWluUmVzb3VyY2VEaWN0
KQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShwcm9w
ZXJ0eUxpc3QuZ2V0KCksIExlZ2FjeVdlYkFyY2hpdmVNYWluUmVzb3VyY2VLZXksIG1haW5SZXNv
dXJjZURpY3QuZ2V0KCkpOwogCi0gICAgUmV0YWluUHRyPENGTXV0YWJsZUFycmF5UmVmPiBzdWJy
ZXNvdXJjZXNBcnJheSA9IGFkb3B0Q0YoQ0ZBcnJheUNyZWF0ZU11dGFibGUoMCwgYXJjaGl2ZS0+
c3VicmVzb3VyY2VzKCkuc2l6ZSgpLCAma0NGVHlwZUFycmF5Q2FsbEJhY2tzKSk7Ci0gICAgZm9y
IChhdXRvJiByZXNvdXJjZSA6IGFyY2hpdmUtPnN1YnJlc291cmNlcygpKSB7Ci0gICAgICAgIGlm
IChSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBzdWJyZXNvdXJjZSA9IGNyZWF0ZVByb3BlcnR5
TGlzdFJlcHJlc2VudGF0aW9uKHJlc291cmNlLmdldCgpLCBTdWJyZXNvdXJjZSkpCisgICAgYXV0
byBzdWJyZXNvdXJjZXNBcnJheSA9IGFkb3B0Q0YoQ0ZBcnJheUNyZWF0ZU11dGFibGUoMCwgYXJj
aGl2ZS5zdWJyZXNvdXJjZXMoKS5zaXplKCksICZrQ0ZUeXBlQXJyYXlDYWxsQmFja3MpKTsKKyAg
ICBmb3IgKGF1dG8mIHJlc291cmNlIDogYXJjaGl2ZS5zdWJyZXNvdXJjZXMoKSkgeworICAgICAg
ICBpZiAoYXV0byBzdWJyZXNvdXJjZSA9IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9u
KHJlc291cmNlLnB0cigpLCBTdWJyZXNvdXJjZSkpCiAgICAgICAgICAgICBDRkFycmF5QXBwZW5k
VmFsdWUoc3VicmVzb3VyY2VzQXJyYXkuZ2V0KCksIHN1YnJlc291cmNlLmdldCgpKTsKICAgICAg
ICAgZWxzZQogICAgICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIEZh
aWxlZCB0byBjcmVhdGUgcHJvcGVydHkgbGlzdCBmb3Igc3VicmVzb3VyY2UiKTsKQEAgLTE0Miw5
ICsxMzksOSBAQCBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBMZWdhY3lXZWJBcmNoaXZlOjpj
cmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihBcgogICAgIGlmIChDRkFycmF5R2V0Q291
bnQoc3VicmVzb3VyY2VzQXJyYXkuZ2V0KCkpKQogICAgICAgICBDRkRpY3Rpb25hcnlTZXRWYWx1
ZShwcm9wZXJ0eUxpc3QuZ2V0KCksIExlZ2FjeVdlYkFyY2hpdmVTdWJyZXNvdXJjZXNLZXksIHN1
YnJlc291cmNlc0FycmF5LmdldCgpKTsKIAotICAgIFJldGFpblB0cjxDRk11dGFibGVBcnJheVJl
Zj4gc3ViZnJhbWVzQXJyYXkgPSBhZG9wdENGKENGQXJyYXlDcmVhdGVNdXRhYmxlKDAsIGFyY2hp
dmUtPnN1YmZyYW1lQXJjaGl2ZXMoKS5zaXplKCksICZrQ0ZUeXBlQXJyYXlDYWxsQmFja3MpKTsK
LSAgICBmb3IgKGF1dG8mIHN1YmZyYW1lIDogYXJjaGl2ZS0+c3ViZnJhbWVBcmNoaXZlcygpKSB7
Ci0gICAgICAgIGlmIChSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBzdWJmcmFtZUFyY2hpdmUg
PSBjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihzdWJmcmFtZS5nZXQoKSkpCisgICAg
YXV0byBzdWJmcmFtZXNBcnJheSA9IGFkb3B0Q0YoQ0ZBcnJheUNyZWF0ZU11dGFibGUoMCwgYXJj
aGl2ZS5zdWJmcmFtZUFyY2hpdmVzKCkuc2l6ZSgpLCAma0NGVHlwZUFycmF5Q2FsbEJhY2tzKSk7
CisgICAgZm9yIChhdXRvJiBzdWJmcmFtZSA6IGFyY2hpdmUuc3ViZnJhbWVBcmNoaXZlcygpKSB7
CisgICAgICAgIGlmIChhdXRvIHN1YmZyYW1lQXJjaGl2ZSA9IGNyZWF0ZVByb3BlcnR5TGlzdFJl
cHJlc2VudGF0aW9uKHN1YmZyYW1lLmdldCgpKSkKICAgICAgICAgICAgIENGQXJyYXlBcHBlbmRW
YWx1ZShzdWJmcmFtZXNBcnJheS5nZXQoKSwgc3ViZnJhbWVBcmNoaXZlLmdldCgpKTsKICAgICAg
ICAgZWxzZQogICAgICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIEZh
aWxlZCB0byBjcmVhdGUgcHJvcGVydHkgbGlzdCBmb3Igc3ViZnJhbWUgYXJjaGl2ZSIpOwpAQCAt
MTYwLDEzICsxNTcsMTMgQEAgUmVzb3VyY2VSZXNwb25zZSBMZWdhY3lXZWJBcmNoaXZlOjpjcmVh
dGVSZXNvdXJjZVJlc3BvbnNlRnJvbVByb3BlcnR5TGlzdERhdGEoQ0YKICAgICBBU1NFUlQoZGF0
YSk7CiAgICAgaWYgKCFkYXRhKQogICAgICAgICByZXR1cm4gUmVzb3VyY2VSZXNwb25zZSgpOwot
ICAgIAorCiAgICAgLy8gSWYgdGhlIFJlc291cmNlUmVzcG9uc2VWZXJzaW9uIChwYXNzZWQgaW4g
YXMgcmVzcG9uc2VEYXRhVHlwZSkgZXhpc3RzIGF0IGFsbCwgdGhpcyBpcyBhICJuZXciIHdlYiBh
cmNoaXZlIHRoYXQgd2UKICAgICAvLyBjYW4gcGFyc2Ugd2VsbCBpbiBhIGNyb3NzIHBsYXRmb3Jt
IG1hbm5lciBJZiBpdCBkb2Vzbid0IGV4aXN0LCB3ZSB3aWxsIGFzc3VtZSB0aGlzIGlzIGFuICJv
bGQiIHdlYiBhcmNoaXZlIHdpdGgsCiAgICAgLy8gTlNVUkxSZXNwb25zZSBvYmplY3RzIGluIGl0
IGFuZCBwYXJzZSB0aGUgUmVzb3VyY2VSZXNwb25zZSBhcyBzdWNoLgogICAgIGlmICghcmVzcG9u
c2VEYXRhVHlwZSkKICAgICAgICAgcmV0dXJuIGNyZWF0ZVJlc291cmNlUmVzcG9uc2VGcm9tTWFj
QXJjaGl2ZWREYXRhKGRhdGEpOwotICAgICAgICAKKwogICAgIC8vIEZJWE1FOiBQYXJzZSB0aGUg
Im5ldyIgZm9ybWF0IHRoYXQgdGhlIGFib3ZlIGNvbW1lbnQgcmVmZXJlbmNlcyBoZXJlLiBUaGlz
IGZvcm1hdCBkb2Vzbid0IGV4aXN0IHlldC4KICAgICByZXR1cm4gUmVzb3VyY2VSZXNwb25zZSgp
OwogfQpAQCAtMTc2LDQ3ICsxNzMsNDYgQEAgUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4gTGVnYWN5
V2ViQXJjaGl2ZTo6Y3JlYXRlUmVzb3VyY2UoQ0ZEaWN0aW9uYXJ5UmVmIGRpY3Rpb24KICAgICBB
U1NFUlQoZGljdGlvbmFyeSk7CiAgICAgaWYgKCFkaWN0aW9uYXJ5KQogICAgICAgICByZXR1cm4g
bnVsbHB0cjsKLSAgICAgICAgCi0gICAgQ0ZEYXRhUmVmIHJlc291cmNlRGF0YSA9IHN0YXRpY19j
YXN0PENGRGF0YVJlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2Vi
QXJjaGl2ZVJlc291cmNlRGF0YUtleSkpOworCisgICAgYXV0byByZXNvdXJjZURhdGEgPSBzdGF0
aWNfY2FzdDxDRkRhdGFSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2Fj
eVdlYkFyY2hpdmVSZXNvdXJjZURhdGFLZXkpKTsKICAgICBpZiAocmVzb3VyY2VEYXRhICYmIENG
R2V0VHlwZUlEKHJlc291cmNlRGF0YSkgIT0gQ0ZEYXRhR2V0VHlwZUlEKCkpIHsKICAgICAgICAg
TE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIFJlc291cmNlIGRhdGEgaXMgbm90IG9m
IHR5cGUgQ0ZEYXRhLCBjYW5ub3QgY3JlYXRlIGludmFsaWQgcmVzb3VyY2UiKTsKICAgICAgICAg
cmV0dXJuIG51bGxwdHI7CiAgICAgfQotICAgIAotICAgIENGU3RyaW5nUmVmIGZyYW1lTmFtZSA9
IHN0YXRpY19jYXN0PENGU3RyaW5nUmVmPihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5
LCBMZWdhY3lXZWJBcmNoaXZlUmVzb3VyY2VGcmFtZU5hbWVLZXkpKTsKKworICAgIGF1dG8gZnJh
bWVOYW1lID0gc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRp
Y3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZUZyYW1lTmFtZUtleSkpOwogICAgIGlm
IChmcmFtZU5hbWUgJiYgQ0ZHZXRUeXBlSUQoZnJhbWVOYW1lKSAhPSBDRlN0cmluZ0dldFR5cGVJ
RCgpKSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBGcmFtZSBu
YW1lIGlzIG5vdCBvZiB0eXBlIENGU3RyaW5nLCBjYW5ub3QgY3JlYXRlIGludmFsaWQgcmVzb3Vy
Y2UiKTsKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQotICAgIAotICAgIENGU3RyaW5n
UmVmIG1pbWVUeXBlID0gc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZh
bHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZU1JTUVUeXBlS2V5KSk7CisK
KyAgICBhdXRvIG1pbWVUeXBlID0gc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFy
eUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZU1JTUVUeXBlS2V5
KSk7CiAgICAgaWYgKG1pbWVUeXBlICYmIENGR2V0VHlwZUlEKG1pbWVUeXBlKSAhPSBDRlN0cmlu
Z0dldFR5cGVJRCgpKSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUg
LSBNSU1FIHR5cGUgaXMgbm90IG9mIHR5cGUgQ0ZTdHJpbmcsIGNhbm5vdCBjcmVhdGUgaW52YWxp
ZCByZXNvdXJjZSIpOwogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICB9Ci0gICAgCi0gICAg
Q0ZTdHJpbmdSZWYgdXJsID0gc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFyeUdl
dFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZVVSTEtleSkpOworCisg
ICAgYXV0byB1cmwgPSBzdGF0aWNfY2FzdDxDRlN0cmluZ1JlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFs
dWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlVVJMS2V5KSk7CiAgICAgaWYg
KHVybCAmJiBDRkdldFR5cGVJRCh1cmwpICE9IENGU3RyaW5nR2V0VHlwZUlEKCkpIHsKICAgICAg
ICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIFVSTCBpcyBub3Qgb2YgdHlwZSBD
RlN0cmluZywgY2Fubm90IGNyZWF0ZSBpbnZhbGlkIHJlc291cmNlIik7CiAgICAgICAgIHJldHVy
biBudWxscHRyOwogICAgIH0KLSAgICAKLSAgICBDRlN0cmluZ1JlZiB0ZXh0RW5jb2RpbmcgPSBz
dGF0aWNfY2FzdDxDRlN0cmluZ1JlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwg
TGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlVGV4dEVuY29kaW5nTmFtZUtleSkpOworCisgICAgYXV0
byB0ZXh0RW5jb2RpbmcgPSBzdGF0aWNfY2FzdDxDRlN0cmluZ1JlZj4oQ0ZEaWN0aW9uYXJ5R2V0
VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlVGV4dEVuY29kaW5nTmFt
ZUtleSkpOwogICAgIGlmICh0ZXh0RW5jb2RpbmcgJiYgQ0ZHZXRUeXBlSUQodGV4dEVuY29kaW5n
KSAhPSBDRlN0cmluZ0dldFR5cGVJRCgpKSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2Fj
eVdlYkFyY2hpdmUgLSBUZXh0IGVuY29kaW5nIGlzIG5vdCBvZiB0eXBlIENGU3RyaW5nLCBjYW5u
b3QgY3JlYXRlIGludmFsaWQgcmVzb3VyY2UiKTsKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAg
ICAgfQogCiAgICAgUmVzb3VyY2VSZXNwb25zZSByZXNwb25zZTsKLSAgICAKLSAgICBDRkRhdGFS
ZWYgcmVzb3VyY2VSZXNwb25zZURhdGEgPSBzdGF0aWNfY2FzdDxDRkRhdGFSZWY+KENGRGljdGlv
bmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZVJlc3BvbnNl
S2V5KSk7Ci0gICAgaWYgKHJlc291cmNlUmVzcG9uc2VEYXRhKSB7CisKKyAgICBpZiAoYXV0byBy
ZXNvdXJjZVJlc3BvbnNlRGF0YSA9IHN0YXRpY19jYXN0PENGRGF0YVJlZj4oQ0ZEaWN0aW9uYXJ5
R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJjaGl2ZVJlc291cmNlUmVzcG9uc2VLZXkp
KSkgewogICAgICAgICBpZiAoQ0ZHZXRUeXBlSUQocmVzb3VyY2VSZXNwb25zZURhdGEpICE9IENG
RGF0YUdldFR5cGVJRCgpKSB7CiAgICAgICAgICAgICBMT0coQXJjaGl2ZXMsICJMZWdhY3lXZWJB
cmNoaXZlIC0gUmVzb3VyY2UgcmVzcG9uc2UgZGF0YSBpcyBub3Qgb2YgdHlwZSBDRkRhdGEsIGNh
bm5vdCBjcmVhdGUgaW52YWxpZCByZXNvdXJjZSIpOwogICAgICAgICAgICAgcmV0dXJuIG51bGxw
dHI7CiAgICAgICAgIH0KICAgICAgICAgCi0gICAgICAgIENGU3RyaW5nUmVmIHJlc291cmNlUmVz
cG9uc2VWZXJzaW9uID0gc3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZh
bHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVSZXNvdXJjZVJlc3BvbnNlVmVyc2lvbktl
eSkpOworICAgICAgICBhdXRvIHJlc291cmNlUmVzcG9uc2VWZXJzaW9uID0gc3RhdGljX2Nhc3Q8
Q0ZTdHJpbmdSZWY+KENGRGljdGlvbmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFy
Y2hpdmVSZXNvdXJjZVJlc3BvbnNlVmVyc2lvbktleSkpOwogICAgICAgICBpZiAocmVzb3VyY2VS
ZXNwb25zZVZlcnNpb24gJiYgQ0ZHZXRUeXBlSUQocmVzb3VyY2VSZXNwb25zZVZlcnNpb24pICE9
IENGU3RyaW5nR2V0VHlwZUlEKCkpIHsKICAgICAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2Fj
eVdlYkFyY2hpdmUgLSBSZXNvdXJjZSByZXNwb25zZSB2ZXJzaW9uIGlzIG5vdCBvZiB0eXBlIENG
U3RyaW5nLCBjYW5ub3QgY3JlYXRlIGludmFsaWQgcmVzb3VyY2UiKTsKICAgICAgICAgICAgIHJl
dHVybiBudWxscHRyOwpAQCAtMjI0LDcgKzIyMCw3IEBAIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+
IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZVJlc291cmNlKENGRGljdGlvbmFyeVJlZiBkaWN0aW9u
CiAgICAgICAgIAogICAgICAgICByZXNwb25zZSA9IGNyZWF0ZVJlc291cmNlUmVzcG9uc2VGcm9t
UHJvcGVydHlMaXN0RGF0YShyZXNvdXJjZVJlc3BvbnNlRGF0YSwgcmVzb3VyY2VSZXNwb25zZVZl
cnNpb24pOwogICAgIH0KLSAgICAKKwogICAgIHJldHVybiBBcmNoaXZlUmVzb3VyY2U6OmNyZWF0
ZShTaGFyZWRCdWZmZXI6OndyYXBDRkRhdGEocmVzb3VyY2VEYXRhKSwgVVJMKFVSTCgpLCB1cmwp
LCBtaW1lVHlwZSwgdGV4dEVuY29kaW5nLCBmcmFtZU5hbWUsIHJlc3BvbnNlKTsKIH0KIApAQCAt
MjMzLDIxICsyMjksMTkgQEAgUmVmPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6
OmNyZWF0ZSgpCiAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgTGVnYWN5V2ViQXJjaGl2ZSk7CiB9
CiAKLVJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoUmVm
UHRyPEFyY2hpdmVSZXNvdXJjZT4mJiBtYWluUmVzb3VyY2UsIFZlY3RvcjxSZWZQdHI8QXJjaGl2
ZVJlc291cmNlPj4mJiBzdWJyZXNvdXJjZXMsIFZlY3RvcjxSZWZQdHI8TGVnYWN5V2ViQXJjaGl2
ZT4+JiYgc3ViZnJhbWVBcmNoaXZlcykKK1JlZjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJB
cmNoaXZlOjpjcmVhdGUoUmVmPEFyY2hpdmVSZXNvdXJjZT4mJiBtYWluUmVzb3VyY2UsIFZlY3Rv
cjxSZWY8QXJjaGl2ZVJlc291cmNlPj4mJiBzdWJyZXNvdXJjZXMsIFZlY3RvcjxSZWY8TGVnYWN5
V2ViQXJjaGl2ZT4+JiYgc3ViZnJhbWVBcmNoaXZlcykKIHsKLSAgICBpZiAoIW1haW5SZXNvdXJj
ZSkKLSAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0KICAgICBhdXRvIGFyY2hpdmUgPSBjcmVhdGUo
KTsKKwogICAgIGFyY2hpdmUtPnNldE1haW5SZXNvdXJjZShXVEZNb3ZlKG1haW5SZXNvdXJjZSkp
OwotICAgIAorCiAgICAgZm9yIChhdXRvJiBzdWJyZXNvdXJjZSA6IHN1YnJlc291cmNlcykKICAg
ICAgICAgYXJjaGl2ZS0+YWRkU3VicmVzb3VyY2UoV1RGTW92ZShzdWJyZXNvdXJjZSkpOwogCiAg
ICAgZm9yIChhdXRvJiBzdWJmcmFtZUFyY2hpdmUgOiBzdWJmcmFtZUFyY2hpdmVzKQogICAgICAg
ICBhcmNoaXZlLT5hZGRTdWJmcmFtZUFyY2hpdmUoV1RGTW92ZShzdWJmcmFtZUFyY2hpdmUpKTsK
IAotICAgIHJldHVybiBXVEZNb3ZlKGFyY2hpdmUpOworICAgIHJldHVybiBhcmNoaXZlOwogfQog
CiBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFNoYXJl
ZEJ1ZmZlciYgZGF0YSkKQEAgLTMwNyw0OCArMzAxLDUwIEBAIGJvb2wgTGVnYWN5V2ViQXJjaGl2
ZTo6ZXh0cmFjdChDRkRpY3Rpb25hcnlSZWYgZGljdGlvbmFyeSkKICAgICAgICAgTE9HKEFyY2hp
dmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIE1haW4gcmVzb3VyY2UgaXMgbm90IHRoZSBleHBlY3Rl
ZCBDRkRpY3Rpb25hcnksIGFib3J0aW5nIGludmFsaWQgV2ViQXJjaGl2ZSIpOwogICAgICAgICBy
ZXR1cm4gZmFsc2U7CiAgICAgfQotICAgIAotICAgIHNldE1haW5SZXNvdXJjZShjcmVhdGVSZXNv
dXJjZShtYWluUmVzb3VyY2VEaWN0KSk7Ci0gICAgaWYgKCFtYWluUmVzb3VyY2UoKSkgeworCisg
ICAgYXV0byBtYWluUmVzb3VyY2UgPSBjcmVhdGVSZXNvdXJjZShtYWluUmVzb3VyY2VEaWN0KTsK
KyAgICBpZiAoIW1haW5SZXNvdXJjZSkgewogICAgICAgICBMT0coQXJjaGl2ZXMsICJMZWdhY3lX
ZWJBcmNoaXZlIC0gRmFpbGVkIHRvIHBhcnNlIG1haW4gcmVzb3VyY2UgZnJvbSBDRkRpY3Rpb25h
cnkgb3IgbWFpbiByZXNvdXJjZSBkb2VzIG5vdCBleGlzdCwgYWJvcnRpbmcgaW52YWxpZCBXZWJB
cmNoaXZlIik7CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9Ci0gICAgCi0gICAgaWYgKG1h
aW5SZXNvdXJjZSgpLT5taW1lVHlwZSgpLmlzTnVsbCgpKSB7CisKKyAgICBpZiAobWFpblJlc291
cmNlLT5taW1lVHlwZSgpLmlzTnVsbCgpKSB7CiAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2Fj
eVdlYkFyY2hpdmUgLSBNYWluIHJlc291cmNlIE1JTUUgdHlwZSBpcyByZXF1aXJlZCwgYnV0IHdh
cyBudWxsLiIpOwogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQotICAgIAotICAgIENGQXJy
YXlSZWYgc3VicmVzb3VyY2VBcnJheSA9IHN0YXRpY19jYXN0PENGQXJyYXlSZWY+KENGRGljdGlv
bmFyeUdldFZhbHVlKGRpY3Rpb25hcnksIExlZ2FjeVdlYkFyY2hpdmVTdWJyZXNvdXJjZXNLZXkp
KTsKKworICAgIHNldE1haW5SZXNvdXJjZShtYWluUmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSk7
CisKKyAgICBhdXRvIHN1YnJlc291cmNlQXJyYXkgPSBzdGF0aWNfY2FzdDxDRkFycmF5UmVmPihD
RkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBMZWdhY3lXZWJBcmNoaXZlU3VicmVzb3Vy
Y2VzS2V5KSk7CiAgICAgaWYgKHN1YnJlc291cmNlQXJyYXkgJiYgQ0ZHZXRUeXBlSUQoc3VicmVz
b3VyY2VBcnJheSkgIT0gQ0ZBcnJheUdldFR5cGVJRCgpKSB7CiAgICAgICAgIExPRyhBcmNoaXZl
cywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBTdWJyZXNvdXJjZXMgaXMgbm90IHRoZSBleHBlY3RlZCBB
cnJheSwgYWJvcnRpbmcgaW52YWxpZCBXZWJBcmNoaXZlIik7CiAgICAgICAgIHJldHVybiBmYWxz
ZTsKICAgICB9Ci0gICAgCisKICAgICBpZiAoc3VicmVzb3VyY2VBcnJheSkgewotICAgICAgICBD
RkluZGV4IGNvdW50ID0gQ0ZBcnJheUdldENvdW50KHN1YnJlc291cmNlQXJyYXkpOworICAgICAg
ICBhdXRvIGNvdW50ID0gQ0ZBcnJheUdldENvdW50KHN1YnJlc291cmNlQXJyYXkpOwogICAgICAg
ICBmb3IgKENGSW5kZXggaSA9IDA7IGkgPCBjb3VudDsgKytpKSB7Ci0gICAgICAgICAgICBDRkRp
Y3Rpb25hcnlSZWYgc3VicmVzb3VyY2VEaWN0ID0gc3RhdGljX2Nhc3Q8Q0ZEaWN0aW9uYXJ5UmVm
PihDRkFycmF5R2V0VmFsdWVBdEluZGV4KHN1YnJlc291cmNlQXJyYXksIGkpKTsKKyAgICAgICAg
ICAgIGF1dG8gc3VicmVzb3VyY2VEaWN0ID0gc3RhdGljX2Nhc3Q8Q0ZEaWN0aW9uYXJ5UmVmPihD
RkFycmF5R2V0VmFsdWVBdEluZGV4KHN1YnJlc291cmNlQXJyYXksIGkpKTsKICAgICAgICAgICAg
IGlmIChDRkdldFR5cGVJRChzdWJyZXNvdXJjZURpY3QpICE9IENGRGljdGlvbmFyeUdldFR5cGVJ
RCgpKSB7CiAgICAgICAgICAgICAgICAgTE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAt
IFN1YnJlc291cmNlIGlzIG5vdCBleHBlY3RlZCBDRkRpY3Rpb25hcnksIGFib3J0aW5nIGludmFs
aWQgV2ViQXJjaGl2ZSIpOwogICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAg
ICAgIH0KICAgICAgICAgICAgIAogICAgICAgICAgICAgaWYgKGF1dG8gc3VicmVzb3VyY2UgPSBj
cmVhdGVSZXNvdXJjZShzdWJyZXNvdXJjZURpY3QpKQotICAgICAgICAgICAgICAgIGFkZFN1YnJl
c291cmNlKFdURk1vdmUoc3VicmVzb3VyY2UpKTsKKyAgICAgICAgICAgICAgICBhZGRTdWJyZXNv
dXJjZShzdWJyZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICAgICAgfQogICAgIH0KLSAg
ICAKLSAgICBDRkFycmF5UmVmIHN1YmZyYW1lQXJyYXkgPSBzdGF0aWNfY2FzdDxDRkFycmF5UmVm
PihDRkRpY3Rpb25hcnlHZXRWYWx1ZShkaWN0aW9uYXJ5LCBMZWdhY3lXZWJBcmNoaXZlU3ViZnJh
bWVBcmNoaXZlc0tleSkpOworCisgICAgYXV0byBzdWJmcmFtZUFycmF5ID0gc3RhdGljX2Nhc3Q8
Q0ZBcnJheVJlZj4oQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUoZGljdGlvbmFyeSwgTGVnYWN5V2ViQXJj
aGl2ZVN1YmZyYW1lQXJjaGl2ZXNLZXkpKTsKICAgICBpZiAoc3ViZnJhbWVBcnJheSAmJiBDRkdl
dFR5cGVJRChzdWJmcmFtZUFycmF5KSAhPSBDRkFycmF5R2V0VHlwZUlEKCkpIHsKICAgICAgICAg
TE9HKEFyY2hpdmVzLCAiTGVnYWN5V2ViQXJjaGl2ZSAtIFN1YmZyYW1lIGFyY2hpdmVzIGlzIG5v
dCB0aGUgZXhwZWN0ZWQgQXJyYXksIGFib3J0aW5nIGludmFsaWQgV2ViQXJjaGl2ZSIpOwogICAg
ICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQotICAgIAorCiAgICAgaWYgKHN1YmZyYW1lQXJyYXkp
IHsKLSAgICAgICAgQ0ZJbmRleCBjb3VudCA9IENGQXJyYXlHZXRDb3VudChzdWJmcmFtZUFycmF5
KTsKKyAgICAgICAgYXV0byBjb3VudCA9IENGQXJyYXlHZXRDb3VudChzdWJmcmFtZUFycmF5KTsK
ICAgICAgICAgZm9yIChDRkluZGV4IGkgPSAwOyBpIDwgY291bnQ7ICsraSkgewotICAgICAgICAg
ICAgQ0ZEaWN0aW9uYXJ5UmVmIHN1YmZyYW1lRGljdCA9IHN0YXRpY19jYXN0PENGRGljdGlvbmFy
eVJlZj4oQ0ZBcnJheUdldFZhbHVlQXRJbmRleChzdWJmcmFtZUFycmF5LCBpKSk7CisgICAgICAg
ICAgICBhdXRvIHN1YmZyYW1lRGljdCA9IHN0YXRpY19jYXN0PENGRGljdGlvbmFyeVJlZj4oQ0ZB
cnJheUdldFZhbHVlQXRJbmRleChzdWJmcmFtZUFycmF5LCBpKSk7CiAgICAgICAgICAgICBpZiAo
Q0ZHZXRUeXBlSUQoc3ViZnJhbWVEaWN0KSAhPSBDRkRpY3Rpb25hcnlHZXRUeXBlSUQoKSkgewog
ICAgICAgICAgICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBTdWJmcmFt
ZSBhcnJheSBpcyBub3QgZXhwZWN0ZWQgQ0ZEaWN0aW9uYXJ5LCBhYm9ydGluZyBpbnZhbGlkIFdl
YkFyY2hpdmUiKTsKICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CkBAIC0zNjUsMjYgKzM2
MSwyMSBAQCBib29sIExlZ2FjeVdlYkFyY2hpdmU6OmV4dHJhY3QoQ0ZEaWN0aW9uYXJ5UmVmIGRp
Y3Rpb25hcnkpCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLUFyY2hpdmU6OlR5cGUgTGVnYWN5V2Vi
QXJjaGl2ZTo6dHlwZSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIEFyY2hpdmU6OldlYkFyY2hpdmU7
Ci19Ci0gICAgCiBSZXRhaW5QdHI8Q0ZEYXRhUmVmPiBMZWdhY3lXZWJBcmNoaXZlOjpyYXdEYXRh
UmVwcmVzZW50YXRpb24oKQogewotICAgIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IHByb3Bl
cnR5TGlzdCA9IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKHRoaXMpOworICAgIGF1
dG8gcHJvcGVydHlMaXN0ID0gY3JlYXRlUHJvcGVydHlMaXN0UmVwcmVzZW50YXRpb24oKnRoaXMp
OwogICAgIEFTU0VSVChwcm9wZXJ0eUxpc3QpOwogICAgIGlmICghcHJvcGVydHlMaXN0KSB7CiAg
ICAgICAgIExPRyhBcmNoaXZlcywgIkxlZ2FjeVdlYkFyY2hpdmUgLSBGYWlsZWQgdG8gY3JlYXRl
IHByb3BlcnR5IGxpc3QgZm9yIGFyY2hpdmUsIHJldHVybmluZyBubyBkYXRhIik7CiAgICAgICAg
IHJldHVybiBudWxscHRyOwogICAgIH0KIAotICAgIFJldGFpblB0cjxDRldyaXRlU3RyZWFtUmVm
PiBzdHJlYW0gPSBhZG9wdENGKENGV3JpdGVTdHJlYW1DcmVhdGVXaXRoQWxsb2NhdGVkQnVmZmVy
cygwLCAwKSk7CisgICAgYXV0byBzdHJlYW0gPSBhZG9wdENGKENGV3JpdGVTdHJlYW1DcmVhdGVX
aXRoQWxsb2NhdGVkQnVmZmVycygwLCAwKSk7CiAKICAgICBDRldyaXRlU3RyZWFtT3BlbihzdHJl
YW0uZ2V0KCkpOwogICAgIENGUHJvcGVydHlMaXN0V3JpdGUocHJvcGVydHlMaXN0LmdldCgpLCBz
dHJlYW0uZ2V0KCksIGtDRlByb3BlcnR5TGlzdEJpbmFyeUZvcm1hdF92MV8wLCAwLCAwKTsKIAot
ICAgIFJldGFpblB0cjxDRkRhdGFSZWY+IHBsaXN0RGF0YSA9IGFkb3B0Q0Yoc3RhdGljX2Nhc3Q8
Q0ZEYXRhUmVmPihDRldyaXRlU3RyZWFtQ29weVByb3BlcnR5KHN0cmVhbS5nZXQoKSwga0NGU3Ry
ZWFtUHJvcGVydHlEYXRhV3JpdHRlbikpKTsKKyAgICBhdXRvIHBsaXN0RGF0YSA9IGFkb3B0Q0Yo
c3RhdGljX2Nhc3Q8Q0ZEYXRhUmVmPihDRldyaXRlU3RyZWFtQ29weVByb3BlcnR5KHN0cmVhbS5n
ZXQoKSwga0NGU3RyZWFtUHJvcGVydHlEYXRhV3JpdHRlbikpKTsKICAgICBBU1NFUlQocGxpc3RE
YXRhKTsKIAogICAgIENGV3JpdGVTdHJlYW1DbG9zZShzdHJlYW0uZ2V0KCkpOwpAQCAtNDMyLDcg
KzQyMyw3IEBAIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVh
dGUoTm9kZSYgbm9kZSwgc3RkOjpmdW5jdGlvbjxib29sCiAKICAgICBWZWN0b3I8Tm9kZSo+IG5v
ZGVMaXN0OwogICAgIFN0cmluZyBtYXJrdXBTdHJpbmcgPSBjcmVhdGVNYXJrdXAobm9kZSwgSW5j
bHVkZU5vZGUsICZub2RlTGlzdCwgRG9Ob3RSZXNvbHZlVVJMcywgdGFnTmFtZXNUb0ZpbHRlci5n
ZXQoKSk7Ci0gICAgTm9kZTo6Tm9kZVR5cGUgbm9kZVR5cGUgPSBub2RlLm5vZGVUeXBlKCk7Cisg
ICAgYXV0byBub2RlVHlwZSA9IG5vZGUubm9kZVR5cGUoKTsKICAgICBpZiAobm9kZVR5cGUgIT0g
Tm9kZTo6RE9DVU1FTlRfTk9ERSAmJiBub2RlVHlwZSAhPSBOb2RlOjpET0NVTUVOVF9UWVBFX05P
REUpCiAgICAgICAgIG1hcmt1cFN0cmluZyA9IGRvY3VtZW50VHlwZVN0cmluZyhub2RlLmRvY3Vt
ZW50KCkpICsgbWFya3VwU3RyaW5nOwogCkBAIC00NDEsMjAgKzQzMiwyMSBAQCBSZWZQdHI8TGVn
YWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKE5vZGUmIG5vZGUsIHN0ZDo6
ZnVuY3Rpb248Ym9vbAogCiBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2
ZTo6Y3JlYXRlKEZyYW1lJiBmcmFtZSkKIHsKLSAgICBEb2N1bWVudExvYWRlciogZG9jdW1lbnRM
b2FkZXIgPSBmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwotCisgICAgYXV0byogZG9j
dW1lbnRMb2FkZXIgPSBmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwogICAgIGlmICgh
ZG9jdW1lbnRMb2FkZXIpCiAgICAgICAgIHJldHVybiBudWxscHRyOwotICAgICAgICAKLSAgICBW
ZWN0b3I8UmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+PiBzdWJmcmFtZUFyY2hpdmVzOwotICAgIAor
CisgICAgYXV0byBtYWluUmVzb3VyY2UgPSBkb2N1bWVudExvYWRlci0+bWFpblJlc291cmNlKCk7
CisgICAgaWYgKCFtYWluUmVzb3VyY2UpCisgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAg
VmVjdG9yPFJlZjxMZWdhY3lXZWJBcmNoaXZlPj4gc3ViZnJhbWVBcmNoaXZlczsKICAgICBmb3Ig
KHVuc2lnbmVkIGkgPSAwOyBpIDwgZnJhbWUudHJlZSgpLmNoaWxkQ291bnQoKTsgKytpKSB7Ci0g
ICAgICAgIGlmIChSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gY2hpbGRGcmFtZUFyY2hpdmUgPSBj
cmVhdGUoKmZyYW1lLnRyZWUoKS5jaGlsZChpKSkpCi0gICAgICAgICAgICBzdWJmcmFtZUFyY2hp
dmVzLmFwcGVuZChXVEZNb3ZlKGNoaWxkRnJhbWVBcmNoaXZlKSk7CisgICAgICAgIGlmIChhdXRv
IGNoaWxkRnJhbWVBcmNoaXZlID0gY3JlYXRlKCpmcmFtZS50cmVlKCkuY2hpbGQoaSkpKQorICAg
ICAgICAgICAgc3ViZnJhbWVBcmNoaXZlcy5hcHBlbmQoY2hpbGRGcmFtZUFyY2hpdmUucmVsZWFz
ZU5vbk51bGwoKSk7CiAgICAgfQogCi0gICAgYXV0byBzdWJyZXNvdXJjZXMgPSBkb2N1bWVudExv
YWRlci0+c3VicmVzb3VyY2VzKCk7Ci0gICAgcmV0dXJuIGNyZWF0ZShkb2N1bWVudExvYWRlci0+
bWFpblJlc291cmNlKCksIFdURk1vdmUoc3VicmVzb3VyY2VzKSwgV1RGTW92ZShzdWJmcmFtZUFy
Y2hpdmVzKSk7CisgICAgcmV0dXJuIGNyZWF0ZShtYWluUmVzb3VyY2UucmVsZWFzZU5vbk51bGwo
KSwgZG9jdW1lbnRMb2FkZXItPnN1YnJlc291cmNlcygpLCBXVEZNb3ZlKHN1YmZyYW1lQXJjaGl2
ZXMpKTsKIH0KIAogUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNy
ZWF0ZShSYW5nZSogcmFuZ2UpCkBAIC00NjIsMjIgKzQ1NCwyMCBAQCBSZWZQdHI8TGVnYWN5V2Vi
QXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKFJhbmdlKiByYW5nZSkKICAgICBpZiAo
IXJhbmdlKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICAgICAgCi0gICAgRG9jdW1lbnQm
IGRvY3VtZW50ID0gcmFuZ2UtPnN0YXJ0Q29udGFpbmVyKCkuZG9jdW1lbnQoKTsKLQotICAgIEZy
YW1lKiBmcmFtZSA9IGRvY3VtZW50LmZyYW1lKCk7CisgICAgYXV0byYgZG9jdW1lbnQgPSByYW5n
ZS0+c3RhcnRDb250YWluZXIoKS5kb2N1bWVudCgpOworICAgIGF1dG8qIGZyYW1lID0gZG9jdW1l
bnQuZnJhbWUoKTsKICAgICBpZiAoIWZyYW1lKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAg
ICAKLSAgICAvLyBGSVhNRTogVGhpcyBpcyBhbHdheXMgImZvciBpbnRlcmNoYW5nZSIuIElzIHRo
YXQgcmlnaHQ/IFNlZSB0aGUgcHJldmlvdXMgbWV0aG9kLgorCisgICAgLy8gRklYTUU6IFRoaXMg
aXMgYWx3YXlzICJmb3IgaW50ZXJjaGFuZ2UiLiBJcyB0aGF0IHJpZ2h0PwogICAgIFZlY3RvcjxO
b2RlKj4gbm9kZUxpc3Q7CiAgICAgU3RyaW5nIG1hcmt1cFN0cmluZyA9IGRvY3VtZW50VHlwZVN0
cmluZyhkb2N1bWVudCkgKyBjcmVhdGVNYXJrdXAoKnJhbmdlLCAmbm9kZUxpc3QsIEFubm90YXRl
Rm9ySW50ZXJjaGFuZ2UpOwotCiAgICAgcmV0dXJuIGNyZWF0ZShtYXJrdXBTdHJpbmcsICpmcmFt
ZSwgbm9kZUxpc3QsIG51bGxwdHIpOwogfQogCiBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVn
YWN5V2ViQXJjaGl2ZTo6Y3JlYXRlKGNvbnN0IFN0cmluZyYgbWFya3VwU3RyaW5nLCBGcmFtZSYg
ZnJhbWUsIGNvbnN0IFZlY3RvcjxOb2RlKj4mIG5vZGVzLCBzdGQ6OmZ1bmN0aW9uPGJvb2wgKEZy
YW1lJik+IGZyYW1lRmlsdGVyKQogewotICAgIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3Bv
bnNlID0gZnJhbWUubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKS0+cmVzcG9uc2UoKTsKKyAgICBh
dXRvJiByZXNwb25zZSA9IGZyYW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCktPnJlc3BvbnNl
KCk7CiAgICAgVVJMIHJlc3BvbnNlVVJMID0gcmVzcG9uc2UudXJsKCk7CiAgICAgCiAgICAgLy8g
aXQncyBwb3NzaWJsZSB0byBoYXZlIGEgcmVzcG9uc2Ugd2l0aG91dCBhIFVSTCBoZXJlCkBAIC00
ODUsNDIgKzQ3NSw0MSBAQCBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gTGVnYWN5V2ViQXJjaGl2
ZTo6Y3JlYXRlKGNvbnN0IFN0cmluZyYgbWFya3VwU3RyaW5nLCBGcgogICAgIGlmIChyZXNwb25z
ZVVSTC5pc051bGwoKSkKICAgICAgICAgcmVzcG9uc2VVUkwgPSBVUkwoUGFyc2VkVVJMU3RyaW5n
LCBlbXB0eVN0cmluZygpKTsKIAotICAgIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IG1haW5SZXNv
dXJjZSA9IEFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKHV0ZjhCdWZmZXIobWFya3VwU3RyaW5nKSwg
cmVzcG9uc2VVUkwsIHJlc3BvbnNlLm1pbWVUeXBlKCksICJVVEYtOCIsIGZyYW1lLnRyZWUoKS51
bmlxdWVOYW1lKCkpOworICAgIGF1dG8gbWFpblJlc291cmNlID0gQXJjaGl2ZVJlc291cmNlOjpj
cmVhdGUodXRmOEJ1ZmZlcihtYXJrdXBTdHJpbmcpLCByZXNwb25zZVVSTCwgcmVzcG9uc2UubWlt
ZVR5cGUoKSwgIlVURi04IiwgZnJhbWUudHJlZSgpLnVuaXF1ZU5hbWUoKSk7CiAgICAgaWYgKCFt
YWluUmVzb3VyY2UpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgVmVjdG9yPFJlZlB0
cjxMZWdhY3lXZWJBcmNoaXZlPj4gc3ViZnJhbWVBcmNoaXZlczsKLSAgICBWZWN0b3I8UmVmUHRy
PEFyY2hpdmVSZXNvdXJjZT4+IHN1YnJlc291cmNlczsKKyAgICBWZWN0b3I8UmVmPExlZ2FjeVdl
YkFyY2hpdmU+PiBzdWJmcmFtZUFyY2hpdmVzOworICAgIFZlY3RvcjxSZWY8QXJjaGl2ZVJlc291
cmNlPj4gc3VicmVzb3VyY2VzOwogICAgIEhhc2hTZXQ8VVJMPiB1bmlxdWVTdWJyZXNvdXJjZXM7
CiAKLSAgICBzaXplX3Qgbm9kZXNTaXplID0gbm9kZXMuc2l6ZSgpOyAgICAKLSAgICBmb3IgKHNp
emVfdCBpID0gMDsgaSA8IG5vZGVzU2l6ZTsgKytpKSB7Ci0gICAgICAgIE5vZGUmIG5vZGUgPSAq
bm9kZXNbaV07CisgICAgZm9yIChhdXRvJiBub2RlUHRyIDogbm9kZXMpIHsKKyAgICAgICAgTm9k
ZSYgbm9kZSA9ICpub2RlUHRyOwogICAgICAgICBGcmFtZSogY2hpbGRGcmFtZTsKICAgICAgICAg
aWYgKChpczxIVE1MRnJhbWVFbGVtZW50QmFzZT4obm9kZSkgfHwgaXM8SFRNTE9iamVjdEVsZW1l
bnQ+KG5vZGUpKQogICAgICAgICAgICAgJiYgKGNoaWxkRnJhbWUgPSBkb3duY2FzdDxIVE1MRnJh
bWVPd25lckVsZW1lbnQ+KG5vZGUpLmNvbnRlbnRGcmFtZSgpKSkgewogICAgICAgICAgICAgaWYg
KGZyYW1lRmlsdGVyICYmICFmcmFtZUZpbHRlcigqY2hpbGRGcmFtZSkpCiAgICAgICAgICAgICAg
ICAgY29udGludWU7Ci0gICAgICAgICAgICAgICAgCi0gICAgICAgICAgICBpZiAoUmVmUHRyPExl
Z2FjeVdlYkFyY2hpdmU+IHN1YmZyYW1lQXJjaGl2ZSA9IGNyZWF0ZSgqY2hpbGRGcmFtZS0+ZG9j
dW1lbnQoKSwgZnJhbWVGaWx0ZXIpKQotICAgICAgICAgICAgICAgIHN1YmZyYW1lQXJjaGl2ZXMu
YXBwZW5kKFdURk1vdmUoc3ViZnJhbWVBcmNoaXZlKSk7CisgICAgICAgICAgICBpZiAoYXV0byBz
dWJmcmFtZUFyY2hpdmUgPSBjcmVhdGUoKmNoaWxkRnJhbWUtPmRvY3VtZW50KCksIGZyYW1lRmls
dGVyKSkKKyAgICAgICAgICAgICAgICBzdWJmcmFtZUFyY2hpdmVzLmFwcGVuZChzdWJmcmFtZUFy
Y2hpdmUucmVsZWFzZU5vbk51bGwoKSk7CiAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAg
ICAgTE9HX0VSUk9SKCJVbmFibGVkIHRvIGFyY2hpdmUgc3ViZnJhbWUgJXMiLCBjaGlsZEZyYW1l
LT50cmVlKCkudW5pcXVlTmFtZSgpLnN0cmluZygpLnV0ZjgoKS5kYXRhKCkpOwogCiAgICAgICAg
IH0gZWxzZSB7CiAgICAgICAgICAgICBMaXN0SGFzaFNldDxVUkw+IHN1YnJlc291cmNlVVJMczsK
ICAgICAgICAgICAgIG5vZGUuZ2V0U3VicmVzb3VyY2VVUkxzKHN1YnJlc291cmNlVVJMcyk7Ci0g
ICAgICAgICAgICAKLSAgICAgICAgICAgIERvY3VtZW50TG9hZGVyKiBkb2N1bWVudExvYWRlciA9
IGZyYW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCk7CiAKLSAgICAgICAgICAgIGZvciAoY29u
c3QgYXV0byYgc3VicmVzb3VyY2VVUkwgOiBzdWJyZXNvdXJjZVVSTHMpIHsKKyAgICAgICAgICAg
IEFTU0VSVChmcmFtZS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKTsKKyAgICAgICAgICAgIGF1
dG8mIGRvY3VtZW50TG9hZGVyID0gKmZyYW1lLmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCk7CisK
KyAgICAgICAgICAgIGZvciAoYXV0byYgc3VicmVzb3VyY2VVUkwgOiBzdWJyZXNvdXJjZVVSTHMp
IHsKICAgICAgICAgICAgICAgICBpZiAodW5pcXVlU3VicmVzb3VyY2VzLmNvbnRhaW5zKHN1YnJl
c291cmNlVVJMKSkKICAgICAgICAgICAgICAgICAgICAgY29udGludWU7CiAKICAgICAgICAgICAg
ICAgICB1bmlxdWVTdWJyZXNvdXJjZXMuYWRkKHN1YnJlc291cmNlVVJMKTsKIAotICAgICAgICAg
ICAgICAgIGlmIChSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiByZXNvdXJjZSA9IGRvY3VtZW50TG9h
ZGVyLT5zdWJyZXNvdXJjZShzdWJyZXNvdXJjZVVSTCkpIHsKLSAgICAgICAgICAgICAgICAgICAg
c3VicmVzb3VyY2VzLmFwcGVuZChXVEZNb3ZlKHJlc291cmNlKSk7CisgICAgICAgICAgICAgICAg
aWYgKGF1dG8gcmVzb3VyY2UgPSBkb2N1bWVudExvYWRlci5zdWJyZXNvdXJjZShzdWJyZXNvdXJj
ZVVSTCkpIHsKKyAgICAgICAgICAgICAgICAgICAgc3VicmVzb3VyY2VzLmFwcGVuZChyZXNvdXJj
ZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAg
ICAgICAgICAgICAgfQogCkBAIC01MjgsMTAgKzUxNyw5IEBAIFJlZlB0cjxMZWdhY3lXZWJBcmNo
aXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoY29uc3QgU3RyaW5nJiBtYXJrdXBTdHJpbmcs
IEZyCiAjaWYgRU5BQkxFKENBQ0hFX1BBUlRJVElPTklORykKICAgICAgICAgICAgICAgICByZXF1
ZXN0LnNldERvbWFpbkZvckNhY2hlUGFydGl0aW9uKGZyYW1lLmRvY3VtZW50KCktPnRvcE9yaWdp
bigpLT5kb21haW5Gb3JDYWNoZVBhcnRpdGlvbigpKTsKICNlbmRpZgotICAgICAgICAgICAgICAg
IENhY2hlZFJlc291cmNlKiBjYWNoZWRSZXNvdXJjZSA9IE1lbW9yeUNhY2hlOjpzaW5nbGV0b24o
KS5yZXNvdXJjZUZvclJlcXVlc3QocmVxdWVzdCwgZnJhbWUucGFnZSgpLT5zZXNzaW9uSUQoKSk7
Ci0gICAgICAgICAgICAgICAgaWYgKGNhY2hlZFJlc291cmNlKSB7Ci0gICAgICAgICAgICAgICAg
ICAgIGlmIChSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiByZXNvdXJjZSA9IEFyY2hpdmVSZXNvdXJj
ZTo6Y3JlYXRlKGNhY2hlZFJlc291cmNlLT5yZXNvdXJjZUJ1ZmZlcigpLCBzdWJyZXNvdXJjZVVS
TCwgY2FjaGVkUmVzb3VyY2UtPnJlc3BvbnNlKCkpKSB7Ci0gICAgICAgICAgICAgICAgICAgICAg
ICBzdWJyZXNvdXJjZXMuYXBwZW5kKFdURk1vdmUocmVzb3VyY2UpKTsKKyAgICAgICAgICAgICAg
ICBpZiAoYXV0byogY2FjaGVkUmVzb3VyY2UgPSBNZW1vcnlDYWNoZTo6c2luZ2xldG9uKCkucmVz
b3VyY2VGb3JSZXF1ZXN0KHJlcXVlc3QsIGZyYW1lLnBhZ2UoKS0+c2Vzc2lvbklEKCkpKSB7Cisg
ICAgICAgICAgICAgICAgICAgIGlmIChhdXRvIHJlc291cmNlID0gQXJjaGl2ZVJlc291cmNlOjpj
cmVhdGUoY2FjaGVkUmVzb3VyY2UtPnJlc291cmNlQnVmZmVyKCksIHN1YnJlc291cmNlVVJMLCBj
YWNoZWRSZXNvdXJjZS0+cmVzcG9uc2UoKSkpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHN1
YnJlc291cmNlcy5hcHBlbmQocmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSk7CiAgICAgICAgICAg
ICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAg
ICAgICAgIH0KQEAgLTU0MywxNyArNTMxLDE3IEBAIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBM
ZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoY29uc3QgU3RyaW5nJiBtYXJrdXBTdHJpbmcsIEZyCiAg
ICAgfQogCiAgICAgLy8gQWRkIGZhdmljb24gaWYgb25lIGV4aXN0cyBmb3IgdGhpcyBwYWdlLCBp
ZiB3ZSBhcmUgYXJjaGl2aW5nIHRoZSBlbnRpcmUgcGFnZS4KLSAgICBpZiAobm9kZXNTaXplICYm
IG5vZGVzWzBdLT5pc0RvY3VtZW50Tm9kZSgpICYmIGljb25EYXRhYmFzZSgpLmlzRW5hYmxlZCgp
KSB7Ci0gICAgICAgIGNvbnN0IFN0cmluZyYgaWNvblVSTCA9IGljb25EYXRhYmFzZSgpLnN5bmNo
cm9ub3VzSWNvblVSTEZvclBhZ2VVUkwocmVzcG9uc2VVUkwpOworICAgIGlmICghbm9kZXMuaXNF
bXB0eSgpICYmIG5vZGVzWzBdLT5pc0RvY3VtZW50Tm9kZSgpICYmIGljb25EYXRhYmFzZSgpLmlz
RW5hYmxlZCgpKSB7CisgICAgICAgIGF1dG8gaWNvblVSTCA9IGljb25EYXRhYmFzZSgpLnN5bmNo
cm9ub3VzSWNvblVSTEZvclBhZ2VVUkwocmVzcG9uc2VVUkwpOwogICAgICAgICBpZiAoIWljb25V
UkwuaXNFbXB0eSgpICYmIGljb25EYXRhYmFzZSgpLnN5bmNocm9ub3VzSWNvbkRhdGFLbm93bkZv
ckljb25VUkwoaWNvblVSTCkpIHsKLSAgICAgICAgICAgIGlmIChJbWFnZSogaWNvbkltYWdlID0g
aWNvbkRhdGFiYXNlKCkuc3luY2hyb25vdXNJY29uRm9yUGFnZVVSTChyZXNwb25zZVVSTCwgSW50
U2l6ZSgxNiwgMTYpKSkgeworICAgICAgICAgICAgaWYgKGF1dG8qIGljb25JbWFnZSA9IGljb25E
YXRhYmFzZSgpLnN5bmNocm9ub3VzSWNvbkZvclBhZ2VVUkwocmVzcG9uc2VVUkwsIEludFNpemUo
MTYsIDE2KSkpIHsKICAgICAgICAgICAgICAgICBpZiAoYXV0byByZXNvdXJjZSA9IEFyY2hpdmVS
ZXNvdXJjZTo6Y3JlYXRlKGljb25JbWFnZS0+ZGF0YSgpLCBVUkwoUGFyc2VkVVJMU3RyaW5nLCBp
Y29uVVJMKSwgImltYWdlL3gtaWNvbiIsICIiLCAiIikpCi0gICAgICAgICAgICAgICAgICAgIHN1
YnJlc291cmNlcy5hcHBlbmQoV1RGTW92ZShyZXNvdXJjZSkpOworICAgICAgICAgICAgICAgICAg
ICBzdWJyZXNvdXJjZXMuYXBwZW5kKHJlc291cmNlLnJlbGVhc2VOb25OdWxsKCkpOwogICAgICAg
ICAgICAgfQogICAgICAgICB9CiAgICAgfQogCi0gICAgcmV0dXJuIGNyZWF0ZShXVEZNb3ZlKG1h
aW5SZXNvdXJjZSksIFdURk1vdmUoc3VicmVzb3VyY2VzKSwgV1RGTW92ZShzdWJmcmFtZUFyY2hp
dmVzKSk7CisgICAgcmV0dXJuIGNyZWF0ZShtYWluUmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSwg
V1RGTW92ZShzdWJyZXNvdXJjZXMpLCBXVEZNb3ZlKHN1YmZyYW1lQXJjaGl2ZXMpKTsKIH0KIAog
UmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZUZyb21TZWxl
Y3Rpb24oRnJhbWUqIGZyYW1lKQpAQCAtNTYxLDcgKzU0OSw3IEBAIFJlZlB0cjxMZWdhY3lXZWJB
cmNoaXZlPiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVGcm9tU2VsZWN0aW9uKEZyYW1lKiBmcmFt
ZSkKICAgICBpZiAoIWZyYW1lKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAotICAgIERvY3Vt
ZW50KiBkb2N1bWVudCA9IGZyYW1lLT5kb2N1bWVudCgpOworICAgIGF1dG8qIGRvY3VtZW50ID0g
ZnJhbWUtPmRvY3VtZW50KCk7CiAgICAgaWYgKCFkb2N1bWVudCkKICAgICAgICAgcmV0dXJuIG51
bGxwdHI7CiAKQEAgLTU2OSwxMiArNTU3LDEwIEBAIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBM
ZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVGcm9tU2VsZWN0aW9uKEZyYW1lKiBmcmFtZSkKICAgICBi
dWlsZGVyLmFwcGVuZChkb2N1bWVudFR5cGVTdHJpbmcoKmRvY3VtZW50KSk7CiAKICAgICBWZWN0
b3I8Tm9kZSo+IG5vZGVMaXN0OwotICAgIFJlZlB0cjxSYW5nZT4gc2VsZWN0aW9uUmFuZ2UgPSBm
cmFtZS0+c2VsZWN0aW9uKCkudG9Ob3JtYWxpemVkUmFuZ2UoKTsKLSAgICBpZiAoc2VsZWN0aW9u
UmFuZ2UpCisgICAgaWYgKGF1dG8gc2VsZWN0aW9uUmFuZ2UgPSBmcmFtZS0+c2VsZWN0aW9uKCku
dG9Ob3JtYWxpemVkUmFuZ2UoKSkKICAgICAgICAgYnVpbGRlci5hcHBlbmQoY3JlYXRlTWFya3Vw
KCpzZWxlY3Rpb25SYW5nZSwgJm5vZGVMaXN0LCBBbm5vdGF0ZUZvckludGVyY2hhbmdlKSk7CiAK
LSAgICBTdHJpbmcgbWFya3VwU3RyaW5nID0gYnVpbGRlci50b1N0cmluZygpOwotICAgIFJlZlB0
cjxMZWdhY3lXZWJBcmNoaXZlPiBhcmNoaXZlID0gY3JlYXRlKG1hcmt1cFN0cmluZywgKmZyYW1l
LCBub2RlTGlzdCwgbnVsbHB0cik7CisgICAgYXV0byBhcmNoaXZlID0gY3JlYXRlKGJ1aWxkZXIu
dG9TdHJpbmcoKSwgKmZyYW1lLCBub2RlTGlzdCwgbnVsbHB0cik7CiAgICAgCiAgICAgaWYgKCFk
b2N1bWVudC0+aXNGcmFtZVNldCgpKQogICAgICAgICByZXR1cm4gYXJjaGl2ZTsKQEAgLTU4NCw3
ICs1NzAsMTEgQEAgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IExlZ2FjeVdlYkFyY2hpdmU6OmNy
ZWF0ZUZyb21TZWxlY3Rpb24oRnJhbWUqIGZyYW1lKQogICAgIFN0cmluZyBpZnJhbWVNYXJrdXAg
PSAiPGlmcmFtZSBmcmFtZWJvcmRlcj1cIm5vXCIgbWFyZ2lud2lkdGg9XCIwXCIgbWFyZ2luaGVp
Z2h0PVwiMFwiIHdpZHRoPVwiOTglJVwiIGhlaWdodD1cIjk4JSVcIiBzcmM9XCIiICsgZnJhbWUt
PmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCktPnJlc3BvbnNlKCkudXJsKCkuc3RyaW5nKCkgKyAi
XCI+PC9pZnJhbWU+IjsKICAgICBhdXRvIGlmcmFtZVJlc291cmNlID0gQXJjaGl2ZVJlc291cmNl
OjpjcmVhdGUodXRmOEJ1ZmZlcihpZnJhbWVNYXJrdXApLCBibGFua1VSTCgpLCAidGV4dC9odG1s
IiwgIlVURi04IiwgU3RyaW5nKCkpOwogCi0gICAgcmV0dXJuIGNyZWF0ZShXVEZNb3ZlKGlmcmFt
ZVJlc291cmNlKSwgVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+PigpLCBWZWN0b3I8UmVm
UHRyPExlZ2FjeVdlYkFyY2hpdmU+PiB7IGFyY2hpdmUgfSk7CisgICAgVmVjdG9yPFJlZjxMZWdh
Y3lXZWJBcmNoaXZlPj4gc3ViZnJhbWVBcmNoaXZlczsKKyAgICBzdWJmcmFtZUFyY2hpdmVzLnJl
c2VydmVJbml0aWFsQ2FwYWNpdHkoMSk7CisgICAgc3ViZnJhbWVBcmNoaXZlcy51bmNoZWNrZWRB
cHBlbmQoYXJjaGl2ZS5yZWxlYXNlTm9uTnVsbCgpKTsKKworICAgIHJldHVybiBjcmVhdGUoaWZy
YW1lUmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKSwgeyB9LCBXVEZNb3ZlKHN1YmZyYW1lQXJjaGl2
ZXMpKTsKIH0KIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUv
Y2YvTGVnYWN5V2ViQXJjaGl2ZS5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvY2Yv
TGVnYWN5V2ViQXJjaGl2ZS5oCmluZGV4IDM1ZGRmM2MyYTU5YzA4NjMzYmRkOWIyMTM0N2IzNmY4
ZDI3NjJjMWEuLjQ0NjdkMGQ2YTAzZTA4MDNhZTZiYTc1NjM5NzZlYmU1MjJhMTQ5OGEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZlL2NmL0xlZ2FjeVdlYkFyY2hpdmUu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXJjaGl2ZS9jZi9MZWdhY3lXZWJBcmNoaXZl
LmgKQEAgLTM3LDIzICszNywyNiBAQCBjbGFzcyBGcmFtZTsKIGNsYXNzIE5vZGU7CiBjbGFzcyBS
YW5nZTsKIAotY2xhc3MgTGVnYWN5V2ViQXJjaGl2ZSA6IHB1YmxpYyBBcmNoaXZlIHsKK2NsYXNz
IExlZ2FjeVdlYkFyY2hpdmUgZmluYWwgOiBwdWJsaWMgQXJjaGl2ZSB7CiBwdWJsaWM6CiAgICAg
V0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxMZWdhY3lXZWJBcmNoaXZlPiBjcmVhdGUoKTsKICAg
ICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IGNyZWF0ZShT
aGFyZWRCdWZmZXImKTsKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmUHRyPExlZ2FjeVdl
YkFyY2hpdmU+IGNyZWF0ZShjb25zdCBVUkwmLCBTaGFyZWRCdWZmZXImKTsKLSAgICBXRUJDT1JF
X0VYUE9SVCBzdGF0aWMgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IGNyZWF0ZShSZWZQdHI8QXJj
aGl2ZVJlc291cmNlPiYmIG1haW5SZXNvdXJjZSwgVmVjdG9yPFJlZlB0cjxBcmNoaXZlUmVzb3Vy
Y2U+PiYmIHN1YnJlc291cmNlcywgVmVjdG9yPFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPj4mJiBz
dWJmcmFtZUFyY2hpdmVzKTsKKyAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmPExlZ2FjeVdl
YkFyY2hpdmU+IGNyZWF0ZShSZWY8QXJjaGl2ZVJlc291cmNlPiYmIG1haW5SZXNvdXJjZSwgVmVj
dG9yPFJlZjxBcmNoaXZlUmVzb3VyY2U+PiYmIHN1YnJlc291cmNlcywgVmVjdG9yPFJlZjxMZWdh
Y3lXZWJBcmNoaXZlPj4mJiBzdWJmcmFtZUFyY2hpdmVzKTsKICAgICBXRUJDT1JFX0VYUE9SVCBz
dGF0aWMgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IGNyZWF0ZShOb2RlJiwgc3RkOjpmdW5jdGlv
bjxib29sKEZyYW1lJik+IGZyYW1lRmlsdGVyID0gbnVsbHB0cik7CiAgICAgV0VCQ09SRV9FWFBP
UlQgc3RhdGljIFJlZlB0cjxMZWdhY3lXZWJBcmNoaXZlPiBjcmVhdGUoRnJhbWUmKTsKICAgICBX
RUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+IGNyZWF0ZUZyb21T
ZWxlY3Rpb24oRnJhbWUqKTsKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmUHRyPExlZ2Fj
eVdlYkFyY2hpdmU+IGNyZWF0ZShSYW5nZSopOwogCi0gICAgVHlwZSB0eXBlKCkgY29uc3Qgb3Zl
cnJpZGU7Ci0KICAgICBXRUJDT1JFX0VYUE9SVCBSZXRhaW5QdHI8Q0ZEYXRhUmVmPiByYXdEYXRh
UmVwcmVzZW50YXRpb24oKTsKIAogcHJpdmF0ZToKLSAgICBMZWdhY3lXZWJBcmNoaXZlKCkgeyB9
CisgICAgTGVnYWN5V2ViQXJjaGl2ZSgpID0gZGVmYXVsdDsKKworICAgIGJvb2wgc2hvdWxkTG9h
ZEZyb21BcmNoaXZlT25seSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIGZhbHNlOyB9CisgICAgYm9v
bCBzaG91bGRPdmVycmlkZUJhc2VVUkwoKSBjb25zdCBmaW5hbCB7IHJldHVybiBmYWxzZTsgfQor
ICAgIGJvb2wgc2hvdWxkVXNlTWFpblJlc291cmNlRW5jb2RpbmcoKSBjb25zdCBmaW5hbCB7IHJl
dHVybiB0cnVlOyB9CisgICAgYm9vbCBzaG91bGRVc2VNYWluUmVzb3VyY2VVUkwoKSBjb25zdCBm
aW5hbCB7IHJldHVybiB0cnVlOyB9CiAKICAgICBlbnVtIE1haW5SZXNvdXJjZVN0YXR1cyB7IFN1
YnJlc291cmNlLCBNYWluUmVzb3VyY2UgfTsKIApAQCAtNjIsNyArNjUsNyBAQCBwcml2YXRlOgog
ICAgIHN0YXRpYyBSZXNvdXJjZVJlc3BvbnNlIGNyZWF0ZVJlc291cmNlUmVzcG9uc2VGcm9tTWFj
QXJjaGl2ZWREYXRhKENGRGF0YVJlZik7CiAgICAgc3RhdGljIFJlc291cmNlUmVzcG9uc2UgY3Jl
YXRlUmVzb3VyY2VSZXNwb25zZUZyb21Qcm9wZXJ0eUxpc3REYXRhKENGRGF0YVJlZiwgQ0ZTdHJp
bmdSZWYgcmVzcG9uc2VEYXRhVHlwZSk7CiAgICAgc3RhdGljIFJldGFpblB0cjxDRkRhdGFSZWY+
IGNyZWF0ZVByb3BlcnR5TGlzdFJlcHJlc2VudGF0aW9uKGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
KTsKLSAgICBzdGF0aWMgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gY3JlYXRlUHJvcGVydHlM
aXN0UmVwcmVzZW50YXRpb24oQXJjaGl2ZSopOworICAgIHN0YXRpYyBSZXRhaW5QdHI8Q0ZEaWN0
aW9uYXJ5UmVmPiBjcmVhdGVQcm9wZXJ0eUxpc3RSZXByZXNlbnRhdGlvbihBcmNoaXZlJik7CiAg
ICAgc3RhdGljIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IGNyZWF0ZVByb3BlcnR5TGlzdFJl
cHJlc2VudGF0aW9uKEFyY2hpdmVSZXNvdXJjZSosIE1haW5SZXNvdXJjZVN0YXR1cyk7CiAKICAg
ICBib29sIGV4dHJhY3QoQ0ZEaWN0aW9uYXJ5UmVmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9hcmNoaXZlL21odG1sL01IVE1MQXJjaGl2ZS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRNTEFyY2hpdmUuY3BwCmluZGV4IGUxZjNhZDA2YTVm
N2YyYjgwNTUzMTA0NWRhNGI4NmMyZDNjODJkZDMuLmE5MjFiMDVlODQ2YTA1YTVhZmNlNjMwM2Fh
MThmOGJmMzA3MDlkYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZl
L21odG1sL01IVE1MQXJjaGl2ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hp
dmUvbWh0bWwvTUhUTUxBcmNoaXZlLmNwcApAQCAtMTIyLDE1ICsxMjIsMTUgQEAgUmVmUHRyPE1I
VE1MQXJjaGl2ZT4gTUhUTUxBcmNoaXZlOjpjcmVhdGUoY29uc3QgVVJMJiB1cmwsIFNoYXJlZEJ1
ZmZlciYgZGF0YSkKICAgICAgICAgUmVmUHRyPE1IVE1MQXJjaGl2ZT4gYXJjaGl2ZSA9IHBhcnNl
ci5mcmFtZUF0KGkpOwogICAgICAgICBmb3IgKHNpemVfdCBqID0gMTsgaiA8IHBhcnNlci5mcmFt
ZUNvdW50KCk7ICsraikgewogICAgICAgICAgICAgaWYgKGkgIT0gaikKLSAgICAgICAgICAgICAg
ICBhcmNoaXZlLT5hZGRTdWJmcmFtZUFyY2hpdmUocGFyc2VyLmZyYW1lQXQoaikpOworICAgICAg
ICAgICAgICAgIGFyY2hpdmUtPmFkZFN1YmZyYW1lQXJjaGl2ZSgqcGFyc2VyLmZyYW1lQXQoaikp
OwogICAgICAgICB9CiAgICAgICAgIGZvciAoc2l6ZV90IGogPSAwOyBqIDwgcGFyc2VyLnN1YlJl
c291cmNlQ291bnQoKTsgKytqKQotICAgICAgICAgICAgYXJjaGl2ZS0+YWRkU3VicmVzb3VyY2Uo
cGFyc2VyLnN1YlJlc291cmNlQXQoaikpOworICAgICAgICAgICAgYXJjaGl2ZS0+YWRkU3VicmVz
b3VyY2UoKnBhcnNlci5zdWJSZXNvdXJjZUF0KGopKTsKICAgICB9CiAgICAgcmV0dXJuIG1haW5B
cmNoaXZlOwogfQogCi1QYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gTUhUTUxBcmNoaXZlOjpnZW5l
cmF0ZU1IVE1MRGF0YShQYWdlKiBwYWdlKQorUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gTUhUTUxBcmNo
aXZlOjpnZW5lcmF0ZU1IVE1MRGF0YShQYWdlKiBwYWdlKQogewogICAgIFZlY3RvcjxQYWdlU2Vy
aWFsaXplcjo6UmVzb3VyY2U+IHJlc291cmNlczsKICAgICBQYWdlU2VyaWFsaXplciBwYWdlU2Vy
aWFsaXplcigmcmVzb3VyY2VzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9h
cmNoaXZlL21odG1sL01IVE1MQXJjaGl2ZS5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hp
dmUvbWh0bWwvTUhUTUxBcmNoaXZlLmgKaW5kZXggY2EyMDAwMzc5YmRmNDEyZjRlNDEyNGVhZjIx
YWJhNjZhMTVlMzRiMi4uODUyNDY1OWFhYjIyMGRlMDc1YzY3N2FiNzBmMTlhY2NjODgxOGRmZiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvbWh0bWwvTUhUTUxBcmNo
aXZlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUvbWh0bWwvTUhUTUxBcmNo
aXZlLmgKQEAgLTQwLDIyICs0MCwyNCBAQCBjbGFzcyBNSFRNTFBhcnNlcjsKIGNsYXNzIFBhZ2U7
CiBjbGFzcyBTaGFyZWRCdWZmZXI7CiAKLWNsYXNzIE1IVE1MQXJjaGl2ZSA6IHB1YmxpYyBBcmNo
aXZlIHsKK2NsYXNzIE1IVE1MQXJjaGl2ZSBmaW5hbCA6IHB1YmxpYyBBcmNoaXZlIHsKIHB1Ymxp
YzoKLSAgICBUeXBlIHR5cGUoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBNSFRNTDsgfQotCiAg
ICAgc3RhdGljIFJlZjxNSFRNTEFyY2hpdmU+IGNyZWF0ZSgpOwogICAgIHN0YXRpYyBSZWZQdHI8
TUhUTUxBcmNoaXZlPiBjcmVhdGUoY29uc3QgVVJMJiwgU2hhcmVkQnVmZmVyJik7CiAKLSAgICBz
dGF0aWMgUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGdlbmVyYXRlTUhUTUxEYXRhKFBhZ2UqKTsK
KyAgICBzdGF0aWMgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZ2VuZXJhdGVNSFRNTERhdGEoUGFnZSop
OwogCiAgICAgdmlydHVhbCB+TUhUTUxBcmNoaXZlKCk7CiAKIHByaXZhdGU6Ci0gICAgc3RhdGlj
IFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBnZW5lcmF0ZU1IVE1MRGF0YShQYWdlKiwgYm9vbCB1
c2VCaW5hcnlFbmNvZGluZyk7Ci0KICAgICBmcmllbmQgY2xhc3MgTUhUTUxQYXJzZXI7CisKICAg
ICBNSFRNTEFyY2hpdmUoKTsKKworICAgIGJvb2wgc2hvdWxkTG9hZEZyb21BcmNoaXZlT25seSgp
IGNvbnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KKyAgICBib29sIHNob3VsZE92ZXJyaWRlQmFz
ZVVSTCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KKyAgICBib29sIHNob3VsZFVzZU1h
aW5SZXNvdXJjZUVuY29kaW5nKCkgY29uc3QgZmluYWwgeyByZXR1cm4gZmFsc2U7IH0KKyAgICBi
b29sIHNob3VsZFVzZU1haW5SZXNvdXJjZVVSTCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIGZhbHNl
OyB9CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRNTFBhcnNlci5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvYXJjaGl2ZS9taHRtbC9NSFRNTFBhcnNlci5jcHAKaW5kZXggZjhhMDdlZGRhYTZh
ODMzMDA2YWUwMDY4MGM5N2ZkNzA5MWM2ZDljYS4uYjA0MTRlYmM5NjE1NWIxNWJhMTRjNmYzZDU4
ODk1ZjZmMzI3MDJhMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FyY2hpdmUv
bWh0bWwvTUhUTUxQYXJzZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcmNoaXZl
L21odG1sL01IVE1MUGFyc2VyLmNwcApAQCAtNzUsNyArNzUsNyBAQCBSZWZQdHI8TUhUTUxBcmNo
aXZlPiBNSFRNTFBhcnNlcjo6cGFyc2VBcmNoaXZlV2l0aEhlYWRlcihNSU1FSGVhZGVyKiBoZWFk
ZXIpCiAgICAgICAgIFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IHJlc291cmNlID0gcGFyc2VOZXh0
UGFydCgqaGVhZGVyLCBTdHJpbmcoKSwgU3RyaW5nKCksIGVuZE9mQXJjaGl2ZVJlYWNoZWQpOwog
ICAgICAgICBpZiAoIXJlc291cmNlKQogICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAg
ICAgIGFyY2hpdmUtPnNldE1haW5SZXNvdXJjZShyZXNvdXJjZSk7CisgICAgICAgIGFyY2hpdmUt
PnNldE1haW5SZXNvdXJjZShyZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICAgICAgcmV0
dXJuIGFyY2hpdmU7CiAgICAgfQogCkBAIC0xMDEsNyArMTAxLDcgQEAgUmVmUHRyPE1IVE1MQXJj
aGl2ZT4gTUhUTUxQYXJzZXI6OnBhcnNlQXJjaGl2ZVdpdGhIZWFkZXIoTUlNRUhlYWRlciogaGVh
ZGVyKQogICAgICAgICAgICAgLy8gVGhlIHRvcC1mcmFtZSBpcyB0aGUgZmlyc3QgZnJhbWUgZm91
bmQsIHJlZ2FyZGxlc3Mgb2YgdGhlIG5lc3RpbmcgbGV2ZWwuCiAgICAgICAgICAgICBpZiAoc3Vi
ZnJhbWVBcmNoaXZlLT5tYWluUmVzb3VyY2UoKSkKICAgICAgICAgICAgICAgICBhZGRSZXNvdXJj
ZVRvQXJjaGl2ZShzdWJmcmFtZUFyY2hpdmUtPm1haW5SZXNvdXJjZSgpLCBhcmNoaXZlLmdldCgp
KTsKLSAgICAgICAgICAgIGFyY2hpdmUtPmFkZFN1YmZyYW1lQXJjaGl2ZShzdWJmcmFtZUFyY2hp
dmUpOworICAgICAgICAgICAgYXJjaGl2ZS0+YWRkU3ViZnJhbWVBcmNoaXZlKHN1YmZyYW1lQXJj
aGl2ZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICB9
CiAKQEAgLTEyNiwxMyArMTI2LDEzIEBAIHZvaWQgTUhUTUxQYXJzZXI6OmFkZFJlc291cmNlVG9B
cmNoaXZlKEFyY2hpdmVSZXNvdXJjZSogcmVzb3VyY2UsIE1IVE1MQXJjaGl2ZSoKIAogICAgIC8v
IFRoZSBmaXJzdCBkb2N1bWVudCBzdWl0YWJsZSByZXNvdXJjZSBpcyB0aGUgbWFpbiBmcmFtZS4K
ICAgICBpZiAoIWFyY2hpdmUtPm1haW5SZXNvdXJjZSgpKSB7Ci0gICAgICAgIGFyY2hpdmUtPnNl
dE1haW5SZXNvdXJjZShyZXNvdXJjZSk7CisgICAgICAgIGFyY2hpdmUtPnNldE1haW5SZXNvdXJj
ZSgqcmVzb3VyY2UpOwogICAgICAgICBtX2ZyYW1lcy5hcHBlbmQoYXJjaGl2ZSk7CiAgICAgICAg
IHJldHVybjsKICAgICB9CiAKICAgICBSZWZQdHI8TUhUTUxBcmNoaXZlPiBzdWJmcmFtZSA9IE1I
VE1MQXJjaGl2ZTo6Y3JlYXRlKCk7Ci0gICAgc3ViZnJhbWUtPnNldE1haW5SZXNvdXJjZShyZXNv
dXJjZSk7CisgICAgc3ViZnJhbWUtPnNldE1haW5SZXNvdXJjZSgqcmVzb3VyY2UpOwogICAgIG1f
ZnJhbWVzLmFwcGVuZChzdWJmcmFtZSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmNwcAppbmRleCA4YmYwNjkxYWM0OTY2NTUx
OGNmYThhYjVlOTExMDUwN2RlZDc3MDY5Li5hZjQwY2MyMDRhZDA0N2Y4NWMyMzQxN2NiY2U3ZjE5
N2UzYmU2MjQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
Q1NTU3R5bGVTaGVldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hl
ZENTU1N0eWxlU2hlZXQuY3BwCkBAIC0zLDcgKzMsNyBAQAogICAgIENvcHlyaWdodCAoQykgMjAw
MSBEaXJrIE11ZWxsZXIgKG11ZWxsZXJAa2RlLm9yZykKICAgICBDb3B5cmlnaHQgKEMpIDIwMDIg
V2FsZG8gQmFzdGlhbiAoYmFzdGlhbkBrZGUub3JnKQogICAgIENvcHlyaWdodCAoQykgMjAwNiBT
YW11ZWwgV2VpbmlnIChzYW0ud2VpbmlnQGdtYWlsLmNvbSkKLSAgICBDb3B5cmlnaHQgKEMpIDIw
MDQsIDIwMDUsIDIwMDYgQXBwbGUgSW5jLgorICAgIENvcHlyaWdodCAoQykgMjAwNC0yMDE3IEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KIAogICAgIFRoaXMgbGlicmFyeSBpcyBmcmVl
IHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICAgICBtb2RpZnkgaXQg
dW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYwpAQCAtMTks
OSArMTksNiBAQAogICAgIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09Q
WUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCiAgICAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRh
dGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKICAgICBCb3N0b24s
IE1BIDAyMTEwLTEzMDEsIFVTQS4KLQotICAgIFRoaXMgY2xhc3MgcHJvdmlkZXMgYWxsIGZ1bmN0
aW9uYWxpdHkgbmVlZGVkIGZvciBsb2FkaW5nIGltYWdlcywgc3R5bGUgc2hlZXRzIGFuZCBodG1s
Ci0gICAgcGFnZXMgZnJvbSB0aGUgd2ViLiBJdCBoYXMgYSBtZW1vcnkgY2FjaGUgZm9yIHRoZXNl
IG9iamVjdHMuCiAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCkBAIC0xNTYsNyArMTUzLDcgQEAg
dm9pZCBDYWNoZWRDU1NTdHlsZVNoZWV0OjpkZXN0cm95RGVjb2RlZERhdGEoKQogICAgIHNldERl
Y29kZWRTaXplKDApOwogfQogCi1QYXNzUmVmUHRyPFN0eWxlU2hlZXRDb250ZW50cz4gQ2FjaGVk
Q1NTU3R5bGVTaGVldDo6cmVzdG9yZVBhcnNlZFN0eWxlU2hlZXQoY29uc3QgQ1NTUGFyc2VyQ29u
dGV4dCYgY29udGV4dCwgQ2FjaGVQb2xpY3kgY2FjaGVQb2xpY3kpCitSZWZQdHI8U3R5bGVTaGVl
dENvbnRlbnRzPiBDYWNoZWRDU1NTdHlsZVNoZWV0OjpyZXN0b3JlUGFyc2VkU3R5bGVTaGVldChj
b25zdCBDU1NQYXJzZXJDb250ZXh0JiBjb250ZXh0LCBDYWNoZVBvbGljeSBjYWNoZVBvbGljeSkK
IHsKICAgICBpZiAoIW1fcGFyc2VkU3R5bGVTaGVldENhY2hlKQogICAgICAgICByZXR1cm4gbnVs
bHB0cjsKQEAgLTE4MCw3ICsxNzcsNyBAQCBQYXNzUmVmUHRyPFN0eWxlU2hlZXRDb250ZW50cz4g
Q2FjaGVkQ1NTU3R5bGVTaGVldDo6cmVzdG9yZVBhcnNlZFN0eWxlU2hlZXQoY29ucwogCiB2b2lk
IENhY2hlZENTU1N0eWxlU2hlZXQ6OnNhdmVQYXJzZWRTdHlsZVNoZWV0KFJlZjxTdHlsZVNoZWV0
Q29udGVudHM+JiYgc2hlZXQpCiB7Ci0gICAgQVNTRVJUKHNoZWV0LmdldCgpLmlzQ2FjaGVhYmxl
KCkpOworICAgIEFTU0VSVChzaGVldC0+aXNDYWNoZWFibGUoKSk7CiAKICAgICBpZiAobV9wYXJz
ZWRTdHlsZVNoZWV0Q2FjaGUpCiAgICAgICAgIG1fcGFyc2VkU3R5bGVTaGVldENhY2hlLT5yZW1v
dmVkRnJvbU1lbW9yeUNhY2hlKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
Y2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hl
L0NhY2hlZENTU1N0eWxlU2hlZXQuaAppbmRleCAzYzhhZTI4ZGQyN2FlZjgwYWUyZGVlYjRhMzM2
ZTc0ODU0ZTdlZjBjLi5jMzNhYTJlNDA4NTUzOGJjN2I0NTZmNDE2MzljMmNjMTg3OWY4NzRlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVl
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0
LmgKQEAgLTIsNyArMiw3IEBACiAgICAgQ29weXJpZ2h0IChDKSAxOTk4IExhcnMgS25vbGwgKGtu
b2xsQG1waS1oZC5tcGcuZGUpCiAgICAgQ29weXJpZ2h0IChDKSAyMDAxIERpcmsgTXVlbGxlciA8
bXVlbGxlckBrZGUub3JnPgogICAgIENvcHlyaWdodCAoQykgMjAwNiBTYW11ZWwgV2VpbmlnIChz
YW0ud2VpbmlnQGdtYWlsLmNvbSkKLSAgICBDb3B5cmlnaHQgKEMpIDIwMDQsIDIwMDUsIDIwMDYs
IDIwMDcsIDIwMDggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICAgIENvcHlyaWdo
dCAoQykgMjAwNC0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KIAogICAgIFRo
aXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQv
b3IKICAgICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5l
cmFsIFB1YmxpYwpAQCAtMTgsOSArMTgsNiBAQAogICAgIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5
OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCiAgICAgdGhlIEZy
ZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBG
bG9vciwKICAgICBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KLQotICAgIFRoaXMgY2xhc3Mg
cHJvdmlkZXMgYWxsIGZ1bmN0aW9uYWxpdHkgbmVlZGVkIGZvciBsb2FkaW5nIGltYWdlcywgc3R5
bGUgc2hlZXRzIGFuZCBodG1sCi0gICAgcGFnZXMgZnJvbSB0aGUgd2ViLiBJdCBoYXMgYSBtZW1v
cnkgY2FjaGUgZm9yIHRoZXNlIG9iamVjdHMuCiAqLwogCiAjcHJhZ21hIG9uY2UKQEAgLTI5LDQ0
ICsyNiw0NCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLSAgICBjbGFzcyBDYWNoZWRSZXNv
dXJjZUNsaWVudDsKLSAgICBjbGFzcyBTdHlsZVNoZWV0Q29udGVudHM7Ci0gICAgY2xhc3MgVGV4
dFJlc291cmNlRGVjb2RlcjsKLSAgICBzdHJ1Y3QgQ1NTUGFyc2VyQ29udGV4dDsKK2NsYXNzIFN0
eWxlU2hlZXRDb250ZW50czsKK2NsYXNzIFRleHRSZXNvdXJjZURlY29kZXI7CisKK3N0cnVjdCBD
U1NQYXJzZXJDb250ZXh0OwogCi0gICAgY2xhc3MgQ2FjaGVkQ1NTU3R5bGVTaGVldCBmaW5hbCA6
IHB1YmxpYyBDYWNoZWRSZXNvdXJjZSB7Ci0gICAgcHVibGljOgotICAgICAgICBDYWNoZWRDU1NT
dHlsZVNoZWV0KENhY2hlZFJlc291cmNlUmVxdWVzdCYmLCBTZXNzaW9uSUQpOwotICAgICAgICB2
aXJ0dWFsIH5DYWNoZWRDU1NTdHlsZVNoZWV0KCk7CitjbGFzcyBDYWNoZWRDU1NTdHlsZVNoZWV0
IGZpbmFsIDogcHVibGljIENhY2hlZFJlc291cmNlIHsKK3B1YmxpYzoKKyAgICBDYWNoZWRDU1NT
dHlsZVNoZWV0KENhY2hlZFJlc291cmNlUmVxdWVzdCYmLCBTZXNzaW9uSUQpOworICAgIHZpcnR1
YWwgfkNhY2hlZENTU1N0eWxlU2hlZXQoKTsKIAotICAgICAgICBlbnVtIGNsYXNzIE1JTUVUeXBl
Q2hlY2sgeyBTdHJpY3QsIExheCB9OwotICAgICAgICBjb25zdCBTdHJpbmcgc2hlZXRUZXh0KE1J
TUVUeXBlQ2hlY2sgPSBNSU1FVHlwZUNoZWNrOjpTdHJpY3QsIGJvb2wqIGhhc1ZhbGlkTUlNRVR5
cGUgPSBudWxscHRyKSBjb25zdDsKKyAgICBlbnVtIGNsYXNzIE1JTUVUeXBlQ2hlY2sgeyBTdHJp
Y3QsIExheCB9OworICAgIGNvbnN0IFN0cmluZyBzaGVldFRleHQoTUlNRVR5cGVDaGVjayA9IE1J
TUVUeXBlQ2hlY2s6OlN0cmljdCwgYm9vbCogaGFzVmFsaWRNSU1FVHlwZSA9IG51bGxwdHIpIGNv
bnN0OwogCi0gICAgICAgIFBhc3NSZWZQdHI8U3R5bGVTaGVldENvbnRlbnRzPiByZXN0b3JlUGFy
c2VkU3R5bGVTaGVldChjb25zdCBDU1NQYXJzZXJDb250ZXh0JiwgQ2FjaGVQb2xpY3kpOwotICAg
ICAgICB2b2lkIHNhdmVQYXJzZWRTdHlsZVNoZWV0KFJlZjxTdHlsZVNoZWV0Q29udGVudHM+JiYp
OworICAgIFJlZlB0cjxTdHlsZVNoZWV0Q29udGVudHM+IHJlc3RvcmVQYXJzZWRTdHlsZVNoZWV0
KGNvbnN0IENTU1BhcnNlckNvbnRleHQmLCBDYWNoZVBvbGljeSk7CisgICAgdm9pZCBzYXZlUGFy
c2VkU3R5bGVTaGVldChSZWY8U3R5bGVTaGVldENvbnRlbnRzPiYmKTsKIAotICAgIHByaXZhdGU6
Ci0gICAgICAgIGJvb2wgY2FuVXNlU2hlZXQoTUlNRVR5cGVDaGVjaywgYm9vbCogaGFzVmFsaWRN
SU1FVHlwZSkgY29uc3Q7Ci0gICAgICAgIGJvb2wgbWF5VHJ5UmVwbGFjZUVuY29kZWREYXRhKCkg
Y29uc3QgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQorcHJpdmF0ZToKKyAgICBib29sIGNhblVzZVNo
ZWV0KE1JTUVUeXBlQ2hlY2ssIGJvb2wqIGhhc1ZhbGlkTUlNRVR5cGUpIGNvbnN0OworICAgIGJv
b2wgbWF5VHJ5UmVwbGFjZUVuY29kZWREYXRhKCkgY29uc3QgZmluYWwgeyByZXR1cm4gdHJ1ZTsg
fQogCi0gICAgICAgIHZvaWQgZGlkQWRkQ2xpZW50KENhY2hlZFJlc291cmNlQ2xpZW50JikgZmlu
YWw7CisgICAgdm9pZCBkaWRBZGRDbGllbnQoQ2FjaGVkUmVzb3VyY2VDbGllbnQmKSBmaW5hbDsK
IAotICAgICAgICB2b2lkIHNldEVuY29kaW5nKGNvbnN0IFN0cmluZyYpIGZpbmFsOwotICAgICAg
ICBTdHJpbmcgZW5jb2RpbmcoKSBjb25zdCBmaW5hbDsKLSAgICAgICAgY29uc3QgVGV4dFJlc291
cmNlRGVjb2RlciogdGV4dFJlc291cmNlRGVjb2RlcigpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1f
ZGVjb2Rlci5nZXQoKTsgfQotICAgICAgICB2b2lkIGZpbmlzaExvYWRpbmcoU2hhcmVkQnVmZmVy
KikgZmluYWw7Ci0gICAgICAgIHZvaWQgZGVzdHJveURlY29kZWREYXRhKCkgZmluYWw7CisgICAg
dm9pZCBzZXRFbmNvZGluZyhjb25zdCBTdHJpbmcmKSBmaW5hbDsKKyAgICBTdHJpbmcgZW5jb2Rp
bmcoKSBjb25zdCBmaW5hbDsKKyAgICBjb25zdCBUZXh0UmVzb3VyY2VEZWNvZGVyKiB0ZXh0UmVz
b3VyY2VEZWNvZGVyKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9kZWNvZGVyLmdldCgpOyB9Cisg
ICAgdm9pZCBmaW5pc2hMb2FkaW5nKFNoYXJlZEJ1ZmZlciopIGZpbmFsOworICAgIHZvaWQgZGVz
dHJveURlY29kZWREYXRhKCkgZmluYWw7CiAKLSAgICAgICAgdm9pZCBzZXRCb2R5RGF0YUZyb20o
Y29uc3QgQ2FjaGVkUmVzb3VyY2UmKSBmaW5hbDsKKyAgICB2b2lkIHNldEJvZHlEYXRhRnJvbShj
b25zdCBDYWNoZWRSZXNvdXJjZSYpIGZpbmFsOwogCi0gICAgcHJvdGVjdGVkOgotICAgICAgICB2
b2lkIGNoZWNrTm90aWZ5KCkgZmluYWw7Citwcm90ZWN0ZWQ6CisgICAgdm9pZCBjaGVja05vdGlm
eSgpIGZpbmFsOwogCi0gICAgICAgIFJlZlB0cjxUZXh0UmVzb3VyY2VEZWNvZGVyPiBtX2RlY29k
ZXI7Ci0gICAgICAgIFN0cmluZyBtX2RlY29kZWRTaGVldFRleHQ7CisgICAgUmVmUHRyPFRleHRS
ZXNvdXJjZURlY29kZXI+IG1fZGVjb2RlcjsKKyAgICBTdHJpbmcgbV9kZWNvZGVkU2hlZXRUZXh0
OwogCi0gICAgICAgIFJlZlB0cjxTdHlsZVNoZWV0Q29udGVudHM+IG1fcGFyc2VkU3R5bGVTaGVl
dENhY2hlOwotICAgIH07CisgICAgUmVmUHRyPFN0eWxlU2hlZXRDb250ZW50cz4gbV9wYXJzZWRT
dHlsZVNoZWV0Q2FjaGU7Cit9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3QuY3Bw
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdC5jcHAK
aW5kZXggNDczYWNkNTlmMDM0YTExMmJlZTY0MzUxNWQ2Y2IyOWI1YjUwMTU0Yi4uNmQwYzIyMTE5
YWUzNGIxY2QwNGZhM2YxMGE1MzQ2ZWY2MWIwNjI1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdC5jcHAKQEAgLTU5LDE1ICs1
OSwxNyBAQCBTdHJpbmcgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0OjpzcGxpdEZyYWdtZW50SWRlbnRp
ZmllckZyb21SZXF1ZXN0VVJMKFJlc291cmNlUmVxdQogICAgIHJldHVybiBmcmFnbWVudElkZW50
aWZpZXI7CiB9CiAKLXZvaWQgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0OjpzZXRJbml0aWF0b3IoUGFz
c1JlZlB0cjxFbGVtZW50PiBlbGVtZW50KQordm9pZCBDYWNoZWRSZXNvdXJjZVJlcXVlc3Q6OnNl
dEluaXRpYXRvcihFbGVtZW50JiBlbGVtZW50KQogewotICAgIEFTU0VSVCghbV9pbml0aWF0b3JF
bGVtZW50ICYmIG1faW5pdGlhdG9yTmFtZS5pc0VtcHR5KCkpOwotICAgIG1faW5pdGlhdG9yRWxl
bWVudCA9IGVsZW1lbnQ7CisgICAgQVNTRVJUKCFtX2luaXRpYXRvckVsZW1lbnQpOworICAgIEFT
U0VSVChtX2luaXRpYXRvck5hbWUuaXNFbXB0eSgpKTsKKyAgICBtX2luaXRpYXRvckVsZW1lbnQg
PSAmZWxlbWVudDsKIH0KIAogdm9pZCBDYWNoZWRSZXNvdXJjZVJlcXVlc3Q6OnNldEluaXRpYXRv
cihjb25zdCBBdG9taWNTdHJpbmcmIG5hbWUpCiB7Ci0gICAgQVNTRVJUKCFtX2luaXRpYXRvckVs
ZW1lbnQgJiYgbV9pbml0aWF0b3JOYW1lLmlzRW1wdHkoKSk7CisgICAgQVNTRVJUKCFtX2luaXRp
YXRvckVsZW1lbnQpOworICAgIEFTU0VSVChtX2luaXRpYXRvck5hbWUuaXNFbXB0eSgpKTsKICAg
ICBtX2luaXRpYXRvck5hbWUgPSBuYW1lOwogfQogCkBAIC0yMDksMTAgKzIxMSwxMiBAQCB2b2lk
IENhY2hlZFJlc291cmNlUmVxdWVzdDo6cmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVySWZOZWVkZWQo
KQogfQogCiAjaWYgRU5BQkxFKENPTlRFTlRfRVhURU5TSU9OUykKKwogdm9pZCBDYWNoZWRSZXNv
dXJjZVJlcXVlc3Q6OmFwcGx5QmxvY2tlZFN0YXR1cyhjb25zdCBDb250ZW50RXh0ZW5zaW9uczo6
QmxvY2tlZFN0YXR1cyYgYmxvY2tlZFN0YXR1cykKIHsKICAgICBDb250ZW50RXh0ZW5zaW9uczo6
YXBwbHlCbG9ja2VkU3RhdHVzVG9SZXF1ZXN0KGJsb2NrZWRTdGF0dXMsIG1fcmVzb3VyY2VSZXF1
ZXN0KTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0Ojp1cGRhdGVS
ZWZlcnJlck9yaWdpbkFuZFVzZXJBZ2VudEhlYWRlcnMoRnJhbWVMb2FkZXImIGZyYW1lTG9hZGVy
LCBSZWZlcnJlclBvbGljeSBkZWZhdWx0UG9saWN5KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdC5oIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdC5oCmluZGV4IDBlOGE0YzNmYjkzYmU1
MTMyOTRkNGYwNDVlOTllZjlhZTcxMDc2MDAuLmVlZWQxYTFmZmY0NTZmMmZjMzEzNjJiY2U0YWM2
ZmZjODI3ZGZiNjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNo
ZWRSZXNvdXJjZVJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2Fj
aGVkUmVzb3VyY2VSZXF1ZXN0LmgKQEAgLTU4LDcgKzU4LDcgQEAgcHVibGljOgogICAgIGNvbnN0
IFJlc291cmNlTG9hZGVyT3B0aW9ucyYgb3B0aW9ucygpIGNvbnN0IHsgcmV0dXJuIG1fb3B0aW9u
czsgfQogICAgIHZvaWQgc2V0T3B0aW9ucyhjb25zdCBSZXNvdXJjZUxvYWRlck9wdGlvbnMmIG9w
dGlvbnMpIHsgbV9vcHRpb25zID0gb3B0aW9uczsgfQogICAgIGNvbnN0IHN0ZDo6b3B0aW9uYWw8
UmVzb3VyY2VMb2FkUHJpb3JpdHk+JiBwcmlvcml0eSgpIGNvbnN0IHsgcmV0dXJuIG1fcHJpb3Jp
dHk7IH0KLSAgICB2b2lkIHNldEluaXRpYXRvcihQYXNzUmVmUHRyPEVsZW1lbnQ+KTsKKyAgICB2
b2lkIHNldEluaXRpYXRvcihFbGVtZW50Jik7CiAgICAgdm9pZCBzZXRJbml0aWF0b3IoY29uc3Qg
QXRvbWljU3RyaW5nJiBuYW1lKTsKICAgICBjb25zdCBBdG9taWNTdHJpbmcmIGluaXRpYXRvck5h
bWUoKSBjb25zdDsKICAgICBib29sIGFsbG93c0NhY2hpbmcoKSBjb25zdCB7IHJldHVybiBtX29w
dGlvbnMuY2FjaGluZ1BvbGljeSA9PSBDYWNoaW5nUG9saWN5OjpBbGxvd0NhY2hpbmc7IH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jb2NvYS9EaXNrQ2FjaGVNb25pdG9yLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvci5oCmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4NWRhZWM3MGEyMDljNzJkZWM5NmIyZGFmY2I0Yzc3NThk
YmNlMjdkLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9jb2NvYS9EaXNrQ2FjaGVNb25pdG9yLmgKKysrIC9kZXYvbnVs
bApAQCAtMSw2MiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE0IEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICog
YXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKLSAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI3ByYWdtYSBvbmNlCi0KLSNpbmNsdWRl
ICJSZXNvdXJjZVJlcXVlc3QuaCIKLSNpbmNsdWRlICJTZXNzaW9uSUQuaCIKLSNpbmNsdWRlIDx3
dGYvUGFzc1JlZlB0ci5oPgotCi10eXBlZGVmIGNvbnN0IHN0cnVjdCBfQ0ZDYWNoZWRVUkxSZXNw
b25zZSogQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZjsKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1j
bGFzcyBTaGFyZWRCdWZmZXI7Ci0KLWNsYXNzIERpc2tDYWNoZU1vbml0b3IgewotcHVibGljOgot
ICAgIHN0YXRpYyB2b2lkIG1vbml0b3JGaWxlQmFja2luZ1N0b3JlQ3JlYXRpb24oY29uc3QgUmVz
b3VyY2VSZXF1ZXN0JiwgU2Vzc2lvbklELCBDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKTsKLSAgICBz
dGF0aWMgUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IHRyeUdldEZpbGVCYWNrZWRTaGFyZWRCdWZm
ZXJGcm9tQ0ZVUkxDYWNoZWRSZXNwb25zZShDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKTsKLSAgICB2
aXJ0dWFsIH5EaXNrQ2FjaGVNb25pdG9yKCkgeyB9Ci0KLXByb3RlY3RlZDoKLSAgICBEaXNrQ2Fj
aGVNb25pdG9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIFNlc3Npb25JRCwgQ0ZDYWNoZWRVUkxS
ZXNwb25zZVJlZik7Ci0KLSAgICB2aXJ0dWFsIHZvaWQgcmVzb3VyY2VCZWNhbWVGaWxlQmFja2Vk
KFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPik7Ci0KLSAgICBjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
IHJlc291cmNlUmVxdWVzdCgpIGNvbnN0IHsgcmV0dXJuIG1fcmVzb3VyY2VSZXF1ZXN0OyB9Ci0g
ICAgU2Vzc2lvbklEIHNlc3Npb25JRCgpIGNvbnN0IHsgcmV0dXJuIG1fc2Vzc2lvbklEOyB9Ci0K
LXByaXZhdGU6Ci0gICAgUmVzb3VyY2VSZXF1ZXN0IG1fcmVzb3VyY2VSZXF1ZXN0OwotICAgIFNl
c3Npb25JRCBtX3Nlc3Npb25JRDsKLX07Ci0KLSNpZiAoUExBVEZPUk0oSU9TKSAmJiBfX0lQSE9O
RV9PU19WRVJTSU9OX01JTl9SRVFVSVJFRCA8IDgwMDAwKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBf
X01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEIDwgMTA5MCkKLXZvaWQgRGlza0NhY2hlTW9u
aXRvcjo6bW9uaXRvckZpbGVCYWNraW5nU3RvcmVDcmVhdGlvbihjb25zdCBSZXNvdXJjZVJlcXVl
c3QmLCBTZXNzaW9uSUQsIENGQ2FjaGVkVVJMUmVzcG9uc2VSZWYpIHsgfQotUGFzc1JlZlB0cjxT
aGFyZWRCdWZmZXI+IERpc2tDYWNoZU1vbml0b3I6OnRyeUdldEZpbGVCYWNrZWRTaGFyZWRCdWZm
ZXJGcm9tQ0ZVUkxDYWNoZWRSZXNwb25zZShDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKSB7IHJldHVy
biBudWxscHRyOyB9Ci0jZW5kaWYKLQotfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvckNvY29hLmggYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRvckNvY29hLmgKaW5kZXgg
MTg2YzM0YWY5N2ZiZWViMzhmNjQzZDQxNzI3ZjE0OGY1MTZhYWE2ZC4uNjMwNGYxZjA2ZWQwMWFj
MGRjZmY4ZDNkYjNiNjUxNzdmMWY3OTIxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2NvY29hL0Rpc2tDYWNoZU1vbml0b3JDb2NvYS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9jb2NvYS9EaXNrQ2FjaGVNb25pdG9yQ29jb2EuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0g
KiBDb3B5cmlnaHQgKEMpIDIwMTQgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICog
Q29weXJpZ2h0IChDKSAyMDE0LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgog
ICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yNyw3ICsyNyw2IEBACiAKICNpbmNs
dWRlICJSZXNvdXJjZVJlcXVlc3QuaCIKICNpbmNsdWRlICJTZXNzaW9uSUQuaCIKLSNpbmNsdWRl
IDx3dGYvUGFzc1JlZlB0ci5oPgogCiB0eXBlZGVmIGNvbnN0IHN0cnVjdCBfQ0ZDYWNoZWRVUkxS
ZXNwb25zZSogQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZjsKIApAQCAtMzUsMjEgKzM0LDE5IEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgU2hhcmVkQnVmZmVyOwogCi1jbGFzcyBXRUJDT1JF
X0VYUE9SVCBEaXNrQ2FjaGVNb25pdG9yIHsKK2NsYXNzIERpc2tDYWNoZU1vbml0b3IgewogcHVi
bGljOgogICAgIHN0YXRpYyB2b2lkIG1vbml0b3JGaWxlQmFja2luZ1N0b3JlQ3JlYXRpb24oY29u
c3QgUmVzb3VyY2VSZXF1ZXN0JiwgU2Vzc2lvbklELCBDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKTsK
LSAgICBzdGF0aWMgUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IHRyeUdldEZpbGVCYWNrZWRTaGFy
ZWRCdWZmZXJGcm9tQ0ZVUkxDYWNoZWRSZXNwb25zZShDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKTsK
LSAgICB2aXJ0dWFsIH5EaXNrQ2FjaGVNb25pdG9yKCkgeyB9CisgICAgc3RhdGljIFJlZlB0cjxT
aGFyZWRCdWZmZXI+IHRyeUdldEZpbGVCYWNrZWRTaGFyZWRCdWZmZXJGcm9tQ0ZVUkxDYWNoZWRS
ZXNwb25zZShDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKTsKIAotcHJvdGVjdGVkOgotICAgIFdFQkNP
UkVfRVhQT1JUIERpc2tDYWNoZU1vbml0b3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgU2Vzc2lv
bklELCBDRkNhY2hlZFVSTFJlc3BvbnNlUmVmKTsKK3ByaXZhdGU6CisgICAgRGlza0NhY2hlTW9u
aXRvcihjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBTZXNzaW9uSUQsIENGQ2FjaGVkVVJMUmVzcG9u
c2VSZWYpOwogCi0gICAgdmlydHVhbCB2b2lkIHJlc291cmNlQmVjYW1lRmlsZUJhY2tlZChTaGFy
ZWRCdWZmZXImKTsKKyAgICB2b2lkIHJlc291cmNlQmVjYW1lRmlsZUJhY2tlZChTaGFyZWRCdWZm
ZXImKTsKIAogICAgIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVzb3VyY2VSZXF1ZXN0KCkgY29u
c3QgeyByZXR1cm4gbV9yZXNvdXJjZVJlcXVlc3Q7IH0KICAgICBTZXNzaW9uSUQgc2Vzc2lvbklE
KCkgY29uc3QgeyByZXR1cm4gbV9zZXNzaW9uSUQ7IH0KIAotcHJpdmF0ZToKICAgICBSZXNvdXJj
ZVJlcXVlc3QgbV9yZXNvdXJjZVJlcXVlc3Q7CiAgICAgU2Vzc2lvbklEIG1fc2Vzc2lvbklEOwog
fTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jb2NvYS9EaXNrQ2FjaGVNb25p
dG9yQ29jb2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY29jb2EvRGlza0NhY2hlTW9uaXRv
ckNvY29hLm1tCmluZGV4IDY4NTgwMzYwYjhlYmNkY2FjYThhM2U5Mzg0OThhMTk3NTUyZGMxNmEu
LjZhYzQ1YTE2ZmU5NmMzOGE3MjkyOGMxOWM1NWRjMWVlM2NjZWFhNGUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9jb2NvYS9EaXNrQ2FjaGVNb25pdG9yQ29jb2EubW0KKysrIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2NvY29hL0Rpc2tDYWNoZU1vbml0b3JDb2NvYS5tbQpAQCAt
MjksMTEgKzI5LDggQEAKICNpbXBvcnQgIkNGTmV0d29ya1NQSS5oIgogI2ltcG9ydCAiQ2FjaGVk
UmVzb3VyY2UuaCIKICNpbXBvcnQgIk1lbW9yeUNhY2hlLmgiCi0jaW1wb3J0ICJSZXNvdXJjZVJl
cXVlc3QuaCIKLSNpbXBvcnQgIlNlc3Npb25JRC5oIgogI2ltcG9ydCAiU2hhcmVkQnVmZmVyLmgi
CiAjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5oPgotI2ltcG9ydCA8d3RmL1Bhc3NSZWZQdHIuaD4K
ICNpbXBvcnQgPHd0Zi9SZWZQdHIuaD4KIAogI2lmIFVTRShXRUJfVEhSRUFEKQpAQCAtNDUsOSAr
NDIsOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAvLyBUaGUgbWF4aW11bSBudW1iZXIgb2Ygc2Vj
b25kcyB3ZSdsbCB0cnkgdG8gd2FpdCBmb3IgYSByZXNvdXJjZSB0byBiZSBkaXNrIGNhY2hlZCBi
ZWZvcmUgd2UgZm9yZ2V0IHRoZSByZXF1ZXN0Lgogc3RhdGljIGNvbnN0IGRvdWJsZSBkaXNrQ2Fj
aGVNb25pdG9yVGltZW91dCA9IDIwOwogCi1QYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gRGlza0Nh
Y2hlTW9uaXRvcjo6dHJ5R2V0RmlsZUJhY2tlZFNoYXJlZEJ1ZmZlckZyb21DRlVSTENhY2hlZFJl
c3BvbnNlKENGQ2FjaGVkVVJMUmVzcG9uc2VSZWYgY2FjaGVkUmVzcG9uc2UpCitSZWZQdHI8U2hh
cmVkQnVmZmVyPiBEaXNrQ2FjaGVNb25pdG9yOjp0cnlHZXRGaWxlQmFja2VkU2hhcmVkQnVmZmVy
RnJvbUNGVVJMQ2FjaGVkUmVzcG9uc2UoQ0ZDYWNoZWRVUkxSZXNwb25zZVJlZiBjYWNoZWRSZXNw
b25zZSkKIHsKLSAgICBDRkRhdGFSZWYgZGF0YSA9IF9DRkNhY2hlZFVSTFJlc3BvbnNlR2V0TWVt
TWFwcGVkRGF0YShjYWNoZWRSZXNwb25zZSk7CisgICAgYXV0byBkYXRhID0gX0NGQ2FjaGVkVVJM
UmVzcG9uc2VHZXRNZW1NYXBwZWREYXRhKGNhY2hlZFJlc3BvbnNlKTsKICAgICBpZiAoIWRhdGEp
CiAgICAgICAgIHJldHVybiBudWxscHRyOwogCkBAIC04Nyw4ICs4NCw3IEBAIERpc2tDYWNoZU1v
bml0b3I6OkRpc2tDYWNoZU1vbml0b3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBT
ZXNzaW9uSUQgc2VzCiAgICAgZGlzcGF0Y2hfYWZ0ZXIoZGlzcGF0Y2hfdGltZShESVNQQVRDSF9U
SU1FX05PVywgTlNFQ19QRVJfU0VDICogZGlza0NhY2hlTW9uaXRvclRpbWVvdXQpLCBkaXNwYXRj
aF9nZXRfbWFpbl9xdWV1ZSgpLCBjYW5jZWxNb25pdG9yQmxvY2tUb1J1bik7CiAKICAgICAvLyBT
ZXQgdXAgdGhlIGRpc2sgY2FjaGluZyBjYWxsYmFjayB0byBjcmVhdGUgdGhlIFNoYXJlYWJsZVJl
c291cmNlIGFuZCBzZW5kIGl0IHRvIHRoZSBXZWJQcm9jZXNzLgotICAgIENGQ2FjaGVkVVJMUmVz
cG9uc2VDYWxsQmFja0Jsb2NrIGJsb2NrID0gXihDRkNhY2hlZFVSTFJlc3BvbnNlUmVmIGNhY2hl
ZFJlc3BvbnNlKQotICAgIHsKKyAgICBhdXRvIGJsb2NrID0gXihDRkNhY2hlZFVSTFJlc3BvbnNl
UmVmIGNhY2hlZFJlc3BvbnNlKSB7CiAgICAgICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CiAg
ICAgICAgIC8vIElmIHRoZSBtb25pdG9yIGlzbid0IHRoZXJlIHRoZW4gaXQgdGltZWQgb3V0IGJl
Zm9yZSB0aGlzIHJlc291cmNlIHdhcyBjYWNoZWQgdG8gZGlzay4KICAgICAgICAgaWYgKCFyYXdN
b25pdG9yKQpAQCAtOTcsNyArOTMsNyBAQCBEaXNrQ2FjaGVNb25pdG9yOjpEaXNrQ2FjaGVNb25p
dG9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgU2Vzc2lvbklEIHNlcwogICAgICAg
ICBhdXRvIG1vbml0b3IgPSBzdGQ6OnVuaXF1ZV9wdHI8RGlza0NhY2hlTW9uaXRvcj4ocmF3TW9u
aXRvcik7IC8vIEJhbGFuY2VkIGJ5ICJuZXcgRGlza0NhY2hlTW9uaXRvciIgaW4gbW9uaXRvckZp
bGVCYWNraW5nU3RvcmVDcmVhdGlvbi4KICAgICAgICAgcmF3TW9uaXRvciA9IG51bGxwdHI7CiAK
LSAgICAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZmlsZUJhY2tlZEJ1ZmZlciA9IERpc2tDYWNo
ZU1vbml0b3I6OnRyeUdldEZpbGVCYWNrZWRTaGFyZWRCdWZmZXJGcm9tQ0ZVUkxDYWNoZWRSZXNw
b25zZShjYWNoZWRSZXNwb25zZSk7CisgICAgICAgIGF1dG8gZmlsZUJhY2tlZEJ1ZmZlciA9IERp
c2tDYWNoZU1vbml0b3I6OnRyeUdldEZpbGVCYWNrZWRTaGFyZWRCdWZmZXJGcm9tQ0ZVUkxDYWNo
ZWRSZXNwb25zZShjYWNoZWRSZXNwb25zZSk7CiAgICAgICAgIGlmICghZmlsZUJhY2tlZEJ1ZmZl
cikKICAgICAgICAgICAgIHJldHVybjsKIApAQCAtMTA1LDggKzEwMSw3IEBAIERpc2tDYWNoZU1v
bml0b3I6OkRpc2tDYWNoZU1vbml0b3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBT
ZXNzaW9uSUQgc2VzCiAgICAgfTsKIAogI2lmIFVTRShXRUJfVEhSRUFEKQotICAgIENGQ2FjaGVk
VVJMUmVzcG9uc2VDYWxsQmFja0Jsb2NrIGJsb2NrVG9SdW4gPSBeKENGQ2FjaGVkVVJMUmVzcG9u
c2VSZWYgcmVzcG9uc2UpCi0gICAgeworICAgIGF1dG8gYmxvY2tUb1J1biA9IF4oQ0ZDYWNoZWRV
UkxSZXNwb25zZVJlZiByZXNwb25zZSkgewogICAgICAgICBDRlJldGFpbihyZXNwb25zZSk7CiAg
ICAgICAgIFdlYlRocmVhZFJ1biheewogICAgICAgICAgICAgYmxvY2socmVzcG9uc2UpOwpAQCAt
MTE0LDE0ICsxMDksMTQgQEAgRGlza0NhY2hlTW9uaXRvcjo6RGlza0NhY2hlTW9uaXRvcihjb25z
dCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFNlc3Npb25JRCBzZXMKICAgICAgICAgfSk7CiAg
ICAgfTsKICNlbHNlCi0gICAgQ0ZDYWNoZWRVUkxSZXNwb25zZUNhbGxCYWNrQmxvY2sgYmxvY2tU
b1J1biA9IGJsb2NrOworICAgIGF1dG8gYmxvY2tUb1J1biA9IGJsb2NrOwogI2VuZGlmCiAgICAg
X0NGQ2FjaGVkVVJMUmVzcG9uc2VTZXRCZWNhbWVGaWxlQmFja2VkQ2FsbEJhY2tCbG9jayhjYWNo
ZWRSZXNwb25zZSwgYmxvY2tUb1J1biwgZGlzcGF0Y2hfZ2V0X21haW5fcXVldWUoKSk7CiB9CiAK
IHZvaWQgRGlza0NhY2hlTW9uaXRvcjo6cmVzb3VyY2VCZWNhbWVGaWxlQmFja2VkKFNoYXJlZEJ1
ZmZlciYgZmlsZUJhY2tlZEJ1ZmZlcikKIHsKLSAgICBDYWNoZWRSZXNvdXJjZSogcmVzb3VyY2Ug
PSBNZW1vcnlDYWNoZTo6c2luZ2xldG9uKCkucmVzb3VyY2VGb3JSZXF1ZXN0KG1fcmVzb3VyY2VS
ZXF1ZXN0LCBtX3Nlc3Npb25JRCk7CisgICAgYXV0byogcmVzb3VyY2UgPSBNZW1vcnlDYWNoZTo6
c2luZ2xldG9uKCkucmVzb3VyY2VGb3JSZXF1ZXN0KG1fcmVzb3VyY2VSZXF1ZXN0LCBtX3Nlc3Np
b25JRCk7CiAgICAgaWYgKCFyZXNvdXJjZSkKICAgICAgICAgcmV0dXJuOwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2UuY3BwIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2ljb24vSWNvbkRhdGFiYXNlLmNwcAppbmRleCBlZTQzN2U4NjI4ZWJmNGU4
NjMyN2NjNzcwMzBmNWY2OTRlMzBiYjJkLi5kY2NlMGE1YzNjZDgxNmNjODQ3YmM3YWZlMmJhMjE2
N2FjZDA4ODBjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0
YWJhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL0ljb25EYXRhYmFzZS5j
cHAKQEAgLTUzMyw3ICs1MzMsNyBAQCB2b2lkIEljb25EYXRhYmFzZTo6cGVyZm9ybVJlbGVhc2VJ
Y29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIHBhZ2VVUkxPcmlnaW5hbCwgaQogICAgIGRlbGV0
ZSBwYWdlUmVjb3JkOwogfQogCi12b2lkIEljb25EYXRhYmFzZTo6c2V0SWNvbkRhdGFGb3JJY29u
VVJMKFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBkYXRhT3JpZ2luYWwsIGNvbnN0IFN0cmluZyYg
aWNvblVSTE9yaWdpbmFsKQordm9pZCBJY29uRGF0YWJhc2U6OnNldEljb25EYXRhRm9ySWNvblVS
TChTaGFyZWRCdWZmZXIqIGRhdGFPcmlnaW5hbCwgY29uc3QgU3RyaW5nJiBpY29uVVJMT3JpZ2lu
YWwpCiB7ICAgIAogICAgIEFTU0VSVF9OT1RfU1lOQ19USFJFQUQoKTsKICAgICAKQEAgLTU0Miw3
ICs1NDIsNyBAQCB2b2lkIEljb25EYXRhYmFzZTo6c2V0SWNvbkRhdGFGb3JJY29uVVJMKFBhc3NS
ZWZQdHI8U2hhcmVkQnVmZmVyPiBkYXRhT3JpZ2luYWwsCiAgICAgaWYgKCFpc09wZW4oKSB8fCBp
Y29uVVJMT3JpZ2luYWwuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm47CiAgICAgCi0gICAgUmVm
UHRyPFNoYXJlZEJ1ZmZlcj4gZGF0YSA9IGRhdGFPcmlnaW5hbCA/IGRhdGFPcmlnaW5hbC0+Y29w
eSgpIDogUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+KG51bGxwdHIpOworICAgIGF1dG8gZGF0YSA9
IGRhdGFPcmlnaW5hbCA/IFJlZlB0cjxTaGFyZWRCdWZmZXI+IHsgZGF0YU9yaWdpbmFsLT5jb3B5
KCkgfSA6IG51bGxwdHI7CiAgICAgU3RyaW5nIGljb25VUkwgPSBpY29uVVJMT3JpZ2luYWwuaXNv
bGF0ZWRDb3B5KCk7CiAgICAgCiAgICAgVmVjdG9yPFN0cmluZz4gcGFnZVVSTHM7CkBAIC04ODUs
MTggKzg4NSwxNyBAQCBTdHJpbmcgSWNvbkRhdGFiYXNlOjpkZWZhdWx0RGF0YWJhc2VGaWxlbmFt
ZSgpCiB9CiAKIC8vIFVubGlrZSBnZXRPckNyZWF0ZVBhZ2VVUkxSZWNvcmQoKSwgZ2V0T3JDcmVh
dGVJY29uUmVjb3JkKCkgZG9lcyBub3QgbWFyayB0aGUgaWNvbiBhcyAiaW50ZXJlc3RlZCBpbiBp
bXBvcnQiCi1QYXNzUmVmUHRyPEljb25SZWNvcmQ+IEljb25EYXRhYmFzZTo6Z2V0T3JDcmVhdGVJ
Y29uUmVjb3JkKGNvbnN0IFN0cmluZyYgaWNvblVSTCkKK1JlZjxJY29uUmVjb3JkPiBJY29uRGF0
YWJhc2U6OmdldE9yQ3JlYXRlSWNvblJlY29yZChjb25zdCBTdHJpbmcmIGljb25VUkwpCiB7CiAg
ICAgLy8gQ2xpZW50cyBvZiBnZXRPckNyZWF0ZUljb25SZWNvcmQoKSBhcmUgcmVxdWlyZWQgdG8g
YWNxdWlyZSB0aGUgbV91cmxBbmRJY29uTG9jayBiZWZvcmUgY2FsbGluZyB0aGlzIG1ldGhvZAog
ICAgIEFTU0VSVCghbV91cmxBbmRJY29uTG9jay50cnlMb2NrKCkpOwogCi0gICAgaWYgKEljb25S
ZWNvcmQqIGljb24gPSBtX2ljb25VUkxUb1JlY29yZE1hcC5nZXQoaWNvblVSTCkpCi0gICAgICAg
IHJldHVybiBpY29uOworICAgIGlmIChhdXRvKiBpY29uID0gbV9pY29uVVJMVG9SZWNvcmRNYXAu
Z2V0KGljb25VUkwpKQorICAgICAgICByZXR1cm4gKmljb247CiAKICAgICBhdXRvIG5ld0ljb24g
PSBJY29uUmVjb3JkOjpjcmVhdGUoaWNvblVSTCk7CiAgICAgbV9pY29uVVJMVG9SZWNvcmRNYXAu
c2V0KGljb25VUkwsIG5ld0ljb24ucHRyKCkpOwotCi0gICAgcmV0dXJuIFdURk1vdmUobmV3SWNv
bik7CisgICAgcmV0dXJuIG5ld0ljb247CiB9CiAKIC8vIFRoaXMgbWV0aG9kIHJldHJpZXZlcyB0
aGUgZXhpc3RpbmcgUGFnZVVSTFJlY29yZCwgb3IgY3JlYXRlcyBhIG5ldyBvbmUgYW5kIG1hcmtz
IGl0IGFzICJpbnRlcmVzdGVkIGluIHRoZSBpbXBvcnQiIGZvciBsYXRlciBub3RpZmljYXRpb24K
QEAgLTE5MTcsNyArMTkxNiw3IEBAIGludDY0X3QgSWNvbkRhdGFiYXNlOjphZGRJY29uVVJMVG9T
UUxEYXRhYmFzZShjb25zdCBTdHJpbmcmIGljb25VUkwpCiAgICAgcmV0dXJuIGljb25JRDsKIH0K
IAotUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IEljb25EYXRhYmFzZTo6Z2V0SW1hZ2VEYXRhRm9y
SWNvblVSTEZyb21TUUxEYXRhYmFzZShjb25zdCBTdHJpbmcmIGljb25VUkwpCitSZWZQdHI8U2hh
cmVkQnVmZmVyPiBJY29uRGF0YWJhc2U6OmdldEltYWdlRGF0YUZvckljb25VUkxGcm9tU1FMRGF0
YWJhc2UoY29uc3QgU3RyaW5nJiBpY29uVVJMKQogewogICAgIEFTU0VSVF9JQ09OX1NZTkNfVEhS
RUFEKCk7CiAgICAgCkBAIC0xOTM2LDcgKzE5MzUsNyBAQCBQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZl
cj4gSWNvbkRhdGFiYXNlOjpnZXRJbWFnZURhdGFGb3JJY29uVVJMRnJvbVNRTERhdGFiYXNlKGNv
bgogCiAgICAgbV9nZXRJbWFnZURhdGFGb3JJY29uVVJMU3RhdGVtZW50LT5yZXNldCgpOwogICAg
IAotICAgIHJldHVybiBXVEZNb3ZlKGltYWdlRGF0YSk7CisgICAgcmV0dXJuIGltYWdlRGF0YTsK
IH0KIAogdm9pZCBJY29uRGF0YWJhc2U6OnJlbW92ZUljb25Gcm9tU1FMRGF0YWJhc2UoY29uc3Qg
U3RyaW5nJiBpY29uVVJMKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24v
SWNvbkRhdGFiYXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2Uu
aAppbmRleCBkNWQ0NTJjZWZkMzdjMGFjZTgxMmFkYTM1MDM0NzBhZTYyOGQ3YzllLi4wNjFhZjRh
MTI1NTc3MWRlMTFhMzJmNTY4M2MwZWZkYTU5MjkzYjlkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvaWNvbi9JY29uRGF0YWJhc2UuaApAQCAtNDUsNiArNDUsNyBAQCBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAvLyBEdW1teSB2ZXJzaW9uIG9mIEljb25EYXRhYmFzZSB0aGF0IGRvZXMgbm90aGluZy4K
IGNsYXNzIEljb25EYXRhYmFzZSBmaW5hbCA6IHB1YmxpYyBJY29uRGF0YWJhc2VCYXNlIHsKICAg
ICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKKwogcHVibGljOgogICAgIHN0YXRpYyB2b2lkIGRl
bGF5RGF0YWJhc2VDbGVhbnVwKCkgeyB9CiAgICAgc3RhdGljIHZvaWQgYWxsb3dEYXRhYmFzZUNs
ZWFudXAoKSB7IH0KQEAgLTcwLDMyICs3MSwzMiBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBP
UlQgSWNvbkRhdGFiYXNlKCk7CiAgICAgfkljb25EYXRhYmFzZSgpOwogCi0gICAgV0VCQ09SRV9F
WFBPUlQgdm9pZCBzZXRDbGllbnQoSWNvbkRhdGFiYXNlQ2xpZW50Kikgb3ZlcnJpZGU7CisgICAg
V0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRDbGllbnQoSWNvbkRhdGFiYXNlQ2xpZW50KikgZmluYWw7
CiAKLSAgICBXRUJDT1JFX0VYUE9SVCBib29sIG9wZW4oY29uc3QgU3RyaW5nJiBkaXJlY3Rvcnks
IGNvbnN0IFN0cmluZyYgZmlsZW5hbWUpIG92ZXJyaWRlOwotICAgIFdFQkNPUkVfRVhQT1JUIHZv
aWQgY2xvc2UoKSBvdmVycmlkZTsKKyAgICBXRUJDT1JFX0VYUE9SVCBib29sIG9wZW4oY29uc3Qg
U3RyaW5nJiBkaXJlY3RvcnksIGNvbnN0IFN0cmluZyYgZmlsZW5hbWUpIGZpbmFsOworICAgIFdF
QkNPUkVfRVhQT1JUIHZvaWQgY2xvc2UoKSBmaW5hbDsKICAgICAgICAgICAgIAotICAgIFdFQkNP
UkVfRVhQT1JUIHZvaWQgcmVtb3ZlQWxsSWNvbnMoKSBvdmVycmlkZTsKKyAgICBXRUJDT1JFX0VY
UE9SVCB2b2lkIHJlbW92ZUFsbEljb25zKCkgZmluYWw7CiAKICAgICB2b2lkIHJlYWRJY29uRm9y
UGFnZVVSTEZyb21EaXNrKGNvbnN0IFN0cmluZyYpOwogCi0gICAgV0VCQ09SRV9FWFBPUlQgSW1h
Z2UqIGRlZmF1bHRJY29uKGNvbnN0IEludFNpemUmKSBvdmVycmlkZTsKKyAgICBXRUJDT1JFX0VY
UE9SVCBJbWFnZSogZGVmYXVsdEljb24oY29uc3QgSW50U2l6ZSYpIGZpbmFsOwogCi0gICAgV0VC
Q09SRV9FWFBPUlQgdm9pZCByZXRhaW5JY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmKSBvdmVy
cmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHJlbGVhc2VJY29uRm9yUGFnZVVSTChjb25z
dCBTdHJpbmcmKSBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldEljb25EYXRh
Rm9ySWNvblVSTChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZGF0YSwgY29uc3QgU3RyaW5nJikg
b3ZlcnJpZGU7Ci0gICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRJY29uVVJMRm9yUGFnZVVSTChj
b25zdCBTdHJpbmcmIGljb25VUkwsIGNvbnN0IFN0cmluZyYgcGFnZVVSTCkgb3ZlcnJpZGU7Cisg
ICAgV0VCQ09SRV9FWFBPUlQgdm9pZCByZXRhaW5JY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcm
KSBmaW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHJlbGVhc2VJY29uRm9yUGFnZVVSTChj
b25zdCBTdHJpbmcmKSBmaW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldEljb25EYXRh
Rm9ySWNvblVSTChTaGFyZWRCdWZmZXIqIGRhdGEsIGNvbnN0IFN0cmluZyYgaWNvblVSTCkgZmlu
YWw7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRJY29uVVJMRm9yUGFnZVVSTChjb25zdCBT
dHJpbmcmIGljb25VUkwsIGNvbnN0IFN0cmluZyYgcGFnZVVSTCkgZmluYWw7CiAKLSAgICBXRUJD
T1JFX0VYUE9SVCBJbWFnZSogc3luY2hyb25vdXNJY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcm
LCBjb25zdCBJbnRTaXplJikgb3ZlcnJpZGU7Ci0gICAgTmF0aXZlSW1hZ2VQdHIgc3luY2hyb25v
dXNOYXRpdmVJY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIHBhZ2VVUkxPcmlnaW5hbCwgY29u
c3QgSW50U2l6ZSYpIG92ZXJyaWRlOwotICAgIFdFQkNPUkVfRVhQT1JUIFN0cmluZyBzeW5jaHJv
bm91c0ljb25VUkxGb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAgIGJvb2wg
c3luY2hyb25vdXNJY29uRGF0YUtub3duRm9ySWNvblVSTChjb25zdCBTdHJpbmcmKSBvdmVycmlk
ZTsKLSAgICBXRUJDT1JFX0VYUE9SVCBJY29uTG9hZERlY2lzaW9uIHN5bmNocm9ub3VzTG9hZERl
Y2lzaW9uRm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBEb2N1bWVudExvYWRlciopIG92ZXJyaWRl
OworICAgIFdFQkNPUkVfRVhQT1JUIEltYWdlKiBzeW5jaHJvbm91c0ljb25Gb3JQYWdlVVJMKGNv
bnN0IFN0cmluZyYsIGNvbnN0IEludFNpemUmKSBmaW5hbDsKKyAgICBOYXRpdmVJbWFnZVB0ciBz
eW5jaHJvbm91c05hdGl2ZUljb25Gb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYgcGFnZVVSTE9yaWdp
bmFsLCBjb25zdCBJbnRTaXplJikgZmluYWw7CisgICAgV0VCQ09SRV9FWFBPUlQgU3RyaW5nIHN5
bmNocm9ub3VzSWNvblVSTEZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikgZmluYWw7CisgICAgYm9v
bCBzeW5jaHJvbm91c0ljb25EYXRhS25vd25Gb3JJY29uVVJMKGNvbnN0IFN0cmluZyYpIGZpbmFs
OworICAgIFdFQkNPUkVfRVhQT1JUIEljb25Mb2FkRGVjaXNpb24gc3luY2hyb25vdXNMb2FkRGVj
aXNpb25Gb3JJY29uVVJMKGNvbnN0IFN0cmluZyYsIERvY3VtZW50TG9hZGVyKikgZmluYWw7CiAK
LSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldEVuYWJsZWQoYm9vbCkgb3ZlcnJpZGU7Ci0gICAg
V0VCQ09SRV9FWFBPUlQgYm9vbCBpc0VuYWJsZWQoKSBjb25zdCBvdmVycmlkZTsKKyAgICBXRUJD
T1JFX0VYUE9SVCB2b2lkIHNldEVuYWJsZWQoYm9vbCk7CisgICAgV0VCQ09SRV9FWFBPUlQgYm9v
bCBpc0VuYWJsZWQoKSBjb25zdCBmaW5hbDsKIAotICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0
UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZChib29sIGZsYWcpIG92ZXJyaWRlOworICAgIFdFQkNPUkVf
RVhQT1JUIHZvaWQgc2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZChib29sIGZsYWcpIGZpbmFsOwog
ICAgIGJvb2wgaXNQcml2YXRlQnJvd3NpbmdFbmFibGVkKCkgY29uc3Q7CiAKICAgICBXRUJDT1JF
X0VYUE9SVCBzdGF0aWMgdm9pZCBkZWxheURhdGFiYXNlQ2xlYW51cCgpOwpAQCAtMTAzLDEwICsx
MDQsMTAgQEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyB2b2lkIGNoZWNrSW50
ZWdyaXR5QmVmb3JlT3BlbmluZygpOwogCiAgICAgLy8gU3VwcG9ydCBmb3IgV2ViQ29yZVN0YXRp
c3RpY3MgaW4gV2ViS2l0Ci0gICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90IHBhZ2VVUkxNYXBwaW5n
Q291bnQoKSBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCBzaXplX3QgcmV0YWluZWRQYWdl
VVJMQ291bnQoKSBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCBzaXplX3QgaWNvblJlY29y
ZENvdW50KCkgb3ZlcnJpZGU7Ci0gICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90IGljb25SZWNvcmRD
b3VudFdpdGhEYXRhKCkgb3ZlcnJpZGU7CisgICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90IHBhZ2VV
UkxNYXBwaW5nQ291bnQoKSBmaW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCBzaXplX3QgcmV0YWlu
ZWRQYWdlVVJMQ291bnQoKSBmaW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCBzaXplX3QgaWNvblJl
Y29yZENvdW50KCkgZmluYWw7CisgICAgV0VCQ09SRV9FWFBPUlQgc2l6ZV90IGljb25SZWNvcmRD
b3VudFdpdGhEYXRhKCkgZmluYWw7CiAKIHByaXZhdGU6CiAgICAgZnJpZW5kIEljb25EYXRhYmFz
ZUJhc2UmIGljb25EYXRhYmFzZSgpOwpAQCAtMTMwLDEyICsxMzEsMTIgQEAgcHJpdmF0ZToKIAog
Ly8gKioqIEFueSBUaHJlYWQgKioqCiBwdWJsaWM6Ci0gICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBp
c09wZW4oKSBjb25zdCBvdmVycmlkZTsKLSAgICBXRUJDT1JFX0VYUE9SVCBTdHJpbmcgZGF0YWJh
c2VQYXRoKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBpc09wZW4o
KSBjb25zdCBmaW5hbDsKKyAgICBXRUJDT1JFX0VYUE9SVCBTdHJpbmcgZGF0YWJhc2VQYXRoKCkg
Y29uc3QgZmluYWw7CiAgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFN0cmluZyBkZWZhdWx0RGF0
YWJhc2VGaWxlbmFtZSgpOwogCiBwcml2YXRlOgotICAgIFBhc3NSZWZQdHI8SWNvblJlY29yZD4g
Z2V0T3JDcmVhdGVJY29uUmVjb3JkKGNvbnN0IFN0cmluZyYgaWNvblVSTCk7CisgICAgUmVmPElj
b25SZWNvcmQ+IGdldE9yQ3JlYXRlSWNvblJlY29yZChjb25zdCBTdHJpbmcmIGljb25VUkwpOwog
ICAgIFBhZ2VVUkxSZWNvcmQqIGdldE9yQ3JlYXRlUGFnZVVSTFJlY29yZChjb25zdCBTdHJpbmcm
IHBhZ2VVUkwpOwogICAgIAogICAgIGJvb2wgbV9pc0VuYWJsZWQ7CkBAIC0xNzgsNyArMTc5LDcg
QEAgcHJpdmF0ZToKIAogLy8gKioqIFN5bmMgVGhyZWFkIE9ubHkgKioqCiBwdWJsaWM6Ci0gICAg
V0VCQ09SRV9FWFBPUlQgYm9vbCBzaG91bGRTdG9wVGhyZWFkQWN0aXZpdHkoKSBjb25zdCBvdmVy
cmlkZTsKKyAgICBXRUJDT1JFX0VYUE9SVCBib29sIHNob3VsZFN0b3BUaHJlYWRBY3Rpdml0eSgp
IGNvbnN0IGZpbmFsOwogCiBwcml2YXRlOiAgICAKICAgICBzdGF0aWMgdm9pZCBpY29uRGF0YWJh
c2VTeW5jVGhyZWFkU3RhcnQodm9pZCAqKTsKQEAgLTIxMyw3ICsyMTQsNyBAQCBwcml2YXRlOgog
ICAgIHZvaWQgcmVtb3ZlUGFnZVVSTEZyb21TUUxEYXRhYmFzZShjb25zdCBTdHJpbmcmIHBhZ2VV
UkwpOwogICAgIGludDY0X3QgZ2V0SWNvbklERm9ySWNvblVSTEZyb21TUUxEYXRhYmFzZShjb25z
dCBTdHJpbmcmIGljb25VUkwpOwogICAgIGludDY0X3QgYWRkSWNvblVSTFRvU1FMRGF0YWJhc2Uo
Y29uc3QgU3RyaW5nJik7Ci0gICAgUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGdldEltYWdlRGF0
YUZvckljb25VUkxGcm9tU1FMRGF0YWJhc2UoY29uc3QgU3RyaW5nJiBpY29uVVJMKTsKKyAgICBS
ZWZQdHI8U2hhcmVkQnVmZmVyPiBnZXRJbWFnZURhdGFGb3JJY29uVVJMRnJvbVNRTERhdGFiYXNl
KGNvbnN0IFN0cmluZyYgaWNvblVSTCk7CiAgICAgdm9pZCByZW1vdmVJY29uRnJvbVNRTERhdGFi
YXNlKGNvbnN0IFN0cmluZyYgaWNvblVSTCk7CiAgICAgdm9pZCB3cml0ZUljb25TbmFwc2hvdFRv
U1FMRGF0YWJhc2UoY29uc3QgSWNvblNuYXBzaG90Jik7ICAgIAogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2VCYXNlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvaWNvbi9JY29uRGF0YWJhc2VCYXNlLmgKaW5kZXggOTg2ZDRkOTZmNTcyN2Y0NmEx
ZjJlODc1MDM5ZTZjODYwMzJmNjM4MS4uZDQwNTFiOTM2YzcxMGZjMjljNzFkNTJlNDcyN2JhODVi
MGFlYjk5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkRhdGFi
YXNlQmFzZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL0ljb25EYXRhYmFzZUJh
c2UuaApAQCAtMjgsNyArMjgsNiBAQAogI2luY2x1ZGUgIk5hdGl2ZUltYWdlLmgiCiAjaW5jbHVk
ZSA8d3RmL0ZvcndhcmQuaD4KICNpbmNsdWRlIDx3dGYvTm9uY29weWFibGUuaD4KLSNpbmNsdWRl
IDx3dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKQEAgLTM5LDExICszOCw3IEBAIGNsYXNzIEltYWdlOwogY2xhc3MgSW50
U2l6ZTsKIGNsYXNzIFNoYXJlZEJ1ZmZlcjsKIAotZW51bSBJY29uTG9hZERlY2lzaW9uIHsKLSAg
ICBJY29uTG9hZFllcywKLSAgICBJY29uTG9hZE5vLAotICAgIEljb25Mb2FkVW5rbm93bgotfTsK
K2VudW0gSWNvbkxvYWREZWNpc2lvbiB7IEljb25Mb2FkWWVzLCBJY29uTG9hZE5vLCBJY29uTG9h
ZFVua25vd24gfTsKIAogY2xhc3MgQ2FsbGJhY2tCYXNlIDogcHVibGljIFJlZkNvdW50ZWQ8Q2Fs
bGJhY2tCYXNlPiB7CiBwdWJsaWM6CkBAIC0xMzQsNyArMTI5LDcgQEAgcHVibGljOgogICAgICAg
ICBtX2NhbGxiYWNrKHJlc3VsdCwgY29udGV4dCgpKTsKICAgICAgICAgbV9jYWxsYmFjayA9IG51
bGxwdHI7CiAgICAgfQotICAgIAorCiAgICAgdm9pZCBpbnZhbGlkYXRlKCkKICAgICB7CiAgICAg
ICAgIG1fY2FsbGJhY2sgPSBudWxscHRyOwpAQCAtMTUxLDI2ICsxNDYsMjIgQEAgcHJpdmF0ZToK
ICAgICBDYWxsYmFja0Z1bmN0aW9uIG1fY2FsbGJhY2s7CiB9OwogCi10eXBlZGVmIEVudW1DYWxs
YmFjazxJY29uTG9hZERlY2lzaW9uPiBJY29uTG9hZERlY2lzaW9uQ2FsbGJhY2s7Ci10eXBlZGVm
IE9iamVjdENhbGxiYWNrPFNoYXJlZEJ1ZmZlcio+IEljb25EYXRhQ2FsbGJhY2s7Cit1c2luZyBJ
Y29uTG9hZERlY2lzaW9uQ2FsbGJhY2sgPSBFbnVtQ2FsbGJhY2s8SWNvbkxvYWREZWNpc2lvbj47
Cit1c2luZyBJY29uRGF0YUNhbGxiYWNrID0gT2JqZWN0Q2FsbGJhY2s8U2hhcmVkQnVmZmVyKj47
CiAKIGNsYXNzIFdFQkNPUkVfRVhQT1JUIEljb25EYXRhYmFzZUJhc2UgewogICAgIFdURl9NQUtF
X05PTkNPUFlBQkxFKEljb25EYXRhYmFzZUJhc2UpOwogCi1wcm90ZWN0ZWQ6Ci0gICAgSWNvbkRh
dGFiYXNlQmFzZSgpIHsgfQotCiBwdWJsaWM6CiAgICAgdmlydHVhbCB+SWNvbkRhdGFiYXNlQmFz
ZSgpIHsgfQogCi0gICAgLy8gVXNlZCBpbnRlcm5hbGx5IGJ5IFdlYkNvcmUKICAgICB2aXJ0dWFs
IGJvb2wgaXNFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KLSAgICAgICAgCisKICAg
ICB2aXJ0dWFsIHZvaWQgcmV0YWluSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikgeyB9CiAg
ICAgdmlydHVhbCB2b2lkIHJlbGVhc2VJY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmKSB7IH0K
IAotICAgIHZpcnR1YWwgdm9pZCBzZXRJY29uVVJMRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmLCBj
b25zdCBTdHJpbmcmKSB7IH0KLSAgICB2aXJ0dWFsIHZvaWQgc2V0SWNvbkRhdGFGb3JJY29uVVJM
KFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiwgY29uc3QgU3RyaW5nJikgeyB9CisgICAgdmlydHVh
bCB2b2lkIHNldEljb25VUkxGb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYgLyppY29uVVJMKi8sIGNv
bnN0IFN0cmluZyYgLypwYWdlVVJMKi8pIHsgfQorICAgIHZpcnR1YWwgdm9pZCBzZXRJY29uRGF0
YUZvckljb25VUkwoU2hhcmVkQnVmZmVyKiwgY29uc3QgU3RyaW5nJiAvKmljb25VUkwqLykgeyB9
CiAKICAgICAvLyBTeW5jaHJvbm91cyBjYWxscyB1c2VkIGludGVybmFsbHkgYnkgV2ViQ29yZS4K
ICAgICAvLyBVc2FnZSBzaG91bGQgYmUgcmVwbGFjZWQgYnkgYXN5bmNocm9ub3VzIGNhbGxzLgpA
QCAtMTgyLDEyICsxNzMsMTIgQEAgcHVibGljOgogCiAgICAgLy8gQXN5bmNocm9ub3VzIGNhbGxz
IHdlIHNob3VsZCB1c2UgdG8gcmVwbGFjZSB0aGUgYWJvdmUgd2hlbiBzdXBwb3J0ZWQuCiAgICAg
dmlydHVhbCBib29sIHN1cHBvcnRzQXN5bmNocm9ub3VzTW9kZSgpIHsgcmV0dXJuIGZhbHNlOyB9
Ci0gICAgdmlydHVhbCB2b2lkIGxvYWREZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5nJiwg
UGFzc1JlZlB0cjxJY29uTG9hZERlY2lzaW9uQ2FsbGJhY2s+KSB7IH0KLSAgICB2aXJ0dWFsIHZv
aWQgaWNvbkRhdGFGb3JJY29uVVJMKGNvbnN0IFN0cmluZyYsIFBhc3NSZWZQdHI8SWNvbkRhdGFD
YWxsYmFjaz4pIHsgfQotICAgIAorICAgIHZpcnR1YWwgdm9pZCBsb2FkRGVjaXNpb25Gb3JJY29u
VVJMKGNvbnN0IFN0cmluZyYsIEljb25Mb2FkRGVjaXNpb25DYWxsYmFjayYpIHsgfQorICAgIHZp
cnR1YWwgdm9pZCBpY29uRGF0YUZvckljb25VUkwoY29uc3QgU3RyaW5nJiwgSWNvbkRhdGFDYWxs
YmFjayYpIHsgfQogCiAgICAgLy8gVXNlZCB3aXRoaW4gb25lIG9yIG1vcmUgV2ViS2l0IHBvcnRz
LgogICAgIC8vIFdlIHNob3VsZCB0cnkgdG8gcmVtb3ZlIHRoZXNlIGRlcGVuZGVuY2llcyBmcm9t
IHRoZSBJY29uRGF0YWJhc2VCYXNlIGNsYXNzLgorCiAgICAgdmlydHVhbCB2b2lkIHNldEVuYWJs
ZWQoYm9vbCkgeyB9CiAKICAgICB2aXJ0dWFsIEltYWdlKiBkZWZhdWx0SWNvbihjb25zdCBJbnRT
aXplJikgeyByZXR1cm4gbnVsbHB0cjsgfQpAQCAtMjA1LDEwICsxOTYsMTIgQEAgcHVibGljOgog
CiAgICAgdmlydHVhbCB2b2lkIHNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQoYm9vbCkgeyB9CiAg
ICAgdmlydHVhbCB2b2lkIHNldENsaWVudChJY29uRGF0YWJhc2VDbGllbnQqKSB7IH0KLSAgICAK
KwogICAgIHZpcnR1YWwgYm9vbCBpc09wZW4oKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogICAg
IHZpcnR1YWwgU3RyaW5nIGRhdGFiYXNlUGF0aCgpIGNvbnN0OwogCitwcm90ZWN0ZWQ6CisgICAg
SWNvbkRhdGFiYXNlQmFzZSgpID0gZGVmYXVsdDsKIH07CiAKIC8vIEZ1bmN0aW9ucyB0byBnZXQv
c2V0IHRoZSBnbG9iYWwgaWNvbiBkYXRhYmFzZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9pY29uL1BhZ2VVUkxSZWNvcmQuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2lj
b24vUGFnZVVSTFJlY29yZC5jcHAKaW5kZXggZjhiMjMxNGNmMTE4Y2I5ZDg2OGMxNDBkOGI4MmVh
MTM1NDFkYjhiMC4uOTlkZGVkOGYyMDVmM2FhYmY0ZWNmODBkMDc1YWFjODVmOTYyOTFiYSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vUGFnZVVSTFJlY29yZC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vUGFnZVVSTFJlY29yZC5jcHAKQEAgLTM1LDI5
ICszNSwyOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFBhZ2VVUkxSZWNvcmQ6OlBhZ2VVUkxS
ZWNvcmQoY29uc3QgU3RyaW5nJiBwYWdlVVJMKQogICAgIDogbV9wYWdlVVJMKHBhZ2VVUkwpCi0g
ICAgLCBtX3JldGFpbkNvdW50KDApCiB7CiB9CiAKIFBhZ2VVUkxSZWNvcmQ6On5QYWdlVVJMUmVj
b3JkKCkKIHsKLSAgICBzZXRJY29uUmVjb3JkKG51bGxwdHIpOworICAgIGlmIChtX2ljb25SZWNv
cmQpCisgICAgICAgIG1faWNvblJlY29yZC0+bV9yZXRhaW5pbmdQYWdlVVJMcy5yZW1vdmUobV9w
YWdlVVJMKTsKIH0KIAotdm9pZCBQYWdlVVJMUmVjb3JkOjpzZXRJY29uUmVjb3JkKFBhc3NSZWZQ
dHI8SWNvblJlY29yZD4gaWNvbikKK3ZvaWQgUGFnZVVSTFJlY29yZDo6c2V0SWNvblJlY29yZChS
ZWZQdHI8SWNvblJlY29yZD4mJiBpY29uKQogewogICAgIGlmIChtX2ljb25SZWNvcmQpCiAgICAg
ICAgIG1faWNvblJlY29yZC0+bV9yZXRhaW5pbmdQYWdlVVJMcy5yZW1vdmUobV9wYWdlVVJMKTsK
LSAgICAgICAgCi0gICAgbV9pY29uUmVjb3JkID0gaWNvbjsKLSAgICAKKworICAgIG1faWNvblJl
Y29yZCA9IFdURk1vdmUoaWNvbik7CisKICAgICBpZiAobV9pY29uUmVjb3JkKQogICAgICAgICBt
X2ljb25SZWNvcmQtPm1fcmV0YWluaW5nUGFnZVVSTHMuYWRkKG1fcGFnZVVSTCk7CiB9CiAgICAg
CiBQYWdlVVJMU25hcHNob3QgUGFnZVVSTFJlY29yZDo6c25hcHNob3QoYm9vbCBmb3JEZWxldGlv
bikgY29uc3QgCiB7Ci0gICAgcmV0dXJuIFBhZ2VVUkxTbmFwc2hvdChtX3BhZ2VVUkwsIChtX2lj
b25SZWNvcmQgJiYgIWZvckRlbGV0aW9uKSA/IG1faWNvblJlY29yZC0+aWNvblVSTCgpIDogU3Ry
aW5nKCkpOworICAgIHJldHVybiB7IG1fcGFnZVVSTCwgKG1faWNvblJlY29yZCAmJiAhZm9yRGVs
ZXRpb24pID8gbV9pY29uUmVjb3JkLT5pY29uVVJMKCkgOiBTdHJpbmcoKSB9OwogfQogCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNv
bi9QYWdlVVJMUmVjb3JkLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9QYWdlVVJMUmVj
b3JkLmgKaW5kZXggZWZlZDM0NTBjNTJkNzkwNDNmM2JiNjJmNzBmMjZmM2ZkZmNlY2IzZC4uMTg5
ODc1ZTMyZDhhNzRkZTQxN2Q1OWUxNmJkNDBjYTc4YTkyMGU4MSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2ljb24vUGFnZVVSTFJlY29yZC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9pY29uL1BhZ2VVUkxSZWNvcmQuaApAQCAtNjEsNyArNjEsNyBAQCBwdWJsaWM6CiAK
ICAgICBpbmxpbmUgU3RyaW5nIHVybCgpIGNvbnN0IHsgcmV0dXJuIG1fcGFnZVVSTDsgfQogICAg
IAotICAgIHZvaWQgc2V0SWNvblJlY29yZChQYXNzUmVmUHRyPEljb25SZWNvcmQ+KTsKKyAgICB2
b2lkIHNldEljb25SZWNvcmQoUmVmUHRyPEljb25SZWNvcmQ+JiYpOwogICAgIEljb25SZWNvcmQq
IGljb25SZWNvcmQoKSB7IHJldHVybiBtX2ljb25SZWNvcmQuZ2V0KCk7IH0KIAogICAgIFBhZ2VV
UkxTbmFwc2hvdCBzbmFwc2hvdChib29sIGZvckRlbGV0aW9uID0gZmFsc2UpIGNvbnN0OwpAQCAt
ODIsMTIgKzgyLDEyIEBAIHB1YmxpYzoKICAgICAgICAgcmV0dXJuIG1fcmV0YWluQ291bnQgPiAw
OwogICAgIH0KIAotICAgIGlubGluZSBpbnQgcmV0YWluQ291bnQoKSBjb25zdCB7IHJldHVybiBt
X3JldGFpbkNvdW50OyB9CisgICAgaW50IHJldGFpbkNvdW50KCkgY29uc3QgeyByZXR1cm4gbV9y
ZXRhaW5Db3VudDsgfQogCiBwcml2YXRlOgogICAgIFN0cmluZyBtX3BhZ2VVUkw7CiAgICAgUmVm
UHRyPEljb25SZWNvcmQ+IG1faWNvblJlY29yZDsKLSAgICBpbnQgbV9yZXRhaW5Db3VudDsKKyAg
ICBpbnQgbV9yZXRhaW5Db3VudCB7IDAgfTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pb3MvUXVpY2tMb29rLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvaW9zL1F1aWNrTG9vay5oCmluZGV4IDVlNTRmMmNlNWE3OTY3YjMz
NjZhZjJlNjY3NmRhZTUwOGI2MjBkZWEuLjVkMDUwNDg4MzJiN2ZlMTJjYTc5MmNmMjc1MDYzNTFk
YTJjMTIyOTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pb3MvUXVpY2tMb29r
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2lvcy9RdWlja0xvb2suaApAQCAtODEsOCAr
ODEsNiBAQCBwdWJsaWM6CiAgICAgYm9vbCBkaWRGaW5pc2hMb2FkaW5nKCk7CiAgICAgdm9pZCBk
aWRGYWlsKCk7CiAKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldENsaWVudChSZWY8UXVpY2tM
b29rSGFuZGxlQ2xpZW50PiYmKTsKLQogICAgIFdFQkNPUkVfRVhQT1JUIFN0cmluZyBwcmV2aWV3
RmlsZU5hbWUoKSBjb25zdDsKICAgICBXRUJDT1JFX0VYUE9SVCBTdHJpbmcgcHJldmlld1VUSSgp
IGNvbnN0OwogICAgIFdFQkNPUkVfRVhQT1JUIE5TVVJMICpwcmV2aWV3UmVxdWVzdFVSTCgpIGNv
bnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWUuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9DaHJvbWUuY3BwCmluZGV4IGUzYzQwMGMzZjRkYzI0NGQwY2QzNGI5Y2Fl
MDA5MzVkM2VjNzcyNzguLjc0ZGRlMWEzNGUxNWU5MDk3MWFkMDg2ZTI3MGI5YWE1Njk4ODIxMGIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21lLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0Nocm9tZS5jcHAKQEAgLTQzMSw3ICs0MzEsNyBAQCBzdGQ6OnVuaXF1ZV9w
dHI8Q29sb3JDaG9vc2VyPiBDaHJvbWU6OmNyZWF0ZUNvbG9yQ2hvb3NlcihDb2xvckNob29zZXJD
bGllbnQqIGNsaQogfQogI2VuZGlmCiAKLXZvaWQgQ2hyb21lOjpydW5PcGVuUGFuZWwoRnJhbWUq
IGZyYW1lLCBQYXNzUmVmUHRyPEZpbGVDaG9vc2VyPiBmaWxlQ2hvb3NlcikKK3ZvaWQgQ2hyb21l
OjpydW5PcGVuUGFuZWwoRnJhbWUmIGZyYW1lLCBGaWxlQ2hvb3NlciYgZmlsZUNob29zZXIpCiB7
CiAgICAgbm90aWZ5UG9wdXBPcGVuaW5nT2JzZXJ2ZXJzKCk7CiAgICAgbV9jbGllbnQucnVuT3Bl
blBhbmVsKGZyYW1lLCBmaWxlQ2hvb3Nlcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL0Nocm9tZS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWUuaAppbmRleCA1OTAxMDIy
YWI2NDMyZTc1MjljMzA4N2NiODcyZjA2MjBjMTYzMTFhLi42ZDI1YWM4OTE2MDBmMjE4NGE2NTRk
YWQzMjI2ZDQ2YzgxOTMyYTY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9t
ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21lLmgKQEAgLTE1NCw3ICsxNTQsNyBA
QCBwdWJsaWM6CiAgICAgc3RkOjp1bmlxdWVfcHRyPENvbG9yQ2hvb3Nlcj4gY3JlYXRlQ29sb3JD
aG9vc2VyKENvbG9yQ2hvb3NlckNsaWVudCosIGNvbnN0IENvbG9yJiBpbml0aWFsQ29sb3IpOwog
I2VuZGlmCiAKLSAgICB2b2lkIHJ1bk9wZW5QYW5lbChGcmFtZSosIFBhc3NSZWZQdHI8RmlsZUNo
b29zZXI+KTsKKyAgICB2b2lkIHJ1bk9wZW5QYW5lbChGcmFtZSYsIEZpbGVDaG9vc2VyJik7CiAg
ICAgdm9pZCBsb2FkSWNvbkZvckZpbGVzKGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgRmlsZUljb25M
b2FkZXImKTsKIAogICAgIHZvaWQgZGlzcGF0Y2hWaWV3cG9ydFByb3BlcnRpZXNEaWRDaGFuZ2Uo
Y29uc3QgVmlld3BvcnRBcmd1bWVudHMmKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvQ2hyb21lQ2xpZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZUNsaWVu
dC5oCmluZGV4IDAyYmEzYzAwYWM4OGZjZGUwNmZiNjRlNWU0M2E5NTc1N2EyZTMxYTQuLjMzMWRm
NGFjN2YwZjdmODFhZmZmYzc4OGJlYzE4YTdhNWU4MWM4ZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvQ2hyb21lQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJv
bWVDbGllbnQuaApAQCAtMjczLDcgKzI3Myw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHN0ZDo6
dW5pcXVlX3B0cjxDb2xvckNob29zZXI+IGNyZWF0ZUNvbG9yQ2hvb3NlcihDb2xvckNob29zZXJD
bGllbnQqLCBjb25zdCBDb2xvciYpID0gMDsKICNlbmRpZgogCi0gICAgdmlydHVhbCB2b2lkIHJ1
bk9wZW5QYW5lbChGcmFtZSosIFBhc3NSZWZQdHI8RmlsZUNob29zZXI+KSA9IDA7CisgICAgdmly
dHVhbCB2b2lkIHJ1bk9wZW5QYW5lbChGcmFtZSYsIEZpbGVDaG9vc2VyJikgPSAwOwogICAgIC8v
IEFzeW5jaHJvbm91cyByZXF1ZXN0IHRvIGxvYWQgYW4gaWNvbiBmb3Igc3BlY2lmaWVkIGZpbGVu
YW1lcy4KICAgICB2aXJ0dWFsIHZvaWQgbG9hZEljb25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8U3Ry
aW5nPiYsIEZpbGVJY29uTG9hZGVyJikgPSAwOwogICAgICAgICAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2lu
ZG93LmNwcAppbmRleCAzYTI0MmE3ZmFkOTJkNWU3NTk0M2NhYWYzNmZkNmZjZTI1NmJjNDVjLi5m
MTM3YTNiNTYzMjg4M2JlMmFlY2EyMDY3NDhjY2U3MGFlZTg1NjU0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9E
T01XaW5kb3cuY3BwCkBAIC03NjksNyArNzY5LDcgQEAgRE9NQXBwbGljYXRpb25DYWNoZSogRE9N
V2luZG93OjphcHBsaWNhdGlvbkNhY2hlKCkgY29uc3QKICAgICBpZiAoIWlzQ3VycmVudGx5RGlz
cGxheWVkSW5GcmFtZSgpKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICBpZiAoIW1fYXBw
bGljYXRpb25DYWNoZSkKLSAgICAgICAgbV9hcHBsaWNhdGlvbkNhY2hlID0gRE9NQXBwbGljYXRp
b25DYWNoZTo6Y3JlYXRlKG1fZnJhbWUpOworICAgICAgICBtX2FwcGxpY2F0aW9uQ2FjaGUgPSBE
T01BcHBsaWNhdGlvbkNhY2hlOjpjcmVhdGUoKm1fZnJhbWUpOwogICAgIHJldHVybiBtX2FwcGxp
Y2F0aW9uQ2FjaGUuZ2V0KCk7CiB9CiAKQEAgLTIwNzksNyArMjA3OSw3IEBAIHZvaWQgRE9NV2lu
ZG93OjpzZXRMb2NhdGlvbihET01XaW5kb3cmIGFjdGl2ZVdpbmRvdywgRE9NV2luZG93JiBmaXJz
dFdpbmRvdywgY29uCiAgICAgLy8gV2Ugd2FudCBhIG5ldyBoaXN0b3J5IGl0ZW0gaWYgd2UgYXJl
IHByb2Nlc3NpbmcgYSB1c2VyIGdlc3R1cmUuCiAgICAgTG9ja0hpc3RvcnkgbG9ja0hpc3Rvcnkg
PSAobG9ja2luZyAhPSBMb2NrSGlzdG9yeUJhc2VkT25HZXN0dXJlU3RhdGUgfHwgIVNjcmlwdENv
bnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpKSA/IExvY2tIaXN0b3J5OjpZZXMgOiBM
b2NrSGlzdG9yeTo6Tm87CiAgICAgTG9ja0JhY2tGb3J3YXJkTGlzdCBsb2NrQmFja0ZvcndhcmRM
aXN0ID0gKGxvY2tpbmcgIT0gTG9ja0hpc3RvcnlCYXNlZE9uR2VzdHVyZVN0YXRlKSA/IExvY2tC
YWNrRm9yd2FyZExpc3Q6OlllcyA6IExvY2tCYWNrRm9yd2FyZExpc3Q6Ok5vOwotICAgIG1fZnJh
bWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKGFjdGl2ZURv
Y3VtZW50LCBhY3RpdmVEb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKSwKKyAgICBtX2ZyYW1lLT5u
YXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZSgqYWN0aXZlRG9jdW1l
bnQsIGFjdGl2ZURvY3VtZW50LT5zZWN1cml0eU9yaWdpbigpLAogICAgICAgICAvLyBGSVhNRTog
V2hhdCBpZiBhY3RpdmVEb2N1bWVudCgpLT5mcmFtZSgpIGlzIDA/CiAgICAgICAgIGNvbXBsZXRl
ZFVSTCwgYWN0aXZlRG9jdW1lbnQtPmZyYW1lKCktPmxvYWRlcigpLm91dGdvaW5nUmVmZXJyZXIo
KSwKICAgICAgICAgbG9ja0hpc3RvcnksIGxvY2tCYWNrRm9yd2FyZExpc3QpOwpAQCAtMjIwNSw3
ICsyMjA1LDcgQEAgUmVmUHRyPEZyYW1lPiBET01XaW5kb3c6OmNyZWF0ZVdpbmRvdyhjb25zdCBT
dHJpbmcmIHVybFN0cmluZywgY29uc3QgQXRvbWljU3RyaW4KICAgICAgICAgbmV3RnJhbWUtPmxv
YWRlcigpLmNoYW5nZUxvY2F0aW9uKGZyYW1lUmVxdWVzdCk7CiAgICAgfSBlbHNlIGlmICghdXJs
U3RyaW5nLmlzRW1wdHkoKSkgewogICAgICAgICBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSA9IFNj
cmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpID8gTG9ja0hpc3Rvcnk6Ok5v
IDogTG9ja0hpc3Rvcnk6OlllczsKLSAgICAgICAgbmV3RnJhbWUtPm5hdmlnYXRpb25TY2hlZHVs
ZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKGFjdGl2ZVdpbmRvdy5kb2N1bWVudCgpLCBhY3Rp
dmVXaW5kb3cuZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSwgY29tcGxldGVkVVJMLCByZWZl
cnJlciwgbG9ja0hpc3RvcnksIExvY2tCYWNrRm9yd2FyZExpc3Q6Ok5vKTsKKyAgICAgICAgbmV3
RnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKCphY3Rp
dmVXaW5kb3cuZG9jdW1lbnQoKSwgYWN0aXZlV2luZG93LmRvY3VtZW50KCktPnNlY3VyaXR5T3Jp
Z2luKCksIGNvbXBsZXRlZFVSTCwgcmVmZXJyZXIsIGxvY2tIaXN0b3J5LCBMb2NrQmFja0Zvcndh
cmRMaXN0OjpObyk7CiAgICAgfQogCiAgICAgLy8gTmF2aWdhdGluZyB0aGUgbmV3IGZyYW1lIGNv
dWxkIHJlc3VsdCBpbiBpdCBiZWluZyBkZXRhY2hlZCBmcm9tIGl0cyBwYWdlIGJ5IGEgbmF2aWdh
dGlvbiBwb2xpY3kgZGVsZWdhdGUuCkBAIC0yMjE1LDI4ICsyMjE1LDI2IEBAIFJlZlB0cjxGcmFt
ZT4gRE9NV2luZG93OjpjcmVhdGVXaW5kb3coY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcsIGNvbnN0
IEF0b21pY1N0cmluCiAgICAgcmV0dXJuIG5ld0ZyYW1lOwogfQogCi1SZWZQdHI8RE9NV2luZG93
PiBET01XaW5kb3c6Om9wZW4oY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcsIGNvbnN0IEF0b21pY1N0
cmluZyYgZnJhbWVOYW1lLCBjb25zdCBTdHJpbmcmIHdpbmRvd0ZlYXR1cmVzU3RyaW5nLAotICAg
IERPTVdpbmRvdyYgYWN0aXZlV2luZG93LCBET01XaW5kb3cmIGZpcnN0V2luZG93KQorUmVmUHRy
PERPTVdpbmRvdz4gRE9NV2luZG93OjpvcGVuKGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nLCBjb25z
dCBBdG9taWNTdHJpbmcmIGZyYW1lTmFtZSwgY29uc3QgU3RyaW5nJiB3aW5kb3dGZWF0dXJlc1N0
cmluZywgRE9NV2luZG93JiBhY3RpdmVXaW5kb3csIERPTVdpbmRvdyYgZmlyc3RXaW5kb3cpCiB7
CiAgICAgaWYgKCFpc0N1cnJlbnRseURpc3BsYXllZEluRnJhbWUoKSkKICAgICAgICAgcmV0dXJu
IG51bGxwdHI7CiAKLSAgICBEb2N1bWVudCogYWN0aXZlRG9jdW1lbnQgPSBhY3RpdmVXaW5kb3cu
ZG9jdW1lbnQoKTsKKyAgICBhdXRvKiBhY3RpdmVEb2N1bWVudCA9IGFjdGl2ZVdpbmRvdy5kb2N1
bWVudCgpOwogICAgIGlmICghYWN0aXZlRG9jdW1lbnQpCiAgICAgICAgIHJldHVybiBudWxscHRy
OwogCi0gICAgRnJhbWUqIGZpcnN0RnJhbWUgPSBmaXJzdFdpbmRvdy5mcmFtZSgpOworICAgIGF1
dG8qIGZpcnN0RnJhbWUgPSBmaXJzdFdpbmRvdy5mcmFtZSgpOwogICAgIGlmICghZmlyc3RGcmFt
ZSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKICNpZiBFTkFCTEUoQ09OVEVOVF9FWFRFTlNJ
T05TKQogICAgIGlmIChmaXJzdEZyYW1lLT5kb2N1bWVudCgpCi0gICAgICAgICYmIGZpcnN0RnJh
bWUtPm1haW5GcmFtZSgpLnBhZ2UoKQorICAgICAgICAmJiBmaXJzdEZyYW1lLT5wYWdlKCkKICAg
ICAgICAgJiYgZmlyc3RGcmFtZS0+bWFpbkZyYW1lKCkuZG9jdW1lbnQoKQogICAgICAgICAmJiBm
aXJzdEZyYW1lLT5tYWluRnJhbWUoKS5kb2N1bWVudCgpLT5sb2FkZXIoKSkgewotICAgICAgICBS
ZXNvdXJjZUxvYWRJbmZvIHJlc291cmNlTG9hZEluZm8gPSB7IGZpcnN0RnJhbWUtPmRvY3VtZW50
KCktPmNvbXBsZXRlVVJMKHVybFN0cmluZyksIGZpcnN0RnJhbWUtPm1haW5GcmFtZSgpLmRvY3Vt
ZW50KCktPnVybCgpLCBSZXNvdXJjZVR5cGU6OlBvcHVwIH07Ci0gICAgICAgIFZlY3RvcjxDb250
ZW50RXh0ZW5zaW9uczo6QWN0aW9uPiBhY3Rpb25zID0gZmlyc3RGcmFtZS0+bWFpbkZyYW1lKCku
cGFnZSgpLT51c2VyQ29udGVudFByb3ZpZGVyKCkuYWN0aW9uc0ZvclJlc291cmNlTG9hZChyZXNv
dXJjZUxvYWRJbmZvLCAqZmlyc3RGcmFtZS0+bWFpbkZyYW1lKCkuZG9jdW1lbnQoKS0+bG9hZGVy
KCkpOwotICAgICAgICBmb3IgKGNvbnN0IENvbnRlbnRFeHRlbnNpb25zOjpBY3Rpb24mIGFjdGlv
biA6IGFjdGlvbnMpIHsKKyAgICAgICAgUmVzb3VyY2VMb2FkSW5mbyByZXNvdXJjZUxvYWRJbmZv
IHsgZmlyc3RGcmFtZS0+ZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwodXJsU3RyaW5nKSwgZmlyc3RG
cmFtZS0+bWFpbkZyYW1lKCkuZG9jdW1lbnQoKS0+dXJsKCksIFJlc291cmNlVHlwZTo6UG9wdXAg
fTsKKyAgICAgICAgZm9yIChhdXRvJiBhY3Rpb24gOiBmaXJzdEZyYW1lLT5wYWdlKCktPnVzZXJD
b250ZW50UHJvdmlkZXIoKS5hY3Rpb25zRm9yUmVzb3VyY2VMb2FkKHJlc291cmNlTG9hZEluZm8s
ICpmaXJzdEZyYW1lLT5tYWluRnJhbWUoKS5kb2N1bWVudCgpLT5sb2FkZXIoKSkpIHsKICAgICAg
ICAgICAgIGlmIChhY3Rpb24udHlwZSgpID09IENvbnRlbnRFeHRlbnNpb25zOjpBY3Rpb25UeXBl
OjpCbG9ja0xvYWQpCiAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgICAgIH0K
QEAgLTIyNzYsNyArMjI3NCw3IEBAIFJlZlB0cjxET01XaW5kb3c+IERPTVdpbmRvdzo6b3Blbihj
b25zdCBTdHJpbmcmIHVybFN0cmluZywgY29uc3QgQXRvbWljU3RyaW5nJiBmCiAgICAgICAgIC8v
IEZvciB3aGF0ZXZlciByZWFzb24sIEZpcmVmb3ggdXNlcyB0aGUgZmlyc3Qgd2luZG93IHJhdGhl
ciB0aGFuIHRoZSBhY3RpdmUgd2luZG93IHRvCiAgICAgICAgIC8vIGRldGVybWluZSB0aGUgb3V0
Z29pbmcgcmVmZXJyZXIuIFdlIHJlcGxpY2F0ZSB0aGF0IGJlaGF2aW9yIGhlcmUuCiAgICAgICAg
IExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5ID0gU2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1Vz
ZXJHZXN0dXJlKCkgPyBMb2NrSGlzdG9yeTo6Tm8gOiBMb2NrSGlzdG9yeTo6WWVzOwotICAgICAg
ICB0YXJnZXRGcmFtZS0+bmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlTG9jYXRpb25DaGFu
Z2UoYWN0aXZlRG9jdW1lbnQsIGFjdGl2ZURvY3VtZW50LT5zZWN1cml0eU9yaWdpbigpLCBjb21w
bGV0ZWRVUkwsIGZpcnN0RnJhbWUtPmxvYWRlcigpLm91dGdvaW5nUmVmZXJyZXIoKSwKKyAgICAg
ICAgdGFyZ2V0RnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hh
bmdlKCphY3RpdmVEb2N1bWVudCwgYWN0aXZlRG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCksIGNv
bXBsZXRlZFVSTCwgZmlyc3RGcmFtZS0+bG9hZGVyKCkub3V0Z29pbmdSZWZlcnJlcigpLAogICAg
ICAgICAgICAgbG9ja0hpc3RvcnksIExvY2tCYWNrRm9yd2FyZExpc3Q6Ok5vKTsKICAgICAgICAg
cmV0dXJuIHRhcmdldEZyYW1lLT5kb2N1bWVudCgpLT5kb21XaW5kb3coKTsKICAgICB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0VkaXRvckNsaWVudC5oIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9FZGl0b3JDbGllbnQuaAppbmRleCBlYjFhNDJlMmVlZDAzYTUxNGQxMjM2MDhiY2U3
M2I0ZTJkNTY3ODBhLi5mNDEzMjEwOWY2NDkzYzMwNTgyYTk4OTE5MmM4ZGIzNTU5OTk3ODRjIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0VkaXRvckNsaWVudC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvRWRpdG9yQ2xpZW50LmgKQEAgLTEwNCw4ICsxMDQsOCBAQCBwdWJsaWM6
CiAgICAgdmlydHVhbCB2b2lkIGRpc2NhcmRlZENvbXBvc2l0aW9uKEZyYW1lKikgPSAwOwogICAg
IHZpcnR1YWwgdm9pZCBjYW5jZWxlZENvbXBvc2l0aW9uKCkgPSAwOwogCi0gICAgdmlydHVhbCB2
b2lkIHJlZ2lzdGVyVW5kb1N0ZXAoUGFzc1JlZlB0cjxVbmRvU3RlcD4pID0gMDsKLSAgICB2aXJ0
dWFsIHZvaWQgcmVnaXN0ZXJSZWRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPikgPSAwOworICAg
IHZpcnR1YWwgdm9pZCByZWdpc3RlclVuZG9TdGVwKFVuZG9TdGVwJikgPSAwOworICAgIHZpcnR1
YWwgdm9pZCByZWdpc3RlclJlZG9TdGVwKFVuZG9TdGVwJikgPSAwOwogICAgIHZpcnR1YWwgdm9p
ZCBjbGVhclVuZG9SZWRvT3BlcmF0aW9ucygpID0gMDsKIAogICAgIHZpcnR1YWwgYm9vbCBjYW5D
b3B5Q3V0KEZyYW1lKiwgYm9vbCBkZWZhdWx0VmFsdWUpIGNvbnN0ID0gMDsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvSGlzdG9yeS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0hp
c3RvcnkuY3BwCmluZGV4IDFkNDU0MmI4N2VhNjEyNTBhODRiZDdjZDkxNjcyZDVlYWZiMzg0ZGYu
LjYzZWQzZDAwN2ViZWQxYTgyMzkwYmFlMTk4NzViMzUyNzY5ZmU4ZTMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvSGlzdG9yeS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9I
aXN0b3J5LmNwcApAQCAtMjA3LDEwICsyMDcsMTAgQEAgRXhjZXB0aW9uT3I8dm9pZD4gSGlzdG9y
eTo6c3RhdGVPYmplY3RBZGRlZChSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiYmIGRhdGEK
ICAgICAgICAgbV9mcmFtZS0+ZG9jdW1lbnQoKS0+dXBkYXRlVVJMRm9yUHVzaE9yUmVwbGFjZVN0
YXRlKGZ1bGxVUkwpOwogCiAgICAgaWYgKHN0YXRlT2JqZWN0VHlwZSA9PSBTdGF0ZU9iamVjdFR5
cGU6OlB1c2gpIHsKLSAgICAgICAgbV9mcmFtZS0+bG9hZGVyKCkuaGlzdG9yeSgpLnB1c2hTdGF0
ZShkYXRhLCB0aXRsZSwgZnVsbFVSTC5zdHJpbmcoKSk7CisgICAgICAgIG1fZnJhbWUtPmxvYWRl
cigpLmhpc3RvcnkoKS5wdXNoU3RhdGUoV1RGTW92ZShkYXRhKSwgdGl0bGUsIGZ1bGxVUkwuc3Ry
aW5nKCkpOwogICAgICAgICBtX2ZyYW1lLT5sb2FkZXIoKS5jbGllbnQoKS5kaXNwYXRjaERpZFB1
c2hTdGF0ZVdpdGhpblBhZ2UoKTsKICAgICB9IGVsc2UgaWYgKHN0YXRlT2JqZWN0VHlwZSA9PSBT
dGF0ZU9iamVjdFR5cGU6OlJlcGxhY2UpIHsKLSAgICAgICAgbV9mcmFtZS0+bG9hZGVyKCkuaGlz
dG9yeSgpLnJlcGxhY2VTdGF0ZShkYXRhLCB0aXRsZSwgZnVsbFVSTC5zdHJpbmcoKSk7CisgICAg
ICAgIG1fZnJhbWUtPmxvYWRlcigpLmhpc3RvcnkoKS5yZXBsYWNlU3RhdGUoV1RGTW92ZShkYXRh
KSwgdGl0bGUsIGZ1bGxVUkwuc3RyaW5nKCkpOwogICAgICAgICBtX2ZyYW1lLT5sb2FkZXIoKS5j
bGllbnQoKS5kaXNwYXRjaERpZFJlcGxhY2VTdGF0ZVdpdGhpblBhZ2UoKTsKICAgICB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTG9jYXRpb24uY3BwIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9Mb2NhdGlvbi5jcHAKaW5kZXggOGQ4MzlkMTNhOTE5ODBlMWEwMjhkYmM1ODBiYmJm
MWQzNjZkNDU2Zi4uYmRiNTQ4YjBiNzg5MzRhYzYyYzE3MWU2OWY3ZjEyOTNiZmZhNDI3NiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Mb2NhdGlvbi5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9Mb2NhdGlvbi5jcHAKQEAgLTIyMSw5ICsyMjEsMTAgQEAgdm9pZCBMb2NhdGlv
bjo6c2V0SGFzaChET01XaW5kb3cmIGFjdGl2ZVdpbmRvdywgRE9NV2luZG93JiBmaXJzdFdpbmRv
dywgY29uc3QgU3QKIHsKICAgICBpZiAoIW1fZnJhbWUpCiAgICAgICAgIHJldHVybjsKLSAgICBV
UkwgdXJsID0gbV9mcmFtZS0+ZG9jdW1lbnQoKS0+dXJsKCk7Ci0gICAgU3RyaW5nIG9sZEZyYWdt
ZW50SWRlbnRpZmllciA9IHVybC5mcmFnbWVudElkZW50aWZpZXIoKTsKLSAgICBTdHJpbmcgbmV3
RnJhZ21lbnRJZGVudGlmaWVyID0gaGFzaDsKKyAgICBBU1NFUlQobV9mcmFtZS0+ZG9jdW1lbnQo
KSk7CisgICAgYXV0byB1cmwgPSBtX2ZyYW1lLT5kb2N1bWVudCgpLT51cmwoKTsKKyAgICBhdXRv
IG9sZEZyYWdtZW50SWRlbnRpZmllciA9IHVybC5mcmFnbWVudElkZW50aWZpZXIoKTsKKyAgICBh
dXRvIG5ld0ZyYWdtZW50SWRlbnRpZmllciA9IGhhc2g7CiAgICAgaWYgKGhhc2hbMF0gPT0gJyMn
KQogICAgICAgICBuZXdGcmFnbWVudElkZW50aWZpZXIgPSBoYXNoLnN1YnN0cmluZygxKTsKICAg
ICB1cmwuc2V0RnJhZ21lbnRJZGVudGlmaWVyKG5ld0ZyYWdtZW50SWRlbnRpZmllcik7CkBAIC0y
NDYsNyArMjQ3LDkgQEAgdm9pZCBMb2NhdGlvbjo6cmVwbGFjZShET01XaW5kb3cmIGFjdGl2ZVdp
bmRvdywgRE9NV2luZG93JiBmaXJzdFdpbmRvdywgY29uc3QgU3QKIHsKICAgICBpZiAoIW1fZnJh
bWUpCiAgICAgICAgIHJldHVybjsKLSAgICAvLyBOb3RlOiBXZSBjYWxsIERPTVdpbmRvdzo6c2V0
TG9jYXRpb24gZGlyZWN0bHkgaGVyZSBiZWNhdXNlIHJlcGxhY2UoKSBhbHdheXMgb3BlcmF0ZXMg
b24gdGhlIGN1cnJlbnQgZnJhbWUuCisgICAgQVNTRVJUKG1fZnJhbWUtPmRvY3VtZW50KCkpOwor
ICAgIEFTU0VSVChtX2ZyYW1lLT5kb2N1bWVudCgpLT5kb21XaW5kb3coKSk7CisgICAgLy8gV2Ug
Y2FsbCBET01XaW5kb3c6OnNldExvY2F0aW9uIGRpcmVjdGx5IGhlcmUgYmVjYXVzZSByZXBsYWNl
KCkgYWx3YXlzIG9wZXJhdGVzIG9uIHRoZSBjdXJyZW50IGZyYW1lLgogICAgIG1fZnJhbWUtPmRv
Y3VtZW50KCktPmRvbVdpbmRvdygpLT5zZXRMb2NhdGlvbihhY3RpdmVXaW5kb3csIGZpcnN0V2lu
ZG93LCB1cmwsIExvY2tIaXN0b3J5QW5kQmFja0ZvcndhcmRMaXN0KTsKIH0KIApAQCAtMjU0LDI2
ICsyNTcsMzggQEAgdm9pZCBMb2NhdGlvbjo6cmVsb2FkKERPTVdpbmRvdyYgYWN0aXZlV2luZG93
KQogewogICAgIGlmICghbV9mcmFtZSkKICAgICAgICAgcmV0dXJuOworCisgICAgQVNTRVJUKGFj
dGl2ZVdpbmRvdy5kb2N1bWVudCgpKTsKKyAgICBBU1NFUlQobV9mcmFtZS0+ZG9jdW1lbnQoKSk7
CisgICAgQVNTRVJUKG1fZnJhbWUtPmRvY3VtZW50KCktPmRvbVdpbmRvdygpKTsKKworICAgIGF1
dG8mIGFjdGl2ZURvY3VtZW50ID0gKmFjdGl2ZVdpbmRvdy5kb2N1bWVudCgpOworICAgIGF1dG8m
IHRhcmdldERvY3VtZW50ID0gKm1fZnJhbWUtPmRvY3VtZW50KCk7CisKICAgICAvLyBGSVhNRTog
SXQncyBub3QgY2xlYXIgdGhpcyBjcm9zcy1vcmlnaW4gc2VjdXJpdHkgY2hlY2sgaXMgdmFsdWFi
bGUuCiAgICAgLy8gV2UgYWxsb3cgb25lIHBhZ2UgdG8gY2hhbmdlIHRoZSBsb2NhdGlvbiBvZiBh
bm90aGVyLiBXaHkgYmxvY2sgYXR0ZW1wdHMgdG8gcmVsb2FkPwogICAgIC8vIE90aGVyIGxvY2F0
aW9uIG9wZXJhdGlvbnMgc2ltcGx5IGJsb2NrIHVzZSBvZiBKYXZhU2NyaXB0IFVSTHMgY3Jvc3Mg
b3JpZ2luLgotICAgIERPTVdpbmRvdyogdGFyZ2V0V2luZG93ID0gbV9mcmFtZS0+ZG9jdW1lbnQo
KS0+ZG9tV2luZG93KCk7Ci0gICAgaWYgKCFhY3RpdmVXaW5kb3cuZG9jdW1lbnQoKS0+c2VjdXJp
dHlPcmlnaW4oKS0+Y2FuQWNjZXNzKG1fZnJhbWUtPmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2lu
KCkpKSB7Ci0gICAgICAgIHRhcmdldFdpbmRvdy0+cHJpbnRFcnJvck1lc3NhZ2UodGFyZ2V0V2lu
ZG93LT5jcm9zc0RvbWFpbkFjY2Vzc0Vycm9yTWVzc2FnZShhY3RpdmVXaW5kb3cpKTsKKyAgICBp
ZiAoIWFjdGl2ZURvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCktPmNhbkFjY2Vzcyh0YXJnZXREb2N1
bWVudC5zZWN1cml0eU9yaWdpbigpKSkgeworICAgICAgICBhdXRvJiB0YXJnZXRXaW5kb3cgPSAq
dGFyZ2V0RG9jdW1lbnQuZG9tV2luZG93KCk7CisgICAgICAgIHRhcmdldFdpbmRvdy5wcmludEVy
cm9yTWVzc2FnZSh0YXJnZXRXaW5kb3cuY3Jvc3NEb21haW5BY2Nlc3NFcnJvck1lc3NhZ2UoYWN0
aXZlV2luZG93KSk7CiAgICAgICAgIHJldHVybjsKICAgICB9Ci0gICAgaWYgKHByb3RvY29sSXNK
YXZhU2NyaXB0KG1fZnJhbWUtPmRvY3VtZW50KCktPnVybCgpKSkKKworICAgIGlmIChwcm90b2Nv
bElzSmF2YVNjcmlwdCh0YXJnZXREb2N1bWVudC51cmwoKSkpCiAgICAgICAgIHJldHVybjsKLSAg
ICBtX2ZyYW1lLT5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVSZWZyZXNoKGFjdGl2ZVdp
bmRvdy5kb2N1bWVudCgpKTsKKworICAgIG1fZnJhbWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5z
Y2hlZHVsZVJlZnJlc2goYWN0aXZlRG9jdW1lbnQpOwogfQogCiB2b2lkIExvY2F0aW9uOjpzZXRM
b2NhdGlvbihET01XaW5kb3cmIGFjdGl2ZVdpbmRvdywgRE9NV2luZG93JiBmaXJzdFdpbmRvdywg
Y29uc3QgU3RyaW5nJiB1cmwpCiB7CiAgICAgQVNTRVJUKG1fZnJhbWUpOwotICAgIEZyYW1lKiBm
cmFtZSA9IG1fZnJhbWUtPmxvYWRlcigpLmZpbmRGcmFtZUZvck5hdmlnYXRpb24oU3RyaW5nKCks
IGFjdGl2ZVdpbmRvdy5kb2N1bWVudCgpKTsKLSAgICBpZiAoIWZyYW1lKQorICAgIGF1dG8qIHRh
cmdldEZyYW1lID0gbV9mcmFtZS0+bG9hZGVyKCkuZmluZEZyYW1lRm9yTmF2aWdhdGlvbih7IH0s
IGFjdGl2ZVdpbmRvdy5kb2N1bWVudCgpKTsKKyAgICBpZiAoIXRhcmdldEZyYW1lKQogICAgICAg
ICByZXR1cm47Ci0gICAgZnJhbWUtPmRvY3VtZW50KCktPmRvbVdpbmRvdygpLT5zZXRMb2NhdGlv
bihhY3RpdmVXaW5kb3csIGZpcnN0V2luZG93LCB1cmwpOworICAgIEFTU0VSVCh0YXJnZXRGcmFt
ZS0+ZG9jdW1lbnQoKSk7CisgICAgQVNTRVJUKHRhcmdldEZyYW1lLT5kb2N1bWVudCgpLT5kb21X
aW5kb3coKSk7CisgICAgdGFyZ2V0RnJhbWUtPmRvY3VtZW50KCktPmRvbVdpbmRvdygpLT5zZXRM
b2NhdGlvbihhY3RpdmVXaW5kb3csIGZpcnN0V2luZG93LCB1cmwpOwogfQogCiB9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9VUkwuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVVJMLmNwcAppbmRleCBlNzBhMGY3YjgzZTllMmY4
NDU0Y2QxMWY1YTY0OTg2MWEwMjYzODkzLi41ZWZiODVhMzAzNGVlM2VlZDAwYmFmZGNmMGU2ODMy
MjY1MDc3OGExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9VUkwuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1VSTC5jcHAKQEAgLTExMjYsMTcgKzExMjYsMTcg
QEAgdm9pZCBVUkw6OnNldFBhc3MoY29uc3QgU3RyaW5nJiBwYXNzd29yZCkKICAgICB9CiB9CiAK
LXZvaWQgVVJMOjpzZXRGcmFnbWVudElkZW50aWZpZXIoY29uc3QgU3RyaW5nJiBzKQordm9pZCBV
Ukw6OnNldEZyYWdtZW50SWRlbnRpZmllcihTdHJpbmdWaWV3IGlkZW50aWZpZXIpCiB7CiAgICAg
aWYgKCFtX2lzVmFsaWQpCiAgICAgICAgIHJldHVybjsKIAotICAgIC8vIEZJWE1FOiBOb24tQVND
SUkgY2hhcmFjdGVycyBtdXN0IGJlIGVuY29kZWQgYW5kIGVzY2FwZWQgdG8gbWF0Y2ggcGFyc2Uo
KSBleHBlY3RhdGlvbnMuCi0gICAgaWYgKFVSTFBhcnNlcjo6ZW5hYmxlZCgpKSB7Ci0gICAgICAg
IFVSTFBhcnNlciBwYXJzZXIobWFrZVN0cmluZyhtX3N0cmluZy5sZWZ0KG1fcXVlcnlFbmQpLCAi
IyIsIHMpKTsKLSAgICAgICAgKnRoaXMgPSBwYXJzZXIucmVzdWx0KCk7Ci0gICAgfSBlbHNlCi0g
ICAgICAgIHBhcnNlKG1fc3RyaW5nLmxlZnQobV9xdWVyeUVuZCkgKyAiIyIgKyBzKTsKKyAgICAv
LyBGSVhNRTogT3B0aW1pemUgdGhlIGNhc2Ugd2hlcmUgdGhlIGlkZW50aWZpZXIgYWxyZWFkeSBo
YXBwZW5zIHRvIGJlIGVxdWFsIHRvIHdoYXQgd2FzIHBhc3NlZD8KKyAgICAvLyBGSVhNRTogSXMg
aXQgY29ycmVjdCB0byBkbyB0aGlzIHdpdGhvdXQgZW5jb2RpbmcgYW5kIGVzY2FwaW5nIG5vbi1B
U0NJSSBjaGFyYWN0ZXJzPworICAgIGlmIChVUkxQYXJzZXI6OmVuYWJsZWQoKSkKKyAgICAgICAg
KnRoaXMgPSBVUkxQYXJzZXIgeyBtYWtlU3RyaW5nKFN0cmluZ1ZpZXcgeyBtX3N0cmluZyB9LnN1
YnN0cmluZygwLCBtX3F1ZXJ5RW5kKSwgJyMnLCBpZGVudGlmaWVyKSB9LnJlc3VsdCgpOworICAg
IGVsc2UKKyAgICAgICAgcGFyc2UobV9zdHJpbmcubGVmdChtX3F1ZXJ5RW5kKSArICIjIiArIGlk
ZW50aWZpZXIpOwogfQogCiB2b2lkIFVSTDo6cmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1VSTC5oIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vVVJMLmgKaW5kZXggNWFiZjA1ZmU3YzYzNzRmZDU1MmE4MDFkYzc4ZGEyZGI2YTZj
Y2VmZS4uYjJjMjNkZTQxMTc4NDAwMDIwNDMzZDNiMzRiZDY3YzE2YTU0NWRkMiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVVJMLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vVVJMLmgKQEAgLTE1OCw3ICsxNTgsNyBAQCBwdWJsaWM6CiAgICAgLy8gVVJMICh3aXRo
IG5vdGhpbmcgYWZ0ZXIgaXQpLiBUbyBjbGVhciB0aGUgcXVlcnksIHBhc3MgYSBudWxsIHN0cmlu
Zy4KICAgICB2b2lkIHNldFF1ZXJ5KGNvbnN0IFN0cmluZyYpOwogCi0gICAgdm9pZCBzZXRGcmFn
bWVudElkZW50aWZpZXIoY29uc3QgU3RyaW5nJik7CisgICAgdm9pZCBzZXRGcmFnbWVudElkZW50
aWZpZXIoU3RyaW5nVmlldyk7CiAgICAgdm9pZCByZW1vdmVGcmFnbWVudElkZW50aWZpZXIoKTsK
IAogICAgIFdFQkNPUkVfRVhQT1JUIGZyaWVuZCBib29sIGVxdWFsSWdub3JpbmdGcmFnbWVudElk
ZW50aWZpZXIoY29uc3QgVVJMJiwgY29uc3QgVVJMJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9yZXBsYXkvUmVwbGF5SW5wdXREaXNwYXRjaE1ldGhvZHMuY3BwIGIvU291cmNlL1dlYkNv
cmUvcmVwbGF5L1JlcGxheUlucHV0RGlzcGF0Y2hNZXRob2RzLmNwcAppbmRleCA4NDc1MmEyMzJm
ZWE2ZTM5ZWM1NzYxNDJmZTM1NzBjMWJjM2QyNDE2Li43ZjNjMzAwM2MxNTJhZWMwODJmYTk3ZjYw
MjZmNzg2ZmE5MmNmNGI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZXBsYXkvUmVwbGF5
SW5wdXREaXNwYXRjaE1ldGhvZHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlcGxheS9SZXBs
YXlJbnB1dERpc3BhdGNoTWV0aG9kcy5jcHAKQEAgLTUwLDggKzUwLDkgQEAgdm9pZCBFbmRTZWdt
ZW50U2VudGluZWw6OmRpc3BhdGNoKFJlcGxheUNvbnRyb2xsZXImKQogLy8gTmF2aWdhdGlvbiBp
bnB1dHMuCiB2b2lkIEluaXRpYWxOYXZpZ2F0aW9uOjpkaXNwYXRjaChSZXBsYXlDb250cm9sbGVy
JiBjb250cm9sbGVyKQogewotICAgIEZyYW1lJiBmcmFtZSA9IGNvbnRyb2xsZXIucGFnZSgpLm1h
aW5GcmFtZSgpOwotICAgIGZyYW1lLm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0
aW9uQ2hhbmdlKGZyYW1lLmRvY3VtZW50KCksIG1fc2VjdXJpdHlPcmlnaW4uZ2V0KCksIG1fdXJs
LCBtX3JlZmVycmVyKTsKKyAgICBhdXRvJiBmcmFtZSA9IGNvbnRyb2xsZXIucGFnZSgpLm1haW5G
cmFtZSgpOworICAgIEFTU0VSVChmcmFtZS5kb2N1bWVudCgpKTsKKyAgICBmcmFtZS5uYXZpZ2F0
aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5nZSgqZnJhbWUuZG9jdW1lbnQoKSwg
bV9zZWN1cml0eU9yaWdpbi5nZXQoKSwgbV91cmwsIG1fcmVmZXJyZXIpOwogfQogCiB2b2lkIEhh
bmRsZUtleVByZXNzOjpkaXNwYXRjaChSZXBsYXlDb250cm9sbGVyJiBjb250cm9sbGVyKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZFSW1hZ2VFbGVtZW50LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3N2Zy9TVkdGRUltYWdlRWxlbWVudC5jcHAKaW5kZXggMGIzMjcxMGI2ZmE5ZDQz
M2ZiODJhYTkxMTZiMjBkNjgxOGQ1YWZiMi4uYzJjZDZmNjViMzBiN2EwYmVmNDQ3OGQ1YWM0NzA5
ZWQ5Y2ZkMjFhMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZFSW1hZ2VFbGVt
ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRkVJbWFnZUVsZW1lbnQuY3BwCkBA
IC04OCw3ICs4OCw3IEBAIHZvaWQgU1ZHRkVJbWFnZUVsZW1lbnQ6OnJlcXVlc3RJbWFnZVJlc291
cmNlKCkKICAgICBvcHRpb25zLmNvbnRlbnRTZWN1cml0eVBvbGljeUltcG9zaXRpb24gPSBpc0lu
VXNlckFnZW50U2hhZG93VHJlZSgpID8gQ29udGVudFNlY3VyaXR5UG9saWN5SW1wb3NpdGlvbjo6
U2tpcFBvbGljeUNoZWNrIDogQ29udGVudFNlY3VyaXR5UG9saWN5SW1wb3NpdGlvbjo6RG9Qb2xp
Y3lDaGVjazsKIAogICAgIENhY2hlZFJlc291cmNlUmVxdWVzdCByZXF1ZXN0KFJlc291cmNlUmVx
dWVzdChkb2N1bWVudCgpLmNvbXBsZXRlVVJMKGhyZWYoKSkpLCBvcHRpb25zKTsKLSAgICByZXF1
ZXN0LnNldEluaXRpYXRvcih0aGlzKTsKKyAgICByZXF1ZXN0LnNldEluaXRpYXRvcigqdGhpcyk7
CiAgICAgbV9jYWNoZWRJbWFnZSA9IGRvY3VtZW50KCkuY2FjaGVkUmVzb3VyY2VMb2FkZXIoKS5y
ZXF1ZXN0SW1hZ2UoV1RGTW92ZShyZXF1ZXN0KSk7CiAKICAgICBpZiAobV9jYWNoZWRJbWFnZSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGb250RmFjZVVyaUVsZW1lbnQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvbnRGYWNlVXJpRWxlbWVudC5jcHAKaW5kZXggMzU2
NmFjNDY1MzI5ZjdmYTFjZDQ0NmVmMTdhMzY1ZDc1ZWY2ZjI0My4uNTZkNWU2M2MzYzE1YWFmNmY1
ZjZlOWI2OTk0YTkwZTZmZDYyMjM0NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NW
R0ZvbnRGYWNlVXJpRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvbnRG
YWNlVXJpRWxlbWVudC5jcHAKQEAgLTEwNSw3ICsxMDUsNyBAQCB2b2lkIFNWR0ZvbnRGYWNlVXJp
RWxlbWVudDo6bG9hZEZvbnQoKQogCiAgICAgICAgIENhY2hlZFJlc291cmNlTG9hZGVyJiBjYWNo
ZWRSZXNvdXJjZUxvYWRlciA9IGRvY3VtZW50KCkuY2FjaGVkUmVzb3VyY2VMb2FkZXIoKTsKICAg
ICAgICAgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QoUmVzb3VyY2VSZXF1ZXN0KGRvY3Vt
ZW50KCkuY29tcGxldGVVUkwoaHJlZikpLCBvcHRpb25zKTsKLSAgICAgICAgcmVxdWVzdC5zZXRJ
bml0aWF0b3IodGhpcyk7CisgICAgICAgIHJlcXVlc3Quc2V0SW5pdGlhdG9yKCp0aGlzKTsKICAg
ICAgICAgbV9jYWNoZWRGb250ID0gY2FjaGVkUmVzb3VyY2VMb2FkZXIucmVxdWVzdEZvbnQoV1RG
TW92ZShyZXF1ZXN0KSwgaXNTVkdGb250VGFyZ2V0KCp0aGlzKSk7CiAgICAgICAgIGlmIChtX2Nh
Y2hlZEZvbnQpIHsKICAgICAgICAgICAgIG1fY2FjaGVkRm9udC0+YWRkQ2xpZW50KCp0aGlzKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdVc2VFbGVtZW50LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3N2Zy9TVkdVc2VFbGVtZW50LmNwcAppbmRleCA4ZjUwMDk5MmY1NWViMjY1NjFh
NThmYmMxNTliNjIzMTI3YjE1ODY3Li5lNmI0ZWY2OTczZjM2MmFiOGRmZjU2ZTkzMDkxZGI5ZGZk
OGYyMTkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVXNlRWxlbWVudC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1VzZUVsZW1lbnQuY3BwCkBAIC01NzIsNyArNTcy
LDcgQEAgdm9pZCBTVkdVc2VFbGVtZW50Ojp1cGRhdGVFeHRlcm5hbERvY3VtZW50KCkKICAgICAg
ICAgb3B0aW9ucy5jb250ZW50U2VjdXJpdHlQb2xpY3lJbXBvc2l0aW9uID0gaXNJblVzZXJBZ2Vu
dFNoYWRvd1RyZWUoKSA/IENvbnRlbnRTZWN1cml0eVBvbGljeUltcG9zaXRpb246OlNraXBQb2xp
Y3lDaGVjayA6IENvbnRlbnRTZWN1cml0eVBvbGljeUltcG9zaXRpb246OkRvUG9saWN5Q2hlY2s7
CiAgICAgICAgIG9wdGlvbnMubW9kZSA9IEZldGNoT3B0aW9uczo6TW9kZTo6U2FtZU9yaWdpbjsK
ICAgICAgICAgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QgeyBSZXNvdXJjZVJlcXVlc3Qg
eyBleHRlcm5hbERvY3VtZW50VVJMIH0sIG9wdGlvbnMgfTsKLSAgICAgICAgcmVxdWVzdC5zZXRJ
bml0aWF0b3IodGhpcyk7CisgICAgICAgIHJlcXVlc3Quc2V0SW5pdGlhdG9yKCp0aGlzKTsKICAg
ICAgICAgbV9leHRlcm5hbERvY3VtZW50ID0gZG9jdW1lbnQoKS5jYWNoZWRSZXNvdXJjZUxvYWRl
cigpLnJlcXVlc3RTVkdEb2N1bWVudChXVEZNb3ZlKHJlcXVlc3QpKTsKICAgICAgICAgaWYgKG1f
ZXh0ZXJuYWxEb2N1bWVudCkKICAgICAgICAgICAgIG1fZXh0ZXJuYWxEb2N1bWVudC0+YWRkQ2xp
ZW50KCp0aGlzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvaW9zL1dlYkNvcmVTdXBwb3J0
L1dlYkNocm9tZUNsaWVudElPUy5oIGIvU291cmNlL1dlYktpdC9pb3MvV2ViQ29yZVN1cHBvcnQv
V2ViQ2hyb21lQ2xpZW50SU9TLmgKaW5kZXggNjNmNDMwNGEwMzYyZTUzMzUxYzk2ZDBkN2VkMDdk
OTFiMGEwNmY5NC4uNmNkNzAzZDg3M2JkODY1OTgwMDNlMzEzZTJlNGQ4MmRkYjg2MDc4MSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9pb3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50
SU9TLmgKKysrIGIvU291cmNlL1dlYktpdC9pb3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xp
ZW50SU9TLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA4LCAyMDA5
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOC0y
MDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwpAQCAtMjQsNzMgKzI0LDc3IEBACiAgKi8KIAogI2lmIFBMQVRGT1JNKElPUykK
KwogI2ltcG9ydCAiV2ViQ2hyb21lQ2xpZW50LmgiCiAKLWNsYXNzIFdlYkNocm9tZUNsaWVudElP
UyA6IHB1YmxpYyBXZWJDaHJvbWVDbGllbnQgeworY2xhc3MgV2ViQ2hyb21lQ2xpZW50SU9TIGZp
bmFsIDogcHVibGljIFdlYkNocm9tZUNsaWVudCB7CiBwdWJsaWM6Ci0gICAgV2ViQ2hyb21lQ2xp
ZW50SU9TKFdlYlZpZXcgKndlYlZpZXcpCisgICAgV2ViQ2hyb21lQ2xpZW50SU9TKFdlYlZpZXcq
IHdlYlZpZXcpCiAgICAgICAgIDogV2ViQ2hyb21lQ2xpZW50KHdlYlZpZXcpCi0gICAgICAgICwg
bV9mb3JtTm90aWZpY2F0aW9uU3VwcHJlc3Npb25zKDApIHsgfQotICAgIAotICAgIHZvaWQgc2V0
V2luZG93UmVjdChjb25zdCBXZWJDb3JlOjpGbG9hdFJlY3QmKSBvdmVycmlkZTsKLSAgICBXZWJD
b3JlOjpGbG9hdFJlY3Qgd2luZG93UmVjdCgpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0U3RhdHVz
YmFyVGV4dChjb25zdCBXVEY6OlN0cmluZyYpIG92ZXJyaWRlIHsgfQorICAgIHsKKyAgICB9CisK
K3ByaXZhdGU6CisgICAgdm9pZCBzZXRXaW5kb3dSZWN0KGNvbnN0IFdlYkNvcmU6OkZsb2F0UmVj
dCYpIGZpbmFsOworICAgIFdlYkNvcmU6OkZsb2F0UmVjdCB3aW5kb3dSZWN0KCkgZmluYWw7Cisg
ICAgdm9pZCBzZXRTdGF0dXNiYXJUZXh0KGNvbnN0IFdURjo6U3RyaW5nJikgZmluYWwgeyB9CiAK
LSAgICB2b2lkIGZvY3VzKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCB0YWtlRm9jdXMoV2ViQ29yZTo6
Rm9jdXNEaXJlY3Rpb24pIG92ZXJyaWRlIHsgfQorICAgIHZvaWQgZm9jdXMoKSBmaW5hbDsKKyAg
ICB2b2lkIHRha2VGb2N1cyhXZWJDb3JlOjpGb2N1c0RpcmVjdGlvbikgZmluYWwgeyB9CiAKLSAg
ICB2b2lkIHJ1bkphdmFTY3JpcHRBbGVydChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdURjo6U3Ry
aW5nJikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBydW5KYXZhU2NyaXB0Q29uZmlybShXZWJDb3JlOjpG
cmFtZSosIGNvbnN0IFdURjo6U3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBydW5KYXZhU2Ny
aXB0UHJvbXB0KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV1RGOjpTdHJpbmcmIG1lc3NhZ2UsIGNv
bnN0IFdURjo6U3RyaW5nJiBkZWZhdWx0VmFsdWUsIFdURjo6U3RyaW5nJiByZXN1bHQpIG92ZXJy
aWRlOworICAgIHZvaWQgcnVuSmF2YVNjcmlwdEFsZXJ0KFdlYkNvcmU6OkZyYW1lKiwgY29uc3Qg
V1RGOjpTdHJpbmcmKSBmaW5hbDsKKyAgICBib29sIHJ1bkphdmFTY3JpcHRDb25maXJtKFdlYkNv
cmU6OkZyYW1lKiwgY29uc3QgV1RGOjpTdHJpbmcmKSBmaW5hbDsKKyAgICBib29sIHJ1bkphdmFT
Y3JpcHRQcm9tcHQoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXVEY6OlN0cmluZyYgbWVzc2FnZSwg
Y29uc3QgV1RGOjpTdHJpbmcmIGRlZmF1bHRWYWx1ZSwgV1RGOjpTdHJpbmcmIHJlc3VsdCkgZmlu
YWw7CiAKLSAgICB2b2lkIHJ1bk9wZW5QYW5lbChXZWJDb3JlOjpGcmFtZSosIFBhc3NSZWZQdHI8
V2ViQ29yZTo6RmlsZUNob29zZXI+KSBvdmVycmlkZTsKKyAgICB2b2lkIHJ1bk9wZW5QYW5lbChX
ZWJDb3JlOjpGcmFtZSYsIFdlYkNvcmU6OkZpbGVDaG9vc2VyJikgZmluYWw7CiAKICNpZiBFTkFC
TEUoVE9VQ0hfRVZFTlRTKQotICAgIHZvaWQgZGlkUHJldmVudERlZmF1bHRGb3JFdmVudCgpIG92
ZXJyaWRlOworICAgIHZvaWQgZGlkUHJldmVudERlZmF1bHRGb3JFdmVudCgpIGZpbmFsOwogI2Vu
ZGlmCi0gICAgdm9pZCBkaWRSZWNlaXZlTW9iaWxlRG9jVHlwZShib29sKSBvdmVycmlkZTsKLSAg
ICB2b2lkIHNldE5lZWRzU2Nyb2xsTm90aWZpY2F0aW9ucyhXZWJDb3JlOjpGcmFtZSosIGJvb2wp
IG92ZXJyaWRlOwotICAgIHZvaWQgb2JzZXJ2ZWRDb250ZW50Q2hhbmdlKFdlYkNvcmU6OkZyYW1l
Kikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBjbGVhckNvbnRlbnRDaGFuZ2VPYnNlcnZlcnMoV2ViQ29y
ZTo6RnJhbWUqKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpGbG9hdFNpemUgc2NyZWVuU2l6ZSgp
IGNvbnN0IG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OkZsb2F0U2l6ZSBhdmFpbGFibGVTY3JlZW5T
aXplKCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFZpZXdwb3J0UHJvcGVydGll
c0RpZENoYW5nZShjb25zdCBXZWJDb3JlOjpWaWV3cG9ydEFyZ3VtZW50cyYpIGNvbnN0IG92ZXJy
aWRlOwotICAgIHZvaWQgbm90aWZ5UmV2ZWFsZWRTZWxlY3Rpb25CeVNjcm9sbGluZ0ZyYW1lKFdl
YkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBpc1N0b3BwaW5nKCkgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBkaWRMYXlvdXQoTGF5b3V0VHlwZSkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRT
dGFydE92ZXJmbG93U2Nyb2xsKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRFbmRPdmVyZmxvd1Nj
cm9sbCgpIG92ZXJyaWRlOwotCi0gICAgdm9pZCBzdXBwcmVzc0Zvcm1Ob3RpZmljYXRpb25zKCkg
b3ZlcnJpZGU7Ci0gICAgdm9pZCByZXN0b3JlRm9ybU5vdGlmaWNhdGlvbnMoKSBvdmVycmlkZTsK
KworICAgIHZvaWQgZGlkUmVjZWl2ZU1vYmlsZURvY1R5cGUoYm9vbCkgZmluYWw7CisgICAgdm9p
ZCBzZXROZWVkc1Njcm9sbE5vdGlmaWNhdGlvbnMoV2ViQ29yZTo6RnJhbWUqLCBib29sKSBmaW5h
bDsKKyAgICB2b2lkIG9ic2VydmVkQ29udGVudENoYW5nZShXZWJDb3JlOjpGcmFtZSopIGZpbmFs
OworICAgIHZvaWQgY2xlYXJDb250ZW50Q2hhbmdlT2JzZXJ2ZXJzKFdlYkNvcmU6OkZyYW1lKikg
ZmluYWw7CisgICAgV2ViQ29yZTo6RmxvYXRTaXplIHNjcmVlblNpemUoKSBjb25zdCBmaW5hbDsK
KyAgICBXZWJDb3JlOjpGbG9hdFNpemUgYXZhaWxhYmxlU2NyZWVuU2l6ZSgpIGNvbnN0IGZpbmFs
OworICAgIHZvaWQgZGlzcGF0Y2hWaWV3cG9ydFByb3BlcnRpZXNEaWRDaGFuZ2UoY29uc3QgV2Vi
Q29yZTo6Vmlld3BvcnRBcmd1bWVudHMmKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIG5vdGlmeVJl
dmVhbGVkU2VsZWN0aW9uQnlTY3JvbGxpbmdGcmFtZShXZWJDb3JlOjpGcmFtZSopIGZpbmFsOwor
ICAgIGJvb2wgaXNTdG9wcGluZygpIGZpbmFsOworICAgIHZvaWQgZGlkTGF5b3V0KExheW91dFR5
cGUpIGZpbmFsOworICAgIHZvaWQgZGlkU3RhcnRPdmVyZmxvd1Njcm9sbCgpIGZpbmFsOworICAg
IHZvaWQgZGlkRW5kT3ZlcmZsb3dTY3JvbGwoKSBmaW5hbDsKKworICAgIHZvaWQgc3VwcHJlc3NG
b3JtTm90aWZpY2F0aW9ucygpIGZpbmFsOworICAgIHZvaWQgcmVzdG9yZUZvcm1Ob3RpZmljYXRp
b25zKCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBlbGVtZW50RGlkRm9jdXMoY29uc3QgV2ViQ29y
ZTo6Tm9kZSopIG92ZXJyaWRlOwotICAgIHZvaWQgZWxlbWVudERpZEJsdXIoY29uc3QgV2ViQ29y
ZTo6Tm9kZSopIG92ZXJyaWRlOworICAgIHZvaWQgZWxlbWVudERpZEZvY3VzKGNvbnN0IFdlYkNv
cmU6Ok5vZGUqKSBmaW5hbDsKKyAgICB2b2lkIGVsZW1lbnREaWRCbHVyKGNvbnN0IFdlYkNvcmU6
Ok5vZGUqKSBmaW5hbDsKIAotICAgIHZvaWQgYXR0YWNoUm9vdEdyYXBoaWNzTGF5ZXIoV2ViQ29y
ZTo6RnJhbWUqLCBXZWJDb3JlOjpHcmFwaGljc0xheWVyKikgb3ZlcnJpZGU7CisgICAgdm9pZCBh
dHRhY2hSb290R3JhcGhpY3NMYXllcihXZWJDb3JlOjpGcmFtZSosIFdlYkNvcmU6OkdyYXBoaWNz
TGF5ZXIqKSBmaW5hbDsKIAotICAgIHZvaWQgZGlkRmx1c2hDb21wb3NpdGluZ0xheWVycygpIG92
ZXJyaWRlOworICAgIHZvaWQgZGlkRmx1c2hDb21wb3NpdGluZ0xheWVycygpIGZpbmFsOwogCi0g
ICAgdm9pZCB1cGRhdGVWaWV3cG9ydENvbnN0cmFpbmVkTGF5ZXJzKEhhc2hNYXA8UGxhdGZvcm1M
YXllciosIHN0ZDo6dW5pcXVlX3B0cjxXZWJDb3JlOjpWaWV3cG9ydENvbnN0cmFpbnRzPj4mLCBI
YXNoTWFwPFBsYXRmb3JtTGF5ZXIqLCBQbGF0Zm9ybUxheWVyKj4mKSBvdmVycmlkZTsKKyAgICB2
b2lkIHVwZGF0ZVZpZXdwb3J0Q29uc3RyYWluZWRMYXllcnMoSGFzaE1hcDxQbGF0Zm9ybUxheWVy
Kiwgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6OlZpZXdwb3J0Q29uc3RyYWludHM+PiYsIEhhc2hN
YXA8UGxhdGZvcm1MYXllciosIFBsYXRmb3JtTGF5ZXIqPiYpIGZpbmFsOwogCi0gICAgYm9vbCBm
ZXRjaEN1c3RvbUZpeGVkUG9zaXRpb25MYXlvdXRSZWN0KFdlYkNvcmU6OkludFJlY3QmKSBvdmVy
cmlkZTsKLSAgICB2b2lkIGFkZE9yVXBkYXRlU2Nyb2xsaW5nTGF5ZXIoV2ViQ29yZTo6Tm9kZSos
IFBsYXRmb3JtTGF5ZXIqLCBQbGF0Zm9ybUxheWVyKiwgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYs
IGJvb2wgYWxsb3dIb3Jpem9udGFsU2Nyb2xsYmFyLCBib29sIGFsbG93VmVydGljYWxTY3JvbGxi
YXIpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVtb3ZlU2Nyb2xsaW5nTGF5ZXIoV2ViQ29yZTo6Tm9k
ZSosIFBsYXRmb3JtTGF5ZXIqLCBQbGF0Zm9ybUxheWVyKikgb3ZlcnJpZGU7CisgICAgYm9vbCBm
ZXRjaEN1c3RvbUZpeGVkUG9zaXRpb25MYXlvdXRSZWN0KFdlYkNvcmU6OkludFJlY3QmKSBmaW5h
bDsKKyAgICB2b2lkIGFkZE9yVXBkYXRlU2Nyb2xsaW5nTGF5ZXIoV2ViQ29yZTo6Tm9kZSosIFBs
YXRmb3JtTGF5ZXIqLCBQbGF0Zm9ybUxheWVyKiwgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIGJv
b2wgYWxsb3dIb3Jpem9udGFsU2Nyb2xsYmFyLCBib29sIGFsbG93VmVydGljYWxTY3JvbGxiYXIp
IGZpbmFsOworICAgIHZvaWQgcmVtb3ZlU2Nyb2xsaW5nTGF5ZXIoV2ViQ29yZTo6Tm9kZSosIFBs
YXRmb3JtTGF5ZXIqLCBQbGF0Zm9ybUxheWVyKikgZmluYWw7CiAKLSAgICBib29sIHNlbGVjdEl0
ZW1Xcml0aW5nRGlyZWN0aW9uSXNOYXR1cmFsKCkgb3ZlcnJpZGU7Ci0gICAgYm9vbCBzZWxlY3RJ
dGVtQWxpZ25tZW50Rm9sbG93c01lbnVXcml0aW5nRGlyZWN0aW9uKCkgb3ZlcnJpZGU7Ci0gICAg
UmVmUHRyPFdlYkNvcmU6OlBvcHVwTWVudT4gY3JlYXRlUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVw
TWVudUNsaWVudCopIGNvbnN0IG92ZXJyaWRlOwotICAgIFJlZlB0cjxXZWJDb3JlOjpTZWFyY2hQ
b3B1cE1lbnU+IGNyZWF0ZVNlYXJjaFBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1lbnVDbGllbnQq
KSBjb25zdCBvdmVycmlkZTsKKyAgICBib29sIHNlbGVjdEl0ZW1Xcml0aW5nRGlyZWN0aW9uSXNO
YXR1cmFsKCkgZmluYWw7CisgICAgYm9vbCBzZWxlY3RJdGVtQWxpZ25tZW50Rm9sbG93c01lbnVX
cml0aW5nRGlyZWN0aW9uKCkgZmluYWw7CisgICAgUmVmUHRyPFdlYkNvcmU6OlBvcHVwTWVudT4g
Y3JlYXRlUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCopIGNvbnN0IGZpbmFsOwor
ICAgIFJlZlB0cjxXZWJDb3JlOjpTZWFyY2hQb3B1cE1lbnU+IGNyZWF0ZVNlYXJjaFBvcHVwTWVu
dShXZWJDb3JlOjpQb3B1cE1lbnVDbGllbnQqKSBjb25zdCBmaW5hbDsKIAotICAgIHZvaWQgd2Vi
QXBwT3JpZW50YXRpb25zVXBkYXRlZCgpIG92ZXJyaWRlOwotICAgIHZvaWQgZm9jdXNlZEVsZW1l
bnRDaGFuZ2VkKFdlYkNvcmU6OkVsZW1lbnQqKSBvdmVycmlkZTsKLSAgICB2b2lkIHNob3dQbGF5
YmFja1RhcmdldFBpY2tlcihib29sIGhhc1ZpZGVvKSBvdmVycmlkZTsKKyAgICB2b2lkIHdlYkFw
cE9yaWVudGF0aW9uc1VwZGF0ZWQoKSBmaW5hbDsKKyAgICB2b2lkIGZvY3VzZWRFbGVtZW50Q2hh
bmdlZChXZWJDb3JlOjpFbGVtZW50KikgZmluYWw7CisgICAgdm9pZCBzaG93UGxheWJhY2tUYXJn
ZXRQaWNrZXIoYm9vbCBoYXNWaWRlbykgZmluYWw7CiAKICNpZiBFTkFCTEUoT1JJRU5UQVRJT05f
RVZFTlRTKQotICAgIGludCBkZXZpY2VPcmllbnRhdGlvbigpIGNvbnN0IG92ZXJyaWRlOworICAg
IGludCBkZXZpY2VPcmllbnRhdGlvbigpIGNvbnN0IGZpbmFsOwogI2VuZGlmCiAKLXByaXZhdGU6
Ci0gICAgaW50IG1fZm9ybU5vdGlmaWNhdGlvblN1cHByZXNzaW9uczsKKyAgICBpbnQgbV9mb3Jt
Tm90aWZpY2F0aW9uU3VwcHJlc3Npb25zIHsgMCB9OwogfTsKKwogI2VuZGlmCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L2lvcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnRJT1MubW0g
Yi9Tb3VyY2UvV2ViS2l0L2lvcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnRJT1MubW0K
aW5kZXggMTFmODRlYjlmOTNkN2RmMWM4MmViODQyNTI0NGE2YWMxZDgyYzBlYy4uNTNlOGYwZWJi
ZTUyODQzMmEwZjllNGJlNGNmY2Q0MjNmZDczZTAzOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9pb3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50SU9TLm1tCisrKyBiL1NvdXJjZS9X
ZWJLaXQvaW9zL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudElPUy5tbQpAQCAtMSw1ICsx
LDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDgsIDIwMDkgQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yMyw5
ICsyMywxMCBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNp
ZiBQTEFURk9STShJT1MpCiAjaW1wb3J0ICJXZWJDaHJvbWVDbGllbnRJT1MuaCIKIAorI2lmIFBM
QVRGT1JNKElPUykKKwogI2ltcG9ydCAiRE9NTm9kZUludGVybmFsLmgiCiAjaW1wb3J0ICJQb3B1
cE1lbnVJT1MuaCIKICNpbXBvcnQgIlNlYXJjaFBvcHVwTWVudUlPUy5oIgpAQCAtNDMsOSArNDQs
NiBAQAogI2ltcG9ydCAiV2ViVmlldy5oIgogI2ltcG9ydCAiV2ViVmlld0ludGVybmFsLmgiCiAj
aW1wb3J0ICJXZWJWaWV3UHJpdmF0ZS5oIgotCi0jaW1wb3J0IDx3dGYvSGFzaE1hcC5oPgotI2lt
cG9ydCA8d3RmL1JlZlB0ci5oPgogI2ltcG9ydCA8V2ViQ29yZS9GaWxlQ2hvb3Nlci5oPgogI2lt
cG9ydCA8V2ViQ29yZS9GbG9hdFJlY3QuaD4KICNpbXBvcnQgPFdlYkNvcmUvRnJhbWUuaD4KQEAg
LTYxLDYgKzU5LDggQEAKICNpbXBvcnQgPFdlYkNvcmUvU2Nyb2xsaW5nQ29uc3RyYWludHMuaD4K
ICNpbXBvcnQgPFdlYkNvcmUvV0FLV2luZG93Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVU
aHJlYWRNZXNzYWdlLmg+CisjaW1wb3J0IDx3dGYvSGFzaE1hcC5oPgorI2ltcG9ydCA8d3RmL1Jl
ZlB0ci5oPgogCiBOU1N0cmluZyAqIGNvbnN0IFdlYk9wZW5QYW5lbENvbmZpZ3VyYXRpb25BbGxv
d011bHRpcGxlRmlsZXNLZXkgPSBAIldlYk9wZW5QYW5lbENvbmZpZ3VyYXRpb25BbGxvd011bHRp
cGxlRmlsZXNLZXkiOwogTlNTdHJpbmcgKiBjb25zdCBXZWJPcGVuUGFuZWxDb25maWd1cmF0aW9u
TWVkaWFDYXB0dXJlVHlwZUtleSA9IEAiV2ViT3BlblBhbmVsQ29uZmlndXJhdGlvbk1lZGlhQ2Fw
dHVyZVR5cGVLZXkiOwpAQCAtNjksOSArNjksMTAgQEAgTlNTdHJpbmcgKiBjb25zdCBXZWJPcGVu
UGFuZWxDb25maWd1cmF0aW9uTWltZVR5cGVzS2V5ID0gQCJXZWJPcGVuUGFuZWxDb25maWd1cmEK
IHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCiAjaWYgRU5BQkxFKE1FRElBX0NBUFRVUkUpCi1z
dGF0aWMgV2ViTWVkaWFDYXB0dXJlVHlwZSB3ZWJNZWRpYUNhcHR1cmVUeXBlKE1lZGlhQ2FwdHVy
ZVR5cGUgbWVkaWFDYXB0dXJlVHlwZSkKKworc3RhdGljIFdlYk1lZGlhQ2FwdHVyZVR5cGUgd2Vi
TWVkaWFDYXB0dXJlVHlwZShNZWRpYUNhcHR1cmVUeXBlIHR5cGUpCiB7Ci0gICAgc3dpdGNoICht
ZWRpYUNhcHR1cmVUeXBlKSB7CisgICAgc3dpdGNoICh0eXBlKSB7CiAgICAgY2FzZSBNZWRpYUNh
cHR1cmVUeXBlTm9uZToKICAgICAgICAgcmV0dXJuIFdlYk1lZGlhQ2FwdHVyZVR5cGVOb25lOwog
ICAgIGNhc2UgTWVkaWFDYXB0dXJlVHlwZVVzZXI6CkBAIC04Myw2ICs4NCw3IEBAIHN0YXRpYyBX
ZWJNZWRpYUNhcHR1cmVUeXBlIHdlYk1lZGlhQ2FwdHVyZVR5cGUoTWVkaWFDYXB0dXJlVHlwZSBt
ZWRpYUNhcHR1cmVUeXBlCiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgcmV0dXJuIFdl
Yk1lZGlhQ2FwdHVyZVR5cGVOb25lOwogfQorCiAjZW5kaWYKIAogdm9pZCBXZWJDaHJvbWVDbGll
bnRJT1M6OnNldFdpbmRvd1JlY3QoY29uc3QgV2ViQ29yZTo6RmxvYXRSZWN0JiByKQpAQCAtMTI0
LDE4ICsxMjYsMTUgQEAgYm9vbCBXZWJDaHJvbWVDbGllbnRJT1M6OnJ1bkphdmFTY3JpcHRQcm9t
cHQoRnJhbWUqIGZyYW1lLCBjb25zdCBXVEY6OlN0cmluZyYgcHIKICAgICByZXR1cm4gIXJlc3Vs
dC5pc051bGwoKTsKIH0KIAotdm9pZCBXZWJDaHJvbWVDbGllbnRJT1M6OnJ1bk9wZW5QYW5lbChG
cmFtZSosIFBhc3NSZWZQdHI8RmlsZUNob29zZXI+IGNob29zZXIpCit2b2lkIFdlYkNocm9tZUNs
aWVudElPUzo6cnVuT3BlblBhbmVsKEZyYW1lJiwgRmlsZUNob29zZXImIGNob29zZXIpCiB7Ci0g
ICAgY29uc3QgRmlsZUNob29zZXJTZXR0aW5ncyYgc2V0dGluZ3MgPSBjaG9vc2VyLT5zZXR0aW5n
cygpOworICAgIGF1dG8mIHNldHRpbmdzID0gY2hvb3Nlci5zZXR0aW5ncygpOwogICAgIEJPT0wg
YWxsb3dNdWx0aXBsZUZpbGVzID0gc2V0dGluZ3MuYWxsb3dzTXVsdGlwbGVGaWxlczsKLSAgICBW
ZWN0b3I8U3RyaW5nPiBhY2NlcHRNSU1FVHlwZXMgPSBzZXR0aW5ncy5hY2NlcHRNSU1FVHlwZXM7
CiAgICAgV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIgKmxpc3RlbmVyID0gW1tXZWJPcGVuUGFu
ZWxSZXN1bHRMaXN0ZW5lciBhbGxvY10gaW5pdFdpdGhDaG9vc2VyOmNob29zZXJdOwogCi0gICAg
Ly8gQ29udmVydCB0aGUgYWNjZXB0IGF0dHJpYnV0ZSBzdHJpbmcgaW50byBhIGxpc3Qgb2YgTUlN
RSB0eXBlcy4KLSAgICBzaXplX3QgbnVtTUlNRVR5cGVzID0gYWNjZXB0TUlNRVR5cGVzLnNpemUo
KTsKLSAgICBOU011dGFibGVBcnJheSAqbWltZVR5cGVzID0gW05TTXV0YWJsZUFycmF5IGFycmF5
V2l0aENhcGFjaXR5Om51bU1JTUVUeXBlc107Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBu
dW1NSU1FVHlwZXM7ICsraSkKLSAgICAgICAgW21pbWVUeXBlcyBhZGRPYmplY3Q6YWNjZXB0TUlN
RVR5cGVzW2ldXTsKKyAgICBOU011dGFibGVBcnJheSAqbWltZVR5cGVzID0gW05TTXV0YWJsZUFy
cmF5IGFycmF5V2l0aENhcGFjaXR5OnNldHRpbmdzLmFjY2VwdE1JTUVUeXBlcy5zaXplKCldOwor
ICAgIGZvciAoYXV0byYgdHlwZSA6IHNldHRpbmdzLmFjY2VwdE1JTUVUeXBlcykKKyAgICAgICAg
W21pbWVUeXBlcyBhZGRPYmplY3Q6dHlwZV07CiAKICAgICBXZWJNZWRpYUNhcHR1cmVUeXBlIGNh
cHR1cmVUeXBlID0gV2ViTWVkaWFDYXB0dXJlVHlwZU5vbmU7CiAjaWYgRU5BQkxFKE1FRElBX0NB
UFRVUkUpCkBAIC0xNTgsMTAgKzE1NywxMiBAQCB2b2lkIFdlYkNocm9tZUNsaWVudElPUzo6cnVu
T3BlblBhbmVsKEZyYW1lKiwgUGFzc1JlZlB0cjxGaWxlQ2hvb3Nlcj4gY2hvb3NlcikKIH0KIAog
I2lmIEVOQUJMRShJT1NfVE9VQ0hfRVZFTlRTKQorCiB2b2lkIFdlYkNocm9tZUNsaWVudElPUzo6
ZGlkUHJldmVudERlZmF1bHRGb3JFdmVudCgpCiB7CiAgICAgW1t3ZWJWaWV3KCkgX1VJS2l0RGVs
ZWdhdGVGb3J3YXJkZXJdIHdlYlZpZXdEaWRQcmV2ZW50RGVmYXVsdEZvckV2ZW50OndlYlZpZXco
KV07CiB9CisKICNlbmRpZgogCiB2b2lkIFdlYkNocm9tZUNsaWVudElPUzo6ZGlkUmVjZWl2ZU1v
YmlsZURvY1R5cGUoYm9vbCBpc01vYmlsZURvY3R5cGUpCkBAIC0zNTUsMTAgKzM1NiwxMiBAQCB2
b2lkIFdlYkNocm9tZUNsaWVudElPUzo6c2hvd1BsYXliYWNrVGFyZ2V0UGlja2VyKGJvb2wgaGFz
VmlkZW8pCiB9CiAKICNpZiBFTkFCTEUoT1JJRU5UQVRJT05fRVZFTlRTKQorCiBpbnQgV2ViQ2hy
b21lQ2xpZW50SU9TOjpkZXZpY2VPcmllbnRhdGlvbigpIGNvbnN0CiB7CiAgICAgcmV0dXJuIFtb
d2ViVmlldygpIF9VSUtpdERlbGVnYXRlRm9yd2FyZGVyXSBkZXZpY2VPcmllbnRhdGlvbl07CiB9
CisKICNlbmRpZgogCiAjZW5kaWYgLy8gUExBVEZPUk0oSU9TKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmggYi9Tb3VyY2UvV2Vi
S2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaAppbmRleCA0OGFiZTMwOGE4
ZmVmNzVhZjg2ODZlMWU1M2E4M2M4NzIxZjgyN2Y5Li5mNGYwOTZjNWQ2NDczZWJjNmU3YWJkNTgz
YjZkZmVmNGFhYTRkMTU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3Vw
cG9ydC9XZWJDaHJvbWVDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3Vw
cG9ydC9XZWJDaHJvbWVDbGllbnQuaApAQCAtMzMsMTMwICszMywxMzggQEAKIAogQGNsYXNzIFdl
YlZpZXc7CiAKKy8vIEZJWE1FOiBUaGlzIGNsYXNzIGlzIHVzZWQgYXMgYSBjb25jcmV0ZSBjbGFz
cyBvbiBNYWMsIGJ1dCBvbiBpT1MgdGhpcyBpcyBhbiBhYnN0cmFjdAorLy8gYmFzZSBjbGFzcyBv
ZiB0aGUgY29uY3JldGUgY2xhc3MsIFdlYkNocm9tZUNsaWVudElPUy4gQmVjYXVzZSBvZiB0aGF0
LCB0aGlzIGNsYXNzIGFuZAorLy8gbWFueSBvZiBpdHMgZnVuY3Rpb25zIGFyZSBub3QgbWFya2Vk
IGZpbmFsLiBUaGF0IGlzIG1lc3N5IHdheSB0byBvcmdhbml6ZSB0aGluZ3MuCiBjbGFzcyBXZWJD
aHJvbWVDbGllbnQgOiBwdWJsaWMgV2ViQ29yZTo6Q2hyb21lQ2xpZW50IHsKIHB1YmxpYzoKICAg
ICBXZWJDaHJvbWVDbGllbnQoV2ViVmlldyopOwotICAgIAotICAgIHZvaWQgY2hyb21lRGVzdHJv
eWVkKCkgb3ZlcnJpZGU7Ci0gICAgCisKKyAgICBXZWJWaWV3KiB3ZWJWaWV3KCkgY29uc3QgeyBy
ZXR1cm4gbV93ZWJWaWV3OyB9CisKK3ByaXZhdGU6CisgICAgdm9pZCBjaHJvbWVEZXN0cm95ZWQo
KSBmaW5hbDsKKwogICAgIHZvaWQgc2V0V2luZG93UmVjdChjb25zdCBXZWJDb3JlOjpGbG9hdFJl
Y3QmKSBvdmVycmlkZTsKICAgICBXZWJDb3JlOjpGbG9hdFJlY3Qgd2luZG93UmVjdCgpIG92ZXJy
aWRlOwogCi0gICAgV2ViQ29yZTo6RmxvYXRSZWN0IHBhZ2VSZWN0KCkgb3ZlcnJpZGU7CisgICAg
V2ViQ29yZTo6RmxvYXRSZWN0IHBhZ2VSZWN0KCkgZmluYWw7CiAKICAgICB2b2lkIGZvY3VzKCkg
b3ZlcnJpZGU7Ci0gICAgdm9pZCB1bmZvY3VzKCkgb3ZlcnJpZGU7Ci0gICAgCi0gICAgYm9vbCBj
YW5UYWtlRm9jdXMoV2ViQ29yZTo6Rm9jdXNEaXJlY3Rpb24pIG92ZXJyaWRlOworICAgIHZvaWQg
dW5mb2N1cygpIGZpbmFsOworCisgICAgYm9vbCBjYW5UYWtlRm9jdXMoV2ViQ29yZTo6Rm9jdXNE
aXJlY3Rpb24pIGZpbmFsOwogICAgIHZvaWQgdGFrZUZvY3VzKFdlYkNvcmU6OkZvY3VzRGlyZWN0
aW9uKSBvdmVycmlkZTsKIAogICAgIHZvaWQgZm9jdXNlZEVsZW1lbnRDaGFuZ2VkKFdlYkNvcmU6
OkVsZW1lbnQqKSBvdmVycmlkZTsKLSAgICB2b2lkIGZvY3VzZWRGcmFtZUNoYW5nZWQoV2ViQ29y
ZTo6RnJhbWUqKSBvdmVycmlkZTsKLQotICAgIFdlYkNvcmU6OlBhZ2UqIGNyZWF0ZVdpbmRvdyhX
ZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6OkZyYW1lTG9hZFJlcXVlc3QmLCBjb25zdCBX
ZWJDb3JlOjpXaW5kb3dGZWF0dXJlcyYsIGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24m
KSBvdmVycmlkZTsKLSAgICB2b2lkIHNob3coKSBvdmVycmlkZTsKLQotICAgIGJvb2wgY2FuUnVu
TW9kYWwoKSBvdmVycmlkZTsKLSAgICB2b2lkIHJ1bk1vZGFsKCkgb3ZlcnJpZGU7Ci0KLSAgICB2
b2lkIHNldFRvb2xiYXJzVmlzaWJsZShib29sKSBvdmVycmlkZTsKLSAgICBib29sIHRvb2xiYXJz
VmlzaWJsZSgpIG92ZXJyaWRlOwotICAgIAotICAgIHZvaWQgc2V0U3RhdHVzYmFyVmlzaWJsZShi
b29sKSBvdmVycmlkZTsKLSAgICBib29sIHN0YXR1c2JhclZpc2libGUoKSBvdmVycmlkZTsKLSAg
ICAKLSAgICB2b2lkIHNldFNjcm9sbGJhcnNWaXNpYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJv
b2wgc2Nyb2xsYmFyc1Zpc2libGUoKSBvdmVycmlkZTsKLSAgICAKLSAgICB2b2lkIHNldE1lbnVi
YXJWaXNpYmxlKGJvb2wpIG92ZXJyaWRlOwotICAgIGJvb2wgbWVudWJhclZpc2libGUoKSBvdmVy
cmlkZTsKLSAgICAKLSAgICB2b2lkIHNldFJlc2l6YWJsZShib29sKSBvdmVycmlkZTsKLSAgICAK
LSAgICB2b2lkIGFkZE1lc3NhZ2VUb0NvbnNvbGUoSlNDOjpNZXNzYWdlU291cmNlLCBKU0M6Ok1l
c3NhZ2VMZXZlbCwgY29uc3QgV1RGOjpTdHJpbmcmIG1lc3NhZ2UsIHVuc2lnbmVkIGxpbmVOdW1i
ZXIsIHVuc2lnbmVkIGNvbHVtbk51bWJlciwgY29uc3QgV1RGOjpTdHJpbmcmIHNvdXJjZVVSTCkg
b3ZlcnJpZGU7Ci0KLSAgICBib29sIGNhblJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbCgpIG92
ZXJyaWRlOwotICAgIGJvb2wgcnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsKGNvbnN0IFdURjo6
U3RyaW5nJiBtZXNzYWdlLCBXZWJDb3JlOjpGcmFtZSopIG92ZXJyaWRlOwotCi0gICAgdm9pZCBj
bG9zZVdpbmRvd1Nvb24oKSBvdmVycmlkZTsKKyAgICB2b2lkIGZvY3VzZWRGcmFtZUNoYW5nZWQo
V2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKKworICAgIFdlYkNvcmU6OlBhZ2UqIGNyZWF0ZVdpbmRv
dyhXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6OkZyYW1lTG9hZFJlcXVlc3QmLCBjb25z
dCBXZWJDb3JlOjpXaW5kb3dGZWF0dXJlcyYsIGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rp
b24mKSBmaW5hbDsKKyAgICB2b2lkIHNob3coKSBmaW5hbDsKKworICAgIGJvb2wgY2FuUnVuTW9k
YWwoKSBmaW5hbDsKKyAgICB2b2lkIHJ1bk1vZGFsKCkgZmluYWw7CisKKyAgICB2b2lkIHNldFRv
b2xiYXJzVmlzaWJsZShib29sKSBmaW5hbDsKKyAgICBib29sIHRvb2xiYXJzVmlzaWJsZSgpIGZp
bmFsOworCisgICAgdm9pZCBzZXRTdGF0dXNiYXJWaXNpYmxlKGJvb2wpIGZpbmFsOworICAgIGJv
b2wgc3RhdHVzYmFyVmlzaWJsZSgpIGZpbmFsOworCisgICAgdm9pZCBzZXRTY3JvbGxiYXJzVmlz
aWJsZShib29sKSBmaW5hbDsKKyAgICBib29sIHNjcm9sbGJhcnNWaXNpYmxlKCkgZmluYWw7CisK
KyAgICB2b2lkIHNldE1lbnViYXJWaXNpYmxlKGJvb2wpIGZpbmFsOworICAgIGJvb2wgbWVudWJh
clZpc2libGUoKSBmaW5hbDsKKworICAgIHZvaWQgc2V0UmVzaXphYmxlKGJvb2wpIGZpbmFsOwor
CisgICAgdm9pZCBhZGRNZXNzYWdlVG9Db25zb2xlKEpTQzo6TWVzc2FnZVNvdXJjZSwgSlNDOjpN
ZXNzYWdlTGV2ZWwsIGNvbnN0IFdURjo6U3RyaW5nJiBtZXNzYWdlLCB1bnNpZ25lZCBsaW5lTnVt
YmVyLCB1bnNpZ25lZCBjb2x1bW5OdW1iZXIsIGNvbnN0IFdURjo6U3RyaW5nJiBzb3VyY2VVUkwp
IGZpbmFsOworCisgICAgYm9vbCBjYW5SdW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoKSBmaW5h
bDsKKyAgICBib29sIHJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbChjb25zdCBXVEY6OlN0cmlu
ZyYgbWVzc2FnZSwgV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKKworICAgIHZvaWQgY2xvc2VXaW5k
b3dTb29uKCkgZmluYWw7CiAKICAgICB2b2lkIHJ1bkphdmFTY3JpcHRBbGVydChXZWJDb3JlOjpG
cmFtZSosIGNvbnN0IFdURjo6U3RyaW5nJikgb3ZlcnJpZGU7CiAgICAgYm9vbCBydW5KYXZhU2Ny
aXB0Q29uZmlybShXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdURjo6U3RyaW5nJikgb3ZlcnJpZGU7
CiAgICAgYm9vbCBydW5KYXZhU2NyaXB0UHJvbXB0KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV1RG
OjpTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFdURjo6U3RyaW5nJiBkZWZhdWx0VmFsdWUsIFdURjo6
U3RyaW5nJiByZXN1bHQpIG92ZXJyaWRlOwogCi0gICAgYm9vbCBzdXBwb3J0c0ltbWVkaWF0ZUlu
dmFsaWRhdGlvbigpIG92ZXJyaWRlOwotICAgIHZvaWQgaW52YWxpZGF0ZVJvb3RWaWV3KGNvbnN0
IFdlYkNvcmU6OkludFJlY3QmKSBvdmVycmlkZTsKLSAgICB2b2lkIGludmFsaWRhdGVDb250ZW50
c0FuZFJvb3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBvdmVycmlkZTsKLSAgICB2b2lk
IGludmFsaWRhdGVDb250ZW50c0ZvclNsb3dTY3JvbGwoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYp
IG92ZXJyaWRlOwotICAgIHZvaWQgc2Nyb2xsKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIHNjcm9s
bERlbHRhLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiByZWN0VG9TY3JvbGwsIGNvbnN0IFdlYkNv
cmU6OkludFJlY3QmIGNsaXBSZWN0KSBvdmVycmlkZTsKKyAgICBib29sIHN1cHBvcnRzSW1tZWRp
YXRlSW52YWxpZGF0aW9uKCkgZmluYWw7CisgICAgdm9pZCBpbnZhbGlkYXRlUm9vdFZpZXcoY29u
c3QgV2ViQ29yZTo6SW50UmVjdCYpIGZpbmFsOworICAgIHZvaWQgaW52YWxpZGF0ZUNvbnRlbnRz
QW5kUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGZpbmFsOworICAgIHZvaWQgaW52
YWxpZGF0ZUNvbnRlbnRzRm9yU2xvd1Njcm9sbChjb25zdCBXZWJDb3JlOjpJbnRSZWN0JikgZmlu
YWw7CisgICAgdm9pZCBzY3JvbGwoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgc2Nyb2xsRGVsdGEs
IGNvbnN0IFdlYkNvcmU6OkludFJlY3QmIHJlY3RUb1Njcm9sbCwgY29uc3QgV2ViQ29yZTo6SW50
UmVjdCYgY2xpcFJlY3QpIGZpbmFsOworCisgICAgV2ViQ29yZTo6SW50UG9pbnQgc2NyZWVuVG9S
b290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIGNvbnN0IGZpbmFsOworICAgIFdlYkNv
cmU6OkludFJlY3Qgcm9vdFZpZXdUb1NjcmVlbihjb25zdCBXZWJDb3JlOjpJbnRSZWN0JikgY29u
c3QgZmluYWw7CiAKLSAgICBXZWJDb3JlOjpJbnRQb2ludCBzY3JlZW5Ub1Jvb3RWaWV3KGNvbnN0
IFdlYkNvcmU6OkludFBvaW50JikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6SW50UmVj
dCByb290Vmlld1RvU2NyZWVuKGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBjb25zdCBvdmVycmlk
ZTsKICNpZiBQTEFURk9STShJT1MpCi0gICAgV2ViQ29yZTo6SW50UG9pbnQgYWNjZXNzaWJpbGl0
eVNjcmVlblRvUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKSBjb25zdCBvdmVycmlk
ZTsKLSAgICBXZWJDb3JlOjpJbnRSZWN0IHJvb3RWaWV3VG9BY2Nlc3NpYmlsaXR5U2NyZWVuKGNv
bnN0IFdlYkNvcmU6OkludFJlY3QmKSBjb25zdCBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpJbnRQ
b2ludCBhY2Nlc3NpYmlsaXR5U2NyZWVuVG9Sb290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRQb2lu
dCYpIGNvbnN0IGZpbmFsOworICAgIFdlYkNvcmU6OkludFJlY3Qgcm9vdFZpZXdUb0FjY2Vzc2li
aWxpdHlTY3JlZW4oY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGNvbnN0IGZpbmFsOwogI2VuZGlm
Ci0gICAgUGxhdGZvcm1QYWdlQ2xpZW50IHBsYXRmb3JtUGFnZUNsaWVudCgpIGNvbnN0IG92ZXJy
aWRlOwotICAgIHZvaWQgY29udGVudHNTaXplQ2hhbmdlZChXZWJDb3JlOjpGcmFtZSosIGNvbnN0
IFdlYkNvcmU6OkludFNpemUmKSBjb25zdCBvdmVycmlkZTsKLSAgICB2b2lkIHNjcm9sbFJlY3RJ
bnRvVmlldyhjb25zdCBXZWJDb3JlOjpJbnRSZWN0JikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgCisK
KyAgICBQbGF0Zm9ybVBhZ2VDbGllbnQgcGxhdGZvcm1QYWdlQ2xpZW50KCkgY29uc3QgZmluYWw7
CisgICAgdm9pZCBjb250ZW50c1NpemVDaGFuZ2VkKFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV2Vi
Q29yZTo6SW50U2l6ZSYpIGNvbnN0IGZpbmFsOworICAgIHZvaWQgc2Nyb2xsUmVjdEludG9WaWV3
KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBjb25zdCBmaW5hbDsKKwogICAgIHZvaWQgc2V0U3Rh
dHVzYmFyVGV4dChjb25zdCBXVEY6OlN0cmluZyYpIG92ZXJyaWRlOwogCi0gICAgdm9pZCBzY3Jv
bGxiYXJzTW9kZURpZENoYW5nZSgpIGNvbnN0IG92ZXJyaWRlIHsgfQotICAgIGJvb2wgc2hvdWxk
VW5hdmFpbGFibGVQbHVnaW5NZXNzYWdlQmVCdXR0b24oV2ViQ29yZTo6UmVuZGVyRW1iZWRkZWRP
YmplY3Q6OlBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKSBjb25zdCBvdmVycmlkZTsKLSAgICB2
b2lkIHVuYXZhaWxhYmxlUGx1Z2luQnV0dG9uQ2xpY2tlZChXZWJDb3JlOjpFbGVtZW50KiwgV2Vi
Q29yZTo6UmVuZGVyRW1iZWRkZWRPYmplY3Q6OlBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKSBj
b25zdCBvdmVycmlkZTsKLSAgICB2b2lkIG1vdXNlRGlkTW92ZU92ZXJFbGVtZW50KGNvbnN0IFdl
YkNvcmU6OkhpdFRlc3RSZXN1bHQmLCB1bnNpZ25lZCBtb2RpZmllckZsYWdzKSBvdmVycmlkZTsK
KyAgICB2b2lkIHNjcm9sbGJhcnNNb2RlRGlkQ2hhbmdlKCkgY29uc3QgZmluYWwgeyB9CisgICAg
Ym9vbCBzaG91bGRVbmF2YWlsYWJsZVBsdWdpbk1lc3NhZ2VCZUJ1dHRvbihXZWJDb3JlOjpSZW5k
ZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24pIGNvbnN0IGZpbmFs
OworICAgIHZvaWQgdW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2VkKFdlYkNvcmU6OkVsZW1l
bnQqLCBXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2luVW5hdmFpbGFiaWxpdHlS
ZWFzb24pIGNvbnN0IGZpbmFsOworICAgIHZvaWQgbW91c2VEaWRNb3ZlT3ZlckVsZW1lbnQoY29u
c3QgV2ViQ29yZTo6SGl0VGVzdFJlc3VsdCYsIHVuc2lnbmVkIG1vZGlmaWVyRmxhZ3MpIGZpbmFs
OwogCi0gICAgdm9pZCBzZXRUb29sVGlwKGNvbnN0IFdURjo6U3RyaW5nJiwgV2ViQ29yZTo6VGV4
dERpcmVjdGlvbikgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRUb29sVGlwKGNvbnN0IFdURjo6U3Ry
aW5nJiwgV2ViQ29yZTo6VGV4dERpcmVjdGlvbikgZmluYWw7CiAKLSAgICB2b2lkIHByaW50KFdl
YkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBleGNlZWRlZERhdGFiYXNlUXVvdGEo
V2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXVEY6OlN0cmluZyYgZGF0YWJhc2VOYW1lLCBXZWJDb3Jl
OjpEYXRhYmFzZURldGFpbHMpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVhY2hlZE1heEFwcENhY2hl
U2l6ZShpbnQ2NF90IHNwYWNlTmVlZGVkKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlYWNoZWRBcHBs
aWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4qLCBpbnQ2NF90
IHRvdGFsU3BhY2VOZWVkZWQpIG92ZXJyaWRlOworICAgIHZvaWQgcHJpbnQoV2ViQ29yZTo6RnJh
bWUqKSBmaW5hbDsKKyAgICB2b2lkIGV4Y2VlZGVkRGF0YWJhc2VRdW90YShXZWJDb3JlOjpGcmFt
ZSosIGNvbnN0IFdURjo6U3RyaW5nJiBkYXRhYmFzZU5hbWUsIFdlYkNvcmU6OkRhdGFiYXNlRGV0
YWlscykgZmluYWw7CisgICAgdm9pZCByZWFjaGVkTWF4QXBwQ2FjaGVTaXplKGludDY0X3Qgc3Bh
Y2VOZWVkZWQpIGZpbmFsOworICAgIHZvaWQgcmVhY2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5R
dW90YShXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiosIGludDY0X3QgdG90YWxTcGFjZU5lZWRlZCkg
ZmluYWw7CiAKICNpZiBFTkFCTEUoREFTSEJPQVJEX1NVUFBPUlQpCi0gICAgdm9pZCBhbm5vdGF0
ZWRSZWdpb25zQ2hhbmdlZCgpIG92ZXJyaWRlOworICAgIHZvaWQgYW5ub3RhdGVkUmVnaW9uc0No
YW5nZWQoKSBmaW5hbDsKICNlbmRpZgogCi0gICAgdm9pZCBydW5PcGVuUGFuZWwoV2ViQ29yZTo6
RnJhbWUqLCBQYXNzUmVmUHRyPFdlYkNvcmU6OkZpbGVDaG9vc2VyPikgb3ZlcnJpZGU7Ci0gICAg
dm9pZCBsb2FkSWNvbkZvckZpbGVzKGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mLCBXZWJDb3Jl
OjpGaWxlSWNvbkxvYWRlciYpIG92ZXJyaWRlOworICAgIHZvaWQgcnVuT3BlblBhbmVsKFdlYkNv
cmU6OkZyYW1lJiwgV2ViQ29yZTo6RmlsZUNob29zZXImKSBvdmVycmlkZTsKKyAgICB2b2lkIGxv
YWRJY29uRm9yRmlsZXMoY29uc3QgVmVjdG9yPFdURjo6U3RyaW5nPiYsIFdlYkNvcmU6OkZpbGVJ
Y29uTG9hZGVyJikgZmluYWw7CiAKICNpZiAhUExBVEZPUk0oSU9TKQotICAgIHZvaWQgc2V0Q3Vy
c29yKGNvbnN0IFdlYkNvcmU6OkN1cnNvciYpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0Q3Vyc29y
SGlkZGVuVW50aWxNb3VzZU1vdmVzKGJvb2wpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0Q3Vyc29y
KGNvbnN0IFdlYkNvcmU6OkN1cnNvciYpIGZpbmFsOworICAgIHZvaWQgc2V0Q3Vyc29ySGlkZGVu
VW50aWxNb3VzZU1vdmVzKGJvb2wpIGZpbmFsOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoSU5QVVRf
VFlQRV9DT0xPUikKLSAgICBzdGQ6OnVuaXF1ZV9wdHI8V2ViQ29yZTo6Q29sb3JDaG9vc2VyPiBj
cmVhdGVDb2xvckNob29zZXIoV2ViQ29yZTo6Q29sb3JDaG9vc2VyQ2xpZW50KiwgY29uc3QgV2Vi
Q29yZTo6Q29sb3ImKSBvdmVycmlkZTsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8V2ViQ29yZTo6Q29s
b3JDaG9vc2VyPiBjcmVhdGVDb2xvckNob29zZXIoV2ViQ29yZTo6Q29sb3JDaG9vc2VyQ2xpZW50
KiwgY29uc3QgV2ViQ29yZTo6Q29sb3ImKSBmaW5hbDsKICNlbmRpZgotICAgIAorCiAjaWYgRU5B
QkxFKFBPSU5URVJfTE9DSykKLSAgICBib29sIHJlcXVlc3RQb2ludGVyTG9jaygpIG92ZXJyaWRl
OwotICAgIHZvaWQgcmVxdWVzdFBvaW50ZXJVbmxvY2soKSBvdmVycmlkZTsKKyAgICBib29sIHJl
cXVlc3RQb2ludGVyTG9jaygpIGZpbmFsOworICAgIHZvaWQgcmVxdWVzdFBvaW50ZXJVbmxvY2so
KSBmaW5hbDsKICNlbmRpZgogCi0gICAgV2ViQ29yZTo6S2V5Ym9hcmRVSU1vZGUga2V5Ym9hcmRV
SU1vZGUoKSBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpLZXlib2FyZFVJTW9kZSBrZXlib2FyZFVJ
TW9kZSgpIGZpbmFsOworCisgICAgTlNSZXNwb25kZXIgKmZpcnN0UmVzcG9uZGVyKCkgZmluYWw7
CisgICAgdm9pZCBtYWtlRmlyc3RSZXNwb25kZXIoTlNSZXNwb25kZXIgKikgZmluYWw7CiAKLSAg
ICBOU1Jlc3BvbmRlciAqZmlyc3RSZXNwb25kZXIoKSBvdmVycmlkZTsKLSAgICB2b2lkIG1ha2VG
aXJzdFJlc3BvbmRlcihOU1Jlc3BvbmRlciAqKSBvdmVycmlkZTsKKyAgICB2b2lkIGVuYWJsZVN1
ZGRlblRlcm1pbmF0aW9uKCkgZmluYWw7CisgICAgdm9pZCBkaXNhYmxlU3VkZGVuVGVybWluYXRp
b24oKSBmaW5hbDsKIAotICAgIHZvaWQgZW5hYmxlU3VkZGVuVGVybWluYXRpb24oKSBvdmVycmlk
ZTsKLSAgICB2b2lkIGRpc2FibGVTdWRkZW5UZXJtaW5hdGlvbigpIG92ZXJyaWRlOwotICAgIAot
ICAgIGJvb2wgc2hvdWxkUmVwbGFjZVdpdGhHZW5lcmF0ZWRGaWxlRm9yVXBsb2FkKGNvbnN0IFdU
Rjo6U3RyaW5nJiBwYXRoLCBXVEY6OlN0cmluZyAmZ2VuZXJhdGVkRmlsZW5hbWUpIG92ZXJyaWRl
OwotICAgIFdURjo6U3RyaW5nIGdlbmVyYXRlUmVwbGFjZW1lbnRGaWxlKGNvbnN0IFdURjo6U3Ry
aW5nJiBwYXRoKSBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZFJlcGxhY2VXaXRoR2VuZXJhdGVk
RmlsZUZvclVwbG9hZChjb25zdCBXVEY6OlN0cmluZyYgcGF0aCwgV1RGOjpTdHJpbmcgJmdlbmVy
YXRlZEZpbGVuYW1lKSBmaW5hbDsKKyAgICBXVEY6OlN0cmluZyBnZW5lcmF0ZVJlcGxhY2VtZW50
RmlsZShjb25zdCBXVEY6OlN0cmluZyYgcGF0aCkgZmluYWw7CiAKICAgICB2b2lkIGVsZW1lbnRE
aWRGb2N1cyhjb25zdCBXZWJDb3JlOjpOb2RlKikgb3ZlcnJpZGU7CiAgICAgdm9pZCBlbGVtZW50
RGlkQmx1cihjb25zdCBXZWJDb3JlOjpOb2RlKikgb3ZlcnJpZGU7CiAKLSAgICBib29sIHNob3Vs
ZFBhaW50RW50aXJlQ29udGVudHMoKSBjb25zdCBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZFBh
aW50RW50aXJlQ29udGVudHMoKSBjb25zdCBmaW5hbDsKIAogICAgIHZvaWQgYXR0YWNoUm9vdEdy
YXBoaWNzTGF5ZXIoV2ViQ29yZTo6RnJhbWUqLCBXZWJDb3JlOjpHcmFwaGljc0xheWVyKikgb3Zl
cnJpZGU7Ci0gICAgdm9pZCBhdHRhY2hWaWV3T3ZlcmxheUdyYXBoaWNzTGF5ZXIoV2ViQ29yZTo6
RnJhbWUqLCBXZWJDb3JlOjpHcmFwaGljc0xheWVyKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRO
ZWVkc09uZVNob3REcmF3aW5nU3luY2hyb25pemF0aW9uKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBz
Y2hlZHVsZUNvbXBvc2l0aW5nTGF5ZXJGbHVzaCgpIG92ZXJyaWRlOworICAgIHZvaWQgYXR0YWNo
Vmlld092ZXJsYXlHcmFwaGljc0xheWVyKFdlYkNvcmU6OkZyYW1lKiwgV2ViQ29yZTo6R3JhcGhp
Y3NMYXllciopIGZpbmFsOworICAgIHZvaWQgc2V0TmVlZHNPbmVTaG90RHJhd2luZ1N5bmNocm9u
aXphdGlvbigpIGZpbmFsOworICAgIHZvaWQgc2NoZWR1bGVDb21wb3NpdGluZ0xheWVyRmx1c2go
KSBmaW5hbDsKIAotICAgIENvbXBvc2l0aW5nVHJpZ2dlckZsYWdzIGFsbG93ZWRDb21wb3NpdGlu
Z1RyaWdnZXJzKCkgY29uc3Qgb3ZlcnJpZGUKKyAgICBDb21wb3NpdGluZ1RyaWdnZXJGbGFncyBh
bGxvd2VkQ29tcG9zaXRpbmdUcmlnZ2VycygpIGNvbnN0IGZpbmFsCiAgICAgewogICAgICAgICBy
ZXR1cm4gc3RhdGljX2Nhc3Q8Q29tcG9zaXRpbmdUcmlnZ2VyRmxhZ3M+KAogICAgICAgICAgICAg
VGhyZWVEVHJhbnNmb3JtVHJpZ2dlciB8CkBAIC0xNjksNTIgKzE3Nyw0OSBAQCBwdWJsaWM6CiAg
ICAgICAgICAgICBBbmltYXRpb25UcmlnZ2VyKTsKICAgICB9CiAKLSNpZiBFTkFCTEUoVklERU8p
Ci0jaWYgUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCi0g
ICAgdm9pZCBzZXRVcFBsYXliYWNrQ29udHJvbHNNYW5hZ2VyKFdlYkNvcmU6OkhUTUxNZWRpYUVs
ZW1lbnQmKSBvdmVycmlkZTsKLSAgICB2b2lkIGNsZWFyUGxheWJhY2tDb250cm9sc01hbmFnZXIo
KSBvdmVycmlkZTsKKyNpZiBFTkFCTEUoVklERU8pICYmIFBMQVRGT1JNKE1BQykgJiYgRU5BQkxF
KFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQorICAgIHZvaWQgc2V0VXBQbGF5YmFja0NvbnRyb2xz
TWFuYWdlcihXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50JikgZmluYWw7CisgICAgdm9pZCBjbGVh
clBsYXliYWNrQ29udHJvbHNNYW5hZ2VyKCkgZmluYWw7CiAjZW5kaWYKIAotICAgIGJvb2wgc3Vw
cG9ydHNWaWRlb0Z1bGxzY3JlZW4oV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRl
b0Z1bGxzY3JlZW5Nb2RlKSBvdmVycmlkZTsKLSAgICB2b2lkIGVudGVyVmlkZW9GdWxsc2NyZWVu
Rm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmLCBXZWJDb3JlOjpIVE1M
TWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIG92ZXJyaWRlOwotICAgIHZv
aWQgZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlkZW9F
bGVtZW50Jikgb3ZlcnJpZGU7CisjaWYgRU5BQkxFKFZJREVPKQorICAgIGJvb2wgc3VwcG9ydHNW
aWRlb0Z1bGxzY3JlZW4oV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxz
Y3JlZW5Nb2RlKSBmaW5hbDsKKyAgICB2b2lkIGVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9F
bGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmLCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVt
ZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIGZpbmFsOworICAgIHZvaWQgZXhpdFZpZGVv
RnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50JikgZmlu
YWw7CiAjZW5kaWYKLSAgICAKKwogI2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQSSkKLSAgICBib29s
IHN1cHBvcnRzRnVsbFNjcmVlbkZvckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6RWxlbWVudCosIGJv
b2wgd2l0aEtleWJvYXJkKSBvdmVycmlkZTsKLSAgICB2b2lkIGVudGVyRnVsbFNjcmVlbkZvckVs
ZW1lbnQoV2ViQ29yZTo6RWxlbWVudCopIG92ZXJyaWRlOwotICAgIHZvaWQgZXhpdEZ1bGxTY3Jl
ZW5Gb3JFbGVtZW50KFdlYkNvcmU6OkVsZW1lbnQqKSBvdmVycmlkZTsKKyAgICBib29sIHN1cHBv
cnRzRnVsbFNjcmVlbkZvckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6RWxlbWVudCosIGJvb2wgd2l0
aEtleWJvYXJkKSBmaW5hbDsKKyAgICB2b2lkIGVudGVyRnVsbFNjcmVlbkZvckVsZW1lbnQoV2Vi
Q29yZTo6RWxlbWVudCopIGZpbmFsOworICAgIHZvaWQgZXhpdEZ1bGxTY3JlZW5Gb3JFbGVtZW50
KFdlYkNvcmU6OkVsZW1lbnQqKSBmaW5hbDsKICNlbmRpZgogCiAgICAgYm9vbCBzZWxlY3RJdGVt
V3JpdGluZ0RpcmVjdGlvbklzTmF0dXJhbCgpIG92ZXJyaWRlOwogICAgIGJvb2wgc2VsZWN0SXRl
bUFsaWdubWVudEZvbGxvd3NNZW51V3JpdGluZ0RpcmVjdGlvbigpIG92ZXJyaWRlOwotICAgIGJv
b2wgaGFzT3BlbmVkUG9wdXAoKSBjb25zdCBvdmVycmlkZTsKKyAgICBib29sIGhhc09wZW5lZFBv
cHVwKCkgY29uc3QgZmluYWw7CiAgICAgUmVmUHRyPFdlYkNvcmU6OlBvcHVwTWVudT4gY3JlYXRl
UG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCopIGNvbnN0IG92ZXJyaWRlOwogICAg
IFJlZlB0cjxXZWJDb3JlOjpTZWFyY2hQb3B1cE1lbnU+IGNyZWF0ZVNlYXJjaFBvcHVwTWVudShX
ZWJDb3JlOjpQb3B1cE1lbnVDbGllbnQqKSBjb25zdCBvdmVycmlkZTsKIAotICAgIHZvaWQgd2hl
ZWxFdmVudEhhbmRsZXJzQ2hhbmdlZChib29sKSBvdmVycmlkZSB7IH0KKyAgICB2b2lkIHdoZWVs
RXZlbnRIYW5kbGVyc0NoYW5nZWQoYm9vbCkgZmluYWwgeyB9CiAKICNpZiBFTkFCTEUoU1VCVExF
X0NSWVBUTykKLSAgICBib29sIHdyYXBDcnlwdG9LZXkoY29uc3QgVmVjdG9yPHVpbnQ4X3Q+Jiwg
VmVjdG9yPHVpbnQ4X3Q+JikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgYm9vbCB1bndyYXBDcnlwdG9L
ZXkoY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiwgVmVjdG9yPHVpbnQ4X3Q+JikgY29uc3Qgb3ZlcnJp
ZGU7CisgICAgYm9vbCB3cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90PiYsIFZlY3Rv
cjx1aW50OF90PiYpIGNvbnN0IGZpbmFsOworICAgIGJvb2wgdW53cmFwQ3J5cHRvS2V5KGNvbnN0
IFZlY3Rvcjx1aW50OF90PiYsIFZlY3Rvcjx1aW50OF90PiYpIGNvbnN0IGZpbmFsOwogI2VuZGlm
CiAKICNpZiBFTkFCTEUoU0VSVklDRV9DT05UUk9MUykKLSAgICB2b2lkIGhhbmRsZVNlbGVjdGlv
blNlcnZpY2VDbGljayhXZWJDb3JlOjpGcmFtZVNlbGVjdGlvbiYsIGNvbnN0IFZlY3RvcjxTdHJp
bmc+JiB0ZWxlcGhvbmVOdW1iZXJzLCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpIG92ZXJyaWRl
OwotICAgIGJvb2wgaGFzUmVsZXZhbnRTZWxlY3Rpb25TZXJ2aWNlcyhib29sIGlzVGV4dE9ubHkp
IGNvbnN0IG92ZXJyaWRlOworICAgIHZvaWQgaGFuZGxlU2VsZWN0aW9uU2VydmljZUNsaWNrKFdl
YkNvcmU6OkZyYW1lU2VsZWN0aW9uJiwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHRlbGVwaG9uZU51
bWJlcnMsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JikgZmluYWw7CisgICAgYm9vbCBoYXNSZWxl
dmFudFNlbGVjdGlvblNlcnZpY2VzKGJvb2wgaXNUZXh0T25seSkgY29uc3QgZmluYWw7CiAjZW5k
aWYKIAotICAgIFdlYlZpZXcqIHdlYlZpZXcoKSBjb25zdCB7IHJldHVybiBtX3dlYlZpZXc7IH0K
LQogI2lmIEVOQUJMRShXSVJFTEVTU19QTEFZQkFDS19UQVJHRVQpICYmICFQTEFURk9STShJT1Mp
Ci0gICAgdm9pZCBhZGRQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudCh1aW50NjRfdCAvKmNvbnRl
eHRJZCovKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlbW92ZVBsYXliYWNrVGFyZ2V0UGlja2VyQ2xp
ZW50KHVpbnQ2NF90IC8qY29udGV4dElkKi8pIG92ZXJyaWRlOwotICAgIHZvaWQgc2hvd1BsYXli
YWNrVGFyZ2V0UGlja2VyKHVpbnQ2NF90IC8qY29udGV4dElkKi8sIGNvbnN0IFdlYkNvcmU6Oklu
dFBvaW50JiwgYm9vbCAvKiBoYXNWaWRlbyAqLykgb3ZlcnJpZGU7Ci0gICAgdm9pZCBwbGF5YmFj
a1RhcmdldFBpY2tlckNsaWVudFN0YXRlRGlkQ2hhbmdlKHVpbnQ2NF90IC8qY29udGV4dElkKi8s
IFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncykgb3ZlcnJpZGU7Ci0gICAg
dm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVuYWJsZWQoYm9vbCkgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlclN0YXRlKGNvbnN0
IFN0cmluZyYsIFdlYkNvcmU6Ok1lZGlhUGxheWJhY2tUYXJnZXRDb250ZXh0OjpTdGF0ZSkgb3Zl
cnJpZGU7CisgICAgdm9pZCBhZGRQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudCh1aW50NjRfdCAv
KmNvbnRleHRJZCovKSBmaW5hbDsKKyAgICB2b2lkIHJlbW92ZVBsYXliYWNrVGFyZ2V0UGlja2Vy
Q2xpZW50KHVpbnQ2NF90IC8qY29udGV4dElkKi8pIGZpbmFsOworICAgIHZvaWQgc2hvd1BsYXli
YWNrVGFyZ2V0UGlja2VyKHVpbnQ2NF90IC8qY29udGV4dElkKi8sIGNvbnN0IFdlYkNvcmU6Oklu
dFBvaW50JiwgYm9vbCAvKiBoYXNWaWRlbyAqLykgZmluYWw7CisgICAgdm9pZCBwbGF5YmFja1Rh
cmdldFBpY2tlckNsaWVudFN0YXRlRGlkQ2hhbmdlKHVpbnQ2NF90IC8qY29udGV4dElkKi8sIFdl
YkNvcmU6Ok1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncykgZmluYWw7CisgICAgdm9pZCBz
ZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVuYWJsZWQoYm9vbCkgZmluYWw7CisgICAg
dm9pZCBzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlclN0YXRlKGNvbnN0IFN0cmluZyYs
IFdlYkNvcmU6Ok1lZGlhUGxheWJhY2tUYXJnZXRDb250ZXh0OjpTdGF0ZSkgZmluYWw7CiAjZW5k
aWYKIAotcHJpdmF0ZToKICAgICBXZWJWaWV3ICptX3dlYlZpZXc7CiB9OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50Lm1tIGIvU291
cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50Lm1tCmluZGV4IGQ3
ZWM4Y2IxYjQ2YWI3ODE4ZTBkZTIyNDEyNmNhYTVhMDY1ZGEyOTEuLmE1MmE0NjAxYzE2NDdkZTQ1
ZDQwOTk1N2E4MTMyYTIzZDFhMzYwNjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dl
YkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9X
ZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQubW0KQEAgLTc0MSwxMCArNzQxLDEwIEBAIHZv
aWQgV2ViQ2hyb21lQ2xpZW50OjpyZXF1ZXN0UG9pbnRlclVubG9jaygpCiB9CiAjZW5kaWYKIAot
dm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJ1bk9wZW5QYW5lbChGcmFtZSosIFBhc3NSZWZQdHI8Rmls
ZUNob29zZXI+IGNob29zZXIpCit2b2lkIFdlYkNocm9tZUNsaWVudDo6cnVuT3BlblBhbmVsKEZy
YW1lJiwgRmlsZUNob29zZXImIGNob29zZXIpCiB7CiAgICAgQkVHSU5fQkxPQ0tfT0JKQ19FWENF
UFRJT05TOwotICAgIEJPT0wgYWxsb3dNdWx0aXBsZUZpbGVzID0gY2hvb3Nlci0+c2V0dGluZ3Mo
KS5hbGxvd3NNdWx0aXBsZUZpbGVzOworICAgIEJPT0wgYWxsb3dNdWx0aXBsZUZpbGVzID0gY2hv
b3Nlci5zZXR0aW5ncygpLmFsbG93c011bHRpcGxlRmlsZXM7CiAgICAgV2ViT3BlblBhbmVsUmVz
dWx0TGlzdGVuZXIgKmxpc3RlbmVyID0gW1tXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lciBhbGxv
Y10gaW5pdFdpdGhDaG9vc2VyOmNob29zZXJdOwogICAgIGlkIGRlbGVnYXRlID0gW21fd2ViVmll
dyBVSURlbGVnYXRlXTsKICAgICBpZiAoW2RlbGVnYXRlIHJlc3BvbmRzVG9TZWxlY3RvcjpAc2Vs
ZWN0b3Iod2ViVmlldzpydW5PcGVuUGFuZWxGb3JGaWxlQnV0dG9uV2l0aFJlc3VsdExpc3RlbmVy
OmFsbG93TXVsdGlwbGVGaWxlczopXSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dl
YkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29y
ZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmgKaW5kZXggM2IzNWQ0ZDIxMTBmNDlmMWM0OTNmZWFj
Y2QwODQ3MzhiODIzOGFmOS4uODgyMTUzMTA0YzUwMDllNWU3ZWEwYWU3ZjkwOGIzNzZjNzBjZjdj
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9y
Q2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9y
Q2xpZW50LmgKQEAgLTExNSw4ICsxMTUsOCBAQCBwcml2YXRlOgogICAgIHZvaWQgZGlzY2FyZGVk
Q29tcG9zaXRpb24oV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKICAgICB2b2lkIGNhbmNlbGVkQ29t
cG9zaXRpb24oKSBmaW5hbDsKIAotICAgIHZvaWQgcmVnaXN0ZXJVbmRvU3RlcChQYXNzUmVmUHRy
PFdlYkNvcmU6OlVuZG9TdGVwPikgZmluYWw7Ci0gICAgdm9pZCByZWdpc3RlclJlZG9TdGVwKFBh
c3NSZWZQdHI8V2ViQ29yZTo6VW5kb1N0ZXA+KSBmaW5hbDsKKyAgICB2b2lkIHJlZ2lzdGVyVW5k
b1N0ZXAoV2ViQ29yZTo6VW5kb1N0ZXAmKSBmaW5hbDsKKyAgICB2b2lkIHJlZ2lzdGVyUmVkb1N0
ZXAoV2ViQ29yZTo6VW5kb1N0ZXAmKSBmaW5hbDsKICAgICB2b2lkIGNsZWFyVW5kb1JlZG9PcGVy
YXRpb25zKCkgZmluYWw7CiAKICAgICBib29sIGNhbkNvcHlDdXQoV2ViQ29yZTo6RnJhbWUqLCBi
b29sIGRlZmF1bHRWYWx1ZSkgY29uc3QgZmluYWw7CkBAIC0xNzQsNyArMTc0LDcgQEAgcHJpdmF0
ZToKICAgICB2b2lkIGhhbmRsZUFjY2VwdGVkQ2FuZGlkYXRlV2l0aFNvZnRTcGFjZXMoV2ViQ29y
ZTo6VGV4dENoZWNraW5nUmVzdWx0KSBmaW5hbDsKICNlbmRpZgogCi0gICAgdm9pZCByZWdpc3Rl
clVuZG9PclJlZG9TdGVwKFBhc3NSZWZQdHI8V2ViQ29yZTo6VW5kb1N0ZXA+LCBib29sIGlzUmVk
byk7CisgICAgdm9pZCByZWdpc3RlclVuZG9PclJlZG9TdGVwKFdlYkNvcmU6OlVuZG9TdGVwJiwg
Ym9vbCBpc1JlZG8pOwogCiAgICAgV2ViVmlldyAqbV93ZWJWaWV3OwogICAgIFJldGFpblB0cjxX
ZWJFZGl0b3JVbmRvVGFyZ2V0PiBtX3VuZG9UYXJnZXQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQubW0gYi9Tb3VyY2UvV2ViS2l0
L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQubW0KaW5kZXggN2Y5ZjQxN2FkMWM0
M2E4NmFhMjVkMjE0OGU1NDY5NWUxZGI3MDI4ZS4uZjM4YTlmMGNkYzJkNDk1MGRkMDY0NmQ3MDM4
ZjhjNWEzMzNlMDQ4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBv
cnQvV2ViRWRpdG9yQ2xpZW50Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBw
b3J0L1dlYkVkaXRvckNsaWVudC5tbQpAQCAtMTE5LDggKzExOSw4IEBAIEBpbnRlcmZhY2UgV2Vi
VW5kb1N0ZXAgOiBOU09iamVjdAogICAgIFJlZlB0cjxVbmRvU3RlcD4gbV9zdGVwOyAgIAogfQog
Ci0rIChXZWJVbmRvU3RlcCAqKXN0ZXBXaXRoVW5kb1N0ZXA6KFBhc3NSZWZQdHI8VW5kb1N0ZXA+
KXN0ZXA7Ci0tIChVbmRvU3RlcCAqKXN0ZXA7CisrIChXZWJVbmRvU3RlcCAqKXN0ZXBXaXRoVW5k
b1N0ZXA6KFVuZG9TdGVwJilzdGVwOworLSAoVW5kb1N0ZXAmKXN0ZXA7CiAKIEBlbmQKIApAQCAt
MTM1LDEzICsxMzUsMTIgQEAgKyAodm9pZClpbml0aWFsaXplCiAjZW5kaWYKIH0KIAotLSAoaWQp
aW5pdFdpdGhVbmRvU3RlcDooUGFzc1JlZlB0cjxVbmRvU3RlcD4pc3RlcAorLSAoaWQpaW5pdFdp
dGhVbmRvU3RlcDooVW5kb1N0ZXAmKXN0ZXAKIHsKLSAgICBBU1NFUlQoc3RlcCk7CiAgICAgc2Vs
ZiA9IFtzdXBlciBpbml0XTsKICAgICBpZiAoIXNlbGYpCiAgICAgICAgIHJldHVybiBuaWw7Ci0g
ICAgbV9zdGVwID0gc3RlcDsKKyAgICBtX3N0ZXAgPSAmc3RlcDsKICAgICByZXR1cm4gc2VsZjsK
IH0KIApAQCAtMTUzLDE0ICsxNTIsMTQgQEAgLSAodm9pZClkZWFsbG9jCiAgICAgW3N1cGVyIGRl
YWxsb2NdOwogfQogCi0rIChXZWJVbmRvU3RlcCAqKXN0ZXBXaXRoVW5kb1N0ZXA6KFBhc3NSZWZQ
dHI8VW5kb1N0ZXA+KXN0ZXAKKysgKFdlYlVuZG9TdGVwICopc3RlcFdpdGhVbmRvU3RlcDooVW5k
b1N0ZXAmKXN0ZXAKIHsKICAgICByZXR1cm4gW1tbV2ViVW5kb1N0ZXAgYWxsb2NdIGluaXRXaXRo
VW5kb1N0ZXA6c3RlcF0gYXV0b3JlbGVhc2VdOwogfQogCi0tIChVbmRvU3RlcCAqKXN0ZXAKKy0g
KFVuZG9TdGVwJilzdGVwCiB7Ci0gICAgcmV0dXJuIG1fc3RlcC5nZXQoKTsKKyAgICByZXR1cm4g
Km1fc3RlcDsKIH0KIAogQGVuZApAQCAtMTc3LDEzICsxNzYsMTMgQEAgQGltcGxlbWVudGF0aW9u
IFdlYkVkaXRvclVuZG9UYXJnZXQKIC0gKHZvaWQpdW5kb0VkaXRpbmc6KGlkKWFyZwogewogICAg
IEFTU0VSVChbYXJnIGlzS2luZE9mQ2xhc3M6W1dlYlVuZG9TdGVwIGNsYXNzXV0pOwotICAgIFth
cmcgc3RlcF0tPnVuYXBwbHkoKTsKKyAgICBbYXJnIHN0ZXBdLnVuYXBwbHkoKTsKIH0KIAogLSAo
dm9pZClyZWRvRWRpdGluZzooaWQpYXJnCiB7CiAgICAgQVNTRVJUKFthcmcgaXNLaW5kT2ZDbGFz
czpbV2ViVW5kb1N0ZXAgY2xhc3NdXSk7Ci0gICAgW2FyZyBzdGVwXS0+cmVhcHBseSgpOworICAg
IFthcmcgc3RlcF0ucmVhcHBseSgpOwogfQogCiBAZW5kCkBAIC02NDIsMTAgKzY0MSw4IEBAIHN0
YXRpYyBOU1N0cmluZyogdW5kb05hbWVGb3JFZGl0QWN0aW9uKEVkaXRBY3Rpb24gZWRpdEFjdGlv
bikKICAgICByZXR1cm4gbmlsOwogfQogCi12b2lkIFdlYkVkaXRvckNsaWVudDo6cmVnaXN0ZXJV
bmRvT3JSZWRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPiBzdGVwLCBib29sIGlzUmVkbykKK3Zv
aWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVuZG9PclJlZG9TdGVwKFVuZG9TdGVwJiBzdGVw
LCBib29sIGlzUmVkbykKIHsKLSAgICBBU1NFUlQoc3RlcCk7Ci0gICAgCiAgICAgTlNVbmRvTWFu
YWdlciAqdW5kb01hbmFnZXIgPSBbbV93ZWJWaWV3IHVuZG9NYW5hZ2VyXTsKIAogI2lmIFBMQVRG
T1JNKElPUykKQEAgLTY1Niw3ICs2NTMsNyBAQCB2b2lkIFdlYkVkaXRvckNsaWVudDo6cmVnaXN0
ZXJVbmRvT3JSZWRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPiBzdGVwLCBib29sIGlzUgogICAg
ICAgICByZXR1cm47CiAjZW5kaWYKIAotICAgIE5TU3RyaW5nICphY3Rpb25OYW1lID0gdW5kb05h
bWVGb3JFZGl0QWN0aW9uKHN0ZXAtPmVkaXRpbmdBY3Rpb24oKSk7CisgICAgTlNTdHJpbmcgKmFj
dGlvbk5hbWUgPSB1bmRvTmFtZUZvckVkaXRBY3Rpb24oc3RlcC5lZGl0aW5nQWN0aW9uKCkpOwog
ICAgIFdlYlVuZG9TdGVwICp3ZWJFbnRyeSA9IFtXZWJVbmRvU3RlcCBzdGVwV2l0aFVuZG9TdGVw
OnN0ZXBdOwogICAgIFt1bmRvTWFuYWdlciByZWdpc3RlclVuZG9XaXRoVGFyZ2V0Om1fdW5kb1Rh
cmdldC5nZXQoKSBzZWxlY3RvcjooaXNSZWRvID8gQHNlbGVjdG9yKHJlZG9FZGl0aW5nOikgOiBA
c2VsZWN0b3IodW5kb0VkaXRpbmc6KSkgb2JqZWN0OndlYkVudHJ5XTsKICAgICBpZiAoYWN0aW9u
TmFtZSkKQEAgLTY4NCwxMiArNjgxLDEyIEBAIHZvaWQgV2ViRWRpdG9yQ2xpZW50Ojp1cGRhdGVF
ZGl0b3JTdGF0ZUFmdGVyTGF5b3V0SWZFZGl0YWJpbGl0eUNoYW5nZWQoKQogICAgICAgICBbbV93
ZWJWaWV3IHVwZGF0ZVRvdWNoQmFyXTsKIH0KIAotdm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lz
dGVyVW5kb1N0ZXAoUGFzc1JlZlB0cjxVbmRvU3RlcD4gY21kKQordm9pZCBXZWJFZGl0b3JDbGll
bnQ6OnJlZ2lzdGVyVW5kb1N0ZXAoVW5kb1N0ZXAmIGNtZCkKIHsKICAgICByZWdpc3RlclVuZG9P
clJlZG9TdGVwKGNtZCwgZmFsc2UpOwogfQogCi12b2lkIFdlYkVkaXRvckNsaWVudDo6cmVnaXN0
ZXJSZWRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPiBjbWQpCit2b2lkIFdlYkVkaXRvckNsaWVu
dDo6cmVnaXN0ZXJSZWRvU3RlcChVbmRvU3RlcCYgY21kKQogewogICAgIHJlZ2lzdGVyVW5kb09y
UmVkb1N0ZXAoY21kLCB0cnVlKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dl
YkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0L21hYy9X
ZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCmluZGV4IGExMWZiODhiZGJkOTFi
YWQ4ZmQ4ZGY5ZmQyOTJmODI1ODhmYzQ1ZjYuLmJmYmQyZjc4MzZmNjQ4YjgwNzBhYzc0M2YyZWFj
ODM2YTVjOTY5MTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0
L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1
cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5
cmlnaHQgKEMpIDIwMDYtMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBD
b3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAg
KgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTU4LDIwMiArNTgsMjAyIEBAIHB1Ymxp
YzoKICAgICBXZWJGcmFtZSogd2ViRnJhbWUoKSBjb25zdCB7IHJldHVybiBtX3dlYkZyYW1lLmdl
dCgpOyB9CiAKIHByaXZhdGU6Ci0gICAgdm9pZCBmcmFtZUxvYWRlckRlc3Ryb3llZCgpIG92ZXJy
aWRlOwotICAgIGJvb2wgaGFzV2ViVmlldygpIGNvbnN0IG92ZXJyaWRlOyAvLyBtYWlubHkgZm9y
IGFzc2VydGlvbnMKKyAgICB2b2lkIGZyYW1lTG9hZGVyRGVzdHJveWVkKCkgZmluYWw7CisgICAg
Ym9vbCBoYXNXZWJWaWV3KCkgY29uc3QgZmluYWw7IC8vIG1haW5seSBmb3IgYXNzZXJ0aW9ucwog
Ci0gICAgdm9pZCBtYWtlUmVwcmVzZW50YXRpb24oV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBv
dmVycmlkZTsKLSAgICBib29sIGhhc0hUTUxWaWV3KCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgdm9p
ZCBtYWtlUmVwcmVzZW50YXRpb24oV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBmaW5hbDsKKyAg
ICBib29sIGhhc0hUTUxWaWV3KCkgY29uc3QgZmluYWw7CiAjaWYgUExBVEZPUk0oSU9TKQotICAg
IGJvb2wgZm9yY2VMYXlvdXRPblJlc3RvcmVGcm9tUGFnZUNhY2hlKCkgb3ZlcnJpZGU7CisgICAg
Ym9vbCBmb3JjZUxheW91dE9uUmVzdG9yZUZyb21QYWdlQ2FjaGUoKSBmaW5hbDsKICNlbmRpZgot
ICAgIHZvaWQgZm9yY2VMYXlvdXRGb3JOb25IVE1MKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBmb3Jj
ZUxheW91dEZvck5vbkhUTUwoKSBmaW5hbDsKIAotICAgIHZvaWQgc2V0Q29waWVzT25TY3JvbGwo
KSBvdmVycmlkZTsKKyAgICB2b2lkIHNldENvcGllc09uU2Nyb2xsKCkgZmluYWw7CiAKLSAgICB2
b2lkIGRldGFjaGVkRnJvbVBhcmVudDIoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRldGFjaGVkRnJv
bVBhcmVudDMoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRldGFjaGVkRnJvbVBhcmVudDIoKSBmaW5h
bDsKKyAgICB2b2lkIGRldGFjaGVkRnJvbVBhcmVudDMoKSBmaW5hbDsKIAotICAgIHZvaWQgY29u
dmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwg
V2ViQ29yZTo6U2Vzc2lvbklELCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CisgICAgdm9pZCBjb252ZXJ0
TWFpblJlc291cmNlTG9hZFRvRG93bmxvYWQoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJD
b3JlOjpTZXNzaW9uSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdl
YkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKIAotICAgIHZvaWQgYXNzaWduSWRlbnRp
ZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpE
b2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRl
OworICAgIHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCYpIGZpbmFsOwogCi0gICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5kUmVxdWVz
dChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgV2Vi
Q29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYg
cmVkaXJlY3RSZXNwb25zZSkgb3ZlcnJpZGU7Ci0gICAgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFs
U3RvcmFnZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
cikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNo
YWxsZW5nZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgY29uc3QgV2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKSBvdmVycmlkZTsKKyAg
ICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKSBmaW5hbDsKKyAg
ICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
KiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlk
UmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpBdXRoZW50aWNhdGlvbkNo
YWxsZW5nZSYpIGZpbmFsOwogI2lmIFVTRShQUk9URUNUSU9OX1NQQUNFX0FVVEhfQ0FMTEJBQ0sp
Ci0gICAgYm9vbCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3Jl
OjpQcm90ZWN0aW9uU3BhY2UmKSBvdmVycmlkZTsKKyAgICBib29sIGNhbkF1dGhlbnRpY2F0ZUFn
YWluc3RQcm90ZWN0aW9uU3BhY2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlByb3RlY3Rpb25TcGFjZSYpIGZpbmFsOwog
I2VuZGlmCiAKICNpZiBQTEFURk9STShJT1MpCi0gICAgUmV0YWluUHRyPENGRGljdGlvbmFyeVJl
Zj4gY29ubmVjdGlvblByb3BlcnRpZXMoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIpIG92ZXJyaWRlOworICAgIFJldGFpblB0cjxDRkRpY3Rpb25hcnlS
ZWY+IGNvbm5lY3Rpb25Qcm9wZXJ0aWVzKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKICNlbmRpZgogCi0gICAgdm9pZCBkaXNwYXRjaERp
ZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOwot
ICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChXZWJDb3JlOjpEb2N1bWVu
dExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgaW50IGRhdGFMZW5ndGgpIG92ZXJy
aWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBvdmVycmlkZTsKKyAgICB2b2lkIGRp
c3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgZmlu
YWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkg
ZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIGZpbmFsOwogI2lmIEVOQUJMRShE
QVRBX0RFVEVDVElPTikKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoRGF0YURldGVjdGlvbihO
U0FycmF5ICpkZXRlY3Rpb25SZXN1bHRzKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGlk
RmluaXNoRGF0YURldGVjdGlvbihOU0FycmF5ICpkZXRlY3Rpb25SZXN1bHRzKSBmaW5hbDsKICNl
bmRpZgotICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExv
YWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VF
cnJvciYpIG92ZXJyaWRlOwotCi0gICAgTlNDYWNoZWRVUkxSZXNwb25zZSogd2lsbENhY2hlUmVz
cG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IE5TQ2FjaGVkVVJMUmVzcG9uc2UqKSBjb25zdCBvdmVycmlkZTsKLQotICAgIHZvaWQgZGlzcGF0
Y2hEaWREaXNwYXRjaE9ubG9hZEV2ZW50cygpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hE
aWRSZWNlaXZlU2VydmVyUmVkaXJlY3RGb3JQcm92aXNpb25hbExvYWQoKSBvdmVycmlkZTsKLSAg
ICB2b2lkIGRpc3BhdGNoRGlkQ2FuY2VsQ2xpZW50UmVkaXJlY3QoKSBvdmVycmlkZTsKLSAgICB2
b2lkIGRpc3BhdGNoV2lsbFBlcmZvcm1DbGllbnRSZWRpcmVjdChjb25zdCBXZWJDb3JlOjpVUkwm
LCBkb3VibGUgaW50ZXJ2YWwsIGRvdWJsZSBmaXJlRGF0ZSkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBk
aXNwYXRjaERpZENoYW5nZUxvY2F0aW9uV2l0aGluUGFnZSgpIG92ZXJyaWRlOwotICAgIHZvaWQg
ZGlzcGF0Y2hEaWRQdXNoU3RhdGVXaXRoaW5QYWdlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNw
YXRjaERpZFJlcGxhY2VTdGF0ZVdpdGhpblBhZ2UoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3Bh
dGNoRGlkUG9wU3RhdGVXaXRoaW5QYWdlKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERp
ZEZhaWxMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmluYWw7CisKKyAgICBOU0Nh
Y2hlZFVSTFJlc3BvbnNlKiB3aWxsQ2FjaGVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRl
ciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25zZSopIGNvbnN0
IGZpbmFsOworCisgICAgdm9pZCBkaXNwYXRjaERpZERpc3BhdGNoT25sb2FkRXZlbnRzKCkgZmlu
YWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVTZXJ2ZXJSZWRpcmVjdEZvclByb3Zpc2lv
bmFsTG9hZCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRDYW5jZWxDbGllbnRSZWRpcmVj
dCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsUGVyZm9ybUNsaWVudFJlZGlyZWN0KGNv
bnN0IFdlYkNvcmU6OlVSTCYsIGRvdWJsZSBpbnRlcnZhbCwgZG91YmxlIGZpcmVEYXRlKSBmaW5h
bDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkQ2hhbmdlTG9jYXRpb25XaXRoaW5QYWdlKCkgZmluYWw7
CisgICAgdm9pZCBkaXNwYXRjaERpZFB1c2hTdGF0ZVdpdGhpblBhZ2UoKSBmaW5hbDsKKyAgICB2
b2lkIGRpc3BhdGNoRGlkUmVwbGFjZVN0YXRlV2l0aGluUGFnZSgpIGZpbmFsOworICAgIHZvaWQg
ZGlzcGF0Y2hEaWRQb3BTdGF0ZVdpdGhpblBhZ2UoKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIGRp
c3BhdGNoV2lsbENsb3NlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVJ
Y29uKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFN0YXJ0UHJvdmlzaW9uYWxMb2Fk
KCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVUaXRsZShjb25zdCBXZWJD
b3JlOjpTdHJpbmdXaXRoRGlyZWN0aW9uJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERp
ZENvbW1pdExvYWQoc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpIYXNJbnNlY3VyZUNvbnRlbnQ+KSBv
dmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbFByb3Zpc2lvbmFsTG9hZChjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZEZh
aWxMb2FkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKLSAgICB2b2lk
IGRpc3BhdGNoRGlkRmluaXNoRG9jdW1lbnRMb2FkKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNw
YXRjaERpZEZpbmlzaExvYWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVhY2hM
YXlvdXRNaWxlc3RvbmUoV2ViQ29yZTo6TGF5b3V0TWlsZXN0b25lcykgb3ZlcnJpZGU7CisgICAg
dm9pZCBkaXNwYXRjaFdpbGxDbG9zZSgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNl
aXZlSWNvbigpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRTdGFydFByb3Zpc2lvbmFsTG9h
ZCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlVGl0bGUoY29uc3QgV2ViQ29y
ZTo6U3RyaW5nV2l0aERpcmVjdGlvbiYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRDb21t
aXRMb2FkKHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6SGFzSW5zZWN1cmVDb250ZW50PikgZmluYWw7
CisgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxQcm92aXNpb25hbExvYWQoY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VFcnJvciYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZChjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZp
bmlzaERvY3VtZW50TG9hZCgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2Fk
KCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlYWNoTGF5b3V0TWlsZXN0b25lKFdlYkNv
cmU6OkxheW91dE1pbGVzdG9uZXMpIGZpbmFsOwogCi0gICAgV2ViQ29yZTo6RnJhbWUqIGRpc3Bh
dGNoQ3JlYXRlUGFnZShjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJikgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBkaXNwYXRjaFNob3coKSBvdmVycmlkZTsKKyAgICBXZWJDb3JlOjpGcmFtZSog
ZGlzcGF0Y2hDcmVhdGVQYWdlKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mKSBmaW5h
bDsKKyAgICB2b2lkIGRpc3BhdGNoU2hvdygpIGZpbmFsOwogCi0gICAgdm9pZCBkaXNwYXRjaERl
Y2lkZVBvbGljeUZvclJlc3BvbnNlKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0
aW9uKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93
QWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4sIGNvbnN0IFdU
Rjo6U3RyaW5nJiBmcmFtZU5hbWUsIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92ZXJy
aWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNv
bnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QmLCBQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4sIFdlYkNvcmU6OkZyYW1lUG9s
aWN5RnVuY3Rpb24pIG92ZXJyaWRlOwotICAgIHZvaWQgY2FuY2VsUG9saWN5Q2hlY2soKSBvdmVy
cmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UoY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYs
IFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hE
ZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFj
dGlvbiYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFdlYkNvcmU6OkZvcm1TdGF0
ZSosIGNvbnN0IFdURjo6U3RyaW5nJiBmcmFtZU5hbWUsIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVu
Y3Rpb24pIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9u
QWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpGb3JtU3RhdGUqLCBXZWJDb3JlOjpGcmFtZVBvbGlj
eUZ1bmN0aW9uKSBmaW5hbDsKKyAgICB2b2lkIGNhbmNlbFBvbGljeUNoZWNrKCkgZmluYWw7CiAK
LSAgICB2b2lkIGRpc3BhdGNoVW5hYmxlVG9JbXBsZW1lbnRQb2xpY3koY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hVbmFibGVUb0ltcGxl
bWVudFBvbGljeShjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmluYWw7CiAKLSAgICB2
b2lkIGRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1T
dGF0ZT4pIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShQYXNzUmVm
UHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4sIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24pIG92
ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJlZjxXZWJDb3Jl
OjpGb3JtU3RhdGU+JiYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShX
ZWJDb3JlOjpGb3JtU3RhdGUmLCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsK
IAotICAgIHZvaWQgcmV2ZXJ0VG9Qcm92aXNpb25hbFN0YXRlKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRNYWluRG9jdW1lbnRFcnJvcihXZWJDb3JlOjpE
b2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsK
LSAgICBib29sIGRpc3BhdGNoRGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGludCBsZW5ndGgpIG92ZXJyaWRlOworICAgIHZv
aWQgcmV2ZXJ0VG9Qcm92aXNpb25hbFN0YXRlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgZmlu
YWw7CisgICAgdm9pZCBzZXRNYWluRG9jdW1lbnRFcnJvcihXZWJDb3JlOjpEb2N1bWVudExvYWRl
ciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKKyAgICBib29sIGRpc3Bh
dGNoRGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
KiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXNwb25zZSYsIGludCBsZW5ndGgpIGZpbmFsOwogCi0gICAgdm9pZCBzZXRNYWluRnJhbWVE
b2N1bWVudFJlYWR5KGJvb2wpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0TWFpbkZyYW1lRG9jdW1l
bnRSZWFkeShib29sKSBmaW5hbDsKIAotICAgIHZvaWQgc3RhcnREb3dubG9hZChjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBTdHJpbmcmIHN1Z2dlc3RlZE5hbWUgPSBTdHJp
bmcoKSkgb3ZlcnJpZGU7CisgICAgdm9pZCBzdGFydERvd25sb2FkKGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCYsIGNvbnN0IFN0cmluZyYgc3VnZ2VzdGVkTmFtZSA9IFN0cmluZygpKSBm
aW5hbDsKIAotICAgIHZvaWQgd2lsbENoYW5nZVRpdGxlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
Kikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRDaGFuZ2VUaXRsZShXZWJDb3JlOjpEb2N1bWVudExv
YWRlciopIG92ZXJyaWRlOworICAgIHZvaWQgd2lsbENoYW5nZVRpdGxlKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyKikgZmluYWw7CisgICAgdm9pZCBkaWRDaGFuZ2VUaXRsZShXZWJDb3JlOjpEb2N1
bWVudExvYWRlciopIGZpbmFsOwogCi0gICAgdm9pZCB3aWxsUmVwbGFjZU11bHRpcGFydENvbnRl
bnQoKSBvdmVycmlkZSB7IH0KLSAgICB2b2lkIGRpZFJlcGxhY2VNdWx0aXBhcnRDb250ZW50KCkg
b3ZlcnJpZGU7CisgICAgdm9pZCB3aWxsUmVwbGFjZU11bHRpcGFydENvbnRlbnQoKSBmaW5hbCB7
IH0KKyAgICB2b2lkIGRpZFJlcGxhY2VNdWx0aXBhcnRDb250ZW50KCkgZmluYWw7CiAKLSAgICB2
b2lkIGNvbW1pdHRlZExvYWQoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBjaGFyKiwg
aW50KSBvdmVycmlkZTsKLSAgICB2b2lkIGZpbmlzaGVkTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVu
dExvYWRlciopIG92ZXJyaWRlOwotICAgIHZvaWQgdXBkYXRlR2xvYmFsSGlzdG9yeSgpIG92ZXJy
aWRlOwotICAgIHZvaWQgdXBkYXRlR2xvYmFsSGlzdG9yeVJlZGlyZWN0TGlua3MoKSBvdmVycmlk
ZTsKKyAgICB2b2lkIGNvbW1pdHRlZExvYWQoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25z
dCBjaGFyKiwgaW50KSBmaW5hbDsKKyAgICB2b2lkIGZpbmlzaGVkTG9hZGluZyhXZWJDb3JlOjpE
b2N1bWVudExvYWRlciopIGZpbmFsOworICAgIHZvaWQgdXBkYXRlR2xvYmFsSGlzdG9yeSgpIGZp
bmFsOworICAgIHZvaWQgdXBkYXRlR2xvYmFsSGlzdG9yeVJlZGlyZWN0TGlua3MoKSBmaW5hbDsK
IAotICAgIGJvb2wgc2hvdWxkR29Ub0hpc3RvcnlJdGVtKFdlYkNvcmU6Okhpc3RvcnlJdGVtKikg
Y29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCB1cGRhdGVHbG9iYWxIaXN0b3J5SXRlbUZvclBhZ2Uo
KSBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZEdvVG9IaXN0b3J5SXRlbShXZWJDb3JlOjpIaXN0
b3J5SXRlbSopIGNvbnN0IGZpbmFsOworICAgIHZvaWQgdXBkYXRlR2xvYmFsSGlzdG9yeUl0ZW1G
b3JQYWdlKCkgZmluYWw7CiAKLSAgICB2b2lkIGRpZERpc3BsYXlJbnNlY3VyZUNvbnRlbnQoKSBv
dmVycmlkZTsKLSAgICB2b2lkIGRpZFJ1bkluc2VjdXJlQ29udGVudChXZWJDb3JlOjpTZWN1cml0
eU9yaWdpbiosIGNvbnN0IFdlYkNvcmU6OlVSTCYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkRGV0
ZWN0WFNTKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGJvb2wgZGlkQmxvY2tFbnRpcmVQYWdlKSBvdmVy
cmlkZTsKKyAgICB2b2lkIGRpZERpc3BsYXlJbnNlY3VyZUNvbnRlbnQoKSBmaW5hbDsKKyAgICB2
b2lkIGRpZFJ1bkluc2VjdXJlQ29udGVudChXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiosIGNvbnN0
IFdlYkNvcmU6OlVSTCYpIGZpbmFsOworICAgIHZvaWQgZGlkRGV0ZWN0WFNTKGNvbnN0IFdlYkNv
cmU6OlVSTCYsIGJvb2wgZGlkQmxvY2tFbnRpcmVQYWdlKSBmaW5hbDsKIAotICAgIFdlYkNvcmU6
OlJlc291cmNlRXJyb3IgY2FuY2VsbGVkRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1
ZXN0Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkRXJyb3Io
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6
UmVzb3VyY2VFcnJvciBibG9ja2VkQnlDb250ZW50QmxvY2tlckVycm9yKGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3Ig
Y2Fubm90U2hvd1VSTEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJy
aWRlOwotICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgaW50ZXJydXB0ZWRGb3JQb2xpY3lDaGFu
Z2VFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKKyAgICBX
ZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbmNlbGxlZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlUmVxdWVzdCYpIGZpbmFsOworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgYmxvY2tlZEVy
cm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOworICAgIFdlYkNvcmU6
OlJlc291cmNlRXJyb3IgYmxvY2tlZEJ5Q29udGVudEJsb2NrZXJFcnJvcihjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNh
bm5vdFNob3dVUkxFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsK
KyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGludGVycnVwdGVkRm9yUG9saWN5Q2hhbmdlRXJy
b3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CiAjaWYgRU5BQkxFKENP
TlRFTlRfRklMVEVSSU5HKQotICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgYmxvY2tlZEJ5Q29u
dGVudEZpbHRlckVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRl
OworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgYmxvY2tlZEJ5Q29udGVudEZpbHRlckVycm9y
KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOwogI2VuZGlmCiAKLSAgICBX
ZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dNSU1FVHlwZUVycm9yKGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVy
cm9yIGZpbGVEb2VzTm90RXhpc3RFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNl
Jikgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBwbHVnaW5XaWxsSGFuZGxl
TG9hZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKKyAg
ICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNob3dNSU1FVHlwZUVycm9yKGNvbnN0IFdl
YkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVy
cm9yIGZpbGVEb2VzTm90RXhpc3RFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNl
JikgZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBwbHVnaW5XaWxsSGFuZGxlTG9h
ZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKIAotICAgIGJv
b2wgc2hvdWxkRmFsbEJhY2soY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRl
OworICAgIGJvb2wgc2hvdWxkRmFsbEJhY2soY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYp
IGZpbmFsOwogCi0gICAgV1RGOjpTdHJpbmcgdXNlckFnZW50KGNvbnN0IFdlYkNvcmU6OlVSTCYp
IG92ZXJyaWRlOworICAgIFdURjo6U3RyaW5nIHVzZXJBZ2VudChjb25zdCBXZWJDb3JlOjpVUkwm
KSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHNhdmVQbGF0Zm9ybURhdGFUb0NhY2hlZEZyYW1lKFdl
YkNvcmU6OkNhY2hlZEZyYW1lKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCB0cmFuc2l0aW9uVG9Db21t
aXR0ZWRGcm9tQ2FjaGVkRnJhbWUoV2ViQ29yZTo6Q2FjaGVkRnJhbWUqKSBvdmVycmlkZTsKKyAg
ICB2b2lkIHNhdmVQbGF0Zm9ybURhdGFUb0NhY2hlZEZyYW1lKFdlYkNvcmU6OkNhY2hlZEZyYW1l
KikgZmluYWw7CisgICAgdm9pZCB0cmFuc2l0aW9uVG9Db21taXR0ZWRGcm9tQ2FjaGVkRnJhbWUo
V2ViQ29yZTo6Q2FjaGVkRnJhbWUqKSBmaW5hbDsKICNpZiBQTEFURk9STShJT1MpCi0gICAgdm9p
ZCBkaWRSZXN0b3JlRnJhbWVIaWVyYXJjaHlGb3JDYWNoZWRGcmFtZSgpIG92ZXJyaWRlOworICAg
IHZvaWQgZGlkUmVzdG9yZUZyYW1lSGllcmFyY2h5Rm9yQ2FjaGVkRnJhbWUoKSBmaW5hbDsKICNl
bmRpZgotICAgIHZvaWQgdHJhbnNpdGlvblRvQ29tbWl0dGVkRm9yTmV3UGFnZSgpIG92ZXJyaWRl
OworICAgIHZvaWQgdHJhbnNpdGlvblRvQ29tbWl0dGVkRm9yTmV3UGFnZSgpIGZpbmFsOwogCi0g
ICAgdm9pZCBkaWRTYXZlVG9QYWdlQ2FjaGUoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZFJlc3Rv
cmVGcm9tUGFnZUNhY2hlKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRTYXZlVG9QYWdlQ2FjaGUo
KSBmaW5hbDsKKyAgICB2b2lkIGRpZFJlc3RvcmVGcm9tUGFnZUNhY2hlKCkgZmluYWw7CiAKLSAg
ICB2b2lkIGRpc3BhdGNoRGlkQmVjb21lRnJhbWVzZXQoYm9vbCkgb3ZlcnJpZGU7CisgICAgdm9p
ZCBkaXNwYXRjaERpZEJlY29tZUZyYW1lc2V0KGJvb2wpIGZpbmFsOwogCi0gICAgYm9vbCBjYW5I
YW5kbGVSZXF1ZXN0KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGNvbnN0IG92ZXJy
aWRlOwotICAgIGJvb2wgY2FuU2hvd01JTUVUeXBlKGNvbnN0IFdURjo6U3RyaW5nJiBNSU1FVHlw
ZSkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgYm9vbCBjYW5TaG93TUlNRVR5cGVBc0hUTUwoY29uc3Qg
V1RGOjpTdHJpbmcmIE1JTUVUeXBlKSBjb25zdCBvdmVycmlkZTsKLSAgICBib29sIHJlcHJlc2Vu
dGF0aW9uRXhpc3RzRm9yVVJMU2NoZW1lKGNvbnN0IFdURjo6U3RyaW5nJiBVUkxTY2hlbWUpIGNv
bnN0IG92ZXJyaWRlOwotICAgIFdURjo6U3RyaW5nIGdlbmVyYXRlZE1JTUVUeXBlRm9yVVJMU2No
ZW1lKGNvbnN0IFdURjo6U3RyaW5nJiBVUkxTY2hlbWUpIGNvbnN0IG92ZXJyaWRlOworICAgIGJv
b2wgY2FuSGFuZGxlUmVxdWVzdChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBjb25z
dCBmaW5hbDsKKyAgICBib29sIGNhblNob3dNSU1FVHlwZShjb25zdCBXVEY6OlN0cmluZyYgTUlN
RVR5cGUpIGNvbnN0IGZpbmFsOworICAgIGJvb2wgY2FuU2hvd01JTUVUeXBlQXNIVE1MKGNvbnN0
IFdURjo6U3RyaW5nJiBNSU1FVHlwZSkgY29uc3QgZmluYWw7CisgICAgYm9vbCByZXByZXNlbnRh
dGlvbkV4aXN0c0ZvclVSTFNjaGVtZShjb25zdCBXVEY6OlN0cmluZyYgVVJMU2NoZW1lKSBjb25z
dCBmaW5hbDsKKyAgICBXVEY6OlN0cmluZyBnZW5lcmF0ZWRNSU1FVHlwZUZvclVSTFNjaGVtZShj
b25zdCBXVEY6OlN0cmluZyYgVVJMU2NoZW1lKSBjb25zdCBmaW5hbDsKIAotICAgIHZvaWQgZnJh
bWVMb2FkQ29tcGxldGVkKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzYXZlVmlld1N0YXRlVG9JdGVt
KFdlYkNvcmU6Okhpc3RvcnlJdGVtJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCByZXN0b3JlVmlld1N0
YXRlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBwcm92aXNpb25hbExvYWRTdGFydGVkKCkgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCBkaWRGaW5pc2hMb2FkKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBwcmVwYXJl
Rm9yRGF0YVNvdXJjZVJlcGxhY2VtZW50KCkgb3ZlcnJpZGU7Ci0gICAgUmVmPFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyPiBjcmVhdGVEb2N1bWVudExvYWRlcihjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpTdWJzdGl0dXRlRGF0YSYpIG92ZXJyaWRlOwotICAg
IHZvaWQgdXBkYXRlQ2FjaGVkRG9jdW1lbnRMb2FkZXIoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIm
KSBvdmVycmlkZSB7IH0KKyAgICB2b2lkIGZyYW1lTG9hZENvbXBsZXRlZCgpIGZpbmFsOworICAg
IHZvaWQgc2F2ZVZpZXdTdGF0ZVRvSXRlbShXZWJDb3JlOjpIaXN0b3J5SXRlbSYpIGZpbmFsOwor
ICAgIHZvaWQgcmVzdG9yZVZpZXdTdGF0ZSgpIGZpbmFsOworICAgIHZvaWQgcHJvdmlzaW9uYWxM
b2FkU3RhcnRlZCgpIGZpbmFsOworICAgIHZvaWQgZGlkRmluaXNoTG9hZCgpIGZpbmFsOworICAg
IHZvaWQgcHJlcGFyZUZvckRhdGFTb3VyY2VSZXBsYWNlbWVudCgpIGZpbmFsOworICAgIFJlZjxX
ZWJDb3JlOjpEb2N1bWVudExvYWRlcj4gY3JlYXRlRG9jdW1lbnRMb2FkZXIoY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6U3Vic3RpdHV0ZURhdGEmKSBmaW5h
bDsKKyAgICB2b2lkIHVwZGF0ZUNhY2hlZERvY3VtZW50TG9hZGVyKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyJikgZmluYWwgeyB9CiAKLSAgICB2b2lkIHNldFRpdGxlKGNvbnN0IFdlYkNvcmU6OlN0
cmluZ1dpdGhEaXJlY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpVUkwmKSBvdmVycmlkZTsKKyAgICB2
b2lkIHNldFRpdGxlKGNvbnN0IFdlYkNvcmU6OlN0cmluZ1dpdGhEaXJlY3Rpb24mLCBjb25zdCBX
ZWJDb3JlOjpVUkwmKSBmaW5hbDsKIAotICAgIFJlZlB0cjxXZWJDb3JlOjpGcmFtZT4gY3JlYXRl
RnJhbWUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgV1RGOjpTdHJpbmcmIG5hbWUsIFdlYkNv
cmU6OkhUTUxGcmFtZU93bmVyRWxlbWVudCosCi0gICAgICAgIGNvbnN0IFdURjo6U3RyaW5nJiBy
ZWZlcnJlciwgYm9vbCBhbGxvd3NTY3JvbGxpbmcsIGludCBtYXJnaW5XaWR0aCwgaW50IG1hcmdp
bkhlaWdodCkgb3ZlcnJpZGU7Ci0gICAgUmVmUHRyPFdlYkNvcmU6OldpZGdldD4gY3JlYXRlUGx1
Z2luKGNvbnN0IFdlYkNvcmU6OkludFNpemUmLCBXZWJDb3JlOjpIVE1MUGx1Z0luRWxlbWVudCos
IGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mLAotICAgICAg
ICBjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiwgY29uc3QgV1RGOjpTdHJpbmcmLCBib29sKSBv
dmVycmlkZTsKLSAgICB2b2lkIHJlY3JlYXRlUGx1Z2luKFdlYkNvcmU6OldpZGdldCopIG92ZXJy
aWRlOwotICAgIHZvaWQgcmVkaXJlY3REYXRhVG9QbHVnaW4oV2ViQ29yZTo6V2lkZ2V0KiBwbHVn
aW5XaWRnZXQpIG92ZXJyaWRlOworICAgIFJlZlB0cjxXZWJDb3JlOjpGcmFtZT4gY3JlYXRlRnJh
bWUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgV1RGOjpTdHJpbmcmIG5hbWUsIFdlYkNvcmU6
OkhUTUxGcmFtZU93bmVyRWxlbWVudCYsCisgICAgICAgIGNvbnN0IFdURjo6U3RyaW5nJiByZWZl
cnJlciwgYm9vbCBhbGxvd3NTY3JvbGxpbmcsIGludCBtYXJnaW5XaWR0aCwgaW50IG1hcmdpbkhl
aWdodCkgZmluYWw7CisgICAgUmVmUHRyPFdlYkNvcmU6OldpZGdldD4gY3JlYXRlUGx1Z2luKGNv
bnN0IFdlYkNvcmU6OkludFNpemUmLCBXZWJDb3JlOjpIVE1MUGx1Z0luRWxlbWVudCYsIGNvbnN0
IFdlYkNvcmU6OlVSTCYsCisgICAgICAgIGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mLCBjb25z
dCBWZWN0b3I8V1RGOjpTdHJpbmc+JiwgY29uc3QgV1RGOjpTdHJpbmcmLCBib29sKSBmaW5hbDsK
KyAgICB2b2lkIHJlY3JlYXRlUGx1Z2luKFdlYkNvcmU6OldpZGdldCopIGZpbmFsOworICAgIHZv
aWQgcmVkaXJlY3REYXRhVG9QbHVnaW4oV2ViQ29yZTo6V2lkZ2V0KiBwbHVnaW5XaWRnZXQpIGZp
bmFsOwogCiAjaWYgRU5BQkxFKFdFQkdMKQotICAgIFdlYkNvcmU6OldlYkdMTG9hZFBvbGljeSB3
ZWJHTFBvbGljeUZvclVSTChjb25zdCBTdHJpbmcmKSBjb25zdCBvdmVycmlkZTsKLSAgICBXZWJD
b3JlOjpXZWJHTExvYWRQb2xpY3kgcmVzb2x2ZVdlYkdMUG9saWN5Rm9yVVJMKGNvbnN0IFN0cmlu
ZyYpIGNvbnN0IG92ZXJyaWRlOwotI2VuZGlmIC8vIEVOQUJMRShXRUJHTCkKKyAgICBXZWJDb3Jl
OjpXZWJHTExvYWRQb2xpY3kgd2ViR0xQb2xpY3lGb3JVUkwoY29uc3QgU3RyaW5nJikgY29uc3Qg
ZmluYWw7CisgICAgV2ViQ29yZTo6V2ViR0xMb2FkUG9saWN5IHJlc29sdmVXZWJHTFBvbGljeUZv
clVSTChjb25zdCBTdHJpbmcmKSBjb25zdCBmaW5hbDsKKyNlbmRpZgogCi0gICAgUGFzc1JlZlB0
cjxXZWJDb3JlOjpXaWRnZXQ+IGNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgV2ViQ29yZTo6
SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxBcHBsZXRFbGVtZW50KiwgY29uc3QgV2ViQ29yZTo6VVJM
JiBiYXNlVVJMLAotICAgICAgICBjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiBwYXJhbU5hbWVz
LCBjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiBwYXJhbVZhbHVlcykgb3ZlcnJpZGU7CisgICAg
UmVmUHRyPFdlYkNvcmU6OldpZGdldD4gY3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBXZWJD
b3JlOjpJbnRTaXplJiwgV2ViQ29yZTo6SFRNTEFwcGxldEVsZW1lbnQmLCBjb25zdCBXZWJDb3Jl
OjpVUkwmIGJhc2VVUkwsCisgICAgICAgIGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mIHBhcmFt
TmFtZXMsIGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mIHBhcmFtVmFsdWVzKSBmaW5hbDsKICAg
ICAKLSAgICBXZWJDb3JlOjpPYmplY3RDb250ZW50VHlwZSBvYmplY3RDb250ZW50VHlwZShjb25z
dCBXZWJDb3JlOjpVUkwmLCBjb25zdCBXVEY6OlN0cmluZyYgbWltZVR5cGUpIG92ZXJyaWRlOwot
ICAgIFdURjo6U3RyaW5nIG92ZXJyaWRlTWVkaWFUeXBlKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAg
V2ViQ29yZTo6T2JqZWN0Q29udGVudFR5cGUgb2JqZWN0Q29udGVudFR5cGUoY29uc3QgV2ViQ29y
ZTo6VVJMJiwgY29uc3QgV1RGOjpTdHJpbmcmIG1pbWVUeXBlKSBmaW5hbDsKKyAgICBXVEY6OlN0
cmluZyBvdmVycmlkZU1lZGlhVHlwZSgpIGNvbnN0IGZpbmFsOwogICAgIAotICAgIHZvaWQgZGlz
cGF0Y2hEaWRDbGVhcldpbmRvd09iamVjdEluV29ybGQoV2ViQ29yZTo6RE9NV3JhcHBlcldvcmxk
Jikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERpZENsZWFyV2luZG93T2JqZWN0SW5Xb3Js
ZChXZWJDb3JlOjpET01XcmFwcGVyV29ybGQmKSBmaW5hbDsKIAotICAgIHZvaWQgcmVnaXN0ZXJG
b3JJY29uTm90aWZpY2F0aW9uKGJvb2wgbGlzdGVuKSBvdmVycmlkZTsKKyAgICB2b2lkIHJlZ2lz
dGVyRm9ySWNvbk5vdGlmaWNhdGlvbihib29sIGxpc3RlbikgZmluYWw7CiAKICNpZiBQTEFURk9S
TShJT1MpCi0gICAgYm9vbCBzaG91bGRMb2FkTWVkaWFFbGVtZW50VVJMKGNvbnN0IFdlYkNvcmU6
OlVSTCYpIGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkTG9hZE1lZGlhRWxlbWVudFVS
TChjb25zdCBXZWJDb3JlOjpVUkwmKSBjb25zdCBmaW5hbDsKICNlbmRpZgogCi0gICAgUmVtb3Rl
QVhPYmplY3RSZWYgYWNjZXNzaWJpbGl0eVJlbW90ZU9iamVjdCgpIG92ZXJyaWRlIHsgcmV0dXJu
IDA7IH0KKyAgICBSZW1vdGVBWE9iamVjdFJlZiBhY2Nlc3NpYmlsaXR5UmVtb3RlT2JqZWN0KCkg
ZmluYWwgeyByZXR1cm4gMDsgfQogICAgIAogICAgIFJldGFpblB0cjxXZWJGcmFtZVBvbGljeUxp
c3RlbmVyPiBzZXRVcFBvbGljeUxpc3RlbmVyKFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rpb24s
IE5TVVJMICphcHBMaW5rVVJMID0gbmlsKTsKIAotICAgIE5TRGljdGlvbmFyeSAqYWN0aW9uRGlj
dGlvbmFyeShjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJiwgUGFzc1JlZlB0cjxXZWJD
b3JlOjpGb3JtU3RhdGU+KSBjb25zdDsKKyAgICBOU0RpY3Rpb25hcnkgKmFjdGlvbkRpY3Rpb25h
cnkoY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYsIFdlYkNvcmU6OkZvcm1TdGF0ZSop
IGNvbnN0OwogICAgIAotICAgIGJvb2wgY2FuQ2FjaGVQYWdlKCkgY29uc3Qgb3ZlcnJpZGU7Cisg
ICAgYm9vbCBjYW5DYWNoZVBhZ2UoKSBjb25zdCBmaW5hbDsKIAotICAgIFBhc3NSZWZQdHI8V2Vi
Q29yZTo6RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKSBv
dmVycmlkZTsKKyAgICBSZWY8V2ViQ29yZTo6RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRl
TmV0d29ya2luZ0NvbnRleHQoKSBmaW5hbDsKIAogI2lmIEVOQUJMRShSRVFVRVNUX0FVVE9DT01Q
TEVURSkKLSAgICB2b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxldGUoUGFzc1JlZlB0cjxXZWJDb3Jl
OjpGb3JtU3RhdGU+KSBvdmVycmlkZSB7IH0KKyAgICB2b2lkIGRpZFJlcXVlc3RBdXRvY29tcGxl
dGUoUmVmPFdlYkNvcmU6OkZvcm1TdGF0ZT4mJikgZmluYWwgeyB9CiAjZW5kaWYKIAotICAgIGJv
b2wgc2hvdWxkUGFpbnRCcm9rZW5JbWFnZShjb25zdCBXZWJDb3JlOjpVUkwmKSBjb25zdCBvdmVy
cmlkZTsKKyAgICBib29sIHNob3VsZFBhaW50QnJva2VuSW1hZ2UoY29uc3QgV2ViQ29yZTo6VVJM
JikgY29uc3QgZmluYWw7CiAKICNpZiBVU0UoUVVJQ0tfTE9PSykKLSAgICB2b2lkIGRpZENyZWF0
ZVF1aWNrTG9va0hhbmRsZShXZWJDb3JlOjpRdWlja0xvb2tIYW5kbGUmKSBvdmVycmlkZTsKKyAg
ICB2b2lkIGRpZENyZWF0ZVF1aWNrTG9va0hhbmRsZShXZWJDb3JlOjpRdWlja0xvb2tIYW5kbGUm
KSBmaW5hbDsKICNlbmRpZgogCiAjaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQotICAgIHZv
aWQgY29udGVudEZpbHRlckRpZEJsb2NrTG9hZChXZWJDb3JlOjpDb250ZW50RmlsdGVyVW5ibG9j
a0hhbmRsZXIpIG92ZXJyaWRlOworICAgIHZvaWQgY29udGVudEZpbHRlckRpZEJsb2NrTG9hZChX
ZWJDb3JlOjpDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXIpIGZpbmFsOwogI2VuZGlmCiAKLSAg
ICB2b2lkIHByZWZldGNoRE5TKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOworICAgIHZvaWQgcHJl
ZmV0Y2hETlMoY29uc3QgU3RyaW5nJikgZmluYWw7CiAKICAgICBSZXRhaW5QdHI8V2ViRnJhbWU+
IG1fd2ViRnJhbWU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBw
b3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1
cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW0KaW5kZXggNjdiZDA4NDI4ZWEyNzFmMTgwMzEw
NTcxMzc5YWM0ZjNmNWVkM2Q4NS4uYTBkMWYxZWE5MTg3YjViMWI3YjVjNzlmN2UzNTc0NWM0NTk0
YzM5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJh
bWVMb2FkZXJDbGllbnQubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQv
V2ViRnJhbWVMb2FkZXJDbGllbnQubW0KQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0
IChDKSAyMDA2LTIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJp
Z2h0IChDKSAyMDA2LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0xMjgsNyArMTI4LDcgQEAKICNpbXBvcnQgPHJ1
bnRpbWUvSW5pdGlhbGl6ZVRocmVhZGluZy5oPgogI2ltcG9ydCA8d3RmL0Jsb2NrT2JqQ0V4Y2Vw
dGlvbnMuaD4KICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+Ci0jaW1wb3J0IDx3dGYvUGFzc1Jl
ZlB0ci5oPgorI2ltcG9ydCA8d3RmL1JlZi5oPgogI2ltcG9ydCA8d3RmL1J1bkxvb3AuaD4KICNp
bXBvcnQgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC04ODUsNyArODg1LDcgQEAgc3RhdGlj
IEJPT0wgc2hvdWxkVHJ5QXBwTGluayhXZWJWaWV3ICp3ZWJWaWV3LCBjb25zdCBOYXZpZ2F0aW9u
QWN0aW9uJiBhY3Rpb24sIEYKICNlbmRpZgogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50
OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBOYXZpZ2F0aW9u
QWN0aW9uJiBhY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgUGFzc1JlZlB0
cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSwgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIEZyYW1lUG9s
aWN5RnVuY3Rpb24gZnVuY3Rpb24pCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBh
Y3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3Rh
dGUsIGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9u
KQogewogICAgIFdlYlZpZXcgKndlYlZpZXcgPSBnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkp
OwogICAgIEJPT0wgdHJ5QXBwTGluayA9IHNob3VsZFRyeUFwcExpbmsod2ViVmlldywgYWN0aW9u
LCBudWxscHRyKTsKQEAgLTg5Nyw3ICs4OTcsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50
OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBOYXZpZ2F0aQog
ICAgICAgICAgICAgICAgICAgICAgICAgICBkZWNpc2lvbkxpc3RlbmVyOnNldFVwUG9saWN5TGlz
dGVuZXIoV1RGTW92ZShmdW5jdGlvbiksIHRyeUFwcExpbmsgPyAoTlNVUkwgKilyZXF1ZXN0LnVy
bCgpIDogbmlsKS5nZXQoKV07CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3Bh
dGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9u
JiBhY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgUGFzc1JlZlB0cjxGb3Jt
U3RhdGU+IGZvcm1TdGF0ZSwgRnJhbWVQb2xpY3lGdW5jdGlvbiBmdW5jdGlvbikKK3ZvaWQgV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlv
bihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYg
cmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rp
b24pCiB7CiAgICAgV2ViVmlldyAqd2ViVmlldyA9IGdldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQo
KSk7CiAgICAgQk9PTCB0cnlBcHBMaW5rID0gc2hvdWxkVHJ5QXBwTGluayh3ZWJWaWV3LCBhY3Rp
b24sIGNvcmUobV93ZWJGcmFtZS5nZXQoKSkpOwpAQCAtOTIxLDI5ICs5MjEsMjggQEAgdm9pZCBX
ZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hVbmFibGVUb0ltcGxlbWVudFBvbGljeShjb25z
dCBSZXNvdXJjZUVycm9yJgogICAgIFtbd2ViVmlldyBfcG9saWN5RGVsZWdhdGVGb3J3YXJkZXJd
IHdlYlZpZXc6d2ViVmlldyB1bmFibGVUb0ltcGxlbWVudFBvbGljeVdpdGhFcnJvcjplcnJvciBm
cmFtZTptX3dlYkZyYW1lLmdldCgpXTsgICAgCiB9CiAKLXN0YXRpYyBOU0RpY3Rpb25hcnkgKm1h
a2VGb3JtRmllbGRWYWx1ZXNEaWN0aW9uYXJ5KEZvcm1TdGF0ZSogZm9ybVN0YXRlKQorc3RhdGlj
IE5TRGljdGlvbmFyeSAqbWFrZUZvcm1GaWVsZFZhbHVlc0RpY3Rpb25hcnkoRm9ybVN0YXRlJiBm
b3JtU3RhdGUpCiB7Ci0gICAgY29uc3QgU3RyaW5nUGFpclZlY3RvciYgdGV4dEZpZWxkVmFsdWVz
ID0gZm9ybVN0YXRlLT50ZXh0RmllbGRWYWx1ZXMoKTsKKyAgICBhdXRvJiB0ZXh0RmllbGRWYWx1
ZXMgPSBmb3JtU3RhdGUudGV4dEZpZWxkVmFsdWVzKCk7CiAgICAgc2l6ZV90IHNpemUgPSB0ZXh0
RmllbGRWYWx1ZXMuc2l6ZSgpOwogICAgIE5TTXV0YWJsZURpY3Rpb25hcnkgKmRpY3Rpb25hcnkg
PSBbW05TTXV0YWJsZURpY3Rpb25hcnkgYWxsb2NdIGluaXRXaXRoQ2FwYWNpdHk6c2l6ZV07Ci0g
ICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzaXplOyArK2kpCi0gICAgICAgIFtkaWN0aW9uYXJ5
IHNldE9iamVjdDp0ZXh0RmllbGRWYWx1ZXNbaV0uc2Vjb25kIGZvcktleTp0ZXh0RmllbGRWYWx1
ZXNbaV0uZmlyc3RdOwotCisgICAgZm9yIChhdXRvJiB2YWx1ZSA6IHRleHRGaWVsZFZhbHVlcykK
KyAgICAgICAgW2RpY3Rpb25hcnkgc2V0T2JqZWN0OnZhbHVlLnNlY29uZCBmb3JLZXk6dmFsdWUu
Zmlyc3RdOwogICAgIHJldHVybiBbZGljdGlvbmFyeSBhdXRvcmVsZWFzZV07CiB9CiAKLXZvaWQg
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChQYXNzUmVm
UHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4gZm9ybVN0YXRlKQordm9pZCBXZWJGcmFtZUxvYWRlckNs
aWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFJlZjxXZWJDb3JlOjpGb3JtU3RhdGU+
JiYgZm9ybVN0YXRlKQogewogICAgIGlkIDxXZWJGb3JtRGVsZWdhdGU+IGZvcm1EZWxlZ2F0ZSA9
IFtnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkpIF9mb3JtRGVsZWdhdGVdOwogICAgIGlmICgh
Zm9ybURlbGVnYXRlKQogICAgICAgICByZXR1cm47CiAKLSAgICBET01IVE1MRm9ybUVsZW1lbnQg
KmZvcm1FbGVtZW50ID0ga2l0KGZvcm1TdGF0ZS0+Zm9ybSgpKTsKKyAgICBET01IVE1MRm9ybUVs
ZW1lbnQgKmZvcm1FbGVtZW50ID0ga2l0KCZmb3JtU3RhdGUtPmZvcm0oKSk7CiAgICAgTlNEaWN0
aW9uYXJ5ICp2YWx1ZXMgPSBtYWtlRm9ybUZpZWxkVmFsdWVzRGljdGlvbmFyeShmb3JtU3RhdGUu
Z2V0KCkpOwogICAgIENhbGxGb3JtRGVsZWdhdGUoZ2V0V2ViVmlldyhtX3dlYkZyYW1lLmdldCgp
KSwgQHNlbGVjdG9yKHdpbGxTZW5kU3VibWl0RXZlbnRUb0Zvcm06aW5GcmFtZTp3aXRoVmFsdWVz
OiksIGZvcm1FbGVtZW50LCBtX3dlYkZyYW1lLmdldCgpLCB2YWx1ZXMpOwogfQogCi12b2lkIFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKFBhc3NSZWZQdHI8Rm9y
bVN0YXRlPiBmb3JtU3RhdGUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24pCit2b2lkIFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTdWJtaXRGb3JtKEZvcm1TdGF0ZSYgZm9y
bVN0YXRlLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQogewogICAgIGlkIDxXZWJGb3Jt
RGVsZWdhdGU+IGZvcm1EZWxlZ2F0ZSA9IFtnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkpIF9m
b3JtRGVsZWdhdGVdOwogICAgIGlmICghZm9ybURlbGVnYXRlKSB7CkBAIC05NTEsOCArOTUwLDgg
QEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShQYXNz
UmVmUHRyPEZvcm1TdGF0ZT4gZm9ybVN0YXQKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAg
IE5TRGljdGlvbmFyeSAqdmFsdWVzID0gbWFrZUZvcm1GaWVsZFZhbHVlc0RpY3Rpb25hcnkoZm9y
bVN0YXRlLmdldCgpKTsKLSAgICBDYWxsRm9ybURlbGVnYXRlKGdldFdlYlZpZXcobV93ZWJGcmFt
ZS5nZXQoKSksIEBzZWxlY3RvcihmcmFtZTpzb3VyY2VGcmFtZTp3aWxsU3VibWl0Rm9ybTp3aXRo
VmFsdWVzOnN1Ym1pc3Npb25MaXN0ZW5lcjopLCBtX3dlYkZyYW1lLmdldCgpLCBraXQoZm9ybVN0
YXRlLT5zb3VyY2VEb2N1bWVudCgpLT5mcmFtZSgpKSwga2l0KGZvcm1TdGF0ZS0+Zm9ybSgpKSwg
dmFsdWVzLCBzZXRVcFBvbGljeUxpc3RlbmVyKFdURk1vdmUoZnVuY3Rpb24pKS5nZXQoKSk7Cisg
ICAgTlNEaWN0aW9uYXJ5ICp2YWx1ZXMgPSBtYWtlRm9ybUZpZWxkVmFsdWVzRGljdGlvbmFyeShm
b3JtU3RhdGUpOworICAgIENhbGxGb3JtRGVsZWdhdGUoZ2V0V2ViVmlldyhtX3dlYkZyYW1lLmdl
dCgpKSwgQHNlbGVjdG9yKGZyYW1lOnNvdXJjZUZyYW1lOndpbGxTdWJtaXRGb3JtOndpdGhWYWx1
ZXM6c3VibWlzc2lvbkxpc3RlbmVyOiksIG1fd2ViRnJhbWUuZ2V0KCksIGtpdChmb3JtU3RhdGUu
c291cmNlRG9jdW1lbnQoKS5mcmFtZSgpKSwga2l0KCZmb3JtU3RhdGUuZm9ybSgpKSwgdmFsdWVz
LCBzZXRVcFBvbGljeUxpc3RlbmVyKFdURk1vdmUoZnVuY3Rpb24pKS5nZXQoKSk7CiB9CiAKIHZv
aWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnJldmVydFRvUHJvdmlzaW9uYWxTdGF0ZShEb2N1bWVu
dExvYWRlciogbG9hZGVyKQpAQCAtMTU1Myw3ICsxNTUyLDcgQEAgc3RhdGljIGNvbnN0IE1vdXNl
RXZlbnQqIGZpbmRNb3VzZUV2ZW50KGNvbnN0IEV2ZW50KiBldmVudCkKICAgICByZXR1cm4gMDsK
IH0KIAotTlNEaWN0aW9uYXJ5ICpXZWJGcmFtZUxvYWRlckNsaWVudDo6YWN0aW9uRGljdGlvbmFy
eShjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiBm
b3JtU3RhdGUpIGNvbnN0CitOU0RpY3Rpb25hcnkgKldlYkZyYW1lTG9hZGVyQ2xpZW50OjphY3Rp
b25EaWN0aW9uYXJ5KGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIGFjdGlvbiwgRm9ybVN0YXRlKiBm
b3JtU3RhdGUpIGNvbnN0CiB7CiAgICAgdW5zaWduZWQgbW9kaWZpZXJGbGFncyA9IDA7CiAgICAg
Y29uc3QgRXZlbnQqIGV2ZW50ID0gYWN0aW9uLmV2ZW50KCk7CkBAIC0xNTk0LDEwICsxNTkzLDgg
QEAgTlNEaWN0aW9uYXJ5ICpXZWJGcmFtZUxvYWRlckNsaWVudDo6YWN0aW9uRGljdGlvbmFyeShj
b25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3QKICAgICAgICAgICAgIFtyZXN1bHQgc2V0T2JqZWN0
OltOU051bWJlciBudW1iZXJXaXRoSW50OldlYkNvcmU6Ok5vQnV0dG9uXSBmb3JLZXk6V2ViQWN0
aW9uQnV0dG9uS2V5XTsKICAgICB9CiAKLSAgICBpZiAoZm9ybVN0YXRlKSB7Ci0gICAgICAgIEFT
U0VSVChmb3JtU3RhdGUtPmZvcm0oKSk7Ci0gICAgICAgIFtyZXN1bHQgc2V0T2JqZWN0OmtpdChm
b3JtU3RhdGUtPmZvcm0oKSkgZm9yS2V5OldlYkFjdGlvbkZvcm1LZXldOwotICAgIH0KKyAgICBp
ZiAoZm9ybVN0YXRlKQorICAgICAgICBbcmVzdWx0IHNldE9iamVjdDpraXQoJmZvcm1TdGF0ZS0+
Zm9ybSgpKSBmb3JLZXk6V2ViQWN0aW9uRm9ybUtleV07CiAKICAgICByZXR1cm4gcmVzdWx0Owog
fQpAQCAtMTYyMyw3ICsxNjIwLDcgQEAgYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y2FuQ2Fj
aGVQYWdlKCkgY29uc3QKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotUmVmUHRyPEZyYW1lPiBXZWJG
cmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlRnJhbWUoY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmlu
ZyYgbmFtZSwgSFRNTEZyYW1lT3duZXJFbGVtZW50KiBvd25lckVsZW1lbnQsCitSZWZQdHI8RnJh
bWU+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVGcmFtZShjb25zdCBVUkwmIHVybCwgY29u
c3QgU3RyaW5nJiBuYW1lLCBIVE1MRnJhbWVPd25lckVsZW1lbnQmIG93bmVyRWxlbWVudCwKICAg
ICBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBib29sIGFsbG93c1Njcm9sbGluZywgaW50IG1hcmdp
bldpZHRoLCBpbnQgbWFyZ2luSGVpZ2h0KQogewogICAgIEJFR0lOX0JMT0NLX09CSkNfRVhDRVBU
SU9OUzsKQEAgLTE2MzIsNyArMTYyOSw3IEBAIFJlZlB0cjxGcmFtZT4gV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIG5hCiAgICAg
CiAgICAgV2ViRnJhbWVWaWV3ICpjaGlsZFZpZXcgPSBbW1dlYkZyYW1lVmlldyBhbGxvY10gaW5p
dF07CiAgICAgCi0gICAgUmVmUHRyPEZyYW1lPiByZXN1bHQgPSBbV2ViRnJhbWUgX2NyZWF0ZVN1
YmZyYW1lV2l0aE93bmVyRWxlbWVudDpvd25lckVsZW1lbnQgZnJhbWVOYW1lOm5hbWUgZnJhbWVW
aWV3OmNoaWxkVmlld107CisgICAgUmVmUHRyPEZyYW1lPiByZXN1bHQgPSBbV2ViRnJhbWUgX2Ny
ZWF0ZVN1YmZyYW1lV2l0aE93bmVyRWxlbWVudDomb3duZXJFbGVtZW50IGZyYW1lTmFtZTpuYW1l
IGZyYW1lVmlldzpjaGlsZFZpZXddOwogICAgIFtjaGlsZFZpZXcgcmVsZWFzZV07CiAKICAgICBX
ZWJGcmFtZSAqbmV3RnJhbWUgPSBraXQocmVzdWx0LmdldCgpKTsKQEAgLTE5MTAsNyArMTkwNyw3
IEBAIHN0YXRpYyBib29sIHNob3VsZEJsb2NrUGx1Z2luKFdlYkJhc2VQbHVnaW5QYWNrYWdlICpw
bHVnaW5QYWNrYWdlKQogI2VuZGlmCiB9CiAKLVJlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYgc2l6ZSwgSFRNTFBsdWdJbkVsZW1l
bnQqIGVsZW1lbnQsIGNvbnN0IFVSTCYgdXJsLAorUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiBzaXplLCBIVE1MUGx1Z0luRWxl
bWVudCYgZWxlbWVudCwgY29uc3QgVVJMJiB1cmwsCiAgICAgY29uc3QgVmVjdG9yPFN0cmluZz4m
IHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcywgY29uc3QgU3Ry
aW5nJiBtaW1lVHlwZSwgYm9vbCBsb2FkTWFudWFsbHkpCiB7CiAgICAgQkVHSU5fQkxPQ0tfT0JK
Q19FWENFUFRJT05TOwpAQCAtMTk0OSw3ICsxOTQ2LDcgQEAgUmVmUHRyPFdpZGdldD4gV2ViRnJh
bWVMb2FkZXJDbGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiBzaXplLCBIVE1MUGx1
Z0kKICAgICAgICAgICAgIGF0dHJpYnV0ZXMsIFdlYlBsdWdJbkF0dHJpYnV0ZXNLZXksCiAgICAg
ICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEludDpsb2FkTWFudWFsbHkgPyBXZWJQbHVnSW5N
b2RlRnVsbCA6IFdlYlBsdWdJbk1vZGVFbWJlZF0sIFdlYlBsdWdJbk1vZGVLZXksCiAgICAgICAg
ICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6IWxvYWRNYW51YWxseV0sIFdlYlBsdWdJblNo
b3VsZExvYWRNYWluUmVzb3VyY2VLZXksCi0gICAgICAgICAgICBraXQoZWxlbWVudCksIFdlYlBs
dWdJbkNvbnRhaW5pbmdFbGVtZW50S2V5LAorICAgICAgICAgICAga2l0KCZlbGVtZW50KSwgV2Vi
UGx1Z0luQ29udGFpbmluZ0VsZW1lbnRLZXksCiAgICAgICAgICAgICAvLyBGSVhNRTogV2Ugc2hv
dWxkIGJlIHBhc3NpbmcgYmFzZSBVUkwsIHNlZSA8aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTM1MjE1Pi4KICAgICAgICAgICAgIHBsdWdpblVSTCwgV2ViUGx1Z0luQmFz
ZVVSTEtleSwgLy8gcGx1Z2luVVJMIG1pZ2h0IGJlIG5pbCwgc28gYWRkIGl0IGxhc3QKICAgICAg
ICAgICAgIG5pbF07CkBAIC0xOTk1LDExICsxOTkyLDExIEBAIFJlZlB0cjxXaWRnZXQ+IFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYgc2l6ZSwgSFRNTFBs
dWdJCiAgICAgaWYgKHBsdWdpblBhY2thZ2UpIHsKICAgICAgICAgaWYgKHNob3VsZEJsb2NrUGx1
Z2luKHBsdWdpblBhY2thZ2UpKSB7CiAgICAgICAgICAgICBlcnJvckNvZGUgPSBXZWJLaXRFcnJv
ckJsb2NrZWRQbHVnSW5WZXJzaW9uOwotICAgICAgICAgICAgaWYgKGlzPFJlbmRlckVtYmVkZGVk
T2JqZWN0PihlbGVtZW50LT5yZW5kZXJlcigpKSkKLSAgICAgICAgICAgICAgICBkb3duY2FzdDxS
ZW5kZXJFbWJlZGRlZE9iamVjdD4oKmVsZW1lbnQtPnJlbmRlcmVyKCkpLnNldFBsdWdpblVuYXZh
aWxhYmlsaXR5UmVhc29uKFJlbmRlckVtYmVkZGVkT2JqZWN0OjpJbnNlY3VyZVBsdWdpblZlcnNp
b24pOworICAgICAgICAgICAgaWYgKGlzPFJlbmRlckVtYmVkZGVkT2JqZWN0PihlbGVtZW50LnJl
bmRlcmVyKCkpKQorICAgICAgICAgICAgICAgIGRvd25jYXN0PFJlbmRlckVtYmVkZGVkT2JqZWN0
PigqZWxlbWVudC5yZW5kZXJlcigpKS5zZXRQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbihSZW5k
ZXJFbWJlZGRlZE9iamVjdDo6SW5zZWN1cmVQbHVnaW5WZXJzaW9uKTsKICAgICAgICAgfSBlbHNl
IHsKICAgICAgICAgICAgIGlmIChbcGx1Z2luUGFja2FnZSBpc0tpbmRPZkNsYXNzOltXZWJQbHVn
aW5QYWNrYWdlIGNsYXNzXV0pCi0gICAgICAgICAgICAgICAgdmlldyA9IHBsdWdpblZpZXcobV93
ZWJGcmFtZS5nZXQoKSwgKFdlYlBsdWdpblBhY2thZ2UgKilwbHVnaW5QYWNrYWdlLCBhdHRyaWJ1
dGVLZXlzLCBraXQocGFyYW1WYWx1ZXMpLCBiYXNlVVJMLCBraXQoZWxlbWVudCksIGxvYWRNYW51
YWxseSk7CisgICAgICAgICAgICAgICAgdmlldyA9IHBsdWdpblZpZXcobV93ZWJGcmFtZS5nZXQo
KSwgKFdlYlBsdWdpblBhY2thZ2UgKilwbHVnaW5QYWNrYWdlLCBhdHRyaWJ1dGVLZXlzLCBraXQo
cGFyYW1WYWx1ZXMpLCBiYXNlVVJMLCBraXQoJmVsZW1lbnQpLCBsb2FkTWFudWFsbHkpOwogI2lm
IEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgICAgICAgICAgZWxzZSBpZiAoW3BsdWdp
blBhY2thZ2UgaXNLaW5kT2ZDbGFzczpbV2ViTmV0c2NhcGVQbHVnaW5QYWNrYWdlIGNsYXNzXV0p
IHsKICAgICAgICAgICAgICAgICBXZWJCYXNlTmV0c2NhcGVQbHVnaW5WaWV3ICpwbHVnaW5WaWV3
ID0gW1tbTkVUU0NBUEVfUExVR0lOX1ZJRVcgYWxsb2NdCkBAIC0yMDExLDcgKzIwMDgsNyBAQCBS
ZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlUGx1Z2luKGNvbnN0IElu
dFNpemUmIHNpemUsIEhUTUxQbHVnSQogICAgICAgICAgICAgICAgICAgICBhdHRyaWJ1dGVLZXlz
OmF0dHJpYnV0ZUtleXMKICAgICAgICAgICAgICAgICAgICAgYXR0cmlidXRlVmFsdWVzOmtpdChw
YXJhbVZhbHVlcykKICAgICAgICAgICAgICAgICAgICAgbG9hZE1hbnVhbGx5OmxvYWRNYW51YWxs
eQotICAgICAgICAgICAgICAgICAgICBlbGVtZW50OmVsZW1lbnRdIGF1dG9yZWxlYXNlXTsKKyAg
ICAgICAgICAgICAgICAgICAgZWxlbWVudDomZWxlbWVudF0gYXV0b3JlbGVhc2VdOwogCiAgICAg
ICAgICAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBOZXRzY2FwZVBsdWdpbldpZGdldChwbHVn
aW5WaWV3KSk7CiAgICAgICAgICAgICB9CkBAIC0yMDgyLDcgKzIwNzksNyBAQCB2b2lkIFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpyZWRpcmVjdERhdGFUb1BsdWdpbihXaWRnZXQqIHBsdWdpbldpZGdl
dCkKICAgICBFTkRfQkxPQ0tfT0JKQ19FWENFUFRJT05TOwogfQogICAgIAotUGFzc1JlZlB0cjxX
aWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0
IEludFNpemUmIHNpemUsIEhUTUxBcHBsZXRFbGVtZW50KiBlbGVtZW50LCBjb25zdCBVUkwmIGJh
c2VVUkwsIAorUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUphdmFB
cHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYgc2l6ZSwgSFRNTEFwcGxldEVsZW1lbnQmIGVsZW1l
bnQsIGNvbnN0IFVSTCYgYmFzZVVSTCwKICAgICBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1O
YW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKQogewogICAgIEJFR0lOX0JM
T0NLX09CSkNfRVhDRVBUSU9OUzsKQEAgLTIxMDAsOCArMjA5Nyw4IEBAIFBhc3NSZWZQdHI8V2lk
Z2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJ
bnRTaXplJiBzCiAgICAgaWYgKHBsdWdpblBhY2thZ2UpIHsKICAgICAgICAgaWYgKHNob3VsZEJs
b2NrUGx1Z2luKHBsdWdpblBhY2thZ2UpKSB7CiAgICAgICAgICAgICBlcnJvckNvZGUgPSBXZWJL
aXRFcnJvckJsb2NrZWRQbHVnSW5WZXJzaW9uOwotICAgICAgICAgICAgaWYgKGlzPFJlbmRlckVt
YmVkZGVkT2JqZWN0PihlbGVtZW50LT5yZW5kZXJlcigpKSkKLSAgICAgICAgICAgICAgICBkb3du
Y2FzdDxSZW5kZXJFbWJlZGRlZE9iamVjdD4oKmVsZW1lbnQtPnJlbmRlcmVyKCkpLnNldFBsdWdp
blVuYXZhaWxhYmlsaXR5UmVhc29uKFJlbmRlckVtYmVkZGVkT2JqZWN0OjpJbnNlY3VyZVBsdWdp
blZlcnNpb24pOworICAgICAgICAgICAgaWYgKGlzPFJlbmRlckVtYmVkZGVkT2JqZWN0PihlbGVt
ZW50LnJlbmRlcmVyKCkpKQorICAgICAgICAgICAgICAgIGRvd25jYXN0PFJlbmRlckVtYmVkZGVk
T2JqZWN0PigqZWxlbWVudC5yZW5kZXJlcigpKS5zZXRQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNv
bihSZW5kZXJFbWJlZGRlZE9iamVjdDo6SW5zZWN1cmVQbHVnaW5WZXJzaW9uKTsKICAgICAgICAg
fSBlbHNlIHsKICNpZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKICAgICAgICAgICAgIGlm
IChbcGx1Z2luUGFja2FnZSBpc0tpbmRPZkNsYXNzOltXZWJOZXRzY2FwZVBsdWdpblBhY2thZ2Ug
Y2xhc3NdXSkgewpAQCAtMjExMyw3ICsyMTEwLDcgQEAgUGFzc1JlZlB0cjxXaWRnZXQ+IFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmIHMK
ICAgICAgICAgICAgICAgICAgICAgYXR0cmlidXRlS2V5czpraXQocGFyYW1OYW1lcykKICAgICAg
ICAgICAgICAgICAgICAgYXR0cmlidXRlVmFsdWVzOmtpdChwYXJhbVZhbHVlcykKICAgICAgICAg
ICAgICAgICAgICAgbG9hZE1hbnVhbGx5Ok5PCi0gICAgICAgICAgICAgICAgICAgIGVsZW1lbnQ6
ZWxlbWVudF0gYXV0b3JlbGVhc2VdOworICAgICAgICAgICAgICAgICAgICBlbGVtZW50OiZlbGVt
ZW50XSBhdXRvcmVsZWFzZV07CiAgICAgICAgICAgICAgICAgaWYgKHZpZXcpCiAgICAgICAgICAg
ICAgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgTmV0c2NhcGVQbHVnaW5XaWRnZXQoc3RhdGlj
X2Nhc3Q8V2ViQmFzZU5ldHNjYXBlUGx1Z2luVmlldyAqPih2aWV3KSkpOwogICAgICAgICAgICAg
fQpAQCAtMjIxMCw3ICsyMjA3LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6cmVnaXN0
ZXJGb3JJY29uTm90aWZpY2F0aW9uKGJvb2wgbGlzdGVuKQogI2VuZGlmCiB9CiAKLVBhc3NSZWZQ
dHI8RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZU5l
dHdvcmtpbmdDb250ZXh0KCkKK1JlZjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBXZWJGcmFtZUxv
YWRlckNsaWVudDo6Y3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKQogewogICAgIHJldHVybiBXZWJG
cmFtZU5ldHdvcmtpbmdDb250ZXh0OjpjcmVhdGUoY29yZShtX3dlYkZyYW1lLmdldCgpKSk7CiB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZU5l
dHdvcmtpbmdDb250ZXh0LmggYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJG
cmFtZU5ldHdvcmtpbmdDb250ZXh0LmgKaW5kZXggYjA4ZDU2ZTE4YzljOGVlNjQxODBhMjE0ZjVm
YmIwZWRlMDRmNWE0ZC4uOTdlMGVhZDlmMDhiN2YzNjEyNzhhM2Q3NTZkNjI4YTVmYWVhYTkxNiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVOZXR3
b3JraW5nQ29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dl
YkZyYW1lTmV0d29ya2luZ0NvbnRleHQuaApAQCAtMjMsMTYgKzIzLDE1IEBACiAgKiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBXZWJGcmFtZU5ldHdvcmtp
bmdDb250ZXh0X2gKLSNkZWZpbmUgV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dF9oCisjcHJhZ21h
IG9uY2UKIAogI2luY2x1ZGUgPFdlYkNvcmUvRnJhbWVOZXR3b3JraW5nQ29udGV4dC5oPgogCiBj
bGFzcyBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0IDogcHVibGljIFdlYkNvcmU6OkZyYW1lTmV0
d29ya2luZ0NvbnRleHQgewogcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFdlYkZyYW1l
TmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZShXZWJDb3JlOjpGcmFtZSogZnJhbWUpCisgICAgc3Rh
dGljIFJlZjxXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBjcmVhdGUoV2ViQ29yZTo6RnJhbWUq
IGZyYW1lKQogICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBXZWJGcmFtZU5ldHdv
cmtpbmdDb250ZXh0KGZyYW1lKSk7CisgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYkZy
YW1lTmV0d29ya2luZ0NvbnRleHQoZnJhbWUpKTsKICAgICB9CiAKICAgICBzdGF0aWMgV2ViQ29y
ZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uJiBlbnN1cmVQcml2YXRlQnJvd3NpbmdTZXNzaW9uKCk7
CkBAIC01MSw3ICs1MCw0IEBAIHByaXZhdGU6CiAgICAgU3RyaW5nIHNvdXJjZUFwcGxpY2F0aW9u
SWRlbnRpZmllcigpIGNvbnN0IG92ZXJyaWRlOwogICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3Ig
YmxvY2tlZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGNvbnN0IG92ZXJy
aWRlOwogICAgIFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgc3RvcmFnZVNlc3Npb24o
KSBjb25zdCBvdmVycmlkZTsKLQogfTsKLQotI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0Lm1tIGIvU291
cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dC5t
bQppbmRleCA5M2U3NGJiZTYyODRiNjNjMjMyMTI5ZDE3NDhlMGQ5MTYyZDFhMTljLi5lZWY3MDJj
NTZmZDBlZDY3ZDM3MGYzNGE2Njk5ZTI1MzY3MmQ4MDRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0Lm1tCisrKyBi
L1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRl
eHQubW0KQEAgLTQ3LDE2ICs0NywxMyBAQCB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIE5ldHdv
cmtTdG9yYWdlU2Vzc2lvbiYgV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dDo6ZW5zdXJlUHJpdmF0
ZUJyb3dzaW5nU2Vzc2lvbigpCiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKLQogICAg
IE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6ZW5zdXJlUHJpdmF0ZUJyb3dzaW5nU2Vzc2lvbihTZXNz
aW9uSUQ6OmxlZ2FjeVByaXZhdGVTZXNzaW9uSUQoKSwgW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBi
dW5kbGVJZGVudGlmaWVyXSk7Ci0KICAgICByZXR1cm4gKk5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6
c3RvcmFnZVNlc3Npb24oU2Vzc2lvbklEOjpsZWdhY3lQcml2YXRlU2Vzc2lvbklEKCkpOwogfQog
CiB2b2lkIFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQ6OmRlc3Ryb3lQcml2YXRlQnJvd3NpbmdT
ZXNzaW9uKCkKIHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwotCiAgICAgTmV0d29ya1N0
b3JhZ2VTZXNzaW9uOjpkZXN0cm95U2Vzc2lvbihTZXNzaW9uSUQ6OmxlZ2FjeVByaXZhdGVTZXNz
aW9uSUQoKSk7CiB9CiAKQEAgLTY4LDE5ICs2NSwxOSBAQCBib29sIFdlYkZyYW1lTmV0d29ya2lu
Z0NvbnRleHQ6OmxvY2FsRmlsZUNvbnRlbnRTbmlmZmluZ0VuYWJsZWQoKSBjb25zdAogU2NoZWR1
bGVQYWlySGFzaFNldCogV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dDo6c2NoZWR1bGVkUnVuTG9v
cFBhaXJzKCkgY29uc3QKIHsKICAgICBpZiAoIWZyYW1lKCkgfHwgIWZyYW1lKCktPnBhZ2UoKSkK
LSAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIHJldHVybiBm
cmFtZSgpLT5wYWdlKCktPnNjaGVkdWxlZFJ1bkxvb3BQYWlycygpOwogfQogCiBSZXRhaW5QdHI8
Q0ZEYXRhUmVmPiBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0Ojpzb3VyY2VBcHBsaWNhdGlvbkF1
ZGl0RGF0YSgpIGNvbnN0CiB7CiAgICAgaWYgKCFmcmFtZSgpIHx8ICFmcmFtZSgpLT5wYWdlKCkp
Ci0gICAgICAgIHJldHVybiAwOworICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICAKICAgICBX
ZWJWaWV3ICp3ZWJ2aWV3ID0ga2l0KGZyYW1lKCktPnBhZ2UoKSk7Ci0gICAgCiAgICAgaWYgKCF3
ZWJ2aWV3KQotICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKICAg
ICByZXR1cm4gcmVpbnRlcnByZXRfY2FzdDxDRkRhdGFSZWY+KHdlYnZpZXcuX3NvdXJjZUFwcGxp
Y2F0aW9uQXVkaXREYXRhKTsKIH0KIApAQCAtOTgsNyArOTUsNyBAQCBOZXR3b3JrU3RvcmFnZVNl
c3Npb24mIFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQ6OnN0b3JhZ2VTZXNzaW9uKCkgY29uc3QK
IHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwogICAgIGlmIChmcmFtZSgpICYmIGZyYW1l
KCktPnBhZ2UoKS0+c2Vzc2lvbklEKCkuaXNFcGhlbWVyYWwoKSkgewotICAgICAgICBpZiAoTmV0
d29ya1N0b3JhZ2VTZXNzaW9uKiBzZXNzaW9uID0gTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpzdG9y
YWdlU2Vzc2lvbihTZXNzaW9uSUQ6OmxlZ2FjeVByaXZhdGVTZXNzaW9uSUQoKSkpCisgICAgICAg
IGlmIChhdXRvKiBzZXNzaW9uID0gTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpzdG9yYWdlU2Vzc2lv
bihTZXNzaW9uSUQ6OmxlZ2FjeVByaXZhdGVTZXNzaW9uSUQoKSkpCiAgICAgICAgICAgICByZXR1
cm4gKnNlc3Npb247CiAgICAgICAgIC8vIFNvbWUgcmVxdWVzdHMgbWF5IHN0aWxsIGJlIGNvbWlu
ZyBzaG9ydGx5IGJlZm9yZSBXZWJDb3JlIHVwZGF0ZXMgdGhlIHNlc3Npb24gSUQgYW5kIGFmdGVy
IFdlYktpdCBkZXN0cm95cyB0aGUgcHJpdmF0ZSBicm93c2luZyBzZXNzaW9uLgogICAgICAgICBM
T0dfRVJST1IoIkludmFsaWQgc2Vzc2lvbiBJRC4gUGxlYXNlIGZpbGUgYSBidWcgdW5sZXNzIHlv
dSBqdXN0IGRpc2FibGVkIHByaXZhdGUgYnJvd3NpbmcsIGluIHdoaWNoIGNhc2UgaXQncyBhbiBl
eHBlY3RlZCByYWNlLiIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1
cHBvcnQvV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIuaCBiL1NvdXJjZS9XZWJLaXQvbWFjL1dl
YkNvcmVTdXBwb3J0L1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLmgKaW5kZXggYWNjNjJjYWQ3
NDAxYzU1ZGZjNzgwODdhZWM5ZmJiYjRiYWNjMjk1Mi4uMGU0MGFhMmVkMjU5M2QxNzVjNTBkOGQw
N2EyN2FiMDZkZTFkMWU1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1
cHBvcnQvV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L21h
Yy9XZWJDb3JlU3VwcG9ydC9XZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lci5oCkBAIC0xLDUgKzEs
NSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCBBcHBsZSBJbmMuICBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yNCw3ICsyNCw3
IEBACiAgKi8KIAogI2ltcG9ydCAiV2ViVUlEZWxlZ2F0ZS5oIgotI2ltcG9ydCA8d3RmL0Zvcndh
cmQuaD4KKyNpbXBvcnQgPHd0Zi9SZWZQdHIuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogY2xh
c3MgRmlsZUNob29zZXI7CkBAIC0zMiw5ICszMiw5IEBAIGNsYXNzIEZpbGVDaG9vc2VyOwogCiBA
aW50ZXJmYWNlIFdlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyIDogTlNPYmplY3QgPFdlYk9wZW5Q
YW5lbFJlc3VsdExpc3RlbmVyPgogewotICAgIFdlYkNvcmU6OkZpbGVDaG9vc2VyKiBfY2hvb3Nl
cjsKKyAgICBSZWZQdHI8V2ViQ29yZTo6RmlsZUNob29zZXI+IF9jaG9vc2VyOwogfQogCi0tIChp
ZClpbml0V2l0aENob29zZXI6KFBhc3NSZWZQdHI8V2ViQ29yZTo6RmlsZUNob29zZXI+KWNob29z
ZXI7CistIChpZClpbml0V2l0aENob29zZXI6KFdlYkNvcmU6OkZpbGVDaG9vc2VyJiljaG9vc2Vy
OwogCiBAZW5kCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9X
ZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lci5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVT
dXBwb3J0L1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLm1tCmluZGV4IGI2YmQyNjdiZGVkODFh
N2I0Zjg3ZmQ4Y2YzY2RkMDBhYzQxMmE4ZWEuLjhiMjUyMDkwNzAzYWU0N2Q3YmJhZmFhNjViMzI2
ZmVlZmNjMzA0N2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0
L1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dl
YkNvcmVTdXBwb3J0L1dlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLm1tCkBAIC0zNiwzMCArMzYs
MTggQEAgdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKIEBpbXBsZW1lbnRhdGlvbiBXZWJPcGVu
UGFuZWxSZXN1bHRMaXN0ZW5lcgogCi0tIChpZClpbml0V2l0aENob29zZXI6KFBhc3NSZWZQdHI8
RmlsZUNob29zZXI+KWNob29zZXIKKy0gKGlkKWluaXRXaXRoQ2hvb3NlcjooRmlsZUNob29zZXIm
KWNob29zZXIKIHsKICAgICBzZWxmID0gW3N1cGVyIGluaXRdOwogICAgIGlmICghc2VsZikKICAg
ICAgICAgcmV0dXJuIG5pbDsKLSAgICBfY2hvb3NlciA9IGNob29zZXIubGVha1JlZigpOworICAg
IF9jaG9vc2VyID0gJmNob29zZXI7CiAgICAgcmV0dXJuIHNlbGY7CiB9CiAKLSNpZm5kZWYgTkRF
QlVHCi0tICh2b2lkKWRlYWxsb2MKLXsKLSAgICBBU1NFUlQoIV9jaG9vc2VyKTsKLSAgICBbc3Vw
ZXIgZGVhbGxvY107Ci19Ci0jZW5kaWYKLQogLSAodm9pZCljYW5jZWwKIHsKLSAgICBBU1NFUlQo
X2Nob29zZXIpOwotICAgIGlmICghX2Nob29zZXIpCi0gICAgICAgIHJldHVybjsKLSAgICBfY2hv
b3Nlci0+ZGVyZWYoKTsKLSAgICBfY2hvb3NlciA9IDA7CisgICAgX2Nob29zZXIgPSBudWxscHRy
OwogfQogCiAtICh2b2lkKWNob29zZUZpbGVuYW1lOihOU1N0cmluZyAqKWZpbGVuYW1lCkBAIC02
OCw4ICs1Niw3IEBAIC0gKHZvaWQpY2hvb3NlRmlsZW5hbWU6KE5TU3RyaW5nICopZmlsZW5hbWUK
ICAgICBpZiAoIV9jaG9vc2VyKQogICAgICAgICByZXR1cm47CiAgICAgX2Nob29zZXItPmNob29z
ZUZpbGUoZmlsZW5hbWUpOwotICAgIF9jaG9vc2VyLT5kZXJlZigpOwotICAgIF9jaG9vc2VyID0g
MDsKKyAgICBfY2hvb3NlciA9IG51bGxwdHI7CiB9CiAKIC0gKHZvaWQpY2hvb3NlRmlsZW5hbWVz
OihOU0FycmF5ICopZmlsZW5hbWVzCkBAIC04MiwxMSArNjksMTEgQEAgLSAodm9pZCljaG9vc2VG
aWxlbmFtZXM6KE5TQXJyYXkgKilmaWxlbmFtZXMKICAgICBmb3IgKE5TVUludGVnZXIgaSA9IDA7
IGkgPCBjb3VudDsgaSsrKQogICAgICAgICBuYW1lc1tpXSA9IFtmaWxlbmFtZXMgb2JqZWN0QXRJ
bmRleDppXTsKICAgICBfY2hvb3Nlci0+Y2hvb3NlRmlsZXMobmFtZXMpOwotICAgIF9jaG9vc2Vy
LT5kZXJlZigpOwotICAgIF9jaG9vc2VyID0gMDsKKyAgICBfY2hvb3NlciA9IG51bGxwdHI7CiB9
CiAKICNpZiBQTEFURk9STShJT1MpCisKIC0gKHZvaWQpY2hvb3NlRmlsZW5hbWU6KE5TU3RyaW5n
ICopZmlsZW5hbWUgZGlzcGxheVN0cmluZzooTlNTdHJpbmcgKilkaXNwbGF5U3RyaW5nIGljb25J
bWFnZTooQ0dJbWFnZVJlZilpbWFnZVJlZgogewogICAgIFtzZWxmIGNob29zZUZpbGVuYW1lczpb
TlNBcnJheSBhcnJheVdpdGhPYmplY3Q6ZmlsZW5hbWVdIGRpc3BsYXlTdHJpbmc6ZGlzcGxheVN0
cmluZyBpY29uSW1hZ2U6aW1hZ2VSZWZdOwpAQCAtOTgsMTggKzg1LDE0IEBAIC0gKHZvaWQpY2hv
b3NlRmlsZW5hbWVzOihOU0FycmF5ICopZmlsZW5hbWVzIGRpc3BsYXlTdHJpbmc6KE5TU3RyaW5n
ICopZGlzcGxheVN0CiAgICAgaWYgKCFfY2hvb3NlcikKICAgICAgICAgcmV0dXJuOwogCi0gICAg
UmVmUHRyPEljb24+IGljb24gPSBJY29uOjpjcmVhdGVJY29uRm9ySW1hZ2UoaW1hZ2VSZWYpOwot
Ci0gICAgTlNVSW50ZWdlciBjb3VudCA9IFtmaWxlbmFtZXMgY291bnRdOwotICAgIFZlY3RvcjxT
dHJpbmc+IG5hbWVzKGNvdW50KTsKLSAgICBmb3IgKE5TVUludGVnZXIgaSA9IDA7IGkgPCBjb3Vu
dDsgKytpKQotICAgICAgICBuYW1lc1tpXSA9IFtmaWxlbmFtZXMgb2JqZWN0QXRJbmRleDppXTsK
LSAgICBfY2hvb3Nlci0+Y2hvb3NlTWVkaWFGaWxlcyhuYW1lcywgZGlzcGxheVN0cmluZywgaWNv
bi5nZXQoKSk7Ci0gICAgCi0gICAgLy8gRklYTUU6IHdlIHNob3VsZG4ndCBiZSBtYW51YWxseSBk
ZXJlZigpJ2luZyBoZXJlLgotICAgIF9jaG9vc2VyLT5kZXJlZigpOworICAgIFZlY3RvcjxTdHJp
bmc+IG5hbWVzOworICAgIG5hbWVzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkoW2ZpbGVuYW1lcyBj
b3VudF0pOworICAgIGZvciAoTlNTdHJpbmcgKmZpbGVuYW1lIGluIGZpbGVuYW1lcykKKyAgICAg
ICAgbmFtZXMudW5jaGVja2VkQXBwZW5kKGZpbGVuYW1lKTsKKyAgICBfY2hvb3Nlci0+Y2hvb3Nl
TWVkaWFGaWxlcyhuYW1lcywgZGlzcGxheVN0cmluZywgSWNvbjo6Y3JlYXRlSWNvbkZvckltYWdl
KGltYWdlUmVmKS5nZXQoKSk7CiAgICAgX2Nob29zZXIgPSBudWxscHRyOwogfQorCiAjZW5kaWYK
IAogQGVuZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJBcmNoaXZl
Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJBcmNoaXZlLm1tCmluZGV4IGU5NmM2
MDdjZmI4NGM4NWExZWJmYWFiZGMzMWNlYmEwNGVhNWMzZTguLmZmNzU0NmQ4NWY4YTU1YTU5Yjgw
YWFmMTdiNTRlNzJlYTYxZjk2NzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZp
ZXcvV2ViQXJjaGl2ZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkFyY2hp
dmUubW0KQEAgLTE3NCwyNSArMTc0LDE2IEBAIC0gKGluc3RhbmNldHlwZSlpbml0V2l0aE1haW5S
ZXNvdXJjZTooV2ViUmVzb3VyY2UgKiltYWluUmVzb3VyY2Ugc3VicmVzb3VyY2VzOihOCiAgICAg
ICAgIFtzZWxmIHJlbGVhc2VdOwogICAgICAgICByZXR1cm4gbmlsOwogICAgIH0KLSAgICAKLSAg
ICBSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBjb3JlTWFpblJlc291cmNlID0gbWFpblJlc291cmNl
ID8gW21haW5SZXNvdXJjZSBfY29yZVJlc291cmNlXSA6IG51bGxwdHI7CiAKLSAgICBWZWN0b3I8
UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+IGNvcmVSZXNvdXJjZXM7CisgICAgVmVjdG9yPFJlZjxB
cmNoaXZlUmVzb3VyY2U+PiBjb3JlUmVzb3VyY2VzOwogICAgIGZvciAoV2ViUmVzb3VyY2UgKnN1
YnJlc291cmNlIGluIHN1YnJlc291cmNlcykKICAgICAgICAgY29yZVJlc291cmNlcy5hcHBlbmQo
W3N1YnJlc291cmNlIF9jb3JlUmVzb3VyY2VdKTsKIAotICAgIFZlY3RvcjxSZWZQdHI8TGVnYWN5
V2ViQXJjaGl2ZT4+IGNvcmVBcmNoaXZlczsKKyAgICBWZWN0b3I8UmVmPExlZ2FjeVdlYkFyY2hp
dmU+PiBjb3JlQXJjaGl2ZXM7CiAgICAgZm9yIChXZWJBcmNoaXZlICpzdWJmcmFtZUFyY2hpdmUg
aW4gc3ViZnJhbWVBcmNoaXZlcykKLSAgICAgICAgY29yZUFyY2hpdmVzLmFwcGVuZChbc3ViZnJh
bWVBcmNoaXZlLT5fcHJpdmF0ZSBjb3JlQXJjaGl2ZV0pOwotCi0gICAgYXV0byBjb3JlQXJjaGl2
ZSA9IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShXVEZNb3ZlKGNvcmVNYWluUmVzb3VyY2UpLCBX
VEZNb3ZlKGNvcmVSZXNvdXJjZXMpLCBXVEZNb3ZlKGNvcmVBcmNoaXZlcykpOwotICAgIGlmICgh
Y29yZUFyY2hpdmUpIHsKLSAgICAgICAgW3NlbGYgcmVsZWFzZV07Ci0gICAgICAgIHJldHVybiBu
aWw7Ci0gICAgfQotCi0gICAgW19wcml2YXRlIHNldENvcmVBcmNoaXZlOldURk1vdmUoY29yZUFy
Y2hpdmUpXTsKKyAgICAgICAgY29yZUFyY2hpdmVzLmFwcGVuZCgqW3N1YmZyYW1lQXJjaGl2ZS0+
X3ByaXZhdGUgY29yZUFyY2hpdmVdKTsKIAorICAgIFtfcHJpdmF0ZSBzZXRDb3JlQXJjaGl2ZTpM
ZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoW21haW5SZXNvdXJjZSBfY29yZVJlc291cmNlXSwgV1RG
TW92ZShjb3JlUmVzb3VyY2VzKSwgV1RGTW92ZShjb3JlQXJjaGl2ZXMpKV07CiAgICAgcmV0dXJu
IHNlbGY7CiB9CiAKQEAgLTI3NSw5ICsyNjYsMTAgQEAgLSAoV2ViUmVzb3VyY2UgKiltYWluUmVz
b3VyY2UKICAgICAvLyBDdXJyZW50bHkgZnJvbSBXZWJLaXQgQVBJIHBlcnNwZWN0aXZlLCBXZWJB
cmNoaXZlcyBhcmUgZW50aXJlbHkgaW1tdXRhYmxlIG9uY2UgY3JlYXRlZAogICAgIC8vIElmIHRo
ZXkgZXZlciBiZWNvbWUgbXV0YWJsZSwgd2UnbGwgbmVlZCB0byByZXRoaW5rIHRoaXMuIAogICAg
IGlmICghX3ByaXZhdGUtPmNhY2hlZE1haW5SZXNvdXJjZSkgewotICAgICAgICBMZWdhY3lXZWJB
cmNoaXZlKiBjb3JlQXJjaGl2ZSA9IFtfcHJpdmF0ZSBjb3JlQXJjaGl2ZV07Ci0gICAgICAgIGlm
IChjb3JlQXJjaGl2ZSkKLSAgICAgICAgICAgIF9wcml2YXRlLT5jYWNoZWRNYWluUmVzb3VyY2Ug
PSBbW1dlYlJlc291cmNlIGFsbG9jXSBfaW5pdFdpdGhDb3JlUmVzb3VyY2U6Y29yZUFyY2hpdmUt
Pm1haW5SZXNvdXJjZSgpXTsKKyAgICAgICAgaWYgKGF1dG8qIGNvcmVBcmNoaXZlID0gW19wcml2
YXRlIGNvcmVBcmNoaXZlXSkgeworICAgICAgICAgICAgaWYgKGF1dG8qIG1haW5SZXNvdXJjZSA9
IGNvcmVBcmNoaXZlLT5tYWluUmVzb3VyY2UoKSkKKyAgICAgICAgICAgICAgICBfcHJpdmF0ZS0+
Y2FjaGVkTWFpblJlc291cmNlID0gW1tXZWJSZXNvdXJjZSBhbGxvY10gX2luaXRXaXRoQ29yZVJl
c291cmNlOiptYWluUmVzb3VyY2VdOworICAgICAgICB9CiAgICAgfQogICAgIAogICAgIHJldHVy
biBbW19wcml2YXRlLT5jYWNoZWRNYWluUmVzb3VyY2UgcmV0YWluXSBhdXRvcmVsZWFzZV07CkBA
IC0yOTQsMTIgKzI4NiwxMSBAQCAtIChOU0FycmF5ICopc3VicmVzb3VyY2VzCiAgICAgICAgIGlm
ICghY29yZUFyY2hpdmUpCiAgICAgICAgICAgICBfcHJpdmF0ZS0+Y2FjaGVkU3VicmVzb3VyY2Vz
ID0gW1tOU0FycmF5IGFsbG9jXSBpbml0XTsKICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICBj
b25zdCBWZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+JiBzdWJyZXNvdXJjZXMoY29yZUFy
Y2hpdmUtPnN1YnJlc291cmNlcygpKTsKKyAgICAgICAgICAgIGF1dG8mIHN1YnJlc291cmNlcyA9
IGNvcmVBcmNoaXZlLT5zdWJyZXNvdXJjZXMoKTsKICAgICAgICAgICAgIE5TTXV0YWJsZUFycmF5
ICptdXRhYmxlQXJyYXkgPSBbW05TTXV0YWJsZUFycmF5IGFsbG9jXSBpbml0V2l0aENhcGFjaXR5
OnN1YnJlc291cmNlcy5zaXplKCldOwogICAgICAgICAgICAgX3ByaXZhdGUtPmNhY2hlZFN1YnJl
c291cmNlcyA9IG11dGFibGVBcnJheTsKLSAgICAgICAgICAgIGZvciAodW5zaWduZWQgaSA9IDA7
IGkgPCBzdWJyZXNvdXJjZXMuc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgICAgICAgICBXZWJSZXNv
dXJjZSAqcmVzb3VyY2UgPSBbW1dlYlJlc291cmNlIGFsbG9jXSBfaW5pdFdpdGhDb3JlUmVzb3Vy
Y2U6c3VicmVzb3VyY2VzW2ldLmdldCgpXTsKLSAgICAgICAgICAgICAgICBpZiAocmVzb3VyY2Up
IHsKKyAgICAgICAgICAgIGZvciAoYXV0byYgc3VicmVzb3VyY2UgOiBzdWJyZXNvdXJjZXMpIHsK
KyAgICAgICAgICAgICAgICBpZiAoV2ViUmVzb3VyY2UgKnJlc291cmNlID0gW1tXZWJSZXNvdXJj
ZSBhbGxvY10gX2luaXRXaXRoQ29yZVJlc291cmNlOnN1YnJlc291cmNlLmdldCgpXSkgewogICAg
ICAgICAgICAgICAgICAgICBbbXV0YWJsZUFycmF5IGFkZE9iamVjdDpyZXNvdXJjZV07CiAgICAg
ICAgICAgICAgICAgICAgIFtyZXNvdXJjZSByZWxlYXNlXTsKICAgICAgICAgICAgICAgICB9CkBA
IC0zMTgsMTUgKzMwOSwxNSBAQCAtIChOU0FycmF5ICopc3ViZnJhbWVBcmNoaXZlcwogICAgIC8v
IEN1cnJlbnRseSBmcm9tIFdlYktpdCBBUEkgcGVyc3BlY3RpdmUsIFdlYkFyY2hpdmVzIGFyZSBl
bnRpcmVseSBpbW11dGFibGUgb25jZSBjcmVhdGVkCiAgICAgLy8gSWYgdGhleSBldmVyIGJlY29t
ZSBtdXRhYmxlLCB3ZSdsbCBuZWVkIHRvIHJldGhpbmsgdGhpcy4gIAogICAgIGlmICghX3ByaXZh
dGUtPmNhY2hlZFN1YmZyYW1lQXJjaGl2ZXMpIHsKLSAgICAgICAgTGVnYWN5V2ViQXJjaGl2ZSog
Y29yZUFyY2hpdmUgPSBbX3ByaXZhdGUgY29yZUFyY2hpdmVdOworICAgICAgICBhdXRvKiBjb3Jl
QXJjaGl2ZSA9IFtfcHJpdmF0ZSBjb3JlQXJjaGl2ZV07CiAgICAgICAgIGlmICghY29yZUFyY2hp
dmUpCiAgICAgICAgICAgICBfcHJpdmF0ZS0+Y2FjaGVkU3ViZnJhbWVBcmNoaXZlcyA9IFtbTlNB
cnJheSBhbGxvY10gaW5pdF07CiAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgY29uc3QgVmVj
dG9yPFJlZlB0cjxBcmNoaXZlPj4mIHN1YmZyYW1lQXJjaGl2ZXMoY29yZUFyY2hpdmUtPnN1YmZy
YW1lQXJjaGl2ZXMoKSk7Ci0gICAgICAgICAgICBOU011dGFibGVBcnJheSAqbXV0YWJsZUFycmF5
ID0gW1tOU011dGFibGVBcnJheSBhbGxvY10gaW5pdFdpdGhDYXBhY2l0eTpzdWJmcmFtZUFyY2hp
dmVzLnNpemUoKV07CisgICAgICAgICAgICBhdXRvJiBzdWJmcmFtZUFyY2hpdmVzID0gY29yZUFy
Y2hpdmUtPnN1YmZyYW1lQXJjaGl2ZXMoKTsKKyAgICAgICAgICAgIGF1dG8gbXV0YWJsZUFycmF5
ID0gW1tOU011dGFibGVBcnJheSBhbGxvY10gaW5pdFdpdGhDYXBhY2l0eTpzdWJmcmFtZUFyY2hp
dmVzLnNpemUoKV07CiAgICAgICAgICAgICBfcHJpdmF0ZS0+Y2FjaGVkU3ViZnJhbWVBcmNoaXZl
cyA9IG11dGFibGVBcnJheTsKICAgICAgICAgICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBz
dWJmcmFtZUFyY2hpdmVzLnNpemUoKTsgKytpKSB7Ci0gICAgICAgICAgICAgICAgV2ViQXJjaGl2
ZSAqYXJjaGl2ZSA9IFtbV2ViQXJjaGl2ZSBhbGxvY10gX2luaXRXaXRoQ29yZUxlZ2FjeVdlYkFy
Y2hpdmU6KExlZ2FjeVdlYkFyY2hpdmUgKilzdWJmcmFtZUFyY2hpdmVzW2ldLmdldCgpXTsKKyAg
ICAgICAgICAgICAgICBXZWJBcmNoaXZlICphcmNoaXZlID0gW1tXZWJBcmNoaXZlIGFsbG9jXSBf
aW5pdFdpdGhDb3JlTGVnYWN5V2ViQXJjaGl2ZTooTGVnYWN5V2ViQXJjaGl2ZSAqKXN1YmZyYW1l
QXJjaGl2ZXNbaV0ucHRyKCldOwogICAgICAgICAgICAgICAgIFttdXRhYmxlQXJyYXkgYWRkT2Jq
ZWN0OmFyY2hpdmVdOwogICAgICAgICAgICAgICAgIFthcmNoaXZlIHJlbGVhc2VdOwogICAgICAg
ICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJEYXRhU291
cmNlLm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJEYXRhU291cmNlLm1tCmluZGV4
IDYwNjQ3MjJhNTYzNjE0ODU4NDJjZjU3ZmQ5MzBmNzU1ODhkNmU4ZjYuLjE4Y2Y5ZjdkYjRjNjM4
Nzg0NzE3MDg5MjhiYWI4OTU4YTQ3OTI3MDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFj
L1dlYlZpZXcvV2ViRGF0YVNvdXJjZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3
L1dlYkRhdGFTb3VyY2UubW0KQEAgLTE2NiwyNSArMTY2LDIyIEBAIC0gKE5TRXJyb3IgKilfbWFp
bkRvY3VtZW50RXJyb3IKIAogLSAodm9pZClfYWRkU3ViZnJhbWVBcmNoaXZlczooTlNBcnJheSAq
KXN1YmZyYW1lQXJjaGl2ZXMKIHsKLSAgICAvLyBGSVhNRTogVGhpcyBTUEkgaXMgcG9vciwgcG9v
ciBkZXNpZ24uICBDYW4gd2UgY29tZSB1cCB3aXRoIGFub3RoZXIgc29sdXRpb24gZm9yIHRob3Nl
IHdobyBuZWVkIGl0PwotICAgIE5TRW51bWVyYXRvciAqZW51bWVyYXRvciA9IFtzdWJmcmFtZUFy
Y2hpdmVzIG9iamVjdEVudW1lcmF0b3JdOwotICAgIFdlYkFyY2hpdmUgKmFyY2hpdmU7Ci0gICAg
d2hpbGUgKChhcmNoaXZlID0gW2VudW1lcmF0b3IgbmV4dE9iamVjdF0pICE9IG5pbCkKLSAgICAg
ICAgdG9Qcml2YXRlKF9wcml2YXRlKS0+bG9hZGVyLT5hZGRBbGxBcmNoaXZlUmVzb3VyY2VzKFth
cmNoaXZlIF9jb3JlTGVnYWN5V2ViQXJjaGl2ZV0pOworICAgIC8vIEZJWE1FOiBUaGlzIFNQSSBp
cyBwb29yLCBwb29yIGRlc2lnbi4gQ2FuIHdlIGNvbWUgdXAgd2l0aCBhbm90aGVyIHNvbHV0aW9u
IGZvciB0aG9zZSB3aG8gbmVlZCBpdD8KKyAgICBmb3IgKFdlYkFyY2hpdmUgKmFyY2hpdmUgaW4g
c3ViZnJhbWVBcmNoaXZlcykKKyAgICAgICAgdG9Qcml2YXRlKF9wcml2YXRlKS0+bG9hZGVyLT5h
ZGRBbGxBcmNoaXZlUmVzb3VyY2VzKCpbYXJjaGl2ZSBfY29yZUxlZ2FjeVdlYkFyY2hpdmVdKTsK
IH0KIAogI2lmICFQTEFURk9STShJT1MpCisKIC0gKE5TRmlsZVdyYXBwZXIgKilfZmlsZVdyYXBw
ZXJGb3JVUkw6KE5TVVJMICopVVJMCiB7CiAgICAgaWYgKFtVUkwgaXNGaWxlVVJMXSkKICAgICAg
ICAgcmV0dXJuIFtbW05TRmlsZVdyYXBwZXIgYWxsb2NdIGluaXRXaXRoVVJMOltVUkwgVVJMQnlS
ZXNvbHZpbmdTeW1saW5rc0luUGF0aF0gb3B0aW9uczowIGVycm9yOm51bGxwdHJdIGF1dG9yZWxl
YXNlXTsKIAotICAgIFdlYlJlc291cmNlICpyZXNvdXJjZSA9IFtzZWxmIHN1YnJlc291cmNlRm9y
VVJMOlVSTF07Ci0gICAgaWYgKHJlc291cmNlKQorICAgIGlmIChhdXRvIHJlc291cmNlID0gW3Nl
bGYgc3VicmVzb3VyY2VGb3JVUkw6VVJMXSkKICAgICAgICAgcmV0dXJuIFtyZXNvdXJjZSBfZmls
ZVdyYXBwZXJSZXByZXNlbnRhdGlvbl07Ci0gICAgCi0gICAgTlNDYWNoZWRVUkxSZXNwb25zZSAq
Y2FjaGVkUmVzcG9uc2UgPSBbW3NlbGYgX3dlYlZpZXddIF9jYWNoZWRSZXNwb25zZUZvclVSTDpV
UkxdOwotICAgIGlmIChjYWNoZWRSZXNwb25zZSkgeworCisgICAgaWYgKGF1dG8gY2FjaGVkUmVz
cG9uc2UgPSBbW3NlbGYgX3dlYlZpZXddIF9jYWNoZWRSZXNwb25zZUZvclVSTDpVUkxdKSB7CiAg
ICAgICAgIE5TRmlsZVdyYXBwZXIgKndyYXBwZXIgPSBbW1tOU0ZpbGVXcmFwcGVyIGFsbG9jXSBp
bml0UmVndWxhckZpbGVXaXRoQ29udGVudHM6W2NhY2hlZFJlc3BvbnNlIGRhdGFdXSBhdXRvcmVs
ZWFzZV07CiAgICAgICAgIFt3cmFwcGVyIHNldFByZWZlcnJlZEZpbGVuYW1lOltbY2FjaGVkUmVz
cG9uc2UgcmVzcG9uc2VdIHN1Z2dlc3RlZEZpbGVuYW1lXV07CiAgICAgICAgIHJldHVybiB3cmFw
cGVyOwpAQCAtMTkyLDYgKzE4OSw3IEBAIC0gKE5TRmlsZVdyYXBwZXIgKilfZmlsZVdyYXBwZXJG
b3JVUkw6KE5TVVJMICopVVJMCiAgICAgCiAgICAgcmV0dXJuIG5pbDsKIH0KKwogI2VuZGlmCiAK
IC0gKE5TU3RyaW5nICopX3Jlc3BvbnNlTUlNRVR5cGUKQEAgLTMwNSw5ICszMDMsMTAgQEAgLSAo
RE9NRG9jdW1lbnRGcmFnbWVudCAqKV9kb2N1bWVudEZyYWdtZW50V2l0aEFyY2hpdmU6KFdlYkFy
Y2hpdmUgKilhcmNoaXZlCiAgICAgICAgIE5TU3RyaW5nICpNSU1FVHlwZSA9IFttYWluUmVzb3Vy
Y2UgTUlNRVR5cGVdOwogICAgICAgICBpZiAoW1dlYlZpZXcgY2FuU2hvd01JTUVUeXBlQXNIVE1M
Ok1JTUVUeXBlXSkgewogICAgICAgICAgICAgTlNTdHJpbmcgKm1hcmt1cFN0cmluZyA9IFtbTlNT
dHJpbmcgYWxsb2NdIGluaXRXaXRoRGF0YTpbbWFpblJlc291cmNlIGRhdGFdIGVuY29kaW5nOk5T
VVRGOFN0cmluZ0VuY29kaW5nXTsKKwogICAgICAgICAgICAgLy8gRklYTUU6IHNlZW1zIHBvb3Ig
Zm9ybSB0byBkbyB0aGlzIGFzIGEgc2lkZSBlZmZlY3Qgb2YgZ2V0dGluZyBhIGRvY3VtZW50IGZy
YWdtZW50CiAgICAgICAgICAgICBpZiAodG9Qcml2YXRlKF9wcml2YXRlKS0+bG9hZGVyKQotICAg
ICAgICAgICAgICAgIHRvUHJpdmF0ZShfcHJpdmF0ZSktPmxvYWRlci0+YWRkQWxsQXJjaGl2ZVJl
c291cmNlcyhbYXJjaGl2ZSBfY29yZUxlZ2FjeVdlYkFyY2hpdmVdKTsKKyAgICAgICAgICAgICAg
ICB0b1ByaXZhdGUoX3ByaXZhdGUpLT5sb2FkZXItPmFkZEFsbEFyY2hpdmVSZXNvdXJjZXMoKlth
cmNoaXZlIF9jb3JlTGVnYWN5V2ViQXJjaGl2ZV0pOwogCiAgICAgICAgICAgICBET01Eb2N1bWVu
dEZyYWdtZW50ICpmcmFnbWVudCA9IFtbc2VsZiB3ZWJGcmFtZV0gX2RvY3VtZW50RnJhZ21lbnRX
aXRoTWFya3VwU3RyaW5nOm1hcmt1cFN0cmluZyBiYXNlVVJMU3RyaW5nOltbbWFpblJlc291cmNl
IFVSTF0gX3dlYl9vcmlnaW5hbERhdGFBc1N0cmluZ11dOwogICAgICAgICAgICAgW21hcmt1cFN0
cmluZyByZWxlYXNlXTsKQEAgLTMyNCw3ICszMjMsNyBAQCAtIChET01Eb2N1bWVudEZyYWdtZW50
ICopX2RvY3VtZW50RnJhZ21lbnRXaXRoSW1hZ2VSZXNvdXJjZTooV2ViUmVzb3VyY2UgKilyZXNv
dQogewogICAgIERPTUVsZW1lbnQgKmltYWdlRWxlbWVudCA9IFtzZWxmIF9pbWFnZUVsZW1lbnRX
aXRoSW1hZ2VSZXNvdXJjZTpyZXNvdXJjZV07CiAgICAgaWYgKCFpbWFnZUVsZW1lbnQpCi0gICAg
ICAgIHJldHVybiAwOworICAgICAgICByZXR1cm4gbmlsOwogICAgIERPTURvY3VtZW50RnJhZ21l
bnQgKmZyYWdtZW50ID0gW1tbc2VsZiB3ZWJGcmFtZV0gRE9NRG9jdW1lbnRdIGNyZWF0ZURvY3Vt
ZW50RnJhZ21lbnRdOwogICAgIFtmcmFnbWVudCBhcHBlbmRDaGlsZDppbWFnZUVsZW1lbnRdOwog
ICAgIHJldHVybiBmcmFnbWVudDsKQEAgLTUxOSwzMiArNTE4LDMxIEBAIC0gKFdlYkFyY2hpdmUg
Kil3ZWJBcmNoaXZlCiAtIChXZWJSZXNvdXJjZSAqKW1haW5SZXNvdXJjZQogewogICAgIGF1dG8g
Y29yZVJlc291cmNlID0gdG9Qcml2YXRlKF9wcml2YXRlKS0+bG9hZGVyLT5tYWluUmVzb3VyY2Uo
KTsKLSAgICByZXR1cm4gW1tbV2ViUmVzb3VyY2UgYWxsb2NdIF9pbml0V2l0aENvcmVSZXNvdXJj
ZTpXVEZNb3ZlKGNvcmVSZXNvdXJjZSldIGF1dG9yZWxlYXNlXTsKKyAgICBpZiAoIWNvcmVSZXNv
dXJjZSkKKyAgICAgICAgcmV0dXJuIG5pbDsKKyAgICByZXR1cm4gW1tbV2ViUmVzb3VyY2UgYWxs
b2NdIF9pbml0V2l0aENvcmVSZXNvdXJjZTpjb3JlUmVzb3VyY2UucmVsZWFzZU5vbk51bGwoKV0g
YXV0b3JlbGVhc2VdOwogfQogCiAtIChOU0FycmF5ICopc3VicmVzb3VyY2VzCiB7CiAgICAgYXV0
byBjb3JlU3VicmVzb3VyY2VzID0gdG9Qcml2YXRlKF9wcml2YXRlKS0+bG9hZGVyLT5zdWJyZXNv
dXJjZXMoKTsKLQogICAgIGF1dG8gc3VicmVzb3VyY2VzID0gYWRvcHROUyhbW05TTXV0YWJsZUFy
cmF5IGFsbG9jXSBpbml0V2l0aENhcGFjaXR5OmNvcmVTdWJyZXNvdXJjZXMuc2l6ZSgpXSk7Ci0g
ICAgZm9yIChjb25zdCBhdXRvJiBjb3JlU3VicmVzb3VyY2UgOiBjb3JlU3VicmVzb3VyY2VzKSB7
Ci0gICAgICAgIGlmIChhdXRvIHJlc291cmNlID0gYWRvcHROUyhbW1dlYlJlc291cmNlIGFsbG9j
XSBfaW5pdFdpdGhDb3JlUmVzb3VyY2U6Y29yZVN1YnJlc291cmNlXSkpCisgICAgZm9yIChhdXRv
JiBjb3JlU3VicmVzb3VyY2UgOiBjb3JlU3VicmVzb3VyY2VzKSB7CisgICAgICAgIGlmIChhdXRv
IHJlc291cmNlID0gYWRvcHROUyhbW1dlYlJlc291cmNlIGFsbG9jXSBfaW5pdFdpdGhDb3JlUmVz
b3VyY2U6Y29yZVN1YnJlc291cmNlLmNvcHlSZWYoKV0pKQogICAgICAgICAgICAgW3N1YnJlc291
cmNlcyBhZGRPYmplY3Q6cmVzb3VyY2UuZ2V0KCldOwogICAgIH0KLQogICAgIHJldHVybiBzdWJy
ZXNvdXJjZXMuYXV0b3JlbGVhc2UoKTsKIH0KIAogLSAoV2ViUmVzb3VyY2UgKilzdWJyZXNvdXJj
ZUZvclVSTDooTlNVUkwgKilVUkwKIHsKLSAgICBSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBzdWJy
ZXNvdXJjZSA9IHRvUHJpdmF0ZShfcHJpdmF0ZSktPmxvYWRlci0+c3VicmVzb3VyY2UoVVJMKTsK
LSAgICAKLSAgICByZXR1cm4gc3VicmVzb3VyY2UgPyBbW1tXZWJSZXNvdXJjZSBhbGxvY10gX2lu
aXRXaXRoQ29yZVJlc291cmNlOnN1YnJlc291cmNlLmdldCgpXSBhdXRvcmVsZWFzZV0gOiBuaWw7
CisgICAgYXV0byBzdWJyZXNvdXJjZSA9IHRvUHJpdmF0ZShfcHJpdmF0ZSktPmxvYWRlci0+c3Vi
cmVzb3VyY2UoVVJMKTsKKyAgICByZXR1cm4gc3VicmVzb3VyY2UgPyBbW1tXZWJSZXNvdXJjZSBh
bGxvY10gX2luaXRXaXRoQ29yZVJlc291cmNlOnN1YnJlc291cmNlLnJlbGVhc2VOb25OdWxsKCld
IGF1dG9yZWxlYXNlXSA6IG5pbDsKIH0KIAogLSAodm9pZClhZGRTdWJyZXNvdXJjZTooV2ViUmVz
b3VyY2UgKilzdWJyZXNvdXJjZQogeyAgICAKLSAgICB0b1ByaXZhdGUoX3ByaXZhdGUpLT5sb2Fk
ZXItPmFkZEFyY2hpdmVSZXNvdXJjZSgqW3N1YnJlc291cmNlIF9jb3JlUmVzb3VyY2VdKTsKKyAg
ICB0b1ByaXZhdGUoX3ByaXZhdGUpLT5sb2FkZXItPmFkZEFyY2hpdmVSZXNvdXJjZShbc3VicmVz
b3VyY2UgX2NvcmVSZXNvdXJjZV0pOwogfQogCiBAZW5kCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L21hYy9XZWJWaWV3L1dlYlJlc291cmNlLm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmll
dy9XZWJSZXNvdXJjZS5tbQppbmRleCBlNWQ4ZmQ0YWZiZDRkMmZhYzljZDM5MjE5MTZhNDliOGYx
NzM1ZWY2Li5iM2JiNzViYTlkMThkYzY5MDhhYmVlOWMyZGNiMDY2NWIxMTRhZmIwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlJlc291cmNlLm1tCisrKyBiL1NvdXJj
ZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUmVzb3VyY2UubW0KQEAgLTEsNSArMSw1IEBACiAvKgot
ICogQ29weXJpZ2h0IChDKSAyMDA1LCAyMDA2LCAyMDA3LCAyMDA4IEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNS0yMDE3IEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtNTcs
OSArNTcsOSBAQCBzdGF0aWMgTlNTdHJpbmcgKiBjb25zdCBXZWJSZXNvdXJjZVJlc3BvbnNlS2V5
ID0gICAgICAgICAgQCJXZWJSZXNvdXJjZVJlc3BvbnNlIgogCiBAaW50ZXJmYWNlIFdlYlJlc291
cmNlUHJpdmF0ZSA6IE5TT2JqZWN0IHsKIEBwdWJsaWMKLSAgICBBcmNoaXZlUmVzb3VyY2UqIGNv
cmVSZXNvdXJjZTsKKyAgICBSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBjb3JlUmVzb3VyY2U7CiB9
Ci0tIChpbnN0YW5jZXR5cGUpaW5pdFdpdGhDb3JlUmVzb3VyY2U6KFBhc3NSZWZQdHI8QXJjaGl2
ZVJlc291cmNlPiljb3JlUmVzb3VyY2U7CistIChpbnN0YW5jZXR5cGUpaW5pdFdpdGhDb3JlUmVz
b3VyY2U6KFJlZjxBcmNoaXZlUmVzb3VyY2U+JiYpY29yZVJlc291cmNlOwogQGVuZAogCiBAaW1w
bGVtZW50YXRpb24gV2ViUmVzb3VyY2VQcml2YXRlCkBAIC03OCwxMyArNzgsMTIgQEAgLSAoaW5z
dGFuY2V0eXBlKWluaXQKICAgICByZXR1cm4gW3N1cGVyIGluaXRdOwogfQogCi0tIChpbnN0YW5j
ZXR5cGUpaW5pdFdpdGhDb3JlUmVzb3VyY2U6KFBhc3NSZWZQdHI8QXJjaGl2ZVJlc291cmNlPilw
YXNzZWRSZXNvdXJjZQorLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoQ29yZVJlc291cmNlOihSZWY8
QXJjaGl2ZVJlc291cmNlPiYmKXBhc3NlZFJlc291cmNlCiB7CiAgICAgc2VsZiA9IFtzdXBlciBp
bml0XTsKICAgICBpZiAoIXNlbGYpCiAgICAgICAgIHJldHVybiBuaWw7Ci0gICAgLy8gQWNxdWly
ZSB0aGUgUGFzc1JlZlB0cjw+J3MgcmVmIGFzIG91ciBvd24gbWFudWFsIHJlZgotICAgIGNvcmVS
ZXNvdXJjZSA9IHBhc3NlZFJlc291cmNlLmxlYWtSZWYoKTsKKyAgICBjb3JlUmVzb3VyY2UgPSBX
VEZNb3ZlKHBhc3NlZFJlc291cmNlKTsKICAgICByZXR1cm4gc2VsZjsKIH0KIApAQCAtOTIsOSAr
OTEsNiBAQCAtICh2b2lkKWRlYWxsb2MKIHsKICAgICBpZiAoV2ViQ29yZU9iakNTY2hlZHVsZURl
YWxsb2NhdGVPbk1haW5UaHJlYWQoW1dlYlJlc291cmNlUHJpdmF0ZSBjbGFzc10sIHNlbGYpKQog
ICAgICAgICByZXR1cm47Ci0KLSAgICBpZiAoY29yZVJlc291cmNlKQotICAgICAgICBjb3JlUmVz
b3VyY2UtPmRlcmVmKCk7CiAgICAgW3N1cGVyIGRlYWxsb2NdOwogfQogCkBAIC0xNTMsMTQgKzE0
OSwxOSBAQCAtIChpbnN0YW5jZXR5cGUpaW5pdFdpdGhDb2RlcjooTlNDb2RlciAqKWRlY29kZXIK
ICAgICAgICAgcmV0dXJuIG5pbDsKICAgICB9CiAKLSAgICBfcHJpdmF0ZSA9IFtbV2ViUmVzb3Vy
Y2VQcml2YXRlIGFsbG9jXSBpbml0V2l0aENvcmVSZXNvdXJjZTpBcmNoaXZlUmVzb3VyY2U6OmNy
ZWF0ZShTaGFyZWRCdWZmZXI6OndyYXBOU0RhdGEoZGF0YSksIHVybCwgbWltZVR5cGUsIHRleHRF
bmNvZGluZywgZnJhbWVOYW1lLCByZXNwb25zZSldOworICAgIGF1dG8gY29yZVJlc291cmNlID0g
QXJjaGl2ZVJlc291cmNlOjpjcmVhdGUoU2hhcmVkQnVmZmVyOjp3cmFwTlNEYXRhKGRhdGEpLCB1
cmwsIG1pbWVUeXBlLCB0ZXh0RW5jb2RpbmcsIGZyYW1lTmFtZSwgcmVzcG9uc2UpOworICAgIGlm
ICghY29yZVJlc291cmNlKSB7CisgICAgICAgIFtzZWxmIHJlbGVhc2VdOworICAgICAgICByZXR1
cm4gbmlsOworICAgIH0KIAorICAgIF9wcml2YXRlID0gW1tXZWJSZXNvdXJjZVByaXZhdGUgYWxs
b2NdIGluaXRXaXRoQ29yZVJlc291cmNlOmNvcmVSZXNvdXJjZS5yZWxlYXNlTm9uTnVsbCgpXTsK
ICAgICByZXR1cm4gc2VsZjsKIH0KIAogLSAodm9pZCllbmNvZGVXaXRoQ29kZXI6KE5TQ29kZXIg
KillbmNvZGVyCiB7Ci0gICAgQXJjaGl2ZVJlc291cmNlICpyZXNvdXJjZSA9IF9wcml2YXRlLT5j
b3JlUmVzb3VyY2U7CisgICAgYXV0byogcmVzb3VyY2UgPSBfcHJpdmF0ZS0+Y29yZVJlc291cmNl
LmdldCgpOwogICAgIAogICAgIE5TRGF0YSAqZGF0YSA9IG5pbDsKICAgICBOU1VSTCAqdXJsID0g
bmlsOwpAQCAtMjA5LDggKzIxMCw3IEBAIC0gKE5TVVJMICopVVJMCiAKICAgICBpZiAoIV9wcml2
YXRlLT5jb3JlUmVzb3VyY2UpCiAgICAgICAgIHJldHVybiBuaWw7Ci0gICAgTlNVUkwgKnVybCA9
IF9wcml2YXRlLT5jb3JlUmVzb3VyY2UtPnVybCgpOwotICAgIHJldHVybiB1cmw7CisgICAgcmV0
dXJuIF9wcml2YXRlLT5jb3JlUmVzb3VyY2UtPnVybCgpOwogfQogCiAtIChOU1N0cmluZyAqKU1J
TUVUeXBlCkBAIC0yNTIsMjIgKzI1MiwxOSBAQCBAZW5kCiAKIEBpbXBsZW1lbnRhdGlvbiBXZWJS
ZXNvdXJjZSAoV2ViUmVzb3VyY2VJbnRlcm5hbCkKIAotLSAoaWQpX2luaXRXaXRoQ29yZVJlc291
cmNlOihQYXNzUmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4pY29yZVJlc291cmNlCistIChpZClfaW5p
dFdpdGhDb3JlUmVzb3VyY2U6KFJlZjxBcmNoaXZlUmVzb3VyY2U+JiYpY29yZVJlc291cmNlCiB7
CiAgICAgc2VsZiA9IFtzdXBlciBpbml0XTsKICAgICBpZiAoIXNlbGYpCiAgICAgICAgIHJldHVy
biBuaWw7Ci0gICAgICAgICAgICAKLSAgICBBU1NFUlQoY29yZVJlc291cmNlKTsKLSAgICAKLSAg
ICBfcHJpdmF0ZSA9IFtbV2ViUmVzb3VyY2VQcml2YXRlIGFsbG9jXSBpbml0V2l0aENvcmVSZXNv
dXJjZTpjb3JlUmVzb3VyY2VdOwotICAgICAgICAgICAgCisKKyAgICBfcHJpdmF0ZSA9IFtbV2Vi
UmVzb3VyY2VQcml2YXRlIGFsbG9jXSBpbml0V2l0aENvcmVSZXNvdXJjZTpXVEZNb3ZlKGNvcmVS
ZXNvdXJjZSldOwogICAgIHJldHVybiBzZWxmOwogfQogCi0tIChXZWJDb3JlOjpBcmNoaXZlUmVz
b3VyY2UgKilfY29yZVJlc291cmNlCistIChXZWJDb3JlOjpBcmNoaXZlUmVzb3VyY2UmKV9jb3Jl
UmVzb3VyY2UKIHsKLSAgICByZXR1cm4gX3ByaXZhdGUtPmNvcmVSZXNvdXJjZTsKKyAgICByZXR1
cm4gKl9wcml2YXRlLT5jb3JlUmVzb3VyY2U7CiB9CiAKIEBlbmQKQEAgLTMwNCw4ICszMDEsMTMg
QEAgLSAoaWQpX2luaXRXaXRoRGF0YTooTlNEYXRhICopZGF0YQogICAgICAgICByZXR1cm4gbmls
OwogICAgIH0KIAotICAgIF9wcml2YXRlID0gW1tXZWJSZXNvdXJjZVByaXZhdGUgYWxsb2NdIGlu
aXRXaXRoQ29yZVJlc291cmNlOkFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKFNoYXJlZEJ1ZmZlcjo6
d3JhcE5TRGF0YShjb3B5RGF0YSA/IFtbZGF0YSBjb3B5XSBhdXRvcmVsZWFzZV0gOiBkYXRhKSwg
VVJMLCBNSU1FVHlwZSwgdGV4dEVuY29kaW5nTmFtZSwgZnJhbWVOYW1lLCByZXNwb25zZSldOwor
ICAgIGF1dG8gY29yZVJlc291cmNlID0gQXJjaGl2ZVJlc291cmNlOjpjcmVhdGUoU2hhcmVkQnVm
ZmVyOjp3cmFwTlNEYXRhKGNvcHlEYXRhID8gW1tkYXRhIGNvcHldIGF1dG9yZWxlYXNlXSA6IGRh
dGEpLCBVUkwsIE1JTUVUeXBlLCB0ZXh0RW5jb2RpbmdOYW1lLCBmcmFtZU5hbWUsIHJlc3BvbnNl
KTsKKyAgICBpZiAoIWNvcmVSZXNvdXJjZSkgeworICAgICAgICBbc2VsZiByZWxlYXNlXTsKKyAg
ICAgICAgcmV0dXJuIG5pbDsKKyAgICB9CiAKKyAgICBfcHJpdmF0ZSA9IFtbV2ViUmVzb3VyY2VQ
cml2YXRlIGFsbG9jXSBpbml0V2l0aENvcmVSZXNvdXJjZTpjb3JlUmVzb3VyY2UucmVsZWFzZU5v
bk51bGwoKV07CiAgICAgcmV0dXJuIHNlbGY7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvbWFjL1dlYlZpZXcvV2ViUmVzb3VyY2VJbnRlcm5hbC5oIGIvU291cmNlL1dlYktpdC9tYWMv
V2ViVmlldy9XZWJSZXNvdXJjZUludGVybmFsLmgKaW5kZXggMmY0NjkxMmU4YmU4ZDNiMzkyY2Y1
NzM5MmYwNzlkYWI5ZDgwOWUyNS4uODBjOTc2ZWI2YjM2NTRmYzFjNjg4YzJhOTZiODNiZGI3YWY3
NzI1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJSZXNvdXJjZUlu
dGVybmFsLmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJSZXNvdXJjZUludGVy
bmFsLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA4IEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOC0yMDE3IEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwpAQCAtMjcsMTMgKzI3LDEzIEBACiAgKi8KIAogI2ltcG9ydCAiV2ViUmVzb3VyY2VQcml2YXRl
LmgiCi0jaW1wb3J0IDx3dGYvUGFzc1JlZlB0ci5oPgorI2ltcG9ydCA8d3RmL1JlZi5oPgogCiBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgY2xhc3MgQXJjaGl2ZVJlc291cmNlOwogfQogCiBAaW50
ZXJmYWNlIFdlYlJlc291cmNlIChXZWJSZXNvdXJjZUludGVybmFsKQotLSAoaWQpX2luaXRXaXRo
Q29yZVJlc291cmNlOihQYXNzUmVmUHRyPFdlYkNvcmU6OkFyY2hpdmVSZXNvdXJjZT4pY29yZVJl
c291cmNlOwotLSAoV2ViQ29yZTo6QXJjaGl2ZVJlc291cmNlKilfY29yZVJlc291cmNlOworLSAo
aWQpX2luaXRXaXRoQ29yZVJlc291cmNlOihSZWY8V2ViQ29yZTo6QXJjaGl2ZVJlc291cmNlPiYm
KWNvcmVSZXNvdXJjZTsKKy0gKFdlYkNvcmU6OkFyY2hpdmVSZXNvdXJjZSYpX2NvcmVSZXNvdXJj
ZTsKIEBlbmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL1BsdWdpbnMvUGx1Z2luVmll
dy5jcHAgYi9Tb3VyY2UvV2ViS2l0L3dpbi9QbHVnaW5zL1BsdWdpblZpZXcuY3BwCmluZGV4IDU4
M2QxOTE0MzY2YmQ3NDc2ZjhlMjk3ZDUwNjMxNjg3NGFhYTgzMjYuLjY1YTFjYTQ3YWRlNGE5NTky
NjFjNDU0YWE3NzFjNjUwMzRiMTU2YWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL1Bs
dWdpbnMvUGx1Z2luVmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdC93aW4vUGx1Z2lucy9QbHVn
aW5WaWV3LmNwcApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYsIDIw
MDcsIDIwMDgsIDIwMDksIDIwMTAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICog
Q29weXJpZ2h0IChDKSAyMDA2LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgog
ICogQ29weXJpZ2h0IChDKSAyMDA4IENvbGxhYm9yYSBMdGQuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CiAgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR2lyaXNoIFJhbWFrcmlzaG5hbiA8Z2lyaXNoQGZvcndh
cmRiaWFzLmluPgogICoKQEAgLTMxLDYgKzMxLDcgQEAKICNpbmNsdWRlICJQbHVnaW5EYXRhYmFz
ZS5oIgogI2luY2x1ZGUgIlBsdWdpbkRlYnVnLmgiCiAjaW5jbHVkZSAiUGx1Z2luUGFja2FnZS5o
IgorI2luY2x1ZGUgIldlYkZyYW1lTG9hZGVyQ2xpZW50LmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9C
cmlkZ2VKU0MuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0Nocm9tZS5oPgogI2luY2x1ZGUgPFdlYkNv
cmUvQ29tbW9uVk0uaD4KQEAgLTI3NSw3ICsyNzYsNyBAQCB2b2lkIFBsdWdpblZpZXc6Om1lZGlh
Q2FuU3RhcnQoRG9jdW1lbnQmKQogewogICAgIEFTU0VSVCghbV9pc1N0YXJ0ZWQpOwogICAgIGlm
ICghc3RhcnQoKSkKLSAgICAgICAgcGFyZW50RnJhbWUoKS0+bG9hZGVyKCkuY2xpZW50KCkuZGlz
cGF0Y2hEaWRGYWlsVG9TdGFydFBsdWdpbih0aGlzKTsKKyAgICAgICAgc3RhdGljX2Nhc3Q8V2Vi
RnJhbWVMb2FkZXJDbGllbnQmPihwYXJlbnRGcmFtZSgpLT5sb2FkZXIoKS5jbGllbnQoKSkuZGlz
cGF0Y2hEaWRGYWlsVG9TdGFydFBsdWdpbih0aGlzKTsKIH0KIAogUGx1Z2luVmlldzo6flBsdWdp
blZpZXcoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2Vi
Q2hyb21lQ2xpZW50LmNwcCBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkNo
cm9tZUNsaWVudC5jcHAKaW5kZXggZjI0ZTYzMzQ0NWU0MzU1YjNiNDI4Zjk5ODdkYzQyZjgxMmMx
YmZmYy4uYTM5ZDU4NzUxYjZlNGJlODI4ZjVkZDUyZWY4ZDdiMDI2NTM3YzJkMSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3Bw
CkBAIC02MTgsMTUgKzYxOCwxMyBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6cmVhY2hlZEFwcGxp
Y2F0aW9uQ2FjaGVPcmlnaW5RdW90YShTZWN1cml0eU9yaWdpbiosIGludDY0XwogICAgIG5vdElt
cGxlbWVudGVkKCk7CiB9CiAKLXZvaWQgV2ViQ2hyb21lQ2xpZW50OjpydW5PcGVuUGFuZWwoRnJh
bWUqLCBQYXNzUmVmUHRyPEZpbGVDaG9vc2VyPiBwcnBGaWxlQ2hvb3NlcikKK3ZvaWQgV2ViQ2hy
b21lQ2xpZW50OjpydW5PcGVuUGFuZWwoRnJhbWUmLCBGaWxlQ2hvb3NlciYgZmlsZUNob29zZXIp
CiB7Ci0gICAgUmVmUHRyPEZpbGVDaG9vc2VyPiBmaWxlQ2hvb3NlciA9IHBycEZpbGVDaG9vc2Vy
OwotCiAgICAgSFdORCB2aWV3V2luZG93OwogICAgIGlmIChGQUlMRUQobV93ZWJWaWV3LT52aWV3
V2luZG93KCZ2aWV3V2luZG93KSkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGJvb2wgbXVsdGlG
aWxlID0gZmlsZUNob29zZXItPnNldHRpbmdzKCkuYWxsb3dzTXVsdGlwbGVGaWxlczsKKyAgICBi
b29sIG11bHRpRmlsZSA9IGZpbGVDaG9vc2VyLnNldHRpbmdzKCkuYWxsb3dzTXVsdGlwbGVGaWxl
czsKICAgICBWZWN0b3I8V0NIQVI+IGZpbGVCdWYobXVsdGlGaWxlID8gbWF4RmlsZVBhdGhzTGlz
dFNpemUgOiBNQVhfUEFUSCk7CiAKICAgICBPUEVORklMRU5BTUUgb2ZuOwpAQCAtNjc1LDcgKzY3
Myw3IEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpydW5PcGVuUGFuZWwoRnJhbWUqLCBQYXNzUmVm
UHRyPEZpbGVDaG9vc2VyPiBwcnBGaWxlQ2hvb3NlCiAgICAgICAgIH0gZWxzZQogICAgICAgICAg
ICAgZmlsZUxpc3QuYXBwZW5kKGZpbGUpOwogICAgICAgICBBU1NFUlQoZmlsZUxpc3Quc2l6ZSgp
KTsKLSAgICAgICAgZmlsZUNob29zZXItPmNob29zZUZpbGVzKGZpbGVMaXN0KTsKKyAgICAgICAg
ZmlsZUNob29zZXIuY2hvb3NlRmlsZXMoZmlsZUxpc3QpOwogICAgIH0KICAgICAvLyBGSVhNRTog
U2hvdyBzb21lIHNvcnQgb2YgZXJyb3IgaWYgdG9vIG1hbnkgZmlsZXMgYXJlIHNlbGVjdGVkIGFu
ZCB0aGUgYnVmZmVyIGlzIHRvbyBzbWFsbC4gIEZvciBub3csIHRoaXMgd2lsbCBmYWlsIHNpbGVu
dGx5LgogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2Vi
Q2hyb21lQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJDaHJv
bWVDbGllbnQuaAppbmRleCA0OTNkZTE2MjMyY2NkYjYxZDlhZDg5MzM4YmE5N2NhNjJlMGIyNjIy
Li45Mjg3MmI0MWMxMmZiMzE1ZTU0MWVjYmRiOTVkYmNiMTU2NjI3MmRjIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaAorKysgYi9T
b3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaApAQCAtMTE1
LDcgKzExNSw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgcmVhY2hlZE1heEFwcENhY2hl
U2l6ZShpbnQ2NF90IHNwYWNlTmVlZGVkKTsKICAgICB2aXJ0dWFsIHZvaWQgcmVhY2hlZEFwcGxp
Y2F0aW9uQ2FjaGVPcmlnaW5RdW90YShXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiosIGludDY0X3Qg
dG90YWxTcGFjZU5lZWRlZCk7CiAKLSAgICB2aXJ0dWFsIHZvaWQgcnVuT3BlblBhbmVsKFdlYkNv
cmU6OkZyYW1lKiwgUGFzc1JlZlB0cjxXZWJDb3JlOjpGaWxlQ2hvb3Nlcj4pOworICAgIHZpcnR1
YWwgdm9pZCBydW5PcGVuUGFuZWwoV2ViQ29yZTo6RnJhbWUmLCBXZWJDb3JlOjpGaWxlQ2hvb3Nl
ciYpOwogICAgIHZpcnR1YWwgdm9pZCBsb2FkSWNvbkZvckZpbGVzKGNvbnN0IFZlY3RvcjxXVEY6
OlN0cmluZz4mLCBXZWJDb3JlOjpGaWxlSWNvbkxvYWRlciYpOwogCiAgICAgdmlydHVhbCB2b2lk
IHNldEN1cnNvcihjb25zdCBXZWJDb3JlOjpDdXJzb3ImKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuY3BwCmluZGV4IGZiMjM0Mjdk
MWJjZTA5M2I5OWMxMGFjY2Y5YjdkOWM3ZmU3NDY5NTUuLjcyNDQ1Nzg0MTMwZWY1YzM1NGFhMTAw
OGMwN2E2NzhmMTk2N2MyMjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVT
dXBwb3J0L1dlYkVkaXRvckNsaWVudC5jcHAKKysrIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29y
ZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmNwcApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5
cmlnaHQgKEMpIDIwMDYtMjAwNywgMjAxMSwgMjAxNC0yMDE1IEFwcGxlIEluYy4gIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMuICBBbGwg
cmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0zNzQs
MjIgKzM3NCw2IEBAIGJvb2wgV2ViRWRpdG9yQ2xpZW50OjpzaG91bGRNb3ZlUmFuZ2VBZnRlckRl
bGV0ZShSYW5nZSosIFJhbmdlKikKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotYm9vbCBXZWJFZGl0
b3JDbGllbnQ6OnNob3VsZENoYW5nZVR5cGluZ1N0eWxlKFN0eWxlUHJvcGVydGllcyosIFN0eWxl
UHJvcGVydGllcyopCi17Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKLSAgICByZXR1cm4gZmFsc2U7
Ci19Ci0KLXZvaWQgV2ViRWRpdG9yQ2xpZW50Ojp3ZWJWaWV3RGlkQ2hhbmdlVHlwaW5nU3R5bGUo
V2ViTm90aWZpY2F0aW9uKiAvKm5vdGlmaWNhdGlvbiovKQotewotICAgIG5vdEltcGxlbWVudGVk
KCk7Ci19Ci0KLXZvaWQgV2ViRWRpdG9yQ2xpZW50Ojp3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9u
KFdlYk5vdGlmaWNhdGlvbiogLypub3RpZmljYXRpb24qLykKLXsKLSAgICBub3RJbXBsZW1lbnRl
ZCgpOwotfQotCiBib29sIFdlYkVkaXRvckNsaWVudDo6c21hcnRJbnNlcnREZWxldGVFbmFibGVk
KHZvaWQpCiB7CiAgICAgUGFnZSogcGFnZSA9IG1fd2ViVmlldy0+cGFnZSgpOwpAQCAtNTIxLDcg
KzUwNSw3IEBAIHZvaWQgV2ViRWRpdG9yQ2xpZW50Ojp0ZXh0RGlkQ2hhbmdlSW5UZXh0QXJlYShF
bGVtZW50KiBlKQogY2xhc3MgV2ViRWRpdG9yVW5kb0NvbW1hbmQgOiBwdWJsaWMgSVdlYlVuZG9D
b21tYW5kCiB7CiBwdWJsaWM6Ci0gICAgV2ViRWRpdG9yVW5kb0NvbW1hbmQoUGFzc1JlZlB0cjxV
bmRvU3RlcD4sIGJvb2wgaXNVbmRvKTsKKyAgICBXZWJFZGl0b3JVbmRvQ29tbWFuZChVbmRvU3Rl
cCYsIGJvb2wgaXNVbmRvKTsKICAgICB2b2lkIGV4ZWN1dGUoKTsKIAogICAgIC8vIElVbmtub3du
CkBAIC01MzEsMTEgKzUxNSwxMSBAQCBwdWJsaWM6CiAKIHByaXZhdGU6CiAgICAgVUxPTkcgbV9y
ZWZDb3VudDsKLSAgICBSZWZQdHI8VW5kb1N0ZXA+IG1fc3RlcDsKKyAgICBSZWY8VW5kb1N0ZXA+
IG1fc3RlcDsKICAgICBib29sIG1faXNVbmRvOwogfTsKIAotV2ViRWRpdG9yVW5kb0NvbW1hbmQ6
OldlYkVkaXRvclVuZG9Db21tYW5kKFBhc3NSZWZQdHI8VW5kb1N0ZXA+IHN0ZXAsIGJvb2wgaXNV
bmRvKQorV2ViRWRpdG9yVW5kb0NvbW1hbmQ6OldlYkVkaXRvclVuZG9Db21tYW5kKFVuZG9TdGVw
JiBzdGVwLCBib29sIGlzVW5kbykKICAgICA6IG1fc3RlcChzdGVwKQogICAgICwgbV9pc1VuZG8o
aXNVbmRvKSAKICAgICAsIG1fcmVmQ291bnQoMSkKQEAgLTY0MCwxMSArNjI0LDExIEBAIHN0YXRp
YyBTdHJpbmcgdW5kb05hbWVGb3JFZGl0QWN0aW9uKEVkaXRBY3Rpb24gZWRpdEFjdGlvbikKICAg
ICByZXR1cm4gU3RyaW5nKCk7CiB9CiAKLXZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclVu
ZG9TdGVwKFBhc3NSZWZQdHI8VW5kb1N0ZXA+IHN0ZXApCit2b2lkIFdlYkVkaXRvckNsaWVudDo6
cmVnaXN0ZXJVbmRvU3RlcChVbmRvU3RlcCYgc3RlcCkKIHsKICAgICBJV2ViVUlEZWxlZ2F0ZSog
dWlEZWxlZ2F0ZSA9IDA7CiAgICAgaWYgKFNVQ0NFRURFRChtX3dlYlZpZXctPnVpRGVsZWdhdGUo
JnVpRGVsZWdhdGUpKSkgewotICAgICAgICBTdHJpbmcgYWN0aW9uTmFtZSA9IHVuZG9OYW1lRm9y
RWRpdEFjdGlvbihzdGVwLT5lZGl0aW5nQWN0aW9uKCkpOworICAgICAgICBTdHJpbmcgYWN0aW9u
TmFtZSA9IHVuZG9OYW1lRm9yRWRpdEFjdGlvbihzdGVwLmVkaXRpbmdBY3Rpb24oKSk7CiAgICAg
ICAgIFdlYkVkaXRvclVuZG9Db21tYW5kKiB1bmRvQ29tbWFuZCA9IG5ldyBXZWJFZGl0b3JVbmRv
Q29tbWFuZChzdGVwLCB0cnVlKTsKICAgICAgICAgaWYgKCF1bmRvQ29tbWFuZCkKICAgICAgICAg
ICAgIHJldHVybjsKQEAgLTY1Niw3ICs2NDAsNyBAQCB2b2lkIFdlYkVkaXRvckNsaWVudDo6cmVn
aXN0ZXJVbmRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPiBzdGVwKQogICAgIH0KIH0KIAotdm9p
ZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyUmVkb1N0ZXAoUGFzc1JlZlB0cjxVbmRvU3RlcD4g
c3RlcCkKK3ZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclJlZG9TdGVwKFVuZG9TdGVwJiBz
dGVwKQogewogICAgIElXZWJVSURlbGVnYXRlKiB1aURlbGVnYXRlID0gMDsKICAgICBpZiAoU1VD
Q0VFREVEKG1fd2ViVmlldy0+dWlEZWxlZ2F0ZSgmdWlEZWxlZ2F0ZSkpKSB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuaCBiL1Nv
dXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oCmluZGV4IGIx
NDhiZTcyYWZmYWIxYmYzNDVlMDExMDdmYmY1Mjc1OGI4NjNlNWUuLjRlMGZjOWY4NGQ1NDYyY2U0
Njc4ODk2OGRlZDZlYzk2NjE2NmYxOTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL1dl
YkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL1dl
YkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENv
cHlyaWdodCAoQykgMjAwNi0yMDA3IEFwcGxlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVk
LgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0zMyw5MSArMzMsODcgQEAgY2xh
c3MgV2ViVmlldzsKIGNsYXNzIFdlYk5vdGlmaWNhdGlvbjsKIGNsYXNzIFdlYkVkaXRvclVuZG9U
YXJnZXQ7CiAKLWNsYXNzIFdlYkVkaXRvckNsaWVudCA6IHB1YmxpYyBXZWJDb3JlOjpFZGl0b3JD
bGllbnQsIHB1YmxpYyBXZWJDb3JlOjpUZXh0Q2hlY2tlckNsaWVudCB7CitjbGFzcyBXZWJFZGl0
b3JDbGllbnQgZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6RWRpdG9yQ2xpZW50LCBwdWJsaWMgV2Vi
Q29yZTo6VGV4dENoZWNrZXJDbGllbnQgewogcHVibGljOgogICAgIFdlYkVkaXRvckNsaWVudChX
ZWJWaWV3Kik7CiAgICAgfldlYkVkaXRvckNsaWVudCgpOwogCi0gICAgdmlydHVhbCBib29sIGlz
Q29udGludW91c1NwZWxsQ2hlY2tpbmdFbmFibGVkKCk7Ci0gICAgdmlydHVhbCB2b2lkIHRvZ2ds
ZUdyYW1tYXJDaGVja2luZygpOwotICAgIHZpcnR1YWwgYm9vbCBpc0dyYW1tYXJDaGVja2luZ0Vu
YWJsZWQoKTsKLSAgICB2aXJ0dWFsIHZvaWQgdG9nZ2xlQ29udGludW91c1NwZWxsQ2hlY2tpbmco
KTsKLSAgICB2aXJ0dWFsIGludCBzcGVsbENoZWNrZXJEb2N1bWVudFRhZygpOwotCi0gICAgdmly
dHVhbCBib29sIHNob3VsZEJlZ2luRWRpdGluZyhXZWJDb3JlOjpSYW5nZSopOwotICAgIHZpcnR1
YWwgYm9vbCBzaG91bGRFbmRFZGl0aW5nKFdlYkNvcmU6OlJhbmdlKik7Ci0gICAgdmlydHVhbCBi
b29sIHNob3VsZEluc2VydFRleHQoY29uc3QgV1RGOjpTdHJpbmcmLCBXZWJDb3JlOjpSYW5nZSos
IFdlYkNvcmU6OkVkaXRvckluc2VydEFjdGlvbik7Ci0KLSAgICB2aXJ0dWFsIHZvaWQgZGlkQmVn
aW5FZGl0aW5nKCk7Ci0gICAgdmlydHVhbCB2b2lkIGRpZEVuZEVkaXRpbmcoKTsKLSAgICB2aXJ0
dWFsIHZvaWQgd2lsbFdyaXRlU2VsZWN0aW9uVG9QYXN0ZWJvYXJkKFdlYkNvcmU6OlJhbmdlKik7
Ci0gICAgdmlydHVhbCB2b2lkIGRpZFdyaXRlU2VsZWN0aW9uVG9QYXN0ZWJvYXJkKCk7Ci0gICAg
dmlydHVhbCB2b2lkIGdldENsaWVudFBhc3RlYm9hcmREYXRhRm9yUmFuZ2UoV2ViQ29yZTo6UmFu
Z2UqLCBWZWN0b3I8U3RyaW5nPiYgcGFzdGVib2FyZFR5cGVzLCBWZWN0b3I8UmVmUHRyPFdlYkNv
cmU6OlNoYXJlZEJ1ZmZlcj4gPiYgcGFzdGVib2FyZERhdGEpOwotCi0gICAgdmlydHVhbCB2b2lk
IHJlc3BvbmRUb0NoYW5nZWRDb250ZW50cygpOwotICAgIHZpcnR1YWwgdm9pZCByZXNwb25kVG9D
aGFuZ2VkU2VsZWN0aW9uKFdlYkNvcmU6OkZyYW1lKik7Citwcml2YXRlOgorICAgIGJvb2wgaXND
b250aW51b3VzU3BlbGxDaGVja2luZ0VuYWJsZWQoKSBmaW5hbDsKKyAgICB2b2lkIHRvZ2dsZUdy
YW1tYXJDaGVja2luZygpIGZpbmFsOworICAgIGJvb2wgaXNHcmFtbWFyQ2hlY2tpbmdFbmFibGVk
KCkgZmluYWw7CisgICAgdm9pZCB0b2dnbGVDb250aW51b3VzU3BlbGxDaGVja2luZygpIGZpbmFs
OworICAgIGludCBzcGVsbENoZWNrZXJEb2N1bWVudFRhZygpIGZpbmFsOworCisgICAgYm9vbCBz
aG91bGRCZWdpbkVkaXRpbmcoV2ViQ29yZTo6UmFuZ2UqKSBmaW5hbDsKKyAgICBib29sIHNob3Vs
ZEVuZEVkaXRpbmcoV2ViQ29yZTo6UmFuZ2UqKSBmaW5hbDsKKyAgICBib29sIHNob3VsZEluc2Vy
dFRleHQoY29uc3QgV1RGOjpTdHJpbmcmLCBXZWJDb3JlOjpSYW5nZSosIFdlYkNvcmU6OkVkaXRv
ckluc2VydEFjdGlvbikgZmluYWw7CisKKyAgICB2b2lkIGRpZEJlZ2luRWRpdGluZygpIGZpbmFs
OworICAgIHZvaWQgZGlkRW5kRWRpdGluZygpIGZpbmFsOworICAgIHZvaWQgd2lsbFdyaXRlU2Vs
ZWN0aW9uVG9QYXN0ZWJvYXJkKFdlYkNvcmU6OlJhbmdlKikgZmluYWw7CisgICAgdm9pZCBkaWRX
cml0ZVNlbGVjdGlvblRvUGFzdGVib2FyZCgpIGZpbmFsOworICAgIHZvaWQgZ2V0Q2xpZW50UGFz
dGVib2FyZERhdGFGb3JSYW5nZShXZWJDb3JlOjpSYW5nZSosIFZlY3RvcjxTdHJpbmc+JiBwYXN0
ZWJvYXJkVHlwZXMsIFZlY3RvcjxSZWZQdHI8V2ViQ29yZTo6U2hhcmVkQnVmZmVyPj4mIHBhc3Rl
Ym9hcmREYXRhKSBmaW5hbDsKKworICAgIHZvaWQgcmVzcG9uZFRvQ2hhbmdlZENvbnRlbnRzKCkg
ZmluYWw7CisgICAgdm9pZCByZXNwb25kVG9DaGFuZ2VkU2VsZWN0aW9uKFdlYkNvcmU6OkZyYW1l
KikgZmluYWw7CiAgICAgdm9pZCBkaWRDaGFuZ2VTZWxlY3Rpb25BbmRVcGRhdGVMYXlvdXQoKSBm
aW5hbCB7IH0KICAgICB2b2lkIHVwZGF0ZUVkaXRvclN0YXRlQWZ0ZXJMYXlvdXRJZkVkaXRhYmls
aXR5Q2hhbmdlZCgpIGZpbmFsIHsgfSAKICAgICB2b2lkIGNhbmNlbGVkQ29tcG9zaXRpb24oKSBm
aW5hbDsKICAgICB2b2lkIGRpc2NhcmRlZENvbXBvc2l0aW9uKFdlYkNvcmU6OkZyYW1lKikgZmlu
YWw7CiAKLSAgICBib29sIHNob3VsZERlbGV0ZVJhbmdlKFdlYkNvcmU6OlJhbmdlKik7Ci0KLSAg
ICBib29sIHNob3VsZEluc2VydE5vZGUoV2ViQ29yZTo6Tm9kZSosIFdlYkNvcmU6OlJhbmdlKiBy
ZXBsYWNpbmdSYW5nZSwgV2ViQ29yZTo6RWRpdG9ySW5zZXJ0QWN0aW9uKTsKLSAgICBib29sIHNo
b3VsZEFwcGx5U3R5bGUoV2ViQ29yZTo6U3R5bGVQcm9wZXJ0aWVzKiwgV2ViQ29yZTo6UmFuZ2Uq
KTsKLSAgICB2b2lkIGRpZEFwcGx5U3R5bGUoKTsKLSAgICBib29sIHNob3VsZE1vdmVSYW5nZUFm
dGVyRGVsZXRlKFdlYkNvcmU6OlJhbmdlKiwgV2ViQ29yZTo6UmFuZ2UqKTsKLSAgICBib29sIHNo
b3VsZENoYW5nZVR5cGluZ1N0eWxlKFdlYkNvcmU6OlN0eWxlUHJvcGVydGllcyogY3VycmVudFN0
eWxlLCBXZWJDb3JlOjpTdHlsZVByb3BlcnRpZXMqIHRvUHJvcG9zZWRTdHlsZSk7CisgICAgYm9v
bCBzaG91bGREZWxldGVSYW5nZShXZWJDb3JlOjpSYW5nZSopIGZpbmFsOwogCi0gICAgdm9pZCB3
ZWJWaWV3RGlkQ2hhbmdlVHlwaW5nU3R5bGUoV2ViTm90aWZpY2F0aW9uKik7Ci0gICAgdm9pZCB3
ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uKFdlYk5vdGlmaWNhdGlvbiopOworICAgIGJvb2wgc2hv
dWxkSW5zZXJ0Tm9kZShXZWJDb3JlOjpOb2RlKiwgV2ViQ29yZTo6UmFuZ2UqIHJlcGxhY2luZ1Jh
bmdlLCBXZWJDb3JlOjpFZGl0b3JJbnNlcnRBY3Rpb24pIGZpbmFsOworICAgIGJvb2wgc2hvdWxk
QXBwbHlTdHlsZShXZWJDb3JlOjpTdHlsZVByb3BlcnRpZXMqLCBXZWJDb3JlOjpSYW5nZSopIGZp
bmFsOworICAgIHZvaWQgZGlkQXBwbHlTdHlsZSgpIGZpbmFsOworICAgIGJvb2wgc2hvdWxkTW92
ZVJhbmdlQWZ0ZXJEZWxldGUoV2ViQ29yZTo6UmFuZ2UqLCBXZWJDb3JlOjpSYW5nZSopIGZpbmFs
OwogCi0gICAgYm9vbCBzbWFydEluc2VydERlbGV0ZUVuYWJsZWQoKTsKLSAgICBib29sIGlzU2Vs
ZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxlZCgpOworICAgIGJvb2wgc21hcnRJbnNlcnREZWxl
dGVFbmFibGVkKCkgZmluYWw7CisgICAgYm9vbCBpc1NlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVu
YWJsZWQoKSBmaW5hbDsKIAotICAgIHZvaWQgcmVnaXN0ZXJVbmRvU3RlcChQYXNzUmVmUHRyPFdl
YkNvcmU6OlVuZG9TdGVwPik7Ci0gICAgdm9pZCByZWdpc3RlclJlZG9TdGVwKFBhc3NSZWZQdHI8
V2ViQ29yZTo6VW5kb1N0ZXA+KTsKKyAgICB2b2lkIHJlZ2lzdGVyVW5kb1N0ZXAoV2ViQ29yZTo6
VW5kb1N0ZXAmKSBmaW5hbDsKKyAgICB2b2lkIHJlZ2lzdGVyUmVkb1N0ZXAoV2ViQ29yZTo6VW5k
b1N0ZXAmKSBmaW5hbDsKICAgICB2b2lkIGNsZWFyVW5kb1JlZG9PcGVyYXRpb25zKCk7CiAKLSAg
ICBib29sIGNhbkNvcHlDdXQoV2ViQ29yZTo6RnJhbWUqLCBib29sIGRlZmF1bHRWYWx1ZSkgY29u
c3Q7Ci0gICAgYm9vbCBjYW5QYXN0ZShXZWJDb3JlOjpGcmFtZSosIGJvb2wgZGVmYXVsdFZhbHVl
KSBjb25zdDsKLSAgICBib29sIGNhblVuZG8oKSBjb25zdDsKLSAgICBib29sIGNhblJlZG8oKSBj
b25zdDsKKyAgICBib29sIGNhbkNvcHlDdXQoV2ViQ29yZTo6RnJhbWUqLCBib29sIGRlZmF1bHRW
YWx1ZSkgY29uc3QgZmluYWw7CisgICAgYm9vbCBjYW5QYXN0ZShXZWJDb3JlOjpGcmFtZSosIGJv
b2wgZGVmYXVsdFZhbHVlKSBjb25zdCBmaW5hbDsKKyAgICBib29sIGNhblVuZG8oKSBjb25zdCBm
aW5hbDsKKyAgICBib29sIGNhblJlZG8oKSBjb25zdCBmaW5hbDsKICAgICAKLSAgICB2b2lkIHVu
ZG8oKTsKLSAgICB2b2lkIHJlZG8oKTsgICAgCisgICAgdm9pZCB1bmRvKCkgZmluYWw7CisgICAg
dm9pZCByZWRvKCkgZmluYWw7CiAgICAgCi0gICAgYm9vbCBzaG91bGRDaGFuZ2VTZWxlY3RlZFJh
bmdlKFdlYkNvcmU6OlJhbmdlKiBmcm9tUmFuZ2UsIFdlYkNvcmU6OlJhbmdlKiB0b1JhbmdlLCBX
ZWJDb3JlOjpFQWZmaW5pdHksIGJvb2wgc3RpbGxTZWxlY3RpbmcpIG92ZXJyaWRlOwotICAgIHZv
aWQgdGV4dEZpZWxkRGlkQmVnaW5FZGl0aW5nKFdlYkNvcmU6OkVsZW1lbnQqKSBvdmVycmlkZTsK
LSAgICB2b2lkIHRleHRGaWVsZERpZEVuZEVkaXRpbmcoV2ViQ29yZTo6RWxlbWVudCopIG92ZXJy
aWRlOwotICAgIHZvaWQgdGV4dERpZENoYW5nZUluVGV4dEZpZWxkKFdlYkNvcmU6OkVsZW1lbnQq
KSBvdmVycmlkZTsKLSAgICBib29sIGRvVGV4dEZpZWxkQ29tbWFuZEZyb21FdmVudChXZWJDb3Jl
OjpFbGVtZW50KiwgV2ViQ29yZTo6S2V5Ym9hcmRFdmVudCopIG92ZXJyaWRlOwotICAgIHZvaWQg
dGV4dFdpbGxCZURlbGV0ZWRJblRleHRGaWVsZChXZWJDb3JlOjpFbGVtZW50KiBpbnB1dCkgb3Zl
cnJpZGU7Ci0gICAgdm9pZCB0ZXh0RGlkQ2hhbmdlSW5UZXh0QXJlYShXZWJDb3JlOjpFbGVtZW50
Kikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBvdmVyZmxvd1Njcm9sbFBvc2l0aW9uQ2hhbmdlZCgpIG92
ZXJyaWRlIHsgfQotCi0gICAgdm9pZCBoYW5kbGVLZXlib2FyZEV2ZW50KFdlYkNvcmU6OktleWJv
YXJkRXZlbnQqKTsKLSAgICB2b2lkIGhhbmRsZUlucHV0TWV0aG9kS2V5ZG93bihXZWJDb3JlOjpL
ZXlib2FyZEV2ZW50Kik7Ci0KLSAgICBib29sIHNob3VsZEVyYXNlTWFya2Vyc0FmdGVyQ2hhbmdl
U2VsZWN0aW9uKFdlYkNvcmU6OlRleHRDaGVja2luZ1R5cGUpIGNvbnN0IG92ZXJyaWRlOwotICAg
IHZvaWQgaWdub3JlV29yZEluU3BlbGxEb2N1bWVudChjb25zdCBXVEY6OlN0cmluZyYpIG92ZXJy
aWRlOwotICAgIHZvaWQgbGVhcm5Xb3JkKGNvbnN0IFdURjo6U3RyaW5nJikgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBjaGVja1NwZWxsaW5nT2ZTdHJpbmcoU3RyaW5nVmlldywgaW50KiBtaXNzcGVsbGlu
Z0xvY2F0aW9uLCBpbnQqIG1pc3NwZWxsaW5nTGVuZ3RoKSBvdmVycmlkZTsKLSAgICBXVEY6OlN0
cmluZyBnZXRBdXRvQ29ycmVjdFN1Z2dlc3Rpb25Gb3JNaXNzcGVsbGVkV29yZChjb25zdCBXVEY6
OlN0cmluZyYpIG92ZXJyaWRlOwotICAgIHZvaWQgY2hlY2tHcmFtbWFyT2ZTdHJpbmcoU3RyaW5n
VmlldywgVmVjdG9yPFdlYkNvcmU6OkdyYW1tYXJEZXRhaWw+JiwgaW50KiBiYWRHcmFtbWFyTG9j
YXRpb24sIGludCogYmFkR3JhbW1hckxlbmd0aCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCB1cGRhdGVT
cGVsbGluZ1VJV2l0aEdyYW1tYXJTdHJpbmcoY29uc3QgV1RGOjpTdHJpbmcmLCBjb25zdCBXZWJD
b3JlOjpHcmFtbWFyRGV0YWlsJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCB1cGRhdGVTcGVsbGluZ1VJ
V2l0aE1pc3NwZWxsZWRXb3JkKGNvbnN0IFdURjo6U3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBzaG93U3BlbGxpbmdVSShib29sIHNob3cpIG92ZXJyaWRlOwotICAgIGJvb2wgc3BlbGxpbmdV
SUlzU2hvd2luZygpIG92ZXJyaWRlOwotICAgIHZvaWQgZ2V0R3Vlc3Nlc0ZvcldvcmQoY29uc3Qg
V1RGOjpTdHJpbmcmIHdvcmQsIGNvbnN0IFdURjo6U3RyaW5nJiBjb250ZXh0LCBjb25zdCBXZWJD
b3JlOjpWaXNpYmxlU2VsZWN0aW9uJiBjdXJyZW50U2VsZWN0aW9uLCBXVEY6OlZlY3RvcjxXVEY6
OlN0cmluZz4mIGd1ZXNzZXMpIG92ZXJyaWRlOwotCi0gICAgdm9pZCB3aWxsU2V0SW5wdXRNZXRo
b2RTdGF0ZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0SW5wdXRNZXRob2RTdGF0ZShib29sKSBv
dmVycmlkZTsKLSAgICB2b2lkIHJlcXVlc3RDaGVja2luZ09mU3RyaW5nKFdlYkNvcmU6OlRleHRD
aGVja2luZ1JlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpWaXNpYmxlU2VsZWN0aW9uJikgb3ZlcnJp
ZGUgeyB9Ci0KLSAgICBXZWJDb3JlOjpUZXh0Q2hlY2tlckNsaWVudCogdGV4dENoZWNrZXIoKSBv
dmVycmlkZSB7IHJldHVybiB0aGlzOyB9CisgICAgYm9vbCBzaG91bGRDaGFuZ2VTZWxlY3RlZFJh
bmdlKFdlYkNvcmU6OlJhbmdlKiBmcm9tUmFuZ2UsIFdlYkNvcmU6OlJhbmdlKiB0b1JhbmdlLCBX
ZWJDb3JlOjpFQWZmaW5pdHksIGJvb2wgc3RpbGxTZWxlY3RpbmcpIGZpbmFsOworICAgIHZvaWQg
dGV4dEZpZWxkRGlkQmVnaW5FZGl0aW5nKFdlYkNvcmU6OkVsZW1lbnQqKSBmaW5hbDsKKyAgICB2
b2lkIHRleHRGaWVsZERpZEVuZEVkaXRpbmcoV2ViQ29yZTo6RWxlbWVudCopIGZpbmFsOworICAg
IHZvaWQgdGV4dERpZENoYW5nZUluVGV4dEZpZWxkKFdlYkNvcmU6OkVsZW1lbnQqKSBmaW5hbDsK
KyAgICBib29sIGRvVGV4dEZpZWxkQ29tbWFuZEZyb21FdmVudChXZWJDb3JlOjpFbGVtZW50Kiwg
V2ViQ29yZTo6S2V5Ym9hcmRFdmVudCopIGZpbmFsOworICAgIHZvaWQgdGV4dFdpbGxCZURlbGV0
ZWRJblRleHRGaWVsZChXZWJDb3JlOjpFbGVtZW50KiBpbnB1dCkgZmluYWw7CisgICAgdm9pZCB0
ZXh0RGlkQ2hhbmdlSW5UZXh0QXJlYShXZWJDb3JlOjpFbGVtZW50KikgZmluYWw7CisgICAgdm9p
ZCBvdmVyZmxvd1Njcm9sbFBvc2l0aW9uQ2hhbmdlZCgpIGZpbmFsIHsgfQorCisgICAgdm9pZCBo
YW5kbGVLZXlib2FyZEV2ZW50KFdlYkNvcmU6OktleWJvYXJkRXZlbnQqKSBmaW5hbDsKKyAgICB2
b2lkIGhhbmRsZUlucHV0TWV0aG9kS2V5ZG93bihXZWJDb3JlOjpLZXlib2FyZEV2ZW50KikgZmlu
YWw7CisKKyAgICBib29sIHNob3VsZEVyYXNlTWFya2Vyc0FmdGVyQ2hhbmdlU2VsZWN0aW9uKFdl
YkNvcmU6OlRleHRDaGVja2luZ1R5cGUpIGNvbnN0IGZpbmFsOworICAgIHZvaWQgaWdub3JlV29y
ZEluU3BlbGxEb2N1bWVudChjb25zdCBXVEY6OlN0cmluZyYpIGZpbmFsOworICAgIHZvaWQgbGVh
cm5Xb3JkKGNvbnN0IFdURjo6U3RyaW5nJikgZmluYWw7CisgICAgdm9pZCBjaGVja1NwZWxsaW5n
T2ZTdHJpbmcoU3RyaW5nVmlldywgaW50KiBtaXNzcGVsbGluZ0xvY2F0aW9uLCBpbnQqIG1pc3Nw
ZWxsaW5nTGVuZ3RoKSBmaW5hbDsKKyAgICBXVEY6OlN0cmluZyBnZXRBdXRvQ29ycmVjdFN1Z2dl
c3Rpb25Gb3JNaXNzcGVsbGVkV29yZChjb25zdCBXVEY6OlN0cmluZyYpIGZpbmFsOworICAgIHZv
aWQgY2hlY2tHcmFtbWFyT2ZTdHJpbmcoU3RyaW5nVmlldywgVmVjdG9yPFdlYkNvcmU6OkdyYW1t
YXJEZXRhaWw+JiwgaW50KiBiYWRHcmFtbWFyTG9jYXRpb24sIGludCogYmFkR3JhbW1hckxlbmd0
aCkgZmluYWw7CisgICAgdm9pZCB1cGRhdGVTcGVsbGluZ1VJV2l0aEdyYW1tYXJTdHJpbmcoY29u
c3QgV1RGOjpTdHJpbmcmLCBjb25zdCBXZWJDb3JlOjpHcmFtbWFyRGV0YWlsJikgZmluYWw7Cisg
ICAgdm9pZCB1cGRhdGVTcGVsbGluZ1VJV2l0aE1pc3NwZWxsZWRXb3JkKGNvbnN0IFdURjo6U3Ry
aW5nJikgZmluYWw7CisgICAgdm9pZCBzaG93U3BlbGxpbmdVSShib29sIHNob3cpIGZpbmFsOwor
ICAgIGJvb2wgc3BlbGxpbmdVSUlzU2hvd2luZygpIGZpbmFsOworICAgIHZvaWQgZ2V0R3Vlc3Nl
c0ZvcldvcmQoY29uc3QgV1RGOjpTdHJpbmcmIHdvcmQsIGNvbnN0IFdURjo6U3RyaW5nJiBjb250
ZXh0LCBjb25zdCBXZWJDb3JlOjpWaXNpYmxlU2VsZWN0aW9uJiBjdXJyZW50U2VsZWN0aW9uLCBX
VEY6OlZlY3RvcjxXVEY6OlN0cmluZz4mIGd1ZXNzZXMpIGZpbmFsOworCisgICAgdm9pZCB3aWxs
U2V0SW5wdXRNZXRob2RTdGF0ZSgpIGZpbmFsOworICAgIHZvaWQgc2V0SW5wdXRNZXRob2RTdGF0
ZShib29sKSBmaW5hbDsKKyAgICB2b2lkIHJlcXVlc3RDaGVja2luZ09mU3RyaW5nKFdlYkNvcmU6
OlRleHRDaGVja2luZ1JlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpWaXNpYmxlU2VsZWN0aW9uJikg
ZmluYWwgeyB9CisKKyAgICBXZWJDb3JlOjpUZXh0Q2hlY2tlckNsaWVudCogdGV4dENoZWNrZXIo
KSBmaW5hbCB7IHJldHVybiB0aGlzOyB9CiAKLXByaXZhdGU6CiAgICAgV2ViVmlldyogbV93ZWJW
aWV3OwogICAgIFdlYkVkaXRvclVuZG9UYXJnZXQqIG1fdW5kb1RhcmdldDsKIH07CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVu
dC5jcHAgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNs
aWVudC5jcHAKaW5kZXggZWEyYmFjYzE0YzdhYmFjYWY1YjhjYjAzNGYxZTNkODUxN2I2NGNhYy4u
Mzg1NjhjMGM3ZTNhNDk5ZTk4MDAzNzYwMDBhNzE4ZjdlOTdjNzI2OSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50
LmNwcApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNiBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAxNyBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKQEAgLTUzMyw3ICs1MzMsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNw
YXRjaERlY2lkZVBvbGljeUZvclJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9ucwogICAgIGZ1
bmN0aW9uKFBvbGljeVVzZSk7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3Bh
dGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24m
IGFjdGlvbiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBQYXNzUmVmUHRyPEZvcm1T
dGF0ZT4gZm9ybVN0YXRlLCBjb25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgRnJhbWVQb2xpY3lGdW5j
dGlvbiBmdW5jdGlvbikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRl
UG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIGFjdGlvbiwg
Y29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBGb3JtU3RhdGUqIGZvcm1TdGF0ZSwgY29u
c3QgU3RyaW5nJiBmcmFtZU5hbWUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24pCiB7CiAg
ICAgV2ViVmlldyogd2ViVmlldyA9IG1fd2ViRnJhbWUtPndlYlZpZXcoKTsKICAgICBGcmFtZSog
Y29yZUZyYW1lID0gY29yZShtX3dlYkZyYW1lKTsKQEAgLTU0NCw3ICs1NDQsNyBAQCB2b2lkIFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlv
bihjb25zdCBOYXZpZ2F0aQogICAgICAgICBwb2xpY3lEZWxlZ2F0ZSA9IERlZmF1bHRQb2xpY3lE
ZWxlZ2F0ZTo6c2hhcmVkSW5zdGFuY2UoKTsKIAogICAgIENPTVB0cjxJV2ViVVJMUmVxdWVzdD4g
dXJsUmVxdWVzdChBZG9wdENPTSwgV2ViTXV0YWJsZVVSTFJlcXVlc3Q6OmNyZWF0ZUluc3RhbmNl
KHJlcXVlc3QpKTsKLSAgICBDT01QdHI8V2ViQWN0aW9uUHJvcGVydHlCYWc+IGFjdGlvbkluZm9y
bWF0aW9uKEFkb3B0Q09NLCBXZWJBY3Rpb25Qcm9wZXJ0eUJhZzo6Y3JlYXRlSW5zdGFuY2UoYWN0
aW9uLCBmb3JtU3RhdGUgPyBmb3JtU3RhdGUtPmZvcm0oKSA6IDAsIGNvcmVGcmFtZSkpOworICAg
IENPTVB0cjxXZWJBY3Rpb25Qcm9wZXJ0eUJhZz4gYWN0aW9uSW5mb3JtYXRpb24oQWRvcHRDT00s
IFdlYkFjdGlvblByb3BlcnR5QmFnOjpjcmVhdGVJbnN0YW5jZShhY3Rpb24sIGZvcm1TdGF0ZSA/
ICZmb3JtU3RhdGUtPmZvcm0oKSA6IG51bGxwdHIsIGNvcmVGcmFtZSkpOwogCiAgICAgaWYgKFNV
Q0NFRURFRChwb2xpY3lEZWxlZ2F0ZS0+ZGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKHdl
YlZpZXcsIGFjdGlvbkluZm9ybWF0aW9uLmdldCgpLCB1cmxSZXF1ZXN0LmdldCgpLCBCU3RyaW5n
KGZyYW1lTmFtZSksIHNldFVwUG9saWN5TGlzdGVuZXIoZnVuY3Rpb24pLmdldCgpKSkpCiAgICAg
ICAgIHJldHVybjsKQEAgLTU1Miw3ICs1NTIsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50
OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBOYXZpZ2F0aQog
ICAgIGZ1bmN0aW9uKFBvbGljeVVzZSk7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0aW9u
QWN0aW9uJiBhY3Rpb24sIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgUGFzc1JlZlB0
cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSwgRnJhbWVQb2xpY3lGdW5jdGlvbiBmdW5jdGlvbikKK3Zv
aWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlv
bkFjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBhY3Rpb24sIGNvbnN0IFJlc291cmNlUmVx
dWVzdCYgcmVxdWVzdCwgRm9ybVN0YXRlKiBmb3JtU3RhdGUsIEZyYW1lUG9saWN5RnVuY3Rpb24g
ZnVuY3Rpb24pCiB7CiAgICAgV2ViVmlldyogd2ViVmlldyA9IG1fd2ViRnJhbWUtPndlYlZpZXco
KTsKICAgICBGcmFtZSogY29yZUZyYW1lID0gY29yZShtX3dlYkZyYW1lKTsKQEAgLTU2Myw3ICs1
NjMsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZv
ck5hdmlnYXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdAogICAgICAgICBwb2xpY3lEZWxlZ2F0ZSA9
IERlZmF1bHRQb2xpY3lEZWxlZ2F0ZTo6c2hhcmVkSW5zdGFuY2UoKTsKIAogICAgIENPTVB0cjxJ
V2ViVVJMUmVxdWVzdD4gdXJsUmVxdWVzdChBZG9wdENPTSwgV2ViTXV0YWJsZVVSTFJlcXVlc3Q6
OmNyZWF0ZUluc3RhbmNlKHJlcXVlc3QpKTsKLSAgICBDT01QdHI8V2ViQWN0aW9uUHJvcGVydHlC
YWc+IGFjdGlvbkluZm9ybWF0aW9uKEFkb3B0Q09NLCBXZWJBY3Rpb25Qcm9wZXJ0eUJhZzo6Y3Jl
YXRlSW5zdGFuY2UoYWN0aW9uLCBmb3JtU3RhdGUgPyBmb3JtU3RhdGUtPmZvcm0oKSA6IDAsIGNv
cmVGcmFtZSkpOworICAgIENPTVB0cjxXZWJBY3Rpb25Qcm9wZXJ0eUJhZz4gYWN0aW9uSW5mb3Jt
YXRpb24oQWRvcHRDT00sIFdlYkFjdGlvblByb3BlcnR5QmFnOjpjcmVhdGVJbnN0YW5jZShhY3Rp
b24sIGZvcm1TdGF0ZSA/ICZmb3JtU3RhdGUtPmZvcm0oKSA6IG51bGxwdHIsIGNvcmVGcmFtZSkp
OwogCiAgICAgaWYgKFNVQ0NFRURFRChwb2xpY3lEZWxlZ2F0ZS0+ZGVjaWRlUG9saWN5Rm9yTmF2
aWdhdGlvbkFjdGlvbih3ZWJWaWV3LCBhY3Rpb25JbmZvcm1hdGlvbi5nZXQoKSwgdXJsUmVxdWVz
dC5nZXQoKSwgbV93ZWJGcmFtZSwgc2V0VXBQb2xpY3lMaXN0ZW5lcihmdW5jdGlvbikuZ2V0KCkp
KSkKICAgICAgICAgcmV0dXJuOwpAQCAtNTgyLDExICs1ODIsMTEgQEAgdm9pZCBXZWJGcmFtZUxv
YWRlckNsaWVudDo6ZGlzcGF0Y2hVbmFibGVUb0ltcGxlbWVudFBvbGljeShjb25zdCBSZXNvdXJj
ZUVycm9yJgogICAgIHBvbGljeURlbGVnYXRlLT51bmFibGVUb0ltcGxlbWVudFBvbGljeVdpdGhF
cnJvcih3ZWJWaWV3LCB3ZWJFcnJvci5nZXQoKSwgbV93ZWJGcmFtZSk7CiB9CiAKLXZvaWQgV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChQYXNzUmVmUHRy
PFdlYkNvcmU6OkZvcm1TdGF0ZT4pCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aFdpbGxTZW5kU3VibWl0RXZlbnQoUmVmPFdlYkNvcmU6OkZvcm1TdGF0ZT4mJikKIHsKIH0KIAot
dm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShQYXNzUmVm
UHRyPEZvcm1TdGF0ZT4gZm9ybVN0YXRlLCBGcmFtZVBvbGljeUZ1bmN0aW9uIGZ1bmN0aW9uKQor
dm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShGb3JtU3Rh
dGUmIGZvcm1TdGF0ZSwgRnJhbWVQb2xpY3lGdW5jdGlvbiBmdW5jdGlvbikKIHsKICAgICBXZWJW
aWV3KiB3ZWJWaWV3ID0gbV93ZWJGcmFtZS0+d2ViVmlldygpOwogICAgIEZyYW1lKiBjb3JlRnJh
bWUgPSBjb3JlKG1fd2ViRnJhbWUpOwpAQCAtNTk5LDE3ICs1OTksMTcgQEAgdm9pZCBXZWJGcmFt
ZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU3VibWl0Rm9ybShQYXNzUmVmUHRyPEZvcm1TdGF0
ZT4gZm9ybVN0YXQKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIENPTVB0cjxJRE9NRWxl
bWVudD4gZm9ybUVsZW1lbnQoQWRvcHRDT00sIERPTUVsZW1lbnQ6OmNyZWF0ZUluc3RhbmNlKGZv
cm1TdGF0ZS0+Zm9ybSgpKSk7CisgICAgQ09NUHRyPElET01FbGVtZW50PiBmb3JtRWxlbWVudChB
ZG9wdENPTSwgRE9NRWxlbWVudDo6Y3JlYXRlSW5zdGFuY2UoJmZvcm1TdGF0ZS5mb3JtKCkpKTsK
IAogICAgIEhhc2hNYXA8U3RyaW5nLCBTdHJpbmc+IGZvcm1WYWx1ZXNNYXA7Ci0gICAgY29uc3Qg
U3RyaW5nUGFpclZlY3RvciYgdGV4dEZpZWxkVmFsdWVzID0gZm9ybVN0YXRlLT50ZXh0RmllbGRW
YWx1ZXMoKTsKKyAgICBjb25zdCBTdHJpbmdQYWlyVmVjdG9yJiB0ZXh0RmllbGRWYWx1ZXMgPSBm
b3JtU3RhdGUudGV4dEZpZWxkVmFsdWVzKCk7CiAgICAgc2l6ZV90IHNpemUgPSB0ZXh0RmllbGRW
YWx1ZXMuc2l6ZSgpOwogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc2l6ZTsgKytpKQogICAg
ICAgICBmb3JtVmFsdWVzTWFwLmFkZCh0ZXh0RmllbGRWYWx1ZXNbaV0uZmlyc3QsIHRleHRGaWVs
ZFZhbHVlc1tpXS5zZWNvbmQpOwogCiAgICAgQ09NUHRyPElQcm9wZXJ0eUJhZz4gZm9ybVZhbHVl
c1Byb3BlcnR5QmFnKEFkb3B0Q09NLCBDT01Qcm9wZXJ0eUJhZzxTdHJpbmc+OjpjcmVhdGVJbnN0
YW5jZShmb3JtVmFsdWVzTWFwKSk7CiAKLSAgICBDT01QdHI8V2ViRnJhbWU+IHNvdXJjZUZyYW1l
KGtpdChmb3JtU3RhdGUtPnNvdXJjZURvY3VtZW50KCktPmZyYW1lKCkpKTsKKyAgICBDT01QdHI8
V2ViRnJhbWU+IHNvdXJjZUZyYW1lKGtpdChmb3JtU3RhdGUuc291cmNlRG9jdW1lbnQoKS5mcmFt
ZSgpKSk7CiAgICAgaWYgKFNVQ0NFRURFRChmb3JtRGVsZWdhdGUtPndpbGxTdWJtaXRGb3JtKG1f
d2ViRnJhbWUsIHNvdXJjZUZyYW1lLmdldCgpLCBmb3JtRWxlbWVudC5nZXQoKSwgZm9ybVZhbHVl
c1Byb3BlcnR5QmFnLmdldCgpLCBzZXRVcFBvbGljeUxpc3RlbmVyKGZ1bmN0aW9uKS5nZXQoKSkp
KQogICAgICAgICByZXR1cm47CiAKQEAgLTEwMTIsMjkgKzEwMTIsMjEgQEAgYm9vbCBXZWJGcmFt
ZUxvYWRlckNsaWVudDo6Y2FuQ2FjaGVQYWdlKCkgY29uc3QKICAgICByZXR1cm4gdHJ1ZTsKIH0K
IAotUmVmUHRyPEZyYW1lPiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlRnJhbWUoY29uc3Qg
VVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgbmFtZSwgSFRNTEZyYW1lT3duZXJFbGVtZW50KiBvd25l
ckVsZW1lbnQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgU3RyaW5nJiByZWZl
cnJlciwgYm9vbCAvKmFsbG93c1Njcm9sbGluZyovLCBpbnQgLyptYXJnaW5XaWR0aCovLCBpbnQg
LyptYXJnaW5IZWlnaHQqLykKLXsKLSAgICBSZWZQdHI8RnJhbWU+IHJlc3VsdCA9IGNyZWF0ZUZy
YW1lKHVybCwgbmFtZSwgb3duZXJFbGVtZW50LCByZWZlcnJlcik7Ci0gICAgaWYgKCFyZXN1bHQp
Ci0gICAgICAgIHJldHVybiBudWxscHRyOwotICAgIHJldHVybiByZXN1bHQ7Ci19Ci0KLVJlZlB0
cjxGcmFtZT4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUZyYW1lKGNvbnN0IFVSTCYgVVJM
LCBjb25zdCBTdHJpbmcmIG5hbWUsIEhUTUxGcmFtZU93bmVyRWxlbWVudCogb3duZXJFbGVtZW50
LCBjb25zdCBTdHJpbmcmIHJlZmVycmVyKQorUmVmUHRyPEZyYW1lPiBXZWJGcmFtZUxvYWRlckNs
aWVudDo6Y3JlYXRlRnJhbWUoY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgbmFtZSwgSFRN
TEZyYW1lT3duZXJFbGVtZW50JiBvd25lckVsZW1lbnQsCisgICAgY29uc3QgU3RyaW5nJiByZWZl
cnJlciwgYm9vbCAvKmFsbG93c1Njcm9sbGluZyovLCBpbnQgLyptYXJnaW5XaWR0aCovLCBpbnQg
LyptYXJnaW5IZWlnaHQqLykKIHsKICAgICBGcmFtZSogY29yZUZyYW1lID0gY29yZShtX3dlYkZy
YW1lKTsKICAgICBBU1NFUlQoY29yZUZyYW1lKTsKIAogICAgIENPTVB0cjxXZWJGcmFtZT4gd2Vi
RnJhbWUoQWRvcHRDT00sIFdlYkZyYW1lOjpjcmVhdGVJbnN0YW5jZSgpKTsKIAotICAgIFJlZlB0
cjxGcmFtZT4gY2hpbGRGcmFtZSA9IHdlYkZyYW1lLT5jcmVhdGVTdWJmcmFtZVdpdGhPd25lckVs
ZW1lbnQobV93ZWJGcmFtZS0+d2ViVmlldygpLCBjb3JlRnJhbWUtPnBhZ2UoKSwgb3duZXJFbGVt
ZW50KTsKKyAgICBSZWZQdHI8RnJhbWU+IGNoaWxkRnJhbWUgPSB3ZWJGcmFtZS0+Y3JlYXRlU3Vi
ZnJhbWVXaXRoT3duZXJFbGVtZW50KG1fd2ViRnJhbWUtPndlYlZpZXcoKSwgY29yZUZyYW1lLT5w
YWdlKCksICZvd25lckVsZW1lbnQpOwogCiAgICAgY2hpbGRGcmFtZS0+dHJlZSgpLnNldE5hbWUo
bmFtZSk7CiAgICAgY29yZUZyYW1lLT50cmVlKCkuYXBwZW5kQ2hpbGQoY2hpbGRGcmFtZSk7CiAg
ICAgY2hpbGRGcmFtZS0+aW5pdCgpOwogCi0gICAgY29yZUZyYW1lLT5sb2FkZXIoKS5sb2FkVVJM
SW50b0NoaWxkRnJhbWUoVVJMLCByZWZlcnJlciwgY2hpbGRGcmFtZS5nZXQoKSk7CisgICAgY29y
ZUZyYW1lLT5sb2FkZXIoKS5sb2FkVVJMSW50b0NoaWxkRnJhbWUodXJsLCByZWZlcnJlciwgY2hp
bGRGcmFtZS5nZXQoKSk7CiAKICAgICAvLyBUaGUgZnJhbWUncyBvbmxvYWQgaGFuZGxlciBtYXkg
aGF2ZSByZW1vdmVkIGl0IGZyb20gdGhlIGRvY3VtZW50LgogICAgIGlmICghY2hpbGRGcmFtZS0+
dHJlZSgpLnBhcmVudCgpKQpAQCAtMTEzMCw3ICsxMTIyLDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRl
ckNsaWVudDo6ZGlzcGF0Y2hEaWRGYWlsVG9TdGFydFBsdWdpbihjb25zdCBQbHVnaW5WaWV3KiBw
bHVnaW4KICAgICByZXNvdXJjZUxvYWREZWxlZ2F0ZS0+cGx1Z0luRmFpbGVkV2l0aEVycm9yKHdl
YlZpZXcsIGVycm9yLmdldCgpLCBnZXRXZWJEYXRhU291cmNlKGZyYW1lLT5sb2FkZXIoKS5kb2N1
bWVudExvYWRlcigpKSk7CiB9CiAKLVJlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50
OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYgcGx1Z2luU2l6ZSwgSFRNTFBsdWdJbkVsZW1l
bnQqIGVsZW1lbnQsIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1O
YW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzLCBjb25zdCBTdHJpbmcmIG1p
bWVUeXBlLCBib29sIGxvYWRNYW51YWxseSkKK1JlZlB0cjxXaWRnZXQ+IFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpjcmVhdGVQbHVnaW4oY29uc3QgSW50U2l6ZSYgcGx1Z2luU2l6ZSwgSFRNTFBsdWdJ
bkVsZW1lbnQmIGVsZW1lbnQsIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYg
cGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzLCBjb25zdCBTdHJp
bmcmIG1pbWVUeXBlLCBib29sIGxvYWRNYW51YWxseSkKIHsKICAgICBXZWJWaWV3KiB3ZWJWaWV3
ID0gbV93ZWJGcmFtZS0+d2ViVmlldygpOwogCkBAIC0xMTQ0LDcgKzExMzYsNyBAQCBSZWZQdHI8
V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlUGx1Z2luKGNvbnN0IEludFNpemUm
IHBsdWdpblNpemUsIEhUTQogICAgICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IHBh
cmFtTmFtZXMuc2l6ZSgpOyBpKyspIAogICAgICAgICAgICAgICAgIHZpZXdBcmd1bWVudHMuc2V0
KHBhcmFtTmFtZXNbaV0sIHBhcmFtVmFsdWVzW2ldKTsKICAgICAgICAgICAgIENPTVB0cjxJUHJv
cGVydHlCYWc+IHZpZXdBcmd1bWVudHNCYWcoQWRvcHRDT00sIENPTVByb3BlcnR5QmFnPFN0cmlu
Zz46OmFkb3B0KHZpZXdBcmd1bWVudHMpKTsKLSAgICAgICAgICAgIENPTVB0cjxJRE9NRWxlbWVu
dD4gY29udGFpbmluZ0VsZW1lbnQoQWRvcHRDT00sIERPTUVsZW1lbnQ6OmNyZWF0ZUluc3RhbmNl
KGVsZW1lbnQpKTsKKyAgICAgICAgICAgIENPTVB0cjxJRE9NRWxlbWVudD4gY29udGFpbmluZ0Vs
ZW1lbnQoQWRvcHRDT00sIERPTUVsZW1lbnQ6OmNyZWF0ZUluc3RhbmNlKCZlbGVtZW50KSk7CiAK
ICAgICAgICAgICAgIEhhc2hNYXA8U3RyaW5nLCBDT01WYXJpYW50PiBhcmd1bWVudHM7CiAKQEAg
LTExNjIsMTMgKzExNTQsMTMgQEAgUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiBwbHVnaW5TaXplLCBIVE0KICAgICAgICAgICAg
ICAgICBIUkVTVUxUIGhyID0gd2ViVmlldy0+dmlld1dpbmRvdygmcGFyZW50V2luZG93KTsKICAg
ICAgICAgICAgICAgICBBU1NFUlQoU1VDQ0VFREVEKGhyKSk7CiAKLSAgICAgICAgICAgICAgICBy
ZXR1cm4gRW1iZWRkZWRXaWRnZXQ6OmNyZWF0ZSh2aWV3LmdldCgpLCBlbGVtZW50LCBwYXJlbnRX
aW5kb3csIHBsdWdpblNpemUpOworICAgICAgICAgICAgICAgIHJldHVybiBFbWJlZGRlZFdpZGdl
dDo6Y3JlYXRlKHZpZXcuZ2V0KCksICZlbGVtZW50LCBwYXJlbnRXaW5kb3csIHBsdWdpblNpemUp
OwogICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgfQogCiAgICAgRnJhbWUqIGZyYW1lID0g
Y29yZShtX3dlYkZyYW1lKTsKLSAgICBSZWZQdHI8UGx1Z2luVmlldz4gcGx1Z2luVmlldyA9IFBs
dWdpblZpZXc6OmNyZWF0ZShmcmFtZSwgcGx1Z2luU2l6ZSwgZWxlbWVudCwgdXJsLCBwYXJhbU5h
bWVzLCBwYXJhbVZhbHVlcywgbWltZVR5cGUsIGxvYWRNYW51YWxseSk7CisgICAgUmVmUHRyPFBs
dWdpblZpZXc+IHBsdWdpblZpZXcgPSBQbHVnaW5WaWV3OjpjcmVhdGUoZnJhbWUsIHBsdWdpblNp
emUsICZlbGVtZW50LCB1cmwsIHBhcmFtTmFtZXMsIHBhcmFtVmFsdWVzLCBtaW1lVHlwZSwgbG9h
ZE1hbnVhbGx5KTsKIAogICAgIGlmIChwbHVnaW5WaWV3LT5zdGF0dXMoKSA9PSBQbHVnaW5TdGF0
dXNMb2FkZWRTdWNjZXNzZnVsbHkpCiAgICAgICAgIHJldHVybiBwbHVnaW5WaWV3OwpAQCAtMTE4
NywxOCArMTE3OSwxOCBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpyZWRpcmVjdERhdGFU
b1BsdWdpbihXaWRnZXQqIHBsdWdpbldpZGdldCkKICAgICAgICAgbV9tYW51YWxMb2FkZXIgPSBz
dGF0aWNfY2FzdDxFbWJlZGRlZFdpZGdldCo+KHBsdWdpbldpZGdldCk7CiB9CiAKLVBhc3NSZWZQ
dHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlSmF2YUFwcGxldFdpZGdldChj
b25zdCBJbnRTaXplJiBwbHVnaW5TaXplLCBIVE1MQXBwbGV0RWxlbWVudCogZWxlbWVudCwgY29u
c3QgVVJMJiAvKmJhc2VVUkwqLywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNv
bnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykKK1JlZlB0cjxXaWRnZXQ+IFdlYkZyYW1l
TG9hZGVyQ2xpZW50OjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmIHBsdWdp
blNpemUsIEhUTUxBcHBsZXRFbGVtZW50JiBlbGVtZW50LCBjb25zdCBVUkwmIC8qYmFzZVVSTCov
LCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4m
IHBhcmFtVmFsdWVzKQogewotICAgIFJlZlB0cjxQbHVnaW5WaWV3PiBwbHVnaW5WaWV3ID0gUGx1
Z2luVmlldzo6Y3JlYXRlKGNvcmUobV93ZWJGcmFtZSksIHBsdWdpblNpemUsIGVsZW1lbnQsIFVS
TCgpLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcywgImFwcGxpY2F0aW9uL3gtamF2YS1hcHBsZXQi
LCBmYWxzZSk7CisgICAgUmVmUHRyPFBsdWdpblZpZXc+IHBsdWdpblZpZXcgPSBQbHVnaW5WaWV3
OjpjcmVhdGUoY29yZShtX3dlYkZyYW1lKSwgcGx1Z2luU2l6ZSwgJmVsZW1lbnQsIFVSTCgpLCBw
YXJhbU5hbWVzLCBwYXJhbVZhbHVlcywgImFwcGxpY2F0aW9uL3gtamF2YS1hcHBsZXQiLCBmYWxz
ZSk7CiAKICAgICAvLyBDaGVjayBpZiB0aGUgcGx1Z2luIGNhbiBiZSBsb2FkZWQgc3VjY2Vzc2Z1
bGx5CiAgICAgaWYgKHBsdWdpblZpZXctPnBsdWdpbigpICYmIHBsdWdpblZpZXctPnBsdWdpbigp
LT5sb2FkKCkpCi0gICAgICAgIHJldHVybiBwbHVnaW5WaWV3OworICAgICAgICByZXR1cm4gV1RG
TW92ZShwbHVnaW5WaWV3KTsKIAogICAgIFdlYlZpZXcqIHdlYlZpZXcgPSBtX3dlYkZyYW1lLT53
ZWJWaWV3KCk7CiAgICAgQ09NUHRyPElXZWJSZXNvdXJjZUxvYWREZWxlZ2F0ZT4gcmVzb3VyY2VM
b2FkRGVsZWdhdGU7CiAgICAgaWYgKEZBSUxFRCh3ZWJWaWV3LT5yZXNvdXJjZUxvYWREZWxlZ2F0
ZSgmcmVzb3VyY2VMb2FkRGVsZWdhdGUpKSkKLSAgICAgICAgcmV0dXJuIHBsdWdpblZpZXc7Cisg
ICAgICAgIHJldHVybiBXVEZNb3ZlKHBsdWdpblZpZXcpOwogCiAgICAgQ09NUHRyPENGRGljdGlv
bmFyeVByb3BlcnR5QmFnPiB1c2VySW5mb0JhZyA9IENGRGljdGlvbmFyeVByb3BlcnR5QmFnOjpj
cmVhdGVJbnN0YW5jZSgpOwogCkBAIC0xMjEwLDcgKzEyMDIsNyBAQCBQYXNzUmVmUHRyPFdpZGdl
dD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50
U2l6ZSYgcAogCiAgICAgcmVzb3VyY2VMb2FkRGVsZWdhdGUtPnBsdWdJbkZhaWxlZFdpdGhFcnJv
cih3ZWJWaWV3LCBlcnJvci5nZXQoKSwgZ2V0V2ViRGF0YVNvdXJjZShjb3JlRnJhbWUtPmxvYWRl
cigpLmRvY3VtZW50TG9hZGVyKCkpKTsKIAotICAgIHJldHVybiBwbHVnaW5WaWV3OworICAgIHJl
dHVybiBXVEZNb3ZlKHBsdWdpblZpZXcpOwogfQogCiBXZWJIaXN0b3J5KiBXZWJGcmFtZUxvYWRl
ckNsaWVudDo6d2ViSGlzdG9yeSgpIGNvbnN0CkBAIC0xMjYwLDcgKzEyNTIsNyBAQCB2b2lkIFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpyZWdpc3RlckZvckljb25Ob3RpZmljYXRpb24oYm9vbCBsaXN0
ZW4pCiAgICAgbV93ZWJGcmFtZS0+d2ViVmlldygpLT5yZWdpc3RlckZvckljb25Ob3RpZmljYXRp
b24obGlzdGVuKTsKIH0KIAotUGFzc1JlZlB0cjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBXZWJG
cmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKQorUmVmPEZyYW1lTmV0
d29ya2luZ0NvbnRleHQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVOZXR3b3JraW5nQ29u
dGV4dCgpCiB7CiAgICAgcmV0dXJuIFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQ6OmNyZWF0ZShj
b3JlKG1fd2ViRnJhbWUpKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNv
cmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJD
b3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCmluZGV4IDhjYTliOWRlY2QxOWNlYzk3
ZTRiYTdkM2Q1MTY4NjRjZTE4OWVlNzguLjJhMzlmYTRmMTE1YTk2NzE5MDVhOGYwM2RkYTMyNzAw
ODAyYTBjOGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dl
YkZyYW1lTG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBv
cnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmln
aHQgKEMpIDIwMDYtMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5
cmlnaHQgKEMpIDIwMDYtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgog
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTQ5LDkgKzQ5LDExIEBAIHB1YmxpYzoKICAg
ICB2b2lkIHNldFdlYkZyYW1lKFdlYkZyYW1lKiB3ZWJGcmFtZSkgeyBtX3dlYkZyYW1lID0gd2Vi
RnJhbWU7IH0KICAgICBXZWJGcmFtZSogd2ViRnJhbWUoKSBjb25zdCB7IHJldHVybiBtX3dlYkZy
YW1lOyB9CiAKLSAgICB2aXJ0dWFsIGJvb2wgaGFzV2ViVmlldygpIGNvbnN0OworICAgIHZvaWQg
ZGlzcGF0Y2hEaWRGYWlsVG9TdGFydFBsdWdpbihjb25zdCBXZWJDb3JlOjpQbHVnaW5WaWV3Kikg
Y29uc3Q7CiAKLSAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8V2ViQ29yZTo6RnJhbWVOZXR3b3JraW5n
Q29udGV4dD4gY3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKTsKKyAgICBib29sIGhhc1dlYlZpZXco
KSBjb25zdCBvdmVycmlkZTsKKworICAgIFJlZjxXZWJDb3JlOjpGcmFtZU5ldHdvcmtpbmdDb250
ZXh0PiBjcmVhdGVOZXR3b3JraW5nQ29udGV4dCgpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBmcmFt
ZUxvYWRlckRlc3Ryb3llZCgpIG92ZXJyaWRlOwogICAgIHZvaWQgbWFrZVJlcHJlc2VudGF0aW9u
KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgb3ZlcnJpZGU7CkBAIC02Myw3ICs2NSw3IEBAIHB1
YmxpYzoKICAgICB2b2lkIGRldGFjaGVkRnJvbVBhcmVudDMoKSBvdmVycmlkZTsKIAogICAgIHZv
aWQgY29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKiwgV2ViQ29yZTo6U2Vzc2lvbklELCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qm
LCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7Ci0gICAgdmlydHVh
bCB2b2lkIGFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllciwgV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZVJlcXVlc3QmKTsKKyAgICB2b2lkIGFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKIAogICAgIHZvaWQgZGlzcGF0Y2hX
aWxsU2VuZFJlcXVlc3QoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpIG92ZXJyaWRlOwogICAgIGJvb2wgc2hvdWxk
VXNlQ3JlZGVudGlhbFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIpIG92ZXJyaWRlOwpAQCAtNzIsNyArNzQsNyBAQCBwdWJsaWM6CiAgICAg
dm9pZCBkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkgb3ZlcnJpZGU7
CiAgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIG92ZXJyaWRlOwogICAgIHZvaWQgZGlzcGF0
Y2hEaWRGYWlsTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwotICAg
IHZpcnR1YWwgYm9vbCBzaG91bGRDYWNoZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
KiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3Bv
bnNlJiwgY29uc3QgdW5zaWduZWQgY2hhciogZGF0YSwgdW5zaWduZWQgbG9uZyBsb25nIGxlbmd0
aCk7CisgICAgYm9vbCBzaG91bGRDYWNoZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
KiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3Bv
bnNlJiwgY29uc3QgdW5zaWduZWQgY2hhciogZGF0YSwgdW5zaWduZWQgbG9uZyBsb25nIGxlbmd0
aCkgb3ZlcnJpZGU7CiAKICAgICB2b2lkIGRpc3BhdGNoRGlkRGlzcGF0Y2hPbmxvYWRFdmVudHMo
KSBvdmVycmlkZTsKICAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVNlcnZlclJlZGlyZWN0Rm9y
UHJvdmlzaW9uYWxMb2FkKCkgb3ZlcnJpZGU7CkBAIC05NCwxNCArOTYsMTQgQEAgcHVibGljOgog
ICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWFjaExheW91dE1pbGVzdG9uZShXZWJDb3JlOjpMYXlvdXRN
aWxlc3RvbmVzKSBvdmVycmlkZTsKIAogICAgIHZvaWQgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JS
ZXNwb25zZShjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0JiwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBX
ZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
JiwgUGFzc1JlZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+LCBjb25zdCBXVEY6OlN0cmluZyYgZnJh
bWVOYW1lLCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBvdmVycmlkZTsKLSAgICB2b2lk
IGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBXZWJDb3JlOjpO
YXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgUGFzc1Jl
ZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+LCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBv
dmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9u
KGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZVJlcXVlc3QmLCBXZWJDb3JlOjpGb3JtU3RhdGUqLCBjb25zdCBXVEY6OlN0cmluZyYgZnJhbWVO
YW1lLCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBvdmVycmlkZTsKKyAgICB2b2lkIGRp
c3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBXZWJDb3JlOjpOYXZp
Z2F0aW9uQWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgV2ViQ29yZTo6
Rm9ybVN0YXRlKiwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgb3ZlcnJpZGU7CiAgICAg
dm9pZCBjYW5jZWxQb2xpY3lDaGVjaygpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBkaXNwYXRjaFVu
YWJsZVRvSW1wbGVtZW50UG9saWN5KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVy
cmlkZTsKIAotICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFBhc3NSZWZQdHI8
V2ViQ29yZTo6Rm9ybVN0YXRlPikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxTdWJt
aXRGb3JtKFBhc3NSZWZQdHI8V2ViQ29yZTo6Rm9ybVN0YXRlPiwgV2ViQ29yZTo6RnJhbWVQb2xp
Y3lGdW5jdGlvbikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZl
bnQoUmVmPFdlYkNvcmU6OkZvcm1TdGF0ZT4mJikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRj
aFdpbGxTdWJtaXRGb3JtKFdlYkNvcmU6OkZvcm1TdGF0ZSYsIFdlYkNvcmU6OkZyYW1lUG9saWN5
RnVuY3Rpb24pIG92ZXJyaWRlOwogCiAgICAgdm9pZCByZXZlcnRUb1Byb3Zpc2lvbmFsU3RhdGUo
V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBvdmVycmlkZTsKICAgICBib29sIGRpc3BhdGNoRGlk
TG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNw
b25zZSYsIGludCBsZW5ndGgpIG92ZXJyaWRlOwpAQCAtMTE0LDkgKzExNiw5IEBAIHB1YmxpYzoK
IAogICAgIHZvaWQgc3RhcnREb3dubG9hZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qm
LCBjb25zdCBTdHJpbmcmIHN1Z2dlc3RlZE5hbWUgPSBTdHJpbmcoKSkgb3ZlcnJpZGU7CiAKLSAg
ICB2aXJ0dWFsIHZvaWQgcHJvZ3Jlc3NTdGFydGVkKFdlYkNvcmU6OkZyYW1lJik7Ci0gICAgdmly
dHVhbCB2b2lkIHByb2dyZXNzRXN0aW1hdGVDaGFuZ2VkKFdlYkNvcmU6OkZyYW1lJik7Ci0gICAg
dmlydHVhbCB2b2lkIHByb2dyZXNzRmluaXNoZWQoV2ViQ29yZTo6RnJhbWUmKTsKKyAgICB2b2lk
IHByb2dyZXNzU3RhcnRlZChXZWJDb3JlOjpGcmFtZSYpIG92ZXJyaWRlOworICAgIHZvaWQgcHJv
Z3Jlc3NFc3RpbWF0ZUNoYW5nZWQoV2ViQ29yZTo6RnJhbWUmKSBvdmVycmlkZTsKKyAgICB2b2lk
IHByb2dyZXNzRmluaXNoZWQoV2ViQ29yZTo6RnJhbWUmKSBvdmVycmlkZTsKIAogICAgIHZvaWQg
Y29tbWl0dGVkTG9hZChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IGNoYXIqLCBpbnQp
IG92ZXJyaWRlOwogICAgIHZvaWQgZmluaXNoZWRMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKikgb3ZlcnJpZGU7CkBAIC0xNDksMTAgKzE1MSwxMCBAQCBwdWJsaWM6CiAKICAgICBXVEY6
OlN0cmluZyB1c2VyQWdlbnQoY29uc3QgV2ViQ29yZTo6VVJMJikgb3ZlcnJpZGU7CiAKLSAgICB2
aXJ0dWFsIFJlZjxXZWJDb3JlOjpEb2N1bWVudExvYWRlcj4gY3JlYXRlRG9jdW1lbnRMb2FkZXIo
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6U3Vic3RpdHV0
ZURhdGEmKTsKKyAgICBSZWY8V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI+IGNyZWF0ZURvY3VtZW50
TG9hZGVyKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlN1
YnN0aXR1dGVEYXRhJikgb3ZlcnJpZGU7CiAgICAgdm9pZCB1cGRhdGVDYWNoZWREb2N1bWVudExv
YWRlcihXZWJDb3JlOjpEb2N1bWVudExvYWRlciYpIG92ZXJyaWRlIHsgfQogCi0gICAgdmlydHVh
bCB2b2lkIHNldFRpdGxlKGNvbnN0IFdlYkNvcmU6OlN0cmluZ1dpdGhEaXJlY3Rpb24mLCBjb25z
dCBXZWJDb3JlOjpVUkwmKTsKKyAgICB2b2lkIHNldFRpdGxlKGNvbnN0IFdlYkNvcmU6OlN0cmlu
Z1dpdGhEaXJlY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpVUkwmKSBvdmVycmlkZTsKIAogICAgIHZv
aWQgc2F2ZVBsYXRmb3JtRGF0YVRvQ2FjaGVkRnJhbWUoV2ViQ29yZTo6Q2FjaGVkRnJhbWUqKSBv
dmVycmlkZTsKICAgICB2b2lkIHRyYW5zaXRpb25Ub0NvbW1pdHRlZEZyb21DYWNoZWRGcmFtZShX
ZWJDb3JlOjpDYWNoZWRGcmFtZSopIG92ZXJyaWRlOwpAQCAtMTc2LDE1ICsxNzgsMTUgQEAgcHVi
bGljOgogCiAgICAgdm9pZCBkaXNwYXRjaERpZEJlY29tZUZyYW1lc2V0KGJvb2wpIG92ZXJyaWRl
OwogCi0gICAgdmlydHVhbCBib29sIGNhbkNhY2hlUGFnZSgpIGNvbnN0OworICAgIGJvb2wgY2Fu
Q2FjaGVQYWdlKCkgY29uc3Qgb3ZlcnJpZGU7CiAKLSAgICBSZWZQdHI8V2ViQ29yZTo6RnJhbWU+
IGNyZWF0ZUZyYW1lKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNvbnN0IFdURjo6U3RyaW5nJiBuYW1l
LCBXZWJDb3JlOjpIVE1MRnJhbWVPd25lckVsZW1lbnQqLAorICAgIFJlZlB0cjxXZWJDb3JlOjpG
cmFtZT4gY3JlYXRlRnJhbWUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgV1RGOjpTdHJpbmcm
IG5hbWUsIFdlYkNvcmU6OkhUTUxGcmFtZU93bmVyRWxlbWVudCYsCiAgICAgICAgIGNvbnN0IFdU
Rjo6U3RyaW5nJiByZWZlcnJlciwgYm9vbCBhbGxvd3NTY3JvbGxpbmcsIGludCBtYXJnaW5XaWR0
aCwgaW50IG1hcmdpbkhlaWdodCkgb3ZlcnJpZGU7Ci0gICAgUmVmUHRyPFdlYkNvcmU6OldpZGdl
dD4gY3JlYXRlUGx1Z2luKGNvbnN0IFdlYkNvcmU6OkludFNpemUmLCBXZWJDb3JlOjpIVE1MUGx1
Z0luRWxlbWVudCosIGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNvbnN0IFZlY3RvcjxXVEY6OlN0cmlu
Zz4mLCBjb25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiwgY29uc3QgV1RGOjpTdHJpbmcmLCBib29s
IGxvYWRNYW51YWxseSkgb3ZlcnJpZGU7CisgICAgUmVmUHRyPFdlYkNvcmU6OldpZGdldD4gY3Jl
YXRlUGx1Z2luKGNvbnN0IFdlYkNvcmU6OkludFNpemUmLCBXZWJDb3JlOjpIVE1MUGx1Z0luRWxl
bWVudCYsIGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNvbnN0IFZlY3RvcjxXVEY6OlN0cmluZz4mLCBj
b25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiwgY29uc3QgV1RGOjpTdHJpbmcmLCBib29sIGxvYWRN
YW51YWxseSkgb3ZlcnJpZGU7CiAgICAgdm9pZCByZWNyZWF0ZVBsdWdpbihXZWJDb3JlOjpXaWRn
ZXQqKSBvdmVycmlkZSB7IH0KICAgICB2b2lkIHJlZGlyZWN0RGF0YVRvUGx1Z2luKFdlYkNvcmU6
OldpZGdldCogcGx1Z2luV2lkZ2V0KSBvdmVycmlkZTsKIAotICAgIFBhc3NSZWZQdHI8V2ViQ29y
ZTo6V2lkZ2V0PiBjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IFdlYkNvcmU6OkludFNpemUm
LCBXZWJDb3JlOjpIVE1MQXBwbGV0RWxlbWVudCosIGNvbnN0IFdlYkNvcmU6OlVSTCYgYmFzZVVS
TCwgY29uc3QgVmVjdG9yPFdURjo6U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFdU
Rjo6U3RyaW5nPiYgcGFyYW1WYWx1ZXMpIG92ZXJyaWRlOworICAgIFJlZlB0cjxXZWJDb3JlOjpX
aWRnZXQ+IGNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdl
YkNvcmU6OkhUTUxBcHBsZXRFbGVtZW50JiwgY29uc3QgV2ViQ29yZTo6VVJMJiBiYXNlVVJMLCBj
b25zdCBWZWN0b3I8V1RGOjpTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8V1RGOjpT
dHJpbmc+JiBwYXJhbVZhbHVlcykgb3ZlcnJpZGU7CiAKICAgICBXZWJDb3JlOjpPYmplY3RDb250
ZW50VHlwZSBvYmplY3RDb250ZW50VHlwZShjb25zdCBXZWJDb3JlOjpVUkwmLCBjb25zdCBXVEY6
OlN0cmluZyYgbWltZVR5cGUpIG92ZXJyaWRlOwogICAgIFdURjo6U3RyaW5nIG92ZXJyaWRlTWVk
aWFUeXBlKCkgY29uc3Qgb3ZlcnJpZGU7CkBAIC0xOTYsMjAgKzE5OCwxNiBAQCBwdWJsaWM6CiAK
ICAgICB2b2lkIHJlZ2lzdGVyRm9ySWNvbk5vdGlmaWNhdGlvbihib29sIGxpc3Rlbikgb3ZlcnJp
ZGU7CiAKLSAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkQWx3YXlzVXNlUGx1Z2luRG9jdW1lbnQoY29u
c3QgV1RGOjpTdHJpbmcmIG1pbWVUeXBlKSBjb25zdDsKLQotICAgIHZpcnR1YWwgdm9pZCBkaXNw
YXRjaERpZEZhaWxUb1N0YXJ0UGx1Z2luKGNvbnN0IFdlYkNvcmU6OlBsdWdpblZpZXcqKSBjb25z
dDsKKyAgICBib29sIHNob3VsZEFsd2F5c1VzZVBsdWdpbkRvY3VtZW50KGNvbnN0IFdURjo6U3Ry
aW5nJiBtaW1lVHlwZSkgY29uc3Qgb3ZlcnJpZGU7CiAKICAgICB2b2lkIHByZWZldGNoRE5TKGNv
bnN0IFN0cmluZyYpIG92ZXJyaWRlOwogCi1wcm90ZWN0ZWQ6Ci0gICAgY2xhc3MgV2ViRnJhbWVQ
b2xpY3lMaXN0ZW5lclByaXZhdGU7Ci0gICAgc3RkOjp1bmlxdWVfcHRyPFdlYkZyYW1lUG9saWN5
TGlzdGVuZXJQcml2YXRlPiBtX3BvbGljeUxpc3RlbmVyUHJpdmF0ZTsKLQogcHJpdmF0ZToKLSAg
ICBSZWZQdHI8V2ViQ29yZTo6RnJhbWU+IGNyZWF0ZUZyYW1lKGNvbnN0IFdlYkNvcmU6OlVSTCYs
IGNvbnN0IFdURjo6U3RyaW5nJiBuYW1lLCBXZWJDb3JlOjpIVE1MRnJhbWVPd25lckVsZW1lbnQq
LCBjb25zdCBXVEY6OlN0cmluZyYgcmVmZXJyZXIpOwogICAgIFdlYkhpc3RvcnkqIHdlYkhpc3Rv
cnkoKSBjb25zdDsKIAorICAgIGNsYXNzIFdlYkZyYW1lUG9saWN5TGlzdGVuZXJQcml2YXRlOwor
ICAgIHN0ZDo6dW5pcXVlX3B0cjxXZWJGcmFtZVBvbGljeUxpc3RlbmVyUHJpdmF0ZT4gbV9wb2xp
Y3lMaXN0ZW5lclByaXZhdGU7CisKICAgICBXZWJGcmFtZSogbV93ZWJGcmFtZTsKIAogICAgIC8v
IFBvaW50cyB0byB0aGUgbWFudWFsIGxvYWRlciB0aGF0IGRhdGEgc2hvdWxkIGJlIHJlZGlyZWN0
ZWQgdG8uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJG
cmFtZU5ldHdvcmtpbmdDb250ZXh0LmggYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9y
dC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0LmgKaW5kZXggZWFjMzA3MjBhYzFhNTRmODY1MTAx
YmZmNTE0MGM3NGRlMGFmYjBmOS4uZmIyYTc4MzVkOGY4NzM5ZDRjMTUwYWI1MjgzZTViN2QyMGI1
OGVhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViRnJh
bWVOZXR3b3JraW5nQ29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBw
b3J0L1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQuaApAQCAtMjgsOSArMjgsOSBAQAogCiBjbGFz
cyBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0IDogcHVibGljIFdlYkNvcmU6OkZyYW1lTmV0d29y
a2luZ0NvbnRleHQgewogcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFdlYkZyYW1lTmV0
d29ya2luZ0NvbnRleHQ+IGNyZWF0ZShXZWJDb3JlOjpGcmFtZSogZnJhbWUpCisgICAgc3RhdGlj
IFJlZjxXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBjcmVhdGUoV2ViQ29yZTo6RnJhbWUqIGZy
YW1lKQogICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBXZWJGcmFtZU5ldHdvcmtp
bmdDb250ZXh0KGZyYW1lKSk7CisgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYkZyYW1l
TmV0d29ya2luZ0NvbnRleHQoZnJhbWUpKTsKICAgICB9CiAKICNpZiBVU0UoQ0ZVUkxDT05ORUNU
SU9OKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSVdlYkFyY2hpdmUuaCBi
L1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUElXZWJBcmNoaXZlLmgKaW5kZXggZDk2YjU5NmRhYmZi
ZTkwNjhhYzUzNDEwNjg3YmZhMmQxODYxOGIyMy4uODM3NTc3N2RiODBmZTA3ZWFjODM0OTMwMzNi
ZDE4NjRhYmFjN2E3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSVdlYkFy
Y2hpdmUuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJV2ViQXJjaGl2ZS5oCkBAIC0y
OSw3ICsyOSw2IEBACiAjaWYgUExBVEZPUk0oQ09DT0EpCiAKICNpbmNsdWRlICJBUElPYmplY3Qu
aCIKLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4K
IAogbmFtZXNwYWNlIEFQSSB7CkBAIC01MCw5ICs0OSw5IEBAIGNsYXNzIFdlYkFyY2hpdmUgOiBw
dWJsaWMgQVBJOjpPYmplY3RJbXBsPEFQSTo6T2JqZWN0OjpUeXBlOjpXZWJBcmNoaXZlPiB7CiBw
dWJsaWM6CiAgICAgdmlydHVhbCB+V2ViQXJjaGl2ZSgpOwogCi0gICAgc3RhdGljIFJlZjxXZWJB
cmNoaXZlPiBjcmVhdGUoV2ViQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3VyY2UsIFBhc3NSZWZQ
dHI8QVBJOjpBcnJheT4gc3VicmVzb3VyY2VzLCBQYXNzUmVmUHRyPEFQSTo6QXJyYXk+IHN1YmZy
YW1lQXJjaGl2ZXMpOworICAgIHN0YXRpYyBSZWY8V2ViQXJjaGl2ZT4gY3JlYXRlKFdlYkFyY2hp
dmVSZXNvdXJjZSogbWFpblJlc291cmNlLCBSZWZQdHI8QVBJOjpBcnJheT4mJiBzdWJyZXNvdXJj
ZXMsIFJlZlB0cjxBUEk6OkFycmF5PiYmIHN1YmZyYW1lQXJjaGl2ZXMpOwogICAgIHN0YXRpYyBS
ZWY8V2ViQXJjaGl2ZT4gY3JlYXRlKEFQSTo6RGF0YSopOwotICAgIHN0YXRpYyBSZWY8V2ViQXJj
aGl2ZT4gY3JlYXRlKFBhc3NSZWZQdHI8V2ViQ29yZTo6TGVnYWN5V2ViQXJjaGl2ZT4pOworICAg
IHN0YXRpYyBSZWY8V2ViQXJjaGl2ZT4gY3JlYXRlKFJlZlB0cjxXZWJDb3JlOjpMZWdhY3lXZWJB
cmNoaXZlPiYmKTsKICAgICBzdGF0aWMgUmVmPFdlYkFyY2hpdmU+IGNyZWF0ZShXZWJDb3JlOjpS
YW5nZSopOwogCiAgICAgV2ViQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3VyY2UoKTsKQEAgLTY0
LDkgKzYzLDkgQEAgcHVibGljOgogICAgIFdlYkNvcmU6OkxlZ2FjeVdlYkFyY2hpdmUqIGNvcmVM
ZWdhY3lXZWJBcmNoaXZlKCk7CiAKIHByaXZhdGU6Ci0gICAgV2ViQXJjaGl2ZShXZWJBcmNoaXZl
UmVzb3VyY2UqIG1haW5SZXNvdXJjZSwgUGFzc1JlZlB0cjxBUEk6OkFycmF5PiBzdWJyZXNvdXJj
ZXMsIFBhc3NSZWZQdHI8QVBJOjpBcnJheT4gc3ViZnJhbWVBcmNoaXZlcyk7CisgICAgV2ViQXJj
aGl2ZShXZWJBcmNoaXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSwgUmVmUHRyPEFQSTo6QXJyYXk+
JiYgc3VicmVzb3VyY2VzLCBSZWZQdHI8QVBJOjpBcnJheT4mJiBzdWJmcmFtZUFyY2hpdmVzKTsK
ICAgICBXZWJBcmNoaXZlKEFQSTo6RGF0YSopOwotICAgIFdlYkFyY2hpdmUoUGFzc1JlZlB0cjxX
ZWJDb3JlOjpMZWdhY3lXZWJBcmNoaXZlPik7CisgICAgV2ViQXJjaGl2ZShSZWZQdHI8V2ViQ29y
ZTo6TGVnYWN5V2ViQXJjaGl2ZT4mJik7CiAKICAgICBSZWZQdHI8V2ViQ29yZTo6TGVnYWN5V2Vi
QXJjaGl2ZT4gbV9sZWdhY3lXZWJBcmNoaXZlOwogICAgIFJlZlB0cjxXZWJBcmNoaXZlUmVzb3Vy
Y2U+IG1fY2FjaGVkTWFpblJlc291cmNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hh
cmVkL0FQSVdlYkFyY2hpdmUubW0gYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJV2ViQXJjaGl2
ZS5tbQppbmRleCA5MjkwM2IzNDdhNDlmY2VjZmE2YzM1YzU5ZTJmNmQ2OTE2ZDk4MmU5Li5mMmYw
ZmUwMTcxZjllMzMzMTQ0N2QzNmQwYTQ3YzZkYmUwMWEyMzJlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9TaGFyZWQvQVBJV2ViQXJjaGl2ZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFy
ZWQvQVBJV2ViQXJjaGl2ZS5tbQpAQCAtMzgsOSArMzgsOSBAQCB1c2luZyBuYW1lc3BhY2UgV2Vi
Q29yZTsKIAogbmFtZXNwYWNlIEFQSSB7CiAKLVJlZjxXZWJBcmNoaXZlPiBXZWJBcmNoaXZlOjpj
cmVhdGUoV2ViQXJjaGl2ZVJlc291cmNlKiBtYWluUmVzb3VyY2UsIFBhc3NSZWZQdHI8QVBJOjpB
cnJheT4gc3VicmVzb3VyY2VzLCBQYXNzUmVmUHRyPEFQSTo6QXJyYXk+IHN1YmZyYW1lQXJjaGl2
ZXMpCitSZWY8V2ViQXJjaGl2ZT4gV2ViQXJjaGl2ZTo6Y3JlYXRlKFdlYkFyY2hpdmVSZXNvdXJj
ZSogbWFpblJlc291cmNlLCBSZWZQdHI8QVBJOjpBcnJheT4mJiBzdWJyZXNvdXJjZXMsIFJlZlB0
cjxBUEk6OkFycmF5PiYmIHN1YmZyYW1lQXJjaGl2ZXMpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVm
KCpuZXcgV2ViQXJjaGl2ZShtYWluUmVzb3VyY2UsIHN1YnJlc291cmNlcywgc3ViZnJhbWVBcmNo
aXZlcykpOworICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYkFyY2hpdmUobWFpblJlc291cmNl
LCBXVEZNb3ZlKHN1YnJlc291cmNlcyksIFdURk1vdmUoc3ViZnJhbWVBcmNoaXZlcykpKTsKIH0K
IAogUmVmPFdlYkFyY2hpdmU+IFdlYkFyY2hpdmU6OmNyZWF0ZShBUEk6OkRhdGEqIGRhdGEpCkBA
IC00OCw5ICs0OCw5IEBAIFJlZjxXZWJBcmNoaXZlPiBXZWJBcmNoaXZlOjpjcmVhdGUoQVBJOjpE
YXRhKiBkYXRhKQogICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYkFyY2hpdmUoZGF0YSkpOwog
fQogCi1SZWY8V2ViQXJjaGl2ZT4gV2ViQXJjaGl2ZTo6Y3JlYXRlKFBhc3NSZWZQdHI8TGVnYWN5
V2ViQXJjaGl2ZT4gbGVnYWN5V2ViQXJjaGl2ZSkKK1JlZjxXZWJBcmNoaXZlPiBXZWJBcmNoaXZl
OjpjcmVhdGUoUmVmUHRyPExlZ2FjeVdlYkFyY2hpdmU+JiYgbGVnYWN5V2ViQXJjaGl2ZSkKIHsK
LSAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBXZWJBcmNoaXZlKGxlZ2FjeVdlYkFyY2hpdmUpKTsK
KyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBXZWJBcmNoaXZlKGxlZ2FjeVdlYkFyY2hpdmUucmVs
ZWFzZU5vbk51bGwoKSkpOwogfQogCiBSZWY8V2ViQXJjaGl2ZT4gV2ViQXJjaGl2ZTo6Y3JlYXRl
KFJhbmdlKiByYW5nZSkKQEAgLTU4LDMxICs1OCwzMiBAQCBSZWY8V2ViQXJjaGl2ZT4gV2ViQXJj
aGl2ZTo6Y3JlYXRlKFJhbmdlKiByYW5nZSkKICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBXZWJB
cmNoaXZlKExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZShyYW5nZSkpKTsKIH0KIAotV2ViQXJjaGl2
ZTo6V2ViQXJjaGl2ZShXZWJBcmNoaXZlUmVzb3VyY2UqIG1haW5SZXNvdXJjZSwgUGFzc1JlZlB0
cjxBUEk6OkFycmF5PiBzdWJyZXNvdXJjZXMsIFBhc3NSZWZQdHI8QVBJOjpBcnJheT4gc3ViZnJh
bWVBcmNoaXZlcykKK1dlYkFyY2hpdmU6OldlYkFyY2hpdmUoV2ViQXJjaGl2ZVJlc291cmNlKiBt
YWluUmVzb3VyY2UsIFJlZlB0cjxBUEk6OkFycmF5PiYmIHN1YnJlc291cmNlcywgUmVmUHRyPEFQ
STo6QXJyYXk+JiYgc3ViZnJhbWVBcmNoaXZlcykKICAgICA6IG1fY2FjaGVkTWFpblJlc291cmNl
KG1haW5SZXNvdXJjZSkKICAgICAsIG1fY2FjaGVkU3VicmVzb3VyY2VzKHN1YnJlc291cmNlcykK
ICAgICAsIG1fY2FjaGVkU3ViZnJhbWVBcmNoaXZlcyhzdWJmcmFtZUFyY2hpdmVzKQogewotICAg
IFJlZlB0cjxBcmNoaXZlUmVzb3VyY2U+IGNvcmVNYWluUmVzb3VyY2UgPSBtX2NhY2hlZE1haW5S
ZXNvdXJjZS0+Y29yZUFyY2hpdmVSZXNvdXJjZSgpOworICAgIGF1dG8gY29yZU1haW5SZXNvdXJj
ZSA9IG1fY2FjaGVkTWFpblJlc291cmNlLT5jb3JlQXJjaGl2ZVJlc291cmNlKCk7CiAKLSAgICBW
ZWN0b3I8UmVmUHRyPEFyY2hpdmVSZXNvdXJjZT4+IGNvcmVBcmNoaXZlUmVzb3VyY2VzOworICAg
IFZlY3RvcjxSZWY8QXJjaGl2ZVJlc291cmNlPj4gY29yZUFyY2hpdmVSZXNvdXJjZXM7CiAgICAg
Y29yZUFyY2hpdmVSZXNvdXJjZXMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShtX2NhY2hlZFN1YnJl
c291cmNlcy0+c2l6ZSgpKTsKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1fY2FjaGVkU3Vi
cmVzb3VyY2VzLT5zaXplKCk7ICsraSkgewotICAgICAgICBSZWZQdHI8V2ViQXJjaGl2ZVJlc291
cmNlPiByZXNvdXJjZSA9IG1fY2FjaGVkU3VicmVzb3VyY2VzLT5hdDxXZWJBcmNoaXZlUmVzb3Vy
Y2U+KGkpOworICAgICAgICBhdXRvIHJlc291cmNlID0gbV9jYWNoZWRTdWJyZXNvdXJjZXMtPmF0
PFdlYkFyY2hpdmVSZXNvdXJjZT4oaSk7CiAgICAgICAgIEFTU0VSVChyZXNvdXJjZSk7Ci0gICAg
ICAgIGNvcmVBcmNoaXZlUmVzb3VyY2VzLnVuY2hlY2tlZEFwcGVuZChyZXNvdXJjZS0+Y29yZUFy
Y2hpdmVSZXNvdXJjZSgpKTsKKyAgICAgICAgQVNTRVJUKHJlc291cmNlLT5jb3JlQXJjaGl2ZVJl
c291cmNlKCkpOworICAgICAgICBjb3JlQXJjaGl2ZVJlc291cmNlcy51bmNoZWNrZWRBcHBlbmQo
KnJlc291cmNlLT5jb3JlQXJjaGl2ZVJlc291cmNlKCkpOwogICAgIH0KIAotICAgIFZlY3RvcjxS
ZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4+IGNvcmVTdWJmcmFtZUxlZ2FjeVdlYkFyY2hpdmVzOwor
ICAgIFZlY3RvcjxSZWY8TGVnYWN5V2ViQXJjaGl2ZT4+IGNvcmVTdWJmcmFtZUxlZ2FjeVdlYkFy
Y2hpdmVzOwogICAgIGNvcmVTdWJmcmFtZUxlZ2FjeVdlYkFyY2hpdmVzLnJlc2VydmVJbml0aWFs
Q2FwYWNpdHkobV9jYWNoZWRTdWJmcmFtZUFyY2hpdmVzLT5zaXplKCkpOwotCiAgICAgZm9yIChz
aXplX3QgaSA9IDA7IGkgPCBtX2NhY2hlZFN1YmZyYW1lQXJjaGl2ZXMtPnNpemUoKTsgKytpKSB7
Ci0gICAgICAgIFJlZlB0cjxXZWJBcmNoaXZlPiBzdWJmcmFtZVdlYkFyY2hpdmUgPSBtX2NhY2hl
ZFN1YmZyYW1lQXJjaGl2ZXMtPmF0PFdlYkFyY2hpdmU+KGkpOworICAgICAgICBhdXRvIHN1YmZy
YW1lV2ViQXJjaGl2ZSA9IG1fY2FjaGVkU3ViZnJhbWVBcmNoaXZlcy0+YXQ8V2ViQXJjaGl2ZT4o
aSk7CiAgICAgICAgIEFTU0VSVChzdWJmcmFtZVdlYkFyY2hpdmUpOwotICAgICAgICBjb3JlU3Vi
ZnJhbWVMZWdhY3lXZWJBcmNoaXZlcy51bmNoZWNrZWRBcHBlbmQoc3ViZnJhbWVXZWJBcmNoaXZl
LT5jb3JlTGVnYWN5V2ViQXJjaGl2ZSgpKTsKKyAgICAgICAgQVNTRVJUKHN1YmZyYW1lV2ViQXJj
aGl2ZS0+Y29yZUxlZ2FjeVdlYkFyY2hpdmUoKSk7CisgICAgICAgIGNvcmVTdWJmcmFtZUxlZ2Fj
eVdlYkFyY2hpdmVzLnVuY2hlY2tlZEFwcGVuZCgqc3ViZnJhbWVXZWJBcmNoaXZlLT5jb3JlTGVn
YWN5V2ViQXJjaGl2ZSgpKTsKICAgICB9CiAKLSAgICBtX2xlZ2FjeVdlYkFyY2hpdmUgPSBMZWdh
Y3lXZWJBcmNoaXZlOjpjcmVhdGUoV1RGTW92ZShjb3JlTWFpblJlc291cmNlKSwgV1RGTW92ZShj
b3JlQXJjaGl2ZVJlc291cmNlcyksIFdURk1vdmUoY29yZVN1YmZyYW1lTGVnYWN5V2ViQXJjaGl2
ZXMpKTsKKyAgICBtX2xlZ2FjeVdlYkFyY2hpdmUgPSBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUo
KmNvcmVNYWluUmVzb3VyY2UsIFdURk1vdmUoY29yZUFyY2hpdmVSZXNvdXJjZXMpLCBXVEZNb3Zl
KGNvcmVTdWJmcmFtZUxlZ2FjeVdlYkFyY2hpdmVzKSk7CiB9CiAKIFdlYkFyY2hpdmU6OldlYkFy
Y2hpdmUoQVBJOjpEYXRhKiBkYXRhKQpAQCAtOTAsNyArOTEsNyBAQCBXZWJBcmNoaXZlOjpXZWJB
cmNoaXZlKEFQSTo6RGF0YSogZGF0YSkKICAgICBtX2xlZ2FjeVdlYkFyY2hpdmUgPSBMZWdhY3lX
ZWJBcmNoaXZlOjpjcmVhdGUoU2hhcmVkQnVmZmVyOjpjcmVhdGUoZGF0YS0+Ynl0ZXMoKSwgZGF0
YS0+c2l6ZSgpKS5nZXQoKSk7CiB9CiAKLVdlYkFyY2hpdmU6OldlYkFyY2hpdmUoUGFzc1JlZlB0
cjxMZWdhY3lXZWJBcmNoaXZlPiBsZWdhY3lXZWJBcmNoaXZlKQorV2ViQXJjaGl2ZTo6V2ViQXJj
aGl2ZShSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4mJiBsZWdhY3lXZWJBcmNoaXZlKQogICAgIDog
bV9sZWdhY3lXZWJBcmNoaXZlKGxlZ2FjeVdlYkFyY2hpdmUpCiB7CiB9CkBAIC0xMTEsMTAgKzEx
Miw4IEBAIEFQSTo6QXJyYXkqIFdlYkFyY2hpdmU6OnN1YnJlc291cmNlcygpCiAgICAgaWYgKCFt
X2NhY2hlZFN1YnJlc291cmNlcykgewogICAgICAgICBWZWN0b3I8UmVmUHRyPEFQSTo6T2JqZWN0
Pj4gc3VicmVzb3VyY2VzOwogICAgICAgICBzdWJyZXNvdXJjZXMucmVzZXJ2ZUluaXRpYWxDYXBh
Y2l0eShtX2xlZ2FjeVdlYkFyY2hpdmUtPnN1YnJlc291cmNlcygpLnNpemUoKSk7Ci0KLSAgICAg
ICAgZm9yIChjb25zdCBhdXRvJiBzdWJyZXNvdXJjZSA6IG1fbGVnYWN5V2ViQXJjaGl2ZS0+c3Vi
cmVzb3VyY2VzKCkpCi0gICAgICAgICAgICBzdWJyZXNvdXJjZXMudW5jaGVja2VkQXBwZW5kKFdl
YkFyY2hpdmVSZXNvdXJjZTo6Y3JlYXRlKHN1YnJlc291cmNlKSk7Ci0KKyAgICAgICAgZm9yIChh
dXRvJiBzdWJyZXNvdXJjZSA6IG1fbGVnYWN5V2ViQXJjaGl2ZS0+c3VicmVzb3VyY2VzKCkpCisg
ICAgICAgICAgICBzdWJyZXNvdXJjZXMudW5jaGVja2VkQXBwZW5kKFdlYkFyY2hpdmVSZXNvdXJj
ZTo6Y3JlYXRlKHN1YnJlc291cmNlLnB0cigpKSk7CiAgICAgICAgIG1fY2FjaGVkU3VicmVzb3Vy
Y2VzID0gQVBJOjpBcnJheTo6Y3JlYXRlKFdURk1vdmUoc3VicmVzb3VyY2VzKSk7CiAgICAgfQog
CkBAIC0xMjYsMTAgKzEyNSw4IEBAIEFQSTo6QXJyYXkqIFdlYkFyY2hpdmU6OnN1YmZyYW1lQXJj
aGl2ZXMoKQogICAgIGlmICghbV9jYWNoZWRTdWJmcmFtZUFyY2hpdmVzKSB7CiAgICAgICAgIFZl
Y3RvcjxSZWZQdHI8QVBJOjpPYmplY3Q+PiBzdWJmcmFtZVdlYkFyY2hpdmVzOwogICAgICAgICBz
dWJmcmFtZVdlYkFyY2hpdmVzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobV9sZWdhY3lXZWJBcmNo
aXZlLT5zdWJmcmFtZUFyY2hpdmVzKCkuc2l6ZSgpKTsKLQotICAgICAgICBmb3IgKGNvbnN0IGF1
dG8mIHN1YmZyYW1lQXJjaGl2ZSA6IG1fbGVnYWN5V2ViQXJjaGl2ZS0+c3ViZnJhbWVBcmNoaXZl
cygpKQotICAgICAgICAgICAgc3ViZnJhbWVXZWJBcmNoaXZlcy51bmNoZWNrZWRBcHBlbmQoV2Vi
QXJjaGl2ZTo6Y3JlYXRlKHN0YXRpY19jYXN0PExlZ2FjeVdlYkFyY2hpdmUqPihzdWJmcmFtZUFy
Y2hpdmUuZ2V0KCkpKSk7Ci0KKyAgICAgICAgZm9yIChhdXRvJiBzdWJmcmFtZUFyY2hpdmUgOiBt
X2xlZ2FjeVdlYkFyY2hpdmUtPnN1YmZyYW1lQXJjaGl2ZXMoKSkKKyAgICAgICAgICAgIHN1YmZy
YW1lV2ViQXJjaGl2ZXMudW5jaGVja2VkQXBwZW5kKFdlYkFyY2hpdmU6OmNyZWF0ZShzdGF0aWNf
Y2FzdDxMZWdhY3lXZWJBcmNoaXZlKj4oc3ViZnJhbWVBcmNoaXZlLnB0cigpKSkpOwogICAgICAg
ICBtX2NhY2hlZFN1YmZyYW1lQXJjaGl2ZXMgPSBBUEk6OkFycmF5OjpjcmVhdGUoV1RGTW92ZShz
dWJmcmFtZVdlYkFyY2hpdmVzKSk7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9TaGFyZWQvVGV4dENoZWNrZXJTdGF0ZS5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1RleHRD
aGVja2VyU3RhdGUuaAppbmRleCBiY2M5ZmVjY2NjYjJmNjliNzY3OTg0Njg1MTljZDQyYjAzN2Nh
MmRkLi5jZTY2ZjEwMjUwMjNhYWRlZjg4ZDM1Nzg2Nzg5OTg2MTA5YjJjY2ZiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvVGV4dENoZWNrZXJTdGF0ZS5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL1NoYXJlZC9UZXh0Q2hlY2tlclN0YXRlLmgKQEAgLTIzLDIzICsyMywyMiBAQAogICog
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgVGV4dENoZWNr
ZXJTdGF0ZV9oCi0jZGVmaW5lIFRleHRDaGVja2VyU3RhdGVfaAorI3ByYWdtYSBvbmNlCiAKICNp
bmNsdWRlICJBcmd1bWVudENvZGVycy5oIgogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogc3RydWN0
IFRleHRDaGVja2VyU3RhdGUgewotICAgIGJvb2wgaXNDb250aW51b3VzU3BlbGxDaGVja2luZ0Vu
YWJsZWQ7Ci0gICAgYm9vbCBpc0dyYW1tYXJDaGVja2luZ0VuYWJsZWQ7CisgICAgYm9vbCBpc0Nv
bnRpbnVvdXNTcGVsbENoZWNraW5nRW5hYmxlZCB7IGZhbHNlIH07CisgICAgYm9vbCBpc0dyYW1t
YXJDaGVja2luZ0VuYWJsZWQgeyBmYWxzZSB9OwogCiAjaWYgVVNFKEFQUEtJVCkKLSAgICBib29s
IGlzQXV0b21hdGljU3BlbGxpbmdDb3JyZWN0aW9uRW5hYmxlZDsKLSAgICBib29sIGlzQXV0b21h
dGljUXVvdGVTdWJzdGl0dXRpb25FbmFibGVkOwotICAgIGJvb2wgaXNBdXRvbWF0aWNEYXNoU3Vi
c3RpdHV0aW9uRW5hYmxlZDsKLSAgICBib29sIGlzQXV0b21hdGljTGlua0RldGVjdGlvbkVuYWJs
ZWQ7Ci0gICAgYm9vbCBpc0F1dG9tYXRpY1RleHRSZXBsYWNlbWVudEVuYWJsZWQ7CisgICAgYm9v
bCBpc0F1dG9tYXRpY1NwZWxsaW5nQ29ycmVjdGlvbkVuYWJsZWQgeyBmYWxzZSB9OworICAgIGJv
b2wgaXNBdXRvbWF0aWNRdW90ZVN1YnN0aXR1dGlvbkVuYWJsZWQgeyBmYWxzZSB9OworICAgIGJv
b2wgaXNBdXRvbWF0aWNEYXNoU3Vic3RpdHV0aW9uRW5hYmxlZCB7IGZhbHNlIH07CisgICAgYm9v
bCBpc0F1dG9tYXRpY0xpbmtEZXRlY3Rpb25FbmFibGVkIHsgZmFsc2UgfTsKKyAgICBib29sIGlz
QXV0b21hdGljVGV4dFJlcGxhY2VtZW50RW5hYmxlZCB7IGZhbHNlIH07CiAjZW5kaWYKIH07CiAK
QEAgLTQ4LDUgKzQ3LDMgQEAgc3RydWN0IFRleHRDaGVja2VyU3RhdGUgewogbmFtZXNwYWNlIElQ
QyB7CiB0ZW1wbGF0ZTw+IHN0cnVjdCBBcmd1bWVudENvZGVyPFdlYktpdDo6VGV4dENoZWNrZXJT
dGF0ZT4gOiBTaW1wbGVBcmd1bWVudENvZGVyPFdlYktpdDo6VGV4dENoZWNrZXJTdGF0ZT4geyB9
OwogfTsKLQotI2VuZGlmIC8vIFRleHRDaGVja2VyU3RhdGVfaApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL1dlYkljb25EYXRhYmFzZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvV2ViSWNvbkRhdGFiYXNlLmNwcAppbmRleCA1NmY1ZGExYTIwMTNhMDlhNjlhNWZi
ZWEyNGZlNGE2YmJiYjBhMDA0Li44OTJjMDVmZGFjZjRiMzNhYzg1YzZjNDU1ZDU4M2E0ZTg3OWZi
YmYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViSWNvbkRhdGFiYXNl
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViSWNvbkRhdGFiYXNlLmNwcApA
QCAtMTMwLDcgKzEzMCw3IEBAIHZvaWQgV2ViSWNvbkRhdGFiYXNlOjpzZXRJY29uRGF0YUZvcklj
b25VUkwoY29uc3QgSVBDOjpEYXRhUmVmZXJlbmNlJiBpY29uRGF0YSwKICAgICBMT0coSWNvbkRh
dGFiYXNlLCAiV0syIFVJUHJvY2VzcyBzZXR0aW5nIGljb24gZGF0YSAoJWkgYnl0ZXMpIGZvciBw
YWdlIFVSTCAlcyIsIChpbnQpaWNvbkRhdGEuc2l6ZSgpLCBpY29uVVJMLmFzY2lpKCkuZGF0YSgp
KTsKICAgICBpZiAoIW1faWNvbkRhdGFiYXNlSW1wbCkKICAgICAgICAgcmV0dXJuOwotICAgIG1f
aWNvbkRhdGFiYXNlSW1wbC0+c2V0SWNvbkRhdGFGb3JJY29uVVJMKFNoYXJlZEJ1ZmZlcjo6Y3Jl
YXRlKGljb25EYXRhLmRhdGEoKSwgaWNvbkRhdGEuc2l6ZSgpKSwgaWNvblVSTCk7CisgICAgbV9p
Y29uRGF0YWJhc2VJbXBsLT5zZXRJY29uRGF0YUZvckljb25VUkwoU2hhcmVkQnVmZmVyOjpjcmVh
dGUoaWNvbkRhdGEuZGF0YSgpLCBpY29uRGF0YS5zaXplKCkpLnB0cigpLCBpY29uVVJMKTsKIH0K
IAogdm9pZCBXZWJJY29uRGF0YWJhc2U6OnN5bmNocm9ub3VzSWNvbkRhdGFGb3JQYWdlVVJMKGNv
bnN0IFN0cmluZyYsIElQQzo6RGF0YVJlZmVyZW5jZSYgaWNvbkRhdGEpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmggYi9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKaW5kZXggNzU4YzIzOTU5ODUwNTI0Mzk4NmMwNzM3NTE0
OWMzZWVlYjEzNzI4Ni4uNDYwNmRmMTE0YWQ3Nzc0ZTQzNzk0MGU0ZmMwOTg3YTlmMWFkZjZhZSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaApAQCAtMTg2LDcgKzE4Niw2
IEBAIGNsYXNzIFBhZ2VDbGllbnQ7CiBjbGFzcyBSZW1vdGVMYXllclRyZWVTY3JvbGxpbmdQZXJm
b3JtYW5jZURhdGE7CiBjbGFzcyBSZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbjsKIGNsYXNzIFJl
bW90ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yUHJveHk7Ci1jbGFzcyBTdHJpbmdQYWlyVmVjdG9yOwog
Y2xhc3MgVXNlckRhdGE7CiBjbGFzcyBWaWV3U25hcHNob3Q7CiBjbGFzcyBWaXNpdGVkTGlua1N0
b3JlOwpAQCAtMjA2LDExICsyMDUsMTIgQEAgY2xhc3MgV2ViUHJvY2Vzc1Byb3h5OwogY2xhc3Mg
V2ViVXNlckNvbnRlbnRDb250cm9sbGVyUHJveHk7CiBjbGFzcyBXZWJXaGVlbEV2ZW50OwogY2xh
c3MgV2Vic2l0ZURhdGFTdG9yZTsKK2NsYXNzIEdhbWVwYWREYXRhOworCiBzdHJ1Y3QgQXR0cmli
dXRlZFN0cmluZzsKIHN0cnVjdCBDb2xvclNwYWNlRGF0YTsKIHN0cnVjdCBFZGl0aW5nUmFuZ2U7
CiBzdHJ1Y3QgRWRpdG9yU3RhdGU7Ci1jbGFzcyBHYW1lcGFkRGF0YTsKIHN0cnVjdCBJbnRlcmFj
dGlvbkluZm9ybWF0aW9uUmVxdWVzdDsKIHN0cnVjdCBMb2FkUGFyYW1ldGVyczsKIHN0cnVjdCBQ
bGF0Zm9ybVBvcHVwTWVudURhdGE7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5jcHAKaW5kZXgg
MzNmZTU4N2U0MTU3NjM4NDAwMzMxNTA5ZDhmN2IyNTNjNzMzZTg5ZC4uNTQyZWRkZDZkYzA5YjNi
YWMxNDdlODNlMWNiNzY0NTk4OTg5N2IzNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9JY29uRGF0YWJhc2UvV2ViSWNvbkRhdGFiYXNlUHJveHkuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvSWNvbkRhdGFiYXNlL1dlYkljb25EYXRhYmFzZVByb3h5LmNw
cApAQCAtNDIsMTEgKzQyLDEwIEBAIFdlYkljb25EYXRhYmFzZVByb3h5Ojp+V2ViSWNvbkRhdGFi
YXNlUHJveHkoKQogewogfQogCi1XZWJJY29uRGF0YWJhc2VQcm94eTo6V2ViSWNvbkRhdGFiYXNl
UHJveHkoV2ViUHJvY2VzcyogcHJvY2VzcykKLSAgICA6IG1faXNFbmFibGVkKGZhbHNlKQotICAg
ICwgbV9wcm9jZXNzKHByb2Nlc3MpCitXZWJJY29uRGF0YWJhc2VQcm94eTo6V2ViSWNvbkRhdGFi
YXNlUHJveHkoV2ViUHJvY2VzcyYgcHJvY2VzcykKKyAgICA6IG1fcHJvY2Vzcyhwcm9jZXNzKQog
ewotICAgIG1fcHJvY2Vzcy0+YWRkTWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpXZWJJY29uRGF0
YWJhc2VQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCAqdGhpcyk7CisgICAgbV9wcm9jZXNz
LmFkZE1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlUHJveHk6Om1lc3Nh
Z2VSZWNlaXZlck5hbWUoKSwgKnRoaXMpOwogfQogCiBib29sIFdlYkljb25EYXRhYmFzZVByb3h5
Ojppc0VuYWJsZWQoKSBjb25zdApAQCAtNjUsMTggKzY0LDE4IEBAIHZvaWQgV2ViSWNvbkRhdGFi
YXNlUHJveHk6OnNldEVuYWJsZWQoYm9vbCBlbmFibGVkKQogCiB2b2lkIFdlYkljb25EYXRhYmFz
ZVByb3h5OjpyZXRhaW5JY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmIHBhZ2VVUkwpCiB7Ci0g
ICAgbV9wcm9jZXNzLT5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpX
ZWJQcm9jZXNzUHJveHk6OlJldGFpbkljb25Gb3JQYWdlVVJMKHBhZ2VVUkwpLCAwKTsKKyAgICBt
X3Byb2Nlc3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViUHJv
Y2Vzc1Byb3h5OjpSZXRhaW5JY29uRm9yUGFnZVVSTChwYWdlVVJMKSwgMCk7CiB9CiAKIHZvaWQg
V2ViSWNvbkRhdGFiYXNlUHJveHk6OnJlbGVhc2VJY29uRm9yUGFnZVVSTChjb25zdCBTdHJpbmcm
IHBhZ2VVUkwpCiB7Ci0gICAgbV9wcm9jZXNzLT5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5z
ZW5kKE1lc3NhZ2VzOjpXZWJQcm9jZXNzUHJveHk6OlJlbGVhc2VJY29uRm9yUGFnZVVSTChwYWdl
VVJMKSwgMCk7CisgICAgbV9wcm9jZXNzLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmQo
TWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6UmVsZWFzZUljb25Gb3JQYWdlVVJMKHBhZ2VVUkwp
LCAwKTsKIH0KIAogSW1hZ2UqIFdlYkljb25EYXRhYmFzZVByb3h5OjpzeW5jaHJvbm91c0ljb25G
b3JQYWdlVVJMKGNvbnN0IFN0cmluZyYgcGFnZVVSTCwgY29uc3QgSW50U2l6ZSYgLypzaXplKi8p
CiB7CiAgICAgSVBDOjpEYXRhUmVmZXJlbmNlIHJlc3VsdDsKLSAgICBpZiAoIW1fcHJvY2Vzcy0+
cGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYkljb25EYXRh
YmFzZTo6U3luY2hyb25vdXNJY29uRGF0YUZvclBhZ2VVUkwocGFnZVVSTCksIE1lc3NhZ2VzOjpX
ZWJJY29uRGF0YWJhc2U6OlN5bmNocm9ub3VzSWNvbkRhdGFGb3JQYWdlVVJMOjpSZXBseShyZXN1
bHQpLCAwKSkKKyAgICBpZiAoIW1fcHJvY2Vzcy5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5z
ZW5kU3luYyhNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpTeW5jaHJvbm91c0ljb25EYXRhRm9y
UGFnZVVSTChwYWdlVVJMKSwgTWVzc2FnZXM6OldlYkljb25EYXRhYmFzZTo6U3luY2hyb25vdXNJ
Y29uRGF0YUZvclBhZ2VVUkw6OlJlcGx5KHJlc3VsdCksIDApKQogICAgICAgICByZXR1cm4gMDsK
ICAgICAKICAgICAvLyBGSVhNRTogUmV0dXJuIEltYWdlIGNyZWF0ZWQgd2l0aCB0aGUgYWJvdmUg
ZGF0YS4KQEAgLTExMCwzNCArMTA5LDMyIEBAIGJvb2wgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnN1
cHBvcnRzQXN5bmNocm9ub3VzTW9kZSgpCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLXZvaWQgV2Vi
SWNvbkRhdGFiYXNlUHJveHk6OmxvYWREZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5nJiBp
Y29uVVJMLCBQYXNzUmVmUHRyPFdlYkNvcmU6Okljb25Mb2FkRGVjaXNpb25DYWxsYmFjaz4gY2Fs
bGJhY2spCit2b2lkIFdlYkljb25EYXRhYmFzZVByb3h5Ojpsb2FkRGVjaXNpb25Gb3JJY29uVVJM
KGNvbnN0IFN0cmluZyYgaWNvblVSTCwgV2ViQ29yZTo6SWNvbkxvYWREZWNpc2lvbkNhbGxiYWNr
JiBjYWxsYmFjaykKIHsKLSAgICB1aW50NjRfdCBpZCA9IGNhbGxiYWNrLT5jYWxsYmFja0lEKCk7
Ci0gICAgbV9pY29uTG9hZERlY2lzaW9uQ2FsbGJhY2tzLmFkZChpZCwgY2FsbGJhY2spOwotICAg
IAotICAgIG1fcHJvY2Vzcy0+cGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdl
czo6V2ViSWNvbkRhdGFiYXNlOjpHZXRMb2FkRGVjaXNpb25Gb3JJY29uVVJMKGljb25VUkwsIGlk
KSwgMCk7CisgICAgdWludDY0X3QgaWQgPSBjYWxsYmFjay5jYWxsYmFja0lEKCk7CisgICAgbV9p
Y29uTG9hZERlY2lzaW9uQ2FsbGJhY2tzLmFkZChpZCwgJmNhbGxiYWNrKTsKKyAgICBtX3Byb2Nl
c3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViSWNvbkRhdGFi
YXNlOjpHZXRMb2FkRGVjaXNpb25Gb3JJY29uVVJMKGljb25VUkwsIGlkKSwgMCk7CiB9CiAKIHZv
aWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnJlY2VpdmVkSWNvbkxvYWREZWNpc2lvbihpbnQgZGVj
aXNpb24sIHVpbnQ2NF90IGNhbGxiYWNrSUQpCiB7Ci0gICAgUmVmUHRyPFdlYkNvcmU6Okljb25M
b2FkRGVjaXNpb25DYWxsYmFjaz4gY2FsbGJhY2sgPSBtX2ljb25Mb2FkRGVjaXNpb25DYWxsYmFj
a3MudGFrZShjYWxsYmFja0lEKTsKLSAgICBpZiAoY2FsbGJhY2spCisgICAgaWYgKGF1dG8gY2Fs
bGJhY2sgPSBtX2ljb25Mb2FkRGVjaXNpb25DYWxsYmFja3MudGFrZShjYWxsYmFja0lEKSkKICAg
ICAgICAgY2FsbGJhY2stPnBlcmZvcm1DYWxsYmFjayhzdGF0aWNfY2FzdDxXZWJDb3JlOjpJY29u
TG9hZERlY2lzaW9uPihkZWNpc2lvbikpOwogfQogCi12b2lkIFdlYkljb25EYXRhYmFzZVByb3h5
OjppY29uRGF0YUZvckljb25VUkwoY29uc3QgU3RyaW5nJiAvKmljb25VUkwqLywgUGFzc1JlZlB0
cjxXZWJDb3JlOjpJY29uRGF0YUNhbGxiYWNrPikKK3ZvaWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6
Omljb25EYXRhRm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpJY29uRGF0YUNhbGxi
YWNrJikKIHsKIH0KIAogdm9pZCBXZWJJY29uRGF0YWJhc2VQcm94eTo6c2V0SWNvblVSTEZvclBh
Z2VVUkwoY29uc3QgU3RyaW5nJiBpY29uVVJMLCBjb25zdCBTdHJpbmcmIHBhZ2VVUkwpCiB7Ci0g
ICAgbV9wcm9jZXNzLT5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpX
ZWJJY29uRGF0YWJhc2U6OlNldEljb25VUkxGb3JQYWdlVVJMKGljb25VUkwsIHBhZ2VVUkwpLCAw
KTsKKyAgICBtX3Byb2Nlc3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdl
czo6V2ViSWNvbkRhdGFiYXNlOjpTZXRJY29uVVJMRm9yUGFnZVVSTChpY29uVVJMLCBwYWdlVVJM
KSwgMCk7CiB9CiAKLXZvaWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnNldEljb25EYXRhRm9ySWNv
blVSTChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaWNvbkRhdGEsIGNvbnN0IFN0cmluZyYgaWNv
blVSTCkKK3ZvaWQgV2ViSWNvbkRhdGFiYXNlUHJveHk6OnNldEljb25EYXRhRm9ySWNvblVSTChT
aGFyZWRCdWZmZXIqIGljb25EYXRhLCBjb25zdCBTdHJpbmcmIGljb25VUkwpCiB7Ci0gICAgSVBD
OjpEYXRhUmVmZXJlbmNlIGRhdGEocmVpbnRlcnByZXRfY2FzdDxjb25zdCB1aW50OF90Kj4oaWNv
bkRhdGEgPyBpY29uRGF0YS0+ZGF0YSgpIDogMCksIGljb25EYXRhID8gaWNvbkRhdGEtPnNpemUo
KSA6IDApOwotICAgIG1fcHJvY2Vzcy0+cGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChN
ZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpTZXRJY29uRGF0YUZvckljb25VUkwoZGF0YSwgaWNv
blVSTCksIDApOworICAgIElQQzo6RGF0YVJlZmVyZW5jZSBkYXRhKHJlaW50ZXJwcmV0X2Nhc3Q8
Y29uc3QgdWludDhfdCo+KGljb25EYXRhID8gaWNvbkRhdGEtPmRhdGEoKSA6IG51bGxwdHIpLCBp
Y29uRGF0YSA/IGljb25EYXRhLT5zaXplKCkgOiAwKTsKKyAgICBtX3Byb2Nlc3MucGFyZW50UHJv
Y2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViSWNvbkRhdGFiYXNlOjpTZXRJY29u
RGF0YUZvckljb25VUkwoZGF0YSwgaWNvblVSTCksIDApOwogfQogCiB2b2lkIFdlYkljb25EYXRh
YmFzZVByb3h5Ojp1cmxJbXBvcnRGaW5pc2hlZCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5oIGIvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9JY29uRGF0YWJhc2UvV2ViSWNvbkRhdGFiYXNlUHJveHkuaApp
bmRleCA2MmEwNmMzZjk0ZjdkN2UwOTc2MzViNTJiNzhjNDMzOGViM2NhOGJkLi5iZGY4ZDRjZjYz
YWJlOWNlYTNkMmFjMTk4MWU5MDZlYjY2MWY1YTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL0ljb25EYXRhYmFzZS9XZWJJY29uRGF0YWJhc2VQcm94eS5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSWNvbkRhdGFiYXNlL1dlYkljb25EYXRhYmFzZVByb3h5
LmgKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
ICAqLwogCi0jaWZuZGVmIFdlYkljb25EYXRhYmFzZVByb3h5X2gKLSNkZWZpbmUgV2ViSWNvbkRh
dGFiYXNlUHJveHlfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJBUElPYmplY3QuaCIKICNp
bmNsdWRlICJNZXNzYWdlUmVjZWl2ZXIuaCIKQEAgLTM3LDQzICszNiw0MSBAQCBuYW1lc3BhY2Ug
V2ViS2l0IHsKIAogY2xhc3MgV2ViUHJvY2VzczsKIAotY2xhc3MgV2ViSWNvbkRhdGFiYXNlUHJv
eHkgOiBwdWJsaWMgV2ViQ29yZTo6SWNvbkRhdGFiYXNlQmFzZSwgcHJpdmF0ZSBJUEM6Ok1lc3Nh
Z2VSZWNlaXZlciB7CitjbGFzcyBXZWJJY29uRGF0YWJhc2VQcm94eSBmaW5hbCA6IHB1YmxpYyBX
ZWJDb3JlOjpJY29uRGF0YWJhc2VCYXNlLCBwcml2YXRlIElQQzo6TWVzc2FnZVJlY2VpdmVyIHsK
IHB1YmxpYzoKLSAgICBleHBsaWNpdCBXZWJJY29uRGF0YWJhc2VQcm94eShXZWJQcm9jZXNzKik7
CisgICAgZXhwbGljaXQgV2ViSWNvbkRhdGFiYXNlUHJveHkoV2ViUHJvY2VzcyYpOwogICAgIHZp
cnR1YWwgfldlYkljb25EYXRhYmFzZVByb3h5KCk7CiAKLSAgICBib29sIGlzRW5hYmxlZCgpIGNv
bnN0IG92ZXJyaWRlOwotICAgIHZvaWQgc2V0RW5hYmxlZChib29sKSBvdmVycmlkZTsKKyAgICB2
b2lkIHNldEVuYWJsZWQoYm9vbCkgZmluYWw7CiAKLSAgICB2b2lkIHJldGFpbkljb25Gb3JQYWdl
VVJMKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVsZWFzZUljb25Gb3JQYWdl
VVJMKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAgIHZvaWQgc2V0SWNvblVSTEZvclBhZ2VV
UkwoY29uc3QgU3RyaW5nJiwgY29uc3QgU3RyaW5nJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRJ
Y29uRGF0YUZvckljb25VUkwoUGFzc1JlZlB0cjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+LCBjb25z
dCBTdHJpbmcmKSBvdmVycmlkZTsKK3ByaXZhdGU6CisgICAgYm9vbCBpc0VuYWJsZWQoKSBjb25z
dCBmaW5hbDsKKworICAgIHZvaWQgcmV0YWluSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikg
ZmluYWw7CisgICAgdm9pZCByZWxlYXNlSWNvbkZvclBhZ2VVUkwoY29uc3QgU3RyaW5nJikgZmlu
YWw7CisgICAgdm9pZCBzZXRJY29uVVJMRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmLCBjb25zdCBT
dHJpbmcmKSBmaW5hbDsKKyAgICB2b2lkIHNldEljb25EYXRhRm9ySWNvblVSTChXZWJDb3JlOjpT
aGFyZWRCdWZmZXIqLCBjb25zdCBTdHJpbmcmKSBmaW5hbDsKIAotICAgIFN0cmluZyBzeW5jaHJv
bm91c0ljb25VUkxGb3JQYWdlVVJMKGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotICAgIGJvb2wg
c3luY2hyb25vdXNJY29uRGF0YUtub3duRm9ySWNvblVSTChjb25zdCBTdHJpbmcmKSBvdmVycmlk
ZTsKLSAgICBXZWJDb3JlOjpJY29uTG9hZERlY2lzaW9uIHN5bmNocm9ub3VzTG9hZERlY2lzaW9u
Rm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIG92ZXJy
aWRlOwotICAgIFdlYkNvcmU6OkltYWdlKiBzeW5jaHJvbm91c0ljb25Gb3JQYWdlVVJMKGNvbnN0
IFN0cmluZyYsIGNvbnN0IFdlYkNvcmU6OkludFNpemUmKSBvdmVycmlkZTsKKyAgICBTdHJpbmcg
c3luY2hyb25vdXNJY29uVVJMRm9yUGFnZVVSTChjb25zdCBTdHJpbmcmKSBmaW5hbDsKKyAgICBi
b29sIHN5bmNocm9ub3VzSWNvbkRhdGFLbm93bkZvckljb25VUkwoY29uc3QgU3RyaW5nJikgZmlu
YWw7CisgICAgV2ViQ29yZTo6SWNvbkxvYWREZWNpc2lvbiBzeW5jaHJvbm91c0xvYWREZWNpc2lv
bkZvckljb25VUkwoY29uc3QgU3RyaW5nJiwgV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBmaW5h
bDsKKyAgICBXZWJDb3JlOjpJbWFnZSogc3luY2hyb25vdXNJY29uRm9yUGFnZVVSTChjb25zdCBT
dHJpbmcmLCBjb25zdCBXZWJDb3JlOjpJbnRTaXplJikgZmluYWw7CiAgICAgCi0gICAgLy8gQXN5
bmNocm9ub3VzIGNhbGxzIHdlIHNob3VsZCB1c2UgdG8gcmVwbGFjZSB0aGUgYWJvdmUgd2hlbiBz
dXBwb3J0ZWQuCi0gICAgYm9vbCBzdXBwb3J0c0FzeW5jaHJvbm91c01vZGUoKSBvdmVycmlkZTsK
LSAgICB2b2lkIGxvYWREZWNpc2lvbkZvckljb25VUkwoY29uc3QgU3RyaW5nJiwgUGFzc1JlZlB0
cjxXZWJDb3JlOjpJY29uTG9hZERlY2lzaW9uQ2FsbGJhY2s+KSBvdmVycmlkZTsKKyAgICBib29s
IHN1cHBvcnRzQXN5bmNocm9ub3VzTW9kZSgpIGZpbmFsOworICAgIHZvaWQgbG9hZERlY2lzaW9u
Rm9ySWNvblVSTChjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpJY29uTG9hZERlY2lzaW9uQ2FsbGJh
Y2smKSBmaW5hbDsKICAgICB2b2lkIHJlY2VpdmVkSWNvbkxvYWREZWNpc2lvbihpbnQgZGVjaXNp
b24sIHVpbnQ2NF90IGNhbGxiYWNrSUQpOwotICAgIHZvaWQgaWNvbkRhdGFGb3JJY29uVVJMKGNv
bnN0IFN0cmluZyYsIFBhc3NSZWZQdHI8V2ViQ29yZTo6SWNvbkRhdGFDYWxsYmFjaz4pIG92ZXJy
aWRlOworICAgIHZvaWQgaWNvbkRhdGFGb3JJY29uVVJMKGNvbnN0IFN0cmluZyYsIFdlYkNvcmU6
Okljb25EYXRhQ2FsbGJhY2smKSBmaW5hbDsKIAotcHJpdmF0ZToKICAgICAvLyBJUEM6Ok1lc3Nh
Z2VSZWNlaXZlcgotICAgIHZvaWQgZGlkUmVjZWl2ZU1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiwg
SVBDOjpEZWNvZGVyJikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRSZWNlaXZlTWVzc2FnZShJUEM6
OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXImKSBmaW5hbDsKICAgICAKICAgICAvLyBDYWxsYmFj
a3MgZnJvbSB0aGUgVUlQcm9jZXNzCiAgICAgdm9pZCB1cmxJbXBvcnRGaW5pc2hlZCgpOwogCi0g
ICAgYm9vbCBtX2lzRW5hYmxlZDsKLSAgICBXZWJQcm9jZXNzKiBtX3Byb2Nlc3M7CisgICAgYm9v
bCBtX2lzRW5hYmxlZCB7IGZhbHNlIH07CisgICAgV2ViUHJvY2VzcyYgbV9wcm9jZXNzOwogICAg
IAogICAgIEhhc2hNYXA8dWludDY0X3QsIFJlZlB0cjxXZWJDb3JlOjpJY29uTG9hZERlY2lzaW9u
Q2FsbGJhY2s+PiBtX2ljb25Mb2FkRGVjaXNpb25DYWxsYmFja3M7CiB9OwogCiB9IC8vIG5hbWVz
cGFjZSBXZWJLaXQKLQotI2VuZGlmIC8vIFdlYkljb25EYXRhYmFzZVByb3h5X2gKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5k
bGVOYXZpZ2F0aW9uQWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0
ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uLmNwcAppbmRleCAxOTYzYTFh
MDI2NTUzOTEwYzJlZGM2YTY0N2EzOWRhOTllMmI4MTIxLi4zNTY5ZmQ4NzViZTg2Yzk1ODZmMGVl
N2IyNTAwMTNjOTdjM2M1M2RlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbi5jcHAKKysrIGIv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZU5h
dmlnYXRpb25BY3Rpb24uY3BwCkBAIC0xMDIsNyArMTAyLDcgQEAgUmVmPEluamVjdGVkQnVuZGxl
TmF2aWdhdGlvbkFjdGlvbj4gSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uOjpjcmVhdGUo
V2ViRnIKICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBJbmplY3RlZEJ1bmRsZU5hdmlnYXRpb25B
Y3Rpb24oZnJhbWUsIGFjdGlvbiwgZm9ybVN0YXRlKSk7CiB9CiAKLUluamVjdGVkQnVuZGxlTmF2
aWdhdGlvbkFjdGlvbjo6SW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uKFdlYkZyYW1lKiBm
cmFtZSwgY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgbmF2aWdhdGlvbkFjdGlvbiwgUGFzc1JlZlB0
cjxGb3JtU3RhdGU+IHBycEZvcm1TdGF0ZSkKK0luamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlv
bjo6SW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uKFdlYkZyYW1lKiBmcmFtZSwgY29uc3Qg
TmF2aWdhdGlvbkFjdGlvbiYgbmF2aWdhdGlvbkFjdGlvbiwgUGFzc1JlZlB0cjxGb3JtU3RhdGU+
IGZvcm1TdGF0ZSkKICAgICA6IG1fbmF2aWdhdGlvblR5cGUobmF2aWdhdGlvbkFjdGlvbi50eXBl
KCkpCiAgICAgLCBtX21vZGlmaWVycyhtb2RpZmllcnNGb3JOYXZpZ2F0aW9uQWN0aW9uKG5hdmln
YXRpb25BY3Rpb24pKQogICAgICwgbV9tb3VzZUJ1dHRvbihXZWJNb3VzZUV2ZW50OjpOb0J1dHRv
bikKQEAgLTExNiwxMSArMTE2LDggQEAgSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uOjpJ
bmplY3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rpb24oV2ViRnJhbWUqIGZyYW1lLAogICAgICAgICBt
X3N5bnRoZXRpY0NsaWNrVHlwZSA9IHN5bnRoZXRpY0NsaWNrVHlwZUZvck5hdmlnYXRpb25BY3Rp
b24obmF2aWdhdGlvbkFjdGlvbik7CiAgICAgfQogCi0gICAgUmVmUHRyPEZvcm1TdGF0ZT4gZm9y
bVN0YXRlID0gcHJwRm9ybVN0YXRlOwotICAgIGlmIChmb3JtU3RhdGUpIHsKLSAgICAgICAgQVNT
RVJUKGZvcm1TdGF0ZS0+Zm9ybSgpKTsKLSAgICAgICAgbV9mb3JtRWxlbWVudCAgID0gSW5qZWN0
ZWRCdW5kbGVOb2RlSGFuZGxlOjpnZXRPckNyZWF0ZShmb3JtU3RhdGUtPmZvcm0oKSk7Ci0gICAg
fQorICAgIGlmIChmb3JtU3RhdGUpCisgICAgICAgIG1fZm9ybUVsZW1lbnQgPSBJbmplY3RlZEJ1
bmRsZU5vZGVIYW5kbGU6OmdldE9yQ3JlYXRlKGZvcm1TdGF0ZS0+Zm9ybSgpKTsKIH0KIAogfSAv
LyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmNwcAppbmRleCAxOWQ0MmI4MGQ3Y2Q0YjY1NDBh
NGNiZDQ0MmFjMTllMGIxZGQ3NzA5Li40YmRkYTJlMmRmYTAzYjJhYTc0OTgxZDgyYjNhMmNkYmUx
YjBhNDRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL05ldHdvcmsvV2Vi
TG9hZGVyU3RyYXRlZ3kuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvTmV0d29y
ay9XZWJMb2FkZXJTdHJhdGVneS5jcHAKQEAgLTE2NCw3ICsxNjQsNyBAQCB2b2lkIFdlYkxvYWRl
clN0cmF0ZWd5OjpzY2hlZHVsZUxvYWQoUmVzb3VyY2VMb2FkZXImIHJlc291cmNlTG9hZGVyLCBD
YWNoZWRSZXNvdQogICAgIH0KICNlbmRpZgogCi0gICAgaWYgKHJlc291cmNlTG9hZGVyLmRvY3Vt
ZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZFJlc291cmNlKHJl
c291cmNlTG9hZGVyLCByZXNvdXJjZUxvYWRlci5yZXF1ZXN0KCksIHJlc291cmNlTG9hZGVyLnJl
cXVlc3QoKS51cmwoKSkpIHsKKyAgICBpZiAocmVzb3VyY2VMb2FkZXIuZG9jdW1lbnRMb2FkZXIo
KS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS5tYXliZUxvYWRSZXNvdXJjZShyZXNvdXJjZUxvYWRl
ciwgcmVzb3VyY2VMb2FkZXIucmVxdWVzdCgpLCByZXNvdXJjZUxvYWRlci5yZXF1ZXN0KCkudXJs
KCkpKSB7CiAgICAgICAgIExPRyhOZXR3b3JrU2NoZWR1bGluZywgIihXZWJQcm9jZXNzKSBXZWJM
b2FkZXJTdHJhdGVneTo6c2NoZWR1bGVMb2FkLCB1cmwgJyVzJyB3aWxsIGJlIGxvYWRlZCBmcm9t
IGFwcGxpY2F0aW9uIGNhY2hlLiIsIHJlc291cmNlTG9hZGVyLnVybCgpLnN0cmluZygpLnV0Zjgo
KS5kYXRhKCkpOwogICAgICAgICBSRUxFQVNFX0xPR19JRl9BTExPV0VEKHJlc291cmNlTG9hZGVy
LCAic2NoZWR1bGVMb2FkOiBVUkwgd2lsbCBiZSBsb2FkZWQgZnJvbSBhcHBsaWNhdGlvbiBjYWNo
ZSAoZnJhbWUgPSAlcCwgcmVzb3VyY2VJRCA9ICUiIFBSSXU2NCAiKSIsIHJlc291cmNlTG9hZGVy
LmZyYW1lKCksIGlkZW50aWZpZXIpOwogICAgICAgICBtX3dlYlJlc291cmNlTG9hZGVycy5zZXQo
aWRlbnRpZmllciwgV2ViUmVzb3VyY2VMb2FkZXI6OmNyZWF0ZShyZXNvdXJjZUxvYWRlciwgdHJh
Y2tpbmdQYXJhbWV0ZXJzKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9OZXR3b3JrL1dlYlJlc291cmNlTG9hZGVyLmNwcAppbmRleCA5NzRkZjUzNjAyYjgwOTY4M2Jm
ZTkzM2U5M2YxMTA3MDcwYTc4MGIwLi5lYzJlMWY1ODU0NWQwMDMxMjk1N2VlMjU4NGE1ZjM0YWM5
NTg4NWI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL05ldHdvcmsvV2Vi
UmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvTmV0d29y
ay9XZWJSZXNvdXJjZUxvYWRlci5jcHAKQEAgLTg3LDcgKzg3LDcgQEAgdm9pZCBXZWJSZXNvdXJj
ZUxvYWRlcjo6d2lsbFNlbmRSZXF1ZXN0KFJlc291cmNlUmVxdWVzdCYmIHByb3Bvc2VkUmVxdWVz
dCwgUmVzb3UKIAogICAgIFJlZlB0cjxXZWJSZXNvdXJjZUxvYWRlcj4gcHJvdGVjdGVkVGhpcyh0
aGlzKTsKIAotICAgIGlmIChtX2NvcmVMb2FkZXItPmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0
aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZEZhbGxiYWNrRm9yUmVkaXJlY3QobV9jb3JlTG9hZGVy
LmdldCgpLCBwcm9wb3NlZFJlcXVlc3QsIHJlZGlyZWN0UmVzcG9uc2UpKQorICAgIGlmIChtX2Nv
cmVMb2FkZXItPmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCkubWF5YmVM
b2FkRmFsbGJhY2tGb3JSZWRpcmVjdChtX2NvcmVMb2FkZXIuZ2V0KCksIHByb3Bvc2VkUmVxdWVz
dCwgcmVkaXJlY3RSZXNwb25zZSkpCiAgICAgICAgIHJldHVybjsKIAogICAgIG1fY29yZUxvYWRl
ci0+d2lsbFNlbmRSZXF1ZXN0KFdURk1vdmUocHJvcG9zZWRSZXF1ZXN0KSwgcmVkaXJlY3RSZXNw
b25zZSwgW3Byb3RlY3RlZFRoaXNdKFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QpIHsKQEAgLTEx
MCw3ICsxMTAsNyBAQCB2b2lkIFdlYlJlc291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2Uo
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIGJvbwogCiAgICAgUmVmPFdlYlJlc291
cmNlTG9hZGVyPiBwcm90ZWN0KCp0aGlzKTsKIAotICAgIGlmIChtX2NvcmVMb2FkZXItPmRvY3Vt
ZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCktPm1heWJlTG9hZEZhbGxiYWNrRm9y
UmVzcG9uc2UobV9jb3JlTG9hZGVyLmdldCgpLCByZXNwb25zZSkpCisgICAgaWYgKG1fY29yZUxv
YWRlci0+ZG9jdW1lbnRMb2FkZXIoKS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS5tYXliZUxvYWRG
YWxsYmFja0ZvclJlc3BvbnNlKG1fY29yZUxvYWRlci5nZXQoKSwgcmVzcG9uc2UpKQogICAgICAg
ICByZXR1cm47CiAKICAgICBtX2NvcmVMb2FkZXItPmRpZFJlY2VpdmVSZXNwb25zZShyZXNwb25z
ZSk7CkBAIC0xNTYsNyArMTU2LDcgQEAgdm9pZCBXZWJSZXNvdXJjZUxvYWRlcjo6ZGlkRmFpbFJl
c291cmNlTG9hZChjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKICAgICBMT0coTmV0d29yaywg
IihXZWJQcm9jZXNzKSBXZWJSZXNvdXJjZUxvYWRlcjo6ZGlkRmFpbFJlc291cmNlTG9hZCBmb3Ig
JyVzJyIsIG1fY29yZUxvYWRlci0+dXJsKCkuc3RyaW5nKCkubGF0aW4xKCkuZGF0YSgpKTsKICAg
ICBSRUxFQVNFX0xPR19JRl9BTExPV0VEKCJkaWRGYWlsUmVzb3VyY2VMb2FkOiAocGFnZUlEID0g
JSIgUFJJdTY0ICIsIGZyYW1lSUQgPSAlIiBQUkl1NjQgIiwgcmVzb3VyY2VJRCA9ICUiIFBSSXU2
NCAiKSIsIG1fdHJhY2tpbmdQYXJhbWV0ZXJzLnBhZ2VJRCwgbV90cmFja2luZ1BhcmFtZXRlcnMu
ZnJhbWVJRCwgbV90cmFja2luZ1BhcmFtZXRlcnMucmVzb3VyY2VJRCk7CiAKLSAgICBpZiAobV9j
b3JlTG9hZGVyLT5kb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5tYXli
ZUxvYWRGYWxsYmFja0ZvckVycm9yKG1fY29yZUxvYWRlci5nZXQoKSwgZXJyb3IpKQorICAgIGlm
IChtX2NvcmVMb2FkZXItPmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2FjaGVIb3N0KCku
bWF5YmVMb2FkRmFsbGJhY2tGb3JFcnJvcihtX2NvcmVMb2FkZXIuZ2V0KCksIGVycm9yKSkKICAg
ICAgICAgcmV0dXJuOwogICAgIG1fY29yZUxvYWRlci0+ZGlkRmFpbChlcnJvcik7CiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5jcHAg
Yi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5jcHAKaW5kZXgg
YWMxZGFhYmFkMDYzYTQ5NjI2YjM3ZTA0MDJlOWViZjU0OTJkM2IxYi4uNzg4NjI2ODU5YTY4NjUx
NDY1YmMxNzFmYTFhYjBiMmI1MmFmODczMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3LmNwcApAQCAtMTg1LDIzICsxODUsMTkgQEAgc3RhdGlj
IFN0cmluZyBidWlsZEhUVFBIZWFkZXJzKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNl
LCBsb25nIGxvbmcmIGV4cGUKICAgICBpZiAoIXJlc3BvbnNlLmlzSFRUUCgpKQogICAgICAgICBy
ZXR1cm4gU3RyaW5nKCk7CiAKLSAgICBTdHJpbmdCdWlsZGVyIHN0cmluZ0J1aWxkZXI7Ci0gICAg
Ci0gICAgU3RyaW5nIHN0YXR1c0xpbmUgPSBTdHJpbmc6OmZvcm1hdCgiSFRUUCAlZCAiLCByZXNw
b25zZS5odHRwU3RhdHVzQ29kZSgpKTsKLSAgICBzdHJpbmdCdWlsZGVyLmFwcGVuZChzdGF0dXNM
aW5lKTsKLSAgICBzdHJpbmdCdWlsZGVyLmFwcGVuZChyZXNwb25zZS5odHRwU3RhdHVzVGV4dCgp
KTsKLSAgICBzdHJpbmdCdWlsZGVyLmFwcGVuZCgnXG4nKTsKLSAgICAKLSAgICBIVFRQSGVhZGVy
TWFwOjpjb25zdF9pdGVyYXRvciBlbmQgPSByZXNwb25zZS5odHRwSGVhZGVyRmllbGRzKCkuZW5k
KCk7Ci0gICAgZm9yIChIVFRQSGVhZGVyTWFwOjpjb25zdF9pdGVyYXRvciBpdCA9IHJlc3BvbnNl
Lmh0dHBIZWFkZXJGaWVsZHMoKS5iZWdpbigpOyBpdCAhPSBlbmQ7ICsraXQpIHsKLSAgICAgICAg
c3RyaW5nQnVpbGRlci5hcHBlbmQoaXQtPmtleSk7Ci0gICAgICAgIHN0cmluZ0J1aWxkZXIuYXBw
ZW5kTGl0ZXJhbCgiOiAiKTsKLSAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmQoaXQtPnZhbHVl
KTsKLSAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmQoJ1xuJyk7CisgICAgU3RyaW5nQnVpbGRl
ciBoZWFkZXI7CisgICAgaGVhZGVyLmFwcGVuZExpdGVyYWwoIkhUVFAgIik7CisgICAgaGVhZGVy
LmFwcGVuZE51bWJlcihyZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpKTsKKyAgICBoZWFkZXIuYXBw
ZW5kKCcgJyk7CisgICAgaGVhZGVyLmFwcGVuZChyZXNwb25zZS5odHRwU3RhdHVzVGV4dCgpKTsK
KyAgICBoZWFkZXIuYXBwZW5kKCdcbicpOworICAgIGZvciAoYXV0byYgZmllbGQgOiByZXNwb25z
ZS5odHRwSGVhZGVyRmllbGRzKCkpIHsKKyAgICAgICAgaGVhZGVyLmFwcGVuZChmaWVsZC5rZXkp
OworICAgICAgICBoZWFkZXIuYXBwZW5kTGl0ZXJhbCgiOiAiKTsKKyAgICAgICAgaGVhZGVyLmFw
cGVuZChmaWVsZC52YWx1ZSk7CisgICAgICAgIGhlYWRlci5hcHBlbmQoJ1xuJyk7CiAgICAgfQot
ICAgIAotICAgIFN0cmluZyBoZWFkZXJzID0gc3RyaW5nQnVpbGRlci50b1N0cmluZygpOwotICAg
IAorCiAgICAgLy8gSWYgdGhlIGNvbnRlbnQgaXMgZW5jb2RlZCAobW9zdCBsaWtlbHkgY29tcHJl
c3NlZCksIHRoZW4gZG9uJ3Qgc2VuZCBpdHMgbGVuZ3RoIHRvIHRoZSBwbHVnaW4sCiAgICAgLy8g
d2hpY2ggaXMgb25seSBpbnRlcmVzdGVkIGluIHRoZSBkZWNvZGVkIGxlbmd0aCwgbm90IHlldCBr
bm93biBhdCB0aGUgbW9tZW50LgogICAgIC8vIDxyZGFyOi8vcHJvYmxlbS80NDcwNTk5PiB0cmFj
a3MgYSByZXF1ZXN0IGZvciAtW05TVVJMUmVzcG9uc2UgZXhwZWN0ZWRDb250ZW50TGVuZ3RoXSB0
byBpbmNvcnBvcmF0ZSB0aGlzIGxvZ2ljLgpAQCAtMjA5LDcgKzIwNSw3IEBAIHN0YXRpYyBTdHJp
bmcgYnVpbGRIVFRQSGVhZGVycyhjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgbG9u
ZyBsb25nJiBleHBlCiAgICAgaWYgKCFjb250ZW50RW5jb2RpbmcuaXNOdWxsKCkgJiYgY29udGVu
dEVuY29kaW5nICE9ICJpZGVudGl0eSIpCiAgICAgICAgIGV4cGVjdGVkQ29udGVudExlbmd0aCA9
IC0xOwogCi0gICAgcmV0dXJuIGhlYWRlcnM7CisgICAgcmV0dXJuIGhlYWRlci50b1N0cmluZygp
OwogfQogCiBzdGF0aWMgdWludDMyX3QgbGFzdE1vZGlmaWVkRGF0ZU1TKGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmIHJlc3BvbnNlKQpAQCAtMjkyLDM3ICsyODgsMTkgQEAgc3RhdGljIGlubGluZSBX
ZWJQYWdlKiB3ZWJQYWdlKEhUTUxQbHVnSW5FbGVtZW50KiBwbHVnaW5FbGVtZW50KQogICAgIHJl
dHVybiB3ZWJGcmFtZS0+cGFnZSgpOwogfQogCi1SZWY8UGx1Z2luVmlldz4gUGx1Z2luVmlldzo6
Y3JlYXRlKFBhc3NSZWZQdHI8SFRNTFBsdWdJbkVsZW1lbnQ+IHBsdWdpbkVsZW1lbnQsIFBhc3NS
ZWZQdHI8UGx1Z2luPiBwbHVnaW4sIGNvbnN0IFBsdWdpbjo6UGFyYW1ldGVycyYgcGFyYW1ldGVy
cykKK1JlZjxQbHVnaW5WaWV3PiBQbHVnaW5WaWV3OjpjcmVhdGUoSFRNTFBsdWdJbkVsZW1lbnQm
IHBsdWdpbkVsZW1lbnQsIFJlZjxQbHVnaW4+JiYgcGx1Z2luLCBjb25zdCBQbHVnaW46OlBhcmFt
ZXRlcnMmIHBhcmFtZXRlcnMpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgUGx1Z2luVmll
dyhwbHVnaW5FbGVtZW50LCBwbHVnaW4sIHBhcmFtZXRlcnMpKTsKKyAgICByZXR1cm4gYWRvcHRS
ZWYoKm5ldyBQbHVnaW5WaWV3KHBsdWdpbkVsZW1lbnQsIFdURk1vdmUocGx1Z2luKSwgcGFyYW1l
dGVycykpOwogfQogCi1QbHVnaW5WaWV3OjpQbHVnaW5WaWV3KFBhc3NSZWZQdHI8SFRNTFBsdWdJ
bkVsZW1lbnQ+IHBsdWdpbkVsZW1lbnQsIFBhc3NSZWZQdHI8UGx1Z2luPiBwbHVnaW4sIGNvbnN0
IFBsdWdpbjo6UGFyYW1ldGVycyYgcGFyYW1ldGVycykKK1BsdWdpblZpZXc6OlBsdWdpblZpZXco
SFRNTFBsdWdJbkVsZW1lbnQmIHBsdWdpbkVsZW1lbnQsIFJlZjxQbHVnaW4+JiYgcGx1Z2luLCBj
b25zdCBQbHVnaW46OlBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpCiAgICAgOiBQbHVnaW5WaWV3QmFz
ZSgwKQotICAgICwgbV9wbHVnaW5FbGVtZW50KHBsdWdpbkVsZW1lbnQpCi0gICAgLCBtX3BsdWdp
bihwbHVnaW4pCisgICAgLCBtX3BsdWdpbkVsZW1lbnQoJnBsdWdpbkVsZW1lbnQpCisgICAgLCBt
X3BsdWdpbihXVEZNb3ZlKHBsdWdpbikpCiAgICAgLCBtX3dlYlBhZ2Uod2ViUGFnZShtX3BsdWdp
bkVsZW1lbnQuZ2V0KCkpKQogICAgICwgbV9wYXJhbWV0ZXJzKHBhcmFtZXRlcnMpCi0gICAgLCBt
X2lzSW5pdGlhbGl6ZWQoZmFsc2UpCi0gICAgLCBtX2lzV2FpdGluZ0ZvclN5bmNocm9ub3VzSW5p
dGlhbGl6YXRpb24oZmFsc2UpCi0gICAgLCBtX2lzV2FpdGluZ1VudGlsTWVkaWFDYW5TdGFydChm
YWxzZSkKLSAgICAsIG1faXNCZWluZ0Rlc3Ryb3llZChmYWxzZSkKLSAgICAsIG1fcGx1Z2luUHJv
Y2Vzc0hhc0NyYXNoZWQoZmFsc2UpCi0jaWYgRU5BQkxFKFBSSU1BUllfU05BUFNIT1RURURfUExV
R0lOX0hFVVJJU1RJQykKLSAgICAsIG1fZGlkUGx1Z0luU3RhcnRPZmZTY3JlZW4oZmFsc2UpCi0j
ZW5kaWYKICAgICAsIG1fcGVuZGluZ1VSTFJlcXVlc3RzVGltZXIoUnVuTG9vcDo6bWFpbigpLCB0
aGlzLCAmUGx1Z2luVmlldzo6cGVuZGluZ1VSTFJlcXVlc3RzVGltZXJGaXJlZCkKLSNpZiBFTkFC
TEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKLSAgICAsIG1fbnBSdW50aW1lT2JqZWN0TWFwKHRoaXMp
Ci0jZW5kaWYKLSAgICAsIG1fbWFudWFsU3RyZWFtU3RhdGUoU3RyZWFtU3RhdGVJbml0aWFsKQog
ICAgICwgbV9wbHVnaW5TbmFwc2hvdFRpbWVyKCp0aGlzLCAmUGx1Z2luVmlldzo6cGx1Z2luU25h
cHNob3RUaW1lckZpcmVkLCBwbHVnaW5TbmFwc2hvdFRpbWVyRGVsYXkpCi0jaWYgRU5BQkxFKFBS
SU1BUllfU05BUFNIT1RURURfUExVR0lOX0hFVVJJU1RJQykgfHwgUExBVEZPUk0oQ09DT0EpCi0g
ICAgLCBtX2NvdW50U25hcHNob3RSZXRyaWVzKDApCi0jZW5kaWYKLSAgICAsIG1fZGlkUmVjZWl2
ZVVzZXJJbnRlcmFjdGlvbihmYWxzZSkKLSAgICAsIG1fcGFnZVNjYWxlRmFjdG9yKDEpCi0gICAg
LCBtX3BsdWdpbklzUGxheWluZ0F1ZGlvKGZhbHNlKQogewogICAgIG1fd2ViUGFnZS0+YWRkUGx1
Z2luVmlldyh0aGlzKTsKIH0KQEAgLTM3NCw3ICszNTIsNyBAQCB2b2lkIFBsdWdpblZpZXc6OmRl
c3Ryb3lQbHVnaW5BbmRSZXNldCgpCiAgICAgY2FuY2VsQWxsU3RyZWFtcygpOwogfQogCi12b2lk
IFBsdWdpblZpZXc6OnJlY3JlYXRlQW5kSW5pdGlhbGl6ZShQYXNzUmVmUHRyPFBsdWdpbj4gcGx1
Z2luKQordm9pZCBQbHVnaW5WaWV3OjpyZWNyZWF0ZUFuZEluaXRpYWxpemUoUmVmPFBsdWdpbj4m
JiBwbHVnaW4pCiB7CiAgICAgaWYgKG1fcGx1Z2luKSB7CiAgICAgICAgIGlmIChtX3BsdWdpblNu
YXBzaG90VGltZXIuaXNBY3RpdmUoKSkKQEAgLTM4MiwxMyArMzYwLDEyIEBAIHZvaWQgUGx1Z2lu
Vmlldzo6cmVjcmVhdGVBbmRJbml0aWFsaXplKFBhc3NSZWZQdHI8UGx1Z2luPiBwbHVnaW4pCiAg
ICAgICAgIGRlc3Ryb3lQbHVnaW5BbmRSZXNldCgpOwogICAgIH0KIAotICAgIC8vIFJlc2V0IG1l
bWJlciB2YXJpYWJsZXMgdG8gaW5pdGlhbCB2YWx1ZXMuCi0gICAgbV9wbHVnaW4gPSBwbHVnaW47
CisgICAgbV9wbHVnaW4gPSBXVEZNb3ZlKHBsdWdpbik7CiAgICAgbV9pc0luaXRpYWxpemVkID0g
ZmFsc2U7CiAgICAgbV9pc1dhaXRpbmdGb3JTeW5jaHJvbm91c0luaXRpYWxpemF0aW9uID0gZmFs
c2U7CiAgICAgbV9pc1dhaXRpbmdVbnRpbE1lZGlhQ2FuU3RhcnQgPSBmYWxzZTsKICAgICBtX2lz
QmVpbmdEZXN0cm95ZWQgPSBmYWxzZTsKLSAgICBtX21hbnVhbFN0cmVhbVN0YXRlID0gU3RyZWFt
U3RhdGVJbml0aWFsOworICAgIG1fbWFudWFsU3RyZWFtU3RhdGUgPSBNYW51YWxTdHJlYW1TdGF0
ZTo6SW5pdGlhbDsKICAgICBtX3RyYW5zaWVudFBhaW50aW5nU25hcHNob3QgPSBudWxscHRyOwog
CiAgICAgaW5pdGlhbGl6ZVBsdWdpbigpOwpAQCAtNDIxLDggKzM5OCw4IEBAIHZvaWQgUGx1Z2lu
Vmlldzo6bWFudWFsTG9hZERpZFJlY2VpdmVSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnNl
JiByZXNwb25zZSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKCFtX2lzSW5pdGlhbGl6ZWQp
IHsKLSAgICAgICAgQVNTRVJUKG1fbWFudWFsU3RyZWFtU3RhdGUgPT0gU3RyZWFtU3RhdGVJbml0
aWFsKTsKLSAgICAgICAgbV9tYW51YWxTdHJlYW1TdGF0ZSA9IFN0cmVhbVN0YXRlSGFzUmVjZWl2
ZWRSZXNwb25zZTsKKyAgICAgICAgQVNTRVJUKG1fbWFudWFsU3RyZWFtU3RhdGUgPT0gTWFudWFs
U3RyZWFtU3RhdGU6OkluaXRpYWwpOworICAgICAgICBtX21hbnVhbFN0cmVhbVN0YXRlID0gTWFu
dWFsU3RyZWFtU3RhdGU6Okhhc1JlY2VpdmVkUmVzcG9uc2U7CiAgICAgICAgIG1fbWFudWFsU3Ry
ZWFtUmVzcG9uc2UgPSByZXNwb25zZTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTQ0OCw3
ICs0MjUsNyBAQCB2b2lkIFBsdWdpblZpZXc6Om1hbnVhbExvYWREaWRSZWNlaXZlRGF0YShjb25z
dCBjaGFyKiBieXRlcywgaW50IGxlbmd0aCkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKCFt
X2lzSW5pdGlhbGl6ZWQpIHsKLSAgICAgICAgQVNTRVJUKG1fbWFudWFsU3RyZWFtU3RhdGUgPT0g
U3RyZWFtU3RhdGVIYXNSZWNlaXZlZFJlc3BvbnNlKTsKKyAgICAgICAgQVNTRVJUKG1fbWFudWFs
U3RyZWFtU3RhdGUgPT0gTWFudWFsU3RyZWFtU3RhdGU6Okhhc1JlY2VpdmVkUmVzcG9uc2UpOwog
ICAgICAgICBpZiAoIW1fbWFudWFsU3RyZWFtRGF0YSkKICAgICAgICAgICAgIG1fbWFudWFsU3Ry
ZWFtRGF0YSA9IFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKCk7CiAKQEAgLTQ2Niw4ICs0NDMsOCBAQCB2
b2lkIFBsdWdpblZpZXc6Om1hbnVhbExvYWREaWRGaW5pc2hMb2FkaW5nKCkKICAgICAgICAgcmV0
dXJuOwogCiAgICAgaWYgKCFtX2lzSW5pdGlhbGl6ZWQpIHsKLSAgICAgICAgQVNTRVJUKG1fbWFu
dWFsU3RyZWFtU3RhdGUgPT0gU3RyZWFtU3RhdGVIYXNSZWNlaXZlZFJlc3BvbnNlKTsKLSAgICAg
ICAgbV9tYW51YWxTdHJlYW1TdGF0ZSA9IFN0cmVhbVN0YXRlRmluaXNoZWQ7CisgICAgICAgIEFT
U0VSVChtX21hbnVhbFN0cmVhbVN0YXRlID09IE1hbnVhbFN0cmVhbVN0YXRlOjpIYXNSZWNlaXZl
ZFJlc3BvbnNlKTsKKyAgICAgICAgbV9tYW51YWxTdHJlYW1TdGF0ZSA9IE1hbnVhbFN0cmVhbVN0
YXRlOjpGaW5pc2hlZDsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIApAQCAtNDgxLDcgKzQ1OCw3
IEBAIHZvaWQgUGx1Z2luVmlldzo6bWFudWFsTG9hZERpZEZhaWwoY29uc3QgUmVzb3VyY2VFcnJv
ciYgZXJyb3IpCiAgICAgICAgIHJldHVybjsKIAogICAgIGlmICghbV9pc0luaXRpYWxpemVkKSB7
Ci0gICAgICAgIG1fbWFudWFsU3RyZWFtU3RhdGUgPSBTdHJlYW1TdGF0ZUZpbmlzaGVkOworICAg
ICAgICBtX21hbnVhbFN0cmVhbVN0YXRlID0gTWFudWFsU3RyZWFtU3RhdGU6OkZpbmlzaGVkOwog
ICAgICAgICBtX21hbnVhbFN0cmVhbUVycm9yID0gZXJyb3I7CiAgICAgICAgIG1fbWFudWFsU3Ry
ZWFtRGF0YSA9IG51bGxwdHI7CiAgICAgICAgIHJldHVybjsKQEAgLTEwMDcsNyArOTg0LDcgQEAg
dm9pZCBQbHVnaW5WaWV3Ojp3aWxsRGV0YXRjaFJlbmRlcmVyKCkKICAgICBtX3BsdWdpbi0+d2ls
bERldGF0Y2hSZW5kZXJlcigpOwogfQogCi1QYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gUGx1Z2lu
Vmlldzo6bGl2ZVJlc291cmNlRGF0YSgpIGNvbnN0CitSZWZQdHI8U2hhcmVkQnVmZmVyPiBQbHVn
aW5WaWV3OjpsaXZlUmVzb3VyY2VEYXRhKCkgY29uc3QKIHsKICAgICBpZiAoIW1faXNJbml0aWFs
aXplZCB8fCAhbV9wbHVnaW4pCiAgICAgICAgIHJldHVybiAwOwpAQCAtMTMwOCwxMiArMTI4NSwx
MiBAQCB2b2lkIFBsdWdpblZpZXc6OmNhbmNlbEFsbFN0cmVhbXMoKQogCiB2b2lkIFBsdWdpblZp
ZXc6OnJlZGVsaXZlck1hbnVhbFN0cmVhbSgpCiB7Ci0gICAgaWYgKG1fbWFudWFsU3RyZWFtU3Rh
dGUgPT0gU3RyZWFtU3RhdGVJbml0aWFsKSB7CisgICAgaWYgKG1fbWFudWFsU3RyZWFtU3RhdGUg
PT0gTWFudWFsU3RyZWFtU3RhdGU6OkluaXRpYWwpIHsKICAgICAgICAgLy8gTm90aGluZyB0byBk
by4KICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIGlmIChtX21hbnVhbFN0cmVhbVN0YXRl
ID09IFN0cmVhbVN0YXRlRmFpbGVkKSB7CisgICAgaWYgKG1fbWFudWFsU3RyZWFtU3RhdGUgPT0g
TWFudWFsU3RyZWFtU3RhdGU6OkZhaWxlZCkgewogICAgICAgICBtYW51YWxMb2FkRGlkRmFpbCht
X21hbnVhbFN0cmVhbUVycm9yKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTEzMzQsNyAr
MTMxMSw3IEBAIHZvaWQgUGx1Z2luVmlldzo6cmVkZWxpdmVyTWFudWFsU3RyZWFtKCkKICAgICAg
ICAgbV9tYW51YWxTdHJlYW1EYXRhID0gbnVsbHB0cjsKICAgICB9CiAKLSAgICBpZiAobV9tYW51
YWxTdHJlYW1TdGF0ZSA9PSBTdHJlYW1TdGF0ZUZpbmlzaGVkKQorICAgIGlmIChtX21hbnVhbFN0
cmVhbVN0YXRlID09IE1hbnVhbFN0cmVhbVN0YXRlOjpGaW5pc2hlZCkKICAgICAgICAgbWFudWFs
TG9hZERpZEZpbmlzaExvYWRpbmcoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvUGx1Z2lucy9QbHVnaW5WaWV3LmgKaW5kZXggMDA3NTgzYzQzZDAzOGI5ZmFjYzJlZGI3M2Qz
YTEyNWI0YmNkYTQ4My4uMzhiZTYyMWI4MWFmNjlhNjM3MzczNjJhY2IyMDE3ZWQzNzgwNzU4NSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcu
aAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5oCkBA
IC02NCw5ICs2NCw5IEBAIGNsYXNzIFdlYkV2ZW50OwogCiBjbGFzcyBQbHVnaW5WaWV3IDogcHVi
bGljIFdlYkNvcmU6OlBsdWdpblZpZXdCYXNlLCBwdWJsaWMgUGx1Z2luQ29udHJvbGxlciwgcHJp
dmF0ZSBXZWJDb3JlOjpNZWRpYUNhblN0YXJ0TGlzdGVuZXIsIHByaXZhdGUgV2ViRnJhbWU6Okxv
YWRMaXN0ZW5lciwgcHJpdmF0ZSBXZWJDb3JlOjpNZWRpYVByb2R1Y2VyIHsKIHB1YmxpYzoKLSAg
ICBzdGF0aWMgUmVmPFBsdWdpblZpZXc+IGNyZWF0ZShQYXNzUmVmUHRyPFdlYkNvcmU6OkhUTUxQ
bHVnSW5FbGVtZW50PiwgUGFzc1JlZlB0cjxQbHVnaW4+LCBjb25zdCBQbHVnaW46OlBhcmFtZXRl
cnMmKTsKKyAgICBzdGF0aWMgUmVmPFBsdWdpblZpZXc+IGNyZWF0ZShXZWJDb3JlOjpIVE1MUGx1
Z0luRWxlbWVudCYsIFJlZjxQbHVnaW4+JiYsIGNvbnN0IFBsdWdpbjo6UGFyYW1ldGVycyYpOwog
Ci0gICAgdm9pZCByZWNyZWF0ZUFuZEluaXRpYWxpemUoUGFzc1JlZlB0cjxQbHVnaW4+KTsKKyAg
ICB2b2lkIHJlY3JlYXRlQW5kSW5pdGlhbGl6ZShSZWY8UGx1Z2luPiYmKTsKIAogICAgIFdlYkNv
cmU6OkZyYW1lKiBmcmFtZSgpIGNvbnN0OwogCkBAIC0xMTIsMTMgKzExMiwxMyBAQCBwdWJsaWM6
CiAKICAgICBib29sIHNob3VsZEFsbG93U2NyaXB0aW5nKCk7CiAKLSAgICBQYXNzUmVmUHRyPFdl
YkNvcmU6OlNoYXJlZEJ1ZmZlcj4gbGl2ZVJlc291cmNlRGF0YSgpIGNvbnN0OworICAgIFJlZlB0
cjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+IGxpdmVSZXNvdXJjZURhdGEoKSBjb25zdDsKICAgICBi
b29sIHBlcmZvcm1EaWN0aW9uYXJ5TG9va3VwQXRMb2NhdGlvbihjb25zdCBXZWJDb3JlOjpGbG9h
dFBvaW50Jik7CiAgICAgU3RyaW5nIGdldFNlbGVjdGlvbkZvcldvcmRBdFBvaW50KGNvbnN0IFdl
YkNvcmU6OkZsb2F0UG9pbnQmKSBjb25zdDsKICAgICBib29sIGV4aXN0aW5nU2VsZWN0aW9uQ29u
dGFpbnNQb2ludChjb25zdCBXZWJDb3JlOjpGbG9hdFBvaW50JikgY29uc3Q7CiAKIHByaXZhdGU6
Ci0gICAgUGx1Z2luVmlldyhQYXNzUmVmUHRyPFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50Piwg
UGFzc1JlZlB0cjxQbHVnaW4+LCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmIHBhcmFtZXRlcnMp
OworICAgIFBsdWdpblZpZXcoV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQmLCBSZWY8UGx1Z2lu
PiYmLCBjb25zdCBQbHVnaW46OlBhcmFtZXRlcnMmKTsKICAgICB2aXJ0dWFsIH5QbHVnaW5WaWV3
KCk7CiAKICAgICB2b2lkIGluaXRpYWxpemVQbHVnaW4oKTsKQEAgLTI0NCwxNCArMjQ0LDE0IEBA
IHByaXZhdGU6CiAgICAgV2ViUGFnZSogbV93ZWJQYWdlOwogICAgIFBsdWdpbjo6UGFyYW1ldGVy
cyBtX3BhcmFtZXRlcnM7CiAKLSAgICBib29sIG1faXNJbml0aWFsaXplZDsKLSAgICBib29sIG1f
aXNXYWl0aW5nRm9yU3luY2hyb25vdXNJbml0aWFsaXphdGlvbjsKLSAgICBib29sIG1faXNXYWl0
aW5nVW50aWxNZWRpYUNhblN0YXJ0OwotICAgIGJvb2wgbV9pc0JlaW5nRGVzdHJveWVkOwotICAg
IGJvb2wgbV9wbHVnaW5Qcm9jZXNzSGFzQ3Jhc2hlZDsKKyAgICBib29sIG1faXNJbml0aWFsaXpl
ZCB7IGZhbHNlIH07CisgICAgYm9vbCBtX2lzV2FpdGluZ0ZvclN5bmNocm9ub3VzSW5pdGlhbGl6
YXRpb24geyBmYWxzZSB9OworICAgIGJvb2wgbV9pc1dhaXRpbmdVbnRpbE1lZGlhQ2FuU3RhcnQg
eyBmYWxzZSB9OworICAgIGJvb2wgbV9pc0JlaW5nRGVzdHJveWVkIHsgZmFsc2UgfTsKKyAgICBi
b29sIG1fcGx1Z2luUHJvY2Vzc0hhc0NyYXNoZWQgeyBmYWxzZSB9OwogCiAjaWYgRU5BQkxFKFBS
SU1BUllfU05BUFNIT1RURURfUExVR0lOX0hFVVJJU1RJQykKLSAgICBib29sIG1fZGlkUGx1Z0lu
U3RhcnRPZmZTY3JlZW47CisgICAgYm9vbCBtX2RpZFBsdWdJblN0YXJ0T2ZmU2NyZWVuIHsgZmFs
c2UgfTsKICNlbmRpZgogCiAgICAgLy8gUGVuZGluZyBVUkxSZXF1ZXN0cyB0aGF0IHRoZSBwbHVn
LWluIGhhcyBtYWRlLgpAQCAtMjY3LDE4ICsyNjcsMTMgQEAgcHJpdmF0ZToKIAogI2lmIEVOQUJM
RShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgIC8vIEEgbWFwIG9mIGFsbCByZWxhdGVkIE5QT2Jq
ZWN0cyBmb3IgdGhpcyBwbHVnLWluIHZpZXcuCi0gICAgTlBSdW50aW1lT2JqZWN0TWFwIG1fbnBS
dW50aW1lT2JqZWN0TWFwOworICAgIE5QUnVudGltZU9iamVjdE1hcCBtX25wUnVudGltZU9iamVj
dE1hcCB7IHRoaXMgfTsKICNlbmRpZgogCiAgICAgLy8gVGhlIG1hbnVhbCBzdHJlYW0gc3RhdGUu
IFRoaXMgaXMgdXNlZCBzbyB3ZSBjYW4gZGVsaXZlciBhIG1hbnVhbCBzdHJlYW0gdG8gYSBwbHVn
LWluCiAgICAgLy8gd2hlbiBpdCBpcyBpbml0aWFsaXplZC4KLSAgICBlbnVtIE1hbnVhbFN0cmVh
bVN0YXRlIHsKLSAgICAgICAgU3RyZWFtU3RhdGVJbml0aWFsLAotICAgICAgICBTdHJlYW1TdGF0
ZUhhc1JlY2VpdmVkUmVzcG9uc2UsCi0gICAgICAgIFN0cmVhbVN0YXRlRmluaXNoZWQsCi0gICAg
ICAgIFN0cmVhbVN0YXRlRmFpbGVkCi0gICAgfTsKLSAgICBNYW51YWxTdHJlYW1TdGF0ZSBtX21h
bnVhbFN0cmVhbVN0YXRlOworICAgIGVudW0gY2xhc3MgTWFudWFsU3RyZWFtU3RhdGUgeyBJbml0
aWFsLCBIYXNSZWNlaXZlZFJlc3BvbnNlLCBGaW5pc2hlZCwgRmFpbGVkIH07CisgICAgTWFudWFs
U3RyZWFtU3RhdGUgbV9tYW51YWxTdHJlYW1TdGF0ZSB7IE1hbnVhbFN0cmVhbVN0YXRlOjpJbml0
aWFsIH07CiAKICAgICBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIG1fbWFudWFsU3RyZWFtUmVz
cG9uc2U7CiAgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBtX21hbnVhbFN0cmVhbUVycm9yOwpA
QCAtMjg5LDEzICsyODQsMTMgQEAgcHJpdmF0ZToKICAgICAvLyBUaGlzIHRpbWVyIGlzIHVzZWQg
d2hlbiBwbHVnaW4gc25hcHNob3R0aW5nIGlzIGVuYWJsZWQsIHRvIGNhcHR1cmUgYSBwbHVnaW4g
cGxhY2Vob2xkZXIuCiAgICAgV2ViQ29yZTo6RGVmZXJyYWJsZU9uZVNob3RUaW1lciBtX3BsdWdp
blNuYXBzaG90VGltZXI7CiAjaWYgRU5BQkxFKFBSSU1BUllfU05BUFNIT1RURURfUExVR0lOX0hF
VVJJU1RJQykgfHwgUExBVEZPUk0oQ09DT0EpCi0gICAgdW5zaWduZWQgbV9jb3VudFNuYXBzaG90
UmV0cmllczsKKyAgICB1bnNpZ25lZCBtX2NvdW50U25hcHNob3RSZXRyaWVzIHsgMCB9OwogI2Vu
ZGlmCi0gICAgYm9vbCBtX2RpZFJlY2VpdmVVc2VySW50ZXJhY3Rpb247CisgICAgYm9vbCBtX2Rp
ZFJlY2VpdmVVc2VySW50ZXJhY3Rpb24geyBmYWxzZSB9OwogCi0gICAgZG91YmxlIG1fcGFnZVNj
YWxlRmFjdG9yOworICAgIGRvdWJsZSBtX3BhZ2VTY2FsZUZhY3RvciB7IDEgfTsKIAotICAgIGJv
b2wgbV9wbHVnaW5Jc1BsYXlpbmdBdWRpbzsKKyAgICBib29sIG1fcGx1Z2luSXNQbGF5aW5nQXVk
aW8geyBmYWxzZSB9OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5j
cHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNs
aWVudC5jcHAKaW5kZXggY2NmMzExM2FkNDlhNTA1NGIzYmJiNjg4OGRjNGRiNGViOTFhNTdmZC4u
OGRmYzBhMWFkNmRiMTY2MmI3YzI0OGI3Mjc1ODIyYzdhMzczZDJiMiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21l
Q2xpZW50LmNwcApAQCAtMTAzLDIwICsxMDMsMjAgQEAgc3RhdGljIGRvdWJsZSBhcmVhKFdlYkZy
YW1lKiBmcmFtZSkKIH0KIAogCi1zdGF0aWMgV2ViRnJhbWUqIGZpbmRMYXJnZXN0RnJhbWVJbkZy
YW1lU2V0KFdlYlBhZ2UqIHBhZ2UpCitzdGF0aWMgV2ViRnJhbWUqIGZpbmRMYXJnZXN0RnJhbWVJ
bkZyYW1lU2V0KFdlYlBhZ2UmIHBhZ2UpCiB7CiAgICAgLy8gQXBwcm94aW1hdGUgd2hhdCBhIHVz
ZXIgY291bGQgY29uc2lkZXIgYSBkZWZhdWx0IHRhcmdldCBmcmFtZSBmb3IgYXBwbGljYXRpb24g
bWVudSBvcGVyYXRpb25zLgogCi0gICAgV2ViRnJhbWUqIG1haW5GcmFtZSA9IHBhZ2UtPm1haW5X
ZWJGcmFtZSgpOworICAgIFdlYkZyYW1lKiBtYWluRnJhbWUgPSBwYWdlLm1haW5XZWJGcmFtZSgp
OwogICAgIGlmICghbWFpbkZyYW1lIHx8ICFtYWluRnJhbWUtPmlzRnJhbWVTZXQoKSkKLSAgICAg
ICAgcmV0dXJuIDA7CisgICAgICAgIHJldHVybiBudWxscHRyOwogCi0gICAgV2ViRnJhbWUqIGxh
cmdlc3RTb0ZhciA9IDA7CisgICAgV2ViRnJhbWUqIGxhcmdlc3RTb0ZhciA9IG51bGxwdHI7CiAK
ICAgICBSZWY8QVBJOjpBcnJheT4gZnJhbWVDaGlsZHJlbiA9IG1haW5GcmFtZS0+Y2hpbGRGcmFt
ZXMoKTsKICAgICBzaXplX3QgY291bnQgPSBmcmFtZUNoaWxkcmVuLT5zaXplKCk7CiAgICAgZm9y
IChzaXplX3QgaSA9IDA7IGkgPCBjb3VudDsgKytpKSB7Ci0gICAgICAgIFdlYkZyYW1lKiBjaGls
ZEZyYW1lID0gZnJhbWVDaGlsZHJlbi0+YXQ8V2ViRnJhbWU+KGkpOworICAgICAgICBhdXRvKiBj
aGlsZEZyYW1lID0gZnJhbWVDaGlsZHJlbi0+YXQ8V2ViRnJhbWU+KGkpOwogICAgICAgICBpZiAo
IWxhcmdlc3RTb0ZhciB8fCBhcmVhKGNoaWxkRnJhbWUpID4gYXJlYShsYXJnZXN0U29GYXIpKQog
ICAgICAgICAgICAgbGFyZ2VzdFNvRmFyID0gY2hpbGRGcmFtZTsKICAgICB9CkBAIC0xMjQsNiAr
MTI0LDE1IEBAIHN0YXRpYyBXZWJGcmFtZSogZmluZExhcmdlc3RGcmFtZUluRnJhbWVTZXQoV2Vi
UGFnZSogcGFnZSkKICAgICByZXR1cm4gbGFyZ2VzdFNvRmFyOwogfQogCitXZWJDaHJvbWVDbGll
bnQ6OldlYkNocm9tZUNsaWVudChXZWJQYWdlJiBwYWdlKQorICAgIDogbV9wYWdlKHBhZ2UpCit7
Cit9CisKK2lubGluZSBXZWJDaHJvbWVDbGllbnQ6On5XZWJDaHJvbWVDbGllbnQoKQoreworfQor
CiB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y2hyb21lRGVzdHJveWVkKCkKIHsKICAgICBkZWxldGUg
dGhpczsKQEAgLTEzMSw3ICsxNDAsNyBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y2hyb21lRGVz
dHJveWVkKCkKIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNldFdpbmRvd1JlY3QoY29uc3QgRmxv
YXRSZWN0JiB3aW5kb3dGcmFtZSkKIHsKLSAgICBtX3BhZ2UtPnNlbmRTZXRXaW5kb3dGcmFtZSh3
aW5kb3dGcmFtZSk7CisgICAgbV9wYWdlLnNlbmRTZXRXaW5kb3dGcmFtZSh3aW5kb3dGcmFtZSk7
CiB9CiAKIEZsb2F0UmVjdCBXZWJDaHJvbWVDbGllbnQ6OndpbmRvd1JlY3QoKQpAQCAtMTQwLDEz
ICsxNDksMTMgQEAgRmxvYXRSZWN0IFdlYkNocm9tZUNsaWVudDo6d2luZG93UmVjdCgpCiAgICAg
cmV0dXJuIEZsb2F0UmVjdCgpOwogI2Vsc2UKICNpZiBQTEFURk9STShNQUMpCi0gICAgaWYgKG1f
cGFnZS0+aGFzQ2FjaGVkV2luZG93RnJhbWUoKSkKLSAgICAgICAgcmV0dXJuIG1fcGFnZS0+d2lu
ZG93RnJhbWVJblVuZmxpcHBlZFNjcmVlbkNvb3JkaW5hdGVzKCk7CisgICAgaWYgKG1fcGFnZS5o
YXNDYWNoZWRXaW5kb3dGcmFtZSgpKQorICAgICAgICByZXR1cm4gbV9wYWdlLndpbmRvd0ZyYW1l
SW5VbmZsaXBwZWRTY3JlZW5Db29yZGluYXRlcygpOwogI2VuZGlmCiAKICAgICBGbG9hdFJlY3Qg
bmV3V2luZG93RnJhbWU7CiAKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVu
dFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6Okdl
dFdpbmRvd0ZyYW1lKCksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFdpbmRvd0ZyYW1lOjpS
ZXBseShuZXdXaW5kb3dGcmFtZSksIG1fcGFnZS0+cGFnZUlEKCkpKQorICAgIGlmICghV2ViUHJv
Y2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0V2luZG93RnJhbWUoKSwgTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6R2V0V2luZG93RnJhbWU6OlJlcGx5KG5ld1dpbmRvd0ZyYW1lKSwgbV9wYWdlLnBhZ2VJ
RCgpKSkKICAgICAgICAgcmV0dXJuIEZsb2F0UmVjdCgpOwogCiAgICAgcmV0dXJuIG5ld1dpbmRv
d0ZyYW1lOwpAQCAtMTU1LDMzICsxNjQsMzMgQEAgRmxvYXRSZWN0IFdlYkNocm9tZUNsaWVudDo6
d2luZG93UmVjdCgpCiAKIEZsb2F0UmVjdCBXZWJDaHJvbWVDbGllbnQ6OnBhZ2VSZWN0KCkKIHsK
LSAgICByZXR1cm4gRmxvYXRSZWN0KEZsb2F0UG9pbnQoKSwgbV9wYWdlLT5zaXplKCkpOworICAg
IHJldHVybiBGbG9hdFJlY3QoRmxvYXRQb2ludCgpLCBtX3BhZ2Uuc2l6ZSgpKTsKIH0KIAogdm9p
ZCBXZWJDaHJvbWVDbGllbnQ6OmZvY3VzKCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6U2V0Rm9jdXModHJ1ZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6OlNldEZvY3VzKHRydWUpKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGll
bnQ6OnVuZm9jdXMoKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjpTZXRGb2N1cyhmYWxzZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OlNldEZvY3VzKGZhbHNlKSk7CiB9CiAKICNpZiBQTEFURk9STShDT0NPQSkKIHZvaWQgV2Vi
Q2hyb21lQ2xpZW50OjplbGVtZW50RGlkRm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9kZSogbm9kZSkK
IHsKLSAgICBtX3BhZ2UtPmVsZW1lbnREaWRGb2N1cyhjb25zdF9jYXN0PFdlYkNvcmU6Ok5vZGUq
Pihub2RlKSk7CisgICAgbV9wYWdlLmVsZW1lbnREaWRGb2N1cyhjb25zdF9jYXN0PFdlYkNvcmU6
Ok5vZGUqPihub2RlKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjplbGVtZW50RGlkQmx1
cihjb25zdCBXZWJDb3JlOjpOb2RlKiBub2RlKQogewotICAgIG1fcGFnZS0+ZWxlbWVudERpZEJs
dXIoY29uc3RfY2FzdDxXZWJDb3JlOjpOb2RlKj4obm9kZSkpOworICAgIG1fcGFnZS5lbGVtZW50
RGlkQmx1cihjb25zdF9jYXN0PFdlYkNvcmU6Ok5vZGUqPihub2RlKSk7CiB9CiAKIHZvaWQgV2Vi
Q2hyb21lQ2xpZW50OjptYWtlRmlyc3RSZXNwb25kZXIoKQogewotICAgIG1fcGFnZS0+c2VuZChN
ZXNzYWdlczo6V2ViUGFnZVByb3h5OjpNYWtlRmlyc3RSZXNwb25kZXIoKSk7CisgICAgbV9wYWdl
LnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6TWFrZUZpcnN0UmVzcG9uZGVyKCkpOwogfSAg
ICAKICNlbmRpZiAgICAKIApAQCAtMTkzLDcgKzIwMiw3IEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50
OjpjYW5UYWtlRm9jdXMoRm9jdXNEaXJlY3Rpb24pCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojp0
YWtlRm9jdXMoRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9uKQogewotICAgIG1fcGFnZS0+c2VuZChN
ZXNzYWdlczo6V2ViUGFnZVByb3h5OjpUYWtlRm9jdXMoZGlyZWN0aW9uKSk7CisgICAgbV9wYWdl
LnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6VGFrZUZvY3VzKGRpcmVjdGlvbikpOwogfQog
CiB2b2lkIFdlYkNocm9tZUNsaWVudDo6Zm9jdXNlZEVsZW1lbnRDaGFuZ2VkKEVsZW1lbnQqIGVs
ZW1lbnQpCkBAIC0yMDcsMTQgKzIxNiwxNCBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6Zm9jdXNl
ZEVsZW1lbnRDaGFuZ2VkKEVsZW1lbnQqIGVsZW1lbnQpCiAKICAgICBXZWJGcmFtZSogd2ViRnJh
bWUgPSBXZWJGcmFtZTo6ZnJvbUNvcmVGcmFtZSgqZWxlbWVudC0+ZG9jdW1lbnQoKS5mcmFtZSgp
KTsKICAgICBBU1NFUlQod2ViRnJhbWUpOwotICAgIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVGb3Jt
Q2xpZW50KCkuZGlkRm9jdXNUZXh0RmllbGQobV9wYWdlLCAmaW5wdXRFbGVtZW50LCB3ZWJGcmFt
ZSk7CisgICAgbV9wYWdlLmluamVjdGVkQnVuZGxlRm9ybUNsaWVudCgpLmRpZEZvY3VzVGV4dEZp
ZWxkKCZtX3BhZ2UsICZpbnB1dEVsZW1lbnQsIHdlYkZyYW1lKTsKIH0KIAogdm9pZCBXZWJDaHJv
bWVDbGllbnQ6OmZvY3VzZWRGcmFtZUNoYW5nZWQoRnJhbWUqIGZyYW1lKQogewogICAgIFdlYkZy
YW1lKiB3ZWJGcmFtZSA9IGZyYW1lID8gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZyYW1lKSA6
IG51bGxwdHI7CiAKLSAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29u
bmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZvY3VzZWRGcmFtZUNoYW5n
ZWQod2ViRnJhbWUgPyB3ZWJGcmFtZS0+ZnJhbWVJRCgpIDogMCksIG1fcGFnZS0+cGFnZUlEKCkp
OworICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCkt
PnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6Rm9jdXNlZEZyYW1lQ2hhbmdlZCh3ZWJGcmFt
ZSA/IHdlYkZyYW1lLT5mcmFtZUlEKCkgOiAwKSwgbV9wYWdlLnBhZ2VJRCgpKTsKIH0KIAogUGFn
ZSogV2ViQ2hyb21lQ2xpZW50OjpjcmVhdGVXaW5kb3coRnJhbWUqIGZyYW1lLCBjb25zdCBGcmFt
ZUxvYWRSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBXaW5kb3dGZWF0dXJlcyYgd2luZG93RmVhdHVy
ZXMsIGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIG5hdmlnYXRpb25BY3Rpb24pCkBAIC0yMzQsMTMg
KzI0MywxMyBAQCBQYWdlKiBXZWJDaHJvbWVDbGllbnQ6OmNyZWF0ZVdpbmRvdyhGcmFtZSogZnJh
bWUsIGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmIHJlcXVlcwogICAgIG5hdmlnYXRpb25BY3Rpb25E
YXRhLm1vdXNlQnV0dG9uID0gSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uOjptb3VzZUJ1
dHRvbkZvck5hdmlnYXRpb25BY3Rpb24obmF2aWdhdGlvbkFjdGlvbik7CiAgICAgbmF2aWdhdGlv
bkFjdGlvbkRhdGEuc3ludGhldGljQ2xpY2tUeXBlID0gSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9u
QWN0aW9uOjpzeW50aGV0aWNDbGlja1R5cGVGb3JOYXZpZ2F0aW9uQWN0aW9uKG5hdmlnYXRpb25B
Y3Rpb24pOwogICAgIG5hdmlnYXRpb25BY3Rpb25EYXRhLnVzZXJHZXN0dXJlVG9rZW5JZGVudGlm
aWVyID0gd2ViUHJvY2Vzcy51c2VyR2VzdHVyZVRva2VuSWRlbnRpZmllcihuYXZpZ2F0aW9uQWN0
aW9uLnVzZXJHZXN0dXJlVG9rZW4oKSk7Ci0gICAgbmF2aWdhdGlvbkFjdGlvbkRhdGEuY2FuSGFu
ZGxlUmVxdWVzdCA9IG1fcGFnZS0+Y2FuSGFuZGxlUmVxdWVzdChyZXF1ZXN0LnJlc291cmNlUmVx
dWVzdCgpKTsKKyAgICBuYXZpZ2F0aW9uQWN0aW9uRGF0YS5jYW5IYW5kbGVSZXF1ZXN0ID0gbV9w
YWdlLmNhbkhhbmRsZVJlcXVlc3QocmVxdWVzdC5yZXNvdXJjZVJlcXVlc3QoKSk7CiAgICAgbmF2
aWdhdGlvbkFjdGlvbkRhdGEuc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSA9IG5hdmlnYXRp
b25BY3Rpb24uc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSgpOwogICAgIG5hdmlnYXRpb25B
Y3Rpb25EYXRhLmRvd25sb2FkQXR0cmlidXRlID0gbmF2aWdhdGlvbkFjdGlvbi5kb3dubG9hZEF0
dHJpYnV0ZSgpOwogCiAgICAgdWludDY0X3QgbmV3UGFnZUlEID0gMDsKICAgICBXZWJQYWdlQ3Jl
YXRpb25QYXJhbWV0ZXJzIHBhcmFtZXRlcnM7Ci0gICAgaWYgKCF3ZWJQcm9jZXNzLnBhcmVudFBy
b2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkNyZWF0
ZU5ld1BhZ2Uod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tRnJh
bWUoZnJhbWUpLCByZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLCB3aW5kb3dGZWF0dXJlcywgbmF2
aWdhdGlvbkFjdGlvbkRhdGEpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpDcmVhdGVOZXdQYWdl
OjpSZXBseShuZXdQYWdlSUQsIHBhcmFtZXRlcnMpLCBtX3BhZ2UtPnBhZ2VJRCgpKSkKKyAgICBp
ZiAoIXdlYlByb2Nlc3MucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2Fn
ZXM6OldlYlBhZ2VQcm94eTo6Q3JlYXRlTmV3UGFnZSh3ZWJGcmFtZS0+ZnJhbWVJRCgpLCBTZWN1
cml0eU9yaWdpbkRhdGE6OmZyb21GcmFtZShmcmFtZSksIHJlcXVlc3QucmVzb3VyY2VSZXF1ZXN0
KCksIHdpbmRvd0ZlYXR1cmVzLCBuYXZpZ2F0aW9uQWN0aW9uRGF0YSksIE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OkNyZWF0ZU5ld1BhZ2U6OlJlcGx5KG5ld1BhZ2VJRCwgcGFyYW1ldGVycyksIG1f
cGFnZS5wYWdlSUQoKSkpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCiAgICAgaWYgKCFuZXdQ
YWdlSUQpCkBAIC0yNTIsMzIgKzI2MSwzMiBAQCBQYWdlKiBXZWJDaHJvbWVDbGllbnQ6OmNyZWF0
ZVdpbmRvdyhGcmFtZSogZnJhbWUsIGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmIHJlcXVlcwogCiB2
b2lkIFdlYkNocm9tZUNsaWVudDo6c2hvdygpCiB7Ci0gICAgbV9wYWdlLT5zaG93KCk7CisgICAg
bV9wYWdlLnNob3coKTsKIH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OmNhblJ1bk1vZGFsKCkK
IHsKLSAgICByZXR1cm4gbV9wYWdlLT5jYW5SdW5Nb2RhbCgpOworICAgIHJldHVybiBtX3BhZ2Uu
Y2FuUnVuTW9kYWwoKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJ1bk1vZGFsKCkKIHsK
LSAgICBtX3BhZ2UtPnJ1bk1vZGFsKCk7CisgICAgbV9wYWdlLnJ1bk1vZGFsKCk7CiB9CiAKIHZv
aWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRUb29sYmFyc1Zpc2libGUoYm9vbCB0b29sYmFyc0FyZVZp
c2libGUpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldFRv
b2xiYXJzQXJlVmlzaWJsZSh0b29sYmFyc0FyZVZpc2libGUpKTsKKyAgICBtX3BhZ2Uuc2VuZChN
ZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRUb29sYmFyc0FyZVZpc2libGUodG9vbGJhcnNBcmVW
aXNpYmxlKSk7CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50Ojp0b29sYmFyc1Zpc2libGUoKQog
ewotICAgIEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VVSUNsaWVudDo6VUlFbGVtZW50VmlzaWJp
bGl0eSB0b29sYmFyc1Zpc2liaWxpdHkgPSBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQo
KS50b29sYmFyc0FyZVZpc2libGUobV9wYWdlKTsKKyAgICBBUEk6OkluamVjdGVkQnVuZGxlOjpQ
YWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHkgdG9vbGJhcnNWaXNpYmlsaXR5ID0gbV9w
YWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS50b29sYmFyc0FyZVZpc2libGUoJm1fcGFnZSk7
CiAgICAgaWYgKHRvb2xiYXJzVmlzaWJpbGl0eSAhPSBBUEk6OkluamVjdGVkQnVuZGxlOjpQYWdl
VUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHk6OlVua25vd24pCiAgICAgICAgIHJldHVybiB0
b29sYmFyc1Zpc2liaWxpdHkgPT0gQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpV
SUVsZW1lbnRWaXNpYmlsaXR5OjpWaXNpYmxlOwogICAgIAogICAgIGJvb2wgdG9vbGJhcnNBcmVW
aXNpYmxlID0gdHJ1ZTsKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFBy
b2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFRv
b2xiYXJzQXJlVmlzaWJsZSgpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRUb29sYmFyc0Fy
ZVZpc2libGU6OlJlcGx5KHRvb2xiYXJzQXJlVmlzaWJsZSksIG1fcGFnZS0+cGFnZUlEKCkpKQor
ICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24o
KS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0VG9vbGJhcnNBcmVWaXNpYmxl
KCksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFRvb2xiYXJzQXJlVmlzaWJsZTo6UmVwbHko
dG9vbGJhcnNBcmVWaXNpYmxlKSwgbV9wYWdlLnBhZ2VJRCgpKSkKICAgICAgICAgcmV0dXJuIHRy
dWU7CiAKICAgICByZXR1cm4gdG9vbGJhcnNBcmVWaXNpYmxlOwpAQCAtMjg1LDE3ICsyOTQsMTcg
QEAgYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnRvb2xiYXJzVmlzaWJsZSgpCiAKIHZvaWQgV2ViQ2hy
b21lQ2xpZW50OjpzZXRTdGF0dXNiYXJWaXNpYmxlKGJvb2wgc3RhdHVzQmFySXNWaXNpYmxlKQog
ewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRTdGF0dXNCYXJJ
c1Zpc2libGUoc3RhdHVzQmFySXNWaXNpYmxlKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6U2V0U3RhdHVzQmFySXNWaXNpYmxlKHN0YXR1c0JhcklzVmlzaWJsZSkp
OwogfQogCiBib29sIFdlYkNocm9tZUNsaWVudDo6c3RhdHVzYmFyVmlzaWJsZSgpCiB7Ci0gICAg
QVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5IHN0
YXR1c2JhclZpc2liaWxpdHkgPSBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5zdGF0
dXNCYXJJc1Zpc2libGUobV9wYWdlKTsKKyAgICBBUEk6OkluamVjdGVkQnVuZGxlOjpQYWdlVUlD
bGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHkgc3RhdHVzYmFyVmlzaWJpbGl0eSA9IG1fcGFnZS5p
bmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkuc3RhdHVzQmFySXNWaXNpYmxlKCZtX3BhZ2UpOwogICAg
IGlmIChzdGF0dXNiYXJWaXNpYmlsaXR5ICE9IEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VVSUNs
aWVudDo6VUlFbGVtZW50VmlzaWJpbGl0eTo6VW5rbm93bikKICAgICAgICAgcmV0dXJuIHN0YXR1
c2JhclZpc2liaWxpdHkgPT0gQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVs
ZW1lbnRWaXNpYmlsaXR5OjpWaXNpYmxlOwogCiAgICAgYm9vbCBzdGF0dXNCYXJJc1Zpc2libGUg
PSB0cnVlOwotICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nv
bm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0U3RhdHVzQmFy
SXNWaXNpYmxlKCksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFN0YXR1c0JhcklzVmlzaWJs
ZTo6UmVwbHkoc3RhdHVzQmFySXNWaXNpYmxlKSwgbV9wYWdlLT5wYWdlSUQoKSkpCisgICAgaWYg
KCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5k
U3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRTdGF0dXNCYXJJc1Zpc2libGUoKSwgTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0U3RhdHVzQmFySXNWaXNpYmxlOjpSZXBseShzdGF0dXNC
YXJJc1Zpc2libGUpLCBtX3BhZ2UucGFnZUlEKCkpKQogICAgICAgICByZXR1cm4gdHJ1ZTsKIAog
ICAgIHJldHVybiBzdGF0dXNCYXJJc1Zpc2libGU7CkBAIC0zMTQsMTcgKzMyMywxNyBAQCBib29s
IFdlYkNocm9tZUNsaWVudDo6c2Nyb2xsYmFyc1Zpc2libGUoKQogCiB2b2lkIFdlYkNocm9tZUNs
aWVudDo6c2V0TWVudWJhclZpc2libGUoYm9vbCBtZW51QmFyVmlzaWJsZSkKIHsKLSAgICBtX3Bh
Z2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0TWVudUJhcklzVmlzaWJsZShtZW51
QmFyVmlzaWJsZSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNl
dE1lbnVCYXJJc1Zpc2libGUobWVudUJhclZpc2libGUpKTsKIH0KIAogYm9vbCBXZWJDaHJvbWVD
bGllbnQ6Om1lbnViYXJWaXNpYmxlKCkKIHsKLSAgICBBUEk6OkluamVjdGVkQnVuZGxlOjpQYWdl
VUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHkgbWVudWJhclZpc2liaWxpdHkgPSBtX3BhZ2Ut
PmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5tZW51QmFySXNWaXNpYmxlKG1fcGFnZSk7CisgICAg
QVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5IG1l
bnViYXJWaXNpYmlsaXR5ID0gbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5tZW51QmFy
SXNWaXNpYmxlKCZtX3BhZ2UpOwogICAgIGlmIChtZW51YmFyVmlzaWJpbGl0eSAhPSBBUEk6Oklu
amVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHk6OlVua25vd24p
CiAgICAgICAgIHJldHVybiBtZW51YmFyVmlzaWJpbGl0eSA9PSBBUEk6OkluamVjdGVkQnVuZGxl
OjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHk6OlZpc2libGU7CiAgICAgCiAgICAg
Ym9vbCBtZW51QmFySXNWaXNpYmxlID0gdHJ1ZTsKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmds
ZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OkdldE1lbnVCYXJJc1Zpc2libGUoKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6
R2V0TWVudUJhcklzVmlzaWJsZTo6UmVwbHkobWVudUJhcklzVmlzaWJsZSksIG1fcGFnZS0+cGFn
ZUlEKCkpKQorICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nv
bm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0TWVudUJhcklz
VmlzaWJsZSgpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRNZW51QmFySXNWaXNpYmxlOjpS
ZXBseShtZW51QmFySXNWaXNpYmxlKSwgbV9wYWdlLnBhZ2VJRCgpKSkKICAgICAgICAgcmV0dXJu
IHRydWU7CiAKICAgICByZXR1cm4gbWVudUJhcklzVmlzaWJsZTsKQEAgLTMzMiwxOCArMzQxLDE4
IEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjptZW51YmFyVmlzaWJsZSgpCiAKIHZvaWQgV2ViQ2hy
b21lQ2xpZW50OjpzZXRSZXNpemFibGUoYm9vbCByZXNpemFibGUpCiB7Ci0gICAgbV9wYWdlLT5z
ZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldElzUmVzaXphYmxlKHJlc2l6YWJsZSkpOwor
ICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldElzUmVzaXphYmxlKHJl
c2l6YWJsZSkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6YWRkTWVzc2FnZVRvQ29uc29s
ZShNZXNzYWdlU291cmNlIHNvdXJjZSwgTWVzc2FnZUxldmVsIGxldmVsLCBjb25zdCBTdHJpbmcm
IG1lc3NhZ2UsIHVuc2lnbmVkIGxpbmVOdW1iZXIsIHVuc2lnbmVkIGNvbHVtbk51bWJlciwgY29u
c3QgU3RyaW5nJiBzb3VyY2VJRCkKIHsKICAgICAvLyBOb3RpZnkgdGhlIGJ1bmRsZSBjbGllbnQu
Ci0gICAgbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkud2lsbEFkZE1lc3NhZ2VUb0Nv
bnNvbGUobV9wYWdlLCBzb3VyY2UsIGxldmVsLCBtZXNzYWdlLCBsaW5lTnVtYmVyLCBjb2x1bW5O
dW1iZXIsIHNvdXJjZUlEKTsKKyAgICBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLndp
bGxBZGRNZXNzYWdlVG9Db25zb2xlKCZtX3BhZ2UsIHNvdXJjZSwgbGV2ZWwsIG1lc3NhZ2UsIGxp
bmVOdW1iZXIsIGNvbHVtbk51bWJlciwgc291cmNlSUQpOwogfQogCiBib29sIFdlYkNocm9tZUNs
aWVudDo6Y2FuUnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsKCkKIHsKLSAgICByZXR1cm4gbV9w
YWdlLT5jYW5SdW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoKTsKKyAgICByZXR1cm4gbV9wYWdl
LmNhblJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbCgpOwogfQogCiBib29sIFdlYkNocm9tZUNs
aWVudDo6cnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsKGNvbnN0IFN0cmluZyYgbWVzc2FnZSwg
RnJhbWUqIGZyYW1lKQpAQCAtMzU0LDcgKzM2Myw3IEBAIGJvb2wgV2ViQ2hyb21lQ2xpZW50Ojpy
dW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBGcmFtZSoK
IAogICAgIEhhbmdEZXRlY3Rpb25EaXNhYmxlciBoYW5nRGV0ZWN0aW9uRGlzYWJsZXI7CiAKLSAg
ICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCkt
PnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJ1bkJlZm9yZVVubG9hZENvbmZpcm1Q
YW5lbChtZXNzYWdlLCB3ZWJGcmFtZS0+ZnJhbWVJRCgpKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94
eTo6UnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsOjpSZXBseShzaG91bGRDbG9zZSksIG1fcGFn
ZS0+cGFnZUlEKCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246Oklu
Zm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKSkKKyAgICBpZiAoIVdlYlByb2Nlc3M6OnNp
bmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OlJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbChtZXNzYWdlLCB3ZWJGcmFt
ZS0+ZnJhbWVJRCgpKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuQmVmb3JlVW5sb2FkQ29u
ZmlybVBhbmVsOjpSZXBseShzaG91bGRDbG9zZSksIG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25kczo6
aW5maW5pdHkoKSwgSVBDOjpTZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2ls
bFN1c3BlbmQpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICByZXR1cm4gc2hvdWxkQ2xv
c2U7CkBAIC0zNjksMTQgKzM3OCwxNCBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y2xvc2VXaW5k
b3dTb29uKCkKICAgICAvLyBhIGNsb3NlIGV4ZWN1dGUgc3luY2hyb25vdXNseSBhcyBwYXJ0IG9m
IHdpbmRvdy5jbG9zZSwgYnV0IG90aGVyIHBhcnRzCiAgICAgLy8gbGF0ZXIgb24uCiAKLSAgICBt
X3BhZ2UtPmNvcmVQYWdlKCktPnNldEdyb3VwTmFtZShTdHJpbmcoKSk7CisgICAgbV9wYWdlLmNv
cmVQYWdlKCktPnNldEdyb3VwTmFtZShTdHJpbmcoKSk7CiAKLSAgICBpZiAoV2ViRnJhbWUqIGZy
YW1lID0gbV9wYWdlLT5tYWluV2ViRnJhbWUoKSkgeworICAgIGlmIChXZWJGcmFtZSogZnJhbWUg
PSBtX3BhZ2UubWFpbldlYkZyYW1lKCkpIHsKICAgICAgICAgaWYgKEZyYW1lKiBjb3JlRnJhbWUg
PSBmcmFtZS0+Y29yZUZyYW1lKCkpCiAgICAgICAgICAgICBjb3JlRnJhbWUtPmxvYWRlcigpLnN0
b3BGb3JVc2VyQ2FuY2VsKCk7CiAgICAgfQogCi0gICAgbV9wYWdlLT5zZW5kQ2xvc2UoKTsKKyAg
ICBtX3BhZ2Uuc2VuZENsb3NlKCk7CiB9CiAKIHN0YXRpYyBib29sIHNob3VsZFN1cHByZXNzSmF2
YVNjcmlwdERpYWxvZ3MoRnJhbWUmIGZyYW1lKQpAQCAtMzk2LDExICs0MDUsMTEgQEAgdm9pZCBX
ZWJDaHJvbWVDbGllbnQ6OnJ1bkphdmFTY3JpcHRBbGVydChGcmFtZSogZnJhbWUsIGNvbnN0IFN0
cmluZyYgYWxlcnRUZXh0KQogICAgIEFTU0VSVCh3ZWJGcmFtZSk7CiAKICAgICAvLyBOb3RpZnkg
dGhlIGJ1bmRsZSBjbGllbnQuCi0gICAgbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCku
d2lsbFJ1bkphdmFTY3JpcHRBbGVydChtX3BhZ2UsIGFsZXJ0VGV4dCwgd2ViRnJhbWUpOworICAg
IG1fcGFnZS5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkud2lsbFJ1bkphdmFTY3JpcHRBbGVydCgm
bV9wYWdlLCBhbGVydFRleHQsIHdlYkZyYW1lKTsKIAogICAgIEhhbmdEZXRlY3Rpb25EaXNhYmxl
ciBoYW5nRGV0ZWN0aW9uRGlzYWJsZXI7CiAKLSAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5w
YXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjpSdW5KYXZhU2NyaXB0QWxlcnQod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5E
YXRhOjpmcm9tRnJhbWUoZnJhbWUpLCBhbGVydFRleHQpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjpSdW5KYXZhU2NyaXB0QWxlcnQ6OlJlcGx5KCksIG1fcGFnZS0+cGFnZUlEKCksIFNlY29uZHM6
OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246OkluZm9ybVBsYXRmb3JtUHJvY2Vzc1dp
bGxTdXNwZW5kKTsKKyAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29u
bmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2NyaXB0
QWxlcnQod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tRnJhbWUo
ZnJhbWUpLCBhbGVydFRleHQpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2NyaXB0
QWxlcnQ6OlJlcGx5KCksIG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBD
OjpTZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpOwogfQog
CiBib29sIFdlYkNocm9tZUNsaWVudDo6cnVuSmF2YVNjcmlwdENvbmZpcm0oRnJhbWUqIGZyYW1l
LCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UpCkBAIC00MTIsMTIgKzQyMSwxMiBAQCBib29sIFdlYkNo
cm9tZUNsaWVudDo6cnVuSmF2YVNjcmlwdENvbmZpcm0oRnJhbWUqIGZyYW1lLCBjb25zdCBTdHJp
bmcmIG1lc3NhZ2UpCiAgICAgQVNTRVJUKHdlYkZyYW1lKTsKIAogICAgIC8vIE5vdGlmeSB0aGUg
YnVuZGxlIGNsaWVudC4KLSAgICBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS53aWxs
UnVuSmF2YVNjcmlwdENvbmZpcm0obV9wYWdlLCBtZXNzYWdlLCB3ZWJGcmFtZSk7CisgICAgbV9w
YWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS53aWxsUnVuSmF2YVNjcmlwdENvbmZpcm0oJm1f
cGFnZSwgbWVzc2FnZSwgd2ViRnJhbWUpOwogCiAgICAgSGFuZ0RldGVjdGlvbkRpc2FibGVyIGhh
bmdEZXRlY3Rpb25EaXNhYmxlcjsKIAogICAgIGJvb2wgcmVzdWx0ID0gZmFsc2U7Ci0gICAgaWYg
KCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5k
U3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2NyaXB0Q29uZmlybSh3ZWJGcmFt
ZS0+ZnJhbWVJRCgpLCBTZWN1cml0eU9yaWdpbkRhdGE6OmZyb21GcmFtZShmcmFtZSksIG1lc3Nh
Z2UpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2NyaXB0Q29uZmlybTo6UmVwbHko
cmVzdWx0KSwgbV9wYWdlLT5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBDOjpTZW5k
U3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpKQorICAgIGlmICgh
V2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5
bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdENvbmZpcm0od2ViRnJhbWUt
PmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tRnJhbWUoZnJhbWUpLCBtZXNzYWdl
KSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdENvbmZpcm06OlJlcGx5KHJl
c3VsdCksIG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBDOjpTZW5kU3lu
Y09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpKQogICAgICAgICByZXR1
cm4gZmFsc2U7CiAKICAgICByZXR1cm4gcmVzdWx0OwpAQCAtNDMyLDExICs0NDEsMTEgQEAgYm9v
bCBXZWJDaHJvbWVDbGllbnQ6OnJ1bkphdmFTY3JpcHRQcm9tcHQoRnJhbWUqIGZyYW1lLCBjb25z
dCBTdHJpbmcmIG1lc3NhZ2UsIGMKICAgICBBU1NFUlQod2ViRnJhbWUpOwogCiAgICAgLy8gTm90
aWZ5IHRoZSBidW5kbGUgY2xpZW50LgotICAgIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVVSUNsaWVu
dCgpLndpbGxSdW5KYXZhU2NyaXB0UHJvbXB0KG1fcGFnZSwgbWVzc2FnZSwgZGVmYXVsdFZhbHVl
LCB3ZWJGcmFtZSk7CisgICAgbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS53aWxsUnVu
SmF2YVNjcmlwdFByb21wdCgmbV9wYWdlLCBtZXNzYWdlLCBkZWZhdWx0VmFsdWUsIHdlYkZyYW1l
KTsKIAogICAgIEhhbmdEZXRlY3Rpb25EaXNhYmxlciBoYW5nRGV0ZWN0aW9uRGlzYWJsZXI7CiAK
LSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9u
KCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJ1bkphdmFTY3JpcHRQcm9tcHQo
d2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tRnJhbWUoZnJhbWUp
LCBtZXNzYWdlLCBkZWZhdWx0VmFsdWUpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZh
U2NyaXB0UHJvbXB0OjpSZXBseShyZXN1bHQpLCBtX3BhZ2UtPnBhZ2VJRCgpLCBTZWNvbmRzOjpp
bmZpbml0eSgpLCBJUEM6OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0Zm9ybVByb2Nlc3NXaWxs
U3VzcGVuZCkpCisgICAgaWYgKCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNz
Q29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2Ny
aXB0UHJvbXB0KHdlYkZyYW1lLT5mcmFtZUlEKCksIFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbUZy
YW1lKGZyYW1lKSwgbWVzc2FnZSwgZGVmYXVsdFZhbHVlKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94
eTo6UnVuSmF2YVNjcmlwdFByb21wdDo6UmVwbHkocmVzdWx0KSwgbV9wYWdlLnBhZ2VJRCgpLCBT
ZWNvbmRzOjppbmZpbml0eSgpLCBJUEM6OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0Zm9ybVBy
b2Nlc3NXaWxsU3VzcGVuZCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIHJldHVybiAh
cmVzdWx0LmlzTnVsbCgpOwpAQCAtNDQ1LDI3ICs0NTQsMjkgQEAgYm9vbCBXZWJDaHJvbWVDbGll
bnQ6OnJ1bkphdmFTY3JpcHRQcm9tcHQoRnJhbWUqIGZyYW1lLCBjb25zdCBTdHJpbmcmIG1lc3Nh
Z2UsIGMKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRTdGF0dXNiYXJUZXh0KGNvbnN0IFN0cmlu
ZyYgc3RhdHVzYmFyVGV4dCkKIHsKICAgICAvLyBOb3RpZnkgdGhlIGJ1bmRsZSBjbGllbnQuCi0g
ICAgbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkud2lsbFNldFN0YXR1c2JhclRleHQo
bV9wYWdlLCBzdGF0dXNiYXJUZXh0KTsKKyAgICBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVu
dCgpLndpbGxTZXRTdGF0dXNiYXJUZXh0KCZtX3BhZ2UsIHN0YXR1c2JhclRleHQpOwogCi0gICAg
bV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldFN0YXR1c1RleHQoc3RhdHVz
YmFyVGV4dCkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldFN0
YXR1c1RleHQoc3RhdHVzYmFyVGV4dCkpOwogfQogCiBLZXlib2FyZFVJTW9kZSBXZWJDaHJvbWVD
bGllbnQ6OmtleWJvYXJkVUlNb2RlKCkKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5rZXlib2FyZFVJ
TW9kZSgpOworICAgIHJldHVybiBtX3BhZ2Uua2V5Ym9hcmRVSU1vZGUoKTsKIH0KIAogI2lmIEVO
QUJMRShQT0lOVEVSX0xPQ0spCisKIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpyZXF1ZXN0UG9pbnRl
ckxvY2soKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZXF1
ZXN0UG9pbnRlckxvY2soKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94
eTo6UmVxdWVzdFBvaW50ZXJMb2NrKCkpOwogICAgIHJldHVybiB0cnVlOwogfQogCiB2b2lkIFdl
YkNocm9tZUNsaWVudDo6cmVxdWVzdFBvaW50ZXJVbmxvY2soKQogewotICAgIG1fcGFnZS0+c2Vu
ZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZXF1ZXN0UG9pbnRlclVubG9jaygpKTsKKyAgICBt
X3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZXF1ZXN0UG9pbnRlclVubG9jaygp
KTsKIH0KKwogI2VuZGlmCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjppbnZhbGlkYXRlUm9vdFZp
ZXcoY29uc3QgSW50UmVjdCYpCkBAIC00NzUsNjEgKzQ4Niw2MSBAQCB2b2lkIFdlYkNocm9tZUNs
aWVudDo6aW52YWxpZGF0ZVJvb3RWaWV3KGNvbnN0IEludFJlY3QmKQogCiB2b2lkIFdlYkNocm9t
ZUNsaWVudDo6aW52YWxpZGF0ZUNvbnRlbnRzQW5kUm9vdFZpZXcoY29uc3QgSW50UmVjdCYgcmVj
dCkKIHsKLSAgICBpZiAoRG9jdW1lbnQqIGRvY3VtZW50ID0gbV9wYWdlLT5jb3JlUGFnZSgpLT5t
YWluRnJhbWUoKS5kb2N1bWVudCgpKSB7CisgICAgaWYgKERvY3VtZW50KiBkb2N1bWVudCA9IG1f
cGFnZS5jb3JlUGFnZSgpLT5tYWluRnJhbWUoKS5kb2N1bWVudCgpKSB7CiAgICAgICAgIGlmIChk
b2N1bWVudC0+cHJpbnRpbmcoKSkKICAgICAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBt
X3BhZ2UtPmRyYXdpbmdBcmVhKCktPnNldE5lZWRzRGlzcGxheUluUmVjdChyZWN0KTsKKyAgICBt
X3BhZ2UuZHJhd2luZ0FyZWEoKS0+c2V0TmVlZHNEaXNwbGF5SW5SZWN0KHJlY3QpOwogfQogCiB2
b2lkIFdlYkNocm9tZUNsaWVudDo6aW52YWxpZGF0ZUNvbnRlbnRzRm9yU2xvd1Njcm9sbChjb25z
dCBJbnRSZWN0JiByZWN0KQogewotICAgIGlmIChEb2N1bWVudCogZG9jdW1lbnQgPSBtX3BhZ2Ut
PmNvcmVQYWdlKCktPm1haW5GcmFtZSgpLmRvY3VtZW50KCkpIHsKKyAgICBpZiAoRG9jdW1lbnQq
IGRvY3VtZW50ID0gbV9wYWdlLmNvcmVQYWdlKCktPm1haW5GcmFtZSgpLmRvY3VtZW50KCkpIHsK
ICAgICAgICAgaWYgKGRvY3VtZW50LT5wcmludGluZygpKQogICAgICAgICAgICAgcmV0dXJuOwog
ICAgIH0KIAotICAgIG1fcGFnZS0+cGFnZURpZFNjcm9sbCgpOworICAgIG1fcGFnZS5wYWdlRGlk
U2Nyb2xsKCk7CiAjaWYgVVNFKENPT1JESU5BVEVEX0dSQVBISUNTKQotICAgIG1fcGFnZS0+ZHJh
d2luZ0FyZWEoKS0+c2Nyb2xsKHJlY3QsIEludFNpemUoKSk7CisgICAgbV9wYWdlLmRyYXdpbmdB
cmVhKCktPnNjcm9sbChyZWN0LCBJbnRTaXplKCkpOwogI2Vsc2UKLSAgICBtX3BhZ2UtPmRyYXdp
bmdBcmVhKCktPnNldE5lZWRzRGlzcGxheUluUmVjdChyZWN0KTsKKyAgICBtX3BhZ2UuZHJhd2lu
Z0FyZWEoKS0+c2V0TmVlZHNEaXNwbGF5SW5SZWN0KHJlY3QpOwogI2VuZGlmCiB9CiAKIHZvaWQg
V2ViQ2hyb21lQ2xpZW50OjpzY3JvbGwoY29uc3QgSW50U2l6ZSYgc2Nyb2xsRGVsdGEsIGNvbnN0
IEludFJlY3QmIHNjcm9sbFJlY3QsIGNvbnN0IEludFJlY3QmIGNsaXBSZWN0KQogewotICAgIG1f
cGFnZS0+cGFnZURpZFNjcm9sbCgpOwotICAgIG1fcGFnZS0+ZHJhd2luZ0FyZWEoKS0+c2Nyb2xs
KGludGVyc2VjdGlvbihzY3JvbGxSZWN0LCBjbGlwUmVjdCksIHNjcm9sbERlbHRhKTsKKyAgICBt
X3BhZ2UucGFnZURpZFNjcm9sbCgpOworICAgIG1fcGFnZS5kcmF3aW5nQXJlYSgpLT5zY3JvbGwo
aW50ZXJzZWN0aW9uKHNjcm9sbFJlY3QsIGNsaXBSZWN0KSwgc2Nyb2xsRGVsdGEpOwogfQogCiAj
aWYgVVNFKENPT1JESU5BVEVEX0dSQVBISUNTKQogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmRlbGVn
YXRlZFNjcm9sbFJlcXVlc3RlZChjb25zdCBJbnRQb2ludCYgc2Nyb2xsT2Zmc2V0KQogewotICAg
IG1fcGFnZS0+cGFnZURpZFJlcXVlc3RTY3JvbGwoc2Nyb2xsT2Zmc2V0KTsKKyAgICBtX3BhZ2Uu
cGFnZURpZFJlcXVlc3RTY3JvbGwoc2Nyb2xsT2Zmc2V0KTsKIH0KICNlbmRpZgogCiBJbnRQb2lu
dCBXZWJDaHJvbWVDbGllbnQ6OnNjcmVlblRvUm9vdFZpZXcoY29uc3QgSW50UG9pbnQmIHBvaW50
KSBjb25zdAogewotICAgIHJldHVybiBtX3BhZ2UtPnNjcmVlblRvUm9vdFZpZXcocG9pbnQpOwor
ICAgIHJldHVybiBtX3BhZ2Uuc2NyZWVuVG9Sb290Vmlldyhwb2ludCk7CiB9CiAKIEludFJlY3Qg
V2ViQ2hyb21lQ2xpZW50Ojpyb290Vmlld1RvU2NyZWVuKGNvbnN0IEludFJlY3QmIHJlY3QpIGNv
bnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+cm9vdFZpZXdUb1NjcmVlbihyZWN0KTsKKyAgICBy
ZXR1cm4gbV9wYWdlLnJvb3RWaWV3VG9TY3JlZW4ocmVjdCk7CiB9CiAgICAgCiAjaWYgUExBVEZP
Uk0oSU9TKQogSW50UG9pbnQgV2ViQ2hyb21lQ2xpZW50OjphY2Nlc3NpYmlsaXR5U2NyZWVuVG9S
b290Vmlldyhjb25zdCBJbnRQb2ludCYgcG9pbnQpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFn
ZS0+YWNjZXNzaWJpbGl0eVNjcmVlblRvUm9vdFZpZXcocG9pbnQpOworICAgIHJldHVybiBtX3Bh
Z2UuYWNjZXNzaWJpbGl0eVNjcmVlblRvUm9vdFZpZXcocG9pbnQpOwogfQogCiBJbnRSZWN0IFdl
YkNocm9tZUNsaWVudDo6cm9vdFZpZXdUb0FjY2Vzc2liaWxpdHlTY3JlZW4oY29uc3QgSW50UmVj
dCYgcmVjdCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5yb290Vmlld1RvQWNjZXNzaWJp
bGl0eVNjcmVlbihyZWN0KTsKKyAgICByZXR1cm4gbV9wYWdlLnJvb3RWaWV3VG9BY2Nlc3NpYmls
aXR5U2NyZWVuKHJlY3QpOwogfQogI2VuZGlmCiAKQEAgLTU0MSwyMCArNTUyLDIwIEBAIFBsYXRm
b3JtUGFnZUNsaWVudCBXZWJDaHJvbWVDbGllbnQ6OnBsYXRmb3JtUGFnZUNsaWVudCgpIGNvbnN0
CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpjb250ZW50c1NpemVDaGFuZ2VkKEZyYW1lKiBmcmFt
ZSwgY29uc3QgSW50U2l6ZSYgc2l6ZSkgY29uc3QKIHsKLSAgICBpZiAoIW1fcGFnZS0+Y29yZVBh
Z2UoKS0+c2V0dGluZ3MoKS5mcmFtZUZsYXR0ZW5pbmdFbmFibGVkKCkpIHsKKyAgICBpZiAoIW1f
cGFnZS5jb3JlUGFnZSgpLT5zZXR0aW5ncygpLmZyYW1lRmxhdHRlbmluZ0VuYWJsZWQoKSkgewog
ICAgICAgICBXZWJGcmFtZSogbGFyZ2VzdEZyYW1lID0gZmluZExhcmdlc3RGcmFtZUluRnJhbWVT
ZXQobV9wYWdlKTsKICAgICAgICAgaWYgKGxhcmdlc3RGcmFtZSAhPSBtX2NhY2hlZEZyYW1lU2V0
TGFyZ2VzdEZyYW1lLmdldCgpKSB7CiAgICAgICAgICAgICBtX2NhY2hlZEZyYW1lU2V0TGFyZ2Vz
dEZyYW1lID0gbGFyZ2VzdEZyYW1lOwotICAgICAgICAgICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6OkZyYW1lU2V0TGFyZ2VzdEZyYW1lQ2hhbmdlZChsYXJnZXN0RnJhbWUg
PyBsYXJnZXN0RnJhbWUtPmZyYW1lSUQoKSA6IDApKTsKKyAgICAgICAgICAgIG1fcGFnZS5zZW5k
KE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZyYW1lU2V0TGFyZ2VzdEZyYW1lQ2hhbmdlZChsYXJn
ZXN0RnJhbWUgPyBsYXJnZXN0RnJhbWUtPmZyYW1lSUQoKSA6IDApKTsKICAgICAgICAgfQogICAg
IH0KIAogICAgIGlmICgmZnJhbWUtPnBhZ2UoKS0+bWFpbkZyYW1lKCkgIT0gZnJhbWUpCiAgICAg
ICAgIHJldHVybjsKIAotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpE
aWRDaGFuZ2VDb250ZW50U2l6ZShzaXplKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6Oldl
YlBhZ2VQcm94eTo6RGlkQ2hhbmdlQ29udGVudFNpemUoc2l6ZSkpOwogCi0gICAgbV9wYWdlLT5k
cmF3aW5nQXJlYSgpLT5tYWluRnJhbWVDb250ZW50U2l6ZUNoYW5nZWQoc2l6ZSk7CisgICAgbV9w
YWdlLmRyYXdpbmdBcmVhKCktPm1haW5GcmFtZUNvbnRlbnRTaXplQ2hhbmdlZChzaXplKTsKIAog
ICAgIEZyYW1lVmlldyogZnJhbWVWaWV3ID0gZnJhbWUtPnZpZXcoKTsKICAgICBpZiAoZnJhbWVW
aWV3ICYmICFmcmFtZVZpZXctPmRlbGVnYXRlc1Njcm9sbGluZygpKSAgewpAQCAtNTYyLDcgKzU3
Myw3IEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpjb250ZW50c1NpemVDaGFuZ2VkKEZyYW1lKiBm
cmFtZSwgY29uc3QgSW50U2l6ZSYgc2l6ZSkgY29uCiAgICAgICAgIGJvb2wgaGFzVmVydGljYWxT
Y3JvbGxiYXIgPSBmcmFtZVZpZXctPnZlcnRpY2FsU2Nyb2xsYmFyKCk7CiAKICAgICAgICAgaWYg
KGhhc0hvcml6b250YWxTY3JvbGxiYXIgIT0gbV9jYWNoZWRNYWluRnJhbWVIYXNIb3Jpem9udGFs
U2Nyb2xsYmFyIHx8IGhhc1ZlcnRpY2FsU2Nyb2xsYmFyICE9IG1fY2FjaGVkTWFpbkZyYW1lSGFz
VmVydGljYWxTY3JvbGxiYXIpIHsKLSAgICAgICAgICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6
V2ViUGFnZVByb3h5OjpEaWRDaGFuZ2VTY3JvbGxiYXJzRm9yTWFpbkZyYW1lKGhhc0hvcml6b250
YWxTY3JvbGxiYXIsIGhhc1ZlcnRpY2FsU2Nyb2xsYmFyKSk7CisgICAgICAgICAgICBtX3BhZ2Uu
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRDaGFuZ2VTY3JvbGxiYXJzRm9yTWFpbkZy
YW1lKGhhc0hvcml6b250YWxTY3JvbGxiYXIsIGhhc1ZlcnRpY2FsU2Nyb2xsYmFyKSk7CiAKICAg
ICAgICAgICAgIG1fY2FjaGVkTWFpbkZyYW1lSGFzSG9yaXpvbnRhbFNjcm9sbGJhciA9IGhhc0hv
cml6b250YWxTY3JvbGxiYXI7CiAgICAgICAgICAgICBtX2NhY2hlZE1haW5GcmFtZUhhc1ZlcnRp
Y2FsU2Nyb2xsYmFyID0gaGFzVmVydGljYWxTY3JvbGxiYXI7CkBAIC02MDMsMTIgKzYxNCwxMiBA
QCB2b2lkIFdlYkNocm9tZUNsaWVudDo6dW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2VkKEVs
ZW1lbnQqIGVsZW1lbnQsIFJlbmRlckVtYgogICAgIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQqIHBs
dWdpbkVsZW1lbnQgPSBzdGF0aWNfY2FzdDxIVE1MUGx1Z0luSW1hZ2VFbGVtZW50Kj4oZWxlbWVu
dCk7CiAKICAgICBTdHJpbmcgZnJhbWVVUkxTdHJpbmcgPSBwbHVnaW5FbGVtZW50LT5kb2N1bWVu
dCgpLmZyYW1lKCktPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCktPnJlc3BvbnNlVVJMKCkuc3Ry
aW5nKCk7Ci0gICAgU3RyaW5nIHBhZ2VVUkxTdHJpbmcgPSBtX3BhZ2UtPm1haW5GcmFtZSgpLT5s
b2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOworICAgIFN0
cmluZyBwYWdlVVJMU3RyaW5nID0gbV9wYWdlLm1haW5GcmFtZSgpLT5sb2FkZXIoKS5kb2N1bWVu
dExvYWRlcigpLT5yZXNwb25zZVVSTCgpLnN0cmluZygpOwogICAgIFN0cmluZyBwbHVnaW5VUkxT
dHJpbmcgPSBwbHVnaW5FbGVtZW50LT5kb2N1bWVudCgpLmNvbXBsZXRlVVJMKHBsdWdpbkVsZW1l
bnQtPnVybCgpKS5zdHJpbmcoKTsKICAgICBVUkwgcGx1Z2luc3BhZ2VBdHRyaWJ1dGVVUkwgPSBl
bGVtZW50LT5kb2N1bWVudCgpLmNvbXBsZXRlVVJMKHN0cmlwTGVhZGluZ0FuZFRyYWlsaW5nSFRN
TFNwYWNlcyhwbHVnaW5FbGVtZW50LT5nZXRBdHRyaWJ1dGUocGx1Z2luc3BhZ2VBdHRyKSkpOwog
ICAgIGlmICghcGx1Z2luc3BhZ2VBdHRyaWJ1dGVVUkwucHJvdG9jb2xJc0luSFRUUEZhbWlseSgp
KQogICAgICAgICBwbHVnaW5zcGFnZUF0dHJpYnV0ZVVSTCA9IFVSTCgpOwotICAgIG1fcGFnZS0+
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpVbmF2YWlsYWJsZVBsdWdpbkJ1dHRvbkNsaWNr
ZWQocGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24sIHBsdWdpbkVsZW1lbnQtPnNlcnZpY2VUeXBl
KCksIHBsdWdpblVSTFN0cmluZywgcGx1Z2luc3BhZ2VBdHRyaWJ1dGVVUkwuc3RyaW5nKCksIGZy
YW1lVVJMU3RyaW5nLCBwYWdlVVJMU3RyaW5nKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6VW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2VkKHBsdWdpblVuYXZh
aWxhYmlsaXR5UmVhc29uLCBwbHVnaW5FbGVtZW50LT5zZXJ2aWNlVHlwZSgpLCBwbHVnaW5VUkxT
dHJpbmcsIHBsdWdpbnNwYWdlQXR0cmlidXRlVVJMLnN0cmluZygpLCBmcmFtZVVSTFN0cmluZywg
cGFnZVVSTFN0cmluZykpOwogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0oZWxlbWVudCk7CiAgICAg
VU5VU0VEX1BBUkFNKHBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKTsKQEAgLTYyNSwxMSArNjM2
LDExIEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojptb3VzZURpZE1vdmVPdmVyRWxlbWVudChjb25z
dCBIaXRUZXN0UmVzdWx0JiBoaXRUZXN0UmVzdWx0CiAgICAgUmVmUHRyPEFQSTo6T2JqZWN0PiB1
c2VyRGF0YTsKIAogICAgIC8vIE5vdGlmeSB0aGUgYnVuZGxlIGNsaWVudC4KLSAgICBtX3BhZ2Ut
PmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5tb3VzZURpZE1vdmVPdmVyRWxlbWVudChtX3BhZ2Us
IGhpdFRlc3RSZXN1bHQsIHN0YXRpY19jYXN0PFdlYkV2ZW50OjpNb2RpZmllcnM+KG1vZGlmaWVy
RmxhZ3MpLCB1c2VyRGF0YSk7CisgICAgbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5t
b3VzZURpZE1vdmVPdmVyRWxlbWVudCgmbV9wYWdlLCBoaXRUZXN0UmVzdWx0LCBzdGF0aWNfY2Fz
dDxXZWJFdmVudDo6TW9kaWZpZXJzPihtb2RpZmllckZsYWdzKSwgdXNlckRhdGEpOwogCiAgICAg
Ly8gTm90aWZ5IHRoZSBVSVByb2Nlc3MuCiAgICAgV2ViSGl0VGVzdFJlc3VsdERhdGEgd2ViSGl0
VGVzdFJlc3VsdERhdGEoaGl0VGVzdFJlc3VsdCk7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6Ok1vdXNlRGlkTW92ZU92ZXJFbGVtZW50KHdlYkhpdFRlc3RSZXN1bHRE
YXRhLCBtb2RpZmllckZsYWdzLCBVc2VyRGF0YShXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS50cmFu
c2Zvcm1PYmplY3RzVG9IYW5kbGVzKHVzZXJEYXRhLmdldCgpKS5nZXQoKSkpKTsKKyAgICBtX3Bh
Z2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpNb3VzZURpZE1vdmVPdmVyRWxlbWVudCh3
ZWJIaXRUZXN0UmVzdWx0RGF0YSwgbW9kaWZpZXJGbGFncywgVXNlckRhdGEoV2ViUHJvY2Vzczo6
c2luZ2xldG9uKCkudHJhbnNmb3JtT2JqZWN0c1RvSGFuZGxlcyh1c2VyRGF0YS5nZXQoKSkuZ2V0
KCkpKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRUb29sVGlwKGNvbnN0IFN0cmlu
ZyYgdG9vbFRpcCwgVGV4dERpcmVjdGlvbikKQEAgLTY0MCw3ICs2NTEsNyBAQCB2b2lkIFdlYkNo
cm9tZUNsaWVudDo6c2V0VG9vbFRpcChjb25zdCBTdHJpbmcmIHRvb2xUaXAsIFRleHREaXJlY3Rp
b24pCiAgICAgICAgIHJldHVybjsKICAgICBtX2NhY2hlZFRvb2xUaXAgPSB0b29sVGlwOwogCi0g
ICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldFRvb2xUaXAobV9jYWNo
ZWRUb29sVGlwKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0
VG9vbFRpcChtX2NhY2hlZFRvb2xUaXApKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnBy
aW50KEZyYW1lKiBmcmFtZSkKQEAgLTY2OCw3ICs2NzksNyBAQCB2b2lkIFdlYkNocm9tZUNsaWVu
dDo6cHJpbnQoRnJhbWUqIGZyYW1lKQogICAgIH0KICNlbmRpZgogCi0gICAgbV9wYWdlLT5zZW5k
U3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQcmludEZyYW1lKHdlYkZyYW1lLT5mcmFtZUlE
KCkpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQcmludEZyYW1lOjpSZXBseSgpLCBTZWNvbmRz
OjppbmZpbml0eSgpLCBJUEM6OlNlbmRTeW5jT3B0aW9uOjpJbmZvcm1QbGF0Zm9ybVByb2Nlc3NX
aWxsU3VzcGVuZCk7CisgICAgbV9wYWdlLnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OlByaW50RnJhbWUod2ViRnJhbWUtPmZyYW1lSUQoKSksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OlByaW50RnJhbWU6OlJlcGx5KCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNP
cHRpb246OkluZm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKTsKIH0KIAogdm9pZCBXZWJD
aHJvbWVDbGllbnQ6OmV4Y2VlZGVkRGF0YWJhc2VRdW90YShGcmFtZSogZnJhbWUsIGNvbnN0IFN0
cmluZyYgZGF0YWJhc2VOYW1lLCBEYXRhYmFzZURldGFpbHMgZGV0YWlscykKQEAgLTY4NiwxMiAr
Njk3LDEyIEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpleGNlZWRlZERhdGFiYXNlUXVvdGEoRnJh
bWUqIGZyYW1lLCBjb25zdCBTdHJpbmcmIGRhdGFiYXNlCiAgICAgYXV0byBjdXJyZW50T3JpZ2lu
VXNhZ2UgPSB0cmFja2VyLnVzYWdlKG9yaWdpbkRhdGEpOwogICAgIHVpbnQ2NF90IG5ld1F1b3Rh
ID0gMDsKICAgICBSZWZQdHI8QVBJOjpTZWN1cml0eU9yaWdpbj4gc2VjdXJpdHlPcmlnaW4gPSBB
UEk6OlNlY3VyaXR5T3JpZ2luOjpjcmVhdGUoV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhOjpm
cm9tRGF0YWJhc2VJZGVudGlmaWVyKFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbVNl
Y3VyaXR5T3JpZ2luKCpvcmlnaW4pLmRhdGFiYXNlSWRlbnRpZmllcigpKS0+c2VjdXJpdHlPcmln
aW4oKSk7Ci0gICAgbmV3UXVvdGEgPSBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5k
aWRFeGNlZWREYXRhYmFzZVF1b3RhKG1fcGFnZSwgc2VjdXJpdHlPcmlnaW4uZ2V0KCksIGRhdGFi
YXNlTmFtZSwgZGV0YWlscy5kaXNwbGF5TmFtZSgpLCBjdXJyZW50UXVvdGEsIGN1cnJlbnRPcmln
aW5Vc2FnZSwgZGV0YWlscy5jdXJyZW50VXNhZ2UoKSwgZGV0YWlscy5leHBlY3RlZFVzYWdlKCkp
OworICAgIG5ld1F1b3RhID0gbV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5kaWRFeGNl
ZWREYXRhYmFzZVF1b3RhKCZtX3BhZ2UsIHNlY3VyaXR5T3JpZ2luLmdldCgpLCBkYXRhYmFzZU5h
bWUsIGRldGFpbHMuZGlzcGxheU5hbWUoKSwgY3VycmVudFF1b3RhLCBjdXJyZW50T3JpZ2luVXNh
Z2UsIGRldGFpbHMuY3VycmVudFVzYWdlKCksIGRldGFpbHMuZXhwZWN0ZWRVc2FnZSgpKTsKIAog
ICAgIGlmICghbmV3UXVvdGEpIHsKICAgICAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFy
ZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoCiAgICAgICAgICAgICBNZXNzYWdlczo6
V2ViUGFnZVByb3h5OjpFeGNlZWRlZERhdGFiYXNlUXVvdGEod2ViRnJhbWUtPmZyYW1lSUQoKSwg
V2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tU2VjdXJpdHlPcmlnaW4oKm9yaWdpbiku
ZGF0YWJhc2VJZGVudGlmaWVyKCksIGRhdGFiYXNlTmFtZSwgZGV0YWlscy5kaXNwbGF5TmFtZSgp
LCBjdXJyZW50UXVvdGEsIGN1cnJlbnRPcmlnaW5Vc2FnZSwgZGV0YWlscy5jdXJyZW50VXNhZ2Uo
KSwgZGV0YWlscy5leHBlY3RlZFVzYWdlKCkpLAotICAgICAgICAgICAgTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6RXhjZWVkZWREYXRhYmFzZVF1b3RhOjpSZXBseShuZXdRdW90YSksIG1fcGFnZS0+
cGFnZUlEKCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246OkluZm9y
bVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKTsKKyAgICAgICAgICAgIE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OkV4Y2VlZGVkRGF0YWJhc2VRdW90YTo6UmVwbHkobmV3UXVvdGEpLCBtX3BhZ2Uu
cGFnZUlEKCksIFNlY29uZHM6OmluZmluaXR5KCksIElQQzo6U2VuZFN5bmNPcHRpb246OkluZm9y
bVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kKTsKICAgICB9CiAKICAgICB0cmFja2VyLnNldFF1
b3RhKG9yaWdpbkRhdGEsIG5ld1F1b3RhKTsKQEAgLTcwNSwxMCArNzE2LDEwIEBAIHZvaWQgV2Vi
Q2hyb21lQ2xpZW50OjpyZWFjaGVkTWF4QXBwQ2FjaGVTaXplKGludDY0X3QpCiB2b2lkIFdlYkNo
cm9tZUNsaWVudDo6cmVhY2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YShTZWN1cml0eU9y
aWdpbiogb3JpZ2luLCBpbnQ2NF90IHRvdGFsQnl0ZXNOZWVkZWQpCiB7CiAgICAgUmVmUHRyPEFQ
STo6U2VjdXJpdHlPcmlnaW4+IHNlY3VyaXR5T3JpZ2luID0gQVBJOjpTZWN1cml0eU9yaWdpbjo6
Y3JlYXRlRnJvbVN0cmluZyhvcmlnaW4tPnRvU3RyaW5nKCkpOwotICAgIGlmIChtX3BhZ2UtPmlu
amVjdGVkQnVuZGxlVUlDbGllbnQoKS5kaWRSZWFjaEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90
YShtX3BhZ2UsIHNlY3VyaXR5T3JpZ2luLmdldCgpLCB0b3RhbEJ5dGVzTmVlZGVkKSkKKyAgICBp
ZiAobV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5kaWRSZWFjaEFwcGxpY2F0aW9uQ2Fj
aGVPcmlnaW5RdW90YSgmbV9wYWdlLCBzZWN1cml0eU9yaWdpbi5nZXQoKSwgdG90YWxCeXRlc05l
ZWRlZCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGF1dG8mIGNhY2hlU3RvcmFnZSA9IG1fcGFn
ZS0+Y29yZVBhZ2UoKS0+YXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKTsKKyAgICBhdXRvJiBjYWNo
ZVN0b3JhZ2UgPSBtX3BhZ2UuY29yZVBhZ2UoKS0+YXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKTsK
ICAgICBpbnQ2NF90IGN1cnJlbnRRdW90YSA9IDA7CiAgICAgaWYgKCFjYWNoZVN0b3JhZ2UuY2Fs
Y3VsYXRlUXVvdGFGb3JPcmlnaW4ob3JpZ2luLCBjdXJyZW50UXVvdGEpKQogICAgICAgICByZXR1
cm47CkBAIC03MTYsNyArNzI3LDcgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJlYWNoZWRBcHBs
aWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoU2VjdXJpdHlPcmlnaW4qIG9yaWdpbiwKICAgICB1aW50
NjRfdCBuZXdRdW90YSA9IDA7CiAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJv
Y2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoCiAgICAgICAgIE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OlJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoV2ViQ29yZTo6U2VjdXJpdHlP
cmlnaW5EYXRhOjpmcm9tU2VjdXJpdHlPcmlnaW4oKm9yaWdpbikuZGF0YWJhc2VJZGVudGlmaWVy
KCksIGN1cnJlbnRRdW90YSwgdG90YWxCeXRlc05lZWRlZCksCi0gICAgICAgIE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OlJlYWNoZWRBcHBsaWNhdGlvbkNhY2hlT3JpZ2luUXVvdGE6OlJlcGx5KG5l
d1F1b3RhKSwgbV9wYWdlLT5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwgSVBDOjpTZW5k
U3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpOworICAgICAgICBN
ZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZWFjaGVkQXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3Rh
OjpSZXBseShuZXdRdW90YSksIG1fcGFnZS5wYWdlSUQoKSwgU2Vjb25kczo6aW5maW5pdHkoKSwg
SVBDOjpTZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Qcm9jZXNzV2lsbFN1c3BlbmQpOwog
CiAgICAgY2FjaGVTdG9yYWdlLnN0b3JlVXBkYXRlZFF1b3RhRm9yT3JpZ2luKG9yaWdpbiwgbmV3
UXVvdGEpOwogfQpAQCAtNzMwLDM1ICs3NDEsMzIgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmFu
bm90YXRlZFJlZ2lvbnNDaGFuZ2VkKCkKIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnNob3VsZFJl
cGxhY2VXaXRoR2VuZXJhdGVkRmlsZUZvclVwbG9hZChjb25zdCBTdHJpbmcmIHBhdGgsIFN0cmlu
ZyYgZ2VuZXJhdGVkRmlsZW5hbWUpCiB7Ci0gICAgZ2VuZXJhdGVkRmlsZW5hbWUgPSBtX3BhZ2Ut
PmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5zaG91bGRHZW5lcmF0ZUZpbGVGb3JVcGxvYWQobV9w
YWdlLCBwYXRoKTsKKyAgICBnZW5lcmF0ZWRGaWxlbmFtZSA9IG1fcGFnZS5pbmplY3RlZEJ1bmRs
ZVVJQ2xpZW50KCkuc2hvdWxkR2VuZXJhdGVGaWxlRm9yVXBsb2FkKCZtX3BhZ2UsIHBhdGgpOwog
ICAgIHJldHVybiAhZ2VuZXJhdGVkRmlsZW5hbWUuaXNOdWxsKCk7CiB9CiAKIFN0cmluZyBXZWJD
aHJvbWVDbGllbnQ6OmdlbmVyYXRlUmVwbGFjZW1lbnRGaWxlKGNvbnN0IFN0cmluZyYgcGF0aCkK
IHsKLSAgICByZXR1cm4gbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkuZ2VuZXJhdGVG
aWxlRm9yVXBsb2FkKG1fcGFnZSwgcGF0aCk7CisgICAgcmV0dXJuIG1fcGFnZS5pbmplY3RlZEJ1
bmRsZVVJQ2xpZW50KCkuZ2VuZXJhdGVGaWxlRm9yVXBsb2FkKCZtX3BhZ2UsIHBhdGgpOwogfQog
CiAjaWYgRU5BQkxFKElOUFVUX1RZUEVfQ09MT1IpCiBzdGQ6OnVuaXF1ZV9wdHI8Q29sb3JDaG9v
c2VyPiBXZWJDaHJvbWVDbGllbnQ6OmNyZWF0ZUNvbG9yQ2hvb3NlcihDb2xvckNob29zZXJDbGll
bnQqIGNsaWVudCwgY29uc3QgQ29sb3ImIGluaXRpYWxDb2xvcikKIHsKLSAgICByZXR1cm4gc3Rk
OjptYWtlX3VuaXF1ZTxXZWJDb2xvckNob29zZXI+KG1fcGFnZSwgY2xpZW50LCBpbml0aWFsQ29s
b3IpOworICAgIHJldHVybiBzdGQ6Om1ha2VfdW5pcXVlPFdlYkNvbG9yQ2hvb3Nlcj4oJm1fcGFn
ZSwgY2xpZW50LCBpbml0aWFsQ29sb3IpOwogfQogI2VuZGlmCiAKLXZvaWQgV2ViQ2hyb21lQ2xp
ZW50OjpydW5PcGVuUGFuZWwoRnJhbWUqIGZyYW1lLCBQYXNzUmVmUHRyPEZpbGVDaG9vc2VyPiBw
cnBGaWxlQ2hvb3NlcikKK3ZvaWQgV2ViQ2hyb21lQ2xpZW50OjpydW5PcGVuUGFuZWwoRnJhbWUm
IGZyYW1lLCBGaWxlQ2hvb3NlciYgZmlsZUNob29zZXIpCiB7Ci0gICAgaWYgKG1fcGFnZS0+YWN0
aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIoKSkKKyAgICBpZiAobV9wYWdlLmFjdGl2ZU9wZW5Q
YW5lbFJlc3VsdExpc3RlbmVyKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIFJlZlB0cjxGaWxl
Q2hvb3Nlcj4gZmlsZUNob29zZXIgPSBwcnBGaWxlQ2hvb3NlcjsKKyAgICBtX3BhZ2Uuc2V0QWN0
aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIoV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXI6OmNy
ZWF0ZSgmbV9wYWdlLCAmZmlsZUNob29zZXIpKTsKIAotICAgIG1fcGFnZS0+c2V0QWN0aXZlT3Bl
blBhbmVsUmVzdWx0TGlzdGVuZXIoV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXI6OmNyZWF0ZSht
X3BhZ2UsIGZpbGVDaG9vc2VyLmdldCgpKSk7Ci0KLSAgICBXZWJGcmFtZSogd2ViRnJhbWUgPSBX
ZWJGcmFtZTo6ZnJvbUNvcmVGcmFtZSgqZnJhbWUpOworICAgIGF1dG8qIHdlYkZyYW1lID0gV2Vi
RnJhbWU6OmZyb21Db3JlRnJhbWUoZnJhbWUpOwogICAgIEFTU0VSVCh3ZWJGcmFtZSk7Ci0KLSAg
ICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuT3BlblBhbmVsKHdlYkZy
YW1lLT5mcmFtZUlEKCksIFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbUZyYW1lKGZyYW1lKSwgZmls
ZUNob29zZXItPnNldHRpbmdzKCkpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFn
ZVByb3h5OjpSdW5PcGVuUGFuZWwod2ViRnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5E
YXRhOjpmcm9tRnJhbWUoJmZyYW1lKSwgZmlsZUNob29zZXIuc2V0dGluZ3MoKSkpOwogfQogCiB2
b2lkIFdlYkNocm9tZUNsaWVudDo6bG9hZEljb25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8U3RyaW5n
PiYgZmlsZW5hbWVzLCBGaWxlSWNvbkxvYWRlciYgbG9hZGVyKQpAQCAtNzY3LDM0ICs3NzUsMzgg
QEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmxvYWRJY29uRm9yRmlsZXMoY29uc3QgVmVjdG9yPFN0
cmluZz4mIGZpbGVuYW1lcywgRmlsZUljb24KIH0KIAogI2lmICFQTEFURk9STShJT1MpCisKIHZv
aWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRDdXJzb3IoY29uc3QgV2ViQ29yZTo6Q3Vyc29yJiBjdXJz
b3IpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldEN1cnNv
cihjdXJzb3IpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRD
dXJzb3IoY3Vyc29yKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRDdXJzb3JIaWRk
ZW5VbnRpbE1vdXNlTW92ZXMoYm9vbCBoaWRkZW5VbnRpbE1vdXNlTW92ZXMpCiB7Ci0gICAgbV9w
YWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldEN1cnNvckhpZGRlblVudGlsTW91
c2VNb3ZlcyhoaWRkZW5VbnRpbE1vdXNlTW92ZXMpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdl
czo6V2ViUGFnZVByb3h5OjpTZXRDdXJzb3JIaWRkZW5VbnRpbE1vdXNlTW92ZXMoaGlkZGVuVW50
aWxNb3VzZU1vdmVzKSk7CiB9CisKICNlbmRpZgogCiAjaWYgIVVTRShSRVFVRVNUX0FOSU1BVElP
Tl9GUkFNRV9USU1FUikKKwogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNjaGVkdWxlQW5pbWF0aW9u
KCkKIHsKICNpZiBVU0UoQ09PUkRJTkFURURfR1JBUEhJQ1MpCi0gICAgbV9wYWdlLT5kcmF3aW5n
QXJlYSgpLT5sYXllclRyZWVIb3N0KCktPnNjaGVkdWxlQW5pbWF0aW9uKCk7CisgICAgbV9wYWdl
LmRyYXdpbmdBcmVhKCktPmxheWVyVHJlZUhvc3QoKS0+c2NoZWR1bGVBbmltYXRpb24oKTsKICNl
bmRpZgogfQorCiAjZW5kaWYKIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmRpZEFzc29jaWF0ZUZv
cm1Db250cm9scyhjb25zdCBWZWN0b3I8UmVmUHRyPFdlYkNvcmU6OkVsZW1lbnQ+PiYgZWxlbWVu
dHMpCiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+aW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCkuZGlk
QXNzb2NpYXRlRm9ybUNvbnRyb2xzKG1fcGFnZSwgZWxlbWVudHMpOworICAgIHJldHVybiBtX3Bh
Z2UuaW5qZWN0ZWRCdW5kbGVGb3JtQ2xpZW50KCkuZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xzKCZt
X3BhZ2UsIGVsZW1lbnRzKTsKIH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnNob3VsZE5vdGlm
eU9uRm9ybUNoYW5nZXMoKQogewotICAgIHJldHVybiBtX3BhZ2UtPmluamVjdGVkQnVuZGxlRm9y
bUNsaWVudCgpLnNob3VsZE5vdGlmeU9uRm9ybUNoYW5nZXMobV9wYWdlKTsKKyAgICByZXR1cm4g
bV9wYWdlLmluamVjdGVkQnVuZGxlRm9ybUNsaWVudCgpLnNob3VsZE5vdGlmeU9uRm9ybUNoYW5n
ZXMoJm1fcGFnZSk7CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50OjpzZWxlY3RJdGVtV3JpdGlu
Z0RpcmVjdGlvbklzTmF0dXJhbCgpCkBAIC04MTksMzkgKzgzMSw0MSBAQCBib29sIFdlYkNocm9t
ZUNsaWVudDo6aGFzT3BlbmVkUG9wdXAoKSBjb25zdAogCiBSZWZQdHI8V2ViQ29yZTo6UG9wdXBN
ZW51PiBXZWJDaHJvbWVDbGllbnQ6OmNyZWF0ZVBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1lbnVD
bGllbnQqIGNsaWVudCkgY29uc3QKIHsKLSAgICByZXR1cm4gV2ViUG9wdXBNZW51OjpjcmVhdGUo
bV9wYWdlLCBjbGllbnQpOworICAgIHJldHVybiBXZWJQb3B1cE1lbnU6OmNyZWF0ZSgmbV9wYWdl
LCBjbGllbnQpOwogfQogCiBSZWZQdHI8V2ViQ29yZTo6U2VhcmNoUG9wdXBNZW51PiBXZWJDaHJv
bWVDbGllbnQ6OmNyZWF0ZVNlYXJjaFBvcHVwTWVudShXZWJDb3JlOjpQb3B1cE1lbnVDbGllbnQq
IGNsaWVudCkgY29uc3QKIHsKLSAgICByZXR1cm4gV2ViU2VhcmNoUG9wdXBNZW51OjpjcmVhdGUo
bV9wYWdlLCBjbGllbnQpOworICAgIHJldHVybiBXZWJTZWFyY2hQb3B1cE1lbnU6OmNyZWF0ZSgm
bV9wYWdlLCBjbGllbnQpOwogfQogCiBHcmFwaGljc0xheWVyRmFjdG9yeSogV2ViQ2hyb21lQ2xp
ZW50OjpncmFwaGljc0xheWVyRmFjdG9yeSgpIGNvbnN0CiB7Ci0gICAgaWYgKGF1dG8gZHJhd2lu
Z0FyZWEgPSBtX3BhZ2UtPmRyYXdpbmdBcmVhKCkpCisgICAgaWYgKGF1dG8gZHJhd2luZ0FyZWEg
PSBtX3BhZ2UuZHJhd2luZ0FyZWEoKSkKICAgICAgICAgcmV0dXJuIGRyYXdpbmdBcmVhLT5ncmFw
aGljc0xheWVyRmFjdG9yeSgpOwogICAgIHJldHVybiBudWxscHRyOwogfQogCiAjaWYgVVNFKFJF
UVVFU1RfQU5JTUFUSU9OX0ZSQU1FX0RJU1BMQVlfTU9OSVRPUikKKwogUmVmUHRyPFdlYkNvcmU6
OkRpc3BsYXlSZWZyZXNoTW9uaXRvcj4gV2ViQ2hyb21lQ2xpZW50OjpjcmVhdGVEaXNwbGF5UmVm
cmVzaE1vbml0b3IoUGxhdGZvcm1EaXNwbGF5SUQgZGlzcGxheUlEKSBjb25zdAogewotICAgIHJl
dHVybiBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPmNyZWF0ZURpc3BsYXlSZWZyZXNoTW9uaXRvcihk
aXNwbGF5SUQpOworICAgIHJldHVybiBtX3BhZ2UuZHJhd2luZ0FyZWEoKS0+Y3JlYXRlRGlzcGxh
eVJlZnJlc2hNb25pdG9yKGRpc3BsYXlJRCk7CiB9CisKICNlbmRpZgogCiB2b2lkIFdlYkNocm9t
ZUNsaWVudDo6YXR0YWNoUm9vdEdyYXBoaWNzTGF5ZXIoRnJhbWUqLCBHcmFwaGljc0xheWVyKiBs
YXllcikKIHsKICAgICBpZiAobGF5ZXIpCi0gICAgICAgIG1fcGFnZS0+ZW50ZXJBY2NlbGVyYXRl
ZENvbXBvc2l0aW5nTW9kZShsYXllcik7CisgICAgICAgIG1fcGFnZS5lbnRlckFjY2VsZXJhdGVk
Q29tcG9zaXRpbmdNb2RlKGxheWVyKTsKICAgICBlbHNlCi0gICAgICAgIG1fcGFnZS0+ZXhpdEFj
Y2VsZXJhdGVkQ29tcG9zaXRpbmdNb2RlKCk7CisgICAgICAgIG1fcGFnZS5leGl0QWNjZWxlcmF0
ZWRDb21wb3NpdGluZ01vZGUoKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmF0dGFjaFZp
ZXdPdmVybGF5R3JhcGhpY3NMYXllcihGcmFtZSogZnJhbWUsIEdyYXBoaWNzTGF5ZXIqIGdyYXBo
aWNzTGF5ZXIpCiB7Ci0gICAgaWYgKGF1dG8gZHJhd2luZ0FyZWEgPSBtX3BhZ2UtPmRyYXdpbmdB
cmVhKCkpCisgICAgaWYgKGF1dG8gZHJhd2luZ0FyZWEgPSBtX3BhZ2UuZHJhd2luZ0FyZWEoKSkK
ICAgICAgICAgZHJhd2luZ0FyZWEtPmF0dGFjaFZpZXdPdmVybGF5R3JhcGhpY3NMYXllcihmcmFt
ZSwgZ3JhcGhpY3NMYXllcik7CiB9CiAKQEAgLTg2MiwxMjggKzg3NiwxMzYgQEAgdm9pZCBXZWJD
aHJvbWVDbGllbnQ6OnNldE5lZWRzT25lU2hvdERyYXdpbmdTeW5jaHJvbml6YXRpb24oKQogCiB2
b2lkIFdlYkNocm9tZUNsaWVudDo6c2NoZWR1bGVDb21wb3NpdGluZ0xheWVyRmx1c2goKQogewot
ICAgIGlmIChtX3BhZ2UtPmRyYXdpbmdBcmVhKCkpCi0gICAgICAgIG1fcGFnZS0+ZHJhd2luZ0Fy
ZWEoKS0+c2NoZWR1bGVDb21wb3NpdGluZ0xheWVyRmx1c2goKTsKKyAgICBpZiAobV9wYWdlLmRy
YXdpbmdBcmVhKCkpCisgICAgICAgIG1fcGFnZS5kcmF3aW5nQXJlYSgpLT5zY2hlZHVsZUNvbXBv
c2l0aW5nTGF5ZXJGbHVzaCgpOwogfQogCiBib29sIFdlYkNocm9tZUNsaWVudDo6YWRqdXN0TGF5
ZXJGbHVzaFRocm90dGxpbmcoV2ViQ29yZTo6TGF5ZXJGbHVzaFRocm90dGxlU3RhdGU6OkZsYWdz
IGZsYWdzKQogewotICAgIHJldHVybiBtX3BhZ2UtPmRyYXdpbmdBcmVhKCkgJiYgbV9wYWdlLT5k
cmF3aW5nQXJlYSgpLT5hZGp1c3RMYXllckZsdXNoVGhyb3R0bGluZyhmbGFncyk7CisgICAgcmV0
dXJuIG1fcGFnZS5kcmF3aW5nQXJlYSgpICYmIG1fcGFnZS5kcmF3aW5nQXJlYSgpLT5hZGp1c3RM
YXllckZsdXNoVGhyb3R0bGluZyhmbGFncyk7CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50Ojps
YXllclRyZWVTdGF0ZUlzRnJvemVuKCkgY29uc3QKIHsKLSAgICBpZiAobV9wYWdlLT5kcmF3aW5n
QXJlYSgpKQotICAgICAgICByZXR1cm4gbV9wYWdlLT5kcmF3aW5nQXJlYSgpLT5sYXllclRyZWVT
dGF0ZUlzRnJvemVuKCk7CisgICAgaWYgKG1fcGFnZS5kcmF3aW5nQXJlYSgpKQorICAgICAgICBy
ZXR1cm4gbV9wYWdlLmRyYXdpbmdBcmVhKCktPmxheWVyVHJlZVN0YXRlSXNGcm96ZW4oKTsKIAog
ICAgIHJldHVybiBmYWxzZTsKIH0KIAogI2lmIEVOQUJMRShBU1lOQ19TQ1JPTExJTkcpCisKIFBh
c3NSZWZQdHI8U2Nyb2xsaW5nQ29vcmRpbmF0b3I+IFdlYkNocm9tZUNsaWVudDo6Y3JlYXRlU2Ny
b2xsaW5nQ29vcmRpbmF0b3IoUGFnZSogcGFnZSkgY29uc3QKIHsKLSAgICBBU1NFUlQobV9wYWdl
LT5jb3JlUGFnZSgpID09IHBhZ2UpOwotICAgIGlmIChtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPnR5
cGUoKSA9PSBEcmF3aW5nQXJlYVR5cGVSZW1vdGVMYXllclRyZWUpCi0gICAgICAgIHJldHVybiBS
ZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvcjo6Y3JlYXRlKG1fcGFnZSk7Ci0KLSAgICByZXR1cm4g
MDsKKyAgICBBU1NFUlQobV9wYWdlLmNvcmVQYWdlKCkgPT0gcGFnZSk7CisgICAgaWYgKG1fcGFn
ZS5kcmF3aW5nQXJlYSgpLT50eXBlKCkgIT0gRHJhd2luZ0FyZWFUeXBlUmVtb3RlTGF5ZXJUcmVl
KQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICByZXR1cm4gUmVtb3RlU2Nyb2xsaW5nQ29v
cmRpbmF0b3I6OmNyZWF0ZSgmbV9wYWdlKTsKIH0KKwogI2VuZGlmCiAKICNpZiAoUExBVEZPUk0o
SU9TKSAmJiBIQVZFKEFWS0lUKSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BS
RVNFTlRBVElPTl9NT0RFKSkKKwogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnN1cHBvcnRzVmlkZW9G
dWxsc2NyZWVuKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVu
TW9kZSBtb2RlKQogewotICAgIHJldHVybiBtX3BhZ2UtPnZpZGVvRnVsbHNjcmVlbk1hbmFnZXIo
KS5zdXBwb3J0c1ZpZGVvRnVsbHNjcmVlbihtb2RlKTsKKyAgICByZXR1cm4gbV9wYWdlLnZpZGVv
RnVsbHNjcmVlbk1hbmFnZXIoKS5zdXBwb3J0c1ZpZGVvRnVsbHNjcmVlbihtb2RlKTsKIH0KIAog
dm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNldFVwUGxheWJhY2tDb250cm9sc01hbmFnZXIoV2ViQ29y
ZTo6SFRNTE1lZGlhRWxlbWVudCYgbWVkaWFFbGVtZW50KQogewotICAgIG1fcGFnZS0+cGxheWJh
Y2tTZXNzaW9uTWFuYWdlcigpLnNldFVwUGxheWJhY2tDb250cm9sc01hbmFnZXIobWVkaWFFbGVt
ZW50KTsKKyAgICBtX3BhZ2UucGxheWJhY2tTZXNzaW9uTWFuYWdlcigpLnNldFVwUGxheWJhY2tD
b250cm9sc01hbmFnZXIobWVkaWFFbGVtZW50KTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6
OmNsZWFyUGxheWJhY2tDb250cm9sc01hbmFnZXIoKQogewotICAgIG1fcGFnZS0+cGxheWJhY2tT
ZXNzaW9uTWFuYWdlcigpLmNsZWFyUGxheWJhY2tDb250cm9sc01hbmFnZXIoKTsKKyAgICBtX3Bh
Z2UucGxheWJhY2tTZXNzaW9uTWFuYWdlcigpLmNsZWFyUGxheWJhY2tDb250cm9sc01hbmFnZXIo
KTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlk
ZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmIHZpZGVvRWxlbWVudCwgV2ViQ29y
ZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIG1vZGUpCiB7CiAg
ICAgQVNTRVJUKG1vZGUgIT0gSFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5N
b2RlTm9uZSk7Ci0gICAgbV9wYWdlLT52aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyKCkuZW50ZXJWaWRl
b0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQodmlkZW9FbGVtZW50LCBtb2RlKTsKKyAgICBtX3Bh
Z2UudmlkZW9GdWxsc2NyZWVuTWFuYWdlcigpLmVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9F
bGVtZW50KHZpZGVvRWxlbWVudCwgbW9kZSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpl
eGl0VmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1l
bnQmIHZpZGVvRWxlbWVudCkKIHsKLSAgICBtX3BhZ2UtPnZpZGVvRnVsbHNjcmVlbk1hbmFnZXIo
KS5leGl0VmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KHZpZGVvRWxlbWVudCk7CisgICAg
bV9wYWdlLnZpZGVvRnVsbHNjcmVlbk1hbmFnZXIoKS5leGl0VmlkZW9GdWxsc2NyZWVuRm9yVmlk
ZW9FbGVtZW50KHZpZGVvRWxlbWVudCk7CiB9CiAKKyNlbmRpZgorCiAjaWYgUExBVEZPUk0oTUFD
KSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCisKIHZvaWQgV2ViQ2hyb21lQ2xp
ZW50OjpleGl0VmlkZW9GdWxsc2NyZWVuVG9Nb2RlV2l0aG91dEFuaW1hdGlvbihXZWJDb3JlOjpI
VE1MVmlkZW9FbGVtZW50JiB2aWRlb0VsZW1lbnQsIEhUTUxNZWRpYUVsZW1lbnRFbnVtczo6Vmlk
ZW9GdWxsc2NyZWVuTW9kZSB0YXJnZXRNb2RlKQogewotICAgIG1fcGFnZS0+dmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlcigpLmV4aXRWaWRlb0Z1bGxzY3JlZW5Ub01vZGVXaXRob3V0QW5pbWF0aW9uKHZp
ZGVvRWxlbWVudCwgdGFyZ2V0TW9kZSk7CisgICAgbV9wYWdlLnZpZGVvRnVsbHNjcmVlbk1hbmFn
ZXIoKS5leGl0VmlkZW9GdWxsc2NyZWVuVG9Nb2RlV2l0aG91dEFuaW1hdGlvbih2aWRlb0VsZW1l
bnQsIHRhcmdldE1vZGUpOwogfQotI2VuZGlmCiAKICNlbmRpZgotICAgIAorCiAjaWYgRU5BQkxF
KEZVTExTQ1JFRU5fQVBJKQorCiBib29sIFdlYkNocm9tZUNsaWVudDo6c3VwcG9ydHNGdWxsU2Ny
ZWVuRm9yRWxlbWVudChjb25zdCBXZWJDb3JlOjpFbGVtZW50KiwgYm9vbCB3aXRoS2V5Ym9hcmQp
CiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+ZnVsbFNjcmVlbk1hbmFnZXIoKS0+c3VwcG9ydHNGdWxs
U2NyZWVuKHdpdGhLZXlib2FyZCk7CisgICAgcmV0dXJuIG1fcGFnZS5mdWxsU2NyZWVuTWFuYWdl
cigpLT5zdXBwb3J0c0Z1bGxTY3JlZW4od2l0aEtleWJvYXJkKTsKIH0KIAogdm9pZCBXZWJDaHJv
bWVDbGllbnQ6OmVudGVyRnVsbFNjcmVlbkZvckVsZW1lbnQoV2ViQ29yZTo6RWxlbWVudCogZWxl
bWVudCkKIHsKLSAgICBtX3BhZ2UtPmZ1bGxTY3JlZW5NYW5hZ2VyKCktPmVudGVyRnVsbFNjcmVl
bkZvckVsZW1lbnQoZWxlbWVudCk7CisgICAgbV9wYWdlLmZ1bGxTY3JlZW5NYW5hZ2VyKCktPmVu
dGVyRnVsbFNjcmVlbkZvckVsZW1lbnQoZWxlbWVudCk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xp
ZW50OjpleGl0RnVsbFNjcmVlbkZvckVsZW1lbnQoV2ViQ29yZTo6RWxlbWVudCogZWxlbWVudCkK
IHsKLSAgICBtX3BhZ2UtPmZ1bGxTY3JlZW5NYW5hZ2VyKCktPmV4aXRGdWxsU2NyZWVuRm9yRWxl
bWVudChlbGVtZW50KTsKKyAgICBtX3BhZ2UuZnVsbFNjcmVlbk1hbmFnZXIoKS0+ZXhpdEZ1bGxT
Y3JlZW5Gb3JFbGVtZW50KGVsZW1lbnQpOwogfQorCiAjZW5kaWYKIAogI2lmIFBMQVRGT1JNKElP
UykKKwogRmxvYXRTaXplIFdlYkNocm9tZUNsaWVudDo6c2NyZWVuU2l6ZSgpIGNvbnN0CiB7Ci0g
ICAgcmV0dXJuIG1fcGFnZS0+c2NyZWVuU2l6ZSgpOworICAgIHJldHVybiBtX3BhZ2Uuc2NyZWVu
U2l6ZSgpOwogfQogCiBGbG9hdFNpemUgV2ViQ2hyb21lQ2xpZW50OjphdmFpbGFibGVTY3JlZW5T
aXplKCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5hdmFpbGFibGVTY3JlZW5TaXplKCk7
CisgICAgcmV0dXJuIG1fcGFnZS5hdmFpbGFibGVTY3JlZW5TaXplKCk7CiB9CisKICNlbmRpZgog
CiB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZGlzcGF0Y2hWaWV3cG9ydFByb3BlcnRpZXNEaWRDaGFu
Z2UoY29uc3QgVmlld3BvcnRBcmd1bWVudHMmIHZpZXdwb3J0QXJndW1lbnRzKSBjb25zdAogewot
ICAgIG1fcGFnZS0+dmlld3BvcnRQcm9wZXJ0aWVzRGlkQ2hhbmdlKHZpZXdwb3J0QXJndW1lbnRz
KTsKKyAgICBtX3BhZ2Uudmlld3BvcnRQcm9wZXJ0aWVzRGlkQ2hhbmdlKHZpZXdwb3J0QXJndW1l
bnRzKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6Om5vdGlmeVNjcm9sbGVyVGh1bWJJc1Zp
c2libGVJblJlY3QoY29uc3QgSW50UmVjdCYgc2Nyb2xsZXJUaHVtYikKIHsKLSAgICBtX3BhZ2Ut
PnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6Tm90aWZ5U2Nyb2xsZXJUaHVtYklzVmlzaWJs
ZUluUmVjdChzY3JvbGxlclRodW1iKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6Tm90aWZ5U2Nyb2xsZXJUaHVtYklzVmlzaWJsZUluUmVjdChzY3JvbGxlclRodW1i
KSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpyZWNvbW1lbmRlZFNjcm9sbGJhclN0eWxl
RGlkQ2hhbmdlKFNjcm9sbGJhclN0eWxlIG5ld1N0eWxlKQogewotICAgIG1fcGFnZS0+c2VuZChN
ZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZWNvbW1lbmRlZFNjcm9sbGJhclN0eWxlRGlkQ2hhbmdl
KHN0YXRpY19jYXN0PGludDMyX3Q+KG5ld1N0eWxlKSkpOworICAgIG1fcGFnZS5zZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OlJlY29tbWVuZGVkU2Nyb2xsYmFyU3R5bGVEaWRDaGFuZ2Uoc3Rh
dGljX2Nhc3Q8aW50MzJfdD4obmV3U3R5bGUpKSk7CiB9CiAKIHN0ZDo6b3B0aW9uYWw8U2Nyb2xs
YmFyT3ZlcmxheVN0eWxlPiBXZWJDaHJvbWVDbGllbnQ6OnByZWZlcnJlZFNjcm9sbGJhck92ZXJs
YXlTdHlsZSgpCiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+c2Nyb2xsYmFyT3ZlcmxheVN0eWxlKCk7
IAorICAgIHJldHVybiBtX3BhZ2Uuc2Nyb2xsYmFyT3ZlcmxheVN0eWxlKCk7CiB9CiAKIENvbG9y
IFdlYkNocm9tZUNsaWVudDo6dW5kZXJsYXlDb2xvcigpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1f
cGFnZS0+dW5kZXJsYXlDb2xvcigpOworICAgIHJldHVybiBtX3BhZ2UudW5kZXJsYXlDb2xvcigp
OwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6cGFnZUV4dGVuZGVkQmFja2dyb3VuZENvbG9y
RGlkQ2hhbmdlKENvbG9yIGJhY2tncm91bmRDb2xvcikgY29uc3QKIHsKICNpZiBQTEFURk9STShN
QUMpIHx8IFBMQVRGT1JNKEVGTCkKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6UGFnZUV4dGVuZGVkQmFja2dyb3VuZENvbG9yRGlkQ2hhbmdlKGJhY2tncm91bmRDb2xv
cikpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlBhZ2VFeHRlbmRl
ZEJhY2tncm91bmRDb2xvckRpZENoYW5nZShiYWNrZ3JvdW5kQ29sb3IpKTsKICNlbHNlCiAgICAg
VU5VU0VEX1BBUkFNKGJhY2tncm91bmRDb2xvcik7CiAjZW5kaWYKQEAgLTk5MSw0MyArMTAxMyw0
MyBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6cGFnZUV4dGVuZGVkQmFja2dyb3VuZENvbG9yRGlk
Q2hhbmdlKENvbG9yIGJhY2tncm91bmRDb2xvcgogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6d2hl
ZWxFdmVudEhhbmRsZXJzQ2hhbmdlZChib29sIGhhc0hhbmRsZXJzKQogewotICAgIG1fcGFnZS0+
d2hlZWxFdmVudEhhbmRsZXJzQ2hhbmdlZChoYXNIYW5kbGVycyk7CisgICAgbV9wYWdlLndoZWVs
RXZlbnRIYW5kbGVyc0NoYW5nZWQoaGFzSGFuZGxlcnMpOwogfQogCiBTdHJpbmcgV2ViQ2hyb21l
Q2xpZW50OjpwbHVnSW5TdGFydExhYmVsVGl0bGUoY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkgY29u
c3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkucGx1Z0lu
U3RhcnRMYWJlbFRpdGxlKG1pbWVUeXBlKTsKKyAgICByZXR1cm4gbV9wYWdlLmluamVjdGVkQnVu
ZGxlVUlDbGllbnQoKS5wbHVnSW5TdGFydExhYmVsVGl0bGUobWltZVR5cGUpOwogfQogCiBTdHJp
bmcgV2ViQ2hyb21lQ2xpZW50OjpwbHVnSW5TdGFydExhYmVsU3VidGl0bGUoY29uc3QgU3RyaW5n
JiBtaW1lVHlwZSkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJ
Q2xpZW50KCkucGx1Z0luU3RhcnRMYWJlbFN1YnRpdGxlKG1pbWVUeXBlKTsKKyAgICByZXR1cm4g
bV9wYWdlLmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5wbHVnSW5TdGFydExhYmVsU3VidGl0bGUo
bWltZVR5cGUpOwogfQogCiBTdHJpbmcgV2ViQ2hyb21lQ2xpZW50OjpwbHVnSW5FeHRyYVN0eWxl
U2hlZXQoKSBjb25zdAogewotICAgIHJldHVybiBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGll
bnQoKS5wbHVnSW5FeHRyYVN0eWxlU2hlZXQoKTsKKyAgICByZXR1cm4gbV9wYWdlLmluamVjdGVk
QnVuZGxlVUlDbGllbnQoKS5wbHVnSW5FeHRyYVN0eWxlU2hlZXQoKTsKIH0KIAogU3RyaW5nIFdl
YkNocm9tZUNsaWVudDo6cGx1Z0luRXh0cmFTY3JpcHQoKSBjb25zdAogewotICAgIHJldHVybiBt
X3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5wbHVnSW5FeHRyYVNjcmlwdCgpOworICAg
IHJldHVybiBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLnBsdWdJbkV4dHJhU2NyaXB0
KCk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjplbmFibGVTdWRkZW5UZXJtaW5hdGlvbigp
CiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQcm9jZXNzUHJveHk6OkVuYWJsZVN1
ZGRlblRlcm1pbmF0aW9uKCkpOworICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQcm9jZXNz
UHJveHk6OkVuYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNs
aWVudDo6ZGlzYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVz
c2FnZXM6OldlYlByb2Nlc3NQcm94eTo6RGlzYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkpOworICAg
IG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQcm9jZXNzUHJveHk6OkRpc2FibGVTdWRkZW5UZXJt
aW5hdGlvbigpKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmRpZEFkZEhlYWRlckxheWVy
KEdyYXBoaWNzTGF5ZXIqIGhlYWRlclBhcmVudCkKIHsKICNpZiBFTkFCTEUoUlVCQkVSX0JBTkRJ
TkcpCi0gICAgaWYgKFBhZ2VCYW5uZXIqIGJhbm5lciA9IG1fcGFnZS0+aGVhZGVyUGFnZUJhbm5l
cigpKQorICAgIGlmIChQYWdlQmFubmVyKiBiYW5uZXIgPSBtX3BhZ2UuaGVhZGVyUGFnZUJhbm5l
cigpKQogICAgICAgICBiYW5uZXItPmRpZEFkZFBhcmVudExheWVyKGhlYWRlclBhcmVudCk7CiAj
ZWxzZQogICAgIFVOVVNFRF9QQVJBTShoZWFkZXJQYXJlbnQpOwpAQCAtMTAzNyw3ICsxMDU5LDcg
QEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmRpZEFkZEhlYWRlckxheWVyKEdyYXBoaWNzTGF5ZXIq
IGhlYWRlclBhcmVudCkKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpkaWRBZGRGb290ZXJMYXllcihH
cmFwaGljc0xheWVyKiBmb290ZXJQYXJlbnQpCiB7CiAjaWYgRU5BQkxFKFJVQkJFUl9CQU5ESU5H
KQotICAgIGlmIChQYWdlQmFubmVyKiBiYW5uZXIgPSBtX3BhZ2UtPmZvb3RlclBhZ2VCYW5uZXIo
KSkKKyAgICBpZiAoUGFnZUJhbm5lciogYmFubmVyID0gbV9wYWdlLmZvb3RlclBhZ2VCYW5uZXIo
KSkKICAgICAgICAgYmFubmVyLT5kaWRBZGRQYXJlbnRMYXllcihmb290ZXJQYXJlbnQpOwogI2Vs
c2UKICAgICBVTlVTRURfUEFSQU0oZm9vdGVyUGFyZW50KTsKQEAgLTEwNDYsMzYgKzEwNjgsMzkg
QEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmRpZEFkZEZvb3RlckxheWVyKEdyYXBoaWNzTGF5ZXIq
IGZvb3RlclBhcmVudCkKIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnNob3VsZFVzZVRpbGVkQmFj
a2luZ0ZvckZyYW1lVmlldyhjb25zdCBGcmFtZVZpZXcqIGZyYW1lVmlldykgY29uc3QKIHsKLSAg
ICByZXR1cm4gbV9wYWdlLT5kcmF3aW5nQXJlYSgpLT5zaG91bGRVc2VUaWxlZEJhY2tpbmdGb3JG
cmFtZVZpZXcoZnJhbWVWaWV3KTsKKyAgICByZXR1cm4gbV9wYWdlLmRyYXdpbmdBcmVhKCktPnNo
b3VsZFVzZVRpbGVkQmFja2luZ0ZvckZyYW1lVmlldyhmcmFtZVZpZXcpOwogfQogCiB2b2lkIFdl
YkNocm9tZUNsaWVudDo6aXNQbGF5aW5nTWVkaWFEaWRDaGFuZ2UoV2ViQ29yZTo6TWVkaWFQcm9k
dWNlcjo6TWVkaWFTdGF0ZUZsYWdzIHN0YXRlLCB1aW50NjRfdCBzb3VyY2VFbGVtZW50SUQpCiB7
Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OklzUGxheWluZ01lZGlh
RGlkQ2hhbmdlKHN0YXRlLCBzb3VyY2VFbGVtZW50SUQpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpJc1BsYXlpbmdNZWRpYURpZENoYW5nZShzdGF0ZSwgc291cmNl
RWxlbWVudElEKSk7CiB9CiAKICNpZiBFTkFCTEUoTUVESUFfU0VTU0lPTikKKwogdm9pZCBXZWJD
aHJvbWVDbGllbnQ6Omhhc01lZGlhU2Vzc2lvbldpdGhBY3RpdmVNZWRpYUVsZW1lbnRzRGlkQ2hh
bmdlKGJvb2wgc3RhdGUpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6Okhhc01lZGlhU2Vzc2lvbldpdGhBY3RpdmVNZWRpYUVsZW1lbnRzRGlkQ2hhbmdlKHN0YXRl
KSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6SGFzTWVkaWFTZXNz
aW9uV2l0aEFjdGl2ZU1lZGlhRWxlbWVudHNEaWRDaGFuZ2Uoc3RhdGUpKTsKIH0KIAogdm9pZCBX
ZWJDaHJvbWVDbGllbnQ6Om1lZGlhU2Vzc2lvbk1ldGFkYXRhRGlkQ2hhbmdlKGNvbnN0IFdlYkNv
cmU6Ok1lZGlhU2Vzc2lvbk1ldGFkYXRhJiBtZXRhZGF0YSkKIHsKLSAgICBtX3BhZ2UtPnNlbmQo
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6TWVkaWFTZXNzaW9uTWV0YWRhdGFEaWRDaGFuZ2UobWV0
YWRhdGEpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpNZWRpYVNl
c3Npb25NZXRhZGF0YURpZENoYW5nZShtZXRhZGF0YSkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNs
aWVudDo6Zm9jdXNlZENvbnRlbnRNZWRpYUVsZW1lbnREaWRDaGFuZ2UodWludDY0X3QgZWxlbWVu
dElEKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpGb2N1c2Vk
Q29udGVudE1lZGlhRWxlbWVudERpZENoYW5nZShlbGVtZW50SUQpKTsKKyAgICBtX3BhZ2Uuc2Vu
ZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpGb2N1c2VkQ29udGVudE1lZGlhRWxlbWVudERpZENo
YW5nZShlbGVtZW50SUQpKTsKIH0KKwogI2VuZGlmCiAKICNpZiBFTkFCTEUoU1VCVExFX0NSWVBU
TykKKwogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OndyYXBDcnlwdG9LZXkoY29uc3QgVmVjdG9yPHVp
bnQ4X3Q+JiBrZXksIFZlY3Rvcjx1aW50OF90PiYgd3JhcHBlZEtleSkgY29uc3QKIHsKICAgICBi
b29sIHN1Y2NlZWRlZDsKLSAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFBy
b2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OldyYXBD
cnlwdG9LZXkoa2V5KSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6V3JhcENyeXB0b0tleTo6UmVw
bHkoc3VjY2VlZGVkLCB3cmFwcGVkS2V5KSwgbV9wYWdlLT5wYWdlSUQoKSkpCisgICAgaWYgKCFX
ZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3lu
YyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpXcmFwQ3J5cHRvS2V5KGtleSksIE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OldyYXBDcnlwdG9LZXk6OlJlcGx5KHN1Y2NlZWRlZCwgd3JhcHBlZEtleSks
IG1fcGFnZS5wYWdlSUQoKSkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICByZXR1cm4gc3Vj
Y2VlZGVkOwogfQpAQCAtMTA4MywzNCArMTEwOCwzOSBAQCBib29sIFdlYkNocm9tZUNsaWVudDo6
d3JhcENyeXB0b0tleShjb25zdCBWZWN0b3I8dWludDhfdD4mIGtleSwgVmVjdG9yPHVpbnQ4X3Q+
JgogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnVud3JhcENyeXB0b0tleShjb25zdCBWZWN0b3I8dWlu
dDhfdD4mIHdyYXBwZWRLZXksIFZlY3Rvcjx1aW50OF90PiYga2V5KSBjb25zdAogewogICAgIGJv
b2wgc3VjY2VlZGVkOwotICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJv
Y2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6VW53cmFw
Q3J5cHRvS2V5KHdyYXBwZWRLZXkpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpVbndyYXBDcnlw
dG9LZXk6OlJlcGx5KHN1Y2NlZWRlZCwga2V5KSwgbV9wYWdlLT5wYWdlSUQoKSkpCisgICAgaWYg
KCFXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5k
U3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpVbndyYXBDcnlwdG9LZXkod3JhcHBlZEtleSks
IE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlVud3JhcENyeXB0b0tleTo6UmVwbHkoc3VjY2VlZGVk
LCBrZXkpLCBtX3BhZ2UucGFnZUlEKCkpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgcmV0
dXJuIHN1Y2NlZWRlZDsKIH0KKwogI2VuZGlmCiAKICNpZiBFTkFCTEUoVEVMRVBIT05FX05VTUJF
Ul9ERVRFQ1RJT04pICYmIFBMQVRGT1JNKE1BQykKKwogdm9pZCBXZWJDaHJvbWVDbGllbnQ6Omhh
bmRsZVRlbGVwaG9uZU51bWJlckNsaWNrKGNvbnN0IFN0cmluZyYgbnVtYmVyLCBjb25zdCBXZWJD
b3JlOjpJbnRQb2ludCYgcG9pbnQpCiB7Ci0gICAgbV9wYWdlLT5oYW5kbGVUZWxlcGhvbmVOdW1i
ZXJDbGljayhudW1iZXIsIHBvaW50KTsKKyAgICBtX3BhZ2UuaGFuZGxlVGVsZXBob25lTnVtYmVy
Q2xpY2sobnVtYmVyLCBwb2ludCk7CiB9CisKICNlbmRpZgogCiAjaWYgRU5BQkxFKFNFUlZJQ0Vf
Q09OVFJPTFMpCisKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpoYW5kbGVTZWxlY3Rpb25TZXJ2aWNl
Q2xpY2soV2ViQ29yZTo6RnJhbWVTZWxlY3Rpb24mIHNlbGVjdGlvbiwgY29uc3QgVmVjdG9yPFN0
cmluZz4mIHRlbGVwaG9uZU51bWJlcnMsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBwb2ludCkK
IHsKLSAgICBtX3BhZ2UtPmhhbmRsZVNlbGVjdGlvblNlcnZpY2VDbGljayhzZWxlY3Rpb24sIHRl
bGVwaG9uZU51bWJlcnMsIHBvaW50KTsKKyAgICBtX3BhZ2UuaGFuZGxlU2VsZWN0aW9uU2Vydmlj
ZUNsaWNrKHNlbGVjdGlvbiwgdGVsZXBob25lTnVtYmVycywgcG9pbnQpOwogfQogCiBib29sIFdl
YkNocm9tZUNsaWVudDo6aGFzUmVsZXZhbnRTZWxlY3Rpb25TZXJ2aWNlcyhib29sIGlzVGV4dE9u
bHkpIGNvbnN0CiB7CiAgICAgcmV0dXJuIChpc1RleHRPbmx5ICYmIFdlYlByb2Nlc3M6OnNpbmds
ZXRvbigpLmhhc1NlbGVjdGlvblNlcnZpY2VzKCkpIHx8IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigp
Lmhhc1JpY2hDb250ZW50U2VydmljZXMoKTsKIH0KKwogI2VuZGlmCiAKIGJvb2wgV2ViQ2hyb21l
Q2xpZW50OjpzaG91bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHMoKSBjb25zdAogewotICAg
IHJldHVybiBtX3BhZ2UtPnNob3VsZERpc3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50cygpOworICAg
IHJldHVybiBtX3BhZ2Uuc2hvdWxkRGlzcGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKCk7CiB9CiAK
IHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpoYW5kbGVBdXRvRmlsbEJ1dHRvbkNsaWNrKEhUTUxJbnB1
dEVsZW1lbnQmIGlucHV0RWxlbWVudCkKQEAgLTExMTksNjQgKzExNDksNjUgQEAgdm9pZCBXZWJD
aHJvbWVDbGllbnQ6OmhhbmRsZUF1dG9GaWxsQnV0dG9uQ2xpY2soSFRNTElucHV0RWxlbWVudCYg
aW5wdXRFbGVtZW50KQogCiAgICAgLy8gTm90aWZ5IHRoZSBidW5kbGUgY2xpZW50LgogICAgIGF1
dG8gbm9kZUhhbmRsZSA9IEluamVjdGVkQnVuZGxlTm9kZUhhbmRsZTo6Z2V0T3JDcmVhdGUoaW5w
dXRFbGVtZW50KTsKLSAgICBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5kaWRDbGlj
a0F1dG9GaWxsQnV0dG9uKCptX3BhZ2UsIG5vZGVIYW5kbGUuZ2V0KCksIHVzZXJEYXRhKTsKKyAg
ICBtX3BhZ2UuaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpLmRpZENsaWNrQXV0b0ZpbGxCdXR0b24o
bV9wYWdlLCBub2RlSGFuZGxlLmdldCgpLCB1c2VyRGF0YSk7CiAKICAgICAvLyBOb3RpZnkgdGhl
IFVJUHJvY2Vzcy4KLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6SGFu
ZGxlQXV0b0ZpbGxCdXR0b25DbGljayhVc2VyRGF0YShXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS50
cmFuc2Zvcm1PYmplY3RzVG9IYW5kbGVzKHVzZXJEYXRhLmdldCgpKS5nZXQoKSkpKTsKKyAgICBt
X3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpIYW5kbGVBdXRvRmlsbEJ1dHRvbkNs
aWNrKFVzZXJEYXRhKFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnRyYW5zZm9ybU9iamVjdHNUb0hh
bmRsZXModXNlckRhdGEuZ2V0KCkpLmdldCgpKSkpOwogfQogCiAjaWYgRU5BQkxFKFdJUkVMRVNT
X1BMQVlCQUNLX1RBUkdFVCkgJiYgIVBMQVRGT1JNKElPUykKKwogdm9pZCBXZWJDaHJvbWVDbGll
bnQ6OmFkZFBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2NF90IGNvbnRleHRJZCkKIHsK
LSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6QWRkUGxheWJhY2tUYXJn
ZXRQaWNrZXJDbGllbnQoY29udGV4dElkKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6Oldl
YlBhZ2VQcm94eTo6QWRkUGxheWJhY2tUYXJnZXRQaWNrZXJDbGllbnQoY29udGV4dElkKSk7CiB9
CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpyZW1vdmVQbGF5YmFja1RhcmdldFBpY2tlckNsaWVu
dCh1aW50NjRfdCBjb250ZXh0SWQpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OlJlbW92ZVBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KGNvbnRleHRJZCkpOwor
ICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJlbW92ZVBsYXliYWNrVGFy
Z2V0UGlja2VyQ2xpZW50KGNvbnRleHRJZCkpOwogfQogCi0KIHZvaWQgV2ViQ2hyb21lQ2xpZW50
OjpzaG93UGxheWJhY2tUYXJnZXRQaWNrZXIodWludDY0X3QgY29udGV4dElkLCBjb25zdCBXZWJD
b3JlOjpJbnRQb2ludCYgcG9zaXRpb24sIGJvb2wgaXNWaWRlbykKIHsKLSAgICBGcmFtZVZpZXcq
IGZyYW1lVmlldyA9IG1fcGFnZS0+bWFpbkZyYW1lKCktPnZpZXcoKTsKKyAgICBGcmFtZVZpZXcq
IGZyYW1lVmlldyA9IG1fcGFnZS5tYWluRnJhbWUoKS0+dmlldygpOwogICAgIEZsb2F0UmVjdCBy
ZWN0KGZyYW1lVmlldy0+Y29udGVudHNUb1Jvb3RWaWV3KGZyYW1lVmlldy0+d2luZG93VG9Db250
ZW50cyhwb3NpdGlvbikpLCBGbG9hdFNpemUoKSk7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6OlNob3dQbGF5YmFja1RhcmdldFBpY2tlcihjb250ZXh0SWQsIHJlY3Qs
IGlzVmlkZW8pKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTaG93
UGxheWJhY2tUYXJnZXRQaWNrZXIoY29udGV4dElkLCByZWN0LCBpc1ZpZGVvKSk7CiB9CiAKIHZv
aWQgV2ViQ2hyb21lQ2xpZW50OjpwbGF5YmFja1RhcmdldFBpY2tlckNsaWVudFN0YXRlRGlkQ2hh
bmdlKHVpbnQ2NF90IGNvbnRleHRJZCwgV2ViQ29yZTo6TWVkaWFQcm9kdWNlcjo6TWVkaWFTdGF0
ZUZsYWdzIHN0YXRlKQogewotICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjpQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudFN0YXRlRGlkQ2hhbmdlKGNvbnRleHRJZCwgc3Rh
dGUpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQbGF5YmFja1Rh
cmdldFBpY2tlckNsaWVudFN0YXRlRGlkQ2hhbmdlKGNvbnRleHRJZCwgc3RhdGUpKTsKIH0KIAog
dm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNldE1vY2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyRW5h
YmxlZChib29sIGVuYWJsZWQpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OlNldE1vY2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyRW5hYmxlZChlbmFibGVkKSk7
CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0TW9ja01lZGlhUGxh
eWJhY2tUYXJnZXRQaWNrZXJFbmFibGVkKGVuYWJsZWQpKTsKIH0KIAogdm9pZCBXZWJDaHJvbWVD
bGllbnQ6OnNldE1vY2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyU3RhdGUoY29uc3QgU3RyaW5n
JiBuYW1lLCBXZWJDb3JlOjpNZWRpYVBsYXliYWNrVGFyZ2V0Q29udGV4dDo6U3RhdGUgc3RhdGUp
CiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldE1vY2tNZWRp
YVBsYXliYWNrVGFyZ2V0UGlja2VyU3RhdGUobmFtZSwgc3RhdGUpKTsKKyAgICBtX3BhZ2Uuc2Vu
ZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tl
clN0YXRlKG5hbWUsIHN0YXRlKSk7CiB9CisKICNlbmRpZgogCiB2b2lkIFdlYkNocm9tZUNsaWVu
dDo6aW1hZ2VPck1lZGlhRG9jdW1lbnRTaXplQ2hhbmdlZChjb25zdCBXZWJDb3JlOjpJbnRTaXpl
JiBuZXdTaXplKQogewotICAgIG1fcGFnZS0+aW1hZ2VPck1lZGlhRG9jdW1lbnRTaXplQ2hhbmdl
ZChuZXdTaXplKTsKKyAgICBtX3BhZ2UuaW1hZ2VPck1lZGlhRG9jdW1lbnRTaXplQ2hhbmdlZChu
ZXdTaXplKTsKIH0KIAotI2lmIEVOQUJMRShWSURFTykKLSNpZiBVU0UoR1NUUkVBTUVSKQorI2lm
IEVOQUJMRShWSURFTykgJiYgVVNFKEdTVFJFQU1FUikKKwogdm9pZCBXZWJDaHJvbWVDbGllbnQ6
OnJlcXVlc3RJbnN0YWxsTWlzc2luZ01lZGlhUGx1Z2lucyhjb25zdCBTdHJpbmcmIGRldGFpbHMs
IGNvbnN0IFN0cmluZyYgZGVzY3JpcHRpb24sIFdlYkNvcmU6Ok1lZGlhUGxheWVyUmVxdWVzdElu
c3RhbGxNaXNzaW5nUGx1Z2luc0NhbGxiYWNrJiBjYWxsYmFjaykKIHsKLSAgICBtX3BhZ2UtPnJl
cXVlc3RJbnN0YWxsTWlzc2luZ01lZGlhUGx1Z2lucyhkZXRhaWxzLCBkZXNjcmlwdGlvbiwgY2Fs
bGJhY2spOworICAgIG1fcGFnZS5yZXF1ZXN0SW5zdGFsbE1pc3NpbmdNZWRpYVBsdWdpbnMoZGV0
YWlscywgZGVzY3JpcHRpb24sIGNhbGxiYWNrKTsKIH0KKwogI2VuZGlmCi0jZW5kaWYgLy8gRU5B
QkxFKFZJREVPKQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZGlkSW52YWxpZGF0ZURvY3VtZW50
TWFya2VyUmVjdHMoKQogewotICAgIG1fcGFnZS0+ZmluZENvbnRyb2xsZXIoKS5kaWRJbnZhbGlk
YXRlRG9jdW1lbnRNYXJrZXJSZWN0cygpOworICAgIG1fcGFnZS5maW5kQ29udHJvbGxlcigpLmRp
ZEludmFsaWRhdGVEb2N1bWVudE1hcmtlclJlY3RzKCk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdl
YktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9XZWJDaHJvbWVDbGllbnQuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmgKaW5kZXggYzg3MWZkNTg5ZGI1ZDM0MjBiZjcwMDk0Yjk3
MzJiNDI5OWUxNGJjMS4uNjRlOGIxNDIyYWExNTRlMjlmODJlZjJlMjE0MTI5MzJhOGY3YzVjMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJD
aHJvbWVDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L1dlYkNocm9tZUNsaWVudC5oCkBAIC0yNiwxOTggKzI2LDE5NiBAQAogCiAjcHJhZ21hIG9u
Y2UKIAotI2luY2x1ZGUgIldlYkZyYW1lLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9DaHJvbWVDbGll
bnQuaD4KLSNpbmNsdWRlIDxXZWJDb3JlL1ZpZXdwb3J0QXJndW1lbnRzLmg+Ci0jaW5jbHVkZSA8
d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCitjbGFzcyBXZWJG
cmFtZTsKIGNsYXNzIFdlYlBhZ2U7CiAKLWNsYXNzIFdlYkNocm9tZUNsaWVudCA6IHB1YmxpYyBX
ZWJDb3JlOjpDaHJvbWVDbGllbnQgeworY2xhc3MgV2ViQ2hyb21lQ2xpZW50IGZpbmFsIDogcHVi
bGljIFdlYkNvcmU6OkNocm9tZUNsaWVudCB7CiBwdWJsaWM6Ci0gICAgV2ViQ2hyb21lQ2xpZW50
KFdlYlBhZ2UqIHBhZ2UpCi0gICAgICAgIDogbV9jYWNoZWRNYWluRnJhbWVIYXNIb3Jpem9udGFs
U2Nyb2xsYmFyKGZhbHNlKQotICAgICAgICAsIG1fY2FjaGVkTWFpbkZyYW1lSGFzVmVydGljYWxT
Y3JvbGxiYXIoZmFsc2UpCi0gICAgICAgICwgbV9wYWdlKHBhZ2UpCi0gICAgewotICAgIH0KLSAg
ICAKLSAgICBXZWJQYWdlKiBwYWdlKCkgY29uc3QgeyByZXR1cm4gbV9wYWdlOyB9CisgICAgV2Vi
Q2hyb21lQ2xpZW50KFdlYlBhZ2UmKTsKIAotICAgIHZpcnR1YWwgdm9pZCogd2ViVmlldygpIGNv
bnN0IHsgcmV0dXJuIDA7IH0KKyAgICBXZWJQYWdlJiBwYWdlKCkgY29uc3QgeyByZXR1cm4gbV9w
YWdlOyB9CiAKIHByaXZhdGU6Ci0gICAgdm9pZCBjaHJvbWVEZXN0cm95ZWQoKSBvdmVycmlkZTsK
KyAgICB+V2ViQ2hyb21lQ2xpZW50KCk7CisKKyAgICB2b2lkIGNocm9tZURlc3Ryb3llZCgpIGZp
bmFsOwogICAgIAotICAgIHZvaWQgc2V0V2luZG93UmVjdChjb25zdCBXZWJDb3JlOjpGbG9hdFJl
Y3QmKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpGbG9hdFJlY3Qgd2luZG93UmVjdCgpIG92ZXJy
aWRlOworICAgIHZvaWQgc2V0V2luZG93UmVjdChjb25zdCBXZWJDb3JlOjpGbG9hdFJlY3QmKSBm
aW5hbDsKKyAgICBXZWJDb3JlOjpGbG9hdFJlY3Qgd2luZG93UmVjdCgpIGZpbmFsOwogICAgIAot
ICAgIFdlYkNvcmU6OkZsb2F0UmVjdCBwYWdlUmVjdCgpIG92ZXJyaWRlOworICAgIFdlYkNvcmU6
OkZsb2F0UmVjdCBwYWdlUmVjdCgpIGZpbmFsOwogICAgIAotICAgIHZvaWQgZm9jdXMoKSBvdmVy
cmlkZTsKLSAgICB2b2lkIHVuZm9jdXMoKSBvdmVycmlkZTsKKyAgICB2b2lkIGZvY3VzKCkgZmlu
YWw7CisgICAgdm9pZCB1bmZvY3VzKCkgZmluYWw7CiAgICAgCi0gICAgYm9vbCBjYW5UYWtlRm9j
dXMoV2ViQ29yZTo6Rm9jdXNEaXJlY3Rpb24pIG92ZXJyaWRlOwotICAgIHZvaWQgdGFrZUZvY3Vz
KFdlYkNvcmU6OkZvY3VzRGlyZWN0aW9uKSBvdmVycmlkZTsKKyAgICBib29sIGNhblRha2VGb2N1
cyhXZWJDb3JlOjpGb2N1c0RpcmVjdGlvbikgZmluYWw7CisgICAgdm9pZCB0YWtlRm9jdXMoV2Vi
Q29yZTo6Rm9jdXNEaXJlY3Rpb24pIGZpbmFsOwogCi0gICAgdm9pZCBmb2N1c2VkRWxlbWVudENo
YW5nZWQoV2ViQ29yZTo6RWxlbWVudCopIG92ZXJyaWRlOwotICAgIHZvaWQgZm9jdXNlZEZyYW1l
Q2hhbmdlZChXZWJDb3JlOjpGcmFtZSopIG92ZXJyaWRlOworICAgIHZvaWQgZm9jdXNlZEVsZW1l
bnRDaGFuZ2VkKFdlYkNvcmU6OkVsZW1lbnQqKSBmaW5hbDsKKyAgICB2b2lkIGZvY3VzZWRGcmFt
ZUNoYW5nZWQoV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKIAogICAgIC8vIFRoZSBGcmFtZSBwb2lu
dGVyIHByb3ZpZGVzIHRoZSBDaHJvbWVDbGllbnQgd2l0aCBjb250ZXh0IGFib3V0IHdoaWNoCiAg
ICAgLy8gRnJhbWUgd2FudHMgdG8gY3JlYXRlIHRoZSBuZXcgUGFnZS4gIEFsc28sIHRoZSBuZXds
eSBjcmVhdGVkIHdpbmRvdwogICAgIC8vIHNob3VsZCBub3QgYmUgc2hvd24gdG8gdGhlIHVzZXIg
dW50aWwgdGhlIENocm9tZUNsaWVudCBvZiB0aGUgbmV3bHkKICAgICAvLyBjcmVhdGVkIFBhZ2Ug
aGFzIGl0cyBzaG93IG1ldGhvZCBjYWxsZWQuCi0gICAgV2ViQ29yZTo6UGFnZSogY3JlYXRlV2lu
ZG93KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgV2ViQ29yZTo6RnJhbWVMb2FkUmVxdWVzdCYsIGNv
bnN0IFdlYkNvcmU6OldpbmRvd0ZlYXR1cmVzJiwgY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFj
dGlvbiYpIG92ZXJyaWRlOwotICAgIHZvaWQgc2hvdygpIG92ZXJyaWRlOworICAgIFdlYkNvcmU6
OlBhZ2UqIGNyZWF0ZVdpbmRvdyhXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFdlYkNvcmU6OkZyYW1l
TG9hZFJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpXaW5kb3dGZWF0dXJlcyYsIGNvbnN0IFdlYkNv
cmU6Ok5hdmlnYXRpb25BY3Rpb24mKSBmaW5hbDsKKyAgICB2b2lkIHNob3coKSBmaW5hbDsKICAg
ICAKLSAgICBib29sIGNhblJ1bk1vZGFsKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBydW5Nb2RhbCgp
IG92ZXJyaWRlOworICAgIGJvb2wgY2FuUnVuTW9kYWwoKSBmaW5hbDsKKyAgICB2b2lkIHJ1bk1v
ZGFsKCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBzZXRUb29sYmFyc1Zpc2libGUoYm9vbCkgb3Zl
cnJpZGU7Ci0gICAgYm9vbCB0b29sYmFyc1Zpc2libGUoKSBvdmVycmlkZTsKKyAgICB2b2lkIHNl
dFRvb2xiYXJzVmlzaWJsZShib29sKSBmaW5hbDsKKyAgICBib29sIHRvb2xiYXJzVmlzaWJsZSgp
IGZpbmFsOwogICAgIAotICAgIHZvaWQgc2V0U3RhdHVzYmFyVmlzaWJsZShib29sKSBvdmVycmlk
ZTsKLSAgICBib29sIHN0YXR1c2JhclZpc2libGUoKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldFN0
YXR1c2JhclZpc2libGUoYm9vbCkgZmluYWw7CisgICAgYm9vbCBzdGF0dXNiYXJWaXNpYmxlKCkg
ZmluYWw7CiAgICAgCi0gICAgdm9pZCBzZXRTY3JvbGxiYXJzVmlzaWJsZShib29sKSBvdmVycmlk
ZTsKLSAgICBib29sIHNjcm9sbGJhcnNWaXNpYmxlKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRT
Y3JvbGxiYXJzVmlzaWJsZShib29sKSBmaW5hbDsKKyAgICBib29sIHNjcm9sbGJhcnNWaXNpYmxl
KCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBzZXRNZW51YmFyVmlzaWJsZShib29sKSBvdmVycmlk
ZTsKLSAgICBib29sIG1lbnViYXJWaXNpYmxlKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRNZW51
YmFyVmlzaWJsZShib29sKSBmaW5hbDsKKyAgICBib29sIG1lbnViYXJWaXNpYmxlKCkgZmluYWw7
CiAgICAgCi0gICAgdm9pZCBzZXRSZXNpemFibGUoYm9vbCkgb3ZlcnJpZGU7CisgICAgdm9pZCBz
ZXRSZXNpemFibGUoYm9vbCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBhZGRNZXNzYWdlVG9Db25z
b2xlKEpTQzo6TWVzc2FnZVNvdXJjZSwgSlNDOjpNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYg
bWVzc2FnZSwgdW5zaWduZWQgbGluZU51bWJlciwgdW5zaWduZWQgY29sdW1uTnVtYmVyLCBjb25z
dCBTdHJpbmcmIHNvdXJjZUlEKSBvdmVycmlkZTsKKyAgICB2b2lkIGFkZE1lc3NhZ2VUb0NvbnNv
bGUoSlNDOjpNZXNzYWdlU291cmNlLCBKU0M6Ok1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiBt
ZXNzYWdlLCB1bnNpZ25lZCBsaW5lTnVtYmVyLCB1bnNpZ25lZCBjb2x1bW5OdW1iZXIsIGNvbnN0
IFN0cmluZyYgc291cmNlSUQpIGZpbmFsOwogICAgIAotICAgIGJvb2wgY2FuUnVuQmVmb3JlVW5s
b2FkQ29uZmlybVBhbmVsKCkgb3ZlcnJpZGU7Ci0gICAgYm9vbCBydW5CZWZvcmVVbmxvYWRDb25m
aXJtUGFuZWwoY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBXZWJDb3JlOjpGcmFtZSopIG92ZXJyaWRl
OworICAgIGJvb2wgY2FuUnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsKCkgZmluYWw7CisgICAg
Ym9vbCBydW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBX
ZWJDb3JlOjpGcmFtZSopIGZpbmFsOwogICAgIAotICAgIHZvaWQgY2xvc2VXaW5kb3dTb29uKCkg
b3ZlcnJpZGU7CisgICAgdm9pZCBjbG9zZVdpbmRvd1Nvb24oKSBmaW5hbDsKICAgICAKLSAgICB2
b2lkIHJ1bkphdmFTY3JpcHRBbGVydChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFN0cmluZyYpIG92
ZXJyaWRlOwotICAgIGJvb2wgcnVuSmF2YVNjcmlwdENvbmZpcm0oV2ViQ29yZTo6RnJhbWUqLCBj
b25zdCBTdHJpbmcmKSBvdmVycmlkZTsKLSAgICBib29sIHJ1bkphdmFTY3JpcHRQcm9tcHQoV2Vi
Q29yZTo6RnJhbWUqLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgZGVmYXVs
dFZhbHVlLCBTdHJpbmcmIHJlc3VsdCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXRTdGF0dXNiYXJU
ZXh0KGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlOwotCi0gICAgV2ViQ29yZTo6S2V5Ym9hcmRVSU1v
ZGUga2V5Ym9hcmRVSU1vZGUoKSBvdmVycmlkZTsKLQotICAgIC8vIEhvc3RXaW5kb3cgbWVtYmVy
IGZ1bmN0aW9uIG92ZXJyaWRlcy4KLSAgICB2b2lkIGludmFsaWRhdGVSb290Vmlldyhjb25zdCBX
ZWJDb3JlOjpJbnRSZWN0Jikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBpbnZhbGlkYXRlQ29udGVudHNB
bmRSb290Vmlldyhjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBp
bnZhbGlkYXRlQ29udGVudHNGb3JTbG93U2Nyb2xsKGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBv
dmVycmlkZTsKLSAgICB2b2lkIHNjcm9sbChjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBzY3JvbGxE
ZWx0YSwgY29uc3QgV2ViQ29yZTo6SW50UmVjdCYgc2Nyb2xsUmVjdCwgY29uc3QgV2ViQ29yZTo6
SW50UmVjdCYgY2xpcFJlY3QpIG92ZXJyaWRlOworICAgIHZvaWQgcnVuSmF2YVNjcmlwdEFsZXJ0
KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgU3RyaW5nJikgZmluYWw7CisgICAgYm9vbCBydW5KYXZh
U2NyaXB0Q29uZmlybShXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFN0cmluZyYpIGZpbmFsOworICAg
IGJvb2wgcnVuSmF2YVNjcmlwdFByb21wdChXZWJDb3JlOjpGcmFtZSosIGNvbnN0IFN0cmluZyYg
bWVzc2FnZSwgY29uc3QgU3RyaW5nJiBkZWZhdWx0VmFsdWUsIFN0cmluZyYgcmVzdWx0KSBmaW5h
bDsKKyAgICB2b2lkIHNldFN0YXR1c2JhclRleHQoY29uc3QgU3RyaW5nJikgZmluYWw7CisKKyAg
ICBXZWJDb3JlOjpLZXlib2FyZFVJTW9kZSBrZXlib2FyZFVJTW9kZSgpIGZpbmFsOworCisgICAg
Ly8gSG9zdFdpbmRvdyBtZW1iZXIgZnVuY3Rpb24gZmluYWxzLgorICAgIHZvaWQgaW52YWxpZGF0
ZVJvb3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBmaW5hbDsKKyAgICB2b2lkIGludmFs
aWRhdGVDb250ZW50c0FuZFJvb3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBmaW5hbDsK
KyAgICB2b2lkIGludmFsaWRhdGVDb250ZW50c0ZvclNsb3dTY3JvbGwoY29uc3QgV2ViQ29yZTo6
SW50UmVjdCYpIGZpbmFsOworICAgIHZvaWQgc2Nyb2xsKGNvbnN0IFdlYkNvcmU6OkludFNpemUm
IHNjcm9sbERlbHRhLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiBzY3JvbGxSZWN0LCBjb25zdCBX
ZWJDb3JlOjpJbnRSZWN0JiBjbGlwUmVjdCkgZmluYWw7CisKICNpZiBVU0UoQ09PUkRJTkFURURf
R1JBUEhJQ1MpCi0gICAgdm9pZCBkZWxlZ2F0ZWRTY3JvbGxSZXF1ZXN0ZWQoY29uc3QgV2ViQ29y
ZTo6SW50UG9pbnQmIHNjcm9sbE9mZnNldCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkZWxlZ2F0ZWRT
Y3JvbGxSZXF1ZXN0ZWQoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIHNjcm9sbE9mZnNldCkgZmlu
YWw7CiAjZW5kaWYKLSAgICBXZWJDb3JlOjpJbnRQb2ludCBzY3JlZW5Ub1Jvb3RWaWV3KGNvbnN0
IFdlYkNvcmU6OkludFBvaW50JikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgV2ViQ29yZTo6SW50UmVj
dCByb290Vmlld1RvU2NyZWVuKGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBjb25zdCBvdmVycmlk
ZTsKKworICAgIFdlYkNvcmU6OkludFBvaW50IHNjcmVlblRvUm9vdFZpZXcoY29uc3QgV2ViQ29y
ZTo6SW50UG9pbnQmKSBjb25zdCBmaW5hbDsKKyAgICBXZWJDb3JlOjpJbnRSZWN0IHJvb3RWaWV3
VG9TY3JlZW4oY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGNvbnN0IGZpbmFsOworCiAjaWYgUExB
VEZPUk0oSU9TKQotICAgIFdlYkNvcmU6OkludFBvaW50IGFjY2Vzc2liaWxpdHlTY3JlZW5Ub1Jv
b3RWaWV3KGNvbnN0IFdlYkNvcmU6OkludFBvaW50JikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgV2Vi
Q29yZTo6SW50UmVjdCByb290Vmlld1RvQWNjZXNzaWJpbGl0eVNjcmVlbihjb25zdCBXZWJDb3Jl
OjpJbnRSZWN0JikgY29uc3Qgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6SW50UG9pbnQgYWNjZXNz
aWJpbGl0eVNjcmVlblRvUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKSBjb25zdCBm
aW5hbDsKKyAgICBXZWJDb3JlOjpJbnRSZWN0IHJvb3RWaWV3VG9BY2Nlc3NpYmlsaXR5U2NyZWVu
KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBjb25zdCBmaW5hbDsKICNlbmRpZgotICAgIFBsYXRm
b3JtUGFnZUNsaWVudCBwbGF0Zm9ybVBhZ2VDbGllbnQoKSBjb25zdCBvdmVycmlkZTsKLSAgICB2
b2lkIGNvbnRlbnRzU2l6ZUNoYW5nZWQoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXZWJDb3JlOjpJ
bnRTaXplJikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzY3JvbGxSZWN0SW50b1ZpZXcoY29u
c3QgV2ViQ29yZTo6SW50UmVjdCYpIGNvbnN0IG92ZXJyaWRlOyAvLyBDdXJyZW50bHkgb25seSBN
YWMgaGFzIGEgbm9uIGVtcHR5IGltcGxlbWVudGF0aW9uLgogCi0gICAgYm9vbCBzaG91bGRVbmF2
YWlsYWJsZVBsdWdpbk1lc3NhZ2VCZUJ1dHRvbihXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVj
dDo6UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24pIGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQg
dW5hdmFpbGFibGVQbHVnaW5CdXR0b25DbGlja2VkKFdlYkNvcmU6OkVsZW1lbnQqLCBXZWJDb3Jl
OjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24pIGNvbnN0
IG92ZXJyaWRlOworICAgIFBsYXRmb3JtUGFnZUNsaWVudCBwbGF0Zm9ybVBhZ2VDbGllbnQoKSBj
b25zdCBmaW5hbDsKKyAgICB2b2lkIGNvbnRlbnRzU2l6ZUNoYW5nZWQoV2ViQ29yZTo6RnJhbWUq
LCBjb25zdCBXZWJDb3JlOjpJbnRTaXplJikgY29uc3QgZmluYWw7CisgICAgdm9pZCBzY3JvbGxS
ZWN0SW50b1ZpZXcoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGNvbnN0IGZpbmFsOyAvLyBDdXJy
ZW50bHkgb25seSBNYWMgaGFzIGEgbm9uIGVtcHR5IGltcGxlbWVudGF0aW9uLgogCi0gICAgdm9p
ZCBzY3JvbGxiYXJzTW9kZURpZENoYW5nZSgpIGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQgbW91
c2VEaWRNb3ZlT3ZlckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6SGl0VGVzdFJlc3VsdCYsIHVuc2ln
bmVkIG1vZGlmaWVyRmxhZ3MpIG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkVW5hdmFpbGFibGVQ
bHVnaW5NZXNzYWdlQmVCdXR0b24oV2ViQ29yZTo6UmVuZGVyRW1iZWRkZWRPYmplY3Q6OlBsdWdp
blVuYXZhaWxhYmlsaXR5UmVhc29uKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIHVuYXZhaWxhYmxl
UGx1Z2luQnV0dG9uQ2xpY2tlZChXZWJDb3JlOjpFbGVtZW50KiwgV2ViQ29yZTo6UmVuZGVyRW1i
ZWRkZWRPYmplY3Q6OlBsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uKSBjb25zdCBmaW5hbDsKIAot
ICAgIHZvaWQgc2V0VG9vbFRpcChjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpUZXh0RGlyZWN0aW9u
KSBvdmVycmlkZTsKKyAgICB2b2lkIHNjcm9sbGJhcnNNb2RlRGlkQ2hhbmdlKCkgY29uc3QgZmlu
YWw7CisgICAgdm9pZCBtb3VzZURpZE1vdmVPdmVyRWxlbWVudChjb25zdCBXZWJDb3JlOjpIaXRU
ZXN0UmVzdWx0JiwgdW5zaWduZWQgbW9kaWZpZXJGbGFncykgZmluYWw7CisKKyAgICB2b2lkIHNl
dFRvb2xUaXAoY29uc3QgU3RyaW5nJiwgV2ViQ29yZTo6VGV4dERpcmVjdGlvbikgZmluYWw7CiAg
ICAgCi0gICAgdm9pZCBwcmludChXZWJDb3JlOjpGcmFtZSopIG92ZXJyaWRlOworICAgIHZvaWQg
cHJpbnQoV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKIAotICAgIHZvaWQgZXhjZWVkZWREYXRhYmFz
ZVF1b3RhKFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgU3RyaW5nJiBkYXRhYmFzZU5hbWUsIFdlYkNv
cmU6OkRhdGFiYXNlRGV0YWlscykgb3ZlcnJpZGU7CisgICAgdm9pZCBleGNlZWRlZERhdGFiYXNl
UXVvdGEoV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBTdHJpbmcmIGRhdGFiYXNlTmFtZSwgV2ViQ29y
ZTo6RGF0YWJhc2VEZXRhaWxzKSBmaW5hbDsKIAotICAgIHZvaWQgcmVhY2hlZE1heEFwcENhY2hl
U2l6ZShpbnQ2NF90IHNwYWNlTmVlZGVkKSBvdmVycmlkZTsKLSAgICB2b2lkIHJlYWNoZWRBcHBs
aWNhdGlvbkNhY2hlT3JpZ2luUXVvdGEoV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4qLCBpbnQ2NF90
IHNwYWNlTmVlZGVkKSBvdmVycmlkZTsKKyAgICB2b2lkIHJlYWNoZWRNYXhBcHBDYWNoZVNpemUo
aW50NjRfdCBzcGFjZU5lZWRlZCkgZmluYWw7CisgICAgdm9pZCByZWFjaGVkQXBwbGljYXRpb25D
YWNoZU9yaWdpblF1b3RhKFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luKiwgaW50NjRfdCBzcGFjZU5l
ZWRlZCkgZmluYWw7CiAKICNpZiBFTkFCTEUoREFTSEJPQVJEX1NVUFBPUlQpCi0gICAgdm9pZCBh
bm5vdGF0ZWRSZWdpb25zQ2hhbmdlZCgpIG92ZXJyaWRlOworICAgIHZvaWQgYW5ub3RhdGVkUmVn
aW9uc0NoYW5nZWQoKSBmaW5hbDsKICNlbmRpZgogCi0gICAgYm9vbCBzaG91bGRSZXBsYWNlV2l0
aEdlbmVyYXRlZEZpbGVGb3JVcGxvYWQoY29uc3QgU3RyaW5nJiBwYXRoLCBTdHJpbmcmIGdlbmVy
YXRlZEZpbGVuYW1lKSBvdmVycmlkZTsKLSAgICBTdHJpbmcgZ2VuZXJhdGVSZXBsYWNlbWVudEZp
bGUoY29uc3QgU3RyaW5nJiBwYXRoKSBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZFJlcGxhY2VX
aXRoR2VuZXJhdGVkRmlsZUZvclVwbG9hZChjb25zdCBTdHJpbmcmIHBhdGgsIFN0cmluZyYgZ2Vu
ZXJhdGVkRmlsZW5hbWUpIGZpbmFsOworICAgIFN0cmluZyBnZW5lcmF0ZVJlcGxhY2VtZW50Rmls
ZShjb25zdCBTdHJpbmcmIHBhdGgpIGZpbmFsOwogICAgIAogI2lmIEVOQUJMRShJTlBVVF9UWVBF
X0NPTE9SKQotICAgIHN0ZDo6dW5pcXVlX3B0cjxXZWJDb3JlOjpDb2xvckNob29zZXI+IGNyZWF0
ZUNvbG9yQ2hvb3NlcihXZWJDb3JlOjpDb2xvckNob29zZXJDbGllbnQqLCBjb25zdCBXZWJDb3Jl
OjpDb2xvciYpIG92ZXJyaWRlOworICAgIHN0ZDo6dW5pcXVlX3B0cjxXZWJDb3JlOjpDb2xvckNo
b29zZXI+IGNyZWF0ZUNvbG9yQ2hvb3NlcihXZWJDb3JlOjpDb2xvckNob29zZXJDbGllbnQqLCBj
b25zdCBXZWJDb3JlOjpDb2xvciYpIGZpbmFsOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoSU9TX1RP
VUNIX0VWRU5UUykKLSAgICB2b2lkIGRpZFByZXZlbnREZWZhdWx0Rm9yRXZlbnQoKSBvdmVycmlk
ZTsKKyAgICB2b2lkIGRpZFByZXZlbnREZWZhdWx0Rm9yRXZlbnQoKSBmaW5hbDsKICNlbmRpZgog
CiAjaWYgUExBVEZPUk0oSU9TKQotICAgIHZvaWQgZGlkUmVjZWl2ZU1vYmlsZURvY1R5cGUoYm9v
bCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXROZWVkc1Njcm9sbE5vdGlmaWNhdGlvbnMoV2ViQ29y
ZTo6RnJhbWUqLCBib29sKSBvdmVycmlkZTsKLSAgICB2b2lkIG9ic2VydmVkQ29udGVudENoYW5n
ZShXZWJDb3JlOjpGcmFtZSopIG92ZXJyaWRlOwotICAgIHZvaWQgY2xlYXJDb250ZW50Q2hhbmdl
T2JzZXJ2ZXJzKFdlYkNvcmU6OkZyYW1lKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBub3RpZnlSZXZl
YWxlZFNlbGVjdGlvbkJ5U2Nyb2xsaW5nRnJhbWUoV2ViQ29yZTo6RnJhbWUqKSBvdmVycmlkZTsK
LSAgICBib29sIGlzU3RvcHBpbmcoKSBvdmVycmlkZTsKLQotICAgIHZvaWQgZGlkTGF5b3V0KExh
eW91dFR5cGUgPSBOb3JtYWxMYXlvdXQpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkU3RhcnRPdmVy
Zmxvd1Njcm9sbCgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkRW5kT3ZlcmZsb3dTY3JvbGwoKSBv
dmVycmlkZTsKLSAgICBib29sIGhhc1N0YWJsZVBhZ2VTY2FsZUZhY3RvcigpIGNvbnN0IG92ZXJy
aWRlOworICAgIHZvaWQgZGlkUmVjZWl2ZU1vYmlsZURvY1R5cGUoYm9vbCkgZmluYWw7CisgICAg
dm9pZCBzZXROZWVkc1Njcm9sbE5vdGlmaWNhdGlvbnMoV2ViQ29yZTo6RnJhbWUqLCBib29sKSBm
aW5hbDsKKyAgICB2b2lkIG9ic2VydmVkQ29udGVudENoYW5nZShXZWJDb3JlOjpGcmFtZSopIGZp
bmFsOworICAgIHZvaWQgY2xlYXJDb250ZW50Q2hhbmdlT2JzZXJ2ZXJzKFdlYkNvcmU6OkZyYW1l
KikgZmluYWw7CisgICAgdm9pZCBub3RpZnlSZXZlYWxlZFNlbGVjdGlvbkJ5U2Nyb2xsaW5nRnJh
bWUoV2ViQ29yZTo6RnJhbWUqKSBmaW5hbDsKKyAgICBib29sIGlzU3RvcHBpbmcoKSBmaW5hbDsK
KworICAgIHZvaWQgZGlkTGF5b3V0KExheW91dFR5cGUgPSBOb3JtYWxMYXlvdXQpIGZpbmFsOwor
ICAgIHZvaWQgZGlkU3RhcnRPdmVyZmxvd1Njcm9sbCgpIGZpbmFsOworICAgIHZvaWQgZGlkRW5k
T3ZlcmZsb3dTY3JvbGwoKSBmaW5hbDsKKyAgICBib29sIGhhc1N0YWJsZVBhZ2VTY2FsZUZhY3Rv
cigpIGNvbnN0IGZpbmFsOwogCiAgICAgLy8gRklYTUU6IFNlZSA8cmRhcjovL3Byb2JsZW0vNTk3
NTU1OT4KLSAgICB2b2lkIHN1cHByZXNzRm9ybU5vdGlmaWNhdGlvbnMoKSBvdmVycmlkZTsKLSAg
ICB2b2lkIHJlc3RvcmVGb3JtTm90aWZpY2F0aW9ucygpIG92ZXJyaWRlOworICAgIHZvaWQgc3Vw
cHJlc3NGb3JtTm90aWZpY2F0aW9ucygpIGZpbmFsOworICAgIHZvaWQgcmVzdG9yZUZvcm1Ob3Rp
ZmljYXRpb25zKCkgZmluYWw7CiAKLSAgICB2b2lkIGFkZE9yVXBkYXRlU2Nyb2xsaW5nTGF5ZXIo
V2ViQ29yZTo6Tm9kZSosIFBsYXRmb3JtTGF5ZXIqIHNjcm9sbGluZ0xheWVyLCBQbGF0Zm9ybUxh
eWVyKiBjb250ZW50c0xheWVyLCBjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBzY3JvbGxTaXplLCBi
b29sIGFsbG93SG9yaXpvbnRhbFNjcm9sbGJhciwgYm9vbCBhbGxvd1ZlcnRpY2FsU2Nyb2xsYmFy
KSBvdmVycmlkZTsKLSAgICB2b2lkIHJlbW92ZVNjcm9sbGluZ0xheWVyKFdlYkNvcmU6Ok5vZGUq
LCBQbGF0Zm9ybUxheWVyKiBzY3JvbGxpbmdMYXllciwgUGxhdGZvcm1MYXllciogY29udGVudHNM
YXllcikgb3ZlcnJpZGU7CisgICAgdm9pZCBhZGRPclVwZGF0ZVNjcm9sbGluZ0xheWVyKFdlYkNv
cmU6Ok5vZGUqLCBQbGF0Zm9ybUxheWVyKiBzY3JvbGxpbmdMYXllciwgUGxhdGZvcm1MYXllciog
Y29udGVudHNMYXllciwgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgc2Nyb2xsU2l6ZSwgYm9vbCBh
bGxvd0hvcml6b250YWxTY3JvbGxiYXIsIGJvb2wgYWxsb3dWZXJ0aWNhbFNjcm9sbGJhcikgZmlu
YWw7CisgICAgdm9pZCByZW1vdmVTY3JvbGxpbmdMYXllcihXZWJDb3JlOjpOb2RlKiwgUGxhdGZv
cm1MYXllciogc2Nyb2xsaW5nTGF5ZXIsIFBsYXRmb3JtTGF5ZXIqIGNvbnRlbnRzTGF5ZXIpIGZp
bmFsOwogCi0gICAgdm9pZCB3ZWJBcHBPcmllbnRhdGlvbnNVcGRhdGVkKCkgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBzaG93UGxheWJhY2tUYXJnZXRQaWNrZXIoYm9vbCBoYXNWaWRlbykgb3ZlcnJpZGU7
CisgICAgdm9pZCB3ZWJBcHBPcmllbnRhdGlvbnNVcGRhdGVkKCkgZmluYWw7CisgICAgdm9pZCBz
aG93UGxheWJhY2tUYXJnZXRQaWNrZXIoYm9vbCBoYXNWaWRlbykgZmluYWw7CiAKLSAgICBTZWNv
bmRzIGV2ZW50VGhyb3R0bGluZ0RlbGF5KCkgb3ZlcnJpZGU7CisgICAgU2Vjb25kcyBldmVudFRo
cm90dGxpbmdEZWxheSgpIGZpbmFsOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoT1JJRU5UQVRJT05f
RVZFTlRTKQotICAgIGludCBkZXZpY2VPcmllbnRhdGlvbigpIGNvbnN0IG92ZXJyaWRlOworICAg
IGludCBkZXZpY2VPcmllbnRhdGlvbigpIGNvbnN0IGZpbmFsOwogI2VuZGlmCiAKLSAgICB2b2lk
IHJ1bk9wZW5QYW5lbChXZWJDb3JlOjpGcmFtZSosIFBhc3NSZWZQdHI8V2ViQ29yZTo6RmlsZUNo
b29zZXI+KSBvdmVycmlkZTsKLSAgICB2b2lkIGxvYWRJY29uRm9yRmlsZXMoY29uc3QgVmVjdG9y
PFN0cmluZz4mLCBXZWJDb3JlOjpGaWxlSWNvbkxvYWRlciYpIG92ZXJyaWRlOworICAgIHZvaWQg
cnVuT3BlblBhbmVsKFdlYkNvcmU6OkZyYW1lJiwgV2ViQ29yZTo6RmlsZUNob29zZXImKSBmaW5h
bDsKKyAgICB2b2lkIGxvYWRJY29uRm9yRmlsZXMoY29uc3QgVmVjdG9yPFN0cmluZz4mLCBXZWJD
b3JlOjpGaWxlSWNvbkxvYWRlciYpIGZpbmFsOwogCiAjaWYgIVBMQVRGT1JNKElPUykKLSAgICB2
b2lkIHNldEN1cnNvcihjb25zdCBXZWJDb3JlOjpDdXJzb3ImKSBvdmVycmlkZTsKLSAgICB2b2lk
IHNldEN1cnNvckhpZGRlblVudGlsTW91c2VNb3Zlcyhib29sKSBvdmVycmlkZTsKKyAgICB2b2lk
IHNldEN1cnNvcihjb25zdCBXZWJDb3JlOjpDdXJzb3ImKSBmaW5hbDsKKyAgICB2b2lkIHNldEN1
cnNvckhpZGRlblVudGlsTW91c2VNb3Zlcyhib29sKSBmaW5hbDsKICNlbmRpZgorCiAjaWYgIVVT
RShSRVFVRVNUX0FOSU1BVElPTl9GUkFNRV9USU1FUikKLSAgICB2b2lkIHNjaGVkdWxlQW5pbWF0
aW9uKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBzY2hlZHVsZUFuaW1hdGlvbigpIGZpbmFsOwogI2Vu
ZGlmCiAgICAgCiAjaWYgRU5BQkxFKFBPSU5URVJfTE9DSykKLSAgICBib29sIHJlcXVlc3RQb2lu
dGVyTG9jaygpIG92ZXJyaWRlOwotICAgIHZvaWQgcmVxdWVzdFBvaW50ZXJVbmxvY2soKSBvdmVy
cmlkZTsKKyAgICBib29sIHJlcXVlc3RQb2ludGVyTG9jaygpIGZpbmFsOworICAgIHZvaWQgcmVx
dWVzdFBvaW50ZXJVbmxvY2soKSBmaW5hbDsKICNlbmRpZgogCi0gICAgdm9pZCBkaWRBc3NvY2lh
dGVGb3JtQ29udHJvbHMoY29uc3QgVmVjdG9yPFJlZlB0cjxXZWJDb3JlOjpFbGVtZW50Pj4mKSBv
dmVycmlkZTsKLSAgICBib29sIHNob3VsZE5vdGlmeU9uRm9ybUNoYW5nZXMoKSBvdmVycmlkZTsK
KyAgICB2b2lkIGRpZEFzc29jaWF0ZUZvcm1Db250cm9scyhjb25zdCBWZWN0b3I8UmVmUHRyPFdl
YkNvcmU6OkVsZW1lbnQ+PiYpIGZpbmFsOworICAgIGJvb2wgc2hvdWxkTm90aWZ5T25Gb3JtQ2hh
bmdlcygpIGZpbmFsOwogCi0gICAgYm9vbCBzZWxlY3RJdGVtV3JpdGluZ0RpcmVjdGlvbklzTmF0
dXJhbCgpIG92ZXJyaWRlOwotICAgIGJvb2wgc2VsZWN0SXRlbUFsaWdubWVudEZvbGxvd3NNZW51
V3JpdGluZ0RpcmVjdGlvbigpIG92ZXJyaWRlOwotICAgIGJvb2wgaGFzT3BlbmVkUG9wdXAoKSBj
b25zdCBvdmVycmlkZTsKLSAgICBSZWZQdHI8V2ViQ29yZTo6UG9wdXBNZW51PiBjcmVhdGVQb3B1
cE1lbnUoV2ViQ29yZTo6UG9wdXBNZW51Q2xpZW50KikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgUmVm
UHRyPFdlYkNvcmU6OlNlYXJjaFBvcHVwTWVudT4gY3JlYXRlU2VhcmNoUG9wdXBNZW51KFdlYkNv
cmU6OlBvcHVwTWVudUNsaWVudCopIGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wgc2VsZWN0SXRl
bVdyaXRpbmdEaXJlY3Rpb25Jc05hdHVyYWwoKSBmaW5hbDsKKyAgICBib29sIHNlbGVjdEl0ZW1B
bGlnbm1lbnRGb2xsb3dzTWVudVdyaXRpbmdEaXJlY3Rpb24oKSBmaW5hbDsKKyAgICBib29sIGhh
c09wZW5lZFBvcHVwKCkgY29uc3QgZmluYWw7CisgICAgUmVmUHRyPFdlYkNvcmU6OlBvcHVwTWVu
dT4gY3JlYXRlUG9wdXBNZW51KFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCopIGNvbnN0IGZpbmFs
OworICAgIFJlZlB0cjxXZWJDb3JlOjpTZWFyY2hQb3B1cE1lbnU+IGNyZWF0ZVNlYXJjaFBvcHVw
TWVudShXZWJDb3JlOjpQb3B1cE1lbnVDbGllbnQqKSBjb25zdCBmaW5hbDsKIAotICAgIFdlYkNv
cmU6OkdyYXBoaWNzTGF5ZXJGYWN0b3J5KiBncmFwaGljc0xheWVyRmFjdG9yeSgpIGNvbnN0IG92
ZXJyaWRlOwotICAgIHZvaWQgYXR0YWNoUm9vdEdyYXBoaWNzTGF5ZXIoV2ViQ29yZTo6RnJhbWUq
LCBXZWJDb3JlOjpHcmFwaGljc0xheWVyKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBhdHRhY2hWaWV3
T3ZlcmxheUdyYXBoaWNzTGF5ZXIoV2ViQ29yZTo6RnJhbWUqLCBXZWJDb3JlOjpHcmFwaGljc0xh
eWVyKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzZXROZWVkc09uZVNob3REcmF3aW5nU3luY2hyb25p
emF0aW9uKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzY2hlZHVsZUNvbXBvc2l0aW5nTGF5ZXJGbHVz
aCgpIG92ZXJyaWRlOwotICAgIGJvb2wgYWRqdXN0TGF5ZXJGbHVzaFRocm90dGxpbmcoV2ViQ29y
ZTo6TGF5ZXJGbHVzaFRocm90dGxlU3RhdGU6OkZsYWdzKSBvdmVycmlkZTsKKyAgICBXZWJDb3Jl
OjpHcmFwaGljc0xheWVyRmFjdG9yeSogZ3JhcGhpY3NMYXllckZhY3RvcnkoKSBjb25zdCBmaW5h
bDsKKyAgICB2b2lkIGF0dGFjaFJvb3RHcmFwaGljc0xheWVyKFdlYkNvcmU6OkZyYW1lKiwgV2Vi
Q29yZTo6R3JhcGhpY3NMYXllciopIGZpbmFsOworICAgIHZvaWQgYXR0YWNoVmlld092ZXJsYXlH
cmFwaGljc0xheWVyKFdlYkNvcmU6OkZyYW1lKiwgV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIGZp
bmFsOworICAgIHZvaWQgc2V0TmVlZHNPbmVTaG90RHJhd2luZ1N5bmNocm9uaXphdGlvbigpIGZp
bmFsOworICAgIHZvaWQgc2NoZWR1bGVDb21wb3NpdGluZ0xheWVyRmx1c2goKSBmaW5hbDsKKyAg
ICBib29sIGFkanVzdExheWVyRmx1c2hUaHJvdHRsaW5nKFdlYkNvcmU6OkxheWVyRmx1c2hUaHJv
dHRsZVN0YXRlOjpGbGFncykgZmluYWw7CiAKICNpZiBVU0UoUkVRVUVTVF9BTklNQVRJT05fRlJB
TUVfRElTUExBWV9NT05JVE9SKQotICAgIFJlZlB0cjxXZWJDb3JlOjpEaXNwbGF5UmVmcmVzaE1v
bml0b3I+IGNyZWF0ZURpc3BsYXlSZWZyZXNoTW9uaXRvcihXZWJDb3JlOjpQbGF0Zm9ybURpc3Bs
YXlJRCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgUmVmUHRyPFdlYkNvcmU6OkRpc3BsYXlSZWZyZXNo
TW9uaXRvcj4gY3JlYXRlRGlzcGxheVJlZnJlc2hNb25pdG9yKFdlYkNvcmU6OlBsYXRmb3JtRGlz
cGxheUlEKSBjb25zdCBmaW5hbDsKICNlbmRpZgogCi0gICAgQ29tcG9zaXRpbmdUcmlnZ2VyRmxh
Z3MgYWxsb3dlZENvbXBvc2l0aW5nVHJpZ2dlcnMoKSBjb25zdCBvdmVycmlkZQorICAgIENvbXBv
c2l0aW5nVHJpZ2dlckZsYWdzIGFsbG93ZWRDb21wb3NpdGluZ1RyaWdnZXJzKCkgY29uc3QgZmlu
YWwKICAgICB7CiAgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxDb21wb3NpdGluZ1RyaWdnZXJG
bGFncz4oCiAgICAgICAgICAgICBUaHJlZURUcmFuc2Zvcm1UcmlnZ2VyIHwKQEAgLTIzMCwxMTkg
KzIyOCwxMjEgQEAgcHJpdmF0ZToKICAgICAgICAgICAgIEFuaW1hdGlvblRyaWdnZXIpOwogICAg
IH0KIAotICAgIGJvb2wgbGF5ZXJUcmVlU3RhdGVJc0Zyb3plbigpIGNvbnN0IG92ZXJyaWRlOwor
ICAgIGJvb2wgbGF5ZXJUcmVlU3RhdGVJc0Zyb3plbigpIGNvbnN0IGZpbmFsOwogCiAjaWYgRU5B
QkxFKEFTWU5DX1NDUk9MTElORykKLSAgICBQYXNzUmVmUHRyPFdlYkNvcmU6OlNjcm9sbGluZ0Nv
b3JkaW5hdG9yPiBjcmVhdGVTY3JvbGxpbmdDb29yZGluYXRvcihXZWJDb3JlOjpQYWdlKikgY29u
c3Qgb3ZlcnJpZGU7CisgICAgUGFzc1JlZlB0cjxXZWJDb3JlOjpTY3JvbGxpbmdDb29yZGluYXRv
cj4gY3JlYXRlU2Nyb2xsaW5nQ29vcmRpbmF0b3IoV2ViQ29yZTo6UGFnZSopIGNvbnN0IGZpbmFs
OwogI2VuZGlmCiAKICNpZiBQTEFURk9STShJT1MpCi0gICAgdm9pZCBlbGVtZW50RGlkUmVmb2N1
cyhjb25zdCBXZWJDb3JlOjpOb2RlKikgb3ZlcnJpZGU7CisgICAgdm9pZCBlbGVtZW50RGlkUmVm
b2N1cyhjb25zdCBXZWJDb3JlOjpOb2RlKikgZmluYWw7CiAjZW5kaWYKIAogI2lmIChQTEFURk9S
TShJT1MpICYmIEhBVkUoQVZLSVQpKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9f
UFJFU0VOVEFUSU9OX01PREUpKQotICAgIGJvb2wgc3VwcG9ydHNWaWRlb0Z1bGxzY3JlZW4oV2Vi
Q29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlKSBvdmVycmlk
ZTsKLSAgICB2b2lkIHNldFVwUGxheWJhY2tDb250cm9sc01hbmFnZXIoV2ViQ29yZTo6SFRNTE1l
ZGlhRWxlbWVudCYpIG92ZXJyaWRlOwotICAgIHZvaWQgY2xlYXJQbGF5YmFja0NvbnRyb2xzTWFu
YWdlcigpIG92ZXJyaWRlOwotICAgIHZvaWQgZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0Vs
ZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCYsIFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1l
bnRFbnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZSkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBleGl0Vmlk
ZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmKSBv
dmVycmlkZTsKLSNpZiBQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05f
TU9ERSkKLSAgICB2b2lkIGV4aXRWaWRlb0Z1bGxzY3JlZW5Ub01vZGVXaXRob3V0QW5pbWF0aW9u
KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmLCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50RW51
bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpIG92ZXJyaWRlOworICAgIGJvb2wgc3VwcG9ydHNWaWRl
b0Z1bGxzY3JlZW4oV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3Jl
ZW5Nb2RlKSBmaW5hbDsKKyAgICB2b2lkIHNldFVwUGxheWJhY2tDb250cm9sc01hbmFnZXIoV2Vi
Q29yZTo6SFRNTE1lZGlhRWxlbWVudCYpIGZpbmFsOworICAgIHZvaWQgY2xlYXJQbGF5YmFja0Nv
bnRyb2xzTWFuYWdlcigpIGZpbmFsOworICAgIHZvaWQgZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JW
aWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCYsIFdlYkNvcmU6OkhUTUxNZWRp
YUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZSkgZmluYWw7CisgICAgdm9pZCBleGl0
VmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQm
KSBmaW5hbDsKICNlbmRpZgorCisjaWYgUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJF
U0VOVEFUSU9OX01PREUpCisgICAgdm9pZCBleGl0VmlkZW9GdWxsc2NyZWVuVG9Nb2RlV2l0aG91
dEFuaW1hdGlvbihXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50JiwgV2ViQ29yZTo6SFRNTE1lZGlh
RWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlKSBmaW5hbDsKICNlbmRpZgogCiAjaWYg
RU5BQkxFKEZVTExTQ1JFRU5fQVBJKQotICAgIGJvb2wgc3VwcG9ydHNGdWxsU2NyZWVuRm9yRWxl
bWVudChjb25zdCBXZWJDb3JlOjpFbGVtZW50KiwgYm9vbCB3aXRoS2V5Ym9hcmQpIG92ZXJyaWRl
OwotICAgIHZvaWQgZW50ZXJGdWxsU2NyZWVuRm9yRWxlbWVudChXZWJDb3JlOjpFbGVtZW50Kikg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBleGl0RnVsbFNjcmVlbkZvckVsZW1lbnQoV2ViQ29yZTo6RWxl
bWVudCopIG92ZXJyaWRlOworICAgIGJvb2wgc3VwcG9ydHNGdWxsU2NyZWVuRm9yRWxlbWVudChj
b25zdCBXZWJDb3JlOjpFbGVtZW50KiwgYm9vbCB3aXRoS2V5Ym9hcmQpIGZpbmFsOworICAgIHZv
aWQgZW50ZXJGdWxsU2NyZWVuRm9yRWxlbWVudChXZWJDb3JlOjpFbGVtZW50KikgZmluYWw7Cisg
ICAgdm9pZCBleGl0RnVsbFNjcmVlbkZvckVsZW1lbnQoV2ViQ29yZTo6RWxlbWVudCopIGZpbmFs
OwogI2VuZGlmCiAKICNpZiBQTEFURk9STShDT0NPQSkKLSAgICB2b2lkIGVsZW1lbnREaWRGb2N1
cyhjb25zdCBXZWJDb3JlOjpOb2RlKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBlbGVtZW50RGlkQmx1
cihjb25zdCBXZWJDb3JlOjpOb2RlKikgb3ZlcnJpZGU7CisgICAgdm9pZCBlbGVtZW50RGlkRm9j
dXMoY29uc3QgV2ViQ29yZTo6Tm9kZSopIGZpbmFsOworICAgIHZvaWQgZWxlbWVudERpZEJsdXIo
Y29uc3QgV2ViQ29yZTo6Tm9kZSopIGZpbmFsOwogCi0gICAgdm9pZCBtYWtlRmlyc3RSZXNwb25k
ZXIoKSBvdmVycmlkZTsKKyAgICB2b2lkIG1ha2VGaXJzdFJlc3BvbmRlcigpIGZpbmFsOwogI2Vu
ZGlmCiAKLSAgICB2b2lkIGVuYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkgb3ZlcnJpZGU7Ci0gICAg
dm9pZCBkaXNhYmxlU3VkZGVuVGVybWluYXRpb24oKSBvdmVycmlkZTsKKyAgICB2b2lkIGVuYWJs
ZVN1ZGRlblRlcm1pbmF0aW9uKCkgZmluYWw7CisgICAgdm9pZCBkaXNhYmxlU3VkZGVuVGVybWlu
YXRpb24oKSBmaW5hbDsKIAogI2lmIFBMQVRGT1JNKElPUykKLSAgICBXZWJDb3JlOjpGbG9hdFNp
emUgc2NyZWVuU2l6ZSgpIGNvbnN0IG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OkZsb2F0U2l6ZSBh
dmFpbGFibGVTY3JlZW5TaXplKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6RmxvYXRT
aXplIHNjcmVlblNpemUoKSBjb25zdCBmaW5hbDsKKyAgICBXZWJDb3JlOjpGbG9hdFNpemUgYXZh
aWxhYmxlU2NyZWVuU2l6ZSgpIGNvbnN0IGZpbmFsOwogI2VuZGlmCi0gICAgdm9pZCBkaXNwYXRj
aFZpZXdwb3J0UHJvcGVydGllc0RpZENoYW5nZShjb25zdCBXZWJDb3JlOjpWaWV3cG9ydEFyZ3Vt
ZW50cyYpIGNvbnN0IG92ZXJyaWRlOwogCi0gICAgdm9pZCBub3RpZnlTY3JvbGxlclRodW1iSXNW
aXNpYmxlSW5SZWN0KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSBvdmVycmlkZTsKLSAgICB2b2lk
IHJlY29tbWVuZGVkU2Nyb2xsYmFyU3R5bGVEaWRDaGFuZ2UoV2ViQ29yZTo6U2Nyb2xsYmFyU3R5
bGUgbmV3U3R5bGUpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hWaWV3cG9ydFByb3BlcnRp
ZXNEaWRDaGFuZ2UoY29uc3QgV2ViQ29yZTo6Vmlld3BvcnRBcmd1bWVudHMmKSBjb25zdCBmaW5h
bDsKIAotICAgIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6U2Nyb2xsYmFyT3ZlcmxheVN0eWxlPiBw
cmVmZXJyZWRTY3JvbGxiYXJPdmVybGF5U3R5bGUoKSBvdmVycmlkZTsKKyAgICB2b2lkIG5vdGlm
eVNjcm9sbGVyVGh1bWJJc1Zpc2libGVJblJlY3QoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpIGZp
bmFsOworICAgIHZvaWQgcmVjb21tZW5kZWRTY3JvbGxiYXJTdHlsZURpZENoYW5nZShXZWJDb3Jl
OjpTY3JvbGxiYXJTdHlsZSBuZXdTdHlsZSkgZmluYWw7CiAKLSAgICBXZWJDb3JlOjpDb2xvciB1
bmRlcmxheUNvbG9yKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgc3RkOjpvcHRpb25hbDxXZWJDb3Jl
OjpTY3JvbGxiYXJPdmVybGF5U3R5bGU+IHByZWZlcnJlZFNjcm9sbGJhck92ZXJsYXlTdHlsZSgp
IGZpbmFsOwogCi0gICAgdm9pZCBwYWdlRXh0ZW5kZWRCYWNrZ3JvdW5kQ29sb3JEaWRDaGFuZ2Uo
V2ViQ29yZTo6Q29sb3IpIGNvbnN0IG92ZXJyaWRlOworICAgIFdlYkNvcmU6OkNvbG9yIHVuZGVy
bGF5Q29sb3IoKSBjb25zdCBmaW5hbDsKKworICAgIHZvaWQgcGFnZUV4dGVuZGVkQmFja2dyb3Vu
ZENvbG9yRGlkQ2hhbmdlKFdlYkNvcmU6OkNvbG9yKSBjb25zdCBmaW5hbDsKICAgICAKLSAgICB2
b2lkIHdoZWVsRXZlbnRIYW5kbGVyc0NoYW5nZWQoYm9vbCkgb3ZlcnJpZGU7CisgICAgdm9pZCB3
aGVlbEV2ZW50SGFuZGxlcnNDaGFuZ2VkKGJvb2wpIGZpbmFsOwogCi0gICAgU3RyaW5nIHBsdWdJ
blN0YXJ0TGFiZWxUaXRsZShjb25zdCBTdHJpbmcmIG1pbWVUeXBlKSBjb25zdCBvdmVycmlkZTsK
LSAgICBTdHJpbmcgcGx1Z0luU3RhcnRMYWJlbFN1YnRpdGxlKGNvbnN0IFN0cmluZyYgbWltZVR5
cGUpIGNvbnN0IG92ZXJyaWRlOwotICAgIFN0cmluZyBwbHVnSW5FeHRyYVN0eWxlU2hlZXQoKSBj
b25zdCBvdmVycmlkZTsKLSAgICBTdHJpbmcgcGx1Z0luRXh0cmFTY3JpcHQoKSBjb25zdCBvdmVy
cmlkZTsKKyAgICBTdHJpbmcgcGx1Z0luU3RhcnRMYWJlbFRpdGxlKGNvbnN0IFN0cmluZyYgbWlt
ZVR5cGUpIGNvbnN0IGZpbmFsOworICAgIFN0cmluZyBwbHVnSW5TdGFydExhYmVsU3VidGl0bGUo
Y29uc3QgU3RyaW5nJiBtaW1lVHlwZSkgY29uc3QgZmluYWw7CisgICAgU3RyaW5nIHBsdWdJbkV4
dHJhU3R5bGVTaGVldCgpIGNvbnN0IGZpbmFsOworICAgIFN0cmluZyBwbHVnSW5FeHRyYVNjcmlw
dCgpIGNvbnN0IGZpbmFsOwogCi0gICAgdm9pZCBkaWRBZGRIZWFkZXJMYXllcihXZWJDb3JlOjpH
cmFwaGljc0xheWVyKikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRBZGRGb290ZXJMYXllcihXZWJD
b3JlOjpHcmFwaGljc0xheWVyKikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRBZGRIZWFkZXJMYXll
cihXZWJDb3JlOjpHcmFwaGljc0xheWVyKikgZmluYWw7CisgICAgdm9pZCBkaWRBZGRGb290ZXJM
YXllcihXZWJDb3JlOjpHcmFwaGljc0xheWVyKikgZmluYWw7CiAKLSAgICBib29sIHNob3VsZFVz
ZVRpbGVkQmFja2luZ0ZvckZyYW1lVmlldyhjb25zdCBXZWJDb3JlOjpGcmFtZVZpZXcqKSBjb25z
dCBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZFVzZVRpbGVkQmFja2luZ0ZvckZyYW1lVmlldyhj
b25zdCBXZWJDb3JlOjpGcmFtZVZpZXcqKSBjb25zdCBmaW5hbDsKIAotICAgIHZvaWQgaXNQbGF5
aW5nTWVkaWFEaWRDaGFuZ2UoV2ViQ29yZTo6TWVkaWFQcm9kdWNlcjo6TWVkaWFTdGF0ZUZsYWdz
LCB1aW50NjRfdCkgb3ZlcnJpZGU7CisgICAgdm9pZCBpc1BsYXlpbmdNZWRpYURpZENoYW5nZShX
ZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpNZWRpYVN0YXRlRmxhZ3MsIHVpbnQ2NF90KSBmaW5hbDsK
IAogI2lmIEVOQUJMRShNRURJQV9TRVNTSU9OKQotICAgIHZvaWQgaGFzTWVkaWFTZXNzaW9uV2l0
aEFjdGl2ZU1lZGlhRWxlbWVudHNEaWRDaGFuZ2UoYm9vbCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBt
ZWRpYVNlc3Npb25NZXRhZGF0YURpZENoYW5nZShjb25zdCBXZWJDb3JlOjpNZWRpYVNlc3Npb25N
ZXRhZGF0YSYpIG92ZXJyaWRlOwotICAgIHZvaWQgZm9jdXNlZENvbnRlbnRNZWRpYUVsZW1lbnRE
aWRDaGFuZ2UodWludDY0X3QpIG92ZXJyaWRlOworICAgIHZvaWQgaGFzTWVkaWFTZXNzaW9uV2l0
aEFjdGl2ZU1lZGlhRWxlbWVudHNEaWRDaGFuZ2UoYm9vbCkgZmluYWw7CisgICAgdm9pZCBtZWRp
YVNlc3Npb25NZXRhZGF0YURpZENoYW5nZShjb25zdCBXZWJDb3JlOjpNZWRpYVNlc3Npb25NZXRh
ZGF0YSYpIGZpbmFsOworICAgIHZvaWQgZm9jdXNlZENvbnRlbnRNZWRpYUVsZW1lbnREaWRDaGFu
Z2UodWludDY0X3QpIGZpbmFsOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoU1VCVExFX0NSWVBUTykK
LSAgICBib29sIHdyYXBDcnlwdG9LZXkoY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiwgVmVjdG9yPHVp
bnQ4X3Q+JikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgYm9vbCB1bndyYXBDcnlwdG9LZXkoY29uc3Qg
VmVjdG9yPHVpbnQ4X3Q+JiwgVmVjdG9yPHVpbnQ4X3Q+JikgY29uc3Qgb3ZlcnJpZGU7CisgICAg
Ym9vbCB3cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90PiYsIFZlY3Rvcjx1aW50OF90
PiYpIGNvbnN0IGZpbmFsOworICAgIGJvb2wgdW53cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1
aW50OF90PiYsIFZlY3Rvcjx1aW50OF90PiYpIGNvbnN0IGZpbmFsOwogI2VuZGlmCiAKICNpZiBF
TkFCTEUoVEVMRVBIT05FX05VTUJFUl9ERVRFQ1RJT04pICYmIFBMQVRGT1JNKE1BQykKLSAgICB2
b2lkIGhhbmRsZVRlbGVwaG9uZU51bWJlckNsaWNrKGNvbnN0IFN0cmluZyYgbnVtYmVyLCBjb25z
dCBXZWJDb3JlOjpJbnRQb2ludCYpIG92ZXJyaWRlOworICAgIHZvaWQgaGFuZGxlVGVsZXBob25l
TnVtYmVyQ2xpY2soY29uc3QgU3RyaW5nJiBudW1iZXIsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50
JikgZmluYWw7CiAjZW5kaWYKKwogI2lmIEVOQUJMRShTRVJWSUNFX0NPTlRST0xTKQotICAgIHZv
aWQgaGFuZGxlU2VsZWN0aW9uU2VydmljZUNsaWNrKFdlYkNvcmU6OkZyYW1lU2VsZWN0aW9uJiwg
Y29uc3QgVmVjdG9yPFN0cmluZz4mIHRlbGVwaG9uZU51bWJlcnMsIGNvbnN0IFdlYkNvcmU6Oklu
dFBvaW50Jikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBoYXNSZWxldmFudFNlbGVjdGlvblNlcnZpY2Vz
KGJvb2wgaXNUZXh0T25seSkgY29uc3Qgb3ZlcnJpZGU7CisgICAgdm9pZCBoYW5kbGVTZWxlY3Rp
b25TZXJ2aWNlQ2xpY2soV2ViQ29yZTo6RnJhbWVTZWxlY3Rpb24mLCBjb25zdCBWZWN0b3I8U3Ry
aW5nPiYgdGVsZXBob25lTnVtYmVycywgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKSBmaW5hbDsK
KyAgICBib29sIGhhc1JlbGV2YW50U2VsZWN0aW9uU2VydmljZXMoYm9vbCBpc1RleHRPbmx5KSBj
b25zdCBmaW5hbDsKICNlbmRpZgogCi0gICAgYm9vbCBzaG91bGREaXNwYXRjaEZha2VNb3VzZU1v
dmVFdmVudHMoKSBjb25zdCBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZERpc3BhdGNoRmFrZU1v
dXNlTW92ZUV2ZW50cygpIGNvbnN0IGZpbmFsOwogCi0gICAgdm9pZCBoYW5kbGVBdXRvRmlsbEJ1
dHRvbkNsaWNrKFdlYkNvcmU6OkhUTUxJbnB1dEVsZW1lbnQmKSBvdmVycmlkZTsKKyAgICB2b2lk
IGhhbmRsZUF1dG9GaWxsQnV0dG9uQ2xpY2soV2ViQ29yZTo6SFRNTElucHV0RWxlbWVudCYpIGZp
bmFsOwogCiAjaWYgRU5BQkxFKFdJUkVMRVNTX1BMQVlCQUNLX1RBUkdFVCkgJiYgIVBMQVRGT1JN
KElPUykKLSAgICB2b2lkIGFkZFBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2NF90IC8q
Y29udGV4dElkKi8pIG92ZXJyaWRlOwotICAgIHZvaWQgcmVtb3ZlUGxheWJhY2tUYXJnZXRQaWNr
ZXJDbGllbnQodWludDY0X3QgLypjb250ZXh0SWQqLykgb3ZlcnJpZGU7Ci0gICAgdm9pZCBzaG93
UGxheWJhY2tUYXJnZXRQaWNrZXIodWludDY0X3QgY29udGV4dElkLCBjb25zdCBXZWJDb3JlOjpJ
bnRQb2ludCYsIGJvb2wpIG92ZXJyaWRlOwotICAgIHZvaWQgcGxheWJhY2tUYXJnZXRQaWNrZXJD
bGllbnRTdGF0ZURpZENoYW5nZSh1aW50NjRfdCwgV2ViQ29yZTo6TWVkaWFQcm9kdWNlcjo6TWVk
aWFTdGF0ZUZsYWdzKSBvdmVycmlkZTsKLSAgICB2b2lkIHNldE1vY2tNZWRpYVBsYXliYWNrVGFy
Z2V0UGlja2VyRW5hYmxlZChib29sKSBvdmVycmlkZTsKLSAgICB2b2lkIHNldE1vY2tNZWRpYVBs
YXliYWNrVGFyZ2V0UGlja2VyU3RhdGUoY29uc3QgU3RyaW5nJiwgV2ViQ29yZTo6TWVkaWFQbGF5
YmFja1RhcmdldENvbnRleHQ6OlN0YXRlKSBvdmVycmlkZTsKKyAgICB2b2lkIGFkZFBsYXliYWNr
VGFyZ2V0UGlja2VyQ2xpZW50KHVpbnQ2NF90IC8qY29udGV4dElkKi8pIGZpbmFsOworICAgIHZv
aWQgcmVtb3ZlUGxheWJhY2tUYXJnZXRQaWNrZXJDbGllbnQodWludDY0X3QgLypjb250ZXh0SWQq
LykgZmluYWw7CisgICAgdm9pZCBzaG93UGxheWJhY2tUYXJnZXRQaWNrZXIodWludDY0X3QgY29u
dGV4dElkLCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYsIGJvb2wpIGZpbmFsOworICAgIHZvaWQg
cGxheWJhY2tUYXJnZXRQaWNrZXJDbGllbnRTdGF0ZURpZENoYW5nZSh1aW50NjRfdCwgV2ViQ29y
ZTo6TWVkaWFQcm9kdWNlcjo6TWVkaWFTdGF0ZUZsYWdzKSBmaW5hbDsKKyAgICB2b2lkIHNldE1v
Y2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyRW5hYmxlZChib29sKSBmaW5hbDsKKyAgICB2b2lk
IHNldE1vY2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyU3RhdGUoY29uc3QgU3RyaW5nJiwgV2Vi
Q29yZTo6TWVkaWFQbGF5YmFja1RhcmdldENvbnRleHQ6OlN0YXRlKSBmaW5hbDsKICNlbmRpZgog
Ci0gICAgdm9pZCBpbWFnZU9yTWVkaWFEb2N1bWVudFNpemVDaGFuZ2VkKGNvbnN0IFdlYkNvcmU6
OkludFNpemUmKSBvdmVycmlkZTsKLSNpZiBFTkFCTEUoVklERU8pCi0jaWYgVVNFKEdTVFJFQU1F
UikKLSAgICB2b2lkIHJlcXVlc3RJbnN0YWxsTWlzc2luZ01lZGlhUGx1Z2lucyhjb25zdCBTdHJp
bmcmIC8qZGV0YWlscyovLCBjb25zdCBTdHJpbmcmIC8qZGVzY3JpcHRpb24qLywgV2ViQ29yZTo6
TWVkaWFQbGF5ZXJSZXF1ZXN0SW5zdGFsbE1pc3NpbmdQbHVnaW5zQ2FsbGJhY2smKSBvdmVycmlk
ZTsKLSNlbmRpZgorICAgIHZvaWQgaW1hZ2VPck1lZGlhRG9jdW1lbnRTaXplQ2hhbmdlZChjb25z
dCBXZWJDb3JlOjpJbnRTaXplJikgZmluYWw7CisKKyNpZiBFTkFCTEUoVklERU8pICYmIFVTRShH
U1RSRUFNRVIpCisgICAgdm9pZCByZXF1ZXN0SW5zdGFsbE1pc3NpbmdNZWRpYVBsdWdpbnMoY29u
c3QgU3RyaW5nJiAvKmRldGFpbHMqLywgY29uc3QgU3RyaW5nJiAvKmRlc2NyaXB0aW9uKi8sIFdl
YkNvcmU6Ok1lZGlhUGxheWVyUmVxdWVzdEluc3RhbGxNaXNzaW5nUGx1Z2luc0NhbGxiYWNrJikg
ZmluYWw7CiAjZW5kaWYKIAotICAgIHZvaWQgZGlkSW52YWxpZGF0ZURvY3VtZW50TWFya2VyUmVj
dHMoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZEludmFsaWRhdGVEb2N1bWVudE1hcmtlclJlY3Rz
KCkgZmluYWw7CiAKICAgICBTdHJpbmcgbV9jYWNoZWRUb29sVGlwOwogICAgIG11dGFibGUgUmVm
UHRyPFdlYkZyYW1lPiBtX2NhY2hlZEZyYW1lU2V0TGFyZ2VzdEZyYW1lOwotICAgIG11dGFibGUg
Ym9vbCBtX2NhY2hlZE1haW5GcmFtZUhhc0hvcml6b250YWxTY3JvbGxiYXI7Ci0gICAgbXV0YWJs
ZSBib29sIG1fY2FjaGVkTWFpbkZyYW1lSGFzVmVydGljYWxTY3JvbGxiYXI7CisgICAgbXV0YWJs
ZSBib29sIG1fY2FjaGVkTWFpbkZyYW1lSGFzSG9yaXpvbnRhbFNjcm9sbGJhciB7IGZhbHNlIH07
CisgICAgbXV0YWJsZSBib29sIG1fY2FjaGVkTWFpbkZyYW1lSGFzVmVydGljYWxTY3JvbGxiYXIg
eyBmYWxzZSB9OwogCi0gICAgV2ViUGFnZSogbV9wYWdlOworICAgIFdlYlBhZ2UmIG1fcGFnZTsK
IH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuY3BwIGIvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQuY3BwCmluZGV4
IDU0YjI3YjQ0MDQ4NTI2OWU1ZTg3ZjgyZDBmYjUwMmExZjAyMmFjMzMuLjhiODA3NTUyYzQxMTQ1
MjYyNDg4MDM4M2Y5ZDMyYWJhYTA3NmJlZmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5jcHAKQEAg
LTIzOCwyMSArMjM4LDIxIEBAIHZvaWQgV2ViRWRpdG9yQ2xpZW50OjpnZXRDbGllbnRQYXN0ZWJv
YXJkRGF0YUZvclJhbmdlKFJhbmdlKiByYW5nZSwgVmVjdG9yPFN0cmluCiAgICAgbV9wYWdlLT5p
bmplY3RlZEJ1bmRsZUVkaXRvckNsaWVudCgpLmdldFBhc3RlYm9hcmREYXRhRm9yUmFuZ2UoKm1f
cGFnZSwgcmFuZ2UsIHBhc3RlYm9hcmRUeXBlcywgcGFzdGVib2FyZERhdGEpOwogfQogCi12b2lk
IFdlYkVkaXRvckNsaWVudDo6cmVnaXN0ZXJVbmRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVwPiBz
dGVwKQordm9pZCBXZWJFZGl0b3JDbGllbnQ6OnJlZ2lzdGVyVW5kb1N0ZXAoVW5kb1N0ZXAmIHN0
ZXApCiB7CiAgICAgLy8gRklYTUU6IEFkZCBhc3NlcnRpb24gdGhhdCB0aGUgY29tbWFuZCBiZWlu
ZyByZWFwcGxpZWQgaXMgdGhlIHNhbWUgY29tbWFuZCB0aGF0IGlzCiAgICAgLy8gYmVpbmcgcGFz
c2VkIHRvIHVzLgogICAgIGlmIChtX3BhZ2UtPmlzSW5SZWRvKCkpCiAgICAgICAgIHJldHVybjsK
IAotICAgIFJlZlB0cjxXZWJVbmRvU3RlcD4gd2ViU3RlcCA9IFdlYlVuZG9TdGVwOjpjcmVhdGUo
c3RlcCk7Ci0gICAgbV9wYWdlLT5hZGRXZWJVbmRvU3RlcCh3ZWJTdGVwLT5zdGVwSUQoKSwgd2Vi
U3RlcC5nZXQoKSk7Ci0gICAgdWludDMyX3QgZWRpdEFjdGlvbiA9IHN0YXRpY19jYXN0PHVpbnQz
Ml90Pih3ZWJTdGVwLT5zdGVwKCktPmVkaXRpbmdBY3Rpb24oKSk7CisgICAgYXV0byB3ZWJTdGVw
ID0gV2ViVW5kb1N0ZXA6OmNyZWF0ZSgmc3RlcCk7CisgICAgYXV0byBlZGl0QWN0aW9uID0gc3Rh
dGljX2Nhc3Q8dWludDMyX3Q+KHdlYlN0ZXAtPnN0ZXAoKS0+ZWRpdGluZ0FjdGlvbigpKTsKIAor
ICAgIG1fcGFnZS0+YWRkV2ViVW5kb1N0ZXAod2ViU3RlcC0+c3RlcElEKCksIHdlYlN0ZXAucHRy
KCkpOwogICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZWdpc3RlckVk
aXRDb21tYW5kRm9yVW5kbyh3ZWJTdGVwLT5zdGVwSUQoKSwgZWRpdEFjdGlvbikpOwogfQogCi12
b2lkIFdlYkVkaXRvckNsaWVudDo6cmVnaXN0ZXJSZWRvU3RlcChQYXNzUmVmUHRyPFVuZG9TdGVw
PikKK3ZvaWQgV2ViRWRpdG9yQ2xpZW50OjpyZWdpc3RlclJlZG9TdGVwKFVuZG9TdGVwJikKIHsK
IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9XZWJFZGl0b3JDbGllbnQuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViRWRpdG9yQ2xpZW50LmgKaW5kZXggOGQ4MTc0ZGM5MTNhZjVlMmNiMzAxODA3NDIw
NWFkOTU4MTk2NGE2MC4uY2UyYmNjNDcxODg0YWVlMWQ5ZGE1YzJkYTdjNWM3OGI2ZWY4NTRlYyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJF
ZGl0b3JDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L1dlYkVkaXRvckNsaWVudC5oCkBAIC03MSw4ICs3MSw4IEBAIHByaXZhdGU6CiAgICAgdm9p
ZCBkaWRXcml0ZVNlbGVjdGlvblRvUGFzdGVib2FyZCgpIGZpbmFsOwogICAgIHZvaWQgZ2V0Q2xp
ZW50UGFzdGVib2FyZERhdGFGb3JSYW5nZShXZWJDb3JlOjpSYW5nZSosIFZlY3RvcjxTdHJpbmc+
JiBwYXN0ZWJvYXJkVHlwZXMsIFZlY3RvcjxSZWZQdHI8V2ViQ29yZTo6U2hhcmVkQnVmZmVyPj4m
IHBhc3RlYm9hcmREYXRhKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHJlZ2lzdGVyVW5kb1N0ZXAo
UGFzc1JlZlB0cjxXZWJDb3JlOjpVbmRvU3RlcD4pIGZpbmFsOwotICAgIHZvaWQgcmVnaXN0ZXJS
ZWRvU3RlcChQYXNzUmVmUHRyPFdlYkNvcmU6OlVuZG9TdGVwPikgZmluYWw7CisgICAgdm9pZCBy
ZWdpc3RlclVuZG9TdGVwKFdlYkNvcmU6OlVuZG9TdGVwJikgZmluYWw7CisgICAgdm9pZCByZWdp
c3RlclJlZG9TdGVwKFdlYkNvcmU6OlVuZG9TdGVwJikgZmluYWw7CiAgICAgdm9pZCBjbGVhclVu
ZG9SZWRvT3BlcmF0aW9ucygpIGZpbmFsOwogCiAgICAgYm9vbCBjYW5Db3B5Q3V0KFdlYkNvcmU6
OkZyYW1lKiwgYm9vbCBkZWZhdWx0VmFsdWUpIGNvbnN0IGZpbmFsOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVu
dC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1l
TG9hZGVyQ2xpZW50LmNwcAppbmRleCBmMTc3NWM2ODZmOGY0MDY1MDg2ODUzNTI1ZTAwZjFkZDJi
MTMxYmRmLi44YTc1OTRlMDEzYjIzMTdhM2EzMjdiYWJkNDQ5MmY5MzRlMjAxZGJkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9h
ZGVyQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcApAQCAtNzAxLDcgKzcwMSw3IEBAIHZvaWQgV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UoY29uc3Qg
UmVzb3VyY2VSZXNwb25zCiAgICAgICAgIG1fZnJhbWUtPmRpZFJlY2VpdmVQb2xpY3lEZWNpc2lv
bihsaXN0ZW5lcklELCBzdGF0aWNfY2FzdDxQb2xpY3lBY3Rpb24+KHBvbGljeUFjdGlvbiksIDAs
IGRvd25sb2FkSUQpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERl
Y2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBuYXZp
Z2F0aW9uQWN0aW9uLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFBhc3NSZWZQdHI8
Rm9ybVN0YXRlPiBmb3JtU3RhdGUsIGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCBGcmFtZVBvbGlj
eUZ1bmN0aW9uIGZ1bmN0aW9uKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hE
ZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oY29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgbmF2
aWdhdGlvbkFjdGlvbiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBGb3JtU3RhdGUq
IGZvcm1TdGF0ZSwgY29uc3QgU3RyaW5nJiBmcmFtZU5hbWUsIEZyYW1lUG9saWN5RnVuY3Rpb24g
ZnVuY3Rpb24pCiB7CiAgICAgV2ViUGFnZSogd2ViUGFnZSA9IG1fZnJhbWUtPnBhZ2UoKTsKICAg
ICBpZiAoIXdlYlBhZ2UpIHsKQEAgLTczNyw3ICs3MzcsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihjb25zdCBOYXZp
Z2F0aQogICAgIHdlYlBhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RGVjaWRlUG9s
aWN5Rm9yTmV3V2luZG93QWN0aW9uKG1fZnJhbWUtPmZyYW1lSUQoKSwgU2VjdXJpdHlPcmlnaW5E
YXRhOjpmcm9tRnJhbWUoY29yZUZyYW1lKSwgbmF2aWdhdGlvbkFjdGlvbkRhdGEsIHJlcXVlc3Qs
IGZyYW1lTmFtZSwgbGlzdGVuZXJJRCwgVXNlckRhdGEoV2ViUHJvY2Vzczo6c2luZ2xldG9uKCku
dHJhbnNmb3JtT2JqZWN0c1RvSGFuZGxlcyh1c2VyRGF0YS5nZXQoKSkuZ2V0KCkpKSk7CiB9CiAK
LXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdh
dGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0aW9uQWN0aW9uJiBuYXZpZ2F0aW9uQWN0aW9uLCBjb25z
dCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiBwcnBGb3Jt
U3RhdGUsIEZyYW1lUG9saWN5RnVuY3Rpb24gZnVuY3Rpb24pCit2b2lkIFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgTmF2
aWdhdGlvbkFjdGlvbiYgbmF2aWdhdGlvbkFjdGlvbiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiBy
ZXF1ZXN0LCBGb3JtU3RhdGUqIGZvcm1TdGF0ZSwgRnJhbWVQb2xpY3lGdW5jdGlvbiBmdW5jdGlv
bikKIHsKICAgICBXZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpOwogICAgIGlmICgh
d2ViUGFnZSkgewpAQCAtNzUyLDcgKzc1Miw2IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0CiAg
ICAgfQogCiAgICAgUmVmUHRyPEFQSTo6T2JqZWN0PiB1c2VyRGF0YTsKLSAgICBSZWZQdHI8Rm9y
bVN0YXRlPiBmb3JtU3RhdGUgPSBwcnBGb3JtU3RhdGU7CiAKICAgICBSZWZQdHI8SW5qZWN0ZWRC
dW5kbGVOYXZpZ2F0aW9uQWN0aW9uPiBhY3Rpb24gPSBJbmplY3RlZEJ1bmRsZU5hdmlnYXRpb25B
Y3Rpb246OmNyZWF0ZShtX2ZyYW1lLCBuYXZpZ2F0aW9uQWN0aW9uLCBmb3JtU3RhdGUpOwogCkBA
IC03ODIsNyArNzgxLDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNp
ZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5hdmlnYXQKICAgICBjYXNlIE5hdmln
YXRpb25UeXBlOjpGb3JtU3VibWl0dGVkOgogICAgIGNhc2UgTmF2aWdhdGlvblR5cGU6OkZvcm1S
ZXN1Ym1pdHRlZDoKICAgICAgICAgaWYgKGZvcm1TdGF0ZSkKLSAgICAgICAgICAgIG9yaWdpbmF0
aW5nRnJhbWUgPSBXZWJGcmFtZTo6ZnJvbUNvcmVGcmFtZSgqZm9ybVN0YXRlLT5zb3VyY2VEb2N1
bWVudCgpLT5mcmFtZSgpKTsKKyAgICAgICAgICAgIG9yaWdpbmF0aW5nRnJhbWUgPSBXZWJGcmFt
ZTo6ZnJvbUNvcmVGcmFtZSgqZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgpLmZyYW1lKCkpOwog
ICAgICAgICBicmVhazsKICAgICBjYXNlIE5hdmlnYXRpb25UeXBlOjpCYWNrRm9yd2FyZDoKICAg
ICBjYXNlIE5hdmlnYXRpb25UeXBlOjpSZWxvYWQ6CkBAIC04NDMsNDAgKzg0MiwzNiBAQCB2b2lk
IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFVuYWJsZVRvSW1wbGVtZW50UG9saWN5KGNv
bnN0IFJlc291cmNlRXJyb3ImCiAgICAgd2ViUGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpVbmFibGVUb0ltcGxlbWVudFBvbGljeShtX2ZyYW1lLT5mcmFtZUlEKCksIGVycm9yLCBV
c2VyRGF0YShXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS50cmFuc2Zvcm1PYmplY3RzVG9IYW5kbGVz
KHVzZXJEYXRhLmdldCgpKS5nZXQoKSkpKTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVu
dDo6ZGlzcGF0Y2hXaWxsU2VuZFN1Ym1pdEV2ZW50KFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiBwcnBG
b3JtU3RhdGUpCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kU3Vi
bWl0RXZlbnQoUmVmPEZvcm1TdGF0ZT4mJiBmb3JtU3RhdGUpCiB7Ci0gICAgV2ViUGFnZSogd2Vi
UGFnZSA9IG1fZnJhbWUtPnBhZ2UoKTsKKyAgICBhdXRvKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFn
ZSgpOwogICAgIGlmICghd2ViUGFnZSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgUmVmUHRyPEZv
cm1TdGF0ZT4gZm9ybVN0YXRlID0gcHJwRm9ybVN0YXRlOwotICAgIEhUTUxGb3JtRWxlbWVudCog
Zm9ybSA9IGZvcm1TdGF0ZS0+Zm9ybSgpOworICAgIGF1dG8mIGZvcm0gPSBmb3JtU3RhdGUtPmZv
cm0oKTsKIAotICAgIFdlYkZyYW1lKiBzb3VyY2VGcmFtZSA9IFdlYkZyYW1lOjpmcm9tQ29yZUZy
YW1lKCpmb3JtU3RhdGUtPnNvdXJjZURvY3VtZW50KCktPmZyYW1lKCkpOworICAgIEFTU0VSVChm
b3JtU3RhdGUtPnNvdXJjZURvY3VtZW50KCkuZnJhbWUoKSk7CisgICAgYXV0byogc291cmNlRnJh
bWUgPSBXZWJGcmFtZTo6ZnJvbUNvcmVGcmFtZSgqZm9ybVN0YXRlLT5zb3VyY2VEb2N1bWVudCgp
LmZyYW1lKCkpOwogICAgIEFTU0VSVChzb3VyY2VGcmFtZSk7CiAKLSAgICB3ZWJQYWdlLT5pbmpl
Y3RlZEJ1bmRsZUZvcm1DbGllbnQoKS53aWxsU2VuZFN1Ym1pdEV2ZW50KHdlYlBhZ2UsIGZvcm0s
IG1fZnJhbWUsIHNvdXJjZUZyYW1lLCBmb3JtU3RhdGUtPnRleHRGaWVsZFZhbHVlcygpKTsKKyAg
ICB3ZWJQYWdlLT5pbmplY3RlZEJ1bmRsZUZvcm1DbGllbnQoKS53aWxsU2VuZFN1Ym1pdEV2ZW50
KHdlYlBhZ2UsICZmb3JtLCBtX2ZyYW1lLCBzb3VyY2VGcmFtZSwgZm9ybVN0YXRlLT50ZXh0Rmll
bGRWYWx1ZXMoKSk7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2ls
bFN1Ym1pdEZvcm0oUGFzc1JlZlB0cjxGb3JtU3RhdGU+IHBycEZvcm1TdGF0ZSwgRnJhbWVQb2xp
Y3lGdW5jdGlvbiBmdW5jdGlvbikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNo
V2lsbFN1Ym1pdEZvcm0oRm9ybVN0YXRlJiBmb3JtU3RhdGUsIEZyYW1lUG9saWN5RnVuY3Rpb24g
ZnVuY3Rpb24pCiB7CiAgICAgV2ViUGFnZSogd2ViUGFnZSA9IG1fZnJhbWUtPnBhZ2UoKTsKICAg
ICBpZiAoIXdlYlBhZ2UpCiAgICAgICAgIHJldHVybjsKIAotICAgIC8vIEZJWE1FOiBQYXNzIG1v
cmUgb2YgdGhlIGZvcm0gc3RhdGUuCi0gICAgUmVmUHRyPEZvcm1TdGF0ZT4gZm9ybVN0YXRlID0g
cHJwRm9ybVN0YXRlOwotICAgIAotICAgIEhUTUxGb3JtRWxlbWVudCogZm9ybSA9IGZvcm1TdGF0
ZS0+Zm9ybSgpOworICAgIGF1dG8mIGZvcm0gPSBmb3JtU3RhdGUuZm9ybSgpOwogCi0gICAgV2Vi
RnJhbWUqIHNvdXJjZUZyYW1lID0gV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoKmZvcm1TdGF0ZS0+
c291cmNlRG9jdW1lbnQoKS0+ZnJhbWUoKSk7CisgICAgYXV0byogc291cmNlRnJhbWUgPSBXZWJG
cmFtZTo6ZnJvbUNvcmVGcmFtZSgqZm9ybVN0YXRlLnNvdXJjZURvY3VtZW50KCkuZnJhbWUoKSk7
CiAgICAgQVNTRVJUKHNvdXJjZUZyYW1lKTsKIAotICAgIGNvbnN0IFZlY3RvcjxzdGQ6OnBhaXI8
U3RyaW5nLCBTdHJpbmc+PiYgdmFsdWVzID0gZm9ybVN0YXRlLT50ZXh0RmllbGRWYWx1ZXMoKTsK
KyAgICBhdXRvJiB2YWx1ZXMgPSBmb3JtU3RhdGUudGV4dEZpZWxkVmFsdWVzKCk7CiAKICAgICBS
ZWZQdHI8QVBJOjpPYmplY3Q+IHVzZXJEYXRhOwotICAgIHdlYlBhZ2UtPmluamVjdGVkQnVuZGxl
Rm9ybUNsaWVudCgpLndpbGxTdWJtaXRGb3JtKHdlYlBhZ2UsIGZvcm0sIG1fZnJhbWUsIHNvdXJj
ZUZyYW1lLCB2YWx1ZXMsIHVzZXJEYXRhKTsKLQorICAgIHdlYlBhZ2UtPmluamVjdGVkQnVuZGxl
Rm9ybUNsaWVudCgpLndpbGxTdWJtaXRGb3JtKHdlYlBhZ2UsICZmb3JtLCBtX2ZyYW1lLCBzb3Vy
Y2VGcmFtZSwgdmFsdWVzLCB1c2VyRGF0YSk7CiAKICAgICB1aW50NjRfdCBsaXN0ZW5lcklEID0g
bV9mcmFtZS0+c2V0VXBQb2xpY3lMaXN0ZW5lcihXVEZNb3ZlKGZ1bmN0aW9uKSk7CiAKQEAgLTE0
MDAsMTQgKzEzOTUsMTMgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y29udmVydE1haW5S
ZXNvdXJjZUxvYWRUb0Rvd25sb2FkKERvY3VtZW50TG9hZGVyICpkb2MKICAgICBtX2ZyYW1lLT5j
b252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxvYWQoZG9jdW1lbnRMb2FkZXIsIHNlc3Npb25J
RCwgcmVxdWVzdCwgcmVzcG9uc2UpOwogfQogCi1SZWZQdHI8RnJhbWU+IFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpjcmVhdGVGcmFtZShjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiBuYW1lLCBI
VE1MRnJhbWVPd25lckVsZW1lbnQqIG93bmVyRWxlbWVudCwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBi
b29sIC8qYWxsb3dzU2Nyb2xsaW5nKi8sIGludCAvKm1hcmdpbldpZHRoKi8sIGludCAvKm1hcmdp
bkhlaWdodCovKQorUmVmUHRyPEZyYW1lPiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlRnJh
bWUoY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgbmFtZSwgSFRNTEZyYW1lT3duZXJFbGVt
ZW50JiBvd25lckVsZW1lbnQsCisgICAgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgYm9vbCAvKmFs
bG93c1Njcm9sbGluZyovLCBpbnQgLyptYXJnaW5XaWR0aCovLCBpbnQgLyptYXJnaW5IZWlnaHQq
LykKIHsKLSAgICBXZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpOworICAgIGF1dG8q
IHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7CiAKLSAgICBSZWZQdHI8V2ViRnJhbWU+IHN1YmZy
YW1lID0gV2ViRnJhbWU6OmNyZWF0ZVN1YmZyYW1lKHdlYlBhZ2UsIG5hbWUsIG93bmVyRWxlbWVu
dCk7Ci0KLSAgICBGcmFtZSogY29yZVN1YmZyYW1lID0gc3ViZnJhbWUtPmNvcmVGcmFtZSgpOwor
ICAgIGF1dG8gc3ViZnJhbWUgPSBXZWJGcmFtZTo6Y3JlYXRlU3ViZnJhbWUod2ViUGFnZSwgbmFt
ZSwgJm93bmVyRWxlbWVudCk7CisgICAgYXV0byogY29yZVN1YmZyYW1lID0gc3ViZnJhbWUtPmNv
cmVGcmFtZSgpOwogICAgIGlmICghY29yZVN1YmZyYW1lKQogICAgICAgICByZXR1cm4gbnVsbHB0
cjsKIApAQCAtMTQyNyw3ICsxNDIxLDcgQEAgUmVmUHRyPEZyYW1lPiBXZWJGcmFtZUxvYWRlckNs
aWVudDo6Y3JlYXRlRnJhbWUoY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgbmEKICAgICBy
ZXR1cm4gY29yZVN1YmZyYW1lOwogfQogCi1SZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNs
aWVudDo6Y3JlYXRlUGx1Z2luKGNvbnN0IEludFNpemUmLCBIVE1MUGx1Z0luRWxlbWVudCogcGx1
Z2luRWxlbWVudCwgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5h
bWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMsIGNvbnN0IFN0cmluZyYgbWlt
ZVR5cGUsIGJvb2wgbG9hZE1hbnVhbGx5KQorUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiwgSFRNTFBsdWdJbkVsZW1lbnQmIHBs
dWdpbkVsZW1lbnQsIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1O
YW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzLCBjb25zdCBTdHJpbmcmIG1p
bWVUeXBlLCBib29sIGxvYWRNYW51YWxseSkKIHsKICAgICBBU1NFUlQocGFyYW1OYW1lcy5zaXpl
KCkgPT0gcGFyYW1WYWx1ZXMuc2l6ZSgpKTsKICAgICBBU1NFUlQobV9mcmFtZS0+cGFnZSgpKTsK
QEAgLTE0NDQsMTEgKzE0MzgsMTEgQEAgUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiwgSFRNTFBsdWdJbkVsZW0KICNlbmRpZgog
CiAjaWYgRU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCi0gICAgYXV0byBwbHVnaW4gPSBtX2Zy
YW1lLT5wYWdlKCktPmNyZWF0ZVBsdWdpbihtX2ZyYW1lLCBwbHVnaW5FbGVtZW50LCBwYXJhbWV0
ZXJzLCBwYXJhbWV0ZXJzLm1pbWVUeXBlKTsKKyAgICBhdXRvIHBsdWdpbiA9IG1fZnJhbWUtPnBh
Z2UoKS0+Y3JlYXRlUGx1Z2luKG1fZnJhbWUsICZwbHVnaW5FbGVtZW50LCBwYXJhbWV0ZXJzLCBw
YXJhbWV0ZXJzLm1pbWVUeXBlKTsKICAgICBpZiAoIXBsdWdpbikKICAgICAgICAgcmV0dXJuIG51
bGxwdHI7CiAKLSAgICByZXR1cm4gUGx1Z2luVmlldzo6Y3JlYXRlKHBsdWdpbkVsZW1lbnQsIFdU
Rk1vdmUocGx1Z2luKSwgcGFyYW1ldGVycyk7CisgICAgcmV0dXJuIFBsdWdpblZpZXc6OmNyZWF0
ZShwbHVnaW5FbGVtZW50LCBwbHVnaW4ucmVsZWFzZU5vbk51bGwoKSwgcGFyYW1ldGVycyk7CiAj
ZWxzZQogICAgIFVOVVNFRF9QQVJBTShwbHVnaW5FbGVtZW50KTsKICAgICByZXR1cm4gbnVsbHB0
cjsKQEAgLTE0NTgsMTMgKzE0NTIsMTQgQEAgUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmNyZWF0ZVBsdWdpbihjb25zdCBJbnRTaXplJiwgSFRNTFBsdWdJbkVsZW0KIHZvaWQg
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OnJlY3JlYXRlUGx1Z2luKFdpZGdldCogd2lkZ2V0KQogewog
I2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQotICAgIEFTU0VSVCh3aWRnZXQgJiYgd2lk
Z2V0LT5pc1BsdWdpblZpZXdCYXNlKCkpOworICAgIEFTU0VSVCh3aWRnZXQpOworICAgIEFTU0VS
VCh3aWRnZXQtPmlzUGx1Z2luVmlld0Jhc2UoKSk7CiAgICAgQVNTRVJUKG1fZnJhbWUtPnBhZ2Uo
KSk7CiAKLSAgICBQbHVnaW5WaWV3KiBwbHVnaW5WaWV3ID0gc3RhdGljX2Nhc3Q8UGx1Z2luVmll
dyo+KHdpZGdldCk7CisgICAgYXV0byYgcGx1Z2luVmlldyA9IHN0YXRpY19jYXN0PFBsdWdpblZp
ZXcmPigqd2lkZ2V0KTsKICAgICBTdHJpbmcgbmV3TUlNRVR5cGU7Ci0gICAgYXV0byBwbHVnaW4g
PSBtX2ZyYW1lLT5wYWdlKCktPmNyZWF0ZVBsdWdpbihtX2ZyYW1lLCBwbHVnaW5WaWV3LT5wbHVn
aW5FbGVtZW50KCksIHBsdWdpblZpZXctPmluaXRpYWxQYXJhbWV0ZXJzKCksIG5ld01JTUVUeXBl
KTsKLSAgICBwbHVnaW5WaWV3LT5yZWNyZWF0ZUFuZEluaXRpYWxpemUoV1RGTW92ZShwbHVnaW4p
KTsKKyAgICBhdXRvIHBsdWdpbiA9IG1fZnJhbWUtPnBhZ2UoKS0+Y3JlYXRlUGx1Z2luKG1fZnJh
bWUsIHBsdWdpblZpZXcucGx1Z2luRWxlbWVudCgpLCBwbHVnaW5WaWV3LmluaXRpYWxQYXJhbWV0
ZXJzKCksIG5ld01JTUVUeXBlKTsKKyAgICBwbHVnaW5WaWV3LnJlY3JlYXRlQW5kSW5pdGlhbGl6
ZShwbHVnaW4ucmVsZWFzZU5vbk51bGwoKSk7CiAjZWxzZQogICAgIFVOVVNFRF9QQVJBTSh3aWRn
ZXQpOwogI2VuZGlmCkBAIC0xNDc3LDkgKzE0NzIsMTAgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNs
aWVudDo6cmVkaXJlY3REYXRhVG9QbHVnaW4oV2lkZ2V0KiBwbHVnaW5XaWRnZXQpCiB9CiAKICNp
ZiBFTkFCTEUoV0VCR0wpCisKIFdlYkNvcmU6OldlYkdMTG9hZFBvbGljeSBXZWJGcmFtZUxvYWRl
ckNsaWVudDo6d2ViR0xQb2xpY3lGb3JVUkwoY29uc3QgU3RyaW5nJiB1cmwpIGNvbnN0CiB7Ci0g
ICAgaWYgKFdlYlBhZ2UqIHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCkpCisgICAgaWYgKGF1dG8q
IHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCkpCiAgICAgICAgIHJldHVybiB3ZWJQYWdlLT53ZWJH
TFBvbGljeUZvclVSTChtX2ZyYW1lLCB1cmwpOwogCiAgICAgcmV0dXJuIFdlYkdMQWxsb3dDcmVh
dGlvbjsKQEAgLTE0ODcsMzEgKzE0ODMsMzIgQEAgV2ViQ29yZTo6V2ViR0xMb2FkUG9saWN5IFdl
YkZyYW1lTG9hZGVyQ2xpZW50Ojp3ZWJHTFBvbGljeUZvclVSTChjb25zdCBTdHJpbmcmIHUKIAog
V2ViQ29yZTo6V2ViR0xMb2FkUG9saWN5IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpyZXNvbHZlV2Vi
R0xQb2xpY3lGb3JVUkwoY29uc3QgU3RyaW5nJiB1cmwpIGNvbnN0CiB7Ci0gICAgaWYgKFdlYlBh
Z2UqIHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCkpCisgICAgaWYgKGF1dG8qIHdlYlBhZ2UgPSBt
X2ZyYW1lLT5wYWdlKCkpCiAgICAgICAgIHJldHVybiB3ZWJQYWdlLT5yZXNvbHZlV2ViR0xQb2xp
Y3lGb3JVUkwobV9mcmFtZSwgdXJsKTsKIAogICAgIHJldHVybiBXZWJHTEFsbG93Q3JlYXRpb247
CiB9Ci0jZW5kaWYgLy8gRU5BQkxFKFdFQkdMKQogCi1QYXNzUmVmUHRyPFdpZGdldD4gV2ViRnJh
bWVMb2FkZXJDbGllbnQ6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYgcGx1
Z2luU2l6ZSwgSFRNTEFwcGxldEVsZW1lbnQqIGFwcGxldEVsZW1lbnQsIGNvbnN0IFVSTCYsIGNv
bnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFy
YW1WYWx1ZXMpCisjZW5kaWYKKworUmVmUHRyPFdpZGdldD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3QgSW50U2l6ZSYgcGx1Z2luU2l6ZSwgSFRNTEFw
cGxldEVsZW1lbnQmIGFwcGxldEVsZW1lbnQsIGNvbnN0IFVSTCYsIGNvbnN0IFZlY3RvcjxTdHJp
bmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpCiB7CiAj
aWYgRU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCi0gICAgYXV0byBwbHVnaW4gPSBjcmVhdGVQ
bHVnaW4ocGx1Z2luU2l6ZSwgYXBwbGV0RWxlbWVudCwgVVJMKCksIHBhcmFtTmFtZXMsIHBhcmFt
VmFsdWVzLCBhcHBsZXRFbGVtZW50LT5zZXJ2aWNlVHlwZSgpLCBmYWxzZSk7CisgICAgYXV0byBw
bHVnaW4gPSBjcmVhdGVQbHVnaW4ocGx1Z2luU2l6ZSwgYXBwbGV0RWxlbWVudCwgVVJMKCksIHBh
cmFtTmFtZXMsIHBhcmFtVmFsdWVzLCBhcHBsZXRFbGVtZW50LnNlcnZpY2VUeXBlKCksIGZhbHNl
KTsKICAgICBpZiAoIXBsdWdpbikgewotICAgICAgICBpZiAoV2ViUGFnZSogd2ViUGFnZSA9IG1f
ZnJhbWUtPnBhZ2UoKSkgewotICAgICAgICAgICAgU3RyaW5nIGZyYW1lVVJMU3RyaW5nID0gbV9m
cmFtZS0+Y29yZUZyYW1lKCktPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCktPnJlc3BvbnNlVVJM
KCkuc3RyaW5nKCk7Ci0gICAgICAgICAgICBTdHJpbmcgcGFnZVVSTFN0cmluZyA9IHdlYlBhZ2Ut
PmNvcmVQYWdlKCktPm1haW5GcmFtZSgpLmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCktPnJlc3Bv
bnNlVVJMKCkuc3RyaW5nKCk7Ci0gICAgICAgICAgICB3ZWJQYWdlLT5zZW5kKE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OkRpZEZhaWxUb0luaXRpYWxpemVQbHVnaW4oYXBwbGV0RWxlbWVudC0+c2Vy
dmljZVR5cGUoKSwgZnJhbWVVUkxTdHJpbmcsIHBhZ2VVUkxTdHJpbmcpKTsKKyAgICAgICAgaWYg
KGF1dG8qIHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCkpIHsKKyAgICAgICAgICAgIGF1dG8gZnJh
bWVVUkxTdHJpbmcgPSBtX2ZyYW1lLT5jb3JlRnJhbWUoKS0+bG9hZGVyKCkuZG9jdW1lbnRMb2Fk
ZXIoKS0+cmVzcG9uc2VVUkwoKS5zdHJpbmcoKTsKKyAgICAgICAgICAgIGF1dG8gcGFnZVVSTFN0
cmluZyA9IHdlYlBhZ2UtPmNvcmVQYWdlKCktPm1haW5GcmFtZSgpLmxvYWRlcigpLmRvY3VtZW50
TG9hZGVyKCktPnJlc3BvbnNlVVJMKCkuc3RyaW5nKCk7CisgICAgICAgICAgICB3ZWJQYWdlLT5z
ZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkRpZEZhaWxUb0luaXRpYWxpemVQbHVnaW4oYXBw
bGV0RWxlbWVudC5zZXJ2aWNlVHlwZSgpLCBmcmFtZVVSTFN0cmluZywgcGFnZVVSTFN0cmluZykp
OwogICAgICAgICB9CiAgICAgfQotICAgIHJldHVybiBXVEZNb3ZlKHBsdWdpbik7CisgICAgcmV0
dXJuIHBsdWdpbjsKICNlbHNlCiAgICAgVU5VU0VEX1BBUkFNKHBsdWdpblNpemUpOwogICAgIFVO
VVNFRF9QQVJBTShhcHBsZXRFbGVtZW50KTsKICAgICBVTlVTRURfUEFSQU0ocGFyYW1OYW1lcyk7
CiAgICAgVU5VU0VEX1BBUkFNKHBhcmFtVmFsdWVzKTsKLSAgICByZXR1cm4gMDsKKyAgICByZXR1
cm4gbnVsbHB0cjsKICNlbmRpZgogfQogCkBAIC0xNzE3LDEzICsxNzE0LDEzIEBAIGJvb2wgV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZEZvcmNlVW5pdmVyc2FsQWNjZXNzRnJvbUxvY2FsVVJM
KGNvbnN0IFdlYkNvcmU6CiAgICAgcmV0dXJuIHdlYlBhZ2UtPmluamVjdGVkQnVuZGxlTG9hZGVy
Q2xpZW50KCkuc2hvdWxkRm9yY2VVbml2ZXJzYWxBY2Nlc3NGcm9tTG9jYWxVUkwod2ViUGFnZSwg
dXJsLnN0cmluZygpKTsKIH0KIAotUGFzc1JlZlB0cjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBX
ZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlTmV0d29ya2luZ0NvbnRleHQoKQorUmVmPEZyYW1l
TmV0d29ya2luZ0NvbnRleHQ+IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjcmVhdGVOZXR3b3JraW5n
Q29udGV4dCgpCiB7Ci0gICAgYXV0byBjb250ZXh0ID0gV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4
dDo6Y3JlYXRlKG1fZnJhbWUpOwotICAgIHJldHVybiBXVEZNb3ZlKGNvbnRleHQpOworICAgIHJl
dHVybiBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0OjpjcmVhdGUobV9mcmFtZSk7CiB9CiAKICNp
ZiBFTkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCisKIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmNvbnRlbnRGaWx0ZXJEaWRCbG9ja0xvYWQoV2ViQ29yZTo6Q29udGVudEZpbHRlclVuYmxvY2tI
YW5kbGVyIHVuYmxvY2tIYW5kbGVyKQogewogICAgIGlmICghdW5ibG9ja0hhbmRsZXIubmVlZHNV
SVByb2Nlc3MoKSkgewpAQCAtMTczNCwxMiArMTczMSwxNSBAQCB2b2lkIFdlYkZyYW1lTG9hZGVy
Q2xpZW50Ojpjb250ZW50RmlsdGVyRGlkQmxvY2tMb2FkKFdlYkNvcmU6OkNvbnRlbnRGaWx0ZXJV
bmJsbwogICAgIGlmIChXZWJQYWdlKiB3ZWJQYWdlIHsgbV9mcmFtZS0+cGFnZSgpIH0pCiAgICAg
ICAgIHdlYlBhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6Q29udGVudEZpbHRlckRp
ZEJsb2NrTG9hZEZvckZyYW1lKHVuYmxvY2tIYW5kbGVyLCBtX2ZyYW1lLT5mcmFtZUlEKCkpKTsK
IH0KKwogI2VuZGlmCiAKICNpZiBFTkFCTEUoUkVRVUVTVF9BVVRPQ09NUExFVEUpCi12b2lkIFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpkaWRSZXF1ZXN0QXV0b2NvbXBsZXRlKFBhc3NSZWZQdHI8V2Vi
Q29yZTo6Rm9ybVN0YXRlPikKKwordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlkUmVxdWVz
dEF1dG9jb21wbGV0ZShSZWY8V2ViQ29yZTo6Rm9ybVN0YXRlPiYmKQogewogfQorCiAjZW5kaWYK
IAogdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6cHJlZmV0Y2hETlMoY29uc3QgU3RyaW5nJiBo
b3N0bmFtZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaAppbmRleCBkYjJmOTQ5MTQwNzI0
MDc3NzNiZDA4NmY3ZjhiOWFjZDA3ZWVhNzQ2Li4wYjgyOWI0YTI5MDdjODRlODkxNjBjMTg3ZTM4
ZGU0YWY5M2E1MTk5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCkBAIC0zNiw3ICsz
Niw3IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogY2xhc3MgUGx1Z2luVmlldzsKIGNsYXNzIFdlYkZy
YW1lOwogICAgIAotY2xhc3MgV2ViRnJhbWVMb2FkZXJDbGllbnQgOiBwdWJsaWMgV2ViQ29yZTo6
RnJhbWVMb2FkZXJDbGllbnQgeworY2xhc3MgV2ViRnJhbWVMb2FkZXJDbGllbnQgZmluYWwgOiBw
dWJsaWMgV2ViQ29yZTo6RnJhbWVMb2FkZXJDbGllbnQgewogcHVibGljOgogICAgIFdlYkZyYW1l
TG9hZGVyQ2xpZW50KCk7CiAgICAgfldlYkZyYW1lTG9hZGVyQ2xpZW50KCk7CkBAIC00OSwyMTcg
KzQ5LDIxNiBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRVc2VJY29uTG9hZGluZ0NsaWVudChib29s
IHVzZUljb25Mb2FkaW5nQ2xpZW50KSB7IG1fdXNlSWNvbkxvYWRpbmdDbGllbnQgPSB1c2VJY29u
TG9hZGluZ0NsaWVudDsgfQogCiBwcml2YXRlOgotICAgIHZvaWQgZnJhbWVMb2FkZXJEZXN0cm95
ZWQoKSBvdmVycmlkZTsKKyAgICB2b2lkIGZyYW1lTG9hZGVyRGVzdHJveWVkKCkgZmluYWw7CiAK
LSAgICBib29sIGhhc0hUTUxWaWV3KCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgYm9vbCBoYXNXZWJW
aWV3KCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBoYXNIVE1MVmlldygpIGNvbnN0IGZpbmFs
OworICAgIGJvb2wgaGFzV2ViVmlldygpIGNvbnN0IGZpbmFsOwogICAgIAotICAgIHZvaWQgbWFr
ZVJlcHJlc2VudGF0aW9uKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKikgb3ZlcnJpZGU7CisgICAg
dm9pZCBtYWtlUmVwcmVzZW50YXRpb24oV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBmaW5hbDsK
ICNpZiBQTEFURk9STShJT1MpCi0gICAgYm9vbCBmb3JjZUxheW91dE9uUmVzdG9yZUZyb21QYWdl
Q2FjaGUoKSBvdmVycmlkZTsKKyAgICBib29sIGZvcmNlTGF5b3V0T25SZXN0b3JlRnJvbVBhZ2VD
YWNoZSgpIGZpbmFsOwogI2VuZGlmCi0gICAgdm9pZCBmb3JjZUxheW91dEZvck5vbkhUTUwoKSBv
dmVycmlkZTsKKyAgICB2b2lkIGZvcmNlTGF5b3V0Rm9yTm9uSFRNTCgpIGZpbmFsOwogICAgIAot
ICAgIHZvaWQgc2V0Q29waWVzT25TY3JvbGwoKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldENvcGll
c09uU2Nyb2xsKCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBkZXRhY2hlZEZyb21QYXJlbnQyKCkg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBkZXRhY2hlZEZyb21QYXJlbnQzKCkgb3ZlcnJpZGU7CisgICAg
dm9pZCBkZXRhY2hlZEZyb21QYXJlbnQyKCkgZmluYWw7CisgICAgdm9pZCBkZXRhY2hlZEZyb21Q
YXJlbnQzKCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBhc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFs
UmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
KiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7CisgICAgdm9pZCBh
c3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
JikgZmluYWw7CiAgICAgCi0gICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RS
ZXNwb25zZSkgb3ZlcnJpZGU7Ci0gICAgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3Qg
V2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRp
c3BhdGNoV2lsbFNlbmRSZXF1ZXN0KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKSBmaW5hbDsKKyAgICBib29sIHNo
b3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUF1
dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYp
IGZpbmFsOwogI2lmIFVTRShQUk9URUNUSU9OX1NQQUNFX0FVVEhfQ0FMTEJBQ0spCi0gICAgYm9v
bCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpQcm90ZWN0
aW9uU3BhY2UmKSBvdmVycmlkZTsKKyAgICBib29sIGNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90
ZWN0aW9uU3BhY2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlByb3RlY3Rpb25TcGFjZSYpIGZpbmFsOwogI2VuZGlmCiAj
aWYgUExBVEZPUk0oSU9TKQotICAgIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IGNvbm5lY3Rp
b25Qcm9wZXJ0aWVzKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyKSBvdmVycmlkZTsKKyAgICBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBjb25uZWN0
aW9uUHJvcGVydGllcyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllcikgZmluYWw7CiAjZW5kaWYKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVJlc3Bv
bnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNw
YXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNp
Z25lZCBsb25nIGlkZW50aWZpZXIpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWls
TG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwotICAgIGJvb2wgZGlz
cGF0Y2hEaWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2FjaGUoV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlc3BvbnNlJiwgaW50IGxlbmd0aCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERp
ZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOworICAg
IHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChXZWJDb3JlOjpEb2N1bWVudExv
YWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgaW50IGRhdGFMZW5ndGgpIGZpbmFsOwor
ICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
KiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlk
RmFpbExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKKyAgICBib29sIGRp
c3BhdGNoRGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXNwb25zZSYsIGludCBsZW5ndGgpIGZpbmFsOwogI2lmIEVOQUJMRShEQVRBX0RFVEVD
VElPTikKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoRGF0YURldGVjdGlvbihOU0FycmF5ICpk
ZXRlY3Rpb25SZXN1bHRzKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoRGF0
YURldGVjdGlvbihOU0FycmF5ICpkZXRlY3Rpb25SZXN1bHRzKSBmaW5hbDsKICNlbmRpZgogICAg
IAotICAgIHZvaWQgZGlzcGF0Y2hEaWREaXNwYXRjaE9ubG9hZEV2ZW50cygpIG92ZXJyaWRlOwot
ICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlU2VydmVyUmVkaXJlY3RGb3JQcm92aXNpb25hbExv
YWQoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkQ2hhbmdlUHJvdmlzaW9uYWxVUkwo
KSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkQ2FuY2VsQ2xpZW50UmVkaXJlY3QoKSBv
dmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFBlcmZvcm1DbGllbnRSZWRpcmVjdChjb25z
dCBXZWJDb3JlOjpVUkwmLCBkb3VibGUgaW50ZXJ2YWwsIGRvdWJsZSBmaXJlRGF0ZSkgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZENoYW5nZUxvY2F0aW9uV2l0aGluUGFnZSgpIG92ZXJy
aWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRQdXNoU3RhdGVXaXRoaW5QYWdlKCkgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlcGxhY2VTdGF0ZVdpdGhpblBhZ2UoKSBvdmVycmlkZTsK
LSAgICB2b2lkIGRpc3BhdGNoRGlkUG9wU3RhdGVXaXRoaW5QYWdlKCkgb3ZlcnJpZGU7Ci0gICAg
dm9pZCBkaXNwYXRjaFdpbGxDbG9zZSgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRS
ZWNlaXZlSWNvbigpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRTdGFydFByb3Zpc2lv
bmFsTG9hZCgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlVGl0bGUoY29u
c3QgV2ViQ29yZTo6U3RyaW5nV2l0aERpcmVjdGlvbiYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlz
cGF0Y2hEaWRDb21taXRMb2FkKHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6SGFzSW5zZWN1cmVDb250
ZW50Pikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZEZhaWxQcm92aXNpb25hbExvYWQo
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0
Y2hEaWRGYWlsTG9hZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaERvY3VtZW50TG9hZCgpIG92ZXJyaWRlOwotICAgIHZv
aWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkKCkgb3ZlcnJpZGU7Ci0KLSAgICB2b2lkIGRpc3BhdGNo
RGlkUmVhY2hMYXlvdXRNaWxlc3RvbmUoV2ViQ29yZTo6TGF5b3V0TWlsZXN0b25lcykgb3ZlcnJp
ZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZExheW91dCgpIG92ZXJyaWRlOwotCi0gICAgV2ViQ29y
ZTo6RnJhbWUqIGRpc3BhdGNoQ3JlYXRlUGFnZShjb25zdCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0
aW9uJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFNob3coKSBvdmVycmlkZTsKKyAgICB2
b2lkIGRpc3BhdGNoRGlkRGlzcGF0Y2hPbmxvYWRFdmVudHMoKSBmaW5hbDsKKyAgICB2b2lkIGRp
c3BhdGNoRGlkUmVjZWl2ZVNlcnZlclJlZGlyZWN0Rm9yUHJvdmlzaW9uYWxMb2FkKCkgZmluYWw7
CisgICAgdm9pZCBkaXNwYXRjaERpZENoYW5nZVByb3Zpc2lvbmFsVVJMKCkgZmluYWw7CisgICAg
dm9pZCBkaXNwYXRjaERpZENhbmNlbENsaWVudFJlZGlyZWN0KCkgZmluYWw7CisgICAgdm9pZCBk
aXNwYXRjaFdpbGxQZXJmb3JtQ2xpZW50UmVkaXJlY3QoY29uc3QgV2ViQ29yZTo6VVJMJiwgZG91
YmxlIGludGVydmFsLCBkb3VibGUgZmlyZURhdGUpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hE
aWRDaGFuZ2VMb2NhdGlvbldpdGhpblBhZ2UoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlk
UHVzaFN0YXRlV2l0aGluUGFnZSgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZXBsYWNl
U3RhdGVXaXRoaW5QYWdlKCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFBvcFN0YXRlV2l0
aGluUGFnZSgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsQ2xvc2UoKSBmaW5hbDsKKyAg
ICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUljb24oKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNo
RGlkU3RhcnRQcm92aXNpb25hbExvYWQoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVj
ZWl2ZVRpdGxlKGNvbnN0IFdlYkNvcmU6OlN0cmluZ1dpdGhEaXJlY3Rpb24mKSBmaW5hbDsKKyAg
ICB2b2lkIGRpc3BhdGNoRGlkQ29tbWl0TG9hZChzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6Okhhc0lu
c2VjdXJlQ29udGVudD4pIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsUHJvdmlzaW9u
YWxMb2FkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKKyAgICB2b2lkIGRp
c3BhdGNoRGlkRmFpbExvYWQoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIGZpbmFsOwor
ICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hEb2N1bWVudExvYWQoKSBmaW5hbDsKKyAgICB2b2lk
IGRpc3BhdGNoRGlkRmluaXNoTG9hZCgpIGZpbmFsOworCisgICAgdm9pZCBkaXNwYXRjaERpZFJl
YWNoTGF5b3V0TWlsZXN0b25lKFdlYkNvcmU6OkxheW91dE1pbGVzdG9uZXMpIGZpbmFsOworICAg
IHZvaWQgZGlzcGF0Y2hEaWRMYXlvdXQoKSBmaW5hbDsKKworICAgIFdlYkNvcmU6OkZyYW1lKiBk
aXNwYXRjaENyZWF0ZVBhZ2UoY29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYpIGZpbmFs
OworICAgIHZvaWQgZGlzcGF0Y2hTaG93KCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBkaXNwYXRj
aERlY2lkZVBvbGljeUZvclJlc3BvbnNlKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Um
LCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1
bmN0aW9uKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmV3V2lu
ZG93QWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QmLCBQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4sIGNvbnN0
IFN0cmluZyYgZnJhbWVOYW1lLCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBvdmVycmlk
ZTsKLSAgICB2b2lkIGRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25z
dCBXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1
ZXN0JiwgUGFzc1JlZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+LCBXZWJDb3JlOjpGcmFtZVBvbGlj
eUZ1bmN0aW9uKSBvdmVycmlkZTsKLSAgICB2b2lkIGNhbmNlbFBvbGljeUNoZWNrKCkgb3ZlcnJp
ZGU7CisgICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvclJlc3BvbnNlKGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVzcG9uc2UmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBX
ZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGVj
aWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKGNvbnN0IFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rp
b24mLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpGb3JtU3RhdGUq
LCBjb25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikg
ZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24o
Y29uc3QgV2ViQ29yZTo6TmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYsIFdlYkNvcmU6OkZvcm1TdGF0ZSosIFdlYkNvcmU6OkZyYW1lUG9saWN5RnVuY3Rp
b24pIGZpbmFsOworICAgIHZvaWQgY2FuY2VsUG9saWN5Q2hlY2soKSBmaW5hbDsKICAgICAKLSAg
ICB2b2lkIGRpc3BhdGNoVW5hYmxlVG9JbXBsZW1lbnRQb2xpY3koY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VFcnJvciYpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hVbmFibGVUb0ltcGxlbWVu
dFBvbGljeShjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmluYWw7CiAgICAgCi0gICAg
dm9pZCBkaXNwYXRjaFdpbGxTZW5kU3VibWl0RXZlbnQoUGFzc1JlZlB0cjxXZWJDb3JlOjpGb3Jt
U3RhdGU+KSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0oUGFzc1Jl
ZlB0cjxXZWJDb3JlOjpGb3JtU3RhdGU+LCBXZWJDb3JlOjpGcmFtZVBvbGljeUZ1bmN0aW9uKSBv
dmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRTdWJtaXRFdmVudChSZWY8V2ViQ29y
ZTo6Rm9ybVN0YXRlPiYmKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFN1Ym1pdEZvcm0o
V2ViQ29yZTo6Rm9ybVN0YXRlJiwgV2ViQ29yZTo6RnJhbWVQb2xpY3lGdW5jdGlvbikgZmluYWw7
CiAgICAgCi0gICAgdm9pZCByZXZlcnRUb1Byb3Zpc2lvbmFsU3RhdGUoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXIqKSBvdmVycmlkZTsKLSAgICB2b2lkIHNldE1haW5Eb2N1bWVudEVycm9yKFdlYkNv
cmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIG92ZXJy
aWRlOworICAgIHZvaWQgcmV2ZXJ0VG9Qcm92aXNpb25hbFN0YXRlKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKikgZmluYWw7CisgICAgdm9pZCBzZXRNYWluRG9jdW1lbnRFcnJvcihXZWJDb3JlOjpE
b2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKICAg
ICAKLSAgICB2b2lkIHNldE1haW5GcmFtZURvY3VtZW50UmVhZHkoYm9vbCkgb3ZlcnJpZGU7Cisg
ICAgdm9pZCBzZXRNYWluRnJhbWVEb2N1bWVudFJlYWR5KGJvb2wpIGZpbmFsOwogICAgIAotICAg
IHZvaWQgc3RhcnREb3dubG9hZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25z
dCBTdHJpbmcmIHN1Z2dlc3RlZE5hbWUgPSBTdHJpbmcoKSkgb3ZlcnJpZGU7CisgICAgdm9pZCBz
dGFydERvd25sb2FkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFN0cmlu
ZyYgc3VnZ2VzdGVkTmFtZSA9IFN0cmluZygpKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHdpbGxD
aGFuZ2VUaXRsZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIG92ZXJyaWRlOwotICAgIHZvaWQg
ZGlkQ2hhbmdlVGl0bGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBvdmVycmlkZTsKKyAgICB2
b2lkIHdpbGxDaGFuZ2VUaXRsZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciopIGZpbmFsOworICAg
IHZvaWQgZGlkQ2hhbmdlVGl0bGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBmaW5hbDsKIAot
ICAgIHZvaWQgd2lsbFJlcGxhY2VNdWx0aXBhcnRDb250ZW50KCkgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBkaWRSZXBsYWNlTXVsdGlwYXJ0Q29udGVudCgpIG92ZXJyaWRlOworICAgIHZvaWQgd2lsbFJl
cGxhY2VNdWx0aXBhcnRDb250ZW50KCkgZmluYWw7CisgICAgdm9pZCBkaWRSZXBsYWNlTXVsdGlw
YXJ0Q29udGVudCgpIGZpbmFsOwogCi0gICAgdm9pZCBjb21taXR0ZWRMb2FkKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKiwgY29uc3QgY2hhciosIGludCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBmaW5p
c2hlZExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqKSBvdmVycmlkZTsKKyAgICB2b2lk
IGNvbW1pdHRlZExvYWQoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBjaGFyKiwgaW50
KSBmaW5hbDsKKyAgICB2b2lkIGZpbmlzaGVkTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRl
ciopIGZpbmFsOwogICAgIAotICAgIHZvaWQgdXBkYXRlR2xvYmFsSGlzdG9yeSgpIG92ZXJyaWRl
OwotICAgIHZvaWQgdXBkYXRlR2xvYmFsSGlzdG9yeVJlZGlyZWN0TGlua3MoKSBvdmVycmlkZTsK
KyAgICB2b2lkIHVwZGF0ZUdsb2JhbEhpc3RvcnkoKSBmaW5hbDsKKyAgICB2b2lkIHVwZGF0ZUds
b2JhbEhpc3RvcnlSZWRpcmVjdExpbmtzKCkgZmluYWw7CiAgICAgCi0gICAgYm9vbCBzaG91bGRH
b1RvSGlzdG9yeUl0ZW0oV2ViQ29yZTo6SGlzdG9yeUl0ZW0qKSBjb25zdCBvdmVycmlkZTsKKyAg
ICBib29sIHNob3VsZEdvVG9IaXN0b3J5SXRlbShXZWJDb3JlOjpIaXN0b3J5SXRlbSopIGNvbnN0
IGZpbmFsOwogCi0gICAgdm9pZCBkaWREaXNwbGF5SW5zZWN1cmVDb250ZW50KCkgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBkaWRSdW5JbnNlY3VyZUNvbnRlbnQoV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4q
LCBjb25zdCBXZWJDb3JlOjpVUkwmKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZERldGVjdFhTUyhj
b25zdCBXZWJDb3JlOjpVUkwmLCBib29sIGRpZEJsb2NrRW50aXJlUGFnZSkgb3ZlcnJpZGU7Cisg
ICAgdm9pZCBkaWREaXNwbGF5SW5zZWN1cmVDb250ZW50KCkgZmluYWw7CisgICAgdm9pZCBkaWRS
dW5JbnNlY3VyZUNvbnRlbnQoV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4qLCBjb25zdCBXZWJDb3Jl
OjpVUkwmKSBmaW5hbDsKKyAgICB2b2lkIGRpZERldGVjdFhTUyhjb25zdCBXZWJDb3JlOjpVUkwm
LCBib29sIGRpZEJsb2NrRW50aXJlUGFnZSkgZmluYWw7CiAKLSAgICBXZWJDb3JlOjpSZXNvdXJj
ZUVycm9yIGNhbmNlbGxlZEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92
ZXJyaWRlOwotICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgYmxvY2tlZEVycm9yKGNvbnN0IFdl
YkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OlJlc291cmNl
RXJyb3IgYmxvY2tlZEJ5Q29udGVudEJsb2NrZXJFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZVJlcXVlc3QmKSBvdmVycmlkZTsKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGNhbm5vdFNo
b3dVUkxFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKLSAg
ICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGludGVycnVwdGVkRm9yUG9saWN5Q2hhbmdlRXJyb3Io
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6
UmVzb3VyY2VFcnJvciBjYW5jZWxsZWRFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QmKSBmaW5hbDsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGJsb2NrZWRFcnJvcihjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKKyAgICBXZWJDb3JlOjpSZXNvdXJj
ZUVycm9yIGJsb2NrZWRCeUNvbnRlbnRCbG9ja2VyRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0JikgZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBjYW5ub3RTaG93
VVJMRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CisgICAgV2Vi
Q29yZTo6UmVzb3VyY2VFcnJvciBpbnRlcnJ1cHRlZEZvclBvbGljeUNoYW5nZUVycm9yKGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOwogI2lmIEVOQUJMRShDT05URU5UX0ZJ
TFRFUklORykKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGJsb2NrZWRCeUNvbnRlbnRGaWx0
ZXJFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKKyAgICBX
ZWJDb3JlOjpSZXNvdXJjZUVycm9yIGJsb2NrZWRCeUNvbnRlbnRGaWx0ZXJFcnJvcihjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKICNlbmRpZgogICAgIAotICAgIFdlYkNv
cmU6OlJlc291cmNlRXJyb3IgY2Fubm90U2hvd01JTUVUeXBlRXJyb3IoY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOwotICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3Ig
ZmlsZURvZXNOb3RFeGlzdEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBv
dmVycmlkZTsKLSAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIHBsdWdpbldpbGxIYW5kbGVMb2Fk
RXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOworICAgIFdl
YkNvcmU6OlJlc291cmNlRXJyb3IgY2Fubm90U2hvd01JTUVUeXBlRXJyb3IoY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOworICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3Ig
ZmlsZURvZXNOb3RFeGlzdEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBm
aW5hbDsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIHBsdWdpbldpbGxIYW5kbGVMb2FkRXJy
b3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOwogICAgIAotICAgIGJv
b2wgc2hvdWxkRmFsbEJhY2soY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRl
OworICAgIGJvb2wgc2hvdWxkRmFsbEJhY2soY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYp
IGZpbmFsOwogICAgIAotICAgIGJvb2wgY2FuSGFuZGxlUmVxdWVzdChjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmKSBjb25zdCBvdmVycmlkZTsKLSAgICBib29sIGNhblNob3dNSU1FVHlw
ZShjb25zdCBTdHJpbmcmIE1JTUVUeXBlKSBjb25zdCBvdmVycmlkZTsKLSAgICBib29sIGNhblNo
b3dNSU1FVHlwZUFzSFRNTChjb25zdCBTdHJpbmcmIE1JTUVUeXBlKSBjb25zdCBvdmVycmlkZTsK
LSAgICBib29sIHJlcHJlc2VudGF0aW9uRXhpc3RzRm9yVVJMU2NoZW1lKGNvbnN0IFN0cmluZyYg
VVJMU2NoZW1lKSBjb25zdCBvdmVycmlkZTsKLSAgICBTdHJpbmcgZ2VuZXJhdGVkTUlNRVR5cGVG
b3JVUkxTY2hlbWUoY29uc3QgU3RyaW5nJiBVUkxTY2hlbWUpIGNvbnN0IG92ZXJyaWRlOworICAg
IGJvb2wgY2FuSGFuZGxlUmVxdWVzdChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBj
b25zdCBmaW5hbDsKKyAgICBib29sIGNhblNob3dNSU1FVHlwZShjb25zdCBTdHJpbmcmIE1JTUVU
eXBlKSBjb25zdCBmaW5hbDsKKyAgICBib29sIGNhblNob3dNSU1FVHlwZUFzSFRNTChjb25zdCBT
dHJpbmcmIE1JTUVUeXBlKSBjb25zdCBmaW5hbDsKKyAgICBib29sIHJlcHJlc2VudGF0aW9uRXhp
c3RzRm9yVVJMU2NoZW1lKGNvbnN0IFN0cmluZyYgVVJMU2NoZW1lKSBjb25zdCBmaW5hbDsKKyAg
ICBTdHJpbmcgZ2VuZXJhdGVkTUlNRVR5cGVGb3JVUkxTY2hlbWUoY29uc3QgU3RyaW5nJiBVUkxT
Y2hlbWUpIGNvbnN0IGZpbmFsOwogICAgIAotICAgIHZvaWQgZnJhbWVMb2FkQ29tcGxldGVkKCkg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBzYXZlVmlld1N0YXRlVG9JdGVtKFdlYkNvcmU6Okhpc3RvcnlJ
dGVtJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCByZXN0b3JlVmlld1N0YXRlKCkgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBwcm92aXNpb25hbExvYWRTdGFydGVkKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRG
aW5pc2hMb2FkKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBwcmVwYXJlRm9yRGF0YVNvdXJjZVJlcGxh
Y2VtZW50KCkgb3ZlcnJpZGU7CisgICAgdm9pZCBmcmFtZUxvYWRDb21wbGV0ZWQoKSBmaW5hbDsK
KyAgICB2b2lkIHNhdmVWaWV3U3RhdGVUb0l0ZW0oV2ViQ29yZTo6SGlzdG9yeUl0ZW0mKSBmaW5h
bDsKKyAgICB2b2lkIHJlc3RvcmVWaWV3U3RhdGUoKSBmaW5hbDsKKyAgICB2b2lkIHByb3Zpc2lv
bmFsTG9hZFN0YXJ0ZWQoKSBmaW5hbDsKKyAgICB2b2lkIGRpZEZpbmlzaExvYWQoKSBmaW5hbDsK
KyAgICB2b2lkIHByZXBhcmVGb3JEYXRhU291cmNlUmVwbGFjZW1lbnQoKSBmaW5hbDsKICAgICAK
LSAgICBSZWY8V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI+IGNyZWF0ZURvY3VtZW50TG9hZGVyKGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlN1YnN0aXR1dGVE
YXRhJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCB1cGRhdGVDYWNoZWREb2N1bWVudExvYWRlcihXZWJD
b3JlOjpEb2N1bWVudExvYWRlciYpIG92ZXJyaWRlOworICAgIFJlZjxXZWJDb3JlOjpEb2N1bWVu
dExvYWRlcj4gY3JlYXRlRG9jdW1lbnRMb2FkZXIoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1
ZXN0JiwgY29uc3QgV2ViQ29yZTo6U3Vic3RpdHV0ZURhdGEmKSBmaW5hbDsKKyAgICB2b2lkIHVw
ZGF0ZUNhY2hlZERvY3VtZW50TG9hZGVyKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyJikgZmluYWw7
CiAKLSAgICB2b2lkIHNldFRpdGxlKGNvbnN0IFdlYkNvcmU6OlN0cmluZ1dpdGhEaXJlY3Rpb24m
LCBjb25zdCBXZWJDb3JlOjpVUkwmKSBvdmVycmlkZTsKKyAgICB2b2lkIHNldFRpdGxlKGNvbnN0
IFdlYkNvcmU6OlN0cmluZ1dpdGhEaXJlY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpVUkwmKSBmaW5h
bDsKICAgICAKLSAgICBTdHJpbmcgdXNlckFnZW50KGNvbnN0IFdlYkNvcmU6OlVSTCYpIG92ZXJy
aWRlOworICAgIFN0cmluZyB1c2VyQWdlbnQoY29uc3QgV2ViQ29yZTo6VVJMJikgZmluYWw7CiAg
ICAgCi0gICAgdm9pZCBzYXZlUGxhdGZvcm1EYXRhVG9DYWNoZWRGcmFtZShXZWJDb3JlOjpDYWNo
ZWRGcmFtZSopIG92ZXJyaWRlOwotICAgIHZvaWQgdHJhbnNpdGlvblRvQ29tbWl0dGVkRnJvbUNh
Y2hlZEZyYW1lKFdlYkNvcmU6OkNhY2hlZEZyYW1lKikgb3ZlcnJpZGU7CisgICAgdm9pZCBzYXZl
UGxhdGZvcm1EYXRhVG9DYWNoZWRGcmFtZShXZWJDb3JlOjpDYWNoZWRGcmFtZSopIGZpbmFsOwor
ICAgIHZvaWQgdHJhbnNpdGlvblRvQ29tbWl0dGVkRnJvbUNhY2hlZEZyYW1lKFdlYkNvcmU6OkNh
Y2hlZEZyYW1lKikgZmluYWw7CiAjaWYgUExBVEZPUk0oSU9TKQotICAgIHZvaWQgZGlkUmVzdG9y
ZUZyYW1lSGllcmFyY2h5Rm9yQ2FjaGVkRnJhbWUoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZFJl
c3RvcmVGcmFtZUhpZXJhcmNoeUZvckNhY2hlZEZyYW1lKCkgZmluYWw7CiAjZW5kaWYKLSAgICB2
b2lkIHRyYW5zaXRpb25Ub0NvbW1pdHRlZEZvck5ld1BhZ2UoKSBvdmVycmlkZTsKKyAgICB2b2lk
IHRyYW5zaXRpb25Ub0NvbW1pdHRlZEZvck5ld1BhZ2UoKSBmaW5hbDsKIAotICAgIHZvaWQgZGlk
U2F2ZVRvUGFnZUNhY2hlKCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRSZXN0b3JlRnJvbVBhZ2VD
YWNoZSgpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkU2F2ZVRvUGFnZUNhY2hlKCkgZmluYWw7Cisg
ICAgdm9pZCBkaWRSZXN0b3JlRnJvbVBhZ2VDYWNoZSgpIGZpbmFsOwogCi0gICAgdm9pZCBkaXNw
YXRjaERpZEJlY29tZUZyYW1lc2V0KGJvb2wpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hE
aWRCZWNvbWVGcmFtZXNldChib29sKSBmaW5hbDsKIAotICAgIGJvb2wgY2FuQ2FjaGVQYWdlKCkg
Y29uc3Qgb3ZlcnJpZGU7Ci0gICAgdm9pZCBjb252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxv
YWQoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpTZXNzaW9uSUQsIGNvbnN0IFdl
YkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Um
KSBvdmVycmlkZTsKKyAgICBib29sIGNhbkNhY2hlUGFnZSgpIGNvbnN0IGZpbmFsOworICAgIHZv
aWQgY29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKiwgV2ViQ29yZTo6U2Vzc2lvbklELCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qm
LCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7CiAKLSAgICBSZWZQdHI8
V2ViQ29yZTo6RnJhbWU+IGNyZWF0ZUZyYW1lKGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNvbnN0IFN0
cmluZyYgbmFtZSwgV2ViQ29yZTo6SFRNTEZyYW1lT3duZXJFbGVtZW50KiwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIGJv
b2wgYWxsb3dzU2Nyb2xsaW5nLCBpbnQgbWFyZ2luV2lkdGgsIGludCBtYXJnaW5IZWlnaHQpIG92
ZXJyaWRlOwotICAgIAotICAgIFJlZlB0cjxXZWJDb3JlOjpXaWRnZXQ+IGNyZWF0ZVBsdWdpbihj
b25zdCBXZWJDb3JlOjpJbnRTaXplJiwgV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQqLCBjb25z
dCBXZWJDb3JlOjpVUkwmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFZlY3RvcjxTdHJp
bmc+JiwgY29uc3QgU3RyaW5nJiwgYm9vbCBsb2FkTWFudWFsbHkpIG92ZXJyaWRlOwotICAgIHZv
aWQgcmVjcmVhdGVQbHVnaW4oV2ViQ29yZTo6V2lkZ2V0Kikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBy
ZWRpcmVjdERhdGFUb1BsdWdpbihXZWJDb3JlOjpXaWRnZXQqIHBsdWdpbldpZGdldCkgb3ZlcnJp
ZGU7CisgICAgUmVmUHRyPFdlYkNvcmU6OkZyYW1lPiBjcmVhdGVGcmFtZShjb25zdCBXZWJDb3Jl
OjpVUkwmLCBjb25zdCBTdHJpbmcmIG5hbWUsIFdlYkNvcmU6OkhUTUxGcmFtZU93bmVyRWxlbWVu
dCYsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIGJvb2wgYWxsb3dzU2Nyb2xsaW5nLCBpbnQgbWFy
Z2luV2lkdGgsIGludCBtYXJnaW5IZWlnaHQpIGZpbmFsOworCisgICAgUmVmUHRyPFdlYkNvcmU6
OldpZGdldD4gY3JlYXRlUGx1Z2luKGNvbnN0IFdlYkNvcmU6OkludFNpemUmLCBXZWJDb3JlOjpI
VE1MUGx1Z0luRWxlbWVudCYsIGNvbnN0IFdlYkNvcmU6OlVSTCYsIGNvbnN0IFZlY3RvcjxTdHJp
bmc+JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mLCBjb25zdCBTdHJpbmcmLCBib29sIGxvYWRNYW51
YWxseSkgZmluYWw7CisgICAgdm9pZCByZWNyZWF0ZVBsdWdpbihXZWJDb3JlOjpXaWRnZXQqKSBm
aW5hbDsKKyAgICB2b2lkIHJlZGlyZWN0RGF0YVRvUGx1Z2luKFdlYkNvcmU6OldpZGdldCogcGx1
Z2luV2lkZ2V0KSBmaW5hbDsKICAgICAKICNpZiBFTkFCTEUoV0VCR0wpCi0gICAgV2ViQ29yZTo6
V2ViR0xMb2FkUG9saWN5IHdlYkdMUG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYpIGNvbnN0IG92
ZXJyaWRlOwotICAgIFdlYkNvcmU6OldlYkdMTG9hZFBvbGljeSByZXNvbHZlV2ViR0xQb2xpY3lG
b3JVUkwoY29uc3QgU3RyaW5nJikgY29uc3Qgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6V2ViR0xM
b2FkUG9saWN5IHdlYkdMUG9saWN5Rm9yVVJMKGNvbnN0IFN0cmluZyYpIGNvbnN0IGZpbmFsOwor
ICAgIFdlYkNvcmU6OldlYkdMTG9hZFBvbGljeSByZXNvbHZlV2ViR0xQb2xpY3lGb3JVUkwoY29u
c3QgU3RyaW5nJikgY29uc3QgZmluYWw7CiAjZW5kaWYgLy8gRU5BQkxFKFdFQkdMKQogCi0gICAg
UGFzc1JlZlB0cjxXZWJDb3JlOjpXaWRnZXQ+IGNyZWF0ZUphdmFBcHBsZXRXaWRnZXQoY29uc3Qg
V2ViQ29yZTo6SW50U2l6ZSYsIFdlYkNvcmU6OkhUTUxBcHBsZXRFbGVtZW50KiwgY29uc3QgV2Vi
Q29yZTo6VVJMJiBiYXNlVVJMLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29u
c3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKSBvdmVycmlkZTsKKyAgICBSZWZQdHI8V2Vi
Q29yZTo6V2lkZ2V0PiBjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IFdlYkNvcmU6OkludFNp
emUmLCBXZWJDb3JlOjpIVE1MQXBwbGV0RWxlbWVudCYsIGNvbnN0IFdlYkNvcmU6OlVSTCYgYmFz
ZVVSTCwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJp
bmc+JiBwYXJhbVZhbHVlcykgZmluYWw7CiAgICAgCi0gICAgV2ViQ29yZTo6T2JqZWN0Q29udGVu
dFR5cGUgb2JqZWN0Q29udGVudFR5cGUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgU3RyaW5n
JiBtaW1lVHlwZSkgb3ZlcnJpZGU7Ci0gICAgU3RyaW5nIG92ZXJyaWRlTWVkaWFUeXBlKCkgY29u
c3Qgb3ZlcnJpZGU7CisgICAgV2ViQ29yZTo6T2JqZWN0Q29udGVudFR5cGUgb2JqZWN0Q29udGVu
dFR5cGUoY29uc3QgV2ViQ29yZTo6VVJMJiwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkgZmluYWw7
CisgICAgU3RyaW5nIG92ZXJyaWRlTWVkaWFUeXBlKCkgY29uc3QgZmluYWw7CiAKLSAgICB2b2lk
IGRpc3BhdGNoRGlkQ2xlYXJXaW5kb3dPYmplY3RJbldvcmxkKFdlYkNvcmU6OkRPTVdyYXBwZXJX
b3JsZCYpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hEaWRDbGVhcldpbmRvd09iamVjdElu
V29ybGQoV2ViQ29yZTo6RE9NV3JhcHBlcldvcmxkJikgZmluYWw7CiAgICAgCi0gICAgdm9pZCBk
aXNwYXRjaEdsb2JhbE9iamVjdEF2YWlsYWJsZShXZWJDb3JlOjpET01XcmFwcGVyV29ybGQmKSBv
dmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoV2lsbERpc2Nvbm5lY3RET01XaW5kb3dFeHRlbnNp
b25Gcm9tR2xvYmFsT2JqZWN0KFdlYkNvcmU6OkRPTVdpbmRvd0V4dGVuc2lvbiopIG92ZXJyaWRl
OwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNvbm5lY3RET01XaW5kb3dFeHRlbnNpb25Ub0dsb2Jh
bE9iamVjdChXZWJDb3JlOjpET01XaW5kb3dFeHRlbnNpb24qKSBvdmVycmlkZTsKLSAgICB2b2lk
IGRpc3BhdGNoV2lsbERlc3Ryb3lHbG9iYWxPYmplY3RGb3JET01XaW5kb3dFeHRlbnNpb24oV2Vi
Q29yZTo6RE9NV2luZG93RXh0ZW5zaW9uKikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaEds
b2JhbE9iamVjdEF2YWlsYWJsZShXZWJDb3JlOjpET01XcmFwcGVyV29ybGQmKSBmaW5hbDsKKyAg
ICB2b2lkIGRpc3BhdGNoV2lsbERpc2Nvbm5lY3RET01XaW5kb3dFeHRlbnNpb25Gcm9tR2xvYmFs
T2JqZWN0KFdlYkNvcmU6OkRPTVdpbmRvd0V4dGVuc2lvbiopIGZpbmFsOworICAgIHZvaWQgZGlz
cGF0Y2hEaWRSZWNvbm5lY3RET01XaW5kb3dFeHRlbnNpb25Ub0dsb2JhbE9iamVjdChXZWJDb3Jl
OjpET01XaW5kb3dFeHRlbnNpb24qKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbERlc3Ry
b3lHbG9iYWxPYmplY3RGb3JET01XaW5kb3dFeHRlbnNpb24oV2ViQ29yZTo6RE9NV2luZG93RXh0
ZW5zaW9uKikgZmluYWw7CiAKLSAgICB2b2lkIHJlZ2lzdGVyRm9ySWNvbk5vdGlmaWNhdGlvbihi
b29sIGxpc3RlbiA9IHRydWUpIG92ZXJyaWRlOworICAgIHZvaWQgcmVnaXN0ZXJGb3JJY29uTm90
aWZpY2F0aW9uKGJvb2wgbGlzdGVuID0gdHJ1ZSkgZmluYWw7CiAgICAgCiAjaWYgUExBVEZPUk0o
Q09DT0EpCi0gICAgUmVtb3RlQVhPYmplY3RSZWYgYWNjZXNzaWJpbGl0eVJlbW90ZU9iamVjdCgp
IG92ZXJyaWRlOworICAgIFJlbW90ZUFYT2JqZWN0UmVmIGFjY2Vzc2liaWxpdHlSZW1vdGVPYmpl
Y3QoKSBmaW5hbDsKICAgICAKLSAgICBOU0NhY2hlZFVSTFJlc3BvbnNlKiB3aWxsQ2FjaGVSZXNw
b25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
TlNDYWNoZWRVUkxSZXNwb25zZSopIGNvbnN0IG92ZXJyaWRlOworICAgIE5TQ2FjaGVkVVJMUmVz
cG9uc2UqIHdpbGxDYWNoZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBOU0NhY2hlZFVSTFJlc3BvbnNlKikgY29uc3QgZmluYWw7CiAK
LSAgICBOU0RpY3Rpb25hcnkgKmRhdGFEZXRlY3Rpb25Db250ZXh0KCkgb3ZlcnJpZGU7CisgICAg
TlNEaWN0aW9uYXJ5ICpkYXRhRGV0ZWN0aW9uQ29udGV4dCgpIGZpbmFsOwogI2VuZGlmCiAKLSAg
ICBib29sIHNob3VsZEFsd2F5c1VzZVBsdWdpbkRvY3VtZW50KGNvbnN0IFN0cmluZyYgLyptaW1l
VHlwZSovKSBjb25zdCBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZEFsd2F5c1VzZVBsdWdpbkRv
Y3VtZW50KGNvbnN0IFN0cmluZyYgLyptaW1lVHlwZSovKSBjb25zdCBmaW5hbDsKIAotICAgIHZv
aWQgZGlkQ2hhbmdlU2Nyb2xsT2Zmc2V0KCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRDaGFuZ2VT
Y3JvbGxPZmZzZXQoKSBmaW5hbDsKIAotICAgIGJvb2wgYWxsb3dTY3JpcHQoYm9vbCBlbmFibGVk
UGVyU2V0dGluZ3MpIG92ZXJyaWRlOworICAgIGJvb2wgYWxsb3dTY3JpcHQoYm9vbCBlbmFibGVk
UGVyU2V0dGluZ3MpIGZpbmFsOwogCi0gICAgYm9vbCBzaG91bGRGb3JjZVVuaXZlcnNhbEFjY2Vz
c0Zyb21Mb2NhbFVSTChjb25zdCBXZWJDb3JlOjpVUkwmKSBvdmVycmlkZTsKKyAgICBib29sIHNo
b3VsZEZvcmNlVW5pdmVyc2FsQWNjZXNzRnJvbUxvY2FsVVJMKGNvbnN0IFdlYkNvcmU6OlVSTCYp
IGZpbmFsOwogCi0gICAgUGFzc1JlZlB0cjxXZWJDb3JlOjpGcmFtZU5ldHdvcmtpbmdDb250ZXh0
PiBjcmVhdGVOZXR3b3JraW5nQ29udGV4dCgpIG92ZXJyaWRlOworICAgIFJlZjxXZWJDb3JlOjpG
cmFtZU5ldHdvcmtpbmdDb250ZXh0PiBjcmVhdGVOZXR3b3JraW5nQ29udGV4dCgpIGZpbmFsOwog
CiAjaWYgRU5BQkxFKFJFUVVFU1RfQVVUT0NPTVBMRVRFKQotICAgIHZvaWQgZGlkUmVxdWVzdEF1
dG9jb21wbGV0ZShQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4pIG92ZXJyaWRlOworICAg
IHZvaWQgZGlkUmVxdWVzdEF1dG9jb21wbGV0ZShSZWY8V2ViQ29yZTo6Rm9ybVN0YXRlPiYmKSBm
aW5hbDsKICNlbmRpZgogCi0gICAgdm9pZCBmb3JjZVBhZ2VUcmFuc2l0aW9uSWZOZWVkZWQoKSBv
dmVycmlkZTsKKyAgICB2b2lkIGZvcmNlUGFnZVRyYW5zaXRpb25JZk5lZWRlZCgpIGZpbmFsOwog
CiAjaWYgVVNFKFFVSUNLX0xPT0spCi0gICAgdm9pZCBkaWRDcmVhdGVRdWlja0xvb2tIYW5kbGUo
V2ViQ29yZTo6UXVpY2tMb29rSGFuZGxlJikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRDcmVhdGVR
dWlja0xvb2tIYW5kbGUoV2ViQ29yZTo6UXVpY2tMb29rSGFuZGxlJikgZmluYWw7CiAjZW5kaWYK
IAogI2lmIEVOQUJMRShDT05URU5UX0ZJTFRFUklORykKLSAgICB2b2lkIGNvbnRlbnRGaWx0ZXJE
aWRCbG9ja0xvYWQoV2ViQ29yZTo6Q29udGVudEZpbHRlclVuYmxvY2tIYW5kbGVyKSBvdmVycmlk
ZTsKKyAgICB2b2lkIGNvbnRlbnRGaWx0ZXJEaWRCbG9ja0xvYWQoV2ViQ29yZTo6Q29udGVudEZp
bHRlclVuYmxvY2tIYW5kbGVyKSBmaW5hbDsKICNlbmRpZgogCi0gICAgdm9pZCBwcmVmZXRjaERO
Uyhjb25zdCBTdHJpbmcmKSBvdmVycmlkZTsKKyAgICB2b2lkIHByZWZldGNoRE5TKGNvbnN0IFN0
cmluZyYpIGZpbmFsOwogCi0gICAgdm9pZCBkaWRSZXN0b3JlU2Nyb2xsUG9zaXRpb24oKSBvdmVy
cmlkZTsKKyAgICB2b2lkIGRpZFJlc3RvcmVTY3JvbGxQb3NpdGlvbigpIGZpbmFsOwogCi0gICAg
Ym9vbCB1c2VJY29uTG9hZGluZ0NsaWVudCgpIG92ZXJyaWRlOwotICAgIHZvaWQgZ2V0TG9hZERl
Y2lzaW9uRm9ySWNvbihjb25zdCBXZWJDb3JlOjpMaW5rSWNvbiYsIHVpbnQ2NF90IGNhbGxiYWNr
SUQpIG92ZXJyaWRlOwotICAgIHZvaWQgZmluaXNoZWRMb2FkaW5nSWNvbih1aW50NjRfdCBsb2Fk
SWRlbnRpZmllciwgV2ViQ29yZTo6U2hhcmVkQnVmZmVyKikgb3ZlcnJpZGU7CisgICAgYm9vbCB1
c2VJY29uTG9hZGluZ0NsaWVudCgpIGZpbmFsOworICAgIHZvaWQgZ2V0TG9hZERlY2lzaW9uRm9y
SWNvbihjb25zdCBXZWJDb3JlOjpMaW5rSWNvbiYsIHVpbnQ2NF90IGNhbGxiYWNrSUQpIGZpbmFs
OworICAgIHZvaWQgZmluaXNoZWRMb2FkaW5nSWNvbih1aW50NjRfdCBsb2FkSWRlbnRpZmllciwg
V2ViQ29yZTo6U2hhcmVkQnVmZmVyKikgZmluYWw7CiAKICAgICBXZWJGcmFtZSogbV9mcmFtZTsK
ICAgICBSZWZQdHI8UGx1Z2luVmlldz4gbV9wbHVnaW5WaWV3OwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9pb3MvV2ViQ2hyb21lQ2xpZW50SU9T
Lm1tIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9pb3MvV2ViQ2hy
b21lQ2xpZW50SU9TLm1tCmluZGV4IDBkZmY4MDg0OTY2Y2I1OWUwMDljNWE4ZmU2YjE3NmRkOGZh
ODgzNjYuLmJkMDE1NWRjYzNjZGVjZTlmZjIwZmE5ODY2ZGYzNzlmODJhMzY4YzUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvaW9zL1dlYkNocm9t
ZUNsaWVudElPUy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L2lvcy9XZWJDaHJvbWVDbGllbnRJT1MubW0KQEAgLTM4LDEwICszOCwxMiBAQAogbmFtZXNw
YWNlIFdlYktpdCB7CiAKICNpZiBFTkFCTEUoSU9TX1RPVUNIX0VWRU5UUykKKwogdm9pZCBXZWJD
aHJvbWVDbGllbnQ6OmRpZFByZXZlbnREZWZhdWx0Rm9yRXZlbnQoKQogewogICAgIG5vdEltcGxl
bWVudGVkKCk7CiB9CisKICNlbmRpZgogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZWxlbWVudERp
ZFJlZm9jdXMoY29uc3QgV2ViQ29yZTo6Tm9kZSogbm9kZSkKQEAgLTUxLDcgKzUzLDcgQEAgdm9p
ZCBXZWJDaHJvbWVDbGllbnQ6OmVsZW1lbnREaWRSZWZvY3VzKGNvbnN0IFdlYkNvcmU6Ok5vZGUq
IG5vZGUpCiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpkaWRSZWNlaXZlTW9iaWxlRG9jVHlwZShi
b29sIGlzTW9iaWxlRG9jdHlwZSkKIHsKLSAgICBtX3BhZ2UtPmRpZFJlY2VpdmVNb2JpbGVEb2NU
eXBlKGlzTW9iaWxlRG9jdHlwZSk7CisgICAgbV9wYWdlLmRpZFJlY2VpdmVNb2JpbGVEb2NUeXBl
KGlzTW9iaWxlRG9jdHlwZSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXROZWVkc1Nj
cm9sbE5vdGlmaWNhdGlvbnMoV2ViQ29yZTo6RnJhbWUqLCBib29sKQpAQCAtNjEsNyArNjMsNyBA
QCB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0TmVlZHNTY3JvbGxOb3RpZmljYXRpb25zKFdlYkNv
cmU6OkZyYW1lKiwgYm9vbCkKIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6Om9ic2VydmVkQ29udGVu
dENoYW5nZShXZWJDb3JlOjpGcmFtZSopCiB7Ci0gICAgbV9wYWdlLT5jb21wbGV0ZVBlbmRpbmdT
eW50aGV0aWNDbGlja0ZvckNvbnRlbnRDaGFuZ2VPYnNlcnZlcigpOworICAgIG1fcGFnZS5jb21w
bGV0ZVBlbmRpbmdTeW50aGV0aWNDbGlja0ZvckNvbnRlbnRDaGFuZ2VPYnNlcnZlcigpOwogfQog
CiB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y2xlYXJDb250ZW50Q2hhbmdlT2JzZXJ2ZXJzKFdlYkNv
cmU6OkZyYW1lKikKQEAgLTcxLDcgKzczLDcgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmNsZWFy
Q29udGVudENoYW5nZU9ic2VydmVycyhXZWJDb3JlOjpGcmFtZSopCiAKIHZvaWQgV2ViQ2hyb21l
Q2xpZW50Ojpub3RpZnlSZXZlYWxlZFNlbGVjdGlvbkJ5U2Nyb2xsaW5nRnJhbWUoV2ViQ29yZTo6
RnJhbWUqKQogewotICAgIG1fcGFnZS0+ZGlkQ2hhbmdlU2VsZWN0aW9uKCk7CisgICAgbV9wYWdl
LmRpZENoYW5nZVNlbGVjdGlvbigpOwogfQogCiBib29sIFdlYkNocm9tZUNsaWVudDo6aXNTdG9w
cGluZygpCkBAIC04MywyMiArODUsMjIgQEAgYm9vbCBXZWJDaHJvbWVDbGllbnQ6OmlzU3RvcHBp
bmcoKQogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmRpZExheW91dChMYXlvdXRUeXBlIHR5cGUpCiB7
CiAgICAgaWYgKHR5cGUgPT0gU2Nyb2xsKQotICAgICAgICBtX3BhZ2UtPmRpZENoYW5nZVNlbGVj
dGlvbigpOworICAgICAgICBtX3BhZ2UuZGlkQ2hhbmdlU2VsZWN0aW9uKCk7CiB9CiAKIHZvaWQg
V2ViQ2hyb21lQ2xpZW50OjpkaWRTdGFydE92ZXJmbG93U2Nyb2xsKCkKIHsKLSAgICBtX3BhZ2Ut
PnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6T3ZlcmZsb3dTY3JvbGxXaWxsU3RhcnRTY3Jv
bGwoKSk7CisgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6T3ZlcmZsb3dT
Y3JvbGxXaWxsU3RhcnRTY3JvbGwoKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpkaWRF
bmRPdmVyZmxvd1Njcm9sbCgpCiB7Ci0gICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6Ok92ZXJmbG93U2Nyb2xsRGlkRW5kU2Nyb2xsKCkpOworICAgIG1fcGFnZS5zZW5kKE1l
c3NhZ2VzOjpXZWJQYWdlUHJveHk6Ok92ZXJmbG93U2Nyb2xsRGlkRW5kU2Nyb2xsKCkpOwogfQog
CiBib29sIFdlYkNocm9tZUNsaWVudDo6aGFzU3RhYmxlUGFnZVNjYWxlRmFjdG9yKCkgY29uc3QK
IHsKLSAgICByZXR1cm4gbV9wYWdlLT5oYXNTdGFibGVQYWdlU2NhbGVGYWN0b3IoKTsKKyAgICBy
ZXR1cm4gbV9wYWdlLmhhc1N0YWJsZVBhZ2VTY2FsZUZhY3RvcigpOwogfQogCiB2b2lkIFdlYkNo
cm9tZUNsaWVudDo6c3VwcHJlc3NGb3JtTm90aWZpY2F0aW9ucygpCkBAIC0xMjgsMTcgKzEzMCwx
NyBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6d2ViQXBwT3JpZW50YXRpb25zVXBkYXRlZCgpCiAK
IHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzaG93UGxheWJhY2tUYXJnZXRQaWNrZXIoYm9vbCBoYXNW
aWRlbykKIHsKLSAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2hvd1Bs
YXliYWNrVGFyZ2V0UGlja2VyKGhhc1ZpZGVvLCBtX3BhZ2UtPnJlY3RGb3JFbGVtZW50QXRJbnRl
cmFjdGlvbkxvY2F0aW9uKCkpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpTaG93UGxheWJhY2tUYXJnZXRQaWNrZXIoaGFzVmlkZW8sIG1fcGFnZS5yZWN0Rm9yRWxl
bWVudEF0SW50ZXJhY3Rpb25Mb2NhdGlvbigpKSk7CiB9CiAKIFNlY29uZHMgV2ViQ2hyb21lQ2xp
ZW50OjpldmVudFRocm90dGxpbmdEZWxheSgpCiB7Ci0gICAgcmV0dXJuIG1fcGFnZS0+ZXZlbnRU
aHJvdHRsaW5nRGVsYXkoKTsKKyAgICByZXR1cm4gbV9wYWdlLmV2ZW50VGhyb3R0bGluZ0RlbGF5
KCk7CiB9CiAKIGludCBXZWJDaHJvbWVDbGllbnQ6OmRldmljZU9yaWVudGF0aW9uKCkgY29uc3QK
IHsKLSAgICByZXR1cm4gbV9wYWdlLT5kZXZpY2VPcmllbnRhdGlvbigpOworICAgIHJldHVybiBt
X3BhZ2UuZGV2aWNlT3JpZW50YXRpb24oKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAg
Yi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKaW5kZXggNjZm
OWJkMDE1Y2VkYTYzNzA3MzNkYzViZTA4Zjc0ZmM5NTE0NmUxZi4uNmNiMDhhYTk2OTgwM2U5YTM3
ZTk4N2MyNWU2MjIxNGE2Mjg4MTNiNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJQYWdlLmNwcApAQCAtMzc0LDcgKzM3NCw3IEBAIFdlYlBhZ2U6OldlYlBhZ2Uo
dWludDY0X3QgcGFnZUlELCBjb25zdCBXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzJiBwYXJhbWV0
ZXJzKQogI2VuZGlmCiAKICAgICBQYWdlQ29uZmlndXJhdGlvbiBwYWdlQ29uZmlndXJhdGlvbiht
YWtlVW5pcXVlUmVmPFdlYkVkaXRvckNsaWVudD4odGhpcyksIFdlYlNvY2tldFByb3ZpZGVyOjpj
cmVhdGUoKSk7Ci0gICAgcGFnZUNvbmZpZ3VyYXRpb24uY2hyb21lQ2xpZW50ID0gbmV3IFdlYkNo
cm9tZUNsaWVudCh0aGlzKTsKKyAgICBwYWdlQ29uZmlndXJhdGlvbi5jaHJvbWVDbGllbnQgPSBu
ZXcgV2ViQ2hyb21lQ2xpZW50KCp0aGlzKTsKICNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VUykKICAg
ICBwYWdlQ29uZmlndXJhdGlvbi5jb250ZXh0TWVudUNsaWVudCA9IG5ldyBXZWJDb250ZXh0TWVu
dUNsaWVudCh0aGlzKTsKICNlbmRpZgpAQCAtNzMwLDcgKzczMCw4IEBAIHZvaWQgV2ViUGFnZTo6
aW5pdGlhbGl6ZUluamVjdGVkQnVuZGxlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQoV0tCdW5kbGVQ
YWdlRGlhZ25vCiB9CiAKICNpZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKLVBhc3NSZWZQ
dHI8UGx1Z2luPiBXZWJQYWdlOjpjcmVhdGVQbHVnaW4oV2ViRnJhbWUqIGZyYW1lLCBIVE1MUGx1
Z0luRWxlbWVudCogcGx1Z2luRWxlbWVudCwgY29uc3QgUGx1Z2luOjpQYXJhbWV0ZXJzJiBwYXJh
bWV0ZXJzLCBTdHJpbmcmIG5ld01JTUVUeXBlKQorCitSZWZQdHI8UGx1Z2luPiBXZWJQYWdlOjpj
cmVhdGVQbHVnaW4oV2ViRnJhbWUqIGZyYW1lLCBIVE1MUGx1Z0luRWxlbWVudCogcGx1Z2luRWxl
bWVudCwgY29uc3QgUGx1Z2luOjpQYXJhbWV0ZXJzJiBwYXJhbWV0ZXJzLCBTdHJpbmcmIG5ld01J
TUVUeXBlKQogewogICAgIFN0cmluZyBmcmFtZVVSTFN0cmluZyA9IGZyYW1lLT5jb3JlRnJhbWUo
KS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKS0+cmVzcG9uc2VVUkwoKS5zdHJpbmcoKTsKICAg
ICBTdHJpbmcgcGFnZVVSTFN0cmluZyA9IG1fcGFnZS0+bWFpbkZyYW1lKCkubG9hZGVyKCkuZG9j
dW1lbnRMb2FkZXIoKS0+cmVzcG9uc2VVUkwoKS5zdHJpbmcoKTsKQEAgLTEzNjAsNyArMTM2MSw3
IEBAIHZvaWQgV2ViUGFnZTo6bGF5b3V0SWZOZWVkZWQoKQogCiBXZWJQYWdlKiBXZWJQYWdlOjpm
cm9tQ29yZVBhZ2UoUGFnZSogcGFnZSkKIHsKLSAgICByZXR1cm4gc3RhdGljX2Nhc3Q8V2ViQ2hy
b21lQ2xpZW50Jj4ocGFnZS0+Y2hyb21lKCkuY2xpZW50KCkpLnBhZ2UoKTsKKyAgICByZXR1cm4g
JnN0YXRpY19jYXN0PFdlYkNocm9tZUNsaWVudCY+KHBhZ2UtPmNocm9tZSgpLmNsaWVudCgpKS5w
YWdlKCk7CiB9CiAKIHZvaWQgV2ViUGFnZTo6c2V0U2l6ZShjb25zdCBXZWJDb3JlOjpJbnRTaXpl
JiB2aWV3U2l6ZSkKQEAgLTE4MjYsNyArMTgyNyw4IEBAIHZvaWQgV2ViUGFnZTo6cG9zdEluamVj
dGVkQnVuZGxlTWVzc2FnZShjb25zdCBTdHJpbmcmIG1lc3NhZ2VOYW1lLCBjb25zdCBVc2VyRGF0
CiB9CiAKICNpZiAhUExBVEZPUk0oSU9TKQotdm9pZCBXZWJQYWdlOjpzZXRIZWFkZXJQYWdlQmFu
bmVyKFBhc3NSZWZQdHI8UGFnZUJhbm5lcj4gcGFnZUJhbm5lcikKKwordm9pZCBXZWJQYWdlOjpz
ZXRIZWFkZXJQYWdlQmFubmVyKFBhZ2VCYW5uZXIqIHBhZ2VCYW5uZXIpCiB7CiAgICAgaWYgKG1f
aGVhZGVyQmFubmVyKQogICAgICAgICBtX2hlYWRlckJhbm5lci0+ZGV0YWNoRnJvbVBhZ2UoKTsK
QEAgLTE4NDIsNyArMTg0NCw3IEBAIFBhZ2VCYW5uZXIqIFdlYlBhZ2U6OmhlYWRlclBhZ2VCYW5u
ZXIoKQogICAgIHJldHVybiBtX2hlYWRlckJhbm5lci5nZXQoKTsKIH0KIAotdm9pZCBXZWJQYWdl
OjpzZXRGb290ZXJQYWdlQmFubmVyKFBhc3NSZWZQdHI8UGFnZUJhbm5lcj4gcGFnZUJhbm5lcikK
K3ZvaWQgV2ViUGFnZTo6c2V0Rm9vdGVyUGFnZUJhbm5lcihQYWdlQmFubmVyKiBwYWdlQmFubmVy
KQogewogICAgIGlmIChtX2Zvb3RlckJhbm5lcikKICAgICAgICAgbV9mb290ZXJCYW5uZXItPmRl
dGFjaEZyb21QYWdlKCk7CkBAIC0zNjA5LDYgKzM2MTEsNyBAQCB2b2lkIFdlYlBhZ2U6OnNldEFj
dGl2ZVBvcHVwTWVudShXZWJQb3B1cE1lbnUqIG1lbnUpCiB9CiAKICNpZiBFTkFCTEUoSU5QVVRf
VFlQRV9DT0xPUikKKwogdm9pZCBXZWJQYWdlOjpzZXRBY3RpdmVDb2xvckNob29zZXIoV2ViQ29s
b3JDaG9vc2VyKiBjb2xvckNob29zZXIpCiB7CiAgICAgbV9hY3RpdmVDb2xvckNob29zZXIgPSBj
b2xvckNob29zZXI7CkBAIC0zNjIzLDExICszNjI2LDEyIEBAIHZvaWQgV2ViUGFnZTo6ZGlkQ2hv
b3NlQ29sb3IoY29uc3QgV2ViQ29yZTo6Q29sb3ImIGNvbG9yKQogewogICAgIG1fYWN0aXZlQ29s
b3JDaG9vc2VyLT5kaWRDaG9vc2VDb2xvcihjb2xvcik7CiB9CisKICNlbmRpZgogCi12b2lkIFdl
YlBhZ2U6OnNldEFjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyKFBhc3NSZWZQdHI8V2ViT3Bl
blBhbmVsUmVzdWx0TGlzdGVuZXI+IG9wZW5QYW5lbFJlc3VsdExpc3RlbmVyKQordm9pZCBXZWJQ
YWdlOjpzZXRBY3RpdmVPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcihSZWY8V2ViT3BlblBhbmVsUmVz
dWx0TGlzdGVuZXI+JiYgb3BlblBhbmVsUmVzdWx0TGlzdGVuZXIpCiB7Ci0gICAgbV9hY3RpdmVP
cGVuUGFuZWxSZXN1bHRMaXN0ZW5lciA9IG9wZW5QYW5lbFJlc3VsdExpc3RlbmVyOworICAgIG1f
YWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIgPSBXVEZNb3ZlKG9wZW5QYW5lbFJlc3VsdExp
c3RlbmVyKTsKIH0KIAogYm9vbCBXZWJQYWdlOjpmaW5kU3RyaW5nRnJvbUluamVjdGVkQnVuZGxl
KGNvbnN0IFN0cmluZyYgdGFyZ2V0LCBGaW5kT3B0aW9ucyBvcHRpb25zKQpAQCAtNTQ0MiwxMSAr
NTQ0NiwxMSBAQCBib29sIFdlYlBhZ2U6OnBsdWdJbklzUHJpbWFyeVNpemUoV2ViQ29yZTo6SFRN
TFBsdWdJbkltYWdlRWxlbWVudCYgcGx1Z0luSW1hZ2VFbAogCiAjZW5kaWYgLy8gRU5BQkxFKFBS
SU1BUllfU05BUFNIT1RURURfUExVR0lOX0hFVVJJU1RJQykKIAotUGFzc1JlZlB0cjxSYW5nZT4g
V2ViUGFnZTo6Y3VycmVudFNlbGVjdGlvbkFzUmFuZ2UoKQorUmVmUHRyPFJhbmdlPiBXZWJQYWdl
OjpjdXJyZW50U2VsZWN0aW9uQXNSYW5nZSgpCiB7Ci0gICAgRnJhbWUqIGZyYW1lID0gZnJhbWVX
aXRoU2VsZWN0aW9uKG1fcGFnZS5nZXQoKSk7CisgICAgYXV0byogZnJhbWUgPSBmcmFtZVdpdGhT
ZWxlY3Rpb24obV9wYWdlLmdldCgpKTsKICAgICBpZiAoIWZyYW1lKQotICAgICAgICByZXR1cm4g
MDsKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKICAgICByZXR1cm4gZnJhbWUtPnNlbGVjdGlv
bigpLnRvTm9ybWFsaXplZFJhbmdlKCk7CiB9CkBAIC01NTQ2LDcgKzU1NTAsNyBAQCB2b2lkIFdl
YlBhZ2U6OmdldFNhbXBsaW5nUHJvZmlsZXJPdXRwdXQodWludDY0X3QgY2FsbGJhY2tJRCkKICNl
bmRpZgogfQogCi1QYXNzUmVmUHRyPFdlYkNvcmU6OlJhbmdlPiBXZWJQYWdlOjpyYW5nZUZyb21F
ZGl0aW5nUmFuZ2UoV2ViQ29yZTo6RnJhbWUmIGZyYW1lLCBjb25zdCBFZGl0aW5nUmFuZ2UmIHJh
bmdlLCBFZGl0aW5nUmFuZ2VJc1JlbGF0aXZlVG8gZWRpdGluZ1JhbmdlSXNSZWxhdGl2ZVRvKQor
UmVmUHRyPFdlYkNvcmU6OlJhbmdlPiBXZWJQYWdlOjpyYW5nZUZyb21FZGl0aW5nUmFuZ2UoV2Vi
Q29yZTo6RnJhbWUmIGZyYW1lLCBjb25zdCBFZGl0aW5nUmFuZ2UmIHJhbmdlLCBFZGl0aW5nUmFu
Z2VJc1JlbGF0aXZlVG8gZWRpdGluZ1JhbmdlSXNSZWxhdGl2ZVRvKQogewogICAgIEFTU0VSVChy
YW5nZS5sb2NhdGlvbiAhPSBub3RGb3VuZCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYlBhZ2UvV2ViUGFnZS5oCmluZGV4IDgxY2U3NTFmOGViZDFkOGUwZTBiN2RjYTVmZjA3YmI3
M2QzZDIxNjUuLmI2NWQ5M2JjN2FlY2VjNmQ3ODI5NGJmMWVjYmI2NThhOGY1OThiMjYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKKysrIGIv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaApAQCAtNzQsNyArNzQs
NiBAQAogI2luY2x1ZGUgPG1lbW9yeT4KICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1
ZGUgPHd0Zi9Nb25vdG9uaWNUaW1lLmg+Ci0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KICNp
bmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1J1bkxvb3AuaD4KICNpbmNsdWRl
IDx3dGYvU2Vjb25kcy5oPgpAQCAtMzE0LDcgKzMxMyw3IEBAIHB1YmxpYzoKICNlbmRpZgogCiAg
ICAgV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIqIGFjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3Rl
bmVyKCkgY29uc3QgeyByZXR1cm4gbV9hY3RpdmVPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lci5nZXQo
KTsgfQotICAgIHZvaWQgc2V0QWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIoUGFzc1JlZlB0
cjxXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcj4pOworICAgIHZvaWQgc2V0QWN0aXZlT3BlblBh
bmVsUmVzdWx0TGlzdGVuZXIoUmVmPFdlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyPiYmKTsKIAog
ICAgIHZvaWQgZGlkUmVjZWl2ZU1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiwgSVBDOjpEZWNvZGVy
Jikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaWRSZWNlaXZlU3luY01lc3NhZ2UoSVBDOjpDb25uZWN0
aW9uJiwgSVBDOjpEZWNvZGVyJiwgc3RkOjp1bmlxdWVfcHRyPElQQzo6RW5jb2Rlcj4mKSBvdmVy
cmlkZTsKQEAgLTM1NSwxNiArMzU0LDE2IEBAIHB1YmxpYzoKICAgICBXZWJDb3JlOjpNYWluRnJh
bWUqIG1haW5GcmFtZSgpIGNvbnN0OyAvLyBNYXkgcmV0dXJuIDAuCiAgICAgV2ViQ29yZTo6RnJh
bWVWaWV3KiBtYWluRnJhbWVWaWV3KCkgY29uc3Q7IC8vIE1heSByZXR1cm4gMC4KIAotICAgIFBh
c3NSZWZQdHI8V2ViQ29yZTo6UmFuZ2U+IGN1cnJlbnRTZWxlY3Rpb25Bc1JhbmdlKCk7CisgICAg
UmVmUHRyPFdlYkNvcmU6OlJhbmdlPiBjdXJyZW50U2VsZWN0aW9uQXNSYW5nZSgpOwogCiAjaWYg
RU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCi0gICAgUGFzc1JlZlB0cjxQbHVnaW4+IGNyZWF0
ZVBsdWdpbihXZWJGcmFtZSosIFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50KiwgY29uc3QgUGx1
Z2luOjpQYXJhbWV0ZXJzJiwgU3RyaW5nJiBuZXdNSU1FVHlwZSk7CisgICAgUmVmUHRyPFBsdWdp
bj4gY3JlYXRlUGx1Z2luKFdlYkZyYW1lKiwgV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQqLCBj
b25zdCBQbHVnaW46OlBhcmFtZXRlcnMmLCBTdHJpbmcmIG5ld01JTUVUeXBlKTsKICNlbmRpZgog
CiAjaWYgRU5BQkxFKFdFQkdMKQogICAgIFdlYkNvcmU6OldlYkdMTG9hZFBvbGljeSB3ZWJHTFBv
bGljeUZvclVSTChXZWJGcmFtZSosIGNvbnN0IFN0cmluZyYpOwogICAgIFdlYkNvcmU6OldlYkdM
TG9hZFBvbGljeSByZXNvbHZlV2ViR0xQb2xpY3lGb3JVUkwoV2ViRnJhbWUqLCBjb25zdCBTdHJp
bmcmKTsKLSNlbmRpZiAvLyBFTkFCTEUoV0VCR0wpCisjZW5kaWYKICAgICAKICAgICBlbnVtIGNs
YXNzIEluY2x1ZGVQb3N0TGF5b3V0RGF0YUhpbnQgeyBObywgWWVzIH07CiAgICAgRWRpdG9yU3Rh
dGUgZWRpdG9yU3RhdGUoSW5jbHVkZVBvc3RMYXlvdXREYXRhSGludCA9IEluY2x1ZGVQb3N0TGF5
b3V0RGF0YUhpbnQ6OlllcykgY29uc3Q7CkBAIC00NTUsMjEgKzQ1NCwyMSBAQCBwdWJsaWM6CiAK
ICAgICBib29sIGhhc0NhY2hlZFdpbmRvd0ZyYW1lKCkgY29uc3QgeyByZXR1cm4gbV9oYXNDYWNo
ZWRXaW5kb3dGcmFtZTsgfQogCi0jaWYgIVBMQVRGT1JNKElPUykKLSAgICB2b2lkIHNldFRvcE92
ZXJoYW5nSW1hZ2UoUGFzc1JlZlB0cjxXZWJJbWFnZT4pOwotICAgIHZvaWQgc2V0Qm90dG9tT3Zl
cmhhbmdJbWFnZShQYXNzUmVmUHRyPFdlYkltYWdlPik7Ci0jZW5kaWYgLy8gIVBMQVRGT1JNKElP
UykKLQogICAgIHZvaWQgdXBkYXRlSGVhZGVyQW5kRm9vdGVyTGF5ZXJzRm9yRGV2aWNlU2NhbGVD
aGFuZ2UoZmxvYXQgc2NhbGVGYWN0b3IpOwotI2VuZGlmIC8vIFBMQVRGT1JNKENPQ09BKQorI2Vu
ZGlmCisKKyNpZiBQTEFURk9STShNQUMpCisgICAgdm9pZCBzZXRUb3BPdmVyaGFuZ0ltYWdlKFdl
YkltYWdlKik7CisgICAgdm9pZCBzZXRCb3R0b21PdmVyaGFuZ0ltYWdlKFdlYkltYWdlKik7Cisj
ZW5kaWYKIAogICAgIGJvb2wgd2luZG93SXNGb2N1c2VkKCkgY29uc3Q7CiAgICAgYm9vbCB3aW5k
b3dBbmRXZWJQYWdlQXJlRm9jdXNlZCgpIGNvbnN0OwogCiAjaWYgIVBMQVRGT1JNKElPUykKLSAg
ICB2b2lkIHNldEhlYWRlclBhZ2VCYW5uZXIoUGFzc1JlZlB0cjxQYWdlQmFubmVyPik7CisgICAg
dm9pZCBzZXRIZWFkZXJQYWdlQmFubmVyKFBhZ2VCYW5uZXIqKTsKICAgICBQYWdlQmFubmVyKiBo
ZWFkZXJQYWdlQmFubmVyKCk7Ci0gICAgdm9pZCBzZXRGb290ZXJQYWdlQmFubmVyKFBhc3NSZWZQ
dHI8UGFnZUJhbm5lcj4pOworICAgIHZvaWQgc2V0Rm9vdGVyUGFnZUJhbm5lcihQYWdlQmFubmVy
Kik7CiAgICAgUGFnZUJhbm5lciogZm9vdGVyUGFnZUJhbm5lcigpOwogCiAgICAgdm9pZCBoaWRl
UGFnZUJhbm5lcnMoKTsKQEAgLTQ3Nyw3ICs0NzYsNyBAQCBwdWJsaWM6CiAgICAgCiAgICAgdm9p
ZCBzZXRIZWFkZXJCYW5uZXJIZWlnaHRGb3JUZXN0aW5nKGludCk7CiAgICAgdm9pZCBzZXRGb290
ZXJCYW5uZXJIZWlnaHRGb3JUZXN0aW5nKGludCk7Ci0jZW5kaWYgLy8gIVBMQVRGT1JNKElPUykK
KyNlbmRpZgogCiAgICAgV2ViQ29yZTo6SW50UG9pbnQgc2NyZWVuVG9Sb290Vmlldyhjb25zdCBX
ZWJDb3JlOjpJbnRQb2ludCYpOwogICAgIFdlYkNvcmU6OkludFJlY3Qgcm9vdFZpZXdUb1NjcmVl
bihjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jik7CkBAIC02MjEsNyArNjIwLDcgQEAgcHVibGljOgog
ICAgIGJvb2wgaGFzTG9jYWxEYXRhRm9yVVJMKGNvbnN0IFdlYkNvcmU6OlVSTCYpOwogICAgIFN0
cmluZyBjYWNoZWRSZXNwb25zZU1JTUVUeXBlRm9yVVJMKGNvbnN0IFdlYkNvcmU6OlVSTCYpOwog
ICAgIFN0cmluZyBjYWNoZWRTdWdnZXN0ZWRGaWxlbmFtZUZvclVSTChjb25zdCBXZWJDb3JlOjpV
UkwmKTsKLSAgICBQYXNzUmVmUHRyPFdlYkNvcmU6OlNoYXJlZEJ1ZmZlcj4gY2FjaGVkUmVzcG9u
c2VEYXRhRm9yVVJMKGNvbnN0IFdlYkNvcmU6OlVSTCYpOworICAgIFJlZlB0cjxXZWJDb3JlOjpT
aGFyZWRCdWZmZXI+IGNhY2hlZFJlc3BvbnNlRGF0YUZvclVSTChjb25zdCBXZWJDb3JlOjpVUkwm
KTsKIAogICAgIHN0YXRpYyBib29sIGNhbkhhbmRsZVJlcXVlc3QoY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0Jik7CiAKQEAgLTEwMTYsOSArMTAxNSwxMSBAQCBwcml2YXRlOgogICAgIGJv
b2wgc2hvdWxkU3dpdGNoVG9CbG9ja01vZGVGb3JIYW5kbGUoY29uc3QgV2ViQ29yZTo6SW50UG9p
bnQmIGhhbmRsZVBvaW50LCBTZWxlY3Rpb25IYW5kbGVQb3NpdGlvbik7CiAgICAgUmVmUHRyPFdl
YkNvcmU6OlJhbmdlPiBzd2l0Y2hUb0Jsb2NrU2VsZWN0aW9uQXRQb2ludChjb25zdCBXZWJDb3Jl
OjpJbnRQb2ludCYsIFNlbGVjdGlvbkhhbmRsZVBvc2l0aW9uKTsKICNlbmRpZgorCiAjaWYgIVBM
QVRGT1JNKENPQ09BKQogICAgIHN0YXRpYyBjb25zdCBjaGFyKiBpbnRlcnByZXRLZXlFdmVudChj
b25zdCBXZWJDb3JlOjpLZXlib2FyZEV2ZW50Kik7CiAjZW5kaWYKKwogICAgIGJvb2wgcGVyZm9y
bURlZmF1bHRCZWhhdmlvckZvcktleUV2ZW50KGNvbnN0IFdlYktleWJvYXJkRXZlbnQmKTsKIAog
I2lmIFBMQVRGT1JNKE1BQykKQEAgLTEyMDYsNyArMTIwNyw3IEBAIHByaXZhdGU6CiAgICAgc3Rh
dGljIFBsdWdpblZpZXcqIGZvY3VzZWRQbHVnaW5WaWV3Rm9yRnJhbWUoV2ViQ29yZTo6RnJhbWUm
KTsKICAgICBzdGF0aWMgUGx1Z2luVmlldyogcGx1Z2luVmlld0ZvckZyYW1lKFdlYkNvcmU6OkZy
YW1lKik7CiAKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxXZWJDb3JlOjpSYW5nZT4gcmFuZ2VGcm9t
RWRpdGluZ1JhbmdlKFdlYkNvcmU6OkZyYW1lJiwgY29uc3QgRWRpdGluZ1JhbmdlJiwgRWRpdGlu
Z1JhbmdlSXNSZWxhdGl2ZVRvID0gRWRpdGluZ1JhbmdlSXNSZWxhdGl2ZVRvOjpFZGl0YWJsZVJv
b3QpOworICAgIHN0YXRpYyBSZWZQdHI8V2ViQ29yZTo6UmFuZ2U+IHJhbmdlRnJvbUVkaXRpbmdS
YW5nZShXZWJDb3JlOjpGcmFtZSYsIGNvbnN0IEVkaXRpbmdSYW5nZSYsIEVkaXRpbmdSYW5nZUlz
UmVsYXRpdmVUbyA9IEVkaXRpbmdSYW5nZUlzUmVsYXRpdmVUbzo6RWRpdGFibGVSb290KTsKIAog
ICAgIHZvaWQgcmVwb3J0VXNlZEZlYXR1cmVzKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9lZmwvV2ViUGFnZUVmbC5jcHAgYi9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvZWZsL1dlYlBhZ2VFZmwuY3BwCmluZGV4IDE1YTFkY2VhMTEy
YzJlNzEzYmQzMTNjZjY3YmFjMzYxNmQ2YjMwN2MuLmQyMWVkOGIwYTdkODMzZjBlYjdjY2RhNmU5
NTE1Y2E3M2IxYmJlZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
UGFnZS9lZmwvV2ViUGFnZUVmbC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJQYWdlL2VmbC9XZWJQYWdlRWZsLmNwcApAQCAtMTU3LDcgKzE1Nyw3IEBAIFN0cmluZyBXZWJQ
YWdlOjpjYWNoZWRTdWdnZXN0ZWRGaWxlbmFtZUZvclVSTChjb25zdCBVUkwmKQogICAgIHJldHVy
biBTdHJpbmcoKTsKIH0KIAotUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IFdlYlBhZ2U6OmNhY2hl
ZFJlc3BvbnNlRGF0YUZvclVSTChjb25zdCBVUkwmKQorUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gV2Vi
UGFnZTo6Y2FjaGVkUmVzcG9uc2VEYXRhRm9yVVJMKGNvbnN0IFVSTCYpCiB7CiAgICAgbm90SW1w
bGVtZW50ZWQoKTsKICAgICByZXR1cm4gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViUGFnZS9ndGsvV2ViUGFnZUd0ay5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYlBhZ2UvZ3RrL1dlYlBhZ2VHdGsuY3BwCmluZGV4IGQ3NjY2ODA0MzAyZTUyN2U0
N2YyNGI5OTgyZGRlZDY0OWMwYTVkMjMuLmYwZTM0ZWZkYzMzYjY4NmU3YjcxNGUwODEwNjYzM2Rh
MjhjOGVkODkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9n
dGsvV2ViUGFnZUd0ay5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdl
L2d0ay9XZWJQYWdlR3RrLmNwcApAQCAtMTg1LDEzICsxODUsMTIgQEAgU3RyaW5nIFdlYlBhZ2U6
OmNhY2hlZFN1Z2dlc3RlZEZpbGVuYW1lRm9yVVJMKGNvbnN0IFVSTCYpCiAgICAgcmV0dXJuIFN0
cmluZygpOwogfQogCi1QYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gV2ViUGFnZTo6Y2FjaGVkUmVz
cG9uc2VEYXRhRm9yVVJMKGNvbnN0IFVSTCYpCitSZWZQdHI8U2hhcmVkQnVmZmVyPiBXZWJQYWdl
OjpjYWNoZWRSZXNwb25zZURhdGFGb3JVUkwoY29uc3QgVVJMJikKIHsKICAgICBub3RJbXBsZW1l
bnRlZCgpOwogICAgIHJldHVybiAwOwogfQogCi0KIFN0cmluZyBXZWJQYWdlOjpwbGF0Zm9ybVVz
ZXJBZ2VudChjb25zdCBVUkwmIHVybCkgY29uc3QKIHsKICAgICBpZiAodXJsLmlzTnVsbCgpIHx8
ICFtX3BhZ2UtPnNldHRpbmdzKCkubmVlZHNTaXRlU3BlY2lmaWNRdWlya3MoKSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlPUy5tbSBi
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlPUy5tbQppbmRl
eCA1M2MwODY1ZTE2MWZkMTJkMTI1NjYxNWY4NjNlZGViMjFlNjU0YzFiLi5mMzU0NDM1MjExMjg5
ZmQ4ZDE4MzdhNDM3ZmQ5MmJiNDFhMGZhNjZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0KKysrIGIvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCkBAIC00NjgsMTAgKzQ2OCwxMCBA
QCBTdHJpbmcgV2ViUGFnZTo6Y2FjaGVkUmVzcG9uc2VNSU1FVHlwZUZvclVSTChjb25zdCBVUkwm
KQogICAgIHJldHVybiBTdHJpbmcoKTsKIH0KIAotUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IFdl
YlBhZ2U6OmNhY2hlZFJlc3BvbnNlRGF0YUZvclVSTChjb25zdCBVUkwmKQorUmVmUHRyPFNoYXJl
ZEJ1ZmZlcj4gV2ViUGFnZTo6Y2FjaGVkUmVzcG9uc2VEYXRhRm9yVVJMKGNvbnN0IFVSTCYpCiB7
CiAgICAgbm90SW1wbGVtZW50ZWQoKTsKLSAgICByZXR1cm4gMDsKKyAgICByZXR1cm4gbnVsbHB0
cjsKIH0KIAogYm9vbCBXZWJQYWdlOjpwbGF0Zm9ybUNhbkhhbmRsZVJlcXVlc3QoY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VSZXF1ZXN0JikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViUGFnZS9tYWMvV2ViUGFnZU1hYy5tbSBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUGFnZS9tYWMvV2ViUGFnZU1hYy5tbQppbmRleCBmN2ViOGQ3MGM2ZDYyOGU2ZWJkMzc5
YTYyODk2ZjQxMmE1Y2JiZTVhLi4xNmNjNzM0YmVjYzVhNjZiZDc4OTgyZDE5OTg0MjU0YTEyN2Fi
Y2Y2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1dl
YlBhZ2VNYWMubW0KKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9X
ZWJQYWdlTWFjLm1tCkBAIC03MjQsNyArNzI0LDcgQEAgU3RyaW5nIFdlYlBhZ2U6OmNhY2hlZFJl
c3BvbnNlTUlNRVR5cGVGb3JVUkwoY29uc3QgVVJMJiB1cmwpCiAgICAgcmV0dXJuIFtbY2FjaGVk
UmVzcG9uc2VGb3JVUkwodGhpcywgdXJsKSByZXNwb25zZV0gTUlNRVR5cGVdOwogfQogCi1QYXNz
UmVmUHRyPFNoYXJlZEJ1ZmZlcj4gV2ViUGFnZTo6Y2FjaGVkUmVzcG9uc2VEYXRhRm9yVVJMKGNv
bnN0IFVSTCYgdXJsKQorUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gV2ViUGFnZTo6Y2FjaGVkUmVzcG9u
c2VEYXRhRm9yVVJMKGNvbnN0IFVSTCYgdXJsKQogewogICAgIHJldHVybiBTaGFyZWRCdWZmZXI6
OndyYXBOU0RhdGEoW2NhY2hlZFJlc3BvbnNlRm9yVVJMKHRoaXMsIHVybCkgZGF0YV0pOwogfQpA
QCAtNzczLDM3ICs3NzMsMzMgQEAgdm9pZCBXZWJQYWdlOjphY2NlcHRzRmlyc3RNb3VzZShpbnQg
ZXZlbnROdW1iZXIsIGNvbnN0IFdlYktpdDo6V2ViTW91c2VFdmVudCYgZXYKICAgICAgICAgcmVz
dWx0ID0gISFoaXRSZXN1bHQuc2Nyb2xsYmFyKCk7CiB9CiAKLXZvaWQgV2ViUGFnZTo6c2V0VG9w
T3ZlcmhhbmdJbWFnZShQYXNzUmVmUHRyPFdlYkltYWdlPiBpbWFnZSkKK3ZvaWQgV2ViUGFnZTo6
c2V0VG9wT3ZlcmhhbmdJbWFnZShXZWJJbWFnZSogaW1hZ2UpCiB7Ci0gICAgRnJhbWVWaWV3KiBm
cmFtZVZpZXcgPSBtX21haW5GcmFtZS0+Y29yZUZyYW1lKCktPnZpZXcoKTsKKyAgICBhdXRvKiBm
cmFtZVZpZXcgPSBtX21haW5GcmFtZS0+Y29yZUZyYW1lKCktPnZpZXcoKTsKICAgICBpZiAoIWZy
YW1lVmlldykKICAgICAgICAgcmV0dXJuOwogCi0gICAgR3JhcGhpY3NMYXllciogbGF5ZXIgPSBm
cmFtZVZpZXctPnNldFdhbnRzTGF5ZXJGb3JUb3BPdmVySGFuZ0FyZWEoaW1hZ2UuZ2V0KCkpOwor
ICAgIGF1dG8qIGxheWVyID0gZnJhbWVWaWV3LT5zZXRXYW50c0xheWVyRm9yVG9wT3ZlckhhbmdB
cmVhKGltYWdlKTsKICAgICBpZiAoIWxheWVyKQogICAgICAgICByZXR1cm47CiAKICAgICBsYXll
ci0+c2V0U2l6ZShpbWFnZS0+c2l6ZSgpKTsKICAgICBsYXllci0+c2V0UG9zaXRpb24oRmxvYXRQ
b2ludCgwLCAtaW1hZ2UtPnNpemUoKS5oZWlnaHQoKSkpOwotCi0gICAgUmV0YWluUHRyPENHSW1h
Z2VSZWY+IGNnSW1hZ2UgPSBpbWFnZS0+Yml0bWFwKCkubWFrZUNHSW1hZ2VDb3B5KCk7Ci0gICAg
bGF5ZXItPnBsYXRmb3JtTGF5ZXIoKS5jb250ZW50cyA9IChpZCljZ0ltYWdlLmdldCgpOworICAg
IGxheWVyLT5wbGF0Zm9ybUxheWVyKCkuY29udGVudHMgPSAoaWQpaW1hZ2UtPmJpdG1hcCgpLm1h
a2VDR0ltYWdlQ29weSgpLmdldCgpOwogfQogCi12b2lkIFdlYlBhZ2U6OnNldEJvdHRvbU92ZXJo
YW5nSW1hZ2UoUGFzc1JlZlB0cjxXZWJJbWFnZT4gaW1hZ2UpCit2b2lkIFdlYlBhZ2U6OnNldEJv
dHRvbU92ZXJoYW5nSW1hZ2UoV2ViSW1hZ2UqIGltYWdlKQogewotICAgIEZyYW1lVmlldyogZnJh
bWVWaWV3ID0gbV9tYWluRnJhbWUtPmNvcmVGcmFtZSgpLT52aWV3KCk7CisgICAgYXV0byogZnJh
bWVWaWV3ID0gbV9tYWluRnJhbWUtPmNvcmVGcmFtZSgpLT52aWV3KCk7CiAgICAgaWYgKCFmcmFt
ZVZpZXcpCiAgICAgICAgIHJldHVybjsKIAotICAgIEdyYXBoaWNzTGF5ZXIqIGxheWVyID0gZnJh
bWVWaWV3LT5zZXRXYW50c0xheWVyRm9yQm90dG9tT3ZlckhhbmdBcmVhKGltYWdlLmdldCgpKTsK
KyAgICBhdXRvKiBsYXllciA9IGZyYW1lVmlldy0+c2V0V2FudHNMYXllckZvckJvdHRvbU92ZXJI
YW5nQXJlYShpbWFnZSk7CiAgICAgaWYgKCFsYXllcikKICAgICAgICAgcmV0dXJuOwogCiAgICAg
bGF5ZXItPnNldFNpemUoaW1hZ2UtPnNpemUoKSk7Ci0gICAgCi0gICAgUmV0YWluUHRyPENHSW1h
Z2VSZWY+IGNnSW1hZ2UgPSBpbWFnZS0+Yml0bWFwKCkubWFrZUNHSW1hZ2VDb3B5KCk7Ci0gICAg
bGF5ZXItPnBsYXRmb3JtTGF5ZXIoKS5jb250ZW50cyA9IChpZCljZ0ltYWdlLmdldCgpOworICAg
IGxheWVyLT5wbGF0Zm9ybUxheWVyKCkuY29udGVudHMgPSAoaWQpaW1hZ2UtPmJpdG1hcCgpLm1h
a2VDR0ltYWdlQ29weSgpLmdldCgpOwogfQogCiB2b2lkIFdlYlBhZ2U6OnVwZGF0ZUhlYWRlckFu
ZEZvb3RlckxheWVyc0ZvckRldmljZVNjYWxlQ2hhbmdlKGZsb2F0IHNjYWxlRmFjdG9yKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcCBiL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAKaW5kZXggYzEyODAxODMwMzU2MDIy
YWJmMzBmODc4NzM3OTZjMzUzZGUzYmJmNC4uM2U1Y2JhZGFiMjQ0NDI4NjA1MDEzNzAyZTkzNDUw
MjNmMTYwYjI5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9j
ZXNzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCkBA
IC0xNTgsMjIgKzE1OCwxMiBAQCBXZWJQcm9jZXNzOjpXZWJQcm9jZXNzKCkKICNpZiBQTEFURk9S
TShJT1MpCiAgICAgLCBtX3ZpZXdVcGRhdGVEaXNwYXRjaGVyKFZpZXdVcGRhdGVEaXNwYXRjaGVy
OjpjcmVhdGUoKSkKICNlbmRpZgotICAgICwgbV9pbkRpZENsb3NlKGZhbHNlKQotICAgICwgbV9o
YXNTZXRDYWNoZU1vZGVsKGZhbHNlKQotICAgICwgbV9jYWNoZU1vZGVsKENhY2hlTW9kZWxEb2N1
bWVudFZpZXdlcikKLSAgICAsIG1fZnVsbEtleWJvYXJkQWNjZXNzRW5hYmxlZChmYWxzZSkKLSAg
ICAsIG1fdGV4dENoZWNrZXJTdGF0ZSgpCi0gICAgLCBtX2ljb25EYXRhYmFzZVByb3h5KCpuZXcg
V2ViSWNvbkRhdGFiYXNlUHJveHkodGhpcykpCisgICAgLCBtX2ljb25EYXRhYmFzZVByb3h5KCpu
ZXcgV2ViSWNvbkRhdGFiYXNlUHJveHkoKnRoaXMpKQogICAgICwgbV93ZWJMb2FkZXJTdHJhdGVn
eSgqbmV3IFdlYkxvYWRlclN0cmF0ZWd5KQogICAgICwgbV9kbnNQcmVmZXRjaEh5c3RlcmVyaXMo
W3RoaXNdKEh5c3RlcmVzaXNTdGF0ZSBzdGF0ZSkgeyBpZiAoc3RhdGUgPT0gSHlzdGVyZXNpc1N0
YXRlOjpTdG9wcGVkKSBtX2Ruc1ByZWZldGNoZWRIb3N0cy5jbGVhcigpOyB9KQogI2lmIEVOQUJM
RShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgICwgbV9wbHVnaW5Qcm9jZXNzQ29ubmVjdGlvbk1h
bmFnZXIoUGx1Z2luUHJvY2Vzc0Nvbm5lY3Rpb25NYW5hZ2VyOjpjcmVhdGUoKSkKICNlbmRpZgot
I2lmIEVOQUJMRShTRVJWSUNFX0NPTlRST0xTKQotICAgICwgbV9oYXNJbWFnZVNlcnZpY2VzKGZh
bHNlKQotICAgICwgbV9oYXNTZWxlY3Rpb25TZXJ2aWNlcyhmYWxzZSkKLSAgICAsIG1faGFzUmlj
aENvbnRlbnRTZXJ2aWNlcyhmYWxzZSkKLSNlbmRpZgogICAgICwgbV9ub25WaXNpYmxlUHJvY2Vz
c0NsZWFudXBUaW1lcigqdGhpcywgJldlYlByb2Nlc3M6Om5vblZpc2libGVQcm9jZXNzQ2xlYW51
cFRpbWVyRmlyZWQpCiAgICAgLCBtX3N0YXRpc3RpY3NDaGFuZ2VkVGltZXIoKnRoaXMsICZXZWJQ
cm9jZXNzOjpzdGF0aXN0aWNzQ2hhbmdlZFRpbWVyRmlyZWQpCiAjaWYgUExBVEZPUk0oSU9TKQpA
QCAtMTk0LDkgKzE4NCwxMSBAQCBXZWJQcm9jZXNzOjpXZWJQcm9jZXNzKCkKICNpZiBFTkFCTEUo
Tk9USUZJQ0FUSU9OUykgfHwgRU5BQkxFKExFR0FDWV9OT1RJRklDQVRJT05TKQogICAgIGFkZFN1
cHBsZW1lbnQ8V2ViTm90aWZpY2F0aW9uTWFuYWdlcj4oKTsKICNlbmRpZgorCiAjaWYgRU5BQkxF
KExFR0FDWV9FTkNSWVBURURfTUVESUEpCiAgICAgYWRkU3VwcGxlbWVudDxXZWJNZWRpYUtleVN0
b3JhZ2VNYW5hZ2VyPigpOwogI2VuZGlmCisKICAgICBtX3BsdWdJbkF1dG9TdGFydE9yaWdpbkhh
c2hlcy5hZGQoU2Vzc2lvbklEOjpkZWZhdWx0U2Vzc2lvbklEKCksIEhhc2hNYXA8dW5zaWduZWQs
IGRvdWJsZT4oKSk7CiAKICNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKQEAgLTIwNyw3ICsx
OTksNiBAQCBXZWJQcm9jZXNzOjpXZWJQcm9jZXNzKCkKICAgICBtX3Jlc291cmNlTG9hZFN0YXRp
c3RpY3NTdG9yYWdlLT5zZXROb3RpZmljYXRpb25DYWxsYmFjayhbdGhpc10gewogICAgICAgICBp
ZiAobV9zdGF0aXN0aWNzQ2hhbmdlZFRpbWVyLmlzQWN0aXZlKCkpCiAgICAgICAgICAgICByZXR1
cm47Ci0gICAgICAgIAogICAgICAgICBtX3N0YXRpc3RpY3NDaGFuZ2VkVGltZXIuc3RhcnRPbmVT
aG90KHN0ZDo6Y2hyb25vOjpzZWNvbmRzKDUpKTsKICAgICB9KTsKIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5oIGIvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJQcm9jZXNzLmgKaW5kZXggMjI4ZjA0NjExZGIxODBiYmZkZTdmNGQ5YjVmMjEz
ZmRiNjNjYzllMi4uMzU0NDY0YTgxZTQwYjBkZTRlZmNhY2FkNWZiODY0YWE5MzcwMzEzZSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmgKKysrIGIvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmgKQEAgLTIzLDggKzIzLDcgQEAKICAq
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFdlYlByb2Nl
c3NfaAotI2RlZmluZSBXZWJQcm9jZXNzX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAiQ2Fj
aGVNb2RlbC5oIgogI2luY2x1ZGUgIkNoaWxkUHJvY2Vzcy5oIgpAQCAtMzQ2LDIwICszNDUsMjAg
QEAgcHJpdmF0ZToKICAgICBSZWZQdHI8Vmlld1VwZGF0ZURpc3BhdGNoZXI+IG1fdmlld1VwZGF0
ZURpc3BhdGNoZXI7CiAjZW5kaWYKIAotICAgIGJvb2wgbV9pbkRpZENsb3NlOworICAgIGJvb2wg
bV9pbkRpZENsb3NlIHsgZmFsc2UgfTsKIAogICAgIEhhc2hNYXA8V2ViQ29yZTo6U2Vzc2lvbklE
LCBIYXNoTWFwPHVuc2lnbmVkLCBkb3VibGU+PiBtX3BsdWdJbkF1dG9TdGFydE9yaWdpbkhhc2hl
czsKICAgICBIYXNoU2V0PFN0cmluZz4gbV9wbHVnSW5BdXRvU3RhcnRPcmlnaW5zOwogCi0gICAg
Ym9vbCBtX2hhc1NldENhY2hlTW9kZWw7Ci0gICAgQ2FjaGVNb2RlbCBtX2NhY2hlTW9kZWw7Cisg
ICAgYm9vbCBtX2hhc1NldENhY2hlTW9kZWwgeyBmYWxzZSB9OworICAgIENhY2hlTW9kZWwgbV9j
YWNoZU1vZGVsIHsgQ2FjaGVNb2RlbERvY3VtZW50Vmlld2VyIH07CiAKICNpZiBQTEFURk9STShD
T0NPQSkKICAgICBXZWJDb3JlOjpNYWNoU2VuZFJpZ2h0IG1fY29tcG9zaXRpbmdSZW5kZXJTZXJ2
ZXJQb3J0OwogICAgIHBpZF90IG1fcHJlc2VudGVyQXBwbGljYXRpb25QaWQ7CiAjZW5kaWYKIAot
ICAgIGJvb2wgbV9mdWxsS2V5Ym9hcmRBY2Nlc3NFbmFibGVkOworICAgIGJvb2wgbV9mdWxsS2V5
Ym9hcmRBY2Nlc3NFbmFibGVkIHsgZmFsc2UgfTsKIAogICAgIEhhc2hNYXA8dWludDY0X3QsIFdl
YkZyYW1lKj4gbV9mcmFtZU1hcDsKIApAQCAtMzg4LDkgKzM4Nyw5IEBAIHByaXZhdGU6CiAjZW5k
aWYKIAogI2lmIEVOQUJMRShTRVJWSUNFX0NPTlRST0xTKQotICAgIGJvb2wgbV9oYXNJbWFnZVNl
cnZpY2VzOwotICAgIGJvb2wgbV9oYXNTZWxlY3Rpb25TZXJ2aWNlczsKLSAgICBib29sIG1faGFz
UmljaENvbnRlbnRTZXJ2aWNlczsKKyAgICBib29sIG1faGFzSW1hZ2VTZXJ2aWNlcyB7IGZhbHNl
IH07CisgICAgYm9vbCBtX2hhc1NlbGVjdGlvblNlcnZpY2VzIHsgZmFsc2UgfTsKKyAgICBib29s
IG1faGFzUmljaENvbnRlbnRTZXJ2aWNlcyB7IGZhbHNlIH07CiAjZW5kaWYKIAogICAgIEhhc2hT
ZXQ8dWludDY0X3Q+IG1fcGFnZXNJbldpbmRvd3M7CkBAIC00MTYsNSArNDE1LDMgQEAgcHJpdmF0
ZToKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdAotCi0jZW5kaWYgLy8gV2ViUHJvY2Vzc19o
Cg==
</data>
<flag name="commit-queue"
          id="321117"
          type_id="3"
          status="-"
          setter="buildbot"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>299116</attachid>
            <date>2017-01-17 20:58:41 -0800</date>
            <delta_ts>2017-01-17 20:58:41 -0800</delta_ts>
            <desc>Archive of layout-test-results from ews101 for mac-elcapitan</desc>
            <filename>layout-test-results.zip</filename>
            <type>application/zip</type>
            <size>793617</size>
            <attacher name="Build Bot">buildbot</attacher>
            
              <data encoding="base64">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
AAAAAAAAAAAOABwAY3J5cHRvL3N1YnRsZS9VVAkAA73qflhJ7X5YdXgLAAEE9QEAAAQUAAAAUEsD
BAoAAgAAAFOhMUol4NMILAAAACwAAAA+ABwAY3J5cHRvL3N1YnRsZS9yc2EtZ2VuZXJhdGUta2V5
LW1hbGZvcm1lZC1wYXJhbWV0ZXJzLXN0ZGVyci50eHRVVAkAA73qfli96n5YdXgLAAEE9QEAAAQU
AAAAQ291bGQgbm90IGdlbmVyYXRlIGEga2V5IHBhaXIsIHN0YXR1cyAtNDMwNApQSwMEFAACAAgA
U6ExSjA7uLFLAAAAaAAAADwAHABjcnlwdG8vc3VidGxlL3JzYS1pbXBvcnQta2V5LW1hbGZvcm1l
ZC1wYXJhbWV0ZXJzLXN0ZGVyci50eHRVVAkAA73qfli96n5YdXgLAAEE9QEAAAQUAAAAbcuxDYAw
DETRniluHxpWsGRLsYA4ci5EbA8NHfV/f0u/hIbd7o7pLDEIUXV6VDmgQoGkoQbRR2uRNF3Wj+OM
N7JIBWegpZ/Wf4YHUEsDBAoAAAAAAFKhMUoAAAAAAAAAAAAAAAAPABwAY3J5cHRvL3dvcmtlcnMv
VVQJAAO86n5YSe1+WHV4CwABBPUBAAAEFAAAAFBLAwQKAAAAAABSoTFKAAAAAAAAAAAAAAAAFgAc
AGNyeXB0by93b3JrZXJzL3N1YnRsZS9VVAkAA7zqflhJ7X5YdXgLAAEE9QEAAAQUAAAAUEsDBAoA
AgAAAFKhMUol4NMILAAAACwAAAAxABwAY3J5cHRvL3dvcmtlcnMvc3VidGxlL3JzYS1nZW5lcmF0
ZS1rZXktc3RkZXJyLnR4dFVUCQADvOp+WLzqflh1eAsAAQT1AQAABBQAAABDb3VsZCBub3QgZ2Vu
ZXJhdGUgYSBrZXkgcGFpciwgc3RhdHVzIC00MzA0ClBLAwQKAAAAAABVoTFKAAAAAAAAAAAAAAAA
DQAcAGRpc3BsYXlsaXN0cy9VVAkAA8LqflhJ7X5YdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIAFWh
MUqjV/3oUAAAAI4AAAAyABwAZGlzcGxheWxpc3RzL2V4dGVudC1pbmNsdWRlcy10cmFuc2Zvcm1z
LXN0ZGVyci50eHRVVAkAA8LqfljC6n5YdXgLAAEE9QEAAAQUAAAAcy9KLMjITC52zs8rSa0osbJK
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
zoZ8pTRfVNMvYitTSdwQxEsKWKCCDbwi1WJpVoEe5iEjdqeeq7QLwK91UBwpGIustAs1iR4p1pys
/uZiAsBGgj+Bw6ETyDDMdU0RVaFugko9hiPXxZetiHv27KAbWf2/Xy+i/pNOs8fPaQKnLKuYdpD0
h++WigJ9GJf4EWwPFiCNulI96W2VumAQntmWafPxw1f/Fh8c3d7eVlL6aHx3eze6a+UnaC7bo3g+
n7ehnpJ8CQxVc75r0xqSIdwC0lrmzyfj/tjxVswIFv8w7YE/Cug35tiUaZHLnvvqdiljQZfgUxFf
HWZKLeW018Mf8DpccL6ASUsqdeiadz1GI9n78M8VEc+9QTgMT91DCK1l+EEezmBds94M1VeOeUIC
7UPyBHJ/Bk9rZ14Nx5UpAMp9KIx48gwXyAfAjaW8OvYnAf29MBvMeu/Bn8BZvVuscG/++33vdxL9
TJW7XK8oS3q/Qd3FkvQgUsCcgSLAsHB8XzEle+mKMdiWkKL3CKdrHujoF5zJIBF4EUD3ssIsVGsF
mAZ1KJUvQcfbI+aE3vVen9yRzKCVThoi+tiCal98zJdRqKJewpz1Nw3E8ewMDAfjs5oUpPTLMlCW
j2duBIwOML4YzHAPMMNuMPP387cP31v63rgmznCxID+8LtLRHkhH3Ujv9Kc0pIMkbOIylyq6ShZq
e5vhbR32ixp7pH0xaipyO61wvocVvisiubzY4bS//zq/eZjfou9JkVzzdaj7OxQgYCihyuerK/Td
ETQlg5G5/HAJp/IZevczWAJuPsu3+yr35o9QDmpFVTf9+HmqbYVH3cFQe172rhPaqf0OzfgeMfAl
roXWaHZy2dMXc4/eXd/Pf3sP6xiBvvmN7n766y9O6LO8/6rKv3ll13+p6n8oebxWyRnvYdhxt2Gh
avIi+fbJc/LVyfPrceeg/5XJ89vkzslre/Ybos6OEPmfPf9/QZ2DwT6WHeyw7Ntb9O4OPczvH163
IR6c7oPsdP+TxOf4o3ExBz84cpk/G/kvUEsDBBQAAgAIAHahMUpeNWe/ZAEAALQDAAAoABwAZnVs
bHNjcmVlbi92aWRlby1jb250cm9scy1ydGwtYWN0dWFsLnR4dFVUCQAD/+p+WP/qflh1eAsAAQT1
AQAABBQAAADVkU9rAjEQxe/7Kaan3QWz9M/ZQ9UVSkWLLlIoPaSbWTc0m0gyqfrtG7Mt2p568VAI
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
9QEAAAQUAAAAUEsDBBQAAgAIAIChMUo+zBGYLQAAAC4AAAA8ABwAaHR0cC90ZXN0cy9tZWRpYS9o
bHMvdmlkZW8tZHVyYXRpb24tYWNjZXNzaWJpbGl0eS1hY3R1YWwudHh0VVQJAAMP635YD+t+WHV4
CwABBPUBAAAEFAAAAONyDXP1C9EoLknMyUlN0VQIcQ0O0UhLzClO1VRwc/T04XL1c1HwdwOLc3EB
AFBLAwQUAAIACACAoTFKplfZlzQBAADIAwAAOgAcAGh0dHAvdGVzdHMvbWVkaWEvaGxzL3ZpZGVv
LWR1cmF0aW9uLWFjY2Vzc2liaWxpdHktZGlmZi50eHRVVAkAAw/rflgP635YdXgLAAEE9QEAAAQU
AAAAxdJBT8IwGAbg+37F54mR0TUzHryQTGVEgoKRBbyW9cM1lnZpvxr4924IBw/eXDw1fZs873so
Ywz42uqwR88nggQvNiu+we1c0fm4D0pL/ooahUeuxdEGYoSemEMfNHleEzW8Szzfo1SC19rzTyXR
MhmcIGUNE1WF3qut0oqODA8NVoQypQNFSZL8xwZRURD6tCDPgWWj7BaSbHQDeR5BxIp1sSjjSpim
raPa2fBeDy9xl3WXt5fioSwmEJ+a0ksTXI1hZnbKtD0wHsOAXMDBEJbzC+ARP1D+IFCLxqMs1R5d
KtFXTjUdlioj8bDcxYMMVlhZI1vpqlVZ9of29dn2feAZPCsTCPsZ/m33NPzRBtfP7E7+dXRypklo
3dpQFqsy3gntcQjTu9lTBMViAsvp6aH9rl9QSwMEFAACAAgAgKExSpGfzR+uAAAAfgIAAD4AHABo
dHRwL3Rlc3RzL21lZGlhL2hscy92aWRlby1kdXJhdGlvbi1hY2Nlc3NpYmlsaXR5LWV4cGVjdGVk
LnR4dFVUCQADD+t+WA/rflh1eAsAAQT1AQAABBQAAAC1zr0OgjAUhuG9V3GcgEES3JmkRmMEExrj
2tCDNGJL+mPk7oXA4OIG28mXnCcvoTeas7Diqmt57xqj/aOJyLSO03Dfr3TPaAbhWwrUsfCGO6kV
bFI4qVoq6XpIUwic8RhEUJznd4v4RPELYMs7i4LJF5pYoK2M7EYqlkrgp6jDIIESK63E4GwGc5ss
Ju9m2S5PJ3CRyjtcI3qSV4k+am/WSB7d/8F5BsUBGC0ZIV9QSwMEFAACAAgAgKExSoV0SmBoCAAA
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
CACJoTFKY6qsbIIAAACoAAAAQAAcAGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5
UG9saWN5L3hzbC1hbGxvd2VkLXN0ZGVyci50eHRVVAkAAyLrflgi635YdXgLAAEE9QEAAAQUAAAA
LY1BCsMwDATveYVeEDu9pPgVhb4guBtiUCwjKaX+fU0pe1qG2c1ytsKbF6kEVdFEe2HQ4d5SCMtt
nePIku4xxmDIlxbvIUt1VH/++0O45B4UJpdmWDDvjPljTFwqaCUwziHQD9gB+DRoekNtXCeSyp2W
OdKOza8xRJuC7GpN1PGavlBLAwQUAAIACACJoTFKY6qsbIIAAACoAAAAUgAcAGh0dHAvdGVzdHMv
c2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3hzbC11bmFmZmVjdGVkLWJ5LXN0eWxlLXNy
Yy0yLXN0ZGVyci50eHRVVAkAAyLrflgi635YdXgLAAEE9QEAAAQUAAAALY1BCsMwDATveYVeEDu9
pPgVhb4guBtiUCwjKaX+fU0pe1qG2c1ytsKbF6kEVdFEe2HQ4d5SCMttnePIku4xxmDIlxbvIUt1
VH/++0O45B4UJpdmWDDvjPljTFwqaCUwziHQD9gB+DRoekNtXCeSyp2WOdKOza8xRJuC7GpN1PGa
vlBLAwQUAAIACACRoTFKYEtmEJEAAAD7AQAARQAcAGh0dHAvdGVzdHMvc2VjdXJpdHkveHNzLURF
TklFRC14c2wtZG9jdW1lbnQtc2VjdXJpdHlPcmlnaW4tc3RkZXJyLnR4dFVUCQADMut+WDLrflh1
eAsAAQT1AQAABBQAAADtjjEOgzAMRXdO4QuEBJZWmWHo0p4BBVMimSSynQpuXzr0Bh2rv76v90Le
SqRJY06AzJk9LJEQVtXire36S+vOdf7qnLOCoXLUw+4iZhjvt3Ewu5CZc6gbJjVf4MHxGVO7bwQU
E0IPSPghQPQglBVRm/PpX8hyuj3kRAd0rYMFJ62MAhMjSC0ls+LchH/oj0PfUEsDBBQAAgAIAKei
MUpbBFgOogUAAE0QAAAKABwAaHR0cGQuY29uZlVUCQADOe1+WEXtflh1eAsAAQT1AQAABBQAAACt
V21v2zYQ/q5fQbgwsBWTnLhx5xVBANdxlixJnVlOAyxJDVqiJNYSqZFUYnvrfvuOlOUXyVEDbA4Q
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
AAAEFAAAAHPOL81JUcjLL1FIT81LLUosSVVIVMhOrVQoSMws0lEoLkksKS1W0DUxNjDhch5VO6p2
VO2o2lG1o2pH1Y6qHVVLc7UAUEsDBBQAAgAIAJGhMUpUAsmyNgAAAMACAABQABwAaW1wb3J0ZWQv
dzNjL1dlYkNyeXB0b0FQSS9nZW5lcmF0ZUtleS90ZXN0X2ZhaWx1cmVzX1JTQVNTQS1QS0NTMS12
MV81LXN0ZGVyci50eHRVVAkAAzLrflgy635YdXgLAAEE9QEAAAQUAAAAc84vzUlRyMsvUUhPzUst
SixJVUhUyE6tVChIzCzSUSguSSwpLVbQNTE2MOFyHlU7qnaQqQUAUEsDBAoAAAAAAJShMUoAAAAA
AAAAAAAAAAAgABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9VVAkAAzjrflhJ7X5Y
dXgLAAEE9QEAAAQUAAAAUEsDBAoAAAAAAJOhMUoAAAAAAAAAAAAAAAAmABwAaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9VVAkAAzbrflhJ7X5YdXgLAAEE9QEAAAQUAAAAUEsD
BAoAAAAAAJOhMUoAAAAAAAAAAAAAAAAqABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9mZXRjaC9hcGkvVVQJAAM2635YSe1+WHV4CwABBPUBAAAEFAAAAFBLAwQKAAAAAACWoTFKAAAA
AAAAAAAAAAAALwAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2Nv
cnMvVVQJAAM7635YSe1+WHV4CwABBPUBAAAEFAAAAFBLAwQUAAIACACToTFKbtRB5wcCAAC9DAAA
RQAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1v
cmlnaW4tc3RkZXJyLnR4dFVUCQADNut+WDbrflh1eAsAAQT1AQAABBQAAADt1k1r20AQBuB7f4Uu
8W2s/d5ZgynCddJCWwfcnsPsh2xTxTKWSpt/XykhaW0CcWpKWxykkyTmXT0aZjWZfZzP3k+zD9P5
vLiYjrLZdrVYrbNl225GeV7Vgapl3bQjRMayVZOt6zajqqq/pZj5m6wIITUNTOp1u60rKPo7cFdj
+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
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL1VUCQADOOt+WEntflh1eAsAAQT1AQAABBQA
AABQSwMECgAAAAAAlKExSgAAAAAAAAAAAAAAAC4AHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvYnJvd3NlcnMvVVQJAAM4635YSe1+WHV4CwABBPUBAAAEFAAAAFBLAwQKAAAA
AACUoTFKAAAAAAAAAAAAAAAANgAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9icm93c2Vycy9oaXN0b3J5L1VUCQADOOt+WEntflh1eAsAAQT1AQAABBQAAABQSwMECgAAAAAA
lKExSgAAAAAAAAAAAAAAAE0AHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
YnJvd3NlcnMvaGlzdG9yeS90aGUtbG9jYXRpb24taW50ZXJmYWNlL1VUCQADOOt+WEntflh1eAsA
AQT1AQAABBQAAABQSwMEFAACAAgAlKExSqMLY3vJAAAAAgMAAHsAHABpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvYnJvd3NlcnMvaGlzdG9yeS90aGUtbG9jYXRpb24taW50ZXJm
YWNlL2xvY2F0aW9uLXByb3RvY29sLXNldHRlci1ub24tYnJva2VuLWFjdHVhbC50eHRVVAkAAzjr
flg4635YdXgLAAEE9QEAAAQUAAAAnZKxbsIwEIZ3P8UtTJWysLFFUShIIUQ4fQDHOUjo4bPMIXj8
QiSE2i42i6f/+7/z6YptrbdVCZtS6/yzXEDNAoaIr9iDMBCb/v5YQxDwzJdgcQFnG0Yvs3mpinfw
joz7zgY5kVJNrjVoFFi1bQNfuwr2wZxwYmRkl/nAwpbp0XaDV743YlLyMf1Tp1rm6ypaMWXaAYG7
I1oBaxy4+w46BEvssM/SRtiPhIm//INEWcSnSn4RMY4D+wFDouYfFGMaRPxH6m08IfUDUEsDBBQA
AgAIAJShMUoBa2rnFAEAALkCAAB5ABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2Jyb3dzZXJzL2hpc3RvcnkvdGhlLWxvY2F0aW9uLWludGVyZmFjZS9sb2NhdGlvbi1wcm90
b2NvbC1zZXR0ZXItbm9uLWJyb2tlbi1kaWZmLnR4dFVUCQADOOt+WDjrflh1eAsAAQT1AQAABBQA
AADVUU1PwzAMvfdX+MKpZBGauOzUARVIjG1aBjunqadFc+sqcdXt35NOTOKI4MTFlj+en5+tlAL9
wdQ3GPWTFavLndE7rF69fLmH3lOtN0hoI2qyZ+5FCUZRAWNPErVvOg6CtR6mTg9YqY6s7Dk0l7ao
D9KQrgIPEUOKfBQOZy0HVMTOiudW+VYw7K1LBNdUF1jYMamIkoqqTbk05IitwlOHLhFO5CRZnuf/
UIJ10lu6CCgKUHe395CPpiiy/HG1NKtFCW+lMfPncgZLFrBEPGANwkBsaxhJCNL+3AeHM4gu+E5u
pmUGv8JXZNvjZNSZqb8ukMF6bgwYFHjZbtfwvlnAPtgG4XqayfU047jTd0CdPvgDwCdQSwMEFAAC
AAgAlKExSo72CEDJAAAAAgMAAH0AHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvYnJvd3NlcnMvaGlzdG9yeS90aGUtbG9jYXRpb24taW50ZXJmYWNlL2xvY2F0aW9uLXByb3Rv
Y29sLXNldHRlci1ub24tYnJva2VuLWV4cGVjdGVkLnR4dFVUCQADOOt+WDjrflh1eAsAAQT1AQAA
BBQAAACdkrFuwjAQhnc/xS1MlbKwsUVRKEghRDh9AMc5SOjhs8whePxCJITaLjaLp//7v/Ppim2t
t1UJm1Lr/LNcQM0Choiv2IMwEJv+/lhDEPDMl2BxAR0Z950NciJVvMOfbRi9zOalUk2uNWgUWLVt
A1+7CvbBnHBCZGSX+cDClulRdoNXvjdiUvIx/VOnWubrKloxZdoBgbsjWgFrHLj7CjoES+ywz9JG
2I+Eib/8g0RZxKdKfhExjgP7AUOi5h8UYxpE/EfqbTwh9QNQSwMEFAACAAgAlKExSpYQts/+BwAA
ZxsAAIEAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvYnJvd3NlcnMvaGlz
dG9yeS90aGUtbG9jYXRpb24taW50ZXJmYWNlL2xvY2F0aW9uLXByb3RvY29sLXNldHRlci1ub24t
YnJva2VuLXByZXR0eS1kaWZmLmh0bWxVVAkAAzjrflg4635YdXgLAAEE9QEAAAQUAAAA5Vltc9s2
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
BAoAAAAAAKqiMUoAAAAAAAAAAAAAAAAVABwAcmV0cmllcy9pbXBvcnRlZC93M2MvVVQJAANA7X5Y
Se1+WHV4CwABBPUBAAAEFAAAAFBLAwQKAAAAAACqojFKAAAAAAAAAAAAAAAAKAAcAHJldHJpZXMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9VVAkAA0DtflhJ7X5YdXgLAAEE9QEAAAQU
AAAAUEsDBAoAAAAAAKqiMUoAAAAAAAAAAAAAAAAtABwAcmV0cmllcy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvVVQJAANA7X5YSe1+WHV4CwABBPUBAAAEFAAAAFBLAwQKAAAA
AACqojFKAAAAAAAAAAAAAAAANgAcAHJldHJpZXMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2Jyb3dzZXJzL1VUCQADQO1+WEntflh1eAsAAQT1AQAABBQAAABQSwMECgAAAAAA
qqIxSgAAAAAAAAAAAAAAAD4AHAByZXRyaWVzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9icm93c2Vycy9oaXN0b3J5L1VUCQADQO1+WEntflh1eAsAAQT1AQAABBQAAABQSwME
CgAAAAAAqqIxSgAAAAAAAAAAAAAAAFUAHAByZXRyaWVzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9icm93c2Vycy9oaXN0b3J5L3RoZS1sb2NhdGlvbi1pbnRlcmZhY2UvVVQJ
AANA7X5YSe1+WHV4CwABBPUBAAAEFAAAAFBLAwQUAAIACACqojFKowtje8kAAAACAwAAgwAcAHJl
dHJpZXMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Jyb3dzZXJzL2hpc3Rv
cnkvdGhlLWxvY2F0aW9uLWludGVyZmFjZS9sb2NhdGlvbi1wcm90b2NvbC1zZXR0ZXItbm9uLWJy
b2tlbi1hY3R1YWwudHh0VVQJAANA7X5YQO1+WHV4CwABBPUBAAAEFAAAAJ2SsW7CMBCGdz/FLUyV
srCxRVEoSCFEOH0AxzlI6OGzzCF4/EIkhNouNoun//u/8+mKba23VQmbUuv8s1xAzQKGiK/YgzAQ
m/7+WEMQ8MyXYHEBZxtGL7N5qYp38I6M+84GOZFSTa41aBRYtW0DX7sK9sGccGJkZJf5wMKW6dF2
g1e+N2JS8jH9U6da5usqWjFl2gGBuyNaAWscuPsOOgRL7LDP0kbYj4SJv/yDRFnEp0p+ETGOA/sB
Q6LmHxRjGkT8R+ptPCH1A1BLAwQUAAIACACqojFKbHREPBgBAADJAgAAgQAcAHJldHJpZXMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Jyb3dzZXJzL2hpc3RvcnkvdGhlLWxv
Y2F0aW9uLWludGVyZmFjZS9sb2NhdGlvbi1wcm90b2NvbC1zZXR0ZXItbm9uLWJyb2tlbi1kaWZm
LnR4dFVUCQADQO1+WEDtflh1eAsAAQT1AQAABBQAAADVUU1PwzAMvfdX+MKpZBGauOzUARVIjG1a
BjunqadFc+sqcdXt35NOTOKI4MTFlj+en5+tlAL9wdQ3GPWTFavLndE7rF69fLmH3lOtN0hoI2qy
Z+5FCUZRAWNPEnVACT7hfdNxEKz1MHV6wEp1ZGXPobm0R32QhnQVeIgYUuSjcDhrOaAidlY8t8q3
gmFvXSK6prrAwo5JRZRUVG3KpSFHbBWeOnSJcCInyfI8/8dSrJPe0kVIUYC6u72HfDRFkeWPq6VZ
LUp4K42ZP5czWLKAJeIBaxAGYlvDSEKQdHAfHM4guuA7uZmWGfwKX5Ftj5NRZ6b+ukAG67kxYFDg
Zbtdw/tmAftgG4TraSbX04zjTt8BdfrkDwCfUEsDBBQAAgAIAKqiMUqO9ghAyQAAAAIDAACFABwA
cmV0cmllcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvYnJvd3NlcnMvaGlz
dG9yeS90aGUtbG9jYXRpb24taW50ZXJmYWNlL2xvY2F0aW9uLXByb3RvY29sLXNldHRlci1ub24t
YnJva2VuLWV4cGVjdGVkLnR4dFVUCQADQO1+WEDtflh1eAsAAQT1AQAABBQAAACdkrFuwjAQhnc/
xS1MlbKwsUVRKEghRDh9AMc5SOjhs8whePxCJITaLjaLp//7v/Ppim2tt1UJm1Lr/LNcQM0Choiv
2IMwEJv+/lhDEPDMl2BxAR0Z950NciJVvMOfbRi9zOalUk2uNWgUWLVtA1+7CvbBnHBCZGSX+cDC
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
2+B54t7+q28yjTiAsLjb0WZLy2pgOoBfqicv5Jq7Nhtmun+73ep4Kfvcvorg/HI47U6WbIyMtrlk
z7vTE9fEzG9Nk+tyDdhDv1c3Och8hmim4ZgpiNOyGO1zK6wenW237a+DCEC7xjx5IYrQ0HAaSlGR
EJ/cyrowMKDqgVb8EGYke3HiPpllDMmbClWXuXMObgS632E7D+oUuo97/HLYmy3at86+ll9AxgU2
Qdz93XZLYKkmLuUa7suRX+zy9fLOLxXqsPyu5vajvh2n4SgjDF+ucd6mI4m5PHUmsfm/Mz9rfyX/
MO63Qhjb/pZ1qVWcrmN2fTl8NdS2uxirFPTI8+uQ4xNJNW/E+LMHw3MuoW7uDIl21ZGHbdwcVW/o
TZcHq6rjukFg8UuJuBStM7F0QS5q3p9rgHmyEwLNay2TOdHyOr/T//nKAeTxK8fSJGbj5mLRLuMr
p/KfEEqcdDGzHb+1IS7XuR49UbzMw2lLBCMIkXeJmWBpJFI6OlXcxkrHxutZmQ5z60n+aFGkuEaY
a9PRdUBzf0t+hxVRIUHUrkdwMvNfm/9vNtMrViFyyi4j6JCKRAJ8ZGuRdC2/EesmfQE3fQUIeP8W
kVoJFr4IP5fT83HpJFQinSzUQrzlxedxPa0Ou9P98e1yN+2fpp+sSbR/ez0eHszPcy6VonFbqzJF
F7Cc6bvQrca+z09GvflglEPnXs9Hz8RhF6y3N9LghPsjpMZOf3EVnaHZ+92L2Wz+Dtwy+RQ52lA3
7MSImMPL4Wbn//CLZfsD/pnTkbCZxbPCxK3H6QeHX13f7i/Tk1nn6gXf5+kbWwt2+9Uuzo7JcI9C
0+pIYltY+OaGfkcBehcEoqN76/seTrAPv/sJlYLfM4A2/S3Q0V8MHbEfEwDHVemH9mrTt+fT5/Px
8/ST15un6Wln38KFE6bjP06H0OP0/7BXSptfWeEjuLWdfbM/fD5czxee/GhiqDVi9Ty04OnueXLB
Jf/G/BPL9X66zEWF3UyfDzt46etkpSF517nzNCUTY6eyq5GyOzcSqym8gsPT/5u/LEoR7o8Zj3c8
auEhwxN+Zqhhu/MbCxIpmk9DtNLb/a+OIe5uX8530+OjGwLLrrHq5dDleMA3Dff0z5N6GmCVYrmn
UOPKU+MqsTjlw+jmuc1c74wgK2xFdLli13lBT4v/cCFjw8eXTzZr/ZfTP65TlGu5/yv/c23yc/PQ
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
pIHFNAAAYWNjZXNzX2xvZy50eHRVVAUAA0Xtflh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAABU
oTFKAAAAAAAAAAAAAAAADgAYAAAAAAAAABAA7UGaygEAYWNjZXNzaWJpbGl0eS9VVAUAA7/qflh1
eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAABUoTFKAAAAAAAAAAAAAAAAEgAYAAAAAAAAABAA7UHi
ygEAYWNjZXNzaWJpbGl0eS9tYWMvVVQFAAPA6n5YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA
VKExSp9U5+EwAQAAHAIAAD4AGAAAAAAAAQAAAKSBLssBAGFjY2Vzc2liaWxpdHkvbWFjL3ZpZGVv
LXZvbHVtZS1zbGlkZXItYWNjZXNzaWJpbGl0eS1hY3R1YWwudHh0VVQFAAO/6n5YdXgLAAEE9QEA
AAQUAAAAUEsBAh4DFAACAAgAVKExSj5ir7S5AQAA3AMAADwAGAAAAAAAAQAAAKSB1swBAGFjY2Vz
c2liaWxpdHkvbWFjL3ZpZGVvLXZvbHVtZS1zbGlkZXItYWNjZXNzaWJpbGl0eS1kaWZmLnR4dFVU
BQADv+p+WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAFShMUqFRb0jzAAAAFYBAABAABgAAAAA
AAEAAACkgQXPAQBhY2Nlc3NpYmlsaXR5L21hYy92aWRlby12b2x1bWUtc2xpZGVyLWFjY2Vzc2li
aWxpdHktZXhwZWN0ZWQudHh0VVQFAAO/6n5YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAVKEx
Sg4/X5H6CAAANiIAAEQAGAAAAAAAAQAAAKSBS9ABAGFjY2Vzc2liaWxpdHkvbWFjL3ZpZGVvLXZv
bHVtZS1zbGlkZXItYWNjZXNzaWJpbGl0eS1wcmV0dHktZGlmZi5odG1sVVQFAAPA6n5YdXgLAAEE
9QEAAAQUAAAAUEsBAh4DFAACAAgAUqExSiHLUqd8AQAATQsAACYAGAAAAAAAAQAAAKSBw9kBAGFj
Y2Vzc2liaWxpdHkvbWVkaWEtZWxlbWVudC1hY3R1YWwudHh0VVQFAAO86n5YdXgLAAEE9QEAAAQU
AAAAUEsBAh4DFAACAAgAUqExSoTIVQslAgAAURIAACQAGAAAAAAAAQAAAKSBn9sBAGFjY2Vzc2li
aWxpdHkvbWVkaWEtZWxlbWVudC1kaWZmLnR4dFVUBQADvOp+WHV4CwABBPUBAAAEFAAAAFBLAQIe
AxQAAgAIAFKhMUq5KnXaUgEAAEAIAAAoABgAAAAAAAEAAACkgSLeAQBhY2Nlc3NpYmlsaXR5L21l
ZGlhLWVsZW1lbnQtZXhwZWN0ZWQudHh0VVQFAAO86n5YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAAC
AAgAUqExSo11+b5wDAAAMZYAACwAGAAAAAAAAQAAAKSB1t8BAGFjY2Vzc2liaWxpdHkvbWVkaWEt
ZWxlbWVudC1wcmV0dHktZGlmZi5odG1sVVQFAAO86n5YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAAC
AAgAU6ExSil6L1WAAQAAzwwAADcAGAAAAAAAAQAAAKSBrOwBAGFjY2Vzc2liaWxpdHkvbWVkaWEt
ZW1pdHMtb2JqZWN0LXJlcGxhY2VtZW50LWFjdHVhbC50eHRVVAUAA73qflh1eAsAAQT1AQAABBQA
AABQSwECHgMUAAIACABToTFKEqgLtqwBAABUEAAANQAYAAAAAAABAAAApIGd7gEAYWNjZXNzaWJp
bGl0eS9tZWRpYS1lbWl0cy1vYmplY3QtcmVwbGFjZW1lbnQtZGlmZi50eHRVVAUAA73qflh1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACABToTFKjfpf61ABAADKBgAAOQAYAAAAAAABAAAApIG48AEA
YWNjZXNzaWJpbGl0eS9tZWRpYS1lbWl0cy1vYmplY3QtcmVwbGFjZW1lbnQtZXhwZWN0ZWQudHh0
VVQFAAO96n5YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAU6ExSq/HEPorCgAASVoAAD0AGAAA
AAAAAQAAAKSBe/IBAGFjY2Vzc2liaWxpdHkvbWVkaWEtZW1pdHMtb2JqZWN0LXJlcGxhY2VtZW50
LXByZXR0eS1kaWZmLmh0bWxVVAUAA73qflh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAABToTFK
AAAAAAAAAAAAAAAABwAYAAAAAAAAABAA7UEd/QEAY3J5cHRvL1VUBQADvep+WHV4CwABBPUBAAAE
FAAAAFBLAQIeAwoAAAAAAFOhMUoAAAAAAAAAAAAAAAAOABgAAAAAAAAAEADtQV79AQBjcnlwdG8v
c3VidGxlL1VUBQADvep+WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAgAAAFOhMUol4NMILAAAACwA
AAA+ABgAAAAAAAEAAACkgab9AQBjcnlwdG8vc3VidGxlL3JzYS1nZW5lcmF0ZS1rZXktbWFsZm9y
bWVkLXBhcmFtZXRlcnMtc3RkZXJyLnR4dFVUBQADvep+WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQA
AgAIAFOhMUowO7ixSwAAAGgAAAA8ABgAAAAAAAEAAACkgUr+AQBjcnlwdG8vc3VidGxlL3JzYS1p
bXBvcnQta2V5LW1hbGZvcm1lZC1wYXJhbWV0ZXJzLXN0ZGVyci50eHRVVAUAA73qflh1eAsAAQT1
AQAABBQAAABQSwECHgMKAAAAAABSoTFKAAAAAAAAAAAAAAAADwAYAAAAAAAAABAA7UEL/wEAY3J5
cHRvL3dvcmtlcnMvVVQFAAO86n5YdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAUqExSgAAAAAA
AAAAAAAAABYAGAAAAAAAAAAQAO1BVP8BAGNyeXB0by93b3JrZXJzL3N1YnRsZS9VVAUAA7zqflh1
eAsAAQT1AQAABBQAAABQSwECHgMKAAIAAABSoTFKJeDTCCwAAAAsAAAAMQAYAAAAAAABAAAApIGk
/wEAY3J5cHRvL3dvcmtlcnMvc3VidGxlL3JzYS1nZW5lcmF0ZS1rZXktc3RkZXJyLnR4dFVUBQAD
vOp+WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAFWhMUoAAAAAAAAAAAAAAAANABgAAAAAAAAA
EADtQTsAAgBkaXNwbGF5bGlzdHMvVVQFAAPC6n5YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA
VaExSqNX/ehQAAAAjgAAADIAGAAAAAAAAQAAAKSBggACAGRpc3BsYXlsaXN0cy9leHRlbnQtaW5j
bHVkZXMtdHJhbnNmb3Jtcy1zdGRlcnIudHh0VVQFAAPC6n5YdXgLAAEE9QEAAAQUAAAAUEsBAh4D
FAACAAgAVaExSvKWldVHAAAASQAAACkAGAAAAAAAAQAAAKSBPgECAGRpc3BsYXlsaXN0cy9sYXll
ci1kaXNwYXktbGlzdC1zdGRlcnIudHh0VVQFAAPC6n5YdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAA
AAAAhqExSgAAAAAAAAAAAAAAAAgAGAAAAAAAAAAQAO1B6AECAGVkaXRpbmcvVVQFAAMc635YdXgL
AAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAhqExSgAAAAAAAAAAAAAAABEAGAAAAAAAAAAQAO1BKgIC
AGVkaXRpbmcvZGVsZXRpbmcvVVQFAAMc635YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAhqEx
SrJqF3fAAQAAEBMAACgAGAAAAAAAAQAAAKSBdQICAGVkaXRpbmcvZGVsZXRpbmcvZGVsZXRlLWVt
b2ppLXN0ZGVyci50eHRVVAUAAxzrflh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACtojFKKs9R
VYILAAD+QwAADQAYAAAAAAABAAAApIGXBAIAZXJyb3JfbG9nLnR4dFVUBQADRe1+WHV4CwABBPUB
AAAEFAAAAFBLAQIeAwoAAAAAAHWhMUoAAAAAAAAAAAAAAAAFABgAAAAAAAAAEADtQWAQAgBmYXN0
L1VUBQAD/ep+WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAGahMUoAAAAAAAAAAAAAAAAMABgA
AAAAAAAAEADtQZ8QAgBmYXN0L2NhbnZhcy9VVAUAA9/qflh1eAsAAQT1AQAABBQAAABQSwECHgMU
AAIACABmoTFKaf6OqnsAAAACAQAAJgAYAAAAAAABAAAApIHlEAIAZmFzdC9jYW52YXMvY2FudmFz
LWxpbmVEYXNoLXN0ZGVyci50eHRVVAUAA9/qflh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAABu
oTFKAAAAAAAAAAAAAAAADAAYAAAAAAAAABAA7UHAEQIAZmFzdC9pbWFnZXMvVVQFAAPv6n5YdXgL
AAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAbqExSiGPvTgyAAAAMwAAACwAGAAAAAAAAQAAAKSBBhIC
AGZhc3QvaW1hZ2VzL3BkZi1hcy1pbWFnZS1jcm9wLWJveC1zdGRlcnIudHh0VVQFAAPv6n5YdXgL
AAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAa6ExSgAAAAAAAAAAAAAAAAwAGAAAAAAAAAAQAO1BnhIC
AGZhc3QvbGF5ZXJzL1VUBQAD6ep+WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAGqhMUotc3an
twIAAC0PAAAiABgAAAAAAAEAAACkgeQSAgBmYXN0L2xheWVycy92aWRlby1sYXllci1hY3R1YWwu
dHh0VVQFAAPo6n5YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAaqExSlRZCwkYAwAASRIAACAA
GAAAAAAAAQAAAKSB9xUCAGZhc3QvbGF5ZXJzL3ZpZGVvLWxheWVyLWRpZmYudHh0VVQFAAPo6n5Y
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAaqExSt6jjApcAgAAnAcAACQAGAAAAAAAAQAAAKSB
aRkCAGZhc3QvbGF5ZXJzL3ZpZGVvLWxheWVyLWV4cGVjdGVkLnR4dFVUBQAD6Op+WHV4CwABBPUB
AAAEFAAAAFBLAQIeAxQAAgAIAGuhMUo+siXaNwsAAG1VAAAoABgAAAAAAAEAAACkgSMcAgBmYXN0
L2xheWVycy92aWRlby1sYXllci1wcmV0dHktZGlmZi5odG1sVVQFAAPp6n5YdXgLAAEE9QEAAAQU
AAAAUEsBAh4DCgAAAAAAdaExSgAAAAAAAAAAAAAAAAoAGAAAAAAAAAAQAO1BvCcCAGZhc3QvdGV4
dC9VVAUAA/3qflh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAB1oTFKW9of+XsBAACNCQAAIwAY
AAAAAAABAAAApIEAKAIAZmFzdC90ZXh0L2Vtb2ppLWdlbmRlci0yLXN0ZGVyci50eHRVVAUAA/3q
flh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAAB0oTFKAAAAAAAAAAAAAAAACQAYAAAAAAAAABAA
7UHYKQIAZmFzdC94c2wvVVQFAAP86n5YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAdKExSk77
IPiIAAAA5wAAACUAGAAAAAAAAQAAAKSBGyoCAGZhc3QveHNsL3RyYW5zZm9ybS14aHItZG9jLXN0
ZGVyci50eHRVVAUAA/vqflh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAB0oTFK/aIuZI8AAADu
AAAAJwAYAAAAAAABAAAApIECKwIAZmFzdC94c2wveHNsdC1iYWQtaW1wb3J0LXVyaS1zdGRlcnIu
dHh0VVQFAAP76n5YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAdKExSs+PZg5QAAAAoAAAACQA
GAAAAAAAAQAAAKSB8isCAGZhc3QveHNsL3hzbHQtY29udGVudFR5cGUtc3RkZXJyLnR4dFVUBQAD
++p+WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAHShMUqBSnetSwAAAKwAAAA0ABgAAAAAAAEA
AACkgaAsAgBmYXN0L3hzbC94c2x0LXRyYW5zZm9ybS10by1mcmFnbWVudC1jcmFzaC1zdGRlcnIu
dHh0VVQFAAP86n5YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgArqIxSkxmfBKnAgAAYggAABEA
GAAAAAAAAQAAAKSBWS0CAGZ1bGxfcmVzdWx0cy5qc29uVVQFAANH7X5YdXgLAAEE9QEAAAQUAAAA
UEsBAh4DCgAAAAAAdqExSgAAAAAAAAAAAAAAAAsAGAAAAAAAAAAQAO1BSzACAGZ1bGxzY3JlZW4v
VVQFAAP/6n5YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAdaExSi4tUjnMAAAArgEAACkAGAAA
AAAAAQAAAKSBkDACAGZ1bGxzY3JlZW4vdmlkZW8tY29udHJvbHMtZHJhZy1hY3R1YWwudHh0VVQF
AAP+6n5YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAdaExShvY0q0HAQAACQMAACcAGAAAAAAA
AQAAAKSBvzECAGZ1bGxzY3JlZW4vdmlkZW8tY29udHJvbHMtZHJhZy1kaWZmLnR4dFVUBQAD/up+
WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAHWhMUou7d6bvAAAAG4BAAArABgAAAAAAAEAAACk
gSczAgBmdWxsc2NyZWVuL3ZpZGVvLWNvbnRyb2xzLWRyYWctZXhwZWN0ZWQudHh0VVQFAAP+6n5Y
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAdaExSt9gZD5MCAAAPiIAAC8AGAAAAAAAAQAAAKSB
SDQCAGZ1bGxzY3JlZW4vdmlkZW8tY29udHJvbHMtZHJhZy1wcmV0dHktZGlmZi5odG1sVVQFAAP+
6n5YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAdqExSl41Z79kAQAAtAMAACgAGAAAAAAAAQAA
AKSB/TwCAGZ1bGxzY3JlZW4vdmlkZW8tY29udHJvbHMtcnRsLWFjdHVhbC50eHRVVAUAA//qflh1
eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAB2oTFK1ZpVUjABAAC9AwAAJgAYAAAAAAABAAAApIHD
PgIAZnVsbHNjcmVlbi92aWRlby1jb250cm9scy1ydGwtZGlmZi50eHRVVAUAA//qflh1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACAB2oTFKKmkBF1MBAAChAwAAKgAYAAAAAAABAAAApIFTQAIAZnVs
bHNjcmVlbi92aWRlby1jb250cm9scy1ydGwtZXhwZWN0ZWQudHh0VVQFAAP/6n5YdXgLAAEE9QEA
AAQUAAAAUEsBAh4DFAACAAgAdqExSnlDLiNJCAAANx4AAC4AGAAAAAAAAQAAAKSBCkICAGZ1bGxz
Y3JlZW4vdmlkZW8tY29udHJvbHMtcnRsLXByZXR0eS1kaWZmLmh0bWxVVAUAA//qflh1eAsAAQT1
AQAABBQAAABQSwECHgMKAAAAAACAoTFKAAAAAAAAAAAAAAAABQAYAAAAAAAAABAA7UG7SgIAaHR0
cC9VVAUAAw/rflh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAACXoTFKAAAAAAAAAAAAAAAACwAY
AAAAAAAAABAA7UH6SgIAaHR0cC90ZXN0cy9VVAUAAz7rflh1eAsAAQT1AQAABBQAAABQSwECHgMK
AAAAAACAoTFKAAAAAAAAAAAAAAAAEQAYAAAAAAAAABAA7UE/SwIAaHR0cC90ZXN0cy9tZWRpYS9V
VAUAAw/rflh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAACAoTFKAAAAAAAAAAAAAAAAFQAYAAAA
AAAAABAA7UGKSwIAaHR0cC90ZXN0cy9tZWRpYS9obHMvVVQFAAMP635YdXgLAAEE9QEAAAQUAAAA
UEsBAh4DFAACAAgAgKExSj7MEZgtAAAALgAAADwAGAAAAAAAAQAAAKSB2UsCAGh0dHAvdGVzdHMv
bWVkaWEvaGxzL3ZpZGVvLWR1cmF0aW9uLWFjY2Vzc2liaWxpdHktYWN0dWFsLnR4dFVUBQADD+t+
WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAIChMUqmV9mXNAEAAMgDAAA6ABgAAAAAAAEAAACk
gXxMAgBodHRwL3Rlc3RzL21lZGlhL2hscy92aWRlby1kdXJhdGlvbi1hY2Nlc3NpYmlsaXR5LWRp
ZmYudHh0VVQFAAMP635YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAgKExSpGfzR+uAAAAfgIA
AD4AGAAAAAAAAQAAAKSBJE4CAGh0dHAvdGVzdHMvbWVkaWEvaGxzL3ZpZGVvLWR1cmF0aW9uLWFj
Y2Vzc2liaWxpdHktZXhwZWN0ZWQudHh0VVQFAAMP635YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAAC
AAgAgKExSoV0SmBoCAAAniQAAEIAGAAAAAAAAQAAAKSBSk8CAGh0dHAvdGVzdHMvbWVkaWEvaGxz
L3ZpZGVvLWR1cmF0aW9uLWFjY2Vzc2liaWxpdHktcHJldHR5LWRpZmYuaHRtbFVUBQADD+t+WHV4
CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAJehMUoAAAAAAAAAAAAAAAAQABgAAAAAAAAAEADtQS5Y
AgBodHRwL3Rlc3RzL21pc2MvVVQFAAM+635YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAl6Ex
ShU1NZJ6AAAAvAAAACoAGAAAAAAAAQAAAKSBeFgCAGh0dHAvdGVzdHMvbWlzYy94c2x0LWJhZC1p
bXBvcnQtc3RkZXJyLnR4dFVUBQADPut+WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAJGhMUoA
AAAAAAAAAAAAAAAUABgAAAAAAAAAEADtQVZZAgBodHRwL3Rlc3RzL3NlY3VyaXR5L1VUBQADMut+
WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAImhMUoAAAAAAAAAAAAAAAAqABgAAAAAAAAAEADt
QaRZAgBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9VVAUAAyLrflh1
eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACJoTFKY6qsbIIAAACoAAAAQAAYAAAAAAABAAAApIEI
WgIAaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kveHNsLWFsbG93ZWQt
c3RkZXJyLnR4dFVUBQADIut+WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAImhMUpjqqxsggAA
AKgAAABSABgAAAAAAAEAAACkgQRbAgBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0
eVBvbGljeS94c2wtdW5hZmZlY3RlZC1ieS1zdHlsZS1zcmMtMi1zdGRlcnIudHh0VVQFAAMi635Y
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAkaExSmBLZhCRAAAA+wEAAEUAGAAAAAAAAQAAAKSB
ElwCAGh0dHAvdGVzdHMvc2VjdXJpdHkveHNzLURFTklFRC14c2wtZG9jdW1lbnQtc2VjdXJpdHlP
cmlnaW4tc3RkZXJyLnR4dFVUBQADMut+WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAKeiMUpb
BFgOogUAAE0QAAAKABgAAAAAAAEAAACkgSJdAgBodHRwZC5jb25mVVQFAAM57X5YdXgLAAEE9QEA
AAQUAAAAUEsBAh4DCgAAAAAAj6ExSgAAAAAAAAAAAAAAAAkAGAAAAAAAAAAQAO1BCGMCAGltcG9y
dGVkL1VUBQADLut+WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAJOhMUoAAAAAAAAAAAAAAAAN
ABgAAAAAAAAAEADtQUtjAgBpbXBvcnRlZC93M2MvVVQFAAM2635YdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DCgAAAAAAj6ExSgAAAAAAAAAAAAAAABoAGAAAAAAAAAAQAO1BkmMCAGltcG9ydGVkL3czYy9X
ZWJDcnlwdG9BUEkvVVQFAAMu635YdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAkaExSgAAAAAA
AAAAAAAAACYAGAAAAAAAAAAQAO1B5mMCAGltcG9ydGVkL3czYy9XZWJDcnlwdG9BUEkvZ2VuZXJh
dGVLZXkvVVQFAAMy635YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAj6ExSo80GnBEAAAAoAkA
AEcAGAAAAAAAAQAAAKSBRmQCAGltcG9ydGVkL3czYy9XZWJDcnlwdG9BUEkvZ2VuZXJhdGVLZXkv
dGVzdF9mYWlsdXJlc19SU0EtT0FFUC1zdGRlcnIudHh0VVQFAAMu635YdXgLAAEE9QEAAAQUAAAA
UEsBAh4DFAACAAgAkaExSlQCybI2AAAAwAIAAFAAGAAAAAAAAQAAAKSBC2UCAGltcG9ydGVkL3cz
Yy9XZWJDcnlwdG9BUEkvZ2VuZXJhdGVLZXkvdGVzdF9mYWlsdXJlc19SU0FTU0EtUEtDUzEtdjFf
NS1zdGRlcnIudHh0VVQFAAMy635YdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAlKExSgAAAAAA
AAAAAAAAACAAGAAAAAAAAAAQAO1By2UCAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
VVQFAAM4635YdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAk6ExSgAAAAAAAAAAAAAAACYAGAAA
AAAAAAAQAO1BJWYCAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvVVQFAAM2
635YdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAk6ExSgAAAAAAAAAAAAAAACoAGAAAAAAAAAAQ
AO1BhWYCAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL1VUBQADNut+
WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAJahMUoAAAAAAAAAAAAAAAAvABgAAAAAAAAAEADt
QelmAgBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL1VUBQAD
O+t+WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAJOhMUpu1EHnBwIAAL0MAABFABgAAAAAAAEA
AACkgVJnAgBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2Nv
cnMtb3JpZ2luLXN0ZGVyci50eHRVVAUAAzbrflh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACV
oTFK9ZHY1ZkBAADeBQAASAAYAAAAAAABAAAApIHYaQIAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLXByZWZsaWdodC1zdGRlcnIudHh0VVQFAAM5635Y
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAlqExSrD5ARLOAgAAvxMAAFEAGAAAAAAAAQAAAKSB
82sCAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1y
ZWRpcmVjdC1wcmVmbGlnaHQtc3RkZXJyLnR4dFVUBQADO+t+WHV4CwABBPUBAAAEFAAAAFBLAQIe
AwoAAAAAAJShMUoAAAAAAAAAAAAAAAAlABgAAAAAAAAAEADtQUxvAgBpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2h0bWwvVVQFAAM4635YdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA
lKExSgAAAAAAAAAAAAAAAC4AGAAAAAAAAAAQAO1Bq28CAGltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9icm93c2Vycy9VVAUAAzjrflh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAA
AACUoTFKAAAAAAAAAAAAAAAANgAYAAAAAAAAABAA7UETcAIAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2Jyb3dzZXJzL2hpc3RvcnkvVVQFAAM4635YdXgLAAEE9QEAAAQUAAAA
UEsBAh4DCgAAAAAAlKExSgAAAAAAAAAAAAAAAE0AGAAAAAAAAAAQAO1Bg3ACAGltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9icm93c2Vycy9oaXN0b3J5L3RoZS1sb2NhdGlvbi1p
bnRlcmZhY2UvVVQFAAM4635YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAlKExSqMLY3vJAAAA
AgMAAHsAGAAAAAAAAQAAAKSBCnECAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9icm93c2Vycy9oaXN0b3J5L3RoZS1sb2NhdGlvbi1pbnRlcmZhY2UvbG9jYXRpb24tcHJvdG9j
b2wtc2V0dGVyLW5vbi1icm9rZW4tYWN0dWFsLnR4dFVUBQADOOt+WHV4CwABBPUBAAAEFAAAAFBL
AQIeAxQAAgAIAJShMUoBa2rnFAEAALkCAAB5ABgAAAAAAAEAAACkgYhyAgBpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvYnJvd3NlcnMvaGlzdG9yeS90aGUtbG9jYXRpb24taW50
ZXJmYWNlL2xvY2F0aW9uLXByb3RvY29sLXNldHRlci1ub24tYnJva2VuLWRpZmYudHh0VVQFAAM4
635YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAlKExSo72CEDJAAAAAgMAAH0AGAAAAAAAAQAA
AKSBT3QCAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9icm93c2Vycy9oaXN0
b3J5L3RoZS1sb2NhdGlvbi1pbnRlcmZhY2UvbG9jYXRpb24tcHJvdG9jb2wtc2V0dGVyLW5vbi1i
cm9rZW4tZXhwZWN0ZWQudHh0VVQFAAM4635YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAlKEx
SpYQts/+BwAAZxsAAIEAGAAAAAAAAQAAAKSBz3UCAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9icm93c2Vycy9oaXN0b3J5L3RoZS1sb2NhdGlvbi1pbnRlcmZhY2UvbG9jYXRp
b24tcHJvdG9jb2wtc2V0dGVyLW5vbi1icm9rZW4tcHJldHR5LWRpZmYuaHRtbFVUBQADOOt+WHV4
CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAANihMUoAAAAAAAAAAAAAAAAGABgAAAAAAAAAEADtQYh+
AgBtZWRpYS9VVAUAA7jrflh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACADCoTFKOxiUEZYAAADT
AAAAOAAYAAAAAAABAAAApIHIfgIAbWVkaWEvYXVkaW8tZGVsZXRlLXdoaWxlLXNsaWRlci10aHVt
Yi1jbGlja2VkLWFjdHVhbC50eHRVVAUAA4vrflh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACADC
oTFKbyipBygBAAAzAgAANgAYAAAAAAABAAAApIHQfwIAbWVkaWEvYXVkaW8tZGVsZXRlLXdoaWxl
LXNsaWRlci10aHVtYi1jbGlja2VkLWRpZmYudHh0VVQFAAOL635YdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DFAACAAgAwqExSjPgTl2FAAAA1gAAADoAGAAAAAAAAQAAAKSBaIECAG1lZGlhL2F1ZGlvLWRl
bGV0ZS13aGlsZS1zbGlkZXItdGh1bWItY2xpY2tlZC1leHBlY3RlZC50eHRVVAUAA4vrflh1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACADCoTFKVvTJ8kQIAACzHgAAPgAYAAAAAAABAAAApIFhggIA
bWVkaWEvYXVkaW8tZGVsZXRlLXdoaWxlLXNsaWRlci10aHVtYi1jbGlja2VkLXByZXR0eS1kaWZm
Lmh0bWxVVAUAA4zrflh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAACzoTFKAAAAAAAAAAAAAAAA
DwAYAAAAAAAAABAA7UEdiwIAbWVkaWEvY29udHJvbHMvVVQFAANy635YdXgLAAEE9QEAAAQUAAAA
UEsBAh4DFAACAAgAsqExShv5sPXqAAAAxQEAACYAGAAAAAAAAQAAAKSBZosCAG1lZGlhL2NvbnRy
b2xzL2VsZW1lbnRPcmRlci1hY3R1YWwudHh0VVQFAANv635YdXgLAAEE9QEAAAQUAAAAUEsBAh4D
FAACAAgAsqExSlryoXsoAQAAygIAACQAGAAAAAAAAQAAAKSBsIwCAG1lZGlhL2NvbnRyb2xzL2Vs
ZW1lbnRPcmRlci1kaWZmLnR4dFVUBQADb+t+WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIALKh
MUpyBYUKvwAAAGgBAAAoABgAAAAAAAEAAACkgTaOAgBtZWRpYS9jb250cm9scy9lbGVtZW50T3Jk
ZXItZXhwZWN0ZWQudHh0VVQFAANv635YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAsqExSv/W
fDNhCAAAbh4AACwAGAAAAAAAAQAAAKSBV48CAG1lZGlhL2NvbnRyb2xzL2VsZW1lbnRPcmRlci1w
cmV0dHktZGlmZi5odG1sVVQFAANw635YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAs6ExSl0t
5yjWAAAAQgEAACcAGAAAAAAAAQAAAKSBHpgCAG1lZGlhL2NvbnRyb2xzL3N0YXR1c0Rpc3BsYXkt
YWN0dWFsLnR4dFVUBQADcet+WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIALOhMUrzp67i5AAA
AKkBAAAlABgAAAAAAAEAAACkgVWZAgBtZWRpYS9jb250cm9scy9zdGF0dXNEaXNwbGF5LWRpZmYu
dHh0VVQFAANx635YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAs6ExSiSvSqG4AAAAIAEAACkA
GAAAAAAAAQAAAKSBmJoCAG1lZGlhL2NvbnRyb2xzL3N0YXR1c0Rpc3BsYXktZXhwZWN0ZWQudHh0
VVQFAANx635YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAs6ExSiwAUHH+BwAA4hsAAC0AGAAA
AAAAAQAAAKSBs5sCAG1lZGlhL2NvbnRyb2xzL3N0YXR1c0Rpc3BsYXktcHJldHR5LWRpZmYuaHRt
bFVUBQADcet+WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIALOhMUpH59RDQwEAAK4CAAAkABgA
AAAAAAEAAACkgRikAgBtZWRpYS9jb250cm9scy90cmFjay1tZW51LWFjdHVhbC50eHRVVAUAA3Lr
flh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACzoTFKb7la8BIBAABiAgAAIgAYAAAAAAABAAAA
pIG5pQIAbWVkaWEvY29udHJvbHMvdHJhY2stbWVudS1kaWZmLnR4dFVUBQADcut+WHV4CwABBPUB
AAAEFAAAAFBLAQIeAxQAAgAIALOhMUqDoGVAEgEAAGgCAAAmABgAAAAAAAEAAACkgSenAgBtZWRp
YS9jb250cm9scy90cmFjay1tZW51LWV4cGVjdGVkLnR4dFVUBQADcut+WHV4CwABBPUBAAAEFAAA
AFBLAQIeAxQAAgAIALOhMUpf6BTyPQgAAKkcAAAqABgAAAAAAAEAAACkgZmoAgBtZWRpYS9jb250
cm9scy90cmFjay1tZW51LXByZXR0eS1kaWZmLmh0bWxVVAUAA3Lrflh1eAsAAQT1AQAABBQAAABQ
SwECHgMUAAIACADEoTFKoyjoKzYCAADlDQAAJgAYAAAAAAABAAAApIE6sQIAbWVkaWEvY29udHJv
bHMtYWZ0ZXItcmVsb2FkLWFjdHVhbC50eHRVVAUAA5Drflh1eAsAAQT1AQAABBQAAABQSwECHgMU
AAIACADEoTFKXb0nRbUDAADbFQAAJAAYAAAAAAABAAAApIHQswIAbWVkaWEvY29udHJvbHMtYWZ0
ZXItcmVsb2FkLWRpZmYudHh0VVQFAAOQ635YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAxKEx
ShUNIO1fAgAAuAkAACgAGAAAAAAAAQAAAKSB47cCAG1lZGlhL2NvbnRyb2xzLWFmdGVyLXJlbG9h
ZC1leHBlY3RlZC50eHRVVAUAA5Drflh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACADEoTFKwjHr
aiEMAAAvYwAALAAYAAAAAAABAAAApIGkugIAbWVkaWEvY29udHJvbHMtYWZ0ZXItcmVsb2FkLXBy
ZXR0eS1kaWZmLmh0bWxVVAUAA5Drflh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACADFoTFKB6os
ps4CAADdGgAAIQAYAAAAAAABAAAApIErxwIAbWVkaWEvY29udHJvbHMtc3R5bGluZy1hY3R1YWwu
dHh0VVQFAAOS635YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAxaExSqukiKKGBAAAVCoAAB8A
GAAAAAAAAQAAAKSBVMoCAG1lZGlhL2NvbnRyb2xzLXN0eWxpbmctZGlmZi50eHRVVAUAA5Lrflh1
eAsAAQT1AQAABBQAAABQSwECHgMUAAIACADFoTFKoV8JK88CAAAEEgAAIwAYAAAAAAABAAAApIEz
zwIAbWVkaWEvY29udHJvbHMtc3R5bGluZy1leHBlY3RlZC50eHRVVAUAA5Lrflh1eAsAAQT1AQAA
BBQAAABQSwECHgMUAAIACADFoTFKscTwnYoOAABKrgAAJwAYAAAAAAABAAAApIFf0gIAbWVkaWEv
Y29udHJvbHMtc3R5bGluZy1wcmV0dHktZGlmZi5odG1sVVQFAAOS635YdXgLAAEE9QEAAAQUAAAA
UEsBAh4DFAACAAgA2KExSmGY52wgAQAAkgEAAC0AGAAAAAAAAQAAAKSBSuECAG1lZGlhL21lZGlh
LWNvbnRyb2xzLWFjY2Vzc2liaWxpdHktYWN0dWFsLnR4dFVUBQADuOt+WHV4CwABBPUBAAAEFAAA
AFBLAQIeAxQAAgAIANihMUoh2EHu4QEAANQDAAArABgAAAAAAAEAAACkgdHiAgBtZWRpYS9tZWRp
YS1jb250cm9scy1hY2Nlc3NpYmlsaXR5LWRpZmYudHh0VVQFAAO4635YdXgLAAEE9QEAAAQUAAAA
UEsBAh4DFAACAAgA2KExSi3Z1H49AQAAagIAAC8AGAAAAAAAAQAAAKSBF+UCAG1lZGlhL21lZGlh
LWNvbnRyb2xzLWFjY2Vzc2liaWxpdHktZXhwZWN0ZWQudHh0VVQFAAO4635YdXgLAAEE9QEAAAQU
AAAAUEsBAh4DFAACAAgA2KExSq/VdCVQCQAAxikAADMAGAAAAAAAAQAAAKSBveYCAG1lZGlhL21l
ZGlhLWNvbnRyb2xzLWFjY2Vzc2liaWxpdHktcHJldHR5LWRpZmYuaHRtbFVUBQADuOt+WHV4CwAB
BPUBAAAEFAAAAFBLAQIeAwoAAAAAAMWhMUoAAAAAAAAAAAAAAAAMABgAAAAAAAAAEADtQXrwAgBt
ZWRpYS90cmFjay9VVAUAA5Hrflh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACADFoTFKjekYVEsB
AABUAgAAKgAYAAAAAAABAAAApIHA8AIAbWVkaWEvdHJhY2svdHJhY2staW4tYmFuZC1zdHlsZS1h
Y3R1YWwudHh0VVQFAAOR635YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAxaExSuPleoBwAQAA
vQIAACgAGAAAAAAAAQAAAKSBb/ICAG1lZGlhL3RyYWNrL3RyYWNrLWluLWJhbmQtc3R5bGUtZGlm
Zi50eHRVVAUAA5Hrflh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACADFoTFKDPrk6jYBAAAzAgAA
LAAYAAAAAAABAAAApIFB9AIAbWVkaWEvdHJhY2svdHJhY2staW4tYmFuZC1zdHlsZS1leHBlY3Rl
ZC50eHRVVAUAA5Hrflh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACADFoTFKFPniv5YIAADQIAAA
MAAYAAAAAAABAAAApIHd9QIAbWVkaWEvdHJhY2svdHJhY2staW4tYmFuZC1zdHlsZS1wcmV0dHkt
ZGlmZi5odG1sVVQFAAOR635YdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAkKExShF5/i9jAgAA
ohUAABoAGAAAAAAAAQAAAKSB3f4CAHB5d2Vic29ja2V0LndzLmxvZy1lcnIudHh0VVQFAAMw635Y
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAgaExSpwu2YYHAQAAjwIAABoAGAAAAAAAAQAAAKSB
lAEDAHB5d2Vic29ja2V0LndzLmxvZy1vdXQudHh0VVQFAAMS635YdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DCgAAAAAATKExSgAAAAAAAAAAAAAAABsAGAAAAAAAAAAAAKSB7wIDAHB5d2Vic29ja2V0Lndz
cy5sb2ctZXJyLnR4dFVUBQADsOp+WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAEyhMUoAAAAA
AAAAAAAAAAAbABgAAAAAAAAAAACkgUQDAwBweXdlYnNvY2tldC53c3MubG9nLW91dC50eHRVVAUA
A7Dqflh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACuojFKRSYdOdEnAADLqgAADAAYAAAAAAAB
AAAApIGZAwMAcmVzdWx0cy5odG1sVVQFAANH7X5YdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA
qqIxSgAAAAAAAAAAAAAAAAgAGAAAAAAAAAAQAO1BsCsDAHJldHJpZXMvVVQFAANA7X5YdXgLAAEE
9QEAAAQUAAAAUEsBAh4DCgAAAAAAqqIxSgAAAAAAAAAAAAAAABEAGAAAAAAAAAAQAO1B8isDAHJl
dHJpZXMvaW1wb3J0ZWQvVVQFAANA7X5YdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAqqIxSgAA
AAAAAAAAAAAAABUAGAAAAAAAAAAQAO1BPSwDAHJldHJpZXMvaW1wb3J0ZWQvdzNjL1VUBQADQO1+
WHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAKqiMUoAAAAAAAAAAAAAAAAoABgAAAAAAAAAEADt
QYwsAwByZXRyaWVzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvVVQFAANA7X5YdXgL
AAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAqqIxSgAAAAAAAAAAAAAAAC0AGAAAAAAAAAAQAO1B7iwD
AHJldHJpZXMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL1VUBQADQO1+WHV4
CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAKqiMUoAAAAAAAAAAAAAAAA2ABgAAAAAAAAAEADtQVUt
AwByZXRyaWVzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9icm93c2Vycy9V
VAUAA0Dtflh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAACqojFKAAAAAAAAAAAAAAAAPgAYAAAA
AAAAABAA7UHFLQMAcmV0cmllcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
YnJvd3NlcnMvaGlzdG9yeS9VVAUAA0Dtflh1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAACqojFK
AAAAAAAAAAAAAAAAVQAYAAAAAAAAABAA7UE9LgMAcmV0cmllcy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvYnJvd3NlcnMvaGlzdG9yeS90aGUtbG9jYXRpb24taW50ZXJmYWNl
L1VUBQADQO1+WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAKqiMUqjC2N7yQAAAAIDAACDABgA
AAAAAAEAAACkgcwuAwByZXRyaWVzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9icm93c2Vycy9oaXN0b3J5L3RoZS1sb2NhdGlvbi1pbnRlcmZhY2UvbG9jYXRpb24tcHJvdG9j
b2wtc2V0dGVyLW5vbi1icm9rZW4tYWN0dWFsLnR4dFVUBQADQO1+WHV4CwABBPUBAAAEFAAAAFBL
AQIeAxQAAgAIAKqiMUpsdEQ8GAEAAMkCAACBABgAAAAAAAEAAACkgVIwAwByZXRyaWVzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9icm93c2Vycy9oaXN0b3J5L3RoZS1sb2Nh
dGlvbi1pbnRlcmZhY2UvbG9jYXRpb24tcHJvdG9jb2wtc2V0dGVyLW5vbi1icm9rZW4tZGlmZi50
eHRVVAUAA0Dtflh1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACqojFKjvYIQMkAAAACAwAAhQAY
AAAAAAABAAAApIElMgMAcmV0cmllcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvYnJvd3NlcnMvaGlzdG9yeS90aGUtbG9jYXRpb24taW50ZXJmYWNlL2xvY2F0aW9uLXByb3Rv
Y29sLXNldHRlci1ub24tYnJva2VuLWV4cGVjdGVkLnR4dFVUBQADQO1+WHV4CwABBPUBAAAEFAAA
AFBLAQIeAxQAAgAIAKqiMUrc7TykAwgAAG8bAACJABgAAAAAAAEAAACkga0zAwByZXRyaWVzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9icm93c2Vycy9oaXN0b3J5L3RoZS1s
b2NhdGlvbi1pbnRlcmZhY2UvbG9jYXRpb24tcHJvdG9jb2wtc2V0dGVyLW5vbi1icm9rZW4tcHJl
dHR5LWRpZmYuaHRtbFVUBQADQO1+WHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAK6iMUp+L2Rb
NZYIAGbgLwAKABgAAAAAAAEAAACkgXM8AwBzdGF0cy5qc29uVVQFAANH7X5YdXgLAAEE9QEAAAQU
AAAAUEsBAh4DFAACAAgAraIxSroTjZE1AwAArBkAABkAGAAAAAAAAQAAAKSB7NILAHdwdHdrX3By
b2Nlc3NfbG9nLm91dC50eHRVVAUAA0btflh1eAsAAQT1AQAABBQAAABQSwUGAAAAAKAAoACHRQAA
dNYLAAAA
</data>

          </attachment>
      

    </bug>

</bugzilla>